電子透かし挿入装置及び電子透かし挿入方法並びに電子透かし検出装置及び電子透かし検出方法
【課題】電子透かしを挿入するべき画像データに係る画像の面積が狭い場合であっても、検出側において、高い正答率で電子透かしを検出することを可能とする電子透かし挿入方法及び電子透かし検出方法を提供する。
【解決手段】データパターン検出部は、3以上の奇数個の部分画像のそれぞれから得られたデータパターンを比較し、過半数のデータパターンが一致している場合に、それを正しいデータパターンとして出力する。それぞれの部分画像からデータパターンを検出する際には、ハミングチェック及びパリティチェックを行う。過半数のデータパターンが一致しない場合の他、画像の回転角度を検出できない場合、上下反転判定結果及び/又は検出された回転角度が間違っていると判断された場合にはエラー終了する。
【解決手段】データパターン検出部は、3以上の奇数個の部分画像のそれぞれから得られたデータパターンを比較し、過半数のデータパターンが一致している場合に、それを正しいデータパターンとして出力する。それぞれの部分画像からデータパターンを検出する際には、ハミングチェック及びパリティチェックを行う。過半数のデータパターンが一致しない場合の他、画像の回転角度を検出できない場合、上下反転判定結果及び/又は検出された回転角度が間違っていると判断された場合にはエラー終了する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像データに電子透かしを挿入するための電子透かし挿入装置及び電子透かし挿入方法並びに電子透かしが挿入された画像データから電子透かしを検出するための電子透かし検出装置及び電子透かし検出方法に関する。
【背景技術】
【0002】
本発明の出願人は、電子透かし挿入方法及び電子透かし挿入方法並びに電子透かし検出装置及び電子透かし検出方法に関する発明を出願し、権利化している(例えば、特許文献1参照)。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特許第4270504号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
ところが従来であれば、電子透かしを挿入するべき画像データに係る画像の面積が比較的広いため、そこから離散フーリエ変換により得られる周波数成分の数が比較的多く、従って、電子透かしに比較的多めの冗長度を付加することができた。具体的には、電子透かしを表す全ての周波数成分にパリティチェックのためのパリティを付加し、更に、電子透かしを表す全ての周波数成分にハミング符号を構成するための検査点を付加することができた。
【0005】
しかし、電子透かしを挿入するべき画像データに係る画像の面積が狭くても、電子透かし挿入装置により、その画像データに電子透かしを挿入し、電子透かし検出装置により、電子透かしが挿入された画像データから電子透かしを検出することが要請されるようになってきた。ここで、電子透かしを挿入するべき画像データに係る画像の面積が狭いと、そこから離散フーリエ変換により得られる周波数成分の数が少なくなるため、電子透かしを表す全ての周波数成分にパリティチェックのためのパリティを付加し、更に、電子透かしを表す全ての周波数成分にハミング符号を構成するための検査点を付加することができない。そうすると、従来の方法を用いると、電子透かし検出装置により高い正答率で電子透かしを検出することができない。
【0006】
そこで、本発明は、電子透かしを挿入するべき画像データに係る画像の面積が狭い場合であっても、検出側において、高い正答率で電子透かしを検出することを可能とする電子透かし挿入装置及び電子透かし挿入方法並びに電子透かし検出装置及び電子透かし検出方法を提供することを目的とする。
【課題を解決するための手段】
【0007】
本発明によれば、データを表す非ゼロ周波数成分とゼロ周波数成分とを含むデータパターンのうちの非ゼロ周波数成分を周波数領域に配置するデータパターン配置手段と、前記パターンを複数の第1サブパターンに分割し、各第1サブパターン毎にそのサブパターンに含まれる非ゼロ周波数成分の数に応じた第1パリティを生成し、該第1パリティを表す非ゼロ周波数成分とゼロ周波数成分を含む第1パリティパターンを生成し、該第1パリティパターンのうちの非ゼロ周波数成分を前記周波数領域に配置する第1パリティ配置手段と、前記サブパターン毎の第1パリティの集合についての第2パリティを生成し、該第2パリティを表す非ゼロ周波数成分とゼロ周波数成分を含む第2パリティパターンを生成し、該第2パリティパターンのうちの非ゼロ周波数成分を前記周波数領域に配置する第2パリティ配置手段と、前記データパターンのうち、何れの前記第1サブパターンとも一致しない第2のサブパターンに含まれる非ゼロ周波数成分とゼロ周波数成分を情報点と見なした場合のハミング符号における検査点を生成し、該検査点を表す非ゼロ周波数成分とゼロ周波数成分とを含む検査点パターンを生成し、該検査点パターンのうちの非ゼロ周波数成分を前記周波数領域に配置する検査パターン配置手段と、前記データパターン配置手段により前記周波数領域に配置された非ゼロ周波数成分、前記第1パリティ配置手段により前記周波数領域に配置された非ゼロ周波数成分、前記第2パリティ配置手段により前記周波数領域に配置された非ゼロ周波数成分及び前記検査パターン配置手段により前記周波数領域に配置された非ゼロ周波数成分を含むパターンを逆フーリエ変換することにより、空間領域パターンを生成する逆フーリエ変換手段と、前記空間領域パターンを原画像に重畳させる重畳手段と、を備えることを特徴とする電子透かし挿入装置が提供される。
【0008】
また、本発明によれば、上記の電子透かし挿入装置により電子透かしが挿入された画像から電子透かしを検出する電子透かし検出装置において、前記電子透かしが挿入された画像から、3以上の奇数個の部分画像を抽出する部分画像抽出手段と、各部分画像のデータをフーリエ変換して、各部分画像についての周波数成分の振幅分布を求めるフーリエ変換手段と、各部分画像の周波数成分の振幅分布からデータを表す非ゼロ周波数成分とゼロ周波数成分を含むデータパターンを検出するデータパターン検出手段と、過半数の部分画像から同一のデータを表すデータパターンが検出された場合に、そのデータパターンを正しいデータパターンであると判断する多数決手段と、を備え、前記データパターン検出手段は、各部分画像の周波数成分の振幅分布を基に、前記データパターンに含まれる非ゼロ周波数成分とゼロ周波数成分であって、情報点であるとみなされた周波数成分について、前記検査点を用いたハミング誤り訂正を行うハミングチェック手段と、各部分画像の周波数成分の振幅分布を基に、前記ハミングチェック手段によるハミング誤り訂正後に、前記データパターンに含まれる非ゼロ周波数成分とゼロ周波数成分について、前記第1のパリティを用いたパリティチェックを行う第1パリティチェック手段と、各部分画像の周波数成分の振幅分布を基に、前記ハミングチェック手段によるハミング誤り訂正後に、前記第1のパリティについて、前記第2のパリティを用いたパリティチェックを行う第2パリティチェック手段と、各部分画像において、前記ハミングチェック手段により誤りがないことが検出され、又は、誤りが訂正され、且つ、前記第1パリティチェック手段によりパリティエラーがないことが検出され、且つ、前記第2パリティチェック手段によりパリティエラーがないことが検出されたならば、前記ハミングチェック手段により誤りがないことが検出され、又は、誤りが訂正された後に得られた各部分画像の周波数成分の振幅分布から求まる、データを表す非ゼロ周波数成分とゼロ周波数成分とのパターンを、その各部分画像から得られるデータパターンとする判断手段と、を備えることを特徴とする電子透かし検出装置が提供される。
【発明の効果】
【0009】
本発明によれば、データを表す非ゼロ周波数成分及びゼロ周波数成分のうち第2のサブパターンに含まれない周波数成分については、ハミング誤り訂正が行われないが、第1のパリティについて、第2のパリティを用いたエラーチェックを行い、更に、過半数の部分画像から同一のデータを表すデータパターンが検出された場合にのみ、そのデータパターンを正しいデータパターンであると判断するため、誤ってデータパターンを検出してしまう可能性を非常に低くすることができる。
【図面の簡単な説明】
【0010】
【図1】本発明の実施形態における、電子透かし挿入装置の構成を示すブロック図である。
【図2】本発明の実施形態における、データを表す非ゼロ周波数成分とゼロ周波数成分の周波数領域における分布を示す図である。
【図3】本発明の実施形態における、データを表す非ゼロ周波数成分とゼロ周波数成分に付されるパリティに対応した非ゼロ周波数成分とゼロ周波数成分の周波数領域における分布を示す図である。
【図4】本発明の実施形態における、どのパリティが何に対して付加されるのかを示す図である。
【図5】本発明の実施形態における、データを表す非ゼロ周波数成分とゼロ周波数成分のうち第2のサブパターンに含まれるものに付される検査点に対応した非ゼロ周波数成分とゼロ周波数成分の周波数領域における分布を示す図である。
【図6】本発明の実施形態における、画像の回転角度を0度から180度の範囲で検出するための非ゼロ周波数成分の周波数領域における分布を示す図である。
【図7】本発明の実施形態における、別々の上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定用パターンが挿入される短冊の集合を示した図である。
【図8】本発明の実施形態における、上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定用パターンに含まれる非ゼロ周波数成分及びゼロ周波数成分であって、画像の第1の短冊に含まれるものを示す図である。
【図9】本発明の実施形態における、上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定用パターンに含まれる非ゼロ周波数成分及びゼロ周波数成分であって、画像の第2の短冊に含まれるものを示す図である。
【図10】本発明の実施形態における、上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定用パターンに含まれる非ゼロ周波数成分及びゼロ周波数成分であって、画像の第3の短冊に含まれるものを示す図である。
【図11】本発明の実施形態における、上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定用パターンに含まれる非ゼロ周波数成分及びゼロ周波数成分であって、画像の第4の短冊に含まれるものを示す図である。
【図12】本発明の実施形態における、上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定用パターンに含まれる非ゼロ周波数成分及びゼロ周波数成分であって、画像の第5の短冊に含まれるものを示す図である。
【図13】本発明の実施形態における、電子透かしとして配置される全ての非ゼロ周波数成分とゼロ周波数成分の周波数成分における分布を示す図である。
【図14】本発明の実施形態における、図1に示す電子透かし挿入装置の動作を示すフローチャートである。
【図15】本発明の実施形態における、電子透かし検出装置の構成を示すブロック図である。
【図16】(a)は、電子透かし検出装置に入力される画像の回転角度が0度である場合の初期部分画像と2つの追加部分画像を示し、(b)は、電子透かし検出装置に入力される画像の回転角度が75度である場合の初期部分画像と2つの追加部分画像を示し、(c)は、電子透かし検出装置に入力される画像の回転角度が135度である場合の初期部分画像と2つの追加部分画像を示す。
【図17】図15に示すデータパターン検出部の内部構成を示すブロック図である。
【図18】本発明の実施形態における、部分画像の数が3であるとした場合の多数決部の入力と出力との関係を示す表である。
【図19】本発明の実施形態における、上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定用パターンに含まれる非ゼロ周波数成分のそれぞれに付けられるポイントを示す図である。
【図20】本発明の実施形態における、図15に示す電子透かし検出装置の動作を示すフローチャートである。
【図21】図20に示す「初期部分画像と各追加部分画像からデータパターンを検出する」ステップの詳細を示すフローチャートである。
【発明を実施するための形態】
【0011】
以下、図面を参照して本発明を実施するための形態について詳細に説明する。
【0012】
図1を参照すると、本発明の実施形態による電子透かし挿入装置は、エンコード部101、データパターン配置部103、第1パリティ配置部105、第2パリティ配置部107、検査パターン配置部109、回転角度検出用パターン配置部111、上下反転検出/回転角度正誤判定/上下反転検出結果判定用パターン配置部113、逆フーリエ変換部115及び重畳部117を含む。
【0013】
エンコード部101は、入力したデータを基に、図2に○で示すような位置に配置する周波数成分の振幅をゼロにするか非ゼロにするかを決める。その際、円1、円2、円3のそれぞれにある○で示す周波数成分の数は、4、10、6である。それぞれの円において、振幅をゼロにする周波数成分と振幅を非ゼロにする周波数成分の数を等しくする。従って、エンコーダ部101は、4C2×10C5×6C3=30240通りの入力データをエンコードすることができる。
【0014】
データパターン配置部103は、図2に○で示す位置にエンコード部101によって振幅が定まった周波数成分を配置する。
【0015】
第1パリティ配置部105は、図2に○で示す各位置の周波数成分の振幅がゼロであるか非ゼロであるかによって値がゼロか1かに決まる第1のパリティを6つ生成し、そのパリティの値に応じて振幅が決まる周波数成分を図3に○で示す位置(但し、円1の位置14及び15を除く)に配置する。
【0016】
図4を参照すると、第1のパリティのうちパリティ1の値は、円1の位置3にある周波数成分(「円1−3」で示す。)の振幅、円2の位置7にある周波数成分(「円2−7」で示す。)の振幅、円2の位置14にある周波数成分(「円2−14」で示す。)の振幅、円3の位置9にある周波数成分(「円3−9」で示す。)の振幅により決まる。パリティ1を偶数パリティとするならば、円1の位置3にある周波数成分、円2の位置7にある周波数成分、円2の位置14にある周波数成分、円3の位置9にある周波数成分のうち、振幅がゼロである周波数成分の数が偶数であれば、パリティ1の値はゼロとなる。パリティ1を奇数パリティとするならば、円1の位置3にある周波数成分、円2の位置7にある周波数成分、円2の位置14にある周波数成分、円3の位置9にある周波数成分のうち、振幅がゼロである周波数成分の数が奇数であれば、パリティ1の値はゼロとなる。
【0017】
図3を参照すると、パリティ1に対応した周波数成分は、円3の位置0にあるものと円3の位置1にあるものの2つの周波数成分である。パリティ1の値がゼロであれば、円3の位置0にある周波数成分の振幅がゼロとなり、円3の位置1にある周波数成分の振幅が非ゼロとなる。パリティ1の値が1であれば、円3の位置0にある周波数成分の振幅が非ゼロとなり、円3の位置1にある周波数成分の振幅がゼロとなる。
【0018】
円1の位置3にあるデータを表す周波数成分、円2の位置7にあるデータを表す周波数成分、円2の位置14にあるデータを表す周波数成分、円3の位置9にあるデータを表す周波数成分、円1の位置0にあるパリティを表す周波数成分及び円1の位置1にあるパリティを表す周波数成分は、中心を通る相互に直交した任意の2つの直線上には2以上並ばない。これは、ノイズによる非ゼロ周波数成分が中心を通る相互に直交した任意の2つの直線上に並ぶことを考慮し、データを表す周波数成分及びパリティを表す周波数成分のうち2以上の周波数成分がノイズに埋もれないようにするためである。
【0019】
第1のパリティのうちパリティ2の値、パリティ3の値、パリティ4の値、パリティ5の値及びパリティ6の値は、パリティ1の値と同様にして決まる。パリティ1〜6が付される対象となるデータを表す周波数成分の位置は、図4に示すとおりである。このうち、パリティ1のみについて、上記で詳細に説明したが、パリティ2〜6の値も、パリティ1の値と同様に決まる。
【0020】
また、図3に示すように、パリティ2に対応した周波数成分は、円3の位置5と位置6に配置され、パリティ3に対応した周波数成分は、円3の位置10と位置11に配置され、パリティ4に対応した周波数成分は、円2の位置2と位置3に配置され、パリティ5に対応した周波数成分は、円2の位置4と位置5に配置され、パリティ6に対応した周波数成分は、円2の位置9と位置10に配置される。
【0021】
第2パリティ配置部107は、パリティ1〜6によって値がゼロか1かに決まる第2のパリティであるパリティ7を生成し、そのパリティの値に応じて振幅が決まる周波数成分を図3に○で示す位置(具体的には、円1の位置14及び15)に配置する。
【0022】
図4を参照すると、第2のパリティであるパリティ7の値は、パリティ1〜6の値により決まる。パリティ7を偶数パリティとするならば、パリティ1〜6のうち値がゼロであるパリティの数が偶数であれば、パリティ7の値はゼロとなる。パリティ7を奇数パリティとするならば、パリティ1〜6のうち値がゼロであるパリティの数が奇数であれば、パリティ7の値はゼロとなる。
【0023】
図3を参照すると、パリティ7に対応した周波数成分は、円1の位置14にあるものと円1の位置15にあるものの2つの周波数成分である。パリティ7の値がゼロであれば、円1の位置14にある周波数成分の振幅がゼロとなり、円1の位置15にある周波数成分の振幅が非ゼロとなる。パリティ7の値が1であれば、円1の位置14にある周波数成分の振幅が非ゼロとなり、円1の位置1に15ある周波数成分の振幅がゼロとなる。
【0024】
パリティ1〜7を表す周波数成分は、中心を通る相互に直交した任意の2つの直線上には2以上並ばない。これは、ノイズによる非ゼロ周波数成分が中心を通る相互に直交した任意の2つの直線上に並ぶことを考慮し、パリティを表す周波数成分のうち2以上の周波数成分がノイズに埋もれないようにするためである。
【0025】
検査パターン配置部109は、円1にあるデータを表す周波数成分(円1の位置2、3、16、17にある周波数成分)の値を検査点の値とし(周波数成分の振幅がゼロであれば、検査点の値をゼロとし、周波数成分の振幅が非ゼロであれば、検査点の値を1とし)、これらの検査点の値を基に、ハミング符号における検査シンボルを生成し、検査シンボルの値に対応した振幅を有する周波数成分を円1の位置0、1、4、5、18、19に配置する(図5参照)。具体的には、第1の検査シンボルに対応した周波数成分を円1の位置0、1に配置し、第2の検査シンボルに対応した周波数成分を円1の位置4、5に配置し、第3の検査シンボルに対応した周波数成分を円1の位置18、19に配置する。例えば、第1の検査シンボルの値がゼロであれば、円1の位置0に配置する周波数成分の値をゼロにし、円1の位置1に配置する周波数成分の値を1にするが、この逆であっても良い。周波数成分の振幅については、第2の検査シンボル、第3の検査シンボルについても第1の検査シンボルと同様である。
【0026】
回転角度検出用パターン配置部111は、図6で○で示す位置に回転角度を0度〜180度の範囲で検出するための非ゼロ周波数成分を配置する。
【0027】
上下反転検出/回転角度正誤判定/上下反転検出結果判定用パターン配置部113は、図7に示すように、画像を(a)〜(e)の5つの短冊に分割し、短冊(a)の周波数領域に図8に示すパターンを配置し、短冊(b)の周波数領域に図9に示すパターンを配置し、短冊(c)の周波数領域に図10に示すパターンを配置し、短冊(d)の周波数領域に図11に示すパターンを配置し、短冊(e)の周波数領域に図12に示すパターンを配置する。図8〜12において、白抜きの丸で示したものは非ゼロ周波数成分であり、黒丸で示したものはゼロ周波数成分である。
【0028】
逆フーリエ変換部115は、図13に示すように、データパターン配置部103が周波数領域に配置した非ゼロ周波数成分、第1パリティ配置部105が周波数領域に配置した非ゼロ周波数成分、第2パリティ配置部が周波数領域に配置した非ゼロ周波数成分、検査パターン配置部109が周波数領域に配置した非ゼロ周波数成分、回転角度検出用パターン配置部111が周波数領域に配置した非ゼロ周波数成分、上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定用パターン配置部113が周波数領域に配置した非ゼロ周波数成分を合わせたものを逆フーリエ変換して、空間パターンを生成する。なお、周波数成分を表す上記で説明した図には、周波数領域の第1象限及び第2象限のもが記載されているが、第1象限及び第2象限に存在する非ゼロ周波数成分と周波数領域の原点について点対称の位置にもそれらの非ゼロ周波数成分に対応した非ゼロ周波数成分が存在し、逆フーリエ変換部115が出力する空間パターンは実数部のみを有し、虚数部を有さない。
【0029】
重畳部117は、逆フーリエ変換部115が生成した空間パターンを原画像に重畳する。ここで、重畳とは、加算又は減算を意味する。
【0030】
上述した電子透かし挿入装置の動作をまとめたのが図14に示すフローチャートである。図14を参照すると、エンコード部101は、入力データをエンコードして、データパターンを生成する(ステップS201)。データパターン配置部103は、データパターンのうち非ゼロ周波数成分を周波数領域に配置する(ステップS203)。第1パリティ配置部105は、第1パリティパターンを生成し、そのうちの非ゼロ周波数成分を周波数領域に配置する(ステップS205)。第2パリティ配置部107は、第2パリティパターンを生成し、そのうち非ゼロ周波数成分を周波数領域に配置する(ステップS207)。検査点パターン配置部109は、検査点パターンを生成し、そのうち非ゼロ周波数成分を周波数領域に配置する(ステップS209)。回転角度検出用パターン配置部111は、回転角度検出用パターンを生成し、そのうちの非ゼロ周波数成分を周波数領域に配置する(ステップS211)。上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定用パターン配置部113は、上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定用パターンを生成し、そのうち非ゼロ周波数成分を周波数領域に配置する(ステップS213)。逆フーリエ変換部115は、データパターン配置部103が周波数領域に配置した非ゼロ周波数成分、第1パリティ配置部105が周波数領域に配置した非ゼロ周波数成分、第2パリティ配置部が周波数領域に配置した非ゼロ周波数成分、検査パターン配置部109が周波数領域に配置した非ゼロ周波数成分、回転角度検出用パターン配置部111が周波数領域に配置した非ゼロ周波数成分、上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定用パターン配置部113が周波数領域に配置した非ゼロ周波数成分を合わせたものを逆フーリエ変換して、空間パターンを生成する(ステップS215)。重畳部117は、逆フーリエ変換部115が生成した空間パターンを原画像に重畳する(ステップS217)。
【0031】
図15を参照すると、本発明の実施形態による電子透かし検出装置は、初期部分画像抽出部131、第1フーリエ変換部133、回転角度検出部135、追加部分画像抽出部137、第2フーリエ変換部139、回転角度補正部141、データパターン検出部143、多数決部145、デコード部147及び検出回転角度エラー/上下反転検出結果エラー検出部149を含む。
【0032】
初期部分画像抽出部131は、電子透かし挿入装置により電子透かしが挿入され、その上で、任意の角度回転した入力画像の中央部から初期部分画像を抽出する。例えば、入力画像のサイズが158画素×158画素であれば、後のフーリエ変換を考慮し、初期部分画像のサイズを128画素×128画素とする(図16(a)、(b)、(c)の「初期部分画像」を参照)。一般に入力画像が回転しているのは、電子透かし挿入装置により電子透かしが挿入された画像は紙などに印刷され、カメラやスキャナなどにより撮影されるためである。撮影時に画像が回転する。
【0033】
第1フーリエ変換部133は、初期部分画像抽出部131が抽出した初期部分画像をフーリエ変換して、周波数成分の振幅分布を求める。
【0034】
回転角度検出部135は、第1フーリエ変換部133から入力した初期部分画像の周波数成分の振幅分布から、図6に○で示す回転角度を0度〜180度の範囲で検出するための非ゼロ周波数成分を求め、それらの非ゼロ周波数成分の分布の非対称性を利用して入力画像の回転角度を0度〜180度の範囲で検出する。
【0035】
追加部分画像抽出部137は、入力画像から2以上の偶数個の追加部分画像を抽出する。図16を参照して、2個の追加部分画像を抽出することを例にとって説明すると、まず、158画素×158画素の入力画像と二辺を共通とする、4つの128画素×128画素の部分画像を追加部分画像の候補として抽出しておき、それらの4つの候補のうち、面積重心から中心線までの距離が最大である2つの部分画像を2つの追加部分画像として抽出する。ここで、中心線とは、画像の回転角度だけ回転したX軸のことである。ここで、追加部分画像の候補を、入力画像と二辺を共通とするものとしたが、これは、追加部分画像の面積重心を入力画像の面積重心からできる限り離すためである。従って、厳密に追加部分画像の候補を、入力画像と二辺を共通としなくてもよく、追加部分画像の候補の二辺がそれぞれ入力画像の二辺から多少離れていても良い。本発明では、このような場合も含め、追加部分画像の候補が、入力画像と二辺を共通とするという。
【0036】
第2フーリエ変換部139は、追加部分画像抽出部137から入力した2つの以上の追加部分画像をフーリエ変換して、周波数成分の振幅分布を求める。
【0037】
回転角度補正部141は、第1フーリエ変換部133から入力した初期部分画像の周波数成分の振幅分布及び第2フーリエ変換部139から入力した2つ以上の追加部分画像の周波数成分のそれぞれの振幅分布の回転角度を、回転角度検出部135から入力した回転角度だけ補正する。すなわち、それぞれの振幅分布を周波数領域において直流を表す軸を中心にして回転角度検出部135から入力した回転角度だけ逆に回転させる。
【0038】
データパターン検出部143は、回転角度補正部141により回転角度が補正された初期部分画像の周波数成分の振幅分布を基に、初期部分画像からデータパターンを抽出し、更に、回転角度補正部141により回転角度が補正された2以上の追加部分画像の周波数成分の振幅分布を基に、それぞれの追加部分画像からデータパターンを抽出する。
【0039】
図17を参照すると、データパターン検出部143は、ハミングチェック部143−1、第1パリティチェック部143−3、第2パリティチェック部143−5、データパターン抽出部143−7及び判断部143−9を含む。
【0040】
ハミングチェック部143−1は、各部分画像の周波数成分の振幅分布を基に、データパターンに含まれる非ゼロ周波数成分とゼロ周波数成分であって、情報点であるとみなされた周波数成分について、検査点を用いたハミング誤り訂正を行う。すなわち、ハミングチェック部143−1は、各部分画像に含まれる図5に示す、検査点に対応した周波数成分を用いて、情報点とみなされた周波数成分について、ハミング誤り訂正を行う。例えば、(7、4)ハミング符号が用いられ、誤りが検出されない時には、情報点とみなされた周波数成分をそのまま出力する。(7、4)ハミング符号が用いられ、1誤りが検出された時には、情報点とみなされた周波数成分を検査点を利用して訂正した後に出力する。
【0041】
第1パリティチェック部143−3は、各部分画像の周波数成分の振幅分布を基に、ハミングチェック部143−1によるハミング誤り訂正後に、データパターンに含まれる非ゼロ周波数成分とゼロ周波数成分について、第1のパリティを用いたパリティチェックを行う。すなわち、第1パリティチェック部143−3は、第1のパリティに対応した周波数成分より第1のパリティの値を求め、この第1のパリティを用いて、データパターンに含まれる非ゼロ周波数成分とゼロ周波数成分についてパリティチェックを行う。パリティエラーが検出された場合には、セットされたエラーフラグ1を出力し、パリティエラーが検出されない場合には、リセットされたエラーフラグ1を出力する。
【0042】
第2パリティチェック部143−5は、各部分画像の周波数成分の振幅分布を基に、ハミングチェック部143−1によるハミング誤り訂正後に、第1のパリティについて、第2のパリティを用いたパリティチェックを行う。すなわち、第2パリティチェック部143−5は、第1のパリティに対応した周波数成分より第1のパリティを求め、第2のパリティに対応した周波数成分より第2のパリティを求め、第1のパリティについて、第2のパリティを用いたパリティチェックを行う。パリティエラーが検出された場合には、セットされたエラーフラグ2を出力し、パリティエラーが検出されない場合には、リセットされたエラーフラグ2を出力する。
【0043】
判断部143−9は、エラーフラグ1に基づいて、第1パリティチェック部143−3によりパリティエラーがないことが確認され、且つ、エラーフラグ2に基づいて、第2パリティチェック部143−5によりパリティエラーがないことが確認されたならば、リセットされたエラーフラグを出力する。判断部143−9は、それ以外の場合には、セットされたエラーフラグを出力する。すなわち、判断部143−9は、エラーフラグ1とエラーフラグ2の論理和をとって、その論理和の結果を最終的なエラーフラグとして出力する。
【0044】
データパターン抽出部143−7は、判断部143−9が出力するエラーフラグがリセットされていれば、ハミングチェック部143−1により誤りがないことが検出され、又は、誤りが訂正された後に得られた各部分画像の周波数成分の振幅分布から求まる、データを表す非ゼロ周波数成分とゼロ周波数成分とのパターンを、その各部分画像から得られるデータパターンとして出力する。
【0045】
多数決部145は、図18に示すように、3つの部分画像のそれぞれから求まるデータパターンのうち2つ以上の部分画像(すなわち、過半数の部分画像)から求まるデータパターンが一致していれば、その一致したデータパターンを正しいデータパターンとして出力する。
【0046】
デコード部147は、多数決部145が出力するデータパターンをデコードして、電子透かし挿入装置の入力データを再現する。
【0047】
検出回転角度エラー/上下反転検出結果エラー検出部149は、回転角度検出部135で検出した角度に誤りがあるか否か、また、上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定用パターンに基づいて画像の上下反転を検出したとしたならば、その検出結果は誤りとなるか否かを次に説明方法により判断する。
【0048】
図19の(a)から(g)のそれぞれにおいて、図8〜12において、白抜きの丸で示されるのは非ゼロ周波数成分である。これらの非ゼロ周波数成分のそれぞれには、図19に示すように、ポイントが与えられている。
【0049】
検出回転角度エラー/上下反転検出結果エラー検出部149は、第1フーリエ変換部133から入力した初期部分画像及び第2フーリエ変換部139入力した2以上の追加部分画像のそれぞれについて、図8〜12で白抜きの丸又は黒丸で示される位置にある非ゼロ周波数成分の振幅を見て、振幅が高い順に4つの周波数成分を選択する。そして、選択した周波数成分に与えられているポイントの和を総ポイントとして算出する。
【0050】
検出回転角度エラー/上下反転検出結果エラー検出部149は、このようにして、初期部分画像及びそれぞれの追加部分画像についての総ポイントを得る。
【0051】
検出回転角度エラー/上下反転検出結果エラー検出部149は、次に、第1の追加画像の総ポイントと第2の追加部分画像の総ポイントの差の絶対値を求め、第1の追加部分画像の総ポイントと第2の追加部分画像の総ポイントの和の絶対値を求める。
【0052】
検出回転角度エラー/上下反転検出結果エラー検出部149は、次に、(1)第1の追加部分画像の総ポイントと第2の追加部分画像の総ポイントの差の絶対値が所定の範囲に治まっているか否か、(2)第1の追加部分画像の総ポイントと第2の追加部分画像の総ポイントの和の絶対値が所定の値以下であるか否か、及び、(3)第1の追加部分画像の総ポイント、初期追加部分画像の総ポイント及び第2の追加部分画像の総ポイントがこの順又はこれと逆の順に並んでいるか否かを調べる。
【0053】
検出回転角度エラー/上下反転検出結果エラー検出部149は、上記3つの調べた結果が全て肯定的である場合には、回転角度検出部135により検出された回転角度が正しく、且つ、上下反転判定部(図示せず)が上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定用パターンに基づいて画像の上下反転を検出したとしたならば、その検出結果が正しいと判断する。上記3つの調べた結果のいずれか1つでも否定的である場合には、(i)回転角度検出部135により検出された回転角度、及び、(ii)上下反転判定部(図示せず)が上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定用パターンに基づいて画像の上下反転を検出したと仮定した場合の検出結果、のうちの少なくとも1つが間違っていると判断する。
【0054】
第1の追加部分画像の総ポイントと第2の追加部分画像の総ポイントの差の絶対値が所定の範囲未満である場合に、(i)及び(ii)のうちの少なくとも1つが間違っていると判断するのは以下の理由による。
【0055】
すなわち、第1の追加部分画像の面積中心と第2の追加部分画像の面積中心の間には距離があり、これらの2つの追加部分画像の図7の領域が通常は異なる。第1の追加部分画像の総ポイントと第2の追加部分画像の総ポイントの差の絶対値は第1の追加部分画像の面積中心と第2の追加部分画像の中心との間の距離を表している(領域が1つずれると5ポイント変わる)。第1の追加部分画像の総ポイントと第2の追加部分画像の総ポイントの差の絶対値が小さすぎるということは第1の追加部分画像と第2の追加部分画像がほとんど同じ部分を撮影して得たものであるということになるため、エラーであると判断する。
【0056】
第1の追加部分画像の総ポイントと第2の追加部分画像の総ポイントの差の絶対値が所定の範囲を超える場合に、(i)及び(ii)のうちの少なくとも1つが間違っていると判断するのは以下の理由による。
【0057】
上記同様に、第1の追加部分画像の総ポイントと第2の追加部分画像の総ポイントの差の絶対値が大きいということは第1の追加部分画像と第2の追加部分画像との間の距離が長いということを表しており、第1の追加部分画像の総ポイントと第2の追加部分画像の総ポイントの差の絶対値が度を越えて大きいということは、撮影画像がおかしいと判断できるからである。
【0058】
第1の追加部分画像の総ポイントと第2の部分画像の総ポイントの和の絶対値が所定の範囲を超える場合に、エラーであると判断するのは以下の理由による。
【0059】
何れかの追加部分画像の総ポイントの絶対値が大きいということは、撮影対象であるカードに対する撮像装置の位置が端にずれているということになる。撮影対象であるカードに対する撮像装置の位置が中央であれば、追加部分画像の総ポイントは0になる。ここで、第1の追加部分画像の総ポイントと第2の部分画像の総ポイントの和の絶対値が大きすぎるということは、両方の追加部分画像とも撮影対象であるカードの同じ端を撮影して得られたものであると考えられる。この場合、カードがガイドをはみ出て、カードの可動領域外にあると考えられる。よって、エラーとして排除する。
第1の追加部分画像の総ポイント、初期部分画像の総ポイント及び第2の追加部分画像の総ポイントがこの順又はこれと逆の順に並んでいない場合に、(i)及び(ii)のうちの少なくとも1つが間違っていると判断するのは、回転角度検出部135により検出された回転角度及び上下反転判定部(図示せず)による判定が正しければ、必ず、第1の追加部分画像の総ポイント、初期部分画像の総ポイント及び第2の追加部分画像の総ポイントがこの順又はこれと逆の順に並ぶからである。
【0060】
判断部113は、上記3つのことを判断する代わりに、下記のことを判断しても良い。
【0061】
すなわち、検出回転角度エラー/上下反転検出結果エラー検出部149は、第1の追加部分画像の総ポイントと第2の追加部分画像の総ポイントとの差の絶対値について第1の上限値とその第1の上限値よりも大きい第2の上限値と第1の下限値とその第1の下限値よりも小さい第2の下限値とを設け、第1の追加部分画像の総ポイントと第2の追加部分画像の総ポイントとの和の絶対値について第3の上限値とその第3の上限値よりも大きい第4の上限値と第3の下限値とその第3の下限値よりも小さい第4の下限値とを設け、(1)差の絶対値が第1の上限値を超過し、(2)差の絶対値が第1の下限値を下回り、(3)和の絶対値が第3の上限値を超過し、又は、(4)和の絶対値が第3の下限値を下回っていても、その超過又は下回りの総数((1)から(4)の何れかに該当する数)が所定数未満であり、且つ、(5)第1の追加部分画像についての総ポイント、初期部分画像についての総ポイント及び第2の追加部分画像についての総ポイントがこの順又はこれと逆の順に並ぶか否かをみる第1の判断を行う。
【0062】
また、検出回転角度エラー/上下反転検出結果エラー検出部149は、(6)差の絶対値が第2の上限値を超過し、(7)差の絶対値が第2の下限値を下回り、又は、(8)和の絶対値が第4の上限値を超過するか否かをみる第2の判断を行う。
【0063】
検出回転角度エラー/上下反転検出結果エラー検出部149は、第1の判断による判断結果が肯定的である場合には、(i)回転角度検出部135により検出された回転角度、及び、(ii)上下反転判定部(図示せず)が上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定用パターンに基づいて画像の上下反転を検出したと仮定した場合の検出結果が正しいと判断する。
【0064】
また、判断部113は、第1の判断による判断結果が否定的である場合((1)から(4)の何れかに該当する数が諸定数以上であり、又は、(5)が満たされていない場合)には、(i)回転角度検出部135により検出された回転角度、及び、(ii)上下反転判定部(図示せず)が上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定用パターンに基づいて画像の上下反転を検出したと仮定した場合の検出結果、のうちの少なくとも1つが正しくないと判断する。
【0065】
更に、判断部113は、第2の判断による判断結果が肯定的である場合((6)、(7)又は(8)の何れか1つでも満たされている場合)には、(i)回転角度検出部135により検出された回転角度、及び、(ii)上下反転判定部(図示せず)が上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定用パターンに基づいて画像の上下反転を検出したと仮定した場合の検出結果、のうちの少なくとも1つが正しくないと判断する。
【0066】
なお、上記の説明では、検出回転角度エラー/上下反転検出結果エラー検出部149が利用する追加部分画像の数は2個であるとしたが、例えば、これを4個にしてもよい。この場合、例えば、増加した2つの追加部分画像を、初期部分画像と上記の2つの追加部分画像それぞれとの間に設け、上記の2つの追加部分画像の代わりに、増加した2つの追加部分画像を利用して、上記で説明した判断を行い、上記で説明した判断(*1)と追加部分画像とを置き換えた場合の上記で説明した判断(*2)を複合させて最終的な判断を行うようにしても良い。すなわち、例えば、判断(*1)と判断(*2)とが共に肯定的である場合に、最終的な判断を肯定的であるようにしても良いし、判断(*1)と判断(*2)との少なくとも何れか一方が肯定的である場合に、最終的な判断を肯定的にしても良い。
【0067】
上述した電子透かし検出装置の動作をまとめたのが図20及び図21に示すフローチャートである。図20を参照すると、まず、初期部分画像抽出部131は、入力画像から初期部分画像を抽出する(ステップS231)。次に、第1フーリエ変換部133は、初期部分画像をフーリエ変換する(ステップS233)。次に、回転角度検出部135は、フーリエ変換された初期部分画像を基に、入力画像の回転角度を検出する(ステップS235)。次に、回転角度検出部135が、入力画像の回転角度を検出されたか否かをみて(ステップS237)、できていない場合には、エラー終了する。次に、追加部分画像抽出部137は、入力画像から2以上の偶数個の追加部分画像を抽出する(ステップS239)。次に、第2フーリエ変換部139は、それぞれの追加部分画像をフーリエ変換する(ステップS241)。次に、回転角度補正部141は、初期部分画像とそれぞれの追加部分画像の周波数成分の位置を回転角度検出部135で検出された回転角度だけ補正する(ステップS243)。次に、検出回転角度エラー/上下反転検出結果エラー検出部149は、上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定用パターンを用いて、回転角度検出部135が検出した画像の回転角度が正しいか否かを判断し、また、上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定用パターンに基づいて、上下反転検出部が入力画像の上下反転検出をおこなっていたと仮定した場合に、その上下反転検出の結果が正しいものとなっていたであろうか否か(潜在的な上下反転検出結果が正しいか否か)を判断する(ステップS245)。次に、検出された回転角度及び/又は潜在的な上下反転検出結果に誤りがあるか否かを判断する(ステップS247)。検出された回転角度及び潜在的な上下反転検出結果の少なくとも一方に誤りがあれば、エラー終了する。次に、データパターン検出部143は、初期部分画像とそれぞれの追加部分画像からデータパターンを検出する(ステップS249)。次に、多数決部145は、初期部分画像から検出されたデータパターン及びそれぞれの追加部分画像からデータパターンを多数決にかけることにより、最終的なデータパターンを求める(ステップS251)。過半数のデータパターンが一致していない場合には、エラー終了する。但し、追加部分画像が、例えば、4つある場合には、4以上のデータパターンが一致している場合に、そのデータパターンを最終的なデータパターンとして、そうでない場合に、エラー終了しても良い。
【0068】
図21は、データパターン検出部143が行うステップS249の詳細な内容を説明するためのフローチャートである。図21を参照すると、データパターン検出部143は、初期部分画像及びそれぞれの追加部分画像について、ステップS249−1SからステップS249−1Eの間にある処理を行う。
【0069】
各部分画像について、まず、ハミングチェック部143−1は、ハミングチェックを行い、誤りがなければ入力データをそのまま出力し、誤りが1つだけであれば、入力データについて1誤り訂正を行ってからそれを出力する(ステップS249−3)次に、第1パリティチェック部143−3は、第1のパリティを用いて、それぞれの第1のパリティの対象となっているデータについてパリティチェックを行う(ステップS249−7)。いずれかの第1のパリティを用いたパリティチェックにおいてエラーが検出された場合には、エラーフラグ1をセットする(ステップS249−9でYES)。次に、第2パリティチェック部143−5は、第2のパリティを用いて、第1のパリティについてパリティチェックを行う(ステップS249−11)。第2のパリティを用いたパリティチェックにおいてエラーが検出された場合には、エラーフラグ2をセットする(ステップS249−13)。ステップS249−9でNOであり、且つ、ステップS249−13でNOである場合には、現在の部分画像についてエラーフラグをリセットし、検出されたデータパターンを出力する(ステップS249−17)。ステップS249−9でYESであり、又は、ステップS249−13でYESである場合には、現在の部分画像についてエラーフラグをセットする。出力するデータパターンはどのようなものであってもよい。
【0070】
なお、図示していない上下反転判定部は、上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定用パターンに基づいて、次に述べるような方法で、画像の上下反転を検出する。すなわち、画像が反転していなければ、第1の追加部分画像についての総ポイントはプラスとなり、第2の追加部分画像についての総ポイントはマイナスとなる。反対に、画像が反転していれば、第1の追加部分画像についての総ポイントはマイナスとなり、第2の追加部分画像についての総ポイントはプラスとなる。従って、このような差異を利用して、画像の上下反転を検出することができる。
【0071】
また、図7に画像を横長の短冊に分割する例を示しているが、縦長の短冊に分割しても良い。この場合、必要に応じて、図8〜12に示す非ゼロ周波数成分の分布を変えても良い。
【0072】
また、上記の電子透かし挿入装置の各部及び電子透かし検出装置の各部は、ハードウェアによって実現することもできるが、コンピュータを上記の各部として機能させるためのプログラムを記録媒体から読み込んで実行することによっても実現することができる。
【符号の説明】
【0073】
101 エンコード部
103 データパターン配置部
105 第1パリティ配置部
107 第2パリティ配置部
109 検査パリティ配置部
111 回転角度検出用パターン配置部
113 上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定用パターン配置部
115 逆フーリエ変換部
117 重畳部
131 初期部分画像抽出部
133 第1フーリエ変換部
135 回転角度検出部
137 追加部分画像抽出部
139 第2フーリエ変換部
141 回転角度補正部
143 データパターン検出部
145 多数決部
147 デコード部
149 検出回転角度エラー/上下反転検出結果エラー検出部
【技術分野】
【0001】
本発明は、画像データに電子透かしを挿入するための電子透かし挿入装置及び電子透かし挿入方法並びに電子透かしが挿入された画像データから電子透かしを検出するための電子透かし検出装置及び電子透かし検出方法に関する。
【背景技術】
【0002】
本発明の出願人は、電子透かし挿入方法及び電子透かし挿入方法並びに電子透かし検出装置及び電子透かし検出方法に関する発明を出願し、権利化している(例えば、特許文献1参照)。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特許第4270504号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
ところが従来であれば、電子透かしを挿入するべき画像データに係る画像の面積が比較的広いため、そこから離散フーリエ変換により得られる周波数成分の数が比較的多く、従って、電子透かしに比較的多めの冗長度を付加することができた。具体的には、電子透かしを表す全ての周波数成分にパリティチェックのためのパリティを付加し、更に、電子透かしを表す全ての周波数成分にハミング符号を構成するための検査点を付加することができた。
【0005】
しかし、電子透かしを挿入するべき画像データに係る画像の面積が狭くても、電子透かし挿入装置により、その画像データに電子透かしを挿入し、電子透かし検出装置により、電子透かしが挿入された画像データから電子透かしを検出することが要請されるようになってきた。ここで、電子透かしを挿入するべき画像データに係る画像の面積が狭いと、そこから離散フーリエ変換により得られる周波数成分の数が少なくなるため、電子透かしを表す全ての周波数成分にパリティチェックのためのパリティを付加し、更に、電子透かしを表す全ての周波数成分にハミング符号を構成するための検査点を付加することができない。そうすると、従来の方法を用いると、電子透かし検出装置により高い正答率で電子透かしを検出することができない。
【0006】
そこで、本発明は、電子透かしを挿入するべき画像データに係る画像の面積が狭い場合であっても、検出側において、高い正答率で電子透かしを検出することを可能とする電子透かし挿入装置及び電子透かし挿入方法並びに電子透かし検出装置及び電子透かし検出方法を提供することを目的とする。
【課題を解決するための手段】
【0007】
本発明によれば、データを表す非ゼロ周波数成分とゼロ周波数成分とを含むデータパターンのうちの非ゼロ周波数成分を周波数領域に配置するデータパターン配置手段と、前記パターンを複数の第1サブパターンに分割し、各第1サブパターン毎にそのサブパターンに含まれる非ゼロ周波数成分の数に応じた第1パリティを生成し、該第1パリティを表す非ゼロ周波数成分とゼロ周波数成分を含む第1パリティパターンを生成し、該第1パリティパターンのうちの非ゼロ周波数成分を前記周波数領域に配置する第1パリティ配置手段と、前記サブパターン毎の第1パリティの集合についての第2パリティを生成し、該第2パリティを表す非ゼロ周波数成分とゼロ周波数成分を含む第2パリティパターンを生成し、該第2パリティパターンのうちの非ゼロ周波数成分を前記周波数領域に配置する第2パリティ配置手段と、前記データパターンのうち、何れの前記第1サブパターンとも一致しない第2のサブパターンに含まれる非ゼロ周波数成分とゼロ周波数成分を情報点と見なした場合のハミング符号における検査点を生成し、該検査点を表す非ゼロ周波数成分とゼロ周波数成分とを含む検査点パターンを生成し、該検査点パターンのうちの非ゼロ周波数成分を前記周波数領域に配置する検査パターン配置手段と、前記データパターン配置手段により前記周波数領域に配置された非ゼロ周波数成分、前記第1パリティ配置手段により前記周波数領域に配置された非ゼロ周波数成分、前記第2パリティ配置手段により前記周波数領域に配置された非ゼロ周波数成分及び前記検査パターン配置手段により前記周波数領域に配置された非ゼロ周波数成分を含むパターンを逆フーリエ変換することにより、空間領域パターンを生成する逆フーリエ変換手段と、前記空間領域パターンを原画像に重畳させる重畳手段と、を備えることを特徴とする電子透かし挿入装置が提供される。
【0008】
また、本発明によれば、上記の電子透かし挿入装置により電子透かしが挿入された画像から電子透かしを検出する電子透かし検出装置において、前記電子透かしが挿入された画像から、3以上の奇数個の部分画像を抽出する部分画像抽出手段と、各部分画像のデータをフーリエ変換して、各部分画像についての周波数成分の振幅分布を求めるフーリエ変換手段と、各部分画像の周波数成分の振幅分布からデータを表す非ゼロ周波数成分とゼロ周波数成分を含むデータパターンを検出するデータパターン検出手段と、過半数の部分画像から同一のデータを表すデータパターンが検出された場合に、そのデータパターンを正しいデータパターンであると判断する多数決手段と、を備え、前記データパターン検出手段は、各部分画像の周波数成分の振幅分布を基に、前記データパターンに含まれる非ゼロ周波数成分とゼロ周波数成分であって、情報点であるとみなされた周波数成分について、前記検査点を用いたハミング誤り訂正を行うハミングチェック手段と、各部分画像の周波数成分の振幅分布を基に、前記ハミングチェック手段によるハミング誤り訂正後に、前記データパターンに含まれる非ゼロ周波数成分とゼロ周波数成分について、前記第1のパリティを用いたパリティチェックを行う第1パリティチェック手段と、各部分画像の周波数成分の振幅分布を基に、前記ハミングチェック手段によるハミング誤り訂正後に、前記第1のパリティについて、前記第2のパリティを用いたパリティチェックを行う第2パリティチェック手段と、各部分画像において、前記ハミングチェック手段により誤りがないことが検出され、又は、誤りが訂正され、且つ、前記第1パリティチェック手段によりパリティエラーがないことが検出され、且つ、前記第2パリティチェック手段によりパリティエラーがないことが検出されたならば、前記ハミングチェック手段により誤りがないことが検出され、又は、誤りが訂正された後に得られた各部分画像の周波数成分の振幅分布から求まる、データを表す非ゼロ周波数成分とゼロ周波数成分とのパターンを、その各部分画像から得られるデータパターンとする判断手段と、を備えることを特徴とする電子透かし検出装置が提供される。
【発明の効果】
【0009】
本発明によれば、データを表す非ゼロ周波数成分及びゼロ周波数成分のうち第2のサブパターンに含まれない周波数成分については、ハミング誤り訂正が行われないが、第1のパリティについて、第2のパリティを用いたエラーチェックを行い、更に、過半数の部分画像から同一のデータを表すデータパターンが検出された場合にのみ、そのデータパターンを正しいデータパターンであると判断するため、誤ってデータパターンを検出してしまう可能性を非常に低くすることができる。
【図面の簡単な説明】
【0010】
【図1】本発明の実施形態における、電子透かし挿入装置の構成を示すブロック図である。
【図2】本発明の実施形態における、データを表す非ゼロ周波数成分とゼロ周波数成分の周波数領域における分布を示す図である。
【図3】本発明の実施形態における、データを表す非ゼロ周波数成分とゼロ周波数成分に付されるパリティに対応した非ゼロ周波数成分とゼロ周波数成分の周波数領域における分布を示す図である。
【図4】本発明の実施形態における、どのパリティが何に対して付加されるのかを示す図である。
【図5】本発明の実施形態における、データを表す非ゼロ周波数成分とゼロ周波数成分のうち第2のサブパターンに含まれるものに付される検査点に対応した非ゼロ周波数成分とゼロ周波数成分の周波数領域における分布を示す図である。
【図6】本発明の実施形態における、画像の回転角度を0度から180度の範囲で検出するための非ゼロ周波数成分の周波数領域における分布を示す図である。
【図7】本発明の実施形態における、別々の上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定用パターンが挿入される短冊の集合を示した図である。
【図8】本発明の実施形態における、上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定用パターンに含まれる非ゼロ周波数成分及びゼロ周波数成分であって、画像の第1の短冊に含まれるものを示す図である。
【図9】本発明の実施形態における、上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定用パターンに含まれる非ゼロ周波数成分及びゼロ周波数成分であって、画像の第2の短冊に含まれるものを示す図である。
【図10】本発明の実施形態における、上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定用パターンに含まれる非ゼロ周波数成分及びゼロ周波数成分であって、画像の第3の短冊に含まれるものを示す図である。
【図11】本発明の実施形態における、上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定用パターンに含まれる非ゼロ周波数成分及びゼロ周波数成分であって、画像の第4の短冊に含まれるものを示す図である。
【図12】本発明の実施形態における、上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定用パターンに含まれる非ゼロ周波数成分及びゼロ周波数成分であって、画像の第5の短冊に含まれるものを示す図である。
【図13】本発明の実施形態における、電子透かしとして配置される全ての非ゼロ周波数成分とゼロ周波数成分の周波数成分における分布を示す図である。
【図14】本発明の実施形態における、図1に示す電子透かし挿入装置の動作を示すフローチャートである。
【図15】本発明の実施形態における、電子透かし検出装置の構成を示すブロック図である。
【図16】(a)は、電子透かし検出装置に入力される画像の回転角度が0度である場合の初期部分画像と2つの追加部分画像を示し、(b)は、電子透かし検出装置に入力される画像の回転角度が75度である場合の初期部分画像と2つの追加部分画像を示し、(c)は、電子透かし検出装置に入力される画像の回転角度が135度である場合の初期部分画像と2つの追加部分画像を示す。
【図17】図15に示すデータパターン検出部の内部構成を示すブロック図である。
【図18】本発明の実施形態における、部分画像の数が3であるとした場合の多数決部の入力と出力との関係を示す表である。
【図19】本発明の実施形態における、上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定用パターンに含まれる非ゼロ周波数成分のそれぞれに付けられるポイントを示す図である。
【図20】本発明の実施形態における、図15に示す電子透かし検出装置の動作を示すフローチャートである。
【図21】図20に示す「初期部分画像と各追加部分画像からデータパターンを検出する」ステップの詳細を示すフローチャートである。
【発明を実施するための形態】
【0011】
以下、図面を参照して本発明を実施するための形態について詳細に説明する。
【0012】
図1を参照すると、本発明の実施形態による電子透かし挿入装置は、エンコード部101、データパターン配置部103、第1パリティ配置部105、第2パリティ配置部107、検査パターン配置部109、回転角度検出用パターン配置部111、上下反転検出/回転角度正誤判定/上下反転検出結果判定用パターン配置部113、逆フーリエ変換部115及び重畳部117を含む。
【0013】
エンコード部101は、入力したデータを基に、図2に○で示すような位置に配置する周波数成分の振幅をゼロにするか非ゼロにするかを決める。その際、円1、円2、円3のそれぞれにある○で示す周波数成分の数は、4、10、6である。それぞれの円において、振幅をゼロにする周波数成分と振幅を非ゼロにする周波数成分の数を等しくする。従って、エンコーダ部101は、4C2×10C5×6C3=30240通りの入力データをエンコードすることができる。
【0014】
データパターン配置部103は、図2に○で示す位置にエンコード部101によって振幅が定まった周波数成分を配置する。
【0015】
第1パリティ配置部105は、図2に○で示す各位置の周波数成分の振幅がゼロであるか非ゼロであるかによって値がゼロか1かに決まる第1のパリティを6つ生成し、そのパリティの値に応じて振幅が決まる周波数成分を図3に○で示す位置(但し、円1の位置14及び15を除く)に配置する。
【0016】
図4を参照すると、第1のパリティのうちパリティ1の値は、円1の位置3にある周波数成分(「円1−3」で示す。)の振幅、円2の位置7にある周波数成分(「円2−7」で示す。)の振幅、円2の位置14にある周波数成分(「円2−14」で示す。)の振幅、円3の位置9にある周波数成分(「円3−9」で示す。)の振幅により決まる。パリティ1を偶数パリティとするならば、円1の位置3にある周波数成分、円2の位置7にある周波数成分、円2の位置14にある周波数成分、円3の位置9にある周波数成分のうち、振幅がゼロである周波数成分の数が偶数であれば、パリティ1の値はゼロとなる。パリティ1を奇数パリティとするならば、円1の位置3にある周波数成分、円2の位置7にある周波数成分、円2の位置14にある周波数成分、円3の位置9にある周波数成分のうち、振幅がゼロである周波数成分の数が奇数であれば、パリティ1の値はゼロとなる。
【0017】
図3を参照すると、パリティ1に対応した周波数成分は、円3の位置0にあるものと円3の位置1にあるものの2つの周波数成分である。パリティ1の値がゼロであれば、円3の位置0にある周波数成分の振幅がゼロとなり、円3の位置1にある周波数成分の振幅が非ゼロとなる。パリティ1の値が1であれば、円3の位置0にある周波数成分の振幅が非ゼロとなり、円3の位置1にある周波数成分の振幅がゼロとなる。
【0018】
円1の位置3にあるデータを表す周波数成分、円2の位置7にあるデータを表す周波数成分、円2の位置14にあるデータを表す周波数成分、円3の位置9にあるデータを表す周波数成分、円1の位置0にあるパリティを表す周波数成分及び円1の位置1にあるパリティを表す周波数成分は、中心を通る相互に直交した任意の2つの直線上には2以上並ばない。これは、ノイズによる非ゼロ周波数成分が中心を通る相互に直交した任意の2つの直線上に並ぶことを考慮し、データを表す周波数成分及びパリティを表す周波数成分のうち2以上の周波数成分がノイズに埋もれないようにするためである。
【0019】
第1のパリティのうちパリティ2の値、パリティ3の値、パリティ4の値、パリティ5の値及びパリティ6の値は、パリティ1の値と同様にして決まる。パリティ1〜6が付される対象となるデータを表す周波数成分の位置は、図4に示すとおりである。このうち、パリティ1のみについて、上記で詳細に説明したが、パリティ2〜6の値も、パリティ1の値と同様に決まる。
【0020】
また、図3に示すように、パリティ2に対応した周波数成分は、円3の位置5と位置6に配置され、パリティ3に対応した周波数成分は、円3の位置10と位置11に配置され、パリティ4に対応した周波数成分は、円2の位置2と位置3に配置され、パリティ5に対応した周波数成分は、円2の位置4と位置5に配置され、パリティ6に対応した周波数成分は、円2の位置9と位置10に配置される。
【0021】
第2パリティ配置部107は、パリティ1〜6によって値がゼロか1かに決まる第2のパリティであるパリティ7を生成し、そのパリティの値に応じて振幅が決まる周波数成分を図3に○で示す位置(具体的には、円1の位置14及び15)に配置する。
【0022】
図4を参照すると、第2のパリティであるパリティ7の値は、パリティ1〜6の値により決まる。パリティ7を偶数パリティとするならば、パリティ1〜6のうち値がゼロであるパリティの数が偶数であれば、パリティ7の値はゼロとなる。パリティ7を奇数パリティとするならば、パリティ1〜6のうち値がゼロであるパリティの数が奇数であれば、パリティ7の値はゼロとなる。
【0023】
図3を参照すると、パリティ7に対応した周波数成分は、円1の位置14にあるものと円1の位置15にあるものの2つの周波数成分である。パリティ7の値がゼロであれば、円1の位置14にある周波数成分の振幅がゼロとなり、円1の位置15にある周波数成分の振幅が非ゼロとなる。パリティ7の値が1であれば、円1の位置14にある周波数成分の振幅が非ゼロとなり、円1の位置1に15ある周波数成分の振幅がゼロとなる。
【0024】
パリティ1〜7を表す周波数成分は、中心を通る相互に直交した任意の2つの直線上には2以上並ばない。これは、ノイズによる非ゼロ周波数成分が中心を通る相互に直交した任意の2つの直線上に並ぶことを考慮し、パリティを表す周波数成分のうち2以上の周波数成分がノイズに埋もれないようにするためである。
【0025】
検査パターン配置部109は、円1にあるデータを表す周波数成分(円1の位置2、3、16、17にある周波数成分)の値を検査点の値とし(周波数成分の振幅がゼロであれば、検査点の値をゼロとし、周波数成分の振幅が非ゼロであれば、検査点の値を1とし)、これらの検査点の値を基に、ハミング符号における検査シンボルを生成し、検査シンボルの値に対応した振幅を有する周波数成分を円1の位置0、1、4、5、18、19に配置する(図5参照)。具体的には、第1の検査シンボルに対応した周波数成分を円1の位置0、1に配置し、第2の検査シンボルに対応した周波数成分を円1の位置4、5に配置し、第3の検査シンボルに対応した周波数成分を円1の位置18、19に配置する。例えば、第1の検査シンボルの値がゼロであれば、円1の位置0に配置する周波数成分の値をゼロにし、円1の位置1に配置する周波数成分の値を1にするが、この逆であっても良い。周波数成分の振幅については、第2の検査シンボル、第3の検査シンボルについても第1の検査シンボルと同様である。
【0026】
回転角度検出用パターン配置部111は、図6で○で示す位置に回転角度を0度〜180度の範囲で検出するための非ゼロ周波数成分を配置する。
【0027】
上下反転検出/回転角度正誤判定/上下反転検出結果判定用パターン配置部113は、図7に示すように、画像を(a)〜(e)の5つの短冊に分割し、短冊(a)の周波数領域に図8に示すパターンを配置し、短冊(b)の周波数領域に図9に示すパターンを配置し、短冊(c)の周波数領域に図10に示すパターンを配置し、短冊(d)の周波数領域に図11に示すパターンを配置し、短冊(e)の周波数領域に図12に示すパターンを配置する。図8〜12において、白抜きの丸で示したものは非ゼロ周波数成分であり、黒丸で示したものはゼロ周波数成分である。
【0028】
逆フーリエ変換部115は、図13に示すように、データパターン配置部103が周波数領域に配置した非ゼロ周波数成分、第1パリティ配置部105が周波数領域に配置した非ゼロ周波数成分、第2パリティ配置部が周波数領域に配置した非ゼロ周波数成分、検査パターン配置部109が周波数領域に配置した非ゼロ周波数成分、回転角度検出用パターン配置部111が周波数領域に配置した非ゼロ周波数成分、上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定用パターン配置部113が周波数領域に配置した非ゼロ周波数成分を合わせたものを逆フーリエ変換して、空間パターンを生成する。なお、周波数成分を表す上記で説明した図には、周波数領域の第1象限及び第2象限のもが記載されているが、第1象限及び第2象限に存在する非ゼロ周波数成分と周波数領域の原点について点対称の位置にもそれらの非ゼロ周波数成分に対応した非ゼロ周波数成分が存在し、逆フーリエ変換部115が出力する空間パターンは実数部のみを有し、虚数部を有さない。
【0029】
重畳部117は、逆フーリエ変換部115が生成した空間パターンを原画像に重畳する。ここで、重畳とは、加算又は減算を意味する。
【0030】
上述した電子透かし挿入装置の動作をまとめたのが図14に示すフローチャートである。図14を参照すると、エンコード部101は、入力データをエンコードして、データパターンを生成する(ステップS201)。データパターン配置部103は、データパターンのうち非ゼロ周波数成分を周波数領域に配置する(ステップS203)。第1パリティ配置部105は、第1パリティパターンを生成し、そのうちの非ゼロ周波数成分を周波数領域に配置する(ステップS205)。第2パリティ配置部107は、第2パリティパターンを生成し、そのうち非ゼロ周波数成分を周波数領域に配置する(ステップS207)。検査点パターン配置部109は、検査点パターンを生成し、そのうち非ゼロ周波数成分を周波数領域に配置する(ステップS209)。回転角度検出用パターン配置部111は、回転角度検出用パターンを生成し、そのうちの非ゼロ周波数成分を周波数領域に配置する(ステップS211)。上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定用パターン配置部113は、上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定用パターンを生成し、そのうち非ゼロ周波数成分を周波数領域に配置する(ステップS213)。逆フーリエ変換部115は、データパターン配置部103が周波数領域に配置した非ゼロ周波数成分、第1パリティ配置部105が周波数領域に配置した非ゼロ周波数成分、第2パリティ配置部が周波数領域に配置した非ゼロ周波数成分、検査パターン配置部109が周波数領域に配置した非ゼロ周波数成分、回転角度検出用パターン配置部111が周波数領域に配置した非ゼロ周波数成分、上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定用パターン配置部113が周波数領域に配置した非ゼロ周波数成分を合わせたものを逆フーリエ変換して、空間パターンを生成する(ステップS215)。重畳部117は、逆フーリエ変換部115が生成した空間パターンを原画像に重畳する(ステップS217)。
【0031】
図15を参照すると、本発明の実施形態による電子透かし検出装置は、初期部分画像抽出部131、第1フーリエ変換部133、回転角度検出部135、追加部分画像抽出部137、第2フーリエ変換部139、回転角度補正部141、データパターン検出部143、多数決部145、デコード部147及び検出回転角度エラー/上下反転検出結果エラー検出部149を含む。
【0032】
初期部分画像抽出部131は、電子透かし挿入装置により電子透かしが挿入され、その上で、任意の角度回転した入力画像の中央部から初期部分画像を抽出する。例えば、入力画像のサイズが158画素×158画素であれば、後のフーリエ変換を考慮し、初期部分画像のサイズを128画素×128画素とする(図16(a)、(b)、(c)の「初期部分画像」を参照)。一般に入力画像が回転しているのは、電子透かし挿入装置により電子透かしが挿入された画像は紙などに印刷され、カメラやスキャナなどにより撮影されるためである。撮影時に画像が回転する。
【0033】
第1フーリエ変換部133は、初期部分画像抽出部131が抽出した初期部分画像をフーリエ変換して、周波数成分の振幅分布を求める。
【0034】
回転角度検出部135は、第1フーリエ変換部133から入力した初期部分画像の周波数成分の振幅分布から、図6に○で示す回転角度を0度〜180度の範囲で検出するための非ゼロ周波数成分を求め、それらの非ゼロ周波数成分の分布の非対称性を利用して入力画像の回転角度を0度〜180度の範囲で検出する。
【0035】
追加部分画像抽出部137は、入力画像から2以上の偶数個の追加部分画像を抽出する。図16を参照して、2個の追加部分画像を抽出することを例にとって説明すると、まず、158画素×158画素の入力画像と二辺を共通とする、4つの128画素×128画素の部分画像を追加部分画像の候補として抽出しておき、それらの4つの候補のうち、面積重心から中心線までの距離が最大である2つの部分画像を2つの追加部分画像として抽出する。ここで、中心線とは、画像の回転角度だけ回転したX軸のことである。ここで、追加部分画像の候補を、入力画像と二辺を共通とするものとしたが、これは、追加部分画像の面積重心を入力画像の面積重心からできる限り離すためである。従って、厳密に追加部分画像の候補を、入力画像と二辺を共通としなくてもよく、追加部分画像の候補の二辺がそれぞれ入力画像の二辺から多少離れていても良い。本発明では、このような場合も含め、追加部分画像の候補が、入力画像と二辺を共通とするという。
【0036】
第2フーリエ変換部139は、追加部分画像抽出部137から入力した2つの以上の追加部分画像をフーリエ変換して、周波数成分の振幅分布を求める。
【0037】
回転角度補正部141は、第1フーリエ変換部133から入力した初期部分画像の周波数成分の振幅分布及び第2フーリエ変換部139から入力した2つ以上の追加部分画像の周波数成分のそれぞれの振幅分布の回転角度を、回転角度検出部135から入力した回転角度だけ補正する。すなわち、それぞれの振幅分布を周波数領域において直流を表す軸を中心にして回転角度検出部135から入力した回転角度だけ逆に回転させる。
【0038】
データパターン検出部143は、回転角度補正部141により回転角度が補正された初期部分画像の周波数成分の振幅分布を基に、初期部分画像からデータパターンを抽出し、更に、回転角度補正部141により回転角度が補正された2以上の追加部分画像の周波数成分の振幅分布を基に、それぞれの追加部分画像からデータパターンを抽出する。
【0039】
図17を参照すると、データパターン検出部143は、ハミングチェック部143−1、第1パリティチェック部143−3、第2パリティチェック部143−5、データパターン抽出部143−7及び判断部143−9を含む。
【0040】
ハミングチェック部143−1は、各部分画像の周波数成分の振幅分布を基に、データパターンに含まれる非ゼロ周波数成分とゼロ周波数成分であって、情報点であるとみなされた周波数成分について、検査点を用いたハミング誤り訂正を行う。すなわち、ハミングチェック部143−1は、各部分画像に含まれる図5に示す、検査点に対応した周波数成分を用いて、情報点とみなされた周波数成分について、ハミング誤り訂正を行う。例えば、(7、4)ハミング符号が用いられ、誤りが検出されない時には、情報点とみなされた周波数成分をそのまま出力する。(7、4)ハミング符号が用いられ、1誤りが検出された時には、情報点とみなされた周波数成分を検査点を利用して訂正した後に出力する。
【0041】
第1パリティチェック部143−3は、各部分画像の周波数成分の振幅分布を基に、ハミングチェック部143−1によるハミング誤り訂正後に、データパターンに含まれる非ゼロ周波数成分とゼロ周波数成分について、第1のパリティを用いたパリティチェックを行う。すなわち、第1パリティチェック部143−3は、第1のパリティに対応した周波数成分より第1のパリティの値を求め、この第1のパリティを用いて、データパターンに含まれる非ゼロ周波数成分とゼロ周波数成分についてパリティチェックを行う。パリティエラーが検出された場合には、セットされたエラーフラグ1を出力し、パリティエラーが検出されない場合には、リセットされたエラーフラグ1を出力する。
【0042】
第2パリティチェック部143−5は、各部分画像の周波数成分の振幅分布を基に、ハミングチェック部143−1によるハミング誤り訂正後に、第1のパリティについて、第2のパリティを用いたパリティチェックを行う。すなわち、第2パリティチェック部143−5は、第1のパリティに対応した周波数成分より第1のパリティを求め、第2のパリティに対応した周波数成分より第2のパリティを求め、第1のパリティについて、第2のパリティを用いたパリティチェックを行う。パリティエラーが検出された場合には、セットされたエラーフラグ2を出力し、パリティエラーが検出されない場合には、リセットされたエラーフラグ2を出力する。
【0043】
判断部143−9は、エラーフラグ1に基づいて、第1パリティチェック部143−3によりパリティエラーがないことが確認され、且つ、エラーフラグ2に基づいて、第2パリティチェック部143−5によりパリティエラーがないことが確認されたならば、リセットされたエラーフラグを出力する。判断部143−9は、それ以外の場合には、セットされたエラーフラグを出力する。すなわち、判断部143−9は、エラーフラグ1とエラーフラグ2の論理和をとって、その論理和の結果を最終的なエラーフラグとして出力する。
【0044】
データパターン抽出部143−7は、判断部143−9が出力するエラーフラグがリセットされていれば、ハミングチェック部143−1により誤りがないことが検出され、又は、誤りが訂正された後に得られた各部分画像の周波数成分の振幅分布から求まる、データを表す非ゼロ周波数成分とゼロ周波数成分とのパターンを、その各部分画像から得られるデータパターンとして出力する。
【0045】
多数決部145は、図18に示すように、3つの部分画像のそれぞれから求まるデータパターンのうち2つ以上の部分画像(すなわち、過半数の部分画像)から求まるデータパターンが一致していれば、その一致したデータパターンを正しいデータパターンとして出力する。
【0046】
デコード部147は、多数決部145が出力するデータパターンをデコードして、電子透かし挿入装置の入力データを再現する。
【0047】
検出回転角度エラー/上下反転検出結果エラー検出部149は、回転角度検出部135で検出した角度に誤りがあるか否か、また、上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定用パターンに基づいて画像の上下反転を検出したとしたならば、その検出結果は誤りとなるか否かを次に説明方法により判断する。
【0048】
図19の(a)から(g)のそれぞれにおいて、図8〜12において、白抜きの丸で示されるのは非ゼロ周波数成分である。これらの非ゼロ周波数成分のそれぞれには、図19に示すように、ポイントが与えられている。
【0049】
検出回転角度エラー/上下反転検出結果エラー検出部149は、第1フーリエ変換部133から入力した初期部分画像及び第2フーリエ変換部139入力した2以上の追加部分画像のそれぞれについて、図8〜12で白抜きの丸又は黒丸で示される位置にある非ゼロ周波数成分の振幅を見て、振幅が高い順に4つの周波数成分を選択する。そして、選択した周波数成分に与えられているポイントの和を総ポイントとして算出する。
【0050】
検出回転角度エラー/上下反転検出結果エラー検出部149は、このようにして、初期部分画像及びそれぞれの追加部分画像についての総ポイントを得る。
【0051】
検出回転角度エラー/上下反転検出結果エラー検出部149は、次に、第1の追加画像の総ポイントと第2の追加部分画像の総ポイントの差の絶対値を求め、第1の追加部分画像の総ポイントと第2の追加部分画像の総ポイントの和の絶対値を求める。
【0052】
検出回転角度エラー/上下反転検出結果エラー検出部149は、次に、(1)第1の追加部分画像の総ポイントと第2の追加部分画像の総ポイントの差の絶対値が所定の範囲に治まっているか否か、(2)第1の追加部分画像の総ポイントと第2の追加部分画像の総ポイントの和の絶対値が所定の値以下であるか否か、及び、(3)第1の追加部分画像の総ポイント、初期追加部分画像の総ポイント及び第2の追加部分画像の総ポイントがこの順又はこれと逆の順に並んでいるか否かを調べる。
【0053】
検出回転角度エラー/上下反転検出結果エラー検出部149は、上記3つの調べた結果が全て肯定的である場合には、回転角度検出部135により検出された回転角度が正しく、且つ、上下反転判定部(図示せず)が上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定用パターンに基づいて画像の上下反転を検出したとしたならば、その検出結果が正しいと判断する。上記3つの調べた結果のいずれか1つでも否定的である場合には、(i)回転角度検出部135により検出された回転角度、及び、(ii)上下反転判定部(図示せず)が上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定用パターンに基づいて画像の上下反転を検出したと仮定した場合の検出結果、のうちの少なくとも1つが間違っていると判断する。
【0054】
第1の追加部分画像の総ポイントと第2の追加部分画像の総ポイントの差の絶対値が所定の範囲未満である場合に、(i)及び(ii)のうちの少なくとも1つが間違っていると判断するのは以下の理由による。
【0055】
すなわち、第1の追加部分画像の面積中心と第2の追加部分画像の面積中心の間には距離があり、これらの2つの追加部分画像の図7の領域が通常は異なる。第1の追加部分画像の総ポイントと第2の追加部分画像の総ポイントの差の絶対値は第1の追加部分画像の面積中心と第2の追加部分画像の中心との間の距離を表している(領域が1つずれると5ポイント変わる)。第1の追加部分画像の総ポイントと第2の追加部分画像の総ポイントの差の絶対値が小さすぎるということは第1の追加部分画像と第2の追加部分画像がほとんど同じ部分を撮影して得たものであるということになるため、エラーであると判断する。
【0056】
第1の追加部分画像の総ポイントと第2の追加部分画像の総ポイントの差の絶対値が所定の範囲を超える場合に、(i)及び(ii)のうちの少なくとも1つが間違っていると判断するのは以下の理由による。
【0057】
上記同様に、第1の追加部分画像の総ポイントと第2の追加部分画像の総ポイントの差の絶対値が大きいということは第1の追加部分画像と第2の追加部分画像との間の距離が長いということを表しており、第1の追加部分画像の総ポイントと第2の追加部分画像の総ポイントの差の絶対値が度を越えて大きいということは、撮影画像がおかしいと判断できるからである。
【0058】
第1の追加部分画像の総ポイントと第2の部分画像の総ポイントの和の絶対値が所定の範囲を超える場合に、エラーであると判断するのは以下の理由による。
【0059】
何れかの追加部分画像の総ポイントの絶対値が大きいということは、撮影対象であるカードに対する撮像装置の位置が端にずれているということになる。撮影対象であるカードに対する撮像装置の位置が中央であれば、追加部分画像の総ポイントは0になる。ここで、第1の追加部分画像の総ポイントと第2の部分画像の総ポイントの和の絶対値が大きすぎるということは、両方の追加部分画像とも撮影対象であるカードの同じ端を撮影して得られたものであると考えられる。この場合、カードがガイドをはみ出て、カードの可動領域外にあると考えられる。よって、エラーとして排除する。
第1の追加部分画像の総ポイント、初期部分画像の総ポイント及び第2の追加部分画像の総ポイントがこの順又はこれと逆の順に並んでいない場合に、(i)及び(ii)のうちの少なくとも1つが間違っていると判断するのは、回転角度検出部135により検出された回転角度及び上下反転判定部(図示せず)による判定が正しければ、必ず、第1の追加部分画像の総ポイント、初期部分画像の総ポイント及び第2の追加部分画像の総ポイントがこの順又はこれと逆の順に並ぶからである。
【0060】
判断部113は、上記3つのことを判断する代わりに、下記のことを判断しても良い。
【0061】
すなわち、検出回転角度エラー/上下反転検出結果エラー検出部149は、第1の追加部分画像の総ポイントと第2の追加部分画像の総ポイントとの差の絶対値について第1の上限値とその第1の上限値よりも大きい第2の上限値と第1の下限値とその第1の下限値よりも小さい第2の下限値とを設け、第1の追加部分画像の総ポイントと第2の追加部分画像の総ポイントとの和の絶対値について第3の上限値とその第3の上限値よりも大きい第4の上限値と第3の下限値とその第3の下限値よりも小さい第4の下限値とを設け、(1)差の絶対値が第1の上限値を超過し、(2)差の絶対値が第1の下限値を下回り、(3)和の絶対値が第3の上限値を超過し、又は、(4)和の絶対値が第3の下限値を下回っていても、その超過又は下回りの総数((1)から(4)の何れかに該当する数)が所定数未満であり、且つ、(5)第1の追加部分画像についての総ポイント、初期部分画像についての総ポイント及び第2の追加部分画像についての総ポイントがこの順又はこれと逆の順に並ぶか否かをみる第1の判断を行う。
【0062】
また、検出回転角度エラー/上下反転検出結果エラー検出部149は、(6)差の絶対値が第2の上限値を超過し、(7)差の絶対値が第2の下限値を下回り、又は、(8)和の絶対値が第4の上限値を超過するか否かをみる第2の判断を行う。
【0063】
検出回転角度エラー/上下反転検出結果エラー検出部149は、第1の判断による判断結果が肯定的である場合には、(i)回転角度検出部135により検出された回転角度、及び、(ii)上下反転判定部(図示せず)が上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定用パターンに基づいて画像の上下反転を検出したと仮定した場合の検出結果が正しいと判断する。
【0064】
また、判断部113は、第1の判断による判断結果が否定的である場合((1)から(4)の何れかに該当する数が諸定数以上であり、又は、(5)が満たされていない場合)には、(i)回転角度検出部135により検出された回転角度、及び、(ii)上下反転判定部(図示せず)が上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定用パターンに基づいて画像の上下反転を検出したと仮定した場合の検出結果、のうちの少なくとも1つが正しくないと判断する。
【0065】
更に、判断部113は、第2の判断による判断結果が肯定的である場合((6)、(7)又は(8)の何れか1つでも満たされている場合)には、(i)回転角度検出部135により検出された回転角度、及び、(ii)上下反転判定部(図示せず)が上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定用パターンに基づいて画像の上下反転を検出したと仮定した場合の検出結果、のうちの少なくとも1つが正しくないと判断する。
【0066】
なお、上記の説明では、検出回転角度エラー/上下反転検出結果エラー検出部149が利用する追加部分画像の数は2個であるとしたが、例えば、これを4個にしてもよい。この場合、例えば、増加した2つの追加部分画像を、初期部分画像と上記の2つの追加部分画像それぞれとの間に設け、上記の2つの追加部分画像の代わりに、増加した2つの追加部分画像を利用して、上記で説明した判断を行い、上記で説明した判断(*1)と追加部分画像とを置き換えた場合の上記で説明した判断(*2)を複合させて最終的な判断を行うようにしても良い。すなわち、例えば、判断(*1)と判断(*2)とが共に肯定的である場合に、最終的な判断を肯定的であるようにしても良いし、判断(*1)と判断(*2)との少なくとも何れか一方が肯定的である場合に、最終的な判断を肯定的にしても良い。
【0067】
上述した電子透かし検出装置の動作をまとめたのが図20及び図21に示すフローチャートである。図20を参照すると、まず、初期部分画像抽出部131は、入力画像から初期部分画像を抽出する(ステップS231)。次に、第1フーリエ変換部133は、初期部分画像をフーリエ変換する(ステップS233)。次に、回転角度検出部135は、フーリエ変換された初期部分画像を基に、入力画像の回転角度を検出する(ステップS235)。次に、回転角度検出部135が、入力画像の回転角度を検出されたか否かをみて(ステップS237)、できていない場合には、エラー終了する。次に、追加部分画像抽出部137は、入力画像から2以上の偶数個の追加部分画像を抽出する(ステップS239)。次に、第2フーリエ変換部139は、それぞれの追加部分画像をフーリエ変換する(ステップS241)。次に、回転角度補正部141は、初期部分画像とそれぞれの追加部分画像の周波数成分の位置を回転角度検出部135で検出された回転角度だけ補正する(ステップS243)。次に、検出回転角度エラー/上下反転検出結果エラー検出部149は、上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定用パターンを用いて、回転角度検出部135が検出した画像の回転角度が正しいか否かを判断し、また、上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定用パターンに基づいて、上下反転検出部が入力画像の上下反転検出をおこなっていたと仮定した場合に、その上下反転検出の結果が正しいものとなっていたであろうか否か(潜在的な上下反転検出結果が正しいか否か)を判断する(ステップS245)。次に、検出された回転角度及び/又は潜在的な上下反転検出結果に誤りがあるか否かを判断する(ステップS247)。検出された回転角度及び潜在的な上下反転検出結果の少なくとも一方に誤りがあれば、エラー終了する。次に、データパターン検出部143は、初期部分画像とそれぞれの追加部分画像からデータパターンを検出する(ステップS249)。次に、多数決部145は、初期部分画像から検出されたデータパターン及びそれぞれの追加部分画像からデータパターンを多数決にかけることにより、最終的なデータパターンを求める(ステップS251)。過半数のデータパターンが一致していない場合には、エラー終了する。但し、追加部分画像が、例えば、4つある場合には、4以上のデータパターンが一致している場合に、そのデータパターンを最終的なデータパターンとして、そうでない場合に、エラー終了しても良い。
【0068】
図21は、データパターン検出部143が行うステップS249の詳細な内容を説明するためのフローチャートである。図21を参照すると、データパターン検出部143は、初期部分画像及びそれぞれの追加部分画像について、ステップS249−1SからステップS249−1Eの間にある処理を行う。
【0069】
各部分画像について、まず、ハミングチェック部143−1は、ハミングチェックを行い、誤りがなければ入力データをそのまま出力し、誤りが1つだけであれば、入力データについて1誤り訂正を行ってからそれを出力する(ステップS249−3)次に、第1パリティチェック部143−3は、第1のパリティを用いて、それぞれの第1のパリティの対象となっているデータについてパリティチェックを行う(ステップS249−7)。いずれかの第1のパリティを用いたパリティチェックにおいてエラーが検出された場合には、エラーフラグ1をセットする(ステップS249−9でYES)。次に、第2パリティチェック部143−5は、第2のパリティを用いて、第1のパリティについてパリティチェックを行う(ステップS249−11)。第2のパリティを用いたパリティチェックにおいてエラーが検出された場合には、エラーフラグ2をセットする(ステップS249−13)。ステップS249−9でNOであり、且つ、ステップS249−13でNOである場合には、現在の部分画像についてエラーフラグをリセットし、検出されたデータパターンを出力する(ステップS249−17)。ステップS249−9でYESであり、又は、ステップS249−13でYESである場合には、現在の部分画像についてエラーフラグをセットする。出力するデータパターンはどのようなものであってもよい。
【0070】
なお、図示していない上下反転判定部は、上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定用パターンに基づいて、次に述べるような方法で、画像の上下反転を検出する。すなわち、画像が反転していなければ、第1の追加部分画像についての総ポイントはプラスとなり、第2の追加部分画像についての総ポイントはマイナスとなる。反対に、画像が反転していれば、第1の追加部分画像についての総ポイントはマイナスとなり、第2の追加部分画像についての総ポイントはプラスとなる。従って、このような差異を利用して、画像の上下反転を検出することができる。
【0071】
また、図7に画像を横長の短冊に分割する例を示しているが、縦長の短冊に分割しても良い。この場合、必要に応じて、図8〜12に示す非ゼロ周波数成分の分布を変えても良い。
【0072】
また、上記の電子透かし挿入装置の各部及び電子透かし検出装置の各部は、ハードウェアによって実現することもできるが、コンピュータを上記の各部として機能させるためのプログラムを記録媒体から読み込んで実行することによっても実現することができる。
【符号の説明】
【0073】
101 エンコード部
103 データパターン配置部
105 第1パリティ配置部
107 第2パリティ配置部
109 検査パリティ配置部
111 回転角度検出用パターン配置部
113 上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定用パターン配置部
115 逆フーリエ変換部
117 重畳部
131 初期部分画像抽出部
133 第1フーリエ変換部
135 回転角度検出部
137 追加部分画像抽出部
139 第2フーリエ変換部
141 回転角度補正部
143 データパターン検出部
145 多数決部
147 デコード部
149 検出回転角度エラー/上下反転検出結果エラー検出部
【特許請求の範囲】
【請求項1】
データを表す非ゼロ周波数成分とゼロ周波数成分とを含むデータパターンのうちの非ゼロ周波数成分を周波数領域に配置するデータパターン配置手段と、
前記パターンを複数の第1サブパターンに分割し、各第1サブパターン毎にそのサブパターンに含まれる非ゼロ周波数成分の数に応じた第1パリティを生成し、該第1パリティを表す非ゼロ周波数成分とゼロ周波数成分を含む第1パリティパターンを生成し、該第1パリティパターンのうちの非ゼロ周波数成分を前記周波数領域に配置する第1パリティ配置手段と、
前記サブパターン毎の第1パリティの集合についての第2パリティを生成し、該第2パリティを表す非ゼロ周波数成分とゼロ周波数成分を含む第2パリティパターンを生成し、該第2パリティパターンのうちの非ゼロ周波数成分を前記周波数領域に配置する第2パリティ配置手段と、
前記データパターンのうち、何れの前記第1サブパターンとも一致しない第2のサブパターンに含まれる非ゼロ周波数成分とゼロ周波数成分を情報点と見なした場合のハミング符号における検査点を生成し、該検査点を表す非ゼロ周波数成分とゼロ周波数成分とを含む検査点パターンを生成し、該検査点パターンのうちの非ゼロ周波数成分を前記周波数領域に配置する検査パターン配置手段と、
前記データパターン配置手段により前記周波数領域に配置された非ゼロ周波数成分、前記第1パリティ配置手段により前記周波数領域に配置された非ゼロ周波数成分、前記第2パリティ配置手段により前記周波数領域に配置された非ゼロ周波数成分及び前記検査パターン配置手段により前記周波数領域に配置された非ゼロ周波数成分を含むパターンを逆フーリエ変換することにより、空間領域パターンを生成する逆フーリエ変換手段と、
前記空間領域パターンを原画像に重畳させる重畳手段と、
を備えることを特徴とする電子透かし挿入装置。
【請求項2】
請求項1に記載の電子透かし挿入装置において、
各第1サブパターンに含まれるデータを表す非ゼロ周波数成分とゼロ周波数成分は、周波数領域において、中心を通る相互に直交した任意の2つの直線上には2以上並ばないことを特徴とする電子透かし挿入装置。
【請求項3】
請求項1又は2に記載の電子透かし挿入装置において、
前記第2のサブパターンに含まれるデータを表す非ゼロ周波数成分とゼロ周波数成分は、データを表す全ての非ゼロ周波数成分及びゼロ周波数成分のうち、相対的に、高周波数領域に存在する周波数成分であることを特徴とする電子透かし挿入装置。
【請求項4】
請求項1乃至3の何れか1項に記載の電子透かし挿入装置において、
画像回転角度検出用の非ゼロ周波数成分とゼロ周波数成分を含む回転角度検出用パターンのうちの非ゼロ周波数成分を前記周波数領域に配置する回転角度検出用パターン配置手段を更に備え、
前記逆フーリエ変換手段は、前記データパターン配置手段により前記周波数領域に配置された非ゼロ周波数成分、前記第1パリティ配置手段により前記周波数領域に配置された非ゼロ周波数成分、前記第2パリティ配置手段により前記周波数領域に配置された非ゼロ周波数成分、前記検査パターン配置手段により前記周波数領域に配置された非ゼロ周波数成分及び前記回転角度検出用パターン配置手段により前記周波数領域に配置された非ゼロ周波数成分を含むパターンを逆フーリエ変換することを特徴とする電子透かし挿入装置。
【請求項5】
請求項1乃至3の何れか1項に記載の電子透かし挿入装置において、
画像回転角度検出用の非ゼロ周波数成分とゼロ周波数成分を含む回転角度検出用パターンのうちの非ゼロ周波数成分を前記周波数領域に配置する回転角度検出用パターン配置手段と、
画像の上下反転を検出し、且つ、検出された回転角度の正誤と画像の上下反転の検出の結果の正誤とを判定するための非ゼロ周波数成分とゼロ周波数成分を含む上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定用パターンを生成し、該上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定パターンのうちの非ゼロ周波数成分を前記周波数領域に配置する上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定用パターン配置手段と、
を更に備え、
前記逆フーリエ変換手段は、前記データパターン配置手段により前記周波数領域に配置された非ゼロ周波数成分、前記第1パリティ配置手段により前記周波数領域に配置された非ゼロ周波数成分、前記第2パリティ配置手段により前記周波数領域に配置された非ゼロ周波数成分、前記検査パターン配置手段により前記周波数領域に配置された非ゼロ周波数成分、前記回転角度検出用パターン配置手段により前記周波数領域に配置された非ゼロ周波数成分及び前記上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定用パターン配置手段により前記周波数領域に配置された非ゼロ周波数成分を含むパターンを逆フーリエ変換することを特徴とする電子透かし挿入装置。
【請求項6】
請求項5に記載の電子透かし挿入装置において、
前記上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定用パターンは、画像を複数の短冊に分割し、それぞれの短冊の周波数領域において、一端の短冊から他端の短冊に向かうに従って、非ゼロ周波数成分の位置がずれていくものであることを特徴とする電子透かし挿入装置。
【請求項7】
電子透かしが挿入された画像から、3以上の奇数個の部分画像を抽出する部分画像抽出手段と、
各部分画像のデータをフーリエ変換して、各部分画像についての周波数成分の振幅分布を求めるフーリエ変換手段と、
各部分画像の周波数成分の振幅分布からデータを表す非ゼロ周波数成分とゼロ周波数成分を含むデータパターンを検出するデータパターン検出手段と、
過半数の部分画像から同一のデータを表すデータパターンが検出された場合に、そのデータパターンを正しいデータパターンであると判断する多数決手段と、
を備えることを特徴とする電子透かし検出装置。
【請求項8】
請求項1乃至3の何れか1項に記載の電子透かし挿入装置により電子透かしが挿入された画像から電子透かしを検出する電子透かし検出装置において、
前記電子透かしが挿入された画像から、3以上の奇数個の部分画像を抽出する部分画像抽出手段と、
各部分画像のデータをフーリエ変換して、各部分画像についての周波数成分の振幅分布を求めるフーリエ変換手段と、
各部分画像の周波数成分の振幅分布からデータを表す非ゼロ周波数成分とゼロ周波数成分を含むデータパターンを検出するデータパターン検出手段と、
過半数の部分画像から同一のデータを表すデータパターンが検出された場合に、そのデータパターンを正しいデータパターンであると判断する多数決手段と、
を備え、
前記データパターン検出手段は、
各部分画像の周波数成分の振幅分布を基に、前記データパターンに含まれる非ゼロ周波数成分とゼロ周波数成分であって、情報点であるとみなされた周波数成分について、前記検査点を用いたハミング誤り訂正を行うハミングチェック手段と、
各部分画像の周波数成分の振幅分布を基に、前記ハミングチェック手段によるハミング誤り訂正後に、前記データパターンに含まれる非ゼロ周波数成分とゼロ周波数成分について、前記第1のパリティを用いたパリティチェックを行う第1パリティチェック手段と、
各部分画像の周波数成分の振幅分布を基に、前記ハミングチェック手段によるハミング誤り訂正後に、前記第1のパリティについて、前記第2のパリティを用いたパリティチェックを行う第2パリティチェック手段と、
各部分画像において、前記ハミングチェック手段により誤りがないことが検出され、又は、誤りが訂正され、且つ、前記第1パリティチェック手段によりパリティエラーがないことが検出され、且つ、前記第2パリティチェック手段によりパリティエラーがないことが検出されたならば、前記ハミングチェック手段により誤りがないことが検出され、又は、誤りが訂正された後に得られた各部分画像の周波数成分の振幅分布から求まる、データを表す非ゼロ周波数成分とゼロ周波数成分とのパターンを、その各部分画像から得られるデータパターンとする判断手段と、
を備えることを特徴とする電子透かし検出装置。
【請求項9】
請求項4に記載の電子透かし挿入装置により電子透かしが挿入され、その後、任意の角度回転した入力画像から電子透かしを検出する電子透かし検出装置において、
前記入力画像から、初期部分画像を抽出する初期部分画像抽出手段と、
前記初期部分画像のデータをフーリエ変換して、前記初期部分画像についての周波数成分の振幅分布を求める第1のフーリエ変換手段と、
前記初期部分画像についての周波数成分の振幅分布に含まれる前記画像回転角度検出用の非ゼロ周波数成分とゼロ周波数成分とのパターンを基に、前記入力画像の回転角度を検出する回転角度検出手段と、
前記初期部分画像についての周波数成分の振幅分布に含まれる前記画像回転角度検出用の非ゼロ周波数成分とゼロ周波数成分とのパターンを基に、前記入力画像の回転角度を検出できない場合には、エラー終了するエラー終了手段と、
前記入力画像から、2以上の偶数個の追加部分画像を抽出する追加部分画像抽出手段と、
各追加部分画像のデータをフーリエ変換して、各追加部分画像についての周波数成分の振幅分布を求める第2のフーリエ変換手段と、
前記初期部分画像の周波数成分の位置と、前記追加部分画像の周波数成分の位置を、前記回転角度検出手段により検出された回転角度だけ補正する回転角度補正手段と、
前記初期部分画像と前記追加部分画像の各々の前記回転角度補正手段を通した後の周波数成分の振幅分布からデータを表す非ゼロ周波数成分とゼロ周波数成分を含むデータパターンを検出するデータパターン検出手段と、
過半数の部分画像から同一のデータを表すデータパターンが検出された場合に、そのデータパターンを正しいデータパターンであると判断する多数決手段と、
を備え、
前記データパターン検出手段は、
各部分画像の周波数成分の振幅分布を基に、前記データパターンに含まれる非ゼロ周波数成分とゼロ周波数成分であって、情報点であるとみなされた周波数成分について、前記検査点を用いたハミング誤り訂正を行うハミングチェック手段と、
各部分画像の周波数成分の振幅分布を基に、前記ハミングチェック手段によるハミング誤り訂正後に、前記データパターンに含まれる非ゼロ周波数成分とゼロ周波数成分について、前記第1のパリティを用いたパリティチェックを行う第1パリティチェック手段と、
各部分画像の周波数成分の振幅分布を基に、前記ハミングチェック手段によるハミング誤り訂正後に、前記第1のパリティについて、前記第2のパリティを用いたパリティチェックを行う第2パリティチェック手段と、
各部分画像において、前記ハミングチェック手段により誤りがないことが検出され、又は、誤りが訂正され、且つ、前記第1パリティチェック手段によりパリティエラーがないことが検出され、且つ、前記第2パリティチェック手段によりパリティエラーがないことが検出されたならば、前記ハミングチェック手段により誤りがないことが検出され、又は、誤りが訂正された後に得られた各部分画像の周波数成分の振幅分布から求まる、データを表す非ゼロ周波数成分とゼロ周波数成分とのパターンを、その各部分画像から得られるデータパターンとする判断手段と、
を備えることを特徴とする電子透かし検出装置。
【請求項10】
請求項5に記載の電子透かし挿入装置により電子透かしが挿入され、その後任意の角度回転した入力画像から電子透かしを検出する電子透かし検出装置において、
前記入力画像から、初期部分画像を抽出する初期部分画像抽出手段と、
前記初期部分画像のデータをフーリエ変換して、前記初期部分画像についての周波数成分の振幅分布を求める第1のフーリエ変換手段と、
前記初期部分画像についての周波数成分の振幅分布に含まれる前記画像回転角度検出用の非ゼロ周波数成分とゼロ周波数成分とのパターンを基に、前記入力画像の回転角度を検出する回転角度検出手段と、
前記初期部分画像についての周波数成分の振幅分布に含まれる前記画像回転角度検出用の非ゼロ周波数成分とゼロ周波数成分とのパターンを基に、前記入力画像の回転角度を検出できない場合には、エラー終了する第1のエラー終了手段と、
前記入力画像から、2以上の偶数個の追加部分画像を抽出する追加部分画像抽出手段と、
各追加部分画像のデータをフーリエ変換して、各追加部分画像についての周波数成分の振幅分布を求める第2のフーリエ変換手段と、
前記初期部分画像の周波数成分の位置と、前記追加部分画像の周波数成分の位置を、前記回転角度検出手段により検出された回転角度だけ補正する回転角度補正手段と、
各部分画像に含まれる前記上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定用パターンを基に、所定の演算及び所定の判断を行うことにより、検出された前記回転角度と潜在的な上下反転検出結果のうちの少なくとも1つに誤りがあることが検出された場合にエラー終了する第2のエラー終了手段と、
前記初期部分画像と前記追加部分画像の各々の前記回転角度補正手段を通した後の周波数成分の振幅分布からデータを表す非ゼロ周波数成分とゼロ周波数成分を含むデータパターンを検出するデータパターン検出手段と、
過半数の部分画像から同一のデータを表すデータパターンが検出された場合に、そのデータパターンを正しいデータパターンであると判断する多数決手段と、
を備え、
前記データパターン検出手段は、
各部分画像の周波数成分の振幅分布を基に、前記データパターンに含まれる非ゼロ周波数成分とゼロ周波数成分であって、情報点であるとみなされた周波数成分について、前記検査点を用いたハミング誤り訂正を行うハミングチェック手段と、
各部分画像の周波数成分の振幅分布を基に、前記ハミングチェック手段によるハミング誤り訂正後に、前記データパターンに含まれる非ゼロ周波数成分とゼロ周波数成分について、前記第1のパリティを用いたパリティチェックを行う第1パリティチェック手段と、
各部分画像の周波数成分の振幅分布を基に、前記ハミングチェック手段によるハミング誤り訂正後に、前記第1のパリティについて、前記第2のパリティを用いたパリティチェックを行う第2パリティチェック手段と、
各部分画像において、前記ハミングチェック手段により誤りがないことが検出され、又は、誤りが訂正され、且つ、前記第1パリティチェック手段によりパリティエラーがないことが検出され、且つ、前記第2パリティチェック手段によりパリティエラーがないことが検出されたならば、前記ハミングチェック手段により誤りがないことが検出され、又は、誤りが訂正された後に得られた各部分画像の周波数成分の振幅分布から求まる、データを表す非ゼロ周波数成分とゼロ周波数成分とのパターンを、その各部分画像から得られるデータパターンとする判断手段と、
を備えることを特徴とする電子透かし検出装置。
【請求項11】
請求項10に記載の電子透かし検出装置において、
前記所定の演算は、それぞれの部分画像についての総ポイントを、それぞれの部分画像の上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定用パターンに含まれる非ゼロ周波数成分の位置に基づいて求め、第1の追加部分画像の総ポイントと第2の追加部分画像の総ポイントとの差の絶対値を求め、前記第1の追加部分画像の総ポイントと前記第2の追加部分画像の総ポイントとの和の絶対値を求める演算であり、
前記所定の判断は、前記差の絶対値が所定の範囲に収まり、前記和の絶対値が所定の値以下であり、且つ、前記第1の追加部分画像についての総ポイント、前記初期部分画像についての総ポイント及び前記第2の追加部分画像についての総ポイントがこの順又はこれと逆の順に並ぶか否かをみる判断であり、
その判断結果が肯定的である場合に、前記第2のエラー終了手段は、エラー終了しないことを特徴とする電子透かし検出装置。
【請求項12】
請求項10に記載の電子透かし検出装置において、
前記所定の演算は、それぞれの部分画像についての総ポイントを、それぞれの部分画像の上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定用パターンに含まれる非ゼロ周波数成分の位置に基づいて求め、第1の追加部分画像の総ポイントと第2の追加部分画像の総ポイントとの差の絶対値を求め、前記第1の追加部分画像の総ポイントと前記第2の追加部分画像の総ポイントとの和の絶対値を求める演算であり、
前記所定の判断は、前記差の絶対値について第1の上限値と該第1の上限値よりも大きい第2の上限値と第1の下限値と該第1の下限値よりも小さい第2の下限値とを設け、前記和の絶対値について第3の上限値と該第3の上限値よりも大きい第4の上限値を設け、
前記差の絶対値が前記第1の上限値を超過し、前記差の絶対値が前記第1の下限値を下回り、又は、前記和の絶対値が前記第3の上限値を超過していても、その超過又は下回りの総数が所定数未満であり、且つ、前記第1の追加部分画像についての総ポイント、前記初期部分画像についての総ポイント及び前記第2の追加部分画像についての総ポイントがこの順又はこれと逆の順に並ぶか否かをみる第1の判断と、
前記差の絶対値が前記第2の上限値を超過し、前記差の絶対値が前記第2の下限値を下回り、又は、前記和の絶対値が前記第2の上限値を超過するか否かをみる第2の判断との組合せであり、
前記第1の判断による判断結果が肯定的である場合には、前記第2のエラー終了手段は、エラー終了せず、
前記第1の判断による判断結果が否定的である場合には、前記第2のエラー終了手段は、エラー終了し、
前記第2の判断による判断結果が肯定的である場合には、前記第2のエラー終了手段は、エラー終了することを特徴とする電子透かし検出装置。
【請求項13】
請求項11又は12に記載の電子透かし検出装置において、
それぞれの部分画像についての総ポイントを、それぞれの部分画像の上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定用パターンに含まれる非ゼロ周波数成分の位置に基づいて求める演算は、
上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定用パターンを含む周波数領域から振幅の大きい順に所定数の非ゼロ周波数成分を検出して、検出された非ゼロ周波数成分の位置に割り当てられているポイントの、検出された非ゼロ周波数成分についての和を総ポイントとする演算であることを特徴とする電子透かし検出装置。
【請求項14】
請求項9乃至13の何れか1項に記載の電子透かし検出装置において、
前記初期部分画像は、面積重心を入力画像と共通とする部分画像であり、前記追加画像のうちの2つの追加部分画像は、二辺を入力画像と共通とする4つの部分画像のうち面積重心から中心線までの距離が最大である2つの部分画像であることを特徴とする電子透かし検出装置。
【請求項15】
データを表す非ゼロ周波数成分とゼロ周波数成分とを含むデータパターンのうちの非ゼロ周波数成分を周波数領域に配置するデータパターン配置ステップと、
前記パターンを複数の第1サブパターンに分割し、各第1サブパターン毎にそのサブパターンに含まれる非ゼロ周波数成分の数に応じた第1パリティを生成し、該第1パリティを表す非ゼロ周波数成分とゼロ周波数成分を含む第1パリティパターンを生成し、該第1パリティパターンのうちの非ゼロ周波数成分を前記周波数領域に配置する第1パリティ配置ステップと、
前記サブパターン毎の第1パリティの集合についての第2パリティを生成し、該第2パリティを表す非ゼロ周波数成分とゼロ周波数成分を含む第2パリティパターンを生成し、該第2パリティパターンのうちの非ゼロ周波数成分を前記周波数領域に配置する第2パリティ配置ステップと、
前記データパターンのうち、何れの前記第1サブパターンとも一致しない第2のサブパターンに含まれる非ゼロ周波数成分とゼロ周波数成分を情報点と見なした場合のハミング符号における検査点を生成し、該検査点を表す非ゼロ周波数成分とゼロ周波数成分とを含む検査点パターンを生成し、該検査点パターンのうちの非ゼロ周波数成分を前記周波数領域に配置する検査パターン配置ステップと、
前記データパターン配置ステップにより前記周波数領域に配置された非ゼロ周波数成分、前記第1パリティ配置ステップにより前記周波数領域に配置された非ゼロ周波数成分、前記第2パリティ配置ステップにより前記周波数領域に配置された非ゼロ周波数成分及び前記検査パターン配置ステップにより前記周波数領域に配置された非ゼロ周波数成分を含むパターンを逆フーリエ変換することにより、空間領域パターンを生成する逆フーリエ変換ステップと、
前記空間領域パターンを原画像に重畳させる重畳ステップと、
を備えることを特徴とする電子透かし挿入方法。
【請求項16】
請求項15に記載の電子透かし挿入方法において、
各第1サブパターンに含まれるデータを表す非ゼロ周波数成分とゼロ周波数成分は、周波数領域において、中心を通る相互に直交した任意の2つの直線上には2以上並ばないことを特徴とする電子透かし挿入方法。
【請求項17】
請求項15又は16に記載の電子透かし挿入方法において、
前記第2のサブパターンに含まれるデータを表す非ゼロ周波数成分とゼロ周波数成分は、データを表す全ての非ゼロ周波数成分及びゼロ周波数成分のうち、相対的に、高周波数領域に存在する周波数成分であることを特徴とする電子透かし挿入方法。
【請求項18】
請求項15乃至17の何れか1項に記載の電子透かし挿入方法において、
画像回転角度検出用の非ゼロ周波数成分とゼロ周波数成分を含む回転角度検出用パターンのうちの非ゼロ周波数成分を前記周波数領域に配置する回転角度検出用パターン配置ステップを更に備え、
前記逆フーリエ変換ステップでは、前記データパターン配置ステップにより前記周波数領域に配置された非ゼロ周波数成分、前記第1パリティ配置ステップにより前記周波数領域に配置された非ゼロ周波数成分、前記第2パリティ配置ステップにより前記周波数領域に配置された非ゼロ周波数成分、前記検査パターン配置ステップにより前記周波数領域に配置された非ゼロ周波数成分及び前記回転角度検出用パターン配置ステップにより前記周波数領域に配置された非ゼロ周波数成分を含むパターンを逆フーリエ変換することを特徴とする電子透かし挿入方法。
【請求項19】
請求項15乃至17の何れか1項に記載の電子透かし挿入方法において、
画像回転角度検出用の非ゼロ周波数成分とゼロ周波数成分を含む回転角度検出用パターンのうちの非ゼロ周波数成分を前記周波数領域に配置する回転角度検出用パターン配置ステップと、
画像の上下反転を検出し、且つ、検出された回転角度の正誤と画像の上下反転の検出の結果の正誤とを判定するための非ゼロ周波数成分とゼロ周波数成分を含む上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定用パターンを生成し、該上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定パターンのうちの非ゼロ周波数成分を前記周波数領域に配置する上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定用パターン配置ステップと、
を更に備え、
前記逆フーリエ変換ステップでは、前記データパターン配置ステップにより前記周波数領域に配置された非ゼロ周波数成分、前記第1パリティ配置ステップにより前記周波数領域に配置された非ゼロ周波数成分、前記第2パリティ配置ステップにより前記周波数領域に配置された非ゼロ周波数成分、前記検査パターン配置ステップにより前記周波数領域に配置された非ゼロ周波数成分、前記回転角度検出用パターン配置ステップにより前記周波数領域に配置された非ゼロ周波数成分及び前記上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定用パターン配置ステップにより前記周波数領域に配置された非ゼロ周波数成分を含むパターンを逆フーリエ変換することを特徴とする電子透かし挿入方法。
【請求項20】
請求項19に記載の電子透かし挿入方法において、
前記上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定用パターンは、画像を複数の短冊に分割し、それぞれの短冊の周波数領域において、一端の短冊から他端の短冊に向かうに従って、非ゼロ周波数成分の位置がずれていくものであることを特徴とする電子透かし挿入方法。
【請求項21】
電子透かしが挿入された画像から、3以上の奇数個の部分画像を抽出する部分画像抽出ステップと、
各部分画像のデータをフーリエ変換して、各部分画像についての周波数成分の振幅分布を求めるフーリエ変換ステップと、
各部分画像の周波数成分の振幅分布からデータを表す非ゼロ周波数成分とゼロ周波数成分を含むデータパターンを検出するデータパターン検出ステップと、
過半数の部分画像から同一のデータを表すデータパターンが検出された場合に、そのデータパターンを正しいデータパターンであると判断する多数決ステップと、
を備えることを特徴とする電子透かし検出方法。
【請求項22】
請求項15乃至17の何れか1項に記載の電子透かし挿入方法により電子透かしが挿入された画像から電子透かしを検出する電子透かし検出方法において、
前記電子透かしが挿入された画像から、3以上の奇数個の部分画像を抽出する部分画像抽出ステップと、
各部分画像のデータをフーリエ変換して、各部分画像についての周波数成分の振幅分布を求めるフーリエ変換ステップと、
各部分画像の周波数成分の振幅分布からデータを表す非ゼロ周波数成分とゼロ周波数成分を含むデータパターンを検出するデータパターン検出ステップと、
過半数の部分画像から同一のデータを表すデータパターンが検出された場合に、そのデータパターンを正しいデータパターンであると判断する多数決ステップと、
を備え、
前記データパターン検出ステップは、
各部分画像の周波数成分の振幅分布を基に、前記データパターンに含まれる非ゼロ周波数成分とゼロ周波数成分であって、情報点であるとみなされた周波数成分について、前記検査点を用いたハミング誤り訂正を行うハミングチェックステップと、
各部分画像の周波数成分の振幅分布を基に、前記ハミングチェックステップによるハミング誤り訂正後に、前記データパターンに含まれる非ゼロ周波数成分とゼロ周波数成分について、前記第1のパリティを用いたパリティチェックを行う第1パリティチェックステップと、
各部分画像の周波数成分の振幅分布を基に、前記ハミングチェックステップによるハミング誤り訂正後に、前記第1のパリティについて、前記第2のパリティを用いたパリティチェックを行う第2パリティチェックステップと、
各部分画像において、前記ハミングチェックステップにより誤りがないことが検出され、又は、誤りが訂正され、且つ、前記第1パリティチェックステップによりパリティエラーがないことが検出され、且つ、前記第2パリティチェックステップによりパリティエラーがないことが検出されたならば、前記ハミングチェックステップにより誤りがないことが検出され、又は、誤りが訂正された後に得られた各部分画像の周波数成分の振幅分布から求まる、データを表す非ゼロ周波数成分とゼロ周波数成分とのパターンを、その各部分画像から得られるデータパターンとする判断ステップと、
を備えることを特徴とする電子透かし検出方法。
【請求項23】
請求項18に記載の電子透かし挿入方法により電子透かしが挿入され、その後、任意の角度回転した入力画像から電子透かしを検出する電子透かし検出方法において、
前記入力画像から、初期部分画像を抽出する初期部分画像抽出ステップと、
前記初期部分画像のデータをフーリエ変換して、前記初期部分画像についての周波数成分の振幅分布を求める第1のフーリエ変換ステップと、
前記初期部分画像についての周波数成分の振幅分布に含まれる前記画像回転角度検出用の非ゼロ周波数成分とゼロ周波数成分とのパターンを基に、前記入力画像の回転角度を検出する回転角度検出ステップと、
前記初期部分画像についての周波数成分の振幅分布に含まれる前記画像回転角度検出用の非ゼロ周波数成分とゼロ周波数成分とのパターンを基に、前記入力画像の回転角度を検出できない場合には、エラー終了するエラー終了ステップと、
前記入力画像から、2以上の偶数個の追加部分画像を抽出する追加部分画像抽出ステップと、
各追加部分画像のデータをフーリエ変換して、各追加部分画像についての周波数成分の振幅分布を求める第2のフーリエ変換ステップと、
前記初期部分画像の周波数成分の位置と、前記追加部分画像の周波数成分の位置を、前記回転角度検出ステップにより検出された回転角度だけ補正する回転角度補正ステップと、
前記初期部分画像と前記追加部分画像の各々の前記回転角度補正ステップを通した後の周波数成分の振幅分布からデータを表す非ゼロ周波数成分とゼロ周波数成分を含むデータパターンを検出するデータパターン検出ステップと、
過半数の部分画像から同一のデータを表すデータパターンが検出された場合に、そのデータパターンを正しいデータパターンであると判断する多数決ステップと、
を備え、
前記データパターン検出ステップは、
各部分画像の周波数成分の振幅分布を基に、前記データパターンに含まれる非ゼロ周波数成分とゼロ周波数成分であって、情報点であるとみなされた周波数成分について、前記検査点を用いたハミング誤り訂正を行うハミングチェックステップと、
各部分画像の周波数成分の振幅分布を基に、前記ハミングチェックステップによるハミング誤り訂正後に、前記データパターンに含まれる非ゼロ周波数成分とゼロ周波数成分について、前記第1のパリティを用いたパリティチェックを行う第1パリティチェックステップと、
各部分画像の周波数成分の振幅分布を基に、前記ハミングチェックステップによるハミング誤り訂正後に、前記第1のパリティについて、前記第2のパリティを用いたパリティチェックを行う第2パリティチェックステップと、
各部分画像において、前記ハミングチェックステップにより誤りがないことが検出され、又は、誤りが訂正され、且つ、前記第1パリティチェックステップによりパリティエラーがないことが検出され、且つ、前記第2パリティチェックステップによりパリティエラーがないことが検出されたならば、前記ハミングチェックステップにより誤りがないことが検出され、又は、誤りが訂正された後に得られた各部分画像の周波数成分の振幅分布から求まる、データを表す非ゼロ周波数成分とゼロ周波数成分とのパターンを、その各部分画像から得られるデータパターンとする判断ステップと、
を備えることを特徴とする電子透かし検出方法。
【請求項24】
請求項19に記載の電子透かし挿入方法により電子透かしが挿入され、その後任意の角度回転した入力画像から電子透かしを検出する電子透かし検出方法において、
前記入力画像から、初期部分画像を抽出する初期部分画像抽出ステップと、
前記初期部分画像のデータをフーリエ変換して、前記初期部分画像についての周波数成分の振幅分布を求める第1のフーリエ変換ステップと、
前記初期部分画像についての周波数成分の振幅分布に含まれる前記画像回転角度検出用の非ゼロ周波数成分とゼロ周波数成分とのパターンを基に、前記入力画像の回転角度を検出する回転角度検出ステップと、
前記初期部分画像についての周波数成分の振幅分布に含まれる前記画像回転角度検出用の非ゼロ周波数成分とゼロ周波数成分とのパターンを基に、前記入力画像の回転角度を検出できない場合には、エラー終了する第1のエラー終了ステップと、
前記入力画像から、2以上の偶数個の追加部分画像を抽出する追加部分画像抽出ステップと、
各追加部分画像のデータをフーリエ変換して、各追加部分画像についての周波数成分の振幅分布を求める第2のフーリエ変換ステップと、
前記初期部分画像の周波数成分の位置と、前記追加部分画像の周波数成分の位置を、前記回転角度検出ステップにより検出された回転角度だけ補正する回転角度補正ステップと、
各部分画像に含まれる前記上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定用パターンを基に、所定の演算及び所定の判断を行うことにより、検出された前記回転角度と潜在的な上下反転検出結果のうちの少なくとも1つに誤りがあることが検出された場合にエラー終了する第2のエラー終了ステップと、
前記初期部分画像と前記追加部分画像の各々の前記回転角度補正ステップを通した後の周波数成分の振幅分布からデータを表す非ゼロ周波数成分とゼロ周波数成分を含むデータパターンを検出するデータパターン検出ステップと、
過半数の部分画像から同一のデータを表すデータパターンが検出された場合に、そのデータパターンを正しいデータパターンであると判断する多数決ステップと、
を備え、
前記データパターン検出ステップは、
各部分画像の周波数成分の振幅分布を基に、前記データパターンに含まれる非ゼロ周波数成分とゼロ周波数成分であって、情報点であるとみなされた周波数成分について、前記検査点を用いたハミング誤り訂正を行うハミングチェックステップと、
各部分画像の周波数成分の振幅分布を基に、前記ハミングチェックステップによるハミング誤り訂正後に、前記データパターンに含まれる非ゼロ周波数成分とゼロ周波数成分について、前記第1のパリティを用いたパリティチェックを行う第1パリティチェックステップと、
各部分画像の周波数成分の振幅分布を基に、前記ハミングチェックステップによるハミング誤り訂正後に、前記第1のパリティについて、前記第2のパリティを用いたパリティチェックを行う第2パリティチェックステップと、
各部分画像において、前記ハミングチェックステップにより誤りがないことが検出され、又は、誤りが訂正され、且つ、前記第1パリティチェックステップによりパリティエラーがないことが検出され、且つ、前記第2パリティチェックステップによりパリティエラーがないことが検出されたならば、前記ハミングチェックステップにより誤りがないことが検出され、又は、誤りが訂正された後に得られた各部分画像の周波数成分の振幅分布から求まる、データを表す非ゼロ周波数成分とゼロ周波数成分とのパターンを、その各部分画像から得られるデータパターンとする判断ステップと、
を備えることを特徴とする電子透かし検出方法。
【請求項25】
請求項24に記載の電子透かし検出方法において、
前記所定の演算は、それぞれの部分画像についての総ポイントを、それぞれの部分画像の上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定用パターンに含まれる非ゼロ周波数成分の位置に基づいて求め、第1の追加部分画像の総ポイントと第2の追加部分画像の総ポイントとの差の絶対値を求め、前記第1の追加部分画像の総ポイントと前記第2の追加部分画像の総ポイントとの和の絶対値を求める演算であり、
前記所定の判断は、前記差の絶対値が所定の範囲に収まり、前記和の絶対値が所定の値以下であり、且つ、前記第1の追加部分画像についての総ポイント、前記初期部分画像についての総ポイント及び前記第2の追加部分画像についての総ポイントがこの順又はこれと逆の順に並ぶか否かをみる判断であり、
その判断結果が肯定的である場合に、前記第2のエラー終了ステップでは、エラー終了しないことを特徴とする電子透かし検出方法。
【請求項26】
請求項24に記載の電子透かし検出方法において、
前記所定の演算は、それぞれの部分画像についての総ポイントを、それぞれの部分画像の上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定用パターンに含まれる非ゼロ周波数成分の位置に基づいて求め、第1の追加部分画像の総ポイントと第2の追加部分画像の総ポイントとの差の絶対値を求め、前記第1の追加部分画像の総ポイントと前記第2の追加部分画像の総ポイントとの和の絶対値を求める演算であり、
前記所定の判断は、前記差の絶対値について第1の上限値と該第1の上限値よりも大きい第2の上限値と第1の下限値と該第1の下限値よりも小さい第2の下限値とを設け、前記和の絶対値について第3の上限値と該第3の上限値よりも大きい第4の上限値を設け、
前記差の絶対値が前記第1の上限値を超過し、前記差の絶対値が前記第1の下限値を下回り、又は、前記和の絶対値が前記第3の上限値を超過していても、その超過又は下回りの総数が所定数未満であり、且つ、前記第1の追加部分画像についての総ポイント、前記初期部分画像についての総ポイント及び前記第2の追加部分画像についての総ポイントがこの順又はこれと逆の順に並ぶか否かをみる第1の判断と、
前記差の絶対値が前記第2の上限値を超過し、前記差の絶対値が前記第2の下限値を下回り、又は、前記和の絶対値が前記第2の上限値を超過するか否かをみる第2の判断との組合せであり、
前記第1の判断による判断結果が肯定的である場合には、前記第2のエラー終了ステップでは、エラー終了せず、
前記第1の判断による判断結果が否定的である場合には、前記第2のエラー終了ステップでは、エラー終了し、
前記第2の判断による判断結果が肯定的である場合には、前記第2のエラー終了ステップでは、エラー終了することを特徴とする電子透かし検出方法。
【請求項27】
請求項25又は26に記載の電子透かし検出方法において、
それぞれの部分画像についての総ポイントを、それぞれの部分画像の上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定用パターンに含まれる非ゼロ周波数成分の位置に基づいて求める演算は、
上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定用パターンを含む周波数領域から振幅の大きい順に所定数の非ゼロ周波数成分を検出して、検出された非ゼロ周波数成分の位置に割り当てられているポイントの、検出された非ゼロ周波数成分についての和を総ポイントとする演算であることを特徴とする電子透かし検出方法。
【請求項28】
請求項23乃至27の何れか1項に記載の電子透かし検出方法において、
前記初期部分画像は、面積重心を入力画像と共通とする部分画像であり、前記追加画像のうちの2つの追加部分画像は、二辺を入力画像と共通とする4つの部分画像のうち面積重心から中心線までの距離が最大である2つの部分画像であることを特徴とする電子透かし検出方法。
【請求項29】
コンピュータを請求項1乃至14の何れか1項に記載の装置として機能させるためのプログラム。
【請求項1】
データを表す非ゼロ周波数成分とゼロ周波数成分とを含むデータパターンのうちの非ゼロ周波数成分を周波数領域に配置するデータパターン配置手段と、
前記パターンを複数の第1サブパターンに分割し、各第1サブパターン毎にそのサブパターンに含まれる非ゼロ周波数成分の数に応じた第1パリティを生成し、該第1パリティを表す非ゼロ周波数成分とゼロ周波数成分を含む第1パリティパターンを生成し、該第1パリティパターンのうちの非ゼロ周波数成分を前記周波数領域に配置する第1パリティ配置手段と、
前記サブパターン毎の第1パリティの集合についての第2パリティを生成し、該第2パリティを表す非ゼロ周波数成分とゼロ周波数成分を含む第2パリティパターンを生成し、該第2パリティパターンのうちの非ゼロ周波数成分を前記周波数領域に配置する第2パリティ配置手段と、
前記データパターンのうち、何れの前記第1サブパターンとも一致しない第2のサブパターンに含まれる非ゼロ周波数成分とゼロ周波数成分を情報点と見なした場合のハミング符号における検査点を生成し、該検査点を表す非ゼロ周波数成分とゼロ周波数成分とを含む検査点パターンを生成し、該検査点パターンのうちの非ゼロ周波数成分を前記周波数領域に配置する検査パターン配置手段と、
前記データパターン配置手段により前記周波数領域に配置された非ゼロ周波数成分、前記第1パリティ配置手段により前記周波数領域に配置された非ゼロ周波数成分、前記第2パリティ配置手段により前記周波数領域に配置された非ゼロ周波数成分及び前記検査パターン配置手段により前記周波数領域に配置された非ゼロ周波数成分を含むパターンを逆フーリエ変換することにより、空間領域パターンを生成する逆フーリエ変換手段と、
前記空間領域パターンを原画像に重畳させる重畳手段と、
を備えることを特徴とする電子透かし挿入装置。
【請求項2】
請求項1に記載の電子透かし挿入装置において、
各第1サブパターンに含まれるデータを表す非ゼロ周波数成分とゼロ周波数成分は、周波数領域において、中心を通る相互に直交した任意の2つの直線上には2以上並ばないことを特徴とする電子透かし挿入装置。
【請求項3】
請求項1又は2に記載の電子透かし挿入装置において、
前記第2のサブパターンに含まれるデータを表す非ゼロ周波数成分とゼロ周波数成分は、データを表す全ての非ゼロ周波数成分及びゼロ周波数成分のうち、相対的に、高周波数領域に存在する周波数成分であることを特徴とする電子透かし挿入装置。
【請求項4】
請求項1乃至3の何れか1項に記載の電子透かし挿入装置において、
画像回転角度検出用の非ゼロ周波数成分とゼロ周波数成分を含む回転角度検出用パターンのうちの非ゼロ周波数成分を前記周波数領域に配置する回転角度検出用パターン配置手段を更に備え、
前記逆フーリエ変換手段は、前記データパターン配置手段により前記周波数領域に配置された非ゼロ周波数成分、前記第1パリティ配置手段により前記周波数領域に配置された非ゼロ周波数成分、前記第2パリティ配置手段により前記周波数領域に配置された非ゼロ周波数成分、前記検査パターン配置手段により前記周波数領域に配置された非ゼロ周波数成分及び前記回転角度検出用パターン配置手段により前記周波数領域に配置された非ゼロ周波数成分を含むパターンを逆フーリエ変換することを特徴とする電子透かし挿入装置。
【請求項5】
請求項1乃至3の何れか1項に記載の電子透かし挿入装置において、
画像回転角度検出用の非ゼロ周波数成分とゼロ周波数成分を含む回転角度検出用パターンのうちの非ゼロ周波数成分を前記周波数領域に配置する回転角度検出用パターン配置手段と、
画像の上下反転を検出し、且つ、検出された回転角度の正誤と画像の上下反転の検出の結果の正誤とを判定するための非ゼロ周波数成分とゼロ周波数成分を含む上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定用パターンを生成し、該上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定パターンのうちの非ゼロ周波数成分を前記周波数領域に配置する上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定用パターン配置手段と、
を更に備え、
前記逆フーリエ変換手段は、前記データパターン配置手段により前記周波数領域に配置された非ゼロ周波数成分、前記第1パリティ配置手段により前記周波数領域に配置された非ゼロ周波数成分、前記第2パリティ配置手段により前記周波数領域に配置された非ゼロ周波数成分、前記検査パターン配置手段により前記周波数領域に配置された非ゼロ周波数成分、前記回転角度検出用パターン配置手段により前記周波数領域に配置された非ゼロ周波数成分及び前記上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定用パターン配置手段により前記周波数領域に配置された非ゼロ周波数成分を含むパターンを逆フーリエ変換することを特徴とする電子透かし挿入装置。
【請求項6】
請求項5に記載の電子透かし挿入装置において、
前記上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定用パターンは、画像を複数の短冊に分割し、それぞれの短冊の周波数領域において、一端の短冊から他端の短冊に向かうに従って、非ゼロ周波数成分の位置がずれていくものであることを特徴とする電子透かし挿入装置。
【請求項7】
電子透かしが挿入された画像から、3以上の奇数個の部分画像を抽出する部分画像抽出手段と、
各部分画像のデータをフーリエ変換して、各部分画像についての周波数成分の振幅分布を求めるフーリエ変換手段と、
各部分画像の周波数成分の振幅分布からデータを表す非ゼロ周波数成分とゼロ周波数成分を含むデータパターンを検出するデータパターン検出手段と、
過半数の部分画像から同一のデータを表すデータパターンが検出された場合に、そのデータパターンを正しいデータパターンであると判断する多数決手段と、
を備えることを特徴とする電子透かし検出装置。
【請求項8】
請求項1乃至3の何れか1項に記載の電子透かし挿入装置により電子透かしが挿入された画像から電子透かしを検出する電子透かし検出装置において、
前記電子透かしが挿入された画像から、3以上の奇数個の部分画像を抽出する部分画像抽出手段と、
各部分画像のデータをフーリエ変換して、各部分画像についての周波数成分の振幅分布を求めるフーリエ変換手段と、
各部分画像の周波数成分の振幅分布からデータを表す非ゼロ周波数成分とゼロ周波数成分を含むデータパターンを検出するデータパターン検出手段と、
過半数の部分画像から同一のデータを表すデータパターンが検出された場合に、そのデータパターンを正しいデータパターンであると判断する多数決手段と、
を備え、
前記データパターン検出手段は、
各部分画像の周波数成分の振幅分布を基に、前記データパターンに含まれる非ゼロ周波数成分とゼロ周波数成分であって、情報点であるとみなされた周波数成分について、前記検査点を用いたハミング誤り訂正を行うハミングチェック手段と、
各部分画像の周波数成分の振幅分布を基に、前記ハミングチェック手段によるハミング誤り訂正後に、前記データパターンに含まれる非ゼロ周波数成分とゼロ周波数成分について、前記第1のパリティを用いたパリティチェックを行う第1パリティチェック手段と、
各部分画像の周波数成分の振幅分布を基に、前記ハミングチェック手段によるハミング誤り訂正後に、前記第1のパリティについて、前記第2のパリティを用いたパリティチェックを行う第2パリティチェック手段と、
各部分画像において、前記ハミングチェック手段により誤りがないことが検出され、又は、誤りが訂正され、且つ、前記第1パリティチェック手段によりパリティエラーがないことが検出され、且つ、前記第2パリティチェック手段によりパリティエラーがないことが検出されたならば、前記ハミングチェック手段により誤りがないことが検出され、又は、誤りが訂正された後に得られた各部分画像の周波数成分の振幅分布から求まる、データを表す非ゼロ周波数成分とゼロ周波数成分とのパターンを、その各部分画像から得られるデータパターンとする判断手段と、
を備えることを特徴とする電子透かし検出装置。
【請求項9】
請求項4に記載の電子透かし挿入装置により電子透かしが挿入され、その後、任意の角度回転した入力画像から電子透かしを検出する電子透かし検出装置において、
前記入力画像から、初期部分画像を抽出する初期部分画像抽出手段と、
前記初期部分画像のデータをフーリエ変換して、前記初期部分画像についての周波数成分の振幅分布を求める第1のフーリエ変換手段と、
前記初期部分画像についての周波数成分の振幅分布に含まれる前記画像回転角度検出用の非ゼロ周波数成分とゼロ周波数成分とのパターンを基に、前記入力画像の回転角度を検出する回転角度検出手段と、
前記初期部分画像についての周波数成分の振幅分布に含まれる前記画像回転角度検出用の非ゼロ周波数成分とゼロ周波数成分とのパターンを基に、前記入力画像の回転角度を検出できない場合には、エラー終了するエラー終了手段と、
前記入力画像から、2以上の偶数個の追加部分画像を抽出する追加部分画像抽出手段と、
各追加部分画像のデータをフーリエ変換して、各追加部分画像についての周波数成分の振幅分布を求める第2のフーリエ変換手段と、
前記初期部分画像の周波数成分の位置と、前記追加部分画像の周波数成分の位置を、前記回転角度検出手段により検出された回転角度だけ補正する回転角度補正手段と、
前記初期部分画像と前記追加部分画像の各々の前記回転角度補正手段を通した後の周波数成分の振幅分布からデータを表す非ゼロ周波数成分とゼロ周波数成分を含むデータパターンを検出するデータパターン検出手段と、
過半数の部分画像から同一のデータを表すデータパターンが検出された場合に、そのデータパターンを正しいデータパターンであると判断する多数決手段と、
を備え、
前記データパターン検出手段は、
各部分画像の周波数成分の振幅分布を基に、前記データパターンに含まれる非ゼロ周波数成分とゼロ周波数成分であって、情報点であるとみなされた周波数成分について、前記検査点を用いたハミング誤り訂正を行うハミングチェック手段と、
各部分画像の周波数成分の振幅分布を基に、前記ハミングチェック手段によるハミング誤り訂正後に、前記データパターンに含まれる非ゼロ周波数成分とゼロ周波数成分について、前記第1のパリティを用いたパリティチェックを行う第1パリティチェック手段と、
各部分画像の周波数成分の振幅分布を基に、前記ハミングチェック手段によるハミング誤り訂正後に、前記第1のパリティについて、前記第2のパリティを用いたパリティチェックを行う第2パリティチェック手段と、
各部分画像において、前記ハミングチェック手段により誤りがないことが検出され、又は、誤りが訂正され、且つ、前記第1パリティチェック手段によりパリティエラーがないことが検出され、且つ、前記第2パリティチェック手段によりパリティエラーがないことが検出されたならば、前記ハミングチェック手段により誤りがないことが検出され、又は、誤りが訂正された後に得られた各部分画像の周波数成分の振幅分布から求まる、データを表す非ゼロ周波数成分とゼロ周波数成分とのパターンを、その各部分画像から得られるデータパターンとする判断手段と、
を備えることを特徴とする電子透かし検出装置。
【請求項10】
請求項5に記載の電子透かし挿入装置により電子透かしが挿入され、その後任意の角度回転した入力画像から電子透かしを検出する電子透かし検出装置において、
前記入力画像から、初期部分画像を抽出する初期部分画像抽出手段と、
前記初期部分画像のデータをフーリエ変換して、前記初期部分画像についての周波数成分の振幅分布を求める第1のフーリエ変換手段と、
前記初期部分画像についての周波数成分の振幅分布に含まれる前記画像回転角度検出用の非ゼロ周波数成分とゼロ周波数成分とのパターンを基に、前記入力画像の回転角度を検出する回転角度検出手段と、
前記初期部分画像についての周波数成分の振幅分布に含まれる前記画像回転角度検出用の非ゼロ周波数成分とゼロ周波数成分とのパターンを基に、前記入力画像の回転角度を検出できない場合には、エラー終了する第1のエラー終了手段と、
前記入力画像から、2以上の偶数個の追加部分画像を抽出する追加部分画像抽出手段と、
各追加部分画像のデータをフーリエ変換して、各追加部分画像についての周波数成分の振幅分布を求める第2のフーリエ変換手段と、
前記初期部分画像の周波数成分の位置と、前記追加部分画像の周波数成分の位置を、前記回転角度検出手段により検出された回転角度だけ補正する回転角度補正手段と、
各部分画像に含まれる前記上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定用パターンを基に、所定の演算及び所定の判断を行うことにより、検出された前記回転角度と潜在的な上下反転検出結果のうちの少なくとも1つに誤りがあることが検出された場合にエラー終了する第2のエラー終了手段と、
前記初期部分画像と前記追加部分画像の各々の前記回転角度補正手段を通した後の周波数成分の振幅分布からデータを表す非ゼロ周波数成分とゼロ周波数成分を含むデータパターンを検出するデータパターン検出手段と、
過半数の部分画像から同一のデータを表すデータパターンが検出された場合に、そのデータパターンを正しいデータパターンであると判断する多数決手段と、
を備え、
前記データパターン検出手段は、
各部分画像の周波数成分の振幅分布を基に、前記データパターンに含まれる非ゼロ周波数成分とゼロ周波数成分であって、情報点であるとみなされた周波数成分について、前記検査点を用いたハミング誤り訂正を行うハミングチェック手段と、
各部分画像の周波数成分の振幅分布を基に、前記ハミングチェック手段によるハミング誤り訂正後に、前記データパターンに含まれる非ゼロ周波数成分とゼロ周波数成分について、前記第1のパリティを用いたパリティチェックを行う第1パリティチェック手段と、
各部分画像の周波数成分の振幅分布を基に、前記ハミングチェック手段によるハミング誤り訂正後に、前記第1のパリティについて、前記第2のパリティを用いたパリティチェックを行う第2パリティチェック手段と、
各部分画像において、前記ハミングチェック手段により誤りがないことが検出され、又は、誤りが訂正され、且つ、前記第1パリティチェック手段によりパリティエラーがないことが検出され、且つ、前記第2パリティチェック手段によりパリティエラーがないことが検出されたならば、前記ハミングチェック手段により誤りがないことが検出され、又は、誤りが訂正された後に得られた各部分画像の周波数成分の振幅分布から求まる、データを表す非ゼロ周波数成分とゼロ周波数成分とのパターンを、その各部分画像から得られるデータパターンとする判断手段と、
を備えることを特徴とする電子透かし検出装置。
【請求項11】
請求項10に記載の電子透かし検出装置において、
前記所定の演算は、それぞれの部分画像についての総ポイントを、それぞれの部分画像の上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定用パターンに含まれる非ゼロ周波数成分の位置に基づいて求め、第1の追加部分画像の総ポイントと第2の追加部分画像の総ポイントとの差の絶対値を求め、前記第1の追加部分画像の総ポイントと前記第2の追加部分画像の総ポイントとの和の絶対値を求める演算であり、
前記所定の判断は、前記差の絶対値が所定の範囲に収まり、前記和の絶対値が所定の値以下であり、且つ、前記第1の追加部分画像についての総ポイント、前記初期部分画像についての総ポイント及び前記第2の追加部分画像についての総ポイントがこの順又はこれと逆の順に並ぶか否かをみる判断であり、
その判断結果が肯定的である場合に、前記第2のエラー終了手段は、エラー終了しないことを特徴とする電子透かし検出装置。
【請求項12】
請求項10に記載の電子透かし検出装置において、
前記所定の演算は、それぞれの部分画像についての総ポイントを、それぞれの部分画像の上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定用パターンに含まれる非ゼロ周波数成分の位置に基づいて求め、第1の追加部分画像の総ポイントと第2の追加部分画像の総ポイントとの差の絶対値を求め、前記第1の追加部分画像の総ポイントと前記第2の追加部分画像の総ポイントとの和の絶対値を求める演算であり、
前記所定の判断は、前記差の絶対値について第1の上限値と該第1の上限値よりも大きい第2の上限値と第1の下限値と該第1の下限値よりも小さい第2の下限値とを設け、前記和の絶対値について第3の上限値と該第3の上限値よりも大きい第4の上限値を設け、
前記差の絶対値が前記第1の上限値を超過し、前記差の絶対値が前記第1の下限値を下回り、又は、前記和の絶対値が前記第3の上限値を超過していても、その超過又は下回りの総数が所定数未満であり、且つ、前記第1の追加部分画像についての総ポイント、前記初期部分画像についての総ポイント及び前記第2の追加部分画像についての総ポイントがこの順又はこれと逆の順に並ぶか否かをみる第1の判断と、
前記差の絶対値が前記第2の上限値を超過し、前記差の絶対値が前記第2の下限値を下回り、又は、前記和の絶対値が前記第2の上限値を超過するか否かをみる第2の判断との組合せであり、
前記第1の判断による判断結果が肯定的である場合には、前記第2のエラー終了手段は、エラー終了せず、
前記第1の判断による判断結果が否定的である場合には、前記第2のエラー終了手段は、エラー終了し、
前記第2の判断による判断結果が肯定的である場合には、前記第2のエラー終了手段は、エラー終了することを特徴とする電子透かし検出装置。
【請求項13】
請求項11又は12に記載の電子透かし検出装置において、
それぞれの部分画像についての総ポイントを、それぞれの部分画像の上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定用パターンに含まれる非ゼロ周波数成分の位置に基づいて求める演算は、
上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定用パターンを含む周波数領域から振幅の大きい順に所定数の非ゼロ周波数成分を検出して、検出された非ゼロ周波数成分の位置に割り当てられているポイントの、検出された非ゼロ周波数成分についての和を総ポイントとする演算であることを特徴とする電子透かし検出装置。
【請求項14】
請求項9乃至13の何れか1項に記載の電子透かし検出装置において、
前記初期部分画像は、面積重心を入力画像と共通とする部分画像であり、前記追加画像のうちの2つの追加部分画像は、二辺を入力画像と共通とする4つの部分画像のうち面積重心から中心線までの距離が最大である2つの部分画像であることを特徴とする電子透かし検出装置。
【請求項15】
データを表す非ゼロ周波数成分とゼロ周波数成分とを含むデータパターンのうちの非ゼロ周波数成分を周波数領域に配置するデータパターン配置ステップと、
前記パターンを複数の第1サブパターンに分割し、各第1サブパターン毎にそのサブパターンに含まれる非ゼロ周波数成分の数に応じた第1パリティを生成し、該第1パリティを表す非ゼロ周波数成分とゼロ周波数成分を含む第1パリティパターンを生成し、該第1パリティパターンのうちの非ゼロ周波数成分を前記周波数領域に配置する第1パリティ配置ステップと、
前記サブパターン毎の第1パリティの集合についての第2パリティを生成し、該第2パリティを表す非ゼロ周波数成分とゼロ周波数成分を含む第2パリティパターンを生成し、該第2パリティパターンのうちの非ゼロ周波数成分を前記周波数領域に配置する第2パリティ配置ステップと、
前記データパターンのうち、何れの前記第1サブパターンとも一致しない第2のサブパターンに含まれる非ゼロ周波数成分とゼロ周波数成分を情報点と見なした場合のハミング符号における検査点を生成し、該検査点を表す非ゼロ周波数成分とゼロ周波数成分とを含む検査点パターンを生成し、該検査点パターンのうちの非ゼロ周波数成分を前記周波数領域に配置する検査パターン配置ステップと、
前記データパターン配置ステップにより前記周波数領域に配置された非ゼロ周波数成分、前記第1パリティ配置ステップにより前記周波数領域に配置された非ゼロ周波数成分、前記第2パリティ配置ステップにより前記周波数領域に配置された非ゼロ周波数成分及び前記検査パターン配置ステップにより前記周波数領域に配置された非ゼロ周波数成分を含むパターンを逆フーリエ変換することにより、空間領域パターンを生成する逆フーリエ変換ステップと、
前記空間領域パターンを原画像に重畳させる重畳ステップと、
を備えることを特徴とする電子透かし挿入方法。
【請求項16】
請求項15に記載の電子透かし挿入方法において、
各第1サブパターンに含まれるデータを表す非ゼロ周波数成分とゼロ周波数成分は、周波数領域において、中心を通る相互に直交した任意の2つの直線上には2以上並ばないことを特徴とする電子透かし挿入方法。
【請求項17】
請求項15又は16に記載の電子透かし挿入方法において、
前記第2のサブパターンに含まれるデータを表す非ゼロ周波数成分とゼロ周波数成分は、データを表す全ての非ゼロ周波数成分及びゼロ周波数成分のうち、相対的に、高周波数領域に存在する周波数成分であることを特徴とする電子透かし挿入方法。
【請求項18】
請求項15乃至17の何れか1項に記載の電子透かし挿入方法において、
画像回転角度検出用の非ゼロ周波数成分とゼロ周波数成分を含む回転角度検出用パターンのうちの非ゼロ周波数成分を前記周波数領域に配置する回転角度検出用パターン配置ステップを更に備え、
前記逆フーリエ変換ステップでは、前記データパターン配置ステップにより前記周波数領域に配置された非ゼロ周波数成分、前記第1パリティ配置ステップにより前記周波数領域に配置された非ゼロ周波数成分、前記第2パリティ配置ステップにより前記周波数領域に配置された非ゼロ周波数成分、前記検査パターン配置ステップにより前記周波数領域に配置された非ゼロ周波数成分及び前記回転角度検出用パターン配置ステップにより前記周波数領域に配置された非ゼロ周波数成分を含むパターンを逆フーリエ変換することを特徴とする電子透かし挿入方法。
【請求項19】
請求項15乃至17の何れか1項に記載の電子透かし挿入方法において、
画像回転角度検出用の非ゼロ周波数成分とゼロ周波数成分を含む回転角度検出用パターンのうちの非ゼロ周波数成分を前記周波数領域に配置する回転角度検出用パターン配置ステップと、
画像の上下反転を検出し、且つ、検出された回転角度の正誤と画像の上下反転の検出の結果の正誤とを判定するための非ゼロ周波数成分とゼロ周波数成分を含む上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定用パターンを生成し、該上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定パターンのうちの非ゼロ周波数成分を前記周波数領域に配置する上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定用パターン配置ステップと、
を更に備え、
前記逆フーリエ変換ステップでは、前記データパターン配置ステップにより前記周波数領域に配置された非ゼロ周波数成分、前記第1パリティ配置ステップにより前記周波数領域に配置された非ゼロ周波数成分、前記第2パリティ配置ステップにより前記周波数領域に配置された非ゼロ周波数成分、前記検査パターン配置ステップにより前記周波数領域に配置された非ゼロ周波数成分、前記回転角度検出用パターン配置ステップにより前記周波数領域に配置された非ゼロ周波数成分及び前記上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定用パターン配置ステップにより前記周波数領域に配置された非ゼロ周波数成分を含むパターンを逆フーリエ変換することを特徴とする電子透かし挿入方法。
【請求項20】
請求項19に記載の電子透かし挿入方法において、
前記上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定用パターンは、画像を複数の短冊に分割し、それぞれの短冊の周波数領域において、一端の短冊から他端の短冊に向かうに従って、非ゼロ周波数成分の位置がずれていくものであることを特徴とする電子透かし挿入方法。
【請求項21】
電子透かしが挿入された画像から、3以上の奇数個の部分画像を抽出する部分画像抽出ステップと、
各部分画像のデータをフーリエ変換して、各部分画像についての周波数成分の振幅分布を求めるフーリエ変換ステップと、
各部分画像の周波数成分の振幅分布からデータを表す非ゼロ周波数成分とゼロ周波数成分を含むデータパターンを検出するデータパターン検出ステップと、
過半数の部分画像から同一のデータを表すデータパターンが検出された場合に、そのデータパターンを正しいデータパターンであると判断する多数決ステップと、
を備えることを特徴とする電子透かし検出方法。
【請求項22】
請求項15乃至17の何れか1項に記載の電子透かし挿入方法により電子透かしが挿入された画像から電子透かしを検出する電子透かし検出方法において、
前記電子透かしが挿入された画像から、3以上の奇数個の部分画像を抽出する部分画像抽出ステップと、
各部分画像のデータをフーリエ変換して、各部分画像についての周波数成分の振幅分布を求めるフーリエ変換ステップと、
各部分画像の周波数成分の振幅分布からデータを表す非ゼロ周波数成分とゼロ周波数成分を含むデータパターンを検出するデータパターン検出ステップと、
過半数の部分画像から同一のデータを表すデータパターンが検出された場合に、そのデータパターンを正しいデータパターンであると判断する多数決ステップと、
を備え、
前記データパターン検出ステップは、
各部分画像の周波数成分の振幅分布を基に、前記データパターンに含まれる非ゼロ周波数成分とゼロ周波数成分であって、情報点であるとみなされた周波数成分について、前記検査点を用いたハミング誤り訂正を行うハミングチェックステップと、
各部分画像の周波数成分の振幅分布を基に、前記ハミングチェックステップによるハミング誤り訂正後に、前記データパターンに含まれる非ゼロ周波数成分とゼロ周波数成分について、前記第1のパリティを用いたパリティチェックを行う第1パリティチェックステップと、
各部分画像の周波数成分の振幅分布を基に、前記ハミングチェックステップによるハミング誤り訂正後に、前記第1のパリティについて、前記第2のパリティを用いたパリティチェックを行う第2パリティチェックステップと、
各部分画像において、前記ハミングチェックステップにより誤りがないことが検出され、又は、誤りが訂正され、且つ、前記第1パリティチェックステップによりパリティエラーがないことが検出され、且つ、前記第2パリティチェックステップによりパリティエラーがないことが検出されたならば、前記ハミングチェックステップにより誤りがないことが検出され、又は、誤りが訂正された後に得られた各部分画像の周波数成分の振幅分布から求まる、データを表す非ゼロ周波数成分とゼロ周波数成分とのパターンを、その各部分画像から得られるデータパターンとする判断ステップと、
を備えることを特徴とする電子透かし検出方法。
【請求項23】
請求項18に記載の電子透かし挿入方法により電子透かしが挿入され、その後、任意の角度回転した入力画像から電子透かしを検出する電子透かし検出方法において、
前記入力画像から、初期部分画像を抽出する初期部分画像抽出ステップと、
前記初期部分画像のデータをフーリエ変換して、前記初期部分画像についての周波数成分の振幅分布を求める第1のフーリエ変換ステップと、
前記初期部分画像についての周波数成分の振幅分布に含まれる前記画像回転角度検出用の非ゼロ周波数成分とゼロ周波数成分とのパターンを基に、前記入力画像の回転角度を検出する回転角度検出ステップと、
前記初期部分画像についての周波数成分の振幅分布に含まれる前記画像回転角度検出用の非ゼロ周波数成分とゼロ周波数成分とのパターンを基に、前記入力画像の回転角度を検出できない場合には、エラー終了するエラー終了ステップと、
前記入力画像から、2以上の偶数個の追加部分画像を抽出する追加部分画像抽出ステップと、
各追加部分画像のデータをフーリエ変換して、各追加部分画像についての周波数成分の振幅分布を求める第2のフーリエ変換ステップと、
前記初期部分画像の周波数成分の位置と、前記追加部分画像の周波数成分の位置を、前記回転角度検出ステップにより検出された回転角度だけ補正する回転角度補正ステップと、
前記初期部分画像と前記追加部分画像の各々の前記回転角度補正ステップを通した後の周波数成分の振幅分布からデータを表す非ゼロ周波数成分とゼロ周波数成分を含むデータパターンを検出するデータパターン検出ステップと、
過半数の部分画像から同一のデータを表すデータパターンが検出された場合に、そのデータパターンを正しいデータパターンであると判断する多数決ステップと、
を備え、
前記データパターン検出ステップは、
各部分画像の周波数成分の振幅分布を基に、前記データパターンに含まれる非ゼロ周波数成分とゼロ周波数成分であって、情報点であるとみなされた周波数成分について、前記検査点を用いたハミング誤り訂正を行うハミングチェックステップと、
各部分画像の周波数成分の振幅分布を基に、前記ハミングチェックステップによるハミング誤り訂正後に、前記データパターンに含まれる非ゼロ周波数成分とゼロ周波数成分について、前記第1のパリティを用いたパリティチェックを行う第1パリティチェックステップと、
各部分画像の周波数成分の振幅分布を基に、前記ハミングチェックステップによるハミング誤り訂正後に、前記第1のパリティについて、前記第2のパリティを用いたパリティチェックを行う第2パリティチェックステップと、
各部分画像において、前記ハミングチェックステップにより誤りがないことが検出され、又は、誤りが訂正され、且つ、前記第1パリティチェックステップによりパリティエラーがないことが検出され、且つ、前記第2パリティチェックステップによりパリティエラーがないことが検出されたならば、前記ハミングチェックステップにより誤りがないことが検出され、又は、誤りが訂正された後に得られた各部分画像の周波数成分の振幅分布から求まる、データを表す非ゼロ周波数成分とゼロ周波数成分とのパターンを、その各部分画像から得られるデータパターンとする判断ステップと、
を備えることを特徴とする電子透かし検出方法。
【請求項24】
請求項19に記載の電子透かし挿入方法により電子透かしが挿入され、その後任意の角度回転した入力画像から電子透かしを検出する電子透かし検出方法において、
前記入力画像から、初期部分画像を抽出する初期部分画像抽出ステップと、
前記初期部分画像のデータをフーリエ変換して、前記初期部分画像についての周波数成分の振幅分布を求める第1のフーリエ変換ステップと、
前記初期部分画像についての周波数成分の振幅分布に含まれる前記画像回転角度検出用の非ゼロ周波数成分とゼロ周波数成分とのパターンを基に、前記入力画像の回転角度を検出する回転角度検出ステップと、
前記初期部分画像についての周波数成分の振幅分布に含まれる前記画像回転角度検出用の非ゼロ周波数成分とゼロ周波数成分とのパターンを基に、前記入力画像の回転角度を検出できない場合には、エラー終了する第1のエラー終了ステップと、
前記入力画像から、2以上の偶数個の追加部分画像を抽出する追加部分画像抽出ステップと、
各追加部分画像のデータをフーリエ変換して、各追加部分画像についての周波数成分の振幅分布を求める第2のフーリエ変換ステップと、
前記初期部分画像の周波数成分の位置と、前記追加部分画像の周波数成分の位置を、前記回転角度検出ステップにより検出された回転角度だけ補正する回転角度補正ステップと、
各部分画像に含まれる前記上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定用パターンを基に、所定の演算及び所定の判断を行うことにより、検出された前記回転角度と潜在的な上下反転検出結果のうちの少なくとも1つに誤りがあることが検出された場合にエラー終了する第2のエラー終了ステップと、
前記初期部分画像と前記追加部分画像の各々の前記回転角度補正ステップを通した後の周波数成分の振幅分布からデータを表す非ゼロ周波数成分とゼロ周波数成分を含むデータパターンを検出するデータパターン検出ステップと、
過半数の部分画像から同一のデータを表すデータパターンが検出された場合に、そのデータパターンを正しいデータパターンであると判断する多数決ステップと、
を備え、
前記データパターン検出ステップは、
各部分画像の周波数成分の振幅分布を基に、前記データパターンに含まれる非ゼロ周波数成分とゼロ周波数成分であって、情報点であるとみなされた周波数成分について、前記検査点を用いたハミング誤り訂正を行うハミングチェックステップと、
各部分画像の周波数成分の振幅分布を基に、前記ハミングチェックステップによるハミング誤り訂正後に、前記データパターンに含まれる非ゼロ周波数成分とゼロ周波数成分について、前記第1のパリティを用いたパリティチェックを行う第1パリティチェックステップと、
各部分画像の周波数成分の振幅分布を基に、前記ハミングチェックステップによるハミング誤り訂正後に、前記第1のパリティについて、前記第2のパリティを用いたパリティチェックを行う第2パリティチェックステップと、
各部分画像において、前記ハミングチェックステップにより誤りがないことが検出され、又は、誤りが訂正され、且つ、前記第1パリティチェックステップによりパリティエラーがないことが検出され、且つ、前記第2パリティチェックステップによりパリティエラーがないことが検出されたならば、前記ハミングチェックステップにより誤りがないことが検出され、又は、誤りが訂正された後に得られた各部分画像の周波数成分の振幅分布から求まる、データを表す非ゼロ周波数成分とゼロ周波数成分とのパターンを、その各部分画像から得られるデータパターンとする判断ステップと、
を備えることを特徴とする電子透かし検出方法。
【請求項25】
請求項24に記載の電子透かし検出方法において、
前記所定の演算は、それぞれの部分画像についての総ポイントを、それぞれの部分画像の上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定用パターンに含まれる非ゼロ周波数成分の位置に基づいて求め、第1の追加部分画像の総ポイントと第2の追加部分画像の総ポイントとの差の絶対値を求め、前記第1の追加部分画像の総ポイントと前記第2の追加部分画像の総ポイントとの和の絶対値を求める演算であり、
前記所定の判断は、前記差の絶対値が所定の範囲に収まり、前記和の絶対値が所定の値以下であり、且つ、前記第1の追加部分画像についての総ポイント、前記初期部分画像についての総ポイント及び前記第2の追加部分画像についての総ポイントがこの順又はこれと逆の順に並ぶか否かをみる判断であり、
その判断結果が肯定的である場合に、前記第2のエラー終了ステップでは、エラー終了しないことを特徴とする電子透かし検出方法。
【請求項26】
請求項24に記載の電子透かし検出方法において、
前記所定の演算は、それぞれの部分画像についての総ポイントを、それぞれの部分画像の上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定用パターンに含まれる非ゼロ周波数成分の位置に基づいて求め、第1の追加部分画像の総ポイントと第2の追加部分画像の総ポイントとの差の絶対値を求め、前記第1の追加部分画像の総ポイントと前記第2の追加部分画像の総ポイントとの和の絶対値を求める演算であり、
前記所定の判断は、前記差の絶対値について第1の上限値と該第1の上限値よりも大きい第2の上限値と第1の下限値と該第1の下限値よりも小さい第2の下限値とを設け、前記和の絶対値について第3の上限値と該第3の上限値よりも大きい第4の上限値を設け、
前記差の絶対値が前記第1の上限値を超過し、前記差の絶対値が前記第1の下限値を下回り、又は、前記和の絶対値が前記第3の上限値を超過していても、その超過又は下回りの総数が所定数未満であり、且つ、前記第1の追加部分画像についての総ポイント、前記初期部分画像についての総ポイント及び前記第2の追加部分画像についての総ポイントがこの順又はこれと逆の順に並ぶか否かをみる第1の判断と、
前記差の絶対値が前記第2の上限値を超過し、前記差の絶対値が前記第2の下限値を下回り、又は、前記和の絶対値が前記第2の上限値を超過するか否かをみる第2の判断との組合せであり、
前記第1の判断による判断結果が肯定的である場合には、前記第2のエラー終了ステップでは、エラー終了せず、
前記第1の判断による判断結果が否定的である場合には、前記第2のエラー終了ステップでは、エラー終了し、
前記第2の判断による判断結果が肯定的である場合には、前記第2のエラー終了ステップでは、エラー終了することを特徴とする電子透かし検出方法。
【請求項27】
請求項25又は26に記載の電子透かし検出方法において、
それぞれの部分画像についての総ポイントを、それぞれの部分画像の上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定用パターンに含まれる非ゼロ周波数成分の位置に基づいて求める演算は、
上下反転検出/回転角度正誤判定/上下反転検出結果正誤判定用パターンを含む周波数領域から振幅の大きい順に所定数の非ゼロ周波数成分を検出して、検出された非ゼロ周波数成分の位置に割り当てられているポイントの、検出された非ゼロ周波数成分についての和を総ポイントとする演算であることを特徴とする電子透かし検出方法。
【請求項28】
請求項23乃至27の何れか1項に記載の電子透かし検出方法において、
前記初期部分画像は、面積重心を入力画像と共通とする部分画像であり、前記追加画像のうちの2つの追加部分画像は、二辺を入力画像と共通とする4つの部分画像のうち面積重心から中心線までの距離が最大である2つの部分画像であることを特徴とする電子透かし検出方法。
【請求項29】
コンピュータを請求項1乃至14の何れか1項に記載の装置として機能させるためのプログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【公開番号】特開2011−228994(P2011−228994A)
【公開日】平成23年11月10日(2011.11.10)
【国際特許分類】
【出願番号】特願2010−97772(P2010−97772)
【出願日】平成22年4月21日(2010.4.21)
【出願人】(000162113)共同印刷株式会社 (488)
【Fターム(参考)】
【公開日】平成23年11月10日(2011.11.10)
【国際特許分類】
【出願日】平成22年4月21日(2010.4.21)
【出願人】(000162113)共同印刷株式会社 (488)
【Fターム(参考)】
[ Back to top ]