JP4189972B2 - 大きさの変更、回転及び移動に対して耐性を有するウォータマークの検出方法及び検出装置 - Google Patents
大きさの変更、回転及び移動に対して耐性を有するウォータマークの検出方法及び検出装置 Download PDFInfo
- Publication number
- JP4189972B2 JP4189972B2 JP2004512065A JP2004512065A JP4189972B2 JP 4189972 B2 JP4189972 B2 JP 4189972B2 JP 2004512065 A JP2004512065 A JP 2004512065A JP 2004512065 A JP2004512065 A JP 2004512065A JP 4189972 B2 JP4189972 B2 JP 4189972B2
- Authority
- JP
- Japan
- Prior art keywords
- watermark
- data
- value
- values
- axis
- 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
Links
- 238000001514 detection method Methods 0.000 title claims description 100
- 230000008859 change Effects 0.000 title description 21
- 238000012545 processing Methods 0.000 claims description 69
- 238000000034 method Methods 0.000 claims description 58
- 230000008569 process Effects 0.000 claims description 28
- 238000001228 spectrum Methods 0.000 claims description 25
- 238000004364 calculation method Methods 0.000 claims description 17
- 238000003491 array Methods 0.000 claims description 6
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 claims description 5
- 230000000875 corresponding effect Effects 0.000 description 40
- 230000006870 function Effects 0.000 description 25
- 238000010586 diagram Methods 0.000 description 11
- 238000001914 filtration Methods 0.000 description 8
- 239000004615 ingredient Substances 0.000 description 4
- 230000002596 correlated effect Effects 0.000 description 3
- 241001085205 Prenanthella exigua Species 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/0021—Image watermarking
- G06T1/005—Robust watermarking, e.g. average attack or collusion attack resistant
- G06T1/0064—Geometric transfor invariant watermarking, e.g. affine transform invariant
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2201/00—General purpose image data processing
- G06T2201/005—Image watermarking
- G06T2201/0052—Embedding of the watermark in the frequency domain
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2201/00—General purpose image data processing
- G06T2201/005—Image watermarking
- G06T2201/0065—Extraction of an embedded watermark; Reliable detection
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Bioinformatics & Computational Biology (AREA)
- General Engineering & Computer Science (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Image Processing (AREA)
- Editing Of Facsimile Originals (AREA)
Description
【0001】
本発明は、コンテンツデータのフレーム内に埋め込まれた1つ以上のウォータマークの検出に関し、詳しくは、ウォータマークの大きさの変更(resizing)、回転(rotation)及び移動(translation)に対して耐性を有するウォータマークの検出方法及び検出装置に関する。
【背景技術】
【0002】
例えば音楽、ビデオ、ソフトウェア及びこれらの組合せ等のコンテンツデータの配給元にとって、コンテンツデータに対する違法コピー(pirating)を防止又は阻止することが望ましい。違法コピーを防ぐための手法として、ウォータマークを使用することが一般的になっている。ウォータマークは、コンテンツデータに埋め込まれ、例えばデジタルビデオディスク(digital video disc:DVD)、コンパクトディスク(compact disc:CD)、読出専用メモリ(read only memory:ROM)、ランダムアクセスメモリ(random access memory:RAM)、磁気記録媒体等の記録媒体にコンテンツデータと共に書き込まれた隠れメッセージ(hidden message)を含む1組のデータである。「埋め込まれたウォータマーク(embedded watermark:以下、埋込ウォータマークという。)」の隠れメッセージは、代表的には、例えば「コピー禁止(do not copy)」又は「2回以上のコピー禁止(copy only once)」等のコピー制御メッセージである。
【0003】
コンテンツデータと埋込ウォータマークとからなるデータの量が基準ウォータマーク(reference watermark)に対して相関性を有している場合、埋込ウォータマークが、基準ウォータマークと実質的に類似しているか又は同一であるかについて判定することができる。ここで、高い相関性が確認された場合、埋込ウォータマークのメッセージは、基準ウォータマークのメッセージに一致していると見なされる。例えばビデオデータのデータ量は、ビデオデータのフレームの画素データにウォータマーク(埋込ウォータマーク)が埋め込まれたデータフレームのデータ量とすることができる。データフレームが何らかの形で変形されていない場合、埋込ウォータマークと実質的に等しい基準ウォータマークと、ビデオデータのフレームとの相関を調べると、比較的高い出力値が得られる。これは、埋込ウォータマークのデータと、基準ウォータマークのデータとの1対1の対応(又は整合(registration))により算出される相関値が高くなるためである。逆に、ビデオデータのフレームに含まれる埋込ウォータマークが変更され、埋込ウォータマークと基準ウォータマークとの間の1対1の対応関係が低下している場合、算出される相関値は低くなる。
【0004】
相関値の演算は、多くの場合、データフレームに含まれるデータと、基準ウォータマークのデータとの積和(sum of products)を求める計算を含む。データフレーム及び基準ウォータマークが正の値(positive magnitude value)及び負の値(negative magnitude value)の両方を有する場合、埋込ウォータマークのデータが基準ウォータマークのデータと1対1に揃っていれば、この積和は比較的大きくなる。逆に、埋込ウォータマークのデータが基準ウォータマークのデータに揃っていなければ、この積和は比較的小さくなる。
【0005】
例えば標準的な相関検出器又は整合フィルタ(matched filter)等のデータ検出器を用いることにより、ビデオデータやオーディオデータ等のコンテンツデータのフレーム内に埋込ウォータマークが存在することを検出することができる。埋込ウォータマークの元の位置、すなわち基準位置は、事実上、検出器に関連するハードウェア及び/又はソフトウェアの設計によって決まる。これらの種類の相関検出器は、埋込ウォータマーク及び基準ウォータマークの特定の整合(registration)(すなわち、整列(alignment))に依存する。
【0006】
埋込ウォータマークを含むコンテンツデータを悪意にコピーしようとする著作権侵害者(例えば「コピー禁止」の隠れメッセージに違反してコピーを行う者)は、埋込ウォータマークと基準ウォータマーク間の整合(すなわち整列)を崩すことによって、埋込ウォータマークを無視することができてしまう。このような処理は、例えば、埋込ウォータマークを含むコンテンツデータのフレームを若干回転させ、大きさを変更し、及び/又は期待される位置から埋込ウォータマークと基準ウォータマークとの間の1対1の対応関係(完全な整合関係)を崩す位置にデータを移動(translation)させることによって実現されてしまう。このような変更を行うために、編集及びコピー装置が利用されることもある。
【0007】
また、埋込ウォータマークの意図されない歪みは、コンピュータ装置又はユーザ機器におけるコンテンツデータ(埋込ウォータマークを含む)に対する通常の処理時にも生じることがある。例えば、DVDのコンテンツデータ(及び埋込ウォータマーク)は、コンテンツデータを欧州PAL方式から米国NTSC方式に変換し、又はこの逆の変換を行う等のフォーマット処理の実行中に、非意図的に歪むこともある。また、例えば、ワイドスクリーン映画フォーマットからテレビジョンフォーマットへの変換等、この他の種類のフォーマット処理において、コンテンツデータ及び埋込ウォータマークが歪んでしまうこともある。実際、このような処理では、データ及びこれに伴ってコンテンツデータが非意図的に大きさが変更され、回転され、及び移動されることがあり、これにより埋込ウォータマークの検出が困難となってしまうことがある。
【0008】
大きさの変更及び移動に対してロバスト性を有する様々な種類のウォータマーク方式が知られている。この種のウォータマーク方式では、多くの場合、大きさの変更及び移動に対して数学的に不変のウォータマークをコンテンツデータに埋め込む。このような方式は、米国特許第6,282,300号にも開示されており、この文献は参照により本願に援用される。この種の方式において用いられる検出器は、埋込ウォータマークの位置及び/又は大きさの変化を調整する必要がない。このような方式は、フーリエ−メリン変換及び対数極座標変換に基づいている。このような方式では、複雑な数学的計算が必要であり、特別に構成された埋込ウォータマークパターン及び検出器を用いなくてはならないという短所がある。したがって、この方式は、既存のウォータマークシステムでは用いることができない。
【0009】
また、周知の他のウォータマーク方式では、全ての埋込ウォータマークブロックが等しい繰返しウォータマークブロック(repetitive watermark block)を利用する。この種の方式におけるウォータマークブロックは、通常大きく、全体的なコピー制御メッセージを伝えるために設計されている。同じブロックを繰り返す手法では、ウォータマークが付された画像の異なる位置の相関を調べ、任意の位置間の距離を検出することにより、埋込ウォータマークに対するあらゆる大きさの変更を推定することができる。次に、推定された大きさの変更の逆の大きさの変更を行い、基準データブロックと、調整された画像との相関を調べ、埋込ウォータマークとその位置を同時に検出する。この種の方式の一例として、フィリップス社(Philips)のVIVA/JAWS+ウォータマーク方式がある。この方式では、埋込ウォータマークが空間的に周期性を有する必要があり、任意のウォータマーク方式には必ずしも当て嵌まらないという短所がある。
【0010】
更に、コンテンツデータに埋込ウォータマークと共にテンプレート又は補助パターン(helper pattern)を埋め込むウォータマーク方式もある。この方式では、検出器は、テンプレートの位置、大きさ及び形状を認識するように設計される。検出器は、まず、テンプレートを検出し、次に、テンプレートの位置を検出し、これに基づいて埋込ウォータマークの実際の位置及び大きさを推定する。更に、この方式では、コンテンツに加えられた幾何学的変形の逆の変形を行い、これにより、相関検出器が埋込ウォータマークを検出し、解析できるようにする。しかしながら、この方式では、テンプレートが脆弱であり、攻撃が容易であるという難点がある。
【発明の開示】
【発明が解決しようとする課題】
【0011】
本発明の目的は、基準ウォータマークに対する、例えば回転、大きさの変更、移動及び/又は変形等の任意の歪みに対するロバスト性を有する、フレーム内に埋め込まれた埋込ウォータマークを検出するための新たな方法及び装置を提供することである。
【課題を解決するための手段】
【0012】
本発明は、一実施の形態として、2次元のデータのフレームにおいてウォータマークを検出するウォータマーク検出方法を提供する。データのフレームは、コンテンツデータのフレームに埋め込まれたウォータマークを表す複数のデータ値を含む。ウォータマーク検出方法は、好ましくは、データのフレームから、コンテンツデータの少なくとも幾つかの周波数成分に比して強調されたウォータマークに対応する少なくとも幾つかの高調波成分を有するフィルタリングされたデータのフレームを算出するステップと、フィルタリングされたデータのフレームの2次元フーリエ変換を行い、フィルタリングされたデータのフレームの2次元周波数スペクトルを算出するステップと、2次元周波数スペクトルの周波数成分の中から、ウォータマークに関連する1組の周波数成分を選択するステップと、選択された1組の周波数成分の1つ以上を用いて、基準ウォータマークに対してウォータマークに関する回転値、リサイズ値、移動値のうちの少なくとも1つを算出するステップとを有する。
【0013】
データのフレームは、画素データ及びオーディオデータ等の如何なる種類のデータであってもよい。
【0014】
ウォータマークに関連する1組の周波数成分を選択するステップは、好ましくは、2次元周波数スペクトルの周波数成分の中から、ウォータマークに対応する少なくとも幾つかの高調波成分を選択するステップを有する。高調波成分は、好ましくは、第2高調波成分を含む。
【0015】
ウォータマークに対応する回転値を算出するステップは、好ましくは、基準点及びウォータマークに対応する選択された高調波成分の少なくとも1つによって定義される第1の軸と、基準ウォータマークによって定義される基準軸との間の角度を判定するステップを有する。基準軸は、x軸及びy軸の何れか一方に沿う軸であることが好ましい。ウォータマークに対応する選択された高調波成分の1つのy軸座標及びx軸座標をそれぞれFy1及びFxlとすると、ウォータマークに対応する回転値は、実質的に、arctan((Fy1*W)/(Fxl*H))に比例する数値を算出することによって求められる。
【0016】
ウォータマークに対応するリサイズ値を算出するステップは、好ましくは、x軸リサイズ値及びy軸リサイズ値とを算出するステップを有する。x軸リサイズ値を算出するステップは、好ましくは、ウォータマークに対応する選択された高調波成分の1つからx軸期間Pxを算出するステップと、x軸期間Pxと基準ウォータマークのx軸基準期間Prxとの比率を算出して、x軸リサイズ値を求めるステップとを有する。ウォータマークに対応する選択された1つの高調波成分のx軸座標及びy軸座標をそれぞれFxl及びFylとすると、x軸期間Pxは、実質的に、(H*W)/((Fx1*H)2+(Fyl*W)2)1/2に等しい。
【0017】
y軸リサイズ値を算出するステップは、好ましくは、ウォータマークに対応する選択さ れた高調波成分の1つからy軸期間Pyを算出するステップと、y軸期間Pyと基準ウォータマークのy軸基準期間Pryとの比率を算出して、y軸リサイズ値を求めるステップとを有する。ウォータマークに対応する選択された1つの高調波成分のx軸座標及びy軸座標yをそれぞれFx2及びFy2とすると、軸期間Pyは、実質的に、(H*W)/((Fx2*H)2+(Fy2*W)2)1/2に等しい。
【0018】
移動値は、ウォータマークに対応する選択された高調波成分の1つの位相θ1に比例する第1の方向の第1の距離と、ウォータマークに対応する選択された高調波成分の他の1つの位相θ2に比例する第2の方向の第2の距離とに基づいている第1の距離は、ウォータマークに対応する選択された高調波成分の1つのx軸座標及びy軸座標をそれぞれFxl及びFylとすると、実質的に、(θ1*H*W)/(2Π*((Fx1*H)2+(Fyl*W)2)1/2)に等しい。第2の距離は、Fx2及びFy2をそれぞれ選択された他の高調波成分のx軸座標とy軸座標として、実質的に(θ2*H*W)/(2Π*((Fx2*H)2+(Fy2*W)2)1/2)に等しい。
【0019】
第1の方向は、実質的に、arctan((Fy1*W)/(Fxl*H))に比例し、第2の方向は、実質的に、arctan((Fy2*W)/(Fx2*H))に比例する。第1及び第2の方向は、実質的に直交することが好ましい。
【0020】
ウォータマーク検出方法は、好ましくは、ウォータマークの回転値、リサイズ値、移動値のうちの少なくとも1つに基づいて、ウォータマークの少なくとも幾つかのデータブロックに対応する上記データのフレーム内の複数の位置を判定するステップを更に有する。また、ウォータマーク検出方法は、好ましくは、ウォータマークの少なくとも幾つかのデータブロックの1つに対応するとともに、基準データブロックのデータ値と、ウォータマークの少なくとも幾つかのデータブロックの1つのデータ値のそれぞれの組との積和に等しいフィルタリングされたメッセージ値のアレーを求めるステップを更に有する。また、ウォータマーク検出方法は、好ましくは、基準ウォータマークの少なくとも幾つかのデータブロックの1つに対応するとともに、基準データブロックのデータ値と、基準ウォータマークの少なくとも幾つかのデータブロックの1つのデータ値との積和に等しいフィルタリングされた基準メッセージ値のアレーを求めるステップを更に有する。更に、フィルタリングされたメッセージ値のアレーと、フィルタリングされた基準メッセージ値のアレーとの積和を算出してもよい。フィルタリングされたメッセージ値のアレーとフィルタリングされた基準メッセージ値のアレーの積和が閾値以上であるとき、ウォータマークは基準ウォータマークのメッセージに対応するメッセージを含んでいると判定してもよい。
【0021】
また、ウォータマーク検出方法は、フィルタリングされた基準メッセージ値のアレーを、フィルタリングされた基準メッセージ値のアレーに対して、横方向及び縦方向の少なくとも1つの方向に少なくとも1つのメッセージ値の位置によって移動させるステップと、フィルタリングされたメッセージ値のアレーと、フィルタリングされた基準メッセージ値のアレーとの積和を算出するステップと、移動及び算出のステップを1回以上繰り返すステップと、積和の1つが閾値以上であるとき、ウォータマークは基準ウォータマークのメッセージに対応するメッセージを含んでいると判定するステップとを更に有していてもよい。
【0022】
好ましくは、ウォータマーク検出方法は、フィルタリングされた基準メッセージ値のアレーに対して、フィルタリングされたメッセージ値のアレーを90°の整数倍回転させるステップと、フィルタリングされたメッセージ値のアレーと、フィルタリングされた基準メッセージ値のアレーとの積和を算出するステップと、回転及び算出のステップを1回以上繰り返すステップと、積和の1つが閾値以上であるとき、ウォータマークは基準ウォータマークのメッセージに対応するメッセージを含んでいると判定するステップとを更に有する。
【0023】
本発明の更なる実施の形態として、本発明に係るウォータマーク検出方法は、フィルタリングされた基準メッセージ値のアレーの2次元フーリエ変換値を算出するステップと、フィルタリングされたメッセージ値のアレーの2次元フーリエ変換値を算出するステップと、ポイント毎にフィルタリングされた基準メッセージ値のアレーの2次元フーリエ変換値と、フィルタリングされたメッセージ値のアレーの2次元フーリエ変換値との積和を求めることによって、変更されたアレーを算出するステップと、変更されたアレーの逆フーリエ変換値を算出するステップと、変更されたアレーの逆フーリエ変換値から最大値を判定するステップと、フィルタリングされた基準メッセージ値のアレーの2次元フーリエ変換値を、フィルタリングされたメッセージ値のアレーの2次元フーリエ変換に対して、90°の整数倍回転させるステップと、ポイント毎にフィルタリングされた基準メッセージ値のアレーの2次元フーリエ変換値と、フィルタリングされたメッセージ値のアレーの2次元フーリエ変換値との積和を求めることによって、次の変更されたアレーを算出するステップと、次の変更されたアレーの逆フーリエ変換値を算出するステップと、次の変更されたアレーの逆フーリエ変換値から次の最大値を判定するステップと、回転、算出、判定のステップを1回以上繰り返すステップと、最大値の1つが閾値以上であるとき、ウォータマークは基準ウォータマークのメッセージに対応するメッセージを含んでいると判定するステップとを更に有する。
【0024】
本発明の1つ以上の更なる実施の形態として、上述したウォータマーク検出方法は、例えば、1つ以上の特定用途向け集積回路(application specific integrated circuit:ASIC)及び/又はプログラミング可能なデジタルシグナルプロセッサ、マイクロプロセッサ、1つ以上のソフトウェアプログラムの制御の下で動作するコンピュータ等の1つ以上の処理装置を用いることによって、市販のデジタル及び/又はアナログ部品を用いてハードウェアで実現してもよい。これに代えて、本発明の一実施の形態を実現するために、上述した機能を例えばコンピュータ等の適切な処理装置が実行可能なソフトウェアプログラムとして実現してもよい。このようなソフトウェアプログラムは、フレキシブルディスク、CD−ROM、メモリチップをはじめとする適切な記録媒体に保存してもよい。
【0025】
本発明のこれらの利点、特徴及び側面は、添付の図面を参照して行う以下の説明により、当業者にとって明らかとなる。
【発明を実施するための最良の形態】
【0026】
添付の図面では、同様の要素には同様な符号を付している。図1は、本発明の少なくとも1つの実施の形態に基づく好ましいウォータマーク100の包括的なブロックに基づく構造(block-based structure)を示している。ウォータマーク100のデータは、コンテンツデータに埋め込むことができ、この場合のウォータマーク100をここでは「埋込ウォータマーク」100と呼ぶ。これに代えて、ウォータマーク100は、データのフレームに埋め込まれたウォータマークについて、望ましい構成(例えば、回転、リサイズ、移動されていない状態)を表していてもよく、この場合のウォータマーク100をここでは、「基準ウォータマーク」100と呼ぶ。
【0027】
ウォータマーク100は、あるグラフィック特性(例えば、パターン)を有しており、したがって、ビデオデータ(例えば、画素データ)の1つ以上のフレームにウォータマーク100を埋め込むことによって及び/又は埋込ウォータマークを検出するための基準ウォータマークとしてウォータマーク100を用いること等によって、ウォータマーク100をグラフィカルなコンテキストで用いることができる。なお、ウォータマーク100は、オーディオデータのコンテキスト等、他の如何なる適切なコンテキストにおいて用いてもよい。
【0028】
好ましくは、ウォータマーク100は、複数のデータブロック102を含んでおり、各データブロック102は、データ値(画素値、オーディオ値等)のアレーを有する。また、本発明の範囲から逸脱することなく、非正方形アレーを用いてもよいが、各データブロック102のアレーは、好ましくはN×Nアレーである。各データブロック102のデータ値は、複数のパターンのうちの1つのパターンに基づいて構成されている。図1に示すように、ウォータマーク100のデータブロック102は、好ましくは、第1のパターン又は第2のパターンに基づいて構成されたデータ値を含んでいる。例えば、データブロック102Aは、第1のパターンを有し、データブロック102Bは、第2のパターンを有する。
【0029】
図2Aは、例えば、データブロック102A等の第1のパターンのデータブロック102を詳細に示している。このパターンをデカルト座標系と見なした場合、第1のパターンは、データ値の4つの象限で定義することができ、第1象限と第3象限は同じデータ値を有し、第2象限と第4象限は同じデータ値を有する。例えば、第1及び第3象限のデータ値は、負の値(例えば、−1)を示し、図1では黒の領域で表され、第2及び第4象限のデータ値は、正の値(例えば、+1)を示し、図1では白の領域で表されている。また、図2Bに示す第2のパターン(例えば、データブロック102Bに適用されるパターン)もデータ値の4つの象限によって定義され、ここでも第1の象限と第3の象限とが同じデータ値を有し、第2の象限と第4の象限とが同じデータ値を有する。なお、第2のパターンでは、第1のパターンと異なり、第1の及び第3の象限のデータ値が正の値(図1における白の領域)を示し、第2及び第4の象限のデータ値が負の値(図1における黒の領域)を示す。
【0030】
データ値の2つのパターンの何れか、例えば第1のパターン(例えば、データブロック102A)は、好ましくは一方の論理状態、例えば1を表し、例えば第2のパターン(例えば、データブロック102B)は、他方の論理状態、例えば0を表す。このように、ウォータマーク100のデータブロック102のアレーは、データフレーム内の隠れメッセージを定義する論理状態(例えば、1及び0)のパターンを表すものであってもよい。
【0031】
なお、第1のパターンのデータ値と第2のパターンのデータ値は、極性が反対の2つの値(例えば、+1と−1)を有し、これにより、第1のパターンを有するデータブロック102(例えば、データブロック102A)のデータ値と、第2のパターンを有するデータブロック102(例えば、データブロック102B)のデータ値との積の和が正又は負のピーク数(peak number)となる。なお、この実施の形態では、積和は、負のピーク数となる(データ値の積は全て−1であるため)。上述の実施の形態において、データブロック102A、102Bの何れかを他方のデータブロックに対して90°回転させれば、第1のパターンを有するデータブロック102(データブロック102A)と第2のパターンを有するデータブロック102(データブロック102B)の積和は、正のピーク数となる。これは、データブロック102Aとデータブロック102Bの何れか一方を90°回転させると、データ値の積が全て+1となるためである。これは、データブロック102A、102Bの一方を90°回転させると、データ値の積が全て+1になるためである。
【0032】
また、ウォータマーク100のデータブロック102A、102Bは、他方のブロックに対する特に、0°、90°、180°に近い一方のブロックの小さな回転に対してロバストである。当業者には明らかであるが、以下の説明からウォータマーク100のこれらの性質により、埋込ウォータマークが、例えば回転、大きさの変更、移動等によって「幾何学的に」変更された場合でも、データフレーム内の埋込ウォータマークの検出の精度を向上させることができる。
【0033】
なお、ウォータマーク100の基本構造は、例示的なものであり、本発明の範囲から逸脱することなく、ウォータマーク100の基本構造を様々に変更及び修正することができる。ロバスト性を高めるために、ウォータマーク100は、所定の性質を示す例えばデータブロック102等のデータブロックによって構成することが好ましい。例えば、各データブロック102は、データブロック102の中心からその境界(又は周縁)への如何なる径方向にそっても、実質的に同じ(例えば、一定の)値を有する。例えば、図2A及び図2Bに示すデータブロック102A及びデータブロック102Bは、このような径方向に沿って、+1及び−1の何れかの値を有する。この説明から明らかなように、このような構成により、大きさの変更(例えば、大きさの増加、大きさの減少、アスペクト比の変更等)にかかわらず、埋込ウォータマークの検出における高いロバスト性が実現される。
【0034】
図3は、図1に示すウォータマーク100をビデオデータ150等のコンテンツデータのフレームに埋め込む処理を概念的に示す図である。包括的に言えば、基本埋込器(basic embedder)160を用いてウォータマーク100のデータをビデオデータ150のフレームの画素データに画素毎に統合し(例えば、加算し)、コンテンツデータと埋込ウォータマーク100からなる複数のデータ値を含むデータ170のフレームを生成することができる。
【0035】
ここに示す実施の形態では、ウォータマーク100は、ビデオデータ150のフレーム全体を覆うために十分な数のデータブロック102を含んでいるが、本発明の範囲から逸脱することなく、如何なるサイズのウォータマーク100を用いてもよい。例えば、ウォータマーク100は、ビデオデータ150のフレームより小さくてもよく及び/又はウォータマーク100は、ビデオデータ150の複数のフレーム内に分散されていてもよい。例えば、ビデオデータ150のフレームが動画における複数のフレーム内の1つのフレームを表している場合、ウォータマーク100は、ビデオデータにおける1つ以上のフレームに分散していてもよい。何れの場合も、埋込ウォータマーク100は、データ170の2次元フレームにおいて、人間の目には知覚できないことが好ましい。
【0036】
図4は、データ170等のコンテンツデータのフレームに含まれた埋込ウォータマーク100Aを基準ウォータマーク100とどのように相関させるかを図式的に説明する図である。なお、説明を明瞭にするために、ここでは、埋込ウォータマーク100Aに付随するビデオ画像のコンテンツデータは示していない。ここでは、埋込ウォータマーク100Aは、回転されておらず、大きさを変更されておらず、期待される位置から移動されてもいないものとする。したがって、埋込ウォータマーク100Aと基準ウォータマーク100とは、正確に整列(整合)している。したがって、(例えば、白色の点のフレーム172として示すように)埋込ウォータマーク100Aのデータ値による、データ170のフレームのデータ値(すなわち、画素値)と、及び基準ウォータマーク100の対応するデータ値との積への貢献が最大になる。このような整列が存在している場合、フレーム172の積和の値は、実質的に大きくなる。ここで、図5に示すように、歪んだ埋込ウォータマーク100Bと基準ウォータマーク100との間の位置ずれが存在する場合、埋込ウォータマーク100Bが僅かに回転され、大きさを変更され及び/又は位置を移動されているだけであっても、積のアレー174には、+1と−1が略同数含まれることになる。したがって、積のアレー174の和の値は、比較的小さくなる。
【0037】
一方、本発明の原理に基づいてウォータマーク100を埋め込み、埋込ウォータマーク100を検出すれば、回転、大きさの変更及び/又は移動があった場合でも埋込ウォータマーク100を有効に検出することができる。
【0038】
本発明の少なくとも1つの実施の形態においては、埋め込まれたウォータマークは、データの2次元フレームにおいて検出される。コンテンツデータは、静止画像、動画像、オーディオデータ等如何なる種類の情報であってもよい。データのフレームは、例えば、コンピュータにより読取可能な媒体からデータを読み出す、通信チャンネルを介してデータを受信する等、如何なる手法で入手してもよい。データが未だ2次元アレーに組織化されない場合、如何なる周知の技術を用いてデータから2次元アレーを生成してもよい。なお、本発明の範囲から逸脱することなく、ウォータマーク全体を単一のデータフレームに埋め込んでもよく、又はウォータマーク部分を複数のデータフレームに分散させてもよい。
【0039】
図6は、本発明の一実施の形態に基づいて実行される好ましい動作及び/又は機能を示す図である。これらの機能には、フィルタリング200、絶対値算出202、フーリエ変換204、ピーク検出/選択206、歪み(例えば、回転大きさの変更、移動)検出208、ウォータマーク検出210が含まれる。これらの機能は、例えば、適当な回路を備える装置として実現してもよく、及び/又は1つ以上のソフトウェアプログラムの制御の下で動作する適切な処理装置として実現してもよい。実際、本発明の一実施の形態は、図6に示すような動作及び/又はここに説明する他の動作を適切なプロセッサに実行させるソフトウェアプログラムを含む記録媒体として実現してもよい。なお、説明を明瞭にするために、図6では、機能ブロックを区分して示しているが、本発明の範囲から逸脱することなく、これらのブロックを統合し、又は他の様々な手法によって区分してもよい。
【0040】
フィルタリング200の機能では、好ましくは、データ(すなわち、コンテンツデータと埋め込まれたウォータマーク)のフレームをフィルタリングし、フィルタリングされたデータのフレームを生成し、フィルタリングされたデータのフレームのある2次元周波数特性を得る。例えば、データのフレームのフィルタリングは、コンテンツデータのフレームに対応する幾つかの又は全ての周波数成分に対して、埋込ウォータマークに対応する少なくとも幾つかの高調波成分が強調されるように行うことが望ましい。
【0041】
以下、図6におけるフィルタリング200の処理(以下、単にフィルタリング処理200という。)について、図7〜図10を用いてより詳細に説明する。図7は、本発明に用いられる望ましいフィルタリング処理200の一実施の形態を図式的に示している。図8は、フィルタリング処理200に基づいて実行されるある動作/機能を示すフローチャートである。図9及び図10は、この処理によって得られる結果を示している。
【0042】
図7及び図8に示すように、基準データブロック250は、埋込ウォータマーク100を含むデータのフレームの各データ値上(好ましくは中心)に配置される(ステップ260)。説明を明瞭にするために、図7では、コンテンツデータを示さず、埋込ウォータマーク100のみを示している。更に、本発明は、何らかの原因によって歪んだ埋込ウォータマーク100Aの検出を可能とするものであるが、ここでは、埋込ウォータマーク100は、歪んでいない状態、(すなわち、回転、大きさの変更、移動等がない状態)で示されている。
【0043】
基準データブロック250は、好ましくは、基準ウォータマーク100内に見出される(埋込ウォータマーク100内で期待される)パターンの1つに基づいて構成されたデータ値(画素値、オーディオ値等)のアレーを含んでいる。例えば、基準データブロック250は、図2A及び図2Bに示す第1及び第2のパターンの何れかに基づいて構成されたデータ値を含んでいてもよい。ここでは、基準データブロック250は、第1のパターン(図2A)に基づいて構成されたデータ値を含んでいる。
【0044】
ステップ262においては、基準データブロック250のデータ値と、データのフレームのデータ値のそれぞれの組(例えば、基準データブロック250で覆われているデータ値の組)との積和を算出する。換言すれば、埋込ウォータマーク100を含んでいるデータのフレームの部分の上の基準データブロック250の各整列位置について、1対1の積和計算を行う。ステップ262における積和の計算結果の一例として、図9では、値が大きい位置を非常に明るく、(例えば、白)又は非常に暗く(例えば、黒い)で示している。
【0045】
基準データブロック250の中心252を例えば、第1のパターンを有するデータのフレームのデータブロック102Aの中心254に位置するデータ値上に配置すると、基準データブロック250の値と、データのフレームの値のそれぞれとの間について算出された積和(ステップ262)は、比較的大きい正の値となる。図9の位置254では、この結果は、明るい白色として示されている。
【0046】
基準データブロック250の中心252を第2のパターンのデータブロック102Bの中心256に合わせると、積和演算の結果は、比較的大きい負の値となる。図9の位置256では、この結果は、非常に暗い色、すなわち黒色で示されている。なお、図9に図式的に示すアレーは、数値的な結果を黒、灰色、白のコントラストとして表現している。
【0047】
そして、図8のステップ262において算出された各積和について、絶対値を算出する(ステップ264)(なお、ステップ264は、図6の絶対値算出202の機能に対応している)。ステップ262及びステップ264における計算は、次のデータ値に移行し(ステップ266)、データのフレームの終わりに到達したか否かを判定する(ステップ268)ことによって、データのフレームの各データ値に対して実行される。図10に示すように、積和演算の絶対値を算出することにより、例えば、明るい白色の点258として表されるピークの幾何学的パターンである数値のアレーが生成される。各ピークは、データブロック102が第1のパターンであるか第2のパターンであるかにかかわらず、埋込ウォータマーク100のデータブロック102の中心を表す。
【0048】
再び図6を参照すると、フーリエ変換204は、好ましくは、フィルタリングされたデータのフレームに対して2次元フーリエ変換を行い、フィルタリングされたデータのフレームの2次元周波数スペクトルを生成する処理を含んでいる。この2次元フーリエ変換には、周知の高速フーリエ変換(Fast Fourier transform:以下、FFTという。)アルゴリズムを含む如何なる手法を用いてもよい。
【0049】
図11は、例えば、図10に示すフィルタリングされたデータのフレーム等のフィルタリングされたデータのフレームの2次元周波数スペクトル320の具体例を示している。2次元周波数スペクトル320は、白色の円として示される複数のピーク322を含み、これらは、灰色のドットとして示されるより多くの、より低い値の中に示されている。ピーク322は、埋込ウォータマーク100に対応する高調波成分の幾つかの振幅と位相成分を表している。なお、実際の2次元周波数スペクトルは、図11に示すものより多くのピーク322を含んでいるが、ここでは、説明を明瞭にするために、多くのピークを省略して示している。埋込ウォータマーク100自体の場合と同様、フィルタリングされたデータのフレームのフーリエ変換(この場合、FFT)は、埋込ウォータマーク100に由来するある幾何学的特性を含んでいる。具体的には、2次元周波数スペクトル320の少なくとも幾つかの高調波成分322は、原点324の周りの矩形パターン内に位置する。原点324は、例えば、直流成分(DC)等の1つ以上の低い周波数成分を表す。x軸とy軸が原点324で交差するデカルト座標系に2次元周波数スペクトル320が配置されていると仮定すると、各高調波成分322は、x,y座標の対として表現することができる。
【0050】
図6に示すピーク検出及び/又は選択206の機能は、フィルタ207の機能に関連付けられていることが望ましい。フィルタ207の機能は、好ましくは、フィルタリングされたデータのフレームの2次元周波数スペクトル320における好ましくないピーク322を抑圧するために、1つ以上のフィルタリングアルゴリズムを実行する。例えば、図11に示すように、原点324の近傍に多くのピーク322Aが出現することがある。したがって、ピーク322Aは、埋込ウォータマーク100が回転され、大きさを変更され、又は移動されているか否かに関する情報を殆ど含んでおらず、無用であり、除外又は無視してもよい。
【0051】
ピーク検出/選択206の機能(図6)では、2次元周波数スペクトル320に含まれている複数のピーク322の中から、埋込ウォータマーク100に対応している少なくとも幾つかの下側の高調波成分322(図11)を選択することが好ましい。例えば、本発明の幾つかの実施の形態においては、第1高調波成分及び/又は第2高調波成分を選択するとよい。本発明に基づく使用のためには、埋込ウォータマーク100の第2高調波に対応している高調波成分322を選択することがより好ましい。例えば、図11に示す高調波成分322(原点324の近傍に集まる成分を除く)は、埋込ウォータマーク100に対応する第2高調波成分を表している。後述するように、埋込ウォータマーク100が歪んでいるか否か及びどのように歪んでいるかを判定するためには、図11に示す選択された高調波成分322の一部のみを解析すればよい。
【0052】
図6及び図11に示す具体例において、歪み検出機能208では、好ましくは、埋込ウォータマーク100に関連する回転値、大きさの変更値(以下、リサイズ値という。)、移動値のうちの少なくとも1つを判定する。これらの値は、埋込ウォータマーク100に対応する選択された高調波成分322の幾何学的位置の1つ以上の偏りを計算することによって、又は選択された高調波成分322の位相の1つ以上の偏りを計算することによって求められる。
【0053】
埋込ウォータマーク100Aに対応する選択された高調波成分322の幾何学的な位置又は位相の偏りは、2次元フーリエ変換のある一般的な性質を利用することによって判定することができる。これらの性質には、ある回転値(すなわち、角度)によってデータのフレームが回転されると、データのフレームのフーリエ変換の結果における周波数成分が対応して回転するという性質が含まれる。ここで、埋込ウォータマーク100に対応する高調波成分の対応する回転は、明らかである。2次元フーリエ変換の他の性質として、何らかの大きさの変更、例えば、x方向における(すなわち、x軸に沿った)データのフレームの拡大又は縮小により、フーリエ変換の結果における周波数成分の位置に関して、この変更に反比例する大きさの変更が生じるという性質がある。ここで、埋込ウォータマーク100に対応する高調波成分322は、大きさの変更の結果、原点324に対する位置を変更される。例えば、x方向の(すなわち、x軸に沿った)データのフレームの如何なる大きさの変更も、これに反比例するような、埋込ウォータマーク100の高調波成分322の原点324に対するx方向における位置の変化をもたらす。同様に、y方向の(すなわち、y軸に沿った)データのフレームの如何なる大きさの変更も、これに反比例するような、埋込ウォータマーク100の高調波成分322の原点324に対するy方向における位置の変化をもたらす。更に、2次元フーリエ変換の一般的な性質として、データのフレームが移動する(すなわち、空間的にシフトする)と、フーリエ変換の結果の周波数成分の位相成分が対応して変化し、振幅は変化しないという性質がある。これにより、埋込ウォータマーク100の高調波成分322は、このような移動に起因する不規則な位相を示すこととなる。以下、これらの性質について、より詳細に説明する。
【0054】
図12は、図6に示す歪み検出機能208のステップ及び/又は機能に基づく処理のフローチャートである。ステップ300において、選択された高調波成分322の少なくとも幾つかの幾何学的位置の偏りを判定することにより、埋込ウォータマーク100に対応している回転値を算出する。例えば、図11を参照すると、回転値は、第1の軸326と基準軸328との間の角度を計算することによって求めることができる。第1の軸326は、原点324等の基準点と、高調波成分322B等の選択された高調波成分322の少なくとも1つとを結ぶ線である。基準軸328は、基準ウォータマーク100によって定義され、好ましくは、x軸及びy軸の1つに沿って延びる。
【0055】
好ましくは、埋込ウォータマーク100に対応する回転値は、実質的に、以下に比例する数値を算出することによって求められる。
arctan((Fy1*W)/(Fxl*H))
ここで、Fyl及びFxlは、それぞれ、例えば、図11に示す高調波成分322B等、埋込ウォータマーク100に対応する選択された高調波成分322の1つのy軸座標及びx軸座標を表している。最も好ましくは、埋込ウォータマーク100に対応する回転値は、実質的に、
(180/Π)*arctan((Fy1*W)/(Fx1*H))
に等しい数値を算出することによって求められる。
【0056】
例えば、高調波成分322Bのy軸座標Fylがゼロであり、x軸座標がFxlが何らかの正数であるとする。この場合、arctan関数の偏角は、ゼロであり、したがって、求められた回転値(角度)は、ゼロである。ピーク322Bのx,y座標は、埋込ウォータマーク100(図7)が回転されていないことを示している。この実施の形態では、求められた回転角は、ゼロであるが、この結果は、90°を法とするデータのフレーム(及び埋込ウォータマーク100A)の回転を表している。したがって、回転に起因する埋込ウォータマーク100の実際の歪みは、nを0、1、2・・・として、0+n*90°である可能性がある。この問題の解決については、埋込ウォータマーク100に隠されたメッセージを検出する処理に関連して、後に詳細に説明する。なお、データのフレームを90°回転させると、そのコンテンツデータは、観賞に適するものではなくなるため、海賊版において、データのフレームが90°回転されている可能性は低い。
【0057】
図13は、埋込ウォータマーク100が少なくとも回転されている場合におけるフィルタリングされたデータのフレームの2次元フーリエ変換320Aの具体例を示している。ここでarctan関数の偏角は、約0.2であり、求められた回転値(角度)は、約12°である。この場合も、回転値は、データのフレーム及び埋込ウォータマーク100の90°を法とする回転を表ししている。したがって、回転に起因する埋込ウォータマーク100Aの実際の歪みは、nを0、1、2・・・として、12+n*90°である可能性がある。
【0058】
なお、埋め込まれたウォータマークの回転値を計算する動作及び/又は機能(図12のステップ300)は、2つ以上の選択された高調波成分322について回転値を算出し、複数の算出結果から1つの回転値を選択する処理を含んでいてもよい。これに代えて、何らかの手法で算出された回転値の幾つか又は全ては、例えば、平均化して、最終的な回転値を求める等の手法によって統合してもよい。
【0059】
図12に示すステップ302において、少なくとも幾つかの選択された高調波成分322の幾何学的位置の他の偏りを判定することによって、埋込ウォータマーク100に対応するリサイズ値を算出する。この処理は、好ましくは、埋込ウォータマーク100の少なくとも1つの選択された高調波成分322の期間Pと、基準ウォータマーク100によって定義される基準期間Prとを比較する処理を含む。
【0060】
最も好ましくは、期間Pの判定は、x軸期間Pxの判定(ステップ304)と、y軸期間の判定(ステップ306)Pyとに分解される。x軸期間Pxは、好ましくは、選択された高調波成分322の1つの幾何学的位置から算出される。y軸期間Pyは、好ましくは、選択された高調波成分322の他の1つの幾何学的位置から算出される。x軸期間Pxを算出するために用いられる選択された高調波成分は、好ましくは、実質的にx軸に沿って存在する成分又は実質的にx軸に沿って存在する筈であるが、回転に起因する歪みを含んでいる成分の何れかである。
【0061】
例えば、図13に示す具体例において、埋込ウォータマーク100Aが回転によって歪んでいる場合、好ましくは、x軸期間Pxを決定するために、実質的にx軸に沿って存在する筈であるが、回転による歪みを含んでいる高調波成分322Dを選択する。y軸期間Pyを算出するために用いられる選択された高調波成分は、好ましくは、実質的にy軸に沿って存在する成分又は実質的にy軸に沿って存在する筈であるが、回転に起因する歪みを含んでいる成分の何れかである。図13に示すように、y軸期間Pyを決定するために、実質的にy軸に沿って存在する筈であるが、回転による歪みを含んでいる高調波成分322Eを選択する。
【0062】
リサイズ値は、x軸期間Pxとy軸期間Pyから、それぞれx軸リサイズ値とy軸リサイズ値とを求めることによって算出される。これにより、埋込ウォータマーク100Aの拡大、減少及び/又は縦横比の変更(すなわちx軸寸法又はy軸寸法の一方又は他方の拡大又は縮小)に関する情報を好適に得ることができる。
【0063】
x軸リサイズ値は、x軸期間Pxと、基準ウォータマーク100によって定義されるx軸基準期間Prxとの比率を求めることによって算出される。x軸期間Pxは、好ましくは、実質的に以下の値を算出することによって求められる。
(H*W)/((Fx1*H)2+(Fyl*W)2)1/2
ここで、FxlとFylは、それぞれ、埋込ウォータマーク100に対応する選択された高調波成分(例えば、高調波成分322D)のx軸座標とy軸座標であり、Hは、2次元フーリエ変換320Aのy軸の総寸法であり、Wは、2次元フーリエ変換320Aのx軸の総寸法である。基準ウォータマーク100のx軸基準期間Prxは、好ましくは、基準ウォータマーク100のデータブロックのある幾何学的特性を調べることによって判定される。図2Aに示すように、基準ウォータマーク100は、複数の2次元データブロック102を含んでおり、各データブロック102は、列と行に構成された複数のデータ値を含んでいる。各列のデータ値の数は、基準ウォータマーク100のx軸基準期間Prxに等しい。
【0064】
y軸リサイズ値は、y軸期間Pyと、基準ウォータマーク100によって定義されるy軸基準期間Pryとの比率を求めることによって算出される。y軸期間Pyは、好ましくは、実質的に以下の値を算出することによって求められる。
(H*W)/((Fx2*H)2+(Fy2*W)2)1/2
ここで、Fx2とFy2は、それぞれ、埋込ウォータマーク100に対応する選択された高調波成分(例えば、高調波成分322E)のx軸座標とy軸座標である。図2Aに示すように、各データブロック102の行の数は、基準ウォータマーク100のy軸基準期間Pryに等しい。
【0065】
図12に示す埋込ウォータマーク100の移動値を算出する動作及び/又は機能(ステップ308)では、好ましくは、埋込ウォータマーク100に対応する選択された高調波成分322の少なくとも幾つかの位相における1つ以上の偏りを求める。詳しくは、埋込ウォータマーク100の移動値の判定は、少なくとも2つの選択された高調波成分322から位相に関する情報を得る処理を含む。
【0066】
好ましくは、埋込ウォータマーク100の移動値を算出する処理は、(位相の1つに基づいて)第1の方向における第1の距離を算出する処理(ステップ310)と、(他の位相に基づいて)第2の方向における第2の距離を算出する処理(ステップ312)とを含む。第1の距離は、埋込ウォータマーク100が移動された(又はシフトされた)量を表し、第1の方向は、その移動の方向を表す。第2の距離は、埋込ウォータマーク100が移動された(又はシフトされた)他の量を表し、第2の方向は、その移動の方向を表す。第1及び第2の距離は、それぞれ互いに直交する軸に沿った距離であることが望ましい。例えば、第1及び第2の方向の一方は、好ましくは、x軸又はy軸から回転値に対応する角度だけ傾いた軸に沿う方向とする。第1及び第2の方向の他方は、この軸に直交する軸に沿う方向とする。
【0067】
第1の距離は、好ましくは、選択された第1高調波成分(例えば、図13の高調波成分322D)について第1の位相θ1に比例する数値を計算することによって求められる。第2の距離は、好ましくは、選択された第2高調波成分(例えば、図13の高調波成分322E)について第2の位相θ2に比例する数値を計算することによって求められる。
【0068】
好ましくは、第1の距離は、実質的に以下の値を求めることによって算出される。
(θ1*H*W)/(2Π*((Fx1*H)2+(Fyl*W)2)1/2)
ここで、FxlとFylは、それぞれ、選択された第1高調波成分(例えば、高調波成分322D)のx軸座標とy軸座標である。
【0069】
好ましくは、第2の距離は、実質的に以下の値を求めることによって算出される。
(θ2*H*W)/(2Π*((Fx2*H)2+(Fy2*W)2)1/2)
ここで、Fx2とFy2は、それぞれ、選択された第2高調波成分(例えば、高調波成分322E)のx軸座標とy軸座標である。
【0070】
上述のように、第1の方向は、好ましくは、図12のステップ300によって算出された回転値によって定義される軸に沿う。詳しくは、第1の方向は、好ましくは、実質的に以下に比例する数値を算出することによって求められる。
arctan((Fy1*W)/(Fxl*H))
同様に、第2の方向は、好ましくは、図12のステップ300によって算出された回転値によって定義される軸に沿う。詳しくは、第2の方向は、好ましくは、実質的に以下に比例する数値を算出することによって求められる。
arctan((Fy2*W)/(Fx2*H))
図6を参照して説明すると、一旦、埋込ウォータマーク100の歪みが判定されると(ステップ208)、埋込ウォータマーク100及びその隠されたメッセージが検出される(ステップ210)。図14は、本発明の少なくとも1つの実施の形態に基づいて、図6のステップ210において、埋込ウォータマーク100及びその隠されたメッセージ検出する処理のより詳細な動作及び/又は機能を示すフローチャートである。ステップ400において、好ましくは、埋込ウォータマーク100について、先に算出した回転値、リサイズ値、移動値のうちの少なくとも1つの値に基づいて、埋込ウォータマーク100の少なくとも幾つかのデータブロック102に対応するデータのフレーム内の位置を判定する。最も好ましくは、この位置は、埋込ウォータマーク100の各データブロック102の中心に対応している。
【0071】
ステップ402において、フィルタリングされたメッセージ値のアレーが判定される。ここで、フィルタリングされたメッセージ値は、位置が判定された埋込ウォータマーク100のデータブロック102の1つに対応している。好ましくは、フィルタリングされた各メッセージ値は、実質的に、基準データブロック250のデータ値と、埋込ウォータマーク100の任意の1つのデータブロック102のデータ値のそれぞれの組との間の相関値(例えば、積和)に等しい。この任意のデータブロック102のデータ値のそれぞれの組は、好ましくは、中心252(図7)が埋込ウォータマーク100のデータブロック102のそれぞれの位置(例えば、中心)に重なっている場合、基準データブロック250で覆われたデータ値である。
【0072】
なお、フィルタリングされたメッセージ値は、図6〜図10を用いてここに説明したフィルタリングされたデータのフレーム内に含まれている。実際、フィルタリングされたメッセージ値は、理想的には、フィルタリングされたデータのフレーム(図9)に含まれているピーク254、256等のそれぞれに対応している。したがって、フィルタリングされたメッセージ値の再計算を行う必要はなく、これらの値は、フィルタリングされたデータのフレームから導出できる。これに代えてフィルタリングされたメッセージ値は、他の手法で算出してもよく、すなわち、基準データブロック250を回転値に比例する量だけ回転させた後に、基準データブロック250と、埋込ウォータマーク100のデータブロックのデータ値のそれぞれの組との間の相関値、例えば積和を求めてもよい。更に他の実施の形態(又は、追加的な実施の形態)として、フィルタリングされたメッセージ値を算出する処理は、リサイズ値(例えば、x軸値とy軸値)に比例する1つ以上の量によって基準データブロック250の大きさを変更した後に積和を求める処理を含んでいてもよい。理論的には、これらの代替的な手法を用いることによって、より正確なメッセージ値のアレーを求めることができる。
【0073】
ステップ404において、好ましくは、それぞれが基準ウォータマーク100の少なくとも幾つかのデータブロック102の1つに対応しているフィルタリングされた基準メッセージ値のアレーを算出する。具体的には、フィルタリングされた各基準メッセージ値は、実質的に、基準データブロック250と、基準ウォータマーク100のデータブロック102のデータ値との積和に等しい。好ましくはフィルタリングされた基準メッセージ値のアレーは、予め定められたものであり、これは、適切なストレージデバイスからアレーを読み出すことによって容易に得ることができる。
【0074】
ステップ406においては、好ましくは、埋込ウォータマーク100が回転によって歪んでいるか否かを判定する。これは、回転値を解析することによって容易に判定できる。埋込ウォータマーク100が回転されていないと判定された場合、処理は、ステップ408に移行する。このステップ408においては、好ましくは、埋込ウォータマーク100が移動によって歪んでいるか否かを判定する。埋込ウォータマーク100が移動によって歪んでいないと判定された場合、処理は、ステップ410に移行し、ここで、フィルタリングされたメッセージ値のアレーとフィルタリングされた基準メッセージ値のアレーとの間の相関値を算出する。特に相関演算は、好ましくは、フィルタリングされたメッセージ値のアレーと、フィルタリングされた基準メッセージ値のアレーとの積和を算出する処理を含む。この積和が閾値以上であるとき、埋込ウォータマーク100は基準ウォータマーク100のメッセージに対応するメッセージを含むと判定される(ステップ412及びステップ414)。これに応じて、適切な処理を行う。
【0075】
なお、本発明に基づいて、様々な異なる基準ウォータマークを用いることができる。埋込ウォータマーク100は、以下のような本発明の他の実施の形態に基づいて、基準ウォータマークの1つに照合することができる。
(1)ステップ404において、フィルタリングされた基準メッセージ値のアレーの組を判定する。
(2)ステップ410において、フィルタリングされたメッセージ値のアレーと、フィルタリングされた基準メッセージ値のアレーのそれぞれとについて、個々の積和を算出する。
(3)ステップ412、413、414において、フィルタリングされたメッセージ値のアレーと、1つの基準ウォータマークに関連付けられたフィルタリングされた基準メッセージ値のアレーとの積和の1つが閾値以上であるとき、埋込ウォータマーク100は基準ウォータマークの1つのメッセージに対応するメッセージを含んでいると判定される。
【0076】
また、ステップ408において、埋込ウォータマーク100が移動によって歪んでいると判定された場合、処理は、ステップ420(図15)に分岐し、このステップ420において、ステップ410の場合と同様、例えば、積和を算出することによって、フィルタリングされたメッセージ値のアレーとフィルタリングされた基準メッセージ値のアレーの間の相関値を算出する。好ましくは相関演算の結果は、保存される。所定数の相関値がまだ算出されていない場合(ステップ422)、処理は、好ましくは、ステップ424に移行し、ここで、フィルタリングされたメッセージ値のアレーとフィルタリングされた基準メッセージ値のアレーを、整数個のメッセージ位置に対応する量だけ、水平に及び/又は垂直に互いに相対的に移動させる。そして、フィルタリングされたメッセージ値のアレーとフィルタリングされた基準メッセージ値のアレーとの間の相関値を再び算出し、保存する(ステップ420)。これらのステップは、好ましくは、所定数の相関値、例えば、10個の相関値が算出されるまで繰り返される(ステップ422)。続いて、処理フローは、相関結果の1つが閾値以上であるか否かを判定することによって、埋込ウォータマーク100Aが基準ウォータマーク100のメッセージに対応するメッセージを含むか否かを判定する処理に進む(ステップ426、427、428)。
【0077】
上述した移動及び相関のステップは、算出された移動値(例えば、第1の方向の第1の距離第2の方向の第2の距離)が実際の移動ではなく移動値の法(モジューロ値)を表すものであるため、繰り返し実行される。実際の埋め込まれた基準メッセージアレーを参照しなければ、ウォータマークの埋込ブロックのリサイズされた寸法を法とする移動値しか算出できない。これらの法と、リサイズ値及び回転値とにより、歪んだ埋込ウォータマークにおけるブロックの位置の「グリッド」を算出することができる。埋め込まれたメッセージアレーと基準メッセージアレーとの間で、異なるオフセットを有する幾つかの相関値を算出することによって、移動値について、及び埋込ウォータマーク100が基準ウォータマーク100に一致しているか否かについて、より信頼できる判定を行うことができる。
【0078】
また、ステップ406(図14)において、埋込ウォータマーク100Aが回転によって歪んでいると判定された場合、処理は、ステップ452(図16)に分岐する。ステップ452においては、好ましくは、フィルタリングされたメッセージ値のアレーとフィルタリングされた基準メッセージ値のアレーの間の相関値(例えば、積和)を求め、保存する。
【0079】
そして、ステップ454において、好ましくは、フィルタリングされたメッセージ値のアレーと、フィルタリングされた基準メッセージ値のアレーとを再び相対的に90°回転させる。ステップ456においては、アレーが相対的に360°回転されているか否かを判定する。アレーが相対的に360°回転されていない場合、処理は、ステップ452に戻り、フィルタリングされたメッセージ値のアレーとフィルタリングされた基準メッセージ値のアレーのとの間の他の相関を算出し、結果を保存する。この処理は、好ましくは、ステップ456において360°の回転に達するまで繰り返される。そして、処理は、ステップ458に進み、ここで、埋込ウォータマーク100が基準ウォータマーク100に対応するか否かを判定する。対応関係が存在している場合、処理は、ステップ460に進み、対応関係が存在していない場合、処理は、ステップ459に進む(ウォータマークは、検出されない)。ここでは、相関結果の1つ(例えば、積和の1つ)が閾値以上である場合に、対応関係が存在すると判定する。なお、複数の基準ウォータマークが用いられている場合(及びフィルタリングされたメッセージアレーについて、複数の回転値/相関値が算出される場合)、閾値以上の最も高い相関値を有するフィルタリングされたメッセージ値のアレーを有するフィルタリングされた基準ウォータマークアレーが対応する基準ウォータマークアレーであると判定される。これにより、埋込ウォータマーク100は選択された基準ウォータマークのメッセージ(例えば、基準ウォータマーク100)に対応するメッセージを含んでいると判定される(ステップ460)。これに応じて、適切な処理を行う。
【0080】
回転値は、埋込ウォータマーク100の実際の回転ではなく、回転の法を表しているため、好ましくは、90°の回転を繰り返し、相関値を求める。これは、2次元フーリエ変換320(図11)において、2つのピーク322があった場合、埋め込まれたウォータマークにおいて、どちらのピークが「水平」方向を表し、どちらのピークが「垂直」方向を表しているか未知であるためである。したがって、フィルタリングされたメッセージ値のアレーをフィルタリングされた基準メッセージ値のアレーに対して90°回転させることによって、埋込ウォータマーク100と基準ウォータマーク100との間の対応をより高い信頼度で判定することができる。
【0081】
なお、埋込ウォータマーク100が回転され、移動されている場合に対応するよう、図16に示す処理フローを容易に変更することができる。実際、図15のステップ420、422、424を図16のステップ452に挿入することにより、この機能を実現することができる。
【0082】
図17は、本発明の1つ以上の他の実施の形態に基づいて実行される処理のフローチャートである。詳しくは、このフローチャートは、ウォータマーク検出210(図6)の動作及び/又は機能を実行するための他の手法を示している。詳しくは、ステップ400、402、404(図14)を実行した後、処理は、ステップ480に進み、好ましくは、フィルタリングされた基準メッセージ値のアレーの2次元フーリエ変換値を算出する。基準ウォータマーク100及びフィルタリングされた基準メッセージ値のアレーは、予め定められたものであるため、この2次元フーリエ変換値は、所定のものであることが望ましい。2次元フーリエ変換としては、例えば、FFT等、周知の如何なる手法を用いてもよい。
【0083】
次に、フィルタリングされたメッセージ値のアレーの2次元フーリエ変換(例えば、FFT)を行う(ステップ482)。次に、ステップ484において、好ましくは、ポイント毎に、フィルタリングされた基準メッセージ値のアレーの2次元フーリエ変換値と、フィルタリングされたメッセージ値のアレーの2次元フーリエ変換値との積を求めることにより、変更されたアレーを算出する。次に、変更されたアレーを逆フーリエ変換する(ステップ486)。そして、ステップ488において、変更されたアレーの逆フーリエ変換の結果の最大値を判定する。
【0084】
ステップ490においては、フィルタリングされた基準メッセージ値のアレーの2次元フーリエ変換値と、フィルタリングされたメッセージ値のアレーの2次元フーリエ変換値とを90°の整数倍、例えば1倍によって、相対的に回転させる。ステップ492において、360°の回転に達したか否かを判定する。回転が360°に達していない場合、処理は、ステップ484に戻り、ポイント毎に、フィルタリングされた基準メッセージ値のアレーの2次元フーリエ変換値と、(回転された)フィルタリングされたメッセージ値のアレーの2次元フーリエ変換値との積を求めることによって次の変更されたアレーを算出する。
【0085】
ステップ484、486、488、490は、フィルタリングされた基準メッセージ値のアレーの2次元フーリエ変換値と、フィルタリングされたメッセージ値のアレーの2次元フーリエ変換値とが相対的に360°回転されるまで(ステップ492)繰り返される。ここで、処理は、ステップ494に進み、埋込ウォータマーク100が基準ウォータマーク100に対応するか否かを判定する。具体的には、変更されたアレーの逆フーリエ変換値の最大値の1つが閾値を超えている場合、埋込ウォータマーク100が基準ウォータマーク100に対応していると判定する。なお、複数の基準ウォータマークが用いられている場合(これに基づいて、複数の逆フーリエ変換値が算出された場合)、フィルタリングされたメッセージ値が最も高い逆フーリエ変換結果をもたらすフィルタリングされた基準メッセージアレーが埋込ウォータマーク100に対応すると判定される(なお、この値が十分大きく、閾値以上であることを前提とする)。対応関係が見出されなかった場合、処理は、ステップ495に進む(ウォータマークは検出されない)。対応関係が見出された場合、ステップ496において、埋込ウォータマーク100Aのメッセージと基準ウォータマーク100のメッセージとが照合され、適切な処理を行う。
【0086】
本発明の一実施の形態に基づき、図6、図8、図12及び図14〜図17に示す(及びこれらを参照して説明した)処理は、例えば、1つ以上の特定用途向け集積回路(application specific integrated circuit:ASIC)及び/又はプログラミング可能なデジタルシグナルプロセッサ、マイクロプロセッサ、1つ以上のソフトウェアプログラムの制御の下で動作するコンピュータ等の1つ以上の処理装置を用いることによって、市販のデジタル及び/又はアナログ部品を用いてハードウェアで実現することができる。これに代えて、本発明の一実施の形態を実現するために、上述した機能を例えばコンピュータ等の適切な処理装置が実行可能なソフトウェアプログラムとして実現してもよい。このようなソフトウェアプログラムは、フレキシブルディスク、CD−ROM、メモリチップをはじめとする適切な記録媒体に保存してもよい。
【0087】
以上、本発明を特定の実施の形態を参照して説明したが、これらの実施の形態は、本発明の原理及び用途を例示的に示しているにすぎない。したがって、ここに説明した実施の形態は、様々に変更することができ、このような他の構成も、添付の請求の範囲において定義される本発明の思想及び範囲から逸脱するものではない。
【図面の簡単な説明】
【0088】
【図1】 本発明における使用に適したブロックに基づくウォータマークの構造を概念的に示す図である。
【図2A】 図1のウォータマークの構造に関する詳細を示す図である。
【図2B】 図1のウォータマークの構造に関する詳細を示す図である。
【図3】 図1に示すウォータマークをデータのフレームに埋め込む処理を概念的に示す図である。
【図4】 埋込ウォータマークを基準ウォータマークとどのように相関させるかを図式的に説明する図である。
【図5】 埋込ウォータマーク(例えば、回転されたデータのフレームに含まれる)の位置ずれが、基準ウォータマークとの相関にどのように影響するかを図式的に示す図である。
【図6】 本発明の一実施の形態に基づいて実行される好ましい動作及び/又は機能を示すブロック図である。
【図7】 本発明の一実施の形態に基づくフィルタリング処理を図式的に説明する図である。
【図8】 本発明に基づいて実行され、図6に示す動作及び/又は機能に関連する動作/機能を示すフローチャートである。
【図9】 図8に示す動作及び/又は機能を実行することによって得られる結果を示す図である。
【図10】 図8に示す動作及び/又は機能を実行することによって得られる結果を示す図である。
【図11】 埋め込まれたウォータマークが回転されていない場合における、本発明の一実施の形態に基づき、2次元フーリエ変換されたフィルタリングされたデータのフレームを示す図である。
【図12】 本発明に基づいて実行される、図6に示す歪み検出動作及び/又は機能に基づく処理のフローチャートである。
【図13】 埋め込まれたウォータマークが少なくとも回転されている場合における、本発明の一実施の形態に基づき、2次元フーリエ変換されたフィルタリングされたデータのフレームを示す図である。
【図14】 本発明の一実施の形態に基づき、少なくとも回転され、大きさが変更され、又は移動されたデータのフレームに埋め込まれたウォータマークを検出するための動作及び/又は機能を示すフローチャートである。
【図15】 図14に示す動作及び/又は機能に追加して実行される動作及び/又は機能のフローチャートである。
【図16】 図14に示す動作及び/又は機能に追加して実行される更なる動作及び/又は機能のフローチャートである。
【図17】 本発明の他の実施の形態に基づき、少なくとも回転され、大きさが変更され、又は移動されたデータのフレームに埋め込まれたウォータマークを検出するための動作及び/又は機能を示すフローチャートである。
Claims (140)
- コンテンツデータのフレームに埋め込まれたウォータマークを表す複数のデータ値を含む2次元のデータのフレームにおいて該ウォータマークを検出するウォータマーク検出方法において、
上記データのフレームから、上記コンテンツデータの少なくとも幾つかの周波数成分に比して強調された上記ウォータマークに対応する少なくとも幾つかの高調波成分を有するフィルタリングされたデータのフレームを算出するステップと、
上記フィルタリングされたデータのフレームの2次元フーリエ変換を行い、該フィルタリングされたデータのフレームの2次元周波数スペクトルを算出するステップと、
上記2次元周波数スペクトルの周波数成分の中から、上記ウォータマークに関連する1組の周波数成分を選択するステップと、
上記選択された1組の周波数成分の1つ以上を用いて、基準ウォータマークに対して上記ウォータマークに関する回転値、リサイズ値、移動値のうちの少なくとも1つを算出するステップとを有するウォータマーク検出方法。 - 上記データのフレームは、画素データ及びオーディオデータの何れかであることを特徴とする請求項1記載のウォータマーク検出方法。
- 上記ウォータマークは、実質的に、上記基準ウォータマークに一致するが、回転値、リサイズ値及び移動値のうちの少なくとも1つを含み、
上記ウォータマーク及び基準ウォータマークは、それぞれ、メッセージを表す複数のデータブロック含み、
上記各データブロックは、上記メッセージによって定義される第1及び第2のパターンの少なくとも1つに基づいて構成されたデータ値のアレーを含んでいることを特徴とする請求項1記載のウォータマーク検出方法。 - 上記第1及び第2のパターンは、デカルト座標系におけるデータ値の4つの象限によって定義され、上記4つの象限において、第1及び第3の象限が等しいデータ値を有し、第2及び第4の象限が等しいデータ値を有することを特徴とする請求項3記載のウォータマーク検出方法。
- 上記第1及び第2のパターンにおける上記第1及び第3の象限のデータ値と、上記第2及び第4の象限のデータ値とは、極性が反対の数を有することを特徴とする請求項4記載のウォータマーク検出方法。
- 上記第1のパターンの第1及び第3の象限のデータ値と、上記第2のパターンの第1及び第3の象限のデータ値とは、極性が反対の数を有することを特徴とする請求項5記載のウォータマーク検出方法。
- 上記フィルタリングされたデータのフレームは、それぞれが該データのフレームのデータ値の1つに対応し、基準データブロックのデータ値と該データのフレームのデータ値のそれぞれの組との積和に等しい複数のフィルタリングされたデータ値を含んでいることを特徴とする請求項3記載のウォータマーク検出方法。
- 上記基準データブロックのデータ値は、上記第1及び第2のパターンの少なくとも1つに基づいて構成され、上記データのフレームのデータ値のそれぞれの組が、該基準データブロックに少なくとも部分的に登録されているウォータマークのデータブロックの所定の1つを含んでいるとき、上記フィルタリングされたデータ値の所定の1つは、ピークを示すことを特徴とする請求項7記載のウォータマーク検出方法。
- 上記所定のフィルタリングされたデータ値は、上記ウォータマークのデータブロックの所定の1つと、上記基準データブロックとの両方が上記第1又は第2のパターンに基づいて構成されたデータ値を含んでいるとき、正の極性でピークに達し、
上記所定のフィルタリングされたデータ値は、上記ウォータマークのデータブロックの所定の1つが上記第1及び第2のパターンの一方に基づいて構成されたデータ値を含み、上記基準データブロックが該第1及び第2のパターンの他方に基づいて構成されたデータ値を含んでいるとき、負の極性でピークに達することを特徴とする請求項8記載のウォータマーク検出方法。 - 上記基準データブロックは、上記データ値のアレー内に中心を有し、
上記データのフレームのデータ値のそれぞれの組は、上記基準データブロックの中心が該データのフレームのデータ値の対応する1つに揃えられたときに、該基準データブロックによって覆われるデータ値であることを特徴とする請求項9記載のウォータマーク検出方法。 - 上記フィルタリングされたデータのフレームを算出するステップは、該フィルタリングされた各データ値について、上記基準データブロックの値と、上記データのフレームのデータ値のそれぞれの組との積和の絶対値を算出するステップを有することを特徴とする請求項7記載のウォータマーク検出方法。
- 上記フィルタリングされたデータのフレームを2次元フーリエ変換するステップは、2次元高速フーリエ変換を実行し、該フィルタリングされたデータのフレームの2次元周波数スペクトルを生成するステップを有することを特徴とする請求項1記載のウォータマーク検出方法。
- 上記ウォータマークに関連する1組の周波数成分を選択するステップは、上記2次元周波数スペクトルの周波数成分の中から、該ウォータマークに対応する少なくとも幾つかの高調波成分を選択するステップを有することを特徴とする請求項1記載のウォータマーク検出方法。
- 上記少なくとも幾つかの高調波成分は、上記ウォータマークに対応する第2高調波成分を含んでいることを特徴とする請求項13記載のウォータマーク検出方法。
- 上記ウォータマークに関する回転値、リサイズ値、移動値のうちの少なくとも1つを算出するステップは、(1)上記基準ウォータマークによって定義される高調波成分の期待される幾何学的位置に対する、上記ウォータマークに対応する選択された高調波成分の少なくとも1つにおける上記2次元フーリエ変換内の幾何学的位置の1つ以上の偏り、又は(2)該基準ウォータマークによって定義される高調波成分の期待される位相に対する、該ウォータマークに対応する選択された高調波成分の少なくとも1つにおける位相の1つ以上の偏りを判定するステップを有することを特徴とする請求項13記載のウォータマーク検出方法。
- 上記2次元周波数スペクトルの周波数成分を含む領域は、(1)x軸とy軸に基づき、デカルト座標として図式的に表現され、(2)x軸に平行な幅(W)を有し、(3)y軸に平行な高さ(H)を有し、(4)実質的にx軸とy軸の交点である原点を有することを特徴とする請求項15記載のウォータマーク検出方法。
- 上記ウォータマークに対応する回転値を算出するステップは、基準点及び上記ウォータマークに対応する選択された高調波成分の少なくとも1つによって定義される第1の軸と、上記基準ウォータマークによって定義される基準軸との間の角度を判定するステップを有することを特徴とする請求項16記載のウォータマーク検出方法。
- 上記基準軸は、x軸及びy軸の何れか一方に沿う軸であることを特徴とする請求項17記載のウォータマーク検出方法。
- 上記ウォータマークに対応する選択された高調波成分の1つのy軸座標及びx軸座標をそれぞれFy1及びFxlとすると、上記ウォータマークに対応する回転値は、実質的に、arctan((Fy1*W)/(Fxl*H))に比例する数値を算出することによって求められることを特徴とする請求項18記載のウォータマーク検出方法。
- 上記ウォータマークに対応する回転値は、実質的に、(180/Π)*arctan((Fyl*W)/(Fx1*H))°に等しいことを特徴とする請求項19記載のウォータマーク検出方法。
- 上記ウォータマークに対応する回転値を算出するステップは、
(1)上記基準点及び上記ウォータマークに対応する選択された高調波成分のそれぞれの1つとによって定義される各軸と、(2)上記基準ウォータマークによって定義される1つ以上の基準軸との間2つ以上の角度を求めるステップと、
上記2つ以上の角度の中から上記回転値を決定するステップとを有することを特徴とする請求項17記載のウォータマーク検出方法。 - 上記ウォータマークに対応するリサイズ値を算出するステップは、(1)上記ウォータマークに対応する選択された高調波成分の少なくとも1つから算出される期間(P)と、(2)上記基準ウォータマークによって定義される基準期間(Pr)とを比較するステップを有することを特徴とする請求項16記載のウォータマーク検出方法。
- 上記ウォータマークに対応するリサイズ値を算出するステップは、x軸リサイズ値及びy軸リサイズ値を算出するステップを有することを特徴とする請求項22記載のウォータマーク検出方法。
- 上記x軸リサイズ値を算出するステップは、
上記ウォータマークに対応する選択された高調波成分の1つからx軸期間Pxを算出するステップと、
上記x軸期間Pxと上記基準ウォータマークのx軸基準期間Prxとの比率を算出して、上記x軸リサイズ値を求めるステップとを有することを特徴とする請求項23記載のウォータマーク検出方法。 - 上記ウォータマークに対応する選択された高調波成分の1つのx軸座標及びy軸座標をそれぞれFxl及びFylとすると、上記x軸期間Pxは、実質的に、(H*W)/((Fx1*H)2+(Fyl*W)2)1/2に等しいことを特徴とする請求項24記載のウォータマーク検出方法。
- 上記基準ウォータマークは、各列の値の数が該基準ウォータマークのx軸基準期間Prxに等しい列及び行にそれぞれ構成された複数の値を含む複数のデータブロックを含んでいることを特徴とする請求項25記載のウォータマーク検出方法。
- 上記ウォータマークに対応する選択された高調波成分の1つは、実質的にx軸に沿って存在するか、又は上記回転値がなければ、実質的にx軸に沿って存在することを特徴とする請求項26記載のウォータマーク検出方法。
- 上記y軸リサイズ値を算出するステップは、
上記ウォータマークに対応する選択された高調波成分の1つからy軸期間Pyを算出するステップと、
上記y軸期間Pyと上記基準ウォータマークのy軸基準期間Pryとの比率を算出して、上記y軸リサイズ値を求めるステップとを有することを特徴とする請求項23記載のウォータマーク検出方法。 - 上記ウォータマークに対応する選択された高調波成分の1つのx軸座標及びy軸座標をそれぞれFx2及びFy2とすると、上記y軸期間Pyは、実質的に、(H*W)/((Fx2*H)2+(Fy2*W)2)1/2に等しいことを特徴とする請求項28記載のウォータマーク検出方法。
- 上記基準ウォータマークは、各列の値の数が該基準ウォータマークのy軸基準期間Pryに等しい列及び行にそれぞれ構成された複数の値を含む複数のデータブロックを含んでいることを特徴とする請求項29記載のウォータマーク検出方法。
- 上記ウォータマークに対応する選択された高調波成分の1つは、実質的にy軸に沿って存在するか、又は上記回転値がなければ、実質的にy軸に沿って存在することを特徴とする請求項30記載のウォータマーク検出方法。
- 上記ウォータマークに対応する移動値を算出するステップは、上記ウォータマークに対応する選択された高調波成分の少なくとも2つから位相を得るステップを有することを特徴とする請求項16記載のウォータマーク検出方法。
- 上記移動値は、上記ウォータマークに対応する選択された高調波成分の1つの位相θ1に比例する第1の方向の第1の距離と、該ウォータマークに対応する選択された高調波成分の他の1つの位相θ2に比例する第2の方向の第2の距離とに基づいていることを特徴とする請求項32記載のウォータマーク検出方法。
- 上記ウォータマークに対応する選択された高調波成分の1つのx軸座標及びy軸座標をそれぞれFxl及びFylとすると、上記第1の距離は、実質的に、(θ1*H*W)/(2Π*((Fx1*H)2+(Fyl*W)2)1/2)に等しく、
上記ウォータマークに対応する選択された高調波成分の他の1つのx軸座標及びy軸座標をそれぞれFx2及びFy2とすると、上記第2の距離は、実質的に、(θ2*H*W)/(2Π*((Fx2*H)2+(Fy2*W)2)1/2)に等しいことを特徴とする請求項33記載のウォータマーク検出方法。 - 上記第1の方向は、実質的に、arctan((Fy1*W)/(Fxl*H))に比例し、上記第2の方向は、実質的に、arctan((Fy2*W)/(Fx2*H))に比例することを特徴とする請求項34記載のウォータマーク検出方法。
- 上記第1及び第2の方向は、実質的に直交することを特徴とする請求項33記載のウォータマーク検出方法。
- 上記ウォータマークの回転値、リサイズ値、移動値のうちの少なくとも1つに基づいて、上記ウォータマークの少なくとも幾つかのデータブロックに対応する上記データのフレ ーム内の複数の位置を判定するステップを更に有する請求項3記載のウォータマーク検出方法。
- 上記複数の位置は、上記ウォータマークのデータブロックのそれぞれの中心に対応していることを特徴とする請求項37記載のウォータマーク検出方法。
- 上記ウォータマークの少なくとも幾つかのデータブロックの1つに対応するとともに、上記基準データブロックのデータ値と、該ウォータマークの少なくとも幾つかのデータブロックの1つのデータ値のそれぞれの組との積和に等しいフィルタリングされたメッセージ値のアレーを求めるステップを更に有することを特徴とする請求項37記載のウォータマーク検出方法。
- 上記基準データブロックは、上記データ値のアレー内に中心を有し、
上記ウォータマークの少なくとも幾つかのデータブロックの1つのデータ値のそれぞれの組は、上記基準データブロックの中心が該ウォータマークの少なくとも幾つかのデータブロックの1つの各位置に揃えられたときに、該基準データブロックによって覆われるデータ値であることを特徴とする請求項39記載のウォータマーク検出方法。 - (1)上記積和を求める前に、上記回転値に比例する量だけ上記基準データブロックを回転させ、及び/又は(2)上記積和を求める前に、上記リサイズ値に比例する1つ以上の量だけ上記基準データブロックをリサイズするステップを更に有する請求項40記載のウォータマーク検出方法。
- 上記基準ウォータマークの少なくとも幾つかのデータブロックの1つに対応するとともに、上記基準データブロックのデータ値と、該基準ウォータマークの少なくとも幾つかのデータブロックの1つのデータ値との積和に等しいフィルタリングされた基準メッセージ値のアレーを求めるステップを更に有する請求項39記載のウォータマーク検出方法。
- 上記基準データブロックは、上記データ値のアレー内に中心を有し、
上記基準ウォータマークの少なくとも幾つかのデータブロックの1つのデータ値は、上記基準データブロックの中心が該基準ウォータマークの少なくとも幾つかのデータブロックの1つ中心に揃えられたときに、該基準データブロックで覆われるデータ値であることを特徴とする請求項42記載のウォータマーク検出方法。 - 上記フィルタリングされた基準メッセージ値のアレーは、予め定められていることを特徴とする請求項42記載のウォータマーク検出方法。
- 上記フィルタリングされたメッセージ値のアレーと、上記フィルタリングされた基準メッセージ値のアレーとの積和を算出するステップを更に有する請求項44記載のウォータマーク検出方法。
- 上記フィルタリングされたメッセージ値のアレーと上記フィルタリングされた基準メッセージ値のアレーの積和が閾値以上であるとき、上記ウォータマークは上記基準ウォータマークのメッセージに対応するメッセージを含んでいると判定するステップを更に有する請求項45記載のウォータマーク検出方法。
- 異なる基準ウォータマークに関連するフィルタリングされた基準メッセージ値のアレーの組を判定するステップと、
上記フィルタリングされたメッセージ値のアレーと上記フィルタリングされた基準メッセージ値のアレーのそれぞれとの積和を算出するステップと、
上記フィルタリングされたメッセージ値のアレーと上記基準ウォータマークの1つに関連するフィルタリングされた基準メッセージ値のアレーの積和が閾値以上であるとき、上記ウォータマークは該基準ウォータマークのメッセージに対応するメッセージを含んでいると判定するステップとを更に有する請求項46記載のウォータマーク検出方法。 - 上記フィルタリングされたメッセージ値のアレーを、上記フィルタリングされた基準メッセージ値のアレーに対して、横方向及び縦方向の少なくとも1つの方向に少なくとも1つのメッセージ値の位置によって移動させるステップと、
上記フィルタリングされたメッセージ値のアレーと、上記フィルタリングされた基準メッセージ値のアレーとの積和を算出するステップと、
上記移動及び算出のステップを1回以上繰り返すステップと、
上記積和の1つが閾値以上であるとき、上記ウォータマークは上記基準ウォータマークのメッセージに対応するメッセージを含んでいると判定するステップとを更に有する請求項45記載のウォータマーク検出方法。 - 上記フィルタリングされた基準メッセージ値のアレーに対して、上記フィルタリングされたメッセージ値のアレーを90°の整数倍回転させるステップと、
上記フィルタリングされたメッセージ値のアレーと、上記フィルタリングされた基準メッセージ値のアレーとの積和を算出するステップと、
上記回転及び算出のステップを1回以上繰り返すステップと、
上記積和の1つが閾値以上であるとき、上記ウォータマークは上記基準ウォータマークのメッセージに対応するメッセージを含んでいると判定するステップとを更に有する請求項45記載のウォータマーク検出方法。 - 上記フィルタリングされた基準メッセージ値のアレーの2次元フーリエ変換値を算出するステップと、
上記フィルタリングされたメッセージ値のアレーの2次元フーリエ変換値を算出するステップと、
ポイント毎に、上記フィルタリングされた基準メッセージ値のアレーの2次元フーリエ変換値と、上記フィルタリングされたメッセージ値のアレーの2次元フーリエ変換値との積和を求めることによって、変更されたアレーを算出するステップと、
上記変更されたアレーの逆フーリエ変換値を算出するステップと、
上記変更されたアレーの逆フーリエ変換値から最大値を判定するステップと、
上記フィルタリングされた基準メッセージ値のアレーの2次元フーリエ変換値を、上記フィルタリングされたメッセージ値のアレーの2次元フーリエ変換に対して、90°の整数倍回転させるステップと、
ポイント毎に、上記フィルタリングされた基準メッセージ値のアレーの2次元フーリエ変換値と、上記フィルタリングされたメッセージ値のアレーの2次元フーリエ変換値との積和を求めることによって、次の変更されたアレーを算出するステップと、
上記次の変更されたアレーの逆フーリエ変換値を算出するステップと、
上記次の変更されたアレーの逆フーリエ変換値から次の最大値を判定するステップと、
上記回転、算出、判定のステップを1回以上繰り返すステップと、
上記最大値の1つが閾値以上であるとき、上記ウォータマークは上記基準ウォータマークのメッセージに対応するメッセージを含んでいると判定するステップとを更に有する請求項42記載のウォータマーク検出方法。 - プログラムの制御の下で動作する処理装置において、
上記プログラムは、当該処理装置にウォータマーク検出方法を実行させ、該ウォータマーク検出方法は、コンテンツデータのフレームに埋め込まれたウォータマークを表す複数のデータ値を含む2次元のデータのフレームにおいてウォータマークを検出するウォータマーク検出方法であって、
上記データのフレームから、上記コンテンツデータの少なくとも幾つかの周波数成分に比して強調された上記ウォータマークに対応する少なくとも幾つかの高調波成分を有するフィルタリングされたデータのフレームを算出するステップと、
上記フィルタリングされたデータのフレームの2次元フーリエ変換を行い、該フィルタリングされたデータのフレームの2次元周波数スペクトルを算出するステップと、
上記2次元周波数スペクトルの周波数成分の中から、上記ウォータマークに関連する1組の周波数成分を選択するステップと、
上記選択された1組の周波数成分の1つ以上を用いて、基準ウォータマークに対して上記ウォータマークに関する回転値、リサイズ値、移動値のうちの少なくとも1つを算出するステップとを有することを特徴とする処理装置。 - 上記ウォータマークは、実質的に、上記基準ウォータマークに一致するが、回転値、リサイズ値及び移動値のうちの少なくとも1つを含み、
上記ウォータマーク及び基準ウォータマークは、それぞれ、メッセージを表す複数のデータブロック含み、
上記各データブロックは、上記メッセージによって定義される第1及び第2のパターンの少なくとも1つに基づいて構成されたデータ値のアレーを含んでいることを特徴とする請求項51記載の処理装置。 - 上記第1及び第2のパターンは、デカルト座標系におけるデータ値の4つの象限によって定義され、上記4つの象限において、第1及び第3の象限が等しいデータ値を有し、第2及び第4の象限が等しいデータ値を有し、
上記第1及び第2のパターンにおける上記第1及び第3の象限のデータ値と、上記第2及び第4の象限のデータ値とは、極性が反対の数を有し、
上記第1のパターンの第1及び第3の象限のデータ値と、上記第2のパターンの第1及び第3の象限のデータ値とは、極性が反対の数を有することを特徴とする請求項52記載の処理装置。 - 上記フィルタリングされたデータのフレームは、それぞれが該データのフレームのデータ値の1つに対応し、基準データブロックのデータ値と該データのフレームのデータ値のそれぞれの組との積和に等しい複数のフィルタリングされたデータ値を含んでいることを特徴とする請求項52記載の処理装置。
- 上記基準データブロックのデータ値は、上記第1及び第2のパターンの少なくとも1つに基づいて構成され、上記データのフレームのデータ値のそれぞれの組が、該基準データブロックに少なくとも部分的に登録されているウォータマークのデータブロックの所定の1つを含んでいるとき、上記フィルタリングされたデータ値の所定の1つは、ピークを示すことを特徴とする請求項54記載の処理装置。
- 上記所定のフィルタリングされたデータ値は、上記ウォータマークのデータブロックの所定の1つと、上記基準データブロックとの両方が上記第1又は第2のパターンに基づいて構成されたデータ値を含んでいるとき、正の極性でピークに達し、
上記所定のフィルタリングされたデータ値は、上記ウォータマークのデータブロックの所定の1つが上記第1及び第2のパターンの一方に基づいて構成されたデータ値を含み、上記基準データブロックが該第1及び第2のパターンの他方に基づいて構成されたデータ値を含んでいるとき、負の極性でピークに達することを特徴とする請求項55記載の処理装置。 - 上記基準データブロックは、上記データ値のアレー内に中心を有し、
上記データのフレームのデータ値のそれぞれの組は、上記基準データブロックの中心が該データのフレームのデータ値の対応する1つに揃えられたときに、該基準データブロックによって覆われるデータ値であることを特徴とする請求項56記載の処理装置。 - 上記フィルタリングされたデータのフレームを算出するステップは、該フィルタリングされた各データ値について、上記基準データブロックの値と、上記データのフレームのデータ値のそれぞれの組との積和の絶対値を算出するステップを有することを特徴とする請求項54記載の処理装置。
- 上記フィルタリングされたデータのフレームを2次元フーリエ変換するステップは、2次元高速フーリエ変換を実行し、該フィルタリングされたデータのフレームの2次元周波数スペクトルを生成するステップを有することを特徴とする請求項51記載の処理装置。
- 上記ウォータマークに関連する1組の周波数成分を選択するステップは、上記2次元周波数スペクトルの周波数成分の中から、該ウォータマークに対応する少なくとも幾つかの高調波成分を選択するステップを有することを特徴とする請求項51記載の処理装置。
- 上記少なくとも幾つかの高調波成分は、上記ウォータマークに対応する第2高調波成分を含んでいることを特徴とする請求項60記載の処理装置。
- 上記ウォータマークに関する回転値、リサイズ値、移動値のうちの少なくとも1つを算出するステップは、(1)上記基準ウォータマークによって定義される高調波成分の期待される幾何学的位置に対する、上記ウォータマークに対応する選択された高調波成分の少なくとも1つにおける上記2次元フーリエ変換内の幾何学的位置の1つ以上の偏り、又は(2)該基準ウォータマークによって定義される高調波成分の期待される位相に対する、該ウォータマークに対応する選択された高調波成分の少なくとも1つにおける位相の1つ以上の偏りを判定するステップを有することを特徴とする請求項60記載の処理装置。
- 上記2次元周波数スペクトルの周波数成分を含む領域は、(1)x軸とy軸に基づき、デカルト座標として図式的に表現され、(2)x軸に平行な幅(W)を有し、(3)y軸に平行な高さ(H)を有し、(4)実質的にx軸とy軸の交点である原点を有することを特徴とする請求項62記載の処理装置。
- 上記ウォータマークに対応する回転値を算出するステップは、基準点及び上記ウォータマークに対応する選択された高調波成分の少なくとも1つによって定義される第1の軸と、上記基準ウォータマークによって定義される基準軸との間の角度を判定するステップを有することを特徴とする請求項63記載の処理装置。
- 上記基準軸は、x軸及びy軸の何れか一方に沿う軸であることを特徴とする請求項64記載の処理装置。
- 上記ウォータマークに対応する選択された高調波成分の1つのy軸座標及びx軸座標をそれぞれFy1及びFxlとすると、上記ウォータマークに対応する回転値は、実質的に、arctan((Fy1*W)/(Fxl*H))に比例する数値を算出することによって求められることを特徴とする請求項65記載の処理装置。
- 上記ウォータマークに対応する回転値は、実質的に、(180/Π)*arctan((Fyl*W)/(Fx1*H))°に等しいことを特徴とする請求項66記載の処理装置。
- 上記ウォータマークに対応する回転値を算出するステップは、
(1)上記基準点及び上記ウォータマークに対応する選択された高調波成分のそれぞれの1つとによって定義される各軸と、(2)上記基準ウォータマークによって定義される1つ以上の基準軸との間の2つ以上の角度を求めるステップと、
上記2つ以上の角度の中から上記回転値を決定するステップとを有することを特徴とする請求項64記載の処理装置。 - 上記ウォータマークに対応するリサイズ値を算出するステップは、x軸リサイズ値及びy軸リサイズ値を算出するステップを有することを特徴とする請求項63記載の処理装置。
- 上記x軸リサイズ値を算出するステップは、
上記ウォータマークに対応する選択された高調波成分の1つからx軸期間Pxを算出するステップと、
上記x軸期間Pxと上記基準ウォータマークのx軸基準期間Prxとの比率を算出して、上記x軸リサイズ値を求めるステップとを有することを特徴とする請求項69記載の処理装置。 - 上記ウォータマークに対応する選択された1つの高調波成分のx軸座標及びy軸座標をそれぞれFxl及びFylとすると、上記x軸期間Pxは、実質的に、(H*W)/((Fx1*H)2+(Fyl*W)2)1/2に等しいことを特徴とする請求項70記載の処理装置。
- 上記基準ウォータマークは、各列の値の数が該基準ウォータマークのx軸基準期間Prxに等しい列及び行にそれぞれ構成された複数の値を含む複数のデータブロックを含んでいることを特徴とする請求項71記載の処理装置。
- 上記ウォータマークに対応する選択された高調波成分の1つは、実質的にx軸に沿って存在するか、又は上記回転値がなければ、実質的にx軸に沿って存在することを特徴とする請求項72記載の処理装置。
- 上記y軸リサイズ値を算出するステップは、
上記ウォータマークに対応する選択された高調波成分の1つからy軸期間Pyを算出するステップと、
上記y軸期間Pyと上記基準ウォータマークのy軸基準期間Pryとの比率を算出して、上記y軸リサイズ値を求めるステップとを有することを特徴とする請求項69記載の処理装置。 - 上記ウォータマークに対応する選択された高調波成分の1つのx軸座標及びy軸座標をそれぞれFx2及びFy2とすると、上記y軸期間Pyは、実質的に、(H*W)/((Fx2*H)2+(Fy2*W)2)1/2に等しいことを特徴とする請求項74記載の処理装置。
- 上記基準ウォータマークは、各列の値の数が該基準ウォータマークのy軸基準期間Pryに等しい列及び行にそれぞれ構成された複数の値を含む複数のデータブロックを含んでいることを特徴とする請求項75記載の処理装置。
- 上記ウォータマークに対応する選択された高調波成分の1つは、実質的にy軸に沿って存在するか、又は上記回転値がなければ、実質的にy軸に沿って存在することを特徴とする請求項76記載の処理装置。
- 上記移動値は、上記ウォータマークに対応する選択された高調波成分の1つの位相θ1に比例する第1の方向の第1の距離と、該ウォータマークに対応する選択された高調波成分の他の1つの位相θ2に比例する第2の方向の第2の距離とに基づいていることを特徴とする請求項63記載の処理装置。
- 上記ウォータマークに対応する選択された高調波成分の1つのx軸座標及びy軸座標をそれぞれFxl及びFylとすると、上記第1の距離は、実質的に、(θ1*H*W)/(2Π*((Fx1*H)2+(Fyl*W)2)1/2)に等しく、
上記ウォータマークに対応する選択された高調波成分の他の1つのx軸座標及びy軸座標をそれぞれFx2及びFy2とすると、上記第2の距離は、実質的に、(θ2*H*W)/(2Π*((Fx2*H)2+(Fy2*W)2)1/2)に等しいことを特徴とする請求項78記載の処理装置。 - 上記第1の方向は、実質的に、arctan((Fy1*W)/(Fxl*H))に比例し、上記第2の方向は、実質的に、arctan((Fy2*W)/(Fx2*H))に比例することを特徴とする請求項79記載の処理装置。
- 上記第1及び第2の方向は、実質的に直交することを特徴とする請求項70記載の処理装置。
- 上記ウォータマーク検出方法は、上記ウォータマークの回転値、リサイズ値、移動値のうちの少なくとも1つに基づいて、上記ウォータマークの少なくとも幾つかのデータブロックに対応する上記データのフレーム内の複数の位置を判定するステップを更に有する請求項52記載の処理装置。
- 上記複数の位置は、上記ウォータマークのデータブロックのそれぞれの中心に対応していることを特徴とする請求項82記載の処理装置。
- 上記ウォータマークの少なくとも幾つかのデータブロックの1つに対応するとともに、上記基準データブロックのデータ値と、該ウォータマークの少なくとも幾つかのデータブロックの1つのデータ値のそれぞれの組との積和に等しいフィルタリングされたメッセージ値のアレーを求めるステップを更に有することを特徴とする請求項82記載の処理装置。
- 上記基準データブロックは、上記データ値のアレー内に中心を有し、
上記ウォータマークの少なくとも幾つかのデータブロックの1つのデータ値のそれぞれの組は、上記基準データブロックの中心が該ウォータマークの少なくとも幾つかのデータブロックの1つの各位置に揃えられたときに、該基準データブロックによって覆われるデータ値であることを特徴とする請求項84記載の処理装置。 - 上記ウォータマーク検出方法は、(1)上記積和を求める前に、上記回転値に比例する量だけ上記基準データブロックを回転させ、及び/又は(2)上記積和を求める前に、上記リサイズ値に比例する1つ以上の量だけ上記基準データブロックをリサイズするステップを更に有する請求項85記載の処理装置。
- 上記ウォータマーク検出方法は、上記ウォータマークの少なくとも幾つかのデータブロックの1つに対応するとともに、上記基準データブロックのデータ値と、該基準ウォータマークの少なくとも幾つかのデータブロックの1つのデータ値との積和に等しいフィルタリングされた基準メッセージ値のアレーを求めるステップを更に有する請求項84記載の処理装置。
- 上記基準データブロックは、上記データ値のアレー内に中心を有し、
上記基準ウォータマークの少なくとも幾つかのデータブロックの1つのデータ値は、上記基準データブロックの中心が該基準ウォータマークの少なくとも幾つかのデータブロックの1つ中心に揃えられたときに、該基準データブロックで覆われるデータ値であることを特徴とする請求項87記載の処理装置。 - 上記フィルタリングされた基準メッセージ値のアレーは、予め定められていることを特徴とする請求項87記載の処理装置。
- 上記ウォータマーク検出方法は、上記フィルタリングされたメッセージ値のアレーと、上記フィルタリングされた基準メッセージ値のアレーとの積和を算出するステップを更に有する請求項89記載の処理装置。
- 上記ウォータマーク検出方法は、上記フィルタリングされたメッセージ値のアレーと上記フィルタリングされた基準メッセージ値のアレーの積和が閾値以上であるとき、上記ウォータマークは上記基準ウォータマークのメッセージに対応するメッセージを含んでいると判定するステップを更に有する請求項90記載の処理装置。
- 上記ウォータマーク検出方法は、
異なる基準ウォータマークに関連するフィルタリングされた基準メッセージ値のアレーの組を判定するステップと、
上記フィルタリングされたメッセージ値のアレーと上記フィルタリングされた基準メッセージ値のアレーのそれぞれとの積和を算出するステップと、
上記フィルタリングされたメッセージ値のアレーと上記基準ウォータマークの1つに関連するフィルタリングされた基準メッセージ値のアレーの積和が閾値以上であるとき、上記ウォータマークは上記基準ウォータマークのメッセージに対応するメッセージを含んでいると判定するステップとを更に有する請求項91記載の処理装置。 - 上記ウォータマーク検出方法は、
上記フィルタリングされたメッセージ値のアレーを、上記フィルタリングされた基準メッセージ値のアレーに対して、横方向及び縦方向の少なくとも1つの方向に少なくとも1つのメッセージ値の位置によって移動させるステップと、
上記フィルタリングされたメッセージ値のアレーと、上記フィルタリングされた基準メッセージ値のアレーとの積和を算出するステップと、
上記移動及び算出のステップを1回以上繰り返すステップと、
上記積和の1つが閾値以上であるとき、上記ウォータマークは上記基準ウォータマークのメッセージに対応するメッセージを含んでいると判定するステップとを更に有する請求項90記載の処理装置。 - 上記ウォータマーク検出方法は、
上記フィルタリングされた基準メッセージ値のアレーに対して、上記フィルタリングされたメッセージ値のアレーを90°の整数倍回転させるステップと、
上記フィルタリングされたメッセージ値のアレーと、上記フィルタリングされた基準メッセージ値のアレーとの積和を算出するステップと、
上記回転及び算出のステップを1回以上繰り返すステップと、
上記積和の1つが閾値以上であるとき、上記ウォータマークは上記基準ウォータマークのメッセージに対応するメッセージを含んでいると判定するステップとを更に有する請求項90記載の処理装置。 - 上記ウォータマーク検出方法は、
上記フィルタリングされた基準メッセージ値のアレーの2次元フーリエ変換値を算出するステップと、
上記フィルタリングされたメッセージ値のアレーの2次元フーリエ変換値を算出するステップと、
ポイント毎に、上記フィルタリングされた基準メッセージ値のアレーの2次元フーリエ変換値と、上記フィルタリングされたメッセージ値のアレーの2次元フーリエ変換値との積和を求めることによって、変更されたアレーを算出するステップと、
上記変更されたアレーの逆フーリエ変換値を算出するステップと、
上記変更されたアレーの逆フーリエ変換値から最大値を判定するステップと、
上記フィルタリングされた基準メッセージ値のアレーの2次元フーリエ変換値を、上記フィルタリングされたメッセージ値のアレーの2次元フーリエ変換に対して、90°の整数倍回転させるステップと、
ポイント毎に、上記フィルタリングされた基準メッセージ値のアレーの2次元フーリエ変換値と、上記フィルタリングされたメッセージ値のアレーの2次元フーリエ変換値との積和を求めることによって、次の変更されたアレーを算出するステップと、
上記次の変更されたアレーの逆フーリエ変換値を算出するステップと、
上記次の変更されたアレーの逆フーリエ変換値から次の最大値を判定するステップと、
上記回転、算出、判定のステップを1回以上繰り返すステップと、
上記最大値の1つが閾値以上であるとき、上記ウォータマークは上記基準ウォータマークのメッセージに対応するメッセージを含んでいると判定するステップとを更に有することを特徴とする請求項87記載の処理装置。 - 処理装置にウォータマーク検出方法を実行させるプログラムを格納した記録媒体において、
上記ウォータマーク検出方法は、コンテンツデータのフレームに埋め込まれたウォータマークを表す複数のデータ値を含む2次元のデータのフレームにおいてウォータマークを検出するウォータマーク検出方法であって、
コンテンツデータのフレームに埋め込まれたウォータマークを表す複数のデータ値を含む2次元のデータのフレームにおいてウォータマークを検出するウォータマーク検出方法において、
上記データのフレームから、上記コンテンツデータの少なくとも幾つかの周波数成分に比して強調された上記ウォータマークに対応する少なくとも幾つかの高調波成分を有するフィルタリングされたデータのフレームを算出するステップと、
上記フィルタリングされたデータのフレームの2次元フーリエ変換を行い、該フィルタリングされたデータのフレームの2次元周波数スペクトルを算出するステップと、
上記2次元周波数スペクトルの周波数成分の中から、上記ウォータマークに関連する1組の周波数成分を選択するステップと、
上記選択された1組の周波数成分の1つ以上を用いて、基準ウォータマークに対して上記ウォータマークに関する回転値、リサイズ値、移動値のうちの少なくとも1つを算出するステップとを有することを特徴とする記録媒体。 - 上記ウォータマークは、実質的に、上記基準ウォータマークに一致するが、回転値、リサイズ値及び移動値のうちの少なくとも1つを含み、
上記ウォータマーク及び基準ウォータマークは、それぞれ、メッセージを表す複数のデータブロック含み、
上記各データブロックは、上記メッセージによって定義される第1及び第2のパターンの少なくとも1つに基づいて構成されたデータ値のアレーを含んでいることを特徴とする請求項96記載の記録媒体。 - 上記第1及び第2のパターンは、デカルト座標系におけるデータ値の4つの象限によって定義され、上記4つの象限において、第1及び第3の象限が等しいデータ値を有し、第2及び第4の象限が等しいデータ値を有し、
上記第1及び第2のパターンにおける上記第1及び第3の象限のデータ値と、上記第2及び第4の象限のデータ値とは、極性が反対の数を有し、
上記第1のパターンの第1及び第3の象限のデータ値と、上記第2のパターンの第1及び第3の象限のデータ値とは、極性が反対の数を有することを特徴とする請求項97記載の記録媒体。 - 上記フィルタリングされたデータのフレームは、それぞれが該データのフレームのデータ値の1つに対応し、基準データブロックのデータ値と該データのフレームのデータ値のそれぞれの組との積和に等しい複数のフィルタリングされたデータ値を含んでいることを特徴とする請求項97記載の記録媒体。
- 上記基準データブロックのデータ値は、上記第1及び第2のパターンの少なくとも1つに基づいて構成され、上記データのフレームのデータ値のそれぞれの組が、該基準データブロックに少なくとも部分的に登録されているウォータマークのデータブロックの所定の1つを含んでいるとき、上記フィルタリングされたデータ値の所定の1つは、ピークを示すことを特徴とする請求項99記載の記録媒体。
- 上記所定のフィルタリングされたデータ値は、上記ウォータマークのデータブロックの所定の1つと、上記基準データブロックとの両方が上記第1又は第2のパターンに基づいて構成されたデータ値を含んでいるとき、正の極性でピークに達し、
上記所定のフィルタリングされたデータ値は、上記ウォータマークのデータブロックの所定の1つが上記第1及び第2のパターンの一方に基づいて構成されたデータ値を含み、上記基準データブロックが該第1及び第2のパターンの他方に基づいて構成されたデータ値を含んでいるとき、負の極性でピークに達することを特徴とする請求項100記載の記録媒体。 - 上記基準データブロックは、上記データ値のアレー内に中心を有し、
上記データのフレームのデータ値のそれぞれの組は、上記基準データブロックの中心が該データのフレームのデータ値の対応する1つに揃えられたときに、該基準データブロックによって覆われるデータ値であることを特徴とする請求項101記載の記録媒体。 - 上記フィルタリングされたデータのフレームを算出するステップは、該フィルタリングされた各データ値について、上記基準データブロックの値と、上記データのフレームのデータ値のそれぞれの組との積和の絶対値を算出するステップを有することを特徴とする請求項99記載の記録媒体。
- 上記フィルタリングされたデータのフレームを2次元フーリエ変換するステップは、2次元高速フーリエ変換を実行し、該フィルタリングされたデータのフレームの2次元周波数スペクトルを生成するステップを有することを特徴とする請求項96記載の記録媒体。
- 上記ウォータマークに関連する1組の周波数成分を選択するステップは、上記2次元周波数スペクトルの周波数成分の中から、該ウォータマークに対応する少なくとも幾つかの高調波成分を選択するステップを有することを特徴とする請求項96記載の記録媒体。
- 上記少なくとも幾つかの高調波成分は、上記ウォータマークに対応する第2高調波成分を含んでいることを特徴とする請求項105記載の記録媒体。
- 上記ウォータマークに関する回転値、リサイズ値、移動値のうちの少なくとも1つを算出するステップは、(1)上記基準ウォータマークによって定義される高調波成分の期待される幾何学的位置に対する、上記ウォータマークに対応する選択された高調波成分の少なくとも1つにおける上記2次元フーリエ変換内の幾何学的位置の1つ以上の偏り、又は(2)該基準ウォータマークによって定義される高調波成分の期待される位相に対する、該ウォータマークに対応する選択された高調波成分の少なくとも1つにおける位相の1つ以上の偏りを判定するステップを有することを特徴とする請求項105記載の記録媒体。
- 上記2次元周波数スペクトルの周波数成分を含む領域は、(1)x軸とy軸に基づき、デカルト座標として図式的に表現され、(2)x軸に平行な幅(W)を有し、(3)y軸に平行な高さ(H)を有し、(4)実質的にx軸とy軸の交点である原点を有することを特徴とする請求項107記載の記録媒体。
- 上記ウォータマークに対応する回転値を算出するステップは、基準点及び上記ウォータマークに対応する選択された高調波成分の少なくとも1つによって定義される第1の軸と、上記基準ウォータマークによって定義される基準軸との間の角度を判定するステップを有することを特徴とする請求項108記載の記録媒体。
- 上記基準軸は、x軸及びy軸の何れか一方に沿う軸であることを特徴とする請求項109記載の記録媒体。
- 上記ウォータマークに対応する選択された高調波成分の1つのy軸座標及びx軸座標をそれぞれFy1及びFxlとすると、上記ウォータマークに対応する回転値は、実質的に、arctan((Fy1*W)/(Fxl*H))に比例する数値を算出することによって求められることを特徴とする請求項110記載の記録媒体。
- 上記ウォータマークに対応する回転値は、実質的に、(180/Π)*arctan((Fyl*W)/(Fx1*H))°に等しいことを特徴とする請求項111記載の記録媒体。
- 上記ウォータマークに対応する回転値を算出するステップは、
(1)上記基準点及び上記ウォータマークに対応する選択された高調波成分のそれぞれの1つとによって定義される各軸と、(2)上記基準ウォータマークによって定義される1つ以上の基準軸との間の2つ以上の角度を求めるステップと、
上記2つ以上の角度の中から上記回転値を決定するステップとを有することを特徴とする請求項109記載の記録媒体。 - 上記ウォータマークに対応するリサイズ値を算出するステップは、x軸リサイズ値及びy軸リサイズ値を算出するステップを有することを特徴とする請求項108記載の記録媒体。
- 上記x軸リサイズ値を算出するステップは、
上記ウォータマークに対応する選択された高調波成分の1つからx軸期間Pxを算出するステップと、
上記x軸期間Pxと上記基準ウォータマークのx軸基準期間Prxとの比率を算出して、上記x軸リサイズ値を求めるステップとを有することを特徴とする請求項114記載の記録媒体。 - 上記ウォータマークに対応する選択された高調波成分の1つのx軸座標及びy軸座標をそれぞれFxl及びFylとすると、上記x軸期間Pxは、実質的に、(H*W)/((Fx1*H)2+(Fyl*W)2)1/2に等しいことを特徴とする請求項115記載の記録媒体。
- 上記基準ウォータマークは、各列の値の数が該基準ウォータマークのx軸基準期間Prxに等しい列及び行にそれぞれ構成された複数の値を含む複数のデータブロックを含んでいることを特徴とする請求項116記載の記録媒体。
- 上記ウォータマークに対応する選択された高調波成分の1つは、実質的にx軸に沿って存在するか、又は上記回転値がなければ、実質的にx軸に沿って存在することを特徴とする請求項117記載の記録媒体。
- 上記y軸リサイズ値を算出するステップは、
上記ウォータマークに対応する選択された高調波成分の1つからy軸期間Pyを算出するステップと、
上記y軸期間Pyと上記基準ウォータマークのy軸基準期間Pryとの比率を算出して、上記y軸リサイズ値を求めるステップとを有することを特徴とする請求項114記載の記録媒体。 - 上記ウォータマークに対応する選択された1つの高調波成分のx軸座標及びy軸座標をそれぞれFx2及びFy2とすると、上記y軸期間Pyは、実質的に、(H*W)/((Fx2*H)2+(Fy2*W)2)1/2に等しいことを特徴とする請求項119記載の記録媒体。
- 上記基準ウォータマークは、各列の値の数が該基準ウォータマークのy軸基準期間Pryに等しい列及び行にそれぞれ構成された複数の値を含む複数のデータブロックを含んでいることを特徴とする請求項120記載の記録媒体。
- 上記ウォータマークに対応する選択された高調波成分の1つは、実質的にy軸に沿って存在するか、又は上記回転値がなければ、実質的にy軸に沿って存在することを特徴とする請求項121記載の記録媒体。
- 上記移動値は、上記ウォータマークに対応する選択された高調波成分の1つの位相θ1に比例する第1の方向の第1の距離と、該ウォータマークに対応する選択された高調波成分の他の1つの位相θ2に比例する第2の方向の第2の距離とに基づいていることを特徴とする請求項108記載の記録媒体。
- 上記ウォータマークに対応する選択された高調波成分の1つのx軸座標及びy軸座標をそれぞれFxl及びFylとすると、上記第1の距離は、実質的に、(θ1*H*W)/(2Π*((Fx1*H)2+(Fyl*W)2)1/2)に等しく、
上記ウォータマークに対応する選択された高調波成分の他の1つのx軸座標及びy軸座標をそれぞれFx2及びFy2とすると、上記第2の距離は、実質的に、(θ2*H*W)/(2Π*((Fx2*H)2+(Fy2*W)2)1/2)に等しいことを特徴とする請求項123記載の記録媒体。 - 上記第1の方向は、実質的に、arctan((Fy1*W)/(Fxl*H))に比例し、上記第2の方向は、実質的に、arctan((Fy2*W)/(Fx2*H))に比例することを特徴とする請求項124記載の記録媒体。
- 上記第1及び第2の方向は、実質的に直交することを特徴とする請求項123記載の記録媒体。
- 上記ウォータマーク検出方法は、上記ウォータマークの回転値、リサイズ値、移動値のうちの少なくとも1つに基づいて、上記ウォータマークの少なくとも幾つかのデータブロックに対応する上記データのフレーム内の複数の位置を判定するステップを更に有する請求項97記載の記録媒体。
- 上記複数の位置は、上記ウォータマークのデータブロックのそれぞれの中心に対応していることを特徴とする請求項127記載の記録媒体。
- 上記ウォータマーク検出方法は、上記ウォータマークの少なくとも幾つかのデータブロックの1つに対応するとともに、上記基準データブロックのデータ値と、該ウォータマークの少なくとも幾つかのデータブロックの1つのデータ値のそれぞれの組との積和に等しいフィルタリングされたメッセージ値のアレーを求めるステップを更に有することを特徴とする請求項127記載の記録媒体。
- 上記基準データブロックは、上記データ値のアレー内に中心を有し、
上記ウォータマークの少なくとも幾つかのデータブロックの1つのデータ値のそれぞれの組は、上記基準データブロックの中心が該ウォータマークの少なくとも幾つかのデータブロックの1つの各位置に揃えられたときに、該基準データブロックによって覆われるデータ値であることを特徴とする請求項129記載の記録媒体。 - 上記ウォータマーク検出方法は、(1)上記積和を求める前に、上記回転値に比例する量だけ上記基準データブロックを回転させ、及び/又は(2)上記積和を求める前に、上記リサイズ値に比例する1つ以上の量だけ上記基準データブロックをリサイズするステップを更に有する請求項130記載の記録媒体。
- 上記ウォータマーク検出方法は、上記基準ウォータマークの少なくとも幾つかのデータブロックの1つに対応するとともに、上記基準データブロックのデータ値と、該基準ウォータマークの少なくとも幾つかのデータブロックの1つのデータ値との積和に等しいフィルタリングされた基準メッセージ値のアレーを求めるステップを更に有する請求項129記載の記録媒体。
- 上記基準データブロックは、上記データ値のアレー内に中心を有し、
上記基準ウォータマークの少なくとも幾つかのデータブロックの1つのデータ値は、上記基準データブロックの中心が該基準ウォータマークの少なくとも幾つかのデータブロックの1つ中心に揃えられたときに、該基準データブロックで覆われるデータ値であることを特徴とする請求項132記載の記録媒体。 - 上記フィルタリングされた基準メッセージ値のアレーは、予め定められていることを特徴とする請求項132記載の記録媒体。
- 上記ウォータマーク検出方法は、上記フィルタリングされたメッセージ値のアレーと、上記フィルタリングされた基準メッセージ値のアレーとの積和を算出するステップを更に有する請求項134記載の記録媒体。
- 上記ウォータマーク検出方法は、上記フィルタリングされたメッセージ値のアレーと上記フィルタリングされた基準メッセージ値のアレーの積和が閾値以上であるとき、上記ウォータマークは上記基準ウォータマークのメッセージに対応するメッセージを含んでいると判定するステップを更に有する請求項135記載の記録媒体。
- 上記ウォータマーク検出方法は、
異なる基準ウォータマークに関連するフィルタリングされた基準メッセージ値のアレーの組を判定するステップと、
上記フィルタリングされたメッセージ値のアレーと、上記フィルタリングされた基準メッセージ値のアレーのそれぞれとの積和を算出するステップと、
上記フィルタリングされたメッセージ値のアレーと上記基準ウォータマークの1つに関連するフィルタリングされた基準メッセージ値のアレーの積和が閾値以上であるとき、上記ウォータマークは該基準ウォータマークのメッセージに対応するメッセージを含んでいると判定するステップとを更に有する請求項136記載の記録媒体。 - 上記ウォータマーク検出方法は、
上記フィルタリングされたメッセージ値のアレーを、上記フィルタリングされた基準メッセージ値のアレーに対して、横方向及び縦方向の少なくとも1つの方向に少なくとも1つのメッセージ値の位置によって移動させるステップと、
上記フィルタリングされたメッセージ値のアレーと、上記フィルタリングされた基準メッセージ値のアレーとの積和を算出するステップと、
上記移動及び算出のステップを1回以上繰り返すステップと、
上記積和の1つが閾値以上であるとき、上記ウォータマークは上記基準ウォータマークのメッセージに対応するメッセージを含んでいると判定するステップとを更に有する請求項135記載の記録媒体。 - 上記ウォータマーク検出方法は、
上記フィルタリングされた基準メッセージ値のアレーに対して、上記フィルタリングされたメッセージ値のアレーを90°の整数倍回転させるステップと、
上記フィルタリングされたメッセージ値のアレーと、上記フィルタリングされた基準メッセージ値のアレーとの積和を算出するステップと、
上記回転及び算出のステップを1回以上繰り返すステップと、
上記積和の1つが閾値以上であるとき、上記ウォータマークは上記基準ウォータマークのメッセージに対応するメッセージを含んでいると判定するステップとを更に有する請求項135記載の記録媒体。 - 上記フィルタリングされた基準メッセージ値のアレーの2次元フーリエ変換値を算出するステップと、
上記フィルタリングされたメッセージ値のアレーの2次元フーリエ変換値を算出するステップと、
ポイント毎に、上記フィルタリングされた基準メッセージ値のアレーの2次元フーリエ変換値と、上記フィルタリングされたメッセージ値のアレーの2次元フーリエ変換値との積和を求めることによって、変更されたアレーを算出するステップと、
上記変更されたアレーの逆フーリエ変換値を算出するステップと、
上記変更されたアレーの逆フーリエ変換値から最大値を判定するステップと、
上記フィルタリングされた基準メッセージ値のアレーの2次元フーリエ変換値を、上記フィルタリングされたメッセージ値のアレーの2次元フーリエ変換に対して、90°の整数倍回転させるステップと、
ポイント毎に、上記フィルタリングされた基準メッセージ値のアレーの2次元フーリエ変換値と、上記フィルタリングされたメッセージ値のアレーの2次元フーリエ変換値との積和を求めることによって、次の変更されたアレーを算出するステップと、
上記次の変更されたアレーの逆フーリエ変換値を算出するステップと、
上記次の変更されたアレーの逆フーリエ変換値から次の最大値を判定するステップと、
上記回転、算出、判定のステップを1回以上繰り返すステップと、
上記最大値の1つが閾値以上であるとき、上記ウォータマークは上記基準ウォータマークのメッセージに対応するメッセージを含んでいると判定するステップとを更に有する請求項132記載の記録媒体。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/162,838 US6865273B2 (en) | 2002-06-05 | 2002-06-05 | Method and apparatus to detect watermark that are resistant to resizing, rotation and translation |
PCT/US2003/017575 WO2003105068A1 (en) | 2002-06-05 | 2003-06-04 | Method and apparatus to detect watermark that are resistant to resizing, rotation and translation |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2005529526A JP2005529526A (ja) | 2005-09-29 |
JP4189972B2 true JP4189972B2 (ja) | 2008-12-03 |
Family
ID=29709875
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004512065A Expired - Fee Related JP4189972B2 (ja) | 2002-06-05 | 2003-06-04 | 大きさの変更、回転及び移動に対して耐性を有するウォータマークの検出方法及び検出装置 |
Country Status (9)
Country | Link |
---|---|
US (1) | US6865273B2 (ja) |
EP (1) | EP1509873A4 (ja) |
JP (1) | JP4189972B2 (ja) |
KR (1) | KR20050000435A (ja) |
CN (1) | CN100524338C (ja) |
AU (1) | AU2003237373B2 (ja) |
DE (1) | DE10392751T5 (ja) |
GB (1) | GB2406011B (ja) |
WO (1) | WO2003105068A1 (ja) |
Families Citing this family (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7072490B2 (en) | 2002-11-22 | 2006-07-04 | Digimarc Corporation | Symmetry watermark |
US7702125B2 (en) * | 2003-02-05 | 2010-04-20 | Digimarc Corporation | Watermarking systems and methods |
US20040190749A1 (en) * | 2003-03-28 | 2004-09-30 | Peng Xu | Method for countering rotation attacks in a video watermark system |
JP2005084625A (ja) * | 2003-09-11 | 2005-03-31 | Music Gate Inc | 電子透かし合成方法及びプログラム |
US7489796B2 (en) | 2004-02-02 | 2009-02-10 | Nippon Telegraph And Telephone Corporation | Electronic watermark embedding device, electronic watermark detection device, method thereof, and program |
EP1691539A1 (en) * | 2005-02-15 | 2006-08-16 | European Central Bank | Two-dimensional security pattern that can be authenticated with one-dimensional signal processing |
EP1764780A1 (en) * | 2005-09-16 | 2007-03-21 | Deutsche Thomson-Brandt Gmbh | Blind watermarking of audio signals by using phase modifications |
CN100428259C (zh) * | 2006-11-02 | 2008-10-22 | 华为技术有限公司 | 一种在内容适配中防止数字水印丢失的方法、系统及数字版权中心 |
EP2565667A1 (en) * | 2011-08-31 | 2013-03-06 | Friedrich-Alexander-Universität Erlangen-Nürnberg | Direction of arrival estimation using watermarked audio signals and microphone arrays |
KR101363577B1 (ko) * | 2012-08-23 | 2014-02-17 | 한국과학기술원 | 재표본화 공격에 대한 디지털 워터마크 검출 성능 향상 장치 및 그 방법 |
US9946947B2 (en) * | 2012-10-31 | 2018-04-17 | Cognex Corporation | System and method for finding saddle point-like structures in an image and determining information from the same |
US8955005B2 (en) * | 2013-03-14 | 2015-02-10 | Samsung Electronics Co., Ltd. | Viewer behavior tracking using pattern matching and character recognition |
US10504200B2 (en) | 2014-03-13 | 2019-12-10 | Verance Corporation | Metadata acquisition using embedded watermarks |
CN106170988A (zh) | 2014-03-13 | 2016-11-30 | 凡瑞斯公司 | 使用嵌入式代码的交互式内容获取 |
US10002438B2 (en) | 2014-07-22 | 2018-06-19 | Hewlett-Packard Development Company, L.P. | Rapid image registration |
US10002413B2 (en) | 2014-07-22 | 2018-06-19 | Hewlett-Packard Development Company, L.P. | Recovering planar projections |
WO2016028936A1 (en) | 2014-08-20 | 2016-02-25 | Verance Corporation | Watermark detection using a multiplicity of predicted patterns |
JP6476673B2 (ja) * | 2014-09-16 | 2019-03-06 | セイコーエプソン株式会社 | 頭部装着型表示装置、頭部装着型表示装置の制御方法、および、コンピュータープログラム |
EP3225034A4 (en) | 2014-11-25 | 2018-05-02 | Verance Corporation | Enhanced metadata and content delivery using watermarks |
US9942602B2 (en) | 2014-11-25 | 2018-04-10 | Verance Corporation | Watermark detection and metadata delivery associated with a primary content |
WO2016100916A1 (en) | 2014-12-18 | 2016-06-23 | Verance Corporation | Service signaling recovery for multimedia content using embedded watermarks |
US10650241B2 (en) | 2016-06-27 | 2020-05-12 | Facebook, Inc. | Systems and methods for identifying matching content |
CN106250729B (zh) * | 2016-08-01 | 2020-05-26 | 腾讯科技(深圳)有限公司 | 一种歌曲数据处理方法及其设备 |
US10762405B2 (en) | 2017-10-26 | 2020-09-01 | Datalogic Ip Tech S.R.L. | System and method for extracting bitstream data in two-dimensional optical codes |
Family Cites Families (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE2856833A1 (de) | 1978-12-30 | 1980-07-17 | Hoechst Ag | Identifikationskarte und verfahren zu ihrer herstellung |
EP0297539B1 (en) | 1987-06-30 | 1993-09-01 | Kabushiki Kaisha Toshiba | Recording control apparatus |
JPH0727715B2 (ja) | 1989-11-24 | 1995-03-29 | シャープ株式会社 | ディジタルオーディオインターフェイス信号中継装置 |
US6424725B1 (en) | 1996-05-16 | 2002-07-23 | Digimarc Corporation | Determining transformations of media signals with embedded code signals |
US7171016B1 (en) * | 1993-11-18 | 2007-01-30 | Digimarc Corporation | Method for monitoring internet dissemination of image, video and/or audio files |
US7286684B2 (en) | 1994-03-17 | 2007-10-23 | Digimarc Corporation | Secure document design carrying auxiliary machine readable information |
US5646997A (en) | 1994-12-14 | 1997-07-08 | Barton; James M. | Method and apparatus for embedding authentication information within digital data |
JP3371187B2 (ja) | 1995-12-04 | 2003-01-27 | ソニー株式会社 | 情報信号記録装置および方法、並びに情報信号複製装置および方法 |
US5822432A (en) | 1996-01-17 | 1998-10-13 | The Dice Company | Method for human-assisted random key generation and application for digital watermark system |
US6381341B1 (en) * | 1996-05-16 | 2002-04-30 | Digimarc Corporation | Watermark encoding method exploiting biases inherent in original signal |
US6282299B1 (en) | 1996-08-30 | 2001-08-28 | Regents Of The University Of Minnesota | Method and apparatus for video watermarking using perceptual masks |
US5809139A (en) | 1996-09-13 | 1998-09-15 | Vivo Software, Inc. | Watermarking method and apparatus for compressed digital video |
US5915027A (en) | 1996-11-05 | 1999-06-22 | Nec Research Institute | Digital watermarking |
SE512719C2 (sv) * | 1997-06-10 | 2000-05-02 | Lars Gustaf Liljeryd | En metod och anordning för reduktion av dataflöde baserad på harmonisk bandbreddsexpansion |
US6404926B1 (en) | 1997-09-02 | 2002-06-11 | Sony Corporation | Apparatus and method of processing image data, transmission medium, and recording medium |
US6108434A (en) | 1997-09-12 | 2000-08-22 | Signafy, Inc. | Counteracting geometric distortions for DCT based watermarking |
US6556689B1 (en) | 1998-05-29 | 2003-04-29 | University Of Delaware | Watermarking methods for digital images and videos |
US6141441A (en) | 1998-09-28 | 2000-10-31 | Xerox Corporation | Decoding data from patterned color modulated image regions in a color image |
US6463162B1 (en) | 1998-09-30 | 2002-10-08 | Hewlett-Packard Company | Robust watermarking for digital objects |
US6442283B1 (en) * | 1999-01-11 | 2002-08-27 | Digimarc Corporation | Multimedia data embedding |
JP2001078010A (ja) | 1999-09-02 | 2001-03-23 | Hitachi Ltd | 電子透かし情報の抽出方法 |
US6282300B1 (en) | 2000-01-21 | 2001-08-28 | Signafy, Inc. | Rotation, scale, and translation resilient public watermarking for images using a log-polar fourier transform |
US6625297B1 (en) * | 2000-02-10 | 2003-09-23 | Digimarc Corporation | Self-orienting watermarks |
US7020303B2 (en) | 2000-03-18 | 2006-03-28 | Digimarc Corporation | Feature-based watermarks and watermark detection strategies |
US6707928B2 (en) | 2000-11-29 | 2004-03-16 | Intel Corporation | Method for block-based digital image watermarking |
KR100378222B1 (ko) * | 2001-04-21 | 2003-03-29 | 주식회사 마크애니 | 디지털 워터마크의 삽입 및 검출방법과 이를 이용한워터마크 삽입/검출 장치 |
JP4005780B2 (ja) | 2001-07-12 | 2007-11-14 | 興和株式会社 | 電子透かしの埋め込みおよび検出 |
US7298865B2 (en) | 2001-07-30 | 2007-11-20 | Sarnoff Corporation | Secure robust high-fidelity watermarking |
US6563937B1 (en) | 2001-11-28 | 2003-05-13 | Sony Corporation | Method and apparatus to detect watermark that are resistant to arbitrary deformations |
-
2002
- 2002-06-05 US US10/162,838 patent/US6865273B2/en not_active Expired - Fee Related
-
2003
- 2003-06-04 DE DE10392751T patent/DE10392751T5/de not_active Withdrawn
- 2003-06-04 GB GB0425848A patent/GB2406011B/en not_active Expired - Fee Related
- 2003-06-04 EP EP03736832A patent/EP1509873A4/en not_active Withdrawn
- 2003-06-04 WO PCT/US2003/017575 patent/WO2003105068A1/en active Application Filing
- 2003-06-04 AU AU2003237373A patent/AU2003237373B2/en not_active Ceased
- 2003-06-04 KR KR10-2004-7019827A patent/KR20050000435A/ko not_active Application Discontinuation
- 2003-06-04 CN CNB038128985A patent/CN100524338C/zh not_active Expired - Fee Related
- 2003-06-04 JP JP2004512065A patent/JP4189972B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
EP1509873A4 (en) | 2008-01-02 |
WO2003105068A1 (en) | 2003-12-18 |
KR20050000435A (ko) | 2005-01-03 |
AU2003237373A1 (en) | 2003-12-22 |
CN100524338C (zh) | 2009-08-05 |
CN1659579A (zh) | 2005-08-24 |
GB2406011B (en) | 2006-04-12 |
AU2003237373B2 (en) | 2008-10-30 |
US20030228030A1 (en) | 2003-12-11 |
GB0425848D0 (en) | 2004-12-29 |
US6865273B2 (en) | 2005-03-08 |
DE10392751T5 (de) | 2005-07-14 |
EP1509873A1 (en) | 2005-03-02 |
GB2406011A (en) | 2005-03-16 |
JP2005529526A (ja) | 2005-09-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4189972B2 (ja) | 大きさの変更、回転及び移動に対して耐性を有するウォータマークの検出方法及び検出装置 | |
US6563937B1 (en) | Method and apparatus to detect watermark that are resistant to arbitrary deformations | |
US6985601B2 (en) | Watermark resistant to rotation and resizing | |
Zheng et al. | RST-invariant digital image watermarking based on log-polar mapping and phase correlation | |
Chun-peng et al. | Geometrically invariant image watermarking based on fast radial harmonic Fourier moments | |
Bas et al. | Geometrically invariant watermarking using feature points | |
Zheng et al. | A survey of RST invariant image watermarking algorithms | |
JP4034776B2 (ja) | 電子透かし検出装置、電子透かし検出方法及びプログラム | |
US7433489B2 (en) | Method to ensure temporal synchronization and reduce complexity in the detection of temporal watermarks | |
WO2001059689A1 (en) | Self-orienting watermarking method embedding frequency shift keying | |
JP2002247344A (ja) | 画像処理方法及び装置 | |
KR20010113857A (ko) | 회전, 스케일, 그리고 변이 회복되는 이미지들을 위한공개 워터마킹 | |
Su et al. | Geometrically resilient digital image watermarking by using interest point extraction and extended pilot signals | |
Johnson et al. | Recovery of watermarks from distorted images | |
JP4066297B2 (ja) | 信号処理方法及び装置、ウォーターマークの付加及び検出方法、及び記録媒体 | |
Lu et al. | Feature based robust watermarking using image normalization | |
CN102024244B (zh) | 基于图像特征区域的水印嵌入、检测方法及其装置 | |
CN100365655C (zh) | 一种抵抗旋转伸缩和位移攻击的数字水印方法 | |
KR20050119692A (ko) | 워터마크들을 검출하는 방법 | |
JP2004015396A (ja) | 電子透かし挿入方法及びその装置並びに電子透かし検出方法及びその装置 | |
Lin et al. | Fragile watermarking-based authentication scheme for demosaicked images | |
Delannay et al. | Watermarking relying on cover signal content to hide synchronization marks | |
KR20230001392A (ko) | 구형 파노라마 영상에 대한 워터마크 검출 방법 및 장치 | |
Liu et al. | A robust RST invariant image watermarking method based on locally detected features | |
Guo et al. | Robust image watermarking based on scale-space feature points |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060131 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070911 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20071211 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20071218 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20080111 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20080121 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080212 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080311 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20080611 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20080618 |
|
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: 20080812 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20080820 |
|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20080820 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20080822 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20080911 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110926 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |