JP2006311225A - 透かし埋め込み装置および方法、ならびに透かし抽出装置および方法 - Google Patents
透かし埋め込み装置および方法、ならびに透かし抽出装置および方法 Download PDFInfo
- Publication number
- JP2006311225A JP2006311225A JP2005131543A JP2005131543A JP2006311225A JP 2006311225 A JP2006311225 A JP 2006311225A JP 2005131543 A JP2005131543 A JP 2005131543A JP 2005131543 A JP2005131543 A JP 2005131543A JP 2006311225 A JP2006311225 A JP 2006311225A
- Authority
- JP
- Japan
- Prior art keywords
- watermark
- information
- basic
- codeword
- unit
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Image Processing (AREA)
- Editing Of Facsimile Originals (AREA)
Abstract
【課題】 コンテンツに埋め込む透かしのビット量を可変にすると、埋め込まれた透かしのビット量に関する情報を何らかの形で提供する必要が生じる。
【解決手段】 透かし情報量判定部10は、原コンテンツに対する透かしの埋め込み難易度により、原コンテンツに埋め込み可能な透かし情報の情報量を判定し、透かし情報を構成する情報語の構成数tと各情報語の重複回数L/tを求める。CRC符号化部12およびECC符号化部14は、透かし情報を構成するmビットの各情報語を符号化し、nビットの符号語を生成する。繰り返し符号生成部16は、nビットの符号語を、透かし情報量判定部10から与えられた重複回数L/tだけ繰り返して連接することで繰り返し符号語を生成する。透かし埋め込み部18は、t個の繰り返し符号語を連接した連接符号語を原コンテンツに透かしとして埋め込み、透かし入りコンテンツを生成する。
【選択図】 図1
【解決手段】 透かし情報量判定部10は、原コンテンツに対する透かしの埋め込み難易度により、原コンテンツに埋め込み可能な透かし情報の情報量を判定し、透かし情報を構成する情報語の構成数tと各情報語の重複回数L/tを求める。CRC符号化部12およびECC符号化部14は、透かし情報を構成するmビットの各情報語を符号化し、nビットの符号語を生成する。繰り返し符号生成部16は、nビットの符号語を、透かし情報量判定部10から与えられた重複回数L/tだけ繰り返して連接することで繰り返し符号語を生成する。透かし埋め込み部18は、t個の繰り返し符号語を連接した連接符号語を原コンテンツに透かしとして埋め込み、透かし入りコンテンツを生成する。
【選択図】 図1
Description
本発明は、電子透かし技術に関し、特にコンテンツに電子透かしを埋め込む透かし埋め込み装置および方法、ならびに透かし入りコンテンツから電子透かしを抽出する抽出装置および方法に関する。
ブロードバンドネットワークでは通信帯域が格段に広がり、音声、静止画、動画などデータ量の大きいコンテンツの配信が可能となった。デジタルコンテンツの流通が盛んになるにつれ、コンテンツの著作権の保護がより一層求められている。
ネットワーク上に流通するコンテンツのデータは他人に容易にコピーされ、著作権に対する保護が十分ではないのが現状である。そこで著作権を保護するために、コンテンツの作成者や利用者の情報を電子透かしとしてコンテンツデータに埋め込む技術が開発されている。この電子透かし技術を用いることにより、ネットワーク上で流通するコンテンツデータから電子透かしを抽出して、不正利用を検出したり、不正コピーの流通経路を追跡することが可能となる。
コンテンツに埋め込まれる透かしの耐性を高めるためには、透かしの埋め込み強度をある程度大きくする必要があるが、透かしの埋め込みによりコンテンツが劣化することは極力避けることが望ましい。人間の知覚モデルを利用した透かし方式では、一般に、コンテンツによって埋め込み可能な透かしビット量は異なる。たとえば、画像の場合、人間の視覚モデルによれば、細かい模様のテクスチャ領域における画素の変更は、無地に近いフラットな領域における画素の変更よりも人間の目には知覚されにくいという特性があることが知られており、多くのテクスチャ領域を有する画像には、より多くの透かしビット量を埋め込むことが可能である。
しかしながら、一般的な電子透かしシステムでは、コンテンツの特徴とは関係なく、与えられたコンテンツに対して、固定長からなる透かしビット系列が埋め込まれる。非特許文献1には、コンテンツに埋め込む透かしのビット数を可変にし、主透かしのビット量を副透かしとしてコンテンツに埋め込む方法が開示されている。
M. Wu and B. Liu,"Data Hiding in Image and Video:Part I-Fundamental Isssues and Solutions", IEEE Transactions on Image Processing, Vol.12, No. 6, pp.685-695, June 2003.
M. Wu and B. Liu,"Data Hiding in Image and Video:Part I-Fundamental Isssues and Solutions", IEEE Transactions on Image Processing, Vol.12, No. 6, pp.685-695, June 2003.
コンテンツに埋め込む透かしのビット量を可変にすると、埋め込まれた透かしのビット量に関する情報を何らかの形で提供する必要が生じる。非特許文献1の方法では、主透かしのビット量を副透かしとしてさらにコンテンツに埋め込むため、主透かしとして埋め込むことのできるビット量が副透かしの分だけ少なくなる。また、副透かしが正しく抽出できなければ、主透かしの抽出ができなくなることから、主透かしと副透かしが互いに干渉しないという直交性が保証される必要があり、システム設計上の制約となる。
本発明はこうした状況に鑑みてなされたもので、その目的は、コンテンツに適した情報量の透かしを埋め込むことのできる電子透かし埋め込み技術、およびそのようにして透かしが埋め込まれたコンテンツから透かしを正しく抽出することのできる電子透かし抽出技術を提供することにある。
上記課題を解決するために、本発明のある態様の透かし埋め込み装置は、原コンテンツに埋め込み可能な透かし情報の情報量を判定し、前記情報量をもつ前記透かし情報を構成する基本単位となる情報語の構成数を求める透かし情報量判定部と、前記透かし情報を構成する各情報語を誤り訂正符号化した基本符号語を生成する符号化部と、前記基本符号語を所定の繰り返し回数だけ繰り返して連接した繰り返し符号語を生成する繰り返し符号生成部と、各情報語に対して生成された前記繰り返し符号語を前記情報語の構成数だけ連接した連接符号語を透かしとして原コンテンツに埋め込む透かし埋め込み部とを含む。
ここで、「原コンテンツ」とは、電子透かしを埋め込む対象となるオリジナルデータであり、たとえば静止画、動画、音声などのデータである。
本発明の別の態様もまた、透かし埋め込み装置である。この装置は、原コンテンツに埋め込むべき透かし情報の情報量を判定し、前記情報量をもつ前記透かし情報を構成する基本単位となる情報語の構成数を求める透かし情報量判定部と、前記透かし情報を構成する各情報語を誤り訂正符号化した基本符号語を生成する符号化部と、前記基本符号語を所定の重複回数だけ重複させて透かしとして埋め込むための前記原コンテンツのサンプルを取得するサンプリング部と、前記基本符号語を透かしとして前記サンプルに埋め込む透かし埋め込み部とを含む。前記サンプリング部は、前記情報語の構成数に対応して前記サンプルの取得を繰り返し、前記透かし埋め込み部は、各情報語に対して生成された前記基本符号語を各情報語に対応する前記サンプルに埋め込む。
本発明のさらに別の態様は、透かし抽出装置である。この装置は、基本符号語が所定の繰り返し回数だけ繰り返されて連接された繰り返し符号語が複数種類連接されてなる連接符号語を、透かし入りコンテンツから透かしとして抽出する透かし抽出部と、抽出された前記連接符号語を構成する互いに隣接する前記基本符号語の間で相関を計算することにより、複数種類の前記繰り返し符号語の連接の区切りを判定する相関評価部と、前記相関評価部により判定された前記連接の区切りにしたがって、前記連接符号語から前記繰り返し符号語を取り出し、その繰り返し符号語に含まれる前記所定の繰り返し回数分の前記基本符号語を加算する透かし加算部と、加算された前記基本符号語を誤り訂正することにより、前記透かし情報を構成する基本単位となる情報語を復号する復号部とを含む。
本発明のさらに別の態様もまた、透かし抽出装置である。この装置は、透かし入りコンテンツに埋め込まれた透かし情報の情報量を判定し、前記情報量をもつ前記透かし情報を構成する基本単位となる情報語の構成数を求める透かし情報量判定部と、前記透かし情報を構成する各情報語を誤り訂正符号化した基本符号語を所定の重複回数だけ重複して抽出するための前記透かし入りコンテンツのサンプルを取得するサンプリング部と、前記サンプルから前記基本符号語を透かしとして抽出する透かし抽出部とを含む。前記サンプリング部は、前記情報語の構成数に対応して前記サンプルの取得を繰り返し、前記透かし抽出部は、各情報語に対する前記基本符号語を各情報語に対応する前記サンプルから抽出する。
なお、以上の構成要素の任意の組み合わせ、本発明の表現を方法、装置、システム、記録媒体、コンピュータプログラムなどの間で変換したものもまた、本発明の態様として有効である。
本発明によれば、コンテンツに合わせて透かしの情報量を調整して埋め込むことができ、また、そのようにして透かしが埋め込まれたコンテンツから透かしを正しく抽出することができる。
実施の形態1
図1は、実施の形態1に係る透かし埋め込み装置100の構成図である。これらの構成は、ハードウエア的には、任意のコンピュータのCPU、メモリ、その他のLSIで実現でき、ソフトウエア的にはメモリにロードされた電子透かし埋め込み機能のあるプログラムなどによって実現されるが、ここではそれらの連携によって実現される機能ブロックを描いている。したがって、これらの機能ブロックがハードウエアのみ、ソフトウエアのみ、またはそれらの組み合わせによっていろいろな形で実現できることは、当業者には理解されるところである。
図1は、実施の形態1に係る透かし埋め込み装置100の構成図である。これらの構成は、ハードウエア的には、任意のコンピュータのCPU、メモリ、その他のLSIで実現でき、ソフトウエア的にはメモリにロードされた電子透かし埋め込み機能のあるプログラムなどによって実現されるが、ここではそれらの連携によって実現される機能ブロックを描いている。したがって、これらの機能ブロックがハードウエアのみ、ソフトウエアのみ、またはそれらの組み合わせによっていろいろな形で実現できることは、当業者には理解されるところである。
透かし埋め込み装置100は、原コンテンツと透かし情報の入力を受け、透かし情報を符号化して原コンテンツに透かしとして埋め込み、透かし入りコンテンツを出力する。透かし情報は、原コンテンツの著作権情報や利用者情報などの著作権保護に関するデータや原コンテンツに関連した各種データなどの情報である。
透かし情報は、所定のビット数の情報語を基本構成単位として、1つ以上の情報語から構成される。透かし情報の情報量は、情報語のビット数と透かし情報に含まれる情報語の個数の積で表される。
透かし埋め込み装置100は、原コンテンツに埋め込む透かし情報の情報量を、原コンテンツに対する透かしの埋め込み難易度に応じて調整する。ここで、透かしの埋め込み難易度は、透かしの埋め込み強度または透かしの埋め込みビット量に対する原コンテンツの知覚上の劣化の程度により評価される。透かしの埋め込み強度または埋め込みビット量を大きくしたときの原コンテンツの劣化具合が大きいほど、透かしの埋め込みは難しい。透かしを埋め込み易いコンテンツの場合は、透かし情報の情報量を増やすことができる。透かしを埋め込みにくいコンテンツの場合は、コンテンツの劣化を避けるために、透かし情報の情報量を少なくする必要がある。
一方、透かし埋め込み装置100は、透かしに耐性をもたせるために、透かし情報を構成する各情報語を重複させて原コンテンツに埋め込む。透かしを埋め込みにくいコンテンツの場合、透かしの埋め込み強度を低くしなければならないため、情報語の重複回数を増やすことで耐性を確保する必要がある。透かしを埋め込み易いコンテンツの場合は、透かしの埋め込み強度を高くしてもよいため、情報語の重複回数を減らしても問題がない。
いま、原コンテンツに埋め込む透かしの総データ量を一定にした場合、透かし情報の情報量を増やすと、透かし情報を構成する各情報語の重複回数が減り、逆に、透かし情報の情報量を減らすと、透かし情報を構成する各情報語の重複回数が増えるという関係が成り立つ。
そこで、透かし埋め込み装置100は、透かしを埋め込み易いコンテンツに対しては、透かし情報の情報量を多くし、その分、透かし情報の各情報語の重複回数を減らす。逆に、透かしを埋め込みにくいコンテンツに対しては、透かし情報の情報量を少なくし、その分、透かし情報の各情報語の重複回数を増やす。これにより、透かしの耐性を保ちつつ、できるだけ多くの情報を埋め込むことができる。以下、透かし埋め込み装置100の構成を詳しく説明する。
透かし情報量判定部10は、原コンテンツの特徴量を算出することにより、原コンテンツに対する透かしの埋め込み難易度を評価し、原コンテンツに埋め込むことのできる透かし情報の情報量を判定する。たとえば、コンテンツが画像の場合、細かな模様のテクスチャ領域が多い画像には、透かしを埋め込み易いので、埋め込み可能な透かしの情報量は多くなり、無地に近いフラットな領域が多い画像には、透かしを埋め込みにくいので、埋め込み可能な透かしの情報量が少なくなる。
透かし情報量判定部10は、ある知覚劣化モデルを利用することで、原コンテンツのサンプルに透かしを埋め込むときの埋め込み強度を求め、埋め込み対象の各サンプルに対する透かしの埋め込み強度の総和が大きいほど、透かしが埋め込み易いと評価し、透かし情報の情報量を増やしてもよい。
透かし情報を構成する情報語のビット数をmとすると、透かし情報量判定部10は、原コンテンツに埋め込み可能な透かし情報の情報量を、情報語のビット数の整数倍で与える。埋め込み可能と判定された透かしの情報量をtmビットと表す。ここでtは正の整数であり、透かし情報に含まれる情報語の個数である。透かし情報の情報量tmが決まると、透かし情報を構成する情報語の構成数tが求まる。
原コンテンツに埋め込まれるmビットからなるデータの総数をLに固定すると、透かし情報を構成するmビットからなる情報語の構成数がt個であるから、各情報語はL/t個ずつ重複させることができる。
透かし情報量判定部10は、判定された透かし情報の情報量をもとに、透かし情報を構成する情報語の構成数tと各情報語の重複回数L/tを求め、求めた情報語の構成数tを情報語取得部11と透かし埋め込み部18に与え、各情報語の重複回数L/tを繰り返し符号生成部16に与える。
情報語取得部11は、透かし情報を構成するmビットの情報語を取得し、CRC(巡回冗長検査)符号化部12、ECC(誤り訂正符号)符号化部14、および繰り返し符号生成部16に与える。情報語取得部11は、透かし情報量判定部10から透かし情報を構成する情報語の構成数tの情報を受け取っており、透かし情報を構成するmビットの情報語の取得をt回行い、透かし情報を構成するt個の情報語をCRC符号化部12、ECC符号化部14、および繰り返し符号生成部16に順次与える。
CRC符号化部12は、mビットの情報語に対して誤りを検出するためのCRC符号語を生成し、生成されたcビットのCRC符号語をECC符号化部14と繰り返し符号生成部16に与える。
ECC符号化部14は、mビットの情報語とCRC符号化部12から与えられたcビットのCRC符号語とを誤り訂正符号の情報語とすることでパリティ検査語を生成し、生成されたpビットのパリティ検査語を繰り返し符号生成部16に与える。
繰り返し符号生成部16は、mビットの情報語とcビットのCRC符号語とpビットのパリティ検査語とから構成されるnビットの符号語を、透かし情報量判定部10から与えられた重複回数L/tだけ繰り返して連接することで繰り返し符号語を生成する。繰り返し符号生成部16は、生成されたnL/tビットの繰り返し符号語を透かし埋め込み部18に与える。
CRC符号化部12、ECC符号化部14、および繰り返し符号生成部16は、情報語取得部11から透かし情報を構成するt個の情報語を順次受け取り、繰り返し符号生成部16は、各情報語をL/t回繰り返した繰り返し符号語を順次生成し、合計t個の繰り返し符号語を透かし埋め込み部18に与える。
なお、CRC符号化部12はオプションの構成であり、誤り検出に要求される精度によっては、CRC符号を生成せずに、パリティ検査語だけを付加した符号語を形成してもよい。
透かし埋め込み部18は、透かし情報量判定部10から透かし情報を構成する情報語の構成数tの情報を受け取っており、繰り返し符号生成部16からt個の繰り返し符号語が与えられると、t個の繰り返し符号語を連接した連接符号語を原コンテンツに透かしとして埋め込み、透かし入りコンテンツを生成する。
なお、原コンテンツが画像である場合、透かしの埋め込みは原画像領域で行われてもよく、原画像を離散コサイン変換、離散フーリエ変換、離散ウェーブレット変換などにより空間周波数変換した領域において透かしが埋め込まれてもよい。
図2(a)、(b)は、透かし埋め込み装置100により原コンテンツに埋め込まれる透かしのデータ構造を説明する図である。図2(a)は、透かしの基本単位の符号構造を示す。透かし情報を構成するmビットの情報語(以下、基本情報語という)にcビットのCRC符号語とpビットのパリティ検査語とを付加したnビットの符号語(以下、基本符号語という)が、符号化された透かし情報の基本単位となる。ここで、n=m+c+pである。
図2(a)のnビットの基本符号語を単位として、これをL個連接することで、1つの連接符号語が生成され、この連接符号語が原コンテンツに埋め込まれる。図2(b)は、nビットの基本符号語をL個連接したnLビットの連接符号語のデータ構造を示す。
図3(a)〜(d)は、透かし情報量判定部10により判定される透かし情報の情報量を説明する図である。図3(a)は、1つの基本情報語aだけからなる透かし情報を示し、情報量はmビットである。図3(b)は、第1基本情報語aと第2基本情報語bからなる透かし情報を示し、情報量は2mビットである。図3(c)は、第1基本情報語a、第2基本情報語bおよび第3基本情報語cからなる透かし情報を示し、情報量は3mビットである。図3(d)は、第1〜第12基本情報語a〜lからなる透かし情報を示し、情報量は12mビットである。
図4(a)〜(d)は、透かし埋め込み部18により原コンテンツに埋め込まれる連接符号語を例示して説明する図である。ここでは、連接符号語に含まれる基本符号語の総数Lが12である場合を示し、同図のように、nビットの基本符号語が12個連接されて連接符号語が構成されている。図4(a)は、透かしを最も埋め込みにくい場合における連接符号語であり、図4(b)、図4(c)の順に、透かしを埋め込み易くなり、図4(d)は、透かしを最も埋め込み易い場合の連接符号語である。
図4(a)は、図3(a)の1個の基本情報語だけからなる透かし情報に対応して生成された連接符号語である。この連接符号語は、1つの繰り返し符号語だけからなり、12個の基本符号語a^が12回繰り返して連接されている。この連接符号語が原コンテンツに埋め込まれた場合、基本符号語a^に対応する基本情報語aだけからなるmビットの透かし情報が原コンテンツに埋め込まれることになる。ここで、mビットの基本情報語aを誤り訂正符号化したnビットの基本符号語をa^と表記する。
図4(b)は、図3(b)の2個の基本情報語からなる透かし情報に対応して生成された連接符号語である。この連接符号語は、6個ずつの基本符号語で区切られ、6個の基本符号語からなる繰り返し符号語を2つ含む。第1繰り返し符号は、第1基本符号語a^を6回繰り返して連接したものであり、第2繰り返し符号は、第2基本符号語b^を6回繰り返して連接したものである。各繰り返し符号のデータ長は6nビットである。この連接符号語が原コンテンツに埋め込まれた場合、第1基本符号語a^に対応する第1基本情報語aと、第2基本符号語b^に対応する第2基本情報語bとを合わせた合計2mビットの透かし情報が原コンテンツに埋め込まれたことになる。
図4(c)は、図3(c)の3個の基本情報語からなる透かし情報に対応して生成された連接符号語である。この連接符号語は、4個ずつの基本符号語で区切られ、4個の基本符号語からなる繰り返し符号語を3つ含む。第1繰り返し符号は、第1基本符号語a^を4回繰り返して連接したものであり、第2繰り返し符号は、第2基本符号語b^を4回繰り返して連接したものであり、第3繰り返し符号は、第3基本符号語c^を4回繰り返して連接したものである。各繰り返し符号のデータ長は4nビットである。この連接符号語が原コンテンツに埋め込まれた場合、第1、第2、第3基本符号語a^、b^、c^のそれぞれに対応する第1、第2、第3基本情報語a、b、cを合わせた合計3mビットの透かし情報が原コンテンツに埋め込まれたことになる。
図4(d)は、図3(d)の12個の基本情報語からなる透かし情報に対応して生成された連接符号語である。この連接符号語は、1個の基本符号語だけからなる繰り返し符号語を12個含む。ただし、図4(d)で用いられている繰り返し符号は、1回の符号の繰り返しを行うものであるため、繰り返しを行っていないことに実質的に等しい。第1〜第12繰り返し符号は、それぞれ第1〜第12基本符号語a^〜l^を含む。この連接符号語が原コンテンツに埋め込まれた場合、第1〜第12基本符号語a^〜l^のそれぞれに対応する第1〜第12基本情報語a〜lを合わせた合計12mビットの透かし情報が原コンテンツに埋め込まれたことになる。
なお、図4(a)〜(d)の説明では、透かしが埋め込み易くなるにつれて、基本情報語の構成数を1つずつ増やし、繰り返し符号語を1つずつ増やしたが、連接符号語内の基本符号語の総数Lを2のべき乗で表される値に設定しておき、透かしが埋め込み易くなるにつれて、繰り返し符号語の数を1、2、4、8、…と2のべき乗で増やしていき、基本情報語の構成数を2のべき乗で増やしていってもよい。この場合、log2L+1通りの連接符号語のパターンを透かしの埋め込み難易度に応じて使い分けることななる。このようにすれば、端数を生じることなく、同一個数の基本符号語が繰り返された繰り返し符号語を連接した連接符号語を生成することができる。
また、図4(a)〜(d)の説明では、繰り返し符号語内で繰り返される基本符号語の繰り返し回数は、どの繰り返し符号語に対しても同じであるとしたが、透かし情報を構成する基本情報語の重要度が異なる場合は、繰り返し符号語内の基本符号語の繰り返し回数を異ならせてもよい。重要度が高い基本情報語ほど、繰り返し回数を増やして繰り返し符号語を構成することができる。
図5(a)、(b)は、透かし情報を構成する基本情報語と、連接符号語を構成する繰り返し符号語との関係を説明する図である。一般に、透かし情報は、図5(a)に示すように、t個のmビットの基本情報語a1〜atから構成され、その情報量はtmビットである。これに対して、連接符号語は、図5(b)に示すように、全部でL個のnビットの基本符号語から構成され、符号長はnLビットである。連接符号語は、t個の繰り返し符号語A^1〜A^tがt個連接して構成され、各繰り返し符号語A^1〜A^tにはそれぞれ基本情報語a1〜atに対する基本符号語a^1〜a^tがL/t回ずつ繰り返されて連接されている。各繰り返し符号語A^1〜A^tの符号長はnL/tビットである。
図6は、透かし埋め込み装置100による透かしの埋め込み手順を説明するフローチャートである。
透かし情報量判定部10は、入力された原コンテンツに埋め込み可能な透かし情報の情報量を判定する(S10)。判定された透かし情報の情報量がtmビットであったとする。透かし情報量判定部10は、透かし情報の情報量tmビットを透かし情報の基本情報語のビット数mで除算することにより、透かし情報を構成する基本情報語の構成数tを求める。また、透かし情報量判定部10は、連接符号語を構成する基本符号語の総数Lを基本情報語の構成数tで除算することにより、繰り返し符号内の基本符号語の重複回数(あるいは繰り返し回数といってもよい)L/tを求める。
取得した基本情報語の個数をカウントするための変数uに1を代入する(S12)。情報語取得部11は、透かし情報を構成するmビットの基本情報語を取得する(S14)。
CRC符号化部12は、mビットの基本情報語をCRC符号化し、cビットのCRC符号語を生成する(S16)。ECC符号化部14は、mビットの基本情報語とcビットのCRC符号語を合わせた(m+c)ビットの情報語をECC符号化し、pビットのパリティ検査語を生成する(S18)。これにより、CRC符号化部12によりmビット単位でCRC符号化され、ECC符号化部14により(m+c)ビット単位でECC符号化されたnビットの基本符号語が形成される。
繰り返し符号生成部16は、nビットの基本符号語をL/t回繰り返して連接することによりnL/tビットの繰り返し符号語を生成する(S20)。
変数uが基本情報語の構成数t以下である場合(S22のY)、変数uを1だけインクリメントし(S24)、ステップS14に戻る。変数uが透かし情報を構成する基本情報語の構成数tより大きい場合(S22のN)、透かし埋め込み部18は、t個の繰り返し符号語を連接したnLビットの連接符号語を透かしとして原コンテンツに埋め込む(S26)。
図7は、実施の形態1に係る透かし抽出装置200の構成図である。透かし抽出装置200は、透かし埋め込み装置100により出力された透かし入りコンテンツをテストコンテンツとして受け入れて、透かし入りコンテンツから連接符号語を透かしとして抽出し、連接符号語内の繰り返し符号語を復号することにより、透かし情報を構成する基本情報語を取得し、透かし情報を復元して出力する。
透かし抽出部42は、入力された透かし入りコンテンツから連接符号語を透かしとして抽出する。この連接符号語は、透かし埋め込み装置100の透かし埋め込み部18により原コンテンツに埋め込まれたものであり、基本符号語をL/t回繰り返して連接した繰り返し符号語がt個連接されて構成されている。
相関評価部43は、連接符号語内に連接された繰り返し符号語の連接の区切りを判定するために、連接符号語内の隣接する2つの基本符号語の相関を評価する。隣接する2つの基本符号語の相関が所定の閾値よりも高い場合は、それらの基本符号語は1つの繰り返し符号語内にあると判定し、隣接する2つの基本符号語の相関が所定の閾値よりも低い場合は、その隣接する2つの基本符号語は異なる繰り返し符号語に属すると判定し、その隣接する2つの基本符号語の間を連接の区切りと判定する。
図8(a)〜(d)は、相関評価部43により連接符号語内の繰り返し符号語の連接の区切りが判定される様子を説明する図である。図8(a)は、透かし入りコンテンツから抽出された連接符号語の例を示す。抽出された連接符号語は、4つの基本符号語x0、x1、x2、x3から構成される。連接符号語が抽出された段階では、この連接符号語がいくつの繰り返し符号語から構成されているかわからないため、2のべき乗数の情報語が埋め込まれている場合は、図8(b)、(c)、(d)に示すようなパターンが可能性として考えられる。
図8(b)は、連接符号語が1つだけの繰り返し符号語を含む場合で、繰り返し符号語内に基本符号語a^が4個繰り返されている。図8(c)は、連接符号語が2つの繰り返し符号語を含む場合である。第1繰り返し符号語内に第1基本符号語a^が2個繰り返され、第2繰り返し符号語内に第2基本符号語b^が2個繰り返されている。図8(d)は、連接符号語が4つの繰り返し符号語を含む場合である。第1〜第4繰り返し符号語は第1〜4基本符号語a^〜d^をそれぞれ1個ずつ含む。
相関評価部43は、図8(a)の連接符号語が与えられた場合、{x0,x1}、{x1,x2}、{x2,x3}の順に隣接する2つの基本符号語の相関を評価し、繰り返し符号語の連接の区切りを判定する。3組の隣接する基本符号語{x0,x1}、{x1,x2}、{x2,x3}のいずれも相関が高い場合、相関評価部43は、この連接符号語は、図8(b)に示した1つだけの繰り返し符号語からなるパターンであると判定する。
1つ目の隣接する基本符号語{x0,x1}の相関が高く、2つ目の隣接する基本符号語{x1,x2}の相関が低く、3つ目の隣接する基本符号語{x2,x3}の相関が高い場合、相関評価部43は、この連接符号語は、図8(c)に示した2つの繰り返し符号語からなるパターンであると判定する。
3組の隣接する基本符号語{x0,x1}、{x1,x2}、{x2,x3}のいずれも相関が低い場合、相関評価部43は、この連接符号語は、図8(d)に示した4つの繰り返し符号語からなるパターンであると判定する。
透かし加算部44は、相関評価部43により判定された連接の区切りにしたがって、繰り返し符号内のq個の重複した基本符号語を加算する。この加算により検出された透かしの振幅はq倍され、透かしの検出精度が高まる。透かし加算部44は加算された基本符号語をECC復号部46に与える。
図9(a)、(b)は、透かし加算部44により繰り返し符号語内の重複した基本符号語が加算される様子を説明する図である。図9(a)は、q個の基本符号語a^からなる繰り返し符号語を示す。ただし、a(1)^,a(2)^,…,a(q)^は、透かし抽出部42により抽出されたデータ、すなわち、a^にノイズが付加されたデータである。相関評価部43により連接の区切りが判定され、q個の基本符号語a(1)^,a(2)^,…,a(q)^からなる繰り返し符号語が得られたとする。透かし加算部44は、図9(b)に示すように、繰り返し符号語内のq個の基本符号語a(1)^,a(2)^,…,a(q)^の値を加算して、加算された基本符号語qa^の値を利用して、基本符号語a^の各ビットの値を判定する。
ECC復号部46は、透かし加算部44により判定された基本符号語を受け取り、基本符号語に含まれるパリティ検査語によって、基本情報語とCRC符号語の誤りを訂正し、誤り訂正後の基本情報語とCRC符号語をCRC検査部48に与える。CRC検査部48は、CRC符号により、誤り訂正後の基本情報語に誤りが存在しないかを検査し、誤りが検出されなかった場合、誤り訂正後の基本情報語を情報語取得部50に与える。CRC符号により誤りが検出された場合は、正しく基本情報語が抽出されなかった旨を伝える警告をユーザに提示する。
透かし加算部44、ECC復号部46およびCRC検査部48は、相関評価部43によって判定された繰り返し符号語の連接の区切りにしたがって、連接符号語内の繰り返し符号語を順次取り出し、各繰り返し符号語内の重複した基本情報語を加算し、誤り訂正復号およびCRC検査を行う。
情報語取得部50は、誤り訂正後の基本情報語をCRC検査部48から順次取得し、取得された1つ以上の基本情報語から透かし情報を再構成して出力する。
図10は、透かし抽出装置200による透かしの抽出手順を説明するフローチャートである。
透かし抽出部42は、透かし入りコンテンツからnLビットの連接符号語を透かしとして抽出する(S50)。
透かし情報を構成する基本情報語の個数をカウントするための変数uに1を代入する(S52)。連接符号語に含まれる各繰り返し符号語内の重複する基本符号語の個数をカウントするための変数bに0を代入する(S54)。
相関評価部43は、透かし抽出部42により抽出された連接符号語からnビットずつ基本符号語xbを取り出し(S56)、隣接する2つの基本符号語{xb−1,xb}の相関ρを計算する(S58)。ここで、xb−1は前回取り出した基本符号語である。ただし、b=0の場合、xb−1は存在しないため、相関ρの計算は行わない。相関ρは次式により計算される。
ρ=(xb−1,xb)/|xb−1|/|xb|
ここで、(xb−1,xb)はxb−1,xbの内積、|xb−1|、|xb|はそれぞれxb−1、xbの大きさである。
ここで、(xb−1,xb)はxb−1,xbの内積、|xb−1|、|xb|はそれぞれxb−1、xbの大きさである。
相関ρが所定の閾値τよりも大きければ(S60のY)、相関評価部43は、隣接する2つの基本符号語xb−1、xbは同一の繰り返し符号語に属すると判定し、変数bを1だけインクリメントし(S62)、ステップS56に戻る。
相関ρが所定の閾値τ以下であれば(S60のN)、相関評価部43は、隣接する2つの基本符号語xb−1、xbは異なる繰り返し符号語に属すると判定し、この2つの基本符号語xb−1、xbの間が繰り返し符号語の連接の区切りであると判定し、透かし加算部44は、この区切りまでのb個の基本符号語x0〜xb−1を加算し、加算された基本符号語の値を利用して各ビットの値を検出する(S64)。重複した基本符号語を加算することにより、透かし入りコンテンツに対するノイズ成分がキャンセルされる効果がある。
ECC復号部46は、検出された基本符号語をECC復号し(S66)、CRC検査部48は、誤り訂正後の基本情報語をCRC検査する(S68)。これにより、透かし情報を構成する1つの基本情報語が復号される。
変数uに抽出を行った符号語の数bを加算した値が、連接符号語を構成する基本符号語の総数L以下である場合(S70のY)、変数uを変数bの値、すなわち繰り返し符号語内の基本符号語の重複回数だけインクリメントし(S72)、ステップS54に戻る。
情報語取得部50は、連接符号語の各繰り返し符号語から復号された基本情報語を順次取得して、1つ以上の基本情報語からなる透かし情報を生成する(S74)。
なお、上記の透かし抽出手順において、繰り返し符号語内で繰り返される基本符号語の繰り返し回数が、どの繰り返し符号語に対しても同じである場合は、最初の繰り返し符号語の連接の区切りを判定した段階で、繰り返し回数qが判明するから、以降は、隣接する基本符号語間の相関評価を行わずに、q個ずつ基本符号語を取得することで、2番目以降の繰り返し符号語を取得してもよい。
実施の形態2
図11は、実施の形態2に係る透かし埋め込み装置110の構成図である。実施の形態2の透かし埋め込み装置110は、実施の形態1の透かし埋め込み装置100にスクランブル部20の構成を追加したものであり、情報語取得部11が取得した基本情報語をスクランブルすることで、透かし情報を構成する隣り合う基本情報語の間でビットパターンが一致するのを防ぐ。その他の点については、実施の形態1の透かし埋め込み装置100と同様であるから、実施の形態1の透かし埋め込み装置100と共通する構成と動作については説明を省略する。
図11は、実施の形態2に係る透かし埋め込み装置110の構成図である。実施の形態2の透かし埋め込み装置110は、実施の形態1の透かし埋め込み装置100にスクランブル部20の構成を追加したものであり、情報語取得部11が取得した基本情報語をスクランブルすることで、透かし情報を構成する隣り合う基本情報語の間でビットパターンが一致するのを防ぐ。その他の点については、実施の形態1の透かし埋め込み装置100と同様であるから、実施の形態1の透かし埋め込み装置100と共通する構成と動作については説明を省略する。
情報語取得部11は、透かし情報を構成するmビットの基本情報語を取得し、スクランブル部20に与える。スクランブル部20は、mビットの基本情報語の先頭にrビットの冗長語を識別データとして付加し、基本情報語をスクランブルする。以下、スクランブル部20によるスクランブルの方式について説明する。
スクランブル方式の一例として、伝送や磁気記録におけるデジタル変調の際に利用されるGS(Guided Scramble)方式を採用する。GS方式は、ある一定のデータブロック長からなる情報系列に対して、複数種類の符号系列を生成し、これらを次に送信する符号系列の候補として扱う。これらの候補の中から、伝送媒体の性質に合わせて最適なものを選択して最終的な符号系列とする。このGS方式により、多様性に富んだ符号系列の候補を簡単な方法で生成することができる。
GS符号化器は、mビットからなる情報系列D(x)の直前にK種類のrビットの冗長語ci(i=0,・・・,K−1)を付加し、K種類の符号系列cixm+D(x)を生成する。この符号系列の符号長は(m+r)ビットとなる。このようにして冗長語が付加された符号系列に対して、次式のようにN次元のスクランブル多項式S(x)で除算することにより商Ti(x)を求める。
Ti(x)=QS(x)[(cixm+D(x))xN] (1)
ただし、Qa[b]はbをaで除算した商を示す。商集合{T0(x),・・・,TK−1(x)}がスクランブル後の符号系列の候補である。これらの候補の各々について、その符号系列が実際に用いられた際の性能を評価し、その評価値が最良であるものを最終的な符号系列として選択する。
ただし、Qa[b]はbをaで除算した商を示す。商集合{T0(x),・・・,TK−1(x)}がスクランブル後の符号系列の候補である。これらの候補の各々について、その符号系列が実際に用いられた際の性能を評価し、その評価値が最良であるものを最終的な符号系列として選択する。
復調時には、GS復号器が符号系列にS(x)を乗算し、下位Nビットと上位rビットの変換情報を捨てることにより、元の情報系列D(x)が得られる。
ここでスクランブル多項式S(x)として、S(x)=xr+1を用いた場合を説明する。m mod r=0の場合、(1)式は次式に示す畳み込み演算で表現可能である。
tj=dj(+)ci (j=0)
tj=dj(+)tj−1 (j=1,・・・,n/r−1)
ただし、i=0,・・・,K−1であり、djは元の情報系列D(x)をrビットずつ区切ったビット列、tjは変換後の符号系列Ti(x)の先頭のrビットの冗長語ci以降をrビットずつ区切ったビット列である。また(+)は排他的論理和(EX−OR)演算を示す。
tj=dj(+)tj−1 (j=1,・・・,n/r−1)
ただし、i=0,・・・,K−1であり、djは元の情報系列D(x)をrビットずつ区切ったビット列、tjは変換後の符号系列Ti(x)の先頭のrビットの冗長語ci以降をrビットずつ区切ったビット列である。また(+)は排他的論理和(EX−OR)演算を示す。
図12はこの符号化時の畳み込み演算を説明する図である。たとえば、m=6、r=2の場合を考える。元の情報系列D(x)=(1,0,1,0,0,1)に対して、冗長語c0=(0,0)を付加して、変換後の符号系列T0(x)を生成する。上記の符号化時の畳み込み演算により、t0=d0(+)c0=(1,0)(+)(0,0)=(1,0)、t1=d1(+)t0=(1,0)(+)(1,0)=(0,0)、t2=d2(+)t1=(0,1)(+)(0,0)=(0,1)となり、変換後の符号系列T0=(0,0,1,0,0,0,0,1)が得られる。ここで変換後の符号系列T0の先頭の2ビットは冗長語c0であることに注意する。
同様にして、冗長語c1=(0,1)、c2=(1,0)、c3=(1,1)に対して、それぞれ変換後の符号系列T1=(0,1,1,1,0,1,0,0)、T2=(1,0,0,0,1,0,1,1)、T3=(1,1,0,1,1,1,1,0)が得られる。
復号時は次式のように畳み込み演算を行うことにより、元の情報系列D(x)が得られる。
dj=tj(+)ci (j=0)
dj=tj(+)tj−1 (j=1,・・・,n/r−1)
dj=tj(+)tj−1 (j=1,・・・,n/r−1)
図13はこの復号時の畳み込み演算を説明する図である。前述の例において、変換後の符号化系列T0=(0,0,1,0,0,0,0,1)が与えられると、先頭の2ビットから冗長語c0=(0,0)が得られ、上記の復号時の畳み込み演算により、d0=t0(+)c0=(1,0)(+)(0,0)=(1,0)、d1=t1(+)t0=(0,0)(+)(1,0)=(1,0)、d2=t2(+)t1=(0,1)(+)(0,0)=(0,1)となり、元の情報系列D(x)=(1,0,1,0,0,1)が得られる。他の変換後の符号化系列T1,T2,T3についてもこの畳み込み演算により、元の情報系列D(x)が得られる。
図14(a)〜(c)は、スクランブル部20によって、透かし情報を構成する基本情報語がスクランブルされる様子を説明する図である。図14(a)は、透かし情報の一例を示す。透かし情報は「0001000111000100」であり、その情報量は12ビットである。この透かし情報は、4つの基本情報語a、b、c、dからなる。各基本情報語は4ビットである。第1基本情報語aは「0001」、第2基本情報語bは「0001」、第3基本情報語cは「1100」、第4基本情報語dは「0100」である。
ここで、第1基本情報語aと第2基本情報語bはたまたま同一のビットパターンである。透かし情報全体では、1つの識別可能なビット系列であっても、透かし情報を基本情報語の単位で分割し扱うと、このように、隣接する2つの基本情報語が同一のビットパターンになることがある。隣接する2つの基本情報語が同一のビットパターンになると、基本情報語に対する基本符号語を繰り返して繰り返し符号語を生成し、その繰り返し符号語を連接した連接符号語を形成した場合に、連接符号語内で2つの隣接する繰り返し符号語の連接の区切りが判別できなくなる。
たとえば、実施の形態1の図4(c)で説明した連接符号語において、第1基本符号語a^と第2基本符号語b^がたまたま同一ビットパターンであったとする。その場合、4個の第1基本符号語a^が繰り返された第1繰り返し符号語と、4個の第2基本符号語b^が繰り返された第2繰り返し符号語との連接の区切りは判別不可能となり、8個の基本符号語が繰り返された繰り返し符号語であると誤って判定してしまうことになる。
そこで、スクランブル部20は、上述のGS符号化器として機能し、第1基本情報語aと第2基本情報語bに対して異なる冗長語を付加して畳み込み演算を施すことにより、スクランブルし、第1基本情報語aと第2基本情報語bを異なるビットパターンをもつ情報語に変換する。
スクランブル部20は、図14(b)に示すように、第1基本情報語aに2ビットの冗長語「01」を付加し、2ビットずつの畳み込み演算を行うことにより、スクランブルされた第1基本情報語a’を生成する。これにより、第1基本情報語a「0001」は、スクランブルされた第1基本情報語a’「010100」に変換される。
また、スクランブル部20は、図14(c)に示すように、第2基本情報語bに2ビットの冗長語「10」を付加し、2ビットずつの畳み込み演算を行うことにより、スクランブルされた第2基本情報語b’を生成する。これにより、第2基本情報語b「0001」は、スクランブルされた第2基本情報語b’「101011」に変換される。
スクランブルされた第1、第2の基本情報語a’、b’内のビット0を−1に置き換えて、2つの基本情報語の相関を計算すると、相関は−1となる。このように、直前の基本情報語との相関ができるだけ小さくなるものをスクランブル系列として選択することで、抽出時に隣接する符号語の連接の区切りの判別が容易となる。また、基本情報語が1または−1の2値で表現されている場合、相関が小さいというのは、一致するビット数が少ないのと等価であるので、直前の基本情報語と一致するビット数が最小となるスクランブル系列を選択するという系列選択基準を用いてもよい。
透かし抽出側では、上述のGS復号器により、冗長語を用いた畳み込み演算を行い、スクランブルされた第1、第2基本情報語a’、b’をデスクランブルして元の第1、第2基本情報語a、bを復元することができる。
スクランブル部20は、こうして得られたスクランブル後の(m+r)ビットの基本情報語をCRC符号化部12、ECC符号化部14、および繰り返し符号生成部16に与える。以降の動作は、基本情報語のビット数がmビットから(m+r)ビットになったことを除き、実施の形態1の透かし埋め込み装置100と同じである。
実施の形態2の透かし埋め込み装置110によれば、透かし情報を構成する基本情報語をスクランブルすることにより、隣接する2つの基本情報語が同一のビットパターンになることを防ぐことができる。これにより、透かし抽出の際に、隣接符号語において繰り返し符号語の連接の区切りが誤判定されるおそれがなくなる。もっとも、基本情報語のビット長が十分に長ければ、隣接する基本情報語がたまたま一致する確率は低くなる。したがって、基本情報語のビット長が十分に長ければ、スクランブル部20を含まない実施の形態1の透かし埋め込み装置100によって、連接符号語を生成して原コンテンツに埋め込んでもよい。スクランブル部20を含む実施の形態2の透かし埋め込み装置110は、基本情報語のビット長が十分に長くない場合や、連接符号語において繰り返し符号語の連接の区切りを誤判定する可能性がゼロであることを保証する場合に用いられる。
また、実施の形態2のスクランブル部20では、直前の基本情報語との相関が小さくなるように基本情報語をスクランブルした。これを、直前の基本符号語との相関ができるだけ小さくなるような基本符号語系列を生成するように、基本情報語のスクランブルを行うようにしてもよい。抽出時には、隣接する符号語間で相関を求め、連接の区切りの判別を行っているため、この変更により、さらに、抽出時に隣接する符号語の連接の区切りの判別が容易となる。
実施の形態2の透かし抽出装置は、実施の形態1の透かし抽出装置200のCRC検査部48の後段に、復号された基本情報語のスクランブルを解除するデスクランブラを設けることにより構成される。デスクランブラは、上述のGS復号器として機能し、基本情報語の先頭のrビットの冗長語を用いて基本情報語のスクランブルを解除する。
実施の形態3
図15は、実施の形態3に係る透かし埋め込み装置120の構成図である。実施の形態3の透かし埋め込み装置120は、原コンテンツから透かしを埋め込むためのサンプルを取得して、基本符号語をそのサンプルに重複して埋め込む。
図15は、実施の形態3に係る透かし埋め込み装置120の構成図である。実施の形態3の透かし埋め込み装置120は、原コンテンツから透かしを埋め込むためのサンプルを取得して、基本符号語をそのサンプルに重複して埋め込む。
透かし情報量判定部10は、原コンテンツに対する透かしの埋め込み難易度の評価値にもとづいて原コンテンツに埋め込むことのできる透かし情報の情報量を判定し、その情報量をもつ透かし情報を構成する基本情報語の構成数tと各基本情報語の重複回数L/tを求める。透かし情報量判定部10は、基本情報語の構成数tを情報語取得部11に与え、各基本情報語に対する基本符号語の重複回数L/tをサンプリング部22に与える。
サンプリング部22は、基本符号語をL/t回重複して埋め込む対象となるサンプルを原コンテンツからサンプリングし、透かし埋め込み部18に与える。
情報語取得部11は、透かし情報を構成するmビットの情報語を取得し、CRC符号化部12、ECC符号化部14、および符号語生成部17に与える。CRC符号化部12は、mビットの情報語に対するCRC符号語を生成し、生成されたcビットのCRC符号語をECC符号化部14と符号語生成部17に与える。ECC符号化部14は、mビットの情報語とcビットのCRC符号語とを誤り訂正符号の情報語とすることでパリティ検査語を生成し、生成されたpビットのパリティ検査語を符号語生成部17に与える。
符号語生成部17は、mビットの基本情報語とcビットのCRC符号語とpビットのパリティ検査語とから構成されるnビットの基本符号語を生成し、透かし埋め込み部18に与える。
透かし埋め込み部18は、サンプリング部22により与えられたサンプルにnビットの基本符号語をL/t回重複して埋め込み、透かし入りコンテンツを生成する。
サンプリング部22による原コンテンツのサンプル取得と、透かし埋め込み部18による基本符号語のサンプルへの埋め込みについて詳しく説明する。
nビットの基本符号語を透かしデータとして埋め込む対象として、原コンテンツのサンプルの集合のペア(V+,V−)を選択する。サンプルの集合V+,V−は次のようにそれぞれn個の要素をもつ。
V+={v+ 0,v+ 1,…,v+ n−1}
V−={v− 0,v− 1,…,v− n−1}
V−={v− 0,v− 1,…,v− n−1}
ここでサンプルの集合V+,V−の要素である各サブセットv+ i、v− iは、次のように原コンテンツのM個のサンプルデータからなる。
v+ i={v+ i,0,v+ i,1,…,v+ i,M−1}
v− i={v− i,0,v− i,1,…,v− i,M−1}
v− i={v− i,0,v− i,1,…,v− i,M−1}
原コンテンツのサンプルは、空間軸上のサンプル、時間軸上のサンプル、周波数軸上のサンプル、たとえばDCT変換、FFT変換、DWT変換などの処理後のサンプルなどである。
nビットの基本符号語のビット系列をX={x0,x1,…,xn}とする。いま、基本符号語の重複回数L/tを考えなければ、基本符号語の各ビットxiは、次式のように、原コンテンツの2M個のサンプル値v± i,jに重複して埋め込まれる。
w+ i,j=v+ i,j+α+ i,j・xi
w− i,j=v− i,j−α− i,j・xi
w− i,j=v− i,j−α− i,j・xi
ここで、w± i,jは、埋め込み後のサンプル値である。ただし、i=0,1,…,n−1、j=0,1,…,M−1である。基本符号語のビット0は−1に置き換え、各ビットxiの値は−1または1であるとする。α± iはスケーリングパラメータで、透かしビットxiをサンプルv± i,jに埋め込むときの強度を示す。
このように、nビットの基本符号語の各ビットは、2M個のサンプルに重複して埋め込まれるが、nビットの基本符号語は、透かしの埋め込み難易度に応じた重複回数L/tだけ重複させてコンテンツに埋め込む必要がある。そこで、サンプリング部22は、上記のサンプルの集合のペア(V+,V−)のサンプリングをL/t回繰り返して、L/t個のサンプルの集合のペア(V+ k,V− k)(k=0,1,…,L/t−1)を取得し、次式のように、L/t個のサンプリングの集合のペア(V+ k,V− k)にnビットの基本符号語を重複させて埋め込む。
w+ i,j,k=v+ i,j,k+α+ i,j,k・xi
w− i,j,k=v− i,j,k−α− i,j,k・xi
w− i,j,k=v− i,j,k−α− i,j,k・xi
上記の式により、各透かしビットxiは(L/t)・2M個のサンプルv± i,j,kに埋め込まれることになる。このようにして、nビットの基本符号語がL/t個のサンプルの集合のペア(V+ k,V− k)に埋め込まれ、透かし入りコンテンツが生成される。
図16は、透かし埋め込み装置120による透かしの埋め込み手順を説明するフローチャートである。
透かし情報量判定部10は、入力された原コンテンツに埋め込み可能な透かし情報の情報量(tmビット)を判定し、基本情報語の構成数tと基本符号語の重複回数L/tを求める(S30)。
取得した基本情報語の個数をカウントするための変数uに1を代入する(S32)。情報語取得部11は、透かし情報を構成するmビットの基本情報語を取得する(S34)。
CRC符号化部12は、mビットの基本情報語をCRC符号化し、cビットのCRC符号語を生成する(S36)。ECC符号化部14は、mビットの基本情報語とcビットのCRC符号語を合わせた(m+c)ビットの情報語をECC符号化し、pビットのパリティ検査語を生成する(S38)。これにより、CRC符号化部12によりmビット単位でCRC符号化され、ECC符号化部14により(m+c)ビット単位でECC符号化されたnビットの基本符号語が形成される。
サンプリング部22は、透かしビットを埋め込むための(L/t)・2Mn個のサンプル(V+ k,V− k)を原コンテンツから取得する(S40)。透かし埋め込み部18は、基本符号語のビット列を(L/t)・2Mn個のサンプル(V+ k,V− k)に透かしとして埋め込む(S42)。
変数uが基本情報語の構成数t以下である場合(S44のY)、変数uを1だけインクリメントし(S46)、ステップS34に戻る。変数uが基本情報語の構成数tより大きい場合(S44のN)、すべての基本情報語の符号化と埋め込みが終わったので、処理を終了する。
図17は、実施の形態3に係る透かし抽出装置220の構成図である。実施の形態1の透かし抽出装置200は、透かし入りコンテンツから連接符号語を抽出し、相関を評価することで繰り返し符号語の連接の区切りを判定した。実施の形態3の透かし抽出装置210は、透かし入りコンテンツの特徴量などにもとづいて、そのコンテンツに埋め込まれた透かし情報の情報量と透かし情報の符号構造を推定し、透かし入りコンテンツから取得したサンプルから透かし情報の符号を抽出する。その他の点については、実施の形態1の透かし抽出装置200と同様であるから、実施の形態1の透かし抽出装置200と共通する構成と動作については説明を適宜省略する。
透かし情報量判定部40は、透かし埋め込み装置120の透かし情報量判定部10と同じ構成のものであり、透かし入りコンテンツの特徴量などにもとづいて、そのコンテンツに対する透かしの埋め込み難易度を評価し、そのコンテンツに埋め込まれた透かし情報の情報量を判定し、その情報量をもつ透かし情報を構成する基本情報語の構成数tと各基本情報語の重複回数L/tを求める。
コンテンツの特徴量は、透かしが埋め込まれたり、コンテンツにノイズや変形が加えられても大きな変化は生じない。そのため、透かし入りコンテンツの特徴量にもとづいて、そのコンテンツに埋め込まれた透かし情報の情報量を推定することが可能である。
透かし情報量判定部40は、基本情報語の構成数tを情報語取得部50に与え、各基本情報語に対する基本符号語の重複回数L/tをサンプリング部41に与える。
サンプリング部41は、透かしビットを抽出するための(L/t)・2Mn個のサンプル(V+ k,V− k)を原コンテンツからサンプリングし、透かし抽出部42に与える。
透かし抽出部42は、サンプリング部41により取得されたサンプル(V+ k,V− k)からL/t個の重複した基本符号語を透かしとして抽出する。
透かし加算部44は、L/t個の重複した基本符号語を加算して基本符号語の各ビットの値を判定する。ECC復号部46は、透かし加算部44により判定された基本符号語に含まれるパリティ検査語によって、基本情報語とCRC符号語の誤りを訂正し、誤り訂正後の基本情報語とCRC符号語をCRC検査部48に与える。CRC検査部48は、CRC符号により、誤り訂正後の基本情報語に誤りを検査する。
サンプリング部41は、透かし情報を構成する基本情報語の構成数tに対応して、t回の原コンテンツのサンプリングを繰り返し、透かし抽出部42は、t回の基本符号語の抽出を行う。各基本符号語は、透かし加算部44によりL/t回加算され、ECC復号部46およびCRC検査部48により誤り訂正される。その結果、情報語取得部50は、t個の基本情報語を取得する。情報語取得部50は、t個の基本情報語から透かし情報を再構成して出力する。
図18は、透かし抽出装置220による透かしの抽出手順を説明するフローチャートである。
透かし情報量判定部40は、入力された透かし入りコンテンツに埋め込まれた透かし情報の情報量(tmビット)を判定し、基本情報語の構成数tと基本符号語の重複回数L/tを求める(S80)。
取得した基本情報語の個数をカウントするための変数uに1を代入する(S82)。サンプリング部41は、透かしビットを埋め込むための(L/t)・2Mn個のサンプル(V+ k,V− k)を原コンテンツから取得する(S84)。透かし抽出部42は、(L/t)・2Mn個のサンプル(V+ k,V− k)からnビットの基本符号語をL/t回重複して抽出する(S86)。
透かし加算部44は、抽出されたL/t個の基本符号語を加算し、加算された基本符号語にもとづいて各ビットの値を判定する(S88)。
基本符号語の各ビットxiの判定は次の検出値ziを計算することにより行われる。
zi=Σk=0 q−1Σj=0 m−1(w’+ i,j,k−w’− i,j,k)
zi=Σk=0 q−1Σj=0 m−1(w’+ i,j,k−w’− i,j,k)
ここで、qは透かしとして抽出された基本符号語の重複回数L/tであり、w’± i,j,kは、次式のように、透かし埋め込み後のサンプル値w± i,j,kにノイズn± i,j,kが加わったものである。
w’+ i,j,k=w+ i,j,k+n+ i,j,k=v+ i,j,k+α+ i,j,k・xi+n+ i,j,k
w’− i,j,k=w− i,j,k+n− i,j,k=v− i,j,k+α− i,j,k・xi+n− i,j,k
w’− i,j,k=w− i,j,k+n− i,j,k=v− i,j,k+α− i,j,k・xi+n− i,j,k
したがって、検出値ziは次式のように変形することができる。
zi=Σk=0 q−1Σj=0 M−1[(w+ i,j,k+n+ i,j,k)−(w− i,j+n− i,j,k)]
=Σk=0 q−1Σj=0 M−1[(v+ i,j,k−v− i,j,k)+(α+ i,j,k+α− i,j,k)・xi+(n+ i,j,k−n− i,j,k)]
zi=Σk=0 q−1Σj=0 M−1[(w+ i,j,k+n+ i,j,k)−(w− i,j+n− i,j,k)]
=Σk=0 q−1Σj=0 M−1[(v+ i,j,k−v− i,j,k)+(α+ i,j,k+α− i,j,k)・xi+(n+ i,j,k−n− i,j,k)]
ここでΣk=0 q−1Σj=0 m−1(v+ i,j−v− i,j)はmとqが十分に大きいとき、一般にガウス分布に従い、0に近づく。またノイズの項Σk=0 q−1Σj=0 m−1(n+ i,j−n− i,j)についても同様に0に近づく。したがって、ziはΣk=0 q−1Σj=0 m−1[(α+ i,j+α− i,j)・xi]の値で近似できる。(α+ i,j+α− i,j)は正であるから、透かしビットxiが1ならばziは正であり、透かしビットxiが−1ならばziは負である。したがってziの正負により透かしビットxiの値を判定することができる。
このように、基本符号語の重複回数qにより、検出される透かしの振幅がq倍になり、透かしビットの検出値においてノイズ成分が0に近づき、透かしビットの検出精度が高まる。
ECC復号部46は、加算された基本符号語をECC復号し(S90)、CRC検査部48は、さらにCRC検査する(S92)。これにより、透かし情報を構成する1つの基本情報語が復号される。
変数uが透かしとして埋め込まれた基本符号語の総数L以下である場合(S94のY)、変数uを基本符号語の重複回数L/tだけインクリメントし(S96)、ステップS84に戻る。変数uが基本符号語の総数Lより大きい場合(S94のN)、情報語取得部50は、復号されたt個の基本情報語から透かし情報を生成する(S98)。
以上述べた各実施の形態の透かし埋め込み装置によれば、コンテンツの特徴に合わせてコンテンツに埋め込む透かし情報の情報量を調整することができる。コンテンツに埋め込まれる透かしのデータ長は一定という条件のもと、透かし情報の情報量を変えたことに対応して、透かし情報を構成する基本情報語の重複回数を変える。コンテンツに埋め込む透かし情報の情報量が変わっても、透かし情報を構成する基本情報語のビット長は変わらないため、透かし埋め込み装置は、常に同一の透かし埋め込み方式により透かし情報を埋め込むことができ、また、透かし抽出装置は、常に同一の透かし抽出方式により透かし情報を抽出することができる。これにより、電子透かしシステムの設計と運用が容易になる。
特に、コンテンツが動画の場合は、フレーム単位で画像の特徴が変化し、透かしの埋め込み難易度がフレーム毎に異なる。透かしの埋め込み易いフレームには、透かしの情報量を増やして透かしを埋め込み、透かしの埋め込みにくいフレームには、透かしの情報量を減らして透かしを埋め込むことが可能になる。動画を構成するフレーム単位で透かしの情報量を可変にすることで、動画全体に埋め込み可能な透かしの情報量を最大化することができる。
以上、本発明を実施の形態をもとに説明した。実施の形態は例示であり、それらの各構成要素や各処理プロセスの組み合わせにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
10 透かし情報量判定部、 11 情報語取得部、 12 CRC符号化部、 14 ECC符号化部、 16 繰り返し符号生成部、 17 符号語生成部、 18 透かし埋め込み部、 20 スクランブル部、 22 サンプリング部、 40 透かし情報量判定部、 41 サンプリング部、 42 透かし抽出部、 43 相関評価部、 44 透かし加算部、 46 ECC復号部、 48 CRC検査部、 50 情報語取得部、 100、110、120 透かし埋め込み装置、 200、220 透かし抽出装置。
Claims (12)
- 原コンテンツに埋め込み可能な透かし情報の情報量を判定し、前記情報量をもつ前記透かし情報を構成する基本単位となる情報語の構成数を求める透かし情報量判定部と、
前記透かし情報を構成する各情報語を誤り訂正符号化した基本符号語を生成する符号化部と、
前記基本符号語を所定の繰り返し回数だけ繰り返して連接した繰り返し符号語を生成する繰り返し符号生成部と、
各情報語に対して生成された前記繰り返し符号語を前記情報語の構成数だけ連接した連接符号語を透かしとして原コンテンツに埋め込む透かし埋め込み部とを含むことを特徴とする透かし埋め込み装置。 - 前記所定の繰り返し回数は、原コンテンツに埋め込まれる前記連接符号語の符号長が一定の条件のもと、前記連接符号語に含まれる前記基本符号語の総数を前記情報語の構成数で割った値に設定されることを特徴とする請求項1に記載の透かし埋め込み装置。
- 前記透かし情報を構成する基本単位である前記情報語に対して識別情報を畳み込むことにより、前記情報語をスクランブルするスクランブル部をさらに含み、
前記符号化部は、前記スクランブル部によりスクランブルされた前記情報語を誤り訂正符号化することにより前記基本符号語を生成することを特徴とする請求項1または2に記載の透かし埋め込み装置。 - 原コンテンツに埋め込むべき透かし情報の情報量を判定し、前記情報量をもつ前記透かし情報を構成する基本単位となる情報語の構成数を求める透かし情報量判定部と、
前記透かし情報を構成する各情報語を誤り訂正符号化した基本符号語を生成する符号化部と、
前記基本符号語を所定の重複回数だけ重複させて透かしとして埋め込むための前記原コンテンツのサンプルを取得するサンプリング部と、
前記基本符号語を透かしとして前記サンプルに埋め込む透かし埋め込み部とを含み、
前記サンプリング部は、前記情報語の構成数に対応して前記サンプルの取得を繰り返し、前記透かし埋め込み部は、各情報語に対して生成された前記基本符号語を各情報語に対応する前記サンプルに埋め込むことを特徴とする透かし埋め込み装置。 - 前記所定の重複回数は、前記原コンテンツに埋め込まれる符号量一定の条件のもと、前記原コンテンツに埋め込まれる前記基本符号語の総数を前記情報語の構成数で割った値に設定されることを特徴とする請求項4に記載の透かし埋め込み装置。
- 前記透かし情報量判定部は、前記原コンテンツに対する透かしの埋め込み難易度に応じて、前記原コンテンツに埋め込み可能な前記透かし情報の情報量を判定することを特徴とする請求項1または4に記載の透かし埋め込み装置。
- 基本符号語が所定の繰り返し回数だけ繰り返されて連接された繰り返し符号語が複数種類連接されてなる連接符号語を、透かし入りコンテンツから透かしとして抽出する透かし抽出部と、
抽出された前記連接符号語を構成する互いに隣接する前記基本符号語の間で相関を計算することにより、複数種類の前記繰り返し符号語の連接の区切りを判定する相関評価部と、
前記相関評価部により判定された前記連接の区切りにしたがって、前記連接符号語から前記繰り返し符号語を取り出し、その繰り返し符号語に含まれる前記所定の繰り返し回数分の前記基本符号語を加算する透かし加算部と、
加算された前記基本符号語を誤り訂正することにより、前記透かし情報を構成する基本単位となる情報語を復号する復号部とを含むことを特徴とする透かし抽出装置。 - 透かし入りコンテンツに埋め込まれた透かし情報の情報量を判定し、前記情報量をもつ前記透かし情報を構成する基本単位となる情報語の構成数を求める透かし情報量判定部と、
前記透かし情報を構成する各情報語を誤り訂正符号化した基本符号語を所定の重複回数だけ重複して透かしとして抽出するための前記透かし入りコンテンツのサンプルを取得するサンプリング部と、
前記サンプルから前記基本符号語を前記所定の重複回数だけ重複して抽出する透かし抽出部とを含み、
前記サンプリング部は、前記情報語の構成数に対応して前記サンプルの取得を繰り返し、前記透かし抽出部は、各情報語に対する前記基本符号語を各情報語に対応する前記サンプルから抽出することを特徴とする透かし抽出装置。 - 原コンテンツに埋め込み可能な透かし情報の情報量を判定し、前記情報量をもつ前記透かし情報を構成する基本単位となる情報語の構成数を求めるステップと、
前記透かし情報を構成する各情報語を誤り訂正符号化した基本符号語を生成するステップと、
前記基本符号語を所定の繰り返し回数だけ繰り返して連接した繰り返し符号語を生成するステップと、
各情報語に対して生成された前記繰り返し符号語を前記情報語の構成数だけ連接した連接符号語を透かしとして原コンテンツに埋め込むステップとを含むことを特徴とする透かし埋め込み方法。 - 原コンテンツに埋め込むべき透かし情報の情報量を判定し、前記情報量をもつ前記透かし情報を構成する基本単位となる情報語の構成数を求めるステップと、
前記透かし情報を構成する各情報語を誤り訂正符号化した基本符号語を生成するステップと、
前記基本符号語を所定の重複回数だけ重複させて透かしとして前記原コンテンツのサンプルに埋め込むステップとを含み、
前記情報語の構成数に対応して前記サンプルの取得を繰り返し、各情報語に対して生成された前記基本符号語を各情報語に対応する前記サンプルに埋め込むことを特徴とする透かし埋め込み方法。 - 基本符号語が所定の繰り返し回数だけ繰り返されて連接された繰り返し符号語が複数種類連接されてなる連接符号語を、透かし入りコンテンツから透かしとして抽出するステップと、
抽出された前記連接符号語を構成する互いに隣接する前記基本符号語の間で相関を計算することにより、複数種類の前記繰り返し符号語の連接の区切りを判定するステップと、
判定された前記連接の区切りにしたがって、前記連接符号語から前記繰り返し符号語を取り出し、その繰り返し符号語に含まれる前記所定の繰り返し回数分の前記基本符号語を加算するステップと、
加算された前記基本符号語を誤り訂正することにより、前記透かし情報を構成する基本単位となる情報語を復号するステップとを含むことを特徴とする透かし抽出方法。 - 透かし入りコンテンツに埋め込まれた透かし情報の情報量を判定し、前記情報量をもつ前記透かし情報を構成する基本単位となる情報語の構成数を求めるステップと、
前記透かし情報を構成する各情報語を誤り訂正符号化した基本符号語を所定の重複回数だけ重複して透かしとして前記透かし入りコンテンツのサンプルから抽出するステップとを含み、
前記情報語の構成数に対応して前記サンプルの取得を繰り返し、各情報語に対する前記基本符号語を各情報語に対応する前記サンプルから抽出することを特徴とする透かし抽出方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005131543A JP2006311225A (ja) | 2005-04-28 | 2005-04-28 | 透かし埋め込み装置および方法、ならびに透かし抽出装置および方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005131543A JP2006311225A (ja) | 2005-04-28 | 2005-04-28 | 透かし埋め込み装置および方法、ならびに透かし抽出装置および方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2006311225A true JP2006311225A (ja) | 2006-11-09 |
Family
ID=37477586
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005131543A Pending JP2006311225A (ja) | 2005-04-28 | 2005-04-28 | 透かし埋め込み装置および方法、ならびに透かし抽出装置および方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2006311225A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011101120A (ja) * | 2009-11-04 | 2011-05-19 | Ricoh Co Ltd | 画像処理装置、画像処理方法および画像処理プログラム |
JP2013207410A (ja) * | 2012-03-27 | 2013-10-07 | Fujitsu Ltd | プログラム、透かし埋め込み装置及び透かし埋め込み方法 |
-
2005
- 2005-04-28 JP JP2005131543A patent/JP2006311225A/ja active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011101120A (ja) * | 2009-11-04 | 2011-05-19 | Ricoh Co Ltd | 画像処理装置、画像処理方法および画像処理プログラム |
JP2013207410A (ja) * | 2012-03-27 | 2013-10-07 | Fujitsu Ltd | プログラム、透かし埋め込み装置及び透かし埋め込み方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4155956B2 (ja) | 電子透かし埋め込み装置と方法ならびに電子透かし抽出装置と方法 | |
JP3960959B2 (ja) | 電子透かし埋め込み装置と方法ならびに電子透かし抽出装置と方法 | |
US7487356B2 (en) | Digital watermarking system using scrambling method | |
JP4266677B2 (ja) | 電子透かし埋め込み方法およびその方法を利用可能な符号化装置と復号装置 | |
JP3707556B2 (ja) | 所望の電子透かしをカバーワークの中に埋め込む方法、符号化する方法、埋め込む装置および記録媒体 | |
US7159118B2 (en) | Methods and apparatus for embedding and recovering watermarking information based on host-matching codes | |
Yang et al. | A contrast-sensitive reversible visible image watermarking technique | |
Goléa et al. | ROI-based fragile watermarking for medical image tamper detection | |
JP4024153B2 (ja) | 電子透かし埋め込み方法およびその方法を利用可能な符号化装置と復号装置 | |
Lefèvre et al. | Efficient image tampering localization using semi-fragile watermarking and error control codes | |
Kar et al. | A multi-threshold based audio steganography scheme | |
Artiles et al. | Robust image watermarking algorithm using chaotic sequences | |
JP2002531977A (ja) | 電子透かし入れのための異なる特性を有する複数メッセージの組み合わせ | |
JP2006311225A (ja) | 透かし埋め込み装置および方法、ならびに透かし抽出装置および方法 | |
CN117041442A (zh) | 一种基于自适应stc-ecc策略的图像鲁棒隐写方法 | |
Li et al. | AMBTC based high payload data hiding with modulo-2 operation and Hamming code | |
Berger et al. | Improving the watermarking process with usage of block error-correcting codes | |
Rohith et al. | A secure and robust digital image watermarking scheme using repetition codes for copyright protection | |
Rodrigues et al. | Reversible image steganography using cyclic codes and dynamic cover pixel selection | |
JP2013058965A (ja) | デジタルデータの情報埋め込み装置及び埋込み情報検出装置 | |
Chang et al. | High-Capacity Reversible Data Hiding Method for JPEG Images. | |
JP4267038B2 (ja) | 電子透かし埋め込み装置ならびに電子透かし抽出装置 | |
Lefèvre et al. | Codes and Watermarks | |
Zhang et al. | Digital image authentication based on error-correction codes | |
Chang et al. | VQ‐Based Image Watermarking Using Anti‐Gray Coding |