説明

キャリア信号に埋め込まれた電子透かし情報を抽出する抽出装置、およびキャリア信号に電子透かし情報を埋め込む埋め込み装置

【課題】キャリア信号に電子透かし情報が一定周期で繰り返し埋め込まれている場合に、少ない演算量で各電子透かし情報の埋め込み位置を特定し、その抽出を迅速に行う。
【解決手段】
上記キャリア信号の後方に向けて電子透かし情報の埋め込み位置の探索を開始した場合に最初に見つかるものについては、当該キャリア信号を所定サンプル数ずつ区切って得られる各フレームについて、同期シンボルとの相関度を算出し、その算出結果に基づいてその概略的な埋め込み位置を求め、その周辺を詳細に解析して埋め込み位置を特定する。一方、その他の電子透かし情報については、その1つ手前の電子透かし情報の詳細な埋め込み位置から上記一定周期に応じたサンプル数だけ後方の位置周辺を詳細に解析してその埋め込み位置を特定する。

【発明の詳細な説明】
【技術分野】
【0001】
この発明は、電子透かし情報の埋め込み伝送技術に関し、特に電子透かし情報の埋め込み位置の特定および電子透かし情報の抽出を迅速に行う技術に関する。
【背景技術】
【0002】
近年では、楽曲や人の話し声を表す音声信号や映像を表す映像信号などのキャリア信号にその出所等を示す電子透かし情報を埋め込んで不正利用(著作権に抵触する利用や犯罪行為などへの利用)に備えることが提案されている。キャリア信号への電子透かし情報の埋め込み技術の一例としては、特許文献1〜3に開示されたものが挙げられる。特許文献1に開示された技術は、音声合成技術により合成された音声信号をキャリア信号とし、その音声素片毎に、電子透かし情報として埋め込む情報に基づいて振幅、位相あるいはピッチを変調することにより電子透かし情報の埋め込みを行う技術である。特許文献2に開示された技術は、電子透かし情報の埋め込み先となるデジタルデータ(キャリア信号にA/D変換を施して得られるサンプリングデータ列)にフーリエ変換を施し、フーリエ変換により得られた各周波数成分を各周波数成分が属する帯域と埋め込み対象である付加情報(電子透かし情報)のビットとに基づいて変調(振幅変調、位相変調)するものである。そして、特許文献3には、電子透かし情報を示す基本数列をキャリア信号に畳み込んで畳み込み数列を生成し、この畳み込み数列をキャリア信号と混合する技術が開示されている。また、近年では、電子透かし情報の頑健性を高めるために、電子透かし情報として埋め込む情報を構成する各シンボルに対応する擬似雑音信号をキャリア信号の特定の周波数帯域に重畳させるなどのスペクトル拡散方式の埋め込み技術も提案されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2003−295878号公報
【特許文献2】特許第3659321号
【特許文献3】特表2004−526207号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
ところで、電子透かし情報を埋め込まれたキャリア信号の受信側の装置において、その電子透かし情報の抽出を行う際には、キャリア信号における電子透かし情報の埋め込み区間(固定長の電子透かし情報であれば先頭シンボルの埋め込み位置)が特定されていなければならない。そこで、電子透かし情報として伝送する情報のシンボル列をキャリア信号に埋め込むと共に、そのシンボル列が埋め込まれている区間を明示するための所定の同期シンボル列(抽出側において内容が予め判っているシンボル列)をキャリア信号に埋め込んで伝送することが提案されている。このような態様においては、キャリア信号の受信側では、受信したキャリア信号を先頭から順次小刻みに解析することで、同期シンボル列の所在(すなわち、電子透かし情報として伝送される情報のシンボル列の埋め込み区間)を求めることができる。しかし、このような態様では、キャリア信号全体をその先頭から小刻みに解析する必要があるため、電子透かし情報の抽出に要する演算量は多大なものとなり、電子透かし情報の抽出を迅速に行うことが難しい、という問題があった。特に、キャリア信号に複数の電子透かし情報が埋め込まれる場合には、この問題はさらに深刻になる。
【0005】
この発明は、以上説明した事情に鑑みてなされたものであり、キャリア信号に電子透かし情報が一定周期で繰り返し埋め込まれている場合に、少ない演算量で各電子透かし情報の埋め込み位置を特定し、その抽出を迅速に行うことを可能にする技術を提供することを目的とする。
【課題を解決するための手段】
【0006】
上記課題を解決するために、本発明は、少なくとも1つの同期シンボルと複数のデータシンボルとで構成された電子透かし情報が一定周期で繰り返し埋め込まれたキャリア信号のサンプル列を受け取り、前記サンプル列をフレームに区切りながらフレーム毎に前記同期シンボルとの相関度を算出し、前記サンプル列の後方に向けて前記電子透かし情報の埋め込み位置の探索を行った場合に最初に見つかる電子透かし情報の同期シンボルの概略的な埋め込み位置を各フレームについて算出される前記相関度に基づいて特定する概略探索処理と、前記最初に見つかる電子透かし情報については、前記概略探索処理により特定された概略的な埋め込み位置周辺のサンプル列から切り出し位置を小刻みにシフトさせつつ切り出した各フレームについて前記同期シンボルとの相関度を算出しその算出結果に基づいて同期シンボルの埋め込み位置を特定する一方、その他の電子透かし情報については、1つ手前の電子透かし情報について特定した同期シンボルの埋め込み位置から前記一定周期に応じたサンプル数分だけ後方の位置周辺のサンプル列から切り出し位置を小刻みにシフトさせつつ切り出した各フレームについて前記同期シンボルとの相関度を算出しその算出結果に基づいてその埋め込み位置を特定する詳細探索処理と、を実行する探索手段と、前記探索手段により電子透かし情報毎に特定された同期シンボルの埋め込み位置の各々に関して、当該埋め込み位置以降のサンプル列をフレームに区切りながらフレーム毎に前記データシンボルとの相関度を算出し、その算出結果に基づいて各フレームに含まれているデータシンボルを抽出する抽出手段とを有することを特徴とする電子透かし情報の抽出装置、を提供する。
【0007】
例えば、キャリア信号への電子透かし情報の埋め込みを、各シンボルに対応する擬似雑音信号の加算により行う場合には、同期シンボルの埋め込み位置を特定するための相関度として当該同期シンボルに対応する擬似雑音信号のスペクトラムと各フレームのスペクトラムとから算出される相互相関係数を用いるようにすれば良く、データシンボルの抽出の際に利用する相関度としては当該データシンボルに対応する擬似雑音信号のスペクトラムと各フレームのスペクトラムとから算出される相互相関係数を用いるようにすれば良い。なお、同期シンボルの埋め込み位置を精度良く特定し、かつデータシンボルの抽出を精度良く行えるようにするためには、同期シンボルに対応する擬似雑音信号とデータシンボルに対応する擬似雑音信号とを互いに無相関、或いは相関の低いものとしておけば良い。
【0008】
ここで注目すべき点は、本発明の抽出装置の探索手段は、キャリア信号に周期的に埋め込まれている複数の電子透かし情報のうち、その探索を開始してから最初に見つかるものについては概略探索処理および詳細探索処理を行ってその埋め込み位置を特定する一方、その他の電子透かし情報については詳細探索処理のみを行ってその埋め込み位置を特定するという点である。これは、上記キャリア信号への電子透かし情報の埋め込みは一定周期で行われているため、1つ手前の電子透かし情報の埋め込み位置が特定されれば、後続する電子透かし情報の概略的な埋め込み位置を計算で算出することができるからである。つまり、本発明の抽出装置によれば、複数の電子透かし情報の全てについてその概略的な埋め込み位置を概略探索処理を行って特定する場合に比較して、より少ない演算量で各電子透かし情報の同期シンボルの概略的な埋め込み位置を特定することができる。加えて、本発明では、各電子透かし情報の埋め込み位置を特定するための詳細探索を行う範囲を概略的な埋め込み位置周辺に限定しているため、キャリア信号の全体を対象として詳細探索(切り出し位置を小刻みにシフトさせつつフレームを切り出し、各フレームについて算出される相関度から埋め込み位置を特定する処理)を行う態様に比較してより少ない演算量で各電子透かし情報の埋め込み位置を特定し、迅速にその抽出を行うことが可能になる。なお、本発明の別の態様としては、上記各手段の処理をコンピュータに実行させるプログラムを提供する態様も考えられる。そして、このようなプログラムの具体的な提供態様としては、例えばCD−ROM(Compact Disk-Read Only Memory)やUSB(Universal
Serial Bus)メモリスティック(登録商標)などのコンピュータ読み取り可能な記録媒体に書き込んで配布する態様や、インターネットなどの電気通信回線経由のダウンロードにより配布する態様が考えられる。
【0009】
上記課題を解決するために本発明は、電子透かし情報を構成するシンボル列の埋め込み先となるキャリア信号のサンプル列にフーリエ変換を施し、各周波数成分の強度を示すスペクトラム列をフレーム毎に生成する時間/周波数変換部と、前記時間/周波数変換部により生成されたスペクトラム列の各々について、電子透かし情報の埋め込み先となる所定の周波数帯域の強度を引き下げた後に逆フーリエ変換を施してキャリア信号のサンプル列に戻す時間/周波数逆変換部と、電子透かし情報を構成する各シンボルを示す擬似雑音信号であって、前記所定の周波数帯域に属する周波数成分からなる擬似雑音信号を生成し、当該擬似雑音信号のスペクトラムエンベロープが所定の形状となるように加工した後に、当該加工後の擬似雑音信号を前記時間/周波数逆変換部により生成されたキャリア信号に加算して出力する電子透かし情報埋め込み部と、を備え、前記シンボル列は、少なくとも1つの同期シンボルと複数のデータシンボルとを有し、前記電子透かし情報埋め込み部は、前記キャリア信号に一定周期で繰り返し電子透かし情報を埋め込むとともに、複数系統の前記擬似雑音信号を生成し、前記同期シンボルと前記データシンボルとで互いに異なる系統の擬似雑音信号を使用してその埋め込みを行うことを特徴とするキャリア信号に電子透かし情報を埋め込む埋め込み装置、を提供する。なお、本発明のさらに別の態様としては、上記各部の処理をコンピュータに実行させるプログラムを提供する態様も考えられる。このような埋め込み装置やプログラムによれば、上記抽出装置による電子透かし情報の抽出に適した態様でキャリア信号に電子透かし情報を埋め込むことが可能になる。
【0010】
より好ましい態様においては、上記電子透かし情報埋め込み部は、前記複数の電子透かし情報の各々を構成するシンボル列において互いに隣り合うデータシンボルに対して互いに異なる系統の擬似雑音信号を使用して前記キャリア信号への埋め込みを行うことを特徴とする。詳細については後述するが、このような態様によれば、1系統の擬似雑音信号を使用して各データシンボルの埋め込みを行う場合に比較して、電子透かし情報を埋め込まれた音声信号をそのまま音として再生した場合に、擬似雑音信号に起因して現れる繰り返し感(周期的な雑音が聴こえるような感じ)を和らげることができる、と期待される。
【図面の簡単な説明】
【0011】
【図1】この発明の一実施形態の電子透かし情報の埋め込み装置100を含む音声合成装置の構成を示すブロック図である。
【図2】本実施形態においてキャリア信号に埋め込まれる電子透かし情報を説明するための図である。
【図3】擬似雑音生成部110が生成する複数系統の擬似雑音を説明するための図である。
【図4】同埋め込み装置100の各部の処理内容を示す図である。
【図5】本実施形態における電子透かし情報の埋め込みを説明するための図である。
【図6】同実施形態の電子透かし情報の抽出装置200の構成を示すブロック図である。
【図7】同抽出装置200が実行する概略探索フェーズの処理および詳細探索フェーズの処理の処理内容を説明するための図である。
【発明を実施するための形態】
【0012】
<A:実施形態>
図1は、本発明の一実施形態の埋め込み装置100を含む音声合成装置の構成を示すブロック図である。この音声合成装置は、音声合成部10と埋め込み装置100とにより構成されている。音声合成部10は、楽曲の楽譜を表わすスコアデータなどのテキスト情報に基づいてその楽曲の歌唱音声或いは楽器演奏音を表わす音声信号を合成する装置である。以下では、音声合成部10により合成される音声信号のことを「合成音声信号」と呼ぶ。この埋め込み装置100は、音声合成部10が出力する合成音声信号を用いて、電子透かし情報が埋め込まれた音声信号を合成し、この合成した音声信号を元の合成音声信号に加算し、電子透かし情報を埋め込んだ合成音声信号(以下、埋め込み済み合成音声信号)として出力する装置である。なお、音声合成装置またはその一部である埋め込み装置100は、埋め込み済み合成音声信号を生成する処理または音声信号に電子透かし情報を埋め込む処理を実行する専用のハードウェアとして実現してもよいし、そのような処理をコンピュータに実行させるコンピュータプログラムとして実現してもよい。このように、本実施形態では、テキスト情報に基づく音声合成によって生成される合成音声信号が電子透かし情報の埋め込み先のキャリア信号となるのであるが、楽器の演奏音や歌唱音声、人の話し声などの発話音声を録音して得られる音声信号をキャリア信号としても良いことは勿論である。
【0013】
埋め込み装置100は、図1に示すように、擬似雑音生成部110、埋め込み雑音合成部120、加算器130、信号加工部140、および時間/周波数逆変換部150により構成されている。擬似雑音生成部110は、2値のシンボル(すなわち、bit)の各々を示すM系列、Gold系列等の一定符号長の擬似雑音信号を生成する機能を有している。本実施形態の擬似雑音生成部110は、上記擬似雑音信号として、キャリア信号の周波数帯域よりも狭い所定の周波数帯域に属する周波数成分のみを含み、かつ平坦な振幅スペクトラムを有する信号を生成する。前述したように、本実施形態のキャリア信号は音声合成部10により生成される合成音声信号であり、その周波数帯域は音楽帯域(80Hzから20kHzの周波数帯域)に略等しい。本実施形態では、音声合成部10により生成される合成音声信号の周波数帯域のうちの13kHzから16kHzの周波数帯域が上記所定の周波数帯域として用いられている。詳細については後述するが、本実施形態では、キャリア信号の所定の周波数帯域に電子透かし情報を構成する各シンボルに対応する擬似雑音信号を加算することで、当該キャリア信号への電子透かし情報の埋め込みが実現される。
【0014】
ここで、電子透かし情報の埋め込み先の周波数帯域として13〜16kHzの周波数帯域を用いた理由は、次の通りである。埋め込み装置100により生成された埋め込み済み合成音声信号は、再生側の装置へと伝送され、当該装置においてその再生が行われるのであるが、その伝送過程において、伝送データ量を削減するための非可逆圧縮を施される場合がある。このような非可逆圧縮では、聴感に大きな影響を与えない高域(例えば、上記所定の周波数帯域の上限である16kHzよりも高い周波数帯域)の信号成分は大幅に間引かれる。このため、上記所定の周波数帯域よりも上の周波数帯域に電子透かし情報を埋め込むと、上記非可逆圧縮を施された場合にその電子透かし情報が消失してしまう虞がある。一方、上記所定の周波数帯域よりも下の周波数帯域に電子透かし情報を埋め込むと、埋め込み済み合成音声信号を音として再生した場合に、擬似雑音信号に起因した雑音が顕著に現れる、といった不具合がある。これらの不具合を避けるため、本実施形態では、電子透かし情報の埋め込み先の周波数帯域として13〜16kHzの周波数帯域を用いたのである。なお、本実施形態では電子透かし情報の埋め込み先の周波数帯域として13〜16kHzの周波数帯域を用いたが、以上に説明した不具合の発生を避けることができるのであれば、例えば11〜16kHzなどの周波数帯域であっても良い。
【0015】
図1の擬似雑音生成部110は、埋め込み装置100が合成音声信号への電子透かし情報の埋め込みを行う場合に、埋め込み対象である電子透かし情報を示すシンボル列を事前に取得し、同シンボル列を構成する各シンボルに対応した擬似雑音信号を順次生成する。従来、音声信号への電子透かし情報の埋め込みは、その音声信号の不正利用に対処する目的で行われることが多かったのであるが、本実施形態では、合成音声信号と他のコンテンツ(映像信号や他の音声信号)の同期再生や、電子楽器の同期演奏を実現する目的でその埋め込みが行われる。このような目的に適するように、本実施形態では各々内容の異なる複数の電子透かし情報がキャリア信号に埋め込まれる。
【0016】
図2は、本実施形態におけるキャリア信号への電子透かし情報の埋め込み態様を示す図である。本実施形態においてキャリア信号に埋め込まれる複数の電子透かし情報の各々を示す各シンボル列は同一の長さ(153シンボル)を有している。図2に示すように1つの電子透かし情報を構成する各シンボルは、連続する153個のフレーム(1フレーム=256サンプル)に亘って1フレームあたり1個ずつ埋め込まれる。以下、1個分の電子透かし情報が埋め込まれるキャリア信号の時間軸方向の長さ(フレーム数)を「1透かし長」と呼ぶ。そして上記複数の電子透かし情報の各々は、一定周期(本実施形態では1透かし長)で繰り返しキャリア信号に埋め込まれる。なお、本実施形態では、キャリア信号への電子透かし情報の埋め込み周期を1透かし長としたが、電子透かし情報の埋め込み周期を1透かし長よりも長くしても勿論良い。
【0017】
本実施形態において1つの電子透かし情報を構成する153個のシンボルには、1個の同期シンボルと、152個のデータシンボルとが含まれている。同期シンボルは、電子透かし情報の埋め込み位置を明示するためのシンボルである。本実施形態では同期シンボルは上記153個のシンボルの先頭に位置し(図2参照)、そのシンボル値は“0”に固定されている。一方、上記152個のデータシンボルからなるデータシンボル列は、図2に示すように、「識別子」と「タイムコード」とを表わす。「識別子」は、本実施形態においてキャリア信号に埋め込まれる各電子透かし情報に共通の情報であり、例えば、上記合成音声信号を電子データとして伝送する際に付与されるファイル名称など、そのキャリア信号を一意に識別するための情報である。一方、タイムコードは、埋め込み済み合成音声信号において電子透かし情報が埋め込まれている時間軸上の位置に応じた情報(すなわち、電子透かし情報毎に異なる情報)である。このタイムコードは、埋め込み済み合成音声信号と同期再生するべき映像の再生タイミングの制御や、当該合成音声信号の再生と同期させて電子楽器の演奏制御を行う際の演奏タイミングの制御等に利用される。なお、本実施形態では、各電子透かし情報のデータシンボル列を152個のデータシンボルで構成したが、より少ない数のデータシンボルで構成しても良く、逆に153個以上のデータシンボルで構成しても良い。
【0018】
擬似雑音生成部110には、キャリア信号に順次埋め込むべき複数の電子透かし情報の各々を表わすシンボル列が1透かし長に応じた時間間隔で順次与えられ、擬似雑音生成部110は、それらシンボル列を構成する各シンボルに対応する擬似雑音信号をその埋め込み先のフレームの切り出しに同期させて生成し、出力する。図3は擬似雑音生成部110による擬似雑音信号の生成態様を説明するための図である。図3(A)に示すように、擬似雑音生成部110は、複数系統(本実施形態では、Aからアルファベット順にQまでの17系統)の擬似雑音信号を生成する機能を有している。図3(A)に示すように、A系統はシンボル“0”に対応する擬似雑音信号のみを有しており、このA系統の擬似雑音信号は同期シンボルの埋め込みに利用される。一方、BからQまでの各系統は、図3(A)に示すように、シンボル“0”に対応する擬似雑音信号とシンボル“1”に対応する擬似雑音信号とを含んでいる。これらBからQまでの16系統の各々は、データシンボルの埋め込みに利用される。これらの擬似雑音信号は何れも、+1または−1の信号の羅列であって、+1または−1の信号の表れ方が互いに異なっており、互いに無相関或いは相関の極めて低い(相互相関係数の値が極めて小さい)ものとなっている。
【0019】
これら複数系統の擬似雑音信号の具体的な生成態様としては種々のものが考えられる。例えば、各系統のシンボル“0”に対応する擬似雑音信号として互いに無相関のまたは相関が極めて低い別個の擬似雑音信号を擬似雑音生成部110に生成させ、さらにBからQの各系統においては、シンボル“1”に対応する擬似雑音信号としてシンボル“0”に対応する擬似雑音信号の何れとも無相関の、または相関が極めて低いものであって、さらに、シンボル“1”に対応する他の系統の擬似雑音信号とも無相関の、または相関が極めて低いものを各々別個に擬似雑音生成部110に生成させる態様が考えられる。また、他の好ましい態様としては、各系統のシンボル“0”に対応する擬似雑音信号として互いに無相関のまたは相関が極めて低い別個の擬似雑音信号を擬似雑音生成部110に生成させ、BからQの各系統においては、その系統におけるシンボル“0”に対応する擬似雑音信号を極性反転したものを当該系統にてシンボル“1”に対応する擬似雑音信号として擬似雑音生成部110に生成させる態様も考えられる。後者の態様においては、BからQの各系統のシンボル“0”に対応する擬似雑音信号とその系統のシンボル“1”に対応する擬似雑音信号とは負の相関を持つことになる。なお、電子透かし情報の埋め込み伝送の信頼性を高めるために、電子透かし情報を示すシンボル列を誤り訂正符号化し、この電子透かし情報の誤り訂正符号列を擬似雑音生成部110に与えるようにしてもよい。また、電子透かし情報の秘匿性を高めるために、電子透かし情報に含まれるデータシンボル列を暗号化して擬似雑音生成部110に与えるようにしてもよい。
【0020】
前述したように、A系統の擬似雑音信号は同期シンボルの埋め込みに使用され、BからQまでの各系統の擬似雑音信号はデータシンボルの埋め込みに使用される。このように、同期シンボルの埋め込みに使用する擬似雑音信号の系統と、データシンボルの埋め込みに使用する擬似雑音信号の系統とが重複しないようにしたのは、電子透かし情報の抽出を行う装置(本実施形態では、後述の抽出装置200)において、効率良くかつ正確に同期シンボル(或いはデータシンボル)の抽出を行えるようにするためである。この点については後に詳細に説明する。また、本実施形態では、キャリア信号へのデータシンボル列の埋め込みを行う際には、上記BからQまでの各系統を巡回的に使用してその埋め込みが行われる。より詳細に説明すると、擬似雑音生成部110は、図3(B)に示すように、同期シンボルの埋め込み先となるフレームの切り出しに同期させてA系統のシンボル“0”に対応する擬似雑音信号を生成して出力する。以後、擬似雑音生成部110は、1番目のデータシンボルの埋め込み先となるフレームの切り出しに同期させてB系統の擬似雑音信号を、2番目のデータシンボルの埋め込み先となるフレームの切り出しに同期させてC系統の擬似雑音信号を生成して出力する。そして、擬似雑音生成部110は、16番目のデータシンボルの埋め込み先となるフレームの切り出しに同期させてQ系統の擬似雑音信号を生成して出力し、17番目のデータシンボルの埋め込み先となるフレームの切り出しの際にはB系統の擬似雑音信号を生成して出力するのである。
【0021】
つまり、本実施形態では、互いに隣接するデータシンボル間で異なる系統の擬似雑音信号を用いてその埋め込みが行われるのである。このようにした理由は以下の通りである。仮に、1系統の擬似雑音信号のみを用いてデータシンボル列の埋め込みを行うとすると、そのデータシンボル列において同一シンボルが連続して現れた場合に同一の擬似雑音信号が連続してキャリア信号に加算されることになる。このように、同一の擬似雑音信号が連続してキャリア信号に加算されると、埋め込み済み合成音声信号を音として再生した場合に雑音の繰り返し感が際立つ虞がある。これに対して、本実施形態のように、隣接するデータシンボル間で異なる系統の擬似雑音信号を用いてその埋め込みを行うようにすれば、データシンボル列において同一のシンボルが連続して現れるような場合であっても、上記のような雑音の繰り返し感が際立つことはない。何故ならば、同一のシンボル値(例えば、“1”)を表わす擬似雑音信号であっても系統の異なるものであれば互いに無相関の(或いは相関の低い)ものであり、その聴感も自ずから異なったものとなるからである。これが、互いに隣接するデータシンボル間でその埋め込みに使用する擬似雑音信号の系統を異ならせた理由である。
【0022】
埋め込み雑音合成部120は、擬似雑音生成部110が出力する電子透かし情報の各シンボルに対応した擬似雑音信号を用いて、音声合成部10が出力する合成音声信号(すなわち、キャリア信号)における上記所定の周波数帯域と同様のスペクトラムエンベロープを持った埋め込み雑音信号を合成する装置である。図4は、この埋め込み雑音合成部120の処理内容を示す図である。以下、図1および図4を参照し、埋め込み雑音合成部120の各部について説明する。
【0023】
窓掛け部121は、音声合成部10が出力する合成音声信号のサンプルxp(n)の列を1ハーフフレーム当たりNサンプル(N=M/2:なお、本実施形態では1フレーム=256サンプルであるから、M=256、すなわち、N=128)のハーフフレームxp(n)(n=0〜N−1)に区切る処理と、現時点から1/2ハーフフレーム(N/2サンプル)遅れた位置から始まる2ハーフフレーム(=1フレーム)分のサンプルxp(n)(n=0〜2N−1)を切り出し、当該1フレーム分のサンプルに窓関数を乗算して時間/周波数変換部122に供給する処理を繰り返す。図4では、窓掛け部121がハーフフレームHF3まで合成音声信号のサンプルxp(n)の列を区切ったとき、ハーフフレームHF3の中央からハーフフレームHF1の中央までの2ハーフフレーム(=1フレーム)分のサンプル列xp(n)(n=0〜2N−1)に窓関数を乗じて時間/周波数変換部122に供給する例が示されている。
【0024】
時間/周波数変換部122は、1フレーム(2Nサンプル)分の窓掛け済みのサンプル列が供給される都度、そのサンプル列に2N点FFT(Fast Fourier Transform;高速フーリエ変換)を施して2N個の複素スペクトラムの列を生成する。図1に示すように、時間/周波数変換部122により生成される複素スペクトラム列は、信号加工部140に与えられるとともに、バンドパスフィルタ129を介して絶対値算出部123に与えられる。
【0025】
信号加工部140は、例えばイコライザであり、時間/周波数変換部122により生成される複素スペクトラム列に対して、前述した所定の周波数帯域に属する周波数成分の強度を引き下げる処理を施し(図5(A)および図5(B)参照)、時間/周波数逆変換部150に出力する。図5(B)に示すように上記所定の周波数帯域に属する周波数成分の強度を引き下げるのは、当該周波数帯域には電子透かし情報を表す擬似雑音信号が重畳されるため、その重畳後の信号強度が強くなり過ぎないようにするためである。時間/周波数逆変換部150は、信号加工部140が出力する複素スペクトラム列に対してIFFT(Inverse Fast Fourier Transform;逆高速フーリエ変換)等の時間/周波数逆変換を施し、信号加工部140による加工が施された合成音声信号の時間波形を表すサンプル列を生成し、加算器130に出力する。バンドパスフィルタ129は、上記所定の周波数帯域を通過域としている。このため、バンドパスフィルタ129は、時間/周波数変換部122により生成される複素スペクトラム列のうちで上記所定の周波数帯域に属する周波数成分のみを通過させる。
【0026】
絶対値算出部123は、バンドパスフィルタ129を通過した複素スペクトラムの各々について、各々の実部の2乗と虚部の2乗の和の平方根を演算することにより、複素スペクトラムの絶対値、すなわち、振幅スペクトラムを算出する。スペクトラムエンベロープ算出部124は、絶対値算出部123が出力する振幅スペクトラムの列を周波数軸上に並べたときの各振幅スペクトラムのエンベロープ、すなわち、音声合成部10により生成された合成音声信号の上記所定の周波数帯域のスペクトラムエンベロープを算出する。時間/周波数逆変換部125は、スペクトラムエンベロープ算出部124が算出したスペクトラムエンベロープに2N点IFFT(Inverse Fast Fourier Transform;逆高速フーリエ変換)等の時間/周波数逆変換を施し、時間領域の2N個のフィルタ係数の列f(n)(n=−N〜N−1)を生成する。この時間領域のフィルタ係数列は、時間軸上において時間t=0を対称軸として対称な偶関数のサンプル列である。
【0027】
以上のように、埋め込み雑音合成部120における窓掛け部121から時間/周波数逆変換部125までの各要素からなる部分は、音声合成部10が1ハーフフレーム分の合成音声信号のサンプル列を出力する毎に、過去1フレーム分の合成音声信号における上記所定の周波数帯域のスペクトラムエンベロープに対応した時間領域の情報であるフィルタ係数列を出力する。
【0028】
畳み込み部126は、擬似雑音生成部110が出力する擬似雑音信号のサンプル列に時間/周波数逆変換部125が出力するフィルタ係数列を畳み込む。さらに詳述すると、本実施形態において、擬似雑音生成部110は、音声合成部10が1ハーフフレーム(Nサンプル)分の合成音声信号のサンプル列を出力し、埋め込み雑音合成部120の時間/周波数逆変換部125が1フレーム(2Nサンプル)分の合成音声信号のスペクトラムエンベロープに対応したフィルタ係数列を出力するのに同期し、1シンボルフレーム(Nサンプル)分の擬似雑音信号のサンプル列を出力する。畳み込み部126は、時間/周波数逆変換部125が2Nサンプルからなるフィルタ係数列f(n)(n=−N〜N−1)を出力した場合に、1シンボルフレーム(Nサンプル)分の擬似雑音信号のサンプル列とそのフィルタ係数列f(n)(n=−N〜N−1)との畳み込み演算を行い、畳み込み演算結果である3N−1個のサンプルの列を生成する。
【0029】
具体的には、1シンボルフレーム(Nサンプル)分の擬似雑音信号のサンプル列に対する1フレーム(2Nサンプル)分のフィルタ係数列f(n)(n=−N〜N−1)の位相関係をずらしながら擬似雑音信号のN個のサンプル列の各々とそれらに対応するフィルタ係数との乗算を行うとともにN個の乗算結果の加算を行い、1個の畳み込み演算結果を生成する動作を繰り返す。図4に示す例では、フィルタ係数列f(n)(n=−N〜N−1)における最後尾のフィルタ係数f(N−1)が擬似雑音信号のサンプル列PN2の先頭のサンプルと対向している状態からフィルタ係数列f(n)(n=−N〜N)における先頭のフィルタ係数f(−N)が擬似雑音信号のサンプル列PN2の最後尾のサンプルと対向している状態になるまでフィルタ係数列f(n)(n=−N〜N−1)の位相を1サンプルずつシフトしつつ、擬似雑音信号のN個のサンプル列の各々とそれらに対応するフィルタ係数との乗算およびN個の乗算結果の加算を繰り返す様子が示されている。なお、擬似雑音信号のサンプルと対向するフィルタ係数f(n)がない場合には、0値がフィルタ係数の代わりに擬似雑音信号のサンプルに乗算される。
【0030】
そして、畳み込み部126は、1フレーム(2Nサンプル)分のフィルタ係数列と1シンボルフレーム分の擬似雑音信号のサンプル列とが発生する毎にこのような畳み込み演算を実行し、各畳み込み演算において得られる3N−1個のサンプルの列の最後尾に0値サンプルを1個追加して3N個のサンプルの列とする。そして、このようにして得られる各3N個のサンプルの各列を、先行するサンプル列の最後尾のN個のサンプルと後続のサンプル列の先頭のNサンプルとを互いにオーバラップさせて出力する。その際、オーバラップ部分は各畳み込む演算結果を加算して1つの出力サンプルとする。図4には、先行する擬似雑音信号のサンプル列PN2に対する3Nサンプル分の畳み込み演算結果と後続の擬似雑音信号のサンプル列PN3に対する3Nサンプル分の畳み込み演算結果とがNサンプル(=1シンボルフレーム)だけオーバラップして出力される様子が示されている。
【0031】
このような畳み込み演算が行われることにより、周波数軸上において合成音声信号の上記所定の周波数帯域のスペクトラムエンベロープと同様なスペクトラムエンベロープを持ち、かつ、時間軸上におけるスペクトラムエンベロープの変化が緩和されたサンプル列が得られる。ここで、時間/周波数逆変換部125が出力するフィルタ係数列f(n)(n=−N〜N−1)は、前述した通り、時間軸上において時間t=0を対称軸として対称な偶関数のサンプル列であるので、このフィルタ係数列の畳み込みを行うフィルタ処理は、直線位相特性を持つ。従って、畳み込み部126によるフィルタ処理では、位相歪みは発生しない。
【0032】
なお、以上の説明では、時間領域においてフィルタ係数列f(n)(n=−N〜N−1)と擬似雑音信号のサンプル列との畳み込み演算を行ったが、この畳み込み演算を次のような周波数領域の操作に置き換えてもよい。
a1.フィルタ係数列f(n)(n=−N〜N−1)の後にN−1個の0値サンプルを追加して3N−1個のフィルタ係数列とし、この3N−1個のフィルタ係数列に3N−1点FFTを施して、3N−1個のフーリエ変換係数を生成する。
b1.畳み込み演算の対象となる1シンボルフレーム(Nサンプル)分の擬似雑音信号のサンプル列の後に2N−1個の0値サンプルを追加して、3N−1個のサンプル列とし、この3N−1個のサンプル列に3N−1点FFTを施して、3N−1個のフーリエ変換係数を生成する。
c1.上記a1.により得られる3N−1個のフーリエ変換係数と上記b1.により得られる3N−1個のフーリエ変換係数とを同一周波数に対応したもの同士乗算し、乗算結果である3N−1個のフーリエ変換係数にIFFTを施し、時間領域の3N−1個のサンプルの列を生成する。
d1.上記a1.〜c1.が繰り返される毎に得られる3N−1個のサンプルの列の最後尾に1個の0値サンプルを追加して3N個のサンプルの列とし、先行するサンプル列と後続のサンプル列を時間軸上においてNサンプルだけオーバラップさせて出力する。
【0033】
ゲイン算出部127は、次式に従い、乗算器128に供給するゲインαを算出し、乗算器128はこのゲインαを畳み込み部126が出力するサンプル列に乗算し、埋め込み雑音信号のサンプル列として出力する。
α=√{(Ps/Pw)10−SWR/10} ……(1)
ここで、Psは、1フレーム分の合成音声信号のうち上記所定の周波数帯域に属する周波数成分の平均パワー、具体的には絶対値算出部123により算出された全ての振幅スペクトラムの平均2乗和である。また、Pwは、擬似雑音生成部110が出力する擬似雑音信号の平均パワーである。そして、SWRは、埋め込み先である合成音声信号の上記所定の周波数帯域のパワーを基準とした埋め込み雑音信号のパワーの減衰量の目標値であり、例えば20dBである。
【0034】
以上のように、埋め込み雑音合成部120は、音声合成部10が出力する合成音声信号の所定の周波数帯域と同様のスペクトラムエンベロープを有し、かつ、同周波数帯域の信号成分よりもSWRだけ平均パワーの減衰した埋め込み雑音信号を擬似雑音信号を用いて合成する。加算器130は、この埋め込み雑音信号を前述した加工済み合成音声信号と加算し(図5(C)参照)、埋め込み済み合成音声信号として出力する。
以上が本実施形態による埋め込み装置100を備えた音声合成装置の詳細である。
【0035】
図6は、本実施形態による電子透かし情報の抽出装置200の構成を示すブロック図である。この抽出装置200は、埋め込み装置100から出力された埋め込み済み合成音声信号から電子透かし情報のシンボル列を抽出する装置であり、上記埋め込み済み合成音声信号を受信してその再生を行う再生装置などに組み込まれる。なお、抽出装置200または当該抽出装置200を含む再生装置は、埋め込み済み合成音声信号から電子透かし情報を抽出する処理または電子透かし情報の抽出処理に加えて音声信号を再生する処理を実行する専用のハードウェアにより実現してもよいし、そのような処理をコンピュータに実行させるコンピュータプログラムにより実現してもよい。
【0036】
図6の抽出装置200は、同期探索フェーズおよびデータ抽出フェーズの2種類の処理を実行する。同期探索フェーズの処理とは、埋め込み済み合成音声信号に埋め込まれている各電子透かし情報の埋め込み位置(各電子透かし情報の同期シンボルの埋め込み位置)を特定する処理である。これに対して、データ抽出フェーズの処理とは、同期探索フェーズにおいて特定された各埋め込み位置以降の埋め込み済み合成音声信号のサンプル列を解析し、各電子透かし情報のデータシンボル列を抽出して「識別子」および「タイムコード」を復元する処理である。このデータ抽出フェーズの処理において復元される「識別子」および「タイムコード」は、埋め込み済み合成音声信号の表す音声と映像などとの同期再生、或いは埋め込み済み合成音声信号の表す音声の再生に同期させて電子楽器の自動演奏を行わせる場合の演奏制御に利用される。
【0037】
同期探索フェーズの処理は、さらに、概略探索フェーズの処理と、詳細探索フェーズの処理とに大別される。概略探索フェーズの処理とは、電子透かし情報の探索を開始するべき位置として抽出装置200(或いは当該抽出装置200を含む再生装置)の利用者によって指定された探索開始位置よりも後方に埋め込まれている電子透かし情報のうちの最初のもの(以下、先頭電子透かし情報)の同期シンボルの概略的な埋め込み位置を特定する処理である。例えば、埋め込み済み合成音声信号をその先頭から再生することを指示された場合には、当該合成音声信号の先頭が探索開始位置となり、当該合成音声信号をその途中から再生することを指示された場合には当該途中の位置が探索開始位置となる。これに対して、詳細探索フェーズの処理とは、概略探索フェーズの処理により特定された概略的な埋め込み位置周辺のサンプルを解析し、上記先頭電子透かし情報の詳細な埋め込み位置を特定するとともに、その特定結果に基づいて後続の電子透かし情報の詳細な埋め込み位置を特定する処理である。
【0038】
図6のフレーム切り出し部210は、埋め込み装置100から出力される埋め込み済み合成音声信号のサンプル列を受け取り、同期化制御部231による制御の下、当該サンプル列を埋め込み装置100におけるものと同じ長さのフレーム(すなわち、1フレーム当たり256サンプルのフレーム)に区切って出力する装置である。埋め込み装置100から出力される埋め込み済み合成音声信号は、例えばアナログ信号に変換された後、音として空気中に放音され、図示しない収音装置により収音されてデジタル化(すなわち、サンプル列に変換)され、フレーム切り出し部210に与えられる。あるいは、埋め込み済み合成音声信号のサンプル列は、一旦、何らかの記録媒体に記録され、その記録媒体からフレーム切り出し部210によって読み出される場合もあり得る。
【0039】
図6に示すように、フレーム切り出し部210は、バッファ210aおよびバッファ210bの2つのバッファを有している。バッファ210aは、1フレーム分のサンプルを記憶する記憶容量を有しており、概略探索フェーズおよびデータ抽出フェーズの処理を実行する際に利用される。より詳細に説明すると、概略探索フェーズおよびデータ抽出フェーズにおいては、フレーム切り出し部210は、同期化制御部231による制御の下、収音装置等を介して与えられる埋め込み済み合成音声信号のサンプルを同期化制御部231により指示された位置から1サンプルずつ取得してバッファ210aに蓄積し、1フレーム分のサンプルの蓄積を契機として当該1フレーム分のサンプルを窓掛け部211に出力し、バッファ210aの格納内容を初期化する処理を繰り返し実行する。これに対して、バッファ210bは、2フレーム分のサンプルを記憶する記憶容量を有しており、前述した詳細探索フェーズにおいて利用される。詳細については後述するが、この詳細探索フェーズにおいては、フレーム切り出し部210は、同期化制御部231により指示された位置を先頭とする2フレーム分のサンプルを埋め込み済み合成音声信号のサンプル列から取り出してバッファ210bに格納し、これら2フレーム分のサンプルからフレーム切り出し位置を1/2ハーフフレーム分ずつシフトさせて1フレーム分のサンプルを切り出し、それら1フレーム分のサンプルを窓掛け部211に出力する処理を行う。
【0040】
窓掛け部211、時間/周波数変換部212、スペクトラム振幅平坦化部213、およびバンドパスフィルタ214は、同期探索フェーズとデータ抽出フェーズとで同一の処理を実行する。より詳細に説明すると、窓掛け部211は、埋め込み装置100の窓掛け部121と同様の構成のものであり、フレーム切り出し部210から与えられる1フレーム分のサンプル列に窓関数を乗算して時間/周波数変換部212に供給する。時間/周波数変換部212は、埋め込み装置100の時間/周波数変換部122と同様の構成のものであり、1フレーム分の窓掛け済みのサンプル列が供給される都度、そのサンプル列にFFTを施し、複素スペクトラム列を生成する。バンドパスフィルタ214は、時間/周波数変換部212が1フレーム分のサンプル列から生成する各複素スペクトラムのうち上記所定の周波数帯域に属する周波数成分の複素スペクトラム列のみを通過させる。スペクトラム振幅平坦化部213は、バンドパスフィルタ214から出力される各複素スペクトラムについて、各々の振幅が1となるように実部と虚部の大きさを調整する。具体的には、各複素スペクトラムについて、実部と虚部の2乗和の平方根(すなわち、複素スペクトラムの振幅値(絶対値))を求め、実部と虚部をこの平方根により除算する。
【0041】
擬似雑音生成部220は、埋め込み装置100の擬似雑音生成部110と同様にAからQまでの合計17系統の擬似雑音信号を生成する機能を備えている。より詳細に説明すると、擬似雑音生成部220は、同期化制御部231による制御の下、同期探索フェーズにおいては、フレーム切り出し部210によるフレーム切り出しに同期させてA系統のシンボル“0”に対応する擬似雑音信号を生成して出力する。一方、データ抽出フェーズにおいては、擬似雑音生成部220は、同期化制御部231による制御の下、フレーム切り出し部210によるフレーム切り出しに同期させてBからQまでの各系統のシンボル“0”および“1”に対応する各擬似雑音信号を1系統ずつ巡回的に生成して出力する。
【0042】
時間/周波数変換部221と複素共役化部222は、窓掛け部211等と同様に、同期探索フェーズとデータ抽出フェーズとで同一の処理を実行する。具体的には、時間/周波数変換部221は、擬似雑音生成部220から与えられる擬似雑音信号にFFTを施して複素スペクトラム列を生成する。複素共役化部222は、時間/周波数変換部221から与えられる複素スペクトラム列の各々について、その複素スペクトラム列の各複素スペクトラムの虚部の符号を反転し、元の複素スペクトラムと複素共役をなす複素スペクトラムに変換する。
【0043】
相関算出部230は、同期探索フェーズとデータ抽出フェーズの各々において夫々異なる処理を実行する。より詳細に説明すると、相関算出部230は、同期探索フェーズにおいては、概略探索フェーズおよび詳細探索フェーズの何れにおいても、スペクトラム振幅平坦化部213から出力された複素スペクトラム列の各複素スペクトラムと、複素共役化部222の処理を経たシンボル“0”に対応した擬似雑音信号の複素スペクトラム列の各複素スペクトラムとを同一周波数に対応したもの同士乗算し、各乗算結果にIFFTを施して時間領域のサンプル列に変換する。そして、その中で最も高いピーク値を第1の相互相関係数として同期化制御部231に出力する処理を実行する。前述したように、概略探索フェーズと詳細探索フェーズの何れにおいても、擬似雑音生成部220はA系統のシンボル“0”に対応する擬似雑音信号のみを生成して出力し、この擬似雑音信号に時間/周波数変換部221および複素共役化部222による処理を施して得られる複素スペクトラム列が相関算出部230に与えられる。つまり、同期探索フェーズにおいては、相関算出部230は、フレーム切り出し部210により切り出されたフレームとA系統のシンボル“0”に対応する擬似雑音信号との第1の相互相関係数をフレーム毎に算出し、同期化制御部231に出力するのである。
【0044】
これに対して、データ抽出フェーズにおいては、相関算出部230は、フレーム切り出し部210により切り出されたフレームと擬似雑音生成部220によって生成された擬似雑音信号のうちのシンボル“0”に対応するものとの第1の相互相関係数を算出する処理に加えて、同フレームと擬似雑音生成部220によって生成された擬似雑音信号のうちのシンボル“1”に対応するものとの第2の相互相関係数を上記第1の相互相関係数と同様に算出する処理をフレーム毎に実行する。前述したように、データ抽出フェーズにおいては、フレーム切り出し部210によるフレームの切り出しに同期させてBからQまでの合計16系統の擬似雑音信号を1系統ずつ巡回的に生成して出力する処理が擬似雑音生成部220によって実行され、これら擬似雑音信号に時間/周波数変換部221および複素共役化部222による処理を施して得られる複素スペクトラム列が相関算出部230に与えられる。このため、データ抽出探索フェーズにおいては、フレーム切り出し部210により切り出されるフレーム毎に、BからQまでの何れかの系統のシンボル“0”に対応する擬似雑音信号との第1の相互相関係数と、同系統のシンボル“1”対応する擬似雑音信号との第2の相互相関係数と、が相関算出部230によって算出され、シンボル判定部232に与えられるのである。
【0045】
仮に、フレーム切り出し部210が埋め込み装置100の窓掛け部121と同じ区切り位置において埋め込み済み合成音声信号をフレームに区切るとすると、スペクトラム振幅平坦化部213から出力される複素スペクトラム列は、上述の畳み込み部126が出力した埋め込み雑音信号の複素スペクトラムの振幅を1にしたものと、上述の音声合成部10が出力した合成音声信号の複素スペクトラムの振幅を1にしたものを含んでいる。このとき、スペクトラム振幅平坦化部213から出力される複素スペクトラム列がAからQの何れかの系統のシンボル“0”に対応した擬似雑音信号から得られた埋め込み雑音信号の各複素スペクトラムであって振幅が1であるものを含む場合には、複素共役化部222の処理を経た擬似雑音信号が同一系統のシンボル“0”に対応するものであれば、第1の相互相関係数は大きな値となり、他の系統のシンボル“0”に対応するものであれば第1の相互相関係数は小さな値となる。つまり、上記第1の相互相関係数は、フレーム切り出し部210により切り出されたフレームの振幅スペクトラムとシンボル“0”(同期探索フェーズにおいてはA系統のシンボル“0”、データ抽出フェーズにおいてはBからQの各系統のシンボル“0”)の振幅スペクトラムとの相関度(すなわち、当該フレームにシンボル“0”が含まれていることの尤もらしさ)を表わすのである。同様に、スペクトラム振幅平坦化部213から出力される複素スペクトラム列がBからQの何れかの系統のシンボル“1”に対応した擬似雑音信号から得られた埋め込み雑音信号の各複素スペクトラムであって振幅が1であるものを含む場合には、複素共役化部222の処理を経た擬似雑音信号が同一系統のシンボル“1”に対応するものであれば、第2の相互相関係数は大きな値となり、他の系統のシンボル“1”に対応するものであれば第2の相互相関係数は小さな値となる。つまり、上記第2の相互相関係数はフレーム切り出し部210により切り出されたフレームの振幅スペクトラムとシンボル“1”の振幅スペクトラムとの相関度(すなわち、当該フレームにシンボル“1”が含まれていることの尤もらしさ)を表わすのである。なお、音声合成部10が出力する合成音声信号の複素スペクトラムと、シンボル“0”および“1”に対応した各擬似雑音信号から得られる埋め込み雑音信号の各複素スペクトラムとの相互相関係数が低い場合、合成音声信号の複素スペクトラムの第1の相互相関係数および第2の相互相関係数に与える影響は少ない。
【0046】
したがって、フレーム切り出し部210が埋め込み装置100の窓掛け部121と同じ区切り位置において埋め込み済み合成音声信号をフレームに区切るのであれば、フレーム毎にA系統のシンボル“0”に対応する擬似雑音信号についての第1の相互相関係数を算出することで各電子透かし情報の同期シンボルの埋め込み位置を特定することができ、後続するフレームとBからQの各系統の擬似雑音信号についての第1および第2の相互相関係数を算出することで各データシンボルを抽出することができる。しかし、フレーム切り出し部210が埋め込み済み合成音声信号をその先頭から1フレームずつ区切る場合であっても、各フレームの区切り位置が埋め込み装置100におけるものと一致するとは限らず、同期シンボルの埋め込み位置の特定に支障が生じる。何故ならば、電子透かし情報の埋め込み側でのサンプリングタイミングと同抽出側でのサンプリングタイミングとが一致するとは限らないからである。そこで、本実施形態では、本発明の特徴を顕著に示す同期探索フェーズの処理を抽出装置200に行わせることで、上記不具合を解消しているのである。
【0047】
同期化制御部231は、以上説明した各部に同期探索フェーズの処理を行わせ、その後、データ抽出フェーズの処理を行わせる制御を行う装置である。以下、同期探索フェーズおよびデータ抽出フェーズの各々において同期化制御部231が行う動作について説明する。前述したように同期探索フェーズの処理は、概略探索フェーズの処理と詳細探索フェーズの処理とに大別される。概略探索フェーズにおいては、同期化制御部231は、図7に示すように、埋め込み済み合成音声信号のサンプル列を探索開始位置から1フレーム分ずつ切り出す処理をフレーム切り出し部210に実行させ、窓掛け部211、時間/周波数変換部212、バンドパスフィルタ214、スペクトラム振幅平坦化部213、擬似雑音生成部220、時間/周波数変換部221、複素共役化部222および相関算出部230に上述した同期探索フェーズの動作を行わせる。その結果、概略探索フェーズにおいては、探索開始位置から1透かし長分のフレーム(すなわち、153個のフレーム)の各々について、そのフレームの振幅スペクトラムとA系統のシンボル“0”に対応する擬似雑音信号の振幅スペクトラムとの相関度を示す第1の相互相関係数が算出される。同期化制御部231は、これら153個のフレームのうち、上記相関度(第1の相互相関係数)が最大となるフレームを、先頭電子透かし情報の同期シンボルの概略的な埋め込み位置として特定するのである。
【0048】
前述したように、フレーム切り出し部210によるフレーム区切り位置は埋め込み装置100におけるフレーム区切り位置と一致するとは限らない。しかし、仮に、埋め込み装置100において先頭電子透かし情報の同期シンボルの埋め込まれたフレーム内においてフレーム区切り部210がフレームを区切ったとしても、A系統のシンボル“0”に対応する擬似雑音信号の信号成分を多く含んでいるフレームほど上記第1の相互相関係数の値は大きくなると考えられる。本実施形態では、これを利用して、先頭電子透かし情報の同期シンボルの概略的な埋め込み位置を特定しているのである。
以上が、概略探索フェーズにおける同期化制御部231の動作である。
【0049】
次いで、詳細探索フェーズにおける同期化制御部231の動作について説明する。
前述した概略探索フェーズにおける制御を完了すると、同期化制御部231は詳細探索フェーズの制御を行う。この詳細探索フェーズにおいては、同期化制御部231は、まず、概略探索フェーズにおいて特定された先頭電子透かし情報の同期シンボルの概略的な埋め込み位置に対応するフレームよりもハーフフレームだけ前の位置を読出し位置としてフレーム切り出し部210に指示し、この読出し位置から2フレーム分のサンプルを埋め込み済み合成音声信号のサンプル列から取り出してバッファ210bに格納する処理をフレーム切り出し部210bに実行させる。そして、同期化制御部231は、バッファ210bに格納されているサンプル列から切り出し位置を1/2ハーフフレーム分ずつシフトさせながら1フレーム分のサンプルを切り出す処理をフレーム切り出し部210に実行させ、窓掛け部211、時間/周波数変換部212、バンドパスフィルタ214、スペクトラム振幅平坦化部213、擬似雑音生成部220、時間/周波数変換部221、複素共役化部222および相関算出部230に上述した同期探索フェーズの動作を行わせる。つまり、本実施形態では、図7に示すように、フレーム切り出し位置を1/2ハーフフレーム分ずつシフトさせた5個のフレームが上記概略的な埋め込み位置周辺のサンプル列から切り出され、これら5個のフレームの各々について、A系統のシンボル“0”との相関度を表わす第1の相互相関係数が算出される。同期化制御部231は、それら5個のフレームのうちで上記相関度(第1の相互相関係数)が最大となるフレームを先頭電子透かし情報の同期シンボルの埋め込み先フレームとして特定し、当該フレームの探索開始位置からのオフセットを当該先頭電子透かし情報の埋め込み位置として記憶するのである。これにより、先頭電子透かし情報の同期シンボルの埋め込み位置が詳細に特定されるのである。以降、同期化制御部231は、上記のようにして特定された同期シンボルの埋め込み先フレームから電子透かし情報の埋め込み周期(本実施形態では、1透かし長=153フレーム)に応じたフレーム数だけ後方のフレームを次ぎの電子透かし情報の同期シンボルの概略的な埋め込み位置とし、当該フレームおよびその前後のハーフフレーム分のサンプルをバッファ210bに格納する処理をフレーム切り出し部210に実行させ、上記と同様の制御を行って後続する電子透かし情報の各々の同期シンボルの埋め込み位置(埋め込み先フレーム)を特定する。
以上が詳細探索フェーズにおける同期化制御部231の動作である。
【0050】
次いで、データ抽出フェーズにおいて同期化制御部231が実行する動作について説明する。このデータ抽出フェーズにおいては、同期化制御部231は、同期探索フェーズにおいて特定された先頭電子透かし情報の同期シンボルの埋め込み先フレームの次のフレームの先頭を読出し位置としてフレーム切り出し部210に指示し、埋め込み済み合成音声信号のサンプル列を、この読出し位置から1フレーム分ずつ区切って出力するようにフレーム切り出し部210を制御するとともに、窓掛け部211、時間/周波数変換部212、バンドパスフィルタ214、スペクトラム振幅平坦化部213、擬似雑音生成部220、時間/周波数変換部221、複素共役化部222および相関算出部230に上述したデータ抽出フェーズの動作を行わせる。このデータ抽出フェーズにおいてフレーム毎に相関算出部230から出力される第1の相互相関係数および第2の相互相関係数はシンボル判定部232に与えられる。シンボル判定部232は、これら第1の相互相関係数および第2の相互相関係数に基づいて各フレームに埋め込まれているデータシンボルを抽出して出力する。より詳細に説明すると、シンボル判定部232は、相関算出部230が第1の相互相関係数および第2の相互相関係数を出力する毎に、第1の相互相関係数および第2の相互相関係数を比較し、第1の相互相関係数が第2の相互相関係数よりも大きければフレームに埋め込まれたシンボルは“0”であると判定し、第2の相互相関係数が第1の相互相関係数よりも大きければ同フレームに埋め込まれたシンボルは“1”であると判定する。そして、同期化制御部231は、152個のデータシンボルの抽出を完了すると、後続の電子透かし情報についても同様の処理を実行し、探索開始位置よりも後方に埋め込まれている全ての電子透かし情報の抽出を完了するのである。
以上がデータ抽出フェーズにおける同期化制御部231の動作である。
【0051】
なお、以上説明した詳細探索フェーズの処理では、バッファ210bに格納されている2フレーム分のサンプル列からフレーム切り出し位置を1/2ハーフフレーム分ずつシフトさせて切り出した5つのフレームの各々について、A系統のシンボル“0”との相関度を示す第1の相互相関係数を算出し、その値が最大となるフレームを同期シンボルの埋め込み先フレームとして特定した。しかし、バッファ210bから各フレームを切り出す際のフレーム切り出し位置のシフト量をより小さな値(例えば、ハーフフレームの1/4など)としても良い。このような態様によれば、上記実施形態における態様よりも演算量は増加するものの、より精度良く同期シンボルの埋め込み先フレームを特定することができると期待される。逆に、同期シンボルの埋め込み先フレームの特定に割くことができる演算量(或いは処理時間)に厳しい制限が課される場合には、上記シフト量を1フレームの長さよりは小さな範囲であって、より大きな値(例えば、ハーフフレームの長さ)とすれば良い。つまり、上記シフト量については、埋め込み先フレームの特定精度およびその特定に割くことができる演算量との兼ね合いで好適な値を選択するようにすれば良い。
【0052】
以上説明した本実施形態によれば次の効果が得られる。まず、埋め込み装置100は、合成音声信号の所定の周波数帯域のスペクトラムエンベロープを持った埋め込み雑音信号を生成し、これを合成音声信号に加算して埋め込み済み合成音声信号として出力する。このため、埋め込み済み合成音声信号がそのまま音として再生された場合であっても、電子透かし情報の埋め込みに起因した雑音が極端に際立つことが回避される。また、各電子透かし情報の構成シンボルに対応する擬似雑音信号は13〜16kHzといった周波数帯域に加算されているため、埋め込み済み合成音声信号に例えばMP−3などの非可逆圧縮が施されるとしても、電子透かし情報の消失を回避することができる。
【0053】
一方、抽出装置200では、同期探索フェーズの処理によって各電子透かし情報の埋め込み位置が特定され、その特定結果に基づいて各電子透かし情報を抽出する処理がデータ抽出フェーズにおいて実行される。本実施形態の同期探索フェーズの処理は、前述したように、概略探索フェーズの処理と、詳細探索フェーズの処理とで構成されている。仮に同期探索フェーズの処理を詳細探索フェーズの処理のみで構成すると、フレーム切り出し位置を小刻みにシフトさせて切り出した各フレームを解析して各電子透かし情報の同期シンボルの埋め込み位置を特定する処理を、埋め込み済み合成音声信号の全体に亘って施す必要がある。つまり、本実施形態によれば、詳細探索フェーズの処理のみで同期探索フェーズの処理を構成する態様に比較して、詳細探索フェーズにおける探索範囲が限定され、少ない演算量で各電子透かし情報の埋め込み位置を特定することができるのである。加えて、本実施形態では、先頭電子透かし情報についてのみ概略探索フェーズの処理によって同期シンボルの概略的な埋め込み位置を求め、その他の電子透かし情報の概略的な埋め込み位置については1つ手前に埋め込まれている電子透かし情報について詳細探索フェーズの処理により特定された埋め込み位置に基づいて算出しているため、全ての電子透かし情報について概略探索フェーズの処理を行う場合に比較して少ない演算量でそれら電子透かし情報の埋め込み位置を特定し、迅速に抽出することが可能になる。
【0054】
なお、上記実施形態では、先頭電子透かし情報についてのみ概略探索フェーズの処理によって同期シンボルの概略的な埋め込み位置を求め、その他の電子透かし情報については概略的な埋め込み位置をその1つ手前に埋め込まれている電子透かし情報の埋め込み位置(詳細探索フェーズの処理により特定された埋め込み位置)と電子透かし情報の埋め込み周期とに基づいて計算により算出した。しかし、電子透かし情報の埋め込み側におけるD/A変換のクロックと同抽出側におけるA/D変換のクロックの相違に起因した誤差の蓄積により、先頭電子透かし情報以外の電子透かし情報の概略的な埋め込み位置の算出を進めるにしたがって、計算により算出される概略的な埋め込み位置が実際の埋め込み位置からずれてくる場合がある。そこで、先頭電子透かし情報以外の電子透かし情報についても、概略探索フェーズの処理を時々行って同期シンボルの概略的な埋め込み位置を特定するようにしても良い。例えば、N(Nは2以上の自然数)の電子透かし情報について同期シンボルの詳細な埋め込み位置が特定される毎に、その次の電子透かし情報については概略探索フェーズの処理を行って同期シンボルの概略的な埋め込み位置を特定するのである。このような態様によれば、上記D/A変換およびA/D変換のクロックの相違により蓄積された誤差が周期的に(すなわち、N個の電子透かし情報毎に)リセットされ、そのような誤差の蓄積に基づく不具合の発生が回避される。
【0055】
<B:変形>
以上、この発明の実施形態を説明したが、この実施形態を以下のように変形しても勿論良い。
(1)上記実施形態のシンボル判定部232は、第1の相互相関係数と第2の相互相関係数との比較により、各フレームに埋め込まれているデータシンボルが“0”であるのか“1”であるのかを判定した。しかし、第1の相互相関係数の大きさと第2の相互相関係数の大きさに充分な差がない場合(ノイズ等に起因した誤差程度の差しかないなど有意な差がない場合)には、データシンボルの判定に支障が生じる。このような場合には1つ手前までに抽出した1または複数の電子透かし情報のデータシンボル列との関係で当該データシンボル値を推定するようにしても良い。
【0056】
より詳細に説明すると、上記実施形態において合成音声信号に埋め込まれる電子透かし情報は「識別子」と「タイムコード」とにより構成されている。これら電子透かし情報の構成要素のうち「識別子」については各電子透かし情報間で共通であるから、相互相関係数に基づいて“0”または“1”の何れであるのかを判定することができなかったシンボルが「識別子」を構成するものであり、かつ、その1つ手前に抽出した電子透かし情報のデータシンボルが全て特定されている場合には、当該1つ手前に抽出した電子透かし情報において該当するデータシンボルのシンボル値を当該データシンボルのシンボル値とすれば良い。また、「タイムコード」については電子透かし情報毎に異なるのであるが、当該「タイムコード」は合成音声の先頭からの時間を表すことに着目し、1つ手前に抽出した電子透かし情報のタイムコードと比較してより遅い時間を表し、かつそのタイムコードの表す時刻との時間差がフレーム間隔や合成音声全体の時間長との関係で長くなりすぎたり、短くなりすぎたりすることがないように、それまでに抽出した複数の電子透かし情報のタイムコードを参照して統計的に当該データシンボルの値を定めるようにすれば良い。
【0057】
(2)上述した実施形態では、キャリア信号に埋め込む複数の電子透かし情報の各々のシンボル列の長さを同一にしたが、電子透かし情報毎にシンボル列の長さが異なっていても良い。要は、複数の電子透かし情報の各々が一定周期でキャリア信号に埋め込まれていれば良い。また、上述した実施形態では、同期シンボルを各電子透かし情報のシンボル列の先頭に配置したが、同期シンボルの配置位置は上記シンボル列の先頭に限定されるものではない。例えば、上記シンボル列の先頭から数えてN(Nは2以上の整数)番目に同期シンボルを配置する態様であっても、同期シンボルの埋め込み先のフレームが特定されれば、当該フレームのN−1個手前のフレームを当該電子透かし情報の埋め込み開始位置として特定し、電子透かし情報の抽出を行うことができるからである。また、上述した実施形態では、各電子透かし情報の先頭を1つの同期シンボルで明示したが、複数個の同期シンボルにより各電子透かし情報の先頭を表わすようにしても勿論良い。
【0058】
(3)上述した実施形態では、電子透かし情報を構成する同期シンボルを示す擬似雑音信号と各データシンボルを示す擬似雑音信号とを同じ周波数帯域に埋め込んだ。しかし、同期シンボルを示す擬似雑音信号と各データシンボルを示す擬似雑音信号とを異なる周波数帯域に埋め込むようにしても勿論良い。例えば、同期シンボルについては11〜13kHzの周波数帯域に埋め込み、データシンボルについては14〜16kHzの周波数帯域に埋め込むといった具合である。
【0059】
(4)上述した実施形態では、「識別子」および「タイムコード」を表わすデータシンボル列の合成音声信号への埋め込みを行う際に、BからQまでの合計16系統の擬似雑音信号を巡回的に用いてその埋め込みを行ったが、例えば2系統や3系統などより少ない系統数の擬似雑音信号を巡回的に用いてその埋め込みを行うようにしても良く、また17系統以上の擬似雑音信号を用いてその埋め込みを行っても良い。また、同一の擬似雑音信号が連続して埋め込まれることに起因する雑音の繰り返し感が特に問題とはならないのであれば、1系統の擬似雑音信号を用いてデータシンボルの埋め込みを行うようにしても良い。
【0060】
(5)上述した実施形態の概略探索フェーズの処理においては、探索開始位置から順次切り出した153個のフレーム(すなわち、1透かし長分のフレーム)の各々についてA系統のシンボル“0”に対応する擬似雑音信号との相互相関係数を算出し、その相互相関係数が最大となるフレームを同期シンボルの概略的な埋め込み位置に対応するフレームとした。しかし、上記相互相関係数の値に対して所定の閾値を定めておき、上記1透かし長分のフレームの先頭から順に上記相互相関係数が上記閾値を上回っているか否かを判定し、最初に上記閾値を上回る相互相関係数が得られたフレームを同期シンボルの概略的な埋め込み位置に対応するフレームであるとし、以降のフレームについては相互相関係数の算出を省略するようにしても良い。このような態様によれば、最初に上記閾値を上回る相互相関係数が得られたフレーム以降のフレームについての相互相関係数の算出を省略することができる分だけ演算量が減り、より迅速に各電子透かし情報を抽出することが可能になる。
【0061】
(6)上記実施形態では、電子透かし情報の抽出時に、擬似雑音生成部220が出力する擬似雑音信号を時間/周波数変換部221および複素共役化部222に処理させるようにした。しかし、予め生成した各種の擬似雑音信号に時間/周波数変換部221による処理を施して得られる複素スペクトラム列に複素共役化部222による処理を施して得られる複素スペクトラム列をメモリに記憶させておき、相関算出部230には当該メモリに記憶させてある複素スペクトラム列を供給するように構成しても良い。この態様では、時間/周波数変換部221と複素共役化部222とを抽出装置200から削除することができる。
【0062】
(7)上記実施形態では、電子透かし情報のシンボルを示すものとして合成音声信号に埋め込む擬似雑音信号に埋め込み先の周波数帯域のスペクトラムエンベロープを付けて埋め込んだが、過去複数フレームに亘る当該周波数帯域のスペクトラムエンベロープの平均の形状或いは所定の形状(例えば、一定値を表す形状)のスペクトラムエンベロープを付けて埋め込むようにしても良い。埋め込み先の周波数帯域との関係では、このような態様のほうがシンボルの抽出を行いやすい場合があるからである。
【0063】
(8)上述した実施形態では、互いに異なる複数の電子透かし情報をキャリア信号に埋め込んだ。しかし、キャリア信号の不正利用に備えて電子透かし情報を埋め込む場合には、同一内容(例えばのキャリア信号の出所等)を表す複数の電子透かし情報をキャリア信号に埋め込んでも勿論良い。要は、一定周期で繰り返しキャリア信号に電子透かし情報を埋め込む態様であれば良い。また、上述した実施形態では、電子透かし情報の埋め込み先となるキャリア信号として音声信号を用いたが映像信号をキャリア信号としても勿論良い。
【符号の説明】
【0064】
10……音声合成部、100……埋め込み装置、200……抽出装置、110,220……擬似雑音生成部、120……埋め込み雑音合成部、121,211……窓掛け部、122,212,221……時間/周波数変換部、123……絶対値算出部、124……スペクトラムエンベロープ算出部、125,150……時間/周波数逆変換部、126……畳み込み部、127……ゲイン算出部、128……乗算器、129,214……バンドパスフィルタ、130……加算器、140……信号加工部、210……フレーム切り出し部、210a,210b……バッファ、213……スペクトラム振幅平坦化部、222……複素共役化部、230……相関算出部、231……同期化制御部、232……シンボル判定部。

【特許請求の範囲】
【請求項1】
少なくとも1つの同期シンボルと複数のデータシンボルとで構成された電子透かし情報が一定周期で繰り返し埋め込まれたキャリア信号のサンプル列を受け取り、前記サンプル列をフレームに区切りながらフレーム毎に前記同期シンボルとの相関度を算出し、前記サンプル列の後方に向けて前記電子透かし情報の埋め込み位置の探索を行った場合に最初に見つかる電子透かし情報の同期シンボルの概略的な埋め込み位置を各フレームについて算出される前記相関度に基づいて特定する概略探索処理と、前記最初に見つかる電子透かし情報については、前記概略探索処理により特定された概略的な埋め込み位置周辺のサンプル列から切り出し位置を小刻みにシフトさせつつ切り出した各フレームについて前記同期シンボルとの相関度を算出しその算出結果に基づいて同期シンボルの埋め込み位置を特定する一方、その他の電子透かし情報については、1つ手前の電子透かし情報について特定した同期シンボルの埋め込み位置から前記一定周期に応じたサンプル数分だけ後方の位置周辺のサンプル列から切り出し位置を小刻みにシフトさせつつ切り出した各フレームについて前記同期シンボルとの相関度を算出しその算出結果に基づいてその埋め込み位置を特定する詳細探索処理と、を実行する探索手段と、
前記探索手段により電子透かし情報毎に特定された同期シンボルの埋め込み位置の各々に関して、当該埋め込み位置以降のサンプル列をフレームに区切りながらフレーム毎に前記データシンボルとの相関度を算出し、その算出結果に基づいて各フレームに含まれているデータシンボルを抽出する抽出手段と、
を有することを特徴とする電子透かし情報の抽出装置。
【請求項2】
前記キャリア信号への電子透かし情報の埋め込みは、電子透かし情報を構成する各シンボルに対応する擬似雑音信号を前記キャリア信号の所定の周波数帯域に重畳することにより行われているとともに、同期シンボルとデータシンボルとでは互いに異なる系統の擬似雑音信号が用いられており、
前記探索手段は、前記同期シンボルとの相関度として、前記同期シンボルに対応する擬似雑音信号との相互相関係数をフレーム毎に算出し、
前記抽出手段は、前記データシンボルとの相関度として、前記データシンボルに対応する擬似雑音信号との相互相関係数をフレーム毎に算出する
ことを特徴とする請求項1に記載の抽出装置。
【請求項3】
電子透かし情報を構成するシンボル列の埋め込み先となるキャリア信号のサンプル列にフーリエ変換を施し、各周波数成分の強度を示すスペクトラム列をフレーム毎に生成する時間/周波数変換部と、
前記時間/周波数変換部により生成されたスペクトラム列の各々について、電子透かし情報の埋め込み先となる所定の周波数帯域の強度を引き下げた後に逆フーリエ変換を施してキャリア信号のサンプル列に戻す時間/周波数逆変換部と、
電子透かし情報を構成する各シンボルを示す擬似雑音信号であって、前記所定の周波数帯域に属する周波数成分からなる擬似雑音信号を生成し、当該擬似雑音信号のスペクトラムエンベロープが所定の形状となるように加工した後に、当該加工後の擬似雑音信号を前記時間/周波数逆変換部により生成されたキャリア信号に加算して出力する電子透かし情報埋め込み部と、
を備え、
前記シンボル列は、少なくとも1つの同期シンボルと複数のデータシンボルとを有し、
前記電子透かし情報埋め込み部は、
前記キャリア信号に一定周期で繰り返し電子透かし情報を埋め込むとともに、複数系統の前記擬似雑音信号を生成し、前記同期シンボルと前記データシンボルとで互いに異なる系統の擬似雑音信号を使用してその埋め込みを行う
ことを特徴とするキャリア信号に電子透かし情報を埋め込む埋め込み装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate


【公開番号】特開2012−13808(P2012−13808A)
【公開日】平成24年1月19日(2012.1.19)
【国際特許分類】
【出願番号】特願2010−148326(P2010−148326)
【出願日】平成22年6月29日(2010.6.29)
【出願人】(000004075)ヤマハ株式会社 (5,930)
【Fターム(参考)】