説明

情報処理装置及び方法

【課題】 操作者が仮想現実空間または複合現実空間内でカーソルを用いて任意の場所を指し示すときに、カーソルの指し示したポイントを操作者が視認できるようにする。
【解決手段】 操作者の視点の位置を計測する視点位置計測手段と、前記操作者が操作する操作部の位置を計測する操作位置計測手段と、前記視点位置計測手段で計測された視点の位置と前記操作位置計測手段で計測された操作部の位置とに基づいて、表示すべきカーソルの位置姿勢を決定する決定手段とを備える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、仮想現実空間または複合現実空間において仮想物体を生成するための情報処理装置及び方法に関する。
【背景技術】
【0002】
近年、現実空間と仮想空間との繋ぎ目のない結合を目的とした、複合現実感(MR:Mixed Reality)に関する研究が盛んに行われている。複合現実感の提示を行う画像表示装置は、例えば次のような構成を有する装置である。即ち、ビデオカメラ等の撮像装置が撮像した現実空間の画像上に、撮像装置の位置及び姿勢に応じて生成した仮想現実空間の画像(例えばコンピュータグラフィックスにより描画された仮想物体や文字情報等)を重畳描画した画像を表示する装置である。このような装置には、例えば、HMD(ヘッドマウントディスプレイ、頭部装着型ディスプレイ)を用いることができる。
【0003】
画像表示装置は、操作者の頭部に装着された光学シースルー型ディスプレイに、操作者の視点の位置及び姿勢に応じて生成した仮想現実空間の画像を表示する光学シースルー方式によっても実現される。
【0004】
一方、IT技術の発達により従来は紙とペンが媒体だった文字や絵を描くツールが電子化され、バーチャル空間内でも紙へ筆記する場合と同等な感覚で情報を入力できるペン等のポインティング用デバイスを用いたタブレット装置が開発されてきた。
例えば特許文献1では、従来のタブレット装置におけるペン型デバイス先端の位置計測が2次元であったのに対し、ペン先の計測を3次元で行っている。このことにより、操作者自身が持つペン先の操作を高さ方向で認識可能となり、ペン先の高さ方向の移動に伴い表示するカーソルのスケールや影の表示を変化させることで、バーチャル空間内におけるペン先の位置をより操作者に明確に提示することを可能にしている。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開平9−305306公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
従来の方法では操作者が、仮想現実空間・複合現実空間の中で、操作者がカーソルを使い空間内の任意の場所を指し示す際、カーソルの指し示すポイントを視認出来ない場合があった。
そこで本発明は、仮想現実空間・複合現実空間において、カーソルの指し示すポイントを確実に視認できるようにする事を目的とする。
【課題を解決するための手段】
【0007】
上記の課題を解決するために、本発明における情報処理装置は、操作者の視点の位置を計測する視点位置計測手段と、前記操作者が操作する操作部の位置を計測する操作位置計測手段と、前記視点位置計測手段で計測された視点の位置と前記操作位置計測手段で計測された操作部の位置とに基づいて、表示すべきカーソルの位置姿勢を決定する決定手段とを備える。
【発明の効果】
【0008】
本発明によれば、仮想世界または複合現実感世界の中で、操作者がカーソルを使い空間内の任意の場所を指し示す際、カーソルの指し示すポイントを確実に視認できるようになり、操作者は容易に空間内の特定のポイントを指し示すことができるようになる。
【図面の簡単な説明】
【0009】
【図1】第1の実施形態におけるシステム構成を示すブロック図である。
【図2】第1の実施形態における処理手順を示すフローチャートである。
【図3】第1の実施形態における実施形態を示す図である。
【図4】第1の実施形態におけるカーソルオブジェクトを示す図である。
【図5】第2の実施形態におけるシステム構成を示すブロック図である。
【図6】第2の実施形態における処理手順を示すフローチャートである。
【図7】第2の実施形態における実施形態を示す図である。
【図8】第3の実施形態における実施形態を示す図である。
【発明を実施するための形態】
【0010】
以下、添付図面を参照しながら本発明の実施形態を詳細に説明する。
〔実施形態1〕
図1は、実施形態1に係るシステムの機能構成例を示すブロック図である。図1に示す如く、本実施形態に係るシステムは、情報処理装置1300と、頭部装着型装置の一例としてのHMD1100で構成されている。また、カーソルの位置を情報処理装置1300内で計算するために操作部1400に色マーカ1410を用いている。この時、色マーカを用いなくても操作部1400の位置が計測できる手法であれば、その手法は問わない。
【0011】
情報処理装置1300は、画像取得部1310、データ管理部1320、視点位置姿勢計算部1330、カーソル位置計算部1350、カーソル姿勢計算部1360、画像生成部1340を有する。HMD1100は、表示部1110、撮像部1120、位置姿勢センサ1130を有する。ここで、情報処理装置1300とHMD1100とはデータ通信が可能なように接続されている。従って、情報処理装置1300とHMD1100との間の接続は、有線、無線の何れであっても構わない。
【0012】
画像取得部1310は、撮像部1120において撮像された画像を画像データとしてデータ管理部1320に保存する。
データ管理部1320は、前記画像データ以外にも磁気トランスミッタ1200が発生させた磁場から位置姿勢センサ1130が計測した位置を保存する。また、データ管理部1320は、本装置を実現するための各種データの管理を行う。
【0013】
カーソル位置計算部1350では、データ管理部1320に保存されている撮像画像からステレオマッチング法や視体積交差法などの手法を用いて操作部1400付属の色マーカ1410の位置を求める操作位置計測を行う。この時、求めた位置の補正を行ってもよい。
カーソル姿勢計算部1360では、図3(B)のようにカーソルオブジェクト3010が指し示す点を操作者が見えるよう計算を行う。詳細に関しては、図2のフローチャートにつき後述する。
【0014】
また、本実施形態で使用するカーソルオブジェクト3010は、頂点と方向性を持つ円錐とする。このカーソルの形状を図4に示す。円錐の頂点4010をカーソル位置1410とする。また、円錐底面の中心4020と頂点4010を結ぶ線分のベクトル4030をカーソルオブジェクト3010の方向とする。
視点位置姿勢計算部1330では、磁気トランスミッタ1200が発生させた磁場から位置姿勢センサ1130の位置として視点位置計測を行いデータ管理部1320に保存されたデータから視点位置の計算を行う。
画像生成部1340では、仮想のカーソルオブジェクトを含む仮想現実空間の画像を生成する。この時、データ管理部1320に保存されている仮想物体の表示を行ってもよい。
【0015】
画像表示部1110では、画像生成部1340で生成された画像の表示を行う。
図2が本実施形態の流れを説明するフローチャートである。
まずステップS2002でデータ管理部1320に保存されている位置姿勢センサ1130の位置姿勢情報から視点位置姿勢計算部1330で視点の位置姿勢を計算する。
【0016】
ステップS2003では、撮像部1120で取得した撮像画像をデータ管理部1320に保存する。ステップS2004では、データ管理部1320に保存されている撮像画像からカーソル位置計算部1350にて色マーカ1410の位置を求め、これを操作部1400の位置とする。
【0017】
ステップS2005では、カーソル姿勢計算部1360にてカーソルの位置姿勢の計算を行う。まず、図3(A)のように図4のカーソルオブジェクト3010の頂点4010を色マーカ1410の重心に移動する。次に頂点4010の位置を中心として視点位置3020と色マーカ1410の重心を通る直線上にカーソルオブジェクト3010の底面の中心4020通るようにカーソルオブジェクトの姿勢の計算を行う。その後、図3(B)からわかるように1410の重心を中心としてローカル座標系のZ軸を中心として所定の角度だけ回転する。すなわち、視点位置3020と色マーカ1410の重心を通る直線に対して、所定の角度をなすようにカーソルオブジェクトの向きを傾ける。この所定の角度は、カーソルオブジェクトが十分視認できるようなある閾値以上の予め決められた角度である。この時、カーソルが指し示す点が操作者から見えるような姿勢に変更する手法であればどのような手法を用いてもよい。
【0018】
ステップS2006では、画像生成部1340でカーソルオブジェクト3010を含む仮想現実画像を生成する。この時、データ管理部1320に保存されている仮想物体を含む仮想現実画像を生成してもよい。
ステップS2007では、表示部1110にステップS2006で得られた仮想現実画像の表示を行う。
ステップS2008では、ユーザからの終了要求があれば処理を終了し、なければステップS2002に戻って処理を繰り返す。
【0019】
〔実施形態2〕
上記実施形態1では、操作者は空間中の任意のポイントを指し示す実施形態であったが、本実施形態では操作者が空間中の仮想物体表面上にある任意のポイントを指し示す場合を示す。
【0020】
図5と図6を用いて、本実施形態を説明する。図5は、実施形態2におけるブロック図を示す。図1と同じ部分については同じ番号をつけており、その説明を省略する。図6は、実施形態2の処理の流れを説明するフローチャートである。図2と同じ部分については同じ番号をつけており、その説明を省略する。
【0021】
ステップS6005では、カーソル位置計測部7350で色マーカ1410の位置が仮想物体内にあるかの判定を行う。色マーカ1410の位置が仮想物体内にある場合はステップS6006に移行し、それ以外の場合はステップS6007へ移行する。
【0022】
ステップS6006では、カーソル位置計算部7350がカーソル位置補正を行う。図7(B)のようにカーソル位置1410が仮想物体9001の内部にある場合は、カーソルが仮想物体内に埋もれることを避けるために、カーソル位置1410をカーソル補正位置9410へ補正する。このカーソル補正位置9410は、視点位置3020とカーソル位置1410とを結ぶ線分と仮想物体表面との交点となる。ここで補正された値は、データ管理部1320へ送られる。
【0023】
ステップS6007では、カーソル姿勢計算部7360がカーソル姿勢の計算を行う。ステップS6006でカーソル位置補正を行っていない場合は、実施形態1におけるステップS2005と同じ計算を行う。ステップS6006でカーソル位置補正を行った場合は、以下のようにカーソル姿勢を計算する。
【0024】
ステップS6006でカーソル位置補正を実施した場合におけるカーソル姿勢計算を、図7を用いて説明する。図7(A)のように、操作者の視点位置3020からカーソル補正位置9410が視認可能な場合、カーソル姿勢はカーソル補正位置9410が位置する仮想物体表面の法線9002と逆方向とすることができる。しかし、視点位置3020とカーソル補正位置9410との位置関係が図7(B)の場合、前記カーソル方向では、カーソルオブジェクト3010の底面に遮られ、カーソル補正位置9410が操作者から視認できない。そこで、視線ベクトルと前記法線ベクトルとの角度に閾値を設け、閾値未満の場合は、カーソルの姿勢を法線方向の逆方向とする。閾値以上の場合は、カーソル補正位置9410が操作者から視認できるように、法線方向の逆方向よりカーソルの姿勢を所定角度だけ傾ける。このとき更に、上記閾値にかからない範囲において、カーソル姿勢計算部7360は、視点位置3020とカーソル位置1401またはカーソル補正位置9410との時間的相対位置変化に応じて仮想カーソルの姿勢を変化させてもよい。
【0025】
〔実施形態3〕
上記実施形態1および実施形態2では、操作者は一人であったが、本実施形態では操作者が複数人の時、カーソルが指し示す点が、全ての操作者から見える場合を示す。
本実施形態では操作者毎に実施形態1と同様に図1に示す如く、情報処理装置1300と、頭部装着型装置の一例としてのHMD1100と、操作部1400で構成されている。
図8を用いて本実施形態を説明する。操作者Aの視点位置8010から見えるカーソルオブジェクトを8030とする。また、操作者Aが色マーカ1410で指し示した点を点8050とする。この時、カーソルオブジェクトの位置姿勢は、実施形態2の手法を用いて決定する。
【0026】
しかし、実施形態2の手法でカーソルオブジェクトの姿勢を計測したとき、図9(A)のように、操作者Aが指し示した点8050を操作者Bが視認できない状態が発生する。
そこで、本実施形態では、操作者毎に視点位置から色マーカ1410で指し示した点8050が視認できるようにカーソルの姿勢を傾ける。
【0027】
〔他の実施形態〕
以上、実施形態を詳述したが、本発明は、例えば、システム、装置、方法、プログラムもしくはプログラムが格納された記憶媒体等としての実施態様をとることが可能である。具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
【0028】
尚、本発明は、ソフトウェアのプログラムをシステム或いは装置に直接或いは遠隔から供給し、そのシステム或いは装置のコンピュータが該供給されたプログラムコードを読み出して実行することによって前述した実施形態の機能が達成される場合を含む。この場合、供給されるプログラムは実施形態で図に示したフローチャートに対応したコンピュータプログラムである。
【0029】
また、コンピュータが、コンピュータ読み取り可能なプログラムを読み出して実行することによって、前述した実施形態の機能が実現される他、そのプログラムの指示に基づき、コンピュータ上で稼動しているOSなどとの協働で実施形態の機能が実現されてもよい。この場合、OSなどが、実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される。

【特許請求の範囲】
【請求項1】
操作者の視点の位置を計測する視点位置計測手段と、
前記操作者が操作する操作部の位置を計測する操作位置計測手段と、
前記視点位置計測手段で計測された視点の位置と前記操作位置計測手段で計測された操作部の位置とに基づいて、表示すべきカーソルの位置姿勢を決定する決定手段とを備えていることを特徴とする情報処理装置。
【請求項2】
前記決定手段は、前記視点の位置と前記操作部の位置とを結ぶ視線の方向に基づいて前記カーソルの姿勢を決定することを特徴とする請求項1に記載の情報処理装置。
【請求項3】
前記決定手段は、前記視線の方向に対して予め定められた閾値以上の角度をなすように前記カーソルの姿勢を決定することを特徴とする請求項2に記載の情報処理装置。
【請求項4】
前記決定手段は、前記操作部の位置を前記カーソルの位置として決定することを特徴とする請求項1乃至3のいずれか1項に記載の情報処理装置。
【請求項5】
前記カーソルが仮想物体を指し示す場合に、前記決定手段は、前記視点の位置と前記操作部の位置とを結ぶ視線と当該仮想物体の表面との交点を前記カーソルの位置に決定することを特徴とする請求項1に記載の情報処理装置。
【請求項6】
前記決定手段は、前記交点における当該仮想物体の法線の方向と前記視線とを用いて前記カーソルの姿勢を決定することを特徴とする請求項5に記載の情報処理装置
【請求項7】
前記決定手段は、前記法線の方向と前記視線とのなす角がある閾値未満の場合は、前記カーソルの姿勢を当該法線の方向の逆方向と決定し、前記法線の方向と前記視線とのなす角が前記閾値以上の場合は、前記カーソルの姿勢を前記法線の方向の逆方向から所定角度だけ傾けた方向に決定することを特徴とする請求項6に記載の情報処理装置
【請求項8】
前記カーソルは、頂点と方向性とを持つ円錐であることを特徴とする請求項1乃至7のいずれか1項に記載の情報処理装置。
【請求項9】
操作者の視点の位置を入力する視点位置計測工程と、
前記操作者が操作する操作部の位置を計測する操作位置計測工程と、
前記視点位置計測工程で計測された視点の位置と前記操作位置計測工程で計測された操作部の位置とに基づいて、表示すべきカーソルの位置姿勢を決定する決定工程とを備えることを特徴とする情報処理方法。
【請求項10】
コンピュータを、請求項1乃至8のいずれか1項に記載の情報処理装置の各手段として機能させることを特徴とするプログラム。
【請求項11】
請求項10に記載のプログラムを格納するコンピュータ読み取り可能な記憶媒体。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate


【公開番号】特開2012−48568(P2012−48568A)
【公開日】平成24年3月8日(2012.3.8)
【国際特許分類】
【出願番号】特願2010−191211(P2010−191211)
【出願日】平成22年8月27日(2010.8.27)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】