JP2008146109A - 画像処理方法、画像処理装置 - Google Patents

画像処理方法、画像処理装置 Download PDF

Info

Publication number
JP2008146109A
JP2008146109A JP2006328840A JP2006328840A JP2008146109A JP 2008146109 A JP2008146109 A JP 2008146109A JP 2006328840 A JP2006328840 A JP 2006328840A JP 2006328840 A JP2006328840 A JP 2006328840A JP 2008146109 A JP2008146109 A JP 2008146109A
Authority
JP
Japan
Prior art keywords
image
identification code
captured image
virtual space
orientation information
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
Application number
JP2006328840A
Other languages
English (en)
Inventor
Tomohiko Shimoyama
朋彦 下山
Kenji Morita
憲司 守田
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 JP2006328840A priority Critical patent/JP2008146109A/ja
Publication of JP2008146109A publication Critical patent/JP2008146109A/ja
Withdrawn legal-status Critical Current

Links

Images

Landscapes

  • Length Measuring Devices By Optical Means (AREA)
  • Processing Or Creating Images (AREA)
  • Image Processing (AREA)

Abstract

【課題】 現実空間の画像と仮想空間の画像とをずれなく合成するための技術を提供すること。
【解決手段】 位置姿勢計算部806は撮像画像の撮像視点の位置姿勢情報を求め、識別コードとセットにしてコンピュータ130に送信する。識別コード生成部805は撮像画像と撮像画像の撮像視点の位置姿勢情報に共通の識別コードを発行し、撮像画像と識別コードとをセットにして実写画像格納部804に格納する。実写画像選択部803は、コンピュータ130から送信された仮想空間画像中の識別コードとセットになって実写画像格納部804に格納されている撮像画像を取得する。合成部802は、実写画像選択部803が選択した撮像画像とコンピュータ130から受信した仮想空間画像とを合成した合成画像をHMD110に出力する。
【選択図】 図8

Description

本発明は、現実空間の撮像画像と、仮想空間の画像とを合成するための技術に関するものである。
複合現実感技術とは、現実空間の画像と仮想空間の画像(CG)とを合成したものをユーザに提示することにより、現実空間中にあたかも仮想物体が存在しているかのような感覚をユーザに与えるためのものである。
複合現実感技術における典型的なアプリケーションとしては次のようなものがある。ユーザはビデオシースルー型のHMD(ヘッドマウントディスプレイ)を自身の頭部に装着する。HMDにはカメラと、ユーザの視点の位置姿勢を計測するためのセンサとが取り付けられている。そして、HMDが有するディスプレイには、カメラが撮像した現実空間の画像に、センサの計測値に基づいて作成されたCG等が合成された合成画像が表示される。HMDを装着しているユーザはこの表示画像を見ることで、現実空間中にあたかも仮想物体が存在しているかのような感覚を覚える。
このようなアプリケーションの一例として、現実物体である机の上に配置されたマーカの上に仮想物体であるティーポットを配置するシステムについて、図1を用いて説明する。図1は、複合現実感技術に適用されるシステム、及びその環境について示す図である。
130はコンピュータであり、本体、モニタ、キーボードから成る。
120は現実物体である机である。121は、机の上に配置されているマーカである。100はユーザであり、ユーザ100の頭部にはHMD110が装着されている。
図2は、HMD110の構成を示す図である。HMD110は、右目カメラ210、左目カメラ211、右目LCD(液晶画面)230、左目LCD231を有する。右目LCD230には右目カメラ210により撮像された現実空間の画像が表示され、左目LCD231には左目カメラ211により撮像された現実空間の画像が表示される。
図1に戻って、HMD110には不図示のセンサが取り付けられており、ユーザ100の視点の位置姿勢を計測し、コンピュータ130に送出する。コンピュータ側では、視点から見える仮想物体(ティーポット)の仮想画像を生成し、右目LCD230、左目LCD231に送出する。これにより、右目LCD230には、右目カメラ210により撮像された現実空間の画像上に仮想画像が重畳表示される。そして、左目LCD231には、左目カメラ211により撮像された現実空間の画像上に仮想画像が重畳表示される。
これによりユーザ100は、眼前の風景に仮想物体が存在するかのように見える。
図3は、現実空間の画像と仮想物体の画像とを重畳する様子を説明する図である。300は右目カメラ210(左目カメラ211)により撮像された現実空間の画像であり、係る画像中には机120、マーカ121が含まれている。310はコンピュータ130側で作成した仮想物体の画像である。ここでは、仮想物体であるティーポット399の仮想画像である。320は、画像300と画像310とを合成することによって得られる画像である。
ここで、それぞれの画像300,310を合成する際、マーカ121の上にティーポット399の仮想物体を位置させる必要がある。そのためには、左目カメラ211の位置姿勢(現実には左目カメラ211と机120との相対位置姿勢)、右目カメラ210の位置姿勢(現実には右目カメラ210と机120との相対位置姿勢)とを何らかの方法で取得する必要がある。
例えば、左目カメラ211の位置姿勢を取得する方法の1つとして、机120の上に設置したマーカ121を用いるものがある。これは左目カメラ211が撮像した画像中のマーカ121の座標位置から、三角測量の原理で左目カメラ211の位置姿勢を求めるものである。このような複合現実感技術の実現は、非特許文献1に開示されている。
また、このような複合現実感技術をより簡便に実現するために、図4に示すような構成を有するシステムが用いられている。図4は、複合現実感技術をより簡便に実現するためのシステムの機能構成を示すブロック図である。
同図のシステムでは、コンピュータ130にアダプタ400を接続し、このアダプタ400にHMD110を接続する。アダプタ400は、画像合成部410と撮像位置姿勢計算部420とを有する。
画像合成部410はコンピュータ130から送出された仮想空間の画像(CG画像)とHMD110から送出された現実空間の画像(実写画像)とを合成する。そして、合成結果をCG・実写合成画像としてHMD110の右目LCD230、左目LCD231に送出する。
撮像位置姿勢計算部420は、HMD110に取り付けられたセンサからの計測値に基づいて、ユーザの視点位置姿勢(撮像位置姿勢)を求め、求めた視点位置姿勢をコンピュータ130に送出する。
このように、合成画像の生成、及び視点位置姿勢の計算といった、複合現実感技術の為の処理の一部をアダプタ400に分担させることで、コンピュータ130の構成の自由度を上げることができる。さらに、視点位置姿勢計算の負荷分散を計ることができる。これにより、システム全体としてのパフォーマンスを向上させることができる。
しかしながら、画像合成部410をコンピュータ130から独立させた場合、CG画像と実写画像との位置ずれが問題となることがある。
例えば、図5に示すように、ユーザ100が自身の頭部を矢印に示す方向に振ったとする。一般に、1フレームのCG画像の描画を完了させるまでに要する時間は、右目カメラ210や左目カメラ211が1フレームの画像を取得するために要する時間よりも長い。例えば、図6に示す如く、t=0に対応する実写画像に合成するためのCG画像をt=0で作成し初めても、描画が完了する頃にはt=2となっている。よって、t=2に対応する実写画像とこのCG画像とを合成することになる。このため、601に示す如く、机の像650とティーポットの像660とはずれた位置に合成されていまい、机の上にティーポットの仮想物体を配置することができない。
この問題は、実写画像を一定時間分遅らせて出力するバッファを使うことで緩和することができる。特許文献1には、実写画像を一定時間分遅らせて出力するバッファを使う際の問題について開示されている。
実写画像を一定時間分遅らせて出力するバッファを上記アダプタ400に組み込んだシステムを図7に示す。図7は、図4に示したアダプタ400にバッファ(実写画像バッファ)750を組み込んだシステムの機能構成を示すブロック図である。
バッファ750は、右目カメラ210、左目カメラ211から受けたフレームをバッファリングし、所望のフレーム数分前のものを順次画像合成部410に送出する。これにより、実写画像をCG画像の描画に要する時間分遅らせることができ、図6に示したようなCG画像と実写画像とのずれを緩和することができる。
Kato, H., Billinghurst, M. (1999) Marker Tracking and HMD Calibration for a video-based Augmented Reality Conferencing System. In Proceedings of the 2nd International Workshop on Augmented Reality (IWAR 99). October, San Francisco, USA 特開平07−212653号公報
しかしながら図7に示したシステムを用いただけでは、図6で示したようなCG画像と実写画像とのずれを緩和することはできるものの、なくすことはできなかった。その原因は、コンピュータ130側で1フレーム分のCG画像を生成、描画するために要する時間は各フレームで一定ではないからである。
例えば図6では、t=0に対応する実写画像に合成するためのCG画像をt=0で作成し初めると、描画が完了する頃にはt=2となっている。この状況に合わせて図7に示したシステムを用いると、バッファ750は、2フレーム前のものを画像合成部410に出力すれば、上記ずれは解消される。
しかし、コンピュータ130側で1フレーム分のCG画像を生成、描画するために要する時間は、例えば、ティーポットの仮想物体が左目LCD231、右目LCD230のそれぞれに写っているか否かで大きく異なる。
図7の構成では、実写画像を遅らせて出力する際の遅れ分は、各フレームで固定である。従って、コンピュータ130側で1フレーム分のCG画像を生成、描画するために要する時間が各フレームで同じであれば、上記ずれの問題は生じない。しかし、コンピュータ130側で1フレーム分のCG画像を生成、描画するために要する時間が各フレームで異なる場合には、上記ずれの問題が生じてしまう。
CG画像と実写画像とのずれをなくすためには、時刻tの実写画像と、時刻tの画像から計算した撮像位置姿勢情報を用いて作成したCG画像とを合成しなければならない。しかし一定時間(一定枚数)の実写画像をバッファする構成では、これを達成することはできない。
また、従来の方法では、コンピュータ130側で1フレーム分のCG画像を生成、描画するために要する時間が予めわかっていなければ、どの程度の量の実写画像をバッファする必要があるかを決定することができない。しかし、コンピュータ130側で1フレーム分のCG画像を生成、描画するために要する時間は、カメラの位置姿勢や、仮想物体等のコンテンツの内容に依存するため、1フレーム毎に変化し、予め決定する事は難しい。
このような問題を解決するためには、対応するCG画像が取得できるまで、実写画像をバッファするという方法もあるが、その場合には合成出力する画像の撮影時間からの遅れが、フレーム毎に変化してしまう。そして、本来一定間隔で更新されるべき実写画像の更新に、時間的にゆらぎが生じてしまうという課題がある。
本発明は以上の問題に鑑みてなされたものであり、現実空間の画像と仮想空間の画像とをずれなく合成するための技術を提供することを目的とする。
本発明の目的を達成するために、例えば、本発明の画像処理装置は以下の構成を備える。
即ち、撮像装置によって撮影された各フレームの撮像画像を取得する撮像画像取得手段と、
前記撮像装置の位置姿勢情報を取得する位置姿勢情報取得手段と、
前記撮像画像取得手段が取得した撮像画像と、前記位置姿勢情報取得手段が取得した該撮像画像に対応する位置姿勢情報とに識別コードを対応付ける識別コード対応づけ手段と、
前記撮像画像と該撮像画像に対応付けられた識別コードとを格納する格納手段と、
前記識別コードが対応づけられた位置姿勢情報に基づき生成された仮想空間画像を取得する仮想空間画像取得手段と、
前記仮想空間画像取得手段が取得した仮想空間画像に対応付けられた識別コードに基づき、前記格納手段に格納されている撮像画像から、該仮想空間画像に対応する撮影画像を選択する選択手段と、
前記仮想空間画像取得手段が取得した仮想空間画像と、前記選択手段が選択した撮像画像とを合成する合成手段と
を有することを特徴とする。
本発明の目的を達成するために、例えば、本発明の画像処理装置は以下の構成を備える。
即ち、撮像装置によって撮影された各フレームの撮像画像を取得する撮像画像取得手段と、
前記撮像装置の位置姿勢情報を取得する位置姿勢情報取得手段と、
前記撮像画像取得手段が取得した撮像画像と、前記位置姿勢情報取得手段が取得した該撮像画像に対応する位置姿勢情報とに識別コードを対応付ける識別コード対応づけ手段と、
前記撮像画像と該撮像画像に対応付けられた識別コードとを格納する撮像画像格納手段と、
前記識別コードが対応づけられた位置姿勢情報に基づき生成された仮想空間画像を取得し、格納する仮想空間画像格納手段と、
前記識別コードが対応づけられた位置姿勢情報に基づき生成された仮想空間画像を取得するために生じた遅れ時間を計測する計測手段と、
前記計測された遅れ時間に基づき、前記撮像画像格納手段から撮像画像を選択する撮像画像選択手段と、
前記選択された撮像画像に対応づけられた識別コードに基づき、前記仮想空間画像格納手段から仮想空間画像を選択する仮想空間画像選択手段と、
前記選択された撮像画像と前記選択された仮想空間画像とを合成する合成手段と
を有することを特徴とする。
本発明の目的を達成するために、例えば、本発明の画像処理方法は以下の構成を備える。
即ち、撮像装置によって撮影された各フレームの撮像画像を取得する撮像画像取得工程と、
前記撮像装置の位置姿勢情報を取得する位置姿勢情報取得工程と、
前記撮像画像取得工程で取得した撮像画像と、前記位置姿勢情報取得工程で取得した該撮像画像に対応する位置姿勢情報とに識別コードを対応付ける識別コード対応づけ工程と、
前記撮像画像と該撮像画像に対応付けられた識別コードとを格納する格納工程と、
前記識別コードが対応づけられた位置姿勢情報に基づき生成された仮想空間画像を取得する仮想空間画像取得工程と、
前記仮想空間画像取得工程で取得した仮想空間画像に対応付けられた識別コードに基づき、前記格納工程で格納されている撮像画像から、該仮想空間画像に対応する撮影画像を選択する選択工程と、
前記仮想空間画像取得工程で取得した仮想空間画像と、前記選択工程で選択した撮像画像とを合成する合成工程と
を有することを特徴とする。
本発明の目的を達成するために、例えば、本発明の画像処理方法は以下の構成を備える。
即ち、撮像装置によって撮影された各フレームの撮像画像を取得する撮像画像取得工程と、
前記撮像装置の位置姿勢情報を取得する位置姿勢情報取得工程と、
前記撮像画像取得工程で取得した撮像画像と、前記位置姿勢情報取得工程で取得した該撮像画像に対応する位置姿勢情報とに識別コードを対応付ける識別コード対応づけ工程と、
前記撮像画像と該撮像画像に対応付けられた識別コードとを格納する撮像画像格納工程と、
前記識別コードが対応づけられた位置姿勢情報に基づき生成された仮想空間画像を取得し、格納する仮想空間画像格納工程と、
前記識別コードが対応づけられた位置姿勢情報に基づき生成された仮想空間画像を取得するために生じた遅れ時間を計測する計測工程と、
前記計測された遅れ時間に基づき、前記撮像画像格納工程で格納した撮像画像群から1つを選択する撮像画像選択工程と、
前記選択された撮像画像に対応づけられた識別コードに基づき、前記仮想空間画像格納工程で格納した仮想空間画像群から1つを選択する仮想空間画像選択工程と、
前記選択された撮像画像と前記選択された仮想空間画像とを合成する合成工程と
を有することを特徴とする。
本発明の構成によれば、現実空間の画像と仮想空間の画像とをずれなく合成することができる。
以下添付図面を参照して、本発明をその好適な実施形態に従って詳細に説明する。
[第1の実施形態]
図8は、現実空間の画像(実写画像)と、仮想空間の画像(CG画像)とを合成した合成画像を、HMD110に提供するためのシステムの機能構成を示すブロック図である。同図に示す如く、本実施形態に係るシステムは、コンピュータ130、アダプタ800、HMD110により構成されている。
図9は、図8に例示したシステムの使用例を示す図である。同図に示す如く、本実施形態に係るシステムでは、机120の上にはマーカ121が配されている。また、ユーザ100の頭部にはHMD110が装着されている。HMD110には上述のアダプタ800が接続されており、更にこのアダプタ800にはコンピュータ130が接続されている。従って、コンピュータ130はアダプタ800を介してHMD110に接続されていることになる。
以下では、HMD110には、マーカ121の上にティーポットの仮想物体を配置した複合現実空間の画像(実写画像とCG画像とを合成した画像)を提示するものとして説明する。しかし、以下の説明は、仮想物体が如何なるものであっても実質的には同じである。
先ず、コンピュータ130について説明する。コンピュータ130は一般のPC(パーソナルコンピュータ)に代表されるものである。本実施形態では、アダプタ800から受けた位置姿勢情報が示す位置姿勢を有する視点から見える仮想空間の画像をCG画像として生成し、アダプタ800に出力する。更にコンピュータ130は、アダプタ800からこの位置姿勢情報と共に受けた後述の識別コードを、この位置姿勢情報に基づいて生成したCG画像と共にアダプタ800に返信する。
HMD110について説明する。HMD110は、図2に例示するような構成を有するビデオシースルー型のものである。HMD110が有する右目LCD230、左目LCD231にはそれぞれ、アダプタ800から出力される右目用、左目用の合成画像が表示される。また、右目カメラ210、左目カメラ211により撮像された現実空間の動画像はフレーム毎に順次実写画像(撮像画像)としてアダプタ800に入力される。なお、HMD110による画像表示、画像撮像は右目、左目のそれぞれについて同じであるので、説明を共通にする。
アダプタ800について説明する。アダプタ800は、識別コード検出部801、合成部802、実写画像選択部803、実写画像格納部804、識別コード生成部805、位置姿勢計算部806により構成されている。以下、これら各部の動作について説明する。
HMD110が有するカメラ(右目カメラ210、左目カメラ211)からは、撮像された実写画像が逐次識別コード生成部805,位置姿勢計算部806に入力される。
識別コード生成部805は、カメラから実写画像を受ける毎に識別コードを発行する。発行する識別コードは、カメラから実写画像を受ける毎に更新されるカウンタ値でも良いし、カメラから実写画像を受けた時のタイマによる現在時刻でも良い。本実施形態では、カメラから実写画像を受ける毎に更新される8ビットのカウンタ値とする。
そして識別コード生成部805は、発行した識別コードと、この識別コードの発行対象であるフレームの実写画像とをセットにして実写画像格納部804に格納する。即ち、第fフレーム目の実写画像(実写画像f)がカメラから識別コード生成部805に入力されると、識別コード生成部805は実写画像fに対して識別コードを発行し、発行した識別コードと実写画像fとをセットにして実写画像格納部804に格納する。識別コード生成部805は係る処理を、カメラから実写画像を受け取る毎に行う。
なお、実写画像格納部804におけるメモリの残量がない、若しくはある一定量以下の残量しかない場合には、情報の格納順において古い順に格納情報を消去しても良い。
一方、位置姿勢計算部806は、カメラから受けた実写画像に基づいて、マーカ121とカメラとの相対的な位置姿勢(この実写画像の撮像視点の位置姿勢情報)を求める。図11は、マーカ121として適用可能な一例を示す図である。マーカ121のサイズ(縦横の長さ)や、現実空間中における配置位置は予め測定されており、その測定値は、位置姿勢計算部806が保持している。そして位置姿勢計算部806は、実写画像中のマーカ121の四隅の画像座標と、マーカ121の現実空間中における配置位置とを用いて、三角測量と同じ手法に基づいて、マーカ121とカメラとの相対的な位置姿勢を求める。
このように、現実空間中に配したマーカ121と、このマーカ121を撮像するカメラと、の相対的な位置姿勢を求めるための技術については周知の技術(例えば、非特許文献1に開示されている)であるので係る技術についての説明は省略する。
そして位置姿勢計算部806は、以上の処理により求めた位置姿勢情報を、この位置姿勢情報を求めるために用いた実写画像に対して識別コード生成部805が発行した識別コードとセットにしてコンピュータ130に出力する。即ち、実写画像fがカメラから位置姿勢計算部806に入力されると、位置姿勢計算部806は実写画像fから上記位置姿勢情報を求める。そしてこの求めた位置姿勢情報を、識別コード生成部805が実写画像fに対して発行した識別コードとセットにして、コンピュータ130に出力する。位置姿勢計算部806は係る処理を、カメラから実写画像を受け取る毎に行う。
一方、コンピュータ130は、位置姿勢計算部806から受けた位置姿勢情報を用いて、この位置姿勢情報が示す位置姿勢を有する視点から見た仮想空間の画像を生成する。本実施形態では背景色を青とする仮想空間中にティーポットの仮想物体が配置された仮想空間を、位置姿勢計算部806から受けた位置姿勢情報が示す位置姿勢を有する視点から見た画像をCG画像として生成する。背景色を青としたのは、このCG画像を実写画像と合成する際に、青の部分を抜くクロマキー合成を行うためである。
また、本実施形態では説明を簡単にするために、机120の上面の中心位置とマーカ121の中心位置とは一致しており、この一致している点が世界座標系における原点とする。世界座標系とは、現実空間中の1点を原点とし、この原点で互いに直交する3軸をそれぞれx軸、y軸、z軸とする座標系である。また、位置姿勢計算部806が求める位置姿勢情報が示す位置姿勢も、この世界座標系におけるものであるとする。しかし、位置姿勢情報が世界座標系とは異なる座標系におけるものである場合には、互いの座標系間の位置姿勢関係を予め測定しておくことで、世界座標系におけるものに変換することができる。係る技術については周知であるので、これ以上の説明は省略する。
また、コンピュータ130は、OpenGL等の3次元CGの描画APIを用いてCG画像を生成するのであるが、その際には、カメラのカメラパラメータ(焦点距離や絞りなど)と位置姿勢情報に基づいてモデルビュー行列を作成する。そして、作成したモデルビュー行列を用いて世界座標系の原点にティーポットの仮想物体を配置する。これにより、机120の上面の中心位置に、ティーポットの仮想物体を配置することができる(ただしティーポットの仮想物体のローカル座標系における原点はティーポットの仮想物体の底部であるとする)。
なお、CG画像の生成技術については周知のものであるので、これ以上の説明は省略する。
そしてコンピュータ130側では、CG画像を生成するために用いた位置姿勢情報と共に位置姿勢計算部806から送信された識別コードと、このCG画像とをセットにしてアダプタ800に返信する。本実施形態では、識別コードを埋め込んだCG画像をアダプタ800に返信する。図12は、識別コードが埋め込まれたCG画像の一例を示す図である。上述の通り、本実施形態では識別コードは8ビットのカウンタ値であるので、各ビット値に対応する色(例えばビット値が1であれば黒、0であれば白)の矩形を直線的に並べたものをCG画像に埋め込んでいる。
なお、コンピュータ130から識別コードとCG画像とをセットにしてアダプタ800に返信することができるのであれば、如何なる方法を用いて識別コードとCG画像とをアダプタ800に返信しても良い。例えば、DVI接続等のディジタル接続でもってアダプタ800とコンピュータ130とを接続した場合、両者の間で画素値が食い違うことはないため、識別コードをCG画像の左上隅の画素の赤の値として送ってもよい。また、電子透かし技術を用いて識別コードを埋め込んだCG画像をアダプタ800に返信するようにしても良い。
また、識別コードをCG画像中に埋め込む代わりに、TV信号のClosed Caption信号のように、CG画像を伝送する画像伝送信号の水平、垂直同期期間に識別コードを埋め込んでも良い。Closed Caption信号のエンコード、デコードの技術は周知であるので、これについての説明は省略する。
コンピュータ130から出力されたCG画像は、識別コード検出部801と合成部802とに入力される。
識別コード検出部801は、コンピュータ130から受けたCG画像に埋め込まれている識別コードを検出し、検出した識別コードを実写画像選択部803に出力する。例えば、図12に示したようなCG画像がコンピュータ130から入力された場合、CG画像の左上隅の8個の矩形領域の各色を検出し、検出したそれぞれの色に対応するビット値を復元することで、識別コードを検出することができる。
なお、識別コードがCG画像とは別途コンピュータ130から送信された場合には、この検出処理は行わず、送信された識別コードそのものを実写画像選択部803に出力する。また、CG画像に埋め込まれた識別コードを検出する処理は、埋め込み方法に応じたものとなる。
実写画像選択部803は、識別コード検出部801から受けた識別コードとセットになって実写画像格納部804に格納されている実写画像を読み出し、合成部802に出力する。合成部802は、コンピュータ130から受けたCG画像と、実写画像選択部803から受けた実写画像とを合成した合成画像を生成する。係る画像合成には上述の通り、クロマキー合成を用いる。即ち、CG画像において青の画素については、実写画像において同じ位置の画素で置き換える。これによりCG画像における青の領域に実写画像において位置的に対応する領域をはめ込むことができ、CG画像と実写画像とを合成することができる。なお、CG画像と実写画像との合成技術については様々な技術が開示されており、何れの技術を用いて合成しても良い。
そして、合成部802は生成した合成画像を、HMD110が有するLCDに対して出力する。これによりLCDには、コンピュータ130が生成したCG画像と、このCG画像と同じ識別コードに対応する実写画像と、を合成した合成画像が表示されることになり、仮想物体が所望の位置からずれて実写画像上に表示されることはない。
図10は、机120の上にティーポットの仮想物体1000が配置されているかのように描画されてる合成画像の表示例を示す図である。
図15は、アダプタ800が行う処理のフローチャートである。
先ずステップS1501では、HMD110が有するカメラ(右目カメラ210、左目カメラ211)から出力された実写画像を、識別コード生成部805,位置姿勢計算部806が取得する。
ステップS1502では、識別コード生成部805は、ステップS1501で取得した実写画像に対して識別コードを発行する。
ステップS1503では、識別コード生成部805は、ステップS1502で発行した識別コードと、ステップS1501で取得した実写画像とをセットにして実写画像格納部804に格納する。
ステップS1504では、位置姿勢計算部806は、ステップS1501で取得した実写画像に基づいて、この実写画像の撮像視点の位置姿勢情報を求める。
ステップS1505では、位置姿勢計算部806は、ステップS1504で求めた位置姿勢情報を、ステップS1502で発行された識別コードとセットにしてコンピュータ130に送信する。
ステップS1506では、識別コード検出部801、合成部802は、ステップS1505で送信した識別コードと、ステップS1505で送信した位置姿勢情報に基づいてコンピュータ130が生成したCG画像とをセットにして受信する。
ステップS1507では先ず、識別コード検出部801は、コンピュータ130から受けたCG画像に埋め込まれている識別コードを検出し、検出した識別コードを実写画像選択部803に出力する。そして、実写画像選択部803は、識別コード検出部801から受けた識別コードとセットになって実写画像格納部804に格納されている実写画像を読み出し、合成部802に出力する。
ステップS1508では、合成部802は、コンピュータ130から受けたCG画像と、実写画像選択部803から受けた実写画像とを合成した合成画像を生成する。
ステップS1509では、合成部802は、この生成した合成画像を、HMD110が有するLCDに対して出力する。
なお、画像の入力に通常のビデオカメラ、出力に通常のモニタテレビを用いて構成した装置を、HMD110の代わりに使用しても良い。このような応用の場合、モニタテレビに映った風景の中に仮想物体が存在するかのように見える。
また、そのビデオカメラが固定されていた場合にも、マーカが移動するような場合には本実施形態は有効である。このような応用例として、カードにマーカを配置し、カード上に仮想物体を描画するゲームなどが考えられる。
また、現実空間を撮像した動画像はコンピュータ130等の装置側に予め登録しておいたものを用いても良い。
以上の説明により、本実施形態によれば、CG画像と合成すべき実写画像として、このCG画像を生成するために用いる位置姿勢情報と同じ識別コードを有する実写画像を用いるので、CG画像と実写画像とを合成しても、画像内における位置ずれが生じない。係る位置ずれの防止は、CG画像の生成時間が変動しても可能である。
[第2の実施形態]
第1の実施形態では、実写画像の撮像視点の位置姿勢の取得方法として、実写画像中に写っているマーカを用いた。本実施形態では自身の位置姿勢を計測するセンサをHMD110に取り付け、実写画像の撮像視点の位置姿勢は、このセンサによる計測値に基づいて求める。以下ではこのセンサとして磁気センサを用いる。しかし、光学式センサ等、他のタイプのセンサを用いても良い。
図13は、本実施形態に係るシステムの機能構成を示すブロック図である。図13に示したシステムが図8に示したシステムと異なる点としては、HMD110のカメラ位置(撮像視点)近傍にはセンサ移動局1301が装着されており、センサ移動局1301にはセンサ本体1303が接続されている。更に、センサ本体1303にはセンサ固定局1302が接続されており、センサ本体1303は識別コード生成部805に接続されている。また、アダプタ800の代わりに、アダプタ800から位置姿勢計算部806を削除したアダプタ1300が用いられている。
以下では、図13に示したシステムの動作において、図8に示したシステムと異なる動作についてのみ説明する。
センサ固定局1302は、センサ本体1303による制御に従って、磁界を周囲に発生させる。センサ移動局1301は、この磁界における自身の位置姿勢に応じた磁界の変化を検知し、その検知結果を計測値としてセンサ本体1303に送出する。センサ本体1303は、この計測値に基づいて、センサ移動局1301のセンサ座標系における位置姿勢を求め、求めた位置姿勢を示す位置姿勢情報を識別コード生成部805に送出する。ここで、センサ座標系とは、センサ固定局1302の位置を原点とし、この原点で互いに直交する3軸をそれぞれx軸、y軸、z軸とする座標系のことである。
なお、センサ本体1303、センサ固定局1302、センサ移動局1301を用いて、センサ移動局1301のセンサ座標系における位置姿勢を求める為の技術については周知であるので、係る技術についての説明は省略する。
識別コード生成部805は、センサ本体1303から位置姿勢情報を受けると、これを世界座標系における位置姿勢を示す位置姿勢情報に変換する処理を行う。これは、センサ座標系と世界座標系との位置姿勢関係を予め計測しておき、センサ座標系における位置姿勢情報をこの位置姿勢関係で変換すれば、世界座標系における位置姿勢情報が得られる。係る技術についても周知ものであるので、これについての説明は省略する。なお、世界座標系とセンサ座標系とが一致している場合には、係る変換処理は不要となる。
そして識別コード生成部805は次の処理を行う。センサ本体1303から位置姿勢情報を受けたタイミングに最も近いタイミングでHMD110から受けた実写画像に対して発行した識別コードとこの位置姿勢情報から生成した世界座標系における位置姿勢情報をセットにしてコンピュータ130に送信する。
そして以降は図8に示したシステムと同様の動作を行う。
図14は、図13に例示したシステムの使用例を示す図である。同図に示す如く、本実施形態に係るシステムでは、机120の上にはマーカ121は配されていない。また、ユーザ100の頭部にはHMD110が装着されている。HMD110にはセンサ移動局1301が装着されており、センサ移動局1301にはセンサ本体1303が接続されている。また、センサ本体1303にはセンサ固定局1302が接続されている。そしてセンサ本体1303は、アダプタ800に接続されている。
[第3の実施形態]
図16は、現実空間の画像(実写画像)と、仮想空間の画像(CG画像)とを合成した合成画像を、HMD110に提供するためのシステムの機能構成を示すブロック図である。同図に示す如く、本実施形態に係るシステムは、コンピュータ130、アダプタ8000、HMD110により構成されている。
以下では、HMD110には、机120の上にティーポットの仮想物体を配置した複合現実空間の画像(実写画像とCG画像とを合成した画像)を提示するものとして説明する。しかし、以下の説明は、仮想物体が如何なるものであっても実質的には同じである。
HMD110は、表示装置1131と、カメラ1111とで構成されている。表示装置1131は、右目LCD230と左目LCD231とで構成されている。カメラ1111は、上記右目カメラ210と左目カメラ211とで構成されている。
コンピュータ130は第1,2の実施形態で用いたものと同じである。
次にアダプタ8000について説明する。アダプタ8000は、識別コード付加部8001、撮像位置姿勢計算部8002、実写画像蓄積部8003、遅れ計測部8006、CG画像蓄積部8005、識別コード検出部8011、実写画像選択部8008、平均的遅れ計算部8007を有する。更にアダプタ8000は、CG画像選択部8009、合成部8010を有する。以下、これら各部の動作について説明する。
HMD110が有するカメラ(右目カメラ210、左目カメラ211)からは、撮像された実写画像が逐次識別コード付加部8001に入力される。
識別コード付加部8001は、カメラから実写画像を受ける毎に識別コードを発行する。上記実施形態のように、発行する識別コードは、カメラから実写画像を受ける毎に更新されるカウンタ値でも良いし、カメラから実写画像を受けた時のタイマによる現在時刻でも良い。本実施形態では、カメラから実写画像を受ける毎に更新される8ビットのカウンタ値とする。
そして識別コード付加部8001は識別コードを、この識別コードの発行対象である実写画像とセットにして(付加して)撮像位置姿勢計算部8002および実写画像蓄積部8003に出力する。実写画像蓄積部8003は、識別コード付加部8001から受けたセット(識別コードが添付された実写画像)を格納する。遅れ計測部8006は常に計時処理を行っており、実写画像蓄積部8003に1つのセットが格納されたタイミングを検知すると、この検知したタイミングを、第1の格納タイミングとして記録する。
一方、撮像位置姿勢計算部8002は、識別コード付加部8001から受けたセット中の実写画像の撮像視点の位置姿勢情報を求める。係る処理は、上記位置姿勢計算部806が行う上記処理と同じである。そして撮像位置姿勢計算部8002は、識別コード付加部8001から受けたセット中の実写画像について求めた撮像視点の位置姿勢情報と、このセット中の識別コードとをセットにしてコンピュータ130に出力する。
コンピュータ130は、撮像位置姿勢計算部8002から受けたセット中の位置姿勢情報を用いて、この位置姿勢情報が示す位置姿勢を有する視点から見た仮想空間の画像を生成する。そしてコンピュータ130は、CG画像を生成するために用いた位置姿勢情報と共に撮像位置姿勢計算部8002から送信された識別コードと、このCG画像とをセットにしてアダプタ8000に返信する。本実施形態でも第1の実施形態と同様に図12に例示した如く、識別コードを埋め込んだCG画像をアダプタ8000に返信する。コンピュータ130から出力されたCG画像は、識別コード検出部8011に入力される。
即ち、コンピュータ130の動作については、データの入出力先が異なる以外は、第1,2の実施形態と同じである。
識別コード検出部8011は、上記識別コード検出部801と同様の処理を行う。即ち、コンピュータ130から受けたCG画像に埋め込まれている識別コードを検出する。そして識別コード検出部8011は、コンピュータ130から受けたCG画像、及びこのCG画像から検出した識別コードをセットにしてCG画像蓄積部8005に格納する。
ここで、遅れ計測部8006は、CG画像蓄積部8005にCG画像と識別コードのセットが格納されると、この識別コードを参照し、同じ識別コードが実写画像蓄積部8003に格納されているか否かをチェックする。そして格納されている場合には、この識別コードをCG画像蓄積部8005に格納したタイミングを第2の格納タイミングとして記録する。そして、第2の格納タイミングから第1の格納タイミングを差し引いた差分(時間差)を計算し、差分情報として平均的遅れ計算部8007に送出する。遅れ計測部8006はこのような処理を、CG画像蓄積部8005にCG画像と識別コードとのセットが格納される毎に行う。
平均的遅れ計算部8007は、遅れ計測部8006から受けた差分情報と、従前に受けた差分情報との平均値を求める。そして求めた平均値を、遅延フレーム数として実写画像選択部8008に出力する。係る平均値は厳密な平均ではなく、統計的に将来の遅れ(実写画像に対するCG画像の描画の遅れ)を予測した計算を行うのであれば、如何なるものを平均値の代わりに用いても良い。
なお、差分情報のバラつきが多い場合には、少し余裕を持たせて大きめの差分情報を出力する。これにより、後に説明するCG画像選択部8009において選択すべき最適なCG画像が取得できずに1フレーム前のCG画像を利用する、という処理を減らすことができる。
また、平均的遅れ計算部8007から出力される平均値は、フレーム毎に大きく変化させてはならない。即ち、フレーム間で大幅に平均値が変わるとスムーズな実写画像の更新ができなくなるからである。
実写画像選択部8008は、実写画像蓄積部8003に格納されている最新のフレームの実写画像(最も最近実写画像蓄積部8003に格納された実写画像)から、遅延フレーム数分だけ過去の実写画像を選択する。そして選択した実写画像を合成部8010に出力する。また、実写画像選択部8008は、選択した実写画像とセットになって実写画像蓄積部8003に格納されている識別コードをCG画像選択部8009に通知する。
CG画像選択部8009は、実写画像選択部8008が選択した実写画像とセットになって実写画像蓄積部8003に格納されている識別コードと同じ識別コードとセットになってCG画像蓄積部8005に格納されているCG画像を選択する。そして選択したCG画像を合成部8010に出力する。
合成部8010は、実写画像選択部8008から受けた実写画像と、CG画像選択部8009から受けたCG画像とを合成し、合成画像を生成する。係る合成処理は、上記合成部802が行った合成処理と同様にして行う。
そして、合成部8010は生成した合成画像を、HMD110が有する表示装置1131に対して出力する。これにより表示装置1131には、コンピュータ130が生成したCG画像と、このCG画像と同じ識別コードに対応する実写画像と、を合成した合成画像が表示されることになり、仮想物体が所望の位置からずれて実写画像上に表示されることはない。
図17は、アダプタ8000が行う処理のフローチャートである。
先ずステップS1701では、カメラ1111(右目カメラ210、左目カメラ211)から出力された実写画像を、識別コード付加部8001が取得する。
ステップS1702では、識別コード付加部8001は、ステップS1701で取得した実写画像に対して識別コードを発行する。
ステップS1703では、識別コード付加部8001は、ステップS1702で発行した識別コードと、ステップS1701で取得した実写画像とをセットにして実写画像蓄積部8003に格納する。
ステップS1704では、遅れ計測部8006は、実写画像蓄積部8003に1つのセットが格納されたタイミングを検知すると、この検知したタイミングを、第1の格納タイミングとして記録する。
ステップS1705では、撮像位置姿勢計算部8002は、識別コード付加部8001から受けたセット中の実写画像の撮像視点の位置姿勢情報を求める。
ステップS1706では、撮像位置姿勢計算部8002は、識別コード付加部8001から受けたセット中の実写画像について求めた撮像視点の位置姿勢情報と、このセット中の識別コードとをセットにしてコンピュータ130に出力する。
ステップS1707では、識別コード検出部8011は、ステップS1706で送信した識別コードと、ステップS1706で送信した位置姿勢情報に基づいてコンピュータ130が生成したCG画像とをセットにして受信する。
ステップS1708では、識別コード検出部8011は、コンピュータ130から受けたCG画像に埋め込まれている識別コードを検出する。そして識別コード検出部8011は、コンピュータ130から受けたCG画像、及びこのCG画像から検出した識別コードをセットにしてCG画像蓄積部8005に格納する。
ステップS1709では先ず、遅れ計測部8006は、CG画像蓄積部8005にCG画像と識別コードのセットが格納されると、この識別コードを参照し、同じ識別コードが実写画像蓄積部8003に格納されているか否かをチェックする。そして格納されている場合には、この識別コードをCG画像蓄積部8005に格納したタイミングを第2の格納タイミングとして記録する。
次にステップS1710では、遅れ計測部8006は、第2の格納タイミングから第1の格納タイミングを差し引いた差分(時間差)を計算し、差分情報として平均的遅れ計算部8007に送出する。平均的遅れ計算部8007は、遅れ計測部8006から受けた差分情報と、従前に受けた差分情報との平均値を求める。そして求めた平均値を、遅延フレーム数として実写画像選択部8008に出力する。
ステップS1711では、実写画像選択部8008は、実写画像蓄積部8003に格納されている最新のフレームの実写画像(最も最近実写画像蓄積部8003に格納された実写画像)から、遅延フレーム数分だけ過去の実写画像を選択する。そして選択した実写画像を合成部8010に出力する。また、実写画像選択部8008は、選択した実写画像とセットになって実写画像蓄積部8003に格納されている識別コードをCG画像選択部8009に通知する。
ステップS1713では、CG画像選択部8009は次のような処理を行う。即ち、実写画像選択部8008が選択した実写画像とセットになって実写画像蓄積部8003に格納されている識別コードと同じ識別コードとセットになってCG画像蓄積部8005に格納されているCG画像を選択する。そして選択したCG画像を合成部8010に出力する。
ステップS1714では、合成部8010は、実写画像選択部8008から受けた実写画像と、CG画像選択部8009から受けたCG画像とを合成し、合成画像を生成する。
ステップS1715では、合成部8010は生成した合成画像を、HMD110が有する表示装置1131に対して出力する。
[第4の実施形態]
第3の実施形態では、実写画像の撮像視点の位置姿勢の取得方法として、実写画像中に写っているマーカを用いた。本実施形態では自身の位置姿勢を計測するセンサをHMD110に取り付け、実写画像の撮像視点の位置姿勢は、このセンサによる計測値に基づいて求める。以下ではこのセンサとして磁気センサを用いる。しかし、光学式センサ等、他のタイプのセンサを用いても良い。
図18は、本実施形態に係るシステムの機能構成を示すブロック図である。図18に示したシステムが図16に示したシステムと異なる点としては、HMD110には三次元位置センサ5000が装着されていると共に、撮像位置姿勢計算部8002の代わりに、撮像位置姿勢計算部1801が用いられている点にある。
以下では、図18に示したシステムの動作において、図16に示したシステムと異なる動作についてのみ説明する。
三次元位置センサ5000は、第2の実施形態で説明した、センサ固定局、センサ移動局、センサ本体で構成されるものであり、第2の実施形態と同様に、センサ移動局の位置姿勢情報(撮像視点の位置姿勢情報)を測定するものである。三次元位置センサ5000による測定結果は、識別コード付加部8001に出力される。
識別コード付加部8001は、三次元位置センサ5000から測定結果、即ち、撮像視点の位置姿勢情報を受けると、これを世界座標系における位置姿勢を示す位置姿勢情報に変換する処理を行う。そして識別コード付加部8001は次の処理を行う。三次元位置センサ5000から位置姿勢情報を受けたタイミングに最も近いタイミングでHMD110から受けた実写画像に対して発行した識別コードとこの位置姿勢情報から生成した世界座標系における位置姿勢情報をセットにする。そしてこのセットを撮像位置姿勢計算部1801に出力する。
撮像位置姿勢計算部1801は、このセットをそのままコンピュータ130に送信する。なお、より正確に撮像視点の位置姿勢情報を求めるためには、撮像位置姿勢計算部1801は、第1の実施形態のような実写画像を用いた撮像視点の位置姿勢情報を求める技術を併用しても良い。
そして以降は図16に示したシステムと同様の動作を行う。
なお、以上説明した各実施形態は適宜組み合わせても良い。
[第5の実施形態]
上記各実施形態では、図8,13,16,18に示した各アダプタを構成する各部は何れもハードウェアでもって構成されているものとして説明した。しかし、その一部をソフトウェアでもって実装しても良い。
図19は、第1,3の実施形態に係るシステムに適用可能なシステムのハードウェアの構成例を示すブロック図である。なお、第2,4の実施形態に係るシステムの場合には、図19に示したアダプタ1901に更にセンサ入力デバイスを1つ加え、このセンサ入力デバイスに上記三次元位置センサ5000を接続すれば良い。
1901は上記アダプタ800,8000に適用可能なアダプタである。
1902はCPUで、メモリ1903に格納されているプログラムやデータを用いてアダプタ1901全体の制御を行うと共に、アダプタ1901が適用可能なアダプタ800、8000が行う上述の各処理を実行する。例えば、上記各アダプタを構成する各部のうち、格納部以外の各部の機能を実行する。また、CPU1902は計時機能も有する。
もちろん上述の通り、アダプタ1901に更にセンサ入力デバイスを1つ加え、このセンサ入力デバイスに上記三次元位置センサ5000を接続すれば、係るアダプタ1901は、アダプタ1300,1800に適用可能である。そしてこの場合、CPU1902は、アダプタ1901が適用可能なアダプタ1300,1800が行う上述の各処理を実行する。
メモリ1903は、ハードディスク1904からロードされたプログラムやデータを一時的に記憶するためのエリアを有する。更にメモリ1903は、CG画像入力デバイス1906を介してコンピュータ130から受信したデータ、実写画像入力デバイス1907を介してカメラ1111から受信したデータ等、外部から受信したデータを一時的に記憶するためのエリアも有する。
ハードディスク1904は、上記各実施形態において格納部として機能した構成要素に対応するものである。
通信デバイス1905は、アダプタ1901からコンピュータ130にデータを送信する為の送信制御を行うものであり、送信データはこの通信デバイス1905を介してコンピュータ130に送信される。
CG画像入力デバイス1906は、コンピュータ130から送信されたデータの受信制御を行うものであり、受信データはこのCG画像入力デバイス1906を介してアダプタ1901に入力される。
実写画像入力デバイス1907は、カメラ1111から送信されたデータの受信制御を行うものであり、受信データはこの実写画像入力デバイス1907を介してアダプタ1901に入力される。
表示デバイス1908は、上記各実施形態で説明した合成画像を表示装置1131に送信する送信制御を行うものであり、合成画像はこの表示デバイス1908を介してHMD110に送信される。
入力デバイス1909はボタン群などにより構成されており、アダプタ1901の操作者が操作することで、各種の指示をCPU1902に対して入力することができる。
1910は上述の各部を繋ぐバスである。
なお、図19には主要なものを示したのみであり、係る構成に適宜デバイスを付加してもよいし、係る構成による動作と同等以上の動作を行う構成であれば、如何なる構成を適用しても良い。
[その他の実施形態]
また、本発明の目的は、以下のようにすることによって達成されることはいうまでもない。即ち、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体(または記憶媒体)を、システムあるいは装置に供給する。そして、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記録媒体に格納されたプログラムコードを読み出し実行する。この場合、記録媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記録した記録媒体は本発明を構成することになる。
また、コンピュータが読み出したプログラムコードを実行することにより、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム(OS)などが実際の処理の一部または全部を行う。その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
さらに、記録媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれたとする。その後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
本発明を上記記録媒体に適用する場合、その記録媒体には、先に説明したフローチャートに対応するプログラムコードが格納されることになる。
複合現実感技術に適用されるシステム、及びその環境について示す図である。 HMD110の構成を示す図である。 現実空間の画像と仮想物体の画像とを重畳する様子を説明する図である。 複合現実感技術をより簡便に実現するためのシステムの機能構成を示すブロック図である。 ユーザ100が自身の頭部を矢印に示す方向に振った様子を説明する図である。 実写画像とCG画像とのずれを説明する図である。 図4に示したアダプタ400にバッファ(実写画像バッファ)750を組み込んだシステムの機能構成を示すブロック図である。 現実空間の画像(実写画像)と、仮想空間の画像(CG画像)とを合成した合成画像を、HMD110に提供するためのシステムの機能構成を示すブロック図である。 図8に例示したシステムの使用例を示す図である。 机120の上にティーポットの仮想物体1000が配置されているかのように描画されてる合成画像の表示例を示す図である。 マーカ121として適用可能な一例を示す図である。 識別コードが埋め込まれたCG画像の一例を示す図である。 第2の実施形態に係るシステムの機能構成を示すブロック図である。 図13に例示したシステムの使用例を示す図である。 アダプタ800が行う処理のフローチャートである。 現実空間の画像(実写画像)と、仮想空間の画像(CG画像)とを合成した合成画像を、HMD110に提供するためのシステムの機能構成を示すブロック図である。 アダプタ8000が行う処理のフローチャートである。 第4の実施形態に係るシステムの機能構成を示すブロック図である。 第1,3の実施形態に係るシステムに適用可能なシステムのハードウェアの構成例を示すブロック図である。

Claims (11)

  1. 撮像装置によって撮影された各フレームの撮像画像を取得する撮像画像取得手段と、
    前記撮像装置の位置姿勢情報を取得する位置姿勢情報取得手段と、
    前記撮像画像取得手段が取得した撮像画像と、前記位置姿勢情報取得手段が取得した該撮像画像に対応する位置姿勢情報とに識別コードを対応付ける識別コード対応づけ手段と、
    前記撮像画像と該撮像画像に対応付けられた識別コードとを格納する格納手段と、
    前記識別コードが対応づけられた位置姿勢情報に基づき生成された仮想空間画像を取得する仮想空間画像取得手段と、
    前記仮想空間画像取得手段が取得した仮想空間画像に対応付けられた識別コードに基づき、前記格納手段に格納されている撮像画像から、該仮想空間画像に対応する撮影画像を選択する選択手段と、
    前記仮想空間画像取得手段が取得した仮想空間画像と、前記選択手段が選択した撮像画像とを合成する合成手段と
    を有することを特徴とする画像処理装置。
  2. 前記位置姿勢情報取得手段は、前記撮像画像におけるマーカの画像座標と、当該マーカの現実空間中における配置情報とを用いて、前記位置姿勢情報を求めることを特徴とする請求項1に記載の画像処理装置。
  3. 前記位置姿勢情報取得手段は、前記撮像装置の位置姿勢を計測するセンサから位置姿勢情報を取得することを特徴とする請求項1に記載の画像処理装置。
  4. 前記識別コードは、複数ビットで構成されたカウンタ情報であることを特徴とする請求項1に記載の画像処理装置。
  5. 前記識別コードは、タイマにより計時されている時刻情報であることを特徴とする請求項1に記載の画像処理装置。
  6. 前記仮想空間画像取得手段が取得した仮想空間画像には、該仮想空間画像に対応付けられた識別コードに応じた情報が埋めこめられており、
    前記選択手段は、前記仮想空間画像取得手段が取得した仮想空間画像から前記識別コードを検出することを特徴とする請求項1に記載の画像処理装置。
  7. 撮像装置によって撮影された各フレームの撮像画像を取得する撮像画像取得手段と、
    前記撮像装置の位置姿勢情報を取得する位置姿勢情報取得手段と、
    前記撮像画像取得手段が取得した撮像画像と、前記位置姿勢情報取得手段が取得した該撮像画像に対応する位置姿勢情報とに識別コードを対応付ける識別コード対応づけ手段と、
    前記撮像画像と該撮像画像に対応付けられた識別コードとを格納する撮像画像格納手段と、
    前記識別コードが対応づけられた位置姿勢情報に基づき生成された仮想空間画像を取得し、格納する仮想空間画像格納手段と、
    前記識別コードが対応づけられた位置姿勢情報に基づき生成された仮想空間画像を取得するために生じた遅れ時間を計測する計測手段と、
    前記計測された遅れ時間に基づき、前記撮像画像格納手段から撮像画像を選択する撮像画像選択手段と、
    前記選択された撮像画像に対応づけられた識別コードに基づき、前記仮想空間画像格納手段から仮想空間画像を選択する仮想空間画像選択手段と、
    前記選択された撮像画像と前記選択された仮想空間画像とを合成する合成手段と
    を有することを特徴とする画像処理装置。
  8. 更に、
    遅れ時間の平均値を算出する算出手段を有し、
    前記撮像画像選択手段は、前記算出された平均値に基づき前記撮像画像格納手段から撮像画像を選択することを特徴とする請求項7に記載の画像処理装置。
  9. 請求項1乃至8のいずれか1項に記載の画像処理装置をコンピュータを用いて実現するためのプログラム。
  10. 撮像装置によって撮影された各フレームの撮像画像を取得する撮像画像取得工程と、
    前記撮像装置の位置姿勢情報を取得する位置姿勢情報取得工程と、
    前記撮像画像取得工程で取得した撮像画像と、前記位置姿勢情報取得工程で取得した該撮像画像に対応する位置姿勢情報とに識別コードを対応付ける識別コード対応づけ工程と、
    前記撮像画像と該撮像画像に対応付けられた識別コードとを格納する格納工程と、
    前記識別コードが対応づけられた位置姿勢情報に基づき生成された仮想空間画像を取得する仮想空間画像取得工程と、
    前記仮想空間画像取得工程で取得した仮想空間画像に対応付けられた識別コードに基づき、前記格納工程で格納されている撮像画像から、該仮想空間画像に対応する撮影画像を選択する選択工程と、
    前記仮想空間画像取得工程で取得した仮想空間画像と、前記選択工程で選択した撮像画像とを合成する合成工程と
    を有することを特徴とする画像処理方法。
  11. 撮像装置によって撮影された各フレームの撮像画像を取得する撮像画像取得工程と、
    前記撮像装置の位置姿勢情報を取得する位置姿勢情報取得工程と、
    前記撮像画像取得工程で取得した撮像画像と、前記位置姿勢情報取得工程で取得した該撮像画像に対応する位置姿勢情報とに識別コードを対応付ける識別コード対応づけ工程と、
    前記撮像画像と該撮像画像に対応付けられた識別コードとを格納する撮像画像格納工程と、
    前記識別コードが対応づけられた位置姿勢情報に基づき生成された仮想空間画像を取得し、格納する仮想空間画像格納工程と、
    前記識別コードが対応づけられた位置姿勢情報に基づき生成された仮想空間画像を取得するために生じた遅れ時間を計測する計測工程と、
    前記計測された遅れ時間に基づき、前記撮像画像格納工程で格納した撮像画像群から1つを選択する撮像画像選択工程と、
    前記選択された撮像画像に対応づけられた識別コードに基づき、前記仮想空間画像格納工程で格納した仮想空間画像群から1つを選択する仮想空間画像選択工程と、
    前記選択された撮像画像と前記選択された仮想空間画像とを合成する合成工程と
    を有することを特徴とする画像処理方法。
JP2006328840A 2006-12-05 2006-12-05 画像処理方法、画像処理装置 Withdrawn JP2008146109A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006328840A JP2008146109A (ja) 2006-12-05 2006-12-05 画像処理方法、画像処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006328840A JP2008146109A (ja) 2006-12-05 2006-12-05 画像処理方法、画像処理装置

Publications (1)

Publication Number Publication Date
JP2008146109A true JP2008146109A (ja) 2008-06-26

Family

ID=39606268

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006328840A Withdrawn JP2008146109A (ja) 2006-12-05 2006-12-05 画像処理方法、画像処理装置

Country Status (1)

Country Link
JP (1) JP2008146109A (ja)

Cited By (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010038879A (ja) * 2008-08-08 2010-02-18 Ntt Docomo Inc 物体形状認識システム及び物体形状認識方法
JP2011076589A (ja) * 2010-05-14 2011-04-14 Nintendo Co Ltd 画像表示プログラム、画像表示装置、画像表示システム、および画像表示方法
EP2395765A2 (en) 2010-06-14 2011-12-14 Nintendo Co., Ltd. Storage medium having stored therein stereoscopic image display program, stereoscopic image display device, stereoscopic image display system, and stereoscopic image display method
EP2395768A1 (en) 2010-06-11 2011-12-14 Nintendo Co., Ltd. Image display program, image display system, and image display method
EP2394715A2 (en) 2010-06-14 2011-12-14 Nintendo Co., Ltd. Image display progam, system, and method
JP2012003328A (ja) * 2010-06-14 2012-01-05 Nintendo Co Ltd 立体画像表示プログラム、立体画像表示装置、立体画像表示システム、および、立体画像表示方法
JP2012003327A (ja) * 2010-06-14 2012-01-05 Nintendo Co Ltd 立体画像表示プログラム、立体画像表示装置、立体画像表示システム、および、立体画像表示方法
JP2012059292A (ja) * 2011-12-09 2012-03-22 Nintendo Co Ltd 画像表示プログラム、画像表示装置、画像表示システム、および画像表示方法
US20120075424A1 (en) * 2010-09-24 2012-03-29 Hal Laboratory Inc. Computer-readable storage medium having image processing program stored therein, image processing apparatus, image processing system, and image processing method
JP2012252477A (ja) * 2011-06-02 2012-12-20 Hitachi Ltd 画像検索装置及び画像検索システム
WO2013021458A1 (ja) * 2011-08-09 2013-02-14 パイオニア株式会社 複合現実感装置
US8384770B2 (en) 2010-06-02 2013-02-26 Nintendo Co., Ltd. Image display system, image display apparatus, and image display method
US8512152B2 (en) 2010-06-11 2013-08-20 Nintendo Co., Ltd. Hand-held game apparatus and housing part of the same
US8633947B2 (en) 2010-06-02 2014-01-21 Nintendo Co., Ltd. Computer-readable storage medium having stored therein information processing program, information processing apparatus, information processing system, and information processing method
US8731332B2 (en) 2010-06-11 2014-05-20 Nintendo Co., Ltd. Storage medium having image recognition program stored therein, image recognition apparatus, image recognition system, and image recognition method
US8854356B2 (en) 2010-09-28 2014-10-07 Nintendo Co., Ltd. Storage medium having stored therein image processing program, image processing apparatus, image processing system, and image processing method
US8894486B2 (en) 2010-01-14 2014-11-25 Nintendo Co., Ltd. Handheld information processing apparatus and handheld game apparatus
US9128293B2 (en) 2010-01-14 2015-09-08 Nintendo Co., Ltd. Computer-readable storage medium having stored therein display control program, display control apparatus, display control system, and display control method
US9278281B2 (en) 2010-09-27 2016-03-08 Nintendo Co., Ltd. Computer-readable storage medium, information processing apparatus, information processing system, and information processing method
JP2016081225A (ja) * 2014-10-15 2016-05-16 Kddi株式会社 情報提示システム
JP2017046233A (ja) * 2015-08-27 2017-03-02 キヤノン株式会社 表示装置及び情報処理装置及びその制御方法
JP2017192079A (ja) * 2016-04-14 2017-10-19 キヤノン株式会社 データ分配装置、画像表示システム及びデータ分配方法
US10506218B2 (en) 2010-03-12 2019-12-10 Nintendo Co., Ltd. Computer-readable storage medium having stored therein display control program, display control apparatus, display control system, and display control method
US11983959B2 (en) 2019-04-18 2024-05-14 Beckman Coulter, Inc. Securing data of objects in a laboratory environment
US12001600B2 (en) 2021-05-07 2024-06-04 Beckman Coulter, Inc. Service glasses with selective data provision

Cited By (44)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010038879A (ja) * 2008-08-08 2010-02-18 Ntt Docomo Inc 物体形状認識システム及び物体形状認識方法
US9128293B2 (en) 2010-01-14 2015-09-08 Nintendo Co., Ltd. Computer-readable storage medium having stored therein display control program, display control apparatus, display control system, and display control method
US8894486B2 (en) 2010-01-14 2014-11-25 Nintendo Co., Ltd. Handheld information processing apparatus and handheld game apparatus
US10764565B2 (en) 2010-03-12 2020-09-01 Nintendo Co., Ltd. Computer-readable storage medium having stored therein display control program, display control apparatus, display control system, and display control method
US10506218B2 (en) 2010-03-12 2019-12-10 Nintendo Co., Ltd. Computer-readable storage medium having stored therein display control program, display control apparatus, display control system, and display control method
JP2011076589A (ja) * 2010-05-14 2011-04-14 Nintendo Co Ltd 画像表示プログラム、画像表示装置、画像表示システム、および画像表示方法
US8882591B2 (en) 2010-05-14 2014-11-11 Nintendo Co., Ltd. Storage medium having image display program stored therein, image display apparatus, image display system, and image display method
US9282319B2 (en) 2010-06-02 2016-03-08 Nintendo Co., Ltd. Image display system, image display apparatus, and image display method
US8384770B2 (en) 2010-06-02 2013-02-26 Nintendo Co., Ltd. Image display system, image display apparatus, and image display method
US8633947B2 (en) 2010-06-02 2014-01-21 Nintendo Co., Ltd. Computer-readable storage medium having stored therein information processing program, information processing apparatus, information processing system, and information processing method
US20110304701A1 (en) * 2010-06-11 2011-12-15 Nintendo Co., Ltd. Computer-Readable Storage Medium, Image Display Apparatus, Image Display System, and Image Display Method
US20110304703A1 (en) * 2010-06-11 2011-12-15 Nintendo Co., Ltd. Computer-Readable Storage Medium, Image Display Apparatus, Image Display System, and Image Display Method
US8731332B2 (en) 2010-06-11 2014-05-20 Nintendo Co., Ltd. Storage medium having image recognition program stored therein, image recognition apparatus, image recognition system, and image recognition method
US9256797B2 (en) 2010-06-11 2016-02-09 Nintendo Co., Ltd. Storage medium having image recognition program stored therein, image recognition apparatus, image recognition system, and image recognition method
EP2395769A1 (en) 2010-06-11 2011-12-14 Nintendo Co., Ltd. Image display program, image display system, and image display method
US10015473B2 (en) 2010-06-11 2018-07-03 Nintendo Co., Ltd. Computer-readable storage medium, image display apparatus, image display system, and image display method
EP2395767A1 (en) 2010-06-11 2011-12-14 Nintendo Co., Ltd. Image display program, image display system, and image display method
EP2395768A1 (en) 2010-06-11 2011-12-14 Nintendo Co., Ltd. Image display program, image display system, and image display method
US8780183B2 (en) * 2010-06-11 2014-07-15 Nintendo Co., Ltd. Computer-readable storage medium, image display apparatus, image display system, and image display method
US8512152B2 (en) 2010-06-11 2013-08-20 Nintendo Co., Ltd. Hand-held game apparatus and housing part of the same
US8830231B2 (en) 2010-06-14 2014-09-09 Nintendo Co., Ltd. Storage medium having stored therein stereoscopic image display program, stereoscopic image display device, stereoscopic image display system, and stereoscopic image display method
JP2012003327A (ja) * 2010-06-14 2012-01-05 Nintendo Co Ltd 立体画像表示プログラム、立体画像表示装置、立体画像表示システム、および、立体画像表示方法
EP2395765A2 (en) 2010-06-14 2011-12-14 Nintendo Co., Ltd. Storage medium having stored therein stereoscopic image display program, stereoscopic image display device, stereoscopic image display system, and stereoscopic image display method
US8842166B2 (en) 2010-06-14 2014-09-23 Nintendo Co., Ltd. Storage medium having stored therein stereoscopic image display program, stereoscopic image display device, stereoscopic image display system, and stereoscopic image display method
EP2395764A2 (en) 2010-06-14 2011-12-14 Nintendo Co., Ltd. Storage medium having stored therein stereoscopic image display program, stereoscopic image display device, stereoscopic image display system, and stereoscopic image display method
EP2394715A2 (en) 2010-06-14 2011-12-14 Nintendo Co., Ltd. Image display progam, system, and method
JP2012003328A (ja) * 2010-06-14 2012-01-05 Nintendo Co Ltd 立体画像表示プログラム、立体画像表示装置、立体画像表示システム、および、立体画像表示方法
US8902298B2 (en) 2010-06-14 2014-12-02 Nintendo Co., Ltd. Storage medium having stored therein stereoscopic image display program, stereoscopic image display device, stereoscopic image display system, and stereoscopic image display method
US8970678B2 (en) 2010-06-14 2015-03-03 Nintendo Co., Ltd. Computer-readable storage medium, image display apparatus, system, and method
JP2012003350A (ja) * 2010-06-14 2012-01-05 Nintendo Co Ltd 画像表示プログラム、装置、システムおよび方法
US9001192B2 (en) 2010-06-14 2015-04-07 Nintendo Co., Ltd. Storage medium having stored therein stereoscopic image display program, stereoscopic image display device, stereoscopic image display system, and stereoscopic image display method
US9530249B2 (en) * 2010-09-24 2016-12-27 Nintendo Co., Ltd. Computer-readable storage medium having image processing program stored therein, image processing apparatus, image processing system, and image processing method
US20120075424A1 (en) * 2010-09-24 2012-03-29 Hal Laboratory Inc. Computer-readable storage medium having image processing program stored therein, image processing apparatus, image processing system, and image processing method
US9278281B2 (en) 2010-09-27 2016-03-08 Nintendo Co., Ltd. Computer-readable storage medium, information processing apparatus, information processing system, and information processing method
US8854356B2 (en) 2010-09-28 2014-10-07 Nintendo Co., Ltd. Storage medium having stored therein image processing program, image processing apparatus, image processing system, and image processing method
JP2012252477A (ja) * 2011-06-02 2012-12-20 Hitachi Ltd 画像検索装置及び画像検索システム
JPWO2013021458A1 (ja) * 2011-08-09 2015-03-05 パイオニア株式会社 複合現実感装置
WO2013021458A1 (ja) * 2011-08-09 2013-02-14 パイオニア株式会社 複合現実感装置
JP2012059292A (ja) * 2011-12-09 2012-03-22 Nintendo Co Ltd 画像表示プログラム、画像表示装置、画像表示システム、および画像表示方法
JP2016081225A (ja) * 2014-10-15 2016-05-16 Kddi株式会社 情報提示システム
JP2017046233A (ja) * 2015-08-27 2017-03-02 キヤノン株式会社 表示装置及び情報処理装置及びその制御方法
JP2017192079A (ja) * 2016-04-14 2017-10-19 キヤノン株式会社 データ分配装置、画像表示システム及びデータ分配方法
US11983959B2 (en) 2019-04-18 2024-05-14 Beckman Coulter, Inc. Securing data of objects in a laboratory environment
US12001600B2 (en) 2021-05-07 2024-06-04 Beckman Coulter, Inc. Service glasses with selective data provision

Similar Documents

Publication Publication Date Title
JP2008146109A (ja) 画像処理方法、画像処理装置
US11380068B2 (en) Technique for recording augmented reality data
US9715765B2 (en) Head mounted display and display for selectively displaying a synthesized image and a physical space image, and control method thereof
US7843470B2 (en) System, image processing apparatus, and information processing method
JP4553362B2 (ja) システム、画像処理装置、情報処理方法
US8233011B2 (en) Head mounted display and control method therefor
US20210082197A1 (en) Method and device for compositing an image
US7782320B2 (en) Information processing method and information processing apparatus
EP1919219A1 (en) Video transmitting apparatus, video display apparatus, video transmitting method and video display method
US20210192681A1 (en) Frame reprojection for virtual reality and augmented reality
JP2006285789A (ja) 画像処理方法、画像処理装置
US10901213B2 (en) Image display apparatus and image display method
JP2011035638A (ja) 仮想現実空間映像制作システム
US11366315B2 (en) Image processing apparatus, method for controlling the same, non-transitory computer-readable storage medium, and system
JP4889036B2 (ja) 画像処理装置、画像処理方法
JP6614835B2 (ja) 通信装置、ヘッドマウントディスプレイ、画像処理システム、通信方法及びプログラム
JP3913076B2 (ja) 画像合成処理装置
CN117255187A (zh) 显示系统、用于显示系统的处理方法和存储介质
JP2006252059A (ja) 画像処理方法、画像処理装置
JP2005077808A (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: 20100302