(57)【特許請求の範囲】
【請求項１】
時系列のサンプル列で構成される音響信号に対して、付加情報を聴取不能な状態で埋め込む装置であって、
前記音響信号より、所定数のサンプルを読み込む音響フレーム読込手段と、
前記読み込んだ音響フレームのうち、奇数番目、偶数番目の一方をＡタイプ、他方をＢタイプとし、前記Ａタイプの音響フレームに対して第１窓関数を用いて周波数変換を行い、前記Ｂタイプの音響フレームに対して第２窓関数を用いて周波数変換を行い、前記第１窓関数に対応する複素周波数成分である第１窓スペクトル、前記第２窓関数に対応する複素周波数成分である第２窓スペクトルを得る周波数変換手段と、
前記各窓スペクトルから所定の周波数範囲における互いに重複しない２つのスペクトル集合を抽出し、第１窓スペクトル、第２窓スペクトルから抽出した計４つのスペクトル集合の強度を、埋め込むべきビット配列に基づいて、ある２つのスペクトル集合の強度が、他の２つのスペクトル集合の強度に対して所定の基準で大きくなるように、各スペクトル集合の強度を変更する周波数成分変更手段と、
前記スペクトル集合のうち、小さくなるように変更されたスペクトル集合の各周波数の複素周波数成分の方向を、直前の音響フレームにおけるスペクトル集合の各周波数の複素周波数成分の方向に対して、０度、９０度、１８０度、２７０度の４方向のいずれかの方向の中から事前に設定された方向に８０％だけ近付けるように補正する位相補正手段と、
前記位相補正されたスペクトル集合を含む各窓スペクトルに対して周波数逆変換を行って、改変音響フレームを生成する周波数逆変換手段と、
前記生成された改変音響フレームを順次出力する改変音響フレーム出力手段と、
を有することを特徴とする音響信号に対する情報の埋め込み装置。
【請求項２】
時系列のサンプル列で構成される音響信号に対して、付加情報を聴取不能な状態で埋め込む装置であって、
前記音響信号より、所定数のサンプルを読み込む音響フレーム読込手段と、
前記読み込んだ音響フレームのうち、奇数番目、偶数番目の一方をＡタイプ、他方をＢタイプとし、前記Ａタイプの音響フレームに対して第１窓関数を用いて周波数変換を行い、前記Ｂタイプの音響フレームに対して第２窓関数を用いて周波数変換を行い、前記第１窓関数に対応する複素周波数成分である第１窓スペクトル、前記第２窓関数に対応する複素周波数成分である第２窓スペクトルを得る周波数変換手段と、
前記各窓スペクトルから所定の周波数範囲における互いに重複しない４つのスペクトル集合を、周波数が高い方の２つのスペクトル集合の周波数幅が周波数が低い方の２つのスペクトル集合の周波数幅よりも大きくなるように抽出し、各窓スペクトルについての４つのスペクトル集合を、前記第１窓スペクトルから抽出したスペクトル集合を周波数が低い順に、１Ｄ１、１Ｄ２、１Ｕ１、１Ｕ２とし、前記第２窓スペクトルから抽出したスペクトル集合を周波数が低い順に、２Ｄ１、２Ｄ２、２Ｕ１、２Ｕ２とした場合に、埋め込むべきビット配列に基づいて、１Ｄ１の強度値と２Ｄ２の強度値との積と、１Ｄ２の強度値と２Ｄ１の強度値との積のいずれか一方が他方より所定の比率以上に大きくなり、同時に１Ｕ１の強度値と２Ｕ２の強度値との積と、１Ｕ２の強度値と２Ｕ１の強度値との積のいずれか一方が他方より所定の比率以上に大きくなるように、各スペクトル集合の強度を変更する周波数成分変更手段と、
前記スペクトル集合のうち、小さくなるように変更されたスペクトル集合の各周波数の複素周波数成分の方向を、直前の音響フレームにおけるスペクトル集合の各周波数の複素周波数成分の方向に対して、０度、９０度、１８０度、２７０度の４方向のいずれかの方向の中から事前に設定された方向に８０％だけ近付けるように補正する位相補正手段と、
前記位相補正されたスペクトル集合を含む各窓スペクトルに対して周波数逆変換を行って、改変音響フレームを生成する周波数逆変換手段と、
前記生成された改変音響フレームを順次出力する改変音響フレーム出力手段と、
を有することを特徴とする音響信号に対する情報の埋め込み装置。
【請求項３】
請求項２において、
前記周波数成分変更手段は、前記ビット配列中の１ビットの状態に基づいて、１Ｄ１の強度値と１Ｕ１の強度値と２Ｄ２の強度値と２Ｕ２の強度値との積と、１Ｄ２の強度値と１Ｕ２の強度値と２Ｄ１の強度値と２Ｕ１の強度値との積のいずれか一方が他方より所定の比率以上に大きくなるように、各スペクトル集合の強度を変更するものであることを特徴とする音響信号に対する情報の埋め込み装置。
【請求項４】
請求項２または請求項３において、
前記周波数成分変更手段は、１Ｄ１の強度値と２Ｄ２の強度値との積と、１Ｄ２の強度値と２Ｄ１の強度値との積と、１Ｕ１の強度値と２Ｕ２の強度値との積と、１Ｕ２の強度値と２Ｕ１の強度値との積のうち、大きくなるように変更する側のスペクトル集合に対しては、係数αを乗じた強度とし、小さくなるように変更する側のスペクトル集合に対しては、係数αより小さい係数βを乗じた強度とするものであることを特徴とする音響信号に対する情報の埋め込み装置。
【請求項５】
請求項４において、
前記周波数成分変更手段は、前記強度の積を大きくなるように変更するグループの強度の積を、前記強度の積を小さくなるように変更するグループの強度の積で割った値γが、１より小さい場合に、前記係数αよりγの平方根を除した係数α´と、前記係数βにγの平方根を乗じた係数β´を、前記係数α、βに代えて用いるものであることを特徴とする音響信号に対する情報の埋め込み装置。
【請求項６】
請求項１から請求項５のいずれかにおいて、
前記周波数変換手段は、前記音響フレームに対して周波数変換を行う前に、音響フレームを構成する最初のサンプルを０に設定し、後続するサンプルは各々直前の改変前のサンプルとの差分値になるように、前記音響フレームを構成するサンプルの値に改変を加えるものであり、
前記周波数逆変換手段は、前記周波数逆変換により得られた各サンプルの値に直前のサンプルの値を順次加算することにより、前記改変音響フレームを構成する各サンプルの値を設定することを特徴とする音響信号に対する情報の埋め込み装置。
【請求項７】
請求項１から請求項６のいずれかにおいて、
前記音響信号が２以上のチャンネルのステレオ信号であり、
前記音響フレーム読込手段、前記周波数変換手段、前記周波数成分変更手段、前記周波数逆変換手段、前記改変音響フレーム出力手段は、各チャンネルに対して処理を実行するものであることを特徴とする音響信号に対する情報の埋め込み装置。
【請求項８】
請求項１から請求項７のいずれかにおいて、
前記付加情報がＮｗビットを１ワードとして構成されるものであり、
Ｎｗビットが取り得る２のＮｗ乗個の全ての登録順位に対して、Ｎｈ通りの巡回ＮｈビットパターンどうしのＮｈ×Ｎｈ通りの組み合わせで最小ハミング距離が少なくとも３以上となるＮｈ（＞Ｎｗ）ビットのハミング符号を割り当てた符号変換テーブルを作成する変換テーブル作成手段と、
前記付加情報中の各ワードについて、前記符号変換テーブルを参照し、対応するハミング符号で構成されるＮｈビットのビット配列を作成するビット配列作成手段と、
をさらに有することを特徴とする音響信号に対する情報の埋め込み装置。
【請求項９】
請求項８において、
前記変換テーブル作成手段は、少なくとも７ビットが取り得る１２８個の全ての登録順位に対して１６通りの巡回１６ビットパターンどうしの１６×１６通りの組み合わせで最小ハミング距離が３以上となる１６ビットのハミング符号を割り当てた符号変換テーブルを作成するものであることを特徴とする音響信号に対する情報の埋め込み装置。
【請求項１０】
請求項１から請求項９のいずれかにおいて、
前記音響フレーム読込手段は、前記Ａタイプの音響フレームと前記Ｂタイプの音響フレームを、所定数のサンプルを重複させて読み込むものであり、
前記改変音響フレーム出力手段は、前記生成された改変音響フレームを先行する改変音響フレームと連結させて出力するものであることを特徴とする音響信号に対する情報の埋め込み装置。
【請求項１１】
請求項１から請求項１０のいずれかにおいて、
前記周波数成分変更手段は、前記所定の周波数範囲を０．３４ｋＨｚ以上および３．４ｋＨｚ以下として設定するものであることを特徴とする音響信号に対する情報の埋め込み装置。
【請求項１２】
請求項１から請求項１１のいずれかにおいて、
前記音響フレーム読込手段は、前記音響フレームと同サンプル数で、再生時に聴取困難な極めて低振幅の白色ノイズを作成し、前記音響フレームに対して加算するものであることを特徴とする音響信号に対する情報の埋め込み装置。
【請求項１３】
コンピュータを、請求項１から請求項１２のいずれかに記載の音響信号に対する情報の埋め込み装置として、機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、音響信号に、属性情報等の付加情報を埋め込む技術に関し、特に、広範な室内に設置されたスピーカから音を発することによる残響の影響を防いで、精度の高い埋め込み情報の抽出を可能とするための技術に関する。
【背景技術】
【０００２】
従来、流れている音楽のタイトル等を知ることができる楽曲属性情報の提供サービスとして、放送された音楽に対して日時と地域を放送局に照会したり、携帯電話で流れている音楽断片を録音してデータベースに登録されているメロディーと照合したりするサービスが行われている。本出願人は、これをさらに発展させ、音響信号の周波数成分の比率を属性情報のビット値に応じて変更することにより、属性情報（付加情報）を埋め込む手法を提案している（特許文献１参照）。
【０００３】
また、本出願人は、特許文献１に記載の発明における、広いホール等で２つのスピーカが離れている場合、双方のチャンネルからの音が混ざり合った中央付近では抽出することができないという問題を解決するため、音脈分凝の原理を利用して、情報の埋め込みおよび抽出を行う技術を提案している（特許文献２参照）。また、出願人は、情報を埋め込む周波数帯を２段に設定し、それぞれの周波数帯で音脈分凝を起こす二重音脈分凝を利用して、情報の埋め込みおよび抽出を行う技術も提案している（特許文献３参照）。
【０００４】
上記特許文献１から特許文献３のいずれにおいても、付加情報は、音響信号の所定区間である音響フレームを単位として埋め込まれる。この音響フレームにおいては、情報を埋め込むために、その周波数成分が変更されるが、音響フレーム内で変更可能な周波数帯が大きい程、埋め込み効率を高めたり、抽出精度を高めたりすることが可能となる。さらに、上記特許文献２、３に記載の発明では、人間の聴覚感度が高い周波数帯に情報を埋め込んでも、音脈分凝の原理により、人間がノイズを感じないような音とすることが可能である。
【０００５】
しかしながら、特許文献２、３に記載の発明を用いたとしても、スピーカから空間に発せられた音をマイクロフォンで取得して、電子透かし抽出を行う場合においては、室内残響の問題が避けられず、これにより伝搬距離の制約を受けていた。スピーカとマイクロフォンとの距離が一定以上離れると、スピーカからの直接音より床・天井・壁を経由する反射音の割合が大きくなり、人間には音量が豊かに聴こえるというプラスの効果がある反面、音響信号解析の用途においては位相遅れの音波が同時に収録されるため、高精度な解析が行えないというネガティブな効果を引き起こす。特に特許文献２、３に記載した電子透かし埋め込みの場合、時間的に前のフレーム成分が重なって収録されて、信号成分の音量大小パターンがくずれるため抽出ビット誤りにつながるという問題があった。そのため、人間には充分聞こえても端末をスピーカに近づけないと安定して抽出できないという問題があった。これに対して、特許文献３においては、透かし抽出時に残響成分を削減するため直前フレーム成分を一定の割合で減算させてビット判定を行っていた。しかし、特許文献３の直前フレームの影響だけをスカラー的に補正する方法では多重の反射波の影響を十分に削減することはできないことが判明した。
【０００６】
このような問題を解決するため、出願人は、付加情報を埋め込む際、埋め込む情報に応じて複素周波数成分の強度状態を変更した後、強度を弱めた複素周波数成分の位相を、直前の区間の複素周波数成分の方向と反対側の方向に補正するようにする技術を提案した（特許文献４参照）。これにより、直前の区間の複素周波数成分の残響により当該複素周波数成分の強度が大きく変化することを防ぐことができ、抽出側において情報の抽出精度を高めることが可能となった。
【特許文献１】特開２００６−３２３２４６号公報
【特許文献２】特開２００８−２５６９４８号公報
【特許文献３】特開２００９−７５３３２号公報
【特許文献４】特願２００９−２６００６５号
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、特許文献４に記載の技術では、室内残響成分は直前フレームまでの反射波が種々の位相で複雑に重なったもので、推定することは困難であるが、直前フレーム成分が主成分になると仮定し、室内残響成分の位相は直前フレーム成分の位相と近傍であると仮定していた。この仮定は比較的小さい部屋であれば成立するが、ホールなど広範な室内形態では成立しない。そのため、特許文献４に記載の技術で広い室内において残響補正を施すと、逆効果になる場合もある。また、特許文献４に記載の技術では、位相補正の対象を振幅レベルが小さい成分のみに限定していたため、再生品質への影響が比較的少ないという利点はあるものの、実用レベルの残響補正効果を得ることが難しいという問題がある。
【０００８】
そこで、本発明は、大ホールなど広範な室内において情報の抽出処理を行う場合でも残響耐性を持ち、高い精度で埋め込まれた情報を抽出可能なように、情報を音響信号に埋め込むことが可能な音響信号に対する情報の埋め込み装置を提供することを課題とする。
【課題を解決するための手段】
【０００９】
上記課題を解決するため、本発明第１の態様では、時系列のサンプル列で構成される音響信号に対して、付加情報を聴取不能な状態で埋め込む装置であって、前記音響信号より、所定数のサンプルを読み込む音響フレーム読込手段と、前記読み込んだ音響フレームのうち、奇数番目、偶数番目の一方をＡタイプ、他方をＢタイプとし、前記Ａタイプの音響フレームに対して第１窓関数を用いて周波数変換を行い、前記Ｂタイプの音響フレームに対して第２窓関数を用いて周波数変換を行い、前記第１窓関数に対応する複素周波数成分である第１窓スペクトル、前記第２窓関数に対応する複素周波数成分である第２窓スペクトルを得る周波数変換手段と、前記各窓スペクトルから所定の周波数範囲における互いに重複しない２つのスペクトル集合を抽出し、第１窓スペクトル、第２窓スペクトルから抽出した計４つのスペクトル集合の強度（複素周波数成分である複素ベクトルの大きさ）を、埋め込むべきビット配列に基づいて、ある２つのスペクトル集合の強度が、他の２つのスペクトル集合の強度に対して所定の基準で大きくなるように、各スペクトル集合の強度を変更する周波数成分変更手段と、前記スペクトル集合のうち、小さくなるように変更されたスペクトル集合の各周波数の複素周波数成分の方向（複素２次元空間における方向、即ち位相）を、直前の音響フレームにおけるスペクトル集合の各周波数の複素周波数成分の方向に対して、０度、９０度、１８０度、２７０度の４方向のいずれかの方向の中から事前に設定された方向に８０％だけ近付けるように補正する位相補正手段と、前記位相補正されたスペクトル集合を含む各窓スペクトルに対して周波数逆変換を行って、改変音響フレームを生成する周波数逆変換手段と、前記生成された改変音響フレームを順次出力する改変音響フレーム出力手段を有する音響信号に対する情報の埋め込み装置を提供する。
【００１０】
また、本発明第２の態様では、時系列のサンプル列で構成される音響信号に対して、付加情報を聴取不能な状態で埋め込む装置であって、前記音響信号より、所定数のサンプルを読み込む音響フレーム読込手段と、前記読み込んだ音響フレームのうち、奇数番目、偶数番目の一方をＡタイプ、他方をＢタイプとし、前記Ａタイプの音響フレームに対して第１窓関数を用いて周波数変換を行い、前記Ｂタイプの音響フレームに対して第２窓関数を用いて周波数変換を行い、前記第１窓関数に対応する複素周波数成分である第１窓スペクトル、前記第２窓関数に対応する複素周波数成分である第２窓スペクトルを得る周波数変換手段と、前記各窓スペクトルから所定の周波数範囲における互いに重複しない４つのスペクトル集合を、周波数が高い方の２つのスペクトル集合の周波数幅が周波数が低い方の２つのスペクトル集合の周波数幅よりも大きくなるように抽出し、各窓スペクトルについての４つのスペクトル集合を、前記第１窓スペクトルから抽出したスペクトル集合を周波数が低い順に、１Ｄ１、１Ｄ２、１Ｕ１、１Ｕ２とし、前記第２窓スペクトルから抽出したスペクトル集合を周波数が低い順に、２Ｄ１、２Ｄ２、２Ｕ１、２Ｕ２とした場合に、埋め込むべきビット配列に基づいて、１Ｄ１の強度値と２Ｄ２の強度値との積と、１Ｄ２の強度値と２Ｄ１の強度値との積のいずれか一方が他方より所定の比率以上に大きくなり、同時に１Ｕ１の強度値と２Ｕ２の強度値との積と、１Ｕ２の強度値と２Ｕ１の強度値との積のいずれか一方が他方より所定の比率以上に大きくなるように、各スペクトル集合の強度を変更する周波数成分変更手段と、前記スペクトル集合のうち、小さくなるように変更されたスペクトル集合の各周波数の複素周波数成分の方向を、直前の音響フレームにおけるスペクトル集合の各周波数の複素周波数成分の方向に対して、０度、９０度、１８０度、２７０度の４方向のいずれかの方向の中から事前に設定された方向に８０％だけ近付けるように補正する位相補正手段と、前記位相補正されたスペクトル集合を含む各窓スペクトルに対して周波数逆変換を行って、改変音響フレームを生成する周波数逆変換手段と、前記生成された改変音響フレームを順次出力する改変音響フレーム出力手段を有する音響信号に対する情報の埋め込み装置を提供する。
【００１１】
本発明第１、第２の態様によれば、付加情報を埋め込む際、埋め込む情報に応じて複素周波数成分の強度状態を変更した後、強度を弱めた複素周波数成分の位相を、直前の区間の複素周波数成分の方向に対して、あらかじめ設定された０度、９０度、１８０度、２７０度の４方向のいずれかの方向の近傍に補正するようにしたので、広範な室内で情報を抽出する際にも、直前の区間の複素周波数成分の残響により当該複素周波数成分の強度が大きく変化することを防ぐことができ、抽出側において情報の抽出精度を高めることが可能となる。
【００１２】
また、本発明第３の態様では、本発明第１、第２の態様の音響信号に対する情報の埋め込み装置において、前記周波数変換手段は、前記音響フレームに対して周波数変換を行う前に、音響フレームを構成する最初のサンプルを０に設定し、後続するサンプルは各々直前の改変前のサンプルとの差分値になるように、前記音響フレームを構成するサンプルの値に改変を加えるものであり、前記周波数逆変換手段は、前記周波数逆変換により得られた各サンプルの値に直前のサンプルの値を順次加算することにより、前記改変音響フレームを構成する各サンプルの値を設定することを特徴とする。
【００１３】
本発明第３の態様によれば、音響フレームに対して周波数変換を行う前に、音響フレームを構成する各サンプルを、元の隣接サンプル間の差分となるように微分処理し、周波数成分の変更、位相補正を行った後、周波数逆変換により得られた各サンプルの値に直前のサンプルの値を順次加算することにより、各サンプルの値を積分処理するようにしたので、残響による影響が加わった場合であっても、その影響を軽減することが可能となる。
【発明の効果】
【００１４】
本発明によれば、付加情報を埋め込む際、埋め込む情報に応じて複素周波数成分の強度状態を変更した後、強度を弱めた複素周波数成分の位相を、直前の区間の複素周波数成分の方向に対して、０度、９０度、１８０度、２７０度の４方向のいずれかの方向の中から事前に設定された方向に８０％だけ近付けるように補正するようにしたので、広範な室内で情報を抽出する際にも、直前の区間の複素周波数成分の残響により当該複素周波数成分の強度が大きく変化することを防ぐことができ、抽出側において情報の抽出精度を高めることが可能となる。
【図面の簡単な説明】
【００１５】
【図１】音響信号に対する情報の埋め込み装置の機能ブロック図である。
【図２】本発明で用いる時間方向窓関数を示す図である。
【図３】本発明の一実施形態における変更対象周波数帯の成分の変化の状態を示す図である。
【図４】符号変換テーブル作成の処理概要を示すフローチャートである。
【図５】８ビット符号と１６ビット符号の符号変換テーブルの一例を示す図である。
【図６】図１に示した装置の処理概要を示すフローチャートである。
【図７】振幅変換を用いない埋め込み処理を説明するための図である。
【図８】振幅変換を用いない抽出処理を説明するための図である。
【図９】振幅変換を用いた埋め込み処理を説明するための図である。
【図１０】振幅変換を用いた抽出処理を説明するための図である。
【図１１】音響信号からの情報の抽出装置の機能ブロック図である。
【図１２】８ビット符号と１６ビット符号の符号変換テーブルの一例を示す図である。
【図１３】図１１に示した装置の、エラー訂正を行わない設定における処理概要を示すフローチャートである。
【図１４】図１３のＳ２０２の時間軸シフト確定および符号出力の詳細を示すフローチャートである。
【図１５】図１４のＳ３０２の符号判定処理の詳細を示すフローチャートである。
【図１６】人間の聴覚心理特性である音脈分凝の原理の説明図である。
【図１７】特許文献２の埋め込み時の各音響フレームの強度変化の様子を示す図である。
【図１８】特許文献３における埋め込み時の各音響フレームの強度変化の様子を示す図である。
【図１９】位相補正による残響耐性実現の基本原理（単純モデル）を示す概念図である。
【図２０】図１９に示した単純モデルにおける残響除去の根拠の説明図である。
【図２１】位相補正による残響耐性実現の基本原理（実用モデル）を示す概念図である。
【図２２】図２１に示した実用モデルにおける残響除去の根拠の説明図である。
【図２３】周波数に対するエネルギー分布および、特許文献２と特許文献３の埋め込み領域を示す図である。
【図２４】合成直前フレーム成分と直前フレーム成分の角度が大きい場合の、各フレーム成分の様子を示す図である。
【図２５】直前フレーム成分の方向（０度）を基準として、補正可能な４方向を示す図である。
【図２６】時間次元での残響抑圧原理を説明するための図である。
【図２７】時間次元での残響抑圧原理を説明するための図である。
【図２８】時間次元での残響抑圧原理を説明するための図である。
【図２９】時間次元での残響抑圧原理を説明するための図である。
【発明を実施するための形態】
【００１６】
以下、本発明の実施形態について図面を参照して詳細に説明する。
（１．本発明の基本概念）
最初に、本発明の基本概念について説明しておく。本発明では、特許文献２〜４と同様、人間の聴覚心理特性である音脈分凝の原理を利用する。音脈分凝とは、時系列に高い音と低い音が交互に進行するパターンに対して、人間が、あたかも高低２つのトラックが連続して流れるように音を補間して聞いてしまう錯覚現象である。
【００１７】
たとえば、図１６（ａ）に示すように、３つの低い音である低音１、低音３、低音５と３つの高い音である高音２、高音４、高音６が、低音１、高音２、低音３、高音４、低音５、高音６の順に演奏されている場合を考えてみる。低音１、低音３、低音５と高音２、高音４、高音６は１オクターブ程度離れており、低い音と高い音は同時に演奏されることはないが、時間的間隔は、ほぼ連続しているものとする。この場合、人間には、図１６（ｂ）に示すように、低い音と高い音が演奏されていない部分も補間されて演奏されているように聞こえる。すなわち、実際の演奏は単旋律であるのに、人間には、図１６（ｂ）に示すように、高音１´、高音３´、高音５´、低音２´、低音４´、低音６´が補間されて複旋律であるように聞こえる。例えば、高音３´は高音２と高音４が連続的につながるように、高音２と高音４の平均的な成分に聞こえる。また、末端部の高音１´と低音６´についても、隣接する高音２と低音５に近い成分で、各々低音１と高音６に対応するように聞こえる。しかし、マイクロフォン等の電気音響装置は、図１６（ａ）に示したものをそのままの音として取得することになる。本発明および特許文献２の発明は、このような性質を利用するのである。なお、補間された音は、前後に演奏されている音と必ずしも同じレベルに補間されて聴こえるのではなく、大雑把に言って、前後に演奏されている音の５０％程度があたかも補間されているように聞こえる。
【００１８】
本発明および特許文献２〜４の発明のいずれにおいても、音響信号をサンプリングすることにより得られた所定数のサンプルを１音響フレームとして、処理を行う。また、先頭から奇数番目と偶数番目の音響フレームは、互いに半分のサンプルを重複する形で設定される。特許文献２の発明と特許文献３の発明の違いは、埋め込みに利用される変更対象周波数帯の分割数であり、特許文献２の発明では２つの周波数領域、特許文献３では４つの周波数領域に分けている。いずれの場合も２つの周波数領域における複素周波数成分の強度の関係を変更して、情報を埋め込むものであり、特許文献２の発明では変更対象周波数帯で１ビットが埋め込み可能であり、特許文献３の発明では、変更対象周波数帯を上位周波数帯と下位周波数帯に分け、上位周波数帯と下位周波数帯で異なる情報を埋め込むことにより２ビット埋め込みが可能となっている。
【００１９】
ここで、変更対象周波数帯が２つの周波数領域からなる場合における埋め込み時の各音響フレームの強度変化の様子を図１７に示す。ステレオ音響信号の場合は、Ｌ-ch（左チャンネル）、Ｒ-ch（右チャンネル）とも同様に処理が行われるが、図１７においては、Ｌ-ch（左チャンネル）のみを示している。また、ｕ、ｄはそれぞれ相対的に高周波、低周波成分を示し、１〜６は先頭からの音響フレームの順番を示している。したがって、図１７の例では、６個の音響フレームを示しており、例えば、“Ｕｕ１”は、１番目の音響フレームの高周波側成分を示していることになる。また、奇数番目と偶数番目の音響フレームは、実際に半分のサンプルが重複して設定されるが、図１７では、説明の便宜上独立した形態で示している。また、図１７において、“Ｕｕ１”等の各周波数成分の文字の大きさは、相対的な強度の大小を示している。
【００２０】
図１７においては、図１７（ａ）は原音響信号の変更対象周波数帯を、図１７（ｂ）は従来の埋め込み処理後の変更対象周波数帯を、図１７（ｃ）は本発明の埋め込み処理後の変更対象周波数帯を示している。特許文献２の発明では、奇数番目の音響フレームの高周波側と低周波側の複素周波数成分の強度の大小関係と、偶数番目の音響フレームの高周波側と低周波側の複素周波数成分の強度の大小関係が逆転するように処理を行う。奇数番目と偶数番目のどちらの音響フレームの高周波側を大きくするかによって、埋め込むビット値を変化させることができる。図１７の例では、偶数番目の音響フレームの高周波側を大きくすることにより“０”、奇数番目の音響フレームの高周波側を大きくすることにより“１”を埋め込むことを示している。したがって、元の音響信号に“０１０”という３ビットの情報を埋め込んだ場合、音響フレームの状態は、図１７（ｂ）に示すように変化する。
【００２１】
特許文献２の発明では、奇数番目と偶数番目の音響フレームで高周波側の強度と低周波側の強度を逆転させるので、図１７（ｂ）に示すように、２音響フレーム単位で見た場合、高周波側にも低周波側にも必ず信号強度の強い部分が存在する。このため、音脈分凝の原理により、人間には、音が途切れたようには聞こえないが、抽出装置では、その明確な変化を認識することができる。
【００２２】
本発明では、特許文献４と同様、残響耐性を高めるため、さらに、複素周波数成分の強度を相対的に小さくされた複素周波数成分に対して位相補正を行う。複素周波数成分の強度を相対的に小さくされた複素周波数成分に対して行うのは、複素周波数成分の強度を相対的に大きくされた複素周波数成分に対して行うと、品質劣化につながるためである。したがって、図１７（ｃ）で示したように、補正対象は、“Ｕｄ２” “Ｕｕ４” “Ｕｄ６”となる。また、詳しくは後述するが、位相補正の方向としては、特許文献４とは異なり、直前の音響フレームに対して、設定された０度、９０度、１８０度、２７０度の４方向のいずれかの方向に近付けるように行う。
【００２３】
図１７（ａ）（ｂ）に示したような特許文献２の発明について、付加情報を埋め込むための周波数領域を大きく確保したいという要望に応え、周波数領域を大きく確保することにより、抽出感度および精度を向上させ、１つの音響フレームに埋め込み可能な情報量を増やしたのが、特許文献３の発明である。周波数領域を広げる方法としては、高音側に広げる方法と、低音側に広げる方法の２通りがあるが、前者の方法は実現が容易である。なぜなら、高音側は信号強度が低くヒトの聴覚感度も下がるため、周波数領域を広げても再生品質にはあまり影響を与えないからである。しかし、携帯電話による電子透かし抽出を実現可能とするため、特許文献３の発明では、電話回線帯域である０．３ｋＨｚまで低音側に広げることにした。この場合、低音帯域は信号強度が強く聴覚感度も比較的高いため、埋め込み対象とする周波数領域を低音側に単純に拡張させて、その情報を変化させると、上手く音脈分凝の原理が機能せず、人間の耳に不快な音になってしまう。
【００２４】
そこで、特許文献３の発明では、周波数領域を単純に拡張させるのではなく、１．７ｋＨｚ以下の低音領域に従来の埋め込み領域とは独立した領域を設け、高低２つの帯域で二重に音脈分凝の原理が機能するようにした。なお、高低２つの帯域は独立して音脈分凝を機能させるため、双方の周波数幅は必ずしも同一である必要はなく（ただし、各々の帯域は周波数方向に更に２分割されるが、２分割領域の幅は同一にする）、電話回線帯域の下限は規格上０．３ｋＨｚであるため、低音側の帯域幅は高音側より若干狭く設定せざるを得ない。そこで、特許文献３の発明では、好ましい例として、高音側は特許文献２の発明と同様に、１．７ｋＨｚから３．４ｋＨｚの範囲とし、低音側は０．３４ｋＨｚから１．７ｋＨｚの範囲を採用した。
【００２５】
ここで、変更対象周波数帯が４つの周波数領域からなる場合における埋め込み時の各音響フレームの強度変化の様子を図１８に示す。この場合も、ステレオ音響信号の場合は、Ｌ-ch（左チャンネル）、Ｒ-ch（右チャンネル）とも同様に処理が行われるが、図１８においては、Ｌ-ch（左チャンネル）のみを示している。また、ｕ、ｄはそれぞれ相対的に高周波、低周波成分を示し、１〜６は先頭からの音響フレームの順番を示している点も図１７と同様である。本発明では、図１７に示したような従来の周波数範囲よりもさらに、低い周波数範囲においても、複素周波数成分の変更処理を行う。図１８において、“Ｕｕ１”〜“Ｕｕ６”、“Ｕｄ１”〜“Ｕｄ６”は、図１７に示したものと同じ複素周波数成分であるが、“Ｄｕ１”〜“Ｄｕ６”、“Ｄｄ１”〜“Ｄｄ６”は、本発明により新たに情報の埋め込みに用いる複素周波数成分である。なお、図１８においても、“Ｕｕ１”等の各複素周波数成分の文字の大きさは、相対的な強度の大小を示している。
【００２６】
図１８においては、図１８（ａ）は原音響信号の変更対象周波数帯を、図１８（ｂ）は従来の埋め込み処理後の変更対象周波数帯を、図１８（ｃ）は本発明の埋め込み処理後の変更対象周波数帯を示している。特許文献３の発明では、上位周波数帯、下位周波数帯それぞれにおいて、奇数番目の音響フレームの高周波側と低周波側の成分強度の大小関係と、偶数番目の音響フレームの高周波側と低周波側の成分強度の大小関係が逆転するように処理を行う。奇数番目と偶数番目のどちらの音響フレームの高周波側を大きくするかによって、埋め込むビット値を変化させることができる。図１８の例では、上位周波数帯、下位周波数帯いずれにおいても、偶数番目の音響フレームの高周波側を大きくすることにより“０”、奇数番目の音響フレームの高周波側を大きくすることにより“１”を埋め込むことを示している。したがって、元の音響信号に“０１０”という３ビットの情報を埋め込んだ場合、音響フレームの状態は、図１８（ｂ）に示すように変化する。
【００２７】
本発明では、特許文献４と同様、残響耐性を高めるため、さらに、複素周波数成分の強度を相対的に小さくされた複素周波数成分に対して位相補正を行う。したがって、図１８（ｃ）で示したように、補正対象は、“Ｕｄ２” “Ｕｕ４” “Ｕｄ６” “Ｄｄ２” “Ｄｕ４” “Ｄｄ６”となる。また、図１７の場合と同様、位相補正の方向としては、特許文献４とは異なり、直前の音響フレームに対して、設定された０度、９０度、１８０度、２７０度の４方向のいずれかの方向に近付けるように行う。
【００２８】
（１．２．位相補正による残響耐性付与原理）
残響耐性を高めるために位相補正を行う理由について説明する。図１９は、位相補正による残響耐性実現の基本原理を示す概念図である。図１９においては、対象フレーム（変更対象の音響フレーム）と直前フレーム（変更対象の音響フレームの直前の音響フレーム）の変更対象周波数帯における複素周波数成分を、その実部と虚部を軸として複素ベクトル表現している。
【００２９】
図１９（ａ）は、複素周波数成分の変更を行った後の状態（図１７（ｂ）、図１８（ｂ）の状態）を示したものである。図１９（ｂ）は、図１９（ａ）に示した直前フレーム成分、対象フレーム成分に加えて位相補正後の対象フレーム成分を複素ベクトル表現したものである。図１９の例では、直前フレーム成分の振幅（複素ベクトルのノルム）が、対象フレーム成分の振幅に比べて大きいため、直前フレーム成分の逆位相の方向に対象フレーム成分の位相を補正する。すなわち、直前フレーム成分と１８０度逆の方向に対象フレーム成分の位相を補正する。
【００３０】
図１９（ｂ）のように位相補正することにより、残響を除去することができる原理について図２０を用いて説明する。図２０（ａ）、図２０（ｂ）は、それぞれ図１９（ａ）、図１９（ｂ）と同様、周波数成分の変更を行った後と位相補正後の状態を示したものである。また、図２０に示した直前フレーム成分、対象フレーム成分、位相補正後の対象フレーム成分は、図１９と同じものである。図２０では、図１９に示したフレーム成分に加えて、残響発生時の対象フレーム成分を示している。
【００３１】
図２０（ａ）に示すように、残響により直前フレーム成分が対象フレーム成分に重畳されると、対象フレーム成分の振幅が大きくなり、埋め込まれたビット値が反転して抽出される可能性が高くなる。直前フレーム成分の逆位相の方向に対象フレーム成分の位相を補正した場合、図２０（ｂ）に示すように、残響により直前フレーム成分が対象フレーム成分に重畳されても、対象フレーム成分の振幅はほとんど変化せず、埋め込まれたビット値が反転して抽出される可能性が低くなる。すなわち、位相補正を行うことにより、残響による埋め込み情報の誤検出を防ぐことができる。
【００３２】
図１９、図２０は、直前フレームからの残響を考慮した単純モデルであるが、現実には、直前フレームよりも前の音響フレームからも影響を受けることがある。そこで、次では、変更対象の音響フレームの２つ前の音響フレームである２直前フレームと、直前フレームの２つの音響フレームからの残響を考慮した実用モデルについて説明する。
【００３３】
図２１は、位相補正による残響耐性実現の基本原理実用モデルを示す概念図である。図２１においては、図１９に示した対象フレーム成分、直前フレーム成分、位相補正後の対象フレーム成分に加えて、２直前フレーム成分も示している。図２１（ａ）は、周波数成分の変更を行った後の状態を示したものである。図２１（ｂ）は、２直前フレーム成分、直前フレーム成分、対象フレーム成分に加えて位相補正後の対象フレーム成分をベクトル表現したものである。図２１の例でも、直前フレーム成分の振幅（複素ベクトルのノルム）が、対象フレーム成分の振幅に比べて大きいため、直前フレーム成分の逆位相の方向に対象フレーム成分の位相を補正する。このとき、単純モデルの場合と異なり、直前フレーム成分ではなく、２直前フレーム成分と直前フレーム成分を合成した合成直前フレーム成分の逆位相の方向に対象フレーム成分の位相を補正する。すなわち、合成直前フレーム成分と１８０度逆の方向に対象フレーム成分の位相を補正する。したがって、直前フレーム成分の逆位相より若干手前に対象フレーム成分の位相を補正することになる。
【００３４】
図２１（ｂ）のように位相補正することにより、残響を除去することができる原理について図２２を用いて説明する。図２２（ａ）、図２２（ｂ）は、それぞれ図２１（ａ）、図２１（ｂ）と同様、周波数成分の変更を行った後と位相補正後の状態を示したものである。また、図２２に示した直前フレーム成分、合成直前フレーム成分、対象フレーム成分、位相補正後の対象フレーム成分は、図２１と同じものである。図２２では、図２１に示したフレーム成分に加えて、残響発生時の対象フレーム成分を示している。
【００３５】
図２２（ａ）に示すように、残響により合成直前フレーム成分が対象フレーム成分に重畳されると、対象フレーム成分の振幅が大きくなり、埋め込まれたビット値が反転して抽出される可能性が高くなる。合成直前フレーム成分の逆位相の方向に対象フレーム成分の位相を補正した場合、図２２（ｂ）に示すように、残響により合成直前フレーム成分が対象フレーム成分に重畳されても、対象フレーム成分の振幅はほとんど変化せず、埋め込まれたビット値が反転して抽出される可能性が低くなる。すなわち、位相補正を行うことにより、残響による埋め込み情報の誤検出を防ぐことができる。
【００３６】
図２１、図２２に示した実用モデル（特許文献４の技術に対応）では、合成直前フレーム成分と直前フレーム成分の角度が２０度〜３０度と比較的小さいため、対象フレーム成分を、合成直前フレーム成分の逆位相（０度）の方向に補正することは、直前フレーム成分の逆位相に近い方向（２０〜３０度）に補正することになる。この場合、対象フレーム成分を、直前フレーム成分の逆位相に近い方向に補正することにより、合成直前フレーム成分の逆位相方向に補正することとほぼ同等になり、残響による埋め込み情報の誤検出を防ぐことができる。しかし、図２４（ａ）に示すように、合成直前フレーム成分と直前フレーム成分の角度が大きい場合、直前フレーム成分の逆位相に近い方向に補正することは、合成直前フレーム成分の逆位相の方向に補正することにならないため、残響耐性を高めることはできない。
【００３７】
本発明においては、対象フレーム成分の補正方向を直前フレーム成分の逆位相に近い方向に限定せず、合成直前フレーム成分と直前フレーム成分の角度に種々の隔たりがあっても、対象フレーム成分を、合成直前フレーム成分の逆位相の方向に補正するのと同等な効果が得られるように、直前フレーム成分に対して所定の角度で補正する。例えば、図２４（ｂ）に示すように、合成直前フレーム成分と直前フレーム成分の角度が１８０度程度に大きい場合、対象フレーム成分を直前フレーム成分と同位相に近い方向に補正する。合成直前フレーム成分の逆位相の方向に対象フレーム成分の位相を補正した場合、図２４（ｃ）に示すように、残響により合成直前フレーム成分が対象フレーム成分に重畳されても、対象フレーム成分の振幅はほとんど変化せず、埋め込まれたビット値が反転して抽出される可能性が低くなる。すなわち、位相補正を行うことにより、残響による埋め込み情報の誤検出を防ぐことができる。
【００３８】
本発明では、図２５（ａ）に示すように、直前フレーム成分の方向（０度）を基準として、０度、９０度、１８０度、２７０度の４方向のいずれかの近傍に補正可能とする。すなわち、直前フレーム成分に対しては、逆位相に近い方向に限定されず、逆位相に近い方向を含む４方向のいずれかの近傍に補正することになる。図２５（ｂ）の例では、合成直前フレーム成分の逆位相（直前フレーム成分の同位相に近い方向）に補正することにより、残響耐性を高めることができる。
【００３９】
図２３に周波数に対するエネルギー分布および、変更対象周波数帯が１段（図１７の例：周波数領域は２つ）の場合と２段（図１８の例：周波数領域は４つ）の場合の埋め込み領域を示す。図２３（ａ）に示すように、音響信号のエネルギー分布は、周波数が低い程大きくなる。図２３（ｂ）に示すように、変更対象周波数帯が２段の場合、変更対象周波数帯が１段の場合の埋め込み領域よりも低い周波数範囲も埋め込み領域としたので、全体として埋め込み領域が広がっている。変更対象周波数帯が２段の場合、上位周波数帯（１．７ｋＨｚ〜３．４ｋＨｚ）と、下位周波数帯（０．３４ｋＨｚ〜１．７ｋＨｚ）では、上位の方が若干広範囲を有するが、図２３（ａ）に示すように、下位の方がエネルギー分布が大きいため、埋め込みに必要なエネルギーについては、むしろ下位の方が大きくなる。
【００４０】
（１．３．時間次元での残響抑圧原理）
本発明では、上記位相補正以外に時間次元でも残響抑圧を行っている。次に、時間次元での残響抑圧原理について説明する。図２６〜図２９は、音響信号を単純化したモデルを示している。本発明では、音響信号から所定数Ｎのサンプルを音響フレームとして抽出し、Ｎ個（実施形態では４０９６個）のサンプル単位で処理を行うが、図２６〜図２９の例では、説明の簡略化のため、１６個としている。ここでは、図２６（ａ）に示すような１６個のサンプルで構成される音響信号ＤＡＴＡ１を想定する。なお、図２６〜図２９において、上下方向ほぼ中央の位置がサンプル値“０”を示し、上側が正の値、下側が負の値である。
【００４１】
詳細は後述するが、本発明では、ビット値を埋め込む際、重複して設定された音響フレームの周波数成分の強度を変更する。そのため、１つの音響フレームで考えると、その前半または後半の値が変化することになる。ここでは、後半の強度を５０％小さく変調する場合を考えてみる。図２６（ａ）の原音響信号に対して、後半８サンプルを５０％小さく変調すると、図２６（ｂ）に示すような変調音響信号ＤＡＴＡ２が得られる。変調音響信号ＤＡＴＡ２では、前半８サンプルと後半８サンプルの強度が大きく相違している。抽出側では、この相違を検出して埋め込まれたビット値を抽出することになる。
【００４２】
ここで、図２７（ｂ）に示すような残響信号ＤＡＴＡ４を用意し、図２６（ｂ）に示した変調音響信号ＤＡＴＡ２に加算する。この結果、図２７（ａ）に示すような残響付加された変調音響信号ＤＡＴＡ３が得られる。変調音響信号ＤＡＴＡ３では、後半８サンプルに残響成分が付加されているため、前半８サンプルと後半８サンプルの強度の差が小さくなり、埋め込まれたビット値を正確に抽出することができない。
【００４３】
本発明では、時間次元での残響抑圧を行うため、原音響信号に対して、微分処理・積分処理を実行する。図２６（ａ）に示した原音響信号ＤＡＴＡ１に対して微分処理を施した微分信号ＤＡＴＡ５を図２８（ａ）に示す。微分信号ＤＡＴＡ５の各サンプルの値は、原音響信号ＤＡＴＡ１の隣接するサンプル間の差分となっている。図２８（ａ）の微分信号ＤＡＴＡ５に対して、後半８サンプルを５０％小さく変調すると、図２８（ｂ）に示すような変調微分信号ＤＡＴＡ６が得られる。
【００４４】
次に、図２８（ｂ）に示した変調微分信号ＤＡＴＡ６に対して積分処理を施す。変調微分信号ＤＡＴＡ６に対して積分処理を施した積分信号ＤＡＴＡ７を図２９（ａ）に示す。積分信号ＤＡＴＡ７の各サンプルの値は、変調微分信号ＤＡＴＡ６の隣接するサンプルの値を加算したものとなっている。
【００４５】
このようにして得られた積分信号ＤＡＴＡ７に対して、図２７（ｂ）に示した残響信号ＤＡＴＡ４を加算する。この結果、図２９（ｂ）に示すような残響付加された積分信号ＤＡＴＡ８が得られる。図２９（ｂ）に示した積分信号ＤＡＴＡ８に対して微分処理を施した微分信号ＤＡＴＡ９を図２９（ｃ）に示す。図２９（ｃ）に示す微分信号ＤＡＴＡ９においては、後半サンプルに振幅低減成分が維持されているため、抽出側において、埋め込まれたビット値を正確に抽出することができる。
【００４６】
（２．１．埋め込み装置の構成）
次に、本発明に係る音響信号に対する情報の埋め込み装置について説明する。図１は、本発明に係る音響信号に対する情報の埋め込み装置の構成を示す機能ブロック図である。図１において、１０は音響フレーム読込手段、２０は周波数変換手段、３０は周波数成分変更手段、４０は周波数逆変換手段、５０は改変音響フレーム出力手段、６０は記憶手段、６１は音響信号記憶部、６２は付加情報記憶部、６３は改変音響信号記憶部、７０はビット配列作成手段、８０は変換テーブル作成手段である。なお、図１に示す装置は、ステレオ音響信号、モノラル音響信号の両方に対応可能であるが、ここでは、ステレオ音響信号に対して処理を行う場合について説明していく。
【００４７】
音響フレーム読込手段１０は、付加情報の埋め込み対象とする元のステレオ音響信号の各チャンネルから所定数のサンプルを１フレームとして読み込む機能を有している。周波数変換手段２０は、音響フレーム読込手段１０が読み込んだ音響信号の実数成分で表現されるフレームをフーリエ変換等により周波数変換して複素周波数成分を生成する機能を有している。本実施形態では、周波数変換手段２０は、周波数変換を行う直前に後述する微分処理も行う。周波数成分変更手段３０は、生成された複素周波数成分から所定の周波数範囲に相当するスペクトル集合を複数抽出し、付加情報記憶部６２から抽出した付加情報よりビット配列作成手段７０が作成したビット配列に基づいて、スペクトル集合の状態を変更する機能を有している。位相補正手段３１は、周波数成分変更手段３０により、強度を小さくするように変更されたスペクトル集合の複素周波数成分の位相を、直前に読み込まれた音響フレームにおける対応する周波数範囲のスペクトル集合の複素周波数成分の方向から所定の角度だけずれた方向に補正をする機能を有している。この際、位相補正された複素数端数成分の強度（複素ベクトルのノルム）は、補正前と同一になるようにする処理も行う。周波数逆変換手段４０は、変更されたスペクトル集合を含む複数の複素周波数成分に対して周波数逆変換を行うことにより、改変音響フレームを生成する機能を有している。本実施形態では、周波数逆変換手段４０は、周波数逆変換を行う際に後述する積分処理も行う。改変音響フレーム出力手段５０は、生成された改変音響フレームを順次出力する機能を有している。
【００４８】
記憶手段６０は、付加情報を埋め込む対象とするステレオ音響信号を記憶した音響信号記憶部６１と、ビット列として構成され、ステレオ音響信号に埋め込まれる付加情報を記憶した付加情報記憶部６２と、付加情報埋め込み後の改変音響信号を記憶する改変音響信号記憶部６３を有しており、その他処理に必要な各種情報を記憶するものである。ビット配列作成手段７０は、付加情報記憶部６２から付加情報を抽出し、付加情報の各ワードについて、変換テーブル作成手段８０を参照し、対応するビット配列を作成する機能を有している。変換テーブル作成手段８０は、Ｎｗビットが取り得る２のＮｗ乗個の全ての登録順位に対して、ビットデータを巡回したビットパターンを含めて互いにハミング距離が少なくとも３以上となるＮｈ（＞Ｎｗ）ビットの巡回ハミング符号を割り当てることにより、Ｎｗビットの登録順位とＮｈビットの巡回ハミング符号が対応付けられた符号変換テーブルを作成する機能を有している。ここで、登録順位とは、Ｎｗビットを１０進で表現した場合の値を示しており、Ｎｗ＝７の場合、登録順位は、０〜１２７（実際には０〜１３１までは登録可能）で表現される。符号変換テーブルについては、別の装置により事前に作成したものを記憶手段６０に記憶させておき、ビット配列作成手段７０が参照するようにしても良い。この場合は、音響信号に対する情報の埋め込み装置には、変換テーブル作成手段８０は不要となる。
【００４９】
なお、付加情報とは、音響情報に付加して埋め込むべき情報であり、タイトルやアーティスト名等の属性情報、および属性情報以外の他の情報を含むものである。本実施形態では、上記Ｎｗ、ＮｈをそれぞれＮｗ＝７、Ｎｈ＝１６としている。本実施形態では、付加情報のコード形式としてＡＳＣＩＩコードを採用するため、付加情報においてはＮｗ＝７となり、７ビットが１ワードとなる。ただし、実際は７ビット範囲を若干超える符号表現が可能なため、８ビットを１ワードとしている。また、ビット配列作成手段７０が作成するビット配列は、１６ビットとなり、ビット配列作成後は、これを１ワードとして処理している。図１に示した各構成手段は、現実にはコンピュータおよびその周辺機器等のハードウェアに専用のプログラムを搭載することにより実現される。すなわち、コンピュータが、専用のプログラムに従って各手段の内容を実行することになる。
【００５０】
（２．２．埋め込み装置の処理動作）
次に、図１に示した音響信号に対する情報の埋め込み装置の処理動作について説明する。上述のように、本発明は、図１７に示したように変更対象周波数帯を１段とし、単一の音脈分凝（以下、「単一音脈分凝」という）を発生させる場合にも、図１８に示したように、変更対象周波数帯を上位周波数帯と下位周波数帯の２つに分け、二重に音脈分凝（以下、「二重音脈分凝」という）を発生させる場合にも、適用することができる。以下では、「二重音脈分凝」を例にとって説明する。音響フレーム読込手段１０は、音響信号記憶部６１に記憶されたステレオ音響信号の左右の各チャンネルから、それぞれ所定数Ｎのサンプルを１音響フレームとして読み込む。音響フレーム読込手段１０が読み込む１音響フレームのサンプル数Ｎは、適宜設定することができるが、サンプリング周波数が４４．１ｋＨｚの場合、４０９６サンプル程度とすることが望ましい。したがって、音響フレーム読込手段１０は、左チャンネル、右チャンネルについてそれぞれ４０９６サンプルずつ、順次音響フレームとして読み込んでいくことになる。
【００５１】
音響フレームとしては、ＡタイプとＢタイプが存在する。Ａタイプの音響フレーム、Ｂタイプの音響フレームは、それぞれ同タイプの先行する音響フレームの最後のサンプルの次のサンプルを先頭サンプルとして設定される。そして、ＡタイプとＢタイプの音響フレームは互いに所定数（本実施形態では２０４８）のサンプルを重複して設定される。例えば、Ａタイプの音響フレームを先頭からＡ１、Ａ２、Ａ３…とし、Ｂタイプの音響フレームを先頭からＢ１、Ｂ２、Ｂ３…とすると、Ａ１はサンプル１〜４０９６、Ａ２はサンプル４０９７〜８１９２、Ａ３はサンプル８１９３〜１２２８８、Ｂ１はサンプル２０４９〜６１４４、Ｂ２はサンプル６１４５〜１０２４０、Ｂ３はサンプル１０２４１〜１４３３６となる。なお、ＡタイプとＢタイプは相対的なものであるので、どちらが先であっても良い。すなわち、上記とは逆にＡ１がサンプル２０４９〜６１４４、Ａ２がサンプル６１４５〜１０２４０、Ａ３がサンプル１０２４１〜１４３３６、Ｂ１がサンプル１〜４０９６、Ｂ２がサンプル４０９７〜８１９２、Ｂ３がサンプル８１９３〜１２２８８であっても良い。
【００５２】
周波数変換手段２０は、実数次元の音響フレームに対して周波数変換を行って、その音響フレームの複素周波数成分を得る。本実施形態では、周波数変換に先立って周波数変換手段２０が微分処理を行う。具体的には、左チャンネル信号の音響フレームの各サンプルＸｌ（ｉ）、右チャンネル信号の音響フレームの各サンプルＸｒ（ｉ）（ｉ＝０，…，Ｎ−１）に対して、Ｘｌ（０）＝Ｘｒ（０）＝０とし、ｉ＝１，…，Ｎ−１において、Ｘｌ（ｉ）←Ｘｌ（ｉ）−Ｘｌ（ｉ−１）、Ｘｒ（ｉ）←Ｘｒ（ｉ）−Ｘｒ（ｉ−１）なる変換を施し、Ｎ個の配列Ｘｌ（ｉ）、Ｘｒ（ｉ）の値を元の隣接サンプル間の差分に変更する。これにより、各サンプルＸｌ（ｉ）、Ｘｒ（ｉ）は、元の隣接サンプル間の差分を示す値となる。以降、この差分値を有するサンプルＸｌ（ｉ）、Ｘｒ（ｉ）を元のサンプルＸｌ（ｉ）、Ｘｒ（ｉ）に代えて用いることとする。なお、室内環境によっては、この微分処理を行うことにより、逆効果になることもある。その場合は、微分処理を実行しないような設定にしておく。微分処理を実行しない場合は、元のサンプルがそのままＸｌ（ｉ）、Ｘｒ（ｉ）として用いられることになる。
【００５３】
微分処理を終えたら、周波数変換手段２０は、周波数変換を行う。具体的には、窓関数を利用して周波数変換を行う。周波数変換としては、複素数次元への変換に対応可能なフーリエ変換、ウェーブレット変換その他公知の種々の手法を用いることができる。本実施形態では、フーリエ変換を用いた場合を例にとって説明する。
【００５４】
一般に、所定の信号に対してフーリエ変換を行う場合、信号を所定の長さに区切って行う必要があるが、この場合、所定長さの信号に対してそのままフーリエ変換を行うと、擬似高調波成分が発生する。そこで、一般にフーリエ変換を行う場合には、ハニング窓と呼ばれる窓関数を用いて、信号の値を変化させた後、変化後の値に対してフーリエ変換を実行する。
【００５５】
本実施形態においても、窓関数を利用しているが、Ａタイプの音響フレーム、Ｂタイプの音響フレームで、使用する窓関数を分けている。本実施形態では、図２（ａ）（ｂ）に示したような第１窓関数Ｗ（１，ｉ）、第２窓関数Ｗ（２，ｉ）を用意し、抽出側で認識し易いようにした。第１窓関数Ｗ（１，ｉ）は、Ａタイプの音響フレームに対して用いるためのものであり、図２（ａ）に示すように所定のサンプル番号ｉの位置において、最大値１をとり、後部においては、最小値０をとるように設定されている。どのサンプル番号の場合に最大値をとるかについては、窓関数Ｗ（１，ｉ）の設計によって異なってくるが、本実施形態では、後述する〔数式１〕で定義される。Ａタイプの音響フレームについてのフーリエ変換は、この窓関数Ｗ（１，ｉ）を乗じたものに対して行われることになる。
【００５６】
また、第２窓関数Ｗ（２，ｉ）は、Ｂタイプの音響フレームに対して用いるためのものであり、図２（ｂ）に示すように、所定のサンプル番号ｉの位置において、最大値１をとり、前部においては、最小値０をとるように設定されている。どのサンプル番号の場合に最大値をとるかについては、窓関数Ｗ（２，ｉ）の設計によって異なってくるが、本実施形態では、後述する〔数式２〕で定義される。Ｂタイプの音響フレームについてのフーリエ変換は、この窓関数Ｗ（２，ｉ）を乗じたものに対して行われることになる。
【００５７】
なお、上述のように、本実施形態においては、音響フレームは重複して読み込まれる。すなわち、奇数番目の音響フレームと偶数番目の音響フレームは、所定数のサンプルを重複して読み込む。上記のように、奇数フレームと偶数フレームでは、用いられる窓関数が異なるが、奇数フレームと偶数フレームは単に奇数か偶数かの違いだけであるため、どちらに対してどちらの処理を行っても良い。したがって、本明細書では、奇数フレーム、偶数フレームの一方をＡタイプフレーム、他方をＢタイプフレームと呼ぶことにする。本実施形態では、奇数フレームをＡタイプフレーム、偶数フレームをＢタイプフレームとして説明するが、逆に偶数フレームをＡタイプフレーム、奇数フレームをＢタイプフレームとしても良い。
【００５８】
本実施形態では、窓関数Ｗ（１，ｉ）、Ｗ（２，ｉ）は、以下の〔数式１〕〔数式２〕で定義される。なお、図２において、横軸は時間軸（ｉ）である。ｉは、後述するように、各音響フレーム内のＮ個のサンプルに付した通し番号であるため時刻ｔに比例している。また、図２（ａ）（ｂ）において縦軸は信号の振幅値（レベル）を示す。図２（ａ）（ｂ）において縦軸は窓関数Ｗ（１，ｉ）、Ｗ（２，ｉ）の値を示しており、Ｗ（１，ｉ）、Ｗ（２，ｉ）の最大値はいずれも１である。
【００５９】
〔数式１〕
ｉ≦Ｎ／８のとき、Ｗ（１，ｉ）＝０．０
Ｎ／８＜ｉ≦３Ｎ／８のとき、Ｗ（１，ｉ）＝０．５−０．５ｃｏｓ（４π（ｉ−Ｎ／８）／Ｎ）
３Ｎ／８＜ｉ≦１１Ｎ／１６のとき、Ｗ（１，ｉ）＝１．０
１１Ｎ／１６＜ｉ≦１３Ｎ／１６のとき、Ｗ（１，ｉ）＝０．５＋０．５ｃｏｓ（８π（ｉ−１１Ｎ／１６）／Ｎ）
ｉ＞１３Ｎ／１６のとき、Ｗ（１，ｉ）＝０．０
【００６０】
〔数式２〕
ｉ≦３Ｎ／１６のとき、Ｗ（２，ｉ）＝０．０
３Ｎ／１６＜ｉ≦５Ｎ／１６のとき、Ｗ（２，ｉ）＝０．５−０．５ｃｏｓ（８π（ｉ−３Ｎ／１６）／Ｎ）
５Ｎ／１６＜ｉ≦５Ｎ／８のとき、Ｗ（２，ｉ）＝１．０
５Ｎ／８＜ｉ≦７Ｎ／８のとき、Ｗ（２，ｉ）＝０．５＋０．５ｃｏｓ（４π（ｉ−５Ｎ／８）／Ｎ）
ｉ＞７Ｎ／８のとき、Ｗ（２，ｉ）＝０．０
【００６１】
なお、図２および上記〔数式１〕〔数式２〕から明らかなように、窓関数Ｗ（１，ｉ）とＷ（２，ｉ）は、互いに非対称な形状である。これは、後述する抽出側において、両者の識別を容易にするためである。
【００６２】
本発明においては、奇数フレームと偶数フレームを、所定サンプルずつ重複して読み込むため、情報の埋め込みを行った後、音響信号に復元する際に、窓関数を乗じた奇数フレームと、窓関数を乗じた偶数フレームの重複サンプルを加算した場合に、ほぼ元の値に戻るようにしなければならない。このため、奇数フレームと偶数フレームの重複部分において、窓関数Ｗ（１，ｉ）、Ｗ（２，ｉ）を加算すると、全区間固定値１になるように定義されている。
【００６３】
周波数変換手段２０が、Ａタイプの音響フレームに対してフーリエ変換を行う場合は、左チャンネル信号Ｘｌ（ｉ）、右チャンネル信号Ｘｒ（ｉ）に対して、窓関数Ｗ（１，ｉ）を用いて、以下の〔数式３〕に従った処理を行い、左チャンネルに対応する変換データの実部Ａｌ（１，ｊ）、虚部Ｂｌ（１，ｊ）、右チャンネルに対応する変換データの実部Ａｒ（１，ｊ）、虚部Ｂｒ（１，ｊ）を得る。
【００６４】
〔数式３〕
Ａｌ（１，ｊ）＝Σ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Ｗ（２，ｉ）・Ｘｒ（ｉ＋Ｎ／２）・ｓｉｎ（２πｉｊ／Ｎ）
【００６７】
上記〔数式３〕〔数式４〕において、ｉは、各音響フレーム内のＮ個のサンプルに付した通し番号であり、ｉ＝０，１，２，…Ｎ−１の整数値をとる。また、ｊは周波数の値について、値の小さなものから順に付した通し番号であり、ｉと同様にｊ＝０，１，２，…Ｎ／２−１の整数値をとる。サンプリング周波数が４４．１ｋＨｚ、Ｎ＝４０９６の場合、ｊの値が１つ異なると、周波数が１０．８Ｈｚ異なることになる。
【００６８】
上記〔数式３〕〔数式４〕に従った処理を実行することにより、各音響フレームの各窓関数に対応する複素周波数成分が得られる。続いて、周波数成分変更手段３０が、生成された複素周波数成分から所定周波数範囲のスペクトル集合を抽出する。本実施形態では、Ｆ１以上Ｆ２以下の範囲のものを抽出する。
【００６９】
周波数変換手段２０は、周波数変換を実行した後に、各スペクトル集合の平均値が設定値になるように変換する。いわゆる振幅を変換する処理を行う。この振幅変換は、各フレームごとのレベル差を軽減し、適切な情報の埋め込みが可能になるようにすることを目的としているため、設定値Ｚｏとしては適宜設定することができる。
【００７０】
周波数変換手段２０は、得られたスペクトル集合に対して、振幅変換を行うにあたり、まず変換倍率の算出を行う。変換倍率の算出は、所定周波数範囲のスペクトル集合の実効強度値の平均である平均実効値で上記設定値を除算することにより行う。具体的には、ＬチャンネルのＡタイプの音響フレーム、Ｂタイプの音響フレーム、ＲチャンネルのＡタイプの音響フレーム、Ｂタイプの音響フレームのスペクトル集合についての変換倍率Ｚｌ（１）、Ｚｌ（２）、Ｚｒ（１）、Ｚｒ（２）は、以下の〔数式５〕に従った処理により算出される。対象音響フレームが無音に近く、分母の二乗総和値が所定の値に満たない場合は、変換倍率を１．０に設定し、振幅変換は行わないようにする。振幅変換が実行されることにより、全ての音響フレームは、元の状態における信号強度に関わらず、各音響フレームのスペクトル集合の平均実効値が設定値となるように振幅変換された状態で、情報の埋め込みが行われることになる。
【００７１】
〔数式５〕
Ｚｌ（１）＝Ｚｏ／［Σj=m,…,M-1｛Ａｌ（１，ｊ）2＋Ｂｌ（１，ｊ）2｝］1/2
Ｚｌ（２）＝Ｚｏ／［Σj=m,…,M-1｛Ａｌ（２，ｊ）2＋Ｂｌ（２，ｊ）2｝］1/2
Ｚｒ（１）＝Ｚｏ／［Σj=m,…,M-1｛Ａｒ（１，ｊ）2＋Ｂｒ（１，ｊ）2｝］1/2
Ｚｒ（２）＝Ｚｏ／［Σj=m,…,M-1｛Ａｒ（２，ｊ）2＋Ｂｒ（２，ｊ）2｝］1/2
【００７２】
上記〔数式５〕において、ｍおよびＭは変更対象周波数帯の下限および上限で、Ｚｏ＝Ｍ−ｍであり、本実施形態では、Ｍ＝３２０、ｍ＝３２、Ｚｏ＝２８８である。
【００７３】
さらに、ｊ＝ｍ，…，Ｍ−１（周波数Ｆ１，．．．，Ｆ２に相当）の範囲で、Ａｌ（１，ｊ）およびＢｌ（１，ｊ）の各々の要素に対してＺｌ（１）を乗じ、Ａｌ（２，ｊ）およびＢｌ（２，ｊ）の各々の要素に対してＺｌ（２）を乗じ、Ａｒ（１，ｊ）およびＢｒ（１，ｊ）の各々の要素に対してＺｒ（１）を乗じ、Ａｒ（２，ｊ）およびＢｒ（２，ｊ）の各々の要素に対してＺｒ（２）を乗じることにより、振幅変換を行う。以下説明において、Ａｌ（１，ｊ）、Ｂｌ（１，ｊ）、Ａｌ（２，ｊ）、Ｂｌ（２，ｊ）、Ａｒ（１，ｊ）、Ｂｒ（１，ｊ）、Ａｒ（２，ｊ）、Ｂｒ（２，ｊ）はこれらの振幅変換を行った値とする。
【００７４】
周波数成分変更手段３０は、Ａタイプの音響フレームについて、ビット配列作成手段７０が作成したビット配列に応じて、所定複素周波数成分の割合を変更する処理を行う。本発明では、ビット配列を１ビットずつ読み込み、Ａタイプ、Ｂタイプの１対の音響フレームに対して１ビットの情報を埋め込む。埋め込まれる１ビットの値は、“０” “１”の２通りがある。本実施形態では、これらを値１、値２と定義する。２種類の符号を埋め込むことができるという点で、これらを符号１、符号２と表現することも可能である。この際、“０”“１”の２通りのうち、いずれを値１、値２（符号１、符号２）と定義しても良い。抽出側において、埋め込み側で埋め込まれた１ビットが特定できれば良いためである。したがって、この定義は、埋め込み側と抽出側で一致している必要がある。
【００７５】
具体的には、埋め込み装置で、音響信号から抽出した所定数のサンプルで構成される音響フレーム内の所定複素周波数範囲の複素周波数成分を変更するに際し、その強弱が音脈分凝を発生させるような状態に変更する。これにより、人間には、音が途切れたようには聞こえないが、抽出装置では、その明確な変化を認識することができる。
【００７６】
本実施形態では、音脈分凝の原理を利用して、音響フレームの変更対象周波数帯の成分を２つの状態に変更し、１ビットの情報を埋め込むようにしている。ここで、埋め込み処理の前後における音響フレームの所定複素周波数成分の変化の状態について説明する。図３に、本実施形態によるＡタイプ、ＢタイプのＬチャンネル１音響フレームの所定複素周波数成分の状態を示す。Ｒチャンネルについては、Ｌチャンネルと同様であるので省略してある。図３に示す各音響フレームにおいて、横軸は時間方向、縦軸は周波数方向を示している。
【００７７】
図３においては、縦軸の周波数方向において、周波数領域が６つに区分されているが、上から２番目〜５番目の領域、すなわち、周波数Ｆ１以上Ｆ２以下の間が変更対象周波数帯であり、最上部すなわち周波数Ｆ２超、最下部すなわちＦ１未満は、変更対象でない周波数帯である。すなわち、本実施形態では、周波数Ｆ１以上Ｆ２以下を所定周波数範囲として、スペクトル集合の強度を変更することになる。図３（ａ）に示すように、Ａタイプ音響フレームの変更対象周波数帯については、周波数が低い順に、そのスペクトル集合を１Ｄ１、１Ｄ２、１Ｕ１、１Ｕ２で表現することとする。また、図３（ｂ）に示すように、Ｂタイプ音響フレームの変更対象周波数帯については、周波数が低い順に、そのスペクトル集合を２Ｄ１、２Ｄ２、２Ｕ１、２Ｕ２で表現することとする。
【００７８】
１ビット埋め込み方式で、符号１を埋め込む場合、図３（ｃ）（ｅ）に示すように、１Ｄ１と２Ｄ２の強度の積、１Ｕ１と２Ｕ２の強度の積を相対的に強い状態に変更し、１Ｄ２と２Ｄ１の強度の積、１Ｕ２と２Ｕ１の強度の積を相対的に弱い状態に変更する。この状態を“状態１”と呼ぶことにする。符号２を埋め込む場合は、図３（ｄ）（ｆ）に示すように、１Ｄ２と２Ｄ１の強度の積、１Ｕ２と２Ｕ１の強度の積を相対的に強い状態に変更し、１Ｄ１と２Ｄ２の強度の積、１Ｕ１と２Ｕ２の強度の積を相対的に弱い状態に変更する。この状態を“状態２”と呼ぶことにする。網掛けされた部分の濃さは、同濃度のものは、積を求めるための組となるスペクトル集合であることを示している。網掛けの色が濃い方が相対的に強度が強い状態に変更される組を示している。
【００７９】
図３（ｃ）（ｅ）または（ｄ）（ｆ）に示すような２つの状態にＡタイプ、Ｂタイプの音響フレームの周波数成分を変更することにより、情報の埋め込みを行っている。２つの状態であるので１ビット分の情報量に相当する。図３（ｃ）〜（ｆ）に示したように、変更対象周波数帯の上位周波数帯と下位周波数帯が全く同一のパターンとなっている。
【００８０】
本実施形態では、上記変更対象周波数帯Ｆ１〜Ｆ２を、“０．３４ｋＨｚ〜３．４ｋＨｚ”に設定する。これは、以下のような理由による。すなわち、音声通信として普及度の高い携帯電話機を受信端末として利用する場合、上限については、電話回線帯域および携帯電話機の上限である３．４ｋＨｚとする必要がある。これは、携帯電話機の内部に搭載されているローパスフィルターが、電話交換機に合わせて、３．４ｋＨｚ以下に対応したものとなっているためである。また、上位周波数帯の下限については、上限の３．４ｋＨｚから１オクターブ下がった１．７ｋＨｚとすることとした。そして、下位周波数帯の上限を上位周波数帯の下限と同じく、１．７ｋＨｚとし、下位周波数帯の下限については、電話回線帯域および携帯電話機の下限である０．３ｋＨｚ以上とする必要がある。これは、携帯電話機の内部に搭載されているハイパスフィルターが、電話交換機に合わせて、０．３ｋＨｚ以上に対応したものとなっているためである。そこで、上限の１．７ｋＨｚから２オクターブ強下がった０．３４ｋＨｚとすることとした。下位周波数帯の周波数範囲は、上位周波数帯の周波数範囲に比べ若干狭くなるが、分布している信号成分の強度は平均４倍程度になるため、上位周波数帯より下位周波数帯の方が大きな感度を持つと推定できる。なお、“０．３４ｋＨｚ”“１．７ｋＨｚ”“３．４ｋＨｚ”という値は、代表的な値であり、必ずしも正確な値である必要はなく、そこから若干ずれた値であっても良い。
【００８１】
図３に示した例では、相対的に強い状態と弱い状態に変更することについて説明したが、この強弱の程度については、状況に応じて設定することが可能である。両者の割合は、以下に述べるように、大きいほど抽出時の精度が高くなるが、補間される割合は不完全になり、再生時に不連続成分によるノイズが聞こえる。一方、両者の割合が均等であるほど再生品質は原音に近付くが、埋め込んだビットの抽出ができなくなり、再生品質と抽出精度はトレードオフの関係になる。例えば、強い方を１００％、弱い方を０％とした場合、音脈分凝により、補間される部分の音は図３のような変更を行なう前に原音響信号で鳴っていた音の５０％程度となることが確認されている。そこで、強い方を７０％、弱い方を３０％とした場合、音脈分凝により、補間される部分の音は図３のような変更を行なう前に原音響信号で鳴っていた音とほぼ同程度となり、この割合が抽出精度を維持できる限界であることが確認されている。このため、相対的に強いスペクトル集合と、相対的に弱いスペクトル集合の強度の割合を７０％と３０％とすることを目標に設定することが好ましい。これを実現するため、本実施形態では、後述する具体的な処理において、強い状態を設定するための係数α＝０．７、弱い状態を設定するための係数β＝０．３とする。ただし、強い状態に変更すべきスペクトル集合の強度が元々小さい場合には、係数α、βを補正する必要が生じる。このため、周波数成分変更手段３０は、まず、以下の〔数式６〕に従った処理を実行することにより、各スペクトル集合の強度Ｅ1D1、Ｅ2D1、Ｅ1D2、Ｅ2D2、Ｅ1U1、Ｅ2U1、Ｅ1U2、Ｅ2U2を算出する。
【００８２】
〔数式６〕
Ｅ1D1＝Σj=m,…,m+G-1｛Ａｌ（１，ｊ）2＋Ｂｌ（１，ｊ）2｝
Ｅ2D1＝Σj=m,…,m+G-1｛Ａｌ（２，ｊ）2＋Ｂｌ（２，ｊ）2｝
Ｅ1D2＝Σj=m+G,…,m+2G-1｛Ａｌ（１，ｊ）2＋Ｂｌ（１，ｊ）2｝
Ｅ2D2＝Σj=m+G,…,m+2G-1｛Ａｌ（２，ｊ）2＋Ｂｌ（２，ｊ）2｝
Ｅ1U1＝Σj=2m,…,2m+2G-1｛Ａｌ（１，ｊ）2＋Ｂｌ（１，ｊ）2｝
Ｅ2U1＝Σj=2m,…,2m+2G-1｛Ａｌ（２，ｊ）2＋Ｂｌ（２，ｊ）2｝
Ｅ1U2＝Σj=2m+2G,…,2m+4G-1｛Ａｌ（１，ｊ）2＋Ｂｌ（１，ｊ）2｝
Ｅ2U2＝Σj=2m+2G,…,2m+4G-1｛Ａｌ（２，ｊ）2＋Ｂｌ（２，ｊ）2｝
【００８３】
上記〔数式６〕において、ｍは変更対象周波数帯の下限の複素周波数成分の番号、Ｇは変更対象周波数帯内の下位周波数帯の２分割領域の幅で、２ｍ＋４Ｇは変更対象周波数帯の上限の複素周波数成分の番号である。例えば、変更対象周波数帯として、０．３４ｋＨｚ〜３．４ｋＨｚを設定する場合、ｍ＝３２、２ｍ＋４Ｇ＝３２０（＝Ｍ）となる。したがって、下位周波数帯の２分割領域の幅Ｇ（＝（Ｍ−２ｍ）／４）＝６４で、上位周波数帯の２分割領域の幅２Ｇ＝１２８である。
【００８４】
さらに、周波数成分変更手段３０は、算出された各スペクトル集合の強度を利用して、弱い状態に変更すべきスペクトル集合に対する強い状態に変更すべきスペクトル集合の強度割合γを算出する。以下の〔数式７〕に従って強度割合γを算出する。
【００８５】
〔数式７〕
γ＝（Ｅ1D1・Ｅ1U1・Ｅ2D2・Ｅ2U2）／（Ｅ1D2・Ｅ1U2・Ｅ2D1・Ｅ2U1）
【００８６】
さらに強度割合γの値に応じて、周波数成分変更手段３０は、以下の〔数式８〕に従った処理を実行することにより、係数α、βを補正して係数α´、β´を得る。
【００８７】
〔数式８〕
０．０１≦γ＜１．０の場合、α´＝α・γ-1/4、β´＝β・γ1/4
γ＜０．０１の場合、α´＝１０．０・α、β´＝０．１・β
γ≧１．０の場合、補正を行わない。
【００８８】
さらに、周波数成分変更手段３０は、連続するＡタイプ音響フレーム、Ｂタイプ音響フレームにおける実部Ａｌ（１，ｊ）、Ａｒ（１，ｊ）、Ａｌ（２，ｊ）、Ａｒ（２，ｊ）、Ｂｌ（１，ｊ）、Ｂｒ（１，ｊ）、Ｂｌ（２，ｊ）、Ｂｒ（２，ｊ）に対して、周波数領域パラメータとして、下限ｍ（＝３２）から上限Ｍ（＝３２０）を設定し、ｍからＭ／２を幅Ｇ（＝（Ｍ−２ｍ）／４）をもつ２個の領域に分割し、２ｍからＭを幅２Ｇをもつ２個の領域に分割し、埋め込むべきビット値に応じて、各々改変を加える。一例として、１音響フレームに埋め込むべきビット値が “値１”である場合、以下の〔数式９〕に従った処理を実行することにより、周波数成分の状態を“状態１”、すなわち、図３（ｃ）（ｅ）に示したような状態に変更する。
【００８９】
〔数式９〕
ｊ＝ｍ〜ｍ＋Ｇ−１の各成分に対して
Ｅ（１，ｊ）＝｛Ａｌ（１，ｊ）2＋Ｂｌ（１，ｊ）2＋Ａｒ（１，ｊ）2＋Ｂｒ（１，ｊ）2｝1/2
Ａｌ´（１，ｊ）＝Ａｌ（１，ｊ）・Ｅ（１，ｊ）・α／｛Ａｌ（１，ｊ）2＋Ｂｌ（１，ｊ）2｝1/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｝1/2
Ｂｒ´（２，ｊ）＝Ｂｒ（２，ｊ）・Ｅ（２，ｊ）・β／｛Ａｒ（２，ｊ）2＋Ｂｒ（２，ｊ）2｝1/2
ｊ＝ｍ＋Ｇ〜ｍ＋２Ｇ−１の各成分に対して
Ｅ（１，ｊ）＝｛Ａｌ（１，ｊ）2＋Ｂｌ（１，ｊ）2＋Ａｒ（１，ｊ）2＋Ｂｒ（１，ｊ）2｝1/2
Ａｌ´（１，ｊ）＝Ａｌ（１，ｊ）・Ｅ（１，ｊ）・β／｛Ａｌ（１，ｊ）2＋Ｂｌ（１，ｊ）2｝1/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｝1/2
Ｂｒ´（２，ｊ）＝Ｂｒ（２，ｊ）・Ｅ（２，ｊ）・α／｛Ａｒ（２，ｊ）2＋Ｂｒ（２，ｊ）2｝1/2
ｊ＝２ｍ〜２ｍ＋２Ｇ−１の各成分に対して
Ｅ（１，ｊ）＝｛Ａｌ（１，ｊ）2＋Ｂｌ（１，ｊ）2＋Ａｒ（１，ｊ）2＋Ｂｒ（１，ｊ）2｝1/2
Ａｌ´（１，ｊ）＝Ａｌ（１，ｊ）・Ｅ（１，ｊ）・α／｛Ａｌ（１，ｊ）2＋Ｂｌ（１，ｊ）2｝1/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｝1/2
Ｂｒ´（２，ｊ）＝Ｂｒ（２，ｊ）・Ｅ（２，ｊ）・β／｛Ａｒ（２，ｊ）2＋Ｂｒ（２，ｊ）2｝1/2
ｊ＝２ｍ＋２Ｇ〜Ｍ−１の各成分に対して
Ｅ（１，ｊ）＝｛Ａｌ（１，ｊ）2＋Ｂｌ（１，ｊ）2＋Ａｒ（１，ｊ）2＋Ｂｒ（１，ｊ）2｝1/2
Ａｌ´（１，ｊ）＝Ａｌ（１，ｊ）・Ｅ（１，ｊ）・β／｛Ａｌ（１，ｊ）2＋Ｂｌ（１，ｊ）2｝1/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｝1/2
Ｂｒ´（２，ｊ）＝Ｂｒ（２，ｊ）・Ｅ（２，ｊ）・α／｛Ａｒ（２，ｊ）2＋Ｂｒ（２，ｊ）2｝1/2
【００９０】
１音響フレームに１ビット埋め込む方式であるため、スペクトル集合単位の強弱パターンは、高周波側と低周波側で同一となる。
【００９１】
なお、上記〔数式８〕に従った処理を実行して係数α´、β´、を得た場合は、上記〔数式９〕において、係数α、β、に代えて係数α´、β´を用いる。
【００９２】
次に、位相補正手段３１が、上記成分が変更された低周波成分に対して位相の補正を行う。補正の対象は、周波数成分変更手段３０によりその強度を小さく変更された低周波成分とする。ある音響フレームの低周波成分について位相補正を行うためには、直前の音響フレームにおける変更処理後の低周波成分を利用する。したがって、位相補正手段３１が位相変更の処理を行う際には、周波数成分変更手段３０による変更処理後の低周波成分を一時的にメモリに保持しておく。
【００９３】
具体的な処理としては、位相補正手段３１は、周波数成分変更手段３０により、係数βを用いて変更が行われているＢタイプ音響フレームの低周波成分（ｊ＝ｍ，・・・，Ｍ−１の各周波数成分）に対して、位相補正手段３１が、以下の〔数式１０〕に従った処理を実行することにより、低周波成分の位相を補正する。
【００９４】
〔数式１０〕
Ｅｌ´（１，ｊ）＝｛Ａｌ´（１，ｊ）2＋Ｂｌ´（１，ｊ）2｝1/2
Ｅｌ´（２，ｊ）＝｛Ａｌ´（２，ｊ）2＋Ｂｌ´（２，ｊ）2｝1/2
Ｅｒ´（１，ｊ）＝｛Ａｒ´（１，ｊ）2＋Ｂｒ´（１，ｊ）2｝1/2
Ｅｒ´（２，ｊ）＝｛Ａｒ´（２，ｊ）2＋Ｂｒ´（２，ｊ）2｝1/2
直前フレーム成分と０度の方向の近傍に補正する場合、
Ａｌ´（２，ｊ）←（１．０−ｗ）・Ａｌ´（２，ｊ）＋ｗ・Ａｌ´（１，ｊ）・Ｅｌ´（２，ｊ）／Ｅｌ´（１，ｊ）
Ｂｌ´（２，ｊ）←（１．０−ｗ）・Ｂｌ´（２，ｊ）＋ｗ・Ｂｌ´（１，ｊ）・Ｅｌ´（２，ｊ）／Ｅｌ´（１，ｊ）
Ａｒ´（２，ｊ）←（１．０−ｗ）・Ａｒ´（２，ｊ）＋ｗ・Ａｒ´（１，ｊ）・Ｅｒ´（２，ｊ）／Ｅｒ´（１，ｊ）
Ｂｒ´（２，ｊ）←（１．０−ｗ）・Ｂｒ´（２，ｊ）＋ｗ・Ｂｒ´（１，ｊ）・Ｅｒ´（２，ｊ）／Ｅｒ´（１，ｊ）
直前フレーム成分と９０度の方向の近傍に補正する場合、
Ａｌ´（２，ｊ）←（１．０−ｗ）・Ａｌ´（２，ｊ）−ｗ・Ａｌ´（１，ｊ）・Ｅｌ´（２，ｊ）／Ｅｌ´（１，ｊ）
Ｂｌ´（２，ｊ）←（１．０−ｗ）・Ｂｌ´（２，ｊ）＋ｗ・Ｂｌ´（１，ｊ）・Ｅｌ´（２，ｊ）／Ｅｌ´（１，ｊ）
Ａｒ´（２，ｊ）←（１．０−ｗ）・Ａｒ´（２，ｊ）−ｗ・Ａｒ´（１，ｊ）・Ｅｒ´（２，ｊ）／Ｅｒ´（１，ｊ）
Ｂｒ´（２，ｊ）←（１．０−ｗ）・Ｂｒ´（２，ｊ）＋ｗ・Ｂｒ´（１，ｊ）・Ｅｒ´（２，ｊ）／Ｅｒ´（１，ｊ）
直前フレーム成分と１８０度の方向の近傍に補正する場合、
Ａｌ´（２，ｊ）←（１．０−ｗ）・Ａｌ´（２，ｊ）−ｗ・Ａｌ´（１，ｊ）・Ｅｌ´（２，ｊ）／Ｅｌ´（１，ｊ）
Ｂｌ´（２，ｊ）←（１．０−ｗ）・Ｂｌ´（２，ｊ）−ｗ・Ｂｌ´（１，ｊ）・Ｅｌ´（２，ｊ）／Ｅｌ´（１，ｊ）
Ａｒ´（２，ｊ）←（１．０−ｗ）・Ａｒ´（２，ｊ）−ｗ・Ａｒ´（１，ｊ）・Ｅｒ´（２，ｊ）／Ｅｒ´（１，ｊ）
Ｂｒ´（２，ｊ）←（１．０−ｗ）・Ｂｒ´（２，ｊ）−ｗ・Ｂｒ´（１，ｊ）・Ｅｒ´（２，ｊ）／Ｅｒ´（１，ｊ）
直前フレーム成分と２７０度の方向の近傍に補正する場合、
Ａｌ´（２，ｊ）←（１．０−ｗ）・Ａｌ´（２，ｊ）＋ｗ・Ａｌ´（１，ｊ）・Ｅｌ´（２，ｊ）／Ｅｌ´（１，ｊ）
Ｂｌ´（２，ｊ）←（１．０−ｗ）・Ｂｌ´（２，ｊ）−ｗ・Ｂｌ´（１，ｊ）・Ｅｌ´（２，ｊ）／Ｅｌ´（１，ｊ）
Ａｒ´（２，ｊ）←（１．０−ｗ）・Ａｒ´（２，ｊ）＋ｗ・Ａｒ´（１，ｊ）・Ｅｒ´（２，ｊ）／Ｅｒ´（１，ｊ）
Ｂｒ´（２，ｊ）←（１．０−ｗ）・Ｂｒ´（２，ｊ）−ｗ・Ｂｒ´（１，ｊ）・Ｅｒ´（２，ｊ）／Ｅｒ´（１，ｊ）
さらに、上記改変により各ベクトル成分のノルムが改変前と等しくなるように以下の式で補正を行う。
Ａｌ´（２，ｊ）←Ａｌ´（２，ｊ）・Ｅｌ´（２，ｊ）／｛Ａｌ´（２，ｊ）2＋Ｂｌ´（２，ｊ）2｝1/2
Ｂｌ´（２，ｊ）←Ｂｌ´（２，ｊ）・Ｅｌ´（２，ｊ）／｛Ａｌ´（２，ｊ）2＋Ｂｌ´（２，ｊ）2｝1/2
Ａｒ´（２，ｊ）←Ａｒ´（２，ｊ）・Ｅｒ´（２，ｊ）／｛Ａｒ´（２，ｊ）2＋Ｂｒ´（２，ｊ）2｝1/2
Ｂｒ´（２，ｊ）←Ｂｒ´（２，ｊ）・Ｅｒ´（２，ｊ）／｛Ａｒ´（２，ｊ）2＋Ｂｒ´（２，ｊ）2｝1/2
【００９５】
上記〔数式１０〕において、ｗは対象フレーム成分の補正方向の基準とする既知の直前フレーム成分の方向と対象フレーム成分の補正方向の目標とする未知の合成直前フレームの逆位相方向との位相差を補正するための係数である。例えば、図２５で既知の直前フレーム成分と未知の直前フレーム成分０°近傍（＝合成直前フレームの逆位相方向）との位相差を補正するための値で、前記位相差が未知数であるが、残響特性に応じて経験的に与える定数である。係数ｗは０．０以上１．０以下の実数であり、使用する残響特性に応じて設定するが、残響補正効果のある値としては、経験上、０．２前後と０．８前後に設定する場合が多く、更に両者の間では後者の方が多い。なお、本実施形態ではｗ＝０．８としている。この係数ｗが最小値０．０の場合、全く位相補正を行わないことを意味し、ｗが最大値１．０の場合、直前の音響フレームの対応する成分と設定された角度（０度、９０度、１８０度、２７０度のいずれか）に補正することを意味する。例えば、図２５（ｂ）で対象フレーム成分を直前フレーム成分の方向に双方の角度差の８０％程度の方向に補正することを意味する。また、上記〔数式１０〕において、Ｅｌ´（１，ｊ）、Ｅｌ´（２，ｊ）、Ｅｒ´（１，ｊ）、Ｅｒ´（２，ｊ）を求めた後は事前の設定に従って、０度、９０度、１８０度、２７０度の場合のいずれか１つを実行する。０度、９０度、１８０度、２７０度のいずれを設定するかは、抽出装置が設置された室内の状態を考慮して、管理者が手動で設定する。例えば、０度が設定された場合、位相補正手段３１は、〔数式１０〕の「直前フレーム成分と０度の方向の近傍に補正する場合」と記載されている以下４式と「さらに、上記改変により各ベクトル成分のノルムが改変前と等しくなるように以下の式で補正を行う。」と記載されている以下４式に従った処理を実行することにより、直前のＡタイプ音響フレームを利用して、Ｂタイプ音響フレームの低周波成分に対して、図２５（ｂ）に示したような位相補正を行っていることになる。また、〔数式１０〕において得られるＡｌ´（２，ｊ）、Ａｒ´（２，ｊ）、Ｂｌ´（２，ｊ）、Ｂｒ´（２，ｊ）は、メモリに保存され、後続の音響フレームの処理において、それぞれＡｌ´（０，ｊ）、Ａｒ´（０，ｊ）、Ｂｌ´（０，ｊ）、Ｂｒ´（０，ｊ）としても用いられる。
【００９６】
また、周波数成分変更手段３０により、係数βを用いて変更が行われているＡタイプ音響フレームの低周波成分に対しては、位相補正手段３１は、以下の〔数式１１〕に従った処理を実行することにより、低周波成分の位相を変更する。
【００９７】
〔数式１１〕
Ｅｌ´（０，ｊ）＝｛Ａｌ´（０，ｊ）2＋Ｂｌ´（０，ｊ）2｝1/2
Ｅｌ´（１，ｊ）＝｛Ａｌ´（１，ｊ）2＋Ｂｌ´（１，ｊ）2｝1/2
Ｅｒ´（０，ｊ）＝｛Ａｒ´（０，ｊ）2＋Ｂｒ´（０，ｊ）2｝1/2
Ｅｒ´（１，ｊ）＝｛Ａｒ´（１，ｊ）2＋Ｂｒ´（１，ｊ）2｝1/2
直前フレーム成分と０度の方向の近傍に補正する場合、
Ａｌ´（１，ｊ）←（１．０−ｗ）・Ａｌ´（１，ｊ）＋ｗ・Ａｌ´（０，ｊ）・Ｅｌ´（１，ｊ）／Ｅｌ´（０，ｊ）
Ｂｌ´（１，ｊ）←（１．０−ｗ）・Ｂｌ´（１，ｊ）＋ｗ・Ｂｌ´（０，ｊ）・Ｅｌ´（１，ｊ）／Ｅｌ´（０，ｊ）
Ａｒ´（１，ｊ）←（１．０−ｗ）・Ａｒ´（１，ｊ）＋ｗ・Ａｒ´（０，ｊ）・Ｅｒ´（１，ｊ）／Ｅｒ´（０，ｊ）
Ｂｒ´（１，ｊ）←（１．０−ｗ）・Ｂｒ´（１，ｊ）＋ｗ・Ｂｒ´（０，ｊ）・直前フレーム成分と９０度の方向の近傍に補正する場合、
Ａｌ´（１，ｊ）←（１．０−ｗ）・Ａｌ´（１，ｊ）−ｗ・Ａｌ´（０，ｊ）・Ｅｌ´（１，ｊ）／Ｅｌ´（０，ｊ）
Ｂｌ´（１，ｊ）←（１．０−ｗ）・Ｂｌ´（１，ｊ）＋ｗ・Ｂｌ´（０，ｊ）・Ｅｌ´（１，ｊ）／Ｅｌ´（０，ｊ）
Ａｒ´（１，ｊ）←（１．０−ｗ）・Ａｒ´（１，ｊ）−ｗ・Ａｒ´（０，ｊ）・Ｅｒ´（１，ｊ）／Ｅｒ´（０，ｊ）
Ｂｒ´（１，ｊ）←（１．０−ｗ）・Ｂｒ´（１，ｊ）＋ｗ・Ｂｒ´（０，ｊ）・Ｅｒ´（１，ｊ）／Ｅｒ´（０，ｊ）
直前フレーム成分と１８０度の方向の近傍に補正する場合、
Ａｌ´（１，ｊ）←（１．０−ｗ）・Ａｌ´（１，ｊ）−ｗ・Ａｌ´（０，ｊ）・Ｅｌ´（１，ｊ）／Ｅｌ´（０，ｊ）
Ｂｌ´（１，ｊ）←（１．０−ｗ）・Ｂｌ´（１，ｊ）−ｗ・Ｂｌ´（０，ｊ）・Ｅｌ´（１，ｊ）／Ｅｌ´（０，ｊ）
Ａｒ´（１，ｊ）←（１．０−ｗ）・Ａｒ´（１，ｊ）−ｗ・Ａｒ´（０，ｊ）・Ｅｒ´（１，ｊ）／Ｅｒ´（０，ｊ）
Ｂｒ´（１，ｊ）←（１．０−ｗ）・Ｂｒ´（１，ｊ）−ｗ・Ｂｒ´（０，ｊ）・Ｅｒ´（１，ｊ）／Ｅｒ´（０，ｊ）
直前フレーム成分と２７０度の方向の近傍に補正する場合、
Ａｌ´（１，ｊ）←（１．０−ｗ）・Ａｌ´（１，ｊ）＋ｗ・Ａｌ´（０，ｊ）・Ｅｌ´（１，ｊ）／Ｅｌ´（０，ｊ）
Ｂｌ´（１，ｊ）←（１．０−ｗ）・Ｂｌ´（１，ｊ）−ｗ・Ｂｌ´（０，ｊ）・Ｅｌ´（１，ｊ）／Ｅｌ´（０，ｊ）
Ａｒ´（１，ｊ）←（１．０−ｗ）・Ａｒ´（１，ｊ）＋ｗ・Ａｒ´（０，ｊ）・Ｅｒ´（１，ｊ）／Ｅｒ´（０，ｊ）
Ｂｒ´（１，ｊ）←（１．０−ｗ）・Ｂｒ´（１，ｊ）−ｗ・Ｂｒ´（０，ｊ）・Ｅｒ´（１，ｊ）／Ｅｒ´（０，ｊ）
さらに、上記改変により各ベクトル成分のノルムが改変前と等しくなるように以下の式で補正を行う。
Ａｌ´（１，ｊ）←Ａｌ´（１，ｊ）・Ｅｌ´（１，ｊ）／｛Ａｌ´（１，ｊ）2＋Ｂｌ´（１，ｊ）2｝1/2
Ｂｌ´（１，ｊ）←Ｂｌ´（１，ｊ）・Ｅｌ´（１，ｊ）／｛Ａｌ´（１，ｊ）2＋Ｂｌ´（１，ｊ）2｝1/2
Ａｒ´（１，ｊ）←Ａｒ´（１，ｊ）・Ｅｒ´（１，ｊ）／｛Ａｒ´（１，ｊ）2＋Ｂｒ´（１，ｊ）2｝1/2
Ｂｒ´（１，ｊ）←Ｂｒ´（１，ｊ）・Ｅｒ´（１，ｊ）／｛Ａｒ´（１，ｊ）2＋Ｂｒ´（１，ｊ）2｝1/2
【００９８】
上記〔数式１１〕において、Ａｌ´（０，ｊ）、Ａｒ´（０，ｊ）は直前のＢタイプ音響フレームにおける位相補正後の周波数成分の実部を示し、Ｂｌ´（０，ｊ）、Ｂｒ´（０，ｊ）は直前のＢタイプ音響フレームにおける位相補正後の周波数成分の虚部を示している。
【００９９】
周波数逆変換手段４０は、上記のようにして、周波数成分の位相が補正された複素周波数成分に対して周波数逆変換して実数次元の改変音響フレームを得る処理を行う。この周波数逆変換は、当然のことながら、周波数変換手段２０が実行した手法に対応していることが必要となる。本実施形態では、周波数変換手段２０において、フーリエ変換を施しているため、周波数逆変換手段４０は、フーリエ逆変換を実行することになる。また、周波数変換手段２０において微分処理を実行している場合には、積分処理を実行することになる。
【０１００】
具体的には、積分処理を実行する場合、Ａタイプの音響フレームに対しては、周波数逆変換手段４０は、上記〔数式９〕により得られた複素周波数成分の左チャンネルの実部Ａｌ´（１，ｊ）、虚部Ｂｌ´（１，ｊ）、右チャンネルの実部Ａｒ´（１，ｊ）、虚部Ｂｒ´（１，ｊ）を用いて、以下の〔数式１２〕に従った処理を行い、Ｘｌ´（ｉ）、Ｘｒ´（ｉ）を算出する。なお、上記〔数式９〕において改変されていない周波数成分については、Ａｌ´（１，ｊ）等として、元の周波数成分であるＡｌ（１，ｊ）等を用いる。周波数逆変換を計算するにあたり、Ａｌ´（１，ｊ）およびＢｌ´（１，ｊ）に対しては〔数式５〕におけるＺｌ（１）を、Ａｒ´（１，ｊ）およびＢｒ´（１，ｊ）に対しては〔数式５〕におけるＺｒ（１）を除することにより、同時に振幅逆変換を施す必要がある。積分処理を実行する場合、直前に決定した配列成分Ｘｌ´（ｉ−１）を加算する。配列の初期値は０とし、Ｎ−１番目は、０番目からＮ−２番目の総和となるようにする。
【０１０１】
〔数式１２〕
Ｘｌ´（０）＝Ｘｒ´（０）＝０
ｉ＝１，・・・，Ｎ−１において
Ｘｌ´（ｉ）＝１／Ｎ・｛ΣjＡｌ´（１，ｊ）・ｃｏｓ（２πｉｊ／Ｎ）／Ｚｌ（１）−ΣjＢｌ´（１，ｊ）・ｓｉｎ（２πｉｊ／Ｎ）／Ｚｌ（１）｝＋Ｘｌ´（ｉ−１）
Ｘｒ´（ｉ）＝１／Ｎ・｛ΣjＡｒ´（１，ｊ）・ｃｏｓ（２πｉｊ／Ｎ）／Ｚｒ（１）−ΣjＢｒ´（１，ｊ）・ｓｉｎ（２πｉｊ／Ｎ）／Ｚｒ（１）｝＋Ｘｒ´（ｉ−１）
【０１０２】
上記〔数式１２〕においては、式が繁雑になるのを防ぐため、Σj=0,…,N-1をΣjとして示している。さらに、直前に改変された改変音響フレームと時間軸上Ｎ／２サンプル分重複することを考慮して以下の〔数式１３〕に従った処理を実行する。
【０１０３】
〔数式１３〕
ｉ＝０，・・・，Ｎ−１において
Ｘｌ´（ｉ）←Ｘｌ´（ｉ）＋Ｘｌｐ（ｉ＋Ｎ／２）
Ｘｒ´（ｉ）←Ｘｒ´（ｉ）＋Ｘｒｐ（ｉ＋Ｎ／２）
【０１０４】
上記〔数式１３〕における第１式の“＋Ｘｌｐ（ｉ＋Ｎ／２）”、第２式の“＋Ｘｒｐ（ｉ＋Ｎ／２）”の項は、直前に改変された改変音響フレームのデータＸｌｐ（ｉ）、Ｘｒｐ（ｉ）が存在する場合に、加算するためのものである。上記〔数式１２〕〔数式１３〕によりＡタイプの改変音響フレームの左チャンネルの各サンプルＸｌ´（ｉ）、右チャンネルの各サンプルＸｒ´（ｉ）、が得られることになる。
【０１０５】
積分処理を実行する場合、Ｂタイプの音響フレームに対しては、周波数逆変換手段４０は、上記〔数式９〕により得られた複素周波数成分の左チャンネルの実部Ａｌ´（２，ｊ）、虚部Ｂｌ´（２，ｊ）、右チャンネルの実部Ａｒ´（２，ｊ）、虚部Ｂｒ´（２，ｊ）を用いて、以下の〔数式１４〕に従った処理を行い、Ｘｌ´（ｉ＋Ｎ／２）、Ｘｒ´（ｉ＋Ｎ／２）を算出する。なお、上記〔数式９〕において改変されていない周波数成分については、以下の〔数式１４〕においてはＡｌ´（２，ｊ）、Ｂｌ´（２，ｊ）、Ａｒ´（２，ｊ）、Ｂｒ´（２，ｊ）として、元の値であるＡｌ（２，ｊ）、Ｂｌ（２，ｊ）、Ａｒ（２，ｊ）、Ｂｒ（２，ｊ）を用いる。周波数逆変換を計算するにあたり、Ａｌ´（２，ｊ）およびＢｌ´（２，ｊ）に対しては〔数式５〕におけるＺｌ（２）を、Ａｒ´（２，ｊ）およびＢｒ´（２，ｊ）に対しては〔数式５〕におけるＺｒ（２）を除することにより、同時に振幅逆変換を施す必要がある。積分処理を実行する場合、直前に決定した配列成分Ｘｌ´（ｉ−１＋Ｎ／２）を加算する。配列の初期値は０とし、Ｎ−１番目は、０番目からＮ−２番目の総和となるようにする。
【０１０６】
〔数式１４〕
Ｘｌ´（Ｎ／２）＝Ｘｒ´（Ｎ／２）＝０
ｉ＝１，・・・，Ｎ−１において
Ｘｌ´（ｉ＋Ｎ／２）＝１／Ｎ・｛ΣjＡｌ´（２，ｊ）・ｃｏｓ（２πｉｊ／Ｎ）／Ｚｌ（２）−ΣjＢｌ´（２，ｊ）・ｓｉｎ（２πｉｊ／Ｎ）／Ｚｌ（２）｝＋Ｘｌ´（ｉ−１＋Ｎ／２）
Ｘｒ´（ｉ＋Ｎ／２）＝１／Ｎ・｛ΣjＡｒ´（２，ｊ）・ｃｏｓ（２πｉｊ／Ｎ）／Ｚｒ（２）−ΣjＢｒ´（２，ｊ）・ｓｉｎ（２πｉｊ／Ｎ）／Ｚｒ（２）｝＋Ｘｒ´（ｉ−１＋Ｎ／２）
【０１０７】
さらに、直前に改変された改変音響フレームと時間軸上Ｎ／２サンプル分重複することを考慮して以下の〔数式１５〕に従った処理を実行する。
【０１０８】
〔数式１５〕
ｉ＝０，・・・，Ｎ−１において
Ｘｌ´（ｉ＋Ｎ／２）←Ｘｌ´（ｉ＋Ｎ／２）＋Ｘｌｐ（ｉ＋Ｎ）
Ｘｒ´（ｉ＋Ｎ／２）←Ｘｒ´（ｉ＋Ｎ／２）＋Ｘｒｐ（ｉ＋Ｎ）
【０１０９】
上記〔数式１５〕における第１式の“＋Ｘｌｐ（ｉ＋Ｎ）”、第２式の“＋Ｘｒｐ（ｉ＋Ｎ）”の項は、直前に改変された改変音響フレームのデータＸｌｐ（ｉ＋Ｎ／２）、Ｘｒｐ（ｉ＋Ｎ／２）が存在する場合に、加算するためのものである。上記〔数式１４〕〔数式１５〕によりＢタイプの改変音響フレームの左チャンネルの各サンプルＸｌ´（ｉ）、右チャンネルの各サンプルＸｒ´（ｉ）、が得られることになる。
【０１１０】
周波数変換手段２０において微分処理が実行されていない場合には、積分処理は実行されないため、Ａタイプの音響フレームに対しては、周波数逆変換手段４０は、以下の〔数式１６〕に従った処理を行い、Ｘｌ´（ｉ）、Ｘｒ´（ｉ）を算出する。なお、上記〔数式９〕において改変されていない周波数成分については、Ａｌ´（１，ｊ）等として、元の周波数成分であるＡｌ（１，ｊ）等を用いる。周波数逆変換を計算するにあたり、Ａｌ´（１，ｊ）およびＢｌ´（１，ｊ）に対しては〔数式５〕におけるＺｌ（１）を、Ａｒ´（１，ｊ）およびＢｒ´（１，ｊ）に対しては〔数式５〕におけるＺｒ（１）を除することにより、同時に振幅逆変換を施す必要がある。
【０１１１】
〔数式１６〕
Ｘｌ´（ｉ）＝１／Ｎ・｛ΣjＡｌ´（１，ｊ）・ｃｏｓ（２πｉｊ／Ｎ）／Ｚｌ（１）−ΣjＢｌ´（１，ｊ）・ｓｉｎ（２πｉｊ／Ｎ）／Ｚｌ（１）｝＋Ｘｌｐ（ｉ＋Ｎ／２）
Ｘｒ´（ｉ）＝１／Ｎ・｛ΣjＡｒ´（１，ｊ）・ｃｏｓ（２πｉｊ／Ｎ）／Ｚｒ（１）−ΣjＢｒ´（１，ｊ）・ｓｉｎ（２πｉｊ／Ｎ）／Ｚｒ（１）｝＋Ｘｒｐ（ｉ＋Ｎ／２）
【０１１２】
Ｂタイプの音響フレームに対しては、周波数逆変換手段４０は、以下の〔数式１７〕に従った処理を行い、Ｘｌ´（ｉ）、Ｘｒ´（ｉ）を算出する。なお、上記〔数式９〕において改変されていない周波数成分については、以下の〔数式１７〕においてはＡｌ´（２，ｊ）、Ｂｌ´（２，ｊ）、Ａｒ´（２，ｊ）、Ｂｒ´（２，ｊ）として、元の値であるＡｌ（２，ｊ）、Ｂｌ（２，ｊ）、Ａｒ（２，ｊ）、Ｂｒ（２，ｊ）を用いる。周波数逆変換を計算するにあたり、Ａｌ´（２，ｊ）およびＢｌ´（２，ｊ）に対しては〔数式５〕におけるＺｌ（２）を、Ａｒ´（２，ｊ）およびＢｒ´（２，ｊ）に対しては〔数式５〕におけるＺｒ（２）を除することにより、同時に振幅逆変換を施す必要がある。
【０１１３】
〔数式１７〕
Ｘｌ´（ｉ＋Ｎ／２）＝１／Ｎ・｛ΣjＡｌ´（２，ｊ）・ｃｏｓ（２πｉｊ／Ｎ）／Ｚｌ（２）−ΣjＢｌ´（２，ｊ）・ｓｉｎ（２πｉｊ／Ｎ）／Ｚｌ（２）｝＋Ｘｌｐ（ｉ＋Ｎ）
Ｘｒ´（ｉ＋Ｎ／２）＝１／Ｎ・｛ΣjＡｒ´（２，ｊ）・ｃｏｓ（２πｉｊ／Ｎ）／Ｚｒ（２）−ΣjＢｒ´（２，ｊ）・ｓｉｎ（２πｉｊ／Ｎ）／Ｚｒ（２）｝＋Ｘｒｐ（ｉ＋Ｎ）
【０１１４】
改変音響フレーム出力手段５０は、周波数逆変換手段４０の処理により得られたＡタイプの改変音響フレーム、Ｂタイプの改変音響フレームを順次出力ファイルに出力する。
【０１１５】
次に、図１に示した音響信号に対する情報の埋め込み装置の処理の全体的な流れについて説明する。まず、事前に図５に示すようなＮｗビットの基準符号とＮｈビットのハミング符号が対応付けられた符号変換テーブルを用意する。この符号変換テーブルは、各ハミング符号間のハミング距離が互いに３以上となるものであれば、どのように作成しても良い。本実施形態では、コンピュータに専用のプログラムを実行させることにより、コンピュータを変換テーブル作成装置として機能させることにより作成する。変換テーブル作成装置による符号変換テーブル作成のフローチャートを図４に示す。
【０１１６】
変換テーブル作成装置は、最初に初期化処理を行う（Ｓ６０１）。具体的には、８ビット基準符号“０”に１６ビット符号“１”を対応付けて符号変換テーブルのｉ（＝０）番目に登録するとともに、８ビット基準符号ＫＦの初期値を１、１６ビット符号ＨＦの初期値を２とする。続いて、ｉ＝０に初期設定する（Ｓ６０２）。次に、１６ビット符号ＨＦ及びそれの１５通りの巡回符号と、符号変換テーブルのｉ番目に既に登録されている他の１６ビット符号及びそれの１５通り巡回符号とのハミング距離を算出する（Ｓ６０３）。この段階で１６通り×１６通りで２５６通りのハミング距離が算出される。
【０１１７】
算出したハミング距離の少なくとも１つが３未満の場合、ＨＦの値を１増加して更新した後（Ｓ６０４）、Ｓ６０２に戻って、次の１６ビット符号ＨＦについての処理を行う。一方、算出したハミング距離が全て３以上の場合、ｉの値を１増加して更新する（Ｓ６０５）。そして、ｉがＫＦ−１未満である場合には、Ｓ６０３に戻って、符号変換テーブル内のｉ番目に登録されている１６ビット符号及びそれの１５通り巡回符号とのハミング距離を算出する。Ｓ６０５の後、ｉがＫＦ−１以上となった場合には、１６ビット符号ＨＦを符号変換テーブルの８ビット符号ＫＦの位置に登録するとともに、ＫＦ、ＨＦの値をそれぞれ１ずつ増加して更新する（Ｓ６０６）。そして、ＨＦが６５５３６未満である場合は、Ｓ６１２に戻って、次の８ビット符号ＫＦについての処理を行う。ＨＦが６５５３６以上である場合は、１６ビットの範囲で表現可能な全ての１６ビット符号ＨＦが登録されたことになるので、符号変換テーブル作成処理を終了する。なお、変換テーブル作成手段８０にて符号変換テーブル作成を行う場合も、変換テーブル作成装置と同様の処理を行う。
【０１１８】
このようにして図５に示した符号変換テーブルが作成される。作成された符号変換テーブルは、記憶手段６０に格納され、ビット配列作成手段７０により参照される。図５の符号変換テーブルは、巡回符号を考慮しないハミング符号との対応部分だけを抜き出したものである。この符号変換テーブルには、１６ビットのハミング符号が定義可能な０〜６５５３５の範囲内で、各々１６通りの巡回符号が互いにハミング距離３以上になるように、８ビットの基準符号を定義したもので、基準符号としては７ビットより若干多い０〜１３１の値が表現可能となっている。
【０１１９】
続いて、符号変換テーブル作成処理後の、埋め込み装置の処理を、図６のフローチャートに従って説明する。図１に示した装置を構成する各構成要素は、連携して図６に従った処理を実行する。図６は、付加情報１ワード分の処理に対応したものとなっている。１ワードのビット数Ｎｗとしては、任意のビット数に設定することができるが、上述のように、本実施形態では、ＡＳＣＩＩコードの実質記憶容量の８ビットに設定されている。
【０１２０】
図６においては、まず、ビット配列作成手段７０は、付加情報記憶部６２から抽出した付加情報の各ワードについて、記憶手段６０内の符号変換テーブルを参照し、対応するビット配列を作成する（Ｓ１０１）。具体的には、まず、付加情報記憶部６２から１ワード（８ビット）単位で抽出し、図５に示した符号変換テーブルを参照し、対応する巡回ハミング符号で構成される１６ビットのビット配列を抽出する。
【０１２１】
そして、この１６ビットが、音響信号に対する情報の埋め込み装置として用いられるコンピュータ内のレジスタに読み込まれることになる。このように、付加情報記憶部６２においては、１ワードは８ビットであるが、埋め込み処理時は、この１６ビットの配列で、付加情報内の１ワード分の処理を行う。
【０１２２】
次に、周波数成分変更手段３０が、レジスタに保持されたＮｈ（＝１６）ビットから１ビットを読み込む処理を行う（Ｓ１０２）。続いて、音響フレーム読込手段１０が、音響信号記憶部６１に記憶されたステレオ音響信号の左右の各チャンネルから、それぞれ所定数のサンプルをＡタイプの１音響フレームとして読み込み、周波数変換手段２０が周波数変換を行って、得られた複素周波数成分に対して振幅変換を行う（Ｓ１０３）。具体的には、まず、読み込んだ音響フレームに対して、微分処理を実行する。そして、周波数変換を行って、その音響フレームの複素周波数成分である複素周波数成分を得る。すなわち、各音響フレームについて、窓関数Ｗ（１，ｉ）を用いて、上記〔数式２〕に従った処理を行う。そして、上記〔数式５〕に従った処理を実行してＺｌ（１）、Ｚｒ（１）を算出し振幅変換を行う。同様に、音響フレーム読込手段１０が、音響信号記憶部６１に記憶されたステレオ音響信号の左右の各チャンネルから、それぞれ所定数のサンプルをＢタイプの１音響フレームとして読み込み、周波数変換手段２０が周波数変換を行って、得られた複素周波数成分に対して振幅変換を行う（Ｓ１０４）。具体的には、まず、読み込んだ音響フレームに対して、微分処理を実行する。そして、周波数変換を行って、その音響フレームの複素周波数成分を得る。すなわち、各音響フレームについて、窓関数Ｗ（２，ｉ）を用いて、上記〔数式３〕に従った処理を行う。そして、上記〔数式５〕に従った処理を実行してＺｌ（２）、Ｚｒ（２）を算出し振幅変換を行う。続いて、周波数成分変更手段３０が、読み込んだビット値に応じてＡタイプ音響フレームおよびＢタイプ音響フレームの周波数成分の状態を変更するにあたり、〔数式６〕〔数式８〕に従った処理を実行して変換割合α、βを決定する処理を行う（Ｓ１０５）。この決定された変換割合を用いて、周波数成分変更手段３０は、ビット配列作成手段７０から受け取った値１、値２に応じて上記〔数式９〕に従った処理を実行し、変更対象周波数帯の成分の状態を“状態１”、“状態２”に応じた状態のいずれかに変更する（Ｓ１０６）。
【０１２３】
次に、位相補正手段３１が、変更対象周波数帯の成分の位相補正を行う（Ｓ１０７）。具体的には、Ａタイプ音響フレームおよびＢタイプ音響フレームに対して、上記〔数式１０〕〔数式１１〕に従った処理を実行して各周波数成分の位相を補正することになる。
【０１２４】
次に、周波数逆変換手段４０が、上記Ｓ１０７の処理によりＡタイプの音響フレームに対応する各スペクトル集合の位相が補正された複素周波数成分を振幅逆変換、周波数逆変換して改変音響フレームを得る処理を行う（Ｓ１０８）。この振幅逆変換は〔数式５〕で算出したＺｌ（１）、Ｚｒ（１）の逆数を複素周波数成分に乗じることにより行ない、この周波数逆変換は、当然のことながら、周波数変換手段２０がＳ１０３において実行した手法に対応していることが必要となる。本実施形態では、周波数変換手段２０において、フーリエ逆変換を施しているため、周波数逆変換手段４０は、フーリエ逆変換を実行することになる。具体的には、上記〔数式１１〕により得られた複素周波数成分の左チャンネルの実部Ａｌ´（１，ｊ）、虚部Ｂｌ´（１，ｊ）、右チャンネルの実部Ａｒ´（１，ｊ）、虚部Ｂｒ´（１，ｊ）を用いて、上記〔数式１２〕〔数式１３〕（積分処理を行わない場合〔数式１６〕）に従った処理を行い、Ｘｌ´（ｉ）、Ｘｒ´（ｉ）を算出する。改変音響フレーム出力手段５０は、得られた改変音響フレームを順次出力ファイルに出力する。
【０１２５】
同様に、周波数逆変換手段４０が、上記Ｓ１０７の処理によりＢタイプの音響フレームに対応する各スペクトル集合の位相が補正された複素周波数成分を振幅逆変換、周波数逆変換して改変音響フレームを得る処理を行う（Ｓ１０９）。具体的には、振幅逆変換は〔数式５〕で算出したＺｌ（２）、Ｚｒ（２）の逆数を複素周波数成分に乗じることにより行ない、上記〔数式１０〕により得られた複素周波数成分の左チャンネルの実部Ａｌ´（２，ｊ）、虚部Ｂｌ´（２，ｊ）、右チャンネルの実部Ａｒ´（２，ｊ）、虚部Ｂｒ´（２，ｊ）を用いて、上記〔数式１４〕〔数式１５〕（微分処理、積分処理を行わない場合〔数式１７〕）に従った処理を行い、Ｘｌ´（ｉ）、Ｘｒ´（ｉ）を算出する。
【０１２６】
改変音響フレーム出力手段５０は、得られた改変音響フレームを順次出力ファイルに出力する。こうして各チャンネルについて、ＡタイプおよびＢタイプの２つの音響フレームに対する処理を終えたら、周波数成分変更手段３０がビット配列中の次の１ビットを読み込む（Ｓ１０２）。以上のような処理を音響信号の両チャンネルの全サンプルに渡って実行していく。すなわち、所定数のサンプルを音響フレームとして読み込み、音響信号から読み込むべき音響フレームがなくなったら（Ｓ１０３、Ｓ１０４）、処理を終了する。なお、Ｓ１０１において読み込んだ１ワード分のビット配列（Ｎｈ＝１６ビット）の各ビットに対応する処理を終えた場合、Ｓ１０２からＳ１０１に戻り、付加情報の次のワードを読み込んでビット配列を作成する処理を行うことになる。付加情報の全ワードに対して処理が終了した場合は、付加情報の先頭ワードに戻って処理を行う。この結果、全ての音響フレームに対して処理を行った全ての改変音響フレームが出力ファイルに記録されて、改変音響信号として得られる。得られた改変音響信号は、記憶手段６０内の改変音響信号記憶部６３に出力され、記憶される。
【０１２７】
なお、本実施形態では、付加情報を１ワード８ビットとし、符号変換テーブルにより１６ビットのビット配列に変換して、付加情報１ワード分の処理をする場合について説明したが、本発明では、抽出側と取り決めがある限り、付加情報の１ワードを他のビット数単位で記録することが可能である。
【０１２８】
上記のようにして得られた改変音響信号のうち、付加情報が埋め込まれている部分については、変更対象周波数帯の成分は、状態１、状態２の２通りの分布しかないことになる。しかし、変更対象周波数帯の成分以外については、元の音響信号のままであるので、制作者の設定に基づいた種々な分布になる。また、上記〔数式９〕の処理からも明らかなように、変更対象周波数帯の成分は、左チャンネルと右チャンネルにおいて同等の割合で変化させられている。したがって、両スピーカと等距離の位置においても、変更対象周波数帯の成分は、相殺されることなく増幅させる関係となり、情報を抽出し易くなる。
【０１２９】
以上、埋め込み装置について説明したが、ここで、本実施形態で行っている振幅変換を用いた埋め込みおよび抽出について、図７から図１０を用いて説明する。図７および図８は、比較のために、振幅変換を用いない場合の埋め込み処理および抽出処理を示し、図９および図１０は本実施形態における振幅変換を用いた埋め込み処理および抽出処理を示す。これらの説明図においては、音響フレーム奇数および偶数３対分について、３ビットの情報を埋め込むことを想定した音響信号の信号波形を示しており、説明の便宜上、音響フレームが互いに重複しない状態で示している。各図において、左端の波形は時間次元の通常の音響信号波形を示しており、横方向は時間軸であり、右に向かうに従って時間が進行し、縦方向は強度（振幅）である。中央または右端の波形は周波数変換後の所定の周波数範囲の複素周波数成分の合算値を信号波形で表現しており、仮想的にバンドパスフィルターを通した後の信号波形になっている。縦方向は同様に強度であり、本来は左端に比べ顕著に低くなるが、ここでは説明の都合上、左端と同程度に拡大して表現している。また、２種類の波形のレベルも本来は差があるが、ここでは同一レベルで表現している。実際には、周波数変換後のデータとして所定の周波数範囲外の高周波数成分や低周波数成分も存在するが、これらについては改変を加えないという前提で図示しておらず、図３に従った埋め込みを行なう２種の周波数帯域成分に限定して２種の信号波形で示している。
【０１３０】
図７（ａ）は原音響信号を示しており、最初の１対の音響フレームは全体に渡って強度がほぼ一定、中央の１対の音響フレームは奇数フレームの強度が小さく偶数フレームの強度が大きいものであり、最後の１対の音響フレームは奇数フレームの強度が大きく偶数フレームの強度が小さいものである。このような音響信号に対して、周波数変換を行った結果が図７（ｂ）で、図３で示されように埋め込み対象成分は上下２分割して成分変更を施す都合上、図７（ｂ）では（ｂ−１）および（ｂ−２）の２種の波形に分離して表現した。周波数変換後の波形形状は周波数ごとに異なり、図７（ａ）と必ずしも相似形にはならないが、ここでは周波数変換前と同様になると仮定して説明する。図７（ｂ−１）および（ｂ−２）に対して、［０，０，０］という３ビットのデータを図３で説明した方法に基づいて埋め込むことにより（図３ではビット０は符号１に相当する）、図７（ｃ−１）および（ｃ−２）が得られる。最初の１対は図３のようなパターンが表現できているが、残り２対の上下一方は、原段階に対して逆方向に大小関係を構築することが要求され、品質維持の都合上、適切なパターンが構築できていないことがわかる。このような改変を加えた結果に対して、周波数逆変換を行った結果が図７（ｄ）である。一般に音響信号波形の外形（エンベロープという）はエネルギー分布が大きい低周波成分で決定され、これらは本願では所定の周波数範囲外の信号成分に含まれ、図７（ｃ）の段階では改変が加えられていないため、周波数逆変換後の図７（ｄ）は周波数変換前の図７（ａ）と類似した形状になる。
【０１３１】
このような埋め込みを行なった結果に対して、抽出処理を行う様子を図８に示す。図８（ａ）および図８（ｂ）は各々図７（ｄ）および図７（ｃ）に対応する。図８（ｂ）において、ビット判定を行なうにあたり、最初の１対以外は図３で想定されているパターンが形成されていないため、正しいビットを判定することが難しくなる。
【０１３２】
次に、本実施形態における振幅変換を導入した手法について図９および図１０を用いて説明する。図９（ａ）は図７（ａ）と同じ原音響信号を示しており、同様に周波数変換を行った図９（ｂ）も図７（ｂ）と同じである。ここで、６つのフレーム単位に振幅変換を行った結果が図９（ｃ）である。図９の場合、図９（ａ）で各フレーム内の振幅が平坦であるため、図９（ｃ）では全体が平坦になっているが、実際には各フレーム内は微細に変動しており、そのフレーム内変動分は図９（ｃ）の段階でも踏襲されるため、本図のように完全に平坦になることは通常ない。（実際は図９（ｃ）は周波数次元のデータになるため、周波数次元のデータも平坦にならず変動した形態になる。）また、変換倍率はフレームごとに設定し、上下２つの周波数成分に対しては同一の倍率で変換を行うため、通常は上下で顕著な差が生じる（ただし、時間軸方向は比較的揃う）。これに対して、［０，０，０］という３ビットのデータを埋め込むと、図９（ｄ−１）および（ｄ−２）が得られる。原段階である図９（ｃ）が平坦な波形であるため、全てのフレームにおいて図３のような理想的なパターンが容易に構築できることがわかる。続いて、前記フレームごとに設定した倍率の逆数を乗じて振幅逆変換を行った結果が図９（ｅ）である。この段階では図７（ｃ）と類似したパターンが生じることが多いが、本形状はいかなるものでも構わない。最後に周波数逆変換を行うと、図９（ｆ）が得られ、同様に原信号波形の図９（ａ）と類似した形状になる。
【０１３３】
このような埋め込みを行なった結果に対して、抽出処理を行う様子を図１０に示す。図１０（ａ）、（ｂ）および（ｃ）は各々図９（ｆ）、（ｅ）および（ｄ）に対応する。図１０（ｂ）の周波数変換後の波形形状は図９（ｂ）とは基本的に異なるが、算出される振幅変換倍率は類似した値になり、ほぼ同様な倍率で振幅変換が行われ図１０（ｃ）が得られる。図１０（ｃ）の段階で、ビット判定を行なうと、全てのフレームにおいて図３のような理想的なパターンが形成されているため、正しいビットを判定することが可能になる。
【０１３４】
以上、振幅変換を導入した本実施形態では、図９（ｃ）に示したように、埋め込み対象の信号成分が時間軸方向に平坦になるように変換を行って埋め込むようにしているため、高周波側と低周波側の成分強度の大小関係が完全に逆になるような不自然な変更を行う確率が低くなり、品質を維持しながら、抽出側における抽出精度を高めることが可能となる。
【０１３５】
（３．１．抽出装置の構成）
次に、本発明に係る音響信号からの情報の抽出装置について説明する。図１１は、本発明に係る音響信号からの情報の抽出装置の一実施形態を示す構成図である。図１１において、１００は音響信号入力手段、１１０は基準フレーム獲得手段、１２０は時間軸シフトフレーム設定手段、１３０は周波数変換手段、１４０は符号判定パラメータ算出手段、１５０は符号出力手段、１６０は付加情報抽出手段、１７０は音響フレーム保持手段、１８０は変換テーブル作成手段である。
【０１３６】
音響信号入力手段１００は、流れている音声をデジタル音響信号として取得し、入力する機能を有している。現実には、マイクロフォンおよびＡ／Ｄ変換器により実現される。マイクロフォンとしては、変更対象周波数帯の成分が検出可能なものであれば、モノラル無指向性のものであっても、ステレオ指向性のものであっても使用可能である。ステレオ指向性のものであっても一方のチャンネルだけ利用すれば良い。また、図１に示した装置で情報の埋め込みを行った場合には、ステレオで再生されるが、左右どちらのスピーカの音を入力しても、双方のスピーカの音を混合入力しても良く、マイクロフォンの設置位置に制約がない。もちろん、付加情報が埋め込まれた音響信号がモノラル再生される場合、あるいは付加情報が埋め込まれた音響信号自体がモノラルである場合は、再生される単一のスピーカにマイクロフォンを向ければ良い。このマイクロフォンは特別精度の高いものでなく、一般的な精度のマイクロフォンを用いても情報の抽出が可能となる。基準フレーム獲得手段１１０は、入力されたデジタルのモノラル音響信号（あるいはステレオ音響信号の１チャンネル）から所定数のサンプルで構成される音響フレームを基準フレームとして読み込む機能を有している。基準フレームとしては、埋め込み時と同様にＡタイプ、Ｂタイプのものが設定される。時間軸シフトフレーム設定手段１２０は、Ａタイプ、Ｂタイプそれぞれの基準フレームと所定サンプルずつ移動させることにより時間軸をシフトした音響フレームを時間軸シフトフレームとして設定する機能を有している。
【０１３７】
周波数変換手段１３０は、基本的には、図１に示した周波数変換手段２０とほぼ同様の機能を有している。ただし、音を取り込むタイミングが、音響信号の先頭からとはならないため、正しい時間軸シフトを特定するために、複数の時間軸シフトで振幅変換、周波数変換を行う点、元の音響信号がステレオであっても、１つのチャンネルで行う点が異なっている。
【０１３８】
周波数変換手段１３０は、Ａタイプの音響フレームに対してフーリエ変換を行う場合は、信号Ｘ（ｉ−Ｎ／２＋ｐＮ／６）（ｉ＝０，…，Ｎ−１）に対して、周波数変換処理を行い、変換データの実部Ａ（１，ｊ，ｐ）、虚部Ｂ（１，ｊ，ｐ）を得る機能を有している。ｐは時間軸シフト値であり、０〜５の整数値をとる。
【０１３９】
本実施形態では、埋め込み時に微分処理および積分処理を行っている場合に限り、周波数変換に先立って周波数変換手段１３０が微分処理を行う。具体的には、ｐ＝0，・・・，５の６通りの左チャンネル信号の音響フレームの各サンプルＸｌ（ｉ＋ｐＮ／６）、右チャンネル信号の音響フレームの各サンプルＸｒ（ｉ＋ｐＮ／６）（ｉ＝０，…，Ｎ−１）に対して、ｐ＝0，・・・，５のそれぞれについて、Ｘｌ´（ｐＮ／６）＝Ｘｒ´（ｐＮ／６）＝０とし、ｉ＝１，…，Ｎ−１において、Ｘｌ´（ｉ＋ｐＮ／６）＝Ｘｌ（ｉ＋ｐＮ／６）−Ｘｌ（ｉ−１＋ｐＮ／６）、Ｘｒ´（ｉ＋ｐＮ／６）＝Ｘｒ（ｉ＋ｐＮ／６）−Ｘｒ（ｉ−１＋ｐＮ／６）なる変換を施し、Ｎ個の配列Ｘｌ´（ｉ＋ｐＮ／６）、Ｘｒ´（ｉ＋ｐＮ／６）を作成する。これにより、各サンプルＸｌ´（ｉ）、Ｘｒ´（ｉ）は、元の隣接サンプル間の差分を示す値となる。以降、このサンプルＸｌ´（ｉ＋ｐＮ／６）、Ｘｒ´（ｉ＋ｐＮ／６）をＸｌ（ｉ＋ｐＮ／６）、Ｘｒ（ｉ＋ｐＮ／６）として扱うこととする。なお、埋め込み時に何らかの要因により微分処理を行わない設定になっている場合は、埋め込み側に対応させて微分処理を実行しないような設定にしておく。微分処理を実行しない場合は、元のサンプルがそのままＸｌ（ｉ＋ｐＮ／６）、Ｘｒ（ｉ＋ｐＮ／６）として用いられることになる。
【０１４０】
続いて、周波数変換手段１３０は周波数変換を行う。具体的には、Ａタイプの音響フレームに対してフーリエ変換を行う場合は、信号Ｘ（ｉ−Ｎ／２＋ｐＮ／６）（ｉ＝０，…，Ｎ−１）に対して、窓関数Ｗ（１，ｉ）を用いて、以下の〔数式１８〕に従った処理を行う。
【０１４１】
〔数式１８〕
Ａ（１，ｊ，ｐ）＝Σi=0,…,N-1Ｗ（１，ｉ）・Ｘ（ｉ−Ｎ／２＋ｐ・Ｎ／６）・ｃｏｓ（２πｉｊ／Ｎ）
Ｂ（１，ｊ，ｐ）＝Σi=0,…,N-1Ｗ（１，ｉ）・Ｘ（ｉ−Ｎ／２＋ｐ・Ｎ／６）・ｓｉｎ（２πｉｊ／Ｎ）
【０１４２】
周波数変換手段１３０は、Ｂタイプの音響フレームに対してフーリエ変換を行う場合は、信号Ｘ（ｉ＋ｐ・Ｎ／６）（ｉ＝０，…，Ｎ−１）に対して、窓関数Ｗ（２，ｉ）を用いて、以下の〔数式１９〕に従った処理を行い、変換データの実部Ａ（２，ｊ，ｐ）、虚部Ｂ（２，ｊ，ｐ）を得る機能を有している。
【０１４３】
〔数式１９〕
Ａ（２，ｊ，ｐ）＝Σi=0,…,N-1Ｗ（２，ｉ）・Ｘ（ｉ＋ｐ・Ｎ／６）・ｃｏｓ（２πｉｊ／Ｎ）
Ｂ（２，ｊ，ｐ）＝Σi=0,…,N-1Ｗ（２，ｉ）・Ｘ（ｉ＋ｐ・Ｎ／６）・ｓｉｎ（２πｉｊ／Ｎ）
【０１４４】
周波数変換手段１３０は、周波数変換手段２０と同様に振幅変換を行う。振幅変換を行うにあたり、まず変換倍率の算出を行う。変換倍率の算出は、所定周波数範囲のスペクトル集合の実効強度値の平均である平均実効値で、設定値を除算することにより行う。設定値は、適宜定めておくことができるが、埋め込み時における振幅変換の場合と同一値としておくことが必要となる。したがって、本実施形態では、設定値Ｚｏは２８８（＝Ｍ−ｍ）にする必要がある。具体的には、Ａタイプの音響フレーム、Ｂタイプの音響フレームについての変換倍率Ｚ（１，ｐ）、Ｚ（２，ｐ）、は、以下の〔数式２０〕に従った処理により算出される。振幅変換が実行されることにより、全ての音響フレームは、元の状態における信号強度に関わらず、各音響フレームの平均実効値が設定値となるように振幅変換された状態で、情報の抽出が行われることになる。
【０１４５】
〔数式２０〕
Ｚ（１，ｐ）＝Ｚｏ／［Σj=m,…,M-1｛Ａ（１，ｊ，ｐ）2＋Ｂ（１，ｊ，ｐ）2｝］1/2
Ｚ（２，ｐ）＝Ｚｏ／［Σj=m,…,M-1｛Ａ（２，ｊ，ｐ）2＋Ｂ（２，ｊ，ｐ）2｝］1/2
【０１４６】
ｊ＝ｍ，…，Ｍ−１（周波数Ｆ１，．．．，Ｆ２に相当）およびｐ＝０，．．．，５の範囲で、Ａ（１，ｊ，ｐ）およびＢ（１，ｊ，ｐ）の各々の要素に対してＺ（１，ｐ）を乗じ、Ａ（２，ｊ，ｐ）およびＢ（２，ｊ，ｐ）の各々の要素に対してＺ（２，ｐ）を乗じることにより、振幅変換を行う。以下説明において、Ａ（１，ｊ，ｐ）、Ｂ（１，ｊ，ｐ）、Ａ（２，ｊ，ｐ）、Ｂ（２，ｊ，ｐ）はこれらの振幅変換を行った値とする。
【０１４７】
符号判定パラメータ算出手段１４０は、生成された複素周波数成分から所定の周波数範囲に相当するスペクトル集合を抽出し、各スペクトル集合の強度値を算出するとともに、この強度値を利用して符号判定パラメータを算出し、この符号判定パラメータの大小関係に基づいて、所定の状態であると判断する機能を有している。
【０１４８】
まず、各スペクトル集合の基本強度値Ｅ（１，ｊ，ｐ）、Ｅ（２，ｊ，ｐ）を、以下の〔数式２１〕に従った処理により算出する。尚、抽出時においては得られる〔数式２１〕の左辺に対応する複素周波数成分の強度値のみ判定に用い、同式右辺に対応する複素数情報は使用しないため、実数専用の高速フーリエ変換手法を適用し、Ｅ（１，ｊ，ｐ）、Ｅ（２，ｊ，ｐ）を直接算出する方法をとることもできる。
【０１４９】
〔数式２１〕
Ｅ（１，ｊ，ｐ）＝Ａ（１，ｊ，ｐ）2＋Ｂ（１，ｊ，ｐ）2
Ｅ（２，ｊ，ｐ）＝Ａ（２，ｊ，ｐ）2＋Ｂ（２，ｊ，ｐ）2
【０１５０】
各スペクトル集合の強度値Ｅ１（ｐ）、Ｅ２（ｐ）、Ｅ３（ｐ）、Ｅ４（ｐ）、Ｅ５（ｐ）、Ｅ６（ｐ）、Ｅ７（ｐ）、Ｅ８（ｐ）を、算出した基本強度値Ｅ（１，ｊ，ｐ）、Ｅ（２，ｊ，ｐ）を用いて以下の〔数式２２〕に基づいて算出する。
【０１５１】
〔数式２２〕
Ｅ１（ｐ）＝Σj=m,…,m+G-1Ｅ（１，ｊ，ｐ）
Ｅ２（ｐ）＝Σj=m,…,m+G-1Ｅ（２，ｊ，ｐ）
Ｅ３（ｐ）＝Σj=m+G,…,m+2G-1Ｅ（１，ｊ，ｐ）
Ｅ４（ｐ）＝Σj=m+G,…,m+2G-1Ｅ（２，ｊ，ｐ）
Ｅ５（ｐ）＝Σj=2m,…,2m+2G-1Ｅ（１，ｊ，ｐ）
Ｅ６（ｐ）＝Σj=2m,…,2m+2G-1Ｅ（２，ｊ，ｐ）
Ｅ７（ｐ）＝Σj=2m+2G,…,2m+4G-1Ｅ（１，ｊ，ｐ）
Ｅ８（ｐ）＝Σj=2m+2G,…,2m+4G-1Ｅ（２，ｊ，ｐ）
【０１５２】
結局〔数式２１〕〔数式２２〕により、各スペクトル集合の強度値Ｅ１（ｐ）、Ｅ２（ｐ）、Ｅ３（ｐ）、Ｅ４（ｐ）、Ｅ５（ｐ）、Ｅ６（ｐ）、Ｅ７（ｐ）、Ｅ８（ｐ）が算出されることになる。
【０１５３】
また、符号判定パラメータ算出手段１４０は、強度値Ｅ１（ｐ）、Ｅ２（ｐ）、Ｅ３（ｐ）、Ｅ４（ｐ）、Ｅ５（ｐ）、Ｅ６（ｐ）、Ｅ７（ｐ）、Ｅ８（ｐ）を用いて、符号判定パラメータＣを算出する。以下の〔数式２３〕に従った処理を実行することにより、候補符号Ｂについて仮判定するとともに、符号判定パラメータＣを算出する。
【０１５４】
〔数式２３〕
１）Ｅ１（ｐ）・Ｅ５（ｐ）＞Ｅ２（ｐ）・Ｅ６（ｐ）かつＥ４（ｐ）・Ｅ８（ｐ）＞Ｅ３（ｐ）・Ｅ７（ｐ）の場合
Ｂ＝０と仮判定、
Ｃ＝Ｅ１（ｐ）・Ｅ５（ｐ）・｛Ｅ４（ｐ）・Ｅ８（ｐ）−Ｅ２（ｐ）・Ｅ６（ｐ）・Ｅ３（ｐ）・Ｅ７（ｐ）｝／｛Ｅ１（ｐ）・Ｅ５（ｐ）・Ｅ４（ｐ）・Ｅ８（ｐ）＋Ｅ２（ｐ）・Ｅ６（ｐ）・Ｅ３（ｐ）・Ｅ７（ｐ）｝
２）Ｅ２（ｐ）・Ｅ６（ｐ）＞Ｅ１（ｐ）・Ｅ５（ｐ）かつＥ３（ｐ）・Ｅ７（ｐ）＞Ｅ４（ｐ）・Ｅ８（ｐ）の場合
Ｂ＝１と仮判定、
Ｃ＝｛Ｅ２（ｐ）・Ｅ６（ｐ）・Ｅ３（ｐ）・Ｅ７（ｐ）−Ｅ１（ｐ）・Ｅ５（ｐ）・Ｅ４（ｐ）・Ｅ８（ｐ）｝／｛Ｅ１（ｐ）・Ｅ５（ｐ）・Ｅ４（ｐ）・Ｅ８（ｐ）＋Ｅ２（ｐ）・Ｅ６（ｐ）・Ｅ３（ｐ）・Ｅ７（ｐ）｝
３）Ｅ１（ｐ）・Ｅ５（ｐ）・Ｅ４（ｐ）・Ｅ８（ｐ）＞Ｅ２（ｐ）・Ｅ６（ｐ）・Ｅ３（ｐ）・Ｅ７（ｐ）の場合
Ｂ＝０と仮判定、
Ｃ＝｛Ｅ１（ｐ）・Ｅ５（ｐ）・Ｅ４（ｐ）・Ｅ８（ｐ）−Ｅ２（ｐ）・Ｅ６（ｐ）・Ｅ３（ｐ）・Ｅ７（ｐ）｝／｛Ｅ１（ｐ）・Ｅ５（ｐ）・Ｅ４（ｐ）・Ｅ８（ｐ）＋Ｅ２（ｐ）・Ｅ６（ｐ）・Ｅ３（ｐ）・Ｅ７（ｐ）｝
４）上記１）〜３）以外の場合
Ｂ＝１と仮判定、
Ｃ＝｛Ｅ２（ｐ）・Ｅ６（ｐ）・Ｅ３（ｐ）・Ｅ７（ｐ）−Ｅ１（ｐ）・Ｅ５（ｐ）・Ｅ４（ｐ）・Ｅ８（ｐ）｝／｛Ｅ１（ｐ）・Ｅ５（ｐ）・Ｅ４（ｐ）・Ｅ８（ｐ）＋Ｅ２（ｐ）・Ｅ６（ｐ）・Ｅ３（ｐ）・Ｅ７（ｐ）｝
【０１５５】
符号出力手段１５０は、１つの基準フレームに対応する音響フレーム（基準フレームおよび時間軸シフトフレーム）の中から最適な時間軸シフトであると判断されるものを判断し、その音響フレームの状態に対応する符号を出力する機能を有している。符号判定パラメータ算出手段１４０と符号出力手段１５０により符号化手段が構成される。付加情報抽出手段１６０は、符号出力手段１５０により出力された２値の配列をＮｈビット単位で抽出し、符号逆変換テーブルを参照することにより、Ｎｗビットの登録順位に変換し、さらに所定の規則により変換して意味のある付加情報として抽出する機能を有している。音響フレーム保持手段１７０は、チャンネルごとのＡタイプ、Ｂタイプそれぞれについて連続する２個の基準フレーム（チャンネルごとに計４個の基準フレーム）を保持可能なバッファメモリである。変換テーブル作成手段１８０は、図１に示した変換テーブル作成手段８０や、上述の変換テーブル作成装置と同様、Ｎｗビットが取り得る２のＮｗ乗個の全ての登録順位に対して、各々Ｎｈ通りの巡回ビットパターン同士で互いにハミング距離が少なくとも３以上となるＮｈ（＞Ｎｗ）ビットのハミング符号を割り当てることにより、Ｎｗビットの登録順位とＮｈビットのハミング符号が対応付けられた符号変換テーブルを作成する機能を有している。図１１に示した各構成手段は、現実には情報処理機能を有する小型のコンピュータおよびその周辺機器等のハードウェアに専用のプログラムを搭載することにより実現される。特に、本発明の目的をより簡易に達成するためには、携帯電話機等の携帯型端末装置をハードウェアとして用いることが望ましい。なお、本明細書では、携帯電話機等の携帯型端末装置であっても、演算処理機能を有するものは、コンピュータの一種と考えるものとする。
【０１５６】
（３．２．抽出装置の処理動作）
次に、図１１に示した音響信号からの情報の抽出装置の処理動作について説明する。抽出装置を起動すると、まず、変換テーブル作成手段１８０が、符号変換テーブルを作成する。変換テーブル作成手段１８０による符号変換テーブルの作成は、変換テーブル作成手段８０や、上述の変換テーブル作成装置と同様、図４のフローチャートに従った処理により行われ、図１２に示したような符号変換テーブルが得られることになる。本符号変換テーブルは、８ビットの各基準符号に対応して１６ビット符号のハミング符号と巡回ビットパターンを含め、最大１６通りの巡回符号が定義されている。
【０１５７】
続いて、符号変換テーブル作成処理後の、抽出装置の処理動作について説明する。本発明に係る抽出装置は、図１２の符号変換テーブルに基づきエラー検出を行い、本表に掲載されていないビットパターンを抽出した場合は全てエラーと判断するものとする。抽出装置の処理動作を、図１３のフローチャートに従って説明する。まず、本装置では、時間軸シフト判定テーブルＳ（ｐ）、時間軸シフト決定ログ、時間軸シフト確定フラグ、ビットカウンタを初期化する（Ｓ２００）。時間軸シフト判定テーブルＳ（ｐ）は、時間軸シフトを判定するためのテーブルであり、ｐは０〜５の整数値をとる。初期値はＳ（ｐ）＝０に設定されている。時間軸シフト決定ログは、１つの基準フレームと５つの時間軸シフトフレームの組ごとに、決定された時間軸シフトすなわち時間軸シフト値ｐを記録していくものであり、初期状態では０が設定されている。時間軸シフト確定フラグは、時間軸シフトが確定しているかどうかを示すフラグであり、初期状態ではＯｆｆに設定されている。ビットカウンタについては初期値として０を設定する。
【０１５８】
このように、符号変換テーブルが作成され、初期値が設定されている状態で、利用者が流れている音楽について、その楽曲名等の属性情報を知りたいと思った場合、まず、抽出装置に対して、抽出装置としての起動の指示を行う。これは、例えば、抽出装置を携帯電話機等の携帯端末で実現している場合は、所定のボタンを操作することにより実行できる。抽出装置は、指示が入力されると、音響信号入力手段１００が、流れている音楽を録音し、デジタル化してデジタル音響信号として入力する。具体的には、無指向性マイクロフォン（または指向性マイクロフォンの一方のチャンネル）から入力される音声を、Ａ／Ｄ変換器によりデジタル化する処理を行うことになる。
【０１５９】
続いて、基準フレーム獲得手段１１０が、音響信号入力手段１００から入力された音響信号から、所定数のサンプルで構成される音響フレームを基準フレームとして抽出する（Ｓ２０１）。具体的には、Ａタイプ、Ｂタイプについての基準フレームを抽出して音響フレーム保持手段１７０に読み込むことになる。基準フレーム獲得手段１１０が基準フレームとして読み込む１音響フレームのサンプル数は、図１に示した音響フレーム読込手段１０で設定されたものと同一にする必要がある。したがって、本実施形態の場合、基準フレーム獲得手段１１０は、Ａタイプ、Ｂタイプについてそれぞれ４０９６サンプルずつ、順次基準フレームとして読み込んでいくことになる。音響フレーム保持手段１７０には、各チャンネルについて、Ａタイプ、Ｂタイプ２個ずつの基準フレーム、すなわち２．５Ｎサンプルが格納可能となっており、新しい基準フレームが読み込まれると、古い基準フレームを破棄するようになっている。したがって、音響フレーム保持手段１７０には、常に基準フレーム４個分（連続する１０２４０サンプル）が格納されていることになる。
【０１６０】
抽出装置で処理する音響フレームは、先頭から途切れることなく隣接して設定される基準フレームと、この基準フレームと時間軸をシフトした時間軸シフトフレームとに分けることができる。基準フレームについては、Ａタイプの音響フレームとＢタイプの音響フレームが、２０４８サンプルずつ重複している場合、最初の基準フレームとしてサンプル番号１からサンプル番号４０９６までを設定したら、次の基準フレームは、サンプル番号２０４９からサンプル番号６１４４、さらに次の基準フレームは、サンプル番号４０９７からサンプル番号８１９２、さらに次の基準フレームは、サンプル番号６１４５からサンプル番号１０２４０、というように途切れることなく設定される。そして、各基準フレームについて、１／６フレーム（約６８３サンプル）ずつ移動した５個の時間軸シフトフレームを設定する。例えば、最初の基準フレームについては、サンプル番号６８３、１３６６、２０４９、２７３２、３４１３から始まる４０９６のサンプルで構成される５個の時間軸シフトフレームが設定されることになる。続いて、周波数変換手段１３０、符号判定パラメータ算出手段１４０が、読み込んだ各音響フレームについて、時間軸シフトを特定した後、埋め込まれている情報を判定し、対応する符号を出力する（Ｓ２０２）。出力される情報の形式は、付加情報が埋め込まれる場合に対応する値１、値２の２通りの形式となる。
【０１６１】
ここで、ステップＳ２０２の時間軸シフト確定および符号判定の詳細を図１４のフローチャートに従って説明する。まず、時間軸シフト確定フラグがＯｎであるかＯｆｆであるかの確認を行う（Ｓ３０１）。時間軸シフト確定フラグがＯｎである場合は、時間軸シフト確定処理（Ｓ３０３〜Ｓ３０９）を行わず、符号判定処理のみを行う（Ｓ３０２）。ただし、初期状態では時間軸シフトは確定しておらず、時間軸シフト確定フラグがＯｆｆとなっているので、候補符号テーブルＢ（ｐ）の初期化を行う（Ｓ３０３）。候補符号テーブルＢ（ｐ）は、１つの基準フレームおよび５個の時間軸シフトフレームを特定するｐ＝０〜５の時間軸シフト値および、この６個の音響フレームの状態から得られる２値の符号を記録するものである。
【０１６２】
続いて、符号判定パラメータ算出手段１４０は、符号判定処理を行う（Ｓ３０２）。ここで、符号判定処理の詳細を図１５に示す。まず、周波数変換手段１３０が、読み込んだ各音響フレームに対して、周波数変換を行って各窓スペクトルを得る（Ｓ４０１）。具体的には、上記〔数式１８〕〔数式１９〕に従った処理を実行し、変換データの実部Ａ（１，ｊ，ｐ）、虚部Ｂ（１，ｊ，ｐ）、実部Ａ（２，ｊ，ｐ）、虚部Ｂ（２，ｊ，ｐ）を得る。
【０１６３】
Ｓ４０１の処理については、実際には、Ａタイプ音響フレームについて周波数変換を行った後、Ｎ／２サンプルだけシフトしてＢタイプ音響フレームについて周波数変換を行う。これらの変換データＡ（２，ｊ，ｐ）、Ｂ（２，ｊ，ｐ）、Ａ（２，ｊ，ｐ）、Ｂ（２，ｊ，ｐ）に対して、上記〔数式２０〕に従った処理を実行し、振幅変換を行う（Ｓ４０２）。
【０１６４】
上記周波数変換手段１３０における処理により、周波数に対応した成分であるスペクトルで表現されたフレームスペクトルが得られる。続いて、符号判定パラメータ算出手段１４０は、符号判定パラメータＣを上述のようにして算出した後、符号判定パラメータＣを用いて、変更対象周波数帯の成分の状態がどのような状態であるか、すなわち、１ビットの値としてどのような値が埋め込まれていたかを判断する処理を行う（Ｓ４０３）。具体的には、上記〔数式２１〕〜〔数式２３〕に従った処理を実行して、符号判定パラメータＣを算出する。候補符号Ｂを候補符号テーブルＢ（ｐ）に設定する。
【０１６５】
Ｓ４０３の具体的な処理手順としては、まず、上記〔数式２１〕を利用して基本強度値Ｅ（１，ｊ，ｐ）、Ｅ（２，ｊ，ｐ）を算出した後、上記〔数式２２〕を利用してＥ１（ｐ）、Ｅ２（ｐ）、Ｅ３（ｐ）、Ｅ４（ｐ）を算出し、上記〔数式２３〕に従って候補符号Ｂおよび符号判定パラメータＣを算出する処理を行う。
【０１６６】
また、上記判定の結果、時間軸シフト値ｐにおける候補符号テーブルＢ（ｐ）に値１、値２のいずれかを出力した場合には、さらに、以下の〔数式２４〕に従って時間軸シフト判定テーブルＳ（ｐ）の更新を行う（Ｓ４０４）。
【０１６７】
〔数式２４〕
Ｓ（ｐ）←Ｓ（ｐ）＋Ｃ
【０１６８】
ここで、図１４のフローチャートに戻って、符号判定パラメータ算出手段１４０は、候補符号テーブルＢ（ｐ）に、時間軸シフト値ｐにおいて符号判定処理（Ｓ３０２）で仮決定された符号を保存する（Ｓ３０４）。
【０１６９】
続いて、全ての時間軸シフト値ｐに対応する処理を終えたかどうかを判定する（Ｓ３０５）。これは、ある基準フレームに対して全ての時間軸シフトフレームの処理を行ったかどうかを判定している。本実施形態では、ｐが０〜５までの値をとるので、６回分処理していない場合は、処理していた音響フレームから所定サンプル数ずらして、時間軸シフトの異なる音響フレームを設定し、Ｓ３０２に戻って処理を繰り返す。なお、ｐ＝０の場合が基準フレームであり、ｐ＝１〜５の場合が時間軸シフトフレームである。全ての時間軸シフト値ｐに対応する処理を終えた場合は、時間軸シフト判定テーブルＳ（ｐ）の値が最大となる時間軸シフト値ｐｍａｘに対応する時間軸シフトが最適時間軸シフトであると判定し、候補符号テーブルＢ（ｐ）に記録されている符号Ｂ（ｐｍａｘ）を出力する（Ｓ３０６）。
【０１７０】
続いて、時間軸シフト決定ログの更新を行う（Ｓ３０７）。時間軸シフト決定ログとは、１つの基準フレームと５つの時間軸シフトフレームの組ごとに、決定された時間軸シフトすなわち時間軸シフト値ｐを記録するものである。そして、時間軸シフト決定ログを参照して、時間軸シフトが過去所定回数同一であったかどうかを判断する（Ｓ３０８）。本実施形態では、この回数を１０回としている。時間軸シフトが過去所定回数同一であった場合には、時間軸シフト確定フラグをＯｎに設定する（Ｓ３０９）。これにより、同一時間軸シフトが所定回数続いた場合には、最適時間軸シフトはｐｍａｘとなる可能性が高いため、時間軸シフト確定処理（Ｓ３０３〜Ｓ３０９）を行わず、時間軸シフト値ｐ＝ｐｍａｘに対してのみ符号判定処理（Ｓ３０２）を行うことになる。
【０１７１】
再び図１３のフローチャートに戻って説明する。時間軸シフト確定および符号出力が行なわれたら、出力された符号の値に対応する１ビットをバッファに保存する（Ｓ２０３）。次に、ビットカウンタを“１”だけカウントアップする（Ｓ２０４）。
【０１７２】
次に、ビットカウンタが１５以下であるか１６以上であるかを判断する（Ｓ２０５）。ビットカウンタが１５以下の場合は、Ｓ２０１に戻って、次のＡタイプ、Ｂタイプの基準フレームを抽出する処理を行う。
【０１７３】
ビットカウンタが１６以上である場合は、バッファに保存された１６ビットのビット配列のデコードを行う（Ｓ２０６）。これは１６ビットのビットパターンを図１２の符号変換テーブルに掲載されている全ての基準符号に対応する全ての巡回ビットパターンと照合する処理を行い、完全一致するビットパターンに対応する８ビット基準符号を探索する。
【０１７４】
巡回ハミング符号との最小のハミング距離となるビットパターンを探索し、得られた最小ハミング距離が０か、１以上かを判断する（Ｓ２０７）。Ｓ２０７において最小ハミング距離が１以上（完全一致するビットパターン無し）と判断された場合は、Ｓ２０１に戻って、次の基準フレームを抽出する処理を行う。
【０１７５】
Ｓ２０７において最小ハミング距離が０と判断された場合は、付加情報抽出手段１６０が、８ビット基準符号を出力する（Ｓ２０８）。
【０１７６】
図１３に示す処理を各基準フレームに対して実行することにより、付加情報が抽出されることになる。Ｓ２０１において全ての基準フレームが抽出されたと判断された場合には、処理を終了する。
【０１７７】
上記Ｓ２０８の処理において、付加情報抽出手段１６０は、まず、符号出力手段１５０により出力された値を、所定の規則により変換して意味のある付加情報として抽出する。所定の規則としては、情報を埋め込む者が意図した情報が受け取った者に認識可能な状態にすることができるものであれば、さまざまな規則が採用できるが、本実施形態では、ＡＳＣＩＩコードを採用している。すなわち、付加情報抽出手段１６０は、符号判定パラメータ算出手段１４０が判定し、符号出力手段１５０から出力される符号から得られるビット値の配列を１バイト（８ビット）単位で認識し、これをＡＳＣＩＩコードに従って文字情報を認識する。このようにして得られた文字情報は、表示装置（図示省略）の画面に表示出力される。
【０１７８】
従って、埋め込み装置により音響信号に、その楽曲の曲名やアーチスト等の属性情報を文字情報として埋め込んでおけば、利用者は、その音楽が流れているのを聞いて、その曲名やアーチストを知りたいと思ったときに、抽出装置として機能する自身の携帯端末に所定の操作を行えば、自身の携帯端末の画面に曲名やアーチスト等の属性情報が文字情報として表示されることになる。
【０１７９】
（３．３．時間軸シフト補正処理について）
上記のように、抽出時には、埋め込み時に埋め込んだ音響フレームに対応して、音響信号を読み込むことができるとは限らない。そこで、音響フレームの時間軸をシフトして複数通り（本実施形態では６通り）で読み込み、その中で最適な時間軸シフトを決定し、その時間軸シフトで特定される音響フレームに対応する符号を出力することにしている。例えば、６通りで読み込む場合、先頭の音響フレームは、本来サンプル番号１〜４０９６のサンプルであるが、サンプル番号１、６８３、１３６６、２０４９、２７３２、３４１３から始まる４０９６のサンプルで構成される６個の各音響フレームに対して処理を行い、最適な音響フレームに対応する符号を出力することになる。なお、図１４のフローチャートを用いて説明したように、本実施形態では、同一時間軸シフトが所定回数連続した場合には、それ以降はその時間軸シフトを確定したものとして処理を行う。
【０１８０】
（４．信号成分が小さい場合にさらに確実に情報の埋め込みを行う手法）
ここまでの説明のように、本発明では、元の信号成分に無音に近い部分があっても、情報の埋め込みを可能とするものである。このままでも、もちろん十分であるが、本発明においては、より確実に情報を埋め込むような処理を付加することも可能である。具体的には、周波数変換を行う前に、音響信号に聴取困難な微弱な白色ノイズを重畳させる。
【０１８１】
この場合、図１に示した音響フレーム読込手段１０は、所定数のサンプルを１音響フレームとして読み込んだ後、所定の振幅範囲で所定サンプル数単位で同一値を加算または減算する機能を有している。本実施形態では、左チャンネル信号Ｘｌ（ｉ）、右チャンネル信号Ｘｒ（ｉ）（ｉ＝０，…，Ｎ−１）に対して、−３２〜＋３２の振幅範囲（Ｘｌ（ｉ）、Ｘｒ（ｉ）のとり得る値が−３２７６８〜＋３２７６７の場合）で一様乱数Ｈを発生させ、Ｋ（本実施形態ではＫ＝５）個のサンプル間は同一値Ｈを用いて以下の〔数式２５〕に示すような処理を実行し、Ｘｌ（ｉ）、Ｘｒ（ｉ）の値を更新する。
【０１８２】
〔数式２５〕
Ｘｌ（ｉ）←Ｘｌ（ｉ）＋Ｈ
Ｘｒ（ｉ）←Ｘｒ（ｉ）−Ｈ
【０１８３】
すなわち、上記〔数式２５〕に従った処理をＮサンプルに渡って実行することにより、１つの音響フレームに白色ノイズが発生されることになる。この白色ノイズの発生処理は、図６のフローチャートにおいては、Ｓ１０３、Ｓ１０４の音響フレーム抽出処理の直後に行われることになる。
【０１８４】
上記のように、白色ノイズを発生させた場合であっても、抽出側の、音響信号からの情報の抽出装置の構成は図１１と同一であり、処理動作は図１３〜図１５のフローチャートに従ったものと同一である。
【０１８５】
（５．単一音脈分凝）
上記実施形態では、二重音脈分凝の場合を例にとって説明したが、本発明は、当然単一音脈分凝にも適用することができる。単一音脈分凝の場合、上記実施形態における変更対象周波数帯の上位周波数帯に対してのみ処理を行うことにより、情報の埋め込み、抽出処理を実現することができる。
【０１８６】
（６．周波数範囲の変形例）
本実施形態では抽出精度を向上させるため、電話帯域全体に埋め込み領域を拡大する方法を採用したが、再生品質を向上させるため、下位の変更対象周波数帯の幅を上記実施形態より狭くすることも可能である。具体的には、変更対象周波数帯の下限Ｆ１を０．８５ｋＨｚとする。この場合、上位周波数帯は１．７ｋＨｚ〜３．４ｋＨｚ、下位周波数帯は０．８５ｋＨｚ〜１．７ｋＨｚとなる。ただし、実験の結果、前記電話帯域全体に埋め込み領域を設定した方法と比較し、品質上の顕著な差は無く、むしろ抽出精度の低下のデメリットの方が大きく、結果的に優位性は見られなかった。また出願人は、電話帯域全体に埋め込み領域を設定する際、上記実施形態で示した方法ではなく、下位周波数帯を０．８５ｋＨｚ〜１．７ｋＨｚに狭くし、その下に、さらに独立した周波数帯０．３４ｋＨｚ〜０．８５ｋＨｚを三重に設置する手法についても実験したが、比較の結果、下位周波数帯を０．３４ｋＨｚ〜１．７ｋＨｚの１本にまとめる方が雑音の抑圧効果が高く、感度も２倍程度に拡大されることがわかった。低音部は信号エネルギー成分が大きいため、わずかな拡大により感度が顕著に改善されたのだと思われる。結局、周波数方向に４つの周波数領域に分け、上位周波数帯と下位周波数帯の幅を近づけ、二重の音脈分凝を形成する手法が、人間の聴覚に対して、最もノイズを抑制できることがわかった。
【０１８７】
（７．その他）
以上、本発明の好適な実施形態について限定したが、本発明は上記実施形態に限定されず、種々の変形が可能である。例えば、上記実施形態では、１音響フレームのサンプル数Ｎ＝４０９６としたが、Ｎ＝２０４８、１０２４、５１２等を設定するようにしても良い。これにより、同一時間あたりの音響フレーム数が、２倍、４倍、８倍となり、全体として２〜８倍の情報の埋め込みが可能となる。
【０１８８】
また、上記実施形態では、音響信号からの情報の抽出装置を、携帯電話機等の携帯型端末装置単体で実現した場合を例にとって説明したが、他のコンピュータと連携して実現するようにしても良い。具体的には、携帯型端末装置と専用コンピュータを無線通信可能に接続し、音響信号入力手段１００〜音響フレーム保持手段１７０の構成要素のうち、演算負荷の大きいものは、専用コンピュータで処理する。例えば、音響信号入力手段１００、基準フレーム獲得手段１１０、時間軸シフトフレーム設定手段１２０、付加情報抽出手段１６０、変換テーブル作成手段１８０を携帯型端末装置に備え、周波数変換手段１３０、符号判定パラメータ算出手段１４０、符号出力手段１５０、音響フレーム保持手段１７０を専用コンピュータに備えるようにして、必要な情報を両者間で通信するようにする。これにより、携帯型端末装置の処理性能が低い場合であっても高速な処理を行うことが可能となる。
【０１８９】
また、上記実施形態では、２チャンネルのステレオ音響信号を利用した場合を例にとって説明したが、１チャンネルのモノラル音響信号を利用しても良い。この場合は、上記ＬチャンネルまたはＲチャンネルのいずれか一方に対して行った処理を実行すれば良い。
【０１９０】
また、周波数成分変更手段３０による所定周波数成分の変更を、図３および〔数式９〕に従って実行するようにしたが、埋め込むべきビット値に応じた周波数成分の変更は、様々なものを用いることができ、例えば特許文献１に示したような手法を用いることも可能である。この場合、抽出側においても、当然その埋め込み手法に応じた手法で抽出が行われる。
【産業上の利用可能性】
【０１９１】
本発明は、ＣＤ・ＤＶＤ等を用いた民生・業務用途における鑑賞用のパッケージ音楽分野、放送事業者等が商業目的で配信する放送・ネットワーク音楽配信分野における音楽著作権の保護（不正コピーの監視）および音楽属性情報の提供（楽曲タイトル検索サービス）分野、ミュージアム、イベント会場における展示説明ナレーションに連動した文字情報の提供サービス分野、放送番組やＣＤ／ＤＶＤパッケージの音声信号からＵＲＬなどの情報を抽出し、携帯電話を用いて所定のコンテンツに関連するｗｅｂサイトにアクセスして詳細情報を抽出したり、アンケートに回答したりする非接触なインターネットのゲートウェイサービス分野等の産業に利用可能である。
【符号の説明】
【０１９２】
１０・・・音響フレーム読込手段
２０・・・周波数変換手段
３０・・・周波数成分変更手段
３１・・・位相補正手段
４０・・・周波数逆変換手段
５０・・・改変音響フレーム出力手段
６０・・・記憶手段
６１・・・音響信号記憶部
６２・・・付加情報記憶部
６３・・・改変音響信号記憶部
７０・・・ビット配列作成手段
８０・・・変換テーブル作成手段
１００・・・音響信号入力手段
１１０・・・基準フレーム獲得手段
１２０・・・時間軸シフトフレーム設定手段
１３０・・・周波数変換手段
１４０・・・符号判定パラメータ算出手段
１５０・・・符号出力手段
１６０・・・付加情報抽出手段
１７０・・・音響フレーム保持手段
１８０・・・変換テーブル作成手段
【図１】
0005569033.tif 000002
【図２】
0005569033.tif 000003
【図３】
0005569033.tif 000004
【図４】
0005569033.tif 000005
【図５】
0005569033.tif 000006
【図６】
0005569033.tif 000007
【図７】
0005569033.tif 000008
【図８】
0005569033.tif 000009
【図９】
0005569033.tif 000010
【図１０】
0005569033.tif 000011
【図１１】
0005569033.tif 000012
【図１２】
0005569033.tif 000013
【図１３】
0005569033.tif 000014
【図１４】
0005569033.tif 000015
【図１５】
0005569033.tif 000016
【図１６】
0005569033.tif 000017
【図１７】
0005569033.tif 000018
【図１８】
0005569033.tif 000019
【図１９】
0005569033.tif 000020
【図２０】
0005569033.tif 000021
【図２１】
0005569033.tif 000022
【図２２】
0005569033.tif 000023
【図２３】
0005569033.tif 000024
【図２４】
0005569033.tif 000025
【図２５】
0005569033.tif 000026
【図２６】
0005569033.tif 000027
【図２７】
0005569033.tif 000028
【図２８】
0005569033.tif 000029
【図２９】
0005569033.tif 000030