JP3774631B2 - Information embedding device, information restoring device and method, computer program, and storage medium - Google Patents
Information embedding device, information restoring device and method, computer program, and storage medium Download PDFInfo
- Publication number
- JP3774631B2 JP3774631B2 JP2001040787A JP2001040787A JP3774631B2 JP 3774631 B2 JP3774631 B2 JP 3774631B2 JP 2001040787 A JP2001040787 A JP 2001040787A JP 2001040787 A JP2001040787 A JP 2001040787A JP 3774631 B2 JP3774631 B2 JP 3774631B2
- Authority
- JP
- Japan
- Prior art keywords
- information
- embedding
- embedded
- digital data
- digital watermark
- 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.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims description 49
- 238000003860 storage Methods 0.000 title claims description 9
- 238000004590 computer program Methods 0.000 title claims description 5
- 238000012937 correction Methods 0.000 claims description 26
- 238000000605 extraction Methods 0.000 claims description 17
- 238000001514 detection method Methods 0.000 claims description 10
- 230000010365 information processing Effects 0.000 claims description 2
- 238000012545 processing Methods 0.000 description 29
- 238000010586 diagram Methods 0.000 description 15
- 238000012360 testing method Methods 0.000 description 8
- 230000002441 reversible effect Effects 0.000 description 5
- 239000000284 extract Substances 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000032683 aging Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000005266 casting Methods 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000006837 decompression Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Images
Landscapes
- Image Processing (AREA)
- Television Systems (AREA)
- Editing Of Facsimile Originals (AREA)
Description
【0001】
【発明の属する技術分野】
本発明は、ディジタルデータに電子透かしとして情報を埋め込み、及び、埋め込まれた情報を抽出し、オリジナルデータを復元する技術に関するものである。
【0002】
【従来の技術】
近年、コンピュータとそのネットワークの急速な発達及び普及により、文字データ、画像データ、音声データなど、多種の情報がディジタル化されている。ディジタル情報は、経年変化などによる劣化がなく、いつまでも完全な状態で保存できる一方、容易に複製が可能であり、著作権の保護が大きな問題となっている。そのため著作権保護のためのセキュリティ技術は急速に重要性を増している。
【0003】
著作権を保護する技術の一つに“電子透かし”がある。電子透かしとは、ディジタルの画像データや音声データ、文字データなどに人に知覚出来ない形で著作権保有者の名前や購入者のIDなどを埋めこみ、違法コピーによる無断の使用を追跡する技術である。電子透かしには種々の攻撃が施される可能性があるため、攻撃に対する耐性が必要である。
【0004】
更に、本来は著作権保護などのセキュリティの目的で用いられていた電子透かし技術は、主情報と副情報を不可分な状態で結合することにも応用されている。単に二つの情報を結合する場合、主情報と副情報は分離されてしまう可能性がある。更に結合後の情報量は主情報の情報量と副情報の情報量の和であることが多い。一方で、電子透かしを用いて二つの情報を結合した場合、主情報と副情報が分離される恐れはなく、更に結合後の情報量は主情報に等しい。
【0005】
しかしながら、電子透かしとして主情報に埋め込んだ副情報は一度埋め込むと抽出は可能であるが、取り除くことは困難であった。これは、副情報を埋め込む前の主情報を必要とする場合には問題である。
【0006】
この問題を解決するために、電子透かしが埋め込まれた情報を電子透かしが埋め込まれる前の情報に完全に復元する技術が提案されている。以降では、この技術を可逆電子透かしと呼ぶ。
【0007】
可逆電子透かしについて簡単に説明する。可逆電子透かしは通常の電子透かしと同様の方法で埋め込む。例えば、以下の式に基づいて処理される。
【0008】
I'j,i=Ij,i+cj×ai×xi (式1)
ここで、jは領域及び付加情報Infのビット位置を示す正数、iは画素位置を示す正数、I'j,iは電子透かしが埋め込まれた画像、Ii,jは原画像、cjはInfjがビット1の時は+1、Infjがビット0の時は−1となる定数、aiは重み係数、xiは−1から+1の範囲の擬似乱数列である。xiは電子透かしを埋め込むためのキャリア信号と呼ぶ。
【0009】
なお、擬似乱数列xiであるが、これは電子透かしを埋め込む側の装置、及び埋め込まれた電子透かしを抽出し、原画像を復元する側の装置の間で使用する乱数パターンを取り決めておく。最も単純な手法は、電子透かしを埋め込む側及び抽出し再現する側の装置で同一の乱数発生アルゴリズムを使用し、且つ、乱数を発生する際の初期値を同じにすることである。
【0010】
そして復元の際には、埋め込まれている電子透かしを先ず抽出する。そして抽出された電子透かしを用いて、以下の式によって原画像が復元される。
【0011】
I''j,i=I'j,i−cj×ai×xi (式2)
ここで、I''i,jは復元後の画像データ、I'i,jは画像復元装置に入力された画像データ、cjは電子透かし抽出部で抽出された付加情報Infにおいてビットが1の時は+1、ビットが0の時は−1となる定数、ai、xiは式1と同じである。
【0012】
式1に示した電子透かしの埋め込み、及び式2に示した原画像の復元について具体的に説明する。
【0013】
図7は式1に示した電子透かしの埋め込みについて具体例を示したものである。それぞれの行列は画像の一部を表している。また、ビット情報としてビット1、即ちcj=+1の場合を表している。
【0014】
復元する側では、電子透かしを先ず抽出することになるが、この抽出アルゴリズムを簡単に説明すると、入力した画像I’の4×4画素ブロックの各画素の値と、擬似乱数列xi(先に説明したように、埋め込む側と同じ乱数列を発生するものとしている)との相関関係を調べる。もし、入力した画像I'と擬似乱数列xiとの相関関係が高い(予め設定された閾値よりも大きい)であれば埋め込まれたビットは1であると判断する。また、入力した画像I'と−xi(擬似乱数の各要素の符号を反転した結果)との相関関係が高い場合には0が埋めこまれている判断する。そしていずれとの相関関係も低い場合には電子透かし情報が埋め込まれていないと判断する。なお、図示の場合4×4画素ブロックについて説明したが、図示のように1ビットを1つのブロックにのみ埋め込むと高い確からしさが期待できないので、これを複数ブロック(例えばn画素ブロック)に対して行い、全体の確からしさを高めることが考えられる。そしてmビットを埋め込む場合には、n画素ブロックに1ビットを埋め込むことをm回行えば良いことになる。
【0015】
こうして、電子透かしの抽出が行われると、その透かし情報を除去する処理を行う。
【0016】
図8は図7に示した例で埋め込まれた電子透かしを除去する具体例を示したものである。ここでは、埋め込まれたビット情報が1である場合を示す。図7及び図8に示したように、通常は埋め込んだ電子透かしを完全に除去して原画像を復元することが可能である。
【0017】
一方、図9も式1に示した電子透かしの埋め込みについて具体例を示したものである。図9に示した例では、電子透かしを埋め込んだ画像データにオーバーフローが生じている(電子透かし埋め込み後の画素値が262及び261の画素)。この場合、通常図9に示したような丸め処理が行われる。丸め処理が行われた画像からも正しく電子透かしが抽出可能であるが、図10に示したように丸め処理が行われた個所については原画像を完全に復元することができない。
【0018】
【発明が解決しようとする課題】
基本的には前述した方式により、電子透かしが埋め込まれているディジタルデータから電子透かしが埋め込まれる前のディジタルデータを復元することが可能であるが、電子透かしの埋め込みによりオーバーフローが生じる場合には、上記の如く電子透かしが埋め込まれる前のディジタルデータを完全に復元することはできない。ここでオーバーフローとは、例えば、Ii,jが0から255までの整数(8ビット)によって表現されている場合に、式1の処理の後I'i,jがこの範囲外の値となる現象であり、0より小さなの値の場合は0に、255より大きな値の場合は255に丸められることが多い。この丸め処理が生じた場合には、電子透かし除去により電子透かしを完全に除去することができないのである。
【0019】
この原因のため、従来はオーバーフローが生じる個所では原画像を完全に復元することは困難であった。
【0020】
本発明は上記従来例に鑑みて成されたものであり、オリジナルのデジタルデータを完全に再現することを可能にする情報埋め込み装置及び情報復元装置及び方法及びコンピュータプログラム及び記憶媒体を提供しようとするものである。
【0021】
【課題を解決するための手段】
上記目的を達成するため、本発明の情報埋め込み装置は以下の構成を備える。すなわち、
ディジタルデータを構成する各要素に値を加減算し、かつ、前記ディジタルデータを構成する複数要素を用いて1ビットの情報を埋め込むことで、付加情報を埋め込む情報埋め込み装置であって、
前記加減算した場合に、要素の取り得る範囲を越える値を持つ要素の位置を検出する検出手段と、
前記付加情報と前記検出手段で検出された要素の取り得る範囲を越える値を持つ要素の位置の情報とを実埋め込み情報として生成する生成手段と、
前記ディジタルデータに埋め込む際、前記加減算によって前記要素が取り得る範囲を越える要素位置については埋め込み対象外とし、要素の取り得る範囲内にある要素位置について前記生成手段で生成された実埋め込み情報を電子透かしとして埋め込む埋め込み手段とを備える。
【0022】
また、上記埋め込み装置によって埋め込まれたデジタルデータを復元する側の装置は以下の構成を備える。すなわち、
ディジタルデータを構成する各要素に値を加減算し、かつ、前記ディジタルデータを構成する複数要素を用いて1ビットの情報を埋め込むことで情報が埋め込まれており、かつ、加減算によって前記要素が取り得る範囲を越える要素については埋め込まれていないディジタルデータを入力し、オリジナルのディジタルデータを復元する情報復元装置であって、
前記入力したディジタルデータに埋め込まれている情報を抽出する電子透かし抽出手段と、
前記抽出された情報のうち、前記埋め込み対象外となっている要素の位置の情報に基づいて、埋め込み対象の要素について前記埋め込まれている情報を除去し、オリジナルのディジタルデータを復元する電子透かし除去手段とを備える。
【0023】
【発明の実施の形態】
以下、添付図面に従って本発明に係る実施形態を詳細に説明する。
【0024】
[電子透かし埋め込み]
先ず本実施形態における電子透かし埋め込み装置について説明する。実施形態における電子透かし埋め込み装置は、電子透かし埋め込み前の画像データにまで完全に復活することができるように、付加情報を埋め込む。
【0025】
図2は電子透かし埋め込み装置の内部構成を示した図である。同図を用いて、電子透かし埋め込み装置の処理の流れを説明する。
【0026】
電子透かし埋め込み装置には画像Iが入力される。ここで説明を簡易にするために画像Iは1画素あたり8ビットの精度で表現されているグレイスケールの多値画像データであるとする。但し、本発明はこれに限定されることなく、所定のビット数を有するグレイスケールの多値画像データであっても良い。更に、複数の成分から構成されるカラー画像が入力された場合、その一つ、或いは複数の成分を選択して入力画像としても良い。入力された画像Iはオーバーフロー領域検出部201、及び電子透かし埋め込み部203に入力される。
【0027】
まず、オーバーフロー領域検出部201について説明する。オーバーフロー領域検出部201には、画像Iが入力され、前記入力された画像Iを構成する全画素について、後段の電子透かし埋め込み部203による電子透かし埋め込み処理の後にオーバーフローが生じるか否かが検出され、オーバーフローが生じる画素位置を全て抽出し、その画素群の座標情報をまとめて出力する。
【0028】
以降ではオーバーフローが生じる画素群(0個、1個、或いはそれ以上の場合もある)の位置の情報をオーバーフロー情報Rと呼ぶ。オーバーフロー情報Rは後段の符号化部202及び電子透かし埋め込み部203に出力される。オーバーフロー領域検出部の詳細な動作については後述する。
【0029】
次に符号化部202について説明する。符号化部202には、オーバーフロー情報R及び付加情報Infが入力され、オーバーフロー情報R及び付加情報Infは一つの符号列として結合され、結合された符号列wが出力される。例えば、wは図4に示すような構成となる。尚、wは後段の電子透かし透かし埋め込み部203において画像Iの中に電子透かしとして埋め込まれる符号列となる。このため、効率的な電子透かしの埋め込みを実行するために、wは圧縮符号化されても良い。更に、付加情報Infが秘密の情報である場合には、wは暗号化されても良い。更に、付加情報Infが電子透かしとして埋め込まれた後に、種々の攻撃によって異なる情報に改変された場合にも付加情報Infを正しく抽出可能とするために、wは誤り訂正符号化されていても良い。いずれにしても、オーバーフロー情報Rで示される画素位置は埋め込み対象外とし、原画像の画素値をそのまま使用する。
【0030】
次に電子透かし埋め込み部203について説明する。電子透かし埋め込み部203には、画像I、オーバーフロー情報R、及び符号列wが入力され、画像Iの中に符号列wが電子透かしとして埋め込まれ、電子透かしが埋め込まれた画像I'が出力される。ここで、オーバーフロー情報Rに示される画素は電子透かしの埋め込みを行わない。よって、電子透かし埋め込み部203においては電子透かしの埋め込みよってオーバーフローは生じない。電子透かし埋め込み部203の詳細な動作については後述する。
【0031】
以上説明したように、画像Iに付加情報Infが電子透かしとして埋め込まれ、電子透かしが埋め込まれた画像I'が生成される。
【0032】
[画像復元装置]
次に、本実施形態における画像復元装置について図3を用いて説明する。画像復元装置では、電子透かしが埋め込まれた画像を、電子透かしが埋め込まれる前の画像データに完全に復元する処理が行われる。
【0033】
画像復元装置には、前述した方式で電子透かしが埋め込まれた画像I'が入力される。入力された画像I'は後段の電子透かし抽出部301、及び電子透かし除去部303に入力される。
【0034】
まず、電子透かし抽出部301について説明する。電子透かし抽出部301には、電子透かしが埋め込まれた画像I'が入力され、埋め込まれている符号列wが抽出され、抽出された符号列wが出力される。電子透かし抽出部301では入力された画像I'の中で対象となる画素全部を用いて電子透かしが抽出される。すなわち、前述した電子透かし埋め込み部203において電子透かしの埋め込みの対象外であったオーバーフロー情報R(オーバーフロー情報Rに記されている位置には電子透かしは埋め込まれていない。)を含めて電子透かしの抽出処理の対象とする。電子透かし抽出部301の詳細な動作については後述する。抽出された符号列wは後段の復号部302に出力される。
【0035】
次に復号部302について説明する。復号部302には、前段で抽出された符号列wが入力され、符号列wを構成するオーバーフロー情報R及び付加情報Infに分割され、分割されたオーバーフロー情報R及び付加情報Infが出力される。ここで、前述した符号部202においてwが圧縮符号化されている場合には、伸張復号処理が実行される。更に前述した符号化部202においてwが暗号化されている場合には、暗号を解く解読復号処理が実行される。更に、前述した符号化部202においてwが誤り訂正符号化されている場合には、誤りが存在する場合に誤りを訂正する誤り訂正復号が実行される。オーバーフロー情報R及び付加情報Infは後段の電子透かし除去部303に出力される。
【0036】
次に電子透かし除去部303について説明する。電子透かし除去部303には、電子透かしが埋め込まれた画像I'、オーバーフロー情報R、及び付加情報Infが入力され、付加情報Infを用いて電子透かしが埋め込まれた画像I'から電子透かしが埋め込まれる前の画像が復元され、復元された画像Iが出力される。ここで、オーバーフロー情報Rに示される画素は復元処理の対象としない。何故なら、オーバーフロー情報Rに示される画素は、前述した電子透かし埋め込み部203において電子透かしが埋め込まれていないからである。電子透かし除去部303の詳細な動作については後述する。
【0037】
以上説明したように、電子透かしが埋め込まれた画像I'から電子透かしが埋め込まれる前の画像Iが復元される。
【0038】
[電子透かし埋め込み処理の詳細]
ここで、電子透かし埋め込み処理の詳細について、更に具体例をあげて説明する。
【0039】
画像Iの中にnビットの情報Infを埋め込む場合を考える(なお、上記実施形態で対応つけると情報wを埋め込む場合となる)。この場合、画像Iをn個の互いに重ならない領域Ij(j=1,2,…n)に分割する。そして、電子透かし埋め込み処理として、
I'j,i=Ij,i+cj×ai×xi (式3)
が実行される。ここで、jは領域を特定すると共に付加情報Infのビット位置を特定する正数、iは画素位置を示す正数、I'j,iは電子透かしが埋め込まれた画像、cjはInfjがビット1の時は+1、Infjがビット0の時は−1となる定数、aiは重み係数、xiは−1から+1の範囲の擬似乱数列である。xiは電子透かしを埋め込むためのキャリア信号と呼ぶ。
【0040】
ここで、重み係数の取り得る最大値(正の値)をamax、xiの取り得る最大値(正の値)をxmaxとすると、上記式3に示した演算は、
amax×xmax≦I≦255−amax×xmax (式4)
に示す条件を満たす時にだけ実行される。
【0041】
但し、埋め込み側の装置及びそれを抽出する側の装置の双方で、ai、xiの各要素の値は同期が取れ、互いに既知であるので、上記式4をさらに発展させ、
ai×xi≦I≦255−ai×xi (式4’)
としても構わない。
【0042】
もし、式4(或いは式4’)に示す条件を満たさないときには、画素位置iがオーバーフロー情報Rとして記録される。一般的な自然画像においては式4に示す条件を満たさない画素(埋め込み対象外となる画素)の数は画像全体の総画素数に比べて非常に小さい。これはオーバーフロー情報Rが比較的小さな情報量であることを示している。よって後段の符号化部202においてオーバーフロー情報Rが符号列wとして結合された後、電子透かし埋め込み部203において電子透かしとして埋め込んだとしても問題のない情報量である。以上のように式4(或いは式4’)に示す条件の元で式1により電子透かしを埋め込むことによりオーバーフローすることなく電子透かしの埋め込み処理を実行することが可能である。
【0043】
[画像復元処理の詳細]
次に、画像復元処理の詳細について具体例をあげて説明する。
【0044】
入力された画像I'の中には符号列wが電子透かしとして埋め込まれている。式3を用いて埋め込まれた電子透かしwを抽出するために、電子透かしを埋め込むためのキャリア信号xと電子透かし抽出部に入力された画像I'からPFAを計算し、その結果によって電子透かしが埋め込まれているか否か、且つ、埋め込まれている場合にはビットが0であるか或いは1であるかが決定される。
【0045】
ここで、PFAとは電子透かしが埋め込まれていないときに、電子透かしが埋め込まれていると判断する確率である。この確率を算出するために、過程検定と呼ばれる方式が用いられる。過程検定はこの当該分野の専門家によって公知の技術である。電子透かしの抽出に過程検定を用いた例として、例えば"A method for signature casting on digital images" by I.Pitas, I.C.I.I.P. Proceedings, pages 215 to 218, September 1996に詳しい。過程検定によって、ビット毎に検定値qjが算出される。前記検定値qjはディジタルデータに電子透かしが埋め込まれていない場合には平均が零、分散が1の標準正規分布に従うが、ディジタルデータに電子透かしが埋め込まれている場合には平均が非零、分散が1の正規分布に従う。電子透かしが埋め込まれているか否かは、算出された検定値qjが0からどれくらい離れているかによって決定される。
【0046】
更に、前記算出された検定値qjによって電子透かしとして埋め込まれている情報を算出することが可能である。式3を用いて埋め込まれている場合には、qjが正の時にはビットは1、一方でqjが負の時にはビットは0であると判断する。
【0047】
尚、電子透かしを抽出する原理は、先に従来技術で説明した内容を参照されたい。
【0048】
以上、説明した電子透かし抽出処理は前述した電子透かし埋め込み部203において式4(或いは式4’)に示した条件を満たさないために電子透かしが埋め込まれなかった画素を含めて実行される。式4(或いは式4’)に示した条件を満たさない画素の数は画像全体に示す画素の総数に比較して少ないために、この画素を含めて電子透かしを抽出しても正しく電子透かしを抽出することは可能である。
【0049】
以上の様に抽出された電子透かしは符号列wであり、これはオーバーフロー情報Rと付加情報Infから構成されているため、これらは各々に分割される。その後、電子透かし除去部においては、以下の処理が実行される。
【0050】
If i ⊂ R then I''=I'j,i
else I''=I'j,i−cj×ai×xi (式5)
ここで、I''i,jは復元後の画像データ、I'i,jは画像復元装置に入力された画像データ、cjは電子透かし抽出部で抽出された付加情報Infにおいてビットが1の時は+1、ビットが0の時は−1となる定数、ai、xiは式3と同一である。すなわち、iがオーバーフロー情報Rに含まれていない時には式3と逆の処理が実行され、iがオーバーフロー領域Rに含まれている時には処理は実行されない。
【0051】
以上の処理により符号列wが正しく抽出されている場合、復元された画像I''は原画像Iと等しくすることが可能になる。
【0052】
[具体的装置の説明]
以上であるが、実施形態における電子透かしを埋め込む装置及び埋め込まれた電子データを抽出すると共に原画像を復元する装置は、上記説明した処理を実行するプログラムで実現できることは当業者であれば容易に想到できよう。
【0053】
そこで、装置の具体的な構成を図1に示し、その後で、電子透かしの埋め込みにかかる処理(プログラム)と、復元処理(プログラム)を説明する。
【0054】
図1において、ホストコンピュータ101は例えば一般に普及しているパーソナルコンピュータである。
【0055】
ホストコンピュータ101の内部では、バス107により後述する各ブロックが接続され、種々のデータの受け渡しが可能である。
【0056】
図中、102はモニタ(表示装置)であり、103は、内部の各ブロックの動作を制御、或いは内部に記憶されたプログラムを実行することのできるCPUである。104は、BIOSやブートプログラムを記憶しているROMである。105は、CPU103にて処理するプログラムを格納したり、処理対象の画像データを格納するために使用されるRAMである。106はRAM105等に転送されるプログラム(OSやアプリケーション等)や画像データをあらかじめ格納したり、処理後の画像データを保存したりすることのできるハードディスク(HD)である。
【0057】
108は、外部記憶媒体の一つであるCD(CD-R)に記憶されたデータを読み込み或いは書き出すことのできるCDドライブである。109は、108と同様にFDからの読み込み、FDへの書き出しができるFDドライブである。110も、108と同様にDVDからの読み込み、DVDへの書き出しができるDVDドライブである。尚、CD,FD,DVD等に画像編集用のプログラム、或いはプリンタドライバが記憶されている場合には、これらプログラムをHD106上にインストールし、必要に応じてRAM105に転送されるようになっている。113は、キーボード111或いはマウス112からの入力指示を受け付けるためにこれらと接続されるインターフェイス(I/F)である。114はインターネット等のネットワークに接続する通信インタフェースである。
【0058】
電子透かしを組み込んだ画像の出力先は、HDやFDなどの記憶媒体でも構わないし、ネットワーク上のファイルサーバでも構わない。逆に電子透かしが埋め込まれた情報を入力するものとしても、同様である。
【0059】
さて、上記装置が電子透かし埋め込み側の装置として機能する場合には、図11に示す手順に従って処理することになる。なお、以下に説明する手順にかかるプログラムは、HD106にインストールされているものである。また、埋め込むべき情報Infはキーボード等から入力されているものとするが、予めHD106や、ROM104、RAM105等に格納されている情報を活用するようにしても構わない。
【0060】
まず、ステップS1101で、電子透かしが埋め込まれる画像データを入力する。入力元としては記憶媒体、ネットワークからのダウンロード、イメージスキャナ等その入力元は問われない。次いで、ステップS1102で、入力された画像データからオーバーフローする画素の位置を全て検出し、検出された情報をオーバーフロー情報RとしてRAM105に保存する。次に、事前に入力された付加情報Inf及び前記オーバーフロー情報Rを合成し、符号化(可逆符号化)することで、実際に埋め込む情報wを作成し、RAM105に一時的に保存する。
【0061】
次いで、入力された画像データを画素ごとに着目し、着目した画素位置が前記オーバーフロー情報Rに含まれているか否かが判定される。オーバーフロー情報Rに含まれない場合は、情報wより1ビット取り出し、そのビット状態に応じた電子透かし埋め込み処理を実行する。
【0062】
一方、オーバーフロー情報Rに含まれている画素である場合には、電子透かし埋め込み処理を実行しない。
【0063】
この処理が、全てのビット情報及び全ての画素について実行される(ステップS1106、1107)。全てのビット情報及び全ての画素ついて実行された後に、電子透かしが埋め込まれた画像データがRAM105或いはHD106に出力される(ステップS1108)。
【0064】
なお、全画素についての埋め込み前に、情報wの全ビットの埋め込みが完了した場合にはダミーの情報を埋め込むか、情報wを繰り返し埋め込むかを行ってもよい。
【0065】
以上の結果、埋め込み後の画像情報I'がRAM上に生成されることになる。この画像I’は最終的にファイルとしてHD等に格納されるが、その後の処理は、ネットワークを介して転送しても良いし、リムーバルメディアに記憶しても構わない。
【0066】
次に、電子透かしを抽出し、原画像を復元する処理について説明する。
【0067】
まず電子透かしが埋め込まれる画像データI’をRAM105に入力する(ステップS1201)。入力元は如何なるものであっても良いのは先に説明した通りである。この後、ステップS1202で、埋め込まれた画像I’から、電子透かし情報を抽出する。電子透かしの抽出原理は先に示した通りである。
【0068】
次いで、ステップS1203で抽出された情報を復号化して、情報w(=オーバーフロー情報R+埋め込み情報Inf)としてRAM105に格納し、抽出処理が完了する。なお、埋め込み情報Infを表示画面に表示したりしても構わない。
【0069】
ステップS1204で、画像データを画素ごとに着目し、着目した画素位置が前記オーバーフロー情報Rに含まれているか否かが判定される。
【0070】
オーバーフロー情報Rに含まれない場合は、ステップS1205で、電子透かし除去処理が実行される。
【0071】
一方、オーバーフローする画素が含まれる場合、その画素については電子透かし除去処理は実行されず、入力した画像データの画素値をそのまま用いる。
【0072】
この処理が、全ての画素について実行される(ステップS1206)。こうそて、全画素について実行された後に、電子透かしを除去することで、原画像を再現されることになる。この結果(原画像データ)は、RAM105やHD106などに出力され、場合によっては表示されることになる。
【0073】
<第2の実施形態>
上記実施形態(第1の実施形態)では、画像全体の画素数に対してオーバーフローの現象が生じる画素数が比較的少ない場合について説明した。即ち、オーバーフロー情報Rの情報量が比較的小さく、電子透かしとして埋め込むのに比較的望ましい情報量である場合について説明した。写真等の自然画像の場合である。
【0074】
一方で、画像データによってはオーバーフロー情報Rの情報量が大きくなる場合もある。例えば、電子透かしの埋め込みを輝度値に対して実行する場合、全体的に明るい画像や全体的に暗い画像の場合はオーバーフロー情報Rが大きくなる。
【0075】
オーバーフロー情報Rの情報量があまりに大きくなった場合には、オーバーフロー情報Rを含む符号列wの情報量も大きくなり、符号列wを電子透かしとして埋め込むことができない。よってオーバーフロー情報Rの情報量は可能な限り小さなほうが望ましい。ここでは、オーバーフロー情報Rを小さくする処理の一例を第2の実施形態として説明する。
【0076】
図5は本第2の実施形態における電子透かし埋め込み装置の内部構成を示した図である。図2に示した装置との違いは補正部501が加わった点、及び、符号化部503での処理である。その他の動作については図2と同じであるため説明は省略する。
【0077】
補正部501には画像データIが入力され、オーバーフロー情報Rの情報量を小さくするような補正処理が実行され、補正された画像データI'''とどのような補正が実行されたかを表す補正情報Cが出力される。
【0078】
補正処理とは、オーバーフロー情報Rの情報量を小さくする処理であり、例えば画像全体が明るいときにはすべての画素値を一定量(d)減ずる処理が実行される。この場合には補正情報Cとして「画像全体の画素値を一定量(d)減じた」という情報が出力される。
【0079】
更に、符号化部503においてはオーバーフロー情報Rと付加情報Infに加えて補正情報Cも符号化対象の情報となる。符号化後のwは、図13のように補正情報C、オーバーフロー情報R、及び付加情報Infを有する。
【0080】
以上の処理により電子透かしが埋め込まれる。次に本実施の形態における画像復元装置について説明する。
【0081】
図6は本第2の実施形態における画像復元装置の内部構成を示した図である。図3に示した装置との違いは逆補正部604が加わったことと復号部602での処理である。その他の動作については図6と図3は同じであるため説明は省略する。
【0082】
復号部602では前段の電子透かし抽出部601において抽出された符号列wが入力され、付加情報Inf、オーバーフロー情報R、及び補正情報Cに復号され、それぞれが出力される。
【0083】
次に逆補正部604には前段の電子透かし除去部で電子透かしが除去された画像データI'''、及び復号部602において復号された補正情報Cが入力され、前述した補正部Cで行われた処理と逆の処理が実行され、補正処理された画像データIが出力される。例えば、補正情報Cとして「画像全体の画素値を一定量(d)減じた」という情報が入力された場合には、補正部604では画像全体の画素値を一定量(d)加える処理が実行される。
【0084】
以上の処理によって、画像復元装置に入力された画像データI'は電子透かしが埋め込まれる前の画像データIに完全に復元することが可能である。
【0085】
なお、上記補正情報Cの決定方法であるが、一例を示せば次の通りである。
【0086】
被埋め込み画像の輝度分布を調べ、例えば高輝度の頻度が低輝度側より高ければ、低輝度側へシフトするように補正する。逆に、低輝度の頻度が高輝度側でのそれよりも高ければ低輝度側へシフトするように補正する。
【0087】
また、場合によっては次のようにしても構わない。説明を分かり易くするため、文章が印刷された紙をイメージスキャナ(1画素につき8ビットとする)で読み取り、その読み取った画像を画像Iとする場合について考察する。
【0088】
通常、文章が記述された原稿(2値画像)を読み取り、各画素を輝度値として表現した場合、画素分布は、図14に示す如く、最高輝度と最低輝度に集中し、それらの間には画素はほとんど存在しない。
【0089】
かかる状況では、全画素について一律的に或る値を加算或いは減算させると、高輝度或いは低輝度側でオーバーフローすることになるので、好ましくない。そこで、次のようにする。
【0090】
先ず、低輝度の取り得る範囲は図示の場合には、0〜aの輝度値に分布しているので、中間輝度の度数が“0”となっている範囲中の、式4(或いは式4’)を満足するところを探し出し、その輝度値に置き換える。例えば、輝度値50〜50+aが探しだせたら、輝度値0〜aの値を50乃至50+aの値に変換する(0を50、1を51…と変換する)。そして、高輝度の取り得る範囲についても同様に変換する。
【0091】
以上の結果、特に文章等の2値画像の場合には、補正情報Cとしては、輝度0〜aがどのような値に変換されたのか、及び輝度b〜255の値がどのような値に変換されたのかを示す情報を有するようにすれば、完全復元することが可能になる。なお、上記では画像を輝度成分で表現したが、これに限定されず、濃度等の他の成分で表現しても構わないのは勿論である。
【0092】
以上説明したように本第1、第2の実施形態によれば、オーバーフローする画素(デジタルデータの要素)については埋め込み対象外とし、オーバーフローしない画素について電子透かしで情報を埋め込むことで、オリジナルの画像データを完全復元することが可能となる。
【0093】
なお、本発明は、上記の通り、コンピュータにより実行させれるプログラムによって実現できるものである。従って、当然に本発明はコンピュータプログラムをも含むものである。また、プログラムをコンピュータに供給することで本発明が構成できるので、そのプログラムコードをコンピュータに供給する為の手段、具体的には上記プログラムコードを格納した記憶媒体も本発明の範疇に含まれる。
【0094】
この様なプログラムコードを格納する記憶媒体としては、例えばフロッピーディスク、ハードディスク、光ディスク、光磁気ディスク、CD-ROM、磁気テープ、不揮発性のメモリカード、ROM等を用いることができる。
【0095】
また、上記コンピュータが、供給されたプログラムコードのみに従って各種デバイスを制御することにより、上記実施の形態の機能が実現される場合だけではなく、上記プログラムコードがコンピュータ上で稼働しているOS(オペレーティングシステム)、あるいは他のアプリケーションソフト等と共同して上記実施の形態が実現される場合にもかかるプログラムコードは本発明の範疇に含まれる。
【0096】
更に、この供給されたプログラムコードが、コンピュータの機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに格納された後、そのプログラムコードの指示に基づいてその機能拡張ボードや機能格納ユニットに備わるCPU等が実際の処理の一部又は全部を行い、その処理によって上記実施の形態が実現される場合も本発明の範疇に含まれる。
【0097】
【発明の効果】
以上説明した様に本発明によれば、電子透かしを埋め込み、尚且つ、その被埋め込み対象であったオリジナルのデジタルデータを再現することも可能になる。
【図面の簡単な説明】
【図1】実施形態が適用する情報処理装置のブロック構成図である。
【図2】第1の実施の形態における電子透かし埋め込み装置のブロック図である。
【図3】第1の実施の形態における画像復元装置のブロック図である。
【図4】第1の実施の形態における符号列wの一例を示す図である。
【図5】第2の実施の形態における電子透かし埋め込み装置のブロック図である。
【図6】第2の実施の形態における画像復元装置のブロック図である。
【図7】電子透かしの埋め込みむ処理の内容を示す図である。
【図8】オリジナルデータを復元する処理の内容を示す図である。
【図9】電子透かしの埋め込む際にオーバーフローした例を示す図である。
【図10】オーバーフローした場合にオリジナルデータを復元できない例を示す図である。
【図11】実施形態における電子透かしの埋め込み手順を示すフローチャートである。
【図12】実施形態におけるオリジナルデータの復元手順を示すフローチャートである。
【図13】第2の実施の形態における符号列wの一例を示す図である。
【図14】第2の実施形態における補正処理を説明するための画素分布の一例を示す図である。[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a technique for embedding information as digital watermark in digital data, extracting the embedded information, and restoring original data.
[0002]
[Prior art]
In recent years, various information such as character data, image data, and voice data has been digitized due to the rapid development and spread of computers and their networks. Digital information is not deteriorated due to aging, etc., and can be stored in perfect condition forever, but can be easily copied, and copyright protection is a big problem. Therefore, security technology for copyright protection is rapidly gaining importance.
[0003]
One technique for protecting copyright is “digital watermarking”. Digital watermarking is a technology that tracks the unauthorized use of illegal copies by embedding the name of the copyright holder and the purchaser's ID in a form that cannot be perceived by humans in digital image data, audio data, or text data. is there. Since the digital watermark may be subjected to various attacks, resistance to the attack is necessary.
[0004]
Further, the digital watermark technique originally used for the purpose of security such as copyright protection is also applied to combining the main information and the sub information in an inseparable state. If the two pieces of information are simply combined, the main information and the sub information may be separated. Furthermore, the information amount after combining is often the sum of the information amount of the main information and the information amount of the sub information. On the other hand, when two pieces of information are combined using a digital watermark, main information and sub information are not likely to be separated, and the amount of information after combining is equal to the main information.
[0005]
However, sub-information embedded in main information as a digital watermark can be extracted once embedded, but it is difficult to remove. This is a problem when the main information before embedding the sub information is required.
[0006]
In order to solve this problem, a technique for completely restoring information embedded with a digital watermark to information before the digital watermark is embedded has been proposed. Hereinafter, this technique is referred to as reversible digital watermarking.
[0007]
The reversible digital watermark will be briefly described. The reversible digital watermark is embedded in the same way as a normal digital watermark. For example, the processing is performed based on the following expression.
[0008]
I 'j, i= Ij, i+ CjXaiXi (Formula 1)
Here, j is a positive number indicating the bit position of the region and the additional information Inf, i is a positive number indicating the pixel position, I ′j, iIs an image with embedded watermark, Ii, jIs the original image, cjIs Infj+1 when In is
[0009]
Pseudo random number sequence xiHowever, in this method, a random number pattern to be used is determined between a device that embeds a digital watermark and a device that extracts the embedded digital watermark and restores the original image. The simplest method is to use the same random number generation algorithm on the device that embeds the digital watermark and the device that extracts and reproduces the same, and to make the initial value when generating the random number the same.
[0010]
When restoring, the embedded digital watermark is first extracted. Then, using the extracted digital watermark, the original image is restored by the following formula.
[0011]
I ''j, i= I 'j, i-CjXaiXi (Formula 2)
Where I ''i, jIs the restored image data, I 'i, jIs the image data input to the image restoration device, cjIs a constant that is +1 when the bit is 1 and -1 when the bit is 0 in the additional information Inf extracted by the digital watermark extraction unit, ai, XiIs the same as in
[0012]
The digital watermark embedding shown in
[0013]
FIG. 7 shows a specific example of the digital watermark embedding shown in
[0014]
On the restoration side, the digital watermark is first extracted. This extraction algorithm will be briefly described. The value of each pixel of the 4 × 4 pixel block of the input image I ′ and the pseudo random number sequence xi(As described above, the correlation with the embedding side is assumed to generate the same random number sequence). If the input image I ′ and the pseudo random number sequence xiIs high (greater than a preset threshold value), it is determined that the embedded bit is 1. The input image I ′ and −xiWhen the correlation with (the result of inverting the sign of each element of the pseudo random number) is high, it is determined that 0 is embedded. If the correlation with any of them is low, it is determined that the digital watermark information is not embedded. In the illustrated case, the 4 × 4 pixel block has been described. However, if one bit is embedded only in one block as illustrated, high accuracy cannot be expected. It is possible to improve the overall certainty. In the case of embedding m bits, embedding 1 bit in an n pixel block may be performed m times.
[0015]
Thus, when the digital watermark is extracted, a process for removing the watermark information is performed.
[0016]
FIG. 8 shows a specific example of removing the digital watermark embedded in the example shown in FIG. Here, a case where the embedded bit information is 1 is shown. As shown in FIGS. 7 and 8, it is usually possible to completely remove the embedded digital watermark and restore the original image.
[0017]
On the other hand, FIG. 9 also shows a specific example of the digital watermark embedding shown in
[0018]
[Problems to be solved by the invention]
Basically, it is possible to restore the digital data before the digital watermark is embedded from the digital data in which the digital watermark is embedded by the above-described method. As described above, the digital data before the digital watermark is embedded cannot be completely restored. Here, overflow is, for example, Ii, jIs represented by an integer (8 bits) from 0 to 255, after processing of
[0019]
For this reason, it has been difficult to completely restore the original image at the location where overflow occurs.
[0020]
The present invention has been made in view of the above-described conventional example, and intends to provide an information embedding device, an information restoration device and method, a computer program, and a storage medium that can completely reproduce original digital data. Is.
[0021]
[Means for Solving the Problems]
In order to achieve the above object, an information embedding device of the present invention comprises the following arrangement. That is,
Add / subtract values to each element of digital dataAnd by embedding 1-bit information using a plurality of elements constituting the digital data,An information embedding device for embedding additional information,
An element with a value that exceeds the possible range of the element when the addition or subtraction is performedPosition ofDetecting means for detecting
Detected by the additional information and the detection meansInformation on the position of an element whose value exceeds the possible range of the element, andGenerating means for generating as embedded information,
When embedding in the digital data, an element exceeding the range that the element can take by the addition / subtractionpositionIs excluded from embedding, and is within the range of elementspositionAnd embedding means for embedding the real embedding information generated by the generating means as a digital watermark.
[0022]
The apparatus on the side of restoring the digital data embedded by the embedding apparatus has the following configuration. That is,
Add / subtract values to each element of digital dataAnd embedding 1-bit information using a plurality of elements constituting the digital data.An information restoration apparatus for inputting digital data not embedded for an element in which information is embedded and exceeding the range that the element can take by addition and subtraction, and restoring the original digital data,
Digital watermark extraction means for extracting information embedded in the input digital data;
Of the extracted information, theThe position of the element that is not to be embeddedA digital watermark removing unit that removes the embedded information for the element to be embedded based on the information and restores the original digital data;
[0023]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, embodiments according to the present invention will be described in detail with reference to the accompanying drawings.
[0024]
[Digital watermark embedding]
First, a digital watermark embedding apparatus according to this embodiment will be described. The digital watermark embedding device in the embodiment embeds additional information so that it can be completely restored to the image data before embedding the digital watermark.
[0025]
FIG. 2 is a diagram showing an internal configuration of the digital watermark embedding apparatus. The process flow of the digital watermark embedding apparatus will be described with reference to FIG.
[0026]
An image I is input to the digital watermark embedding apparatus. In order to simplify the description here, it is assumed that the image I is grayscale multivalued image data expressed with an accuracy of 8 bits per pixel. However, the present invention is not limited to this, and may be grayscale multivalued image data having a predetermined number of bits. Furthermore, when a color image composed of a plurality of components is input, one or a plurality of components may be selected as an input image. The input image I is input to the overflow
[0027]
First, the overflow
[0028]
Hereinafter, the information on the position of the pixel group (which may be 0, 1 or more) where overflow occurs is referred to as overflow information R. The overflow information R is output to the
[0029]
Next, the
[0030]
Next, the digital
[0031]
As described above, the additional information Inf is embedded in the image I as a digital watermark, and an image I ′ in which the digital watermark is embedded is generated.
[0032]
[Image restoration device]
Next, the image restoration apparatus in the present embodiment will be described with reference to FIG. In the image restoration apparatus, a process for completely restoring an image in which a digital watermark is embedded into image data before the digital watermark is embedded is performed.
[0033]
The image restoration apparatus receives an image I ′ embedded with a digital watermark by the above-described method. The input image I ′ is input to the subsequent digital
[0034]
First, the digital
[0035]
Next, the
[0036]
Next, the digital
[0037]
As described above, the image I before the digital watermark is embedded is restored from the image I ′ embedded with the digital watermark.
[0038]
[Details of digital watermark embedding process]
Here, details of the digital watermark embedding process will be described with a specific example.
[0039]
Consider a case where n-bit information Inf is embedded in image I (note that information w is embedded when associated in the above embodiment). In this case, the image I is divided into n non-overlapping regions I.jDivide into (j = 1, 2,... n). And as a digital watermark embedding process,
I 'j, i= Ij, i+ CjXaiXi (Formula 3)
Is executed. Here, j is a positive number that specifies the region and the bit position of the additional information Inf, i is a positive number that indicates the pixel position, and I ′j, iIs an image with an embedded watermark, cjIs InfjIs a constant that is +1 when
[0040]
Here, the maximum value (positive value) that the weighting factor can take is amax, XiThe maximum value (positive value) that can be taken by xmaxThen, the calculation shown in Equation 3 is
amaxXmax≦ I ≦ 255-amaxXmax (Formula 4)
It is executed only when the conditions shown in
[0041]
However, in both the device on the embedding side and the device on the extracting side, ai, XiSince the values of the elements of are synchronized and known to each other, the above equation 4 is further developed,
aiXi≦ I ≦ 255-aiXi (Formula 4 ')
It doesn't matter.
[0042]
If the condition shown in Expression 4 (or Expression 4 ') is not satisfied, the pixel position i is recorded as overflow information R. In a general natural image, the number of pixels that do not satisfy the condition shown in Expression 4 (pixels that are not to be embedded) is much smaller than the total number of pixels in the entire image. This indicates that the overflow information R is a relatively small amount of information. Therefore, there is no problem even if the overflow information R is combined as a code string w in the
[0043]
[Details of image restoration processing]
Next, details of the image restoration processing will be described with a specific example.
[0044]
A code string w is embedded as a digital watermark in the input image I ′. In order to extract the digital watermark w embedded using Equation 3, the PFA is calculated from the carrier signal x for embedding the digital watermark and the image I ′ input to the digital watermark extraction unit. It is determined whether or not the bit is embedded and, if embedded, whether the bit is 0 or 1.
[0045]
Here, PFA is the probability of determining that a digital watermark is embedded when the digital watermark is not embedded. In order to calculate this probability, a method called process test is used. Process testing is a technique known by experts in this field. For example, “A method for signature casting on digital images” by I.Pitas, I.C.I.I.P. Proceedings, pages 215 to 218, September 1996 is detailed as an example of using a process test for extracting a digital watermark. Test value q for each bit by process testjIs calculated. The test value qjFollows a standard normal distribution with a mean of zero and variance of 1 when digital watermark is not embedded in digital data, but with a non-zero mean and variance of 1 when digital watermark is embedded in digital data. Follow a normal distribution. Whether the digital watermark is embedded or not is determined by the calculated test value qjIs determined by how far is 0.
[0046]
Further, the calculated test value qjIt is possible to calculate information embedded as a digital watermark. If embedded using Equation 3, qjIt is determined that the bit is 1 when is positive, while the bit is 0 when qj is negative.
[0047]
For the principle of extracting a digital watermark, refer to the contents described in the prior art.
[0048]
The digital watermark extraction process described above is executed including the pixels in which the digital watermark is not embedded because the above-described digital
[0049]
The digital watermark extracted as described above is a code string w, which is composed of overflow information R and additional information Inf, and is divided into each. Thereafter, the following processing is executed in the digital watermark removing unit.
[0050]
If i ⊂ R then I '' = I 'j, i
else I '' = I 'j, i-CjXaiXi (Formula 5)
Where I ''i, jIs the restored image data, I 'i, jIs the image data input to the image restoration device, cjIs a constant that is +1 when the bit is 1 and -1 when the bit is 0 in the additional information Inf extracted by the digital watermark extraction unit, ai, XiIs the same as in Equation 3. That is, when i is not included in the overflow information R, the process opposite to the expression 3 is executed, and when i is included in the overflow area R, the process is not executed.
[0051]
When the code string w is correctly extracted by the above processing, the restored image I ″ can be made equal to the original image I.
[0052]
[Description of specific equipment]
As described above, it is easy for those skilled in the art that the apparatus for embedding the digital watermark and the apparatus for extracting the embedded electronic data and restoring the original image in the embodiment can be realized by a program that executes the above-described processing. I can think of it.
[0053]
Therefore, a specific configuration of the apparatus is shown in FIG. 1, and thereafter, processing (program) for embedding a digital watermark and restoration processing (program) will be described.
[0054]
In FIG. 1, a
[0055]
Inside the
[0056]
In the figure,
[0057]
[0058]
The output destination of the image incorporating the digital watermark may be a storage medium such as HD or FD, or a file server on the network. On the contrary, the same applies to the case of inputting information embedded with a digital watermark.
[0059]
When the apparatus functions as a digital watermark embedding apparatus, processing is performed according to the procedure shown in FIG. Note that a program according to the procedure described below is installed in the
[0060]
First, in step S1101, image data in which a digital watermark is embedded is input. The input source is not limited to a storage medium, network download, image scanner, or the like. In step S1102, all overflow pixel positions are detected from the input image data, and the detected information is stored in the
[0061]
Next, the input image data is focused on for each pixel, and it is determined whether or not the focused pixel position is included in the overflow information R. If it is not included in the overflow information R, one bit is extracted from the information w, and a digital watermark embedding process corresponding to the bit state is executed.
[0062]
On the other hand, if the pixel is included in the overflow information R, the digital watermark embedding process is not executed.
[0063]
This process is executed for all bit information and all pixels (steps S1106 and 1107). After all bit information and all pixels are executed, the image data in which the digital watermark is embedded is output to the
[0064]
In addition, before embedding all pixels, when embedding of all bits of information w is completed, dummy information may be embedded or information w may be embedded repeatedly.
[0065]
As a result, the embedded image information I ′ is generated on the RAM. This image I ′ is finally stored as a file on the HD or the like, but the subsequent processing may be transferred via a network or stored in a removable medium.
[0066]
Next, processing for extracting a digital watermark and restoring an original image will be described.
[0067]
First, image data I ′ in which a digital watermark is embedded is input to the RAM 105 (step S1201). The input source may be any as described above. Thereafter, in step S1202, digital watermark information is extracted from the embedded image I '. The principle of digital watermark extraction is as described above.
[0068]
Next, the information extracted in step S1203 is decoded and stored in the
[0069]
In step S1204, the image data is focused on for each pixel, and it is determined whether or not the focused pixel position is included in the overflow information R.
[0070]
If it is not included in the overflow information R, digital watermark removal processing is executed in step S1205.
[0071]
On the other hand, when an overflowing pixel is included, the digital watermark removal process is not executed for the pixel, and the pixel value of the input image data is used as it is.
[0072]
This process is executed for all pixels (step S1206). Thus, after being executed for all pixels, the original image is reproduced by removing the digital watermark. This result (original image data) is output to the
[0073]
<Second Embodiment>
In the above embodiment (first embodiment), the case has been described where the number of pixels in which an overflow phenomenon occurs is relatively small with respect to the number of pixels of the entire image. That is, the case where the information amount of the overflow information R is relatively small and is a relatively desirable information amount for embedding as a digital watermark has been described. This is the case of natural images such as photographs.
[0074]
On the other hand, depending on the image data, the amount of overflow information R may be large. For example, when embedding a digital watermark on a luminance value, the overflow information R becomes large in the case of an overall bright image or an overall dark image.
[0075]
When the information amount of the overflow information R becomes too large, the information amount of the code string w including the overflow information R also increases, and the code string w cannot be embedded as a digital watermark. Therefore, the information amount of the overflow information R is desirably as small as possible. Here, an example of processing for reducing the overflow information R will be described as a second embodiment.
[0076]
FIG. 5 is a diagram showing an internal configuration of the digital watermark embedding apparatus according to the second embodiment. The difference from the apparatus shown in FIG. 2 is that the
[0077]
Image data I is input to the
[0078]
The correction processing is processing for reducing the information amount of the overflow information R. For example, when the entire image is bright, processing for reducing all pixel values by a fixed amount (d) is executed. In this case, as the correction information C, information “the pixel value of the entire image is reduced by a certain amount (d)” is output.
[0079]
Further, in the
[0080]
A digital watermark is embedded by the above processing. Next, the image restoration apparatus in this embodiment will be described.
[0081]
FIG. 6 is a diagram showing an internal configuration of the image restoration apparatus in the second embodiment. The difference from the apparatus shown in FIG. 3 is the addition of the
[0082]
The
[0083]
Next, the
[0084]
Through the above processing, the image data I ′ input to the image restoration apparatus can be completely restored to the image data I before the digital watermark is embedded.
[0085]
In addition, although it is the determination method of the said correction information C, if an example is shown, it will be as follows.
[0086]
The luminance distribution of the embedded image is examined. If the frequency of high luminance is higher than that on the low luminance side, for example, correction is performed so that the frequency shifts to the low luminance side. On the contrary, if the frequency of low luminance is higher than that on the high luminance side, correction is performed so that the low luminance side is shifted to the low luminance side.
[0087]
In some cases, the following may be used. In order to make the explanation easy to understand, consider a case where the paper on which the text is printed is read by an image scanner (8 bits per pixel) and the read image is an image I.
[0088]
Normally, when a document (binary image) in which text is described is read and each pixel is expressed as a luminance value, the pixel distribution is concentrated at the highest luminance and the lowest luminance as shown in FIG. There are almost no pixels.
[0089]
In such a situation, if a certain value is uniformly added or subtracted for all the pixels, it will overflow on the high luminance or low luminance side, which is not preferable. Therefore, the following is performed.
[0090]
First, in the case shown in the drawing, the range that can be taken by the low luminance is distributed in luminance values of 0 to a. Therefore, Expression 4 (or Expression 4) in the range in which the frequency of intermediate luminance is “0”. Search for places that satisfy ') and replace them with their brightness values. For example, if a luminance value of 50 to 50 + a can be found, the luminance value of 0 to a is converted to a value of 50 to 50 + a (0 is converted to 50, 1 is converted to 51...). The same conversion is performed for the range where high luminance can be obtained.
[0091]
As a result, particularly in the case of a binary image such as a sentence, as the correction information C, what value the luminance 0 to a has been converted to, and what value the luminance b to 255 has been converted to. If it has information indicating whether it has been converted, it can be completely restored. In the above description, the image is expressed by the luminance component. However, the present invention is not limited to this. Of course, the image may be expressed by other components such as density.
[0092]
As described above, according to the first and second embodiments, overflowing pixels (elements of digital data) are excluded from embedding, and information that is not overflowed is embedded with a digital watermark so that the original image Data can be completely restored.
[0093]
As described above, the present invention can be realized by a program executed by a computer. Accordingly, the present invention naturally includes a computer program. Since the present invention can be configured by supplying a program to a computer, means for supplying the program code to the computer, specifically, a storage medium storing the program code is also included in the scope of the present invention.
[0094]
As a storage medium for storing such a program code, for example, a floppy disk, a hard disk, an optical disk, a magneto-optical disk, a CD-ROM, a magnetic tape, a nonvolatile memory card, a ROM, or the like can be used.
[0095]
Further, the computer controls various devices according to only the supplied program code, so that not only the functions of the above embodiments are realized, but also the OS (operating system) on which the program code is running on the computer. Such program code is also included in the scope of the present invention when the above embodiment is realized in cooperation with a system) or other application software.
[0096]
Further, after the supplied program code is stored in the memory of the function expansion board of the computer or the function expansion unit connected to the computer, the program code is stored in the function expansion board or function storage unit based on the instruction of the program code. A case where the CPU or the like provided performs part or all of the actual processing and the above-described embodiment is realized by the processing is also included in the scope of the present invention.
[0097]
【The invention's effect】
As described above, according to the present invention, it is possible to embed a digital watermark and to reproduce the original digital data that was the object to be embedded.
[Brief description of the drawings]
FIG. 1 is a block diagram of an information processing apparatus to which an embodiment is applied.
FIG. 2 is a block diagram of a digital watermark embedding apparatus according to the first embodiment.
FIG. 3 is a block diagram of an image restoration apparatus according to the first embodiment.
FIG. 4 is a diagram illustrating an example of a code string w in the first embodiment.
FIG. 5 is a block diagram of a digital watermark embedding apparatus according to a second embodiment.
FIG. 6 is a block diagram of an image restoration apparatus according to a second embodiment.
FIG. 7 is a diagram illustrating details of processing for embedding a digital watermark.
FIG. 8 is a diagram showing the contents of processing for restoring original data.
FIG. 9 is a diagram illustrating an example of overflow when embedding a digital watermark.
FIG. 10 is a diagram illustrating an example in which original data cannot be restored when an overflow occurs.
FIG. 11 is a flowchart showing a digital watermark embedding procedure in the embodiment.
FIG. 12 is a flowchart illustrating a procedure for restoring original data according to the embodiment.
FIG. 13 is a diagram illustrating an example of a code string w according to the second embodiment.
FIG. 14 is a diagram illustrating an example of a pixel distribution for explaining a correction process in the second embodiment.
Claims (11)
前記加減算した場合に、要素の取り得る範囲を越える値を持つ要素の位置を検出する検出手段と、
前記付加情報と前記検出手段で検出された要素の取り得る範囲を越える値を持つ要素の位置の情報とを実埋め込み情報として生成する生成手段と、
前記ディジタルデータに埋め込む際、前記加減算によって前記要素が取り得る範囲を越える要素位置については埋め込み対象外とし、要素の取り得る範囲内にある要素位置について前記生成手段で生成された実埋め込み情報を電子透かしとして埋め込む埋め込み手段と
を備えることを特徴とする情報埋め込み装置。An information embedding device for embedding additional information by adding / subtracting values to / from each element constituting digital data and embedding 1-bit information using a plurality of elements constituting the digital data ,
Detecting means for detecting a position of an element having a value exceeding a possible range of the element when the addition or subtraction is performed;
Generating means for generating, as actual embedded information, the additional information and information on the position of an element having a value exceeding the possible range of the element detected by the detecting means;
When embedding in the digital data, element positions exceeding the range that the element can take by the addition / subtraction are excluded from embedding, and the actual embedding information generated by the generating means for the element position within the range that the element can take is electronic An information embedding device comprising: an embedding unit embedded as a watermark.
前記検出手段は前記加減算した場合に画素値の取り得る範囲を越える画素位置を検出することを特徴とする請求項1に記載の情報埋め込み装置。The digital data is image data,
The information embedding apparatus according to claim 1, wherein the detection unit detects a pixel position exceeding a possible range of pixel values when the addition and subtraction are performed.
前記生成手段は、該補正手段による補正内容を示す情報を付加して実埋め込み情報を生成することを特徴とする請求項1又は2に記載の情報埋め込み装置。The digital data further comprises correction means for correcting the digital data in order to reduce the number of elements having values exceeding the possible range of the elements when the addition and subtraction are performed.
The information embedding apparatus according to claim 1, wherein the generation unit generates actual embedding information by adding information indicating details of correction performed by the correction unit.
前記入力したディジタルデータに埋め込まれている情報を抽出する電子透かし抽出手段と、
前記抽出された情報のうち、前記埋め込み対象外となっている要素の位置の情報に基づいて、埋め込み対象の要素について前記埋め込まれている情報を除去し、オリジナルのディジタルデータを復元する電子透かし除去手段と
を備えることを特徴とする情報復元装置。Information is embedded by adding / subtracting a value to / from each element constituting digital data and embedding 1-bit information using a plurality of elements constituting the digital data , and the element can be taken by addition / subtraction An information restoration device that inputs unembedded digital data for elements that exceed the range and restores the original digital data,
Digital watermark extraction means for extracting information embedded in the input digital data;
Among the extracted information, digital watermark removal that removes the embedded information for the element to be embedded and restores the original digital data based on the position information of the element that is not to be embedded An information restoration apparatus comprising: means.
前記加減算した場合に、要素の取り得る範囲を越える値を持つ要素の位置を検出する検出工程と、
前記付加情報と前記検出工程で検出された要素の取り得る範囲を越える値を持つ要素の位置の情報とを実埋め込み情報として生成する生成工程と、
前記ディジタルデータに埋め込む際、前記加減算によって前記要素が取り得る範囲を越える要素位置については埋め込み対象外とし、要素の取り得る範囲内にある要素位置について前記生成工程で生成された実埋め込み情報を電子透かしとして埋め込む埋め込み工程と
を備えることを特徴とする情報処理装置の制御方法。An information embedding device for embedding additional information by adding / subtracting values to / from each element constituting digital data and embedding 1-bit information using a plurality of elements constituting the digital data ,
A detection step of detecting a position of an element having a value exceeding a possible range of the element when the addition or subtraction is performed;
A generation step of generating, as actual embedding information , information on the position of an element having a value that exceeds a range that can be taken by the element detected in the detection step;
When embedding in the digital data, element positions exceeding the range that the element can take by the addition and subtraction are excluded from embedding, and the actual embedding information generated in the generation step for the element positions within the range that the element can take is electronic An information processing apparatus control method comprising: an embedding step of embedding as a watermark.
前記入力したディジタルデータに埋め込まれている情報を抽出する電子透かし抽出工程と、
前記抽出された情報のうち、前記埋め込み対象外となっている要素の位置の情報に基づいて、埋め込み対象の要素について前記埋め込まれている情報を除去し、オリジナルのディジタルデータを復元する電子透かし除去工程と
を備えることを特徴とする情報復元装置の制御方法。Information is embedded by adding / subtracting a value to / from each element constituting digital data and embedding 1-bit information using a plurality of elements constituting the digital data , and the element can be taken by addition / subtraction An information restoration device that inputs unembedded digital data for elements that exceed the range and restores the original digital data,
A digital watermark extraction step of extracting information embedded in the input digital data;
Among the extracted information, digital watermark removal that removes the embedded information for the element to be embedded and restores the original digital data based on the position information of the element that is not to be embedded And a method for controlling the information restoration apparatus.
Priority Applications (8)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001040787A JP3774631B2 (en) | 2001-02-16 | 2001-02-16 | Information embedding device, information restoring device and method, computer program, and storage medium |
EP02250782A EP1231767B1 (en) | 2001-02-09 | 2002-02-06 | Information processing apparatus and its control method, computer program, and storage medium |
AT02250782T ATE505905T1 (en) | 2001-02-09 | 2002-02-06 | INFORMATION PROCESSING DEVICE AND ITS CONTROL METHODS, COMPUTER PROGRAM, AND STORAGE MEDIUM |
DE60239718T DE60239718D1 (en) | 2001-02-09 | 2002-02-06 | Information processing apparatus and its control method, computer program, and storage medium |
US10/067,740 US7146502B2 (en) | 2001-02-09 | 2002-02-08 | Information processing apparatus and its control method, computer program, and storage medium |
KR10-2002-0007286A KR100465950B1 (en) | 2001-02-09 | 2002-02-08 | Information processing apparatus and its control method, storage medium storing computer program |
CNB021054037A CN1305296C (en) | 2001-02-09 | 2002-02-09 | Information processing device and control method, computer program and storage medium |
US11/469,660 US7639835B2 (en) | 2001-02-09 | 2006-09-01 | Information processing apparatus and its control method, computer program and storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001040787A JP3774631B2 (en) | 2001-02-16 | 2001-02-16 | Information embedding device, information restoring device and method, computer program, and storage medium |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2002247338A JP2002247338A (en) | 2002-08-30 |
JP2002247338A5 JP2002247338A5 (en) | 2005-04-14 |
JP3774631B2 true JP3774631B2 (en) | 2006-05-17 |
Family
ID=18903327
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001040787A Expired - Fee Related JP3774631B2 (en) | 2001-02-09 | 2001-02-16 | Information embedding device, information restoring device and method, computer program, and storage medium |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3774631B2 (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101088098A (en) | 2003-12-05 | 2007-12-12 | 新泽西理工学院 | System and method for robust lossless data hiding and recovering from the integer wavelet representation |
JP5168731B2 (en) * | 2008-09-02 | 2013-03-27 | 富士ゼロックス株式会社 | Image processing apparatus, image processing system, and program |
-
2001
- 2001-02-16 JP JP2001040787A patent/JP3774631B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2002247338A (en) | 2002-08-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100465950B1 (en) | Information processing apparatus and its control method, storage medium storing computer program | |
JP3977216B2 (en) | Information processing apparatus and method, information processing program, and storage medium | |
US7873183B2 (en) | Embedding and detecting watermarks based on embedded positions in document layout | |
JP2002232685A (en) | Digital watermark processing device, information processor, digital contents delivery system, digital watermark insertion method, and storage medium | |
JP2008211784A (en) | Method for facilitating inserting information in video signal and method for facilitating protecting video signal | |
EP1501047A2 (en) | Fingerprinting segments of data content for version identification | |
JP2004274478A (en) | Image processing program creation method, image processing program creation program, and image processing program creation device | |
Ahuja et al. | A survey of digital watermarking scheme | |
JP2003536110A (en) | Watermark detector | |
JP3774631B2 (en) | Information embedding device, information restoring device and method, computer program, and storage medium | |
JPH1175055A (en) | Method for embedding information and method for extracting information and device for embedding information and device for extracting information and storage medium | |
CN102044054B (en) | Method and device for embedding digital watermark, and method and device for extracting digital watermark | |
JP3722646B2 (en) | Method for embedding watermark information in data and program recording medium | |
JP2003092676A (en) | Data processing method and apparatus, its program and storage medium | |
JP2001024876A (en) | Method and device for image processing and storage medium | |
JP4652167B2 (en) | Image processing apparatus, image processing method, and program | |
US7706569B2 (en) | Image processing device, image processing method thereof, computer program, and computer-readable storage medium | |
JP2000165652A (en) | Data output controller, data processor and storage medium read by computer | |
US7356159B2 (en) | Recording and reproduction apparatus, recording and reproduction method, recording and reproduction program for imperceptible information to be embedded in digital image data | |
JP3884997B2 (en) | Digital watermark embedding apparatus, digital watermark extraction apparatus and methods, computer program, and recording medium | |
CN117425051A (en) | Video watermark generation method, video infringement judgment method and device | |
CN119272246A (en) | A reversible natural language watermarking method for semantic preservation | |
Ragupathy et al. | Reversible Visible Watermarking Based Image Authentication | |
JP2000010478A (en) | Signature information embedment apparatus, signature information extraction apparatus, signature information embedment method and signature information extraction method | |
JP2004312568A (en) | Digital watermark information detection method based on format information |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040604 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20040604 |
|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7426 Effective date: 20040604 |
|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20040604 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20051101 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20051114 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060111 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20060210 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20060220 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100224 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100224 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110224 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120224 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130224 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140224 Year of fee payment: 8 |
|
LAPS | Cancellation because of no payment of annual fees |