(57)【特許請求の範囲】
【請求項１】
音波パルスを用いて探索側端末より被探索側端末の位置関係を推定する際の直接波抽出方法であって、
前記位置関係の推定を開始する旨の情報と、前記音波パルスの所定の送信回数及び送信間隔の情報を前記探索側端末より前記被探索側端末へ無線通信で通知した後、当該通知を前記被探索側端末が受信した旨を前記探索側端末に返信する推定開始確認段階と、
前記推定開始確認段階の後、前記被探索側端末が録音を開始する録音開始段階と、
前記推定開始確認段階の後、前記探索側端末が前記所定の送信回数及び送信間隔を設けた音波パルスを送信した後、前記被探索側端末に音波パルス送信終了を無線通信で通知するパルス送信段階と、
前記音波パルス送信終了の通知を受信して前記被探索側端末が前記録音を終了し、該録音に含まれる音波パルスのうち、受信間隔が前記所定の送信間隔と所定基準内で等しいと判定され、且つ前記所定の送信回数に等しい個数の音波パルスを直接波として抽出し、該直接波の各々の受信時刻を前記探索側端末に無線通信で通知する直接波抽出段階と、
前記通知された直接波の受信時刻に基づいて前記探索側端末が前記被探索側端末の位置関係を推定する推定段階とを備えることを特徴とする直接波抽出方法。
【請求項２】
前記録音開始段階に先だって、前記推定に用いる音波パルスの各々に共通な所定の波形情報を予め定める段階をさらに備え、
前記パルス送信段階は前記所定の波形情報で形成される音波パルスを送信し、
前記直接波抽出段階は前記録音と前記所定の波形情報との相関関数の値が所定基準を満たすピーク箇所を前記含まれる音波パルスとすることを特徴とする請求項1に記載の直接波抽出方法。
【請求項３】
前記直接波抽出段階にてさらに、前記受信間隔と前記所定の送信間隔との差が以下の式で与えられる許容値以内に収まる音波パルスを直接波として抽出することを特徴とする請求項1または2に記載の直接波抽出方法。
(許容値)＝(前記所定の送信間隔)×(前記探索側端末に想定される所定速度)÷(所定値として与えられる音速)
【請求項４】
前記探索側端末及び前記被探索側端末が通話機能を備えた携帯情報端末であって、前記被探索側端末が前記録音を行うための受波器が1個のみであり且つ前記通話機能も担い、前記探索側端末が前記音波パルスを送信する送波器が前記通話機能も担うことを特徴とする請求項1ないし3のいずれかに記載の直接波抽出方法。
【請求項５】
請求項1ないし4のいずれかに記載の直接波抽出方法で用いられる探索側端末。
【請求項６】
請求項1ないし4のいずれかに記載の直接波抽出方法で用いられる被探索側端末。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は探索側端末より被探索側端末の位置関係を推定する際の直接波抽出に関し、特に、端末機能に制限のある場合でも確実に直接波のみを抽出する直接波抽出方法並びに探索側端末及び被探索側端末に関する。
【背景技術】
【０００２】
音波の送受信によって、送信端末と受信端末との各種の位置関係の推定を行うことができる。ここでこのような推定を行うに際して、次のような問題がある。音波(超音波を含む)を送受信する際、図12に示す通り、一般的に受信側は(1)に示すような直接波だけではなく、壁や天井、障害物等の影響により(2)に示すような反射波を受信する。さらに、同様の音波を無関係な端末が同時に送信した場合には(3)に示すような干渉波も受信する。位置関係の推定を行うには、これらを区別して(1)の直接波のみを抽出する必要がある。
【０００３】
例えば、位置関係のうちの一種である距離を測位する方法として、以下の非特許文献1などに示されているように、送受信間の音波の伝搬時間に音速を乗算する方法があるが、このような方法を適用する場合、直接波の受信時刻が必要であるため、反射波や干渉波を除去しなくてはいけない。
【０００４】
図13に複数音波を受信した場合の受信した信号データ例を示す。横軸が時刻、縦軸が受信電力を示す。図13では、1個の音波が送信されたのに対して3個の音波を受信した例を表す。反射波を除去する方法として、音波の受信電力から直接波と反射波を区別する方法があり、図13は当該電力による区別を試みる例である。しかしながら、マイクの向きにより、直接波の方が反射波より受信電力が高くなるとは限らない。また、無関係な音源が受信端末の近くにいたり、無関係な音源の送信電力が大きかったりする場合、干渉波の受信電力の方が高くなる。そのため、受信電力を用いる方法は限界がある。
【０００５】
他の方法として、端末毎に音波の周波数を変更する方法がある。これにより、干渉波を除去することは可能となる。しかしながら、反射波の除去は不可能である。また、この方法を利用する場合は、マイク/スピーカが幅広い周波数に対応している必要があったり、マイクの周波数フィルタを動的に変更する必要があったりする等、ハードウェア的な制約や、ソフトウェア的な処理負荷が大きい。
【０００６】
このような事情に関連する従来技術として、以下の特許文献1では、受信側が複数マイクを備えることを前提とし、複数マイクの音の受信時刻の差の情報から反射を除去している。具体的には、複数マイクの受信時刻の差を求め、送信端末と受信端末との位置関係の一種である音波の到来角度を推定する。これにより、直接波と異なる方向から到来した波を反射波や干渉波と判断し、除去する。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開2006-72052号公報(反射波除去方法及び反射波除去システム)
【非特許文献】
【０００８】
【非特許文献１】菅野 裕介，金子 歩，矢谷 浩司，杉本 雅則，橋爪 宏達， 超音波センサを用いた相対位置認識技術における通信及び測距技術， 情報処理学会第67回全国大会, (2005年),  pp. 3-761-3-762 .
【発明の概要】
【発明が解決しようとする課題】
【０００９】
上記のような、送信端末と受信端末との各種の位置関係の推定を、携帯端末のような利用可能なハードウェア及び該ハードウェアの性能に制限のある端末にて送受信される音波を用いて、負荷の軽い処理で実現できれば、様々な有用な利用が可能となる。そしてここでは、音波の中から直接波のみを抽出することが必須である。
【００１０】
しかしながら、特許文献1に開示された技術による直接波の抽出では、受信側に複数のマイクを必要とし、一般に単数のマイクのみを備える携帯端末に適用しようとすると、不足マイクの追加によって追加ハードウェアが必要となる。また仮に追加したとしても、マイク数分の音波データ列の処理が必要となり、処理が重くなる。
【００１１】
本発明の目的は、上記従来技術の課題を解決し、通常のハードウェアを備える端末において軽い処理により実現可能な、パルス状の音波を用いて探索側端末より被探索側端末の位置関係を推定するに際して直接波のみを抽出する直接波抽出方法並びに当該方法にて用いられる探索側端末及び被探索側端末を提供することにある。
【課題を解決するための手段】
【００１２】
上記の目的を達成するため、本発明は、音波パルスを用いて探索側端末より被探索側端末の位置関係を推定する際の直接波抽出方法であって、前記位置関係の推定を開始する旨の情報と、前記音波パルスの所定の送信回数及び送信間隔の情報を前記探索端末より前記被探索端末へ無線通信で通知した後、当該通知を前記被探索側端末が受信した旨を前記探索側端末に返信する推定開始確認段階と、前記推定開始確認段階の後、前記被探索側端末が録音を開始する録音開始段階と、前記推定開始確認段階の後、前記探索側端末が前記所定の送信回数及び送信間隔を設けた音波パルスを送信した後、前記被探索側端末に音波パルス送信終了を無線通信で通知するパルス送信段階と、前記音波パルス送信終了の通知を受信して前記被探索側端末が前記録音を終了し、該録音に含まれる音波パルスのうち、受信間隔が前記所定の送信間隔と所定基準内で等しいと判定され、且つ前記所定の送信回数に等しい個数の音波パルスを直接波として抽出し、該直接波の各々の受信時刻を前記探索側端末に無線通信で通知する直接波抽出段階と、前記通知された直接波の受信時刻に基づいて前記探索側端末が前記被探索側端末の位置関係を推定する推定段階とを備えることを特徴とする。
【発明の効果】
【００１３】
前記特徴によれば、受信録音に含まれる音波パルスの中から、送信した音波パルスの送信回数及び送信間隔と合致するものを直接波によるものと判定して抽出するので、探索側端末及び被探索側端末がハードウェア等に制限のある端末であっても正確に、端末間の位置関係を推定するのに必要な直接波が抽出できる。
【図面の簡単な説明】
【００１４】
【図１】本発明による直接波の音波パルスを抽出する原理を説明する図である。
【図２】本発明に係る探索側端末及び被探索側端末として機能することのできる一般的な情報携帯端末の機能ブロック図である。
【図３】本発明に係る探索側端末及び被探索側端末の、位置関係推定を行う際の関係を含んだ機能ブロック図である。
【図４】位置関係の一例としての、相対方向を推定する処理の概要を説明する図である。
【図５】相対方向を推定するために用いる、送信間隔及び受信間隔並びに対応する図4における端末の向きの一例を示す図である。
【図６】探索側端末と被探索側端末とで位置関係の推定を行う手順の図である。
【図７】図6の手順における探索側端末側の処理のフローチャートである。
【図８】図6の手順における被探索側端末側の処理のフローチャートである。
【図９】録音中の音波パルス箇所から直接波によるパルスを抽出する処理のフローチャートである。
【図１０】図9の処理の適用例としての録音音波パルスの例である。
【図１１】許容値を設定するために考慮する探索側端末と被探索側端末との位置関係の例を示す図である。
【図１２】音波の送受信において一般に問題となる直接波、反射波及び干渉波の区別を概念的に説明するための図である。
【図１３】音波の送受信において、受信電力のみを利用すると直接波を必ずしも区別できないことを説明するための図である。
【発明を実施するための形態】
【００１５】
以下、図面を参照して本発明を詳細に説明する。本発明では、予め所定の送信回数及び送信間隔を設定しておき、当該設定に従うパルス状の音波を送信端末がスピーカ等にて送信し、受信端末がマイク等にて受信し録音する。受信端末は前記設定における情報を利用して、録音の中から送信端末が送信した直接波によるパルスを選択し、当該選択結果を送信端末に伝える。送信端末は当該選択結果を用いて、受信端末との位置関係を推定する。推定される位置関係としては、端末間の距離や端末同士の相対的な向きなどがある。
【００１６】
以下、上記のような位置関係の推定を行う側と受ける側という意味で、音波の送信端末を探索側(端末)、音波の受信端末を被探索側(端末)と呼ぶこととする。
【００１７】
図1は本発明による直接波のパルス抽出の原理を説明する図である。前提として、探索側と被探索側で、予め用いる音波パルスの時間軸上の波形情報を共有しているものとする。(1)は単一のパルスのみを送信し受信して検出する場合の例である。被探索側は受信録音と予め共有して保持している音波パルス波形との、(1)に示すような相互相関関数を算出する。そして相関値が所定の閾値を超えて且つピーク値となる時刻t1を直接波受信時刻と判定する。(1)ではそのような条件を満たす箇所は時刻t1の1箇所のみであるので、当該t1を直接波受信時刻と判定すればよい。
【００１８】
しかし、単一パルスを用いると、反射波や干渉波あるいはその他の雑音によって、(2)に示すような例えば時刻t20及びt21といったような、2箇所以上で所定の閾値を超えるピークが得られた場合に、いずれが直接波によるものであるかが判定できない。(2)の例では時刻t20の方が相関値が大きいが、干渉波などの可能性もあり、相関値最大を選出して直接波の受信時刻を判定することはできない。
【００１９】
そこで本発明では、(3)に示すように、所定回数及び所定間隔を設けた複数の音波パルスを利用する。(3)の例では、100msの間隔を設けた同一波形の2個の音波パルスを送信し、受信録音に対して相互相関関数を算出した例である。相関値が所定の閾値を超えるピーク箇所がt30、t31、t32及びt33の4箇所得られるが、2個のパルスを100msの間隔を設けて送信したという情報を利用して、これらの中から直接波受信時刻として、2個のパルスであって間隔が100msとなるt32及びt33を選択する。
【００２０】
なお、(3)における回数及び間隔を予め乱数などで設定することによって、仮に同様の波形情報を発する他の音源(干渉波の音源)が存在したとしても区別することができる。また、(3)のように回数及び間隔を設定したとしても、直接波の他に反射波が同様の回数及び間隔で現れうることも考えられる。しかしながら、探索側と被探索側とが少しでも移動すると、反射波の経路は大きく変動するため、このように反射波と直接波とが区別できなくなる可能性は低い。特に本発明では探索側及び被探索側の両者に携帯情報端末を想定しているので、このような可能性は低い。
【００２１】
なお特に本発明の利点として、以上の図1の(3)のような直接波抽出処理が、単一マイクによる受信録音で簡素な処理によって実施できる、という点がある。
【００２２】
図2は本発明に係る探索側端末又は被探索側端末として機能することのできる、一般的な携帯情報端末(スマートフォン、タブレット、携帯電話など)の構成の一例を示した機能ブロック図である。
【００２３】
携帯情報端末100は、制御部101、記憶部102、入力部103、表示部104、通信部105、マイク(受波器)107及びスピーカ(送波器)108を含む音声入出力部106、計時部109、付加機能部110並びにバス200を備える。
【００２４】
制御部101は各部および各部間の制御を行い、記憶部102は当該制御部等の動作に必要な一時的又は固定的な情報を記憶する。入力部103はキーパッドやタッチパネルなどを含みユーザ入力を受け取る。表示部104はディスプレイなどを含み、各種情報をユーザに向けて表示する。通信部105はアンテナ等を含み各種の形態における無線通信を担う。
【００２５】
音声入出力部106はマイク107とスピーカ108とを含み、携帯情報端末100が通話機能を備える場合であれば通話時に利用され、その他、本発明で実施される音声データの再生や録音などにも用いられる。計時部109は時計の役割を果たす。付加機能部110はその他各種のユーザ用途に応じた機能を提供する。バス200は各部間のデータ転送を担う。なお、付加機能部110は制御部101に含まれていてもよい。
【００２６】
以下に説明するように、本発明の探索側端末及び被探索側端末はこのような一般的な携帯情報端末100を用いて部分的機能として、または追加的機能として実現できる。また以下の説明より明らかなように、本発明の探索側端末及び被探索側端末の両端末機能を一端末において同時に備え、探索側／被探索側の各立場となる場合毎に機能を使い分ける端末も一般的な携帯情報端末100にて実現できる。なおまた、携帯情報端末100は、同等の機能を実現できる一般の情報端末(PCなど)であってもよい。
【００２７】
図3は本発明に係る探索側端末と被探索側端末との、位置関係の推定を行う際の関係を含んだ機能ブロック図である。探索側端末10は相対方向推定部11、向き取得部12、入力部13、無線通信部14、音波設定・送信部15、距離推定部16及びこれら各部間のデータ転送を担うバス17を備える。被探索側端末20は無線通信部21、音波受信・識別部22、入力部23及びこれら各部間のデータ転送を担うバス24を備える。
【００２８】
当該機能ブロック図において、推定する位置関係として、探索側端末から見た被探索側端末の相対方向を推定する場合は距離推定部16を利用せずに相対方向推定11及び向き取得部12を利用する。距離を推定する場合には逆に、相対方向推定11及び向き取得部12を利用せず、距離推定部16を利用する。
【００２９】
以下、相対方向の推定を主に説明し、適宜、距離の推定を行う場合も追加で説明することとする。図4は相対方向推定の概要を説明する図である。図4では屋外の待ち合わせ広場といったような、音波到達可能な例えば数十メートル程度の平面的な場所領域にて本発明に係る探索側(a)の端末から被探索側(b)の端末の方向を推定する。なお、ここで音波到達可能とは、広場にいる人などの(音にとっての)障害物による減衰などによる制約、図2の携帯情報端末100におけるマイク107の制約、当該携帯情報端末100で利用可能なバッテリによる制約、当該携帯情報端末100を利用するユーザが不快にならないような範囲での音を用いることによる制約(もし超音波を利用するならば、当該制約はない)、などによって定まるものである。
【００３０】
図4においてまず、探索側(a)と被探索側(b)は無線通信可能であり、且つ当該無線により今から(a)から(b)に対して相対方向推定を行うということを互いに認識している状態にあるとする。
【００３１】
次に(a1)に示すように、例えば探索側端末のユーザが探索側端末を手に持って肘の回りに回転させる等して探索側端末をほぼ水平面上にスウィングさせる。このとき、図示しているように回転の時間経過と共に、例えば5回といったような複数回のパルス状の音波S(1)〜S(5)を探索側端末より送信する。そして探索側端末は各音波を発生した各時刻と各時刻における探索側端末の方向とを記録する。
【００３２】
被探索側(b)の端末では当該方向推定の開始にあたって、(a1)にて探索側(a)の送信する音波パルスの所定の送信回数および間隔の情報を探索側(a)より受け取り、適宜録音を開始し、さらに音波送信を終えた旨の通知を探索側(a)より受け取って録音を終了する。被探索側(b)は前記情報を用いて図1(3)で説明した手法により、録音から対応する直接波によるパルスを識別し、各音波S(1)〜S(5)に対応する受信時刻を求め、探索側(a)に当該時刻を無線送信する。
【００３３】
このような被探索側(b)における直接波パルスの識別の結果として、別のペアとして方向推定を行う等している通行人(c)等の発生する音、すなわち図Aで前述の干渉波が除外される。また図4には示していないが、図Aで前述の反射波やその他の雑音も除外される。
【００３４】
探索側(a)は受信時刻を受け取って受信間隔を算出し、記録してある送信時刻より算出される送信間隔と比較し、相対方向を推定する。図5に当該推定に用いる各音波送信時の端末向き、送信間隔及び受信間隔の一例を示す。図5では音波S(1)、S(2)を送信した間の区間では送信間隔(100ms)のほうが受信間隔(99ms)より長く、それ以降の区間では逆の関係となっている。
【００３５】
図5の例における上記結果の得られるメカニズムは次の通りである。すなわち、図4に示すように、探索側(a)と被探索側(b)との相対方向および端末のスウィング領域の関係においてドップラー効果と同様の原理により、送信間隔より受信間隔が狭い区間(a2)[音波S(1)、S(2)送信区間]と送信間隔より受信間隔が広い区間(a3)[音波S(3)、S(4)、S(5)送信区間]との区別が生じるためである。
【００３６】
探索側(a)は送信間隔と受信間隔とのこのような原理による差異を抽出して、受信間隔と送信間隔との大小関係の逆転が生ずる方向である、音波S(2)とS(3)とを送信した間における端末の方向(45°と90°の間の方向)を被探索側(b)の存在する相対方向であると推定する。
【００３７】
なおまた、図4及び図5を用いて相対方向推定の場合を説明したが、距離を推定する場合には、図4のようなスウィングを加える必要はなく、より単純に次のようにすればよい。すなわち、距離推定を開始する旨の情報を探索側から被探索側へ無線で伝えて同期を取り、被探索側は録音を開始する。ここで特に、距離推定においては単に通信のための同期を取るだけではなく、両端末において所定のプロトコルを用いるなどして時刻を正確に同期させる。
【００３８】
探索側は所定回数及び間隔の音波パルスを送信し、当該各パルスの送信時刻を記録する。ここで距離推定においては、音波パルス送信時の探索側端末は静止させておけばよく、相対方向推定の場合のようにスウィング動作は不要である。むしろ受信間隔に誤差が生じるので、音波パルス送信時に探索側端末は極力動かさない方がよい。
【００３９】
被探索側は録音より前記所定回数及び間隔を用いて、送信パルスの直接波に相当する受信パルスを抽出し、録音にて記録されているその各受信時刻を探索側に返信する。探索側は、送信／受信の順番が互いに対応する送信パルスと受信パルスとの記録時刻の差に音速を乗じることによって、被探索側への距離を推定する。当該乗ずる音速としては、例えば340m/sのように所定値を設けておけばよい。
【００４０】
図3(あるいは図2)に戻り、全体として上記図4及び図5のような相対方向推定又は距離推定を行う探索側端末10及び被探索側端末20の各機能ブロックについて説明する。
【００４１】
相対方向推定部11は各種情報を用いて被探索側端末20の存在している相対的な向きを推定する。距離推定部16も各種情報を用いて被探索側端末20との距離を推定する。相対方向推定部11及び距離推定部16は例えば付加機能部110に含めることができる。
【００４２】
向き取得部12は探索側端末10の向きを計時部109が取得する時刻と連動して取得し、例えば付加機能部110に含めることができる。一実施形態では向き取得部12は地磁気センサを用いて向きを取得する。
【００４３】
入力部13（探索側端末10側）はボタンなどからなり、ユーザが探索側端末10を起動して相対方向推定又は距離推定を開始させる旨や、推定の各段階の完了等をボタン押下などにより探索側端末10に通知する。入力部13には携帯端末100の入力部103を利用することができる。
【００４４】
探索側端末10の無線通信部14および被探索側端末20の無線通信部21はBluetooth（登録商標）、無線LAN、3G、Zigbee（登録商標）等により空間中やネットワーク等を介して互いに無線通信し、音波の送信時刻・送信間隔や受信時刻・受信間隔といったような相対方向及び距離推定に用いるデータや、推定フローにおける各段階での端末間同期信号を端末間で送受信する。無線通信部14および無線通信部21には、携帯端末100の通信部105を利用することができる。
【００４５】
音波設定・送信部15はパルス状音波の送信回数及び間隔を設定し、スピーカなどにより当該音波を設定通りに再生して送信する。音波設定・送信部15にはスピーカ108、付加機能部110及び計時部109などを利用することができる。実際に送信する音波には、例えば、一般的な携帯端末100の備えるスピーカ108により送信可能である信号長が50ms、周波数帯が2-6kHzであるチャープ信号を用いることで、フェーディングの影響を低減できる。スピーカ/マイクが対応していれば、超音波を用いることもできる。
【００４６】
音波受信・識別部22はマイクなどにより音波を受信、録音し、無線通信部21を介してあらかじめ受け取っている送信回数・間隔などの情報を用いて当該録音の中から音波設定・送信部15より送信された直接波を識別する。音波受信・識別部22にはマイク107、付加機能部110及び計時部109などを利用することができる。
【００４７】
入力部23（被探索側端末20側）は、位置関係推定の各段階における探索側端末10からの同期確認への応答などからなる被探索側端末20のユーザの入力を受け付けるが、当該入力部23を用いず被探索側端末20が自動応答してもよい。入力部23にも携帯端末100の入力部103を利用することができる。
【００４８】
図6に、図4で説明したような相対方向及び距離の両方の場合を含む位置関係の推定を行うための、探索側端末10と被探索側端末20との間のやりとりの手順を示す。また当該手順において探索側端末10で実施される各ステップのフローチャートを図７に、被探索側端末20で実施される各ステップのフローチャートを図8に示す。図6に示す各端末自身および端末間の手順には手順(1)〜(14)と番号を付しているが、対応するステップの説明においては図7および図8においても同様にブロック内に手順の番号(i)[i=1〜14]を付して参照している。当該手順の説明により、図3の各機能ブロックの処理の説明も行う。
【００４９】
手順(1)において、探索側端末10を持っているユーザが入力部13に含まれるボタンを押下することで、端末上にインストールされている位置関係推定アプリケーションが立ち上がるなどして、位置関係推定が開始される。手順(2)にて、被探索側端末20に対して無線通信を介して相対方向推定開始を通知し、被探索側端末20においても所定のアプリケーションを立ち上げるなど準備した後、承認の返信(ACK)を受ける。
【００５０】
手順(3)にて、音波設定・送信部15がパルス音波の送信回数及び間隔を決定する。相対方向の推定に際しては、前述のようにパルス送信間隔と受信間隔とで1ms程度の差が生ずることを積極的に利用する必要があるので、例えば次のように決定する。
【００５１】
n個のパルス状音波S(i) (i=1、2、…、n)を送信する際の(n-1)個の送信間隔I_t(i)(i=1、2、…、n-1)を不定期間隔とし、当該送信間隔を次式(1)を用いて決定する。
【００５２】
I_t(i)=rand(m)×50ms   …(1)
【００５３】
ここで、rand(m)はm以下の自然数をランダムに発生させる変数である。例えばm=3として、順次I_t(i)を定め、当該間隔の総和が所定値(例えば1sや500ms)を超えた時点を最後の音波パルスとして個数nを定める。このようにして、図5の例のような送信回数および間隔を定めることができる。あるいは同様に、何通りかこのような送信回数及び間隔を所定のものとして求めておき、2通り以上定めている場合はその中からランダムに選ぶようにしてもよい。式(1)のように乱数を用いずに、100ms間隔で5回といったように所定間隔及び所定回数を定めておいてもよい。距離推定の場合も、相対方向推定における上記のような手法で回数及び間隔を定めることができる。
【００５４】
なお、各音波パルス自体の情報は、図6の各手順自体の開始前に、あらかじめ探索側端末10及び被探索側端末20にて波形情報(パルス継続時間及び当該時間内での時間変化)として既知であり、上記n個のパルスは全て同じ波形のパルスであるとする。なおまた、当該パルスに用いる波形情報を複数種類設けておいて、n回同じ波形でパルスを送る際に、そのうちいずれの種類を用いるかを上記手順(3)にて決定して通知してもよい。
【００５５】
手順(4)にて、当該決定した送信回数及び間隔の情報を、被探索側端末20に無線送信する。なお、上記のように所定の波形情報を有する音波パルスに対して、毎回所定の範囲内でランダムに回数及び間隔を定めることにより、直接波の抽出が効果的に行える。被探索側端末20は受信確認メッセージ(ACK)を返信すると共に、手順(5)に進み音波受信・識別部22がマイクを起動して音波受信すなわち録音を開始する。
【００５６】
次の手順(6)〜(9)は、まず相対方向推定の場合から説明する。探索側端末10は受信確認(ACK)を受けると手順(6)にてユーザが入力部13のボタンを押下して方向推定のスウィング動作を開始する旨を探索側端末10に伝え、押下と同時にスウィング動作を加える。当該スウィング動作と共に手順(7)にて音波設定・送信部15によって、所定の波形情報を所定回数及び間隔を設けて再生した音波が発信されると共に、同時に手順(8)にて当該音波発生の各時点においてスウィング動作により変化している探索側端末10の向きを向き取得部12が取得する。
【００５７】
当該手順(6)後のスウィング開始と同時に手順(6)のボタン押下により起動される手順(7)及び手順(8)を行うことにより、探索側端末10において各音波パルス送信時刻と当該各時刻における端末の向きとが得られる。スウィングを終えると手順(9)にてユーザが入力部１３のボタンを押下して探索側端末10にスウィング動作の終了を伝える。当該手順(9)は送信音波を全て送信した時点又はその所定時間後に探索側端末１０が自動で終了判断するようにしてもよい。
【００５８】
以上、相対方向推定の場合について説明した手順(6)〜(9)につき、距離推定の場合にはスウィング動作を省略して、好ましくは静止状態で同様にして実行すればよい。推定精度の面からは好ましくないが、後述のように、例えば探索側端末10を持つユーザが歩くことによって探索側端末10が移動中に実行してもよい。距離推定の場合は、上記のボタン押下が探索側端末10に所定のパルス音波を発生させる合図となる。なお、距離推定の場合には前述の手順(2)の際に、ネットワーク・タイム・プロトコルなどを用いて、探索側端末10及び被探索側端末20の時計を正確に合わせておく。
【００５９】
手順(10)にて無線通信により探索側端末10より被探索側端末20に位置関係推定の終了(推定に必要な準備作業の終了)を通知し、被探索側端末20は確認応答(ACK)した後、手順(11)にてマイクを停止して録音（音波受信）を終了する。さらに被探索側端末20は手順(12)にて、手順(4)にて受信した送信回数及び間隔の情報、予め既知の各音波パルスの波形情報を利用することにより、自身での手順(5)~(11)における録音データから、音波受信・識別部22によって直接波パルスに相当する箇所の時刻情報を抽出する。当該抽出処理の詳細については後述する。
【００６０】
手順(13)にて、当該抽出された直接波受信時刻は探索側端末10に無線送信され、確認応答メッセージ(ACK)を返信する。手順(14)にて探索側端末10は送信した音波パルスの間隔あるいは時刻と、無線受信した直接波受信時刻と、相対方向推定においては各送信時点における端末の向きとを用いて被探索側端末20の位置関係を推定する。当該推定は、相対方向推定であれば相対方向推定部11が、距離推定であれば距離推定部16が行う。
【００６１】
以上の手順(2)、(4)、(10)及び(13)における無線通信は、探索側端末10の無線通信部14及び被探索側端末20の無線通信部21を介して、必要に応じてその間にさらに所定のネットワークを介して行われる。
【００６２】
なお、本発明においては、上述のように探索側端末10と被探索側端末20とで位置関係推定を開始する旨を伝える同期処理を行うことによって、音波送信を行う時間区間を含みその他の余分な時間を極力含まない区間として手順(5)〜(11)間の録音が行われるため、被探索端末20側で音波受信・識別部22が録音から送信音波に対応する音を識別抽出するのが容易になるという効果がある。
【００６３】
また以上図6の手順における探索側端末10の各ステップのフローチャートである図７を説明する。ステップS0にて相対方向推定開始するとステップS1[手順(1)]にて入力部13のボタンをユーザが押下する。ステップS2[手順(2)]では被探索側端末20に対して相対方向推定の開始を無線通知し、処理の同期を促す。ステップS3[手順(3)]では送信回数及び間隔を音波設定・送信部15が決定し、ステップS4[手順(4)]では当該決定情報（送信間隔など）を被探索側端末20に無線通知する。
【００６４】
ステップS5[手順(6)]に進みユーザによるスウィング動作開始の合図であるボタン押下を入力部13が検知する。ステップS5と同時に、相対方向推定の場合、ユーザが探索側端末10にスウィング動作を加える(距離推定では省略)と共に、ステップS6[手順(6),(7)]において設定通りの音波送信および端末向き取得を行う。相対方向推定の場合、スウィング動作を終えたユーザはステップS7[手順(9)]にて入力部13のボタンを押下することによりスウィング動作終了を探索側端末10に伝える。距離推定であれば単に音波送信終了を探索側端末10に伝える。前述のように当該ステップS7はユーザによるボタン押下ではなく音波送信終了後自動で行うようにしてもよい。
【００６５】
ステップS8[手順(10)]では無線通信により位置関係推定の終了(被探索側へ促す処理の終了)を被探索側端末20に伝える。ステップS9[手順(13)]では被探索側端末20が抽出した直接波時刻情報を無線にて送信し、探索側端末10が受信する。ステップS10[手順(14)]にて送信時刻、直接波受信時刻、(さらに相対方向推定であれば)取得向きに基づいて被探索側端末20の存在する相対方向又は該端末との距離を推定し、ステップS11にてフローは終了する。またステップS5、S7及びS9にてボタン押下が検出されなかった場合や、被探索側端末20から必要な情報が送信されてこなかった場合はフロー中にてエラーが発生したと判定し、再度ステップS1よりやり直す。
【００６６】
なお、図6および図7で探索側端末10に対するユーザのボタン押下として説明した部分は、入力部13が例えばタッチパネル等のその他のインタフェースであってもよく、同様に各種の開始合図などの入力検知として用いられる。相対方向推定の場合であれば、インタフェースとしては手順(6)のユーザ入力検知後に探索側端末10に余分な動作を加えることなく迅速且つスムーズにスウィング動作を開始でき、スウィング終了時も手順(9)にて探索側端末10に余分な動作を加えることなく迅速且つスムーズに端末にユーザ入力を伝えることのできるインタフェースが好ましく、ボタン押下はその一例である。
【００６７】
さらに以上図6の手順における被探索側端末20で実行される各ステップのフローチャートである図8を説明する。ステップＳ20で相対方向推定を開始すると、まずステップＳ21[手順(2)]にて探索側端末１０からの位置関係推定開始通知すなわち同期リクエストを受信し、位置関係推定に応じられるよう準備を行い応答返信する。ステップS22[手順(4)]では探索側端末10より送信回数及び間隔の情報を無線にて受信し、当該情報は音波受信・識別部22に後の直接波抽出処理のために渡される。その後ステップS23[手順(5)]にて音波受信・識別部22がマイクを起動し音波受信すなわち録音を開始する。ステップS24[手順(10)]にて探索側端末10より音波送信の終了通知を受信し、応答すると共に状態を同期させる。すなわちステップS25[手順(11)]に進んで音波受信・識別部22において起動したマイクを停止し、録音を終了する。
【００６８】
ステップS26[手順(12)]に進み、音波受信・識別部22はステップS22にて受信した情報を用いて録音データより直接波を抽出し、各直接波の受信時刻を算出する。ステップS27[手順(13)]に進み、当該算出結果を探索側端末10に通知するとステップS28にてフローは終了する。また、当該フローにおいてステップS22、S24などにて、探索側端末１０より推定フローが順調に進んでいる旨の情報を所定時間待っても受信できない場合にはエラーが発生しているので、再度ステップS21に戻る。
【００６９】
なお、被探索側端末20における、探索側端末10からの各種同期要求に対する応答の処理ステップS21[手順(2)のACK]、S22[手順(4)のACK]及びS24[手順(10)のACK]は、全て自動で行うようにしてもよい。また、当該位置関係推定の利用用途に応じて、最初のステップS21を被探索側端末20を持っているユーザによる承認の入力によって行うようにしてもよい。
【００７０】
次に、音波受信・識別部22において直接波の抽出を行い、各直接波の受信時刻が算出できている前提で、相対方向推定部11が探索側端末10からみて被探索側端末20が存在する相対方向を推定する詳細につき説明する。なお、同様の前提の元で距離推定部16が両端末間の距離を推定する場合には、あるパルスの送信時刻と対応する直接波受信時刻との差を求め、音速を乗ずればよい。
【００７１】
図4で概略的に説明したように、音波設定・送信部15が設定した音波を送信している間、同時に探索側端末10はユーザが当該端末を手に持つなどして概ね水平に且つ当該ユーザの腕の長さなどに対応する概ね一定の半径の円状に、当該ユーザの位置する静止位置を中心にスウィング動作を受ける。そして当該スウィング動作中の各パルス音波送信時における探索側端末10の向きが向き取得部12により時刻と共に取得される。
【００７２】
なお、当該スウィング動作が所定の半径を伴い端末の向き変化と共に位置移動があることは本発明が波源の移動によるドップラー効果に対応する原理を利用していることから必須である。たとえば端末を固定位置で回転させるだけでは位置移動が（ほとんど）ないので相対方向推定は困難となる。
【００７３】
当該スウィング動作に伴う音波送信終了後、被探索側端末20において上述の音波受信・識別部22の処理によって直接波受信時刻が算出され、無線通信を介して相対方向推定部11に渡される。相対方向推定部11は当該受信時刻より直接波受信間隔を求め、予め設定し音波受信・識別部22より送信した音波の送信間隔、および各パルス送信時刻に取得された向きを用いて、ドップラー原理に対応するメカニズムを利用して被探索側端末20の相対方向を推定する。すなわち、スウィング中に探索側が被探索側に近づいている区間に送信した音波の受信間隔は送信間隔より狭くなり、反対に遠ざかっている区間に送信した音波の受信間隔は送信間隔より広くなる。これより、両区間の境界となる音波を特定し、その音波を送信した際の端末向きを相対方向と推定できる。
【００７４】
具体的には次のように推定する。n個の音波S(i)(i=1、2、…、n)を送信した際の送信間隔をI_t(i)(i=1、2、…、n-1)、受信間隔をI_r(i)(i=1、2、…、n-1)、端末向きをD(i)(i=1、2、…、n)とし、相対方向RDは次式(2)で求められる。
【００７５】
RD=D(i+1) (iはI_t(i)>I_r(i)かつI_t(i+1)≦I_r(i+1)を満たす)   …(2)
【００７６】
ここで、被探索側端末２０が探索側端末１０をスウィングした方向の後ろ側に位置する場合、式(2)の条件を満たす端末向きは得られない。その場合は次式(3)により、受信間隔が送信間隔より広くなる区間と、受信間隔が送信間隔より広く区間の境界となる音波を特定し、その音波を送信した際の端末向きの真後ろを相対方向RDと推定する。
【００７７】
RD=D(i+1) (iはI_t(i)<I_r(i)かつI_t(i+1)≧I_r(i+1)を満たす)   …(3)
【００７８】
前述の図5のデータを例に相対方向推定を示す。5個の音波S(1)〜S(5)を送信し、各音波S(i)送信時における端末向きD(i)、音波S(i)とS(i+1)との送信間隔I_t(i)、受信音波R(i)とR(i+1)との受信間隔I_r(i)がそれぞれ図中に示すようになったとする。この場合、式(2)より相対方向RD=D(2)=45°と推定する。なおまた上記の例であれば推定方向はD(2)=45°とその次のD(3)=90°の間の方向、としてもよいが、一般には送信間隔を細かく取ることで既に探索側端末１０側に角度のデータが存在してユーザに即座に結果表示できるD(2)（またはD(3)）と決定しても問題はない。
【００７９】
ここで、相対方向推定により実現できる各種アプリケーション、サービスの一例として、オフ会の待合わせにおける相手特定支援を紹介する。SNS(Social Network Service)のオフ会等、ネットワーク上で仲良くなった人と実際に待合わせする場合に、面識がないため、待合わせ場所に無関係な人が複数いると、待合わせ相手を特定することが容易ではない。その際に、相手との相対方向を提供することで相手特定を支援することができる。
【００８０】
次に、音波受信・識別部22によって直接波パルスに相当する箇所の時刻情報を抽出する処理について説明する。まず、図1の原理で説明したように、音波受信・識別部22では録音とあらかじめ両端末で既知の音波パルス波形情報との相関関数を計算して、ピークとなり且つピーク値が所定基準を超える箇所を直接波受信時刻の候補として求める。このような候補がm箇所見つかったとして、この中から実際に送信した所定数n個のパルスを抽出する処理を説明する。なお、ここでm>nを想定している。
【００８１】
当該抽出処理のフローを図9に示す。当該抽出処理は、候補箇所m個から直接波受信箇所n個を見つけ出すために、m箇所からn箇所を選ぶ全ての組み合わせmCn(= m!/(n!)/{(m-n)!} )通りの場合につき、受信間隔が対応する箇所における所定の送信間隔とほぼ等しいかを逐一確かめ、誤差が最も小さいものを選ぶという処理である。以下、開始ステップS30以降の図9の各ステップを説明する。
【００８２】
(ステップS31)m個の音波信号から任意のn個の音波信号の組み合わせを求める。当該組み合わせの各々を識別するカウント変数をk(k=1,2,…,mCn)とし、k=1から開始して全ての組み合わせkにつき以下ステップS32〜S37を実施する。
(ステップS32)組み合わせk(k=1,2,…,mCn)の音波信号n個の受信時刻rk(i)(i=1,2,…,n)を求める。
(ステップS33)組み合わせkのn個の音波信号の各受信間隔r_intervalk(i)(i=1,2,…n-1)を次式で計算する。
r_intervalk(i)=rk(i+1)-rk(i)
【００８３】
(ステップS34)i番目の送信間隔t_interval(i)と、対応するi番目の受信間隔r_intervalk(i)との絶対誤差errork(i)を次式で計算する。なお、当該各送信間隔t_interval(i)は前述の通り、直接波送信回数nと共に図6の手順(4)にて被探索端末10へ通知されている。
errork(i)=|r_intervalk(i)-t_interval(i)|  (i=1,2,…,n-1)
(ステップS35)絶対誤差errork(i)が1つでも許容値thresholdを超過した場合、絶対誤差の累積値error_sumk=∞とし、(ステップS37)へ移動する。当該許容値については後述するが、許容値を超過する場合、当該組み合わせkは直接波の受信時刻を表していないと(ステップS38)で自動判定するために累積値を上記のように設定する。絶対誤差errork(i)が全て許容値threshold以内に収まっていれば、(ステップS36)へ進み累積値error_sumkを計算する。
(ステップS36)絶対誤差の累積値error_sumkを次式で計算する。
error_sumk=errork(1)+errork(2)+…+errork(n-1)
【００８４】
(ステップS37)全ての組み合わせkにつき以上の処理を行ったか確認する。全て行い、k==mCnとなる場合、(ステップS38)へ移動する。そうでない場合、k=k+1とし、未処理の次の組み合わせに対して処理を継続するため、(ステップS32)に戻る。
(ステップS38)絶対誤差の累積値error_sumkが最小となる組み合わせkを求め、当該組み合わせkにおける音波信号n個が直接波を受信したものであると判定し、受信時刻を求める。
【００８５】
図10を用いて反射波を除去し直接波を抽出する、図9のフローチャートによる処理適用例を説明する。図10では送信回数n=2、送信間隔interval(1)=100msとしており、録音に対する相関関数の算出を行ってパルス箇所を求めた結果、4個の音波信号s(1)、s(2)、s(3)、s(4)を受信した場合を、縦軸を録音音波における受信電力として示している。以下、上記手順を実行した例の一部を記載する。
(ステップS31の例)6通り(4C2)の組み合わせ((s(1),S(2))、(s(1),S(3))、(s(1),S(4)), (s(2),S(3)), (s(2),S(4)), (s(3),S(4)))を求める。
(ステップS32の例)組み合わせ1((s(1),S(2))について以下を実行する。
(ステップS33の例)r_interval1(1)=50
(ステップS34の例)error1(1)=50
(ステップS35の例)threshold<error1(1)であるため、(ステップS37)へ移動する。なお、この例では許容値threshold=0.029msを想定している。
(ステップS37の例)k=2として(ステップS31)から繰り返す。
上記手順により、組み合わせ3(s(1),S(4))が直接波であり、s(2)、s(3)が反射波や干渉波であることが分かる。
【００８６】
次に、上記(ステップS35)における許容値thresholdについて説明する。許容値はアプリケーションの種類や、送信間隔の値になどによって決定される。各実施形態について説明する。一実施形態では、探索側端末10にて予め設定した各送信間隔t_interval(i)(i=1,2,…n-1)のうちの最小値に所定割合α(0<α<1)を掛けた値とすることができる。例えば次式のように、最小送信間隔の1/10などとすることができる。
threshold=min{t_interval(i)|i=1,2,…n-1}/10
【００８７】
別実施形態では、音波受信時に被探索側端末20は静止していると仮定し、直接波を送信している際に探索側端末10が移動していることによる送信間隔と受信間隔の差が生ずるという点に注目して、当該差に基づいて許容値thresholdを定める。なお、相対方向の推定を行う場合は当該差を積極的に利用することとなる。まずは、移動することが好ましくない距離推定を行う場合を想定した許容値設定から説明する。
【００８８】
図11は許容値を設定するに際して考慮すべき探索側端末10と被探索側端末20との位置関係の例を示す図である。(a)が説明する距離推定を行う場合、(b)は相対方向推定を行う場合の図である。(a)はある１つの音波パルスを発している瞬間における探索側端末10の位置Aと被探索側端末20の位置Bとを示し、AB間の距離がLである。当該音波パルスと次の音波パルスの間の送信間隔をt_intervalとし、当該t_intervalの間に探索側端末10がユーザが持ち歩いている等により速度vで移動しているとすると、移動方向は360°ランダムにありえるので、1音波パルスを発し終える時間tの経過時にはAを中心とする半径vtの円上のどこかに探索側端末10が存在することとなる。
【００８９】
当該半径v*t_intervalの円上のうち、送信間隔と受信間隔との差を最も大きくするのは(a)の(1)又は(2)に示すような、被探索側端末20の方向へ真っ直ぐに向かう又は遠ざかる場合であり、距離がL±v*t_intervalとなる。なお、本発明におけるような音波による位置関係の推定を行う際には一般にL>>v*t_interval(例えばL/(v*t_interval)>100など)であるので、(1)や(2)以外の斜め方向における送信間隔と受信間隔との差を考慮する際も、AB方向成分のみの効果を考えればよい。
【００９０】
以上のように、距離推定の場合(a)では(1)又は(2)が最大の差を生ずる方向であるので、当該v*t_intervalの分の許容値を設定すればよい。音速を定数として340m/sとする。また、探索側端末10を持つユーザの音波送信中の歩速が例えば毎秒1m以下であるとする。この場合、送信間隔t_interval[ms]の間に受信間隔と生じる差は(t_interval/340)[ms]以下となるので、当該値を許容値とすればよい。より一般には次のように求める。
(許容値)=(送信間隔)×(ユーザの歩く速度として想定される所定速度)÷(音速)
【００９１】
上記設定において、(送信間隔)は(ステップS35)における各i番目(i=1,2,…n-1)ごとに定めてもよいし、許容値にマージンを持たせる意味で全n-1送信間隔のうちの最大のものを選んでもよい。また、(ユーザの歩く速度として想定される所定速度)は例えば秒速1mあるいは2mのように、所定値を設けておけばよい。(音速)も温度などによる変動もあるが例えば340m/sのように定数として設けておけばよい。また、被探索側端末20の位置Bは静止していると仮定したが、被探索をユーザが持って移動している等の場合も、上記所定速度の調整(例えば想定される歩速度を探索側と被探索側とが逆向きに歩く場合を考えて2倍する)により許容値を設定することができる。
【００９２】
次に図11(b)の相対方向推定を行う場合の許容値設定を説明する。音波送信中、探索側端末10を持つユーザが位置Aに、被探索側端末20は位置Bに存在し、ユーザが手でスウィングさせることで探索側端末10はAを中心に半径rの円上を概ね動くものとする。この場合、各音波送信時点での速度方向は(b)に描くように変化するが、許容値を設定するに際しては(a)の例と同様に、マージンを見込んで最も大きな差を生ずる(1)又は(2)のAB方向の場合を利用する。(b)においてもAB間の距離をLとすると、本発明の通常の用途においてLは10m程度以上、rは50cm程度、1つの送信間隔における端末の移動量Δxもrと同程度である。よってL/Δxの値は20程度以上となるので、移動量のうちAB方向成分のみを考慮すればよい。よって(a)の場合と同様に、(b)の相対方向推定の場合には許容値を次のように設定すればよい。
(許容値)=(送信間隔)×(探索側端末にスウィング運動により加わると想定される所定速度)÷(音速)
【００９３】
ここで
(探索側端末にスウィング運動により加わると想定される所定速度)=(rとして想定される所定値)×(角速度)
であり、上記(角速度)はラジアン単位で次のようにして求めることができる。(ステップS35)における送信間隔t_interval(i)の両端の時刻において探索側端末10で取得されている向きの情報を、図6の手順(10)において追加情報として被探索側端末20へ通知し、当該両端の時刻における向きの差の角度÷送信間隔t_interval(i)として角速度を求める。この場合、向きの情報は全てのi(i=1,2,…n-1)につき通知を受けるものとする。
【００９４】
あるいは、各送信間隔t_interval(i)における角速度を求めて、その中から最大のものを用いてもよいし、全体の平均の角速度を用いてもよい。
【００９５】
(b)の相対方向推定を行う場合でさらにA及びBの位置自体が歩きなどにより移動している場合を想定して許容値を設定する場合、間隔に最も大きな差が生ずる場合を考慮して、上記(a)で求めた許容値と(b)で求めた許容値とを足し合わせてもよい。
【００９６】
なお、以上の各許容値設定に際して、(a)の(ユーザの歩く速度として想定される所定速度)と(b)の(探索側端末にスウィング運動により加わると想定される所定速度)とを一括して、探索側端末に想定される所定速度、としてもよい。すなわち、(a)(b)の両者を含む許容値を次のように与えることができる。
(許容値)=(送信間隔)×(探索側端末に想定される所定速度)÷(音速)
【００９７】
以上、本発明によれば音波パルスを用いた端末間の位置推定に際して必要となる直接波の抽出を、両端末が携帯情報端末などで機能的な制限がある場合でも、確実に行うようにすることができる。
【００９８】
また本発明によれば上記のような制限を課せられた端末間で利用可能な音声入出力デバイスを用いて、位置推定の一種として有用な端末間の相対方向の推定を行うことができる。特に当該方向推定は、特殊なハードウェア等を必要とせず、通常の携帯端末で通話用に利用される単一のマイク及び通話用に利用される通常のスピーカで実施可能である。
【符号の説明】
【００９９】
探索側端末…10、相対方向推定部…11、向き取得部…12、入力部…13、無線通信部…14、音波設定・送信部…15、距離推定部…16、被探索側端末…20、無線通信部…21、音波受信・識別部…22、入力部…23
【図１】
0005685109.tif 000002
【図２】
0005685109.tif 000003
【図３】
0005685109.tif 000004
【図４】
0005685109.tif 000005
【図５】
0005685109.tif 000006
【図６】
0005685109.tif 000007
【図７】
0005685109.tif 000008
【図８】
0005685109.tif 000009
【図９】
0005685109.tif 000010
【図１０】
0005685109.tif 000011
【図１１】
0005685109.tif 000012
【図１２】
0005685109.tif 000013
【図１３】
0005685109.tif 000014