Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP4522129B2 - 画像処理方法および画像処理装置 - Google Patents
[go: Go Back, main page]

JP4522129B2 - 画像処理方法および画像処理装置 - Google Patents

画像処理方法および画像処理装置 Download PDF

Info

Publication number
JP4522129B2
JP4522129B2 JP2004106244A JP2004106244A JP4522129B2 JP 4522129 B2 JP4522129 B2 JP 4522129B2 JP 2004106244 A JP2004106244 A JP 2004106244A JP 2004106244 A JP2004106244 A JP 2004106244A JP 4522129 B2 JP4522129 B2 JP 4522129B2
Authority
JP
Japan
Prior art keywords
image
virtual
model
stylus
virtual object
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.)
Expired - Fee Related
Application number
JP2004106244A
Other languages
English (en)
Other versions
JP2005293142A (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 Inc
Original Assignee
Canon 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 Inc filed Critical Canon Inc
Priority to JP2004106244A priority Critical patent/JP4522129B2/ja
Priority to US11/087,499 priority patent/US7728852B2/en
Publication of JP2005293142A publication Critical patent/JP2005293142A/ja
Application granted granted Critical
Publication of JP4522129B2 publication Critical patent/JP4522129B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • G06F3/012Head tracking input arrangements
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/0338Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of limited linear or angular displacement of an operating part of the device from a neutral position, e.g. isotonic or isometric joysticks
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/0354Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of two-dimensional [2D] relative movements between the device, or an operating part thereof, and a plane or surface, e.g. 2D mice, trackballs, pens or pucks
    • G06F3/03542Light pens for emitting or receiving light
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/0354Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of two-dimensional [2D] relative movements between the device, or an operating part thereof, and a plane or surface, e.g. 2D mice, trackballs, pens or pucks
    • G06F3/03545Pens or stylus
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/00Three-dimensional [3D] image rendering
    • G06T15/10Geometric effects
    • G06T15/40Hidden part removal
    • G06T15/405Hidden part removal using Z-buffer
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/00Three-dimensional [3D] image rendering
    • G06T15/50Lighting effects
    • G06T15/503Blending, e.g. for anti-aliasing
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating three-dimensional [3D] models or images for computer graphics
    • G06T19/006Mixed reality
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2210/00Indexing scheme for image generation or computer graphics
    • G06T2210/62Semi-transparency

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Computer Graphics (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Geometry (AREA)
  • Processing Or Creating Images (AREA)
  • Image Processing (AREA)
  • Image Generation (AREA)
  • Studio Circuits (AREA)

Description

本発明は、複合現実感を実現するための画像処理技術に関し、特に、現実物体と仮想物体との奥行き関係を正しく、かつ簡便に表現することが可能な画像処理技術に関する。
現実空間と仮想空間とを違和感なく自然に合成する複合現実感(MR: Mixed Reality)の技術を応用したシステムが盛んに提案されている。代表的な複合現実感システムでは、カメラなどの撮像装置によって撮影した現実空間の映像に対し、コンピュータグラフィックス(CG: Computer Graphics)で描画した仮想空間の映像を位置合わせして合成して生成した複合現実感映像を、ユーザ(観察者/体験者)が装着するヘッドマウントディスプレイ(HMD: Head-Mounted Display)などの表示装置に表示することで、複合現実感をユーザに与える構成を有する。
また、バーチャル・リアリティ(VR: Virtual Reality)の分野においては、ユーザが現実物体であるスタイラス(ペンに似た形状をした指示棒)を用いて、仮想物体(仮想空間中の物体)を操作(選択・移動など)することを可能にする技術が広く知られている。この現実物体であるスタイラスにはセンサが備えられており、スタイラスの位置・姿勢を計測することができる。また、スタイラスにはボタンなどのスイッチ類が備えられており、ユーザは例えばボタンをON/OFFすることでスタイラスで指示している仮想物体に対して選択などの操作を行うことができる。
特開2003−296759号公報
通常の複合現実感システムにおいては、複合現実感映像を生成する際、現実空間を表す現実映像の上に、仮想空間を表す仮想映像を重ねて合成するため、常に現実物体よりも仮想物体が手前にあるような映像となる。ユーザが単に複合現実感映像を観察するだけであれば特に問題はないが、ユーザが、現実物体であるスタイラスを手に持って動かして、仮想物体の操作を行うような、奥行きを考慮する必要がある場合には問題が生じる。
つまり、ユーザが手で操作するスタイラスは現実空間を撮像する撮像装置の視野内に現れることがあり、さらには、スタイラスはユーザの手の届く範囲内程度の奥行き位置に存在している。従って、ユーザの手が届く範囲外(ユーザから見てスタイラスよりも遠く)に仮想物体があり、その仮想物体にスタイラスを用いて何らかの操作を行う場合、本来はスタイラスが仮想物体よりも手前に、つまり仮想物体に隠されずに表示されるべきである。しかし、単に現実映像の上に仮想映像を合成した場合、現実映像に含まれるスタイラスが仮想物体に隠れた複合現実感映像が生成されてしまう。そして、このような、仮想物体と現実物体(スタイラス)の奥行き関係が逆になった複合現実感映像を観察するユーザは違和感をおぼえる。
このような問題に対処するため、スタイラスを含む現実空間の奥行き情報を測定し、現実空間と仮想空間との奥行き関係を正しく表現する方法が提案されている。しかし、現実空間の奥行き情報をリアルタイムに、かつ精度良く測定するためには、大掛かりな測量器や多眼ステレオカメラシステムなど、高価な装置を利用する必要がある。そのため、費用的に採用が難しい場合があり、改善が求められていた。
比較的廉価に実現できる奥行き情報取得方法として、ユーザが装着するHMDに備えた2眼ステレオカメラによって撮影した現実映像を画像処理して現実空間の奥行き情報を得る方法がある。しかし、2眼ステレオカメラ映像から得られる奥行き情報は、精度も分解能も低い。よって、奥行き関係の正確な表現が重要なアプリケーションでは採用することが難しかった。
このような課題を解決するために、出願人は特許文献1において、仮想映像より手前に表示すべき現実物体(被写体)の色情報を予め登録し、この色情報を用いて現実映像から被写体領域を抽出し、被写体領域には仮想映像の描画を禁止することで、奥行き関係を正しく表現する技術を提案した。しかし、この方法では、被写体領域を検出するための色情報を手作業でシステムに登録する必要があった。そして、手作業による色情報の登録には知識と慣れが必要であり、誰でもが簡単にできる作業ではないという課題があった。
本発明は、このような従来技術の課題に鑑みなされたものであり、簡便な構成により現実物体と仮想物体との奥行き関係を正しく表現可能な画像処理方法及び装置を提供することをその主な目的とする。
上述の目的は、撮像された現実空間画像に、位置姿勢情報を有する仮想物体の画像を合成することにより複合現実感映像を生成する画像処理方法であって、描画手段が、前記仮想物体を半透明物体として描画することにより、第一の仮想画像を生成し、仮想物体を不透明物体として描画し、また、予め定めた現実物体の位置を仮想物体の位置よりも複合現実感映像の観察視点側の位置に設定して予め定めた現実物体の画像を透明物体として描画することにより、不透明物体として描画された仮想物体の画像のうち、予め定めた現実物体の画像に対応する領域の画素を削除して第二の仮想画像を生成する描画工程と、合成手段が、描画工程で生成した第一の仮想画像を現実空間画像上に合成して合成画像を生成し、さらに合成画像上に第二の仮想画像を合成して、仮想物体が予め定めた現実物体と交わらない部分は不透明に、仮想物体が予め定めた現実物体と交わる領域は半透明に示される複合現実感映像を生成する合成工程とを有することを特徴とする画像処理方法によって達成される。
また、上述の目的は、撮像された現実空間画像に、位置姿勢情報を有する仮想物体の画像を合成することにより複合現実感映像を生成する画像処理装置であって、仮想物体を半透明物体として描画することにより、第一の仮想画像を生成するとともに、仮想物体を不透明物体として描画し、また、予め定めた現実物体の位置を仮想物体の位置よりも複合現実感映像の観察視点側の位置に設定して予め定めた現実物体の画像を透明物体として描画することにより、不透明物体として描画された仮想物体の画像のうち、予め定めた現実物体の画像に対応する領域の画素を削除して第二の仮想画像を生成する描画手段と、描画手段で生成した第一の仮想画像を現実空間画像上に合成して合成画像を生成し、さらに合成画像上に第二の仮想画像を合成して、仮想物体が予め定めた現実物体と交わらない部分は不透明に、仮想物体が予め定めた現実物体と交わる領域は半透明に示される複合現実感映像を生成する合成手段とを有することを特徴とする画像処理装置によっても達成される。
また、上述の目的は、コンピュータに本発明の画像処理方法を実施させるプログラムもしくはこのプログラムを格納したコンピュータ読み取り可能な記録媒体によっても達成される。
以上述べたように、本発明によれば、現実物体と仮想物体との奥行き関係を正しく、かつ簡便に表現することが可能となる。
以下、添付の図面を参照して本発明をその好適な実施形態に基づいて詳細に説明する。
●[第1の実施形態]
図1は本発明の第1の実施形態に係る画像処理装置を用いた複合現実感システムの構成例を示すブロック図である。
図1において、複合現実感システムは、本実施形態に係る画像処理装置としての演算処理部100と、ユーザが頭部に装着する頭部装着部200と、スタイラスやユーザ視点の位置姿勢を検出するためのセンサ部300とから構成される。
演算処理部100は、例えばコンピュータなどの計算機から構成され、CPU101、RAM102、画像出力装置103、システムバス104、ディスク装置105、入力装置106、画像入力装置107を備える。
CPU101は、例えばディスク装置105に記憶される画像処理プログラムを実行し、演算処理部100内の各部を制御することで、後述する画像処理を実現する。CPU101はシステムバス104に接続され、RAM102、画像出力装置103、ディスク装置105、入力装置106、画像入力装置107と相互に通信することが可能である。
RAM102は、システムバス104を介して、画像処理プログラムのプログラムコードやプログラムの制御情報、画像入力装置107から入力した実写画像(現実映像)データのほか、CGモデルや仮想物体の配置情報などの仮想空間データ、センサ計測値、センサ較正データ等の各種データを一時的に保持する。また、RAM102は、図示しないビデオバッファを備え、画像データはビデオバッファに保持される。仮想空間データには、後述する仮想物体モデル402やスタイラスモデル403といったCGモデル(形状やテクスチャなどの情報)と、仮想物体モデル402やスタイラスモデル403が仮想空間内に配置される位置・姿勢情報、などが含まれる。仮想物体モデル402,スタイラスモデル403については、後述する。なお、本明細書においては、仮想物体モデルのことを仮想物体とも呼ぶ。
画像出力装置103は、グラフィックスカードなどの機器によって実現される。一般的に、画像出力装置103は図示しないグラフィックスメモリを保持している。CPU101上で実行されるプログラムによって生成された画像情報は、システムバス104を介して、画像出力装置103が保持するグラフィックスメモリに書き込まれる。画像出力装置103は、グラフィックスメモリに書き込まれた画像情報を適切な画像信号に変換して表示装置201に送出する。グラフィックスメモリは必ずしも画像出力装置103が保持する必要はなく、RAM102がグラフィックスメモリの機能を実現してもよい。
システムバス104は、演算処理部100を構成する各部が相互に通信するための通信路である。
ディスク装置105は、ハードディスクドライブ等によって実現される。ディスク装置105は、画像処理プログラムのプログラムコードやプログラムの制御情報、仮想空間データ、センサ較正データなどを保持する。
入力装置106は、各種インタフェース機器によって実現され、演算処理部100の外部に接続された機器からの信号をデータとして入力し、システムバス104を介して、RAM102にデータを書き込む。また、入力装置106はキーボードやマウスなどの機器を備え、本装置のユーザからの操作入力を受け付ける。
画像入力装置107は、ビデオキャプチャカードなどの機器によって実現され、頭部装着部200の撮像装置202から送出される実写画像を入力し、システムバス104を介して、RAM102に画像データを書き込む。なお、表示装置201に光学シースルー型の表示装置を用いる場合には、画像入力装置107は具備しなくてもよい。
頭部装着部200は、複合現実感を体験するユーザが頭部に装着するビデオシースルー型HMDなどによって実現される。頭部装着部200は表示装置201、撮像装置202、センサ301から構成される。本実施形態では、表示装置201、撮像装置202及びセンサ301をユーザが頭部に装着する構成を有するが、同等の複合現実感をユーザが体験できれば、これらは必ずしもユーザ頭部に装着する必要はない。
表示装置201は、ビデオシースルー型HMDに備えられるディスプレイによって実現される。表示装置201は画像出力装置103から送出される画像信号を表示し、ユーザの眼前に複合現実感映像を提示するために用いられる。表示装置201は頭部装着部200を構成する装置であるが、必ずしもユーザが装着する必要はない。ユーザが映像を確認することができる手段であれば、例えば表示装置201として据え置き型のディスプレイ装置を用いてもよいし、手持ち可能なディスプレイを用いてもよい。
撮像装置202は、CCDカメラなどの1つ以上の撮像装置によって実現される。撮像装置202はユーザの視点から見た現実空間の実写画像を撮像するために用いられる。そのため、撮像装置202はユーザの頭部の中でも視点位置に近い場所に装着することが望ましいが、ユーザの視点から見た画像を生成可能な実写画像を取得できる手段であれば、これに限定されない。また、ハーフミラーやプリズムなどを用いて撮像装置202の光軸と、表示装置201の中心軸を一致させてもよい。撮像装置202が撮像した実写画像は、(アナログ信号もしくは例えばIEEE1394規格のデジタル信号などからなる)画像信号として画像入力装置107に送出される。なお、表示装置201に光学シースルー型の表示装置を用いる場合には、本装置のユーザは表示装置201を通して現実世界を直接観察することになるため、撮像装置202は具備しなくてもよい。
センサ部300は、例えば磁気センサなどの6自由度の位置姿勢計測装置によって実現され、本装置を利用するユーザの視点(センサ301)およびスタイラス302の位置・姿勢を計測し、演算処理部100の入力装置106に送出する。センサ部300は、センサ301、スタイラス302、センサ制御装置303から構成される。
センサ301は、センサ制御装置303の制御により、本装置のユーザの視点位置・姿勢を計測し、センサ制御装置303に送出する。厳密にはセンサ301が存在(測定)する位置と、ユーザの視点位置とは一致しない。しかし、ユーザは頭部装着部200を頭部に装着しているため、センサ301の位置とユーザの視点位置との位置ずれ量(オフセット量)は一定とみなせる。よって、あらかじめその位置ずれ量(オフセット量)を求め、センサ301の測定値をオフセット量で補正すればよい。本明細書においては、説明及び理解を容易にするため、位置ずれ量(オフセット量)の扱いについての説明を省略し、センサ301によって計測する位置姿勢と、ユーザの視点位置・姿勢とが同じものとして取り扱う。また、センサ301は、ユーザが頭部に装着する頭部装着部200、センサ部300双方の構成要素である。
スタイラス302は、ペンに似た形状をしたデバイスであり、ユーザが手に持って使用する。また、スタイラス302はセンサ301と同様のセンサを備え、スタイラス302の位置・姿勢を計測することができる。図2はスタイラス302の形状および構成の例を示す外観図である。スタイラス302は、センサ制御装置303の制御により、先端部305の位置・姿勢を計測し、センサ制御装置303に送出する。以後、本明細書では、スタイラスの先端部305の位置をスタイラス302の位置、スタイラスの軸(先端部305を通り、スタイラス302の長さ方向に平行な軸)が向いている方向をスタイラス302の姿勢と表記する。また、スタイラス302には押しボタンスイッチ304が1つ以上取り付けられている。押しボタンスイッチ304のオン/オフはセンサ制御装置303へ通知される。
センサ制御装置303は、センサ301、スタイラス302に制御命令を送出し、また、センサ301、スタイラス302から位置・姿勢計測値や、押しボタンスイッチ304の操作情報を取得する。センサ制御装置303は、取得したセンサ301、スタイラス302の位置・姿勢計測値を、センサ301、スタイラス302の位置姿勢情報として入力装置106に送出する。また、取得した押しボタンスイッチ304の操作情報を入力装置106に送出する。
以上のような構成を備えたシステムにおける処理の流れについて、図3に示すフローチャートを用いて説明する。なお、図3の処理を実現するためのプログラムコードは、ディスク装置105やRAM102などの記憶装置内に格納され、CPU101により読み出され、実行される。
まず、ステップS1000では、初期化処理を行う。初期化とは、システムを構成する各機器の電源を入れたり、プログラムを起動したりといった、本実施形態の処理手順を進めるにあたり最初に行なう処理である。
ステップS1010では、頭部装着部200の構成要素である撮像装置202で撮像された現実空間の映像を、画像入力装置107を通して演算処理部100に取り込む。そして、取り込んだ現実空間の映像データをビデオバッファなどのメモリに描画する。
ステップS1020では、頭部装着部200の構成要素であるセンサ301とセンサ制御装置303とを利用して、ユーザの視点位置姿勢を計測する。また、スタイラス302とセンサ制御装置303とを利用して、スタイラス302の位置姿勢を計測する。次に、計測したユーザの視点位置姿勢情報、およびスタイラス302の位置姿勢情報を、入力装置106を通して演算処理部100に取り込む。そして、取り込んだユーザの視点位置姿勢情報、およびスタイラス302の位置姿勢情報を、ディスク装置105もしくはRAM102に記憶する。
次に、仮想空間データに含まれる仮想物体モデル(仮想物体)402と、スタイラス302との位置関係に基づいて、表示装置201に表示する画像領域に対応した視界領域(HMD視界領域)を分割する処理を行う。ここで、HMD視界領域は、ビデオバッファによって構成される。しかし、スタイラス302は現実空間中に存在する現実の物体であるため、仮想空間中に存在する仮想モデル402との位置関係を求めることはできない。そこでステップS1030ではまず、スタイラス302の代わりに、スタイラス302の形状と同一(もしくは似せた形状)の仮想物体を表すスタイラスモデル403を用意する。そして、スタイラスモデル403を、ステップS1020で計測したスタイラス302の位置姿勢に合わせて仮想空間中に配置する。
なお、スタイラスモデル403を仮想空間に配置するには、現実空間の座標系と仮想空間の座標系を完全に一致させる必要があるが、それは例えば特開2002−229730号公報、特開2003−269913号公報などに記載される方法で実現することができる。こうすることで、スタイラスモデル403と、仮想モデル402とは同じ仮想空間内に配置されるので、それらの位置関係を求めることができる。そして、表示装置201に表示する画像領域に対応した視界領域(HMD視界領域)を分割する。具体的には、スタイラスモデル403と仮想モデル402とをHMD視界領域に透視投影変換した像の位置関係によって、HMD視界領域の分割処理を行う。分割する領域区分は以下のとおりである。
・領域A:仮想モデル402のみ描画する領域。
・領域B:スタイラスモデル403のみ描画する領域、もしくはスタイラスモデル403と仮想モデル402とを描画するが、ユーザ視点位置から見てスタイラスモデル403の表面が一番手前にある領域。(すなわち所謂CG技術におけるZ−バッファ値を考えた場合、最も小さいZ−バッファ値がスタイラスモデル403の表面による値である領域。)
・領域C−1:スタイラスモデル403と仮想モデル402とを描画するが、ユーザ視点位置から見てスタイラスモデル403の表面の手前に仮想モデル402の表面が1枚だけある領域。(すなわち所謂CG技術におけるZ−バッファ値を考えた場合、最も小さいZ−バッファ値が仮想モデル402の表面による値であり、また2番目に小さいZ−バッファ値がスタイラスモデル403の表面による値である領域。)
・領域C−2:スタイラスモデル403と仮想モデル402とを描画するが、ユーザ視点位置から見てスタイラスモデル403の表面の手前に仮想モデル402の表面が2枚ある領域。(すなわち所謂CG技術におけるZ−バッファ値を考えた場合、最も小さいZ−バッファ値および2番目に小さいZ−バッファ値が仮想モデル402の表面による値であり、3番目に小さいZ−バッファ値がスタイラスモデル403の表面による値である領域。)
・領域C−n:スタイラスモデル403と仮想モデル402とを描画するが、ユーザ視点位置から見てスタイラスモデル403の表面の手前に仮想モデル402の表面がn枚ある領域。(すなわち所謂CG技術におけるZ−バッファ値を考えた場合、最も小さいZ−バッファ値からn番目に小さいZ−バッファ値までが仮想モデル402の表面による値であり、(n+1)番目に小さいZ−バッファ値がスタイラスモデル403の表面による値である領域。)
・領域D:上記A〜C−n以外の領域。
図7は、ステップS1030で行う領域分割を説明するための図であり、仮想モデル402と、スタイラスモデル403とが仮想空間中において交わっている状態が示されている。図7(a)は、仮想空間中に配置された仮想モデル402と、スタイラスモデル403とをユーザが観察している様子を、ユーザの上方から見た図である。なお、図7(a)ではユーザ視点位置を1つのみ示しているが、頭部装着部200がステレオ型(立体表示型)のビデオシースルーHMDである場合は、右眼左眼用それぞれのためにユーザ視点位置が2つあってもよい。この場合、それぞれの視点位置に応じて右眼左眼用それぞれの複合現実感映像(視差画像)が生成され、立体表示がなされる。
図7(b)は、表示装置201に表示する画像領域に対応した視界領域(HMD視界領域)を上記A〜Dの領域区分に分割した図である。なお、図7(b)は表示装置201に直接表示する画像を示しているのではなく、あくまでメモリ上に記憶管理されるビデオバッファにすぎない。同様に、図7(b)で分割した領域(領域A、領域B、領域C−1、領域C−2、領域D)を異なるパターンで記載しているのも、そのパターンで表示装置201に表示をするという意味ではなく、各領域範囲を区別して示すためであることは言うまでもない。
ステップS1040では、ステップS1030で分割した領域情報と、ステップS1020で計測した視点位置姿勢情報およびスタイラス位置姿勢情報と、ディスク装置105やRAM102に記憶している仮想モデル402の位置姿勢・色情報とを用いて、仮想モデル402およびスタイラスモデル403をビデオバッファなどのメモリに描画する。仮想モデル402およびスタイラスモデル403の描画は、図7(b)の各領域情報をもとに、描画パラメータである透過率を領域毎に変化させるべく以下のように行う。(なお、図7(b)は、表示装置201に表示する画像領域に対応した視界領域であるため、そのまま仮想モデル402およびスタイラスモデル403を描画するバッファに対応させることができる。)
・領域A:仮想モデル402を背景透過率0%で描画する。背景は全く透過されない。
・領域B:背景(現実映像)を透過すべく、スタイラスモデル403のみを、かつ透明物体として描画する。(すなわち、カラーバッファの値を0として描画する。)これにより、領域Bについては背景(現実映像)がそのまま透過されることになる(背景透過率100%となる)。
・領域C−1:仮想モデル402を背景透過率(100−α)%で描画する。スタイラスモデル403は透明物体として描画する。背景が透過率(100−α)%で透過する。
・領域C−2:仮想モデル402を背景透過率(100−α×2)%で描画する。スタイラスモデル403は透明物体として描画する。背景が透過率(100−α×2)%で透過する。
・領域C−n:仮想モデル402を背景透過率(100−α×n)%で描画する。スタイラスモデル403は透明物体として描画する。背景が透過率(100−α×n)%で透過する。
・領域D:何も描画しない。(背景を透過すべく背景透過率を100%とする。)
ここでαは、仮想モデルの透明度を示す既定の数値であり、仮想モデルはその色情報にαを乗算して描画される。(ただし0<α×n≦100)
ステップS1050では、ステップS1010で描画した現実映像の上に、ステップS1040で描画した仮想モデル402およびスタイラスモデル403を重畳合成して、画像出力装置103を通して表示装置201に表示する。図8は、合成表示された映像を示す図である。図7(b)の領域Aに対応する領域は、仮想モデル402の背景透過率が0%であるので、背景である現実映像が透けて見えることはない。また、図7(b)の領域Bに対応する領域は、スタイラスモデル403が透明物体として描画されているので、背景である現実映像が透けて見える。すなわち、現実映像に写っている現実物体であるスタイラス302が、仮想物体402に隠されずにそのまま見えることになる。また、図7(b)の領域C−1に対応する領域(スタイラスの、仮想物体内部にある領域)は、仮想モデル402の背景透過率が(100−α)%であるので、背景である現実映像が、ある程度透けて見える。例えば、α=20とすると、仮想モデル402の背景透過率は80%になる。すなわち、現実映像に写っている現実物体であるスタイラス302が、仮想物体402に完全に隠されることなく、80%の透過率で見えることになる。また、図7(b)の領域C−2に対応する領域(スタイラスの、仮想物体の後ろにある領域)は、仮想モデル402の背景透過率が(100−α×2)%であるので、背景である現実映像が、ある程度透けて見える。例えば、α=20とすると、仮想モデル402の背景透過率は60%になる。すなわち、現実映像に写っている現実物体であるスタイラス302が、仮想物体402に完全に隠されることなく、60%の透過率で見えることになる。以後、同様に、領域(C−n)は仮想モデル402の背景透過率が(100−α×n)%となる。
このようにすることで、仮想モデル402と、動いている現実物体であるスタイラス302とがどのような奥行き関係で交わり重なっているかを、ユーザに対して正確に、かつ簡便に提示することができる。
ステップS1060では、ユーザが装置の終了処理を行なっていた場合、装置を終了させる。装置を終了させるとは、プログラムを終了させたり、装置を構成する各機器の電源を切ったりといった本実施形態の処理手順を終わらせるために最後に行なう処理である。ユーザが終了処理を行なっていない場合は、処理をステップS1010に戻す。
以上述べたように、第1の実施形態によれば、仮想物体に隠されずに表示すべき状態になりうる現実物体の位置姿勢を検出すると共に、この現実物体を表すモデルを用い、仮想空間で判定した仮想物体とモデルとの位置関係に応じて仮想空間画像を描画することにより、簡便な方法により、奥行き関係を精度良く表し、ユーザに違和感を与えない複合現実感映像を生成できる。
●[第2の実施形態]
次に、本発明の第2の実施形態に係る画像処理装置を用いた複合現実感システムについて説明する。第2の実施形態に係る複合現実感システムは、第1の実施形態において図1及び図2を用いて説明したシステム構成と同じであるため、ここでの説明は省略する。
図4は、本実施形態に係る複合現実感システムの全体的な動作を説明するフローチャートである。なお、以下に説明する処理を実現するためのプログラムコードは、本実施形態の装置内のディスク装置105やRAM102などの記憶装置内に格納され、CPU101により読み出され、実行される。
ステップS2000〜S2020は、図3におけるステップS1000〜S1020と同じである。まず、ステップS2000では、装置を初期化する処理を行う。初期化とは、装置を構成する各機器の電源を入れたり、プログラムを起動したりといった、本実施形態の処理手順を進めるにあたり最初に行なう処理である。
ステップS2010では、頭部装着部200の構成要素である撮像装置202で撮像された現実空間の映像を、画像入力装置107を通して演算処理部100に取り込む。そして、取り込んだ現実空間の映像データをビデオバッファなどのメモリに描画する。
ステップS2020では、頭部装着部200の構成要素であるセンサ301とセンサ制御装置303とを利用して、ユーザの視点位置姿勢を計測する。また、スタイラス302とセンサ制御装置303とを利用して、スタイラス302の位置姿勢を計測する。次に、計測したユーザの視点位置姿勢情報、およびスタイラス302の位置姿勢情報を、入力装置106を通して演算処理部100に取り込む。そして、取り込んだユーザの視点位置姿勢情報、およびスタイラス302の位置姿勢情報を、ディスク装置105もしくはRAM102に記憶する。
ステップS2030では、まずスタイラス302の形状と同一(もしくは似せた形状)の仮想のスタイラスモデル403を用意する。そして、スタイラスモデル403を、ステップS2020で計測したスタイラス302の位置姿勢に合わせて仮想空間中に配置する。なお、スタイラスモデル403を正しく仮想空間に配置するには、現実空間の座標系と仮想空間の座標系を完全に一致させる必要があるが、それは上述のように特開2002−229730号公報、特開2003−269913号公報などが示している方法で実現することができる。
次に、ステップS2020で計測した視点位置姿勢情報およびスタイラス位置姿勢情報と、ディスク装置105やRAM102に記憶している仮想モデル402の位置姿勢・色情報とを用いて、仮想モデル402(仮想物体)を(描画パラメータである透過率を変化させて)半透明物体として、またスタイラスモデル403を透明物体としてビデオバッファなどのメモリに描画する。仮想モデル402については、あらかじめディスク装置105やRAM102に用意された、色情報と半透明情報(所謂CG技術におけるα値)とを利用して、色情報にα値を乗算して描画する。また、スタイラスモデル403については、透明物体として(すなわちカラーバッファの値を0として)描画する。これにより、領域Bについては背景(現実映像)がそのまま透過されることになる。なお、仮想モデル402およびスタイラスモデル403以外の領域は、背景を透過すべく背景透過率を100%としておく。
図9は、ステップS2030での処理を説明するための図であり、仮想モデル402と、スタイラスモデル403とが仮想空間中において交わっている様子が示されている。図9(a)は、仮想空間中に配置された仮想モデル402と、スタイラスモデル403とをユーザが観察している様子を、ユーザの上方から見た図である。なお、図7(a)ではユーザ視点位置を1つのみ示しているが、頭部装着部200がステレオ型(立体表示型)のビデオシースルーHMDである場合は、右眼左眼用それぞれのためにユーザ視点位置が2つあってもよい。この場合、それぞれの視点位置に応じて右眼左眼用それぞれの複合現実感映像(視差画像)が生成され、立体表示がなされる。
図9(b)は、表示装置201に表示する画像領域に対応した視界領域(HMD視界領域)を示す図である。(HMD視界領域は、ビデオバッファによって構成される。)図9(b)では、仮想モデル402は半透明物体として、またスタイラスモデル403は透明物体として描画されている。すなわち、仮想モデル402は、背景を半透過すべく本来の色よりも薄い色で描画されており、また仮想モデル402とスタイラスモデル403との交わりも正確に表現されている。なお、図9(b)では、便宜上、スタイラスモデル403が描画される位置を点線で示しているが、実際にこの点線がビデオバッファに描画されることはない。なお、図9(b)において、スタイラスモデル403と仮想モデル402とが重なる領域(スタイラスモデル403の先端部分)には、仮想モデル402が半透明描画される。
ステップS2040では、ステップS2010で描画した現実映像の上に、ステップS2030において描画した仮想モデル402およびスタイラスモデル403をビデオバッファなどのメモリ上で重畳合成する。(ただし、ステップS2040の時点では、この合成した映像を表示装置201に表示することはない。)こうすることで、仮想モデル402およびスタイラスモデル403は、色情報はそのままで、Z−バッファ値の情報だけを失うことになり、背景映像と同じ扱いになる。(Z−バッファ値とは、所謂CG技術において、視点位置からの奥行き情報を画素単位に定義するための値であり、ディスク装置105やRAM102で記憶管理されている。)
ステップS2050では、ステップS2020で計測した視点位置姿勢情報およびスタイラス位置姿勢情報を用いて、スタイラスモデル403を透明物体として(すなわちカラーバッファの値を0として)、ステップS2040で合成したビデオバッファとは別のビデオバッファなどのメモリに描画する。なお、ステップS2050においてスタイラスモデル403を描画する際には、スタイラスモデル403に対応する領域の背景透過率が100%となり、背景が見えるように描画することが好ましい。
具体的には、Z−バッファ値を小さく変化させて設定することが望ましい。具体的には、スタイラスモデル403が仮想モデル402と交わらない程度に、ユーザ視点位置から見て手前にあるようにスタイラスモデル403のZ−バッファ値を変化させればよい。
従って、このようなZ−バッファ値の調整は、例えば仮想モデル402とスタイラスモデル403の衝突判定を行い、仮想モデル402とスタイラスモデル403が仮想空間中において衝突せずに、かつスタイラスモデル403がユーザ視点位置から見て手前にあるように、スタイラスモデル403のZ−バッファ値をリアルタイムに設定することにより実現できる。他の方法としては、あらかじめスタイラスモデル403のZ−バッファ値を100分の1にするなど、仮想モデル402とは交わらないと想定できる範囲内で、Z−バッファの設定方法を事前に決定しておいてもよい。
ステップS2060では、ステップS2020で計測した視点位置姿勢情報と、ディスク装置105やRAM102に記憶している仮想モデル402の位置姿勢・色情報とを用いて、ステップS2050で使用したビデオバッファに仮想モデル402(仮想物体)を通常の不透明物体として描画する。一つ前のステップであるステップS2050では、スタイラスモデル403をZ−バッファ値を小さくして描画したため、スタイラスモデル403がユーザ視点位置から見て手前に、仮想モデル402はユーザ視点位置から見て後ろに描画されることになる。図10(b)は、ステップS2050およびステップS2060で、スタイラスモデル403および仮想モデル402を描画した結果である。なお、図10(b)では、スタイラスモデル403を描画する位置を点線で描くことで分かりやすく示しているが、実際にこの点線がビデオバッファに描画されることはない。また、ステップS2050およびステップS2060では、仮想モデル402およびスタイラスモデル403以外の領域は、背景を透過すべく背景透過率を100%としておく。
ステップS2070では、ステップS2050で小さく設定したスタイラスモデル403のZ−バッファ値を、元の値に戻す。(リセットする。)
ステップS2080では、ステップS2040で合成したビデオバッファの上に、ステップS2050およびステップS2060で描画した仮想モデル402およびスタイラスモデル403を重畳合成して、画像出力装置103を通して表示装置201に表示する。
図10は、ステップS2080で合成表示される映像を説明するための図である。図10(a)は、ステップS2040で合成したビデオバッファ(すなわちステップS2010で描画した現実映像と、ステップS2030で描画した仮想モデル402およびスタイラスモデル403とを合成したもの)であり、半透明の仮想モデル402と、現実映像に写っている現実物体であるスタイラス302が交わっている様子を示している。図10(b)は、先述したとおりステップS2050およびステップS2060で描画した仮想モデル402およびスタイラスモデル403を示す図である。図10(a)(b)では、スタイラスモデル403を描画する位置を点線で描くことで分かりやすく示しているが、実際にこの点線がビデオバッファに描画されることはない。
そして図10(c)は、図10(a)の上に図10(b)を重畳合成したものであり、最終的に表示装置201に表示する映像である。図10(c)を見ると分かるとおり、最終的に表示装置201に表示する映像では、スタイラス部分は図10(a)の対応部分が現われ、それ以外の仮想モデル部分は図10(b)の対応部分が現われる。すなわち、最終的に表示装置201に表示する映像では、スタイラス302と仮想モデル402が重なっている様子が表示されることになる(スタイラスモデル403と仮想モデル402が重なっている部分については、半透明描画された仮想モデル402を透して現実画像が見え、スタイラスモデル403が仮想モデル402と重なっていない部分は直接現実画像(スタイラスの実写画像)が見える)。
このようにすることで、仮想モデル402と、ユーザが操作する現実物体であるスタイラス302とがどのような奥行き関係で交わり重なっているかを、ユーザに対して正確に、かつ簡便に提示することができる。
ステップS2090では、ユーザが装置の終了処理を行なっていた場合、装置を終了させる。装置を終了させるとは、プログラムを終了させたり、装置を構成する各機器の電源を切ったりといった本実施形態の処理手順を終わらせるために最後に行なう処理である。ユーザが終了処理を行なっていない場合は、処理をステップS2010に戻す。
以上述べたように、第2の実施形態によっても、仮想物体に隠されずに表示すべき状態になりうる現実物体の位置姿勢を検出すると共に、この現実物体を表すモデルを用い、仮想空間で判定した仮想物体とモデルとの位置関係に応じて仮想空間画像を描画することにより、簡便な方法により、奥行き関係を精度良く表し、ユーザに違和感を与えない複合現実感映像を生成できる。
●[第3実施形態]
次に、本発明の第3の実施形態に係る画像処理装置を用いた複合現実感システムについて説明する。第3の実施形態に係る複合現実感システムは、第1の実施形態において図1及び図2を用いて説明したシステム構成と同じであるため、ここでの説明は省略する。
図5は、本実施形態に係る複合現実感システムの全体的な動作を説明するフローチャートである。なお、以下に説明する処理を実現するためのプログラムコードは、本実施形態の装置内のディスク装置105やRAM102などの記憶装置内に格納され、CPU101により読み出され、実行される。
図5のステップS3000〜S3020は、図3におけるステップS1000〜S1020と同じであるため、説明を省略する。
ステップS3030では、仮想モデル402(仮想物体)と、スタイラス302との位置関係に基づいて衝突判定の処理を行う。しかし、第1の実施形態において説明したように、スタイラス302は現実空間中に存在する現実の物体であるため、仮想空間中に存在する仮想モデル402との衝突判定を行うことはできない。そこで本実施形態においてもスタイラス302の代わりに、スタイラス302の形状と同一(もしくは似せた形状)の仮想物体を表すスタイラスモデル403を用意する。そして、スタイラスモデル403を、ステップS3020で計測したスタイラス302の位置姿勢に合わせて仮想空間中に配置する。
なお、スタイラスモデル403を仮想空間に配置するには、現実空間の座標系と仮想空間の座標系を完全に一致させる必要があるが、それは例えば特開2002−229730号公報、特開2003−269913号公報などに記載される方法で実現することができる。こうすることで、スタイラスモデル403と、仮想モデル402とは同じ仮想空間内に配置されるので、それらの衝突判定を行うことができる。ステップS3030で求めた衝突判定結果は、ディスク装置105もしくはRAM102に記憶する。なお、モデル同士の衝突判定処理はCG技術においては公知の技術であり、本明細書においてその説明は行わない。
ステップS3040では、ステップS3030で求めた衝突判定結果と、ステップS3020で計測した視点位置姿勢情報およびスタイラス位置姿勢情報と、ディスク装置105やRAM102に記憶している仮想モデル402の位置姿勢・色情報とを用いて、仮想モデル402およびスタイラスモデル403をビデオバッファなどのメモリに描画する。
ステップS3040の処理は、ステップS3030で求めた衝突判定結果をもとに、図11に従って行う。
すなわち、ステップS3041で、仮想モデル402とスタイラスモデル403との衝突があったと判定された場合は、処理をステップS3042に進ませる。ステップS3042では、図11(a)に示すように、仮想モデル402を(描画パラメータである透過率を変化させて)半透明物体として描画し、スタイラスモデル403を描画しない。(図11(a)は、表示装置201に表示する画像領域に対応した視界領域(HMD視界領域)を示す図である。(HMD視界領域は、ビデオバッファによって構成される。))
また、ステップS3041で、仮想モデル402とスタイラスモデル403との衝突がなかったと判定された場合は、処理をステップS3043に進ませる。ステップS3043では、図11(b)もしくは図11(c)に示すように、仮想モデル402を通常の不透明物体として描画し、スタイラスモデル403を透明物体として(すなわちカラーバッファの値を0として)描画する。なお、図11(b)は、ユーザ視点位置から見てスタイラスモデル403が仮想モデル402よりも手前にある場合を示しており、逆に、図11(c)は、ユーザ視点位置から見てスタイラスモデル403が仮想モデル402よりも後ろにある場合を示している。(図11(b)(c)は、表示装置201に表示する画像領域に対応した視界領域(HMD視界領域)を示す図である。(HMD視界領域は、ビデオバッファによって構成される。))
なお、図11では、スタイラスモデル403の位置を点線で描くことで分かりやすく示しているが、実際にこの点線がビデオバッファに描画されることはない。また、仮想モデル402およびスタイラスモデル403以外の領域は、背景を透過すべく背景透過率を100%としておく。
ステップS3050では、ステップS3010で描画した現実映像の上に、ステップS3040で描画した仮想モデル402およびスタイラスモデル403を重畳合成して、画像出力装置103を通して表示装置201に表示する。図12は、合成表示された映像を示す図である。図12(a)は、図11(a)に示したビデオバッファと、現実映像を合成した映像である。仮想モデル402とスタイラスモデル403が衝突しているとき、図12(a)に示すように、仮想モデル402が半透明表示される。こうすることで、スタイラスの衝突部分が仮想物体を透かして見え、仮想モデル402とスタイラス302が交わっているような状況を示すことができる。
図12(b)は、図11(b)に示したビデオバッファと、現実映像を合成した映像である。仮想モデル402とスタイラスモデル403が衝突していなく、かつユーザ視点位置から見てスタイラスモデル403が仮想モデル402よりも手前にある場合には、図12(b)に示すように、ユーザ視点位置から見てスタイラス302が仮想モデル402よりも手前にあるように示すことができる。図12(c)は、図11(c)に示したビデオバッファと、現実映像を合成した映像である。仮想モデル402とスタイラスモデル403が衝突していなく、かつユーザ視点位置から見てスタイラスモデル403が仮想モデル402よりも後ろにある場合には、図12(c)に示すように、ユーザ視点位置から見てスタイラス302が仮想モデル402よりも後ろにあるように示すことができる。
また、ステップS3042の変形例として、仮想モデル402とスタイラスモデル403とが衝突している場合に、その位置関係を比較して、ユーザ視点位置から見たスタイラスモデル403が、仮想モデル402に対して奥に移動するに従って、仮想モデル402の透明度を高めるように半透明情報(所謂CG技術におけるα値)を制御してもよい。
このようにすることで、仮想モデル402と、動いている現実物体であるスタイラス302とがどのような奥行き関係で交わり重なっているかを、ユーザに対して正確に、かつ簡便に提示することができる。
ステップS3060では、ユーザが装置の終了処理を行なっていた場合、装置を終了させる。装置を終了させるとは、プログラムを終了させたり、装置を構成する各機器の電源を切ったりといった本実施形態の処理手順を終わらせるために最後に行なう処理である。ユーザが終了処理を行なっていない場合は、処理をステップS3010に戻す。
また、本実施形態のステップS3030において、スタイラスモデル403と仮想モデル402との衝突があったことを判定した瞬間に、衝突があったことを表現するための効果音を出してもよい。また、スタイラス302に振動素子を備え、ステップS3030において、スタイラスモデル403と仮想モデル402との衝突があったことを判定した瞬間に、スタイラス302を既定の時間だけ振動させて、衝突があったことをユーザに知らせてもよい。
また、本実施形態のステップS3042では、スタイラスモデル403が交わり重なっている状態を示すことができれば、仮想モデル402の全ての面のうち、一部分の面のみ半透明表示してもよい。
以上述べたように、第3の実施形態によっても、仮想物体に隠されずに表示すべき状態になりうる現実物体の位置姿勢を検出すると共に、この現実物体を表すモデルを用い、仮想空間で判定した仮想物体とモデルとの位置関係に応じて仮想空間画像を描画することにより、簡便な方法により、奥行き関係を精度良く表し、ユーザに違和感を与えない複合現実感映像を生成できる。
●[第4実施形態]
次に、本発明の第4の実施形態に係る画像処理装置を用いた複合現実感システムについて説明する。第4の実施形態に係る複合現実感システムは、第1の実施形態において図1及び図2を用いて説明したシステム構成と同じであるため、ここでの説明は省略する。
図6は、本実施形態に係る複合現実感システムの全体的な動作を説明するフローチャートである。なお、以下に説明する処理を実現するためのプログラムコードは、本実施形態の装置内のディスク装置105やRAM102などの記憶装置内に格納され、CPU101により読み出され、実行される。
図6のステップS4000〜S4030は、図5におけるステップS3000〜S3030と同じであるため、説明を省略する。
ステップS4040では、まずステップS4030で求めた衝突判定結果に従って、スタイラスモデル403に対して分割もしくは非分割処理を施す。そして、ステップS4020で計測した視点位置姿勢情報およびスタイラス位置姿勢情報と、ディスク装置105やRAM102に記憶している仮想モデル402の位置姿勢・色情報と、ディスク装置105やRAM102に記憶しているスタイラスモデルパーツの色情報とを用いて、仮想モデル402およびスタイラスモデル403(分割した場合は各パーツ)をビデオバッファなどのメモリに描画する。
ステップS4040の処理は、ステップS4030で求めた衝突判定結果をもとに、図13に従って行う。すなわち、ステップS4041で、仮想モデル402とスタイラスモデル403との衝突があったと判定された場合は、処理をステップS4042に進ませる。ステップS4042ではまず、図13(a)に示すように、衝突面(交差面)を境界面として、スタイラスモデルをスタイラスモデルパーツ(P1〜P3)に分割する。ここでのパーツP1〜P3は、第1の実施形態における領域B、領域C−1及び領域C−2にそれぞれ対応する。
次に、仮想モデル402内にあるスタイラスモデルパーツ(P2)に色を付けて描画し、仮想モデル402外のスタイラスモデルパーツ(P1、P3)を透明物体として(すなわちカラーバッファの値を0として)描画する。P2は、奥行き情報を無視して、仮想物体よりも手前にあるものとして描画するとともに、その存在が目立つように描画パラメータを変化させて行う。例えば、あらかじめ定めた色で描画しても、半透明で描画しても、メッシュ模様の網模様で描画しても、ワイアフレームで描画しても、点滅させるように描画してもよい。また、仮想モデル402自体は、通常の不透明物体として描画する。(図13(a)は、表示装置201に表示する画像領域に対応した視界領域(HMD視界領域)を示す図である。(HMD視界領域は、ビデオバッファによって構成される。))
また、ステップS4041で、仮想モデル402とスタイラスモデル403との衝突がなかったと判定された場合は、処理をステップS4043に進ませる。ステップS4043ではスタイラスモデル403を分割せずに、図13(b)もしくは図13(c)に示すように、仮想モデル402を通常の不透明物体として描画し、スタイラスモデル403を透明物体として(すなわちカラーバッファの値を0として)描画する。なお、図13(b)は、ユーザ視点位置から見てスタイラスモデル403が仮想モデル402よりも手前にある場合を示しており、逆に、図13(c)は、ユーザ視点位置から見てスタイラスモデル403が仮想モデル402よりも後ろにある場合を示している。(図13(b)(c)は、表示装置201に表示する画像領域に対応した視界領域(HMD視界領域)を示す図である。(HMD視界領域は、ビデオバッファによって構成される。))
なお、図13では、スタイラスモデル403(分割した場合はスタイラスモデルパーツP1〜3)の位置を点線で描くことで分かりやすく示しているが、実際にこの点線がビデオバッファに描画されることはない。また、仮想モデル402およびスタイラスモデル403(分割した場合はスタイラスモデルパーツP1〜3)以外の領域は、背景を透過すべく背景透過率を100%としておく。
ステップS4050では、ステップS4010で描画した現実映像の上に、ステップS4040で描画した仮想モデル402およびスタイラスモデル403(分割した場合はスタイラスモデルパーツP1〜3)を重畳合成して、画像出力装置103を通して表示装置201に表示する。図14は、合成表示された映像を示す図である。図14(a)は、図13(a)に示したビデオバッファと、現実映像を合成した映像である。仮想モデル402とスタイラスモデル403が衝突しているとき、図14(a)に示すように、スタイラスモデル403と仮想モデル402が交わっている部分の色が変わる。こうすることで、仮想モデル402とスタイラス302が交わっているような状況を示すことができる。図14(a)の変形例として、図14(a')が考えられる。図14(a')では、スタイラスモデルパーツP1〜3の輪郭線を、奥行き情報を無視して一番手前になるように再描画している。こうすることで、ユーザ視点位置から見て仮想モデル402の奥にあるスタイラスモデルパーツP1の位置を示すことができる。
図14(b)は、図13(b)に示したビデオバッファと、現実映像を合成した映像である。仮想モデル402とスタイラスモデル403が衝突していなく、かつユーザ視点位置から見てスタイラスモデル403が仮想モデル402よりも手前にある場合には、図14(b)に示すように、ユーザ視点位置から見てスタイラス302が仮想モデル402よりも手前にあるように示すことができる。図14(c)は、図13(c)に示したビデオバッファと、現実映像を合成した映像である。仮想モデル402とスタイラスモデル403が衝突していなく、かつユーザ視点位置から見てスタイラスモデル403が仮想モデル402よりも後ろにある場合には、図14(c)に示すように、ユーザ視点位置から見てスタイラス302が仮想モデル402よりも後ろにあるように示すことができる。
このようにすることで、仮想モデル402と、動いている現実物体であるスタイラス302とがどのような奥行き関係で交わり重なっているかを、ユーザに対して正確に、かつ簡便に提示することができる。
ステップS4060では、ユーザが装置の終了処理を行なっていた場合、装置を終了させる。装置を終了させるとは、プログラムを終了させたり、装置を構成する各機器の電源を切ったりといった本実施形態の処理手順を終わらせるために最後に行なう処理である。ユーザが終了処理を行なっていない場合は、処理をステップS4010に戻す。
本実施形態においても、第3の実施形態と同様、ステップS4030において、スタイラスモデル403と仮想モデル402との衝突があったことを判定した瞬間に、衝突があったことを表現するための効果音を出してもよい。また、スタイラス302に振動素子を備え、ステップS4030において、スタイラスモデル403と仮想モデル402との衝突があったことを判定した瞬間に、スタイラス302を既定の時間だけ振動させて、衝突があったことをユーザに知らせてもよい。
以上述べたように、第3の実施形態によっても、仮想物体に隠されずに表示すべき状態になりうる現実物体の位置姿勢を検出すると共に、この現実物体を表すモデルを用い、仮想空間で判定した仮想物体とモデルとの位置関係に応じて仮想空間画像を描画することにより、簡便な方法により、奥行き関係を精度良く表し、ユーザに違和感を与えない複合現実感映像を生成できる。
[その他の実施形態]
上述の実施形態では、位置・姿勢を計測する手段として磁気を使った装置を例に説明したが、発明の本質としてはこれに限定されるものではなく、光学的な位置姿勢計測装置や、機械的な位置姿勢計測装置や、測量機など他の手段で実現できることはいうまでもない。
また、第1の実施形態のステップS1040や第2の実施形態のステップS2030、第3の実施形態のステップS3042などにおいて半透明描画を行っているが、網模様のメッシュ表現で描画してもよいし、ワイアフレーム表現で描画してもよいことは言うまでもない。要は、仮想物体とユーザが手に持って操作するデバイス(スタイラス)との奥行き関係が視覚的に把握できる表示形態であれば、分割した領域毎に背景透過率以外の描画パラメータを変更することができる。
また、第1の実施形態において背景透過率を減らすαの値を固定にしたが、nの数に応じてαの値を変更したり、背景透過率を(100−β)%とし、予めnの数に応じてβの値を設定しておくことも可能である。
また、上述の実施形態においては、仮想物体に隠されずに表示すべき現実物体として、ユーザが手に持って操作するスタイラスを例にして説明したが、それ以外の現実物体であってもよく、またユーザが操作するデバイスで無くても良い。少なくとも位置姿勢を検出することが可能である任意の現実物体に対して上述の方法を適用可能であることは言うまでもない。
また、各図に示されている各構成について、同じ符号を有する構成は同じ機能を実現するものであることは言うまでもない。
また、上述の実施形態においてはいずれも、センサや表示装置などを有する複合現実感システムに本発明を適用した場合について説明したが、ユーザの視点位置・姿勢及びスタイラスの位置姿勢が得られさえすれば、センサや表示装置自体を有する必要はない。すなわち、演算処理部100のみの構成であってもよい。
なお、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記憶媒体に格納されたプログラムコードを読出し実行することによっても、達成されることは言うまでもない。
この場合、記憶媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
プログラムコードを供給するための記憶媒体としては、例えば、フロッピディスク,ハードディスク,光ディスク,光磁気ディスク,CD−ROM,CD−R,磁気テープ,不揮発性のメモリカード,ROMなどを用いることができる。
また、コンピュータが読出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
さらに、記憶媒体から読出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
本発明の実施形態に係る画像処理装置を用いた複合現実感システムの構成例を示すブロック図である。 本発明の実施形態で用いるスタイラスの構成例を示す図である。 本発明の第1の実施形態における画像処理手順を説明するためのフローチャートである。 本発明の第2の実施形態における画像処理手順を説明するためのフローチャートである。 本発明の第3の実施形態における画像処理手順を説明するためのフローチャートである。 本発明の第4の実施形態における画像処理手順を説明するためのフローチャートである。 本発明の第1の実施形態における仮想モデルおよびスタイラスモデルの描画処理を説明するための図である。 本発明の第1の実施形態における合成表示画像を説明するための図である。 本発明の第2の実施形態における仮想モデルおよびスタイラスモデルの描画処理を説明するための図である。 本発明の第2の実施形態における合成表示画像を説明するための図である。 本発明の第3の実施形態における仮想モデルおよびスタイラスモデルの描画処理を説明するための図である。 本発明の第3の実施形態における合成表示画像を説明するための図である。 本発明の第4の実施形態における仮想モデルおよびスタイラスモデルの描画処理を説明するための図である。 本発明の第4の実施形態における合成表示画像を説明するための図である。

Claims (5)

  1. 撮像された現実空間画像に、位置姿勢情報を有する仮想物体の画像を合成することにより複合現実感映像を生成する画像処理方法であって、
    描画手段が
    記仮想物体を半透明物体として描画することにより、第一の仮想画像を生成し
    仮想物体を不透明物体として描画し、また、予め定めた現実物体の位置を前記仮想物体の位置よりも前記複合現実感映像の観察視点側の位置に設定して前記予め定めた現実物体の画像を透明物体として描画することにより、不透明物体として描画された前記仮想物体の画像のうち、前記予め定めた現実物体の画像に対応する領域の画素を削除して第二の仮想画像を生成する描画工程と、
    合成手段が、記描画工程で生成した前記第一の仮想画像を前記現実空間画像上に合成して合成画像を生成し、さらに前記合成画像上に前記第二の仮想画像を合成して、前記仮想物体が前記予め定めた現実物体と交わらない部分は不透明に、前記仮想物体が前記予め定めた現実物体と交わる領域は半透明に示される前記複合現実感映像を生成する合成工程とを有することを特徴とする画像処理方法。
  2. 衝突判定手段が、前記現実物体を表すモデルと前記仮想物体とが衝突するか否かを判定する衝突判定工程をさらに有し、
    前記衝突判定工程により前記モデルと前記仮想物体とが衝突すると判定された場合、前記描画手段は、前記描画工程において前記仮想物体のみを半透明物体として描画することにより前記第一の仮想画像を生成し、
    前記衝突判定工程により前記モデルと前記仮想物体とが衝突しないと判定された場合、前記描画手段は、前記描画工程において前記仮想物体を不透明物体として、前記モデルを透明物体として描画することにより前記第一の仮想画像を生成することを特徴とする請求項1記載の画像処理方法。
  3. 撮像された現実空間画像に、位置姿勢情報を有する仮想物体の画像を合成することにより複合現実感映像を生成する画像処理装置であって、
    前記仮想物体を半透明物体として描画することにより、第一の仮想画像を生成するとともに
    仮想物体を不透明物体として描画し、また、予め定めた現実物体の位置を前記仮想物体の位置よりも前記複合現実感映像の観察視点側の位置に設定して前記予め定めた現実物体の画像を透明物体として描画することにより、不透明物体として描画された前記仮想物体の画像のうち、前記予め定めた現実物体の画像に対応する領域の画素を削除して第二の仮想画像を生成する描画手段と、
    記描画手段で生成した前記第一の仮想画像を前記現実空間画像上に合成して合成画像を生成し、さらに前記合成画像上に前記第二の仮想画像を合成して、前記仮想物体が前記予め定めた現実物体と交わらない部分は不透明に、前記仮想物体が前記予め定めた現実物体と交わる領域は半透明に示される前記複合現実感映像を生成する合成手段とを有することを特徴とする画像処理装置。
  4. コンピュータを、
    撮像された現実空間画像に、位置姿勢情報を有する仮想物体の画像を合成することにより複合現実感映像を生成する画像処理装置であって、
    前記仮想物体を半透明物体として描画することにより、第一の仮想画像を生成するとともに
    仮想物体を不透明物体として描画し、また、予め定めた現実物体の位置を前記仮想物体の位置よりも前記複合現実感映像の観察視点側の位置に設定して前記予め定めた現実物体の画像を透明物体として描画することにより、不透明物体として描画された前記仮想物体の画像のうち、前記予め定めた現実物体の画像に対応する領域の画素を削除して第二の仮想画像を生成する描画手段と、
    記描画手段で生成した前記第一の仮想画像を前記現実空間画像上に合成して合成画像を生成し、さらに前記合成画像上に前記第二の仮想画像を合成して、前記仮想物体が前記予め定めた現実物体と交わらない部分は不透明に、前記仮想物体が前記予め定めた現実物体と交わる領域は半透明に示される前記複合現実感映像を生成する合成手段とを有することを特徴とする画像処理装置の各手段として機能させるためのプログラム。
  5. コンピュータを、
    撮像された現実空間画像に、位置姿勢情報を有する仮想物体の画像を合成することにより複合現実感映像を生成する画像処理装置であって、
    前記仮想物体を半透明物体として描画することにより、第一の仮想画像を生成するとともに
    仮想物体を不透明物体として描画し、また、予め定めた現実物体の位置を前記仮想物体の位置よりも前記複合現実感映像の観察視点側の位置に設定して前記予め定めた現実物体の画像を透明物体として描画することにより、不透明物体として描画された前記仮想物体の画像のうち、前記予め定めた現実物体の画像に対応する領域の画素を削除して第二の仮想画像を生成する描画手段と、
    記描画手段で生成した前記第一の仮想画像を前記現実空間画像上に合成して合成画像を生成し、さらに前記合成画像上に前記第二の仮想画像を合成して、前記仮想物体が前記予め定めた現実物体と交わらない部分は不透明に、前記仮想物体が前記予め定めた現実物体と交わる領域は半透明に示される前記複合現実感映像を生成する合成手段とを有することを特徴とする画像処理装置の各手段として機能させるためのプログラム、を格納したコンピュータ読み取り可能な記録媒体。
JP2004106244A 2004-03-31 2004-03-31 画像処理方法および画像処理装置 Expired - Fee Related JP4522129B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2004106244A JP4522129B2 (ja) 2004-03-31 2004-03-31 画像処理方法および画像処理装置
US11/087,499 US7728852B2 (en) 2004-03-31 2005-03-24 Image processing method and image processing apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004106244A JP4522129B2 (ja) 2004-03-31 2004-03-31 画像処理方法および画像処理装置

Publications (2)

Publication Number Publication Date
JP2005293142A JP2005293142A (ja) 2005-10-20
JP4522129B2 true JP4522129B2 (ja) 2010-08-11

Family

ID=35095839

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004106244A Expired - Fee Related JP4522129B2 (ja) 2004-03-31 2004-03-31 画像処理方法および画像処理装置

Country Status (2)

Country Link
US (1) US7728852B2 (ja)
JP (1) JP4522129B2 (ja)

Families Citing this family (104)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050219240A1 (en) * 2004-04-05 2005-10-06 Vesely Michael A Horizontal perspective hands-on simulator
WO2005098516A2 (en) * 2004-04-05 2005-10-20 Vesely Michael A Horizontal perspective hand-on simulator
US20050248566A1 (en) * 2004-04-05 2005-11-10 Vesely Michael A Horizontal perspective hands-on simulator
KR20070052260A (ko) * 2004-06-01 2007-05-21 마이클 에이 베슬리 수평 원근법 디스플레이
JP4677273B2 (ja) * 2004-06-29 2011-04-27 キヤノン株式会社 情報処理方法および情報処理装置
US20060250391A1 (en) 2005-05-09 2006-11-09 Vesely Michael A Three dimensional horizontal perspective workstation
US8717423B2 (en) 2005-05-09 2014-05-06 Zspace, Inc. Modifying perspective of stereoscopic images based on changes in user viewpoint
WO2007017598A2 (fr) * 2005-08-09 2007-02-15 Total Immersion Procede et dispositifs pour visualiser un modele numerique dans un environnement reel
JP4795091B2 (ja) * 2006-04-21 2011-10-19 キヤノン株式会社 情報処理方法および装置
US7728868B2 (en) 2006-08-02 2010-06-01 Inneroptic Technology, Inc. System and method of providing real-time dynamic imagery of a medical procedure site using multiple modalities
JP4909176B2 (ja) * 2007-05-23 2012-04-04 キヤノン株式会社 複合現実感提示装置及びその制御方法、コンピュータプログラム
KR101141087B1 (ko) 2007-09-14 2012-07-12 인텔렉츄얼 벤처스 홀딩 67 엘엘씨 제스처-기반 사용자 상호작용의 프로세싱
DE102007045834B4 (de) 2007-09-25 2012-01-26 Metaio Gmbh Verfahren und Vorrichtung zum Darstellen eines virtuellen Objekts in einer realen Umgebung
DE102007045835B4 (de) 2007-09-25 2012-12-20 Metaio Gmbh Verfahren und Vorrichtung zum Darstellen eines virtuellen Objekts in einer realen Umgebung
JP4950834B2 (ja) * 2007-10-19 2012-06-13 キヤノン株式会社 画像処理装置、画像処理方法
EP2058764B1 (en) 2007-11-07 2017-09-06 Canon Kabushiki Kaisha Image processing apparatus and image processing method
JP5025496B2 (ja) * 2008-01-09 2012-09-12 キヤノン株式会社 画像処理装置及び画像処理方法
US9082213B2 (en) 2007-11-07 2015-07-14 Canon Kabushiki Kaisha Image processing apparatus for combining real object and virtual object and processing method therefor
JP4933406B2 (ja) * 2007-11-15 2012-05-16 キヤノン株式会社 画像処理装置、画像処理方法
US8690776B2 (en) 2009-02-17 2014-04-08 Inneroptic Technology, Inc. Systems, methods, apparatuses, and computer-readable media for image guided surgery
US11464578B2 (en) 2009-02-17 2022-10-11 Inneroptic Technology, Inc. Systems, methods, apparatuses, and computer-readable media for image management in image-guided medical procedures
US8641621B2 (en) 2009-02-17 2014-02-04 Inneroptic Technology, Inc. Systems, methods, apparatuses, and computer-readable media for image management in image-guided medical procedures
JP5247590B2 (ja) * 2009-05-21 2013-07-24 キヤノン株式会社 情報処理装置及びキャリブレーション処理方法
WO2010150220A1 (en) * 2009-06-25 2010-12-29 Koninklijke Philips Electronics N.V. Method and system for controlling the rendering of at least one media signal
GB0915589D0 (en) * 2009-09-07 2009-10-07 Sony Comp Entertainment Europe Image processing method, apparatus and system
JP2011128838A (ja) * 2009-12-17 2011-06-30 Panasonic Corp 画像表示装置
US20110149042A1 (en) * 2009-12-18 2011-06-23 Electronics And Telecommunications Research Institute Method and apparatus for generating a stereoscopic image
US8717360B2 (en) 2010-01-29 2014-05-06 Zspace, Inc. Presenting a view within a three dimensional scene
US9858475B2 (en) 2010-05-14 2018-01-02 Intuitive Surgical Operations, Inc. Method and system of hand segmentation and overlay using depth data
US8639020B1 (en) 2010-06-16 2014-01-28 Intel Corporation Method and system for modeling subjects from a depth map
JP5709440B2 (ja) * 2010-08-31 2015-04-30 キヤノン株式会社 情報処理装置、情報処理方法
US9142062B2 (en) 2011-03-29 2015-09-22 Qualcomm Incorporated Selective hand occlusion over virtual projections onto physical surfaces using skeletal tracking
JP5741160B2 (ja) 2011-04-08 2015-07-01 ソニー株式会社 表示制御装置、表示制御方法、およびプログラム
US8786529B1 (en) 2011-05-18 2014-07-22 Zspace, Inc. Liquid crystal variable drive voltage
KR101845231B1 (ko) 2011-06-14 2018-04-04 삼성전자주식회사 영상 처리 장치 및 방법
US11048333B2 (en) 2011-06-23 2021-06-29 Intel Corporation System and method for close-range movement tracking
JP6074170B2 (ja) 2011-06-23 2017-02-01 インテル・コーポレーション 近距離動作のトラッキングのシステムおよび方法
US9886552B2 (en) 2011-08-12 2018-02-06 Help Lighting, Inc. System and method for image registration of multiple video streams
US9418292B2 (en) * 2011-10-04 2016-08-16 Here Global B.V. Methods, apparatuses, and computer program products for restricting overlay of an augmentation
US9454849B2 (en) 2011-11-03 2016-09-27 Microsoft Technology Licensing, Llc Augmented reality playspaces with adaptive game rules
CN102609163B (zh) * 2012-01-18 2015-11-25 华为终端有限公司 一种电子装置
JP6000579B2 (ja) 2012-03-09 2016-09-28 キヤノン株式会社 情報処理装置、情報処理方法
JP5977544B2 (ja) 2012-03-09 2016-08-24 キヤノン株式会社 情報処理装置、情報処理方法
JP5975685B2 (ja) 2012-03-09 2016-08-23 キヤノン株式会社 情報処理装置、情報処理方法
US9477303B2 (en) * 2012-04-09 2016-10-25 Intel Corporation System and method for combining three-dimensional tracking with a three-dimensional display for a user interface
US9020203B2 (en) 2012-05-21 2015-04-28 Vipaar, Llc System and method for managing spatiotemporal uncertainty
EP2670130B1 (en) * 2012-06-01 2019-03-27 Alcatel Lucent Method and apparatus for mixing a first video signal and a second video signal
US9035970B2 (en) 2012-06-29 2015-05-19 Microsoft Technology Licensing, Llc Constraint based information inference
US9105210B2 (en) * 2012-06-29 2015-08-11 Microsoft Technology Licensing, Llc Multi-node poster location
US9292085B2 (en) 2012-06-29 2016-03-22 Microsoft Technology Licensing, Llc Configuring an interaction zone within an augmented reality environment
JP6069923B2 (ja) * 2012-07-20 2017-02-01 セイコーエプソン株式会社 ロボットシステム、ロボット、ロボット制御装置
JP6143469B2 (ja) * 2013-01-17 2017-06-07 キヤノン株式会社 情報処理装置、情報処理方法及びプログラム
EP2953099B1 (en) * 2013-02-01 2019-02-13 Sony Corporation Information processing device, terminal device, information processing method, and programme
US10314559B2 (en) * 2013-03-14 2019-06-11 Inneroptic Technology, Inc. Medical device guidance
JP2015026286A (ja) * 2013-07-26 2015-02-05 セイコーエプソン株式会社 表示装置、表示システムおよび表示装置の制御方法
JP6148887B2 (ja) * 2013-03-29 2017-06-14 富士通テン株式会社 画像処理装置、画像処理方法、及び、画像処理システム
US9940750B2 (en) 2013-06-27 2018-04-10 Help Lighting, Inc. System and method for role negotiation in multi-reality environments
JP6337433B2 (ja) * 2013-09-13 2018-06-06 セイコーエプソン株式会社 頭部装着型表示装置および頭部装着型表示装置の制御方法
US9986225B2 (en) * 2014-02-14 2018-05-29 Autodesk, Inc. Techniques for cut-away stereo content in a stereoscopic display
WO2015126987A1 (en) * 2014-02-18 2015-08-27 Merge Labs, Inc. Head mounted display goggles for use with mobile computing devices
US9575564B2 (en) 2014-06-17 2017-02-21 Chief Architect Inc. Virtual model navigation methods and apparatus
US9589354B2 (en) * 2014-06-17 2017-03-07 Chief Architect Inc. Virtual model viewing methods and apparatus
US10724864B2 (en) 2014-06-17 2020-07-28 Chief Architect Inc. Step detection methods and apparatus
US9595130B2 (en) 2014-06-17 2017-03-14 Chief Architect Inc. Virtual model navigation methods and apparatus
US9901406B2 (en) 2014-10-02 2018-02-27 Inneroptic Technology, Inc. Affected region display associated with a medical device
US10068369B2 (en) * 2014-11-04 2018-09-04 Atheer, Inc. Method and apparatus for selectively integrating sensory content
US10188467B2 (en) 2014-12-12 2019-01-29 Inneroptic Technology, Inc. Surgical guidance intersection display
JP6742701B2 (ja) 2015-07-06 2020-08-19 キヤノン株式会社 情報処理装置、その制御方法及びプログラム
US9949700B2 (en) 2015-07-22 2018-04-24 Inneroptic Technology, Inc. Medical device approaches
US9675319B1 (en) 2016-02-17 2017-06-13 Inneroptic Technology, Inc. Loupe display
CN105809671B (zh) * 2016-03-02 2018-10-16 无锡北邮感知技术产业研究院有限公司 前景区域标注与深度次序推理的联合学习方法
US10650591B1 (en) 2016-05-24 2020-05-12 Out of Sight Vision Systems LLC Collision avoidance system for head mounted display utilized in room scale virtual reality system
US10981060B1 (en) 2016-05-24 2021-04-20 Out of Sight Vision Systems LLC Collision avoidance system for room scale virtual reality system
JP6857980B2 (ja) * 2016-08-02 2021-04-14 キヤノン株式会社 情報処理装置、情報処理装置の制御方法およびプログラム
US10278778B2 (en) 2016-10-27 2019-05-07 Inneroptic Technology, Inc. Medical device navigation using a virtual 3D space
US12229895B1 (en) 2016-12-08 2025-02-18 Out of Sight Vision Systems LLC Virtual reality detection and projection system for use with a head mounted display
US11259879B2 (en) 2017-08-01 2022-03-01 Inneroptic Technology, Inc. Selective transparency to assist medical device navigation
JP7005224B2 (ja) * 2017-08-22 2022-01-21 キヤノン株式会社 情報処理装置、システム、画像処理方法、コンピュータプログラム、及び記憶媒体
CN108182730B (zh) * 2018-01-12 2022-08-12 北京小米移动软件有限公司 虚实对象合成方法及装置
US11484365B2 (en) 2018-01-23 2022-11-01 Inneroptic Technology, Inc. Medical image guidance
US10916066B2 (en) * 2018-04-20 2021-02-09 Edx Technologies, Inc. Methods of virtual model modification
US11417051B2 (en) 2018-09-28 2022-08-16 Sony Corporation Information processing apparatus and information processing method to ensure visibility of shielded virtual objects
JP7238594B2 (ja) * 2019-05-21 2023-03-14 セイコーエプソン株式会社 表示システムの制御方法、及び表示システム
USD959476S1 (en) 2019-12-20 2022-08-02 Sap Se Display system or portion thereof with a virtual three-dimensional animated graphical user interface
US11205296B2 (en) * 2019-12-20 2021-12-21 Sap Se 3D data exploration using interactive cuboids
USD959447S1 (en) 2019-12-20 2022-08-02 Sap Se Display system or portion thereof with a virtual three-dimensional animated graphical user interface
USD959477S1 (en) 2019-12-20 2022-08-02 Sap Se Display system or portion thereof with a virtual three-dimensional animated graphical user interface
KR102288431B1 (ko) * 2020-01-31 2021-08-10 주식회사 빌리버 가상현실을 이용한 이미지입력시스템 및 이를 이용한 이미지데이터 생성방법
US11107280B1 (en) * 2020-02-28 2021-08-31 Facebook Technologies, Llc Occlusion of virtual objects in augmented reality by physical objects
AU2021349381B2 (en) 2020-09-25 2024-02-22 Apple Inc. Methods for interacting with virtual controls and/or an affordance for moving virtual objects in virtual environments
US11836871B2 (en) 2021-03-22 2023-12-05 Apple Inc. Indicating a position of an occluded physical object
JP2023079161A (ja) * 2021-11-26 2023-06-07 ソニーグループ株式会社 表示制御装置、表示制御方法、及びプログラム
CN119556830A (zh) 2022-01-12 2025-03-04 苹果公司 用于在环境中显示、选择以及移动对象和容器的方法
US12541280B2 (en) 2022-02-28 2026-02-03 Apple Inc. System and method of three-dimensional placement and refinement in multi-user communication sessions
EP4511722A1 (en) 2022-04-20 2025-02-26 Apple Inc. Obstructed objects in a three-dimensional environment
WO2024059755A1 (en) * 2022-09-14 2024-03-21 Apple Inc. Methods for depth conflict mitigation in a three-dimensional environment
US12112011B2 (en) 2022-09-16 2024-10-08 Apple Inc. System and method of application-based three-dimensional refinement in multi-user communication sessions
CN120266083A (zh) 2022-09-24 2025-07-04 苹果公司 用于基于注意力与用户界面交互的方法
KR20250075620A (ko) 2022-09-24 2025-05-28 애플 인크. 3차원 환경을 제어하고 그와 상호작용하기 위한 방법들
US12524956B2 (en) 2022-09-24 2026-01-13 Apple Inc. Methods for time of day adjustments for environments and environment presentation during communication sessions
CN121165940A (zh) 2023-01-30 2025-12-19 苹果公司 用于响应于注视和/或手势输入来显示多组控件的设备、方法和图形用户界面
CN121187445A (zh) 2023-06-04 2025-12-23 苹果公司 用于管理重叠窗口和应用视觉效果的方法
CN117078748A (zh) * 2023-08-31 2023-11-17 如你所视(北京)科技有限公司 混合现实场景中虚拟物体定位方法、装置及存储介质
US20250378645A1 (en) 2024-06-09 2025-12-11 Apple Inc. Methods of interacting with content in a virtual environment

Family Cites Families (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0474282A (ja) * 1990-07-16 1992-03-09 Matsushita Electric Ind Co Ltd 3次元加工装置
US5394202A (en) * 1993-01-14 1995-02-28 Sun Microsystems, Inc. Method and apparatus for generating high resolution 3D images in a head tracked stereo display system
US5421589A (en) * 1993-05-14 1995-06-06 The Walt Disney Company Method and apparatus for displaying an alpha channel virtual image
US6278418B1 (en) * 1995-12-29 2001-08-21 Kabushiki Kaisha Sega Enterprises Three-dimensional imaging system, game device, method for same and recording medium
US6118427A (en) * 1996-04-18 2000-09-12 Silicon Graphics, Inc. Graphical user interface with optimal transparency thresholds for maximizing user performance and system efficiency
JP3338618B2 (ja) * 1996-10-07 2002-10-28 ミノルタ株式会社 実空間画像と仮想空間画像の表示方法及び表示装置
US20020036617A1 (en) * 1998-08-21 2002-03-28 Timothy R. Pryor Novel man machine interfaces and applications
US6037914A (en) * 1997-08-25 2000-03-14 Hewlett-Packard Company Method and apparatus for augmented reality using a see-through head-mounted display
US6069633A (en) * 1997-09-18 2000-05-30 Netscape Communications Corporation Sprite engine
US6166744A (en) * 1997-11-26 2000-12-26 Pathfinder Systems, Inc. System for combining virtual images with real-world scenes
US5913591A (en) * 1998-01-20 1999-06-22 University Of Washington Augmented imaging using a silhouette to improve contrast
JP3450792B2 (ja) * 1999-03-25 2003-09-29 キヤノン株式会社 奥行き画像計測装置及び方法、並びに複合現実感提示システム
JP2000350865A (ja) * 1999-06-11 2000-12-19 Mr System Kenkyusho:Kk 複合現実空間のゲーム装置、その画像処理方法およびプログラム記憶媒体
US20010056574A1 (en) * 2000-06-26 2001-12-27 Richards Angus Duncan VTV system
JP4527853B2 (ja) * 2000-07-28 2010-08-18 株式会社バンダイナムコゲームス ゲームシステム及び情報記憶媒体
JP3517639B2 (ja) * 2000-09-27 2004-04-12 キヤノン株式会社 複合現実感提示装置及びその方法並びに記憶媒体
US20020044152A1 (en) * 2000-10-16 2002-04-18 Abbott Kenneth H. Dynamic integration of computer generated and real world images
JP2002157607A (ja) * 2000-11-17 2002-05-31 Canon Inc 画像生成システム、画像生成方法および記憶媒体
JP3631151B2 (ja) 2000-11-30 2005-03-23 キヤノン株式会社 情報処理装置、複合現実感提示装置及びその方法並びに記憶媒体
US7176936B2 (en) * 2001-03-27 2007-02-13 Siemens Corporate Research, Inc. Augmented reality guided instrument positioning with modulated guiding graphics
DE60130264T2 (de) * 2001-06-13 2008-05-21 Volume Interactions Pte. Ltd. Führungssystem
JP3584229B2 (ja) * 2001-09-28 2004-11-04 キヤノン株式会社 映像体験システムおよび情報処理方法
US20030062675A1 (en) 2001-09-28 2003-04-03 Canon Kabushiki Kaisha Image experiencing system and information processing method
JP4072330B2 (ja) 2001-10-31 2008-04-09 キヤノン株式会社 表示装置および情報処理方法
US7411594B2 (en) 2002-01-15 2008-08-12 Canon Kabushiki Kaisha Information processing apparatus and method
EP1349114A3 (en) 2002-03-19 2011-06-15 Canon Kabushiki Kaisha Sensor calibration apparatus, sensor calibration method, program, storage medium, information processing method, and information processing apparatus
JP4095320B2 (ja) 2002-03-19 2008-06-04 キヤノン株式会社 センサ較正装置、センサ較正方法、プログラム、記憶媒体
JP4136420B2 (ja) 2002-03-29 2008-08-20 キヤノン株式会社 情報処理方法および装置
JP3944019B2 (ja) * 2002-07-31 2007-07-11 キヤノン株式会社 情報処理装置および方法
US7427996B2 (en) 2002-10-16 2008-09-23 Canon Kabushiki Kaisha Image processing apparatus and image processing method
JP4401728B2 (ja) 2003-09-30 2010-01-20 キヤノン株式会社 複合現実空間画像生成方法及び複合現実感システム
JP2005149409A (ja) 2003-11-19 2005-06-09 Canon Inc 画像再生方法及び装置
JP2007529007A (ja) * 2004-03-12 2007-10-18 ブラッコ イメージング ソチエタ ペル アチオニ 強化現実システムにおけるオーバーレイ・エラーの測定方法と、その計測システム

Also Published As

Publication number Publication date
US7728852B2 (en) 2010-06-01
JP2005293142A (ja) 2005-10-20
US20050231532A1 (en) 2005-10-20

Similar Documents

Publication Publication Date Title
JP4522129B2 (ja) 画像処理方法および画像処理装置
US20260017903A1 (en) Head-mounted information processing apparatus and head-mounted display system
JP4533087B2 (ja) 画像処理方法、画像処理装置
JP4933406B2 (ja) 画像処理装置、画像処理方法
JP4795091B2 (ja) 情報処理方法および装置
JP4227561B2 (ja) 画像処理方法、画像処理装置
JP4950834B2 (ja) 画像処理装置、画像処理方法
US8994729B2 (en) Method for simulating operation of object and apparatus for the same
JP4883774B2 (ja) 情報処理装置及びその制御方法、プログラム
CN115244492B (zh) 物理对象对增强现实中的虚拟对象的遮挡
US7830334B2 (en) Image displaying method and apparatus
JP4356983B2 (ja) 画像処理方法、画像処理装置
US8207909B2 (en) Image processing apparatus and image processing method
US20070132662A1 (en) Information processing method, information processing apparatus, and image sensing apparatus
JP4574323B2 (ja) 画像処理方法、画像処理装置
JP2009025918A (ja) 画像処理装置、画像処理方法
JP2005339266A (ja) 情報処理方法、情報処理装置、撮像装置
JP2009087161A (ja) 画像処理装置、画像処理方法
JP2009048237A (ja) 画像処理装置、画像処理方法
JP2006085375A (ja) 画像処理方法、画像処理装置
JP4217661B2 (ja) 画像処理方法、画像処理装置
JP2005251118A (ja) 画像処理方法、画像処理装置
JP4689344B2 (ja) 情報処理方法、情報処理装置
JP2006343954A (ja) 画像処理方法、画像処理装置
JP2007179483A (ja) 情報処理装置、情報処理方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070308

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091120

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100118

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100219

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100416

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: 20100514

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100525

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 4522129

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130604

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees