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