(57)【要約】【課題】事前に対応付けを行っておかなくても、また、複合現実空間生成のための情報処理を停止させることなく、提示デバイスと三次元モデルとの対応付けが行えるようにすることを課題とする。【解決手段】情報処理装置（１０１）は、三次元の複合現実空間内で体験者が操作する接触ＣＧモデルと、現実空間内で体験者が知覚できる通知を行うための提示デバイスとの間の、複合現実空間内における相対関係を検出する。また、情報処理装置（１０１）は、検出された相対関係が、所定の対応付け条件を満たすか否か判断し、相対関係が前記対応付け条件を満たすとき、接触ＣＧモデルと提示デバイスとを対応付ける。【選択図】図１
2016218916.tif 000002
【特許請求の範囲】
【請求項１】
現実空間と仮想空間を仮想的に融合させた三次元の複合現実空間内で体験者が操作する三次元モデルと、現実空間内で前記体験者が知覚できる通知を行うための提示デバイスとの間の、前記三次元の複合現実空間内における相対関係を検出する検出手段と、
前記検出された相対関係が、所定の対応付け条件を満たすか否か判断し、前記相対関係が前記対応付け条件を満たすとき、前記三次元モデルと前記提示デバイスとを対応付ける対応付け手段と
を有することを特徴とする情報処理装置。
【請求項２】
前記検出手段は、前記複合現実空間内における前記三次元モデルと前記提示デバイスとの間の相対距離を、前記相対関係として検出し、
前記対応付け手段は、前記対応付け条件として、前記三次元モデルと前記提示デバイスとの間の相対距離が第１の距離以内か否かの条件が設定され、前記三次元モデルと前記提示デバイスとの間の相対距離が前記第１の距離以内であるとき、前記三次元モデルと前記提示デバイスとを対応付けることを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記検出手段は、前記複合現実空間内における前記三次元モデルと前記提示デバイスとの間の相対姿勢を、前記相対関係として検出し、
前記対応付け手段は、前記対応付け条件として、前記相対姿勢の変化が所定の姿勢変化内か否かの条件が設定され、前記相対姿勢の変化が前記所定の姿勢変化内であるとき前記三次元モデルと前記提示デバイスとを対応付けることを特徴とする請求項１に記載の情報処理装置。
【請求項４】
前記検出手段は、前記複合現実空間内で、前記三次元モデルが移動している際の移動ベクトルと前記提示デバイスが移動している際の移動ベクトルとの、両移動ベクトルの成す角度を、前記相対関係として検出し、
前記対応付け手段は、前記対応付け条件として、前記両移動ベクトルの成す角度が所定の角度以内か否かの条件が設定され、前記両移動ベクトルの成す角度が所定の角度以内であるとき前記三次元モデルと前記提示デバイスとを対応付けることを特徴とする請求項１に記載の情報処理装置。
【請求項５】
前記検出手段は、更に、現実空間を撮像する撮像手段と前記複合現実空間内における前記三次元モデルとの間の相対距離と、前記撮像手段の撮影画角に相当する複合現実空間の一定範囲と前記複合現実空間内における前記三次元モデルの位置との間の位置関係を検出し、
前記対応付け手段は、前記対応付け条件として、更に、前記三次元モデルの位置が前記複合現実空間の一定範囲内に存在するか否かの条件と、前記撮像手段と前記三次元モデルとの間の相対距離が第２の距離以内か否かの条件とが設定され、前記三次元モデルの位置が前記複合現実空間の一定範囲内に存在し且つ前記撮像手段と前記三次元モデルとの間の相対距離が前記第２の距離以内である場合に、前記三次元モデルと前記提示デバイスとの対応付けを行うことを特徴とする請求項２〜４のいずれか１項に記載の情報処理装置。
【請求項６】
前記対応付け手段は、前記対応付け条件が満たされた状態が一定時間継続したか否かを判定し、前記対応付け条件が満たされた状態が一定時間継続した場合に、前記三次元モデルと前記提示デバイスとの対応付けを行うことを特徴とする請求項１〜５のいずれか１項に記載の情報処理装置。
【請求項７】
前記対応付け手段は、前記三次元モデルと前記提示デバイスとを対応付けた後、前記検出された相対関係が所定の解除条件を満たすか否か判断し、前記相対関係が前記解除条件を満たしたとき、前記三次元モデルと前記提示デバイスとの対応付けを解除することを特徴とする請求項１〜６のいずれか１項に記載の情報処理装置。
【請求項８】
複数の前記三次元モデルと複数の前記提示デバイスとの組み合わせを求める組み合わせ手段を有し、
前記検出手段は、前記三次元モデルと前記提示デバイスとの組み合わせ毎に前記相対関係を検出し、
前記対応付け手段は、前記三次元モデルと前記提示デバイスとの前記組み合わせ毎に検出された相対関係が前記対応付け条件を満たすか否か判断することを特徴とする請求項１〜６のいずれか１項に記載の情報処理装置。
【請求項９】
前記三次元モデルが、前記複合現実空間内で他の三次元モデルと接触したか否かを判定する接触判定手段と、
前記体験者が知覚できる通知を提示デバイスに行わせるための通知信号を生成して出力する生成出力手段とを有し、
前記接触判定手段は、前記対応付け手段により前記提示デバイスに対応付けられた前記三次元モデルが前記他の三次元モデルと接触したか否かを判定し、
前記生成出力手段は、前記三次元モデルが前記他の三次元モデルと接触したと判定されたときに、前記通知信号を生成して、前記三次元モデルに対応付けられた前記提示デバイスへ出力する生成出力手段とを有することを特徴とする請求項１〜８のいずれか１項に記載の情報処理装置。
【請求項１０】
前記三次元モデルが、前記複合現実空間内で他の三次元モデルと接触したか否かを判定する接触判定手段と、
前記体験者が知覚できる通知を提示デバイスに行わせるための通知信号を生成して出力する生成出力手段とを有し、
前記接触判定手段により前記三次元モデルが前記他の三次元モデルと接触したと判定されたときに、
前記検出手段は、前記接触したと判定された前記三次元モデルと、前記提示デバイスとの間の、前記相対関係を検出し、
前記対応付け手段は、前記相対関係が前記対応付け条件を満たすか否か判断して、前記相対関係が前記対応付け条件を満たすときに前記三次元モデルと前記提示デバイスとを対応付け、
前記生成出力手段は、前記通知信号を生成して、前記三次元モデルに対応付けられた前記提示デバイスへ出力することを特徴とする請求項１〜８のいずれか１項に記載の情報処理装置。
【請求項１１】
検出手段が、現実空間と仮想空間を仮想的に融合させた三次元の複合現実空間内で体験者が操作する三次元モデルと、現実空間内で前記体験者が知覚できる通知を行うための提示デバイスとの間の、前記三次元の複合現実空間内における相対関係を検出するステップと、
対応付け手段が、前記検出された相対関係が、所定の対応付け条件を満たすか否か判断し、前記相対関係が前記対応付け条件を満たすとき、前記三次元モデルと前記提示デバイスとを対応付けるステップと
を含むことを特徴とする情報処理方法。
【請求項１２】
コンピュータを、請求項１〜１０のいずれか１項に記載の情報処理装置の各手段として機能させるためのプログラム。
【請求項１３】
撮像手段により現実空間を撮像した画像と、コンピュータグラフィックにより生成した仮想空間の画像とを、仮想的に融合させた複合現実空間の画像を表示手段により表示させる頭部装着型表示装置と、
現実空間内で体験者が知覚できる通知を行うための提示デバイスと、
請求項１〜１０のいずれか１項に記載の情報処理装置と
を有することを特徴とする情報処理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複合現実感を提供する情報処理装置、情報処理方法、プログラム及び情報処理システムに関する。
【背景技術】
【０００２】
近年、複合現実感（Ｍｉｘｅｄ  Ｒｅａｌｉｔｙ、以下、ＭＲとする。）技術の研究が盛んである。ＭＲ技術は、現実空間と、コンピュータによって作られる仮想空間とを継ぎ目なく融合する技術である。
【０００３】
ＭＲ技術における画像表示装置は、ビデオシースルー方式か、光学シースルー方式によって実現される。ビデオシースルー方式は、ビデオカメラ等の撮像装置によって撮像された現実空間の画像に、この撮像装置の位置及び姿勢に応じて生成された仮想空間の画像を重畳描画した合成画像を表示する方式である。仮想空間の画像は、コンピュータグラフィクス（以下、ＣＧとする。）により描画された仮想物体や文字情報等により構成されている。ビデオシースルー方式の画像表示装置としては、撮像装置と一体化したビデオシースルー型のヘッドマウンテッドディスプレイ（以下、ＨＭＤとする。）が知られており、ＨＭＤを体験者の頭部に装着して、体験者にビデオシースルー画像を提示する。光学シースルー方式は、体験者の頭部に装着された光学シースルー型ディスプレイに、体験者の視点の位置及び姿勢に応じて生成された仮想空間の画像を表示する方式である。以下、ＨＭＤを装着してＭＲを体験することをＭＲ体験と表記し、また、そのＭＲ体験を行っている者をＭＲ体験者と表記する。
【０００４】
また、複合現実空間内には、ＭＲ体験者が複合現実空間内で操作等できるＣＧの三次元モデルが配置される場合がある。そして、この三次元モデルが、例えば複合現実空間内において他の物体等の三次元モデルと接触した場合、その接触をＭＲ体験者に知覚させるようにすれば、ＭＲ体験者はリアルな複合現実感を得ることができる。以下、複合現実空間内においてＭＲ体験者による操作が可能で且つ他の物体等の三次元モデルに対して接触可能な三次元モデルを、接触ＣＧモデルと表記することにする。また、複合現実空間内において接触ＣＧモデルにより接触される他の三次元モデルを、以下、被接触ＣＧモデルと表記する。
【０００５】
このような接触ＣＧモデルと被接触ＣＧモデル同士の接触をＭＲ体験者に知覚させるためのシステムの一つとして、ハプティックデバイス等の力覚デバイスを用いたシステムがある。ハプティックデバイス等の力覚デバイスは、接触ＣＧモデルが被接触ＣＧモデルに接触したとき、それらＣＧモデル同士の接触を反力としてＭＲ体験者にフィードバックできるため、現実物体同士が接触したときに似た感覚をＭＲ体験者に与えることができる。ただし、ハプティックデバイス等の力覚デバイスは、可動範囲が狭いため、ＭＲ体験者の行動範囲が制限されるというデメリットがある。また、力覚デバイスの代わりに、振動デバイスや音響デバイス、視覚デバイスなどを通じて、ＣＧモデル同士の接触をＭＲ体験者に知覚させるシステムもある。以下、ＣＧモデル同士の接触をＭＲ体験者に知覚させる際に用いられる振動デバイスや音響デバイス、視覚デバイス等を、提示デバイスと呼ぶことにする。これらの提示デバイスは、無線やＢｌｕｅｔｏｏｔｈ（登録商標）などを通じて接続可能であるため、ＭＲ体験者は、広い範囲でＭＲ体験が可能となる。
【０００６】
また、前述のような接触ＣＧモデルと被接触ＣＧモデルとの接触を、提示デバイスを通じてＭＲ体験者に知覚させるためには、予め接触ＣＧモデルに対して提示デバイスを対応付けておく必要がある。これにより、接触ＣＧモデルが被接触ＣＧモデルと接触した場合に、接触ＣＧモデルに対応付けられた提示デバイスによる通知がなされることになり、ＭＲ体験者は、接触ＣＧモデルと被接触ＣＧモデルとが接触したことを知覚できるようになる。
【０００７】
例えば特許文献１には、画像認識を利用して、物体とコンテンツを対応付ける方法が提案されている。この特許文献１では、予め画像認識用のマークを物体に貼りつけておくことで、物体とコンテンツとの対応付けを行っている。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２０１４−２２００００号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
ところで、複合現実感を提供するシステムにおいて、提示デバイスと接触ＣＧモデルとの対応付けは、複合現実空間を生成する情報処理が開始される前（つまり事前）に行っておく必要がある。しかしながら、このような事前の対応付け設定のための作業は、システムを運営している者にとって非常に面倒な作業である。またこの場合、ＭＲ体験者は、事前の対応付けが完了するまで待たなければＭＲ体験ができない。また、複合現実空間を生成する情報処理が実行されている場合に、提示デバイスと接触ＣＧモデルの対応付けが必要になったとき、つまり新たな対応付けや対応付けの変更が必要になったときには、実行中の情報処理を一時的に停止させなければならない。すなわち、この場合、ＭＲ体験者は、ＭＲ体験を一時的に中断しなければならなくなる。
【００１０】
本発明はこのような問題点に鑑みてなされたものである。本発明は、複合現実空間を生成する情報処理の開始前に事前に提示デバイスと三次元モデルとの対応付けを行っておく必要がない情報処理装置、情報処理方法、プログラム及び情報処理システムを提供することを目的とする。また、本発明は、複合現実空間を生成する情報処理が実行されている場合に、その情報処理を停止させることなく、提示デバイスと三次元モデルとの対応付けを行うことが可能な情報処理装置、情報処理方法、プログラム及び情報処理システムの提供を目的とする。
【課題を解決するための手段】
【００１１】
本発明の情報処理装置は、現実空間と仮想空間を仮想的に融合させた三次元の複合現実空間内で体験者が操作する三次元モデルと、現実空間内で前記体験者が知覚できる通知を行うための提示デバイスとの間の、前記三次元の複合現実空間内における相対関係を検出する検出手段と、前記検出された相対関係が、所定の対応付け条件を満たすか否か判断し、前記相対関係が前記対応付け条件を満たすとき、前記三次元モデルと前記提示デバイスとを対応付ける対応付け手段とを有することを特徴とする。
【発明の効果】
【００１２】
本発明によれば、複合現実空間を生成する情報処理の開始前に事前に提示デバイスと三次元モデルとの対応付けを行っておかなくても、提示デバイスと三次元モデルとの対応付けができる。また、本発明によれば、複合現実空間を生成する情報処理が実行されている場合に、その情報処理を停止させることなく、提示デバイスと三次元モデルとの対応付けを行うことができる。
【図面の簡単な説明】
【００１３】
【図１】実施形態の情報処理装置とその周辺デバイスの概略構成を示す図である。
【図２】実施形態の情報処理装置の詳細な構成を示す図である。
【図３】接触ＣＧモデルと提示デバイスの対応付けの条件を説明する図である。
【図４】接触ＣＧモデルと提示デバイスの対応付けの解除条件を説明する図である。
【図５】接触ＣＧモデルと提示デバイスの対応付け処理のフローチャートである。
【図６】接触ＣＧモデルと提示デバイスの対応付け判断のフローチャートである。
【図７】情報処理装置をコンピュータにより実現する場合の構成例を示す図である。
【発明を実施するための形態】
【００１４】
［第１の実施形態］
以下、本実施形態の情報処理装置について説明する。図１は、本実施形態の情報処理装置１０１とその周辺デバイスからなる情報処理システムの概略構成を示す図である。本実施形態の情報処理装置１０１は、頭部装着型表示装置（ヘッドマウンテッドディスプレイ、以下、ＨＭＤ２００とする。）を通じてＭＲ体験者に複合現実感（ＭＲ）を提供可能な装置である。情報処理装置１０１とＨＭＤ２００は、有線又は無線により接続されている。なお、本実施形態では、情報処理装置１０１とＨＭＤ２００を別構成として説明するが、情報処理装置１０１はＨＭＤ２００に内蔵されていてもよい。
【００１５】
ＨＭＤ２００は、ビデオシースルー方式と光学シースルー方式の何れであってもよいが、本実施形態では、一例としてビデオシースルー方式を用いる場合を例に挙げて説明する。すなわち、ＨＭＤ２００は、撮像装置により現実空間を撮像した画像と、コンピュータグラフィック（ＣＧ）により生成した仮想空間の画像とを、仮想的に融合させた複合現実空間の画像を表示装置のディスプレイ画面上に表示させる。これにより、ＨＭＤ２００を頭部に装着しているＭＲ体験者は、複合現実感を体験できる。また、本実施形態の場合、ＨＭＤ２００には、後述する頭部位置姿勢センサ２０１が搭載されている。
【００１６】
また、本実施形態において、情報処理装置１０１には、それぞれ後述する接触ＣＧモデル位置センサ２０２と提示デバイス位置センサ２０３が、有線又は無線により接続されている。これら接触ＣＧモデル位置センサ２０２と提示デバイス位置センサ２０３の説明は後述する。
【００１７】
以下、本実施形態では、複合現実感の適用例として、工場等で製品を組み立てる作業の際に、作業手順や配線の様子を示すＣＧ画像を重畳表示して組み立て作業の補助やシミュレーションを行うような場合を例に挙げて説明する。なお、以下の説明では、ＭＲ体験者が操作等することが可能なＣＧによる三次元モデルであって、複合現実空間内で他の物体等を表すＣＧの三次元モデルに対して接触する三次元モデルを、接触ＣＧモデルと表記している。また、以下の説明では、接触ＣＧモデルが複合現実空間内で接触する、他の物体等を表す三次元モデルを、被接触ＣＧモデルと表記している。接触ＣＧモデルと被接触ＣＧモデルは、例えば現実空間内に存在する現実物体等を表現したＣＧモデルであってもよいし、仮想空間内に存在する仮想物体等を表すＣＧモデルであってもよい。また、ＣＧモデル同士が接触したか否かを判定する際には、複合現実空間内で動く（移動する）接触ＣＧモデルと動かない（移動しない）被接触ＣＧモデルとにグループ分けすることで、接触判定のための計算を高速化させることも可能である。また、接触ＣＧモデルが接触する可能性のある被接触ＣＧモデルを予め決定しておくことで、接触判定処理を更に高速化することも可能である。また、本実施形態では、接触ＣＧモデルと被接触ＣＧモデルの接触をＭＲ体験者が知覚できるように通知するための提示デバイスとして、例えば振動デバイスや音響デバイス、視覚デバイス等の提示デバイスを用いている。第１の実施形態では、提示デバイスの一例として振動デバイスを挙げている。
【００１８】
ここで、複合現実空間において、より現実に近い組み立て作業等のシミュレーションを行うためには、複合現実空間内でＣＧモデル同士が例えば接触等したときには、その接触等をＭＲ体験者（つまり作業者）に通知する必要がある。また、組み立て作業等のシミュレーションが行われる場合には、例えば複数人がシミュレーションに参加する場合も想定され、このような場合、各ＭＲ体験者に対してはそれぞれ物理的な提示デバイスが割り当てられるようになると考えられる。さらに、各ＭＲ体験者が操作する接触ＣＧモデルについても、複合現実空間内において複数定義されるようになると考えられる。したがって、各ＭＲ体験者に割り当てられた提示デバイスには、それぞれ接触ＣＧモデルを対応付けておく必要がある。これは、複数のＭＲ体験者にそれぞれ提示デバイスが割り当てられている状態で、例えば或るＭＲ体験者が或る接触ＣＧモデルを被接触ＣＧモデルに接触させた際、何れのＭＲ体験者の提示デバイスへ接触結果を通知するかを特定する必要があるからである。また、組み立て作業等のシミュレーションの場合、ＭＲ体験者は、複合現実空間内で操作等している接触ＣＧモデルを、例えば工具のドライバーを表現した接触ＣＧモデルから、例えばレンチを表現した接触ＣＧモデルへ取り替えるような場合がある。このような場合、接触ＣＧモデルと提示デバイスの対応付けを変更（対応付けを再設定）する必要がある。
【００１９】
本実施形態の情報処理装置１０１は、事前の対応付け設定を必要とせず、また、複合現実空間を生成する情報処理を停止させることなく、接触ＣＧモデルと提示デバイスの対応付けを自動的に設定可能となされている。詳細については後述するが、本実施形態の情報処理装置１０１は、複合現実空間内における接触ＣＧモデルと提示デバイスとの間の相対関係を検出し、その相対関係が所定の対応付け条件を満たすか否か判断する。そして、情報処理装置１０１は、相対関係が対応付け条件を満たすとき、接触ＣＧモデルと提示デバイスとを対応付ける。以下、本実施形態では、接触ＣＧモデルが、現実空間内に存在する現実物体を表現したＣＧの三次元モデルとなされている例を挙げて、接触ＣＧモデルと提示デバイスとの対応付けについて説明する。
【００２０】
本実施形態では、現実空間内に存在する複数の現実物体を表現した図１の複数の接触ＣＧモデル１０３１，１０３２，・・・に対して、それぞれ個別に提示デバイス１０４１，１０４２，・・・を対応付ける。なお、以下の説明では、各接触ＣＧモデル１０３１，１０３２，・・・をそれぞれ区別せずに接触ＣＧモデル１０３と表記し、同様に、各提示デバイス１０４１，１０４２，・・・をそれぞれ区別せずに提示デバイス１０４と表記する。そして、本実施形態において、ＭＲ体験者は、複合現実空間内でそれら複数の接触ＣＧモデル１０３を、用途に応じて任意に取り替えながら操作可能となされている。すなわち、各接触ＣＧモデル１０３は現実空間内の現実物体を各々表現した三次元モデルであるため、ＭＲ体験者は、現実空間内の現実物体を任意に取り替えることで、複合現実空間内で操作可能な接触ＣＧモデル１０３を取り替えることができる。なお、複合現実空間においては、現実空間内の各現実物体と、それら現実物体をＣＧで表現した接触ＣＧモデル１０３とが、区別されずに同じものとして扱われる。このため、以下の説明では、それらを特に区別する必要がない場合には「接触ＣＧモデル」とのみ表記し、一方、それらを区別する必要がある場合には接触ＣＧモデルに対応した現実物体を「接触ＣＧモデルの現実物体」と表記する。また、接触ＣＧモデル１０３の形状と現実物体の形状は必ずしも同じである必要はなく、現実物体は例えば円筒形状で、接触ＣＧモデル１０３は工具のドライバーやレンチの形状となされていてもよい。もちろん、接触ＣＧモデル１０３と現実物体の形状は同等であってもよく、現実物体が接触ＣＧモデル１０３と同様の形状となされた実物のモックアップであってもよい。
【００２１】
また、図１において、提示デバイス１０４は、振動デバイスや音響デバイス、視覚デバイス等の複数の提示デバイスからなり、ＭＲ体験者には、少なくとも一つの提示デバイスが割り当てられる。提示デバイスとして振動デバイスが割り当てられた場合、振動デバイスは、ＭＲ体験者の身体に触れる部分、つまり例えば手に持つ、或いは手首に装着するなど、振動をＭＲ体験者が知覚できる部分に配置される。なお、提示デバイスは、振動デバイスに限定されず、ＭＲ体験者が知覚できるのであれば、他の種類のデバイスであってもよい。また、本実施形態では、情報処理装置１０１と各提示デバイス１０４は、無線等により接続されており、ＭＲ体験者は広い範囲でＭＲ体験が可能となされている。
【００２２】
図２は、本実施形態の情報処理装置１０１の構成を、より詳細に示した図である。図２に示すように、情報処理装置１０１は、頭部位置姿勢記録部２０４、接触ＣＧモデル位置記憶部２０５、提示デバイス位置記録部２０６、組み合わせ算出部２０７、対応付け判断部２０８を有する。また、情報処理装置１０１は、接触判定部２０９、接触ＣＧモデル形状記憶部２１０、被接触ＣＧモデル形状記憶部２１１、被接触ＣＧモデル位置記憶部２１２、データ送信部２１３を有する。
【００２３】
接触ＣＧモデル位置センサ２０２は、各接触ＣＧモデル１０３の位置データを取得し、接触ＣＧモデル位置記憶部２０５に出力する。本実施形態では、接触ＣＧモデル１０３が現実空間内の現実物体を表現するＣＧの三次元モデルとなされているため、接触ＣＧモデル１０３の位置とは、接触ＣＧモデル１０３の現実物体の、複合現実空間の三次元座標系における三次元位置に相当する。接触ＣＧモデル位置センサ２０２は、一例として、磁気センサの磁気トランスミッタと磁気レシーバからなり、磁気トランスミッタが例えばＭＲ体験者の近傍に配置され、磁気レシーバが各接触ＣＧモデル１０３の現実物体に搭載されている。なお、磁気トランスミッタは、ＨＭＤ２００内に搭載されていてもよい。磁気センサは、磁気トランスミッタが発する磁場内で磁気レシーバの位置や姿勢が変化したときの磁気の変化を、磁気レシーバで検知し、その検知信号を解析することで磁気レシーバの位置と姿勢を検出可能とするものである。このように接触ＣＧモデル位置センサ２０２は、各接触ＣＧモデル１０３の現実物体に装着された磁気レシーバが、磁気トランスミッタの磁場内で磁気の変化を計測することにより、各接触ＣＧモデル１０３の位置等を計測する。なお、本実施形態において、接触ＣＧモデル位置センサ２０２は、各接触ＣＧモデル１０３の位置を例えば１５Ｈｚ以上の周期で計測しているものとする。
【００２４】
接触ＣＧモデル位置センサ２０２は、磁気センサに限定されるものではなく、各接触ＣＧモデル１０３の位置を例えば１５Ｈｚ以上の周期で計測できるのであれば、他のデバイスであってもよい。例えば、ビデオシースルー型のＨＭＤ２００に搭載されているビデオカメラを、接触ＣＧモデル位置センサ２０２として用いることもできる。この場合、ＨＭＤ２００に搭載されているビデオカメラにより、現実空間内の測定対象物体（接触ＣＧモデル１０３の現実物体）に装着されている位置合わせ用の矩形マーカ等を撮影し、その撮影画像から矩形マーカを検出して、位置姿勢を求める方法でもよい。また、接触ＣＧモデル位置センサ２０２は、接触ＣＧモデル１０３と同等の形状となされた実物のモックアップの位置を計測してもよい。なお、接触ＣＧモデル１０３に対応した現実物体が存在せず、接触ＣＧモデル１０３が仮想空間内の仮想物体を表すＣＧモデルである場合には、磁気センサのような物理的デバイスは不要である。このように、接触ＣＧモデル１０３が仮想物体を表すＣＧモデルである場合、情報処理装置１０１は、仮想空間の仮想物体を表す接触ＣＧモデルの複合現実空間における三次元位置を算出すればよい。
【００２５】
接触ＣＧモデル位置記憶部２０５は、接触ＣＧモデル位置センサ２０２にて計測された各接触ＣＧモデル１０３の位置データを受信して記憶する。接触ＣＧモデル位置記憶部２０５に記憶された位置データは、後述する組み合わせ算出部２０７へ送られる。
【００２６】
提示デバイス位置センサ２０３は、各提示デバイス１０４の位置データを取得し、提示デバイス位置記録部２０６に出力する。なお、提示デバイス１０４の位置とは、提示デバイス１０４の、複合現実空間の三次元座標系における三次元位置である。提示デバイス位置センサ２０３としては、前述した接触ＣＧモデル位置センサ２０２と同様の磁気センサを用いることができる。この場合、磁気トランスミッタが例えばＭＲ体験者の近傍に配置され、磁気レシーバが各提示デバイス１０４に搭載される。なお、この場合も磁気トランスミッタは、ＨＭＤ２００内に搭載されていてもよい。提示デバイス位置センサ２０３は、各提示デバイス１０４に装着された磁気レシーバが、磁気トランスミッタの磁場内で磁気の変化を計測することにより、各提示デバイス１０４の位置等を計測する。
【００２７】
提示デバイス位置記録部２０６は、提示デバイス位置センサ２０３により計測された各提示デバイス１０４の位置データを受信して記録する。提示デバイス位置記録部２０６に記録された位置データは、組み合わせ算出部２０７へ送られる。
【００２８】
組み合わせ算出部２０７は、複数の接触ＣＧモデル１０３と複数の提示デバイス１０４の全ての組み合わせを求め、それら組み合わせを表すデータとそれぞれの位置データを、後述する対応付け判断部２０８へ送る。
【００２９】
頭部位置姿勢センサ２０１は、ＨＭＤ２００を装着したＭＲ体験者の頭部の位置姿勢のデータ、つまりＨＭＤ２００のビデオカメラの位置姿勢データを取得して、そのデータを頭部位置姿勢記録部２０４に出力する。前述した磁気センサは、位置だけではなく姿勢も計測可能であるため、磁気センサを頭部位置姿勢センサ２０１として用いてもよい。
【００３０】
頭部位置姿勢記録部２０４は、頭部位置姿勢センサ２０１により計測されたＭＲ体験者の頭部の位置姿勢データ（ＨＭＤ２００のビデオカメラの位置姿勢データ）を記録する。頭部位置姿勢記録部２０４に記録された位置姿勢データは、対応付け判断部２０８へ送られる。
【００３１】
対応付け判断部２０８は、検出手段と対応付け手段の一例である。対応付け判断部２０８は、組み合わせ算出部２０７で求められた、複数の接触ＣＧモデル１０３と複数の提示デバイス１０４の全ての組み合わせについて、接触ＣＧモデル１０３と提示デバイス１０４をそれぞれ対応付けるべきか否かを判定する。そして、対応付け判断部２０８は、対応付けした接触ＣＧモデル１０３と提示デバイス１０４のリストを、接触判定部２０９へ出力する。対応付け判断部２０８で行われる対応付け判断処理の詳細は後述する。
【００３２】
接触ＣＧモデル形状記憶部２１０は、接触ＣＧモデル１０３の形状データを接触判定部２０９に出力する。本実施形態のように組み立て作業のシミュレーションを実現する場合、接触ＣＧモデル形状記憶部２１０には、一例として、工具のドライバーの形状データやレンチの形状データ等が記憶されている。
【００３３】
同様に被接触ＣＧモデル形状記憶部２１１は、被接触ＣＧモデルの形状データを記憶しており、被接触ＣＧモデルの形状データを接触判定部２０９に出力する。本実施形態の場合、被接触ＣＧモデル形状記憶部２１１は、組み立て作業のシミュレーションに用いられる仮想空間内の物体等のＣＧモデルの形状データを記憶している。一例として、車の組み立て作業のシミュレーションが行われる場合には車体等の三次元のＣＧモデルの形状データ、建物等の組み立て作業のシミュレーションが行われる場合には建物等の三次元のＣＧモデルの形状データが記憶されている。
【００３４】
被接触ＣＧモデル位置記憶部２１２は、複合現実空間中に配置される被接触ＣＧモデルの位置データを記憶しており、その被接触ＣＧモデルの位置データを接触判定部２０９に出力する。
【００３５】
接触判定部２０９は、接触ＣＧモデル１０３の形状と位置、被接触ＣＧモデルの形状と位置から、接触ＣＧモデル１０３と被接触ＣＧモデルが接触しているかを判定する。接触判定部２０９は、接触ＣＧモデル１０３と被接触ＣＧモデルが接触していると判定した場合は、対応付け判断部２０８にて接触ＣＧモデル１０３に対応付けられた提示デバイス１０４を振動させるための制御信号を、データ送信部２１３に送る。すなわち、提示デバイス１０４を振動させるための制御信号は、接触ＣＧモデル１０３と被接触ＣＧモデルの接触をＭＲ体験者に知覚させるための通知信号である。
【００３６】
これら接触判定部２０９とデータ送信部２１３は、生成出力手段の一例であり、接触判定部２０９が接触していると判定した接触ＣＧモデル１０３に対応付けられている提示デバイス１０４に対して、接触判定部２０９から送られてきた制御信号を出力する。本実施形態において、制御信号は、提示デバイス１０４である振動デバイスを、振動又は停止させるための制御命令である。接触判定部２０９は、接触ＣＧモデル１０３と被接触ＣＧモデルが接触していると判定した場合、それら接触ＣＧモデル１０３と被接触ＣＧモデルが接触している間は常に振動デバイスを振動させる制御命令を出力する。なお、接触判定部２０９は、接触ＣＧモデル１０３と被接触ＣＧモデルが接触していると判定した場合、振動デバイスを一定時間振動させた後に停止させる制御命令を出力してもよい。
【００３７】
以下、接触ＣＧモデル１０３と提示デバイス１０４の具体的な対応付け方法について、図３を用いて説明する。図３の作業環境例では、提示デバイス１０４の振動をＭＲ体験者が知覚できるようにするために、提示デバイス１０４は、ＭＲ体験者の例えば手首に装着されている。また、図３の例では、ＭＲ体験者は、接触ＣＧモデル１０３の現実物体を手に持っているものとする。図３の例では、接触ＣＧモデル１０３は、例えば円筒形の現実物体となされているが、複合現実空間内では組み立て作業のシミュレーションで使われる工具等の画像として表示される。また、図３の例では、被接触ＣＧモデル１０２は、球体となっているが、これは図示を簡単にするための一例であり、実際には、組み立て作業等のシミュレーションにおいて組み立て対象物体（車体や建物等）を表現したＣＧモデルとなる。
【００３８】
本実施形態において、対応付け判断部２０８は、複合現実空間内における接触ＣＧモデル１０３と提示デバイス１０４との間の相対関係を検出し、その相対関係が所定の対応付け条件を満たした場合に、接触ＣＧモデル１０３と提示デバイス１０４とを対応付ける。具体的には、図３で示した作業環境において、対応付け判断部２０８は、接触ＣＧモデル１０３と提示デバイス１０４との間の相対関係の一例として、複合現実空間内における接触ＣＧモデル１０３と提示デバイス１０４の位置に基づく相対関係を求める。また、対応付け判断部２０８は、位置に基づく相対関係に対する所定の対応付け条件の一例として、以下の第１，第２の二つの対応付け条件を用いる。そして、対応付け判断部２０８は、位置に基づく相対関係が第１，第２の対応付け条件を満たした状態が一定時間継続した場合に、接触ＣＧモデル１０３と提示デバイス１０４を対応付ける。本実施形態では、第１，第２の二つの対応付け条件が満たされた状態の継続を判定する際の時間条件として設定されている一定時間は、一例として１秒間を用いる。
【００３９】
第１の対応付け条件は、接触ＣＧモデル１０３と提示デバイス１０４との間の相対位置変化、すなわち相対距離が第１の距離以内である、という条件である。なお、接触ＣＧモデル１０３と提示デバイス１０４との間の相対位置変化、すなわち相対距離は、複合現実空間内における接触ＣＧモデル１０３の位置と提示デバイス１０４の位置から算出可能である。本実施形態では、接触ＣＧモデル１０３と提示デバイス１０４との間の相対位置変化に応じた距離条件として設定されている第１の距離は、一例として５ｃｍを用いる。
【００４０】
第２の対応付け条件は、接触ＣＧモデル１０３が、ＭＲ体験者の頭部位置姿勢から求められる視線方向に存在し、且つ、頭部位置姿勢センサ２０１からの最短距離が第２の距離以内である、という条件である。なお、ＭＲ体験者の頭部位置姿勢から求められる視線方向とは、ＨＭＤ２００のビデオカメラの撮影画角における一定範囲内の領域に相当する。すなわち、接触ＣＧモデル１０３がＭＲ体験者の頭部位置姿勢から求められる視線方向に存在する場合とは、接触ＣＧモデル１０３がビデオカメラの撮影画角における一定範囲内に存在しているという位置関係を有している場合である。また、頭部位置姿勢センサ２０１からの最短距離は、複合現実空間内におけるＭＲ体験者の頭部位置（つまりカメラ位置）と接触ＣＧモデル１０３の位置から算出可能である。本実施形態では、頭部位置姿勢センサ２０１からの最短距離に対する距離条件として設定されている第２の距離は、一例として１ｍを用いる。
【００４１】
なお、対応付け判断部２０８が第１，第２の対応付け条件が満たされた状態の継続を判定する際の時間条件は、前述の１秒間に限定されるものではなく、複合現実空間内における接触ＣＧモデル１０３と提示デバイス１０４の移動速度等に応じて変更してもよい。例えば、シミュレーションを行っている作業内容により、接触ＣＧモデル１０３と提示デバイス１０４が複合現実空間内で移動するような場合、作業内容によってそれらの移動速度が変わることがある。このように接触ＣＧモデル１０３と提示デバイス１０４の移動速度が変わる場合、前述の１秒間だけでは、継続の判定が正確に行えない場合があるため、移動速度に応じて継続判定の時間条件を変更してもよい。
【００４２】
同様に、第１の対応付け条件において第１の距離として設定される５ｃｍや、第２の対応付け条件において第２の距離として設定される最短距離の１ｍの各距離条件についても、それら距離条件に限定されるものではない。それら第１の距離や第２の距離は、例えば接触ＣＧモデル１０３と提示デバイス１０４が前述した図３の例とは異なる位置に配されるような場合には、それらが配される位置に応じて変更してもよい。一例として、シミュレーションで行われる一連の組み立て作業において、ＭＲ体験者が例えば接触ＣＧモデル１０３を手から一時的に離すような作業が必要になるような場合には、第１の距離として設定される距離を５ｃｍよりも大きくしてもよい。また、一例として、例えば接触ＣＧモデル１０３が、ＭＲ体験者の足により操作される現実物体等を表現しているものであり、提示デバイス１０４が足首等に装着されるような場合には、第２の距離として設定される最短距離を１ｍより長くてもよい。
【００４３】
本実施形態によれば、対応付け判断部２０８は、前述のように接触ＣＧモデル１０３と提示デバイス１０４の相対関係が第１，第２の対応付け条件を満たした状態が一定時間の継続した場合、接触ＣＧモデル１０３と提示デバイス１０４とを対応付ける。このようにして接触ＣＧモデル１０３と提示デバイス１０４が対応付けられた後、接触判定部２０９は、被接触ＣＧモデル１０２と接触ＣＧモデル１０３の接触を検知すると、提示デバイス１０４に対して前述した制御信号を出力することになる。
【００４４】
次に、接触ＣＧモデル１０３と提示デバイス１０４の対応付けの解除方法について、図４を用いて説明する。本実施形態において、対応付け判断部２０８は、前述したようにして接触ＣＧモデル１０３と提示デバイス１０４の対応付けが行われた後に、以下の解除条件が満たされた場合には、提示デバイス１０４と接触ＣＧモデル１０３の対応付けを解除する。
【００４５】
解除条件は、接触ＣＧモデル１０３と提示デバイス１０４との間の相対位置変化、すなわち相対距離が第３の距離を越える、という条件である。なお、接触ＣＧモデル１０３と提示デバイス１０４との間の相対距離は、前述の第１の対応付け条件で説明したのと同様に、複合現実空間内における接触ＣＧモデル１０３の位置と提示デバイス１０４の位置から算出可能である。本実施形態では、接触ＣＧモデル１０３と提示デバイス１０４との間の距離条件として設定されている第３の距離は、一例として５ｃｍを用いる。図４の例は、図３のように提示デバイス１０４がＭＲ体験者の手首に装着されている場合において、ＭＲ体験者が接触ＣＧモデル１０３を手から離したことで、接触ＣＧモデル１０３と提示デバイス１０４の相対距離が５ｃｍを超えた状態を表している。
【００４６】
なお、本実施形態の解除条件において第３の距離として設定される相対距離は、５ｃｍに限定されるものではない。また、解除条件における第３の距離は、前述の第１の距離の場合と同様に、接触ＣＧモデル１０３と提示デバイス１０４が前述した図３の例とは異なる位置に配されるような場合、それらが配される位置に応じて変更されてもよい。すなわち、一例として、ＭＲ体験者が接触ＣＧモデル１０３を手から一時的に離すような作業が必要になるような場合には、第３の距離として設定される距離を５ｃｍよりも大きくしてもよい。
【００４７】
次に、図５には、本実施形態の情報処理装置１０１における前述した対応付け処理のフローチャートを示す。情報処理装置１０１において図５のフローチャートの処理が開始されると、先ず、接触ＣＧモデル位置記憶部２０５と提示デバイス位置記録部２０６によるステップＳ５０１の処理が行われる。ステップＳ５０１では、接触ＣＧモデル位置記憶部２０５は、接触ＣＧモデル位置センサ２０２から接触ＣＧモデル１０３の位置データが供給されると、その位置データを記憶する。また、ステップＳ５０１では、提示デバイス位置記録部２０６は、提示デバイス位置センサ２０３から提示デバイス１０４の位置データが供給されると、その位置データを記録する。ステップＳ５０１の後、情報処理装置１０１の処理は、頭部位置姿勢記録部２０４により行われるステップＳ５０２へ進む。
【００４８】
ステップＳ５０２では、頭部位置姿勢記録部２０４は、ＨＭＤ２００の頭部位置姿勢センサ２０１からＭＲ体験者の頭部位置姿勢データ、つまりＨＭＤ２００のビデオカメラにおける撮影時の位置姿勢データを記録する。ステップＳ５０２の後、情報処理装置１０１の処理は、組み合わせ算出部２０７により行われるステップＳ５０３へ進む。
【００４９】
ステップＳ５０３では、組み合わせ算出部２０７は、接触ＣＧモデル位置記憶部２０５に記憶されている全ての接触ＣＧモデル１０３の位置データと、提示デバイス位置記録部２０６に記録されている全ての提示デバイス１０４の位置データを読み出す。そして、組み合わせ算出部２０７は、それら各接触ＣＧモデル１０３と各提示デバイス１０４の位置データに基づいて、接触ＣＧモデル１０３と提示デバイス１０４の全ての組み合わせを求める。なお、組み合わせ算出部２０７は、後段の対応付け判断部２０８での対応付けの判断の対象になり得るような、互いに或る程度近接した位置に存在している全ての接触ＣＧモデル１０３と提示デバイス１０４について、組み合わせを求めるようにしてもよい。ステップＳ５０３の後、情報処理装置１０１の処理は、対応付け判断部２０８で行われるステップＳ５０４へ進む。
【００５０】
ステップＳ５０４では、対応付け判断部２０８は、組み合わせ算出部２０７で求められた全ての組み合わせにおいて、前述した第１，第２の対応付け条件に基づいて、接触ＣＧモデル１０３と提示デバイス１０４とを対応付けるか否かを判断する。そして、対応付け判断部２０８は、前述した第１，第２の対応付け条件に基づいて対応付けると判断した接触ＣＧモデル１０３と提示デバイス１０４とをそれぞれ対応付ける。このステップＳ５０４の処理が終わると、情報処理装置１０１は、図５のフローチャートの処理を終了する。
【００５１】
次に、図６を用いて、対応付け判断部２０８が図５のステップＳ５０４で行う、接触ＣＧモデル１０３と提示デバイス１０４の具体的な対応付け処理について説明する。図６のフローチャートは、対応付け判断部２０８が、第１，第２の対応付け条件に基づいて行う接触ＣＧモデル１０３と提示デバイス１０４の対応付け判断処理と、前述の解除条件に基づいて行う対応付け解除処理を含んでいる。
【００５２】
図６において、対応付け判断部２０８は、先ずステップＳ６０１の処理として、頭部位置姿勢から求められる視線方向（ＨＭＤ２００のビデオカメラの位置姿勢から求められる撮影方向）に、接触ＣＧモデル１０３が存在しているか否かを判断する。具体的には、対応付け判断部２０８は、視線方向に接触ＣＧモデル１０３が存在するか否かを判定するために、例えば視野を表す円錐を設定し、その円錐の領域内に接触ＣＧモデル１０３の位置が含まれるか否かを判定する。またこのとき、その円錐の中心線は視線方向のベクトルと同一であり、円錐の頂点はＭＲ体験者の視点に合わせるものとする。なお、視野を表す円錐の領域とは、実際にはＨＭＤ２００のビデオカメラの撮影画角における一定範囲内の領域に相当し、対応付け判断部２０８は、その撮影画角の一定範囲内の領域の中に接触ＣＧモデル１０３の位置が含まれているか否かを判定する。また、円錐の中心線と視線方向のベクトルは、実際には、ＨＭＤ２００のビデオカメラの光学系が有する光軸に相当し、円錐の頂点は、実際には、ビデオカメラの撮像面と光軸が交わる点に相当する。対応付け判断部２０８は、ステップＳ６０１において、視線方向に接触ＣＧモデル１０３が存在していると判断した場合には、処理をステップＳ６０２へ進める。一方、対応付け判断部２０８は、ステップＳ６０１において、視線方向に接触ＣＧモデル１０３が存在していないと判断した場合には、処理をステップＳ６１０へ進める。
【００５３】
ステップＳ６１０では、対応付け判断部２０８は、ＨＭＤ２００のビデオカメラで撮像している動画像の現フレームの撮影時刻において、前述した第１，第２の対応付け条件を満たしているか否かを示す判定フラグにＦａｌｓｅ（偽）をセットする。そして、対応付け判断部２０８は、この判定フラグと現フレームの撮影時刻とを対応付けて内部のＲＡＭ等に保持する。このステップＳ６１０の後、対応付け判断部２０８は、処理をステップＳ６０１へ戻す。
【００５４】
ステップＳ６０２では、対応付け判断部２０８は、ＭＲ体験者の頭部位置と接触ＣＧモデル１０３との間の距離が前述の第２の距離に相当する閾値以内であるかを判定する。すなわち、対応付け判断部２０８は、頭部位置姿勢センサ２０１から接触ＣＧモデル１０３との間の最短距離が、第２の対応付け条件の第２の距離に相当する閾値（１ｍ）以内であるか否かを判定する。対応付け判断部２０８は、ステップ６０２において、頭部位置と接触ＣＧモデル１０３との間の距離が閾値以内であると判定した場合には、処理をステップＳ６０３へ進める。一方、対応付け判断部２０８は、ステップＳ６０２において、頭部位置と接触ＣＧモデル１０３との間の距離が閾値より大きいと判定した場合には、処理を後述するステップＳ６１１へ進める。
【００５５】
ステップＳ６０３では、対応付け判断部２０８は、接触ＣＧモデル１０３と提示デバイス１０４の相対位置を算出する。具体的には、対応付け判断部２０８は、組み合わせ算出部２０７から供給される接触ＣＧモデル１０３の位置データと提示デバイス１０４の位置データから、それら接触ＣＧモデル１０３と提示デバイス１０４の相対位置を算出する。そして、対応付け判断部２０８は、それら相対位置と現フレームの撮影時刻とを対応付けて内部のＲＡＭ等に保持する。ステップＳ６０３の後、対応付け判断部２０８は、処理をステップＳ６０４へ進める。
【００５６】
ステップＳ６０４では、対応付け判断部２０８は、現フレームとその前の数フレームの撮影時刻に対応付けられて保持している接触ＣＧモデル１０３と提示デバイス１０４の相対位置から、それらの相対位置の変化量、つまり相対距離を算出する。そして、対応付け判断部２０８は、その変化量（相対距離）に基づいて、接触ＣＧモデル１０３と提示デバイス１０４が同期している状態であるか否か判定する。なお、接触ＣＧモデル１０３と提示デバイス１０４が同期している状態とは、例えば接触ＣＧモデル１０３と提示デバイス１０４の位置が複合現実空間内で変化しているような場合に、それら位置変化が例えばＭＲ体験者が移動等に伴うものである場合等に相当する。このように、複合現実空間内での接触ＣＧモデル１０３と提示デバイス１０４の位置変化が、ＭＲ体験者の移動等に伴うものである場合には、それら接触ＣＧモデル１０３と提示デバイス１０４の対応付けを維持する方が望ましいと考えられる。対応付け判断部２０８は、例えば現フレームを含む前５フレームにおいて、接触ＣＧモデル１０３と提示デバイス１０４の相対位置変化に相当する相対距離が５ｃｍ以内であれば、接触ＣＧモデル１０３と提示デバイス１０４が同期している状態である判定する。一方、対応付け判断部２０８は、それら５フレームにおいて相対距離が５ｃｍを超えていれば、接触ＣＧモデル１０３と提示デバイス１０４が同期していないと判定する。この場合の現フレームを含む前５フレームとは、すなわち前述した第１，第２の二つの対応付け条件が満たされた状態の継続を判定する際の時間条件として設定されている一定時間の１秒間に相当する。また、この場合の相対距離である５ｃｍは、前述した第１の対応付け条件における第１の距離と、前述した解除条件における第３の距離とに相当する。対応付け判断部２０８は、ステップＳ６０４において、同期していると判定した場合には処理をステップＳ６０５へ進め、一方、同期していないと判定した場合には処理をステップＳ６１１へ進める。
【００５７】
なお、接触ＣＧモデル１０３と提示デバイス１０４の同期判定法は、相対位置の変化量つまり相対距離のような相対関係を用いた判定に限定されるものではない。例えば、それら接触ＣＧモデル１０３と提示デバイス１０４の同期状態を判定できるのであれば他の方法でもよい。同期状態を判定する他の方法の一例として、対応付け判断部２０８は、接触ＣＧモデル１０３と提示デバイス１０４の両移動ベクトルに基づく相対関係から、同期判定を行ってもよい。この場合、対応付け判断部２０８は、先ず、現フレームとその前の数フレームにおける接触ＣＧモデル１０３と提示デバイス１０４の位置の変化から両方の移動ベクトルを算出する。次に、対応付け判断部２０８は、それら接触ＣＧモデル１０３と提示デバイス１０４の両移動ベクトル同士が成す角度が、所定角度以内（例えば２０度以内）であるか否かを判定する。そして、対応付け判断部２０８は、それら両移動ベクトル同士が成す角度が所定角度以内である場合には、接触ＣＧモデル１０３と提示デバイス１０４は同期していると判定する。
【００５８】
ステップＳ６１１では、対応付け判断部２０８は、接触ＣＧモデル１０３と提示デバイス１０４が既に対応付けられていた場合には、その対応付けを解除する。このステップＳ６１１の後、対応付け判断部２０８は、処理をステップＳ６１０へ進める。
【００５９】
ステップＳ６０５では、対応付け判断部２０８は、現フレームの撮影時刻である時間ｔ＿ｎｏｗを保持する。このステップＳ６０５の後、対応付け判断部２０８は、処理をステップＳ６０６へ進める。
【００６０】
ステップＳ６０６では、対応付け判断部２０８は、前フレームの撮影時刻に対応した判定フラグを参照し、判定フラグがＴｒｕｅ（真）ならば処理をステップＳ６０７へ進め、Ｆａｌｓｅ（偽）ならば処理をステップＳ６１２に進める。
【００６１】
ステップＳ６０７では、対応付け判断部２０８は、現フレームの撮影時刻に対応した判定フラグにＴｒｕｅ（真）をセットする。ステップＳ６０７の後、対応付け判断部２０８は、処理をステップＳ６０８へ進める。
【００６２】
ステップＳ６１２では、対応付け判断部２０８は、対応付けが始まった時間ｔ＿ｓｔａｒｔに、現フレームの撮影時刻である時間ｔ＿ｎｏｗをセットする。そして、対応付け判断部２０８は、対応付けが始まった時間ｔ＿ｓｔａｒｔの情報を保持しておく。ステップＳ６１２の後、対応付け判断部２０８は、処理をステップＳ６０７へ進める。
【００６３】
ステップＳ６０８では、対応付け判断部２０８は、（現フレームの時間−対応付けが始まった時間＝ｔ＿ｎｏｗ−ｔ＿ｓｔａｒｔ）を計算し、（ｔ＿ｎｏｗ−ｔ＿ｓｔａｒｔ）の時間が所定の閾値以上か判定する。すなわち、ステップＳ６０８では、対応付け判断部２０８は、前述した第１，第２の対応付け条件が満たされた状態の継続を判定する一定時間に相当する閾値である１秒間という時間条件を満たしているか否かを判定している。言い換えると、ステップＳ６０８において、対応付け判断部２０８は、前述の一定時間の１秒間に相当する一定フレーム数以上、第１，第２の対応付け条件が満たされた状態が継続したかどうかを判定している。そして、対応付け判断部２０８は、ステップＳ６０８において、（ｔ＿ｎｏｗ−ｔ＿ｓｔａｒｔ）の時間が閾値の１秒以上であると判定した場合には、処理をステップＳ６０９へ進める。一方、対応付け判断部２０８は、ステップＳ６０８において、（ｔ＿ｎｏｗ−ｔ＿ｓｔａｒｔ）の値が閾値の１秒未満であると判定した場合には、処理をステップＳ６０１へ戻す。
【００６４】
ステップＳ６０９では、対応付け判断部２０８は、接触ＣＧモデル１０３と提示デバイス１０４を対応付ける。このステップＳ６０９の後、対応付け判断部２０８は、処理をステップＳ６０１へ戻す。
【００６５】
対応付け判断部２０８は、この図６に示したフローの処理を、組み合わせ算出部２０７で求められた接触ＣＧモデル１０３と提示デバイス１０４の全ての組み合わせについて実行する。なお、一つの接触ＣＧモデル１０３に複数の提示デバイス１０４の対応付けられた場合には、対応付け判断部２０８は、それらの中で接触ＣＧモデル１０３からの距離が最も近い提示デバイス１０４についてのみ対応付けを行うようにする。同様に、一つの提示デバイス１０４に複数の接触ＣＧモデル１０３の対応付けられた場合には、対応付け判断部２０８は、提示デバイス１０４からの距離が最も近い接触ＣＧモデル１０３についてのみ対応付けを行うようにする。
【００６６】
本実施形態の情報処理装置１０１においては、以上のようにして、接触ＣＧモデル１０３と提示デバイス１０４と頭部位置との相対関係に基づいて、接触ＣＧモデル１０３と提示デバイス１０４の対応付けを行っている。すなわち、本実施形態の情報処理装置１０１によれば、例えば事前に対応付けの設定等を行う必要がなく、接触ＣＧモデル１０３と提示デバイス１０４の対応付けを自動的に行うことができる。したがって、本実施形態の情報処理装置１０１によれば、例えばＭＲ体験者のＭＲ体験を一時的に停止させずに、接触ＣＧモデル１０３と提示デバイス１０４との対応付けを変更することもできる。また、本実施形態の情報処理装置１０１によれば、接触ＣＧモデル１０３と提示デバイス１０４の対応付けを自動的に解除することも可能となっている。そして、本実施形態の情報処理装置１０１においては、複合現実空間内において、被接触ＣＧモデル１０２と接触ＣＧモデル１０３が接触した場合、その接触を、接触ＣＧモデル１０３に対応付けられた提示デバイス１０４に通知することができる。
【００６７】
次に、図７は、本実施形態の情報処理装置１０１に適用可能なコンピュータのハードウェア構成例を示す図である。図７において、ＣＰＵ７０１は、ＲＡＭ７０２やＲＯＭ７０３に格納されているプログラム（コンピュータプログラム）やデータを用いてコンピュータ全体の制御を行うと共に、情報処理装置１０１が行うものとして説明した前述の各処理を実行する。
【００６８】
ＲＡＭ７０２は、外部記憶装置７０６からロードされたプログラムやデータ、Ｉ／Ｆ（インターフェース）７０７を介して供給されたデータを一時的に記憶するための記憶エリアを有する。また、ＲＡＭ７０２は、ＣＰＵ７０１が各種の処理を実行する際に用いるワークエリアも備える。すなわち、ＲＡＭ７０２は、各種の記憶エリアを適宜提供することができる。
【００６９】
Ｉ／Ｆ７０７は、頭部位置姿勢センサ２０１と接触ＣＧモデル位置センサ２０２と提示デバイス位置センサ２０３とを、コンピュータに接続するためのインターフェースとして機能するものである。ＨＭＤ２００のビデオカメラの位置姿勢データや接触ＣＧモデル位置センサ２０２からの位置データ、提示デバイス位置センサ２０３からの位置データは、このＩ／Ｆ７０７を介して、ＲＡＭ７０２や外部記憶装置７０６に送出される。
【００７０】
ＲＯＭ７０３は、ブートプログラムやコンピュータの設定データなどを格納している。操作部７０４は、キーボードやマウスなどにより構成されている。この図７のコンピュータの操作者は、操作部７０４を用いて各種の指示をＣＰＵ７０１に対して入力することができる。
【００７１】
表示部７０５は例えばＣＲＴや液晶ディスプレイ等により構成されている。表示部７０５は、ＣＰＵ７０１による処理結果を画像や文字などでもって表示することができる。バス７０８は、これら各部を繋ぐバスである。
【００７２】
以上のようなことから、図７のコンピュータは、複数の提示デバイス１０４と複数の接触ＣＧモデル１０３をそれぞれ自動的に対応付けることができる。また、図７のコンピュータは、接触ＣＧモデル１０３の接触結果を、対応付けられた提示デバイス１０４に通知することができる。また、図７のコンピュータは、ＭＲ体験者のＭＲ体験を一時的に停止させることなく、接触ＣＧモデル１０３と提示デバイス１０４との対応付けを変更することができる。
【００７３】
［第２の実施形態］
第１の実施形態の情報処理装置１０１は、接触ＣＧモデル１０３と提示デバイス１０４との対応付けを行うかどうかの判定を、例えば前述の１５Ｈｚのような位置計測の周期毎に行っていた。これに対し、第２の実施形態の情報処理装置１０１は、接触ＣＧモデル１０３と提示デバイス１０４の対応付けの判定を、例えば被接触ＣＧモデル１０２と接触ＣＧモデル１０３が略々接触したと判定された直後に行う。
【００７４】
すなわち、第２の実施形態の情報処理装置１０１は、被接触ＣＧモデル１０２と接触ＣＧモデル１０３が略々接触したと判定された直後に、第１の実施形態の図５のフローチャートの処理を実行することにより、対応付けの判定を行う。
【００７５】
第２の実施形態の場合、対応付け判断部２０８は、現フレームの前フレームの撮影時刻において接触判定部２０９で行われた接触判定結果を参照し、接触判定部２０９にて接触が発生したと判定されている場合にのみ、対応付けの判断処理を実行する。また、この場合の対応付け判断部２０８は、接触判定部２０９において接触したと判定された接触ＣＧモデル１０３について、対応付けの判断処理を行う。本実施形態の場合、その他の処理は、第１の実施形態と同様であるためそれらの説明は省略する。
【００７６】
なお、第２の実施形態において、接触判定部２０９は、被接触ＣＧモデル１０２と接触ＣＧモデル１０３の間の距離が予め設定した閾値以内になった場合に、被接触ＣＧモデル１０２と接触ＣＧモデル１０３が略々接触したと判定することも可能である。この場合、対応付け判断部２０８は、現フレームの前フレームで接触判定部２０９により行われた接触判定結果が、予め設定した閾値以内であるとの判定結果であった場合に、対応付けの判定処理を実行する。
【００７７】
［第３の実施形態］
第１の実施形態では、位置に基づく相対関係により対応付けやその解除の判定を行っているが、第３の実施形態では、例えば接触ＣＧモデル１０３と提示デバイス１０４の姿勢に基づく相対関係により、対応付けやその解除の判定を行う例について説明する。すなわち、第３の実施形態では、接触ＣＧモデル１０３と提示デバイス１０４の姿勢変化により対応付けやその解除の判定を行う。
【００７８】
第３の実施形態の場合は、図２の接触ＣＧモデル位置センサ２０２に代えて接触ＣＧモデル位置姿勢センサが配され、図２の提示デバイス位置センサ２０３に代えて提示デバイス姿勢センサが配される。接触ＣＧモデル位置姿勢センサや提示デバイス姿勢センサは、専用の姿勢センサを用意してもよいが、前述した磁気センサのように位置変化だけでなく姿勢の変化も検出可能な位置姿勢センサを用いて、姿勢成分のみを抽出するようにしてもよい。前述の図２の接触ＣＧモデル位置センサ２０２と提示デバイス位置センサ２０３に磁気センサが用いられている場合、それら接触ＣＧモデル位置センサ２０２と提示デバイス位置センサ２０３をそれぞれ姿勢センサとして機能させてもよい。第３の実施形態の情報処理装置１０１の場合、接触ＣＧモデル位置記憶部２０５は接触ＣＧモデル１０３の姿勢データを記憶し、提示デバイス位置記録部２０６は提示デバイス１０４の姿勢データを記憶する。
【００７９】
また、第３の実施形態の場合の対応付け判断部２０８は、図６のステップＳ６０３において相対距離の算出に代えて相対姿勢の算出を行い、また、ステップＳ６０４において同期の判断基準として相対距離に代えて相対姿勢の変化を用いる。すなわち、ステップＳ６０４では、例えば相対姿勢の変化が、予め設定された所定の姿勢変化内であるか否かを判断する。対応付け判断部２０８は、相対姿勢の変化が、予め設定された所定の姿勢変化内である場合に、同期していると判断する。一例として、例えば接触ＣＧモデル１０３として工具のレンチをＭＲ体験者が手に持ち、レンチによりボルト（被接触ＣＧモデル１０２）を回すような作業のシミュレーションが行われる場合を考えてみる。この場合、ＭＲ体験者がレンチの持ち手部分を手にもって作業を行っているときには、レンチの接触ＣＧモデル１０３と提示デバイス１０４との間の相対姿勢は略々変化しないと考えられる。したがって、レンチの持ち手部分が手に持たれている場合のように、相対姿勢の変化が予め設定された所定の姿勢変化内である場合には、同期していると判断できる。これに対し、例えばレンチの接触ＣＧモデル１０３と提示デバイス１０４との間の相対距離が近くても、レンチを手から離しているような場合には、それらの相対姿勢は大きく変化する可能性がある。したがって、それらの相対姿勢の変化が、予め設定された所定の姿勢変化内から外れる変化である場合には、同期していないと判断できる。
【００８０】
また、第３の実施形態においても第１の実施形態で説明したのと同様に、例えば一つの接触ＣＧモデル１０３に対して複数の提示デバイス１０４の対応付けられた場合には、距離が最も近い提示デバイス１０４を対応付けるようにする。同様に、一つの提示デバイス１０４に対して複数の接触ＣＧモデル１０３が対応付けられた場合には、提示デバイス１０４に距離が最も近い接触ＣＧモデル１０３を対応付ける。その他の処理は、第１の実施形態の場合と略々同様であるためそれらの説明は省略する。
【００８１】
［第４の実施形態］
第１の実施形態では提示デバイス１０４として振動デバイスを用いた例を挙げたが、第４の実施形態では、提示デバイスとして音響デバイスを用いる例について説明する。音響デバイスは、一例としてヘッドホンを挙げることができる。
【００８２】
第４の実施形態では、提示デバイスである音響デバイスの一例としてのヘッドホンを、ＭＲ体験者の頭部に装着した状態で、接触ＣＧモデル１０３と提示デバイスとの対応付けを行う。第４の実施形態の情報処理装置１０１の構成は、基本的には第１の実施形態と同様であるが、対応付け判断部２０８とデータ送信部２１３の処理が第１の実施形態の場合とは異なる。また、第４の実施形態の場合、対応付け条件と解除条件についても、第１の実施形態で説明した条件と一部が異なる。以下、それら異なる部分についてのみ説明する。
【００８３】
第４の実施形態の場合、図６のステップＳ６０４において対応付け判断部２０８が相対距離を判定する際の第１の距離が２ｍに設定される。第１の距離が２ｍに設定されるのは、提示デバイスであるヘッドホンがＭＲ体験者の頭部に装着されるためである。すなわち、前述の図３の例のように、提示デバイス１０４がＭＲ体験者の手首に装着される場合には、提示デバイス１０４と接触ＣＧモデル１０３との間の距離は近く、またそれらの相対距離の変化も少ないため、第１の距離は前述の５ｃｍ程度でよい。これに対し、第４の実施形態の場合、提示デバイスであるヘッドホンはＭＲ体験者の頭部に装着され、一方、接触ＣＧモデル１０３はＭＲ体験者が手に持つことになる。そして、ＭＲ体験者が手に持つ接触ＣＧモデル１０３は、ＭＲ体験者が手（腕）を動かす度にその位置が大きく変化し、一方で、ＭＲ体験者の頭部に装着されたヘッドホンの位置はさほど変化しないと考えられる。つまり、第４の実施形態の場合、提示デバイス１０４のヘッドホンと接触ＣＧモデル１０３との間の相対距離（相対位置の変化）は、第１の実施形態の場合に比べて非常に大きくなる。このため、第４の実施形態では、例えばヘッドホンと接触ＣＧモデルの対応付けがなされた後に、ＭＲ体験者が手を動かして接触ＣＧモデル１０３の位置が変化しても、対応付けの誤解除が発生しないように、相対距離の判定に用いる第１の距離を２ｍに設定している。
【００８４】
また、第４の実施形態の場合、データ送信部２１３は、接触ＣＧモデル１０３と被接触ＣＧモデル１０２が接触したことをＭＲ体験者に知覚させるための通知信号として、音声信号を送信する。音声信号としては、ブザー等の通知音や例えば「接触しました」等の音声の信号を挙げることができる。
【００８５】
これにより、第４の実施形態の場合の前述の各実施形態の場合と同様に、提示デバイスである複数のヘッドホンと複数の接触ＣＧモデルとを対応付けることができ、音によりＭＲ体験者に接触を知覚させることができる。
【００８６】
［第５の実施形態］
第５の実施形態では、例えばＨＭＤ２００に設けられているディスプレイを、提示デバイスとして用いる例を説明する。第５の実施形態では、接触ＣＧモデル１０３と被接触ＣＧモデル１０２が接触した場合、ＭＲ体験者が装着しているビデオシースルー型のＨＭＤ２００のディスプレイ画面上に、接触したことを表す画像や文字等を表示する。
【００８７】
第５の実施形態の場合、情報処理装置１０１のデータ送信部２１３からは、接触したことをＭＲ体験者に知覚させるための通知信号として画像や文字等の画像信号が出力され、この画像信号の出力先である提示デバイス１０４がＨＭＤ２００の表示装置となる。画像信号としては、例えばＨＭＤ２００の表示装置の画面上に表示されるシースルー画像の中央に「接触しました」という文字を表示する信号や、接触を表すものとして予め決めておいた記号やマーク等を表す信号となされる。
【００８８】
また、第５の実施形態の場合、図６のステップＳ６０４において対応付け判断部２０８が相対距離を判定する際の第１の距離は、前述の第４の実施形態の場合と同様の理由により、例えば２ｍに設定される。その他の構成については前述同様であるためそれらの説明は省略する。
【００８９】
［その他の実施形態］
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【００９０】
上述の実施形態は、何れも本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。即ち、本発明は、その技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。
【符号の説明】
【００９１】
１０１  情報処理装置、１０２  被接触ＣＧモデル、１０３  接触ＣＧモデル、１０４  提示デバイス、２０１  頭部位置姿勢センサ、２０２  接触ＣＧモデル位置センサ、２０３  提示デバイス位置センサ、２０４  頭部位置姿勢記録部、２０５  接触ＣＧモデル位置記憶部、２０６  提示デバイス位置記録部、２０７  組み合わせ算出部、２０８  対応付け判断部、２０９  接触判定部、２１０  接触ＣＧモデル形状記録部、２１１  被接触ＣＧモデル形状記録部、２１２  被接触ＣＧモデル位置記憶部、２１３  データ送信部、７０１  ＣＰＵ、７０２  ＲＡＭ、７０３  ＲＯＭ、７０４  操作部、７０５  表示部、７０６  外部記憶装置、７０７  インターフェース、７０８  バス
【図１】
2016218916.tif 000003
【図２】
2016218916.tif 000004
【図３】
2016218916.tif 000005
【図４】
2016218916.tif 000006
【図５】
2016218916.tif 000007
【図６】
2016218916.tif 000008
【図７】
2016218916.tif 000009