JP3980983B2 - Watermark information embedding method, watermark information detecting method, watermark information embedding device, and watermark information detecting device - Google Patents

Watermark information embedding method, watermark information detecting method, watermark information embedding device, and watermark information detecting device Download PDF

Info

Publication number
JP3980983B2
JP3980983B2 JP2002289697A JP2002289697A JP3980983B2 JP 3980983 B2 JP3980983 B2 JP 3980983B2 JP 2002289697 A JP2002289697 A JP 2002289697A JP 2002289697 A JP2002289697 A JP 2002289697A JP 3980983 B2 JP3980983 B2 JP 3980983B2
Authority
JP
Japan
Prior art keywords
dot
information
watermark
image
watermark information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2002289697A
Other languages
Japanese (ja)
Other versions
JP2004128845A (en
Inventor
昌彦 須崎
甲子雄 松井
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Oki Electric Industry Co Ltd
Original Assignee
Oki Electric Industry Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Oki Electric Industry Co Ltd filed Critical Oki Electric Industry Co Ltd
Priority to JP2002289697A priority Critical patent/JP3980983B2/en
Publication of JP2004128845A publication Critical patent/JP2004128845A/en
Application granted granted Critical
Publication of JP3980983B2 publication Critical patent/JP3980983B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Image Processing (AREA)
  • Editing Of Facsimile Originals (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は,文書画像に対して文字以外の形式で秘密情報を付加する方法と,印刷された秘密情報入り文書から秘密情報を検出する技術に関するものである。
【0002】
【従来の技術】
画像や文書データなどにコピー・偽造防止のための情報や機密情報を人の目には見えない形で埋め込む「電子透かし」は,保存やデータの受け渡しがすべて電子媒体上で行われることを前提としており,透かしによって埋め込まれている情報の劣化や消失がないため確実に情報検出を行うことができる。これと同様に,紙媒体に印刷された文書に対しても,文書が不正に改ざんされたりコピーされることを防ぐために,文字以外の視覚的に目障りではない形式でかつ容易に改ざんが不可能であるような秘密情報を印刷文書に埋め込む方法が必要となっている。
【0003】
印刷物として最も広く利用される白黒の二値の文書に対する情報埋め込み方法としては,以下のような技術が知られている。
【0004】
[1]特開2001−78006「白黒2値文書画像への透かし情報埋め込み・検出方法及びその装置」
任意の文字列を囲む最小矩形をいくつかのブロックに分割し,それらを2つのグループ(グループ1,グループ2)に分ける(グループの数は3つ以上でも良い)。例えば信号が1の場合はグループ1のブロック中の特徴量を増やしグループ2の各ブロック中の特徴量を減らす。信号が0の場合は逆の操作を行う。ブロック中の特徴量は,文字領域の画素数や文字の太さ,ブロックを垂直にスキャンして最初に文字領域にぶつかる点までの距離などである。
【0005】
[2]特開2001−53954「情報埋め込み装置,情報読み出し装置,電子透かしシステム,情報埋め込み方法,情報読み出し方法及び記録媒体」
1つの文字を囲む最小矩形の幅と高さをその文字に対する特徴量として定め,2つ以上の文字間での特徴量の大小関係の分類パターンによりシンボルを表すものとする。例えば3つの文字からは6つの特徴量が定義でき,これらの大小関係のパターンの組合わせを列挙し,これらの組合わせを2つのグルーブに分類し,それぞれにシンボルを与える。埋め込む情報が“0”であって,これを表すために選択された文字の特徴量の組合わせパターンが“1”であった場合,6つの特徴量のうちいずれかを文字領域を膨らませるなどして変化させる。変化させるパターンは変化量が最小となるように選択する。
【0006】
[3]特開平9−179494「機密情報記録方法」
400dpi以上のプリンタで印刷されることを想定する。情報を数値化し,基準点マークと位置判別マークとの距離(ドット数)により情報の表現を行う。
【0007】
[4]特開平10−200743「文書処理装置」
万線スクリーン(細かい平行線で構成された特殊スクリーン)のスクリーン線を後方に移動させるかどうかにより情報を表現する。
【0008】
【特許文献1】
特開2001−78006号公報
【特許文献2】
特開2001−53954号公報
【特許文献3】
特開平9−179494号公報
【特許文献4】
特開平10−200743号公報
【0009】
【発明が解決しようとする課題】
しかしながら,上記公知技術[1],[2]では,文書画像の文字を構成する画素や文字間隔・行間隔に対する変更を伴うためフォントやレイアウトの変更が発生する。加えて,上記公知技術[3],[4]においても,検出時には,スキャナ等の入力機器から読み取った入力画像の1画素単位の精密な検出処理が必要となるため,紙面の汚れや印刷時や読み取り時に雑音が付加された場合などには情報検出精度に大きな影響を与える。
【0010】
このように,上記公知技術[1]〜[4]では,印刷された文書をスキャナなどの入力装置によって再びコンピュータに入力して埋め込まれた秘密情報を検出する場合に,印刷書類の汚れや入力の際に発生する回転などの画像変形が原因で,入力画像に多くの雑音成分が含まれるため,正確に秘密情報を取り出すことが困難であるという問題点があった。
【0011】
本発明は,従来の透かし情報埋め込み/検出技術が有する上記問題点に鑑みてなされたものであり,本発明の目的は,正確に秘密情報を取り出すことの可能な,新規かつ改良された透かし情報埋め込み方法,透かし情報検出方法,透かし情報埋め込み装置,及び,透かし情報検出装置を提供することである。
【0012】
さらに,本発明の他の目的は,信号検出時に紙の回転などで入力画像に歪みがある場合でも信号の復元を行うことができ,画像の回転補正を行う必要がなく,これにより,信号検出時の処理量を削減することの可能な,新規かつ改良された透かし情報埋め込み方法,透かし情報検出方法,透かし情報埋め込み装置,及び,透かし情報検出装置を提供することである。
【0013】
【課題を解決するための手段】
上記課題を解決するため,本発明の第1の観点によれば,文書の背景としてドットを規則正しく配置し,その中に配置の規則の異なるドットパターンを挿入し,前記ドットパターンの配置の規則に対して情報を与える透かし情報埋め込み方法が提供される。本発明の透かし情報埋め込み方法において,前記ドットパターンは少なくとも第1,第2,第3のドットを含んで構成されており,前記第1,第2,第3のドットの相対的な位置関係によって定まる固有値に応じて前記ドットパターンに値を設定し,所定形状の情報領域内に,同じ値が設定された前記ドットパターンを繰り返し配置し,その情報領域全体に前記情報の1ビットを設定することを特徴とする。
【0014】
前記第1,第2,第3のドットの相対的な位置関係によって定まる固有値は,例えば,前記第3のドットを始点とし前記第1のドットを終点とするベクトルと,前記第3のドットを始点とし前記第2のドットを終点とするベクトルとの内積とすることができる。
【0015】
かかる方法によれば,数個の小さなドットから構成されるドットパターンを埋め込むことで,文書(紙)の背景に視覚的に違和感のない方法で情報を埋め込むことができる。そして,ドットのうち1つを始点,2つを終点とした仮想的な2つのベクトルの内積の違い(ベクトルのなす角度およびベクトルの大きさの違い)によって情報を表現している。すなわち,情報をN元符号化し,各符号語に対応して内積を割り当てることができる。かかる方法によれば,信号検出時に紙の回転などで入力画像に歪みがある場合でも,仮想ベクトル同士のなす角や仮想ベクトル同士の大きさの違いなどを検出するだけで信号の復元を行うことが可能となり,画像の回転補正を行う必要がない。このようにして,信号検出時の処理量を削減することができる。
【0016】
また,前記第3のドットを,前記第2のドットを始点として,前記第1のドットを始点とし前記第2のドットを終点とするベクトルに略垂直な方向に位置するようにすることができる。後述するように,情報検出の際に,第3のドットを容易に検索することができる。
【0017】
前記ドットパターンは,さらに,前記第1のドットを始点として,前記第1のドットを始点とし前記第2のドットを終点とするベクトルに略垂直な方向に位置する第4のドットを含んで構成することができる。ドットパターンを文書の背景に密に配置したときの濃度のバランスを保ち,ドットパターン検出時の補助とすることができる。すなわち,第1のドットを始点とし第2のドットを終点とするベクトルを水平基準ベクトルとし,第1のドットを始点とし第4のドットを終点とするベクトルを垂直基準ベクトルとして利用することができる。
【0018】
また本発明では,所定形状の情報領域内に,同じ値が設定されたドットパターンを繰り返し配置し,その情報領域全体に1ビットの情報を設定することとしているが,ここで,情報領域の形状の一例としては矩形(正方形を含む)が挙げられる。なお,情報領域をドットパターンと同じサイズとし,1つの情報領域にドットパターンを1つのみ配置してもよい。
【0019】
また,上記課題を解決するため,本発明の第2の観点によれば,上記本発明の第1の観点にかかる透かし情報埋め込み方法で印刷された文書から情報を検出する透かし情報検出方法が提供される。本発明の透かし情報検出方法は,以下の各ステップを含むことを特徴としている。
(ステップ1)前記文書を画像データに変換して,第1,第2,第3のドット候補点を探索する。
(ステップ2)前記第1,第2,第3のドット候補点の相対的な位置関係によって定まる固有値と,前記第1,第2,第3のドットの相対的な位置関係によって定まる固有値とが略同一の場合に,前記第1,第2,第3のドット候補点は前記ドットパターンを構成する第1,第2,第3のドットであると判定する。
(ステップ3)前記情報領域内における前記ドットパターンに設定された値の多数決により,その情報領域に設定された情報の1ビットを検出する。
【0020】
上記(ステップ1)における第1,第2,第3のドット候補点の相対的な位置関係によって定まる固有値は,例えば,前記第3のドット候補点を始点とし前記第1のドット候補点を終点とするベクトルと,前記第3のドット候補点を始点とし前記第2のドット候補点を終点とするベクトルとの内積である。
【0021】
上記(ステップ1)における第1,第2,第3のドット候補点の探索は,例えば,以下の各ステップを含む。
(ステップ1−1)前記第1のドット候補点を検索する。
(ステップ1−2)前記第1のドット候補点が見つかった場合に,その第1のドット候補点を中心に所定の半径を持つ探索円を設定して,その探索円上に第2のドット候補点を探索する。ここで探索円とは,半径の異なる2つの円に囲まれた所定幅のリング形状領域を含む概念である。
(ステップ1−3)前記第2のドット候補点が見つかった場合に,その第2のドット候補点を始点として,前記第1のドット候補点を始点としその第2のドット候補点を終点とするベクトルに略垂直な方向に前記第3のドット候補点を探索する。
【0022】
かかる透かし情報検出方法によれば,上記優れた効果を有する透かし情報埋め込み方法により埋め込んだ情報を,容易かつ確実に検出することができる。
【0023】
さらに本発明によれば,上記(ステップ1)において入力された文書を画像データに変換する際に必要な傾き補正を行うことができる。例えば,前記画像データ全体で検出された各ドットパターンにおける,前記第1のドットを始点とし前記第2のドットを終点とするベクトルの傾きの平均値を前記画像データの傾きであると判定し,前記画像データの傾き補正を行うことが可能である。
【0024】
さらにまた本発明によれば,上記(ステップ3)において情報領域に設定された情報の1ビットを検出するにあたり,検出精度を上げるために例えば以下のような手法を採用することができる。
(ステップ3−1)前記画像データの傾きに応じた座標系を設定する。
(ステップ3−2)前記座標系の垂直軸と水平軸に沿い,隣り合う間隔を前記座標系における前記情報領域の大きさと略同一にした格子状の水平格子軸及び垂直格子軸を設定する。
(ステップ3−3)前記水平格子軸と前記垂直格子軸との交点を中心とし,隣接する情報領域との境界をまたがないような十分小さな判定領域を設定する。
(ステップ3−4)その判定領域内における前記ドットパターンの値の多数決により,その判定領域を含む前記情報領域に設定された前記情報の1ビットを検出する。
【0025】
さらに,上記(ステップ3−1)における前記水平格子軸及び前記垂直格子軸の設定は,例えば,以下の各ステップにより行われる。
(ステップ3−1−1)任意に設定した水平格子軸と垂直格子軸により定まる判定領域の配置において,判定領域内に含まれるドットパターンが第1の値を表す場合には−1を,第2の値を表す場合は+1をその判定領域の値として加算する。
(ステップ3−1−2)判定領域内の各ドットパターンについての合計値の絶対値をすべての判定領域について合計した値を,ここで設定した水平格子軸と垂直格子軸に対する評価値とする。
(ステップ3−1−3)水平格子軸と垂直格子軸の位置を微小に変化させた中で最も評価値が大きくなる位置をもって,前記水平格子軸及び前記垂直格子軸として設定する。
【0026】
また,本発明によれば,上記本発明の第1の観点にかかる透かし情報埋め込み方法を実現可能な透かし情報埋め込み装置が提供される。
【0027】
さらにまた,本発明によれば,上記本発明の第2の観点にかかる透かし情報検出方法を実現可能な透かし情報検出装置が提供される。
【0028】
【発明の実施の形態】
以下に添付図面を参照しながら,本発明にかかる透かし情報埋め込み方法,透かし情報検出方法,透かし情報埋め込み装置,及び,透かし情報検出装置の好適な実施の形態について詳細に説明する。なお,本明細書及び図面において,実質的に同一の機能構成を有する構成要素については,同一の符号を付することにより重複説明を省略する。
【0029】
図1は,本実施の形態にかかる透かし情報埋め込み装置,及び,透かし情報検出装置の構成を示す説明図である。
【0030】
(透かし情報埋め込み装置1001)
透かし情報埋め込み装置1001は,文書データと文書に埋め込む機密情報をもとに文書画像を構成し,紙媒体に印刷を行う装置である。透かし情報埋め込み装置1001は,図1に示したように,文書画像形成部1005と,透かし画像形成部1006と,透かし入り文書画像合成部1007と,出力デバイス1008により構成されている。文書データ1003は文書作成ツール等により作成されたデータである。機密情報1004は紙媒体に文字以外の形式で埋め込む情報(文字列や画像,音声データ)などである。
【0031】
文書画像形成部1006では,文書データ1003を紙面に印刷した状態の画像が作成される。具体的には,文書画像中の白画素領域は何も印刷されない部分であり,黒画素領域は黒の塗料が塗布される部分である。なお,本実施の形態では,白い紙面に黒のインク(単色)で印刷を行うことを前提として説明するが,本発明はこれに限定されず,カラー(多色)で印刷を行う場合であっても,同様に本発明を適用可能である。
【0032】
透かし画像形成部1006は,機密情報1004をディジタル化して数値に変換したものをN元符号化(Nは2以上)し,符号語の各シンボルをあらかじめ用意した信号に割り当てる。本実施の形態において,透かし画像形成部1006においてあらかじめ用意した信号は,任意の大きさの矩形領域中にドットを配置することにより任意の2つ以上の仮想的なベクトルを構成し,そのベクトルの内積の違いに対してシンボルを割り当てたものである。透かし画像は,これらの信号がある規則に従って画像上に配置されたものである。
【0033】
透かし入り文書画像合成部1007は,文書画像と透かし画像を重ね合わせて透かし入りの文書画像を作成する。また,出力デバイス1008は,プリンタなどの出力装置であり,透かし入り文書画像を紙媒体に印刷する。文書画像形成部1005,透かし画像形成部1006,透かし入り文書画像合成部1007はプリンタドライバの中の一つの機能として実現されていても良い。
【0034】
印刷文書1009は,元の文書データ1003に対して機密情報1004を埋め込んで印刷されたものであり,物理的に保管・管理される。また,透かし情報検出装置1002が透かし情報埋め込み装置1001に対して遠隔の場所にある場合には,例えば配送などにより,印刷文書1009のやりとりが可能となっている。
【0035】
(透かし情報検出装置1002)
透かし情報検出装置1002は,紙媒体に印刷されている文書を画像として取り込み,埋め込まれている機密情報を復元する装置である。透かし情報検出装置1002は,図1に示したように,入力デバイス1010と,透かし検出部1011とにより構成されている。
【0036】
入力デバイス1010は,スキャナなどの入力装置であり,紙に印刷された文書1009を多値階調のグレイ画像として計算機に取り込む。また,透かし検出部1011は,入力画像に対してフィルタ処理を行い,埋め込まれた信号を検出する。そして,検出された信号からシンボルを復元し,埋め込まれた機密情報を取り出す。
【0037】
以上のように構成される透かし情報埋め込み装置1001及び透かし情報検出装置1002の動作について説明する。まず,図1〜図4を参照しながら,透かし情報埋め込み装置1001の動作について説明する。
【0038】
(文書画像形成部1005)
文書データ1003はフォント情報やレイアウト情報を含むデータであり,ワープロソフト等で作成されるものとする。文書画像形成部1005は,この文書データ1003を基に,文書が紙に印刷された状態の画像をページごとに作成する。この文書画像は白黒の二値画像であり,画像上で白い画素(値が1の画素)は背景であり,黒い画素(値が0の画素)は文字領域(インクが塗布される領域)であるものとする。
【0039】
(透かし画像形成部1006)
機密情報1004は文字,音声,画像などの各種データであり,透かし画像形成部1006ではこの情報から文書画像の背景として重ね合わせる透かし画像を作成する。
【0040】
図2は,透かし画像形成部1006の処理の流れを示す流れ図である。
まず,機密情報1004をN元符号に変換する(ステップS101)。Nは任意であるが,本実施の形態では説明を容易にするためN=2とする。従って,ステップS101で生成される符号は2元符号であり,機密情報1004が0と1のビット列で表現されるものとする。このステップS101ではデータをそのまま符号化しても良いし,データを暗号化したものを符号化しても良い。
【0041】
次いで,符号語の各シンボルに対してドットパターンを割り当てる(ステップS102)。ドットパターンは,数個のドット(黒画素)からなり,これらドットの相対的な位置関係によって定まる固有値を与えることができる。このステップS102では,ドットパターンの固有値と符号語の各シンボル(0,1)とを関連づける。この関連づけについては,さらに後述する。
【0042】
そして,符号化された機密情報1004のビット列に対応するドットパターンを透かし画像上に配置する(ステップS103)。
【0043】
上記ステップS102において,符号語の各シンボルに対して割り当てるドットパターンについて説明する。図3はドットパターンの一例を示す説明図である。
【0044】
ドットパターンの幅と高さをそれぞれSw,Shとする。SwとShは異なっていても良いが,本実施の形態では説明を容易にするためSw=Shとする。長さの単位は画素数であり,図3の例ではSw=Sh=12である。これらの信号が紙面に印刷されたときの大きさは,透かし画像の解像度に依存しており,例えば透かし画像が600dpi(dot per inch:解像度の単位であり,1インチ当たりのドット数)の画像であるとしたならば,図3のドットパターンの幅と高さは,印刷文書上で12/600=0.02(インチ)となる。
【0045】
図3(a)に示したように,ドットパターンは,
・始点ドット2101(座標値(0,0))
・水平基準ドット2102(座標値(Sw/2,0))
・垂直基準ドット2103(座標値(0,Sh/2))
・変調ドット2104(座標値(Sw/2,Sh/2+1))
を含んで構成されている。なお,垂直基準ドット2103は,ドットパターンを文書の背景に密に配置したときの濃度のバランスを保ち,信号検出時の補助とするためのドットである。また,変調ドット2104は,水平基準ドット2102を始点として,始点ドット2101を始点とし水平基準ドット2102を終点とするベクトルに略垂直な方向に位置するように配置する。これら始点ドット2101,水平基準ドット2102,変調ドット2104の相対的な位置関係によって定まる固有値に応じてドットパターンに値を設定する。以下に,固有値について説明する。
【0046】
図3(a)において,始点ドット2101,水平基準ドット2102,変調ドット2104による仮想的な2つのベクトル(変調ベクトル2106,基準ベクトル2105)を設定する。変調ベクトル2106は,変調ドット2104を始点とし始点ドット2101を終点としたベクトルである。基準ベクトル2105は,変調ドット2104を始点とし水平基準ドット2101を終点としたベクトルである。また,基準ベクトルと変調ベクトルのなす角を変調角2104(=θ0)とする。また基準ベクトルVsの大きさvs=|Vs|,変調ベクトルVmの大きさvm=|Vm|とする。
【0047】
本実施の形態では,基準ベクトル2105と変調ベクトル2106の内積によってドットパターンの特徴を表すものとし,これを信号固有値Svと称することにする。なお,ベクトルAとベクトルBの内積A・Bは,
A・B=|A||B|cosθ
ここで,|A|はベクトルAの大きさ,θはベクトルAとベクトルBのなす角で表される。
【0048】
また,ベクトルAとベクトルBの内積は,A=(x0,y0),B=(x1,y1)とするとA・B=x0×x1+y0×y1とも表される。図3の例では始点ドットの座標値2101を(x,y)=(0,0),水平基準ドット2102の座標値を(Sw/2,0),変調ドット2104の座標値を(Sw/2,Sh/2−1)としている。したがって,変調角2207(=θ1),信号固有値Sv0=Vs・Vm=(Sw/2)×(Sw/2−1)である。
【0049】
図3(b)においても同様に基準ベクトル2205と変調ベクトル2206を設定する。ただし,始点ドット2201,水平基準ドット2202の座標値は図3(a)と等しいが,変調ドット2203の座標値を(Sw/2,Sh/2+1)としている。したがって,信号固有値Sv1=Vs・Vm=(Sw/2)×(Sw/2+1)である。
【0050】
以下では図3(a)が信号0を表し,図3(b)が信号1を表すものとする。
【0051】
このように始点ドット,水平基準ドット,変調ドットの相対的な位置関係によって信号固有値を様々に変更することができる。なお,基準ベクトルは変調ドットと垂直基準ドットを結ぶベクトルとしても良い。この場合,変調ドットの座標値として,信号0の場合は(Sw/2−1,Sh/2),信号1の場合は(Sw/2+1,Sh/2)としても良い。
【0052】
さらに,図3の例では信号0と信号1で,“基準ベクトル及び変調ベクトルの大きさ”及び“変調角の大きさ”の両方を変化させることで,2つの信号間の信号固有値を異なるものにしているが,“基準ベクトル及び変調ベクトルの大きさ”または“変調角の大きさ”のどちらか一方のみを変化させて信号固有値を異なるものにしても良い。
【0053】
図2のステップS103では,符号化されたデータのビット列に対応するドットパターンを透かし画像上に配置するが,ビット(シンボル)を表現するために,本実施の形態では,図4に示すように同一のドットパターンをls×ls(個)の矩形状に配置する。これをユニットパターンと称する。図4の例ではls=10としており,信号0を表すドットパターンにより構成されたユニットパターンがシンボル0(図4(a))を,信号1を表すドットパターンにより構成されたユニットパターンがシンボル1(図4(b))を表すものとする。以下,ユニットパターンの画像上での1辺の大きさをLとする。SwとShが等しい場合,L=ls×Swである。
【0054】
図5は,機密情報を透かし画像に埋め込む方法について示した流れ図である。ここでは1枚(1ページ分)の透かし画像に,同じ情報を繰り返し埋め込む場合について説明する。同じ情報を繰り返し埋め込むことにより,透かし画像と文書画像を重ね合わせたときに1つのユニットパターン全体が塗りつぶされるなどして埋め込み情報が消失するような場合でも,埋め込んだ情報を取り出すことが可能である。
【0055】
まず,機密情報1004をN元符号(本実施の形態では2元符号)に変換する(ステップS201)。図2のステップS101と同様である。以下では,符号化された情報をデータ符号と称し,ユニットパターンの組合わせによりデータ符号を表現したものをデータ符号ユニットDuと称する。
【0056】
次いで,データ符号の符号長(ここではビット数)と埋め込みビット数から,1枚の画像にデータ符号ユニットを何度繰り返し埋め込むことができるかを計算する(ステップS202)。1ページ分の透かし画像の中に何ビットの情報量を埋め込むことができるかは,ドットパターンの大きさ,ユニットパターンの大きさ,文書画像の大きさに依存する。信号検出時においては,文書画像の水平方向と垂直方向にいくつの信号を埋め込んだかは,既知として信号検出を行っても良いし,入力装置から入力された画像の大きさと信号ユニットの大きさから逆算しても良い。
【0057】
1ページ分の透かし画像の水平方向にPw個,垂直方向にPh個のユニットパターンが埋め込めるとする。水平方向にPw個,垂直方向にPh個のユニットパターンを「ユニットパターン行列」と称することにする。また,1ページに埋め込むことができるビット数を「埋め込みビット数」と称する。埋め込みビット数はPw×Phである。
【0058】
本実施の形態では,データ符号の符号長を表すビット列(以下,符号長データという)をユニットパターン行列の第1行に挿入するものとする。なお,データ符号の符号長を固定長として符号長データを透かし画像に埋め込まないようにしてもよい。1ページ分の透かし画像の水平方向にPw個,垂直方向にPh個のユニットパターンが埋め込めるとすると,データ符号ユニットを埋め込む回数Dnは,データ符号長をCnとして以下の式で計算される。
【0059】
【数1】

Figure 0003980983
【0060】
ここで剰余をRn(Rn=Cn−(Pw×(Ph−1)))とすると,ユニットパターン行列にはDn回のデータ符号ユニットおよびデータ符号の先頭Rnビット分に相当するユニットパターンを埋め込むことになる。ただし,剰余部分のRnビットは必ずしも埋め込まなくても良い。
【0061】
図6の説明では,ユニットパターン行列のサイズを9×11(11行9列),データ符号長を12(図中で0〜11の番号がついたものがデータ符号の各符号語を表す)とする。
【0062】
ユニットパターン行列への符号長データの埋め込みについて具体的に説明すると,まず,ユニットパターン行列の第1行目に符号長データを埋め込む(ステップS203)。図6の例では符号長を9ビットのデータで表現して1度だけ埋め込んでいる例を説明しているが,ユニットパターン行列の幅Pwが十分大きい場合,データ符号と同様に符号長データを繰り返し埋め込むこともできる。
【0063】
さらに,ユニットパターン行列の第2行以降に,データ符号ユニットを繰り返し埋め込む(ステップS204)。図6で示すようにデータ符号のMSB(most significant bit)またはLSB(least significant bit)から順に行方向に埋め込む。図6の例ではデータ符号ユニットを7回,およびデータ符号の先頭6ビットを埋め込んでいる例を示している。データの埋め込み方法は図6のように行方向に連続になるように埋め込んでも良いし,列方向に連続になるように埋め込んでも良い。
【0064】
以上,透かし画像形成部1006における,透かし画像について説明した。次いで,透かし情報埋め込み装置1001の透かし入り文書画像合成部1007について説明する。
【0065】
(透かし入り文書画像合成部1007)
透かし入り文書画像合成部1007では,文書画像形成部1005で作成した文書画像と,透かし画像形成部1006で作成した透かし画像を重ね合わせる。図7は,透かし入り文書画像の一例を示す説明図である。透かし入り文書画像の各画素の値は,図7に示したように,文書画像と透かし画像の対応する画素値の論理積演算(AND)によって計算する。すなわち,文書画像と透かし画像のどちらかが0(黒)であれば,透かし入り文書画像の画素値は0(黒),それ以外は1(白)となる。
【0066】
透かし入り文書画像は,出力デバイス1008により出力される。
【0067】
以上,透かし情報埋め込み装置1001の動作について説明した。
次いで,図1,及び,図8〜図17を参照しながら,透かし情報検出装置1002の動作について説明する。
【0068】
(透かし検出部1002)
図8は透かし検出部の処理の流れを示す説明図である。
ステップS301ではスキャナなどの入力デバイスによって透かし入り文書画像を透かし情報検出装置1002に入力する。具体的には,計算機のメモリ等に入力する。この画像を入力画像と呼ぶ。入力画像は多値画像であり,以降では256階調のグレイ画像として説明する。また入力画像をスキャナ等で読み込むときの解像度は,上述の透かし情報埋め込み装置1001で作成した透かし入り文書画像と異なっていても良いが,ここでは透かし情報埋め込み装置1001で作成した画像と同じ解像度であるとして説明を行う。またスキャナなどで画像を取り込む際に,紙がスキャナの撮像面の座標軸に対して正確な位置合わせが行われないために透かし埋め込み領域の座標系が入力画像の座標系に対して回転している場合があるが,以降の説明では画像処理による透かし領域の回転補正は行わずに透かし検出を行う。
【0069】
ステップS302では入力画像からドットパターンの検出を行う。ドットパターンの検出の詳細については,図9〜図12を参照しながらさらに後述する。ドットパターンの検出は入力画像全体に対して行う。入力画像のサイズを幅W,高さHとしたとき,入力画像の座標値I(x,y)(x=0〜W−1,y=0〜H−1)に信号0を表すドットパターンが存在すればU(x,y)=−1とし,信号1を表すドットパターンが存在すればU(x,y)=1とする。ドットパターンが存在しない場合はU(x,y)=0とする。ただし,ステップS302においては,U(x,y)(x=0〜W−1,y=0〜H−1)は最初にすべて0で初期化されているものとする。
【0070】
ステップS302では信号の判定結果を格納すると同時に,基準ベクトルの傾きをR(x,y)に格納する。ただし,R(x,y)の値はU(x,y)が0以外の場合のみ,すなわち,ドットパターンが存在した座標のみ有効であるものとする。
【0071】
ステップS303ではU(x,y)およびR(x,y)を元にユニットパターンを検出する(図13で説明)。ユニットパターンの検出の詳細については,図13〜図17を参照しながらさらに後述する。
【0072】
ステップS304ではシンボル列(例えば01100010100・・・)から情報を復元する。情報復号については,図18を参照しながらさらに後述する。
【0073】
以上,図8を参照しながら,本実施の形態にかかる透かし情報検出方法について概説した。次いで,各ステップS302〜S304について,順に詳説する。
【0074】
(ドットパターン検出ステップS302)
図9は,図8のドットパターン検出ステップS302の詳細を示す説明図である,ドットパターン検出ステップS302は,図9に示したように,以下のステップS401〜S404からなる。
【0075】
(始点ドット候補検索ステップS401)
ステップS401では,入力画像を図10に示すようにラスタースキャンすることにより始点ドット候補D1を探索する。透かし画像形成部によって埋め込まれたドット(始点ドット,基準ドット,変調ドット)を検出する方法としては,以下のいずれの方法でも良い。
・入力画像の任意の位置I(x,y)における輝度値があらかじめ定めた閾値T以下であればそれをドットと判定する。
・入力画像の任意の位置I(x,y)における任意のエッジ検出フィルタの出力値があらかじめ定めた閾値T以上であればそれをドットと判定する。
【0076】
(水平基準ドット候補検索ステップS402)
ステップS402では水平基準ドットの候補となるドットを探索する。ここではまず,図11で示すように,探索領域Rを設定する。探索領域Rは始点ドット候補D1を中心とし,半径をそれぞれr1,r2(r1<r2)とする2つの半円,および探索開始軸Asと探索終端軸Aeに囲まれた領域である。探索領域Rは,始点ドット候補D1が真の始点ドットであった場合に,水平基準ドットが存在するであろう範囲を示したものである。r1,r2は埋め込んだドットパターンの基準ベクトルVsの大きさ,および印刷の解像度と画像取り込みの解像度に依存している。
【0077】
探索開始軸Asと探索終端軸Aeはラスタースキャンの際に,元に戻る方向でドットを探索することを防ぐために設定する。これはドットの並びの方向性を保つために必要となる。探索の方向は探索開始軸Asからドットの探索を始め,探索領域R内を時計回りに行うものとする。
【0078】
ステップS402において探索領域R内に新たにドットが見つかった場合,これを水平基準ドット候補D2とする。新たなドットが見つからなかった場合,始点ドット候補D1は真の始点ドットではなかったものとしてステップS401に戻り,再び次の始点ドット候補を探索する。
【0079】
(変調ドット候補検索ステップS403)
ステップS403では,変調ドット候補を検索する。図12で示すように,水平基準ドット候補D2を通り,始点ドット候補D1と水平基準ドット候補D2を結んだ直線と垂直な直線上で,図12の破線矢印で示した探索方向に沿ってステップS402と同様にドットを探索する。探索範囲は水平基準ドット候補D2からの距離が(Sh−1)±Δdおよび(Sh+1)±Δd(Δdはあらかじめ定めた値)の範囲とし,新たなドットが見つかった場合に,これを変調ドット候補D3とする。新たなドットが見つからなかった場合,始点ドット候補D1は真の始点ドットではなかったものとしてステップS401に戻り,再び次の始点ドット候補を探索する。
【0080】
(信号固有値(内積)計算ステップS404)
ステップS404では,変調ドット候補D3と水平基準ドット候補D2を結ぶ基準ベクトルVsと,変調ドット候補D3と始点ドット候補D1を結ぶ変調ベクトルVmによる信号固有値(内積)を計算し,これがSv0±dvまたはSv1±dvの範囲内であれば,ここで検出した3つのドットD1,D2,D3はドットパターンを構成するドットであると判定する。ただし,dvは信号固有値に関する誤差成分であらかじめ定められた値とする。信号固有角がSv0±dvまたはSv1±dvの範囲外であれば,始点ドット候補D1は真の始点ドットではなかったものとしてステップS401に戻り,再び次の始点ドット候補を探索する。
【0081】
(信号判定および信号結果蓄積ステップS405)
ステップS405ではステップS404で求めた信号固有値から,ステップS406により,このドットパターンが信号0であるか信号1であるかを判定する。信号0であればU(x,y)=−1とし,信号1であればU(x,y)=1とする。また,基準ベクトルの傾きをR(x,y)に記録する。
【0082】
以上,ドットパターン検出ステップS302の詳細について説明した。次いで,ユニットパターン検出ステップS303の詳細について説明する。
【0083】
(ユニットパターン検出ステップS303)
図13は,図8のユニットパターン検出ステップS303の詳細を示す説明図である。ユニットパターン検出ステップS303は,図13に示したように,以下のステップS501〜S504からなる。
【0084】
(信号領域の傾き検出ステップS501)
ステップS501では,基準ベクトルの傾きR(x,y)のうち,それに対応するU(x,y)の値が0以外の場合についての平均値Raを計算する。この平均値Raが入力画像に対する信号領域の傾き,例えばスキャナなどの撮像面に対する原稿の傾きであると判定する。以下,傾きRaという。
【0085】
(ユニットパターン判定領域設定ステップS502)
ステップS502ではユニットパターン判定領域の大きさを設定する。ユニットパターンは同じ情報を表すドットパターンをls×ls個ずつ並べたものであるが,信号領域の傾きのため,ラスタースキャンによりユニットパターンの判定を行った場合には,ユニットパターンの周辺部分の信号が,隣接するユニットパターンの信号と混ざり合うことになる(図14のグレーの部分)。したがって,ユニットパターン判定領域の大きさをL×Lより小さ目に設定する。
【0086】
図15はユニットパターン判定領域の大きさの決定方法の例を示している。
図15(a)は入力画像であり,図中の任意のユニットパターンを取り出したものが図15(b)である。図15(b)は一辺がLの正方形を傾きRaだけ回転させたものである。図のように,入力画像の座標系において回転のない矩形状の判定領域を設定する。判定領域はその4つの頂点すべてが回転した状態でのユニットパターンの内部に収まるようにする。図中でdmはマージンであり,dm=0の場合は先の条件(4頂点がすべてユニットパターン内に収まる)を満たす最大の矩形となる。以下では判定領域の一辺の長さをMとする。
【0087】
(判定領域の最適設置位置確定ステップS503)
ステップS503では,判定領域を回転のある格子状に配置し,格子の軸を変動させることによって判定領域の最適な配置を求める。
【0088】
図16は判定領域を格子状に配置した例である。破線で示された直線が格子軸であり,信号埋め込み領域の座標系にしたがって「水平格子軸」と「垂直格子軸」に分類している。水平格子軸は信号領域における水平軸で,隣接する軸間の距離はL(ユニットパターンの大きさ)である。垂直格子軸は信号領域における垂直軸で,隣接する軸間の距離はLである。入力画像の座標系から見た格子軸は,入力画像の水平軸,垂直軸をそれぞれ傾きRaだけ回転させたものであり,隣り合う軸間の距離はL×cos(Ra)である。
【0089】
図のように水平格子軸と垂直格子軸の交点と判定領域の中心が重なるように,判定領域を配置する。また,格子軸の交点のうち最も左上にあるものを「格子軸の始点C(0)」と呼び,入力画像内に設置できるすべての判定領域をC(i),i=0〜Cnとする。C(i)は格子軸の交点の並びを行列とみなしたときに,1行1列,1行2列,・・・,2行1列,2行2列の順であるものとする。
【0090】
次に,Cu(i),i=0〜CnをC(i)に含まれる領域に対応するU(x,y)の値の合計値の絶対値とし,格子軸の始点C(0)の座標が(CX,CY)であったときのCu(i),i=0〜Cnの合計値をPu(CX,CY)と表記する。
【0091】
Cu(i)は各判定領域が,ユニットパターンの中央に配置されたときに最も値が大きくなる。なぜなら,図17で示すように,判定領域が2つ以上のユニットパターンにまたがって設置された場合,対応する領域のU(x,y)の値は+1と−1が混在するため,それらの合計の絶対値は小さくなる。一方,判定領域が1つのユニットパターン内に収まる場合は,対応する領域のU(x,y)の値は,たとえ信号判定エラーがあった場合を考慮しても,+1か−1のどちらかに偏るため,それらの合計の絶対値は大きくなる。
【0092】
従って,CX,CYをそれぞれ±dL/2の範囲で動かした場合のPu(CX,CY)を計算し,これが最大となるCX,CYが判定領域の最適な配置であると判定する。
【0093】
(ユニットパターン判定ステップS504)
ステップS504では,ステップS503で設定した配置におけるC(i),i=0〜Cnにおいて,Cp(i),i=0〜CnをC(i)に含まれる領域に対応するU(x,y)の値の合計とし,Cs(i),i=0〜CnをCp(i)によって判定されたユニットパターンの値とする。
【0094】
Cp(i)が正であれば対応するユニットパターンの値は1であるものとしCs(i)=1とする。また,Cp(i)が負であれば対応するユニットパターンの値は0であるものとしCs(i)=0とする。ただし,Cp(i)が閾値Ts以下であれば,その判定領域は信号埋め込み領域の外にあると判断しCs(i)=−1とする。
【0095】
Cs(i),i=0〜Cnのうち,Cs(i)が負のものを除き,Cs(i)の値を直列に連結してビット列を復元することによって,埋め込まれた情報を取り出す。
【0096】
以上,ユニットパターン検出ステップS303の詳細について説明した。再び,図8の流れ図に戻り,以降のステップS304について説明する。ステップS304では,ユニットパターン行列のシンボルを連結してデータ符号を再構成し,元の情報を復元する。
【0097】
(情報復号ステップS304)
図18は情報復元の一例を示す説明図である。情報復元ステップS304は以下の通りである。
▲1▼各ユニットパターンに埋め込まれているシンボルを検出する(図18▲1▼)。▲2▼シンボルを連結してデータ符号を復元する(図18▲2▼)。
▲3▼データ符号を復号して埋め込まれた情報を取り出す(図18▲3▼)。
【0098】
本実施の形態ではデータ符号を繰り返し埋め込む場合について説明したが,データを符号化する際に誤り訂正符号などを用いることにより,データ符号ユニットの繰り返しを行わないような方法も実現できる。
【0099】
以上説明したように,本実施の形態によれば,数個の小さなドット(始点ドット2101,水平基準ドット2105,変調ドット2104,垂直基準ドット2103)から構成されるドットパターンを埋め込むことで,印刷文書(紙)1009の背景に視覚的に違和感のない方法で情報を埋め込むことができる。そして,変調ドットを始点,始点ドット,水平基準ドットを終点とした仮想的な2つのベクトルの内積の違い(ベクトルのなす角度およびベクトルの大きさの違い)によって情報を表現している。かかる方法によれば,信号検出時に紙の回転などで入力画像に歪みがある場合でも,仮想ベクトル同士のなす角や仮想ベクトル同士の大きさの違いなどを検出するだけで信号の復元を行うことが可能となり,画像の回転補正を行う必要がない。このようにして,信号検出時の処理量を削減することができる。
【0100】
以上,添付図面を参照しながら本発明にかかる透かし情報埋め込み方法,透かし情報検出方法,透かし情報埋め込み装置,及び,透かし情報検出装置の好適な実施形態について説明したが,本発明はかかる例に限定されない。当業者であれば,特許請求の範囲に記載された技術的思想の範疇内において各種の変更例または修正例に想到し得ることは明らかであり,それらについても当然に本発明の技術的範囲に属するものと了解される。
【0101】
【発明の効果】
以上説明したように,本発明によれば,印刷文書(紙)の背景に視覚的に違和感のない方法で情報を埋め込む場合において,情報を正確に取り出すことが可能である。また本発明によれば,信号検出時に紙の回転などで入力画像に歪みがある場合でも信号の復元を行うことができ,画像の回転補正を行う必要がなく,これにより,信号検出時の処理量を削減することが可能である。
【図面の簡単な説明】
【図1】透かし情報埋め込み装置及び透かし情報検出装置の構成を示す説明図である。
【図2】透かし画像形成部1005の処理の流れを示す流れ図である。
【図3】ドットパターンの例を示す説明図である。
【図4】ユニットパターンの説明図である。
【図5】機密情報を透かし画像に埋め込む方法について示した流れ図である。
【図6】透かし検出部1011の処理の流れを示す流れ図である。
【図7】透かし入り文書画像の一例を示す説明図である。
【図8】透かし検出部1011の処理の流れを示す説明図である。
【図9】ドットパターン検出の処理の流れを示す説明図である。
【図10】図9の始点ドット候補選択ステップS401の説明図である。
【図11】図9の水平基準ドット候補検索ステップS402の説明図である。
【図12】図9の変調ドット候補検索ステップS403の説明図である。
【図13】図8のユニットパターン検出ステップS303の詳細な説明図である。
【図14】図13のユニットパターン判定領域設定ステップS502の説明図である。
【図15】図13のユニットパターン判定領域設定ステップS502の説明図であり,(a)は入力画像であり,(b)は任意のユニットパターンを取り出したものである。
【図16】図13の判定領域の最適設置位置確定ステップS503の説明図である。
【図17】図13の判定領域の最適設置位置確定ステップS503の説明図である。
【図18】情報復元の一例を示す説明図である
【符号の説明】
1001 透かし情報埋め込み装置
1002 透かし情報検出装置
1003 文書データ
1004 機密情報
1005 文書画像形成部
1006 透かし画像形成部
1007 透かし入り文書画像合成部
1008 出力デバイス
1009 印刷文書
1010 入力デバイス
1011 透かし検出部[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a method for adding confidential information to a document image in a format other than characters, and a technique for detecting confidential information from a printed document containing confidential information.
[0002]
[Prior art]
“Digital watermarking” that embeds information to prevent copying / counterfeiting and confidential information in images and document data in a form that is invisible to the human eye is based on the premise that all storage and data transfer are performed on electronic media. Since the information embedded by the watermark is not deteriorated or lost, the information can be reliably detected. Similarly, documents printed on paper media cannot be easily tampered with in a form that is not visually unsightly other than text to prevent unauthorized tampering and copying. There is a need for a method for embedding confidential information in a printed document.
[0003]
The following techniques are known as information embedding methods for black and white binary documents that are most widely used as printed materials.
[0004]
[1] Japanese Patent Laid-Open No. 2001-78006 “Method and apparatus for embedding / detecting watermark information in a monochrome binary document image”
A minimum rectangle surrounding an arbitrary character string is divided into several blocks and divided into two groups (group 1 and group 2) (the number of groups may be three or more). For example, when the signal is 1, the feature amount in the block of group 1 is increased and the feature amount in each block of group 2 is decreased. When the signal is 0, the reverse operation is performed. The feature amount in the block includes the number of pixels in the character area, the thickness of the character, and the distance to the point where the block first hits the character area.
[0005]
[2] JP 2001-53954 A "Information embedding device, information reading device, digital watermark system, information embedding method, information reading method, and recording medium"
The width and height of the minimum rectangle that encloses one character are defined as the feature amount for the character, and the symbol is represented by a classification pattern of the magnitude relationship of the feature amount between two or more characters. For example, six feature quantities can be defined from three characters, and combinations of patterns of these magnitude relationships are enumerated, these combinations are classified into two grooves, and a symbol is given to each. If the information to be embedded is “0” and the combination pattern of the feature amounts of the character selected to represent this is “1”, one of the six feature amounts is expanded in the character area, etc. To change. The pattern to be changed is selected so that the amount of change is minimized.
[0006]
[3] Japanese Patent Laid-Open No. 9-179494 “Confidential Information Recording Method”
Assume that printing is performed with a printer of 400 dpi or more. Information is digitized and information is expressed by the distance (number of dots) between the reference point mark and the position determination mark.
[0007]
[4] Japanese Patent Laid-Open No. 10-200743 “Document Processing Device”
Information is expressed by whether or not the screen lines of the line screen (special screen composed of fine parallel lines) are moved backward.
[0008]
[Patent Document 1]
JP 2001-78006 A
[Patent Document 2]
JP 2001-53954 A
[Patent Document 3]
JP 9-179494 A
[Patent Document 4]
Japanese Patent Laid-Open No. 10-200743
[0009]
[Problems to be solved by the invention]
However, in the known techniques [1] and [2], the font and layout are changed because the change is made to the pixels constituting the characters of the document image, the character spacing, and the line spacing. In addition, in the above known techniques [3] and [4], when detecting, precise detection processing for each pixel of an input image read from an input device such as a scanner is required. When noise is added at the time of reading, the information detection accuracy is greatly affected.
[0010]
As described above, in the known techniques [1] to [4], when the printed document is input to the computer again by an input device such as a scanner and the embedded confidential information is detected, the smear or input of the printed document is detected. There is a problem that it is difficult to accurately extract secret information because many noise components are included in the input image due to image deformation such as rotation that occurs during the process.
[0011]
The present invention has been made in view of the above-mentioned problems of the conventional watermark information embedding / detection technique, and an object of the present invention is to provide new and improved watermark information capable of accurately extracting secret information. To provide an embedding method, a watermark information detecting method, a watermark information embedding device, and a watermark information detecting device.
[0012]
Furthermore, another object of the present invention is to restore a signal even when the input image is distorted due to paper rotation or the like at the time of signal detection, and it is not necessary to perform image rotation correction. It is to provide a new and improved watermark information embedding method, watermark information detecting method, watermark information embedding device, and watermark information detecting device capable of reducing the amount of processing at the time.
[0013]
[Means for Solving the Problems]
In order to solve the above problems, according to a first aspect of the present invention, dots are regularly arranged as a background of a document, dot patterns having different arrangement rules are inserted therein, and the dot pattern arrangement rules are defined. A watermark information embedding method for providing information is provided. In the watermark information embedding method of the present invention, the dot pattern includes at least the first, second, and third dots, and depends on the relative positional relationship between the first, second, and third dots. A value is set for the dot pattern according to a fixed eigenvalue, the dot pattern having the same value is repeatedly arranged in an information area of a predetermined shape, and one bit of the information is set in the entire information area It is characterized by.
[0014]
The eigenvalue determined by the relative positional relationship between the first, second, and third dots is, for example, a vector having the third dot as a start point and the first dot as an end point, and the third dot. It can be an inner product with a vector starting from the second dot and ending at the second dot.
[0015]
According to such a method, by embedding a dot pattern composed of several small dots, information can be embedded in a document (paper) background in a visually uncomfortable manner. Then, information is expressed by the difference in inner product (difference in the angle formed by the vector and the size of the vector) between two virtual vectors starting from one of the dots and ending at two. That is, the information can be N-ary encoded and inner products can be assigned corresponding to each codeword. According to this method, even if the input image is distorted due to paper rotation at the time of signal detection, it is possible to restore the signal only by detecting the angle between the virtual vectors and the size difference between the virtual vectors. This eliminates the need for image rotation correction. In this way, the amount of processing at the time of signal detection can be reduced.
[0016]
The third dot may be positioned in a direction substantially perpendicular to a vector starting from the second dot, starting from the first dot, and ending at the second dot. . As will be described later, the third dot can be easily searched for information detection.
[0017]
The dot pattern further includes a fourth dot located in a direction substantially perpendicular to a vector starting from the first dot, starting from the first dot, and ending at the second dot. can do. When the dot pattern is densely arranged on the background of the document, the density balance can be maintained, and it can be used as an aid when detecting the dot pattern. That is, a vector having the first dot as a start point and the second dot as an end point can be used as a horizontal reference vector, and a vector having the first dot as a start point and the fourth dot as an end point can be used as a vertical reference vector. .
[0018]
In the present invention, dot patterns set with the same value are repeatedly arranged in an information area having a predetermined shape, and 1-bit information is set in the entire information area. As an example, there is a rectangle (including a square). The information area may be the same size as the dot pattern, and only one dot pattern may be arranged in one information area.
[0019]
In order to solve the above problem, according to a second aspect of the present invention, there is provided a watermark information detection method for detecting information from a document printed by the watermark information embedding method according to the first aspect of the present invention. Is done. The watermark information detection method of the present invention is characterized by including the following steps.
(Step 1) The document is converted into image data, and first, second, and third dot candidate points are searched.
(Step 2) An eigenvalue determined by a relative positional relationship between the first, second, and third dot candidate points and an eigenvalue determined by a relative positional relationship between the first, second, and third dots. If they are substantially the same, the first, second and third dot candidate points are determined to be the first, second and third dots constituting the dot pattern.
(Step 3) One bit of the information set in the information area is detected by majority of the values set in the dot pattern in the information area.
[0020]
The eigenvalue determined by the relative positional relationship between the first, second, and third dot candidate points in (Step 1) is, for example, the third dot candidate point as the start point and the first dot candidate point as the end point. And a vector having the third dot candidate point as a start point and the second dot candidate point as an end point.
[0021]
The search for the first, second, and third dot candidate points in (Step 1) includes, for example, the following steps.
(Step 1-1) The first dot candidate point is searched.
(Step 1-2) When the first dot candidate point is found, a search circle having a predetermined radius is set around the first dot candidate point, and the second dot is set on the search circle. Search for candidate points. Here, the search circle is a concept including a ring-shaped region having a predetermined width surrounded by two circles having different radii.
(Step 1-3) When the second dot candidate point is found, the second dot candidate point is set as the start point, the first dot candidate point is set as the start point, and the second dot candidate point is set as the end point. The third dot candidate point is searched in a direction substantially perpendicular to the vector to be performed.
[0022]
According to such a watermark information detection method, information embedded by the watermark information embedding method having the excellent effect can be easily and reliably detected.
[0023]
Furthermore, according to the present invention, it is possible to perform tilt correction necessary when converting the document input in the above (step 1) into image data. For example, in each dot pattern detected in the entire image data, it is determined that the average value of the vector gradient starting from the first dot and ending at the second dot is the gradient of the image data, It is possible to correct the inclination of the image data.
[0024]
Furthermore, according to the present invention, for detecting one bit of information set in the information area in the above (step 3), for example, the following method can be adopted in order to increase detection accuracy.
(Step 3-1) A coordinate system corresponding to the inclination of the image data is set.
(Step 3-2) A grid-like horizontal grid axis and vertical grid axis are set along the vertical axis and the horizontal axis of the coordinate system, and the adjacent interval is made substantially the same as the size of the information area in the coordinate system.
(Step 3-3) A sufficiently small determination area is set so that the intersection of the horizontal grid axis and the vertical grid axis is the center and does not cross the boundary between adjacent information areas.
(Step 3-4) One bit of the information set in the information area including the determination area is detected by majority decision of the value of the dot pattern in the determination area.
[0025]
Further, the setting of the horizontal grid axis and the vertical grid axis in (Step 3-1) is performed by the following steps, for example.
(Step 3-1-1) When the dot pattern included in the determination region represents the first value in the determination region arrangement determined by the arbitrarily set horizontal lattice axis and vertical lattice axis, When a value of 2 is represented, +1 is added as the value of the determination region.
(Step 3-1-2) A value obtained by adding the absolute values of the total values for the respective dot patterns in the determination region for all the determination regions is set as an evaluation value for the horizontal lattice axis and the vertical lattice axis set here.
(Step 3-1-3) The position where the evaluation value is the largest among the positions of the horizontal grid axis and the vertical grid axis which are slightly changed is set as the horizontal grid axis and the vertical grid axis.
[0026]
The present invention also provides a watermark information embedding device that can implement the watermark information embedding method according to the first aspect of the present invention.
[0027]
Furthermore, according to the present invention, there is provided a watermark information detecting apparatus capable of realizing the watermark information detecting method according to the second aspect of the present invention.
[0028]
DETAILED DESCRIPTION OF THE INVENTION
Exemplary embodiments of a watermark information embedding method, a watermark information detecting method, a watermark information embedding device, and a watermark information detecting device according to the present invention will be described below in detail with reference to the accompanying drawings. In the present specification and drawings, components having substantially the same functional configuration are denoted by the same reference numerals, and redundant description is omitted.
[0029]
FIG. 1 is an explanatory diagram showing the configuration of a watermark information embedding device and a watermark information detection device according to this embodiment.
[0030]
(Watermark information embedding device 1001)
The watermark information embedding device 1001 is a device that forms a document image based on document data and confidential information embedded in the document and prints it on a paper medium. As shown in FIG. 1, the watermark information embedding device 1001 includes a document image forming unit 1005, a watermark image forming unit 1006, a watermarked document image synthesizing unit 1007, and an output device 1008. Document data 1003 is data created by a document creation tool or the like. The confidential information 1004 is information (character string, image, audio data) to be embedded in a paper medium in a format other than characters.
[0031]
The document image forming unit 1006 creates an image in a state where the document data 1003 is printed on a paper surface. Specifically, the white pixel region in the document image is a portion where nothing is printed, and the black pixel region is a portion where black paint is applied. In this embodiment, the description will be made on the assumption that printing is performed on white paper with black ink (single color). However, the present invention is not limited to this, and printing is performed in color (multicolor). However, the present invention can be similarly applied.
[0032]
The watermark image forming unit 1006 digitizes the confidential information 1004 and converts it into a numerical value, performs N-element coding (N is 2 or more), and assigns each symbol of the code word to a signal prepared in advance. In the present embodiment, the signal prepared in advance in the watermark image forming unit 1006 constitutes two or more virtual vectors by arranging dots in a rectangular area of an arbitrary size, Symbols are assigned for differences in inner products. A watermark image is one in which these signals are arranged on the image according to a certain rule.
[0033]
The watermarked document image composition unit 1007 creates a watermarked document image by superimposing the document image and the watermark image. The output device 1008 is an output device such as a printer, and prints a watermarked document image on a paper medium. The document image forming unit 1005, the watermark image forming unit 1006, and the watermarked document image synthesizing unit 1007 may be realized as one function in the printer driver.
[0034]
The print document 1009 is printed by embedding confidential information 1004 in the original document data 1003, and is physically stored and managed. Further, when the watermark information detecting device 1002 is located at a location remote from the watermark information embedding device 1001, the print document 1009 can be exchanged by, for example, delivery.
[0035]
(Watermark information detection apparatus 1002)
The watermark information detection device 1002 is a device that takes in a document printed on a paper medium as an image and restores embedded confidential information. As shown in FIG. 1, the watermark information detection apparatus 1002 includes an input device 1010 and a watermark detection unit 1011.
[0036]
The input device 1010 is an input device such as a scanner, and captures a document 1009 printed on paper as a multi-value gray image in a computer. In addition, the watermark detection unit 1011 performs a filtering process on the input image and detects an embedded signal. Then, the symbol is restored from the detected signal, and the embedded confidential information is extracted.
[0037]
Operations of the watermark information embedding device 1001 and the watermark information detection device 1002 configured as described above will be described. First, the operation of the watermark information embedding device 1001 will be described with reference to FIGS.
[0038]
(Document Image Forming Unit 1005)
Document data 1003 is data including font information and layout information, and is created by word processing software or the like. Based on the document data 1003, the document image forming unit 1005 creates an image of the document printed on paper for each page. This document image is a black and white binary image. On the image, white pixels (pixels having a value of 1) are backgrounds, and black pixels (pixels having a value of 0) are character regions (regions to which ink is applied). It shall be.
[0039]
(Watermark image forming unit 1006)
The confidential information 1004 is various data such as characters, sounds, and images, and the watermark image forming unit 1006 creates a watermark image to be superimposed as a background of the document image from this information.
[0040]
FIG. 2 is a flowchart showing a processing flow of the watermark image forming unit 1006.
First, the confidential information 1004 is converted into an N-element code (step S101). N is arbitrary, but in the present embodiment, N = 2 for ease of explanation. Therefore, the code generated in step S101 is a binary code, and the confidential information 1004 is expressed by a bit string of 0 and 1. In this step S101, the data may be encoded as it is, or the encrypted data may be encoded.
[0041]
Next, a dot pattern is assigned to each symbol of the code word (step S102). A dot pattern consists of several dots (black pixels), and can give an eigenvalue determined by the relative positional relationship of these dots. In this step S102, the unique value of the dot pattern is associated with each symbol (0, 1) of the code word. This association will be further described later.
[0042]
Then, a dot pattern corresponding to the encoded bit string of the confidential information 1004 is arranged on the watermark image (step S103).
[0043]
The dot pattern assigned to each symbol of the code word in step S102 will be described. FIG. 3 is an explanatory diagram showing an example of a dot pattern.
[0044]
Let the width and height of the dot pattern be Sw and Sh, respectively. Sw and Sh may be different, but in the present embodiment, Sw = Sh is set for ease of explanation. The unit of length is the number of pixels. In the example of FIG. 3, Sw = Sh = 12. The size when these signals are printed on the paper depends on the resolution of the watermark image. For example, the watermark image is an image of 600 dpi (dot per inch: unit of resolution, number of dots per inch). 3, the width and height of the dot pattern in FIG. 3 is 12/600 = 0.02 (inch) on the printed document.
[0045]
As shown in FIG. 3A, the dot pattern is
Start point dot 2101 (coordinate value (0, 0))
Horizontal reference dot 2102 (coordinate value (Sw / 2, 0))
Vertical reference dot 2103 (coordinate value (0, Sh / 2))
Modulation dot 2104 (coordinate values (Sw / 2, Sh / 2 + 1))
It is comprised including. The vertical reference dot 2103 is a dot for maintaining the balance of the density when the dot pattern is densely arranged on the background of the document and for assisting in signal detection. Further, the modulation dot 2104 is arranged so as to be positioned in a direction substantially perpendicular to a vector having the horizontal reference dot 2102 as the start point, the start point dot 2101 as the start point, and the horizontal reference dot 2102 as the end point. Values are set in the dot pattern in accordance with the eigenvalues determined by the relative positional relationship between the start point dot 2101, the horizontal reference dot 2102, and the modulation dot 2104. The eigenvalue will be described below.
[0046]
In FIG. 3A, two virtual vectors (modulation vector 2106 and reference vector 2105) based on the start point dot 2101, horizontal reference dot 2102, and modulation dot 2104 are set. The modulation vector 2106 is a vector having the modulation dot 2104 as a start point and the start point dot 2101 as an end point. The reference vector 2105 is a vector having the modulation dot 2104 as a start point and the horizontal reference dot 2101 as an end point. In addition, an angle formed by the reference vector and the modulation vector is a modulation angle 2104 (= θ0). Further, it is assumed that the magnitude of the reference vector Vs is vs = | Vs |, and the magnitude of the modulation vector Vm is vm = | Vm |.
[0047]
In this embodiment, the dot pattern feature is expressed by the inner product of the reference vector 2105 and the modulation vector 2106, and this is referred to as a signal eigenvalue Sv. The inner product A / B of vector A and vector B is
A · B = | A || B | cos θ
Here, | A | is represented by the magnitude of vector A, and θ is represented by the angle formed by vector A and vector B.
[0048]
The inner product of the vector A and the vector B is also expressed as A · B = x0 × x1 + y0 × y1, where A = (x0, y0) and B = (x1, y1). In the example of FIG. 3, the coordinate value 2101 of the start point dot is (x, y) = (0, 0), the coordinate value of the horizontal reference dot 2102 is (Sw / 2, 0), and the coordinate value of the modulation dot 2104 is (Sw / 2, Sh / 2-1). Therefore, the modulation angle 2207 (= θ1) and the signal eigenvalue Sv0 = Vs · Vm = (Sw / 2) × (Sw / 2-1).
[0049]
Similarly in FIG. 3B, the reference vector 2205 and the modulation vector 2206 are set. However, the coordinate values of the start point dot 2201 and the horizontal reference dot 2202 are the same as those in FIG. 3A, but the coordinate value of the modulation dot 2203 is (Sw / 2, Sh / 2 + 1). Therefore, the signal eigenvalue Sv1 = Vs · Vm = (Sw / 2) × (Sw / 2 + 1).
[0050]
In the following, it is assumed that FIG. 3A represents signal 0 and FIG.
[0051]
In this way, the signal eigenvalue can be variously changed according to the relative positional relationship of the start point dot, the horizontal reference dot, and the modulation dot. The reference vector may be a vector connecting the modulation dot and the vertical reference dot. In this case, the coordinate value of the modulation dot may be (Sw / 2-1, Sh / 2) for signal 0 and (Sw / 2 + 1, Sh / 2) for signal 1.
[0052]
Further, in the example of FIG. 3, the signal eigenvalue between the two signals is changed by changing both “the size of the reference vector and the modulation vector” and “the size of the modulation angle” between the signal 0 and the signal 1. However, the signal eigenvalue may be made different by changing only one of “the size of the reference vector and the modulation vector” or “the size of the modulation angle”.
[0053]
In step S103 of FIG. 2, a dot pattern corresponding to the bit string of the encoded data is arranged on the watermark image. In this embodiment, in order to express bits (symbols), as shown in FIG. The same dot pattern is arranged in a rectangular shape of ls × ls (pieces). This is called a unit pattern. In the example of FIG. 4, ls = 10, the unit pattern constituted by the dot pattern representing signal 0 is symbol 0 (FIG. 4A), and the unit pattern constituted by the dot pattern representing signal 1 is symbol 1. (FIG. 4B) shall be represented. Hereinafter, the size of one side on the unit pattern image is L. When Sw and Sh are equal, L = ls × Sw.
[0054]
FIG. 5 is a flowchart showing a method for embedding confidential information in a watermark image. Here, a case where the same information is repeatedly embedded in one (one page) watermark image will be described. By repeatedly embedding the same information, it is possible to take out the embedded information even when the embedded information disappears due to, for example, the entire unit pattern being filled when the watermark image and the document image are superimposed. .
[0055]
First, the confidential information 1004 is converted into an N-ary code (a binary code in the present embodiment) (step S201). This is the same as step S101 in FIG. Hereinafter, the encoded information is referred to as a data code, and the data code expressed by a combination of unit patterns is referred to as a data code unit Du.
[0056]
Next, based on the code length of the data code (here, the number of bits) and the number of embedded bits, how many times the data code unit can be embedded in one image is calculated (step S202). The number of bits of information that can be embedded in a watermark image for one page depends on the size of the dot pattern, the size of the unit pattern, and the size of the document image. At the time of signal detection, the number of signals embedded in the horizontal and vertical directions of the document image may be detected as known, or may be detected based on the size of the image input from the input device and the size of the signal unit. You may calculate backward.
[0057]
It is assumed that Pw unit patterns in a horizontal direction and Ph units in a vertical direction can be embedded in a watermark image for one page. The unit patterns of Pw in the horizontal direction and Ph in the vertical direction are referred to as “unit pattern matrix”. In addition, the number of bits that can be embedded in one page is referred to as the “number of embedded bits”. The number of embedded bits is Pw × Ph.
[0058]
In the present embodiment, a bit string representing the code length of a data code (hereinafter referred to as code length data) is inserted into the first row of the unit pattern matrix. The code length of the data code may be fixed and the code length data may not be embedded in the watermark image. Assuming that Pw unit patterns in the horizontal direction and Ph units in the vertical direction can be embedded in a watermark image for one page, the number Dn of embedding data code units is calculated by the following equation with the data code length as Cn.
[0059]
[Expression 1]
Figure 0003980983
[0060]
Here, assuming that the remainder is Rn (Rn = Cn− (Pw × (Ph−1))), the unit pattern matrix is embedded with a data pattern unit of Dn times and a unit pattern corresponding to the first Rn bits of the data code. become. However, the Rn bit of the remainder part does not necessarily have to be embedded.
[0061]
In the description of FIG. 6, the size of the unit pattern matrix is 9 × 11 (11 rows and 9 columns), and the data code length is 12 (numbers 0 to 11 in the figure indicate each codeword of the data code). And
[0062]
Specifically, the embedding of the code length data in the unit pattern matrix will be described. First, the code length data is embedded in the first row of the unit pattern matrix (step S203). In the example of FIG. 6, the code length is expressed by 9-bit data and is described as being embedded only once. However, if the unit pattern matrix width Pw is sufficiently large, It can be embedded repeatedly.
[0063]
Further, the data code unit is repeatedly embedded in the second and subsequent rows of the unit pattern matrix (step S204). As shown in FIG. 6, the MSB (most significant bit) or LSB (least significant bit) of the data code is sequentially embedded in the row direction. The example of FIG. 6 shows an example in which the data code unit is embedded seven times and the first 6 bits of the data code are embedded. The data embedding method may be embedded so as to be continuous in the row direction as shown in FIG. 6, or may be embedded so as to be continuous in the column direction.
[0064]
The watermark image in the watermark image forming unit 1006 has been described above. Next, the watermarked document image composition unit 1007 of the watermark information embedding device 1001 will be described.
[0065]
(Watermarked document image composition unit 1007)
A watermarked document image composition unit 1007 superimposes the document image created by the document image forming unit 1005 and the watermark image created by the watermark image forming unit 1006. FIG. 7 is an explanatory diagram showing an example of a watermarked document image. As shown in FIG. 7, the value of each pixel of the watermarked document image is calculated by a logical product operation (AND) of the corresponding pixel values of the document image and the watermark image. That is, if either the document image or the watermark image is 0 (black), the pixel value of the watermarked document image is 0 (black), otherwise 1 (white).
[0066]
The watermarked document image is output by the output device 1008.
[0067]
The operation of the watermark information embedding device 1001 has been described above.
Next, the operation of the watermark information detection apparatus 1002 will be described with reference to FIGS. 1 and 8 to 17.
[0068]
(Watermark detection unit 1002)
FIG. 8 is an explanatory diagram showing the flow of processing of the watermark detection unit.
In step S301, a watermarked document image is input to the watermark information detection apparatus 1002 by an input device such as a scanner. Specifically, it is input to the memory of the computer. This image is called an input image. The input image is a multi-valued image and will be described as a gray image with 256 gradations. The resolution when the input image is read by a scanner or the like may be different from the watermarked document image created by the watermark information embedding device 1001 described above, but here the resolution is the same as the image created by the watermark information embedding device 1001. The description will be given assuming that there is. In addition, when the image is captured by a scanner or the like, the coordinate system of the watermark embedding area is rotated with respect to the coordinate system of the input image because the paper is not accurately aligned with the coordinate axis of the imaging surface of the scanner. In some cases, the watermark detection is performed without performing the rotation correction of the watermark area by image processing in the following description.
[0069]
In step S302, a dot pattern is detected from the input image. Details of the dot pattern detection will be described later with reference to FIGS. The dot pattern is detected for the entire input image. When the size of the input image is width W and height H, the dot pattern representing the signal 0 in the coordinate value I (x, y) (x = 0 to W−1, y = 0 to H−1) of the input image U (x, y) = − 1 if there is a dot pattern, and U (x, y) = 1 if a dot pattern representing signal 1 exists. If there is no dot pattern, U (x, y) = 0. However, in step S302, U (x, y) (x = 0 to W-1, y = 0 to H-1) is initially initialized with all zeros.
[0070]
In step S302, the signal determination result is stored, and at the same time, the gradient of the reference vector is stored in R (x, y). However, the value of R (x, y) is valid only when U (x, y) is other than 0, that is, only the coordinates where the dot pattern exists are valid.
[0071]
In step S303, a unit pattern is detected based on U (x, y) and R (x, y) (described in FIG. 13). Details of the unit pattern detection will be described later with reference to FIGS.
[0072]
In step S304, information is restored from a symbol string (for example, 01100010100...). Information decoding will be further described later with reference to FIG.
[0073]
The watermark information detection method according to the present embodiment has been outlined above with reference to FIG. Next, each step S302 to S304 will be described in detail.
[0074]
(Dot pattern detection step S302)
FIG. 9 is an explanatory diagram showing details of the dot pattern detection step S302 of FIG. 8. As shown in FIG. 9, the dot pattern detection step S302 includes the following steps S401 to S404.
[0075]
(Starting point candidate search step S401)
In step S401, the starting point candidate D1 is searched by raster scanning the input image as shown in FIG. Any of the following methods may be used as a method for detecting the dots (start point dots, reference dots, modulation dots) embedded by the watermark image forming unit.
If the luminance value at an arbitrary position I (x, y) of the input image is equal to or less than a predetermined threshold value T, it is determined as a dot.
If the output value of an arbitrary edge detection filter at an arbitrary position I (x, y) of the input image is equal to or greater than a predetermined threshold T, it is determined as a dot.
[0076]
(Horizontal reference dot candidate search step S402)
In step S402, a candidate dot for a horizontal reference dot is searched. Here, first, a search area R is set as shown in FIG. The search area R is an area surrounded by two semicircles having a radius of r1 and r2 (r1 <r2), and a search start axis As and a search end axis Ae, centered on the starting point candidate D1. The search area R indicates a range where a horizontal reference dot will exist when the start point candidate D1 is a true start point dot. r1 and r2 depend on the size of the reference vector Vs of the embedded dot pattern, the printing resolution, and the image capturing resolution.
[0077]
The search start axis As and the search end axis Ae are set in order to prevent searching for dots in the return direction during raster scanning. This is necessary in order to maintain the direction of dot arrangement. The search direction is such that a search for a dot is started from the search start axis As and the search region R is clockwise.
[0078]
If a new dot is found in the search region R in step S402, this is set as the horizontal reference dot candidate D2. If no new dot is found, the start point candidate D1 is determined not to be a true start point dot, and the process returns to step S401 to search for the next start point candidate again.
[0079]
(Modulation dot candidate search step S403)
In step S403, a modulation dot candidate is searched. As shown in FIG. 12, on the straight line passing through the horizontal reference dot candidate D2 and perpendicular to the straight line connecting the start point dot candidate D1 and the horizontal reference dot candidate D2, a step is performed along the search direction indicated by the dashed arrow in FIG. A dot is searched for in the same manner as in S402. The search range is a range in which the distance from the horizontal reference dot candidate D2 is (Sh-1) ± Δd and (Sh + 1) ± Δd (Δd is a predetermined value), and when a new dot is found, this is used as a modulation dot. Let it be candidate D3. If no new dot is found, the start point candidate D1 is determined not to be a true start point dot, and the process returns to step S401 to search for the next start point candidate again.
[0080]
(Signal eigenvalue (inner product) calculation step S404)
In step S404, a signal eigenvalue (inner product) is calculated based on the reference vector Vs connecting the modulation dot candidate D3 and the horizontal reference dot candidate D2 and the modulation vector Vm connecting the modulation dot candidate D3 and the start point dot candidate D1, and this is calculated as Sv0 ± dv or If it is within the range of Sv1 ± dv, it is determined that the three dots D1, D2 and D3 detected here are dots constituting a dot pattern. However, dv is a value determined in advance as an error component related to the signal eigenvalue. If the signal intrinsic angle is outside the range of Sv0 ± dv or Sv1 ± dv, it is determined that the start point dot candidate D1 is not a true start point dot, and the process returns to step S401 to search for the next start point dot candidate again.
[0081]
(Signal determination and signal result accumulation step S405)
In step S405, it is determined from the signal eigenvalue obtained in step S404 whether the dot pattern is signal 0 or signal 1 in step S406. If the signal is 0, U (x, y) = − 1, and if the signal is 1, U (x, y) = 1. Also, the slope of the reference vector is recorded in R (x, y).
[0082]
The details of the dot pattern detection step S302 have been described above. Next, details of the unit pattern detection step S303 will be described.
[0083]
(Unit pattern detection step S303)
FIG. 13 is an explanatory diagram showing details of the unit pattern detection step S303 of FIG. The unit pattern detection step S303 includes the following steps S501 to S504 as shown in FIG.
[0084]
(Signal Area Inclination Detection Step S501)
In step S501, an average value Ra is calculated for the case where the value of U (x, y) corresponding to the slope R (x, y) of the reference vector is other than 0. The average value Ra is determined to be the inclination of the signal area with respect to the input image, for example, the inclination of the document with respect to the imaging surface such as a scanner. Hereinafter, it is referred to as slope Ra.
[0085]
(Unit pattern determination area setting step S502)
In step S502, the size of the unit pattern determination area is set. The unit pattern is a pattern in which ls × ls dot patterns representing the same information are arranged one by one. However, when the unit pattern is determined by raster scan due to the inclination of the signal area, the signal of the peripheral part of the unit pattern However, it is mixed with the signal of the adjacent unit pattern (gray portion in FIG. 14). Therefore, the size of the unit pattern determination area is set smaller than L × L.
[0086]
FIG. 15 shows an example of a method for determining the size of the unit pattern determination area.
FIG. 15A shows an input image, and FIG. 15B shows an arbitrary unit pattern extracted from the figure. FIG. 15B shows a square having an L side rotated by an inclination Ra. As shown in the figure, a rectangular determination area without rotation in the coordinate system of the input image is set. The determination area is set so as to be within the unit pattern in a state where all the four vertices are rotated. In the figure, dm is a margin, and when dm = 0, it is the largest rectangle that satisfies the previous condition (all four vertices fit within the unit pattern). Hereinafter, the length of one side of the determination area is M.
[0087]
(Determination area optimum installation position determination step S503)
In step S503, the determination area is arranged in a rotating grid, and the optimal arrangement of the determination area is obtained by changing the axis of the grid.
[0088]
FIG. 16 shows an example in which the determination areas are arranged in a grid pattern. A straight line indicated by a broken line is a lattice axis, which is classified into a “horizontal lattice axis” and a “vertical lattice axis” according to the coordinate system of the signal embedding area. The horizontal grid axis is the horizontal axis in the signal area, and the distance between adjacent axes is L (unit pattern size). The vertical grid axis is the vertical axis in the signal region, and the distance between adjacent axes is L. The lattice axis viewed from the coordinate system of the input image is obtained by rotating the horizontal axis and the vertical axis of the input image by the inclination Ra, and the distance between adjacent axes is L × cos (Ra).
[0089]
As shown in the figure, the determination area is arranged so that the intersection of the horizontal grid axis and the vertical grid axis overlaps the center of the determination area. Also, the intersection at the top left of the grid axis intersection is called “grid axis start point C (0)”, and all determination areas that can be set in the input image are C (i), i = 0 to Cn. . C (i) is assumed to be in the order of 1 row and 1 column, 1 row and 2 columns,..., 2 rows and 1 column, and 2 rows and 2 columns when the arrangement of the intersections of the lattice axes is regarded as a matrix.
[0090]
Next, Cu (i), i = 0 to Cn is defined as the absolute value of the total value of U (x, y) corresponding to the region included in C (i), and the starting point C (0) of the lattice axis When the coordinates are (CX, CY), the total value of Cu (i), i = 0 to Cn is expressed as Pu (CX, CY).
[0091]
Cu (i) has the largest value when each determination region is arranged at the center of the unit pattern. This is because, as shown in FIG. 17, when the determination area is installed across two or more unit patterns, U (x, y) values of the corresponding areas are mixed with +1 and −1. The absolute value of the sum is small. On the other hand, if the determination area fits in one unit pattern, the value of U (x, y) in the corresponding area is either +1 or −1 even if there is a signal determination error. Therefore, the absolute value of the sum of them becomes large.
[0092]
Therefore, Pu (CX, CY) is calculated when CX and CY are moved within a range of ± dL / 2, respectively, and it is determined that CX and CY that maximize this are the optimal arrangement of the determination regions.
[0093]
(Unit pattern determination step S504)
In step S504, in C (i) and i = 0 to Cn in the arrangement set in step S503, Cp (i) and i = 0 to Cn are assigned U (x, y corresponding to the area included in C (i). ), And Cs (i), i = 0 to Cn are unit pattern values determined by Cp (i).
[0094]
If Cp (i) is positive, the corresponding unit pattern value is 1, and Cs (i) = 1. If Cp (i) is negative, the value of the corresponding unit pattern is 0, and Cs (i) = 0. However, if Cp (i) is equal to or less than the threshold value Ts, it is determined that the determination region is outside the signal embedding region, and Cs (i) = − 1.
[0095]
Of Cs (i), i = 0 to Cn, except for negative Cs (i), the value of Cs (i) is connected in series to recover the bit string, thereby extracting the embedded information.
[0096]
The details of the unit pattern detection step S303 have been described above. Returning to the flowchart of FIG. 8 again, the following step S304 will be described. In step S304, the unit pattern matrix symbols are concatenated to reconstruct the data code, and the original information is restored.
[0097]
(Information decoding step S304)
FIG. 18 is an explanatory diagram showing an example of information restoration. The information restoration step S304 is as follows.
(1) A symbol embedded in each unit pattern is detected ((1) in FIG. 18). {Circle around (2)} The symbols are connected to restore the data code ((2) in FIG. 18).
(3) Decode the data code and take out the embedded information ((3) in FIG. 18).
[0098]
In this embodiment, the case of repeatedly embedding a data code has been described. However, a method that does not repeat a data code unit can be realized by using an error correction code or the like when encoding data.
[0099]
As described above, according to this embodiment, printing is performed by embedding a dot pattern composed of several small dots (start point dot 2101, horizontal reference dot 2105, modulation dot 2104, vertical reference dot 2103). Information can be embedded in the background of the document (paper) 1009 by a method that does not cause a sense of incongruity. Then, information is expressed by the difference in inner product (the difference between the angle formed by the vector and the size of the vector) of the two virtual vectors having the modulation dot as the start point, the start point dot, and the horizontal reference dot as the end point. According to this method, even if the input image is distorted due to paper rotation at the time of signal detection, it is possible to restore the signal only by detecting the angle between the virtual vectors and the size difference between the virtual vectors. This eliminates the need for image rotation correction. In this way, the amount of processing at the time of signal detection can be reduced.
[0100]
The preferred embodiments of the watermark information embedding method, the watermark information detecting method, the watermark information embedding device, and the watermark information detecting device according to the present invention have been described above with reference to the accompanying drawings. However, the present invention is limited to this example. Not. It will be obvious to those skilled in the art that various changes or modifications can be conceived within the scope of the technical idea described in the claims, and these are naturally within the technical scope of the present invention. It is understood that it belongs.
[0101]
【The invention's effect】
As described above, according to the present invention, when information is embedded in a background of a printed document (paper) with a method that does not cause a sense of incongruity, it is possible to accurately extract information. Further, according to the present invention, it is possible to restore the signal even when the input image is distorted due to paper rotation at the time of signal detection, and it is not necessary to perform image rotation correction. It is possible to reduce the amount.
[Brief description of the drawings]
FIG. 1 is an explanatory diagram showing a configuration of a watermark information embedding device and a watermark information detection device.
FIG. 2 is a flowchart showing a processing flow of a watermark image forming unit 1005;
FIG. 3 is an explanatory diagram showing an example of a dot pattern.
FIG. 4 is an explanatory diagram of a unit pattern.
FIG. 5 is a flowchart showing a method of embedding confidential information in a watermark image.
FIG. 6 is a flowchart showing a process flow of the watermark detection unit 1011;
FIG. 7 is an explanatory diagram illustrating an example of a watermarked document image.
8 is an explanatory diagram showing a flow of processing of a watermark detection unit 1011. FIG.
FIG. 9 is an explanatory diagram showing a flow of dot pattern detection processing.
10 is an explanatory diagram of a start dot candidate selection step S401 in FIG. 9;
FIG. 11 is an explanatory diagram of the horizontal reference dot candidate search step S402 of FIG.
12 is an explanatory diagram of the modulation dot candidate search step S403 in FIG. 9;
13 is a detailed explanatory diagram of the unit pattern detection step S303 of FIG.
FIG. 14 is an explanatory diagram of the unit pattern determination area setting step S502 of FIG.
FIGS. 15A and 15B are explanatory diagrams of the unit pattern determination area setting step S502 in FIG. 13, where FIG. 15A is an input image, and FIG. 15B is an arbitrary unit pattern extracted;
16 is an explanatory diagram of the optimum installation position determination step S503 for the determination region in FIG. 13;
FIG. 17 is an explanatory diagram of the optimum installation position determination step S503 for the determination region in FIG. 13;
FIG. 18 is an explanatory diagram showing an example of information restoration
[Explanation of symbols]
1001 Watermark information embedding device
1002 Watermark information detection apparatus
1003 Document data
1004 Confidential information
1005 Document image forming unit
1006 Watermark image forming unit
1007 Watermarked document image composition unit
1008 Output device
1009 Printed document
1010 Input device
1011 Watermark detection unit

Claims (10)

文書の背景としてドットを規則正しく配列し,その中に配置の規則の異なるドットパターンを挿入し,前記ドットパターンの配置の規則に対して情報を与える透かし情報埋め込み方法であって,
前記ドットパターンは少なくとも第1,第2,第3のドットを含んで構成されており,
前記第1,第2,第3のドットの相対的な位置関係によって定まる固有値に応じて前記ドットパターンに値を設定し,
所定形状の情報領域内に,同じ値が設定された前記ドットパターンを繰り返し配列し,その情報領域全体に前記情報の1ビットを設定し,
前記第1,第2,第3のドットの相対的な位置関係によって定まる固有値は,
前記第3のドットを始点とし前記第1のドットを終点とするベクトルと,前記第3のドットを始点とし前記第2のドットを終点とするベクトルとの内積であることを特徴とする,透かし情報埋め込み方法。
A watermark information embedding method in which dots are regularly arranged as a background of a document, a dot pattern having a different arrangement rule is inserted therein, and information is given to the arrangement rule of the dot pattern,
The dot pattern includes at least first, second, and third dots,
A value is set for the dot pattern according to the eigenvalue determined by the relative positional relationship between the first, second, and third dots,
In the information area of a predetermined shape, the dot pattern set with the same value is repeatedly arranged, 1 bit of the information is set in the entire information area ,
The eigenvalue determined by the relative positional relationship between the first, second, and third dots is
The watermark is an inner product of a vector having the third dot as a start point and the first dot as an end point, and a vector having the third dot as a start point and the second dot as an end point Information embedding method.
前記第3のドットは,前記第2のドットを始点として,前記第1のドットを始点とし前記第2のドットを終点とするベクトルに略垂直な方向に位置することを特徴とする,請求項に記載の透かし情報埋め込み方法。The third dot is located in a direction substantially perpendicular to a vector starting from the second dot, starting from the first dot, and ending at the second dot. 2. The watermark information embedding method according to 1. 前記ドットパターンは,さらに,前記第1のドットを始点として,前記第1のドットを始点とし前記第2のドットを終点とするベクトルに略垂直な方向に位置する第4のドットを含んで構成されることを特徴とする,請求項1または2のいずれかに記載の透かし情報埋め込み方法。The dot pattern further includes a fourth dot located in a direction substantially perpendicular to a vector starting from the first dot, starting from the first dot, and ending at the second dot. The watermark information embedding method according to claim 1, wherein the watermark information embedding method is performed. 請求項1〜3のいずれかに記載の透かし情報埋め込み方法で印刷された文書から情報を検出する,透かし情報検出方法であって,
前記文書を画像データに変換して,第1,第2,第3のドット候補点を探索し,
前記第1,第2,第3のドット候補点の相対的な位置関係によって定まる固有値と,前記第1,第2,第3のドットの相対的な位置関係によって定まる固有値とが略同一の場合に,前記第1,第2,第3のドット候補点は前記ドットパターンを構成する前記第1,第2,第3のドットであると判定し,
前記情報領域内における前記ドットパターンに設定された値の多数決により,その情報領域に設定された前記情報の1ビットを検出し,
前記第1,第2,第3のドット候補点の相対的な位置関係によって定まる固有値は,
前記第3のドット候補点を始点とし前記第1のドット候補点を終点とするベクトルと,前記第3のドット候補点を始点とし前記第2のドット候補点を終点とするベクトルとの内積であることを特徴とする,透かし情報検出方法。
A watermark information detection method for detecting information from a document printed by the watermark information embedding method according to claim 1,
Converting the document into image data, searching for first, second and third dot candidate points;
When the eigenvalue determined by the relative positional relationship between the first, second, and third dot candidate points is substantially the same as the eigenvalue determined by the relative positional relationship between the first, second, and third dots. And determining that the first, second and third dot candidate points are the first, second and third dots constituting the dot pattern,
1 bit of the information set in the information area is detected by majority of the values set in the dot pattern in the information area;
The eigenvalue determined by the relative positional relationship between the first, second, and third dot candidate points is:
An inner product of a vector having the third dot candidate point as a start point and the first dot candidate point as an end point, and a vector having the third dot candidate point as a start point and the second dot candidate point as an end point A watermark information detection method characterized by being.
前記第1,第2,第3のドット候補点の探索は,
前記第1のドット候補点を検索し,
前記第1のドット候補点が見つかった場合に,その第1のドット候補点を中心に所定の半径を持つ探索円を設定して,その探索円上に第2のドット候補点を探索し,
前記第2のドット候補点が見つかった場合に,その第2のドット候補点を始点として,前記第1のドット候補点を始点としその第2のドット候補点を終点とするベクトルに略垂直な方向に前記第3のドット候補点を探索することを特徴とする,請求項に記載の透かし情報検出方法。
The search for the first, second, and third dot candidate points is as follows:
Searching for the first dot candidate point;
When the first dot candidate point is found, a search circle having a predetermined radius is set around the first dot candidate point, and a second dot candidate point is searched on the search circle.
When the second dot candidate point is found, the second dot candidate point is a starting point, the first dot candidate point is the starting point, and the second dot candidate point is the end point. 5. The watermark information detecting method according to claim 4 , wherein the third dot candidate point is searched in a direction.
前記画像データ全体で検出された各ドットパターンにおける,前記第1のドットを始点とし前記第2のドットを終点とするベクトルの傾きの平均値を前記画像データの傾きであると判定し,前記画像データの傾き補正を行うことを特徴とする,請求項4または5のいずれかに記載の透かし情報検出方法。In each dot pattern detected in the entire image data, an average value of vector gradients starting from the first dot and ending at the second dot is determined as the gradient of the image data, 6. The watermark information detecting method according to claim 4 , wherein the data is corrected for inclination. 前記画像データの傾きに応じた座標系を設定し,
前記座標系の垂直軸と水平軸に沿い,隣り合う間隔を前記座標系における前記情報領域の大きさと略同一にした格子状の水平格子軸及び垂直格子軸を設定し,
前記水平格子軸と前記垂直格子軸との交点を中心とし,隣接する情報領域との境界をまたがないような十分小さな判定領域を設定し,
その判定領域内における前記ドットパターンの値の多数決により,その判定領域を含む前記情報領域に設定された前記情報の1ビットを検出することを特徴とする,請求項4〜6のいずれかに記載の透かし情報検出方法。
Set a coordinate system according to the inclination of the image data,
Setting a horizontal grid axis and a vertical grid axis in the form of a grid along the vertical and horizontal axes of the coordinate system, with the interval between adjacent ones being substantially the same as the size of the information area in the coordinate system;
Set a sufficiently small determination area centered on the intersection of the horizontal grid axis and the vertical grid axis and does not cross the boundary between adjacent information areas,
The majority of the values of the dot pattern in the determination area, and detects one bit of the information set in the information area including the determination area, according to any one of claims 4-6 Watermark information detection method.
前記水平格子軸及び前記垂直格子軸の設定は,
任意に設定した水平格子軸と垂直格子軸により定まる判定領域の配置において,判定領域内に含まれるドットパターンが第1の値を表す場合には−1を,第2の値を表す場合は+1をその判定領域の値として加算し,
判定領域内の各ドットパターンについての合計値の絶対値をすべての判定領域について合計した値を,ここで設定した水平格子軸と垂直格子軸に対する評価値とし,
水平格子軸と垂直格子軸の位置を微小に変化させた中で最も評価値が大きくなる位置をもって,前記水平格子軸及び前記垂直格子軸として設定することを特徴とする,請求項に記載の透かし情報検出方法。
The horizontal grid axis and the vertical grid axis are set as follows:
In the arrangement of the determination region determined by the arbitrarily set horizontal lattice axis and vertical lattice axis, −1 is used when the dot pattern included in the determination region represents the first value, and +1 when the second value represents the second value. As the value of the judgment area,
The sum of the absolute values of the total values for each dot pattern in the judgment area for all judgment areas is used as the evaluation value for the horizontal and vertical grid axes set here.
With the most evaluation value becomes larger position in which minutely changing the position of the horizontal grid axis and vertical grid axis, and sets as the horizontal grid axis and the vertical grid axes, according to claim 7 Watermark information detection method.
透かし画像埋め込み装置であって,
文書データを基にして,文書画像をページごとに作成する文書画像形成部と,
機密情報を基にして,請求項1〜3のいずれかに記載の透かし情報埋め込み方法によりドットパターンの配置の規則を透かしとして透かし画像を作成する透かし画像形成部と,
前記文書画像と前記透かし画像を重ね合わせて透かし入り文書画像を作成する透かし入り画像合成部と,
を備えたことを特徴とする,透かし画像埋め込み装置。
A watermark image embedding device,
A document image forming unit that creates a document image for each page based on the document data;
A watermark image forming unit that creates a watermark image by using the rule of dot pattern arrangement as a watermark by the watermark information embedding method according to any one of claims 1 to 3 based on confidential information;
A watermarked image composition unit that creates a watermarked document image by superimposing the document image and the watermark image;
A watermark image embedding device comprising:
文書画像と複数種類のドットパターンが埋め込まれた透かし画像とが重ね合わされて作成された透かし入り文書画像から,請求項4〜8のいずれかに記載の透かし情報検出方法により前記情報を検出する透かし検出部を備えたことを特徴とする,透かし画像検出装置。9. A watermark for detecting the information by a watermark information detection method according to any one of claims 4 to 8 , from a watermarked document image created by superimposing a document image and a watermark image in which a plurality of types of dot patterns are embedded. A watermark image detection apparatus comprising a detection unit.
JP2002289697A 2002-10-02 2002-10-02 Watermark information embedding method, watermark information detecting method, watermark information embedding device, and watermark information detecting device Expired - Fee Related JP3980983B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002289697A JP3980983B2 (en) 2002-10-02 2002-10-02 Watermark information embedding method, watermark information detecting method, watermark information embedding device, and watermark information detecting device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002289697A JP3980983B2 (en) 2002-10-02 2002-10-02 Watermark information embedding method, watermark information detecting method, watermark information embedding device, and watermark information detecting device

Publications (2)

Publication Number Publication Date
JP2004128845A JP2004128845A (en) 2004-04-22
JP3980983B2 true JP3980983B2 (en) 2007-09-26

Family

ID=32281782

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002289697A Expired - Fee Related JP3980983B2 (en) 2002-10-02 2002-10-02 Watermark information embedding method, watermark information detecting method, watermark information embedding device, and watermark information detecting device

Country Status (1)

Country Link
JP (1) JP3980983B2 (en)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4552681B2 (en) 2005-02-14 2010-09-29 コニカミノルタビジネステクノロジーズ株式会社 Image processing apparatus, image processing method, and image processing program
JP4552754B2 (en) 2005-05-18 2010-09-29 コニカミノルタビジネステクノロジーズ株式会社 Information embedding device, method, program, and recording medium, and information detecting device, method, program, and computer-readable recording medium
JPWO2007049333A1 (en) * 2005-10-25 2009-04-30 富士通株式会社 Background pattern image generation method
CN100364326C (en) 2005-12-01 2008-01-23 北京北大方正电子有限公司 Method and apparatus for embedding and detecting digital watermark in text file
JP4771283B2 (en) * 2006-01-25 2011-09-14 富士ゼロックス株式会社 Image processing apparatus, image forming apparatus, copy-forgery-inhibited pattern image, printed matter, image processing method, image forming method, and program
JP2007201660A (en) 2006-01-25 2007-08-09 Fuji Xerox Co Ltd Image processing apparatus, image forming apparatus, and image processing method and program
JP4668086B2 (en) * 2006-02-23 2011-04-13 株式会社沖データ Image processing apparatus, image processing method, and computer program
JP5014832B2 (en) * 2007-02-27 2012-08-29 株式会社沖データ Image processing apparatus, image processing method, and computer program
JP5344328B1 (en) * 2012-10-01 2013-11-20 健治 吉田 Dot pattern, dot pattern forming medium, dot pattern image data generating program, dot pattern forming device, optical device, optical reader, information input / output device, dot pattern reader
CN109325898B (en) * 2018-09-30 2020-08-28 阿里巴巴集团控股有限公司 Method and device for writing and reading digital watermark
CN112215011A (en) * 2020-10-21 2021-01-12 北京嘉和美康信息技术有限公司 Method and device for processing medical documents
CN117150457B (en) * 2023-10-31 2024-02-23 南京中孚信息技术有限公司 Application method and system for anti-theft watermark

Also Published As

Publication number Publication date
JP2004128845A (en) 2004-04-22

Similar Documents

Publication Publication Date Title
JP4277800B2 (en) Watermark information detection method
JP3628312B2 (en) Watermark information embedding device and watermark information detection device
JP3964684B2 (en) Digital watermark embedding device, digital watermark detection device, digital watermark embedding method, and digital watermark detection method
US7106884B2 (en) Digital watermark embedding apparatus for document, digital watermark extraction apparatus for document, and their control method
US8270663B2 (en) Watermarked information embedding apparatus
JP4035717B2 (en) Image processing apparatus and image processing method
JP2000299778A (en) Method and device for adding watermark, method and device for reading and recording medium
JP4296126B2 (en) Screen creation device
US20050018845A1 (en) Electronic watermark embedding device, electronic watermark detection device, electronic watermark embedding method, and electronic watermark detection method
JP3980983B2 (en) Watermark information embedding method, watermark information detecting method, watermark information embedding device, and watermark information detecting device
JP4719717B2 (en) Image processing apparatus, image processing method, and image processing program
KR20070052332A (en) Image processing method and image processing device
US20070079124A1 (en) Stowable mezzanine bed
US8005256B2 (en) Image generation apparatus and recording medium
JP3045008B2 (en) Halftone image compression method
JP2007088693A (en) Image processing system, tampering verification apparatus, tampering verification method, and computer program
JP4096803B2 (en) Image processing apparatus, image processing method, image processing program, and recording medium
JP2006303807A (en) Electronic watermark embedding apparatus, electronic watermark embedding method, program for allowing computer to realize method, machine-readable recording medium for recording program, and printed matter
JP4096902B2 (en) Watermark information detection apparatus and watermark information detection method
JP4124016B2 (en) Image processing system
JP3472210B2 (en) Image processing method and apparatus
JP2950684B2 (en) Image reduction device
JP3682864B2 (en) How to embed invisible information
JP4861250B2 (en) Image processing apparatus and control method thereof
JP2006067294A (en) Image processing method and image processor

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050922

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20070403

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070410

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070601

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20070626

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070628

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100706

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110706

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees