(57)【特許請求の範囲】
【請求項１】
現実空間に存在する音源用現実物体からの音を収音する収音手段と、
前記音源用現実物体の位置情報を取得する音源位置取得手段と、
ユーザの位置情報を取得するユーザ位置取得手段と、
前記ユーザの位置情報に基づいて、前記現実空間に対応する仮想空間の仮想空間画像を生成する仮想空間画像生成手段と、
前記ユーザに対して、前記仮想空間画像を含む画像を出力する画像出力手段と、
前記仮想空間に存在する仮想物体であって、前記ユーザが動かすことのできる仮想物体であって、前記収音した音を調整するための仮想物体の位置情報を取得する調整位置取得手段と、
前記音源用現実物体の位置情報、前記ユーザの位置情報、及び前記仮想物体の位置情報との位置関係に基づいて、前記音源用現実物体と前記ユーザとの間に該仮想物体が存在する場合に前記収音した音を調整する調整手段と、
前記調整された音を前記ユーザに対して出力する出力手段と
を備えることを特徴とする情報処理装置。
【請求項２】
前記調整位置取得手段が、前記ユーザが動かすことのできる調整用現実物体であって、前記仮想物体に追従される調整用現実物体であって、前記ユーザに聴かせる音を調整するための調整用現実物体の位置情報を取得することにより、前記仮想物体の位置情報を取得することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記調整用現実物体の位置は、センサを用いて取得することを特徴とする請求項２に記載の情報処理装置。
【請求項４】
前記ユーザに直接届く前記音源用現実物体からの音を軽減する遮音手段を更に備えることを特徴とする請求項１乃至３の何れか１項に記載の情報処理装置。
【請求項５】
前記遮音手段は、ヘッドフォンに備わり、
前記出力手段が、前記ヘッドフォンに前記調整された音を出力することを特徴とする請求項４に記載の情報処理装置。
【請求項６】
前記現実空間を撮像した現実空間画像を入力する画像入力手段と、
前記現実空間画像と前記仮想空間画像とを合成した合成画像を生成する合成手段と
を更に備え、
前記画像出力手段が、前記ユーザに対して、前記合成画像を出力することを特徴とする請求項１に記載の情報処理装置。
【請求項７】
前記調整手段が、前記収音した音の音量を変更することを特徴とする請求項１乃至６の何れか１項に記載の情報処理装置。
【請求項８】
前記調整手段が、前記収音した音の全体の音量を下げることを特徴とする請求項７に記載の情報処理装置。
【請求項９】
前記調整手段が、前記収音した音の全体の音量を上げることを特徴とする請求項７に記載の情報処理装置。
【請求項１０】
前記調整手段が、前記収音した音の音質を変更することを特徴とする請求項１乃至９の何れか１項に記載の情報処理装置。
【請求項１１】
前記調整手段が、前記収音した音に含まれる周波数帯域ごとの音を調整することを特徴とする請求項１０に記載の情報処理装置。
【請求項１２】
前記調整手段が、前記音源用現実物体の位置情報、前記ユーザの位置情報、及び前記仮想物体の位置情報との位置関係に基づいて、前記収音した音を該仮想物体の種類に応じて調整することを特徴とする請求項１乃至１１の何れか１項に記載の情報処理装置。
【請求項１３】
前記収音手段が、現実空間に存在する複数の音源用現実物体の各々からの音を収音し、
前記音源位置取得手段が、前記複数の音源用現実物体の各々の位置情報を取得し、
前記調整手段が、前記複数の音源用現実物体の各々の位置情報、前記ユーザの位置情報、及び前記仮想物体の位置情報との位置関係に基づいて、前記収音した音の各々を調整することを特徴とする請求項１乃至１２の何れか１項に記載の情報処理装置。
【請求項１４】
前記調整手段が、
前記音源用現実物体の位置情報、前記ユーザの位置情報、及び前記仮想物体の位置情報との位置関係が予め定められた条件を満たすか否かを判断する判断手段と、
前記位置関係が前記予め定められた条件を満たすと前記判断手段が判断した場合に、前記収音した音を調整することで、前記出力手段に出力する音を変更する変更手段と
を備えることを特徴とする請求項１乃至１３の何れか１項に記載の情報処理装置。
【請求項１５】
前記判断手段は、
前記音源用現実物体の位置情報が示す位置と、前記ユーザの位置情報が示す位置と、を結ぶ線分を求める算出手段と、
前記線分を軸とする領域内に前記仮想物体の一部若しくは全部が含まれているか否かを判断する領域判断手段と
を備えることを特徴とする請求項１４に記載の情報処理装置。
【請求項１６】
前記変更手段が、前記線分を軸とする領域内に前記仮想物体の一部若しくは全部が含まれていると前記領域判断手段が判断した場合に、前記収音した音のボリュームが下がるように、前記出力手段に出力する音を変更することを特徴とする請求項１５に記載の情報処理装置。
【請求項１７】
前記調整手段が、前記仮想物体の材質を示す情報として予め設定された材質情報を参照し、前記収音した音を、該参照した材質情報に応じて調整することを特徴とする請求項１乃至１６の何れか１項に記載の情報処理装置。
【請求項１８】
前記判断手段は、
前記音源用現実物体の位置情報が示す位置と、前記ユーザの位置情報が示す位置と、を結ぶ線分を求める線分算出手段と、
前記線分と前記仮想物体とに交点が存在するか否かを判断する交点判断手段と
を備えることを特徴とする請求項１４に記載の情報処理装置。
【請求項１９】
前記変更手段が、前記線分と前記仮想物体とに交点が存在すると前記交点判断手段が判断した場合に、前記収音した音のボリュームが下がるように、前記出力手段に出力する音を変更することを特徴とする請求項１８に記載の情報処理装置。
【請求項２０】
前記変更手段が、前記交点の前記仮想物体上における位置に応じて、前記ボリュームを下げる量を変更することを特徴とする請求項１９に記載の情報処理装置。
【請求項２１】
前記収音手段が、前記音源用現実物体上に配されたマイクから該音源用現実物体が発する音を収音することを特徴とする請求項１乃至２０の何れか１項に記載の情報処理装置。
【請求項２２】
前記出力手段が、前記ヘッドフォンに、前記調整された音を出力し、
前記ヘッドフォンは、該ヘッドフォンの装着者に対して現実空間中の音が聞こえないようにする機能を有していることを特徴とする請求項１乃至２１の何れか１項に記載の情報処理装置。
【請求項２３】
現実空間に存在する音源用現実物体からの音を収音する収音手段と、
前記音源用現実物体の位置情報を取得する音源位置取得手段と、
ユーザに直接届く前記音源用現実物体からの音を軽減する遮音手段と、
前記ユーザの位置情報を取得するユーザ位置取得手段と、
前記ユーザが動かすことのできる調整用現実物体であって、前記ユーザに聴かせる音を調整するための調整用現実物体の位置情報を、センサを用いて取得することにより、前記現実空間に対応する仮想空間に存在する仮想物体であって、前記調整用現実物体に追従する仮想物体の位置情報を取得する調整位置取得手段と、
前記ユーザの位置情報に基づいて、前記仮想空間の仮想空間画像を生成する仮想空間画像生成手段と、
前記ユーザに対して、前記仮想空間画像を含む画像を出力する画像出力手段と、
前記音源用現実物体の位置情報、前記ユーザの位置情報、及び前記仮想物体の位置情報との位置関係に基づいて、前記音源用現実物体と前記ユーザとの間に該仮想物体が存在する場合に前記収音した音を調整する調整手段と、
前記調整された音を前記ユーザに対して出力する出力手段と
を備えることを特徴とする情報処理装置。
【請求項２４】
情報処理装置の収音手段が、現実空間に存在する音源用現実物体からの音を収音する収音工程と、
前記情報処理装置の音源位置取得手段が、前記音源用現実物体の位置情報を取得する音源位置取得工程と、
前記情報処理装置のユーザ位置取得手段が、ユーザの位置情報を取得するユーザ位置取得工程と、
前記情報処理装置の仮想空間画像生成手段が、前記ユーザの位置情報に基づいて、前記現実空間に対応する仮想空間の仮想空間画像を生成する仮想空間画像生成工程と、
前記情報処理装置の画像出力手段が、前記ユーザに対して、前記仮想空間画像を含む画像を出力する画像出力工程と、
前記情報処理装置の調整位置取得手段が、前記仮想空間に存在する仮想物体であって、前記ユーザが動かすことのできる仮想物体であって、前記収音した音を調整するための仮想物体の位置情報を取得する調整位置取得工程と、
前記情報処理装置の調整手段が、前記音源用現実物体の位置情報、前記ユーザの位置情報、及び前記仮想物体の位置情報との位置関係に基づいて、前記音源用現実物体と前記ユーザとの間に該仮想物体が存在する場合に前記収音した音を調整する調整工程と、
前記情報処理装置の出力手段が、前記調整された音を前記ユーザに対して出力する出力工程と
を備えることを特徴とする情報処理方法。
【請求項２５】
情報処理装置の収音手段が、現実空間に存在する音源用現実物体からの音を収音する収音工程と、
前記情報処理装置の音源位置取得手段が、前記音源用現実物体の位置情報を取得する音源位置取得工程と、
前記情報処理装置の遮音手段が、ユーザに直接届く前記音源用現実物体からの音を軽減する遮音工程と、
前記情報処理装置のユーザ位置取得手段が、前記ユーザの位置情報を取得するユーザ位置取得工程と、
前記情報処理装置の調整位置取得手段が、前記ユーザが動かすことのできる調整用現実物体であって、前記ユーザに聴かせる音を調整するための調整用現実物体の位置情報を、センサを用いて取得することにより、前記現実空間に対応する仮想空間に存在する仮想物体であって、前記調整用現実物体に追従する仮想物体の位置情報を取得する調整位置取得工程と、
前記情報処理装置の仮想空間画像生成手段が、前記ユーザの位置情報に基づいて、前記仮想空間の仮想空間画像を生成する仮想空間画像生成工程と、
前記情報処理装置の画像出力手段が、前記ユーザに対して、前記仮想空間画像を含む画像を出力する画像出力工程と、
前記情報処理装置の調整手段が、前記音源用現実物体の位置情報、前記ユーザの位置情報、及び前記仮想物体の位置情報との位置関係に基づいて、前記音源用現実物体と前記ユーザとの間に該仮想物体が存在する場合に前記収音した音を調整する調整工程と、
前記情報処理装置の出力手段が、前記調整された音を前記ユーザに対して出力する出力工程と
を備えることを特徴とする情報処理方法。
【請求項２６】
コンピュータを請求項１乃至２３の何れか１項に記載の情報処理装置の各手段として機能させるためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、現実空間と仮想空間とを重畳させてユーザに提示するための技術に関するものである。
【背景技術】
【０００２】
従来より、複合現実感(MR : Mixed Reality)提示装置が存在する。複合現実感提示装置の例としては、映像表示部、現実映像撮影部、仮想映像生成部、位置姿勢検出部、現実映像と仮想映像とを合成する映像合成部、を備えているものがある。
【０００３】
現実映像撮影部は、例えば、頭部装着型ディスプレイ(HMD: Head Mounted Display)に取り付けられた小型のカメラであって、ＨＭＤ前面の風景を現実映像として撮影する。そして、撮影した現実映像はデータとして、計算機のメモリ内に記録される。
【０００４】
位置姿勢検出部は、例えば、位置姿勢センサであり、現実映像撮影部の位置姿勢を検出する。なお、現実映像撮影部の位置姿勢は、磁気を用いた方法や、画像処理を用いた方法によって求めることができる。
【０００５】
仮想映像生成部は、三次元モデリングされたＣＧを、現実空間と同じスケールの仮想空間中に配置し、上記現実映像撮影部の位置姿勢と同じ位置姿勢からその仮想空間のシーンをレンダリングすることで、仮想映像を生成する。
【０００６】
映像合成部は、現実映像撮影部によって得られた現実映像上に、仮想映像生成部によって得られた仮想映像を重畳することで、複合現実感映像を生成する。映像合成部の動作例としては、現実映像撮影部によってキャプチャされた現実映像を計算機のビデオメモリに書き込み、その上に仮想映像生成部によって仮想映像を書き込ませる制御動作があげられる。
【０００７】
ＨＭＤが光学シースルー方式のものである場合、現実映像撮影部は不要である。そして、位置姿勢検出部は、ＨＭＤの視点位置姿勢を計測する。また、映像合成部は仮想映像をＨＭＤに送出する。
【０００８】
以上のようにして得られる複合現実感映像を、ＨＭＤ等の映像表示部に表示することで、観察者は、現実空間中に仮想物体が出現したかのような感覚を得ることができる。
【０００９】
ここで、仮想物体を「音源」とする場合には、従来技術である３次元音響再生技術を用いて、仮想物体の位置に応じた３次元音響再生を行えば良い（特許文献１）。
【特許文献１】特開平０５−３３６５９９号公報
【発明の開示】
【発明が解決しようとする課題】
【００１０】
従来、仮想空間のシーン中で発せられる音響を３次元音響で提示したり、仮想音を現実空間中で響かせたように現実の音響環境を加味して加工して提示することが行われてきた。しかし、現実音源からの現実音を仮想物体の配置を変更することで変化させ、変化させた現実音を観察者に提示することはできなかった。例えば、遮蔽物としての仮想物体を、音源としての現実物体にかぶせることで、係る音源からの現実音を遮蔽するような体験をさせることはできなかった。
【００１１】
本発明は以上の問題に鑑みて成されたものであり、音源としての現実物体が発する現実音を、仮想物体の配置位置を鑑みて適宜変更して提示する為の技術を提供することを目的とする。
【課題を解決するための手段】
【００１２】
本発明の目的を達成するために、例えば、本発明の情報処理装置は以下の構成を備える。
【００１３】
即ち、現実空間に存在する音源用現実物体からの音を収音する収音手段と、
前記音源用現実物体の位置情報を取得する音源位置取得手段と、
ユーザの位置情報を取得するユーザ位置取得手段と、
前記ユーザの位置情報に基づいて、前記現実空間に対応する仮想空間の仮想空間画像を生成する仮想空間画像生成手段と、
前記ユーザに対して、前記仮想空間画像を含む画像を出力する画像出力手段と、
前記仮想空間に存在する仮想物体であって、前記ユーザが動かすことのできる仮想物体であって、前記収音した音を調整するための仮想物体の位置情報を取得する調整位置取得手段と、
前記音源用現実物体の位置情報、前記ユーザの位置情報、及び前記仮想物体の位置情報との位置関係に基づいて、前記音源用現実物体と前記ユーザとの間に該仮想物体が存在する場合に前記収音した音を調整する調整手段と、
前記調整された音を前記ユーザに対して出力する出力手段と
を備えることを特徴とする。
また、本発明の目的を達成するために、例えば、本発明の情報処理装置は以下の構成を備える。
即ち、現実空間に存在する音源用現実物体からの音を収音する収音手段と、
前記音源用現実物体の位置情報を取得する音源位置取得手段と、
ユーザに直接届く前記音源用現実物体からの音を軽減する遮音手段と、
前記ユーザの位置情報を取得するユーザ位置取得手段と、
前記ユーザが動かすことのできる調整用現実物体であって、前記ユーザに聴かせる音を調整するための調整用現実物体の位置情報を、センサを用いて取得することにより、前記現実空間に対応する仮想空間に存在する仮想物体であって、前記調整用現実物体に追従する仮想物体の位置情報を取得する調整位置取得手段と、
前記ユーザの位置情報に基づいて、前記仮想空間の仮想空間画像を生成する仮想空間画像生成手段と、
前記ユーザに対して、前記仮想空間画像を含む画像を出力する画像出力手段と、
前記音源用現実物体の位置情報、前記ユーザの位置情報、及び前記仮想物体の位置情報との位置関係に基づいて、前記音源用現実物体と前記ユーザとの間に該仮想物体が存在する場合に前記収音した音を調整する調整手段と、
前記調整された音を前記ユーザに対して出力する出力手段と
を備えることを特徴とする。
【００１４】
本発明の目的を達成するために、例えば、本発明の情報処理方法は以下の構成を備える。
【００１５】
即ち、情報処理装置の収音手段が、現実空間に存在する音源用現実物体からの音を収音する収音工程と、
前記情報処理装置の音源位置取得手段が、前記音源用現実物体の位置情報を取得する音源位置取得工程と、
前記情報処理装置のユーザ位置取得手段が、ユーザの位置情報を取得するユーザ位置取得工程と、
前記情報処理装置の仮想空間画像生成手段が、前記ユーザの位置情報に基づいて、前記現実空間に対応する仮想空間の仮想空間画像を生成する仮想空間画像生成工程と、
前記情報処理装置の画像出力手段が、前記ユーザに対して、前記仮想空間画像を含む画像を出力する画像出力工程と、
前記情報処理装置の調整位置取得手段が、前記仮想空間に存在する仮想物体であって、前記ユーザが動かすことのできる仮想物体であって、前記収音した音を調整するための仮想物体の位置情報を取得する調整位置取得工程と、
前記情報処理装置の調整手段が、前記音源用現実物体の位置情報、前記ユーザの位置情報、及び前記仮想物体の位置情報との位置関係に基づいて、前記音源用現実物体と前記ユーザとの間に該仮想物体が存在する場合に前記収音した音を調整する調整工程と、
前記情報処理装置の出力手段が、前記調整された音を前記ユーザに対して出力する出力工程と
を備えることを特徴とする。
また、本発明の目的を達成するために、例えば、本発明の情報処理方法は以下の構成を備える。
即ち、情報処理装置の収音手段が、現実空間に存在する音源用現実物体からの音を収音する収音工程と、
前記情報処理装置の音源位置取得手段が、前記音源用現実物体の位置情報を取得する音源位置取得工程と、
前記情報処理装置の遮音手段が、ユーザに直接届く前記音源用現実物体からの音を軽減する遮音工程と、
前記情報処理装置のユーザ位置取得手段が、前記ユーザの位置情報を取得するユーザ位置取得工程と、
前記情報処理装置の調整位置取得手段が、前記ユーザが動かすことのできる調整用現実物体であって、前記ユーザに聴かせる音を調整するための調整用現実物体の位置情報を、センサを用いて取得することにより、前記現実空間に対応する仮想空間に存在する仮想物体であって、前記調整用現実物体に追従する仮想物体の位置情報を取得する調整位置取得工程と、
前記情報処理装置の仮想空間画像生成手段が、前記ユーザの位置情報に基づいて、前記仮想空間の仮想空間画像を生成する仮想空間画像生成工程と、
前記情報処理装置の画像出力手段が、前記ユーザに対して、前記仮想空間画像を含む画像を出力する画像出力工程と、
前記情報処理装置の調整手段が、前記音源用現実物体の位置情報、前記ユーザの位置情報、及び前記仮想物体の位置情報との位置関係に基づいて、前記音源用現実物体と前記ユーザとの間に該仮想物体が存在する場合に前記収音した音を調整する調整工程と、
前記情報処理装置の出力手段が、前記調整された音を前記ユーザに対して出力する出力工程と
を備えることを特徴とする。
【発明の効果】
【００１６】
本発明の構成によれば、音源としての現実物体が発する現実音を、仮想物体の配置位置を鑑みて適宜変更して提示することができる。
【発明を実施するための最良の形態】
【００１７】
以下、添付図面を参照し、本発明の好適な実施形態について説明する。なお、以下説明する実施形態は、本発明を具体的に実施した場合の一例を示すもので、特許請求の範囲に記載の構成の具体的な実施例の１つに過ぎない。
【００１８】
［第１の実施形態］
図１は、本実施形態に係るシステムのハードウェア構成例を示すブロック図である。図１に示す如く、本実施形態に係るシステムは、コンピュータ１００、マイク１１０、ヘッドフォン１０９、センサコントローラ１０５、位置姿勢センサ１０６ａ〜１０６ｃ、ＨＭＤ１０４、ビデオカメラ１０３、により構成されている。
【００１９】
先ず、マイク１１０について説明する。マイク１１０は周知の如く、周囲の音を収集するためのもので、収集した音を示す信号は音データに変換されてコンピュータ１００に入力される。マイク１１０は、現実空間中の所定の位置に配置しても良いし、現実空間中に配置する「音を発生する現実物体（音源としての現実物体）」の上（現実物体上）に配置しても良い。
【００２０】
次に、ヘッドフォン１０９について説明する。
【００２１】
ヘッドフォン１０９は周知の如く、ユーザの耳を覆い、係る耳に音を供給するための音出力装置である。本実施形態では、ヘッドフォン１０９は、現実空間中における音ではなく、コンピュータ１００から供給された音データに従った音のみを供給することができるのであれば、如何なるものを用いても良い。例えば、周知のノイズキャンセル機能を有するヘッドフォンであっても良い。ノイズキャンセル機能とは周知の通り、ヘッドフォンの装着者に対して現実空間中の音が聞こえないようにする機能であり、単なる密閉によって得られる音の遮蔽よりもいっそうの遮蔽を実現することができる。本実施形態では、通常はマイク１１０からコンピュータ１００に入力された音がそのままヘッドフォン１０９に出力される。しかし、後述するように、ユーザの視点と、音源としての現実物体と、仮想物体と、の位置関係が予め定められた条件を満たした場合には、マイク１１０が収集した音をコンピュータ１００が調整し、調整後の音をヘッドフォン１０９に出力する。
【００２２】
次に、ＨＭＤ１０４について説明する。
【００２３】
ＨＭＤ１０４には、ビデオカメラ１０３、位置姿勢センサ１０６ａが取り付けてある。ビデオカメラ１０３は、現実空間の動画像を撮像するものであり、撮像した各フレームの画像（現実空間画像）は順次、コンピュータ１００に送出される。なお、ＨＭＤ１０４がステレオ視を可能にする構成を有している場合には、ビデオカメラ１０３は左右に１台ずつＨＭＤ１０４に設ければよい。
【００２４】
位置姿勢センサ１０６ａは、自身の位置姿勢を計測するためのもので、計測した結果は信号としてセンサコントローラ１０５に送出される。センサコントローラ１０５は、位置姿勢センサ１０６ａから受けた信号に基づいて、位置姿勢センサ１０６ａの位置姿勢情報を求め、求めた位置姿勢情報はコンピュータ１００に送出される。
【００２５】
なお、センサコントローラ１０５には更に、位置姿勢センサ１０６ｂ、１０６ｃも接続されている。位置姿勢センサ１０６ｂは、音を発生する現実物体（音源としての現実物体）に取り付けられるもので、位置姿勢センサ１０６ｃは、現実空間中の所定の位置に配置される、若しくはユーザが手に把持するものである。位置姿勢センサ１０６ｂ、１０６ｃは何れも位置姿勢センサ１０６ａと同様に、自身の位置姿勢を計測するためのものである。位置姿勢センサ１０６ｂ、１０６ｃはそれぞれ、計測した結果を信号としてセンサコントローラ１０５に送出する。センサコントローラ１０５は、位置姿勢センサ１０６ｂ、１０６ｃから受けた信号に基づいてそれぞれ、位置姿勢センサ１０６ｂ、１０６ｃの位置姿勢情報を求め、求めた位置姿勢情報はコンピュータ１００に送出される。
【００２６】
なお、位置姿勢センサ１０６ａ〜１０６ｃ、センサコントローラ１０５で構成されるセンサシステムには磁気センサや光学式センサなど、様々なセンサシステムを用いることができる。なお、センサを用いて、対象物の位置姿勢情報を取得するための技術については周知であるので、これについての説明は省略する。
【００２７】
また、ＨＭＤ１０４には周知の通り表示画面が設けられており、係る表示画面は、ＨＭＤ１０４を頭部に装着したユーザの眼前に位置するように設けられている。
【００２８】
次に、コンピュータ１００について説明する。コンピュータ１００は、ＣＰＵ１０１、メモリ１０７，１０８を有し、それぞれはバス１０２に接続されている。なお、図１に示したコンピュータ１００の構成は、以下の説明で用いる部分だけを示したもので、係る構成のみでコンピュータ１００を構成するわけではない。
【００２９】
ＣＰＵ１０１は、コンピュータ１００が行うものとして後述する各処理を、メモリ１０７に格納されているプログラム１１１〜１１４、メモリ１０８に格納されているデータ１２２〜１２９、を用いて実行する。
【００３０】
メモリ１０７には、プログラム１１１〜１１４が格納されており、それぞれのプログラム１１１〜１１４は、ＣＰＵ１０１による処理対象となる。
【００３１】
メモリ１０８には、データ１２２〜１２９が格納されており、それぞれのデータ１２２〜１２９は、ＣＰＵ１０１による処理対象となる。
【００３２】
なお、それぞれのメモリ１０７，１０８に格納する情報はこれに限定するものではなく、以下の説明において既知の情報として説明するものや、当業者であれば説明せずとも当然用いるものであろう情報についても格納されているものとする。また、メモリ１０７、１０８に格納する情報の割り振りについては図１に示した割り振りに限定するものではない。また、メモリ１０７、１０８のそれぞれを別個のメモリとするのではなく、１つのメモリとしても良い。
【００３３】
プログラム１１１〜１１４、データ１２２〜１２９のそれぞれについては後述する。
【００３４】
また、図１では、マイク１１０、ヘッドフォン１０９、センサコントローラ１０５、ＨＭＤ１０４、ビデオカメラ１０３は何れも、バス１０２に直接接続されている。しかし実際には、それぞれの機器は不図示のＩ／Ｆ（インターフェース）を介してバス１０２に接続されているものとする。
【００３５】
次に、コンピュータ１００が行う処理について、同処理のフローチャートを示す図２〜４を用いて説明する。なお以下の説明で特に触れない限り、各フローチャートに従った処理を実行する主体はＣＰＵ１０１である。
【００３６】
図２は、コンピュータ１００が行うメインの処理のフローチャートである。
【００３７】
図２において、先ずステップＳ２０１では、ＣＰＵ１０１は、ビデオカメラ１０３から送出された現実空間画像（現実映像）を取得し、これを現実空間画像データ１２２としてメモリ１０８に格納する。
【００３８】
次にステップＳ２０２では、ＣＰＵ１０１は、センサコントローラ１０５から送出された、位置姿勢センサ１０６ａの位置姿勢情報を取得する。そして、取得した位置姿勢情報に、ビデオカメラ１０３と位置姿勢センサ１０６ａとの位置姿勢関係を示す関係情報を加えることで、ビデオカメラ１０３（視点）の位置姿勢情報を求める。そして求めた視点の位置姿勢情報を、カメラ位置姿勢データ１２３としてメモリ１０８に格納する。
【００３９】
次にステップＳ２０３では、ＣＰＵ１０１は、メモリ１０７に格納されている現実音源位置取得プログラム１１１を実行する。これにより、ＣＰＵ１０１は、センサコントローラ１０５から送出された位置姿勢センサ１０６ｂの位置姿勢情報、即ち、音源としての現実物体の位置姿勢情報を取得する。そして、取得した音源としての現実物体の位置姿勢情報を、現実音源位置姿勢データ１２４としてメモリ１０８に格納する。
【００４０】
次にステップＳ２０４では、ＣＰＵ１０１は、メモリ１０８に格納されてる仮想シーンデータ１２６を読み出し、読み出した仮想シーンデータ１２６に基づいて、仮想空間を構築する。仮想シーンデータ１２６には、仮想空間を構成する各仮想物体の配置位置姿勢（位置情報、姿勢情報）や、仮想空間中に配置する光源の種類、光の照射方向、光の色などのデータが含まれている。更に、仮想シーンデータ１２６には、仮想物体の形状情報も含まれている。形状情報とは、例えば、仮想物体がポリゴンで構成されている場合、ポリゴンの法線ベクトルデータ、ポリゴンの属性やその色、ポリゴンを構成する各頂点の座標値データ、テクスチャマップデータ等を含む情報である。従って、仮想シーンデータ１２６に基づいて仮想空間を構築することで、仮想空間中に各仮想物体を配置することができる。なお、位置姿勢センサ１０６ｃに対応付けられている仮想物体については、位置姿勢センサ１０６ｃの位置姿勢で仮想空間中に配置されるものとする。この場合、センサコントローラ１０５から送出された位置姿勢センサ１０６ｃの位置姿勢情報が示す位置姿勢に、位置姿勢センサ１０６ｃに対応付けられている仮想物体を配置する。
【００４１】
次にステップＳ２０５では、ＣＰＵ１０１は、メモリ１０７に格納されている現実音取得プログラム１１３を実行する。これにより、ＣＰＵ１０１は、マイク１１０から送出された音データを取得する。
【００４２】
そしてＣＰＵ１０１は、現実音加工プログラム１１２を実行する。これにより、ＣＰＵ１０１は、現実物体の位置情報、仮想物体の位置情報、視点の位置情報、を用いて、現実物体、仮想物体、視点のそれぞれの位置関係を求める。そしてＣＰＵ１０１は、求めた位置関係が予め定められた条件を満たすか否かを判断し、満たすと判断した場合には、ステップＳ２０５で取得した音データを調整する。即ち、係る音データが示す音の音量や音質を、これらの位置情報に基づいて操作する。そして調整後の音データは、現実音再生設定データ１２７としてメモリ１０８に格納される。そして、ＣＰＵ１０１は、音声再生プログラム１１４を実行する。これにより、ＣＰＵ１０１は、メモリ１０８に格納した現実音再生設定データ１２７に基づいた音信号をヘッドフォン１０９に送出する。ステップＳ２０５における処理の詳細については後述する。
【００４３】
次に、ステップＳ２０６では、ＣＰＵ１０１は、ステップＳ２０２でメモリ１０８に格納したカメラ位置姿勢データ１２３が示す位置姿勢、を有する視点を、ステップＳ２０４で構築した仮想空間中に配置する。そして、係る視点から見える仮想空間の画像（仮想空間画像）を生成する。そして生成した仮想空間画像を、ＣＧ画像データ１２８としてメモリ１０８に格納する。
【００４４】
次に、ステップＳ２０７では、ＣＰＵ１０１は、ステップＳ２０１でメモリ１０８に格納した現実空間画像データ１２２が示す現実空間画像の上に、ステップＳ２０６でメモリ１０８に格納したＣＧ画像データ１２８が示す仮想空間画像を重畳させる。なお、現実空間画像上に仮想空間画像を重畳させるための技術については様々なものがあり、本実施形態では何れを用いても良い。そしてＣＰＵ１０１は、生成した合成画像（現実空間画像上に仮想空間画像を重畳させた重畳画像）を、複合現実画像データ１２９としてメモリ１０８に格納する。
【００４５】
次に、ステップＳ２０８では、ＣＰＵ１０１は、ステップＳ２０７でメモリ１０８に格納した複合現実画像データ１２９を、映像信号としてＨＭＤ１０４に対して送出する。これにより、ＨＭＤ１０４を頭部に装着したユーザの眼前には、係る合成画像が表示されることになる。
【００４６】
次に、ＣＰＵ１０１が、不図示の操作部から本処理を終了する指示が入力されたことを検知した、或いは本処理を終了する条件が満たされたことを検知した場合、ステップＳ２０９を介して本処理を終了させる。一方、ＣＰＵ１０１が何れも検知していない場合には、ステップＳ２０９を介してステップＳ２０１に処理を戻し、次のフレームの合成画像をユーザに提示すべく、ステップＳ２０１以降の処理を行う。
【００４７】
次に、上記ステップＳ２０５における処理について説明する。
【００４８】
図３は、ステップＳ２０５における処理の詳細を示すフローチャートである。
【００４９】
先ずステップＳ３０１では、ＣＰＵ１０１は、メモリ１０７に格納されている現実音取得プログラム１１３を実行する。これにより、ＣＰＵ１０１は、マイク１１０から送出された音データを取得する。上述のようにマイク１１０は「音を発生する現実物体（音源としての現実物体）」の上（現実物体上）に配置しても良い。しかしこの場合、マイク１１０の位置姿勢が位置姿勢センサ１０６ｂが計測する位置姿勢とほぼ同じになるように、位置姿勢センサ１０６ｂの近傍位置に取り付けることが好ましい。更に、マイク１１０は、ＨＭＤ１０４を頭部に装着するユーザの耳など、ユーザに取り付けても良い。また、マイク１１０からコンピュータ１００内に入力された音データのフォーマットについてはもちろん、コンピュータ１００が扱える形式のものであるとする。
【００５０】
次にステップＳ３０２ではＣＰＵ１０１は、現実音加工プログラム１１２を実行する。これによりＣＰＵ１０１は、音源としての現実物体の位置情報、仮想物体の位置情報、視点の位置情報、を用いて、現実物体、仮想物体、視点のそれぞれの位置関係を求める。そしてＣＰＵ１０１は、求めた位置関係が予め定められた条件を満たすか否かを判断し、満たすと判断した場合には、ステップＳ３０１で取得した音データを調整する。即ち、係る音データが示す音の音量や音質を、これらの位置情報に基づいて操作する。そして調整後の音データは、現実音再生設定データ１２７としてメモリ１０８に格納される。ステップＳ３０２における処理の詳細については後述する。
【００５１】
次にステップＳ３０３では、ＣＰＵ１０１は、音声再生プログラム１１４を実行する。これにより、ＣＰＵ１０１は、ステップＳ３０２でメモリ１０８に格納した現実音再生設定データ１２７に基づいた音信号をヘッドフォン１０９に送出する。なお、仮想物体が音を発するなど、他の音も発生させる場合には、係る音のデータに基づいた音信号を作成し、作成した音信号と現実音再生設定データ１２７に基づいた音信号とを合成することで得られる合成信号をヘッドフォン１０９に送出する。
【００５２】
そして図３に示したフローチャートに従った処理は終了させ、図２に示したステップＳ２０６にリターンする。
【００５３】
次に、上記ステップＳ３０２における処理の詳細について説明する。
【００５４】
図４は、ステップＳ３０２における処理の詳細を示すフローチャートである。図４に示したフローチャートが示す処理は、音源としての現実物体、仮想物体、視点のそれぞれの位置関係が予め定められた条件を満たすか否かを判断し、満たすと判断した場合には音データを調整する、という一連の処理の一例である。即ち図４に示したフローチャートの処理では、音源としての現実物体の位置と視点の位置とを結ぶ線分と、仮想物体と、の交点が１以上存在するか否かを判断する。そして係る判断の結果、存在する場合には、係る現実物体から発せられる音が仮想物体によって遮蔽されているものと判断する。そしてこの場合、マイク１１０から取得した音データが示す音のボリューム（音量）を下げるように、この音データを調整する。
【００５５】
図５は、図４のフローチャートに従った処理を実行する場合に想定している現実空間の様子を示す図である。図５では音源としての現実物体５０２上には位置姿勢センサ１０６ｂが配されている。従って、位置姿勢センサ１０６ｂが計測する位置姿勢は、位置姿勢センサ１０６ｂ自身の位置姿勢であると共に、現実物体５０２の位置姿勢でもある。また、マイク１１０は、現実空間中の所定の位置（現実物体５０２から発せられる音を収集可能な位置）に配されている。もちろん、マイク１１０は、現実物体５０２上に配しても良い。
【００５６】
また、ユーザ５０１は手に位置姿勢センサ１０６ｃを把持している。
【００５７】
また、５０３は板状の仮想物体であり、位置姿勢センサ１０６ｃが計測する位置姿勢で配置される（図５では仮想物体５０３と位置姿勢センサ１０６ｃの両方を図示すべく、位置姿勢センサ１０６ｃと仮想物体５０３とはずらして記している）。即ち、ユーザが位置姿勢センサ１０６ｃを把持した手を動かすと、位置姿勢センサ１０６ｃの位置姿勢も変わるので、これに伴い、仮想物体５０３の位置姿勢も変化することになり、その結果、ユーザ５０１は、仮想物体５０３の位置姿勢を操作することができる。
【００５８】
ここで、図５では、現実物体５０２の位置（即ち、位置姿勢センサ１０６ｂが計測した位置）と視点の位置５７７とを結ぶ線分５９８は、仮想物体５０３と、交点５９９で交差している。この場合、コンピュータ１００は、現実物体５０２から発せられる音が、仮想物体５０３によって遮蔽されているものと判断する。そしてコンピュータ１００は、マイク１１０から取得した音データが示す音のボリューム（音量）を下げるように、この音データを調整する。そして調整後の音データに基づいた音信号をヘッドフォン１０９に出力する。これにより、ヘッドフォン１０９を装着したユーザ５０１は、「現実物体５０２から発せられた音が仮想物体５０３によって遮蔽されたので聞こえる音のボリュームが小さくなった」、と感じることができる。
【００５９】
なお、ユーザ５０１が更に手を動かし、上記交点５９９が存在しなくなった場合には、音データに対する上記調整処理は行わず、係る音データに基づいた音信号をヘッドフォン１０９に出力する。これにより、ヘッドフォン１０９を装着したユーザ５０１は、現実物体５０２から発せられた音が仮想物体５０３に遮蔽されることなく、聞こえる音のボリュームが元に戻った、と感じることができる。
【００６０】
図４において、ステップＳ４０１では、上記ステップＳ２０３で取得した音源としての現実物体の位置姿勢情報から、位置情報を取得する。更に、ステップＳ２０２で取得した視点の位置姿勢情報から、位置情報を取得する。そして、音源としての現実物体の位置情報が示す位置と、視点の位置情報が示す位置と、を結ぶ線分を求める。
【００６１】
次に、ステップＳ４０２では、ステップＳ４０１で求めた線分と、上記ステップＳ２０４で配置した１以上の仮想物体のそれぞれとの交差判定を行い、線分との交点の有無を判定する。本実施形態では説明を簡単にするために、仮想空間中に配する仮想物体の数は１つとする。
【００６２】
ステップＳ４０２における処理の結果、仮想空間中に配した仮想物体が、ステップＳ４０１で求めた線分と交差する場合には、処理をステップＳ４０４に進める。一方、交差しない場合には、処理をステップＳ４０３に進める。
【００６３】
ステップＳ４０３では、マイク１１０から取得した音データに対しては何もせず、そのまま音信号に変換してヘッドフォン１０９に送出しても良い。しかし、図４では、マイク１１０から取得した音データが示す音のボリュームを既定値のボリュームとすべく、この音データを調整する。音データを調整してボリュームを増減させるための技術については周知であるので、これについての説明は省略する。そして、図３のステップＳ３０３にリターンする。これにより、調整後の音データに基づいて音信号を生成し、係る音信号をヘッドフォン１０９に出力することができる。
【００６４】
一方、ステップＳ４０４では、マイク１１０から取得した音データが示す音のボリューム（音量）を、予め定められた量だけ下げるように、この音データを調整する。そして、図３のステップＳ３０３にリターンする。これにより、調整後の音データに基づいて音信号を生成し、係る音信号をヘッドフォン１０９に出力することができる。
【００６５】
以上説明した処理により、音源としての現実物体から発せられた音が、仮想物体によって遮蔽されたと判断した場合には、係る音のボリュームを下げてから、ユーザに提供する。これにより、ユーザは、仮想物体が音を遮蔽したように感じることができる。
【００６６】
なお、本実施形態では、音源としての現実物体の位置と視点の位置とを通る線分と、仮想物体との交差判定を行ったが、代わりに、係る線分を軸とする所定のサイズの領域内に仮想物体の一部若しくは全部が含まれているのか否かを判断するようにしても良い。そして、含まれていると判断した場合には、上記ステップＳ４０４における処理を行う。一方、含まれていないと判断した場合には、上記ステップＳ４０３における処理を行う。
【００６７】
また、本実施形態では、仮想物体表面のどこに交点があるのかについては考慮せず、単に交点があるか否かのみを判定していた。しかし、仮想物体上における交点の位置に応じて、ボリュームを下げる量を異ならせても良い。この場合、例えば、仮想物体の表面を複数の分割領域に分割し、それぞれの分割領域毎にボリュームを下げる量を設定しておく。そして、交点がどの分割領域内に存在するのかを特定することで、特定した分割領域に対応する量だけボリュームを下げる。また、仮想物体の領域の中に音源としての現実物体が含まれるかどうかで、ボリュームを下げる量を変更しても良い。
【００６８】
また、仮想物体の材質を示す材質情報を参照し、参照した材質情報に基づいて、ボリュームを下げる量を異ならせてもよい。例えば、交点における材質情報が示す材質の硬度が高いことを示す数値である場合には、ボリュームを下げる量を大きくし、逆に、交点における材質情報が示す材質の硬度が低いことを示す数値である場合には、ボリュームを下げる量を小さくする。
【００６９】
また、本実施形態では、音データの調整の一例として、音データが示す音のボリュームを操作していた。しかし、本実施形態は、音の他の要素について変更するようにしても良い。例えば、マイク１１０から取得した音データが示す音の周波数毎にフィルタをかける(イコライジングする)ようにしても良い。例えば、低周波成分のみを減じたり、逆に高周波成分のみを減じたりすることが可能である。
【００７０】
また、仮想物体の材質を示す材質情報を参照し、参照した材質情報に基づいて、音データが示す音の音質を変更するようにこの音データを調整するようにしても良い。
【００７１】
また、本実施形態では、仮想物体が、音源としての現実物体から発せられる音を遮蔽する場合を例に取り説明した。しかし拡声器を模した仮想物体を、音源としての現実物体と視点との間に位置させる場合（拡声器において口を付ける部分に相当する、仮想物体の部分が音源としての現実物体の方を向いているとする）、音データが示す音のボリュームを上げるようにしても良い。
【００７２】
また、音源としての現実物体の位置は不明であるものの、視点から音源としての現実物体への方向が分かっている場合には、係る方向に直線を延長することで、係る直線と係る仮想物体との交点判定を行えばよい。仮想物体が、音源としての現実物体の奥側にある場合には正確な解とはならない。しかし、特定の条件下（仮想物体が必ずユーザのそばに位置しており、且つ仮想物体とユーザとの間に音源としての現実物体が位置していないことが仮定できるような場合)であれば、ユーザからの音源の方位のみを知る手法を用いることができる。
【００７３】
なお、本実施形態では、ＨＭＤ１０４にはビデオシースルー方式のものを用いたが、光学シースルー方式のものを用いても良い。その場合、ＨＭＤ１０４への音信号の送信については変わらないが、ＨＭＤ１０４への画像の送信に関しては上記説明とは若干異なる。即ち、ＨＭＤ１０４が光学シースルー方式のものである場合には、ＨＭＤ１０４には仮想空間画像のみを送信することになる。
【００７４】
また、ビデオカメラ１０３の位置姿勢情報を取得するためにはセンサシステムを用いた位置姿勢取得方法以外の方法を用いても良い。例えば、現実空間中に指標を配し、係る現実空間をビデオカメラ１０３が撮像することで得られる画像を用いて、係るビデオカメラ１０３の位置姿勢情報を求める方法を用いても良い。係る方法は周知の技術である。
【００７５】
また、音源としての現実物体の位置情報を取得する場合に、現実物体に位置姿勢センサを取り付ける代わりに、マイクロフォンアレイを用いて、現実物体の位置情報を取得するようにしても良い。
【００７６】
［第２の実施形態］
第１の実施形態では、音源としての現実物体を１つとして説明しているが、音源としての現実物体が複数個、現実空間中に配されている場合であっても、第１の実施形態を個々の現実物体に適用すれば良い。
【００７７】
即ち、それぞれの音源としての現実物体に対してマイク１１０を設け、更に、それぞれの現実物体毎に位置姿勢センサ１０６ｃを設ける。そしてコンピュータ１００は、それぞれの現実物体毎に、第１の実施形態で説明したような処理を行い、最後に、それぞれの現実物体から収集した音を合成してヘッドフォン１０９に出力する。
【００７８】
本実施形態の場合、音取得と音源の位置取得が同時に行われる、すなわち、複数の音源の位置推定と音分離が同時に行えるような、マイクロフォンアレイのようなシステムを用いても良い。
【００７９】
［その他の実施形態］
また、本発明の目的は、以下のようにすることによって達成されることはいうまでもない。即ち、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体（または記憶媒体）を、システムあるいは装置に供給する。係る記憶媒体は言うまでもなく、コンピュータ読み取り可能な記憶媒体である。そして、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記録媒体に格納されたプログラムコードを読み出し実行する。この場合、記録媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記録した記録媒体は本発明を構成することになる。
【００８０】
また、コンピュータが読み出したプログラムコードを実行することにより、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム（ＯＳ）などが実際の処理の一部または全部を行う。その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００８１】
さらに、記録媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれたとする。その後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００８２】
本発明を上記記録媒体に適用する場合、その記録媒体には、先に説明したフローチャートに対応するプログラムコードが格納されることになる。
【図面の簡単な説明】
【００８３】
【図１】本発明の第１の実施形態に係るシステムのハードウェア構成例を示すブロック図である。
【図２】コンピュータ１００が行うメインの処理のフローチャートである。
【図３】ステップＳ２０５における処理の詳細を示すフローチャートである。
【図４】ステップＳ３０２における処理の詳細を示すフローチャートである。
【図５】図４のフローチャートに従った処理を実行する場合に想定している現実空間の様子を示す図である。
【図１】
0004926916.tif 000002
【図２】
0004926916.tif 000003
【図３】
0004926916.tif 000004
【図４】
0004926916.tif 000005
【図５】
0004926916.tif 000006