(57)【要約】【課題】  平坦な画像に適用したとしても、埋め込む際に使用する符号列などが推定されることのない電子透かし埋め込み方法を提供する。【解決手段】  原画像データから埋め込み対象領域を切り取り、画像データＧとする。画像データＧをｆ回、スクランブル処理し、これを画像データＳとする。スクランブル処理では、画像データから複数の画素を所定の乱数列に従ってランダムに選択して、選択した画素同士を入れ換える。画像データＳにＤＣＴを施してＤＣＴ係数を得る。ＤＣＴ係数に透かし信号ｃを埋め込む。埋め込まれたＤＣＴ係数にＩＤＣＴを施して、埋め込み済み画像データＳ'を生成する。埋め込み済み画像データＳ'をｆ回、逆スクランブル処理し、埋め込み済み画像データＧ'を生成する。原画像データの埋め込み対象領域に埋め込み済み画像データＧ'を貼り付けて、透かし入り画像データを得る。【選択図】  図１
2005102066.tif 000002
【特許請求の範囲】
【請求項１】
画像データに透かし情報の埋め込みを行う電子透かし埋め込み方法であって、
（ａ）前記画像データに対し、該画像データから複数の画素を所定の乱数列に従ってランダムに選択して、選択した画素同士を入れ換えるスクランブル処理を施す工程と、
（ｂ）前記スクランブル処理の施された前記画像データに所定の直交変換を施すことにより、変換係数を得る工程と、
（ｃ）前記変換係数に前記透かし情報の埋め込みを行う工程と、
（ｄ）前記透かし情報の埋め込まれた前記変換係数に、前記直交変換とは逆の変換を施すことにより、埋め込み済み画像データを生成する工程と、
（ｅ）前記埋め込み済み画像データに、前記スクランブル処理の場合とは逆の画素入れ換えを行う逆スクランブル処理を施して、透かし入り画像データを得る工程と、
を備えることを特徴とする電子透かし埋め込み方法。
【請求項２】
画像データに透かし情報の埋め込みを行う電子透かし埋め込み方法であって、
（ａ）前記画像データを基準画像データとして、該基準画像データを低周波成分と高周波成分とに帯域分割し、前記低周波成分が得られるたびに該低周波成分を新たな基準画像データとして、同様の帯域分割処理を所定回数繰り返し、最終的に得られた前記低周波成分を対象画像データとして得る工程と、
（ｂ）前記対象画像データに対し、該対象画像データから複数の画素を所定の乱数列に従ってランダムに選択して、選択した画素同士を入れ換えるスクランブル処理を施す工程と、
（ｃ）前記スクランブル処理の施された前記対象画像データに所定の直交変換を施すことにより、変換係数を得る工程と、
（ｄ）前記変換係数に前記透かし情報の埋め込みを行う工程と、
（ｅ）前記透かし情報の埋め込まれた前記変換係数に、前記直交変換とは逆の変換を施すことにより、埋め込み済み画像データを生成する工程と、
（ｆ）前記埋め込み済み画像データに、前記スクランブル処理の場合とは逆の画素入れ換えを行う逆スクランブル処理を施す工程と、
（ｇ）前記逆スクランブル処理の施された前記埋め込み済み画像データを低周波成分として、該低周波成分と、前記帯域分割処理で得られた前記高周波成分とを合成して合成画像データを得て、該合成画像データが得られるたびに該合成画像データを新たな低周波成分として、同様の帯域合成処理を所定回数繰り返し、最終的に得られた前記合成画素データを透かし入り画像データとして得る工程と、
を備えることを特徴とする電子透かし埋め込み方法。
【請求項３】
請求項１または請求項２に記載の電子透かし埋め込み方法において、
前記所定の直交変換は、離散コサイン変換であることを特徴とする電子透かし埋め込み方法。
【請求項４】
透かし情報の埋め込まれた透かし入り画像データから前記透かし情報を抽出する電子透かし抽出方法であって、
（ａ）前記透かし入り画像データに対し、該透かし入り画像データから複数の画素を所定の乱数列に従ってランダムに選択して、選択した画素同士を入れ換えるスクランブル処理を施す工程と、
（ｂ）前記スクランブル処理の施された前記透かし入り画像データに所定の直交変換を施すことにより、変換係数を得る工程と、
（ｃ）前記変換係数から、埋め込まれている前記透かし情報の抽出を行う工程と、
を備えることを特徴とする電子透かし抽出方法。
【請求項５】
透かし情報の埋め込まれた透かし入り画像データから前記透かし情報を抽出する電子透かし抽出方法であって、
（ａ）前記透かし入り画像データを基準画像データとして、該基準画像データを低周波成分と高周波成分とに帯域分割し、前記低周波成分が得られるたびに該低周波成分を新たな基準画像データとして、同様の帯域分割処理を所定回数繰り返し、最終的に得られた前記低周波成分を対象画像データとして得る工程と、
（ｂ）前記対象画像データに対し、該対象画像データから複数の画素を所定の乱数列に従ってランダムに選択して、選択した画素同士を入れ換えるスクランブル処理を施す工程と、
（ｃ）前記スクランブル処理の施された前記対象画像データに所定の直交変換を施すことにより、変換係数を得る工程と、
（ｄ）前記変換係数から、埋め込まれている前記透かし情報の抽出を行う工程と、
を備えることを特徴とする電子透かし抽出方法。
【請求項６】
請求項４または請求項５に記載の電子透かし抽出方法において、
前記所定の直交変換は、離散コサイン変換であることを特徴とする電子透かし抽出方法。
【請求項７】
画像データに透かし情報の埋め込みを行う電子透かし装置であって、
前記画像データに対し、該画像データから複数の画素を所定の乱数列に従ってランダムに選択して、選択した画素同士を入れ換えるスクランブル処理を施すスクランブル処理部と、
前記スクランブル処理の施された前記画像データに所定の直交変換を施すことにより、変換係数を得る直交変換部と、
前記変換係数に前記透かし情報の埋め込みを行う埋め込み部と、
前記透かし情報の埋め込まれた前記変換係数に、前記直交変換とは逆の変換を施すことにより、埋め込み済み画像データを生成する逆直交変換部と、
前記埋め込み済み画像データに、前記スクランブル処理の場合とは逆の画素入れ換えを行う逆スクランブル処理を施して、透かし入り画像データを得る逆スクランブル処理部と、
を備えることを特徴とする電子透かし装置。
【請求項８】
画像データに透かし情報の埋め込みを行う電子透かし装置であって、
前記画像データを基準画像データとして、該基準画像データを低周波成分と高周波成分とに帯域分割し、前記低周波成分が得られるたびに該低周波成分を新たな基準画像データとして、同様の帯域分割処理を所定回数繰り返し、最終的に得られた前記低周波成分を対象画像データとして得る帯域分割処理部と、
前記対象画像データに対し、該対象画像データから複数の画素を所定の乱数列に従ってランダムに選択して、選択した画素同士を入れ換えるスクランブル処理を施すスクランブル処理部と、
前記スクランブル処理の施された前記対象画像データに所定の直交変換を施すことにより、変換係数を得る直交変換部と、
前記変換係数に前記透かし情報の埋め込みを行う埋め込み部と、
前記透かし情報の埋め込まれた前記変換係数に、前記直交変換とは逆の変換を施すことにより、埋め込み済み画像データを生成する逆直交変換部と、
前記埋め込み済み画像データに、前記スクランブル処理の場合とは逆の画素入れ換えを行う逆スクランブル処理を施す逆スクランブル処理部と、
前記逆スクランブル処理の施された前記埋め込み済み画像データを低周波成分として、該低周波成分と、前記帯域分割処理で得られた前記高周波成分とを合成して合成画像データを得て、該合成画像データが得られるたびに該合成画像データを新たな低周波成分として、同様の帯域合成処理を所定回数繰り返し、最終的に得られた前記合成画素データを透かし入り画像データとして得る帯域合成処理部と、
を備えることを特徴とする電子透かし装置。
【請求項９】
透かし情報の埋め込まれた透かし入り画像データから前記透かし情報を抽出する電子透かし装置であって、
前記透かし入り画像データに対し、該透かし入り画像データから複数の画素を所定の乱数列に従ってランダムに選択して、選択した画素同士を入れ換えるスクランブル処理を施すスクランブル処理部と、
前記スクランブル処理の施された前記透かし入り画像データに所定の直交変換を施すことにより、変換係数を得る直交変換部と、
前記変換係数から、埋め込まれている前記透かし情報の抽出を行う抽出部と、
を備えることを特徴とする電子透かし装置。
【請求項１０】
透かし情報の埋め込まれた透かし入り画像データから前記透かし情報を抽出する電子透かし装置であって、
前記透かし入り画像データを基準画像データとして、該基準画像データを低周波成分と高周波成分とに帯域分割し、前記低周波成分が得られるたびに該低周波成分を新たな基準画像データとして、同様の帯域分割処理を所定回数繰り返し、最終的に得られた前記低周波成分を対象画像データとして得る帯域分割処理部と、
前記対象画像データに対し、該対象画像データから複数の画素を所定の乱数列に従ってランダムに選択して、選択した画素同士を入れ換えるスクランブル処理を施すスクランブル処理部と、
前記スクランブル処理の施された前記対象画像データに所定の直交変換を施すことにより、変換係数を得る直交変換部と、
前記変換係数から、埋め込まれている前記透かし情報の抽出を行う抽出部と、
を備えることを特徴とする電子透かし装置。
【請求項１１】
画像データに透かし情報の埋め込みを行うためのコンピュータプログラムであって、
前記画像データに対し、該画像データから複数の画素を所定の乱数列に従ってランダムに選択して、選択した画素同士を入れ換えるスクランブル処理を施す機能と、
前記スクランブル処理の施された前記画像データに所定の直交変換を施すことにより、変換係数を得る機能と、
前記変換係数に前記透かし情報の埋め込みを行う機能と、
前記透かし情報の埋め込まれた前記変換係数に、前記直交変換とは逆の変換を施すことにより、埋め込み済み画像データを生成する機能と、
前記埋め込み済み画像データに、前記スクランブル処理の場合とは逆の画素入れ換えを行う逆スクランブル処理を施して、透かし入り画像データを得る機能と、
をコンピュータに実現させるためのコンピュータプログラム。
【請求項１２】
画像データに透かし情報の埋め込みを行うためのコンピュータプログラムであって、
前記画像データを基準画像データとして、該基準画像データを低周波成分と高周波成分とに帯域分割し、前記低周波成分が得られるたびに該低周波成分を新たな基準画像データとして、同様の帯域分割処理を所定回数繰り返し、最終的に得られた前記低周波成分を対象画像データとして得る機能と、
前記対象画像データに対し、該対象画像データから複数の画素を所定の乱数列に従ってランダムに選択して、選択した画素同士を入れ換えるスクランブル処理を施す機能と、
前記スクランブル処理の施された前記対象画像データに所定の直交変換を施すことにより、変換係数を得る機能と、
前記変換係数に前記透かし情報の埋め込みを行う機能と、
前記透かし情報の埋め込まれた前記変換係数に、前記直交変換とは逆の変換を施すことにより、埋め込み済み画像データを生成する機能と、
前記埋め込み済み画像データに、前記スクランブル処理の場合とは逆の画素入れ換えを行う逆スクランブル処理を施す機能と、
前記逆スクランブル処理の施された前記埋め込み済み画像データを低周波成分として、該低周波成分と、前記帯域分割処理で得られた前記高周波成分とを合成して合成画像データを得て、該合成画像データが得られるたびに該合成画像データを新たな低周波成分として、同様の帯域合成処理を所定回数繰り返し、最終的に得られた前記合成画素データを透かし入り画像データとして得る機能と、
をコンピュータに実現させるためのコンピュータプログラム。
【請求項１３】
透かし情報の埋め込まれた透かし入り画像データから前記透かし情報を抽出するためのコンピュータプログラムであって、
前記透かし入り画像データに対し、該透かし入り画像データから複数の画素を所定の乱数列に従ってランダムに選択して、選択した画素同士を入れ換えるスクランブル処理を施す機能と、
前記スクランブル処理の施された前記透かし入り画像データに所定の直交変換を施すことにより、変換係数を得る機能と、
前記変換係数から、埋め込まれている前記透かし情報の抽出を行う機能と、
をコンピュータに実現させるためのコンピュータプログラム。
【請求項１４】
透かし情報の埋め込まれた透かし入り画像データから前記透かし情報を抽出するためのコンピュータプログラムであって、
前記透かし入り画像データを基準画像データとして、該基準画像データを低周波成分と高周波成分とに帯域分割し、前記低周波成分が得られるたびに該低周波成分を新たな基準画像データとして、同様の帯域分割処理を所定回数繰り返し、最終的に得られた前記低周波成分を対象画像データとして得る機能と、
前記対象画像データに対し、該対象画像データから複数の画素を所定の乱数列に従ってランダムに選択して、選択した画素同士を入れ換えるスクランブル処理を施す機能と、
前記スクランブル処理の施された前記対象画像データに所定の直交変換を施すことにより、変換係数を得る機能と、
前記変換係数から、埋め込まれている前記透かし情報の抽出を行う機能と、
をコンピュータに実現させるためのコンピュータプログラム。
【請求項１５】
請求項１１ないし請求項１４のうちの任意の１つに記載のコンピュータプログラムを記録したことを特徴とするコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像データに透かし情報を埋め込んだり、埋め込まれた透かし情報を抽出したりするための技術に関するものである。
【背景技術】
【０００２】
ネットワーク環境の整備とマルチメディア機器の普及により、デジタルコンテンツを手軽に利用できる時代になった。特に、インターネットを活用した双方向性のデジタルデータの送受信には、そこに流れる様々な情報や利用者に対するセキュリティの確保が不可欠である。音声や画像などのデジタルデータは、その再現性の高さから不正コピーの氾濫などの著作権侵害の危機にさらされている。この対策の一つとして、電子透かしが注目を浴びている。
【０００３】
電子透かしは、高品質なデジタルコンテンツに対し知覚できない形式で著作権情報などを透かし情報として密かに埋め込む技術である。一般に、電子透かしに必要な性質としては、コンテンツの品質保持と、電子透かしへの攻撃耐性および秘匿性と、が挙げられる。この攻撃耐性と秘匿性を同時に満たすのは、特に難しいとされている。すなわち、透かし情報の存在を高度に秘匿すると、簡単な攻撃で検出できなくなり、逆に攻撃耐性を強くすると、透かし情報の存在や埋め込み方法を解析されやすくなるという特性がある。
【０００４】
これらの要件を同時に満たす方式として、例えば、下記の特許文献１に開示されているごとく、周波数領域を利用した電子透かし埋め込み方法が数多く検討されている。周波数領域への透かし情報の埋め込みは、画像全域に透かし情報を効率よく分散配置できるという利点がある。
【０００５】
一方、スペクトル拡散技術を用いると、透かし情報をランダムな信号に見せかけることができる。この観点から、例えば、下記の非特許文献１に開示されているごとく、直接拡散(Direct  Sequence)法と周波数領域への埋め込みとを組み合わせた、直接拡散法による電子透かし埋め込み方法が、数多く提案されている。
【０００６】
このような直接拡散法による電子透かし埋め込み方法は、ノイズに対して強く、秘匿性が高いとされている。
【０００７】
それでは、従来における直接拡散法による電子透かし埋め込み方法について、具体的に説明する。
【０００８】
まず、原画像からＭ×Ｎ画素の部分領域を抽出し、それをＴとする。次に、｛＋１、−１｝の乱数ｐｉからなるＰＮ（pseudo-random number）系列Ｐ＝｛ｐｉ｜ｉ＝１，２，...｝を画像Ｔの画素値ｔｉに順次乗算し、拡散画像Ｊを生成する。次に、この拡散画像Ｊを、離散フーリエ変換（ＤＦＴ：discrete Fourier transform）法により周波数領域へ変換し、ＤＦＴ係数列Ｆを生成する。続いて、生成されたＤＦＴ係数列Ｆの中から、特定の周波数成分を抽出し、量子化鍵ｋｄにより量子化する。そして、透かし情報である透かし信号が"０"の時には、その量子化値を偶整数に丸め込み、"１"の時には奇整数に丸め込み、その後、その丸め込んだ値に量子化鍵ｋｄを乗じて、逆量子化する。次に、こうして得られたＤＦＴ係数列Ｆ'を、逆ＤＦＴして、拡散画像Ｊ'を生成する。さらに、この拡散画像Ｊ'をＰＮ系列ｐｉ∈Ｐにより逆拡散して、埋め込み済み画像Ｔ'を生成する。
【０００９】
次に、このようにして埋め込まれた透かし情報の抽出方法について、具体的に説明する。
【００１０】
まず、埋め込み済み画像Ｔ'の画素値ｔｉ'に、埋め込み時に使用したＰＮ系列Ｐを順次乗算し、拡散画像Ｊ"を生成する。次に、この拡散画像Ｊ"をＤＦＴ法で周波数領域へ変換し、ＤＦＴ係数列Ｆ"を生成する。続いて、生成されたＤＦＴ係数列Ｆ"のうち、透かし情報の埋め込みに使用した特定の周波数成分を、量子化鍵ｋｄにより量子化する。そうして、その量子化値が偶整数であるか、奇整数であるかを調べ、偶整数であれば、"０"、奇整数であれば、"１"として、透かし情報である透かし信号を抽出する。
【００１１】
以上のように、直接拡散法による電子透かし埋め込み方法では、画像をＰＮ系列で直接拡散し、その周波数成分を広域で平坦な状態に変換した後、この拡散された状態の周波数領域上において量子化法を用いて透かし情報を埋め込み、それを逆拡散する。この方法では、逆拡散の過程において透かし情報が広い帯域へと拡散されるため、ノイズに対して強く、秘匿性が高い。
【００１２】
【特許文献１】特開２００３−３２４７３号公報
【非特許文献１】大西淳児，岡一博，松井甲子雄、ＰＮ系列による画像への透かし署名法、１９９７年暗号と情報セキュリティシンポジウム、ＳＣＩＳ'９７−２６Ｂ（Ｊａｎ．１９９７）
【発明の開示】
【発明が解決しようとする課題】
【００１３】
しかしながら、上記した従来における直接拡散法による電子透かし埋め込み方法においては、その埋め込み方法を、輝度値の変化が少ない画像（すなわち、平坦な画像）に適用した場合に、直接拡散の符号列（すなわち、ＰＮ系列）が推定されてしまう可能性があるという問題があった。
【００１４】
そこで、この問題点を、図１４を用いて、以下説明する。図１４は従来における直接拡散法による電子透かし埋め込み方法の問題点を説明するための説明図である。
【００１５】
まず、画像の平坦な領域を想定し、図１４（ａ）に示すような、各画素がすべて値１００を持つ３２×３２画素の画像データを準備する。この画像に対し、上記した従来における直接拡散法による電子透かし埋め込み方法を用いて、図１４（ｂ）に示す透かし信号（透かし情報）を埋め込むと、図１４（ｃ）に示すような埋め込み済み画像が得られる。そこで、この埋め込み済み画像の起伏を詳細に観察すると、図１４（ｄ）に示すような符号列が推定できる。この推定符号列と実際に直接拡散に用いた符号列（すなわち、ＰＮ系列）とを比較すると、両者は完全に一致する。
【００１６】
つまり、平坦な画像に対し、従来における直接拡散法による電子透かし埋め込み方法を適用すると、透かし情報の埋め込まれた埋め込み済み画像から、直接拡散の符号列（すなわち、ＰＮ系列）を推定される可能性があった。
【００１７】
従って、本発明の目的は、上記した従来技術の問題点を解決し、平坦な画像に適用したとしても、埋め込む際に使用する符号列などが推定されることのない電子透かし埋め込み方法を提供することにある。
【課題を解決するための手段】
【００１８】
上記した目的の少なくとも一部を達成するために、本発明の第１の方法は、画像データに透かし情報の埋め込みを行う電子透かし埋め込み方法であって、
（ａ）前記画像データに対し、該画像データから複数の画素を所定の乱数列に従ってランダムに選択して、選択した画素同士を入れ換えるスクランブル処理を施す工程と、
（ｂ）前記スクランブル処理の施された前記画像データに所定の直交変換を施すことにより、変換係数を得る工程と、
（ｃ）前記変換係数に前記透かし情報の埋め込みを行う工程と、
（ｄ）前記透かし情報の埋め込まれた前記変換係数に、前記直交変換とは逆の変換を施すことにより、埋め込み済み画像データを生成する工程と、
（ｅ）前記埋め込み済み画像データに、前記スクランブル処理の場合とは逆の画素入れ換えを行う逆スクランブル処理を施して、透かし入り画像データを得る工程と、
を備えることを要旨とする。
【００１９】
このように、第１の電子透かし埋め込み方法では、画像データに対し、複数の画素を所定の乱数列に従ってランダムに選択して、選択した画素同士を入れ換えるスクランブル処理を施すようにしている。このようなスクランブル処理を用いると、透かし情報を広い帯域へランダムに分散させることができ、直接拡散法と同様な信号拡散効果を得ることができるため、ノイズに対して強く、秘匿性が高い電子透かしの埋め込みを実現できる。よって、正しい検出鍵を知らない第３者から、透かし情報の存在を秘匿でき、埋め込まれた透かし情報の不正な改ざんや除去を困難にすることができる。
【００２０】
また、例え、平坦な画像に適用したとしても、スクランブル処理におけるランダムな画素同士の入れ換えによって、埋め込む際に使用する乱数列（すなわち、符号列）の規則性がわかりにくくなるため、その符号列が推定されることがない。
【００２１】
さらにまた、透かし情報の埋め込んだとしても、画質が劣化することがなく、高画質を保持することができる。
【００２２】
本発明の第２の電子透かし埋め込み方法は、画像データに透かし情報の埋め込みを行う電子透かし埋め込み方法であって、
（ａ）前記画像データを基準画像データとして、該基準画像データを低周波成分と高周波成分とに帯域分割し、前記低周波成分が得られるたびに該低周波成分を新たな基準画像データとして、同様の帯域分割処理を所定回数繰り返し、最終的に得られた前記低周波成分を対象画像データとして得る工程と、
（ｂ）前記対象画像データに対し、該対象画像データから複数の画素を所定の乱数列に従ってランダムに選択して、選択した画素同士を入れ換えるスクランブル処理を施す工程と、
（ｃ）前記スクランブル処理の施された前記対象画像データに所定の直交変換を施すことにより、変換係数を得る工程と、
（ｄ）前記変換係数に前記透かし情報の埋め込みを行う工程と、
（ｅ）前記透かし情報の埋め込まれた前記変換係数に、前記直交変換とは逆の変換を施すことにより、埋め込み済み画像データを生成する工程と、
（ｆ）前記埋め込み済み画像データに、前記スクランブル処理の場合とは逆の画素入れ換えを行う逆スクランブル処理を施す工程と、
（ｇ）前記逆スクランブル処理の施された前記埋め込み済み画像データを低周波成分として、該低周波成分と、前記帯域分割処理で得られた前記高周波成分とを合成して合成画像データを得て、該合成画像データが得られるたびに該合成画像データを新たな低周波成分として、同様の帯域合成処理を所定回数繰り返し、最終的に得られた前記合成画素データを透かし入り画像データとして得る工程と、
を備えることを要旨とする。
【００２３】
このように、第２の電子透かし埋め込み方法では、画像データを基準画像データとして、その基準画像データを低周波成分と高周波成分とに帯域分割し、低周波成分が得られるたびにその低周波成分を新たな基準画像データとして、同様の帯域分割処理を所定回数繰り返し、最終的に得られた低周波成分を対象画像データとして得るようにしている。画像データに対し、このような帯域分割処理を施して、低周波成分を得て、その低周波成分に透かし情報の埋め込みを行うことにより、電子透かしへの攻撃耐性を高めることができる。例えば、ＪＰＥＧ圧縮に対して高い耐性を有することができるため、インターネットにおける画像の著作権保護技術に適している。
【００２４】
本発明の第１の電子透かし抽出方法は、透かし情報の埋め込まれた透かし入り画像データから前記透かし情報を抽出する電子透かし抽出方法であって、
（ａ）前記透かし入り画像データに対し、該透かし入り画像データから複数の画素を所定の乱数列に従ってランダムに選択して、選択した画素同士を入れ換えるスクランブル処理を施す工程と、
（ｂ）前記スクランブル処理の施された前記透かし入り画像データに所定の直交変換を施すことにより、変換係数を得る工程と、
（ｃ）前記変換係数から、埋め込まれている前記透かし情報の抽出を行う工程と、
を備えることを要旨とする。
【００２５】
このような第１の電子透かし検出方法によれば、前述した第１の電子透かし埋め込み方法によって埋め込まれた透かし情報を、埋め込み済み対象データから容易に抽出することができる。
【００２６】
本発明の第２の電子透かし抽出方法は、透かし情報の埋め込まれた透かし入り画像データから前記透かし情報を抽出する電子透かし抽出方法であって、
（ａ）前記透かし入り画像データを基準画像データとして、該基準画像データを低周波成分と高周波成分とに帯域分割し、前記低周波成分が得られるたびに該低周波成分を新たな基準画像データとして、同様の帯域分割処理を所定回数繰り返し、最終的に得られた前記低周波成分を対象画像データとして得る工程と、
（ｂ）前記対象画像データに対し、該対象画像データから複数の画素を所定の乱数列に従ってランダムに選択して、選択した画素同士を入れ換えるスクランブル処理を施す工程と、
（ｃ）前記スクランブル処理の施された前記対象画像データに所定の直交変換を施すことにより、変換係数を得る工程と、
（ｄ）前記変換係数から、埋め込まれている前記透かし情報の抽出を行う工程と、
を備えることを要旨とする。
【００２７】
このような第２の電子透かし検出方法によれば、前述した第２の電子透かし埋め込み方法によって埋め込まれた透かし情報を、埋め込み済み対象データから容易に抽出することができる。
【００２８】
本発明の電子透かし埋め込み方法または電子透かし抽出方法において、前記所定の直交変換は、離散コサイン変換であることが好ましい。
【００２９】
離散コサイン変換は信号処理の分野でよく利用されており、離散コサイン変換によるデータの無相関化は、信号処理の中でも特に画像の符号化および圧縮の分野で多くの成果を収めており、ソフトウェア・ハードウェア両方面での研究が盛んだからである。
【００３０】
なお、本発明は、上記した電子透かし埋め込み方法及び電子透かし抽出方法などの方法発明の態様に限ることなく、電子透かし装置などの装置発明としての態様で実現することも可能である。さらには、それら方法や装置を構築するためのコンピュータプログラムとしての態様や、そのようなコンピュータプログラムを記録した記録媒体としての態様や、上記コンピュータプログラムを含み搬送波内に具現化されたデータ信号など、種々の態様で実現することも可能である。
【発明を実施するための最良の形態】
【００３１】
以下、本発明の実施の形態を実施例に基づいて以下の順序で説明する。
Ａ．第１の実施例：
Ａ−１．電子透かし埋め込み処理：
Ａ−２．電子透かし抽出処理：
Ａ−３．スクランブル処理の効果：
Ａ−４．具体例：
Ａ−５．実施例の効果：
Ｂ．第２の実施例：
Ｂ−１．電子透かし埋め込み処理：
Ｂ−２．電子透かし抽出処理：
Ｂ−３．具体例：
Ｂ−４．実施例の効果：
Ｃ．装置全体の構成及び動作：
Ｄ．変形例：
Ｄ−１．変形例１：
Ｄ−２．変形例２：
Ｄ−３．変形例３：
Ｄ−４．変形例４：
【００３２】
Ａ．第１の実施例：
本発明の第１の実施例として、直接拡散法と同様な信号拡散効果を得ることが可能なスクランブル法を導入した実施例について説明する。
【００３３】
Ａ−１．電子透かし埋め込み処理：
図１は本発明の第１の実施例としての電子透かし埋め込み処理の概要を示す説明図である。
【００３４】
本実施例では、図１に従って、原画像データに対し、透かし情報である透かし信号ｃの埋め込みを行う。なお、透かし信号ｃとしては、長さＥのビット列ｃ（ｅ）（但し、ｅ＝０，１，...，Ｅ−１）を用いる。ビット列ｃ（ｅ）の値は０もしくは１である。
【００３５】
図１に従った埋め込み手順を、以下、詳細に説明する。
［ステップ１０１］：原画像データから、透かし情報の埋め込み対象となる埋め込み対象領域として、大きさＭｘＮ画素の領域を切り取り、これを画像データＧとする。
【００３６】
［ステップ１０２］：画像データＧをｆ回、スクランブル処理し、これを画像データＳとする。
【００３７】
ここで、スクランブル処理（スクランブル法）について詳細に説明する。まず、或る乱数列ＲＮＳを用意する。そして、この乱数列ＲＮＳから異なる４個の値を抽出して、それをＲ＝（ｒ０，ｒ１，ｒ２，ｒ３）とする。一方、画像データＧ（大きさＭｘＮ画素）に含まれる任意の画素値を、ｌ０（ｘ０，ｙ０）｛ｘ０｜０≦ｘ０≦Ｍ−１，ｙ０｜Ｏ≦ｙ０≦Ｎ−１｝で表す。そこで、画像データＧの中から、Ｒで指定される２つの画素ｌ０（ｒ０、ｒ１）とｌ０（ｒ２，ｒ３）を選び、それらの画素を入れ換える。この一連の処理を１回のスクランブル処理として、再帰的に異なるＲｉ（ｉ＝１，２，...，ｆ）を用いて、画像データＧに対し、ｆ回繰り返して、画像データＳを得る。
なお、乱数列ＲＮＳを生成する鍵ｋｒは、電子透かし用秘密鍵である。
【００３８】
図２は本実施例におけるスクランブル処理の結果を示す説明図である。図２に示す例では、画像データＧとして、ＳＩＤＢＡの標準画像Ｇｉｒｌを用いる。また、画像データＧの大きさは、２５６×２５６画素であるので、処理回数ｆの最大数を６５５３６回としている。
【００３９】
図２において、（ａ）は処理回数ｆを０回、（ｂ）は処理回数ｆを１６３４８回、（ｃ）は処理回数ｆを３２７６８回、（ｄ）は処理回数ｆを６５５３６回としたときの画像の様子を示している。
【００４０】
図２に示す結果から、処理回数ｆを画素数と同数としてスクランブル処理を繰り返すことによって、画像が一様にランダム化されることがわかる。
【００４１】
なお、このようなスクランブル処理に用いる攪拌テーブルは、別に準備することもできる。
【００４２】
［ステップ１０３］：画像データＳに、直交変換である離散コサイン変換（ＤＣＴ：discrete cosine transform）を施して、周波数成分（変換係数）であるＤＣＴ係数Ｘ（ａ，ｂ），｛ａ｜０≦ａ≦Ｍ−１，ｂ｜０≦ｂ≦Ｎ−１｝を得る。
【００４３】
画像データのような２次元の離散値に対しては、ＤＣＴとして２次元ＤＣＴを用いることができ、それは式（１）で表される。
【００４４】
【数１】
2005102066.tif 000003
【００４５】
ここで、Ｓ（ｍ，ｎ）は画像データであり、Ｘ（ａ，ｂ）は上述のごとくＤＣＴ係数である。
【００４６】
［ステップ１０４］：全てのＤＣＴ係数の絶対値｜Ｘ（ａ，ｂ）｜を用いて、それらの平均値ｘａｖｇを算出し、量子化する際の刻み幅ｋｄを式（２）に示すように求める。
【００４７】
ｋｄ＝α・ｘａｖｇ      （２）
ここで、αは埋め込み強度を制御する秘密鍵である。
【００４８】
［ステップ１０５］：ＤＣＴ係数Ｘ（ａ，ｂ）の中から、透かし信号（ビット列）ｃ［ｅ］の埋め込むべき位置（ａｅ，ｂｅ）を指定する。
【００４９】
［ステップ１０６］：埋め込み指定位置（ａｅ，ｂｅ）にあるＤＣＴ係数Ｘ（ａｅ，ｂｅ）を、刻み幅ｋｄを用いて、式（３）に示すように量子化する。
【００５０】
【数２】
2005102066.tif 000004
【００５１】
ここで、記号［］は、透かし信号のビット列ｃ（ｅ）の値が０であるならば、偶整数へ、ビット列ｃ（ｅ）の値が１であるならば、奇整数へ、それぞれ丸める量子化処理を示す。
【００５２】
［ステップ１０７］：量子化により得られた値Ｑ（Ｘ（ａｅ，ｂｅ））を逆量子化して、式（４）に示すように、Ｘ'（ａｅ，ｂｅ）を求める。
【００５３】
Ｘ'（ａｅ，ｂｅ）＝ｋｄ・Ｑ（Ｘ（ａｅ，ｂｅ）      （４）
そして、ＤＣＴ係数Ｘ（ａｅ，ｂｅ）を、その求めた値Ｘ'（ａｅ，ｂｅ）に置き換える。
【００５４】
［ステップ１０８］：ステップ１０５に戻り、ｅ←ｅ＋１として、次の透かし信号（ビット列）ｃ［ｅ］の埋め込むべき位置（ａｅ，ｂｅ）を指定し、ステップ１０６，１０７を実行し、以下、ｅ＝Ｅ−１まで繰り返す。
以上の処理により、透かし信号ｃの埋め込まれたＤＣＴ係数Ｘ'（ａ，ｂ）を得る。
【００５５】
［ステップ１０９］：ＤＣＴ係数Ｘ'（ａ，ｂ）に、逆離散コサイン変換（ＩＤＣＴ：inverse DCT）を施して、埋め込み済み画像データＳ'を生成する。
【００５６】
［ステップ１１０］：埋め込み済み画像データＳ'をｆ回、逆スクランブル処理し、埋め込み済み画像データＧ'を生成する。なお、この逆スクランブル処理は、先述した乱数列ＲＮＳの生成順を逆にして、スクランブル処理の場合と同様の入れ換え操作を施すだけでよい。
【００５７】
［ステップ１１１］：原画像データの埋め込み対象領域に、画像データＧに代えて、埋め込み済み画像データＧ'を貼り付けて、透かし入り画像データを得る。
【００５８】
Ａ−２．電子透かし抽出処理：
図３は本発明の第１の実施例としての電子透かし抽出処理の概要を示す説明図である。
【００５９】
本実施例では、図３に従って、透かし入り画像データから、透かし情報である透かし信号ｃ'を抽出する。
【００６０】
図３に従った抽出手順を、以下、詳細に説明する。
［ステップ２０１］：透かし入り画像データから、透かし情報の埋め込まれている埋め込み対象領域（大きさＭｘＮ画素）を切り取り、これを画像データＧ"とする。
【００６１】
［ステップ２０２］：画像データＧ"に対して、前述した埋め込み手順におけるステップ１０２〜１０７を実行し、透かし情報ｃ'の埋め込まれたＤＣＴ係数Ｘ"（ａ，ｂ）と、刻み幅ｋｄ'を求める。
【００６２】
［ステップ２０３］：ＤＣＴ係数Ｘ"（ａ，ｂ）から、埋め込み指定位置（ａｅ，ｂｅ）にあるＤＣＴ係数Ｘ（ａｅ，ｂｅ）を選択し、式（５）に示すように、値βを算出する。
【００６３】
【数３】
2005102066.tif 000005
【００６４】
ここで、記号〈〉は、最近傍整数値への丸め処理を示す。従って、値βが偶整数であるならば、透かし信号のビット列ｃ'（ｅ）の値を０とし、値βが奇整数であるならば、透かし信号のビット列ｃ'（ｅ）の値を１とする。
【００６５】
［ステップ２０４］：ステップ２０３に戻り、ｅ←ｅ＋１として、次の埋め込み指定位置（ａｅ，ｂｅ）にあるＤＣＴ係数Ｘ（ａｅ，ｂｅ）を選択し、同様の処理を行って、以下、ｅ＝Ｅ−１まで繰り返す。
以上の処理により、埋め込まれていた透かし情報ｃ'を抽出する。
【００６６】
Ａ−３．スクランブル処理の効果：
次に、本実施例の特徴部分であるスクランブル処理の効果について説明する。
【００６７】
図４は直接拡散法とスクランブル法（スクランブル処理）との符号拡散の違いを示す説明図である。図４において、（ａ）は直接拡散法を用いた場合を、（ｂ）はスクランブル法を用いた場合を、それぞれ示している。
【００６８】
図４（ｂ）に示すスクランブル法を用いた場合は、図４（ａ）に示す直接拡散法を用いた場合に比較して、拡散符号の規則性がわかりにくくなっていることが明らかである。
【００６９】
図５は透かし信号に対するスクランブル処理の信号拡散効果を説明するための説明図である。図５において、（ａ）はスクランブル処理を用いない場合の透かし信号を示し、（ｂ）はその透かし信号の信号スペクトルを示している。また、（ｃ）はスクランブル処理を用いた場合の透かし信号を示し、（ｄ）はその透かし信号の信号スペクトルを示している。
このようにスクランブルを用いると、透かし信号が広い帯域へランダムに分散されていることが分かる。
【００７０】
Ａ−４．具体例：
次に、実際の画像データに、本実施例の電子透かし埋め込み処理によって、透かし情報を埋め込む場合の具体例について説明する。
【００７１】
この具体例では、透かし情報の埋め込み対象となる原画像データとして、ＳＩＤＢＡの標準画像Ｇｉｒｌ，Ｌｅｎａを用いた。大きさは２５６×２５６画素である。
【００７２】
そして、これらの画像データに対し、（Ｍ，Ｎ，ｆ）＝（２５６，２５６，６５５３６）の条件で、スクランブル処理，ＤＣＴ処理を施し、得られたＤＣＴ係数３００個に対し、α＝１．０の強度で、透かし情報の埋め込みを施した。この結果、図６に示すような透かし入り画像が得られた。
【００７３】
図６は本実施例の電子透かし埋め込み処理で透かし情報を埋め込んだ透かし入り画像の一例を示す説明図である。
【００７４】
ここで、画像の画質を客観的に評価する方法としてＰＳＮＲを用いる。この評価方法は、原画像の大きさをＭ×Ｎ画素とし、その原画像の各輝度値をｇ（ｉ，ｊ）、評価対象画像の対応する輝度値をｇ'（ｉ，ｊ）としたときの画質を、式（６）として算出するものである。
【００７５】
【数４】
2005102066.tif 000006
【００７６】
一般的には、３５［ｄＢ］以上あれば、原画像と同等の画質を評価対象画像が保持しているといえる。
【００７７】
図６（ａ），（ｂ）に示す透かし入り画像では、いずれも、ＰＳＮＲが約４５［ｄＢ］であった。また、この図６から、視覚的にも大きな劣化を生じていないこともわかる。
【００７８】
さらに、（Ｍ，Ｎ，ｆ）＝（２５６，２５６，６５５３６）の条件の下で、透かし信号の埋め込みビット数とＰＳＮＲとの関係を調べると、図７に示すような結果が得られた。
【００７９】
図７は透かし信号の埋め込みビット数とＰＳＮＲとの関係を示すグラフである。
【００８０】
図７に示す結果から、３００［ｂｉｔｓ／ｆｒａｍｅ］を超えても、４０［ｄＢ］以上の高い画質を保持できることがわかる。
【００８１】
Ａ−５．実施例の効果：
以上説明したように、本実施例では、画像データに対しスクランブル処理を施しているため、透かし情報を広い帯域へランダムに分散させることができ、直接拡散法と同様な信号拡散効果を得ることができるため、ノイズに対して強く、秘匿性が高い電子透かしの埋め込みを実現できる。よって、正しい検出鍵を知らない第３者から、透かし情報の存在を秘匿でき、埋め込まれた透かし情報の不正な改ざんや除去を困難にすることができる。
【００８２】
また、例え、平坦な画像に適用したとしても、スクランブル処理におけるランダムな画素同士の入れ換えによって、埋め込む際に使用する乱数列（すなわち、符号列）の規則性がわかりにくくなるため、その符号列が推定されることがない。
【００８３】
さらにまた、透かし情報を埋め込んだとしても、画質が劣化することがなく、高画質を保持することができる。
【００８４】
Ｂ．第２の実施例：
そこで、本発明の第２の実施例として、各種攻撃手法に対する耐性を向上させるために帯域分割処理を導入した実施例について説明する。
【００８５】
Ｂ−１．電子透かし埋め込み処理：
図８は本発明の第２の実施例としての電子透かし埋め込み処理の概要を示す説明図である。
【００８６】
一般的には、透かし情報を低周波成分へ埋め込むことによって、電子透かしの攻撃耐性を高めることができる。そこで、本実施例では、第１の実施例におけるスクランブル法を用いた電子透かし埋め込み処理に、さらに、帯域分割処理として、ピラミッド階層化処理を導入するようにしている。
【００８７】
本実施例では、図８に従って、原画像データに対し、透かし情報である透かし信号ｃの埋め込みを行う。なお、透かし信号ｃとしては、第１の実施例と同様のものを用いる。
【００８８】
図８に従った埋め込み手順を、以下、詳細に説明する。
【００８９】
［ステップ３０１］：原画像データから、透かし情報の埋め込み対象となる埋め込み対象領域として、大きさＭｘＮ画素の領域を切り取り、これを画像データＧとする。
【００９０】
［ステップ３０２］：画像データＧを基準画像データＬ０とし、基準画像データＬ０に対しピラミッド階層化処理を施して、低周波成分Ｌ１と高周波成分Ｈ１とに帯域分割する。
【００９１】
具体的には、まず、大きさＭ×Ｎ画素の基準画像データＬ０に含まれる画素値をｌ０（ｘ０，ｙ０），０≦ｘ０≦Ｍ−１，０≦ｙ０≦Ｎ−１とする。
【００９２】
図９は画像のピラミッド階層化を説明するための説明図である。次に、図９に示すように、基準画像データＬ０の一階層上位にあるレベルの低周波成分をＬ１とすると、その要素ｌ１（ｘ１，ｙ１）は、式（７）で求められる。
【００９３】
【数５】
2005102066.tif 000007
【００９４】
一方、基準画像データＬ０と、低周波成分Ｌ１と、の差分を求め、その結果を高周波成分Ｈ１とする。すなわち、高周波成分Ｈ１の要素ｈ１（ｘ０，ｙ０）は、式（８）で求められる。
【００９５】
【数６】
2005102066.tif 000008
【００９６】
こうして、画像データＧ（＝Ｌ０）を、図９に示すように、ピラミッド階層化し、低周波成分Ｌ１と高周波成分Ｈ１の２つの帯域に分割することができる。
【００９７】
次に、求めた低周波成分Ｌ１を次の基準画像データとし、その基準画像データＬ１に対し、上記と同様のピラミッド階層化処理を施して、低周波成分Ｌ２と高周波成分Ｈ２とに帯域分割する。この結果、図１０に示すような画像が得られる。
【００９８】
図１０はＳＩＤＢＡの標準画像Ｇｉｒｌにピラミッド階層化処理を施した結果を示す説明図である。
【００９９】
［ステップ３０３］：ピラミッド階層化のレベル（階層数）がｕになるまで、ステップ３０２の処理を再帰的に繰り返し、最終的に得られた低周波成分Ｌｕを画像データとして得る。
【０１００】
［ステップ３０４］：画像データＬｕをｆ回、スクランブル処理し、これを画像データＳとする。
【０１０１】
［ステップ３０５］：画像データＳに対して、第１の実施例の埋め込み手順におけるステップ１０３〜１０９を実行し、透かし情報ｃの埋め込まれた埋め込み済み画像データＳ'を生成する。
【０１０２】
［ステップ３０６］：埋め込み済み画像データＳ'をｆ回、逆スクランブル処理し、画像データＬｕ'を生成する。
【０１０３】
［ステップ３０７］：画像データＬｕ'に、ステップ３０２，３０３で得られた高周波成分Ｈ１〜Ｈｕを用いて、逆ピラミッド階層化処理を施して、画像データＬ０'を生成する。
【０１０４】
この逆ピラミッド階層化処理では、ピラミッドの上位階層の低周波成分Ｌｉ'と高周波成分Ｈｉとを用いて、式（９）のように下位レベルを合成し、合成画像データＬｉ−１'を得る。
【０１０５】
【数７】
2005102066.tif 000009
【０１０６】
次に、得られた合成画像データＬｉ−１'を次の低周波成分とし、その低周波成分Ｌｉ−１'と高周波成分Ｈｉ−１とを用いて、次の下位レベルを合成し、合成画像データＬｉ−２'を得る。こうして、画像データＬ０'が得られるまで、かかる処理を再帰的に繰り返す。このような処理を行えば、信号をまったく劣化することなく、画像を再構成できる。
こうして、生成した画像データＬ０'を埋め込み済み画像データＧ'とする。
【０１０７】
［ステップ３０８］：原画像データの埋め込み対象領域に、画像データＧに代えて、埋め込み済み画像データＧ'を貼り付けて、透かし入り画像データを得る。
【０１０８】
Ｂ−２．電子透かし抽出処理：
図１１は本発明の第２の実施例としての電子透かし抽出処理の概要を示す説明図である。
【０１０９】
本実施例では、図１１に従って、透かし入り画像データから、透かし情報である透かし信号ｃ'を抽出する。
【０１１０】
図１１に従った抽出手順を、以下、詳細に説明する。
［ステップ４０１］：透かし入り画像データから、透かし情報の埋め込まれている埋め込み対象領域（大きさＭｘＮ画素）を切り取り、これを画像データＧ"とする。
【０１１１】
［ステップ４０２］：画像データＧ"を基準画像データＬ０"とし、基準画像データＬ０"に対しピラミッド階層化処理を施して、低周波成分Ｌ１"と、高周波成分Ｈ１"と、を求める。
【０１１２】
［ステップ４０３］：ピラミッド階層化のレベル（階層数）がｕになるまで、ステップ４０２の処理を繰り返し、最終的に、画像データＬｕ"を得る。
【０１１３】
［ステップ４０４］：画像データＬｕ"に対して、第１の実施例の抽出手順におけるステップ２０２〜２０４を実行し、埋め込まれていた透かし情報ｃ'を抽出する。
【０１１４】
Ｂ−３．具体例：
次に、実際の画像データに、本実施例の電子透かし埋め込み処理によって、透かし情報を埋め込む場合の具体例について説明する。
【０１１５】
この具体例では、透かし情報の埋め込み対象となる原画像データとして、図１２に示すような画像を用いる。
【０１１６】
図１２において、（ａ）は、高精細カラーデジタル標準画像データのＮ１Ａを２５６階調へ変換したものである。また、（ｂ）は、５１２×５１２画素の大きさで、透かし情報の埋め込みを施す領域を切り取ったものである。
【０１１７】
本実施例の電子透かし埋め込み処理に対して、まず、攻撃耐性を調べるために、条件を（Ｍ，Ｎ，ｆ）＝（５１２，５１２，４０００）に固定し、埋め込みパラメータとしてｕと式（１）のαを変更しながら、埋め込みを行う周波数帯域を低周波から高周波へ（１，１），（２，２），...と変化させた。
【０１１８】
次に、透かし入り画像における電子透かしの攻撃耐性を評価するツールとして、ＳｔｉｒＭａｒｋ３．１を用い、攻撃耐性を評価した。ＳｔｉｒＭａｒｋ３．１のコマンドオプション−Ｔｂａｓｅを用いて、攻撃手法ごとに耐性を評価し、本実施例の電子透かし埋め込み処理の特性を調べた。
【０１１９】
（１）ＪＰＥＧ圧縮
ＳｔｉｒＭａｒｋ３．１で使用できる圧縮率は９０〜１０（９０：高画質、１０：低画質）である。この具体例においては、圧縮率１５まで完全に透かし情報の抽出が可能であった。よって、本実施例の電子透かし埋め込み処理によれば、透かし情報はＪＰＥＧ圧縮に対して高い耐性があると考えられる。
【０１２０】
Ｂ−４．実施例の効果：
以上説明したとおり、本実施例では、画像データに対し、帯域分割処理であるピラミッド階層化処理を施して、低周波成分を得て、その低周波成分に透かし情報の埋め込みを行うことにより、電子透かしへの攻撃耐性を高めることができる。例えば、ＪＰＥＧ圧縮に対して高い耐性を有することができるため、インターネットにおける画像の著作権保護技術に適している。
【０１２１】
Ｃ．装置全体の構成及び動作：
上述した電子透かし埋め込み処理及び電子透かし検出処理を実行する電子透かし装置について、図１３を用いて説明する。図１３はそのような処理を実行する電子透かし装置１００の構成を示すブロック図である。
【０１２２】
図１３に示すように、この電子透かし装置１００は、パーソナルコンピュータで構成されており、コンピュータ本体１０２と、そのコンピュータ本体１０２に接続される入力装置であるキーボード１１０，ポインティングデバイス１１２と、同じくコンピュータ本体１０２に接続される出力装置であるモニタ１１４と、を備えている。
【０１２３】
また、コンピュータ本体１０２は、図１３に示すように、プログラムに従って種々の処理や制御を行なうためのＣＰＵ１０４と、プログラムを記憶したり、処理中に得られたデータなどを記憶したりするためのメモリ１０６と、各種プログラムや、原画像データ，透かし入り画像データなどの画像データを格納するためのハードディスク装置１０８と、入力装置及び出力装置と間でデータの受け渡しを行うＩ／Ｏ回路部１１６と、ネットワークケーブル１２０を介してネットワーク２００上にあるサーバなど他の装置との間でデータのやり取りを行うネットワークインターフェイス（Ｉ／Ｆ）回路部１１８と、を備えており、各部は互いにバスを介して接続されている。
【０１２４】
なお、コンピュータ本体１０２は、この他、ＣＤ−ＲＯＭドライブ装置やＰＣカードＩ／Ｆ回路部などを備えていてもよい。
【０１２５】
また、ＣＰＵ１０４は、メモリ１０６に格納されているプログラムのうち、電子透かし処理プログラムを実行することにより、領域切り取り部１２と、ピラミッド階層化処理部１４と、スクランブル処理部１６と、ＤＣＴ部１８と、透かし情報埋め込み部２０と、ＩＤＣＴ部２２と、逆スクランブル処理部２４と、逆ピラミッド階層化処理部２６と、領域貼り付け部２８と、透かし情報抽出部３０として機能する。なお、ピラミッド階層化処理部１４，逆ピラミッド階層化処理部２６は、上記した第２の実施例の処理を実行する際に追加される。
【０１２６】
これらのうち、領域切り取り部１２は、上記ステップ１０１，２０１，３０１，４０１で述べたとおり、原画像データから埋め込み対象領域を切り取って、画像データとする。ピラミッド階層化処理部１４は、上記ステップ３０２，３０３，４０２，４０３で述べたとおり、画像データにピラミッド階層化処理を施す。スクランブル処理部１６は、上記ステップ１０２，３０４で述べたとおり、画像データをスクランブル処理をする。ＤＣＴ部１８は、上記ステップ１０３で述べたとおり、画像データにＤＣＴを施して、ＤＣＴ係数を得る。透かし情報埋め込み部２０は、上記ステップ１０４〜１０８で述べたとおり、ＤＣＴ係数に透かし情報を埋め込む。ＩＤＣＴ部２２は、上記ステップ１０９で述べたとおり、ＤＣＴ係数にＩＤＣＴを施して、埋め込み済み画像データを生成する。逆スクランブル処理部２４は、上記ステップ１１０，３０６で述べたとおり、画像データを逆スクランブル処理をする。逆ピラミッド階層化処理部２６は、上記ステップ３０７で述べたとおり、画像データに逆ピラミッド階層化処理を施す。領域貼り付け部２８は、上記ステップ１１０，３０８で述べたとおり、原画像データの埋め込み対象領域に、埋め込み済み画像データを貼り付けて、透かし入り画像データを得る。透かし情報抽出部３０は、上記ステップ２０３，２０４で述べたとおり、ＤＣＴ係数から埋め込まれていた透かし情報を抽出する。
【０１２７】
なお、上記電子透かし処理プログラムは、アプリケーションプログラムで構成されるが、その一部をオペレーティングシステムプログラムによって構成するようにしてもよい。
【０１２８】
本実施例では、上記した電子透かし処理プログラムは、ＣＤ−ＲＯＭに記録された形態で提供され、ＣＤ−ＲＯＭドライブ装置（図示せず）により読み取られることによって、コンピュータ本体１０２内に取り込まれる。取り込まれたプログラムは、ハードディスク装置１０８に転送され、その後、起動時などにメモリ１０６に転送される。このように、本実施例では、プログラムをコンピュータ読み取り可能に記録する「記録媒体」としてＣＤ−ＲＯＭを利用することを述べたが、その他にも、フレキシブルディスク、光磁気ディスク、ＤＶＤ、メモリカード、ＩＣカード、ＲＯＭカートリッジ、パンチカード、バーコードなどの符号が印刷された印刷物、コンピュータの内部記憶装置（ＲＡＭやＲＯＭなどのメモリ）および外部記憶装置等の、コンピュータが読取り可能な種々の媒体を利用できる。また、上記電子透かし処理プログラムは、このような記録媒体に記録された形態で提供される他、ネットワーク２００を介して、プログラムを供給するプログラムサーバ（図示せず）からコンピュータ本体１０２内に取り込むようにしてもよい。
【０１２９】
Ｄ．変形例：
なお、この発明は上記の実施例や実施形態に限られるものではなく、その要旨を逸脱しない範囲において種々の態様において実施することが可能であり、例えば次のような変形も可能である。
【０１３０】
Ｄ−１．変形例１：
上記した実施例では、透かし情報（透かし信号）として、値が０もしくは１をとるビット列を用いているが、このビット列として、各画素の色が白または黒で表される２値画像データを用いるようにしてもよい。また、この２値画像データの表す透かし画像としては、例えば、白地に黒でロゴが記載されたロゴマーク画像などを用いることができる。このとき、画素の値は、マーク部分（黒の部分）を１とし、非マーク部分（白の部分）を０とする。また、このような２値画像データに代えて、テキスト情報を用いるようにしても良い。
【０１３１】
Ｄ−２．変形例２：
上記した実施例では、直交変換として、ＤＣＴを用いたが、ＤＦＴや、ウェーブレット変換や、変形離散コサイン変換（ＭＤＣＴ：modified DCT）などの他の種類の直交変換を採用することも可能である。
【０１３２】
Ｄ−３．変形例３：
上記した実施例では、２次元の離散値から成る画像データを対象としていたため、ＤＣＴとして２次元ＤＣＴを用いるようにしたが、画像を水平方向や垂直方向に順次走査するようにすれば、画像データを１次元の離散値と捉えることも可能であるので、そのような場合には、１次元ＤＣＴを用いるようにしてもよい。
【０１３３】
Ｄ−４．変形例４：
上記した実施例では、透かし情報の埋め込みの対象となる画像データとして、静止画の画像データを用いたが、動画の画像データを用いるようにしてもよい。
【図面の簡単な説明】
【０１３４】
【図１】本発明の第１の実施例としての電子透かし埋め込み処理の概要を示す説明図である。
【図２】第１の実施例におけるスクランブル処理の結果を示す説明図である。
【図３】本発明の第１の実施例としての電子透かし抽出処理の概要を示す説明図である。
【図４】直接拡散法とスクランブル法（スクランブル処理）との符号拡散の違いを示す説明図である。
【図５】透かし信号に対するスクランブル処理の信号拡散効果を説明するための説明図である。
【図６】第１の実施例の電子透かし埋め込み処理で透かし情報を埋め込んだ透かし入り画像の一例を示す説明図である。
【図７】透かし信号の埋め込みビット数とＰＳＮＲとの関係を示すグラフである。
【図８】本発明の第２の実施例としての電子透かし埋め込み処理の概要を示す説明図である。
【図９】画像のピラミッド階層化を説明するための説明図である。
【図１０】ＳＩＤＢＡの標準画像Ｇｉｒｌにピラミッド階層化処理を施した結果を示す説明図である。
【図１１】本発明の第２の実施例としての電子透かし抽出処理の概要を示す説明図である。
【図１２】具体例において用いられる透かし情報の埋め込み対象となる原画像データの一例を示す説明図である。
【図１３】電子透かし埋め込み処理及び電子透かし検出処理を実行する電子透かし装置１００の構成を示すブロック図である。
【図１４】従来における直接拡散法による電子透かし埋め込み方法の問題点を説明するための説明図である。
【符号の説明】
【０１３５】
１２...領域切り取り部
１４...ピラミッド階層化処理部
１６...スクランブル処理部
１８...ＤＣＴ部
２０...透かし情報埋め込み部
２２...ＩＤＣＴ部
２４...逆スクランブル処理部
２６...逆ピラミッド階層化処理部
２８...領域貼り付け部
３０...透かし情報抽出部
１００...電子透かし装置
１０２...コンピュータ本体
１０４...ＣＰＵ
１０６...メモリ
１０８...ハードディスク装置
１１０...キーボード
１１２...ポインティングデバイス
１１４...モニタ
１１６...Ｉ／Ｏ回路部
１１８...ネットワークＩ／Ｆ回路部
１２０...ネットワークケーブル
２００...ネットワーク
【図１】
2005102066.tif 000010
【図３】
2005102066.tif 000011
【図７】
2005102066.tif 000012
【図８】
2005102066.tif 000013
【図１１】
2005102066.tif 000014
【図１３】
2005102066.tif 000015
【図２】
2005102066.tif 000016
【図４】
2005102066.tif 000017
【図５】
2005102066.tif 000018
【図６】
2005102066.tif 000019
【図９】
2005102066.tif 000020
【図１０】
2005102066.tif 000021
【図１２】
2005102066.tif 000022
【図１４】
2005102066.tif 000023