(57)【要約】【課題】仮想物体と対象物体との干渉について、過度の干渉報知を抑え、且つ、仮想物体間の干渉を好適に報知できるようにする。【解決手段】三次元空間における仮想の第１の物体と第２の物体との位置関係を判断する判断手段と、判断手段による判断の結果に基づいて、第１の物体と第２の物体とが所定距離以内に近づいたことを報知する報知手段と、を備え、報知手段は、前回の報知から所定時間が経過するより前に再び第１の物体と第２の物体とが所定距離以内に近づいたときには報知を行わず、前回の報知から所定時間が経過した以降に再び第１の物体と第２の物体とが所定距離以内に近づいたときに報知を行うことを特徴とする。【選択図】図１
2017142785.tif 000002
【特許請求の範囲】
【請求項１】
仮想の第１の物体と、第２の物体と、が含まれる三次元空間を表示部に表示させる情報処理装置であって、
前記三次元空間における前記第１の物体と前記第２の物体との位置関係を判断する判断手段と、
前記判断手段による判断の結果に基づいて、前記第１の物体と前記第２の物体とが所定距離以内に近づいたことを報知する報知手段と、
を備え、
前記報知手段は、前回の報知から所定時間が経過するより前に再び前記第１の物体と前記第２の物体とが前記所定距離以内に近づいたときには報知を行わず、前回の報知から前記所定時間が経過した以降に再び前記第１の物体と前記第２の物体とが前記所定距離以内に近づいたときに、前記第１の物体と前記第２の物体とが前記所定距離以内に近づいたことの報知を行うことを特徴とする情報処理装置。
【請求項２】
前記判断手段は、前記第１の物体と前記第２の物体とが前記所定距離以内に近づいたか否かを判断し、
前記報知手段は、前回の報知から前記所定時間が経過するよりも前に、前記判断手段によって前記第１の物体と前記第２の物体とが再び前記所定距離以内に近づいたと判断されたときには、前記第１の物体と前記第２の物体とが前記所定距離以内に近づいたことの報知を行わず、前回の報知から前記所定時間が経過した以降に、前記判断手段によって前記第１の物体と前記第２の物体とが再び前記所定距離以内に近づいたと判断されたときには、前記第１の物体と前記第２の物体とが前記所定距離以内に近づいたことの報知を行うことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記判断手段は、前記第１の物体と前記第２の物体とが前記所定距離以内に近づいた後、前記所定時間が経過するよりも前に再び前記第１の物体と前記第２の物体とが前記所定距離以内に近づいたときには、前記第１の物体と前記第２の物体とが前記所定距離以内に近づいたと判断せず、前記第１の物体と前記第２の物体とが前記所定距離以内に近づいた後、前記所定時間が経過した以降に再び前記第１の物体と前記第２の物体とが前記所定距離以内に近づいたときには、前記第１の物体と前記第２の物体とが前記所定距離以内に近づいたと判断することを特徴とする請求項２に記載の情報処理装置。
【請求項４】
前記表示部における前記第１の物体の面積比を算出する算出手段を更に有し、
前記報知手段は、前回の報知から前記所定時間が経過するより前で、且つ、前記算出手段により算出された前記面積比が所定の値よりも小さいときには、報知を行うことを特徴とする請求項１乃至３の何れか１項に記載の情報処理装置。
【請求項５】
前記報知手段は、前記第１の物体の色を変更することにより、前記第１の物体と前記第２の物体とが前記所定距離以内に近づいたことの報知を行うことを特徴とする請求項１乃至４の何れか１項に記載の情報処理装置。
【請求項６】
前記第２の物体は仮想物体であることを特徴とする請求項１乃至５の何れか１項に記載の情報処理装置。
【請求項７】
前記第２の物体は現実物体であることを特徴とする請求項１乃至５の何れか１項に記載の情報処理装置。
【請求項８】
前記第２の物体はユーザの手であることを特徴とする請求項７に記載の情報処理装置。
【請求項９】
前記判断手段は、第１の推定方法または推定精度が前記第１の推定方法よりも低い第２の推定方法を用いて前記第１の物体と前記第２の物体との位置姿勢を推定することにより、前記第１の物体と前記第２の物体との位置関係を判断し、
前記報知手段は、前記判断手段により前記第１の推定方法が用いられた場合には、前回の報知からの経過時間によらず、前記第１の物体と前記第２の物体とが前記所定距離以内に近づいたことの報知を行うことを特徴とする請求項１乃至８の何れか１項に記載の情報処理装置。
【請求項１０】
仮想の第１の物体と、第２の物体と、が含まれる三次元空間を表示部に表示させる情報処理装置であって、
前記三次元空間における前記第１の物体と前記第２の物体との位置関係を判断する判断手段と、
前記判断手段による判断の結果に基づいて、前記第１の物体と前記第２の物体とが所定距離以内に近づいたことを報知する報知手段と、
を備え、
前記報知手段は、前回の報知から所定時間が経過するより前に再び前記第１の物体と前記第２の物体とが前記所定距離以内に近づいたときには、第１の報知方法により前記第１の物体と前記第２の物体とが前記所定距離以内に近づいたことの報知を行い、前回の報知から前記所定時間が経過した以降に再び前記第１の物体と前記第２の物体とが前記所定距離以内に近づいたときには、第２の報知方法により前記第１の物体と前記第２の物体とが前記所定距離以内に近づいたことの報知を行うことを特徴とする情報処理装置。
【請求項１１】
前記報知手段は、前記第１の物体の色を変更することにより、前記第１の物体と前記第２の物体とが前記所定距離以内に近づいたことの報知を行うことを特徴とする請求項１０に記載の情報処理装置。
【請求項１２】
前記第１の報知方法は、前回の報知からの時間に応じた１００％よりも小さいアルファブレンド率により表される色で報知を行う方法であり、前記第２の報知方法は、１００％のアルファブレンド率により表される色で報知を行う方法であることを特徴とする請求項１０または１１に記載の情報処理装置。
【請求項１３】
前記第１の報知方法は、前記第１の物体のワイヤーフレームの色を変更することにより報知を行う方法であり、前記第２の報知方法は、前記第１の物体の全体の色を変更することにより報知を行う方法であることを特徴とする請求項１０に記載の情報処理装置。
【請求項１４】
仮想の第１の物体と、第２の物体と、が含まれる三次元空間を表示部に表示させる情報処理装置であって、
前記三次元空間における前記第１の物体と前記第２の物体との位置関係を判断する判断手段と、
前記判断手段による判断の結果に基づいて、前記第１の物体と前記第２の物体とが所定距離以内に近づいたことを報知する報知手段と、
を備え、
前記報知手段は、報知を開始してから所定時間が経過するより前に前記第１の物体と前記第２の物体とが前記所定距離より離れたときには前記報知を継続し、報知を開始してから前記所定時間が経過した以降に前記第１の物体と前記第２の物体とが前記所定距離より離れたときには前記報知を終了することを特徴とする情報処理装置。
【請求項１５】
仮想の第１の物体と、第２の物体と、が含まれる三次元空間を表示部に表示させる情報処理装置が実行する情報処理方法であって、
前記三次元空間における前記第１の物体と前記第２の物体との位置関係を判断する判断ステップと、
前記判断ステップでの判断の結果に基づいて、前記第１の物体と前記第２の物体とが所定距離以内に近づいたことを報知する報知ステップと、
を含み、
前記報知ステップでは、前回の報知から所定時間が経過するより前に再び前記第１の物体と前記第２の物体とが前記所定距離以内に近づいたときには報知を行わず、前回の報知から前記所定時間が経過した以降に再び前記第１の物体と前記第２の物体とが前記所定距離以内に近づいたときに、前記第１の物体と前記第２の物体とが前記所定距離以内に近づいたことの報知を行うことを特徴とする情報処理方法。
【請求項１６】
仮想の第１の物体と、第２の物体と、が含まれる三次元空間を表示部に表示させる情報処理装置が実行する情報処理方法であって、
前記三次元空間における前記第１の物体と前記第２の物体との位置関係を判断する判断ステップと、
前記判断ステップでの判断の結果に基づいて、前記第１の物体と前記第２の物体とが所定距離以内に近づいたことを報知する報知ステップと、
を含み、
前記報知ステップでは、前回の報知から所定時間が経過するより前に再び前記第１の物体と前記第２の物体とが前記所定距離以内に近づいたときには、第１の報知方法により前記第１の物体と前記第２の物体とが前記所定距離以内に近づいたことの報知を行い、前回の報知から前記所定時間が経過した以降に再び前記第１の物体と前記第２の物体とが前記所定距離以内に近づいたときには、第２の報知方法により前記第１の物体と前記第２の物体とが前記所定距離以内に近づいたことの報知を行うことを特徴とする情報処理方法。
【請求項１７】
仮想の第１の物体と、第２の物体と、が含まれる三次元空間を表示部に表示させる情報処理装置が実行する情報処理方法であって、
前記三次元空間における前記第１の物体と前記第２の物体との位置関係を判断する判断ステップと、
前記判断ステップでの判断の結果に基づいて、前記第１の物体と前記第２の物体とが所定距離以内に近づいたことを報知する報知ステップと、
を含み、
前記報知ステップでは、報知を開始してから所定時間が経過するより前に前記第１の物体と前記第２の物体とが前記所定距離より離れたときには前記報知を継続し、報知を開始してから前記所定時間が経過した以降に前記第１の物体と前記第２の物体とが前記所定距離より離れたときには前記報知を終了することを特徴とする情報処理方法。
【請求項１８】
仮想の第１の物体と、第２の物体と、が含まれる三次元空間を表示部に表示させるコンピュータに、
前記三次元空間における前記第１の物体と前記第２の物体との位置関係を判断する判断ステップと、
前記判断ステップでの判断の結果に基づいて、前記第１の物体と前記第２の物体とが所定距離以内に近づいたことを報知する報知ステップと、
を実行させ、
前記報知ステップでは、前回の報知から所定時間が経過するより前に再び前記第１の物体と前記第２の物体とが前記所定距離以内に近づいたときには報知を行わず、前回の報知から前記所定時間が経過した以降に再び前記第１の物体と前記第２の物体とが前記所定距離以内に近づいたときに、前記第１の物体と前記第２の物体とが前記所定距離以内に近づいたことの報知を行うことを特徴とするプログラム。
【請求項１９】
仮想の第１の物体と、第２の物体と、が含まれる三次元空間を表示部に表示させるコンピュータに、
前記三次元空間における前記第１の物体と前記第２の物体との位置関係を判断する判断ステップと、
前記判断ステップでの判断の結果に基づいて、前記第１の物体と前記第２の物体とが所定距離以内に近づいたことを報知する報知ステップと、
を実行させ、
前記報知ステップでは、前回の報知から所定時間が経過するより前に再び前記第１の物体と前記第２の物体とが前記所定距離以内に近づいたときには、第１の報知方法により前記第１の物体と前記第２の物体とが前記所定距離以内に近づいたことの報知を行い、前回の報知から前記所定時間が経過した以降に再び前記第１の物体と前記第２の物体とが前記所定距離以内に近づいたときには、第２の報知方法により前記第１の物体と前記第２の物体とが前記所定距離以内に近づいたことの報知を行うことを特徴とするプログラム。
【請求項２０】
仮想の第１の物体と、第２の物体と、が含まれる三次元空間を表示部に表示させるコンピュータに、
前記三次元空間における前記第１の物体と前記第２の物体との位置関係を判断する判断ステップと、
前記判断ステップでの判断の結果に基づいて、前記第１の物体と前記第２の物体とが所定距離以内に近づいたことを報知する報知ステップと、
を実行させ、
前記報知ステップでは、報知を開始してから所定時間が経過するより前に前記第１の物体と前記第２の物体とが前記所定距離より離れたときには前記報知を継続し、報知を開始してから前記所定時間が経過した以降に前記第１の物体と前記第２の物体とが前記所定距離より離れたときには前記報知を終了することを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は情報処理装置、情報処理方法及びプログラムに関する。
【背景技術】
【０００２】
近年、設計・製造分野においてプロトタイプを用いた評価の期間短縮、費用削減が求められている。ＣＡＤ（コンピュータ支援設計）システムで作成した設計（形状・デザイン）データを用いて、組み立てやすさやメンテナンス性の仮想評価をするための複合現実感（ＭＲ：Ｍｉｘｅｄ  Ｒｅａｌｉｔｙ）システムが導入されている。
【０００３】
代表的な評価項目として、工具を目的の部品以外に干渉させずに作業ができるかを、現実の部品が存在しなくても仮想部品のみで評価するというものがある。
このような評価を行うための複合現実感システムでは、仮想物体同士が稼働し、互いに干渉した場合に、干渉部分を任意の色で報知する方法（例えば、特許文献１）が提案されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００６−３０２０３５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１の方法では、仮想物体同士の干渉判定がノイズや位置姿勢推定精度の低下によって不安定になった場合、報知方法によってはユーザに過度の報知を行ってしまうことが問題となる。これは、仮想物体同士の干渉判定結果（干渉と非干渉）が、短い時間間隔で複数回にわたり切り替わる場合に顕著である。特に、ヘッドマウントディスプレイ（以下、ＨＭＤ）のように、ユーザが近距離で映像を観察し、且つ、視界全体を覆うような表示デバイスでは考慮すべき課題となる。
本発明は前述の問題点に鑑み、仮想物体と対象物体との干渉について、過度の干渉報知を抑え、且つ、仮想物体間の干渉を好適に報知できるようにすることを目的とする。
【課題を解決するための手段】
【０００６】
本発明の情報処理装置は、仮想の第１の物体と、第２の物体と、が含まれる三次元空間を表示部に表示させる情報処理装置であって、前記三次元空間における前記第１の物体と前記第２の物体との位置関係を判断する判断手段と、前記判断手段による判断の結果に基づいて、前記第１の物体と前記第２の物体とが所定距離以内に近づいたことを報知する報知手段と、を備え、前記報知手段は、前回の報知から所定時間が経過するより前に再び前記第１の物体と前記第２の物体とが前記所定距離以内に近づいたときには報知を行わず、前回の報知から前記所定時間が経過した以降に再び前記第１の物体と前記第２の物体とが前記所定距離以内に近づいたときに、前記第１の物体と前記第２の物体とが前記所定距離以内に近づいたことの報知を行うことを特徴とする。
【発明の効果】
【０００７】
本発明によれば、仮想物体と対象物体との干渉について、過度の干渉報知を抑え、且つ、仮想物体間の干渉を好適に報知できるようにすることができる。
【図面の簡単な説明】
【０００８】
【図１】第１の実施形態における情報処理装置の機能構成を示すブロック図である。
【図２】第１の実施形態における情報処理装置のハードウェア構成の例を示す図である。
【図３】第１の実施形態における仮想空間の画像の例を示した模式図である。
【図４】第１の実施形態の情報処理装置の処理の詳細を示すフローチャートである。
【図５】第１の実施形態の干渉報知判定処理の詳細を示すフローチャートである。
【図６】第２の実施形態の干渉報知判定処理の詳細を示すフローチャートである。
【図７】第２の実施形態における情報処理装置の表示部に表示される合成画像の一例を示す図である。
【図８】第３の実施形態における仮想空間の画像の例を示した模式図である。
【図９】第３の実施形態の干渉報知判定処理の詳細を示すフローチャートである。
【図１０】第４の実施形態の干渉報知判定処理の詳細を示すフローチャートである。
【図１１】第４の実施形態の位置姿勢推定結果の経過時間に対する変移を模式的に示す特性図である。
【図１２】第５の実施形態の干渉報知判定処理の詳細を示すフローチャートである。
【図１３】第５の実施形態における仮想空間の画像の例を示した模式図である。
【図１４】第６の実施形態の干渉報知判定処理の詳細を示すフローチャートである。
【図１５】第６の実施形態における仮想空間の画像の例を示した模式図である。
【発明を実施するための形態】
【０００９】
［第１の実施形態］
以下、添付図面を参照して、本発明を適用した好適な実施形態に従って詳細に説明する。
図１は、本実施形態における情報処理装置１００の情報処理装置の機能構成を示すブロック図であり、図２は、本実施形態を実現するための情報処理装置のハードウェア構成の例を示す図である。
【００１０】
図２において、ＣＰＵ２１０は、バス２００を介して接続する各デバイスを統括的に制御する。ＣＰＵ２１０は、読み出し専用メモリ（ＲＯＭ）２２０に記憶された処理ステップやプログラムを読み出して実行する。オペレーティングシステム（ＯＳ）をはじめ、本実施形態に係る各処理プログラム、デバイスドライバ等はＲＯＭ２２０に記憶されており、ランダムアクセスメモリ（ＲＡＭ）２３０に一時記憶され、ＣＰＵ２１０によって適宜実行される。また、入力Ｉ／Ｆ２４０は、外部の装置（撮像装置や操作装置など）から情報処理装置１００で処理可能な形式で入力信号として入力する。また、出力Ｉ／Ｆ２５０は、外部の装置（例えば、ＨＭＤなどの表示装置）へ処理可能な形式で出力信号として出力する。
【００１１】
図１に示すように、本実施形態における情報処理装置１００は、ＨＭＤ１０２に接続されている。情報処理装置１００は、ＨＭＤ１０２内の撮像部１０７から取り込んだ現実空間の画像と仮想空間の画像とを合成し、複合現実感映像としてＨＭＤ１０２内の表示部１１０に出力する。
【００１２】
撮像部１０７は、現実空間を撮影し、撮像した画像を情報処理装置１００に取り込む。撮像部１０７で撮影された画像は、合成部１０９にて仮想物体の画像と合成して表示部１１０に合成画像として表示する。本実施形態では、撮像部１０７は、ＨＭＤ１０２に内蔵されているものとする。撮像部１０７は、２つの撮像センサを備え、右目用と左目用の二つの撮像した画像を情報処理装置１００に取り込む。
【００１３】
表示部１１０は、合成部１０９で描画した合成画像を体験者に提示する。本実施形態では、ＨＭＤ１０２に内蔵されたディスプレイを用いる。表示部１１０もまた、２つのディスプレイを備え、右目用と左目用の二つの合成画像を提示する。
振動提示部１１３は、干渉通知部１１２から干渉しているという出力を受けて、体験者の触覚に干渉したことを知らせる振動を提示する。本実施形態では、振動提示部１１３としては、偏心おもりを先端に取り付けたモーターを回転させるデバイスを用い、該デバイスを体験者の身体の一部に備えつけておく。しかしながら、本発明はこれに限られるものではなく、例えば、指先に設置した電極に微弱な電流を流すなど、触覚を刺激する方法であれば適用可能である。
【００１４】
音提示部１１５は、干渉通知部１１２から干渉しているという出力を受けて、体験者の聴覚に干渉したことを知らせる音を提示する。本実施形態では、情報処理装置１００とは別体のスピーカを用いるものとする。例えば、ＨＭＤ１０２にヘッドホンを内蔵させて、該ヘッドホンを用いて音を提示してもよい。また、据え置き型のスピーカを利用してもよい。また、情報処理装置１００にスピーカを内蔵してもよい。音の種類は、体験者の聴覚を刺激できるものであればどのような音でもよい。たとえば、所定の波長のビープ音でもよい。
【００１５】
情報処理装置１００は、仮想物体データベース１０１、干渉判定部１０３、仮想物体描画部１０４、位置姿勢取得部１０８、合成部１０９、干渉報知判定部１０６、干渉通知部１１２、を備える。
これらの各機能部は、ＣＰＵ２１０が、ＲＯＭ２２０に格納されたプログラムをＲＡＭ２３０に展開し、後述する各フローチャートに従った処理を実行することで実現されている。また例えば、ＣＰＵ２１０を用いたソフトウェア処理の代替としてハードウェアを構成する場合には、ここで説明する各機能部の処理に対応させた演算部や回路を構成すればよい。
【００１６】
仮想物体データベース１０１は、仮想物体のモデルを保持するデータベースである。仮想物体のモデルは、例えば形状、表示色、干渉報知時の報知色、初期位置姿勢を含んでいる。ここで、表示色と報知色とは、後述する仮想物体描画部１０４で仮想空間の画像を描画するために用いる色情報のことで、本実施形態では、仮想物体が干渉していないとき表示色が、干渉しているとき報知色が用いられる。
【００１７】
なお、本実施形態において、仮想物体は、予め仮想物体データベース１０１に登録されたものを用いるが、それに限るものではない。例えば、撮像部１０７から得られる視差のある画像から、ステレオマッチングにより現実物の奥行きや形状を推定し、仮想物体として用いてもよい。その場合には、仮想物体の描画は、撮像した画像を用いたテクスチャマッピングによって、報知色は予め登録した色情報によって行われる。
【００１８】
本実施形態では、図３（ａ）に示すような円柱と直方体の２つの形状の仮想物体３０１、３０２を例に説明する。
位置姿勢取得部１０８は、撮像部１０７から取り込んだ画像（画像取得）に基づいて、現実空間の撮像部１０７の位置姿勢（即ち、ＨＭＤ１０２の位置姿勢）と仮想物体の位置姿勢を推定する。本実施形態では、撮像部１０７の位置姿勢をユーザの視点の位置姿勢とする。撮像部１０７の位置姿勢の算出は、現実空間に配置されたマーカーを撮像した画像に基づいて行われる（撮像部位置姿勢計測）。
【００１９】
また、仮想物体の位置姿勢は、例えば、仮想物体に対応する現実物を予め現実空間に配置する。そして、現実物にマーカーを貼りつけておき、該マーカーを撮像した画像に基づいて現実物の位置姿勢を推定し、該推定された現実物の位置姿勢を該現実物に対応する仮想物体の位置姿勢として推定する。そして、体験者が現実物を動かすことによって、仮想物体の位置姿勢を変更することができる。ただし、本実施形態では体験者の視点位置姿勢や仮想物体の位置姿勢を取得する方法はこれに限定されない。
【００２０】
例えば、現実物に三次元センサを貼りつけ、または内蔵させて用いてもよいし、市販のモーションキャプチャシステムを利用して撮像部１０７に対する仮想物体の位置姿勢を計測することも可能である。また、マーカーに変えて、撮像した画像から得られる画像特徴量を用いて仮想物体の位置姿勢を推定してもよい。また、仮想物体に対応する現実物を用意しなくても、予め設定された位置に仮想物を表示し、コントローラ等を用いて仮想物体を移動させてもよい。
【００２１】
干渉判定部１０３は、仮想物体の位置姿勢および形状に基づいて、複数の仮想物体同士の干渉の有無を判定する。２つの仮想物体同士の干渉判定は、以下の手順で実現する。
まず、それぞれの仮想物体から三角形ポリゴンを一つずつ取り出し、その三角形ポリゴン同士が交差しているかどうかを判定する。これを全ての三角形ポリゴンの組み合わせに対して行い、一つでも交差している場合は仮想物体同士が干渉していると判定する。さらに、この処理を全ての仮想物体の組み合わせに対して行う。ただし、本実施形態における干渉判定部１０３の実現方法はこれに限るものではない。また、本実施形態では、仮想物体同士が接触している位置関係にある状態を干渉として判断するようにしているが、仮想物体同士が所定距離以内に近づいた位置関係にある状態を干渉している状態と判断するようにしてもよい。
【００２２】
干渉報知判定部１０６は、干渉判定部１０３で干渉されていると判断された仮想物体から、交差している三角ポリゴンを含む仮想物体に対して、報知を行うか否かを判定して報知判定結果を出力する。詳細は後述する。
仮想物体描画部１０４は、仮想物体３０１、３０２を描画した画像を生成する。より具体的には、仮想物体データベースに保存されたモデルデータと干渉報知判定部１０６の報知判定結果に基づいて画像を生成する。
【００２３】
まず、仮想空間の画像を生成するための仮想視点の位置姿勢を位置姿勢取得部１０８から取得する。仮想視点の位置姿勢は、例えば、基準とする世界座標系における撮像部１０７の位置姿勢情報を入力すればよい。また、仮想物体３０１と３０２の３次元頂点位置は、位置姿勢取得部１０８で取得された位置姿勢に基づいて更新する。更新した仮想物体の３次元頂点は、仮想視点に基づいて設定された投影面に投影される。投影後のポリゴンの描画処理は、一般的な３次元画像生成における描画処理と同じであるため詳細な説明は省略する。
【００２４】
本実施形態における、仮想物体描画部１０４で生成された仮想空間の画像を図３（ｂ）に示している。
報知判定結果に基づき、前述した表示色または報知色で仮想物体３０１、３０２が描画され、仮想物体３０１は報知色３０３で、仮想物体３０２は報知色３０４で描画される。本実施形態では、仮想物体３０１と３０２が互いに干渉しており、干渉報知判定部１０６により報知すると判断された場合に、両仮想物体を報知色で描画しているが、それに限るものではない。例えば、一方には報知色を設定しないことで、他方にのみ干渉の報知を行うことも可能である。また、仮想物体毎に報知色を設けず、共通の報知色によって報知を行うこともでき、仮想物体毎に報知を行うか否かを設定できるようにしてもよい。
【００２５】
合成部１０９は、撮像部１０７から取り込んだ現実空間の画像と、仮想物体描画部１０４で描画された仮想空間の画像とを合成する。合成処理は、実写画像の上に仮想空間の画像を撮像部１０７の現実空間の画像の上に描画することにより実現される。すなわち、仮想物体３０１、３０２の領域以外の画素は、現実空間の画像の画素が表示される合成画像となる。
【００２６】
干渉通知部１１２は、干渉報知判定部１０６の報知判定結果に基づいて、現時点における干渉状態を他の通知手段に通知する。本実施形態では、仮想物体描画部１０４で仮想物体３０１、３０２を報知色で描画し、視覚的に表示することによって干渉しているか否かを明示的に体験者に提示している。しかし、視覚的な表示のみでは、干渉している場所が撮像部１０７の視野外である場合は、干渉していることを体験者が知覚できない。干渉しているか否かを聴覚と触覚で提示すると、視野外で起こった干渉を体験者が知覚することができる。
【００２７】
図３は、本実施形態における仮想空間の画像の例を示した模式図である。また、図４は、本実施形態の情報処理装置の処理の詳細を示すフローチャートである。
図３および図４を用いて、仮想物体３０１、３０２が配置されている状況を例に本実施形態の情報処理装置の処理の詳細を説明する。
【００２８】
Ｓ４０１では、仮想物体描画部１０４は、仮想物体データベース１０１から仮想物体３０１、３０２のデータを読み込む。
Ｓ４０２では、位置姿勢取得部１０８は、撮像部１０７で撮影された現実空間の画像を取得する。そして、位置姿勢取得部１０８は、取得した画像に基づいて撮像部１０７の位置姿勢情報を算出する。Ｓ４０２以降の処理は、撮像部１０７から現実空間の画像が更新されるまで処理が一時停止され、更新があった場合に後段の処理を実行する。ただし、本実施形態は、撮像部１０７の画像更新ごとに処理をすることに限定されるものではなく、例えば、位置姿勢取得部１０８で新たな位置姿勢が取得されたタイミングで処理を実行する方法でも適用可能である。
【００２９】
Ｓ４０３では、位置姿勢取得部１０８は、位置姿勢情報を干渉判定部１０３と仮想物体描画部１０４に送出する。
Ｓ４１０では、後述する干渉報知判定処理を行い、仮想物体３０１、３０２が干渉しているか否かの判定を行った上で、仮想物体を描画する際の色を設定する。
【００３０】
Ｓ４１１では、仮想物体描画部１０４が仮想物体を仮想空間の画像として描画する。本実施形態においては、仮想物体３０１、３０２は、三角形ポリゴンの情報と前述したＳ４１０で設定された色に基づいて描画される。
図３（ｂ）では、仮想物体３０１と仮想物体３０２が規制間隔よりも長い報知間隔で干渉したと判断されており、仮想物体３０１は報知色３０３で、仮想物体３０２は報知色３０４で描画されている。
【００３１】
Ｓ４１２では、合成部１０９は、撮像部１０７が撮像した現実空間の画像と、仮想空間の画像とを合成して合成画像を生成する。
Ｓ４１３では、まず表示部１１０は、合成部１０９で合成された合成画像を表示し、ＨＭＤ１０２を装着する体験者に提示する。さらに、振動提示部１１３と音提示部１１５は、干渉通知部１１２の情報に従って体験者に振動および音を提示する。
Ｓ４１５では、体験者から終了コマンドがキーボードなどの入力装置で送信されたかどうかを判定し、終了コマンドがなければＳ４０２に処理を移し、終了判定された場合は処理を終了する。
【００３２】
図５は、Ｓ４１０の干渉報知判定処理の詳細を示すフローチャートである。
Ｓ５０１では、干渉判定部１０３が、ＲＡＭ２３０に格納されている仮想物体３０１、３０２を参照し、仮想物体３０１、３０２を構成するポリゴンごとに交差しているかどうか判定する。
【００３３】
図３（ｂ）は、体験者が仮想物体３０２に対応するマーカーを移動させ、仮想物体３０１と仮想物体３０２が干渉した状況を示している。したがって、図３（ａ）の状態のときは、仮想物体が干渉していないためＳ５０７に処理を移し、図３（ｂ）の状態のときは、仮想物体が干渉しているためＳ５０２に処理を移す。
【００３４】
Ｓ５０２では、干渉報知判定部１０６が、報知候補時刻をＲＡＭ２３０に記憶する。本実施形態において、報知候補時刻はＳ５０１で干渉があると判定された時間、すなわち、そのときのシステムの時刻が記憶される。
Ｓ５０３では、干渉報知判定部１０６が、干渉の報知の状態が遷移したか否かを判定する。すなわち、仮想物体３０１と３０２が、干渉していない状態から干渉していると判断された場合には、Ｓ５０４に処理を移し、干渉した状態のままである場合には、処理を終了する。
【００３５】
Ｓ５０４では、干渉報知判定部１０６が、後述する報知時刻と前述の報知候補時刻との差分である報知間隔を求め、規制間隔よりも大きいか否かを判定する。本実施形態において、規制間隔は予め定めた時間間隔であり、１秒とする。ただし、規制間隔はこれに限るものではなく、干渉判定部１０３が干渉の判定を行う間隔よりも十分に長い時間であればよい。
【００３６】
報知間隔が規制間隔よりも大きい場合には、Ｓ５０５に処理を移し、小さい場合には、Ｓ５０７に処理を移す。また、本実施形態においては、規制間隔を予め定めた時間間隔としたが、例えば、干渉判定部１０３が一定時間内に干渉の状態が遷移した回数に応じて、動的に規制間隔を制御するなどしてもよい。その場合には、一定時間内に干渉の状態が遷移した回数が多いほど規制間隔を長く、回数が少ない場合には規制間隔を短くすることが望ましい。
【００３７】
Ｓ５０５では、干渉報知判定部１０６が、最後に干渉の報知を行った時刻である報知時刻をＲＡＭ２３０に記憶する。本実施形態において、報知時刻は、報知間隔が規制間隔よりも大きくなったときの報知候補時刻となる。
Ｓ５０６では、仮想物体描画部１０４が、仮想物体を描画する際に用いる色に、仮想物体データベースに保存されたモデルデータから報知色を設定する。
また、Ｓ５０７では、仮想物体描画部１０４が、仮想物体を描画する際に用いる色に、仮想物体データベースに保存されたモデルデータから表示色を設定する。
【００３８】
以上説明したように、本実施形態によれば、仮想物体３０１と３０２の干渉を報知する際、最後に報知してからの経過時間に応じて、すなわち、前回報知してからの経過時間に応じて、仮想物体の表示する色を変更するようにした。これによって、報知の度合を変更し体験者に過度の報知を行うことを防ぐことができる。
なお、本実施形態においては、最後に報知してからの時間に応じて、仮想物体の表示する色を変更したが、それに限るものではなく、例えば、振動や音の提示を変更してもよい。
なお、本実施形態の仮想空間、現実空間は、三次元空間の一例である。
以上のように、情報処理装置１００は、本実施形態の処理により、仮想物体と対象物体との干渉について、過度の干渉報知を抑え、且つ、仮想物体間の干渉を好適に報知することができる。それにより、情報処理装置１００は、ユーザビリティの向上を図ることができる。
なお、本実施形態では、前回の報知からの経過時間に応じて、報知色に設定することを規制するようにした。しかし、逆に、前回の非報知（すなわち、表示色の状態）からの経過時間（今回の報知を開始してからの経過時間）に応じて、非報知（表示色）に設定することを規制するようにしてもよい。すなわち、表示色の状態から干渉していると判定されて報知色が設定されて体験者に対する報知がなされた後、また非接触と判定された際、前回の非報知（表示色）からの経過時間が所定時間以上経過していなければ、非報知（表示色）と設定せず、報知を継続する。このような構成によっても、体験者に対する過度の報知を抑制することが可能となる。
【００３９】
［第２の実施形態］
第１の実施形態では、仮想物体の干渉の報知を、最後に報知してからの経過時間に応じて変更することを説明した。これによって、体験者への過度の報知を防ぐことはできるが、規制間隔内の干渉状態の変化は全て報知されないことが問題となる。
本実施形態においては、第１の実施形態に加えて、さらに仮想物体が仮想物体描画部１０４で描画される面積に応じて干渉の報知を行うか否かを判定する。なお、前述の第１の実施形態とは、干渉報知判定処理の一部が異なるのみであるため、前述の実施形態と同様の部分に関しては、同一番号を付けて省略し、異なる部分のみを以下に説明する。
【００４０】
図６は、本実施形態における干渉報知判定処理の詳細を示すフローチャートである。
Ｓ６０１において、仮想物体描画部１０４が、現在の位置姿勢において仮想物体を描画した際の投影後のポリゴンが、表示部１１０に占める割合を面積比として算出する。
Ｓ６０２において、干渉報知判定部１０６が、Ｓ６０１で求めた投影後のポリゴンの面積が、規制面積より大きいか否かを判定する。本実施形態において、規制面積は１０％とする。
【００４１】
図７は、第２の実施形態において表示部１１０に表示される合成画像の一例を示す図である。
図７（ａ）は、仮想物体３０１と３０２が、Ｓ６０１およびＳ６０２で仮想物体の面積比が規制面積より大きく、Ｓ５０４において、報知間隔が規制間隔よりも小さい状況を示している。
また、図７（ｂ）は、仮想物体３０１と３０２が、Ｓ６０１およびＳ６０２で仮想物体の面積比が規制面積より小さく、Ｓ５０４において、報知間隔が規制間隔よりも小さい状況を示している。
【００４２】
図７（ｂ）では、報知間隔が規制間隔よりも小さい状況においても、仮想物体の面積比が規制面積よりも小さいため、仮想物体３０１は報知色３０３で、仮想物体３０２は報知色３０４で描画され、体験者に視覚的に干渉を報知する。
なお、本実施形態では、仮想物体３０１および３０２に報知色が設定されている場合を説明したが、それに限るものではない。例えば、仮想物体３０２に報知色が設定されていない場合には、仮想物体の面積比を求める際に報知色が設定されている仮想物体のみを対象として面積比を求めるなどしてもよい。
【００４３】
以上説明したように、本実施形態によれば、仮想物体３０１と３０２の干渉を報知する際、最後に報知してからの経過時間に加え、仮想物体の面積比を考慮する。これによって、体験者に過度の報知を行うことを防ぎつつ、影響の少ない範囲では、より厳密に仮想物体の干渉を報知することができる。
【００４４】
［第３の実施形態］
前述の実施形態では、仮想物体の位置姿勢は、仮想物体に対応付けた現実物にマーカーを張り付け、前述のマーカーを撮像した画像から推定することを説明した。複合現実感システムでは、仮想物体だけでなく、撮像した画像から体験者の手の位置姿勢を推定し、仮想物体として取り込むことで、仮想物体との接触判定も行われる。その際、体験者の手にマーカーなどは用いず、撮像した画像から得られる特徴量を用いて手の位置姿勢を推定することが一般的であるが、手の位置姿勢を推定する方法には様々あり、使用状況や目的に応じて使い分けられる。本実施形態では、特徴の異なる二つの方法を用いて、体験者の手から推定した仮想物体の干渉判定を行う場合について説明する。
【００４５】
図８は、第３の実施形態における仮想空間の画像の例を示した模式図である。本実施形態では、図８（ａ）に示す、仮想物体３０１と後述する二つの何れかの手法で体験者の手の位置姿勢を推定した仮想物体８０１を例に説明する。
本実施形態において、位置姿勢取得部１０８は、撮像部１０７の位置姿勢と、仮想物体の位置姿勢を推定する。仮想物体３０１は、前述の通り、現実物に張り付けたマーカーによって推定する。
【００４６】
一方で、仮想物体８０１は、特徴の異なる二つの位置姿勢推定方法から、情報処理装置の状況に応じて何れか一方を選択して、推定が行われる。本実施形態における第１の位置姿勢推定方法は、少ない演算で推定が可能である代わりに、位置姿勢の推定精度が低い表面モデルによる推定である。これは、視差のある撮像した２つの画像から、それぞれ肌色領域の輪郭を求め、ステレオマッチングにより輪郭の奥行きを推定し、手の位置姿勢とするものである。これによって得られる手の仮想物体は、輪郭同士を結んだ厚みを持たないポリゴンとなるため、撮像した画像に映る手表面の位置姿勢のみが推定される。よって、手の厚み等が考慮されず、特に撮像した画像に対して奥行き方向への位置姿勢の推定精度は低い。
【００４７】
本実施形態における第２の位置姿勢推定方法は、多くの演算が必要となる代わりに、位置姿勢の推定精度が高い手指モデルによる推定である。これは、撮像した画像から肌色領域を抽出した後、手の骨格モデルにあてはめ、様々な手形状から尤もらしい形状を推定することで、手の位置姿勢とするものである。これによって得られる手の仮想物体は、手の表面だけでなく、手の形状や厚みを持ったポリゴンとなるため、第１の位置姿勢推定方法に比べて高い精度での位置姿勢の推定が可能である。
【００４８】
本実施形態においては、情報処理装置の使用状況に応じて、ＣＰＵ２１０の使用率が高ければ第１の位置姿勢推定方法を、ＣＰＵ２１０の使用率が低ければ第２の位置姿勢推定方法によって、仮想物体８０１の位置姿勢が推定される。なお、これら第１と第２の位置姿勢推定方法は、公知の技術であるため、ここでの詳細な説明は省く。また、第１と第２の位置姿勢推定方法の切り替えは、ＣＰＵの使用率に限るものではなく、例えば、ＲＡＭなど他の情報処理装置のリソースの使用状況に応じて切り替えてもよい。また、撮像部１０７が撮像した画像の品質や撮像部１０７のシャッタースピードなど、各種制御パラメータに応じて切り替えてもよい。
【００４９】
図９は、本実施形態における干渉報知判定処理の詳細を示すフローチャートである。
Ｓ９０１において、干渉報知判定部１０６が、位置姿勢取得部１０８で行われた手の仮想物体８０１の位置姿勢推定方法が、第１の推定方法であるのか、第２の推定方法であるのかを判定する。
位置姿勢の推定方法に、第１の推定方法、すなわち推定精度の低い表面モデルが用いられている場合、処理はＳ５０４に移り、また、第２の推定方法、すなわち推定精度の高い手指モデルが用いられている場合、処理はＳ５０５に移る。
【００５０】
図８（ｂ）は、仮想物体８０１が、表面モデルによって位置姿勢が推定され、Ｓ５０４において、報知間隔が規制間隔よりも小さい状況を示している。手の仮想物体８０１は、推定精度の低い表面モデルによって位置姿勢の推定が行われており、また、報知間隔も規制間隔よりも小さいため、仮想物体３０１は表示色で描画される。なお、本実施形態において、手の仮想物体８０１は、肌色領域の輪郭によって撮像した画像を用いたテクスチャマッピングによってポリゴンが描画される。
【００５１】
図８（ｃ）は、仮想物体８０１が、手指モデルによって位置姿勢が推定され、Ｓ５０４において、報知間隔が規制間隔よりも小さい状況を示している。手の仮想物体８０１は、推定精度の高い手指モデルによって位置姿勢の推定が行われているため、仮想物体の干渉の判定結果の信頼性は高い。よって、手指モデルによって位置姿勢が推定される場合には、報知間隔が規制間隔よりも小さい状況においても、仮想物体３０１は報知色３０３で描画され、体験者に視覚的に干渉を報知する。なお、本実施形態では、仮想物体８０１に報知色は設定されていないため、仮想物体８０１は撮像した画像を用いたテクスチャマッピングによって描画されるが、予め報知色を設定し、報知色で描画してもよい。
【００５２】
以上説明したように、本実施形態によれば、仮想物体３０１と８０１の干渉を報知する際、仮想物体の位置姿勢推定方法に応じて、最後に報知してからの経過時間による報知の規制を行うか否かを変更する。これによって、仮想物体の位置姿勢推定精度が低い場合には、体験者に過度の報知を行うことを防ぎつつ、位置姿勢推定精度が高い場合には、体験者に正確な報知を行うことができる。
【００５３】
［第４の実施形態］
前述の実施形態では、撮像した画像から手などの肌色領域の位置姿勢を推定し、手と仮想物体との干渉の報知を、位置姿勢の推定方法と最後に報知してからの経過時間に応じて変更することを説明した。しかしながら、例えば、推定精度の高い方法であっても、照明などの撮影条件によっては十分な精度が得られず、体験者への過度の報知を行う場合があることが問題となる。
本実施形態においては、推定された位置姿勢の時間的な変化を加えて、干渉の報知を行うか否かを判定する。
【００５４】
図１０は、本実施形態における干渉報知判定処理の詳細を示すフローチャートである。Ｓ１００１において、位置姿勢取得部１０８が、推定した手の仮想物体８０１の位置姿勢を、推定を行った時間と共にＲＡＭ２３０に記憶する。
Ｓ１００２において、干渉報知判定部１０６が、ＲＡＭ２３０から仮想物体８０１の位置姿勢の時間的推移から推定した位置姿勢の確からしさを判定する。
本実施形態においては、仮想物体の位置姿勢に基づいて撮像した画像からの奥行きをＲＡＭ２３０に記憶して用いる。具体的には、現在から所定の時間の間で、時間方向にとった移動平均との偏差を求め、奥行きの移動平均からの偏差によって、推定した位置姿勢の確からしさを判定する。
【００５５】
図１１は、本実施形態における仮想物体８０１の経過時間に対する奥行きを示す特性図の一例である。
図１１（ａ）は、ノイズが多い条件で撮像した画像から仮想物体８０１の位置姿勢を推定し、奥行きをプロットした一例である。
１１０１は仮想物体８０１の奥行きであり、１１０３は奥行き１１０１を時間方向に移動平均したものである。本実施形態では、現在の時間ｔ０から所定の時間分遡ったｔ１までの間で、移動平均１１０３からの奥行き１１０１の偏差を求める。
【００５６】
図１１（ｂ）は、ノイズが少ない条件で撮像した画像から仮想物体８０１の位置姿勢を推定し、奥行きをプロットした一例である。このときの仮想物体８０１の奥行き１１０２は、変動が少なく、移動平均１１０４とほぼ一致していることから移動平均１１０４からの奥行き１１０２の偏差は、図１１（ａ）の状況と比べて小さいことがわかる。
Ｓ１００２では、図１１（ａ）のとき偏差が大きいと判断し、処理をＳ５０４に移し、図１１（ｂ）のとき偏差が小さいと判断し、処理をＳ５０５に移す。
【００５７】
以上説明したように、本実施形態によれば、仮想物体３０１と８０１の干渉を報知する際、仮想物体の位置姿勢の時間的な変化の大きさに応じて、最後に報知してからの経過時間による報知の規制を行うか否かの度合いを変更する。これによって、仮想物体の位置姿勢の推定方法に依らず、位置姿勢の推定結果から推定の確からしさを判定し、位置姿勢の推定結果の直前までの偏差（信頼性）が小さい場合には、体験者に正確な報知を行うことができる。
【００５８】
［第５の実施形態］
前述の実施形態では、仮想物体の干渉の報知を行うか否かを、少なくとも最後に報知してからの経過時間に応じて変更することを説明した。これによって、体験者への過度の報知を防ぐことはできるが、干渉報知判定処理によって仮想物体の干渉の報知を行わないと判定された場合には、規制間隔内の干渉状態の変化は全て報知されないことが問題となる。
本実施形態では、前述の実施形態から、干渉報知判定処理と仮想物体描画部１０４の一部が異なる。
【００５９】
本実施形態において、仮想物体描画部１０４は、仮想物体３０１、３０２を描画した画像を生成する。より具体的には、仮想物体データベースに保存されたモデルデータと干渉報知判定部１０６で算出する報知色のアルファブレンド率に基づいて画像を生成する。
【００６０】
図１３は、本実施形態における仮想空間の画像の例を示した模式図である。仮想物体描画部１０４で生成された仮想空間の画像を図３（ｂ）、図１３に示している。本実施形態における仮想物体描画部１０４は、後述する干渉報知判定処理によって算出されたアルファブレンド率に応じて、前述の表示色に報知色をアルファブレンドした色で仮想物体３０１、３０２を描画する。
【００６１】
図３（ｂ）は、報知色のアルファブレンド率が１の状況を示しており、仮想物体３０１は表示色に報知色３０３を１００％の割合でアルファブレンドされた報知色３０３で、仮想物体３０２は報知色３０４で描画される。
図１３は、報知色のアルファブレンド率が０．５の状況を示しており、仮想物体３０１は表示色に報知色３０３を５０％の割合でアルファブレンドされた色１３０１で、仮想物体３０２は報知色３０４を５０％でアルファブレンドした色１３０２で描画される。
【００６２】
図１２は、本実施形態における干渉報知判定処理の詳細を示すフローチャートである。Ｓ１２００において、干渉判定部１０３が、ＲＡＭ２３０に格納されている仮想物体３０１、３０２を参照し、仮想物体３０１、３０２を構成するポリゴンごとに交差しているかどうか判定する。仮想物体のポリゴンが交差し、干渉していると判定された場合には処理をＳ５０２に移し、干渉していないと判定された場合には処理をＳ１２０３に移す。
【００６３】
Ｓ１２０１において、干渉報知判定部１０６が、報知間隔が規制間隔よりも大きいとき、仮想物体３０１と３０２の前述の報知色のアルファブレンド率を１に設定する。
Ｓ１２０２において、干渉報知判定部１０６が、報知間隔が規制間隔よりも小さいとき、規制間隔に対する報知間隔の割合を求めて、仮想物体３０１と３０２の前述の報知色のアルファブレンド率に設定する。
【００６４】
本実施形態において、規制間隔は１秒である。図１３の状況において、報知間隔は０．５秒であるため、仮想物体３０１のアルファブレンド率は０．５に設定され、図３（ｂ）の報知色３０３よりも報知色が５０％薄い色１３０１で仮想物体３０１は描画されている。また、仮想物体３０２も同様にアルファブレンド率は０．５に設定され、図３（ｂ）の報知色３０４よりも報知色が５０％薄い色１３０２で仮想物体３０２は描画されている。Ｓ１２０３において、干渉報知判定部１０６が、仮想物体３０１と３０２の前述の報知色のアルファブレンド率を０に設定する。
【００６５】
以上説明したように、本実施形態によれば、仮想物体３０１と３０２の干渉を報知する際、最後に報知してからの経過時間に応じて、仮想物体の表示する報知色のアルファブレンド率を変更する。本実施形態では、最後に報知してからの経過時間に応じて透明度に係る情報（アルファブレンド率）を制御することにより、以下のことが実現できる。すなわち、規制間隔内の表示色から報知色への大きな変化を抑制し、緩やかな変化とすることで、体験者に過度の報知を行うことを防ぐことができると共に、規制間隔内においても、体験者に干渉の報知を行うことができる。
【００６６】
［第６の実施形態］
前述の実施形態では、報知間隔と規制間隔の割合によって、報知色のアルファブレンド率を変化させ、規制間隔内の干渉を緩やかに体験者に報知することを説明した。本実施形態では、前述の実施形態と異なり、報知間隔が規制間隔よりも小さい場合に、仮想物体の描画の方法を変えることで、干渉の報知による仮想物体の変化を抑える方法について説明する。
【００６７】
本実施形態において、仮想物体描画部１０４は、仮想物体３０１、３０２を描画した画像を生成する。より具体的には、仮想物体データベース１０１に保存されたモデルデータと干渉報知判定部１０６で設定するポリゴンの色とワイヤーの色に応じて画像を生成する。
【００６８】
図１４は、本実施形態における干渉報知判定処理の詳細を示すフローチャートである。Ｓ１４０１において、干渉報知判定部１０６が、報知間隔が規制間隔よりも小さいとき、仮想物体のポリゴンの色を表示色に、ワイヤーフレームの色を報知色に設定する。なお、本実施形態において、Ｓ５０６およびＳ５０７で設定される色はポリゴンの色であり、ワイヤーフレームの色は設定されない。
【００６９】
図１５は、本実施形態における仮想空間の画像の例を示した模式図である。
図１５は、報知間隔が規制間隔よりも小さい状況での仮想物体３０１および３０２を示しており、仮想物体３０１はポリゴンを表示色で、ワイヤーフレームを報知色１５０１で描画される。また、仮想物体３０２はポリゴンを表示色で、ワイヤーフレームを報知色１５０２で描画される。
【００７０】
以上説明したように、本実施形態によれば、仮想物体３０１と３０２の干渉を報知する際、最後に報知してからの経過時間に応じて、仮想物体の表示する報知色の適用範囲を変更する。より具体的に言えば、最後に報知してからの経過時間が規制時間を超える場合には、仮想物体の所定範囲（例えば、仮想物体全体）を報知色に設定して干渉状態を報知する。一方、最後に報知してからの経過時間が規制時間を超えない場合には、所定範囲よりも狭い範囲（例えば、仮想物体のワイヤーフレーム）を報知色に設定して干渉状態を報知する。このように、本実施形態では、前回の報知からの経過時間が所定の時間に満たないときは色の変化する面積を減らし、体験者に過度の報知を行うことを防ぐことができると共に、規制間隔内においても、体験者に干渉の報知を行うことができる。
【００７１】
（その他の実施形態）
上述の各実施形態では、干渉報知判定部１０６の制御によって、前回報知してからの経過時間に応じて、仮想物体の表示する色を変更する等の制御を行った。しかし、干渉判定部１０３の制御によって、結果として同じ報知の方法が実現されてもよい。すなわち、干渉判定部１０３は、仮想物体同士が干渉していると判定した場合にも、前回報知からの所定の時間が経過していなければ、干渉しているとの結果を出力せず、干渉していないとの結果を出力する。また、干渉判定部１０３は、仮想物体同士が干渉していると判定した場合で、前回報知からの所定の時間が経過していれば、干渉しているとの結果を出力する。
そして、干渉通知部１１２は、干渉判定部１０３から干渉との結果を受ければ仮想物体の色を報知色にして報知を行い、干渉判定部１０３から干渉していないとの結果を受ければ仮想物体の色を表示色とする。
以上のように、干渉判定部１０３の制御によっても、前回報知してからの経過時間に応じて仮想物体の表示する色を変更できるようになり、結果として、干渉報知判定部１０６を制御した場合と同じ報知の内容となる。また、この場合には、干渉報知判定部１０６は不要となる。
また、上述の各実施形態では、合成画像（ＭＲ画像）において仮想物体同士が干渉する際に、その干渉を報知する際の処理について説明を行った。しかし、本実施形態は仮想物体同士の干渉に限らず、仮想物体と現実物体（例えば、体験者の手）との干渉を報知する形態にも適用するものである。例えば、撮像画像に映る現実物体を実写としてそのまま合成画像（ＭＲ画像）に表示する場合にも、第３の実施形態で説明したように現実物体の位置姿勢の推定を行うことにより、現実物体と仮想物体との干渉判定を行うことができる。そして、仮想物体と現実物体との干渉を報知する際に、例えば、前回報知してからの経過時間に応じて、仮想物体の表示する色を変更するようにする。
本発明は、以下の処理を実行することによっても実現される。即ち、前述した実施形態の機能を実現するソフトウェア（コンピュータプログラム）を、ネットワーク又は各種のコンピュータ読み取り可能な記憶媒体を介してシステム或いは装置に供給する。そして、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【符号の説明】
【００７２】
１００  情報処理装置
１０１  仮想物体データベース
１０２  ＨＭＤ
【図１】
2017142785.tif 000003
【図２】
2017142785.tif 000004
【図３】
2017142785.tif 000005
【図４】
2017142785.tif 000006
【図５】
2017142785.tif 000007
【図６】
2017142785.tif 000008
【図７】
2017142785.tif 000009
【図８】
2017142785.tif 000010
【図９】
2017142785.tif 000011
【図１０】
2017142785.tif 000012
【図１１】
2017142785.tif 000013
【図１２】
2017142785.tif 000014
【図１３】
2017142785.tif 000015
【図１４】
2017142785.tif 000016
【図１５】
2017142785.tif 000017