(57)【要約】【課題】頑健性が高く且つコストが低い音響透かしを実現する。【解決手段】本方法は、データ格納部に格納された第１の音響データを当該第１の音響データの周波数成分を表すデータに変換するステップと、第１の音響データの周波数成分のうち、埋め込むべきビット値に対応する固定周波数の周波数成分を低減させる低減ステップと、低減ステップ後の周波数成分を表すデータから、第２の音響データを生成し、データ格納部に格納するステップとを含む。【選択図】図１
2014092677.tif 000002
【特許請求の範囲】
【請求項１】
データ格納部に格納された第１の音響データを当該第１の音響データの周波数成分を表すデータに変換するステップと、
前記第１の音響データの周波数成分のうち、埋め込むべきビット値に対応する固定周波数の周波数成分を低減させる低減ステップと、
前記低減ステップ後の周波数成分を表すデータから、第２の音響データを生成し、前記データ格納部に格納するステップと、
を、コンピュータに実行させるためのプログラム。
【請求項２】
前記固定の周波数が、複数の周波数である
請求項１記載のプログラム。
【請求項３】
前記複数の周波数の間隔が、周波数が高くなるにつれて広くなる
請求項２記載のプログラム。
【請求項４】
前記固定の周波数が、各々所定の幅を有する複数の周波数帯域である
請求項１又は２記載のプログラム。
【請求項５】
前記所定の幅が、周波数が高くなるにつれて広くなる
請求項４記載のプログラム。
【請求項６】
前記固定の周波数成分が所定のレベルより小さい場合には、白色ノイズを前記第１の音響データの周波数成分に加えるステップ
をさらに含む請求項１乃至５のいずれか１つ記載のプログラム。
【請求項７】
データ格納部に格納された第１の音響データを当該第１の音響データの周波数成分を表すデータに変換するステップと、
前記第１の音響データの周波数成分のうち、第１のビット値に対応する固定周波数の周波数成分が、当該第１のビット値に対応する固定周波数の隣接周波数の周波数成分に比して低減された状態であるか否かと、第２のビット値に対応する固定周波数の周波数成分が、当該第２のビット値に対応する固定周波数の周波数成分に比して低減された状態であるか否かとのうち少なくともいずれかを判断して、埋め込まれたビット値又はビット埋め込みの有無を特定するステップと、
を、コンピュータに実行させるためのプログラム。
【請求項８】
前記固定の周波数が、複数の周波数である
請求項７記載のプログラム。
【請求項９】
前記複数の周波数の間隔が、周波数が高くなるにつれて広くなる
請求項８記載のプログラム。
【請求項１０】
前記固定周波数と前記隣接周波数との差が、周波数が高くなるにつれて大きくなる
請求項８又は９記載のプログラム。
【請求項１１】
集音部を介して入力された前記第１の音響データを前記データ格納部に格納するステップ
をさらに含む請求項７乃至１０のいずれか１つ記載のプログラム。
【請求項１２】
データ格納部に格納された第１の音響データを当該第１の音響データの周波数成分を表すデータに変換するステップと、
前記第１の音響データの周波数成分のうち、埋め込むべきビット値に対応する固定周波数の周波数成分を低減させる低減ステップと、
前記低減ステップ後の周波数成分を表すデータから、第２の音響データを生成し、前記データ格納部に格納するステップと、
を含み、コンピュータにより実行されるデータ埋め込み方法。
【請求項１３】
データ格納部に格納された第１の音響データを当該第１の音響データの周波数成分を表すデータに変換する変換部と、
前記第１の音響データの周波数成分のうち、埋め込むべきビット値に対応する固定周波数の周波数成分を低減させる低減部と、
前記低減ステップ後の周波数成分を表すデータから、第２の音響データを生成し、前記データ格納部に格納する逆変換部と、
を有するデータ埋め込み装置。
【請求項１４】
データ格納部に格納された第１の音響データを当該第１の音響データの周波数成分を表すデータに変換するステップと、
前記第１の音響データの周波数成分のうち、第１のビット値に対応する固定周波数の周波数成分が、当該第１のビット値に対応する固定周波数の隣接周波数の周波数成分に比して低減された状態であるか否かと、第２のビット値に対応する固定周波数の周波数成分が、当該第２のビット値に対応する固定周波数の周波数成分に比して低減された状態であるか否かとのうち少なくともいずれかを判断して、埋め込まれたビット値又はビット埋め込みの有無を特定するステップと、
を含み、コンピュータにより実行される検出方法。
【請求項１５】
データ格納部に格納された第１の音響データを当該第１の音響データの周波数成分を表すデータに変換する変換部と、
前記第１の音響データの周波数成分のうち、第１のビット値に対応する固定周波数の周波数成分が、当該第１のビット値に対応する固定周波数の隣接周波数の周波数成分に比して低減された状態であるか否かと、第２のビット値に対応する固定周波数の周波数成分が、当該第２のビット値に対応する固定周波数の周波数成分に比して低減された状態であるか否かとのうち少なくともいずれかを判断して、埋め込まれたビット値又はビット埋め込みの有無を特定する処理部と、
を有する携帯端末。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、音響データに対するデータ埋め込み技術及び埋め込みデータの検出技術に関する。
【背景技術】
【０００２】
音にデジタルデータを埋め込む技術のことを音響透かしという。音響透かし技術は主にデジタルオーディオデータの不正コピーを防止する目的で開発されてきたが、近年、デジタルサイネージや拡張現実（ＡＲ：Augmented Reality）等、新たな用途の比重が高まりつつある。
【０００３】
例えば、ショッピングモール、チェーン店その他等を展開する小売業者が集客用のツールとしてスマートフォンを用いたスタンプラリーやポイント付与等のキャンペーンを展開することが考えられるが、顧客が実際に店舗まで足を運ぶインセンティブとして音響透かし技術が用いられる場合がある。具体的には、特定のデータが埋め込まれた音を店舗で放出し、顧客がスマートフォンを用いてその音からデータを入手するというような仕組みが採用される場合がある。また、データの使い分けにより、環境や場面に直結した演出が可能になるため、ＡＲ効果へのトリガーとしても利用できる。  
【０００４】
このような用途に音響透かし技術を利用する場合、不正コピー防止を目的とする従来の音響透かし技術に比べ、期待される特徴が異なる。例えば、音質や秘匿性といった特徴の優先度を若干低くした上で、スピーカ及びマイク系（ＤＡ（Digital Analog）変換、空間伝達、ＡＤ（Analog Digital）変換）を介しても十分な頑健性を保つことが重要視される。
【０００５】
具体的に求められるのは、音に有限長のビット列を埋め込み、その音をスピーカで放出し、マイクで集音したとき、集音された音から埋め込まれたビット列を検出する機能である。店舗においては、様々な雑音が存在しており、頑健性はかなり優先されるが、それであっても、音が聴感上大幅に変化してしまっては問題がある。また、埋め込まれた音響データの生成処理及び埋め込みデータのデータ検出処理にかかる演算量が多いのも問題となる。
【０００６】
なお、音響透かし技術には様々なものが存在しているが、音に何らかの信号を加える方式は、聴覚的に悪影響を与える方式であり、あまり好ましくない。また、ノイズ成分の影響を防ぐ試みとして高周波数帯域を利用することが多いが、より高価な再生及び集音設備を用いることになる場合がある。さらに、音響データのスペクトルにおけるピークを検出し、そのピークからオクターブ隔てた成分を消去する技術も存在する。しかしながら、スペクトルピークの検出処理には一定の演算量が必要であり、コストの上昇につながる。また、スペクトルピークを検出すること自体が難しい平坦なスペクトルを有する場合には、適用しづらい。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００１−１４８６７０号公報
【特許文献２】特許第４３１０１４５号公報
【非特許文献】
【０００８】
【非特許文献１】Hosei Matsuoka, Yusuke Nakashima, Takeshi Yoshimura, "Acoustic OFDM system and its extension", The Visual Computer: International Journal of Computer Graphics archive Volume 25 Issue 1, December 2008, Pages 3-12
【発明の概要】
【発明が解決しようとする課題】
【０００９】
本発明の目的は、一側面によれば、頑健性が高く且つコストが低い音響透かし技術を提供することである。
【課題を解決するための手段】
【００１０】
本発明の第１の態様に係るデータ埋め込み方法は、（Ａ）データ格納部に格納された第１の音響データを当該第１の音響データの周波数成分を表すデータに変換するステップと、（Ｂ）第１の音響データの周波数成分のうち、埋め込むべきビット値に対応する固定周波数の周波数成分を低減させる低減ステップと、（Ｃ）低減ステップ後の周波数成分を表すデータから、第２の音響データを生成し、データ格納部に格納するステップとを含む。
【００１１】
周波数成分を低減させる周波数が固定で予め決定されているので演算コストを削減でき、周波数成分を低減させているので頑健性も高くなる。なお、周波数成分の低減は削除を含む。
【００１２】
なお、上で述べた固定の周波数が、複数の周波数である場合もある。これにて、頑健性がさらに高くなる。
【００１３】
また、上で述べた複数の周波数の間隔が、周波数が高くなるにつれて広くなるようにしても良い。低減ステップが人間の聴覚に与える影響を抑制することができるようになる。
【００１４】
さらに、上で述べた固定の周波数が、各々所定の幅を有する複数の周波数帯域である場合もある。より頑健性が高くなる。
【００１５】
また、上で述べた所定の幅が、周波数が高くなるにつれて広くなるようにしても良い。これによって低減ステップが人間の聴覚に与える影響を抑制しつつ頑健性を高くすることができるようになる。
【００１６】
さらに、上で述べたデータ埋め込み方法は、上で述べた固定の周波数成分が所定のレベルより小さい場合には、白色ノイズを第１の音響データの周波数成分に加えるステップをさらに含むようにしても良い。これによって、低減ステップの実施可能性を保証できるようになる。
【００１７】
本発明の第２の態様に係る検出方法は、（Ａ）データ格納部に格納された第１の音響データを当該第１の音響データの周波数成分を表すデータに変換するステップと、（Ｂ）第１の音響データの周波数成分のうち、第１のビット値に対応する固定周波数の周波数成分が、当該第１のビット値に対応する固定周波数の隣接周波数の周波数成分に比して低減された状態であるか否かと、第２のビット値に対応する固定周波数の周波数成分が、当該第２のビット値に対応する固定周波数の周波数成分に比して低減された状態であるか否かとのうち少なくともいずれかを判断して、埋め込まれたビット値又はビット埋め込みの有無を特定するステップとを含む。
【００１８】
このように固定周波数の周波数成分及びその隣接周波数の周波数成分を評価すればよいので、検出が容易になる。なお、評価方法については、様々な方法が採用可能である。
【００１９】
なお、上で述べた固定の周波数が、複数の周波数である場合もある。これによって頑健性が向上する。この場合、評価方法としては、適切な関数を用意して当該関数の出力である評価値に基づき行っても良いし、周波数成分同士を比較して多数決などで決定しても良い。
【００２０】
さらに、上で述べた複数の周波数の間隔が、周波数が高くなるにつれて広くなる場合もある。人間の聴覚への影響を考慮したものである。
【００２１】
さらに、固定周波数と隣接周波数との差が、周波数が高くなるにつれて大きくなる場合もある。適切に周波数成分の比較を行うようにするためである。
【００２２】
また、上で述べた検出方法は、集音部を介して入力された第１の音響データをデータ格納部に格納するステップをさらに含むようにしても良い。上でも述べたように、スピーカから出力され集音部（例えばマイク）により集音された音響データについても対応できる。
【００２３】
なお、上記方法をコンピュータに行わせるためのプログラムを作成することができ、当該プログラムは、例えばフレキシブルディスク、ＣＤ−ＲＯＭ、光磁気ディスク、半導体メモリ、ハードディスク等のコンピュータ読み取り可能な記憶媒体又は記憶装置に格納される。尚、中間的な処理結果はメインメモリ等の記憶装置に一時保管される。
【発明の効果】
【００２４】
一側面によれば、頑健性が高く且つコストが低い音響透かしが可能となる。
【図面の簡単な説明】
【００２５】
【図１】図１は、第１の実施の形態に係るシステムの概要を示す図である。
【図２】図２は、第１の実施の形態におけるデータ埋め込みを説明するための図である。
【図３】図３は、第１の実施の形態におけるデータ埋め込みを説明するための図である。
【図４】図４は、第１の実施の形態における検出処理を説明するための図である。
【図５】図５は、第１の実施の形態における検出処理を説明するための図である。
【図６】図６は、データ埋込処理装置の機能ブロック図である。
【図７】図７は、データ埋込処理の処理フローを示す図である。
【図８】図８は、携帯端末の機能ブロック図である。
【図９】図９は、検出処理の処理フローを示す図である。
【図１０】図１０は、ビット検出処理の処理フローを示す図である。
【図１１】図１１は、ビット検出処理の処理フローを示す図である。
【図１２】図１２は、第２の実施の形態におけるデータ埋め込みを説明するための図である。
【図１３】図１３は、第２の実施の形態におけるデータ埋め込みを説明するための図である。
【図１４】図１４は、第２の実施の形態における検出処理を説明するための図である。
【図１５】図１５は、第２の実施の形態における検出処理を説明するための図である。
【図１６】図１６は、第３の実施の形態におけるデータ埋め込みを説明するための図である。
【図１７】図１７は、第３の実施の形態におけるデータ埋め込みを説明するための図である。
【図１８】図１８は、第３の実施の形態における検出処理を説明するための図である。
【図１９】図１９は、第３の実施の形態における検出処理を説明するための図である。
【図２０】図２０は、第４の実施の形態におけるデータ埋め込みを説明するための図である。
【図２１】図２１は、第４の実施の形態におけるデータ埋め込みを説明するための図である。
【図２２】図２２は、第４の実施の形態における検出処理を説明するための図である。
【図２３】図２３は、第４の実施の形態における検出処理を説明するための図である。
【図２４】図２４は、コンピュータの機能ブロック図である。
【発明を実施するための形態】
【００２６】
［実施の形態１］
本実施の形態に係るシステムの一例を図１に示す。例えば、ショッピングモールの運営会社やチェーン店の本部などが管理する埋め込み処理装置５は、ネットワーク７に接続されており、ショッピングモール内部や各チェーン店において設置される音響出力装置３も、ネットワーク７に接続されている。埋め込み処理装置５は、音響データに対してデータ埋め込み処理を行い、データが埋め込まれた音響データをネットワーク７を介して音響出力装置３に配信する。音響出力装置３は、埋め込み処理装置５から受信した音響データを、接続されているスピーカ３１ａ及び３１ｂを介して出力する。なお、このような構成は一例であり、音響出力装置３が埋め込み処理装置５の機能を保持している場合もある。また、有線のネットワーク７ではなく、無線通信又は放送などによって、埋め込み処理装置５がデータを埋め込んだ音響データが、音響出力装置３に送信される場合もある。
【００２７】
ショッピングモールやチェーン店等でスピーカ３１ａ及び３１ｂを介して出力された音は、例えば顧客が保持している携帯端末１（図１では１ａ及び１ｂ。例えば携帯電話機やスマートフォンなど）のマイクにて取り込まれる。そして、携帯端末１は、マイクにて取り込まれ且つディジタル化された音響データに対して検出処理を行って、埋め込まれたデータを抽出し、埋め込まれたデータに対応する例えばクーポンなどを携帯端末１の表示装置に表示する。クーポンは一例であり、来店ポイントその他の特典であっても良い。
【００２８】
このように、雑音の多い空間にスピーカ３１ａ及び３１ｂを介して出力される音を、マイクを介して取り込んだ上で、埋め込まれたデータを抽出するため、データの埋め込みに頑健性が求められる。また、処理能力があまり高くない携帯端末１において検出処理を実行するため、頑健性だけを目的にして検出処理の処理負担が高くなったりすることは好ましくない。
【００２９】
そこで本実施の形態では、ビット値「０」を埋め込む場合には、音響データの周波数特性を表す、各周波数の振幅スペクトル（図２の上側のカーブ）のうち、図２の下側に模式的に示すように、ビット値「０」に対応する固定の周波数Ｆ０の振幅スペクトルを減衰させる。より具体的には、固定の周波数Ｆ０を中心周波数とする所定幅の帯域を減衰させる。本実施の形態では、減衰は、欠落させることを含む。
【００３０】
同様に、ビット値「１」を埋め込む場合には、音響データの周波数特性を表す、各周波数の振幅スペクトル（図３の上側のカーブ）のうち、図３の下側に模式的に示すように、ビット値「１」に対応する固定の周波数Ｆ１（Ｆ０とは異なる）の振幅スペクトルを減衰させる。
【００３１】
このように固定の周波数における振幅スペクトルを減衰させるため、音の変化が生じにくく、演算コストも少なくて済む。
【００３２】
なお、本実施の形態では以下で述べるように短時間フーリエ変換が用いられ、各々短時間フーリエ変換を実行する単位となる複数のフレームのうち、例えば連続する所定数のフレームについて同じ固定の周波数Ｆ０又はＦ１の振幅スペクトルを減衰させる。
【００３３】
一方、埋め込まれたビット値を検出する処理を行う場合には、図４に模式的に示すように、ビット値「０」に対応する固定の周波数Ｆ０の振幅スペクトルＭ（Ｆ０）と、予め設定されている幅Δだけ低い周波数Ｆ０−Δの振幅スペクトルＭ（Ｆ０−Δ）及び予め定められている幅Δだけ高い周波数Ｆ０＋Δの振幅スペクトルＭ（Ｆ０＋Δ）とを比較する。図４に示されているように、（Ａ）Ｍ（Ｆ０）＜Ｍ（Ｆ０−Δ）且つＭ（Ｆ０）＜Ｍ（Ｆ０＋Δ）という関係が満たされるフレームのフレーム数が閾値以上であれば、ビット値「０」が検出されたものとする。偶然にこのような条件（Ａ）が満たされることもあるので、このように所定数のフレームのうち閾値以上の数のフレームで条件（Ａ）が満たされることで、ビット値「０」が最終的に埋め込まれていたと判断する。なお、Δは、（Ｆ１−Ｆ０）／２といった値に設定しても良い。
【００３４】
また、例えば条件（Ａ）を満たさないフレームについては、図５に模式的に示すように、ビット値「１」に対応する固定の周波数Ｆ１の振幅スペクトルＭ（Ｆ１）と、予め定められている幅Δだけ低い周波数Ｆ１−Δの振幅スペクトルＭ（Ｆ１−Δ）及び予め定められている幅Δだけ高い周波数Ｆ１＋Δの振幅スペクトルＭ（Ｆ１＋Δ）とを比較する。図５に示されているように、（Ｂ）Ｍ（Ｆ１）＜Ｍ（Ｆ１−Δ）且つＭ（Ｆ１）＜Ｍ（Ｆ１＋Δ）という関係が満たされるフレームのフレーム数が閾値以上であれば、ビット値「０」が検出されたものとする。但し、所定数のフレームのうち閾値以上の数のフレームで条件（Ｂ）が満たされることで、ビット値「１」が最終的に埋め込まれていたと判断する。
【００３５】
ビット値「０」も「１」も検出されない場合には、データ埋め込み無しを検出したことになる。なお、ビット値「１」について先に判定しても良い。
【００３６】
このような処理を実行するため、携帯端末１の演算コストも小さく済み、頑健性も十分確保される。
【００３７】
よって本実施の形態では、埋め込み処理装置５及び携帯端末１には、以下で述べるような構成を採用する。
【００３８】
図６に、埋め込み処理装置５の機能ブロック図を示す。埋め込み処理装置５は、入力データ格納部５１と、ＳＴ−ＦＴ（Short-Time Fourier Transform）部５２と、スペクトルデータ格納部５３と、白色ノイズ付加部５４と、設定データ格納部５５と、減衰処理部５６と、埋め込みデータ格納部５７と、データ格納部５８と、ＳＴ−ＩＦＴ（Short-Time Inverse Fourier Transform）部５９と、出力データ格納部６０とを有する。
【００３９】
入力データ格納部５１は、処理前の音響データを格納している。ＳＴ−ＦＴ部５２は、短時間フーリエ変換を実行して、周波数特性である振幅スペクトルを算出し、スペクトルデータ格納部５３に格納する。設定データ格納部５５は、ビット値「０」を埋め込むための固定の周波数及びビット値「１」を埋め込むための固定の周波数のデータ並びに減衰させる所定幅のデータを格納する。
【００４０】
白色ノイズ付加部５４は、スペクトルデータ格納部５３に格納されている振幅スペクトルから、設定データ格納部５５に格納されている所定の固定の周波数における振幅スペクトルが隣接する帯域の振幅スペクトルの例えば１０％未満というような低レベルとなっているか判断する。このような条件が満たされる場合には、白色ノイズ付加部５４は、白色ノイズを付加する処理を行って、処理結果をスペクトルデータ格納部５３に格納する。例えば、振幅スペクトルが１６ビットであれば、８ビット程度の白色ノイズを付加する。
【００４１】
埋め込みデータ格納部５７は、音響データに付加すべきビット列を格納する。減衰処理部５６は、スペクトルデータ格納部５３に格納されている振幅スペクトルのうち、設定データ格納部５５に格納されている固定の周波数を中心周波数とする所定幅の周波数帯域における振幅スペクトルを減衰させる処理を行って、減衰させた周波数以外の振幅スペクトル及び減衰された振幅スペクトルをデータ格納部５８に格納する。減衰の程度は、例えば０乃至９０％程度のレベルに減衰させる。「０」の場合には固定の周波数については欠落させることになる。
【００４２】
ＳＴ−ＩＦＴ部５９は、データ格納部５８に格納されている振幅スペクトルから、データ埋め込みがなされた音響データを生成し、出力データ格納部６０に格納する。
【００４３】
次に、図７及び図８を用いて埋め込み処理装置５の処理内容を説明する。
【００４４】
ＳＴ−ＦＴ部５２は、入力データ格納部５１に格納されている入力音響データに対して短時間フーリエ変換を実行して振幅スペクトルを生成し、スペクトルデータ格納部５３に格納する（図７：ステップＳ１）。この処理についてはよく知られた処理であるので、これ以上述べない。
【００４５】
次に、白色ノイズ付加部５４は、設定データ格納部５５に格納されている所定の固定の周波数Ｆ０及びＦ１における振幅スペクトルは基準未満であるか判断する（ステップＳ３）。上でも述べたように周辺の帯域の振幅スペクトルの所定割合（１０％）未満であれば、この条件を満たすものと判断する。この条件が満たされている場合には、白色ノイズ付加部５４は、スペクトルデータ格納部５３に格納されている振幅スペクトルに対して白色ノイズを付加する（ステップＳ５）。全周波数帯域について白色ノイズを付加するが、場合によっては固定周波数Ｆ０及びＦ１を含む所定の周波数帯域に対して白色ノイズを付加する場合もある。そして処理はステップＳ７に移行する。
【００４６】
所定の固定周波数Ｆ０及びＦ１における振幅スペクトルは基準値以上である場合又はステップＳ５の後に、減衰処理部５６は、埋め込みデータ格納部５７に格納されている埋込ビット列のうちの各ビット値に対応する固定周波数を中心周波数とする所定幅の周波数帯域における振幅スペクトルを減衰させる減衰処理を実行し、処理結果をデータ格納部５８に格納する（ステップＳ７）。図２及び図３を用いて説明したような減衰処理を実行する。同じく上でも述べたように、所定数のフレーム毎に、埋込ビット列におけるビットを切り替えて行く。
【００４７】
そして、ＳＴ−ＩＦＴ部５９は、減衰処理後の振幅スペクトルに対して短時間逆フーリエ変換を実行して、データ埋め込みがなされた音響データを生成し、出力データ格納部６０に格納する（ステップＳ９）。
【００４８】
このような処理を行うことで、演算コストも少なく、頑健性も高いデータ埋め込みが行われるようになる。
【００４９】
次に、携帯端末１の機能ブロック図を図８に示す。携帯端末１は、音響信号からディジタル音響データを生成する集音部１１と、集音部１１からの音響データ（すなわち録音データ）を格納する入力データ格納部１２と、ＳＴ−ＦＴ部１３と、スペクトルデータ格納部１４と、設定データ格納部１５と、ビット検出部１６と、検出データ格納部１７と、後処理部１８とを有する。
【００５０】
ＳＴ−ＦＴ部１３は、入力データ格納部１２に格納されている入力音響データに対して短時間フーリエ変換を実行して各周波数について振幅スペクトルを生成し、スペクトルデータ格納部１４に格納する。ビット検出部１６は、設定データ格納部１５に格納されている固定の周波数Ｆ０及びＦ１並びに周波数幅Δを用いて、ビット値の検出処理を実行し、検出されたデータ（ビット列）を検出データ格納部１７に格納する。後処理部１８は、検出されたデータ（ビット列）に対する処理、例えばビット列に応じたデータを表示部に表示するなどの処理を実行する。
【００５１】
次に、図９乃至図１１を用いて携帯端末１の処理内容について説明する。
【００５２】
まず、ユーザの指示に応じて、携帯端末１の集音部１１は、スピーカ３１ａ及び３１ｂから出力される音を集音して、入力音響データを生成し、入力データ格納部１２に格納する（図９：ステップＳ２１）。
【００５３】
そして、ＳＴ−ＦＴ部１３は、入力音響データに対して短時間フーリエ変換を実行して各周波数について振幅スペクトルを生成し、スペクトルデータ格納部１４に格納する（ステップＳ２３）。複数のフレームについて振幅スペクトルのデータが生成される。この処理はステップＳ３と同じであり、よく知られた処理であるから詳細な説明を省略する。
【００５４】
その後、ビット検出部１６は、設定データ格納部１５に格納されているデータを用いて、スペクトルデータ格納部１４に格納されている振幅スペクトルに対するビット検出処理を実行する（ステップＳ２５）。１ビット分のビット検出処理については、図１０及び図１１を用いて詳細に説明する。
【００５５】
まず、ビット検出部１６は、今回の処理対象のフレーム群を特定する（図１０：ステップＳ４１）。入力音響データにおいて順番に所定数のフレームを特定する。
【００５６】
そして、ビット検出部１６は、特定されたフレーム群のうち未処理のフレームを１つ特定する（ステップＳ４３）。例えば順番にフレームを選択する。その後、ビット検出部１６は、ビット値「０」に対応する固定周波数Ｆ０の振幅スペクトルについての第１の評価値を算出する（ステップＳ４５）。本実施の形態では、第１の評価値＝固定周波数Ｆ０の振幅スペクトルＭ（Ｆ０）となる。
【００５７】
また、ビット検出部１６は、ビット値「０」に対応する固定周波数Ｆ０の隣接周波数Ｆ０＋Δ及びＦ０−Δにおける振幅スペクトルについての第２の評価値を算出する（ステップＳ４７）。本実施の形態では、第２の評価値＝固定周波数Ｆ０＋Δにおける振幅スペクトルＭ（Ｆ０＋Δ）及び第２の評価値＝固定周波数Ｆ０−Δにおける振幅スペクトルＭ（Ｆ０−Δ）である。但し、固定周波数Ｆ０＋Δにおける振幅スペクトルＭ（Ｆ０＋Δ）及び固定周波数Ｆ０−Δにおける振幅スペクトルＭ（Ｆ０−Δ）の平均値を第２の評価値として採用しても良い。
【００５８】
そして、ビット検出部１６は、第１の評価値＜第２の評価値が成立しているか判断する（ステップＳ４９）。これにて固定周波数Ｆ０における振幅スペクトルが隣接周波数に比して低減された状態にあるか否かを判定する。なお、第２の評価値が２つある場合には、両方の値について上記の条件が満たされているか判断する。この条件を満たさない場合には、端子Ａを介して図１１の処理に移行する。
【００５９】
一方、この条件を満たす場合には、ビット検出部１６は、ビット値「０」についてのカウンタを１インクリメントする（ステップＳ５１）。そして、ビット検出部１６は、カウンタの値が所定の閾値を超えたか判断する（ステップＳ５３）。カウンタの値が所定の閾値を超えていない場合には、端子Ｃを介して図１１の処理に移行する。一方、カウンタの値が所定の閾値を超えた場合には、ビット検出部１６は、この処理対象のフレーム群について、検出されたビット値「０」を、検出データ格納部１７に格納する（ステップＳ５５）。そして処理は端子Ｂを介して呼出元の処理に戻る。なお、次のビットについてのフレーム群の処理に移行する。
【００６０】
図１１の処理の説明に移行して、ステップＳ４９で条件が満たされていないと判断された場合、ビット検出部１６は、ビット値「１」に対応する固定周波数Ｆ１の振幅スペクトルについての第３の評価値を算出する（ステップＳ５７）。本実施の形態では、第３の評価値＝固定周波数Ｆ１の振幅スペクトルＭ（Ｆ１）となる。
【００６１】
また、ビット検出部１６は、ビット値「１」に対応する固定周波数Ｆ１の隣接周波数Ｆ１＋Δ及びＦ１−Δにおける振幅スペクトルについての第４の評価値を算出する（ステップＳ５９）。本実施の形態では、第４の評価値＝固定周波数Ｆ１＋Δにおける振幅スペクトルＭ（Ｆ１＋Δ）及び第４の評価値＝固定周波数Ｆ１−Δにおける振幅スペクトルＭ（Ｆ１−Δ）である。但し、固定周波数Ｆ１＋Δにおける振幅スペクトルＭ（Ｆ１＋Δ）及び固定周波数Ｆ１−Δにおける振幅スペクトルＭ（Ｆ１−Δ）の平均値を第４の評価値として採用しても良い。
【００６２】
そして、ビット検出部１６は、第３の評価値＜第４の評価値が成立しているか判断する（ステップＳ６１）。これにて固定周波数Ｆ１における振幅スペクトルが隣接周波数に比して低減された状態にあるか否かを判定する。なお、第４の評価値が２つある場合には、両方の値について上記の条件が満たされているか判断する。この条件を満たさない場合には、ステップＳ６９に移行する。
【００６３】
一方、この条件を満たす場合には、ビット検出部１６は、ビット値「１」についてのカウンタを１インクリメントする（ステップＳ６３）。そして、ビット検出部１６は、カウンタの値が所定の閾値を超えたか判断する（ステップＳ６５）。カウンタの値が所定の閾値を超えていない場合には、ステップＳ６９に移行する。一方、カウンタの値が所定の閾値を超えた場合には、ビット検出部１６は、この処理対象のフレーム群について、検出されたビット値「１」を、検出データ格納部１７に格納する（ステップＳ６７）。そして処理は呼出元の処理に戻る。なお、次のビットについてのフレーム群の処理に移行する。
【００６４】
ステップＳ６１で条件を満たしていないと判断された場合又はカウンタの値が所定の閾値を超えていないと判断された場合、ビット検出部１６は、ステップＳ４１で特定されたフレーム群のうち未処理のフレームが存在するか判断する（ステップＳ６９）。未処理のフレームが存在する場合には、処理は端子Ｄを介して図１０のステップＳ４３に戻る。一方、未処理のフレームが存在しない場合には、いずれのビット値についても検出できなかったことになるので、ビット検出部１６は、埋込データ無しを表すデータを検出データ格納部１７に格納する（ステップＳ７１）。その後、処理は呼出元の処理に戻る。なお、次のビットについてのフレーム群の処理に移行する。
【００６５】
以上のような処理を実行することによって、データ埋め込みがなされていればビット列が抽出されることになる。
【００６６】
図９の処理の説明に戻って、後処理部１８は、検出データ格納部１７に格納されているデータから、埋め込まれたビット列が検出されたか判断する（ステップＳ２７）。何らのビット値も検出できなかった場合には、後処理部１８は、埋込データ無しを表すデータを表示部などに出力する（ステップＳ３１）。そして処理は終了する。例えば、クーポン取得目的で携帯端末１を操作したが、クーポンが配布されていない状態なので、クーポン無しを表示する。
【００６７】
一方、何らかのビット値が検出された場合には、後処理部１８は、検出されたビット列に対応するデータを表示装置などに出力する（ステップＳ２９）。例えば、ビット列に対応するクーポンを表示装置などに出力する。
【００６８】
これによって携帯端末１のユーザは、クーポンをショッピングモールやチェーン店で利用できるようになる。
【００６９】
なお、検出誤りが生じうるので、ビット列に対して誤り検出訂正のためのビットを含めるようにしても良い。
【００７０】
以上のような処理を行うことで、頑健性を保持しつつ演算コストを低減させることができる。また、スピーカやマイクについて特別なものを要しないので、この点でも低コストである。
【００７１】
なお、固定周波数Ｆ０及びＦ１については、任意に決定できる、また、データ埋め込み時に固定周波数Ｆ０及びＦ１を中心周波数とする所定幅の周波数帯域を減衰させるが、所定幅は２Δより小さくなるように設定する。
【００７２】
［実施の形態２］
第１の実施の形態では、固定周波数Ｆ０及びＦ１について減衰させる例を示したが、本実施の形態では、頑健性向上のために、以下のように変形する。
【００７３】
すなわち、ビット値「０」を埋め込む場合には、ビット値「０」に対応する複数の固定周波数Ｆ０i（周波数パターンとも呼ぶ）を中心周波数とする所定幅の周波数帯域の振幅スペクトルを減衰させ、ビット値「１」に対応する複数の固定周波数Ｆ１jを中心周波数とする所定幅の周波数帯域の振幅スペクトルを減衰させる。
【００７４】
すなわち、図１２の上側に示すような振幅スペクトルの場合、図１２の下側に示すように、ビット値「０」を埋め込むならば、固定の周波数Ｆ０1、Ｆ０2及びＦ０3の振幅スペクトルを減衰させる。また、図１３の上側に示すような振幅スペクトルの場合、図１３の下側に示すように、ビット値「１」を埋め込むならば、Ｆ０1、Ｆ０2、Ｆ０3とは異なる固定周波数Ｆ１1、Ｆ１2及びＦ１3を中心周波数とする所定幅の周波数帯域の振幅スペクトルを減衰させる。なお、固定周波数の数は３に限定されない。また、ビット値「１」と「０」とでは異なる数の固定周波数を採用するようにしても良い。
【００７５】
一方、ビット検出処理においては、図１４に模式的に示すように、ビット値「０」を検出する際には、ビット値「０」に対応する固定周波数Ｆ０1の振幅スペクトルＭ（Ｆ０1）、Ｆ０2の振幅スペクトルＭ（Ｆ０2）及びＦ０3の振幅スペクトルＭ（Ｆ０3）から算出される第１の評価値が、隣接する周波数Ｆ０1−Δにおける振幅スペクトルＭ（Ｆ０1−Δ）、隣接する周波数Ｆ０1＋Δにおける振幅スペクトルＭ（Ｆ０1＋Δ）、隣接する周波数Ｆ０2−Δにおける振幅スペクトルＭ（Ｆ０2−Δ）、隣接する周波数Ｆ０2＋Δにおける振幅スペクトルＭ（Ｆ０2＋Δ）、隣接する周波数Ｆ０3−Δにおける振幅スペクトルＭ（Ｆ０3−Δ）及び隣接する周波数Ｆ０3＋Δにおける振幅スペクトルＭ（Ｆ０3＋Δ）から算出される第２の評価値より小さいか否かを判断する。
【００７６】
例えば、第１の評価値及び第２の評価値は振幅スペクトルの平均を算出する関数ｆによって算出される。
【００７７】
すなわち、関数ｆは以下のように定義される。
【００７８】
【数１】
2014092677.tif 000003
【００７９】
そして、上で述べた第１の評価値は、ｆ（Ｍ（Ｆ０1），Ｍ（Ｆ０2），Ｍ（Ｆ０3））と表され、第２の評価値は、ｆ（Ｍ（Ｆ０1−Δ），Ｍ（Ｆ０1＋Δ），Ｍ（Ｆ０2−Δ），Ｍ（Ｆ０2＋Δ），Ｍ（Ｆ０3−Δ），Ｍ（Ｆ０3＋Δ））と表される。
【００８０】
なお、関数ｆは平均ではなく、他の関数であっても良い。例えば、固定周波数毎に重み付けするようにしても良い。
【００８１】
同様に、図１５に模式的に示すように、ビット値「１」を検出する際には、ビット値「１」に対応する固定周波数Ｆ１1の振幅スペクトルＭ（Ｆ１1）、Ｆ１2の振幅スペクトルＭ（Ｆ１2）及びＦ１3の振幅スペクトルＭ（Ｆ１3）から算出される第３の評価値が、隣接する周波数Ｆ１1−Δにおける振幅スペクトルＭ（Ｆ１1−Δ）、隣接する周波数Ｆ１1＋Δにおける振幅スペクトルＭ（Ｆ１1＋Δ）、隣接する周波数Ｆ１2−Δにおける振幅スペクトルＭ（Ｆ１2−Δ）、隣接する周波数Ｆ１2＋Δにおける振幅スペクトルＭ（Ｆ１2＋Δ）、隣接する周波数Ｆ１3−Δにおける振幅スペクトルＭ（Ｆ１3−Δ）及び隣接する周波数Ｆ１3＋Δにおける振幅スペクトルＭ（Ｆ１3＋Δ）から算出される第４の評価値より小さいか否かを判断する。
【００８２】
例えば、第３の評価値及び第４の評価値は振幅スペクトルの平均を算出する関数ｆによって算出される。
【００８３】
そして、上で述べた第３の評価値は、ｆ（Ｍ（Ｆ１1），Ｍ（Ｆ１2），Ｍ（Ｆ１3））と表され、第４の評価値は、ｆ（Ｍ（Ｆ１1−Δ），Ｍ（Ｆ１1＋Δ），Ｍ（Ｆ１2−Δ），Ｍ（Ｆ１2＋Δ），Ｍ（Ｆ１3−Δ），Ｍ（Ｆ１3＋Δ））と表される。
【００８４】
なお、関数ｆは平均ではなく、他の関数であっても良い。例えば、固定周波数を重み付けするようにしても良い。
【００８５】
処理フロー自体は、第１の実施の形態と同様である。
【００８６】
このように複数の固定周波数に対してデータ埋め込みを行うことで、頑健性が向上する。
【００８７】
また、第１の実施の形態と同様に、固定周波数Ｆ０及びＦ１については、任意に決定できる。なお、固定周波数Ｆ０及びＦ１を中心周波数とする所定幅の周波数帯域をまとめて減衰させるが、所定幅は２Δより狭い。
【００８８】
［実施の形態３］
本実施の形態においては、人間の聴覚の解像度を反映させるため、高い周波数になるにつれて、固定周波数の間隔を広くするような方法が考えられる。このようにすれば、人間の聴覚に与える影響を抑えつつ、データ埋め込みが可能となる。
【００８９】
例えば、図１６に示すように、ビット値「０」に対応する固定周波数Ｆ０1、Ｆ０2及びＦ０3については、Ｆ０1とＦ０2の間隔と、Ｆ０2とＦ０3の間隔とが、周波数が高くなるにつれて広くなるように選択する。すなわち、Ｆ０2−Ｆ０1＞Ｆ０3−Ｆ０2という関係が成立する。固定周波数Ｆ０1、Ｆ０2及びＦ０3を中心周波数とする所定幅の周波数帯域を減衰させることについては第２の実施の形態と同様である。
【００９０】
同様に、図１７に示すように、ビット値「１」に対応する固定周波数Ｆ１1、Ｆ１2及びＦ１3については、Ｆ１1とＦ１2の間隔と、Ｆ１2とＦ１3の間隔とが、周波数が高くなるにつれて広くなるように選択する。すなわち、Ｆ１2−Ｆ１1＞Ｆ１3−Ｆ１2という関係が成立する。固定周波数Ｆ１1、Ｆ１2及びＦ１3を中心周波数とする所定幅の周波数帯域を減衰させることについては第２の実施の形態と同様である。
【００９１】
固定周波数Ｆ０1、Ｆ１1、Ｆ０2、Ｆ１2、Ｆ０3及びＦ１3は、例えばＢａｒｋというスペクトル尺度に基づくバンド幅の選び方に基づき決定される。具体的には、Ｂａｒｋバンドと呼ばれる周波数分割には[20, 100, 200, 300, 400, 510, 630, 770, 920, 1080, 1270, 1480, 1720, 2000, 2320, 2700, 3150, 3700, 4400, 5300, 6400, 7700, 9500, 12000, 15500]（Hz）といった帯域が定義されるが、その中間周波数［50,150,250,350,455,...］を、Ｆ０1、Ｆ１1、Ｆ０2、Ｆ１2、Ｆ０3及びＦ１3の順番に割り当てても良い。なお、Ｆ０及びＦ１の数は３に限定されない。
【００９２】
一方、ビット検出処理においては、図１８に模式的に示すように、ビット値「０」を検出する際には、ビット値「０」に対応する固定周波数Ｆ０1の振幅スペクトルＭ（Ｆ０1）、Ｆ０2の振幅スペクトルＭ（Ｆ０2）及びＦ０3の振幅スペクトルＭ（Ｆ０3）から算出される第１の評価値が、隣接する周波数Ｆ０1−Δ01における振幅スペクトルＭ（Ｆ０1−Δ01）、隣接する周波数Ｆ０1＋Δ01における振幅スペクトルＭ（Ｆ０1＋Δ01）、隣接する周波数Ｆ０2−Δ02における振幅スペクトルＭ（Ｆ０2−Δ02）、隣接する周波数Ｆ０2＋Δ02における振幅スペクトルＭ（Ｆ０2＋Δ02）、隣接する周波数Ｆ０3−Δ03における振幅スペクトルＭ（Ｆ０3−Δ03）及び隣接する周波数Ｆ０3＋Δ03における振幅スペクトルＭ（Ｆ０3＋Δ03）から算出される第２の評価値より小さいか否かを判断する。
【００９３】
ここで、隣接する周波数を決定するためのΔを、固定周波数毎に変化させるようにしても良いし、全て同一にしてもよい。但し、固定周波数の間隔が可変であるから、隣接する周波数は、隣接する固定周波数に基づき減衰される周波数帯域に含まれないように設定することになる。従って、例えば、Δ01＝Ｆ０1／２、Δ02＝（Ｆ０2−Ｆ０1）／２、Δ03＝（Ｆ０3−Ｆ０2）／２、Δ11＝Ｆ１1／２、Δ12＝（Ｆ１2−Ｆ１1）／２、Δ13＝（Ｆ１3−Ｆ１2）／２といったように決定される。
【００９４】
一方、全て同一にする場合には、Δ＝Ｆ０1／２又はΔ＝（Ｆ０2−Ｆ０1）／２といったように決定する。
【００９５】
さらに、例えば、第１の評価値及び第２の評価値は振幅スペクトルの平均を算出する関数ｆによって算出される。
【００９６】
そして、上で述べた第１の評価値は、ｆ（Ｍ（Ｆ０1），Ｍ（Ｆ０2），Ｍ（Ｆ０3））と表され、第２の評価値は、ｆ（Ｍ（Ｆ０1−Δ01），Ｍ（Ｆ０1＋Δ01），Ｍ（Ｆ０2−Δ02），Ｍ（Ｆ０2＋Δ02），Ｍ（Ｆ０3−Δ03），Ｍ（Ｆ０3＋Δ03））と表される。
【００９７】
なお、関数ｆは平均ではなく、他の関数であっても良い。例えば、固定周波数を重み付けするようにしても良い。
【００９８】
図１９に模式的に示すように、ビット値「１」を検出する際には、ビット値「１」に対応する固定周波数Ｆ１1の振幅スペクトルＭ（Ｆ１1）、Ｆ１2の振幅スペクトルＭ（Ｆ１2）及びＦ１3の振幅スペクトルＭ（Ｆ１3）から算出される第３の評価値が、隣接する周波数Ｆ１1−Δ11における振幅スペクトルＭ（Ｆ１1−Δ11）、隣接する周波数Ｆ１1＋Δ11における振幅スペクトルＭ（Ｆ１1＋Δ11）、隣接する周波数Ｆ１2−Δ12における振幅スペクトルＭ（Ｆ１2−Δ12）、隣接する周波数Ｆ１2＋Δ12における振幅スペクトルＭ（Ｆ１2＋Δ12）、隣接する周波数Ｆ１3−Δ13における振幅スペクトルＭ（Ｆ１3−Δ13）及び隣接する周波数Ｆ１3＋Δ13における振幅スペクトルＭ（Ｆ１3＋Δ13）から算出される第４の評価値より小さいか否かを判断する。
【００９９】
例えば、第３の評価値及び第４の評価値は振幅スペクトルの平均を算出する関数ｆによって算出される。
【０１００】
そして、上で述べた第３の評価値は、ｆ（Ｍ（Ｆ１1），Ｍ（Ｆ１2），Ｍ（Ｆ１3））と表され、第４の評価値は、ｆ（Ｍ（Ｆ１1−Δ11），Ｍ（Ｆ１1＋Δ11），Ｍ（Ｆ１2−Δ12），Ｍ（Ｆ１2＋Δ12），Ｍ（Ｆ１3−Δ13），Ｍ（Ｆ１3＋Δ13））と表される。
【０１０１】
なお、関数ｆは平均ではなく、他の関数であっても良い。例えば、固定周波数を重み付けするようにしても良い。
【０１０２】
処理フロー自体は、第１の実施の形態と同様である。
【０１０３】
このように複数の固定周波数に対してデータ埋め込みを行うことで、聴覚に与える影響を抑えつつ頑健性が向上する。
【０１０４】
［実施の形態４］
本実施の形態では、第３の実施の形態のように、固定周波数の間隔を周波数が高くなるにつれて広くするだけではなく、人間の聴覚の解像度を反映させるため、減衰させるバンド幅ＢＷも、周波数が高くなるにつれて広くする。これによっても頑健性が向上する。
【０１０５】
例えば、図２０に示すように、ビット値「０」に対応する固定周波数Ｆ０1、Ｆ０2及びＦ０3については、Ｆ０1とＦ０2の間隔と、Ｆ０2とＦ０3の間隔とが、周波数が高くなるにつれて広くなるように選択する。すなわち、Ｆ０2−Ｆ０1＞Ｆ０3−Ｆ０2という関係が成立する。さらに、固定周波数Ｆ０1については、固定周波数Ｆ０1を中心周波数とするバンド幅ＢＷ01を減衰させる。また、固定周波数Ｆ０2については、固定周波数Ｆ０2を中心周波数とするバンド幅ＢＷ02を減衰させる。固定周波数Ｆ０3については、固定周波数Ｆ０3を中心周波数とするバンド幅ＢＷ03を減衰させる。ここで、ＢＷ01＜ＢＷ02＜ＢＷ03という関係が成立する。なお、固定周波数をＢａｒｋバンドに従って決定する場合には、例えばバンド幅ＢＷはＢａｒｋバンドのおよそ１０％程度とする。なお、固定周波数Ｆ０及びＦ１の数は３に限定されない。
【０１０６】
同様に、図２１に示すように、ビット値「１」に対応する固定周波数Ｆ１1、Ｆ１2及びＦ１3については、Ｆ１1とＦ１2の間隔と、Ｆ１2とＦ１3の間隔とが、周波数が高くなるにつれて広くなるように選択する。すなわち、Ｆ１2−Ｆ１1＞Ｆ１3−Ｆ１2という関係が成立する。さらに、固定周波数Ｆ１1については、固定周波数Ｆ１1を中心周波数とするバンド幅ＢＷ11を減衰させる。また、固定周波数Ｆ１2については、固定周波数Ｆ１2を中心周波数とするバンド幅ＢＷ12を減衰させる。固定周波数Ｆ１3については、固定周波数Ｆ１3を中心周波数とするバンド幅ＢＷ13を減衰させる。ここで、ＢＷ11＜ＢＷ12＜ＢＷ13という関係が成立する。
【０１０７】
このようにすれば、人間の聴覚に対する影響を抑制しつつ、頑健性が向上する。
【０１０８】
一方、ビット検出処理においては、図２２に模式的に示すように、ビット値「０」を検出する際には、ビット値「０」に対応する固定周波数Ｆ０1の振幅スペクトルＭ（Ｆ０1）、Ｆ０2の振幅スペクトルＭ（Ｆ０2）及びＦ０3の振幅スペクトルＭ（Ｆ０3）から算出される第１の評価値が、隣接する周波数Ｆ０1−Δ01における振幅スペクトルＭ（Ｆ０1−Δ01）、隣接する周波数Ｆ０1＋Δ01における振幅スペクトルＭ（Ｆ０1＋Δ01）、隣接する周波数Ｆ０2−Δ02における振幅スペクトルＭ（Ｆ０2−Δ02）、隣接する周波数Ｆ０2＋Δ02における振幅スペクトルＭ（Ｆ０2＋Δ02）、隣接する周波数Ｆ０3−Δ03における振幅スペクトルＭ（Ｆ０3−Δ03）及び隣接する周波数Ｆ０3＋Δ03における振幅スペクトルＭ（Ｆ０3＋Δ03）から算出される第２の評価値より小さいか否かを判断する。
【０１０９】
ここで、隣接する周波数を決定するためのΔを、隣接する周波数が、隣接する固定周波数に基づき減衰される周波数帯域ＢＷに含まれないように設定することになる。従って、例えば、固定周波数Ｆ０1については、Ｆ０1＋ＢＷ01／２と、Ｆ０2−ＢＷ02と間に設定されればよい。例えば、このような周波数帯域の中間周波数であっても良い。その他の固定周波数でも同様である。
【０１１０】
さらに、第１の評価値については、各固定周波数Ｆ０についてバンド幅ＢＷについての振幅スペクトルの平均Ｍｂ（Ｆ０）を算出し、さらにＭｂ（Ｆ０）を平均する関数ｆによって算出する。第２の評価値については、振幅スペクトルの平均を算出する関数ｆによって算出される。
【０１１１】
すなわち、以下の数式に従ってバンド幅ＢＷについての振幅スペクトルの平均を算出する。なお、ｘiは固定周波数とし、当該固定周波数ｘiに対するバンド幅がＢＷiであるものとする。
【０１１２】
【数２】
2014092677.tif 000004
よって、上で述べた第１の評価値は、ｆ（Ｍｂ（Ｆ０1），Ｍｂ（Ｆ０2），Ｍｂ（Ｆ０3））と表され、第２の評価値は、ｆ（Ｍ（Ｆ０1−Δ01），Ｍ（Ｆ０1＋Δ01），Ｍ（Ｆ０2−Δ02），Ｍ（Ｆ０2＋Δ02），Ｍ（Ｆ０3−Δ03），Ｍ（Ｆ０3＋Δ03））と表される。
【０１１３】
また、図２３に模式的に示すように、ビット値「１」を検出する際には、ビット値「１」に対応する固定周波数Ｆ１1の振幅スペクトルＭ（Ｆ１1）、Ｆ１2の振幅スペクトルＭ（Ｆ１2）及びＦ１3の振幅スペクトルＭ（Ｆ１3）から算出される第３の評価値が、隣接する周波数Ｆ１1−Δ11における振幅スペクトルＭ（Ｆ１1−Δ11）、隣接する周波数Ｆ１1＋Δ11における振幅スペクトルＭ（Ｆ１1＋Δ11）、隣接する周波数Ｆ１2−Δ12における振幅スペクトルＭ（Ｆ１2−Δ12）、隣接する周波数Ｆ１2＋Δ02における振幅スペクトルＭ（Ｆ１2＋Δ12）、隣接する周波数Ｆ１3−Δ13における振幅スペクトルＭ（Ｆ１3−Δ13）及び隣接する周波数Ｆ１3＋Δ13における振幅スペクトルＭ（Ｆ１3＋Δ13）から算出される第４の評価値より小さいか否かを判断する。
【０１１４】
例えば、第３の評価値は、各固定周波数Ｆ１についてバンド幅ＢＷについての振幅スペクトルの平均Ｍｂ（Ｆ１）を算出し、さらにＭｂ（Ｆ１）を平均する関数ｆによって算出する。第４の評価値は振幅スペクトルの平均を算出する関数ｆによって算出される。
【０１１５】
具体的には、第３の評価値は、ｆ（Ｍｂ（Ｆ１1），Ｍｂ（Ｆ１2），Ｍｂ（Ｆ１3））と表され、第４の評価値は、ｆ（Ｍ（Ｆ１1−Δ11），Ｍ（Ｆ１1＋Δ11），Ｍ（Ｆ１2−Δ12），Ｍ（Ｆ１2＋Δ12），Ｍ（Ｆ１3−Δ13），Ｍ（Ｆ１3＋Δ13））と表される。
【０１１６】
なお、処理フロー自体は、第１の実施の形態と同様である。
【０１１７】
このように複数の固定周波数に対してデータ埋め込みを行うことで、聴覚に与える影響を抑えつつさらに頑健性が向上する。
【０１１８】
以上本技術の実施の形態を説明したが、本実施の形態はこれに限定されるものではない。例えば、機能ブロック図は一例であり、プログラムモジュール構成とは一致しない場合もある。さらに、処理フローについても処理結果が変わらない限り、処理順番を入れ替えたり、複数のステップを並列に実行するようにしても良い。
【０１１９】
さらに、Ｂａｒｋバンドは一例であって、他の尺度に基づくようにしても良い。
【０１２０】
また、上では振幅スペクトルを用いる例を示したが、パワースペクトルを用いるようにしても良い。
【０１２１】
さらに、固定周波数を中心周波数として所定の帯域幅を減衰させるとしたが、固定周波数が中心から多少ずれてもよい。
【０１２２】
また、第１乃至第４の評価値を算出する例を示したが、第１乃至第４の評価値を算出せずに、１つの固定周波数の振幅スペクトルＡと、その隣接周波数の振幅スペクトルＢ１及びＢ２とを比較して、Ａ＜Ｂ１且つＡ＜Ｂ２という条件を、全固定周波数について満たした場合に対応するビット値を検出したと判断しても良い。さらに、Ａ＜Ｂ１且つＡ＜Ｂ２という条件を満たす固定周波数の数が多い方のビット値を検出したと判断する場合もある。
【０１２３】
なお、上で述べた情報処理装置は、コンピュータ装置であって、図２４に示すように、メモリ２５０１とＣＰＵ（Central Processing Unit）２５０３とハードディスク・ドライブ（ＨＤＤ：Hard Disk Drive）２５０５と表示装置２５０９に接続される表示制御部２５０７とリムーバブル・ディスク２５１１用のドライブ装置２５１３と入力装置２５１５とネットワークに接続するための通信制御部２５１７とスピーカ２５１８とがバス２５１９で接続されている。オペレーティング・システム（ＯＳ：Operating System）及び本実施例における処理を実施するためのアプリケーション・プログラムは、ＨＤＤ２５０５に格納されており、ＣＰＵ２５０３により実行される際にはＨＤＤ２５０５からメモリ２５０１に読み出される。ＣＰＵ２５０３は、アプリケーション・プログラムの処理内容に応じて表示制御部２５０７、通信制御部２５１７、ドライブ装置２５１３を制御して、所定の動作を行わせる。また、処理途中のデータについては、主としてメモリ２５０１に格納されるが、ＨＤＤ２５０５に格納されるようにしてもよい。本技術の実施例では、上で述べた処理を実施するためのアプリケーション・プログラムはコンピュータ読み取り可能なリムーバブル・ディスク２５１１に格納されて頒布され、ドライブ装置２５１３からＨＤＤ２５０５にインストールされる。インターネットなどのネットワーク及び通信制御部２５１７を経由して、ＨＤＤ２５０５にインストールされる場合もある。このようなコンピュータ装置は、上で述べたＣＰＵ２５０３、メモリ２５０１などのハードウエアとＯＳ及びアプリケーション・プログラムなどのプログラムとが有機的に協働することにより、上で述べたような各種機能を実現する。
【符号の説明】
【０１２４】
１  携帯端末
３  音響出力装置
５  埋め込み処理装置
１１  集音部
１２  入力データ格納部
１３  ＳＴ−ＦＴ部
１４  スペクトルデータ格納部
１５  設定データ格納部
１６  ビット検出部
１７  検出データ格納部
１８  後処理部
５１  入力データ格納部
５２  ＳＴ−ＦＴ部
５３  スペクトルデータ格納部
５４  白色ノイズ付加部
５５  設定データ格納部
５６  減衰処理部
５７  埋め込みデータ格納部
５８  データ格納部
５９  ＳＴ−ＩＦＴ部
６０  出力データ格納部
【図１】
2014092677.tif 000005
【図２】
2014092677.tif 000006
【図３】
2014092677.tif 000007
【図４】
2014092677.tif 000008
【図５】
2014092677.tif 000009
【図６】
2014092677.tif 000010
【図７】
2014092677.tif 000011
【図８】
2014092677.tif 000012
【図９】
2014092677.tif 000013
【図１０】
2014092677.tif 000014
【図１１】
2014092677.tif 000015
【図１２】
2014092677.tif 000016
【図１３】
2014092677.tif 000017
【図１４】
2014092677.tif 000018
【図１５】
2014092677.tif 000019
【図１６】
2014092677.tif 000020
【図１７】
2014092677.tif 000021
【図１８】
2014092677.tif 000022
【図１９】
2014092677.tif 000023
【図２０】
2014092677.tif 000024
【図２１】
2014092677.tif 000025
【図２２】
2014092677.tif 000026
【図２３】
2014092677.tif 000027
【図２４】
2014092677.tif 000028