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

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

Info

Publication number
JP2016115230A
JP2016115230A JP2014254826A JP2014254826A JP2016115230A JP 2016115230 A JP2016115230 A JP 2016115230A JP 2014254826 A JP2014254826 A JP 2014254826A JP 2014254826 A JP2014254826 A JP 2014254826A JP 2016115230 A JP2016115230 A JP 2016115230A
Authority
JP
Japan
Prior art keywords
image
mode
virtual object
mixed reality
resolution
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.)
Pending
Application number
JP2014254826A
Other languages
English (en)
Inventor
利光 向井
Toshimitsu Mukai
利光 向井
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 JP2014254826A priority Critical patent/JP2016115230A/ja
Publication of JP2016115230A publication Critical patent/JP2016115230A/ja
Pending legal-status Critical Current

Links

Images

Abstract

【課題】解像度のモードに応じて、複合現実における画像の出力方法を容易に切替え可能な仕組みを提供すること【解決手段】撮像位置の情報を取得し、撮像された画像を記憶し、撮像位置と仮想オブジェクトの位置姿勢に基いて画像に仮想オブジェクトを重畳した複合現実画像を生成し、低解像度の複合現実画像を出力する低解像度モードと、高解像度の画像を出力する高解像度モードとのいずれのモードが設定されているか特定し、低解像度モードが設定されていることが特定された場合に低解像度の複合現実画像を出力し、高解像度モードが設定されていることが特定された場合に高解像度の画像を出力する【選択図】図6

Description

情報処理装置、情報処理システム、その制御方法及びプログラムに関する。
近年、複合現実(Mixed Reality/以下、MRと記載)の技術が普及し、MR技術を用いて、室内に、現実物体とCGモデルが配置されることが行われている。
特許文献1には、ヘッドマウントディスプレイ(以下、HMD)に搭載されたカメラでマーカを撮像し、当該撮像したマーカの絶対座標と、画像から検出されたマーカ位置(クラスタ重心)とからHMDの位置・姿勢を検出して、当該位置姿勢に応じた、CGモデルを重畳した複合現実画像を生成する技術が開示されている。
特許文献2では、ユーザが注視した場所を特定して、当該注視した場所の画像を高解像度に変更する技術が記載されている。
特開2000−350860号公報 特開平10−326071号公報
また、複合現実の実現に際して、特許文献2の技術を用いて画像の解像度を調整することが考えられる。高解像度の画像を用いて複合現実画像を生成すべく、現実画像にCGモデルを重畳して描画使用とした場合、画素数の違いやメモリ上の処理領域の確保が難しくなることから、低解像度の画像を用いた複合現実画像を生成するのに比べて処理負荷が高くなってしまう。
しかし、常に低解像度の画像をHMDに表示させていると、表示された物体を十分に視認できない場合がある。
本発明は、解像度のモードに応じて、複合現実における画像の出力方法を容易に切替え可能な仕組みを提供することを目的とする。
本発明の情報処理装置は、撮像装置と、画像を表示する表示装置と通信可能な、仮想空間上に配置されるオブジェクトである仮想オブジェクト及び当該仮想オブジェクトを配置する位置姿勢を記憶する記憶機能を備える情報処理装置であって、画像を撮像する位置である撮像位置の情報を取得する撮像位置取得手段と、前記撮像位置取得手段で取得した前記撮像位置から撮像された画像を記憶する画像記憶手段と、前記撮像位置取得手段で取得された撮像位置と、前記仮想オブジェクト及び仮想オブジェクトを配置する位置姿勢の情報に基いて、前記画像記憶手段に記憶された画像に仮想オブジェクトを重畳した複合現実画像を生成する複合現実画像生成手段と、画像を前記表示装置に表示させるべく出力する出力手段と、前記出力手段で、前記複合現実画像生成手段で生成された低解像度の複合現実画像を出力する低解像度モードと、前記画像記憶手段から取得された高解像度の画像を出力する高解像度モードとのいずれのモードが設定されているか特定するモード特定手段と、を備え、前記出力手段は、前記モード特定手段で前記低解像度モードが設定されていることが特定された場合に、前記複合現実画像生成手段で生成された低解像度の複合現実画像を出力し、前記モード特定手段で前記高解像度モードが設定されていることが特定された場合に、前記画像記憶手段から取得された高解像度の画像を出力することを特徴とする。
本発明によれば、解像度のモードに応じて、複合現実における画像の出力方法を容易に切替え可能な仕組みを提供することができる。
本発明の実施形態における、情報処理システムの構成の一例を示す図である。 本発明の実施形態における、PC100、HMD101のハードウェア構成の一例を示す図である。 本発明の実施形態における、各種装置の機能構成の一例を示す図である。 本発明の第1の実施形態における、モード設定処理の概要を示すフローチャートである。 本発明の実施形態における、画像の取得処理の詳細を示すフローチャートである。 本発明の実施形態における、表示画像の生成・送信処理の詳細を示すフローチャートである。 本発明の実施形態における、画像の様子を示す画像の一例を示す図である。 本発明の実施形態における、各種データテーブルの構成の一例を示す図である。 本発明の第2の実施形態における、モード設定処理の詳細を示すフローチャートである。 本発明の第2の実施形態における、データテーブルの構成の一例を示す図である。 本発明の第3の実施形態における、モード設定処理の詳細を示すフローチャートである。 本発明の第3の実施形態における、データテーブルの構成の一例を示す図である。 本発明の第4の実施形態における、モード設定処理の詳細を示すフローチャートである。 本発明の第4の実施形態における、データテーブルの構成の一例を示す図である。 本発明の実施形態における、データテーブルの構成の一例を示す図である。 本発明の実施形態における、開閉部の開閉の様子の一例を示す図である。 本発明の実施形態における、開閉部の開閉の様子の一例を示す図である。 本発明の実施形態における、開閉部の開閉の様子の一例を示す図である。 本発明の実施形態における、HMDの位置・姿勢、現実物体の位置、HMDの向いているベクトルに向けての所定範囲の位置関係の一例を示す図である。 本発明の実施形態における、HMDの位置・姿勢、現実物体の位置、HMDの向いているベクトルに向けての所定範囲、HMDから見て開閉部より先の所定距離範囲の関係の一例を示す図である。 本発明の実施形態における、画像の様子を示す画像の一例を示す図である。 本発明の実施形態における、開閉部の開閉状態に応じた仮想オブジェクトの描画領域の変化の様子を示す画像の一例を示す図である。 本発明の第5の実施形態における、画像切替処理の詳細を示すフローチャートである。
図1を参照して、本発明の実施形態における、情報処理システムの構成の一例について説明する。図1は、本発明の実施形態における、情報処理システムの構成の一例を示す図である。
本発明の情報処理システムは、PC100、HMD101(ヘッドマウントディスプレイ101)、マーカ102、仮想オブジェクト103、現実物体105等から構成される。PC100とHMD101(表示装置)は、図1に示すLAN150や、USB(Universal Serial Bus)等を介して相互にデータ通信可能に接続されている。
マーカ102には、MR空間(複合現実空間)上の位置情報が対応付けられており、HMD101に搭載されるビデオカメラでマーカ102を撮像することで、当該撮像されたマーカ102の中心点とマーカ102の面積(画像中の大きさ)を用いて、HMD101のMR空間上の位置・姿勢(撮像方向)を特定することが可能である。
本実施形態においては、マーカの位置=マーカの中心点とする。また、本実施形態においては、当該位置・姿勢の特定処理はPC100のCPUが実行するものとする。マーカ102の位置・面積・識別応報は、PC100の外部メモリに予め記憶されているものとする。
また、図1にはマーカがマーカ102のみ記載されているが、例えば、複数のマーカをHMDの周辺(MR空間を設定する現実空間上の壁・床等)に配置して、各マーカに位置情報を対応付けてPC100の外部メモリに記憶しておき、当該マーカのいずれかを撮像することで、HMD101のMR空間上の位置・姿勢を特定することが可能である。HMD101の位置・姿勢の方法はどのようなものでも構わない。
尚、本発明の実施形態において、マーカ102は、HMD101がMR空間上にある現実物体に接近したか否かの判定にも用いられるものとする。当該判定、及び判定結果に応じた処理については後述する。
また、PC100の外部メモリには、MR空間上に配置するCG(仮想オブジェクト)の情報がMR空間上の位置・姿勢の情報と対応付けて記憶されている。PC100は、HMD101のビデオカメラにより撮像された画像を取得して、当該HMD101の位置・姿勢の情報を用いて、当該取得した画像に、CG(仮想オブジェクト)の画像を重畳して、MR画像(重畳画像/複合現実画像)を生成する(複合現実画像生成)。
PC100は当該MR画像をHMD101に送信して、HMD101はディスプレイに当該MR画像を表示する。
上述した、HMD101の位置及び姿勢の特定・算出の具体的な方法、及び、MR画像の生成方法は既知の技術であり、例えば、参考文献(特開2000−350860号公報)にも記載されているため、ここでは説明を割愛する。
なお、HMD101は撮影モード(モード情報)の設定に応じて、高解像度モードが設定されている場合は高解像度の画像を撮像し、低解像度モードの場合は低解像度の画像を撮像する。また、PC100は、高解像度モードが設定されている場合は高解像度の画像をHMD101に出力し、低解像度モードの場合は低解像度の画像(低解像度の画像を基に作成したMR画像)をHMD101に出力する。
仮想オブジェクト103は、MR空間上に配置されたCGモデルである。当該仮想オブジェクト103は、PC100の外部メモリに、MR空間上の位置の情報と対応付けて記憶されている。
例えば、MRの技術を用いて、機械の内部機構(例えばエンジン)としての現実物体105と、当該内部機構を覆う外装板としての仮想オブジェクト103のようなCGを、HMD101に表示し、実際に現実物体としての外装板が取り付けられた場合に、当該内部機構の整備を行う整備者が当該内部機構の整備を行うことができるかシュミレーションすることが考えられる。
しかしながら、上述したように、解像度の低い画像では、仮想オブジェクト103の開閉部(開閉機構)に整備者の腕が入るか否か程度のおおまかな状態については、HMD101のディスプレイにMR画像を表示させ、HMD101を装着したユーザが開閉部(開閉機構)の開いた箇所に腕を入れこむことで確認可能だが、ねじ穴のような細かい部分については、画像が荒いために確認が難しい。
かといって、単純に高解像度の画像を用いてMR画像を生成しようとすれば、処理負荷が高くなり、画像の表示が遅くなってしまう可能性がある。
これに対し、本発明の第1の実施形態においては、例えば、撮影モードの設定が低解像度モードに設定されている場合にはMR画像を生成してHMD101のディスプレイに出力し、高解像度モードに設定されている場合には現実物体の詳細をユーザに確認させるべく、現実画像をHMD101のディスプレイに出力する処理を行う。
以上が図1の、本発明の実施形態における、情報処理システムの構成の一例についての説明である。
次に図2を参照して、本発明の実施形態における、PC100、HMD101のハードウェア構成の一例について説明する。図2は、本発明の実施形態における、PC100、HMD101のハードウェア構成の一例を示す図である。尚、図2のPC100とHMD101のハードウェアの構成は一例であり、用途や目的に応じて様々な構成例がある。
まず、PC100は、CPU201、ROM202、RAM203、システムバス204、入力コントローラ205、ビデオコントローラ206、メモリコントローラ207、通信I/Fコントローラ208、入力デバイス209、ディスプレイ210、外部メモリ211等を備える。
CPU201は、システムバス204に接続される各デバイスやコントローラを統括的に制御する。
また、ROM202あるいは外部メモリ211には、CPU501の制御プログラムであるBIOS(Basic Input / OutputSystem)やオペレーティングシステムや、各種装置の実行する機能を実現するために必要な後述する各種プログラム等が記憶されている。RAM203は、CPU201の主メモリ、ワークエリア等として機能する。
CPU201は、処理の実行に際して必要なプログラム等をRAM203にロードして、プログラムを実行することで各種動作を実現するものである。
また、入力コントローラ(入力C)205は、キーボードやマウス250等のポインティングデバイスからの入力を制御する。
ビデオコントローラ(VC)206は、ディスプレイ210等の表示器への表示を制御する。表示器は液晶ディスプレイでもCRTでも構わない。
メモリコントローラ(MC)207は、ブートプログラム、ブラウザソフトウエア、各種のアプリケーション、フォントデータ、ユーザファイル、編集ファイル、各種データ等を記憶するハードディスク(HD)やフレキシブルディスク(FD)或いはPCMCIAカードスロットにアダプタを介して接続されるカード型メモリ等の外部メモリ211へのアクセスを制御する。
通信I/Fコントローラ(通信I/FC)208は、ネットワークを介して、外部機器と接続・通信するものであり、ネットワークでの通信制御処理を実行する。例えば、TCP/IPを用いたインターネット通信等が可能である。
尚、CPU201は、例えばRAM203内の表示情報用領域へアウトラインフォントの展開(ラスタライズ)処理を実行することにより、ディスプレイ210上での表示を可能としている。また、CPU201は、ディスプレイ210上の不図示のマウスカーソル等でのユーザ指示を可能とする。
本発明のPC100が後述する各種処理を実行するために用いられる各種プログラム等は外部メモリ211に記録されており、必要に応じてRAM203にロードされることによりCPU201によって実行されるものである。さらに、本発明に係わるプログラムが用いる定義ファイルや各種情報テーブルは外部メモリ211に格納されている。
次に、HMD101は、右目ビデオカメラ221、左目ビデオカメラ222、右目ディスプレイ223、左目ディスプレイ224、コントローラ225等を備える。
右目ビデオカメラ221と、左目ビデオカメラ222は、現実世界を撮影するビデオカメラである。右目ビデオカメラ221は、右目ディスプレイ223に表示するための画像を撮影し、左目ビデオカメラ222は、左目ディスプレイ224に表示するための画像を撮影する。撮影された画像(現実空間画像)は、コントローラ225がPC100に送信し、通信I/Fコントローラ208を通じてPC100が受信する。
PC100から通信I/Fコントローラ208を通じて複合現実画像が送信されると、コントローラ225が受信し、受信した複合現実画像を右目ディスプレイ223と左目ディスプレイ224に表示させる。この時、右目ビデオカメラ221で撮影された現実空間画像に基づいて生成された複合現実画像は、右目ディスプレイ223に表示し、左目ビデオカメラ222で撮影された現実空間画像に基づいて生成された複合現実画像は、左目ディスプレイ224に表示する。以上が図2の、本発明の実施形態における、PC100、HMD101のハードウェア構成の一例についての説明である。
次に図3を参照して、本発明の実施形態における、各種装置の機能構成の一例について説明する。図3は、本発明の実施形態における、各種装置の機能構成の一例を示す図である。
PC100は、オブジェクトの描画位置を特定するPlatformアプリケーションと、当該特定した情報を用いてオブジェクトを描画し、MR画像を生成するViewerアプリケーションを備える。
撮像処理部311は、現実画像を撮像して取得する。撮像画像送信部312は、撮像した現実画像(撮像画像)をPC100に送信する。
撮像画像受信部301は、HMD101の撮像処理部で撮像された画像(現実画像/撮像画像)であって、撮像画像送信部312で送信された現実画像を受信する受信部である。位置姿勢特定部302は、例えば、HMD101から受信した現実画像に写るマーカ(例えばマーカ102)の中心点の位置・面積からHMD101の位置・姿勢を特定する。
モード変更処理部303は、たとえばユーザからの操作指示に応じて撮影モードを変更・設定する処理部である。モード判定部304は、撮影モードが高解像度モードか低解像度モードかを判定する。
仮想オブジェクト記憶部305は、仮想オブジェクト(CGモデル)を、MR空間上の位置と対応付けて記憶する記憶部である。当該MR空間上の位置は、別途PC100の外部メモリに記憶されたMR空間上の原点座標からの相対位置である。
仮想オブジェクト表示制御部306は、仮想オブジェクトの表示・非表示を制御する制御部である。つまり、MR画像を生成するか否かを決定する。
例えば、高解像度モードの場合、MR画像の生成処理による処理負荷が増大すると考えられるため、仮想オブジェクトの表示(MR画像のHMD101への出力)は不要とする。仮想オブジェクトの全部又は一部を表示しない高解像度の現実画像をHMD101に送信する。低解像度モードの場合、現実物体周辺の(HMD101の視野角内の)仮想オブジェクトを表示したMR画像を生成してHMD101に送信するものとする。
MR画像生成部307は、MR画像を生成する生成部である。画像送信部308は、HMD101に、現実画像、又は、現実画像を用いて生成したMR画像を送信する送信部である。
画像受信部313は、画像の受信処理部である。画像表示部314は、画像の表示処理部である。以上が図3の説明である。
次に図8を参照して、本発明の実施形態における、各種データテーブルの構成の一例について説明する。図8は、本発明の実施形態における、各種データテーブルの構成の一例を示す図である。図8の各種データは、PC100の外部メモリに記憶されている。
HMD位置姿勢情報800は、HMDの位置801、姿勢802から構成されている。HMD位置姿勢情報800は、PC100のCPU201が、例えば、HMD101から取得する画像の中のマーカの中心位置(中心点)・面積などを用いて随時算出し、当該算出された値に随時更新されるものとする。
被写体情報810は、被写体である現実物体の位置情報を示す。ここでは、現実物体に添付されたマーカの位置=現実物体の位置とする。マーカID811は、マーカを一意に識別するための識別情報である。位置812は、当該マーカのMR空間上の位置の情報である。当該被写体情報810は、PC100の外部メモリに予め記憶されているものとする。
尚、上述した図8の説明においては、被写体情報810は=HMD101のカメラで撮像された現実画像中のマーカ画像(HMD101の位置姿勢、画像中のマーカの画像の大きさ・ベクトル等)から特定された、現実物体に添付されたマーカの位置=現実物体のMR空間上の位置とするものとしたが、現実物体の位置が確認できればよいため、例えば予めPC100の外部メモリに現実物体のMR空間上の位置情報として被写体情報810に示す情報を記憶しておき、当該記憶している情報を被写体情報810の代わりに利用して、PC100のCPU201が本発明の各フローチャートの処理を実行するようにしてもよい。
仮想オブジェクト情報820は、仮想オブジェクトの識別情報であるオブジェクトID821と、位置822(位置姿勢)を対応付けて記憶している。仮想オブジェクト情報820は、PC100の外部メモリに予め記憶されているものとする(記憶機能に該当)。
モード情報830は、前述した撮影モードの設定(モード設定)の情報である。モード情報830には現在設定中のモードが記憶される。当該モード情報830は、例えば後述する図4の処理で設定・変更可能であり、PC100の外部メモリに記憶されているものとする。
以上が図8の、本発明の実施形態における、各種データテーブルの構成の一例についての説明である。
以下、図4〜図7を用いて、本発明の第1の実施形態について説明する。
次に図4を参照して、本発明の実施形態における、本発明の第1の実施形態における、モード設定の概要について説明する。
PC100のCPU201は、ユーザ指示に応じて不図示のモード設定画面を表示画面に表示し(ステップS401)、高解像度モードまたは低解像度モードのいずれかにモード情報を変更する指示を受け付けたか判定する(ステップS402)。変更指示を受け付けていない場合(ステップS402でNO)、処理を終了し、現在設定中のモードの情報を保持する。
変更指示を受け付けた場合(ステップS402でYES)、PC100のCPU201は、高解像度モードへの設定変更の指示を受け付けたか低解像度モードへの設定変更の指示を受け付けたか判定する。
高解像度モードへの設定変更の指示を受け付けた場合、モード情報830を高解像度モードに変更して外部メモリに記憶する。低解像度モードへの設定変更の指示を受け付けた場合、モード情報830を低解像度モードに変更して外部メモリに記憶する。つまり、モード情報830を更新する。以上が図4の説明である。
次に図5を参照して、本発明の実施形態における、画像の取得処理の詳細について説明する。
PC100のCPU201は、外部メモリに記憶されているモード情報830を取得してHMD101に送信する(ステップS501)。HMD101は当該モード情報830を取得し(ステップS502)、当該モード情報830が高解像度モードか低解像度モードか判定する(ステップS503)。
高解像度モードの場合、HMD101はビデオカメラの設定を高解像度画像の撮像設定に切り替えて高解像度の画像を撮像し、取得する(ステップS504)。低解像度モードの場合、ビデオカメラの設定を低解像度画像の撮像設定に切り替えて低解像度の画像を撮像し、取得する(ステップS505)。
HMD101は、撮像画像(ステップS504で取得した高解像度画像またはステップS505で取得した低解像度画像/現実画像)をPC100に送信し(ステップS506)、PC100のCPU201がこれを受信してメモリに記憶し(ステップS507/画像記憶手段に該当)、HMD101に表示させる表示画像の生成・送信処理を実行する(ステップS508)。ステップS508の詳細については図6の説明で後述する。以上が図5の説明である。
次に図6を参照して、本発明の実施形態における、表示画像の生成・送信処理の詳細について説明する。
PC100のCPU201は、図5のステップS506で受信した画像をメモリより取得し(ステップS601)、モード情報830を取得してモードが高解像度モードか低解像度モードか判定する(ステップS602/モード特定手段に該当)。低解像度モードである場合、図5のステップS506で受信しステップS601で取得した低解像度画像を用いてMR画像を生成する(ステップS604)。例えば、図7の700のようなMR画像を生成する。
MR画像の生成手法については特許文献1に示したように既知の技術であるため詳細な説明は割愛する。ここでは、例えば特許文献1に記載の技術を用いてMR画像を生成するものとする。
PC100のCPU201は、生成したMR画像をHMD101に表示させるべく(HMD101のディスプレイに表示させる表示画像として決定し)HMD101に送信する(ステップS605)。
一方、ステップS604で、モードが高解像度モードであると判定された場合、図5のステップS506で受信しステップS601で取得した高解像度画像(現実画像)を、HMD101のディスプレイに表示させる表示画像として決定する。例えば、図7の710にしめすような、仮想オブジェクトを描画しない(CGモデルを重畳しない)高解像度の現実画像をHMD101に送信する画像(高解像度画像)とする。そして、当該高解像度画像をHMD101に送信する(ステップS603)。
HMD101はステップS604で送信されたMR画像またはステップS603で送信された高解像度画像(現実画像)を受信して(ステップS606)、表示画面に表示する(ステップS607)。以上が図6の説明である。
以上、本発明の第1の実施形態について説明した。
以上説明したように、本発明の第1の実施形態によれば、解像度のモードに応じて、複合現実における画像の出力方法を容易に切替え可能な仕組みを提供することができる。
次に図9、図10を参照して、本発明の第2の実施形態について説明する。
本発明の第2の実施形態においては、第1の実施形態の図4の説明において、ユーザの手動で設定・変更されたに撮影モードを、HMDと現実物体との距離に応じて変更する。
例えば仮想空間上で現実物体に重なって仮想オブジェクトが配置されている状態で、現実物体の詳細を確認するためにHMDが(ユーザが)現実物体に近づいた場合、現実物体重なって配置されている仮想オブジェクトを大きく表示(描画)する必要があるため、処理負荷が増大してしまう。一方、HMDとの距離が離れている場合は仮想オブジェクトが小さく見えるようにMR画像を生成するため、HMDに表示する画像の中で仮想オブジェクトの画像が占める割合が少ないことが考えられる。
よって第2の実施形態においては、例えば、仮想オブジェクトが重なった現実物体との距離が近く、仮想オブジェクトを大きく描画しなければならないために生じる描画処理の処理負荷を軽減するために、HMDと現実物体の距離が所定距離以内である場合に高解像度モードに設定を変更し、HMDと現実物体の距離が所定距離より離れている場合に低解像度モードに設定を変更する。
次に図9を参照して、本発明の第2の実施形態における、モード設定処理の詳細について説明する。
第2の実施形態においては、第1の実施形態における図4の処理の代わりに図9の処理を(PC100のCPU201が)実行する。図5、図6等の処理については第1の実施形態と同様であるため、説明は割愛する。以下、第1の実施形態と共通する処理については説明を割愛する。
PC100のCPU201は、HMD101の位置と姿勢の情報(図8のHMD位置姿勢情報800)を取得(計測)する(ステップS901/撮像位置取得手段)。そして観察対象である仮想オブジェクトと重なっている現実物体105の位置情報を取得する(ステップS802)。例えば、ここではマーカ102の位置=現実物体105の位置(図8の位置812の情報)とし、現実物体105の位置である当該位置812を取得する。また、当該現実物体105の位置812に重なる仮想オブジェクトを、仮想オブジェクト情報820より特定する。つまり、仮想オブジェクトID821の示す仮想オブジェクトを位置822に配置した場合に、仮想オブジェクトの形状から、当該仮想オブジェクトの一部が現実物体105(現実物体105の位置812)に重なるかを算出する。そして現実物体105と重なる仮想オブジェクトを特定して、ステップS802で当該現実物体105と重なる仮想オブジェクトの位置を取得するものである。
PC100のCPU201は、HMD101の位置から仮想オブジェクトと重なる現実物体105の位置(マーカ102の位置)までの距離を算出し(ステップS903/距離特定手段)、撮影モードを切替える条件(使用する画像を切替える条件)である切替条件1000を取得する(ステップS804)。
切替条件1000は、PC100のCPU201が、撮影モード(モード情報830)を低解像度モードから高解像度モードに、高解像度モードから低解像度モードに切替える距離の閾値(条件)を記憶している。切替条件1000は、PC100の外部メモリに予め記憶されているものとする。
ここでは、HMD101の位置である位置801と、被写体情報810の位置812が示す現実物体の位置との距離が、距離1001以内になった場合に、モード情報830を高解像度モードに設定(変更)する。また、位置801と位置812の距離が、距離1001より大きくなった場合に、モード情報830を低解像度モードに設定(変更)する。
また、角度1002に角度を示す数値が挿入(記憶)されている場合、HMD101の位置801及び姿勢802と、現実物体の位置である位置812を用いて、現実物体(位置812の示す位置)が、HMD101の向いているベクトル(姿勢ベクトル)に向けての所定範囲内(図19における範囲1901)にあるかどうかを、角度1002の値を用いてPC100のCPU201が判定し、位置801と位置812の距離が距離1001以内であって、且つ、現実物体(位置812の示す位置)が、HMD101の向いているベクトルに向けての所定範囲内にある場合に、モード情報830を低解像度モードから高解像度モードに切替える(変更する)。
図19は、HMD101の位置・姿勢(姿勢ベクトル)、現実物体の位置(例えばマーカ102の位置)、HMD101の向いているベクトルに向けての所定範囲(範囲1901)の位置関係の一例を示している。
PC100のCPU201は、HMDの位置801と現実物体の位置812の距離が距離1001より大きい場合、又は、位置801と位置812の距離が距離1001以内であっても現実物体(位置812の示す位置)が、HMD101の所定範囲内(範囲1901)にない場合には、モードを高解像度モードから低解像度モードに切替える(変更する)ものとする。
現実物体(位置812の示す位置)が、HMD101の所定範囲内(範囲1901)にある場合とは、例えば、HMD101の視野(HMD101に設置されたカメラの画角内)に現実物体があるということである。反対に、現実物体(位置812の示す位置)が、HMD101の所定範囲内(範囲1901)にない場合とは、例えば、HMD101の視野(HMD101に設置されたカメラの画角内)に現実物体がないということである。
つまり、HMD101の視野内(ユーザの視野内)に現実物体があるか否か(ユーザが現実物体の詳細を確認しようとしているか否か)に応じて低解像度モードを用いたMR画像の生成・送信処理と、高解像度モードを用いたMR画像の生成・送信処理を使い分けることができる。
当該現実物体105(マーカ102)がHMD101の所定範囲内(範囲1901)にあるか否かの判定方法については後述する。
図9の説明に戻る。PC100のCPU201は、HMD101の位置から現実物体105の位置までの距離が、所定の距離(切替条件1000における距離1001)以内か判定し(ステップS905/HMD101の位置から現実物体105の位置までの距離の値が所定の値に達したか(達しているか)判定/距離判定手段に該当)、所定の距離以内でない場合(ステップS905でNO)、撮影モード(モード情報830)を低解像度モードに変更する(ステップS911)。
HMD101の位置から現実物体105の位置までの距離が、所定の距離以内の場合(ステップS905でYES)、処理をステップS906に移行し、HMD101から現実物体の位置812への向きベクトルを算出する(ステップS906)。
そして、HMD101の姿勢ベクトルである姿勢802(図8)の値を取得して、姿勢802の示すベクトルと、HMD101から現実物体の位置812への向きベクトルの成す角度を算出する(ステップS907)。
PC100のCPU201は、HMD101の向いている方向における所定範囲内(範囲1901内)に、現実物体105(マーカ102)が含まれるか判定すべく、当該判定の基準となる角度の情報(図10の角度1002)を取得する(ステップS908)。
そして、ステップS907で算出した角度が、角度1002(ここでは30°)以内か判定し(ステップS909/範囲判定手段/所定の範囲内か判定し))、30°以内である場合(ステップS909でYES)、現実物体がHMD101の向いている方向の所定範囲(範囲1901)内にあるものと判断し、処理をステップS910に移行する。
ステップS907で算出した角度が、30°以内でない場合(ステップS909でNO)、現実物体がHMD101の向いている方向の範囲(範囲1901)内にない(つまり、ユーザは現実物体の詳細を確認しようとしていない=現実物体の画像を精細に表示する必要がない)ものと判断し、処理をステップS911に移行する。
ステップS910では、PC100のCPU201は、撮影モード(モード情報830)を高解像度モードに変更する(ステップS910)。そして、第1の実施形態同様、図5、図6の処理を実行する。
以下、上述した距離・角度の値の具体的な計算方法について記載する。
HMDの位置をHpx,Hpy,Hpz、姿勢(向き/姿勢ベクトル/方向単位ベクトル)をHdx,Hdy,Hdzとする。また、現実物体の位置(現実物体に付加されたマーカ(例えばマーカ102)の位置)をTpx,Tpy,Tpzとする。
HMDと現実物体の距離Dは
Figure 2016115230
で求まる。
また、HMDが現実物体を真正面に見た場合の姿勢(方向単位ベクトル)Dx,Dy,Dzは
Figure 2016115230
で求まる。
HdとDの成す角度θが小さければHMDが正面に近い向きであることが計算できる。例えば、ここで0≦θ≦180とすると
Figure 2016115230
でθを求めることができる。
以上が図9の説明である。
本発明の第2の実施形態によれば、HMDと現実物体との距離に応じて変更される解像度のモードに応じて、複合現実における画像の出力方法を容易に切替え可能な仕組みを提供することができる。
次に、本発明の第3の実施形態について説明する。
本発明の第3の実施形態においては、カメラ(HMD)の向いている方向に位置する開閉部の開閉に応じて、高解像度モードと低解像度モードを切替える処理を行う。
例えば、仮想オブジェクトの開閉部が開いた場合(開閉部を開く操作を受け付けた場合/開いている状態の場合)、ユーザが、当該開閉部の先にある現実物体の画像をより詳細に確認したいと考えられる。また、仮想オブジェクトの開閉部が開かれたことで、(図22に示すように)開閉部が閉まっているときよりも仮想オブジェクトを描画する画像上の面積が増加してしまうため、当該描画の処理負荷を低減して高解像度の画像をユーザに提示すべく撮影モードを高解像度モードに変更する。
ここで図11を参照して、本発明の第3の実施形態における、モード設定処理の詳細について説明する。
尚、図11の処理は上述した第1の実施形態における図4の処理の代わりにPC100のCPU201により実行される。図5、図6の各処理(第1の実施形態と共通の処理)の内容は、第1の実施形態で説明した内容と同一のため、説明は割愛する。
PC100のCPU201は、HMD101の位置を取得し(位置取得手段)、HMD101の向いている方向(HMD101に設置されたカメラの向いている方向)に開閉部が存在するか判定する(ステップS1101)。
当該開閉部が存在するか否かの判定は、例えば、HMD101の位置及び姿勢のベクトルと、開閉部のMR空間上の位置情報を用いて行われる。当該開閉部のMR空間上の位置の情報は、図12のように、PC100の外部メモリに予め記憶されている。当該開閉部が画像中にあるかどうかは、例えば、上述した第1の実施形態における、現実物体の位置(Tpx,Tpy,Tpz)を開閉部位置902に置き換える(開閉部位置=Tpx,Tpy,Tpzとする)ことで特定・判定するものとする。
ここで図12を参照して、本発明の第3の実施形態における、データテーブルの構成の一例について説明する。
図12のデータテーブル1200は、PC100の外部メモリに予め記憶されている、開閉部の位置及び開閉状態(開閉状況)を示すテーブルである。
オブジェクトID1201は、開閉部を備える仮想オブジェクト(CGモデル)の識別情報である。開閉部位置1202は、開閉部のMR空間上の座標位置を示す。例えば、オブジェクトID1201の中で開閉機構を備える部位(開閉機構を構成するCGモデルの集合)の中心位置であるものとする。例えば図18でいう、1801の位置である。図17は、本発明の実施形態における、開閉部の開閉の様子の一例を示す図である。
開閉状態1203は、開閉部の開閉状態を示す。openの場合、開閉部が開いている状態、closeの場合、開閉部が閉じている状態を示す。当該開閉状態1203のステータスは、例えば、ユーザからの当該開閉部の開閉操作を受け付けた場合に、PC100のCPU201により更新される。
例えば、オブジェクトID1201の示す仮想オブジェクトに対しユーザの手が触れた場合に、随時、当該オブジェクトIDに対応する開閉部の開閉状態を切替えるものとする。(開閉部が開いている状態で、仮想オブジェクトにユーザの手が触れた場合は、開閉状態1203をopenに、開閉部が閉じている状態で、仮想オブジェクトにユーザの手が触れた場合は、開閉状態1203をcloseにする)
尚、ユーザの手が仮想オブジェクトに触れたかどうかの判定技術は既知の技術を用いる。例えば、手の位置を検出するためのマーカを添付した手袋をユーザに装着させて撮像することで、当該マーカの位置・大きさ・角度から手の位置、角度を検出し、当該手の位置が仮想オブジェクトの位置から所定の距離範囲内にあるかどうかを判断し、所定の距離範囲内にある場合に手が仮想オブジェクトに触れていると判断するものである。既知の技術であるため、ここでは説明を割愛する。以上が図12の説明である。
図11の説明に戻る。PC100のCPU201は、ステップS1101で、HMD101の向いている方向に開閉部が存在しない(検出されなかった)と判定した場合(ステップS1101でNO)、撮影モードを低解像度モードに変更する(ステップS1104)。つまり、モード情報830に低解像度モードの設定を記憶する。
HMD101の向いている方向に開閉部が存在すると判定した場合(ステップS1101でYES)、当該開閉部の開閉状態1203を参照し、当該開閉部が開いているか否かを判定する(ステップS1102/開閉判定手段)。開閉部が閉じられている場合(ステップS1102でNO)、処理をステップS1104に移行する。
開閉部が開かれている場合(ステップS1102でYES)、PC100のCPU201は、撮影モードを高解像度モードに変更する(ステップS1103)。つまり、モード情報830に高解像度モードの設定を記憶する。そして、図5、図6の処理を実行する。
本発明の第3の実施形態によれば、開閉部の開閉状態に応じて変更される解像度のモードに応じて、複合現実における画像の出力方法を容易に切替え可能な仕組みを提供することができる。
以上が本発明の第3の実施形態の説明である。
次に、本発明の第4の実施形態について説明する。
本発明の第4の実施形態においては、カメラ(HMD)の向いている所定範囲(範囲1901)内に位置する開閉部の開閉と、当該開閉部の先の情報に応じて、撮影モードを変更する処理を行う。
例えば、仮想オブジェクトの開閉部が開いた場合(開閉部を開く操作を受け付けた場合/開いている状態の場合)で、当該開閉部の先に現実物体が存在する場合に、ユーザが、当該開閉部の先にある現実物体の画像をより詳細に確認したいと考えられるため、HMD101のディスプレイに表示する画像を高解像度画像に変更する必要がある。また、開閉部の先に仮想オブジェクトがあった場合には、描画しなければならない仮想オブジェクトの数に応じて描画処理の負荷が増大することが考えられるため、HMD101のディスプレイに表示する画像を低解像度画像に変更する必要がある。
よって、第4の実施形態においては、開閉部の先に現実物体がある場合に高解像度モードを設定し、開閉部の先に仮想オブジェクトがある場合に低解像度モードを設定する。
ここで図13を参照して、本発明の第4の実施形態における、モード設定処理の詳細について説明する。
尚、図13の処理は上述した第1の実施形態における図4の処理の代わりにPC100のCPU201により実行される。
他、第1の実施形態と共通の処理である図5、図6の各処理の内容は、第1の実施形態で説明した内容と同一のため、説明は割愛する。また、図13のステップS1301及び1302の処理は、第3の実施形態における図11のステップS1101、S1102の処理と同じであるため、説明は割愛する。
PC100のCPU201は、ステップS1302で、HMD101の向いている方向にある開閉部が開かれていると判定した場合、当該開閉部より先の所定の距離範囲内に、現実物体が存在するか、仮想オブジェクトが存在するかを判定する(ステップS1303)。
当該開閉部より先の所定の距離範囲内に現実物体が存在するか、仮想オブジェクトが存在するかの判定は、例えば、HMD101の位置及び開閉部のMR空間上の位置、図14の物体間距離1400の距離(所定の距離範囲)、仮想オブジェクトの位置822、現実物体の位置812の情報を用いて行われる。
図14の物体間距離は、PC100の外部メモリに予め記憶されている、HMD101から見て、開閉部より先(奥/向こう側)の所定の距離範囲内に、現実物体が存在するか否かの判定に用いられる、当該所定の距離範囲の情報である。
つまり、図20でいう、範囲1901内のライン2001からライン2002までの間の範囲内に、現実物体が存在するか判定する。図20は、HMD101の位置・姿勢(姿勢ベクトル)、現実物体の位置(例えばマーカ102の位置)、HMD101の向いているベクトルに向けての所定範囲(範囲1901)、HMD101から見て開閉部より先の所定距離範囲(物体間距離1400によって示されるライン2001からライン2002の間の、範囲1901に含まれる範囲)の関係の一例を示している。
図13の説明に戻る。PC100のCPU201は、開閉部より先の所定の距離範囲内に仮想オブジェクトが存在すると判定した場合、処理をステップS1405に移行し、撮影モードを低解像度モードに変更する(ステップS1405)。
開閉部より先の所定の距離範囲内に現実物体(例えばマーカ102)が存在すると判定した場合、PC100のCPU201は、撮影モードを高解像度モードに設定する(ステップS1404)。その後、図5、図6の処理を実行する。
以上説明したように、本発明の第4の実施形態によれば、開閉部の先の状態に応じて変更される解像度のモードに応じて、複合現実における画像の出力方法を容易に切替え可能な仕組みを提供することができる。
次に、本発明の第5の実施形態について説明する。
本発明の第5の実施形態においては、HMDと現実物体が所定距離と開閉部の開閉状態に応じて、高解像度モードと低解像度モードを切替える処理を行う。つまり、上述した第2の実施形態と、第3の実施形態又は第4の実施形態の処理を組み合わせた実施形態である。
例えば、HMD101を装着したユーザが現実物体を確認しようと開閉部を開けて、現実物体の近くに移動した場合に、現実物体の詳細を確認させるため、高解像度モードに切り替える。
以下、図23を参照して、本発明の第5の実施形態における、画像切替処理の詳細について説明する。図23においては、一例として第2の実施形態(図9)の処理と、第4の実施形態(図13)の処理とを組み合わせた処理の流れを説明する。
図23の処理は、第1の実施形態における図4の処理の代わりにPC100のCPU201によって実行される。
図23におけるステップS901〜S909の処理は図9のステップS901〜S909の処理と同じであるため説明は省略する。
PC100のCPU201は、ステップS909において、ステップS907で算出した角度が角度1002(ここでは30°)以内か判定し(ステップS909/範囲判定手段/所定の範囲内か判定し))、30°以内である場合(ステップS909でYES)、現実物体がHMD101の向いている方向の所定範囲(範囲1901)内にあるものと判断して処理をステップS1301に移行する。30°以内でない場合(ステップS909でNO)、現実物体がHMD101の向いている方向の所定範囲(範囲1901)内にないものと判断して処理をステップS1305に移行する。
ステップS1301〜S1305の処理は図13のステップS1301〜S1305の処理と同じであるため説明は省略する。以上が図23の説明である。
尚、第2の実施形態と第3の実施形態を組み合わせた処理を行う場合は、図19のステップS1303をスキップして、ステップS1302でHMD101の向いている方向にある開閉部が開かれていると判定した場合に(ステップS1302でYES)処理をステップS1304に移行するものとする。
本発明の第5の実施形態によれば、HMDと現実物体が所定距離と開閉部の開閉状態に応じて変更される解像度のモードに応じて、複合現実における画像の出力方法を容易に切替え可能な仕組みを提供することができる。
また、図23のステップS1303の処理を実行することで、HMDと現実物体が所定距離と、開閉部の開閉状態と、開閉部と現実物体の位置関係に応じて変更される解像度のモードに応じて、複合現実における画像の出力方法を容易に切替え可能な仕組みを提供することができる。
以上が本発明の第5の実施形態の説明である。
第5の実施形態で前述したように、上述した実施形態を組み合わせて、解像度のモードに応じて、複合現実における画像の出力方法を容易に切替えるようにしてもよい。
例えば、HMD101から現実物体までの所定の距離が所定距離以内であって(第2の実施形態)、且つ、検出された開閉部が開かれている場合に(第3の実施形態)、高解像度モードに切替えるようにしてもよい。この場合、例えば、図9のステップS909でYESの場合に、処理を図11のステップS1101に移行し、ステップS909でNOの場合には、処理をステップS1104に移行するようにする。図11の処理終了後、処理を図5、図6の処理を実行する。
また、本発明の実施形態においては、現実物体を囲う外装が仮想オブジェクト(仮想オブジェクト103)であるものとしたが、例えば、当該現実物体を囲う外装自体が現実物体である場合でも、各実施形態における処理と同様の処理を適用するようにしてもよい。
外装が現実物体である場合、図16、図17に示すように、現実物体である外装板に二次元マーカを貼付し、前述のマーカ102の位置の特定方法と同様の方法で、当該二次元マーカの位置(例えば、当該二次元マーカの位置=外装板の位置とする)を特定することができる。
また、図16に示すように、開閉部の表面と開閉部近くの外装に二次元マーカを貼付して、当該2つのマーカを対応付けてPC100の外部メモリに記憶しておき、カメラから取得した画像において、当該2つのマーカのうち1しか検出されない場合には、開閉部が開いていると判定し、当該2つのマーカが2つとも検出される場合には、開閉部が閉じていると判定するものである。
また、図17に示すように、開閉部の表面と裏面に二次元マーカを貼付して、カメラから取得した画像において、裏面の二次元マーカが検出されている場合には、開閉部が開いていると判定し、表面の二次元マーカが検出されている場合には、開閉部が閉じていると判定するようにしてもよい。開閉部の開閉の判定方法はこれらに限るものではない。
また、第3の実施形態・第4の実施形態において、開閉部が仮想オブジェクトである場合に、高解像度モードを利用するにあたり当該開閉部(仮想オブジェクト)を描画せずにHMD101に画像を送信してしまうと、ユーザは開閉部(仮想オブジェクト)が見えなくなってしまうため、当該仮想オブジェクトに触れることで開閉部を閉じることができなくなってしまう。
よって、ステップS604の前に、図21に示すように、現実物体から所定距離2111以内にある仮想オブジェクトを透過したMR画像を生成してHMD101に送信するようにしてもよい。具体的には、画像の最前面のレイヤに、当該所定距離2111を半径とする、仮想オブジェクト(CG)を描画しない領域を規定する球状のマスクオブジェクトを、マーカ102(現実物体)の位置を中心として配置して、MR画像を生成する。
当該所定距離2111の情報は、予めPC100の外部メモリに記憶されており、当該マスクオブジェクトの生成及び配置、MR画像の生成処理は、当該所定距離2111の情報を用いて、PC100のCPU201が行うものとする。
これにより、ユーザが詳細に確認したい現実物体の周辺に位置するCGのみを表示しないようにすることができ、当該現実物体の確認を容易にすることができる。また、高解像度画像であっても、仮想オブジェクトを描画する範囲を減らすことができ、当該描画処理(MR画像の生成)にかかる処理負荷を軽減することができる。
また、上述した実施形態においては、仮想オブジェクトの重なった現実物体までの距離が短い場合(所定の値以内である場合)に、現実物体を精細に表示して仮想オブジェクトの描画処理による負荷を軽減するために高解像度モードを設定するものとした。しかし、例えば、反対に、現実物体がHMDの近くにある場合には画像の解像度が低くとも現実物体を確認可能だが、現実物体がHMDから遠い位置にある場合画像の解像度が低いと当該現実物体を視認できない/詳細に確認できない場合が考えられる。また、仮想オブジェクトの重なった現実物体との距離が離れているということは、他の現実物体(仮想オブジェクトの重なった現実物体)が視野内に入り込むことが考えられる。つまり、現実物体との距離が離れていることにより仮想オブジェクトを複数描画しなければならず、処理負荷が高まってしまう場合がある。
よって、例えば、上述の実施形態における、図9のステップS910の処理とステップS911の処理を入れ替えて、それぞれの処理のタイミングで、PC100のCPU201が、現実物体がHMD101の位置から所定距離以内にあり、且つ、範囲1901内にある場合に、低解像度モードを設定し、現実物体がHMD101の位置から所定距離以内にない場合には、高解像度モードを設定するようにしてもよい。
これにより、遠方の被写体の画像を精細に表示させることができる。また、複数の仮想オブジェクトを描画することによる処理負荷を軽減することができる。
また、HMD101が近づいたとしても詳細を確認させる必要がない現実物体がMR空間上に存在することが考えられる。
例えば、図15の被写体情報1500の切替フラグ1501のように、現実物体に対して(ここでは現実物体に貼付されたマーカのIDに対して)当該現実物体とHMD101が所定距離内にある場合に低解像度モードを高解像度モードに切り替えるか、低解像度モードをそのまま利用するかを切り替えるかを設定しておき、当該設定に従って、当該現実物体と仮想オブジェクトが重なっている場合であって、当該現実物体とHMD101が所定距離内にある場合にいずれの撮影モードを用いるか決定することで、仮想オブジェクトと重なった高解像度画像で詳細を確認させる必要がある現実物体とHMD101が所定距離内にある場合に高解像度画像をHMD101に送信して表示させ、高解像度画像で詳細を確認させる必要がない現実物体とHMD101が所定距離内にある場合には低解像度画像をHMD101に送信して表示させることができる。
尚、図15の各データテーブルは予めPC100の外部メモリに記憶されているものとする。図15のマーカID811、位置812は図8のマーカID811、位置812と同じであるためここでは説明を割愛する。切替フラグ1501=ONの現実物体は、高解像度画像をHMD101に表示させるべき現実物体であり、切替フラグ1501=OFFの現実物体は、高解像度画像をHMD101に表示させるべき現実物体でないものとする。
切替フラグ1501を用いた具体的な処理について説明する。PC100のCPU201は、ステップS905で、HMD101の位置から現実物体105の位置までの距離が、所定の距離(切替条件1000における距離1001)以内であると判定した場合に、当該現実物体を示すID(マーカID811)に対応する切替フラグ1501を参照して、当該現実物体が、HMD101と近づいたことで高解像度画像をHMD101に表示させるべき現実物体か判定する。
高解像度画像をHMD101に表示させるべき現実物体である(切替フラグ1501=ONである)と判定した場合には処理をステップS906に移行し、高解像度画像をHMD101に表示させるべき現実物体でない(切替フラグ1501=OFFである)と判定した場合には処理をステップS911に移行する。
当該切替フラグ1501を用いることにより、高解像度画像で詳細を確認させる必要がある現実物体とHMD101が所定距離内にある場合に高解像度画像をHMD101に送信して表示させ、高解像度画像で詳細を確認させる必要がない現実物体とHMD101が所定距離内にある場合には低解像度画像をHMD101に送信して表示させることができる。
以上説明したように、本発明によれば、HMDの位置情報を用いて、利用する異なる解像度の画像を、容易に切替え可能な仕組みを提供することができる。
本発明は、例えば、システム、装置、方法、プログラム若しくは記憶媒体等としての実施形態も可能であり、具体的には、複数の機器から構成されるシステムに適用してもよいし、また、1つの機器からなる装置に適用してもよい。
上述した実施形態においては図4のステップS401で表示された不図示のモード設定画面においてユーザ操作に応じて高解像度モードまたは低解像度モードの設定がされるものとしたが、例えば、HMD101にボタンスイッチを設けて、当該ボタンスイッチが押し込まれた場合にHMD101がモード情報830を現在設定中のモードから別のモード(低解像度モードまたは高解像度モード)に変更するようPC100に指示し、PC100のCPU201が当該指示に従って、モード情報830の設定を変更して記憶するようにしてもよい。
また例えば、HMD101が、図面に記載された各データテーブルの情報を必要に応じてPC100に要求して取得し、HMD101が図4〜図6、図9、図11、図13、図23の全ての処理を実行するようにしてもよい。
また例えば、HMD101に外部メモリを設置し、図面に記載された各データテーブルの情報を当該HMD101の外部メモリに記憶させて、HMD101が当該外部メモリ上の各データテーブルの情報を用いて、図4〜図6、図9、図11、図13、図23の全ての処理を実行するようにしてもよい。
なお、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラムを、システム或いは装置に直接、或いは遠隔から供給するものを含む。そして、そのシステム或いは装置のコンピュータが前記供給されたプログラムコードを読み出して実行することによっても達成される場合も本発明に含まれる。
また、HMD101は、GOOGLE GLASS(登録商標)のようなシースルー型の端末であってもよい(本発明におけるHMD101は、シースルー型の端末も含むものとする)。
例えば、図1に示す各種端末、マーカ等の構成は一例であり、用途や目的に応じて様々な構成例がある。例えば、赤外線カメラ(不図示)をHMD101の周辺に設置して、HMD101に設置された光マーカ(オプティカルマーカ)を撮影し、撮影した結果取得したHMD101の位置姿勢の情報(座標の情報)をPC100に送信することでHMD101の位置・姿勢の情報を特定するようにしてもよい。
また、磁場を発生させるトランスミッター(不図示)を用いて、HMD101の位置や姿勢を特定することも可能である。この場合、トランスミッターは磁場を発生し、発生した磁場をHMD101に備えられたレシーバが受信する。受信した磁場に関する情報をPC100に送信すると、磁場の強さからHMD101の位置や姿勢をPC100が特定するものとする。これにより、マーカが検出できない場合であってもHMDの位置・姿勢を特定可能である。
このように、HMD101の位置や姿勢を特定するためには、マーカやセンサ(赤外線、磁場)を用いる場合がある。HMD101の位置や姿勢を特定できれば、どのような形態でも構わない。
また、上述した実施形態においては、ステップS905、ステップS909、S1303において、判定対象の距離が“所定の値以内であるか”を判定しているが、例えば、“所定の値より小さいか”判定するようにしてもよい。例えば、所定の値より小さい場合=ステップS905でYES、ステップS909でYES、ステップS1303でYES、であるものとし、判定対象の距離が所定の値以上の場合=ステップS905でNO、ステップS909でNO、ステップS1303でNO、であるものとする。
本発明の機能処理をコンピュータで実現するために、前記コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等の形態であってもよい。
プログラムを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、MO、CD−ROM、CD−R、CD−RWなどがある。また、磁気テープ、不揮発性のメモリカード、ROM、DVD(DVD−ROM,DVD−R)などもある。
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続する。そして、前記ホームページから本発明のコンピュータプログラムそのもの、若しくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。
また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるWWWサーバも、本発明に含まれるものである。
また、本発明のプログラムを暗号化してCD−ROM等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせる。そして、ダウンロードした鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される。その他、そのプログラムの指示に基づき、コンピュータ上で稼動しているOSなどが、実際の処理の一部又は全部を行い、その処理によっても前述した実施形態の機能が実現され得る。
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる。その後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部又は全部を行い、その処理によっても前述した実施形態の機能が実現される。
なお、前述した実施形態は、本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。即ち、本発明はその技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。
100 PC
101 HMD
102 マーカ
103 仮想オブジェクト
105 現実物体
150 LAN
201 CPU
202 ROM
203 RAM
204 システムバス
205 入力コントローラ
206 ビデオコントローラ
207 メモリコントローラ
208 通信I/Fコントローラ
209 入力デバイス
210 ディスプレイ
211 外部メモリ
221 右目ビデオカメラ
222 左目ビデオカメラ
223 右目ディスプレイ
224 左目ディスプレイ
225 コントローラ

Claims (8)

  1. 撮像装置と、画像を表示する表示装置と通信可能な、仮想空間上に配置されるオブジェクトである仮想オブジェクト及び当該仮想オブジェクトを配置する位置姿勢を記憶する記憶機能を備える情報処理装置であって、
    画像を撮像する位置である撮像位置の情報を取得する撮像位置取得手段と、
    前記撮像位置取得手段で取得した前記撮像位置から撮像された画像を記憶する画像記憶手段と、
    前記撮像位置取得手段で取得された撮像位置と、前記仮想オブジェクト及び仮想オブジェクトを配置する位置姿勢の情報に基いて、前記画像記憶手段に記憶された画像に仮想オブジェクトを重畳した複合現実画像を生成する複合現実画像生成手段と、
    画像を前記表示装置に表示させるべく出力する出力手段と、
    前記出力手段で、前記複合現実画像生成手段で生成された低解像度の複合現実画像を出力する低解像度モードと、前記画像記憶手段から取得された高解像度の画像を出力する高解像度モードとのいずれのモードが設定されているか特定するモード特定手段と、
    を備え、
    前記出力手段は、前記モード特定手段で前記低解像度モードが設定されていることが特定された場合に、前記複合現実画像生成手段で生成された低解像度の複合現実画像を出力し、前記モード特定手段で前記高解像度モードが設定されていることが特定された場合に、前記画像記憶手段から取得された高解像度の画像を出力することを特徴とする情報処理装置。
  2. 前記記憶機能は更に、仮想空間における現実物体の位置を記憶し、
    前記現実物体の位置と仮想オブジェクトの位置とを用いて特定される、前記仮想オブジェクトと重なって配置される現実物体と、前記撮像位置取得手段で取得される前記撮像位置との距離が所定の距離以内か判定する距離判定手段と、
    前記距離判定手段で前記現実物体と前記撮像位置との距離が所定の距離以内であると判定された場合に、高解像度モードを設定する第1の設定手段と、
    を備え、
    前記距離判定手段で前記現実物体と前記撮像位置との距離が所定の距離以内であると判定された場合に、前記第1の設定手段により設定された高解像度モードが設定中であることに基いて、前記画像記憶手段から取得された高解像度の画像を出力することを特徴とする請求項1に記載の情報処理装置。
  3. 前記記憶機能は更に、仮想空間における開閉機構の位置と、開閉機構の開閉状態を記憶し、
    前記開閉機構の位置と開閉状態に基いて、前記撮像位置取得手段で取得された撮像位置から撮像される範囲に位置する前記開閉機構が開いているか判定する開閉判定手段と、
    前記開閉判定手段で、前記撮像される範囲に位置する前記開閉機構が開いていると判定された場合に、高解像度モードを設定する第2の設定手段と、
    前記開閉判定手段で前記撮像される範囲に位置する前記開閉機構が開いていると判定された場合に、前記第2の設定手段により設定された高解像度モードが設定中であることに基いて、前記画像記憶手段から取得された高解像度の画像を出力することを特徴とする請求項1又は2に記載の情報処理装置。
  4. 前記開閉機構の先に仮想オブジェクトが存在する場合に、前記低解像度モードを設定する第3の設定手段と、
    前記開閉機構の先に現実物体が存在する場合に、前記高解像度モードを設定する第4の設定手段と、
    前記開閉機構の先に仮想オブジェクトが存在する場合に、前記第3の設定手段により設定された低解像度モードが設定中であることに基いて、前記複合現実画像生成手段により生成された低解像度の複合現実画像を出力し、
    前記開閉機構の先に現実物体が存在する場合に、前記第4の設定手段により設定された高解像度モードが設定中であることに基いて、前記画像記憶手段から取得された高解像度の画像を出力することを特徴とする請求項3に記載の情報処理装置。
  5. 現実物体と、前記距離判定手段で当該現実物体と前記撮像位置との距離が所定の距離以内であると判定された場合に低解像度モードを設定すべきか高解像度モードを設定すべきかを対応付けて記憶する記憶手段と、
    を備え、
    前記第1の設定手段は、前記距離判定手段で前記現実物体と前記撮像位置との距離が所定の距離以内であると判定された場合であって、前記記憶手段において当該現実物体と前記撮像位置との距離が所定の距離以内であると判定された場合に高解像度モードを設定すべきと記憶されている場合に、高解像度モードを設定することを特徴とする請求項2乃至4のいずれか1項に記載の情報処理装置。
  6. 撮像装置と、画像を表示する表示装置と通信可能な、仮想空間上に配置されるオブジェクトである仮想オブジェクト及び当該仮想オブジェクトを配置する位置姿勢を記憶する記憶機能を備える情報処理装置の制御方法であって、
    画像を撮像する位置である撮像位置の情報を取得する撮像位置取得工程と、
    前記撮像位置取得工程で取得した前記撮像位置から撮像された画像を記憶する画像記憶工程と、
    前記撮像位置取得工程で取得された撮像位置と、前記仮想オブジェクト及び仮想オブジェクトを配置する位置姿勢の情報に基いて、前記画像記憶工程に記憶された画像に仮想オブジェクトを重畳した複合現実画像を生成する複合現実画像生成工程と、
    画像を前記表示装置に表示させるべく出力する出力工程と、
    前記出力工程で、前記複合現実画像生成工程で生成された低解像度の複合現実画像を出力する低解像度モードと、前記画像記憶工程から取得された高解像度の画像を出力する高解像度モードとのいずれのモードが設定されているか特定するモード特定工程と、
    を含み、
    前記出力工程は、前記モード特定工程で前記低解像度モードが設定されていることが特定された場合に、前記複合現実画像生成工程で生成された低解像度の複合現実画像を出力し、前記モード特定工程で前記高解像度モードが設定されていることが特定された場合に、前記画像記憶工程から取得された高解像度の画像を出力することを特徴とする情報処理装置の制御方法。
  7. 撮像装置と、画像を表示する表示装置と通信可能な、仮想空間上に配置されるオブジェクトである仮想オブジェクト及び当該仮想オブジェクトを配置する位置姿勢を記憶する記憶機能を備える情報処理装置で実行が可能なプログラムであって、
    前記情報処理装置を、
    画像を撮像する位置である撮像位置の情報を取得する撮像位置取得手段と、
    前記撮像位置取得手段で取得した前記撮像位置から撮像された画像を記憶する画像記憶手段と、
    前記撮像位置取得手段で取得された撮像位置と、前記仮想オブジェクト及び仮想オブジェクトを配置する位置姿勢の情報に基いて、前記画像記憶手段に記憶された画像に仮想オブジェクトを重畳した複合現実画像を生成する複合現実画像生成手段と、
    画像を前記表示装置に表示させるべく出力する出力手段と、
    前記出力手段で、前記複合現実画像生成手段で生成された低解像度の複合現実画像を出力する低解像度モードと、前記画像記憶手段から取得された高解像度の画像を出力する高解像度モードとのいずれのモードが設定されているか特定するモード特定手段として機能させ、
    前記出力手段は、前記モード特定手段で前記低解像度モードが設定されていることが特定された場合に、前記複合現実画像生成手段で生成された低解像度の複合現実画像を出力し、前記モード特定手段で前記高解像度モードが設定されていることが特定された場合に、前記画像記憶手段から取得された高解像度の画像を出力することを特徴とする情報処理装置のプログラム。
  8. 撮像装置と、画像を表示する表示装置と、仮想空間上に配置されるオブジェクトである仮想オブジェクト及び当該仮想オブジェクトを配置する位置姿勢を記憶する記憶機能を備える情報処理装置とを含む情報処理システムであって、
    画像を撮像する位置である撮像位置の情報を取得する撮像位置取得手段と、
    前記撮像位置取得手段で取得した前記撮像位置から撮像された画像を記憶する画像記憶手段と、
    前記撮像位置取得手段で取得された撮像位置と、前記仮想オブジェクト及び仮想オブジェクトを配置する位置姿勢の情報に基いて、前記画像記憶手段に記憶された画像に仮想オブジェクトを重畳した複合現実画像を生成する複合現実画像生成手段と、
    画像を前記表示装置に表示させるべく出力する出力手段と、
    前記出力手段で、前記複合現実画像生成手段で生成された低解像度の複合現実画像を出力する低解像度モードと、前記画像記憶手段から取得された高解像度の画像を出力する高解像度モードとのいずれのモードが設定されているか特定するモード特定手段と、
    を備え、
    前記出力手段は、前記モード特定手段で前記低解像度モードが設定されていることが特定された場合に、前記複合現実画像生成手段で生成された低解像度の複合現実画像を出力し、前記モード特定手段で前記高解像度モードが設定されていることが特定された場合に、前記画像記憶手段から取得された高解像度の画像を出力することを特徴とする情報処理システム。
JP2014254826A 2014-12-17 2014-12-17 情報処理装置、情報処理システム、その制御方法及びプログラム Pending JP2016115230A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014254826A JP2016115230A (ja) 2014-12-17 2014-12-17 情報処理装置、情報処理システム、その制御方法及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014254826A JP2016115230A (ja) 2014-12-17 2014-12-17 情報処理装置、情報処理システム、その制御方法及びプログラム

Publications (1)

Publication Number Publication Date
JP2016115230A true JP2016115230A (ja) 2016-06-23

Family

ID=56142052

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014254826A Pending JP2016115230A (ja) 2014-12-17 2014-12-17 情報処理装置、情報処理システム、その制御方法及びプログラム

Country Status (1)

Country Link
JP (1) JP2016115230A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018067851A (ja) * 2016-10-20 2018-04-26 富士通株式会社 撮像制御プログラム、撮像制御方法および情報処理装置
JP7359558B2 (ja) 2019-03-26 2023-10-11 株式会社バンダイナムコエンターテインメント プログラム、画像生成装置および画像生成方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018067851A (ja) * 2016-10-20 2018-04-26 富士通株式会社 撮像制御プログラム、撮像制御方法および情報処理装置
JP7359558B2 (ja) 2019-03-26 2023-10-11 株式会社バンダイナムコエンターテインメント プログラム、画像生成装置および画像生成方法

Similar Documents

Publication Publication Date Title
JP7079231B2 (ja) 情報処理装置及び情報処理システム及び制御方法、プログラム
JP6409861B2 (ja) 情報処理装置、情報処理システム、その制御方法及びプログラム
JP6663111B2 (ja) 情報処理システム、その制御方法、及びプログラム、並びに、情報処理装置、その制御方法、及びプログラム
JP6677890B2 (ja) 情報処理システム、その制御方法、及びプログラム、並びに情報処理装置、その制御方法、及びプログラム
JP2015125641A (ja) 情報処理装置、その制御方法、及びプログラム
JP2016122392A (ja) 情報処理装置、情報処理システム、その制御方法及びプログラム
CN112783700A (zh) 用于基于网络的远程辅助系统的计算机可读介质
JP2018142230A (ja) 情報処理装置、情報処理システム、情報処理方法及びプログラム
JP2016115230A (ja) 情報処理装置、情報処理システム、その制御方法及びプログラム
JP6152888B2 (ja) 情報処理装置、その制御方法、及びプログラム、並びに、情報処理システム、その制御方法、及びプログラム
JP7279113B2 (ja) 画像処理装置、画像処理方法、コンピュータプログラム
JP5874698B2 (ja) 情報処理装置、その制御方法、及びプログラム
JP6836060B2 (ja) 情報処理装置、情報処理システム、情報処理方法及びプログラム
JP6376251B2 (ja) 情報処理装置、情報処理システム、その制御方法及びプログラム
JP2017084215A (ja) 情報処理システム、その制御方法、及びプログラム
JP6164177B2 (ja) 情報処理装置、情報処理システム、その制御方法及びプログラム
JP2015121892A (ja) 画像処理装置、画像処理方法
JP6734537B2 (ja) 情報処理装置、その制御方法、及びプログラム、並びに、情報処理システム、その制御方法、及びプログラム
JP5520772B2 (ja) 立体画像の表示システム及び表示方法
JP6741939B2 (ja) 情報処理装置、情報処理システム、その制御方法及びプログラム
JP2018063590A (ja) 情報処理装置、情報処理システム、その制御方法及びプログラム
JP6744543B2 (ja) 情報処理システム、その制御方法、及びプログラム
JP2023145551A (ja) 画像処理装置と、その処理方法、プログラム
JP2019040356A (ja) 画像処理装置、画像処理方法、コンピュータプログラム
JP2018190447A (ja) 情報処理装置、情報処理システム、その制御方法及びプログラム

Legal Events

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

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20161101

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20161101