以下、図面に基づいて本発明の実施の形態を説明する。図1は、本実施の形態におけるシステム構成例を示す図である。図1において、サーバ装置10は、或る展示会場の展示場所ごとに設置された展示場マイク31と無線LAN(Local Area Network)又は有線LAN等の情報通信ネットワークを介して接続されている。また、サーバ装置10は、一台以上の携帯端末20と、無線LAN等の無線通信網を介して通信可能とされている。
本実施の形態において、展示会場とは、複数の展示場所を含む施設をいう。展示場所とは、説明者によって、当該展示場所における展示内容に関する説明が行われるブース等、展示会場内の一区画をいう。各展示場マイク31は、説明者の声を電気信号に変換する電子部品と、音声の電気信号をデジタル化し、デジタル化された音声データを、情報通信ネットワークを介してサーバ装置10に転送する電子部品とを含む。展示場マイク31は、各展示場所の識別情報(以下、「音源ID」という。)を含む音声データを、サーバ装置10に転送する。音声データは、例えば、SIP(Session Initiation Protocol)、RTSP(Real Time Streaming Protocol)、又はその他の通信プロトコルを用いて制御され、RTP(Real-time Transport Protocol)等のストリーミング形式でサーバ装置10に転送される。なお、音声の電気信号のデジタル化は、サーバ装置10において行われてもよい。この場合、音声信号がサーバ装置10に伝送されてもよい。
携帯端末20は、展示場の来場者が使用する携帯型の情報処理装置である。携帯端末20の一例として、携帯電話、スマートフォン、PDA(Personal Digital Assistance)、タブレット型端末等が挙げられる。図1において、携帯端末20には、マイク21、ヘッドホン22、位置センサ23、及び方位センサ24等が、接続又は内蔵されている。マイク21は、携帯端末20のユーザ(以下、単に「ユーザ」という。)の声を音声信号に変換する。ヘッドホン22は、ユーザの両耳を覆うように設置され、サーバ装置10より転送される各展示場所の音声データを再生する多チャンネル(2チャンネル以上)の小型のスピーカーである。ユーザの両耳に対して音声を再生可能なスピーカーであれば、イヤホン等、ヘッドホン22の以外のスピーカーが用いられてもよい。
位置センサ23は、携帯端末20の位置を計測する。位置センサ23は、GPS(Global Positioning System)であってもよいし、展示会場内の座標系における座標値を検知可能なセンサであってもよい。例えば、展示会場の床面を座標系とする2次元空間において、X軸方向向とY軸方向とのそれぞれにおいて、格子状に、座標値を記憶したRFID(Radio Frequency Identification)タグが配置されてもよい。この場合、位置センサ23は、各RFIDタグが記憶した座標値を読み取るRFIDリーダであってもよい。以下、位置センサ23によって計測又は検知される座標値の座標系を、「展示会場座標系」という。展示会場座標系は、方位を含む座標系であるとする。本実施の形態において、展示会場座標系における方位は、ユーザの位置を中心として、Y軸に平行なプラス方向を0度とし、右回りに360度の範囲を有する値によって表現される。
方位センサ24は、ユーザの向きを計測する。ユーザの向きとは、展示会場座標系において、ユーザの顔が向いている方位(角度)をいう。方位センサ24は、水平方向のみならず、鉛直方向の角度を計測可能なものであるのが望ましい。ユーザの頷き等を検知可能とするためのである。同様の理由より、方位センサ24は、ヘッドホン22に設置されているのが好適である。但し、ユーザが関心を持っている音源の選択等が、携帯端末20に対するユーザの手入力よって行われる場合、方位センサ24は、鉛直方向の角度を計測不能なものであってもよい。また、この場合、方位センサ24は、ヘッドホン22以外の場所であって、ユーザの向きを計測可能な場所に設置されてもよい。
サーバ装置10は、ユーザの関心の有る音源の方向へ、ユーザを誘導するサービスを提供するコンピュータである。以下、サーバ装置10によって提供されるサービスを、「誘導サービス」という。サーバ装置10は、サーバ装置10は、展示場マイク31より転送される音声データ又は音声信号について、音像定位処理を行い、各展示場所の音源が、ユーザの向きに対して、物理的に正しい方向、又は物理的に正しい方向とは異なる方向から聞こえるような音声データを生成する。音像定位処理された音声データは、携帯端末20に転送され、ヘッドホン22より出力される。物理的に正しい方向とは異なる方向から音声が聞こえるようにするのは、後述されるように、ユーザが関心の有る音源(すなわち、展示場所)を特定するためである。なお、音像定位処理とは、頭部伝達関数を用いた仮想音像定位技術に基づく処理をいう。サーバ装置10は、音像定位処理された音声を聴取するユーザの動作に基づいて、ユーザが関心の有る音像を推定及び特定し、特定された音源の方向へユーザを誘導する。
以上のようなシステム構成に基づく本実施の形態において、ユーザが関心の有る音源を特定する方法の概要について説明する。
図2は、本実施の形態においてユーザが関心の有る音源を特定する方法の概要を説明するための図である。図2では、サーバ装置10の処理状態として、(1)〜(4)の4つの処理状態が示されている。各処理状態では、ユーザを上から見た図が示されている。各図において、数字を囲む矩形は、物理的又は実際の音源の方向(すなわち、展示場所の方向)を示す。各数字の値は、展示場所の識別子である。数字を囲む円は、ヘッドホン22から出力される音声によって、ユーザが、認識する各音源の方向である。以下、物理的な音源を、「物理音源」といい、ヘッドホン22から出力される音声における音源を、「仮想音源」という。
(1)は、初期状態である。初期状態において、仮想音源の方向は、物理音源の方向と一致する。初期状態において、ユーザの向きがいずれかの仮想音源の方向に固定されたことが検知されると、サーバ装置10の処理状態は、(2)の展開状態に移行する。すなわち、ユーザの向きが、所定時間以上、略一定である場合に、展開状態への移行が行われる。
展開状態では、ユーザを中心として、ユーザの向きに最も近い仮想音源から離れる方向に、各仮想音源が展開される。この際、隣り合う仮想音源の方向の間隔が、所定角度以上広げられる。その結果、ユーザは、各仮想音源を聞き分け易くなる。図2では、ユーザの向きに最も近い仮想音源3から離れる方向に、ユーザを中心として、各仮想音源が展開された例が示されている。その後、ユーザの向きが、当初固定されていた仮想音源3と異なる仮想音源の方向に固定されたことが検知されると、サーバ装置10の処理状態は、(3)の音源移動状態に移行する。すなわち、各仮想音源を聞き分け易くなった状況において、ユーザが、当初向いていた方向と異なる方向の仮想音源に関心を持ち、当該仮想音源の方向を所定時間以上向いている場合に、音源移動状態への移行が行われる。
音源移動状態では、ユーザの向きに有る仮想音源の方向から物理音源の方向の方へ、各仮想音源の方向がゆっくり移動する。図2では、仮想音源4から物理音源4の方へ、各仮想音源が移動している例が示されている。
ユーザの向きが仮想音源4の移動に追随すると、サーバ装置10は、ユーザが仮想音源4に関心を持っていると推定する。すなわち、図2の(3)では、仮想音源4の方向に物理音源8が存在する。この場合、ユーザは、物理音源8に係る展示場所に、聴覚ではなく視覚によって関心を持っている可能性がある。音源移動状態は、ユーザが、仮想音源4に聴覚によって関心を持っているのか、物理音源8に視覚によって関心を持っているのかを判別するための処理状態である。ユーザの向きが仮想音源4の移動に追随したということは、ユーザは、仮想音源4に聴覚によって関心を持っている可能性が高いと考えられる。そこで、この場合、サーバ装置10は、ユーザが仮想音源4に関心を持っていると推定する。
例えば、仮想音源4が物理音源4の方向に一致するまで移動すると、処理状態は、仮想音源4を基準とした展開状態に移行する。すなわち、仮想音源4から離れる方向に、ユーザを中心として、他の仮想音源が展開される。
その後、ユーザが、仮想音源4の方向を向いたまま頷くと、サーバ装置10の処理状態は、(4)の選択状態に移行する。なお、本実施の形態において、頷くことは、所望の仮想音源の選択操作に相当する。選択状態では、ユーザの向いている方向に最も近い仮想音源4が、ユーザの関心の有る仮想音源であると特定される。その後、仮想音源4は、物理音源4の方向と一致するように、音像定位処理が行われる。したがって、ユーザは、仮想音源4の方向を頼りに移動することで、物理音源4の位置、すなわち、ユーザが関心の有る展示場所へ辿り着くことができる。
サーバ装置10及び携帯端末20等について、具体的に説明する。図3は、本実施の形態におけるサーバ装置のハードウェア構成例を示す図である。図3のサーバ装置10は、それぞれバスBで相互に接続されているドライブ装置100、補助記憶装置102、メモリ装置103、CPU104、及びインタフェース装置105等を有する。
サーバ装置10での処理を実現するプログラムは、記録媒体101によって提供される。プログラムを記録した記録媒体101がドライブ装置100にセットされると、プログラムが記録媒体101からドライブ装置100を介して補助記憶装置102にインストールされる。但し、プログラムのインストールは必ずしも記録媒体101より行う必要はなく、ネットワークを介して他のコンピュータよりダウンロードするようにしてもよい。補助記憶装置102は、インストールされたプログラムを格納すると共に、必要なファイルやデータ等を格納する。
メモリ装置103は、プログラムの起動指示があった場合に、補助記憶装置102からプログラムを読み出して格納する。CPU104は、メモリ装置103に格納されたプログラムに従ってサーバ装置10に係る機能を実行する。インタフェース装置105は、ネットワークに接続するためのインタフェースとして用いられる。
なお、記録媒体101の一例としては、CD−ROM、DVDディスク、又はUSBメモリ等の可搬型の記録媒体が挙げられる。また、補助記憶装置102の一例としては、HDD(Hard Disk Drive)又はフラッシュメモリ等が挙げられる。記録媒体101及び補助記憶装置102のいずれについても、コンピュータ読み取り可能な記録媒体に相当する。
なお、携帯端末20も、図4と同様のハードウェアを有していてもよい。但し、携帯端末20は、ユーザからの入力を受け付ける入力装置や、情報を表示する表示装置等を備えていてもよい。
図4は、本実施の形態におけるサーバ装置及び携帯端末の機能構成例を示す図である。図4において、携帯端末20は、接続部211、音声データ転送部212、位置・方位転送部213、及び再生部214等を有する。これら各部は、携帯端末20にインストールされたプログラムが、携帯端末20のCPUに実行させる処理によって実現される。
接続部211は、サーバ装置10との通信の開始及び終了等を制御する。音声データ転送部212は、マイク21より入力されるユーザの声の音声データをサーバ装置10に転送する。位置・方位転送部213は、位置センサ23より入力される位置情報及び方位センサ24より入力される方位情報を、サーバ装置10に転送する。再生部214は、サーバ装置10から転送される音声データを、ヘッドホン22に再生させる。なお、サーバ装置10からは、例えば、ストリーミングによって音声データが転送される。
サーバ装置10は、ユーザ管理部121、展示場所抽出部122、位置・方位管理部123、状態判定部124、定位方向算出部125、及び音像定位部126等を有する。これら各部は、サーバ装置10にインストールされたプログラムが、CPU104に実行させる処理により実現される。サーバ装置10は、また、ユーザ情報記憶部131、展示情報記憶部132、状態記憶部133、展示場所情報記憶部134、音声分解特性記憶部135、及び音源方向記憶部136等を利用する。各記憶部は、メモリ装置103、補助記憶装置102、又はサーバ装置10にネットワークを介して接続される記憶装置等を用いて実現可能である。
ユーザ情報記憶部131は、ユーザごと(携帯端末20ごと)に、位置情報及び方位情報等を記憶する。展示情報記憶部132は、展示場所ごとに、展示内容を示す文字列等を記憶する。状態記憶部133は、ユーザごとに、図2において説明した処理状態を記憶する。展示場所情報記憶部134は、展示場所ごとに、位置情報を記憶する。音声分解特性記憶部135は、展開状態における、隣り合う仮想音源間の間隔の閾値(下限値)を記憶する。すなわち、展開状態においては、隣り合う仮想音源の間隔が当該閾値以上となるように、仮想音源の展開が行われる。音源方向記憶部136は、ユーザと仮想音源との組み合わせごとに、各仮想音源の当該ユーザの向きに対する相対的な方向を記憶する。
ユーザ管理部121は、携帯端末20からの接続要求に応じ、当該携帯端末20に係るユーザに対するレコードを生成し、生成されたレコードをユーザ情報記憶部131及び状態記憶部133のそれぞれに記憶する。ユーザ管理部121は、また、携帯端末20からの切断要求に応じ、当該携帯端末20に係るユーザに対するレコードを、ユーザ情報記憶部131及び状態記憶部133のそれぞれから削除する。
展示場所抽出部122は、携帯端末20から送信されるキーワードに関連する展示場所を、展示情報記憶部132を参照して抽出する。展示場所抽出部122は、抽出された展示場所の識別情報と、当該携帯端末20に係るユーザの識別子との組み合わせを含むレコードを生成し、生成されたレコードを音源方向記憶部136に記憶する。展示場所抽出部122によって抽出された展示場所からの音声が、ユーザに提供される。
位置・方位管理部123は、携帯端末20の位置・方位転送部213より転送される位置情報及び方位情報を受信し、当該位置情報及び方位情報を、ユーザ情報記憶部131において、当該携帯端末20に係るユーザに対するレコードに記憶する。ユーザ情報記憶部131が記憶する、各ユーザの位置情報及び方位情報は、刻々と更新される。
状態判定部124は、ユーザ情報記憶部131が記憶する情報に基づいて、ユーザごとに、処理状態を判定する。状態判定部124は、或るユーザの処理状態を変化させる必要が有る場合、状態記憶部133において当該ユーザに対して記憶されている処理状態の値を更新する。
定位方向算出部125は、ユーザごとに、当該ユーザに対して展示場所抽出部122によって抽出された展示場所(物理音源)に対応する仮想音源について、処理状態に応じた方向を算出する。定位方向算出部125は、仮想音源ごとに算出された方向を、各仮想音源に対応付けて音源方向記憶部136に記憶する。
音像定位部126は、音源方向記憶部136に記憶された方向に基づいて、各音源について、音像定位処理(音源定位処理)を実行し、処理結果としての音声データを出力する。音像定位部126より出力される音声データは、例えば、ストリーミングによって携帯端末20に転送され、再生部214によって再生される。
以下、サーバ装置10が実行する処理手順について説明する。まず、ユーザ管理部121が実行する処理手順について説明する。図5は、ユーザ管理部が実行する処理手順の一例を説明するためのフローチャートである。
ユーザ管理部121は、携帯端末20の接続部211からの接続要求の受信を待機している。いずれかの携帯端末20から接続要求が受信されると(S101でYes)、ユーザ管理部121は、接続要求に係る携帯端末20に対応するレコードを、ユーザ情報記憶部131及び状態記憶部133のそれぞれに生成する(S102)。
図6は、ユーザ情報記憶部の構成例を示す図である。図6において、ユーザ情報記憶部131は、ユーザごと(携帯端末20ごと)に、ユーザID、X座標値、Y座標値、水平方位履歴、及び鉛直方位履歴等を記憶する。ユーザIDは、ユーザごとの識別情報である。例えば、ユーザが所持する携帯端末20のIPアドレス、MACアドレス、又はその他の識別情報が、ユーザIDとして用いられてもよい。X座標値及びY座標値は、展示会場座標系においてユーザの位置を示すX座標及びY座標である。水平方位履歴は、展示会場座標系のXY平面上におけるユーザの向きを示す角度の時系列の履歴である。鉛直方位履歴は、鉛直方向(展示会場座標系におけるZ軸方向)におけるユーザの向き(すなわち、ユーザの頭の傾き)を示す角度の時系列の履歴である。
ステップS102では、新たに生成されたレコードにユーザIDが記憶される。ユーザIDは、携帯端末20からの接続要求に含まれていてもよいし、サーバ装置10が割り当ててもよい。サーバ装置10がユーザIDを割り当てる場合、割り当てられたユーザIDが、接続要求に対する応答に含められて、携帯端末20に返信されてもよい。
図7は、状態記憶部の構成例を示す図である。図7において、状態記憶部133は、ユーザごと(携帯端末20ごと)に、ユーザID、処理状態、及び関心対象等を記憶する。ユーザIDは、上記した通りである。処理状態は、ユーザIDに係るユーザに対する、サーバ装置10の処理状態である。図2において説明したように、本実施の形態では、4つの処理状態が存在する。関心対象は、ユーザが関心を持っている仮想音源の識別情報である。ステップS102では、新たに生成されたレコードに、ユーザID及び処理状態が記憶される。処理状態には、「初期状態」が記憶される。
続いて、ユーザ管理部121は、接続要求元の携帯端末20に音声データをストリーミングするための通信を開始する(S103)。当該通信は、音像定位部126からアクセス可能とされる。なお、ストリーミングのための通信プロトコルは、公知の通信プロトコルが用いられてもよい。
一方、いずれかの携帯端末20から切断要求が受信されると(S104でYes)、ユーザ管理部121は、切断要求に指定されているユーザIDに対応するレコードを、ユーザ情報記憶部131及び状態記憶部133から削除する(S105)。続いて、ユーザ管理部121は、切断要求元の携帯端末20に音声データをストリーミングするための通信を終了させる(S106)。
なお、ユーザは、サーバ装置10の誘導サービスの利用を開始する場合に、サーバ装置10への接続指示を携帯端末20に入力する。携帯端末20は、当該指示に応じて、サーバ装置10に対して接続要求を送信する。また、ユーザは、サーバ装置10の誘導サービスの利用を終了する場合に、サーバ装置10からの切断指示を携帯端末20に入力する。携帯端末20は、当該指示に応じて、サーバ装置10に対して切断要求を送信する。
以降において説明する処理手順において処理対象となる携帯端末20は、接続処理(ステップS102及びS103)が完了している携帯端末20である。
続いて、展示場所抽出部122が実行する処理手順について説明する。図8は、展示場所抽出部が実行する処理手順の一例を説明するためのフローチャートである。
ステップS111において、展示場所抽出部122は、携帯端末20より誘導要求を受信する。誘導要求には、ユーザIDと、ユーザの関心の対象を示すキーワードを含む音声データとが含まれている。すなわち、ユーザは、マイク21に対して、展示内容に関するキーワードであって、自らの関心の対象を示すキーワードを発声する。携帯端末20の音声データ転送部212は、マイク21より入力される音声信号をデジタル化した音声データと、ユーザIDとを含む誘導要求をサーバ装置10に送信する。
続いて、展示場所抽出部122は、誘導要求に含まれている音声データが示すキーワードに基づいて、展示場所情報記憶部134からレコードを検索する(S112)。
図9は、展示場所情報記憶部の構成例を示す図である。図9において、展示場所情報記憶部134は、展示場所ごとに、音源ID、X座標値、Y座標値、及び展示内容等を記憶する。音源IDは、音源ごとの識別情報である。本実施の形態では、展示場所が音源となるため、各展示場所は音源IDによって識別される。展示者の識別名等が音源IDとされてもよい。各展示マイク21からの音声データには、音源IDが付与されている。したがって、各展示マイク21からの音声データがいずれの展示場所の音声データであるかは、当該音声データに付与されている音声IDによって識別することができる。
X座標値及びY座標値は、展示会場座標系において展示場所の代表位置を示すX座標及びY座標である。X座標値及びY座標値は、音源ID及び展示内容とともに、予め登録されてもよいし、展示場所に位置センサを設置し、位置センサより入力される位置情報に基づいて自動的に登録されてもよい。展示場所の代表位置は、展示場所ごとに任意に定められてもよいし、統一された基準に基づく位置であってもよい。展示内容は、展示場所における展示内容を示す一以上の文字列の集合である。
ステップS112では、ユーザの興味の対象を示すキーワードを、「展示内容」に含むレコードが検索される。なお、キーワードは、複数指定されてもよい。この場合、「展示内容」に全てのキーワードを含むレコードが検索対象とされてもよいし、いずれか一つのキーワードを含むレコードが検索対象とされてもよい。また、音声データが示すキーワードは、展示場所抽出部122が、音声データを解析することにより、音声データより抽出される。但し、ユーザの興味の対象を示すキーワードは、テキストデータとして、誘導要求に含まれていてもよい。例えば、携帯端末20側で音声解析を行い、音声がテキストデータに変換されてもよい。又はユーザが、手入力によってキーワードを示すテキストデータを携帯端末20に入力してもよい。
該当するレコードが一つも検索されなかった場合(S113でNo)、図8の処理は終了する。この場合、キーワードの再入力要求が、携帯端末20に返信されてもよい。
一以上のレコードが検索された場合(S113でYes)、展示場所抽出部122は、誘導要求に含まれているユーザIDと、検索された各レコードの音源IDとの組を、音源方向記憶部136に記憶する(S114)。
図10は、音源方向記憶部の構成例を示す図である。図10において、音源方向記憶部136の各レコードは、ユーザID、音源ID、及び方向等の項目を含む。ユーザIDは、上記した通りユーザの識別情報である。音源IDは、上記した通り音源の識別情報である。方向は、ユーザIDに係るユーザの現在位置におけるユーザの向きを基準とした、音源IDに係る音源(展示場所)の相対的な方向である。すなわち、方向は、展示会場座標系におけるユーザの向きの方位に対する、展示会場の方位の相対値(差分)である。
ステップS114では、展示場所情報記憶部134より検索されたレコードごとに、音源方向記憶部136に新たなレコードが生成される。生成された各レコードの「音源ID」には、検索された各レコードの音源IDが記憶される。また、各レコードの「ユーザID」には、誘導要求の含まれているユーザIDが記憶される。各レコードの「方向」には、この段階では何も記憶されない。
続いて、位置・方位管理部123が実行する処理手順について説明する。図11は、位置・方位管理部が実行する処理手順の一例を説明するためのフローチャートである。
位置・方位管理部123は、携帯端末20からの位置情報又は方位情報の受信を待機している(S121)。いずれかの携帯端末20からの位置情報又は方位情報が受信されると(S122)、位置・方位管理部123は、当該位置情報又は方位情報を、ユーザ情報記憶部131(図6)に記憶する(S122)。具体的には、位置情報には、展示会場座標系における、X座標値及びY座標値が含まれている。位置・方位管理部123は、当該X座標値及びY座標値を、位置情報と共に受信されるユーザIDに対応するレコードの「X座標値」又は「Y座標値」に記憶する。また、方位情報には、水平方向の角度及び鉛直方向の角度が含まれている。位置・方位管理部123は、水平方向の角度を、方位情報と共に受信されるユーザIDに対応するレコードの「水平方位履歴」末尾に追加的に記憶する。また、位置・方位管理部123は、鉛直方向の角度を、方位情報と共に受信されるユーザIDに対応するレコードの「鉛直方位履歴」末尾に追加的に記憶する。
続いて、位置・方位管理部123は、音源方向記憶部136(図10)において、方位情報の送信元の携帯端末20に係るユーザIDに対応付いている各仮想音源の「方向」の値を更新する(S123)。すなわち、当該「方向」の値が、新たに受信された方位情報に係る方位からの差分に更新される。
なお、各携帯端末20の位置・方位転送部213は、例えば、定期的に、位置センサ23によって検知又は計測されるX座標値及びY座標値を含む位置情報、並びに方位センサ24によって検知または計測される角度を含む方位情報を、サーバ装置10に転送する。または、X座標値若しくはY座標値、又は方位を示す角度に変化が有った場合に、位置情報及び方位情報の転送が行われてもよい。いずれの場合であっても、ユーザ情報記憶部131には、各ユーザのほぼ最新の状態における、X座標値、Y座標値、並びに水平方向及び鉛直方向の方位が記憶される。
続いて、状態判定部124が実行する処理手順について説明する。図12は、状態判定部が実行する処理手順の一例を説明するためのフローチャートである。図12の処理は、定期的(例えば、数ミリ秒ごと)に繰り返し実行される。または、位置情報若しくは方位情報が受信されるたびに、当該位置情報若しくは方位情報に係るユーザIDに関して、図12の処理が実行されてもよい。
ステップS131において、状態判定部124は、例えば、ユーザ情報記憶部131のレコード順に、一つのレコードを取得する。以下、取得されたレコードを、「対象ユーザレコード」という。また、対象ユーザレコードに係るユーザを、「対象ユーザ」という。続いて、状態判定部124は、状態記憶部133のレコードの中で、対象ユーザレコードのユーザIDを含むレコード(以下、「対象状態レコード」という。)の「処理状態」の値(以下、「対象処理状態」という。)を取得する(S132)。続いて、状態判定部124は、対象処理状態に応じて処理を分岐させる(S133)。
対象処理状態が、「初期状態」である場合、状態判定部124は、対象ユーザの向きのが、所定時間以上、略一定であるか否かを判定する(S134)。当該判定は、例えば、対象ユーザレコードの「水平方位履歴」に記憶されている、水平方向の角度の履歴に基づいて行われる。具体的には、最後に記憶された時から所定時間分の履歴における角度の変化の範囲が、閾値以下であるか否かが判定される。所定時間分の履歴は、水平方位履歴が一定時間隔で追加されるのであれば、当該一定時間と当該所定時間との比率に基づいて特定可能である。水平方位履歴が追加される時期が不定期である場合、履歴ごとに、その時の時刻が記録されるようにしてもよい。当該時刻に基づいて、所定時間分の履歴を特定することができる。
なお、所定時間は、ユーザの向きがほぼ固定されたことを判定するのに十分な時間であればよい。本実施の形態では、当該所定時間を、「固定判定時間」という。また、角度の変化に対する閾値は、ユーザの向きが略一定であると判定できる角度であればよい。本実施の形態では、当該閾値を「略一定角度」という。
対象ユーザの向きが、固定判定時間以上、略一定でない場合(S134でNo)、判定部は、ユーザ情報記憶部131より次のレコードを取得する(S148)。すなわち、対象ユーザに関して処理状態は変更されない。但し、ステップS134でNoとなる場合は、必ずしも、ユーザの向きが固定されていないというわけではない。ユーザの向きは固定されているが、まだ、固定判定時間以上経過していない場合も含まれるからである。
次のレコードが無い場合(S149でNo)、図12の処理は終了する。次のレコードの取得に成功した場合(S149でYes)、当該次のレコードを対象ユーザレコードとして、ステップS132以降が実行される。
一方、対象ユーザの向きが、固定判定時間以上、略一定である場合(S134でYes)、状態判定部124は、対象状態レコードの「処理状態」の値を、「展開状態」に更新する(S135)。すなわち、対象ユーザに関する処理状態が、展開状態に移行する。なお、状態判定部124は、展開状態への移行に伴って、対象ユーザレコードの「水平方位履歴」の値を空にしてもよい。展開状態への移行時からの、ユーザの向きの略一定状態の判定を定可能とするためである。
続いて、状態判定部124は、対象ユーザの向きに最も近い仮想音源の音源IDを、対象状態レコードの「関心対象」に記憶する(S136)。対象ユーザの向きに最も近い仮想音源とは、音源方向記憶部136において、対象ユーザのユーザIDに対応付けられている音源IDの中で、「方向」の値が最小である仮想音源である。音源方向記憶部136における「方向」の値は、対象ユーザレコードにおける「水平方位履歴」の最後(最新)の角度に対する相対値(差分)であるため、当該「方向」の値が最小である仮想音源が、対象ユーザの向きに最も近い仮想音源となる。
なお、後述より明らかなように、音源方向記憶部136には、初期状態のユーザに関する音源については、物理音源の方向と同じ方向を示す角度が、「方向」に記憶される。
ステップS136に続いて、ステップS148以降が実行される。
展開状態に移行すると、図2(2)において説明したように、対象ユーザの向いている方向に最も近い仮想音源から離れる方向に、対象ユーザを中心として、各仮想音源が展開される。なお、各仮想音源をユーザに区別可能であれば、他の方法によって、各仮想音源が展開されてもよい。要するに、各仮想音源の方向の間に、所定以上の間隔が確保されればよい。
対象処理状態が、「展開状態」である場合、状態判定部124は、対象ユーザが、初期状態からほぼ同じ方向を、固定判定時間以上向いているか否かを判定する(S137)。すなわち、仮想音源が展開されても、対象ユーザの向きが、展開前の方位のままであるか否かが判定される。当該判定は、例えば、対象ユーザレコードの「水平方位履歴」において、展開状態へ移行後の固定判定時間内に記憶された角度の変化が、略一定角度以内であるか否かに基づいて行われる。なお、ステップS135において説明したように、展開状態への移行時に対象ユーザレコードの「水平方位履歴」を空にしておくことで、展開状態へ移行後の固定判定時間内に、対象ユーザレコードの「水平方位履歴」に記憶された角度を容易に特定することができる。
対象ユーザが、初期状態とは異なる方向を向いている場合(S137でNo)、状態判定部124は、状態判定部124は、当該異なる方向において、対象ユーザの向きが、固定判定時間以上、略一定であるか否かを判定する(S138)。すなわち、仮想音源が展開され、各仮想音源を聞き分け易くなった結果、対象ユーザが顔を左右に動かしながら関心の有る音源を探索し、対象ユーザの向きが最終的に一つの音源の方向に固定されたか否かが判定される。判定の方法は、ステップS134において説明した方法と同様でよい。
対象ユーザの向きが、固定判定時間以上、略一定でない場合(S138でNo)、ステップS148以降が実行される。但し、ステップS138でNoとなる場合は、必ずしも、ユーザの向きが固定されていないというわけではない。ユーザの向きは固定されているが、まだ、固定判定時間以上経過していない場合も含まれるからである。
対象ユーザの向きが、固定判定時間以上、略一定である場合(S138でYes)、状態判定部124は、対象状態レコードの「処理状態」の値を、「音源移動状態」に更新する(S139)。すなわち、対象ユーザに関する処理状態が、音源移動状態に移行する。続いて、状態判定部124は、対象ユーザの向きに最も近い仮想音源の音源IDを、対象状態レコードの「関心対象」に記憶する(S142)。ステップS142の処理内容は、ステップS136と同様でよい。
一方、対象ユーザが、初期状態からほぼ同じ方向を、固定判定時間以上向いている場合(S137でYes)、状態判定部124は、対象状態レコードの「関心対象」に音源IDが記憶されている仮想音源を、対象ユーザが関心の有る仮想音源であると推定する。そこで、この場合、状態判定部124は、対象ユーザが、頷いたか否かを判定する(S140)。頷いたか否かは、例えば、対象ユーザレコードの「鉛直方位履歴」に記憶されている角度の履歴に基づいて判定される。例えば、「鉛直方位履歴」に含まれている最近の所定時間内の角度と、閾値とを比較することにより、頷いたか否かが判定されてもよい。
対象ユーザが頷いたと判定されない場合(S140でNo)、ステップS148以降が実行される。対象ユーザが頷いたと判定される場合(S140でYes)、状態判定部124は、対象状態レコードの「処理状態」の値を、「選択状態」に更新する(S141)。すなわち、対象ユーザに関する処理状態が、選択状態に移行する。続いて、ステップS142以降が実行される。後述されるように、選択状態に移行すると、関心対象の仮想音源以外の音声は消去される。すなわち、ユーザから見た場合、関心対象の仮想音源の音声のみが、物理音源の方向から聞こえるようになる。
対象処理状態が、「音源移動状態」である場合、状態判定部124は、対象ユーザの向きが、関心対象の仮想音源の移動に追随しているか否かを判定する(S143)。すなわち、関心対象の仮想音源の移動方向に、対象ユーザの向きが変化したか否かが判定される。図2(3)において説明したように、音源移動状態では、ユーザの向きが固定された仮想音源が、物理音源の方向にゆっくり(所定の速度で)移動する。仮想音源の移動は、後述されるように、音源方向記憶部136における各仮想音源の「方向」の値が、少しずつ(例えば、一定角度ずつ)物理音源の方向に近付く方に更新される。また、「方向」の値は、対象ユーザの向きを0度とした相対値である。したがって、追随したか否かの判定は、例えば、対象状態レコードの「関心対象」に記憶されている音源IDに対して音源方向記憶部136に記憶されている「方向」の値が、所定値未満であるか否かに基づいて行うことができる。または、対象ユーザレコードの「水平方位履歴」に記憶されている、対象ユーザの向きを示す角度の履歴を解析することにより、追随したか否かが判定されてもよい。
対象ユーザの向きが、関心対象の仮想音源の移動に追随していていると判定される場合(S143でYes)、状態判定部124は、対象ユーザは、当該仮想音源に関心が有ると推定する。そこで、状態判定部124は、対象状態レコードの「処理状態」の値を、「展開状態」に更新する(S145)。すなわち、対象ユーザに関する処理状態が、展開状態に移行する。この場合、移動終了後の関心対象の仮想音源から離れる方向に、対象ユーザを中心として、他の仮想音源が展開される。続いて、ステップS148以降が実行される。
一方、対象ユーザの向きが、関心対象の音源の移動に追随していていないと判定される場合(S143でNo)、状態判定部124は、音源移動状態に移行してから所定時間が経過したか否かを判定する(S144)。当該所定時間は、例えば、仮想音源の移動にユーザが反応するまでの時間に基づいて定められてもよい。
所定時間が経過していない場合(S144でNo)、ステップS148以降が実行される。なお、この場合は、必ずしも、対象ユーザが、関心対象の仮想音源の移動に追随していないとは限らない。対象ユーザが、仮想音源の移動に反応するまでには、或る程度時間を要すると考えられる。したがって、対象ユーザが、関心対象の仮想音源の移動に追随する場合、ステップS143でNoとなる状況がしばらく続き、その後、ステップS143でYesとなる場合が多いと考えられる。
対象ユーザが仮想音源の移動に追随しないまま所定時間が経過した場合(S144でYes)、ステップS145以降が実行される。すなわち、対象ユーザに関する処理状態は、展開状態に移行する。この場合、対象ユーザの向から離れる方向に、対象ユーザを中心として、各仮想音源が展開される。
対象処理状態が、「選択状態」である場合、状態判定部124は、対象ユーザがキャンセル動作をしたか否かを判定する(S146)。キャンセル動作とは、選択状態をキャンセルし、初期状態に戻すための動作をいう。本実施の形態によって、キャンセル動作は、首を左右に振ることである。したがって、対象ユーザが、キャンセル動作をしたか否かは、例えば、対象ユーザレコードの「水平方位履歴」の内容を解析することにより判定可能である。
対象ユーザがキャンセル動作をしたと判定される場合(S146でYes)、状態判定部124は、対象状態レコードの「処理状態」の値を、「初期状態」に更新する(S147)。すなわち、対象ユーザに関する処理状態が、初期状態に移行する。続いて、ステップS148以降が実行される。
一方、対象ユーザがキャンセル動作をしていないと判定される場合(S146でNo)、ステップS148以降が実行される。したがって、対象ユーザに関しては、選択状態が継続する。
なお、図12の処理は、全てのユーザについて処理の終了後、即座に最初のユーザから繰り返し実行されてもよい。また、ユーザごとにスレッド又はプロセスが起動され、ユーザごとに並列的に図12の処理が実行されてもよい。この場合、ユーザごとのループ処理は不要である。
続いて、定位方向算出部125が実行する処理手順について説明する。図13は、定位方向算出部が実行する処理手順の一例を説明するためのフローチャートである。図13の処理は、定期的(例えば、数ミリ秒ごと)に繰り返し実行される。
ステップS161において、定位方向算出部125は、例えば、状態記憶部133の記憶順に、一つのレコードを取得する。当該レコードを、以下「対象状態レコード」という。続いて、定位方向算出部125は、対象状態レコードの「処理状態」の値(以下、「対象処理状態」という。)に応じて処理を分岐させる(S162)。すなわち、定位方向算出部125は、対象処理状態に応じた定位方向算出処理を実行する(S163〜S166)。
続いて、定位方向算出部125は、状態記憶部133より次のレコードを取得する(S167)。次のレコードが無い場合(S168でNo)、図12の処理は終了する。次のレコードの取得に成功した場合(S168でYes)、当該次のレコードを対象状態レコードとして、ステップS162以降が実行される。
なお、図13の処理は、全てのレコードの処理の終了後、即座に最初のレコードから繰り返し実行されてもよい。また、レコードごとにスレッド又はプロセスが起動され、レコードごとに並列的に処理が実行されてもよい。この場合、レコードごとのループ処理は不要である。
続いて、ステップS163の詳細について説明する。図14は、初期状態における定位方向算出処理の処理手順の一例を説明するためのフローチャートである。
ステップS171において、定位方向算出部125は、対象状態レコードのユーザID(以下、「対象ユーザID」という。)に対応付いている一以上の音源IDを、音源方向記憶部136より取得する。取得された音源IDを、以下「対象音源ID」という。続いて、定位方向算出部125は、ユーザ情報記憶部131(図6)から、対象ユーザIDに対応付いている「X座標値」、「Y座標値」、及び「水平方位履歴」のそれぞれの値を取得する(S172)。「水平方位履歴」の値は、最新(最後)の値のみでよい。以下、当該最新の値を、単に「水平方向」という。
続いて、定位方向算出部125は、展示場所情報記憶部134(図9)から、対象音源IDに一致する音源IDに対応付いている「X座標値」及び「Y座標値」の値を取得する(S173)。
続いて、定位方向算出部125は、対象ユーザIDに係るユーザ(以下、「対象ユーザ」という。)の現在の位置及び向きを基準とした、各対象音源IDに係る仮想音源(以下、「対象仮想音源」という。)の相対的な方向を示す角度を算出する(S174)。対象ユーザの位置は、ステップS172において取得された「X座標値」及び「Y座標値」の値によって特定される。対象ユーザの向きは、ステップS172において取得された水平方位によって特定される。これらを基準として、ステップS173において取得された、各対象音源IDに係る「X座標値」及び「Y座標値」によって特定される位置の方向が算出される。
続いて、定位方向算出部125は、算出された各角度を、音源方向記憶部136において、各対象音源IDに対応する各レコードの「方向」に記憶する(S175)。なお、後述されるように、音像定位部126は、音源方向記憶部136が記憶する「方向」に基づいて、音像定位処理を行う。したがって、初期状態において、対象ユーザには、各対象仮想音源が、それぞれの物理音源(展示場所)の方向から聞こえるように音像定位処理が行われる。
続いて、図13のステップS164の詳細について説明する。図15は、展開状態における定位方向算出処理の処理手順の一例を説明するためのフローチャートである。
ステップS181〜S184は、図14のステップS171〜S174と同じである。ステップS185において、定位方向算出部125は、隣り合う対象仮想音源の角度が閾値以上となるように、各対象仮想音源の方向を、対象ユーザの向きに最も近い対象仮想音源から離れる方に展開させた後の方向を、対象仮想音源ごとに算出する。対象仮想音源間の角度の閾値は、例えば、音声分解特性記憶部135に記憶されている値が用いられる。
図16は、音声分解特性記憶部の構成例を示す図である。図16において、音声分解特性記憶部135は、ユーザの向きに対する相対的な方向に応じて、仮想音源間の角度の閾値が記憶されている。図16の例に基づく場合、ステップS184では、対象ユーザの向きに対して、0度〜±30度以内の方向に有る仮想音源間の間隔は、40度以上に広げられる。30度超〜60度以内に有る仮想音源間の間隔は、20度以上に広げられる。60度超〜90度以内に有る仮想音源間の間隔は、15度以上に広げられる。ユーザから見て、正面方向よりも横方向の閾値の方が小さいのは、人間の聴覚の分解能は、正面方向よりも、横方向の方が高いからである。但し、方向に関係なく、一律に特定の値(例えば、30度等)が閾値とされてもよい。
なお、ユーザが混乱するのを回避するため、各仮想音源の展開がゆっくり行われるようにしてもよい。この場合、ステップS185が一回実行されるごとの展開幅は、図15の処理が繰り返される周期を考慮して、閾値が何分割かされた値とされてもよい。但し、ステップS185における展開幅は、分割された値の累積値である必要がある。毎回同じ展開幅では、ユーザから見て展開されているように感じられないからである。したがって、定位方向算出部125は、展開を開始してから展開が完了するまでの展開幅の累積値をメモリ装置103に記憶しておき、ステップS185が実行される際は、メモリ装置103に記憶されている累積値に1回分の展開幅を加算した値だけ、仮想音源を展開させるようにしてもよい。なお、展開は、例えば、展開幅の累積値が、閾値に達することにより完了する。換言すれば、展開幅の累積値に対する加算は、当該累積値が閾値に達した場合、行われなくてよい。
続いて、定位方向算出部125は、算出後の各対象仮想音源の方向を示す角度を、音源方向記憶部136において、各対象音源IDに対応するレコードの「方向」に記憶する(S186)。なお、更新後の方向が、対象ユーザの向きを基準として、例えば、±90度の範囲(以下、「定位対象範囲」という。)外となった仮想音源については、「方向」の値は消去されてもよい。この場合、当該仮想音源は、音像定位処理の対象とされない。したがって、対象ユーザには聞こえない。対象ユーザの向きを基準として、左右方向に仮想音源を展開した結果、対象ユーザの後方に、仮想音源が集中し、他の仮想音源からの音声が聴き取りづらくなる状況を回避するためである。定位対象範囲の値は、±90度以外であってもよい。但し、定位対象範囲外の仮想音源の音声を完全に消去するのではなく、音量が小さくされてもよい。
続いて、図13のステップS165の詳細について説明する。図17は、音源移動状態における定位方向算出処理の処理手順の一例を説明するためのフローチャートである。
ステップS191において、定位方向算出部125は、状態記憶部133より、対象ユーザIDに対応付いている「関心対象」の値(音源ID)を取得する。以下、取得された音源IDに係る仮想音源を、「関心対象仮想音源」という。続くステップS192〜S195は、図14のステップS171〜S174と同じである。すなわち、対象ユーザの位置情報及び水平方位、並びに対象仮想音源に対応する物理音源の位置情報が取得され、各対象仮想音源の方向が算出される。
続いて、定位方向算出部125は、隣り合う対象仮想音源の方向の角度が閾値以上となるように、各対象仮想音源の方向を、対象ユーザの向きに最も近い対象仮想音源から離れる方に展開させた後の方向を、対象仮想音源ごとに算出する(S196)。ステップS196の処理は、図15のステップS185と同様でよい。但し、ステップS196では、1回で閾値分の展開が完了する。ステップS196は、ユーザに対して、各仮想音源がゆっくり展開するように感じさせるための処理ではなく、既に展開が終わった後の各仮想音源の間隔を維持するための処理だからである。
続いて、定位方向算出部125は、関心対象仮想音源から監視対象仮想音源に対応する物理音源の方向に、各対象仮想音源の方向を所定角度だけ移動させた後の方向を、対象仮想音源ごとに算出する(S197)。所定角度は、図17の処理が繰り返される周期を考慮して、対象仮想音源がゆっくり移動するように感じられる程度の角度でよい。
続いて、定位方向算出部125は、算出後(移動後)の各対象仮想音源の方向を示す角度を、音源方向記憶部136において、各対象音源IDに対応するレコードの「方向」に記憶する(S198)。なお、移動後の方向が、定位対象範囲外となった仮想音源については、「方向」の値は消去されてもよい。
続いて、図13のステップS166の詳細について説明する。図18は、選択状態における定位方向算出処理の処理手順の一例を説明するためのフローチャートである。
ステップS201において、定位方向算出部125は、状態記憶部133より、対象ユーザIDに対応付いている「関心対象」の値(音源ID)を取得する。以下、取得された音源IDに係る仮想音源を、「関心対象仮想音源」という。ステップS202は、図14のステップS172と同じである。
続いて、定位方向算出部125は、展示場所情報記憶部134(図9)から、関心対象仮想音源の音源IDに一致する音源IDに対応付いている「X座標値」及び「Y座標値」の値を取得する(S203)。
続いて、定位方向算出部125は、対象ユーザの現在の位置及び向きを基準とした、関心対象仮想音源の相対的な方向を算出する(S204)。続いて、定位方向算出部125は、算出された方向を、音源方向記憶部136において、関心対象仮想音源の音源IDに対するレコードの「方向」に記憶する(S205)。なお、関心対象仮想音源以外の対象仮想音源の「方向」については消去されてもよい。その結果、選択状態においては、ユーザには、関心対象仮想音源の音声のみが、物理音源(展示場所)の方向から聞こえるようになる。但し、関心対象仮想音源以外の対象仮想音源からの音声の音量が小さくされてもよい。要するに、ユーザにとって、関心対象仮想音源からの音声が、他の対象仮想音源からの音声に対してより聴き取り易くされればよい。また、選択状態において、各対象仮想音源が展開されたままとされるのであれば、関心対象仮想音源以外の対象仮想音源からの音声の音量は小さくされたり消去されたりしなくてもよい。この場合、ユーザは、監視嘆賞仮想音源を、他の仮想音源と容易に区別可能であると考えられるからである。
続いて、音像定位部126が実行する処理手順について説明する。図19は、音像定位部が実行する処理手順の一例を説明するためのフローチャートである。
ステップS211において、音像定位部126は、例えば、音源方向記憶部136(図10)の記憶順に一つのレコードを取得する。取得されたレコードを、以下「対象レコード」という。続いて、音像定位部126は、対象レコードの「ユーザID」に記憶されているユーザIDに対するストリーミングに対して音像定位処理を実行する(S212)。当該音像定位処理では、対象レコードの「音源ID」に対応する展示マイク21からの音声が、対象レコードの「方向」が示す角度から聞こえるように音像定位が行われる。なお、音像定位処理については、公知技術を用いて実現されればよい。
上記において説明した処理手順内容について、具体例に基づいて説明する。なお、各具体例では、「AAA」が、対象ユーザのユーザIDである場合について説明する。
図20は、初期状態の一例を説明するための図である。図20において、(1)には、状態記憶部133において、対象ユーザに関するレコード(以下、「状態レコード」という。)が示されている。(2)には、ユーザ情報記憶部131において、対象ユーザに関するレコード(以下「ユーザレコード」という。)が示されている。また、(3)には、展示場所情報記憶部134において、対象ユーザに関するレコード(以下、「展示場所レコード」という。)が示されている。なお、各レコードの具体例において、説明に不要な項目は、便宜上省略されている。また、(2)のユーザレコードの「水平方位」は、「水平方位履歴」の最後の履歴を示す。
(1)に示される状態レコードにおいて、「処理状態」の値は「初期状態」であるため、定位方向算出部125は、(2)に示されるユーザレコード及び(3)に示される展示場所レコードに基づいて、図14において説明した処理を実行する。その結果、音源方向記憶部136において、対象ユーザに関するレコード(以下、「音源方向レコード」という。)の記憶内容は、(4)に示される通りとなる。なお、図20において、ユーザの向きは、0度である。
(4)に示される音源方向レコードに基づいて、音像定位部126は、音像定位処理を行う。その結果、対象ユーザには、各仮想音源の音声は、(5)に示される方向から聞こえるようになる。すなわち、初期状態において、各仮想音源の方向は、それぞれの物理音源の方向に一致する。(5)の見方は、図2の見方と同様である。
(6)には、参考までに、展示会場座標系におけるユーザの位置と、各物理音源(展示場所)の位置とが示されている。
初期状態において、ユーザの向きが略一定方向に固定判定時間以上固定されると、処理状態は、展開状態に移行する。
次に、図21は、展開状態の一例を説明するための第一の図である。図21以降において、(1)〜(5)の図の意味は、図20と同様である。また、(6)の図については、省略される。また、展示場所の位置は移動しないため、図20以降の図において、(5)の展示場所レコードに変化は無い。
図21では、(1)の状態レコードの「処理状態」の値が「展開状態」に更新されている。また、(2)のユーザレコードの「水平方位」は、10度に更新されている。すなわち、図21では、対象ユーザの向きが、10度の方位に有る、仮想音源3の方向に固定されて展開状態に移行された例が示されている。展開状態の間、定位方向算出部125は、(2)に示されるユーザレコード及び(3)に示される展示場所レコードに基づいて、図15において説明した処理を実行する。すなわち、仮想音源3から離れる方向に、対象ユーザを中心として、他の仮想音源が展開される。その結果、音源方向レコードは、(4)に示される通りとなる。
(4)では、「A−B」の形式で、「方向」の値が記載されている。Aの部分は、展開後の仮想音源の、展示会場座標系における方位を示す値である。Bの部分は、対象ユーザの方位である。すなわち、音源方向レコードの「方向」は、対象ユーザの方位に対する相対的な角度となるため、展開後の方位の値から、対象ユーザの方位が差し引かれた値となる。例えば、ユーザが向いている仮想音源3の「方向」は、「10−10=0」である。
また、音源方向レコードの「方向」に値が記憶されていない仮想音源は、展開によって定位対象範囲外となった仮想音源である。
(4)に示される音源方向レコードに基づいて、音像定位部126は、音像定位処理を行う。その結果、対象ユーザには、各仮想音源の音声は、(5)に示される方向から聞こえるようになる。展開によって、各仮想音源の間隔は、所定角度以上離される。その結果、仮想音源3以外の仮想音源の方向は、それぞれの物理音源の方向とは異なったものとなる。但し、対象ユーザにとって、各仮想音源を区別し易くなる。また、状態判定部124にとっても、対象ユーザが関心の有る音源を区別し易くなる。
また、音源方向レコードの「方向」に値が記憶されていない仮想音源の音声は、再生されなくなる。図21では、仮想音源2、5、及び6が再生されなくなった例が示されている。但し、定位対象範囲外の仮想音源が再生されてもよい。この場合、定位対象範囲外の仮想音源についても、音源方向レコードの「方位」に、図15のステップS185における算出結果が記憶されるようにすればよい。また、定位対象範囲外の仮想音源の音量が小さくされてもよい。
なお、対象ユーザの向きが仮想音源3の方向に固定された状態が固定判定時間以上継続した後、対象ユーザが頷くと、処理状態は、選択状態に移行する。
図22は、展開状態の一例を説明するための第二の図である。図22では、(2)のユーザレコードの「水平方位」に示されるように、ユーザの向きが仮想音源4の方向である50度に変化している。図20の(5)に示されるように、当初、仮想音源1、3、4、及び8は、ユーザから見てほぼ同じ方向に有った。ユーザは、仮想音源4に関心が有ったが、その方向を区別することができず、仮想音源3の方向を向いていた。その後、仮想音源が展開され、各仮想音源からの音声を聞き分け易くなったため、仮想音源4の方向を区別できるようになった、という状況である。
図22の状況においても、図21と同様、図15において説明した処理が実行される。すなわち、定位方向算出部125は、(2)に示されるユーザレコード及び(3)に示される展示場所レコードに基づいて、図15において説明した処理を実行する。その結果、音源方向レコードは、(4)に示される通りとなる。
なお、厳密には、図15の処理が実行されることにより、仮想音源4から離れる方向に、対象ユーザを中心として、各仮想音源の展開が行われる。但し、(4)の音源方向レコードでは、便宜上、仮想音源4からの展開に関しては加味されていない。したがって、(5)における、各仮想音源の方向は、図21と同じである。
対象ユーザの向きが、仮想音源4の方向において固定判定時間以上固定されると、処理状態は、音源移動状態に移行する。対象ユーザが、仮想音源4に関心を持っているのか、物理音源8に係る展示場所に関心を持っているのか、又は更にその先に見える何かに関心を持っているのかを区別するためである。
図23は、音源移動状態の一例を説明するための第一の図である。図23では、(1)の状態レコードの「処理状態」の値が「音源移動状態」に更新されている。したがって、定位方向算出部125は、(2)に示されるユーザレコード及び(3)に示される展示場所レコードに基づいて、図17において説明した処理を実行する。その結果、音源方向レコードは、(4)に示される通りとなる。すなわち、仮想音源4から物理音源4の方向に、各仮想音源の方向が移動し、移動の分だけ音源方位レコードの「方向」の値が更新される。
音像定位部126は、(4)に示される音源方向レコードに基づいて、音像定位処理を行う。定位方向算出部125による処理及び音像定位部126による処理が繰り返されることにより、(5)に示されるように、ユーザから見て、各仮想音源は、仮想音源4から物理音源4の方向にゆっくり移動する。なお、移動により定位対象範囲内となった仮想音源は、再生されるようになる。一方、移動により定位対象範囲外となった仮想音源は、再生されなくなる。
図24は、音源移動状態の一例を説明するための第二の図である。図24では、仮想音源4の移動に、対象ユーザの向きが追随した場合の例が示されている。すなわち、(2)のユーザレコードの「水平方位」の値が「30」に更新されている。その結果、(4)の音源方向レコードにおいて、物理音源4の方向に移動した仮想音源4の「方向」の値は、30−30=0度となっている。すなわち、対象ユーザは、移動後の仮想音源4の方向を向いていることが示されている。
図25は、音源移動状態から展開状態への移行の一例を説明するための第一の図である。図25では、図24において示したように、対象ユーザが、仮想音源4の移動に追随し、固定判定時間以上、対象ユーザの向きが略一定方向であった状況が示されている。
この場合、(1)の状態レコードの「処理状態」の値は、「展開状態」に更新される。したがって、定位方向算出部125は、(2)に示されるユーザレコード及び(3)に示される展示場所レコードに基づいて、図15において説明した処理を実行する。その結果、仮想音源4から離れる方向に、対象ユーザを中心として、他の仮想音源が左右方向に展開される。
更に、対象ユーザが頷くと、定位方向算出部125は、(2)に示されるユーザレコード及び(3)に示される展示場所レコードに基づいて、図18において説明した処理を実行する。その結果、音源方向レコードは、(4)に示される通りとなる。(4)では、仮想音源4以外の仮想音源に対する「方向」の値は、消去されている。したがって、(4)に示される音源方向レコードに基づいて、音像定位部126よって音像定位処理が実行されると、対象ユーザには、(5)に示されるように、仮想音源4が、物理音源4の方向から聞こえるようになる。なお、(5)において仮想音源4以外の仮想音源は破線によって示されている。破線は、その音声が再生されない仮想音源であることを示す。
また、図26は、音源移動状態から展開状態への移行の一例を説明するための第二の図である。図26では、図23に示した音源移動状態において、対象ユーザの向きが、仮想音源4の移動に追随せずに、物理音源8の方向に固定されたままだった場合の例が示されている。
対象ユーザの向きが物理音源8の方向に固定された状態が、固定判定時間以上継続すると、(1)に示される状態レコードの「処理状態」の値は、「展開状態」に更新される。したがって、定位方向算出部125は、(2)に示されるユーザレコード及び(3)に示される展示場所レコードに基づいて、図15において説明した処理を実行する。その結果、仮想音源8から離れる方向に、対象ユーザを中心として、他の仮想音源が展開される。
音像定位部126は、(4)に示される音源方向レコードに基づいて、音像定位処理を行う。その結果、各仮想音源の方向は、(5)に示されるようになる。なお、(5)において、小さい円の仮想音源1、3、4、8、及び9は、図23の状態における各仮想音源の方向を示す。大きい円の仮想音源3'、4'、8'、及び9'は、仮想音源8'を基準とした展開が行われた後の、各仮想音源の方向を示す。
上述したように、本実施の形態によれば、ユーザが関心の有る仮想音源を推定することができる。また、ユーザによる所定の動作(頷き等)又は操作によって、推定された仮想音源に、ユーザの関心の有ることを特定することができる。その結果、ユーザを、当該仮想音源に対応する物理音源の方向に誘導することができる。
また、本実施の形態では、ユーザによる手操作はできるたけ不要となるように工夫されている。したがって、例えば、ユーザが両手に荷物を持っている場合であっても、ユーザが関心の有る仮想音源の推定及び特定を行うことができる。
また、ユーザには、各展示場所からの現在の音声が提供される。したがって、現在の状況においてユーザが関心の有る展示場所へユーザを誘導することができる。
なお、本実施の形態では、展開状態において、ユーザの向いている方向に最も近い仮想音源から離れる方へ、各仮想音源が展開される例を示した。しかし、展開状態は、各仮想音源を区別し易くすることが第一の目的であるため、からなずしも、ユーザの向いている方向に最も近い仮想音源が基準とされなくてもよい。各仮想音源の方向の間に所定角度以上の間隔を確保可能であれば、ユーザの向いている方向に最も近い仮想音源が移動されてもよい。但し、ユーザの向いている方向に最も近い仮想音源は、ユーザが関心を持っている可能性が高い。したがって、当該仮想音源から離れるように各仮想音源を展開させることで、展開後の状況において、ユーザが、関心を持っている仮想音源の方向を探索するための負担を軽減させることができる。
また、音源移動状態においては、必ずしも全ての仮想音源が移動しなくてもよい。例えば、ユーザが関心の有る仮想音源のみが移動対象とされてもよい。この場合であっても、ユーザの追随を判定可能であると考えられるからである。但し、本実施の形態のように、全ての仮想音源が移動することで、ユーザが受ける違和感を軽減することができる。また、ユーザが関心の有る仮想音源が、他の仮想音源と重なることにより、当該関心の有る仮想音源からの音声が聴き取りづらくなるといった状況の発生を回避することができる。
また、本実施の形態において、各携帯端末20に、サーバ装置10の機能が実装されてもよい。この場合、サーバ装置10は、設置されなくてもよい。
また、本実施の形態は、複数の音源から音声が発せられ、いずれかの音源を目的として、聴取者が移動又はその他の動作をするような環境であれば、展示会場以外の環境に適用されてもよい。
なお、本実施の形態において、サーバ装置10又は携帯端末20は、推定装置の一例である。定位方向算出部125は、特定部及び算出部の一例である。状態判定部124は、推定部の一例である。
以上、本発明の実施例について詳述したが、本発明は斯かる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
以上の説明に関し、更に以下の項を開示する。
(付記1)
複数の音源に関してスピーカーより出力される音声の聴取者の位置情報及び前記聴取者の向きを示す方向情報と、前記複数の音源のそれぞれの位置情報とに基づいて、前記聴取者の向きに対する各音源の第一の方向を特定し、
前記音源ごとに、隣り合う音源の方向との間隔が所定値以上となる第二の方向を算出しし、
前記第二の方向に各音源が定位されるように、前記スピーカーより出力される音声に関して音像定位処理を実行し、
前記方向情報が示す向きの変化が、所定時間継続して所定の範囲内である場合に、前記第二の方向が前記方向情報の示す向きに最も近い音源が、前記聴取者の関心の対象であると推定する処理をコンピュータに実行させる推定プログラム。
(付記2)
前記算出する処理は、前記第一の方向が方向情報の示す向きに最も近い第一の音源の第二の方向を、当該音源の前記第一の方向と一致させ、他の音源ごとに、隣り合う音源の方向との間隔が所定値以上となる前記第二の方向を算出する付記1記載の推定プログラム。
(付記3)
前記算出する処理は、前記スピーカーより出力される音声に関して各音源がそれぞれの前記第二の方向に定位されている状態において、前記方向情報が示す向きの変化が、所定時間継続して所定の範囲内である場合に、前記第二の方向が前記方向情報の示す向きに最も近い第二の音源の前記第二の方向が、当該第二の音源の前記第一の方向と異なるときは、前記第二の音源の方向を、当該第一の方向の方に移動させた値に更新し、
前記音像定位処理を実行する処理は、更新後の前記第二の方向に前記第二の音源が定位されるように、前記音像定位処理を実行し、
前記方向情報の示す向きが、前記移動の方向に変化した場合に、前記第二の音源が前記聴取者の関心の対象であると推定する1又は2記載の推定プログラム。
(付記4)
複数の音源に関してスピーカーより出力される音声の聴取者の位置情報及び前記聴取者の向きを示す方向情報と、前記複数の音源のそれぞれの位置情報とに基づいて、前記聴取者の向きに対する各音源の第一の方向を特定する特定部と、
前記音源ごとに、隣り合う音源の方向との間隔が所定値以上となる第二の方向を算出する算出部と、
前記第二の方向に各音源が定位されるように、前記スピーカーより出力される音声に関して音像定位処理を実行する音像定位部と、
前記方向情報が示す向きの変化が、所定時間継続して所定の範囲内である場合に、前記第二の方向が前記方向情報の示す向きに最も近い音源が、前記聴取者の関心の対象であると推定する推定部とを有する推定装置。
(付記5)
前記算出部は、前記第一の方向が方向情報の示す向きに最も近い第一の音源の第二の方向を、当該音源の前記第一の方向と一致させ、他の音源ごとに、隣り合う音源の方向との間隔が所定値以上となる前記第二の方向を算出する付記4記載の推定装置。
(付記6)
前記算出部は、前記スピーカーより出力される音声に関して各音源がそれぞれの前記第二の方向に定位されている状態において、前記方向情報が示す向きの変化が、所定時間継続して所定の範囲内である場合に、前記第二の方向が前記方向情報の示す向きに最も近い第二の音源の前記第二の方向が、当該第二の音源の前記第一の方向と異なるときは、前記第二の音源の方向を、当該第一の方向の方に移動させた値に更新し、
前記音像定位部は、更新後の前記第二の方向に前記第二の音源が定位されるように、前記音像定位処理を実行し、
前記推定部は、前記方向情報の示す向きが、前記移動の方向に変化した場合に、前記第二の音源が前記聴取者の関心の対象であると推定する付記4又は5記載の推定装置。
(付記7)
複数の音源に関してスピーカーより出力される音声の聴取者の位置情報及び前記聴取者の向きを示す方向情報と、前記複数の音源のそれぞれの位置情報とに基づいて、前記聴取者の向きに対する各音源の第一の方向を特定し、
前記音源ごとに、隣り合う音源の方向との間隔が所定値以上となる第二の方向を算出しし、
前記第二の方向に各音源が定位されるように、前記スピーカーより出力される音声に関して音像定位処理を実行し、
前記方向情報が示す向きの変化が、所定時間継続して所定の範囲内である場合に、前記第二の方向が前記方向情報の示す向きに最も近い音源が、前記聴取者の関心の対象であると推定する処理をコンピュータが実行する推定方法。
(付記8)
前記算出する処理は、前記第一の方向が方向情報の示す向きに最も近い第一の音源の第二の方向を、当該音源の前記第一の方向と一致させ、他の音源ごとに、隣り合う音源の方向との間隔が所定値以上となる前記第二の方向を算出する付記7記載の推定方法。
(付記9)
前記算出する処理は、前記スピーカーより出力される音声に関して各音源がそれぞれの前記第二の方向に定位されている状態において、前記方向情報が示す向きの変化が、所定時間継続して所定の範囲内である場合に、前記第二の方向が前記方向情報の示す向きに最も近い第二の音源の前記第二の方向が、当該第二の音源の前記第一の方向と異なるときは、前記第二の音源の方向を、当該第一の方向の方に移動させた値に更新し、
前記音像定位処理を実行する処理は、更新後の前記第二の方向に前記第二の音源が定位されるように、前記音像定位処理を実行し、
前記方向情報の示す向きが、前記移動の方向に変化した場合に、前記第二の音源が前記聴取者の関心の対象であると推定する7又は8記載の推定方法。