まず、本発明の実施の形態の概要を説明する。図1Aは、本発明の実施の形態における電子透かし埋め込み方法の概要を示すフローチャートである。
上記電子透かし埋め込み方法は、埋め込み系列生成手段、配列生成手段、変調手段、記憶手段、埋め込みパターン重畳手段と、を有する電子透かし埋め込み装置において、N(Nは2以上の整数)以上の次元を持つ入力信号に対して埋め込み情報を電子透かしとして人間の知覚に感知されないように埋め込む電子透かし埋め込み方法である。この方法は、埋め込み系列生成手段が、埋め込み情報に基づき埋め込み系列を生成し、第1の記憶手段に格納する埋め込み系列生成ステップ(ステップ1)と、配列生成手段が、第1の記憶手段の埋め込み系列に基づきN−1次元パターンを生成する配列生成ステップ(ステップ2)と、変調手段が、N−1次元パターン上の値に応じて周期信号を変調することによりN次元の埋め込みパターンを生成し、第2の記憶手段に格納する変調ステップ(ステップ3)と、埋め込みパターン重畳手段が、第2の記憶手段に格納されているN次元の埋め込みパターンを取得し、該埋め込みパターンを入力信号に重畳する埋め込みパターン重畳ステップ(ステップ4)とを有している。
図1Bは、本発明の実施の形態における電子透かし検出方法の概要を示すフローチャートである。この電子透かし検出方法は、復調手段、検出系列抽出手段、相関値計算手段、記憶手段と、を有する電子透かし検出装置において、N以上の次元を持つ入力信号に対して予め人間の知覚に感知されないように埋め込まれた電子透かしを検出する電子透かし検出方法である。
この方法は、復調手段が、入力信号の一つの次元方向における所定の周期信号の成分を測定し、N−1次元パターンを求める復調ステップ(ステップ11)と、検出系列抽出手段が、N−1次元パターンの値から検出系列を求め、記憶手段に格納する検出系列抽出ステップ(ステップ12)と、相関値計算手段が、記憶手段に格納された検出系列と埋め込み系列の相関値の大きさに基づいて、埋め込まれている電子透かしを検出する相関値計算ステップ(ステップ13)とを有する。
図2は、本発明の実施の形態における電子透かし埋め込み装置と電子透かし検出装置の概要構成を示す図である。
本実施の形態における電子透かし埋め込み装置は、N(Nは2以上の整数)以上の次元を持つ入力信号に対して埋め込み情報を電子透かしとして人間の知覚に感知されないように埋め込む電子透かし埋め込み装置100であり、埋め込み情報に基づき埋め込み系列を生成し、第1の記憶手段102に格納する埋め込み系列生成手段111と、第1の記憶手段102の埋め込み系列に基づきN−1次元パターンを生成する配列生成手段112と、N−1次元パターン上の値に応じて周期信号を変調することによりN次元の埋め込みパターンを生成し、第2の記憶手段103に格納する変調手段130と、第2の記憶手段103に格納されているN次元の埋め込みパターンを取得し、該埋め込みパターンを入力信号に重畳する埋め込みパターン重畳手段140と、を有する。
また、本実施の形態の電子透かし検出装置は、N以上の次元を持つ入力信号に対して予め人間の知覚に感知されないように埋め込まれた電子透かしを検出する電子透かし検出装置200であり、入力信号の一つの次元方向における所定の周期信号の成分を測定し、N−1次元パターンを求める復調手段210と、N−1次元パターンの値から検出系列を求め、記憶手段202に格納する検出系列抽出手段221と、記憶手段250に格納された検出系列と埋め込み系列の相関値の大きさに基づいて、埋め込まれている電子透かしを検出する相関値計算手段222と、を有する。
以下、図面と共に本発明の実施の形態を詳細に説明する。
以下では、まず、本発明の原理となる基本概念とその例を示した後、具体的な電子透かし埋め込み装置、電子透かし検出装置とその方法の実施の形態について説明する。
[基本概念]
まず、本実施形態の原理となる基本概念を以下に示す。
(1)複素相関による電子透かしモデル:
複素数列を用いた相関利用型電子透かしについて以下に示す。
なお、以下の本明細書中で複素数としている部分は、同一の概念として2次元のベクトルに置き換えることができることは言うまでもない。
埋め込み)埋め込み対象の信号列i及び電子透かし系列wを次のように定める。
i={i1,i2,…,iL}∈CL (1)
w={w1,w2,…,wL}∈CL (2)
ただし、Cは複素数全体の集合であり、wは平均0の擬似乱数列とする。
iにwを埋め込み、埋め込み済み信号列i'を得る。
i'=i+w (3)
検出)i'が同期ずれにより△θだけ位相がずれたi"を考える。
i"とwの相関値を次式のように計算し、電子透かしの検出を行う。
ρ=i"・w* (5)
ここで、「w*」はwの各要素の共役複素数をとる数列であり、「・」は数列をベクトルとみたときの内積演算である。なお、このような複素数列同士の相関計算を複素相関と呼ぶことにする。
ここで、w*
kはw
kの共役複素数を表す。
iとwが独立でLが十分大きければ、Σi
kw*
kの期待値は0であり、
従って、
・ρの絶対値が最大となる埋め込み値を求めることで位相ずれ量△θに関わらず検出が可能となる。即ち、同期合わせなしに検出が可能となる。
・ρの偏角を求めることで位相ずれ量△θを算出可能となる。
ここでwkとしては次のような2通りの選び方が考えられる。
1)例えば{+1,−1}のいずれかの値を取るといったように実数のみから選ばれている場合;
2)例えば、
のいずれかの値をとるといったように複素数空間に広がって分布するように選ばれている場合;
上記1)の場合、埋め込み済み信号列i'上で透かしのパターン成分wの位相が揃っており、2)の場合は、位相が拡散されていることになる。どちらかの場合であっても、
Σi
kw*
k
の期待値は0となり、電子透かしの検出が可能となるが、│w
k│の分散を等しくして電子透かし成分のエネルギーを揃えた条件下で1)、2)を比べた場合、2)の方が
│Σi
kw*
k│
の分散が小さくなる。これはρの値に埋め込み対象の信号列iが与えるノイズ成分の影響が小さくなることを意味し、より信頼性が高い検出が可能となる。
(2)時間方向単一周波数埋め込みによる時間同期不要電子透かし:
同期ずれにより△θだけ位相がずれるような電子透かし埋め込みの例として、時間方向単一周波数への埋め込みを行う例を示す。
具体的には、例えば、映像の空間方向で構成された複素数パターンを時間方向の単一周波数に変調して埋め込む例を示す。
埋め込み)N次元の信号列にN−1次元の複素数パターンP(x)を埋め込む。但し、xはN−1次元空間での位置を表すベクトルで、
x=(x1,x2,…,xN−1) (8)
とする。
N番目の次元を時間軸と考え、時間軸方向の周期複素関数f(t)を用意する。例えば、
ここでjは虚数単位、ωはf(t)の周期を表す角速度である。
P(x)の実部、虚部をそれぞれf(t)の実部、虚部でAM変調し合成した、N次元実数信号W(x,t)を得る。
但し、f*(t)はf(t)の共役複素数をとる複素関数である。
N=2のときの、W(x,t)の例を図3に示す。ここで、太線がw(x,t)の値を表し、位置x毎に位相のずれたt軸方向の周期信号で表現されている。
このような変調により、P(x)の複素数値の偏角と絶対値で、f(t)の位相と振幅を変調していることになる。
W(x,t)を埋め込み対象の信号I(x,t)に埋め込み、埋め込み済み信号I'(x,t)を得る。
I'(x,t)=I(x,t)+W(x,t) (11)
検出)I'(x,t)が同期ずれにより、△tだけずれた信号I"(x,t)を考える。
例えば、映像信号などを考えた場合、ビデオカメラによる再撮影やアナログ変換などが行われた際にも、通常は空間上の位置が異なっていても、時間方向の同期変位量は一定となる。(電子透かしに対する攻撃として空間位置毎に異なる時間方向同期ずれが与えられた場合、画質は著しく劣化し、映像コンテンツとしての価値が損なわれるため攻撃としては成り立たない)このことから、上記のように時間方向(t方向)の同期変位量△tは、位置xによらず一定であると考えることができる。
また、例えば、画像信号を考えた場合、画像の平行移動のみが加えられている場合には、例えば画像信号が横方向の位置xが異なっていても、縦方向に加えられた平行移動の大きさは一定となる。この場合にも、上記のように縦方向(t方向)の同期変位量△tは、横方向の位置xによらず一定であると考えることができる。
今、区間0≦t≦T(Tはf(t)の周期の整数倍)で与えられたI"(x,t)に対し、f(t)で復調するため次のような積分を計算する。
なお、ここでの例では、信号I"(x,t)が連続信号として得られている場合を例に説明したが、信号I"(x,t)が離散信号として得られている場合も、積分の代わりに積和計算により同様の処理が可能である。
即ち、
透かし系列
w{w
1,…,w
L}∈C
L
とP(x)との線形変換Trans及び逆変換Trans
−1が定義されているとき、電子透かしの埋め込みに際し、
P(x)=Trans(w) (19)
でP(x)を生成し、電子透かし検出に際し、
w'=Trans
−1(Q(x)) (20)
とすれば、
が得られる。但し、n=Trans
−1(N(x,△t))。
線形変換Transの例としては、例えば、単にwの各値をN−1次元空間上に順に並べるだけの変換であっても良いし、wの各値をN−1次元空間上に順に並べた後に逆フーリエ変換等の直交変換を行う変換であっても良い。
前節の議論を当てはめ、複素相関を取ることで、
から電子透かしの検出、同期変位量△tの算出が可能である。
(3)差分(微分)相関による検出:
上記の検出方式において、Q(x)を求める計算の代わりに、I"(x,t)の差分もしくは、微分からf(t)を用いて復調するようにしても良い。
即ち、例えば信号が離散的な場合、
△I"(x,τ)=I"(x,τ+1)−I"(x,τ)
として、
また、例えば、信号が連続的な場合には、
を用いた同様の計算により、同様の検出が可能である。
例えば、映像信号などを考えた場合、信号のフレーム間の相関が大きいことが知られている。二つのフレームの時間間隔が短いほどフレーム間の相関は高いことから、上記のようにフレーム間差分を計算すると、周期信号による相殺分以上に原画成分が大きくキャンセルされ、上記のN1(x,△t)−N0(x,△t)の項の絶対値が非常に小さくなり、電子透かしのエネルギーが相対的に増大して検出がしやすくなるという利点がある。
(4)任意の周期信号を用いた場合の時間同期不要電子透かし:
次に、周期信号として任意の関数f(t)を用い、これの位相を変化させて電子透かしを埋め込む場合を考える。ここではf(t)は実関数を考える。
埋め込み)P(x)の絶対値、偏角でf(t)の振幅、位相を変調した、N次元実数信号W(x,t)を得る。
例えば、
W(x,t)=│P(x)│f(t+s(x)) (24)
ここで、
W(x,t)を埋め込み対象の信号I(x,t)に埋め込み、埋め込み済み信号I'(x,t)を得る。
I'(x,t)=I(x,t)+W(x,t) (25)
検出)I'(x,t)が同期ずれにより、△tだけずれた信号I"(x,t)を考える。
I"(x,t)=I'(x,t+△t) (26)
=I(x,t+△t)+W(x,t+△t)
=I(x,t+△t)+│P(x)│f(t+△t+s(x))
今、区間0≦t≦Tで与えられたI"(x,t)に対し、f(t)及びf(t)の位相をπ/4変位させたf(t-π/4)で復調するための次のような積分を計算する。
この積分計算はf()の自己相関を求めるのと同様の計算になっており、f(t)の自己相関関数をg(t)とすると。
今、
となるが、これから前述の正弦波を用いた例と同様な電子透かしの検出ができるためには、h(x,△t)の偏角Arg[h(x,△t)]が、埋め込まれた信号の位相
で△ψが十分小さい値をとるような関数hであれば良い。
このとき、複素相関における積演算は次のように表され、
複素相関値としてこれの総和を求めることになり、複素相関値の偏角から同期変位量△tと△ψに応じた誤差の範囲で求めることができる。
ただし、
であることを利用した。また、理解を容易にするために線形変換Transを省き直接P(x)での相関演算を行う例を示した。
以上の議論は、周期信号が正弦波の場合には△ψ=0となる一方、正弦波以外の周期信号の場合、△ψ≠0となり、同期変位量△tの測定に誤差が生じることを表している。
(5) 周期信号の例:
周期信号は、次の特徴を持つ周期関数を用いれば良い。
1)1周期分積分した結果が0となる。
2)自己相関関数が鋭敏なピークを持たない。
上記の1)の条件は例えば、
また、上記2)の条件は例えば、「自己相関関数の頂点付近の2階微分の値が頂点の符号と一致しない」、という条件を用いても良い。
周期信号の例を図4A〜Cに示す。同図の周期信号は、(図4A)(a)正弦波、(図4B)(b)三角波、(図4C)(c)矩形波であり、各信号を0≦t<T(Tは信号の周期)の範囲で式で表すと下記のようになる。なお、これらの例に限定するものではなく、上記の特徴を持つ任意の周期信号を用いて良いことは言うまでもない。
1)の条件は、検出時の積分の結果I"(x,t)のt方向の直流成分をキャンセルできることを表す。
2)の条件の意味について下記に説明する。
図5A〜Cに図4A〜Cの各周期信号の自己相関関数を示す。さらに、図6A〜Cに、それぞれの周期信号の場合に複素平面上で複素関数h()の動く軌跡を示す。
(図5A、図6A)正弦波の例では、自己相関関数が滑らかに変化しており、h()の軌跡は円となる。これは、△ψ=0となり、同期変位量△tを高い精度で求められることを意味する。
(図5B、図6B)三角波の例では、やはり自己相関関数が滑らかに変化しており、頂点付近の2階微分の値が頂点の符号とは異なっており(符号が正の頂点付近の2階微分の値は負であり符号は一致していない)、鋭敏なピークは持たない自己相関関数となっている。結果、h()の軌跡はほぼ円に等しくなり、△ψは十分小さな値となり、やはり同期変位量△tを高い精度で求められることを意味する。
(図5C、図6C)矩形波の例では、自己相関関数は滑らかとは言えないが、頂点付近の2階微分の値が頂点の符号とは異なっており(符号が正の頂点付近の2階微分の値が0であり符号は一致していない)、やはり鋭敏なピークは持たない自己相関関数となっている。結果、h()の軌跡は円ではないが菱形となり、△ψは比較的小さな値となり、同期変位量△tをある程度の精度で求められることを意味する。
一般に、正弦波の値を計算するより矩形波や三角波の値を計算する方が高速に処理が可能であるため、正弦波の代わりに三角波や矩形波などの上記の条件を満たす他の周期関数を用いることで、同期変位量の若干の誤差を犠牲に全体として高速な電子透かし検出が可能となる。例えば、携帯電話等の携帯端末での電子透かし検出のように、非常に限られた計算資源において電子透かし検出を行う場合や、大量の電子透かし検出を行う場合に高速処理が要求される場合に特に有効である。
(6)直交する2つの周期関数を用いた場合の時間同期不要電子透かし:
次に、周期信号として同一の基本周波数を持ち直交する2つの周期関数f1(t)、f2(t)を用いた場合を考える。
この場合、上記の時間方向単一周波数埋め込みによる時間同期不要電子透かしの説明における周期複素関数f(t)をf(t)=f1(t)+jf2(t)とすることに等しい。
例えば、f1(t)とし周期4の矩形波、f2(t)として周期4の三角波を考え、それぞれ、図7A、Bのような信号として定義されるものを考える。
このとき、f1(t)、f2(t)はどちらも基本周波数1/4を持ち、1周期分の積分
となり、直交している。但し、Tは信号周期であり、この例ではT=4である。
この場合、例えば、あるx=x0に対してP(x0)=1+0jであったとき、対応するW(x0,t)は図7Aのf1(t)と同一になる。
同期ずれがない場合、原画成分を除いて記述すると図8Aの信号G1(t)が検出時に得られる。これとf1(t),f2(t)との相関計算の結果、
同期ずれにより位相が90度ずれた場合、原画成分を除いて記述すると図8Bのような信号G2(t)が検出時に得られる。これとf1(t)、f2(t)との相関計算の結果
同様に考えると、同期ずれの大きさによってQ(x0)は図9の複素平面上を軌跡1を辿って変化することになる。
また、例えばあるx=x1に対してP(x1)=0+1jであったとき、対応するW(x1,t)は図7Bのf2(t)と同一になり、同様の考察により、同期ずれの大きさによってQ(x1)は、図9の複素平面上を軌跡2を辿って変換することになる。
Q(x)の偏角は前述した複素相関値の計算と同様の計算により、複素相関値の偏角から同期変位量△tを、計算で定まる誤差の範囲で求めることができる。
このように、周期信号として同一の基本周波数を持ち直交する2つの周期関数f1(t)f2(t)を用いた場合にも、若干の誤差を犠牲にして全体として同期変位量を求めることが可能になる。
[第1の実施の形態]
図10は、本発明の第1の実施の形態における電子透かし埋め込み装置及び電子透かし検出装置の構成を示す。
<電子透かし埋め込み装置>
まず、電子透かし埋め込み装置について説明する。
電子透かし埋め込み装置100は、複素パターン生成部110、時間変調部130、埋め込みパターン重畳部140、第1の記憶部150、第2の記憶部160から構成され、埋め込み情報911、埋め込み前信号912を入力し、埋め込み済み信号923を出力する。
以下に、電子透かし埋め込み装置100の動作を説明する。
図11は、本発明の第1の実施の形態における電子透かし埋め込み装置の動作のフローチャートである。電子透かし埋め込み装置100による電子透かしの埋め込み処理は以下の手順で実施される。
ステップ100)複素パターン生成部110において、入力された埋め込み情報911に基づいて埋め込み複素パターン921を生成し、メモリ等の第1の記憶部150に格納する。
埋め込み複素パターン921は、複素数から構成されるN−1次元パターンであり、埋め込み情報の内容を表している。複素パターン生成部110の動作の詳細については図12において後述する。
なお、後述する複素数へのその他の埋め込み方法に示すように、時間変調部130の処理によっては、N−1次元パターンを実数値のパターンとして構成することも可能である。
ステップ110) 時間変調部130において、複素パターン生成部110で生成され、第1の記憶部150に格納された埋め込み複素パターン921に基づいて埋め込みパターン922を生成し、メモリ等の第2の記憶部160に格納する。埋め込みパターン922は、埋め込み複素パターン921に対し時間軸方向の変調を行い、実数値で構成されるN次元パターンとして生成したものである。
時間変調部130の動作の詳細については後述する。
ステップ120) 埋め込みパターン重畳部140において、時間変調部130で生成され、第2の記憶部160に格納されている埋め込みパターン922を、入力された埋め込み前信号912に重畳し、埋め込み済み信号923を出力する。
埋め込みパターン重畳部140の動作の詳細については後述する。
<電子透かし埋め込み装置−複素パターン生成部>
図12は、本発明の第1の実施の形態における複素パターン生成部の構成例を示す。
複素パターン生成部110aは、埋め込み系列生成部111、複素配列生成部112から構成され、埋め込み情報911を入力し、埋め込み複素パターン921を出力する。
複素パターン生成部110aによる埋め込み複素パターンの生成処理は以下の手順で実施される。
図13は、本発明の第1の実施の形態における複素パターン生成部の処理のフローチャートである。
ステップ101) 埋め込み系列生成部111において、入力された埋め込み情報911に基づいて、埋め込み情報を表す数値の列である埋め込み系列913を生成する。埋め込み系列生成部111の動作の詳細については後述する。
ステップ102) 複素配列生成部112において、埋め込み系列生成部111で生成された埋め込み系列913を、N−1次元複素配列上の要素の実部及び虚部に割り当て、埋め込み複素パターン921を生成し、第1の記憶部150に格納する。複素配列生成部112の詳細については後述する。
<電子透かし埋め込み装置−埋め込み系列生成部>
埋め込み系列生成部111では、次のような処理により埋め込み系列913を生成する。
埋め込み系列913の生成は、例えば、特許文献1や、「中村高雄、小川宏、富岡淳樹、高嶋洋一、"電子透かしにおける平行移動・切り取り耐性向上の一手法"1999年暗号と情報セキュリティシンポジウム、SCIS99-W3-2.1, pp.193-198, 1999」や、「中村高雄、片山淳、山室雅司、曽根原登"カメラ付き携帯電話機を用いたアナログ画像からの高速電子透かし検出方式"、信学論D-II, Vol. J87-D-II, No.12, pp. 2145-2155, 2004」に示されているような埋め込み系列の構成方法と同様の方法をとることができる。
以下に、埋め込み情報911の例として、
・電子透かしが埋め込まれている、という事実だけを表す場合の例;
・1bitの情報である場合の例;
・nbitの情報である場合の1つ目の例;
・nbitの情報である場合の2つ目の例;
とについて説明する。なお、これらの例に限定するものではなく、この他の埋め込み系列生成の方法をとっても良い。
(例1)埋め込み情報911が「電子透かしが埋め込まれている」という事実だけを表す場合、埋め込み系列913は、例えば、擬似乱数列を用いて表された数値列として計算されても良い。即ち、平均0の擬似乱数列PN={PN1,PN2,…,PNL}(Lは系列の長さ)とするとき、埋め込み系列w={w1,w2,…,wL}を
w=PN={PN1,PN2,…,PNL} (40)
のように決定しても良い。
また、擬似乱数列としては例えばM系列やGOLD系列を用いても良い。
(例2)埋め込み情報911が1bitの情報である場合、埋め込み系列913は、例えば、その1bitの情報を擬似乱数列を用いてスペクトル拡散した数値列として計算されても良い。すなわち、埋め込み情報をb、平均0の擬似乱数列をPN={PN1,PN2,…,PNL}(Lは系列の長さ)とするとき、埋め込み系列w={w1,w2,…,wL}を
また、擬似乱数列としては、例えば、M系列やGOLD系列を用いても良い。
(例3)埋め込み情報911がnbitから構成される情報である場合、埋め込み系列913は、例えば、そのnbitの情報をmbit毎に分割したシンボル毎に擬似乱数列を用いてスペクトル拡散した数値列を多重化したものとして計算されても良い。すなわち、下記のような手順で行われても良い。
図14は、本発明の第1の実施の形態における埋め込み系列生成部の詳細な動作のフローチャートである。
ステップ201) nbitの埋め込み情報911を複数のシンボルS1,S2,…,Skに分割する。このとき全てのシンボルが同じmbitずつであっても良いし、各シンボルが異なるビット数分の情報を表現していても良い。
ここで、「シンボル」とは、それぞれ埋め込み情報のうちの一部分の情報を表し、実際の電子透かし埋め込みの処理単位となる情報であり、例えば、埋め込み情報911が64bit長の二進数値で与えられたとき、図15に示すように12bitずつの情報に区切って12bitの情報の各々がシンボルとするようにされていても良い。あるいは1シンボルで1bitの情報を表すようにされていても良い。図15の例のように埋め込み情報911の長さ(ここでは64bit)が各シンボルの長さ(12bit)で割り切れない場合は、一部のシンボル(ここでは最後のシンボル)の一部のbitを固定の値(ここでは値0)でpaddingするようにしても良い。
ステップ202) ステップ201で得られた各シンボルに対してスペクトル拡散処理を行い、各シンボルに対応した拡散系列P1,…,Pkを生成する。
スペクトル拡散の方法としては、例えば次のような方法がある。
例えば、1シンボルが1bitの情報を表現している場合には、各シンボルS1,…,Skに対して、それぞれ{1,−1}の値をとる計k通りのPN系列PN1=(pn11,pn12,…,),…PNk=(pnk1,pnk2,…)を生成し、シンボルiに対して、シンボルの値がビット1を表す場合はPNiを、シンボルの値がビット0を表す場合は−PNiを拡散系列Piとして用いるようにしても良い。
また、例えば、1シンボルが12bitの情報を表現している場合には、各シンボルに対してそれぞれ4096通りのPN系列PN(1,0),…,PN(1,4095),PN(2,0),…,PN(k,4095)を用意し、シンボルiに対して、シンボルiの値が12bitで整数値xを表す場合にPN(i,x)を拡散系列Piとして用いるようにしても良い。
また、PN系列(擬似乱数列)としては例えばM系列やGOLD系列を用いても良い。
ステップ203) 拡散系列Piから埋め込み系列wを下記のように計算する。
例えば、上記のステップ202で後者の例の場合は以下のようになる。
を乗じているのは、系列各要素の標準偏差が1になるようにするためであるが、後の計算において埋め込み強度が適切に制御されていれば必ならずしも
(例4) 埋め込み情報911がnbitから構成される情報である場合、埋め込み系列913は、例えば、そのnbitの情報をm倍の長さに擬似乱数を用いて直接スペクトル拡散したものとして計算されても良い。すなわち、下記のような手順で行われても良い。
1) nbitの埋め込み情報911をb0,b1.b2,…,bnとし、各bitをm回ずつ繰り返した系列Sを得る。但し、各bitbiは+1、−1のいずれかの値をとるものとする。
2) Sを{+1,−1}をとる擬似乱数列PN={PN
1,PN
2,…,PN
mn}で拡散し、埋め込み系列wを求める。すなわち、w={w
1,w
2,…,w
mn}とするとき、
w
1=b
0PN
1 b
0PN
2 …b
0PN
m (45)
(1bit目がb
0×PN
1,2bit目がb
0×PN
1…であることを表す。以下同様)
w
2=b
1PN
m+1 b
1PN
m+2 …b
1PN
2m
・
w
mn=b
nPN
(m-1)n+1 b
nPN
(m-1)n+2 …b
nPN
mn
これらのような埋め込み系列の生成方法については「中村高雄、片山淳、山室雅司、曽根原登"カメラ付き携帯電話機を用いたアナログ画像からの高速電子透かし検出方式"、信学論D-II, Vol. J87-D-II, No.12, pp. 2145-2155, 2004」にも述べられている。
<電子透かし埋め込み装置−複素配列生成部>
埋め込み複素パターン生成部110aの複素配列生成部112では、次のような処理により複素パターン921を生成する。
複素パターン生成部110aの複素配列生成部112の動作を以下に示す。
図16は、本発明の第1の実施の形態における複素配列生成部の動作のフローチャートである。
ステップ301) 全ての要素の値が0である、大きさM1×M2×…MN−1のN−1次元複素数配列を用意する。但し、M1,M2,…,MN−1は、予め定められた要素数である。
ステップ302) 埋め込み系列913から順に2つずつ値を取り出し、ステップ301で用意した配列の位置(0,0,…,0)から順に、取り出した値がその要素値の実部、虚部になるように配列に値を設定する。すなわち、複素配列がA[p1,p2,…,pN−1](pn≧0)、埋め込み系列913がw1,w2,…,wLと表されているとき、
A[0,0,…,0]=w1+jw2
A[1,0,…,0]=w3+jw4 (46)
但し、jは虚数単位とする。
図17にこの様子を示す。但し、図17は2次元の複素配列の場合の例を示している。
ステップ303) 上記のステップ302で生成された複素配列を埋め込み複素パターン921として出力する。
このように、N−1次元の埋め込み複素パターン921を、擬似乱数を用いて作られた埋め込み系列913に基づいた複素数の配列として生成することで、埋め込み複素パターン921の各要素の値は複素数空間に広がって分布するように決定される。この結果、後述する時間変調の結果得られる埋め込みパターン922における位相がN−1次元空間上の位置によって異なるように拡散され、電子透かしの検出時に埋め込み前信号912に起因して現れるノイズ成分の大きさがより小さくなる。
また、上記のステップ302の手順に先立ち、埋め込み系列913の順序を擬似乱数を用いて、ランダムな順序に入れ替えておいても良い。これにより、埋め込まれている情報の不正な解析や、書き換えなどの攻撃を困難にさせることができると共に、インタリーブ符号化としての効果を持ち、埋め込み済み信号923に対する局所的な耐性の不均衡を防ぐことに寄与する。その場合、順序の入れ替えに使用する擬似乱数の種の値を電子透かし埋め込みの鍵として与え、同一の鍵を電子透かしの検出時に使用することになる。
また、埋め込み系列913の上で順序の入れ替えを行う代わりに、ステップ302で得られた複素配列の要素を入れ替えるようにしても構わない。
<電子透かし埋め込み装置−時間変調部>
以下に時間変調部130の動作の詳細を説明する。
図18は、本発明の第1の実施の形態における時間変調部の構成例である。
時間変調部130aは、周期信号生成部131、変調部132、加算部133から構成され、埋め込み複素パターン921を入力し、埋め込みパターン922を出力する。
時間変調部130aによる埋め込みパターン922の生成処理は以下の手順で実施される。
図19は、本発明の第1の実施の形態における時間変調部の動作のフローチャートである。
ステップ401) 周期信号生成部131において、同一の基本周波数を持ち直交する2つの周期信号を生成する。例えば、1つの周期信号を基にそれぞれ位相が90°、すなわち1/4周期分異なるように2つの周期信号を生成しても良い。生成する周期信号の例については後述する。
ステップ402) 変調部132において、入力された埋め込み複素パターン921の実部、虚部をステップ401で生成された2つの周期信号によってそれぞれ時間方向に変調する。変調の具体例については後述する。
ステップ403) 加算部133において、変調部132において変調された2つのN次元信号を加算し、埋め込みパターン922を取得し、第2の記憶部160に格納する。
ステップ401で生成される周期信号の例を説明する。
周期信号生成部131で生成される周期信号は、図4A〜Cに示すように、(図4A)(a)正弦波、(図4B)(b)三角波、(図4C)(c)矩形波であり、各信号を0≦t<T(Tは信号の周期)の範囲で式で表すと下記のようになる。
これらの周期信号の詳細については既に述べたとおりである。
次に、変調部132における変調は、N−1次元の複素パターン921の各位置毎の値の実部、虚部の値で、周期信号生成部131で生成された周期信号を搬送波として、AM変調することで、N次元のパターンに変換することで行われる。
すなわち、具体的には、例えば、次のように行われる。
今、N−1次元の複素パターンがP(x1,x2,…,xN−1)で表されているものとする。このとき、Pの実部、虚部をPr,Piで表すものとし、
P(x1,x2,…,xN-1)=Pr(x1,x2,…,xN-1)+j・Pi(x1,x2,…,xN-1)
(47)
とする。但し、jは虚数単位である。
周期信号生成部131において2つの周期信号fr(t)、fi(t)が生成されたものとする。ここでは、frとfiは同一の周期信号を元に位相が90°異なるように生成された場合を例にとり、
fi(t)=fr(t−T/4) (48)
とする。Tは周期信号の周期である。
Pr,Piをそれぞれfr(t)、fi(t)で変調し、次式でN次元のパターンWr,Wiを得る。
Wr(x1,x2,…,xN−1,t)=Pr(x1,x2,…,xN−1)×fr(t)
(49)
Wi(x1,x2,…,xN−1,t)=Pi(x1,x2,…,xN−1)×fi(t)
(50)
上記のステップ403において、このWr,Wiを加算し、埋め込みパターン922として下記のN次元信号Wを得る。
W(x1,x2,…,xN−1,t)=Wr(x1,x2,…,xN−1,t)
+Wi(x1,x2,…,xN−1,t)(51)
下記にN=3の映像信号に対し、周期信号として正弦波を用いた場合の例を示す。
fr(t)=cosωt (52)
fi(t)=sinωt (53)
とすると、
W(x,y,t)=Pr(x,y)cosωt+Pi(x,y)sinωt (54)
となる。但し、ωは周期Tに対応する角速度で、ω=2π/Tである。
これらの計算を、2つの周期信号を表す関数として複素関数
f(t)=ejωt=cosωt+jsinωt
を用いて次のように行っても構わないことは言うまでもない。
<電子透かし埋め込み装置−埋め込みパターン重畳部>
以下に、埋め込みパターン重畳部140の動作の詳細を説明する。
埋め込みパターン重畳部140では、埋め込み前信号912として入力されたN次元信号に対し、時間変調部130aで生成され、第2の記憶部160に格納されているN次元の埋め込みパターン922を加算することで重畳し、重畳した結果のN次元信号を埋め込み済信号923として出力する。
埋め込み強度)埋め込みパターン922を加算する際に、所定の強度パラメータαによって強調して埋め込むようにされていても良い。すなわち、N次元の埋め込み前信号912をI(x1,x2,…,xN−1,t)、埋め込みパターン922をW(x1,x2,…,xN−1,t)とするとき、埋め込み済み信号923I'(x1,x2,…,xN−1,t)を、
I'(x1,x2,…,xN−1,t)=I(x1,x2,…,xN−1,t)
+α・W(x1,x2,…,xN−1,t) (56)
のように求める。
強度パラメータαは、埋め込み前信号912全体や、埋め込み前信号912のうち演算の対象とする部位から算出される特徴量に応じて変化するように構成されていても構わない。例えば、埋め込み前信号912が映像信号である場合に、フレーム画像のテクスチャ領域や動きの激しい領域などの加算された埋め込みパターンが目立ちにくい部位については強く(すなわち、αが大きな値を取るように)、フレーム画像の平坦な領域や、ゆっくりとした統一的な動きの領域など目立ちやすい部位については弱く(すなわちαが小さな値を取るように)埋め込みが行われるように構成されていても構わない。
埋め込みパターンの繰り返し)埋め込みパターンの重畳の際、埋め込み前信号912の大きさが埋め込みパターン922の大きさよりも大きい場合は、埋め込みパターン922を繰り返すように加算しても良い。
埋め込み前信号912の大きさが埋め込みパターン922の大きさよりも大きい場合の例としては、例えば次のようなものがある。
1)埋め込み前信号912が映像信号である場合において、埋め込み前信号912の時間方向の長さ(フレーム数)が埋め込みパターン922の時間方向の長さよりも長い場合、図20のように、埋め込みパターン922を複数回繰り返すようにしても良い。
2)埋め込み前信号912が映像信号である場合において、埋め込み前信号912のフレーム画像の大きさ(画角)が埋め込みパターン922の大きさ(画角)よりも大きい場合、図21のように、埋め込みパターン922を縦横にタイル状に敷き詰めるように加算しても良い。
埋め込みパターンの拡大) また、埋め込みパターンの重畳に先立ち、埋め込みパターン922を任意の大きさ、もしくは埋め込み前信号912の大きさに揃うように拡大するようにしても良い。図22に例を示す。図22では、2倍に拡大する例と埋め込み前信号912の大きさに合わせて拡大する例を示したが、この他の大きさに拡大されても良いことは言うまでもない。
拡大にはどのようなアルゴリズムを用いても構わない。図22のように、拡大された1ブロックに一つの値が対応するようにし、拡大後のブロックを全て同じ値にするようにしても良いし、線形補完やバイキュービックなどの公知の補間手法を用いるようにしても良い。
図22では、埋め込み前信号912が映像信号である場合に、フレーム画像を単位に空間方向に拡大する例を示しているが、時間方向にも拡大を行うようになされていても構わないことは言うまでもない。
特徴量への埋め込み) また、埋め込み前信号912に埋め込みパターン922を重畳する際、埋め込み前信号912の信号値に直接埋め込みパターン922の値を加算する代わりに、埋め込み前信号912の所定の特徴量が埋め込みパターン922の値、もしくはそのスカラー倍だけ変更されるように埋め込み前信号912を変更することによって重畳を行っても良い。
上記の特徴量の例としては、例えば、埋め込み前信号912の信号値や、ブロック毎の信号値の平均値などがある。埋め込み前信号912が映像信号や画像信号の場合には、例えば、映像、画像の画素の輝度値や色差、RGBの色信号値などを用いても良い。
<電子透かし検出装置>
図10に示す電子透かし検出装置200は、時間復調部210、検出情報抽出部220、パターン記憶部250から構成され、埋め込み済み信号923を入力し、検出情報914を出力する。
以下に、電子透かし検出装置200の動作を説明する。
図23は、本発明の第1の実施の形態における電子透かし検出装置の動作のフローチャートである。
ステップ501) 時間復調部210において、入力された埋め込み済み信号923に基づいて時間軸方向の復調を行い、検出複素パターン961を取得し、パターン記憶部250に格納する。検出複素パターン961は、複素数から構成されるN−1次元パターンである。時間復調部210の動作の詳細については後述する。
なお、時間復調部210による時間復調処理に先立ち、埋め込み済み信号923に対して前処理によって例えば幾何変形補正、ノイズ除去、フィルタリング、ブロック重畳、ブロック化などの処理を行っても良い。これらの例については後述する。
ステップ502) 検出情報抽出部220において、時間復調部210で得られ、パターン記憶部250に格納されている検出複素パターン961を解析し、電子透かし埋め込み装置100で埋め込まれた電子透かし情報を抽出し、検出情報914として出力する。
検出情報抽出部220の動作の詳細については後述する。
なお、検出情報抽出部220による検出情報抽出処理に先立ち、検出複素パターン961に対して前処理によって例えばN−1次元空間での幾何変形補正、ノイズ除去、フィルタリング、ブロック重畳、ブロック化などの処理を行ってもよい。これらの例については後述する。
<埋め込み済み信号に対する前処理>
以下に、電子透かし検出装置200における埋め込み済み信号923に対する前処理の例を示す。
幾何変形補正) 電子透かし埋め込み装置100において電子透かしの埋め込まれた埋め込み済み信号923に対し、拡大、縮小、回転、平行移動、アスペクト比変更、射影変換などの幾何変形が加えられた場合、そのままでは電子透かしの検出が困難となる場合があるため、これを補正する前処理を行っても良い。
幾何変形補正は、例えば、文献「Csurka, G., Deguillaume, F., Ruanaidh, J.J. K. O, and Pun, T.,"A Bayesian Approach to Affine Transformation Resistant Image and Video Watermarking," Information Hiding, Proceedings Lecture Notes in Computer Science 1768, pp. 270-285, Springer-Verlag (2000)」に示されているように、電子透かしの情報とは別に、幾何的な補正を行うための信号を信号に埋め込んでおき、これを検出することで信号に加えられた改変の程度を推定し、信号に対して推定された改変の逆変換を施すことで補正しても良い。また、例えば、文献「Honsinger, C., "Data Embedding using Phase Dispersion, "IEE Seminar on Secure Images and Image Authentication (Ref. No. 2000/039), pp.5/1-5/7 (2000)」に示されているように、電子透かしとして埋め込む情報を有する埋め込みパターンそのものに、繰り返しを持つ周期的なパターンを用い、検出時に自己相関関数からその周期の変化を観測することによって拡大・縮小率を算出し、得られた拡大・縮小率に基づき改変の逆変換を施すことで補正しても良い。また、例えば、対象とする信号が画像や映像の場合に、文献「片山淳、中村高雄、山室雅司、曽根原登、"電子透かし読み取りのためのiアプリ高速コーナ検出アルゴリズム"、信学論D=II, Vol. J88-D-II, No.6, pp.1035-1046,2005」に示されているような方法で画像内の矩形領域を抽出し、そこに電子透かしが埋め込まれているものとして幾何補正を行うようにされていても良い。
フィルタ処理) 電子透かしの埋め込まれた埋め込み済み信号923に対し、ノイズが付加されている場合にノイズを除去するフィルタ処理や、電子透かしの信号成分を残しつつ元の埋め込み前信号の成分を除去できるようなフィルタ処理を加えても良い。
ブロック重畳) 電子透かし埋め込み装置100において、埋め込み前信号912の大きさが埋め込みパターン922の大きさよりも大きい場合に、埋め込みパターン重畳部140において埋め込みパターン922を繰り返すように加算されている場合は、埋め込み済み信号923を繰り返されたパターンの部位毎に切り分け、それらを一つに重畳加算して1つのブロックにまとめるようなブロック重畳処理を施しても良い。
ブロック化) 電子透かし埋め込み装置100において、埋め込み前信号912の大きさが埋め込みパターン922の大きさよりも大きい場合に、埋め込みパターン重畳部140において、埋め込みパターン922を拡大するようにされている場合は、埋め込み済み信号923を縮小した後に電子透かしの検出を行うようにされていても良い。
特徴量からの検出) 電子透かし埋め込み装置100において、埋め込み前信号912に埋め込みパターン922を重畳する際、埋め込み前信号912の所定の特徴量が埋め込みパターン922の値、もしくはスカラー倍だけ変更されるように埋め込み前信号912を変更することによって重畳を行うようにされている場合には、埋め込み済み信号923から所定の特徴量を算出したものに基づいて電子透かしの検出を行うようにしても良い。
例えば、図24のように、埋め込み済み信号923−1をブロック毎に切り分け、各ブロックの特徴量を算出して特徴量の列を構成するようにし、これから電子透かしを検出するようにしても良い。特徴量の例としては、例えばブロック内の信号値の平均値を用いても良い。また、信号が映像信号や画像信号の場合には、例えば、映像、画像の画素の輝度値や色差、RGBの色信号値などを用いても良い。
これら例にあげた前処理を、検出情報抽出部220での検出情報抽出処理の前処理として、検出複素パターン961に対して行うようにしてもよい。特に、幾何変形補正について、映像信号においてN次元目の軸が時間方向である場合、埋め込み済み信号923に対する前処理として時間方向の伸縮を補正し、検出複素パターン961に対する前処理として空間方向の幾何変形補正を行うことで、効率的かつ精度よく空間的な幾何変形補正を行うことが可能である。
<電子透かし検出装置−時間復調部>
以下に、時間復調部210の動作の詳細を説明する。
図25は、本発明の第1の実施の形態における時間復調部の構成例を示す。
同図に示す時間復調部210は、周期信号生成部211、復調部212、複素パターン構成部213から構成され、埋め込み済み信号923を入力し、検出複素パターン961を出力する。
なお、図25においては、図18との対応の理解を容易にするため、下から上に情報が流れるように構成が記載されていることに注意されたい。
時間復調部210による埋め込み済み信号923の復調処理は以下の手順で実施される。
図26は、本発明の第1の実施の形態における時間復調部の動作のフローチャートである。
ステップ601) 周期信号生成部211において、同一の基本周波数を持ち直交する2つの周期信号を生成する。例えば、一つの周期信号を基にそれぞれ位相が90°、すなわち、1/4周期分異なるように2つの周期信号を生成しても良い。生成する周期信号は前述の電子透かし埋め込み装置100における時間変調部130aの備える周期信号生成部131に対応するものである。周期信号の例については既に述べたとおりである。
ステップ602) 復調部212において、入力された埋め込み済み信号923の時間方向成分を基にステップ601で生成された2つの周期信号のそれぞれで復調し、2つのN−1次元信号を得る。復調の具体例については後述する。
ステップ603) 複素パターン構成部213において、復調部212において復調された2つのN−1次元信号が、それぞれ実部、虚部となるようにした複素数のN−1次元パターンである検出複素パターン961を得る。
具体的には、2つのN−1次元信号をそれぞれQr(x1,x2,…xN−1),Qi(x1,x2,…xN−1)とするとき、検出複素パターン961をQ(x1,x2,…xN−1)として、
Q(x1,x2,…xN−1)=Qr(x1,x2,…xN−1)
+jQi(x1,x2,…xN−1) (57)
で求める。但し、jは虚数単位である。
ここで、時間復調の具体例を説明する。
復調部212における復調は、N次元の埋め込み済み信号923の、周期信号生成部211で生成された周期信号の位相を求めることで行われる。特に下記のように二つの周期信号に対してそれらの成分の大きさを求めることで、周期信号の位相を容易に測定することができる。
すなわち、具体的には例えば次のように行われる。
以下、N次元の埋め込み済み信号923がI"(x1,x2,…,xN−1,t)で表されているものとする。
また、周期信号生成部211において2つの周期信号fr(t)、fi(t)が生成されたものとする。ここでは、frとfiは同一の周期信号を基に位相が90°異なるように生成された場合を例にとり、
fi(t)=fr(t−T/4) (58)
とする。
I"をfr(t)、fi(t)で復調し、次式で二つのN−1次元信号Qr(x1,x2,…,xN−1),Qi(x1,x2,…,xN−1,t)を得る。
ここで、t
1,t
2は埋め込み済み信号923のうち検出の対象とする区間のそれぞれ開始点及び終了点である。例えば、入力された埋め込み済み信号923の全てを検出対象とするように、t
1=−∞,t
2=∞としても良いし、入力された埋め込み済み信号923のn周期分を取り出すようにt
1=0,t
2=nT(但し、Tは周期信号生成部211で生成される周期信号の周期)としても良い。
また、埋め込み済み信号923が離散信号として得られている場合には、次のような積和計算によって2つのN−1次元信号Qr,Qiを求めても良い。
また、例えば、映像信号等において、携帯電話等の低性能のプロセッサを用いて再撮影された映像から電子透かしを検出する場合は、撮影のフレームレートが安定せずにサンプリングのタイミングが微小にずれる場合もある。このような場合は離散的に得られた信号I"(x
1,x
2,…,x
N−1,1),I"(x
1,x
2,…,x
N−1,2),…,I"(x
1,x
2,…,x
N−1,n)に対して、それぞれの信号の検出時刻t
1,t
2,…,t
nを用いて次のようにi番目のサンプルに対してi番目の測定時刻における周期関数の値f(t
i)との積を元に積和計算することで、不安定なフレームレートを補正し、計算結果の精度を保つことができる。
また、スクリーンやTVなどに表示された映像がビデオカメラや携帯電話等のカメラで撮影された場合、再生のフレームレートと撮影のフレームレートに関する情報が得られている場合が殆どであり、それを用いてt
iを求めれば、離散的に得られた信号I"(x
1,x
2,…,x
N−1,1),I"(x
1,x
2,…,x
N−1,2),…,I"(x
1,x
2,…,x
N−1,n)に対して、次のように計算することができる。
次に、差分・微分を用いた時間復調について説明する。上記の代わりに、埋め込み済み信号923I"(x1,x2,…,xN−1,t)のt軸方向の差分もしくは微分を用いて復調するようにしても良い。このような時間復調部310の構成例を図27に示す。
図27に示す時間復調部210bは、図25の時間復調部210aと略同様の構成を持っており、埋め込み済み信号923が一旦信号微分部215に入力された後に、復調部212に入力されるように構成されている点が異なる。
信号微分部215では、入力された埋め込み済み信号923に対し、N次元目の軸、すなわち、t軸方向の差分もしくは微分を計算し、復調部212に出力するようにされている。
例えば、映像信号などを考えた場合、信号のフレーム間の相関が大きいことが知られている。2つのフレームの時間間隔が短いほどフレーム間の相関は高いことから、フレーム間差分や微分値を計算すると、周期信号による相殺分以上に原画成分が大きくキャンセルされ、電子透かしのエネルギーが相対的に増大することになり、このような差分値、微分値から復調することで電子透かしの検出が容易になり、検出精度が向上するという利点がある。逆に、より弱い電子透かしの埋め込みであっても同程度の検出性能を保つことができるため、信号の劣化のより少ない電子透かしの埋め込みが可能である。
<電子透かし検出装置−検出情報抽出部>
次に、検出情報抽出部220について詳細に説明する。
図28は、本発明の第1の実施の形態における検出情報抽出部の構成例を示す。
検出情報抽出部220aは、検出系列抽出部221、相関値計算部222、最大値判定部223、検出情報再構成部224から構成され、パターン記憶部250から検出複素パターン961を入力し、検出情報914を出力する。
なお、図28においては、図12との対応の理解を容易にするため、下から上に情報が流れるように構成が記載されていることに注意されたい。
検出情報抽出部220aによる検出情報抽出処理は、以下の手順で実施される。
図29は、本発明の第1の実施の形態における検出情報抽出部の動作のフローチャートである。
ステップ701) 検出系列抽出部221において、入力された検出複素パターン961から得られる複素数値から、実部、虚部の値を取り出して並べた検出系列1113を構成する。検出系列抽出部221の動作の詳細については後述する。
ステップ702) 相関値計算部222において、検出系列抽出部221で構成された検出系列1113と想定される埋め込み系列に基づいて構成された埋め込み系列との相関を計算し、相関値1114を求める。
埋め込み系列の種類によって異なる値が埋め込まれている場合には、考えられる複数の埋め込み系列に基づいて構成された複数の埋め込み系列との相関をそれぞれ計算し、対応する相関値1114を求める。相関値計算部222の動作の詳細については後述する。
ステップ703) 最大値判定部223において、相関値計算部222で得られた相関値1114が最大となるものを見つけ、最大となる相関値1114に対応する相関値計算部222での相関計算で用いられた埋め込み系列を決定する。
なお、電子透かし埋め込み装置100における埋め込み系列の構成方法によっては、最大値判定部223による最大値判定の代わりに、他の方法で判定を行うようにされていても良い。
最大値判定部223の動作の詳細及び、代替となる他の方法の詳細については後述する。
ステップ704) 検出情報再構成部224において、最大値判定部223で決定された埋め込み系列に基づき、実際に埋め込まれていたと判断する検出情報914を再構成する。なお、検出情報再構成部224の動作の詳細については後述する。
<電子透かし検出装置−検出情報抽出部−検出系列抽出部>
次に、上記の検出系列抽出部221の詳細について説明する。
検出系列抽出部221は、電子透かし埋め込み装置100の複素パターン生成部110aにおける複素配列生成部112に対応する検出側の機能を司り、検出複素パターン961から得られる複素数値から検出系列1113を構成する。
検出系列抽出部221での処理は以下の手順で実施される。
図30は、本発明の第1の実施の形態における検出系列抽出部の詳細な動作のフローチャートである。
ステップ801) 検出複素パターン961から大きさM1×M2×…×MN−1のN−1次元の複素配列を構成し、メモリ(図示せず)に格納する。但し、M1,M2,…,MN−1は電子透かし埋め込み装置100の複素配列生成部112で用いたのと同様の要素数である。
検出複素パターン961が離散信号として得られている場合はそれをそのままN−1次元の複素配列であると見做す。検出複素パターン961が連続信号として得られている場合は、検出複素パターン961を任意の標本化手段を用いて標本化したものをN−1次元複素配列として用いる。
ステップ802) メモリ(図示せず)からステップ801で得られた複素配列から複素数値を順に一つずつ取り出し、取り出した複素数値の実部、虚部をそれぞれ単独の実数値としてみて並べる。即ち、複素配列がA[p1,p2,…,pN−1](pn≧0)、検出系列1114が、i"1,i"2,…,i"Lと表されているとき、
は、複素数のそれぞれ実部、虚部を取り出す演算である。である。
これは、電子透かし埋め込み装置100の複素配列生成部112の生成と対称的な処理である。
ステップ803) 得られたi"1,i"2,…,i"Lを、検出系列1113として出力する。また、電子透かし埋め込み装置100の複素配列生成部112において、複素配列の構成に先立ち、埋め込み系列913の順序を擬似乱数を用いてランダムな順序に入れ替えられて埋め込みがなされた場合には、当該ステップ803に先立ち、検出系列1113の順序を、擬似乱数を用いて、複素配列生成部112のときと逆に入れ替えることにより、埋め込み系列913と対応のつく順序に戻す。その場合、順序の入れ替えに使用する擬似乱数の種の値は、電子透かし検出の鍵として、電子透かしの埋め込み時に用いられたのと同一の鍵を与える。
また、電子透かし埋め込み装置100の複素配列生成部112において、埋め込み系列913の上で順序の入れ替えを行う代わりに、得られた複素配列の要素を入れ替えることで行っている場合は、ステップ802に先立って、ステップ801で構成した複素配列の要素を複素配列生成部112のときと逆に入れ替えることで戻すようにしても良い。
<電子透かし検出装置−検出情報抽出部−相関値計算部>
次に、検出情報抽出部220aの相関値計算部222の動作の詳細について説明する。
相関値計算部222における相関値計算処理は、以下の手順で実施される。
1) 相関値計算部222は、電子透かし埋め込み装置100の埋め込み系列生成部111と同様の手順により、考えられる埋め込み系列w(1),w(2),…を生成する。
ここで、考えられる埋め込み系列とは埋め込まれている可能性のある全ての埋め込み系列であり、埋め込み系列生成部111での埋め込み系列の生成に応じて、例えば次のように決めることができる。
(例1)例えば、埋め込み系列生成部111の(例1)のように埋め込み系列が生成されている場合には、考えられる埋め込み系列は、
w=PN={PN1,PN2,…,PNL} (69)
1通りである。
(例2)例えば埋め込み系列生成部111の(例2)のように埋め込み系列が生成されている場合には、考えられる埋め込み系列は、
w(1)=PN={PN1,PN2,…,PNL} (70)
w(2)=−PN={−PN1,−PN2,…,−PNL} (71)
の2通りである。
(例3)例えば、埋め込み系列生成部111の(例3)で、各シンボルが1bitの情報を表現している例のように埋め込み系列が生成されている場合には、考えられる埋め込み系列は各シンボルiに対して
w(i,1)=PNi={pni1,pni2,…,pniL} (72)
w(i,2)=−PNi={−pni1,−pni2,…,−pniL} (73)
の2通りである。
また、埋め込み系列生成部111の(例3)で、各シンボルが12ビットの情報を表現している例のように埋め込み系列が生成されている場合には、考えられる埋め込み系列は各シンボルiに対して、
w(i,1)=PN(i,0) (74)
w(i,2)=PN(i,1)
・
・
w(i,4096)=PN(i,4095)
の4096通りである。
(例4)例えば、埋め込み系列生成部111の(例4)の例のように埋め込み系列が生成されている場合には、単純に全ての場合を網羅すると考えられる埋め込み系列は2n通りとなる。後の相関計算において、検出系列1113をm個ずつ分割し、一つのbitbiに対して次の2通りの埋め込み系列との相関を分割した検出系列1113とので相関計算を行うようにしても良い。
このような方法は、前述の文献「中村高雄、片山淳、山室雅司、曽根原登"カメラ付き携帯電話機を用いたアナログ画像からの高速電子透かし検出方式"、信学論D-II, Vol. J87-D-II, No.12, pp. 2145-2155, 2004」にも記載されている。
2) 検出系列抽出部221で得られた検出系列1113と上記の1)で得られた各埋め込み系列w(1),w(2),…との相関をそれぞれ計算する。
相関計算は、例えば、特許文献1や、文献「中村高雄、小川宏、富岡淳樹、高嶋洋一"電子透かしに置ける平行移動・切り取り耐性向上の一手法"、1999年暗号と情報セキュリティシンポジウム、SCIS99-W3-2.1, pp. 193-198, 1999」に示されているような電子透かしの検出で行われるものと同様であり、例えば、次式のような積和演算によって求められる。ここで、ρ(j)を求めたい相関値、i"={i"1,i"2,…,i"L}を検出系列1113、w(j)={w(j) 1,w(j) 2,…,w(j) L}を今対象としている埋め込み系列とする。
但し、"・"は数列をベクトルと見たときの内積演算である。
また、前述の文献「中村高雄、片山淳、山室雅司、曽根原登"カメラ付き携帯電話機を用いたアナログ画像からの高速電子透かし検出方式"、信学論D-II, Vol. J87-D-II, No.12, pp. 2145-2155, 2004」にあるような検出信頼性の評価基準を揃えるため、例えば、i"及びw(j)の各要素を予め平均0、分散1となるように正規化しておき、以下のように相関値計算で定数項を乗じて演算を行っても構わない。
<電子透かし検出装置−検出情報抽出部−最大値判定部>
次に、検出情報抽出部220aの最大値判定部223について詳細に説明する。
最大値判定部223における処理は以下の手順で実施される。
1)相関値計算部222で得られた相関値1114、ρ(1),ρ(2),…から、値が最大となる相関値ρ(j)を見つける。
2) ρ(max)に対応する埋め込み系列w(max)を得る。
また、最大の相関値ρ(max)が所定の閾値を越えているかどうかを判断し、所定の閾値を越えていない場合には電子透かしが埋め込まれていなかったものと判断するようにしても良い。
以下に、最大値判定部223の代替となる動作について説明する。
最大値判定部223による最大値判定の代わりに、相関値計算部222ですべての埋め込み系列w(1),w(2),…に対して相関を計算せずに、埋め込み系列w(1)から順に相関を計算し、得られた相関値が所定の閾値を越えているかどうかで判定し、閾値を越えた埋め込み系列をw(max)として、その時点で相関計算を終了するようにされていても良い。
また、電子透かし埋め込み装置100における埋め込み系列が、例えば、埋め込み系列生成部111の(例1)で示したような、1通りの埋め込み系列だけで構成されて埋め込まれている場合には、相関値は一つだけが計算されるため、最大値判定部223による最大値判定には意味がない。代わりに得られた相関値が所定の閾値を越えているかどうかで判定をするようにされていても良い。
また、電子透かし埋め込み装置100における埋め込み系列が、例えば、埋め込み系列生成部111の(例2)で示したような、1通りの埋め込み系列の正負の違いで構成されて埋め込まれている場合には、符号の逆転した相関値が計算されるため、相関値計算部222での相関計算は一方の埋め込み系列についてのみ行い、最大値判定部223による最大値判定の代わりに、得られた相関値の符号で埋め込まれていた値を判定するようにされていても良い。また、得られた相関値の絶対値が所定の閾値を越えているかどうかで判定をするようにされていても良い。
また、相関値の大きさで透かし検出の信頼度を評価するようにしても良い。
<電子透かし検出装置−検出情報抽出部−検出情報再構成部>
次に、検出情報抽出部220aの検出情報再構成部224について詳細に説明する。
検出情報再構成部224における処理は以下の手順で実施される。
1) 最大値判定部223によって得られた埋め込み系列w(max)から、電子透かし埋め込み装置100の埋め込み系列生成部111での埋め込み系列生成方法に応じて対応する埋め込み情報の値を検出情報として構成する。例えば、埋め込み系列913をスペクトル拡散する形で構成されている場合は、w(max)を逆スペクトル拡散する形で検出情報を再構成する。
(例1) 例えば、埋め込み系列生成部111の(例1)のように、埋め込み系列が生成されている場合には、電子透かしが埋め込まれていたか否か、という情報自体が検出情報となる。
(例2) 例えば、埋め込み系列生成部111の(例2)のように、埋め込み系列が生成されている場合には、w(max)=PNであれば検出情報はビット値1、w(max)=−PNであれば検出情報はビット値0となる。
(例3) 例えば、埋め込み系列生成部111の(例3)で、各シンボルが1bitの情報を表現している例のように埋め込み系列が生成されている場合には、シンボルiに対して、w(max)=PNiであればシンボル値は1、w(max)=−PNiであればシンボル値は0となる。これを全てのシンボルに対して行い、得られたシンボル値を連結することで検出情報を得る。
また、埋め込み系列生成部111の(例3)で、各シンボルが12bitの情報を表現している例のように埋め込み系列が生成されている場合には、シンボルiに対して、w(max)=PN(i,x)であればシンボル値はxとなる。これを全てのシンボルに対して行い、得られたシンボル値を連結することで検出情報を得る。
(例4) 例えば、埋め込み系列生成部111の(例4)の例のように、埋め込み系列が生成されている場合には、ビットbiに対して
w(max)={+PNim+1,+PNim+2,…,+PNim+m}
であれば、ビット値+1、
w(max)={−PNim+1,−PNim+2,…,−PNim+m}
であれば、ビット値−1となる。これを全てのビットに対して行い、得られたビット値を連結することで検出情報914を得る。
2) 上記で得られた検出情報914を出力する。
<複素数へのその他の埋め込み方法>
次に、複素数へのその他の埋め込み方法について説明する。
上記の構成例では、電子透かし埋め込み装置100の複素配列生成部112において、埋め込み系列913から複素配列の要素値を設定する際、埋め込み系列913から取り出した値が要素値の実部、虚部になるようにした。また、これに対応して、電子透かし検出装置200の検出系列抽出部221において検出複素パターン961から検出系列1113を構成する際には、検出複素パターン961の複素数値の実部、虚部の値を取り出して並べることで検出系列1113を構成するようにした。
これらの例では、複素数の実部と虚部を利用するようにしたが、複素配列生成部112と検出系列抽出部221の動作が対応付けられていれば、これとは異なるように複素数値を使用しても構わない。
例えば、複素配列生成部112において、埋め込み系列913から取り出した値w1,w2とするとき、これを複素配列の要素値の偏角と絶対値となるように設定しても良い。この場合、検出系列抽出部221においては、検出複素パターン961の複素数値の偏角と絶対値を用いて検出系列1113を構成すれば良い。
また、例えば、埋め込み系列913から取り出した一つの値w1を一つの複素数値の偏角に対応させて埋め込んでも良い。このとき、複数数値の絶対値は、例えば、1に固定しても良い。例えば、埋め込み系列の値が+1、−1のいずれかをとるとき、複素数値の偏角をそれぞれπ/4、3π/4とするようにしても良い。この場合、検出系列抽出部221においては、検出複素パターン961の複素数値の偏角のみを用いて検出系列1113を構成すれば良い。このような構成方法をとった場合、複素配列を複素数の配列として計算する代わりに、偏角の値を表す実数値の配列として構成し、この値を用いて周期変数の位相を制御するように時間変調部130を構成しても良い。このような構成方法をとった場合、複素数の実部と虚部に値を設定するようにした場合と比較して、埋め込み系列の長さは半分になる。
また、例えば、w1、w2に対して、次のような式により複素配列の要素値pを決定しても良い。
p=aw1+bw2 (79)
ここで、a,bは
となる任意の複素数である。上記の(w
1,w
2)から複素数pへの変換が直交変換となるように、a,bを複素平面上で直交する、即ち、
となる複素数としても良い。ここで、*は複素共役を表し、
は、それぞれ複素数の実部、虚部を取り出す演算である。
この場合、検出系列抽出部221においては、検出複素パターン961の複素数qから上記の変換の逆変換を用いて検出系列1113の値i"1,i"2を求めれば良い。
また、例えば、埋め込み系列913から取り出した一つの値のw1の値に応じて、QAM変調のように複素平面上の点(例えば、
の4点)を選択するようにして、選択された点の複素数値を用いるようにしても良い。
<第1の実施の形態の特徴>
上記の本実施の形態には、以下に示す特徴がある。
ノイズ成分の削減) 本実施の形態の電子透かし埋め込み装置100及び電子透かし検出装置200によれば、電子透かしの埋め込みにおいて時間変調部130で周期信号によって変調して埋め込まれた電子透かしに対し、電子透かしの検出において時間復調部210で周期信号との積分計算を行って検出を行う。これにより、電子透かしにとってノイズとなる埋め込み前信号912やその後加えられたノイズ成分の分散が小さくなる。(これは、周期信号が1周期分積分をした値が0となるように決められていることによる)特に映像信号においては、近接する各フレーム間の相関が比較的高いことが知られており、周期信号と積分計算によって、周期内で時間方向の相関が高い成分が除去され、結果として埋め込み前信号912に起因する分散が劇的に小さくなる。
前述の文献「山本奏、中村高雄、高嶋陽一、片山淳、北原亮、宮武隆「フレーム重畳型動画像電子透かしの検出性能評価に関する一考察」情報科学技術フォーラムFIT2005, J-029, 2005」によると、スペクトル拡散と相関計算を利用した電子透かしの場合、電子透かしの偽陽性の意味での検出の信頼性を表す検出評価値は、埋め込み前信号の分散値が小さいほど検出評価値が大きくなる。(上記の式(3)、(4)で、分母のB,Cに含まれる
が小さいほど検出評価値の期待値E[ρ]が大きくなる)これは、相関値計算部222での相関計算において、i"に含まれるノイズ成分の分散が小さいほど信頼性の高い検出が可能となることを意味しており、本発明の電子透かし埋め込み装置及び電子透かし検出装置では検出の信頼性が高いことを表す。
また、N−1次元の埋め込み複素パターン921を、擬似乱数を用いて作られた埋め込み系列913に基づいた複素数配列として生成し、それを位相の90°異なる周期信号で変調することで、埋め込みパターン922の位相がN−1次元空間上で拡散されるようになり、電子透かしの検出時に埋め込み前信号912に起因して現れるノイズ成分の大きさがより小さくなる。結果、より信頼性の高い電子透かしの埋め込み、検出が可能となり、また従来と同程度の信頼性でより品質劣化の少ない電子透かしの埋め込み、検出が可能となる。
スペクトル拡散系列長増大) また、複素数のN−1次元パターンとして電子透かしの埋め込み系列を埋め込むことで、例えば、前述の文献「中村高雄、小川宏、富岡淳樹、高嶋洋一"電子透かしにおける平行移動・切り取り耐性向上の一手法"、1999年暗号と情報セキュリティシンポジウム、SCIS99-W3-2.1, pp. 193-198, 1999」のような静止画向けの電子透かしを繰り返し各フレームに埋め込む電子透かし方法と比較して、2倍のスペクトル拡散系列長を用いることができる。
前述の文献「山本奏、中村高雄、高嶋陽一、片山淳、北原亮、宮武隆「フレーム重畳型動画像電子透かしの検出性能評価に関する一考察」情報科学技術フォーラムFIT2005, J-029, 2005」によると、スペクトル拡散と相関計算を利用した電子透かしの場合、電子透かしの偽陽性の意味での検出の信頼性を表す検出評価値はスペクトル拡散の系列長の平方根に比例して大きくなる(上記の文献の式(3)、(4)でE[ρ]は、分子√lに比例している)これは、スペクトル拡散系列長が長くなれば、その分信頼性の高い検出が可能となることを意味しており、本発明の電子透かし埋め込み装置及び電子透かし検出装置では従来方式と比較して√2倍の検出評価値が得られ、検出の信頼性が高いことを表す。
また、従来と同程度の検出の信頼性が必要な場合であれば、スペクトル拡散系列長を2倍にする代わりに、それぞれ別々な情報を埋め込むことで、全体として埋め込み情報長を2倍にすることもできる。
N次元方向への変調) 時間変調部130において、N−1次元の空間にスペクトル拡散されたN−1次元の埋め込みパターンを、それと直交するN次元目の方向に周期信号を用いて変調しており、N次元目の方向に与えられる同期変位に対してN−1次元の空間では共通の影響を及ぼすようにしているという特徴を持つ。
また、N−1次元のパターンの埋め込み情報をN次元空間に広めた冗長性により、例えば、映像信号の場合に、高圧縮や再撮影などの改変に対しても十分な耐性があり、信号の一部(映像信号の場合例えば一部のフレーム)を改変された場合や、信号の一部を切り出した場合(映像信号の場合、例えば、一部のフレーム区間を抜き出した場合)にも電子透かしの検出が可能となり、これらの場合に対しても品質劣化を抑え、情報長の長い情報について電子透かしの検出ができる。
脆弱なフレーム発生の防止) また、時間変調部130では直交する、もしくは、位相の異なる2つの周期信号で変調した信号の和を埋め込みパターンとして用いている。もし一つの周期信号だけで変調した場合、例えば、映像信号への埋め込みの場合に、埋め込みパターンの全ての値が最低の映像信号量子化値未満になって実際には電子透かしの埋め込みがなされないフレームが発生する可能性がある。また、そのようなフレームを残し、実際に透かしの成分の振幅が大きく十分に埋め込まれているフレームを狙って改変することで電子透かしを削除する攻撃も可能となってしまう。本実施の形態の電子透かし埋め込み装置のように直交する、もしくは位相の異なる二つの周期信号で変調した信号の和を埋め込みパターンとして用いることで、最低の映像信号量子化値未満になって実際には電子透かしの埋め込みがなされないフレームが発生するのを防ぐことができ、電子透かしの伝送路としての映像信号を有効利用できると共に、電子透かしの振幅の大きいフレームを狙って改変するといった攻撃に対する耐性を増すことができる。
差分・微分からの検出の効果) また、時間復調部210として、図27の構成を用いれば、差分値、微分値から復調することで、周期信号による相殺分以上に原画成分が大きくキャンセルされ、電子透かしの検出が容易になり、検出精度が向上するという利点がある。逆に、より弱い電子透かしの埋め込みであっても同程度の検出性能を保つことができるため、信号の劣化のより少ない電子透かしの埋め込みが可能である。
同期の課題の解決) また、本実施の形態における電子透かし検出装置では、利用していないが、本実施の形態における電子透かし埋め込み装置では、後述する第4の実施の形態、第5の実施の形態で述べる電子透かし検出装置を用い、N−1次元の空間でスペクトル拡散された埋め込み系列がN次元目の方向で同期ずれに対して共通の影響を受けることを利用した、同期合わせの不要、もしくは容易かつ高速に同期合わせの可能な電子透かしを埋め込むことができるという特徴を持つ。
時間方向スケーリングへの耐性) また、本実施の形態における電子透かし埋め込み装置において、時間変調部130で用いる周期信号の周波数として、比較的低い周波数を用いるようにすれば、例えば、フレームレート変換やフレームドロップ、フレーム挿入などの時間方向の伸縮を伴う攻撃に対しても、ある程度の耐性のある電子透かし検出が可能である。
全体の効果) また、全体として電子透かしの検出の信頼度が高く、耐性が増していることから、従来と同程度の検出の信頼度や耐性を得るために必要な電子透かしの埋め込みの強度が小さくて済むため、電子透かしによる信号の品質劣化をより小さくすることができ、例えば、映像信号への埋め込みの場合に、電子透かし入り映像の画質を高くすることができる。
[第2の実施の形態]
<一次元FFT時間変調>
以下に、第2の実施の形態における電子透かし埋め込み装置及び電子透かし検出装置について説明する。
本実施の形態の電子透かし埋め込み装置及び電子透かし検出装置は、第1の実施の形態の電子透かし埋め込み装置及び電子透かし検出装置の時間変調、復調処理を、一次元フーリエ変換処理で実現した例である。
実施の形態の電子透かし埋め込み装置は、第1の実施の形態の電子透かし埋め込み装置100と同様の構成を持ち、時間変調部130のみが異なる構成を持っている。
また、本実施の形態の電子透かし検出装置は、第1の実施の形態の電子透かし検出装置200と同様の構成を持ち、時間復調部210のみが異なる構成を持っている。
<電子透かし埋め込み装置−時間変調部>
図31は、本発明の第2の実施の形態における電子透かし埋め込み装置における時間変調部の構成例を示す。同図に示す時間変調部130bは、一次元逆フーリエ変換部134を有する。一次元逆フーリエ変換部134は、埋め込み複素パターン921が入力され、埋め込みパターン922を出力する。
時間変調部130bによる埋め込みパターン922の生成処理は、一次元逆フーリエ変換部134において以下の手順で実施される。
図32は、本発明の第2の実施の形態における時間変調部の動作のフローチャートである。
ステップ901) 埋め込み複素パターン921の位置(x1,x2,…,xN−1)に対するP(x1,x2,…,xN−1)を、N次元目の軸(例えば時間軸)における特定の周波数に対するフーリエ係数であると見る。
ステップ902) ステップ901のフーリエ係数をN次元目の軸に対して離散逆フーリエ変換し、位置(x1,x2,…,xN−1)に対する一次元系列を得る。
ステップ903) ステップ902の一次元系列を各位置の値とするN次元パターンを埋め込みパターン922とする。
具体的に式を用いて以下に説明する。
埋め込み複素パターン921をP(x1,x2,…,xN−1)とする。
P(x1,x2,…,xN−1)を用いて次のように離散フーリエ係数パターンξ(x1,x2,…,xN−1,u)を構成する。
但し、*は複素共役を表し、u
0は予め決められた周波数、Uは周波数標本の数であるとする。u=u
0とu=U−u
0でPの共役複素数を与えるのは離散逆フーリエ変換の結果得られる信号が実数値となるためである。
上記のξを、uについて一次元離散逆フーリエ変換し、埋め込みパターンW(x1,x2,…,xN−1,t)を得る。
<電子透かし検出装置−時間復調部>
次に、第2の実施の形態における電子透かし検出装置200の時間復調部210について説明する。
図33は、本発明の第2の実施の形態における時間復調部の構成例を示す。
図33の時間復調部210cは、1次元フーリエ変換部214を有し、埋め込み済み信号923が入力され、検出複素パターン961を出力する。
なお、図33においては図31との対応を容易にするため、下から上に情報が流れるように構成が記載さていることに注意されたい。
時間復調部210cによる埋め込み済み信号923の復調処理は以下の手順で実施される。
図34は、本発明の第2の実施の形態における時間復調部の動作のフローチャートである。
ステップ1001) 入力された埋め込み済み信号923から所定の区間Tを取り出す。
ステップ1002) ステップ1001の区間Tを位置(x1,x2,…,xN−1)毎に一次元離散フーリエ変換し、周波数分解する。
ステップ1003) ステップ1002の結果から、所定の周波数のフーリエ係数を取り出し、検出複素パターン961とする。
具体的に式を用いて以下に説明する。
埋め込み済み信号923をI"(x1,x2,…,xN−1,t)とする。
I"(x1,x2,…,xN−1,t)を次のように一次元離散フーリエ変換し、η(x1,x2,…,xN−1,u)を得る。
但し、Tは予め決められた所定の標本数であるとする。
検出複素パターン961をQ(x1,x2,…,xN−1)で表すものとし、η(x1,x2,…,xN−1,u)からQ(x1,x2,…,xN−1)を
Q(x1,x2,…,xN−1)=η(x1,x2,…,xN−1,u0) (83)
で求める。但し、u0は予め決められた周波数であるとする。
ここで、差分・微分を用いた時間復調について説明する。
第1の実施の形態で示したのと同様に、上記の代わりに埋め込み済み信号923I" (x1,x2,…,xN−1,t)のt軸方向の差分もしくは微分を一次元離散フーリエ変換し復調するようにしても良い。すなわち、例えば差分を用いた場合、
但し、Tは予め決められた所定の標本数であるとする。また、△tは所定の標本間隔である。例えば、△t=1の場合、1標本間隔で差分を算出することを示し、映像信号を例にとると、隣接するフレーム間の差分を計算することを表す。△tは1以外の数であっても構わない。
このような時間復調部210の構成例を図35に示す。
図35の時間復調部210dは、図33の時間復調部210cとほぼ同様の構成を持っており、埋め込み済み信号923が一旦信号微分部215に入力された後に1次元フーリエ変換部216に入力されるように構成されている点が異なる。
信号微分部215では入力された埋め込み済み信号923に対し、N次元目の軸、すなわち、t軸方向の差分もしくは微分を計算し、1次元フーリエ変換部216に出力するようにされている。
埋め込み済み信号923I" (x1,x2,…,xN−1,t)のt軸方向の差分もしくは微分を一次元離散フーリエ変換し、復調するようにすることの効果は、第1の実施の形態における図27の時間復調部210bにおける効果と同様である。
<第2の実施の形態の特徴>
本実施の形態の特徴を説明する。
本実施の形態の電子透かし埋め込み装置と電子透かし検出装置は、第1の実施の形態の電子透かし埋め込み装置及び電子透かし検出装置と同様の効果を得る電子透かし埋め込み装置及び電子透かし検出装置を、一次元フーリエ変換を用いて実現した例である。
一次元フーリエ変換を用いることで、既存のフーリエ変換装置を利用して容易に電子透かし埋め込み装置及び電子透かし検出装置を構成することができる。
なお、第1の実施の形態と本実施の形態の電子透かし埋め込み装置及び電子透かし検出装置を組み合わせて使用しても構わない。すなわち、電子透かし埋め込み装置の時間変調部130bを、第1の実施の形態の時間変調部130aとし、電子透かし検出装置の時間復調部210cを本実施の形態の時間復調部210dとして組み合わせて使用しても良いし、電子透かし埋め込み装置の時間変調部130aを本実施の形態における時間変調部130bとし、電子透かし検出装置の時間復調部210cを本実施の形態における時間復調部210dとしても良い。
[第3の実施の形態]
<2次元FFT係数埋め込み>
以下に、本発明の第3の実施の形態における電子透かし埋め込み装置及び電子透かし検出装置について説明する。
本実施の形態は、第1の実施の形態の電子透かし埋め込み装置及び電子透かし検出装置において、電子透かし埋め込みを直交変換領域で行うようにした例である。
本実施の形態の電子透かし埋め込み装置は、第1の実施の形態の電子透かし埋め込み装置と同様の構成であるが、複素パターン生成部のみが異なる。
また、本実施の形態の電子透かし検出装置は、第1の実施の形態の電子透かし検出装置と同様の構成であるが、検出情報抽出部のみが異なる。
<電子透かし埋め込み装置−複素パターン生成部>
以下に、本実施の形態における複素パターン生成部について説明する。
図36は、本発明の第3の実施の形態における複素パターン生成部の構成を示す。
同図に示す複素パターン生成部110bは、埋め込み系列生成部111、複素配列生成部112、N−1次元逆フーリエ変換部113から構成され、図12の構成にN−1次元逆フーリエ変換部113が加えられた構成であり、埋め込み情報911が入力され、埋め込み複素パターン921を出力する。
複素パターン生成部110bによる埋め込み複素パターンの生成処理は以下手順で実施される。
図37は、本発明の第3の実施の形態における複素パターン生成部の動作のフローチャートである。
ステップ1101) 埋め込み系列生成部111において、入力された埋め込み情報911に基づいて、埋め込み情報を表す数値の列である埋め込み系列913を生成する。埋め込み系列生成部111の動作は、第1の実施の形態と同様である。
ステップ1102) 複素配列生成部112において、埋め込み系列生成部112で生成された埋め込み系列913を、N−1次元の複素配列上の要素の実部及び虚部に割り当て、中間複素パターン904を生成する。
複素配列生成部112の動作については後述する。
ステップ1103) N−1次元逆フーリエ変換部113において、複素配列生成部112で生成された中間複素パターン904に対し、N−1次元の逆フーリエ変換を行い、同じくN−1次元の埋め込み複素パターン921を生成する。N−1次元逆フーリエ変換部113の動作の詳細については後述する。
<電子透かし埋め込み装置−複素パターン生成部−複素配列生成部>
次に、上記のステップ1102の複素配列生成部112の動作について詳細に説明する。
複素配列生成部112の動作は、第1の実施の形態の複素配列生成部112と同様の動作であってもよいが、より効果的な電子透かしの埋め込みのため下記のように処理しても良い。
1)全ての要素の値が0である、大きさM1×M2×…×MN−1のN−1次元複素数配列を用意する。但し、M1,M2,…,MN−1は予め定められた要素数である。
2)複素配列の中で埋め込み系列913の割り当てを行うべき要素の範囲を決定する。範囲の例については後述する。
3)埋め込み系列913から順に二つずつ値を取り出し、上記の1)の配列の中で上記2)で定めた範囲内の要素に対し、順に取り出した値がその要素値の実部、虚部になるように配列に値を設定する。
4)上記3)で生成された複素配列を中間複素パターン904としてN−1次元逆フーリエ変換部113に出力する。
また、第1の実施の形態における複素配列生成部112と同様に、上記の3)に先立ち、埋め込み系列913の順序を擬似乱数を用いて、ランダムな順序に入れ替えておいても良いことは言うまでもない。
このような複素配列生成の処理は、特許文献1に示されている透かし係数行列の生成に類似している。但し、本発明においては、中間複素パターン904は後にN−1次元逆フーリエ変換部113で逆フーリエ変換されるが、逆フーリエ変換された結果が実数値となる必要はなく、複素数となっても良いため、中間複素パターン904が、フーリエ変換係数の対称性を保持している必要はない。すなわち、上記の2)の範囲の全ての要素を用いて埋め込み系列913の埋め込みを行うことができ、特許文献1と比較して、2倍の長さの埋め込み系列913を埋め込めることを表す。
上記の2)における要素の範囲について説明する。
図38A〜38Fは、本発明の第3の実施の形態における複素配列生成部における複素配列の要素範囲の各例である。図38A,B,Cに複素配列生成部112における複素配列の要素の範囲の例を示す。N=3で2次元の複素配列を用いた場合を例に示している。図38A〜38Fにおいて、正方形部分が複素配列を表し、網の掛かった領域が埋め込み系列913の割り当てを行うべき要素の範囲を示す。
複素配列は、後にN−1次元逆フーリエ変換部113で逆フーリエ変換されることから、埋め込みパターンに対する周波数領域での表現であると考えることができる。
今、配列の要素(0,0)がDC成分を表すため、図38D,E,Fのように、複素配列を配列の要素(0,0)が中心にくるように巡回的に書き直すことで、埋め込み系列913がどのような周波数帯域を利用して埋め込まれるかを理解することができる。
図38Dでは、矩形領域、図38Eでは円形領域、図38Fでは菱形領域でいずれも中周波数帯域への埋め込みとなる。
例えば、画像や映像への電子透かし埋め込みを考えた場合、高周波数帯域に埋め込まれた電子透かしは、MPEG2やH.264などの映像符号化によって容易に削除されてしまうことが考えられる一方、低周波領域への埋め込みは視覚的な影響が大きいことから中周波数帯域への埋め込みを例に挙げた。
また、人間の視覚特性上、高周波域において、斜め方向の周波数は縦横方向の周波数と比較して視覚感度が低いことが知られて("宮原誠「系統的画像符号化」、アイピーシー,1990,pp.87")おり、縦横と比較して低い周波数帯への埋め込みを行っても目立ちにくいという特性がある。また、例えば、JPEGやMPEGなど画像、映像符号化等で斜め方向の量子化ステップは縦横方向よりも大きめに設定されていることから、斜め方向の方が縦横方向と比較して高周波が符号化により削減されやすい傾向がある。図38C、Fのように菱形領域への埋め込みを行うことで、このような状況においても画像品質が高く、耐性の高い電子透かし埋め込みを行うことができる。
また、図39A〜39Fは、本発明の第3の実施の形態における複素配列生成部における複素配列の要素範囲の各例である。映像への電子透かし埋め込みの場合に、本発明のように時間方向の長期間の信号、すなわち、多くのフレーム数を利用し、検出性能の高い電子透かし検出を行う場合には、電子透かしの埋め込みの強度を小さくすることができる。その結果、図39A〜39Fに示すような低周波数領域への埋め込みを行っても視覚的な影響を小さくすることができ、このような埋め込み方法をとることも可能である。
<電子透かし埋め込み装置−複素パターン生成部−N−1次元逆フーリエ変換部>
次に、複素パターン生成部110bのN−1次元逆フーリエ変換部113の動作について詳細に説明する。
N−1次元逆フーリエ変換部113におけるフーリエ変換は以下の手順で行われる。
1)複素配列生成部112で生成されたN−1次元の中間複素パターン904を
A[x1,x2,…,xN−1]
とする。
2)A(x1,x2,…,xN−1)をN−1次元の離散逆フーリエ変換し、埋め込み複素パターンP(x1,x2,…,xN−1)を求める。
但し、M
1,M
2,…,M
N−1は複素配列生成部112で生成されたN−1次元の中間複素パターン904の大きさ(各次元の要素数)である。
<電子透かし検出装置−検出情報抽出部>
次に、本発明の第3の実施の形態における電子透かし検出装置200の検出情報抽出部220bについて説明する。
図40は、本発明の第3の実施の形態における検出情報抽出部の構成例を示す。
同図に示す検出情報処理部220bは、N−1次元フーリエ変換部225、検出系列抽出部221、相関値計算部222、最大値判定部223、検出情報再構成部224から構成され、検出複素パターン961が入力され、検出情報914を出力する。
なお、図40においては、図36との対応の理解を容易にするため、下から上に情報が流れるように構成が記載されていることに注意されたい。
検出情報抽出部220bによる検出情報抽出処理は、以下の手順で実施される。
図41は、本発明の第3の実施の形態における検出情報抽出部の動作のフローチャートである。
ステップ1201) N−1次元フーリエ変換部225において、入力された検出複素パターン961に対し、N−1次元のフーリエ変換を行い、同じくN−1次元の検出複素配列1115を生成する。
N−1次元フーリエ変換部225の動作の詳細については後述する。
ステップ1202) 検出系列抽出部221において、N−1次元フーリエ変換部225で生成された検出複素配列1115から、要素値の実部、虚部の値を取り出して並べた検出系列1113を構成する。
検出系列抽出部221の動作の詳細については後述する。
ステップ1203) 相関値計算部222において、検出系列抽出部221で構成された検出系列1113と、想定される埋め込み系列に基づいて構成された埋め込み系列との相関を計算し、相関値1114を求める。
相関値計算部222の動作は、第1の実施の形態と同様である。
ステップ1204) 最大値判定部223において、相関値計算部222で得られた相関値1114が最大となるものを見つけ、最大となる相関値1114に対応する相関値計算部222での相関計算で用いられた埋め込み系列を決定する。
最大値判定部223の動作は、第1の実施の形態と同様である。電子透かし埋め込み装置100における埋め込み系列の構成方法によっては、最大値判定部223による最大値判定の代わりに、他の方法で判定を行うようにされていても良いことは言うまでもない。
ステップ1205) 検出情報再構成部224において、最大値判定部223で判定された埋め込み系列に基づき、実際に埋め込まれていたと判断する検出情報914を再構成する。
検出情報再構成部224の動作は第1の実施の形態と同様である。
<電子透かし検出装置−検出情報抽出部−N−1次元逆フーリエ変換部>
次に、上記の検出情報抽出部220bのN−1次元フーリエ変換部225の動作の詳細について説明する。
N−1次元フーリエ変換部225におけるフーリエ変換処理は以下の手順で行われる。
1)入力された検出複素パターン961から大きさM1×M2×…×MN−1のN−1次元の複素配列を構成する。但し、M1,M2,…,MN−1は電子透かし埋め込み装置100の複素配列生成部112で用いたのと同様の要素数である。
検出複素パターン961が離散信号として得られている場合はそれをそのままN−1次元の複素配列であると見做す。検出複素パターン961が連続信号として得られている場合は、検出複素パターン961を任意の標本化手段を用いて標本化したものをN−1次元複素配列として用いる。
2)上記の1)の複素配列をQ(x1,x2,…,xN−1)とするとき、これをN−1次元の離散フーリエ変換し、A[u1,u2,…,uN−1]を求める。
3) 上記の2)で求めたA[u
1,u
2,…,u
N−1]を検出複素配列1115として検出系列抽出部221に出力する。
<電子透かし検出装置−検出情報抽出部−検出系列抽出部>
次に、検出情報抽出部220bの検出系列抽出部221の動作の詳細について説明する。
検出系列抽出部221の動作は、第1の実施の形態と基本的には同様であるが、本実施の形態における複素配列生成部112の動作に合わせ、下記のように処理しても良い。
検出系列抽出部221での処理は以下の手順で実施される。
1) N−1次元フーリエ変換部225で得られた検出複素配列1115から、電子透かし埋め込み装置100の複素配列生成部112で用いた範囲の要素を取り出し、取り出した複素数値の実部、虚部をそれぞれ単独の実数値としてみて並べる。これは、電子透かし埋め込み装置100の複素配列生成部112での複素配列の生成と対称的な処理である。
2) 得られた系列をi"1,i"2,…,i"Lとし、検出系列1113として出力する。
電子透かし埋め込み装置100の複素配列生成部112において、埋め込み系列913の順序もしくは複素配列の要素の入れ替えがなされている場合にはその順序を戻す点は第1の実施の形態と同様である。
<第3の実施の形態の特徴>
以下に、本実施の形態の特徴を述べる。
本実施の形態の電子透かし埋め込み装置及び電子透かし検出装置によれば、例えば、特許文献1にて示されているものと同様に、映像信号の符号化やノイズ不可においても残り易く、かつ視覚的な影響の少ない帯域に電子透かしを埋め込むことができるため、耐性が高く、画質の高い電子透かし埋め込みが可能である。
特に、周波数領域での埋め込みの範囲を、菱形領域にて行うことで、映像符号化等での圧縮によりロバストな電子透かし埋め込みが可能である。
また、埋め込みパターンは信号全体に拡散されているため、特許文献1にて示されているようなオフセット探索方法をとれば、埋め込み済み信号から部分的に切り出した信号からも電子透かし検出が可能である。
さらに、本発明では、特許文献1にて示された電子透かし方式と異なり、中間複素パターン904は、特許文献1の段落番号0197に記載されている透かし係数行列などと比較して、フーリエ変換係数の対称性を保つ必要がないため、2倍の長さの埋め込み系列913を埋め込むことができる。すなわち、2倍のスペクトル拡散系列長を用いることができる。
既に述べたように、スペクトル拡散系列長が長くなれば、その分信頼性の高い検出が可能となり、また、従来と同程度の検出の信頼性であれば、埋め込み情報長を2倍にすることができ、また、従来と同程度の検出信頼性と情報長であれば、より品質劣化の少ない電子透かし埋め込みが可能となるため、本発明により、信頼性が高く、情報長が長く、品質劣化の少ない電子透かし埋め込みが可能となることを示している。
また、本実施の形態と第2の実施の形態の時間変調部130bまたは、時間復調部210bとを組み合わせて実施することも可能である。
また、本実施の形態と第2の実施の形態の時間変調部130または、時間復調部210bとを組み合わせる場合には、N−1次元逆フーリエ変換部113のN−1次元逆フーリエ変換処理と時間変調部130の一次元逆フーリエ変換処理とを一括してN次元の逆フーリエ変換処理として実施することもできる。同様に、N−1次元フーリエ変換部225のN−1次元変換処理と時間復調部210の一次元フーリエ変換処理とを一括してN次元のフーリエ変換処理として実施することもできる。
[第4の実施の形態]
<時間同期不要検出>
以下に、第4の実施の形態における電子透かし埋め込み装置及び電子透かし検出装置について説明する。
本実施の形態は、電子透かしの埋め込みが第1の実施の形態における電子透かし埋め込み装置100を用いて行われた場合に、電子透かし検出装置において、時間軸(N番目の次元の軸)の方向で同期のずれた信号が入力された場合に、同期合わせを行う必要なしに電子透かし検出を行う例である。
本実施の形態の電子透かし検出装置は、第1の実施の形態の電子透かし検出装置200と同様の構成を持ち、検出情報抽出部220のみが異なる構成を持っている。
また、時間復調部210については、本発明のその他の実施の形態の時間復調部を用いても良い。例えば、第2の実施の形態の時間復調部210b、210cを用いても構わない。
なお、本実施の形態では、第1の実施の形態における電子透かし埋め込み装置100を用いて電子透かしの埋め込みが行われた場合を例に記載しているが、他の実施の形態における電子透かし埋め込み装置を用いて電子透かしの埋め込みが行われた場合の検出についても同様に組み合わせて適用することができる。例えば、第3の実施の形態における電子透かし埋め込み装置で埋め込みを行い、第3の実施の形態における電子透かし検出装置のN−1次元フーリエ変換部225を組み合わせて検出を行うようにしても良い。それらの場合、個々の手順に相応の変更が必要な場合があるが、それらの必要な変更は、本実施の形態の説明及びそれらの電子透かしの埋め込みについての説明に基づけば明らかであることは言うまでもない。
<電子透かし検出装置−検出情報抽出部>
以下に、本実施の形態の電子透かし検出装置における検出情報抽出部の動作を説明する。
図42は、本発明の第4の実施の形態における検出情報抽出部の構成を示す。同図において、図28及び図40と同一構成部分には同一符号を付す。
同図に示す検出情報抽出部220cは、検出系列抽出部221、複素相関値計算部226、絶対値算出部227、最大値判定部223、検出情報再構成部224から構成され、検出複素パターン961が入力され、検出情報914を出力する。
検出情報抽出部220cによる検出情報抽出処理は、以下の手順で実施される。
図43は、本発明の第4の実施の形態における検出情報抽出部の動作のフローチャートである。
ステップ1301) 検出系列抽出部221において、入力された検出複素パターン961から得られる複素数値を並べた検出複素数系列1118を構成する。検出系列抽出部221の詳細な動作については後述する。
ステップ1302) 複素相関値計算部226において、検出系列抽出部221で構成された検出複素数系列1118と、想定される埋め込み系列に基づいて構成された複素数系列との複素相関を計算し、複素数で表される複素相関値1116を求める。
埋め込み系列の種類によって異なる値が埋め込まれている場合には、考えられる複数の埋め込み系列に基づいて構成された複数の複素数系列との複素相関をそれぞれ計算し、対応する複素相関値1116を求める。
複素相関値計算部226の動作の詳細については後述する。
ステップ1303) 絶対値算出部227において、複素相関値計算部226で得られた複素相関値1116の絶対値1117を算出する。絶対値を算出することで、同期のずれた信号が入力された場合にも同期変位量に関わらず検出複素数系列との相関の高い埋め込み系列を決定することができる。
ステップ1304) 最大値判定部223において、絶対値算出部227で得られた絶対値1117が最大となるものを見つけ、最大となる絶対値に対応する複素相関値計算部226での相関計算で用いられた埋め込み系列を決定する。
なお、電子透かし埋め込み装置100における埋め込み系列の構成方法によっては、最大値判定部223による最大値判定の代わりに、他の方法で判定を行うようにされていても良い。
最大値判定部223の動作の詳細及び、代替となる他の方法の詳細については後述する。
ステップ1305) 検出情報再構成部224においては、最大値判定部223で決定された埋め込み系列に基づき、実際に埋め込まれていたと判断する検出情報914を再構成する。
検出情報再構成部224の動作は、第1の実施の形態と同様である。
なお、電子透かしの埋め込みが、第3の実施の形態における電子透かし埋め込み装置100を用いて行われた場合には、検出系列抽出部221に先立ち、第3の実施の形態におけるN−1次元フーリエ変換部225と同様のフーリエ変換処理が必要となる。
また、最大値判定部223で埋め込み系列を決定した後、その埋め込み系列を用い、入力信号を順次同期を変位させた信号を用いて、第1の実施の形態における検出情報抽出部220aと同様の処理を総当り的に行い、同期変位量を測定し、検出情報抽出部220で得られた相関値に基づいてより正確な検出相関評価値の取得を行っても構わない。この場合でも全ての考えられる埋め込み系列について全ての同期変位を総当り的に探索するよりもはるかに高速に検出が可能となることは言うまでもない。
<電子透かし検出装置−検出情報抽出部−検出系列抽出部>
次に、上記の検出情報抽出部220cの検出系列抽出部221の動作の詳細について説明する。
検出系列抽出部221は、検出複素パターン961から得られる複素数値から検出複素数系列1118を構成する。
検出系列抽出部221での処理は以下の手順で実施される。
1) 検出複素パターン961から大きさM1×M2×…×MN−1のN−1次元の複素配列を構成する。構成の仕方は、前述の第1の実施の形態における図30のステップ801の処理と同様である。
2) 上記1)で得られた複素配列から、順に一つずつ複素数値を取り出して並べ、これを検出複素数系列1118とする。すなわち、複素配列がA[p1,p2,…,pN−1](pn≧0)、検出複素数系列1118がi"1,i"2,…,i"N−1と表されているとき、
i"1=A[0,0,…,0] (88)
i"2=A[1,0,…,0]
・
・
3)得られた系列i"1,i"2,…,i"Lを、検出系列1115として出力する。
電子透かし埋め込み装置100の複素配列生成部112において、埋め込み系列913の順序もしくは複素配列の要素の入れ替えがなされている場合には、その順序を戻す点は、第1の実施の形態における検出系列抽出部221と同様である。
なお、電子透かし埋め込みが、第3の実施の形態における電子透かし埋め込み装置100を用いて行われた場合には、上記の2)の処理において、第3の実施の形態における電子透かし埋め込み装置100の複素配列生成部112で用いた範囲内の要素の複素数値を取り出して並べるようにする。
<電子透かし検出装置−検出情報抽出部−複素相関値計算部>
次に、上記の検出情報抽出部220cの複素相関値計算部226の動作に詳細について説明する。
複素相関値計算部226における複素相関値計算処理は、以下の手順で実施される。
1) 電子透かし埋め込み装置100の埋め込み系列生成部111と同様の手順により、考えられる埋め込み系列w(1),w(2),…を生成する。生成の方法は、前述の第1の実施の形態における相関値計算部222と同様である。
2) 上記の1)で得られた埋め込み系列w(1),w(2),…から、電子透かし埋め込み装置100の複素配列生成部112において一つの複素数値の実部と虚部に割り当てられた値を組にして同様の複素数列を構成し、これを埋め込む複素数系列ξ(1),ξ(2),…とする。すなわち、図17のように複素配列が構成されているならば、
埋め込み複素数系列の構成方法は、この例に限定されるものではなく、電子透かし埋め込み装置100の複素配列生成部112での複素配列の構成に対応するように構成されていればどのような構成方法であっても構わないことは言うまでもない。
3)検出系列抽出部221で得られた検出系列1115と、上記の2)で得られた各埋め込み系列ξ(1),ξ(2),…との相関を、複素相関を用いてそれぞれ計算する。
相関計算は次のように行う。ρ(j)を求めたい複素相関値1116とすると、
ここで、ξ
(j)*は、ξ
(j)の要素の共役複素数からなる数列を表し、ξ
k (j)*はξ
k (j)の共役複素数であるとする。また、"・"は数列をベクトルと見たときの内積演算を表す。
ここで、ρ(j)は、複素数となる。
また、前述の文献「中村高雄、片山淳、山室雅司、曽根原登"カメラ付き携帯電話機を用いたアナログ画像からの高速電子透かし検出方式"、信学論D-II, Vol. J87-D-II, No.12, pp. 2145-2155, 2004」にあるような検出信頼性の評価基準を揃えるため,例えば、i"及びξ(j)の各要素を予め平均0、分散の絶対値が1となるように正規化しておき、相関値計算で定数項を乗じて演算を行っても良いことは、第1の実施の形態における相関値計算部222と同様である。
このような演算で同期のずれた入力に対して電子透かしの検出が可能であることを以下に説明する。
今、電子透かし埋め込み装置で埋め込まれた系列がw={w1,w2,…,wL}で、これを複素数に並べたものがξ={ξ1,ξ2,…,ξL'}とする。
電子透かしの埋め込みにより、埋め込み前信号及びその他のノイズ信号が加わった後の複素系列をi'={i1,i2,…,iL'}とすると、
i'=i+ξ (91)
さらに、これに時間方向の同期変位が与えられた後に得られる系列をi"とすると、
i"=i'ej△θ (92)
上記の式でξとの相関を計算すると、
であり、この期待値は0であるから│ρ│は電子透かしの埋め込まれている場合の期待値
と比較して十分小さく、電子透かしの検出が可能である。
<電子透かし検出装置−検出情報抽出部−最大値判定部>
次に、検出情報抽出部220cの最大値判定部223について詳細に説明する。
最大値判定部223における処理は以下の手順で実施される。
1) 絶対値算出部227で得られた絶対値1117
│ρ(1)│,│ρ(2)│,…
から、値が最大となる絶対値│ρ(j)│を見つける。
│ρ(max)│=MAX(│ρ(1)│,│ρ(2)│,…) (97)
但し、MAX()は最大値を返す演算である。
2) │ρ(max)│に対応する埋め込み系列w(max)を得る。
また、最大の相関値│ρ(j)│が所定の閾値を越えているかどうかを判断し、所定の閾値を越えていない場合には電子透かしが埋め込まれていなかったものと判断するようにしても良い。
以下に、最大値判定部223の代替となる動作をについて説明する。
最大値判断部223による最大値判定の代わりに、複素相関値計算部226で全ての埋め込み系列w(1),w(2),…に対応する複素系列に対して複素相関を計算せずに、埋め込み系列w(1)に対応する複素数系列ξ(1)から順に複素相関を計算し、得られた複素相関値の絶対値が所定の閾値を越えているかどうかで判定し、閾値を越えた埋め込み系列をw(max)として、その時点で相関計算を終了するようにされていても良い。
また、電子透かし埋め込み装置100における埋め込み系列が、例えば、埋め込み系列生成部111の(例1)で示したような、1通りの埋め込み系列だけで構成されて埋め込まれている場合や、例えば、埋め込み系列生成部111の(例2)、(例4)で示したような、1通りの埋め込み系列の正負の違いで構成されて埋め込まれている場合には、複素相関値は一つだけが計算されるため、最大値判定部223による最大値判定には意味がない。代わりに得られた絶対値が所定の閾値を越えているかどうかで判定するようにされていても良い。
また、複素相関値の絶対値の大きさで透かし検出の信頼度を評価するようにしても良い。
また、電子透かし埋め込み装置100における埋め込み系列が、例えば、埋め込み系列生成部111の(例2)、(例4)で示したような、埋め込み系列の正負の違いでビット値の0/1を表現するように構成されて埋め込まれている場合には、同期ずれによって位相が半波長ずれた信号が入力された場合と全てのビット値が反転した情報が埋め込まれている場合との区別がつかない。そのような場合には、例えばビット値の内1ビットを判定用ビットとして必ず1(もしくは0)をとるように埋め込み系列を構成しておき、そのビット値を用いてビット反転を補正するようにしても良い。また、非対称な誤り訂正符号を用いて符号化することで判定可能としても良い。また、本発明の電子透かしとは異なる電子透かし信号を用いて判断するようにしても良い。これらの例に限定するものではなく、その他の方法でビット反転の補正を行っても良いことは言うまでもない。
また、埋め込み系列生成部111の(例4)で示したような、埋め込み系列の部分列を用いてビット毎に正負の極性で拡散されている場合には、以下のようにしてよりロバストな検出処理を行うことができる。
検出複素数列1118の中のa番目のビット位置に対応する部分複素系列を
とする。また、a番目のビット位置のビット値の拡散に用いた複素埋め込み系列を
とする。そして、次のように各ビット位置a毎の複素相関値λ
(a)を算出する。
次に、n個の複素相関値λ
(a)の方向を揃える。具体的には、例えば0≦Argλ
(a)<πとなるλ
(a)については変更を行わず、π≦Argλ
(a)<2πとなるλ
(a)についてはe
jπを乗じて偏角を180度回転させる。この変更処理によって、全てのλ
(a)は複素平面上の第一および第二象限内の値をとるようになる。なお、方向の揃え方はこの例に限らない。例えば複素平面上の第一および第四象限内の値をとるようにすることができるのは明らかである。
次に上記の変更処理を施された複素相関値λ(a)の総和λを以下のようにして求める。
そして複素平面上で原点をとおりArgλと直交する直線を境界線として複素平面を2つの領域に分割し、上記の変更処理の前のλ
(a)が2つの領域のどちらに属するかで、a番目のビット位置の検出ビット値を定める。この定め方でも上述のようなビット反転の不確定性があるが、例えばビット値内の1ビットをビット反転判定用のフラグとして用いることなどにより不確定性を解決できる。
例えばn=2の場合において、図44に示すように、λ(1)は0≦Argλ(1)<πであるので変更を行わず、λ(2)はπ≦Argλ(2)<2πなのでejπを乗じて偏角を180度回転させる。そして、これらの総和λを求め、複素平面上で原点をとおりArgλと直交する直線を境界線として複素平面を2つの領域に分割し、一方の領域のビット値を"1"とし、他方の領域を"0"として、変更処理の前のλ(1)、λ(2)が、2つの領域のどちらに属するかで、それぞれのビット位置の検出ビット値を定める。
上記のような検出方法がうまく作用する理由を説明する。埋め込み時には、各ビット位置用の複素埋め込み系列に対して、ビット値に応じて+1または−1を乗じることで変調されていた。よって、各ビット位置a毎の複素相関値λ(a)は埋め込まれているビット値が異なると位相がπだけずれた値をとることになる。しかし、πの位相ずれを同一視すれば、全てのλ(a)は入力信号の位相ずれ量Δθの方向で揃うことになる。同一視の方法として、上記のような変更処理を行えばよいことは明らかである。
また、各ビット毎の複素埋め込み系列の長さmは全複素埋め込み系列の長さL´より短い。すなわち、各ビット毎の複素埋め込み系列は拡散率が低いため、各ビット毎のビット値を検出すると拡散率mによる利得しか得られないため耐性が低くなる。しかしながら、上記のようにπの位相ずれを同一視する変更を施して全てのλ(a)の向きを揃えた上で総和λを求めることで全埋め込み系列長L´に相当する利得を得ることができる。よって、Argλと直交する境界線を用いて再度変更前の各λ(a)を評価することで検出ビット値を検出することにより、各ビット毎に検出するよりもビット判定誤りが少なくなり、より高い耐性を実現することができる。なお、上記のλの絶対値の大きさで電子透かし検出の信頼度を評価するようにしてもよい。
<第4の実施の形態の特徴>
次に、本実施の形態の特徴について説明する。
本実施の形態の電子透かし検出装置によれば、電子透かしの検出において、電子透かしの検出対象の信号の同期がずれているときにも電子透かしの検出ができる。すなわち、N−1次元の空間でスペクトル拡散された埋め込み系列は、N次元目の方向での同期ずれに対して共通の影響を受けることを利用し、N−1次元の空間での拡散された系列の複素相関値を利用することによって、同期合わせの不要な電子透かしの検出ができる。
例えば、映像信号の場合に、時間方向で検出を開始するフレームがずれている場合にも特別な同期合わせの方法を用いることなしに電子透かしの検出が可能である。これは、例えば、ビデオカメラ等を用いて再撮影された映像から電子透かしを検出する場合や、ビデオテープなどアナログデータに一旦変換された映像から電子透かしを検出する場合など、時間同期が困難な利用状況において非常に有効である。
スクリーンやTVなどに表示された映像がビデオカメラや携帯電話等のカメラで撮影された場合、再生のフレームレートと撮影のフレームレートは同期されていないためにサブフレームでの再サンプリングが生じる場合もある。これは結果としてサブフレームレベル(1フレームより短い間隔)で同期がずれている状態を表す。このような状況においても、時間復調において周期信号の位相を測ることは可能であり、上記に述べたように同期合わせの不要な電子透かしの検出が可能である。
上記の電子透かし検出により、同期のずれた信号に対する効率的な検出が可能であると共に、特別な同期合わせ信号を加える必要がないことから、同期合わせ信号による信号の劣化や電子透かしの検出性能の劣化がなく、品質が高く検出性能の高い電子透かし検出が可能となる。
[第5の実施の形態]
<同期変位量測定>
以下に、第5の実施の形態における電子透かし検出装置について説明する。
本実施の形態は、電子透かしの埋め込みが本発明の第1の実施の形態における電子透かし埋め込み装置100を用いて行われた場合に、電子透かし検出装置において、時間軸(N番目の次元の軸)の方向で同期のずれた信号が入力された場合に、同期の変位量を検出して電子透かしの検出を行う例である。
なお、本実施の形態では、第1の実施の形態における電子透かし埋め込み装置100を用いて電子透かしの埋め込みが行われた場合を例に記載しているが、他の実施の形態における電子透かし埋め込み装置を用いて電子透かしの埋め込みが行われた場合の検出についても同様に組み合わせて適用することができる。例えば、第3の実施の形態における電子透かし埋め込み装置で埋め込みを行い、第3の実施の形態における電子透かし検出装置のN−1次元フーリエ変換部225を組み合わせて検出を行うようにしても良い。それらの場合、個々の手順に相応の変更が必要な場合があるが、それらの必要な変更は、本実施の形態の説明及びそれらの電子透かし埋め込みについての説明に基づけば明らかであることは言うまでもない。
<電子透かし検出装置>
本実施の形態における電子透かし検出装置の構成について説明する。
図45は、本発明の第5の実施の形態における電子透かし検出装置の構成例を示す。
同図に示す電子透かし検出装置300は、時間復調部310、同期検出部320、検出情報抽出部330a、パターン記憶部340から構成され、埋め込み済み信号923が入力され、検出情報914を出力する。
時間復調部310については、第1の実施の形態における時間復調部210と同様である。また、その他の実施の形態の時間復調部を用いても良い。例えば、第2の実施の形態の時間復調部210c、210dを用いても良い。
なお、図45においては、図10との対応の理解を容易にするため、下から上に情報が流れるように構成が記載されていることに注意されたい。
電子透かし検出装置300による電子透かしの検出処理は、以下の手順で実施される。
図46は、本発明の第5の実施の形態における電子透かし検出装置の動作のフローチャートである。
ステップ1401) 時間復調部310において、時間軸方向の復調を行い、検出複素パターン1501を得て、パターン記憶部340に格納する。処理の内容は第1の実施の形態の電子透かし検出装置200の時間復調部210と同様である。
なお、時間復調部310による時間復調処理に先立ち、埋め込み済み信号923に対して前処理を行っても良いことは第1の実施の形態の電子透かし検出装置200と同様である。
ステップ1402) 同期検出部320において、時間復調部310で得られ、パターン記憶部340に格納されている検出複素パターン1501から、埋め込み済み信号923に対して予め加えられていた時間軸(N番目の次元の軸)の方向で同期変位の大きさを検出し、同期変位量として出力する。
同期検出部320の動作の詳細については後述する。
ステップ1403) 検出情報抽出部330aにおいて、時間復調部310で得られ、パターン記憶部340に格納されている検出複素パターンを解析し、同期検出部320で得られた同期変位量1502に基づいて電子透かし埋め込み装置100で埋め込まれた電子透かし情報を抽出し、検出情報914として出力する。
検出情報抽出部330aの動作の詳細については後述する。
<電子透かし検出装置−同期検出部>
次に、上記の同期検出部320の動作の詳細を説明する。
図47は、本発明の第5の実施の形態における同期検出部の構成例を示す。
同期検出部320は、複素検出系列抽出部321、複素相関値計算部322、絶対値算出部323、同期検出最大値判定部324、位相算出部325から構成され、検出複素パターン1501をパターン記憶部340から読み込み、同期変位量1502を出力する。
なお、図47においては、図45との対応の理解を容易にするため、下から上に情報が流れるように構成が記載されていることに注意されたい。
同期検出部320による同期検出処理は以下の手順で実施される。
図48は、本発明の第5の実施の形態における同期検出部の動作のフローチャートである。
ステップ1501) 複素検出系列抽出部321において、入力された検出複素パターン1501から得られる複素数値を並べた検出複素数系列1511を構成する。
複素検出系列抽出部321の動作は、第4の実施の形態の電子透かし検出装置200における検出系列抽出部221の動作と同様である。
ステップ1502) 複素相関値計算部322において、検出系列抽出部321で構成された検出複素数系列1511と、想定される埋め込み系列に基づいて構成された複素数系列との複素相関を計算し、複素数で表される複素相関値1512を求める。
埋め込み系列の種類によって異なる値が埋め込まれている場合には、考えられる複数の埋め込み系列に基づいて構成された複数の複素数系列との複素相関をそれぞれ計算し、対応する複素相関値1512を求める。
また、電子透かし埋め込み装置100における埋め込み系列が、例えば、埋め込み系列生成部111の(例3)や(例4)で示したような、複数のシンボルまたは複数のビットで構成されている場合には、一部のシンボルまたはビットに対応する埋め込み系列に基づいて構成された複素数系列との複素相関を計算するようにしてもよい。すなわち、複数のシンボルまたはビットの一部を用いて同期を合わせることに相当する。
複素相関値計算部322の動作は、第4の実施の携帯の電子透かし検出装置200における複素相関値計算部226の動作と同様である。
ステップ1503) 絶対値算出部323において、複素相関値計算部322で得られた複素相関値1512の絶対値1513を算出する。
絶対値算出部323の動作は、第4の実施の形態の電子透かし検出装置200における絶対値算出部227と同様の動作である。
ステップ1504) 同期検出最大値判定部324において、絶対値算出部323で得られた絶対値1513が最大となるものを見つけ、最大となる絶対値1513に対応する複素相関値1512を決定する。
なお、電子透かし埋め込み装置100における埋め込み系列の構成方法によっては、同期検出最大値判定部324による最大値判定の代わりに、他の方法で判定を行うようにされていても良い。
同期検出最大値判定部324の動作の詳細については後述する。同期検出最大値判定部324の代替となる他の方法については、第4の実施の形態の電子透かし検出装置200における最大値判定部223の場合と同様である。
ステップ1505) 位相算出部325において、同期検出最大値判定部324で決定された複素相関値の位相を算出し、これをもとに同期変位量1502を算出して検出情報抽出部330に出力する。
位相算出部325の動作の詳細については後述する。
なお、電子透かしの埋め込みが第3の実施の形態における電子透かし埋め込み装置100を用いて行われた場合には、複素検出系列抽出部321の処理に先立ち、第3の実施の形態におけるN−1次元フーリエ変換部225と同様のフーリエ変換処理が必要となる。
<電子透かし検出装置−同期検出部−同期検出最大値判定部>
次に、上記の同期検出部320の同期検出最大値判定部324の動作の詳細について説明する。
同期検出最大値判定部324の動作は、第4の実施の形態における電子透かし検出装置200の最大値判定部223と略同様であるが、結果として埋め込み系列を得る代わりに、絶対値が最大となる複素相関値を求める点が異なっている。
同期検出最大値判定部324における処理は以下の手順で実施される。
1)絶対値算出部323で得られた絶対値1513│ρ(1)│,│ρ(2)│,…から、値が最大となる絶対値│ρ(j)│を見つける。
│ρ(max)│=MAX(│ρ(1)│,│ρ(2)│,…) (98)
但し、MAX()は最大値を返す演算である。
2) │ρ(max)│の元になった複素相関値ρ(max)を位相算出部325に出力する。
また、最大の相関値│ρ(j)│が所定の閾値を越えているかどうかを判定し、所定の閾値を越えていない場合には電子透かしが埋め込まれていなかったものと判定するようにしても良い。
<電子透かし検出装置−同期検出部−位相算出部>
次に、上記の同期検出部320の位相算出部325の動作の詳細について説明する。
位相算出部325における処理は以下の手順で実施される。
1) 同期検出最大値判定部324で得られた複素相関値ρ(max)の偏角△θを求める。
△θ=Arg[ρ(max)] (99)
但し、Arg[]は複素数の偏角を求める演算である。
2) △θは、位相のずれ量を表すからこれから同期変位量1502△tを次のように、求め、出力する。
△θが位相のずれ量を表す点について以下に説明する。
複素相関値は、第4の実施の形態の電子透かし検出装置200における複素相関値計算部226についての説明で述べたように、次式のように得られている。
従って、
Arg[ρ
(max)]=△θ (102)
であり、これは、埋め込み済み信号923に対してN次元目の軸の方向(例えば時間方向)で与えられた同期変位量に依存して決定される位相のずれ量を示している。
なお、電子透かし埋め込み装置100における埋め込み系列が、例えば埋め込み系列生成部111の(例2)、(例4)で示したような、埋め込み系列の正負の違いでビット値の0/1を表現するように構成されて埋め込まれている場合には、同期ずれによって位相が半波長ずれた信号が入力された場合と全てのビット値が反転した情報が埋め込まれている場合との区別がつかない。すなわち、上記で得られた同期変位量△tと半波長ずれた
とのどちらが正しい同期変位量であるかの区別がつかない。
そのような場合には、例えば、ビット値の内1ビットを判定用ビットとして必ず1(もしくは0)をとるように埋め込み系列を構成しておき、そのビット値が正しい値となる方の同期変位量であると判断しても良い。また、非対称な誤り訂正符号を用いて符号化することで判定可能としても良い。また、本発明の電子透かしとは異なる電子透かしや信号を用いて判断するようにしても良い。また、同期変位量としては暫定的に一方の値として判定しておき、検出情報抽出部330aでの処理の中で、上記のような手順でビット反転を補正するようにしても良い。これらの例に限定するものではなく、その他の方法で補正を行っても良いことは言うまでもない。
また、埋め込み系列生成部111の(例4)で示したような、埋め込み系列の部分列を用いてビット毎に正負の極性で拡散されている場合には、第4の実施の形態の最後に図44を参照して説明したビット値検出方法において算出されるビット位置毎の複素相関値λ(a)の総和λの偏角Argλを同期変位量Δθとすることによって、各ビット毎の複素相関値に基づいて同期変位量を求めるよりも、より確実で精度の高い同期変位量の測定が可能となる。なお、この方法でもビット反転の不確定性があるが、例えばビット値内の1ビットをビット反転判定用のフラグとして用いることにより、不確定性を解決できる。
<電子透かし検出装置−検出情報抽出部>
次に、上記の検出情報抽出部330aの動作の詳細を説明する。
図49は、本発明の第5の実施の形態における検出情報抽出部の構成例を示す。
検出情報抽出部330aは、第1の実施の形態の検出情報抽出部220と同様の構成であり、検出系列抽出部331、相関値計算部332、最大値判定部333、検出情報再構成部334から構成され、第1の実施の形態の検出情報抽出部220に同期変位量1502を入力するようにされている点のみが異なる。
なお、図49においては、図45との対応の理解を容易にするため、下から上に情報が流れるように構成が記載されていることに注意されたい。
検出情報抽出部330aによる検出情報抽出処理は、検出系列抽出部331の動作の詳細を除き、第1の実施の形態の検出情報抽出部220における検出情報抽出処理と同様である。
なお、電子透かしの埋め込みが第3の実施の形態における電子透かし埋め込み装置100を用いて行われた場合には、検出系列抽出部331の処理に先立ち、第3の実施の形態におけるN−1次元フーリエ変換部225と同様のフーリエ変換処理が必要となる。
<電子透かし検出装置−検出情報抽出部−検出系列抽出部>
以下に、検出情報抽出部330aの検出系列抽出部331の動作の詳細について説明する。
検出系列抽出部331での処理は以下の手順で実施される。
1) 検出複素パターン1501から大きさM1×M2×…×MN−1のN−1次元の複素配列を構成する。構成の仕方は、前述の第1の実施の形態における検出系列抽出部221でのステップ801)と同様である。
2) 上記の1)で得られた複素配列から、順に1つずつ複素数値を取り出して並べた複素数列を得る。すなわち、複素配列がA[p1,p2,…,pN−1](pn≧0)と表されているとき、
c1=A[0,0,…,0]
c2=A[1,0,…,0]
・
・
なお、電子透かし埋め込み装置100における埋め込み時に用いた埋め込み系列913の長さをLとするとき、L'=L/2である。
3) 上記の2)で得られた複素数列の各要素の位相を、入力された同期変位量1502に基づいて逆変位させる。すなわち、同期変位量1502を
4) 上記の3)で得られた複素数列から、順に1つずつ複素数値を取り出し、取り出した複素数値の実部、虚部をそれぞれ単独の実数値としてみて並べる。すなわち、検出系列1521がi"
1,i"
2,…,i"
Lと表されているとき、
は複素数のぞれぞれ実部、虚部を取り出す演算である。
5) 得られたi"1,i"2,…,i"Lを、検出系列1521として相関値計算部332に出力する。
電子透かし埋め込み装置100の複素配列生成部112において、埋め込み系列913の順序もしくは複素配列の要素の入れ替えがなされている場合には、その順序を戻す点は第1の実施の形態における検出系列抽出部221と同様である。
なお、電子透かしの埋め込みが第3の実施の形態における電子透かし埋め込み装置100を用いて行われた場合には、上記の2)において、第3の実施の形態における電子透かし埋め込み装置の複素配列生成部112で用いた範囲内の要素の複素数値を取り出して並べるようにする。
<検出情報抽出部の他の構成例>
また、検出情報抽出部330aを、最大値判定部333を用いずに、検出系列抽出部331、相関値計算部332、検出情報再構成部334のみから構成し、次のような処理をさせることで検出情報の抽出を行っても良い。このような構成例を図50に示す。
図50に示す検出情報抽出部330bでは、同期検出部320で最大の複素相関値を得た埋め込み系列を持って検出情報を再構成すると共に、同期検出部320で得られた同期変位量1502に基づいて、該検出情報の信頼性を評価するための相関値を改めて計算し直すものである。これにより、より高速に電子透かしの検出を行えるようになる。
1) 検出系列抽出部331の処理は、上述の処理と同様である。
2) 相関値計算部332においては、第1の実施の形態における相関値計算部222とは異なり、考えられる全ての埋め込み系列との相関値を計算する代わりに、同期検出部320において、同期検出最大値判定部324の処理で最大の絶対値を取ると判断された複素相関値に対応する埋め込み系列をメモリ(図示せず)に記憶しておき、相関値計算部332においてこの埋め込み系列のみとの相関値を計算する。
この相関値が所定の閾値よりも大きいかどうかで、信頼性のある電子透かし検出ができたかどうかを判定する。
3) 検出情報再構成部334においては、上記の2)で用いた埋め込み系列を用いて検出情報の再構成を行う点を除いては、第1の実施の形態の検出情報再構成部224と同様である。
<第5の実施の形態の特徴>
本実施の形態の電子透かし検出装置300によれば、電子透かしの検出において、電子透かしの検出対象の信号の同期がずれているときにも、電子透かし信号自身を用いて同期変位量を検出することができる。すなわち、N−1次元の空間でスペクトル拡散された埋め込み系列は、N次元目の方向での同期ずれに対して共通の影響を受けることを利用し、N−1次元の空間での拡散された系列の複素相関値を利用することによって、容易かつ高速に同期合わせの可能な電子透かしの検出ができる。
例えば、映像信号の場合に、時間方向で検出を開始するフレームがずれている場合にも特別な同期合わせの方法を用いることなしに電子透かしの検出が可能である。これは、例えば、ビデオカメラ等を用いて再撮影された映像から電子透かしを検出する場合や、ビデオテープなどアナログデータに一旦変換された映像から電子透かしを検出する場合など、時間同期が困難な利用状況において非常に有効である。
スクリーンやTVなどに表示された映像がビデオカメラや携帯電話等のカメラで撮影された場合、再生のフレームレートと撮影のフレームレートは同期されていないためにサブフレームでの再サンプリングが生じる場合もある。これは結果としてサブフレームレベル(1フレームより短い間隔)で同期がずれている状態を表す。このような状況においても、時間復調において周期信号の位相を測ることは可能であり、上記に述べたように同期変位量を検出することができる。
特に、本実施の形態の電子透かし検出装置によれば、変位量を順次試すといった総当り的な手法によらず、計算により同期変位量を検出することができるため、高速に効率的な電子透かし検出が可能となる。また、特別な同期合わせ信号を加える必要がないことから、同着合わせ信号による信号の劣化や電子透かしの検出性能の劣化がなく、品質が高く検出性能の高い電子透かし検出が可能となる。
また、上述した検出情報抽出部の他の構成例のように、検出情報抽出部330bを構成すれば、更に高速に電子透かしを検出することが可能となる。
[第6の実施の形態]
<位相変調>
以下に、本発明の第6の実施の形態における電子透かし埋め込み装置について説明する。
本実施の形態は、第1の実施の形態における電子透かし埋め込み装置100において、時間変調部130における変調処理を周期信号の遅延を用いて行う例を示す。
本実施の形態における電子透かし埋め込み装置の構成は、第1の実施の形態における電子透かし埋め込み装置100と同様であり、時間変調部130のみが異なっている。
なお、本実施の形態では、第1の実施の形態を元に例示しているが、時間変調部130以外の構成においてその他の実施の形態の構成を用いても構わない。例えば、複素パターン生成部110において、第3の実施の形態の電子透かし埋め込み装置における複素パターン生成部110bを用いるようにしても良い。
<電子透かし埋め込み装置−時間変調部>
図51は、本発明の第6の実施の形態における時間変調部の構成例を示す。
同図に示す時間変調部130cは、周期信号生成部131、変調部136から構成され、埋め込み複素パターン921が入力され、埋め込みパターン922を出力する。
時間変調部130cによる埋め込みパターン922の生成処理は以下の手順で実施される。
1) 周期信号生成部131において周期信号を生成する。生成する周期信号は、第1の実施の形態の時間変調部130aの周期信号生成部131における周期信号の例と同様である。
2) 変調部136において、入力された埋め込み複素パターン921の複素数値に応じて、上記の1)で生成された周期信号を次のように変調し、N次元の埋め込みパターン922を得る。
−複素数値の絶対値に応じて周期信号の振幅を決定する。
−複素数値の偏角に応じて周期信号を遅延させる、すなわち、位相を変化させる。
次に、上記の時間変調の具体例を説明する。
変調部136における変調は、N−1次元の複素パターン921の各位置毎に複素数値に応じて、周期信号生成部131で生成された周期信号を搬送波として、QAM(直交振幅)変調することで、N次元のパターンに変換することで行われる。
但し、搬送波である周期信号は、前述したように正弦波とは限らない。
また、埋め込み複素パターン921の値が全て実数値のみから構成されている場合に、その実数値に応じて周期信号の位相を変化させるようにし、周期信号の振幅を一定とするようにしても良い。
具体的には例えば次のように行われる。
今、N−1次元の複素パターンがP(x1,x2,…,xN−1)で表されているものとする。このとき、Pの実部、虚部をPr,Piで表すものとし、
とする。但し、jは虚数単位であり、ωが周期信号の基本周波数の角速度である。
周期信号生成部131において周期信号f(t)が生成されたものとする。
B,τを、f(t)で変調し、次式でN次元のパターンMを得る。
一般的なQAM変調とは異なり、ベースバンド信号Pは時間方向ではなく、時間方向と直交するN−1次元の方向(例えば、映像信号の場合の空間方向)で変動していることに注意されたい。
このような時間変調により、N次元の埋め込みパターン922の位相がN−1次元空間上の位置によって異なるように拡散されていることになり、電子透かし検出時に埋め込み前信号912に起因して現れるノイズ成分の大きさがより小さくなる。
<第6の実施の形態の特徴>
本実施の形態の電子透かし埋め込み装置は、第1の実施の形態の電子透かし埋め込み装置における時間変調部130aの異なる構成例を示したものであり、第1の実施の形態の電子透かしにおける特徴と同様の特徴を持つ。
特に、時間変調部130cにおいて、N−1次元の空間にスペクトル拡散されたN−1次元の埋め込みパターンを、それと直交するN次元目の方向に周期信号の位相と絶対値を用いて変調しており、N次元目の方向に与えられる同期変位に対してN−1次元の空間では共通の影響を及ぼすようにしているという特徴を持つ。
また、時間変調部130cにおいて、時間方向と直交するN−1次元の方向(例えば映像信号の場合の空間方向)で、埋め込みパターン922の位相が異なるようにすることで、例えば、映像信号の場合に、最低の映像信号量子化値未満になって実際には電子透かしの埋め込みがなされないフレームが発生するのを防ぐことができ、電子透かしの伝送路としての映像信号を有効利用できると共に、電子透かしの振幅の大きいフレームを狙って改変するといった攻撃に対する耐性を増すことができる。
また、埋め込みパターンN−1次元空間上で位相が拡散されていることにより、相関計算の結果の中で埋め込み前信号に起因して現れるノイズ成分の大きさがより小さくなり、結果、より信頼性の高い電子透かしの埋め込み、検出が可能となり、また従来と同程度の信頼性でより品質劣化の少ない電子透かしの埋め込み、検出が可能となる。
[第7の実施の形態]
<時間軸複数周波数帯域埋め込み>
以下に、本発明の第7の実施の形態における電子透かし埋め込み装置について説明する。
本実施の形態は、第1の実施の形態における電子透かし埋め込み装置100の電子透かし埋め込みを異なる周期信号に基づいて複数同時に行い、より長いスペクトル拡散系列を用いて埋め込み情報を埋め込む例である。
図52は、本発明の第7の実施の形態における電子透かし埋め込み装置及び電子透かし検出装置の構成例を示す。
<電子透かし埋め込み装置>
図52に示す電子透かし埋め込み装置500は、複素パターン生成部510、時間変調部520、埋め込みパターン重畳部530から構成され、埋め込み情報3111、埋め込み前信号3112が入力され、埋め込み済み信号3113を出力する。
電子透かし埋め込み装置500による電子透かしの埋め込み処理は以下の手順で実施される。
図53は、本発明の第7の実施の形態における電子透かし埋め込み装置の動作のフローチャートである。
ステップ1601) 複素パターン生成部510において、入力された埋め込み情報3111に基づいて、複数の埋め込み複素パターン3121を生成する。
各埋め込み複素パターン3121は、複素数から構成されるN−1次元パターンであり、埋め込み情報の内容を表している。
複素パターン生成部510の動作の詳細については後述する。
ステップ1602) 時間変調部520において、各複素パターン生成部510で生成された各埋め込み複素パターン3121に基づいて埋め込みパターン3122を生成する。
時間変調部520の動作は、第1の実施の形態における時間変調部130と同様である。但し、各時間変調部520において生成する周期信号はそれぞれが互いに直交する周期関数であるとする。例えば、それぞれ基本周波数の異なる周期関数であっても良い。
また、時間変調部520として、第1の実施の形態以外の実施の形態で示した時間変調部を用いても構わない。例えば、第2の実施の形態、もしくは第6の実施の形態の時間変調部を用いても構わない。
時間変調部520として、第2の実施の形態の時間変調部130bを利用する場合には、複数の周波数の時間変調の処理を一度のフーリエ変換で実施することも可能である。
ステップ1603) 埋め込みパターン重畳部530において、各時間変調部520で生成された各埋め込みパターン3122を、入力された埋め込み前信号3112に重畳し、埋め込み済み信号3113を出力する。
埋め込みパターン重畳部530の動作の詳細については後述する。
<電子透かし埋め込み装置−複素パターン生成部>
以下に、上記の複素パターン生成部510の動作の詳細を説明する。
図54は、本発明の第7の実施の形態における複素パターン生成部の構成例を示す。
複素パターン生成部510は、埋め込み系列生成部511、複数の複素配列生成部512から構成され、埋め込み情報3111が入力され、埋め込み複素パターン3121を出力する。
複素パターン生成部510による埋め込み複素パターン生成処理は以下の手順で実施される。
図55は、本発明の第7の実施の形態における複素パターン生成部の動作のフローチャートである。
ステップ1701) 埋め込み系列生成部511において、入力された埋め込み情報3111に基づいて、埋め込み情報を表す数値の列を生成し、これを分割して複数の埋め込み系列3211を生成する。
埋め込み系列生成部511の動作の詳細については後述する。
ステップ1702) 複素配列生成部512において、埋め込み系列生成部511で生成された各埋め込み系列3213を、N−1次元の複素配列上の要素の実部及び虚部に割り当て、埋め込み複素パターン3121を生成する。
個々の複素配列生成部512の動作は、第1の実施の形態における複素配列生成部112の動作と同様である。
また、複素パターン生成部510を第3の実施の形態における複素パターン生成部110bに基づいて構成するようにしても良い。すなわち、複素配列生成部512で得られたパターンを更に、第3の実施の形態におけるN−1次元逆フーリエ変換部113と同様の処理によりフーリエ変換した結果を埋め込む複素パターン3121としても良い。
<電子透かし埋め込み装置−複素パターン生成部−埋め込み系列生成部>
埋め込み系列生成部511では、第1の実施の形態における埋め込み系列生成部111と同様の手順によって埋め込み系列を生成した後、埋め込み系列を複数の部分に分割する。例えば、埋め込み系列生成部111と同様の手順によって系列w={w1,w2,…,wnL}が生成されたとき、各埋め込み系列3213w[1],w[2],…,w[n]を、
但し、nは分割の総数である。
なお、ここでは埋め込み系列を先頭から順に所定の数ずつ分割する例を示したが、予め決められた分割方法で分割すればどのように分割しても良い。例えば、
<電子透かし埋め込み装置−埋め込みパターン重畳部>
以下に、埋め込みパターン重畳部530の動作の詳細を説明する。
埋め込みパターン重畳部530の動作は、第1の実施の形態における埋め込みパターン重畳部140と略同様であるが、以下の点のみが異なっている。
埋め込みパターン重畳部530では、埋め込み前信号3112として入力されたN次元信号に対し、各時間変調部520で生成されたN次元の各埋め込みパターン3122を加算することで重畳し、重畳した結果のN次元信号を埋め込み済み信号3113として出力する。このとき、複数の埋め込みパターン3122を全て加算して重畳する。また、埋め込み強度として各埋め込みパターン3122を異なる強度で強調して重畳しても構わない。例えば、埋め込みを行う各埋め込みパターン3122の周波数帯域に対する劣化特性が異なる場合などにそれぞれ埋め込み強度を異ならせるようにして、各埋め込みパターンの検出が同様の精度で行われるようにしても良い。
<電子透かし検出装置>
本実施の形態における電子透かし検出装置600は、複数の同期検出部620、検出情報抽出部630から構成され、埋め込み済み信号3113が入力され、検出情報3114を出力する。
電子透かし検出装置600による電子透かし検出処理は以下の手順で実施される。
図56は、本発明の第7の実施の形態における電子透かし検出装置の動作のフローチャートである。
ステップ1801) 各時間復調部610において時間軸方向の復調を行い、検出複素パターン3161を得る。各時間復調部610における処理の内容は第1の実施の形態の電子透かし検出装置200における時間復調部210と同様であるが、各時間復調部610毎に、電子透かし埋め込み装置500の時間変調部520で用いた周期関数をそれぞれ用いる。
なお、時間復調部610による時間復調処理に先立ち、埋め込み済み信号3113に対して前処理を行っても良いことは第1の実施の形態の電子透かし検出装置200と同様である。
また、時間復調部610として、第1の実施の形態以外の実施の形態で示した時間復調部を用いても構わない。例えば、第2の実施の形態における時間復調部210cを用いても構わない。
時間復調部610として、第2の実施の形態の時間復調部210cを利用する場合には、複数の周波数の時間復調処理を一度のフーリエ変換で実施することも可能である。
ステップ1802) 各同期検出部620において、時間復調部610で得られた各検出複素パターン3161から、それぞれ埋め込み済み信号3113に対して予め加えられていた時間軸(N番目の次元の軸)の方向で同期変位の大きさを検出し、同期変位量3162として出力する。
同期検出部620の動作は、第5の実施の形態における電子透かし検出装置300の同期検出部320と同様である。
ステップ1803) 検出情報抽出部630において、時間復調部610で得られた各同期変位量3162に基づいて電子透かし埋め込み装置500で埋め込まれた電子透かし情報を抽出し、検出情報3114として出力する。
検出情報抽出部630の動作の詳細については後述する。
<電子透かし検出装置−検出情報抽出部>
以下に、検出情報抽出部の動作を詳細に説明する。
図57は、本発明の第7の実施の形態における検出情報抽出部の構成を示す。
同図に示す検出情報抽出部630は、第5の実施の形態の検出情報抽出部330に類似した構成であり、検出系列抽出部631が、入力された各検出複素パターン3161及び各同期変位量3162毎に容易されている点が異なる。
なお、図57においては、図54との対応の理解を容易にするため、下から上に情報が流れるように構成が記載されていることに注意されたい。
検出情報抽出部630による検出情報抽出処理は、複数の検出系列抽出部631が、それぞれ入力された検出複素パターン3161及び同期変位量3162に基づいて検出系列3313を抽出する点と、相関値計算部632の動作の詳細とを除き、第5の実施の形態の検出情報抽出部330における検出情報抽出処理と同様である。
また、第5の実施の形態で述べた検出情報抽出部330の他の構成例のように、最大値判定部633を用いず、同期検出部320において最大の複素相関値を得た埋め込み系列を持って検出情報を再構成すると共に、同期検出部320で得られた同期変位量に基づいて、当該検出情報の信頼性を評価するための相関値を改めて計算しなおすようにしても良い。
<電子透かし検出装置−検出情報抽出部−相関値計算部>
以下に相関値計算部632の動作について詳細に説明する。
相関値計算部632における処理は以下の手順で実施される。
1) 検出系列抽出部631によって得られた各検出系列3313i"[1],i"[2],…を統合し、系列i"を得る。すなわち、
ここで、i"の肩に記載した[k]は、k番目の検出系列抽出部631によってk番目の検出複素パターン3161から得られた検出系列であることを表し、nは入力される検出複素パターン3161の総数である。なお、ここでは、各検出系列を単純に連結する例を示したが、電子透かし埋め込み装置500の埋め込み系列生成部511における埋め込み系列の分割方法に対応していれば、各検出系列から予め決められた順序で値を取り出して系列を結合するようにされていても構わない。例えば、次のように結合しても構わない。
2) 上記の1)で得られた系列i"を元に、第5の実施の形態の電子透かし検出装置300の相関値計算部332と同様の処理により、相関値3314を求める。但し、相関計算の対象となる考えられる埋め込み系列は、電子透かし埋め込み装置500の埋め込み系列生成部511において生成され、分割される前の系列w={w
1,w
2,…,w
nL}であることに注意されたい。
<同期変位量の統合による精度向上>
同期検出部620において、各検出複素パターン3161毎に得られた同期変位量3162に基づき、次のような手順によってより精度の高い同期変位量を求めるようにしても良い。
1) 各同期変位量3162を、
とする。ここで、T
1,T
2,…は、各時間復調部610の周期信号の周期である。
2) △t1,△t2,…から最大のものを一つ選び△tmaxとする。あるいは、周期が最大の周期信号に対応する△tiを選んでも良い。
3) 各iに対して△ti,Ti,△tmaxから次の方程式を考えniを求める。
4) 各n
iに最も近い整数値をそれぞれn'
iとする。
5) n'iを用いて下記の△t'iを求める。
これは、各周期信号毎に、△t
maxの位置に合わせて、n'
i周期目の位置でのN次元目の軸方向での変位量を△t'
iとして求めたことになる。
図58に2つの周期信号を用いた場合の上記の計算の様子を示す。同図では周期6の周期信号1に対して、△θ1=5π/3,周期4の周期信号2に対して△θ2=π/2が得られており、これが白丸で表されている。このとき△t1=5,△t2=1となる。また、△t2+T2,△t2+2T2の位置を黒丸で表している。△tmaxとして△t1が選ばれ、上記の手順3)、4)によりn' 2=1が得られる。これは、2つの黒丸のうち、左側の黒丸の位置で、2つの周期信号のそれぞれ位相が△θ1、△θ2の点が重なることを表す。結果、△t' 2=△t2+n' 2T2=5が得られる。
なお、△tmaxとして選んだ周期信号に対応するiについては、n'i=1となる。
6) 上記のようにして得た△t'iの平均値を求め、全体としての変位量△tとする。
図58の例では、各同期変位量の検出に誤差がない場合の例を示したが、各同期変位量の検出に誤差があった場合には、niが整数とはならない可能性がある。上記の手順4)でn'iを整数として求め、最後に△t'iの平均値を求めることで、誤差を考慮したN次元目の軸における変位量の最尤値を求めることになる。
また、△t'iの平均値を求める際、例えば、明らかに位置のずれた変位量を無視するようにしても良い。これにより、例えば、特定の周期信号に対応する周波数に対して攻撃が加えられ、検出複素パターン3161から得られる同期変位量の検出に失敗してしまった場合を除去して考えることができる。
7) △tは実際のN次元目の方向の変位量を精度よく求められた値であるから、これから各周期信号の同期変位量
上記のように各検出複素パターン3161毎に得られた同期変位量3162に基づいてN次元目の方向の変位量を精度良く求め、それを用いて同期変位量を求め直すことで、より精度の高い同期変位量を算出することが可能となり、結果、電子透かしの検出精度を高めることができる。
<第7の実施の形態の特徴>
本実施の形態の電子透かし埋め込み装置及び電子透かし検出装置によれば、複数の周波数帯域を用いることでより情報長の長い埋め込み情報を電子透かしとして埋め込むことができる。
また、各個々別々に同期合わせが行われて得られた結果の検出系列を、最終的に全体として相関値を計算して検出の信頼性を評価することで、個々別々に電子透かしを埋め込み、検出を行うよりもより正確に全体の検出結果の信頼性を明らかにすることができる。
また、スペクトル拡散系列長をより長くすることができ、より信頼性の高い電子透かし埋め込みを行うことができる。これについて下記に説明する。
前述の文献「山本奏、中村高雄、高嶋陽一、片山淳、北原亮、宮武隆「フレーム重畳型動画像電子透かしの検出性能評価に関する一考察」情報科学技術フォーラムFIT2005, J-029, 2005」によると、スペクトル拡散と相関計算を利用した電子透かしの場合、電子透かしの偽陽性の意味での検出の信頼性を表す検出評価値は、スペクトル拡散の系列長の平方根に比例して大きくなる。一方、本実施の形態のように複数の周波数帯域に重畳して電子透かしを埋め込むとき、全体の信号劣化を抑えるためには各周波数帯域毎の透かし信号のエネルギーを少なくする必要がある。すなわち、信号劣化の程度を変化させずに(例えば、PSNRの値を変化させずに)n個の周波数帯域に多重化する場合、個々の透かし信号のエネルギーは単独の周波数帯域に埋め込む場合と比較して1/nとなり、振幅は1/√nとなる。これは、個々の埋め込み強度が1/√nとなることと等しい。
前述の文献「山本奏、中村高雄、高嶋陽一、片山淳、北原亮、宮武隆「フレーム重畳型動画像電子透かしの検出性能評価に関する一考察」情報科学技術フォーラムFIT2005, J-029, 2005」によると、埋め込み強度が1/√nとなるとき、透かしにとってノイズとなる原画成分が十分小さければ、電子透かしの検出評価値は、埋め込み強度によらず一定となる(当該文献の図1でαが大きくなる極限、すなわち埋め込み強度が原画成分に比べて十分に大きくなるとき、E[ρ]は√lに漸近する)また、透かしにとってノイズとなる原画成分が十分大きければ、電子透かしの検出評価値は、1/√nとなる(当該文献の図1でαが小さくなる極限、すなわち埋め込み強度が原画成分に比べて十分に小さくなるとき、E[ρ]は原点を通る直線に近づく)。
結果として、n個の周波数帯域に多重化する場合、単独の周波数帯域に埋め込む場合と比較して、
−透かしにとってノイズとなる原画成分が十分小さければ、電子透かしの検出評価値は、スペクトル拡散の系列長の平方根に比例して大きくなり、
−透かしにとってノイズとなる原画成分が十分大きい場合でも、最悪でも電子透かしの検出評価値は変化しない
こととなり、全体としては検出評価値は大きくなり、結果としてより信頼度の高い検出が可能となる。
また、各検出複素パターン3161毎に得られた同期変位量3162に基づいてN次元目の方向の変位量を精度良く求め、それを用いて同期変位量を求め直す方法を用いれば、より精度の高い同期変位量を算出することが可能となり、電子透かしの検出精度を高めることができ、逆に同程度の検出精度であれば電子透かしの埋め込みを弱くすることができ、品質劣化の少ない電子透かしを実現できる。
また、時間変調部520及び時間復調部610として、本発明の第2の実施の形態の時間変調部130b及び時間復調部210c、210dを利用する場合には、複数の周波数の時間変調、時間復調の処理を一度のフーリエ変換で実施することができ、より高速な処理が可能となる。
[第8の実施の形態]
<時間多重埋め込み>
以下に、本発明の第8の実施の形態における電子透かし埋め込み装置及び電子透かし検出装置について説明する。
本実施の形態は、第5の実施の形態における電子透かし埋め込み装置及び電子透かし検出装置を利用し、入力前信号に対して同期パターンとそれに続く複数の埋め込み情報に基づく埋め込みパターンを埋め込み、同期の変位量を検出して多量の埋め込み情報を効率よく埋め込み、検出する例である。
<電子透かし埋め込み装置>
本実施の形態における電子透かし埋め込み装置は、第1の実施の形態における電子透かし埋め込み装置100と同様の構成を持っており、複素パターン生成部110の動作が一部異なっている。
本実施の形態における電子透かし埋め込み装置100による電子透かしの埋め込み処理は以下の手順で行われる。
図59は、本発明の第8の実施の形態における電子透かし埋め込み装置の動作のフローチャートである。
ステップ1901) 複素パターン生成部110において、入力された埋め込み情報911に基づいて埋め込み複素パターン921を生成する。このとき、時間変調部130の周期信号生成部131の生成する周期信号の1周期毎に、埋め込み情報に基づいて埋め込み複素パターン921が変化するように生成する。
複素パターン生成部110の動作の詳細については後述する。
ステップ1902) 時間変調部130において、複素パターン生成部110で生成され第1の記憶部150に格納されている複素パターン921に基づいて埋め込みパターン922を生成し、第2の記憶部160に格納する。
時間変調部130の動作は、複素パターン生成部110の生成した埋め込み複素パターン921に応じて、埋め込みパターン922が周期毎に変化する点を除いて、第1の実施の形態における時間変調部130の動作と同様である。
なお、時間変調部130については、その他の実施の形態の時間変調部を用いてもよい。例えば、第2の実施の形態の時間変調部130bを用いても構わないし、第6の実施の形態の時間変調部130cを用いても構わない。
ステップ1903) 埋め込みパターン重畳部140において、時間変調部130で生成され、第2の記憶部160に格納されている埋め込みパターン922を、入力された埋め込み前信号912に重畳し、埋め込み済み信号923を出力する。
埋め込みパターン重畳部140の動作は、第1の実施の形態と同様である。
<電子透かし埋め込み装置−複素パターン生成部>
以下に、複素パターン生成部110cの動作の詳細を説明する。
図60は、本発明の第8の実施の形態における複素パターン生成部の構成例を示す。
複素パターン生成部110cは、埋め込み系列生成部117、複素配列生成部116、埋め込み情報分割部114、同期系列生成部115から構成され、埋め込み情報911が入力され、埋め込み複素パターン921を出力する。
複素パターン生成部110cによる埋め込み複素パターンの生成処理は以下の手順で実施される。
図61は、本発明の第8の実施の形態における複素パターン生成部の動作のフローチャートである。
ステップ2001) 同期系列生成部115において、予め決められた同期合わせ用の数値の列である同期系列917を生成する。
同期系列生成部115の動作の詳細については後述する。
ステップ2002) 埋め込み情報分割部114において、入力された埋め込み情報911を複数の部分埋め込み情報916に分割する。分割の方法はどのようなものでも構わない。例えば、埋め込み情報911の前から順にKビットずつ分割するようなものであってもよい。
ステップ2003) 埋め込み系列生成部117において、埋め込み情報分割部114で得られた部分埋め込み情報916に基づいて、埋め込み情報を表す数値の列である埋め込み系列913を生成する。
埋め込み系列生成部117の動作は、複数の部分埋め込み情報916のそれぞれに対して埋め込み系列913を生成する点を除いて、第1の実施の形態の埋め込み系列生成部111と同様である。
ステップ2004) 複素配列生成部116において、同期系列生成部115で生成された同期系列917及び、埋め込み系列生成部117で生成された各埋め込み系列913を、それぞれN−1次元の複素配列上の要素の実部及び虚部に割り当て、複数の埋め込み複素パターン921を生成する。
複素配列生成部116の動作の詳細については後述する。
<電子透かし埋め込み装置−複素パターン生成部−同期系列生成部>
同期系列生成部115では、次のような処理により同期系列115を生成する。
同期系列115は、電子透かし検出装置において同期合わせに用いる値の列であり、他の埋め込み系列と重複しないように擬似乱数列を用いて生成する。すなわち、擬似乱数列SPN={SPN1,SPN2,…,SPNL}(Lは系列の長さ)とするとき、同期系列s={s1,s2,…,sL}を
s=SPN={SPN1,SPN2,…,SPNL} (116)
のように決定しても良い。
<電子透かし埋め込み装置−複素パターン生成部−複素配列生成部>
複素配列生成部116の動作は、第1の実施の形態の電子透かし埋め込み装置における複素配列生成部112と類似しているが、同期系列917及び複数の埋め込み系列913のそれぞれに対応する複素配列を構成し、それを時間変調部130の周期信号生成部131の生成する周期信号の1周期毎に、埋め込み複素パターン921が順次入れ替わるように生成する点が異なっている。
複素配列生成部116では、次のような処理により埋め込み複素パターン921を生成する。
1) 第1の実施の形態の電子透かし埋め込み装置100における複素配列生成部112と同様の手順により、同期系列生成部115で生成された同期系列917に基づいた埋め込み複素パターンSPを生成する。
2) 第1の実施の形態の電子透かし埋め込み装置100における複素配列生成部112と同様の手順により、埋め込み系列生成部117で生成された各埋め込み系列913に基づいた埋め込み複素パターンA1,A2,…,Akを生成する。但し、kは埋め込み系列生成部117で生成された埋め込み系列913の数、即ち、埋め込み情報分割部114での情報の分割数である。
3) 時間変調部130の周期信号生成部131の生成する周期信号の1周期毎に、下記の順に埋め込み複素パターンを繰り返し出力する。
SP,SP,A1,A2,…,Ak,SP,SP,A1,A2,…,Ak,…
(117)
末尾の…は、全体が同様に繰り返されることを表す。
ここで、同期系列917に基づいた埋め込み複素パターンSPを2回繰り返して出力しているが、これは3回以上繰り返すようにしても構わない。その場合は、電子透かし検出装置において複数回繰り返していることを想定して電子透かしの検出を行うようにすることは言うまでもない。
このように生成された埋め込み複素パターン921に基づいて埋め込みパターンが生成され、埋め込み前信号に重畳されることで、埋め込み情報を時分割で埋め込むことになる。
図62に、複数の情報を時分割で連続して埋め込む例を示す。同図のように、各埋め込み複素パターンから生成される埋め込みパターンが連結されて埋め込み前信号に重畳される。
<電子透かし検出装置>
図63は、本発明の第8の実施の形態における電子透かし検出装置の構成例を示す。
同図に示す電子透かし検出装置700は、埋め込み済み信号分割部710、同期時間復調部720、同期検出部730、同期済信号分割部740、時間復調部750、検出情報抽出部760、パターン記憶部770から構成され、埋め込み済み信号923が入力され、検出情報3812を出力する。
なお、図63において、図10との対応の理解を容易にするため、下から上に情報が流れるように構成が記載されていることに注意されたい。
電子透かし検出装置700による電子透かしの検出処理は以下の手順で実施される。
図64は、本発明の第8の実施の形態における電子透かし検出装置の動作のフローチャートである。
ステップ2101) 埋め込み済み信号分割部710において、電子透かし埋め込み装置100の時間変調部130における周期信号の周期と同じ長さの分の埋め込み済み信号923を入力し、部分埋め込み済み信号3816を得る。
ステップ2102) 同期時間復調部720において、ステップ2101で分割された部分埋め込み済み信号3816に対し、第1の実施の形態における電子透かし検出装置の時間復調部210と同様の手順によって複素パターンに復調し、これを同期複素パターン3813とする。
なお、同期時間復調部720については、本発明のこの他の実施の形態における時間復調部と同様の動作としてもよい。例えば、第2の実施の形態の時間復調部210cの動作と同様にしても構わない。
ステップ2103) 同期検出部730において、ステップ2102で得られた同期複素パターン3813に対し、第5の実施の形態における電子透かし検出装置300の同期検出部320と同様の手順によって同期変位量3814を求める。
同期検出部730において、同期変位量を求められなかった場合には、ステップ2101に戻り、1周期分後ろの埋め込み済み信号に対して処理を繰り返す。
同期検出部730の動作の詳細については後述する。
ステップ2104) 同期済信号分割部740において、ステップ2103で得られた同期変位量3814の分、埋め込み済信号923をシフトさせた位置から、電子透かし埋め込み装置100の時間変調部130における周期信号の周期と同じ長さで埋め込み済み信号923を分割し、電子透かし埋め込み装置100の埋め込み情報分割部114で分割された埋め込み情報の数の同期済部分信号3817を得る。
同期済信号分割部740の動作の詳細については後述する。
ステップ2105) 時間復調部750において、ステップ2104で分割された各同期済み部分信号3817に対し、第1の実施の形態における電子透かし検出装置200の時間復調部210と同様の手順によって複素パターンに復調し、これを検出複素パターン3815とし、パターン記憶部770に格納する。
なお、時間復調部750については、本発明のこの他の実施の形態における時間復調部と同様の動作としてもよい。例えば、第2の実施の形態の時間復調部210cの動作と同様にしても構わない。
ステップ2106) 検出情報抽出部760において、ステップ2105で得られた各検出複素パターン3815に対し、第1の実施の形態における電子透かし検出装置200の検出情報抽出部220と同様の手順により各々の検出情報を得た上で、さらに、各検出情報を連結し、全体の検出情報3812を出力する。
検出情報抽出部760の動作の詳細については後述する。
<電子透かし検出装置−同期検出部>
以下に、同期検出部730の動作の詳細を説明する。
同期検出部730における動作は、第5の実施の形態における電子透かし検出装置300の同期検出部320と同様であるが、以下の点が異なっている。
第5の実施の形態における複素相関値計算部322において、想定される埋め込み系列に基づいて構成された複素数系列との複素相関を計算したのに対し、本実施の形態の複素相関値計算部322では、電子透かし埋め込み装置110cの同期系列生成部115で生成される同期系列917に基づいて構成された複素数系列との複素相関を計算する。
また、同期検出最大値判定部324において、絶対値1513の値が所定の閾値を越えていない場合には同期パターンを検出できなかったものと判断し同期変位量1502を出力しない。
前述のように埋め込み済み信号分割部710で1周期分ずつ順次切り出された埋め込み済信号に対して、同期変位量3814が求められるまで繰り返し処理を行うことになり、同期系列が見つかるまで埋め込み済信号を順次スキャンすることになる。
このとき、図62で示したように、同期系列から構成された埋め込みパターン(図62の「同期パターン」)は2回繰り返されているため、予め同期の取れていないどのようなタイミングから処理を開始しても、1周期分ずつの処理を行うだけでいずれ1周期分の同期パターンを巡回させたものにあたるため、同期パターンを検出することができる。
このとき、例えば、映像信号の場合などで1フレームずつずらしながら同期パターンを探す必要はなく、1周期分ずつ処理することができるため、効率的に同期パターンの探索が可能である。
この様子を図65に示す。
<電子透かし検出装置−同期済信号分割部>
以下に、同期済信号分割部740の動作の詳細を説明する。
同期済信号分割部740では、同期検出部730で得られた同期変位量3814に基づき、同期を合わせた位置から埋め込み済信号923を1周期分ずつ分割する。
すなわち、同期変位量3814
の分だけ埋め込み済信号923を読み飛ばす、もしくは、T−△tの分だけ埋め込み済信号923を遡って分割を行えば、埋め込みパターンと同期のあった形で1周期分ずつ切り出すことができる。
なお、同期パターンの検出タイミングによって、同期済信号分割部740で分割された先頭の同期済部分信号3817が同期系列の埋め込まれた区間である場合と、一つ目の埋め込み系列が埋め込まれた区間である場合とありうるが、これについては各区間に対して再度同期系列もしくは該当する埋め込み系列の検出を試行することで容易に判断することが可能である。
このようにして、各埋め込み系列に対応する区間をそれぞれ同期済部分信号3817として切り出す。
<電子透かし検出装置―検出情報抽出部>
以下に、検出情報抽出部760の構成例を示す。
図66は、本発明の第8の実施の形態における検出情報抽出部の構成例である。
検出情報抽出部760は、検出系列抽出部761、相関値計算部762、最大値判定部763、検出情報再構成部764、検出情報連結部765から構成され、検出複素パターン3815が入力され、検出情報3812を出力する。
なお、同図においては、図60との対応の理解を容易にするため、下から上に情報が流れるように構成が記載されていることに注意されたい。
検出情報抽出部760による検出情報抽出処理は、以下の手順で実施される。
図67は、本発明の第8の実施の形態における検出情報抽出部の動作のフローチャートである。
ステップ2201) 検出系列抽出部761、相関値計算部762、最大値判定部763、検出情報再構成部764の各部において、第1の実施の形態の電子透かし検出装置200における検出情報抽出部220の対応する各部の動作と同様の処理によって部分検出情報3615を得る。
但し、入力された各検出複素パターン3815毎にそれぞれ処理を行い、検出情報再構成部764が複数の部分検出情報3615を出力する点が異なっている。
ステップ2202) 検出情報連結部765において、検出情報再構成部764で得られた複数の部分検出情報3615を連結し、検出情報3812を構成し、これを出力する。
複数の部分検出情報3615の連結は、電子透かし埋め込み装置の埋め込み情報分割部114における分割処理の逆処理となっている。例えば、埋め込み情報分割部114において埋め込み情報911の前から順にKビットずつに分割するようにされている場合は、部分検出情報3615を順に連結するようにしてもよい。
<電子透かし検出装置のその他の構成例>
上記の例において、同期済信号分割部740では、1周期分ずつ埋め込み済信号を分割する例を示したが、電子透かし埋め込み装置100の複素配列生成部116において、同期系列に対応する埋め込み複素パターンが、4回以上繰り返すようにして埋め込まれている場合には、同期済信号分割部740において、複数周期分ずつ埋め込み済信号を分割するようにしても構わない。
上記の例において、埋め込み済信号分割部710では、1周期分ずつ埋め込み済信号923を分割する例を示したが、電子透かし埋め込み装置100の複素配列生成部116において、各埋め込み系列に対応する埋め込み複素パターンが、下記の例のように複数回ずつ続けて繰り返すように生成されている場合には、埋め込み済信号分割部710において、繰り返しの内の先頭位置を判断した上で複数周期分ずつ埋め込み済信号を分割するようにしてもよい。
SP,SP,SP,SP,A1,A1,A2,A2,…,Ak,Ak,SP,SP,…
(118)
繰り返しの内の先頭位置を判断するためには、同期変位量3814によって1周期の開始点は既に明らかであるため、1周期分で切り出した区間毎に同期系列もしくは該当する埋め込み系列の検出を試みることで容易に判断することが可能である。
<第8の実施の形態の特徴>
本実施の形態の電子透かし埋め込み装置及び電子透かし検出装置によれば、時分割で信号の区間毎に異なる部分埋め込み情報を埋め込むことで、多量の埋め込み情報を信号に埋め込むことが可能となる。
電子透かし検出においては、1周期開始点の同期合わせを容易に実施できるため、変位量を順次試すといった総当り的な手法、すなわち例えば映像信号の場合に同期信号を1フレームずれ毎にマッチングして探索するような手法によらず、効率的かつ高速に同期合わせを行い、電子透かしを検出することが可能となる。
また、本実施の形態の電子透かし埋め込み装置の変形例として、同期系列を各埋め込み系列に重畳するように埋め込むようにしてもよい。すなわち、同期系列から生成される埋め込みパターンを各埋め込み系列から生成される埋め込みパターンと加算し、次のように埋め込む。
SP+A1,SP+A2,SP+A3,…,SP+Ak,SP+A1,…
このように埋め込みを行った場合、同期系列を検出する際のステップ2101において、埋め込み済み信号923を周期信号の周期と同じ長さに分割せずに、同期系列の検出に十分な量の埋め込み済信号を用いて精度良く同期系列を検出できる。これから得られた同期変位量に基づいて埋め込み済信号を分割して各埋め込み系列を検出することができることは既に述べたものと同様である。
[第9の実施の形態]
<直交変換領域埋め込み>
以下に、第9の実施の形態における電子透かし埋め込み装置について説明する。
本実施の形態は、第1の実施の形態における電子透かし埋め込み装置の別な構成例を示すものである。
<電子透かし埋め込み装置>
図68は、本発明の第9の実施の形態における電子透かし埋め込み装置及び電子透かし検出装置の構成例を示す。
本実施の形態における電子透かし埋め込み装置800は、複素パターン生成部810、埋め込みパターン重畳部820、埋め込み前信号変換部830、埋め込み済信号逆変換部840、第1の記憶部850から構成され、埋め込み情報911、埋め込み前信号912が入力され、埋め込み済信号923を出力する。
以下に、電子透かし埋め込み装置800の動作を説明する。
電子透かし埋め込み装置800による電子透かし埋め込み処理は以下の手順で実施される。
図69は、本発明の第9の実施の形態における電子透かし埋め込み装置の動作のフローチャートである。
ステップ2301) 複素パターン生成部810において、入力された埋め込み情報911に基づいて埋め込み複素パターン4021を生成し、第1の記憶部850に格納する。
複素パターン生成部810の処理は、第1の実施の形態の電子透かし埋め込み装置100における複素パターン生成部110と同様である。
ステップ2302) 埋め込み前信号912から所定の区間Tの長さの信号を入力する。
ステップ2303) 埋め込み前信号変換部830において、ステップ2302で得た区間の位置(x1,x2,…,xN−1)毎に1次元離散フーリエ変換し、周波数分解し、変換済み埋め込み前信号4022を得る。
埋め込み前信号変換部830の動作の詳細については後述する。
ステップ2304) 埋め込みパターン重畳部820において、ステップ2303で得られた変換済み埋め込み前信号4022に対し、ステップ2301で得られた埋め込み複素パターン4021を重畳し、逆変換前埋め込み済み信号4023を得る。
埋め込みパターン重畳部820の動作の詳細については後述する。
ステップ2305) 埋め込み済信号逆変換部840において、ステップ2304で得られた逆変換前埋め込み済信号4023に対し、位置(x1,x2,…,xN−1)毎に一次元離散逆フーリエ変換し、埋め込み済み信号923を得る。
埋め込み済信号逆変換部840の動作の詳細については後述する。
ステップ2306) 埋め込み前信号912を全て処理し終えるまで上記のステップ2302〜2305を繰り返す。
<電子透かし埋め込み装置−埋め込み前信号変換部>
以下に、埋め込み前信号変換部830の動作の詳細について説明する。
埋め込み前信号変換部830では、埋め込み前信号912から取り出された区間Tの信号を1次元の離散フーリエ変換し、周波数分解する。
具体的に式を用いて以下に説明する。
埋め込み前信号912をI(x1,x2,…,xN−1,t)とする。
I(x1,x2,…,xN−1,t)を次のように一次元離散フーリエ変換し、η(x1,x2,…,xN−1,u)を得る。
但し、Tは予め決められた所定の標本数であるとする。
η(x1,x2,…,xN−1,u)を変換済み埋め込み前信号4022として出力する。
<電子透かし埋め込み装置−埋め込みパターン重畳部>
以下に、埋め込みパターン重畳部820の動作の詳細を説明する。
埋め込みパターン重畳部820では、埋め込み前信号変換部830で得られたN次元の変換済み埋め込み前信号4022の、特定の周波数に対応するN−1次元平面部分に対し、複素パターン生成部810で生成されたN−1次元の埋め込み複素パターン4021を加算することで重畳し、重畳した結果の周波数を含む全体のN次元の信号を逆変換前埋め込み済み信号4023として出力する。
具体的に式を用いて以下に説明する。
埋め込み前信号変換部830で得られた変換済み埋め込み前信号4022をη(x1,x2,…,xN−1,u)、複素パターン生成部810で得られた埋め込み複素パターン4021をP(x1,x2,…,xN−1)とし、生成する逆変換前埋め込み済み信号4023を、η'(x1,x2,…,xN−1,u)とする。
但し、*は複素共役を表し、u
0は予め決められた周波数、Uは周波数標本の数であるとする。すなわち、ここでは、u=u
0とu=U−u
0が周波数u
0に対応するN−1次元平面として選択されていることになる。なお、u=u
0とu=U−u
0でPの共役複素数を与えるのは離散逆フーリエ変換の結果得られる信号が実数値となるためである。
また、αは強度パラメータであり、埋め込み前信号912の全体または部位から算出される特徴量に応じて変化するように構成されていても構わない点は、第1の実施の形態における埋め込みパターン重畳部140の場合と同様である。
また、埋め込み前信号912の大きさが埋め込み複素パターン4021よりも大きい場合は、埋め込み複素パターン4021を繰り返すように加算してもよい点も、第1の実施の形態における埋め込みパターン重畳部140の場合と同様である。
また、埋め込み複素パターンの重畳に先立ち、埋め込み複素パターン4021を複数倍、もしくは埋め込み前信号912の大きさに揃うように拡大するようにしても良い点も、第1の実施の形態における埋め込みパターン重畳部140の場合と同様である。
また、埋め込み複素パターンの重畳に先立ち、実際に重畳を行うu=u0及びu=u−u0となる変換済み埋め込み信号4022の部分をN−1次元の離散フーリエ変換で変換した後に重畳を行い、さらに、N−1次元の離散逆フーリエ変換で逆変換するようにしてもよい。
N−1次元の離散フーリエ変換を行う場合、埋め込み前信号変換部830での一次元離散フーリエ変換と合わせて、1回のN次元の離散フーリエ変換として処理してもよい。また、同様に、N−1次元の離散逆フーリエ変換を、後述の埋め込み済み信号逆変換部840での一次元離散逆フーリエ変換と合わせて、1回のN次元離散逆フーリエ変換として処理してもよい。但し、上記のように一次元離散フーリエ変換とN−1次元の離散フーリエ変換、一次元離散逆フーリエ変換とN−1次元の離散逆フーリエ変換とを、個々別々に実施することで、実際に重畳を行うu=u0及びu=U−u0のN−1次元平面についてのみN−1次元の離散フーリエ変換、離散逆フーリエ変換を行えば済むことから、処理を高速に行える利点がある。
<埋め込み済信号逆変換部>
以下に埋め込み済み信号逆変換部840の動作の詳細について説明する。
埋め込み済信号逆変換部840では、逆変換前埋め込み済み信号4023を位置(x1,x2,…,xN−1)毎に一次元離散逆フーリエ変換し、埋め込み済信号923を得る。
具体的に式を用いて以下に説明する。
逆変換前埋め込み済信号4023をη'(x1,x2,…,xN−1,u)とする。
η'(x1,x2,…,xN−1,u)を次のように一次元離散逆フーリエ変換し、I'(x1,x2,…,xN−1,t)を得る。
<第9の実施の形態の特徴>
本実施の形態の電子透かし埋め込み装置によれば、第1の実施の形態の電子透かし埋め込み装置と同様の特徴を持つ電子透かしを埋め込むことができる。
また、第7の実施の形態と同様の方法により、複素パターン生成部810において複数の複素パターンを生成し、埋め込みパターン重畳部820において、変換済埋め込み前信号4022の複数の周波数に対応するN−1次元平面部分に各複素パターンを加算するようにすることで、第7の実施の形態の電子透かし埋め込み装置と同様の特徴を持つ電子透かしを埋め込むことができる。
[その他の実施の形態]
以下に本発明のその他の実施の形態として、各実施の形態と組み合わせることができる構成例を示す。
<検出時のプレフィルタ使用>
第1乃至/及び第8の各実施の形態において、周期信号として正弦波を利用した場合、電子透かしが埋め込まれているのはN次元目の方向(例えば映像信号の場合に時間方向)の単一周波数になる。その他の周期信号を用いた場合にも、その基本周波数が最も重要である。電子透かし検出装置による検出に先立ち、埋め込み済み信号に対して該当の周波数を強調するフィルタ処理を行うことでより高精度に電子透かしの検出ができるようにしてもよい。
フィルタの例としては、FIRフィルタやIIRフィルタなどのデジタルフィルタを用いて特定の周波数帯域を強調する帯域通過型フィルタを構成しても良い。また、所定の閾値を越えるまたは下回る信号値を該当閾値に抑えるクリッピングフィルタや、所定の閾値を越えるまたは下回る信号値を0と見做すεフィルタ等といった非線形フィルタを用いることで、原画成分等の電子透かしにとってのノイズ成分を効率的に除去しながら電子透かし成分を残すようなフィルタ処理を行ってもよい。
また、本発明の第7の実施の形態においては、複数の周期信号を用いて複数の周波数帯域を利用して電子透かしを埋め込んでいるが、それぞれの周期信号に対する時間復調の処理に先立って、それぞれの周期信号に合わせた特性を持つフィルタをそれぞれ用いてフィルタ処理を行うようにしてもよい。
特に、本発明ではN次元目の方向の単一の周波数を用いて電子透かしの埋め込みを行うため、直線位相特性がなく位相特性の悪いフィルタを使用しても検出性能への影響がない。よってIIRフィルタのように位相特性の悪い代わりに少ないTAP数で鋭敏な周波数特性を持ち高速処理の可能なフィルタを用いることが可能となり高精度な電子透かし検出処理を高速に実行することが可能である。
<埋め込み済信号に対する処理>
本発明の各実施の形態において、例えば、図10、図52、図68などでは、電子透かし埋め込み装置から出力された埋め込み済み信号を直接電子透かし検出装置に入力するように描かれているが、埋め込み済信号を圧縮、符号化、配信、編集、改変などした上で電子透かし検出装置に入力されてもよいことは言うまでもない。また、埋め込み済信号を磁気媒体(例えば、VTR、DVD、フロッピー(登録商標)ディスク、CD、HDD等)やその他の媒体(フィルム等)に一旦記録したり、ネットワークを通じて伝送したり、光学的なデバイスを用いて再生(例えば映画としてスクリーンに映写する、CRTや液晶、プラズマなどのディスプレイで表示する等)したものをビデオカメラ、携帯電話のカメラ、フィルムを用いたカメラ等の撮影手段を用いて再撮影したりしても構わないことは言うまでもない。
<時間変調処理>
本発明の各実施の形態において、便宜上、「時間変調部」「時間復調部」と呼んでいるが、それが実際の信号において、必ずしも時間軸方向の変調を行うものである必要はなく、元のN−1次元と直交する次元であれば異なる次元方向の変調であっても構わない。
例えば、2次元の信号からなる画像信号に電子透かしを埋め込む場合に、画像の横方向で定義される1次元複素配列をN−1次元の埋め込み複素パターンとして構成し、これを縦方向に変調して2次元の埋め込みパターンを得るようにしても構わない。縦と横を入れ替えてもよいことは言うまでもない。
また、例えば、空間方向(X,Y)2次元と時間方向1次元で合計3次元の映像信号に電子透かしを埋め込む場合に、画像の横方向と時間方向で定義される2次元複素配列をN−1次元の埋め込み複素パターンとして構成し、これを縦方向に変調して3次元の埋め込みパターンを得るようにしても構わない。縦と横を入れ替えてもよいことは言うまでもない。
また、本発明の各実施の形態においては、入力信号である埋め込み前信号はN次元の信号である場合を例に説明したが、M(>N)次元の入力信号に対して、N次元の埋め込みを繰り返すように構成してもよい。
例えば、空間方向(X,Y)2次元と時間方向1次元で合計3次元の映像信号の入力に対して、映像の各フレーム画像毎に2次元の信号とみなし、上述のように横方向の1次元複素配列を縦方向に変調した2次元の埋め込みパターンを構成して埋め込みを行い、これを全てのフレームに対して繰り返し実施することで、電子透かしの埋め込みを行って構わない。電子透かしの検出に際しては、各フレーム毎に処理を行ってもよいし、各フレーム画像を重畳した信号に対して処理を行っても構わない。
<誤り訂正符号等の利用>
本発明の各実施の形態において、埋め込み系列生成部での埋め込み情報の処理に先立って、誤り訂正符号を用いて埋め込み情報を符号化してもよく、逆に、検出情報の出力に先立って誤り訂正符号を復号するようにしてもよい。
<N−1次元の直交変換>
本発明の第3の実施の形態では、N−1次元逆フーリエ変換部113、N−1次元フーリエ変換部225におけるN−1次元の複素パターンに対する直交変換の例として離散フーリエ変換を用いて説明したが、離散フーリエ変換以外の複素数から複素数の変換を行う直交変換方法を用いても構わない。
なお、N次元目の方向の同期変位を直交変換された領域で正しく処理できるためにはN次元目の方向の同期変位により発生した係数ej△θが保存される変換であればよく、直交変換は線形変換であることからこの条件は直交変換である時点で既に満たされている。
<一次元の線形変換>
また、第2の実施の形態では、時間変調部130bにおける一次元の変換の例として離散フーリエ変換を用いて説明したが、離散フーリエ変換以外の複素数から複素数の変換を行う線形変換方法であって、下記の条件を満たす周期関数を基底に持ち、逆変換が存在する線形変換方法であればどのようなものでも構わない。
また、同様に、本発明の第9の実施の形態では、埋め込み前信号変換部830及び埋め込み済信号逆変換部840における一次元の変換の例として一次元離散フーリエ変換及び一次元離散逆フーリエ変換を用いて説明したが、離散フーリエ変換以外の複素数から複素数の変換を行う線形変換方法であって、下記の条件を満たす周期関数を基底に持ち、逆変換が存在する線形変換方法であればどのようなものでも構わない。
条件:
1)周期分積分した結果が0となる。
2)自己相関関数が鋭敏なピークを持たない。
これらの条件の詳細については既に周期信号の例として述べたとおりである。
例えば、次のような線形変換であっても構わない。
の線形変換を考え、変換を表す変換行列をAとする。ここでCは複素数全体の集合を表す。
このときf(t)を上記の条件を満たす周期nの周期関数とし、
となる変換行列Aで表される線形変換であってもよい。ここでjは虚数単位である。
f(t)は図4A〜Cに示したような(図4A)(a)正弦波、(図4B)(b)三角波、(図4C)(c)矩形波であってもよい。
<同期合わせ信号としての利用>
本発明の第5の実施の形態では、埋め込み情報を表す埋め込みパターン自体を用いて時間方向の同期変位量を検出する方法を示したが、本発明の同期変位量検出方法を任意の電子透かし方法と組み合わせて用いてもよい。すなわち、任意の電子透かし方法による電子透かし埋め込みと併せて、本発明の電子透かし埋め込み方法を用いて専用の同期合わせ信号を埋め込むように電子透かし埋め込み装置を構成しておき、本発明の同期変位量検出方法を用いて該同期合わせ信号から同期合わせを行った後に、任意の電子透かし検出方法を用いて埋め込み情報を検出して出力するよう、電子透かし検出装置を構成しても構わない。
また、同期系列を埋め込むための周期信号の周期を、埋め込み系列を埋め込むための周期信号の周期の整数倍となるようにしてもよい。
<その他>
本発明の各実施の形態で示した構成を適宜組み合わせ使用しても構わない。
また、上記の各実施の形態の電子透かし埋め込み装置及び電子透かし検出装置の各構成要素の動作をプログラムとして構築し、コンピュータにインストールして実行させる、または、ネットワークを介して流通させることが可能である。
また、構築されたプログラムをハードディスクや、フレキシブルディスク・CD−ROM等の可搬記憶媒体に格納し、コンピュータにインストールする、または、配布することが可能である。
以上説明したように、本発明の一実施形態によれば、N(Nは2以上の整数)以上の次元を持つ入力信号に対して埋め込み情報を電子透かしとして人間の知覚に感知されないように埋め込む電子透かし埋め込み装置であって、前記埋め込み情報に基づき埋め込み系列を生成し、第1の記憶手段に格納する埋め込み系列生成手段と、前記第1の記憶手段の前記埋め込み系列に基づきN−1次元パターンを生成する配列生成手段と、前記N−1次元パターン上の値に応じて周期信号を変調することによりN次元の埋め込みパターンを生成し、第2の記憶手段に格納する変調手段と、前記第2の記憶手段に格納されている前記N次元の埋め込みパターンを取得し、該埋め込みパターンを前記入力信号に重畳する埋め込みパターン重畳手段と、を有することを特徴とする電子透かし埋め込み装置が提供される。
この電子透かし埋め込み装置によれば、N−1次元のパターンをN次元目の方向に変調し埋め込みを行うことで、N−1次元のパターンの埋め込み情報をN次元空間に広めた冗長性により、例えば高圧縮や再撮影などの改変に対しても十分な耐性があり、品質劣化を抑え、情報長の長い情報を電子透かしとして埋め込むことができる。
また、N−1次元の空間でスペクトル拡散された埋め込み系列を利用してN次元目の方向での同期変位量に関わらず、同期合わせの不要、もしくは容易かつ高速に同期合わせの可能な電子透かしを埋め込むことができる。
前記変調手段は、前記N−1次元パターン上の位置によってN次元目の方向の位相がそれぞれ異なるようにN次元の埋め込みパターンを生成するよう構成してもよい。この構成によれば、周期信号の位相を用いて電子透かしを埋め込むことで、N−1次元のパターンをN次元目の方向に容易かつ高速に変調が可能であると共に、周期信号の位相変位を利用してN次元目の方向での同期変位量に関わらず、同期合わせの不要、もしくは容易かつ高速に同期合わせの可能な電子透かしを埋め込むことができる。また、最低の映像信号量子化値未満になって実際には電子透かしの埋め込みがなされないフレームが発生するのを防ぐことができ、電子透かしの伝送路としての映像信号を有効利用できると共に、電子透かしの振幅の大きいフレームを狙って改変するといった攻撃に対する耐性を増すことができる。
また、埋め込みパターンのN−1次元空間上で位相が拡散されていることにより、相関計算の結果の中で埋め込み前信号に起因して現れるノイズ成分の大きさがより小さくなり、結果、より信頼性の高い電子透かしの埋め込み、検出が可能となり、また従来と同程度の信頼性でより品質劣化の少ない電子透かしの埋め込み、検出が可能となる。
また、同一の基本周波数を持ち直交する2つの周期信号の和を用いて電子透かしを埋め込むことで、N−1次元のパターンをN次元目の方向に容易かつ高速に変調が可能であると共に、周期信号の位相変位を利用してN次元目の方向での同期変位量に関わらず、同期合わせの不要、もしくは容易かつ高速に同期合わせの可能な電子透かしを埋め込むことができる。
また、周期信号として矩形波や三角波といった、自己相関関数が鋭敏なピークを持たない特性を持ち、正弦波と比較して容易に計算可能な周期関数を利用することで、計算資源の乏しい環境においても電子透かしの埋め込み処理をより高速に実現することができる。
また、変調に離散フーリエ変換などの線形変換を利用することで、例えば、高速フーリエ変換などを用いてN−1次元のパターンをN次元の方向に容易かつ高速に変調が可能であると共に、離散フーリエ変換係数などの線形変換係数を利用してN次元目の方向での同期ずれに関わらず、同期合わせの不要、もしくは容易かつ高速に同期合わせの可能な電子透かしを埋め込むことができる。
また、前記電子透かし埋め込み装置において、前記N−1次元パターンが複素数パターンであって、前記配列生成手段は、前記埋め込み系列の一部を実部、一部を虚部となるように前記N−1次元パターンを生成するようにしてもよい。
この構成によれば、複素数の実部、虚部を利用して埋め込みを行うと共に、パターンの対称性に関する制約がなく、N−1次元の空間全体を用いて埋め込みを行うことができ、スペクトル拡散系列長を長くすることができ、検出の信頼性が高く、また従来と同じ程度の信頼性でより長い埋め込み情報長を電子透かしとして埋め込むことができ、従来と同程度の信頼性と情報長でより品質劣化の少ない電子透かしを埋め込むことができる。
また、前記電子透かし埋め込み装置において、前記N−1次元パターンが複素数パターンであって、前記変調手段は、前記N−1次元パターン上の複素数の偏角が変調信号の位相となり、絶対値が変調信号の大きさとなるように前記周期信号を変調するようにしてもよい。
この構成によれば、N次元目の方向での同期変位量に関わらず、同期合わせの不要、もしくは容易かつ高速に同期合わせの可能な電子透かしを埋め込むことができる。また、複素数の偏角がN次元目の軸の方向の変調信号の位相となるため、最低の映像信号量子化値未満になって実際には電子透かしの埋め込みがなされないフレームが発生するのを防ぐことができ、電子透かしの伝送路としての映像信号を有効利用できると共に、電子透かしの振幅の大きいフレームを狙って改変するといった攻撃に対する耐性を増すことができる。
また、前記電子透かし埋め込み装置において、前記埋め込み系列生成手段は、生成された前記埋め込み系列を分割して複数の埋め込み系列を生成し、前記第1の記憶手段に格納し、前記配列生成手段は、前記第1の記憶手段に格納された前記複数の埋め込み系列毎に各々対応するN−1次元パターンを生成し、前記変調手段は、前記N−1次元パターン毎に各々対応するN次元の埋め込みパターンを生成し、前記第2の記憶手段に格納し、前記埋め込みパターン重畳手段は、前記第2の記憶手段の前記埋め込みパターンを全て加算した後に、前記入力信号に重畳する、ように構成してもよい。
この構成によれば、複数の周期信号を利用して情報を埋め込むことで、より情報長の長い埋め込み情報を電子透かしとして埋め込むことができ、また、検出結果の信頼性をより正確に明らかにすることができると共に、スペクトル拡散系列長を長くすることができ、より信頼性の高い電子透かし埋め込みを行うことができる。
また、本発明の一実施態様によれば、 N(Nは2以上の整数)以上の次元を持つ入力信号に対して埋め込み情報を電子透かしとして人間の知覚に感知されないように埋め込む電子透かし埋め込み装置であって、前記埋め込み情報に基づき埋め込み系列を生成し、第1の記憶手段に格納する埋め込み系列生成手段と、前記第1の記憶手段に格納されている前記埋め込み系列に基づきN−1次元パターンを生成し、第2の記憶手段に格納する配列生成手段と、前記入力信号を直交変換し、変換済信号を得る変換手段と、前記第2の記憶手段に格納されている前記N−1次元パターンを前記変換済信号の一部のN−1次平面に重畳し、逆変換前信号を得る埋め込みパターン重畳手段と、前記逆変換前信号を直交逆変換し、埋め込み済み信号を得る逆変換手段と、を有することを特徴とする電子透かし埋め込み装置が提供される。
この電子透かし埋め込み装置によれば、N−1次元のパターンをN次元目の方向の信号として埋め込み前信号に重畳して埋め込みを行うことで、N−1次元のパターンの埋め込み情報をN次元空間に広めた冗長性により、例えば高圧縮や再撮影などの改変に対しても十分な耐性があり、品質劣化を抑え、情報長の長い情報を電子透かしとして埋め込むことができる。また、パターンの対称性に関する制約がなくN−1次元の空間全体を用いて埋め込みを行うことができ、スペクトル拡散系列長を長くすることができ、検出の信頼性が高く、また、従来と同程度の信頼性でより長い埋め込み情報長を電子透かしとして埋め込むことができ、従来と同程度の信頼性と情報長でより品質劣化の少ない電子透かしを埋め込むことができる。また、N−1次元の空間でスペクトル拡散された埋め込み系列を利用してN次元目の方向での同期変位量に関わらず、同期合わせの不要、もしくは容易かつ高速に同期合わせの可能な電子透かしを埋め込むことができる。また、最低の映像信号量子化値未満になって実際には電子透かしの埋め込みがされないフレームが発生するのを防ぐことができ、電子透かしの伝送路としての映像信号を有効利用できると共に、電子透かしの振幅の大きいフレームを狙って改変するといった攻撃に対する耐性を増すことができる。
前記電子透かし埋め込み装置において、前記埋め込み系列生成手段は、複数の埋め込み系列を生成して前記第1の記憶手段に格納し、前記配列生成手段は、前記第1の記憶手段に格納されている前記複数の埋め込み系列毎に各々対応するN−1次元パターンを生成し、前記第2の記憶手段に格納し、前記埋め込みパターン重畳手段は、前記第2の記憶手段に格納されている前記N−1次元パターンを前記変換済み信号の複数のN−1次元平面にそれぞれ重畳する、ようにしてもよい。
この構成によれば、変換済みの信号の複数のN−1次元平面にN−1次元パターンを重畳することで、より情報長の長い埋め込み情報を電子透かしとして埋め込むことができ、また、検出結果の信頼性をより正確に明らかにすることができると共に、スペクトル拡散系列長を長くすることができ、より信頼性の高い電子透かし埋め込みを行うことができる。
また、本発明の一実施態様によれば、N(Nは2以上の整数)以上の次元を持つ入力信号に対して予め人間の知覚に感知されないように埋め込まれた電子透かしを検出する電子透かし検出装置であって、前記入力信号の一つの次元方向における所定の周期信号の成分を測定し、N−1次元パターンを求める復調手段と、前記N−1次元パターンの値から検出系列を求め、記憶手段に格納する検出系列抽出手段と、前記記憶手段に格納された前記検出系列と埋め込み系列の相関値の大きさに基づいて、埋め込まれている電子透かしを検出する相関値計算手段と、を有することを特徴とする電子透かし検出装置が提供される。
この電子透かし検出装置によれば、N−1次元のパターンの埋め込み情報をN次元空間に広めた冗長性により、例えば、高圧縮や再撮影などの改変に対しても十分な耐性があり、品質劣化を抑え、情報長の長い情報を電子透かしの検出ができる。また、N−1次元の空間でスペクトル拡散された埋め込み系列を利用してN次元目の方向での同期変位量に関わらず、同期合わせの不要、もしくは容易かつ高速に同期合わせの可能な電子透かしの検出ができる。
また、復調に離散フーリエ変換などの線形変換を利用することで、例えば、高速フーリエ変換などを用いてN次元の信号からN−1次元のパターンを容易かつ高速に復調が可能であると共に、離散フーリエ変換係数など線形変換係数を利用してN次元目の方向での同期ずれに関わらず、同期合わせの不要、もしくは容易かつ高速に同期合わせの可能な電子透かしの検出ができる。
前記復調手段は、同一の周波数を持つ直交する2つの周期信号を生成し、前記入力信号と前記周期信号との相関に基づいてN−1次元パターンを求めるように構成してもよい。
この構成によれば、N−1次元のパターンをN次元目の方向に容易かつ高速に復調が可能であると共に、周期信号の位相変位を利用してN次元目の方向での同期変位量に関わらず、同期合わせの不要、もしくは容易かつ高速に同期合わせの可能な電子透かし検出が可能である。
また周期信号として矩形波や三角波といった、自己相関関数が鋭敏なピークを持たない特性を持ち、正弦波と比較して容易に計算可能な周期関数を利用することで、計算資源の乏しい環境においても電子透かしの検出処理をより高速に実現することができる。
また、前記復調手段は、前記入力信号をN次元目の方向の差分もしくは微分値に基づいて復調を行うように構成することができる。
この構成によれば、信号の差分もしくは微分を用いて周期信号による復調を行うことで、検出精度の高い電子透かし検出が可能になると共に、同程度の検出性能において信号劣化のより少ない電子透かし方式を可能にする。
前記電子透かし検出装置において、前記N−1次元パターンが複素数パターンであって、前記検出系列抽出手段は、前記N−1次元パターンの実部及び虚部の値に基づいて前記検出系列を求め、前記記憶手段に格納することとしてもよい。
この構成によれば、複素数の実部、虚部を利用して埋め込まれた電子透かしの検出により、パターンの対称性に関する制約がなくN−1次元の空間全体を用いて埋め込まれているため、スペクトル拡散系列長を長くすることができ、検出の信頼性が高く、また従来と同程度の信頼性でより長い埋め込み情報を電子透かしとして検出することができ、従来と同程度の信頼性と情報長でより品質劣化の少ない電子透かしの検出が可能となる。
また、前記電子透かし検出装置において、前記N−1次元パターンが複素数パターンであって、前記相関値計算手段が、各ビット毎の複素相関値を求め、各ビット毎の複素相関値の向きを揃えた上でそれらの総和をとり、この総和に基づいて埋め込まれている電子透かしを検出することとしてもよい。この構成によれば、各ビット毎に検出するよりもビット判定誤りが少なくなり、より高い耐性を実現できる。
また、前記電子透かし検出装置において、前記N−1次元パターンが複素数パターンであって、前記相関値計算手段は、複素相関値の絶対値に基づいて埋め込まれている電子透かしを検出することとしてもよい。
この構成によれば、複素相関値の絶対値を用いて検出を行うことで、N次元目の方向で同期のずれた入力信号に対しても埋め込み系列との相関を得ることができ、同期合わせの不要な電子透かし検出ができる。
また、前記電子透かし埋め込み装置において、前記N−1次元パターンが複素数パターンであって、前記相関値計算手段が、各ビット毎の複素相関値を求め、各ビット毎の複素相関値の向きを揃えた上でそれらの総和をとり、この総和の偏角に基づき、前記入力信号の同期変位量を求める同期手段を有するようにしてもよい。これにより、同期変位量を測定することができ、容易かつ高速な同期合わせによる電子透かし検出が可能となる。また、各ビット毎の複素相関値に基づいて同期変位量を求めるよりも、より確実で精度の高い同期変位量の測定が可能となる。
また、前記電子透かし埋め込み装置において、前記N−1次元パターンが複素数パターンであって、前記検出系列と前記埋め込み系列の複素相関値の偏角に基づき、前記入力信号の同期変位量を求める同期手段を有することとしてもよい。
複素相関値の偏角を用いて検出を行うことで、N次元目の方向で同期のずれた入力信号に対しても埋め込み系列との相関を得られ、同期変位量を測定することができ、容易かつ高速な同期合わせによる電子透かし検出が可能となる。
前記電子透かし埋め込み装置において、前記復調手段は、複数の周期信号の位相を測定し、複数のN−1次元パターンを求め、前記同期手段は、複数のN−1次元パターン毎に各々同期変位量を求め、前記検出系列抽出手段は、前記複数のN−1次元パターンから各々対応する前記同期変位量に基づいて同期を補正して検出系列を求め、前記記憶手段に格納し、前記相関値計算手段は、前記複数のN−1次元パターン毎に得られた前記記憶手段に格納されている前記検出系列を結合した系列と前記埋め込み系列の相関値を計算することとしてもよい。
この構成によれば、複数の周期信号を利用して埋め込まれた電子透かしを検出することで、より情報長の長い埋め込み情報を電子透かしとして検出することができ、また、検出結果の信頼性をより正確に明らかにすることができると共に、スペクトル拡散系列長を長くすることができ、より信頼性の高い電子透かしの検出が可能となる。
また、前記同期手段は、前記複数のN−1次元パターン毎に得られた同期変位量を元に、N次元目の軸方向の全体の変位量を求めるように構成してもよい。この構成によれば、各検出複素パターンの同期変位量を精度よく求めることができ、検出精度の高い、また、同程度の検出精度において品質劣化の少ない電子透かし検出が可能となる。
また、前記同期手段は、予め埋め込まれた同期系列を検出し、同期合わせを行い、前記同期変位量に応じて入力信号を再分割し、残る複数の埋め込み情報を検出する検出手段を有することとしてもよい。この構成によれば、時間方向に分割された埋め込み情報を検出することで、より長い埋め込み情報を信号に埋め込むことができ、電子透かしの適用アプリケーションを拡大することができる。
また、本発明の一実施態様によれば、N(Nは2以上の整数)以上の次元を持つ入力信号に対して埋め込み情報を電子透かしとして人間の知覚に感知されないように埋め込むための電子透かし埋め込みプログラムであって、コンピュータを、前記埋め込み情報に基づき埋め込み系列を生成し、第1の記憶手段に格納する埋め込み系列生成手段、前記第1の記憶手段の前記埋め込み系列に基づきN−1次元パターンを生成する配列生成手段、前記N−1次元パターン上の値に応じて周期信号を変調することによりN次元の埋め込みパターンを生成し、第2の記憶手段に格納する変調手段、前記第2の記憶手段に格納されている前記N次元の埋め込みパターンを取得し、該埋め込みパターンを前記入力信号に重畳する埋め込みパターン重畳手段、として機能させる電子透かし埋め込みプログラムが提供される。
また、本発明の一実施態様によれば、N(Nは2以上の整数)以上の次元を持つ入力信号に対して埋め込み情報を電子透かしとして人間の知覚に感知されないように埋め込むための電子透かし埋め込みプログラムであって、コンピュータを、前記埋め込み情報に基づき埋め込み系列を生成し、第1の記憶手段に格納する埋め込み系列生成手段、前記第1の記憶手段に格納されている前記埋め込み系列に基づきN−1次元パターンを生成し、第2の記憶手段に格納する配列生成手段、前記入力信号を直交変換し、変換済信号を得る変換手段、前記第2の記憶手段に格納されている前記N−1次元パターンを前記変換済信号の一部のN−1次平面に重畳し、逆変換前信号を得る埋め込みパターン重畳手段、前記逆変換前信号を直交逆変換し、埋め込み済み信号を得る逆変換手段、として機能させる電子透かし埋め込みプログラムが提供される。
更に、本発明の一実施態様によれば、N(Nは2以上の整数)以上の次元を持つ入力信号に対して予め人間の知覚に感知されないように埋め込まれた電子透かしを検出する電子透かし検出プログラムであって、コンピュータを、前記入力信号の一つの次元方向における所定の周期信号の成分を測定し、N−1次元パターンを求める復調手段、前記N−1次元パターンの値から検出系列を求め、記憶手段に格納する検出系列抽出手段、前記記憶手段に格納された前記検出系列と埋め込み系列の相関値の大きさに基づいて、埋め込まれている電子透かしを検出する相関値計算手段、として機能させる電子透かし検出プログラムが提供される。