JP3875801B2 - ウォータマークの復号化方法 - Google Patents
ウォータマークの復号化方法 Download PDFInfo
- Publication number
- JP3875801B2 JP3875801B2 JP31447798A JP31447798A JP3875801B2 JP 3875801 B2 JP3875801 B2 JP 3875801B2 JP 31447798 A JP31447798 A JP 31447798A JP 31447798 A JP31447798 A JP 31447798A JP 3875801 B2 JP3875801 B2 JP 3875801B2
- Authority
- JP
- Japan
- Prior art keywords
- watermark
- data
- image data
- bit
- decoding
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Editing Of Facsimile Originals (AREA)
- Error Detection And Correction (AREA)
Description
【発明の属する技術分野】
この発明は、画像情報におけるウォータマーク(電子透かし)の復号化方法に関し、特に、画像情報にノイズが重畳した場合にウォータマークの復号時の誤差を低減するための改良に関する。
【0002】
【従来の技術】
ウォータマーク技術は、画像を表現するデータ(信号)である画像データに、著作権や購入者の情報をユーザに感知されないような形態で埋め込むことによって、違法コピーなどの二次利用を防ぐ技術である。著作権を有する画像データの配信元は、ウォータマークを埋め込む前の画像データ、すなわち元画像のデータを保管しておき、違法コピーの疑いのある画像データを市中より採取した際に、これを元画像のデータと比較することによってウォータマークを取り出し、さらに著作権情報等へと復号化する。配信元は、復号化された情報に基づいて購入者の割り出し等を行う。
【0003】
図14及び図15は、それぞれ一般に行われているウォータマークの符号化方法及び復号化方法の処理手順を示すフローチャートである。また、図16は、これらの処理における画像形式の推移を示すタイミングチャートである。これらの処理は、配信元(あるいは、配信元によってオーソライズされた者)によって実行される。
【0004】
一般的なウォータマーク符号化方法では、圧縮されていない原画像の形式を有する元画像のデータが例えばJPEGなどの画像圧縮技術に基づいて圧縮される。それによって、画像データが圧縮画像データの形式で配信される。この圧縮の過程の中で、ウォータマークの埋め込みが行われる。一方、上述した元画像のデータは原画像の形式で保管される。
【0005】
ウォータマーク符号化方法を図14及び図16に沿って説明すると、原画像としての元画像のデータは、例えばJPEGの圧縮処理の一過程であるDCT変換によってスペクトルデータ(空間スペクトルデータ)SPCへと変換される(ステップS01)。スペクトルデータは、多数のスペクトル成分をその構成要素として含んでいる。著作権情報等が符号化されたウォータマークの埋め込みがこのスペクトルデータSPCに対して実行される(ステップS02)。スペクトルデータSPCは、原画像を、スペクトル成分の組すなわち空間周波数成分の組へと展開することによって得られ、DCT変換はそのような展開の代表例である。
【0006】
つづいて、ウォータマークを含むスペクトルデータSPCは、量子化及びVLC符号化(可変長符号化)を通じてVLC符号(可変長符号)へと変換される(ステップS03)。そして、このVLC符号の形式、すなわち圧縮画像データの形式で、画像データが流通業者等を通じて市場へと配信される(ステップS04)。また、元画像のデータは、原画像の形式のままで配信元に保管される(ステップS05)。
【0007】
次に、一般的なウォータマーク復号化方法を図15及び図16に沿って説明する。市中で採取された画像データは、VLC符号の形式であることもあり、あるいは原画像の形式であることも有り得る。いずれの形式で採取されても、画像データはスペクトルデータSPC’へと変換される(ステップS11)。
【0008】
例えば、採取された画像データがVLC符号の形式であれば、VLC符号化の逆演算であるVLC復号化及び量子化の逆演算である逆量子化を通じて、スペクトルデータSPC’へと変換される。採取された画像データが原画像の形式であれば、DCT変換を通じてスペクトルデータSPC’へと変換される。
【0009】
ステップS11を通じて得られたスペクトルデータSPC’はウォータマークを含んでいるために、図14に示したスペクトルデータSPCとは値が異なる。これら双方の差分を算出することによって、スペクトルデータSPC’に埋め込まれているウォータマークの取り出しが行われる(ステップS12)。次に、取り出されたウォータマークの復号化が行われ(ステップS13)、それによって著作権情報等が読み出される。
【0010】
【発明が解決しようとする課題】
ところで、採取された画像データは、一般には配信直後の画像データのままではなく、様々な画像処理を経由していることも有り得る。このため、採取された画像データには、これらの画像処理に由来するノイズが混入している可能性がある。また、画像信号を電線等を通じて伝送する場合にも、外来の電磁気等により信号にノイズが重畳することがある。このノイズも、図14のスペクトルデータSPCと図15のスペクトルデータSPC’との間の偏差の要因となる。
【0011】
このようなノイズのスペクトル成分は、ほぼ正規分布に従って表れることが多いと予想される。したがって、従来においては、ウォータマークの取り出しにおけるノイズの悪影響を除くためには、図14のウォータマークの埋め込みの過程(ステップS02)で、1枚の画像の中にウォータマークを反復して埋め込んでおき、取り出しの過程(図15中のステップS11及びステップS12)で、図17の如く、これらの反復する複数のウォータマークを抽出した後(ステップS21)、これらの複数のウォータマークについて、互いに対応するビット同士の平均値を算出する(ステップS22)。そして、かかる各ビット毎の平均値を、ウォータマークの各ビットにおけるデータとして出力することで、SN比を高めることが行われていた。
【0012】
しかしながら、画像へのノイズ重畳には様々な種類のものがあり、例えば画像信号の伝送時における電磁ノイズの重畳、画像の一部を切り取ったり、色成分を変更したりするなどの画像編集の課程において、ノイズのダメージが局所的に多い場合には、複数のウォータマークにかなりのノイズが重畳してしまうことがあり、従来の復号化方法では必ずしも正確にウォータマークを復号することが困難なことがあった。
【0013】
そこで、この発明の課題は、ノイズが重畳しても比較的正確にウォータマークを復元できるウォータマークの復号化方法を提供することにある。
【0014】
【課題を解決するための手段】
上記課題を解決すべく、請求項1に記載の発明は、採取された画像データからウォータマークを取り出すウォータマーク復号化方法において、入手したスペクトルと保管している元画像との差分を取って複数のウォータマークを抽出する第1の工程と、全てのウォータマークについて、互いに対応するビット同士の平均値を求める第2の工程と、各ビット毎に、平均値に近似する順で順位付けして各ビットのデータをソートする第3の工程と、ソートした順位付けの順番に各ビットのサンプル数を徐々に増やしながら、平均化及び復号化処理を繰り返し、順次復号結果を出力する第4の工程と、前記第4の工程において順次出力された復号結果のうち、所定以上の信頼性を有するものとして予め定められた所定の条件を満たすものを判別してウォータマークの復号結果とする第5の工程とを備えるものである。
【0015】
請求項2に記載の発明は、前記ウォータマークに所定の誤り訂正符号が予め含められ、前記第4の工程は、訂正後の符号に対して前記所定の誤り訂正符号に基づいて誤り検出を行う工程を含み、前記第5の工程における前記所定の条件は、前記第4の工程中の前記誤り検出を行う工程において検出される誤り検出が一定の水準以下であることを少なくとも含むものである。
【0016】
請求項3に記載の発明は、前記第5の工程における前記所定の条件は、前記所定の誤り訂正符号に基づいて検出される誤り検出の結果、2つ以上の復号結果が連続して誤りでないことを検出することを少なくともさらに含むものである。
【0017】
請求項4に記載の発明は、前記第5の工程における前記所定の条件は、前記第4の工程において、ソートした順位付けの順番で各ビットのサンプル数を徐々に増やしていく際に、新たに加えたサンプル数中の有効なデータのビット数が前記ウォータマークの全ビット数に対して一定の比率より多いことを検出することを少なくとも含むものである。
【0018】
請求項5に記載の発明は、前記ウォータマークは、前記元画像のデータがスペクトルデータへの変換と量子化とを含む画像圧縮を通じて圧縮されない原画像の形式から圧縮画像データの形式へと変換され、前記圧縮画像データの形式で前記元画像のデータを保管される一方、前記量子化の逆演算としての逆量子化を含む画像伸張を通じて前記元画像のデータが前記圧縮画像データの形式からスペクトルデータへと変換され、ここで得られたスペクトルデータに重ね合わせられた後、当該ウォータマークが重ね合わされた状態の前記スペクトルデータが、前記量子化を含む画像圧縮を通じて、前記圧縮画像データの形式へと変換されて配信されたものであり、前記ウォータマークの復号時に、保管された前記元画像のデータに対して前記量子化の逆演算としての逆量子化を含む画像伸張を通じて前記元画像のデータが前記圧縮画像データの形式から第1のスペクトルデータに変換するとともに、採取された前記画像データを第2のスペクトルデータへ変換し、得られた二つのスペクトルデータの差分を演算することによって、前記ウォータマークを前記第2のスペクトルデータから取り出すようにし、この際に、前記第1乃至第5の工程を実行するようにしたものである。
【0019】
【発明の実施の形態】
この発明の一の実施の形態に係るウォータマークの復号化方法は、画像に含められた複数のウォータマークを復号化する際に、その複数のウォータマークを各ビットに分解し、互いに対応するビット毎に平均値を求めた後、当該平均値に近似した順に各ビットのデータを各ビット別にバラバラに順位付けしてソートし、順位の高いものから順に復号するものである。
【0020】
ウォータマークの符号化方法及び復号化方法の処理手順の概略を図1及び図2にそれぞれ示す。
【0021】
ここで取り扱われるウォータマークは、1枚のJPEG形式の可変長符号の画像データ中に反復して埋め込まれるものである。
【0022】
即ち、ウォータマークの埋め込み対象とされた原画像(元画像のデータ)は、図1中のステップS31において、例えばJPEGに基づいて画像圧縮され、VLC符号、すなわち、圧縮画像データへと変換された後(ステップS31)、このVLC符号の形式で保管される(ステップS32)。
【0023】
ここで、元画像のデータへウォータマークを埋め込むためには、まず、VLC符号の形式を有する元画像のデータに対してVLC復号化及び逆量子化が施され、それらを通じてスペクトルデータSPCへと画像伸張される(ステップS33)。次に、符号化された著作権情報等を含む複数のウォータマークが、このスペクトルデータSPCに対して反復して埋め込まれる(ステップS34)。ここで、これらの複数のウォータマークは、ひとつの画像のスペクトルに反復して繰り返し埋め込まれる。このように、スペクトル空間内での成分条件を違えて反復して埋め込むことで、様々なノイズ攻撃を受けた場合にある成分付近の誤り率が局所的に高くなっても、他の成分付近のウォータマークが残される可能性を残すことで攻撃リスクを分散でき、耐ノイズ性を向上できるという利点がある。
【0024】
つづいて、ウォータマークを含むスペクトルデータSPCは、量子化及びVLC符号化を通じて、VLC符号へと変換される(ステップS35)。
【0025】
以上の課程において、画像中のウォータマークでは、後述のように信頼性の検証を行う目的で、予め一般的な誤り訂正符号であるBCH符号で符号化されており、冗長ビットを含んでいる。
【0026】
そして、このVLC符号の形式、すなわち、圧縮画像データの形式で、画像データが流通業者等を通じて、市場へと配信される(ステップS36)。
【0027】
尚、図1に示した手順でウォータマークを符号化すると、元画像のデータが、データ量の小さい圧縮画像の形式で保管されるので、通常において多数種類の元画像のデータを保管する必要がある配信元において、保管すべき元画像のデータのデータ量が節減される。すなわち、元画像のデータの保管のための配信元の負担が軽減される。
【0028】
次に、上記のようにして埋め込まれたウォータマークを復号化する方法を説明する。
【0029】
図2の如く、まず、市中で採取された画像データは、従来と同様に、VLC符号の形式であることもあり、あるいは、原画像の形式であることも有り得る。いずれの形式で採取されても、画像データは、まずスペクトルデータSPC’へと変換される(ステップS41)。
【0030】
次に、VLC符号の形式の元画像のデータに、VLC復号化、及び逆量子化が施され、それらを通じて、スペクトルデータSPCが得られる(ステップS42)。この処理は、図1中のステップS33における処理と同一の手順で行われる。
【0031】
図2中のステップS41を通じて得られたスペクトルデータSPC’は、ウォータマークを含んでいるために、ステップS42で得られたスペクトルデータSPCとは値が異なることから、これら双方の差分を算出することによって、スペクトルデータSPC’に埋め込まれているウォータマークの取り出しを行う(ステップS43)。次に、取り出されたウォータマークの復号化が行われ(ステップS44)、それによって、著作権情報等が読み出される。
【0032】
ここで、図2中のステップS43及びステップS44の処理を図3のフローチャートに沿って詳しく説明する。尚、図3中のステップS51は図2中のステップS43に、図3中のステップS52〜59は図2中のステップS44にそれぞれ対応している。
【0033】
図3の如く、まずステップS51において、入手したスペクトルと保管している元画像との差分を取って複数のウォータマークを抽出する。このときに抽出されたウォータマークの個数を仮に「N」としておくことにする。これらのN個のウォータマークは、本来的に全て同じものであり、ノイズやデータの欠けが無ければ、ビット数の同じ固定長のデータ列として採取されることが期待されるものであるが、実際には、市中において、ノイズの攻撃により一部のビットのデータが変更されていたり、局部的な画像の切り取りにより部分的な欠けが生じている可能性があるものである。
【0034】
そして、ステップS52において、全ての(N個の)ウォータマークをサンプルとして、互いに対応するビット毎に平均値を求める。
【0035】
図4は、7(=N)個のウォータマークWm1〜Wm7を母集団のサンプルとして、各ビット毎の平均値Av1,Av2,Av3,…,Av126,Av127を算出する様子を示す図である。この例では、1枚の画像に7個のウォータマークWm1〜Wm7が反復して埋め込まれている場合を想定しており、図4においては、これらの7個の各ウォータマークWm1〜Wm7が、横長の帯として上から順に積層した状態で示されている。各ウォータマークWm1〜Wm7においては、左端から右方向へ順にビット数が連続しており、例として、原画像データに埋め込まれる各ウォータマークWm1〜Wm7のデータ長が127ビットの場合を示している。ここで、ウォータマークWm1〜Wm7は特に順位付けがなされて認識されるものではなく、ステップS51において抽出された順番に順不同に採取されるものである。
【0036】
この図4の例では、市中において画像の一部が切り取られるなどして、一部のウォータマークWm5〜Wm7において局部的に欠け(同図中の×で示した部分)が生じている場合を想定している。即ち、図4において、上から5番目のウォータマークWm5は、その左端から数えて第5ビット目のデータが欠けており、上から6番目のウォータマークWm6は、その左端から数えて第4ビット目から第5ビット目のデータと、第122ビット目から第124ビット目までのデータと、第127ビット目のデータとが欠けており、上から7番目のウォータマークWm7は、その第1ビット目から第124ビット目までのデータと第127ビット目のデータとが欠けている。即ち、この例では、特に上から7番目のウォータマークWm7についてデータの欠けが激しい場合について例示したものである。このような大規模なデータの欠けは、画像の一部を切り取ったり、色成分を変更したりするなどの画像編集の課程において、ノイズのダメージが局所的に多くなった場合などに実際に起こり得るものである。尚、ウォータマークWm1〜Wm7は、所定の処理手順で抽出された順に採取されるものであるから、必ずしも下層のウォータマークWm5〜Wm7に欠けが生じているとは限らず、上層のウォータマークWm1〜Wm4に欠けが生じていて、且つ下層のウォータマークWm5〜Wm7が欠けのないデータ列として採取されても差し支えない。
【0037】
このようなウォータマークWm1〜Wm7の各ビット毎の平均値を算出する場合、図4中の太線枠のように、各ウォータマークWm1〜Wm7の各ビット(1〜127)毎のデータを分離してバラバラに捉え、127個のサンプルとしてそれぞれについて個別に各ビット毎の平均値Av1〜Av127を算出する。
【0038】
次に、ステップS53において、図4中の太線枠で示した各ビット(1〜127)毎に、ステップS52で求めた平均値Av1〜Av127に近似する順で順位付けし、この順位付けに従って各ビットのデータをソートする。ここでソートしたデータの様子を図5に示す。図5において、ウォータマークの各ビット番号を「i」とし、各ビット「i」におけるソートの順位付けを「m」とすると、各データは「Pr(i,m)」(ただし、i=1〜127,m=1〜7)となる。ここで、図5のようにソート処理された時点で、各データ「Pr(i,m)」は、元のウォータマークWm1〜Wm7との関連づけが捨象されており、いずれのウォータマークWm1〜Wm7中のデータであるかに拘わらず、純粋に各ビット(1〜127)毎のサンプルデータとして抽象化されたものとなる。尚、図5では、一部のウォータマークにおいてのデータに欠けが生じている場合を想定しているため、Pr(5,5)、Pr(4,6)〜Pr(5,6)、Pr(122,6)〜Pr(124,6)、Pr(127,6)、Pr(1,7)〜Pr(124,7)及びPr(127,7)のデータは存在していない。特に、上から7層目のデータ「Pr(i,7)」については、データの欠けが激しいものとなっている。
【0039】
ところで、一般に、ノイズの重畳はランダムに行われるため、別々のウォータマークWm1〜Wm7について、同じビット(1〜127)に全く同じノイズが重畳する確率は少なく、故に、各ビット(1〜127)のデータにおいて半数以上のウォータマークWm1〜Wm7に同じノイズが重畳する確率は極めて低いと考えてよい。したがって、この実施の形態のように、全ウォータマークWm1〜Wm7の各ビット毎の平均値Av1〜Av127を算出した場合(ステップS52)、かかる各ビット毎の平均値Av1〜Av127によるデータ列は、元のウォータマークを正確に表現したものと期待できるものである。このことから、ステップS53のよえに、各データ「Pr(i,m)」がいずれのウォータマークWm1〜Wm7中のものであるかに拘らずに各ビット毎の平均値Av1〜Av127に近似する順にソートして得られるとき、図5中においては、平均値に近いデータ列である上層の帯(即ち、各データ「Pr(1,m)〜Pr(127,m)」のデータ列において「m」の値が小さい帯)の方が、下層の帯(即ち、各データ「Pr(1,m)〜Pr(127,m)」のデータ列において「m」の値が大きい帯)に比べて、相対的に正確なウォータマークを表現できているものと期待できることになる。
【0040】
ただし、ステップS53を経て図5のような各データ「Pr(i,m)」が得られても、上から何層目(「m」)のデータ列までが信頼できるかは、ノイズの重畳の激しさやデータの欠けの度合いによって異なってくるため、この時点で上から何層目までのデータを用いて平均化及び復号化処理すればよいかが不明である。したがって、ステップS54以降の処理において、上層から順番に層(「m」)の数を徐々に増やしながら「m」が抽出されたウォータマークの最大数に達するまで平均化及び復号化処理を行う。そして、全ての処理が終了した後改めて信頼性が十分である限度の判定を行い、何層目までの復号結果を採用するか判断する。
【0041】
即ち、平均化する層(「m」)の総数を変数「n」で定義すると、ステップS54において、まず始めに「n」に値「1」を代入して初期化することにする。
【0042】
そして、図3中のステップS55において、ソートした順位の上位から「n=1」個のデータをサンプルとし、かかる「n=1」個めデータについて図6のように各ビット毎の平均値Av1(1(=n))〜Av127(1(=n))を算出する。ただし「n=1」の場合は各ビットが一通りにしか存在しないので、Av1(1(=n))〜Av127(1(=n))はPr(1,1)〜Pr(1,127)と等価である。
【0043】
また、後続のステップS59における信頼度の判定のために、新たに平均値を算出する際にサンプルとして追加されたデータ列のビット長を記録しておく。例において図6中で新しく平均値算出に使用したビットは127ビットである。
【0044】
次に、図3中のステップS56において算出された各ビットの平均値Av1(1)〜Av127(1)を使って一般的なBCH復号化処理を行う。この際、上記した符号化の過程(図1のステップS34,S45)の説明中で述べたとおり、もともと各ウォータマークWm1〜Wm7は冗長ビットを含むBCH符号であるので、一般的なBCH誤り検出方法によりデータの誤り検出を行っておく。尚、一般的なBCH復号化処理は、復号に係るデータの誤り訂正を行うだけでなく、復号コードに対してある程度の誤り検出を行うことが可能である。したがって、ステップS56では、復号処理後の純粋な復号コードの後に、復号コードが誤っているか否かを示す「誤り検出フラグ」を追加して出力する。
【0045】
以上のステップS55〜S56を通して、次の1)〜3)の出力が得られたことになる。
【0046】
1)「第1の出力」…新たに平均値を算出する際にサンプルとして追加されたデータ列のビット長、
2)「第2の出力」…BCH復号による誤り検出フラグ、
3)「第3の出力」…BCH復号による復号コード。
【0047】
これに続くステップS57で、「n」が抽出されたウォータマークの最大数「N」に達しているか否かが判定される。
【0048】
「N」に達していない場合には、さらに各ビット(1〜127)毎において平均化の対象とされるサンプル数を増やすために、平均化したいデータ列「Pr(i,m)」〈ただし、i=1〜127、m=1〜n)のサンプル総数を示す「n」の値を1つだけインクリメントした上で(図3中のステップS58)、ステップS55〜S56の処理を繰り返す。例えば、図7は平均化したいデータ列「Pr(i,m)」〈ただし、i=1〜127、m=1〜n)のサンプル総数「n」が「2」である場合に各ビット毎の平均値Av1(2)〜Av127(2)が求められる状態、図7はサンプル総数「n」が「3」である場合に各ビット毎の平均値Av1(3)〜Av127(3)が求められる状態、図8はサンプル総数「n」が「4」である場合に各ビット毎の平均値Av1(4)〜Av127(4)が求められる状態、図9はサンプル総数「n」が「5」である場合に各ビット毎の平均値Av1(5)〜Av127(5)が求められる状態、図10はサンプル総数「n」が「6」である場合に各ビット毎の平均値Av1(6)〜Av127(6)が求められる状態、図11はサンプル総数「n」が「7」である場合に各ビット毎の平均値Av1(7)〜Av127(7)が求められる状態をそれぞれ示したものである、尚、図8中における「×」の印はデータの欠けを示すものである。各平均値は図中太線枠で囲んだビットを使って求めるので、例えばAv5(6)はPr(5,2)、Pr(5、3)、Pr(5、4)の平均値を意味する。
【0049】
全ての処理が終わりN通りの出力が出揃ったならばステップS59へ進み、復号結果が所定の信頼度を満たしているかどうかを判断する。ここで信頼度を肯定的に判断する条件としては、経験則的に、次のa)〜c)の条件が採用される。
【0050】
a)「第1の条件」…新たに平均値を算出する際にサンプルとして追加されたデータ列のビット長(「第1の出力」)が、元のウォータマーク(Wm1〜Wm7)の全ビット長の1/3より多いこと。この第1の条件は、一部の画像の切り取り等によりデータに欠けが生じている場合の母集団としてのサンプルデータの有効性を考慮したものである。この実施の形態のように、127ビット長のウォータマーク(Wm1〜Wm127)を取り扱う場合、43ビット(>127/3)以上の有意なデータの存在が第1の条件として条件付けされることになる。
【0051】
b)「第2の条件」…上記した一連のBCH復号化処理の結果、誤り検出フラグ(「第2の出力」)が「正」の判断結果を示しており、かつ前後いずれかの結果を含めて「正」の判定が2個以上連続していること。この第2の条件はBCH符号の誤り検出能力を補うものである。
【0052】
c)「第3の条件」…上記「第1の条件」及び「第2の条件」に基づいて有効に残された復号結果が2つ以上5つ未満の場合に、それらの復号されたコード(「第3の出力」)が全て一致していること、または、有効に残された復号結果が5つ以上の場合に、それらの復号されたコード(「第3の出力」)が全体の80%より高い割合で一致していること。
【0053】
これらの3つの条件は、まず第1の条件が判断され、この第1の条件を満たしている場合に次いで第2の条件が判断され、さらにこの第2の条件を満たしている場合に続いて第3の条件が判断される。
【0054】
尚、これら3つの条件は、上述のように経験則的によって定められたものであるが、本発明においては、「第1の条件」における「1/3」という数値、「第2の条件」における「2個以上」という数値、及び「第3の条件」における「2つ以上」「5つ未満/以上」「80%」という数値に限定されるものではなく、画像中に含められるウォータマークの個数や画像のサイズ等の諸環境によって適宜経験的に定めればよいものである。
【0055】
このステップS59において、上記した3つの条件が肯定的に判断され、故に一定の信頼度を満たしていると判断できた場合には、「第3の条件」において全てまたは高い割合で一致している復号コードを最終的な復号結果とする。一方、「第3の条件」が満たされなかった場合は、一定の信頼度が得られなかったものとして最終的な復号結果を出さずに終了する。
【0056】
ここで、次の表1は、n=1からn=7(=N)における各出力に対して、上記3つの条件の判定例を模式的に示している。
【0057】
【表1】
【0058】
図6〜図12に示したとおり、nが1から4までの値をとる場合はビットに欠けを生じていないため「第1の出力」は127であり、nが5から7までの値をとる場合はそれぞれ1ビット、5ビット、125ビットの欠けが含まれるため、「第1の出力」は126、121、2である。また例として[第2の出力」(誤り検出フラグ)はn=2のときのみ「誤」それ以外は「正」を示していたとする。まず第1の条件を判定すると、n=7のとき以外は43ビット(>127/3)より多い有意なデータをもとに復号されており条件が満たされている。次いで第1の条件を満たしたn=1からn=6について、第2の条件、すなわち「第2の出力」が「正」でありかつ2個以上連続しているか否かを判定すると、n=1とn=2の場合の結果は棄却される。そうすると、有効に残された復号結果はn=3からn=6までの4個であるので、それらの「第3の出力」(復号コード)が全て一致していれば第3の条件が満たされたと判定する。表1の例はn=3からn=6までの「第3の出力」が全て一致したことを示しており、このときの復号コードが最終的な復号結果になる。
【0059】
尚、上記した例では、7個のデータ列を平均化して復号結果とする例について説明したが、画像中に反復して埋め込まれるウォータマークの個数や画像のサイズ、あるいはノイズの重畳の激しさ等によって、平均化するデータ列のサンプル数は変化する。図13は、画像中に極めて多数のウォータマークを反復して埋め込み、また極めて激しくノイズを重畳させた場合において、平均化するサンプル数nを1個ずつ徐々に増やした場合の誤り率の変化を図示したものである。横軸に平均化するサンプル数n、縦軸に誤り率をとっている。また、図13中の一点鎖線による折れ線L1はこの実施の形態の方法を採用して復号化処理を行った場合、実線による折れ線L2はステップS53(図3)に相当するソート処理を省略して平均化及び復号化処理を行った場合を示している。
【0060】
この図13のように、L1で示した結果の方が、L2で示した結果に比べて、初期の段階(比較的左方の段階)から誤り率が低減されており、また平均化するサンプル数nが60個の部分で誤り率が最低レベルまで低減できることがわかる。そして、このときの誤り率は、L2の最小値より遙かに小さな値を示している。このことから、この実施の形態のステップS53(図3)のようにソート処理を行うことで、復号結果の誤り率を大幅に低減できる。尚、図13の例は、極めて激しくノイズを重畳させた場合を示しているため、通常予想される程度のノイズの重畳では、平均化するサンプル数nを徐々に増やしていく課程で、誤り率がゼロレベルにまで低減できることが多いものと期待できるものである。
【0061】
尚、上記実施の形態において、ウォータマークの符号化方法及び復号化方法の処理手順の概略は、図1及び図2に示した通りであるが、必ずしもこのような処理に限るものではなく、例えば、図14中のステップS01〜S05及び図15中のステップS11〜S13に示したものと同様の処理において適用してもよい。
【0062】
また、復号結果の信頼度を判断する条件としては、上記に限られるものではない。
【0063】
さらに、ウォータマークの埋め込み対象となるデータはJPEG形式の画像に限られず、例えばMPEG形式の動画像等、どのような圧縮情報に適用してもよい。
【0064】
【発明の効果】
請求項1乃至請求項5に記載の発明によれば、入手したスペクトルと保管している元画像との差分を取って複数のウォータマークを抽出し、全てのウォータマークについて、互いに対応するビット同士の平均値を求め、各ビット毎に、平均値に近似する順で順位付けして各ビットのデータをソートした後に、ソートした順位付けの順番に各ビットのサンプル数を徐々に増やしながら、平均化及び復号化処理を繰り返し、その後に所定以上の信頼性を有するものとして予め定められた所定の条件を満たすものを判別してウォータマークの復号結果とするようにしているので、ソートを行わないまま平均化して復号化処理を行う場合に比べて、ソートの順位付けの高い順位のデータ列の誤り率を飛躍的に低減できる。その結果、順次にサンプル数を増やして平均化する課程で早期に誤り率の低いデータを得ることができ、比較的正確にウォータマークを復元することができる。
【0065】
特に、請求項2乃至請求項4に記載の発明によれば、明解な判断条件で容易に正確にウォータマークを復元することができる。
【0066】
また、請求項5に記載の発明によれば、元画像のデータが、データ量の小さい圧縮画像の形式で保管されるので、通常において多数種類の元画像のデータを保管する必要がある配信元において、保管すべき元画像のデータのデータ量が節減され、元画像のデータの保管のための配信元の負担が軽減される、という効果がある。
【図面の簡単な説明】
【図1】この発明の一の実施の形態に係るウォータマークの符号化方法の概略を示すフローチャートである。
【図2】この発明の一の実施の形態に係るウォータマークの復号化方法の概略を示すフローチャートである。
【図3】この発明の一の実施の形態に係るのウォータマークの復号化方法の詳細を示すフローチャートである。
【図4】この発明の一の実施の形態において複数のウォータマークの全サンプルについて各ビット毎の平均値を求める様子を示す図である。
【図5】この発明の一の実施の形態において複数のウォータマークの全サンプルについて求められた各ビット毎の平均値に近似する順位で全データをソートした状態を示す図である。
【図6】この発明の一の実施の形態におけるデータの例を示す図である。
【図7】この発明の一の実施の形態において上位2個のデータで平均化処理を行った様子を示す図である。
【図8】この発明の一の実施の形態において上位3個のデータで平均化処理を行った様子を示す図である。
【図9】この発明の一の実施の形態において上位4個のデータで平均化処理を行った様子を示す図である。
【図10】この発明の一の実施の形態において上位5個のデータで平均化処理を行った様子を示す図である。
【図11】この発明の一の実施の形態において上位6個のデータで平均化処理を行った様子を示す図である。
【図12】この発明の一の実施の形態において上位7個のデータで平均化処理を行った様子を示す図である。
【図13】ソートを行う場合と行わない場合について平均化するサンプル数を徐々に増やした場合の誤り率の変化を示す図である。
【図14】従来のウォータマーク符号化方法の概要を示すフローチャートである。
【図15】従来のウォータマーク復号化方法の概要を示すフローチャートである。
【図16】図14及び図15の手順のタイミングチャートである。
【図17】従来のウォータマーク復号化方法の詳細を示すフローチャートである。
【符号の説明】
Wm1〜Wm7 ウォータマーク
Av1〜Av127 各ビット毎の平均値
Pr(i,m) 各データ
Claims (5)
- 採取された画像データからウォータマークを取り出すウォータマーク復号化方法において、
入手したスペクトルと保管している元画像との差分を取って複数のウォータマークを抽出する第1の工程と、
全てのウォータマークについて、互いに対応するビット同士の平均値を求める第2の工程と、
各ビット毎に、平均値に近似する順で順位付けして各ビットのデータをソートする第3の工程と、
ソートした順位付けの順番に各ビットのサンプル数を徐々に増やしながら、平均化及び復号化処理を繰り返し、順次復号結果を出力する第4の工程と、
前記第4の工程において順次出力された復号結果のうち、所定以上の信頼性を有するものとして予め定められた所定の条件を満たすものを判別してウォータマークの復号結果とする第5の工程と
を備えるウォータマークの復号化方法。 - 請求項1に記載のウォータマークの復号化方法であって、
前記ウォータマークに所定の誤り訂正符号が予め含められ、
前記第4の工程は、訂正後の符号に対して前記所定の誤り訂正符号に基づいて誤り検出を行う工程を含み、
前記第5の工程における前記所定の条件は、前記第4の工程中の前記誤り検出を行う工程において検出される誤り検出が一定の水準以下であることを少なくとも含むことを特徴とするウォータマークの復号化方法。 - 請求項2に記載のウォータマークの復号化方法であって、前記第5の工程における前記所定の条件は、前記所定の誤り訂正符号に基づいて検出される誤り検出の結果、2つ以上の復号結果が連続して誤りでないことを検出することを少なくともさらに含むことを特徴とするウォータマークの復号化方法。
- 請求項1乃至請求項3のいずれかに記載のウォータマークの復号化方法であって、前記第5の工程における前記所定の条件は、前記第4の工程において、ソートした順位付けの順番で各ビットのサンプル数を徐々に増やしていく際に、新たに加えたサンプル数中の有効なデータのビット数が前記ウォータマークの全ビット数に対して一定の比率より多いことを検出することを少なくとも含むことを特徴とするウォータマークの復号化方法。
- 請求項1乃至請求項4のいずれかに記載のウォータマークの復号化方法であって、
前記ウォータマークは、前記元画像のデータがスペクトルデータへの変換と量子化とを含む画像圧縮を通じて圧縮されない原画像の形式から圧縮画像データの形式へと変換され、前記圧縮画像データの形式で前記元画像のデータを保管される一方、前記量子化の逆演算としての逆量子化を含む画像伸張を通じて前記元画像のデータが前記圧縮画像データの形式からスペクトルデータへと変換され、ここで得られたスペクトルデータに重ね合わせられた後、当該ウォータマークが重ね合わされた状態の前記スペクトルデータが、前記量子化を含む画像圧縮を通じて、前記圧縮画像データの形式へと変換されて配信されたものであり、
前記ウォータマークの復号時に、
保管された前記元画像のデータに対して前記量子化の逆演算としての逆量子化を含む画像伸張を通じて前記元画像のデータが前記圧縮画像データの形式から第1のスペクトルデータに変換するとともに、
採取された前記画像データを第2のスペクトルデータへ変換し、
得られた二つのスペクトルデータの差分を演算することによって、前記ウォータマークを前記第2のスペクトルデータから取り出すようにし、この際に、前記第1乃至第5の工程を実行するようにしたことを特徴とするウォータマークの復号化方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP31447798A JP3875801B2 (ja) | 1998-11-05 | 1998-11-05 | ウォータマークの復号化方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP31447798A JP3875801B2 (ja) | 1998-11-05 | 1998-11-05 | ウォータマークの復号化方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2000151968A JP2000151968A (ja) | 2000-05-30 |
JP3875801B2 true JP3875801B2 (ja) | 2007-01-31 |
Family
ID=18053798
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP31447798A Expired - Fee Related JP3875801B2 (ja) | 1998-11-05 | 1998-11-05 | ウォータマークの復号化方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3875801B2 (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100888589B1 (ko) | 2002-06-18 | 2009-03-16 | 삼성전자주식회사 | 반복적으로 삽입된 워터마크 추출방법 및 그 장치 |
PT1684265E (pt) * | 2005-01-21 | 2008-10-27 | Unltd Media Gmbh | Método para integrar uma marca de água digital num sinal útil |
FR3012641B1 (fr) * | 2013-10-31 | 2016-01-01 | Doremi Labs Inc | Procede d'augmentation de la sensibilite d'un detecteur de filigrane |
-
1998
- 1998-11-05 JP JP31447798A patent/JP3875801B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2000151968A (ja) | 2000-05-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7389420B2 (en) | Content authentication and recovery using digital watermarks | |
US7251343B2 (en) | Image protection | |
US7360093B2 (en) | System and method for authentication of JPEG image data | |
US6246777B1 (en) | Compression-tolerant watermarking scheme for image authentication | |
US6879703B2 (en) | Method and apparatus for watermarking images | |
JP3722995B2 (ja) | ウォータマークの符号化方法および復号化方法 | |
Langelaar et al. | Optimal differential energy watermarking of DCT encoded images and video | |
JP3614784B2 (ja) | 情報埋め込み装置、情報埋め込み方法、情報取り出し装置、および情報取り出し方法 | |
US8046580B2 (en) | Data processing apparatus and method for generation of protection compression encoded data | |
US7313696B2 (en) | Method for authentication of JPEG image data | |
US20030133591A1 (en) | Encoder and encoding method for electronic watermark, decoder and decoding method for electronic watermark, encoding and decoding program for electronic watermark, and recording medium for recording such program | |
JP2004507177A (ja) | デジタル画像データへ電子透かしを埋め込む方法 | |
KR100878518B1 (ko) | 워터마크 삽입방법, 전송방법, 복원방법 및 그 장치 | |
US20060053292A1 (en) | Watermarking of a variable bit-rate signal | |
US7493489B2 (en) | System and method for authentication of JPEG image data | |
JP3875801B2 (ja) | ウォータマークの復号化方法 | |
JP2008228287A (ja) | 電子透かしデータ用システム及びその方法 | |
US20040015695A1 (en) | System and method for authentication of JPEG image data | |
EP1743296B1 (en) | Watermarking a compressed information signal | |
Makur et al. | Tamper-proof image watermarking using self-embedding | |
JP2004320672A (ja) | 電子透かし埋め込み方法、電子透かし検出方法、電子透かし埋め込み装置、及び電子透かし検出装置 | |
US20060075240A1 (en) | Lossless data embedding | |
US7583850B2 (en) | Image-processing apparatus and method | |
Chen et al. | An image authentication and recovery method using optimal selection of block types | |
AU2002318848B2 (en) | Image Protection |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20051027 |
|
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: 20061024 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20061027 |
|
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: 20101102 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111102 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111102 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121102 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121102 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121102 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20151102 Year of fee payment: 9 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |