(57)【要約】【課題】  再生品質の劣化を低減させ、従来より遠くに伝搬可能な周波数帯を使用することにより、受信可能な距離範囲を拡大することを可能とする音響信号に対する情報の埋め込み装置、音響信号からの情報の抽出装置を提供する。【解決手段】  音響信号を所定の大きさの音響フレーム単位で読み込み、各音響フレームについて複数の時間方向窓関数を用いて周波数変換を行い、埋め込むべきビット列の２値に応じて、所定の周波数帯（１．７〜３．４ｋＨｚ）の状態を前部の成分強度が大きい“状態１”又は後部の成分強度が大きい“状態２”に変更する。この際、成分強度を大きくするために、所定の周波数帯の中央付近における値が大きくなるように周波数方向の値に応じて変化する窓関数Ｆを適用する。【選択図】  図３
2008129198.tif 000002
【特許請求の範囲】
【請求項１】
時系列のサンプル列で構成される音響信号に対して、付加情報を聴取不能な状態で埋め込む装置であって、
前記音響信号より、所定数のサンプルを音響フレームとして読み込む音響フレーム読込手段と、
前記音響フレームに対して第１窓関数、第２窓関数、第３窓関数を用いてそれぞれ周波数変換を行い、前記第１窓関数に対応するスペクトルである第１窓スペクトル、前記第２窓関数に対応するスペクトルである第２窓スペクトル、前記第３窓関数に対応するスペクトルである第３窓スペクトルを生成する周波数変換手段と、
前記生成された各窓スペクトルから、電話回線帯域上限を上限または下限とする所定の周波数帯に対応するスペクトル集合を抽出し、前記埋め込むべき付加情報の情報配列の値に基づいて、前記抽出した３セットのスペクトル集合のうち、先頭の第１窓関数と後部の第３窓関数のスペクトル強度の割合を、前記スペクトル集合の周波数範囲における中央付近における値が大きくなるように周波数方向の値に応じて変化する窓関数Ｆを適用して、変更すると共に、中央の第２窓関数の成分を削除する周波数成分変更手段と、
前記変更されたスペクトル強度を含む各窓スペクトルに対して周波数逆変換を行って、改変音響フレームを生成する周波数逆変換手段と、
前記生成された改変音響フレームを順次出力する改変音響フレーム出力手段と、
を有することを特徴とする音響信号に対する情報の埋め込み装置。
【請求項２】
請求項１において、
前記周波数成分変更手段は、所定の固定値Ｖを、前記所定の周波数帯の強度として設定すると共に、前記固定値Ｖを利用して、前記第１窓関数と第３窓関数のスペクトルに所定の強度を与えることにより、前記第１窓関数と第３窓関数のスペクトル強度の割合を変更するものであることを特徴とする音響信号に対する情報の埋め込み装置。
【請求項３】
請求項１または請求項２において、
前記音響フレーム読込手段は、先行する音響フレームと所定数のサンプルを重複させて読み込み、読み込んだ音響フレーム全体に所定の窓関数を乗じて前記周波数変換手段に渡すものであり、
前記改変音響フレーム出力手段は、前記生成された改変音響フレームを先行する改変音響フレームと連結させて出力するものであることを特徴とする音響信号に対する情報の埋め込み装置。
【請求項４】
請求項１から請求項３のいずれかにおいて、
前記電話回線帯域上限は３．４ｋＨｚであり、
前記周波数成分変更手段は、前記電話回線帯域上限を上限または下限とする所定の周波数帯のうち、電話回線帯域上限を上限とする所定の周波数帯を１．７ｋＨｚ以上３．４ｋＨｚ以下の範囲、電話回線帯域上限を下限とする所定の周波数帯を３．４ｋＨｚ以上６．８ｋＨｚ以下の範囲に設定するものであることを特徴とする音響信号に対する情報の埋め込み装置。
【請求項５】
請求項１において、
前記音響信号が左右２チャンネルの時系列のサンプル列で構成されるステレオ音響信号であって、
前記音響フレーム読込手段は、各チャンネルに対応する音響フレームをそれぞれ読み込み、前記周波数変換手段は、各チャンネルの音響フレームに対して周波数変換を行い、各チャンネル別の第１窓スペクトル、第２窓スペクトル、第３窓スペクトルを生成するものであり、
前記周波数成分変更手段は、一方のチャンネルの窓スペクトルから抽出した所定の周波数帯に対応する３セットのスペクトル集合に対して、前記埋め込むべき付加情報の情報配列の値に基づいて、前記第１窓関数と第３窓関数のスペクトル強度の割合を変更すると共に、第２窓関数の成分を削除し、前記一方のチャンネルにおいて行われた変更により削除された成分を補足するよう他方のチャンネルのスペクトル集合間の強度割合を変更するものであり、
前記周波数逆変換手段は、各チャンネルについて、変更されたスペクトル強度を含むフレームスペクトルに対して周波数逆変換を行って改変音響フレームを生成し、前記改変音響フレーム出力手段は、各チャンネルについて、生成された改変音響フレームを順次出力するものであることを特徴とする音響信号に対する情報の埋め込み装置。
【請求項６】
時系列のサンプル列で構成される音響信号に対して、付加情報を聴取不能な状態で埋め込む方法であって、
前記音響信号より、所定数のサンプルを音響フレームとして読み込む音響フレーム読込段階と、
前記音響フレームに対して第１窓関数、第２窓関数、第３窓関数を用いてそれぞれ周波数変換を行い、前記第１窓関数に対応するスペクトルである第１窓スペクトル、前記第２窓関数に対応するスペクトルである第２窓スペクトル、前記第３窓関数に対応するスペクトルである第３窓スペクトルを生成する周波数変換段階と、
前記生成された各窓スペクトルから、電話回線帯域上限を上限または下限とする所定の周波数帯に対応するスペクトル集合を抽出し、前記埋め込むべき付加情報の情報配列の値に基づいて、前記抽出した３セットのスペクトル集合のうち、先頭の第１窓関数と後部の第３窓関数のスペクトル強度の割合を、前記スペクトル集合の周波数範囲における中央付近における値が大きくなるように周波数方向の値に応じて変化する窓関数Ｆを適用して、変更すると共に、中央の第２窓関数の成分を削除する周波数成分変更段階と、
前記変更されたスペクトル強度を含む各窓スペクトルに対して周波数逆変換を行って、改変音響フレームを生成する周波数逆変換段階と、
前記生成された改変音響フレームを順次出力する改変音響フレーム出力段階と、
を有することを特徴とする音響信号に対する情報の埋め込み方法。
【請求項７】
コンピュータを、請求項１〜請求項５のいずれかに記載の音響信号に対する情報の埋め込み装置として機能させるためのプログラム。
【請求項８】
音響信号から、あらかじめ聴取不能な状態で埋め込まれた付加情報を抽出する装置であって、
前記音響信号の所定の区間をデジタル化して、所定数のサンプルで構成される音響フレームを獲得する音響フレーム獲得手段と、
前記音響フレームに対して第１窓関数、第３窓関数を用いてそれぞれ周波数変換を行い、前記第１窓関数に対応するスペクトルである第１窓スペクトル、前記第３窓関数に対応するスペクトルである第３窓スペクトルを生成する周波数変換手段と、
前記生成された各窓スペクトルから、電話回線帯域上限を上限または下限とする所定の周波数帯に対応するスペクトル集合を抽出し、各スペクトル集合ごとにスペクトル強度の総和値を、前記スペクトル集合の周波数範囲における中央付近における値が大きくなるように周波数方向の値に応じて変化する窓関数Ｆを適用して、算出し、その総和値のスペクトル集合間の割合に基づいて、所定の符号を出力する符号化手段と、
前記出力された符号に対応する情報配列を、所定の規則により変換して付加情報を抽出する付加情報抽出手段と、
を有することを特徴とする音響信号からの情報の抽出装置。
【請求項９】
請求項８において、
前記音響フレーム獲得手段は、前記音響信号から、所定数のサンプルで構成される音響フレームを基準フレームとして獲得する基準フレーム獲得手段と、前記基準フレームと所定サンプルずつ移動させることにより位相を変更して設定される複数の音響フレームを位相変更フレームとして設定する位相変更フレーム設定手段により構成され、
前記符号化手段は、前記抽出したスペクトル集合に基づいて、符号判定パラメータを算出する符号判定パラメータ算出手段と、基準フレームが異なる過去の同位相の音響フレームにおいて算出された符号判定パラメータに基づいて、前記基準フレームおよび複数の位相変更フレームのうち１つの音響フレームを位相が最適なものであると判断し、当該最適な位相の音響フレームについて判断された前記符号判定パラメータに基づいて、所定の符号を出力する符号出力手段を有するものであることを特徴とする音響信号からの情報の抽出装置。
【請求項１０】
音響信号から、あらかじめ聴取不能な状態で埋め込まれた付加情報を抽出する方法であって、
前記音響信号の所定の区間をデジタル化して、所定数のサンプルで構成される音響フレームを獲得する音響フレーム獲得段階と、
前記音響フレームに対して第１窓関数、第３窓関数を用いてそれぞれ周波数変換を行い、前記第１窓関数に対応するスペクトルである第１窓スペクトル、前記第３窓関数に対応するスペクトルである第３窓スペクトルを生成する周波数変換段階と、
前記生成された各窓スペクトルから、電話回線帯域上限を上限または下限とする所定の周波数帯に対応するスペクトル集合を抽出し、各スペクトル集合ごとにスペクトル強度の総和値を、前記スペクトル集合の周波数範囲における中央付近における値が大きくなるように周波数方向の値に応じて変化する窓関数Ｆを適用して、算出し、その総和値のスペクトル集合間の割合に基づいて、所定の符号を出力する符号化段階と、
前記出力された符号に対応する情報配列を、所定の規則により変換して付加情報を抽出する付加情報抽出段階と、
を有することを特徴とする音響信号からの情報の抽出方法。
【請求項１１】
コンピュータを、請求項８または請求項９に記載の音響信号からの情報の抽出装置として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＣＤ・ＤＶＤ等を用いた民生・業務用途における鑑賞用のパッケージ音楽分野、放送事業者等が商業目的で配信する放送・ネットワーク音楽配信分野における音楽著作権の保護（不正コピーの監視）および音楽属性情報の提供（楽曲タイトル検索サービス）分野、ミュージアム、イベント会場における展示説明ナレーションに連動した文字情報の提供サービス分野、放送番組やＣＤ／ＤＶＤパッケージの音声信号からＵＲＬなどの情報を抽出し、携帯電話を用いて所定のコンテンツに関連するｗｅｂサイトにアクセスして詳細情報を抽出したり、アンケートに回答したりする非接触なインターネットのゲートウェイサービス分野に関する。
【背景技術】
【０００２】
最近、流れている音楽のタイトル等を知ることができる楽曲属性情報の提供サービスとして、放送された音楽に対して日時と地域を放送局に照会したり、携帯電話で流れている音楽断片を録音してデータベースに登録されているメロディーと照合したりするサービスが実用化されている（例えば、特許文献１、２参照）。
【０００３】
特許文献１、２に記載の発明では、録音した音楽の断片と、データベースに登録されているメロディーと照合するため、データベースに登録される楽曲が増えると、処理負荷が増え、類似したメロディーを誤判定する可能性が増える。そこで、曲名やアーチスト情報などの楽曲属性情報を不可聴な電子透かしとして音響信号に埋め込む手法も提案されている（例えば、特許文献３〜６参照）。
【０００４】
特許文献１〜６に記載の手法では、埋め込み可能な情報量が少なく、音質が少なからず劣化し、各種信号処理により透かし情報が消失し、またアナログコピーに対しては、透かし検出が困難であるという問題がある。そこで、本出願人は、低音域において人間の音源定位感覚が鈍いという特性を活用し、音響信号の低周波数領域における２つの低周波数帯の成分の比率を属性情報のビット値に応じて変更することにより、モノラル、ステレオのいずれの音響信号に対しても、属性情報（付加情報）を埋め込むことができる手法を提案した（特許文献７、８参照）。
【特許文献１】特開２００２−２５９４２１号公報
【特許文献２】特開２００３−１５７０８７号公報
【特許文献３】特開平１１−１４５８４０号公報
【特許文献４】特開平１１−２１９１７２号公報
【特許文献５】特許第３３２１７６７号公報
【特許文献６】特開２００３−９９０７７号公報
【特許文献７】特開２００６−２４３３４０号
【特許文献８】特願２００５−１４７７４３号
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、上記特許文献７、８に記載の手法では、低周波領域を変更することにより情報を埋め込むため、以下のような問題がある。一つ目は、モノラル再生の場合には、打ち消す他チャンネル側の音が発生されないため、聴くに耐えない品質になるという問題である。二つ目は、低周波部分は、スピーカ再生能力が低く、また、低周波音波は空間伝搬上の減衰も大きいという問題である。三つ目は、低周波の場合、低音方向に対しては、スピーカ再生能やマイクロフォン感度の制約で下限を下げることができず、高音方向に対しては、ステレオ再生において音源移動が目立ってしまうため、上限を上げることができず、情報の埋め込みに利用できる周波数範囲が限られ、情報の埋め込み効率が悪いという問題である。
【０００６】
ところが、そこで所定周波数以上であって、人間の聴覚感度が若干落ちる周波数範囲を埋め込み範囲とすることが考えられるが、この場合、埋め込み範囲より下側の周波数範囲は、人間の聴覚感度が高い部分であるため、原音を維持することが望ましい。ところが、原音を維持した場合、その周波数成分が埋め込み領域にも影響するため、埋め込んだ情報が正しく抽出できないという問題がある。
【０００７】
そこで、本発明は、再生品質の劣化を低減させ、従来より遠くに伝搬可能な周波数帯を使用することにより、受信可能な距離範囲を拡大することを可能とする音響信号に対する情報の埋め込み装置、音響信号からの情報の抽出装置を提供することを課題とする。
【課題を解決するための手段】
【０００８】
上記課題を解決するため、本発明では、時系列のサンプル列で構成される音響信号に対して、付加情報を聴取不能な状態で埋め込む装置であって、前記音響信号より、所定数のサンプルを音響フレームとして読み込む音響フレーム読込手段と、前記音響フレームに対して第１窓関数、第２窓関数、第３窓関数を用いてそれぞれ周波数変換を行い、前記第１窓関数に対応するスペクトルである第１窓スペクトル、前記第２窓関数に対応するスペクトルである第２窓スペクトル、前記第３窓関数に対応するスペクトルである第３窓スペクトルを生成する周波数変換手段と、前記生成された各窓スペクトルから、電話回線帯域上限を上限または下限とする所定の周波数帯に対応するスペクトル集合を抽出し、前記埋め込むべき付加情報の情報配列の値に基づいて、前記抽出した３セットのスペクトル集合のうち、先頭の第１窓関数と後部の第３窓関数のスペクトル強度の割合を、前記スペクトル集合の周波数範囲における中央付近における値が大きくなるように周波数方向の値に応じて変化する窓関数Ｆを適用して、変更すると共に、中央の第２窓関数の成分を削除する周波数成分変更手段と、前記変更されたスペクトル強度を含む各窓スペクトルに対して周波数逆変換を行って、改変音響フレームを生成する周波数逆変換手段と、前記生成された改変音響フレームを順次出力する改変音響フレーム出力手段を有する音響信号に対する情報の埋め込み装置を提供する。
【０００９】
また、本発明では、音響信号から、あらかじめ聴取不能な状態で埋め込まれた付加情報を抽出する装置であって、前記音響信号の所定の区間をデジタル化して、所定数のサンプルで構成される音響フレームを獲得する音響フレーム獲得手段と、前記音響フレームに対して第１窓関数、第３窓関数を用いてそれぞれ周波数変換を行い、前記第１窓関数に対応するスペクトルである第１窓スペクトル、前記第３窓関数に対応するスペクトルである第３窓スペクトルを生成する周波数変換手段と、前記生成された各窓スペクトルから、電話回線帯域上限を上限または下限とする所定の周波数帯に対応するスペクトル集合を抽出し、各スペクトル集合ごとにスペクトル強度の総和値を、前記スペクトル集合の周波数範囲における中央付近における値が大きくなるように周波数方向の値に応じて変化する窓関数Ｆを適用して、算出し、その総和値のスペクトル集合間の割合に基づいて、所定の符号を出力する符号化手段と、前記出力された符号に対応する情報配列を、所定の規則により変換して付加情報を抽出する付加情報抽出手段を有する音響信号からの情報の抽出装置を提供する。
【発明の効果】
【００１０】
本発明によれば、音響信号を所定区間に区分し、埋め込むべき付加情報の情報配列の値に基づいて、前記所定区間における電話回線帯域上限を上限または下限とする所定の周波数帯の先頭部分と後部部分のスペクトル強度の割合を、そのスペクトル集合の周波数範囲における中央付近における値が大きくなるように周波数方向の値に応じて変化する窓関数Ｆを適用して、変更するようにしたので、モノラル再生時における再生品質の劣化を低減させるとともに、受信可能な距離範囲を拡大することを可能とするという効果を奏する。
【発明を実施するための最良の形態】
【００１１】
以下、本発明の実施形態について図面を参照して詳細に説明する。
（１．本発明の基本概念）
まず、本発明の基本概念について説明する。上述のように、本出願人は、特許文献７、８において、音響信号の低周波数領域における２つの低周波数帯の成分の比率を属性情報のビット値に応じて変更することにより、モノラル、ステレオのいずれの音響信号に対しても、付加情報を埋め込むことができる手法を提案し、特に特許文献８においては、時間方向に分割して、情報を埋め込む手法を提案している。このように、埋め込む情報に応じて、所定の周波数成分について、所定区間における前部と後部の強度を変化させる点については、本発明も特許文献８と同様である。
【００１２】
しかし、特許文献８で示した手法では、所定の周波数成分として２００〜３００Ｈｚ程度以下の低周波成分を利用しているため、上記課題として示したような問題が生じている。
【００１３】
人間の音源定位感覚は高音部では増大傾向になるが、ソース音源のエネルギーは高音になるほど小さくなる特性があり、特に電話回線帯域（３００Ｈｚ〜３．４ｋＨｚ）を超えると倍音成分のみとなるため、結果的に聴取可能な音源定位変異は小さい。実験の結果、４００Ｈｚ〜１．５ｋＨｚの領域では聴取可能な音源定位変異は増大していくが、１．５ｋＨｚを超えると減少傾向になり、更に４ｋＨｚを超えるとほとんどなくなる。これは、４ｋＨｚ以上は音声の成分はほとんどなくなり、楽器音では基音が最高音域を超えることため倍音のみの成分となるためである。
【００１４】
そこで、どの周波数範囲に埋め込むべきかを具体的に検討する。音声通信として普及度の高い携帯電話機を受信端末として利用する場合、上限については、電話回線帯域および携帯電話機の上限である３．４ｋＨｚとする必要がある。そこで、下限については、上限の３．４ｋＨｚから１オクターブ下がった１．７ｋＨｚとすることとした。また、携帯電話機以外を受信端末として利用する場合には、可聴周波数の上限（２２ｋＨｚ）以下であれば３．４ｋＨｚより高い周波数領域を用いることができるが、１０ｋＨｚを超える高音域では、圧縮・変調などの信号処理の影響を受け易く、スピーカによっては再生能力が低下するため、下限を電話回線帯域の上限である３．４ｋＨｚとし、上限を３．４ｋＨｚから１オクターブ上がった６．８ｋＨｚとすることとした。なお、“１．７ｋＨｚ”“３．４ｋＨｚ”“６．８ｋＨｚ”という値は、代表的な値であり、必ずしも正確な値である必要はなく、そこから若干ずれた値であっても良い。なお、本明細書においては、“１．７ｋＨｚ〜３．４ｋＨｚ”を「電話高周波帯」、“３．４ｋＨｚ〜６．８ｋＨｚ”を「超電話周波帯」と呼ぶことにする。また、電話回線帯域の上限は上述のように３．４ｋＨｚ近辺であるので、上記「電話高周波帯」、「超電話周波帯」はそれぞれ可聴周波数範囲で電話回線帯域の上限より若干低音側、若干高音側における所定の周波数帯に該当する。
【００１５】
（２．音響信号に対する情報の埋め込み装置）
図１は、本発明に係る音響信号に対する情報の埋め込み装置の構成を示す機能ブロック図である。図１において、１０は音響フレーム読込手段、２０は周波数変換手段、３０は周波数成分変更手段、４０は周波数逆変換手段、５０は改変音響フレーム出力手段、６０は記憶手段、６１は音響信号記憶部、６２は付加情報記憶部、６３は改変音響信号記憶部、７０は付加情報読込手段である。なお、図１に示す装置は、ステレオ音響信号、モノラル音響信号の両方に対応可能であるが、ここでは、ステレオ音響信号に対して処理を行う場合について説明していく。
【００１６】
音響フレーム読込手段１０は、付加情報の埋め込み対象とする元のステレオ音響信号の各チャンネルから所定数のサンプルを１フレームとして読み込む機能を有している。周波数変換手段２０は、音響フレーム読込手段１０が読み込んだ音響信号のフレームをフーリエ変換等により周波数変換してフレームスペクトルを生成する機能を有している。周波数成分変更手段３０は、生成されたフレームスペクトルから電話回線帯域上限を上限または下限とする所定の周波数帯に相当するスペクトル集合を３セット抽出し、付加情報記憶部６２から抽出した付加情報に基づいて、各スペクトル集合の強度を変更する機能を有している。周波数逆変換手段４０は、強度が変更されたスペクトル集合を含むフレームスペクトルに対して周波数逆変換を行うことにより、改変音響フレームを生成する機能を有している。改変音響フレーム出力手段５０は、生成された改変音響フレームを順次出力する機能を有している。記憶手段６０は、付加情報を埋め込む対象とするステレオ音響信号を記憶した音響信号記憶部６１と、ビット配列として構成され、ステレオ音響信号に埋め込まれる付加情報を記憶した付加情報記憶部６２と、付加情報埋め込み後の改変音響信号を記憶する改変音響信号記憶部６３を有しており、その他処理に必要な各種情報を記憶するものである。付加情報読込手段７０は、付加情報記憶部６２から付加情報を抽出し、抽出した付加情報に対して誤り検出ビットを１ビット付加して８ビットのビット配列を作成する機能を有している。なお、付加情報とは、音響情報に付加して埋め込むべき情報であり、タイトルやアーティスト名等の属性情報、および属性情報以外の他の情報を含むものである。図１に示した各構成手段は、現実にはコンピュータおよびその周辺機器等のハードウェアに専用のプログラムを搭載することにより実現される。すなわち、コンピュータが、専用のプログラムに従って各手段の内容を実行することになる。
【００１７】
（３．埋め込み装置の処理動作）
次に、図１に示した音響信号に対する情報の埋め込み装置の第１の実施形態における処理動作ついて説明する。ここでは、音響信号として、Ｌ（左）、Ｒ（右）の２チャンネルを有するステレオ音響信号に対して処理を行う場合について説明していく。音響フレーム読込手段１０は、音響信号記憶部６１に記憶されたステレオ音響信号の左右の各チャンネルから、それぞれ所定数のサンプルを１音響フレームとして読み込む。音響フレーム読込手段１０が読み込む１音響フレームのサンプル数は、適宜設定することができるが、サンプリング周波数が４４．１ｋＨｚの場合、４０９６サンプル程度とすることが望ましい。したがって、音響フレーム読込手段１０は、左チャンネル、右チャンネルについてそれぞれ４０９６サンプルずつ、順次音響フレームとして読み込んでいくことになる。
【００１８】
音響フレームとしては、ＡタイプとＢタイプが存在する。Ａタイプの音響フレーム、Ｂタイプの音響フレームは、それぞれ同タイプの先行する音響フレームの最後のサンプルの次のサンプルを先頭サンプルとして設定される。そして、ＡタイプとＢタイプの音響フレームは互いに所定数（本実施形態では２０４８）のサンプルを重複して設定される。例えば、Ａタイプの音響フレームを先頭からＡ１、Ａ２、Ａ３…とし、Ｂタイプの音響フレームを先頭からＢ１、Ｂ２、Ｂ３…とすると、Ａ１はサンプル１〜４０９６、Ａ２はサンプル４０９７〜８１９２、Ａ３はサンプル８１９３〜１２２８８、Ｂ１はサンプル２０４９〜６１４４、Ｂ２はサンプル６１４５〜１０２４０、Ｂ３はサンプル１０２４１〜１４３３６となる。なお、ＡタイプとＢタイプは相対的なものであるので、どちらが先であっても良い。すなわち、上記とは逆にＡ１がサンプル２０４９〜６１４４、Ａ２がサンプル６１４５〜１０２４０、Ａ３がサンプル１０２４１〜１４３３６、Ｂ１がサンプル１〜４０９６、Ｂ２がサンプル４０９７〜８１９２、Ｂ３がサンプル８１９３〜１２２８８であっても良い。
【００１９】
周波数変換手段２０は、音響フレーム読込手段１０が読み込んだ音響フレームに対して、周波数変換を行って、その音響フレームのスペクトルであるフレームスペクトルを得る。具体的には、窓関数を利用して周波数変換を行う。周波数変換としては、フーリエ変換、ウェーブレット変換その他公知の種々の手法を用いることができる。本実施形態では、フーリエ変換を用いた場合を例にとって説明する。
【００２０】
一般に、所定の信号に対してフーリエ変換を行う場合、信号を所定の長さに区切って行う必要があるが、この場合、所定長さの信号に対してそのままフーリエ変換を行うと、擬似高調波成分が発生する。そこで、一般にフーリエ変換を行う場合には、ハニング窓と呼ばれる窓関数を用いて、信号の値を変化させた後、変化後の値に対してフーリエ変換を実行する。
【００２１】
本実施形態では、擬似高調波成分の発生を防止するためだけではなく、一つの音響フレームから、情報を埋め込むための複数の状態を作り出すため、複数の窓関数を用意し、一つの音響フレームに対して、各窓関数を利用してフーリエ変換を行い、複数のスペクトルを得る。複数の窓関数として、より良い効果を得るため、本実施形態では、図２（ｂ）〜（ｄ）に示したような第１窓関数Ｗ（１，ｉ）、第２窓関数Ｗ（２，ｉ）、第３窓関数Ｗ（３，ｉ）を用意し、抽出側で認識し易いようにした。第１窓関数Ｗ（１，ｉ）は、音響フレームの前部を抽出するためのものであり、図２（ｂ）に示すように前部の所定のサンプル番号ｉの位置において、最大値１をとり、後部においては、最小値０をとるように設定されている。どのサンプル番号の場合に最大値をとるかについては、窓関数Ｗ（１，ｉ）の設計によって異なってくるが、本実施形態では、後述する〔数式１〕で定義される。窓関数Ｗ（１，ｉ）を乗じることにより、図２（ａ）に示すような音響フレームの信号波形は、図２（ｆ）に示すように、前部に信号成分が残り、後部の信号成分が削除されたものとなり、これがフーリエ変換対象となる。
【００２２】
また、第２窓関数Ｗ（２，ｉ）は、音響フレームの中央部を抽出するためのものであり、図２（ｃ）に示すように、中央部の所定のサンプル番号ｉの位置において、最大値１をとり、前部、後部においては、最小値０をとるように設定されている。どのサンプル番号の場合に最大値をとるかについては、窓関数Ｗ（２，ｉ）の設計によって異なってくるが、本実施形態では、後述する〔数式２〕で定義される。窓関数Ｗ（２，ｉ）を乗じることにより、図２（ａ）に示すような音響フレームの信号波形は、図２（ｇ）に示すように、中央部に信号成分が残り、前部と後部の信号成分が除去されたものとなり、これがフーリエ変換対象となる。
【００２３】
また、第３窓関数Ｗ（３，ｉ）は、音響フレームの後部を抽出するためのものであり、図２（ｄ）に示すように、前部においては最小値０をとり、後部の所定のサンプル番号ｉの位置において、最大値１をとるように設定されている。どのサンプル番号の場合に最大値をとるかについては、窓関数Ｗ（３，ｉ）の設計によって異なってくるが、本実施形態では、後述する〔数式３〕で定義される。窓関数Ｗ（３，ｉ）を乗じることにより、図２（ａ）に示すような音響フレームの信号波形は、図２（ｈ）に示すように、前部の信号成分が除去され、後部に信号成分が残ったものとなり、これがフーリエ変換対象となる。このように前部、中央部、後部を抽出した後、フーリエ変換を実行するため、前部、中央部、後部に対応したスペクトルが得られることになる。１つの音響フレームにビット値を埋め込むためには、本来、前部と後部の２つに分けられれば良いのであるが、抽出側においては、必ずしも、信号を同期して読み込むことができるとは限らず、したがって、前部と後部をはっきりと区別するため、本発明では、埋め込み時に中央部の信号成分を常に除去し、前部と後部を時間的に分離することとしている（ただし、抽出時は前部と後部だけを解析すればよく、中央部は無視してよい）。本発明において用いる窓関数は、窓関数Ｗ（１，ｉ）と窓関数Ｗ（３，ｉ）が左右非対称であるため、抽出時において、埋め込まれていた情報の誤認識が起こりにくくなる。
【００２４】
また、本発明では、音響フレームを重複させて読み込み、奇数フレーム（または偶数フレーム）については、窓関数Ｗ（１，ｉ）、Ｗ（２，ｉ）、Ｗ（３，ｉ）を用い、偶数フレーム（または奇数フレーム）については、図２（ｅ）に示したような窓関数Ｗ（４，ｉ）を用いるようにした。
【００２５】
なお、本実施形態においては、音響フレームは重複して読み込まれる。すなわち、奇数番目の音響フレームと偶数番目の音響フレームは、所定数のサンプルを重複して読み込む。上記のように、奇数フレームと偶数フレームでは、用いられる窓関数が異なるが、奇数フレームと偶数フレームは単に奇数か偶数かの違いだけであるため、どちらに対してどちらの処理を行っても良い。したがって、本明細書では、奇数フレーム、偶数フレームの一方をＡタイプフレーム、他方をＢタイプフレームと呼ぶことにする。本実施形態では、奇数フレームをＡタイプフレーム、偶数フレームをＢタイプフレームとして説明するが、逆に偶数フレームをＡタイプフレーム、奇数フレームをＢタイプフレームとしても良い。
【００２６】
本実施形態では、窓関数Ｗ（１，ｉ）〜Ｗ（４，ｉ）は、以下の〔数式１〕〜〔数式４〕で定義される。なお、図２において、横軸は時間軸（ｉ）である。ｉは、後述するように、各音響フレーム内のＮ個のサンプルに付した通し番号であるため時刻ｔに比例している。また、図２（ａ）（ｆ）（ｇ）（ｈ）（ｉ）において縦軸は信号の振幅値（レベル）を示す。図２（ｂ）〜（ｅ）において縦軸は窓関数Ｗ（１，ｉ）、Ｗ（２，ｉ）、Ｗ（３，ｉ）、Ｗ（４，ｉ）の値を示しており、Ｗ（１，ｉ）、Ｗ（２，ｉ）、Ｗ（３，ｉ）、Ｗ（４，ｉ）の最大値はいずれも１である。
【００２７】
〔数式１〕
ｉ≦３Ｎ／８のとき、Ｗ（１，ｉ）＝０．５−０．５ｃｏｓ（８πｉ／（３Ｎ））
３Ｎ／８＜ｉ≦Ｎ／２のとき、Ｗ（１，ｉ）＝０．５−０．５ｃｏｓ（８π（ｉ−Ｎ／４）／Ｎ）
ｉ＞Ｎ／２のとき、Ｗ（１，ｉ）＝０．０
【００２８】
〔数式２〕
ｉ≦３Ｎ／８のとき、Ｗ（２，ｉ）＝０．０
３Ｎ／８＜ｉ≦Ｎ／２のとき、Ｗ（２，ｉ）＝０．５−０．５ｃｏｓ（８π（ｉ−３Ｎ／８）／Ｎ）
Ｎ／２＜ｉ≦３Ｎ／４のとき、Ｗ（２，ｉ）＝０．５−０．５ｃｏｓ（４π（ｉ−Ｎ／４）／Ｎ）
ｉ＞３Ｎ／４のとき、Ｗ（２，ｉ）＝０．０
【００２９】
〔数式３〕
ｉ≦Ｎ／２のとき、Ｗ（３，ｉ）＝０．０
ｉ＞Ｎ／２のとき、Ｗ（３，ｉ）＝０．５−０．５ｃｏｓ（４π（ｉ−Ｎ／２）／Ｎ）
【００３０】
〔数式４〕
ｉ≦Ｎ／４のとき、Ｗ（４，ｉ）＝０．０
Ｎ／４＜ｉ≦Ｎ／２のとき、Ｗ（４，ｉ）＝０．５−０．５ｃｏｓ（４π（ｉ−Ｎ／４）／Ｎ）
Ｎ／２＜ｉ≦７Ｎ／８のとき、Ｗ（４，ｉ）＝０．５−０．５ｃｏｓ（８π（ｉ−Ｎ／８）／（３Ｎ））
ｉ＞７Ｎ／８のとき、Ｗ（４，ｉ）＝０．０
【００３１】
なお、図２および上記〔数式１〕〜〔数式４〕から明らかなように、窓関数Ｗ（１，ｉ）とＷ（３，ｉ）は、互いに非対称な形状である。これは、後述する抽出側において、両者の識別を容易にするためである。また、窓関数Ｗ（１，ｉ）、Ｗ（２，ｉ）、Ｗ（３，ｉ）は、ｉが所定の値のときに最大値１をとり、ｉがその他の値をとる場合には、ｉの値に応じて単調増加、または単調減少する窓関数を分割したものであるため、窓関数Ｗ（１，ｉ）とＷ（３，ｉ）が定まると、窓関数Ｗ（２，ｉ）も必然的に定まる。このため、窓関数Ｗ（２，ｉ）は左右非対称の形状となっている。
【００３２】
本発明においては、奇数フレームと偶数フレームを、所定サンプルずつ重複して読み込むため、情報の埋め込みを行った後、音響信号に復元する際に、窓関数を乗じた奇数フレームと、窓関数を乗じた偶数フレームの重複サンプルを加算した場合に、ほぼ元の値に戻るようにしなければならない。このため、窓関数Ｗ（４，ｉ）の形状は、窓関数Ｗ（１，ｉ）、Ｗ（２，ｉ）、Ｗ（３，ｉ）の値に応じて必然的に定まる。すなわち、奇数フレームと偶数フレームの重複部分において、窓関数Ｗ（１，ｉ）、Ｗ（２，ｉ）、Ｗ（３，ｉ）、Ｗ（４，ｉ）を加算すると、全区間固定値１になるように定義されている。
【００３３】
周波数変換手段２０が、Ａタイプの音響フレームに対してフーリエ変換を行う場合は、左チャンネル信号Ｘｌ（ｉ）、右チャンネル信号Ｘｒ（ｉ）（ｉ＝０，…，Ｎ−１）に対して、３つの窓関数Ｗ（１，ｉ）、Ｗ（２，ｉ）、Ｗ（３，ｉ）を用いて、以下の〔数式５〕に従った処理を行い、左チャンネルに対応する変換データの実部Ａｌ（１，ｊ）、Ａｌ（２，ｊ）、Ａｌ（３，ｊ）、虚部Ｂｌ（１，ｊ）、Ｂｌ（２，ｊ）、Ｂｌ（３，ｊ）、右チャンネルに対応する変換データの実部Ａｒ（１，ｊ）、Ａｒ（２，ｊ）、Ａｒ（３，ｊ）、虚部Ｂｒ（１，ｊ）、Ｂｒ（２，ｊ）、Ｂｒ（３，ｊ）を得る。なお、窓関数Ｗ（１，ｉ）、Ｗ（２，ｉ）、Ｗ（３，ｉ）は、それぞれ音響フレームの前部（先頭）付近、中央付近、後部付近において値が大きくなる関数となっている。
【００３４】
〔数式５〕
Ａｌ（１，ｊ）＝Σi=0,…,N-1Ｗ（１，ｉ）・Ｘｌ（ｉ）・ｃｏｓ（２πｉｊ／Ｎ）
Ｂｌ（１，ｊ）＝Σi=0,…,N-1Ｗ（１，ｉ）・Ｘｌ（ｉ）・ｓｉｎ（２πｉｊ／Ｎ）
Ａｌ（２，ｊ）＝Σi=0,…,N-1Ｗ（２，ｉ）・Ｘｌ（ｉ）・ｃｏｓ（２πｉｊ／Ｎ）
Ｂｌ（２，ｊ）＝Σi=0,…,N-1Ｗ（２，ｉ）・Ｘｌ（ｉ）・ｓｉｎ（２πｉｊ／Ｎ）
Ａｌ（３，ｊ）＝Σi=0,…,N-1Ｗ（３，ｉ）・Ｘｌ（ｉ）・ｃｏｓ（２πｉｊ／Ｎ）
Ｂｌ（３，ｊ）＝Σi=0,…,N-1Ｗ（３，ｉ）・Ｘｌ（ｉ）・ｓｉｎ（２πｉｊ／Ｎ）
Ａｒ（１，ｊ）＝Σi=0,…,N-1Ｗ（１，ｉ）・Ｘｒ（ｉ）・ｃｏｓ（２πｉｊ／Ｎ）
Ｂｒ（１，ｊ）＝Σi=0,…,N-1Ｗ（１，ｉ）・Ｘｒ（ｉ）・ｓｉｎ（２πｉｊ／Ｎ）
Ａｒ（２，ｊ）＝Σi=0,…,N-1Ｗ（２，ｉ）・Ｘｒ（ｉ）・ｃｏｓ（２πｉｊ／Ｎ）
Ｂｒ（２，ｊ）＝Σi=0,…,N-1Ｗ（２，ｉ）・Ｘｒ（ｉ）・ｓｉｎ（２πｉｊ／Ｎ）
Ａｒ（３，ｊ）＝Σi=0,…,N-1Ｗ（３，ｉ）・Ｘｒ（ｉ）・ｃｏｓ（２πｉｊ／Ｎ）
Ｂｒ（３，ｊ）＝Σi=0,…,N-1Ｗ（３，ｉ）・Ｘｒ（ｉ）・ｓｉｎ（２πｉｊ／Ｎ）
【００３５】
周波数変換手段２０が、Ｂタイプの音響フレームに対してフーリエ変換を行う場合は、左チャンネル信号Ｘｌ（ｉ）、右チャンネル信号Ｘｒ（ｉ）（ｉ＝０，…，Ｎ−１）に対して、窓関数Ｗ（４，ｉ）を用いて、以下の〔数式６〕に従った処理を行い、左チャンネルに対応する変換データの実部Ａｌ（４，ｊ）、虚部Ｂｌ（４，ｊ）、右チャンネルに対応する変換データの実部Ａｒ（４，ｊ）、虚部Ｂｒ（４，ｊ）を得る。
【００３６】
〔数式６〕
Ａｌ（４，ｊ）＝Σi=0,…,N-1Ｗ（４，ｉ）・Ｘｌ（ｉ）・ｃｏｓ（２πｉｊ／Ｎ）
Ｂｌ（４，ｊ）＝Σi=0,…,N-1Ｗ（４，ｉ）・Ｘｌ（ｉ）・ｓｉｎ（２πｉｊ／Ｎ）
Ａｒ（４，ｊ）＝Σi=0,…,N-1Ｗ（４，ｉ）・Ｘｒ（ｉ）・ｃｏｓ（２πｉｊ／Ｎ）
Ｂｒ（４，ｊ）＝Σi=0,…,N-1Ｗ（４，ｉ）・Ｘｒ（ｉ）・ｓｉｎ（２πｉｊ／Ｎ）
【００３７】
上記〔数式５〕〔数式６〕において、ｉは、各音響フレーム内のＮ個のサンプルに付した通し番号であり、ｉ＝０，１，２，…Ｎ−１の整数値をとる。また、ｊは周波数の値について、値の小さなものから順に付した通し番号であり、ｉと同様にｊ＝０，１，２，…Ｎ／２−１の整数値をとる。サンプリング周波数が４４．１ｋＨｚ、Ｎ＝４０９６の場合、ｊの値が１つ異なると、周波数が１０．８Ｈｚ異なることになる。
【００３８】
上記〔数式５〕〔数式６〕に従った処理を実行することにより、各音響フレームの信号成分に窓関数を作用させた信号成分についてのスペクトルが得られる。続いて、周波数成分変更手段３０が、生成されたスペクトルの所定の周波数領域から３つのスペクトル集合を抽出する。上記のように、本実施形態では、“１．７ｋＨｚ〜３．４ｋＨｚ”の「電話高周波帯」を抽出することになる。
【００３９】
ここで、図３に、本実施形態による周波数成分の状態を１音響フレーム単位で示す。図３に示す各音響フレームにおいて、横軸は時間方向、縦軸は周波数方向を示している。また、網掛けされた部分は、周波数成分が存在している（０より大）部分を示し、網掛けが濃いほど成分強度が強いことを示している。本実施形態では、電話高周波帯のうち時間的に前部の成分と後部の成分の分布により埋め込む符号の区別を行う。
【００４０】
本実施形態では、図３（ａ）に示すような原状態の周波数成分に対して、各音響フレームの電話高周波帯における成分の状態を変更することにより、３つの状態に設定する。具体的には、前部、後部ともに成分が除去された状態（以下、「状態０」という）、前部の強度が大きい状態（以下、「状態１」という）、後部の強度が大きい状態（以下、「状態２」という）のいずれかに変更する。このうち、状態０は書込みエラーが生じた場合に用いるため、状態１と状態２により、１音響フレームに２値（１ビット）の情報を埋め込むことが可能となる。
【００４１】
状態０に設定する場合、Ｌ-chの信号の電話高周波帯の成分を全て除去し、除去した成分と同等の成分をＲ-chの信号の電話高周波帯に加算して図３（ｂ）に示すような状態に変更する。状態１に設定する場合、Ｌ-chの信号の電話高周波帯の前部の各スペクトル集合の強度を高め、Ｒ-chの信号の電話高周波帯の前部の各スペクトル集合の強度を弱めている。また、Ｌ-chの信号の電話高周波帯の中央部と後部の各スペクトル集合の成分を除去し、除去した成分と同等の成分をＲ-chの信号の電話高周波帯に加算する。このようにして図３（ｃ）に示すような状態に変更する。
【００４２】
状態２に設定する場合、Ｌ-chの信号の電話高周波帯の前部と中央部の各スペクトル集合の成分を除去し、除去した成分と同等の成分をＲ-chの信号の電話高周波帯に加算する。また、Ｌ-chの信号の電話高周波帯の後部のスペクトル集合の強度を高め、Ｒ-chの信号の電話高周波帯の後部のスペクトル集合の強度を弱めている。このようにして図３（ｄ）に示すような状態に変更する。
【００４３】
周波数成分変更手段３０は、Ａタイプの音響フレームについて、付加情報読込手段７０が読み込んだビット値に応じて、スペクトル集合の強度を変更する処理を行う。本実施形態では、付加情報を１ビットずつ読み込み、２通りの値のいずれであるかを１音響フレームに対して埋め込む。周波数成分変更手段３０は、読み込んだ値１、値２に応じて、電話高周波帯成分の状態を状態１、状態２のいずれかに変更する。具体的には、まず、周波数成分変更手段３０は、上記〔数式５〕により求めた左チャンネルの実部Ａｌ（１，ｊ）、Ａｌ（３，ｊ）、虚部Ｂｌ（１，ｊ）、Ｂｌ（３，ｊ）、右チャンネルの実部Ａｒ（１，ｊ）、Ａｒ（３，ｊ）、虚部Ｂｒ（１，ｊ）、Ｂｒ（３，ｊ）を利用して、以下の〔数式７〕により、強度値Ｅ1、Ｅ2を算出する。
【００４４】
〔数式７〕
Ｅ1＝Σj=m,M-1｛Ａｌ（1,ｊ）2＋Ｂｌ（1,ｊ）2＋Ａr（1,ｊ）2＋Ｂr（1,ｊ）2｝・Ｆ（ｊ−m）・Ｃ
Ｅ2＝Σj=m,M-1｛Ａｌ（３,ｊ）2＋Ｂｌ（３,ｊ）2＋Ａr（３,ｊ）2＋Ｂr（３,ｊ）2｝・Ｆ（ｊ−m）・Ｃ
【００４５】
上記〔数式７〕中のＦ（ｊ）は周波数方向の値に応じて変化する窓関数であり、以下の〔数式８〕で定義されるものである。
【００４６】
〔数式８〕
Ｆ（ｊ）＝１．０−（ｊ−Ｐｒ）2／Ｐｒ2
【００４７】
上記〔数式８〕において、Ｐｒ＝Ｐ／２である。なお、Ｐ＝Ｍ−ｍである。この窓関数Ｆ（ｊ）が描く曲線を図４に示す。図４に示すように、窓関数Ｆ（ｊ）は、電話高周波帯における周波数の中心部分に重みを大きくした関数となっている。実際に窓関数Ｆ（ｊ）を適用する際には、電話高周波帯の下限であるｍだけｊの値を補正して適用することになる。
【００４８】
また、上記〔数式７〕中のＣは固定係数であり、周波数窓関数を利用することにより低減する強度を補正する。この固定係数Ｃは、以下の〔数式９〕で定義される。
【００４９】
〔数式９〕
Ｃ＝１．０／Σj=0,P-1Ｆ（ｊ）
【００５０】
上記〔数式７〕において、ｍは電話高周波帯の下限の成分の番号、Ｍは電話高周波帯の上限のすぐ上の成分の番号である。本実施形態では、電話高周波帯を“１．７ｋＨｚ〜３．４ｋＨｚ”とするため、ｍ＝１６０、Ｍ＝３２０に設定する。したがって、この場合、Ｐ＝１６０となる。上記〔数式７〕により算出されたＥ1、Ｅ2は音響フレームの電話高周波帯における前部、後部のスペクトル集合の強度値を示すことになる。続いて、この強度値Ｅ1、Ｅ2がレベル下限値Ｌｅｖ以上であるかどうかの判定を行う。レベル下限値Ｌｅｖは、音響信号Ｘｌ（ｉ）、Ｘｒ（ｉ）の振幅最大値が１に正規化されており、Ｍ＝３２０に設定されている場合、０．２５に設定する。このＬｅｖ＝０．２５という値は、経験的にアナログ変換への耐性が維持できるレベルであり、成分強度が小さい場合は適宜下げることになるが、その場合は、アナログ変換により検出精度も低下することになる。
【００５１】
強度値Ｅ1、Ｅ2がレベル下限値Ｌｅｖ以上であるかどうかを判断するのは、信号の強度が小さいと、信号を変化させても、その変化を抽出側で検出することができないためである。すなわち、電話高周波帯における各スペクトル成分を十分な大きさとすることができるかどうかを判断することになる。
【００５２】
Ｅ1がレベル下限値Ｌｅｖより大きく、埋め込むべき値が“値１”である場合、以下の〔数式１０〕に従った処理を実行することにより、電話高周波帯の状態を“状態１”、すなわち、図３（ｃ）に示したような状態に変更する。
【００５３】
〔数式１０〕
ｊ＝ｍ〜Ｍ−１の各成分に対して
Ａｌ´（３，ｊ）＝０
Ｂｌ´（３，ｊ）＝０
Ｅ（３，ｊ）＝｛Ａｌ（３，ｊ）2＋Ｂｌ（３，ｊ）2＋Ａｒ（３，ｊ）2＋Ｂｒ（３，ｊ）2｝1/2
Ａｒ´（３，ｊ）＝Ａｒ（３，ｊ）・Ｅ（３，ｊ）／｛Ａｒ（３，ｊ）2＋Ｂｒ（３，ｊ）2｝1/2
Ｂｒ´（３，ｊ）＝Ｂｒ（３，ｊ）・Ｅ（３，ｊ）／｛Ａｒ（３，ｊ）2＋Ｂｒ（３，ｊ）2｝1/2
Ａｌ´（２，ｊ）＝０
Ｂｌ´（２，ｊ）＝０
Ｅ（２，ｊ）＝｛Ａｌ（２，ｊ）2＋Ｂｌ（２，ｊ）2＋Ａｒ（２，ｊ）2＋Ｂｒ（２，ｊ）2｝1/2
Ａｒ´（２，ｊ）＝Ａｒ（２，ｊ）・Ｅ（２，ｊ）／｛Ａｒ（２，ｊ）2＋Ｂｒ（２，ｊ）2｝1/2
Ｂｒ´（２，ｊ）＝Ｂｒ（２，ｊ）・Ｅ（２，ｊ）／｛Ａｒ（２，ｊ）2＋Ｂｒ（２，ｊ）2｝1/2
さらに、ｊ＝ｍ〜Ｍ−１の各成分に対して、
Ｅ（１,ｊ）＝｛Ａｌ（１,ｊ）2＋Ｂｌ（１,ｊ）2＋Ａｒ（１,ｊ）2＋Ｂｒ（１,ｊ）2｝1/2
Ａｌ´（１,ｊ）＝Ｆ（ｊ−m）・Ａｌ（１,ｊ）・Ｅ（１,ｊ）／｛Ａｌ（１,ｊ）2＋Ｂｌ（１,ｊ）2｝1/2
Ｂｌ´（１,ｊ）＝Ｆ（ｊ−m）・Ｂｌ（１,ｊ）・Ｅ（１,ｊ）／｛Ａｌ（１,ｊ）2＋Ｂｌ（１,ｊ）2｝1/2
Ａｒ´（１,ｊ）＝（１．０−Ｆ（ｊ−m））・Ａｌ（１,ｊ）・Ｅ（１,ｊ）／｛Ａｌ（１,ｊ）2＋Ｂｌ（１,ｊ）2｝1/2
Ｂｒ´（１,ｊ）＝（１．０−Ｆ（ｊ−m））・Ｂｌ（１,ｊ）・Ｅ（１,ｊ）／｛Ａｌ（１,ｊ）2＋Ｂｌ（１,ｊ）2｝1/2
【００５４】
上記〔数式１０〕においては、ｊ＝ｍ〜Ｍ−１において、Ａｌ´（３，ｊ）、Ｂｌ´（３，ｊ）を共に０としている。これは、図３（ｃ）の上段に示すように、L-chにおいて、電話高周波帯の後部の各成分を０にすることを示しているが、“状態１”は、電話高周波帯の前部との差を明確にすることができれば十分であるため、必ずしも０にする必要はなく、十分に小さな値であれば良い。
【００５５】
Ｅ2がレベル下限値Ｌｅｖより大きく、埋め込むべき値が“値２”である場合、以下の〔数式１１〕に従った処理を実行することにより、電話高周波帯の状態を“状態２”、すなわち、図３（ｄ）に示したような状態に変更する。
【００５６】
〔数式１１〕
ｊ＝ｍ〜Ｍ−１の各成分に対して、
Ａｌ´（１,ｊ）＝０
Ｂｌ´（１,ｊ）＝０
Ｅ（１,ｊ）＝｛Ａｌ（１,ｊ）2＋Ｂｌ（１,ｊ）2＋Ａｒ（１,ｊ）2＋Ｂｒ（１,ｊ）2｝1/2
Ａｒ´（１,ｊ）＝Ａｒ（１,ｊ）・Ｅ（１,ｊ）／｛Ａｒ（１,ｊ）2＋Ｂｒ（１,ｊ）2｝1/2
Ｂｒ´（１,ｊ）＝Ｂｒ（１,ｊ）・Ｅ（１,ｊ）／｛Ａｒ（１,ｊ）2＋Ｂｒ（１,ｊ）2｝1/2
Ａｌ´（２,ｊ）＝０
Ｂｌ´（２,ｊ）＝０
Ｅ（２,ｊ）＝｛Ａｌ（２,ｊ）2＋Ｂｌ（２,ｊ）2＋Ａｒ（２,ｊ）2＋Ｂｒ（２,ｊ）2｝1/2
Ａｒ´（２,ｊ）＝Ａｒ（２,ｊ）・Ｅ（２,ｊ）／｛Ａｒ（２,ｊ）2＋Ｂｒ（２,ｊ）2｝1/2
Ｂｒ´（２,ｊ）＝Ｂｒ（２,ｊ）・Ｅ（２,ｊ）／｛Ａｒ（２,ｊ）2＋Ｂｒ（２,ｊ）2｝1/2
さらに、ｊ＝ｍ〜Ｍ−１の各成分に対して、
Ｅ（３,ｊ）＝｛Ａｌ（３,ｊ）2＋Ｂｌ（３,ｊ）2＋Ａｒ（３,ｊ）2＋Ｂｒ（３,ｊ）2｝1/2
Ａｌ´（３,ｊ）＝Ｆ（ｊ−m）・Ａｌ（３,ｊ）・Ｅ（３,ｊ）／｛Ａｌ（３,ｊ）2＋Ｂｌ（３,ｊ）2｝1/2
Ｂｌ´（３,ｊ）＝Ｆ（ｊ−m）・Ｂｌ（３,ｊ）・Ｅ（３,ｊ）／｛Ａｌ（３,ｊ）2＋Ｂｌ（３,ｊ）2｝1/2
Ａｒ´（３,ｊ）＝（１．０−Ｆ（ｊ−m））・Ａｌ（３,ｊ）・Ｅ（３,ｊ）／｛Ａｌ（３,ｊ）2＋Ｂｌ（３,ｊ）2｝1/2
Ｂｒ´（３,ｊ）＝（１．０−Ｆ（ｊ−m））・Ｂｌ（３,ｊ）・Ｅ（３,ｊ）／｛Ａｌ（３,ｊ）2＋Ｂｌ（３,ｊ）2｝1/2
【００５７】
上記〔数式１１〕においては、ｊ＝ｍ〜Ｍ−１において、Ａｌ´（１，ｊ）、Ｂｌ´（１，ｊ）を共に０としている。これは、図３（ｄ）の上段に示すように、L-chにおいて、電話高周波帯の前部の各成分を０にすることを示しているが、“状態２”は電話高周波帯の後部との差を明確にすることができれば十分であるため、必ずしも０にする必要はなく、十分に小さな値であれば良い。
【００５８】
値を埋め込む場合、埋め込まれる側の電話高周波帯の成分強度が小さすぎると、信号を変化させても、その変化を抽出側で検出することができない。そこで、このような場合には、情報が埋め込まれている音響フレームとの違いを明確にするため、以下の〔数式１２〕に従った処理を実行し、その電話高周波帯の成分を除去する。これは、図３（ｂ）に示すような “状態０”の状態である。
【００５９】
〔数式１２〕
ｊ＝０〜Ｍ−１の各成分に対して
Ａｌ´（１，ｊ）＝０
Ｂｌ´（１，ｊ）＝０
Ａｌ´（２，ｊ）＝０
Ｂｌ´（２，ｊ）＝０
Ａｌ´（３，ｊ）＝０
Ｂｌ´（３，ｊ）＝０
Ｅ（１，ｊ）＝｛Ａｌ（１，ｊ）2＋Ｂｌ（１，ｊ）2＋Ａｒ（１，ｊ）2＋Ｂｒ（１，ｊ）2｝1/2
Ａｒ´（１，ｊ）＝Ａｒ（１，ｊ）・Ｅ（１，ｊ）／｛Ａｒ（１，ｊ）2＋Ｂｒ（１，ｊ）2｝1/2
Ｂｒ´（１，ｊ）＝Ｂｒ（１，ｊ）・Ｅ（１，ｊ）／｛Ａｒ（１，ｊ）2＋Ｂｒ（１，ｊ）2｝1/2
Ｅ（２，ｊ）＝｛Ａｌ（２，ｊ）2＋Ｂｌ（２，ｊ）2＋Ａｒ（２，ｊ）2＋Ｂｒ（２，ｊ）2｝1/2
Ａｒ´（２，ｊ）＝Ａｒ（２，ｊ）・Ｅ（２，ｊ）／｛Ａｒ（２，ｊ）2＋Ｂｒ（２，ｊ）2｝1/2
Ｂｒ´（２，ｊ）＝Ｂｒ（２，ｊ）・Ｅ（２，ｊ）／｛Ａｒ（２，ｊ）2＋Ｂｒ（２，ｊ）2｝1/2
Ｅ（３，ｊ）＝｛Ａｌ（３，ｊ）2＋Ｂｌ（３，ｊ）2＋Ａｒ（３，ｊ）2＋Ｂｒ（３，ｊ）2｝1/2
Ａｒ´（３，ｊ）＝Ａｒ（３，ｊ）・Ｅ（３，ｊ）／｛Ａｒ（３，ｊ）2＋Ｂｒ（３，ｊ）2｝1/2
Ｂｒ´（３，ｊ）＝Ｂｒ（３，ｊ）・Ｅ（３，ｊ）／｛Ａｒ（３，ｊ）2＋Ｂｒ（３，ｊ）2｝1/2
【００６０】
上記のように、Ａタイプの音響フレームに対しては、埋め込むべきビット値に応じて、電話高周波帯の変更を行う必要があるため、周波数成分変更手段３０は、上記〔数式１０〕〔数式１１〕〔数式１２〕に従った処理を実行する。ところが、Ｂタイプの音響フレームは、Ａタイプの音響フレームのみの場合に生じる両端部分の不連続性を防止するために用いられるものであるので、ビット値に応じて電話高周波帯成分の変更を行う必要はない。そこで、周波数成分変更手段３０は、Ｂタイプの音響フレームについては、以下の〔数式１３〕に従った処理を実行し、常に左信号の電話高周波帯成分を除去する。
【００６１】
〔数式１３〕
ｊ＝０〜Ｍ−１の各成分に対して
Ａｌ´（４，ｊ）＝０
Ｂｌ´（４，ｊ）＝０
Ｅ（４，ｊ）＝｛Ａｌ（４，ｊ）2＋Ｂｌ（４，ｊ）2＋Ａｒ（４，ｊ）2＋Ｂｒ（４，ｊ）2｝1/2
Ａｒ´（４，ｊ）＝Ａｒ（４，ｊ）・Ｅ（４，ｊ）／｛Ａｒ（４，ｊ）2＋Ｂｒ（４，ｊ）2｝1/2
Ｂｒ´（４，ｊ）＝Ｂｒ（４，ｊ）・Ｅ（４，ｊ）／｛Ａｒ（４，ｊ）2＋Ｂｒ（４，ｊ）2｝1/2
【００６２】
周波数逆変換手段４０は、上記のようにして、電話高周波帯成分の状態が変更されたフレームスペクトルを周波数逆変換して改変音響フレームを得る処理を行う。この周波数逆変換は、当然のことながら、周波数変換手段２０が実行した手法に対応していることが必要となる。本実施形態では、周波数変換手段２０において、フーリエ変換を施しているため、周波数逆変換手段４０は、フーリエ逆変換を実行することになる。
【００６３】
具体的には、Ａタイプの音響フレームに対しては、周波数逆変換手段４０は、上記〔数式１０〕〔数式１１〕〔数式１２〕により得られたスペクトルの左チャンネルの実部Ａｌ´（１，ｊ）等、虚部Ｂｌ´（１，ｊ）等、右チャンネルの実部Ａｒ´（１，ｊ）等、虚部Ｂｒ´（１，ｊ）等を用いて、以下の〔数式１４〕に従った処理を行い、Ｘｌ´（ｉ）、Ｘｒ´（ｉ）を算出する。なお、上記〔数式１０〕〔数式１１〕〔数式１２〕において改変されていない周波数成分については、Ａｌ´（１，ｊ）等として、元の周波数成分であるＡｌ（１，ｊ）等を用いる。
【００６４】
〔数式１４〕
Ｘｌ´（ｉ）＝１／Ｎ・｛ΣjＡｌ´（１，ｊ）・ｃｏｓ（２πｉｊ／Ｎ）−ΣjＢｌ´（１，ｊ）・ｓｉｎ（２πｉｊ／Ｎ）｝＋１／Ｎ・｛ΣjＡｌ´（２，ｊ）・ｃｏｓ（２πｉｊ／Ｎ）−ΣjＢｌ´（２，ｊ）・ｓｉｎ（２πｉｊ／Ｎ）｝＋１／Ｎ・｛ΣjＡｌ´（３，ｊ）・ｃｏｓ（２πｉｊ／Ｎ）−ΣjＢｌ´（３，ｊ）・ｓｉｎ（２πｉｊ／Ｎ）｝＋Ｘｌｐ（ｉ＋Ｎ／２）
Ｘｒ´（ｉ）＝１／Ｎ・｛ΣjＡｒ´（１，ｊ）・ｃｏｓ（２πｉｊ／Ｎ）−ΣjＢｒ´（１，ｊ）・ｓｉｎ（２πｉｊ／Ｎ）｝＋１／Ｎ・｛ΣjＡｒ´（２，ｊ）・ｃｏｓ（２πｉｊ／Ｎ）−ΣjＢｒ´（２，ｊ）・ｓｉｎ（２πｉｊ／Ｎ）｝＋１／Ｎ・｛ΣjＡｒ´（３，ｊ）・ｃｏｓ（２πｉｊ／Ｎ）−ΣjＢｒ´（３，ｊ）・ｓｉｎ（２πｉｊ／Ｎ）｝＋Ｘｒｐ（ｉ＋Ｎ／２）
【００６５】
上記〔数式１４〕においては、式が繁雑になるのを防ぐため、Σj=0,…,N-1をΣjとして示している。上記〔数式１４〕における第１式の“＋Ｘｌｐ（ｉ＋Ｎ／２）”、第２式の“＋Ｘｒｐ（ｉ＋Ｎ／２）”の項は、直前に改変された改変音響フレームのデータＸｌｐ（ｉ）、Ｘｒｐ（ｉ）が存在する場合に、時間軸上Ｎ／２サンプル分重複することを考慮して加算するためのものである。上記〔数式１４〕によりＡタイプの改変音響フレームの左チャンネルの各サンプルＸｌ´（ｉ）、右チャンネルの各サンプルＸｒ´（ｉ）、が得られることになる。
【００６６】
Ｂタイプの音響フレームに対しては、周波数逆変換手段４０は、上記〔数式１３〕により得られたスペクトルの左チャンネルの実部Ａｌ´（４，ｊ）、虚部Ｂｌ´（４，ｊ）、右チャンネルの実部Ａｒ´（４，ｊ）、虚部Ｂｒ´（４，ｊ）を用いて、以下の〔数式１５〕に従った処理を行い、Ｘｌ´（ｉ）、Ｘｒ´（ｉ）を算出する。なお、上記〔数式１３〕において改変されていない周波数成分については、以下の〔数式１５〕においてはＡｌ´（４，ｊ）、Ｂｌ´（４，ｊ）、Ａｒ´（４，ｊ）、Ｂｒ´（４，ｊ）として、元の値であるＡｌ（４，ｊ）、Ｂｌ（４，ｊ）、Ａｒ（４，ｊ）、Ｂｒ（４，ｊ）を用いる。
【００６７】
〔数式１５〕
Ｘｌ´（ｉ）＝１／Ｎ・｛ΣjＡｌ´（４，ｊ）・ｃｏｓ（２πｉｊ／Ｎ）−ΣjＢｌ´（４，ｊ）・ｓｉｎ（２πｉｊ／Ｎ）｝＋Ｘｌｐ（ｉ＋Ｎ／２）
Ｘｒ´（ｉ）＝１／Ｎ・｛ΣjＡｒ´（４，ｊ）・ｃｏｓ（２πｉｊ／Ｎ）−ΣjＢｒ´（４，ｊ）・ｓｉｎ（２πｉｊ／Ｎ）｝＋Ｘｒｐ（ｉ＋Ｎ／２）
【００６８】
上記〔数式１５〕によりＢタイプの改変音響フレームの左チャンネルの各サンプルＸｌ´（ｉ）、右チャンネルの各サンプルＸｒ´（ｉ）、が得られることになる。
【００６９】
改変音響フレーム出力手段５０は、周波数逆変換手段４０の処理により得られたＡタイプの改変音響フレーム、Ｂタイプの改変音響フレームを順次出力ファイルに出力する。
【００７０】
次に、図１に示した音響信号に対する情報の埋め込み装置の処理の全体的な流れを、図５のフローチャートに従って説明する。図１に示した装置を構成する各構成要素は、連携して図５に従った処理を実行する。図５は、付加情報１ワード分の処理に対応したものとなっている。１ワードとしては、任意のビット数に設定することができるが、上述のように、本実施形態では誤り検出ビットを含めて１バイト（８ビット）に設定されている。また、情報の埋め込みは、Ａタイプの音響フレームに対して行われるので、図５は、Ａタイプの音響フレームについての説明となっている。Ｂタイプの音響フレームについては、Ａタイプの音響フレームと並行して、音響フレーム読込手段１０により読み込まれ、窓関数Ｗ（４，ｉ）を利用して周波数変換手段２０により周波数変換された後、周波数成分変更手段３０により電話高周波帯成分が除去され、周波数逆変換手段４０により周波数逆変換された後、改変音響フレーム出力手段５０により出力される。
【００７１】
図５においては、まず、付加情報読込手段７０は、付加情報記憶部６２から抽出した付加情報に対して誤り検出ビットを１ビット付加して８ビットのビット配列を作成し、これを１ワードとしてセットする（Ｓ１０１）。具体的には、音響信号に対する情報の埋め込み装置として用いられるコンピュータ内のレジスタに１ワード読み込むことになる。
【００７２】
次に、周波数成分変更手段３０が、レジスタに保持された１ワードから１ビットを読み込む処理を行う（Ｓ１０２）。
【００７３】
続いて、音響フレーム読込手段１０が、音響信号記憶部６１に記憶されたステレオ音響信号の左右の各チャンネルから、それぞれ所定数のサンプルを１音響フレームとして読み込む（Ｓ１０３）。
【００７４】
続いて、周波数変換手段２０および周波数成分変更手段３０が、音響フレームの電話高周波帯成分の状態を“状態１”、“状態２”のいずれかに変更する処理を行う（Ｓ１０４）。具体的には、読み込んだ音響フレームに対して、周波数変換を行って、その音響フレームのスペクトルであるフレームスペクトルを得る。すなわち、各音響フレームについて、３つの窓関数Ｗ（１，ｉ）、Ｗ（２，ｉ）、Ｗ（３，ｉ）を用いて、上記〔数式５〕に従った処理を行うことになる。
【００７５】
続いて、周波数成分変更手段３０は、上記〔数式７〕によりＥ1〜Ｅ2を算出する。そして、付加情報読込手段７０から受け取った各ビットのビット値である値１、値２に応じて上記〔数式１０〕〔数式１１〕に従った処理を実行し、電話高周波帯成分の状態を“状態１”、“状態２”のいずれかに変更する。
【００７６】
Ｓ１０４において、“状態１”、“状態２”のいずれにも変更することができない場合は、電話高周波帯成分を“状態０”とする処理を行う（Ｓ１０５）。具体的には、上記〔数式１２〕に従った処理を実行することになる。“状態１”、“状態２”のいずれにも変更することができない場合とは、埋め込むべき値に対応する強度値Ｅ1、Ｅ2のいずれかが、レベル下限値Ｌｅｖ以下となっている場合である。例えば、値１を埋め込む場合、Ｅ1がレベル下限値Ｌｅｖより大きい必要があるため、Ｅ1がＬｅｖ以下である場合は、Ｓ１０５に進むことになる。
【００７７】
上記〔数式１２〕に従った処理を実行することにより、左チャンネルのフレームスペクトルの電話高周波帯成分は、前部のスペクトル集合、後部のスペクトル集合ともに“０”で同一となる。なお、上記〔数式１２〕においては、ｊ＝０〜Ｍ−１の各成分に対してＡｌ´（ｊ）＝Ｂｌ´（ｊ）＝０としているが、抽出側において、“状態１”、“状態２”のいずれでもないことを認識可能とすることを目的としているため、十分小さな値であれば、必ずしも０とする必要はない。また、必ずしも前部と後部のスペクトル成分の値が同一である必要はなく、差が小さければ良い。
【００７８】
次に、周波数逆変換手段４０が、上記Ｓ１０４、Ｓ１０５の処理により各スペクトル集合間の強度割合が変更されたフレームスペクトルを周波数逆変換して改変音響フレームを得る処理を行う（Ｓ１０６）。この周波数逆変換は、当然のことながら、周波数変換手段２０がＳ１０４において実行した手法に対応していることが必要となる。本実施形態では、周波数変換手段２０において、フーリエ逆変換を施しているため、周波数逆変換手段４０は、フーリエ逆変換を実行することになる。具体的には、上記〔数式１０〕〔数式１１〕〔数式１２〕のいずれかにより得られたスペクトルの左チャンネルの実部Ａｌ´（１，ｊ）等、虚部Ｂｌ´（１，ｊ）等、右チャンネルの実部Ａｒ´（１，ｊ）等、虚部Ｂｒ´（１，ｊ）等を用いて、上記〔数式１４〕に従った処理を行い、Ｘｌ´（ｉ）、Ｘｒ´（ｉ）を算出する。
【００７９】
改変音響フレーム出力手段５０は、得られた改変音響フレームを順次出力ファイルに出力する。こうして１つの音響フレームに対する処理を終えたら、状態０に設定した場合には、音響フレーム読込手段１０が、次の音響フレームを読み込む（Ｓ１０３）。一方、状態１、状態２のいずれかに設定した場合には、周波数成分変更手段３０がビット配列中の次の１ビットを読み込む（Ｓ１０２）。以上のような処理を音響信号の両チャンネルの全サンプルに渡って実行していく。すなわち、所定数のサンプルを音響フレームとして読み込み、音響信号から読み込むべき音響フレームがなくなったら（Ｓ１０３）、処理を終了する。なお、Ｓ１０１において読み込んだ１ワードのデータの各ビットに対応する処理を終えた場合、Ｓ１０２からＳ１０１に戻り、付加情報の次のワードを読み込んでビット配列を作成する処理を行うことになる。付加情報の全ワードに対して処理が終了した場合は、付加情報の先頭ワードに戻って処理を行う。この結果、全ての音響フレームに対して処理を行った全ての改変音響フレームが出力ファイルに記録されて、改変音響信号として得られる。得られた改変音響信号は、記憶手段６０内の改変音響信号記憶部６３に出力され、記憶される。
【００８０】
なお、本実施形態では、付加情報を１ワード７ビットとし、誤り検出用の１ビットを付加して１ワード８ビットとして処理する場合について説明したが、抽出側と取り決めがある限り、付加情報の１ワードを任意のビット数単位で記録することが可能である。
【００８１】
上記のようにして得られた改変音響信号の左チャンネルのうち、付加情報が埋め込まれている部分については、電話高周波帯成分は、上記状態０〜状態２の３通りの分布しかないことになる。しかし、電話高周波帯以外の周波数帯における成分については、元の音響信号のままであるので、制作者の設定に基づいた種々な分布になる。また、上記の例で示したように、ステレオ音響信号を利用した場合には、左チャンネルにおいて変化させられた電話高周波帯成分は、上記〔数式１０〕〔数式１１〕〔数式１２〕の処理からも明らかなように、必ず右チャンネルの電話高周波帯成分に付加されている。したがって、右チャンネルが左チャンネルにおいて削除された成分を補っているため、両チャンネル全体として見ると、信号の劣化がない。
【００８２】
（４．音響信号からの情報の抽出装置）
次に、本発明に係る音響信号からの情報の抽出装置について説明する。図６は、本発明に係る音響信号からの情報の抽出装置の一実施形態を示す構成図である。図６において、１００は音響信号入力手段、１１０は基準フレーム獲得手段、１２０は位相変更フレーム設定手段、１３０は周波数変換手段、１４０は符号判定パラメータ算出手段、１５０は符号出力手段、１６０は付加情報抽出手段、１７０は音響フレーム保持手段である。
【００８３】
音響信号入力手段１００は、流れている音声をデジタル音響信号として取得し、入力する機能を有している。現実には、マイクロフォンおよびＡ／Ｄ変換器により実現される。マイクロフォンとしては、電話高周波帯成分が検出可能なものであれば、モノラル無指向性のものであっても、ステレオ指向性のものであっても使用可能である。ステレオ指向性のものであっても一方のチャンネルだけ利用すれば良い。また、図２に示した装置で情報の埋め込みを行った場合には、特別精度の高いものでなく、一般的な精度のマイクロフォンを用いても情報の抽出が可能となる。基準フレーム獲得手段１１０は、入力されたデジタルのモノラル音響信号（あるいはステレオ音響信号の１チャンネル）から所定数のサンプルで構成される音響フレームを基準フレームとして読み込む機能を有している。位相変更フレーム設定手段１２０は、基準フレームと所定サンプルずつ移動させることにより位相を変更した音響フレームを位相変更フレームとして設定する機能を有している。周波数変換手段１３０は、図２に示した周波数変換手段２０と同様の機能を有している。
【００８４】
符号判定パラメータ算出手段１４０は、生成されたフレームスペクトルから電話高周波帯に相当する周波数成分を抽出し、各スペクトル集合に対応した強度値ＥC1、ＥC2を以下の〔数式１６〕に基づいて算出し、この強度値ＥC1、ＥC2を符号判定パラメータとし、この符号判定パラメータＥC1、ＥC2の比率等に基づいて、所定の状態であると判断する機能を有している。以下の〔数式１６〕は上記〔数式７〕において右チャンネル成分を削除したもので、抽出時には右チャンネル成分を参照しないためである。
【００８５】
〔数式１６〕
ＥC1＝Σj=m,M-1｛Ａｌ（1,ｊ）2＋Ｂｌ（1,ｊ）2｝・Ｆ（ｊ−m）・Ｃ
ＥC2＝Σj=m,M-1｛Ａｌ（３,ｊ）2＋Ｂｌ（３,ｊ）2｝・Ｆ（ｊ−m）・Ｃ
【００８６】
符号出力手段１５０は、１つの基準フレームに対応する音響フレーム（基準フレームおよび位相変更フレーム）の中から最適な位相であると判断されるものを判断し、その音響フレームの状態に対応する符号を出力する機能を有している。符号判定パラメータ算出手段１４０と符号出力手段１５０により符号化手段が構成される。付加情報抽出手段１６０は、符号出力手段１５０により出力された３値の配列を、所定の規則により変換して意味のある付加情報として抽出する機能を有している。音響フレーム保持手段１７０は、連続する２個の基準フレームを保持可能なバッファメモリである。図６に示した各構成手段は、現実には情報処理機能を有する小型のコンピュータおよびその周辺機器等のハードウェアに専用のプログラムを搭載することにより実現される。特に、本発明の目的をより簡易に達成するためには、携帯型端末装置をハードウェアとして用いることが望ましい。
【００８７】
（５．抽出装置の処理動作）
次に、図６に示した音響信号からの情報の抽出装置の処理動作について図７のフローチャートに従って説明する。まず、本装置では、平均符号レベルＨＬ１、ＨＬ２、位相判定テーブルＳ（ｐ）、非符号カウンタＮｎを初期化する（Ｓ２００）。これらについて説明する。平均符号レベルＨＬ１、ＨＬ２は、値１、値２が埋め込まれていたと判断される音響フレーム（以下、有効フレームと呼ぶことにする）についての、上記〔数式１６〕で算出される電話高周波帯成分の強度値ＥC1、ＥC2それぞれの平均値、すなわち、過去の有効フレームにおけるこれらの値の平均値で与えられるものであり、初期値は、０．１に設定されている。位相判定テーブルＳ（ｐ）は、位相を判定するためのテーブルであり、ｐは０〜５の整数値をとる。初期値はＳ（ｐ）＝０に設定されている。非符号カウンタＮｎは、信号レベルが低く、非符号（埋め込みエラーを示す情報）であると判断されるフレーム数のカウンタであり、初期状態では、Ｎｎ＝０に設定される。
【００８８】
このように、初期値が設定されている状態で、利用者が流れている音楽について、その楽曲名等の属性情報を知りたいと思った場合、まず、抽出装置に対して、抽出装置としての起動の指示を行う。これは、例えば、抽出装置を携帯電話機等の携帯端末で実現している場合は、所定のボタンを操作することにより実行できる。抽出装置は、指示が入力されると、音響信号入力手段１００が、流れている音楽を録音し、デジタル化してデジタル音響信号として入力する。具体的には、無指向性マイクロフォン（または指向性マイクロフォンの一方のチャンネル）から入力される音声を、Ａ／Ｄ変換器によりデジタル化する処理を行うことになる。
【００８９】
続いて、基準フレーム獲得手段１１０が、音響信号入力手段１００から入力された音響信号から、所定数のサンプルで構成される音響フレームを基準フレームとして抽出する（Ｓ２０１）。具体的には、基準フレームを抽出して音響フレーム保持手段１７０に読み込むことになる。基準フレーム獲得手段１１０が基準フレームとして読み込む１音響フレームのサンプル数は、図２に示した音響フレーム読込手段１０で設定されたものと同一にする必要がある。したがって、本実施形態の場合、基準フレーム獲得手段１１０は、４０９６サンプルずつ、順次基準フレームとして読み込んでいくことになる。音響フレーム保持手段１７０には、上述のように２個の基準フレームが格納可能となっており、新しい基準フレームが読み込まれると、古い基準フレームを破棄するようになっている。したがって、音響フレーム保持手段１７０には、常に基準フレーム２個分（連続する８１９２サンプル）が格納されていることになる。
【００９０】
埋め込み装置で処理する音響フレームは、先頭から途切れることなく隣接して設定される基準フレームと、この基準フレームと位相を変更した位相変更フレームとに分けることができる。基準フレームについては、最初の基準フレームとしてサンプル番号１からサンプル番号４０９６までを設定したら、次の基準フレームは、サンプル番号４０９７からサンプル番号８１９２、さらに次の基準フレームは、サンプル番号８１９３からサンプル番号１２２８８、というように途切れることなく設定される。そして、各基準フレームについて、１／６フレーム（約６８３サンプル）ずつ移動した５個の位相変更フレームを設定する。例えば、最初の基準フレームについては、サンプル番号６８３、１３６６、２０４９、２７３２、３４１３から始まる４０９６のサンプルで構成される５個の位相変更フレームが設定されることになる。続いて、周波数変換手段１３０、符号判定パラメータ算出手段１４０が、読み込んだ各音響フレームから、埋め込まれている情報を判定し、対応する符号を出力する（Ｓ２０２）。出力される情報の形式は、付加情報が埋め込まれる場合に対応する値１、値２の２値、および値０の計３値の形式となる。
【００９１】
ここで、ステップＳ２０２の符号判定処理の詳細を図８のフローチャートに従って説明する。まず、周波数変換手段１３０が、読み込んだ各音響フレームに対して、周波数変換を行ってフレームスペクトルを得る（Ｓ３０１）。この処理は、図２に示した周波数変換手段２０における処理と同様である。ただし、抽出に用いるのは、左チャンネルだけであるので、上記〔数式５〕に従った処理を行い、左チャンネルに対応する変換データの実部Ａｌ（１，ｊ）等、虚部Ｂｌ（１，ｊ）等を得る。
【００９２】
上記周波数変換手段１３０における処理により、周波数に対応した成分であるスペクトルで表現されたフレームスペクトルが得られる。続いて、符号判定パラメータ算出手段１４０は、平均符号レベルＨＬ１、ＨＬ２の算出を行う（Ｓ３０２）。具体的には、過去“状態１”であると判断された音響フレームについての強度値ＥC1の積算値であるｖ１を、過去“状態１”であると判断された音響フレームの数であるｎ１で除算することによりＨＬ１を算出し、過去“状態２”であると判断された音響フレームについての強度値ＥC2の積算値であるｖ２を、過去“状態２”であると判断された音響フレームの数であるｎ２で除算することによりＨＬ２を算出する。
【００９３】
続いて、符号判定パラメータ算出手段１４０は、候補符号テーブルの初期化を行う（Ｓ３０３）。候補符号テーブルは、１つの基準フレームおよび５個の位相変更フレームを特定する０〜５の位相番号および、この６個の音響フレームの状態から得られる３値の符号を記録するものである。
【００９４】
続いて、符号判定パラメータ算出手段１４０は、強度値ＥC1、強度値ＥC2を用いて、電話高周波帯成分の状態がどのような状態であるか、すなわち、１ビットの値としてどのような値が埋め込まれていたかを判断する処理を行う（Ｓ３０４）。具体的には、強度値ＥC1、ＥC2に対応する所定値としてそれぞれ平均符号レベルＨＬ１、ＨＬ２に０．０１を乗じた値を設定し、以下の条件に従って状態を判断し、対応する符号を出力する。
【００９５】
ＥC1＞０．０１ＨＬ１  かつ  ＥC1＞２・ＥC2の場合、  値１を出力
ＥC2＞０．０１ＨＬ２  かつ  ＥC2＞２・ＥC1の場合、  値２を出力
【００９６】
符号判定パラメータ算出手段１４０は、各音響フレーム単位で、上記判定結果に応じて値１、値２のいずれかを出力する（Ｓ３０７）。上記いずれの条件も満たさない場合は、“状態０”であると判断し、値０を出力する（Ｓ３０８）。この“状態０”は、強度値Ｅ1、Ｅ2が下限値Ｌｅｖ以下であることにより、当該フレームに値１、値２の記録が行なわれなかったことを示す埋め込みエラーを示すものとなる。
【００９７】
また、上記判定の結果、値１、値２のいずれかを出力した場合には、さらに、以下の〔数式１７〕に従って位相判定テーブルＳ（ｐ）の更新を行う（Ｓ３０９）。
【００９８】
〔数式１７〕
“状態１”であると判断し、値１を出力した場合、Ｓ（ｐ）←Ｓ（ｐ）＋ＥC1／ＥC2
“状態２”であると判断し、値２を出力した場合、Ｓ（ｐ）←Ｓ（ｐ）＋ＥC2／ＥC1
【００９９】
続いて、符号判定パラメータ算出手段１４０は、候補符号テーブルに、最適位相となる候補を保存する（Ｓ３１０）。具体的には、位相判定テーブルに記録されているＳ（ｐ）の値が最大となる位相番号ｐの値、前記Ｓ３０７、Ｓ３０８により判定された３値のいずれかの符号、その音響フレームについての上記〔数式１６〕に従った処理を実行することにより算出した、電話高周波帯成分に対応するＥC1、ＥC2のいずれかを最適位相の候補として候補符号テーブルに保存する。
【０１００】
続いて、全ての位相番号ｐに対応する処理を終えたかどうかを判定する（Ｓ３１１）。これは、ある基準フレームに対して全ての位相変更フレームの処理を行ったかどうかを判定している。本実施形態では、ｐが０〜５までの値をとるので、６回分処理していない場合は、処理していた音響フレームから所定サンプル数ずらして、位相の異なる音響フレームを設定し、Ｓ３０４に戻って処理を繰り返す。なお、ｐ＝０の場合が基準フレームであり、ｐ＝１〜５の場合が位相変更フレームである。全ての位相番号ｐに対応する処理を終えた場合は、候補保存テーブルに記録されている位相番号ｐに対応する位相が最適位相であると判定し、候補保存テーブルに記録されている符号を出力する（Ｓ３１２）。
【０１０１】
再び図７のフローチャートに戻って説明する。Ｓ２０２による処理の結果、値１、値２に相当する符号が出力された場合には、平均符号レベルのパラメータの更新処理を行う（Ｓ２０３）。具体的には、平均符号レベルＨＬ１、ＨＬ２算出の際の分子となる積算値ｖ１、ｖ２に、それぞれ強度値ＥC1、ＥC2を加算して積算値ｖ１、ｖ２を更新し、分母となるフレーム数ｎ１、ｎ２にそれぞれ１を加算してフレーム数ｎ１、ｎ２を更新することにより行う。ｎ１、ｎ２はあらかじめ設定したｎmax（例えば１００）を超えないように設定する。
【０１０２】
続いて、非符号カウンタの初期化処理を行う（Ｓ２０４）。具体的には、上記Ｓ２００の初期化処理における処理と同様、非符号カウンタＮｎ＝０と設定する。さらに、出力された値に対応する１ビットをバッファに保存する（Ｓ２０５）。次に、ビットカウンタを“１”だけカウントアップする（Ｓ２０６）。
【０１０３】
次に、ビットカウンタが７以下であるか８以上であるかを判断する。ビットカウンタが７以下の場合は、Ｓ２０１に戻って、次の基準フレームを抽出する処理を行う。
【０１０４】
ビットカウンタが８以上である場合は、バッファに保存されたビット列のうち最後の８ビットを抽出し、そのうち前７ビットでパリティ計算を行う（Ｓ２０７）。そして、抽出した最後の８ビットのうち８ビット目と照合を行う。この結果、不一致の場合は、Ｓ２０１に戻って、次の基準フレームを抽出する処理を行う。
【０１０５】
照合の結果、一致する場合には、付加情報抽出手段１６０が、前７ビットに１ビット付加して出力する（Ｓ２０８）。ここで、照合結果が一致する場合は、照合に用いた８ビット目が誤り検出ビットであった可能性が高いことになる。そうすると、その前の７ビットは元の付加情報における７ビットであると考えられる。このため、その先頭からの７ビットにビット０を付加することによりＡＳＣＩＩコードにおける１ワードとして出力するのである。逆に不一致である場合は、照合に用いた８ビット目が誤り検出ビットでない可能性が高いことになる。そうすると、その時点で保持している７ビットは、元の付加情報における７ビットからずれたものであると考えられる。この場合は、先頭の１ビットを破棄して、Ｓ２０１からＳ２０６の処理により新たな１ビットを得るための処理を行うのである。
【０１０６】
このようにパリティチェックを行い、これに合格した場合は、その部分がワードの区切りである可能性が高いので、それが本当に区切りであれば、以降は８ビットずつ抽出すれば、全て正確にワード単位で抽出を行うことができる。逆に、パリティチェックに合格したとしても、それが偶然であり、実はワードの区切りではない場合も考えられる。このような場合は、次のパリティチェックの際に不合格となる可能性が高く、何回か繰り返しているうちに正しい区切りが正確に判断できることになる。Ｓ２０８において、前７ビットに１ビット付加して出力した場合には、ビットカウンタを０に初期化する（Ｓ２０９）。そして、Ｓ２０１に戻って、次の基準フレームを抽出する処理を行う。
【０１０７】
Ｓ２０２による処理の結果、値０が出力された場合には、非符号カウンタのカウントアップ処理を行う（Ｓ２１０）。具体的には、非符号カウンタＮｎの値に１を加算する。そして、非符号カウンタＮｎの値がｎmax以上である場合は、Ｓ２００に戻って初期化処理を行う。非符号カウンタＮｎの値がｎmax未満である場合は、Ｓ２０１に戻って符号抽出処理を継続する。図７に示す処理を各基準フレームに対して実行することにより、付加情報が抽出されることになる。Ｓ２０１において全ての基準フレームが抽出されたと判断された場合には、処理を終了する。
【０１０８】
上記Ｓ２０８の処理において、付加情報抽出手段１６０は、まず、符号出力手段１５０により出力された値を、所定の規則により変換して意味のある付加情報として抽出する。所定の規則としては、情報を埋め込む者が意図した情報が受け取った者に認識可能な状態とできるものであれば、さまざまな規則が採用できるが、本実施形態では、ＡＳＣＩＩコードを採用している。すなわち、付加情報抽出手段１６０は、符号判定パラメータ算出手段１４０が判定し、符号出力手段１５０から出力される符号から得られるビット値の配列を１バイト（８ビット）単位で認識し、これをＡＳＣＩＩコードに従って文字情報を認識する。このようにして得られた文字情報は、表示装置（図示省略）の画面に表示出力される。
【０１０９】
従って、埋め込み装置により音響信号に、その楽曲の曲名やアーチスト等の属性情報を文字情報として埋め込んでおけば、利用者は、その音楽が流れているのを聞いて、その曲名やアーチストを知りたいと思ったときに、抽出装置として機能する自身の携帯端末に所定の操作を行えば、自身の携帯端末の画面に曲名やアーチスト等の属性情報が文字情報として表示されることになる。
【０１１０】
以上の処理においては、抽出装置において正確に付加情報を抽出するために、位相を補正する処理、無効フレームであることを判断するための下限閾値を補正する処理を行っている。次に、これらの補正処理について補足説明を行う。
【０１１１】
（６．位相補正処理について）
上記のように、抽出時には、埋め込み時に埋め込んだ音響フレームに対応して、音響信号を読み込むことができるとは限らない。そこで、音響フレームの位相をずらして複数通り（本実施形態では６通り）で読み込み、その中で最適な位相を決定し、その位相で特定される音響フレームに対応する符号を出力することにしている。例えば、６通りで読み込む場合、先頭の音響フレームは、本来サンプル番号１〜４０９６のサンプルであるが、サンプル番号１、６８３、１３６６、２０４９、２７３２、３４１３から始まる４０９６のサンプルで構成される６個の各音響フレームに対して処理を行い、最適な音響フレームに対応する符号を出力することになる。この位相補正処理は、Ｓ３０３、Ｓ３０９、Ｓ３１０、Ｓ３１１、Ｓ３１２における処理を中心として行われることになる。
【０１１２】
（７．下限閾値補正処理について）
信号レベルが小さい場合には、前部、後部の強度の大小が判定できず、抽出側で誤判断することが多くなる。そこで、強度値ＥC1、ＥC2が所定の閾値以下のフレームについては、無効なフレームであると判断するようにしているが、この際の閾値を過去の有効フレームについての周波数強度の積算値を利用して補正する処理を行っている。このように閾値を変動させることにより、信号レベルが変動しても無効なフレームであるか、有効なフレームであるかを正確に判断することが可能となる。この下限閾値補正処理は、Ｓ３０２、Ｓ２０３における処理を中心として行われることになる。
【０１１３】
（８．モノラル音響信号の場合）
上記実施形態においては、埋め込み装置、抽出装置のいずれにおいても、左右のチャンネルを有するステレオ音響信号の左チャンネル信号に付加情報を埋め込む場合を例にとって説明したが、逆に右チャンネル信号に付加情報を埋め込むようにしても良い。本発明は、左右の特性には無関係だからである。また、１つのチャンネルしかないモノラル音響信号に対して処理を行う場合は、上記実施形態において、左チャンネル信号に対して行った処理を行うことになる。本発明は、１つのチャンネル信号に対して付加情報を埋め込み、また抽出を行うので、モノラル音響信号であってもステレオ音響信号であっても同様に行うことができる。
【０１１４】
（９．信号成分が小さくても情報の埋め込みを可能とする手法）
ここまで、説明してきた処理においては、上記Ｅ1、Ｅ2が所定値より大きいことが必要となり、上記Ｅ1、Ｅ2が所定値以下の場合には、情報の埋め込みを行うことができない。そこで、以下、上記Ｅ1、Ｅ2が所定値以下であっても、信号の埋め込みを可能とする手法について説明する。
【０１１５】
この場合、図１に示した埋め込み装置における情報の埋め込み処理は、図５のフローチャートに従って行われるが、強度値Ｅ1、Ｅ2がレベル下限値Ｌｅｖ以下となることがなくなるため、Ｓ１０４において周波数成分変更手段３０がレベルの判定を行わない。これは、この処理では、信号レベルが小さくても強制的に情報を埋め込むこととしているため、情報の埋め込みが不可能な信号レベルが小さい部分が存在するかどうかを判断する必要がないからである。
【０１１６】
したがって、Ｓ１０４における状態１、状態２に設定する処理としては、まず、以下の〔数式１８〕に従って算出される固定値Ｖを、電話高周波帯成分の強度として設定する。
【０１１７】
〔数式１８〕
Ｖ＝｛０．２５・Ｌｅｖ／（Ｍ−ｍ）｝1/2
【０１１８】
そして、状態１とする場合は、上記〔数式１０〕に従った処理を実行した後、以下の〔数式１９〕に従った処理を実行する。
【０１１９】
〔数式１９〕
ｊ＝ｍ〜Ｍ−１の各成分に対して
Ａｌ´（１，ｊ）＝Ｆ（ｊ−ｍ）・Ａｌ（１，ｊ）・Ｖ／｛Ａｌ（１，ｊ）2＋Ｂｌ（１，ｊ）2｝1/2
Ｂｌ´（１，ｊ）＝Ｆ（ｊ−ｍ）・Ｂｌ（１，ｊ）・Ｖ／｛Ａｌ（１，ｊ）2＋Ｂｌ（１，ｊ）2｝1/2
【０１２０】
状態２とする場合は、上記〔数式１１〕に従った処理を実行した後、以下の〔数式２０〕に従った処理を実行する。
【０１２１】
〔数式２０〕
ｊ＝ｍ〜Ｍ−１の各成分に対して
Ａｌ´（３，ｊ）＝Ｆ（ｊ−ｍ）・Ａｌ（３，ｊ）・Ｖ／｛Ａｌ（３，ｊ）2＋Ｂｌ（３，ｊ）2｝1/2
Ｂｌ´（３，ｊ）＝Ｆ（ｊ−ｍ）・Ｂｌ（３，ｊ）・Ｖ／｛Ａｌ（３，ｊ）2＋Ｂｌ（３，ｊ）2｝1/2
【０１２２】
〔数式１９〕〔数式２０〕により算出されたＡｌ´、Ｂｌ´の値を、上記〔数式７〕におけるＡｌ、Ｂｌに代えて用いると、Ｅ1、Ｅ2＝Ｌｅｖとなるため、Ｓ１０４において、Ｌｅｖとの大小関係の判断を行う必要が不要となる。
【０１２３】
上記のように、周波数成分が小さい場合に情報を埋め込んだ場合であっても、抽出側の、音響信号からの情報の抽出装置の構成は図６と同一であり、処理動作は図７のフローチャートに従ったものと同一である。
【０１２４】
上記の説明では、電話回線帯域上限を上限とする所定の周波数帯である“１．７ｋＨｚ〜３．４ｋＨｚ”相当の電話高周波帯に対して処理を施す場合を例にとって説明したが、音響信号からの情報の抽出装置として固定電話機または携帯電話機を利用せず、より広い周波数範囲の音声を発生、録音可能な機器を利用して音響信号からの情報の抽出装置を実現する場合には、電話回線帯域上限を上限とする所定の周波数帯である“３．４ｋＨｚ〜６．８ｋＨｚ”相当の超電話周波帯に対して処理を施すようにしても良い。この場合、上記〔数式７〕をはじめとする各数式で用いられるｍ、Ｍの値は、ｍ＝３２０、Ｍ＝６４０に設定する。したがって、この場合、Ｐ＝３２０となる。
【０１２５】
以上は全て、音響信号のサンプリング周波数が４４．１ｋＨｚ、音響フレームの長さＮが４０９６である場合について説明したが、音響フレームの長さＮは１／２K（Ｋは１以上の整数）の割合で縮小することができ、そうすると単位時間あたりの埋め込み可能な情報量（上記の説明の場合、１０［ｂｐｓ］）は２K倍に拡張させることができる。その際、音響信号のサンプリング周波数は４４．１ｋＨｚ固定にすると、電話高周波帯または超電話周波帯の下限ｍおよび上限Ｍも１／２K倍に縮小させるように設定する必要がある（Ｐも同様に１／２K倍に設定される）。具体的には、Ｎ＝２０４８に設定すると、電話高周波帯の場合、ｍ＝８０、Ｍ＝１６０となり、超電話周波帯の場合、ｍ＝１６０、Ｍ＝３２０となり、埋め込み可能な情報量は２０［ｂｐｓ］となる。Ｎ＝１０２４に設定すると、電話高周波帯の場合、ｍ＝４０、Ｍ＝８０となり、超電話周波帯の場合、ｍ＝８０、Ｍ＝１６０となり、埋め込み可能な情報量は４０［ｂｐｓ］となる。Ｎ＝５１２に設定すると、電話高周波帯の場合、ｍ＝２０、Ｍ＝４０となり、超電話周波帯の場合、ｍ＝４０、Ｍ＝８０となり、埋め込み可能な情報量は８０［ｂｐｓ］となる。更にＮ＝２５６、Ｎ＝１２８等の設定も理論上可能であるが、実験の結果、Ｎ＝２５６以下では、埋め込み面積（時間×周波数幅）が小さ過ぎて計算誤差が発生し安定した抽出ができず、Ｎ＝５１２が設定限界であった。
【図面の簡単な説明】
【０１２６】
【図１】本発明に係る音響信号に対する情報の埋め込み装置の機能ブロック図である。
【図２】本発明で用いる時間軸方向窓関数を示す図である。
【図３】図１に示した装置の処理による１音響フレームの成分変化の様子を示す図である。
【図４】本発明で用いる周波数方向窓関数Ｆを示す図である。
【図５】図１に示した装置の処理概要を示すフローチャートである。
【図６】本発明に係る音響信号からの情報の抽出装置の機能ブロック図である。
【図７】図６に示した装置の処理概要を示すフローチャートである。
【図８】図７のＳ２０２の符号判定処理の詳細を示すフローチャートである。
【符号の説明】
【０１２７】
１０・・・音響フレーム読込手段
２０・・・周波数変換手段
３０・・・周波数成分変更手段
４０・・・周波数逆変換手段
５０・・・改変音響フレーム出力手段
６０・・・記憶手段
６１・・・音響信号記憶部
６２・・・付加情報記憶部
６３・・・改変音響信号記憶部
７０・・・付加情報読込手段
１００・・・音響信号入力手段
１１０・・・基準フレーム獲得手段
１２０・・・位相変更フレーム設定手段
１３０・・・周波数変換手段
１４０・・・符号判定パラメータ算出手段
１５０・・・符号出力手段
１６０・・・付加情報抽出手段
１７０・・・音響フレーム保持手段
【図１】
2008129198.tif 000003
【図２】
2008129198.tif 000004
【図３】
2008129198.tif 000005
【図４】
2008129198.tif 000006
【図５】
2008129198.tif 000007
【図６】
2008129198.tif 000008
【図７】
2008129198.tif 000009
【図８】
2008129198.tif 000010