二次元ビット拡散を用いたウォーターマーク生成器、ウォーターマーク復号器、バイナリーメッセージデータに基づいてウォーターマーク信号を提供する方法、ウォーターマーク済み信号に基づいてバイナリーメッセージデータを提供する方法及びコンピュータプログラム
バイナリーメッセージデータ(2410)に基づいてウォーターマーク信号(2420)を提供するウォーターマーク生成器(2400)は、バイナリーメッセージデータの1つのメッセージビットに基づいて1セットの時間−周波数−ドメイン値の形式で前記メッセージビットを表現する2次元拡散済み情報(2432)を提供する情報処理器(2430)を備える。ウォーターマーク生成器は、2次元拡散済み情報に基づいてウォーターマーク信号を提供するウォーターマーク信号提供器(2440)をさらに備える。ウォーターマーク復号器、復号方法およびコンピュータプログラムについての説明も併せて開示される。
【発明の詳細な説明】
【技術分野】
【0001】
本発明の実施形態は、バイナリーメッセージデータに基づいてウォーターマーク(電子透かし)信号を提供するウォーターマーク生成器に関する。本発明の他の実施形態は、ウォーターマーク済み信号に基づいてバイナリーメッセージデータを提供するウォーターマーク復号器に関する。本発明のさらに他の実施形態は、バイナリーメッセージデータに基づいてウォーターマーク信号を提供する方法に関する。本発明の別の実施形態は、ウォーターマーク済み信号に基づいてバイナリーメッセージデータを提供する方法に関する。本発明のさらに別の実施形態は、対応するコンピュータプログラムに関する。
【0002】
本発明の幾つかの実施形態は、ロバストで複雑度の低いオーディオ・ウォーターマーキング・システムに関する。
【背景技術】
【0003】
多くの技術的アプリケーションにおいて、例えばオーディオ信号、ビデオ信号、グラフィックス、測定量等のような有用データ又は「主データ」を表す情報又は信号の中に、追加的な情報を含ませることが望まれる。多くの場合、そのような追加的な情報は、主データ(例えばオーディオデータ、ビデオデータ、静止画像データ、測定データ、テキストデータ等)に対し、ユーザーに知覚されないような方法で結合されて含まれることが望ましい。また、幾つかの場合では、主データ(例えばオーディオデータ、ビデオデータ、静止画像データ、測定データ等)から追加的なデータを容易に取り除けないような方法で、その追加的データが含まれることが望ましい。
【0004】
上述のような需要は、デジタル著作権管理を実現することが望ましいアプリケーションにおいて、特に高くなる。しかし、有用データに対して実質的に知覚できないサイド情報を追加することが単純に望まれる場合も存在する。例えば、オーディオデータにサイド情報を追加することが望ましく、そのサイド情報には、オーディオデータのソース、オーディオデータのコンテンツ及びオーディオデータに関連する権利などが含まれる場合が挙げられる。
【0005】
有用データ又は「主データ」の中に追加データを埋め込むために、「ウォーターマーキング」と呼ばれる概念が使用されても良い。ウォーターマーキングの概念は、オーディオデータ、静止画像データ、ビデオデータ、テキストデータなどの多様な種類の有用データについて、これまでも文献で議論されてきた。
【0006】
以下に、「ウォーターマーキング」という概念が議論されている幾つかの参照文献を挙げる。しかし、ウォーターマーキングに関する更なる詳細について、教本や発行文献が幅広い分野に亘って存在することに注目されたい。
【0007】
特許文献1は、オーディオデータの中に非可聴データ信号を導入する符号化方法と、オーディオ信号の中に非可聴形式で含まれたデータ信号を復号化する方法とを開示している。オーディオ信号の中に非可聴データ信号を導入する符号化方法は、オーディオ信号をスペクトルドメインへと変換するステップを含む。この符号化方法は、オーディオ信号のマスキング閾値を決定するステップと、疑似ノイズ信号を準備するステップとをさらに含む。この符号化方法は、データ信号を提供し、疑似ノイズ信号にそのデータ信号を乗算することで、周波数拡散されたデータ信号を得るステップをさらに含む。この符号化方法は、拡散データ信号をマスキング閾値で重み付けし、オーディオ信号とその重み付きデータ信号とをオーバーラップさせるステップをさらに含む。
【0008】
さらに、特許文献2は、ラジオステーション若しくはテレビチャネルによって放送されるか又は媒体に録音されたプログラムを、そのプログラムの音声信号に対して非可聴的に符号化されたメッセージを追加することで、自動的に識別する方法および装置を開示している。そのメッセージにより、放送チャネル若しくはステーション、プログラム及び/又は正確な日付を識別できる。この文献に開示された実施形態においては、音声信号はアナログ/デジタル変換器を介してデータ処理器へと伝送され、そのデータ処理器は、周波数成分を分割し、周波数成分の幾つかに含まれるエネルギーを所定の方法で変更し、符号化済みの識別メッセージを形成する。データ処理器の出力は、デジタル/アナログ変換器によってオーディオ出力へと接続され、その音声信号が放送又は録音される。この文献に記載された他の実施形態では、音声信号からある周波数帯域を分割するためにアナログ帯域通過が使用され、分割された帯域内のエネルギーが音声信号を符号化するために変更されても良い。
【0009】
特許文献3は、少なくとも1つの符号周波数成分を持つ符号をオーディオ信号の中に含ませる装置および方法を開示している。オーディオ信号内の様々な周波数成分の、人間の聴覚に対して符号周波数成分をマスクする能力が評価され、それらの評価に基づいてある振幅が符号周波数成分へと割り当てられる。符号化されたオーディオ信号内の符号を検出する方法及び装置も開示されている。符号成分の周波数を含むオーディオ周波数の範囲内において期待される符号振幅またはノイズ振幅に基づいて、符号化されたオーディオ信号内の符号周波数成分が検出される。
【0010】
特許文献4は、放送又は録音されるセグメントを符号化/復号化し、かつそのセグメントに対する聴衆露出をモニターする方法および装置を開示している。放送又は録音されるセグメント信号の中の情報を符号化および復号化する方法並びに装置も開示されている。この文献で開示された実施形態では、聴衆モニターシステムが、拡散スペクトル符号化を使用して、放送又は録音されるセグメントのオーディオ信号部分の中の識別情報を符号化する。モニター装置は、放送又は録音された信号の音響的な再現バージョンをマイクロホンを介して受信し、有意な周囲環境ノイズに関わらずそのオーディオ信号部分から識別情報を復号化し、この情報を記憶する。このとき自動的に聴衆メンバーのためのダイアリーを供給し、このダイアリーは後に中央設備へとアップロードされる。個別のモニター装置は、放送された信号からの追加的な情報を復号化し、これが中央設備における聴衆ダイアリー情報と照合される。このモニターは、ダイアルアップ電話ラインを使用して中央設備に対して同時にデータを送信しても良く、拡散スペクトル技術を用いて符号化され第3者から送られた信号を用いて変調された信号を介し、中央設備からのデータを受信する。
【0011】
特許文献5は、オーディオ信号内に符号を含ませかつ復号化する装置および方法を開示する。少なくとも1つの符号周波数成分を持つ符号を、オーディオ信号の中に含ませる装置および方法が開示されている。オーディオ信号内の様々な周波数成分の、人間の聴覚に対して符号周波数成分をマスクする能力が評価され、それらの評価に基づいてある振幅が符号周波数成分へと割り当てられる。符号化されたオーディオ信号内の符号を検出する方法及び装置も開示されている。符号成分の周波数を含むオーディオ周波数の範囲内において期待される符号振幅またはノイズ振幅に基づいて、符号化されたオーディオ信号内の符号周波数成分が検出される。
【0012】
しかし、公知のウォーターマーキング・システムでは、ビット誤差レートが不十分であることが多い。また、例えば非常に長い拡散シーケンスが使用された場合などには、復号化の複雑度が非常に高いことも多い。加えて、幾つかの従来システムは、歪みの狭帯域ソース及び/又は歪みのパルス状ソースによって、ウォーターマーク済み信号の歪みに対して敏感である。
【先行技術文献】
【特許文献】
【0013】
【特許文献1】ドイツ特許第19640814C2
【特許文献2】WO93/07689
【特許文献3】米国特許第5450490号
【特許文献4】WO94/11989
【特許文献5】WO95/27349
【非特許文献】
【0014】
【非特許文献1】E. Zwicker, H. Fastl, “Psychoacoustics Facts and models”
【発明の概要】
【発明が解決しようとする課題】
【0015】
そこで、本発明の目的は、良好な伝送信頼性をもってビットを符号化及び復号化する概念を提供することである。
【課題を解決するための手段】
【0016】
この目的は、請求項1に記載のウォーターマーク生成器、請求項8又は9に記載のウォーターマーク復号器、請求項13に記載のバイナリーメッセージデータに基づいてウォーターマーク信号を提供する方法、請求項14に記載のウォーターマーク済み信号に基づいてバイナリーメッセージデータを提供する方法及び請求項15に記載のコンピュータプログラムによって達成される。
【0017】
本発明に従うある実施形態は、バイナリーメッセージデータに基づいてウォーターマーク信号を提供するウォーターマーク生成器を提供する。このウォーターマーク生成器は、1つのメッセージビットに基づいて、1セットの時間−周波数−ドメイン値の形式でそのメッセージビットを表現する2次元拡散済み情報を提供する情報処理器を含む。ウォーターマーク生成器は、2次元拡散済み情報に基づいてウォーターマーク信号を提供するウォーターマーク信号提供器をさらに含む。
【0018】
本発明の鍵となる知見は、ウォーターマーク信号の形式でバイナリーメッセージデータの1ビットを伝送する際の信頼性は、その1つのメッセージビットを時間と周波数との両方において拡散することで有意に向上する、という知見である。この方法では、特に高度な冗長性が達成される。また、多くの典型的な歪みのソースは狭帯域であるか又は(パルス状の)短期間であるため、ウォーターマーク信号を損なうような典型的な歪みのソースに対する良好なロバスト性が得られる。つまり、1つのメッセージビットを表現する2次元拡散済み情報を提供することで、その1つのメッセージビットの情報が複数の周波数帯域で伝送されることになり、その結果、(狭帯域歪み信号又は伝送関数ゼロなどの)狭帯域歪みがそのビットの正確な検出を妨害することが一般的になくなる。さらに、そのビットを記述している情報が複数の時間区間に亘って分散されるため、1つの時間区間又は(その1ビット情報が拡散された時間区間の数よりも有意に少ない)少数の時間区間だけに影響を与えるような短いクリックタイプ(パルス状)の歪みが、良好な信頼性を持ってメッセージを回復させる機会を排除してしまうということを一般的に防止できる。
【0019】
要約すれば、本発明で説明する概念は、ウォーターマーク復号器側において、バイナリーメッセージデータの1ビットを正確に受け取るためのより高い信頼性を提供する。
【0020】
本発明の一実施形態によれば、情報処理器は第1拡散シーケンスを使用して第1拡散方向へメッセージビットを拡散することで中間情報表現を取得し、その中間情報表現とオーバーレイ情報表現とを結合することで結合済み情報表現を取得し、その結合済み情報表現を第2拡散シーケンスを使用して第2拡散方向へ拡散することで2次元拡散済み情報を取得する。このように混合した概念、即ちメッセージビットと(例えば同期情報などの)オーバーレイ情報とを周波数方向に拡散するためには個別の拡散シーケンスを使用し、他方、時間方向に拡散するためには共通の拡散シーケンスを使用するという概念を用いることで、符号化を促進させると同時に、メッセージビットと(例えば同期情報などの)オーバーレイ情報とを正しく分離する可能性を維持できる。この概念によれば、そのオーバーレイ情報が同期情報である場合には、特に信頼性の高い同期を達成できる。その場合、バイナリーメッセージデータと同期情報との両方が共通の時間拡散シーケンスを使用して符号化されたことが特に有利となる。なぜなら、同期を達成するためには、復号器において時間的な逆拡散(despreading)が複数の選択位置に関して実行されなければならないからである。バイナリーメッセージデータとオーバーレイ情報の一例である同期情報との両方に対して同一の時間拡散シーケンスを使用することで、演算量を低減でき、同期が容易になる。
【0021】
本発明の好適な一実施形態においては、情報処理器は、中間情報表現と、オーバーレイ情報拡散シーケンスを使用して第1拡散方向に拡散されたオーバーレイ情報表現とを結合し、ここで、メッセージビットとオーバーレイ情報とは第1拡散方向においては異なる拡散シーケンスを用いて拡散され、かつそのメッセージビットとオーバーレイ情報との結合は第2拡散方向においては共通の拡散シーケンスを用いて拡散される。
【0022】
本発明の好適な一実施形態においては、情報処理器は、中間情報表現とオーバーレイ情報表現とを乗算的(multiplicatively)に結合し、かつ中間情報表現の値とオーバーレイ情報表現の値とに基づいて形成された積の値を含む結合済み情報表現を、第2拡散シーケンスを使用して第2拡散方向に拡散し、前記積の値が共通の拡散シーケンスを使用して拡散される。中間情報表現とオーバーレイ情報表現との乗算的な結合が特に有利な理由は、もし中間情報表現及び/又はオーバーレイ情報表現の要素の大きさ又は絶対値がバイナリーメッセージデータから独立している場合には、このような結合によって、結合済み情報表現の値にデータ依存的なエネルギーがもたらされるからである。このため、結合済み情報表現を、例えばオーディオ信号などの有用信号の中に非可聴で埋め込むことが容易になる。さらに、共通の拡散シーケンスを積の値に適用することで、後段で説明するような簡素な復号化が可能になる。
【0023】
本発明の好適な一実施形態においては、情報処理器は、所与のメッセージビットを第1拡散方向に拡散するために、前記所与のメッセージビットを当該ビットの値に基づいて、ビット拡散シーケンスの正の倍数である第1ビット表現、又はビット拡散シーケンスの負の倍数である第2ビット表現のいずれかの上に、選択的に拡散するよう構成されている。前記所与のメッセージビットの異なる値を、それに線形的に依存する拡散シーケンス上へと拡散することで、1つのコリレーションで十分となり、復号化が促進される。
【0024】
本発明の好適な一実施形態においては、情報処理器は、メッセージビットを第1拡散方向に拡散することで得られた中間情報表現の所与の値か、又はメッセージビットを第1拡散方向に拡散しかつその結果をオーバーレイ情報表現と結合することで得られた結合済み情報表現の所与の値かのいずれかを、拡散値のセットの上にマップし、その拡散値のセットは、前記所与の値に従ってスケールされた第2拡散シーケンスのスケール済みバージョンとなるよう構成されている。第2拡散方向においてそのような拡散を使用することで、拡散パターンは非常に低い複雑度および最小演算量によっても取得できる。この場合、第1方向の拡散と第2方向の拡散とは実質的に独立して実行されるため、符号器側の拡散器は単純な構成を持つことができ、さらに復号器側の逆拡散器も単純な構成を持つことができる。特に、符号器側において時間方向と周波数方向とにおける別々の拡散が実行できるため、演算上の複雑度を有意に低減することができ、オーバーレイ情報の導入が可能となる。復号器側においては、ウォーターマーク済み信号の時間−周波数−ドメイン表現を2次元パターン全体へとコリレートする必要がない。むしろ、時間方向と周波数方向とを別々のステップでコリレーションを実行することで十分である。
【0025】
本発明の好適な一実施形態は、ウォーターマーク済み信号に基づいてバイナリーメッセージデータを提供するウォーターマーク復号器を提案する。このウォーターマーク復号器は、ウォーターマーク済み信号の時間−周波数−ドメイン表現を提供する時間−周波数−ドメイン表現提供器と、逆拡散器を含む同期決定器とを備える。この逆拡散器は、1つ又は複数の逆拡散ブロックを含み、前記時間−周波数−ドメイン表現の2次元部分に基づいて2次元逆拡散を実行し、同期情報を得るよう構成されている。このウォーターマーク復号器は、同期情報を使用してウォーターマーク信号の時間−周波数−ドメイン表現からバイナリーメッセージデータを抽出するウォーターマーク抽出器をさらに備えている。
【0026】
本発明の他の好適な実施形態は、ウォーターマーク済み信号に基づいてバイナリーメッセージデータを提供するウォーターマーク復号器を提案する。このウォーターマーク復号器は、ウォーターマーク済み信号の時間−周波数−ドメイン表現を提供する時間−周波数−ドメイン表現提供器と、1つ又は複数の逆拡散ブロックを持つ逆拡散器を含むウォーターマーク抽出器とを備える。この逆拡散器は、前記時間−周波数−ドメイン表現の2次元部分に基づいて2次元逆拡散を実行し、バイナリーメッセージデータの1ビットを得るよう構成されている。
【0027】
本発明に従う後者2つの実施形態は、2次元逆拡散を実行することで、同期とバイナリーメッセージデータの1ビットとの両方が良好な精度および信頼性を持って獲得できるという知見に基づいている。これにより、ウォーターマーク復号器は、ウォーターマーク生成器に関して上述した利点を実現できるようになる。
【0028】
本発明の好適な一実施形態においては、逆拡散器は、時間−周波数−ドメイン表現の複数の値と時間逆拡散シーケンスの値とを乗算し、その乗算結果を加算して時間的に逆拡散された値を取得する。逆拡散器は、時間−周波数−ドメイン表現の異なる周波数に関連する時間的に逆拡散された複数の値又はその値から導出された値と、周波数逆拡散シーケンスとを要素毎に乗算し、かつその乗算結果を加算して2次元的に逆拡散された値を得るよう構成されている。この実施形態は、特に簡素で実現が容易な逆拡散の概念を提供し、そこでは、時間的逆拡散が周波数的逆拡散から独立して実行される。つまり、ウォーターマーク復号器は、例えば多数の要素を再利用可能である一方で、良好な性能と高い信頼性を提供できるような、相対的に単純なハードウエア構成を有することができる。
【0029】
本発明の好適な一実施形態においては、逆拡散器は、1セットの時間的に逆拡散された値を得ることができる。逆拡散器は、時間−周波数−ドメイン表現の複数の値と時間逆拡散シーケンスの値とを乗算し、かつその乗算結果を加算して時間的に逆拡散された値の1つを得る。逆拡散器はまた、時間的に逆拡散された値と周波数逆拡散シーケンスの値とを要素毎に乗算し、かつその乗算結果を加算して2次元的に逆拡散された値を得るよう構成されている。
【0030】
本発明の好適な一実施形態においては、逆拡散器は、時間的に逆拡散された値の連続するセットと互いに異なる周波数逆拡散シーケンスの値とを要素毎に乗算し、ここで、時間的に逆拡散された値の第1セットが、共通の周波数逆拡散シーケンスと第1オーバーレイ逆拡散シーケンスとの積である第1の結合済み周波数逆拡散シーケンスと、要素毎にかつ1又は複数の乗算ステップによって乗算される。さらに、時間的に逆拡散された値の第2セットが、共通の周波数逆拡散シーケンスと第2オーバーレイ逆拡散シーケンスとの積である第2の結合済み周波数逆拡散シーケンスと、要素毎にかつ1又は複数の乗算ステップによって乗算される。第1オーバーレイ逆拡散シーケンスと第2オーバーレイ逆拡散シーケンスとは異なるものである。この概念に従えば、ビットの整列(alignment)を識別できる一方で、データコンテンツの抽出を合理的に簡素に維持することができる。周波数逆拡散シーケンスのうちの1つが可変であり、他の周波数逆拡散シーケンスが固定であるため、可能性のある結合の数は少数に保つことができる。他方、異なる時間部分については異なる周波数逆拡散シーケンスを使用することで、時間的な整列が決定されても良い。
【0031】
本発明の他の実施形態は、バイナリーメッセージデータに基づいてウォーターマーク信号を提供する方法と、ウォーターマーク済み信号に基づいてバイナリーメッセージデータを提供する方法を提供する。さらに、本発明の幾つかの実施形態は、それらの方法の1つ又は両方を実行するコンピュータプログラムを提供する。それらの方法およびコンピュータプログラムは、上述の装置と同様の知見に基づいているため、上述の説明はこれらにも当てはまる。
【図面の簡単な説明】
【0032】
【図1】本発明の一実施形態に従うウォーターマーク挿入器のブロック概略図を示す。
【図2】本発明の一実施形態に従うウォーターマーク復号器のブロック概略図を示す。
【図3】本発明の一実施形態に従うウォーターマーク生成器の詳細なブロック概略図を示す。
【図4】本発明の実施形態の中で使用する変調器の詳細なブロック概略図を示す。
【図5】本発明の実施形態の中で使用する聴覚心理処理モジュールの詳細なブロック概略図を示す。
【図6】本発明の実施形態の中で使用する聴覚心理モデル処理器のブロック概略図を示す。
【図7】ブロック801により出力されたオーディオ信号のパワースペクトルを周波数から見たグラフを示す。
【図8】ブロック802により出力されたオーディオ信号のパワースペクトルを周波数から見たグラフを示す。
【図9】振幅計算のブロック概略図を示す。
【図10A】変調器のブロック概略図を示す。
【図10B】時間−周波数ドメインから見た係数の位置を示すグラフである。
【図11A】同期モジュールの一例のブロック概略図を示す。
【図11B】同期モジュールの他の例のブロック概略図を示す。
【図12A】ウォーターマークの時間的整列を見つける際の問題を示すグラフである。
【図12B】ウォーターマークのメッセージスタートを識別する際の問題を示すグラフである。
【図12C】全体メッセージ同期モードにおける同期シーケンスの時間的整列を示すグラフである。
【図12D】部分メッセージ同期モードにおける同期シーケンスの時間的整列を示すグラフである。
【図12E】同期モジュールの入力データを示すグラフである。
【図12F】同期ヒットを識別する概念を示すグラフである。
【図12G】同期署名(synchronization signature)コリレータを示すブロック概略図である。
【図13A】時間的逆拡散の例を示すグラフである。
【図13B】ビットと拡散シーケンスとの間の要素毎の乗算の例を示すグラフである。
【図13C】時間的平均化の後の同期署名コリレータの出力を示すグラフである。
【図13D】同期署名の自己相関関数(auto-correlation function)によりフィルタ処理された同期署名コリレータの出力を示すグラフである。
【図14】本発明の実施形態に従うウォーターマーク抽出器のブロック概略図である。
【図15】候補メッセージとしての時間−周波数−ドメイン表現の一部の選択を示す概略図である。
【図16】分析モジュールのブロック概略図である。
【図17A】同期コリレータの出力を示すグラフである。
【図17B】復号化されたメッセージを示すグラフである。
【図17C】ウォーターマーク済み信号から抽出された同期位置を示すグラフである。
【図18A】ペイロード、ビタビ終端シーケンス(Viterbi termination sequence)を持つペイロード、ビタビ符号化されたペイロード、ビタビ符号化されたペイロードの反復符号化されたバージョンを示すグラフである。
【図18B】ウォーターマーク済み信号を埋め込むために使用されるサブキャリアを示すグラフである。
【図19】符号化されていないメッセージ、符号化されたメッセージ、同期メッセージ及び同期シーケンスがメッセージに適用されたウォーターマーク信号を示すグラフである。
【図20】所謂「ABC同期」の概念の第1ステップの概略図である。
【図21】所謂「ABC同期」の概念の第2ステップを示すグラフである。
【図22】所謂「ABC同期」の概念の第3ステップを示すグラフである。
【図23】ペイロードとCRC部分とを含むメッセージを示すグラフである。
【図24】本発明の他の実施形態に従うウォーターマーク生成器のブロック概略図である。
【図25A】本発明の他の実施形態に従うウォーターマーク復号器のブロック概略図である。
【図25B】本発明の他の実施形態に従うウォーターマーク復号器のブロック概略図である。
【図26】バイナリーメッセージデータに基づいてウォーターマーク信号を提供する方法のフローチャートを示す。
【図27】ウォーターマーク済み信号に基づいてバイナリーメッセージデータを提供する方法のフローチャートを示す。
【発明を実施するための形態】
【0033】
次に、本発明に従う実施の形態を、添付の図面を参照して詳しく説明する。
【0034】
1. ウォーターマーク生成器
1.1 図24に従うウォーターマーク生成器
本発明に従うウォーターマーク生成器のブロック概略図である図24を参照しながら、ウォーターマーク生成器2400について説明する。ウォーターマーク生成器2400はバイナリーメッセージデータ2410を受信し、それに基づいてウォーターマーク信号2420を提供する。ウォーターマーク生成器は情報処理器2430を含み、この情報処理器2430は、バイナリーメッセージデータ2410の1つのメッセージビットに基づいて、1セットの時間−周波数−ドメイン値の形式でメッセージビットを表現する2次元拡散済み情報2432を出力する。ウォーターマーク生成器2400はウォーターマーク信号提供器2440をさらに含み、このウォーターマーク信号提供器2440は、2次元拡散済み情報2432に基づいてウォーターマーク信号2420を出力する。
【0035】
ウォーターマーク生成器2400は、後段の第3章においてより詳細に説明する特徴及び機能のいずれかによって補足されても良い。
【0036】
1.2 図26に従うバイナリーメッセージデータに基づいてウォーターマーク信号を提供する方法
本発明に従うフローチャートを示す図26を参照しながら、バイナリーメッセージデータに基づいてウォーターマーク信号を提供する方法について説明する。
【0037】
図26に示す方法2600は、バイナリーメッセージデータの1つのメッセージビットに基づいて、1セットの時間−周波数−ドメイン値の形式でメッセージビットを表現する2次元拡散済み情報を提供するステップ2610を含む。方法2600は、2次元拡散済み情報に基づいてウォーターマーク信号を提供するステップ2620をさらに含む。
【0038】
当然ながら、方法2600は、本願明細書において、本発明の装置についての説明にある特徴及び機能のいずれかによって補足されても良い。
【0039】
2. ウォーターマーク復号化
2.1 図25aに従うウォーターマーク復号器
以下に、本発明に従うウォーターマーク復号器のブロック概略図である図25aを参照しながら、ウォーターマーク復号器2500について説明する。
【0040】
ウォーターマーク復号器2500は、ウォーターマーク済み信号2510に基づいてバイナリーメッセージデータ2520を提供する。ウォーターマーク復号器2500は、ウォーターマーク済み信号の時間−周波数−ドメイン表現2532を提供する、時間−周波数−ドメイン表現提供器2530を含む。ウォーターマーク復号器2500は、同期決定器2540をさらに含む。この同期決定器2540は、1つ又は複数の逆拡散ブロックを持つ逆拡散器2542を含む。逆拡散器2542は、時間−周波数−ドメイン表現2532の2次元部分に基づいて2次元逆拡散を実行し、同期情報2544を得る。ウォーターマーク復号器2500は、同期情報2544を使用して、ウォーターマーク済み信号の時間−周波数−ドメイン表現2532からバイナリーメッセージデータ2520を抽出するウォーターマーク抽出器2550をさらに備える。
【0041】
当然ながら、ウォーターマーク復号器2500は、本願明細書におけるウォーターマーク復号化についての説明に記載したいずれかの手段及び機能によって補足されても良い。
【0042】
2.2 図25bに従うウォーターマーク復号器
以下に、本発明に従うウォーターマーク復号器のブロック概略図である図25bを参照しながら、ウォーターマーク復号器2560について説明する。
【0043】
ウォーターマーク復号器2560は、ウォーターマーク信号2570を受信し、それに基づいて、バイナリーメッセージデータ2580を提供する。ウォーターマーク復号器2560は、ウォーターマーク信号2570の時間−周波数−ドメイン表現2592を提供する、時間−周波数−ドメイン表現提供器2590を含む。ウォーターマーク復号器は、逆拡散器2598を含むウォーターマーク抽出器2596をさらに含む。逆拡散器は時間−周波数−ドメイン表現2592の2次元部分に基づいて2次元逆拡散を実行し、バイナリーメッセージデータの1つのビットを得る。
【0044】
当然ながら、ウォーターマーク復号器2560は、本願明細書におけるウォーターマーク復号器についての説明にあるいずれかの手段及び機能によって補足されても良い。
【0045】
2.3 図27に従うウォーターマーク済み信号に基づいてバイナリーメッセージデータを提供する方法
以下に、本発明に従う方法のフローチャートを示す図27を参照しながら、ウォーターマーク済み信号に基づいてバイナリーメッセージデータを提供する方法2700について説明する。
【0046】
方法2700は、ウォーターマーク済み信号の時間−周波数−ドメイン表現を提供するステップ2710を含む。さらに方法2700は、時間−周波数−ドメイン表現の2次元部分に基づいて2次元逆拡散を実行し、ウォーターマーク済み信号の時間−周波数−ドメイン表現からバイナリーメッセージデータの1つのビット又はバイナリーメッセージデータを抽出するために使用される同期情報を得るステップ2720をさらに含む。
【0047】
当然ながら、この方法2700は、本願明細書におけるウォーターマーク復号器についての説明に記載されたいずれかの特徴及び機能によって補足されても良い。
【0048】
3. システムの説明
以下に、ウォーターマーク挿入器とウォーターマーク復号器とを含む、ウォーターマーク伝送のためのシステムについて説明する。当然ながら、ウォーターマーク挿入器とウォーターマーク復号器とは、互いに独立して使用されても良い。
【0049】
システムの説明については、ここではトップダウンの手法を選択した。まず、符号器と復号器との違いを明確にする。次に、第3.1章から第3.5章において、各処理ブロックを詳細に説明する。
【0050】
システムの基本的な構成は、符号器側を示す図1と復号器側を示す図2とに示される。図1はウォーターマーク挿入器100のブロック概略図を示す。符号器側では、(ウォーターマーク生成器とも呼ばれる)処理ブロック101の中で、聴覚心理処理モジュール102と交換される情報104及び105に基づいて、バイナリーデータ101aからウォーターマーク信号101bが生成される。ブロック102から提供される情報は、典型的にはウォーターマークが非可聴であることを保証する。ウォーターマーク生成器101により生成されたウォーターマークは、次にオーディオ信号106へと加算される。ウォーターマーク済み信号107は、その後伝送され、記憶され又は更なる処理を受けることができる。例えばオーディオ・ビデオ・ファイルのようなマルチメディア・ファイルの場合には、オーディオ・ビデオ同期を失わないように、ビデオストリームに適切な遅延を加える必要がある。マルチチャネル・オーディオ信号の場合には、各チャネルは本願明細書で説明するように分離して処理される。処理ブロックである101(ウォーターマーク生成器)と102(聴覚心理処理モジュール)とについては、第3.1章及び第3.2章においてそれぞれ説明する。
【0051】
復号器側については、ウォーターマーク復号器200のブロック概略図である図2を参照して説明する。例えばマイクロホンによって録音されたウォーターマーク済み信号200aが、システム200に対して使用可能である。分析モジュールとも呼ばれる第1のブロック203が、(例えばウォーターマーク済みのオーディオ信号である)入力データを時間/周波数ドメインで復調かつ変換し、(それによりウォーターマーク済みのオーディオ信号200aの時間−周波数−ドメイン表現204を取得して)同期モジュール201へと送る。この同期モジュール201は入力信号204を分析し、時間的同期化を実行する。即ち、符号化されたデータの時間的整列(例えば符号化されたウォーターマークデータの時間−周波数−ドメイン表現に関する時間的整列など)を決定する。この情報(例えば結果として得られる同期情報205)はウォーターマーク抽出器202へと送られ、この抽出器202がデータを復号化し、その結果、ウォーターマーク済みのオーディオ信号200aのデータコンテンツを表現するバイナリーデータ202aを出力する。
【0052】
3.1 ウォーターマーク生成器101
図3はウォーターマーク生成器101の詳細を示す。オーディオ信号106の中に隠されるべき(±1として示される)バイナリーデータ101aが、ウォーターマーク生成器101へと入力される。ブロック301はデータ101aを同一長Mpを持つパケットに整える。信号化の目的で、各パケットに対してオーバーヘッド・ビットが(例えば付加される状態で)加えられる。ここでは、Msがそれらオーバーヘッド・ビットの数を示すことにする。それらの使用方法は第3.5章において詳細に説明する。以下の説明においては、ペイロード・ビットの各パケット及び信号オーバーヘッド・ビットが、ここで云うメッセージであることに留意されたい。
【0053】
長さNm=Ms+Mpを有する各メッセージ301aは、処理ブロック302即ちチャネル符号器へと送られ、このチャネル符号器は、エラーに対する保護のためのビットを符号化する役割を果たす。このモジュールの可能性のある実施形態として、インターリーバーを伴う畳み込み符号器が挙げられる。この畳み込み符号器の比率が、ウォーターマーキング・システムの対エラー保護の全体的な程度に大きな影響を与える。他方、インターリーバーは、ノイズバーストに対する保護をもたらす。このインターリーバーの操作範囲は1個のメッセージに限定することもできるが、より多数のメッセージに拡大することもできる。ここでは、Rcが符号比率、例えば1/4を示すと仮定する。この場合には、各メッセージについて符号化されたビット数はNm/Rcとなる。チャネル符号器302は、例えば符号化されたバイナリーメッセージ302aを提供する。
【0054】
次の処理ブロック303は、周波数ドメインで拡散を実行する。十分な信号対雑音比を達成するために、情報(例えばバイナリーメッセージ302a)は、Nf個の注意深く選択されたサブバンドへと拡散されて伝送される。周波数におけるそれらサブバンドの正確な位置は事前に決定され、符号器と復号器との両方に既知となっている。この重要なシステム・パラメータの選択に関する詳細は第3.2.2章において述べる。周波数における拡散は、Nf×1のサイズを持つ拡散シーケンスcfによって決定される。ブロック303の出力303aはNf個のビットストリームを持ち、各ビットストリームは各サブバンドに1個ずつ対応している。i番目のビットストリームは、入力ビットを拡散シーケンスcfのi番目の成分と乗算することで得られる。最も単純な拡散は、ビットストリームを各出力ストリームへとコピーすること、即ち全て1から成る拡散シーケンスを使用することである。
【0055】
ブロック304、即ち同期スキーム挿入器とも呼ばれるブロックは、ビットストリームに対して同期信号を追加する。復号器にはビット及びデータ構造のいずれの時間的整列も既知でないため、即ち、いつメッセージがスタートするかが分からないため、ロバストな同期が重要である。同期信号はそれぞれNf個のビットのNs個のシーケンスから成る。シーケンスは要素毎にかつ周期的にビットストリーム(又はビットストリーム303a)に対して乗算される。例えば、ここではa,b,cをNs=3個の(同期拡散シーケンスとも呼ばれる)同期シーケンスであると仮定する。その場合、ブロック304は、aを第1の拡散ビットに乗算し、bを第2の拡散ビットに乗算し、cを第3の拡散ビットに乗算する。後続のビットに対しては、処理は周期的に反復される。つまり、aを第4のビットに乗算し、bを第5のビットに乗算するという調子で続いてゆく。このようにして、結合された情報−同期情報304aが得られる。(同期拡散シーケンスとも呼ばれる)同期シーケンスは、誤った同期のリスクを最小限にするために注意深く選択される。より詳細な説明を第3.4章で述べる。また、シーケンスa,b,c,...は、同期拡散シーケンスとして考えられても良いことに留意すべきである。
【0056】
ブロック305は時間ドメインで拡散を実行する。入力における各拡散済みのビット、即ち長さNfのベクトルが時間ドメインでNt回反復される。周波数における拡散と同様に、ここではNt×1のサイズを持つ拡散シーケンスctを定義する。i番目の時間的反復は、ctのi番目の成分と乗算される。
【0057】
ブロック302〜305の操作を以下のような数学的表現に置き換えることができる。ここで、1×Nm=Rcのサイズを持つmが符号化済のメッセージであり、ブロック302の出力であると仮定する。その場合、(拡散済みの情報表現Rとして考えられても良い)ブロック303の出力303aは次式で表すことができ、
結合済み情報同期表現Cと考えられても良いブロック304の出力304aは、
となり、ここで、〇はシュール要素毎の積(Schur element-wise product)を示し、
となる。
【0058】
ブロック305の出力305aは、
となり、ここで、◇と上付き文字Tとは、クロネッカーの積(Kronecker product)と転値(transpose)とをそれぞれ示す。バイナリーデータは±1として表現されることを思い出して頂きたい。
【0059】
ブロック306はビットの差分符号化を実行する。このステップにより、システムは、移動又はローカルな発振器のミスマッチに起因する位相シフトに対するロバスト性が一段と高くなる。この点に関する詳細は、第3.3章で説明する。仮にb(i;j)を、ブロック306の入力におけるi番目の周波数帯域及びj番目の時間ブロックのためのビットであるとした場合、出力ビットbdiff(i;j)は次式で示される。
【0060】
ストリームの開始点において、即ちj=0において、bdiff(i;j−1)は1に設定される。
【0061】
ブロック307は実際の変調を実行する。即ち、その入力に与えられたバイナリー情報306aに基づいてウォーターマーク信号波形を生成する。この点に関しては図4で詳細に説明する。Nf個の並行入力である401〜40Nfは、異なるサブバンドについてのビットストリームを含む。各サブバンドストリームの各ビットは、ビット成形ブロック(411〜41Nf)によって処理される。これらビット成形ブロックの出力は、時間ドメインの波形である。j番目の時間ブロックのi番目のサブバンドについて生成された波形は、si,j(t)で示され、入力ビットbdiff(i;j)に基づいており、次式のように計算される。
ここで、γ(i;j)は聴覚心理処理ユニット102によって提供される重み付けファクタであり、Tbはビットの時間区間であり、gi(t)はi番目のサブバンドについてのビット形成関数である。ビット形成関数は、次式のコサインを用いて周波数変調されたベースバンド関数giT(t)から得られたものであり、
ここで、fiはi番目のサブバンドの中央周波数であり、上付き文字Tは送信機を表している。ベースバンド関数は各サブバンドについて異なっていても良い。もし同一であると選択された場合には、復号器においてより効果的な構成が可能となる。詳細については、第3.3章を参照されたい。
【0062】
各ビットのためのビット成形は、聴覚心理処理モジュール(102)によって制御される反復的な処理の中で繰り返される。ウォーターマークを非可聴に維持しながらできるだけ大きなエネルギーを割り当てるためには、反復によって重みγ(i;j)を細かく調節することが必要である。第3.2章においてより詳細に説明する。
【0063】
i番目のビット成形フィルタ41iの出力における完全な波形は次式で示される。
【0064】
ビット形成ベースバンド関数giT(t)は、Tbよりも格段に大きい時間区間については通常は非ゼロであるが、主エネルギーはそのビット区間内に集中している。図12aはその一例を示し、2つの隣接するビットについて同一のビット形成ベースバンド関数をプロットしたものである。この図の中では、Tb=40ミリ秒である。Tb及び関数の形状の選択は、システムに対して重大な影響を与える。事実、より長いシンボルは、より狭い周波数応答を提供する。この点は、残響のある環境において特に有利である。事実、そのようなシナリオでは、ウォーターマーク済み信号は、各々が異なる伝播時間によって特徴づけられた複数の伝播経路を介してマイクホンに到達する。結果として得られるチャネルは、強い周波数選択性を示す。時間ドメインの観点では、より長いシンボルは有利である。なぜなら、ビット区間に匹敵する遅延を有するエコーは、積極的な干渉をもたらすからである。つまり、それらは受信された信号エネルギーを増大させる。しかし、長いシンボルには幾分かの欠点も存在する。即ち、長いオーバーラップはシンボル間干渉(ISI)をもたらす可能性もあり、かつオーディオ信号内に隠すことは確実に困難である。そのため、聴覚心理処理モジュールは、長いシンボルに対し、短いシンボルよりも少ないエネルギーしか許可しないであろう。
【0065】
ウォーターマーク信号は、次式のようにビット成形フィルタの全ての出力を合計することで取得される。
【0066】
3.2 聴覚心理処理モジュール102
図5に示すように、聴覚心理処理モジュール102は3つの部分から成る。第1のステップは分析モジュール501であり、時間オーディオ信号を時間/周波数ドメインへと変換する。この分析モジュールは、異なる時間/周波数分解能で並行分析を実行しても良い。この分析モジュールの次に、時間/周波数データは聴覚心理モデル(PAM)502へと送られる。ここでは、ウォーターマーク信号のためのマスキング閾値が聴覚心理的な考察(非特許文献1を参照)に従って計算される。そのマスキング閾値は、各サブバンド及び時間ブロックのためのオーディオ信号の中に隠すことができるエネルギーの量を示す。聴覚心理処理モジュール102の最後のブロックは、振幅計算モジュール503である。このモジュールは、マスキング閾値が満足されるように、即ち埋め込まれたエネルギーがマスキング閾値によって定義されるエネルギー以下になるように、ウォーターマーク信号の生成に使用されるべき振幅ゲインを決定する。
【0067】
3.2.1 時間/周波数分析501
ブロック501は、オーディオ信号の時間/周波数変換をラップされた変換を用いて実行する。多数の時間/周波数分解能が実行されたときに、最高のオーディオ品質が達成される。ラップされた変換の1つの効果的な実施例は短時間フーリエ変換(STFT)であり、これは窓処理された時間ブロックの高速フーリエ変換(FFT)に基づくものである。窓の長さは時間/周波数分解能を決定し、長い窓は低い時間分解能及び高い周波数分解能をもたらし、短い窓は高い時間分解能及び低い周波数分解能をもたらす。他方、窓の形状は周波数漏れなどを決定する。
【0068】
提案システムのために、データを2つの異なる分解能で分析することで、非可聴ウォーターマークが達成される。第1のフィルタバンクは、Tbのホップサイズ、即ちビット長により特徴付けられる。このホップサイズは2つの隣接する時間ブロックの間の時間区間である。窓の長さは略Tbである。この窓の形状はビット成形に使用されたものと同一である必要はなく、また、一般的には人間の聴覚システムをモデルすべきものである点に注意されたい。この問題点に関しては、多数の文献において研究されている。
【0069】
第2のフィルタバンクはより短い窓関数を適用する。スピーチの中にウォーターマークを埋め込む場合には、高い時間的分解能を達成することが特に重要である。なぜなら、その時間的構造は一般的にTbよりも細かいからである。
【0070】
入力オーディオ信号のサンプリングレートは、それがウォーターマーク信号をエイリアシング無しで記述できる程度に十分に大きい限りは、重要ではない。例えば、もしウォーターマーク信号に含まれる最大周波数成分が6kHzである場合には、時間信号のサンプリングレートは少なくとも12kHzでなければならない。
【0071】
3.2.2 聴覚心理モデル502
聴覚心理モデル502は、マスキング閾値を決定するという役割を持つ。即ち、ウォーターマーク済みのオーディオ信号が元の信号から区別できないように維持しながら、各サブバンド及び時間ブロックのためのオーディオ信号の中に隠すことができる、エネルギーの量を決定する。
【0072】
i番目のサブバンドは、2つの限界、即ちfi(min)とfi(max)との間で決定される。サブバンドは、Nf個の中央周波数fiを定義し、かつi=2,3,...,Nfについて、fi-1(max)=fi(min)となるようにすることで決定される。中央周波数の適切な選択は、ツイッカー(Zwicker)により1961年に提案されたバークスケール(Bark scale)により与えられる。サブバンドは、より高い中央周波数に対してはより大きくなる。このシステムの可能性のある一実施例では、適切な方法で配置された1.5〜6kHzの範囲の9個のサブバンドが使用される。
【0073】
後続の処理ステップは、各サブバンド及び各時間ブロックのための各時間/周波数分解能について別々に実行される。処理ステップ801は、スペクトル平滑化を実行する。事実、調性的要素(tonal elements)およびパワースペクトル内のノッチは平滑化する必要がある。これは幾つかの方法で実行可能である。調性値(tonality measure)を計算し、次にその値を使用して適応型の平滑化フィルタを駆動しても良い。代替的に、このブロックのより単純な実施例においては、メディアン状フィルタを使用しても良い。そのメディアンフィルタは、値のベクトルを考慮し、それらのメディアン値を出力する。メディアン状フィルタでは、50%以外の分位点(quantile)に対応する値を選択することができる。フィルタ幅はHzで定義され、低周波数から開始して最高限度の周波数で終了する非線形移動平均として適用される。ステップ801の操作を図7に示す。赤色の曲線は平滑化の出力を示す。
【0074】
平滑化が一旦実行されると、閾値がブロック802によって周波数マスキングだけを考慮して計算される。この場合にも別の可能性が存在する。1つの方法は、各サブバンドの最小値を用いてマスキングエネルギーEiを計算する方法である。これはマスキングを効果的に操作する信号の実効エネルギーである。この値から、所定のスケーリングファクタを単純に乗算して、マスクされたエネルギーJiを得ることができる。これらのファクタは各サブバンド及び時間/周波数分解能について異なり、経験的な聴覚心理的実験を通して取得される。これらのステップは図8で示す。
【0075】
ブロック805では、時間マスキングが考慮される。この場合、同一のサブバンドに関する異なる時間ブロックが分析される。マスクされたエネルギーJiは、経験的に導出されたポストマスキング・プロファイルに従って修正される。ここで、2つの隣接する時間ブロック、即ちk−1及びkについて考察する。対応するマスクされたエネルギーはJi(k−1)及びJi(k)である。ポストマスキング・プロファイルは、例えば、マスキングエネルギーEiがエネルギーJiを時刻kでマスクし、エネルギーα・Jiを時刻k+1でマスクできると定義する。この場合、ブロック805は(現在の時間ブロックによりマスクされたエネルギーである)Ji(k)と、(先行する時間ブロックによりマスクされたエネルギーである)α・Ji(k+1)とを比較し、最大値を選択する。ポストマスキング・プロファイルは文献でも紹介されており、経験的な聴覚心理的実験を通して取得されてきた。大きなTb、即ち20ミリ秒を超えるTbについては、短時間窓関数を伴う時間/周波数分解能に対してのみポストマスキングが適用されることに注意されたい。
【0076】
要約すれば、ブロック805の出力においては、2つの異なる時間/周波数分解能に関して得られた各サブバンド毎及び時間ブロック毎のマスキング閾値を得る。それらの閾値は、周波数マスキング現象と時間マスキング現象との両方を考慮して取得されてきたものである。ブロック806では、異なる時間/周波数分解能のための閾値が融合される。例えば、1つの実施例の可能性としては、1ビットが割り当てられた時間区間及び周波数区間に対応する全ての閾値をブロック806が考慮し、最小値を選択することが挙げられる。
【0077】
3.2.3 振幅計算ブロック503
図9を参照しながら説明する。ブロック503への入力は、聴覚心理に基づく全ての計算を実行する聴覚心理モデル502から出力された閾値505である。この振幅計算器503においては、その閾値を用いた追加的な計算が実行される。第1に、振幅マッピング901が行われる。このブロックは、(通常はエネルギーとして表現される)マスキング閾値を単に振幅へと変換するだけであり、その振幅は、第3.1章で定義したビット成形関数をスケールするために使用できるものである。その後、振幅適応ブロック902が使用される。このブロックは、ウォーターマーク生成器101の中でビット成形関数を乗算するために使用される振幅γ(i,j)を、マスキング閾値が確実に満たされるように繰り返し適応させる。事実、上述したように、ビット成形関数は、通常はTbよりも長い時間区間に亘って延びる。従って、点 i,j においてマスキング閾値を満たす正確な振幅γ(i,j)を乗算することが、点 i, j−1 において必ずしも条件を満たすことにはならない。この点は、前エコーが可聴になるため、強いオンセットにおいては特に重大である。回避すべきもう一つの状況は、異なるビットの尾部が不運にも重畳し、可聴のウォーターマークをもたらすことである。そのため、ブロック902はウォーターマーク生成器によって生成された信号を分析し、閾値が満たされたかどうかをチェックする。もし満たされていない場合には、振幅γ(i,j)を適切に修正する。
【0078】
符号器側の説明は以上である。後段では(ウォーターマーク復号器とも呼ばれる)受信器において実行される処理ステップについて説明する。
【0079】
3.3 分析モジュール203
分析モジュール203はウォーターマーク抽出処理の最初のステップ(又はブロック)である。その目的は、ウォーターマーク済みのオーディオ信号200aを、(符号204でも示される)Nf 個のビットストリーム
(各スペクトルサブバンドiについて1個ずつ)へと戻し変換することである。これらには、同期モジュール201及びウォーターマーク抽出器202により、第3.4章及び第3.5章でそれぞれ説明するように、更なる処理が施される。
はソフト・ビットストリームであり、即ち、それらは例えばいかなる実数値をとることもでき、ビットに関する硬判定(hard decision)が未だ行なわれていないことに注意すべきである。
【0080】
分析モジュールは、図16に示す3つの部分、即ち分析フィルタバンク1600と、振幅正規化ブロック1604と、差分復号化1608とから成る。
【0081】
3.3.1 分析フィルタバンク1600
ウォーターマーク済みのオーディオ信号は、図10aにその詳細を示す分析フィルタバンク1600によって、時間−周波数−ドメインへと変換される。このフィルタバンクの入力は、受信されたウォーターマーク済みのオーディオ信号r(t)である。その出力は、時刻jにおけるi番目の分枝又はサブバンドのための複素係数biAFB(j)である。これらの値は、中央周波数fi及び時刻j・Tbにおける信号の振幅と位相についての情報を含む。
【0082】
フィルタバンク1600はNf個の分枝で構成され、各分枝が各スペクトルサブバンドiに対応している。各分枝は、スペクトルサブバンドiについて、同相成分(in-phase component)のための上側サブ分枝と、直交成分(quadrature component)のための下側サブ分枝とに分割される。ウォーターマーク生成器における変調とウォーターマーク済みのオーディオ信号とは純粋に実数値であるが、チャネルと同期の整列ミスとにより導入された変調信号空間(modulation constellation)の回転は受信器においては既知ではないため、受信器における複素値の分析が必要となる。後段においては、フィルタバンクのi番目の分枝について考察する。同相及び直交のサブ分枝を結合することで、複素値のベースバンド信号複素係数biAFB(t)を次式のように定義できる。
ここで、*は畳み込みを示し、giR(t)はサブバンドiの受信器低域通過フィルタのインパルス応答を示す。通常は、マッチされたフィルタ条件を満たすために、giR(t)i(t)は変調器307内のサブバンドiのベースバンドビット形成関数giT(t)に等しいが、他のインパルス応答も可能である。
【0083】
レート1=Tbで係数biAFB(j)を得るために、連続的な出力biAFB(t)をサンプリングしなければならない。もし仮に、正確なタイミングが受信器において既知であったとすれば、レート1=Tbでサンプリングすることで十分だったであろう。しかし、実際にはビット同期は既知ではないために、レートNos/Tbでサンプリングが実行され、ここで、Nosは分析フィルタバンク・オーバーサンプリング・ファクタである。(例えばNos=4のように)Nosを十分に大きい値に選択することで、少なくとも1つのサンプリング・サイクルが理想的なビット同期に十分近いことが保証できる。最適なオーバーサンプリング・レイヤは、同期プロセスの途中で決定されるため、オーバーサンプリングされた全てのデータはその時点まで維持される。このプロセスは第3.4章で説明する。
【0084】
i番目の分枝の出力において係数biAFB(j,k)を持ち、ここでjはビット番号又は時刻を示し、kはこの1ビット内のオーバーサンプリング位置を示し、k=1,2,...,Nosである。
【0085】
図10bは時間-周波数平面上の係数の位置を示す例示的な全体像である。オーバーサンプリング・ファクタはNos=2である。長方形の高さ及び幅は、対応する係数biAFB(j,k)により表現される信号部分の帯域及び時間区間をそれぞれ示す。
【0086】
もしサブバンド周波数 fi が所定区間Δfの倍数となるように選択される場合には、分析フィルタバンクは高速フーリエ変換(FFT)を用いて効果的に構成することができる。
【0087】
3.3.2 振幅正規化1604
一般化を損なわずかつ説明を簡素化する目的で、以下においてはビット同期が既知でありかつNos=1であると仮定する。つまり、正規化ブロック1604の入力においては複素の係数biAFB(j)を持つ。受信器においてはチャネル状態の情報が何もない(即ち伝播チャネルが既知でない)ために、等利得合成(equal gain combining: EGC)スキームが使用される。時間および周波数の分散的なチャネルに起因して、送られたビットbi(j)のエネルギーは、中央周波数fi及び時刻jの周囲だけではなく、隣接する周波数および時刻においても見つけられる。従って、より精確な重み付けのために、周波数fi±nΔf における追加的な係数が計算され、係数biAFB(j)の正規化のために使用される。もしn=1であるならば、例えば次式となる。
【0088】
n>1についての正規化は、上述の式の単純な拡張である。同様にして、2つ以上の時刻について考慮することで、ソフトビットを正規化することを選択できる。このような正規化が各サブバンドi及び各時刻jについて実行される。EGCの実際の合成は、抽出プロセスにおける更に後のステップにおいて実行される。
【0089】
3.3.3 差分符号化1608
差分符号化ブロック1608には、周波数fi及び時刻jにおける信号要素の位相についての情報を含む、振幅正規化された複素係数binorm(j)が入力される。ビットは送信機において差分符号化されているため、ここでは逆の操作が実行されなければならない。ソフトビット
は、まず2つの連続する係数の位相における差異を計算し、次に、その実数部分を取ることで得られる。
【0090】
伝送チャネルは通常、各サブバンドにおいて異なる位相回転を導入するため、この計算は各サブバンドについて個別に実行する必要がある。
【0091】
3.4 同期モジュール201
同期モジュールの役割は、ウォーターマークの時間的同期を見つけることである。符号化済みのデータに対して復号器を同期化する問題は、2つのステップで構成される。第1のステップでは、分析フィルタバンクは符号化済みのデータに対して整列しなければならない。即ち、変調器の中で合成に使用されるビット成形関数giT(t)は、分析のために使用されたフィルタgiR(t)と整列しなければならない。この問題は図12aに示す。ここでは、分析フィルタは合成フィルタと同一である。図の上方において、3個のビットを示す。簡素化する目的で、これら全3個のビットのための波形はスケールされていない。異なるビットの間の時間的オフセットはTbである。図の下方は、復号器における同期の問題を表している。即ち、フィルタは異なる時刻で適用可能であるが、しかし、赤線(曲線1299a)で示された位置だけが正確であり、第1のビットを最高の信号対雑音比SNRと信号対干渉比SIRとを用いて抽出することが可能となる。事実、不正確な整列はSNRとSIRとの両方を低下させるおそれがある。ここでは、この第1の整列を「ビット同期」と呼ぶ。一旦ビット整列が達成されたならば、ビットは最適に抽出される。しかし、メッセージを正確に復号化するためには、どのビットにおいて新たなメッセージがスタートするかについて知ることが必要となる。この問題については図12bにおいて示し、メッセージ同期と呼ぶ。復号化されたビットのストリームの中では、赤線(位置1299b)で示されたスタート位置だけが正確であり、k番目のメッセージを復号化することが可能である。
【0092】
先に、メッセージ同期についてだけ説明する。同期署名は、第3.1章で説明したように、ウォーターマーク内に連続的かつ周期的に埋め込まれた、所定の順序のNs個のシーケンスで構成される。同期モジュールは、同期シーケンスの時間的整列を回復(retrieve)することができる。サイズNsに基づいて、図12cと図12dにそれぞれ示す2つの操作モードを区別することができる。
【0093】
全体メッセージ同期モード(図12c)においては、Ns=Nm/Rcである。この図では、簡素化するために、Ns=Nm/Rc=6であって、時間的拡散はなし、即ちNt=1であると仮定する。使用される同期署名は、説明のためにメッセージの下方に示す。現実には、第3.1章で説明したように、それらメッセージは符号化されたビットと周波数拡散シーケンスとに基づいて変調される。このモードでは、同期署名の周期長(periodicity)はメッセージの周期長と同一である。そのため、同期モジュールは、同期署名の時間的整列を見つけることで、各メッセージの開始を確認することができる。新たな同期署名が同期ヒットとしてスタートする時間的位置に注目されたい。同期ヒットは、次にウォーターマーク抽出器202へと送られる。
【0094】
可能性のある第2のモードとしての部分的メッセージ同期モードを図12bに示す。この場合には、Ns<Nm=Rcである。この図では、Ns=3であると仮定する。即ち、3個の同期シーケンスが各メッセージについて2回繰り返される。メッセージの周期長は同期署名の周期長の倍数である必要はない点に注意されたい。この操作モードにおいては、全ての同期ヒットがメッセージの開始に対応する訳ではない。同期モジュールはヒット間を区別する手段を持たず、この役割はウォーターマーク抽出器202に委ねられる。
【0095】
同期モジュールの処理ブロックは図11aと図11bに示す。同期モジュールは、同期署名コリレータ1201の出力1201aを分析することで、ビット同期および(全体または部分的な)メッセージ同期を一度に実行する。時間/周波数ドメインのデータ204は分析モジュールによって提供される。ビット同期はまだ有効ではないため、第3.3章で説明したように、ブロック203はファクタNosを用いてデータをオーバーサンプリングする。入力データを図12eに示す。この例においては、Nos=4、Nt=2、Ns=3であると仮定する。換言すれば、同期署名は(a,b,cで示す)3個のシーケンスから成る。この場合には、拡散シーケンスct=[1 1]Tを用いた時間拡散は、時間ドメインで各ビットを単純に2回ずつ繰り返す。正確な同期ヒットは矢印で示され、各同期署名の開始に対応する。同期署名の周期は、Nt・Nos・Ns=Nsblであり、例えば2・4・3=24である。同期署名の周期により、同期署名コリレータ(1201)は任意に時間軸をブロックへと分割する。このブロックはサーチブロックと呼ばれ、サイズはNsblであり、その下付き文字がサーチブロックの長さを表している。図12fに示すように、各サーチブロックは、1つの同期ヒットを含まなければならない(又は典型的に含んでいる)。Nsbl個のビットの各々が同期ヒットの候補である。ブロック1201の役割は、各ブロックの各候補ビットについて尤度(likelihood measure)を計算することである。この情報1201aは、次に同期ヒットを演算するブロック1204へと送られる。
【0096】
3.4.1 同期署名コリレータ1201
Nsbl個の同期位置の候補の各々について、同期署名コリレータが尤度を計算する。その尤度が大きければ大きい程、(ビット同期と部分又は全体メッセージ同期との両方の)時間的整列が見つかった可能性が高くなる。この処理ステップを図12gで示す。
【0097】
このようにして、異なる選択位置に関する尤度のシーケンス1201aを得ることができる。
【0098】
ブロック1301は時間的逆拡散を実行する。即ち、Nt個の各ビットを時間拡散シーケンスctと乗算し、その後それらを合計する。これはNf個の周波数帯域の各々について実行される。図13aに一例を示す。前述した例と同一のパラメータを使用する。即ち、Nos=4、Nt=2、Ns=3である。同期位置の候補には印をつけてある。そのビットから、Nosのオフセットを用いてNt・Nsがブロック1301で取得され、更にシーケンスctを用いて時間逆拡散され、その結果、Ns個のビットが残される。
【0099】
ブロック1302では、ビットは要素毎にNs個の拡散シーケンスと乗算される(図13bを参照)。
【0100】
ブロック1303では、周波数逆拡散が実行される。つまり、各ビットが拡散シーケンスcfと乗算され、その後、周波数に沿って合計される。
【0101】
このとき、仮に同期位置が正確であったとすると、Ns個の復号化されたビットを得るであろう。そのビットは受信器には知られていないので、ブロック1304は、Ns個の値と合計との絶対値を取ることで、尤度を計算する。
【0102】
ブロック1304の出力は、原則的には同期署名を探求する非干渉性コリレータの出力となる。事実、小さなNsを選択した場合、即ち部分的メッセージ同期モードを選択した場合、互いに直交する同期シーケンス(例えばa,b,c)を使用することが可能となる。そうすることで、コリレータが署名と正確に整列していない場合、その出力が非常に小さくなり、理想的にはゼロとなる。全体的なメッセージ同期モードを使用する場合、できるだけ多数の直交同期シーケンスを使用し、次にそれらが使用された順序を注意深く選択することで、署名を作成することが望ましい。この場合、拡散シーケンスを良好な自己相関関数で探求するときと同じ理論を適用できる。コリレータが僅かに整列ミス状態であるときは、コリレータの出力は理想的な場合であってもゼロではなくなるが、しかしいずれにしても、分析フィルタが信号エネルギーを最適状態では獲得できないため、完全な整列状態に比べて小さくなるであろう。
【0103】
3.4.2 同期ヒットの計算1204
このブロックは同期署名コリレータの出力を分析し、同期位置がどこにあるのかを決定する。このシステムがTb/4までのミス整列に対して相当にロバストであり、Tbが通常は約40ミリ秒であることから、ブロック1201の出力を時間に亘って積分し、より安定的な同期を達成することが可能である。この実施例として可能性のあるものは、時間に沿って適用され、インパルス応答を指数関数的に減衰させる、IIR(無限インパルス応答)フィルタである。代替的に、伝統的なFIR移動平均フィルタも使用できる。平均化が一旦実行されると、異なるNt・Nsに沿った第2のコリレーション(「異なる選択位置」)が実行される。実際には、同期関数の自己相関関数が既知であるという情報を活用する。これが、最尤推定量(Maximun Likelihood estimator)に対応する。この考え方を図13cに示す。この曲線は、時間積分後のブロック1201の出力を示す。同期ヒットを決定するための1つの可能性のある方法は、この関数の最大値を見つけることである。図13dには、同期署名の自己相関関数でフィルタ処理された同じ関数(黒色)を示す。結果として得られる関数を赤線で示す。この場合、最大値がより明確化され、同期ヒットの位置が明確になる。2つの方法の結果は高いSNRの状況下では相当に類似しているが、低いSNRの状況下では第2の方法が格段に良好である。同期ヒットが発見された後は、ウォーターマーク抽出器202へと送られ、そこでデータが復号化される。
【0104】
本発明の幾つかの実施形態では、ロバストな同期信号を得るために、短い同期署名を用いた部分的メッセージ同期モードで同期が実行される。そのため、多くの復号化を実行する必要があり、また偽陽性(false positive) のメッセージ検出を冒すリスクが高まってしまう。これを防止するため、本発明の幾つかの実施形態では、信号化シーケンスをより低いビットレートを持つメッセージの中に挿入しても良い。
【0105】
この手法は、メッセージよりも短い同期署名から起こる問題に対する解決法であり、強化された同期についてこれまで説明した。この場合、復号器は新たなメッセージがどこでスタートするかが分からず、複数の同期ポイントにおいて復号化しようと試みる。真正なメッセージと偽陽性のメッセージとを区別するため、本発明の幾つかの実施例においては、ある信号語を使用する(即ち、既知の制御シーケンスを埋め込むためにペイロードが犠牲となる)。幾つかの実施例においては、真正なメッセージと偽陽性のメッセージとの間を区別するために、(代替的又は追加的に)真偽性(plausibility)チェックが使用される。
【0106】
3.5 ウォーターマーク抽出器202
ウォーターマーク抽出器202を構成する部分について図14を参照しながら説明する。この抽出器は2つの入力、即ちブロック203からの入力204とブロック201からの入力205とを持つ。同期モジュール201(第3.4章を参照)は同期タイムスタンプ、即ち候補メッセージがスタートする時間ドメインの位置を提供する。この点については、第3.4章でより詳細に説明している。他方、分析フィルタバンク・ブロック203は、復号化される準備が整ったデータを時間/周波数ドメインで提供する。
【0107】
第1の処理ステップであるデータ選択ブロック1501は、復号化されるべき候補メッセージとして認識される部分を入力204から選択する。図15bはこの過程を図式的に示す。入力204は実数値のNf個のストリームで構成される。時間的整列は復号器には事前に知られていないため、分析ブロック203は1/TbHzよりも高いレートで周波数分析(オーバーサンプリング)を実行する。図15bではオーバーサンプリング・ファクタを4とした。即ち、サイズNf×1の4個のベクトルがTb秒毎に出力される。同期ブロック201が候補メッセージを認識したときに、同期ブロック201は候補メッセージのスタート点を示すタイムスタンプ205を交付する。選択ブロック1501は復号化に必要な情報、即ちサイズNf×Nm/Rcの行列を選択する。この行列1501aは更なる処理のためにブロック1502へと送られる。
【0108】
ブロック1502,1503,1504は、第3.4章で説明したブロック1301,1302,1303と同じ操作を実行する。
【0109】
本発明の代替的な実施形態では、復号化されるべきデータもまた同期モジュールから提供させることで、ブロック1502〜1504の計算を省略している。概念上、それは些細なことである。実装の観点から見れば、それはバッファがどのように実現されるかという問題に過ぎない。一般的には、計算を再度実行することで、より小さなバッファを使用することができる。
【0110】
チャネル復号器1505はブロック302の逆の操作を実行する。もし、このモジュールの可能性のある実施例のチャネル符号器がインターリーバを伴う畳み込み符号器で構成されている場合には、チャネル復号器はデ・インターリービング及び畳み込み復号化を、例えば公知のビタビ・アルゴリズムなどを用いて実行する。このブロックの出力において、Nmビット、即ち候補メッセージを得る。
【0111】
ブロック1506、即ち信号化および真偽性のチェックブロックは、入力された候補メッセージが実際にメッセージか否かを決定する。これを実行するためには、様々な方法が可能である。
【0112】
基本的な考え方は、(CRCシーケンスのような)信号語を使用して真正なメッセージと偽のメッセージとの間を区別することである。しかしこれは、ペイロードとして使用可能なビット数を減少させてしまう。代替的に、真偽性のチェックを使用できる。もし、例えばメッセージがタイムスタンプを含んでいる場合には、連続的なメッセージは連続的なタイムスタンプを持っているはずである。もし、復号化されたメッセージが不正確な順序のタイムスタンプを持っている場合には、それを除外することができる。
【0113】
メッセージが正確に検出されてきた場合には、システムは、ルックアヘッド及び/又はルックバックの機能を適用するよう選択しても良い。このとき、ビット同期とメッセージ同期との両方が達成されたと推定する。ユーザーがザッピングしていないと想定して、システムは時間的に「ルックバック」し、(もしまだ復号化されていない場合には)過去のメッセージを同じ同期ポイントを用いて復号化しようと試みる(ルックバックの手法)。この手法は、システムの開始時において特に有用である。さらに、悪い条件下では、同期を達成するために2個のメッセージが必要となるかもしれない。その場合には、1番目のメッセージにはチャンスがない。ルックバックを選択することで、バック同期のみに起因して受信されてこなかった「良好な」メッセージを救うことができる。ルックアヘッドも同様であるが、将来に関して有益である。現時点でメッセージがあれば、次のメッセージがどこにあるべきかが分かり、いずれかの方法でそれを復号化しようと試みることができる。
【0114】
3.6 同期の詳細
ペイロードを符号化するために、例えばビタビ・アルゴリズムを使用しても良い。図18aは、ペイロード1810と、ビタビ終端シーケンス1820と、ビタビ符号化済みペイロード1830と、ビタビ符号化済みペイロードの反復符号化されたバージョン1840とを図式的に示す。例えば、ペイロード長は34ビットであり、ビタビ終端シーケンスは6ビットを含んでも良い。もし、例えば1/7のビタビ符号レートを使用した場合、ビタビ符号化済みペイロードは(34+6)*7=280個のビットを含むことになる。更に、1/2の反復符号化を使用すれば、ビタビ符号化済みペイロード1830の反復符号化されたバージョン1840は、280*2=560個のビットを含むことになる。この例では、42.66ミリ秒のビット時間区間を考慮すれば、メッセージ長は23.9秒となる。この信号は、図18bに示す周波数スペクトルによって表されるような、例えば1.5〜6kHzの(例えば臨界帯域に従って配置された)9個のサブキャリアを用いて埋め込んでも良い。代替的に、0〜20kHzの周波数範囲内の他の個数(例えば4,6,12,15又は2〜20の間の数)のサブキャリアが使用されても良い。
【0115】
図19は、ABC同期とも呼ばれる同期についての基本概念1900の概略図を示す。この図は、符号化されていないメッセージ1910と、符号化されたメッセージ1920と、同期シーケンス1930と、その同期を複数のメッセージ1920へと相互連続的に適用した様子を示す。
【0116】
(図19〜図23に示す)この同期概念の説明において言及する同期シーケンスは、前述した同期署名と同一であっても良い。
【0117】
更に、図20は同期シーケンスとのコリレートによって発見される同期の概略図を示す。もし同期シーケンス1930がメッセージよりも短い場合には、2つ以上の同期ポイント1940(又は整列時間ブロック)が1つのメッセージ内で発見されても良い。図20に示す例においては、各メッセージ内に4個の同期ポイントが発見される。更に、発見された各同期について、ビタビ復号器(ビタビ復号化シーケンス)がスタートされても良い。このようにして、各同期ポイント1940について、図21に示すようなメッセージ2110が取得されても良い。
【0118】
これらのメッセージに基づいて、図22に示すように、CRCシーケンス(サイクル冗長性チェックシーケンス)及び/又は真偽性チェックを使用して、真正なメッセージ2210が識別されても良い。
【0119】
CRC検出(サイクル冗長性チェック検出)は、偽陽性のメッセージから真正のメッセージを識別するために既知のシーケンスを使用しても良い。図23は、ペイロードの終端に追加されたCRCシーケンスの例を示す。
【0120】
偽陽性(誤った同期ポイントに基づいて生成されたメッセージ)の確率は、CRCシーケンスの長さと、スタートされたビタビ復号器の数(1つのメッセージ内の同期ポイントの数)とに基づいても良い。偽陽性の確率を増大させずにペイロード長を増大させるために、真偽性が利用されても良く(真偽性テスト)、同期シーケンス(同期署名)の長さが増大されても良い。
【0121】
4. 概念及び利点
以下に、上述したシステムの幾つかの態様であって革新的であると考えられるものについて説明する。また、それらの態様と現状の技術との関係についても説明する。
【0122】
4.1 連続的な同期
幾つかの実施形態は連続的な同期を可能にする。ここでは同期署名とも呼ぶ同期信号は、伝送及び受信側の両方にとって既知である(同期拡散シーケンスとも呼ばれる)シーケンスとの乗算によって、連続的かつデータに並行して埋め込まれる。
【0123】
幾つかの従来システムでは、(データに使用されたものとは異なる)特別なシンボルを使用するが、本発明に従う幾つかの実施形態ではそのような特別なシンボルは使用しない。他の従来の方法では、データと時間的に乗算されたビットの既知のシーケンス(プリアンブル)を埋め込むか、又はデータと周波数的に乗算された信号を埋め込む方法を含む。
【0124】
しかし、同期のために専用のサブバンドを使用することは望ましくないことが分かっている。なぜなら、そのような周波数においてはチャネルがノッチを持ち、同期を実現不可能にすることがあるからである。このように、プリアンブル又は特別なシンボルがデータと時間的に乗算されるような方法に比べると、本発明の方法は、(例えば動きに基づく)同期におけるトラックチェンジを連続的に許可するという点で有利である。
【0125】
更に、ウォーターマーク信号のエネルギーは、(例えば拡散された情報表現の中へウォーターマークを乗算的に導入することなどによって)変化しない。また、同期は聴覚心理モデル及びデータレートから独立して指定できる。同期署名の時間長は、同期のロバスト性を決定するものであるが、データレートから完全に独立して自在に指定することができる。
【0126】
他の従来方法では、データとコード乗算された同期シーケンスを埋め込むことを含む。このような従来の方法と比較した場合、本発明の方法は、データのエネルギーがコリレーションの計算における干渉ファクタを表すものではないという利点があり、更なるロバスト性をもたらす。加えて、コード乗算を使用すると、同期に使用可能な直交シーケンスの幾つかはデータに必要となるため、その数が減少する。
【0127】
要約すれば、本発明の連続的な同期の手法は従来の概念に比べて多数の利点をもたらすと言える。
【0128】
しかし、本発明に従う幾つかの実施形態においては、異なる同期概念を適用しても良い。
【0129】
4.2 2次元拡散
本発明が提案するシステムの幾つかの実施形態では、時間と周波数との両方のドメインにおける拡散、即ち2次元拡散(略称は2D拡散)を実行する。この方法は、例えば時間ドメインにおいて冗長性を追加することでビット誤差レートを更に減少できるために、1Dシステムよりも有利であることが分かってきた。
【0130】
しかし、本発明に従う幾つかの実施形態においては、異なる拡散概念を適用しても良い。
【0131】
4.3 差分符号化および差分復号化
本発明に従う幾つかの実施形態では、移動又はローカルな発振器の周波数ミスマッチに対する(従来システムと比べた場合の)ロバスト性が、差分変調によってもたらされる。事実、ドップラー効果(移動)及び周波数のミスマッチは、BPSK(バイナリー位相シフト・キーイング)信号空間(constellation)(換言すればビットの複素平面における回転)をもたらす。幾つかの実施形態においては、そのようなBPSK信号空間(又は他の適切な変調信号空間)の回転の有害な影響は、差分符号化または差分復号化を用いて防止される。
【0132】
しかし、本発明の幾つかの実施形態においては、他の符号化概念または復号化概念を適用しても良い。また、幾つかの場合には、差分符号化が省略されても良い。
【0133】
4.4 ビット成形
本発明の幾つかの実施形態においては、ビット成形によってシステム性能が有意に向上する。なぜなら、ビット成形に適応したフィルタを使用することで、検出の信頼性が向上するからである。
【0134】
幾つかの実施形態に従えば、ウォーターマーキングに関してビット成形を使用することで、ウォーターマーキング処理の信頼性が向上する。ビット成形関数がビット区間よりも長い場合には、特に良好な結果が得られることが判明してきた。
【0135】
しかし、本発明の幾つかの実施形態においては、異なるビット成形概念を適用しても良い。また、ある場合には、ビット成形が省略されても良い。
【0136】
4.5 聴覚心理モデル(PAM)とフィルタバンク(FB)合成との間の双方向性
本発明の幾つかの実施形態においては、ビットに乗算される振幅を微調整するために、聴覚心理モデルと変調器とが相互に作用する。
【0137】
しかし、実施形態によっては、この相互作用が省略されても良い。
【0138】
4.6 ルックアヘッド及びルックバックの特徴
幾つかの実施形態においては、所謂「ルックバック」及び「ルックアヘッド」の手法が適用される。
【0139】
以下に、これらの概念について簡単に説明する。メッセージが正確に復号化されたとき、同期が達成されたと推定される。ユーザーがザッピングしていないと想定して、幾つかの実施形態では、時間におけるルックバックが実行され、(もしまだ復号化されていない場合には)過去のメッセージを同じ同期ポイントを用いて復号化しようと試みる(ルックバックの手法)。この手法はシステムがスタートする時に特に有用である。
【0140】
悪い条件下では、同期を達成するために2個のメッセージが必要となるかもしれない。その場合には、従来のシステムでは1番目のメッセージにはチャンスがない。本発明の幾つかの実施形態で使用されるルックバックを選択することで、バック同期だけでは受信されなかった「良好な」メッセージを救う(復号化する)ことが可能となる。
【0141】
ルックアヘッドも同様であるが、将来において役に立つ。現時点でメッセージを有していれば、次のメッセージがどこにあるべきかを知ることができ、何らかの方法でそれを復号化しようと試みることができる。従って、オーバーラップしているメッセージを復号化することができる。
【0142】
しかし、本発明の幾つかの実施形態においては、このルックアヘッドの特徴及び/又はルックバックの特徴も省略されても良い。
【0143】
4.7 優位な同期ロバスト性
本発明の幾つかの実施形態においては、ロバストな同期信号を得るために、短い同期署名を用いた部分メッセージ同期モードで同期が実行される。そのため、多くの復号化が実行されなければならなくなり、また偽陽性のメッセージ検出を冒すリスクが高まってしまう。これを防止するため、本発明の幾つかの実施形態では、より低いビットレートを持つメッセージの中に信号化シーケンスを挿入しても良い。
【0144】
しかし、本発明に従う幾つかの実施形態においては、同期のロバスト性を高める他の概念を適用しても良い。また、幾つかの例においては、同期のロバスト性を高める概念を使用することが省略されても良い。
【0145】
4.8 他の優位点
以下に、背景技術との比較における、上述したシステムの他の一般的な優位点について説明する。
1. 計算上の低い複雑度
2. 良好な聴覚心理モデルに基づく良好なオーディオ品質
3. 狭帯域マルチキャリア信号に基づいた残響環境における良好なロバスト性
4. SNR推定が省略される実施形態もある。この場合、特に低いSNR環境においてより良好なロバスト性が得られる。
【0146】
本発明に従う幾つかの実施形態は、例えば8Hzの非常に狭い帯域を使用する従来システムよりも、以下の理由で優位である。
1. 8Hzの帯域(又は同様の非常に狭い帯域)は非常に長い時間シンボルを必要とする。なぜなら、聴覚心理モデルはシンボルを非可聴とするためのエネルギーを非常に僅かしか許可しないからである。
2. 8Hz(又は同様の非常に狭い帯域)は、経時的に変化するドップラースペクトルに対してシンボルを敏感にする。従って、そのような狭帯域システムは、例えば腕時計の中などに実装された場合に、一般的に十分良好とは云えない。
【0147】
本発明に従う幾つかの実施形態は、他の技術に比べて以下の理由で優位である。
1. エコーを導入する技術は、残響室の中では完全に失敗となる。反対に、本発明の幾つかの実施形態では、エコーの導入を防止できる。
2. 例えば時間と周波数との両方における2次元拡散が使用されるような、上述した本発明のシステムの実施形態と比較すれば、時間拡散だけを使用する技術では、メッセージ持続時間が長くなる。
【0148】
本発明に従う幾つかの実施形態は、特許文献1に開示されたシステムに比べて優位である。なぜなら、特許文献1に従うシステムの以下に記載する欠点の1つ又は複数が克服されているからである。
・ 特許文献1に従う復号器の複雑度は非常に高く、長さ2Nで、N=128であるフィルタが使用されている。
・ 特許文献1に従うシステムは、長いメッセージ持続時間を持つ。
・ 特許文献1に従うシステムでは、比較的高い拡散ゲイン(例えば128)を用いた時間ドメインでの拡散だけである。
・ 特許文献1に従うシステムでは、信号は時間ドメインで生成され、スペクトルドメインへと変換され、重み付けされ、時間ドメインへと逆変換され、オーディオへと重畳される。そのため、システムが非常に複雑となる。
【0149】
5. アプリケーション
本発明は、デジタルデータを隠すためにオーディオ信号を修正する方法と、この情報を回復できる対応する復号器とを含み、修正されたオーディオ信号の知覚品質が、元のオーディオ信号の知覚品質と区別できないものである。
【0150】
本発明の可能性のあるアプリケーションの例を以下に示す。
1. 放送モニタリング: 例えばステーションや時間に関する情報を含むウォーターマークが、ラジオ番組やテレビ番組のオーディオ信号の中に隠されている。テスト被験者が身につけた小型装置の中に組み込まれた復号器が、そのウォーターマークを回復することができる。このようにして、広告業者にとって価値のある情報、即ち誰がどの番組をいつ見たのかという情報を収集する。
2. 監査(Auditing):ウォーターマークが例えば広告などに隠される。所定のステーションの伝送状況を自動的にモニターすることで、いつその広告が放送されたかを正確に知ることができる。同様の方法で、異なるラジオの番組スケジュールについての統計的情報、例えば所定の楽曲がどのくらいの頻度で演奏されたかなどの情報を取り出すことができる。
3. メタデータの埋め込み:本発明が提案する方法は、楽曲又は番組についてのデジタル情報、例えば楽曲の名前や作者または番組の持続時間などを隠すために使用できる。
【0151】
6. 代替的な構成
本発明の幾つかの態様を装置の文脈において説明してきたが、これらの態様は対応する方法の説明をも表すものであり、そこではブロックまたは装置が、方法の各段階または方法の各段階の特徴に相当することが明らかである。同様に、方法の各段階の文脈において説明した態様は、対応する装置の対応するブロック若しくは項目又は特徴の説明をも表すものである。上述した方法ステップの幾つか又は全ては、例えばマイクロプロセッサ、プログラム可能なコンピュータ又は電子的回路のような、ハードウエア装置(又はその使用)によって実行されても良い。幾つかの実施形態では、重要な方法ステップの1つ又は複数がそのような装置によって実行されても良い。
【0152】
本発明の符号化済みのウォーターマーク信号またはウォーターマークが埋め込まれたオーディオ信号は、デジタル記憶媒体に記憶することも、又はインターネットのような無線伝送媒体若しくは有線伝送媒体などの伝送媒体を介して伝送することもできる。
【0153】
所定の構成要件にも依るが、本発明の実施形態は、ハードウエア又はソフトウエアにおいて構成可能である。この構成は、その中に格納される電子的に読み取り可能な制御信号を有し、本発明の各方法が実行されるようにプログラム可能なコンピュータシステムと協働する(又は協働可能な)、デジタル記憶媒体、例えばフレキシブルディスク,DVD,ブルーレイ,CD,ROM,PROM,EPROM,EEPROM,フラッシュメモリなどを使用して実行することができる。従って、そのデジタル記憶媒体はコンピュータ読み取り可能であっても良い
【0154】
本発明に従う実施形態の幾つかは、上述した方法の1つを実行するようプログラム可能なコンピュータシステムと協働可能で、電子的に読み取り可能な制御信号を有するデータキャリアを含んでも良い。
【0155】
一般的に、本発明の実施例は、コンピュータプログラム製品として構成することができ、このプログラムコードは当該コンピュータプログラム製品がコンピュータ上で作動するときに、本発明の方法の1つを実行するよう作動する。そのプログラムコードは例えば機械読み取り可能なキャリアに記憶されても良い。
【0156】
本発明の他の実施形態は、上述した方法の1つを実行するための、機械読み取り可能なキャリアに記憶されたコンピュータプログラムを含む。
【0157】
換言すれば、本発明の方法のある実施形態は、そのコンピュータプログラムがコンピュータ上で作動するときに、上述した方法の1つを実行するためのプログラムコードを有する、コンピュータプログラムである。
【0158】
本発明の他の実施形態は、上述した方法の1つを実行するために記憶されたプログラムコードを含む、データキャリア(又はデジタル記憶媒体又はコンピュータ読み取り可能な媒体)である。当該データキャリア、デジタル記憶媒体又は記録済みの媒体は、典型的には実体を有し、非遷移体である。
【0159】
本発明の他の実施形態は、上述した方法の1つを実行するためのコンピュータプログラムを表現するデータストリーム又は信号シーケンスである。そのデータストリーム又は信号シーケンスは、例えばインターネットを介するデータ通信接続を介して伝送されるように構成されても良い。
【0160】
他の実施形態は、上述した方法の1つを実行するように構成又は適用された、例えばコンピュータ又はプログラム可能な論理デバイスのような処理手段を含む。
【0161】
他の実施形態は、上述した方法の1つを実行するためのコンピュータプログラムをインストールされたコンピュータを含む。
【0162】
幾つかの実施形態においては、(例えば書換え可能ゲートアレイのような)プログラム可能な論理デバイスが、上述した方法の幾つか又は全ての機能を実行するために使用されても良い。幾つかの実施形態では、書換え可能ゲートアレイは、上述した方法の1つを実行するためにマイクロプロセッサと協働しても良い。一般的に、そのような方法は、好適には、任意のハードウエア装置によって実行される
【0163】
上述した実施の形態は、本発明の原理を単に例示的に示したにすぎない。本願明細書に記載した構成及び詳細について、修正及び変更が可能であることは、当業者にとって明らかである。従って、本発明は、本願明細書に実施形態の説明及び解説として提示した具体的詳細によって限定されるものではなく、添付した特許請求の範囲によってのみ限定されるべきである。
【技術分野】
【0001】
本発明の実施形態は、バイナリーメッセージデータに基づいてウォーターマーク(電子透かし)信号を提供するウォーターマーク生成器に関する。本発明の他の実施形態は、ウォーターマーク済み信号に基づいてバイナリーメッセージデータを提供するウォーターマーク復号器に関する。本発明のさらに他の実施形態は、バイナリーメッセージデータに基づいてウォーターマーク信号を提供する方法に関する。本発明の別の実施形態は、ウォーターマーク済み信号に基づいてバイナリーメッセージデータを提供する方法に関する。本発明のさらに別の実施形態は、対応するコンピュータプログラムに関する。
【0002】
本発明の幾つかの実施形態は、ロバストで複雑度の低いオーディオ・ウォーターマーキング・システムに関する。
【背景技術】
【0003】
多くの技術的アプリケーションにおいて、例えばオーディオ信号、ビデオ信号、グラフィックス、測定量等のような有用データ又は「主データ」を表す情報又は信号の中に、追加的な情報を含ませることが望まれる。多くの場合、そのような追加的な情報は、主データ(例えばオーディオデータ、ビデオデータ、静止画像データ、測定データ、テキストデータ等)に対し、ユーザーに知覚されないような方法で結合されて含まれることが望ましい。また、幾つかの場合では、主データ(例えばオーディオデータ、ビデオデータ、静止画像データ、測定データ等)から追加的なデータを容易に取り除けないような方法で、その追加的データが含まれることが望ましい。
【0004】
上述のような需要は、デジタル著作権管理を実現することが望ましいアプリケーションにおいて、特に高くなる。しかし、有用データに対して実質的に知覚できないサイド情報を追加することが単純に望まれる場合も存在する。例えば、オーディオデータにサイド情報を追加することが望ましく、そのサイド情報には、オーディオデータのソース、オーディオデータのコンテンツ及びオーディオデータに関連する権利などが含まれる場合が挙げられる。
【0005】
有用データ又は「主データ」の中に追加データを埋め込むために、「ウォーターマーキング」と呼ばれる概念が使用されても良い。ウォーターマーキングの概念は、オーディオデータ、静止画像データ、ビデオデータ、テキストデータなどの多様な種類の有用データについて、これまでも文献で議論されてきた。
【0006】
以下に、「ウォーターマーキング」という概念が議論されている幾つかの参照文献を挙げる。しかし、ウォーターマーキングに関する更なる詳細について、教本や発行文献が幅広い分野に亘って存在することに注目されたい。
【0007】
特許文献1は、オーディオデータの中に非可聴データ信号を導入する符号化方法と、オーディオ信号の中に非可聴形式で含まれたデータ信号を復号化する方法とを開示している。オーディオ信号の中に非可聴データ信号を導入する符号化方法は、オーディオ信号をスペクトルドメインへと変換するステップを含む。この符号化方法は、オーディオ信号のマスキング閾値を決定するステップと、疑似ノイズ信号を準備するステップとをさらに含む。この符号化方法は、データ信号を提供し、疑似ノイズ信号にそのデータ信号を乗算することで、周波数拡散されたデータ信号を得るステップをさらに含む。この符号化方法は、拡散データ信号をマスキング閾値で重み付けし、オーディオ信号とその重み付きデータ信号とをオーバーラップさせるステップをさらに含む。
【0008】
さらに、特許文献2は、ラジオステーション若しくはテレビチャネルによって放送されるか又は媒体に録音されたプログラムを、そのプログラムの音声信号に対して非可聴的に符号化されたメッセージを追加することで、自動的に識別する方法および装置を開示している。そのメッセージにより、放送チャネル若しくはステーション、プログラム及び/又は正確な日付を識別できる。この文献に開示された実施形態においては、音声信号はアナログ/デジタル変換器を介してデータ処理器へと伝送され、そのデータ処理器は、周波数成分を分割し、周波数成分の幾つかに含まれるエネルギーを所定の方法で変更し、符号化済みの識別メッセージを形成する。データ処理器の出力は、デジタル/アナログ変換器によってオーディオ出力へと接続され、その音声信号が放送又は録音される。この文献に記載された他の実施形態では、音声信号からある周波数帯域を分割するためにアナログ帯域通過が使用され、分割された帯域内のエネルギーが音声信号を符号化するために変更されても良い。
【0009】
特許文献3は、少なくとも1つの符号周波数成分を持つ符号をオーディオ信号の中に含ませる装置および方法を開示している。オーディオ信号内の様々な周波数成分の、人間の聴覚に対して符号周波数成分をマスクする能力が評価され、それらの評価に基づいてある振幅が符号周波数成分へと割り当てられる。符号化されたオーディオ信号内の符号を検出する方法及び装置も開示されている。符号成分の周波数を含むオーディオ周波数の範囲内において期待される符号振幅またはノイズ振幅に基づいて、符号化されたオーディオ信号内の符号周波数成分が検出される。
【0010】
特許文献4は、放送又は録音されるセグメントを符号化/復号化し、かつそのセグメントに対する聴衆露出をモニターする方法および装置を開示している。放送又は録音されるセグメント信号の中の情報を符号化および復号化する方法並びに装置も開示されている。この文献で開示された実施形態では、聴衆モニターシステムが、拡散スペクトル符号化を使用して、放送又は録音されるセグメントのオーディオ信号部分の中の識別情報を符号化する。モニター装置は、放送又は録音された信号の音響的な再現バージョンをマイクロホンを介して受信し、有意な周囲環境ノイズに関わらずそのオーディオ信号部分から識別情報を復号化し、この情報を記憶する。このとき自動的に聴衆メンバーのためのダイアリーを供給し、このダイアリーは後に中央設備へとアップロードされる。個別のモニター装置は、放送された信号からの追加的な情報を復号化し、これが中央設備における聴衆ダイアリー情報と照合される。このモニターは、ダイアルアップ電話ラインを使用して中央設備に対して同時にデータを送信しても良く、拡散スペクトル技術を用いて符号化され第3者から送られた信号を用いて変調された信号を介し、中央設備からのデータを受信する。
【0011】
特許文献5は、オーディオ信号内に符号を含ませかつ復号化する装置および方法を開示する。少なくとも1つの符号周波数成分を持つ符号を、オーディオ信号の中に含ませる装置および方法が開示されている。オーディオ信号内の様々な周波数成分の、人間の聴覚に対して符号周波数成分をマスクする能力が評価され、それらの評価に基づいてある振幅が符号周波数成分へと割り当てられる。符号化されたオーディオ信号内の符号を検出する方法及び装置も開示されている。符号成分の周波数を含むオーディオ周波数の範囲内において期待される符号振幅またはノイズ振幅に基づいて、符号化されたオーディオ信号内の符号周波数成分が検出される。
【0012】
しかし、公知のウォーターマーキング・システムでは、ビット誤差レートが不十分であることが多い。また、例えば非常に長い拡散シーケンスが使用された場合などには、復号化の複雑度が非常に高いことも多い。加えて、幾つかの従来システムは、歪みの狭帯域ソース及び/又は歪みのパルス状ソースによって、ウォーターマーク済み信号の歪みに対して敏感である。
【先行技術文献】
【特許文献】
【0013】
【特許文献1】ドイツ特許第19640814C2
【特許文献2】WO93/07689
【特許文献3】米国特許第5450490号
【特許文献4】WO94/11989
【特許文献5】WO95/27349
【非特許文献】
【0014】
【非特許文献1】E. Zwicker, H. Fastl, “Psychoacoustics Facts and models”
【発明の概要】
【発明が解決しようとする課題】
【0015】
そこで、本発明の目的は、良好な伝送信頼性をもってビットを符号化及び復号化する概念を提供することである。
【課題を解決するための手段】
【0016】
この目的は、請求項1に記載のウォーターマーク生成器、請求項8又は9に記載のウォーターマーク復号器、請求項13に記載のバイナリーメッセージデータに基づいてウォーターマーク信号を提供する方法、請求項14に記載のウォーターマーク済み信号に基づいてバイナリーメッセージデータを提供する方法及び請求項15に記載のコンピュータプログラムによって達成される。
【0017】
本発明に従うある実施形態は、バイナリーメッセージデータに基づいてウォーターマーク信号を提供するウォーターマーク生成器を提供する。このウォーターマーク生成器は、1つのメッセージビットに基づいて、1セットの時間−周波数−ドメイン値の形式でそのメッセージビットを表現する2次元拡散済み情報を提供する情報処理器を含む。ウォーターマーク生成器は、2次元拡散済み情報に基づいてウォーターマーク信号を提供するウォーターマーク信号提供器をさらに含む。
【0018】
本発明の鍵となる知見は、ウォーターマーク信号の形式でバイナリーメッセージデータの1ビットを伝送する際の信頼性は、その1つのメッセージビットを時間と周波数との両方において拡散することで有意に向上する、という知見である。この方法では、特に高度な冗長性が達成される。また、多くの典型的な歪みのソースは狭帯域であるか又は(パルス状の)短期間であるため、ウォーターマーク信号を損なうような典型的な歪みのソースに対する良好なロバスト性が得られる。つまり、1つのメッセージビットを表現する2次元拡散済み情報を提供することで、その1つのメッセージビットの情報が複数の周波数帯域で伝送されることになり、その結果、(狭帯域歪み信号又は伝送関数ゼロなどの)狭帯域歪みがそのビットの正確な検出を妨害することが一般的になくなる。さらに、そのビットを記述している情報が複数の時間区間に亘って分散されるため、1つの時間区間又は(その1ビット情報が拡散された時間区間の数よりも有意に少ない)少数の時間区間だけに影響を与えるような短いクリックタイプ(パルス状)の歪みが、良好な信頼性を持ってメッセージを回復させる機会を排除してしまうということを一般的に防止できる。
【0019】
要約すれば、本発明で説明する概念は、ウォーターマーク復号器側において、バイナリーメッセージデータの1ビットを正確に受け取るためのより高い信頼性を提供する。
【0020】
本発明の一実施形態によれば、情報処理器は第1拡散シーケンスを使用して第1拡散方向へメッセージビットを拡散することで中間情報表現を取得し、その中間情報表現とオーバーレイ情報表現とを結合することで結合済み情報表現を取得し、その結合済み情報表現を第2拡散シーケンスを使用して第2拡散方向へ拡散することで2次元拡散済み情報を取得する。このように混合した概念、即ちメッセージビットと(例えば同期情報などの)オーバーレイ情報とを周波数方向に拡散するためには個別の拡散シーケンスを使用し、他方、時間方向に拡散するためには共通の拡散シーケンスを使用するという概念を用いることで、符号化を促進させると同時に、メッセージビットと(例えば同期情報などの)オーバーレイ情報とを正しく分離する可能性を維持できる。この概念によれば、そのオーバーレイ情報が同期情報である場合には、特に信頼性の高い同期を達成できる。その場合、バイナリーメッセージデータと同期情報との両方が共通の時間拡散シーケンスを使用して符号化されたことが特に有利となる。なぜなら、同期を達成するためには、復号器において時間的な逆拡散(despreading)が複数の選択位置に関して実行されなければならないからである。バイナリーメッセージデータとオーバーレイ情報の一例である同期情報との両方に対して同一の時間拡散シーケンスを使用することで、演算量を低減でき、同期が容易になる。
【0021】
本発明の好適な一実施形態においては、情報処理器は、中間情報表現と、オーバーレイ情報拡散シーケンスを使用して第1拡散方向に拡散されたオーバーレイ情報表現とを結合し、ここで、メッセージビットとオーバーレイ情報とは第1拡散方向においては異なる拡散シーケンスを用いて拡散され、かつそのメッセージビットとオーバーレイ情報との結合は第2拡散方向においては共通の拡散シーケンスを用いて拡散される。
【0022】
本発明の好適な一実施形態においては、情報処理器は、中間情報表現とオーバーレイ情報表現とを乗算的(multiplicatively)に結合し、かつ中間情報表現の値とオーバーレイ情報表現の値とに基づいて形成された積の値を含む結合済み情報表現を、第2拡散シーケンスを使用して第2拡散方向に拡散し、前記積の値が共通の拡散シーケンスを使用して拡散される。中間情報表現とオーバーレイ情報表現との乗算的な結合が特に有利な理由は、もし中間情報表現及び/又はオーバーレイ情報表現の要素の大きさ又は絶対値がバイナリーメッセージデータから独立している場合には、このような結合によって、結合済み情報表現の値にデータ依存的なエネルギーがもたらされるからである。このため、結合済み情報表現を、例えばオーディオ信号などの有用信号の中に非可聴で埋め込むことが容易になる。さらに、共通の拡散シーケンスを積の値に適用することで、後段で説明するような簡素な復号化が可能になる。
【0023】
本発明の好適な一実施形態においては、情報処理器は、所与のメッセージビットを第1拡散方向に拡散するために、前記所与のメッセージビットを当該ビットの値に基づいて、ビット拡散シーケンスの正の倍数である第1ビット表現、又はビット拡散シーケンスの負の倍数である第2ビット表現のいずれかの上に、選択的に拡散するよう構成されている。前記所与のメッセージビットの異なる値を、それに線形的に依存する拡散シーケンス上へと拡散することで、1つのコリレーションで十分となり、復号化が促進される。
【0024】
本発明の好適な一実施形態においては、情報処理器は、メッセージビットを第1拡散方向に拡散することで得られた中間情報表現の所与の値か、又はメッセージビットを第1拡散方向に拡散しかつその結果をオーバーレイ情報表現と結合することで得られた結合済み情報表現の所与の値かのいずれかを、拡散値のセットの上にマップし、その拡散値のセットは、前記所与の値に従ってスケールされた第2拡散シーケンスのスケール済みバージョンとなるよう構成されている。第2拡散方向においてそのような拡散を使用することで、拡散パターンは非常に低い複雑度および最小演算量によっても取得できる。この場合、第1方向の拡散と第2方向の拡散とは実質的に独立して実行されるため、符号器側の拡散器は単純な構成を持つことができ、さらに復号器側の逆拡散器も単純な構成を持つことができる。特に、符号器側において時間方向と周波数方向とにおける別々の拡散が実行できるため、演算上の複雑度を有意に低減することができ、オーバーレイ情報の導入が可能となる。復号器側においては、ウォーターマーク済み信号の時間−周波数−ドメイン表現を2次元パターン全体へとコリレートする必要がない。むしろ、時間方向と周波数方向とを別々のステップでコリレーションを実行することで十分である。
【0025】
本発明の好適な一実施形態は、ウォーターマーク済み信号に基づいてバイナリーメッセージデータを提供するウォーターマーク復号器を提案する。このウォーターマーク復号器は、ウォーターマーク済み信号の時間−周波数−ドメイン表現を提供する時間−周波数−ドメイン表現提供器と、逆拡散器を含む同期決定器とを備える。この逆拡散器は、1つ又は複数の逆拡散ブロックを含み、前記時間−周波数−ドメイン表現の2次元部分に基づいて2次元逆拡散を実行し、同期情報を得るよう構成されている。このウォーターマーク復号器は、同期情報を使用してウォーターマーク信号の時間−周波数−ドメイン表現からバイナリーメッセージデータを抽出するウォーターマーク抽出器をさらに備えている。
【0026】
本発明の他の好適な実施形態は、ウォーターマーク済み信号に基づいてバイナリーメッセージデータを提供するウォーターマーク復号器を提案する。このウォーターマーク復号器は、ウォーターマーク済み信号の時間−周波数−ドメイン表現を提供する時間−周波数−ドメイン表現提供器と、1つ又は複数の逆拡散ブロックを持つ逆拡散器を含むウォーターマーク抽出器とを備える。この逆拡散器は、前記時間−周波数−ドメイン表現の2次元部分に基づいて2次元逆拡散を実行し、バイナリーメッセージデータの1ビットを得るよう構成されている。
【0027】
本発明に従う後者2つの実施形態は、2次元逆拡散を実行することで、同期とバイナリーメッセージデータの1ビットとの両方が良好な精度および信頼性を持って獲得できるという知見に基づいている。これにより、ウォーターマーク復号器は、ウォーターマーク生成器に関して上述した利点を実現できるようになる。
【0028】
本発明の好適な一実施形態においては、逆拡散器は、時間−周波数−ドメイン表現の複数の値と時間逆拡散シーケンスの値とを乗算し、その乗算結果を加算して時間的に逆拡散された値を取得する。逆拡散器は、時間−周波数−ドメイン表現の異なる周波数に関連する時間的に逆拡散された複数の値又はその値から導出された値と、周波数逆拡散シーケンスとを要素毎に乗算し、かつその乗算結果を加算して2次元的に逆拡散された値を得るよう構成されている。この実施形態は、特に簡素で実現が容易な逆拡散の概念を提供し、そこでは、時間的逆拡散が周波数的逆拡散から独立して実行される。つまり、ウォーターマーク復号器は、例えば多数の要素を再利用可能である一方で、良好な性能と高い信頼性を提供できるような、相対的に単純なハードウエア構成を有することができる。
【0029】
本発明の好適な一実施形態においては、逆拡散器は、1セットの時間的に逆拡散された値を得ることができる。逆拡散器は、時間−周波数−ドメイン表現の複数の値と時間逆拡散シーケンスの値とを乗算し、かつその乗算結果を加算して時間的に逆拡散された値の1つを得る。逆拡散器はまた、時間的に逆拡散された値と周波数逆拡散シーケンスの値とを要素毎に乗算し、かつその乗算結果を加算して2次元的に逆拡散された値を得るよう構成されている。
【0030】
本発明の好適な一実施形態においては、逆拡散器は、時間的に逆拡散された値の連続するセットと互いに異なる周波数逆拡散シーケンスの値とを要素毎に乗算し、ここで、時間的に逆拡散された値の第1セットが、共通の周波数逆拡散シーケンスと第1オーバーレイ逆拡散シーケンスとの積である第1の結合済み周波数逆拡散シーケンスと、要素毎にかつ1又は複数の乗算ステップによって乗算される。さらに、時間的に逆拡散された値の第2セットが、共通の周波数逆拡散シーケンスと第2オーバーレイ逆拡散シーケンスとの積である第2の結合済み周波数逆拡散シーケンスと、要素毎にかつ1又は複数の乗算ステップによって乗算される。第1オーバーレイ逆拡散シーケンスと第2オーバーレイ逆拡散シーケンスとは異なるものである。この概念に従えば、ビットの整列(alignment)を識別できる一方で、データコンテンツの抽出を合理的に簡素に維持することができる。周波数逆拡散シーケンスのうちの1つが可変であり、他の周波数逆拡散シーケンスが固定であるため、可能性のある結合の数は少数に保つことができる。他方、異なる時間部分については異なる周波数逆拡散シーケンスを使用することで、時間的な整列が決定されても良い。
【0031】
本発明の他の実施形態は、バイナリーメッセージデータに基づいてウォーターマーク信号を提供する方法と、ウォーターマーク済み信号に基づいてバイナリーメッセージデータを提供する方法を提供する。さらに、本発明の幾つかの実施形態は、それらの方法の1つ又は両方を実行するコンピュータプログラムを提供する。それらの方法およびコンピュータプログラムは、上述の装置と同様の知見に基づいているため、上述の説明はこれらにも当てはまる。
【図面の簡単な説明】
【0032】
【図1】本発明の一実施形態に従うウォーターマーク挿入器のブロック概略図を示す。
【図2】本発明の一実施形態に従うウォーターマーク復号器のブロック概略図を示す。
【図3】本発明の一実施形態に従うウォーターマーク生成器の詳細なブロック概略図を示す。
【図4】本発明の実施形態の中で使用する変調器の詳細なブロック概略図を示す。
【図5】本発明の実施形態の中で使用する聴覚心理処理モジュールの詳細なブロック概略図を示す。
【図6】本発明の実施形態の中で使用する聴覚心理モデル処理器のブロック概略図を示す。
【図7】ブロック801により出力されたオーディオ信号のパワースペクトルを周波数から見たグラフを示す。
【図8】ブロック802により出力されたオーディオ信号のパワースペクトルを周波数から見たグラフを示す。
【図9】振幅計算のブロック概略図を示す。
【図10A】変調器のブロック概略図を示す。
【図10B】時間−周波数ドメインから見た係数の位置を示すグラフである。
【図11A】同期モジュールの一例のブロック概略図を示す。
【図11B】同期モジュールの他の例のブロック概略図を示す。
【図12A】ウォーターマークの時間的整列を見つける際の問題を示すグラフである。
【図12B】ウォーターマークのメッセージスタートを識別する際の問題を示すグラフである。
【図12C】全体メッセージ同期モードにおける同期シーケンスの時間的整列を示すグラフである。
【図12D】部分メッセージ同期モードにおける同期シーケンスの時間的整列を示すグラフである。
【図12E】同期モジュールの入力データを示すグラフである。
【図12F】同期ヒットを識別する概念を示すグラフである。
【図12G】同期署名(synchronization signature)コリレータを示すブロック概略図である。
【図13A】時間的逆拡散の例を示すグラフである。
【図13B】ビットと拡散シーケンスとの間の要素毎の乗算の例を示すグラフである。
【図13C】時間的平均化の後の同期署名コリレータの出力を示すグラフである。
【図13D】同期署名の自己相関関数(auto-correlation function)によりフィルタ処理された同期署名コリレータの出力を示すグラフである。
【図14】本発明の実施形態に従うウォーターマーク抽出器のブロック概略図である。
【図15】候補メッセージとしての時間−周波数−ドメイン表現の一部の選択を示す概略図である。
【図16】分析モジュールのブロック概略図である。
【図17A】同期コリレータの出力を示すグラフである。
【図17B】復号化されたメッセージを示すグラフである。
【図17C】ウォーターマーク済み信号から抽出された同期位置を示すグラフである。
【図18A】ペイロード、ビタビ終端シーケンス(Viterbi termination sequence)を持つペイロード、ビタビ符号化されたペイロード、ビタビ符号化されたペイロードの反復符号化されたバージョンを示すグラフである。
【図18B】ウォーターマーク済み信号を埋め込むために使用されるサブキャリアを示すグラフである。
【図19】符号化されていないメッセージ、符号化されたメッセージ、同期メッセージ及び同期シーケンスがメッセージに適用されたウォーターマーク信号を示すグラフである。
【図20】所謂「ABC同期」の概念の第1ステップの概略図である。
【図21】所謂「ABC同期」の概念の第2ステップを示すグラフである。
【図22】所謂「ABC同期」の概念の第3ステップを示すグラフである。
【図23】ペイロードとCRC部分とを含むメッセージを示すグラフである。
【図24】本発明の他の実施形態に従うウォーターマーク生成器のブロック概略図である。
【図25A】本発明の他の実施形態に従うウォーターマーク復号器のブロック概略図である。
【図25B】本発明の他の実施形態に従うウォーターマーク復号器のブロック概略図である。
【図26】バイナリーメッセージデータに基づいてウォーターマーク信号を提供する方法のフローチャートを示す。
【図27】ウォーターマーク済み信号に基づいてバイナリーメッセージデータを提供する方法のフローチャートを示す。
【発明を実施するための形態】
【0033】
次に、本発明に従う実施の形態を、添付の図面を参照して詳しく説明する。
【0034】
1. ウォーターマーク生成器
1.1 図24に従うウォーターマーク生成器
本発明に従うウォーターマーク生成器のブロック概略図である図24を参照しながら、ウォーターマーク生成器2400について説明する。ウォーターマーク生成器2400はバイナリーメッセージデータ2410を受信し、それに基づいてウォーターマーク信号2420を提供する。ウォーターマーク生成器は情報処理器2430を含み、この情報処理器2430は、バイナリーメッセージデータ2410の1つのメッセージビットに基づいて、1セットの時間−周波数−ドメイン値の形式でメッセージビットを表現する2次元拡散済み情報2432を出力する。ウォーターマーク生成器2400はウォーターマーク信号提供器2440をさらに含み、このウォーターマーク信号提供器2440は、2次元拡散済み情報2432に基づいてウォーターマーク信号2420を出力する。
【0035】
ウォーターマーク生成器2400は、後段の第3章においてより詳細に説明する特徴及び機能のいずれかによって補足されても良い。
【0036】
1.2 図26に従うバイナリーメッセージデータに基づいてウォーターマーク信号を提供する方法
本発明に従うフローチャートを示す図26を参照しながら、バイナリーメッセージデータに基づいてウォーターマーク信号を提供する方法について説明する。
【0037】
図26に示す方法2600は、バイナリーメッセージデータの1つのメッセージビットに基づいて、1セットの時間−周波数−ドメイン値の形式でメッセージビットを表現する2次元拡散済み情報を提供するステップ2610を含む。方法2600は、2次元拡散済み情報に基づいてウォーターマーク信号を提供するステップ2620をさらに含む。
【0038】
当然ながら、方法2600は、本願明細書において、本発明の装置についての説明にある特徴及び機能のいずれかによって補足されても良い。
【0039】
2. ウォーターマーク復号化
2.1 図25aに従うウォーターマーク復号器
以下に、本発明に従うウォーターマーク復号器のブロック概略図である図25aを参照しながら、ウォーターマーク復号器2500について説明する。
【0040】
ウォーターマーク復号器2500は、ウォーターマーク済み信号2510に基づいてバイナリーメッセージデータ2520を提供する。ウォーターマーク復号器2500は、ウォーターマーク済み信号の時間−周波数−ドメイン表現2532を提供する、時間−周波数−ドメイン表現提供器2530を含む。ウォーターマーク復号器2500は、同期決定器2540をさらに含む。この同期決定器2540は、1つ又は複数の逆拡散ブロックを持つ逆拡散器2542を含む。逆拡散器2542は、時間−周波数−ドメイン表現2532の2次元部分に基づいて2次元逆拡散を実行し、同期情報2544を得る。ウォーターマーク復号器2500は、同期情報2544を使用して、ウォーターマーク済み信号の時間−周波数−ドメイン表現2532からバイナリーメッセージデータ2520を抽出するウォーターマーク抽出器2550をさらに備える。
【0041】
当然ながら、ウォーターマーク復号器2500は、本願明細書におけるウォーターマーク復号化についての説明に記載したいずれかの手段及び機能によって補足されても良い。
【0042】
2.2 図25bに従うウォーターマーク復号器
以下に、本発明に従うウォーターマーク復号器のブロック概略図である図25bを参照しながら、ウォーターマーク復号器2560について説明する。
【0043】
ウォーターマーク復号器2560は、ウォーターマーク信号2570を受信し、それに基づいて、バイナリーメッセージデータ2580を提供する。ウォーターマーク復号器2560は、ウォーターマーク信号2570の時間−周波数−ドメイン表現2592を提供する、時間−周波数−ドメイン表現提供器2590を含む。ウォーターマーク復号器は、逆拡散器2598を含むウォーターマーク抽出器2596をさらに含む。逆拡散器は時間−周波数−ドメイン表現2592の2次元部分に基づいて2次元逆拡散を実行し、バイナリーメッセージデータの1つのビットを得る。
【0044】
当然ながら、ウォーターマーク復号器2560は、本願明細書におけるウォーターマーク復号器についての説明にあるいずれかの手段及び機能によって補足されても良い。
【0045】
2.3 図27に従うウォーターマーク済み信号に基づいてバイナリーメッセージデータを提供する方法
以下に、本発明に従う方法のフローチャートを示す図27を参照しながら、ウォーターマーク済み信号に基づいてバイナリーメッセージデータを提供する方法2700について説明する。
【0046】
方法2700は、ウォーターマーク済み信号の時間−周波数−ドメイン表現を提供するステップ2710を含む。さらに方法2700は、時間−周波数−ドメイン表現の2次元部分に基づいて2次元逆拡散を実行し、ウォーターマーク済み信号の時間−周波数−ドメイン表現からバイナリーメッセージデータの1つのビット又はバイナリーメッセージデータを抽出するために使用される同期情報を得るステップ2720をさらに含む。
【0047】
当然ながら、この方法2700は、本願明細書におけるウォーターマーク復号器についての説明に記載されたいずれかの特徴及び機能によって補足されても良い。
【0048】
3. システムの説明
以下に、ウォーターマーク挿入器とウォーターマーク復号器とを含む、ウォーターマーク伝送のためのシステムについて説明する。当然ながら、ウォーターマーク挿入器とウォーターマーク復号器とは、互いに独立して使用されても良い。
【0049】
システムの説明については、ここではトップダウンの手法を選択した。まず、符号器と復号器との違いを明確にする。次に、第3.1章から第3.5章において、各処理ブロックを詳細に説明する。
【0050】
システムの基本的な構成は、符号器側を示す図1と復号器側を示す図2とに示される。図1はウォーターマーク挿入器100のブロック概略図を示す。符号器側では、(ウォーターマーク生成器とも呼ばれる)処理ブロック101の中で、聴覚心理処理モジュール102と交換される情報104及び105に基づいて、バイナリーデータ101aからウォーターマーク信号101bが生成される。ブロック102から提供される情報は、典型的にはウォーターマークが非可聴であることを保証する。ウォーターマーク生成器101により生成されたウォーターマークは、次にオーディオ信号106へと加算される。ウォーターマーク済み信号107は、その後伝送され、記憶され又は更なる処理を受けることができる。例えばオーディオ・ビデオ・ファイルのようなマルチメディア・ファイルの場合には、オーディオ・ビデオ同期を失わないように、ビデオストリームに適切な遅延を加える必要がある。マルチチャネル・オーディオ信号の場合には、各チャネルは本願明細書で説明するように分離して処理される。処理ブロックである101(ウォーターマーク生成器)と102(聴覚心理処理モジュール)とについては、第3.1章及び第3.2章においてそれぞれ説明する。
【0051】
復号器側については、ウォーターマーク復号器200のブロック概略図である図2を参照して説明する。例えばマイクロホンによって録音されたウォーターマーク済み信号200aが、システム200に対して使用可能である。分析モジュールとも呼ばれる第1のブロック203が、(例えばウォーターマーク済みのオーディオ信号である)入力データを時間/周波数ドメインで復調かつ変換し、(それによりウォーターマーク済みのオーディオ信号200aの時間−周波数−ドメイン表現204を取得して)同期モジュール201へと送る。この同期モジュール201は入力信号204を分析し、時間的同期化を実行する。即ち、符号化されたデータの時間的整列(例えば符号化されたウォーターマークデータの時間−周波数−ドメイン表現に関する時間的整列など)を決定する。この情報(例えば結果として得られる同期情報205)はウォーターマーク抽出器202へと送られ、この抽出器202がデータを復号化し、その結果、ウォーターマーク済みのオーディオ信号200aのデータコンテンツを表現するバイナリーデータ202aを出力する。
【0052】
3.1 ウォーターマーク生成器101
図3はウォーターマーク生成器101の詳細を示す。オーディオ信号106の中に隠されるべき(±1として示される)バイナリーデータ101aが、ウォーターマーク生成器101へと入力される。ブロック301はデータ101aを同一長Mpを持つパケットに整える。信号化の目的で、各パケットに対してオーバーヘッド・ビットが(例えば付加される状態で)加えられる。ここでは、Msがそれらオーバーヘッド・ビットの数を示すことにする。それらの使用方法は第3.5章において詳細に説明する。以下の説明においては、ペイロード・ビットの各パケット及び信号オーバーヘッド・ビットが、ここで云うメッセージであることに留意されたい。
【0053】
長さNm=Ms+Mpを有する各メッセージ301aは、処理ブロック302即ちチャネル符号器へと送られ、このチャネル符号器は、エラーに対する保護のためのビットを符号化する役割を果たす。このモジュールの可能性のある実施形態として、インターリーバーを伴う畳み込み符号器が挙げられる。この畳み込み符号器の比率が、ウォーターマーキング・システムの対エラー保護の全体的な程度に大きな影響を与える。他方、インターリーバーは、ノイズバーストに対する保護をもたらす。このインターリーバーの操作範囲は1個のメッセージに限定することもできるが、より多数のメッセージに拡大することもできる。ここでは、Rcが符号比率、例えば1/4を示すと仮定する。この場合には、各メッセージについて符号化されたビット数はNm/Rcとなる。チャネル符号器302は、例えば符号化されたバイナリーメッセージ302aを提供する。
【0054】
次の処理ブロック303は、周波数ドメインで拡散を実行する。十分な信号対雑音比を達成するために、情報(例えばバイナリーメッセージ302a)は、Nf個の注意深く選択されたサブバンドへと拡散されて伝送される。周波数におけるそれらサブバンドの正確な位置は事前に決定され、符号器と復号器との両方に既知となっている。この重要なシステム・パラメータの選択に関する詳細は第3.2.2章において述べる。周波数における拡散は、Nf×1のサイズを持つ拡散シーケンスcfによって決定される。ブロック303の出力303aはNf個のビットストリームを持ち、各ビットストリームは各サブバンドに1個ずつ対応している。i番目のビットストリームは、入力ビットを拡散シーケンスcfのi番目の成分と乗算することで得られる。最も単純な拡散は、ビットストリームを各出力ストリームへとコピーすること、即ち全て1から成る拡散シーケンスを使用することである。
【0055】
ブロック304、即ち同期スキーム挿入器とも呼ばれるブロックは、ビットストリームに対して同期信号を追加する。復号器にはビット及びデータ構造のいずれの時間的整列も既知でないため、即ち、いつメッセージがスタートするかが分からないため、ロバストな同期が重要である。同期信号はそれぞれNf個のビットのNs個のシーケンスから成る。シーケンスは要素毎にかつ周期的にビットストリーム(又はビットストリーム303a)に対して乗算される。例えば、ここではa,b,cをNs=3個の(同期拡散シーケンスとも呼ばれる)同期シーケンスであると仮定する。その場合、ブロック304は、aを第1の拡散ビットに乗算し、bを第2の拡散ビットに乗算し、cを第3の拡散ビットに乗算する。後続のビットに対しては、処理は周期的に反復される。つまり、aを第4のビットに乗算し、bを第5のビットに乗算するという調子で続いてゆく。このようにして、結合された情報−同期情報304aが得られる。(同期拡散シーケンスとも呼ばれる)同期シーケンスは、誤った同期のリスクを最小限にするために注意深く選択される。より詳細な説明を第3.4章で述べる。また、シーケンスa,b,c,...は、同期拡散シーケンスとして考えられても良いことに留意すべきである。
【0056】
ブロック305は時間ドメインで拡散を実行する。入力における各拡散済みのビット、即ち長さNfのベクトルが時間ドメインでNt回反復される。周波数における拡散と同様に、ここではNt×1のサイズを持つ拡散シーケンスctを定義する。i番目の時間的反復は、ctのi番目の成分と乗算される。
【0057】
ブロック302〜305の操作を以下のような数学的表現に置き換えることができる。ここで、1×Nm=Rcのサイズを持つmが符号化済のメッセージであり、ブロック302の出力であると仮定する。その場合、(拡散済みの情報表現Rとして考えられても良い)ブロック303の出力303aは次式で表すことができ、
結合済み情報同期表現Cと考えられても良いブロック304の出力304aは、
となり、ここで、〇はシュール要素毎の積(Schur element-wise product)を示し、
となる。
【0058】
ブロック305の出力305aは、
となり、ここで、◇と上付き文字Tとは、クロネッカーの積(Kronecker product)と転値(transpose)とをそれぞれ示す。バイナリーデータは±1として表現されることを思い出して頂きたい。
【0059】
ブロック306はビットの差分符号化を実行する。このステップにより、システムは、移動又はローカルな発振器のミスマッチに起因する位相シフトに対するロバスト性が一段と高くなる。この点に関する詳細は、第3.3章で説明する。仮にb(i;j)を、ブロック306の入力におけるi番目の周波数帯域及びj番目の時間ブロックのためのビットであるとした場合、出力ビットbdiff(i;j)は次式で示される。
【0060】
ストリームの開始点において、即ちj=0において、bdiff(i;j−1)は1に設定される。
【0061】
ブロック307は実際の変調を実行する。即ち、その入力に与えられたバイナリー情報306aに基づいてウォーターマーク信号波形を生成する。この点に関しては図4で詳細に説明する。Nf個の並行入力である401〜40Nfは、異なるサブバンドについてのビットストリームを含む。各サブバンドストリームの各ビットは、ビット成形ブロック(411〜41Nf)によって処理される。これらビット成形ブロックの出力は、時間ドメインの波形である。j番目の時間ブロックのi番目のサブバンドについて生成された波形は、si,j(t)で示され、入力ビットbdiff(i;j)に基づいており、次式のように計算される。
ここで、γ(i;j)は聴覚心理処理ユニット102によって提供される重み付けファクタであり、Tbはビットの時間区間であり、gi(t)はi番目のサブバンドについてのビット形成関数である。ビット形成関数は、次式のコサインを用いて周波数変調されたベースバンド関数giT(t)から得られたものであり、
ここで、fiはi番目のサブバンドの中央周波数であり、上付き文字Tは送信機を表している。ベースバンド関数は各サブバンドについて異なっていても良い。もし同一であると選択された場合には、復号器においてより効果的な構成が可能となる。詳細については、第3.3章を参照されたい。
【0062】
各ビットのためのビット成形は、聴覚心理処理モジュール(102)によって制御される反復的な処理の中で繰り返される。ウォーターマークを非可聴に維持しながらできるだけ大きなエネルギーを割り当てるためには、反復によって重みγ(i;j)を細かく調節することが必要である。第3.2章においてより詳細に説明する。
【0063】
i番目のビット成形フィルタ41iの出力における完全な波形は次式で示される。
【0064】
ビット形成ベースバンド関数giT(t)は、Tbよりも格段に大きい時間区間については通常は非ゼロであるが、主エネルギーはそのビット区間内に集中している。図12aはその一例を示し、2つの隣接するビットについて同一のビット形成ベースバンド関数をプロットしたものである。この図の中では、Tb=40ミリ秒である。Tb及び関数の形状の選択は、システムに対して重大な影響を与える。事実、より長いシンボルは、より狭い周波数応答を提供する。この点は、残響のある環境において特に有利である。事実、そのようなシナリオでは、ウォーターマーク済み信号は、各々が異なる伝播時間によって特徴づけられた複数の伝播経路を介してマイクホンに到達する。結果として得られるチャネルは、強い周波数選択性を示す。時間ドメインの観点では、より長いシンボルは有利である。なぜなら、ビット区間に匹敵する遅延を有するエコーは、積極的な干渉をもたらすからである。つまり、それらは受信された信号エネルギーを増大させる。しかし、長いシンボルには幾分かの欠点も存在する。即ち、長いオーバーラップはシンボル間干渉(ISI)をもたらす可能性もあり、かつオーディオ信号内に隠すことは確実に困難である。そのため、聴覚心理処理モジュールは、長いシンボルに対し、短いシンボルよりも少ないエネルギーしか許可しないであろう。
【0065】
ウォーターマーク信号は、次式のようにビット成形フィルタの全ての出力を合計することで取得される。
【0066】
3.2 聴覚心理処理モジュール102
図5に示すように、聴覚心理処理モジュール102は3つの部分から成る。第1のステップは分析モジュール501であり、時間オーディオ信号を時間/周波数ドメインへと変換する。この分析モジュールは、異なる時間/周波数分解能で並行分析を実行しても良い。この分析モジュールの次に、時間/周波数データは聴覚心理モデル(PAM)502へと送られる。ここでは、ウォーターマーク信号のためのマスキング閾値が聴覚心理的な考察(非特許文献1を参照)に従って計算される。そのマスキング閾値は、各サブバンド及び時間ブロックのためのオーディオ信号の中に隠すことができるエネルギーの量を示す。聴覚心理処理モジュール102の最後のブロックは、振幅計算モジュール503である。このモジュールは、マスキング閾値が満足されるように、即ち埋め込まれたエネルギーがマスキング閾値によって定義されるエネルギー以下になるように、ウォーターマーク信号の生成に使用されるべき振幅ゲインを決定する。
【0067】
3.2.1 時間/周波数分析501
ブロック501は、オーディオ信号の時間/周波数変換をラップされた変換を用いて実行する。多数の時間/周波数分解能が実行されたときに、最高のオーディオ品質が達成される。ラップされた変換の1つの効果的な実施例は短時間フーリエ変換(STFT)であり、これは窓処理された時間ブロックの高速フーリエ変換(FFT)に基づくものである。窓の長さは時間/周波数分解能を決定し、長い窓は低い時間分解能及び高い周波数分解能をもたらし、短い窓は高い時間分解能及び低い周波数分解能をもたらす。他方、窓の形状は周波数漏れなどを決定する。
【0068】
提案システムのために、データを2つの異なる分解能で分析することで、非可聴ウォーターマークが達成される。第1のフィルタバンクは、Tbのホップサイズ、即ちビット長により特徴付けられる。このホップサイズは2つの隣接する時間ブロックの間の時間区間である。窓の長さは略Tbである。この窓の形状はビット成形に使用されたものと同一である必要はなく、また、一般的には人間の聴覚システムをモデルすべきものである点に注意されたい。この問題点に関しては、多数の文献において研究されている。
【0069】
第2のフィルタバンクはより短い窓関数を適用する。スピーチの中にウォーターマークを埋め込む場合には、高い時間的分解能を達成することが特に重要である。なぜなら、その時間的構造は一般的にTbよりも細かいからである。
【0070】
入力オーディオ信号のサンプリングレートは、それがウォーターマーク信号をエイリアシング無しで記述できる程度に十分に大きい限りは、重要ではない。例えば、もしウォーターマーク信号に含まれる最大周波数成分が6kHzである場合には、時間信号のサンプリングレートは少なくとも12kHzでなければならない。
【0071】
3.2.2 聴覚心理モデル502
聴覚心理モデル502は、マスキング閾値を決定するという役割を持つ。即ち、ウォーターマーク済みのオーディオ信号が元の信号から区別できないように維持しながら、各サブバンド及び時間ブロックのためのオーディオ信号の中に隠すことができる、エネルギーの量を決定する。
【0072】
i番目のサブバンドは、2つの限界、即ちfi(min)とfi(max)との間で決定される。サブバンドは、Nf個の中央周波数fiを定義し、かつi=2,3,...,Nfについて、fi-1(max)=fi(min)となるようにすることで決定される。中央周波数の適切な選択は、ツイッカー(Zwicker)により1961年に提案されたバークスケール(Bark scale)により与えられる。サブバンドは、より高い中央周波数に対してはより大きくなる。このシステムの可能性のある一実施例では、適切な方法で配置された1.5〜6kHzの範囲の9個のサブバンドが使用される。
【0073】
後続の処理ステップは、各サブバンド及び各時間ブロックのための各時間/周波数分解能について別々に実行される。処理ステップ801は、スペクトル平滑化を実行する。事実、調性的要素(tonal elements)およびパワースペクトル内のノッチは平滑化する必要がある。これは幾つかの方法で実行可能である。調性値(tonality measure)を計算し、次にその値を使用して適応型の平滑化フィルタを駆動しても良い。代替的に、このブロックのより単純な実施例においては、メディアン状フィルタを使用しても良い。そのメディアンフィルタは、値のベクトルを考慮し、それらのメディアン値を出力する。メディアン状フィルタでは、50%以外の分位点(quantile)に対応する値を選択することができる。フィルタ幅はHzで定義され、低周波数から開始して最高限度の周波数で終了する非線形移動平均として適用される。ステップ801の操作を図7に示す。赤色の曲線は平滑化の出力を示す。
【0074】
平滑化が一旦実行されると、閾値がブロック802によって周波数マスキングだけを考慮して計算される。この場合にも別の可能性が存在する。1つの方法は、各サブバンドの最小値を用いてマスキングエネルギーEiを計算する方法である。これはマスキングを効果的に操作する信号の実効エネルギーである。この値から、所定のスケーリングファクタを単純に乗算して、マスクされたエネルギーJiを得ることができる。これらのファクタは各サブバンド及び時間/周波数分解能について異なり、経験的な聴覚心理的実験を通して取得される。これらのステップは図8で示す。
【0075】
ブロック805では、時間マスキングが考慮される。この場合、同一のサブバンドに関する異なる時間ブロックが分析される。マスクされたエネルギーJiは、経験的に導出されたポストマスキング・プロファイルに従って修正される。ここで、2つの隣接する時間ブロック、即ちk−1及びkについて考察する。対応するマスクされたエネルギーはJi(k−1)及びJi(k)である。ポストマスキング・プロファイルは、例えば、マスキングエネルギーEiがエネルギーJiを時刻kでマスクし、エネルギーα・Jiを時刻k+1でマスクできると定義する。この場合、ブロック805は(現在の時間ブロックによりマスクされたエネルギーである)Ji(k)と、(先行する時間ブロックによりマスクされたエネルギーである)α・Ji(k+1)とを比較し、最大値を選択する。ポストマスキング・プロファイルは文献でも紹介されており、経験的な聴覚心理的実験を通して取得されてきた。大きなTb、即ち20ミリ秒を超えるTbについては、短時間窓関数を伴う時間/周波数分解能に対してのみポストマスキングが適用されることに注意されたい。
【0076】
要約すれば、ブロック805の出力においては、2つの異なる時間/周波数分解能に関して得られた各サブバンド毎及び時間ブロック毎のマスキング閾値を得る。それらの閾値は、周波数マスキング現象と時間マスキング現象との両方を考慮して取得されてきたものである。ブロック806では、異なる時間/周波数分解能のための閾値が融合される。例えば、1つの実施例の可能性としては、1ビットが割り当てられた時間区間及び周波数区間に対応する全ての閾値をブロック806が考慮し、最小値を選択することが挙げられる。
【0077】
3.2.3 振幅計算ブロック503
図9を参照しながら説明する。ブロック503への入力は、聴覚心理に基づく全ての計算を実行する聴覚心理モデル502から出力された閾値505である。この振幅計算器503においては、その閾値を用いた追加的な計算が実行される。第1に、振幅マッピング901が行われる。このブロックは、(通常はエネルギーとして表現される)マスキング閾値を単に振幅へと変換するだけであり、その振幅は、第3.1章で定義したビット成形関数をスケールするために使用できるものである。その後、振幅適応ブロック902が使用される。このブロックは、ウォーターマーク生成器101の中でビット成形関数を乗算するために使用される振幅γ(i,j)を、マスキング閾値が確実に満たされるように繰り返し適応させる。事実、上述したように、ビット成形関数は、通常はTbよりも長い時間区間に亘って延びる。従って、点 i,j においてマスキング閾値を満たす正確な振幅γ(i,j)を乗算することが、点 i, j−1 において必ずしも条件を満たすことにはならない。この点は、前エコーが可聴になるため、強いオンセットにおいては特に重大である。回避すべきもう一つの状況は、異なるビットの尾部が不運にも重畳し、可聴のウォーターマークをもたらすことである。そのため、ブロック902はウォーターマーク生成器によって生成された信号を分析し、閾値が満たされたかどうかをチェックする。もし満たされていない場合には、振幅γ(i,j)を適切に修正する。
【0078】
符号器側の説明は以上である。後段では(ウォーターマーク復号器とも呼ばれる)受信器において実行される処理ステップについて説明する。
【0079】
3.3 分析モジュール203
分析モジュール203はウォーターマーク抽出処理の最初のステップ(又はブロック)である。その目的は、ウォーターマーク済みのオーディオ信号200aを、(符号204でも示される)Nf 個のビットストリーム
(各スペクトルサブバンドiについて1個ずつ)へと戻し変換することである。これらには、同期モジュール201及びウォーターマーク抽出器202により、第3.4章及び第3.5章でそれぞれ説明するように、更なる処理が施される。
はソフト・ビットストリームであり、即ち、それらは例えばいかなる実数値をとることもでき、ビットに関する硬判定(hard decision)が未だ行なわれていないことに注意すべきである。
【0080】
分析モジュールは、図16に示す3つの部分、即ち分析フィルタバンク1600と、振幅正規化ブロック1604と、差分復号化1608とから成る。
【0081】
3.3.1 分析フィルタバンク1600
ウォーターマーク済みのオーディオ信号は、図10aにその詳細を示す分析フィルタバンク1600によって、時間−周波数−ドメインへと変換される。このフィルタバンクの入力は、受信されたウォーターマーク済みのオーディオ信号r(t)である。その出力は、時刻jにおけるi番目の分枝又はサブバンドのための複素係数biAFB(j)である。これらの値は、中央周波数fi及び時刻j・Tbにおける信号の振幅と位相についての情報を含む。
【0082】
フィルタバンク1600はNf個の分枝で構成され、各分枝が各スペクトルサブバンドiに対応している。各分枝は、スペクトルサブバンドiについて、同相成分(in-phase component)のための上側サブ分枝と、直交成分(quadrature component)のための下側サブ分枝とに分割される。ウォーターマーク生成器における変調とウォーターマーク済みのオーディオ信号とは純粋に実数値であるが、チャネルと同期の整列ミスとにより導入された変調信号空間(modulation constellation)の回転は受信器においては既知ではないため、受信器における複素値の分析が必要となる。後段においては、フィルタバンクのi番目の分枝について考察する。同相及び直交のサブ分枝を結合することで、複素値のベースバンド信号複素係数biAFB(t)を次式のように定義できる。
ここで、*は畳み込みを示し、giR(t)はサブバンドiの受信器低域通過フィルタのインパルス応答を示す。通常は、マッチされたフィルタ条件を満たすために、giR(t)i(t)は変調器307内のサブバンドiのベースバンドビット形成関数giT(t)に等しいが、他のインパルス応答も可能である。
【0083】
レート1=Tbで係数biAFB(j)を得るために、連続的な出力biAFB(t)をサンプリングしなければならない。もし仮に、正確なタイミングが受信器において既知であったとすれば、レート1=Tbでサンプリングすることで十分だったであろう。しかし、実際にはビット同期は既知ではないために、レートNos/Tbでサンプリングが実行され、ここで、Nosは分析フィルタバンク・オーバーサンプリング・ファクタである。(例えばNos=4のように)Nosを十分に大きい値に選択することで、少なくとも1つのサンプリング・サイクルが理想的なビット同期に十分近いことが保証できる。最適なオーバーサンプリング・レイヤは、同期プロセスの途中で決定されるため、オーバーサンプリングされた全てのデータはその時点まで維持される。このプロセスは第3.4章で説明する。
【0084】
i番目の分枝の出力において係数biAFB(j,k)を持ち、ここでjはビット番号又は時刻を示し、kはこの1ビット内のオーバーサンプリング位置を示し、k=1,2,...,Nosである。
【0085】
図10bは時間-周波数平面上の係数の位置を示す例示的な全体像である。オーバーサンプリング・ファクタはNos=2である。長方形の高さ及び幅は、対応する係数biAFB(j,k)により表現される信号部分の帯域及び時間区間をそれぞれ示す。
【0086】
もしサブバンド周波数 fi が所定区間Δfの倍数となるように選択される場合には、分析フィルタバンクは高速フーリエ変換(FFT)を用いて効果的に構成することができる。
【0087】
3.3.2 振幅正規化1604
一般化を損なわずかつ説明を簡素化する目的で、以下においてはビット同期が既知でありかつNos=1であると仮定する。つまり、正規化ブロック1604の入力においては複素の係数biAFB(j)を持つ。受信器においてはチャネル状態の情報が何もない(即ち伝播チャネルが既知でない)ために、等利得合成(equal gain combining: EGC)スキームが使用される。時間および周波数の分散的なチャネルに起因して、送られたビットbi(j)のエネルギーは、中央周波数fi及び時刻jの周囲だけではなく、隣接する周波数および時刻においても見つけられる。従って、より精確な重み付けのために、周波数fi±nΔf における追加的な係数が計算され、係数biAFB(j)の正規化のために使用される。もしn=1であるならば、例えば次式となる。
【0088】
n>1についての正規化は、上述の式の単純な拡張である。同様にして、2つ以上の時刻について考慮することで、ソフトビットを正規化することを選択できる。このような正規化が各サブバンドi及び各時刻jについて実行される。EGCの実際の合成は、抽出プロセスにおける更に後のステップにおいて実行される。
【0089】
3.3.3 差分符号化1608
差分符号化ブロック1608には、周波数fi及び時刻jにおける信号要素の位相についての情報を含む、振幅正規化された複素係数binorm(j)が入力される。ビットは送信機において差分符号化されているため、ここでは逆の操作が実行されなければならない。ソフトビット
は、まず2つの連続する係数の位相における差異を計算し、次に、その実数部分を取ることで得られる。
【0090】
伝送チャネルは通常、各サブバンドにおいて異なる位相回転を導入するため、この計算は各サブバンドについて個別に実行する必要がある。
【0091】
3.4 同期モジュール201
同期モジュールの役割は、ウォーターマークの時間的同期を見つけることである。符号化済みのデータに対して復号器を同期化する問題は、2つのステップで構成される。第1のステップでは、分析フィルタバンクは符号化済みのデータに対して整列しなければならない。即ち、変調器の中で合成に使用されるビット成形関数giT(t)は、分析のために使用されたフィルタgiR(t)と整列しなければならない。この問題は図12aに示す。ここでは、分析フィルタは合成フィルタと同一である。図の上方において、3個のビットを示す。簡素化する目的で、これら全3個のビットのための波形はスケールされていない。異なるビットの間の時間的オフセットはTbである。図の下方は、復号器における同期の問題を表している。即ち、フィルタは異なる時刻で適用可能であるが、しかし、赤線(曲線1299a)で示された位置だけが正確であり、第1のビットを最高の信号対雑音比SNRと信号対干渉比SIRとを用いて抽出することが可能となる。事実、不正確な整列はSNRとSIRとの両方を低下させるおそれがある。ここでは、この第1の整列を「ビット同期」と呼ぶ。一旦ビット整列が達成されたならば、ビットは最適に抽出される。しかし、メッセージを正確に復号化するためには、どのビットにおいて新たなメッセージがスタートするかについて知ることが必要となる。この問題については図12bにおいて示し、メッセージ同期と呼ぶ。復号化されたビットのストリームの中では、赤線(位置1299b)で示されたスタート位置だけが正確であり、k番目のメッセージを復号化することが可能である。
【0092】
先に、メッセージ同期についてだけ説明する。同期署名は、第3.1章で説明したように、ウォーターマーク内に連続的かつ周期的に埋め込まれた、所定の順序のNs個のシーケンスで構成される。同期モジュールは、同期シーケンスの時間的整列を回復(retrieve)することができる。サイズNsに基づいて、図12cと図12dにそれぞれ示す2つの操作モードを区別することができる。
【0093】
全体メッセージ同期モード(図12c)においては、Ns=Nm/Rcである。この図では、簡素化するために、Ns=Nm/Rc=6であって、時間的拡散はなし、即ちNt=1であると仮定する。使用される同期署名は、説明のためにメッセージの下方に示す。現実には、第3.1章で説明したように、それらメッセージは符号化されたビットと周波数拡散シーケンスとに基づいて変調される。このモードでは、同期署名の周期長(periodicity)はメッセージの周期長と同一である。そのため、同期モジュールは、同期署名の時間的整列を見つけることで、各メッセージの開始を確認することができる。新たな同期署名が同期ヒットとしてスタートする時間的位置に注目されたい。同期ヒットは、次にウォーターマーク抽出器202へと送られる。
【0094】
可能性のある第2のモードとしての部分的メッセージ同期モードを図12bに示す。この場合には、Ns<Nm=Rcである。この図では、Ns=3であると仮定する。即ち、3個の同期シーケンスが各メッセージについて2回繰り返される。メッセージの周期長は同期署名の周期長の倍数である必要はない点に注意されたい。この操作モードにおいては、全ての同期ヒットがメッセージの開始に対応する訳ではない。同期モジュールはヒット間を区別する手段を持たず、この役割はウォーターマーク抽出器202に委ねられる。
【0095】
同期モジュールの処理ブロックは図11aと図11bに示す。同期モジュールは、同期署名コリレータ1201の出力1201aを分析することで、ビット同期および(全体または部分的な)メッセージ同期を一度に実行する。時間/周波数ドメインのデータ204は分析モジュールによって提供される。ビット同期はまだ有効ではないため、第3.3章で説明したように、ブロック203はファクタNosを用いてデータをオーバーサンプリングする。入力データを図12eに示す。この例においては、Nos=4、Nt=2、Ns=3であると仮定する。換言すれば、同期署名は(a,b,cで示す)3個のシーケンスから成る。この場合には、拡散シーケンスct=[1 1]Tを用いた時間拡散は、時間ドメインで各ビットを単純に2回ずつ繰り返す。正確な同期ヒットは矢印で示され、各同期署名の開始に対応する。同期署名の周期は、Nt・Nos・Ns=Nsblであり、例えば2・4・3=24である。同期署名の周期により、同期署名コリレータ(1201)は任意に時間軸をブロックへと分割する。このブロックはサーチブロックと呼ばれ、サイズはNsblであり、その下付き文字がサーチブロックの長さを表している。図12fに示すように、各サーチブロックは、1つの同期ヒットを含まなければならない(又は典型的に含んでいる)。Nsbl個のビットの各々が同期ヒットの候補である。ブロック1201の役割は、各ブロックの各候補ビットについて尤度(likelihood measure)を計算することである。この情報1201aは、次に同期ヒットを演算するブロック1204へと送られる。
【0096】
3.4.1 同期署名コリレータ1201
Nsbl個の同期位置の候補の各々について、同期署名コリレータが尤度を計算する。その尤度が大きければ大きい程、(ビット同期と部分又は全体メッセージ同期との両方の)時間的整列が見つかった可能性が高くなる。この処理ステップを図12gで示す。
【0097】
このようにして、異なる選択位置に関する尤度のシーケンス1201aを得ることができる。
【0098】
ブロック1301は時間的逆拡散を実行する。即ち、Nt個の各ビットを時間拡散シーケンスctと乗算し、その後それらを合計する。これはNf個の周波数帯域の各々について実行される。図13aに一例を示す。前述した例と同一のパラメータを使用する。即ち、Nos=4、Nt=2、Ns=3である。同期位置の候補には印をつけてある。そのビットから、Nosのオフセットを用いてNt・Nsがブロック1301で取得され、更にシーケンスctを用いて時間逆拡散され、その結果、Ns個のビットが残される。
【0099】
ブロック1302では、ビットは要素毎にNs個の拡散シーケンスと乗算される(図13bを参照)。
【0100】
ブロック1303では、周波数逆拡散が実行される。つまり、各ビットが拡散シーケンスcfと乗算され、その後、周波数に沿って合計される。
【0101】
このとき、仮に同期位置が正確であったとすると、Ns個の復号化されたビットを得るであろう。そのビットは受信器には知られていないので、ブロック1304は、Ns個の値と合計との絶対値を取ることで、尤度を計算する。
【0102】
ブロック1304の出力は、原則的には同期署名を探求する非干渉性コリレータの出力となる。事実、小さなNsを選択した場合、即ち部分的メッセージ同期モードを選択した場合、互いに直交する同期シーケンス(例えばa,b,c)を使用することが可能となる。そうすることで、コリレータが署名と正確に整列していない場合、その出力が非常に小さくなり、理想的にはゼロとなる。全体的なメッセージ同期モードを使用する場合、できるだけ多数の直交同期シーケンスを使用し、次にそれらが使用された順序を注意深く選択することで、署名を作成することが望ましい。この場合、拡散シーケンスを良好な自己相関関数で探求するときと同じ理論を適用できる。コリレータが僅かに整列ミス状態であるときは、コリレータの出力は理想的な場合であってもゼロではなくなるが、しかしいずれにしても、分析フィルタが信号エネルギーを最適状態では獲得できないため、完全な整列状態に比べて小さくなるであろう。
【0103】
3.4.2 同期ヒットの計算1204
このブロックは同期署名コリレータの出力を分析し、同期位置がどこにあるのかを決定する。このシステムがTb/4までのミス整列に対して相当にロバストであり、Tbが通常は約40ミリ秒であることから、ブロック1201の出力を時間に亘って積分し、より安定的な同期を達成することが可能である。この実施例として可能性のあるものは、時間に沿って適用され、インパルス応答を指数関数的に減衰させる、IIR(無限インパルス応答)フィルタである。代替的に、伝統的なFIR移動平均フィルタも使用できる。平均化が一旦実行されると、異なるNt・Nsに沿った第2のコリレーション(「異なる選択位置」)が実行される。実際には、同期関数の自己相関関数が既知であるという情報を活用する。これが、最尤推定量(Maximun Likelihood estimator)に対応する。この考え方を図13cに示す。この曲線は、時間積分後のブロック1201の出力を示す。同期ヒットを決定するための1つの可能性のある方法は、この関数の最大値を見つけることである。図13dには、同期署名の自己相関関数でフィルタ処理された同じ関数(黒色)を示す。結果として得られる関数を赤線で示す。この場合、最大値がより明確化され、同期ヒットの位置が明確になる。2つの方法の結果は高いSNRの状況下では相当に類似しているが、低いSNRの状況下では第2の方法が格段に良好である。同期ヒットが発見された後は、ウォーターマーク抽出器202へと送られ、そこでデータが復号化される。
【0104】
本発明の幾つかの実施形態では、ロバストな同期信号を得るために、短い同期署名を用いた部分的メッセージ同期モードで同期が実行される。そのため、多くの復号化を実行する必要があり、また偽陽性(false positive) のメッセージ検出を冒すリスクが高まってしまう。これを防止するため、本発明の幾つかの実施形態では、信号化シーケンスをより低いビットレートを持つメッセージの中に挿入しても良い。
【0105】
この手法は、メッセージよりも短い同期署名から起こる問題に対する解決法であり、強化された同期についてこれまで説明した。この場合、復号器は新たなメッセージがどこでスタートするかが分からず、複数の同期ポイントにおいて復号化しようと試みる。真正なメッセージと偽陽性のメッセージとを区別するため、本発明の幾つかの実施例においては、ある信号語を使用する(即ち、既知の制御シーケンスを埋め込むためにペイロードが犠牲となる)。幾つかの実施例においては、真正なメッセージと偽陽性のメッセージとの間を区別するために、(代替的又は追加的に)真偽性(plausibility)チェックが使用される。
【0106】
3.5 ウォーターマーク抽出器202
ウォーターマーク抽出器202を構成する部分について図14を参照しながら説明する。この抽出器は2つの入力、即ちブロック203からの入力204とブロック201からの入力205とを持つ。同期モジュール201(第3.4章を参照)は同期タイムスタンプ、即ち候補メッセージがスタートする時間ドメインの位置を提供する。この点については、第3.4章でより詳細に説明している。他方、分析フィルタバンク・ブロック203は、復号化される準備が整ったデータを時間/周波数ドメインで提供する。
【0107】
第1の処理ステップであるデータ選択ブロック1501は、復号化されるべき候補メッセージとして認識される部分を入力204から選択する。図15bはこの過程を図式的に示す。入力204は実数値のNf個のストリームで構成される。時間的整列は復号器には事前に知られていないため、分析ブロック203は1/TbHzよりも高いレートで周波数分析(オーバーサンプリング)を実行する。図15bではオーバーサンプリング・ファクタを4とした。即ち、サイズNf×1の4個のベクトルがTb秒毎に出力される。同期ブロック201が候補メッセージを認識したときに、同期ブロック201は候補メッセージのスタート点を示すタイムスタンプ205を交付する。選択ブロック1501は復号化に必要な情報、即ちサイズNf×Nm/Rcの行列を選択する。この行列1501aは更なる処理のためにブロック1502へと送られる。
【0108】
ブロック1502,1503,1504は、第3.4章で説明したブロック1301,1302,1303と同じ操作を実行する。
【0109】
本発明の代替的な実施形態では、復号化されるべきデータもまた同期モジュールから提供させることで、ブロック1502〜1504の計算を省略している。概念上、それは些細なことである。実装の観点から見れば、それはバッファがどのように実現されるかという問題に過ぎない。一般的には、計算を再度実行することで、より小さなバッファを使用することができる。
【0110】
チャネル復号器1505はブロック302の逆の操作を実行する。もし、このモジュールの可能性のある実施例のチャネル符号器がインターリーバを伴う畳み込み符号器で構成されている場合には、チャネル復号器はデ・インターリービング及び畳み込み復号化を、例えば公知のビタビ・アルゴリズムなどを用いて実行する。このブロックの出力において、Nmビット、即ち候補メッセージを得る。
【0111】
ブロック1506、即ち信号化および真偽性のチェックブロックは、入力された候補メッセージが実際にメッセージか否かを決定する。これを実行するためには、様々な方法が可能である。
【0112】
基本的な考え方は、(CRCシーケンスのような)信号語を使用して真正なメッセージと偽のメッセージとの間を区別することである。しかしこれは、ペイロードとして使用可能なビット数を減少させてしまう。代替的に、真偽性のチェックを使用できる。もし、例えばメッセージがタイムスタンプを含んでいる場合には、連続的なメッセージは連続的なタイムスタンプを持っているはずである。もし、復号化されたメッセージが不正確な順序のタイムスタンプを持っている場合には、それを除外することができる。
【0113】
メッセージが正確に検出されてきた場合には、システムは、ルックアヘッド及び/又はルックバックの機能を適用するよう選択しても良い。このとき、ビット同期とメッセージ同期との両方が達成されたと推定する。ユーザーがザッピングしていないと想定して、システムは時間的に「ルックバック」し、(もしまだ復号化されていない場合には)過去のメッセージを同じ同期ポイントを用いて復号化しようと試みる(ルックバックの手法)。この手法は、システムの開始時において特に有用である。さらに、悪い条件下では、同期を達成するために2個のメッセージが必要となるかもしれない。その場合には、1番目のメッセージにはチャンスがない。ルックバックを選択することで、バック同期のみに起因して受信されてこなかった「良好な」メッセージを救うことができる。ルックアヘッドも同様であるが、将来に関して有益である。現時点でメッセージがあれば、次のメッセージがどこにあるべきかが分かり、いずれかの方法でそれを復号化しようと試みることができる。
【0114】
3.6 同期の詳細
ペイロードを符号化するために、例えばビタビ・アルゴリズムを使用しても良い。図18aは、ペイロード1810と、ビタビ終端シーケンス1820と、ビタビ符号化済みペイロード1830と、ビタビ符号化済みペイロードの反復符号化されたバージョン1840とを図式的に示す。例えば、ペイロード長は34ビットであり、ビタビ終端シーケンスは6ビットを含んでも良い。もし、例えば1/7のビタビ符号レートを使用した場合、ビタビ符号化済みペイロードは(34+6)*7=280個のビットを含むことになる。更に、1/2の反復符号化を使用すれば、ビタビ符号化済みペイロード1830の反復符号化されたバージョン1840は、280*2=560個のビットを含むことになる。この例では、42.66ミリ秒のビット時間区間を考慮すれば、メッセージ長は23.9秒となる。この信号は、図18bに示す周波数スペクトルによって表されるような、例えば1.5〜6kHzの(例えば臨界帯域に従って配置された)9個のサブキャリアを用いて埋め込んでも良い。代替的に、0〜20kHzの周波数範囲内の他の個数(例えば4,6,12,15又は2〜20の間の数)のサブキャリアが使用されても良い。
【0115】
図19は、ABC同期とも呼ばれる同期についての基本概念1900の概略図を示す。この図は、符号化されていないメッセージ1910と、符号化されたメッセージ1920と、同期シーケンス1930と、その同期を複数のメッセージ1920へと相互連続的に適用した様子を示す。
【0116】
(図19〜図23に示す)この同期概念の説明において言及する同期シーケンスは、前述した同期署名と同一であっても良い。
【0117】
更に、図20は同期シーケンスとのコリレートによって発見される同期の概略図を示す。もし同期シーケンス1930がメッセージよりも短い場合には、2つ以上の同期ポイント1940(又は整列時間ブロック)が1つのメッセージ内で発見されても良い。図20に示す例においては、各メッセージ内に4個の同期ポイントが発見される。更に、発見された各同期について、ビタビ復号器(ビタビ復号化シーケンス)がスタートされても良い。このようにして、各同期ポイント1940について、図21に示すようなメッセージ2110が取得されても良い。
【0118】
これらのメッセージに基づいて、図22に示すように、CRCシーケンス(サイクル冗長性チェックシーケンス)及び/又は真偽性チェックを使用して、真正なメッセージ2210が識別されても良い。
【0119】
CRC検出(サイクル冗長性チェック検出)は、偽陽性のメッセージから真正のメッセージを識別するために既知のシーケンスを使用しても良い。図23は、ペイロードの終端に追加されたCRCシーケンスの例を示す。
【0120】
偽陽性(誤った同期ポイントに基づいて生成されたメッセージ)の確率は、CRCシーケンスの長さと、スタートされたビタビ復号器の数(1つのメッセージ内の同期ポイントの数)とに基づいても良い。偽陽性の確率を増大させずにペイロード長を増大させるために、真偽性が利用されても良く(真偽性テスト)、同期シーケンス(同期署名)の長さが増大されても良い。
【0121】
4. 概念及び利点
以下に、上述したシステムの幾つかの態様であって革新的であると考えられるものについて説明する。また、それらの態様と現状の技術との関係についても説明する。
【0122】
4.1 連続的な同期
幾つかの実施形態は連続的な同期を可能にする。ここでは同期署名とも呼ぶ同期信号は、伝送及び受信側の両方にとって既知である(同期拡散シーケンスとも呼ばれる)シーケンスとの乗算によって、連続的かつデータに並行して埋め込まれる。
【0123】
幾つかの従来システムでは、(データに使用されたものとは異なる)特別なシンボルを使用するが、本発明に従う幾つかの実施形態ではそのような特別なシンボルは使用しない。他の従来の方法では、データと時間的に乗算されたビットの既知のシーケンス(プリアンブル)を埋め込むか、又はデータと周波数的に乗算された信号を埋め込む方法を含む。
【0124】
しかし、同期のために専用のサブバンドを使用することは望ましくないことが分かっている。なぜなら、そのような周波数においてはチャネルがノッチを持ち、同期を実現不可能にすることがあるからである。このように、プリアンブル又は特別なシンボルがデータと時間的に乗算されるような方法に比べると、本発明の方法は、(例えば動きに基づく)同期におけるトラックチェンジを連続的に許可するという点で有利である。
【0125】
更に、ウォーターマーク信号のエネルギーは、(例えば拡散された情報表現の中へウォーターマークを乗算的に導入することなどによって)変化しない。また、同期は聴覚心理モデル及びデータレートから独立して指定できる。同期署名の時間長は、同期のロバスト性を決定するものであるが、データレートから完全に独立して自在に指定することができる。
【0126】
他の従来方法では、データとコード乗算された同期シーケンスを埋め込むことを含む。このような従来の方法と比較した場合、本発明の方法は、データのエネルギーがコリレーションの計算における干渉ファクタを表すものではないという利点があり、更なるロバスト性をもたらす。加えて、コード乗算を使用すると、同期に使用可能な直交シーケンスの幾つかはデータに必要となるため、その数が減少する。
【0127】
要約すれば、本発明の連続的な同期の手法は従来の概念に比べて多数の利点をもたらすと言える。
【0128】
しかし、本発明に従う幾つかの実施形態においては、異なる同期概念を適用しても良い。
【0129】
4.2 2次元拡散
本発明が提案するシステムの幾つかの実施形態では、時間と周波数との両方のドメインにおける拡散、即ち2次元拡散(略称は2D拡散)を実行する。この方法は、例えば時間ドメインにおいて冗長性を追加することでビット誤差レートを更に減少できるために、1Dシステムよりも有利であることが分かってきた。
【0130】
しかし、本発明に従う幾つかの実施形態においては、異なる拡散概念を適用しても良い。
【0131】
4.3 差分符号化および差分復号化
本発明に従う幾つかの実施形態では、移動又はローカルな発振器の周波数ミスマッチに対する(従来システムと比べた場合の)ロバスト性が、差分変調によってもたらされる。事実、ドップラー効果(移動)及び周波数のミスマッチは、BPSK(バイナリー位相シフト・キーイング)信号空間(constellation)(換言すればビットの複素平面における回転)をもたらす。幾つかの実施形態においては、そのようなBPSK信号空間(又は他の適切な変調信号空間)の回転の有害な影響は、差分符号化または差分復号化を用いて防止される。
【0132】
しかし、本発明の幾つかの実施形態においては、他の符号化概念または復号化概念を適用しても良い。また、幾つかの場合には、差分符号化が省略されても良い。
【0133】
4.4 ビット成形
本発明の幾つかの実施形態においては、ビット成形によってシステム性能が有意に向上する。なぜなら、ビット成形に適応したフィルタを使用することで、検出の信頼性が向上するからである。
【0134】
幾つかの実施形態に従えば、ウォーターマーキングに関してビット成形を使用することで、ウォーターマーキング処理の信頼性が向上する。ビット成形関数がビット区間よりも長い場合には、特に良好な結果が得られることが判明してきた。
【0135】
しかし、本発明の幾つかの実施形態においては、異なるビット成形概念を適用しても良い。また、ある場合には、ビット成形が省略されても良い。
【0136】
4.5 聴覚心理モデル(PAM)とフィルタバンク(FB)合成との間の双方向性
本発明の幾つかの実施形態においては、ビットに乗算される振幅を微調整するために、聴覚心理モデルと変調器とが相互に作用する。
【0137】
しかし、実施形態によっては、この相互作用が省略されても良い。
【0138】
4.6 ルックアヘッド及びルックバックの特徴
幾つかの実施形態においては、所謂「ルックバック」及び「ルックアヘッド」の手法が適用される。
【0139】
以下に、これらの概念について簡単に説明する。メッセージが正確に復号化されたとき、同期が達成されたと推定される。ユーザーがザッピングしていないと想定して、幾つかの実施形態では、時間におけるルックバックが実行され、(もしまだ復号化されていない場合には)過去のメッセージを同じ同期ポイントを用いて復号化しようと試みる(ルックバックの手法)。この手法はシステムがスタートする時に特に有用である。
【0140】
悪い条件下では、同期を達成するために2個のメッセージが必要となるかもしれない。その場合には、従来のシステムでは1番目のメッセージにはチャンスがない。本発明の幾つかの実施形態で使用されるルックバックを選択することで、バック同期だけでは受信されなかった「良好な」メッセージを救う(復号化する)ことが可能となる。
【0141】
ルックアヘッドも同様であるが、将来において役に立つ。現時点でメッセージを有していれば、次のメッセージがどこにあるべきかを知ることができ、何らかの方法でそれを復号化しようと試みることができる。従って、オーバーラップしているメッセージを復号化することができる。
【0142】
しかし、本発明の幾つかの実施形態においては、このルックアヘッドの特徴及び/又はルックバックの特徴も省略されても良い。
【0143】
4.7 優位な同期ロバスト性
本発明の幾つかの実施形態においては、ロバストな同期信号を得るために、短い同期署名を用いた部分メッセージ同期モードで同期が実行される。そのため、多くの復号化が実行されなければならなくなり、また偽陽性のメッセージ検出を冒すリスクが高まってしまう。これを防止するため、本発明の幾つかの実施形態では、より低いビットレートを持つメッセージの中に信号化シーケンスを挿入しても良い。
【0144】
しかし、本発明に従う幾つかの実施形態においては、同期のロバスト性を高める他の概念を適用しても良い。また、幾つかの例においては、同期のロバスト性を高める概念を使用することが省略されても良い。
【0145】
4.8 他の優位点
以下に、背景技術との比較における、上述したシステムの他の一般的な優位点について説明する。
1. 計算上の低い複雑度
2. 良好な聴覚心理モデルに基づく良好なオーディオ品質
3. 狭帯域マルチキャリア信号に基づいた残響環境における良好なロバスト性
4. SNR推定が省略される実施形態もある。この場合、特に低いSNR環境においてより良好なロバスト性が得られる。
【0146】
本発明に従う幾つかの実施形態は、例えば8Hzの非常に狭い帯域を使用する従来システムよりも、以下の理由で優位である。
1. 8Hzの帯域(又は同様の非常に狭い帯域)は非常に長い時間シンボルを必要とする。なぜなら、聴覚心理モデルはシンボルを非可聴とするためのエネルギーを非常に僅かしか許可しないからである。
2. 8Hz(又は同様の非常に狭い帯域)は、経時的に変化するドップラースペクトルに対してシンボルを敏感にする。従って、そのような狭帯域システムは、例えば腕時計の中などに実装された場合に、一般的に十分良好とは云えない。
【0147】
本発明に従う幾つかの実施形態は、他の技術に比べて以下の理由で優位である。
1. エコーを導入する技術は、残響室の中では完全に失敗となる。反対に、本発明の幾つかの実施形態では、エコーの導入を防止できる。
2. 例えば時間と周波数との両方における2次元拡散が使用されるような、上述した本発明のシステムの実施形態と比較すれば、時間拡散だけを使用する技術では、メッセージ持続時間が長くなる。
【0148】
本発明に従う幾つかの実施形態は、特許文献1に開示されたシステムに比べて優位である。なぜなら、特許文献1に従うシステムの以下に記載する欠点の1つ又は複数が克服されているからである。
・ 特許文献1に従う復号器の複雑度は非常に高く、長さ2Nで、N=128であるフィルタが使用されている。
・ 特許文献1に従うシステムは、長いメッセージ持続時間を持つ。
・ 特許文献1に従うシステムでは、比較的高い拡散ゲイン(例えば128)を用いた時間ドメインでの拡散だけである。
・ 特許文献1に従うシステムでは、信号は時間ドメインで生成され、スペクトルドメインへと変換され、重み付けされ、時間ドメインへと逆変換され、オーディオへと重畳される。そのため、システムが非常に複雑となる。
【0149】
5. アプリケーション
本発明は、デジタルデータを隠すためにオーディオ信号を修正する方法と、この情報を回復できる対応する復号器とを含み、修正されたオーディオ信号の知覚品質が、元のオーディオ信号の知覚品質と区別できないものである。
【0150】
本発明の可能性のあるアプリケーションの例を以下に示す。
1. 放送モニタリング: 例えばステーションや時間に関する情報を含むウォーターマークが、ラジオ番組やテレビ番組のオーディオ信号の中に隠されている。テスト被験者が身につけた小型装置の中に組み込まれた復号器が、そのウォーターマークを回復することができる。このようにして、広告業者にとって価値のある情報、即ち誰がどの番組をいつ見たのかという情報を収集する。
2. 監査(Auditing):ウォーターマークが例えば広告などに隠される。所定のステーションの伝送状況を自動的にモニターすることで、いつその広告が放送されたかを正確に知ることができる。同様の方法で、異なるラジオの番組スケジュールについての統計的情報、例えば所定の楽曲がどのくらいの頻度で演奏されたかなどの情報を取り出すことができる。
3. メタデータの埋め込み:本発明が提案する方法は、楽曲又は番組についてのデジタル情報、例えば楽曲の名前や作者または番組の持続時間などを隠すために使用できる。
【0151】
6. 代替的な構成
本発明の幾つかの態様を装置の文脈において説明してきたが、これらの態様は対応する方法の説明をも表すものであり、そこではブロックまたは装置が、方法の各段階または方法の各段階の特徴に相当することが明らかである。同様に、方法の各段階の文脈において説明した態様は、対応する装置の対応するブロック若しくは項目又は特徴の説明をも表すものである。上述した方法ステップの幾つか又は全ては、例えばマイクロプロセッサ、プログラム可能なコンピュータ又は電子的回路のような、ハードウエア装置(又はその使用)によって実行されても良い。幾つかの実施形態では、重要な方法ステップの1つ又は複数がそのような装置によって実行されても良い。
【0152】
本発明の符号化済みのウォーターマーク信号またはウォーターマークが埋め込まれたオーディオ信号は、デジタル記憶媒体に記憶することも、又はインターネットのような無線伝送媒体若しくは有線伝送媒体などの伝送媒体を介して伝送することもできる。
【0153】
所定の構成要件にも依るが、本発明の実施形態は、ハードウエア又はソフトウエアにおいて構成可能である。この構成は、その中に格納される電子的に読み取り可能な制御信号を有し、本発明の各方法が実行されるようにプログラム可能なコンピュータシステムと協働する(又は協働可能な)、デジタル記憶媒体、例えばフレキシブルディスク,DVD,ブルーレイ,CD,ROM,PROM,EPROM,EEPROM,フラッシュメモリなどを使用して実行することができる。従って、そのデジタル記憶媒体はコンピュータ読み取り可能であっても良い
【0154】
本発明に従う実施形態の幾つかは、上述した方法の1つを実行するようプログラム可能なコンピュータシステムと協働可能で、電子的に読み取り可能な制御信号を有するデータキャリアを含んでも良い。
【0155】
一般的に、本発明の実施例は、コンピュータプログラム製品として構成することができ、このプログラムコードは当該コンピュータプログラム製品がコンピュータ上で作動するときに、本発明の方法の1つを実行するよう作動する。そのプログラムコードは例えば機械読み取り可能なキャリアに記憶されても良い。
【0156】
本発明の他の実施形態は、上述した方法の1つを実行するための、機械読み取り可能なキャリアに記憶されたコンピュータプログラムを含む。
【0157】
換言すれば、本発明の方法のある実施形態は、そのコンピュータプログラムがコンピュータ上で作動するときに、上述した方法の1つを実行するためのプログラムコードを有する、コンピュータプログラムである。
【0158】
本発明の他の実施形態は、上述した方法の1つを実行するために記憶されたプログラムコードを含む、データキャリア(又はデジタル記憶媒体又はコンピュータ読み取り可能な媒体)である。当該データキャリア、デジタル記憶媒体又は記録済みの媒体は、典型的には実体を有し、非遷移体である。
【0159】
本発明の他の実施形態は、上述した方法の1つを実行するためのコンピュータプログラムを表現するデータストリーム又は信号シーケンスである。そのデータストリーム又は信号シーケンスは、例えばインターネットを介するデータ通信接続を介して伝送されるように構成されても良い。
【0160】
他の実施形態は、上述した方法の1つを実行するように構成又は適用された、例えばコンピュータ又はプログラム可能な論理デバイスのような処理手段を含む。
【0161】
他の実施形態は、上述した方法の1つを実行するためのコンピュータプログラムをインストールされたコンピュータを含む。
【0162】
幾つかの実施形態においては、(例えば書換え可能ゲートアレイのような)プログラム可能な論理デバイスが、上述した方法の幾つか又は全ての機能を実行するために使用されても良い。幾つかの実施形態では、書換え可能ゲートアレイは、上述した方法の1つを実行するためにマイクロプロセッサと協働しても良い。一般的に、そのような方法は、好適には、任意のハードウエア装置によって実行される
【0163】
上述した実施の形態は、本発明の原理を単に例示的に示したにすぎない。本願明細書に記載した構成及び詳細について、修正及び変更が可能であることは、当業者にとって明らかである。従って、本発明は、本願明細書に実施形態の説明及び解説として提示した具体的詳細によって限定されるものではなく、添付した特許請求の範囲によってのみ限定されるべきである。
【特許請求の範囲】
【請求項1】
バイナリーメッセージデータ(101a,m;2410)に基づいてウォーターマーク信号(101b;2420)を提供するウォーターマーク生成器(101;2400)であって、
前記バイナリーメッセージデータの1つのメッセージビットに基づいて、1セットの時間−周波数−ドメイン値の形式で前記メッセージビットを表現する2次元拡散済み情報(b(i,j);2432)を提供する情報処理器(303,304,305)と、
前記2次元拡散済み情報に基づいて前記ウォーターマーク信号を提供するウォーターマーク信号提供器(306,307)と、
を備えるウォーターマーク生成器。
【請求項2】
前記情報処理器は、第1拡散シーケンス(cf)を使用して前記メッセージビットを第1拡散方向へ拡散することで中間情報表現(303a,cf・m)を取得し、前記中間情報表現とオーバーレイ情報表現(S)とを結合することで結合済み情報表現(C)を取得し、前記結合済み情報表現を第2拡散シーケンス(ct)を使用して第2拡散方向へ拡散することで前記2次元拡散済み情報を取得することを特徴とする、請求項1に記載のウォーターマーク生成器。
【請求項3】
前記情報処理器は、前記中間情報表現と、オーバーレイ情報拡散シーケンス(a)を使用して第1拡散方向に拡散されたオーバーレイ情報表現とを結合し、ここで、前記メッセージビットとオーバーレイ情報とは第1拡散方向においては異なる拡散シーケンス(cf,a)を用いて拡散され、前記メッセージビットと前記オーバーレイ情報との結合は第2拡散方向においては共通の拡散シーケンス(ct)を用いて拡散されることを特徴とする、請求項2に記載のウォーターマーク生成器。
【請求項4】
前記情報処理器は、前記中間情報表現(303a,cf・m)と前記オーバーレイ情報表現(S)とを乗算的に結合し、前記中間情報表現の値と前記オーバーレイ情報の値とに基づいて形成された積の値を含む前記結合済み情報表現を、前記第2拡散シーケンス(ct)を使用して前記第2拡散方向に拡散し、前記積の値は共通の拡散シーケンスを使用して拡散されることを特徴とする、請求項2又は3に記載のウォーターマーク生成器。
【請求項5】
前記情報処理器は、ビット拡散シーケンス(cf)の正の倍数である第1ビット表現、又は前記ビット拡散シーケンス(cf)の負の倍数である第2ビット表現の上に、所与のメッセージビットを当該所与のビットの値に基づいて選択的に拡散することで、前記メッセージビットを前記第1拡散方向に拡散することを特徴とする、請求項1乃至4のいずれか1項に記載のウォーターマーク生成器。
【請求項6】
前記情報処理器は、
前記メッセージビットを前記第1拡散方向に拡散することで得られた中間情報表現の所与の値、又は前記メッセージビットを前記第1拡散方向に拡散しかつその結果をオーバーレイ情報表現と結合することで得られた結合済み情報表現の所与の値を、拡散値のセットの上にマップすることにより、前記拡散値のセットは、前記所与の値に従ってスケールされた第2拡散シーケンスのスケール済みバージョンとなることを特徴とする、請求項1乃至5のいずれか1項に記載のウォーターマーク生成器。
【請求項7】
前記情報処理器は、中間情報表現として、拡散済みの情報表現Rを
R=cf・m
に従って取得し、
ここで、cfは周波数拡散幅Nfのビット拡散シーケンスを表現するサイズNf×1のベクトルであり、
mは前記バイナリーメッセージデータのNmc個のビットを表現するサイズ1×Nmcのベクトルであり、それらビットの異なるバイナリ値は異なる正負符号を持つベクトルmのエントリーによって表現され、
記号「・」は行列乗算演算子を示し、
さらに前記情報処理器は、前記2次元拡散済み情報Bを演算式
B=R'◇ctT,
を使用して取得し、
ここで、R’はRと同一であるか、又はRをオーバーレイ情報(S)と結合することで取得され、
◇はクロネッカー積の演算子を示し、 Tは転値を示すことを特徴とする、請求項1乃至6のいずれか1項に記載のウォーターマーク生成器。
【請求項8】
ウォーターマーク済み信号(200a,r(t);2510)に基づいてバイナリーメッセージデータ(202a;2520)を提供するウォーターマーク復号器(200,2500)であって、
前記ウォーターマーク済み信号の時間−周波数−ドメイン表現(204,2532)を提供する時間−周波数−ドメイン表現提供器(203,2530)と、
1つ又は複数の逆拡散ブロック(1201,1203;2542)を有する逆拡散器を含む同期決定器(201;2540)であって、前記逆拡散器は前記時間−周波数−ドメイン表現の2次元部分に基づいて2次元逆拡散を実行し同期情報(205;2544)を得る、同期決定器と、
前記同期情報を使用して前記ウォーターマーク済み信号の時間−周波数−ドメイン表現からバイナリーメッセージデータを抽出する、ウォーターマーク抽出器(202;2550)と、
を備えたウォーターマーク復号器。
【請求項9】
ウォーターマーク済み信号(200a,r(t);2570)に基づいてバイナリーメッセージデータ(202a;2580)を提供するウォーターマーク復号器(200,2560)であって、
前記ウォーターマーク済み信号の時間−周波数−ドメイン表現(204,2592)を提供する時間−周波数−ドメイン表現提供器(203,2590)と、
1つ又は複数の逆拡散ブロックを有する逆拡散器を含むウォーターマーク抽出器(202;2596)であって、前記逆拡散器は、前記時間−周波数−ドメイン表現の2次元部分に基づいて2次元逆拡散を実行しバイナリーメッセージデータの1つのビットを得る、ウォーターマーク抽出器と、
を備えたウォーターマーク復号器。
【請求項10】
前記逆拡散器は、前記時間−周波数−ドメイン表現(1377)の複数の値と時間逆拡散シーケンス(cf)の値とを乗算し、かつその乗算結果を加算して時間的に逆拡散された値(1378)を取得し、さらに、
前記時間−周波数−ドメイン表現の異なる周波数に関連する時間的に逆拡散された複数の値又はその値から導出された値と、周波数逆拡散シーケンス(cf)とを要素毎に乗算し、かつその乗算結果を加算して2次元的に逆拡散された値を取得することを特徴とする、請求項8又は9に記載のウォーターマーク復号器。
【請求項11】
前記逆拡散器は、時間的に逆拡散された値のセットを得るものであり、
前記時間−周波数−ドメイン表現の複数の値と時間逆拡散シーケンス(ct)の値とを乗算し、かつその乗算結果を加算して時間的に逆拡散された値の1つを取得し、さらに、
前記時間的に逆拡散された値と周波数逆拡散シーケンスの値とを要素毎に乗算し、かつその乗算結果を加算して2次元的に逆拡散された値を取得することを特徴とする、請求項8乃至10のいずれか1項に記載のウォーターマーク復号器。
【請求項12】
前記逆拡散器は、時間的に逆拡散された値の連続するセットと互いに異なる周波数逆拡散シーケンスの値とを要素毎に乗算するものであり、
ここで、前記時間的に逆拡散された値の第1セットが、共通の周波数逆拡散シーケンスと第1オーバーレイ逆拡散シーケンスとの積である第1の結合済み周波数逆拡散シーケンスと、要素毎にかつ1又は複数の乗算ステップによって乗算され、さらに、
前記時間的に逆拡散された値の第2セットが、前記共通の周波数逆拡散シーケンスと第2オーバーレイ逆拡散シーケンスとの積である第2の結合済み周波数逆拡散シーケンスと、要素毎にかつ1又は複数の乗算ステップによって乗算され、
前記第1オーバーレイ逆拡散シーケンスと前記第2オーバーレイ逆拡散シーケンスとは異なることを特徴とする、請求項11に記載のウォーターマーク復号器。
【請求項13】
バイナリーメッセージデータに基づいてウォーターマーク信号を提供する方法(2600)であって、
前記バイナリーメッセージデータの1つのメッセージビットに基づいて、1セットの時間−周波数−ドメイン値の形式で前記メッセージビットを表現する2次元拡散済み情報を提供するステップ(2610)と、
前記2次元拡散済み情報に基づいて前記ウォーターマーク信号を提供するステップ(2620)と、
を備える方法。
【請求項14】
ウォーターマーク済み信号に基づいてバイナリーメッセージデータを提供する方法(2700)であって、
前記ウォーターマーク済み信号の時間−周波数−ドメイン表現を提供するステップ(2710)と、
前記時間−周波数−ドメイン表現の2次元部分に基づいて2次元逆拡散を実行し、前記ウォーターマーク済み信号の前記時間−周波数−ドメイン表現から、前記バイナリーメッセージデータの1つのビット又は前記バイナリーメッセージデータを抽出するために使用される同期情報を得る、ステップ(2720)と、
を備える方法。
【請求項15】
コンピュータ上で作動するときに請求項13又は14に記載の方法を実行させるコンピュータプログラム。
【請求項16】
バイナリーメッセージデータ(101a,m;2410)に基づいてウォーターマーク信号(101b;2420)を提供するウォーターマーク生成器(101;2400)であって、
前記バイナリーメッセージデータの1つのメッセージビットに基づいて、1セットの時間−周波数−ドメイン値の形式で前記メッセージビットを表現する2次元拡散済み情報(b(i,j);2432)を提供する情報処理器(303,304,305)と、
前記2次元拡散済み情報に基づいて前記ウォーターマーク信号を提供するウォーターマーク信号提供器(306,307)と、を備え、
前記情報処理器は、第1拡散シーケンス(cf)を使用して第1メッセージビットを第1拡散方向へ拡散し、かつ前記第1拡散シーケンス(cf)を使用して第2メッセージビットを前記第1拡散方向へ拡散することで中間情報表現(303a,cf・m)を取得し、前記中間情報表現とオーバーレイ情報表現(S)とを結合することで結合済み情報表現(C)を取得し、前記結合済み情報表現を第2拡散シーケンス(ct)を使用して第2拡散方向へ拡散することで前記2次元拡散済み情報を取得するものであり、
前記情報処理器は、前記中間情報表現と、複数のオーバーレイ情報拡散シーケンス(a,b)を使用して前記第1拡散方向に拡散されたオーバーレイ情報表現とを結合し、ここで、拡散された前記第1メッセージビットは第1オーバーレイ情報拡散シーケンス(a)と乗算され、かつ拡散された前記第2メッセージビットは第2オーバーレイ情報拡散シーケンス(b)と乗算されており、
前記第1オーバーレイ情報拡散シーケンスと前記第2オーバーレイ情報拡散シーケンスとは直交していることを特徴とする、ウォーターマーク生成器。
【請求項17】
前記第1拡散シーケンス(cf)はNf×1のサイズを持つことを特徴とする、請求項16に記載のウォーターマーク生成器。
【請求項18】
前記第1拡散シーケンスは周波数方向のみの拡散を定義することを特徴とする、請求項16又は17に記載のウォーターマーク生成器。
【請求項19】
ウォーターマーク済み信号(200a,r(t);2510)に基づいてバイナリーメッセージデータ(202a,2520)を提供するウォーターマーク復号器(200;2500)であって、
前記ウォーターマーク済み信号の時間−周波数−ドメイン表現(204;2532)を提供する時間−周波数−ドメイン表現提供器(203;2530)と、
1つ又は複数の逆拡散ブロック(1201,1203;2542)を持つ逆拡散器を含む同期決定器(201;2540)であって、前記逆拡散器は、前記時間−周波数−ドメイン表現の2次元部分に基づいて2次元逆拡散を実行し同期情報(205;2544)を得る、同期決定器と、
前記同期情報を使用して前記ウォーターマーク済み信号の時間−周波数−ドメイン表現から前記バイナリーメッセージデータを抽出するウォーターマーク抽出器(202;2550)と、を備え、
前記逆拡散器は、時間的に逆拡散された値のセットを得るものであり、ここで、前記時間−周波数−ドメイン表現の複数の値と時間逆拡散シーケンス(ct)の値とを乗算し、かつその乗算結果を加算して時間的に逆拡散された値の1つを取得し、
前記逆拡散器は、前記時間的に逆拡散された値と周波数逆拡散シーケンスの値とを要素毎に乗算し、かつその乗算結果を加算して2次元的に逆拡散された値を取得し、
さらに前記逆拡散器は、時間的に逆拡散された値の連続するセットと互いに異なる周波数逆拡散シーケンスの値とを要素毎に乗算するものであり、ここで、前記時間的に逆拡散された値の第1セットが、共通の周波数逆拡散シーケンスと第1オーバーレイ逆拡散シーケンスとの積である第1の結合済み周波数逆拡散シーケンスと、要素毎にかつ1又は複数の乗算ステップによって乗算され、さらに、前記時間的に逆拡散された値の第2セットが、前記共通の周波数逆拡散シーケンスと第2オーバーレイ逆拡散シーケンスとの積である第2の結合済み周波数逆拡散シーケンスと、要素毎にかつ1又は複数の乗算ステップによって乗算され、
前記第1オーバーレイ逆拡散シーケンスと前記第2オーバーレイ逆拡散シーケンスとは異なり、
前記第1オーバーレイ逆拡散シーケンスと前記第2オーバーレイ逆拡散シーケンスとは直交していることを特徴とする、ウォーターマーク復号器。
【請求項20】
ウォーターマーク済み信号(200a,r(t);2570)に基づいてバイナリーメッセージデータ(202a,2580)を提供するウォーターマーク復号器(200;2560)であって、
前記ウォーターマーク済み信号の時間−周波数−ドメイン表現(204;2592)を提供する時間−周波数−ドメイン表現提供器(203;2590)と、
1つ又は複数の逆拡散ブロックを持つ逆拡散器を含むウォーターマーク抽出器(202;2596)であって、前記逆拡散器は、前記時間−周波数−ドメイン表現の2次元部分に基づいて2次元逆拡散を実行しバイナリーメッセージデータの1つのビットを得る、ウォーターマーク抽出器と、を備え、
前記逆拡散器は、時間的に逆拡散された値のセットを得るものであり、ここで、前記時間−周波数−ドメイン表現の複数の値と時間逆拡散シーケンス(ct)の値とを乗算し、かつその乗算結果を加算して、時間的に逆拡散された値の1つを取得し、
前記逆拡散器は、前記時間的に逆拡散された値と周波数逆拡散シーケンスの値とを要素毎に乗算し、かつその乗算結果を加算して、2次元的に逆拡散された値を取得し、
さらに前記逆拡散器は、時間的に逆拡散された値の連続するセットと互いに異なる周波数逆拡散シーケンスの値とを要素毎に乗算するものであり、ここで、前記時間的に逆拡散された値の第1セットが、共通の周波数逆拡散シーケンスと第1オーバーレイ逆拡散シーケンスとの積である第1の結合済み周波数逆拡散シーケンスと、要素毎にかつ1又は複数の乗算ステップによって乗算され、さらに、前記時間的に逆拡散された値の第2セットが、前記共通の周波数逆拡散シーケンスと第2オーバーレイ逆拡散シーケンスとの積である第2の結合済み周波数逆拡散シーケンスと、要素毎にかつ1又は複数の乗算ステップによって乗算され、
前記第1オーバーレイ逆拡散シーケンスと前記第2オーバーレイ逆拡散シーケンスとは異なり、
前記第1オーバーレイ逆拡散シーケンスと前記第2オーバーレイ逆拡散シーケンスとは直交していることを特徴とする、ウォーターマーク復号器。
【請求項1】
バイナリーメッセージデータ(101a,m;2410)に基づいてウォーターマーク信号(101b;2420)を提供するウォーターマーク生成器(101;2400)であって、
前記バイナリーメッセージデータの1つのメッセージビットに基づいて、1セットの時間−周波数−ドメイン値の形式で前記メッセージビットを表現する2次元拡散済み情報(b(i,j);2432)を提供する情報処理器(303,304,305)と、
前記2次元拡散済み情報に基づいて前記ウォーターマーク信号を提供するウォーターマーク信号提供器(306,307)と、
を備えるウォーターマーク生成器。
【請求項2】
前記情報処理器は、第1拡散シーケンス(cf)を使用して前記メッセージビットを第1拡散方向へ拡散することで中間情報表現(303a,cf・m)を取得し、前記中間情報表現とオーバーレイ情報表現(S)とを結合することで結合済み情報表現(C)を取得し、前記結合済み情報表現を第2拡散シーケンス(ct)を使用して第2拡散方向へ拡散することで前記2次元拡散済み情報を取得することを特徴とする、請求項1に記載のウォーターマーク生成器。
【請求項3】
前記情報処理器は、前記中間情報表現と、オーバーレイ情報拡散シーケンス(a)を使用して第1拡散方向に拡散されたオーバーレイ情報表現とを結合し、ここで、前記メッセージビットとオーバーレイ情報とは第1拡散方向においては異なる拡散シーケンス(cf,a)を用いて拡散され、前記メッセージビットと前記オーバーレイ情報との結合は第2拡散方向においては共通の拡散シーケンス(ct)を用いて拡散されることを特徴とする、請求項2に記載のウォーターマーク生成器。
【請求項4】
前記情報処理器は、前記中間情報表現(303a,cf・m)と前記オーバーレイ情報表現(S)とを乗算的に結合し、前記中間情報表現の値と前記オーバーレイ情報の値とに基づいて形成された積の値を含む前記結合済み情報表現を、前記第2拡散シーケンス(ct)を使用して前記第2拡散方向に拡散し、前記積の値は共通の拡散シーケンスを使用して拡散されることを特徴とする、請求項2又は3に記載のウォーターマーク生成器。
【請求項5】
前記情報処理器は、ビット拡散シーケンス(cf)の正の倍数である第1ビット表現、又は前記ビット拡散シーケンス(cf)の負の倍数である第2ビット表現の上に、所与のメッセージビットを当該所与のビットの値に基づいて選択的に拡散することで、前記メッセージビットを前記第1拡散方向に拡散することを特徴とする、請求項1乃至4のいずれか1項に記載のウォーターマーク生成器。
【請求項6】
前記情報処理器は、
前記メッセージビットを前記第1拡散方向に拡散することで得られた中間情報表現の所与の値、又は前記メッセージビットを前記第1拡散方向に拡散しかつその結果をオーバーレイ情報表現と結合することで得られた結合済み情報表現の所与の値を、拡散値のセットの上にマップすることにより、前記拡散値のセットは、前記所与の値に従ってスケールされた第2拡散シーケンスのスケール済みバージョンとなることを特徴とする、請求項1乃至5のいずれか1項に記載のウォーターマーク生成器。
【請求項7】
前記情報処理器は、中間情報表現として、拡散済みの情報表現Rを
R=cf・m
に従って取得し、
ここで、cfは周波数拡散幅Nfのビット拡散シーケンスを表現するサイズNf×1のベクトルであり、
mは前記バイナリーメッセージデータのNmc個のビットを表現するサイズ1×Nmcのベクトルであり、それらビットの異なるバイナリ値は異なる正負符号を持つベクトルmのエントリーによって表現され、
記号「・」は行列乗算演算子を示し、
さらに前記情報処理器は、前記2次元拡散済み情報Bを演算式
B=R'◇ctT,
を使用して取得し、
ここで、R’はRと同一であるか、又はRをオーバーレイ情報(S)と結合することで取得され、
◇はクロネッカー積の演算子を示し、 Tは転値を示すことを特徴とする、請求項1乃至6のいずれか1項に記載のウォーターマーク生成器。
【請求項8】
ウォーターマーク済み信号(200a,r(t);2510)に基づいてバイナリーメッセージデータ(202a;2520)を提供するウォーターマーク復号器(200,2500)であって、
前記ウォーターマーク済み信号の時間−周波数−ドメイン表現(204,2532)を提供する時間−周波数−ドメイン表現提供器(203,2530)と、
1つ又は複数の逆拡散ブロック(1201,1203;2542)を有する逆拡散器を含む同期決定器(201;2540)であって、前記逆拡散器は前記時間−周波数−ドメイン表現の2次元部分に基づいて2次元逆拡散を実行し同期情報(205;2544)を得る、同期決定器と、
前記同期情報を使用して前記ウォーターマーク済み信号の時間−周波数−ドメイン表現からバイナリーメッセージデータを抽出する、ウォーターマーク抽出器(202;2550)と、
を備えたウォーターマーク復号器。
【請求項9】
ウォーターマーク済み信号(200a,r(t);2570)に基づいてバイナリーメッセージデータ(202a;2580)を提供するウォーターマーク復号器(200,2560)であって、
前記ウォーターマーク済み信号の時間−周波数−ドメイン表現(204,2592)を提供する時間−周波数−ドメイン表現提供器(203,2590)と、
1つ又は複数の逆拡散ブロックを有する逆拡散器を含むウォーターマーク抽出器(202;2596)であって、前記逆拡散器は、前記時間−周波数−ドメイン表現の2次元部分に基づいて2次元逆拡散を実行しバイナリーメッセージデータの1つのビットを得る、ウォーターマーク抽出器と、
を備えたウォーターマーク復号器。
【請求項10】
前記逆拡散器は、前記時間−周波数−ドメイン表現(1377)の複数の値と時間逆拡散シーケンス(cf)の値とを乗算し、かつその乗算結果を加算して時間的に逆拡散された値(1378)を取得し、さらに、
前記時間−周波数−ドメイン表現の異なる周波数に関連する時間的に逆拡散された複数の値又はその値から導出された値と、周波数逆拡散シーケンス(cf)とを要素毎に乗算し、かつその乗算結果を加算して2次元的に逆拡散された値を取得することを特徴とする、請求項8又は9に記載のウォーターマーク復号器。
【請求項11】
前記逆拡散器は、時間的に逆拡散された値のセットを得るものであり、
前記時間−周波数−ドメイン表現の複数の値と時間逆拡散シーケンス(ct)の値とを乗算し、かつその乗算結果を加算して時間的に逆拡散された値の1つを取得し、さらに、
前記時間的に逆拡散された値と周波数逆拡散シーケンスの値とを要素毎に乗算し、かつその乗算結果を加算して2次元的に逆拡散された値を取得することを特徴とする、請求項8乃至10のいずれか1項に記載のウォーターマーク復号器。
【請求項12】
前記逆拡散器は、時間的に逆拡散された値の連続するセットと互いに異なる周波数逆拡散シーケンスの値とを要素毎に乗算するものであり、
ここで、前記時間的に逆拡散された値の第1セットが、共通の周波数逆拡散シーケンスと第1オーバーレイ逆拡散シーケンスとの積である第1の結合済み周波数逆拡散シーケンスと、要素毎にかつ1又は複数の乗算ステップによって乗算され、さらに、
前記時間的に逆拡散された値の第2セットが、前記共通の周波数逆拡散シーケンスと第2オーバーレイ逆拡散シーケンスとの積である第2の結合済み周波数逆拡散シーケンスと、要素毎にかつ1又は複数の乗算ステップによって乗算され、
前記第1オーバーレイ逆拡散シーケンスと前記第2オーバーレイ逆拡散シーケンスとは異なることを特徴とする、請求項11に記載のウォーターマーク復号器。
【請求項13】
バイナリーメッセージデータに基づいてウォーターマーク信号を提供する方法(2600)であって、
前記バイナリーメッセージデータの1つのメッセージビットに基づいて、1セットの時間−周波数−ドメイン値の形式で前記メッセージビットを表現する2次元拡散済み情報を提供するステップ(2610)と、
前記2次元拡散済み情報に基づいて前記ウォーターマーク信号を提供するステップ(2620)と、
を備える方法。
【請求項14】
ウォーターマーク済み信号に基づいてバイナリーメッセージデータを提供する方法(2700)であって、
前記ウォーターマーク済み信号の時間−周波数−ドメイン表現を提供するステップ(2710)と、
前記時間−周波数−ドメイン表現の2次元部分に基づいて2次元逆拡散を実行し、前記ウォーターマーク済み信号の前記時間−周波数−ドメイン表現から、前記バイナリーメッセージデータの1つのビット又は前記バイナリーメッセージデータを抽出するために使用される同期情報を得る、ステップ(2720)と、
を備える方法。
【請求項15】
コンピュータ上で作動するときに請求項13又は14に記載の方法を実行させるコンピュータプログラム。
【請求項16】
バイナリーメッセージデータ(101a,m;2410)に基づいてウォーターマーク信号(101b;2420)を提供するウォーターマーク生成器(101;2400)であって、
前記バイナリーメッセージデータの1つのメッセージビットに基づいて、1セットの時間−周波数−ドメイン値の形式で前記メッセージビットを表現する2次元拡散済み情報(b(i,j);2432)を提供する情報処理器(303,304,305)と、
前記2次元拡散済み情報に基づいて前記ウォーターマーク信号を提供するウォーターマーク信号提供器(306,307)と、を備え、
前記情報処理器は、第1拡散シーケンス(cf)を使用して第1メッセージビットを第1拡散方向へ拡散し、かつ前記第1拡散シーケンス(cf)を使用して第2メッセージビットを前記第1拡散方向へ拡散することで中間情報表現(303a,cf・m)を取得し、前記中間情報表現とオーバーレイ情報表現(S)とを結合することで結合済み情報表現(C)を取得し、前記結合済み情報表現を第2拡散シーケンス(ct)を使用して第2拡散方向へ拡散することで前記2次元拡散済み情報を取得するものであり、
前記情報処理器は、前記中間情報表現と、複数のオーバーレイ情報拡散シーケンス(a,b)を使用して前記第1拡散方向に拡散されたオーバーレイ情報表現とを結合し、ここで、拡散された前記第1メッセージビットは第1オーバーレイ情報拡散シーケンス(a)と乗算され、かつ拡散された前記第2メッセージビットは第2オーバーレイ情報拡散シーケンス(b)と乗算されており、
前記第1オーバーレイ情報拡散シーケンスと前記第2オーバーレイ情報拡散シーケンスとは直交していることを特徴とする、ウォーターマーク生成器。
【請求項17】
前記第1拡散シーケンス(cf)はNf×1のサイズを持つことを特徴とする、請求項16に記載のウォーターマーク生成器。
【請求項18】
前記第1拡散シーケンスは周波数方向のみの拡散を定義することを特徴とする、請求項16又は17に記載のウォーターマーク生成器。
【請求項19】
ウォーターマーク済み信号(200a,r(t);2510)に基づいてバイナリーメッセージデータ(202a,2520)を提供するウォーターマーク復号器(200;2500)であって、
前記ウォーターマーク済み信号の時間−周波数−ドメイン表現(204;2532)を提供する時間−周波数−ドメイン表現提供器(203;2530)と、
1つ又は複数の逆拡散ブロック(1201,1203;2542)を持つ逆拡散器を含む同期決定器(201;2540)であって、前記逆拡散器は、前記時間−周波数−ドメイン表現の2次元部分に基づいて2次元逆拡散を実行し同期情報(205;2544)を得る、同期決定器と、
前記同期情報を使用して前記ウォーターマーク済み信号の時間−周波数−ドメイン表現から前記バイナリーメッセージデータを抽出するウォーターマーク抽出器(202;2550)と、を備え、
前記逆拡散器は、時間的に逆拡散された値のセットを得るものであり、ここで、前記時間−周波数−ドメイン表現の複数の値と時間逆拡散シーケンス(ct)の値とを乗算し、かつその乗算結果を加算して時間的に逆拡散された値の1つを取得し、
前記逆拡散器は、前記時間的に逆拡散された値と周波数逆拡散シーケンスの値とを要素毎に乗算し、かつその乗算結果を加算して2次元的に逆拡散された値を取得し、
さらに前記逆拡散器は、時間的に逆拡散された値の連続するセットと互いに異なる周波数逆拡散シーケンスの値とを要素毎に乗算するものであり、ここで、前記時間的に逆拡散された値の第1セットが、共通の周波数逆拡散シーケンスと第1オーバーレイ逆拡散シーケンスとの積である第1の結合済み周波数逆拡散シーケンスと、要素毎にかつ1又は複数の乗算ステップによって乗算され、さらに、前記時間的に逆拡散された値の第2セットが、前記共通の周波数逆拡散シーケンスと第2オーバーレイ逆拡散シーケンスとの積である第2の結合済み周波数逆拡散シーケンスと、要素毎にかつ1又は複数の乗算ステップによって乗算され、
前記第1オーバーレイ逆拡散シーケンスと前記第2オーバーレイ逆拡散シーケンスとは異なり、
前記第1オーバーレイ逆拡散シーケンスと前記第2オーバーレイ逆拡散シーケンスとは直交していることを特徴とする、ウォーターマーク復号器。
【請求項20】
ウォーターマーク済み信号(200a,r(t);2570)に基づいてバイナリーメッセージデータ(202a,2580)を提供するウォーターマーク復号器(200;2560)であって、
前記ウォーターマーク済み信号の時間−周波数−ドメイン表現(204;2592)を提供する時間−周波数−ドメイン表現提供器(203;2590)と、
1つ又は複数の逆拡散ブロックを持つ逆拡散器を含むウォーターマーク抽出器(202;2596)であって、前記逆拡散器は、前記時間−周波数−ドメイン表現の2次元部分に基づいて2次元逆拡散を実行しバイナリーメッセージデータの1つのビットを得る、ウォーターマーク抽出器と、を備え、
前記逆拡散器は、時間的に逆拡散された値のセットを得るものであり、ここで、前記時間−周波数−ドメイン表現の複数の値と時間逆拡散シーケンス(ct)の値とを乗算し、かつその乗算結果を加算して、時間的に逆拡散された値の1つを取得し、
前記逆拡散器は、前記時間的に逆拡散された値と周波数逆拡散シーケンスの値とを要素毎に乗算し、かつその乗算結果を加算して、2次元的に逆拡散された値を取得し、
さらに前記逆拡散器は、時間的に逆拡散された値の連続するセットと互いに異なる周波数逆拡散シーケンスの値とを要素毎に乗算するものであり、ここで、前記時間的に逆拡散された値の第1セットが、共通の周波数逆拡散シーケンスと第1オーバーレイ逆拡散シーケンスとの積である第1の結合済み周波数逆拡散シーケンスと、要素毎にかつ1又は複数の乗算ステップによって乗算され、さらに、前記時間的に逆拡散された値の第2セットが、前記共通の周波数逆拡散シーケンスと第2オーバーレイ逆拡散シーケンスとの積である第2の結合済み周波数逆拡散シーケンスと、要素毎にかつ1又は複数の乗算ステップによって乗算され、
前記第1オーバーレイ逆拡散シーケンスと前記第2オーバーレイ逆拡散シーケンスとは異なり、
前記第1オーバーレイ逆拡散シーケンスと前記第2オーバーレイ逆拡散シーケンスとは直交していることを特徴とする、ウォーターマーク復号器。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10A】
【図10B】
【図11A】
【図11B】
【図12A】
【図12B】
【図12C】
【図12D】
【図12E】
【図12F】
【図12G】
【図13A】
【図13B】
【図13C】
【図13D】
【図14】
【図15】
【図16】
【図17A】
【図17B】
【図17C】
【図18A】
【図18B】
【図19】
【図20】
【図21】
【図22】
【図23】
【図24】
【図25A】
【図25B】
【図26】
【図27】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10A】
【図10B】
【図11A】
【図11B】
【図12A】
【図12B】
【図12C】
【図12D】
【図12E】
【図12F】
【図12G】
【図13A】
【図13B】
【図13C】
【図13D】
【図14】
【図15】
【図16】
【図17A】
【図17B】
【図17C】
【図18A】
【図18B】
【図19】
【図20】
【図21】
【図22】
【図23】
【図24】
【図25A】
【図25B】
【図26】
【図27】
【公表番号】特表2013−520695(P2013−520695A)
【公表日】平成25年6月6日(2013.6.6)
【国際特許分類】
【出願番号】特願2012−554325(P2012−554325)
【出願日】平成23年2月22日(2011.2.22)
【国際出願番号】PCT/EP2011/052622
【国際公開番号】WO2011/104243
【国際公開日】平成23年9月1日(2011.9.1)
【出願人】(500341779)フラウンホーファー−ゲゼルシャフト・ツール・フェルデルング・デル・アンゲヴァンテン・フォルシュング・アインゲトラーゲネル・フェライン (75)
【Fターム(参考)】
【公表日】平成25年6月6日(2013.6.6)
【国際特許分類】
【出願日】平成23年2月22日(2011.2.22)
【国際出願番号】PCT/EP2011/052622
【国際公開番号】WO2011/104243
【国際公開日】平成23年9月1日(2011.9.1)
【出願人】(500341779)フラウンホーファー−ゲゼルシャフト・ツール・フェルデルング・デル・アンゲヴァンテン・フォルシュング・アインゲトラーゲネル・フェライン (75)
【Fターム(参考)】
[ Back to top ]