JP3737702B2 - 電子透かしに関する透かし情報埋込装置及び透かし情報抽出装置 - Google Patents

電子透かしに関する透かし情報埋込装置及び透かし情報抽出装置 Download PDF

Info

Publication number
JP3737702B2
JP3737702B2 JP2001028425A JP2001028425A JP3737702B2 JP 3737702 B2 JP3737702 B2 JP 3737702B2 JP 2001028425 A JP2001028425 A JP 2001028425A JP 2001028425 A JP2001028425 A JP 2001028425A JP 3737702 B2 JP3737702 B2 JP 3737702B2
Authority
JP
Japan
Prior art keywords
dimensional
image
dimensional vector
angle range
watermark information
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
Application number
JP2001028425A
Other languages
English (en)
Other versions
JP2002232695A (ja
Inventor
政夫 平本
博松 青木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Corp
Panasonic Holdings Corp
Original Assignee
Panasonic Corp
Matsushita Electric Industrial Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Panasonic Corp, Matsushita Electric Industrial Co Ltd filed Critical Panasonic Corp
Priority to JP2001028425A priority Critical patent/JP3737702B2/ja
Publication of JP2002232695A publication Critical patent/JP2002232695A/ja
Application granted granted Critical
Publication of JP3737702B2 publication Critical patent/JP3737702B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Image Processing (AREA)
  • Television Systems (AREA)
  • Editing Of Facsimile Originals (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、いわゆる電子透かし技術に関し、特に、デジタル画像に他の情報を電子透かしとして埋め込む技術及びデジタル画像に埋め込まれた透かし情報を抽出する技術に関する。
【0002】
【従来の技術】
近年、コンピュータのハードウェア及びソフトウェアの著しい発展を背景とし、誰でも自ら作成したデジタル画像をインターネット等を介して全世界へと容易に発信することができるようになってきた。
デジタル画像は流通過程において容易に複製することができること等から画像に関する著作権保護技術の発展が望まれており、著作権保護技術の1つとして、わからないように画像に著作者名等を埋め込む電子透かし技術が注目されている。
【0003】
従来の電子透かし技術として主流なものには、デジタル画像を構成する各画素データの最下位ビット(LSB:Least Significant Bit)を変化させることにより別の情報を埋め込む方法や、デジタル画像信号を水平方向或いは垂直方向に周波数分解して画像信号の一部の周波数成分に別の情報を埋め込む方法等がある。
【0004】
【発明が解決しようとする課題】
これらの主流な方法には、電子透かしとして情報が埋め込まれた画像の流通過程で画像編集用ソフトウェア等が用いられてその画像に回転が加えられた場合に、回転したままの状態ではその画像から埋め込まれた情報を抽出できないという問題がある。
【0005】
画像編集用ソフトウェアがある程度普及している現在においては、画像に対して回転、拡大或いは縮小といった加工が施される場合も多々あり、このため、画像の回転、拡大及び縮小に耐える度合いの高い電子透かし技術の開発が求められる。
そこで、本発明は、画像に対する回転等に耐える度合いを高めた電子透かし技術を用いて、画像に情報を埋め込む透かし情報埋込装置を提供することと、画像に埋め込まれた情報を抽出する透かし情報抽出装置を提供することとを目的とする。
【0006】
【課題を解決するための手段】
上記課題を解決するために、本発明に係る透かし情報埋込装置は、xy2次元座標平面に配置された画素データの集合である2次元画像に、電子透かしとしてビットデータを埋め込む透かし情報埋込装置であって、前記2次元画像を取得する画像取得手段と、ビットデータを取得するビットデータ取得手段と、取得された前記2次元画像中の複数の位置それぞれに対応して、当該位置における画素データの値についてのx方向の空間的勾配をx成分としy方向の空間的勾配をy成分とする2次元ベクトルを作成する2次元ベクトル群作成手段と、作成された各2次元ベクトルを、xy2次元座標平面上での特定方向と当該2次元ベクトルの示す方向とのなす角度が複数の角度範囲区分のいずれに含まれるかによって当該複数の角度範囲区分のいずれかと対応付け、前記複数の角度範囲区分のうち対応する2次元ベクトルの数が閾値T(T>0)以上である角度範囲区分について、当該角度範囲区分に対応する2次元ベクトルで大きさが閾値S(S>0)以上のものの大きさ又は方向を前記ビットデータを表すために変更することにより、2次元ベクトル群にビットデータを埋め込む埋込手段と、前記埋込手段によりビットデータが埋め込まれた2次元ベクトル群に基づき、前記2次元ベクトル群作成手段が2次元画像から2次元ベクトル群を作成する際に用いた演算の逆演算を施すことにより、2次元画像を生成して出力する画像出力手段とを備えることを特徴とする。
【0007】
上記構成により、画像の空間的勾配から作成される2次元ベクトル群にビットデータ即ち透かし情報が埋め込まれ、画像が回転しても各2次元ベクトルの大きさは変化することなく、2次元ベクトル全体において各2次元ベクトル相互間の方向は変化しないものであるため、こうして埋め込まれた透かし情報は、画像が回転している場合であっても正しく抽出することができることになる。即ち、回転に強い電子透かしが実現できる。
【0008】
また、本発明に係る透かし情報抽出装置は、xy2次元座標平面に配置された画素データの集合であり電子透かしとしてビットデータが埋め込まれた2次元画像から当該ビットデータを抽出する透かし情報抽出装置であって、前記2次元画像を取得する画像取得手段と、取得された前記2次元画像中の複数の位置それぞれに対応して、当該位置における画素データの値についてのx方向の空間的勾配をx成分としy方向の空間的勾配をy成分とする2次元ベクトルを作成する2次元ベクトル群作成手段と、作成された各2次元ベクトルを、xy2次元座標平面上での特定方向と当該2次元ベクトルの示す方向とのなす角度が複数の角度範囲区分のいずれに含まれるかによって当該複数の角度範囲区分のいずれかと対応付け、前記複数の角度範囲区分のうち対応する2次元ベクトルの数が閾値T(T>0)以上である角度範囲区分について、当該角度範囲区分に対応する2次元ベクトルで大きさが閾値S(S>0)以上のものの大きさ又は方向に基づいてビットデータを抽出する抽出手段とを備えることを特徴とする。
【0009】
上記構成により、上述の透かし情報埋込装置によって画像の空間的勾配から作成される2次元ベクトル群にビットデータ即ち透かし情報が埋め込まれたところの画像から、適正に透かし情報を抽出することができる。
【0010】
【発明の実施の形態】
以下、本発明の実施の形態に係る透かし情報埋込装置について説明する。
<透かし情報埋込装置の構成>
図1は、本発明の実施の形態に係る透かし情報埋込装置100の機能ブロック図である。
【0011】
透かし情報埋込装置100は、デジタル画像に電子透かしとして情報を埋め込むための装置であり、ハードウェア的にはCPU、メモリ、ハードディスク、キーボード等を備えるコンピュータで構成され、機能的には同図に示すように画像取得部101、画像格納部102、ウェーブレット変換部103、2次元ベクトル作成部104、2次元ベクトル格納部105、埋込対象ベクトル特定部106、透かし情報取得部107、埋込部108、ウェーブレット逆変換部109及び画像出力部110を有する。
【0012】
ここで、画像取得部101は、デジタルカメラ、スキャナ等の画像入力機器や、CD−ROM、ハードディスク等の記録媒体、或いは外部ネットワークから、電子透かしとして情報を埋め込む対象となる画像を取得して画像格納部102に格納し、ウェーブレット変換部103にその画像の格納を通知する機能を有する。ここでは、画像取得部101により取得される画像は平面画像であり、その実体は各画素について輝度を表す数値データからなる配列データである。各画素を表す数値データのビット数や画素数は予め定められており、例えば、取得される画像は水平方向に256、垂直方向に256個の白黒256階調で表される画素データからなる。
【0013】
なお、本明細書中では「画像」の語により、画面に投影された画像自体のみならず画像の実体、即ち画像を表示するために用いられる画像データであって2次元平面上の位置とその位置における輝度等を表す数値データとが対応付けられたものをも表すこととする。更に画像データに対して2次元直交ウェーブレット変換が施された結果として得られるデータをも「画像」と表現することとする。
【0014】
画像格納部102は、画像を格納するためのメモリの一領域である。
ウェーブレット変換部103は、画像格納部102に格納された画像に対して、ハール基底(図2参照)で2次元直交ウェーブレット変換を予め定められた回数であるN回だけ施す機能を有する。なお、この2次元直交ウェーブレット変換については後に詳しく説明する。
【0015】
2次元ベクトル作成部104は、ウェーブレット変換部103により画像に2次元直交ウェーブレット変換が施された結果として得られた画像に基づいて、その画像の特徴を表す複数の2次元ベクトルデータを作成し2次元ベクトル格納部105に格納する機能を有する。なお、2次元ベクトルデータは空間的位置と2次元ベクトルとの組であり、この2次元ベクトルデータの作成については後に詳しく説明する。以下、2次元ベクトルデータについての大きさという表現で、2次元ベクトルデータにおける2次元ベクトルの大きさを表現する。
【0016】
2次元ベクトル格納部105は、画像の特徴を表す2次元ベクトルを格納するためのメモリの一領域である。
埋込対象ベクトル特定部106は、2次元ベクトル作成部104により2次元ベクトル格納部105に格納された複数の2次元ベクトルデータのうち、透かし情報の埋め込み対象となる複数の2次元ベクトルデータを特定する機能を有する。ここで、透かし情報とは電子透かしとして画像に埋め込まれる情報をいう。
【0017】
透かし情報取得部107は、ユーザにより入力され或いはハードディスクその他の記録媒体に既に記録されている透かし情報を取得して埋込部108に伝える機能を有する。
埋込部108は、2次元ベクトル格納部105に格納された複数の2次元ベクトルデータのうち透かし情報の埋め込み対象として特定された複数の2次元ベクトルデータの大きさを透かし情報に応じて特定の値に変更し、その2次元ベクトルデータに対する変更を、画像格納部102内の2次元直交ウェーブレット変換が施された結果の画像に反映すべく、その画像を変更する機能を有する。
【0018】
ウェーブレット逆変換部109は、埋込部108により変更された画像格納部102内の画像に対して、ウェーブレット変換部103により施される2次元直交ウェーブレット変換の逆変換(以下、「2次元直交ウェーブレット逆変換」という。)を施す機能を有する。なお、ウェーブレット逆変換部109により2次元直交ウェーブレット逆変換が施される回数は、ウェーブレット変換部103により2次元直交ウェーブレット変換が施される回数と同じN回である。
【0019】
また、画像出力部110は、ウェーブレット逆変換部109により2次元直交ウェーブレット逆変換が施された画像を出力する機能を有する。その出力先は、記録媒体或いは外部ネットワークである。
なお、画像取得部101、ウェーブレット変換部103、2次元ベクトル作成部104、埋込対象ベクトル特定部106、透かし情報取得部107、埋込部108、ウェーブレット逆変換部109及び画像出力部110は、メモリに格納された制御用プログラムがCPUにより実行されることによりその機能が実現されるものである。
<2次元直交ウェーブレット変換>
以下、ウェーブレット変換部103により画像に施される2次元直交ウェーブレット変換について説明する。
【0020】
図2は、ウェーブレット変換部103による2次元直交ウェーブレット変換に利用するハール(Haar)基底を示す図である。
ウェーブレット変換部103による2次元直交ウェーブレット変換は、同図に示すスケーリング関数とマザーウェーブレット関数とで表されるハール基底を利用した演算により行われる。
【0021】
図3は、ウェーブレット変換部103により2次元直交ウェーブレット変換が施される前の画像の様子を表した図であり、図4は、ウェーブレット変換部103により2次元直交ウェーブレット変換が1回施された後の画像の様子を表した図である。
図3及び図4は、2次元直交ウェーブレット変換の対象となる画像が2n×2n個の画素データからなるものとして示し、図中のA1,1、A1,2等は画素データの値である輝度値を示す。また、図4中の値は、実際には1/4を掛けたものであるが図4中では1/4という係数を省略して示している。
【0022】
2次元直交ウェーブレット変換によって、画像は、多重解像度近似(MRA:Multi Resolution Approximation)と呼ばれる低周波成分と、多重解像度表現(MRR:Multi Resolution Representation)と呼ばれる高周波成分に分解される。
以下、図3に示す画像を図4に示すものに分解する2次元直交ウェーブレット変換について、更に詳細に説明する。
【0023】
2n×2n個の画素データは水平、垂直方向とも0〜1の間で等間隔に割り付けられるとして、任意の1行、例えば図3のv行目の画素データはスケーリング関数φ(t)を利用すると以下のように表現できる。
[数2]fn(x)=ΣAv,uφ(2nx−u)
但し、0≦u≦(2n−1)の整数で総和をとる。
【0024】
数2をウェーブレット変換すると、以下に示すfn-1(x)とgn-1(x)に分かれる。
[数3]fn(x)=fn-1(x)+gn-1(x)
但し、fn-1(x)及びgn-1(x)は数4及び数5で、さらにその中の係数Cv,u及びDv,uは数6及び数7で表される。
[数4]fn-1(x)=ΣCv,uφ(2n-1x−u) [0≦u≦(2n-1−1)]
[数5]gn-1(x)=ΣDv,uψ(2n-1x−u) [0≦u≦(2n-1−1)]
[数6]Cv,u=(Av,u+Av,u+1)/2
[数7]Dv,u=(Av,u−Av,u+1)/2
上記のウェーブレット変換は行方向(垂直方向)についてであるが、列方向(水平方向)についても同様であり、u列目の中の水平座標xにおけるv行目で垂直座標yのデータはスケーリング関数φ(t)を利用すると以下のように表現できる。
[数8]fn(x,y)=fn(x)vφ(2ny−v)
但し、座標yはv行目座標の範囲内とする。
【0025】
これを、さらに一般化すると数9で表される。
[数9]fn(x,y)=Σfn(x)vφ(2ny−v)
但し、0≦v≦(2n−1)の整数で総和をとる。
数9をウェーブレット変換すると、上記同様以下に示すfn-1(x,y)とgn-1(x,y)に分かれる。
[数10]fn(x,y)=fn-1(x,y)+gn-1(x,y)
但し、fn-1(x,y)及びgn-1(x,y)は数11及び数12で、さらにその中の係数CCv,u及びDDv,uは数13及び数14で表される。
[数11]fn-1(x,y)=ΣCCv,uφ(2n-1y−v) [0≦v≦(2n-1−1)]
[数12]gn-1(x,y)=ΣDDv,uψ(2n-1y−v) [0≦v≦(2n-1−1)]
[数13]CCv,u=(fn(x)v+fn(x)v+1)/2
[数14]DDv,u=(fn(x)v−fn(x)v+1)/2
数13及び数14は、数3、数4及び数5により以下に示す数15〜数20のように記述できる。
【0026】
数15〜数20ではv行、u列が既知であれば総和する必要がないので、Σは不要である。
[数15]CCv,u=(fn-1(x)v+gn-1(x)v+fn-1(x)v+1+gn-1(x)v+1)/2
さらに数15は、以下のようにまとめられる。
[数16]CCv,u=(Cv,uφ(2n-1x−u)+Dv,uψ(2n-1x−u)+Cv +1,uφ(2n-1x−u)+Dv+1,uψ(2n-1x−u))/2
[数17]CCv,u={(Cv,u+Cv+1,u)φ(2n-1x−u)+(Dv,u+Dv+1,u)ψ(2n-1x−u)}/2
DDv,uについても同様である。
[数18]DDv,u=(fn-1(x)v+gn-1(x)v−fn-1(x)v+1−gn-1(x)v+1)/2
[数19]DDv,u=(Cv,uφ(2n-1x−u)+Dv,uψ(2n-1x−u)−Cv+1,uφ(2n-1x−u)−Dv+1,uψ(2n-1x−u))/2
[数20]DDv,u={(Cv,u−Cv+1,u)φ(2n-1x−u)+(Dv,u−Dv+1,u)ψ(2n-1x−u)}/2
結局、数10は、v行、u列が任意とすれば、数11、数12、数17、数20を利用することにより数21で表される。
[数21]fn(x,y)=ΣΣ{(Cv,u+Cv+1,u)φxφy+(Dv,u+Dv+1,u)ψxφy+(Cv,u−Cv+1,u)φxψy+(Dv,u−Dv+1,u)ψxψy}/2
但し、φxφy、ψxφy、φxψy、ψxψyは数22〜数25で表される。
[数22]φxφy=φ(2n-1x−u)φ(2n-1y−v)
[数23]ψxφy=ψ(2n-1x−u)φ(2n-1y−v)
[数24]φxψy=φ(2n-1x−u)ψ(2n-1y−v)
[数25]ψxψy=ψ(2n-1x−u)ψ(2n-1y−v)
さらに数21をまとめると数26となり、その中の係数k11〜k22は、数27〜数30で表される。
[数26]fn(x,y)=ΣΣ(k11φxφy+k12ψxφy+k21φxψy+k22ψxψy
[数27]k11=(Av,u+Av,u+1+Av+1,u+Av+1,u+1)/4
[数28]k12=(Av,u−Av,u+1+Av+1,u−Av+1,u+1)/4
[数29]k21=(Av,u+Av,u+1−Av+1,u−Av+1,u+1)/4
[数30]k22=(Av,u−Av,u+1−Av+1,u+Av+1,u+1)/4
数27に示すk11は4画素の画像データの大きさの平均値であり言わば画像信号に水平、垂直方向にローパスフィルタをかけることに相当し、数28に示すk12、数29に示すk21は、水平あるいは垂直方向の差分をとっているため、それぞれ画像データの大きさの水平方向、垂直方向の空間的勾配を意味し、数30に示すk22は4画素の画像データの大きさに関する歪みのようなものを表わしている。
【0027】
即ち、図4は、図3の4画素単位ごとに2次元直交ウェーブレット変換後のMRA成分と、水平方向のMRR成分(空間的勾配)と、垂直方向のMRR成分(空間的勾配)と、斜め方向のMRR成分とを求めたものを、それぞれの成分ごとにまとめて示したものである。
なお、ウェーブレット変換部103は画像に2次元直交ウェーブレット変換をN回施すのであり、Nが2以上である場合において即ち2元直交ウェーブレット変換を複数回施す場合においては、2回目以後は、前回の2次元直交ウェーブレット変換を施した結果のMRA成分を対象として2次元直交ウェーブレット変換を施す。
【0028】
例えば、Nが2であれば、元の画像に対して1回目の2次元直交ウェーブレット変換が施され、変換結果としてMRA成分である画像(画像a)と、水平方向のMRR成分である画像(画像b)と垂直方向のMRR成分である画像(画像c)と斜め方向のMRR成分である画像(画像d)とが得られ、そのMRA成分である画像aに対して2回目の2次元直交ウェーブレット変換が施され、変換結果としてMRA成分である画像(画像aa)と水平方向のMRR成分である画像(画像ab)と垂直方向のMRR成分である画像(画像ac)と斜め方向のMRR成分である画像(画像ad)とが得られる。。
【0029】
なお、こうして得られた画像群に対し、2次元直交ウェーブレット逆変換を2回施すと、元の画像が得られる。即ち、1回目の2次元直交ウェーブレット逆変換により画像aa、画像ab、画像ac及び画像adから画像aが得られ、こうして得られた画像aと、画像b、画像c及び画像dとに対して2回目の2次元直交ウェーブレット逆変換を施すことにより元の画像が得られる。
<透かし情報埋込装置の動作>
以下、透かし情報埋込装置100の動作について説明する。
【0030】
図5は、透かし情報埋込装置100の動作を示すフローチャートである。
以下、同図に示した動作を順を追って説明する。
まず、透かし情報埋込装置100の画像取得部101は、透かし情報を埋め込むべき画像を外部より取得して画像格納部102に格納する(ステップS501)。
【0031】
透かし情報を埋め込むべき画像が画像格納部102に格納されると、ウェーブレット変換部103は、その画像に対して2次元直交ウェーブレット変換をN回施す(ステップS502)。
ウェーブレット変換部103により画像にN回目の2次元直交ウェーブレット変換が施された後の水平方向及び垂直方向のMRR成分の画像に基づいて、2次元ベクトル作成部104は、2次元ベクトルデータを作成して2次元ベクトル格納部105に格納する(ステップS503)。
【0032】
ここで、2次元ベクトルデータの作成について詳しく説明する。
図6は、ある空間的位置P(x,y)についての水平方向のMRR成分と垂直方向のMRR成分とを示す概念図である。
2次元ベクトル作成部104は、N回目の2次元直交ウェーブレット変換が施された後の画像から、空間的位置毎に、その空間的位置P(x,y)についての水平方向のMRR成分(k12)と垂直方向のMRR成分(k21)とを構成成分とする2次元ベクトルV(k12,k21)を作成して、その作成した2次元ベクトルVと空間的位置Pとの組を2次元ベクトル格納部105に格納する。なお、2次元ベクトルデータとは、この空間的位置Pと2次元ベクトルVとの組のことをいう。従って、2次元ベクトル格納部105には、2次元ベクトルデータの集合が格納されることになる。
【0033】
例えば、図3に示した2n×2n個の画素データからなる画像に対して2次元直交ウェーブレット変換を施す回数Nが1であれば、図4に示すようにn×n個の位置についての、水平方向のMRR成分及び垂直方向のMRR成分を成分とするn×n個の2次元ベクトルVが作成されることになる。
図7は、「E」の字の形を表した画像の一部についての空間的勾配を示した図である。
【0034】
同図に示す画像401は「E」の字を背景に対して高輝度で表した画像である。また、拡大部分402において矢印で示すものが、ある閾値より成分の値が大きい2次元ベクトルVであり、2次元ベクトルVそれぞれを、対応する空間的位置P(x,y)に配置して示している。同図に示すように、文字「E」の輪郭上に、ある閾値より成分の値が大きい2次元ベクトルVが現れる。
【0035】
つまり2次元ベクトルVは、図7に示すように画像の空間的勾配を示すベクトルである。
2次元ベクトル作成部104により2次元ベクトルデータ群が2次元ベクトル格納部105に格納された後(ステップS503)、埋込対象ベクトル特定部106は、2次元ベクトルデータ群から2次元ベクトルの大きさが最大のものを抽出して、その2次元ベクトルの方向を基準方向と定め(ステップS504)、各2次元ベクトルデータについて、基準方向と2次元ベクトルの方向とのなす角度に着目して0以上10度未満、10度以上20度未満、20度以上30度未満、・・・、350度以上360度未満というように10度毎の36区分に分類する(ステップS505)。
【0036】
続いて埋込対象ベクトル特定部106は、ステップS505で分類した各区分のうち、その区分に属する2次元ベクトルデータであって大きさが閾値S以上のもの(以下、「埋込対象ベクトルデータ」という。)の数が閾値T以上存在する区分を、透かし情報の埋込対象となる埋込対象区分として特定する(ステップS506)。なお、基準方向を定めるために用いたものであり、大きさが最大の2次元ベクトルデータについては特別に扱い、埋込対象ベクトルデータに含めないものとする。
【0037】
埋込対象ベクトル特定部106が埋込対象区分を特定した後、透かし情報取得部107は透かし情報を取得する(ステップS507)。
透かし情報が取得された後、埋込部108はその透かし情報を埋込対象区分の埋込対象ベクトルデータに埋め込むことを内容とする埋込処理を行う(ステップS508)。
【0038】
ここで、図8を用いて埋込処理について説明する。
図8は、埋込部108の行う埋込処理を示すフローチャートである。
埋込部108は、値0を埋め込んだ結果となる2次元ベクトルデータの大きさR0と、値1を埋め込んだ結果となる2次元ベクトルデータの大きさR1とを定める(ステップS521、S522)。
【0039】
続いて埋込部108は、基準方向となす角度の小さい埋込対象区分から順に、埋込対象区分に対して透かし情報の先頭から1ビットずつを割り当て、各埋込対象区分中の全ての埋込対象ベクトルデータの大きさを割り当てたビットの値即ち0か1かに応じて変更する(ステップS523)。つまり、埋込部108は、埋込対象ベクトルデータの大きさをR0或いはR1に変更することにより、埋込対象ベクトルデータに透かし情報を埋め込む。
【0040】
例えば、透かし情報が文字「E」を表す1バイトのコード(0x45)であるものとし、この透かし情報を埋込対象区分の埋込対象ベクトルデータに埋め込む例を図9を用いて説明する。なお、閾値Sは20であるとし、値0に対応する大きさR0を20、値1に対応する大きさR1を25として説明する。
図9は、透かし情報を埋込対象区分の埋込対象ベクトルデータに埋め込んだ結果を例示する図である。
【0041】
同図は、埋込対象区分における埋込対象ベクトルデータのみについて、2次元ベクトルの大きさを縦軸に、基準方向となす角度を横軸に概略的に表したグラフである。従って、埋込対象ベクトルデータが閾値T以上存在しない区分に属する埋込対象ベクトルデータは同図には示していない。また、透かし情報が8ビットなので角度の小さい方から8つまでの埋込対象区分に属する埋込対象ベクトルデータのみについて同図に示している。なお、同図中、ベクトルの大きさを表す各線分の本数は正確なものではない。
【0042】
つまり、同図の例は、基準方向となす角度が、(1)0度以上10度未満の区分、(2)10度以上20度未満の区分、(3)30度以上40度未満の区分、(4)40度以上50度未満の区分、(5)50度以上60度未満の区分、(6)70度以上80度未満の区分、(7)80度以上90度未満の区分、(8)100度以上110度未満の区分においては、大きさが閾値S以上の2次元ベクトルデータが閾値T以上存在し、逆に20度以上30度未満の区分と60度以上70度未満の区分と90度以上100度未満の区分においては、大きさが閾値S以上の2次元ベクトルデータが閾値Tより少ない場合を表している。この場合に、文字「E」を表す透かし情報は、ビット列としては「01000101」で表せるため、埋込部108は、(1)の区分に属する埋込対象ベクトルデータの大きさを値0を示す20に変更し、(2)の区分に属する埋込対象ベクトルデータの大きさを値1を示す25に変更し、同様に(3)〜(5)の区分については埋込対象ベクトルデータの大きさを値0を示す20に変更し、(6)の区分については埋込対象ベクトルデータの大きさを値1を示す25に変更し、(7)の区分については埋込対象ベクトルデータの大きさを値0を示す20に変更し、(8)の区分については埋込対象ベクトルデータの大きさを値1を示す25に変更することになる。なお、埋込対象ベクトルデータにおける2次元ベクトルの方向については変更しない。
【0043】
このようにしてステップS508の埋込処理を終えた後、埋込部108は埋込処理による2次元ベクトルデータの変更を画像格納部102内の2次元直交ウェーブレット変換後の画像に反映する(ステップS509)。例えばある空間的位置P(x,y)の2次元ベクトルV(k12,k21)の元の大きさがRであり、それをR0に変更したのであれば、2次元ベクトルの水平方向のMRR成分(k12)及び垂直方向のMRR成分(K21)のそれぞれをR0/R倍する。なお、このステップS509による反映後の画像に対して仮にステップS503の処理を行ったならば埋込処理の結果の2次元ベクトルデータが得られるようにその反映のための演算は定義されている。
【0044】
ステップS509に続いて、ウェーブレット逆変換部109は、画像格納部102に格納されている埋込処理の反映後の画像に対して2次元直交ウェーブレット逆変換をN回施すことにより透かし情報が埋め込まれた画像を画像格納部102内に生成する(ステップS510)。このステップS510により生成された画像を、画像出力部110は、透かし情報埋込装置100の外部に出力する(ステップS511)。こうして出力された透かし情報の埋め込み後の画像をディスプレイ画面に表示した場合には、閾値S、R0、R1が適切に選ばれていれば、その画像は透かし情報の埋め込み前の画像とは人が一見して区別できない程度に似たものとなる。
【0045】
以上説明した透かし情報埋込装置100は、画像に基づき算出される2次元ベクトルが基準方向となす角度に関して360度を10度毎の36区分に分類することとし、1つの区分内に1ビットの情報を埋め込むこととしたため、最大で36ビットの透かし情報を画像中に埋め込むことができる。なお、例えば、より小さい角度毎に36区分よりも多くの区分に分類することや、R0及びR1のみならず3つ以上の大きさを表す値を用いて1区分で3値以上を表すこととすれば、さらに多くのビット列からなる透かし情報を画像中に埋め込むことが可能になる。
【0046】
このように、透かし情報埋込装置は、画像に対してその画像の著作権者を明示或いは暗示する文字コード列等のビット列からなる透かし情報を埋め込むことができる。なお、透かし情報の内容は限定されるものではなく、著作権保護に利用するための情報でなくても差し支えない。
以下、本発明の実施の形態に係る透かし情報抽出装置について説明する。
<透かし情報抽出装置の構成>
図10は、本発明の実施の形態に係る透かし情報抽出装置200の機能ブロック図である。
【0047】
透かし情報抽出装置200は、上述の透かし情報埋込装置100によって電子透かしとして透かし情報が埋め込まれたデジタル画像から、透かし情報を抽出するための装置であり、ハードウェア的にはCPU、メモリ、ハードディスク、キーボード等を備えるコンピュータで構成され、機能的には同図に示すように画像取得部201、画像格納部202、ウェーブレット変換部203、2次元ベクトル作成部204、2次元ベクトル格納部205、抽出対象ベクトル特定部206、抽出部207及び透かし情報出力部208を有する。
【0048】
ここで、画像取得部201は、記録媒体、或いは外部ネットワークから、透かし情報が埋め込むまれた画像を取得して画像格納部202に格納し、ウェーブレット変換部203にその画像の格納を通知する機能を有する。なお、画像取得部201により取得される画像は、透かし情報埋込装置100に出力され、様々な流通経路を通過し、場合によっては流通過程において回転等の加工がなされたものである。
【0049】
画像格納部202は、画像を格納するためのメモリの一領域である。
ウェーブレット変換部203は、透かし情報埋込装置100のウェーブレット変換部103と基本的に同じであり、画像格納部202に格納された画像に対して、ハール基底(図2参照)で2次元直交ウェーブレット変換を予め定められた回数であるN回だけ施す機能を有する。
【0050】
2次元ベクトル作成部204は、透かし情報埋込装置100の2次元ベクトル作成部104と基本的に同じであり、ウェーブレット変換部203により画像に2次元直交ウェーブレット変換が施された結果として得られた画像に基づいて、その画像の特徴を表す複数の2次元ベクトルデータを作成し2次元ベクトル格納部205に格納する機能を有する。
【0051】
2次元ベクトル格納部205は、画像の特徴を表す2次元ベクトルを格納するためのメモリの一領域である。
抽出対象ベクトル特定部206は、2次元ベクトル作成部204により2次元ベクトル格納部205に格納された複数の2次元ベクトルデータのうち、透かし情報が埋め込まれている複数の2次元ベクトルデータ、即ち透かし情報の抽出対象となる複数の2次元ベクトルデータを特定する機能を有する。
【0052】
抽出部207は、2次元ベクトル格納部205に格納された複数の2次元ベクトルデータのうち透かし情報の抽出対象として特定された複数の2次元ベクトルデータの大きさを参照することにより、透かし情報を抽出して透かし情報出力部208に渡す機能を有する。
透かし情報出力部208は、抽出部207から渡された透かし情報を出力する機能を有する。その出力先は、ディスプレイ、記録媒体或いは外部ネットワークである。
【0053】
なお、画像取得部201、ウェーブレット変換部203、2次元ベクトル作成部204、抽出対象ベクトル特定部206、抽出部207及び透かし情報出力部208は、メモリに格納された制御用プログラムがCPUにより実行されることによりその機能が実現されるものである。
<透かし情報抽出装置の動作>
以下、透かし情報抽出装置200の動作について説明する。
【0054】
図11は、透かし情報抽出装置200の動作を示すフローチャートである。
以下、同図に示した動作を順を追って説明する。
まず、透かし情報抽出装置200の画像取得部201は、透かし情報が埋め込まれている画像を外部より取得して画像格納部202に格納する(ステップS601)。
【0055】
透かし情報が埋め込まれている画像が画像格納部202に格納されると、ウェーブレット変換部203は、その画像に対して2次元直交ウェーブレット変換をN回施す(ステップS602)。
ウェーブレット変換部203により画像にN回目の2次元直交ウェーブレット変換が施された後の水平方向及び垂直方向のMRR成分の画像に基づいて、2次元ベクトル作成部204は、2次元ベクトルデータを作成して2次元ベクトル格納部205に格納する(ステップS603)。
【0056】
2次元ベクトル作成部204により2次元ベクトルデータ群が2次元ベクトル格納部205に格納された後、抽出対象ベクトル特定部206は、2次元ベクトルデータ群から2次元ベクトルの大きさが最大のものを抽出して、その2次元ベクトルの方向を基準方向と定め(ステップS604)、各2次元ベクトルデータについて、基準方向と2次元ベクトルの方向とのなす角度に着目して0以上10度未満、10度以上20度未満、20度以上30度未満、・・・、350度以上360度未満というように10度毎の36区分に分類する(ステップS605)。
【0057】
続いて抽出対象ベクトル特定部206は、ステップS605で分類した各区分のうち、その区分に属する2次元ベクトルデータで、大きさが閾値S以上のもの(以下、「抽出対象ベクトルデータ」という。)の数が閾値T以上存在する区分を、透かし情報の抽出対象となる抽出対象区分として特定する(ステップS606)。なお、基準方向を定めるために用いたものであり大きさが最大の2次元ベクトルデータについては特別に扱い、抽出対象ベクトルデータに含めないものとする。
【0058】
抽出対象ベクトル特定部206が抽出対象区分を特定した後、抽出部207は抽出対象区分の抽出対象ベクトルデータを参照することにより透かし情報を抽出する。即ち、抽出部207は、基準方向からの角度の小さい抽出対象区分から順に区分内の抽出対象ベクトルデータの大きさを参照し、その大きさがR0とR1のいずれであるかを判定し、R0であれば値0、R1であれば値1であるとしてその値を区分毎に順次ビット列を形成するものとして蓄積して、最終的にはそのビット列を透かし情報として透かし情報出力部208に渡す(ステップS607)。なお、ある抽出対象区分内の抽出対象ベクトルデータの大きさがR0とR1のいずれであるかを判定するに際しては、その抽出対象区分内のT個の抽出対象ベクトルデータの平均値がR0とR1のいずれに近いかによって、その近い方にあたるR0又はR1であると判定する。
【0059】
例えば、透かし情報が埋め込まれた画像に関する抽出対象区分の抽出対象ベクトルデータの大きさが図9に表したグラフのように分布していれば、ステップS607によって「01000101・・・」というビット列が抽出できる。なお、透かし情報のサイズが例えば8ビット等と予め定められている場合には、抽出部207は、抽出したビット列の先頭からその定められているビット数分だけを透かし情報として透かし情報出力部208に渡す。
【0060】
抽出部207により透かし情報が渡されると、透かし情報出力部208はその透かし情報を透かし情報抽出装置200の外部に出力する(ステップS608)。これにより例えばディスプレイ等に透かし情報が出力されることになる。
なお、透かし情報抽出装置200は、透かし情報が埋め込まれた画像が回転されていても、画像に基づき作成する2次元ベクトルデータが回転の影響を受けないものであるため、画像から透かし情報を正しく抽出することができる。
<補足>
以上、本発明に係る透かし情報埋込装置及び透かし情報抽出装置について、実施の形態に基づいて説明したが、本発明はこの実施の形態に限られないことは勿論である。即ち、
(1)本実施の形態では、透かし情報が埋め込まれる画像は水平方向に256、垂直方向に256個の白黒256階調で表される画素データであることとしたが、画像を構成する画素数や画素データのビット数等がこれに限定されるものではない。また、本実施の形態では、ウェーブレット変換部103等により画像に2次元ウェーブレット変換が施される回数Nが予め定められているものとしたが、画像を構成する画素数等の画像のサイズを表す情報に応じて、サイズが大きければNを大きくするように、回数Nを決定することにしてもよい。また、透かし情報抽出装置200において2次元ウェーブレット変換を施す回数が透かし情報埋込装置100において画像に2次元ウェーブレット変換が施された回数と異なるようにしてもよく、この場合には透かし情報抽出装置200においてステップS606で用いる閾値Tを他の値のものとしてもよい。
(2)本実施の形態で、透かし情報埋込装置100の埋込部108が定めるR0及びR1は予め固定的に定まっていることとしてもよいし、2次元ベクトルデータ群の大きさの分布に応じてR0及びR1を定めることとしてもよい。例えば、大きさが閾値S以上の2次元ベクトルデータについて、その大きさの平均値がMであれば、R0とR1とをMより少し上の値と少し下の値と定めることとしてもよい。また、予め固定的にR0及びR1を定めておく場合には、透かし情報を埋め込む対象となる画像が内容的に風景画像であるか、人の内部器官をスキャンして得られた画像であるか等に応じて、事前にR0及びR1を変化させて複数枚の対象の画像に対して透かし情報の埋め込みを実験的に行い、その実験を通じて埋め込みを適切に行えるR0及びR1を定めておくこととしてもよい。また、閾値S、閾値T及び回数Nについても同様に実験を通じて好適なものを予め定めておくこととしてもよい。但し、0<閾値T、0<閾値S≦R0<R1の関係を満たすようにする必要がある。
(3)本実施の形態で示した透かし情報埋込装置100の埋込部108は、埋込対象区分が埋め込むべき透かし情報のビット数より多い場合には、順次埋め込みを行って余った埋込対象区分については一律に埋込対象ベクトルデータの大きさをR0にすることとしてもよい。
(4)本実施の形態で示した透かし情報抽出装置200の抽出部207は、抽出対象区分内のT個の抽出対象ベクトルデータについての大きさの平均値に基づいて、R0かR1かの判定を行うこととし、このTは透かし情報埋込装置100において埋込対象区分であると判定するために用いた閾値であることとしたが、T個の平均値に限定されることはなく、T以外の個数の抽出対象ベクトルの平均値を算出してR0とR1のいずれに近いかによって判定することとしてもよい。また、抽出対象区分内の全ての抽出対象ベクトルデータについての大きさの平均値に基づいてR0かR1かの判定を行うこととしてもよい。なお、この平均値を算出するための抽出対象ベクトルデータの個数はある程度多い方が、最終的に抽出される透かし情報の精度が高まる。
(5)本実施の形態で示した透かし情報抽出装置200の抽出部207は、R0、R1の値を予め記憶していてこれを用いて、抽出対象ベクトルデータから0或いは1というビット値を抽出することとしてもよいが、R0やR1を予め記憶せずに透かし情報を抽出する構成とすることもできる。そのためには、例えば埋め込む透かし情報に前提条件を課し、透かし情報のビット列に少なくとも1つの0の値のビットと少なくとも1つの1の値のビットとが含まれていることとしておけば、抽出部207は、各抽出対象区分の抽出対象ベクトルデータの大きさが概ね2つの値のいずれかとなるため、2つの値のうち小さい方を0、大きい方を1というように判定する構成としてもよい。
(6)本実施の形態では、透かし情報抽出装置200はステップS604において2次元ベクトルデータ群から大きさが最大なものを抽出してその2次元ベクトルの方向を基準方向として定めることとしたが、任意の方向を仮に基準方向と定めて、大きさが閾値S以上の全ての2次元ベクトルデータについて2次元ベクトルの基準方向となす角度に対する2次元ベクトルの大きさの分布を検査することにより、基準方向を微調整して透かし情報の抽出を行うこととしてもよい。この場合には、大きさが最大の2次元ベクトルデータも埋込対象ベクトルデータ及び抽出対象ベクトルデータに含める。
【0061】
例えば、任意の方向を基準方向として仮に定めてステップS605及びS606を行い各抽出対象区分内における抽出対象ベクトルデータの大きさについての分散値を計算し、次に基準方向を元の基準方向より1度大きく更新して同様に分散値を計算するという手順を9回繰り返して、その結果得られる10個の分散値のうち最も小さいものの算出の基礎となった基準方向を最終的に採用してステップS605以後の処理を行うこととしてもよい。この場合には、抽出された透かし情報であるビット列は先頭と最後のビットを繋いでリング状になっているものと扱い、透かし情報の意味内容や予め透かし情報に定められた前提条件に従ってその内容を読み取る必要がある。なお、透かし情報は、任意ビット列を予め固定パターンの開始ビット列及び終了ビット列で挟んであることとしてもよい。
(7)本実施の形態では、画像から算出される2次元ベクトルデータのうち埋込対象ベクトルデータについて埋込対象区分毎に、大きさをR0或いはR1に変更することにより画像に透かし情報を埋め込む方法を示したが、この他に、埋込対象区分毎に埋込対象ベクトルデータにおける2次元ベクトルの方向を、その埋込対象区分に対応する角度範囲から相対的な2つの角度Q0及びQ1のいずれかに変更すること、或いは1度単位の角度値において偶数及び奇数のいずれかに変更すること等により画像に透かし情報を埋め込むこととしてもよい。
(8)本実施の形態における透かし情報埋込装置或いは透かし情報抽出装置の処理手順(図5、図8、図11に示した手順等)を、汎用のコンピュータ等に実行させるためのコンピュータプログラムを、記録媒体に記録し又は各種通信路等を介して、流通させ頒布することもできる。このような記録媒体には、ICカード、光ディスク、フレキシブルディスク、ROM等がある。流通、頒布されたコンピュータプログラムは、コンピュータ等にインストールされることにより利用に供され、コンピュータ等は、当該コンピュータプログラムを実行して、本実施の形態で示したような透かし情報埋込装置或いは透かし情報抽出装置を実現する。
【0062】
【発明の効果】
以上説明したように本発明に係る透かし情報埋込装置は、xy2次元座標平面に配置された画素データの集合である2次元画像に、電子透かしとしてビットデータを埋め込む透かし情報埋込装置であって、前記2次元画像を取得する画像取得手段と、ビットデータを取得するビットデータ取得手段と、取得された前記2次元画像中の複数の位置それぞれに対応して、当該位置における画素データの値についてのx方向の空間的勾配をx成分としy方向の空間的勾配をy成分とする2次元ベクトルを作成する2次元ベクトル群作成手段と、作成された各2次元ベクトルを、xy2次元座標平面上での特定方向と当該2次元ベクトルの示す方向とのなす角度が複数の角度範囲区分のいずれに含まれるかによって当該複数の角度範囲区分のいずれかと対応付け、前記複数の角度範囲区分のうち対応する2次元ベクトルの数が閾値T(T>0)以上である角度範囲区分について、当該角度範囲区分に対応する2次元ベクトルで大きさが閾値S(S>0)以上のものの大きさ又は方向を前記ビットデータを表すために変更することにより、2次元ベクトル群にビットデータを埋め込む埋込手段と、前記埋込手段によりビットデータが埋め込まれた2次元ベクトル群に基づき、前記2次元ベクトル群作成手段が2次元画像から2次元ベクトル群を作成する際に用いた演算の逆演算を施すことにより、2次元画像を生成して出力する画像出力手段とを備えることを特徴とする。
【0063】
これにより、画像の空間的勾配から作成される2次元ベクトル群にビットデータ即ち透かし情報が埋め込まれ、画像が回転しても各2次元ベクトルの大きさは変化することなく、2次元ベクトル全体において各2次元ベクトル相互間の方向は変化しないものであるため、こうして埋め込まれた透かし情報は、画像が回転している場合であっても正しく抽出することができることになる。即ち、回転に強い電子透かしが実現できる。
【0064】
ここで、前記2次元ベクトル群作成手段は、前記2次元画像にハール基底を用いた2次元直交ウェーブレット変換を施すことにより、x方向のMRR(Multi Resolution Representation)成分を前記x成分とし、y方向のMRR成分を前記y成分として前記2次元ベクトルを作成することとしてもよい。
【0065】
これにより、2次元直交ウェーブレット変換を用いるため、簡易に画像の空間的勾配を示す2次元ベクトルを求めて透かし情報を埋め込むことができる。
また、前記ビットデータは、ビット列からなり、前記埋込手段は、前記複数の角度範囲区分のうち対応する2次元ベクトルの数が閾値T以上である全ての角度範囲区分に角度の小さいものから大きいものへと順序を付け、当該順序に従って各角度範囲区分に前記ビットデータの先頭ビットから順に1ビットを割り当て、1ビットを割り当てた各角度範囲区分について、当該角度範囲区分に対応する2次元ベクトルで大きさが閾値S以上の全ての2次元ベクトルの大きさを、当該角度範囲区分に割り当てた1ビットの値が0であれば所定値R0に変更し、当該角度範囲区分に割り当てた1ビットの値が1であれば所定値R1に変更することとしてもよい。
【0066】
これにより、2次元ベクトルの大きさを2種類の値として0又は1を表すことによりビット情報を埋め込むため、埋め込まれた情報の抽出が容易となる。またビット情報が埋め込まれた結果の画像が拡大又は縮小されていても、2次元ベクトルの大きさが2種類であるので大きいか小さいかの判定により容易にビット情報を抽出することができるようになる。
【0067】
また、前記埋込手段は、前記2次元ベクトル群作成手段により作成された2次元ベクトルのうち大きさが最大のものの方向を前記特定方向とすることとしてもよい。
これにより、特定方向を定めるための基準を最大の2次元ベクトルとするため、この透かし情報埋込装置により透かし情報が埋め込まれた後の画像に回転が加えられても、特定方向の抽出が容易となり、このため透かし情報であるビットデータのビット列は順序通りに正しく抽出できるようになる。
【0068】
また、本発明に係る透かし情報抽出装置は、xy2次元座標平面に配置された画素データの集合であり電子透かしとしてビットデータが埋め込まれた2次元画像から当該ビットデータを抽出する透かし情報抽出装置であって、前記2次元画像を取得する画像取得手段と、取得された前記2次元画像中の複数の位置それぞれに対応して、当該位置における画素データの値についてのx方向の空間的勾配をx成分としy方向の空間的勾配をy成分とする2次元ベクトルを作成する2次元ベクトル群作成手段と、作成された各2次元ベクトルを、xy2次元座標平面上での特定方向と当該2次元ベクトルの示す方向とのなす角度が複数の角度範囲区分のいずれに含まれるかによって当該複数の角度範囲区分のいずれかと対応付け、前記複数の角度範囲区分のうち対応する2次元ベクトルの数が閾値T(T>0)以上である角度範囲区分について、当該角度範囲区分に対応する2次元ベクトルで大きさが閾値S(S>0)以上のものの大きさ又は方向に基づいてビットデータを抽出する抽出手段とを備えることを特徴とする。
【0069】
これにより、上述の透かし情報埋込装置によって画像の空間的勾配から作成される2次元ベクトル群にビットデータ即ち透かし情報が埋め込まれたところの画像から、適正に透かし情報を抽出することができる。
ここで、前記2次元ベクトル群作成手段は、前記2次元画像にハール基底を用いた2次元直交ウェーブレット変換を施すことにより、x方向のMRR(Multi Resolution Representation)成分を前記x成分とし、y方向のMRR成分を前記y成分として前記2次元ベクトルを作成することとしてもよい。
【0070】
これにより、2次元直交ウェーブレット変換を用いて画像から2次元ベクトルを求めてその2次元ベクトルの変更によりビットデータ即ち透かし情報が画像に埋め込まれている場合に、画像から透かし情報を抽出することができるようになる。
また、抽出対象である前記ビットデータは、ビット列からなり、前記抽出手段は、前記複数の角度範囲区分のうち対応する2次元ベクトルの数が閾値T以上である全ての角度範囲区分に角度の小さいものから大きいものへと順序を付け、当該順序に従って各角度範囲区分から1ビットずつの値を特定して蓄積することにより前記ビットデータを抽出し、前記各角度範囲区分からの1ビットずつの値の特定は、当該角度範囲区分に対応する2次元ベクトルであって大きさが閾値S以上のT個以上の2次元ベクトルの大きさが所定値R0であれば当該1ビットの値を0と判定し、当該2次元ベクトルの大きさが所定値R0以外であれば当該1ビットの値を1と判定することにより行われることとしてもよい。
【0071】
これにより、2次元ベクトルの大きさを2種類の値として0又は1を表すようにビット情報が埋め込まれた画像から、埋め込まれたビット情報を抽出することができるようになる。またビット情報が埋め込まれた結果の画像が拡大又は縮小されていても、2次元ベクトルの大きさが2種類であるので大きいか小さいかの判定により容易にビット情報を抽出することができるようになる。
【0072】
また、前記抽出手段は、前記2次元ベクトル群作成手段により作成された2次元ベクトルのうち大きさが最大のものの方向を前記特定方向とすることとしてもよい。
これにより、画像から求まる2次元ベクトルのうち最大のものの方向を特定方向として特定方向と2次元ベクトルの方向とのなす角度によって2次元ベクトル群を分類して、分類に従って透かし情報を埋め込むような上述の透かし情報埋込装置によって出力された画像から、画像が回転していても適切に特定方向を特定できるので、的確に透かし情報を抽出することが可能になる。
【図面の簡単な説明】
【図1】本発明の実施の形態に係る透かし情報埋込装置100の機能ブロック図である。
【図2】ウェーブレット変換部103による2次元直交ウェーブレット変換に利用するハール(Haar)基底を示す図である。
【図3】ウェーブレット変換部103により2次元直交ウェーブレット変換が施される前の画像の様子を表した図である。
【図4】ウェーブレット変換部103により2次元直交ウェーブレット変換が1回施された後の画像の様子を表した図である。
【図5】透かし情報埋込装置100の動作を示すフローチャートである。
【図6】ある空間的位置P(x,y)についての水平方向のMRR成分と垂直方向のMRR成分とを示す概念図である。
【図7】「E」の字の形を表した画像の一部についての空間的勾配を示した図である。
【図8】埋込部108の行う埋込処理を示すフローチャートである。
【図9】透かし情報を埋込対象区分の埋込対象ベクトルデータに埋め込んだ結果を例示する図である。
【図10】本発明の実施の形態に係る透かし情報抽出装置200の機能ブロック図である。
【図11】透かし情報抽出装置200の動作を示すフローチャートである。
【符号の説明】
100 透かし情報埋込装置
101 画像取得部
102 画像格納部
103 ウェーブレット変換部
104 2次元ベクトル作成部
105 2次元ベクトル格納部
106 埋込対象ベクトル特定部
107 透かし情報取得部
108 埋込部
109 ウェーブレット逆変換部
110 画像出力部
200 透かし情報抽出装置
201 画像取得部
202 画像格納部
203 ウェーブレット変換部
204 2次元ベクトル作成部
205 2次元ベクトル格納部
206 抽出対象ベクトル特定部
207 抽出部
208 透かし情報出力部

Claims (10)

  1. xy2次元座標平面に配置された画素データの集合である2次元画像に、電子透かしとしてビットデータを埋め込む透かし情報埋込装置であって、
    前記2次元画像を取得する画像取得手段と、
    ビットデータを取得するビットデータ取得手段と、
    取得された前記2次元画像中の複数の位置それぞれに対応して、当該位置における画素データの値についてのx方向の空間的勾配をx成分としy方向の空間的勾配をy成分とする2次元ベクトルを作成する2次元ベクトル群作成手段と、
    作成された各2次元ベクトルを、xy2次元座標平面上での特定方向と当該2次元ベクトルの示す方向とのなす角度が複数の角度範囲区分のいずれに含まれるかによって当該複数の角度範囲区分のいずれかと対応付け、
    前記複数の角度範囲区分のうち対応する2次元ベクトルの数が閾値T(T>0)以上である角度範囲区分について、当該角度範囲区分に対応する2次元ベクトルで大きさが閾値S(S>0)以上のものの大きさ又は方向を前記ビットデータを表すために変更することにより、2次元ベクトル群にビットデータを埋め込む埋込手段と、
    前記埋込手段によりビットデータが埋め込まれた2次元ベクトル群に基づき、前記2次元ベクトル群作成手段が2次元画像から2次元ベクトル群を作成する際に用いた演算の逆演算を施すことにより、2次元画像を生成して出力する画像出力手段とを備える
    ことを特徴とする透かし情報埋込装置。
  2. 前記2次元ベクトル群作成手段は、前記2次元画像にハール基底を用いた2次元直交ウェーブレット変換を施すことにより、x方向のMRR(Multi Resolution Representation)成分を前記x成分とし、y方向のMRR成分を前記y成分として前記2次元ベクトルを作成する
    ことを特徴とする請求項1記載の透かし情報埋込装置。
  3. 前記ビットデータは、ビット列からなり、
    前記埋込手段は、前記複数の角度範囲区分のうち対応する2次元ベクトルの数が閾値T以上である全ての角度範囲区分に角度の小さいものから大きいものへと順序を付け、当該順序に従って各角度範囲区分に前記ビットデータの先頭ビットから順に1ビットを割り当て、1ビットを割り当てた各角度範囲区分について、当該角度範囲区分に対応する2次元ベクトルで大きさが閾値S以上の全ての2次元ベクトルの大きさを、当該角度範囲区分に割り当てた1ビットの値が0であれば所定値R0に変更し、当該角度範囲区分に割り当てた1ビットの値が1であれば所定値R1に変更する
    ことを特徴とする請求項1又は2記載の透かし情報埋込装置。
  4. 前記埋込手段は、前記2次元ベクトル群作成手段により作成された2次元ベクトルのうち大きさが最大のものの方向を前記特定方向とする
    ことを特徴とする請求項3記載の透かし情報埋込装置。
  5. xy2次元座標平面に配置された画素データの集合であり電子透かしとしてビットデータが埋め込まれた2次元画像から当該ビットデータを抽出する透かし情報抽出装置であって、
    前記2次元画像を取得する画像取得手段と、
    取得された前記2次元画像中の複数の位置それぞれに対応して、当該位置における画素データの値についてのx方向の空間的勾配をx成分としy方向の空間的勾配をy成分とする2次元ベクトルを作成する2次元ベクトル群作成手段と、
    作成された各2次元ベクトルを、xy2次元座標平面上での特定方向と当該2次元ベクトルの示す方向とのなす角度が複数の角度範囲区分のいずれに含まれるかによって当該複数の角度範囲区分のいずれかと対応付け、前記複数の角度範囲区分のうち対応する2次元ベクトルの数が閾値T(T>0)以上である角度範囲区分について、当該角度範囲区分に対応する2次元ベクトルで大きさが閾値S(S>0)以上のものの大きさ又は方向に基づいてビットデータを抽出する抽出手段とを備える
    ことを特徴とする透かし情報抽出装置。
  6. 前記2次元ベクトル群作成手段は、前記2次元画像にハール基底を用いた2次元直交ウェーブレット変換を施すことにより、x方向のMRR(Multi Resolution Representation)成分を前記x成分とし、y方向のMRR成分を前記y成分として前記2次元ベクトルを作成する
    ことを特徴とする請求項5記載の透かし情報抽出装置。
  7. 抽出対象である前記ビットデータは、ビット列からなり、
    前記抽出手段は、前記複数の角度範囲区分のうち対応する2次元ベクトルの数が閾値T以上である全ての角度範囲区分に角度の小さいものから大きいものへと順序を付け、当該順序に従って各角度範囲区分から1ビットずつの値を特定して蓄積することにより前記ビットデータを抽出し、
    前記各角度範囲区分からの1ビットずつの値の特定は、当該角度範囲区分に対応する2次元ベクトルであって大きさが閾値S以上のT個以上の2次元ベクトルの大きさが所定値R0であれば当該1ビットの値を0と判定し、当該2次元ベクトルの大きさが所定値R0以外であれば当該1ビットの値を1と判定することにより行われる
    ことを特徴とする請求項5又は6記載の透かし情報抽出装置。
  8. 前記抽出手段は、前記2次元ベクトル群作成手段により作成された2次元ベクトルのうち大きさが最大のものの方向を前記特定方向とする
    ことを特徴とする請求項7記載の透かし情報抽出装置。
  9. xy2次元座標平面に配置された画素データの集合である2次元画像に、電子透かしとしてビットデータを埋め込む透かし情報埋込処理をコンピュータに実行させるための制御プログラムを記録した記録媒体であって、
    前記透かし情報埋込処理は、
    前記2次元画像を取得する画像取得ステップと、
    ビットデータを取得するビットデータ取得ステップと、
    取得された前記2次元画像中の複数の位置それぞれに対応して、当該位置における画素データの値についてのx方向の空間的勾配をx成分としy方向の空間的勾配をy成分とする2次元ベクトルを作成する2次元ベクトル群作成ステップと、
    作成された各2次元ベクトルを、xy2次元座標平面上での特定方向と当該2次元ベクトルの示す方向とのなす角度が複数の角度範囲区分のいずれに含まれるかによって当該複数の角度範囲区分のいずれかと対応付け、
    前記複数の角度範囲区分のうち対応する2次元ベクトルの数が閾値T(T>0)以上である角度範囲区分について、当該角度範囲区分に対応する2次元ベクトルで大きさが閾値S(S>0)以上のものの大きさ又は方向を前記ビットデータを表すために変更することにより、2次元ベクトル群にビットデータを埋め込む埋込ステップと、
    前記埋込ステップによりビットデータが埋め込まれた2次元ベクトル群に基づき、前記2次元ベクトル群作成手段が2次元画像から2次元ベクトル群を作成する際に用いた演算の逆演算を施すことにより、2次元画像を生成して出力する画像出力ステップとを含む
    ことを特徴とする記録媒体。
  10. xy2次元座標平面に配置された画素データの集合であり電子透かしとしてビットデータが埋め込まれた2次元画像から当該ビットデータを抽出する透かし情報抽出処理をコンピュータに実行させるための制御プログラムを記録した記録媒体であって、
    前記透かし情報抽出処理は、
    前記2次元画像を取得する画像取得ステップと、
    取得された前記2次元画像中の複数の位置それぞれに対応して、当該位置における画素データの値についてのx方向の空間的勾配をx成分としy方向の空間的勾配をy成分とする2次元ベクトルを作成する2次元ベクトル群作成ステップと、
    作成された各2次元ベクトルを、xy2次元座標平面上での特定方向と当該2次元ベクトルの示す方向とのなす角度が複数の角度範囲区分のいずれに含まれるかによって当該複数の角度範囲区分のいずれかと対応付け、前記複数の角度範囲区分のうち対応する2次元ベクトルの数が閾値T(T>0)以上である角度範囲区分について、当該角度範囲区分に対応する2次元ベクトルで大きさが閾値S(S>0)以上のものの大きさ又は方向に基づいてビットデータを抽出する抽出ステップとを含む
    ことを特徴とする記録媒体。
JP2001028425A 2001-02-05 2001-02-05 電子透かしに関する透かし情報埋込装置及び透かし情報抽出装置 Expired - Fee Related JP3737702B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001028425A JP3737702B2 (ja) 2001-02-05 2001-02-05 電子透かしに関する透かし情報埋込装置及び透かし情報抽出装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001028425A JP3737702B2 (ja) 2001-02-05 2001-02-05 電子透かしに関する透かし情報埋込装置及び透かし情報抽出装置

Publications (2)

Publication Number Publication Date
JP2002232695A JP2002232695A (ja) 2002-08-16
JP3737702B2 true JP3737702B2 (ja) 2006-01-25

Family

ID=18892931

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001028425A Expired - Fee Related JP3737702B2 (ja) 2001-02-05 2001-02-05 電子透かしに関する透かし情報埋込装置及び透かし情報抽出装置

Country Status (1)

Country Link
JP (1) JP3737702B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100944488B1 (ko) 2007-09-20 2010-03-03 인하대학교 산학협력단 방위각을 이용한 벡터 데이터 워터마크 삽입방법 및검출방법

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6138706B2 (ja) * 2014-01-17 2017-05-31 株式会社日立ソリューションズ 電子透かし埋め込み方法または電子透かし検出方法
CN108876693B (zh) * 2018-05-30 2022-09-30 湖南科技大学 一种基于角度差分的矢量地理空间数据数字水印方法
CN113012016A (zh) * 2021-03-25 2021-06-22 北京有竹居网络技术有限公司 水印嵌入方法、装置、设备以及存储介质

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100944488B1 (ko) 2007-09-20 2010-03-03 인하대학교 산학협력단 방위각을 이용한 벡터 데이터 워터마크 삽입방법 및검출방법

Also Published As

Publication number Publication date
JP2002232695A (ja) 2002-08-16

Similar Documents

Publication Publication Date Title
Hosny et al. Robust color image watermarking using invariant quaternion Legendre-Fourier moments
Wazirali et al. An optimized steganography hiding capacity and imperceptibly using genetic algorithms
Gani et al. A robust copy-move forgery detection technique based on discrete cosine transform and cellular automata
JP5015540B2 (ja) 電子透かし埋め込み装置および検出装置
US20230008085A1 (en) Method for embedding watermark in video data and apparatus, method for extracting watermark in video data and apparatus, device, and storage medium
Girdhar et al. Comprehensive survey of 3D image steganography techniques
US7158653B2 (en) Encoding information in a watermark
US20010031064A1 (en) Method and device for inserting a watermarking signal in an image
JP2006314125A (ja) デジタル像符牒の処理方法及びシステム
Kim et al. Watermarking two dimensional data object identifier for authenticated distribution of digital multimedia contents
Bakhsh et al. A robust HDR images watermarking method using artificial bee colony algorithm
Monga et al. Image authentication under geometric attacks via structure matching
Duan et al. A novel comprehensive watermarking scheme for color images
Li et al. Steganalysis of meshes based on 3D wavelet multiresolution analysis
Golshan et al. A hybrid intelligent SVD-based perceptual shaping of a digital image watermark in DCT and DWT domain
Kato et al. A preprocessing by using multiple steganography for intentional image downsampling on CNN-based steganalysis
JP3737702B2 (ja) 電子透かしに関する透かし情報埋込装置及び透かし情報抽出装置
Jamali et al. Robust watermarking using diffusion of logo into auto-encoder feature maps
Darwish et al. Improved color image watermarking using logistic maps and quaternion Legendre-Fourier moments
Kim et al. Improved 3D mesh steganalysis using homogeneous kernel map
Mu et al. An improved quantum watermarking using quantum Haar wavelet transform and Qsobel edge detection
JP2000350007A (ja) 電子透かし方法、電子透かし装置および記録媒体
Tsai An efficient 3D information hiding algorithm based on sampling concepts
JP5036643B2 (ja) 情報処理装置、情報処理方法、及びプログラム
Yao et al. High invisibility image steganography with wavelet transform and generative adversarial network

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040614

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20050908

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: 20051011

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20051027

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: 20091104

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees