(57)【要約】【課題】  音声録音性能および処理能力が低い一般的な携帯端末等においても高速に抽出処理を行うことが可能な音響信号からの情報の抽出装置を提供する。【解決手段】  埋め込み装置は、４４．１ｋＨｚでサンプリングされたソース音響信号（ａ）に対して情報の埋め込み処理を行い、情報が埋め込まれた音響信号（ｂ）が得られる。抽出装置が、アナログの音響信号を取得した後、２２．０５ｋＨｚまたは８ｋＨｚでサンプリングしてデジタル化する（ｃ）。この音響信号に対して、１音響フレームを埋め込み時の音響フレームと同一時間となるように設定して（ｄ）、抽出処理を行う。【選択図】  図１７
2008170828.tif 000002
【特許請求の範囲】
【請求項１】
所定のサンプリング周波数Ｆｓでデジタル化された音響信号に対して、あらかじめ聴取不能な状態で所定数Ｎのサンプルで構成される音響フレームごとに付加情報が埋め込まれて再生されたアナログ音響信号から付加情報を抽出する装置であって、
前記アナログ音響信号の所定区間を前記サンプリング周波数Ｆｓより小さい周波数Ｆｓ´でデジタル化して、前記所定数Ｎより少ない所定数Ｎ´のサンプルで構成される音響フレームを獲得する音響フレーム獲得手段と、
前記音響フレームに対して窓関数を用いて周波数変換を行い、スペクトルを得る周波数変換手段と、
前記生成されたスペクトルから所定の周波数範囲の複数のスペクトル集合を抽出し、各スペクトル集合のスペクトル強度を算出し、その各スペクトル強度に基づいて、埋め込まれていた１以上のビット列を抽出する符号化手段と、
前記出力されたビット列をワード単位で所定の規則により変換して付加情報を抽出する付加情報抽出手段と、
を有することを特徴とする音響信号からの情報の抽出装置。
【請求項２】
請求項１において、
前記所定数Ｎ´は、Ｎ´＝Ｎ×Ｆｓ´／Ｆｓの関係を満たすものであることを特徴とする音響信号からの情報の抽出装置。
【請求項３】
請求項１または請求項２において、
前記周波数変換手段は、音響フレームに対して第１窓関数、第３窓関数を用いてそれぞれ周波数変換を行い、前記第１窓関数に対応するスペクトルである第１窓スペクトル、前記第３窓関数に対応するスペクトルである第３窓スペクトルを生成するものであり、
前記符号化手段は、生成された第１窓スペクトルから１以上の所定周波数範囲のスペクトル集合を抽出するとともに、前記第３窓スペクトルから１以上の所定周波数範囲のスペクトル集合を抽出し、各スペクトル集合のスペクトル強度を算出し、その各スペクトル強度に基づいて、埋め込まれていた１以上のビット列を抽出するものであることを特徴とする音響信号からの情報の抽出装置。
【請求項４】
請求項１から請求項３のいずれかにおいて、
前記音響フレーム獲得手段は、前記音響信号から、所定数のサンプルで構成される音響フレームを基準フレームとして獲得する基準フレーム獲得手段と、前記基準フレームと所定サンプルずつ移動させることにより位相を変更して設定される複数の音響フレームを位相変更フレームとして設定する位相変更フレーム設定手段により構成され、
前記符号化手段は、前記抽出したスペクトル集合に基づいて、符号判定パラメータを算出する符号判定パラメータ算出手段と、基準フレームが異なる過去の同位相の音響フレームにおいて算出された符号判定パラメータに基づいて、前記基準フレームおよび複数の位相変更フレームのうち１つの音響フレームを位相が最適なものであると判断し、当該最適な位相の音響フレームについて判断された前記符号判定パラメータに基づいて、所定の符号を出力する符号出力手段を有するものであることを特徴とする音響信号からの情報の抽出装置。
【請求項５】
請求項４において、
前記符号化手段は、過去に判断された最適な位相を保持し、最適な位相が所定回数以上連続した場合、当該位相を確定位相として設定するものであり、
前記前記音響フレーム獲得手段は、前記確定位相が存在する場合には、当該確定位相に対応する基準フレームまたは位相変更フレームのいずれか１つの音響フレームのみを抽出し、前記周波数変換手段は、当該抽出した音響フレームに対してのみ処理を行うとともに、前記符号化手段は、前記抽出され、周波数変換手段により処理された音響フレームのみから所定の符号を出力するものであることを特徴とする音響信号からの情報の抽出装置。
【請求項６】
コンピュータを、請求項１から請求項５のいずれかに記載の音響信号からの情報の抽出装置として、機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＣＤ・ＤＶＤ等を用いた民生・業務用途における鑑賞用のパッケージ音楽分野、放送事業者等が商業目的で配信する放送・ネットワーク音楽配信分野における音楽著作権の保護（不正コピーの監視）および音楽属性情報の提供（楽曲タイトル検索サービス）分野、ミュージアム、イベント会場における展示説明ナレーションに連動した文字情報の提供サービス分野、放送番組やＣＤ／ＤＶＤパッケージの音声信号からＵＲＬなどの情報を抽出し、携帯電話を用いて所定のコンテンツに関連するｗｅｂサイトにアクセスして詳細情報を抽出したり、アンケートに回答したりする非接触なインターネットのゲートウェイサービス分野に関する。
【背景技術】
【０００２】
従来より、流れている音楽のタイトル等を知ることができる楽曲属性情報の提供サービスとして、放送された音楽に対して日時と地域を放送局に照会したり、携帯電話で流れている音楽断片を録音してデータベースに登録されているメロディーと照合したりするサービスが実用化されている。最近では、曲名やアーチスト情報などの楽曲属性情報を不可聴な電子透かしとして音響信号に埋め込む手法も提案されている（例えば、特許文献１〜４参照）。
【０００３】
特許文献１〜４に記載の手法では、埋め込み可能な情報量が少なく、音質が少なからず劣化し、各種信号処理により透かし情報が消失し、またアナログコピーに対しては、透かし検出が困難であるという問題がある。そこで、本出願人は、音響信号の低周波数成分の比率を属性情報のビット値に応じて変更することにより、属性情報（付加情報）を埋め込む手法を提案した（特許文献５、６参照）。
【０００４】
上記特許文献５、６に記載の発明では、いずれも周波数４４．１ｋＨｚ、量子化ビット数１６ビットでサンプリングした音響信号について、４０９６サンプルを１音響フレームとし、この１音響フレームについて１ビットの情報を埋め込む処理を行っているが、抽出時においても、埋め込み時と同様、サンプリング周波数４４．１ｋＨｚ、量子化ビット数１６ビットでサンプリングを行っているため、リアルタイムで抽出処理を行うためには、４４．１ｋＨｚ以上の音声録音性能とそれ相当の信号処理能力（例えば１ＧＨｚ以上のクロック数をもつＣＰＵ）が必要となる。抽出装置を一般的なＰＣで実現する場合には問題ないが、抽出装置を携帯端末等で実現する場合にはＰＣ並みの音声録音性能とＣＰＵ処理能力を備える機種を選定する必要がある。（例えば、携帯端末と同程度の筐体で実現した小型ＰＣなどが少なからず存在するため、それらを選定すれば実現不可能ではない。）
【０００５】
また、本出願人は、携帯端末等を用いてリアルタイムで処理を行うために、別途高性能のサーバを用意し、携帯端末でサンプリング周波数４４．１ｋＨｚ、量子化ビット数１６ビットでサンプリングして得た音響信号をサーバに転送して、サーバで情報を抽出し、抽出した情報を携帯端末に転送するという手法も提案している（特許文献７参照）。
【特許文献１】特開平１１−１４５８４０号公報
【特許文献２】特開平１１−２１９１７２号公報
【特許文献３】特許第３３２１７６７号公報
【特許文献４】特開２００３−９９０７７号公報
【特許文献５】特開２００６−２３５３５９号公報
【特許文献６】特開２００６−３２３２４６号公報
【特許文献７】特願２００５−３１２７５５号
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、一般的に普及している携帯端末は高精細な音楽録音を行なったり負荷のかかる演算処理を実行するニーズが比較的低いのと、コスト低減、軽量化とバッテリー消費量節約という理由から、音声録音性能とＣＰＵ性能（特に浮動小数点演算とメインメモリ容量）を低く抑えている。そのため、上記特許文献５、６に記載の抽出装置を一般的な携帯端末で実現した場合には、リアルタイムで抽出処理を行うことができないという問題がある。また、上記特許文献７に記載の発明では、本来の抽出処理以外にネットワークを往復する処理が加わるため、サーバー側で抽出処理自体をリアルタイムに実行できても、現行のネットワーク環境では携帯端末側でリアルタイムなレスポンスを得ることは困難である。
【０００７】
そこで、本発明は、音声録音性能および処理能力が低い一般的な携帯端末等においても高速に抽出処理を行うことが可能な音響信号からの情報の抽出装置を提供することを課題とする。
【課題を解決するための手段】
【０００８】
上記課題を解決するため、本発明では、所定のサンプリング周波数Ｆｓでデジタル化された音響信号に対して、あらかじめ聴取不能な状態で所定数Ｎのサンプルで構成される音響フレームごとに付加情報が埋め込まれて再生されたアナログ音響信号から付加情報を抽出する装置であって、前記アナログ音響信号の所定区間を前記サンプリング周波数Ｆｓより小さい周波数Ｆｓ´でデジタル化して、前記所定数Ｎより少ない所定数Ｎ´のサンプルで構成される音響フレームを獲得する音響フレーム獲得手段と、前記音響フレームに対して窓関数を用いて周波数変換を行い、スペクトルを得る周波数変換手段と、前記生成されたスペクトルから所定の周波数範囲の複数のスペクトル集合を抽出し、各スペクトル集合のスペクトル強度を算出し、その各スペクトル強度に基づいて、埋め込まれていた１以上のビット列を抽出する符号化手段と、前記出力されたビット列をワード単位で所定の規則により変換して付加情報を抽出する付加情報抽出手段を有する音響信号からの情報の抽出装置を提供する。
【発明の効果】
【０００９】
本発明によれば、利用者の携帯端末の音声録音性能の制約に基づいて、元の音響信号のサンプリング周波数Ｆｓより小さい周波数Ｆｓ´でデジタル化し、埋め込み時の１音響フレームのサンプル数Ｎより少ないサンプル数Ｎ´を１音響フレームとして、抽出処理を行うようにしたので、音声録音性能が低い携帯端末等においても支障なく音響信号入力を実現でき、それを逆手にとって少ないサンプル数の音響フレームを用いて同等な精度を維持しながら抽出処理を実現するようにしたため、処理能力が低い携帯端末等においても遅滞のない抽出処理を行うことが可能となるという効果を奏する。
【発明を実施するための最良の形態】
【００１０】
以下、本発明の実施形態について図面を参照して詳細に説明する。
（１．第１の実施形態）
まず、第１の実施形態について説明する。最初に第１の実施形態における埋め込み処理の前後における音響フレームの所定周波数成分の変化の状態について説明する。図１に、本実施形態による所定周波数成分の状態を１音響フレーム単位で示す。図１に示す各音響フレームにおいて、横軸は時間方向、縦軸は周波数方向を示している。また、網掛けされた部分は、周波数成分が存在している部分を示し、網掛けが濃いほど成分強度が強いことを示している。図１においては、縦軸の周波数方向において、周波数領域が３つに区分されているが、上から２番目の領域、すなわち、周波数Ｆ１以上Ｆ２以下の間が変更対象周波数帯であり、最上部すなわち周波数Ｆ２超、最下部すなわちＦ１未満は、変更対象でない周波数帯である。すなわち、本実施形態では、周波数Ｆ１以上Ｆ２以下を所定周波数範囲として、スペクトル集合の強度を変更することになる。図１（ａ）に示すように、変更対象周波数帯の前部におけるスペクトルをＳＰ１、変更対象周波数帯の後部におけるスペクトルをＳＰ３で表現することとする。
【００１１】
本実施形態で、符号１を埋め込む場合、図１（ｂ）に示すように、Ｌ-chの信号の変更対象周波数帯の後部の成分を除去し、除去した成分と同等の成分をＲ-chの信号に加算する。また、Ｌ-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Ｗ（１，ｉ）・Ｘｒ（ｉ）・ｓｉｎ（２πｉｊ／Ｎ）
Ａｒ（２，ｊ）＝Σ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の信号の対応するスペクトル集合の強度を弱める際に、周波数方向の値ｊに応じて変化する窓関数Ｆ（ｊ）を用いる。この周波数方向窓関数Ｆ（ｊ）は、以下の〔数式７〕で定義されるものである。
【００４４】
〔数式７〕
Ｆ（ｊ）＝１．０−（ｊ−Ｐｒ）2／Ｐｒ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
Ａｒ´（１，ｊ）＝（１．０−Ｆ（ｊ−ｍ））・Ａｒ（１，ｊ）・Ｅ（１，ｊ）／｛Ａｒ（１，ｊ）2＋Ｂｒ（１，ｊ）2｝1/2
Ｂｒ´（１，ｊ）＝（１．０−Ｆ（ｊ−ｍ））・Ｂｒ（１，ｊ）・Ｅ（１，ｊ）／｛Ａｒ（１，ｊ）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｝1/2
Ｂｒ´（３，ｊ）＝（１．０−Ｆ（ｊ−ｍ））・Ｂｒ（３，ｊ）・Ｅ（３，ｊ）／｛Ａｒ（３，ｊ）2＋Ｂｒ（３，ｊ）2｝1/2
【００５１】
上記〔数式９〕においては、ｊ＝ｍ〜Ｍ−１において、Ａｌ´（１，ｊ）、Ｂｌ´（１，ｊ）を共に０としている。これは、図１（ｃ）の上段に示すように、L-chにおいて、ＳＰ１内の各成分を０にすることを示しているが、“状態２”はＳＰ３との差を明確にすることができれば十分であるため、必ずしも０にする必要はなく、小さな値であれば良い。
【００５２】
上記のように、Ａタイプの音響フレームに対しては、埋め込むべきビット値に応じて、周波数成分の変更を行う必要があるため、周波数成分変更手段３０は、上記〔数式８〕〔数式９〕に従った処理を実行する。ところが、Ｂタイプの音響フレームは、Ａタイプの音響フレームのみの場合に生じる両端部分の不連続性を防止するために用いられるものであるので、ビット値に応じて周波数成分の変更を行う必要はない。そこで、周波数成分変更手段３０は、Ｂタイプの音響フレームについては、以下の〔数式１０〕に従った処理を実行し、常にその変更対象周波数帯の成分を除去する。
【００５３】
〔数式１０〕
ｊ＝０〜Ｍ−１の各成分に対して
Ａｌ´（４，ｊ）＝０
Ｂｌ´（４，ｊ）＝０
Ｅ（４，ｊ）＝｛Ａｌ（４，ｊ）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Ｂｒ´（４，ｊ）・ｓｉｎ（２πｉｊ／Ｎ）｝＋Ｘｒｐ（ｉ＋Ｎ／２）
【００６０】
上記〔数式１２〕によりＢタイプの改変音響フレームの左チャンネルの各サンプルＸｌ´（ｉ）、右チャンネルの各サンプルＸｒ´（ｉ）、が得られることになる。
【００６１】
改変音響フレーム出力手段５０は、周波数逆変換手段４０の処理により得られたＡタイプの改変音響フレーム、Ｂタイプの改変音響フレームを順次出力ファイルに出力する。
【００６２】
次に、図２に示した音響信号に対する情報の埋め込み装置の処理の全体的な流れを、図５のフローチャートに従って説明する。図２に示した装置を構成する各構成要素は、連携して図５に従った処理を実行する。図５は、付加情報１ワード分の処理に対応したものとなっている。１ワードとしては、任意のビット数に設定することができるが、上述のように、本実施形態では誤り検出ビットを含めて１バイト（８ビット）に設定されている。また、情報の埋め込みは、Ａタイプの音響フレームに対して行われるので、図５は、Ａタイプの音響フレームについての説明となっている。Ｂタイプの音響フレームについては、Ａタイプの音響フレームと並行して、音響フレーム読込手段１０により読み込まれ、窓関数Ｗ（４，ｉ）を利用して周波数変換手段２０により周波数変換された後、周波数成分変更手段３０により変更対象周波数帯の成分が除去され、周波数逆変換手段４０により周波数逆変換された後、改変音響フレーム出力手段５０により出力される。
【００６３】
図５においては、まず、ビット配列作成手段７０は、付加情報記憶部６２から抽出した付加情報に対して所定の処理を施し新たなビット配列を作成する（Ｓ１０１）。具体的には、まず、付加情報記憶部６２から１ワード（７ビット）単位で抽出し、これに誤り検出ビットを１ビット付加して８ビットとする。そして、抽出した１ワード（７ビット）の各ビットを反転させて配置し、最後に誤り検出ビットと同じ値の１ビットを配置して１６ビットのビット配列を作成する。この処理によるビット配列の変化の様子を図６に示す。図６（ａ）は、誤り検出ビット付加後のビット配列を示している。図６（ａ）において、第８ビットの“０”は誤り検出ビットである。このような場合、第１〜第７ビットの“１０１１１１０”を反転させた“０１００００１”を第９ビット〜第１５ビットとし、第８ビットの“０”を複写して第１６ビットとする新たなビット配列を作成する。この結果、図６（ｂ）に示すような配列となる。
【００６４】
この図６（ｂ）に示す配列では、前半の８ビットと後半の８ビットにおける対応する各ビットの順序が同じであるので、抽出時において、どのビットについても８ビット離れたビットとの比較を行うことになる。すなわち、図６（ｂ）に示すように、第１ビットは第９ビット（第１ビット反転）、第２ビットは第１０ビット（第２ビット反転）との比較を行うことになる。この場合、抽出時に、誤って第２ビットを先頭と判断しても、第１０ビットとの比較になり、適合性が保たれることが多い。すると、第２ビットを先頭とした誤ったビット配列を抽出してしまう可能性がある。このような問題が発生するのを防ぐため、本実施形態では、さらに、１６ビット中の後半８ビット内において、奇数番目のビットと偶数番目のビットの入れ替えを行う。この結果、図６（ｃ）に示すような配列となる。そして、この１６ビットが、音響信号に対する情報の埋め込み装置として用いられるコンピュータ内のレジスタに読み込まれることになる。このように、付加情報記憶部６２においては、１ワードは７ビットであるが、埋め込み処理時は、この１６ビットの配列で、付加情報内の１ワード分の処理を行う。このように作成されたビット配列のうち、前半のビット列を前半ビット列、後半のビット列を後半ビット列と呼ぶことにする。
【００６５】
次に、周波数成分変更手段３０が、レジスタに保持された１６ビットから１ビットを読み込む処理を行う（Ｓ１０２）。続いて、音響フレーム読込手段１０が、音響信号記憶部６１に記憶されたステレオ音響信号の左右の各チャンネルから、それぞれ所定数のサンプルを１音響フレームとして読み込む（Ｓ１０３）。続いて、周波数変換手段２０および周波数成分変更手段３０が、音響フレームの周波数成分の状態を“状態１”、“状態２”のいずれかに変更する処理を行う（Ｓ１０４）。具体的には、読み込んだ音響フレームに対して、周波数変換を行って、その音響フレームのスペクトルであるフレームスペクトルを得る。すなわち、各音響フレームについて、３つの窓関数Ｗ（１，ｉ）、Ｗ（２，ｉ）、Ｗ（３，ｉ）を用いて、上記〔数式５〕に従った処理を行うことになる。
【００６６】
続いて、周波数成分変更手段３０は、ビット配列作成手段７０から受け取った値１、値２に応じて上記〔数式８〕〔数式９〕に従った処理を実行し、変更対象周波数帯の成分の状態を“状態１”、“状態２”のいずれかに変更する。
【００６７】
次に、周波数逆変換手段４０が、上記Ｓ１０４の処理により各窓成分のスペクトル集合間の割合が変更されたフレームスペクトルを周波数逆変換して改変音響フレームを得る処理を行う（Ｓ１０５）。この周波数逆変換は、当然のことながら、周波数変換手段２０がＳ１０４において実行した手法に対応していることが必要となる。本実施形態では、周波数変換手段２０において、フーリエ逆変換を施しているため、周波数逆変換手段４０は、フーリエ逆変換を実行することになる。具体的には、上記〔数式８〕〔数式９〕のいずれかにより得られたスペクトルの左チャンネルの実部Ａｌ´（１，ｊ）等、虚部Ｂｌ´（１，ｊ）等、右チャンネルの実部Ａｒ´（１，ｊ）等、虚部Ｂｒ´（１，ｊ）等を用いて、上記〔数式１１〕に従った処理を行い、Ｘｌ´（ｉ）、Ｘｒ´（ｉ）を算出する。
【００６８】
改変音響フレーム出力手段５０は、得られた改変音響フレームを順次出力ファイルに出力する。こうして１つの音響フレームに対する処理を終えたら、周波数成分変更手段３０がビット配列中の次の１ビットを読み込む（Ｓ１０２）。以上のような処理を音響信号の両チャンネルの全サンプルに渡って実行していく。すなわち、所定数のサンプルを音響フレームとして読み込み、音響信号から読み込むべき音響フレームがなくなったら（Ｓ１０３）、処理を終了する。なお、Ｓ１０１において読み込んだ１ワード分のビット配列（１６ビット）の各ビットに対応する処理を終えた場合、Ｓ１０２からＳ１０１に戻り、付加情報の次のワードを読み込んでビット配列を作成する処理を行うことになる。付加情報の全ワードに対して処理が終了した場合は、付加情報の先頭ワードに戻って処理を行う。この結果、全ての音響フレームに対して処理を行った全ての改変音響フレームが出力ファイルに記録されて、改変音響信号として得られる。得られた改変音響信号は、記憶手段６０内の改変音響信号記憶部６３に出力され、記憶される。
【００６９】
なお、本実施形態では、付加情報を１ワード７ビットとし、誤り検出用の１ビットを付加した後、反転ビット等を加えて１６ビットとして、付加情報１ワード分の処理をする場合について説明したが、抽出側と取り決めがある限り、付加情報の１ワードを任意のビット数単位で記録することが可能である。
【００７０】
上記のようにして得られた改変音響信号の左チャンネルのうち、付加情報が埋め込まれている部分については、変更対象周波数帯の成分は、上記状態１、状態２の２通りの分布しかないことになる。しかし、変更対象周波数帯の成分以外については、元の音響信号のままであるので、制作者の設定に基づいた種々な分布になる。また、上記の例で示したように、ステレオ音響信号を利用した場合には、左チャンネルにおいて変化させられた変更対象周波数帯の成分は、上記〔数式８〕〔数式９〕の処理からも明らかなように、必ず右チャンネルの変更対象周波数帯の成分に付加されている。したがって、右チャンネルが左チャンネルにおいて削除された成分を補っているため、両チャンネル全体として見ると、信号の劣化がない。
【００７１】
（１．３．音響信号からの情報の抽出装置）
次に、本発明に係る音響信号からの情報の抽出装置について説明する。図７は、本発明に係る音響信号からの情報の抽出装置の一実施形態を示す構成図である。図７において、１００は音響信号入力手段、１１０は基準フレーム獲得手段、１２０は位相変更フレーム設定手段、１３０は周波数変換手段、１４０は符号判定パラメータ算出手段、１５０は符号出力手段、１６０は付加情報抽出手段、１７０は音響フレーム保持手段である。
【００７２】
音響信号入力手段１００は、流れている音声をデジタル音響信号として取得し、入力する機能を有している。現実には、マイクロフォンおよびＡ／Ｄ変換器により実現される。マイクロフォンとしては、変更対象周波数帯の成分が検出可能なものであれば、モノラル無指向性のものであっても、ステレオ指向性のものであっても使用可能である。ステレオ指向性のものであっても一方のチャンネルだけ利用すれば良い。また、図２に示した装置で情報の埋め込みを行った場合には、特別精度の高いものでなく、一般的な精度のマイクロフォンを用いても情報の抽出が可能となる。基準フレーム獲得手段１１０は、入力されたデジタルのモノラル音響信号（あるいはステレオ音響信号の１チャンネル）から所定数のサンプルで構成される音響フレームを基準フレームとして読み込む機能を有している。位相変更フレーム設定手段１２０は、基準フレームと所定サンプルずつ移動させることにより位相を変更した音響フレームを位相変更フレームとして設定する機能を有している。周波数変換手段１３０は、図２に示した周波数変換手段２０と同様の機能を有している。
【００７３】
符号判定パラメータ算出手段１４０は、生成されたフレームスペクトルから所定の周波数範囲に相当する各周波数強度データを抽出し、各成分に対応した各周波数強度データの強度値ＥC1、ＥC2を以下の〔数式１３〕に基づいて算出し、この強度値ＥC1、ＥC2を符号判定パラメータとし、この符号判定パラメータＥC1、ＥC2の比率等に基づいて、所定の状態であると判断する機能を有している。
【００７４】
〔数式１３〕
ＥC1＝Σj=m,…,M-1｛Ａｌ（１，ｊ）2＋Ｂｌ（１，ｊ）2｝・Ｆ（ｊ−ｍ）・Ｃ
ＥC2＝Σj=m,…,M-1｛Ａｌ（３，ｊ）2＋Ｂｌ（３，ｊ）2｝・Ｆ（ｊ−ｍ）・Ｃ
【００７５】
なお、上記〔数式１３〕における係数Ｃは、以下の〔数式１４〕で定義される。
【００７６】
〔数式１４〕
Ｃ＝１．０／Σj=0,P-1Ｆ（ｊ）
【００７７】
符号出力手段１５０は、１つの基準フレームに対応する音響フレーム（基準フレームおよび位相変更フレーム）の中から最適な位相であると判断されるものを判断し、その音響フレームの状態に対応する符号を出力する機能を有している。符号判定パラメータ算出手段１４０と符号出力手段１５０により符号化手段が構成される。付加情報抽出手段１６０は、符号出力手段１５０により出力された２値の配列を、所定の規則により変換して意味のある付加情報として抽出する機能を有している。音響フレーム保持手段１７０は、連続する２個の基準フレームを保持可能なバッファメモリである。図７に示した各構成手段は、現実には情報処理機能を有する小型のコンピュータおよびその周辺機器等のハードウェアに専用のプログラムを搭載することにより実現される。特に、本発明においては、汎用のコンピュータより録音性能および演算処理性能の低い携帯ゲーム機、ＰＤＡ、ＰＨＳ端末、携帯電話機を抽出装置として用いることを想定している。
【００７８】
（１．４．抽出装置の処理動作）
次に、図７に示した音響信号からの情報の抽出装置の処理動作について説明する。本発明に係る抽出装置は、パリティ検査によりエラーを検出した際、エラー訂正を行わない設定とすることもできるし、１ビットのエラー訂正をするものと設定することもできる。ここからは、エラー訂正を行わない設定における抽出装置の処理動作を、図８のフローチャートに従って説明する。まず、本装置では、位相判定テーブルＳ（ｐ）、位相決定ログ、位相確定フラグ、ビットカウンタを初期化する（Ｓ２００）。位相判定テーブルＳ（ｐ）は、位相を判定するためのテーブルであり、ｐは０〜５の整数値をとる。初期値はＳ（ｐ）＝０に設定されている。位相決定ログは、１つの基準フレームと５つの位相変更フレームの組ごとに、決定された位相すなわち位相番号ｐを記録するものであり、初期状態では０が設定されている。位相確定フラグは、位相が確定しているかどうかを示すフラグであり、初期状態ではＯｆｆに設定されている。ビットカウンタについては初期値として０を設定する。
【００７９】
このように、初期値が設定されている状態で、利用者が流れている音楽について、その楽曲名等の属性情報を知りたいと思った場合、まず、抽出装置に対して、抽出装置としての起動の指示を行う。これは、例えば、抽出装置を携帯電話機等の携帯端末で実現している場合は、所定のボタンを操作することにより実行できる。抽出装置は、指示が入力されると、音響信号入力手段１００が、流れている音楽を録音し、デジタル化してデジタル音響信号として入力する。具体的には、無指向性マイクロフォン（または指向性マイクロフォンの一方のチャンネル）から入力される音声を、Ａ／Ｄ変換器によりデジタル化する処理を行うことになる。この際、そのサンプリング周波数、量子化ビット数は機器の性能に依存するが、本実施形態では、携帯ゲーム機、ＰＤＡ、ＰＨＳ端末を想定しているため、サンプリング周波数２２．０５ｋＨｚ、量子化ビット数１２ビットでデジタル化する。
【００８０】
続いて、基準フレーム獲得手段１１０が、音響信号入力手段１００から入力された音響信号から、所定数のサンプルで構成される音響フレームを基準フレームとして抽出する（Ｓ２０１）。具体的には、基準フレームを抽出して音響フレーム保持手段１７０に読み込むことになる。基準フレーム獲得手段１１０が基準フレームとして読み込む１音響フレームのサンプル数は、図２に示した音響フレーム読込手段１０で設定されたものとは異なり、半分の２０４８個に設定してある。これは、音響信号入力手段１００によるサンプリング周波数Ｆｓ´が２２．０５ｋＨｚであり、埋め込み装置で処理した元の音響信号のサンプリング周波数Ｆｓ（４４．１ｋＨｚ）の半分であるためである。すなわち、サンプリング周波数４４．１ｋＨｚ、サンプル数４０９６（Ｎ）の埋め込み装置における１音響フレームと、抽出装置における１音響フレームの秒数が同一となるように、抽出装置においては、１音響フレーム２０４８（Ｎ´＝（Ｎ／２））サンプルと設定しているのである。すなわち、Ｎ´＝Ｎ×Ｆｓ´／Ｆｓとなるように、Ｎ´は設定されることになる。したがって、本実施形態の場合、基準フレーム獲得手段１１０は、２０４８サンプルずつ、順次基準フレームとして読み込んでいくことになる。なお、本実施形態では、音響信号入力手段１００において量子化ビット数１２ビットでサンプリングした場合、基準フレーム獲得手段１１０が１６ビットに各サンプルをアップコンバートした後、抽出するようにしている。
【００８１】
音響フレーム保持手段１７０には、上述のように２個の基準フレームが格納可能となっており、新しい基準フレームが読み込まれると、古い基準フレームを破棄するようになっている。したがって、音響フレーム保持手段１７０には、常に基準フレーム２個分（連続する４０９６サンプル）が格納されていることになる。
【００８２】
抽出装置で処理する音響フレームは、先頭から途切れることなく隣接して設定される基準フレームと、この基準フレームと位相を変更した位相変更フレームとに分けることができる。基準フレームについては、最初の基準フレームとしてサンプル番号１からサンプル番号２０４８までを設定したら、次の基準フレームは、サンプル番号２０４９からサンプル番号４０９６、さらに次の基準フレームは、サンプル番号４０９７からサンプル番号６１４４、というように途切れることなく設定される。そして、各基準フレームについて、１／６フレーム（３４１サンプル）ずつ移動した５個の位相変更フレームを設定する。例えば、最初の基準フレームについては、サンプル番号３４２、６８４、１０２５、１３６６、１７０８から始まる２０４８のサンプルで構成される５個の位相変更フレームが設定されることになる。続いて、周波数変換手段１３０、符号判定パラメータ算出手段１４０が、読み込んだ各音響フレームについて、位相を特定した後、埋め込まれている情報を判定し、対応する符号を出力する（Ｓ２０２）。出力される情報の形式は、付加情報が埋め込まれる場合に対応する値１、値２の２通りの形式となる。
【００８３】
ここで、ステップＳ２０２の位相確定および符号判定の詳細を図９のフローチャートに従って説明する。まず、位相確定フラグがＯｎであるかＯｆｆであるかの確認を行う（Ｓ３０１）。位相確定フラグがＯｎである場合は、位相確定処理（Ｓ３０３〜Ｓ３０９）を行わず、符号判定処理のみを行う（Ｓ３０２）。ただし、初期状態では位相は確定しておらず、位相確定フラグがＯｆｆとなっているので、候補符号テーブルの初期化を行う（Ｓ３０３）。候補符号テーブルは、１つの基準フレームおよび５個の位相変更フレームを特定する０〜５の位相番号および、この６個の音響フレームの状態から得られる２値の符号を記録するものである。
【００８４】
続いて、符号判定パラメータ算出手段１４０は、符号判定処理を行う（Ｓ３０２）。ここで、符号判定処理の詳細を図１０に示す。まず、周波数変換手段１３０が、読み込んだ各音響フレームに対して、周波数変換を行ってフレームスペクトルを得る（Ｓ４０１）。具体的には、図２に示した周波数変換手段２０と同様、〔数式５〕に従った処理を実行する。ただし、〔数式５〕におけるＮをＮ´（＝Ｎ／２）に置き換えて実行する。また、〔数式５〕において用いるＷ（１，ｉ）〜Ｗ（３，ｉ）は、それぞれ〔数式１〕〜〔数式３〕におけるＮをＮ´（＝Ｎ／２）に置き換えたものを用いる。なお、抽出に用いるのは、左チャンネルだけであるので、上記〔数式５〕に従った処理を行い、左チャンネルに対応する変換データの実部Ａｌ（１，ｊ）等、虚部Ｂｌ（１，ｊ）等を得る。
【００８５】
上記周波数変換手段１３０における処理により、周波数に対応した成分であるスペクトルで表現されたフレームスペクトルが得られる。続いて、強度値ＥC1、強度値ＥC2を用いて、変更対象周波数帯の成分の状態がどのような状態であるか、すなわち、１ビットの値としてどのような値が埋め込まれていたかを判断する処理を行う（Ｓ４０２）。具体的には、まず、以下の判定処理を実行し、その結果、対応する状態であったと判断し、対応する値を出力する。
【００８６】
ＥC1＞ＥC2の場合、“状態１”であると判断し、値１を出力する。
ＥC2≧ＥC1の場合、“状態２”であると判断し、値２を出力する。
【００８７】
符号判定パラメータ算出手段１４０は、各音響フレーム単位で、上記判定結果に応じて値１、値２のいずれかを設定する（Ｓ４０３）。また、上記判定の結果、値１、値２のいずれかを設定した場合には、さらに、以下の〔数式１５〕に従って位相判定テーブルＳ（ｐ）の更新を行う（Ｓ４０４）。
【００８８】
〔数式１５〕
“状態１”であると判断し、値１を出力した場合、Ｓ（ｐ）←Ｓ（ｐ）＋ＥC1／ＥC2
“状態２”であると判断し、値２を出力した場合、Ｓ（ｐ）←Ｓ（ｐ）＋ＥC2／ＥC1
【００８９】
ここで、図９のフローチャートに戻って、符号判定パラメータ算出手段１４０は、候補符号テーブルに、最適位相となる候補を保存する（Ｓ３０４）。具体的には、位相判定テーブルに記録されているＳ（ｐ）の値が最大となる位相番号ｐの値、前記Ｓ４０３により設定された２値のいずれかの符号、その音響フレームについての上記〔数式１３〕に従った処理を実行することにより算出した、周波数成分に対応するＥC1、ＥC2のいずれかを最適位相の候補として候補符号テーブルに保存する。
【００９０】
続いて、全ての位相番号ｐに対応する処理を終えたかどうかを判定する（Ｓ３０５）。これは、ある基準フレームに対して全ての位相変更フレームの処理を行ったかどうかを判定している。本実施形態では、ｐが０〜５までの値をとるので、６回分処理していない場合は、処理していた音響フレームから所定サンプル数ずらして、位相の異なる音響フレームを設定し、Ｓ３０２に戻って処理を繰り返す。なお、ｐ＝０の場合が基準フレームであり、ｐ＝１〜５の場合が位相変更フレームである。全ての位相番号ｐに対応する処理を終えた場合は、候補保存テーブルに記録されている位相番号ｐに対応する位相が最適位相であると判定し、候補保存テーブルに記録されている符号を出力する（Ｓ３０６）。
【００９１】
続いて、位相決定ログの更新を行う（Ｓ３０７）。位相決定ログとは、１つの基準フレームと５つの位相変更フレームの組ごとに、決定された位相すなわち位相番号ｐを記録するものである。そして、位相決定ログを参照して、位相が過去所定回数同一であったかどうかを判断する（Ｓ３０８）。本実施形態では、この回数を１０回としている。位相が過去所定回数同一であった場合には、位相確定フラグをＯｎに設定する（Ｓ３０９）。これにより、同一位相が所定回数続いた場合には、必ず位相確定フラグがＯｎとなっているため、位相確定処理（Ｓ３０３〜Ｓ３０９）を行わず、符号判定処理（Ｓ３０２）のみを行うことになる。
【００９２】
再び図８のフローチャートに戻って説明する。位相確定および符号出力が行なわれたら、出力された符号の値に対応する１ビットをバッファに保存する（Ｓ２０３）。次に、ビットカウンタを“１”だけカウントアップする（Ｓ２０４）。
【００９３】
次に、ビットカウンタが１５以下であるか１６以上であるかを判断する（Ｓ２０５）。ビットカウンタが１５以下の場合は、Ｓ２０１に戻って、次の基準フレームを抽出する処理を行う。
【００９４】
ビットカウンタが１６以上である場合は、バッファに保存されたビット配列のうち前半８ビットと後半８ビットの適合性の判断を行う（Ｓ２０６）。すなわち、図６（ｃ）に示したように、１６ビット中先頭から１ビット目と１０ビット目、２ビット目と９ビット目、３ビット目と１２ビット目、４ビット目と１１ビット目、５ビット目と１４ビット目、６ビット目と１３ビット目、７ビット目と１６ビット目が互いに反転した値となっており、８ビット目と１５ビット目が一致しているかどうかの判断を行う。これらを満たしていれば適合していると判断し、満たしていなければ不適合と判断する。判断の結果、不適合である場合には、Ｓ２０１に戻って、次の基準フレームを抽出する処理を行う。判断の結果、適合している場合には、１６ビット中の前半８ビットについてパリティ検査を行う（Ｓ２０７）。具体的には、１６ビット中の前半８ビットを抽出し、そのうち前７ビットでパリティ計算を行い、その結果と８ビット目と照合を行う。パリティ検査が不合格の場合は、Ｓ２０１に戻って、次の基準フレームを抽出する処理を行う。
【００９５】
パリティ検査が合格の場合は、付加情報抽出手段１６０が、前半８ビット中の前７ビットに１ビット付加して出力する（Ｓ２０８）。ここで、パリティ検査が合格の場合は、照合に用いた８ビット目が誤り検出ビットであった可能性が高いことになる。そうすると、その前の７ビットは元の付加情報における７ビットであると考えられる。このため、その先頭からの７ビットにビット０を付加することによりＡＳＣＩＩコードにおける１ワードとして出力するのである。逆にパリティ検査が不合格の場合は、照合に用いた８ビット目が誤り検出ビットでない可能性が高いことになる。そうすると、その時点で保持している７ビットは、元の付加情報における７ビットからずれたものであると考えられる。この場合は、先頭の１ビットを破棄して、Ｓ２０１からＳ２０４の処理により得られた新たな１ビットを得るための処理を行うのである。
【００９６】
このようにパリティ検査を行い、これに合格した場合は、その部分がワードの区切りである可能性が高いので、それが本当に区切りであれば、以降は１６ビットずつ抽出すれば、全て正確にワード単位で抽出を行うことができる。逆に、パリティ検査に合格したとしても、それが偶然であり、実はワードの区切りではない場合も考えられる。このような場合は、次のパリティ検査の際に不合格となる可能性が高く、何回か繰り返しているうちに正しい区切りが正確に判断できることになる。Ｓ２０８において、前７ビットに１ビット付加して出力した場合には、ビットカウンタを０に初期化する（Ｓ２０９）。そして、Ｓ２０１に戻って、次の基準フレームを抽出する処理を行う。
【００９７】
図８に示す処理を各基準フレームに対して実行することにより、付加情報が抽出されることになる。Ｓ２０１において全ての基準フレームが抽出されたと判断された場合には、処理を終了する。
【００９８】
上記Ｓ２０８の処理において、付加情報抽出手段１６０は、まず、符号出力手段１５０により出力された値を、所定の規則により変換して意味のある付加情報として抽出する。所定の規則としては、情報を埋め込む者が意図した情報が受け取った者に認識可能な状態とできるものであれば、さまざまな規則が採用できるが、本実施形態では、ＡＳＣＩＩコードを採用している。すなわち、付加情報抽出手段１６０は、符号判定パラメータ算出手段１４０が判定し、符号出力手段１５０から出力される符号から得られるビット値の配列を１バイト（８ビット）単位で認識し、これをＡＳＣＩＩコードに従って文字情報を認識する。このようにして得られた文字情報は、表示装置（図示省略）の画面に表示出力される。
【００９９】
従って、埋め込み装置により音響信号に、その楽曲の曲名やアーチスト等の属性情報を文字情報として埋め込んでおけば、利用者は、その音楽が流れているのを聞いて、その曲名やアーチストを知りたいと思ったときに、抽出装置として機能する自身の携帯端末に所定の操作を行えば、自身の携帯端末の画面に曲名やアーチスト等の属性情報が文字情報として表示されることになる。
【０１００】
上記の例では、図８のフローチャートに従ってエラー訂正を行わない設定における抽出装置の処理動作を説明した。エラー訂正を行わない場合は、エラーが生じない場合にのみ、付加情報１ワードの出力が可能となる。例えば、図１２（ａ）に示すような正常な配列（図６（ｃ）の配列と同一）の場合、第１ビット〜第７ビットまでは、それぞれの反転ビットと照合を行い、第８ビットはその複写ビットと照合を行う。そして、その関係が適合している場合には、前半の第１ビット〜第８ビットにおいてパリティ検査を行う。図１２（ａ）の例では、第１ビット〜第８ビットと第９ビット〜第１６ビットが適合しており、前半の第１ビット〜第８ビットのパリティ検査も合格であるので、第１ビット〜第７ビットにビット０を付加することによりＡＳＣＩＩコードにおける１ワードとして出力する。
【０１０１】
次に、１ビットのエラー訂正をする設定における抽出装置の処理動作を、図１１のフローチャートに従って説明する。図１１においては、図８と同一処理を行う部分が含まれている。そこで、図８と同一処理を行う部分については、同一符号を付して説明を省略する。図１１の例においても、まず、初期化処理を行う（Ｓ２００）。この初期化処理では、図８の例と同様、位相判定テーブルＳ（ｐ）、位相決定ログ、位相確定フラグ、ビットカウンタを初期化するが、さらに、自動訂正モードをＯＦＦにする設定を行う。
【０１０２】
続いて、図８と同様、所定数のサンプルで構成される音響フレームを基準フレームとして抽出した後（Ｓ２０１）、読み込んだ各音響フレームについて、位相を特定した後、埋め込まれている情報を判定し、対応する符号を出力する（Ｓ２０２）。なお、Ｓ２０２の処理については、図９、図１０に示したようなものとなる。
【０１０３】
位相確定および符号出力が行なわれたら、出力された符号の値に対応する１ビットをバッファに保存して（Ｓ２０３）、ビットカウンタを“１”だけカウントアップする（Ｓ２０４）。そして、ビットカウンタが１５以下であるか１６以上であるかを判断し（Ｓ２０５）、ビットカウンタが１５以下の場合は、Ｓ２０１に戻って、次の基準フレームを抽出する処理を行う。
【０１０４】
ビットカウンタが１６以上である場合は、バッファに保存されたビット列のうち前半８ビットと後半８ビットの適合性の判断を行う（Ｓ２０６）。判断の結果、２ビット以上不適合の場合には、自動訂正モードをＯＦＦに設定した後（Ｓ２１０）、Ｓ２０１に戻って、次の基準フレームを抽出する処理を行う。
【０１０５】
一方、判断の結果、１ビット以下の不適合の場合には、さらに、適合か１ビットのみ不適合かを判断する。適合している場合には、１６ビット中の前半８ビットについてパリティ検査を行う（Ｓ２０７）。パリティ検査が合格の場合は、自動訂正モードをＯＮに設定した後（Ｓ２１１）、付加情報抽出手段１６０が、前半８ビット中の前７ビットに１ビット付加して出力する（Ｓ２０８）。
【０１０６】
１ビットのみ不適合の場合は、自動訂正モードがＯＮであるかＯＦＦであるかの判断を行う（Ｓ２１２）。自動訂正モードがＯＦＦである場合は、Ｓ２０１に戻って、次の基準フレームを抽出する処理を行う。自動訂正モードがＯＮである場合は、１６ビット中の前半８ビットについてパリティ検査を行う（Ｓ２０７）。パリティ検査が合格の場合は、付加情報抽出手段１６０が、前半８ビット中の前７ビットに１ビット付加して出力する（Ｓ２０８）。パリティ検査が不合格の場合は、前半の不適合ビットを反転訂正する（Ｓ２１３）。そして、付加情報抽出手段１６０が、前半８ビット中の前７ビットに１ビット付加して出力する（Ｓ２０８）。
【０１０７】
Ｓ２０８において、前７ビットに１ビット付加して出力した場合には、ビットカウンタを０に初期化する（Ｓ２０９）。そして、Ｓ２０１に戻って、次の基準フレームを抽出する処理を行う。
【０１０８】
図１１の例のように、１ビットのエラー訂正をする設定の場合は、１ビットのエラーが生じた場合であっても、付加情報１ワードの出力が可能となる。例えば、図１２（ｂ）に示すように、第５ビット反転がエラーとなっている場合を考えてみる。この場合、第５ビットと第５ビット反転が同一の値であり、反転の関係となっておらず、不適合となる。しかし、前半のパリティ検査は合格となるので、前半の８ビット中、前７ビットに１ビットを付加して出力される。
【０１０９】
次に、図１３（ａ）に示すように、第５ビットがエラーとなっている場合を考えてみる。この場合、第５ビットと第５ビット反転が同一の値であり、反転の関係となっておらず、不適合となる。さらに、前半のパリティ検査は不合格となるので、前半の不適合ビットである第５ビットを反転訂正した後、訂正後の８ビット中、前７ビットに１ビットを付加して出力される。
【０１１０】
次に、図１３（ｂ）に示すように、第８ビット複写がエラーとなっている場合を考えてみる。この場合、第８ビットと第８ビット複写が異なる値であり、複写の関係となっておらず、不適合となる。しかし、前半のパリティ検査は合格となるので、前半の８ビット中、前７ビットに１ビットを付加して出力される。
【０１１１】
次に、図１４（ａ）に示すように、第８ビットがエラーとなっている場合を考えてみる。この場合、第８ビットと第８ビット複写が異なる値であり、複写の関係となっておらず、不適合となる。さらに、前半のパリティ検査は不合格となるので、前半の不適合ビットである第８ビットを反転訂正した後、訂正後の８ビット中、前７ビットに１ビットを付加して出力される。
【０１１２】
後半ビット列において奇数番目のビットと偶数番目のビットを入れ替えた場合は、図６（ｃ）に示すように、前半ビット列の奇数番目のビットは９ビット離れたビットとの比較となり、前半ビット列の偶数番目のビットは７ビット離れたビットとの比較となる。すなわち、第１ビットは第１０ビット（第１ビット反転）、第２ビットは第９ビット（第２ビット反転）との比較を行うことになる。この場合、抽出時に、誤って第２ビットを先頭と判断すると、第１１ビットとの比較になり、これは第４ビット反転であるため、適合性が保たれない場合も多い。すると、第２ビットを先頭とした誤ったビット配列を抽出してしまう可能性が低くなる。このため、後半ビット列において奇数番目のビットと偶数番目のビットを入れ替えた場合、図６（ｂ）のように前半ビット列と後半ビット列における対応する各ビットの順序が同じである場合に比べると、誤認識が低く、より精度の高い抽出を行うことが可能となる。
【０１１３】
（１．５．位相補正処理について）
上記のように、抽出時には、埋め込み時に埋め込んだ音響フレームに対応して、音響信号を読み込むことができるとは限らない。そこで、音響フレームの位相をずらして複数通り（本実施形態では６通り）で読み込み、その中で最適な位相を決定し、その位相で特定される音響フレームに対応する符号を出力することにしている。例えば、６通りで読み込む場合、先頭の音響フレームは、本来サンプル番号１〜２０４８のサンプルであるが、サンプル番号１、３４２、６８４、１０２５、１３６６、１７０８から始まる２０４８のサンプルで構成される６個の各音響フレームに対して処理を行い、最適な音響フレームに対応する符号を出力することになる。なお、図９のフローチャートを用いて説明したように、本実施形態では、同一位相が所定回数連続した場合には、それ以降はその位相を確定したものとして処理を行う。
【０１１４】
（１．６．モノラル音響信号の場合）
上記実施形態においては、埋め込み装置、抽出装置のいずれにおいても、左右のチャンネルを有するステレオ音響信号の左チャンネル信号に付加情報を埋め込む場合を例にとって説明したが、逆に右チャンネル信号に付加情報を埋め込むようにしても良い。本発明は、左右の特性には無関係だからである。また、１つのチャンネルしかないモノラル音響信号に対して処理を行う場合は、上記実施形態において、左チャンネル信号に対して行った処理を行うことになる。本発明は、１つのチャンネル信号に対して付加情報を埋め込み、また抽出を行うので、モノラル音響信号であってもステレオ音響信号であっても同様に行うことができる。
【０１１５】
（１．７．信号成分が小さくても情報の埋め込みを確実に行う手法）
ここまでの説明のように、本発明では、元の信号成分の状態如何にかかわらず、常に変更対象周波数帯の信号成分を変更するものであるが、その成分の大きさは、両チャンネルの信号強度より大きくなることはない。このため、元の信号成分が存在しないか、または小さすぎる場合には、抽出に必要な信号成分が得られないため、情報の抽出を適切に行うことができず抽出エラーとなる。そこで、以下、元の信号成分が小さくても、情報の抽出を適切に行えるように信号の埋め込みを可能とする手法について説明する。
【０１１６】
この場合、図２に示した埋め込み装置における情報の埋め込み処理も、図５のフローチャートに従って行われる。
【０１１７】
したがって、Ｓ１０４における状態１、状態２に設定する処理としては、まず、以下の〔数式１６〕に従って算出される固定値Ｖを、変更対象周波数帯の成分の強度として設定する。
【０１１８】
〔数式１６〕
Ｖ＝｛０．５・Ｌｅｖ・Ｃ／Ｐ｝1/2
【０１１９】
そして、状態１とする場合は、上記〔数式８〕に従った処理を実行した後、以下の〔数式１７〕に従った処理を実行する。
【０１２０】
〔数式１７〕
ｊ＝ｍ〜Ｍ−１の各成分に対して
Ａｌ´（１，ｊ）＝Ｆ（ｊ−ｍ）・Ａｌ（１，ｊ）・Ｖ／｛Ａｌ（１，ｊ）2＋Ｂｌ（１，ｊ）2｝1/2
Ｂｌ´（１，ｊ）＝Ｆ（ｊ−ｍ）・Ｂｌ（１，ｊ）・Ｖ／｛Ａｌ（１，ｊ）2＋Ｂｌ（１，ｊ）2｝1/2
【０１２１】
状態２とする場合は、上記〔数式９〕に従った処理を実行した後、以下の〔数式１８〕に従った処理を実行する。
【０１２２】
〔数式１８〕
ｊ＝ｍ〜Ｍ−１の各成分に対して
Ａｌ´（３，ｊ）＝Ｆ（ｊ−ｍ）・Ａｌ（３，ｊ）・Ｖ／｛Ａｌ（３，ｊ）2＋Ｂｌ（３，ｊ）2｝1/2
Ｂｌ´（３，ｊ）＝Ｆ（ｊ−ｍ）・Ｂｌ（３，ｊ）・Ｖ／｛Ａｌ（３，ｊ）2＋Ｂｌ（３，ｊ）2｝1/2
【０１２３】
上記のように、周波数成分が小さい場合に情報を埋め込んだ場合であっても、抽出側の、音響信号からの情報の抽出装置の構成は図７と同一であり、処理動作は図８〜図１１のフローチャートに従ったものと同一である。
【０１２４】
（２．第２の実施形態）
次に、第２の実施形態について説明する。第２の実施形態では、図１５に示すように、音響フレームの変更対象周波数帯の成分を４つの状態に変更し、２ビットの情報を埋め込むことを特徴とする。
【０１２５】
図１５に示す各音響フレームにおいても、図１と同様、横軸は時間方向、縦軸は周波数方向を示している。また、網掛けされた部分は、周波数成分が存在している部分を示し、網掛けが濃いほど成分強度が強いことを示している。図１５においても、図１と同様、所定周波数範囲（変更対象周波数帯）はＦ１以上Ｆ２以下に設定されているが、図１５においては、変更対象周波数帯がＦ１とＦ２の中間において２つに区分されている。したがって、図１５に示すように、縦軸の周波数方向において、周波数領域が４つに区分されている。
【０１２６】
本実施形態で、符号１、符号２を埋め込む場合は、図１５（ｂ）（ｃ）に示すように、図１（ｂ）（ｃ）に示した第１の実施形態と同様に処理が行われる。
【０１２７】
符号３を埋め込む場合、図１５（ｄ）に示すように、Ｌ-chの信号の前部の上位周波数成分と後部の下位周波数成分を除去し、除去した成分と同等の成分をＲ-chの信号に加算する。また、Ｌ-chの信号の変更対象周波数帯の下位周波数成分と後部の上位周波数成分の強度を高め、Ｒ-chの信号の対応する各スペクトル集合の強度を弱めている。この状態を“状態３”と呼ぶことにする。符号４を埋め込む場合は、図１５（ｅ）に示すように、Ｌ-chの信号の変更対象周波数帯の前部の下位周波数成分と後部の上位周波数成分を除去し、除去した成分と同等の成分をＲ-chの信号に加算する。また、Ｌ-chの信号の変更対象周波数帯の前部の上位周波数成分と後部の下位周波数成分の強度を高め、Ｒ-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｝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
【０１３３】
上記〔数式１９〕においては、ｊ＝ｍ〜ｍ＋Ｐ−１、ｍ＋Ｐ〜Ｍ−１において、Ａｌ´（３，ｊ）、Ｂｌ´（３，ｊ）を共に０としている。これは、図１５（ｂ）の上段に示すように、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｝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
【０１３５】
上記〔数式２０〕においては、ｊ＝ｍ〜ｍ＋Ｐ−１、ｍ＋Ｐ〜Ｍ−１において、Ａｌ´（１，ｊ）、Ｂｌ´（１，ｊ）を共に０としている。これは、図１５（ｃ）の上段に示すように、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｝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
【０１３７】
上記〔数式２１〕においては、ｊ＝ｍ〜ｍ＋Ｐ−１においてＡｌ´（３，ｊ）、Ｂｌ´（３，ｊ）を共に０とし、ｊ＝ｍ＋Ｐ〜Ｍ−１においてＡｌ´（１，ｊ）、Ｂｌ´（１，ｊ）を共に０としている。これは、図１５（ｄ）の上段に示すように、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｝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
【０１３９】
上記〔数式２２〕においては、ｊ＝ｍ〜ｍ＋Ｐ−１においてＡｌ´（１，ｊ）、Ｂｌ´（１，ｊ）を共に０とし、ｊ＝ｍ＋Ｐ〜Ｍ−１においてＡｌ´（３，ｊ）、Ｂｌ´（３，ｊ）を共に０としている。これは、図１５（ｅ）の上段に示すように、L-chにおいて、ＳＰ１Ｄ、ＳＰ３Ｕ内の各成分を０にすることを示しているが、“状態４”はＳＰ３Ｄ、ＳＰ１Ｕとの差を明確にすることができれば十分であるため、必ずしも０にする必要はなく、小さな値であれば良い。
【０１４０】
また、第２の実施形態においても第１の実施形態と同様、周波数成分変更手段３０は、Ｂタイプの音響フレームについては、上記〔数式１０〕に従った処理を実行し、常にその変更対象周波数帯の成分を除去する。周波数成分変更手段３０により上記のような処理が行われたら、周波数逆変換手段４０、改変音響フレーム出力手段５０については、第１の実施形態と同様の処理が行われる。
【０１４１】
第２の実施形態における音響信号に対する情報の埋め込み装置の処理の全体的な流れについては、第１の実施形態と基本的には同じであるが、図５のフローチャートにおいて、Ｓ１０２のレジスタからの読み込みが２ビット単位である点、Ｓ１０４で状態１〜状態４のいずれかに設定する点で異なっている。
【０１４２】
（２．２．抽出装置）
第２の実施形態においても、抽出装置の構成は図７に示したものと同様であるが、主に符号判定パラメータ算出手段１４０の内容が異なっている。具体的には、符号判定パラメータ算出手段１４０は、生成されたフレームスペクトルから所定周波数範囲に相当する各周波数強度データを抽出し、各成分に対応した各周波数強度データの強度値ＥC1〜ＥC4を以下の〔数式２３〕に基づいて算出し、この強度値ＥC1〜ＥC4を符号判定パラメータとし、この符号判定パラメータＥC1〜ＥC4の比率等に基づいて、所定の状態であると判断する機能を有している。
【０１４３】
〔数式２３〕
ＥC1＝Σj=m,…,m+P-1｛Ａｌ（１，ｊ）2＋Ｂｌ（１，ｊ）2｝・Ｆ（ｊ−ｍ）・Ｃ
ＥC2＝Σj=m,…,m+P-1｛Ａｌ（３，ｊ）2＋Ｂｌ（３，ｊ）2｝・Ｆ（ｊ−ｍ）・Ｃ
ＥC3＝Σj=m+P,…,M-1｛Ａｌ（１，ｊ）2＋Ｂｌ（１，ｊ）2｝・Ｆ（ｊ−ｍ−Ｐ）・Ｃ
ＥC4＝Σj=m+P,…,M-1｛Ａｌ（３，ｊ）2＋Ｂｌ（３，ｊ）2｝・Ｆ（ｊ−ｍ−Ｐ）・Ｃ
【０１４４】
第２の実施形態における音響信号からの情報の抽出装置の処理の全体的な流れについては、第１の実施形態と基本的には同じであるが、図８のフローチャートにおいて、Ｓ２０２から値１〜値４が出力される点、Ｓ２０６においてビットカウンタに２だけ加算される点が異なっている。
【０１４５】
また、ステップＳ２０２の位相確定および符号出力についても、第１の実施形態と同様、図９、図１０のフローチャートに従って行われる。ただし、図１０のＳ４０２〜Ｓ４０４の処理は、第１の実施形態とは異なっているので、以下に説明する。
【０１４６】
図１０の周波数成分の状態判定においては、符号判定パラメータ算出手段１４０は、強度値ＥC1〜強度値ＥC4を用いて、周波数成分の状態がどのような状態であるか、すなわち、２ビットの値としてどのような値が埋め込まれていたかを判断する処理を行う（Ｓ４０２）。具体的には、以下の４群の判定処理を実行し、各群における全ての条件を満たす場合に、対応する状態であったと判断し、対応する２ビットの値を出力する。
【０１４７】
ＥC1＞ＥC2かつＥC1＞ＥC4かつＥC3＞ＥC2かつＥC3＞ＥC4の場合、“状態１”であると判断し、値１を出力する。
【０１４８】
ＥC2＞ＥC1かつＥC2＞ＥC3かつＥC4＞ＥC1かつＥC4＞ＥC3の場合、“状態２”であると判断し、値２を出力する。
【０１４９】
ＥC1＞ＥC2かつＥC1＞ＥC3かつＥC4＞ＥC2かつＥC4＞ＥC3の場合、“状態３”であると判断し、値３を出力する。
【０１５０】
上記いずれにも該当しない場合、“状態４”であると判断し、値４を出力する。
【０１５１】
そして、符号判定パラメータ算出手段１４０は、各音響フレーム単位で、上記判定結果に応じて値１〜値４のいずれかを設定する（Ｓ４０３）。
【０１５２】
また、上記判定の結果、値１〜値４のいずれかを設定した場合には、さらに、以下の〔数式２４〕に従って位相判定テーブルＳ（ｐ）の更新を行う（Ｓ４０４）。
【０１５３】
〔数式２４〕
“状態１”であると判断し、値１を出力した場合、Ｓ（ｐ）←Ｓ（ｐ）＋ＥC1＋ＥC3
“状態２”であると判断し、値２を出力した場合、Ｓ（ｐ）←Ｓ（ｐ）＋ＥC2＋ＥC4
“状態３”であると判断し、値３を出力した場合、Ｓ（ｐ）←Ｓ（ｐ）＋ＥC1＋ＥC4
“状態４”であると判断し、値４を出力した場合、Ｓ（ｐ）←Ｓ（ｐ）＋ＥC2＋ＥC3
【０１５４】
図９においては、符号判定パラメータ算出手段１４０は、候補符号テーブルに、最適位相となる候補を保存する（Ｓ３０４）。具体的には、位相判定テーブルに記録されているＳ（ｐ）の値が最大となる位相番号ｐの値、前記Ｓ４０７、Ｓ４０８により判定された４値のいずれかの符号、その音響フレームについての上記〔数式２３〕に従った処理を実行することにより算出した、変更対象周波数帯の成分に対応する各ＥC1〜ＥC4の値を最適位相の候補として候補符号テーブルに保存する。
【０１５５】
続いて、全ての位相番号ｐに対応する処理を終えたかどうかを判定する（Ｓ３０５）。これは、ある基準フレームに対して全ての位相変更フレームの処理を行ったかどうかを判定している。本実施形態では、ｐが０〜５までの値をとるので、６回分処理していない場合は、処理していた音響フレームから所定サンプル数ずらして、位相の異なる音響フレームを設定し、Ｓ３０２に戻って処理を繰り返す。なお、ｐ＝０の場合が基準フレームであり、ｐ＝１〜５の場合が位相変更フレームである。全ての位相番号ｐに対応する処理を終えた場合は、候補保存テーブルに記録されている位相番号ｐに対応する位相が最適位相であると判定し、候補保存テーブルに記録されている符号を出力する（Ｓ３０６）。
【０１５６】
図８において、パリティ検査の結果、合格の場合には、付加情報抽出手段１６０が、前７ビットに１ビット付加して出力する（Ｓ２０８）。ここで、検査結果が合格の場合は、照合に用いた８ビット目が誤り検出ビットであった可能性が高いことになる。そうすると、その前の７ビットは元の付加情報における７ビットであると考えられる。このため、その先頭からの７ビットにビット０を付加することによりＡＳＣＩＩコードにおける１ワードとして出力するのである。逆に不一致である場合は、照合に用いた８ビット目が誤り検出ビットでない可能性が高いことになる。そうすると、その時点で保持している７ビットは、元の付加情報における７ビットからずれたものであると考えられる。この場合は、先頭の２ビットを破棄して、Ｓ２０１からＳ２０６の処理により得られた新たな２ビットを得るための処理を行う。
【０１５７】
上記Ｓ２０８の処理において、付加情報抽出手段１６０は、付加情報抽出手段１６０は、符号判定パラメータ算出手段１４０が判定し、符号出力手段１５０から出力される符号から得られるビット値の配列を１バイト（８ビット）単位で認識し、これをＡＳＣＩＩコードに従って文字情報を認識し、表示装置（図示省略）の画面に表示出力する。
【０１５８】
（２．３．信号成分が小さくても情報の埋め込みを確実に行う手法）
上記の処理は、変更対象周波数帯の信号成分がいずれの大きさであっても実行されるが、元の信号成分が存在しないか、または小さすぎる場合には、抽出に必要な信号成分が得られないため、情報の抽出を適切に行うことができず抽出エラーとなる。そこで、元の信号の変更対象周波数帯の成分が小さくても、情報の抽出を適切に行えるように信号の埋め込みを可能とする手法について説明する。
【０１５９】
この場合、図２に示した埋め込み装置における情報の埋め込み処理も、図５のフローチャートに従って行われる。
【０１６０】
したがって、Ｓ１０４における状態１〜状態４に設定する処理としては、まず、以下の〔数式２５〕に従って算出される固定値Ｖを、変更対象周波数帯の成分の強度として設定する。
【０１６１】
〔数式２５〕
Ｖ＝｛０．５・Ｌｅｖ・Ｃ／Ｐ｝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
【０１７０】
（３．携帯電話機を抽出装置として用いる場合）
上記実施形態では、抽出装置における１音響フレームのサンプル数Ｎ´をＮ／２とした場合について説明した。これは、上述のように、携帯ゲーム機、ＰＤＡ、ＰＨＳ端末等を抽出装置のハードウェアとして採用した場合、サンプリング周波数が元の音響信号のサンプリング周波数の１／２となるため、１音響フレームの秒数を合わせるためにサンプル数も１／２にする必要があるからである。通常の携帯電話機を抽出装置として採用する場合には、携帯電話機の録音機能がサンプリング周波数８ｋＨｚであるため、１音響フレームのサンプル数もこれに比例させて、７４３個とする必要がある。
【０１７１】
このようにサンプル数Ｎ´＝７４３とする場合、図８のフローチャートにおいて、基準フレーム獲得手段１１０は、音響信号入力手段１００から入力された音響信号から、７４３個のサンプルで構成される音響フレームを基準フレームとして抽出する（Ｓ２０１）。したがって、音響フレーム保持手段１７０には、常に基準フレーム２個分（連続する１４８６サンプル）が格納されていることになる。
【０１７２】
埋め込み装置で処理する音響フレームは、上記実施形態と同様、先頭から途切れることなく隣接して設定される基準フレームと、この基準フレームと位相を変更した位相変更フレームとに分けられる。
【０１７３】
また、図１０のＳ４０１においては、周波数変換手段１３０が、読み込んだ各音響フレームに対して周波数変換を行ってスペクトルを得るが、この際、〔数式５〕におけるＮを１０２４に置き換えて実行する。このとき、〔数式５〕におけるサンプルＸｌ（ｉ）、Ｘｒ（ｉ）は、ｉ＝７４３〜１０２３までは全てダミーであり、その値は“０”が用いられる。なお、〔数式５〕において用いるＷ（１，ｉ）〜Ｗ（３，ｉ）は、それぞれ〔数式１〕〜〔数式３〕におけるＮを７４３に置き換えたものを用いる。〔数式５〕において、Ｎを７４３ではなく１０２４とするのは、周知の高速フーリエ変換アルゴリズム（ＦＦＴ）を用いて〔数式５〕と同等な計算を高速に実行する方法をとるためで、ＦＦＴではＮを２の累乗という制約条件で高速化をはかっている理由からである。従って、〔数式５〕の離散フーリエ変換を計算式通りに実行する場合には、Ｎをそのまま７４３に設定して行うことができるがＦＦＴに比べ２桁強の計算負荷を要し、まして本発明のようにＣＰＵ性能の限られた携帯端末で実行する用途には適さない。また、ＦＦＴは携帯端末上で各種映像・音声データを復号・再生するのにも必須の信号処理であるため、専用ハードウェアが実装されている携帯端末も少なくなく、ＦＦＴを用いればＣＰＵ性能が低くても専用ハードウェアにより汎用ＰＣ並みの速度で実行できる可能性もある。
【０１７４】
Ｓ４０２においては、強度値ＥC1、強度値ＥC2を用いて、変更対象周波数帯の成分の状態がどのような状態であるかを判断する処理を行うが、〔数式１３〕による強度値ＥC1、強度値ＥC2の算出の際、ｍ＝２２０、Ｍ＝４４１として実行する。また、上記第２の実施形態における〔数式２３〕による強度値ＥC1〜ＥC4の算出の際も、ｍ＝２２０、Ｍ＝４４１として実行する。これは、１音響フレームのサンプル数７４３ではなく、１０２４個のサンプルを用いてフーリエ変換を行うことによるずれのため、ｊ＝２２０（＝１６０×１０２４／７４３）が１．７ｋＨｚに相当し、ｊ＝４４１（＝３２０×１０２４／７４３）が３．４ｋＨｚに相当するためである。その他については、Ｎ´＝Ｎ／２の場合と同様に処理が行われる。
【０１７５】
ここで、埋め込み時、サンプリング周波数２２．０５ｋＨｚに対応した抽出時、サンプリング周波数８ｋＨｚに対応した抽出時の周波数領域の概念を図１６に示す。図１６において、縦軸は周波数である。また、各ブロックの右側に示した数字は周波数に比例するｊの値である。
【０１７６】
埋め込み時には、４０９６サンプルを対象としてフーリエ変換を実行するため、２０４８通りの周波数成分の値が得られ、これは０Ｈｚ〜２２．０５ｋＨｚに対応する。このうち、１．７ｋＨｚ〜３．４ｋＨｚに対応するｊ＝１６０〜３２０の間にデータの埋め込みが行われ、その他は原音維持となる。
【０１７７】
サンプリング周波数２２．０５ｋＨｚに対応した抽出時には、２０４８サンプルを対象としてフーリエ変換を実行するため、１０２４通りの周波数成分の値が得られ、これは０Ｈｚ〜１１．０２５ｋＨｚに対応する。このうち、１．７ｋＨｚ〜３．４ｋＨｚに対応するｊの値は結果的に、埋め込み時、サンプリング周波数２２．０５ｋＨｚの抽出時と同様に、ｊ＝１６０〜３２０の間よりデータの抽出が行われ、その他は無視される。
【０１７８】
サンプリング周波数８ｋＨｚに対応した抽出時には、１音響フレームは、７４３サンプルとなるが、上述のように、ダミーのサンプルを付加して１０２４サンプルを対象としてフーリエ変換を実行するため、５１２通りの周波数成分の値が得られる。サンプリング周波数が８ｋＨｚであるため、これらの値は０Ｈｚ〜４ｋＨｚに対応する。このため、１．７ｋＨｚ〜３．４ｋＨｚに対応するｊの値は、埋め込み時、サンプリング周波数２２．０５ｋＨｚの抽出時とは異なり、ｊ＝２２０〜４４１となる。このｊ＝２２０〜４４１の間よりデータの抽出が行われ、その他は無視される。
【０１７９】
また、埋め込み時、抽出時の信号波形の様子を図１７に示す。図１７において、横軸は時間軸、縦軸は振幅強度を示している。埋め込み時には、図２に示した埋め込み装置により、図１７（ａ）に示すような４４．１ｋＨｚでサンプリングされた音響信号に対して、埋め込み処理が行われ、図１７（ｂ）に示すような音響信号が得られる。そして、図７に示した抽出装置により、２２．０５ｋＨｚまたは８ｋＨｚでサンプリングされ、図１７（ｃ）に示すような音響信号が得られる。そして、１音響フレームを埋め込み時の音響フレームと同一時間となるように設定して、抽出処理を行う。
【０１８０】
（４．その他）
以上、本発明の好適な実施形態について限定したが、本発明は上記実施形態に限定されず、種々の変形が可能である。例えば、上記実施形態では、１音響フレームのサンプル数Ｎ＝４０９６としたが、Ｎ＝２０４８、１０２４、５１２等を設定するようにしても良い。これにより、同一時間あたりの音響フレーム数が、２倍、４倍、８倍となり、全体として２〜８倍の情報の埋め込みが可能となる。
【０１８１】
また、上記実施形態では、後半ビット列の各ビットを隣接する奇数番目と偶数番目のビットの順序を入れ替えるようにしたが、必ずしもこのようにする必要はなく、抽出側との取り決めがなされていれば、他の何らかの規則で順序を入れ替えるようにしても良い。
【図面の簡単な説明】
【０１８２】
【図１】第１の実施形態における変更対象周波数帯の成分の変化の状態を示す図である。
【図２】音響信号に対する情報の埋め込み装置の機能ブロック図である。
【図３】本発明で用いる時間方向窓関数を示す図である。
【図４】本発明で用いる周波数方向窓関数Ｆ（ｊ）を示す図である。
【図５】図２に示した装置の処理概要を示すフローチャートである。
【図６】ビット配列の作成の様子を示す図である。
【図７】本発明に係る音響信号からの情報の抽出装置の機能ブロック図である。
【図８】図７に示した装置の、エラー訂正を行わない設定における処理概要を示すフローチャートである。
【図９】図８のＳ２０２の位相確定および符号出力の詳細を示すフローチャートである。
【図１０】図９のＳ３０２の符号判定処理の詳細を示すフローチャートである。
【図１１】図７に示した装置の、１ビットのエラー訂正をする設定における処理概要を示すフローチャートである。
【図１２】付加情報１ワードに相当する１６ビット配列の適合およびパリティ検査を説明するための図である。
【図１３】付加情報１ワードに相当する１６ビット配列の適合およびパリティ検査を説明するための図である。
【図１４】付加情報１ワードに相当する１６ビット配列の適合およびパリティ検査を説明するための図である。
【図１５】第２の実施形態における周波数成分の変化の状態を示す図である。
【図１６】埋め込み時、サンプリング周波数２２．０５ｋＨｚの抽出時、サンプリング周波数８ｋＨｚの抽出時の周波数領域の概念を示す図である。
【図１７】埋め込み時、抽出時の信号波形の様子を示す図である。
【符号の説明】
【０１８３】
１０・・・音響フレーム読込手段
２０・・・周波数変換手段
３０・・・周波数成分変更手段
４０・・・周波数逆変換手段
５０・・・改変音響フレーム出力手段
６０・・・記憶手段
６１・・・音響信号記憶部
６２・・・付加情報記憶部
６３・・・改変音響信号記憶部
７０・・・ビット配列作成手段
１００・・・音響信号入力手段
１１０・・・基準フレーム獲得手段
１２０・・・位相変更フレーム設定手段
１３０・・・周波数変換手段
１４０・・・符号判定パラメータ算出手段
１５０・・・符号出力手段
１６０・・・付加情報抽出手段
１７０・・・音響フレーム保持手段
【図１】
2008170828.tif 000003
【図２】
2008170828.tif 000004
【図３】
2008170828.tif 000005
【図４】
2008170828.tif 000006
【図５】
2008170828.tif 000007
【図６】
2008170828.tif 000008
【図７】
2008170828.tif 000009
【図８】
2008170828.tif 000010
【図９】
2008170828.tif 000011
【図１０】
2008170828.tif 000012
【図１１】
2008170828.tif 000013
【図１２】
2008170828.tif 000014
【図１３】
2008170828.tif 000015
【図１４】
2008170828.tif 000016
【図１５】
2008170828.tif 000017
【図１６】
2008170828.tif 000018
【図１７】
2008170828.tif 000019