(57)【特許請求の範囲】
【請求項１】
画像データを構成する複数の画素データのうち、少なくとも１つの画素データについて、データ値の変更により埋め込まれる電子透かし情報を判定する、電子透かし情報の判定方法であって、
前記判定対象画素データのデータ値を、当該判定対象となる画素データの近傍に位置する近傍画素データを用いて、推定するための補間方法を定める第１のステップと、
前記補間方法を用いて推定するのに必要な、複数の前記近傍画素データのデータ値を用いて、当該判定対象画素データのデータ値を推定する第２のステップと、
前記判定対象画素データについて、前記推定したデータ値と実際のデータ値とを比較することで、当該判定対象画素データに加えられた変更量を検出する第３のステップと、
当該変更量に基づいて、電子透かし情報を判定する第４のステップと、を有する
ことを特徴とする電子透かし情報の判定方法。
【請求項２】
請求項１記載の電子透かし情報の判定方法であって、
前記第２のステップは、複数の前記判定対象画素データ各々の前記補間方法を用いる推定に必要な複数の近傍画素データのデータ値を用いて、当該判定対象画素データ各々のデータ値を推定し、
前記第３のステップは、前記推定した複数のデータ値の総和Ｒと前記判定対象画素データ各々の実際のデータ値の総和Ｓとを比較することで、前記複数の判定対象画素データに加えられた変更量の総和Ｓ−Ｒを検出し、
前記第４のステップは、前記第２のステップで検出した変更量の総和Ｓ−Ｒを予め定められた閾値Ｔと比較することで、電子透かし情報を判定する
ことを特徴とする電子透かし情報の判定方法。
【請求項３】
請求項１記載の電子透かし情報の判定方法であって、
前記第１のステップにおいて、前記補間方法として、最小分散方向に沿った線形補間方法を用いることを定め、
前記第２のステップは、
前記判定対象画素データを通る一つの方向に沿った少なくとも２つの近傍画素データのデータ値の分散値を求める第５のステップと、
前記判定対象画素データを通る、複数の異なる方向毎に、前記第５のステップを行う第６のステップと、
前記複数の異なる方向の内、前記分散値が最小となる最小分散方向に沿った、少なくとも２つの近傍画素データを用いて、判定対象画素データのデータ値の推定を行う第７のステップと、を有する
ことを特徴とする電子透かし情報の判定方法。
【請求項４】
請求項１ないし３いずれか一に記載の電子透かし情報の判定方法であって、
前記データ値は、画素の輝度データである
ことを特徴とする電子透かし情報の判定方法。
【請求項５】
デジタルデータを構成する複数の画素データのうち、少なくとも１つの画素データについて、データ値の変更により埋め込まれる電子透かし情報を判定する、電子透かし情報判定のためのプログラムが記憶された記憶媒体であって、
当該プログラムは、情報処理装置に、請求項１、２、３または４記載の電子透かし情報の判定方法の各ステップを実行させる
ことを特徴とする電子透かし情報判定のためのプログラムが記憶された記憶媒体。
【請求項６】
画像データを構成する複数の画素データのうち、少なくとも１つの画素データについて、データ値の変更により埋め込まれる電子透かし情報を判定する電子透かし情報判定装置であって、
予め定めた補間方法が必要とする、前記判定対象となる画素データの近傍に位置する複数の近傍画素データのデータ値を用いて、前記判定対象画素データのデータ値を推定する推定手段と、
前記判定対象画素データについて、前記推定したデータ値と実際のデータ値とを比較することで、当該判定対象画素データに加えられた変更量を検出する検出手段と、
当該変更量に基づいて、電子透かし情報を判定する判定手段と、を備える
ことを特徴とする電子透かし情報判定装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、デジタルデータ、特に画像データに対する電子透かし技術に関する。
【０００２】
【従来の技術】
近年、画像データなどのデジタルデータに対する著作権保護の観点から、電子透かし技術が注目されつつある。電子透かし技術とは、所定の規則にしたがい、デジタルデータに、所定の情報を、少なくとも前記所定の規則を用いることなく当該所定の情報を当該デジタルデータから抽出できないように埋め込む技術である。たとえば、所定の規則にしたがい、画像データの購入者などに関する情報を当該画像データ自体に目に見えない形態で埋め込んでおき、不正コピーされた場合に、前記所定の規則にしたがって、不正コピーされたデータから埋め込まれた情報を抽出することで、不正コピーを行った者（すなわち購入者）を特定する。
【０００３】
図１１は、従来の電子透かし技術による画像データへの情報埋め込み・抽出処理の原理を説明するための図である。
【０００４】
図示するように、情報の埋め込み処理に際しては、埋め込みたい情報を構成するビットｂ１〜ｂ５０のうちビットｂｉ（１≦ｉ≦５０）について、画像データの予め定められた位置にある画素データの輝度を、当該ビットが１ならばＵだけ増加させ、０ならばＵだけ減少させるように変更する。この処理を埋め込む位置をかえながらビットｂ１〜ｂ５０の全てに対して行うことにより、画像データに情報を埋め込む。
【０００５】
一方、このようにして情報が埋め込まれた当該画像データは、拡大、縮小、圧縮、伸張、複写など、様々な画像処理が施されてデータ値が変更されている可能性がある。そのため埋め込まれた情報の抽出処理に際しては、埋め込まれた情報を構成するビットｂ１〜ｂ５０のうちビットｂｉ（１≦ｉ≦５０）について、画像データの前記予め定められた位置にある画素データの輝度の総和Ｓと、前記予め定められた位置の隣にある画素データの輝度の総和Ｒ（Ｒｅｆｅｒｅｎｃｅ  Ｖａｌｕｅ）とを検出し、Ｓ−Ｒ＞Ｔ（Ｔはしきい値であって、要求されるビット誤り率により異なるが、たとえば、Ｔ≧Ｕ×（ｂｉを埋め込んだ画素データ数）とする）であればｂｉ＝１と判断し、Ｓ−Ｒ＜−Ｔであればｂｉ＝０と判断し、そして、−Ｔ≦Ｓ−Ｒ≦Ｔであれば、前記予め定められた位置にある画素データに情報は埋め込まれていないと判断する。この処理をビットｂ１〜ｂ５０の全てに対して行うことにより、画像データに埋め込まれた情報を抽出する。
【０００６】
電子透かしの抽出技術に関しては、小林誠士、上條浩一、清水周一：“近傍ピクセルの性質を用いたデータハイディング−近傍ピクセルの統計的性質−”、情報処理学会第５６回（１９９８年）全国大会論文集３−３７〜３８ページに詳しく述べられている。
【０００７】
【発明が解決しようとする課題】
上述したように、従来の電子透かし技術による情報の抽出処理は、抽出すべきビットｂｉが埋め込まれていると考えられる画素データの輝度の総和Ｓが、それぞれ当該複数の画素データ各々に隣接する画素データの輝度の総和Ｒに対して、統計的に有為の大きさを持っているか否かに基づいて、当該ビットｂｉが１か０かを判断している。そして、統計的に有為の大きさを持っていない場合は、情報（ビットｂｉ）が埋め込まれていないと判断している。
【０００８】
ところで、画像データは、画像自体の輝度の凹凸（例えば輪郭部分）により、隣接する画素データ間において顕著な輝度差が生じる場合もある。このため、情報が埋め込まれていない場合であっても、上記のＳ−ＲがＴより大きくなったり、あるいは−Ｔより小さくなったりすることが考えられる。この場合、本来、情報が埋め込まれていないにもかかわらず、埋め込まれたものと誤検出してしまう。
【０００９】
また逆に、情報が埋め込まれた場合であっても、上記Ｓ−Ｒが−Ｔ≦Ｓ−Ｒ≦Ｔとなったりすることが考えられる。この場合、本来、情報を埋め込んだにも関わらず、埋め込まれてないものとして誤検出してしまう。
【００１０】
このような誤検出をなくすためには、情報埋め込みの強度Ｕを大きくし、情報抽出の際に用いる判定基準（しきい値）Ｔを大きくしてやればよい。しかしながら、このようにすると画質に与える影響が大きくなる。
【００１１】
埋め込み強度を式で表すと、Ｕ＝Δ×√（Ｖ／Ｎ）となる。ここで、ＶはＳ−Ｒの分散、Ｎは各ビット毎の画素データ数、Δは必要とされる検出精度に依存した定数である。この式より、具体的には、画像自体の輝度の凹凸により生ずるＳ−Ｒの変動（分散Ｖ）がｎ倍になった場合、同じ誤検出の確率を保つには、情報埋め込みの強度Ｕをルートｎ倍としなければならない。逆に、Ｓ−Ｒの変動（分散Ｖ）が小さくなれば、埋め込み量Ｕを抑えても、同じ検出精度を保つ事が出来る。
【００１２】
本発明は、上記事情に鑑みてなされたものであり、本発明の目的は、情報埋め込みの強度の増加を招くとこなく、埋め込まれた情報を精度よく判定、抽出することが可能な電子透かし技術を提供することにある。
【００１３】
本発明の他の目的は、画質への影響を少なくしつつ、具体的には、画質劣化を抑えつつ、埋め込まれた情報を精度よく判定、抽出することが可能な情報埋め込み技術を提供することにある。
【００１４】
【課題を解決するための手段】
上記課題を解決するために、本発明は、デジタルデータを構成する複数の要素データのうち、少なくとも１つの要素データについて、データ値の変更により埋め込まれる電子透かし情報を判定する、電子透かし情報の判定方法であって、当該判定対象となる要素データの近傍に位置する少なくとも２つの近傍要素データのデータ値を用いて、当該判定対象要素データのデータ値を推定する第１のステップと、前記判定対象要素データについて、前記推定したデータ値と実際のデータ値とを比較することで、当該判定対象要素データに加えられた変更量を検出する第２のステップと、当該変更量に基づいて、電子透かし情報を判定する第３のステップと、を有することを特徴とする。
【００１５】
ここで、要素データとは、たとえばデジタルデータが画像データである場合、画素データに当たる。また、この場合、データ値とは、たとえば輝度データに当たる。
【００１６】
なお、前記第３のステップは、たとえば、前記第２のステップで検出した変更量を予め定められた閾値と比較することで、電子透かし情報を判定すればよい。
【００１７】
近年、画像データなどのデジタルデータの補間技術、すなわちデジタルデータを構成する要素データが欠落している場合に、当該欠落要素データを、周辺要素データから推定する技術の向上が目覚ましい。本発明では、情報が埋め込まれていると考えられる少なくとも１つの要素データの近傍に位置する少なくとも２つの要素データを用いて、前記少なくとも１つの要素データのデータ値を推定している。そして、推定したデータ値をＲｅｆｅｒｅｎｃｅ  Ｖａｌｕｅとして、前記少なくとも１つの要素データの実際のデータ値と比較することで、情報埋め込みを判定する。すなわち情報が埋め込まれたかどうかの判定と、埋め込まれていた場合にはその値の判定を行なう。
【００１８】
このようにすることで、前記推定したデータ値は、前記少なくとも１つの要素データの情報が埋め込まれる前のデータ値と略等しくなるので、上記従来技術に比べ、判定を精度よく行なうことが可能となる。
【００１９】
【発明の実施の形態】
まず、本発明の１実施形態が適用された電子透かし情報判定装置の具体的な説明に先立ち、本実施形態における画像データへの情報埋め込み・判定処理の原理を説明する。
【００２０】
図１は、本発明の１実施形態における画像データへの情報埋め込み・判定処理の原理を説明するための図である。
【００２１】
図示するように、情報の埋め込み処理に際しては、埋め込みたい情報を構成するビットｂ１〜ｂ５０のうちビットｂｉ（１≦ｉ≦５０）について、画像データの予め定められた場所１〜１００に各々位置する２×２の画素データの輝度を、当該ビットｂｉが１ならばＵだけ増加させ、０ならばＵだけ減少させるように変更する。この処理を埋め込む場所を変えながらビットｂ１〜ｂ５０の全てに対して行うことにより、画像データにビットｂ１〜ｂ５０の情報を埋め込む。
【００２２】
一方、このようにして埋め込まれた情報の判定処理に際しては、ビットｂ１〜ｂ５０のうち、ビットｂｉ（１≦ｉ≦５０）について、画像データの前記予め定められた場所１〜１００に各々位置する２×２の画素データの輝度値を読み出し、読み出した輝度値の総和（この場合、２×２×１００＝４００画素分の総和となる）Ｓを求める。次に、画像データの前記予め定められた場所１〜１００に各々位置する２×２の画素データについて、当該２×２の画素データの近傍に位置する少なくとも２つの画素データ（以下、周辺画素データとも称する）より、補間技術を用いて、当該２×２の画素データ各々の輝度値を推定する。そして、推定した輝度値の総和（この場合、２×２×１００＝４００画素分の総和となる）Ｒを求める。それから、総和Ｓと総和Ｒの差分を求め、Ｓ−Ｒ＞Ｔ（ここで、Ｔは要求されるビット誤り率により異なるが、たとえば、Ｔ≧Ｕ×（ｂｉを埋め込んだ画素データ数すなわち４００）とする）であればｂｉ＝１と判断し、Ｓ−Ｒ＜−Ｔであればｂｉ＝０と判断し、そして、−Ｔ≦Ｓ−Ｒ≦Ｔであれば、前記予め定められた場所１〜１００に各々位置する２×２の画素データにビットｂｉの情報は埋め込まれていないと判断する。この処理をｂ１〜ｂ５０の全てに対して行うことにより、画像データに対するビットｂ１〜ｂ５０の情報埋め込みを判定する。
【００２３】
上記の補間技術として、たとえば、ニアレスト・ネイバー法、バイ・リニア法、バイ・キュービック法などが考えられる。ニアレスト・ネイバー法は、補間対象画素にもっとも近い場所にある画素の輝度値を採用する方法である。バイ・リニア法は、補間対象画素のまわりの４点を用いて１次近似で輝度値を決める方法である。バイ・キュービック法は、補間対象画素のまわりの１６点を用いて３次元の近似補間を行い輝度値を決める方法である。
【００２４】
当該２×２の画素データ各々の輝度値を推定する際に、図１２に示すように周辺画素データを通る、縦横斜め方向など（方向数は制限されない）の中で輝度変動が最小の方向を選び、その方向に沿った補間を行うことで、より正確に補間することが出来る。
【００２５】
次に、上記の電子透かし情報判定処理を行う電子透かし情報判定装置について説明する。図２は、本発明の１実施形態が適用された電子透かし情報判定装置の機能構成図である。
【００２６】
図示するように、本実施形態の電子透かし情報判定装置は、処理部５０１と記憶部５０７とでなる。
【００２７】
処理部５０１は、電子透かし情報の判定対象となる画像データや当該画像データに対して電子透かし情報の入出力を担う入出力部５０２と、電子透かし情報判定装置の各部を統括的に制御する制御部５０３と、輝度値読出し部５０４と、輝度値推定部５０５と、情報抽出部５０６とを有する。
【００２８】
記憶部５０７は、入出力部５０２を介して入力された、電子透かし情報を判定する画像データを保持する情報挿入画像保持部５０８と、入出力部５０２を介して受け付けた、電子透かし情報を構成するビットｂ１〜ｂ５０各々について、当該ビットの埋め込み場所となる画像データ上の複数の場所を特定する情報を保持する情報挿入位置保持部５０９と、読出し輝度保持部５１０と、推定輝度保持部５１１と、抽出情報保持部５１２とを有する。
【００２９】
輝度読出し部５０４は、情報挿入画像保持部５０８に保持されている画像データに対して、情報挿入位置保持部５０９に保持されている情報に従い、電子透かし情報を構成するビットｂ１〜ｂ５０の各ビット毎に、当該ビットが埋め込まれていると考えられる複数の場所に各々位置する２×２の画素データの輝度値を読み出し、その総和（この場合、１ビットにつき、２×２×１００＝４００画素分の総和となる）Ｓを求める。そして、ビットｂ１〜ｂ５０の各ビット毎に求めた総和Ｓを読出し輝度保持部５１０に保持させる。
【００３０】
輝度値推定部５０５は、情報挿入画像保持部５０８に保持されている画像データに対して、電子透かし情報を構成するビットｂ１〜ｂ５０の各ビット毎に、情報挿入位置保持部５０９に保持されている情報により特定される当該ビットが埋め込まれていると考えられる複数の場所に各々位置する２×２の画素データの近傍にある少なくとも２つの周辺画素データの輝度値を読み出す。そして、当該少なくとも２つの周辺画素データの輝度値より、補間技術を用いて、対応する２×２の画素データの輝度値を推定し、その総和（この場合、１ビットにつき、２×２×１００＝４００画素分の総和となる）Ｒを求める。それから、ビットｂ１〜ｂ５０の各ビット毎に求めた総和Ｒを、推定輝度保持部５１１に保持させる。
【００３１】
情報抽出部５０６は、電子透かし情報を構成するビットｂ１〜ｂ５０の各ビット毎に、読出し輝度保持部５１０に保持された総和Ｓと推定輝度保持部５１１に保持された総和Ｒとの差分Ｓ−Ｒを求め、当該差分を予め定められた閾値Ｔと比較することで、対応するビットのビット値を判定する。具体的には、ビットｂｉについて、Ｓ−Ｒ＞Ｔであればｂｉ＝１と判断し、Ｓ−Ｒ＜−Ｔであればｂｉ＝０と判断し、そして、−Ｔ≦Ｓ−Ｒ≦Ｔであれば、ビットｂｉは埋め込まれていないと判断する。
【００３２】
なお、本実施例においては、電子透かし情報を構成するビット数は５０であり、，各ビットの埋め込み場所は２×２の画素データ領域であって、各埋め込み領域の位置、数は既知であると仮定している。これらの情報は、当該電子透かし情報を埋め込む者より予め通知されていてもよい。
【００３３】
次に、本実施形態が適用された電子透かし情報判定装置のハードウエア構成について説明する。図３は、図２に示す電子透かし情報判定装置のハードウエア構成の一例を示す図である。
【００３４】
図示するように、本実施形態の電子透かし情報判定装置は、ＣＰＵ６０１と、メモリ６０２と、ハードディスク装置などの外部記憶装置６０３やその他の外部記憶装置６０４と、キーボードなどの入力装置６０５と、ディスプレイなどの出力装置６０６と、外部記憶装置や入出力装置とのインターフェース６０７とを備えた、一般的な構成を有する情報処理装置上に構築することができる。ここで、図２に示す処理部５０１の各部は、ＣＰＵ６０１がメモリ６０２上にロードされたプログラムを実行することで、情報処理装置上に具現化されるプロセスとして実現される。また、この場合、メモリ６０２や外部記憶装置６０３、６０４が図２に示す記憶部５０７として使用される。
【００３５】
上述した、ＣＰＵ６０１により実行されることで情報処理装置上に本実施形態の電子透かし情報判定装置を具現化するためのプログラムは、予め外部記憶装置６０３に記憶され、必要に応じてメモリ６０２上にロードされ、ＣＰＵ６０１により実行される。あるいは、可搬性の記憶媒体６０８、たとえばＣＤ−ＲＯＭを扱う外部記憶装置６０４を介して、必要に応じて、可搬性の記憶媒体６０８からメモリ６０２上にロードされ、ＣＰＵ６０１により実行される。もしくは、一旦、外部記憶装置６０４を介して、可搬性の記憶媒体６０８から外部記憶装置６０３にインストールされた後、必要に応じて、外部記憶装置６０３からメモリ６０２上にロードされ、ＣＰＵ６０１により実行される。
【００３６】
次に、本実施形態が適用された電子透かし情報判定装置の動作について説明する。
【００３７】
まず、制御部５０３は、入出力部５０２と協調して、電子透かし情報を判定する画像データを情報挿入画像保持部５０８に保持させる。また、制御部５０３は、電子透かし情報を構成するビットｂ１〜ｂ５０各々について、当該ビットの情報の埋め込み場所となっている画像データ上の場所（図１に示す例では、各ビットにつき１００箇所ある）を特定する情報を予め情報挿入位置保持部５０９に保持させているものとする。
【００３８】
図４は、情報挿入位置保持部５０９に保持される、電子透かし情報を構成するビットｂ１〜ｂ５０各々の埋め込み場所を特定するため情報が格納されたテーブルの一例を示している。ここでは、電子透かし情報を構成するビットｂ１〜ｂ５０の各ビットにつき、当該ビットの埋め込み場所１〜１００を、その場所に位置する画素データのＸおよびＹ座標値（図１参照）により特定するようにしている。なお、本実施形態では、図１に示すように、場所１〜１００の各々につき、当該場所に位置する２×２の画素データが情報の埋め込み場所となっているので、図４に示すＸおよびＹ座標で特定される画素データを、この２×２の画素データのいずれか１つに設定すればよい。ここでは、２×２の画素データの左上に位置する画素データに設定しているものとする。
【００３９】
なお、ビットｂ１〜ｂ５０各々について、当該ビットの、画像データ上の埋め込み場所を特定する情報は、たとえば図３において、予め外部記憶装置６０３や６０４に記憶させておくようにすればよい。また、当該画像データは、外部記憶装置６０４を介して可搬性を有する記憶媒体から提供されるようにしてもよいし、あるいは、図示していない通信インターフェースを介して、通信回線より提供されるようにしてもよい。
【００４０】
次に、電子透かし情報判定装置は、電子透かし情報を構成するビットｂ１〜ｂ５０各々について、当該ビットの埋め込み場所にある複数の画素データの実際の輝度値の総和Ｓ１〜Ｓ５０を求める。
【００４１】
図５は、図２に示す電子透かし情報判定装置において、電子透かし情報を構成するビットｂ１〜ｂ５０各々について、当該ビットの情報埋め込み場所となる複数の画素データの実際の輝度値の総和Ｓ１〜Ｓ５０を求める際の動作を説明するためのフロー図である。
【００４２】
まず、制御部５０３は、輝度抽出対象となるビットｂｉを特定するｉを１に設定し（ステップＳ１００１）、その後、ビットｂｉの情報の埋め込み場所となっている画素データの抽出輝度値の総和Ｓｉを０に設定する（ステップＳ１００２）。それから、ビットｂｉの情報の埋め込み場所を特定するｊ（１≦ｊ≦１００）を１に設定する（ステップＳ１００３）。
【００４３】
次に、輝度値読出し部５０４は、情報挿入位置保持部５０９からビットｂｉと場所ｊに対応する画素データＰ（ｉ，ｊ）の座標（ｋ，ｌ）を読み出し（図４参照）、情報挿入画像保持部５０８に保持されている画像データから座標（ｋ，ｌ）にある画素データＰ（ｉ，ｊ）の輝度値Ｉ（ｋ，ｌ）を読み出し、これをビットｂｉの情報の埋め込み場所となっている画素データの抽出輝度値の総和Ｓｉに加える（ステップＳ１００４）。次に、Ｐ（ｉ，ｊ）の右隣り位置（ｋ＋１，ｌ）にある画素データの輝度値Ｉ（ｋ＋１，ｌ）を読み出し、これをビットｂｉの情報の埋め込み場所となっている画素データの抽出輝度値の総和Ｓｉに加える（ステップＳ１００５）。次に、Ｐ（ｉ，ｊ）の真下位置（ｋ，ｌ＋１）にある画素データの輝度値Ｉ（ｋ，ｌ＋１）を読み出し、これをビットｂｉの情報の埋め込み場所となっている画素データの抽出輝度値の総和Ｓｉに加える（ステップＳ１００６）。そして、Ｐ（ｉ，ｊ）の右下位置（ｋ＋１，ｌ＋１）にある画素データの輝度値Ｉ（ｋ＋１，ｌ＋１）を読み出し、これをビットｂｉの情報の埋め込み場所となっている画素データの抽出輝度値の総和Ｓｉに加える（ステップＳ１００７）。このステップＳ１００４〜Ｓ１００７での処理により、場所ｊに位置するビットｂｉの情報の埋め込み場所となっている２×２の画素データ全ての実際の輝度値が読み出され、その値が総和Ｓｉに加算されたことになる。
【００４４】
次に、制御部５０３は、ｊの値をインクリメントし（ステップＳ１００８）、ｊの値が１００になるまで上記ステップＳ１００４〜Ｓ１００８の処理を繰り返す（ステップＳ１００９）。これにより、ビットｂｉについて、当該ビットの情報の埋め込み場所となっている場所１〜１００に各々位置する２×２の画素データの実際の輝度値が全て読み出され、その総和Ｓｉが算出されたことになる。
【００４５】
次に、輝度値読出し部５０４は、算出された総和Ｓｉをビットｂｉに対応付けて読出し輝度保持部５１０に記憶させる。その後、制御部５０３は、ｉの値をインクリメントし（ステップＳ１０１０）、ｉの値が５０になるまで上記ステップＳ１００２〜Ｓ１０１０の処理を繰り返す（ステップＳ１０１１）。これにより、電子透かし情報を構成するビットｂ１〜ｂ５０各々について、図６に示すように、当該ビットの情報の埋め込み場所となっている複数の画素データの実際の輝度値の総和Ｓ１〜Ｓ５０が求められたことになる。
【００４６】
次に、電子透かし情報判定装置は、電子透かし情報を構成するビットｂ１〜ｂ５０各々について、当該ビットの情報の埋め込み場所となっている複数の画素データ各々の近傍に位置する少なくとも２つの周辺画素データから当該画素データの輝度値を推定し、その総和Ｒ１〜Ｒ５０を求める。
【００４７】
図７は、図２に示す電子透かし情報判定装置において、電子透かし情報を構成するビットｂ１〜ｂ５０各々について、当該ビットの情報の埋め込み場所となっている複数の画素データ各々の近傍に位置する少なくとも２つの周辺画素データから当該画素データの輝度値を推定し、その総和Ｒ１〜Ｒ５０を求める際の動作を説明するためのフロー図である。
【００４８】
まず、制御部５０３は、輝度推定対象となるビットｂｉを特定するｉを１に設定し（ステップＳ２００１）、その後、ビットｂｉの情報の埋め込み場所となっている画素データの推定輝度値の総和Ｒｉを０に設定する（ステップＳ２００２）。それから、ビットｂｉの情報の埋め込み場所を特定するｊ（１≦ｊ≦１００）を１に設定する（ステップＳ２００３）。
【００４９】
次に、輝度値推定部５０５は、情報挿入位置保持部５０９からビットｂｉと場所ｊに対応する画素データＰ（ｉ，ｊ）の座標（ｋ，ｌ）を読み出し（図４参照）、当該位置を左上とする２×２の画素データの近傍に位置する少なくとも２つの周辺画素データの輝度値（たとえば、前記２×２の画素データに隣接する位置にある８つの画素データの輝度値Ｉ（ｋ，ｌ−１）、Ｉ（ｋ＋１，ｌ−１）、Ｉ（ｋ−１，ｌ）、Ｉ（ｋ−１，ｌ＋１）、Ｉ（ｋ，ｌ＋２）、Ｉ（ｋ＋１，ｌ＋２）、Ｉ（ｋ＋２，ｌ）、Ｉ（ｋ＋２，ｌ＋１））を、情報挿入画像保持部５０８に保持されている画像データから読み出す（ステップＳ２００４）。
【００５０】
次に、輝度値推定部５０５は、前記少なくとも２つの周辺画素データ各々の画素位置と輝度値とから、補間技術を用いて、画素データＰ（ｉ，ｊ）の輝度値を推定する。たとえば、画素データＰ（ｉ，ｊ）の上下左右にある周辺画素データの輝度値、すなわち、Ｉ（ｋ，ｌ−１）、Ｉ（ｋ，ｌ＋２）、Ｉ（ｋ−１，ｌ）、Ｉ（ｋ＋２，ｌ）の４つの画素データの輝度値を用いて、バイリニア法により、座標（ｋ，ｌ）にある画素データＰ（ｉ，ｊ）の輝度値Ｉ（ｋ，ｌ）を推定する。そして、推定した輝度値を、ビットｂｉの情報の埋め込み場所となっている画素データの推定輝度値の総和Ｒｉに加える（ステップＳ２００５）。次に、同様にして、Ｐ（ｉ，ｊ）の右隣り位置（ｋ＋１，ｌ）にある画素データの輝度値Ｉ（ｋ＋１，ｌ）を推定し、これをビットｂｉの情報の埋め込み場所となっている画素データの推定輝度値の総和Ｒｉに加える（ステップＳ２００６）。次に、同様にして、Ｐ（ｉ，ｊ）の真下位置（ｋ，ｌ＋１）にある画素データの輝度値Ｉ（ｋ，ｌ＋１）を推定し、これをビットｂｉの情報の埋め込み場所となっている画素データの推定輝度値の総和Ｒｉに加える（ステップＳ２００７）。そして、同様にして、Ｐ（ｉ，ｊ）の右下位置（ｋ＋１，ｌ＋１）にある画素データの輝度値Ｉ（ｋ＋１，ｌ＋１）を推定し、これをビットｂｉの情報の埋め込み場所となっている画素データの推定輝度値の総和Ｒｉに加える（ステップＳ２００８）。このステップＳ２００５〜Ｓ２００８での処理により、場所ｊに位置するビットｂｉの情報の埋め込み場所となっている２×２の画素データ全ての輝度値が推定され、その値が総和Ｒｉに加算されたことになる。
【００５１】
次に、制御部５０３は、ｊの値をインクリメントし（ステップＳ２０１０）、ｊの値が１００になるまで上記ステップＳ２００５〜Ｓ２００９の処理を繰り返す（ステップＳ２０１０）。これにより、ビットｂｉについて、当該ビットの情報の埋め込み場所となっている場所１〜１００に各々位置する２×２の画素データの輝度値が全て推定され、その総和Ｒｉが算出されたことになる。
【００５２】
次に、輝度値推定部５０５は、算出された総和Ｒｉをビットｂｉに対応付けて推定輝度保持部５１１に記憶させる。その後、制御部５０３は、ｉの値をインクリメントし（ステップＳ２０１１）、ｉの値が５０になるまで上記ステップＳ２００２〜Ｓ２０１１の処理を繰り返す（ステップＳ２０１２）。これにより、電子透かし情報を構成するビットｂ１〜ｂ５０各々について、図８に示すように、当該ビットの情報の埋め込み場所となっている複数の画素データの推定輝度値の総和Ｒ１〜Ｒ５０が求められたことになる。
【００５３】
次に、電子透かし情報判定装置は、図５に示すフローにより求めた画素データの抽出輝度値の総和Ｓ１〜Ｓ５０と、図７に示すフローにより求めた画素データの推定輝度値の総和Ｒ１〜Ｒ５０とを比較し、電子透かし情報を構成するビットｂ１〜ｂ５０各々のビット値を判定する。
【００５４】
図９は、図５に示すフローにより求めた画素データの抽出輝度値の総和Ｓ１〜Ｓ５０と図７に示すフローにより求めた画素データの推定輝度値の総和Ｒ１〜Ｒ５０とを比較して、電子透かし情報を構成するビットｂ１〜ｂ５０各々のビット値を判定する際の動作を説明するためのフロー図である。
【００５５】
まず、制御部５０３は、ビット値の判定対象となるビットｂｉを特定するｉを１に設定する（ステップＳ３００１）。次に、情報抽出部５０６は、ビットｂｉに対応する実際の輝度値の総和Ｓｉと推定輝度値の総和Ｒｉを、それぞれ読出し輝度保持部５１０と推定輝度保持部５１１から読み出す（ステップＳ３００２）。
【００５６】
次に、情報抽出部５０６は、読み出したＳｉとＲｉとの差分Ｓｉ−Ｒｉが、予め定められた閾値Ｔより大きいか否かを判定する（ステップＳ３００３）。大きい場合は、ビットｂｉのビット値は１であると判定し、その結果を抽出情報保持部５１２に保持させる（ステップＳ３００４）。一方、小さい場合は、差分Ｓｉ−Ｒｉが−Ｔより小さいか否かを判定する（ステップＳ３００５）。小さい場合は、ビットｂｉのビット値は０であると判定し、その結果を抽出情報保持部５１２に保持させる（ステップＳ３００６）。
【００５７】
上記のステップＳ３００３、３００５のいずれにおいてもＮＯの場合、すなわち、−Ｔ≦Ｓｉ−Ｒｉ≦Ｔの場合は、ビットｂｉの情報が記憶されていないものと判定し、その結果を抽出情報保持部５１２に保持させる（ステップＳ３００７）。
【００５８】
次に、制御部５０３は、ｉを１つインクリメントし（ステップＳ３００８）、ｉが１から５０になるまで、上記のステップＳ３００２〜ステップＳ３００８の処理を繰り返す（ステップＳ３００９）。これにより、電子透かし情報を構成するビットｂ１〜ｂ５０全ての判定結果が、抽出情報保持部５１２に保持されることになる。この結果は、入出力部５０２を介して出力され、ディスプレイなどの出力装置に出力される。
【００５９】
以上、本発明の１実施形態について説明した。
【００６０】
本実施形態によれば、電子透かし情報が埋め込まれていると考えられる画素データの実際の輝度値と、近年の技術向上が目覚ましい画像の補間技術を用いて、当該画素データの近傍に位置する少なくとも２つの画素データより推定した、当該画素データの情報が埋め込まれていない状態の輝度値と略等しい当該画素データの輝度値とを比較するようにしている。
【００６１】
このようにすることで、上記従来の電子透かし技術による情報判定処理に比べ、判定基準（しきい値）Ｔや情報埋め込みの強度Ｕを大きくしなくても、情報の埋め込みを精度よく判定することが可能となる。
【００６２】
また、情報埋め込み強度Ｕを大きくしなくても良いので、画像データの画質劣化を防ぐことが可能になる。
【００６３】
なお、本発明は上記の実施形態に限定されるものではなく、その要旨の範囲内で様々な変形が可能である。
【００６４】
たとえば、上記の実施形態では、図１に示すように、電子透かし情報を構成するビットｂ１〜ｂ５０各々について、当該ビットのビット値を表す情報の埋め込み場所が、予め定められた画像データ上の場所１〜１００に各々位置する２×２の画素データである場合を例に採り説明したが、これに限定されない。図１０に示すように、当該場所が、予め定められた画像データ上の場所１〜１００に各々位置する１つの画素データであってもよい。この場合、図５においてステップＳ１００５〜ステップＳ１００７は不要となる。また、図７においてステップＳ２００６〜ステップＳ２００８は不要となる。
【００６５】
また、図９に示す処理フローの変形例として、ステップＳ３００３、３００５の前ステップにおいて、−Ｔ≦Ｓｉ−Ｒｉ≦Ｔが真か偽かを判断するようにしてもよい。このようにすることで、まず、情報が埋め込まれているかどうかを判断することも可能になる。
【００６６】
また、電子透かし情報を構成するビットの数や、各ビットを埋め込む画像データ領域の大きさや、当該埋め込み領域の位置、数も、当然のことながら上記の実施形態に限定されるものではない。
【００６７】
また、電子透かし情報を構成するビットの数や、各ビットを埋め込む画像データ領域の大きさや、当該埋め込み領域の位置、数も既知であると仮定しているが、これに限定されるものではない。当該画像データの各画素について、図９に示す処理フローや、その変形例を適用することで、情報埋め込み場所を探すことも可能になる。他の方法を併用して上記情報埋め込み場所を特定するようにしても良い。
【００６８】
また、上記の実施形態では、電子透かし情報を構成するビットの情報を画素データの輝度値に変更を加えることで、画像データに埋め込むものについて説明したが、補間技術により推定することができるものであれば、画素データの輝度値以外の特徴値（たとえば色差、ＹＣｒＣｂ値、ＲＧＢ値、ＣＭＹＫ値など）に変更を加えることで、電子透かし情報を構成するビットの情報を画像データに埋め込むようにしてもよい。
【００６９】
また、上記の実施形態では、画素位置Ｐ（ｉ，ｊ）にある画素データの輝度値を推定する補間方法として、バイリニア法を用いる方法を説明したが、少なくとも２つの周辺画素データ各々の画素位置と輝度値とから、画素位置Ｐ（ｉ，ｊ）にある画素データの輝度値を推定する技術であるならば、上記の実施形態に限定されるものではない。たとえば、ニアレスト・ネイバー法、バイ・キュービック法を用いるものや、最小分散方向に沿った線形補間を用いるものなどが考えられる。
【００７０】
上記最小分散方向における線形補間について、図１３に示す処理フローを用いて説明する。
まず補間対象画素において、複数の異なる方向に沿った、予め定めた領域内の複数の輝度値の変動（分散）を、求める（Ｓ４００１）。所定方向の分散を求めたら、次にその中で輝度変動が最小な方向（最小分散方向という）を求める（Ｓ４００３）。次に求めた最小分散方向に沿った線形補間を行なう（Ｓ４００４）。
【００７１】
具体的な一例を以下に示す。座標（ｋ，ｌ）にある画素データＰ（ｉ，ｊ）の輝度値をＩ（ｋ，ｌ）とする。Ｐ（ｉ，ｊ）の上下左右にある周辺画素データの輝度値、すなわち、Ｉ（ｋ，ｌ−１）、Ｉ（ｋ，ｌ＋２）、Ｉ（ｋ−１，ｌ）、Ｉ（ｋ＋２，ｌ）を用いて、まず垂直方向の分散値Ｖｖ＝｜Ｉ（ｋ，ｌ−１）−Ｉ（ｋ，ｌ＋２）｜と水平方向の分散値Ｖｈ＝｜Ｉ（ｋ−１，ｌ）−Ｉ（ｋ＋２，ｌ）｜を求める。次に、ＶｖとＶｈを比較し、分散の小さな方向を求める。求めた方向に沿って線形補間を行なう。Ｖｖが小さい場合は、
ＩＲ（ｋ，ｌ）＝（２×Ｉ（ｋ，ｌ−１）＋Ｉ（ｋ，ｌ＋２））／３  を、
Ｖｈが小さい場合は
ＩＲ（ｋ，ｌ）＝（２×Ｉ（ｋ−１，ｌ）＋Ｉ（ｋ＋２，ｌ））／３  を座標（ｋ，ｌ）にある画素データの推定輝度値ＩＲ（ｋ，ｌ）とする。
【００７２】
なお、ここでは垂直、水平の２方向の分散値を比較したが、４方向、８方向などななめ方向を含むより多くの方向について求めた分散値を用いることも可能である。また、ここでは２つの周辺画素データから分散値を求めたが、周辺画素データとして用いる領域を拡げ、より多くの周辺画素データから分散値を求めることも望ましい。
【００７３】
このようにすることで、情報の埋め込み場所が画像の輪郭部分に相当する場合など、向きによって補間値が大きく異なる場合、当該画素データの輝度値をより正確に推定することが出来る。
【００７４】
また、本発明は、情報埋め込みの強度を高めずとも、埋め込んだ情報の判定精度を上げることができるので、情報の埋め込み強度を決定する方法として用いることができる。
【００７５】
たとえば、画像データへ情報を埋め込まない原画像データに対して、情報ｂｉの各埋め込み場所にある画素データについて、実際の値の総和Ｓｉと、周りから推定した値の総和Ｒｉとを上記各実施例を用いてそれぞれもとめ、差分Ｓｉ−Ｒｉを求め、強度Ｕを決定すればよい。このようにすることで、埋め込んだ情報の判定精度を確保しつつ、情報埋め込みによる画質劣化を防ぐことが可能となる。
【００７６】
さらに、上記の実施形態では、画像データを例にとり説明したが、本発明は、補間技術により、電子透かし情報の埋め込み場所となっている箇所にあるデジタルデータの値を当該デジタルデータの周辺にあるデジタルデータから精度よく推定することができるものであれば、画像データに限らず広く適用できる。
【００７７】
【発明の効果】
以上説明したように、本発明によれば、精度よく情報の埋め込みを判定することが可能となる。
また、情報の埋め込みによる品質劣化を防ぐことが可能となる
【図面の簡単な説明】
【図１】本発明の１実施形態における画像データへの情報埋め込み・判定処理の原理を説明するための図である。
【図２】本発明の１実施形態が適用された電子透かし情報判定装置の機能構成図である。
【図３】図２に示す電子透かし情報判定装置のハードウエア構成の一例を示す図である。
【図４】図２に示す情報挿入位置保持部５０９に保持される、電子透かし情報を構成するビットｂ１〜ｂ５０各々の埋め込み場所を特定するため情報が格納されたテーブルの一例を示す図である。
【図５】図２に示す電子透かし情報判定装置において、電子透かし情報を構成するビットｂ１〜ｂ５０各々について、当該ビットの情報の埋め込み場所となっている複数の画素データの実際の輝度値の総和Ｓ１〜Ｓ５０を求める際の動作を説明するためのフロー図である。
【図６】図２に示す読出し輝度保持部５１０に保持される、ビットｂ１〜ｂ５０の情報の埋め込み場所となっている複数の画素データの実際の輝度値の総和Ｓ１〜Ｓ５０を示す図である。
【図７】図２に示す電子透かし情報判定装置において、電子透かし情報を構成するビットｂ１〜ｂ５０各々について、当該ビットの情報の埋め込み場所となっている複数の画素データ各々の近傍に位置する少なくとも２つの周辺画素データから当該画素データの輝度値を推定し、その総和Ｒ１〜Ｒ５０を求める際の動作を説明するためのフロー図である。
【図８】図２に示す推定輝度保持部５１１に保持される、ビットｂ１〜ｂ５０の情報の埋め込み場所となっている複数の画素データの推定輝度値の総和Ｒ１〜Ｒ５０を示す図である。
【図９】図５に示すフローにより求めた画素データの抽出輝度値の総和Ｓ１〜Ｓ５０と図７に示すフローにより求めた画素データの推定輝度値の総和Ｒ１〜Ｒ５０とを比較して、電子透かし情報を構成するビットｂ１〜ｂ５０各々のビット値を判定する際の動作を説明するためのフロー図である。
【図１０】本発明の１実施形態の変形例における画像データへの情報埋め込み・判定処理の原理を説明するための図である。
【図１１】従来の電子透かし技術による画像データへの情報埋め込み・判定処理の原理を説明するための図である。
【図１２】本発明の１実施形態の一変形例における画像データへの情報埋め込み・判定処理の原理を説明するための図である。
【図１３】図１２に示す原理に従って補間を行う方向を決定する際の動作を説明するためのフロー図である。
【符号の説明】
５０１：処理部、５０２：入出力部、５０３：制御部、
５０４：輝度値読出し部、５０５：輝度値推定部、５０６：情報抽出部、
５０７：記憶部、５０８：情報挿入画像保持部、５０９：情報挿入位置保持部、
５１０：読出し輝度保持部、５１１：推定輝度保持部、
５１２：抽出情報保持部、
６０１：ＣＰＵ、６０２：メモリ、６０３，６０４：外部記憶装置、
６０５：入力装置、６０６：出力装置、６０７：インターフェース、
６０８：記憶媒体。
【図１】
0003630026.tif 000002
【図２】
0003630026.tif 000003
【図３】
0003630026.tif 000004
【図４】
0003630026.tif 000005
【図５】
0003630026.tif 000006
【図６】
0003630026.tif 000007
【図７】
0003630026.tif 000008
【図８】
0003630026.tif 000009
【図９】
0003630026.tif 000010
【図１０】
0003630026.tif 000011
【図１１】
0003630026.tif 000012
【図１２】
0003630026.tif 000013
【図１３】
0003630026.tif 000014