(57)【特許請求の範囲】
【請求項１】
画像の一部の画素からなる小領域に対応する大きさの単位ウォータマークを縦横に反復した反復ウォータマークを、画像に付加する付随情報付加方法において、
前記単位ウォータマークの大きさは、Ｎ×Ｍ（Ｎ，Ｍは正の整数）個の画素からなる小領域であり、
前記単位ウォータマークが横方向および／または縦方向に反復して並ぶ１行（または１列）毎に、前記単位ウォータマークを横方向（または縦方向）に一定量づつずらした反復ウォータマークを発生する反復ステップと、
前記反復ステップから発生された前記単位ウォータマークを、画像に付加する付加ステップと
を備えることを特徴とする付随情報付加方法。
【請求項２】
請求項１に記載の付随情報付加方法において、
前記反復ステップにおいては、さらに、横方向および／または縦方向に反復して並ぶ前記単位ウォータマークを、画像を単位とした一定時間毎に、縦方向および／または横方向に、一定量づつずらした反復ウォータマークを発生する
ことを特徴とする付随情報付加方法。
【請求項３】
画像の一部の画素からなる小領域に対応する大きさの単位ウォータマークを縦横に反復した反復ウォータマークを、画像に付加する付随情報付加方法において、
前記単位ウォータマークの大きさは、Ｎ×Ｍ（Ｎ，Ｍは正の整数）個の画素からなる小領域であり、
横方向および／または縦方向に反復して並ぶ前記単位ウォータマークを、画像を単位とした一定時間毎に、縦方向および／または横方向に、一定量づつずらした反復ウォータマークを発生する反復ステップと、
前記反復ステップから発生された前記単位ウォータマークを、画像に付加する付加ステップと
を備えることを特徴とする付随情報付加方法。
【請求項４】
画像の一部のＮ×Ｍ（Ｎ，Ｍは正の整数）個の画素からなる小領域に対応する大きさの単位ウォータマークが横方向および／または縦方向に反復して並ぶ１行（または１列）毎に、前記単位ウォータマークを横方向（または縦方向）に一定量づつずらした反復ウォータマークが付加された画像から、前記単位ウォータマークを検出する付随情報検出方法において、
前記反復ウォータマークが付加された画像について、前記単位ウォータマークの単位で折り畳み累積するステップと、
前記折り畳み累積の結果と、前記単位ウォータマークとの相関を調べ、相関結果が所定の閾値より大きい場合に、前記単位ウォータマークを検出したとする相関判定ステップと、
を備える付随情報検出方法。
【請求項５】
画像の一部のＮ×Ｍ（Ｎ，Ｍは正の整数）個の画素からなる小領域に対応する大きさの単位ウォータマークが横方向および／または縦方向に反復して並べられ、かつ、画像を単位とした一定時間毎に、前記単位ウォータマークが横方向および／または縦方向に一定量づつずらされた反復ウォータマークが付加された画像から、前記単位ウォータマークを検出する付随情報検出方法において、
前記反復ウォータマークが付加された画像について、前記単位ウォータマークの単位で、折り畳み累積するステップと、
前記折り畳み累積の結果と、前記単位ウォータマークとの相関を調べ、相関結果が所定の閾値より大きい場合に、前記単位ウォータマークを検出したとする相関判定ステップと、
を備える付随情報検出方法。
【請求項６】
画像の一部の画素からなる小領域に対応する大きさの単位ウォータマークを縦横に反復した反復ウォータマークを、画像に付加する付随情報付加装置において、
前記単位ウォータマークの大きさは、Ｎ×Ｍ（Ｎ，Ｍは正の整数）個の画素からなる小領域であり、
前記単位ウォータマークが横方向および／または縦方向に反復して並ぶ１行（または１列）毎に、前記単位ウォータマークを横方向（または縦方向）に一定量づつずらした反復ウォータマークを発生する反復手段と、
前記反復ステップから発生された前記単位ウォータマークを、画像に付加する付加手段と
を備えることを特徴とする付随情報付加装置。
【請求項７】
請求項６に記載の付随情報付加装置において、
前記反復手段においては、さらに、横方向および／または縦方向に反復して並ぶ前記単位ウォータマークを、画像を単位とした一定時間毎に、縦方向および／または横方向に、一定量づつずらした反復ウォータマークを発生する
ことを特徴とする付随情報付加装置。
【請求項８】
画像の一部の画素からなる小領域に対応する大きさの単位ウォータマークを縦横に反復した反復ウォータマークを、画像に付加する付随情報付加装置において、
前記単位ウォータマークの大きさは、Ｎ×Ｍ（Ｎ，Ｍは正の整数）個の画素からなる小領域であり、
横方向および／または縦方向に反復して並ぶ前記単位ウォータマークを、画像を単位とした一定時間毎に、縦方向および／または横方向に、一定量づつずらした反復ウォータマークを発生する反復手段と、
前記反復ステップから発生された前記単位ウォータマークを、画像に付加する付加手段と
を備えることを特徴とする付随情報付加装置。
【請求項９】
画像の一部のＮ×Ｍ（Ｎ，Ｍは正の整数）個の画素からなる小領域に対応する大きさの単位ウォータマークが横方向および／または縦方向に反復して並ぶ１行（または１列）毎に、前記単位ウォータマークを横方向（または縦方向）に一定量づつずらした反復ウォータマークが付加された画像から、前記単位ウォータマークを検出する付随情報検出装置において、
前記反復ウォータマークが付加された画像について、前記単位ウォータマークの単位で折り畳み累積する手段と、
前記折り畳み累積の結果と、前記単位ウォータマークとの相関を調べ、相関結果が所定の閾値より大きい場合に、前記単位ウォータマークを検出したとする相関判定手段と、
を備える付随情報検出装置。
【請求項１０】
画像の一部のＮ×Ｍ（Ｎ，Ｍは正の整数）個の画素からなる小領域に対応する大きさの単位ウォータマークが横方向および／または縦方向に反復して並べられ、かつ、画像を単位とした一定時間毎に、前記単位ウォータマークが横方向および／または縦方向に一定量づつずらされた反復ウォータマークが付加された画像から、前記単位ウォータマークを検出する付随情報検出装置において、
前記反復ウォータマークが付加された画像について、前記単位ウォータマークの単位で、折り畳み累積する手段と、
前記折り畳み累積の結果と、前記単位ウォータマークとの相関を調べ、相関結果が所定の閾値より大きい場合に、前記単位ウォータマークを検出したとする相関判定ステップと、
を備える付随情報検出装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、静止画像あるいは動画像シーケンスなどの画像データに対して、それに付随する情報を、電子透かし（ウォータマーク）として画像データ中に付加する付随情報付加装置および方法、また、その付随情報を検出する付随情報検出装置および方法に関する。
【０００２】
【従来の技術】
任意の画像データ（静止画像あるいは動画像シーケンス）に対して、それに付随する情報を画像データ中に付加し、再生時にその付随情報を検出して利用する技術がある。この技術の代表的な利用例として、著作権情報の付加が挙げられる。
【０００３】
特定の画像データを不特定の利用者が利用することが可能である場合、その画像に対して著作権を持つ者がその権利を主張するために、あらかじめ著作権情報を画像データ中に付加しておくことが考えられる。著作権情報を付加しておくことにより、画像の再生装置あるいは再生方法における処理手順の中でその画像データを表示不可と指示する著作権情報が検出された場合には、その画像データの表示を行なわない等の対策を講じることが可能となる。
【０００４】
上述の著作権情報の付加あるいは検出は、現在、アナログ記録（ビデオ信号をアナログ信号の状態で記録）のビデオテープの不正コピー防止機能等で利用されている。この機能により、レンタル業者から借りてくるなどの方法で手元にあるビデオテープを不正にコピーすることを不可能にし、そのビデオテープの著作権を持つ者の権利を守っている。
【０００５】
アナログ記録のビデオテープの場合には、画像データがアナログ的に記録されるため、コピーを行なうと画質が劣化する。これに対し、最近普及しつつあるデジタル的に画像データを記録し再生する機器においては、原理的にコピーによって画質が劣化することがなく、コピーを多数回繰り返すことさえも画質の劣化無しに可能である。そのため、デジタル的に処理を行なう機器による不正コピーによる損害は、アナログの場合よりさらに大きなものとなり、デジタル的に処理を行なう機器における不正コピー防止は、非常に重要になっている。
【０００６】
ところで、上述の著作権情報などの画像データに付随する情報を、その画像データ中に付加する方法としては、主に２つの方法がある。
【０００７】
第１の方法は、画像データの補助部分に付加する方法である。画像データの補助部分とは、有効画面領域の画像データ以外の部分を指す。例えば、アナログビデオ信号の垂直ブランキング期間や、デジタルビデオ信号のヘッダ部や付加データ部などである。実際に、アナログビデオテープでは、画像データの補助的な付随情報が、垂直ブランキング期間の一部に付加されている。
【０００８】
第２の方法は、画像データの主要部分、すなわち、有効画面領域の画像データに付加する方法である。これは、ある特定のパターンを視覚的に感知できない程度に画像の全体あるいは一部に付加するものである。これは、電子透かし処理と呼ばれている。この具体例として、乱数やＭ系列等を用いて発生させた鍵パターンを利用して情報の付加および検出を行なう、スペクトラム拡散等がある。
【０００９】
第１の方法は、画像データの補助部分という、画像の内容自体とは異なった場所に情報を付加をしているため、一度、補助部分を分離してしまえば付加した情報がなくなってしまうという問題がある。
【００１０】
これに対して、電子透かし処理は、画像データに存在する人間の知覚上の重要でない部分、すなわち、画像に対して冗長でない部分に、雑音として情報を埋め込む処理である。このような電子透かし処理により画像データ中に埋め込まれた情報（以下、電子透かしにより埋め込まれる情報をウォータマークという）は、画像データと同じ周波数領域および時間領域に付加されるので、その画像データから除去されにくい。一方、画像データについてフィルタリング処理やデータ圧縮処理をした後であっても、それらに埋め込まれたウォータマークを画像データ中から検出することが可能であるという特徴がある。
【００１１】
以下では、上述のような特徴を備える第２の方法の、画像データの主要部分に付随情報を付加する方法であるウォータマークを用いた方法について述べる。
【００１２】
まず、図１６〜図１９を用いてウォータマークの付加、検出方式の概略を説明する。
【００１３】
図１６は、ウォータマークパターンＷＭの例を示し、この例のウォータマークパターンＷＭは、例えば、縦×横＝４ｎ画素×４ｎ画素（ｎは自然数）の大きさで、各画素について、図示のように、＋１，−１の２つのシンボルのいずれかを取るものを用いるとする。なお、実際の利用においては、ウォータマークパターンは、２つのシンボルのいずれかをランダムに取る方が望ましい。また、ウォータマークパターンの領域の形状、大きさは任意である。
【００１４】
画像に付随情報を付加する際には、付加を行なう対象となる画像上で、付加しようとするウォータマークパターンの領域と等しい大きさの領城を設定する。設定された領域とウォータマークパターンＷＭとを重ねて照らし合わせ、ウォータマークパターンＷＭで＋１のシンボルが対応する画素については値ａを加算し、−１のシンボルが対応する画素については値ｂを減算する。ここで、値ａ，値ｂは、共に、任意の値を取り得る。
【００１５】
図１７は、画像へのウォータマークパターンＷＭの付加の例を示しており、この例では、付加を行なう対象となる画像Ｐｉの領域の画素値が全て１００の場合であり、また、付加するウォータマークパターンＷＭの前記ａ＝１，ｂ＝１に設定されている場合である。このウォータマークパターンＷＭの埋め込み操作が行われた結果の画像Ｐｏでは、図示のように、１０１と９９の画素値に分かれることになる。
【００１６】
付随情報を検出する際には、検出を行なう対象となる画像上でウォータマークパターンＷＭの領域と等しい大きさの領域を設定する。そして、設定された画像領域とウォータマークパターンＷＭとの相関についての評価値を求める。この場合、設定された画像領域の画素の全てについて合計したものを評価値として用いる。
【００１７】
具体的には、評価値を求めるために、画素全てを合計する際に、設定された画像領域とウォータマークパターンＷＭとを重ねて照らし合わせ、ウォータマークパターンＷＭの＋１のシンボルの画素については足し算、−１のシンボルの画素については引き算を適用する。このとき、付随情報を付加する際に用いたウォータマークパターンと同じパターンを用いて検出を行なうものである。
【００１８】
図１８は、図１７のようにしてウォータマークパターンＷＭが付加された画像Ｐｏからウォータマークを検出する場合の評価値の算出を説明するための図である。この図１８の例では、評価値は４ｎ２  （領域に含まれる画素数の数と同じ）になる。
【００１９】
これに対して、図１９の画像Ｐｏは、ウォータマークパターンＷＭが付加されていない場合を示しており、この画像Ｐｏについての、ウォータマークパターンとの相関の評価値は０となる。
【００２０】
実際的には、ウォータマークパターンが付加される対象の画像Ｐｉの画素のすべてが同じ値になることはほとんどないが、ウォータマークパターンの領域が充分に広く、かつ、ウォータマークパターンが充分にランダムである場合、画像の水平、垂直相関性から、ウォータマークが付加されていない場合の画像Ｐｏについての前記評価値は常にほぼ０となる。このことから、評価値がある一定の閾値を超えた場合には、ウォータマークによる付随情報が画像に付加されていると判別することができる。
【００２１】
上記の手順により、付随情報として、ウォータマークが付加されているか否かという２値の情報（１ビット）を付加することが可能となる。より多くの情報（複数ビット）を付加したい湯合には、画像全体を空間的に、時間的に、または空間的かつ時間的にｋ個の領域に分けて、それぞれ上記の操作を行なう等の処理方法により、２ｋ  通り（ｋビット）の情報を画像に付加することができる。
【００２２】
ウォータマークパターンとしては、例えば、Ｍ系列（最長符号系列）を用いて生成したものを利用することができる。Ｍ系列は、２値のシンボルからなる数列で、それぞれのシンボルの統計的分布は一定であり、符号相関は、原点で１、その他では−１／符号長となるものである。もちろん、Ｍ系列を用いる以外の方法でウォータマークパターンを生成してもよい。
【００２３】
ところで、画像データをデジタル的に記録し再生する場合、画像データは、そのままでは非常に情報量が多いため、画像データを圧縮するのが一般的である。画像データを圧縮する方法としては、ＪＰＥＧ（カラー静止画像の符号化方式）あるいはＭＰＥＧ（カラー動画像の符号化方式）等の高能率符号化方式が国際的に標準化され、実用化に至っている。これらの高能率符号化方式によって圧縮されたデータをビットストリームデータ、あるいは単にビットストリームと呼ぶ。また、対比する表現として、圧縮する前の画像および復号した後の画像をベースバンド画像、あるいは単にベースバンドと呼ぶ。
【００２４】
ところで、ベースバンド画像に対してウォータマークを付加しておくだけで、そのままベースバンド画像として配布されても、また、ＪＰＥＧ、ＭＰＥＧなどの高能率符号化を行なった後のビットストリームとして配布されても、どちらの場合についてもウォータマーク検出器を用意でき、簡単にウォータマークを検出できれば好都合である。つまり、高能率符号化などによって圧縮する前に付加したウォータマークが、ベースバンドでもビットストリームでも共通して検出に用いることが出来ることが好ましい。
【００２５】
図２０は、この場合の画像情報へのウォータマークの付加および検出の全体の流れを説明するための概念図である。
【００２６】
すなわち、図２０においては、入力端子１を通じてベースバンド画像情報がウォータマーク付加装置１０に供給されると共に、単位ウォータマーク入力端子２を通じて、付加しようとする単位ウォータマークｗｍの情報がウォータマーク付加装置１０に供給される。単位ウォータマークｗｍは、後で詳述するように、画像の一部の小領域に対応する大きさを有するものである。
【００２７】
この例のウォータマーク付加装置１０では、入力端子２からの単位ウォータマークｗｍを画像上の縦横に反復した状態の反復ウォータマークＷＭＲを、入力端子１からのベースバンド画像に付加する。反復ウォータマークＷＭＲを付加したベースバンド画像情報は、出力端子３を通じて出力される。
【００２８】
また、反復ウォータマークＷＭＲが付加されたベースバンド画像は、ＭＰＥＧ符号化器２０に供給されて、ＭＰＥＧ方式により高能率符号化されて、ビットストリームとされ、出力端子４を通じて出力される。この場合のＭＰＥＧ符号化における符号化ブロックの大きさは、単位ウォータマークｗｍに等しいか、あるいは、単位ウォータマークｗｍが、整数個の符号化ブロックに等しい関係となるようにされている。換言すれば、単位ウォータマークｗｍの大きさは、この符号化ブロックの大きさの整数倍の大きさに選定されるものである。
【００２９】
出力端子３から出力されたウォータマークＷＭＲが付加されたベースバンド画像の画像情報は、入力端子５を通じてウォータマークベースバンド検出装置３０に供給される。そして、ウォータマークベースバンド検出装置３０では、入力端子６からの単位ウォータマークｗｍ（入力端子２からの単位ウォータマークｗｍに等しい）に基づいて、ベースバンド画像情報から、後述のようにして、ウォータマークが検出され、その検出結果が出力端子７を通じて導出される。
【００３０】
また、出力端子４から出力されたウォータマークＷＭＲが付加されたビットストリームの画像情報は、入力端子８を通じてウォータマークビットストリーム検出装置４０に供給される。そして、ウォータマークビットストリーム検出装置４０では、入力端子６からの単位ウォータマークｗｍに基づいて、後述するようにして、ビットストリーム画像情報からウォータマークが検出され、その検出結果が出力端子９を通じて導出される。
【００３１】
図２０のウォータマーク付加装置１０は、従来は、図２１に示すように構成されている。このウォータマーク付加装置は、画像の縦横に単位ウォータマークｗｍが反復するウォータマークＷＭＲを画像に付加し、そのウォータマーク付加画像を出力する装置である。
【００３２】
この場合、画像入力端子１から入力される動画像データは、Ｉ（ｘ，ｙ，ｔ）（０≦ｘ＜ｗｉｄｔｈ（Ｉ），０≦ｙ＜ｈｅｉｇｈｔ（Ｉ））と表すことができ、また、単位ウォータマーク入力端子２から入力される単位ウォータマークｗｍは、Ｗ（ｘ，ｙ）（０≦ｘ＜Ｌ，０≦ｙ＜Ｌ）と表すことができる。
【００３３】
ただし、ｘ，ｙは、それぞれ、画像を構成する各画素の画像上の横方向および縦方向の座標を表す。また、ｔは画像単位の時間を表すものとする。また、図２３（Ｂ），（Ｃ）にも示すように、ｗｉｄｔｈ（Ｉ）およびｈｅｉｇｈｔ（Ｉ）は、それぞれ、画像の幅および高さである。また、Ｌ（自然数）は、図２３（Ａ）に示すように、単位ウォータマークｗｍの幅および高さである。このように、従来は、単位ウォータマークｗｍの幅および高さは、等しく選定されていた。
【００３４】
単位ウォータマーク入力端子２から入力された単位ウォータマークｗｍは、ウォータマーク反復器１０３に入力される。このウォータマーク反復器１０３の内部構成は、従来は、図２２に示すようなものとされている。
【００３５】
すなわち、図２２に示すように、ウォータマーク反復器１０３には、１枚の画像分に相当する反復ウォータマークＷＭＲの要素数を格納可能な容量のメモリ１０３１が設けられている。
【００３６】
メモリ１０３１への単位ウォータマークｗｍの書き込み時には、ｘ座標入力端子１１およびｙ座標入力端子１２を通じて、単位ウォータマークｗｍについての座標（ｘ，ｙ）の座標要素ｘ，ｙが入力される。すると、アドレス設定部１０３２および１０３３により、入力座標に対応したメモリアドレスｘ，ｙが設定され、入力端子２からの単位ウォータマークｗｍが、メモリ１０３１に書き込まれる。
【００３７】
この場合、アドレス設定部１０３２は、入力座標（ｘ，ｙ）に対応する一つのメモリ位置だけでなく、その位置から縦方向および横方向に、それぞれＬの１倍、２倍、３倍、……と、整数倍離れた位置を指定するアドレスをメモリ１０３１に供給する。したがって、メモリ１０３１には、図２３（Ｂ），（Ｃ）に示すように、単位ウォータマークｗｍが画像の縦方向および横方向に反復するウォータマークＷＭＲが書き込まれる。
【００３８】
つまり、単位ウォータマークの各値Ｗ（ｘ，ｙ）が入力される毎に、
ｉ％Ｌ＝ｘ  かつ  ｊ％Ｌ＝ｙ
（０≦ｉ＜ｗｉｄｔｈ（Ｉ），０≦ｊ＜ｈｅｉｇｈｔ（Ｉ））
を満たす全てのｉ，ｊ（ｉ，ｊは正の整数）の組について、反復後のウォータマークを保持するメモリｒｅｐｅａｔＷに、
ｒｅｐｅａｔＷ（ｉ，ｊ）＝Ｗ（ｘ，ｙ）
と書き込むものである。なお、この明細書で、「％」は剰余を求める演算子とする。
【００３９】
これを図２３を用いて説明する。図２３（Ａ）の単位ウォータマークＷ（ｘ，ｙ）が入力されたとき、ウォータマーク反復器１０３では、単位ウォータマークＷ（ｘ，ｙ）を繰返して、幅ｗｉｄｔｈ（Ｉ）、高さｈｅｉｇｈｔ（Ｉ）になるようした、図２３（Ｂ）のウォータマークＷＭＲが作られる。
【００４０】
図２３（Ｂ）は、画像の幅ｗｉｄｔｈ（Ｉ）、画像の高さｈｅｉｇｈｔ（Ｉ）が、それぞれ、単位ウォータマークｗｍの幅および高さＬで割り切れる場合であるが、割り切れない場合には、図２３（Ｃ）に示すようなものとなる。
【００４１】
以上のようにしてウォータマーク反復器１０３のメモリ１０３１に書き込まれたウォータマークＷＭＲは、画像入力端子４から入力される画像情報の各画素位置に応じた座標（ｘ，ｙ）が、順次に、ｘ座標入力端子１１およびｙ座標入力端子１２からメモリ１０３１に供給されることにより、読み出される。そして、読み出された反復ウォータマークＷＭＲは、ウォータマーク埋め込み器１０１に渡される。
【００４２】
一方、画像入力端子４から入力されたベースバンド画像情報は、ウォータマーク埋め込み器１０１だけでなく、埋め込み量判断器１０２にも送られる。埋め込み量判断器１０２は、入力された画像の特徴を調べ、付加しても画質に与える影響が少ないウォータマークの埋め込み量を画像の各場所について判断し、その量をウォータマーク埋め込み器１０１に伝える。
【００４３】
ウォータマーク埋め込み器１０１では、ウォータマーク反復器１０３から入力された反復ウォータマークＷＭＲに応じ、画像入力端子４から送られた画像にウォータマークを埋め込む。そのとき、埋め込み量判断器１０２から入力される、埋め込み量の情報に応じて埋め込み量が調節される。
【００４４】
ここで、埋め込み量判断器１０２は、ウォータマーク付加画像の画質を向上させるために必要なものであって、反復ウォータマークＷＭＲの付加および検出をするにあたって必須ではない。例えば、埋め込み量判断器１０２を用いずに、ウォータマークパターンによって付加することが示されている部分すべてに、同様の埋め込み量で付加しても、ウォータマークを検出することに問題は生じない。
【００４５】
ウォータマーク埋め込み器１０１で作られた反復ウォータマークＷＭＲが付加された画像情報は、ベースバンド画像出力端子３から出力される。
【００４６】
ここで、ウォータマーク埋め込み器１０１の動作を整理しておく。
【００４７】
入力画像Ｉ（ｘ，ｙ，ｔ）に対して埋め込み量判断器１０２で求められた埋め込み量をＤ（ｘ，ｙ，ｔ）とすると、埋め込み器１０１で、指定された量だけ埋め込む場合、ウォータマーク付加後の画像ｗｍＩ（ｘ，ｙ，ｔ）は、
ｗｍＩ（ｘ，ｙ，ｔ）＝Ｉ（ｘ，ｙ，ｔ）＋ｒｅｐｅａｔＷ（ｘ，ｙ）×Ｄ（ｘ，ｙ，ｔ）
となる。
【００４８】
すべての画素に、埋め込み量一定にウォータマークを付加するとすると、ウォータマーク付加後の画像ｗｍＩ（ｘ，ｙ，ｔ）は、定数Ｄを用い、
ｗｍＩ（ｘ，ｙ，ｔ）＝Ｉ（ｘ，ｙ，ｔ）＋ｒｅｐｅａｔＷ（ｘ，ｙ）×Ｄ
と表せる。
【００４９】
次に、ウォータマークベースバンド検出装置３０の従来の構成例を、図２４を用いて説明する。
【００５０】
図２４のウォータマークベースバンド検出装置３０は、ベースバンドの画像情報と、単位ウォータマークｗｍのパターンを読み込み、そのベースバンド画像情報に含まれるウォータマークの情報を出力する装置である。ウォータマークの情報とは、ウォータマークがその画像に存在すれば、その単位ウォータマークの検出された位置のシフト量で、ウォータマークがその画像に存在しなければ、ウォータマークなしという情報である。単位ウォータマークが検出された位置のシフト量は、比較する単位ウォータマークｗｍのパターンと、検出された画像上のウォータマーク中の単位ウォータマークパターンとのずれ量に等しい。
【００５１】
図２４に示すように、ベースバンド画像入力端子４から入力された画像Ｉ（ｘ，ｙ，ｔ）（図２５（Ａ）参照）は、折り畳み累積器３０１に入力されて、図２５（Ｂ）に示すように、単位ウォータマークの大きさで折り畳んで累積される。式で表すと、折り畳み累積された結果ｆｏｌｄＩ（ｘ，ｙ）は、次のように表される。
【００５２】
ｆｏｌｄＩ（ｘ，ｙ）＝ΣＩ（ｉ％Ｌ，ｊ％Ｌ，ｔ）
ｉ％Ｌ＝ｘ，ｊ％Ｌ＝ｙ
Ｌは単位ウォータマークｗｍの縦横の大きさなので、折り畳み累積結果ｆｏｌｄＩ（ｘ，ｙ）は単位ウォータマークｗｍと同じ大きさの空間情報である。
【００５３】
図２６は、折り畳み累積器３０１の従来の構成例を示すものである。この折り畳み累積器３０１は、少なくともＬ×Ｌ要素の単位ウォータマークｗｍ分の容量を有するメモリ３０１２と、累積加算器３０１１と、メモリ３０１２用のアドレス設定部３０１３および３０１４とからなる。
【００５４】
累積加算器３０１１には、画像入力端子５からの画像情報が入力されると共に、メモリ３０１２から読み出された単位ウォータマークｗｍ分の画像要素が供給されて、累積加算される。そして、この累積加算器３０１１の出力がメモリ３０１２に、アドレス設定部３０１３および３０１４により示されるアドレスに書き込まれると共に、読み出される。これにより、メモリ３０１２から、折り畳み累積画像出力が得られ、出力端子３３を通じて導出される。
【００５５】
この場合、入力端子３１および３２から入力される画像についての画素の座標（ｘ、ｙ）の座標要素ｘ、ｙが、それぞれアドレス設定部３０１３および３０１４に供給される。アドレス設定部３０１３では、ｘ％Ｌなる剰余を求める演算を行い、求めた剰余を、メモリ３０１２にそのアドレスｘとして供給し、また、アドレス設定部３０１４では、ｙ％Ｌなる剰余を求める演算を行い、求めた剰余を、メモリ３０１２に、そのアドレスｙとして供給する。このアドレッシングにより、累積加算器３０１１およびメモリ３０１２により、折り畳み累積が実行される。
【００５６】
このように単位ウォータマークの大きさ単位で折り畳んで累積する折り畳み累積を行う場合において、折り畳みの領域ＡＲが、図２７（Ａ）に示すように、画像上のウォータマークとの間にシフトがない場合には、折り畳み累積後の入力画像のウォータマークは、図２７（Ｂ）のように、単位ウォータマークｗｍと全く同じパターンになる。
【００５７】
また、折り畳みの領域ＡＲが、図２８（Ａ）に示すように、画像上のウォータマークとの間でシフトしたものとなっていた場合には、折り畳み累積後の入力画像のウォータマークは、図２８（Ｂ）のように、単位ウォータマークｗｍを分割したパターンを寄せ集めたようなパターンになる。
【００５８】
しかし、以上のように折り畳み累積を行うと、図２７のように、ウォータマークを付加したときとウォータマークを検出したときの間に画像シフトがない場合はもちろんのこと、図２８のように、ウォータマークを付加したときとウォータマークを検出したときの間にシフトがあった場合にも、累積されたウォータマーク成分は常に同じ位置であるため強調される上、累積回数が十分多くなると、累積された画像成分は相殺される。
【００５９】
そこで、入力画像Ｉ（ｘ，ｙ，ｔ）にウォータマークが含まれていれば、この折り畳み累積結果ｆｏｌｄＩ（ｘ，ｙ）と、単位ウォータマークＷ（ｘ，ｙ）をシフトしたものが必ず相関を持つ。この相関を以下のようにＦＦＴ（Ｆａｓｔ  Ｆｏｕｒｉｅｒ  Ｔｒａｎｓｆｏｒｍ）を用いて調べる。
【００６０】
すなわち、折り畳み累積器３０１の出力はＦＦＴ器３０２に入力され、Ｌ×Ｌ要素のＦＦＴが施された後に、畳み込み演算器３０３に送られる。また、単位ウォータマーク入力端子６から入力された単位ウォータマークｗｍ（＝Ｗ（ｘ，ｙ））も、ＦＦＴ器３０４で、Ｌ×Ｌ要素のＦＦＴが施された後に、畳み込み演算器３０３に送られる。
【００６１】
畳み込み演算器３０３は、上述の２つのＦＦＴ空間の係数に対して畳み込みを行ない、結果を逆ＦＦＴ器３０５に送る。畳み込み演算器３０３での畳み込みは、単位ウォータマークｗｍと、折り畳み後の画像とについて、空間領域での両者の間でのすべてのシフトの組合せの相関をとることに相当する。
【００６２】
逆ＦＦＴ器３０５では、畳み込み演算器３０３で得られた結果に対して逆ＦＦＴを行なうことにより空間領域に戻す。この逆ＦＦＴ器３０５での逆ＦＦＴで得られた全ての係数の出力を最大値検出器３０６および分散計算器３０７に供給する。
【００６３】
最大値検出器３０６では、逆ＦＦＴ器３０５での逆ＦＦＴで得られた係数のうちの最大係数を探し、最大係数とその座標を出力する。
【００６４】
そして、分散計算器３０７には、逆ＦＦＴ器３０５からのすべての係数と、最大値検出器３０６からの最大係数の座標値が入力され、係数の最大値以外の値の分散が計算される。
【００６５】
また、正規化器３０８には、分散計算器３０７で計算された分散と、最大値検出器３０６で見つけられた最大係数が入力される。正規化器３０８の出力は、最大係数を、分散で割ることによって正規化した値である。この値は、閾値比較器３０９に入力され、予め設定されている閾値と比較される。
【００６６】
閾値比較器３０９では、これに入力される最大値を分散で割った値が閾値よりも小さいときにはウォータマーク無しとみなされ、出力制御器３１０が制御されて、ウォータマーク無しという情報が、ウォータマーク情報出力端子６から出力される。
【００６７】
また、閾値比較器３０９では、これに入力される最大値を分散で割った値が閾値よりも大きければウォータマークが入っているとみなされ、出力制御器３１０が制御されて、最大値検出器３０６で検出された最大係数の座標、つまり、ウォータマークが入っていた位置のシフト量がウォータマーク情報出力端子６から出力される。
【００６８】
以上のように、図２４のウォータマークベースバンド検出装置においては、ＦＦＴ領域での畳み込みを用いてすべての可能なシフト量について相関を求め、その相関の最大値が、しかるべき基準より大きいかどうかでウォータマークが画像に付加されているかを判定している。
【００６９】
ウォータマークが画像に付加されていた場合に、そのシフト量が情報としてとり出力されるが、ウォータマークの付加時とウォータマークの検出時の間のシフト量であるので、絶対的な意味を持たせることはできない。しかし、次のように相対的な意味を持たせることができる。
【００７０】
あるウォータマークと、そのウォータマークの各要素に−１を掛けたウォータマーク（つまり反転パターン）との、２つのウォータマークを、１つの画像の異なった位相に付加しておく。また、図２４の最大値判定器３０６を最大値と最小値の両方を抽出する最大・最小値判定器に置き換え、逆ＦＦＴ器３０５からの係数のうちの最大値あるいは最小値およびその座標を求める。そして、求めた最大係数または最小係数を分散によって正規化した後、閾値比較器３０９で最大係数、最小係数の絶対値が、閾値より大きいかどうかを判定し、大きかった場合、その最大係数が検出されたウォータマークと、その最小係数が検出されたウォータマークとの２つのウォータマークのシフト量の差を情報とするのである。この情報は相対的なものであるので、画像にシフトが起こっても変化しない。
【００７１】
次に、ウォータマークビットストリーム検出装置４０の従来の構成例について、図２９を用いて説明する。
【００７２】
図２９において、ビットストリーム画像入力端子８には、ＭＰＥＧ符号化器２０で符号化された画像データのビットストリームが入力される。このウォータマークビットストリーム検出装置４０は、このビットストリーム画像と単位ウォータマークｗｍのパターンとの入力を受け、画像に付加されているウォータマークの情報を出力するものである。前述と同様に、ウォータマークの情報とは、ウォータマークがそのビットストリーム画像に存在すれば、そのウォータマークの検出された位置のシフト量であり、ウォータマークがそのビットストリーム画像に存在しなければ、ウォータマーク無しという情報である。
【００７３】
この図２９のウォータマークビットストリーム検出装置４０は、一部を除くと、図２４のウォータマークベースバンド検出装置３０とほぼ同様の構成となる。すなわち、図２４の折り畳み累積器３０１、ＦＦＴ器３０２、畳み込み演算器３０３、ＦＦＴ器３０４、逆ＦＦＴ器３０５、最大値検出器３０６、分散計算器３０７、正規化器３０８、閾値比較器３０９、出力制御器３１０は、図２９の折り畳み累積器４０１、ＦＦＴ器４０２、畳み込み演算器４０３、ＦＦＴ器４０４、逆ＦＦＴ器４０５、最大値検出器４０６、分散計算器４０７、正規化器４０８、閾値比較器４０９、出力制御器４１０に、それぞれ対応している。
【００７４】
図２４のウォータマークベースバンド検出装置３０と異なるのは、入力がベースバンド画像データからビットストリーム画像データに変わっている点と、新しく、折り畳み累積器３０１の前後に、ＤＣＴ（離散コサイン変換）係数抽出器４１１と逆ＤＣＴ器４１２が設けられている点である。以下、図２４のウォータマークベースバンド検出装置３０と異なる点を中心に説明する。
【００７５】
ビットストリーム入力端子８から入力されたビットストリーム画像データは、ＤＣＴ係数抽出器４１１で部分的に復号されて、ＩピクチャのＤＣＴ係数が抽出される。
【００７６】
ここで、ＤＣＴ係数に対して逆ＤＣＴを施して空間領域の画素値に変換すれば、以降は図２４のウォータマークベースバンド検出装置３０と同じ装置で検出を行なうことが可能である。しかし、計算量を減らすために、図２９のウォータマークビットストリーム検出装置４０では、ＤＣＴ係数抽出器４１１の出力は、折り畳み累積器４０１に供給されて、折り畳み累積が行われた後に、逆ＤＣＴ器４１２に供給されて、逆ＤＣＴが行なわれる。
【００７７】
ところで、ＭＰＥＧ２のような符号化方式の場合には、フレームとフィールドの２つのモードのＤＣＴを適応的に使う。図３０は、フレームモードのＤＣＴの場合のブロックを示し、また、図３１は、フィールドモードのＤＣＴの場合のブロックを示している。
【００７８】
すなわち、フレームモードにおいては、図３０（Ａ）のマクロブロック２０１は、図３０（Ｂ）に示す４個のＤＣＴブロック２０２，２０３，２０４，２０５に分けられる。また、フィールドモードにおいては、図３１（Ａ）のマクロブロック２０１は、図３１（Ｂ）に示す４個のＤＣＴブロック２０６，２０７，２０８，２０９に分けられる。
【００７９】
これら図３０、図３１で表されるように、フレームＤＣＴを行なうブロックと、フィールドＤＣＴを行なうブロツクの占める画素の範囲は互いに異なる。
【００８０】
しかし、縦に２つのＤＣＴブロックを合わせた領域が、横×縦＝８×１６画素の領域であるのは共通である。そこで、この例では、フレームとフィールドのどちらのモードでＤＣＴが行なわれた場合にも対応できるように、縦に２つのＤＣＴブロックを合わせた８×１６画素の領域を１つの単位の符号化ブロックとして扱う。
【００８１】
画像をこの符号化ブロック（ＤＣＴブロック）に分割したとき、横方向にｘ番目で、縦方向にｙ番目のブロック、つまり横８ｘ、縦１６ｙの座標の画素からはじまる２つのＤＣＴの係数の組を、フレームＤＣＴが使われているときと、フィールドＤＣＴが使われているときとに分けて、それぞれ、ＦｒＤＣＴ（ｘ，ｙ，ｔ）、ＦｉＤＣＴ（ｘ，ｙ，ｔ）とする。ただし、番号の数え方は０番目からはじまるものとする。
【００８２】
折り畳み累積器４０１では、これらのＤＣＴ係数をＤＣＴ係数抽出器４１１から受取り、折り畳み累積して逆ＤＣＴ器４１２に渡す。その折り畳み累積したものを、それぞれｆｏｌｄＦｒＤＣＴ（ｘ，ｙ）、ｆｏｌｄＦｉＤＣＴ（ｘ，ｙ）とすると、次の式で表される。
【００８３】
ｆｏｌｄＦｒＤＣＴ（ｘ，ｙ）＝ΣＦｒＤＣＴ（ｉ，ｊ，ｔ）
ｉ％（Ｌ／８）＝ｘ，ｊ％（Ｌ／１６）＝ｙ
ｆｏｌｄＦｉＤＣＴ（ｘ，ｙ）＝ΣＦｉＤＣＴ（ｉ，ｊ，ｔ）
ｉ％（Ｌ／８）＝ｘ，ｊ％（Ｌ／１６）＝ｙ
ただし、このＤＣＴ領域のまま折り畳み累積ができるために、Ｌ／８、Ｌ／１６は、割り切れる整数であるものとする。
【００８４】
例えば、図３２の場合、単位ウォータマークの大きさＬ＝３２である。この場合には、単位ウォータマークの範囲において、図３２（Ａ）に示すように、横方向に４（＝Ｌ／８）、縦方向に２（＝Ｌ／１６）の８×１６画素の符号化ブロックが存在している。この場合、Ｌ／８＝４、Ｌ／１６＝２となって割り切れるので、ＤＣＴ領域のまま折り畳み累積ができる。すなわち、単位ウォータマークのＬ×Ｌの領域の範囲内の８個の８×１６画素のブロックについて、図３２（Ｂ），（Ｃ）に示すように、フレームＤＣＴとフィールドＤＣＴとに分けて累積するのである。
【００８５】
逆ＤＣＴ器４１２では、折り返し累積器４０１の出力の累積されたＤＣＴ係数を逆ＤＣＴして空間領域に戻し、ＦＦＴ器４０２に送る。ＦＦＴ器４０２に送られる値は、要素数がＬ×Ｌで、それぞれが画素値の和であり、図２４の折り畳み累積器の出力と同じである。以降はべースバンドの場合と同じである。
【００８６】
以上のようなウォータマークの付加装置および検出装置においては、ＦＦＴ空間に写像し、ＦＦＴ空間における畳み込みによって空間上での探索を行なう方法により、ウォータマークの画像全体に渡ってのシフトを検出することを可能にしている。また、画像を折り畳み累積した後に、ＦＦＴをかけることにより、そのＦＦＴの演算量を減らすようにしている。
【００８７】
【発明が解決しようとする課題】
しかしながら、図２２に示した従来のウォータマーク付加装置１０のウォークマーク反復器１０３は、１画像分のウォータマークＷＭＲの情報をメモリ１０３１に格納しており、同一のパターンである単位ウォータマークの情報を、メモリ１０３１に複数組、保持しているという非効率な点があった。
【００８８】
この発明の第１の目的は、ウォータマーク反復器のメモリには、１つの単位ウォータマークの情報を格納することができるだけの、容量が小さいものを用いることができるウォータマークによる付随情報付加装置を提供することである。
【００８９】
また、上述した従来のウォータマーク付加方法による付加画像では、縦、横の画素数が同じサイズＬの単位ウォータマークを用いているため、ウォータマークを解析するというウォータマークシステムへの攻撃を行う者の労力が少なく、攻撃し易くなるおそれがあった。
【００９０】
また、１つのフレームまたはフィールド内で、同じ単位ウォータマークが単純に並んでいるため、ウォータマークシステムへ攻撃を行う者が、ウォータマークを比較的容易に消去することが可能であり、画像情報の不正コピーなどの不正利用を有効に防止できなくなるおそれがあった。
【００９１】
また、各フレームまたはフィールドに付加されるウォータマークが全く同じであるため、ただ単にウォータマークの付加された画像フレームまたはフィールドを、一定時間累積すれば、ウォータマークが現れて、ウォータマークが分かり、ウォータマークを簡単に解析できるおそれがあるという欠点もあった。
【００９２】
以上の点にかんがみ、この発明の第２の目的は、ウォータマークを消去する、あるいはウォータマークを解析するというウォータマークシステムへの攻撃を困難にすることを、ウォータマークの付加装置および検出装置を複雑にすることなく実現することである。
【００９３】
【課題を解決するための手段】
上記課題を解決するために、請求項１の発明による付随情報付加方法は、
画像の一部の画素からなる小領域に対応する大きさの単位ウォータマークを縦横に反復した反復ウォータマークを、画像に付加する付随情報付加方法において、
前記単位ウォータマークの大きさは、Ｎ×Ｍ（Ｎ，Ｍは正の整数）個の画素からなる小領域であり、
前記単位ウォータマークが横方向および／または縦方向に反復して並ぶ１行（または１列）毎に、前記単位ウォータマークを横方向（または縦方向）に一定量づつずらした反復ウォータマークを発生する反復ステップと、
前記反復ステップから発生された前記単位ウォータマークを、画像に付加する付加ステップと
を備えることを特徴とする。
【００９４】
上記の構成の請求項１の発明によれば、付随情報付加装置が備えるメモリは、単位ウォータマークの一つ分を格納する。そして、反復ステップでは、ウォータマークを付加しようとする画像の各画素位置座標値に基づいて、メモリから単位ウォータマークを反復して読み出す。メモリから読み出された単位ウォータマークは、付加ステップにおいて順次に画像情報に付加される。これにより、画像情報には、画像上、単位ウォータマークが縦横に反復するウォータマークが付加されることになる。
【００９５】
このように、請求項１の発明によれば、付随情報付加装置が備えるメモリは、単位ウォータマークの一つ分を格納できる容量であればよく、従来のように、１画像分（１フレーム分または１フィールド分）の反復ウォータマークパターンをメモリに格納しておく必要はない。
【００９６】
また、単位ウォータマークの縦横の大きさは、Ｎ＝Ｍのみではなく、Ｎ≠Ｍとすることができるので、単位ウォータマークの大きさは、従来のように、縦、横を等しくする必要はなく、独立して縦、横の大きさが自由に選定される。したがって、その分だけ、ウォータマークシステムを攻撃しようとする者のウォータマークの解析を複雑にすることができ、攻撃を受けにくくなる。
【００９９】
また、請求項１の発明によれば、１画像（フレームまたはフィールド）において、単位ウォータマークが行毎に、または列毎に、順次一定量づつずれて反復する反復ウォータマークが画像に付加されるので、ウォータマークシステムを攻撃しようとする者のウォータマークの解析を複雑にすることができ、攻撃を受けにくくなる。
【０１１０】
【発明の実施の形態】
以下、この発明の実施の形態を、図を参照しながら説明する。以下に説明する実施の形態においても、ウォータマークの付加および検出に関する情報の流れは、図２０に示したものと同一であるとしている。そこで、図面上、従来例として前述した部分と対応する部分には、同一番号および記号を付与し、実施の形態の説明の理解が容易となるようにする。
【０１１１】
［第１の実施の形態］
第１の実施の形態は、前記第１の目的を達成する付随情報付加装置の発明に関するもので、以下に説明する例は、従来の技術の欄で説明した図２１に示した従来のウォータマーク付加装置におけるウォータマーク反復器に必要なメモリ容量を減らしたウォータマーク付加装置であり、図２１と対応する部分には同一番号を付すものとする。
【０１１２】
図１は、この実施の形態の付随情報付加装置の例としてのウォータマーク付加装置のブロック図である。この図１において、図２１の従来例と異なる部分はウォータマーク反復器１０３の内部構成のみである。なお、このウォータマーク反復器１０３は、各請求項における反復ウォータマーク発生手段の一態様であり、各請求項における単位ウォータマーク反復手段に対応する。
【０１１３】
すなわち、この実施の形態のウォータマーク付加装置のウォータマーク反復器１０３は、一つの単位ウォータマークｗｍ分の要素数を格納できるだけの容量でよいメモリ５０１と、アドレス設定部５０２および５０３とからなる。この例の場合、単位ウォータマークｗｍは、図２３（Ａ）に示した縦×横＝Ｌ×Ｌ画素のものが用いられる。したがって、メモリ５０１は、Ｌ×Ｌ要素を格納できる容量を有すればよい。
【０１１４】
なお、この単位ウォータマークｗｍの大きさは、ＭＰＥＧ圧縮符号化における符号化ブロック（ＤＣＴブロック）の整数個分の大きさとされるのは、前述の従来例の欄で説明したのと同様である。また、ＭＰＥＧ２の場合には、図３０および図３１に示したフレームモードおよびフィールドモードの両方を考慮したとされるのも、前述と同様である。
【０１１５】
この第１の実施の形態の付加装置におけるウォータマーク反復器１０３の動作は、以下のようになる。
【０１１６】
すなわち、まず、メモリ５０１への単位ウォータマークｗｍの書き込み時には、単位ウォータマーク入力端子２から単位ウォータマークｗｍが入力されるとともに、ｘ座標入力端子１１およびｙ座標入力端子１２を通じて、単位ウォータマークｗｍについての座標（ｘ，ｙ）のｘ座標要素およびｙ座標要素が入力され、メモリ５０１に、単位ウォータマークｗｍが蓄えられる。なお、座標の原点は、この例の場合、画像上の左上隅とする。これは、単位ウォータマークｗｍについても同様である。この関係は、後述する全ての実施の形態においても同様であるとする。
【０１１７】
従来例のように、反復ウォータマークＷＭＲの全体をメモリ５０１上に構成することも可能であるが、図１のウォータマーク反復器１０３では、メモリ５０１上には、上述のように１つの単位ウォータマークｗｍを保持し、メモリ５０１の読み出しの仕方の制御によって、単位ウォータマークを反復した反復ウォータマークＷＭＲを得るようにする。
【０１１８】
すなわち、反復ウォータマークＷＭＲの読み出し時には、入力端子１１および１２を通じて１画像についての座標（ｘ，ｙ）のｘ座標要素およびｙ座標要素が入力され、アドレス設定部５０２および５０３では、ｘ％Ｌおよびｙ％Ｌ（Ｌは単位ウォータマークの縦および横の大きさであり、前述したように、「％」は剰余を求める演算子である）の演算がそれぞれ行われる。そして、アドレス設定部５０２および５０３からは、それぞれ演算結果の剰余がメモリ５０１のアドレスｘ，アドレスｙに供給されて、メモリ５０１の単位ウォータマークｗｍを繰り返し読み出すアドレス信号が発生する。
【０１１９】
つまり、アドレス設定部５０２および５０３によって、入力端子１１、１２から入力される読み出し座標（ｘ，ｙ）を、単位ウォータマークｗｍについての座標（ｘ％Ｌ，ｙ％Ｌ）に変換して、座標（ｘ，ｙ）のウォータマークを読み出すことを、単位ウォータマークｗｍが保持されているメモリ５０１上の座標（ｘ％Ｌ，ｙ％Ｌ）の値を読み出すことによって行う。
【０１２０】
この図１のウォータマーク付加装置によって付加されるウォータマークパターンは、図２３（Ｂ）に示した従来例とまったく同じ反復ウォータマークＷＭＲとなるので、このウォータマーク付加装置によって付加されたウォータマークの検出は、ベースバンドにおける検出であれば、図２４示したウォータマーク検出装置と同じ検出装置で、ビットストリームにおける検出であれば、図２９に示したウォータマーク検出装置と同じ検出装置で行なえる。
【０１２１】
以上説明したように、第１の実施の形態のウォータマーク付加装置によれば、反復ウォータマークＷＭＲを得るために、反復ウォータマークＷＭＲを付加する画像と同じ大きさではなく、単位ウォータマークｗｍと同じだけの少ない容量のメモリで済むという利点がある。
【０１２２】
なお、上述の説明では、単位ウォータマークｗｍの縦方向および横方向の反復単位は、単位ウォータマークｗｍの縦、横の大きさに等しいので、アドレス設定部５０２および５０３では、座標（ｘ，ｙ）の要素を、縦、横の大きさであるＬで除算するようにしたが、単位ウォータマークｗｍの大きさと、単位ウォータマークｗｍの縦方向および横方向の反復単位の大きさが異なる場合には、アドレス設定部５０２および５０３では、座標（ｘ，ｙ）の要素を、反復単位の値で除算した剰余を出力するものである。これは、ウォータマーク検出装置の折り畳み累積器のアドレス設定部についても同様である。
【０１２３】
［第２の実施の形態］
第２の実施の形態は、単位ウォータマークｗｍの縦横の大きさを従来のように等しくするのではなく、縦横の異なる値に独立に変えることにより、ウォータマークのパターンを分かり難くし、ウォータマークに対する攻撃を受け難くすることを特徴とする。
【０１２４】
すなわち、この第２の実施の形態では、単位ウォータマークｗｍは、図２（Ａ）に示すように、その横×縦＝Ｎ×Ｍ（Ｎ≠Ｍ）とする。したがって、反復ウォータマークＷＭＲのパターンは、図２（Ｂ）に示すようなものとなる。
【０１２５】
この場合の単位ウォータマークｗｍの大きさも、ＭＰＥＧ圧縮符号化における符号化ブロック（ＤＣＴブロック）の整数個分の大きさとされるのは、第１の実施の形態の場合と同様である。また、ＭＰＥＧ２の場合には、図３０および図３１に示したフレームモードおよびフィールドモードの両方を考慮したとされるのは、前述と同様である。
【０１２６】
この第２の実施の形態においても、システムの流れは、従来例と同様に、図２０のように表され、ウォータマーク付加装置１０、ウォータマークベースバンド検出装置３０およびウォータマークビットストリーム検出装置４０が主な要素である。
【０１２７】
この第２の実施の形態の場合のウォータマーク付加装置１０は、図１の第１の実施の形態のウォータマーク付加装置と、単位ウォータマークｗｍのサイズが異なる点およびそれに付随する点に違いがある。
【０１２８】
この第２の実施の形態のウォータマーク付加装置の構成例のブロック図を図３に示す。
【０１２９】
図１の第１の実施の形態のウォータマーク付加装置での単位ウォータマークｗｍは、従来例の単位ウォータマークと同じく、縦横が同じ大きさであった。これに対して、第２の実施の形態では、図２のように縦横の大きさが異なり、独立にとれるようにした単位ウォータマークｗｍを用いている。したがって、ウォータマーク付加装置の構成としては、第１の実施の形態のウォータマーク付加装置に対し、ウォータマーク反復器１０３の部分のみが異なっている。
【０１３０】
すなわち、図３のウォータマーク反復器１０３においては、単位ウォータマークｗｍの情報を格納するメモリは、単位ウォータマークｗｍの横、縦の要素、すなわち、Ｎ×Ｍ要素を格納するメモリ５０４とされる。そして、この第２の実施の形態のウォータマーク反復器１０３は、図１の第１の実施の形態のウォータマーク反復器１０３に対し、単位ウォータマークｗｍを読み出すときのアドレスの指定における剰余の取り方が異なっており、アドレス設定部５０５および５０６が設けられる。
【０１３１】
書き込み時には、単位ウォータマーク入力端子２から図２（Ａ）の単位ウォータマークｗｍが入力されるとともに、ｘ座標入力端子１１およびｙ座標入力端子１２を通じて、その単位ウォータマークｗｍについての座標（ｘ，ｙ）のｘ座標要素およびｙ座標要素が入力されて、メモリ５０４に、当該単位ウォータマークｗｍが蓄えられる。
【０１３２】
読み出し時には、第１の実施の形態の場合と同様にして、入力端子１１および１２を通じて１画像についての座標（ｘ，ｙ）のｘ座標要素およびｙ座標要素が入力されるが、アドレス設定部５０５および５０６においては、ｘ座標入力端子１１およびｙ座標入力端子１２からのｘ座標およびｙ座標を、それぞれ単位ウォータマークの横方向の大きさＮと縦方向の大きさＭで除算した剰余を求め、それをメモリ５０４のアドレスｘ，アドレスｙとして入力する。
【０１３３】
これにより、メモリ５０４からは、図２（Ａ）の単位ウォータマークｗｍが画像上の縦横に反復する図２（Ｂ）に示すような反復ウォータマークＷＭＲが得られ、ウォータマーク埋め込み器１０１で、入力端子１からの画像情報に埋め込まれる。
【０１３４】
この第２の実施の形態におけるウォータマーク検出装置３０および４０は、図３を用いて前述したような実施の形態のウォータマーク付加装置１０で付加したウォータマークを検出できるように、従来例のウォータマーク検出装置とは単位ウォータマークの取り方に違いがあり、折り畳み累積器の部分が異なっている。ただし、その差は、ベースバンドにおけるウォータマーク検出装置３０でも、ビットストリームにおけるウォータマーク検出装置４０でも同じであるので、以下の説明では、主にベースバンドにおけるウォータマーク検出装置３０について記述する。
【０１３５】
図４は、この第２の実施の形態におけるウォータマークベースバンド検出装置３０の全体の構成を示すブロック図であり、折り畳み累積器３０１の部分の内部構成を除いて、図２４示したウォータマークベースバンド検出装置３０と全く同様である。
【０１３６】
この図４の折り畳み累積器３０１では、単位ウォータマークｗｍの大きさに応じたＮ×Ｍの容量のメモリ６０１と、累積加算器６０２と、アドレス設定部６０３および６０４とを備える。
【０１３７】
この折り畳み累積器３０１では、累積するときのアドレス指定における剰余の取り方が、従来のＬ×Ｌの大きさの単位ウォータマークと異なっており、図４の折り畳み累積器３０１のアドレス設定部６０３および６０４では、横方向（ｘ方向）と縦方向（ｙ方向）について、それぞれ独立な値で剰余を取れるようになっている。
【０１３８】
すなわち、アドレス設定部６０３および６０４においては、ｘ座標入力端子３１およびｙ座標入力端子３２からのｘ座標およびｙ座標を、それぞれ単位ウォータマークの横方向の大きさＮと縦方向の大きさＭで除算した剰余を求め、それをメモリ６０１のアドレスｘ，アドレスｙとして入力する。これにより、Ｍ×Ｎの単位ウォータマークｗｍを単位とした折り畳み累積ができ、前述した従来例とほぼ同様にして、ウォータマークの検出ができる。
【０１３９】
前述もしたように、図２９のウォータマークビットストリーム検出装置４０における折り畳み累積器４０１も、図４の折り畳み累積器３０１と同様の構成とすることにより、図３のウォータマーク付加装置でウォータマークが付加され、ＭＰＥＧ符号化器２０で圧縮符号化された画像情報について、Ｎ×Ｍの大きさの単位ウォータマークｗｍ単位での、ＤＣＴ係数における折り畳み累積が可能になり、前述した従来例とほぼ同様にして、ウォータマークの検出ができる。
【０１４０】
この第２の実施の形態における不正利用防止システムは、上述した図３のウォータマーク付加装置を用いると共に、図４のウォータマークベースバンド検出装置や、ウォータマークビットストリーム検出装置を用いる。この不正利用防止システムには、不正コピー防止システムを含み、ウォータマーク検出装置で検出したウォータマークの情報に基づき、ベースバンド画像情報あるいはビットストリーム画像情報の再生や、複製記録への利用を行わせるかどうかを制御する。
【０１４１】
この第２の実施の形態の不正利用防止システムでは、単位ウォータマークの縦横の大きさが独立に選定されるため、ウォータマークのパターンが分かり難くなり、ウォータマークに対する攻撃を受け難くなるという利点がある。
【０１４２】
なお、上述の第２の実施の形態の説明では、単位ウォータマークｗｍの縦方向および横方向の反復単位は、単位ウォータマークｗｍの縦、横の大きさと等しくしたので、アドレス設定部５０５および５０６、また、アドレス設定部６０３および６０４では、座標（ｘ，ｙ）の要素を、横、縦の大きさであるＮ，Ｍで除算するようにしたが、単位ウォータマークｗｍの大きさと、単位ウォータマークｗｍの縦方向および横方向の反復単位の大きさが異なる場合には、アドレス設定部５０５および５０６、また、アドレス設定部６０３および６０４では、座標（ｘ，ｙ）の要素を、反復単位の値で除算した剰余を出力するものである。
【０１４３】
［第３の実施の形態］
第３の実施の形態は、１画像（１フレームまたは１フィールド）における単位ウォータマークの反復パターンを、従来のように整列させるのではなく、単位ウォータマークの横方向の反復からなる行の１行毎に、行方向（横方向）に一定量づつ順次ずらすことにより、ウォータマークパターンを分かり難くし、ウォータマークに対する攻撃を困難にしたものである。
【０１４４】
図５は、この第３の実施の形態の一例の反復ウォータマークＷＭＲを説明するためのものである。この例では、単位ウォータマークｗｍとしては、図５（Ａ）に示すように、第１の実施の形態と同様に、横×縦＝Ｌ×Ｌ画素分の大きさのものを用いる。そして、図５（Ｂ）に示すように、単位ウォータマークが反復する１行毎に、横方向に、順次、一定量ｄｘづつ、反復パターンがずれるようにして、反復ウォータマークＷＭＲを生成する。そして、この図５（Ｂ）の反復ウォータマークＷＭＲを、画像に付加するようにする。
【０１４５】
この第３の実施の形態においても、システムの流れは、従来例と同様に、図２０のように表され、ウォータマーク付加装置１０、ウォータマークベースバンド検出装置３０およびウォータマークビットストリーム検出装置４０が主な要素である。
【０１４６】
この第３の実施の形態のウォータマーク付加装置１０としては、図５（Ｂ）の反復ウォータマークの全体をメモリに格納しておき、入力端子１１および１２からのｘ座標入力およびｙ座標入力を、そのメモリアドレスとして、順次に読み出すようにすることも可能であるが、それでは、メモリ容量が大きいので、以下に説明する例では、図１に示した第１の実施の形態のウォータマーク付加装置を応用したものを用いる。
【０１４７】
この例の場合の第３の実施の形態のウォータマーク付加装置１０は、図１に示した第１の実施の形態のウォータマーク付加装置と、単位ウォータマークｗｍの反復の仕方に違いがある。すなわち、第１の実施の形態のウォータマーク付加装置での反復ウォータマークＷＭＲは、図２３に示したように画像上に縦横に単調に並んでいるが、第３の実施の形態のウォータマーク付加装置での反復ウォータマークＷＭＲの反復の仕方は、図５（Ｂ）のように、横方向には整列して並んでいるが、縦方向には順次ずれている。
【０１４８】
この場合の第３の実施の形態のウォータマーク付加装置１０の構成例を図６に示す。ウォータマーク付加装置１０の構成としては、第１の実施の形態のウォータマーク付加装置に対し、ウォータマーク反復器１０３の部分の内部構成のみが異なっている。
【０１４９】
図６のウォータマーク反復器１０３においては、メモリ５０１およびｙ座標のアドレス設定部５０３は、第１の実施の形態のそれらと全く同一であるが、ｘ座標のアドレス設定部が異なり、アドレス設定部５０７となっている。このアドレス設定部５０７では、単位ウォータマークを読み出すときの横方向のアドレスの指定が異なっていて、横方向の行毎のずれ量ｄｘを加味して、
ｘ％Ｌ＋ｄｘ×（ｙ／Ｌ）
なる演算を行い、メモリ５０１のアドレスｘを指定する。ただし、「／」は商を求める演算子であるとする。以下同様である。なお、単位ウォータマークｗｍのメモリ５０１への書き込みに関しては、第１の実施の形態と全く同一である。
【０１５０】
この第３の実施の形態のウォータマーク付加装置によって付加されたウォータマークは、図５（Ｂ），（Ｃ）に示されるように、縦方向には連続性が乱れている。しかし、ウォータマーク検出装置における折り畳み累積のときの単位ウォータマークに対応する折り畳み累積領域ＡＲを、図５（Ｃ）に示すように、行毎にｄｘづつ同様にずらすことにより、ウォータマークのパターンを累積して検出することが可能になる。この第３の実施の形態の場合のウォータマーク検出装置３０および４０について続いて説明する。
【０１５１】
第３の実施の形態の場合のウォータマーク検出装置は、図６のウォータマーク付加装置で付加したウォータマークを検出できるように、従来例のウォータマーク検出装置とは、折り畳み累積器において横方向のアドレスの指定が異なっている。その相違点は、ベースバンドにおけるウォータマーク検出装置３０でも、ビットストリームにおけるウォータマーク検出装置４０でも同じであるので、以下の説明では、主にベースバンドにおける検出装置３０について記述する。
【０１５２】
この第３の実施の形態の場合のウォータマークベースバンド検出装置３０の構成は、図２４（ビットストリームにおける検出では図２９）の従来例のウォータマーク検出装置に対し、折り畳み累積器３０１（ビットストリームにおける検出では折り畳み累積器４０１）の部分のみが異なっている。
【０１５３】
そこで、ここでは、第３の実施の形態の場合のウォータマークベースバンド検出装置３０の折り畳み累積器３０１の部分のみについて説明する。図７は、この折り畳み累積器３０１のブロック図である。この折り畳み累積器３０１は、Ｌ×Ｌの大きさの単位ウォータマーク分の要素を格納するメモリ６０５と、累積加算器６０２と、アドレス設定部６０６および６０７とからなる。
【０１５４】
この折り畳み累積器３０１において、メモリアドレスｘのアドレス設定部６０６では、入力端子３１および３２の両方のｘ座標入力およびｙ座標入力を用いて、
ｘ％Ｌ＋ｄｘ×（ｙ／Ｌ）
なる演算を行い、メモリ６０５のアドレスｘを指定する。また、メモリアドレスｙのアドレス設定部６０７では、入力端子３２からのｙ座標入力のみを用いて、
ｙ％Ｌ
なる演算を行い、メモリ６０５のアドレスｙを指定する。
【０１５５】
このようにして、折り畳み累積器３０１では、メモリ６０５のアドレス指定を行って、図５（Ｃ）に示す折り畳み累積領域ＡＲのように、行毎にｄｘづつ同様にずらした単位ウォータマーク単位の領域で折り畳み累積をすることにより、ウォータマークのパターンを累積してウォータマークを検出することが可能になる。
【０１５６】
この第３の実施の形態における不正利用防止システムは、上述した図６のウォータマーク付加装置を用いると共に、図７のウォータマークベースバンド検出装置や、ウォータマークビットストリーム検出装置を用いる。この不正利用防止システムには、不正コピー防止システムを含み、ウォータマーク検出装置で検出したウォータマークの情報に基づき、ベースバンド画像情報あるいはビットストリーム画像情報の再生や、複製記録への利用を行わせるかどうかを制御する。
【０１５７】
この第３の実施の形態の不正利用防止システムでは、反復ウォータマークＷＭＲのパターンの横方向のずれの量が分からない限り、フレーム内の累積による攻撃ができないという強みを持つ。
【０１５８】
なお、この第３の実施の形態においても、単位ウォータマークｗｍの縦方向および横方向の反復単位と、単位ウォータマークｗｍの縦、横の大きさとが等しくない場合には、アドレス設定部５０３および５０７、また、アドレス設定部６０６および６０７での演算におけるＬの代わりに、その反復単位の大きさを用いるものである。
【０１５９】
また、上述の第３の実施の形態の説明では、単位ウォータマークｗｍの大きさは、縦と横の大きさが等しいＬ×Ｌとしたが、第２の実施の形態のように、単位ウォータマークｗｍの大きさを、Ｍ×Ｎとすることもできる。その場合には、単位ウォータマークｗｍの大きさについての自由度が増加した分、ウォータマークに対する攻撃にさらに強くなることが期待できる。
【０１６０】
［第４の実施の形態］
第４の実施の形態は、１画像（１フレーム）における単位ウォータマークの反復パターンを、従来のように整列させるのではなく、縦方向の単位ウォータマークの反復からなる列の１列毎に、列方向（縦方向）に順次ずらすことにより、ウォータマークパターンを分かり難くし、ウォータマークに対する攻撃を困難にしたものである。
【０１６１】
図８は、この第４の実施の形態の一例の反復ウォータマークＷＭＲを説明するためのものである。すなわち、この例では、単位ウォータマークｗｍとしては、図８（Ａ）に示すように、横×縦＝Ｌ×Ｌ画素分の大きさのものを用いる。そして、図８（Ｂ）に示すように、単位ウォータマークが反復する１列毎に、縦方向に、順次、一定量ｄｙづつ、反復パターンがずれるようにして、反復ウォータマークＷＭＲを生成する。そして、この図８（Ｂ）の反復ウォータマークＷＭＲを、画像に付加するようにする。
【０１６２】
この第４の実施の形態においても、システムの流れは、従来例と同様に、図２０のように表され、ウォータマーク付加装置１０、ウォータマークベースバンド検出装置３０およびウォータマークビットストリーム検出装置４０が主な要素である。
【０１６３】
この第４の実施の形態のウォータマーク付加装置１０としては、図８（Ｂ）の反復ウォータマークの全体をメモリに格納しておき、入力端子１１および１２からのｘ座標入力およびｙ座標入力を、そのメモリアドレスとして、順次に読み出すようにすることも可能であるが、それでは、メモリ容量が大きいので、以下に説明する例では、図１に示した第１の実施の形態のウォータマーク付加装置を応用したものを用いる。
【０１６４】
この例の場合の第４の実施の形態のウォータマーク付加装置１０は、図１に示した第１の実施の形態のウォータマーク付加装置と、単位ウォータマークｗｍの反復の仕方に違いがある。すなわち、第１の実施の形態のウォータマーク付加装置での反復ウォータマークＷＭＲは、図２３に示したように画像上に縦横に単調に並んでいるが、第４の実施の形態のウォータマーク付加装置での反復ウォータマークＷＭＲの反復の仕方は、図８（Ｂ）のように、縦方向には整列して並んでいても、横方向には順次ずれている。
【０１６５】
この場合の第４の実施の形態のウォータマーク付加装置１０の構成例を図９に示す。ウォータマーク付加装置１０の構成としては、第１の実施の形態のウォータマーク付加装置に対し、ウォータマーク反復器１０３の部分の内部構成のみが異なっている。
【０１６６】
図９のウォータマーク反復器１０３においては、メモリ５０１およびｘ座標のアドレス設定部５０２は、第１の実施の形態のそれらと全く同一であるが、ｙ座標のアドレス設定部が異なり、アドレス設定部５０８となっている。このアドレス設定部５０８では、単位ウォータマークを読み出すときの縦方向のアドレスの指定が異なっていて、縦方向の行毎のずれ量ｄｙを加味して、
ｙ％Ｌ＋ｄｙ×（ｘ／Ｌ）
なる演算を行い、メモリ５０１のアドレスｙを指定する。なお、単位ウォータマークｗｍのメモリ５０１への書き込みに関しては、第１の実施の形態と全く同一である。
【０１６７】
この第４の実施の形態のウォータマーク付加装置によって付加されたウォータマークは、図８（Ｂ），（Ｃ）に示されるように、縦方向には連続性が乱れている。しかし、ウォータマーク検出装置における折り畳み累積のときの単位ウォータマークに対応する領域を、図８（Ｃ）に示すＡＲのように、１列毎にｄｙづつ同様にずらすことにより、ウォータマークのパターンを累積して検出することが可能になる。この第４の実施の形態の場合のウォータマーク検出装置３０および４０について、続いて説明する。
【０１６８】
第４の実施の形態の場合のウォータマーク検出装置は、図９のウォータマーク付加装置で付加したウォータマークを検出できるように、従来例のウォータマーク検出装置とは、折り畳み累積器において縦方向のアドレスの指定が異なっている。その相違点は、ベースバンドにおけるウォータマーク検出装置３０でも、ビットストリームにおけるウォータマーク検出装置４０でも同じであるので、以下の説明では、主にベースバンドにおける検出装置３０について記述する。
【０１６９】
この第４の実施の形態の場合のウォータマークベースバンド検出装置３０の構成は、図２４（ビットストリームにおける検出では図２９）の従来例のウォータマーク検出装置に対し、折り畳み累積器３０１（ビットストリームにおける検出では折り畳み累積器４０１）の部分のみが異なっている。
【０１７０】
そこで、ここでは、第４の実施の形態の場合のウォータマークベースバンド検出装置３０の折り畳み累積器３０１の部分のみについて説明する。図１０は、この折り畳み累積器３０１のブロック図である。この折り畳み累積器３０１は、Ｌ×Ｌの大きさの単位ウォータマーク分の要素を格納するメモリ６０５と、累積加算器６０２と、アドレス設定部６０８および６０９とからなる。
【０１７１】
この折り畳み累積器３０１において、メモリアドレスｘのアドレス設定部６０８では、入力端子３１からのｘ座標入力のみを用いて、
ｘ％Ｌ
なる演算を行い、メモリ６０５のアドレスｘを指定する。また、メモリアドレスｙのアドレス設定部６０９では、入力端子３１および３２の両方のｘ座標入力およびｙ座標入力を用いて、
ｙ％Ｌ＋ｄｙ×（ｘ／Ｌ）
なる演算を行い、メモリ６０５のアドレスｙを指定する。
【０１７２】
このようにして、折り畳み累積器３０１では、メモリ６０５のアドレス指定を行って、図８（Ｃ）に示すＡＲのように、列毎に一定量ｄｙづつ同様にずらした単位ウォータマーク分の領域単位で折り畳み累積をすることにより、ウォータマークのパターンを累積してウォータマークを検出することが可能になる。
【０１７３】
この第４の実施の形態における不正利用防止システムは、上述した図９のウォータマーク付加装置を用いると共に、図１０のウォータマークベースバンド検出装置や、ウォータマークビットストリーム検出装置を用いる。この不正利用防止システムには、不正コピー防止システムを含み、ウォータマーク検出装置で検出したウォータマークの情報に基づき、ベースバンド画像情報あるいはビットストリーム画像情報の再生や、複製記録への利用を行わせるかどうかを制御する。
【０１７４】
この第４の実施の形態の不正利用防止システムでは、反復ウォータマークＷＭＲのパターンの縦方向のずれの量が分からない限り、フレーム内の累積による攻撃ができないという強みを持つ。
【０１７５】
なお、この第４の実施の形態においても、単位ウォータマークｗｍの縦方向および横方向の反復単位と、単位ウォータマークｗｍの縦、横の大きさとが等しくない場合には、アドレス設定部５０２および５０８、また、アドレス設定部６０８および６０９での演算におけるＬの代わりに、その反復単位の大きさを用いるものである。
【０１７６】
また、上述の第４の実施の形態の説明では、単位ウォータマークｗｍの大きさは、縦と横の大きさが等しいＬ×Ｌとしたが、第２の実施の形態のように、単位ウォータマークｗｍの大きさを、Ｍ×Ｎとすることもできる。その場合には、単位ウォータマークｗｍの大きさについての自由度が増加した分、ウォータマークに対する攻撃にさらに強くなることが期待できる。
【０１７７】
［第５の実施の形態］
第５の実施の形態は、１画像（１フレームまたは１フィールド）を単位とした時間方向に順次ずれている反復ウォータマークＷＭＲを、画像情報に付加し、検出するようにすることにより、ウォータマークパターンを分かり難くし、ウォータマークに対する攻撃を困難にしたものである。
【０１７８】
図１１は、この第５の実施の形態の一例を説明するためのものである。すなわち、この例では、単位ウォータマークｗｍとしては、図１１に示すように、横×縦＝Ｌ×Ｌ画素分の大きさのものを用い、従来と同様に、この単位ウォータマークｗｍを縦方向および横方向に整列して反復させた反復ウォータマークＷＭＲを得る。しかし、図１１（Ａ），（Ｂ），（Ｃ）に示すように、一定の時間ごとに、反復ウォータマークＷＭＲを画像に対して、横方向にｔｘ、縦方向にｔｙづつ順次にずらして付加するようにする。
【０１７９】
図１１の例は、１フレームごとに、横方向にｔｘ、縦方向にｔｙづつ順次にずらした場合である。すなわち、反復ウォータマークＷＭＲの画像に対してのずれ量は、図１１（Ａ）に示す時間ｔ＝０の時点では、ゼロであり、図１１（Ｂ）に示す時間ｔ＝１の時点では、横方向に一定量ｔｘ、縦方向に一定量ｔｙであり、また、図１１（Ｃ）に示す時間ｔ＝２の時点では、横方向に２ｔｘ、縦方向に２ｔｙである。時間ｔ＝ｎでは、横方向にｎ・ｔｘ、縦方向のｎ・ｔｙのずれ量となる。
【０１８０】
この第５の実施の形態においても、システムの流れは、従来例と同様に、図２０のように表され、ウォータマーク付加装置１０、ウォータマークベースバンド検出装置３０およびウォータマークビットストリーム検出装置４０が主な要素である。
【０１８１】
この第５の実施の形態においても、ウォータマーク付加装置は、メモリ容量を少なくするため、図１に示した第１の実施の形態のウォータマーク付加装置を応用したものを用いる。
【０１８２】
この第５の実施の形態のウォータマーク付加装置１０は、図１に示した第１の実施の形態のウォータマーク付加装置と、単位ウォータマークｗｍの反復の仕方に違いがある。すなわち、第１の実施の形態のウォータマーク付加装置における反復ウォータマークパターンＷＭＲは時間によって変化しないが、第５の実施の形態のウォータマーク付加装置で生成する反復ウォータマークパターンＷＭＲは、図１１に示したように、時間によって順次ずれている。
【０１８３】
この場合の第５の実施の形態のウォータマーク付加装置１０の構成例を図１２に示す。ウォータマーク付加装置１０の構成としては、第１の実施例のウォータマーク付加装置に対し、ウォータマーク反復器１０３の部分の内部構成のみが異なっている。
【０１８４】
図１２のウォータマーク反復器においては、メモリ５０１を用いること、および単位ウォータマークｗｍのメモリ５０１への書き込みは、図１の第１の実施の形態のウォータマーク反復器と同じであるが、単位ウォータマークｗｍを読み出すときの縦、横、両方向のアドレスの指定が異なっている。
【０１８５】
すなわち、アドレス設定部５０９および５１０は、単位ウォータマークｗｍの読み出し時には、座標ｘ，座標ｙ，および時間ｔの３つを使って、アドレス設定部５０９では、
ｘ％Ｌ＋ｔｘ×（ｔ／Ｃ）
なる演算を行い、メモリ５０１のアドレスｘを指定する。また、アドレス設定部５１０では、
ｙ％Ｌ＋ｔｙ×（ｔ／Ｃ）
なる演算を行い、メモリ５０１のアドレスｙを指定する。ここで、Ｃは、反復ウォータマークＷＭＲを、ずらす時間周期を決めるための任意の定数（Ｃは１以上の整数）であり、例えばフレーム数あるいはフィールド数することもできる。
【０１８６】
この第５の実施の形態のウォータマーク付加装置によって付加されたウォータマークは、図１１（Ａ），（Ｂ），（Ｃ）に順次に示されるように、時間方向で同じパターンになっておらず、一定方向にずれている。しかし、折り畳み累積のときにも、折り畳み累積の領域も、同様にずらすことによりウォータマークのパターンを累積して検出することが可能になる。この第５の実施の形態の場合のウォータマーク検出装置３０および４０について、続いて説明する。
【０１８７】
第５の実施の形態の場合のウォータマーク検出装置は、図９のウォータマーク付加装置で付加したウォータマークを検出できるように、従来例のウォータマーク検出装置とは、折り畳み累積器において縦方向のアドレスの指定が異なっている。その相違点は、ベースバンドにおけるウォータマーク検出装置３０でも、ビットストリームにおけるウォータマーク検出装置４０でも同じであるので、以下の説明では、主にベースバンドにおける検出装置３０について記述する。
【０１８８】
この第５の実施の形態の場合のウォータマークベースバンド検出装置３０の構成は、図２４（ビットストリームにおける検出では図２９）の従来例のウォータマーク検出装置に対し、折り畳み累積器３０１（ビットストリームにおける検出では折り畳み累積器４０１）の部分のみが異なっている。
【０１８９】
そこで、ここでは、第５の実施の形態の場合のウォータマークベースバンド検出装置３０の折り畳み累積器３０１の部分のみについて説明する。図１３は、この折り畳み累積器３０１のブロック図である。この折り畳み累積器３０１は、Ｌ×Ｌの大きさの単位ウォータマーク分の要素を格納するメモリ６０５と、累積加算器６０２と、アドレス設定部６１０および６１１とからなる。
【０１９０】
この折り畳み累積器３０１において、メモリアドレスｘのアドレス設定部６１０では、入力端子３１からのｘ座標入力と、入力端子３４からの時間ｔの情報を用いて、
ｘ％Ｌ＋ｔｘ×（ｔ／Ｃ）
なる演算を行い、メモリ６０５のアドレスｘを指定する。また、メモリアドレスｙのアドレス設定部６１１では、入力端子３１からのｙ座標入力と、入力端子３４からの時間ｔの情報を用いて、
ｙ％Ｌ＋ｔｙ×（ｔ／Ｃ）
なる演算を行い、メモリ６０５のアドレスｙを指定する。
【０１９１】
このようにして、折り畳み累積器３０１では、メモリ６０５のアドレス指定を行って、一定の時間ごとに、一定量づつ縦および横にずれた単位ウォータマーク分の領域単位で折り畳み累積をすることにより、ウォータマークのパターンを累積してウォータマークを検出することが可能になる。
【０１９２】
この第５の実施の形態における不正利用防止システムは、上述した図１２のウォータマーク付加装置を用いると共に、図１３のウォータマークベースバンド検出装置や、ウォータマークビットストリーム検出装置を用いる。この不正利用防止システムには、不正コピー防止システムを含み、ウォータマーク検出装置で検出したウォータマークの情報に基づき、ベースバンド画像情報あるいはビットストリーム画像情報の再生や、複製記録への利用を行わせるかどうかを制御する。
【０１９３】
この第５の実施の形態の不正利用防止システムでは、反復ウォータマークＷＭＲの時間方向のずれの量が分からない限り、フレーム間の累積による攻撃ができないという強みを持つ。
【０１９４】
ここで、前記定数Ｃの値を１とすれぼ、各フレーム毎に付加する反復ウォータマークパターンＷＭＲが変化していく。この定数Ｃ＝１の値は、ベースバンドに対して検出を行なう場合に適している。また、定数Ｃの値を１５とすれば、１５フレーム毎に付加する反復ウォータマークパターンＷＭＲが変化していく。この定数Ｃの値は、ＭＰＥＧ圧縮符号化におけるＧＯＰ（Ｇｒｏｕｐ  Ｏｆ  Ｐｉｃｔｕｒｅ）の枚数が１５枚であるビットストリームから検出を行なう場合に適している。
【０１９５】
この第５の実施の形態に、前記第２の実施の形態〜第４の実施の形態の方法を組み合わせて使うと、更に攻撃に強くなる。例えば、第２の実施の形態と、第３の実施の形態と、第５の実施の形態との方法を組み合わせて使った場合、図１４のウォータマーク反復器を用いたウォータマーク付加装置と、図１５の折り畳み累積器を用いたウォータマーク検出装置とによる不正利用防止システムが実現できる。
【０１９６】
図１４のウォータマーク反復器においては、Ｎ×Ｍ要素を格納することが可能なメモリ５０４と、アドレス設定部５１１および５１２とを用いる。単位ウォータマークｗｍのメモリ５０４への書き込みは、前述の第２の実施の形態の場合と同様であるが、メモリ５０４から単位ウォータマークｗｍを読み出すときの縦、横、両方向のアドレスの指定が異なっている。
【０１９７】
すなわち、単位ウォータマークｗｍの読み出し時には、アドレス設定部５１１は、入力端子１１、１２、１３からの座標ｘ，座標ｙ，および時間ｔの３つを使って、
ｘ％Ｎ＋ｄｘ×（ｙ／Ｃ）＋ｔｘ×（ｔ／Ｃ）
なる演算を行い、メモリ５０４のアドレスｘを指定する。また、アドレス設定部５１２では、
ｙ％Ｍ＋ｔｙ×（ｔ／Ｃ）
なる演算を行い、メモリ５０４のアドレスｙを指定する。
【０１９８】
また、図１５の折り畳み累積器３０１においては、Ｎ×Ｍ要素を格納することが可能なメモリ６０１と、アドレス設定部６１２および６１３とを用いる。そして、メモリアドレスｘのアドレス設定部６１２では、入力端子３１からのｘ座標入力と、入力端子３２からのｙ座標入力と、入力端子３４からの時間ｔの情報を用いて、
ｘ％Ｎ＋ｄｘ×（ｙ／Ｃ）＋ｔｘ×（ｔ／Ｃ）
なる演算を行い、メモリ６０１のアドレスｘを指定する。また、メモリアドレスｙのアドレス設定部６１３では、入力端子３１からのｙ座標入力と、入力端子３４からの時間ｔの情報を用いて、
ｙ％Ｍ＋ｔｙ×（ｔ／Ｃ）
なる演算を行い、メモリ６０１のアドレスｙを指定する。
【０１９９】
このシステムでは、単位ウォータマークの縦横の大きさ、フレーム内での横方向のずれ量、フレーム間での縦横のずれ量が分からない限り、フレーム内およびフレーム間の累積による攻撃ができないという強みを持つ。また、ウォータマークの付加および検出装置については、メモリのアクセスのしかたが変わるだけで装置を複雑にすることなく実現している。
【０２００】
なお、上述の第５の実施の形態においては、一定の時間Ｃごとに、反復ウォータマークＷＭＲのパターン全体を縦および横の両方向にずらすようにしたが、一定の時間Ｃごとに、縦方向のみ、あるいは横方向にのみ、それぞれずらすようにしてもよい。
【０２０１】
また、この第５の実施の形態においても、単位ウォータマークｗｍの縦方向および横方向の反復単位と、単位ウォータマークｗｍの縦、横の大きさとが等しくない場合には、アドレス設定部５０９、５１０、５１１、５１２、また、アドレス設定部６１０、６１１、６１２、および６１３での演算におけるＬ、Ｎ，Ｍの代わりに、その反復単位の大きさを用いるものである。
【０２０２】
なお、上述した第２〜第５の各実施の形態のそれぞれのウォータマーク検出装置において、入力端子６からの入力を単位ウオータマークｗｍでなく、単位ウォータマークｗｍをＦＦＴしたものに変更して、単位ウォータマークｗｍ用のＦＦＴ器３０４を省略してもよい。
【０２０３】
【発明の効果】
以上で説明したように、この発明によれば、単位ウォータマークをメモリの上で反復する必要がなく、メモリには、単位ウォータマークのみを蓄積すればよいので、従来例と比べて使用するメモリが少なくて済む。
【０２０４】
また、単位ウォータマークの縦、横の大きさについての自由度が従来に比べて増加するため、ウォータマークに対する攻撃は困難になる。
【０２０５】
また、反復ウォータマークにおける単位ウォータマークの並び、および反復ウォータマーク自身について、従来よりも複数の自由度が加えられるので、ウォータマークに対する攻撃は困難になる。
【０２０６】
しかも、自由度の実現はウォータマーク付加装置およびウォータマーク検出装置を、わずかに変更するだけで、装置を複雑にすることなく実現することができるという効果もある。
【図面の簡単な説明】
【図１】この発明による付随情報付加装置の第１の実施の形態のブロック図である。
【図２】この発明による付随情報付加装置の第２の実施の形態を説明するための図である。
【図３】この発明による付随情報付加装置の第２の実施の形態のブロック図である。
【図４】第２の実施の形態の付随情報付加装置に対応する付随情報検出装置の一形態のブロック図である。
【図５】この発明による付随情報付加装置の第３の実施の形態を説明するための図である。
【図６】この発明による付随情報付加装置の第３の実施の形態のブロック図である。
【図７】第３の実施の形態の付随情報付加装置に対応する付随情報検出装置の一形態のブロック図である。
【図８】この発明による付随情報付加装置の第４の実施の形態を説明するための図である。
【図９】この発明による付随情報付加装置の第４の実施の形態のブロック図である。
【図１０】第４の実施の形態の付随情報付加装置に対応する付随情報検出装置の一形態のブロック図である。
【図１１】この発明による付随情報付加装置の第５の実施の形態を説明するための図である。
【図１２】この発明による付随情報付加装置の第５の実施の形態のブロック図である。
【図１３】第５の実施の形態の付随情報付加装置に対応する付随情報検出装置の一形態のブロック図である。
【図１４】この発明による付随情報付加装置の第５の実施の形態の他の例のブロック図である。
【図１５】図１４の第５の実施の形態の付随情報付加装置に対応する付随情報検出装置の一形態のブロック図である。
【図１６】画像に埋め込むウォータマークを説明するための図である。
【図１７】画像に埋め込むウォータマークを説明するための図である。
【図１８】画像に埋め込むウォータマークを説明するための図である。
【図１９】画像に埋め込むウォータマークを説明するための図である。
【図２０】付随情報付加装置および付随情報検出装置を含むシステム構成の流れを説明するための図である。
【図２１】付随情報付加装置のブロック図である。
【図２２】従来のウォータマーク反復器のブロック図である。
【図２３】従来の反復ウォータマークの生成を説明するための図である。
【図２４】ウォータマークベースバンド検出装置のブロック図である。
【図２５】ウォータマークを検出するための折り畳み累積処理を説明するための図である。
【図２６】折り畳み累積器の一例のブロック図である。
【図２７】折り畳み累積の累積結果を説明するための図である。
【図２８】折り畳み累積の累積結果を説明するための図である。
【図２９】ウォータマークビットストリーム検出装置のブロック図である。
【図３０】ＭＰＥＧ圧縮符号化のフレームモードの時の符号化ブロック（ＤＣＴブロック）を説明するための図である。
【図３１】ＭＰＥＧ圧縮符号化のフィールドモードの時の符号化ブロック（ＤＣＴブロック）を説明するための図である。
【図３２】単位ウォータマークと符号化ブロックの大きさとの関係を説明するための図である。
【符号の説明】
１０…ウォータマーク付加装置、２０…ＭＰＥＧ符号化器、３０…ウォータマークベースバンド検出装置、４０…ウォータマークビットストリーム検出装置、１０１…ウォータマーク埋め込み器、１０２…埋め込み量判断器、１０３…ウォータマーク反復器、３０１…折り畳み累積器、３０２…ＦＦＴ器、３０３…畳み込み演算器、３０４…ＦＦＴ器、３０５…逆ＦＦＴ器、４１１…ＤＣＴ係数抽出器、４１２…逆ＤＣＴ器、５０１，５０４，６０１，６０５…メモリ、６０２…累積加算器、５０２，５０３，５０５〜５１２…アドレス設定部、６０３，６０４，６０６〜６１３…アドレス設定部
【図１】
0003596590.tif 000002
【図２】
0003596590.tif 000003
【図３】
0003596590.tif 000004
【図４】
0003596590.tif 000005
【図５】
0003596590.tif 000006
【図６】
0003596590.tif 000007
【図７】
0003596590.tif 000008
【図８】
0003596590.tif 000009
【図９】
0003596590.tif 000010
【図１０】
0003596590.tif 000011
【図１１】
0003596590.tif 000012
【図１２】
0003596590.tif 000013
【図１３】
0003596590.tif 000014
【図１４】
0003596590.tif 000015
【図１５】
0003596590.tif 000016
【図１６】
0003596590.tif 000017
【図１７】
0003596590.tif 000018
【図１８】
0003596590.tif 000019
【図１９】
0003596590.tif 000020
【図２０】
0003596590.tif 000021
【図２１】
0003596590.tif 000022
【図２２】
0003596590.tif 000023
【図２３】
0003596590.tif 000024
【図２４】
0003596590.tif 000025
【図２５】
0003596590.tif 000026
【図２６】
0003596590.tif 000027
【図２７】
0003596590.tif 000028
【図２８】
0003596590.tif 000029
【図２９】
0003596590.tif 000030
【図３０】
0003596590.tif 000031
【図３１】
0003596590.tif 000032
【図３２】
0003596590.tif 000033