JP2005033818A - 電子透かし情報の抽出方法および電子透かし情報のビット値判定方法 - Google Patents
電子透かし情報の抽出方法および電子透かし情報のビット値判定方法 Download PDFInfo
- Publication number
- JP2005033818A JP2005033818A JP2004241789A JP2004241789A JP2005033818A JP 2005033818 A JP2005033818 A JP 2005033818A JP 2004241789 A JP2004241789 A JP 2004241789A JP 2004241789 A JP2004241789 A JP 2004241789A JP 2005033818 A JP2005033818 A JP 2005033818A
- Authority
- JP
- Japan
- Prior art keywords
- data
- watermark information
- bit
- digital watermark
- embedded
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Editing Of Facsimile Originals (AREA)
- Facsimile Image Signal Circuits (AREA)
- Image Processing (AREA)
- Television Systems (AREA)
Abstract
【課題】
キャリブレーション用電子透かしを用いることなく、幾何学的変形が加えられた画像データから電子透かし情報を抽出する。
【解決手段】
任意の画素データに電子透かし情報が埋め込まれた画像データより、当該透かし情報を埋め込む際に用いたX−Y座標上の予め定められた位置にある画素データを抽出し、これを参照値と比較することで、当該画素データに透かし情報が埋め込まれているか否かを判断する処理を、当該画素データに情報が埋め込まれていることを確認するまで、前記画像データに幾何学的変形を加えながら実行する。
【選択図】 図1
キャリブレーション用電子透かしを用いることなく、幾何学的変形が加えられた画像データから電子透かし情報を抽出する。
【解決手段】
任意の画素データに電子透かし情報が埋め込まれた画像データより、当該透かし情報を埋め込む際に用いたX−Y座標上の予め定められた位置にある画素データを抽出し、これを参照値と比較することで、当該画素データに透かし情報が埋め込まれているか否かを判断する処理を、当該画素データに情報が埋め込まれていることを確認するまで、前記画像データに幾何学的変形を加えながら実行する。
【選択図】 図1
Description
本発明は、デジタルデータ、特に画像データに対する電子透かし技術に関する。
近年、画像データなどのデジタルデータに対する著作権保護の観点から、電子透かし技術が注目されつつある。電子透かし技術とは、所定の規則にしたがい、デジタルデータに、所定の情報を、少なくとも前記所定の規則を用いることなく当該所定の情報を当該デジタルデータから抽出できないように埋め込む技術である。たとえば、所定の規則にしたがい、画像データの購入者などに関する情報を当該画像データ自体に目に見えない形態で埋め込んでおき、不正コピーされた場合に、前記所定の規則にしたがって、不正コピーされたデータから埋め込まれた情報を抽出することで、不正コピーを行った者(すなわち購入者)を特定する。
図18は、従来の電子透かし技術による画像データへの情報埋め込み・抽出処理の原理を説明するための図である。
図示するように、情報の埋め込み処理に際しては、埋め込みたい情報を構成するビットb1〜bnのうちビットbi(0≦i≦n)について、画像データの予め定められた位置1〜mにある画素データ各々の輝度を、当該ビットが1ならばUだけ増加させ、0ならばUだけ減少させるように変更する。この処理を埋め込む位置をかえながらビットb1〜bnの全てに対して行うことにより、画像データに電子透かし情報を埋め込む。
一方、このようにして埋め込まれた電子透かし情報の抽出処理に際しては、埋め込まれた情報を構成するビットb1〜bnのうちビットbi(0≦i≦n)について、画像データの前記予め定められた位置1〜mにある画素データ各々の輝度の総和Sと、前記予め定められた位置1〜mの隣にある画素データ各々の輝度の総和R(Reference Value)とを検出し、S−R≧T(ここで、Tは要求される誤り率により異なるが、たとえば、T≧U×(biを埋め込んだ画素データ数m)とする)であればbi=1と判定し、S−R≦−Tであればbi=0と判定し、そして、−T<S−R<Tであれば、前記予め定められた位置1〜mにある画素データ各々に情報は埋め込まれていないと判定する。この処理をビットb1〜bnの全てに対して行うことにより、画像データに埋め込まれた電子透かし情報を抽出する。
電子透かし技術に関しては、1998第56回情報処理学会全国論文集に詳しく述べられている。
ところで、このような電子透かし情報が埋め込まれた画像データに、拡大/縮小や回転などの幾何学的変形が加えられた場合、これに伴い、電子透かし情報を構成するビットデータの埋め込み位置(ビットデータを埋め込む際に用いたX-Y座標上における位置)も変形してしまう。このため、電子透かし情報の抽出ができなくなってしまう。
このような問題を解決する技術として、米国特許(USP5636292)に記載の技術がある。
当該技術では、図19に示すように、著作権情報などの電子透かし情報以外に、画像データにどのような幾何学的変形が加えられたか、すなわち、どのような拡大/縮小や回転が加えられたかを推定するためのキャリブレーション用電子透かしを、当該画像データに埋め込んでおく。そして、電子透かし情報を抽出する場合には、まず、画像データからキャリブレーション用電子透かし情報を抽出し、その変形の度合いを解析することで、当該画像データに加えられた拡大/縮小率や回転角度を推定する。次に、推定した拡大/縮小率や回転角度を参照して、当該画像データを元の画像データ(幾何学的変形が加えられる前の画像データ)に戻す。それから、前記予め定められた位置にある画素データとその隣接画素データを抽出し、両者の差分(S-R)を予め定められた閾値Tを比較することで、電子透かし情報を抽出する。
しかしながら、上記従来のキャリブレーション用電子透かしを用いる方法では、著作権情報などの本来埋め込むべき電子透かし情報の他に、キャリブレーション用の電子透かしを画像データに埋め込むため、画質に与える影響が大きいという問題がある。
そこで、本発明の第1の目的は、キャリブレーション用電子透かしを用いることなく、幾何学的変形が加えられた画像データから電子透かし情報が埋め込まれている位置を特定することが可能な電子透かし技術を提供することにある。
また、上記従来の電子透かし情報のビット値を判定する方法では、電子透かし情報を構成するビットb1〜bnのうちビットbi(0≦i≦n)について、画像データの予め定められた位置1〜mにある画素データ各々の輝度の総和Sと、前記予め定められた位置1〜mの隣にある画素データ各々の輝度の総和Rとを検出し、S−R≧Tであればbi=1と判定し、S−R≦−Tであればbi=0と判定し、そして、−T<S−R<Tであれば、前記予め定められた位置1〜mにある画素データ各々に情報は埋め込まれていないと判定している。
ここで、閾値Tには、通常、予め定められた値を用いるが、この閾値Tが電子透かし情報を抽出しようとしている画像データに対して最適化されていないと、電子透かし情報を構成するビットbiが画像データの予め定められた位置1〜mに埋め込まれているにもかかわらず−T<S−R<Tとなり、前記予め定められた位置1〜mに情報が埋め込まれていないと判定されてしまうこともある。すなわち、電子透かし情報を構成するビットの抽出感度が低くなってしまう。
一方、閾値Tを予め低めに設定しておくことで、電子透かし情報を構成するビットの抽出感度を上げると、電子透かし情報を抽出しようとしている画像データによっては、画像データから抽出した電子透かし情報を構成するビットのビット値判定誤りが増加し、ビット値判定精度が悪くなってしまう。これでは、画像データから抽出した電子透かし情報のビット値を信頼することができない。
そこで、本発明の第2の目的は、電子透かし情報を構成するビットの抽出感度を上げた場合でも、抽出した電子透かし情報のビット値が信頼できるものであるか否かを把握可能な電子透かし技術を提供することにある。
上記第1の目的達成のために、本発明の第1の態様は、所定の座標上の予め定められた位置にある少なくとも1つの画素データに変更を加えることで電子透かし情報が埋め込まれた画像データであって、且つ幾何学的変形が加えられた画像データより、前記電子透かし情報を抽出する電子透かし情報の抽出方法であって、
前記画像データより、前記所定の座標上の予め定められた位置にある少なくとも1つの画素データを抽出し、このデータ値を参照値と比較することで、当該画素データに情報が埋め込まれているか否かを判断する処理を、当該画素データに情報が埋め込まれていることを確認するまで、前記画像データに幾何学的変形を加えながら実行する埋め込み位置確認ステップを有する。
前記画像データより、前記所定の座標上の予め定められた位置にある少なくとも1つの画素データを抽出し、このデータ値を参照値と比較することで、当該画素データに情報が埋め込まれているか否かを判断する処理を、当該画素データに情報が埋め込まれていることを確認するまで、前記画像データに幾何学的変形を加えながら実行する埋め込み位置確認ステップを有する。
ここで、幾何学的変形とは、拡大/縮小や回転などの可逆的な変形、すなわち変形前の画像データを復元可能な変形を意味する。また、参照値には、たとえば、抽出した画素データの近傍に位置する画素データのデータ値、あるいは、抽出した画素データの近傍に位置する少なくとも2つの画素データを用いて補間により推定した、当該抽出した画素データのデータ値が用いられる。また、画素データに情報が埋め込まれていることを確認するまでとは、具体的には、抽出した画素データのデータ値と参照値との差分(絶対値)が最大となるように幾何学的変形が加えられた画像データを検出するまでの意味である。
本態様によれば、画像データより、所定の座標により特定される電子透かし情報の埋め込み位置にある画素データを抽出し、当該画素データのデータ値を参照値と比較して、当該画素データに情報が埋め込まれているか否かを判断するという一連の処理を、当該画素データに情報が埋め込まれていることを確認するまで、前記画像データに幾何学的変形を加えながら実行する。たとえば、ある回転角度で画像データを回転させ、さらに所定の倍率で当該画像データを拡大/縮小しながら、当該画素データに情報が埋め込まれているか否かの確認を行う。確認できなかった場合には、他の回転角度で画像データを回転させて同様の処理を行う。この処理を、当該画素データに情報が埋め込まれていることを確認するまで繰り返し実行する。
このようにすることで、キャリブレーション用電子透かしを用いることなく、幾何学的変形が加えられた画像データから電子透かし情報が埋め込まれている位置を特定することが可能になる。
なお、本態様において、前記埋め込み位置確認ステップは、
前記画像データより、前記所定の座標上の予め定められた位置にある少なくとも1つの画素データを抽出し、このデータ値を参照値と比較することで、当該画素データに情報が埋め込まれているか否かについて判断する処理を、当該画素データに情報が埋め込まれていることについての確認がなされるまで、第1の幾何学的変形率刻みで前記画像データに幾何学的形を加えながら実行する概略確認ステップと、
前記画像データより、前記所定の座標上の予め定められた位置にある少なくとも1つの画素データを抽出し、このデータ値を参照値と比較することで、当該画素データに情報が埋め込まれているか否かについて判断する処理を、当該画素データに情報が埋め込まれていることについての確認がなされるまで、前記概略確認ステップにより当該画素データに情報が埋め込まれていると確認された際の幾何学的変形率を含む所定の範囲内において、前記第1の幾何学的変形率よりも小さい第2の幾何学的変形率刻みで前記画像データに幾何学的形を加えながら実行する詳細確認ステップと、より構成されるものでもよい。
前記画像データより、前記所定の座標上の予め定められた位置にある少なくとも1つの画素データを抽出し、このデータ値を参照値と比較することで、当該画素データに情報が埋め込まれているか否かについて判断する処理を、当該画素データに情報が埋め込まれていることについての確認がなされるまで、第1の幾何学的変形率刻みで前記画像データに幾何学的形を加えながら実行する概略確認ステップと、
前記画像データより、前記所定の座標上の予め定められた位置にある少なくとも1つの画素データを抽出し、このデータ値を参照値と比較することで、当該画素データに情報が埋め込まれているか否かについて判断する処理を、当該画素データに情報が埋め込まれていることについての確認がなされるまで、前記概略確認ステップにより当該画素データに情報が埋め込まれていると確認された際の幾何学的変形率を含む所定の範囲内において、前記第1の幾何学的変形率よりも小さい第2の幾何学的変形率刻みで前記画像データに幾何学的形を加えながら実行する詳細確認ステップと、より構成されるものでもよい。
また、本態様において、電子透かし情報を構成する複数のビットデータ各々につき、所定の座標上の予め定められた位置にある少なくとも1つの画素データに変更を加えることで、前記電子透かし情報が画像データに埋め込まれている場合、前記複数のビットデータのうちの少なくとも1つのビットデータに対して、前記埋め込み位置確認ステップを実行し、当該ビットデータが埋め込まれている画素データが確認された際の、幾何学的変形が加えられた画像データより、前記複数のビットデータの抽出を行うようにしてもよい。
このようにすることで、電子透かし情報が埋め込まれたの画素データの確認をより効率的に行うことができる。
また、上記第1の目的達成のために、本発明の第2の態様は、所定の座標上の予め定められた位置にある少なくとも1つの画素データに変更を加えることで電子透かし情報が埋め込まれた画像データであって、且つ幾何学的変形が加えられた画像データより、前記電子透かし情報を抽出する電子透かし情報の抽出方法であって、
前記所定の座標上の予め定められた位置にある少なくとも1つの画素データを抽出し、このデータ値を参照値と比較することで、当該画素データに情報が埋め込まれているか否かを判断する処理を、当該画素データに情報が埋め込まれていることを確認するまで、前記所定の座標を変形することで、前記画像データ上の前記予め定められた位置を変えながら実行する埋め込み位置確認ステップを有する。
前記所定の座標上の予め定められた位置にある少なくとも1つの画素データを抽出し、このデータ値を参照値と比較することで、当該画素データに情報が埋め込まれているか否かを判断する処理を、当該画素データに情報が埋め込まれていることを確認するまで、前記所定の座標を変形することで、前記画像データ上の前記予め定められた位置を変えながら実行する埋め込み位置確認ステップを有する。
本態様によれば、画像データより、所定の座標により特定される電子透かし情報の埋め込み位置にある画素データを抽出し、当該画素データのデータ値を参照値と比較して、当該画素データに情報が埋め込まれているか否かを判断するという一連の処理を、当該画素データに情報が埋め込まれていることを確認するまで、前記所定の座標に変形を加えながら実行する。たとえば、ある回転角度で前記所定の座標を回転させ、さらに所定の倍率で当該所定の座標を拡大/縮小しながら、画素データに情報が埋め込まれているか否かの確認を行う。確認できなかった場合には、他の回転角度で前記所定の座標を回転させて同様の処理を行う。この処理を、当該画素データに情報が埋め込まれていることを確認するまで繰り返し実行する。
このようにすることで、キャリブレーション用電子透かしを用いることなく、幾何学的変形が加えられた画像データから電子透かし情報を抽出することが可能になる。また、本態様によれば、画像データ自体に幾何学的変形を加えることなく、電子透かし情報の埋め込み位置の確認が可能になるので、本発明の第1の態様に比べ、処理に要するメモリ容量やプロセッサの負荷を低減させることができる。
なお、本態様において、前記埋め込み位置確認ステップは、
前記画像データより、前記所定の座標上の予め定められた位置にある少なくとも1つの画素データを抽出し、このデータ値を参照値と比較することで、当該画素データに情報が埋め込まれているか否かについて判断する処理を、当該画素データに情報が埋め込まれていることについての確認がなされるまで、第1の変形率刻みで前記所定の座標を変形することで、前記画像データ上の前記予め定められた位置を変えながら実行する概略確認ステップと、
前記画像データより、前記所定の座標上の予め定められた位置にある少なくとも1つの画素データを抽出し、このデータ値を参照値と比較することで、当該画素データに情報が埋め込まれているか否かについて判断する処理を、当該画素データに情報が埋め込まれていることについての確認がなされるまで、前記概略確認ステップにより当該画素データに情報が埋め込まれていると確認された際の変形率を含む所定の範囲内において、前記第1の変形率よりも小さい第2の変形率刻みで前記所定の座標を変形することで、前記画像データ上の前記予め定められた位置を変えながら実行する詳細確認ステップと、より構成されるものでもよい。
前記画像データより、前記所定の座標上の予め定められた位置にある少なくとも1つの画素データを抽出し、このデータ値を参照値と比較することで、当該画素データに情報が埋め込まれているか否かについて判断する処理を、当該画素データに情報が埋め込まれていることについての確認がなされるまで、第1の変形率刻みで前記所定の座標を変形することで、前記画像データ上の前記予め定められた位置を変えながら実行する概略確認ステップと、
前記画像データより、前記所定の座標上の予め定められた位置にある少なくとも1つの画素データを抽出し、このデータ値を参照値と比較することで、当該画素データに情報が埋め込まれているか否かについて判断する処理を、当該画素データに情報が埋め込まれていることについての確認がなされるまで、前記概略確認ステップにより当該画素データに情報が埋め込まれていると確認された際の変形率を含む所定の範囲内において、前記第1の変形率よりも小さい第2の変形率刻みで前記所定の座標を変形することで、前記画像データ上の前記予め定められた位置を変えながら実行する詳細確認ステップと、より構成されるものでもよい。
前記第1及び第2の変形率の刻み幅は、画素データの変更位置の定め方、すなわち画素データの変更箇所のパターンに依存して決定される場合がある。例えば、画像データに施されている変形率と、検出のための画像データ変形率または座標変形率とが多少ずれていても画像の情報埋込みが確認できる場合、すなわち画素データの変更箇所が、多少ずれても埋込み情報が確認できるようなパターンである場合、前記第1および第2の変形率の刻み幅を大きくしても、埋込み情報の確認が可能である。または、第1の変形率の概略刻みを大きくして第2の変形率の刻みを小さくしても埋込み情報の確認が可能である。
すなわち、画素データの変更が、1×1以上の画素ブロック単位で行われ、上記概略確認ステップが上記画素ブロック内のいずれかの画素データでの変更を検出するものである場合、上記変更が検出できる範囲で、上記第1の変形率を大きくすることが可能である。
図20、図21は、画像内の画素データ変更位置と、座標の変形による画素データ検出位置とを模式的に示した図である。画素データの変更は2×2画素ブロック単位で行われ、それぞれのブロックは10画素間隔で24個配置されている。図20では画素データと変更位置のずれがなく、24個所の検出位置全てが変更位置と重なるので、埋込み情報を正しく検出できる。一方、図21では、画像データの変更位置に対して検出位置が少しずつずれて、最終的には240画素で2画素分右にずれている。図21は、画像データに対して検出座標が242/240=1.0083倍拡大された場合を示している。上記倍率まで変形率を拡大した場合、24個検出箇所のうち、1つの検出箇所で埋め込み情報が検出されず、埋込み情報の検出に損失が生じてしまう。このような場合、変形率を1.0083以下にすればよい。画素データの変更の画素ブロックのサイズを2×2から4×4にした場合は、上記変形率を244/240=1.0167まで粗くしても埋込み情報の検出が可能である。
すなわち、変更画素ブロックのサイズをP×P画素としてD画素間隔でN個配置した場合、上記第1の変形率を(DN+P)/(DN)=1+P/(DN)まで大きくしても、上記概略確認ステップにおける埋込み情報の検出が可能である。
なお、上記は座標の拡大/縮小による検出を例としたが、座標の回転や、画像データそのものを拡大/縮小/回転することによる検出でも同様である。
また、本態様において、電子透かし情報を構成する複数のビットデータ各々につき、所定の座標上の予め定められた位置にある少なくとも1つの画素データに変更を加えることで、前記電子透かし情報が画像データに埋め込まれている場合、前記複数のビットデータのうちの少なくとも1つのビットデータに対して、前記埋め込み位置確認ステップを実行し、当該ビットデータが埋め込まれている画素データが確認された際の、変形が加えられた前記所定の座標を用いて、前記複数のビットデータの抽出を行うようにしてもよい。
このようにすることで、電子透かし情報が埋め込まれた位置の確認をより効率的に行うことができる。
さらに、本態様において、電子透かし情報を構成する複数のビットデータ各々につき、所定の座標上の予め定められた位置にある少なくとも1つの画素データに変更を加えることで、前記電子透かし情報が画像データに埋め込まれている場合、前記複数のビットデータのうちの少なくとも1つのビットデータに対して、前記埋め込み位置確認ステップを実行し、当該ビットデータが埋め込まれている画素データが確認された際の前記所定の座標に加えられた変形率に応じた幾何学的変形率で前記画像データに幾何学的変形を加え、前記埋め込み位置確認ステップにより変形が加えられる前の前記所定の座標を用いて、当該幾何学的変形が加えられ画像データより、前記複数のビットデータを抽出するようにしてもよい。
通常、画像データを縮小する場合、その縮小率にしたがって、画像データから任意の画素データを取り去ることで、その画像データのサイズを小さくしている。このため、電子透かし情報が埋め込まれた画像データに対して縮小処理が施されている場合、縮小処理の際に、電子透かし情報(の1部)が埋め込まれた画素データが当該画像データから採り去られている可能性もある。このような場合、電子透かし情報の全てを当該画像データから効率よく抽出できなくなることも考えられる。
そこで、上記のように、電子透かし情報を構成する複数のビットデータのうちのいずれか1つのビットデータに対して、前記埋め込み位置確認ステップを実行して当該ビットデータが埋め込まれている画素データの確認を行い、確認された場合には、そのときに座標に加えられた縮小率に応じた拡大率で画像データを拡大することで、画像データを元のサイズ(縮小処理が施される前のサイズ)に戻すことにより、縮小により失われた画素データを復元し、それから、電子透かし情報を構成する複数のビットデータを抽出することで、検出精度を向上させることができる。
また、上記第2の目的達成のために、本発明の第3の態様は、電子透かし情報を構成する複数のビットデータ各々につき、所定の座標上の予め定められた位置にある少なくとも1つの画素データに変更を加えることで画像データに埋め込まれた前記電子透かし情報のビット値判定方法であって、
前記電子透かし情報を構成する複数のビットデータのうち少なくとも2つのビットデータについて、それぞれ、前記ビットデータが埋め込まれるべき画素データと参照値との差分を求め、求めた差分の分布により定まる確率分布曲線に基づき、前記ビットデータのビット値判定に用いる閾値をTとした場合における当該ビットデータのビット値判定誤り率を求める誤り率算出ステップと、
前記誤り率算出ステップで求めた判定誤り率が所定値より小さい場合に、前記電子透かし情報を構成する複数のビットデータについて、それぞれ、前記ビットデータが埋め込まれるべき画素データと参照値との差分を前記閾値Tと比較することで、当該ビットデータのビット値(0か1)を判定するビット値判定ステップと、を有する。
前記電子透かし情報を構成する複数のビットデータのうち少なくとも2つのビットデータについて、それぞれ、前記ビットデータが埋め込まれるべき画素データと参照値との差分を求め、求めた差分の分布により定まる確率分布曲線に基づき、前記ビットデータのビット値判定に用いる閾値をTとした場合における当該ビットデータのビット値判定誤り率を求める誤り率算出ステップと、
前記誤り率算出ステップで求めた判定誤り率が所定値より小さい場合に、前記電子透かし情報を構成する複数のビットデータについて、それぞれ、前記ビットデータが埋め込まれるべき画素データと参照値との差分を前記閾値Tと比較することで、当該ビットデータのビット値(0か1)を判定するビット値判定ステップと、を有する。
ここで、差分の分布により定まる確率分布曲線は、たとえば、電子透かし情報を構成する複数のビットデータのうちの少なくとも2つのビットデータ各々について得た前記差分の平均値や分散値などの統計値、あるいは、前記差分のヒストグラム分布から求めることができる。
また、ビットデータのビット値判定に用いる閾値をTとした場合における当該ビットデータのビット値判定誤り率は、たとえば、前記差分の分布より定まる確率分布曲線全体における−T〜Tの範囲内となる部分の割合として求めることができる。
本態様によれば、画像データに埋め込まれた電子透かし情報のビット値判定に先立ち、当該ビット値判定に用いる閾値をTとした場合における当該画像データに埋め込まれた電子透かし情報のビット値判定誤り率を求め、その結果が所定値より小さい場合にのみ、前記閾値Tを用いて、当該画像データに埋め込まれた電子透かし情報のビット値判定を行なうようにしている。このため、ビット値判定に用いる閾値Tを低く設定して、電子透かし情報を構成するビットの抽出感度を上げた場合でも、抽出した電子透かし情報のビット値の信頼性を確保することができる。
また、上記第2の目的達成のために、本発明の第4の態様は、電子透かし情報を構成する複数のビットデータ各々につき、所定の座標上の予め定められた位置にある少なくとも1つの画素データに変更を加えることで画像データに埋め込まれた前記電子透かし情報のビット値判定方法であって、
前記電子透かし情報を構成する複数のビットデータのうち少なくとも2つのビットデータについて、それぞれ、前記ビットデータが埋め込まれるべき画素データと参照値との差分を求め、求めた差分の分布により定まる確率分布曲線に基づき、前記ビットデータのビット値判定に用いる閾値をTとした場合における当該ビットデータのビット値判定誤り率を求める誤り率算出ステップと、
前記電子透かし情報を構成する複数のビットデータについて、それぞれ、前記ビットデータが埋め込まれるべき画素データと参照値との差分を前記閾値Tと比較することで、当該ビットデータのビット値(0か1)を判定するビット値判定ステップと、
前記ビット値判定ステップにより判定した前記電子透かし情報を構成する複数のビットデータのビット値を、前記誤り率算出ステップで算出したビット値判定誤り率とともに出力する出力ステップと、を有する。
前記電子透かし情報を構成する複数のビットデータのうち少なくとも2つのビットデータについて、それぞれ、前記ビットデータが埋め込まれるべき画素データと参照値との差分を求め、求めた差分の分布により定まる確率分布曲線に基づき、前記ビットデータのビット値判定に用いる閾値をTとした場合における当該ビットデータのビット値判定誤り率を求める誤り率算出ステップと、
前記電子透かし情報を構成する複数のビットデータについて、それぞれ、前記ビットデータが埋め込まれるべき画素データと参照値との差分を前記閾値Tと比較することで、当該ビットデータのビット値(0か1)を判定するビット値判定ステップと、
前記ビット値判定ステップにより判定した前記電子透かし情報を構成する複数のビットデータのビット値を、前記誤り率算出ステップで算出したビット値判定誤り率とともに出力する出力ステップと、を有する。
本態様によれば、画像データに埋め込まれた電子透かし情報のビット値判定結果が、当該画像データに埋め込まれた電子透かし情報のビット値判定に用いた閾値Tにおけるビット値判定誤り率とともに出力される。したがって、ビット値判定に用いる閾値Tを低く設定して、電子透かし情報を構成するビットの抽出感度を上げた場合、抽出した電子透かし情報のビット値の信頼性がどの程度であるかを把握することができる。
なお、上記の第3、4態様において、閾値Tを0に設定した場合、電子透かし情報のビット値判定は、前記電子透かし情報を構成する複数のビットデータについて、それぞれ、ビットデータが埋め込まれた画素データと参照値との差分の正負を調べることで、当該ビットデータのビット値(0か1)が判定される。つまり、ビット値判定の閾値Tを0に設定することで、画像データに埋め込まれた電子透かし情報を構成する複数のビットデータ各々について、必ず0か1かの判定がなされることとなり、電子透かし情報を構成するビットの抽出感度を最大にすることができる。
なお、この場合、前記誤り率判定ステップは、前記電子透かし情報を構成する複数のビットデータのうち少なくとも2つのビットデータについて、それぞれ、前記ビットデータが埋め込まれた画素データと参照値との差分を求め、求めた少なくとも2つの差分を正か負かで2つの部分集合に分け、当該2つの部分集合各々に含まれる差分の分布より2つの確率分布曲線を求める。そして、正の部分集合の確率分布曲線における負の部分の割合および/または負の部分集合の確率分布曲線における正の部分の割合を調べることで、ビット値判定誤り率を求めることができる。
また、上記第1の目的および第2の目的達成のために、本発明の第5の態様は、上記第1または第2の態様の電子透かし抽出方法と、上記第3または第4の態様の電子透かし情報のビット値判定方法が組み合わされる。すなわち、上記第1または第2の態様の電子透かし抽出方法により画像データに埋め込まれた電子透かし情報を構成する各ビットの埋め込み位置を特定し、このようにして電子透かし情報を構成する各ビットの埋め込み位置が特定された画像データに対し、上記第3または第4の態様の電子透かし情報のビット値判定方法により、電子透かし情報のビット値判定を行なう。
ここで、上記第1または第2の態様の電子透かし抽出方法を実施する装置と、上記第3または第4の態様の電子透かし情報のビット値判定方法を実施する装置とは、同じ装置であってもよいし、別個独立した装置であってもよい。
なお、上記第3乃至第5の態様における前記誤り率判定ステップは、単に、画像データに透かし情報埋め込まれているか否かを判定する場合にも適用することができる。すなわち、本発明の第6の態様は、電子透かし情報を構成する複数のビットデータ各々につき、所定の座標上の予め定められた位置にある少なくとも1つの画素データに変更を加えることで、画像データに、前記電子透かし情報が埋め込まれているか否かを判定する電子透かし情報の有無判定方法であって、
前記電子透かし情報を構成する複数のビットデータのうち少なくとも2つのビットデータについて、それぞれ、前記ビットデータが埋め込まれるべき画素データと参照値との差分を求め、求めた差分の分布により定まる確率分布曲線に基づいて、前記電子透かし情報が埋め込まれているか否かを判定する。
前記電子透かし情報を構成する複数のビットデータのうち少なくとも2つのビットデータについて、それぞれ、前記ビットデータが埋め込まれるべき画素データと参照値との差分を求め、求めた差分の分布により定まる確率分布曲線に基づいて、前記電子透かし情報が埋め込まれているか否かを判定する。
以上説明したように、本発明によれば、キャリブレーション用電子透かしを用いることなく、幾何学的変形が加えられた画像データから電子透かし情報を抽出することが可能になる。また、電子透かし情報を構成するビットの抽出感度を上げた場合でも、抽出した電子透かし情報のビット値が信頼できるものであるか否かを把握することが可能になる。
以下に、本発明の実施の形態について説明する。
まず、本発明の第1実施形態について説明する。
本実施形態では、所定のX−Y座標上の予め定められた位置にある少なくとも1つの画素データに変更を加えることで電子透かし情報が埋め込まれた画像データであって幾何学的変形が加えられた画像データより、前記所定のX−Y座標上の予め定められた位置にある少なくとも1つの画素データを抽出し、このデータ値を参照値と比較することで、当該画素データに情報が埋め込まれているか否かを判断する処理を、当該画素データに情報が埋め込まれていることを確認するまで、前記画像データに幾何学的変形を加えながら実行する。
まず、本発明の第1実施形態が適用された電子透かし情報抽出装置の具体的な説明に先立ち、本実施形態における電子透かし情報の抽出処理の原理を説明する。
図1および図2は、本発明の第1実施形態における画像データよりの電子透かし情報の抽出処理の原理を説明するための図である。
図18に示すように、電子透かし情報を構成するビットb1〜bn各々が、所定のX−Y座標上の予め定められた位置1〜mにある画素データの輝度を、当該ビットが1ならばUだけ増加させ、0ならばUだけ減少させるように変更すことで、画像データ上に埋め込まれているとする。その後、この電子透かし情報が埋め込まれた画像データが所定の倍率で拡大/縮小されたとする。この場合、拡大/縮小された画像データにおいては、ビットb1〜bn各々の前記所定のX−Y座標上の予め定められた位置1〜mとビットb1〜bn各々が実際に埋め込まれた画素データの位置との対応がずれてしまうので、抽出することができない。
そこで、図1に示すように、画像データを所定のサイズ(たとえば0.5倍)に縮小し、電子透かし情報を構成するビットb1〜bnの任意数分のビット(たとえば20個<nのビット)各々について、前記所定のX−Y座標上の予め定められた位置1〜mにある画素データを抽出し、その輝度値の総和Sと当該抽出した画素データに隣接する画素データの輝度値の総和Rとの差分S−Rを求め、当該差分S−Rを所定の閾値Tと比較することで、当該抽出した画素データにビットデータが埋め込まれているか否かを判断する。そして、埋め込まれていないと判断した場合は、所定の倍率(たとえば1%)刻みで縮小した画像データを拡大し、同様の処理を行う。この処理を、ビットデータが埋め込まれていることが確認されるまで繰り返し実行する。
上記の倍率刻みは、画素データの変更箇所のパターンに依存して決定される場合がある。例えば、画像の変形率が真の変形率と多少ずれていても画像の情報埋込みが確認できる場合は、すなわち画素データの変更箇所がずれていても埋込み情報が確認できる範囲では、前記倍率刻みを大きくしても透かし情報の検出が可能である。
そして、ビットデータが埋め込まれていることが確認された場合(具体的には、差分S−Rの絶対値が閾値Tより大きく且つ最大となるサイズの画像データが検出された場合)は、そのときのサイズの画像データより、電子透かし情報を構成するビットb1〜bn各々について、前記所定のX−Y座標上の予め定められた位置1〜mにある画素データを抽出し、その輝度値の総和Sと当該抽出した画素データに隣接する画素データの輝度値の総和Rとの差分S−Rを求め、当該差分S−Rを所定の閾値Tと比較することで、当該抽出した画素データに埋め込まれたビットデータを検出する。これにより、画像データに埋め込まれた電子透かし情報b1〜bnを検出する。
たとえば、電子透かし情報が埋め込まれた画像データが0.5倍に縮小された場合、図1に示すように、当該画像データを2倍に拡大することで、電子透かし情報の検出が可能となる。
また、図18に示すようにして電子透かし情報を構成するビットb1〜bnが埋め込まれた画像データが、その後、所定の角度だけ回転されたとする。この場合、回転された画像データにおいては、ビットb1〜bn各々の前記所定のX−Y座標上の予め定められた位置1〜mとビットb1〜bn各々が実際に埋め込まれた画素データの位置との対応がずれてしまうので、抽出することができない。
そこで、図2に示すように、画像データを所定の角度(たとえば時計回りで−90度)だけ回転させ、電子透かし情報を構成するビットb1〜bnの任意数分のビット(たとえば20個<nのビット)各々について、前記所定のX−Y座標上の予め定められた位置1〜mにある画素データを抽出し、その輝度値の総和Sと当該抽出した画素データに隣接する画素データの輝度値の総和Rとの差分S−Rを求め、当該差分S−Rを所定の閾値Tと比較することで、当該抽出した画素データにビットデータが埋め込まれているか否かを判断する。そして、埋め込まれていないと判断した場合は、所定の角度(たとえば時計回りに1度)刻みで、回転させた画像データをさらに回転させ、同様の処理を行う。この処理を、ビットデータが埋め込まれていることが確認されるまで繰り返し実行する。
上記の角度刻みは、画素データの変更箇所のパターンに依存して決定される場合がある。例えば、画像の回転角度が真の回転角度と多少ずれていても画像の情報埋込みが確認できる場合は、すなわち画素データの変更箇所がずれていても埋込み情報が確認できる範囲では、前記角度刻みを大きくしても透かし情報の検出が可能である。
そして、ビットデータが埋め込まれていることが確認された場合は、そのときの回転角度の画像データより、電子透かし情報を構成するビットb1〜bn各々について、前記所定のX−Y座標上の予め定められた位置1〜mにある画素データを抽出し、その輝度値の総和Sと当該抽出した画素データに隣接する画素データの輝度値の総和Rとの差分S−Rを求め、当該差分S−Rを所定の閾値Tと比較することで、当該抽出した画素データに埋め込まれたビットデータを検出する。これにより、画像データに埋め込まれた電子透かし情報b1〜bnを検出する。
たとえば、電子透かし情報が埋め込まれた画像データが時計回りに−45度だけ回転されている場合、図2に示すように、当該回転された画像データを時計回りに45度回転させることで、電子透かし情報の検出が可能となる。
本実施形態では、図1および図2に示す処理を組み合わせて実施することで、電子透かし情報が埋め込まれた画像データに拡大/縮小や回転処理が施された場合でも、当該画像データに埋め込まれた電子透かし情報の位置を特定できるようにしたものである。
次に、上記の電子透かし情報抽出処理を行う電子透かし情報抽出装置について説明する。
図3は、本発明の第1実施形態が適用された電子透かし情報抽出装置の機能構成図である。
図示するように、本実施形態の電子透かし情報抽出装置は、処理部501と記憶部514とでなる。
処理部501は、電子透かし情報が埋め込まれた画像データや当該画像データから抽出した電子透かし情報の入出力を担う入出力部502と、電子透かし情報抽出装置の各部を統括的に制御する制御部503と、概略サイズ・位置合わせ部504と、詳細サイズ・位置合わせ部505と、画像復元部506と、透かし検出部507とを有する。
記憶部514は、入出力部502を介して入力された、電子透かし情報を構成するビットb1〜bnが埋め込まれた画像データを保持する情報挿入画像保持部508と、概略刻み幅保持部509と、概略しきい値保持部510と、詳細刻み幅保持部511と、詳細しきい値保持部512と、検出情報保持部513とを有する。
概略サイズ・位置合わせ部504は、情報挿入画像保持部508に保持されている画像データより、当該画像データに埋め込まれた電子透かし情報を検出するために要求される当該画像データの概略のサイズおよび回転角度を決定する。
具体的には、まず、情報挿入画像保持部508に保持されている画像データを所定の倍率(たとえば0.5倍)で縮小する。そして、電子透かし情報を構成するビットb1〜bnの任意数分のビット(たとえば20個<nのビット)各々について、所定のX−Y座標(電子透かし情報を埋め込む際に用いたX−Y座標であり既知とする)上の予め定められた位置1〜m(この位置は、たとえば電子透かし情報を埋め込んだ者より予め通知されているものとする)にある画素データを抽出し、その輝度値の総和Sと当該抽出した画素データに隣接する画素データの輝度値の総和Rとの差分S−Rを求め、これを概略しきい値保持部510に保持されている第1の閾値T1と比較することで、当該抽出した画素データにビットデータが埋め込まれているか否かを判断するといった一連の処理を、所定の範囲(たとえば0度〜360度の範囲)内において、概略刻み幅保持部509に保持されている第1の回転角度(たとえば時計回りに3度)刻みで当該画像データを回転させながら行う。そして、ビットデータが埋め込まれていないと判断した場合は、概略刻み幅保持部509に保持されている第1の倍率(たとえば3%)刻みで画像データを拡大し、同様の処理を行う。この処理を、ビットデータが埋め込まれていることが確認されるまで(具体的には、差分S−Rの絶対値が第1の閾値T1より大きく且つ最大となるサイズおよび回転角度の画像データが検出されるまで)、繰り返し実行する。
上記の概略刻み保持部509に保持されている倍率刻みおよび角度刻みは、前述したように、画素データの変更箇所のパターンに依存して決定される場合がある。すなわち、画素データの埋込み箇所がずれていても埋込み情報が確認できる範囲では、前記倍率刻みおよび角度刻みを大きくしても透かし情報の検出が可能である。
詳細サイズ・位置合わせ部505は、情報挿入画像保持部508に保持されている画像データより、当該画像データに埋め込まれた電子透かし情報を検出するために要求される当該画像データの詳細なサイズおよび回転角度を決定する。
具体的には、概略サイズ・位置合わせ部505にて、ビットデータが埋め込まれていることが確認された際の画像データの倍率Aよりも所定倍率(たとえばα)低い倍率で、情報挿入画像保持部508に保持されている画像データを縮小する。そして、電子透かし情報を構成するビットb1〜bnの任意数分のビット(たとえば20<n個のビット)各々について、前記所定のX−Y座標上の予め定められた位置1〜mにある画素データを抽出し、その輝度値の総和Sと当該抽出した画素データに隣接する画素データの輝度値の総和Rとの差分S−Rを求め、これを前記第1の閾値T1と比較することで、当該抽出した画素データにビットデータが埋め込まれているか否かを判断するといった一連の処理を、概略サイズ・位置合わせ部505にてビットデータが埋め込まれていることが確認された際の画像データの回転角度Bを含む所定の範囲(たとえば時計回りにB−β度〜B+β度の範囲)内において、詳細刻み幅保持部511に保持されている、前記第1の回転角度より小さい第2の回転角度(たとえば時計回りに1度)刻みで当該画像データを回転させながら行う。そして、ビットデータが埋め込まれていないと判断した場合は、詳細刻み幅保持部511に保持されている、前記第1の倍率より小さい第2の倍率(たとえば1%)刻みで画像データを拡大し、同様の処理を行う。この処理を、ビットデータが埋め込まれていることが確認されるまで繰り返し実行する。
なお、概略刻み幅保持部509に保持させる第1の回転角度や倍率、詳細刻み幅保持部511に保持させる第2の回転角度や倍率、および、概略しきい値保持部510に保持させる第1の閾値T1は、入出力部502を介して、たとえば操作者が設定可能としてもよい。
また、概略の倍率刻みおよび角度刻みは、前述したように、画素データの変更箇所のパターンに依存して決定される場合がある。すなわち、画素データの埋込み箇所がずれていても埋込み情報が確認できる範囲では、前記倍率刻みおよび角度刻みを大きくしても透かし情報の検出が可能である。または、第1の変形率の概略刻みを大きくして第2の変形率の刻みを小さくしても透かし情報の検出が可能である。
画像復元部506は、情報挿入画像保持部508に保持されている画像データを、詳細サイズ・位置合わせ部505にて、ビットデータが埋め込まれていることが確認された際の倍率および回転角度で変形する。これにより、拡大/縮小や回転が加えられる前の画像データを復元する。
透かし検出部507は、画像復元部506で復元された画像データより、電子透かし情報を構成するビットb1〜bnの各々について、前記所定のX−Y座標上の予め定められた位置1〜mにある画素データを抽出し、その輝度値の総和Sと当該抽出した画素データに隣接する画素データの輝度値の総和Rとの差分S−Rを求め、これを詳細しきい値保持部512に保持された、前記第1の閾値T1よりも絶対値が大きい第2の閾値T2と比較することで、ビットデータの値を判定する。具体的には、S−R≧T2であれば当該ビットは1と判定し、S−R≦−T2であれば、当該ビットは0と判定する。そして、−T2<S−R<T2であれば、抽出した画素データにはビットが埋め込まれていないと判定する。
また、透かし検出部507は、抽出した電子透かし情報を検出情報保持部513に保持させる。この情報は入出力部502を介して出力され、操作者に提示される。
ここで、概略しきい値保持部510に保持させる第1の閾値T1と、詳細しきい値保持部512に保持させる第2の閾値T2との関係について説明する。
いま、画像データに埋め込まれた50ビットの電子透かし情報b1〜b50の全てを当該画像データから検出する際の誤り率をAとし、電子透かし情報b1〜b50を構成する個々のビットを当該画像データから検出する際の誤り率をPとすると、AとPには、以下の関係式が成り立つ。
画像データに埋め込まれた50ビットの電子透かし情報b1〜b50の全てを当該画像データから検出する際に要求される誤り率Aが10−6であるとすると、個々のビットの誤り率Pは10−8より小さくなければならない。
したがって、誤り率10−6で画像データに埋め込まれた50ビットの電子透かし情報b1〜b50全てを検出するためには、b1〜b50の各々について、10−8より小さい誤り率で検出する必要がある。しかしながら、概略サイズ・位置合わせ部504および詳細サイズ・位置合わせ部505において、10−8より小さい誤り率で検出できるように第1の閾値T1を設定し、画像データのサイズおよび回転角度を変えながら、ビットデータが埋め込まれているか否かを判断したのでは処理に時間がかかる。
そこで、本実施形態では、概略サイズ・位置合わせ部504および詳細サイズ・位置合わせ部505において、画像データに埋め込まれた電子透かし情報を検出するために要求される当該画像データのサイズおよび回転角度を決定する際には、本来、要求される個々のビットの誤り率よりも大きい誤り率(たとえば10−2程度)でビットデータを検出することができるように設定された第1の閾値T1を用いて、ビットデータが埋め込まれているか否かを判断している。そして、画像データのサイズおよび回転角度を決定した後、透かし検出部507において、本来、要求される個々のビットの誤り率10−8でビットデータを検出することができるように設定された第2の閾値T2(第1の閾値T1よりも絶対値が大きくなる)を用いて、画像データに埋め込まれた電子透かし情報を構成するビットb1〜b50各々のビット値を判定するようにしている。
このようにしても、電子透かし情報を構成するビットb1〜b50のうちの20個分のビットについて、誤り率10−2程度で全てのビットを検出できた場合にビットデータの埋め込み位置が確認されたとすれば、その判断に誤りが生じる確率は10−27であり、実用上問題ない。
次に、本実施形態が適用された電子透かし情報抽出装置のハードウエア構成について説明する。図4は、図3に示す電子透かし情報抽出装置のハードウエア構成の一例を示す図である。
図示するように、本実施形態の電子透かし情報抽出装置は、CPU601と、メモリ602と、ハードディスク装置などの外部記憶装置603やその他の外部記憶装置604と、キーボードなどの入力装置605と、ディスプレイなどの出力装置606と、外部記憶装置や入出力装置とのインターフェース607とを備えた、一般的な構成を有する情報処理装置上に構築することができる。ここで、図3に示す処理部501の各部は、CPU601がメモリ602上にロードされたプログラムを実行することで、情報処理装置上に具現化されるプロセスとして実現される。また、この場合、メモリ602や外部記憶装置603、604が図2に示す記憶部514として使用される。
上述した、CPU601により実行されることで情報処理装置上に本実施形態の電子透かし情報抽出装置を具現化するためのプログラムは、予め外部記憶装置603に記憶され、必要に応じてメモリ602上にロードされ、CPU601により実行される。あるいは、可搬性の記憶媒体608、たとえばCD−ROMを扱う外部記憶装置604を介して、必要に応じて、可搬性の記憶媒体608からメモリ602上にロードされ、CPU601により実行される。もしくは、一旦、外部記憶装置604を介して、可搬性の記憶媒体608から外部記憶装置603にインストールされた後、必要に応じて、外部記憶装置603からメモリ602上にロードされ、CPU601により実行される。もしくは、図示していないネットワーク接続装置を介して、ネットワークより外部記憶装置603にダウンロードされ、その後、メモリ602上にロードされ、あるいは、ネットワークより直接メモリ602上にロードされて、CPU601により実行される。
次に、本実施形態が適用された電子透かし情報抽出装置の動作について説明する。
まず、概略サイズ・位置合わせ部504の動作について説明する。
図5は、本実施形態における概略サイズ・位置合わせ部504の動作を説明するためのフロー図である。このフローは、制御部503が、入出力部502と協調して、電子透かし情報を構成するビットb1〜bnの情報が埋め込まれた画像データを情報挿入画像保持部508に保持させることにより開始される。
まず、概略サイズ・位置合わせ部504は、倍率を初期値(たとえば0.5倍)に設定し(ステップS1001)、その後、回転角度を初期値(たとえば0度)に設定する(ステップS1002)。次に、概略サイズ・位置合わせ部504は、設定されている倍率と回転角度にしたがい、情報挿入画像保持部508に保持されている画像データを変形する(ステップS1003)。
それから、概略サイズ・位置合わせ部504は、電子透かし情報を構成するビットb1〜bnのうちj(<n)個分のビット(たとえばb1〜b20の20ビット)各々について、所定のX−Y座標(電子透かし情報を埋め込む際に用いたX−Y座標であり既知とする)上の予め定められた位置1〜m(この位置は、たとえば電子透かし情報を埋め込んだ者より予め通知されているものとする)にある画素データを抽出し、その輝度値の総和Sと当該抽出した画素データに隣接する画素データの輝度値の総和Rとの差分S−Rを求め、これを概略しきい値保持部510に保持されている第1の閾値T1と比較することで、当該抽出した画素データにビットデータが埋め込まれているか否かを判断する(ステップS1004)。具体的には、差分S−Rの絶対値が第1の閾値T1の絶対値よりも大きいか否かを判断することで、当該抽出した画素データにビットデータが埋め込まれているか否かを判断する。そして、j個分のビット全てについて、抽出した画素データに当該ビットデータが埋め込まれていることを確認した場合には(ステップS1005)、j個分のビット各々について求めた差分S−Rの絶対値の総和のピーク値を検出したか否かを判断する(ステップS1006)。ここで、ピーク値を検出するのは、ビットb1〜bn各々の前記所定のX−Y座標上の予め定められた位置1〜mとビットb1〜bn各々が実際に埋め込まれた画素データの位置とが近づくほど、差分S−Rの絶対値の総和が大きくなると考えられるからである。
ステップS1006において、ピーク値を検出した場合には、ピーク値検出時に設定されていた倍率と回転角度を画像データの概略サイズおよび回転角度を特定する倍率および回転角度に決定し、処理を終了する。
ステップS1005において、j個分のビット全てについて、抽出した画素データに当該ビットデータが埋め込まれていることを確認できなかった場合、および、ステップS1006において、未だピーク値が検出されていないと判断した場合は、ステップS1007に進む。そこで、概略サイズ・位置合わせ部504は、設定されている回転角度が最大値(たとえば360度)に達しているか否かを判断し、達していない場合には、設定されている回転角度を概略刻み幅保持部509に保持されている刻み幅(たとえば3度)だけ増加させ(ステップS1008)、ステップS1003に戻る。一方、達している場合には、設定されている倍率が最大値(たとえば2倍)に達しているか否かを判断し(ステップS1009)、達していない場合には、設定されている倍率を概略刻み幅保持部509に保持されている刻み幅(たとえば3%)だけ増加させ(ステップS1010)、ステップS1003に戻る。
一方、設定されている倍率が最大値に達している場合には、当該画像データに電子透かし情報は埋め込まれていないと判断し、処理を終了する。
次に、詳細サイズ・位置合わせ部505の動作について説明する。
図6は、本実施形態における詳細サイズ・位置合わせ部505の動作を説明するためのフロー図である。このフローは、図5に示すフローにより、概略サイズ・位置合わせ部504が、画像データの概略サイズおよび回転角度を特定する倍率および回転角度を決定すると開始される。
まず、詳細サイズ・位置合わせ部505は、倍率を、概略サイズ・位置合わせ部504で決定した概略倍率−α(このαは、たとえば概略刻み幅保持部509に保持された刻み幅倍率と同じ倍率とする)に設定し(ステップS2001)、その後、回転角度を、概略サイズ・位置合わせ部504で決定した概略回転角度−β(このβは、たとえば概略刻み幅保持部509に保持された刻み幅回転角度と同じ回転角度とする)に設定する(ステップS2002)。次に、詳細サイズ・位置合わせ部505は、設定されている倍率と回転角度にしたがい、情報挿入画像保持部508に保持されている画像データを変形する(ステップS2003)。
それから、詳細サイズ・位置合わせ部505は、電子透かし情報を構成するビットb1〜bnのうちk(<n)個分のビット(たとえばb21〜b40の20ビット)各々について、電子透かし情報を埋め込む際に用いたX−Y座標上の予め定められた位置1〜mにある画素データを抽出し、その輝度値の総和Sと当該抽出した画素データに隣接する画素データの輝度値の総和Rとの差分S−Rを求め、これを概略しきい値保持部510に保持されている第1の閾値T1と比較することで、当該抽出した画素データにビットデータが埋め込まれているか否かを判断する(ステップS2004)。そして、k個分のビット全てについて、抽出した画素データに当該ビットデータが埋め込まれていることを確認した場合には(ステップS2005)、k個分のビット各々について求めた差分S−Rの絶対値の総和のピーク値を検出したか否かを判断し(ステップS2006)、検出した場合には、ピーク値検出時に設定されていた倍率と回転角度を画像データの詳細サイズおよび回転角度を特定する倍率および回転角度に決定し、処理を終了する。
ステップS2005において、k個分のビット全てについて、抽出した画素データに当該ビットデータが埋め込まれていることを確認できなかった場合、および、ステップS2006において、未だピーク値を検出していないと判断した場合は、ステップS2007に進む。そこで、詳細サイズ・位置合わせ部505は、設定されている回転角度が概略サイズ・位置合わせ部504で決定した概略回転角度+βに達しているか否かを判断し、達していない場合には、設定されている回転角度を詳細刻み幅保持部511に保持されている、概略刻み幅保持部509に保持されている刻み幅よりも小さい刻み幅(たとえば1度)だけ増加させ(ステップS2008)、ステップS2003に戻る。一方、達している場合には、設定されている倍率が概略サイズ・位置合わせ部504で決定した概略倍率+αに達しているか否かを判断し(ステップS2009)、達していない場合には、設定されている倍率を詳細刻み幅保持部511に保持されている、概略刻み幅保持部509に保持されている刻み幅よりも小さい刻み幅(たとえば1%)だけ増加させ(ステップS2010)、ステップS2003に戻る。
一方、設定されている倍率が概略倍率+αに達している場合には、当該画像データに電子透かし情報は埋め込まれていないと判断し、処理を終了する。
図6に示すフローにより、詳細サイズ・位置合わせ部505において、画像データの詳細サイズおよび回転角度を特定する倍率および回転角度が決定されると、画像復元部506は、情報挿入画像保持部508に保持されている画像データを、当該決定された倍率および回転角度で変形し、幾何学的変形が加えられる前の画像データを復元する。これを受けて、透かし検出部507は、画像復元部506で復元された画像データより、電子透かし情報を構成するビットb1〜bnの各々について、電子透かし情報を埋め込む際に用いたX−Y座標上の予め定められた位置1〜mにある画素データを抽出し、その輝度値の総和Sと当該抽出した画素データに隣接する画素データの輝度値の総和Rとの差分S−Rを求め、これを詳細しきい値保持部512に保持された、前記第1の閾値T1よりも絶対値が大きい第2の閾値T2と比較することで、ビットデータの値を判定する。具体的には、S−R≧T2であれば当該ビットは1と判定し、S−R≦−T2であれば、当該ビットは0と判定し、そして、−T2<S−R<T2であれば、当該抽出した画素データにはビットは埋め込まれていないと判定する。
また、透かし検出部507は、抽出した電子透かし情報を検出情報保持部513に保持させる。この情報は入出力部502を介して出力され、操作者に提示される。
以上、本発明の第1実施形態について説明した。
本実施形態によれば、キャリブレーション用電子透かしを用いることなく、幾何学的変形が加えられた画像データから電子透かし情報が埋め込まれている位置を特定することが可能になる。また、本実施形態では、まず、概略サイズ・位置合わせ部504において、画像データに埋め込まれた電子透かし情報を検出するために要求される当該画像データの概略のサイズおよび回転角度を特定する倍率および回転角度を決定し、それから、詳細サイズ・位置合わせ部505により、前記決定された概略の倍率および回転角度を基に、当該電子透かし情報を検出するために要求される当該画像データの詳細なサイズおよび回転角度を特定する倍率および回転角度を決定するようにしている。このようにすることで、電子透かし情報が埋め込まれたの画素データの確認をより効率的に且つ迅速に行うことができる。さらに、本実施形態では、概略サイズ・位置合わせ部504および詳細サイズ・位置合わせ部505において、抽出した画素データにビットデータが埋め込まれているか否かの判断を行うために用いる第1の閾値T1を、透かし検出部507において、抽出した画素データに埋め込まれているビットデータのデータ値を判定するのに用いる第2の閾値T2よりも、その絶対値が小さくさるように設定することで、画像データのサイズ・位置合わせ段階での精度を、電子透かし情報の判定段階の精度よりも緩やかになるようにしている。このようにすることで、電子透かし情報が埋め込まれたの画素データの確認をより効率的且つ迅速に行うことができる。
次に、本発明の第2実施形態について説明する。
本実施形態では、所定のX−Y座標上の予め定められた位置にある少なくとも1つの画素データに変更を加えることで電子透かし情報が埋め込まれた画像データであって幾何学的変形が加えられた画像データより、前記所定のX−Y座標上の予め定められた位置にある少なくとも1つの画素データを抽出し、このデータ値を参照値と比較することで、当該画素データに情報が埋め込まれているか否かを判断する処理を、上記の第1実施形態とは異なり前記画像データ自体はそのままで前記所定のX−Y座標に変形を加えながら、当該画素データに情報が埋め込まれていることを確認するまで実行する。
まず、本発明の2実施形態が適用された電子透かし情報抽出装置の具体的な説明に先立ち、本実施形態における電子透かし情報の抽出処理の原理を説明する。
図7および図8は、本発明の第2実施形態における画像データよりの電子透かし情報の抽出処理の原理を説明するための図である。
図18に示すように、電子透かし情報を構成するビットb1〜bn各々が、所定のX−Y座標上の予め定められた位置1〜mにある画素データの輝度を、当該ビットが1ならばUだけ増加させ、0ならばUだけ減少させるように変更すことで、画像データ上に埋め込まれているとする。その後、この電子透かし情報が埋め込まれた画像データが所定の倍率で拡大/縮小されたとする。この場合、拡大/縮小された画像データにおいては、ビットb1〜bn各々の前記所定のX−Y座標上の予め定められた位置1〜mとビットb1〜bn各々が実際に埋め込まれた画素データの位置との対応がずれてしまうので、抽出することができない。
そこで、図7に示すように、前記所定のX−Y座標(電子透かし情報を画像データに埋め込む際に用いた座標)を所定のサイズ(たとえば0.5倍)に縮小し、電子透かし情報を構成するビットb1〜bnの任意数分のビット(たとえば20(<n)個のビット)各々について、前記縮小したX−Y座標上の予め定められた位置1〜mにある画素データを抽出し、その輝度値の総和Sと当該抽出した画素データに隣接する画素データの輝度値の総和Rとの差分S−Rを求め、当該差分S−Rを所定の閾値Tと比較することで、当該抽出した画素データにビットデータが埋め込まれているか否かを判断する。そして、埋め込まれていないと判断した場合は、所定の倍率(たとえば1%)刻みでX−Y座標を拡大し、同様の処理を行う。この処理を、ビットデータが埋め込まれていることが確認されるまで繰り返し実行する。
上記の倍率刻みは、画素データの変更箇所のパターンに依存して決定される場合がある。例えば、画像の変形率が真の変形率と多少ずれていても画像の情報埋込みが確認できる場合は、すなわち画素データの変更箇所がずれていても埋込み情報が確認できる範囲では、前記倍率刻みを大きくしても透かし情報の検出が可能である。
そして、ビットデータが埋め込まれていることが確認された場合(具体的には、差分S−Rの絶対値が閾値Tより大きく且つ最大となるサイズおよび回転角度のX−Y座標が検出された場合)は、そのときの倍率のX−Y座標に基づき、電子透かし情報を構成するビットb1〜bn各々について、予め定められた位置1〜mにある画素データを抽出し、その輝度値の総和Sと当該抽出した画素データに隣接する画素データの輝度値の総和Rとの差分S−Rを求め、当該差分S−Rを所定の閾値Tと比較することで、当該抽出した画素データに埋め込まれたビットデータを検出する。これにより、画像データに埋め込まれた電子透かし情報b1〜bnを検出する。
たとえば、電子透かし情報が埋め込まれた画像データが2倍に拡大された場合、図7に示すように、当該電子透かし情報を画像データに埋め込む際に用いたX−Y座標を2倍に拡大することで、電子透かし情報の検出が可能となる。
また、図18に示すようにして電子透かし情報を構成するビットb1〜bnが埋め込まれた画像データが、その後、所定の角度だけ回転されたとする。この場合、回転された画像データにおいては、ビットb1〜bn各々の前記所定のX−Y座標上の予め定められた位置1〜mとビットb1〜bn各々が実際に埋め込まれた画素データの位置との対応がずれてしまうので、抽出することができない。
そこで、図8に示すように、前記所定のX−Y座標を所定の角度(たとえば時計回りで−90度)だけ回転させ、電子透かし情報を構成するビットb1〜bnの任意数分のビット(たとえば20(<n)個のビット)各々について、前記回転させたX−Y座標上の予め定められた位置1〜mにある画素データを抽出し、その輝度値の総和Sと当該抽出した画素データに隣接する画素データの輝度値の総和Rとの差分S−Rを求め、当該差分S−Rを所定の閾値Tと比較することで、当該抽出した画素データにビットデータが埋め込まれているか否かを判断する。そして、埋め込まれていないと判断した場合は、所定の角度(たとえば時計回りに1度)刻みで、X−Y座標をさらに回転させ、同様の処理を行う。この処理を、ビットデータが埋め込まれていることが確認されるまで繰り返し実行する。
上記の角度刻みは、画素データの変更箇所のパターンに依存して決定される場合がある。例えば、画像の回転角度が真の回転角度と多少ずれていても画像の情報埋込みが確認できる場合は、すなわち画素データの変更箇所がずれていても埋込み情報が確認できる範囲では、前記角度刻みを大きくしても透かし情報の検出が可能である。
そして、ビットデータが埋め込まれていることが確認された場合は、そのときの回転角度のX−Y座標に基づき、電子透かし情報を構成するビットb1〜bn各々について、予め定められた位置1〜mにある画素データを抽出し、その輝度値の総和Sと当該抽出した画素データに隣接する画素データの輝度値の総和Rとの差分S−Rを求め、当該差分S−Rを所定の閾値Tと比較することで、当該抽出した画素データに埋め込まれたビットデータを検出する。これにより、画像データに埋め込まれた電子透かし情報b1〜bnを検出する。
たとえば、電子透かし情報が埋め込まれた画像データが時計回りに45度だけ回転されている場合、図8に示すように、当該電子透かし情報を画像データに埋め込む際に用いたX−Y座標を時計回りに45度回転させることで、電子透かし情報の検出が可能となる。
本実施形態では、図7および図8に示す処理を組み合わせて実施することで、電子透かし情報が埋め込まれた画像データに拡大/縮小や回転処理が施された場合でも、当該画像データに埋め込まれた電子透かし情報の位置を特定できるようにしたものである。
次に、上記の電子透かし情報抽出処理を行う電子透かし情報抽出装置について説明する。なお、本実施形態が適用された電子透かし情報抽出装置の機能構成は、図3において、概略サイズ・位置合わせ部504、詳細サイズ・位置合わせ部505の動作が第1実施形態のものと異なるのみである。また、そのハードウエア構成は、図4に示すものと同様である。そこで、本実施形態では、電子透かし情報抽出装置の機能構成およびハードウエア構成の説明を図3及び図4を参照することで省略し、その動作についてのみ説明することとする。
まず、本実施形態での概略サイズ・位置合わせ部504の動作について説明する。
図9は、本実施形態における概略サイズ・位置合わせ部504の動作を説明するためのフロー図である。このフローは、制御部503が、入出力部502と協調して、電子透かし情報を構成するビットb1〜bnの情報が埋め込まれた画像データを情報挿入画像保持部508に保持させることにより開始される。
まず、概略サイズ・位置合わせ部504は、倍率を初期値(たとえば0.5倍)に設定し(ステップS3001)、その後、回転角度を初期値(たとえば0度)に設定する(ステップS3002)。次に、概略サイズ・位置合わせ部504は、設定されている倍率と回転角度にしたがい、所定のX−Y座標(電子透かし情報を埋め込む際に用いたX−Y座標であり既知とする)を変形する(ステップS3003)。
それから、概略サイズ・位置合わせ部504は、情報挿入画像保持部508に保持されている画像データより、電子透かし情報を構成するビットb1〜bnのうちj個分のビット(たとえばb1〜b20の20ビット)各々について、変形したX−Y座標上の予め定められた位置1〜m(この位置は、たとえば電子透かし情報を埋め込んだ者より予め通知されているものとする)にある画素データを抽出し、その輝度値の総和Sと当該抽出した画素データに隣接する画素データの輝度値の総和Rとの差分S−Rを求め、これを概略しきい値保持部510に保持されている第1の閾値T1と比較することで、当該抽出した画素データにビットデータが埋め込まれているか否かを判断する(ステップS3004)。そして、j個分のビット全てについて、抽出した画素データに当該ビットデータが埋め込まれていることを確認した場合には(ステップS3005)、j個分のビット各々について求めた差分S−Rの絶対値の総和のピーク値を検出したか否かを判断する(ステップS3006)。
ステップS3006において、ピーク値を検出した場合には、ピーク値検出時に設定されていた倍率と回転角度を、画像データより電子透かし情報b1〜bnが埋め込まれた画素データを抽出するのに用いるX−Y座標の概略サイズおよび回転角度を特定する倍率および回転角度に決定し、処理を終了する。
ステップS3005において、j個分のビット全てについて、抽出した画素データに当該ビットデータが埋め込まれていることを確認できなかった場合、および、ステップS3006において、未だピーク値が検出されていないと判断した場合は、ステップS3007に進む。そこで、概略サイズ・位置合わせ部504は、設定されている回転角度が最大値(たとえば360度)に達しているか否かを判断し、達していない場合には、設定されている回転角度を概略刻み幅保持部509に保持されている刻み幅(たとえば3度)だけ増加させ(ステップS3008)、ステップS3003に戻る。一方、達している場合には、設定されている倍率が最大値(たとえば2倍)に達しているか否かを判断し(ステップS3009)、達していない場合には、設定されている倍率を概略刻み幅保持部509に保持されている刻み幅(たとえば3%)だけ増加させ(ステップS3010)、ステップS3003に戻る。
上記の概略刻み保持部509に保持されている倍率刻みおよび角度刻みは、前述したように、画素データの変更箇所のパターンに依存して決定される場合がある。すなわち、画素データの埋込み箇所がずれていても埋込み情報が確認できる範囲では、前記倍率刻みおよび角度刻みを大きくしても透かし情報の検出が可能である。
一方、設定されている倍率が最大値に達している場合には、当該画像データに電子透かし情報は埋め込まれていないと判断し、処理を終了する。
次に、本実施形態での詳細サイズ・位置合わせ部505の動作について説明する。
図10は、本実施形態における詳細サイズ・位置合わせ部505の動作を説明するためのフロー図である。このフローは、図9に示すフローにより、概略サイズ・位置合わせ部504が、X−Y座標の概略サイズおよび回転角度を特定する倍率および回転角度を決定すると開始される。
まず、詳細サイズ・位置合わせ部505は、倍率を、概略サイズ・位置合わせ部504で決定した概略倍率−α(このαは、たとえば概略刻み幅保持部509に保持された刻み幅倍率と同じ倍率とする)に設定し(ステップS4001)、その後、回転角度を、概略サイズ・位置合わせ部504で決定した概略回転角度−β(このβは、たとえば概略刻み幅保持部509に保持された刻み幅回転角度と同じ回転角度とする)に設定する(ステップS4002)。次に、詳細サイズ・位置合わせ部505は、設定されている倍率と回転角度にしたがい、電子透かし情報を埋め込む際に用いたX−Y座標を変形する(ステップS4003)。
それから、詳細サイズ・位置合わせ部505は、電子透かし情報を構成するビットb1〜bnのうちk個分のビット(たとえばb21〜b40の20ビット)各々について、変形されたX−Y座標上の予め定められた位置1〜mにある画素データを抽出し、その輝度値の総和Sと当該抽出した画素データに隣接する画素データの輝度値の総和Rとの差分S−Rを求め、これを概略しきい値保持部510に保持されている第1の閾値T1と比較することで、当該抽出した画素データにビットデータが埋め込まれているか否かを判断する(ステップS4004)。そして、k個分のビット全てについて、抽出した画素データに当該ビットデータが埋め込まれていることを確認した場合には(ステップS4005)、k個分のビット各々について求めた差分S−Rの絶対値の総和のピーク値を検出したか否かを判断し(ステップS4006)、検出した場合には、ピーク値検出時に設定されていた倍率と回転角度を、画像データより電子透かし情報b1〜bnが埋め込まれた画素データを抽出するのに用いるX−Y座標の詳細サイズおよび回転角度を特定する倍率および回転角度に決定し、処理を終了する。
ステップS4005において、k個分のビット全てについて、抽出した画素データに当該ビットデータが埋め込まれていることを確認できなかった場合、および、ステップS4006において、未だピーク値を検出していないと判断した場合は、ステップS4007に進む。そこで、詳細サイズ・位置合わせ部505は、設定されている回転角度が概略サイズ・位置合わせ部504で決定した概略回転角度+βに達しているか否かを判断し、達していない場合には、設定されている回転角度を詳細刻み幅保持部511に保持されている、概略刻み幅保持部509に保持されている刻み幅よりも小さい刻み幅(たとえば1度)だけ増加させ(ステップS4008)、ステップS4003に戻る。一方、達している場合には、設定されている倍率が概略サイズ・位置合わせ部504で決定した概略倍率+αに達しているか否かを判断し(ステップS4009)、達していない場合には、設定されている倍率を詳細刻み幅保持部511に保持されている、概略刻み幅保持部509に保持されている刻み幅よりも小さい刻み幅(たとえば1%)だけ増加させ(ステップS4010)、ステップS4003に戻る。
一方、設定されている倍率が概略倍率+αに達している場合には、当該画像データに電子透かし情報は埋め込まれていないと判断し、処理を終了する。
図10に示すフローにより、詳細サイズ・位置合わせ部505において、画像データより電子透かし情報b1〜bnが埋め込まれた画素データを抽出するのに用いるX−Y座標の詳細サイズおよび回転角度を特定する倍率および回転角度が決定されると、画像復元部506は、情報挿入画像保持部508に保持されている画像データを、当該決定された倍率および回転角度に応じた倍率および回転角度で変形し、幾何学的変形が加えられる前の画像データを復元する。たとえば、決定された倍率が0.5倍であり回転角度が45度であるとすると、倍率2倍、回転角度−45度で情報挿入画像保持部508に保持されている画像データを変形することにより、幾何学的変形が加えられる前の画像データを復元する。
次に、透かし検出部507は、画像復元部506で復元された画像データより、電子透かし情報を構成するビットb1〜bnの各々について、電子透かし情報b1〜bnが埋め込まれた画素データを抽出するのに用いるX−Y座標(変形が施されていないX−Y座標)上の予め定められた位置1〜mにある画素データを抽出し、その輝度値の総和Sと当該抽出した画素データに隣接する画素データの輝度値の総和Rとの差分S−Rを求め、これを詳細しきい値保持部512に保持された、前記第1の閾値T1よりも絶対値が大きい第2の閾値T2と比較することで、ビットデータの値を判定する。また、透かし検出部507は、抽出した電子透かし情報を検出情報保持部513に保持させる。この情報は入出力部502を介して出力され、操作者に提示される。
以上、本発明の第2実施形態について説明した。
本実施形態も、上記の第1実施形態と同様の効果を奏する。加えて、本実施形態によれば、電子透かし情報の埋め込み位置の確認を、画像データ自体に幾何学的変形を加えることなく行えるので、第1実施形態に比べ、処理に要するメモリ容量やプロセッサの負荷を低減させることができる。
さらに、本実施形態では、詳細サイズ・位置合わせ部505において、画像データより電子透かし情報b1〜bnが埋め込まれた画素データを抽出するのに用いるX−Y座標の詳細サイズおよび回転角度を特定する倍率および回転角度が決定されると、画像復元部506が、情報挿入画像保持部508に保持されている画像データを、当該決定された倍率および回転角度に応じた倍率および回転角度で変形し、幾何学的変形が加えられる前の画像データを復元している。そして、透かし検出部507において、幾何学的変形が加えられる前の状態に復元された画像データより電子透かし情報を抽出するようにしている。
通常、画像データを縮小する場合、その縮小率にしたがって、画像データから任意の画素データを取り去ることで、その画像データのサイズを小さくしている。このため、電子透かし情報が埋め込まれた画像データに対して縮小処理が施されている場合、縮小処理の際に、電子透かし情報(の1部)が埋め込まれた画素データが当該画像データから採り去られている可能性もある。このような場合、電子透かし情報の全てを当該画像データから効率よく抽出できなくなることも考えられる。
これに対し、本実施形態では、画像データが縮小されている場合、詳細サイズ・位置合わせ部505において決定されたX−Y座標の詳細サイズを特定する倍率に応じた倍率で画像データを変形し、当該画像データを幾何学的変形が加えられる前のサイズに拡大している。通常、画像データの拡大は、補間により行われる。
上記の第1、2実施形態では、電子透かし情報を構成するビットb1〜bn各々の画像データへの埋め込みを、ビット各々につき、所定のX−Y座標上の予め定められた位置1〜mにある1つの画素データ各々に埋め込む場合を例に採り説明しているが、通常、ビット各々につき、所定のX−Y座標上の予め定められた位置1〜mにあるN×Mの画素データ各々に埋め込むことが多い。このような場合、本第2実施形態によれば、画像データを縮小するときに、ビットデータが埋め込まれたN×Mの画素データのうちの1つが失われたとしても、画像データの拡大の際に、ビットデータが埋め込まれた残りの画素データに基づいて補間されることにより、縮小により失われた、ビットデータが埋め込まれた画素データを復元することができる可能性が高い。このため、本第2実施形態によれば、電子透かし情報を構成するビットb1〜bnの検出精度を向上させることができる。
なお、上記の第1、2実施形態では、電子透かし情報を構成するビットb1〜bnのうち20個分のビットの各々について、当該ビットのビットデータがX−Y座標上の予め定められた位置1〜mにある画素データに埋め込まれているか否かを判定することで、電子透かし情報b1〜bnを検出するために要求される画像データあるいはX−Y座標のサイズや回転角度を特定するようにしているが、本発明は、これに限定されるものではない。
たとえば、電子透かし情報を構成するビットb1〜bnのうちのいずれか1つのビットについて、当該ビットのビットデータがX−Y座標上の予め定められた位置1〜mにある画素データに埋め込まれているか否かを判定することで、電子透かし情報b1〜bnを検出するために要求される画像データあるいはX−Y座標のサイズや回転角度を特定するようにしてもよい。あるいは、電子透かし情報を構成するビットb1〜bn各々について、当該ビットのビットデータがX−Y座標上の予め定められた位置1〜mにある画素データに埋め込まれているか否かを判定することで、電子透かし情報b1〜bnを検出するために要求される画像データあるいはX−Y座標のサイズや回転角度を特定するようにしてもよい。
前者の場合、ビットデータが画素データに埋め込まれているか否かを判定するために用いる第1の閾値T1をより厳格に設定することで、電子透かし情報が埋め込まれたの画素データの確認をより効率的且つ迅速に行うことができる。たとえば、電子透かし情報を構成する個々のビットを誤り率10−8程度で検出することができるように第1の閾値T1を設定すれば、電子透かし情報を構成するビット数nが50の場合、ビットb1〜b50のいずれか1つについて、当該ビットが検出できたとする判断に誤りが生じる確率は10−8であり、実用上問題ない。
また、後者の場合、ビットデータが画素データに埋め込まれているか否かを判定するために用いる第1の閾値T1をより緩やか設定することで、電子透かし情報が埋め込まれたの画素データの確認をより効率的且つ迅速に行うことができる。たとえば、電子透かし情報を構成する個々のビットを誤り率10−1程度で検出することができるように第1の閾値T1を設定すれば、電子透かし情報を構成するビット数nが50の場合、ビットb1〜b50各々を全て検出できたとする判断に誤りが生じる確率は10−50であり、実用上問題ない。
また、上記の第1、2実施形態では、X−Y座標上の予め定められた位置にある複数の画素データ各々の輝度値の総和Sとの差分を算出するための参照値として、前記複数の画素データ各々に隣接する画素データの輝度値の総和Rを用いているが、本発明はこれに限定されない。たとえば、前記複数の画像データ各々について、当該画素データの近傍にある複数の画素データより補間を用いて推定した当該画素データの輝度値の総和R´を用いるようにしてもよい。このようにすることで、さらに精度よく電子透かし情報を抽出することが可能となる。
次に、本発明の第3実施形態について説明する。
上記の第1、2実施形態では、透かし検出部507において、電子透かし情報を構成するビットb1〜bnの判定に用いる第2の閾値T2を、概略サイズ・位置合わせ部504および詳細サイズ位置合わせ部505において、電子透かし情報を構成するビットb1〜bnの埋め込み位置特定に用いる第1の閾値T1よりも大きく設定している。そして、透かし検出部507により、電子透かし情報を構成するビットb1〜bn各々について前記特定された埋め込み位置1〜mにある画素データを抽出し、その輝度値の総和Sと当該抽出した画素データに隣接する画素データの輝度値の総和Rとの差分S−Rを求め、S−R≧T2であれば当該ビットは1と判定し、S−R≦−T2であれば、当該ビットは0と判定し、−T2<S−R<T2であれば、抽出した画素データにはビットが埋め込まれていないと判定している。
このため、第2の閾値T2が電子透かし情報を抽出しようとしている画像データに対して最適化されていないと、電子透かし情報を構成するビットbi(1≦i≦n)が画像データの予め定められた位置1〜mに埋め込まれているにもかかわらず−T2<S−R<T2となり、ビットbiは画像データに埋め込まれていないと判定されてしまうこともある。すなわち、電子透かし情報を構成するビットb1〜bnの抽出感度が低くなってしまう。
そこで、本実施形態では、透かし検出部507において、電子透かし情報を構成するビットb1〜bnの判定に用いる第2の閾値T2を0に設定することで、画像データに埋め込まれた電子透かし情報を構成するビットb1〜bn各々が、必ず0か1のいずれかに判定されるようにしている。また、これに伴い、画像データに埋め込まれた電子透かし情報を構成するビットb1〜bn各々のビット値判定に先立ち、第2の閾値T2を0に設定した場合における当該画像データに埋め込まれた電子透かし情報を構成するビットb1〜bnのビット値判定誤り率を求め、当該誤り率が所定値以下の場合、すなわちビット値判定の信頼度が所定値以上の場合にのみ、上記のビット値判定を行なうようにしている。
次に、本実施形態が適用された電子透かし情報抽出装置について説明する。なお、本実施形態が適用された電子透かし情報抽出装置の機能構成は、図3において、詳細しきい値保持部512に保持されている第2の閾値T2が0である点を除けば、透かし検出部507の機能が第1、2実施形態のものと異なるのみである。また、そのハードウエア構成は、図4に示すものと同様である。そこで、本実施形態では、透かし検出部507についてのみ説明することとする。
図11は、本発明の第3実施形態で用いる透かし検出部507の機能構成図である。
図示するように、本実施形態で用いる透かし検出部507は、誤り率算出部507aとビット値判定部507bを有する。
誤り率算出部507aは、画像復元部506で復元された画像データより、電子透かし情報を構成するビットb1〜bnのうちのh個分のビット(たとえばb1〜b20の20ビット)各々について、X−Y座標上の予め定められた位置1〜mにある画素データを抽出し、その輝度値の総和Sと当該抽出した画素データに隣接する画素データの輝度値の総和Rとの差分S−Rを求める。そして、h個分のビット各々について求めたh個の差分S−Rを、第2の閾値T2(=0)を境界として、すなわち、差分S−Rの正負に基づいて、2つの部分集合に分ける。それから、2つの部分集合各々について、当該部分集合に含まれる差分S−Rの平均値や分散値などの統計値、あるいは、ヒストグラム分布より、差分S−Rの確率分布曲線を求める。そして、上記のようにして求めた正負2つの部分集合の少なくとも1つの確率分布曲線からビット値判定誤りを求める。
図12は、上記のようにして求めた差分S−Rの確率分布曲線を示している。本実施形態では、上記の第1、2実施形態にしたがい、電子透かし情報を構成するビットb1〜bnの画像データへの埋め込み位置が特定されているので、電子透かし情報を構成するビットb1〜bnのうちのh個分のビット(たとえばb1〜b20の20ビット)各々について求めた差分S−Rは、電子透かし情報が埋め込まれている場合は(a)に示すように、正負の2つの部分集合に分かれる。したがって、この正負2つの部分集合の確率分布曲線から、後述するようにビット値判定誤り率を求めることができる。
なお、電子透かし情報が埋め込まれていない場合における差分S−Rの確率分布曲線を(b)に示す。この場合、図示するように差分S−Rの確率分布曲線は、0を中心とした分布となる。
ビット値判定部507bは、誤り率算出部507aで求めたビット値判定誤り率が所定値(この所定値は抽出する電子透かし情報に要求される信頼度に応じて設定する。たとえば10−3)以下の場合、画像復元部506で復元された画像データより、電子透かし情報を構成するビットb1〜bn各々について、電子透かし情報を埋め込む際に用いたX−Y座標上の予め定められた位置1〜mにある画素データを抽出し、その輝度値の総和Sと当該抽出した画素データに隣接する画素データの輝度値の総和Rとの差分S−Rを求め、これを詳細しきい値保持部512に保持された第2の閾値T2、すなわち0と比較することで、ビットデータの値を判定する。具体的には、S−Rが正であれば当該ビットは1と判定し、S−Rが負であれば、当該ビットは0と判定する。
図13は、本発明の第3実施形態で用いる透かし検出部507の動作を説明するためのフロー図である。このフローは、図6に示すフローにより、詳細サイズ・位置合わせ部505において、画像データの詳細サイズおよび回転角度を特定する倍率および回転角度が決定され、画像復元部506により、情報挿入画像保持部508に保持されている画像データが、当該決定された倍率および回転角度で変形されて、幾何学的変形が加えられる前の画像データに復元されると、あるいは、図10に示すフローにより、詳細サイズ・位置合わせ部505において、画像データより電子透かし情報b1〜bnが埋め込まれた画素データを抽出するのに用いるX−Y座標の詳細サイズおよび回転角度を特定する倍率および回転角度が決定され、画像復元部506により、情報挿入画像保持部508に保持されている画像データが、当該決定された倍率および回転角度に応じた倍率および回転角度で変形されて、幾何学的変形が加えられる前の画像データに復元されると、開始される。
まず、誤り率算出部507aは、画像復元部506で復元された画像データより、電子透かし情報を構成するビットb1〜bnのうちのh個分のビット(たとえばb1〜b20の20ビット)各々について、X−Y座標上の予め定められた位置1〜mにある画素データを抽出し、その輝度値の総和Sと当該抽出した画素データに隣接する画素データの輝度値の総和Rとの差分S−Rを求める(ステップS5001)。次に、求めたh個の差分S−Rをその正負に基づいて、2つの部分集合に分ける(ステップS5002)。それから、2つの部分集合各々について差分S−Rの平均Eと分散Vを求める。そして、求めた平均Eおよび分散Vから、2つの部分集合各々に対する差分S−Rの確率分布曲線を求める(ステップS5003)。
次に、誤り率算出部507aは、上記のようにして求めた2つの確率分布曲線からビット値判定誤り率FPを求める(ステップS5004)。具体的には、本来「1」であるビットが「0」であると誤って判定される確率FPは、図12(a)において、正の集合に対する確率分布曲線における負(閾値T2=0より小さい部分(右下がり斜線の部分))の割合として求める。また、本来「0」であるビットが「1」であると誤って判定される確率FPは、図12(a)において、負の集合に対する確率分布曲線における正(閾値T2=0より大きい部分(塗りつぶした部分))の割合として求める。
次に、誤り率算出部507aは、上記のようにして求めたビット値判定誤り率FPがいずれも所定値(たとえば10−3)以下であることを確認し(ステップS5005)、ステップS5006に進む。もし、ビット値判定誤り率FPがいずれも所定値より大きい場合(ステップS5005)、要求される信頼度でビット値判定を行なうことができないとして、処理を終了する。
ステップS5006において、ビット値判定部507bは、画像復元部506で復元された画像データより、電子透かし情報を構成するビットb1〜bn各々について、電子透かし情報を埋め込む際に用いたX−Y座標上の予め定められた位置1〜mにある画素データを抽出し、その輝度値の総和Sと当該抽出した画素データに隣接する画素データの輝度値の総和Rとの差分S−Rを求め、これを詳細しきい値保持部512に保持された第2の閾値T2、すなわち0と比較することで、ビットデータの値を判定する。具体的には、S−Rが正であれば当該ビットは1と判定し、S−Rが負であれば、当該ビットは0と判定する。それから、ビット値判定部507bは、電子透かし情報を構成するビットb1〜bnのビット値を出力する(ステップS5007)。
以上、本発明の第3実施形態について説明した。
本実施形態では、画像データに埋め込まれた電子透かし情報のビット値判定に用いる第2の閾値T2を0に設定している。このため、画像データに埋め込まれた電子透かし情報を構成するビットb1〜bn各々は必ず0か1のいずれかに判定されるので、電子透かし情報を構成するビットb1〜bnの抽出感度を上げることができる。また、本実施形態では、画像データに埋め込まれた電子透かし情報を構成するビットb1〜bn各々のビット値判定に先立ち、第2の閾値T2を0に設定した場合における当該画像データに埋め込まれた電子透かし情報を構成するビットb1〜bnのビット値判定誤り率を求め、当該誤り率が所定値以下の場合、すなわちビット値判定の信頼度が所定値以上の場合にのみ、上記のビット値判定を行なうようにしている。このため、ビット値判定部507bから出力される電子透かし情報のビット値の信頼性を確保することができる。
なお、上記の第3実施形態では、誤り率算出部507aにおいて、第2の閾値T2を0に設定した場合における画像データに埋め込まれた電子透かし情報を構成するビットb1〜bnのビット値判定誤り率FPを求め、当該誤り率FPが所定値以下の場合にのみ、ビット値判定部507bにおいて、当該画像データに埋め込まれた電子透かし情報を構成するビットb1〜bnのビット値判定を行なうようにしている。しかしながら、誤り率算出部507aで算出したビット値判定誤り率の値FPにかかわらず、ビット値判定部507bにおいてビット値判定を行なうようにしてもよい。すなわち、図14に示すフローのように、図13に示すフローからステップS5005を削除するようにしてもかまわない。この場合、ステップS5007において、ビット値判定部507bにおけるビット値判定結果に加えて、誤り率算出部507aで算出したビット値判定誤り率FP(あるいはビット値判定誤り率FPより導かれるビット値判定結果の信頼度)を出力するようにする。このようにすることで、ビット値判定部507bで判定した電子透かし情報のビット値の信頼性がどの程度であるかを把握することができる。
また、上記の第3実施形態では、ビット値判定部507bにおいて、画像データに埋め込まれた電子透かし情報のビット値判定に用いる第2の閾値T2を0に設定しているが、この第2の閾値T2を0以外の値に設定してもかまわない。この場合、誤り率算出部507aは、以下のようにして、画像データに埋め込まれた電子透かし情報を構成するビットb1〜bnのビット値判定誤り率を求めればよい。
すなわち、画像復元部506で復元された画像データより、電子透かし情報を構成するビットb1〜bnのうちのh個分のビット(たとえばb1〜b20の20ビット)各々について、X−Y座標上の予め定められた位置1〜mにある画素データを抽出し、その輝度値の総和Sと当該抽出した画素データに隣接する画素データの輝度値の総和Rとの差分S−Rを求める。そして、h個分のビット各々について求めたh個の差分S−Rの平均値や分散値などの統計値、あるいは、ヒストグラム分布より、差分S−Rの確率分布曲線を求める。そして、上記のようにして求めた確率分布曲線からビット値判定誤りを求める。図15は、上記のようにして求めた差分S−Rの確率分布曲線を示している。ビット値判定誤り率は、この確率分布曲線に対する、塗りつぶした部分の割合として求めることができる。
また、上記の第3実施形態における誤り率算出部507aは、単に、画像データに透かし情報が埋め込まれているか否かを判定する場合にも、応用することができる。
以上、本発明の各実施形態について説明した。
なお、本発明は、上記の各実施形態に限定されるものではなく、その要旨の範囲内で様々な変形が可能である。
たとえば、上記の各実施形態では、概略サイズ・位置合わせ部504および詳細サイズ・位置合わせ部505において、情報挿入画像保持部508に保持された画像データあるいは電子透かし情報を構成するビットデータの埋め込み位置を特定するX−Y座標に幾何学的変形を加え、画像データに対し、電子透かし情報を構成するビットb1〜bnの任意数分のビット各々について、X−Y座標上の予め定められた位置1〜mにある画素データを抽出し、その輝度値の総和Sと当該抽出した画素データに隣接する画素データの輝度値の総和Rとの差分S−Rを求め、当該差分S−Rの絶対値を、概略しきい値保持部に保持された第1の閾値T1と比較することで、当該抽出した画素データにビットデータが埋め込まれているか否かを判断している。
しかしながら、本発明はこれに限定されるものではない。概略サイズ・位置合わせ部504および詳細サイズ・位置合わせ部505におけるビットデータの埋め込み位置の判断に、上記の第3実施形態で説明した誤り率算出部507aの機能を応用することも可能である。
すなわち、概略サイズ・位置合わせ部504において、まず、情報挿入画像保持部508に保持されている画像データあるいはX−Y座標を所定の倍率で縮小する。そして、電子透かし情報を構成するビットb1〜bnの任意数分のビット各々について、X−Y座標上の予め定められた位置1〜mにある画素データを抽出し、その輝度値の総和Sと当該抽出した画素データに隣接する画素データの輝度値の総和Rとの差分S−Rを求める。次に、前記任意数分のビット各々について求めた差分S−Rの平均値や分散値などの統計値、あるいは、ヒストグラム分布より、差分S−Rの確率分布曲線を求め、この確率分布曲線からビット値判定誤り率を求める。それから、求めたビット値判定誤り率が所定値以下であるか否かを調べることで、当該抽出した画素データにビットデータが埋め込まれているか否かを判断するといった一連の処理を、所定の範囲内において、概略刻み幅保持部509に保持されている第1の回転角度刻みで当該画像データあるいはX−Y座標を回転させながら行う。そして、ビットデータが埋め込まれていないと判断した場合は、概略刻み幅保持部509に保持されている第1の倍率刻みで画像データあるいはX−Y座標を拡大し、同様の処理を行う。この処理を、ビットデータが埋め込まれていることが確認されるまで(具体的には、求めたビット値判定誤り率が所定値以下で且つ最小となるサイズおよび回転角度の画像データあるいはX−Y座標が検出されるまで)、繰り返し実行する。
同様に、詳細サイズ・位置合わせ部505において、概略サイズ・位置合わせ部505によりビットデータが埋め込まれていることが確認された際の画像データあるいはX−Y座標の倍率よりも所定値低い倍率で、情報挿入画像保持部508に保持されている画像データを縮小する。そして、電子透かし情報を構成するビットb1〜bnの任意数分のビット各々について、X−Y座標上の予め定められた位置1〜mにある画素データを抽出し、その輝度値の総和Sと当該抽出した画素データに隣接する画素データの輝度値の総和Rとの差分S−Rを求める。次に、前記任意数分のビット各々について求めた差分S−Rの平均値や分散値などの統計値、あるいは、ヒストグラム分布より、差分S−Rの確率分布曲線を求め、この確率分布曲線からビット値判定誤り率を求める。それから、求めたビット値判定誤り率が所定値以下であるか否かを調べることで、当該抽出した画素データにビットデータが埋め込まれているか否かを判断するといった一連の処理を、概略サイズ・位置合わせ部505にてビットデータが埋め込まれていることが確認された際の画像データの回転角度を含む所定の範囲内において、詳細刻み幅保持部511に保持されている、前記第1の回転角度より小さい第2の回転角度刻みで当該画像データを回転させながら行う。そして、ビットデータが埋め込まれていないと判断した場合は、詳細刻み幅保持部511に保持されている、前記第1の倍率より小さい第2の倍率刻みで画像データを拡大し、同様の処理を行う。この処理を、ビットデータが埋め込まれていることが確認されるまで繰り返し実行する。
また、上記の各実施形態では、画像データあるいは当該画像データに埋め込まれた電子透かし情報のビット位置を特定するのに用いるX−Y座標に幾何学的変形を加えて、当該画像データに埋め込まれた電子透かし情報のビット位値を特定する処理(概略サイズ・位置合わせ部504、詳細サイズ・位置合わせ部505および画像復元部506での処理)と、当該画像データに埋め込まれた電子透かし情報の各ビットのビット値を判定して抽出する処理(透かし検出部507での処理)とを、1つの装置上で行なう場合について説明した。しかしながら、本発明はこれに限定されるものではない。画像データに埋め込まれた電子透かし情報のビット位値を特定する処理と、当該画像データに埋め込まれた電子透かし情報の各ビットのビット値を判定して抽出する処理とを別個の装置上で行なうようにしてもよい。
図16は、上記の各実施形態において、画像データに埋め込まれた電子透かし情報のビット位値を特定する処理と、当該画像データに埋め込まれた電子透かし情報の各ビットのビット値を判定して抽出する処理とを別個の装置上で行なうように変形した例を示している。この図において、図3に示すものと同じ機能を有するものには、同じ符号を付している。
図において、電子透かし情報有無判定装置7001〜700nは、画像データに埋め込まれた電子透かし情報のビット位値を特定する処理を行なう装置であり、図3に示す電子透かし情報抽出装置から、透かし検出部507、詳細しきい値保持部512および検出情報保持部513を除いた構成となっている。電子透かし情報ビット判定装置800は、画像データに埋め込まれた電子透かし情報の各ビットのビット値を判定して抽出する処理を行なう装置であり、図3に示す電子透かし情報抽出装置から、概略サイズ・位置合わせ部504、詳細サイズ・位置合わせ部505、画像復元部506、概略刻み幅保持部509、詳細刻み幅保持部511および概略しきい値保持部510を除いた構成となっている。電子透かし情報有無判定装置7001〜700nおよび電子透かし情報ビット判定装置800は、ネットワークを介して互いに接続されている。
さて、このような構成において、電子透かし情報有無判定装置7001〜700nは、自身が保持する画像データに対し、図5および図6、あるいは図9および図10に示すフローにしたがって、電子透かし情報の埋め込み位置の特定を行なう。そして、埋め込み位置が特定された画像データ(すなわち、電子透かし情報ありと判定された画像データ)を、画像復元部506によって元の状態に復元し、それから、入出力部502およびネットワークを介して電子透かし情報ビット値判定装置800に送信する。
一方、電子透かし情報ビット値判定装置800は、電子透かし情報有無判定装置7001〜700nから、画像データを受け取ると、当該画像データに埋め込まれた電子透かし情報のビット値判定を行ない、その結果を入出力部502およびネットワークを介して、当該画像データの送信先である電子透かし情報有無判定装置7001〜700nに送信する。
上記の構成は、たとえば、インターネットに接続された複数のWebサーバが提供する画像データの透かし情報を判定するのに好適である。この場合、電子透かし情報有無判定装置7001〜700nは、それぞれ、Webサーバ上に構築されることになる。なお、Webサーバ上に電子透かし情報有無判定装置を構築するためのプログラムは、ネットワークを介して、複数の情報処理装置上に順次移動し、そして、移動先の情報処理装置上で実行される、いわゆるエージェントと呼ばれる形態で提供されるものでもよい。
図17は、Webサーバ上に、図16に示す電子透かし情報有無判定装置を構築するためのプログラムが、いわゆるエージェントと呼ばれる形態で提供される場合のシステムを示している。
図17において、電子透かし情報ビット値判定装置800は、Webサーバ9001〜900n上に、図16に示す電子透かし情報有無判定装置を構築するためのエージェントプログラムを有しており、定期的あるいは所定のイベント発生時に、当該エージェントプログラムをネットワーク上に送出する。ネットワーク上に送出されたエージェントプログラムは、予め定められた順番でWebサーバ9001〜900n上に移動する。たとえば、最初にWebサーバ9001上に移動し、そこで実行されて電子透かし情報有無判定装置7001を構築する。そして、Webサーバ9001が保持する画像データに対し、図5および図6あるいは図9および図10に示すフローにしたがって、電子透かし情報の埋め込み位置の特定を行なう。そして、埋め込み位置が特定された画像データ(すなわち、電子透かし情報ありと判定された画像データ)を元の状態に復元し、電子透かし情報ビット値判定装置800に送信して、当該画像データに埋め込まれた電子透かし情報のビット値判定結果を受け取るのを待つ。
電子透かし情報ビット値判定装置800からビット値判定結果を受け取った場合、あるいは、埋め込み位置を特定できず、電子透かし情報なしと判定した場合は、ネットワークを介して、次のWebサーバ上に移動する。エージェントプログラムは、Webサーバ9001〜900n上に順次移動して上記の処理を行なう。
501:処理部、502:入出力部、503:制御部
504:概略サイズ・位置合わせ部、505:詳細サイズ・位置合わせ部
506:画像復元部、507:透かし検出部
508:情報挿入画像保持部、509:概略刻み幅保持部
510:概略しきい値保持部、511:詳細刻み幅保持部
512:詳細しき値保持部、513:検出情報保持部、514:記憶部
601:CPU、602:メモリ、603、604:外部記憶装置
605:入力装置、606:出力装置、607:インターフェース
608:記憶媒体
504:概略サイズ・位置合わせ部、505:詳細サイズ・位置合わせ部
506:画像復元部、507:透かし検出部
508:情報挿入画像保持部、509:概略刻み幅保持部
510:概略しきい値保持部、511:詳細刻み幅保持部
512:詳細しき値保持部、513:検出情報保持部、514:記憶部
601:CPU、602:メモリ、603、604:外部記憶装置
605:入力装置、606:出力装置、607:インターフェース
608:記憶媒体
Claims (24)
- 所定の座標上の予め定められた位置にある少なくとも1つの画素データに変更を加えることで電子透かし情報が埋め込まれた画像データであって、且つ幾何学的変形が加えられた画像データより、前記電子透かし情報を抽出する電子透かし情報の抽出方法であって、
前記画像データより、前記所定の座標上の予め定められた位置にある少なくとも1つの画素データを抽出し、前記抽出した画素データのデータ値を参照値と比較することで、当該画素データに情報が埋め込まれているか否かを判断する処理を、当該画素データに情報が埋め込まれていることを確認するまで、前記画像データに幾何学的変形を加えながら実行する埋め込み位置確認ステップを有する
ことを特徴とする電子透かし情報の抽出方法。 - 請求項1記載の電子透かし情報の抽出方法であって、
前記埋め込み位置確認ステップは、
前記画像データより、前記所定の座標上の予め定められた位置にある少なくとも1つの画素データを抽出し、抽出した画素データのデータ値を参照値と比較することで、当該画素データに情報が埋め込まれているか否かについて判断する処理を、当該画素データに情報が埋め込まれていることについての確認がなされるまで、第1の幾何学的変形率刻みで前記画像データに幾何学的形を加えながら実行する概略確認ステップと、
前記画像データより、前記所定の座標上の予め定められた位置にある少なくとも1つの画素データを抽出し、抽出した画素データのデータ値を参照値と比較することで、当該画素データに情報が埋め込まれているか否かについて判断する処理を、当該画素データに情報が埋め込まれていることについての確認がなされるまで、前記概略確認ステップにより当該画素データに情報が埋め込まれていると確認された際の幾何学的変形率を含む所定の範囲内において、前記第1の幾何学的変形率よりも小さい第2の幾何学的変形率刻みで前記画像データに幾何学的形を加えながら実行する詳細確認ステップと、を有する
ことを特徴とする電子透かし情報の抽出方法。 - 請求項1または2記載の電子透かし情報の抽出方法であって、
電子透かし情報を構成する複数のビットデータ各々につき、所定の座標上の予め定められた位置にある少なくとも1つの画素データに変更を加えることで、前記電子透かし情報が画像データに埋め込まれている場合、前記複数のビットデータのうちの少なくとも1つのビットデータに対して、前記埋め込み位置確認ステップを実行し、当該ビットデータが埋め込まれている画素データが確認された際の、幾何学的変形が加えられた画像データより、前記複数のビットデータの抽出を行う
ことを特徴とする電子透かし情報の抽出方法。 - 請求項1ないし3いずれか一に記載の電子透かし情報の抽出方法であって、
前記参照値は、前記抽出した画素データの近傍に位置する画素データのデータ値、あるいは、前記抽出した画素データの近傍に位置する少なくとも2つの画素データを用いて、補間により推定した当該抽出した画素データのデータ値である
ことを特徴とする電子透かし情報の抽出方法。 - 所定の座標上の予め定められた位置にある少なくとも1つの画素データに変更を加えることで電子透かし情報が埋め込まれた画像データであって、且つ幾何学的変形が加えられた画像データより、前記電子透かし情報を抽出する電子透かし情報の抽出方法であって、
前記所定の座標上の予め定められた位置にある少なくとも1つの画素データを抽出し、抽出した画素データのデータ値を参照値と比較することで、当該画素データに情報が埋め込まれているか否かを判断する処理を、当該画素データに情報が埋め込まれていることを確認するまで、前記所定の座標を変形することで、前記画像データ上の前記予め定められた位置を変えながら実行する埋め込み位置確認ステップを有する
ことを特徴とする電子透かし情報の抽出方法。 - 請求項5記載の電子透かし情報の抽出方法であって、
前記埋め込み位置確認ステップは、
前記画像データより、前記所定の座標上の予め定められた位置にある少なくとも1つの画素データを抽出し、抽出した画素データのデータ値を参照値と比較することで、当該画素データに情報が埋め込まれているか否かについて判断する処理を、当該画素データに情報が埋め込まれていることについての確認がなされるまで、第1の変形率刻みで前記所定の座標を変形することで、前記画像データ上の前記予め定められた位置を変えながら実行する概略確認ステップと、
前記画像データより、前記所定の座標上の予め定められた位置にある少なくとも1つの画素データを抽出し、抽出した画素データのデータ値を参照値と比較することで、当該画素データに情報が埋め込まれているか否かについて判断する処理を、当該画素データに情報が埋め込まれていることについての確認がなされるまで、前記概略確認ステップにより当該画素データに情報が埋め込まれていると確認された際の変形率を含む所定の範囲内において、前記第1の変形率よりも小さい第2の変形率刻みで前記所定の座標を変形することで、前記画像データ上の前記予め定められた位置を変えながら実行する詳細確認ステップと、を有する
ことを特徴とする電子透かし情報の抽出方法。 - 請求項5または6記載の電子透かし情報の抽出方法であって、
電子透かし情報を構成する複数のビットデータ各々につき、所定の座標上の予め定められた位置にある少なくとも1つの画素データに変更を加えることで、前記電子透かし情報が画像データに埋め込まれている場合、前記複数のビットデータのうちの少なくとも1つのビットデータに対して、前記埋め込み位置確認ステップを実行し、当該ビットデータが埋め込まれている画素データが確認された際の、変形が加えられた前記所定の座標を用いて、前記複数のビットデータの抽出を行う
ことを特徴とする電子透かし情報の抽出方法。 - 請求項5または6記載の電子透かし情報の抽出方法であって、
電子透かし情報を構成する複数のビットデータ各々につき、所定の座標上の予め定められた位置にある少なくとも1つの画素データに変更を加えることで、前記電子透かし情報が画像データに埋め込まれている場合、前記複数のビットデータのうちの少なくとも1つのビットデータに対して、前記埋め込み位置確認ステップを実行し、当該ビットデータが埋め込まれている画素データが確認された際の前記所定の座標に加えられた変形率に応じた幾何学的変形率で前記画像データに幾何学的変形を加え、前記埋め込み位置確認ステップにより変形が加えられる前の前記所定の座標を用いて、当該幾何学的変形が加えられ画像データより、前記複数のビットデータを抽出する
ことを特徴とする電子透かし情報の抽出方法。 - 請求項1ないし8いずれか一に記載の電子透かし情報の抽出方法であって、
前記参照値は、前記抽出した画素データの近傍に位置する画素データのデータ値、あるいは、前記抽出した画素データの近傍に位置する少なくとも2つの画素データを用いて、補間により推定した当該抽出した画素データのデータ値である
ことを特徴とする電子透かし情報の抽出方法。 - 所定の座標上の予め定められた位置にある少なくとも1つの画素データに変更を加えることで電子透かし情報が埋め込まれた画像データであって、且つ幾何学的変形が加えられた画像データより、前記電子透かし情報を抽出する、電子透かし情報抽出のためのプログラムが記憶された記憶媒体であって、
当該プログラムは、情報処理装置に、請求項1ないし9いずれか一に記載の埋め込み位置確認ステップを実行させる
ことを特徴とする電子透かし情報抽出のためのプログラムが記憶された記憶媒体。 - 所定の座標上の予め定められた位置にある少なくとも1つの画素データに変更を加えることで電子透かし情報が埋め込まれた画像データであって、且つ幾何学的変形が加えられた画像データより、前記電子透かし情報を抽出する、電子透かし情報抽出のためのプログラムが記憶された記憶媒体であって、
当該プログラムは、情報処理装置に、前記所定の座標上の予め定められた位置にある少なくとも1つの画素データを抽出し、抽出した画素データのデータ値を参照値と比較することで、当該画素データに情報が埋め込まれているか否かを判断する処理を、当該画素データに情報が埋め込まれていることを確認するまで、前記所定の座標を変形することで、前記画像データ上の前記予め定められた位置を変えながら実行する埋め込み位置確認ステップを実行させる
ことを特徴とする電子透かし情報抽出のためのプログラムが記憶された記憶媒体。 - 所定の座標上の予め定められた位置にある少なくとも1つの画素データに変更を加えることで電子透かし情報が埋め込まれた画像データであって、且つ幾何学的変形が加えられた画像データより、前記電子透かし情報を抽出する電子透かし情報抽出装置であって、
前記画像データより、前記所定の座標上の予め定められた位置にある少なくとも1つの画素データを抽出し、抽出した画素データのデータ値を参照値と比較することで、当該画素データに情報が埋め込まれているか否かを判断する処理を、当該画素データに情報が埋め込まれていることを確認するまで、前記画像データに幾何学的変形を加えながら実行する手段を有する
ことを特徴とする電子透かし情報抽出装置。 - 所定の座標上の予め定められた位置にある少なくとも1つの画素データに変更を加えることで電子透かし情報が埋め込まれた画像データであって、且つ幾何学的変形が加えられた画像データより、前記電子透かし情報を抽出する電子透かし情報抽出装置であって、
前記所定の座標上の予め定められた位置にある少なくとも1つの画素データを抽出し、抽出した画素データのデータ値を参照値と比較することで、当該画素データに情報が埋め込まれているか否かを判断する処理を、当該画素データに情報が埋め込まれていることを確認するまで、前記所定の座標を変形することで、前記画像データ上の前記予め定められた位置を変えながら実行する手段を有する
ことを特徴とする電子透かし情報抽出装置。 - 電子透かし情報を構成する複数のビットデータ各々につき、所定の座標上の予め定められた位置にある少なくとも1つの画素データに変更を加えることで画像データに埋め込まれた前記電子透かし情報のビット値判定方法であって、
前記電子透かし情報を構成する複数のビットデータのうち少なくとも2つのビットデータについて、それぞれ、前記ビットデータが埋め込まれるべき画素データと参照値との差分を求め、求めた差分の分布により定まる確率分布曲線に基づき、前記ビットデータのビット値判定に用いる閾値をTとした場合における当該ビットデータのビット値判定誤り率を求める誤り率算出ステップと、
前記誤り率算出ステップで求めた判定誤り率が所定値より小さい場合に、前記電子透かし情報を構成する複数のビットデータについて、それぞれ、前記ビットデータが埋め込まれるべき画素データと参照値との差分を前記閾値Tと比較することで、当該ビットデータのビット値を判定するビット値判定ステップと、を有する
ことを特徴とする電子透かし情報のビット値判定方法。 - 請求項14記載の電子透かし情報のビット値判定方法であって、
前記誤り率判定ステップは、
前記電子透かし情報を構成する複数のビットデータのうち少なくとも2つのビットデータについて、それぞれ、前記ビットデータが埋め込まれるべき画素データと参照値との差分を求め、求めた差分の分布を前記閾値Tに基づいて2つの部分集合に分割するステップと、
前記2つの部分集合各々に含まれる差分の分布より定まる確率分布曲線に基づき、前記ビットデータのビット値判定に用いる閾値をTとした場合における当該ビットデータのビット値判定誤り率を求めるステップと、を有する
ことを特徴とする電子透かし情報のビット値判定方法。 - 電子透かし情報を構成する複数のビットデータ各々につき、所定の座標上の予め定められた位置にある少なくとも1つの画素データに変更を加えることで画像データに埋め込まれた前記電子透かし情報のビット値判定方法であって、
前記電子透かし情報を構成する複数のビットデータのうち少なくとも2つのビットデータについて、それぞれ、前記ビットデータが埋め込まれるべき画素データと参照値との差分を求め、求めた差分の分布により定まる確率分布曲線に基づき、前記ビットデータのビット値判定に用いる閾値をTとした場合における当該ビットデータのビット値判定誤り率を求める誤り率算出ステップと、
前記電子透かし情報を構成する複数のビットデータについて、それぞれ、前記ビットデータが埋め込まれるべき画素データと参照値との差分を前記閾値Tと比較することで、当該ビットデータのビット値を判定するビット値判定ステップと、
前記ビット値判定ステップにより判定した前記電子透かし情報を構成する複数のビットデータのビット値を、前記誤り率算出ステップで算出したビット値判定誤り率とともに出力する出力ステップと、を有する
ことを特徴とする電子透かし情報のビット値判定方法。 - 請求項16記載の電子透かし情報のビット値判定方法であって、
前記誤り率判定ステップは、
前記電子透かし情報を構成する複数のビットデータのうち少なくとも2つのビットデータについて、それぞれ、前記ビットデータが埋め込まれるべき画素データと参照値との差分を求め、求めた差分の分布を前記閾値Tに基づいて2つの部分集合に分割するステップと、
前記2つの部分集合各々に含まれる差分の分布より定まる確率分布曲線に基づき、前記ビットデータのビット値判定に用いる閾値をTとした場合における当該ビットデータのビット値判定誤り率を求めるステップと、を有する
ことを特徴とする電子透かし情報のビット値判定方法。 - 電子透かし情報を構成する複数のビットデータ各々につき、所定の座標上の予め定められた位置にある少なくとも1つの画素データに変更を加えることで画像データに埋め込まれた前記電子透かし情報のビット値を判定する、電子透かし情報のビット値判定のためのプログラムが記憶された記憶媒体であって、
当該プログラムは、情報処理装置に、前記電子透かし情報を構成する複数のビットデータのうち少なくとも2つのビットデータについて、それぞれ、
前記ビットデータが埋め込まれるべき画素データと参照値との差分を求め、求めた差分の分布により定まる確率分布曲線に基づき、前記ビットデータのビット値判定に用いる閾値をTとした場合における当該ビットデータのビット値判定誤り率を求める誤り率算出ステップと、
前記誤り率算出ステップで求めた判定誤り率が所定値より小さい場合に、前記電子透かし情報を構成する複数のビットデータについて、それぞれ、前記ビットデータが埋め込まれるべき画素データと参照値との差分を前記閾値Tと比較することで、当該ビットデータのビット値を判定するビット値判定ステップと、を実行させる
ことを特徴とする電子透かし情報のビット値判定のためのプログラムが記憶された記憶媒体。 - 電子透かし情報を構成する複数のビットデータ各々につき、所定の座標上の予め定められた位置にある少なくとも1つの画素データに変更を加えることで画像データに埋め込まれた前記電子透かし情報のビット値を判定する、電子透かし情報のビット値判定のためのプログラムが記憶された記憶媒体であって、
当該プログラムは、情報処理装置に、前記電子透かし情報を構成する複数のビットデータのうち少なくとも2つのビットデータについて、それぞれ、
前記ビットデータが埋め込まれるべき画素データと参照値との差分を求め、求めた差分の分布により定まる確率分布曲線に基づき、前記ビットデータのビット値判定に用いる閾値をTとした場合における当該ビットデータのビット値判定誤り率を求める誤り率算出ステップと、
前記電子透かし情報を構成する複数のビットデータについて、それぞれ、前記ビットデータが埋め込まれるべき画素データと参照値との差分を前記閾値Tと比較することで、当該ビットデータのビット値を判定するビット値判定ステップと、
前記ビット値判定ステップにより判定した前記電子透かし情報を構成する複数のビットデータのビット値を、前記誤り率算出ステップで算出したビット値判定誤り率とともに出力する出力ステップと、を実行させる
ことを特徴とする電子透かし情報のビット値判定のためのプログラムが記憶された記憶媒体。 - 電子透かし情報を構成する複数のビットデータ各々につき、所定の座標上の予め定められた位置にある少なくとも1つの画素データに変更を加えることで画像データに埋め込まれた前記電子透かし情報のビット値を判定する、電子透かし情報のビット値判定装置であって、
前記電子透かし情報を構成する複数のビットデータのうち少なくとも2つのビットデータについて、それぞれ、前記ビットデータが埋め込まれるべき画素データと参照値との差分を求め、求めた差分の分布により定まる確率分布曲線に基づき、前記ビットデータのビット値判定に用いる閾値をTとした場合における当該ビットデータのビット値判定誤り率を求める手段と、
前記求めた判定誤り率が所定値より小さい場合に、前記電子透かし情報を構成する複数のビットデータについて、それぞれ、前記ビットデータが埋め込まれるべき画素データと参照値との差分を前記閾値Tと比較することで、当該ビットデータのビット値を判定する手段と、を有する
ことを特徴とする電子透かし情報のビット値判定装置。 - 電子透かし情報を構成する複数のビットデータ各々につき、所定の座標上の予め定められた位置にある少なくとも1つの画素データに変更を加えることで画像データに埋め込まれた前記電子透かし情報のビット値を判定する、電子透かし情報のビット値判定装置であって、
前記電子透かし情報を構成する複数のビットデータのうち少なくとも2つのビットデータについて、それぞれ、前記ビットデータが埋め込まれるべき画素データと参照値との差分を求め、求めた差分の分布により定まる確率分布曲線に基づき、前記ビットデータのビット値判定に用いる閾値をTとした場合における当該ビットデータのビット値判定誤り率を求める手段と、
前記電子透かし情報を構成する複数のビットデータについて、それぞれ、前記ビットデータが埋め込まれるべき画素データと参照値との差分を前記閾値Tと比較することで、当該ビットデータのビット値を判定する手段とを有し、
前記判定した電子透かし情報を構成する複数のビットデータのビット値を、前記求めたビット値判定誤り率とともに出力する
ことを特徴とする電子透かし情報のビット値判定装置。 - 電子透かし情報を構成する複数のビットデータ各々につき、所定の座標上の予め定められた位置にある少なくとも1つの画素データに変更を加えることで、画像データに、前記電子透かし情報が埋め込まれているか否かを判定する電子透かし情報の有無判定方法であって、
前記電子透かし情報を構成する複数のビットデータのうち少なくとも2つのビットデータについて、それぞれ、前記ビットデータが埋め込まれるべき画素データと参照値との差分を求め、求めた差分の分布により定まる確率分布曲線に基づいて、前記電子透かし情報が埋め込まれているか否かを判定する
ことを特徴とする電子透かし情報の有無判定方法。 - 請求項2記載の電子透かし情報の抽出方法であって、
前記第1の幾何学的変形率刻みは、変更を加えた画素データのブロックサイズと、当該ブロックの配置間隔と配置個数、とで決定される
ことを特徴とする電子透かし情報の抽出方法。 - 請求項6記載の電子透かし情報の抽出方法であって、
前記第1の変形率刻みは、変更を加えた画素データのブロックサイズと、当該ブロックの配置間隔と配置個数、とで決定される
ことを特徴とする電子透かし情報の抽出方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004241789A JP2005033818A (ja) | 1998-12-02 | 2004-08-23 | 電子透かし情報の抽出方法および電子透かし情報のビット値判定方法 |
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP34311998 | 1998-12-02 | ||
JP7500699 | 1999-03-19 | ||
JP15338599 | 1999-06-01 | ||
JP2004241789A JP2005033818A (ja) | 1998-12-02 | 2004-08-23 | 電子透かし情報の抽出方法および電子透かし情報のビット値判定方法 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP32921699A Division JP3678084B2 (ja) | 1998-12-02 | 1999-11-19 | 電子透かし情報の抽出方法および電子透かし情報のビット値判定方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2005033818A true JP2005033818A (ja) | 2005-02-03 |
Family
ID=34222463
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004241789A Pending JP2005033818A (ja) | 1998-12-02 | 2004-08-23 | 電子透かし情報の抽出方法および電子透かし情報のビット値判定方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2005033818A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014078824A (ja) * | 2012-10-10 | 2014-05-01 | Mitsubishi Electric Corp | 電子透かし検出装置、電子透かし検出方法及び電子透かし検出プログラム |
-
2004
- 2004-08-23 JP JP2004241789A patent/JP2005033818A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014078824A (ja) * | 2012-10-10 | 2014-05-01 | Mitsubishi Electric Corp | 電子透かし検出装置、電子透かし検出方法及び電子透かし検出プログラム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6563935B1 (en) | Method of extracting digital watermark information and method of judging bit value of digital watermark information | |
US6650763B2 (en) | Method of extracting digital watermark information and method of judging bit value of digital watermark information | |
Fridrich et al. | New methodology for breaking steganographic techniques for JPEGs | |
US7873183B2 (en) | Embedding and detecting watermarks based on embedded positions in document layout | |
US7031493B2 (en) | Method for generating and detecting marks | |
US6757405B1 (en) | Digital watermark embedding device, digital watermark detection device and recording medium recording computer readable program for realizing functions of two devices | |
US7099493B2 (en) | Digital watermark detecting device and method thereof | |
US20060159304A1 (en) | Watermark orientation signals conveying payload data | |
JP3706766B2 (ja) | 電子透かし情報の埋め込み方法および抽出方法 | |
US20030123660A1 (en) | Encoding information in a watermark | |
US20030174858A1 (en) | Method for embedding and extracting a spatial domain blind watermark using sample expansion | |
JP4837101B2 (ja) | 電子透かし埋め込み装置、電子透かし検出装置およびプログラム | |
JP3678084B2 (ja) | 電子透かし情報の抽出方法および電子透かし情報のビット値判定方法 | |
JP4167220B2 (ja) | 画像のエッジ透かし方法およびシステム | |
US20010032315A1 (en) | Embedding and detecting a watermark in an information signal | |
JP2001078010A (ja) | 電子透かし情報の抽出方法 | |
JP2005033818A (ja) | 電子透かし情報の抽出方法および電子透かし情報のビット値判定方法 | |
JP2001223880A (ja) | データ処理装置及び方法及び記憶媒体 | |
Shao et al. | A shape-preserving method for watermarking 2D vector maps based on statistic detection | |
Hsieh et al. | Geometric invariant semi-fragile image watermarking using real symmetric matrix | |
JP3630026B2 (ja) | 電子透かし情報の判定方法 | |
Innovations | ‘Hop Horse’Image Authentication Scheme | |
JP2004356802A (ja) | データ処理方法及びデータ処理装置 | |
Schlauweg et al. | Self-synchronizing robust texel watermarking in Gaussian scale-space | |
JP2005020775A (ja) | 電子透かし情報の判定方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20060421 |