JP2006343954A - 画像処理方法、画像処理装置 - Google Patents
画像処理方法、画像処理装置 Download PDFInfo
- Publication number
- JP2006343954A JP2006343954A JP2005168404A JP2005168404A JP2006343954A JP 2006343954 A JP2006343954 A JP 2006343954A JP 2005168404 A JP2005168404 A JP 2005168404A JP 2005168404 A JP2005168404 A JP 2005168404A JP 2006343954 A JP2006343954 A JP 2006343954A
- Authority
- JP
- Japan
- Prior art keywords
- virtual object
- pointer
- image
- intersection
- pointing tool
- 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.)
- Withdrawn
Links
Images
Landscapes
- Processing Or Creating Images (AREA)
- Position Input By Displaying (AREA)
Abstract
【課題】 操作対象を視覚的に明瞭にユーザに通知するための技術を提供すること。
【解決手段】 指示具の一端、他端を通る直線を設定し(S2)、直線が干渉領域内で仮想物体と交点を有する場合にはこの交点の位置を記録し(S3)、記録した交点位置のうち、指示具の他端の位置に最も近い交点位置にポインタを移動させ(S6)、その形状を変更する(S7)。
【選択図】 図6
【解決手段】 指示具の一端、他端を通る直線を設定し(S2)、直線が干渉領域内で仮想物体と交点を有する場合にはこの交点の位置を記録し(S3)、記録した交点位置のうち、指示具の他端の位置に最も近い交点位置にポインタを移動させ(S6)、その形状を変更する(S7)。
【選択図】 図6
Description
本発明は、仮想空間中の仮想物体を操作するための技術に関するものである。
VR(バーチャルリアリティ)システムは、コンピュータの作り出す三次元仮想物体をユーザに提示することで、仮想の空間をあたかも現実であるかのように感じさせるシステムである。また、近年、現実空間の映像に三次元CGを合成することで、現実空間にはない情報をユーザに提示する技術の開発もなされており、それらはMR(Mixed Reality, 複合現実感)システムと呼ばれている。
MRシステムは、現実空間と切り離された状況でのみ体験可能であったバーチャルリアリティ(VR)の世界と現実空間との共存を目的とし、VRを増強する技術として注目されている。
MRシステムを実現する装置として代表的なものが、ヘッドマウントディスプレイ(HMD)である。MRシステムでは、現実空間と仮想空間とを合成してHMDに表示することにより、このHMDを頭部に装着した観察者に複合現実空間の画像を提供することができ、結果として、複合現実感を観察者に提供することができる。
HMDを用いたMRの方式には半透過型(シースルー型)のヘッドマウントディスプレイ(HMD)にCG等の画像を重畳する光学シースルー方式と、HMDに装着したビデオカメラで撮影した画像にCG等の画像を合成した後、HMDに表示するビデオシースルー方式がある。
MRシステムの用途としては、患者の体内の様子を透過しているように医師に提示する医療補助の用途や、工場において製品の組み立て手順を実物に重ねて表示する作業補助の用途などが考えられている。
MRシステムにおいては、現実の物体と仮想の物体が共存している。そのため、現実の物体で仮想の物体の操作を行うことができる。たとえば、ユーザがペンを持ち、ペンで仮想物体を指し示し(直接指示)、仮想物体をそのまま動かす(直接操作)ことができる。このような直接指示・直接操作が可能であることがMRシステムの特徴の一つであり、こうした直接指示・直接操作が可能なシステムとしては、他にタッチスクリーンなどがある(非特許文献1を参照)。この直接指示・直接操作という特徴は現実世界における物体の操作のやり方と一致しているため、MRシステムにおいては現実世界に近い自然な操作を行うことができる。
現実世界において人が物体を操作する際、たとえば物を掴んで動かそうとする際、人は視覚からのフィードバックに加えて、触覚によるフィードバックによって操作の対象を認識している。MRシステムにおいては現実世界と同様に直接指示・直接操作が可能であるが、現実世界と異なる点として、触覚をユーザに提示することが難しいという点がある。触覚提示装置と呼ばれる特殊な装置を用いればMRシステムにおいてユーザに触覚を提示することができるが、そうしたシステムは高価であったり動作範囲が狭いなどの制約条件が多かったりするため、限定的な用途でしか用いられていない。この触覚によるフィードバックをMRシステムにおいては用いることができないため、MRシステムでは操作対象を認識しづらいという問題がある。
そのため、MRシステムにおいては、操作対象を認識するためには、視覚によって操作対象が明確に認識できるようにする必要がある。しかしながら、MRシステムでは、通常、現実世界に重ねて仮想物体が描画される。そのため、本来は空間上では現実物体よりも奥にあるべき仮想物体が常に手前に表示されてしまうという問題(オクルージョン)がある。このため、たとえばユーザが操作用のペンで仮想物体を指し示そうとしても、ペンが仮想物体によって隠されてしまうという問題が起こり、そのままでは操作対象を認識することができない。
このオクルージョンの問題を避けるために、従来より、操作用の現実物体に重ねて仮想物体を重ねるという方法が行われている。例えば、図2に示すように、現実物体としてのペン12に重ねて操作用の仮想物体21を配置したり、図1に示すように、現実物体としてのペン12の先端にポインタ13を配置したりといった方法である。図1,2は共に、オクルージョンの問題を避けるための手段について示した図である。
田村博編「ヒューマンインタフェース」オーム社 1998年5月30日、pp246-249
田村博編「ヒューマンインタフェース」オーム社 1998年5月30日、pp246-249
操作用の現実物体に仮想物体を重ねる方法では、視覚的には操作用の仮想物体と操作対象の仮想物体が交わるため、操作対象の認識が可能である。しかし、このとき、実際に操作対象となるのは操作用の現実物体の指定位置、たとえば、ペンの先端の位置にある仮想物体である。そのため、図1に示すように、操作用のペン12に仮想のポインタ13を重ねているとき、図3に示すように、外側の仮想物体31と内側の仮想物体32のように、複数の仮想物体が重なって存在している場合には、ポインタ13は外側の仮想物体31によって隠されてしまい、ユーザはどの仮想物体が操作対象となっているのかがわからなくなってしまう。なお、ここで、図3中では便宜上、外側の仮想物体31を半透明として表現したが、ユーザからは実際には図5に示すように仮想物体11によって操作用のペン12の仮想のポインタ13が隠されているように見える。
また、操作用のペン12に操作用の仮想物体21を重ねている場合には、図4に示すように、外側の仮想物体31と操作用の仮想物体21が重なってユーザに見えるため、ユーザにとっては外側の仮想物体31が操作対象となっているように認識される。しかし、実際にはペン先は内側の仮想物体32を指示しているため、視覚からの認識と実際の指示との間に矛盾が生じてしまう。
本発明は以上の問題に鑑みてなされたものであり、操作対象を視覚的に明瞭にユーザに通知するための技術を提供することを目的とする。
本発明の目的を達成するために、例えば、本発明の画像処理方法は以下の構成を備える。
即ち、観察者の視点の位置姿勢を取得する第1の取得工程と、
仮想空間中の仮想物体を操作するために前記観察者が手に保持する指示具の位置姿勢を取得する第2の取得工程と、
前記指示具の、仮想物体を指し示す為の一端の位置にポインタを配置する配置工程と、
前記指示具の近傍に領域を設定する第1の設定工程と、
前記指示具の一端、他端を通る直線を設定する第2の設定工程と、
前記直線が前記領域内で仮想物体と交点を有する場合には、当該交点の位置をメモリに記録する記録工程と、
前記記録工程で記録した交点位置のうち、前記指示具の他端の位置に最も近い交点位置に前記ポインタを移動させる移動工程と、
前記第1の取得工程で取得した位置姿勢を有する視点から見える仮想空間の画像を生成する生成工程と
前記生成工程で生成した画像を外部に出力する出力工程と
を備えることを特徴とする。
仮想空間中の仮想物体を操作するために前記観察者が手に保持する指示具の位置姿勢を取得する第2の取得工程と、
前記指示具の、仮想物体を指し示す為の一端の位置にポインタを配置する配置工程と、
前記指示具の近傍に領域を設定する第1の設定工程と、
前記指示具の一端、他端を通る直線を設定する第2の設定工程と、
前記直線が前記領域内で仮想物体と交点を有する場合には、当該交点の位置をメモリに記録する記録工程と、
前記記録工程で記録した交点位置のうち、前記指示具の他端の位置に最も近い交点位置に前記ポインタを移動させる移動工程と、
前記第1の取得工程で取得した位置姿勢を有する視点から見える仮想空間の画像を生成する生成工程と
前記生成工程で生成した画像を外部に出力する出力工程と
を備えることを特徴とする。
本発明の目的を達成するために、例えば、本発明の画像処理方法は以下の構成を備える。
即ち、仮想空間中の仮想物体を操作するために観察者が手に保持する指示具の位置姿勢を取得する取得工程と、
前記指示具の所定の位置にポインタを配置する配置工程と、
前記指示具と仮想物体との干渉を判定する判定工程と、
前記判定工程によって前記指示具が前記仮想物体と干渉していると判定された場合は、前記ポインタの位置を干渉位置に応じて変更する変更工程と、
前記変更工程によって変更されたポインタの位置に応じたポインタ画像を含む仮想画像を生成する生成工程と
を有することを特徴とする。
前記指示具の所定の位置にポインタを配置する配置工程と、
前記指示具と仮想物体との干渉を判定する判定工程と、
前記判定工程によって前記指示具が前記仮想物体と干渉していると判定された場合は、前記ポインタの位置を干渉位置に応じて変更する変更工程と、
前記変更工程によって変更されたポインタの位置に応じたポインタ画像を含む仮想画像を生成する生成工程と
を有することを特徴とする。
本発明の目的を達成するために、例えば、本発明の画像処理装置は以下の構成を備える。
即ち、観察者の視点の位置姿勢を取得する第1の取得手段と、
仮想空間中の仮想物体を操作するために前記観察者が手に保持する指示具の位置姿勢を取得する第2の取得手段と、
前記指示具の、仮想物体を指し示す為の一端の位置にポインタを配置する配置手段と、
前記指示具の近傍に領域を設定する第1の設定手段と、
前記指示具の一端、他端を通る直線を設定する第2の設定手段と、
前記直線が前記領域内で仮想物体と交点を有する場合には、当該交点の位置を記録する記録手段と、
前記記録手段が記録した交点位置のうち、前記指示具の他端の位置に最も近い交点位置に前記ポインタを移動させる移動手段と、
前記第1の取得手段が取得した位置姿勢を有する視点から見える仮想空間の画像を生成する生成手段と
前記生成手段が生成した画像を外部に出力する出力手段と
を備えることを特徴とする。
仮想空間中の仮想物体を操作するために前記観察者が手に保持する指示具の位置姿勢を取得する第2の取得手段と、
前記指示具の、仮想物体を指し示す為の一端の位置にポインタを配置する配置手段と、
前記指示具の近傍に領域を設定する第1の設定手段と、
前記指示具の一端、他端を通る直線を設定する第2の設定手段と、
前記直線が前記領域内で仮想物体と交点を有する場合には、当該交点の位置を記録する記録手段と、
前記記録手段が記録した交点位置のうち、前記指示具の他端の位置に最も近い交点位置に前記ポインタを移動させる移動手段と、
前記第1の取得手段が取得した位置姿勢を有する視点から見える仮想空間の画像を生成する生成手段と
前記生成手段が生成した画像を外部に出力する出力手段と
を備えることを特徴とする。
本発明の目的を達成するために、例えば、本発明の画像処理装置は以下の構成を備える。
即ち、仮想空間中の仮想物体を操作するために観察者が手に保持する指示具の位置姿勢を取得する取得手段と、
前記指示具の所定の位置にポインタを配置する配置手段と、
前記指示具と仮想物体との干渉を判定する判定手段と、
前記判定手段によって前記指示具が前記仮想物体と干渉していると判定された場合は、前記ポインタの位置を干渉位置に応じて変更する変更手段と、
前記変更手段によって変更されたポインタの位置に応じたポインタ画像を含む仮想画像を生成する生成手段と
を有することを特徴とする。
前記指示具の所定の位置にポインタを配置する配置手段と、
前記指示具と仮想物体との干渉を判定する判定手段と、
前記判定手段によって前記指示具が前記仮想物体と干渉していると判定された場合は、前記ポインタの位置を干渉位置に応じて変更する変更手段と、
前記変更手段によって変更されたポインタの位置に応じたポインタ画像を含む仮想画像を生成する生成手段と
を有することを特徴とする。
本発明の構成により、操作対象を視覚的に明瞭にユーザに通知することができる。
以下添付図面を参照して、本発明を好適な実施形態に従って詳細に説明する。
[第1の実施形態]
<本実施形態に係るシステムについて>
以下では、現実物体としての指示具(ペン)でもって仮想物体を指示する場合に、指示した部分(仮想物体)を視覚的にユーザに通知するためのシステムについて説明する。
<本実施形態に係るシステムについて>
以下では、現実物体としての指示具(ペン)でもって仮想物体を指示する場合に、指示した部分(仮想物体)を視覚的にユーザに通知するためのシステムについて説明する。
図12は、本実施形態に係るシステムの機能構成を示すブロック図である。同図に示す如く、本実施形態に係るシステムは、HMD100、コンピュータ110、指示具120により構成されている。
先ず、HMD100について説明する。HMD100は周知の如く、現実空間と仮想空間とを合成した複合現実空間を観察する観察者が、その頭部に装着するためのものであり、位置姿勢センサ101、カメラ102、表示部103により構成されている。
位置姿勢センサ101は本実施形態では磁気センサとする。よって、現実空間中には不図示の磁界の発生源が設置されているものとする。従って、位置姿勢センサ101は、自身の位置姿勢に応じた磁気の変化を検知するので、この検知結果を「センサ座標系(上記発生源の位置を原点とし、この原点で互いに直交する3軸をそれぞれx軸、y軸、z軸とする座標系)における位置姿勢センサ101の位置姿勢を示す信号」としてコンピュータ110に出力する。
カメラ102は現実空間の動画像を撮像するものであり、撮像した各フレームの画像は信号としてコンピュータ110に出力する。表示部103は、例えば液晶画面で構成されており、観察者がHMD100を頭部に装着した場合に、この観察者の眼前に位置するようにこのHMD100に取り付けられたものであり、コンピュータ110から出力される画像信号に基づいた画像を表示する。これにより、HMD100を頭部に装着した観察者は、コンピュータ110から出力された画像信号に基づいた画像を観察することができる。
次に、指示具120について説明する。指示具120は観察者が仮想物体を操作するために手に保持するものであり、図1の12で示すようなペン型の指示具である。指示具120は図12に示す如く、位置姿勢センサ121、決定ボタン122により構成される。
位置姿勢センサ121は、上記位置姿勢センサ101と同様の動作を行うものであり、自身の位置姿勢に応じた磁気の変化を検知するものであり、これを「センサ座標系における位置姿勢センサ121の位置姿勢を示す信号」としてコンピュータ110に出力する。決定ボタン122は、観察者がこれを押下することで、押下されたことを示す信号をコンピュータ110に出力する。
次に、コンピュータ110について説明する。コンピュータ110は同図に示す如く、CGデータ格納部111、干渉判定部112、動作判定部113、CGデータ描画部114、画像合成部115により構成されている。
CGデータ格納部111は、仮想空間を構成する各仮想物体の画像を描画するために必要なデータを格納する。例えば仮想物体がポリゴンでもって構成されている場合には、CGデータ格納部111には、仮想物体の配置位置姿勢データ、仮想物体を構成するポリゴンを構成する各頂点の座標データ、ポリゴンの法線ベクトルデータ、ポリゴンカラーデータ、また、この仮想物体にテクスチャマッピングを行う場合には、テクスチャのデータ等が格納されている。
干渉判定部112は、指示具120に備わっている位置姿勢センサ121より得られる情報に基づいて算出される「指示具120の位置姿勢」と、各仮想物体の配置位置姿勢とを参照して、指示具120が仮想物体と干渉しているか否かを判定する。
動作判定部113は、干渉判定部112による判定結果と、決定ボタン122から送出される「決定ボタン122が押下されたことを示す信号」とを用いて、指示具120に干渉している仮想物体に対して、観察者が指示具120でもって行った操作結果を反映させる。即ち、CGデータ格納部111に格納されているこの仮想物体のデータを更新する。例えば、指示具120が注目仮想物体と干渉している状態で、決定ボタン122から押下されたことを示す信号を受けた場合には、この注目仮想物体が選択されていると判定し、その後、操作者が指示具120の位置姿勢を変化させると、CGデータ格納部111に格納されているこの注目仮想物体の位置姿勢のデータをこの変化に従って更新する。
CGデータ描画部114は、CGデータ描画部114に格納されているデータを用いて、仮想空間中に仮想物体を配置すると共に、このような仮想空間を観察者の視点から見た場合に見える画像(仮想空間の画像)を生成する処理を行う。なお本実施形態では、「観察者の視点」とは、カメラ102を差すものとする。
画像合成部115は、カメラ102より得られる現実空間の画像上に、CGデータ描画部114が生成した仮想空間の画像を重畳させた画像、即ち、複合現実空間の画像を生成し、これをHMD100に備わっている表示部103に出力する。これにより、HMD100を頭部に装着した観察者の眼前には自身の視点の位置姿勢に応じた複合現実空間の画像が表示されることになる。
図13は、以上のような機能構成を有するコンピュータ110のハードウェア構成を示すブロック図である。なお、このようなコンピュータ110には、一般のPC(パーソナルコンピュータ)やWS(ワークステーション)等が適用可能である。
1301はCPUで、RAM1302やROM1303に格納されているプログラムやデータを用いてコンピュータ110全体の制御を行うと共に、コンピュータ110が行う後述の各処理を実行する。
1302はRAMで、外部記憶装置1306からロードされたプログラムやデータを一時的に記憶するためのエリア、CPU1301が各種の処理を実行する際に用いるワークエリア、I/F1307,1308を介して外部から受信したデータを一時的に記憶するためのエリアなど、各種のエリアを適宜提供することができる。
1303はROMで、本コンピュータ110の設定データやブートプログラム等を格納する。
1304は操作部で、キーボードやマウスなどにより構成されており、本コンピュータ110の操作者が操作することで、各種の指示をCPU1301に対して入力することができる。
1305は表示装置で、CRTや液晶画面などにより構成されており、CPU1301による処理結果を画像や文字などでもって表示する。
1306は外部記憶装置で、ハードディスクドライブ装置に代表される大容量情報記憶装置で、ここにOS(オペレーティングシステム)や、コンピュータ110が行う後述の各処理をCPU1301に実行させるためのプログラムやデータが保存されており、これらはCPU1301による制御に従ってRAM1302にロードされ、CPU1301による処理対象となる。なお、上記CGデータ格納部111はこの外部記憶装置1306の一機能に相当する。
1307はI/F(インターフェース)で、上記HMD100をコンピュータ110に接続するためのものであり、このI/F1307を介してコンピュータ110はHMD100とのデータ通信を行うことができる。
1308はI/Fで、上記指示具120をコンピュータ110に接続するためのものであり、このI/F1308を介してコンピュータ110は指示具120とのデータ通信を行うことができる。
1309は上述の各部を繋ぐバスである。
<コンピュータ110が行うメインの処理>
次に、HMD100を頭部に装着した観察者に対して複合現実空間の画像を提供するためにコンピュータ110が行う処理について、同処理のフローチャートを示す図14を用いて説明する。なお、同図のフローチャートに従った処理をCPU1301に実行させるためのプログラムやデータは外部記憶装置1306に保存されており、これらは適宜CPU1301による制御に従ってRAM1302にロードされ、CPU1301がこれを用いて処理を実行することで、コンピュータ110は以下説明する各処理を実行することになる。
次に、HMD100を頭部に装着した観察者に対して複合現実空間の画像を提供するためにコンピュータ110が行う処理について、同処理のフローチャートを示す図14を用いて説明する。なお、同図のフローチャートに従った処理をCPU1301に実行させるためのプログラムやデータは外部記憶装置1306に保存されており、これらは適宜CPU1301による制御に従ってRAM1302にロードされ、CPU1301がこれを用いて処理を実行することで、コンピュータ110は以下説明する各処理を実行することになる。
HMD100に備わっている位置姿勢センサ101は上述の通り、センサ座標系における自身の位置姿勢に応じた信号をコンピュータ110に出力するので、CPU1301はこの信号をデータとしてI/F1307を介してRAM1302に受信する(ステップS1401)。
また、HMD100に備わっているカメラ102から各フレームの画像(現実空間の画像)が信号としてコンピュータ110に入力されるので、CPU1301はこれをデータとしてI/F1307を介してRAM1302に受信する(ステップS1402)。
次に、位置姿勢センサ101から受信した「位置姿勢センサ101のセンサ座標系における位置姿勢を示すデータ」を用いて、視点(カメラ102)の位置姿勢を計算する(ステップS1403)。この計算については周知の技術であるが、例えば、予めカメラ102と位置姿勢センサ101との位置姿勢関係を測定し、測定した結果をバイアスデータとして外部記憶装置1306に保存させておく。そして「位置姿勢センサ101のセンサ座標系における位置姿勢を示すデータ」が得られると、これにバイアスデータを加算することで、「センサ座標系におけるカメラ102の位置姿勢」を求めることができる。
次に、この視点から見える仮想空間の画像を生成する(ステップS1404)。即ち、仮想空間中に仮想物体を配置し、配置後の仮想空間をステップS1403で求めた位置姿勢を有する視点から見た場合に見える画像を生成する。なお、本ステップにおける処理の詳細については後述する。
次に、ステップS1402でRAM1302に取得した現実空間の画像上に、ステップS1404で生成した仮想空間の画像を重畳させることで複合現実空間の画像を得(ステップS1405)、これをI/F1307を介してHMD100に備わっている表示部103に出力する(ステップS1406)。
<ステップS1403における処理の詳細>
次に、ステップS1403における処理の詳細について説明する。ステップS1403では先ず、1以上の仮想物体(操作対象仮想物体)を配置する。そして次に、指示具120が何れの操作対象仮想物体と干渉しているのかを判断し、干渉している操作対象仮想物体があれば、その操作対象仮想物体に対して指示具120を用いた操作を反映させる。
次に、ステップS1403における処理の詳細について説明する。ステップS1403では先ず、1以上の仮想物体(操作対象仮想物体)を配置する。そして次に、指示具120が何れの操作対象仮想物体と干渉しているのかを判断し、干渉している操作対象仮想物体があれば、その操作対象仮想物体に対して指示具120を用いた操作を反映させる。
しかし従来では、その際に、指示具120がどの仮想物体(若しくは仮想物体のどの部分)を指し示しているのかが不明瞭である。本実施形態ではこのような問題に対処するために、先ず、指示具120の先端部分(仮想物体を指し示す部分)には図1の13に示す如く、球体状のポインタ(仮想物体)を配置する。そして、このポインタの表示形態により、現在指示具120でもって指し示している仮想物体を視覚的に観察者に報知する。
図11は、指示具120と操作対象仮想物体との干渉状態に応じたポインタの表示形態の制御処理のフローチャートである。
先ず、指示具120に備わっている位置姿勢センサ121より「センサ座標系における位置姿勢センサ121の位置姿勢を示す信号」がコンピュータ110に入力されるので、CPU1301はこれをデータとしてI/F1308を介してRAM1302に受信する(ステップS1)。
そして、取得した位置姿勢を用いて、図6の61で示す如く、指示具120の一端、他端を通る直線を求める(ステップS2)。次に、先に仮想空間中に配置した各操作対象仮想物体のうち、ステップS2で求めた直線と交点を有する仮想物体があった場合には、その交点位置をRAM1302内に設けたリストに追加する(ステップS3)。なお、仮想物体と直線との交点を求める処理については周知の技術であるので、これに関する説明は省略する。
次に、ステップS3で求めたそれぞれの交点位置が、指示具120に対して設定した干渉領域内に存在するのか否かを判定する(ステップS4)。ここで、干渉領域について図6を用いて説明する。図6は、指示具120に対して設定する項目を示す図である。
同図において61は上述の直線であり、この直線は指示具120の一端(先端)と他端とを通る直線である。63は干渉領域で、この領域は直線61上で指示具120の両端(先端部分64と、もう一方の端部62)の位置の間の区間である。
なお、指示具120の両端の位置については、位置姿勢センサ121と一端との位置姿勢関係、位置姿勢センサ121と他端との位置姿勢関係を予め測定しておき、それぞれを第1のバイアスデータ、第2のバイアスデータとして外部記憶装置1306に保存しておく。そして、位置姿勢センサ121から「センサ座標系における位置姿勢センサ121の位置姿勢を示すデータ」が得られた場合には、このデータに第1のバイアスデータを加算することで「センサ座標系における一端の位置姿勢」が得られるし、「センサ座標系における位置姿勢センサ121の位置姿勢を示すデータ」に第2のバイアスデータを加算することで「センサ座標系における他端の位置姿勢」が得られる。このようにして一端、他端のセンサ座標系における位置姿勢が得られるので、これを用いれば、上記直線61、干渉領域63は求めることができる。
なお、同図では干渉領域63は指示具120の長さと一致させているが、干渉領域63は同図のようなものに限定する必要はなく、例えば、先端部64から10センチ先(「先」とは同図矢印が指す方向)の間の区間を干渉領域63として設定しても良いし、先端部64に所定サイズの直方体を設け、これを干渉領域63としても良い。いずれにせよ、指示具120の近傍には以下の処理のための干渉領域63を設定する必要がある。
よって、上記ステップS4では、リストに追加したそれぞれの交点位置のうち、干渉領域63内に存在する交点が存在するか否かをチェックし、存在する場合にはその交点位置を順次RAM1302に記憶させる。
そして、ステップS4でリストに追加したそれぞれの交点位置のうち、干渉領域63内に存在する交点が存在する場合には処理をステップS5に進め、干渉領域63内に存在する交点のうち、指示具120の他端(先端部ではない方の端部。図6では62に相当)の位置に最も近い交点位置を特定する(ステップS5)。即ち、干渉領域63内に存在する交点のうち、指示具120の他端(先端部ではない方の端部。図6では62に相当)の位置に最も近いものを選択することで、観察者にとってより手前にある交点位置を特定することができる。
図7は、仮想物体71と指示具120との干渉状態の一例を示す図である。同図において71は干渉領域63内で直線と交点を有する仮想物体(面)、72はこの交点を示す。よってこの場合には上記ステップS5ではこの交点72の位置が特定されることになる。
図11に戻って、次に、ステップS5で特定した位置に上記ポインタを移動させ(ステップS6)、更にポインタの形状を変更する(ステップS7)。図8は、ポインタの移動と形状の変化を説明する図で、同図に示す如く、ポインタの配置位置を元の82で示す位置から交点位置72で示す位置に移動させると共に、ポインタのモデルを元の球体状のものから81で示す矢印状のものに変更する。
これにより、観察者は現在指示具120によってどの仮想物体を指し示しているのかを視覚的に明瞭に理解することができる。
一方、ステップS4で、干渉領域63内で上記直線61上に交点が存在しない場合には処理をステップS8に進め、この場合にはポインタの移動、及び形状の変化は行わないので、元の状態を保つ。図9は、干渉領域63内で上記直線61上に交点が存在しないが故に、ポインタを元の状態に保っている様子を示す図で、同図に示す如く、ポインタは91で示す如く、指示具120の先端部に配置していると共に、その形状は球体状である。これにより、観察者に視覚的に操作対象が存在しないことを示すことができる。
以上の説明により、本実施形態によって、操作対象を認識することが容易となり、なおかつ操作対象の候補となる仮想物体が重なって存在している場合にも所望の操作対象を選び出すことができる。よってこのようなシステムを用いれば、操作対象の仮想物体を変更するだけで、例えば、建築シミュレーションや製品設計シミュレーションなどに適用することが可能となる。
[第2の実施形態]
第1の実施形態では指示具120の先端部分にポインタとしての仮想物体を配置していたが、どのような仮想物体を配置しても良いし、ステップS5で特定した交点位置にポインタを移動させた場合に変化させる形状についても矢印に限定するものではない。図10は、指示具120の先端部分にC字型の仮想物体を配置し、且つこのC字型の仮想物体をステップS5で求めた交点位置に移動させる様子を示す図である。
第1の実施形態では指示具120の先端部分にポインタとしての仮想物体を配置していたが、どのような仮想物体を配置しても良いし、ステップS5で特定した交点位置にポインタを移動させた場合に変化させる形状についても矢印に限定するものではない。図10は、指示具120の先端部分にC字型の仮想物体を配置し、且つこのC字型の仮想物体をステップS5で求めた交点位置に移動させる様子を示す図である。
なお、ステップS5で求めた交点位置にポインタを移動させる場合に、ポインタの形状を変更するという処理については必須なものではなく、省略しても良いし、その代わりにポインタの色(テクスチャの変更、ポリゴン色の変更)を変更すると行った処理を行うようにしても良い。
また、第1の実施形態ではセンサとして全て磁気センサを用いて位置姿勢を計測しているが、センサとしてはこれ以外にも考えられ、例えば超音波センサ、光学式センサなど、その他のセンサを用いるようにしても良い。
また、視点の位置姿勢を求める手段についてはセンサを用いることに限定するものではなく、例えば、現実空間中にマーカを配置し、この配置位置、及びマーカをカメラ102でもって撮像した画像上における座標位置を用いてHMD100の位置姿勢を取得する方法を用いるようにしても良い。よって、視点の位置姿勢が得られるのであれば、センサを用いることには限定しない。
また、第1の実施形態ではHMD100にはビデオシースルータイプのものを用いているが、光学シースルー型のものを用いるようにしても良い。
また、指示具の形状としては棒状のもの以外にも、例えば、かぎ爪状等、様々なものが考えられる。
[その他の実施形態]
本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体(または記憶媒体)を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記録媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることは言うまでもない。この場合、記録媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記録した記録媒体は本発明を構成することになる。
本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体(または記憶媒体)を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記録媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることは言うまでもない。この場合、記録媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記録した記録媒体は本発明を構成することになる。
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム(OS)などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
さらに、記録媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
本発明を上記記録媒体に適用する場合、その記録媒体には、先に説明したフローチャートに対応するプログラムコードが格納されることになる。
Claims (9)
- 観察者の視点の位置姿勢を取得する第1の取得工程と、
仮想空間中の仮想物体を操作するために前記観察者が手に保持する指示具の位置姿勢を取得する第2の取得工程と、
前記指示具の、仮想物体を指し示す為の一端の位置にポインタを配置する配置工程と、
前記指示具の近傍に領域を設定する第1の設定工程と、
前記指示具の一端、他端を通る直線を設定する第2の設定工程と、
前記直線が前記領域内で仮想物体と交点を有する場合には、当該交点の位置をメモリに記録する記録工程と、
前記記録工程で記録した交点位置のうち、前記指示具の他端の位置に最も近い交点位置に前記ポインタを移動させる移動工程と、
前記第1の取得工程で取得した位置姿勢を有する視点から見える仮想空間の画像を生成する生成工程と
前記生成工程で生成した画像を外部に出力する出力工程と
を備えることを特徴とする画像処理方法。 - 前記記録工程では、前記指示具の一端、他端の間の区間で、前記直線と交点を有する仮想物体が存在する場合には、当該交点の位置を記録する処理をそれぞれの仮想物体について行うことを特徴とする請求項1に記載の画像処理方法。
- 前記移動工程では更に、前記ポインタの形状を変更させることを特徴とする請求項1又は2に記載の画像処理方法。
- 更に、前記視点から見える現実空間の画像を取得する第3の取得工程を備え、
前記出力工程では、前記第3の取得工程で取得した現実空間の画像上に前記生成工程で生成した仮想空間の画像を重畳させてから外部に出力することを特徴とする請求項1乃至3の何れか1項に記載の画像処理方法。 - 仮想空間中の仮想物体を操作するために観察者が手に保持する指示具の位置姿勢を取得する取得工程と、
前記指示具の所定の位置にポインタを配置する配置工程と、
前記指示具と仮想物体との干渉を判定する判定工程と、
前記判定工程によって前記指示具が前記仮想物体と干渉していると判定された場合は、前記ポインタの位置を干渉位置に応じて変更する変更工程と、
前記変更工程によって変更されたポインタの位置に応じたポインタ画像を含む仮想画像を生成する生成工程と
を有することを特徴とする画像処理方法。 - 観察者の視点の位置姿勢を取得する第1の取得手段と、
仮想空間中の仮想物体を操作するために前記観察者が手に保持する指示具の位置姿勢を取得する第2の取得手段と、
前記指示具の、仮想物体を指し示す為の一端の位置にポインタを配置する配置手段と、
前記指示具の近傍に領域を設定する第1の設定手段と、
前記指示具の一端、他端を通る直線を設定する第2の設定手段と、
前記直線が前記領域内で仮想物体と交点を有する場合には、当該交点の位置を記録する記録手段と、
前記記録手段が記録した交点位置のうち、前記指示具の他端の位置に最も近い交点位置に前記ポインタを移動させる移動手段と、
前記第1の取得手段が取得した位置姿勢を有する視点から見える仮想空間の画像を生成する生成手段と
前記生成手段が生成した画像を外部に出力する出力手段と
を備えることを特徴とする画像処理装置。 - 仮想空間中の仮想物体を操作するために観察者が手に保持する指示具の位置姿勢を取得する取得手段と、
前記指示具の所定の位置にポインタを配置する配置手段と、
前記指示具と仮想物体との干渉を判定する判定手段と、
前記判定手段によって前記指示具が前記仮想物体と干渉していると判定された場合は、前記ポインタの位置を干渉位置に応じて変更する変更手段と、
前記変更手段によって変更されたポインタの位置に応じたポインタ画像を含む仮想画像を生成する生成手段と
を有することを特徴とする画像処理装置。 - コンピュータに請求項1乃至5の何れか1項に記載の画像処理方法を実行させることを特徴とするプログラム。
- 請求項8に記載のプログラムを格納したことを特徴とする、コンピュータ読み取り可能な記憶媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005168404A JP2006343954A (ja) | 2005-06-08 | 2005-06-08 | 画像処理方法、画像処理装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005168404A JP2006343954A (ja) | 2005-06-08 | 2005-06-08 | 画像処理方法、画像処理装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2006343954A true JP2006343954A (ja) | 2006-12-21 |
Family
ID=37640889
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005168404A Withdrawn JP2006343954A (ja) | 2005-06-08 | 2005-06-08 | 画像処理方法、画像処理装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2006343954A (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008293357A (ja) * | 2007-05-25 | 2008-12-04 | Canon Inc | 情報処理方法および情報処理装置 |
JP2012174219A (ja) * | 2011-02-24 | 2012-09-10 | Ohbayashi Corp | 画像合成方法 |
JP2015049548A (ja) * | 2013-08-29 | 2015-03-16 | キヤノンマーケティングジャパン株式会社 | 情報処理装置、その制御方法、及びプログラム |
GB2583085A (en) * | 2019-04-11 | 2020-10-21 | Goggle Collective Ltd | Tool and method for drawing 3-D curves in 2-D |
-
2005
- 2005-06-08 JP JP2005168404A patent/JP2006343954A/ja not_active Withdrawn
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008293357A (ja) * | 2007-05-25 | 2008-12-04 | Canon Inc | 情報処理方法および情報処理装置 |
JP2012174219A (ja) * | 2011-02-24 | 2012-09-10 | Ohbayashi Corp | 画像合成方法 |
JP2015049548A (ja) * | 2013-08-29 | 2015-03-16 | キヤノンマーケティングジャパン株式会社 | 情報処理装置、その制御方法、及びプログラム |
GB2583085A (en) * | 2019-04-11 | 2020-10-21 | Goggle Collective Ltd | Tool and method for drawing 3-D curves in 2-D |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4533087B2 (ja) | 画像処理方法、画像処理装置 | |
JP4227561B2 (ja) | 画像処理方法、画像処理装置 | |
JP4356983B2 (ja) | 画像処理方法、画像処理装置 | |
US7830334B2 (en) | Image displaying method and apparatus | |
US8378997B2 (en) | Information processing method and device for presenting haptics received from a virtual object | |
US10007351B2 (en) | Three-dimensional user interface device and three-dimensional operation processing method | |
JP5769392B2 (ja) | 情報処理装置およびその方法 | |
JP5709440B2 (ja) | 情報処理装置、情報処理方法 | |
JP2009025918A (ja) | 画像処理装置、画像処理方法 | |
US20100321383A1 (en) | Method for simulating operation of object and apparatus for the same | |
JP2008040556A (ja) | 複合現実感提示装置及びその制御方法、プログラム | |
JP2000102036A (ja) | 複合現実感提示システム、複合現実感提示方法、マン・マシーンインタフェース装置、およびマン・マシーンインタフェース方法 | |
US20240338914A1 (en) | Head-mounted information processing apparatus and head-mounted display system | |
JP4574323B2 (ja) | 画像処理方法、画像処理装置 | |
JP2009169622A (ja) | 画像処理装置、画像処理方法 | |
JP2008146108A (ja) | 指標、画像処理装置、画像処理方法 | |
JP2005339377A (ja) | 画像処理方法、画像処理装置 | |
JP2005339266A (ja) | 情報処理方法、情報処理装置、撮像装置 | |
JP2009087161A (ja) | 画像処理装置、画像処理方法 | |
JP2007004713A (ja) | 画像処理方法、画像処理装置 | |
JP2006085375A (ja) | 画像処理方法、画像処理装置 | |
JP2005339267A (ja) | 情報処理方法、情報処理装置、撮像装置 | |
JP2006343954A (ja) | 画像処理方法、画像処理装置 | |
JP7279113B2 (ja) | 画像処理装置、画像処理方法、コンピュータプログラム | |
JP4217661B2 (ja) | 画像処理方法、画像処理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20080902 |