(57)【要約】秘密情報入り文書から正確に秘密情報を検出することの可能な透かし情報検出方法を提供する。入力画像全面にフィルタリング処理を施し（Ｓ３１０），信号位置探索テンプレートを用いて，フィルタ出力値の総和が最大になるように，信号の位置を求める（Ｓ３２０）。そして，その後に信号境界を決定する（Ｓ３４０）。用紙のゆがみなどにより画像が伸縮していたりする場合にでも，信号位置を正しく検出でき，秘密情報入り文書から正確に秘密情報を検出することができる。
2004098171.tif 000002
【特許請求の範囲】
【請求項１】
ドットの配列によって波の方向及び／又は波長を変化させたドットパターンを複数用意し，１つの前記ドットパターンに対して１つのシンボルを与え，前記ドットパターンを組み合わせて配置することにより，秘密情報が埋め込まれた印刷文書を，入力画像として読み込む画像入力工程と，
前記入力画像から前記ドットパターンを検出するため，前記ドットパターンと同じ波の方向と波長を持つ検出用フィルタを前記ドットパターンと同じ種類だけ用意して前記入力画像のフィルタリングを行い，前記入力画像の各画素において，すべての検出用フィルタのうち出力値が最大になる検出用フィルタの種類に関するフィルタ種類行列と該検出用フィルタの出力値に関するフィルタ出力値行列とを得るフィルタリング工程と，
前記フィルタ出力値行列に対して，所定の大きさで分割した各領域において，位置探索テンプレートを移動させながら，前記位置探索テンプレートの格子点に対応する前記検出用フィルタの出力値の総和が最大になるように前記ドットパターンの位置を決定する位置探索工程と，
前記位置探索工程で決定した位置に対応する，前記フィルタ種類行列における前記検出用フィルタの種類からその位置に埋め込まれている前記ドットパターンのシンボルを決定し，シンボル行列を得るシンボル決定工程と，
前記印刷文書にあらかじめ埋め込まれた所定の前記ドットパターンに基づいて，前記ドットパターンが埋め込まれた領域の境界を決定する境界決定工程と，
前記境界内部に埋め込まれた前記ドットパターンに基づいて，前記印刷文書に埋め込まれた前記秘密情報を復号する情報復号工程と，
を含むことを特徴とする，透かし情報検出方法。
【請求項２】
前記境界決定工程において，
前記シンボル行列の行および列について，特定のドットパターンが集中して埋め込まれた行および列を，前記秘密情報が埋め込まれた領域の境界として決定することを特徴とする，請求項１に記載の透かし情報検出方法。
【請求項３】
前記位置探索工程は，
前記ドットパターンを精度良く検出するための前記位置探索テンプレートの初期位置を探索する初期位置探索工程を含むことを特徴とする，請求項１に記載の透かし情報検出方法。
【請求項４】
前記初期位置探索工程において，前記入力画像の略中央位置を前記位置探索テンプレートの初期位置とすることを特徴とする，請求項３に記載の透かし情報検出方法。
【請求項５】
前記初期位置探索工程において，前記入力画像の輝度値が小さい画素の分布が最も疎である位置を前記位置探索テンプレートの初期位置とすることを特徴とする，請求項３に記載の透かし情報検出方法。
【請求項６】
位置探索工程において，
前記位置探索テンプレートで前記ドットパターンの位置を探索する際に，決定する前記ドットパターンの位置の前記検出用フィルタの出力値だけでなく，周囲の前記検出用フィルタの出力値も参照して，前記ドットパターンの位置を決定することを特徴とする，請求項１に記載の透かし情報検出方法。
【請求項７】
前記印刷文書に埋め込まれたドットパターンの数に関する情報を前記入力画像から復号するドットパターン数復号工程と，
前記入力画像から検出されたドットパターンの数と，前記ドットパターン数復号工程で復号されたドットパターンの数とが一致しない場合に，前記ドットパターンの位置を修正する位置修正工程と，
をさらに含むことを特徴とする，請求項１に記載の透かし情報検出方法。
【請求項８】
前記印刷文書の特徴量を抽出する工程と，前記入力画像の特徴量を計算する工程と，前記印刷文書の特徴量と前記入力画像の特徴量とを比較する工程と，を含む改ざん検出工程をさらに含むことを特徴とする，請求項１に記載の透かし情報検出方法。
【請求項９】
前記改ざん検出工程は，
前記入力画像を２値画像化する工程をさらに含み，前記特徴量を計算する際に，前記印刷文書に埋め込まれた各領域単位の２値化パラメータに応じて，前記領域単位で入力画像を２値化することを特徴とする，請求項８に記載の透かし情報検出方法。
【請求項１０】
前記境界決定工程において，
前記シンボル行列から探索することができる前記ドットパターンをあらかじめ前記秘密情報の埋め込み手段と検出手段との間で決めておき，該ドットパターンに基づいて境界を決定することを特徴とする，請求項１に記載の透かし情報検出方法。
【発明の詳細な説明】
【技術分野】  本発明は，文書画像に対して文字以外の形式で秘密情報を付加する方法と，印刷された秘密情報入り文書から秘密情報を検出する技術に関するものである。
【背景技術】  画像や文書データなどにコピー・偽造防止のための情報や機密情報を人の目には見えない形で埋め込む「電子透かし」は，保存やデータの受け渡しがすべて電子媒体上で行われることを前提としており，透かしによって埋め込まれている情報の劣化や消失がないため確実に情報検出を行うことができる。これと同様に，紙媒体に印刷された文書に対しても，文書が不正に改ざんされたりコピーされることを防ぐために，文字以外の視覚的に目障りではない形式でかつ容易に改ざんが不可能であるような秘密情報を印刷文書に埋め込む方法が必要となっている。
印刷物として最も広く利用される白黒の二値の文書に対する情報埋め込み方法としては，以下のような技術が知られている。
［特許文献１］特開２００１−７８００６号公報「白黒２値文書画像への透かし情報埋め込み・検出方法及びその装置」
任意の文字列を囲む最小矩形をいくつかのブロックに分割し，それらを２つのグループ（グループ１，グループ２）に分ける（グループの数は３つ以上でも良い）。例えば信号が１の場合はグループ１のブロック中の特徴量を増やしグループ２の各ブロック中の特徴量を減らす。信号が０の場合は逆の操作を行う。ブロック中の特徴量は，文字領域の画素数や文字の太さ，ブロックを垂直にスキャンして最初に文字領域にぶつかる点までの距離などである。
［特許文献２］特開２００１−５３９５４号公報「情報埋め込み装置，情報読み出し装置，電子透かしシステム，情報埋め込み方法，情報読み出し方法及び記録媒体」
１つの文字を囲む最小矩形の幅と高さをその文字に対する特徴量として定め，２つ以上の文字間での特徴量の大小関係の分類パターンによりシンボルを表わすものとする。例えば３つの文字からは６つの特徴量が定義でき，これらの大小関係のパターンの組合わせを列挙し，これらの組合わせを２つのグルーブに分類し，それぞれにシンボルを与える。埋め込む情報が“０”であって，これを表わすために選択された文字の特徴量の組合わせパターンが“１”であった場合，６つの特徴量のうちいずれかを文字領域を膨らませるなどして変化させる。変化させるパターンは変化量が最小となるように選択する。
［特許文献３］特開平９−１７９４９４号公報「機密情報記録方法」
４００ｄｐｉ以上のプリンタで印刷されることを想定する。情報を数値化し，基準点マークと位置判別マークとの距離（ドット数）により情報の表現を行う。
［特許文献４］特開平１０−２００７４３号公報「文書処理装置」
万線スクリーン（細かい平行線で構成された特殊スクリーン）のスクリーン線を後方に移動させるかどうかにより情報を表現する。
しかしながら，上記特許文献１，２では，文書画像の文字を構成する画素や文字間隔・行間隔に対する変更を伴うためフォントやレイアウトの変更が発生する。加えて，上記特許文献３，４においても，検出時には，スキャナ等の入力機器から読み取った入力画像の１画素単位の精密な検出処理が必要となるため，紙面の汚れや印刷時や読み取り時に雑音が付加された場合などには情報検出精度に大きな影響を与える。
このように，上記特許文献１〜４では，印刷された文書をスキャナなどの入力装置によって再びコンピュータに入力して埋め込まれた秘密情報を検出する場合に，印刷書類の汚れや入力の際に発生する回転などの画像変形が原因で，入力画像に多くの雑音成分が含まれるため，正確に秘密情報を取り出すことが困難であるという問題点があった。
その他にも，特許文献３，４に関しては情報検出精度に大きな影響を受ける場合として，入力機器から読み込む際に印刷文書が傾いていた場合や，印刷時あるいは画像入力時における紙のゆがみ等による局所的な画像の伸縮などが挙げられる。
【発明の開示】
本発明は，従来の透かし情報検出方法が有する上記問題点に鑑みてなされたものであり，本発明の目的は，秘密情報入り文書から正確に秘密情報を検出することの可能な，新規かつ改良された透かし情報検出方法を提供することである。
上記課題を解決するため，本発明によれば，以下の各工程を含むことを特徴とする透かし情報検出方法が提供される。
（１）ドットの配列によって波の方向及び／又は波長を変化させたドットパターンを複数用意し，１つのドットパターンに対して１つのシンボルを与え，ドットパターンを組み合わせて配置することにより，秘密情報が埋め込まれた印刷文書を，入力画像として読み込む画像入力工程
（２）入力画像からドットパターンを検出するため，ドットパターンと同じ波の方向と波長を持つ検出用フィルタをドットパターンと同じ種類だけ用意して入力画像のフィルタリングを行い，入力画像の各画素において，すべての検出用フィルタのうち出力値が最大になる検出用フィルタの種類に関するフィルタ種類行列と該検出用フィルタの出力値に関するフィルタ出力値行列とを得るフィルタリング工程
（３）フィルタ出力値行列に対して，所定の大きさで分割した各領域において，位置探索テンプレートを移動させながら，位置探索テンプレートの格子点に対応する検出用フィルタの出力値の総和が最大になるようにドットパターンの位置を決定する位置探索工程
（４）位置探索工程で決定した位置に対応する，フィルタ種類行列における検出用フィルタの種類からその位置に埋め込まれているドットパターンのシンボルを決定し，シンボル行列を得るシンボル決定工程
（５）印刷文書にあらかじめ埋め込まれた所定のドットパターンに基づいて，ドットパターンが埋め込まれた領域の境界を決定する境界決定工程
（６）境界内部に埋め込まれたドットパターンに基づいて，印刷文書に埋め込まれた秘密情報を復号する情報復号工程
かかる方法によれば，入力画像全面にフィルタリング処理を施し，信号位置探索テンプレートを用いて，フィルタ出力値の総和が最大になるように，ドットパターンの位置を求めることができるので，用紙のゆがみなどにより画像が伸縮していたりする場合にでも，ドットパターンの位置を正しく検出でき，印刷文書から正確に秘密情報を検出することができる。
なおここで，「ドットパターン」には，
（１）所定の幅と高さからなる矩形を１つの信号の単位とした「信号ユニット」
（２）信号ユニットに具体的なシンボルを割り当てた「シンボルユニット」
（３）シンボルユニットの繰り返し数と配置のパターンに対して特定のシンボルを与えた「ユニットパターン」
など様々な概念を含むものである。
境界決定工程において，シンボル行列の行および列について，特定のドットパターンが集中して埋め込まれた行および列を，秘密情報が埋め込まれた領域の境界として決定することが可能である。秘密情報が埋め込まれた領域の境界に特定のドットパターンを集中して埋め込んでおくことにより，容易にその境界を検出することができるようになる。
位置探索工程は，ドットパターンを精度良く検出するための位置探索テンプレートの初期位置を探索する初期位置探索工程を含むことが可能である。例えば，入力画像の略中央位置を信号位置探索テンプレートの初期位置とすることが可能である。入力画像の略中央位置であれば，入力画像のゆがみなどによる影響が少ないため，ドットパターンを精度良く検出することが可能である。あるいは，入力画像の文字などが含まれている領域を避けるため，文字に相当する比較的暗い画素（輝度値が小さい画素）の分布が最も疎である位置を位置探索テンプレートの初期位置とすることも可能である。
拡大信号位置探索工程において，位置探索テンプレートでドットパターンの位置を探索する際に，決定するドットパターンの位置の検出用フィルタの出力値だけでなく，周囲の検出用フィルタの出力値も参照して，ドットパターンの位置を決定することが可能である。かかる方法によれば，例えば，決定するドットパターンの位置に入力画像の文字領域が含まれる場合のように，検出用フィルタの出力値が十分に得られない場合においても，適切にドットパターンの位置を決定することが可能である。
印刷文書に埋め込まれたドットパターンの数に関する情報を入力画像から復号するドットパターン数復号工程と，入力画像から検出されたドットパターンの数と，ドットパターン数復号工程で復号されたドットパターンの数とが一致しない場合に，ドットパターンの位置を修正する位置修正工程と，をさらに含むことが可能である。かかる方法によれば，ドットパターンの数に関する情報を入力画像から検出し，その情報を参照することで，位置検索テンプレートによる位置探索に誤りがあっても修正することができる。このようにして，より正確にドットパターンの位置を検出でき，印刷文書から正確に秘密情報を検出することができる。
印刷文書の特徴量を抽出する工程と，入力画像の特徴量を計算する工程と，印刷文書の特徴量と入力画像の特徴量とを比較する工程と，を含む改ざん検出工程をさらに含むことが可能である。かかる方法によれば，上記効果に加えて，印刷文書の内容が改ざんされていた場合はそれを検出することがきる。
改ざん検出工程は，入力画像を２値画像化する工程をさらに含み，特徴量を計算する際に，印刷文書に埋め込まれた各領域単位の２値化パラメータに応じて，領域単位で入力画像を２値化することが可能である。かかる方法によれば，入力画像のある領域に大幅な改ざんが加えられ，その領域の黒画素数が元の文書画像の黒画素数と大きく異なり，適正な２値化閾値の範囲にない場合でも，周辺領域の２値化閾値の情報を参照することで，適正な２値化閾値を設定することができる。
境界決定工程において，シンボル行列から探索することができるドットパターンをあらかじめ秘密情報の埋め込み手段と検出手段との間で決めておき，該ドットパターンに基づいて境界を決定するようにしてもよい。
【図面の簡単な説明】  図１は，透かし情報埋め込み装置及び透かし情報検出装置の構成を示す説明図である。
図２は，透かし画像形成部１２の処理の流れを示す流れ図である。
図３は，透かし信号の一例を示す説明図であり，（１）はユニットＡを，（２）はユニットＢを示している。
図４は，図３（１）の画素値の変化をａｒｃｔａｎ（１／３）の方向から見た断面図である。
図５は，透かし信号の一例を示す説明図であり，（３）はユニットＣを，（４）はユニットＤを，（５）はユニットＥを示している。
図６は，背景画像の説明図であり，（１）はユニットＥを背景ユニットと定義し，これを隙間なく並べた透かし画像の背景とした場合を示し，（２）は（１）の背景画像の中にユニットＡを埋め込んだ一例を示し，（３）は（１）の背景画像の中にユニットＢを埋め込んだ一例を示している。
図７は，透かし画像へのシンボル埋め込み方法の一例を示す説明図である。
図８は，秘密情報を透かし画像に埋め込む方法について示した流れ図である。
図９は，秘密情報を透かし画像に埋め込む方法の一例を示す説明図である。
図１０は，透かし入り文書画像の一例を示す説明図である。
図１１は，図１０の一部を拡大して示した説明図である。
図１２は，第１の実施の形態における透かし検出部３２の処理の流れを示す流れ図である。
図１３は，第１の実施の形態における信号検出フィルタリング工程（ステップＳ３１０）の説明図である。
図１４は，第１の実施の形態における信号位置探索工程（ステップＳ３２０）の説明図である。
図１５は，第１の実施の形態における信号境界決定工程（ステップＳ３４０）の説明図である。
図１６は，情報復元工程（ステップＳ３０５）の一例を示す説明図である。
図１７は，データ符号の復元方法の処理の流れを示す説明図である。
図１８は，データ符号の復元方法の一例を示す説明図である。
図１９は，データ符号の復元方法の一例を示す説明図である。
図２０は，第２の実施の形態における透かし検出部３２の処理の流れを示す流れ図である。
図２１は，第２の実施の形態における逐次信号位置探索工程（ステップＳ３６０）の説明図である。
図２２は，第３の実施の形態における透かし検出部３２の処理の流れを示す流れ図である。
図２３は，第３の実施の形態における拡大信号位置探索工程（ステップＳ３７０）の説明図である。
図２４は，第４の実施の形態における透かし検出部３２の処理の流れを示す流れ図である。
図２５は，第４の実施の形態における信号位置修正工程（ステップＳ３８０）の説明図である。
図２６は，第５の実施の形態における透かし情報埋め込み装置及び透かし情報検出装置の構成を示す説明図である。
図２７は，改ざん判定部３３の処理の流れを示す流れ図である。
図２８は，特徴比較工程（ステップＳ４５０）の説明図である。
図２９は，特徴比較工程（ステップＳ４５０）の説明図である。
【発明を実施するための最良の形態】  以下に添付図面を参照しながら，本発明にかかる透かし情報検出方法の好適な実施の形態について詳細に説明する。なお，本明細書及び図面において，実質的に同一の機能構成を有する構成要素については，同一の符号を付することにより重複説明を省略する。
（第１の実施の形態）
図１は，本実施の形態にかかる透かし情報埋め込み装置及び透かし情報検出装置の構成を示す説明図である。
（透かし情報埋め込み装置１０）
透かし情報埋め込み装置１０は，文書データと文書に埋め込む秘密情報をもとに文書画像を構成し，紙媒体に印刷を行う装置である。透かし情報埋め込み装置１０は，図１に示したように，文書画像形成部１１と，透かし画像形成部１２と，透かし入り文書画像合成部１３と，出力デバイス１４とにより構成されている。文書データ１５は文書作成ツール等により作成されたデータである。秘密情報１６は紙媒体に文字以外の形式で埋め込む情報（文字列や画像，音声データ）などである。
文書画像形成部１１では，文書データ１５を紙面に印刷した状態の画像が作成される。具体的には，文書画像中の白画素領域は何も印刷されない部分であり，黒画素領域は黒の塗料が塗布される部分である。なお，本実施の形態では，白い紙面に黒のインク（単色）で印刷を行うことを前提として説明するが，本発明はこれに限定されず，カラー（多色）で印刷を行う場合であっても，同様に本発明を適用可能である。
文書画像形成部１１は必ずしも必要ではない。この場合，文書データ１５の代わりに文書画像を用い，これを透かし画像形成部１２への入力とする。
透かし画像形成部１２は，秘密情報１６をディジタル化して数値に変換したものをＮ元符号化（Ｎは２以上）し，符号語の各シンボルをあらかじめ用意した信号に割り当てる。信号は任意の大きさの矩形領域中にドットを配列することにより任意の方向と波長を持つ波を表現し，波の方向や波長に対してシンボルを割り当てたものである。透かし画像は，これらの信号がある規則に従って画像上に配置されたものである。
透かし入り文書画像合成部１３は，文書画像と透かし画像を重ね合わせて透かし入りの文書画像を作成する。また，出力デバイス１４は，プリンタなどの出力装置であり，透かし入り文書画像を紙媒体に印刷する。したがって，文書画像形成部１１，透かし画像形成部１２，透かし入り文書画像合成部１３はプリンタドライバの中の一つの機能として実現されていても良い。
印刷文書２０は，元の文書データ１５に対して秘密情報１６を埋め込んで印刷されたものであり，物理的に保管・管理される。
（透かし情報検出装置３０）
透かし情報検出装置３０は，紙媒体に印刷されている文書を画像として取り込み，埋め込まれている秘密情報１６を復元する装置である。透かし情報検出装置３０は，図１に示したように，入力デバイス３１と，透かし検出部３２とにより構成されている。
入力デバイス３１は，スキャナなどの入力装置であり，紙に印刷された文書２０を多値階調のグレイ画像として計算機に取り込む。また，透かし検出部３２は，入力画像に対してフィルタリング処理を行い，埋め込まれた信号を検出する。検出された信号からシンボルを復元し，埋め込まれた秘密情報１６を取り出す。
以上のように構成される透かし情報埋め込み装置１０及び透かし情報検出装置３０の動作について説明する。まず，図１〜図１１を参照しながら，透かし情報埋め込み装置１０の動作について説明する。
（文書画像形成部１１）
文書データ１５はフォント情報やレイアウト情報を含むデータであり，ワープロソフト等で作成されるものとする。文書画像形成部１１は，この文書データ１５を基に，文書が紙に印刷された状態の画像をページごとに作成する。この文書画像は白黒の二値画像であり，画像上で白い画素（値が１の画素）は背景であり，黒い画素（値が０の画素）は文字領域（インクが塗布される領域）であるものとする。
（透かし画像形成部１２）
秘密情報１６は文字，音声，画像などの各種データであり，透かし画像形成部ではこの情報から文書画像の背景として重ね合わせる透かし画像を作成する。
図２は，透かし画像形成部１２の処理の流れを示す流れ図である。
まず，秘密情報１６をＮ元符号に変換する（ステップＳ１０１）。Ｎは任意であるが，本実施の形態では説明を容易にするためＮ＝２とする。従って，ステップＳ１０１で生成される符号は２元符号であり，０と１のビット列で表現されるものとする。このステップＳ１０１ではデータをそのまま符号化しても良いし，データを暗号化したものを符号化しても良い。
次いで，符号語の各シンボルに対して透かし信号を割り当てる（ステップＳ１０２）。透かし信号とはドット（黒画素）の配列によって任意の波長と方向を持つ波を表現したものである。透かし信号については，さらに後述する。
さらに，符号化されたデータのビット列に対応する信号ユニットを透かし画像上に配置する（ステップＳ１０３）。
上記ステップＳ１０２において，符号語の各シンボルに対して割り当てる透かし信号について説明する。図３は透かし信号の一例を示す説明図である。
透かし信号の幅と高さをそれぞれＳｗ，Ｓｈとする。ＳｗとＳｈは異なっていても良いが，本実施の形態では説明を容易にするためＳｗ＝Ｓｈとする。長さの単位は画素数であり，図３の例ではＳｗ＝Ｓｈ＝１２である。これらの信号が紙面に印刷されたときの大きさは，透かし画像の解像度に依存しており，例えば透かし画像が６００ｄｐｉ（ｄｏｔ  ｐｅｒ  ｉｎｃｈ：解像度の単位であり，１インチ当たりのドット数）の画像であるとしたならば，図３の透かし信号の幅と高さは，印刷文書上で１２／６００＝０．０２（インチ）となる。
以下，幅と高さがＳｗ，Ｓｈの矩形を１つの信号の単位として「信号ユニット」と称する。図３（１）は，ドット間の距離が水平軸に対してａｒｃｔａｎ（３）（ａｒｃｔａｎはｔａｎの逆関数）の方向に密であり，波の伝搬方向はａｒｃｔａｎ（−１／３）である。以下，この信号ユニットをユニットＡと称する。図３（２）はドット間の距離が水平軸に対してａｒｃｔａｎ（−３）の方向に密であり，波の伝搬方向はａｒｃｔａｎ（１／３）である。以下，この信号ユニットをユニットＢと称する。
図４は，図３（１）の画素値の変化をａｒｃｔａｎ（１／３）の方向から見た断面図である。図４において，ドットが配列されている部分が波の最小値の腹（振幅が最大となる点）となり，ドットが配列されていない部分は波の最大値の腹となっている。
また，ドットが密に配列されている領域はそれぞれ１ユニットの中に２つ存在するため，この例では１ユニットあたりの周波数は２となる。波の伝播方向はドットが密に配列されている方向に垂直となるため，ユニットＡの波は水平方向に対してａｒｃｔａｎ（−１／３），ユニットＢの波はａｒｃｔａｎ（１／３）となる。なお，ａｒｃｔａｎ（ａ）の方向とａｃｒｔａｎ（ｂ）の方向が垂直のとき，ａ×ｂ＝−１である。
本実施の形態では，ユニットＡで表現される透かし信号にシンボル０を割り当て，ユニットＢで表現される透かし信号にシンボル１を割り当てる。また，これらをシンボルユニットと称する。
透かし信号には図３（１），（２）で示されるもの以外にも，例えば図５（３）〜（５）で示されるようなドット配列が考えられる。図５（３）は，ドット間の距離が水平軸に対してａｒｃｔａｎ（１／３）の方向に密であり，波の伝搬方向はａｒｃｔａｎ（−３）である。以下，この信号ユニットをユニットＣと称する。
図５（４）は，ドット間の距離が水平軸に対してａｒｃｔａｎ（−１／３）の方向に密であり，波の伝搬方向はａｒｃｔａｎ（３）である。以下，この信号ユニットをユニットＤと称する。図５（５）は，ドット間の距離が水平軸に対してａｒｃｔａｎ（１）の方向に密であり，波の伝搬方向はａｒｃｔａｎ（１）である。なお，図５（５）は，ドット間の距離が水平軸に対してａｒｃｔａｎ（１）の方向に密であり，波の伝搬方向はａｒｃｔａｎ（１）であると考えることもできる。以下，この信号ユニットをユニットＥと称する。
このようにして，先に割り当てた組み合わせ以外にも，シンボル０とシンボル１を割り当てるユニットの組合わせのパターンが複数考えられるため，どの透かし信号がどのシンボルに割り当てられているかを秘密にして第三者（不正者）が埋め込まれた信号を簡単に解読できないようにすることもできる。
さらに，図２に示したステップＳ１０２で，秘密情報を４元符号で符号化した場合には，例えば，ユニットＡに符号語のシンボル０を，ユニットＢにシンボル１を，ユニットＣにシンボル２を，ユニットＤにシンボル３を割り当てることも可能である。
図３，図５に示した透かし信号の一例においては，１ユニット中のドットの数をすべて等しくしているため，これらのユニットを隙間なく並べることにより，透かし画像の見かけの濃淡が均一となる。したがって印刷された紙面上では，単一の濃度を持つグレー画像が背景として埋め込まれているように見える。
このような効果を出すために，例えば，ユニットＥを背景ユニット（シンボルが割り当てられていない信号ユニット）と定義し，これを隙間なく並べて透かし画像の背景とし，シンボルユニット（ユニットＡ，ユニットＢ）を透かし画像に埋め込む場合は，埋め込もうとする位置の背景ユニット（ユニットＥ）とシンボルユニット（ユニットＡ，ユニットＢ）とを入れ替える。
図６（１）はユニットＥを背景ユニットと定義し，これを隙間なく並べて透かし画像の背景とした場合を示す説明図である。図６（２）は図６（１）の背景画像の中にユニットＡを埋め込んだ一例を示し，図６（３）は図６（１）の背景画像の中にユニットＢを埋め込んだ一例を示している。本実施の形態では，背景ユニットを透かし画像の背景とする方法について説明するが，シンボルユニットのみを配置することによって透かし画像を生成しても良い。
次いで，符号語の１シンボルを透かし画像に埋め込む方法について，図７を参照しながら説明する。
図７は，透かし画像へのシンボル埋め込み方法の一例を示す説明図である。ここでは，例として「０１０１」というビット列を埋め込む場合について説明する。
図７（１），（２）に示すように，同じシンボルユニットを繰り返し埋め込む。これは文書中の文字が埋め込んだシンボルユニットの上に重なった場合，信号検出時に検出されなくなることを防ぐためであり，シンボルユニットの繰り返し数と配置のパターン（以下，ユニットパターンと称する。）は任意である。
すなわち，ユニットパターンの一例として，図７（１）のように繰り返し数を４（１つのユニットパターン中に４つのシンボルユニットが存在する）にしたり，図７（２）のように繰り返し数を２（１つのユニットパターン中に２つのシンボルユニットが存在する）にしたりすることができ，あるいは，繰り返し数を１（１つのユニットパターン中には１つのシンボルユニットだけが存在する）としてもよい。
また，図７（１），（２）は１つのシンボルユニットに対して１つのシンボルが与えられているが，図７（３）のようにシンボルユニットの配置パターンに対してシンボルを与えても良い。
１ページ分の透かし画像の中に何ビットの情報量を埋め込むことができるかは，信号ユニットの大きさ，ユニットパターンの大きさ，文書画像の大きさに依存する。文書画像の水平方向と垂直方向にいくつの信号を埋め込んだかは，既知として信号検出を行っても良いし，入力装置から入力された画像の大きさと信号ユニットの大きさから逆算しても良い。
１ページ分の透かし画像の水平方向にＰｗ個，垂直方向にＰｈ個のユニットパターンが埋め込めるとすると，画像中の任意の位置のユニットパターンをＵ（ｘ，ｙ），ｘ＝１〜Ｐｗ，ｙ＝１〜Ｐｈと表現し，Ｕ（ｘ，ｙ）を「ユニットパターン行列」と称することにする。また，１ページに埋め込むことができるビット数を「埋め込みビット数」と称する。埋め込みビット数はＰｗ×Ｐｈである。
図８は，秘密情報１６を透かし画像に埋め込む方法について示した流れ図である。ここでは１枚（１ページ分）の透かし画像に，同じ情報を繰り返し埋め込む場合について説明する。同じ情報を繰り返し埋め込むことにより，透かし画像と文書画像を重ね合わせたときに１つのユニットパターン全体が塗りつぶされるなどして埋め込み情報が消失するような場合でも，埋め込んだ情報を取り出すことを可能とするためである。
まず，秘密情報１６をＮ元符号に変換する（ステップＳ２０１）。図２のステップＳ１０１と同様である。以下では，符号化されたデータをデータ符号と称し，ユニットパターンの組合わせによりデータ符号を表現したものをデータ符号ユニットＤｕと称する。
次いで，データ符号の符号長（ここではビット数）と埋め込みビット数から，１枚の画像にデータ符号ユニットを何度繰り返し埋め込むことができるかを計算する（ステップＳ２０２）。本実施の形態ではデータ符号の符号長データをユニットパターン行列の第１行に挿入するものとする。データ符号の符号長を固定長として符号長データは透かし画像には埋め込まないようにしても良い。
データ符号ユニットを埋め込む回数Ｄｎは，データ符号長をＣｎとして以下の式で計算される。
2004098171.tif 000003
ここで剰余をＲｎ（Ｒｎ＝Ｃｎ−（Ｐｗ×（Ｐｈ−１）））とすると，ユニットパターン行列にはＤｎ回のデータ符号ユニットおよびデータ符号の先頭Ｒｎビット分に相当するユニットパターンを埋め込むことになる。ただし，剰余部分のＲｎビットは必ずしも埋め込まなくても良い。
図９の説明では，ユニットパターン行列のサイズを９×１１（１１行９列），データ符号長を１２（図中で０〜１１の番号がついたものがデータ符号の各符号語を表わす）とする。
次いで，ユニットパターン行列の第１行目に符号長データを埋め込む（ステップＳ２０３）。図９の例では符号長を９ビットのデータで表現して１度だけ埋め込んでいる例を説明しているが，ユニットパターン行列の幅Ｐｗが十分大きい場合，データ符号と同様に符号長データを繰り返し埋め込むこともできる。
さらに，ユニットパターン行列の第２行以降に，データ符号ユニットを繰り返し埋め込む（ステップＳ２０４）。図９で示すようにデータ符号のＭＳＢ（ｍｏｓｔ  ｓｉｇｎｉｆｉｃａｎｔ  ｂｉｔ）またはＬＳＢ（ｌｅａｓｔ  ｓｉｇｎｉｆｉｃａｎｔ  ｂｉｔ）から順に行方向に埋め込む。図９の例ではデータ符号ユニットを７回，およびデータ符号の先頭６ビットを埋め込んでいる例を示している。
データの埋め込み方法は図９のように行方向に連続になるように埋め込んでも良いし，列方向に連続になるように埋め込んでも良い。
以上，透かし画像形成部１２における，透かし画像について説明した。次いで，透かし情報埋め込み装置１０の透かし入り文書画像合成部１３について説明する。
（透かし入り文書画像合成部１３）
透かし入り文書画像合成部１３では，文書画像形成部１１で作成した文書画像と，透かし画像形成部１２で作成した透かし画像を重ね合わせる。透かし入り文書画像の各画素の値は，文書画像と透かし画像の対応する画素値の論理積演算（ＡＮＤ）によって計算する。すなわち，文書画像と透かし画像のどちらかが０（黒）であれば，透かし入り文書画像の画素値は０（黒），それ以外は１（白）となる。
図１０は，透かし入り文書画像の一例を示す説明図である。図１１は，図１０の一部を拡大して示した説明図である。ここで，ユニットパターンは図７（１）のパターンを用いている。透かし入り文書画像は，出力デバイス１４により出力される。
以上，透かし情報埋め込み装置１０の動作について説明した。
次いで，図１，及び，図１２〜図１９を参照しながら，透かし情報検出装置３０の動作について説明する。
（透かし検出部３２）
図１２は，透かし検出部３２の処理の流れを示す流れ図である。
まず，スキャナなどの入力デバイス３１によって透かし入り文書画像を計算機のメモリ等に入力する（ステップＳ３０１）。この画像を入力画像と称する。入力画像は多値画像であり，以下では２５６階調のグレイ画像として説明する。また入力画像の解像度（入力デバイス３１で読み込むときの解像度）は，上記透かし情報埋め込み装置１０で作成した透かし入り文書画像と異なっていても良いが，ここでは上記透かし情報埋め込み装置１０で作成した画像と同じ解像度であるとして説明する。また，１つのユニットパターンが１つのシンボルユニットから構成されている場合について説明する。
＜信号検出フィルタリング工程（ステップＳ３１０）＞
ステップＳ３１０では，入力画像全体に対してフィルタリング処理を行い，フィルタ出力値の計算とフィルタ出力値の比較を行う。フィルタ出力値の計算は，以下に示すガボールフィルタと称されるフィルタを用いて，入力画像の全画素においてフィルタと画像間のコンボリューションにより計算する。
以下にガボールフィルタＧ（ｘ，ｙ），ｘ＝０〜ｇｗ−１，ｙ＝０〜ｇｈ−１を示す。ｇｗ，ｇｈはフィルタのサイズであり，ここでは上記透かし情報埋め込み装置１０で埋め込んだ信号ユニットと同じ大きさである。
2004098171.tif 000004
入力画像中の任意の位置でのフィルタ出力値はフィルタと画像間のコンボリューションにより計算する。ガボールフィルタの場合は実数フィルタと虚数フィルタ（虚数フィルタは実数フィルタと半波長分位相がずれたフィルタ）が存在するため，それらの２乗平均値をフィルタ出力値とする。例えば，ある画素（ｘ，ｙ）における輝度値とフィルタＡの実数フィルタとのコンボリューションがＲｃ，虚数フィルタとのコンボリューションがＩｃであったとすると，フィルタ出力値Ｆ（Ａ，ｘ，ｙ）は以下の式で計算する。
2004098171.tif 000005
上記のように各信号ユニットに対応するすべてのフィルタに対してフィルタ出力値を計算した後，各画素において上記のように計算したフィルタ出力値を比較し，その最大値Ｆ（ｘ，ｙ）をフィルタ出力値行列として記憶する。また，値が最大であるフィルタに対応する信号ユニットの番号をフィルタ種類行列として記憶する（図１３）。具体的には，ある画素（ｘ，ｙ）において，Ｆ（Ａ，ｘ，ｙ）＞Ｆ（Ｂ，ｘ，ｙ）の場合には，フィルタ出力値行列の（ｘ，ｙ）の値としてＦ（Ａ，ｘ，ｙ）を設定し，フィルタ種類行列の（ｘ，ｙ）の値として信号ユニットＡを示す「０」を設定する（本実施の形態では，信号ユニットＡ，Ｂの番号を「０」，「１」としている）。
なお，本実施の形態ではフィルタの個数が２つであるが，フィルタの個数がそれより多い場合も，同様に複数のフィルタ出力値の最大値とその際のフィルタに対応する信号ユニット番号を記憶すればよい。
＜信号位置探索工程（ステップＳ３２０）＞
ステップＳ３２０では，ステップＳ３１０で得られたフィルタ出力値行列を用いて，信号ユニットの位置を決定する。具体的には，まず，信号ユニットの大きさがＳｈ×Ｓｗで構成されていたとすると，格子点の垂直方向の間隔がＳｈ，水平方向の間隔がＳｗ，格子点の個数がＮｈ×Ｎｗの信号位置探索テンプレートを作成する（図１４）。そのように作成したテンプレートの大きさは，Ｔｈ（Ｓｈ＊Ｎｈ）×Ｔｗ（Ｓｗ＊Ｎｗ）となるが，Ｎｈ，Ｎｗには信号ユニット位置を探索するために最適な値を用いればよい。
次に，フィルタ出力値行列をテンプレートの大きさごとに分割する。さらに，各分割領域で，隣接する領域の信号ユニットに重複しない範囲（水平方向±Ｓｗ／２，垂直方向±Ｓｈ／２，）でテンプレートをフィルタ出力値行列上で画素単位に移動させながら，テンプレート格子点上のフィルタ出力値行列値Ｆ（ｘ，ｙ）の総和Ｖを以下の式を用いて求め（図１４），その総和が一番大きいテンプレートの格子点をその領域の信号ユニットの位置とする。
2004098171.tif 000006
上記の例は，ステップＳ３１０で全画素に対して，フィルタ出力値を求めた場合であり，フィルタリングを行う際，ある一定間隔の画素に対してのみフィルタリングを行うこともできる。例えば，２画素おきにフィルタリングを行った場合は，上記の信号位置探索テンプレートの格子点の間隔も１／２とすればよい。
＜信号シンボル決定工程（ステップＳ３３０）＞
ステップＳ３３０では，ステップＳ３２０で決定した信号ユニット位置のフィルタ種類行列の値（フィルタに対応した信号ユニット番号）を参照することで，信号ユニットがＡかＢを決定する。
上記のようにして，決定した信号ユニットの判定結果をシンボル行列として記憶する。
＜信号境界決定工程（ステップＳ３４０）＞
ステップＳ３２０では，信号ユニットが埋め込まれているかにかかわらず，画像全面に対してフィルタリング処理を行っているので，どの部分に信号ユニットが埋め込まれていたかを決定する必要がある。そこで，ステップＳ３４０では，シンボル行列からあらかじめ信号ユニットを埋め込む際に決めておいたパターンを探索することで信号境界を求める。
例えば信号ユニットが埋め込まれている境界には，必ず信号ユニットＡを埋め込むとしておけば，ステップＳ３３０で決定したシンボル行列の横方向に信号ユニットＡの数を計数し，中心から上下にそれぞれ，信号ユニットＡの個数が一番多い位置を信号境界の上端／下端とする。図１５の例では，シンボル行列における信号ユニットＡは「黒」（値でいうと「０」）で表現されているので，シンボル行列の黒画素数を計数することで，信号ユニットＡの数を計数することができ，その度数分布により，信号境界の上端／下端を求めることができる。左端／右端もユニットＡの個数を計数する方向が異なるだけで，同じように求めることができる。
信号境界を求めるためには上記方法に限らず，シンボル行列から探索することができるパターンをあらかじめ埋め込み側と検出側で決めておくだけでよい。
再び，図１２の流れ図に戻り，以降のステップＳ３０５について説明する。ステップＳ３０５では，シンボル行列のうち，信号境界内部に相当する部分から元の情報を復元する。なお，本実施の形態では，１つのユニットパターンは１つのシンボルユニットで構成されているので，ユニットパターン行列は，シンボル行列と等価になる。
＜情報復号工程（ステップＳ３０５）＞
図１６は情報復元の一例を示す説明図である。情報復元のステップは以下の通りである。
（１）各ユニットパターンに埋め込まれているシンボルを検出する（図１６（１））。
（２）シンボルを連結してデータ符号を復元する（図１６（２））。
（３）データ符号を復号して埋め込まれた情報を取り出す（図１６（３））。
図１７〜図１９はデータ符号の復元方法の一例を示す説明図である。復元方法は基本的に図８の逆の処理となる。
まず，ユニットパターン行列の第１行から符号長データ部分を取り出して，埋め込まれたデータ符号の符号長を得る（ステップＳ４０１）。
次いで，ユニットパターン行列のサイズとステップＳ４０１で得たデータ符号の符号長をもとに，データ符号ユニットを埋め込んだ回数Ｄｎおよび剰余Ｒｎを計算する（ステップＳ４０２）。
次いで，ユニットパターン行列の２行目以降からステップＳ２０３と逆の方法でデータ符号ユニットを取り出す（ステップＳ４０３）。図１８の例ではＵ（１，２）（２行１列）から順に１２個のパターンユニットごとに分解する（Ｕ（１，２）〜Ｕ（３，３），Ｕ（４，３）〜Ｕ（６，４），・・・）。Ｄｎ＝７，Ｒｎ＝６であるため，１２個のパターンユニット（データ符号ユニット）は７回取り出され，剰余として６個（データ符号ユニットの上位６個に相当する）のユニットパターン（Ｕ（４，１１）〜Ｕ（９，１１））が取り出される。
次いで，ステップＳ４０３で取り出したデータ符号ユニットに対してビット確信度演算を行うことにより，埋め込んだデータ符号を再構成する（ステップＳ４０４）。以下，ビット確信度演算について説明する。
図１９のようにユニットパターン行列の２行１列目から最初に取り出されたデ−外符号ユニットをＤｕ（１，１）〜Ｄｕ（１２，１）とし，順次Ｄｕ（１，２）〜Ｄｕ（１２，２），・・・，と表記する。また，剰余部分はＤｕ（１，８）〜Ｄｕ（６，８）とする。ビット確信度演算は各データ符号ユニットの要素ごとに多数決を取るなどして，データ符号の各シンボルの値を決定することである。これにより，文字領域との重なりや紙面の汚れなどが原因で，任意のデータ符号ユニット中の任意のユニットから正しく信号検出を行えなかった場合（ビット反転エラーなど）でも，最終的に正しくデータ符号を復元することができる。
具体的には例えばデータ符号の１ビット目は，Ｄｕ（１，１），Ｄｕ（１，２），・・・，Ｄｕ（１，８）の信号検出結果が１である方が多い場合には１と判定し，０である方が多い場合には０と判定する。同様にデータ符号の２ビット目はＤｕ（２，１），Ｄｕ（２，２），・・・，Ｄｕ（２，８）の信号検出結果による多数決によって判定し，データ符号の１２ビット目はＤｕ（１２，１），Ｄｕ（１２，２），・・・，Ｄｕ（１２，７）（Ｄｕ（１２，８）は存在しないためＤｕ（１２，７）までとなる）の信号検出結果による多数決によって判定する。
ここではデータ符号を繰り返し埋め込む場合について説明したが，データを符号化する際に誤り訂正符号などを用いることにより，データ符号ユニットの繰り返しを行わないような方法も実現できる。
（第１の実施の形態の効果）
以上説明したように，本実施の形態によれば，入力画像全面にフィルタリング処理を施し，信号位置探索テンプレートを用いて，フィルタ出力値の総和が最大になるように，信号ユニットの位置を求めることができるので，用紙のゆがみなどにより画像が伸縮していたりする場合にでも，信号ユニットの位置を正しく検出でき，秘密情報入り文書から正確に秘密情報を検出することができる。
（第２の実施の形態）
上述した第１の実施の形態では，フィルタ出力値行列を信号位置探索テンプレートの大きさで分割した各分割領域で信号位置を探索していた。これに対して，第２の実施の形態では，信号位置を探索する際，最初に信号位置探索テンプレートで信号位置を探索する位置を，用紙中央など安定して信号位置を求めることができる位置に設定する。その後，その初期位置で信号位置を探索し，信号位置が決定できれば，その決定した信号位置に基づいて，周囲の信号位置を順次決定していく。
本実施の形態における透かし情報埋め込み装置１０および透かし情報検出装置２０の構成については，上記第１の実施の形態と実質的に同様であるため，重複説明を省略する。以下に，本実施の形態の動作について説明する。
第２の実施の形態のフローチャートを図２０に示す。第１の実施の形態において，信号位置探索工程（ステップＳ３２０）に替えて初期信号位置探索工程（ステップＳ３５０）と逐次信号位置探索工程（ステップＳ３６０）を加えたものである。以下，異なる部分のみ説明する。
＜初期信号位置探索工程（ステップＳ３５０）＞
ステップＳ３５０では，信号位置探索テンプレートの初期位置を決定する。決定する初期位置は，精度良く信号ユニットを検出できる位置に設定する。例えば入力画像の中央位置であってもいいし，入力画像の文字などが含まれている領域を避けるため，文字に相当する比較的暗い画素（輝度値が小さい画素）の分布が最も疎である位置に決定してもよい。
＜逐次信号位置探索工程（ステップＳ３６０）＞
ステップＳ３６０では，ステップＳ３５０で決定された信号位置探索テンプレートの初期位置を基点として，順に隣接するテンプレートの位置を決定してゆく。まず初期位置において第１の実施の形態の信号位置探索工程（ステップＳ３２０）と同様の方法でテンプレートの位置を一つ決定する。続いて決定されたテンプレートの上下，または左右の隣接する領域を次のテンプレート探索位置に設定し，次のテンプレート位置の探索を行う。同様の処理を繰り返して入力画像全体のテンプレート位置を決定する（図２１）。隣接するテンプレート位置の探索順は，例えば第１象限においてｘ軸正方向に画像端まで探索し，続いてｙ軸正方向に１領域ずつ進んで同様にｘ軸正方向に探索する。続いて第２，第３，第４象限についても探索方向が異なるだけで同様に探索することができる。
（第２の実施の形態の効果）
以上説明したように，本実施の形態によれば，ある信号位置探索テンプレートの隣接位置から次のテンプレートの探索を行うことができる。例えば画像の回転などによって画像の端方向にゆがみが累積する場合のように，初期位置に対して信号ユニットの大きさ以上のゆがみを持つ場合においても適切に信号ユニットを検出することができる。
（第３の実施の形態）
上述した第１の実施の形態では，フィルタ出力値行列を信号位置探索テンプレートの大きさで分割し，信号位置探索テンプレート内部のフィルタ出力値のみを参照して，信号位置を探索していた。これに対して，第３の実施の形態では，信号位置探索テンプレートを含み，それよりサイズの大きな拡大テンプレートを作成し，分割した領域の周囲に存在するフィルタ出力値も参照できる拡大テンプレートを用いて信号位置の探索を行う。
本実施の形態における透かし情報埋め込み装置１０および透かし情報検出装置２０の構成については，上記第１の実施の形態と実質的に同様であるため，重複説明を省略する。以下に，本実施の形態の動作について説明する。
第３の実施の形態のフローチャートを図２２に示す。第１の実施の形態において，信号位置探索工程（ステップＳ３２０）に替えて拡大信号位置探索工程（ステップＳ３７０）を加えたものである。以下，異なる部分のみ説明する。
＜拡大信号位置探索工程（ステップＳ３７０）＞
ステップＳ３７０では，第１の実施の形態の信号位置探索工程（ステップＳ３２０）と同様の方法で信号位置探索テンプレートを作成し，さらにより大きい拡大テンプレートを作成して内部に信号位置探索テンプレートを配置する（図２３）。拡大テンプレートは信号位置探索テンプレートと同様の格子点を持ち，格子点の個数をＭｈ×Ｍｗ（Ｍｈ≧Ｎｈ，Ｍｗ≧Ｎｗ）とする。作成した拡大テンプレートの大きさは，Ｅｈ（Ｓｈ＊Ｍｈ）×Ｅｗ（Ｓｗ＊Ｍｗ）となる。内部の信号位置探索テンプレートは，中央に配置し，第１の実施の形態の信号位置探索工程（ステップＳ３２０）と同様にフィルタ出力値行列を信号位置探索テンプレートの大きさに分割する。
さらに，内部の信号位置探索テンプレートが隣接する領域の信号ユニットに重複しない範囲で拡大テンプレートを画素単位で移動させ，格子点上のフィルタ出力値行列値Ｆ（ｘ，ｙ）の総和Ｗを求めて，その総和Ｗが一番大きい拡大テンプレートの位置を決定する。決定した拡大テンプレートから内部の信号位置探索テンプレートの位置を求め，その格子点を当該分割領域の信号ユニット位置とする。
2004098171.tif 000007
（第３の実施の形態の効果）
以上説明したように，本実施の形態によれば，分割領域のフィルタ出力値に加えて，周囲の領域のフィルタ出力値も使用して信号位置の特定が行える。例えば分割領域に入力画像の文字領域が含まれるような，分割領域内のフィルタ出力値が十分に得られない場合においても，適切に信号検出を行うことができる。
（第４の実施の形態）
上述した第１の実施の形態では，信号位置探索テンプレートを用いて信号ユニットの位置を決定し，その後得られたシンボル行列から信号境界を求めていた。これに対して，第４の実施の形態では，秘密情報の他に信号ユニットの水平／垂直方向の個数も同時にあらかじめ埋め込んでおき，信号ユニットの位置および信号境界を決定した後に，必要であれば埋め込んでおいた上記の情報を検出し，その情報に応じて信号ユニット位置を修正する。
本実施の形態における透かし情報埋め込み装置１０および透かし情報検出装置２０の構成については，上記第１の実施の形態と実質的に同様であるため，重複説明を省略する。以下に，本実施の形態の動作について説明する。
図２４は，第４の実施の形態における透かし検出部のフローチャートである。第１の実施の形態に，信号数復号工程（ステップＳ３７５）と信号位置修正工程（ステップＳ３８０）を有するフローチャートである。以下，信号ユニット位置を修正する方法について説明する。
＜信号数復号工程（ステップＳ３７５）＞
ステップＳ３７５では，第１の実施の形態の情報復号工程（ステップＳ３０５）と同様に，信号位置探索（ステップＳ３２０）と信号境界決定（ステップＳ３４０）で決定した信号境界に基づいて情報を復号し，復号したデータから秘密情報のほかにあらかじめ埋め込んでおいた信号ユニットの水平／垂直方向の個数を検出する。この情報が埋め込まれている場所は，例えば安定して検出することが可能な信号境界のすぐ内側など，確実に検出できる位置ならどこでもよい。さらに，符号化／復号の際も，誤り訂正符号を用いるなど任意の方法を用いて符号化し，各シンボルに割り当てられた信号ユニットを用いて上記の位置に埋め込んでおけばよい。
＜信号位置修正工程（ステップＳ３８０）＞
図２５に信号位置修正の処理説明図を示す。
ステップＳ３８０では，まず信号位置探索工程（ステップＳ３２０）で求めた信号ユニット位置と信号境界決定工程（ステップＳ３４０）で求めた信号境界から，信号ユニットの水平／垂直方向の個数を求める。その後，その個数とステップＳ３７５で検出した信号ユニット数とを比較し，一致していなければ，信号ユニットの位置を修正する。
修正する方法としては，例えば，水平方向の個数が埋め込まれている情報と比較して少なければ，図２５のように検出した信号ユニット位置の各水平方向の間隔を求め，間隔が最大である信号ユニット位置の中点に新たな信号ユニット位置を追加する。上記のように信号ユニット位置を追加して修正した信号ユニットの個数が，抽出した信号ユニットの個数より少ない場合は，検出した信号ユニットの個数と等しくなるまでその処理を繰り返し行う。逆に多ければ，信号位置ユニット位置の水平方向の間隔が最小のところから順に，ひとつ信号ユニットの位置を削除する。垂直方向の信号ユニット位置の修正も水平方向と同様に可能である。
（第４の実施の形態の効果）
以上説明したように，本実施の形態によれば，あらかじめ埋め込んでおいた信号ユニットの個数を検出し，その情報を参照することで，テンプレートによる信号ユニットの位置探索に誤りがあっても修正することが可能となり，より正確に信号ユニットの位置を検出できる。その結果，秘密情報入り文書から正確に秘密情報を検出することができる。
（第５の実施の形態）
上述した第１の実施の形態では，印刷文書から秘密情報を検出するだけであった。これに対して，第５の実施の形態では第１の実施の形態に改ざん判定部を追加して，信号位置探索工程（ステップＳ３２０）で求めた信号ユニット位置を利用して，各信号ユニット位置における文書画像（透かしを埋め込む前の画像データ）と入力画像（透かしが埋め込まれた印刷文書をスキャナなどで読み込んだ画像）の特徴量を比較し，印刷文書の内容が改ざんされているかの判定を行う。
図２６は，第５の実施の形態における処理構成図である。第１の実施の形態に，改ざん判定部３３を有する構成である。改ざん判定部３３では，あらかじめ埋め込んでおいた文書画像に関する特徴量と入力画像に関する特徴量を比較することによって印刷文書の内容の改ざんを判定する。
図２７は改ざん判定部３３の処理の流れ，図２８は改ざん判定部３３の処理説明図を示す。
ステップＳ４１０では，第１の実施の形態と同様にスキャナなどの入力デバイス３１によって読み込んだ透かし入り文書画像を計算機のメモリ等に入力する（この画像を入力画像と呼ぶ）。
＜文書画像特徴量の抽出工程（ステップＳ４２０）＞
ステップＳ４２０では，あらかじめ埋め込んでおいた文書画像に関する特徴量を透かし検出部３２の情報復号工程（ステップＳ３０５）で復号したデータから抽出する。本実施の形態における文書画像特徴量としては，図２８のように透かし入り文書画像において，信号ユニットを埋め込まれた領域の左上座標を基準点（図２８の基準点Ｐ）とした縮小２値画像を用いている。埋め込み側の文書画像は２値画像であるため，公知の技術を用いた縮小処理を行っておくだけでよい。また，画像データは，ＭＲ，ＭＭＲなどの２値画像の圧縮方法を用いてデータ量を圧縮した上で，各シンボルに割り当てられた信号ユニットを用いて埋め込んでおいてもよい。
＜入力画像の２値化処理工程（ステップＳ４３０）＞
ステップＳ４３０では，入力画像の２値化処理を行う。本実施の形態では，あらかじめ埋め込んでおいた２値化閾値に関する情報を透かし検出部３２の情報復号工程（ステップＳ３０５）で復号したデータから抽出する。その抽出した情報から２値化閾値を決定し，入力画像を２値化する。この２値化閾値に関する情報も第４の実施の形態における信号ユニット数の場合と同様に，誤り訂正符号を用いるなど任意の方法で用いて符号化し，各シンボルに割り当てられた信号ユニットを用いて埋め込んでおけばよい。
なお，２値化閾値に関する情報としては，埋め込む際に文書画像に含まれる黒画素数などが一例である。そのような場合には，文書画像と同じ大きさに正規化した入力画像を２値化して得られる２値画像の黒画素数が，埋め込む際に文書画像に含まれていた黒画素数と一致するように２値化閾値を設定すればよい。
さらに，文書画像をいくつかの領域に分け，その領域ごとに２値化閾値に関する情報を埋め込んでおけば，入力画像の領域単位に２値化処理を行うこともできる。そのようにすることで，入力画像のある領域に大幅な改ざんが加えられ，その領域の黒画素数が元の文書画像の黒画素数と大きく異なり，適正な２値化閾値の範囲にない場合でも，周辺領域の２値化閾値の情報を参照することで，適正な２値化閾値を設定することができる。
画像の２値化処理は，公知の技術を用いて２値化閾値を決定し，入力画像を２値化してもよいが，上記の方法を採用することで，スキャナの機種に依存することなく，埋め込む際の文書画像の２値画像とほぼ同じデータを透かし検出側でも作成することができる。
＜入力画像特徴量の抽出工程（ステップＳ４４０）＞
ステップＳ４４０では，入力画像と透かし検出部３２の信号位置探索工程（ステップＳ３２０）で得られた信号ユニット位置と信号境界決定工程（ステップＳ３４０）で得られた信号境界から入力画像に関する特徴量を作成する。具体的には，信号境界の左上座標を基準点（図２８の基準点Ｑ）として，複数の信号ユニットをひとつの単位として分割し，その単位で座標位置が対応する入力画像の縮小画像を求める。図２８では，上記のように分割したある領域として，左上座標が（ｘｓ，ｙｓ），右下座標が（ｘｅ，ｙｅ）である矩形を例として示している。縮小方法は，埋め込み側と同じ手法を用いればよい。
なお，縮小画像を求める場合に，信号境界の左上座標を基準点（図２９の基準点Ｑ）として，複数の信号ユニットをひとつの単位として分割し，その単位で座標位置が対応するような入力画像の補正画像を作成した後，その補正画像を縮小してもよい。
＜特徴量の比較工程（ステップＳ４５０）＞
ステップＳ４５０では，文書画像特徴抽出工程（ステップＳ４２０）と入力画像特徴作成工程（ステップＳ４４０）で得られた特徴を比較し，一致していなければ，その位置に対応する印刷文書が改ざんされていると判定する。具体的には，ステップＳ４４０で得られた信号ユニット単位ごとの入力画像の縮小２値画像（図２８における基準点をＱとした（ｘｓ，ｙｅ）−（ｘｓ，ｙｅ）を左上／右下頂点とする矩形）とそれに対応する文書画像特徴抽出工程（ステップＳ４２０）で抽出した文書画像の縮小２値画像（図２８における基準点をＰとした（ｘｓ，ｙｓ）−（ｘｅ，ｙｅ）を左上／右下頂点とする矩形）と比較することによって，改ざんを判定する。例えば比較対象の２つ画像において，輝度値が異なる画素の個数が所定の閾値以上であれば，その信号ユニットに対応する印刷文書が改ざんされていると判定すればよい。
なお，上記の実施の形態では，特徴量として縮小２値画像を用いたが，その代わりに座標情報と印刷文書に記入されているテキストデータでもよい。その場合は，その座標情報に対応する入力画像のデータを参照し，その画像情報を公知のＯＣＲ技術を用いて，文字認識を行い，その認識結果とテキストデータを比較することで，改ざんの判定を行うことができる。
（第５の実施の形態の効果）
以上説明したように，本実施の形態によれば，あらかじめ埋め込んでおいた文書画像に関する特徴量と秘密情報が埋め込まれた印刷文書をスキャナで読み込んだ入力画像の特徴量を，信号位置探索テンプレートを用いて決定した信号ユニットを基準として，比較することによって，印刷文書の内容が改ざんされているかを検出することがきる。第１の実施の形態によって，信号ユニット位置を正確に求めることができるので，その位置を利用すれば容易に特徴量の比較が可能となり，印刷文書の改ざんを判定することができる。
以上，添付図面を参照しながら本発明にかかる透かし情報検出方法の好適な実施形態について説明したが，本発明はかかる例に限定されない。当業者であれば，特許請求の範囲に記載された技術的思想の範疇内において各種の変更例または修正例に想到し得ることは明らかであり，それらについても当然に本発明の技術的範囲に属するものと了解される。
以上説明したように，本発明によれば，入力画像全面にフィルタリング処理を施し，信号位置探索テンプレートを用いて，フィルタ出力値の総和が最大になるように，信号ユニットの位置を求めることができるので，用紙のゆがみなどにより画像が伸縮していたりする場合にでも，信号ユニットの位置を正しく検出でき，秘密情報入り文書から正確に秘密情報を検出することができる。
【産業上の利用の可能性】
本発明は，文書画像に対して文字以外の形式で秘密情報を付加する方法と，印刷された秘密情報入り文書から秘密情報を検出する技術に利用可能である。
【符号の説明】
１０  透かし情報埋め込み装置
１１  文書画像形成部
１２  透かし画像形成部
１３  透かし入り文書画像合成部
１４  出力デバイス
１５  文書データ
１６  秘密情報
２０  印刷文書
３０  透かし情報検出装置
３１  入力デバイス
３２  透かし検出部
３３  改ざん判定部
【図１】
2004098171.tif 000008
【図２】
2004098171.tif 000009
【図３】
2004098171.tif 000010
【図４】
2004098171.tif 000011
【図５】
2004098171.tif 000012
【図６】
2004098171.tif 000013
【図７】
2004098171.tif 000014
【図８】
2004098171.tif 000015
【図９】
2004098171.tif 000016
【図１０】
2004098171.tif 000017
【図１１】
2004098171.tif 000018
【図１２】
2004098171.tif 000019
【図１３】
2004098171.tif 000020
【図１４】
2004098171.tif 000021
【図１５】
2004098171.tif 000022
【図１６】
2004098171.tif 000023
【図１７】
2004098171.tif 000024
【図１８】
2004098171.tif 000025
【図１９】
2004098171.tif 000026
【図２０】
2004098171.tif 000027
【図２１】
2004098171.tif 000028
【図２２】
2004098171.tif 000029
【図２３】
2004098171.tif 000030
【図２４】
2004098171.tif 000031
【図２５】
2004098171.tif 000032
【図２６】
2004098171.tif 000033
【図２７】
2004098171.tif 000034
【図２８】
2004098171.tif 000035
【図２９】
2004098171.tif 000036
【国際調査報告】
2004098171.tif 000037
2004098171.tif 000038
2004098171.tif 000039
2004098171.tif 000040