(57)【特許請求の範囲】
【請求項１】
情報をビット列に変換する第一制御部と、
複数N種類の音声信号を生成する信号生成部と、
複数M種類の符号を生成する符号生成部と、
前記ビット列の区間ごとに、前記N×M種類のうち所定規則で対応するいずれかの音声信号及び符号を割り当てることで、変調された音声信号を生成する変調部と、
前記変調された音声信号を再生する音波再生部と、を備える送信端末に対する受信端末であって、
前記送信端末が再生した音声信号を受信する音波受信部と、
前記受信した音声信号より順次、当該音声信号の各区間が前記N×M種類のいずれの変調された音声信号であるかを特定し、前記所定規則を適用して対応するビット列を求める復調部と、
前記ビット列を情報に変換する第二制御部と、を備え、
前記復調部は、前記音声信号の各区間につき、前記複数N種類の音声信号との相互相関関数を、前記複数M種類の符号におけるチップ長に区切ったうえで計算し、チップ長ごとの相互相関関数の絶対値の総和が最大となるような音声信号と、当該最大となる音声信号におけるチップ長ごとの相互相関関数の正負で定まる符号と、により、前記N×M種類のいずれにて変調された音声信号であるかを特定することを特徴とする受信端末。
【請求項２】
前記復調部が、前記チップ長ごとの相互相関関数の絶対値が所定閾値を超えない場合には、当該超えないチップの部分以外における前記チップ長ごとの相互相関関数の正負が一致しているような符号で変調した一連の信号に関して相互相関関数を計算し、当該相互相関関数が最大となるような符号によって変調されたものとして特定することを特徴とする請求項１に記載の受信端末。
【請求項３】
前記N×M種類のいずれにて変調されたが特定された音声信号と、前記受信した音声信号と、の相互相関関数をさらに計算し、当該計算した相互相関関数が所定閾値を超えない場合に、前記M種類の中から特定された符号が誤りであったと判断し、前記N種類の中から特定された音声信号を当該誤りと判断した符号を除くM-1種類の符号で変調した各音声信号との間で相互相関関数を計算し、当該計算した相互相関関数が最大となるような符号によって変調されたものとして特定しなおすことを特徴とする請求項１に記載の受信端末。
【請求項４】
前記復調部は、前記音声信号より所定のヘッダを検出したうえで、当該ヘッダに継続する区間として、前記音声信号の各区間を識別することを特徴とする請求項１ないし３のいずれかに記載の受信端末。
【請求項５】
情報をビット列に変換する第一制御段階と、
複数N種類の音声信号を生成する信号生成段階と、
複数M種類の符号を生成する符号生成段階と、
前記ビット列の区間ごとに、前記N×M種類のうち所定規則で対応するいずれかの音声信号及び符号を割り当てることで、変調された音声信号を生成する変調段階と、
前記変調された音声信号を再生する音波再生段階と、を備える送信方法に対する受信方法であって、
前記送信方法が再生した音声信号を受信する音波受信段階と、
前記受信した音声信号より順次、当該音声信号の各区間が前記N×M種類のいずれの変調された音声信号であるかを特定し、前記所定規則を適用して対応するビット列を求める復調段階と、
前記ビット列を情報に変換する第二制御段階と、を備え、
前記復調段階では、前記音声信号の各区間につき、前記複数N種類の音声信号との相互相関関数を、前記複数M種類の符号におけるチップ長に区切ったうえで計算し、チップ長ごとの相互相関関数の絶対値の総和が最大となるような音声信号と、当該最大となる音声信号におけるチップ長ごとの相互相関関数の正負で定まる符号と、により、前記N×M種類のいずれにて変調された音声信号であるかを特定することを特徴とする受信方法。
【請求項６】
コンピュータを請求項１ないし４のいずれかに記載の受信端末として機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、音波による高速通信を低い計算負荷にて実現することのできる送信端末及び受信端末並びに方法及びプログラムに関する。
【背景技術】
【０００２】
音を伝送媒体として通信する技術が従来ある。例えば、スマートフォンやテレビ等の端末間でクーポン等の情報を送受するアプリケーションには、音波を変復調することで情報を送受する技術が活用される。また、スマートフォンを用いて自動車のスマートキーシステムを実現するため、音波の送受信時刻から送受信端末間の距離を推定する技術が活用される。
【０００３】
これらの音による通信技術は、スピーカーやマイクを利用して実現するため、電波による通信のように専用のアンテナや通信機を必要としない。スマートフォンやマイク等の端末に予め備えられているスピーカーやマイクを活用できるため、今後のさらなる普及が期待される。
【０００４】
特許文献1では、音を伝送媒体とした通信技術における変復調方法を提供している。送信側に差動符号化、受信側に遅延検波を採用することにより、周波数領域の処理を必要としない時間領域のみの少ない処理負荷で、ドップラーシフト等の周波数偏移や外乱に対して高耐性の堅牢な情報伝送を可能とする。また、データ符号を音響信号とミキシングすることにより、空間放音した場合でも聴感上違和感の少ない情報の伝送を可能とする。
【０００５】
非特許文献１では、音波を用いたシステムが複数存在する場合に、システム同士が混信し、音波を正確に送受できないことを課題とし、送信するチャープ信号にM系列符号を用いて符号変調する手法を提供している。計算機シミュレーションと実験により、変調したチャープ信号の相互相関関数が十分低いことを示し、多チャンネル化に有効であることを示している。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開2010-288246号公報
【特許文献２】特願2014-119577号
【非特許文献】
【０００７】
【非特許文献１】M系列符号で変調したチャープ信号を用いた多チャンネル化の検証  （東工大他）
【発明の概要】
【発明が解決しようとする課題】
【０００８】
また、本出願人による特許文献2では、音の伝搬時間を利用することで、無線デバイスの感度や雑音による影響が少ない高精度な距離推定を提供している。電磁波と比較して伝搬時間が遅い音波(超音波)を利用し、誤差数10cmの精度を実現する。具体的には、親端末と子端末間で音波を送受信し、子端末が親端末に音波の送受信時刻の情報を通知することで、距離を推定する。受信時刻の算出には、相互相関関数を利用している。送信音波の波形を事前に両端末間で共有し、リファレンス信号を生成する。受信した音とリファレンス信号の相互相関関数を計算し、ピークとなる点を音波の受信時刻と決定する。この際、ウィンドウサイズ、データビット数及びサンプリング間隔を粗く取って1回目に暫定位置を求めてから、2回目に暫定位置周囲でパラメータを細かく取って確定することで、相関処理の負荷を低減する。
【０００９】
このように、特許文献2では、端末間で音波を送受することで、端末間距離を推定し、スマートキーシステムを実現する。
【００１０】
一方、この技術を応用し、送受する音波を変調することで、特許文献１と同様に、情報通信が可能となる。この際、非特許文献１で示されるような変調技術を応用し、１音に多ビットを割り当てることで、通信速度を高速化できる。
【００１１】
しかしながら、上記のように符号変調を用いて高速に通信しようとする場合、多ビット割り当てによりリファレンス信号数が増加するため、相関処理負荷が大きくなる。すなわち、各符号にそれぞれリファレンス信号を割り当てるため、受信した音波がいずれの符号に対応するのかを特定するために、符号の数だけ種類が存在するリファレンス信号の全てとの間で相互相関関数を計算する必要が生じてしまい、当該計算の処理負荷が大きくなってしまう。
【００１２】
上記のように、特許文献2では、音波を用いた通信端末において、受信信号とリファレンス信号の相互相関関数の処理負荷を低減している。しかしながら、特許文献2の技術は、単一のリファレンス信号の受信時刻特定における相関処理負荷低減を達成するものの、上記のように高速通信に伴う多ビット化によってリファレンス信号が多数存在する場合において多数回必要となる相関処理負荷の低減に関しては、考慮していない。
【００１３】
従って、スマートフォン等の処理能力が限られた端末を用いて高速に通信しようとする場合、特許文献2の技術だけでは必ずしも十分であるとは言えず、さらなる相関処理負荷の低減が望まれる。
【００１４】
本発明は、上記の従来技術の課題に鑑み、音波による高速通信を低い計算負荷にて実現することのできる送信端末及び受信端末並びに方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１５】
上記目的を達成するため、本発明は、送信端末であって、情報をビット列に変換する第一制御部と、複数N種類の音声信号を生成する信号生成部と、複数M種類の符号を生成する符号生成部と、前記ビット列の区間ごとに、前記N×M種類のうち所定規則で対応するいずれかの音声信号及び符号を割り当てることで、変調された音声信号を生成する変調部と、前記変調された音声信号を再生する音波再生部と、を備えることを特徴とする。
【００１６】
また、本発明は、前記送信装置が再生した音声信号を受信する音波受信部と、前記受信した音声信号より順次、当該音声信号の各区間が前記N×M種類のいずれの変調された音声信号であるかを特定し、前記所定規則を適用して対応するビット列を求める復調部と、前記ビット列を情報に変換する第二制御部と、を備える受信端末であって、前記復調部は、前記音声信号の各区間につき、前記複数N種類の音声信号との相互相関関数を、前記複数M種類の符号におけるチップ長に区切ったうえで計算し、チップ長ごとの相互相関関数の絶対値の総和が最大となるような音声信号と、当該最大となる音声信号におけるチップ長ごとの相互相関関数の正負で定まる符号と、により、前記N×M種類のいずれにて変調された音声信号であるかを特定することを特徴とする。
【００１７】
また、本発明は、送信方法であって、情報をビット列に変換する第一制御段階と、複数N種類の音声信号を生成する信号生成段階と、複数M種類の符号を生成する符号生成段階と、前記ビット列の区間ごとに、前記N×M種類のうち所定規則で対応するいずれかの音声信号及び符号を割り当てることで、変調された音声信号を生成する変調段階と、前記変調された音声信号を再生する音波再生段階と、を備えることを特徴とする。
【００１８】
また、本発明は、前記送信方法が再生した音声信号を受信する音波受信段階と、前記受信した音声信号より順次、当該音声信号の各区間が前記N×M種類のいずれの変調された音声信号であるかを特定し、前記所定規則を適用して対応するビット列を求める復調段階と、前記ビット列を情報に変換する第二制御段階と、を備える受信方法であって、前記復調段階では、前記音声信号の各区間につき、前記複数N種類の音声信号との相互相関関数を、前記複数M種類の符号におけるチップ長に区切ったうえで計算し、チップ長ごとの相互相関関数の絶対値の総和が最大となるような音声信号と、当該最大となる音声信号におけるチップ長ごとの相互相関関数の正負で定まる符号と、により、前記N×M種類のいずれにて変調された音声信号であるかを特定することを特徴とする。
【００１９】
また、本発明は、コンピュータを前記送信端末として機能させるプログラムであることを特徴とする。
【００２０】
さらに、本発明は、コンピュータを前記受信端末として機能させるプログラムであることを特徴とする。
【発明の効果】
【００２１】
本発明によれば、N×M種類の変調された音声信号のいずれであるかが、第一に、N種類の音声信号のいずれであるかをM種類の符号におけるチップ単位の相互相関関数の計算で特定し、第二に、その際の正負によってM種類の符号のいずれであるかも特定することで、特定可能となる。従って、低い計算負荷で多数のN×M種類に渡る音声信号を用いた高速な通信が可能となる。
【図面の簡単な説明】
【００２２】
【図１】一実施形態に係る通信システムの機能ブロック図である。
【図２】信号生成部にて生成する音波の例を示す図である。
【図３】生成される送信音波の模式的な例を示す図である。
【図４】音声信号の変調の模式的な例を示す図である。
【図５】復調部における処理の詳細をフローチャートとして示す図である。
【図６】相互相関関数の計算を説明するための図である。
【発明を実施するための形態】
【００２３】
図１は、一実施形態に係る通信システムの機能ブロック図である。通信システム3は、送信端末1及び受信端末2を備える。送信端末1は、第一制御部11、信号生成部12、符号生成部13、変調部14及び音波再生部15を備える。受信端末2は、音波受信部21、復調部22及び第二制御部23を備える。
【００２４】
送信端末1及び受信端末2のそれぞれには例えば、具体的なデバイスとして、スマートフォンや携帯電話、PC、タブレットなどの携帯端末や情報端末を利用することができる。送信端末1はスピーカー等の音声出力機、受信端末2はマイク等の音声入力機を備える必要がある。その詳細を以下に説明するように、送信端末1と受信端末2との間で音波を送受信することで、文字列等の情報を送受信することができる。また、１つの端末が送信端末1及び受信端末2の両方の役割を果たしてもよい。
【００２５】
以下、送信端末1及び受信端末2の各部の詳細を説明する。
【００２６】
＜送信端末1について＞
[第一制御部11]
送信端末1の第一制御部11では、ユーザからの入力等に従って受信端末2に対して送信する情報を生成し、ビット列へ変換して変調部14へと出力する。送信する情報は、文字列、数値、画像、動画等、ビット列へ変換できるものであれば内容は問わない。当該変換の際、インタリーブを施してもよいし、誤り訂正符号を付加してもよい。
【００２７】
[信号生成部12]
信号生成部12は、音声信号（音波）を生成し、その情報を変調部14に出力する。ここで、所定設定に従って周波数や振幅、周波数変化等を変化させることによって、N種類の相互相関の低い音声信号を生成する。
【００２８】
当該生成に際して例えば、周波数が17kHz以上の音波を用いることで、再生音波が人に聞こえにくい音となるようにしてよい。図２に当該生成する音波の模式的な例を示す。図２の例では、17kHz-19kHzの周波数を3分割、周波数変化を2分割（周波数上昇、周波数下降）するという所定設定によって、6種類のチャープ信号が生成される。
【００２９】
[符号生成部13]
符号生成部13は、M種類のＰＮ（Ｐｓｅｕｄｏ  Ｎｏｉｓｅ：擬似ノイズ）符号を生成し、変調部14に出力する。ＰＮ符号は、たとえばM系列の擬似ノイズ符号等を用いればよい。
【００３０】
[変調部14]
変調部14は、第一制御部11の出力したビット列に対応する変調された音声信号を生成すると共に、当該変調信号の音波の先頭と末尾に、ヘッダやテイラの役割をする信号を付加することによって、送信音波を生成し、その情報を音波再生部15に出力する。
【００３１】
図３に、当該生成される送信音波の模式的な例を示す。図３の例では、ヘッダとテイラの間に、上記N,Mの値が共に2であることによりそれぞれ2ビットの情報を有するような変調された一連の音声信号の列が形成されることで、送信音波が生成されている。
【００３２】
ここで、信号生成部12の出力した音声信号と符号生成部13の出力したＰＮ符号を掛け合わせることにより音声信号を変調して、第一制御部11の出力したビット列（送信情報に対応）を表現することで、送信情報を重畳した送信音波を生成することができる。図４に音声信号の変調の模式的な例を示す。
【００３３】
すなわち、音声信号はN種類が選択可能であり、ＰＮ符号はM種類が選択可能であるので、これらを掛け合わせることで合計N×M種類の相互相関の低い変調信号を生成することができる。ここで、相互相関の低い変調信号が生成可能な点は、前掲の非特許文献１において論じられている通りである。なお、本発明では後述するようにチップ単位での処理を実施するが、当該チップのベースとなる信号が「N種類の相互相関の低い音声信号」であるため、その一部分であるチップ単位においても相互相関が低くなる。
【００３４】
本発明では特に、当該N×M種類の変調信号のいずれかを選択することで、log2(N×M)ビットのビット列のうちのいずれか1つを表現するという手法を採用する。ここで、N×M種類の変調信号とこれによって表現されるビット列との対応は、所定規則として予め設定しておけばよい。第一制御部11の出力した送信情報がXビットのビット列であれば、log2(N×M)ビット毎に区切って、それぞれに対応する変調信号を合計「X÷log2(N×M)」個だけ生成すればよい。
【００３５】
図３の例では、14ビットの送信情報を2ビット毎に区切ることで、それぞれに対応する変調信号が合計7個生成されている。図４の例は、当該log2(N×M)ビット列のいずれか1つを表現するために、[1]のようにN種類の中から選択された1つの音声信号の中から1つを選択し、[2]のようにM種類のＰＮ符号の中から1つを選択し、掛け合わせることで[3]に示すような変調信号が生成されている。
【００３６】
[音波再生部15]
音波再生部15は、信号生成部12が（情報として）出力した音声信号を、スピーカー等の音声出力機によって実際の送信音波として再生する。
【００３７】
＜受信端末2について＞
[音波受信部21]
音波受信部21は、マイク等の音声入力機を用いて音声を録音し、受信音声データを生成して復調部22へと出力する。
【００３８】
[復調部22]
復調部22は、音波受信部21の録音より送信端末1が音波再生部15にて再生した送信音波の箇所を特定すると共に、当該特定された箇所を解析することで変調部14における処理の逆処理を行うことで、第一制御部11が出力した送信情報に相当する受信情報を求め、第二制御部23へと出力する。
【００３９】
すなわち、復調部22では、当該特定された箇所を解析することで、N×M種類のいずれの変調信号を受信しているかを順次特定すると共に、変調部14における所定規則（事前共有されている）の逆を適用することにより、第一制御部11が出力したビット列を順次復調する。
【００４０】
図５は、復調部22における当該処理の詳細をフローチャートとして示す図である。ここで前提として、次がある。すなわち、事前に送信端末1と受信端末2との間では、信号生成部12が生成しうるN種類の変調前の音声信号と、符号生成部13が生成しうるM種類の符号と、変調部14で変調しうるN×M種類の変調信号の波形と、変調部14で付加するヘッダ信号の波形及びテイラ信号の波形と、の情報が共有されているものとする。当該共有はネットワーク経由で行ってもよいし、アプリ設定等として与えておいてもよい。以下、図５の各ステップを説明する。
【００４１】
まず、ステップS10,S11にて、受信音声データrec(i)からヘッダ信号を検出する。具体的には、ステップS10にて、受信音声データrec(i)(iは1≦i≦rec_lengthの整数)とヘッダ信号ref(j)(jは1≦j≦rec_lengthの整数)の相互相関関数cor1(j)(1≦j≦rec_length)を計算してから、ステップS11に進む。ここで、rec_lengthは受信音声データのサンプル長、ref_lengthは送信音波(ヘッダ信号)のサンプル長を表す。rec_length>ref_lengthである。相互相関関数cor1(j)は次式で計算される。
【００４２】
【数１】
0006486680.tif 000002
【００４３】
WS1は相互相関関数を計算するためのウィンドウサイズを示すパラメータであり、通常はWS1=ref_lengthとする。WS1=ref_lengthの場合、ヘッダ信号ref(j)の全てを相互相関関数の計算に使うことになる。一般的に、ウィンドウサイズを大きくすると、ノイズとの相互相関値の減少、音波との相互相関値の増大し、雑音に対する音波検出のロバスト性が向上する。
【００４４】
ステップS11では、相互相関関数cor1(j)においてその値が所定の閾値Th_hを超過する最初のピークとなる時刻を探索する。当該条件を満たすピーク時刻が見つかると、当該時刻をヘッダ信号の受信時刻Tと決定し、ステップS20へ進む。
【００４５】
以上のように、ステップS10,S11ではヘッダ信号を検出して受信時刻を決定した。続くステップS20〜S50ではヘッダ信号に続く信号を識別し、送信情報を検出する。具体的には以下の通りである。
【００４６】
まず、本発明における相関処理負荷低減の「考え方」を説明する。受信した信号を識別する最も単純な方法として、受信音声データとN×M個の信号すべてとの相互相関関数を計算し、最も相互相関関数が大きくなった信号を受信したとみなす方法がある。しかしながら、信号数Nや符号数Mが大きくなるにつれ、計算量が増加し、受信処理負荷が大きくなるという問題がある。実際に、Nを1、Mを1024とし、特許文献2の技術を適用したAndroid（登録商標）端末を用いて数十ビットの情報を受信した際、受信処理に数十秒かかった。
【００４７】
そこで、受信処理負荷を低減するため、本発明ではまず、受信音声データrec(j)と、符号による変調前のN種類の信号wav(n)(n=1, 2, …, N)との相互相関関数を計算する。当該計算に際して特に、信号wav(n)全体で相互相関関数を計算するのではなく、符号のチップ長Cごとに計算を行うことで信号wav(n)の相互相関関数を計算し、受信音声データrec(j)がいずれの信号wav(n)であるかを特定する。
【００４８】
図６は当該計算を説明するための図である。図6に示すように、ヘッダ信号の長さをheader_length、各信号の長さをdata_length、送信音波内の各信号の間隔をintervalで表す。前述のようにこれらの情報は送信端末1及び受信端末2にて事前共有されている。ステップS10,S11にて特定済みのヘッダの受信時刻Tから、送信情報を表す最初の信号の受信時刻を、T＋header_length＋intervalであるものとして求めることができる。
【００４９】
ステップS20では、受信音声データrec(j)のうち、送信情報を表す信号の受信時刻（上記求めたT＋header_length＋interval）から符号のチップ長Cごとに、N種類の変調前の信号wav(n)と相互相関関数を計算して、ステップS21へと進む。受信音声データrec(j)のチップchip(p)(p=1, 2, …)相当部分とwav(n)のチップchip(p)相当部分との相互相関関数をcor2(p)で表す。
【００５０】
ステップS21では、cor2(p)の正負を判定し、正であればステップS31へ、負であればステップS32へ進む。ステップS31ではS(p)=1とし、ステップS32ではS(p)=-1とし、ステップS35へと進む。すなわち、ステップS21,S31,S32では、各チップchip(p)に対応する変数S(p)に当該チップにおける相互相関関数cor2(p)の正負を記録する。
【００５１】
ステップS35では全てのチップchip(p)について相互相関関数を計算済みでステップS20,S21,S31,S32の処理を完了しているか否かを判定し、完了していればステップS40へ進み、未完了であれば未処理のチップchip(p+1)について処理を継続すべくステップS20に戻る。
【００５２】
ステップS40では、変調前の信号wav(n)と受信音声データrec(j)の相互相関関数cor3(n)を以下の式で計算してから、ステップS41へ進む。
【００５３】
【数２】
0006486680.tif 000003
【００５４】
当該計算の「考え方」は次の通りである。すなわち、符号においてマイナスとなっているチップchip(p)相当部分は、負の相関を持つため、相互相関関数は負数となると考えられる。そこで、プラスとなっているチップchip(p)における正数の相互相関関数と打消し合わないように、cor2(p) < 0 なら、cor2(p) = cor2(p)*(-1)として和を取っている。上記S(p)として正負を記録しておくことより、当該和を取ることができる。
【００５５】
図６の例では、[3]の録音データにおける1番目のwav(1)のchip(1)〜chip(5)に相当するデータD1〜D5に関して、相互相関関数の正負が順次「+,-,+,-,-」となっている。wav(1)は[1]に示す通りであり、掛け合わせた符号が[2]であり、当該相互相関関数の正負と一致することとなる。
【００５６】
ステップS41では全ての変調前信号wav(n)との相互相関関数cor3(n)を計算したか否かが判定され、計算済みであればステップS50に進み、未計算の信号があれば当該未計算の信号wav(n+1)に対して計算を行うべくステップS20に戻る。
【００５７】
ステップS50では、相互相関関数cor3(n)を最大にする信号に対し、記録した各チップの相互相関関数の正負S(p)が一致する符号で変調した信号を受信したとみなす。受信したとみなした信号をR1とする。こうして、N×M種類の変調信号の中から、1種類の信号R1を特定することができる。
【００５８】
以上、図６のフローを説明した。なお、ステップS10,S11にてヘッダを特定した後には、テイラが検出されるまで、ステップS20〜S50を繰り返すことで、図３で説明したようなビット列の全体を特定することができる。テイラの検出はヘッダと同様にすればよい。また、当該ビット列全体の特定も、図６の[3]における各信号の継続時間の情報を用いることにより可能である。ステップS20〜S50により、ビット列を構成する各区間（log2(N×M)ビット分の各区間）がそれぞれ特定される。
【００５９】
図６のフロー（特にステップS20〜S50）における追加的な実施形態として、以下（１）〜（３）が可能である。
【００６０】
（１）受信したとみなした信号R1と、受信音声データrec(j)の相互相関関数を改めて計算してもよい。得られた相互相関関数が、所定の閾値Th_d1を超えなかった場合に、正しい受信信号が判断できなかったとみなし、相互相関関数cor3(n)を最大にする信号nについて、異なる符号で変調したM-1個の信号mod_wav(n, m)と受信音声データrec(j)と相互相関関数を計算し、受信信号R2を決定してもよい。
【００６１】
すなわち、（１）によればN種類の音声信号は正しく特定されたが、M種類の符号の特定が間違っていたものとして、再判断を行うことができる。
【００６２】
（２）さらに、R2が所定の閾値Th_d2を超えなかった場合に、既に相互相関関数を計算した信号を除く(N-1)×M個の全ての変調信号と受信音声データrec(j)と相互相関関数を計算し、最も相互相関関数を大きくする信号を受信信号R3と決定してもよい。
【００６３】
すなわち、（２）によれば（１）で再判断しなかった残りの(N-1)×M個の全ての変調信号について、再判断を行うことができる。
【００６４】
（３）また、ノイズ等の影響により、受信信号波形が崩れた場合に、正しく相互相関関数が得られないことがあることを考慮し、各チップの相互相関関数cor2(p)の絶対値が、所定の閾値Th_cを超えなかった場合に、そのチップは正しい信号が受信できなかったとみなし、相互相関関数の正負不明のチップとしてもよい。その場合、正負不明としたチップを除くその他のチップの正負S(p)が一致する符号で変調した信号について相互相関関数cor4(n)を改めて計算し、cor4(n)を最大とする信号を受信したとみなすようにしてよい。すなわち、音声信号のN種類の特定結果は正しいものとみなし、M種類存在しうる符号の特定結果を、当該正負不明としたチップを除くその他のチップの正負S(p)が一致する符号の中から、再計算するようにしてもよい。
【００６５】
なお、（３）では正しい信号が受信できないと判断されたチップが所定個数以上ある場合は、当該信号R1の部分はエラーである旨の情報を出力し、次の第二制御部23において誤り訂正符号等を適用することで、当該エラー部分を修復することを試みるようにしてもよい。
【００６６】
[第二制御部23]
復調部22より受信した情報（一連の信号R1を順次特定することで特定されたビット列）を受け取り、第一制御部11と逆の処理を行うことで、文字列、数値、画像、動画等の元の情報を出力する。この際、第一制御部11にてインタリーブを施したり、誤り訂正符号を付加したりしている場合は、対応する処理を行う。従って、第一制御部11におけるビット列変換の処理内容については、第二制御部23においても事前共有しておき、逆処理を実施する。
【００６７】
第二制御部23ではまた、復調部22に対し、上記事前共有される情報としての、信号情報や符号情報等の必要な情報を提供する。
【００６８】
以上のように、本発明によれば、音声信号を符号変調して通信する端末において、受信音声を符号のチップ長に分割して相互相関関数を計算することで、受信端末の相関処理負荷を低減する。これにより、受信処理時間を短縮し、スマートフォン等の処理能力が限られた端末でも、音による通信が可能となる。
【００６９】
すなわち、従来技術ではN×M通り存在する、それぞれ長さがdata_length分のリファレンス信号との間で相互相関関数を計算する必要があった。これに対して本発明では、data_length分のリファレンス信号との間で相互相関関数を計算するのはN通りの音声信号のみであり、計算負荷の低減が可能である。この際、N通りの各音声信号の相互相関関数のそれぞれの計算においては、短いチップに区切って低負荷な計算を実施することで、その結果（最大相互相関関数を与える音声信号における符号S(p)）としてM種類の符号のいずれが適用されたかということも特定可能となる。
【００７０】
本発明は、コンピュータを送信端末1または受信端末2として機能させるそれぞれのプログラムとしても提供可能である。当該コンピュータには、CPU(中央演算装置)、メモリ及び各種I/Fといった周知のハードウェア構成のものを採用することができ、CPUが送信端末1または受信端末2の各部の機能に対応する命令を実行することとなる。
【符号の説明】
【００７１】
3…通信システム、1…送信端末、2…受信端末、11…第一制御部、12…信号生成部、13…符号生成部、14…変調部、15…音波再生部、21…音波受信部、22…復調部、23…第二制御部
【図１】
0006486680.tif 000004
【図２】
0006486680.tif 000005
【図３】
0006486680.tif 000006
【図４】
0006486680.tif 000007
【図５】
0006486680.tif 000008
【図６】
0006486680.tif 000009