JP7111940B2 - 情報処理装置、情報処理システム、その制御方法及びプログラム - Google Patents

情報処理装置、情報処理システム、その制御方法及びプログラム Download PDF

Info

Publication number
JP7111940B2
JP7111940B2 JP2017148063A JP2017148063A JP7111940B2 JP 7111940 B2 JP7111940 B2 JP 7111940B2 JP 2017148063 A JP2017148063 A JP 2017148063A JP 2017148063 A JP2017148063 A JP 2017148063A JP 7111940 B2 JP7111940 B2 JP 7111940B2
Authority
JP
Japan
Prior art keywords
virtual object
contact
determining
risk
condition
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2017148063A
Other languages
English (en)
Other versions
JP2019028772A5 (ja
JP2019028772A (ja
Inventor
信裕 鈴木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Marketing Japan Inc
Canon IT Solutions Inc
Original Assignee
Canon Marketing Japan Inc
Canon IT Solutions Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Marketing Japan Inc, Canon IT Solutions Inc filed Critical Canon Marketing Japan Inc
Priority to JP2017148063A priority Critical patent/JP7111940B2/ja
Publication of JP2019028772A publication Critical patent/JP2019028772A/ja
Publication of JP2019028772A5 publication Critical patent/JP2019028772A5/ja
Application granted granted Critical
Publication of JP7111940B2 publication Critical patent/JP7111940B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Processing Or Creating Images (AREA)
  • User Interface Of Digital Computer (AREA)

Description

本発明は、情報処理装置、情報処理システム、その制御方法及びプログラムに関する。
近年、複合現実(Mixed Reality/以下、MRと記載)の技術が普及している。複合現実の技術を用いて、ヘッドマウントディスプレイ(HMD)を装着したユーザに対し、現実画像にCGモデル(仮想物体)を配置した複合現実画像を提供し、現実と仮想を複合した複合現実の世界を体験させることができる。複合現実画像を生成するにあたり、HMDの位置と仮想物体の位置とを、センサや二次元マーカを用いて特定する手法が取られている。
特許文献1には、HMDで撮像された画像の中に写る二次元マーカを用いてHMDの位置姿勢を特定し、複合現実画像を提供する技術が記載されている。また、特許文献2には、磁気センサを用いてHMDの位置姿勢を特定し、複合現実画像を提供する技術が記載されている。
また、特許文献3には、工具の仮想物体と他の仮想物体の接触状態をユーザに通知できるように、他の仮想物体と接触している工具の仮想物体の色を変更することが記載されている。
特開2003-308514号公報 特開2003-240532号公報 特開2017-49950号公報
設計物の仮想物体を複合現実画像として表示し、設計物に関する検証を行う業務がある。例えば、設計物におけるある部品とある部品の間に、工具や手が入るかを確認することで、当該工具や手によるメンテナンス作業が可能な設計となっているか検証する。
部品と手、部品と工具の接触状態を色で識別表示すれば、部品の間に手や工具が入るか確認可能である。
設計物の部品の中には、例えばコード等、かき分けれて変形させれば工具や手を入れるスペースを確保できる部品がある。
また、一見して部品同士の間に工具や手を入れるスペースが無いように見えても、当該部品が緩衝材等の柔らかい部品の場合、手を突っ込めば緩衝材が変形するため、部品の向こう側にある作業空間まで手を通すことが可能であり、部品と手、工具が接触していることを必ずしもユーザに報知する必要はない。ユーザが知りたいのは、あくまで手や工具が入るかどうか、だからである。
一方で、例えば放電している部品や発熱している部品のように危険度が高い部品の場合、危険度の低い部品に比べて、手や工具との距離を長めにとって設計をする必要がある。
本発明は、仮想物体の属性に応じて、当該仮想物体との接触状態を通知することが可能な仕組みを提供することを目的とする。
本発明は、
仮想物体と現実画像とを表示するように制御する表示制御手段と、
第1の仮想物体の危険度に関する属性に基づいて、前記第1の仮想物体と、ユーザの動きにより仮想空間上の位置姿勢が変化する第2の仮想物体との接触を判定するための条件を決定する決定手段と、
前記決定手段により決定された条件により判定される前記第1の仮想物体と前記第2の仮想物体との接触状態を通知する通知手段と、
を備え
前記危険度に関する属性とは、前記第1の仮想物体にかかる温度に関する情報、前記第1の仮想物体にかかる放電の状態に関する情報、前記第1の仮想物体の手触りにかかる情報のうち少なくとも1つであることを特徴とする
本発明によれば、本発明は、仮想物体の属性に応じて、当該仮想物体との接触状態を通知することが可能な仕組みを提供することが可能となる。
本発明第1の実施形態における、情報処理システム構成図の一例を示す図である。 本発明第1の実施形態における、各種装置のハードウェア構成の一例を示す図である。 本発明第1の実施形態における、各種装置の機能構成の一例を示す図である。 本発明第1の実施形態における、各種装置のモジュール構成の一例を示す処理図である。 本発明第1の実施形態における、複合現実画像の生成及び表示処理の一例を示す処理図である。 本発明第1の実施形態における、各種データ構成の一例を示す図である。 本発明第1の実施形態における、仮想物体の硬さに応じた接触判定用物体の生成処理の流れを示すフローチャートである。 本発明第1の実施形態における、接触判定及び識別表示処理の流れを示すフローチャートである。 本発明第1の実施形態における、接触判定用物体の一例を示す図である。 本発明第1の実施形態における、接触判定及び識別表示の一例を示す図である。 本発明第2の実施形態における、仮想物体の危険度に応じた接触判定用物体の生成処理の流れを示すフローチャートである。 本発明第2の実施形態における、接触判定用物体の一例を示す図である。 本発明第2の実施形態における、接触判定及び識別表示の一例を示す図である。
<第1の実施形態>
図1を参照して、本発明の実施形態における情報処理システムの構成の一例について説明する。
図1に示すように、本発明における情報処理システムの各種装置はネットワーク150を介して通信可能に接続されている。例えばPC100は、HMD101(HMD101A~HMD101Cの総称)と通信可能に接続されている。
PC100には、HMD101により撮像される現実画像に重畳する3次元モデル(CGモデル/仮想オブジェクト)が記憶されている。
また、PC100は、自機の管理するHMD101(図1におけるHMD101A~101C)より現実画像を取得して、記憶部に記憶する。
また、PC100はHMD101の位置姿勢を特定し、記憶する。HMD101の位置姿勢の特定方法は、特許文献1に記載されている、HMD101の撮像した現実画像中の二次元マーカを用いて特定可能である。
また、特許文献2に記載されている、センサ(図1における光学式センサ104)がHMD101に設置された光学式マーカの位置姿勢をHMD101の位置姿勢として検出し、それをPC100が取得することで特定可能である。
本実施形態においては、特許文献2に記載されているように、センサ(図1における光学式センサ104)がHMD101に設置された光学式マーカの位置姿勢をHMD101の位置姿勢として検出する方法用いてHMD101の位置姿勢を特定するものとする。
PC100では、HMD101の位置姿勢と、記憶部に記憶されている3次元モデル及び3次元モデルの位置姿勢の情報を用いて、現実画像に3次元モデルを重畳した複合現実画像を生成する。
そして、当該複合現実画像をHMD101のディスプレイに表示させるべく、HMD101に送信する。HMD101は受信した複合現実画像をディスプレイに表示する。以上が図1の説明である。
次に図2を参照して、本発明の実施形態における、各種装置のハードウェア構成の一例について説明する。
CPU201は、システムバス204に接続される各デバイスやコントローラを統括的に制御する。
また、ROM202には、CPU201の制御プログラムであるBIOS(Basic Input / OutputSystem)やオペレーティングシステム(OS)、その他各種装置の実行する機能を実現するために必要な各種プログラムが記憶されている。
RAM203は、CPU201の主メモリ、ワークエリア等として機能する。CPU201は、処理の実行に際して必要なプログラム等をRAM203にロードして、プログラムを実行することで各種動作を実現するものである。
本発明のPC100が後述する各種処理を実行するために用いられる各種プログラム等は外部メモリ211に記録されており、必要に応じてRAM203にロードされることによりCPU201によって実行されるものである。
さらに、本発明に係わるプログラムが用いる定義ファイルや各種情報テーブルは外部メモリ211に格納されている。
入力コントローラ(入力C)205は、キーボードやマウス等のポインティングデバイス(入力デバイス209)からの入力を制御する。
また、入力デバイス209がタッチパネルの場合、ユーザがタッチパネルに表示されたアイコンやカーソルやボタンに合わせて押下(指等でタッチ)することにより、各種の指示を行うことができることとする。
なお、タッチパネルは、マルチタッチスクリーンなどの、複数の指でタッチされた位置を検出することが可能なタッチパネルであってもよいこととする。
ビデオコントローラ(VC)206は、HMD101が備える右目・左目ディスプレイ222等の表示器への表示を制御する。
右目・左目ディスプレイ222に対しては、例えば外部出力端子(例えば、Digital Visual Interface)を用いて出力される。
また、右目・左目ディスプレイ222は、右目用のディスプレイと左目用のディスプレイとから構成されている。また、入力コントローラ(入力C)205は、PC100の備えるディスプレイ210(CRTディスプレイ等)の表示器への表示を制御する。
なお、図2では、表示器はCRTディスプレイだけでなく、液晶ディスプレイ等の他の表示器であってもよい。
メモリコントローラ(MC)207は、ブートプログラム、ブラウザソフトウエア、各種のアプリケーション、フォントデータ、ユーザファイル、編集ファイル、各種データ等を記憶するハードディスク(HD)やフレキシブルディスク(FD)或いはPCMCIAカードスロットにアダプタを介して接続されるカード型メモリ等の外部メモリ211へのアクセスを制御する。
通信I/Fコントローラ(通信I/FC)208は、ネットワークを介して、外部機器と接続・通信するものであり、ネットワークでの通信制御処理を実行する。
例えば、TCP/IPを用いたインターネット通信等が可能である。また、通信I/Fコントローラ208は、ギガビットイーサネット(登録商標)等を通じて光学式センサ104との通信も制御する。
汎用バス212は、HMD101の右目・左目ビデオカメラ221からの映像を取り込むために使用される。右目・左目ビデオカメラ221からは、外部入力端子(例えば、IEEE1394端子)を用いて入力される。
右目・左目ビデオカメラ221は、右目用のビデオカメラと左目用のビデオカメラとから構成されている。
尚、CPU201は、例えばRAM203内の表示情報用領域へアウトラインフォントの展開(ラスタライズ)処理を実行することにより、ディスプレイ上での表示を可能としている。
また、CPU201は、ディスプレイ上の不図示のマウスカーソル等でのユーザ指示を可能とする。以上が図2の説明である。
次に図3を参照して、本発明の実施形態における各種装置の機能構成の一例について説明する。
撮像部301は、現実画像を撮像処理により取得する現実画像(撮像画像)の取得部である。
現実画像送信部302は、撮像部301により取得された現実画像をPC100に送信(出力)する。
MR画像受信部303は、PC100からMR画像(現実画像に仮想物体の画像を重畳した複合現実画像)を受信する受信部である。
MR画像表示部304は、MR画像受信部303が受信したMR画像を表示する表示部である。
現実画像記憶部311は、現実画像送信部302により送信された現実画像を取得して記憶する記憶部である。
仮想物体記憶部312は、仮想物体(例:3DCGモデル)を記憶する記憶部である。例えば図6のモデル情報620を記憶している。620の詳細は後述する。
属性取得部313は、仮想物体の属性を取得する取得部である。
接触判定用仮想物体生成部314は、属性取得部313で属性を取得した仮想物体の接触判定用の仮想物体(例:接触判定用仮想物体の大きさ、形状)を、当該属性に応じて決定し、生成する機能部である。
位置決定部315は、接触判定用仮想物体の位置を決定する決定部である。
位置特定部部316は、HMD101及びHMD101を装着しているユーザの手(身体の一部)の位置、仮想物体の位置を特定する機能部である。例えば所定時間ごとに位置を特定し、更新・記憶する。
接触判定部317は、接触判定用仮想物体の位置及び形状と、ユーザの身体の一部又は他の仮想物体の位置及び形状とに基づいて、接触判定用仮想物体とユーザの身体の一部又は他の仮想物体が接触しているか判定する。
識別表示制御部318は、例えば、接触している接触判定用仮想物体に対応する仮想物体を識別表示すべく、当該仮想物体の色設定を変更する。つまり、接触前から色が変更された仮想物体が、MR画像表示部304で表示されるよう制御する。
MR画像生成部319は、仮想物体の画像と現実画像とを重畳した重畳画像であるMR画像(複合現実画像)を生成する。
なお、仮想物体の色設定が変更されている場合、変更後の色設定に従って色を変更した仮想物体の画像を生成し、当該画像を現実画像と重畳してMR画像を生成する。
MR画像送信部320は、MR画像をHMD101に表示させるべく、HMD101に送信(出力)する。以上が図3の説明である。
なお、本実施形態においては、311~320の機能部をPC100が備えているが、例えばこれらの構成をHMD101が備えるよう構成してもよいものとする。
次に図4を参照して、本発明の実施形態における、各種装置のモジュール構成の一例について説明する。
PC100は、オペレーティングシステム401(OS)、グラフィックエンジン402、複合現実感プラットフォーム403(MRプラットフォームともいう)、複合現実感アプリケーション404(MRアプリケーションやビューアアプリケーションともいう)で構成され、CPU201により制御されている。
オペレーティングシステム401は、HMD101の入出力を制御しカメラ221から入力インターフェースを介して得られた現実画像を複合現実感プラットフォーム403へ受け渡す。
またグラフィックエンジン402で描画された複合現実画像を、出力インターフェースを介して、ディスプレイ222へ出力する。
グラフィックエンジン402は、外部メモリ211に記憶されている3次元モデル(仮想物体)から描画する画像を生成し、現実画像に重畳し、合成する。
描画に利用するエンジンは、例えば、OpenGLやDirectXなどの広く利用されているグラフィックエンジンでも、独自に開発したグラフィックエンジンでもよい。なお、本実施形態ではグラフィックライブラリとしてOpenGLを利用するものとする。
複合現実感プラットフォーム403は、センサ104からHMD101に設置されたマーカ103の位置姿勢を取得することで、当該位置姿勢をHMD101の位置姿勢を取得・特定し、現実空間と仮想空間の位置合わせを行う。
なお、位置姿勢や位置合わせの技術は、既知の技術として開示されている、特開2002-32784、特開2006-072903、特開2007-166427等を用いて実現することが可能である。
また、二次元マーカを使用せずに、HMD101に位置センサを備え、この位置センサを用いて三角測量により計測された位置をもとに、HMD101の位置や姿勢を特定して実現することも可能である。
複合現実感アプリケーション404は、複合現実感プラットフォーム403からHMD101の位置姿勢、3次元モデルの形状の情報、位置姿勢の情報を受け付け、グラフィックエンジン402に対して、3次元モデルの描画命令を発行する。
この時、OpenGLのAPIを用いて、描画する3次元モデルの識別情報、位置姿勢の情報を設定した命令を発行する。以上が図4の説明である。
次に図5を参照して、本発明の実施形態における複合現実画像の生成及び表示処理について説明する。
HMD101は、ステップS501で起動後、カメラ221の機能を用いて現実画像の撮像を開始する(ステップS502)。
そして、撮像処理によって取得した現実画像をPC100に送信する(ステップS503)。
PC100のCPU201はHMD101より現実画像を受信し(ステップS504)、受信した現実画像を外部メモリ211に記憶する(ステップS505)。
例えば、図6の現実画像テーブル630に示すように、現実画像の送信元のHMD101の識別情報であるHMD ID631と、現実画像632とを対応付けて記憶する。
PC100のCPU201は、HMD101の位置姿勢を取得して(ステップS506)、外部メモリ211に記憶する(ステップS507)。
例えば、図6のHMD情報610に示すように、HMD101の識別情報であるHMD ID611と、当該HMDの位置612(X,Y,Z座標)、姿勢613(X,Y,Z座標の値により表現されるHMD101の向いている方向及び傾き(角度))を記憶する。
姿勢613については、例えば、1つ前の位置姿勢のレコードと現在の位置姿勢のレコードそれぞれの3次元方向の外積から方向(回転方向)を、内積のarc cosから角度(なす角)を得る。
当該姿勢613の取得方法はあくまで一例であり、上記の方法に限定されるものではない。つまり、他の方法を用いてHMD101の姿勢を取得してもよい。
PC100のCPU201は、外部メモリ211から3Dモデルの情報を取得し、HMD101から受信した現実画像に重畳して複合現実画像を生成して(ステップS508)、HMD101に送信する(ステップS509)。
3Dモデル(仮想物体)の情報は、例えば図6のモデル情報620に示す情報である。モデル情報620は、予めPC100の外部メモリ211に記憶されている情報である。
モデルID621は3Dモデルの識別情報である。モデル名622は、3Dモデルのファイル名である。
ファイルパス623は、ファイルが記憶されている場所を示す。位置624、姿勢625は3Dモデルの位置姿勢を示す。
属性626は、3Dモデル(仮想物体)の属性である。第1の実施形態においては、当該属性626には、仮想物体の材質の硬さを示す硬さ属性が記憶されている。硬さ属性には「硬い」と「柔らかい」の2つのレベルがある。
色設定627は、3Dモデル(仮想物体)の色設定である。色設定627に色の識別情報が記憶されている場合は、当該仮想物体の描画データを、当該色設定627に記憶された色で生成する(生成した描画データの色を色設定627の色に変更する)。
PC100のCPU201は、HMDの位置612・姿勢613から、HMD101と同じ画角を持つカメラが、位置624・姿勢625の3Dモデルを撮像した場合の、当該3Dモデルの画像を描画データ640として生成する。
そして、当該描画データを現実画像と合成することで、図6のMR画像テーブル650に示す複合現実画像(MR画像)を生成する。
また、MR画像テーブル650の、複合現実画像を生成するために用いた現実画像の送信元のHMD(HMD ID651)と対応付けて記憶する。その後、HMD ID651の示すHMD101に、複合現実画像652を送信する。
HMD101は、PC100から複合現実画像を受信し(ステップS510)、表示画面に表示する(ステップS511)。以上が図5の説明である。
次に図7を参照して、本発明の実施形態における、仮想物体の硬さに応じた接触判定用物体の生成処理の流れについて説明する。
図7のフローチャートの各処理は、PC100のCPU201が所定の制御プログラムを読み出して実行する処理である。
PC100は、HMD情報610から、HMD101の最新の位置姿勢を読み出す(ステップS701)。
PC100は、仮想物体の位置情報の一覧を取得する(ステップS702)。そして、HMD101の位置を基準として、HMD101の位置から所定の距離内にある仮想物体を接触の候補として特定し、RAM203にリスト化して記憶する(ステップS703)。
当該所定距離は、HMD101の位置から半径2mの距離とする。当該所定距離の値は、PC100の外部メモリ211に予め記憶されており、ユーザ操作により自由に設定変更可能である。
PC100は、接触候補の仮想物体のリストから、未処理の仮想物体を1つ取得する。例えばHMD101との距離が最も近い、未処理の仮想物体を取得する(ステップS704)。
PC100は、当該仮想物体の属性626(硬さ属性)を特定し、取得する(ステップS705)。
そして、属性626に基づいて、当該仮想物体が硬いか柔らかいか判定する(ステップS706)。硬い場合は処理をステップS707に移行する。柔らかい場合は処理をステップS708に移行する。
ステップS708で、PC100は、実際の仮想物体よりも小さい仮想物体(3Dモデル)を生成する。ここで生成する仮想物体は、「柔らかい」属性を持つ仮想物体の接触判定用の仮想物体である。
なお、ここでは当該「柔らかい」属性を持つ仮想物体(図9の910に例示)の80%の容積量(8割の大きさ)を持つ3Dモデル(接触判定用仮想物体:図9の920に例示)を生成する。
生成した仮想物体は、RAM203上に生成した、接触判定用の仮想物体一覧(図6の接触判定用モデル情報660)に記憶する(ステップS709)。
モデルID661は、接触判定用仮想物体(例:図9の920)の識別情報である。対応モデルID662は、当該接触判定用仮想物体によって他の物体との接触判定を行う仮想物体(例:図9の910)である。
接触判定用仮想物体(例:図9の920)は、設計物の仮想物体(例:図9の910)の表示を遮らないように、透明とし、MR画像には表示しないものとする。
663~666の説明は、同図の622~625の説明と同じであるため記載は省略する。
なお、位置665と姿勢666は、当該接触判定用仮想物体(例:図9の920)の基となった仮想物体(例:図9の910/対応モデルID662のモデル)の位置624と姿勢625と同じ値を決定し、挿入・記憶する(ステップS710)。
また、ステップS707で、PC100は、「硬い」属性を持つ仮想物体自体(例:図9の900)を、モデル情報620から取得・特定する。
そして、当該「硬い」属性を持つ仮想物体のモデル情報を、図6の接触判定用モデル情報660に記憶する(ステップS709)。モデルID661は新たなIDを付与する。
位置665と姿勢666は、位置624と姿勢625と同じ値とする(ステップS710)。
PC100は、ステップS704~S710の処理を、接触判定の候補である仮想物体一覧内の全仮想物体に対して実行し、図7の処理を終了する。以上が図7の説明である。
次に図8を参照して、本発明の実施形態における、接触判定及び識別表示処理の流れについて説明する。
図8のフローチャートの各処理は、PC100のCPU201が所定の制御プログラムを読み出して実行する処理である。
PC100は図8の処理を、所定の時間間隔ごとに実行する。例えば0.5秒ごとに、複合現実アプリケーションが終了されるまで繰り返し実行する。
PC100は、接触判定用仮想物体の一覧(接触判定用モデル情報660)をRAM203から取得する(ステップS801)。
PC100は、ユーザの手の位置姿勢を取得する(ステップS802)。手の位置姿勢は、例えばユーザの装着している不図示の手袋の関節部に設置された光マーカとセンサ104により特定する。
例えば、センサ104が手袋に設置された光マーカの位置姿勢を取得し、PC100に出力する。PC100は当該手の位置姿勢の値を、手の位置から最も近い位置にあるHMD101のユーザの手の位置姿勢として、当該HMD101のIDと対応付けてRAM203に記憶する。
手の形状は、外部メモリ211に記憶されている手の仮想物体により特定可能である。PC100は、手袋の関節部に設置された光マーカの位置をリアルタイムに記憶し、当該位置の変化に応じて、当該位置と同じ位置に仮想物体の手の関節がくるように、手の仮想物体の空間上の位置姿勢を決定する。
つまり、現実空間上の手袋の位置姿勢、関節の曲がり具合に応じて、手の仮想物体の仮想空間上の位置姿勢、関節の曲がり具合を変化させる。手の仮想物体の一例を図9の901に示す。
PC100は、当該手の形状、手の位置姿勢と、接触判定用仮想物体の形状、位置姿勢に基づいて、手と接触判定用仮想物体が接触しているか判定する(ステップS803)。
接触している場合は処理をステップS804に移行し、接触していない場合は処理をステップS806に移行する。
ステップS804で、PC100は、接触していると判定された接触判定用仮想物体に対応する仮想物体(例:920に対応する910)を、対応モデルID662を参照して特定する(ステップS804)。
そして、当該特定した仮想物体の色設定627を、接触中を示す色に変更する(ステップS805)。例えば赤色に変更する。
図5のステップS508において、PC100は、当該仮想物体の描画データの色を赤色に変更して描画するため、当該仮想物体の接触判定用仮想物体と手の接触に応じて、当該仮想物体と手が接触しているようにユーザに報知することが可能となる。
図10に、「硬い」属性の仮想物体900と手1001の接触報知の様子を示す。硬い仮想物体の場合は、オリジナルの仮想物体(オリジナルの仮想物体と同じ大きさ・形状の接触判定用仮想物体)と手が接触したことにより、接触したことを報知する仮想物体900の色変更、描画が行われる。
また、「柔らかい」属性の仮想物体910に対応する接触判定用仮想物体920と手1011の接触報知の様子を示す。
柔らかい仮想物体の場合は、オリジナルの仮想物体910より小さい接触判定用仮想物体920と手が接触したことにより、仮想物体910の色変更、描画が行われる。
図8の処理によれば、仮想物体の属性に応じて、当該仮想物体との接触を報知可能な仕組みを提供することができる。
例えば柔らかい物体の場合には、硬い物体に比べて接触判定の条件を緩くすることで、不要な報知を減らしつつ、ユーザへの接触の報知をすることができる。
また、図7の処理によれば、仮想物体の属性に応じて、当該仮想物体との接触にかかる条件を決定することが可能な仕組みを提供することができる。
<第2の実施形態>
以下図11~図13を参照して、本発明の第2の実施形態について説明する。第1の実施形態と共通する装置、データ、処理等については説明を割愛する。
第2の実施形態においては、発熱・放熱、放電をしている等、手や工具を近づけると危険な仮想物体について、危険度の属性に応じて、当該仮想物体との接触にかかる条件を決定することが可能な仕組みを提供することを目的とする。
図11のステップS701~S704の処理は、図7のステップS701~S704と同じであるため説明は割愛する。
なお、第2の実施形態においては、図6の属性626に仮想物体の危険度のレベルを示す値(「高」又は「中」又は「低」)が記憶されているものとする。
PC100は、ステップS704で取得した仮想物体の属性626(危険度属性)を特定し、取得する(ステップS1101)。
そして、属性626に基づいて、当該仮想物体がどの程度危険か判定する(ステップS1102/危険度を特定する)。
危険度=高の場合は処理をステップS1103に移行する。危険度=中の場合には処理をステップS707に移行する。危険度=低の場合には処理をステップS708に移行する。
危険度=高の仮想物体とは、例えばそれ自体が高温になる部品の仮想物体である。つまり、たとえ接触していなくても、手や工具を接近させてはいけない(例:接触する程度まで近づけたら手をやけどする/熱くて手を接触させることができない)部品の仮想物体であるものとする。
危険度=中の仮想物体とは、例えばそれ自体が発熱・放熱しているものの、危険度=高の部品ほど高温ではなく、部品と手が接触して初めてやけどをする、熱さを感じるような部品の仮想物体である。つまり、触れさえしなければ、安全な部品であるものとする。
危険度=低の仮想物体とは、例えば発熱・放熱はしておらず、手を押し付けたとしてもやけどすることがない/特段の熱さを感じることがない部品の仮想物体であるものとする。
ステップS707では、ステップS704で取得した仮想物体の情報をモデル情報620から取得し、処理をステップS709に移行する。
また、ステップS708では、ステップS704で取得した仮想物体を0.8倍に縮小した接触判定用仮想物体を生成し、処理をステップS709に移行する。
ステップS1103で、PC100は、属性が「危険度=高」の仮想物体(例:図12の1200)を1.2倍に拡大・拡張した接触判定用仮想物体(例:図12の1210)を生成し、処理をステップS709に移行する。
つまり、危険度=高の仮想物体の接触判定用の条件を、当該仮想物体より大きい仮想物体との接触することを決定する。
ステップS709及びステップS710の処理は図7の説明で前述したため説明は省略する。以上が図11の説明である。
各危険度の仮想物体と、各危険度に応じた接触判定用仮想物体の一例を図12に示す。また、接触時の識別表示の一例を図13に示す。
1200は、危険度=高の仮想物体であり、1210は、危険度=高の仮想物体に対応する接触判定用仮想物体である。PC100は、1210と手1301が接触することで、仮想物体1200の色設定を、接触していることを示す色に変更する。
900は、危険度=中の仮想物体であり、接触判定用仮想物体も当該仮想物体と同じ大きさである。PC100は、900と手が接触することで、仮想物体900の色設定を、接触していることを示す色に変更する。
910は、危険度=低の仮想物体であり、920は、危険度=低の仮想物体に対応する接触判定用仮想物体である。PC100は、920と手が接触することで、仮想物体910の色設定を、接触していることを示す色に変更する。
図11の処理によれば、発熱・放熱、放電をしている等、手や工具を近づけると危険な仮想物体について、危険度の属性に応じて、当該仮想物体との接触にかかる条件を決定することが可能な仕組みを提供することができる。
以上説明したように、本発明によれば、仮想物体の属性に応じて、当該仮想物体との接触にかかる条件を決定することが可能な仕組みを提供することができる。
また、仮想物体の属性に応じて、当該仮想物体との接触にかかる報知をする仕組みを提供することができる。
なお、上述した実施形態においては、硬さや危険度のレベルに応じて、各レベルに応じた接触判定用仮想物体を生成するものとしたが、これ以外の方法を用いてもよい。
例えば仮想物体の温度を属性情報として記憶しておき、当該温度が40℃(人間が熱さを感じる温度の一例)を1℃超えるごとに1%ずつ接触判定用仮想物体を大きく生成するようにしてもよい。これにより、より細かな接触判定・接触判定の結果表示の調整が可能となる。
また、仮想物体の属性として当該仮想物体で表現される部品の材質を記憶しておき、当該材質に応じて接触判定用仮想物体を大きくしたり、小さくしたりするようにしてもよい。
例えば、熱や電気を帯びやすい材質Aの仮想物体は、危険度=高の場合と同様に、接触判定用仮想物体を対仮想物体比120%の大きさとする。
また、表面がざらざらとしていて触れると危険な材質Bの仮想物体については危険度=中の場合と同様に、接触判定用仮想物体を仮想物体と同じ大きさ(100%の大きさ)とする。
それ以外の材質Cの仮想物体については、接触判定用仮想物体を対仮想物体比80%の(仮想物体より小さい)大きさとする。
材質ごとに接触の条件を決定することで、硬さや危険度で接触の条件を決定できない部品についても、接触の条件を容易に変更・設定できる。
また、仮想物体の属性に応じて接触判定用仮想物体の全体の大きさを変えるのではなく、接触判定用仮想物体の一部だけの大きさを変更したり、幅を変更したりするようにしてもよい。
例えばコードのような配線の仮想物体の場合、単純に配線の仮想物体全体の大きさを小さくした接触判定用仮想物体を配置すると、等倍の大きさであれば繋がっていた配線及と、配線の接続元及び接続先が分離してしまい、適切な接触判定を行いことが想定される。
よって、仮想物体の属性626に、当該仮想物体の硬さや危険度に加えて、当該仮想物体の中の特定の部品(例えばコード)の識別情報と、当該部品の何の長さ(高さ・幅・奥行)を対象として接触判定用仮想物体の大きさを決定するかを記憶しておくことで、当該硬さや危険度に応じて、当該特定の部品の、特定の長さの値だけを大きく、又は小さくした接触判定用仮想物体を生成するようにしてもよい(例:コードであれば、コードの太さ(幅)を変えるだけとし、コードを短くはしない等)。
また、上述した実施形態においては、手と接触判定用仮想物体との接触を判定し、接触状態を識別表示するものとしたが、例えば工具の仮想物体等、他の仮想物体との接触判定を行うようにしてもよい。
また、上述した実施形態においては、手と接触した接触判定用仮想物体に仮想物体の色を変えるものとしたが、例えば、当該仮想物体の輪郭線を太くする等を行うことで、接触状態を識別可能としてもよい。
また、当該仮想物体だけでなく、手と接触した接触判定用仮想物体のフレームの色を変える等して、どの接触判定用仮想物体と接触したか/どの接触判定用仮想物体と接触したことでどの仮想物体と接触したと報知されたかを識別可能に表示するようにしてもよい。
また、図7のステップS704においては、HMD101との距離が近い順に仮想物体を取得するものとしたが、例えば、当該HMD101のユーザの手(接触判定を行う物体)との距離が近い順に仮想物体を取得し、ステップS705以降の処理を行うようにしてもよい。
また、HMD101はシースルー型のディスプレイを備える端末であってもよい。この場合、MR画像は、現実画像に仮想物体の描画データを重畳した画像ではなく、ディスプレイの大きさと同じ透明な画像に仮想物体の描画データを重畳した画像とする。当該MR画像を表示することで、ディスプレイを通して透けて見える現実と仮想物体が重なって見えるMRの世界を体感可能となる。
以上、本発明の実施形態について示したが、本発明は、例えば、システム、装置、方法、プログラムもしくは記録媒体等としての実施態様をとることが可能である。具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
例えば、図2に示すPC100の構成を全て備えるHMD101が、自機の機能をCPU201で実行して、上述した実施形態においてPC100の実行するものとして説明した処理の全てを、実行するようにしてもよい。
また、本発明におけるプログラムは、図に示す各フローチャートの各処理方法をコンピュータが実行可能なプログラムであり、本発明の記憶媒体は各フローチャートの各ステップの処理方法をコンピュータが実行可能なプログラムが記憶されている。なお、本発明におけるプログラムは図1の各装置の処理方法ごとのプログラムであってもよい。
以上のように、前述した実施形態の機能を実現するプログラムを記録した記録媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記録媒体に格納されたプログラムを読み出し実行することによっても、本発明の目的が達成されることは言うまでもない。
この場合、記録媒体から読み出されたプログラム自体が本発明の新規な機能を実現することになり、そのプログラムを記憶した記録媒体は本発明を構成することになる。
プログラムを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、CD-ROM、CD-R、DVD-ROM、磁気テープ、不揮発性のメモリカード、ROM、EEPROM、シリコンディスク、ソリッドステートドライブ等を用いることができる。
また、コンピュータが読み出したプログラムを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
また、本発明は、複数の機器から構成されるシステムに適用しても、1つの機器からなる装置に適用してもよい。また、本発明は、システムあるいは装置にプログラムを供給することによって達成される場合にも適用できることは言うまでもない。この場合、本発明を達成するためのプログラムを格納した記録媒体を該システムあるいは装置に読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。
さらに、本発明を達成するためのプログラムをネットワーク上のサーバ、データベース等から通信プログラムによりダウンロードして読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。
なお、上述した各実施形態およびその変形例を組み合わせた構成も全て本発明に含まれるものである。
100 PC
101 HMD
103 光学式マーカ
104 光学式センサ
150 ネットワーク

Claims (15)

  1. 仮想物体と現実画像とを表示するように制御する表示制御手段と、
    第1の仮想物体の危険度に関する属性に基づいて、前記第1の仮想物体と、ユーザの動きにより仮想空間上の位置姿勢が変化する第2の仮想物体との接触を判定するための条件を決定する決定手段と、
    前記決定手段により決定された条件により判定される前記第1の仮想物体と前記第2の仮想物体との接触状態を通知する通知手段と、
    を備え
    前記危険度に関する属性とは、前記第1の仮想物体にかかる温度に関する情報、前記第1の仮想物体にかかる放電の状態に関する情報、前記第1の仮想物体の手触りにかかる情報のうち少なくとも1つであることを特徴とする情報処理装置。
  2. 前記決定手段は、危険度が高い属性の前記第1の仮想物体との接触を判定するための条件として、前記第1の仮想物体よりも拡張した範囲に対して接触したか否かを判定する条件に決定することを特徴とする請求項1に記載の情報処理装置。
  3. 前記決定手段は、前記第1の仮想物体よりも危険度が高くない属性の第の仮想物体と前記第2の仮想物体との接触を判定するための条件として、前記第の仮想物体よりも拡張しない範囲に対して接触したか否かを判定する条件に決定することを特徴とする請求項に記載の情報処理装置。
  4. 仮想物体と現実画像とを表示するように制御する表示制御手段と、
    第1の仮想物体の危険度に関する属性に基づいて、前記第1の仮想物体と、ユーザの動きにより仮想空間上の位置姿勢が変化する第2の仮想物体との接触を判定するための条件を決定する決定手段と、
    前記決定手段により決定された条件により判定される前記第1の仮想物体と前記第2の仮想物体との接触状態を通知する通知手段と、
    を備え
    前記決定手段は、危険度が低い属性の前記第1の仮想物体との接触を判定するための条件として、危険度が低い前記第1の仮想物体よりも小さい範囲に対して接触したか否かを判定する条件に決定することを特徴とする情報処理装置。
  5. 前記危険度に関する属性とは、前記仮想物体にかかる温度、または、放電の状態に関する情報であることを特徴とする請求項1乃至4のいずれか1項に記載の情報処理装置。
  6. 前記危険度に関する属性とは、前記仮想物体の手触りにかかる情報であることを特徴とする請求項1乃至のいずれか1項に記載の情報処理装置。
  7. 前記危険度に関する属性とは、前記危険度を、3つ以上のレベルで分けた情報であることを特徴とする請求項1乃至のいずれか1項に記載の情報処理装置。
  8. 前記第1仮想物体との接触の判定に用いる接触判定用仮想物体を生成する生成手段を備え、
    前記決定手段は、前記第1の仮想物体の危険度に関する属性に応じた前記生成手段により生成された接触判定用仮想物体を、接触を判定する条件として決定することを特徴とする請求項1乃至のいずれか1項に記載の情報処理装置。
  9. 前記通知手段は、前記決定手段により決定された接触判定用仮想物体との接触を、前記第1の仮想物体との接触として通知することを特徴とする請求項に記載の情報処理装置。
  10. 前記通知手段は、前記第1の仮想物体の表示を変更することで、当該第1の仮想物体との接触を通知することを特徴とする請求項1乃至のいずれか1項に記載の情報処理装置。
  11. コンピュータを、請求項1乃至10のいずれか1項に記載された情報処理装置の各手段として機能させるためのプログラム。
  12. 仮想物体と現実画像とを表示するように制御する表示制御手段と、
    第1の仮想物体の危険度に関する属性に基づいて、前記第1の仮想物体と、ユーザの動きにより仮想空間上の位置姿勢が変化する第2の仮想物体との接触を判定するための条件を決定する決定手段と、
    前記決定手段により決定された条件により判定される前記第1の仮想物体と前記第2の仮想物体との接触状態を通知する通知手段と、
    を備え
    前記危険度に関する属性とは、前記第1の仮想物体にかかる温度に関する情報、前記第1の仮想物体にかかる放電の状態に関する情報、前記第1の仮想物体の手触りにかかる情報のうち少なくとも1つであることを特徴とする情報処理システム。
  13. 仮想物体と現実画像とを表示するように制御する表示制御手段と、
    第1の仮想物体の危険度に関する属性に基づいて、前記第1の仮想物体と、ユーザの動きにより仮想空間上の位置姿勢が変化する第2の仮想物体との接触を判定するための条件を決定する決定手段と、
    前記決定手段により決定された条件により判定される前記第1の仮想物体と前記第2の仮想物体との接触状態を通知する通知手段と、
    を備え
    前記決定手段は、危険度が低い属性の前記第1の仮想物体との接触を判定するための条件として、危険度が低い前記第1の仮想物体よりも小さい範囲に対して接触したか否かを判定する条件に決定することを特徴とする情報処理システム。
  14. 仮想物体と現実画像とを表示するように制御する表示制御工程と、
    第1の仮想物体の危険度に関する属性に基づいて、前記第1の仮想物体と、ユーザの動きにより仮想空間上の位置姿勢が変化する第2の仮想物体との接触を判定するための条件を決定する決定工程と、
    前記決定工程により決定された条件により判定される前記第1の仮想物体と前記第2の仮想物体との接触状態を通知する通知工程と、
    を備え
    前記危険度に関する属性とは、前記第1の仮想物体にかかる温度に関する情報、前記第1の仮想物体にかかる放電の状態に関する情報、前記第1の仮想物体の手触りにかかる情報のうち少なくとも1つであることを特徴とする情報処理システムの制御方法。
  15. 仮想物体と現実画像とを表示するように制御する表示制御工程と、
    第1の仮想物体の危険度に関する属性に基づいて、前記第1の仮想物体と、ユーザの動きにより仮想空間上の位置姿勢が変化する第2の仮想物体との接触を判定するための条件を決定する決定工程と、
    前記決定工程により決定された条件により判定される前記第1の仮想物体と前記第2の仮想物体との接触状態を通知する通知工程と、
    を備え
    前記決定工程は、危険度が低い属性の前記第1の仮想物体との接触を判定するための条件として、危険度が低い前記第1の仮想物体よりも小さい範囲に対して接触したか否かを判定する条件に決定することを特徴とする情報処理システムの制御方法。
JP2017148063A 2017-07-31 2017-07-31 情報処理装置、情報処理システム、その制御方法及びプログラム Active JP7111940B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017148063A JP7111940B2 (ja) 2017-07-31 2017-07-31 情報処理装置、情報処理システム、その制御方法及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017148063A JP7111940B2 (ja) 2017-07-31 2017-07-31 情報処理装置、情報処理システム、その制御方法及びプログラム

Publications (3)

Publication Number Publication Date
JP2019028772A JP2019028772A (ja) 2019-02-21
JP2019028772A5 JP2019028772A5 (ja) 2020-09-10
JP7111940B2 true JP7111940B2 (ja) 2022-08-03

Family

ID=65478559

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017148063A Active JP7111940B2 (ja) 2017-07-31 2017-07-31 情報処理装置、情報処理システム、その制御方法及びプログラム

Country Status (1)

Country Link
JP (1) JP7111940B2 (ja)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006075616A (ja) 1997-10-30 2006-03-23 Sega Corp コンピュータ読み取り可能な記憶媒体、電子装置、及び画像表示方法
JP2006244046A (ja) 2005-03-02 2006-09-14 Nintendo Co Ltd 衝突判定プログラムおよび衝突判定装置
JP2007179483A (ja) 2005-12-28 2007-07-12 Canon Inc 情報処理装置、情報処理方法
JP2007299075A (ja) 2006-04-27 2007-11-15 Sharp Corp 設計支援装置および設計支援方法
JP2011210019A (ja) 2010-03-30 2011-10-20 Namco Bandai Games Inc プログラム、情報記憶媒体及び画像生成装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006075616A (ja) 1997-10-30 2006-03-23 Sega Corp コンピュータ読み取り可能な記憶媒体、電子装置、及び画像表示方法
JP2006244046A (ja) 2005-03-02 2006-09-14 Nintendo Co Ltd 衝突判定プログラムおよび衝突判定装置
JP2007179483A (ja) 2005-12-28 2007-07-12 Canon Inc 情報処理装置、情報処理方法
JP2007299075A (ja) 2006-04-27 2007-11-15 Sharp Corp 設計支援装置および設計支援方法
JP2011210019A (ja) 2010-03-30 2011-10-20 Namco Bandai Games Inc プログラム、情報記憶媒体及び画像生成装置

Also Published As

Publication number Publication date
JP2019028772A (ja) 2019-02-21

Similar Documents

Publication Publication Date Title
JP7079231B2 (ja) 情報処理装置及び情報処理システム及び制御方法、プログラム
Kim et al. Touch and hand gesture-based interactions for directly manipulating 3D virtual objects in mobile augmented reality
Kharlamov et al. TickTockRay: smartwatch-based 3D pointing for smartphone-based virtual reality
US10614590B2 (en) Apparatus for determination of interference between virtual objects, control method of the apparatus, and storage medium
JP7060778B2 (ja) 情報処理システム、情報処理システムの制御方法及びプログラム
JP2015125641A (ja) 情報処理装置、その制御方法、及びプログラム
JP6004051B2 (ja) 情報処理システム、その制御方法、及びプログラム、並びに、情報処理装置、その制御方法、及びプログラム
JP6409861B2 (ja) 情報処理装置、情報処理システム、その制御方法及びプログラム
JP2016122392A (ja) 情報処理装置、情報処理システム、その制御方法及びプログラム
JP6871501B2 (ja) 情報処理装置、情報処理システム、その制御方法及びプログラム
JP7273325B2 (ja) 情報処理装置、情報処理システム、情報処理方法及びプログラム
JP7111940B2 (ja) 情報処理装置、情報処理システム、その制御方法及びプログラム
US20230267667A1 (en) Immersive analysis environment for human motion data
JP6357412B2 (ja) 情報処理装置、情報処理システム、情報処理方法、及びプログラム
JP6810342B2 (ja) 情報処理装置、情報処理システム、その制御方法及びプログラム
JP6376251B2 (ja) 情報処理装置、情報処理システム、その制御方法及びプログラム
JP2019012334A (ja) 情報処理装置、情報処理システム、その制御方法及びプログラム
JP7116334B2 (ja) 情報処理装置、情報処理システム、その制御方法及びプログラム
JP6164177B2 (ja) 情報処理装置、情報処理システム、その制御方法及びプログラム
US20200042157A1 (en) Tablet computing device with display dock
JP6734537B2 (ja) 情報処理装置、その制御方法、及びプログラム、並びに、情報処理システム、その制御方法、及びプログラム
JP7029087B2 (ja) 情報処理装置、情報処理システム、その制御方法及びプログラム
JP6744543B2 (ja) 情報処理システム、その制御方法、及びプログラム
JP2023160579A (ja) 情報処理装置、情報処理方法及びプログラム
JP6741939B2 (ja) 情報処理装置、情報処理システム、その制御方法及びプログラム

Legal Events

Date Code Title Description
RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20180703

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20181031

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20190115

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200728

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200728

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210412

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210420

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210617

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20211130

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220121

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20220621

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220704

R151 Written notification of patent or utility model registration

Ref document number: 7111940

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151