電子透かし埋め込み装置及び電子透かし読み出し装置
【課題】印刷文書をスキャナで読み取った後に上記画像処理を適用しても除去できない情報を電子透かしとして高速に埋め込み可能な埋め込み装置、及びその埋め込み装置によって埋め込まれた電子透かしを高速に読み出す読み出し装置を提供する。
【解決手段】文章ファイルを入力する文章ファイル入力部と、文章ファイルに埋め込む透かし情報を入力する透かし情報入力部と、透かし情報に対応するコードを記憶する情報記憶部と、文章ファイルからコードを埋め込む区間を検出する区間検出部と、コードに基づき、区間の文字数の増減数を算出する文字数演算部と、算出された文字数の増減数に基づき、区間の文字数を増減させる文字数制御部とを有し、文章ファイルにコードを埋め込む透かし情報埋め込み処理部とを有する。
【解決手段】文章ファイルを入力する文章ファイル入力部と、文章ファイルに埋め込む透かし情報を入力する透かし情報入力部と、透かし情報に対応するコードを記憶する情報記憶部と、文章ファイルからコードを埋め込む区間を検出する区間検出部と、コードに基づき、区間の文字数の増減数を算出する文字数演算部と、算出された文字数の増減数に基づき、区間の文字数を増減させる文字数制御部とを有し、文章ファイルにコードを埋め込む透かし情報埋め込み処理部とを有する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、文章ファイルに電子透かしを埋め込む電子透かし埋め込み装置、文章ファイルに埋め込まれた電子透かしを読み出す読み出し装置に関する。
【背景技術】
【0002】
人には知覚できない情報を文章ファイルや画像・映像・音声等のマルチメディアデータ等のディジタルコンテンツに埋め込み、必要に応じてその情報を読み出せる技術として電子透かしが知られている。電子透かしは、コンテンツの不正コピーや不正配布、改竄等の不正行為の抑止や、不正にコンテンツが流通した場合に流出元を特定可能にする目的で使われている。
【0003】
文章ファイルに電子透かしを埋め込む方法として、特許文献1による、文字を構成する線の方向や太さ等を制御することで埋め込む方法や、特許文献2による、文字の間隔を制御することで埋め込む方法があり、それらの電子透かしを埋め込む埋め込み装置、読み出し装置がある。それらの埋め込み装置によって文章ファイルに埋め込まれた電子透かしは、文章ファイルの印刷後も印刷文書中に残存しており、読み出し装置によって読み出し可能である。そのため、印刷時に電子透かしとして利用者の識別コードを文章ファイルに埋め込んで印刷することで、不正に流通した文書を発見した際にその識別コードを確認でき、責任の所在を明確にできる。その結果、文書管理を徹底させ、情報漏洩を抑止できる。しかしながら、引用文献1または2に記載の埋め込み装置によって印刷文書に埋め込まれた電子透かしは、その印刷文書をスキャナで読み取った後に、細線化・太線化・歪曲等の画像処理を施すことで、文書の体裁を保ったまま容易に除去できる。そのため、上記画像処理を施してコピーされた文書からは、印刷時に埋め込まれた識別コードを読み出せず、情報漏洩時に責任の所在を明らかにできないことが多かった。
【0004】
そこで、特許文献3のように、行末の文字単位を構成する行末文字群と改行位置との位置関係を変化させることで、電子透かしを埋め込む方法を用いて、印刷文書をスキャナで読み取った後に上記画像処理を適用しても除去できない情報を電子透かしとして埋め込む埋め込み装置、読み出し装置がある。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特許第4510092号公報
【特許文献2】特許第3884997号公報
【特許文献3】特開2002−26074号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかし、引用文献3に開示された、行末文字群と改行位置との位置関係を変化させる埋め込み装置または読み出し装置は、行末文字群の形態素を解析するための形態素辞書や、形態素解析処理が必要であり、処理量が大きいために埋め込みまたは読み込み処理速度が遅くなるという問題があった。
【0007】
そこで、本発明は上記従来技術の有する問題点に鑑みてなされたものであり、印刷文書をスキャナで読み取った後に上記画像処理を適用しても除去できない情報を電子透かしとして高速に埋め込み可能な電子透かし埋め込み装置、及び埋め込まれた電子透かしを高速に読み出す電子透かし読み出し装置を提供することを目的とする。
【課題を解決するための手段】
【0008】
上記課題を解決するための本発明の電子透かし埋め込み装置の第1の特徴は、複数の行から構成される文章ファイルに透かし情報を埋め込む電子透かし埋め込み装置であって、文章ファイルを入力する文章ファイル入力部と、文章ファイルに埋め込む透かし情報を入力する透かし情報入力部と、透かし情報に対応するコードを記憶する情報記憶部と、文章ファイルからコードを埋め込む区間を検出する区間検出部と、コードに基づき、区間の文字数の増減数を算出する文字数演算部と、算出された文字数の増減数に基づき、区間の文字数を増減させる文字数制御部とを有し、文章ファイルにコードを埋め込む透かし情報埋め込み処理部とを備えることを要旨とする。
【0009】
かかる特徴によれば、文章ファイルに埋め込まれたコードは、その文章ファイルを印刷し、スキャナで読み取った後に細線化・太線化・歪曲等の画像処理を施しても除去されずに残る。
【0010】
また、本発明の電子透かし埋め込み装置の第2の特徴は、第1の特徴の透かし情報埋め込み処理部において、文字数演算部は、区間の全体の文字数がコードと対応するように区間の文字数の増減数を算出することを要旨とする。
【0011】
また、本発明の電子透かし埋め込み装置の第3の特徴は、第1の特徴の透かし情報埋め込み処理部において、文字数演算部は、区間の文字数の増減数がコードと対応するように区間の文字数の増減数を算出することを要旨とする。
【0012】
また、本発明の電子透かし埋め込み装置の第4の特徴は、第1から第3のいずれかの透かし情報埋め込み処理部において、文字数制御部は、改行によって文字数を増減させることを要旨とする。
【0013】
また、本発明の電子透かし埋め込み装置の第5の特徴は、第1から第3のいずれかの透かし情報埋め込み処理部において、文字数制御部は、区間の文字間隔を増減させることによって文字数を増減させることを要旨とする。
かかる特徴によれば、文章の折り返し位置を揃えることで、コードの埋め込みによる文章の折り返しの不自然さを軽減できる。
【0014】
また、本発明の電子透かし埋め込み装置の第6の特徴は、第1から第5の透かし情報埋め込み処理部において、区間は、行の行頭から行末であることを要旨とする。
【0015】
また、本発明の電子透かし埋め込み装置の第7の特徴は、第1から第5の透かし情報埋め込み処理部において、区間は、特徴文字の間の文章であることを要旨とする。
【0016】
また、本発明の電子透かし埋め込み装置の第8の特徴は、第1から第7の透かし情報埋め込み処理部において、情報記憶部は、透かし情報を複数のコードに対応させて記憶することを要旨とする。
【0017】
また、本発明の電子透かし読み出し装置の第1の特徴は、複数の行から構成される文章ファイルに埋め込まれた透かし情報を読み出す電子透かし読み出し装置であって、透かし情報がコードに変換され、コードとして埋め込まれた透かし情報文章ファイルを入力する文章ファイル入力部と、透かし情報に対応するコードを記憶する情報記憶部と、透かし情報文章ファイルに埋め込まれた電子透かし情報を読み出す情報読み出し処理部とを有し、情報読み出し処理部は、透かし情報文章ファイルからコードを読み出す読み出し区間を検出する区間検出部と、検出された読み出し区間の文字数を数える文字数演算部と、読み出し区間の文字数に対応するコードを特定し、透かし情報を読み出す情報読み出し部とを有することを要旨とする。
【0018】
また、本発明の電子透かし読み出し装置の第2の特徴は、複数の行から構成される文章ファイルに埋め込まれた透かし情報を読み出す電子透かし読み出し装置であって、透かし情報がコードに変換されコードとして埋め込まれた透かし情報文章ファイルと、透かし情報が埋め込まれていないオリジナル文章ファイルとを入力する文章ファイル入力部と、透かし情報に対応するコードを記憶する情報記憶部と、透かし情報文章ファイルに埋め込まれた電子透かし情報を読み出す情報読み出し処理部とを有し、情報読み出し処理部は、透かし情報文章ファイルからコードを読み出す読み出し区間を検出する区間検出部と、オリジナル文章ファイルから読み出し区間に対応する対応区間を検出する対応区間検出部と、検出された読み出し区間と対応区間との文字数を数える文字数演算部と、読み出し区間と対応区間との文字数の差に対応するコードを特定し、透かし情報を読み出す情報読み出し部とを有することを要旨とする。
【発明の効果】
【0019】
本発明によれば、印刷文書をスキャナで読み取った後に上記画像処理を適用しても除去できない情報を電子透かしとして高速に埋め込み可能な電子透かし埋め込み装置、及び埋め込まれた電子透かしを高速に読み出す電子透かし読み出し装置を提供することが可能になる。
【図面の簡単な説明】
【0020】
【図1】第一の実施形態による電子透かし埋め込み装置の構成を示すブロック図である。
【図2】第一の実施形態による電子透かし埋め込み装置の埋め込み処理部の構成を示すブロック図である。
【図3】第一の実施形態による電子透かし埋め込み装置の動作手順を示すフローチャートである。
【図4】電子透かし埋め込み対象のオリジナル文章ファイルの例を示す図である。
【図5】電子透かしとして文章ファイルに埋め込む透かし情報の例を示す図である。
【図6】第一の実施形態による電子透かし埋め込み装置・読み出し装置で用いる、一行の文字数と埋め込まれた情報の関係及び文字の数え方等の規則例を示す図である。
【図7】第一の実施形態による電子透かし埋め込み装置により透かし情報を埋め込んだ文章ファイルの例を示す図である。
【図8】第一の実施形態による電子透かし埋め込み装置により透かし情報を埋め込んだ文章ファイルの例を示す図である。
【図9】第一の実施形態による電子透かし埋め込み装置により透かし情報を埋め込んだ文章ファイルの例を示す図である。
【図10】第一の実施形態による電子透かし埋め込み装置・読み出し装置で用いる、一行の文字数と埋め込まれた情報の関係及び文字の数え方等の規則例を示す図である。
【図11】第一の実施形態による電子透かし読み出し装置の構成を示すブロック図である。
【図12】第一の実施形態による電子透かし読み出し装置の読み出し処理部の構成を示すブロック図である。
【図13】第一の実施形態による電子透かし読み出し装置の動作手順を示すフローチャートである。
【図14】第一の実施形態による電子透かし読み出し装置により文章ファイルから読み出した透かし情報の例を示す図である。
【図15】第一の実施形態による電子透かし埋め込み装置により透かし情報を埋め込んだ文章ファイルを印刷し、スキャナで読み取った画像の例を示す図である。
【図16】第一の実施形態による電子透かし埋め込み装置により透かし情報を埋め込んだ文章ファイルを印刷し、スキャナで読み取って細線化処理を施した画像の例を示す図である。
【図17】第一の実施形態による電子透かし埋め込み装置により透かし情報を埋め込んだ文章ファイルを印刷し、スキャナで読み取って太線化処理を施した画像の例を示す図である。
【図18】第一の実施形態による電子透かし埋め込み装置により透かし情報を埋め込んだ文章ファイルを印刷し、スキャナで読み取って歪曲処理を施した画像の例を示す図である。
【図19】第二の実施形態による電子透かし埋め込み装置の構成を示すブロック図である。
【図20】第二の実施形態による電子透かし埋め込み装置の埋め込み処理部の構成を示すブロック図である。
【図21】第二の実施形態による電子透かし埋め込み装置の動作手順を示すフローチャートである。
【図22】第二の実施形態による電子透かし埋め込み装置・読み出し装置で用いる、文章の1文字目から行末までの総文字数と埋め込まれた情報の関係及び文字の数え方等の規則例を示す図である。
【図23】第二の実施形態による電子透かし埋め込み装置により透かし情報を埋め込んだ文章ファイルの例を示す図である。
【図24】第二の実施形態による電子透かし埋め込み装置により透かし情報を埋め込んだ文章ファイルの例を示す図である。
【図25】第二の実施形態による電子透かし埋め込み装置により透かし情報を埋め込んだ文章ファイルの例を示す図である。
【図26】第二の実施形態による電子透かし埋め込み装置・読み出し装置で用いる、文章の1文字目から行末までの総文字数と埋め込まれた情報の関係及び文字の数え方等の規則例を示す図である。
【図27】第二の実施形態による電子透かし読み出し装置の構成を示すブロック図である。
【図28】第二の実施形態による電子透かし読み出し装置の読み出し処理部の構成を示すブロック図である。
【図29】第二の実施形態による電子透かし読み出し装置の動作手順を示すフローチャートである。
【図30】第二の実施形態による電子透かし読み出し装置により文章ファイルから読み出した透かし情報の例を示す図である。
【発明を実施するための形態】
【0021】
以下、図面を参照して、本発明の一実施形態による電子透かし埋め込み装置及び電子透かし読み出し装置について説明する。
【0022】
(第一の実施形態)
本実施形態は、一行に含まれる文字数を所定の文字数に一致させることで該行に目に見えない情報を埋め込む埋め込み装置、それにより埋め込まれた情報を読み出す読み出し装置に関する。
【0023】
[電子透かし埋め込み装置]
図1は、第一の実施形態における電子透かし埋め込み装置の構成を示すブロック図である。図1に示すように、本実施形態による電子透かし埋め込み装置100は、透かし情報の埋め込み対象である文章ファイルを入力する文章ファイル入力部110、透かし情報を入力する透かし情報入力部120、一行に含まれる文字数と埋め込まれる情報の対応関係を埋め込み規則情報として記憶する情報記憶部130、電子透かし埋め込み処理を行う埋め込み処理部140及び透かし情報が埋め込まれた文章ファイルを出力する出力部150とから構成される。
【0024】
図2は、埋め込み処理部140の構成を示すブロック図である。図2に示すように、埋め込み処理部140は、文章ファイルを構成する文章から行を検出する区間検出部141と、検出された行に情報を埋め込んだ場合の該行の文字数を情報記憶部130に記憶された埋め込み規則情報に従って演算する文字数演算部142と、文字数演算部142の結果に一致するように上記行の文字数を増減する文字数制御部143とから構成される。
【0025】
次に、電子透かし埋め込み装置100を用いた電子透かし埋め込み方法について説明する。図3は、電子透かし埋め込み装置100の動作手順を示すフローチャートである。
【0026】
図3に示すように、文章ファイル入力部110に透かし情報の埋め込み対象であるオリジナル文章ファイル160を入力し(S101A)、透かし情報入力部120にn個の情報で構成される透かし情報170を入力する(S102A)。
【0027】
入力されたオリジナル文章ファイル160のデータと透かし情報170は埋め込み処理部140に渡される。埋め込み処理部140は下記手順を繰り返す。
【0028】
まず区間検出部141によって、オリジナル文章ファイル160のデータから、先頭行から数えた行番号が最も若くまだ処理されていない一行を検出する(S103A)。
【0029】
次に、文字数演算部142によって、検出された行に情報を埋め込んだ場合の該行の文字数を埋め込み規則情報180に従って演算する(S104A)。
【0030】
そして文字数制御部143によって、文字数演算部142の演算結果に一致するように該行の文字数を増減することで該演算結果に対応する情報を埋め込み(S105A)、オリジナル文章ファイル160のデータを更新する(S106A)。
【0031】
上記手順の繰り返しは、区間検出部141において新しい行が検出されなくなった時点で終了する(S107A)。
【0032】
上記手順により更新されたオリジナル文章ファイル160のデータは、出力部150から、透かし情報170が埋め込まれた文章ファイル161として出力される(S108A)。
【0033】
以下、具体的なデータを用いて電子透かし埋め込み装置100の動作を詳細に説明する。
【0034】
図4のオリジナル文章ファイル162は、オリジナル文章ファイル160の一例である。文章の各行末には改行コードが含まれている。1行目162−1は36文字である。2行目162−2は37文字である。3行目162−3は行末の“ー”までは文字数に入れると37文字である。4行目162−4は行末の“。”までは文字数に入れると10文字である。
【0035】
図5の透かし情報171は、透かし情報170の一例であり、2進数で表現された3桁のビットである。
【0036】
図6の埋め込み規則情報181は、情報記憶部130に記憶されている埋め込み規則情報180の一例であり、埋め込み処理後の一行の文字数と埋め込まれる情報との対応関係を示す。
【0037】
図4のオリジナル文章ファイル162を文章ファイル入力部110から入力し、図5の透かし情報171を透かし情報入力部120から入力する。
【0038】
入力されたオリジナル文章ファイル162のデータと透かし情報171は埋め込み処理部140に渡される。埋め込み処理部140は、下記の手順により、オリジナル文章ファイル162のデータに透かし情報171に対応する情報を埋め込む。
【0039】
図7に、図4のオリジナル文章ファイル162の1行目に、図5の1ビット目であるビット0に対応する情報を埋め込んだ文章ファイル162aを示す。透かし情報171のビット0に対応する情報を埋め込む手順は以下の通りである。
【0040】
まず区間検出部141によって、オリジナル文章ファイル162のデータから1行目162−1を検出する。
【0041】
次に、文字数演算部142によって、ビット0に対応する1行目の文字数を、埋め込み規則情報181に従って演算する。まず、埋め込み規則情報181の規則から、1行目のビット0に対応する文字数は36であることを読み取る。次に、埋め込み前の1行目162−1の文字数をカウント演算し、36であることを演算する。次に、ビット0に対応する文字数36と埋め込み前の文字数36との差を演算し、文字数の変化量0を得る。
【0042】
次に、文字数制御部143によって、文字数の変化量0を元に、1行目162−1の文字数の変更処理を行う。文字数の変化量が0なので、文字数の変更処理は行わない。以上の処理を行った上で、オリジナル文章ファイル162のデータを更新し、文章ファイル162aを作成する。
【0043】
図8に、図7に引き続き、2行目に図5の2ビット目であるビット1に対応する情報を埋め込んだ文章ファイル162bを示す。透かし情報171の2ビット目の1に対応する情報を埋め込む手順は以下の通りである。
【0044】
まず区間検出部141によって、図7の文章ファイル162aのデータから2行目162a−2を検出する。
【0045】
次に、文字数演算部142によって、ビット1に対応する2行目の文字数を、埋め込み規則情報181に従って演算する。まず、埋め込み規則情報181の規則2から、2行目のビット1に対応する文字数は35であることを読み取る。次に、埋め込み前の2行目162a−2の文字数をカウント演算し、37であることを演算する。次に、ビット1に対応する文字数35と埋め込み前の文字数37との差を演算し、文字数の変化量−2を得る。そして、2行目162b−2の文字数を2文字減らすことが可能か検証する。まず、2行目の文字数を1文字ずつ減らして文字数をカウントする処理を繰り返し、文字数が2文字以上減少した時点の改行位置を求める。行末から−2文字の位置である文字“出”と“せ”の間で改行した場合、2行目の文字数は35となる。よって、2文字減らすことは可能である。
【0046】
次に、文字数制御部143によって、文字数の変化量−2を元に、2行目162a−2の文字数の変更処理を行う。文字数の変化量が−2なので、2行目162a−2の行末から−2文字の位置である文字“出”と文字“せ”の間で改行を行う。以上の処理を行った上で、文章ファイル162aのデータを更新し、文章ファイル162bを作成する。
【0047】
図9に、図8に引き続き、3行目に図5の3ビット目であるビット0に対応する情報を埋め込んだ文章ファイル162cを示す。透かし情報171の3ビット目の0に対応する情報を埋め込む手順は以下の通りである。
【0048】
まず区間検出部141によって、図8の文章ファイル162bのデータから3行目162b−3を検出する。
【0049】
次に、文字数演算部142によって、ビット0に対応する3行目の文字数を、埋め込み規則情報181に従って演算する。まず、埋め込み規則情報181の規則1から、3行目のビット0に対応する文字数は36であることを読み取る。次に、埋め込み前の3行目162b−3の文字数をカウント演算する。埋め込み前3行目162b−3の文字数は、行末の“ー”までカウントすると39文字であるが、埋め込み規則情報181の規則5から、行末の“ー”は文字数にカウントしないため38となる。次に、ビット0に対応する文字数36と埋め込み前の文字数38との差を演算し、文字数の変化量−2を得る。そして、3行目162b−3の文字数を2文字減らすことが可能か検証する。まず、3行目の文字数を1文字ずつ減らして文字数をカウントする処理を繰り返し、文字数が2文字以上減少した時点の改行位置を求める。行末から−1文字の位置である文字“ー”(文字“ォ”の直後の文字)と“タ”の間で改行した場合、3行目の文字数は、埋め込み規則情報181の規則5から行末の“ォー”は文字数にカウントしないため35となり、元の文字数から3文字減少する。よって、2文字だけ減らすことはできない。
【0050】
検証の結果、文字数の変更が不可能と判断された場合、埋め込み規則情報181の規則1から他にビット0に対応する文字数を読み取る。他にビット0に対応する文字数がなければ規則3に従って文字数を求めるが、この場合は他にビット0に対応する文字数として38がある。そこで、ビット0に対応する文字数38と埋め込み前の文字数38の差を演算し、文字数の変化量0を得る。変化量が0の場合は、文字数の変更の可否についての検証は省略される。
【0051】
次に、文字数制御部143によって、文字数の変化量0を元に、3行目162b−3の文字数の変更処理を行う。文字数の変化量が0なので、実際に改行は行わない。以上の処理を行った上で、オリジナル文章ファイル162bのデータを更新し、文章ファイル162cを作成する。
【0052】
以上で透かし情報171が全て埋め込まれた。以降の行は何も情報が埋め込まれないように処理する。まず区間検出部141によって、図9の文章ファイル162cのデータから4行目162c−4を検出する。
【0053】
次に、文字数演算部142によって、何も情報を埋め込まない場合の4行目162c−4の文字数を、埋め込み規則情報181に従って演算する。埋め込み規則情報181の規則3から、4行目162c−4に何も情報を埋め込まない場合の文字数は34以下または39以上であることを読み取る。次に、埋め込み前の4行目162c−4の文字数をカウント演算する。埋め込み前の4行目162c−4の文字数は、行末の“。”までであると10であるが、埋め込み規則情報181の規則5より、行末の“。”は文字数に入れないため、文字数は9となる。次に、埋め込み規則181の規則5から読み取った文字数と、埋め込み前の文字数との差を演算する。埋め込み前の4行目162c−4の文字数は34以下であるので、埋め込み規則181の規則3の何も情報を埋め込まない場合の文字数の範囲内であり、文字数の変化量は0である。
【0054】
次に、文字数制御部143によって、文字数の変化量0を元に、4行目162c−4の文字数の変更処理を行う。文字数の変化量が0なので、実際に改行は行わない。以上の処理を行った上で、オリジナル文章ファイル162cのデータを更新する。
【0055】
上記手順により生成された文章ファイル162cは、出力部150から、透かし情報171が埋め込まれた文章ファイルとして出力される。
【0056】
以上の説明において用いたオリジナル文章ファイル162は一例であり、本実施形態による電子透かしの埋め込みは、要旨を逸脱しない範囲で任意の文章ファイルに適用できる。
【0057】
例えば、オリジナル文章ファイルは、1行あたりの文字サイズと文字間隔の総和に応じて行を折り返すデータ形式でも良い。この場合、行末に改行コードを付加することで文字数を制御する方法の他、文字間隔や文字サイズを変更することで文字数を制御する方法を用いても良い。
【0058】
オリジナル文章ファイルは、電子透かしの埋め込み対象となる文章の他に、画像・音声・動画等のマルチメディアデータを含むファイルであっても良い。その場合、区間検出部141は、該マルチメディアデータと文章を識別し、文章から行を検出する。
【0059】
また、以上の説明において用いたオリジナル文章ファイル161の文章は日本語で記述されているが、オリジナル文章ファイルの文章は英語や中国語、韓国語、フランス語、ドイツ語等、日本語以外の言語で記述されていても良い。
【0060】
また、以上の説明において用いた透かし情報171は一例であり、本実施形態による電子透かしの埋め込みは、要旨を逸脱しない範囲で任意の透かし情報に適用できる。
例えば、透かし情報は、0または1以外の数値や文字を含む情報であっても良い。
【0061】
また、以上の説明において用いた埋め込み規則情報181は一例であり、本実施形態による電子透かしの埋め込みは、要旨を逸脱しない範囲で任意の埋め込み規則情報を用いることができる。
【0062】
例えば、埋め込み規則情報は、一行に含まれる文字数は英単語や数値の途中で改行が生じる文字数にしてはならないといった、文字数の調整に関する制約規則を含んでも良い。
【0063】
また、埋め込み規則情報は、一行に含まれる文字数と複数の情報列の対応関係を含んでも良く、図10の埋め込み規則情報182を用いると、各行に最大2ビットの情報を埋め込むことができる。よって、本実施形態に係る埋め込み装置は、各行に複数の情報を電子透かしとして埋め込むことができる。
【0064】
また、以上の説明において用いた区間検出部によって検出される区間は、行でなくてもよく、句読点間、または決められた文字や文字サイズや文字間隔といった特徴文字の間の区間でも良い。
【0065】
[電子透かし読み出し装置]
図11は、第一の実施形態における電子透かし読み出し装置の構成を示すブロック図である。図11に示すように、本実施形態による電子透かし読み出し装置101は、透かし情報が埋め込まれた文章ファイルを入力する文章ファイル入力部111、一行に含まれる文字数と埋め込まれた情報の対応関係を読み出し規則情報として記憶する情報記憶部130、電子透かし読み出し処理を行う読み出し処理部190及び透かし情報を出力する出力部151とから構成される。
【0066】
図12は、読み出し処理部190の構成を示すブロック図である。図12に示すように、読み出し処理部190は、文章ファイルを構成する文章から行を検出する区間検出部191と、検出された行の文字数を数える文字数演算部192と、情報記憶部130に記憶された読み出し規則情報を参照し、文字数演算部192の結果に対応する情報を読み出す情報読み出し部193とから構成される。
【0067】
次に、電子透かし読み出し装置101を用いた電子透かし読み出し方法について説明する。図13は、電子透かし読み出し装置101の動作手順を示すフローチャートである。
【0068】
図13に示すように、文章ファイル入力部111に透かし情報が埋め込まれた文章ファイル161を入力する(S101B)。
【0069】
入力された文章ファイル161のデータは読み出し処理部190に渡される。読み出し処理部190は下記手順を繰り返す。
【0070】
まず区間検出部191によって、文章ファイル161のデータから、先頭行から数えた行番号が最も若くまだ処理されていない一行を検出する(S102B)。
次に文字数演算部192によって、検出された行の文字数を数える(S103B)。
【0071】
そして情報読み出し部193によって、情報記憶部130に記憶された読み出し規則情報180を参照し、文字数演算部192の演算結果に対応する情報を読み出す(S104B)。読み出した情報は、情報記憶部130に一時的に記憶する(S105B)。
【0072】
上記手順の繰り返しは、区間検出部191において新しい行が検出されなくなった時点で終了する(S106B)。
【0073】
上記手順により読み出し、情報記憶部130に一時的に記憶した情報は、出力部151から、透かし情報170として出力される(S107B)。
【0074】
以下、具体的なデータを用いて電子透かし読み出し装置101の動作を詳細に説明する。
図9の透かし情報が埋め込まれた文章ファイル162cを文章ファイル入力部111から入力する。
【0075】
入力された文章ファイル162cのデータは読み出し処理部190に渡される。読み出し処理部190は、下記の手順により、文章ファイル162cのデータから透かし情報を読み出す。
【0076】
透かし情報の1ビット目を読み出す手順は以下の通りである。まず区間検出部191によって、文章ファイル162cのデータから1行目を検出する。
【0077】
次に文字数演算部192によって、1行目の文字数を数える。この場合の文字数は36である。
【0078】
そして情報読み出し部193によって、情報記憶部130に記憶された図6の読み出し規則情報181を参照し、文字数36に対応するビット0を読み出す。読み出したビット0は情報記憶部130に一時的に記憶する。
【0079】
透かし情報の2ビット目を読み出す手順は以下の通りである。まず区間検出部191によって、文章ファイル162cのデータから2行目を検出する。
【0080】
次に文字数演算部192によって、2行目の文字数を数える。この場合の文字数は35である。
【0081】
そして情報読み出し部193によって、情報記憶部130に記憶された読み出し規則情報181を参照し、文字数35に対応するビット1を読み出す。読み出したビット1は1行目から読み出したビット0と合わせて情報記憶部130に一時的に記憶する。
【0082】
透かし情報の3ビット目を読み出す手順は以下の通りである。まず区間検出部191によって、文章ファイル162cのデータから3行目を検出する。
【0083】
次に文字数演算部192によって、3行目の文字数を数える。この場合の文字数は38である。
【0084】
そして情報読み出し部193によって、情報記憶部130に記憶された読み出し規則情報181を参照し、文字数38に対応するビット0を読み出す。読み出したビット0は1行目から読み出したビット0と2行目から読み出したビット1と合わせて情報記憶部130に一時的に記憶する。
【0085】
透かし情報の4ビット目を読み出す手順は以下の通りである。まず区間検出部191によって、文章ファイル162cのデータから4行目を検出する。
【0086】
次に文字数演算部192によって、4行目の文字数を数える。この場合の文字数は9である。
【0087】
そして情報読み出し部193によって、情報記憶部130に記憶された読み出し規則情報181を参照し、何も情報が埋め込まれていないことを意味するNULLを読み出す。
以上で文章ファイル162cの全ての行に対する読み出し処理を終了する。
【0088】
上記手順により読み出し、情報記憶部130に一時的に記憶した情報は、出力部151から、図14の透かし情報172として出力される。
【0089】
読み出した透かし情報172は、本実施形態における電子透かし埋め込み装置によって162cに埋め込まれた透かし情報171に等しい。このように、本実施形態における電子透かし読み出し装置は、本実施形態における電子透かし埋め込み装置で文章ファイルに埋め込んだ透かし情報を読み出すことができる。
【0090】
図15の文章ファイル162gは、文章ファイル162cを印刷し、スキャナで読み取った画像である。
【0091】
図16の文章ファイル162hは、図15の文章ファイル162dに細線化処理を施した画像である。
【0092】
図17の文章ファイル162iは、図15の文章ファイル162dに太線化処理を施した画像である。
【0093】
図18の文章ファイル162jは、図15の文章ファイル162dに162j−1方向に歪曲処理を施した画像である。
【0094】
文章ファイル162cと文章ファイル162gとを比較すると、印刷とスキャンによって、各行に含まれる文字数は変化していない。また、文章ファイル162cと文章ファイル162h〜文章ファイル162jとを比較すると、各画像処理によって、各行に含まれる文字数は変化していない。
【0095】
本実施形態における電子透かし読み出し装置に入力可能な文章ファイルは、文章ファイル162h〜文章ファイル162jの画像からも、既存のOCR技術によって、または目視で確認し手作業で文章を入力することによって生成できる。それにより、画像中の文章と等しい文章を持つ(一行に含まれる文字数も等しい)文章ファイルが生成され、その文章ファイルは文章ファイル162cと等しい文章を含んでいる。
【0096】
上記方法で文章ファイル162h〜文章ファイル162jの画像から生成した文章ファイルを本実施形態の電子透かし読み出し装置に入力することで、各画像中の文章に埋め込まれた透かし情報を読み出すことができる。
【0097】
以上のように、本実施形態に係る埋め込み装置によって文章ファイルに埋め込まれた電子透かしは、その文章ファイルを印刷し、スキャナで読み取った後に細線化・太線化・歪曲等の画像処理を適用しても除去されない。そのため上記画像処理を施してコピーされた文書からも、埋め込まれた電子透かしの読み出しが可能である。
【0098】
(第二の実施形態)
本実施形態は、文章の1文字目から各行末までの総文字数を所定の文字数だけ増減することで該行に目に見えない情報を埋め込む埋め込み装置、それにより埋め込まれた情報を読み出す読み出し装置に関する。
【0099】
[電子透かし埋め込み装置]
図19は、第二の実施形態における電子透かし埋め込み装置の構成を示すブロック図である。図19に示すように、本実施形態による電子透かし埋め込み装置200は、透かし情報の埋め込み対象である文章ファイルを入力する文章ファイル入力部210、透かし情報を入力する透かし情報入力部220、文章の一文字目から各行末までの総文字数の増減量と埋め込まれる情報の対応関係を埋め込み規則情報として記憶する情報記憶部230、電子透かし埋め込み処理を行う埋め込み処理部240及び透かし情報が埋め込まれた文章ファイルを出力する出力部250とから構成される。
【0100】
図20は、埋め込み処理部240の構成を示すブロック図である。図20に示すように、埋め込み処理部240は、文章ファイルを構成する文章から行を検出する区間検出部241と、検出された行に情報を埋め込んだ場合の文章の1文字目から該行末までの総文字数を情報記憶部230に記憶された埋め込み規則情報に従って演算する文字数演算部242と、文字数演算部242の結果に一致するように文章の1文字目から上記行末までの総文字数を増減する文字数制御部243とから構成される。
【0101】
次に、電子透かし埋め込み装置200を用いた電子透かし埋め込み方法について説明する。図21は、電子透かし埋め込み装置200の動作手順を示すフローチャートである。
【0102】
図21に示すように、文章ファイル入力部210に透かし情報の埋め込み対象であるオリジナル文章ファイル260を入力し(S201A)、透かし情報入力部220にn個の情報で構成される透かし情報270を入力する(S202A)。
【0103】
入力されたオリジナル文章ファイル260のデータと透かし情報270は埋め込み処理部240に渡される。埋め込み処理部240は下記手順を繰り返す。
【0104】
まず区間検出部241によって、オリジナル文章ファイル260のデータから、先頭行から数えた行番号が最も若くまだ処理されていない一行を検出する(S203A)。
【0105】
次に、文字数演算部242によって、検出された行に情報を埋め込んだ場合の文章の1文字目から該行末までの総文字数を埋め込み規則情報280に従って演算する(S204A)。
【0106】
そして文字数制御部243によって、文字数演算部242の演算結果に一致するように文章の1文字目から該行末までの総文字数を増減することで該演算結果に対応する情報を埋め込み(S205A)、オリジナル文章ファイル260のデータを更新する(S206A)。
【0107】
上記手順の繰り返しは、区間検出部241において新しい行が検出されなくなった時点で終了する(S207A)。
【0108】
上記手順により更新されたオリジナル文章ファイル260のデータは、出力部250から、透かし情報270が埋め込まれた文章ファイル261として出力される(S208A)。
【0109】
以下、具体的なデータを用いて電子透かし埋め込み装置200の動作を詳細に説明する。
【0110】
図22の埋め込み規則情報281は、情報記憶部230に記憶されている埋め込み規則情報280の一例であり、文章の一文字目から各行末までの総文字数の増減量と埋め込まれる情報の対応関係を示す。
【0111】
図4のオリジナル文章ファイル162を文章ファイル入力部210から入力し、図5の透かし情報171を透かし情報入力部220から入力する。1行目162−1は36文字である。2行目162−4は37文字である。3行目162−3は37文字である。4行目162−4は10文字である。
【0112】
入力されたオリジナル文章ファイル162のデータと透かし情報171は埋め込み処理部240に渡される。埋め込み処理部240は、下記の手順により、オリジナル文章ファイル162のデータに透かし情報171に対応する情報を埋め込む。
【0113】
図5の透かし情報171の1ビット目のビット0に対応する情報を1行目162−1に埋め込む手順は以下の通りである。まず区間検出部241によって、図4のオリジナル文章ファイル162のデータから1行目162−1を検出する。
【0114】
次に、文字数演算部242によって、ビット0に対応する文章の1文字目から1行末までの総文字数を、埋め込み規則情報281に従って演算する。まず、埋め込み規則情報281の規則1と規則4から、1行目162−1にビット0に対応する情報を埋め込んだ場合の該文字数は、埋め込み前の文章の1文字目から1行目162−1の行末までの総文字数から1文字以上減少することを読み取る。次に、埋め込み前の文章の1文字目から1行目162−1の行末までの総文字数をカウント演算し、36であることを演算する。次に、埋め込み前の1行目162−1の行末までの総文字数が36から1文字減少した時点で行末の文字が“ィ”になり、埋め込み規則情報281の規則5から、1行末までの総文字数は34となることを演算する。
【0115】
次に、文字数制御部243によって、演算結果を元に、文章の1文字目から1行目162−1の行末までの総文字数が34になるように1行目162−1の行末から1文字目のところで改行を行う。以上の処理を行った上で、オリジナル文章ファイル162のデータを更新する。図23に、1行目にビット0に対応する情報を埋め込んだ文章ファイル162dを示す。
【0116】
透かし情報171の2ビット目のビット1に対応する情報を2行目162−2埋め込む手順は以下の通りである。まず区間検出部241によって、図23の文章ファイル162dのデータから1行目と162d−1と2行目162d−2を検出する。
【0117】
次に、文字数演算部242によって、ビット1に対応する文章の1文字目から2行末までの総文字数を、埋め込み規則情報281に従って演算する。まず、埋め込み規則情報281の規則2から、2行目にビット1に対応する情報を埋め込んだ場合の該文字数は、埋め込み前の文章の1文字目から1行目162d−2の行末までの総文字数から1文字以上増加することを読み取る。次に、埋め込み前の文章の1文字目から2行目162d−2の行末までの総文字数をカウント演算し、73であることを演算する。このカウント演算の際に、埋め込み規則情報281の規則5が適用されるのは、情報を埋め込む対象となる行のみである。つまり、1行目162d−1の行末の文字は“ィ”であるが、文字数としてカウント演算される。これは、規則情報281の規則5の適用を減らし、カウント演算を高速に行うためである。ただし、埋め込み規則情報281の規則5を、情報を埋め込む対象となる行以外の行に適用し、文字数をカウント演算しても良い。
【0118】
次に、文字数制御部243によって、演算結果を元に、文章の1文字目から2行目162d−2の行末までの総文字数が74以上になるように2行目162d−2の文字数を1文字増やす。つまり、162dの3行目162d−3の行頭から1文字を、2行目162d−2の行末に繰り上げる。以上の処理を行った上で、文章ファイル162dのデータを更新する。図24に、1行目にビット0、2行目にビット1に対応する情報を埋め込んだ文章ファイル162eを示す。
【0119】
透かし情報171の3ビット目の0に対応する情報を埋め込む手順は以下の通りである。まず区間検出部141によって、図24の文章ファイル162eのデータから3行目162e−3を検出する。
【0120】
次に、文字数演算部142によって、ビット0に対応する情報を埋め込んだ場合の文章の1文字目から3行目162e−3の行末までの総文字数を、埋め込み規則情報281に従って演算する。まず、埋め込み規則情報281の規則1と規則5から、3行目にビット0に対応する情報を埋め込んだ場合の該文字数は、埋め込み前の文章の一文字目から3行目162e−2の行末までの総文字数から1文字以上減少することを読み取る。次に、埋め込み前の文章の1文字目から3行目162e−3の行末までの総文字数をカウント演算し、109であることを演算する。このとき、埋め込み前の3行末の文字は“ター”であり、埋め込み規則情報281の規則5から、“ー”は埋め込み前の文字数にカウント演算されていない。また、このカウント演算の際に、埋め込み規則情報281の規則5が適用されるのは、情報を埋め込む対象となる行のみである。つまり、1行目162e−1の行末の文字は“ィ”であるが、文字数としてカウント演算される。これは、規則情報281の規則5の適用を減らし、カウント演算を高速に行うためである。ただし、埋め込み規則情報281の規則5が、情報を埋め込む対象となる行以外の行に適用し、文字数をカウント演算しても良い。次に、ビット0に対応する情報を埋め込むために、“ター”の2文字を4行目162e−4に移動する処理を行うことで1文字減少させると、3行目行末の文字は“ォー”になり、埋め込み規則情報281の規則5から、その時点で3行目行末までの総文字数は106となる。
【0121】
次に、文字数制御部243によって、演算結果を元に、文章の1文字目から3行目162e−3の行末までの総文字数が106になるように3行目162e−3の文字数を3文字減らす。つまり、162dの3行目162d−3の行末から3文字のところで改行を行う。以上の処理を行った上で、文章ファイル162eのデータを更新する。図25に、1行目にビット0、2行目にビット1、3行目の162f−3にビット0に対応する情報を埋め込んだ文章ファイル162fを示す。
【0122】
以上で透かし情報171が全て埋め込まれた。以降の行は何も情報が埋め込まれないように処理する。まず区間検出部241によって、図25の文章ファイル162fのデータから4行目162f−4を検出する。
【0123】
次に、文字数演算部242によって、何も情報を埋め込まない場合の文章の1文字目から4行目の行末までの総文字数を、埋め込み規則情報281に従って演算する。まず、埋め込み規則情報281の規則3から、埋め込み前の文章の一文字目から4行目162e−4の行末までの総文字数の増減量±0であることを読み取る。次に、埋め込み前の文章の1文字目から3行目162e−3の行末までの総文字数をカウント演算し、119であることを演算する。このとき、埋め込み前の4行末の文字は“。”であり、埋め込み規則情報281の規則5から、“。”は埋め込み前の文字数にカウント演算されていない。また、このカウント演算の際に、埋め込み規則情報281の規則5が適用されるのは、情報を埋め込む対象となる行のみである。つまり、1行目162e−1の行末の文字は“ィ”であるが、文字数としてカウント演算される。埋め込み規則情報281の規則5が、情報を埋め込む対象となる行以外の行に適用し、文字数をカウント演算しても良い。
【0124】
次に、文字数制御部243によって、文章の1文字目から4行目162f−4の行末までの総文字数が119になるように文字数を増減する。埋め込み前の文字数が119であるため、4行目162f−4の文字数は変化しない。また、文章ファイル162fも変化しない。
【0125】
また、埋め込み前の文章の一文字目から4行目162e−4の行末までの総文字数の増減量±0であることを読み取った時点で、それ以降の演算を省いても良い。演算を省くことで、処理速度が向上する。
【0126】
上記手順により生成された文章ファイル162fのデータは、出力部250から、透かし情報171が埋め込まれた文章ファイルとして出力される。
【0127】
以上の説明で用いたように、本実施形態に係る電子透かし埋め込み装置は、第一の実施形態に係る電子透かし埋め込み装置と等しいオリジナル文章ファイル、透かし情報を扱える。
【0128】
また、以上の説明において用いた埋め込み規則情報281は一例であり、本実施形態による電子透かしの埋め込みは、要旨を逸脱しない範囲で任意の埋め込み規則情報を用いることができる。
【0129】
例えば、埋め込み規則情報は、一行に含まれる文字数は英単語や数値の途中で改行が生じる文字数にしてはならないといった、文字数の調整に関する制約規則を含んでも良い。
【0130】
また、埋め込み規則情報は、文章の一文字目から各行末までの総文字数の増減量と複数の情報列の対応関係を含んでも良く、図26の埋め込み規則情報282を用いると、各行に最大2ビットの情報を埋め込むことができる。よって、本実施形態に係る埋め込み装置は、各行に複数の情報を電子透かしとして埋め込むことができる。
【0131】
[電子透かし読み出し装置]
図27は、第二の実施形態における電子透かし読み出し装置の構成を示すブロック図である。図27に示すように、本実施形態による電子透かし読み出し装置201は、透かし情報が埋め込まれていないオリジナル文章ファイルと透かし情報が埋め込まれた文章ファイルを入力する文章ファイル入力部211、文章の一文字目から各行末までの総文字数の増減量と埋め込まれる情報の対応関係を読み出し規則情報として記憶する情報記憶部230、電子透かし読み出し処理を行う読み出し処理部290及び透かし情報を出力する出力部251とから構成される。
【0132】
図28は、読み出し処理部290の構成を示すブロック図である。図28に示すように、読み出し処理部290は、文章ファイルを構成する文章から行を検出する区間検出部291と、オリジナル文章ファイルと透かし情報が埋め込まれた文章ファイルの文章の1文字目から検出された行末までの総文字数の差を求める文字数演算部292と、情報記憶部230に記憶された読み出し規則情報を参照し、文字数演算部292の結果に対応する情報を読み出す情報読み出し部293とから構成される。
【0133】
次に、電子透かし読み出し装置201を用いた電子透かし読み出し方法について説明する。図29は、電子透かし読み出し装置201の動作手順を示すフローチャートである。
【0134】
図29に示すように、文章ファイル入力部211にオリジナル文章ファイル260を入力(S201B)し、同様に透かし情報が埋め込まれた文章ファイル261を入力する(S202B)。
【0135】
入力されたオリジナル文章ファイル260のデータと文章ファイル261のデータは読み出し処理部290に渡される。読み出し処理部290は下記手順を繰り返す。
【0136】
まず区間検出部291によって、オリジナル文章ファイル260のデータから、先頭行から数えた行番号が最も若くまだ処理されていない一行を検出し、文章ファイル261のデータから、オリジナル文章ファイル260のデータから検出した行に対応する行を検出する(S203B)。
【0137】
次に、文字数演算部292によって、文章ファイル261の文章の1文字目から検出された行末までの総文字数とオリジナル文章ファイル260の文章の1文字目から検出された行末までの総文字数の差(前者から後者を引いた値)を求める(S204B)。
【0138】
そして情報読み出し部293によって、情報記憶部230に記憶された読み出し規則情報280を参照し、文字数演算部292の演算結果に対応する情報を読み出す(S205B)。読み出した情報は、情報記憶部230に一時的に記憶する(S206B)。
【0139】
上記手順の繰り返しは、区間検出部291において新しい行が検出されなくなった時点で終了する(S207B)。
【0140】
上記手順により読み出し、情報記憶部230に一時的に記憶した情報は、出力部251から、透かし情報270として出力される(S208B)。
【0141】
以下、具体的なデータを用いて電子透かし読み出し装置201の動作を詳細に説明する。
【0142】
図4のオリジナル文章ファイル162と図25の透かし情報が埋め込まれた文章ファイル162fを文章ファイル入力部211から入力する。
【0143】
入力された文章ファイル162のデータと文章ファイル162fのデータは読み出し処理部290に渡される。読み出し処理部290は、下記の手順により、文章ファイル162fのデータから透かし情報を読み出す。
【0144】
透かし情報の1ビット目を読み出す手順は以下の通りである。まず区間検出部291によって、オリジナル文章ファイル162のデータから1行目を検出し、文章ファイル162fのデータから1行目を検出する。
【0145】
次に、文字数演算部292によって、文章ファイル162fの文章の1文字目から1行末までの総文字数とオリジナル文章ファイル162の文章の1文字目から1行末までの総文字数の差(前者から後者を引いた値)を求める。この場合の該文字数差(増減量)は−2である。
【0146】
そして情報読み出し部293によって、情報記憶部230に記憶された図22の読み出し規則情報281を参照し、増減量−2に対応するビット0を読み出す。読み出したビット0は情報記憶部230に一時的に記憶する。
【0147】
透かし情報の2ビット目を読み出す手順は以下の通りである。まず区間検出部291によって、オリジナル文章ファイル162のデータから2行目を検出し、文章ファイル162fのデータから2行目を検出する。
【0148】
次に、文字数演算部292によって、文章ファイル162fの文章の1文字目から2行末までの総文字数とオリジナル文章ファイル162の文章の1文字目から2行末までの総文字数の差(前者から後者を引いた値)を求める。この場合の該文字数差(増減量)は+1である。
【0149】
そして情報読み出し部293によって、情報記憶部230に記憶された図22の読み出し規則情報281を参照し、増減量+1に対応するビット1を読み出す。読み出したビット1は情報記憶部230に一時的に記憶する。
【0150】
透かし情報の3ビット目を読み出す手順は以下の通りである。まず区間検出部291によって、オリジナル文章ファイル162のデータから3行目を検出し、文章ファイル162fのデータから3行目を検出する。
【0151】
次に、文字数演算部292によって、文章ファイル162fの文章の1文字目から3行末までの総文字数とオリジナル文章ファイル162の文章の1文字目から3行末までの総文字数の差(前者から後者を引いた値)を求める。この場合の該文字数差(増減量)は−3である。
【0152】
そして情報読み出し部293によって、情報記憶部230に記憶された図22の読み出し規則情報281を参照し、増減量−3に対応するビット0を読み出す。読み出したビット0は情報記憶部230に一時的に記憶する。
【0153】
透かし情報の4ビット目を読み出す手順は以下の通りである。まず区間検出部291によって、オリジナル文章ファイル162のデータから4行目を検出し、文章ファイル162fのデータから4行目を検出する。
【0154】
次に、文字数演算部292によって、文章ファイル162fの文章の1文字目から4行末までの総文字数とオリジナル文章ファイル162の文章の1文字目から4行末までの総文字数の差(前者から後者を引いた値)を求める。この場合の該文字数差(増減量)は0である。
【0155】
そして情報読み出し部293によって、情報記憶部230に記憶された図22の読み出し規則情報281を参照し、何も情報が埋め込まれていないことを意味するNULLを読み出す。
以上で文章ファイル162fの全ての行に対する読み出し処理を終了する。
【0156】
上記手順により読み出し、情報記憶部230に一時的に記憶した情報は、出力部251から、図30の透かし情報271として出力される。
【0157】
読み出した透かし情報271は、本実施形態における電子透かし埋め込み装置によって162fに埋め込まれた透かし情報171に等しい。このように、本実施形態における電子透かし読み出し装置は、本実施形態における電子透かし埋め込み装置で文章ファイルに埋め込んだ透かし情報を読み出すことができる。
【0158】
また、第一の実施形態に係る埋め込み装置によって文章ファイルに埋め込まれた電子透かしと同様に、本実施形態に係る埋め込み装置によって文章ファイルに埋め込まれた電子透かしは、その文章ファイルを印刷し、スキャナで読み取った後に細線化・太線化・歪曲等の画像処理を適用しても除去されない。そのため上記画像処理を施してコピーされた文書からも、埋め込まれた電子透かしの読み出しが可能である。
【符号の説明】
【0159】
100、200 電子透かし埋め込み装置
101、201 電子透かし読み出し装置
110、111、210、211 文章ファイル入力部
120、220 透かし情報入力部
130、230 情報記憶部
140、240 埋め込み処理部
141、191、241、291 区間検出部
142、192、242、292 文字数演算部
143、243 文字数制御部
150、151、250、251 出力部
160、162、260 オリジナル文章ファイル
161、162a、162b、162c、162d、162e、162f、162g、162h、162i、162j、261 透かし埋め込み文章ファイル
170、171、172、270、271 透かし情報
180、181、182、280、281、282 埋め込み(読み出し)規則
190、290 読み出し処理部
193、293 情報読み出し部
【技術分野】
【0001】
本発明は、文章ファイルに電子透かしを埋め込む電子透かし埋め込み装置、文章ファイルに埋め込まれた電子透かしを読み出す読み出し装置に関する。
【背景技術】
【0002】
人には知覚できない情報を文章ファイルや画像・映像・音声等のマルチメディアデータ等のディジタルコンテンツに埋め込み、必要に応じてその情報を読み出せる技術として電子透かしが知られている。電子透かしは、コンテンツの不正コピーや不正配布、改竄等の不正行為の抑止や、不正にコンテンツが流通した場合に流出元を特定可能にする目的で使われている。
【0003】
文章ファイルに電子透かしを埋め込む方法として、特許文献1による、文字を構成する線の方向や太さ等を制御することで埋め込む方法や、特許文献2による、文字の間隔を制御することで埋め込む方法があり、それらの電子透かしを埋め込む埋め込み装置、読み出し装置がある。それらの埋め込み装置によって文章ファイルに埋め込まれた電子透かしは、文章ファイルの印刷後も印刷文書中に残存しており、読み出し装置によって読み出し可能である。そのため、印刷時に電子透かしとして利用者の識別コードを文章ファイルに埋め込んで印刷することで、不正に流通した文書を発見した際にその識別コードを確認でき、責任の所在を明確にできる。その結果、文書管理を徹底させ、情報漏洩を抑止できる。しかしながら、引用文献1または2に記載の埋め込み装置によって印刷文書に埋め込まれた電子透かしは、その印刷文書をスキャナで読み取った後に、細線化・太線化・歪曲等の画像処理を施すことで、文書の体裁を保ったまま容易に除去できる。そのため、上記画像処理を施してコピーされた文書からは、印刷時に埋め込まれた識別コードを読み出せず、情報漏洩時に責任の所在を明らかにできないことが多かった。
【0004】
そこで、特許文献3のように、行末の文字単位を構成する行末文字群と改行位置との位置関係を変化させることで、電子透かしを埋め込む方法を用いて、印刷文書をスキャナで読み取った後に上記画像処理を適用しても除去できない情報を電子透かしとして埋め込む埋め込み装置、読み出し装置がある。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特許第4510092号公報
【特許文献2】特許第3884997号公報
【特許文献3】特開2002−26074号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかし、引用文献3に開示された、行末文字群と改行位置との位置関係を変化させる埋め込み装置または読み出し装置は、行末文字群の形態素を解析するための形態素辞書や、形態素解析処理が必要であり、処理量が大きいために埋め込みまたは読み込み処理速度が遅くなるという問題があった。
【0007】
そこで、本発明は上記従来技術の有する問題点に鑑みてなされたものであり、印刷文書をスキャナで読み取った後に上記画像処理を適用しても除去できない情報を電子透かしとして高速に埋め込み可能な電子透かし埋め込み装置、及び埋め込まれた電子透かしを高速に読み出す電子透かし読み出し装置を提供することを目的とする。
【課題を解決するための手段】
【0008】
上記課題を解決するための本発明の電子透かし埋め込み装置の第1の特徴は、複数の行から構成される文章ファイルに透かし情報を埋め込む電子透かし埋め込み装置であって、文章ファイルを入力する文章ファイル入力部と、文章ファイルに埋め込む透かし情報を入力する透かし情報入力部と、透かし情報に対応するコードを記憶する情報記憶部と、文章ファイルからコードを埋め込む区間を検出する区間検出部と、コードに基づき、区間の文字数の増減数を算出する文字数演算部と、算出された文字数の増減数に基づき、区間の文字数を増減させる文字数制御部とを有し、文章ファイルにコードを埋め込む透かし情報埋め込み処理部とを備えることを要旨とする。
【0009】
かかる特徴によれば、文章ファイルに埋め込まれたコードは、その文章ファイルを印刷し、スキャナで読み取った後に細線化・太線化・歪曲等の画像処理を施しても除去されずに残る。
【0010】
また、本発明の電子透かし埋め込み装置の第2の特徴は、第1の特徴の透かし情報埋め込み処理部において、文字数演算部は、区間の全体の文字数がコードと対応するように区間の文字数の増減数を算出することを要旨とする。
【0011】
また、本発明の電子透かし埋め込み装置の第3の特徴は、第1の特徴の透かし情報埋め込み処理部において、文字数演算部は、区間の文字数の増減数がコードと対応するように区間の文字数の増減数を算出することを要旨とする。
【0012】
また、本発明の電子透かし埋め込み装置の第4の特徴は、第1から第3のいずれかの透かし情報埋め込み処理部において、文字数制御部は、改行によって文字数を増減させることを要旨とする。
【0013】
また、本発明の電子透かし埋め込み装置の第5の特徴は、第1から第3のいずれかの透かし情報埋め込み処理部において、文字数制御部は、区間の文字間隔を増減させることによって文字数を増減させることを要旨とする。
かかる特徴によれば、文章の折り返し位置を揃えることで、コードの埋め込みによる文章の折り返しの不自然さを軽減できる。
【0014】
また、本発明の電子透かし埋め込み装置の第6の特徴は、第1から第5の透かし情報埋め込み処理部において、区間は、行の行頭から行末であることを要旨とする。
【0015】
また、本発明の電子透かし埋め込み装置の第7の特徴は、第1から第5の透かし情報埋め込み処理部において、区間は、特徴文字の間の文章であることを要旨とする。
【0016】
また、本発明の電子透かし埋め込み装置の第8の特徴は、第1から第7の透かし情報埋め込み処理部において、情報記憶部は、透かし情報を複数のコードに対応させて記憶することを要旨とする。
【0017】
また、本発明の電子透かし読み出し装置の第1の特徴は、複数の行から構成される文章ファイルに埋め込まれた透かし情報を読み出す電子透かし読み出し装置であって、透かし情報がコードに変換され、コードとして埋め込まれた透かし情報文章ファイルを入力する文章ファイル入力部と、透かし情報に対応するコードを記憶する情報記憶部と、透かし情報文章ファイルに埋め込まれた電子透かし情報を読み出す情報読み出し処理部とを有し、情報読み出し処理部は、透かし情報文章ファイルからコードを読み出す読み出し区間を検出する区間検出部と、検出された読み出し区間の文字数を数える文字数演算部と、読み出し区間の文字数に対応するコードを特定し、透かし情報を読み出す情報読み出し部とを有することを要旨とする。
【0018】
また、本発明の電子透かし読み出し装置の第2の特徴は、複数の行から構成される文章ファイルに埋め込まれた透かし情報を読み出す電子透かし読み出し装置であって、透かし情報がコードに変換されコードとして埋め込まれた透かし情報文章ファイルと、透かし情報が埋め込まれていないオリジナル文章ファイルとを入力する文章ファイル入力部と、透かし情報に対応するコードを記憶する情報記憶部と、透かし情報文章ファイルに埋め込まれた電子透かし情報を読み出す情報読み出し処理部とを有し、情報読み出し処理部は、透かし情報文章ファイルからコードを読み出す読み出し区間を検出する区間検出部と、オリジナル文章ファイルから読み出し区間に対応する対応区間を検出する対応区間検出部と、検出された読み出し区間と対応区間との文字数を数える文字数演算部と、読み出し区間と対応区間との文字数の差に対応するコードを特定し、透かし情報を読み出す情報読み出し部とを有することを要旨とする。
【発明の効果】
【0019】
本発明によれば、印刷文書をスキャナで読み取った後に上記画像処理を適用しても除去できない情報を電子透かしとして高速に埋め込み可能な電子透かし埋め込み装置、及び埋め込まれた電子透かしを高速に読み出す電子透かし読み出し装置を提供することが可能になる。
【図面の簡単な説明】
【0020】
【図1】第一の実施形態による電子透かし埋め込み装置の構成を示すブロック図である。
【図2】第一の実施形態による電子透かし埋め込み装置の埋め込み処理部の構成を示すブロック図である。
【図3】第一の実施形態による電子透かし埋め込み装置の動作手順を示すフローチャートである。
【図4】電子透かし埋め込み対象のオリジナル文章ファイルの例を示す図である。
【図5】電子透かしとして文章ファイルに埋め込む透かし情報の例を示す図である。
【図6】第一の実施形態による電子透かし埋め込み装置・読み出し装置で用いる、一行の文字数と埋め込まれた情報の関係及び文字の数え方等の規則例を示す図である。
【図7】第一の実施形態による電子透かし埋め込み装置により透かし情報を埋め込んだ文章ファイルの例を示す図である。
【図8】第一の実施形態による電子透かし埋め込み装置により透かし情報を埋め込んだ文章ファイルの例を示す図である。
【図9】第一の実施形態による電子透かし埋め込み装置により透かし情報を埋め込んだ文章ファイルの例を示す図である。
【図10】第一の実施形態による電子透かし埋め込み装置・読み出し装置で用いる、一行の文字数と埋め込まれた情報の関係及び文字の数え方等の規則例を示す図である。
【図11】第一の実施形態による電子透かし読み出し装置の構成を示すブロック図である。
【図12】第一の実施形態による電子透かし読み出し装置の読み出し処理部の構成を示すブロック図である。
【図13】第一の実施形態による電子透かし読み出し装置の動作手順を示すフローチャートである。
【図14】第一の実施形態による電子透かし読み出し装置により文章ファイルから読み出した透かし情報の例を示す図である。
【図15】第一の実施形態による電子透かし埋め込み装置により透かし情報を埋め込んだ文章ファイルを印刷し、スキャナで読み取った画像の例を示す図である。
【図16】第一の実施形態による電子透かし埋め込み装置により透かし情報を埋め込んだ文章ファイルを印刷し、スキャナで読み取って細線化処理を施した画像の例を示す図である。
【図17】第一の実施形態による電子透かし埋め込み装置により透かし情報を埋め込んだ文章ファイルを印刷し、スキャナで読み取って太線化処理を施した画像の例を示す図である。
【図18】第一の実施形態による電子透かし埋め込み装置により透かし情報を埋め込んだ文章ファイルを印刷し、スキャナで読み取って歪曲処理を施した画像の例を示す図である。
【図19】第二の実施形態による電子透かし埋め込み装置の構成を示すブロック図である。
【図20】第二の実施形態による電子透かし埋め込み装置の埋め込み処理部の構成を示すブロック図である。
【図21】第二の実施形態による電子透かし埋め込み装置の動作手順を示すフローチャートである。
【図22】第二の実施形態による電子透かし埋め込み装置・読み出し装置で用いる、文章の1文字目から行末までの総文字数と埋め込まれた情報の関係及び文字の数え方等の規則例を示す図である。
【図23】第二の実施形態による電子透かし埋め込み装置により透かし情報を埋め込んだ文章ファイルの例を示す図である。
【図24】第二の実施形態による電子透かし埋め込み装置により透かし情報を埋め込んだ文章ファイルの例を示す図である。
【図25】第二の実施形態による電子透かし埋め込み装置により透かし情報を埋め込んだ文章ファイルの例を示す図である。
【図26】第二の実施形態による電子透かし埋め込み装置・読み出し装置で用いる、文章の1文字目から行末までの総文字数と埋め込まれた情報の関係及び文字の数え方等の規則例を示す図である。
【図27】第二の実施形態による電子透かし読み出し装置の構成を示すブロック図である。
【図28】第二の実施形態による電子透かし読み出し装置の読み出し処理部の構成を示すブロック図である。
【図29】第二の実施形態による電子透かし読み出し装置の動作手順を示すフローチャートである。
【図30】第二の実施形態による電子透かし読み出し装置により文章ファイルから読み出した透かし情報の例を示す図である。
【発明を実施するための形態】
【0021】
以下、図面を参照して、本発明の一実施形態による電子透かし埋め込み装置及び電子透かし読み出し装置について説明する。
【0022】
(第一の実施形態)
本実施形態は、一行に含まれる文字数を所定の文字数に一致させることで該行に目に見えない情報を埋め込む埋め込み装置、それにより埋め込まれた情報を読み出す読み出し装置に関する。
【0023】
[電子透かし埋め込み装置]
図1は、第一の実施形態における電子透かし埋め込み装置の構成を示すブロック図である。図1に示すように、本実施形態による電子透かし埋め込み装置100は、透かし情報の埋め込み対象である文章ファイルを入力する文章ファイル入力部110、透かし情報を入力する透かし情報入力部120、一行に含まれる文字数と埋め込まれる情報の対応関係を埋め込み規則情報として記憶する情報記憶部130、電子透かし埋め込み処理を行う埋め込み処理部140及び透かし情報が埋め込まれた文章ファイルを出力する出力部150とから構成される。
【0024】
図2は、埋め込み処理部140の構成を示すブロック図である。図2に示すように、埋め込み処理部140は、文章ファイルを構成する文章から行を検出する区間検出部141と、検出された行に情報を埋め込んだ場合の該行の文字数を情報記憶部130に記憶された埋め込み規則情報に従って演算する文字数演算部142と、文字数演算部142の結果に一致するように上記行の文字数を増減する文字数制御部143とから構成される。
【0025】
次に、電子透かし埋め込み装置100を用いた電子透かし埋め込み方法について説明する。図3は、電子透かし埋め込み装置100の動作手順を示すフローチャートである。
【0026】
図3に示すように、文章ファイル入力部110に透かし情報の埋め込み対象であるオリジナル文章ファイル160を入力し(S101A)、透かし情報入力部120にn個の情報で構成される透かし情報170を入力する(S102A)。
【0027】
入力されたオリジナル文章ファイル160のデータと透かし情報170は埋め込み処理部140に渡される。埋め込み処理部140は下記手順を繰り返す。
【0028】
まず区間検出部141によって、オリジナル文章ファイル160のデータから、先頭行から数えた行番号が最も若くまだ処理されていない一行を検出する(S103A)。
【0029】
次に、文字数演算部142によって、検出された行に情報を埋め込んだ場合の該行の文字数を埋め込み規則情報180に従って演算する(S104A)。
【0030】
そして文字数制御部143によって、文字数演算部142の演算結果に一致するように該行の文字数を増減することで該演算結果に対応する情報を埋め込み(S105A)、オリジナル文章ファイル160のデータを更新する(S106A)。
【0031】
上記手順の繰り返しは、区間検出部141において新しい行が検出されなくなった時点で終了する(S107A)。
【0032】
上記手順により更新されたオリジナル文章ファイル160のデータは、出力部150から、透かし情報170が埋め込まれた文章ファイル161として出力される(S108A)。
【0033】
以下、具体的なデータを用いて電子透かし埋め込み装置100の動作を詳細に説明する。
【0034】
図4のオリジナル文章ファイル162は、オリジナル文章ファイル160の一例である。文章の各行末には改行コードが含まれている。1行目162−1は36文字である。2行目162−2は37文字である。3行目162−3は行末の“ー”までは文字数に入れると37文字である。4行目162−4は行末の“。”までは文字数に入れると10文字である。
【0035】
図5の透かし情報171は、透かし情報170の一例であり、2進数で表現された3桁のビットである。
【0036】
図6の埋め込み規則情報181は、情報記憶部130に記憶されている埋め込み規則情報180の一例であり、埋め込み処理後の一行の文字数と埋め込まれる情報との対応関係を示す。
【0037】
図4のオリジナル文章ファイル162を文章ファイル入力部110から入力し、図5の透かし情報171を透かし情報入力部120から入力する。
【0038】
入力されたオリジナル文章ファイル162のデータと透かし情報171は埋め込み処理部140に渡される。埋め込み処理部140は、下記の手順により、オリジナル文章ファイル162のデータに透かし情報171に対応する情報を埋め込む。
【0039】
図7に、図4のオリジナル文章ファイル162の1行目に、図5の1ビット目であるビット0に対応する情報を埋め込んだ文章ファイル162aを示す。透かし情報171のビット0に対応する情報を埋め込む手順は以下の通りである。
【0040】
まず区間検出部141によって、オリジナル文章ファイル162のデータから1行目162−1を検出する。
【0041】
次に、文字数演算部142によって、ビット0に対応する1行目の文字数を、埋め込み規則情報181に従って演算する。まず、埋め込み規則情報181の規則から、1行目のビット0に対応する文字数は36であることを読み取る。次に、埋め込み前の1行目162−1の文字数をカウント演算し、36であることを演算する。次に、ビット0に対応する文字数36と埋め込み前の文字数36との差を演算し、文字数の変化量0を得る。
【0042】
次に、文字数制御部143によって、文字数の変化量0を元に、1行目162−1の文字数の変更処理を行う。文字数の変化量が0なので、文字数の変更処理は行わない。以上の処理を行った上で、オリジナル文章ファイル162のデータを更新し、文章ファイル162aを作成する。
【0043】
図8に、図7に引き続き、2行目に図5の2ビット目であるビット1に対応する情報を埋め込んだ文章ファイル162bを示す。透かし情報171の2ビット目の1に対応する情報を埋め込む手順は以下の通りである。
【0044】
まず区間検出部141によって、図7の文章ファイル162aのデータから2行目162a−2を検出する。
【0045】
次に、文字数演算部142によって、ビット1に対応する2行目の文字数を、埋め込み規則情報181に従って演算する。まず、埋め込み規則情報181の規則2から、2行目のビット1に対応する文字数は35であることを読み取る。次に、埋め込み前の2行目162a−2の文字数をカウント演算し、37であることを演算する。次に、ビット1に対応する文字数35と埋め込み前の文字数37との差を演算し、文字数の変化量−2を得る。そして、2行目162b−2の文字数を2文字減らすことが可能か検証する。まず、2行目の文字数を1文字ずつ減らして文字数をカウントする処理を繰り返し、文字数が2文字以上減少した時点の改行位置を求める。行末から−2文字の位置である文字“出”と“せ”の間で改行した場合、2行目の文字数は35となる。よって、2文字減らすことは可能である。
【0046】
次に、文字数制御部143によって、文字数の変化量−2を元に、2行目162a−2の文字数の変更処理を行う。文字数の変化量が−2なので、2行目162a−2の行末から−2文字の位置である文字“出”と文字“せ”の間で改行を行う。以上の処理を行った上で、文章ファイル162aのデータを更新し、文章ファイル162bを作成する。
【0047】
図9に、図8に引き続き、3行目に図5の3ビット目であるビット0に対応する情報を埋め込んだ文章ファイル162cを示す。透かし情報171の3ビット目の0に対応する情報を埋め込む手順は以下の通りである。
【0048】
まず区間検出部141によって、図8の文章ファイル162bのデータから3行目162b−3を検出する。
【0049】
次に、文字数演算部142によって、ビット0に対応する3行目の文字数を、埋め込み規則情報181に従って演算する。まず、埋め込み規則情報181の規則1から、3行目のビット0に対応する文字数は36であることを読み取る。次に、埋め込み前の3行目162b−3の文字数をカウント演算する。埋め込み前3行目162b−3の文字数は、行末の“ー”までカウントすると39文字であるが、埋め込み規則情報181の規則5から、行末の“ー”は文字数にカウントしないため38となる。次に、ビット0に対応する文字数36と埋め込み前の文字数38との差を演算し、文字数の変化量−2を得る。そして、3行目162b−3の文字数を2文字減らすことが可能か検証する。まず、3行目の文字数を1文字ずつ減らして文字数をカウントする処理を繰り返し、文字数が2文字以上減少した時点の改行位置を求める。行末から−1文字の位置である文字“ー”(文字“ォ”の直後の文字)と“タ”の間で改行した場合、3行目の文字数は、埋め込み規則情報181の規則5から行末の“ォー”は文字数にカウントしないため35となり、元の文字数から3文字減少する。よって、2文字だけ減らすことはできない。
【0050】
検証の結果、文字数の変更が不可能と判断された場合、埋め込み規則情報181の規則1から他にビット0に対応する文字数を読み取る。他にビット0に対応する文字数がなければ規則3に従って文字数を求めるが、この場合は他にビット0に対応する文字数として38がある。そこで、ビット0に対応する文字数38と埋め込み前の文字数38の差を演算し、文字数の変化量0を得る。変化量が0の場合は、文字数の変更の可否についての検証は省略される。
【0051】
次に、文字数制御部143によって、文字数の変化量0を元に、3行目162b−3の文字数の変更処理を行う。文字数の変化量が0なので、実際に改行は行わない。以上の処理を行った上で、オリジナル文章ファイル162bのデータを更新し、文章ファイル162cを作成する。
【0052】
以上で透かし情報171が全て埋め込まれた。以降の行は何も情報が埋め込まれないように処理する。まず区間検出部141によって、図9の文章ファイル162cのデータから4行目162c−4を検出する。
【0053】
次に、文字数演算部142によって、何も情報を埋め込まない場合の4行目162c−4の文字数を、埋め込み規則情報181に従って演算する。埋め込み規則情報181の規則3から、4行目162c−4に何も情報を埋め込まない場合の文字数は34以下または39以上であることを読み取る。次に、埋め込み前の4行目162c−4の文字数をカウント演算する。埋め込み前の4行目162c−4の文字数は、行末の“。”までであると10であるが、埋め込み規則情報181の規則5より、行末の“。”は文字数に入れないため、文字数は9となる。次に、埋め込み規則181の規則5から読み取った文字数と、埋め込み前の文字数との差を演算する。埋め込み前の4行目162c−4の文字数は34以下であるので、埋め込み規則181の規則3の何も情報を埋め込まない場合の文字数の範囲内であり、文字数の変化量は0である。
【0054】
次に、文字数制御部143によって、文字数の変化量0を元に、4行目162c−4の文字数の変更処理を行う。文字数の変化量が0なので、実際に改行は行わない。以上の処理を行った上で、オリジナル文章ファイル162cのデータを更新する。
【0055】
上記手順により生成された文章ファイル162cは、出力部150から、透かし情報171が埋め込まれた文章ファイルとして出力される。
【0056】
以上の説明において用いたオリジナル文章ファイル162は一例であり、本実施形態による電子透かしの埋め込みは、要旨を逸脱しない範囲で任意の文章ファイルに適用できる。
【0057】
例えば、オリジナル文章ファイルは、1行あたりの文字サイズと文字間隔の総和に応じて行を折り返すデータ形式でも良い。この場合、行末に改行コードを付加することで文字数を制御する方法の他、文字間隔や文字サイズを変更することで文字数を制御する方法を用いても良い。
【0058】
オリジナル文章ファイルは、電子透かしの埋め込み対象となる文章の他に、画像・音声・動画等のマルチメディアデータを含むファイルであっても良い。その場合、区間検出部141は、該マルチメディアデータと文章を識別し、文章から行を検出する。
【0059】
また、以上の説明において用いたオリジナル文章ファイル161の文章は日本語で記述されているが、オリジナル文章ファイルの文章は英語や中国語、韓国語、フランス語、ドイツ語等、日本語以外の言語で記述されていても良い。
【0060】
また、以上の説明において用いた透かし情報171は一例であり、本実施形態による電子透かしの埋め込みは、要旨を逸脱しない範囲で任意の透かし情報に適用できる。
例えば、透かし情報は、0または1以外の数値や文字を含む情報であっても良い。
【0061】
また、以上の説明において用いた埋め込み規則情報181は一例であり、本実施形態による電子透かしの埋め込みは、要旨を逸脱しない範囲で任意の埋め込み規則情報を用いることができる。
【0062】
例えば、埋め込み規則情報は、一行に含まれる文字数は英単語や数値の途中で改行が生じる文字数にしてはならないといった、文字数の調整に関する制約規則を含んでも良い。
【0063】
また、埋め込み規則情報は、一行に含まれる文字数と複数の情報列の対応関係を含んでも良く、図10の埋め込み規則情報182を用いると、各行に最大2ビットの情報を埋め込むことができる。よって、本実施形態に係る埋め込み装置は、各行に複数の情報を電子透かしとして埋め込むことができる。
【0064】
また、以上の説明において用いた区間検出部によって検出される区間は、行でなくてもよく、句読点間、または決められた文字や文字サイズや文字間隔といった特徴文字の間の区間でも良い。
【0065】
[電子透かし読み出し装置]
図11は、第一の実施形態における電子透かし読み出し装置の構成を示すブロック図である。図11に示すように、本実施形態による電子透かし読み出し装置101は、透かし情報が埋め込まれた文章ファイルを入力する文章ファイル入力部111、一行に含まれる文字数と埋め込まれた情報の対応関係を読み出し規則情報として記憶する情報記憶部130、電子透かし読み出し処理を行う読み出し処理部190及び透かし情報を出力する出力部151とから構成される。
【0066】
図12は、読み出し処理部190の構成を示すブロック図である。図12に示すように、読み出し処理部190は、文章ファイルを構成する文章から行を検出する区間検出部191と、検出された行の文字数を数える文字数演算部192と、情報記憶部130に記憶された読み出し規則情報を参照し、文字数演算部192の結果に対応する情報を読み出す情報読み出し部193とから構成される。
【0067】
次に、電子透かし読み出し装置101を用いた電子透かし読み出し方法について説明する。図13は、電子透かし読み出し装置101の動作手順を示すフローチャートである。
【0068】
図13に示すように、文章ファイル入力部111に透かし情報が埋め込まれた文章ファイル161を入力する(S101B)。
【0069】
入力された文章ファイル161のデータは読み出し処理部190に渡される。読み出し処理部190は下記手順を繰り返す。
【0070】
まず区間検出部191によって、文章ファイル161のデータから、先頭行から数えた行番号が最も若くまだ処理されていない一行を検出する(S102B)。
次に文字数演算部192によって、検出された行の文字数を数える(S103B)。
【0071】
そして情報読み出し部193によって、情報記憶部130に記憶された読み出し規則情報180を参照し、文字数演算部192の演算結果に対応する情報を読み出す(S104B)。読み出した情報は、情報記憶部130に一時的に記憶する(S105B)。
【0072】
上記手順の繰り返しは、区間検出部191において新しい行が検出されなくなった時点で終了する(S106B)。
【0073】
上記手順により読み出し、情報記憶部130に一時的に記憶した情報は、出力部151から、透かし情報170として出力される(S107B)。
【0074】
以下、具体的なデータを用いて電子透かし読み出し装置101の動作を詳細に説明する。
図9の透かし情報が埋め込まれた文章ファイル162cを文章ファイル入力部111から入力する。
【0075】
入力された文章ファイル162cのデータは読み出し処理部190に渡される。読み出し処理部190は、下記の手順により、文章ファイル162cのデータから透かし情報を読み出す。
【0076】
透かし情報の1ビット目を読み出す手順は以下の通りである。まず区間検出部191によって、文章ファイル162cのデータから1行目を検出する。
【0077】
次に文字数演算部192によって、1行目の文字数を数える。この場合の文字数は36である。
【0078】
そして情報読み出し部193によって、情報記憶部130に記憶された図6の読み出し規則情報181を参照し、文字数36に対応するビット0を読み出す。読み出したビット0は情報記憶部130に一時的に記憶する。
【0079】
透かし情報の2ビット目を読み出す手順は以下の通りである。まず区間検出部191によって、文章ファイル162cのデータから2行目を検出する。
【0080】
次に文字数演算部192によって、2行目の文字数を数える。この場合の文字数は35である。
【0081】
そして情報読み出し部193によって、情報記憶部130に記憶された読み出し規則情報181を参照し、文字数35に対応するビット1を読み出す。読み出したビット1は1行目から読み出したビット0と合わせて情報記憶部130に一時的に記憶する。
【0082】
透かし情報の3ビット目を読み出す手順は以下の通りである。まず区間検出部191によって、文章ファイル162cのデータから3行目を検出する。
【0083】
次に文字数演算部192によって、3行目の文字数を数える。この場合の文字数は38である。
【0084】
そして情報読み出し部193によって、情報記憶部130に記憶された読み出し規則情報181を参照し、文字数38に対応するビット0を読み出す。読み出したビット0は1行目から読み出したビット0と2行目から読み出したビット1と合わせて情報記憶部130に一時的に記憶する。
【0085】
透かし情報の4ビット目を読み出す手順は以下の通りである。まず区間検出部191によって、文章ファイル162cのデータから4行目を検出する。
【0086】
次に文字数演算部192によって、4行目の文字数を数える。この場合の文字数は9である。
【0087】
そして情報読み出し部193によって、情報記憶部130に記憶された読み出し規則情報181を参照し、何も情報が埋め込まれていないことを意味するNULLを読み出す。
以上で文章ファイル162cの全ての行に対する読み出し処理を終了する。
【0088】
上記手順により読み出し、情報記憶部130に一時的に記憶した情報は、出力部151から、図14の透かし情報172として出力される。
【0089】
読み出した透かし情報172は、本実施形態における電子透かし埋め込み装置によって162cに埋め込まれた透かし情報171に等しい。このように、本実施形態における電子透かし読み出し装置は、本実施形態における電子透かし埋め込み装置で文章ファイルに埋め込んだ透かし情報を読み出すことができる。
【0090】
図15の文章ファイル162gは、文章ファイル162cを印刷し、スキャナで読み取った画像である。
【0091】
図16の文章ファイル162hは、図15の文章ファイル162dに細線化処理を施した画像である。
【0092】
図17の文章ファイル162iは、図15の文章ファイル162dに太線化処理を施した画像である。
【0093】
図18の文章ファイル162jは、図15の文章ファイル162dに162j−1方向に歪曲処理を施した画像である。
【0094】
文章ファイル162cと文章ファイル162gとを比較すると、印刷とスキャンによって、各行に含まれる文字数は変化していない。また、文章ファイル162cと文章ファイル162h〜文章ファイル162jとを比較すると、各画像処理によって、各行に含まれる文字数は変化していない。
【0095】
本実施形態における電子透かし読み出し装置に入力可能な文章ファイルは、文章ファイル162h〜文章ファイル162jの画像からも、既存のOCR技術によって、または目視で確認し手作業で文章を入力することによって生成できる。それにより、画像中の文章と等しい文章を持つ(一行に含まれる文字数も等しい)文章ファイルが生成され、その文章ファイルは文章ファイル162cと等しい文章を含んでいる。
【0096】
上記方法で文章ファイル162h〜文章ファイル162jの画像から生成した文章ファイルを本実施形態の電子透かし読み出し装置に入力することで、各画像中の文章に埋め込まれた透かし情報を読み出すことができる。
【0097】
以上のように、本実施形態に係る埋め込み装置によって文章ファイルに埋め込まれた電子透かしは、その文章ファイルを印刷し、スキャナで読み取った後に細線化・太線化・歪曲等の画像処理を適用しても除去されない。そのため上記画像処理を施してコピーされた文書からも、埋め込まれた電子透かしの読み出しが可能である。
【0098】
(第二の実施形態)
本実施形態は、文章の1文字目から各行末までの総文字数を所定の文字数だけ増減することで該行に目に見えない情報を埋め込む埋め込み装置、それにより埋め込まれた情報を読み出す読み出し装置に関する。
【0099】
[電子透かし埋め込み装置]
図19は、第二の実施形態における電子透かし埋め込み装置の構成を示すブロック図である。図19に示すように、本実施形態による電子透かし埋め込み装置200は、透かし情報の埋め込み対象である文章ファイルを入力する文章ファイル入力部210、透かし情報を入力する透かし情報入力部220、文章の一文字目から各行末までの総文字数の増減量と埋め込まれる情報の対応関係を埋め込み規則情報として記憶する情報記憶部230、電子透かし埋め込み処理を行う埋め込み処理部240及び透かし情報が埋め込まれた文章ファイルを出力する出力部250とから構成される。
【0100】
図20は、埋め込み処理部240の構成を示すブロック図である。図20に示すように、埋め込み処理部240は、文章ファイルを構成する文章から行を検出する区間検出部241と、検出された行に情報を埋め込んだ場合の文章の1文字目から該行末までの総文字数を情報記憶部230に記憶された埋め込み規則情報に従って演算する文字数演算部242と、文字数演算部242の結果に一致するように文章の1文字目から上記行末までの総文字数を増減する文字数制御部243とから構成される。
【0101】
次に、電子透かし埋め込み装置200を用いた電子透かし埋め込み方法について説明する。図21は、電子透かし埋め込み装置200の動作手順を示すフローチャートである。
【0102】
図21に示すように、文章ファイル入力部210に透かし情報の埋め込み対象であるオリジナル文章ファイル260を入力し(S201A)、透かし情報入力部220にn個の情報で構成される透かし情報270を入力する(S202A)。
【0103】
入力されたオリジナル文章ファイル260のデータと透かし情報270は埋め込み処理部240に渡される。埋め込み処理部240は下記手順を繰り返す。
【0104】
まず区間検出部241によって、オリジナル文章ファイル260のデータから、先頭行から数えた行番号が最も若くまだ処理されていない一行を検出する(S203A)。
【0105】
次に、文字数演算部242によって、検出された行に情報を埋め込んだ場合の文章の1文字目から該行末までの総文字数を埋め込み規則情報280に従って演算する(S204A)。
【0106】
そして文字数制御部243によって、文字数演算部242の演算結果に一致するように文章の1文字目から該行末までの総文字数を増減することで該演算結果に対応する情報を埋め込み(S205A)、オリジナル文章ファイル260のデータを更新する(S206A)。
【0107】
上記手順の繰り返しは、区間検出部241において新しい行が検出されなくなった時点で終了する(S207A)。
【0108】
上記手順により更新されたオリジナル文章ファイル260のデータは、出力部250から、透かし情報270が埋め込まれた文章ファイル261として出力される(S208A)。
【0109】
以下、具体的なデータを用いて電子透かし埋め込み装置200の動作を詳細に説明する。
【0110】
図22の埋め込み規則情報281は、情報記憶部230に記憶されている埋め込み規則情報280の一例であり、文章の一文字目から各行末までの総文字数の増減量と埋め込まれる情報の対応関係を示す。
【0111】
図4のオリジナル文章ファイル162を文章ファイル入力部210から入力し、図5の透かし情報171を透かし情報入力部220から入力する。1行目162−1は36文字である。2行目162−4は37文字である。3行目162−3は37文字である。4行目162−4は10文字である。
【0112】
入力されたオリジナル文章ファイル162のデータと透かし情報171は埋め込み処理部240に渡される。埋め込み処理部240は、下記の手順により、オリジナル文章ファイル162のデータに透かし情報171に対応する情報を埋め込む。
【0113】
図5の透かし情報171の1ビット目のビット0に対応する情報を1行目162−1に埋め込む手順は以下の通りである。まず区間検出部241によって、図4のオリジナル文章ファイル162のデータから1行目162−1を検出する。
【0114】
次に、文字数演算部242によって、ビット0に対応する文章の1文字目から1行末までの総文字数を、埋め込み規則情報281に従って演算する。まず、埋め込み規則情報281の規則1と規則4から、1行目162−1にビット0に対応する情報を埋め込んだ場合の該文字数は、埋め込み前の文章の1文字目から1行目162−1の行末までの総文字数から1文字以上減少することを読み取る。次に、埋め込み前の文章の1文字目から1行目162−1の行末までの総文字数をカウント演算し、36であることを演算する。次に、埋め込み前の1行目162−1の行末までの総文字数が36から1文字減少した時点で行末の文字が“ィ”になり、埋め込み規則情報281の規則5から、1行末までの総文字数は34となることを演算する。
【0115】
次に、文字数制御部243によって、演算結果を元に、文章の1文字目から1行目162−1の行末までの総文字数が34になるように1行目162−1の行末から1文字目のところで改行を行う。以上の処理を行った上で、オリジナル文章ファイル162のデータを更新する。図23に、1行目にビット0に対応する情報を埋め込んだ文章ファイル162dを示す。
【0116】
透かし情報171の2ビット目のビット1に対応する情報を2行目162−2埋め込む手順は以下の通りである。まず区間検出部241によって、図23の文章ファイル162dのデータから1行目と162d−1と2行目162d−2を検出する。
【0117】
次に、文字数演算部242によって、ビット1に対応する文章の1文字目から2行末までの総文字数を、埋め込み規則情報281に従って演算する。まず、埋め込み規則情報281の規則2から、2行目にビット1に対応する情報を埋め込んだ場合の該文字数は、埋め込み前の文章の1文字目から1行目162d−2の行末までの総文字数から1文字以上増加することを読み取る。次に、埋め込み前の文章の1文字目から2行目162d−2の行末までの総文字数をカウント演算し、73であることを演算する。このカウント演算の際に、埋め込み規則情報281の規則5が適用されるのは、情報を埋め込む対象となる行のみである。つまり、1行目162d−1の行末の文字は“ィ”であるが、文字数としてカウント演算される。これは、規則情報281の規則5の適用を減らし、カウント演算を高速に行うためである。ただし、埋め込み規則情報281の規則5を、情報を埋め込む対象となる行以外の行に適用し、文字数をカウント演算しても良い。
【0118】
次に、文字数制御部243によって、演算結果を元に、文章の1文字目から2行目162d−2の行末までの総文字数が74以上になるように2行目162d−2の文字数を1文字増やす。つまり、162dの3行目162d−3の行頭から1文字を、2行目162d−2の行末に繰り上げる。以上の処理を行った上で、文章ファイル162dのデータを更新する。図24に、1行目にビット0、2行目にビット1に対応する情報を埋め込んだ文章ファイル162eを示す。
【0119】
透かし情報171の3ビット目の0に対応する情報を埋め込む手順は以下の通りである。まず区間検出部141によって、図24の文章ファイル162eのデータから3行目162e−3を検出する。
【0120】
次に、文字数演算部142によって、ビット0に対応する情報を埋め込んだ場合の文章の1文字目から3行目162e−3の行末までの総文字数を、埋め込み規則情報281に従って演算する。まず、埋め込み規則情報281の規則1と規則5から、3行目にビット0に対応する情報を埋め込んだ場合の該文字数は、埋め込み前の文章の一文字目から3行目162e−2の行末までの総文字数から1文字以上減少することを読み取る。次に、埋め込み前の文章の1文字目から3行目162e−3の行末までの総文字数をカウント演算し、109であることを演算する。このとき、埋め込み前の3行末の文字は“ター”であり、埋め込み規則情報281の規則5から、“ー”は埋め込み前の文字数にカウント演算されていない。また、このカウント演算の際に、埋め込み規則情報281の規則5が適用されるのは、情報を埋め込む対象となる行のみである。つまり、1行目162e−1の行末の文字は“ィ”であるが、文字数としてカウント演算される。これは、規則情報281の規則5の適用を減らし、カウント演算を高速に行うためである。ただし、埋め込み規則情報281の規則5が、情報を埋め込む対象となる行以外の行に適用し、文字数をカウント演算しても良い。次に、ビット0に対応する情報を埋め込むために、“ター”の2文字を4行目162e−4に移動する処理を行うことで1文字減少させると、3行目行末の文字は“ォー”になり、埋め込み規則情報281の規則5から、その時点で3行目行末までの総文字数は106となる。
【0121】
次に、文字数制御部243によって、演算結果を元に、文章の1文字目から3行目162e−3の行末までの総文字数が106になるように3行目162e−3の文字数を3文字減らす。つまり、162dの3行目162d−3の行末から3文字のところで改行を行う。以上の処理を行った上で、文章ファイル162eのデータを更新する。図25に、1行目にビット0、2行目にビット1、3行目の162f−3にビット0に対応する情報を埋め込んだ文章ファイル162fを示す。
【0122】
以上で透かし情報171が全て埋め込まれた。以降の行は何も情報が埋め込まれないように処理する。まず区間検出部241によって、図25の文章ファイル162fのデータから4行目162f−4を検出する。
【0123】
次に、文字数演算部242によって、何も情報を埋め込まない場合の文章の1文字目から4行目の行末までの総文字数を、埋め込み規則情報281に従って演算する。まず、埋め込み規則情報281の規則3から、埋め込み前の文章の一文字目から4行目162e−4の行末までの総文字数の増減量±0であることを読み取る。次に、埋め込み前の文章の1文字目から3行目162e−3の行末までの総文字数をカウント演算し、119であることを演算する。このとき、埋め込み前の4行末の文字は“。”であり、埋め込み規則情報281の規則5から、“。”は埋め込み前の文字数にカウント演算されていない。また、このカウント演算の際に、埋め込み規則情報281の規則5が適用されるのは、情報を埋め込む対象となる行のみである。つまり、1行目162e−1の行末の文字は“ィ”であるが、文字数としてカウント演算される。埋め込み規則情報281の規則5が、情報を埋め込む対象となる行以外の行に適用し、文字数をカウント演算しても良い。
【0124】
次に、文字数制御部243によって、文章の1文字目から4行目162f−4の行末までの総文字数が119になるように文字数を増減する。埋め込み前の文字数が119であるため、4行目162f−4の文字数は変化しない。また、文章ファイル162fも変化しない。
【0125】
また、埋め込み前の文章の一文字目から4行目162e−4の行末までの総文字数の増減量±0であることを読み取った時点で、それ以降の演算を省いても良い。演算を省くことで、処理速度が向上する。
【0126】
上記手順により生成された文章ファイル162fのデータは、出力部250から、透かし情報171が埋め込まれた文章ファイルとして出力される。
【0127】
以上の説明で用いたように、本実施形態に係る電子透かし埋め込み装置は、第一の実施形態に係る電子透かし埋め込み装置と等しいオリジナル文章ファイル、透かし情報を扱える。
【0128】
また、以上の説明において用いた埋め込み規則情報281は一例であり、本実施形態による電子透かしの埋め込みは、要旨を逸脱しない範囲で任意の埋め込み規則情報を用いることができる。
【0129】
例えば、埋め込み規則情報は、一行に含まれる文字数は英単語や数値の途中で改行が生じる文字数にしてはならないといった、文字数の調整に関する制約規則を含んでも良い。
【0130】
また、埋め込み規則情報は、文章の一文字目から各行末までの総文字数の増減量と複数の情報列の対応関係を含んでも良く、図26の埋め込み規則情報282を用いると、各行に最大2ビットの情報を埋め込むことができる。よって、本実施形態に係る埋め込み装置は、各行に複数の情報を電子透かしとして埋め込むことができる。
【0131】
[電子透かし読み出し装置]
図27は、第二の実施形態における電子透かし読み出し装置の構成を示すブロック図である。図27に示すように、本実施形態による電子透かし読み出し装置201は、透かし情報が埋め込まれていないオリジナル文章ファイルと透かし情報が埋め込まれた文章ファイルを入力する文章ファイル入力部211、文章の一文字目から各行末までの総文字数の増減量と埋め込まれる情報の対応関係を読み出し規則情報として記憶する情報記憶部230、電子透かし読み出し処理を行う読み出し処理部290及び透かし情報を出力する出力部251とから構成される。
【0132】
図28は、読み出し処理部290の構成を示すブロック図である。図28に示すように、読み出し処理部290は、文章ファイルを構成する文章から行を検出する区間検出部291と、オリジナル文章ファイルと透かし情報が埋め込まれた文章ファイルの文章の1文字目から検出された行末までの総文字数の差を求める文字数演算部292と、情報記憶部230に記憶された読み出し規則情報を参照し、文字数演算部292の結果に対応する情報を読み出す情報読み出し部293とから構成される。
【0133】
次に、電子透かし読み出し装置201を用いた電子透かし読み出し方法について説明する。図29は、電子透かし読み出し装置201の動作手順を示すフローチャートである。
【0134】
図29に示すように、文章ファイル入力部211にオリジナル文章ファイル260を入力(S201B)し、同様に透かし情報が埋め込まれた文章ファイル261を入力する(S202B)。
【0135】
入力されたオリジナル文章ファイル260のデータと文章ファイル261のデータは読み出し処理部290に渡される。読み出し処理部290は下記手順を繰り返す。
【0136】
まず区間検出部291によって、オリジナル文章ファイル260のデータから、先頭行から数えた行番号が最も若くまだ処理されていない一行を検出し、文章ファイル261のデータから、オリジナル文章ファイル260のデータから検出した行に対応する行を検出する(S203B)。
【0137】
次に、文字数演算部292によって、文章ファイル261の文章の1文字目から検出された行末までの総文字数とオリジナル文章ファイル260の文章の1文字目から検出された行末までの総文字数の差(前者から後者を引いた値)を求める(S204B)。
【0138】
そして情報読み出し部293によって、情報記憶部230に記憶された読み出し規則情報280を参照し、文字数演算部292の演算結果に対応する情報を読み出す(S205B)。読み出した情報は、情報記憶部230に一時的に記憶する(S206B)。
【0139】
上記手順の繰り返しは、区間検出部291において新しい行が検出されなくなった時点で終了する(S207B)。
【0140】
上記手順により読み出し、情報記憶部230に一時的に記憶した情報は、出力部251から、透かし情報270として出力される(S208B)。
【0141】
以下、具体的なデータを用いて電子透かし読み出し装置201の動作を詳細に説明する。
【0142】
図4のオリジナル文章ファイル162と図25の透かし情報が埋め込まれた文章ファイル162fを文章ファイル入力部211から入力する。
【0143】
入力された文章ファイル162のデータと文章ファイル162fのデータは読み出し処理部290に渡される。読み出し処理部290は、下記の手順により、文章ファイル162fのデータから透かし情報を読み出す。
【0144】
透かし情報の1ビット目を読み出す手順は以下の通りである。まず区間検出部291によって、オリジナル文章ファイル162のデータから1行目を検出し、文章ファイル162fのデータから1行目を検出する。
【0145】
次に、文字数演算部292によって、文章ファイル162fの文章の1文字目から1行末までの総文字数とオリジナル文章ファイル162の文章の1文字目から1行末までの総文字数の差(前者から後者を引いた値)を求める。この場合の該文字数差(増減量)は−2である。
【0146】
そして情報読み出し部293によって、情報記憶部230に記憶された図22の読み出し規則情報281を参照し、増減量−2に対応するビット0を読み出す。読み出したビット0は情報記憶部230に一時的に記憶する。
【0147】
透かし情報の2ビット目を読み出す手順は以下の通りである。まず区間検出部291によって、オリジナル文章ファイル162のデータから2行目を検出し、文章ファイル162fのデータから2行目を検出する。
【0148】
次に、文字数演算部292によって、文章ファイル162fの文章の1文字目から2行末までの総文字数とオリジナル文章ファイル162の文章の1文字目から2行末までの総文字数の差(前者から後者を引いた値)を求める。この場合の該文字数差(増減量)は+1である。
【0149】
そして情報読み出し部293によって、情報記憶部230に記憶された図22の読み出し規則情報281を参照し、増減量+1に対応するビット1を読み出す。読み出したビット1は情報記憶部230に一時的に記憶する。
【0150】
透かし情報の3ビット目を読み出す手順は以下の通りである。まず区間検出部291によって、オリジナル文章ファイル162のデータから3行目を検出し、文章ファイル162fのデータから3行目を検出する。
【0151】
次に、文字数演算部292によって、文章ファイル162fの文章の1文字目から3行末までの総文字数とオリジナル文章ファイル162の文章の1文字目から3行末までの総文字数の差(前者から後者を引いた値)を求める。この場合の該文字数差(増減量)は−3である。
【0152】
そして情報読み出し部293によって、情報記憶部230に記憶された図22の読み出し規則情報281を参照し、増減量−3に対応するビット0を読み出す。読み出したビット0は情報記憶部230に一時的に記憶する。
【0153】
透かし情報の4ビット目を読み出す手順は以下の通りである。まず区間検出部291によって、オリジナル文章ファイル162のデータから4行目を検出し、文章ファイル162fのデータから4行目を検出する。
【0154】
次に、文字数演算部292によって、文章ファイル162fの文章の1文字目から4行末までの総文字数とオリジナル文章ファイル162の文章の1文字目から4行末までの総文字数の差(前者から後者を引いた値)を求める。この場合の該文字数差(増減量)は0である。
【0155】
そして情報読み出し部293によって、情報記憶部230に記憶された図22の読み出し規則情報281を参照し、何も情報が埋め込まれていないことを意味するNULLを読み出す。
以上で文章ファイル162fの全ての行に対する読み出し処理を終了する。
【0156】
上記手順により読み出し、情報記憶部230に一時的に記憶した情報は、出力部251から、図30の透かし情報271として出力される。
【0157】
読み出した透かし情報271は、本実施形態における電子透かし埋め込み装置によって162fに埋め込まれた透かし情報171に等しい。このように、本実施形態における電子透かし読み出し装置は、本実施形態における電子透かし埋め込み装置で文章ファイルに埋め込んだ透かし情報を読み出すことができる。
【0158】
また、第一の実施形態に係る埋め込み装置によって文章ファイルに埋め込まれた電子透かしと同様に、本実施形態に係る埋め込み装置によって文章ファイルに埋め込まれた電子透かしは、その文章ファイルを印刷し、スキャナで読み取った後に細線化・太線化・歪曲等の画像処理を適用しても除去されない。そのため上記画像処理を施してコピーされた文書からも、埋め込まれた電子透かしの読み出しが可能である。
【符号の説明】
【0159】
100、200 電子透かし埋め込み装置
101、201 電子透かし読み出し装置
110、111、210、211 文章ファイル入力部
120、220 透かし情報入力部
130、230 情報記憶部
140、240 埋め込み処理部
141、191、241、291 区間検出部
142、192、242、292 文字数演算部
143、243 文字数制御部
150、151、250、251 出力部
160、162、260 オリジナル文章ファイル
161、162a、162b、162c、162d、162e、162f、162g、162h、162i、162j、261 透かし埋め込み文章ファイル
170、171、172、270、271 透かし情報
180、181、182、280、281、282 埋め込み(読み出し)規則
190、290 読み出し処理部
193、293 情報読み出し部
【特許請求の範囲】
【請求項1】
複数の行から構成される文章ファイルに透かし情報を埋め込む電子透かし埋め込み装置であって、
前記文章ファイルを入力する文章ファイル入力部と、
前記文章ファイルに埋め込む前記透かし情報を入力する透かし情報入力部と、
前記透かし情報に対応するコードを記憶する情報記憶部と、
前記文章ファイルから前記コードを埋め込む区間を検出する区間検出部と、前記コードに基づき、前記区間の文字数の増減数を算出する文字数演算部と、前記算出された前記文字数の増減数に基づき、前記区間の文字数を増減させる文字数制御部とを有し、前記文章ファイルに前記コードを埋め込む透かし情報埋め込み処理部と
を備えることを特徴とする電子透かし埋め込み装置。
【請求項2】
前記文字数演算部は、前記区間の全体の前記文字数が前記コードと対応するように前記区間の文字数の増減数を算出する請求項1に記載の電子透かし埋め込み装置。
【請求項3】
前記文字数演算部は、前記区間の前記文字数の増減数が前記コードと対応するように前記区間の文字数の増減数を算出する請求項1に記載の電子透かし埋め込み装置。
【請求項4】
前記文字数制御部は、改行によって前記文字数を増減させることを特徴とする請求項1〜3のいずれか一項に記載の電子透かし埋め込み装置。
【請求項5】
前記文字数制御部は、前記区間の文字間隔を増減させることによって前記文字数を増減させることを特徴とする請求項1〜3のいずれか一項に記載の電子透かし埋め込み装置。
【請求項6】
前記区間は、前記行の行頭から行末であることを特徴とする請求項1〜5のいずれか一項に記載の電子透かし埋め込み装置。
【請求項7】
前記区間は、特徴文字の間の文章であることを特徴とする請求項1〜5のいずれか一項に記載の電子透かし埋め込み装置。
【請求項8】
前記情報記憶部は、前記透かし情報を複数の前記コードに対応させて記憶することを特徴とする請求項1〜7のいずれか一項に記載の電子透かし埋め込み装置。
【請求項9】
複数の行から構成される文章ファイルに埋め込まれた透かし情報を読み出す電子透かし読み出し装置であって、
前記透かし情報がコードに変換され、コードとして埋め込まれた透かし情報文章ファイルを入力する文章ファイル入力部と、
前記透かし情報に対応するコードを記憶する情報記憶部と、
前記透かし情報文章ファイルに埋め込まれた電子透かし情報を読み出す情報読み出し処理部とを有し、
前記情報読み出し処理部は、
前記透かし情報文章ファイルから前記コードを読み出す読み出し区間を検出する区間検出部と、
検出された前記読み出し区間の文字数を数える文字数演算部と、
前記読み出し区間の前記文字数に対応する前記コードを特定し、前記透かし情報を読み出す情報読み出し部とを有することを特徴とする電子透かし読み出し装置。
【請求項10】
複数の行から構成される文章ファイルに埋め込まれた透かし情報を読み出す電子透かし読み出し装置であって、
前記透かし情報がコードに変換されコードとして埋め込まれた透かし情報文章ファイルと、前記透かし情報が埋め込まれていないオリジナル文章ファイルとを入力する文章ファイル入力部と、
前記透かし情報に対応するコードを記憶する情報記憶部と、
前記透かし情報文章ファイルに埋め込まれた電子透かし情報を読み出す情報読み出し処理部とを有し、
前記情報読み出し処理部は、
前記透かし情報文章ファイルから前記コードを読み出す読み出し区間を検出する区間検出部と、
前記オリジナル文章ファイルから前記読み出し区間に対応する対応区間を検出する対応区間検出部と、
検出された前記読み出し区間と前記対応区間との文字数を数える文字数演算部と、
前記読み出し区間と前記対応区間との前記文字数の差に対応する前記コードを特定し、前記透かし情報を読み出す情報読み出し部とを有することを特徴とする電子透かし読み出し装置。
【請求項1】
複数の行から構成される文章ファイルに透かし情報を埋め込む電子透かし埋め込み装置であって、
前記文章ファイルを入力する文章ファイル入力部と、
前記文章ファイルに埋め込む前記透かし情報を入力する透かし情報入力部と、
前記透かし情報に対応するコードを記憶する情報記憶部と、
前記文章ファイルから前記コードを埋め込む区間を検出する区間検出部と、前記コードに基づき、前記区間の文字数の増減数を算出する文字数演算部と、前記算出された前記文字数の増減数に基づき、前記区間の文字数を増減させる文字数制御部とを有し、前記文章ファイルに前記コードを埋め込む透かし情報埋め込み処理部と
を備えることを特徴とする電子透かし埋め込み装置。
【請求項2】
前記文字数演算部は、前記区間の全体の前記文字数が前記コードと対応するように前記区間の文字数の増減数を算出する請求項1に記載の電子透かし埋め込み装置。
【請求項3】
前記文字数演算部は、前記区間の前記文字数の増減数が前記コードと対応するように前記区間の文字数の増減数を算出する請求項1に記載の電子透かし埋め込み装置。
【請求項4】
前記文字数制御部は、改行によって前記文字数を増減させることを特徴とする請求項1〜3のいずれか一項に記載の電子透かし埋め込み装置。
【請求項5】
前記文字数制御部は、前記区間の文字間隔を増減させることによって前記文字数を増減させることを特徴とする請求項1〜3のいずれか一項に記載の電子透かし埋め込み装置。
【請求項6】
前記区間は、前記行の行頭から行末であることを特徴とする請求項1〜5のいずれか一項に記載の電子透かし埋め込み装置。
【請求項7】
前記区間は、特徴文字の間の文章であることを特徴とする請求項1〜5のいずれか一項に記載の電子透かし埋め込み装置。
【請求項8】
前記情報記憶部は、前記透かし情報を複数の前記コードに対応させて記憶することを特徴とする請求項1〜7のいずれか一項に記載の電子透かし埋め込み装置。
【請求項9】
複数の行から構成される文章ファイルに埋め込まれた透かし情報を読み出す電子透かし読み出し装置であって、
前記透かし情報がコードに変換され、コードとして埋め込まれた透かし情報文章ファイルを入力する文章ファイル入力部と、
前記透かし情報に対応するコードを記憶する情報記憶部と、
前記透かし情報文章ファイルに埋め込まれた電子透かし情報を読み出す情報読み出し処理部とを有し、
前記情報読み出し処理部は、
前記透かし情報文章ファイルから前記コードを読み出す読み出し区間を検出する区間検出部と、
検出された前記読み出し区間の文字数を数える文字数演算部と、
前記読み出し区間の前記文字数に対応する前記コードを特定し、前記透かし情報を読み出す情報読み出し部とを有することを特徴とする電子透かし読み出し装置。
【請求項10】
複数の行から構成される文章ファイルに埋め込まれた透かし情報を読み出す電子透かし読み出し装置であって、
前記透かし情報がコードに変換されコードとして埋め込まれた透かし情報文章ファイルと、前記透かし情報が埋め込まれていないオリジナル文章ファイルとを入力する文章ファイル入力部と、
前記透かし情報に対応するコードを記憶する情報記憶部と、
前記透かし情報文章ファイルに埋め込まれた電子透かし情報を読み出す情報読み出し処理部とを有し、
前記情報読み出し処理部は、
前記透かし情報文章ファイルから前記コードを読み出す読み出し区間を検出する区間検出部と、
前記オリジナル文章ファイルから前記読み出し区間に対応する対応区間を検出する対応区間検出部と、
検出された前記読み出し区間と前記対応区間との文字数を数える文字数演算部と、
前記読み出し区間と前記対応区間との前記文字数の差に対応する前記コードを特定し、前記透かし情報を読み出す情報読み出し部とを有することを特徴とする電子透かし読み出し装置。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図23】
【図24】
【図25】
【図26】
【図27】
【図28】
【図29】
【図30】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図23】
【図24】
【図25】
【図26】
【図27】
【図28】
【図29】
【図30】
【公開番号】特開2012−114725(P2012−114725A)
【公開日】平成24年6月14日(2012.6.14)
【国際特許分類】
【出願番号】特願2010−262636(P2010−262636)
【出願日】平成22年11月25日(2010.11.25)
【出願人】(000002325)セイコーインスツル株式会社 (3,629)
【Fターム(参考)】
【公開日】平成24年6月14日(2012.6.14)
【国際特許分類】
【出願日】平成22年11月25日(2010.11.25)
【出願人】(000002325)セイコーインスツル株式会社 (3,629)
【Fターム(参考)】
[ Back to top ]