JP5388932B2 - 情報処理装置およびその制御方法 - Google Patents

情報処理装置およびその制御方法 Download PDF

Info

Publication number
JP5388932B2
JP5388932B2 JP2010091828A JP2010091828A JP5388932B2 JP 5388932 B2 JP5388932 B2 JP 5388932B2 JP 2010091828 A JP2010091828 A JP 2010091828A JP 2010091828 A JP2010091828 A JP 2010091828A JP 5388932 B2 JP5388932 B2 JP 5388932B2
Authority
JP
Japan
Prior art keywords
frame image
orientation
frame
imaging device
image
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
JP2010091828A
Other languages
English (en)
Other versions
JP2010279023A (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 JP2010091828A priority Critical patent/JP5388932B2/ja
Priority to US12/763,672 priority patent/US8823779B2/en
Publication of JP2010279023A publication Critical patent/JP2010279023A/ja
Application granted granted Critical
Publication of JP5388932B2 publication Critical patent/JP5388932B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/246Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
    • G06T7/251Analysis of motion using feature-based methods, e.g. the tracking of corners or segments involving models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • G06T7/75Determining position or orientation of objects or cameras using feature-based methods involving models
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/204Image signal generators using stereoscopic image cameras
    • H04N13/207Image signal generators using stereoscopic image cameras using a single 2D image sensor
    • H04N13/221Image signal generators using stereoscopic image cameras using a single 2D image sensor using the relative movement between cameras and objects
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/296Synchronisation thereof; Control thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30244Camera pose

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Image Analysis (AREA)
  • Length Measuring Devices By Optical Means (AREA)
  • Image Processing (AREA)
  • Studio Devices (AREA)

Description

本発明は、情報処理装置およびその制御方法に関し、特に、画像を用いた撮像装置および物体の位置及び姿勢の計測に関する。
近年、現実空間に仮想空間の情報を重ね合わせて表示する拡張現実感(Augmented Reality、以下「AR」と言う)技術の研究が盛んである。AR技術の情報提示装置としては、ビデオシースルー型のヘッドマウントディスプレイ(Head Mounted Display、以下「HMD」と言う)が代表的である。ビデオシースルー型HMDには現実空間を撮影するカメラが内蔵されており、このカメラの現実空間における位置及び姿勢に応じて、仮想物体をコンピュータグラフィックスにより描画する。更に描画した仮想物体を現実空間の画像上に重畳した合成画像が、液晶パネルなどのHMDの表示デバイス上に表示される。この情報提示装置によって、利用者はあたかも仮想物体が現実空間中に実在するかのように感じる。
AR技術を実現する上で解決しなければならない大きな問題の一つとして「位置合わせ」がある。ARにおける位置合わせとは、仮想物体と現実空間との間の幾何学的な整合性を取ることである。仮想物体が現実空間に実在するように利用者が感じるためには、この幾何学的な位置合わせが正しく行われる必要がある。つまり、利用者には仮想物体が常に現実空間中の存在すべき位置に存在しているように提示されなければならない。ビデオシースルー型HMDを利用する場合、この位置合わせを行うということは、HMDに内蔵したカメラの現実空間に設定された座標系における位置及び姿勢を計測するということになる。カメラの位置及び姿勢の計測は、例えば磁気センサや超音波センサなど6自由度のカメラの位置及び姿勢を計測する物理センサによって行うことができる。
ところで、ビデオシースルー型HMDを利用する場合、カメラの位置及び姿勢を計測するためにHMDに内蔵されたカメラからの画像情報を利用することが可能となる。このような画像情報を利用する計測方法は、物理センサを利用する方法に比べて手軽でかつ低コストで行えるので広く利用されている。
非特許文献1では、現実空間や現実物体を線分によって記述した3次元幾何モデルと、カメラが撮影する画像上のエッジ情報を利用してカメラの位置及び姿勢を計測する方法が開示されている。ここでエッジとは、画像上において濃度が急激に変化する点のことを表す。この方法では、画像上で検出される多数のエッジがカメラの位置及び姿勢に基づいて画像上に投影された3次元幾何モデルの線分に当てはまるようにすることで、カメラの位置及び姿勢を算出する。より具体的には、予め入力されるカメラの位置及び姿勢の予測値をもとに3次元幾何モデルの線分を画像に仮想的に投影し、投影された線分の近傍においてエッジ検出を行う。そして、検出されたエッジが投影された線分上に存在するように、カメラの位置及び姿勢の予測値を補正することを繰り返すことにより、カメラの位置及び姿勢を算出する。
前述のエッジを用いたカメラの位置及び姿勢の計測方法では、カメラの位置及び姿勢の予測値として、主に前フレームにおけるカメラの位置及び姿勢が利用される。そのため、あるフレームにおいて位置及び姿勢の計測に失敗した場合には、その後のフレームにおける位置及び姿勢の計測を行うことができない。計測の失敗は、例えばカメラを高速に移動させた場合に起こる。そのような場合には、画像にモーションブラーが発生してエッジが検出されなかったり、カメラの位置及び姿勢の予測値に基づいて投影される線分の近傍にエッジが存在しなかったりするため、位置及び姿勢の計測に失敗しやすい。また、最初のフレームにおいては、前フレームにおけるカメラの位置及び姿勢を得る事ができない。
そのため、エッジを用いたカメラの位置及び姿勢を実際に利用するためには、最初のフレームや計測に失敗した直後に、カメラの位置及び姿勢の予測値を利用しないでカメラの位置及び姿勢の計測を行う初期化処理が必要となる。
その方策の一つとして、予め決められた初期位置及び初期姿勢を設定しておき、カメラを初期位置及び初期姿勢になるように移動した後に、該初期位置及び初期姿勢を予測値としてエッジを用いたカメラの位置及び姿勢を初期化することが行われている。
別の方策として、画像上で検出される特徴から、カメラの位置及び姿勢の予測値を利用しないでカメラの位置及び姿勢の計測を行う方法がある。例えば、非特許文献2では、画像上で検出される直線と、それに対応する3次元空間における直線の対応から、カメラの位置及び姿勢の計測を行う方法が開示されている。この方法では、少なくとも8本以上の直線の対応に基づいて立式される線型方程式を解くことにより、カメラの位置及び姿勢を算出する。非特許文献2の方法では、画像上で検出される直線とそれに対応する3次元空間における直線を対応付ける方法は示されていない。そのため、画像上の直線と3次元空間中の直線の対応が未知の状態から、非特許文献2で開示される方法を用いてカメラの位置及び姿勢を計測するためには、何らかの方策により画像上で検出される直線と3次元空間中での直線との対応を求める必要がある。一般的には、画像上での直線と3次元空間での直線とをランダムに対応付けてカメラの位置及び姿勢を算出し、最も整合性の高い対応を用いたときの算出結果を最終的なカメラの位置及び姿勢として出力する。
また、特許文献1では、カメラに傾斜角センサを装着し、傾斜角センサの計測値と画像情報(点の情報)を併用してカメラの位置及び姿勢を計測することで、位置及び姿勢の計測を安定化している。また、特許文献2では、カメラに傾斜角センサを装着し、傾斜角センサの計測値と画像上における直線の情報を利用して、カメラの方位角を算出している。
前述した初期化処理は一般的に時間を要するため、例えばカメラが常に動いている場合には、初期化処理に使用した画像におけるカメラの位置及び姿勢と、初期化処理が終了した時点でのカメラの実際の位置及び姿勢に大きな差異が発生する場合がある。そのような場合には、初期化処理終了後のカメラの位置及び姿勢の値に基づいて投影される線分の近傍にエッジが存在しなくなり、位置及び姿勢の計測に失敗しやすい。特許文献3では、カメラが撮像した各フレームの画像データを保持し、初期化処理に使用した次フレームの画像から現在の画像まで逐次処理を行うことで、カメラまたは物体の位置及び姿勢情報の追跡を可能としている。
特開2006−292417号公報 特開2004−108836号公報 特開2002−334338号公報
T. Drummond and R.Cipolla,"Real−time visual tracking of complex structures",IEEE Transactions on Pattern Analysis and Machine Intelligence,vol.24,no.7,pp.932−946,2002. Y.Liu,T.S.Huang,and O.D.Faugeras,"Determination of camera location from 2−D to 3−D line and point correspondences",IEEE Transactions on Pattern Analysis and Machine Intelligence,vol.12,no.1,pp.28−37,1990. I. Gordon and D. G. Lowe: "Scene Modelling, Recognition and Tracking with Invariant Image Features" Proc. Int. Symp. on Mixed and Augmented Reality, pp. 110-119, 2004. E.Rosten, T.Drummond,"Fusing points and lines for high performance tracking,"In: 10th IEEE International Conference on Computer Vision. Vol.2, pp.1508-1515, 2005.
しかし、特許文献3の方法では、初期化処理に用いた画像から現在の画像までの全ての画像において追跡処理を逐次行う。従って、初期化処理に多くの時間を要した場合、現在の画像に対して追跡処理を行うまでに多くの時間を要してしまう。また、この方法では、カメラまたは対象物体が追跡処理の失敗を招くような高速な動きをした際には、初期化処理と追跡処理に失敗するフレームまでの追跡処理を行った後、更に改めて初期化処理および追跡処理を行う必要がある。この場合、追跡処理を再び行うまでに多大な時間を要してしまうという課題があった。
本発明は、追跡処理を再び行うまでの処理時間が長いという従来技術の課題を解決することを目的とする。
上記目的を達成するために、本発明の情報処理装置は、
対象物体を撮像する撮像装置から複数のフレーム画像を取得する入力手段と、
前記入力手段により取得された複数のフレーム画像を記憶する記憶手段と、
前記記憶された複数のフレーム画像の中から予め指定された1枚の指定フレーム画像を選択し、該指定フレーム画像で検出される特徴と前記対象物体の予め登録された特徴とを対応させ、前記撮像装置の位置姿勢を導出する初期化手段と、
前記指定フレーム画像に続くフレーム画像を、前記記憶手段が記憶した前記複数のフレーム画像の中から、該フレーム画像のフレームレートの値に基づいて予め決定されたフレーム数毎に順次選択し、前記選択したフレーム画像に先行するフレーム画像における前記対象物体の特徴を現在選択しているフレーム画像の前記対象物体の特徴に対応させ、前記撮像装置の位置姿勢を計測する計測処理手段と、
前記計測処理手段が計測した前記撮像装置の位置姿勢の値が所定の範囲に入っているか否かを判定する判定手段と、
前記撮像装置の位置姿勢の値が前記所定の範囲に入っていないと前記判定手段が判定した場合、現在選択しているフレーム画像を用いて初期化させるよう前記初期化手段を制御する制御手段と
を備えることを特徴とする。
本発明によれば、追跡処理を再び行うまでの処理時間を短くすることが可能になる。
実施形態1に係る位置姿勢計測装置の構成例を示すブロック図。 実施形態1における位置姿勢計測方法の処理手順を示すフローチャート。 画像上への3次元モデルの投影を説明する図である。 実施形態2における位置姿勢計測方法の処理手順を示すフローチャート。 実施形態3における位置姿勢計測装置の構成例を示すブロック図。 実施形態3における位置姿勢計測方法の処理手順を示すフローチャート。 実施形態4における位置姿勢計測装置の構成例を示すブロック図。 実施形態4における位置姿勢計測方法の処理手順を示すフローチャート。 情報処理装置の各部をソフトウェアにより実現するコンピュータの基本構成を示すブロック図。 実施形態5に係る位置姿勢計測装置の構成例を示すブロック図。 実施形態5における位置姿勢計測方法の処理手順を示すフローチャート。
以下、添付図面を参照して、本発明をその好適な実施形態に従って詳細に説明する。
[実施形態1]
(構成)
図1は、実施形態1に係る情報処理装置である位置姿勢計測装置の構成を示すブロック図である。図1に示す如く、本実施形態に係る位置姿勢計測装置1000は、画像入力部1010、画像選択部1020、位置姿勢初期化処理部1030、位置姿勢算出部1040、データ記憶部1050によって構成されている。また、位置姿勢計測装置1000は、制御部1005を有し、これらの構成要素を統括的に制御する。
画像入力部1010は撮像装置110に接続されている。撮像装置110は観察対象物体100を撮影する。位置姿勢計測装置1000は、観察対象物体100を含む3次元空間中に規定される座標系における撮像装置110の位置及び姿勢を計測する。なお、観察対象物体は現実空間中に固定されているものとする。以下、位置姿勢計測装置1000を構成する各部について説明する。
画像入力部1010は、撮像装置110によって撮像された連続する複数のフレーム画像を取得する。そして取得したフレーム画像をデータ記憶部1050に順番に格納する。画像入力部1010は、撮像装置の出力がNTSC信号などのアナログ出力であればアナログビデオキャプチャボードによって実現される。また撮像装置の出力がIEEE1394などのデジタル出力であれば、例えばIEEE1394インタフェースボードによって実現される。また、予め記憶装置に記憶してある静止画像や動画像のデジタルデータを読み出しても良い。
画像選択部1020は、データ記憶部1050に格納されている画像入力部1010によって取得された画像から、位置姿勢初期化処理部1030のための予め指定された1枚の指定フレーム画像や、位置姿勢算出部1040のための該指定画像に先行するフレーム画像を順次選択する。
位置姿勢初期化処理部1030は、画像選択部1020で選択された1枚の画像を用いて撮像装置の位置および姿勢の導出を行う。例えば、非特許文献2で開示される画像上で検出される直線と、それに対応する3次元空間における直線との対応から撮像装置の位置及び姿勢の算出を行い、データ記憶部1050に格納する。
位置姿勢算出部1040は、画像選択部1020で選択された画像を用いて、例えば非特許文献1で開示されるエッジを用いた撮像装置の位置及び姿勢の計測を行う。
データ記憶部1050は上述の通り、様々な情報を格納するためのものであり、RAMやハードディスクドライブ装置などにより構成されている。また、データ記憶部1050は、観察対象物体100の3次元幾何モデルデータを格納する。また、データ記憶部1050は、位撮像装置の位置姿勢の計測状態が成功であったか失敗であったかを示すフラグFを保持する。初期状態におけるフラグFは、位置姿勢計測の予測値がないので、失敗として保持される。尚、データ記憶部1050には、上記説明においてデータ記憶部1050に格納するものとして説明した情報の他に、本実施形態において既知の情報として説明するものについても格納されているものと仮定する。
(フローチャート)
次に、実施形態1における位置姿勢計測方法の処理手順について説明する。図2は、本実施形態における位置姿勢計測方法の処理手順を示すフローチャートである。
まずステップS2010において、制御部1005は、データ記憶部に格納されたフラグFの値を見ることにより、現在の撮像装置の位置姿勢計測が成功か、または失敗であるかを判定する。失敗の場合、ステップS2020に進む。また、成功の場合にはステップS2040に進む。
ステップS2020において、画像選択部1020は、データ記憶部1050に記憶された画像のうちこれから処理を行う画像を選択する。これは現在選択している最新の画像を指す。
ステップS2030において、位置姿勢初期化処理部1030は、撮像装置110の位置及び姿勢の初期化処理を行う。初期化処理が成功した場合はフラグFを成功に、初期化処理が失敗した場合はフラグFを失敗にセットして、データ記憶部1050へ格納し、ステップS2070に進む。尚、撮像装置の位置及び姿勢の初期化処理を行うための技術については、例えば非特許文献2のように周知技術であるので、これについての詳細な説明は省略する。
ステップS2040において、画像選択部1020は、次に処理する画像を選択する。この次の画像は、位置姿勢算出部1040が使用する画像であり、データ記憶部1050に保存されている撮像装置によって撮影された画像の中から選択される。
ここで、画像選択部1020における、この画像の選択方法について説明する。特許文献3では、初期化に用いた画像から現在の画像までの全ての画像において逐次処理を行っていたため、現在の画像に対して追跡処理を行うまでに多くの時間を要していた。しかし、本実施形態に係る追跡処理では、初期化から現在までの全ての画像を逐次処理するのではなく、一定のフレームを飛ばして追跡処理をすることで、従来よりも短時間で初期化処理から追跡処理を続けられる。データ記憶部1050に格納されている撮像装置によって撮影されたi番目のフレームにおける画像をPi(i=1,2,...,N)とする。ここで、PNは画像処理を行っている最新の画像を示している。画像選択部1020は、k番目のフレームの画像まで撮像装置の位置及び姿勢の算出に使用済とする。このとき、画像選択部1020は、処理が完了したk番目のフレームからαだけ離れた(時間的に進んだ)(k+α)番目のフレームの画像Pk+αを選択する。αの値は、オペレータによる対話的な設定操作等によって与えておく。あるいは、予め設定された撮像装置の画像のフレームレートやステップS2050の処理に要する時間によって、動的に設定しても良い。
ステップS2050において、位置姿勢算出部1040は、ステップS2040において選択された画像Pk+αを用いて、撮像装置110の位置及び姿勢の算出を行う。この計測は、例えば非特許文献1で開示されているエッジを用いた位置及び姿勢の算出方法で良い。図3は撮像画像上への3次元幾何モデルの投影を説明する図である。この図を用いてステップS2050での撮像装置110の位置及び姿勢の算出処理の説明を行う。
(1)撮像装置の位置及び姿勢の予測値及び予め校正済みのカメラの固有パラメータに基づいて、3次元幾何モデルの線分を画像上に投影する。ここで、図3(a)は、撮像装置により撮像された画像の対象物体の形状を示し、図3(b)は、撮像装置により撮像された画像に3次元幾何モデルの形状を表す線分を投影した画像を示している。ここで3次元幾何モデルは、太い実線と点線で表わされ、点線は幾何モデルの見えない部分を示している。この3次元幾何モデルは、図3(a)のフレームの前のフレームで決定されたカメラの位置姿勢の予測値に基づいて投影される。
(2)投影された各線分を、画像上で一定間隔となるように分割し、分割点を設定する。そして各分割点について、該分割点を通過し向きが投影された線分の法線方向である線分(探索ライン)上でエッジ探索を行い、探索ライン上における輝度値の勾配が極大でありかつ分割点に最も近い点を対応エッジとして検出する。
(3)分割点毎に検出された対応エッジと、投影される線分との間の画像上での距離の総和が最小となるような撮像装置の位置及び姿勢の補正値を算出し、撮像装置の位置及び姿勢を補正する。
(4)(3)の処理を収束するまで繰り返し最適化計算を行う。
ステップS2050の処理が終了したらステップS2060に進む。
ステップS2060において、制御部1005は破綻検出を行う。ここでは、位置及び姿勢の計測に失敗しているかどうかを検出する。破綻検出は、例えば算出された位置及び姿勢に基づき画像上に投影した線分と、ステップS2050で検出されたエッジの距離とに基づいて行う。具体的には、線分とそれに対応する検出エッジとの距離が予め設定された閾値以上であるエッジの割合が閾値以上であれば破綻していると判定する。ステップS2060において破綻していると検出された場合、制御部1005はフラグFを失敗にセットし、データ記憶部1050へ格納する。ステップS2060の処理が終了したら、ステップS2070に進む。
ステップS2070では、位置姿勢計測を終了するか否かの判定を行う。終了しない場合にはステップS2010に戻る。
以上のように、本実施形態では、画像処理の破綻が検出されても、初期化に用いた画像から現在の画像までの全ての画像において逐次処理を行わず、所定のフレームαまで飛ばして処理することにより、従来に比べて短時間で追跡処理を再び行うことが可能となる。
[実施形態2]
実施形態2では実施形態1のように再度初期化処理を行わず、その代わり、処理済のk番目のフレームの画像Pkとk+α番目のフレームの画像Pk+αとの間の(k+j)番目のフレームの画像Pk+j(j=1,2,...,α−1)を使用して、追跡処理を行う。この画像Pk+jを用いた追跡処理を行うことで撮像装置の位置及び姿勢の計測処理が成功し、実施形態1で行った初期化処理に費やす時間より少なくすることが期待できる。以下、本実施形態に係る位置姿勢計測方法の処理手順について説明する。
(フローチャート)
図4は、実施形態2における位置姿勢計測方法の処理手順を示すフローチャートである。ステップS4010では、制御部1005は、データ記憶部1050に格納されているフラグFの値を見ることにより、現在の位置姿勢計測の状態が成功または失敗かの判定を行う。失敗の場合、ステップS4020に進む。また成功の場合にはステップS4060に進む。
ステップS4020において、制御部1005は、予めデータ記憶部1050の格納していたαの値を見ることにより、追跡処理用の画像(kとk+αとの間のフレーム画像)が残存しているか否かの判定を行う。α≧2である場合には、ステップS4050に進む。また、α<2である場合にはステップS4030に進む。
ステップS4030において、追跡処理用の画像が1つしか残存していないので、画像選択部1020は、処理を行う画像として最新の画像を選択する。次にステップS4040において、位置姿勢初期化処理部1030は、撮像装置110の位置及び姿勢の初期化処理を行う。初期化処理が終了した後はαの値を0にセットする。初期化処理が成功した場合はフラグFを成功に、初期化処理が失敗した場合はフラグFを失敗にセットしデータ記憶部1050に格納して、ステップS4090に進む。
ステップS4050において、追跡処理用画像は残存するので、画像選択部1020は、画像PkとPk+αとの間の画像Pk+j(j=1,2,...,α−1)を選択し、α=jに設定する。すなわち、、画像選択部1020は、k番目のフレームから数えてj番目のフレーム数毎に画像を選択する。jの値は、オペレータによる対話的な設定操作等によって与えておいても良いし、あるいは、撮像装置が撮影する画像のフレームレートによって、動的に設定しても良い。ステップS4050の処理が終了したら、ステップS4070に処理を進める。
ステップS4060において、画像選択部1020は、位置姿勢算出部1040が使用する画像Pk+αを選択する。この画像は、データ記憶部1050に保存されている画像入力部1010が取得した撮像装置によって撮影された画像の中から選択するものである。ステップS4060の処理が終了したら、ステップS4070に処理を進める。
ステップS4070において、位置姿勢算出部1040は、ステップS4050又はステップS4060で選択された画像Pk+αを用いて、周知の例えば非特許文献1で開示されているエッジを用いた位置及び姿勢の算出方法によって、撮像装置110の位置及び姿勢の再計測を行う。ステップS4070の処理が終了したらステップS4080に進み、破綻検出を行う。
ステップS4080では、制御部1005は、位置及び姿勢の計測に失敗しているかどうかを検出する。破綻の検出は、例えば算出された位置及び姿勢に基づき画像上に投影した線分と、上記のステップS4070で検出されたエッジの距離に基づいて行う。具体的には、該線分とそれに対応する検出エッジとの距離が予め設定された閾値以上であるエッジの割合が閾値以上であれば破綻していると判定する。ステップS4070において破綻していると検出された場合には、フラグFを失敗にセットする。ステップS4070の処理が終了したら、ステップS4090に進む。
ステップS4090では、制御部1005は、データ記憶部1050の画像データが残っているかを確認することで、位置姿勢計測を終了するか否かの判定を行う。終了しない場合にはステップS4010に戻る。
以上のように、実施形態2では破綻後、画像Pk+αよりも時間的に前のフレームの撮像画像を用いて撮像装置の位置および姿勢の計測処理を行い破綻をしなければ、実施形態1のように再度初期化処理を行うよりも早く計測処理を進めることができる。
[実施形態3]
本実施形態に係る位置姿勢計測装置は、実施形態1の位置姿勢計測装置に3自由度の姿勢センサを撮像装置に装着した構成となっている。実施形態3は、姿勢センサから出力される姿勢計測値を用いることを特徴とする。以下、本実施形態に係る位置姿勢計測装置及び位置姿勢計測方法について説明する。
(構成)
図5は、実施形態3に係る位置姿勢計測装置の構成を示すブロック図である。なお、図5において図1と同じ構成部については同じ番号を付けている。従って、その説明は省略する。図に示す如く、本実施形態に係る位置姿勢計測装置5000は、画像入力部1010、位置姿勢算出部1040、データ記憶部1050、センサ計測値取得部5010、画像選択部5020、位置姿勢初期化処理部1030、センサ計測値監視部5040によって構成されている。また、位置姿勢計測装置5000は、制御部1005を有し、これらの構成要素を統括的に制御する。
姿勢センサ500は、センサ座標系における自身の姿勢を計測する。姿勢センサ500は、地球の重力方向を計測可能な傾斜計(不図示)を内部に有しており、センサ座標系の1つの軸は重力と逆の方向に設定される。計測した3自由度の姿勢データの計測値は、センサ計測値取得部5010の要求に従って、センサ計測値取得部5010へと出力される。
姿勢取得手段であるセンサ計測値取得部5010は、姿勢センサ500から入力された姿勢計測値をデータ記憶部1050へと出力する。画像選択部5020は、データ記憶部1050に格納されている画像入力部1010によって取得された画像から、位置姿勢初期化処理部1030または位置姿勢算出部1040が使用する画像を選択する。
位置姿勢初期化処理部1030は、画像選択部5020で選択された画像を用いて、撮像装置の位置及び姿勢の予測値を利用しないで撮像装置カメラの位置及び姿勢の計測(初期化処理)を行い、計測結果をデータ記憶部1050に格納する。初期化処理の方法は、非特許文献2で開示される方法であっても良いし、あるいは、特許文献1で開示される姿勢センサ500の計測値を利用した方法であっても良い。センサ計測値監視部5040は、センサ計測値取得部5010で取得された姿勢センサ500の姿勢計測値を監視し、センサ計測値の変化量を算出する。
(フローチャート)
次に、実施形態3における位置姿勢計測方法の処理手順について説明する。図6は、実施形態3における位置姿勢計測方法の処理手順を示すフローチャートである。
まずステップS6010において、制御部1005は、データ記憶部1050に格納されたフラグFの値を見ることにより、現在の位置姿勢計測の状態が成功または失敗であるかの判定を行う。失敗の場合には、ステップS6020に進む。また、成功の場合にはステップS6080に進む。
ステップS6020において、画像選択部5020は、処理を行う画像として最新の画像を選択する。次にステップS6030において、位置姿勢初期化処理部1030は、撮像装置110の位置及び姿勢の初期化処理を開始して、処理をステップS6040に進める。
ステップS6040において、センサ計測値取得部5010は、姿勢センサ500の姿勢計測値を取得して、データ記憶部1050に格納する。
ステップS6050において、センサ計測値監視部5040は、姿勢センサ500の姿勢計測値の姿勢変化を算出し、変化量の大小の姿勢変化判定を行う。具体的には、前回取得した姿勢センサ500の姿勢計測値と現在の姿勢センサ500の姿勢計測値とを比較し、その差を算出し、姿勢変化が閾値以上であれば変化量大、変化量が閾値以下であれば変化量小とする。変化量が小さい場合にはステップS6060に進む。また、変化量が大きい場合にはステップS6070に進む。
ステップS6060では、撮像装置110の位置及び姿勢の初期化処理が終了しているか否かの判定を行う。初期化処理が終了している場合には、初期化処理の成否を判定し、初期化処理が成功した場合にはフラグFを成功にセットし、初期化処理が失敗した場合はフラグFを失敗にセットして、データ記憶部1050に格納し、ステップS6130に進む。また、初期化処理が終了していない場合には、ステップS6040に処理を戻す。
ステップS6070において、位置姿勢初期化処理部1030は初期化処理を中止し、フラグFを失敗にセットして、ステップS6130に進む。
ステップS6080において、画像選択部1020は、k番目のフレームの画像まで撮像装置の位置及び姿勢の算出またはセンサ計測値の変化検出判定に使用済であるとき、画像Pkの次フレームの画像Pk+1を選択する。また、センサ計測値監視部5040は画像Pkから画像Pk+1の間に取得された姿勢センサ500の姿勢計測値を取得する。
ステップS6090では、ステップS6080において選択された画像Pk+1が最新の画像であるか否かの判定を行う。画像Pk+1が最新の画像であればステップS6110に進む。また、画像Pk+1が最新の画像でなければステップS6100に進む。
ステップS6100において、センサ計測値監視部5040は、ステップS6080において取得した姿勢センサ500の姿勢計測値を用いてセンサ計測値の変化が検出されたか否かを判定する。具体的には、画像Pkの時点における姿勢計測値から画像Pk+1までの時点までの姿勢計測値の変化量の最大値を算出し、変化量の最大値が閾値以上であればセンサ計測値の変化が検出されたと判定する。閾値としては、姿勢センサ500の誤差範囲の最大値を使用しても良いし、あるいは、位置姿勢算出部1040で使用する位置及び姿勢の算出方法で許容されている姿勢値の変化が判明していれば、その値を使用しても良い。センサ計測値の変化が検出されたと判定された場合は、ステップS6110に進む。また、センサ計測値の変化が未検出と判定された場合は、ステップS6080に戻る。
ステップS6110において、位置姿勢算出部1040は、画像Pk+1を用いて非特許文献1で開示されているエッジを用いた位置及び姿勢の算出方法によって、撮像装置110の位置及び姿勢の算出を行う。
ステップS6110の処理が終了したらステップS6120に進み、破綻の検出を行う。ここでは、位置及び姿勢の計測に失敗しているかどうかを検出する。ステップS6120において破綻していると検出された場合には、フラグFを失敗にセットする。ステップS6120の処理が終了したら、ステップS6130に進む。ステップS6130では、位置姿勢計測を終了するか否かの判定を行う。終了しない場合にはステップS6010に戻る。
以上で説明した実施形態では、姿勢センサを撮像装置に装着し、姿勢の計測を行っていた。しかしながら、撮像装置に装着するセンサは姿勢センサに限るものではなく、位置または姿勢の変分を計測できるセンサであれば適用可能である。例えば、3軸の加速度計と3軸の角加速度計を撮像装置に装着し、夫々のセンサ出力を積分して求められる位置変分と姿勢変分を用いてステップS6050の位置姿勢の変化量を計測しても良い。このとき、センサ計測値取得部5010が取得する計測値は、夫々のセンサが計測する位置及び姿勢の所定時間における変分値となる。また、センサ計測値監視部5040が監視する計測値は、夫々のセンサが計測する位置及び姿勢の変分値となる。
[実施形態4]
実施形態3では、撮像装置に装着した3自由度の姿勢センサから出力される姿勢計測値を用いて、撮像装置の初期化処理の中止や撮像装置の位置及び姿勢の算出を間引いていた。しかし、撮像装置にセンサを装着せず、撮像装置によって撮影された画像からオプティカルフローを算出しても良い。すなわち、視覚表現の中での物体の動きをベクトルで表わし、そのオプティカルフローの値によって初期化処理の中止や撮像装置の位置及び姿勢の算出を間引いても良い。以下、本実施形態に係る位置姿勢計測装置及び位置姿勢計測方法について説明する。
(構成)
図7は、本実施形態に係る位置姿勢計測装置の構成を示すブロック図である。なお、図7において、図1から図5で同じ構成部については同じ番号を付けており、その説明を省略する。図に示す如く、本実施形態に係る位置姿勢計測装置7000は、画像入力部1010、位置姿勢初期化処理部1030、位置姿勢算出部1040、データ記憶部1050、オプティカルフロー算出部7010、画像選択部7020によって構成されている。また、位置姿勢計測装置7000は、制御部1005を有し、これらの構成要素を統括的に制御する。
オプティカルフロー算出部7010は、撮像装置110が撮像した画像を用いてオプティカルフローを算出し、変化量を算出する。
画像選択部7020は、データ記憶部1050に格納されている画像入力部1010によって取得された画像から、位置姿勢初期化処理部1030または位置姿勢算出部1040が使用する画像を選択する。
(フローチャート)
次に、実施形態4における位置姿勢計測方法の処理手順について説明する。図8は、本実施形態における位置姿勢計測方法の処理手順を示すフローチャートである。
まずステップS8010において、制御部1005はデータ記憶部1050に格納されたフラグFの値を見ることにより、現在の位置姿勢計測の状態が成功または失敗であるかの判定を行う。失敗の場合にはステップS8020に進む。また、成功の場合にはステップS8080に進む。
ステップS8020において、画像選択部7020は、処理を行う画像として最新の画像PRを選択する。次にステップS8030において、位置姿勢初期化処理部1030は、撮像装置110の位置及び姿勢の初期化処理を開始する。また、j=0と定めて、処理をステップS8040に進める。
ステップS8040において、画像選択部7020は、画像PR+jと画像PR+j+1を選択する。オプティカルフロー算出部7010は、画像PR+jと画像PR+j+1の2つの画像からオプティカルフローを算出して、処理をステップS8050に進める。
ステップS8050において、制御部1005は、ステップS8040で算出したオプティカルフローの値を見ることにより、変化量の大小の判定を行う。具体的には、オプティカルフローの値が閾値以上であれば変化量大、閾値以下であれば変化量小とする。変化量が小さい場合は、ステップS8060に進む。また、変化量が大きい場合にはステップS8070に進む。
ステップS8060では、撮像装置110の位置及び姿勢の初期化処理が終了しているか否かの判定を行う。初期化処理が終了している場合には、制御部1005は、初期化処理の成否を判定し、初期化処理が成功した場合にはフラグFを成功にセットし、初期化処理が失敗した場合はフラグFを失敗にセットして、データ記憶部1050へ格納し、ステップS8130に進む。また、初期化処理が終了していない場合には、j=j+1と定めて、ステップS8040に処理を戻す。
ステップS8070において、位置姿勢初期化処理部1030は初期化処理を中止し、フラグFを失敗にセットして、データ記憶部1050へ格納し、ステップS8130に進む。
ステップS8080において、画像選択部1020は、ステップS8030、S8100、S8110で使用した画像の中で最もフレーム番号が大きいものがk番目であったとき、k番目とk+1番目のフレームの画像Pk、画像Pk+1を選択する。
ステップS8090では、ステップS8080において選択された画像Pk+1が最新の画像であるか否かの判定を行う。画像Pk+1が最新の画像であればステップS8110に進む。また、画像Pk+1が最新の画像でなければステップS8100に進む。
ステップS8100において、オプティカルフロー算出部7010は、画像Pk、画像Pk+1からオプティカルフローの値を算出して、オプティカルフローの値に変化が検出されたか否かの判定を行う。具体的には、オプティカルフロー判定手段が、オプティカルフローの値が所定の閾値以上であれば変化検出、閾値以下であれば変化未検出と判定する。オプティカルフローの変化が検出された場合はステップS8110に進む。また、オプティカルフローの変化が未検出であった場合はステップS8080へと処理を戻す。
ステップS8110において、位置姿勢算出部1040は、画像Pk+1を用いて非特許文献1で開示されているエッジを用いた位置及び姿勢の算出方法によって、撮像装置110の位置及び姿勢の算出を行う。
ステップS8110の処理が終了したらステップS8120に進み、破綻検出を行う。ここでは、位置及び姿勢の計測に失敗しているかどうかを検出する。ステップS8120において破綻していると検出された場合には、フラグFを失敗にセットし、データ記憶部1050へ格納する。ステップS8120の処理が終了したら、ステップS8130に進む。
ステップS8130では、制御部1005はデータ記憶部1050に格納されている画像データの処理状況をチェックし、位置姿勢計測を終了するか否かの判定を行う。終了しない場合にはステップS8010に戻る。
[実施形態5]
実施形態1から4では、初期化処理に非特許文献2の3次元エッジモデルと画像上で検出されたエッジとの対応を取ることで、カメラの位置姿勢を求める方法を利用していた。しかし、本発明は、初期化処理にエッジを用いることに限定するものではない。例えば、非特許文献3に示すSIFT特徴量を用いて初期位置姿勢を求めても良い。
本実施形態では、初期化処理に非特許文献3に示すSIFT特徴量を用いてカメラの初期位置姿勢を求める方法について説明する。
(構成)
図10は、実施形態5に係る位置姿勢計測装置の構成を示すブロック図である。なお、図10において図1と同じ構成部については同じ番号を付けている。従って、その説明は省略する。図10に示す如く、本実施形態に係る位置姿勢計測装置1015は、画像入力部1010、位置姿勢算出部1040、データ記憶部1050、位置姿勢初期化処理部1035によって構成されている。また、位置姿勢計測装置1015は、制御部1005を有し、これらの構成要素を統括的に制御する。
ラベル105は、観察対象物体100に貼り付けられるシール状の印刷物である。ラベルには、注意書き等の文字が記載されているものとする。なおラベルの内容は文字に限定されず、画像特徴として利用できる模様があればよい。ラベル105は、撮像装置110によって撮像されたラベル105の画像から、あらかじめ算出したSIFT特徴量データベースとマッチングして撮像装置110の初期位置姿勢を算出するために用いられる。
位置姿勢初期化処理部1035は、例えば非特許文献3に記載されているSIFT特徴量を利用して位置姿勢推定方法を利用すればよい。SIFT特徴量とは、撮像装置を移動させたときに、対象領域の画像上における回転・スケール変化に対して不変な特徴量である。すなわち、撮像装置を動かしたとしても、あらかじめ登録した物体の判別や位置姿勢を計測することが可能になる特徴量である。例えば、ラベル105をSIFT特徴量としてあらかじめ登録し、さらにSIFT特徴量の3次元と対応付けたデータベースを作成しておく。次に撮像装置110でラベル105を撮影して、SIFT特徴量を算出する。このとき、算出した特徴量をデータベースと照合し、マッチングを行う。複数のSIFT特徴量がマッチングに成功すると、対応付けられた複数の3次元位置から撮像装置110の位置姿勢を推定することができる。
(フローチャート)
次に、本実施形態における位置姿勢計測方法の処理手順について説明する。図11は、本実施形態における位置姿勢計測方法の処理手順を示すフローチャートである。なお、図11において図2と同じ処理ステップについては同じステップ番号を付けている。従って、その説明は省略する。
ステップS2035において、位置姿勢初期化処理部1035は、撮像装置110の位置及び姿勢の初期化処理を行う。初期化処理が成功した場合はフラグFを成功に、初期化処理が失敗した場合はフラグFを失敗にセットして、データ記憶部1050へ格納し、ステップS2070に進む。尚、本実施形態では、撮像装置の初期位置及び姿勢は、前述したSIFT特徴量を用いた画像認識により算出する。
前述のように、本発明は、初期化処理の方法に依存しない。撮像装置の初期位置姿勢を求められる初期化処理であれば、適用可能である。
[実施形態6]
実施形態1から4では、位置姿勢算出部1040が非特許文献1で開示される「エッジを用いた撮像装置の位置姿勢計測」を利用していた。しかし、本発明は、位置姿勢算出処理にエッジを用いることに限定するものではない。例えば、非特許文献4のFAST(Features from accelerated Segment Test)の検出器で検出される特徴点をトラッキングして、撮像装置の位置姿勢を求めてもよい。
FASTは、ポスターや窓の角のような、シーンに配置されている物体の特徴的な点を画像特徴として検出する検出器である。
本実施形態では、撮像装置の位置姿勢算出処理に非特許文献4に示すFAST検出器を用いる場合について説明する。
(構成)
本実施形態に係る位置姿勢計測装置の構成は、実施形態5の構成を示す図10の位置姿勢算出部1040を、FASTを利用して位置姿勢を算出するように変更したものとなる。
まず、撮像装置110が観察対象物体100を撮影し、撮像画像を得る。次に、位置姿勢初期化処理部1030は、撮像された画像から実施形態5で例示したSIFT特徴量を利用して初期位置姿勢推定を行う。
さらに、位置姿勢算出部1040は、撮像された画像から特徴点(画像の角の点)を抽出する。本実施形態では、例えば、非特許文献4のFAST(Features from accelerated Segment Test)の検出器を利用する。すなわち、注目画素を中心としたある固定半径を持つ円周上の画素の輝度値を、注目画素の輝度値と比較することによって特徴点を検出する。ここで位置姿勢算出部1040は、前のフレームで検出された特徴点と現在の撮像画像で得られた特徴点とのマッチングを行う。位置姿勢算出部1040は、マッチングされた特徴点については、さらに、あらかじめ同一シーンで作成した特徴点の3次元位置と画像上で検出された特徴点とを対応付ける。
さらに位置姿勢算出部1040が、対応付けされた複数の特徴点を用いて、撮像装置の位置姿勢を求める。例えば、画像上での特徴点と3次元空間での特徴点とをランダムに対応付けてカメラの位置及び姿勢を算出し、最も整合性の高い対応付けを用いたときの算出結果を最終的なカメラの位置及び姿勢として出力すればよい。
(フローチャート)
次に、実施形態6における位置姿勢計測方法の処理手順について説明する。本実施形態における位置姿勢計測方法の処理手順は、実施形態5の処理手順を示す図11のフローチャートにおいて、ステップS2050の位置姿勢算出処理を、FASTを利用した位置姿勢算出処理に変更したものである。
ステップS2050において、位置姿勢算出部1040は、ステップS2040において選択された画像Pk+αを用いて、撮像装置110の位置及び姿勢の算出を行う。この処理は、前述のように、非特許文献4に示すFAST検出器によって検出された特徴点と、あらかじめ登録された特徴点の3次元位置とをマッチングして撮像装置110の位置姿勢を算出する。
前述のように、本発明は、位置姿勢算出処理方法に依存しない。位置姿勢算出処理は、撮像装置の位置姿勢を求められる方法であれば、適用可能である。
[実施形態7]
実施形態1から6で示した、位置姿勢計測装置の各構成要素は全てハードウェアで構成されているとして説明した。しかし、その一部をソフトウェアで構成しても良い。その場合、残りの部分をハードウェアとして実装しているコンピュータに、このソフトウェアを実行させることで、このコンピュータは、上記実施形態で説明した位置姿勢計測装置の動作を行うことになる。
(構成)
図9は位置姿勢計測装置に適用可能なコンピュータのハードウェア構成例を示すブロック図である。
CPU9001は、RAM9002やROM9003に格納されているコンピュータプログラムやデータを用いてコンピュータ全体の制御を行う。また、CPUはそれと共に上記各実施形態で位置姿勢計測装置が行うものとして説明した上述の各処理を実行する。
RAM9002は、外部記憶装置9007や記憶媒体ドライブ9008からロードされたコンピュータプログラムやデータを一時的に記憶するためのエリアを有する記憶媒体である。またRAM9002は、I/F(インターフェース)9009を介して外部から受信したデータを一時的に記憶するためのエリアを有する。更に、RAM9002は、CPU9001が各処理を実行する際に用いるワークエリアも有する。即ち、RAM9002は、各種エリアを適宜提供することができる。例えば、RAM9002は、図1に示したデータ記憶部1050としても機能する。
また、ROM9003には、コンピュータの設定データやブートプログラムなどが格納されている。
キーボード9004、マウス9005は、操作入力装置の一例としてのものであり、コンピュータのユーザが操作することで、各種の指示をCPU9001に対して入力することができる。
表示部9006は、CRTや液晶画面などにより構成されており、CPU9001による処理結果を画像や文字などで表示することができる。例えば、表示部9006には、撮像装置110の位置姿勢計測のために表示すべきメッセージなどを表示することができる。
外部記憶装置9007は、ハードディスクドライブ装置に代表される大容量情報記憶装置である。外部記憶装置9007には、OS(オペレーティングシステム)や、位置姿勢計測装置が行うものとして説明した上述の各処理をCPU9001に実行させるためのプログラムやデータが格納されている。図1の場合、これに係るコンピュータプログラムには、画像入力部1010、画像選択部1020、位置姿勢初期化処理部1030、位置姿勢算出部1040のそれぞれに対応する機能が含まれている。また、このデータには、仮想空間のデータや、上述の説明において既知の情報として説明したものが含まれている。
外部記憶装置9007に保存されているコンピュータプログラムやデータは、CPU9001による制御に従って適宜RAM9002にロードされる。CPU9001はこのロードされたプログラムやデータを用いて処理を実行することで、位置姿勢計測装置が行うものとして上述した各処理を実行することになる。なお、外部記憶装置9007は、図1に示したデータ記憶部1050として用いても良い。
記憶媒体ドライブ9008は、CD−ROMやDVD−ROMなどの記憶媒体に記録されたプログラムやデータを読み出したり、係る記憶媒体にコンピュータプログラムやデータを書込んだりする。尚、外部記憶装置9007に保存されているものとして説明したプログラムやデータの一部若しくは全部をこの記憶媒体に記録しておいても良い。記憶媒体ドライブ9008が記憶媒体から読み出したコンピュータプログラムやデータは、外部記憶装置9007やRAM9002に対して出力される。
I/F9009は、撮像装置110を接続するためのアナログビデオポートあるいはIEEE1394等のデジタル入出力ポートにより構成される。また、算出した撮像装置の位置及び姿勢情報を外部へ出力するためのイーサネット(登録商標)ポートなどによって構成されても良い。I/F9009を介して受信したデータは、RAM9002や外部記憶装置9007に入力される。なお、図1に示した画像入力部1010の機能の一部は、I/F9009によって実現される。また、センサシステムを用いる場合、このI/F9009には、センサシステムを接続することになる。バス9010は、上述の各構成部をバス信号によって繋げるものである。
[その他の実施形態]
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。

Claims (11)

  1. 対象物体を撮像する撮像装置から複数のフレーム画像を取得する入力手段と、
    前記入力手段により取得された複数のフレーム画像を記憶する記憶手段と、
    前記記憶された複数のフレーム画像の中から予め指定された1枚の指定フレーム画像を選択し、該指定フレーム画像で検出される特徴と前記対象物体の予め登録された特徴とを対応させ、前記撮像装置の位置姿勢を導出する初期化手段と、
    前記指定フレーム画像に続くフレーム画像を、前記記憶手段が記憶した前記複数のフレーム画像の中から、該フレーム画像のフレームレートの値に基づいて予め決定されたフレーム数毎に順次選択し、前記選択したフレーム画像に先行するフレーム画像における前記対象物体の特徴を現在選択しているフレーム画像の前記対象物体の特徴に対応させ、前記撮像装置の位置姿勢を計測する計測処理手段と、
    前記計測処理手段が計測した前記撮像装置の位置姿勢の値が所定の範囲に入っているか否かを判定する判定手段と、
    前記撮像装置の位置姿勢の値が前記所定の範囲に入っていないと前記判定手段が判定した場合、現在選択しているフレーム画像を用いて初期化させるよう前記初期化手段を制御する制御手段と
    を備えることを特徴とする情報処理装置。
  2. 対象物体を撮像する撮像装置から複数のフレーム画像を取得する入力手段と、
    前記入力手段により取得された複数のフレーム画像を記憶する記憶手段と、
    前記記憶された複数のフレーム画像の中から予め指定された1枚の指定フレーム画像を選択し、該指定フレーム画像で検出される特徴と前記対象物体の予め登録された特徴とを対応させ、前記撮像装置の位置姿勢を導出する初期化手段と、
    前記指定フレーム画像に続くフレーム画像を、前記記憶手段が記憶した前記複数のフレーム画像の中から、該フレーム画像のフレームレートの値に基づいて予め決定されたフレーム数毎に順次選択し、前記選択したフレーム画像に先行するフレーム画像における前記対象物体の特徴を現在選択しているフレーム画像の前記対象物体の特徴に対応させ、前記撮像装置の位置姿勢を計測する計測処理手段と、
    前記計測処理手段が計測した前記撮像装置の位置姿勢の値が所定の範囲に入っているか否かを判定する判定手段と、
    前記撮像装置の位置姿勢の値が前記所定の範囲に入っていないと前記判定手段が判定した場合、前記計測処理手段が、前記現在選択しているフレーム画像のフレームから予め設定した数だけ跳び越えたフレーム画像を用いて前記撮像装置の位置姿勢の変化を再計測するように制御する制御手段と
    を備えることを特徴とする情報処理装置。
  3. 対象物体を撮像する撮像装置から複数のフレーム画像を取得する入力手段と、
    前記撮像装置の姿勢データを検出する姿勢センサから該姿勢データを前記複数のフレーム画像に対応して取得する姿勢取得手段と、
    前記複数のフレーム画像に対応して取得された複数の前記姿勢データと前記取得された複数のフレーム画像とを記憶する記憶手段と、
    前記複数のフレーム画像の中から予め指定された1枚の指定フレーム画像を選択し、該指定フレーム画像で検出される特徴と前記対象物体の予め登録された特徴とを対応させ、前記撮像装置の位置姿勢を導出する初期化手段と、
    前記指定フレーム画像に続くフレーム画像を前記記憶された複数のフレーム画像の中から順次選択し、前記選択したフレーム画像に先行するフレーム画像に対応する姿勢データと現在選択しているフレームに対応する姿勢データとを比較し、その姿勢変化が所定の閾値以上である場合に、前記先行するフレーム画像における前記対象物体の特徴を前記現在選択しているフレーム画像の前記対象物体の特徴に対応させ、前記撮像装置の位置姿勢を計測する計測処理手段と、
    前記計測処理手段により計測された前記撮像装置の位置姿勢の値が所定の範囲に入っているか否かを判定する判定手段と、
    前記撮像装置の位置姿勢の値が前記所定の範囲に入っていないと前記判定手段が判定した場合、現在選択しているフレーム画像を用いて初期化させるよう前記初期化手段を制御する制御手段と
    を備えることを特徴とする情報処理装置。
  4. 対象物体を撮像する撮像装置から複数のフレーム画像を取得する入力手段と、
    前記入力手段により取得された複数のフレーム画像を記憶する記憶手段と、
    前記記憶された複数のフレーム画像の中から予め指定された1枚の指定フレーム画像を選択し、該指定フレーム画像で検出される特徴と前記対象物体の予め登録された特徴とを対応させ、前記撮像装置の位置姿勢を導出する初期化手段と、
    前記指定フレーム画像に続くフレーム画像を、前記記憶手段が記憶した前記複数のフレーム画像の中から、該フレーム画像のフレームレートの値に基づいて予め決定されたフレーム数毎に順次選択し、前記選択したフレームに先行するフレーム画像と現在選択しているフレームを用いてオプティカルフローの変化を算出し、該オプティカルフローの算出した値が所定の閾値以上である場合に、前記先行するフレーム画像における前記対象物体の特徴を前記現在選択しているフレーム画像の前記対象物体の特徴に対応させ、前記撮像装置の位置姿勢を計測する計測処理手段と、
    前記計測処理手段により計測された前記撮像装置の位置姿勢の値が所定の範囲に入っているか否かを判定する判定手段と、
    前記撮像装置の位置姿勢の値が前記所定の範囲に入っていないと前記判定手段が判定した場合、現在選択しているフレーム画像を用いて初期化させるよう前記初期化手段を制御する制御手段と
    を備えることを特徴とする情報処理装置。
  5. 前記撮像装置はヘッドマウントディスプレイに装着された撮像装置であることを特徴とする請求項1乃至4のいずれか1項に記載の情報処理装置。
  6. 前記特徴は、エッジまたは点であることを特徴とする請求項1乃至5のいずれか1項に記載の情報処理装置。
  7. 対象物体を撮像する撮像装置から複数のフレーム画像を取得する入力工程と、
    前記入力工程により取得された複数のフレーム画像を記憶する記憶工程と、
    前記記憶された複数のフレーム画像の中から予め指定された1枚の指定フレーム画像を選択し、該指定フレーム画像で検出される特徴と前記対象物体の予め登録された特徴とを対応させ、前記撮像装置の位置姿勢を導出する初期化工程と、
    前記指定フレーム画像に続くフレーム画像を、前記記憶された前記複数のフレーム画像の中から、該フレーム画像のフレームレートの値に基づいて予め決定されたフレーム数毎に順次選択し、前記選択したフレームに先行するフレーム画像における前記対象物体の特徴を現在選択しているフレーム画像の前記対象物体の特徴に対応させ、前記撮像装置の位置姿勢を計測する計測処理工程と、
    前記計測処理工程計測した前記撮像装置の位置姿勢の値が所定の範囲に入っているか否かを判定する判定工程と、
    前記撮像装置の位置姿勢の値が前記所定の範囲に入っていないと前記判定工程判定された場合、現在選択しているフレーム画像を用いて初期化させるよう前記初期化工程を制御する制御工程と
    有することを特徴とする情報処理装置の制御方法。
  8. 対象物体を撮像する撮像装置から複数のフレーム画像を取得する入力工程と、
    前記入力工程により取得された複数のフレーム画像を記憶する記憶工程と、
    前記記憶された複数のフレーム画像の中から予め指定された1枚の指定フレーム画像を選択し、該指定フレーム画像で検出される特徴と前記対象物体の予め登録された特徴とを対応させ、前記撮像装置の位置姿勢を導出する初期化工程と、
    前記指定フレーム画像に続くフレーム画像を、前記記憶された前記複数のフレーム画像の中から、該フレーム画像のフレームレートの値に基づいて予め決定されたフレーム数毎に順次選択し、前記選択したフレーム画像に先行するフレーム画像における前記対象物体の特徴を現在選択しているフレーム画像の前記対象物体の特徴に対応させ、前記撮像装置の位置姿勢を計測する計測処理工程と、
    前記計測処理工程で計測した前記撮像装置の位置姿勢の値が所定の範囲に入っているか否かを判定する判定工程と、
    前記撮像装置の位置姿勢の値が前記所定の範囲に入っていないと前記判定工程で判定された場合、前記計測処理工程において、前記現在選択しているフレーム画像のフレームから予め設定した数だけ跳び越えたフレーム画像を用いて前記撮像装置の位置姿勢の変化を再計測するように制御する制御工程と
    を有することを特徴とする情報処理装置の制御方法。
  9. 対象物体を撮像する撮像装置から複数のフレーム画像を取得する入力工程と、
    前記撮像装置の姿勢データを検出する姿勢センサから該姿勢データを前記複数のフレーム画像に対応して取得する姿勢取得工程と、
    前記複数のフレーム画像に対応して取得された複数の前記姿勢データと前記取得された複数のフレーム画像とを記憶する記憶工程と、
    前記複数のフレーム画像の中から予め指定された1枚の指定フレーム画像を選択し、該指定フレーム画像で検出される特徴と前記対象物体の予め登録された特徴とを対応させ、前記撮像装置の位置姿勢を導出する初期化工程と、
    前記指定フレーム画像に続くフレーム画像を前記記憶された複数のフレーム画像の中から順次選択し、前記選択したフレーム画像に先行するフレーム画像に対応する姿勢データと現在選択しているフレームに対応する姿勢データとを比較し、その姿勢変化が所定の閾値以上である場合に、前記先行するフレーム画像における前記対象物体の特徴を前記現在選択しているフレーム画像の前記対象物体の特徴に対応させ、前記撮像装置の位置姿勢を計測する計測処理工程と、
    前記計測処理工程により計測された前記撮像装置の位置姿勢の値が所定の範囲に入っているか否かを判定する判定工程と、
    前記撮像装置の位置姿勢の値が前記所定の範囲に入っていないと前記判定工程で判定された場合、現在選択しているフレーム画像を用いて初期化させるよう前記初期化工程での処理を制御する制御工程と
    を有することを特徴とする情報処理装置の制御方法。
  10. 対象物体を撮像する撮像装置から複数のフレーム画像を取得する入力工程と、
    前記入力工程により取得された複数のフレーム画像を記憶する記憶工程と、
    前記記憶された複数のフレーム画像の中から予め指定された1枚の指定フレーム画像を選択し、該指定フレーム画像で検出される特徴と前記対象物体の予め登録された特徴とを対応させ、前記撮像装置の位置姿勢を導出する初期化工程と、
    前記指定フレーム画像に続くフレーム画像を、前記記憶された前記複数のフレーム画像の中から、該フレーム画像のフレームレートの値に基づいて予め決定されたフレーム数毎に順次選択し、前記選択したフレームに先行するフレーム画像と現在選択しているフレームを用いてオプティカルフローの変化を算出し、該オプティカルフローの算出した値が所定の閾値以上である場合に、前記先行するフレーム画像における前記対象物体の特徴を前記現在選択しているフレーム画像の前記対象物体の特徴に対応させ、前記撮像装置の位置姿勢を計測する計測処理工程と、
    前記計測処理工程により計測された前記撮像装置の位置姿勢の値が所定の範囲に入っているか否かを判定する判定工程と、
    前記撮像装置の位置姿勢の値が前記所定の範囲に入っていないと前記判定工程で判定された場合、現在選択しているフレーム画像を用いて初期化させるよう前記初期化工程での処理を制御する制御工程と
    を有することを特徴とする情報処理装置の制御方法。
  11. コンピュータに、請求項7乃至10の何れか1項に記載の情報処理装置の制御方法を実行させるためのコンピュータプログラム。
JP2010091828A 2009-04-30 2010-04-12 情報処理装置およびその制御方法 Expired - Fee Related JP5388932B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2010091828A JP5388932B2 (ja) 2009-04-30 2010-04-12 情報処理装置およびその制御方法
US12/763,672 US8823779B2 (en) 2009-04-30 2010-04-20 Information processing apparatus and control method thereof

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2009111497 2009-04-30
JP2009111497 2009-04-30
JP2010091828A JP5388932B2 (ja) 2009-04-30 2010-04-12 情報処理装置およびその制御方法

Publications (2)

Publication Number Publication Date
JP2010279023A JP2010279023A (ja) 2010-12-09
JP5388932B2 true JP5388932B2 (ja) 2014-01-15

Family

ID=43030083

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010091828A Expired - Fee Related JP5388932B2 (ja) 2009-04-30 2010-04-12 情報処理装置およびその制御方法

Country Status (2)

Country Link
US (1) US8823779B2 (ja)
JP (1) JP5388932B2 (ja)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100091094A1 (en) * 2008-10-14 2010-04-15 Marek Sekowski Mechanism for Directing a Three-Dimensional Camera System
JP5290864B2 (ja) * 2009-05-18 2013-09-18 キヤノン株式会社 位置姿勢推定装置及び方法
JP5567908B2 (ja) * 2009-06-24 2014-08-06 キヤノン株式会社 3次元計測装置、その計測方法及びプログラム
JP5393318B2 (ja) * 2009-07-28 2014-01-22 キヤノン株式会社 位置姿勢計測方法及び装置
EP2423873B1 (en) * 2010-08-25 2013-12-11 Lakeside Labs GmbH Apparatus and Method for Generating an Overview Image of a Plurality of Images Using a Reference Plane
JP5709440B2 (ja) 2010-08-31 2015-04-30 キヤノン株式会社 情報処理装置、情報処理方法
JP5627439B2 (ja) * 2010-12-15 2014-11-19 キヤノン株式会社 特徴検出装置、特徴検出方法、およびそのプログラム
US20120176474A1 (en) * 2011-01-10 2012-07-12 John Norvold Border Rotational adjustment for stereo viewing
US9513490B2 (en) * 2011-01-10 2016-12-06 Eastman Kodak Company Three channel delivery of stereo images
US8711206B2 (en) * 2011-01-31 2014-04-29 Microsoft Corporation Mobile camera localization using depth maps
US8942917B2 (en) 2011-02-14 2015-01-27 Microsoft Corporation Change invariant scene recognition by an agent
CN102252612B (zh) * 2011-06-14 2013-06-12 北京林业大学 一种基于高程等值线法量测树冠体积的方法
US9582896B2 (en) 2011-09-02 2017-02-28 Qualcomm Incorporated Line tracking with automatic model initialization by graph matching and cycle detection
JP5754813B2 (ja) * 2012-01-10 2015-07-29 Kddi株式会社 画像中の特徴点を検出する特徴点検出プログラム、画像処理装置及び方法
CN104541290A (zh) * 2012-07-23 2015-04-22 Metaio有限公司 提供图像特征描述符的方法
CN102905147A (zh) * 2012-09-03 2013-01-30 上海立体数码科技发展有限公司 立体图像校正方法及装置
US9857470B2 (en) 2012-12-28 2018-01-02 Microsoft Technology Licensing, Llc Using photometric stereo for 3D environment modeling
US9940553B2 (en) 2013-02-22 2018-04-10 Microsoft Technology Licensing, Llc Camera/object pose from predicted coordinates
JP6154759B2 (ja) * 2014-02-07 2017-06-28 日本電信電話株式会社 カメラパラメータ推定装置、カメラパラメータ推定方法及びカメラパラメータ推定プログラム
US10260862B2 (en) * 2015-11-02 2019-04-16 Mitsubishi Electric Research Laboratories, Inc. Pose estimation using sensors
JP2018014579A (ja) * 2016-07-20 2018-01-25 株式会社日立製作所 カメラトラッキング装置および方法
JP2020098575A (ja) * 2018-12-13 2020-06-25 富士通株式会社 画像処理装置、画像処理方法、及び画像処理プログラム
JP2019192299A (ja) * 2019-07-26 2019-10-31 日本電信電話株式会社 カメラ情報修正装置、カメラ情報修正方法、及びカメラ情報修正プログラム
US11580833B2 (en) * 2020-03-24 2023-02-14 Object Video Labs, LLC Camera detection of human activity with co-occurrence

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6571024B1 (en) * 1999-06-18 2003-05-27 Sarnoff Corporation Method and apparatus for multi-view three dimensional estimation
JP2002334338A (ja) * 2001-05-09 2002-11-22 National Institute Of Advanced Industrial & Technology 物体追跡装置及び物体追跡方法並びに記録媒体
JP3796449B2 (ja) 2002-01-31 2006-07-12 キヤノン株式会社 位置姿勢決定方法および装置並びにコンピュータプログラム
JP2004108836A (ja) 2002-09-13 2004-04-08 Sumitomo Denko Systems Kk 撮像装置の方位角計算方法及び装置、撮像装置の姿勢検出装置、撮像装置の傾きセンサ、コンピュータプログラム、並びに三次元モデル構成装置
JP4537104B2 (ja) 2004-03-31 2010-09-01 キヤノン株式会社 マーカ検出方法、マーカ検出装置、位置姿勢推定方法、及び複合現実空間提示方法
US7868904B2 (en) 2005-04-01 2011-01-11 Canon Kabushiki Kaisha Image processing method and image processing apparatus
JP4914019B2 (ja) 2005-04-06 2012-04-11 キヤノン株式会社 位置姿勢計測方法及び装置
JP5063023B2 (ja) 2006-03-31 2012-10-31 キヤノン株式会社 位置姿勢補正装置、位置姿勢補正方法
JP4757142B2 (ja) * 2006-08-10 2011-08-24 キヤノン株式会社 撮影環境校正方法及び情報処理装置
FR2911707B1 (fr) * 2007-01-22 2009-07-10 Total Immersion Sa Procede et dispositifs de realite augmentee utilisant un suivi automatique, en temps reel, d'objets geometriques planaires textures, sans marqueur, dans un flux video.
JP4952920B2 (ja) * 2007-06-04 2012-06-13 カシオ計算機株式会社 被写体判定装置、被写体判定方法及びそのプログラム
JP5058686B2 (ja) * 2007-06-14 2012-10-24 キヤノン株式会社 情報処理方法及び情報処理装置
JP4956456B2 (ja) 2008-02-05 2012-06-20 キヤノン株式会社 画像処理装置、画像処理方法
JP5111210B2 (ja) 2008-04-09 2013-01-09 キヤノン株式会社 画像処理装置、画像処理方法
US20100045701A1 (en) * 2008-08-22 2010-02-25 Cybernet Systems Corporation Automatic mapping of augmented reality fiducials
JP2010134649A (ja) 2008-12-03 2010-06-17 Canon Inc 情報処理装置、その処理方法及びプログラム

Also Published As

Publication number Publication date
JP2010279023A (ja) 2010-12-09
US20100277572A1 (en) 2010-11-04
US8823779B2 (en) 2014-09-02

Similar Documents

Publication Publication Date Title
JP5388932B2 (ja) 情報処理装置およびその制御方法
JP4593968B2 (ja) 位置姿勢計測方法および装置
JP6789624B2 (ja) 情報処理装置、情報処理方法
CN108780586B (zh) 图像处理方法、显示设备和检查***
JP5058686B2 (ja) 情報処理方法及び情報処理装置
JP4136859B2 (ja) 位置姿勢計測方法
US10930008B2 (en) Information processing apparatus, information processing method, and program for deriving a position orientation of an image pickup apparatus using features detected from an image
JP4898464B2 (ja) 情報処理装置および方法
CN111783820A (zh) 图像标注方法和装置
JP2010134649A (ja) 情報処理装置、その処理方法及びプログラム
JP6744747B2 (ja) 情報処理装置およびその制御方法
JP7238060B2 (ja) 情報処理装置及びその制御方法、並びに、プログラム
JP2005326274A (ja) 配置情報推定方法および情報処理装置
EP3644826A1 (en) A wearable eye tracking system with slippage detection and correction
JP6584208B2 (ja) 情報処理装置、情報処理方法、プログラム
JP5774226B2 (ja) 方位センサに基づくホモグラフィ分解の曖昧性の解決
CN110926330A (zh) 图像处理装置和图像处理方法
WO2019013162A1 (ja) 情報処理装置、情報処理方法
JP5693691B2 (ja) 情報処理装置、その処理方法及びプログラム
JP2008070319A (ja) 物体計測装置および方法
JP5726024B2 (ja) 情報処理方法および装置
CN112200917A (zh) 一种高精度增强现实方法及***
JP4926598B2 (ja) 情報処理方法、情報処理装置
JP2021009557A (ja) 情報処理装置、情報処理方法、及びプログラム
JP6810442B2 (ja) カメラアセンブリ、そのカメラアセンブリを用いる手指形状検出システム、そのカメラアセンブリを用いる手指形状検出方法、その検出方法を実施するプログラム、及び、そのプログラムの記憶媒体

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120416

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130425

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130507

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130702

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20131008

LAPS Cancellation because of no payment of annual fees