(57)【特許請求の範囲】
【請求項１】
平行移動および非可逆圧縮符号化が施されても、特定周波数上に集中する透かし情報が残存しやすい透かし埋め込み画像を生成するための電子透かし埋め込み方法において、
前記透かし埋め込み画像がどのように平行移動されたとしても、圧縮単位ブロックのサイズおよび平行移動での移動範囲に基づき、圧縮単位ブロックに対して、透かし情報が水平もしくは垂直方向のみにしかずれないような透かし埋め込み箇所が画面内に存在するように、圧縮ブロックに対する平行移動でのずらし量が互いに異なる複数の透かし埋め込み箇所を画面内に特定する透かし埋め込み箇所特定過程と、
入力された画像の、前記透かし埋め込み箇所特定過程により特定された透かし埋め込み箇所に透かし情報を埋め込む透かし埋め込み過程と、
前記透かし埋め込み箇所特定過程で特定された透かし埋め込み箇所と圧縮ブロックに対する該透かし埋め込み箇所の平行移動でのずらし量との対応を示す対応テーブルを記憶する対応テーブル記憶過程とを有することを特徴とする電子透かし埋め込み方法。
【請求項２】
平行移動および非可逆圧縮符号化が施されても、特定周波数上に集中する透かし情報が残存しやすい透かし埋め込み画像を生成するための電子透かし埋め込み装置において、
前記透かし埋め込み画像がどのように平行移動されたとしても、圧縮単位ブロックのサイズおよび平行移動での移動範囲に基づき、圧縮単位ブロックに対して、透かし情報が水平もしくは垂直方向のみにしかずれないような透かし埋め込み箇所が画面内に存在するように、圧縮ブロックに対する平行移動でのずらし量が互いに異なる複数の透かし埋め込み箇所を画面内に特定する透かし埋め込み箇所特定手段と、
入力された画像の、前記透かし埋め込み箇所特定手段により特定された透かし埋め込み箇所に透かし情報を埋め込む透かし埋め込み手段と、
前記透かし埋め込み箇所特定手段で特定された透かし埋め込み箇所と圧縮ブロックに対する該透かし埋め込み箇所の平行移動でのずらし量との対応を示す対応テーブルを記憶する対応テーブル記憶手段とを備えたことを特徴とする電子透かし埋め込み装置。
【請求項３】
平行移動および非可逆圧縮符号化が施されても、特定周波数上に集中する透かし情報が残存しやすい透かし埋め込み画像を生成するため、コンピュータに、
前記透かし埋め込み画像がどのように平行移動されたとしても、圧縮単位ブロックのサイズおよび平行移動での移動範囲に基づき、圧縮単位ブロックに対して、透かし情報が水平もしくは垂直方向のみにしかずれないような透かし埋め込み箇所が画面内に存在するように、圧縮ブロックに対する平行移動でのずらし量が互いに異なる複数の透かし埋め込み箇所を画面内に特定する透かし埋め込み箇所特定機能、
入力された画像の、前記透かし埋め込み箇所特定機能により特定された透かし埋め込み箇所に透かし情報を埋め込む透かし埋め込み機能、
前記透かし埋め込み箇所特定機能で特定された透かし埋め込み箇所と圧縮ブロックに対する該透かし埋め込み箇所の平行移動でのずらし量との対応を示す対応テーブルを記憶する対応テーブル記憶機能を実現させるためのプログラム。
【請求項４】
請求項１に記載された電子透かし埋め込み方法または請求項２に記載された電子透かし埋め込み装置または請求項３に記載されたプログラムにより生成された透かし埋め込み画像に対し、平行移動および非可逆圧縮符号化が施され、その後、復号および平行移動での移動量の補正が施された画像から透かし情報を検出する電子透かし検出方法であって、
前記対応テーブルを用いて、圧縮単位ブロックに対して、せいぜい透かし情報が水平もしくは垂直方向のみにしかずれないような透かし埋め込み箇所を求める透かし検出箇所取得過程と、
前記透かし検出箇所取得過程により求められた透かし埋め込み箇所から検出された透かし情報を出力する、または、前記透かし検出箇所取得過程により求められた透かし埋め込み箇所のうち、透かし情報が水平および垂直方向の両方向でずれていない透かし埋め込み箇所から検出された透かし情報と一方向のみでずれている透かし埋め込み箇所から検出された透かし情報に優先順位を付し、該優先順位に従って透かし情報を出力する、透かし情報検出過程とを有することを特徴とする電子透かし検出方法。
【請求項５】
請求項１に記載された電子透かし埋め込み方法または請求項２に記載された電子透かし埋め込み装置または請求項３に記載されたプログラムにより生成された透かし埋め込み画像に対し、平行移動および非可逆圧縮符号化が施され、その後、復号された画像から透かし情報を検出する電子透かし検出方法であって、
前記対応テーブルにおけるずらし量に圧縮ブロックに対する平行移動でのずらし量を加算することにより補正対応テーブルを生成する補正対応テーブル生成過程と、
前記補正対応テーブル生成過程により生成された補正対応テーブルを用いて、該補正対応テーブルから水平および垂直方向の少なくとも一方のずらし量が零であるずらし量に対応する透かし埋め込み箇所を求める透かし検出箇所取得過程と、
前記透かし検出箇所取得過程により求められた透かし埋め込み箇所から検出された透かし情報を出力する、または、前記透かし検出箇所取得過程により求められた透かし埋め込み箇所のうち水平および垂直方向の両方向のずらし量が零である透かし埋め込み箇所から検出された透かし情報と一方向のみのずらし量が零である透かし埋め込み箇所から検出された透かし情報に優先順位を付し、該優先順位に従って透かし情報を出力する、透かし情報検出過程とを有することを特徴とする電子透かし検出方法。
【請求項６】
請求項１に記載された電子透かし埋め込み方法または請求項２に記載された電子透かし埋め込み装置または請求項３に記載されたプログラムにより生成された透かし埋め込み画像に対し、平行移動および非可逆圧縮符号化が施され、その後、復号および平行移動での移動量の補正が施された画像から透かし情報を検出する電子透かし検出装置であって、
前記対応テーブルを用いて、圧縮単位ブロックに対して、せいぜい透かし情報が水平もしくは垂直方向のみにしかずれないような透かし埋め込み箇所を求める透かし検出箇所取得手段と、
前記透かし検出箇所取得手段により求められた透かし埋め込み箇所から検出された透かし情報を出力する、または、前記透かし検出箇所取得過程により求められた透かし埋め込み箇所のうち、透かし情報が水平および垂直方向の両方向でずれていない透かし埋め込み箇所から検出された透かし情報と一方向のみでずれている透かし埋め込み箇所から検出された透かし情報に優先順位を付し、該優先順位に従って透かし情報を出力する、透かし情報検出手段とを備えたことを特徴とする電子透かし検出装置。
【請求項７】
請求項１に記載された電子透かし埋め込み方法または請求項２に記載された電子透かし埋め込み装置または請求項３に記載されたプログラムにより生成された透かし埋め込み画像に対し、平行移動および非可逆圧縮符号化が施され、その後、復号された画像から透かし情報を検出する電子透かし検出装置であって、
前記対応テーブルにおけるずらし量に圧縮ブロックに対する平行移動でのずらし量を加算することにより補正対応テーブルを生成する補正対応テーブル生成手段と、
前記補正対応テーブル生成過程により生成された補正対応テーブルを用いて、該補正対応テーブルから画面水平方向と垂直方向の少なくとも一方向においてずらし量が零となるずらし量の透かし埋め込み箇所を求める透かし検出箇所取得手段と、
前記透かし検出箇所取得手段により求められた透かし埋め込み箇所から検出された透かし情報を出力する、または、前記透かし検出箇所取得過程により求められた透かし埋め込み箇所のうち水平および垂直方向の両方向のずらし量が零である透かし埋め込み箇所から検出された透かし情報と一方向のみのずらし量が零である透かし埋め込み箇所から検出された透かし情報に優先順位を付し、該優先順位に従って透かし情報を出力する、透かし情報検出手段とを有することを特徴とする電子透かし検出装置。
【請求項８】
請求項１に記載された電子透かし埋め込み方法または請求項２に記載された電子透かし埋め込み装置または請求項３に記載されたプログラムにより生成された透かし埋め込み画像に対し、平行移動および非可逆圧縮符号化が施され、その後、復号および平行移動での移動量の補正が施された画像から透かし情報を検出するため、コンピュータに、
前記対応テーブルを用いて、圧縮単位ブロックに対して、せいぜい透かし情報が水平もしくは垂直方向のみにしかずれないような透かし埋め込み箇所を求める透かし検出箇所取得機能、
前記透かし検出箇所取得機能により求められた透かし埋め込み箇所から検出された透かし情報を出力する、または、前記透かし検出箇所取得過程により求められた透かし埋め込み箇所のうち、透かし情報が水平および垂直方向の両方向でずれていない透かし埋め込み箇所から検出された透かし情報と一方向のみでずれている透かし埋め込み箇所から検出された透かし情報に優先順位を付し、該優先順位に従って透かし情報を出力する、透かし検出機能を実現させるためのプログラム。
【請求項９】
請求項１に記載された電子透かし埋め込み方法または請求項２に記載された電子透かし埋め込み装置または請求項３に記載されたプログラムにより生成された透かし埋め込み画像に対し、平行移動および非可逆圧縮符号化が施され、その後、復号された画像から透かし情報を検出するため、コンピュータに、
前記対応テーブルにおけるずらし量に圧縮ブロックに対する平行移動でのずらし量を加算することにより補正対応テーブルを生成する補正対応テーブル生成機能、
前記補正対応テーブル生成過程により生成された補正対応テーブルを用いて、該補正対応テーブルから画面水平方向と垂直方向の少なくとも一方向においてずらし量が零となるずらし量の透かし埋め込み箇所を求める透かし検出箇所取得機能、
前記透かし検出箇所取得機能により求められた透かし埋め込み箇所から検出された透かし情報を出力する、または、前記透かし検出箇所取得過程により求められた透かし埋め込み箇所のうち水平および垂直方向の両方向のずらし量が零である透かし埋め込み箇所から検出された透かし情報と一方向のみのずらし量が零である透かし埋め込み箇所から検出された透かし情報に優先順位を付し、該優先順位に従って透かし情報を出力する、透かし情報検出機能を実現させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電子透かし埋め込み方法、装置およびプログラム、電子透かし検出方法、装置およびプログラムに関し、特に、平行移動および非可逆圧縮が施されても透かしが残存しやすい透かし埋め込み画像を生成することができる電子透かし埋め込み方法、装置およびプログラムと、該透かし埋め込み画像から高精度で透かし情報を検出することができる電子透かし検出方法、装置およびプログラムとに関する。
【背景技術】
【０００２】
静止画像や動画像へ電子的に透かし情報を埋め込む技術は、著作権保護や付加情報の取得を目的として、人が知覚しにくい形で配布者や保有者のIDやコンテンツに関連した付加情報を埋め込むのに有用である。
【０００３】
画像に埋め込まれた透かし情報は、画像の編集により消失することがあり、また、画像に対する攻撃により消失させられる可能性もある。透かし情報の耐性を高めるために、透かし情報の埋め込み量を増やしたり、透かし情報を強く埋め込むことも考えられるが、これは画質劣化の元となる。
【０００４】
画像の編集や画像に対する攻撃としては、画像の拡大、縮小、回転、平行移動などの幾何学変換、圧縮、ノイズ付加などがあげられる。
【０００５】
特許文献１には、位置合わせ信号を用いて画像に加えられた平行移動量を算出し、算出された平行移動量に対する補正を行った後、電子透かし存在を判定するための有効領域を判定し、この有効領域から電子透かしを判定する画像処理装置が記載されている。
【０００６】
特許文献２には、ビット情報を異なるブロックのペアで構成し、このビット情報を透かし情報として画像に埋め込む動画像電子透かし装置が記載されている。
【０００７】
特許文献３には、動画像を構成する各フレームまたは各フィールドの画像データを低周波成分からなるデータと低周波成分以外の周波数成分からなるデータとに分離し、電子透かし情報としてフレーム方向またはフィールド方向に所定周波数の画像データを低周波成分のデータに加算して電子透かし入り低周波成分データを生成し合成する電子透かし埋め込み装置が記載されている。
【０００８】
引用文献４には、透かし埋め込み対象の原画像を２次元離散フーリエ変換して得られる振幅スペクトルを対数極座標変換した上で、さらに対数極座標系の角度方向に空間周波数変換することにより得られる回転および平行移動に関して不変な領域において、原画像に埋め込むべき透かしの振幅スペクトルを生成し、逆に、該透かしの振幅スペクトルを直交変換系の空間領域に逆変換することにより、直交変換系の２次元透かしデータを生成し元の原画像に埋め込む電子透かし埋め込み装置が記載されている。
【特許文献１】特開２００２−３５４２２１号公報
【特許文献２】特開２００２−１３５７３６号公報
【特許文献３】特開２００４−１７２７５８号公報
【特許文献４】特開２００６−１８６６２６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
特許文献１の画像処理装置では、平行移動量を算出するための位置合わせ信号を用いており、この位置合わせ信号を利用して電子透かし存在を判定するための有効領域を判定するので、これにより埋め込まれた透かしは、平行移動に対する耐性を持つことができる。しかし、これでは非可逆圧縮に対する耐性が弱いという課題がある。
【００１０】
特許文献２の動画像電子透かし装置では、特定周波数にエネルギが集中するように透かし情報を埋め込むので、これにより埋め込まれた透かしは、圧縮耐性を持つことができる。しかし、これでは平行移動に対する耐性が弱いという課題がある。
【００１１】
引用文献３の電子透かし埋め込み装置では、低周波成分に電子透かしを埋め込むので、低ビットレートで圧縮した場合でも耐性がある。しかし、これでは、画像の平行移動に対する耐性を持たせるための方策が講じられていない。
【００１２】
引用文献４の電子透かし埋め込み装置では、電子透かし埋め込みを平行移動に関して不変な領域を対象として行うので、画像の平行移動に対する耐性が高い。しかし、これでは、画像の圧縮に対する耐性を持たせるための方策が講じられていない。
【００１３】
以上のように、従来の透かし情報の埋め込みおよび検出の技術においては、埋め込まれた透かし情報は、平行移動あるいは圧縮のいずれかに対する耐性を持つことができるが、画素領域での平行移動と非可逆逆圧縮の両者に対する耐性を持っていない。
【００１４】
本発明の目的は、平行移動および非可逆圧縮符号化が施されても透かし情報が残存しやすい透かし埋め込み画像を生成することができ、また、生成された透かし埋め込み画像から高精度で透かし情報を検出することができる電子透かし埋め込み方法、装置およびプログラム、電子透かし検出方法、装置およびプログラムを提供することにある。
【課題を解決するための手段】
【００１５】
上記課題を解決するために、本発明は、平行移動および非可逆圧縮符号化が施されても、特定周波数上に集中する透かし情報が残存しやすい透かし埋め込み画像を生成するための電子透かし埋め込み方法において、前記透かし埋め込み画像がどのように平行移動されたとしても、圧縮単位ブロックのサイズおよび平行移動での移動範囲に基づき、圧縮単位ブロックに対して、透かし情報が水平もしくは垂直方向のみにしかずれないような透かし埋め込み箇所が画面内に存在するように、圧縮ブロックに対する平行移動でのずらし量が互いに異なる複数の透かし埋め込み箇所を画面内に特定する透かし埋め込み箇所特定過程と、入力された画像の、前記透かし埋め込み箇所特定過程により特定された透かし埋め込み箇所に透かし情報を埋め込む透かし埋め込み過程と、前記透かし埋め込み箇所特定過程で特定された透かし埋め込み箇所と圧縮ブロックに対する該透かし埋め込み箇所の平行移動でのずらし量との対応を示す対応テーブルを記憶する対応テーブル記憶過程とを有する点に第１の特徴がある。
【００１６】
また、本発明は、上記のようにして生成された透かし埋め込み画像に対し、平行移動および非可逆圧縮符号化が施され、その後、復号および平行移動での移動量の補正が施された画像から透かし情報を検出する電子透かし検出方法であって、前記対応テーブルを用いて、圧縮単位ブロックに対して、せいぜい透かし情報が水平もしくは垂直方向のみにしかずれないような透かし埋め込み箇所を求める透かし検出箇所取得過程と、前記透かし検出箇所取得過程により求められた透かし埋め込み箇所から検出された透かし情報を出力する、または、前記透かし検出箇所取得過程により求められた透かし埋め込み箇所のうち、透かし情報が水平および垂直方向の両方向でずれていない透かし埋め込み箇所から検出された透かし情報と一方向のみでずれている透かし埋め込み箇所から検出された透かし情報に優先順位を付し、該優先順位に従って透かし情報を出力する、透かし情報検出過程とを有する点に第２の特徴がある。
【００１７】
さらに、本発明は、上記のようにして生成された透かし埋め込み画像に対し、平行移動および非可逆圧縮符号化が施され、その後、復号および平行移動での移動量の補正が施された画像から透かし情報を検出する電子透かし検出方法であって、前記対応テーブルにおけるずらし量に圧縮ブロックに対する平行移動でのずらし量を加算することにより補正対応テーブルを生成する補正対応テーブル生成過程と、前記補正対応テーブル生成過程により生成された補正対応テーブルを用いて、該補正対応テーブルから水平および垂直方向の少なくとも一方のずらし量が零であるずらし量に対応する透かし埋め込み箇所を求める透かし検出箇所取得過程と、前記透かし検出箇所取得過程により求められた透かし埋め込み箇所から検出された透かし情報を出力する、または、前記透かし検出箇所取得過程により求められた透かし埋め込み箇所のうち水平および垂直方向の両方向のずらし量が零である透かし埋め込み箇所から検出された透かし情報と一方向のみのずらし量が零である透かし埋め込み箇所から検出された透かし情報に優先順位を付し、該優先順位に従って透かし情報を出力する、透かし情報検出過程とを有する点に第３の特徴がある。
【００１８】
本発明は、上記方法としてだけでなく、上記各過程を実行する手段を備えた装置として実現でき、また、上記各過程の機能をコンピュータに実現させるためのプログラムとしても実現できる。
【発明の効果】
【００１９】
本発明によれば、画像符号化処理が適用されるブロックのサイズ以上のあらゆる解像度の画像に対し、平行移動および非可逆圧縮符号化が施されても透かし情報が残存しやすい透かし埋め込み画像を生成することができ、また、生成された透かし埋め込み画像から高精度で透かし情報を検出することができる。すなわち、平行移動と非可逆圧縮符号化の両者に対して耐性を持たせて透かし情報を埋め込むことができる。これにより埋め込まれた透かし情報は、高精度で検出することができる。これにより、多くのワークフローに対応できる透かし埋め込み、および透かし検出を実現できる。
【発明を実施するための最良の形態】
【００２０】
まず、本発明における基本的な透かし埋め込みの原理を説明する。MPEGなどで圧縮された画像に対しては特定DCT係数を操作することで透かし情報が埋め込まれた透かし埋め込み画像を生成することができる。また、画素領域上の画像に対しては、周波数領域に変換されたときの単一もしくは複数の特定変換係数(特定DCT係数)の基底画像を定数倍した値を加減算することで透かし情報が埋め込まれた透かし埋め込み画像を生成することができる。これについては、特許文献２に詳細が述べられている。
【００２１】
画素領域上の画像に対して透かし情報が埋め込まれ、これにより生成された透かし埋め込み画像に平行移動が施されない場合、DCTや量子化などの圧縮が施されたとしても、復号(逆量子化およびIDCT)後の画像から透かし情報を比較的良好に検出できる。つまり、この場合、圧縮後の画像に透かし情報として埋め込まれた特定変換係数の基底のエネルギが残存しやすいので、透かし情報を比較的良好に検出できる。透かし情報の検出は、特定変換係数を抽出することから行うことができ、復号後に特定変換係数の基底を抽出することから行うこともできる。
【００２２】
しかし、透かし埋め込み画像に平行移動が施された場合、DCT後の透かし情報は、特定DCT係数とは別のDCT係数に分散する。画像の平行移動が画面垂直方向あるいは水平方向のみの場合、DCT係数は、以下に説明するように、該移動方向のみに分散する。
【００２３】
DCT係数行列をXとし、逆DCT演算行列をDとすると、透かし埋め込みによるDCT係数の操作は、Xに対するノイズ重畳とみることができるので、透かし埋め込み後のDCT係数行列X′は、式(1)に示すように、Xとノイズ行列Nの加算で表現される。
【００２４】
【数１】
0004931077.tif 000002
【００２５】
このDCT係数行列X′に逆DCTを適用して画素領域に戻したときの画素値は、式(2)で表される。式(2)は、画素領域上での透かし埋め込みを表している。
【００２６】
【数２】
0004931077.tif 000003
【００２７】
画像が平行移動されたときの画素値は、式(3)で表される。なお、M１,M２はそれぞれ、画面垂直方向の平行移動の場合の平行移動演算子、水平移動の場合の平行移動演算子である。
【００２８】
【数３】
0004931077.tif 000004
【００２９】
式(3)の右辺第１項は、透かし埋め込み前の画像が平行移動された画像を表し、第２項は、埋め込まれた透かし情報の分散を表している。ここで、この画像に対してDCT(符号化)が適用されたときのDCT係数行列は、式(4)で表される。
【００３０】
【数４】
0004931077.tif 000005
【００３１】
式(4)の右辺第２項は、透かし情報を表し、DCT(M１)×N×DCT(M２)となる。ここで、(1,1)のDCT係数への加減算で透かしが埋め込まれているとすると、Nは(1,1)成分しか持っていないので、DCT係数の上では透かし情報は、1行目あるいは1列目だけに分散されることになる。以上はIフレームについてであるが、P,Bフレームについても特定周波数上に集中して透かし情報を埋め込む方式であれば同様の原理により透かし情報が分散される。なお、平行移動を行わない場合、M１,M２は単位行列となる。
【００３２】
式(5)は、逆DCT演算行列Dの具体例を示し、式(6),(7)はそれぞれ、垂直方向に下1画素分、水平方向に右1画素分平行移動させる平行移動演算子の具体例を示す。なお、平行移動により新たに混入する要素を0としている。
【００３３】
【数５】
0004931077.tif 000006
【００３４】
【数６】
0004931077.tif 000007
【００３５】
【数７】
0004931077.tif 000008
【００３６】
図７は、平行移動での移動量とDCT係数の分散の関係を示す図である。ここでは、(1,1)DCT係数に透かし情報「N」として「16」を埋め込み、平行移動の移動量が(0,0)(平行移動無し), (0,2)(画面水平方向移動), (4,4)(画面水平方向および垂直方向移動)の場合を示している。平行移動が無い場合、同図(a)に示すように、式(4)の右辺第２項は「N」となり、透かし情報は(1,1)DCT係数のみに表れる。また、平行移動が画面水平(垂直)方向のみの場合、同図(b)に示すように、式(4)の右辺第２項は「DＴM１DN」または「NDＴM２D」(M１,M２は単位行列でない)となり、透かし情報は一行(一列)のみに分散する。また、平行移動が画面水平および垂直方向の場合、同図(c)に示すように、式(4)の右辺第２項は「DＴM１DNDＴM２D」(M１,M２は単位行列でない)となり、透かし情報は全体に分散する。
【００３７】
ここで、画素領域上の画像に対して透かし情報が埋め込まれた後、平行移動および圧縮符号化が施される場合について、量子化が行われる場合と量子化が行われない場合に分けて説明する。
【００３８】
まず、量子化が行われない場合、つまり、平行移動および圧縮符号化(周波数領域への変換)が施された後、復号(画素領域への変換)および平行移動での移動量の補正(平行移動の逆)が行われた場合について説明する。
【００３９】
この場合、埋め込んだ透かし情報のエネルギはほぼ完全に残存している。つまり、ある画像の圧縮単位ブロックに対して画素領域上で特定変換係数の基底にΔnの値を加算することで透かし情報を埋め込み、平行移動、DCT変換、逆DCT(IDCT)変換、平行移動での移動量の補正を順次施したとき、透かし情報のエネルギはほぼ完全に復元される。したがって、上記の処理が順次施された後でも、ほぼΔnの透かし情報のエネルギを検出できる。DCT変換および逆DCT変換を実数精度で行うことができれば、Δnは完全に保存されるので、Δnの透かし情報のエネルギを検出できる。
【００４０】
次に、量子化が行われる場合、つまり、平行移動、圧縮(DCT変換、量子化)の各処理が施された後、伸張(逆量子化、逆DCT変換)、平行移動での移動量の補正の各処理が施された場合について説明する。この場合は、平行移動での移動量に応じて透かし情報のエネルギの残り方が異なる。残り方は、下記の(i),(ii),(iii)に大別される。ここで、水平、垂直方向の平行移動量をs(dx, dy)で示す。
(i)平行移動量がs(0,0)の場合、量子化が行われても透かし情報のエネルギは非常に残りやすい。
(ii)平行移動量がs(dx,0)(ただしdx≠0)、またはs(0,dy)(ただしdy≠0)の場合、量子化が行われても下記(iii)の場合と比較して透かし情報のエネルギは残りやすい。
(iii)平行移動量がs(dx,dy)(ただしdx≠0かつdy≠0)の場合、量子化が行われると透かし情報のエネルギは残りにくい。
【００４１】
透かし情報のエネルギの残り方は、量子化パラメータの値によって異なるが、例えば、上記(i)の場合に透かし情報のエネルギΔnが100％残るとすると、上記(ii)の場合は透かし情報のエネルギΔnは50％残る、上記(iii)の場合は透かし情報のエネルギΔnは20％が残る。このように、透かし情報のエネルギΔnの残り方は、上記(i),(ii),(iii)の場合で差がでる。これは、透かしエネルギは、他の周波数成分に分散された透かしの絶対値が小さいほど量子化により0になりやすく、消えやすいからである。上記(iii)の場合は、他の周波数成分に分散された透かしの絶対値が小さくなりやすいため、透かしエネルギが残りにくくなっているといえる。
【００４２】
そこで、埋め込まれた透かし情報に平行移動および圧縮に対する耐性を持たせるために、画像が平行移動されたときに符号化係数が画面垂直方向あるいは水平方向のみに分散される透かしが存在するように、すなわち、上記(i)または(ii)の場合でカバーされ、上記(i)または(ii)の場合の透かしが必ず存在するように、圧縮単位ブロックの座標に対してずらし量を持たせて透かし埋め込み箇所を特定し、これにより特定された透かし埋め込み箇所に透かし情報を埋め込むことにより透かし情報のエネルギを残存しやすくする。
【００４３】
以上が本発明における基本的な透かし埋め込みの原理であり、これを纏めて図８に示す。図８中の格子模様は、DCT係数(1,1)の基底画像のイメージ図である。例えば、分割したブロックにこの基底画像を定数倍したものを画像に加算することで、薄く透かしを埋め込むことができる。同図(a)の左側は、画像中のブロックに透かし情報を埋め込んだイメージ図であり、右側は、透かし埋め込み画像が平行移動された後にブロック分割されたイメージ図である。
同図(a)の(1),(3)に示すように、圧縮単位ブロックの座標に対する透かし埋め込み箇所のずらし量k(x,y)が0である場合(ずらし量k(x,y)=k(0,0))、s(dx,0)(ただしdx≠0)、またはs(0,dy)(ただしdy≠0)の平行移動が起こっても、上記(i)または(ii)の場合でカバーされ、透かしは2つのブロックに分割されるだけであるので、量子化が行われても透かし情報のエネルギは残りやすい。しかし、同図(a)の(2)に示すように、s(dx,dy)(ただしdx≠0かつdy≠0)の平行移動が起こると、上記(iii)の場合となり、透かしは4つのブロックに分割されるので、量子化後では透かし情報のエネルギは残りにくくなる。図８では、s(dx,0)=s(2,0)、s(0,dy)=s(0,2)、s(dx,dy)=s(2,2)の場合を示しているが、一般的には、ずらし量k(x,y)=k(0,0)としたとき、画素単位の移動量に対し、画像の平行移動量がs(0,n)あるいはs(n,0)ならば、透かし情報のエネルギを残存しやすくすることができる。
【００４４】
同図(a)(1),(3)の場合以外の平行移動に対処するため、同図(b)に示すように、圧縮単位ブロックの座標に対する透かし埋め込み箇所のずらし量k(x,y)(ただしx≠0かつy≠0)として透かし埋め込み箇所を設定する。例えば、k(x,y)=k(-2,-2)とし、ここにも透かし情報を埋め込む。ここで、s(2,dy)、またはs(dx,2)の平行移動が起こっても、上記(i)または(ii)の場合でカバーされ、透かしは2つのブロックに分割されるだけであるので、量子化が行われても透かし情報のエネルギは残りやすい。一般的には、ずらし量k(x,y)=k(a,b)(ただしa≠0かつb≠0)とすることにより、画素単位の移動量に対し、画像の平行移動量がs(-a,*)(*は任意数)あるいはs(*,-b)の場合に、透かし情報のエネルギを残存しやすくすることができる。
【００４５】
以下、図面を参照して本発明の実施形態について説明する。以下では、本発明を装置として実現した場合について説明する。
【００４６】
図１は、本発明に係る電子透かし埋め込み装置の一実施形態を含む画像処理装置を示すブロック図である。図１の画像処理装置は、透かし埋め込み手段11、平行移動処理手段12、エンコーダ13、透かし埋め込み箇所ずらし量特定手段14、透かし埋め込み箇所特定手段15および対応テーブル16を備える。本発明に係る電子透かし埋め込み装置の一実施形態は、図１における、透かし情報の埋め込みに関係する部分、すなわち、透かし埋め込み手段11、透かし埋め込み箇所ずらし量特定手段14、透かし埋め込み箇所特定手段15および対応テーブル16で構成される。
【００４７】
透かし埋め込み手段11は、入力される画素領域の画像に対し、圧縮された時の単一もしくは複数の特定変換係数(特定DCT係数)の基底を定数倍した値を透かし情報として加減算することで透かし情報が埋め込まれた透かし埋め込み画像を生成する。ここで、透かし情報は、後述する透かし埋め込み箇所特定手段15により特定された透かし埋め込み箇所あるいは対応テーブル16を参照して得られる透かし埋め込み箇所に埋め込まれる。なお、透かし埋め込み手段11に入力される画像は、静止画像でも動画像でも構わない。
【００４８】
平行移動処理手段12では、透かし埋め込み手段11により生成された透かし埋め込み画像に対して画素領域上で平行移動が施される。この処理は、画像の編集や画像に対する攻撃などである。
【００４９】
エンコーダ13は、平行移動処理手段12により平行移動された画像に対し、周波数領域への変換(DCT)および量子化を含む圧縮を施す。ここでの圧縮は、量子化を含み、非可逆である。エンコーダ13から圧縮画像が出力される。
【００５０】
透かし埋め込み箇所ずらし量特定手段14は、圧縮単位ブロックのサイズおよび平行移動処理手段12での平行移動の移動範囲を入力とし、平行移動処理手段12で画像が平行移動されたときに符号化係数(DCT係数)が画面垂直方向あるいは水平方向のみに分散されるように、圧縮単位ブロックの座標に対して透かし埋め込み箇所に持たせるずらし量を特定する。
【００５１】
透かし埋め込み箇所特定手段15は、平行移動を考慮しない場合の画像面上での透かし埋め込み箇所(ずらし反映前の透かし埋め込み箇所)に対し透かし埋め込み箇所ずらし量特定手段14で特定されたずらし量を与えることにより透かし埋め込み箇所(ずらし反映後の透かし埋め込み箇所)を特定する。
【００５２】
対応テーブル16は、透かし埋め込み箇所ずらし量特定手段14で特定されたずらし量と透かし埋め込み箇所との対応を記憶する。この対応テーブル16により、どの透かし埋め込み箇所にどのずらし量をもった透かし情報が埋め込まれているかを特定できる。この対応テーブル16は、透かし埋め込み画像から透かし情報を検出する際に用いられる。
【００５３】
透かし埋め込み手段11は、透かし埋め込み箇所特定手段15で特定された透かし埋め込み箇所に透かし情報を埋め込む。
【００５４】
以下、透かし情報の埋め込みについて具体例をあげて説明する。まず、図１の透かし埋め込み箇所ずらし量特定手段14に、平行移動での移動範囲xmin≦sx≦xmax、ymin≦sy≦ymaxと圧縮単位ブロックのサイズが与えられる。ここで、sx,syはそれぞれ、画面の水平方向,垂直方向の移動範囲である。
【００５５】
平行移動が施されない場合、画像をブロック分割した時のブロックに合わせて透かし情報をそのまま埋め込むだけでよいが、平行移動が施される、あるいは平行移動が施されることが予測される場合は、平行移動されたときに符号化係数が画面垂直方向あるいは水平方向のみに分散されるように、つまり、平行移動での移動範囲が上記(i)または(ii)の場合でカバーされるように、透かし埋め込み箇所を圧縮単位ブロックの座標からｋ(dx,dy)だけずらす。図２は、圧縮単位ブロック(図の格子状に分割されたブロック)の座標からのずれがないブロックk(dx,dy)=k(0,0)と、ずれがあるブロックk(dx,dy)=k(6,6)を示している。
【００５６】
透かし埋め込み箇所ずらし量特定手段14は、この透かし埋め込み箇所ずらし量ｋ(dx,dy)を、以下のようにして特定する。
【００５７】
平行移動での移動範囲が、例えば、0≦sy≦2、0≦sx≦2の場合、圧縮単位ブロックの座標からk(0,0), k(-1,-1), k(-2,-2)だけずらされて埋め込まれた透かし情報があれば、上記(i)または(ii)の場合として残存する透かし情報が存在する。
【００５８】
図３(a)は、圧縮単位ブロックの座標からのずらし量と平行移動後に上記(i)または(ii)の場合として残存する透かし情報との関係を示す説明図である。
【００５９】
圧縮単位ブロックの座標からのずらし量をk(0,0)として透かし情報を埋め込めば(ずらし無し)、画像の平行移動の移動量がs(0,*)あるいはs(*,0)の場合に、透かし情報のエネルギは上記(i)または(ii)の場合として残存する。また、圧縮単位ブロックの座標からのずらし量をk(-1,-1)として透かし情報を埋め込めば、画像の平行移動の移動量が(1,*)あるいは(*,1)の場合に、透かし情報のエネルギは上記(i)または(ii)の場合として残存する。また、圧縮単位ブロックの座標からのずらし量をk(-2,-2)として透かし情報を埋め込めば、画像の平行移動の移動量が(2,*)あるいは(*,2)の場合に、透かし情報のエネルギは上記(i)または(ii)の場合として残存する。
【００６０】
したがって、平行移動での移動範囲が0≦sy≦2、0≦sx≦2の場合、圧縮単位ブロックの座標からのずらし量をk(0,0), k(-1,-1), k(-2,-2)として透かし情報を埋め込んでおくことにより、透かし情報のエネルギを上記(i)または(ii)の場合として残存させることができる。透かし埋め込み箇所ずらし量特定手段14は、以上のように、透かし情報のエネルギを上記(i)または(ii)の場合として残存させることができるように、圧縮単位ブロックの座標からのずらし量ｋ(dx,dy)を特定する。
【００６１】
このように透かし情報を埋め込んだ場合、図３(b)からも分かるように、平行移動での移動範囲が0≦sy≦2、0≦sx≦2において、sy＝sxの場合は、透かしエネルギが非常に残りやすい上記(i)の条件となるずらし量の透かしを１つ持ち、sy≠sxの場合は、透かしエネルギが残りやすい上記(ii)の条件となるずらし量の透かしを２つ持ち、どのずれ量に対しても安定して透かし情報を検出することができる。
【００６２】
一般的には、xmin=yminかつxmax＝ymaxの場合、圧縮単位ブロックの座標からのずらし量をk(-m,-m)(ただしm=xmin,xmin+1,・・・,xmax)とすることで、平行移動の移動範囲に対して透かし情報のエネルギを上記(i),(ii)の場合として残存させることを保証できる。なお、圧縮単位ブロックの座標からのずらし量k(-m,-m)は、圧縮単位ブロックのサイズに応じて特定する。例えば、圧縮単位ブロックのサイズが8x8の場合、圧縮単位ブロックの座標からのずらし量をk(-m,-m)(ただしm=0,1,・・・,7)とすれば、全ての平行移動の移動範囲に対して透かし情報のエネルギを上記(i),(ii)の場合として残存させることを保証できる。sy＝sxの場合は、透かしエネルギが非常に残りやすい上記(i)の条件となるずらし量の透かしを１つ持ち、sy≠sxの場合は、透かしエネルギが残りやすい上記(ii)の条件となるずらし量の透かしを２つ持ち、どのずれ量に対しても安定して透かし情報を検出することができる。
【００６３】
圧縮単位ブロックの座標からのずらし量は、上記(i)または(ii)を満たせば、k(-m,-m)でなくともよい。つまり、圧縮単位ブロックの座標からのずらし量ｋ(dx,dy)は、画像が平行移動されたときに符号化係数が画面垂直方向あるいは水平方向のみに分散されるということが満たされればよく、上記以外のずらし量を取ることもできる。
【００６４】
例えば、平行移動での移動範囲が0≦sy≦2、0≦sx≦2の場合、圧縮単位ブロックの座標からのずらし量をk(0,0), k(-1,0), k(-2,0)として透かし情報を埋め込んでおくこともできる。これは、水平方向の画像の平行移動が起こりやすい場合、透かしエネルギが非常に残りやすい上記(i)となる場合が多いので有効である。しかし、1≦sy≦2の範囲の平行移動が起こった場合には上記(ii)の条件となるずらし量の透かし情報を１つしか持たず検出精度が下がる可能性もある。平行移動での移動範囲が0≦sy≦2、0≦sx≦2の場合、圧縮単位ブロックの座標からのずらし量をk(0,0), k(-1,0), k(0,-1), k(-2,-2)として透かし情報を埋め込んでおくこともできる。これは、画像の平行移動がs(1,0), s(0,1)で起こりやすい場合、透かしエネルギが非常に残りやすい上記(i)となる場合が多いので有効である。また、いずれの平行移動量に対しても上記(i)または(ii)となるずらし量の透かし情報が２つ以上存在する。しかし、ずらし量を３つから４つに増やすことで埋め込む透かし情報を増やすと、画質劣化につながる恐れがある。よって、ずらし量の決定は、平行移動範囲での透かし情報検出の安定性、平行移動の発生確率、許容できる画質劣化などの条件を勘案して行うとよい。
【００６５】
透かし埋め込み手段11は、上記のようにして、透かし埋め込み箇所ずらし量特定手段14および透かし埋め込み箇所特定手段15により特定された様々なずらし量ｋ(dx,dy)でずらされた透かし埋め込み箇所に透かし情報を埋め込む。対応テーブル16は、透かし埋め込み箇所ずらし量特定手段14により特定されたずらし量ｋ(dx,dy)と透かし埋め込み箇所との対応を記憶する。
【００６６】
図４は、対応テーブル16の具体例を示す図である。この対応テーブル16は、マクロブロック座標(3,2),(20,20),(5,1),・・・からのずらし量ｋ(0,0)の透かし埋め込み箇所が特定され、マクロブロック座標(10,4),(9,15),(2,7),・・・からのずらし量ｋ(-1,-1)の透かし埋め込み箇所が特定され、マクロブロック座標(8,29),(3,6),(19,14),・・・からのずらし量ｋ(2,2)の透かし埋め込み箇所が特定されていること示している。なお、ここでは、マクロブロックの座標で透かし埋め込み箇所を記述しているが、画素の実際の座標で記述してもよい。
【００６７】
次に、上記のようにして生成された透かし埋め込み画像からの透かし検出について説明する。図５は、本発明に係る電子透かし検出装置の実施形態を含む画像処理装置を示すブロック図である。図５の画像処理装置は、デコーダ51、平行移動補正手段52および透かし検出手段53を備える。透かし検出手段53は、本発明に従って透かし埋め込み画像から透かし情報を検出する。
【００６８】
まず、図１の画像処理装置により生成された圧縮画像は、デコーダ51に入力される。デコーダ51は、入力される圧縮画像をデコード(画素領域への変換(IDCT)および逆量子化)し、画素領域上の画像を出力する。
【００６９】
平行移動補正手段52は、画像透かし埋め込み装置側の平行移動処理手段(図１の12)での平行移動を元に戻すように補正する。なお、平行移動処理手段での平行移動量tは、予め取得されて分かっているものとする。
【００７０】
透かし検出手段53は、平行移動補正手段52で平行移動補正された画像から透かし情報を検出する。この透かし情報の検出は、取得された平行移動量tを元に、透かし情報のエネルギが上記(i),(ii)となっている箇所のみから行う。上記(i),(ii)となっている箇所は、ずらし量kと透かし埋め込み箇所との対応テーブル16(図４)により分かる。対応テーブル16に記述されたマクロブロック座標からずらし量kだけずらした箇所(ブロック)が透かし埋め込み箇所となる。
【００７１】
透かし情報の検出は、上記(i),(ii)に優先順位を付していずれか一方、あるいは両方の組み合わせで行うことができる。また、上記(i),(ii),(iii)の順に優先順位を付して透かし情報の検出を行うこともできる。
【００７２】
以下、透かし検出について具体的に説明する。電子透かし埋め込み装置側での平行移動量がtである時、平行移動補正手段52は、該平行移動と逆の平行移動を行って平行移動補正する。ここで、対応テーブル16にt(a,b)=k(-a,-b)のずらし量があれば、これは上記(i)の場合の透かし埋め込みである。また、対応テーブル16にt(a, *)=k(-a,* )またはt(*, b)=k(*,-b)(*は、異なる任意数)のずらし量があれば、これは上記(ii)の場合の透かし埋め込みである。
【００７３】
透かし検出手段53は、対応テーブル16から上記(i)あるいは(ii)の場合のずらし量で透かし埋め込みが行われている透かし埋め込み箇所を求め、その箇所のみから透かし情報を検出する。
【００７４】
上記(i)の場合、透かし情報の検出は、圧縮データにおける透かし埋め込み箇所の特定変換係数(特定DCT係数)を抽出することにより行うことができる。また、圧縮データをデコードした後、透かし埋め込み画像の透かし埋め込み箇所から透かし情報の周波数成分を抽出することにより行うこともできる。
【００７５】
上記(ii)の場合は、透かし埋め込み画像を一旦デコード(逆量子化およびIDCT)し、その後、平行移動量tにより平行移動補正する。これにより平行移動補正された透かし埋め込み画像を、さらに、ずらし量kに応じて基底を画素領域上でkだけずらす。透かし情報の検出は、この状態の透かし埋め込み画像の透かし埋め込み箇所から透かし情報の周波数成分を抽出することにより行うことができる。
【００７６】
上記(ii)の場合、透かし情報のエネルギは上記(i)の場合と比較して少ないものの、多くのエネルギが残っているので、非可逆圧縮符号化などの処理が施された後でも透かし情報を検出することができる。以上では、上記(i),(ii)の場合となっている透かし情報の検出について説明したが、さらに、上記(iii)の場合となっている透かし情報の検出も同様に行い、上記(i),(ii)の場合で検出された透かし情報を上記(iii)の場合で検出される透かし情報より高い優先順位にして透かし情報を検出することもできる。
【００７７】
透かし検出に際しては、平行移動補正を対応テーブル側で行うこともできる。図６は、この場合の電子透かし検出装置を含む画像処理装置を示すブロック図である。図６の画像処理装置は、デコーダ61、平行移動補正手段62および透かし検出手段63を備えるが、平行移動補正手段62が、透かし埋め込み画像を補正するものではなく、対応テーブル16を平行移動補正して補正対応テーブルを生成し、透かし検出手段63が補正対応テーブルを参照する点で、図５の画像処理装置と異なる。
【００７８】
図１の画像処理装置により生成された圧縮画像は、デコーダ61に入力される。デコーダ61は、入力される圧縮画像をデコード(画素領域への変換(IDCT)および逆量子化)し、画素領域上の画像を出力する。
【００７９】
平行移動補正手段52は、ずらし量kと透かし埋め込み箇所との対応テーブル16(図４)を補正する。対応テーブル16を利用してずらし量kに対する透かし埋め込み箇所を求めることができる。平行移動量がt(a,b)であるとき、ずらし量k(x,y)をこれと同じ方向に移動し、k(x+a,y+b)としたテーブルを作成すればよい。また、対応テーブル16の透かし埋め込み座標がマクロブロック座標ではなく、通常の画素座標(ただし、ブロックサイズで割り切れる数)である場合、埋め込み座標をこれと同方向に平行移動量t(a,b)だけずらすように補正したテーブルを作成すればよい。この場合、さらに座標からずらし量kだけずらした箇所(ブロック)が透かし埋め込み箇所となる。または、埋め込み座標をこれと同方向に平行移動量t(a,b)だけずらすように補正し、さらにずらし量kだけずらしたテーブルを作成してもよい。このようにすれば、透かし埋め込み画像を平行移動する必要がなくなる。
【００８０】
透かし検出手段53は、平行移動補正手段62で平行移動補正された対応テーブルを参照して透かし埋め込み画像から透かし情報を検出する。
【００８１】
以上実施形態について説明したが、本発明は、上記実施形態に限定されるものではない。例えば、入力される画像は、静止画像であっても動画像であってもよい。また、特定DCT係数への透かし情報の埋め込みおよび検出には、特許文献２に記載されているように、隣接するブロックの特定DCT係数の絶対値差分をとる手法なども使用できる。この手法では、画像を16x16画素からなるマクロブロックに分割し、さらにマクロブロックを8x8画素からなる４つのブロックに分割する。埋め込む透かし情報によって、どのブロックの透かしエネルギを大きくするか予め決めておく。例えば、“0”は、右上より左上のブロックの透かしエネルギを大きくすることで埋め込まれ、“1”は、左上より右上のブロックの透かしエネルギを大きくすることで埋め込まれる。画素座標を(x,y)とするとき、マクロブロック座標は(x/16,y/16)を示す。ただし、小数点は切り捨てる。埋め込みマクロブロック座標を定めておき、埋め込む透かし情報によって、ブロックの透かしエネルギを操作する。透かし情報を検出する際には、隣り合うブロックの特定周波数係数の絶対値を比較する。この比較結果は、埋め込まれた透かし情報を示すことになる。上記の場合、左上のブロックのエネルギが右上のブロックのエネルギより大きい場合、“0”が埋め込まれていると判断する。このような埋め込み・検出の手法を採用すれば、平行移動および圧縮に対する耐性をさらに高めることができる。特定DCT係数やその基底への透かし情報の埋め込みには、種々の他の手法も利用できる。
【図面の簡単な説明】
【００８２】
【図１】本発明に係る電子透かし埋め込み装置の一実施形態を含む画像処理装置を示すブロック図である。
【図２】圧縮単位ブロックからのずれがないブロックとずれがあるブロックを示す説明図である。
【図３】透かし埋め込み箇所のずらし量と平行移動後に残存する透かし情報のエネルギの関係を示す説明図である。
【図４】対応テーブル作成手段で作成される対応テーブルの具体例を示す図である。
【図５】本発明に係る電子透かし検出装置の実施形態を含む画像処理装置を示すブロック図である。
【図６】本発明に係る電子透かし検出装置の他の実施形態を含む画像処理装置を示すブロック図である。
【図７】平行移動での移動量とDCT係数の分散の関係を示す図である。
【図８】本発明における基本的な透かし埋め込みの原理を示す図である。
【符号の説明】
【００８３】
11・・・透かし埋め込み手段、12・・・平行移動処理手段、13・・・エンコーダ、14・・・透かし埋め込み箇所ずらし量特定手段、15・・・透かし埋め込み箇所特定手段、16・・・対応テーブル作成手段、51,61・・・デコーダ、52,62・・・平行移動補正手段、53,63・・・透かし検出手段
【図１】
0004931077.tif 000009
【図２】
0004931077.tif 000010
【図３】
0004931077.tif 000011
【図４】
0004931077.tif 000012
【図５】
0004931077.tif 000013
【図６】
0004931077.tif 000014
【図７】
0004931077.tif 000015
【図８】
0004931077.tif 000016