JP2010267231A - 位置姿勢推定装置及び方法 - Google Patents

位置姿勢推定装置及び方法 Download PDF

Info

Publication number
JP2010267231A
JP2010267231A JP2009120391A JP2009120391A JP2010267231A JP 2010267231 A JP2010267231 A JP 2010267231A JP 2009120391 A JP2009120391 A JP 2009120391A JP 2009120391 A JP2009120391 A JP 2009120391A JP 2010267231 A JP2010267231 A JP 2010267231A
Authority
JP
Japan
Prior art keywords
image
orientation
dimensional model
target object
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.)
Granted
Application number
JP2009120391A
Other languages
English (en)
Other versions
JP5290864B2 (ja
Inventor
Keisuke Tateno
圭祐 立野
Daisuke Kotake
大輔 小竹
Shinji Uchiyama
晋二 内山
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 JP2009120391A priority Critical patent/JP5290864B2/ja
Priority to US12/778,385 priority patent/US20100289797A1/en
Publication of JP2010267231A publication Critical patent/JP2010267231A/ja
Application granted granted Critical
Publication of JP5290864B2 publication Critical patent/JP5290864B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/13Edge detection
    • 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
    • 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/30108Industrial image inspection
    • G06T2207/30164Workpiece; Machine component

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computer Graphics (AREA)
  • Geometry (AREA)
  • Software Systems (AREA)
  • Image Analysis (AREA)
  • Image Processing (AREA)
  • Processing Or Creating Images (AREA)

Abstract

【課題】実環境中に光源変化が発生した場合や、対象物体の姿勢変化による見えの変化が発生した場合でも、安定的な位置姿勢推定を実現可能とする。
【解決手段】位置姿勢推定装置は、撮像装置によって観察対象物体を撮像して得られた実写画像と、前記観察対象物体の形状及び表面情報を表す3次元モデルデータと撮像装置の位置姿勢情報とに基づいて3次元モデルを画像平面上に投影することにより生成された描画画像との対応を検出することにより、撮像装置と観察対象物体の相対的な位置姿勢を算出する。そして、算出された位置姿勢に基づいて実写画像における観察対象物体の画像情報を当該3次元モデルデータの表面情報に対応付けることにより、その表面情報が更新される。
【選択図】図1

Description

本発明は、観察対象物体の形状を表す3次元モデルデータと撮像装置が撮像した観察対象物体の撮像画像を利用して、撮像装置と観察対象物体との相対的な位置姿勢を計測する位置姿勢計測技術に関するものである。
現実空間を撮像するカメラなどの撮像装置を用いて、観察対象物体と上記観察対象物体を撮像する撮像装置との相対的位置姿勢を計測する技術が提案されている。このような位置姿勢の計測技術は、現実空間と仮想空間を融合表示する複合現実感システムや、ロボットの位置姿勢計測において、非常に有用な技術である。この位置姿勢計測技術は、観察する対象物体が事前にわかっている場合には、その物体の情報と実際の映像との比較・照合によって位置姿勢を推定する問題となる。
その方策として、物体の形状および表面情報(色・模様など)を表す3次元モデルをCG描画することで、観察するカメラとの相対的な位置姿勢を推定する手法が非特許文献1に記載されている。その基本的なアプローチは、3次元モデルをCG描画して得られる描画画像と実物体を撮影した実写画像の二つの画像が整合するようにカメラの位置姿勢を修正・最適化する方法である。
具体的には、まず、(1)前フレームでのカメラの位置及び姿勢(位置姿勢ともいう)及び予め校正済みのカメラの固有パラメータに基づいて3次元モデルデータをCG描画する。これにより、3次元モデルデータの表面情報(表面上の輝度値)が画像平面上に投影された画像が得られる。この画像を描画画像と呼称する。(2)結果として得られた描画画像からエッジを検出する。ここで、画像上で輝度が不連続に変化する領域をエッジと呼称する。(3)描画画像でエッジが検出された位置の近傍において、撮像画像等の実写画像からエッジ検出を行う。この処理により、描画画像中のエッジが実写画像中のどのエッジに対応するかを探索する。(4)前ステップの対応探索において、描画画像のエッジに対応する実写画像のエッジが複数検出された場合、エッジの類似度を利用して、対応するエッジを選別する。エッジの類似度は、両画像中でのエッジ周辺の輝度分布を正規化相互相関により比較することで求める。この処理により、対応候補として検出された実写画像のエッジの中で、もっともエッジのアピアランス(ここでは、エッジ周辺の輝度分布)が近いエッジを対応エッジとして選択する。(5)描画画像から検出されたエッジと、それに対応する実写画像のエッジとが、画像上での距離が最小になるように撮像装置の位置及び姿勢の補正値を求め、撮像装置の位置及び姿勢を更新する。この処理を前述の距離の和が収束するまで繰り返すことにより、最終的な撮像装置の位置及び姿勢を得る。
前述の3次元モデルに基づく位置姿勢推定方法では、描画画像中のエッジと実写画像中のエッジとの対応付けに基づいて位置姿勢を推定しているため、エッジの対応付けの正確さが位置姿勢推定の精度に大きな影響を与える。前述の手法では、両画像から抽出されるエッジ周辺の輝度分布を比較し、両画像間で最も類似するエッジを選択することでエッジの対応付けを行っている。しかし、位置姿勢推定に利用する3次元モデルデータの表面情報が、実写画像中に撮像される対象物体と大きく異なる場合には、その描画画像と実写画像から抽出した輝度分布を比較したとしても、正しくエッジの対応付けを行うことは困難である。そこで、前述の手法では、3次元モデルのテクスチャを実写画像からあらかじめ取得することで、実写画像中に撮像される対象物体のアピアランスに近い3次元モデルデータを生成している。また、非特許文献2に記載された手法では、実環境中の光源環境をあらかじめ取得しておき、実光源環境に即した光源を設定してテクスチャ付き3次元モデルを描画することで、実写画像中に撮像される対象物体に近いアピアランスの描画画像を生成している。
また、3次元モデルデータの表面情報を利用する方策と異なる方策として、エッジ周辺の輝度分布を過去フレームの実写画像から時系列的に取得・更新する手法が非特許文献3に記載されている。この手法では、3次元モデルデータの描画は行わず、画像平面に投影した3次元モデル中のエッジと実写画像中のエッジとを直接対応づけることで位置姿勢計算を行う。このエッジの対応付けに、3次元モデル中のエッジと実写画像中のエッジとの対応が既に求まっている前フレームの実写画像から取得した輝度分布を利用する。3次元モデル中のエッジの輝度分布を、前フレームの実写画像中において対応するエッジの輝度分布から取得・保持し、現フレームの実写画像との対応付けに用いる。これにより、実写画像中に撮像される対象物体のアピアランスに即した輝度分布を用いた精度の高い対応付けが可能となる。
(以下のリストにおいて、非特許文献4〜6は「発明を実施するための最良の形態」の欄で引用されている)
G. Reitmayr and T. W. Drummond,"Going out: robust model-based tracking for outdoor augmented reality," Proc.The 5thIEEE/ACM International Symposium on Mixed and Augmented Reality(ISMAR06),pp.109-118 2006. 森谷貴行, 日浦慎作, 佐藤 宏介, "多視点画像とCG画像の比較に基づく動物体の運動計測,"電子情報通信学会論文誌,Vol.J88-D-II, No.5, pp. 876-885(Mar. 2005). H. Wuest, F. Vial, and D. Stricker,"Adaptive line tracking with multiple hypotheses for augmented reality," Proc.The Fourth Int’l Symp. on Mixed and Augmented Reality(ISMAR05), pp.62-69, 2005. H. Wuest, F. Wientapper, D. Stricker,W. G. Kropatsch, "Adaptable model-based tracking using analysis-by-synthesis techniques,"Computer analysis of images and patterns. 12th international conference, CAIP2007, pp.20-27, 2007. K. Satoh, S. Uchiyama, H.Yamamoto, and H. Tamura, "Robust vision-based registration utilizing bird’s-eyeview with user’s view," Proc. The 2ndIEEE/ACM International Symposium on Mixedand Augmented Reality (ISMAR03),pp.46-55,2003. I. Skrypnyk and D. G. Lowe, "Scenemodelling, recognition and tracking with invariant image features," Proc. The3rd IEEE/ACM International Symposium on Mixed and Augmented Reality (ISMAR04),pp.110-119, 2004.
非特許文献1に記載された手法では、あらかじめ実写画像中に撮像される物体の表面色や模様、光源環境を考慮し、実環境中の観察対象物体と同様の見た目になるように3次元モデルデータが描画される。そして、このような描画画像が実写画像に整合するように位置姿勢を推定している。そのため、実写画像中に撮像される対象物体のアピアランスが、作成された3次元モデルデータと類似する範疇においては、対象物体の位置姿勢を安定的に推定することが可能である。
しかし、例えば、図2に示すように、屋内作業空間においてベルトコンベア上で流れてくる物体の位置姿勢を推定しようとした場合には、照明と物体との相対的な位置関係に応じて、物体のアピアランスは大きく動的に変化することになる。そのため、一定の照明環境下における物体の見えを再現した3次元モデルデータを作成したとしても、移動に伴う光源変化により、実写画像と描画画像との間に不整合が生じ、位置姿勢推定の精度が低下してしまう。また、屋外シーンや屋外光が照射されるシーンなどの、太陽の日内変動や天候変化の影響を受ける場面や、部屋の電気をつける/消す、対象物体の近くに物が置かれるなどの環境中の光源が変化する場面でも同様の課題が発生する。これらの例に示すように、前述の位置姿勢推定手法は、対象物体の光源変化による見えの変化に弱いという課題がある。
これに対し、非特許文献2の方式では、光源の情報を既知として、光源情報に基づいたCG描画により3次元モデルデータの描画画像を生成している。そのため、光源が既知の環境においては、光源環境の相対的な位置変化に対応することは可能である。しかし、撮像装置の移動に伴って相対的に光源が移動する場合など、実際の光源位置が、設定と異なる場合には、対応することが出来ないという課題がある。また、光源位置が未知の場合は、非特許文献1の手法と同様の課題がおきる。
これらの課題に対して、非特許文献3の手法では、過去フレームの実写画像から取得した対象物体の輝度分布を画像平面上1次元ベクトルとして3次元モデル上に保持/更新して、3次元モデルと実写画像との対応付けに利用している。これにより、この手法では、対象物体に光源変化が発生した場合でも、問題なく位置姿勢を推定することが可能である。しかし、実写画像上での観察対象物体の輝度分布は、3次元モデル上で同じ点でも、観察する方向に応じて大きく変化する。そのため、対象物体がフレーム間で大きく姿勢変化した場合には、3次元モデル上で画像平面上1次元ベクトルとして保持している輝度分布と、実写画像中に撮像される観察対象物体の輝度分布とが、大きく異なってしまう。そのため、正確な対応付けを行うことが困難になるという課題が発生する。
以上のように、従来提案されている手法では、対象物体に光源変化が発生した場合には対応できず、また光源変化に対応可能である従来手法では、対象物体の大きな位置姿勢変化による見えの変化に本来的に対応できないという課題があった。
本発明は、以上の課題を鑑みてなされたものであり、実環境中に光源変化が発生した場合や、対象物体の姿勢変化による見えの変化が発生した場合でも、安定的な位置姿勢推定を実現可能とすることを目的とする。
上記の目的を達成するための本発明の一態様による位置姿勢推定装置は、
撮像装置によって観察対象物体を撮像して得られた実写画像を取得する取得手段と、
前記観察対象物体の形状及び表面情報を表す3次元モデルデータを保持する保持手段と、
前記3次元モデルデータと前記撮像装置の位置姿勢情報とに基づいて3次元モデルを画像平面上に投影することにより描画画像を生成する描画手段と、
前記描画手段により生成された描画画像と、前記実写画像における観察対象物体の画像との対応を検出することにより、前記撮像装置と前記観察対象物体の相対的な位置姿勢を算出する算出手段と、
前記算出手段で算出された位置姿勢に基づいて前記実写画像における前記観察対象物体の画像情報を前記保持手段が保持する前記3次元モデルデータの前記表面情報に対応付けることにより、前記表面情報を更新する更新手段とを備える。
また、上記の目的を達成するための本発明の一態様による位置姿勢推定方法は、
取得手段が、撮像装置によって観察対象物体を撮像して得られた実写画像を取得する取得工程と、
描画手段が、保持手段に保持された前記観察対象物体の形状及び表面情報を表す3次元モデルデータと、前記撮像装置の位置姿勢情報とに基づいて3次元モデルを画像平面上に投影することにより描画画像を生成する描画工程と、
算出手段が、前記描画工程により生成された描画画像と、前記実写画像における観察対象物体の画像との対応を検出することにより、前記撮像装置と前記観察対象物体の相対的な位置姿勢を算出する算出工程と、
更新手段が、前記算出工程で算出された位置姿勢に基づいて前記実写画像における前記観察対象物体の画像情報を前記保持手段が保持する前記3次元モデルデータの前記表面情報に対応付けることにより、前記表面情報を更新する更新工程とを有する。
本発明によれば、実写画像中に撮像される対象物体の画像情報に基づいて3次元モデルの表面情報が更新されるので、3次元モデルの表面情報に基づく位置姿勢推定において、光源変化や対象物体の位置姿勢の大きな変化に対する頑健さが提供される。
第一の実施形態における位置姿勢推定装置の構成を示す図。 対象物体と光源環境との相対的な位置姿勢変化に伴う対象物体の光源変化を示す図。 第一の実施形態における3次元モデルデータを利用した位置姿勢の推定方法の処理手順を示すフローチャート。 第一の実施形態における、位置姿勢推定のためのモデル特徴抽出の詳細な処理手順を示すフローチャート。 第一の実施形態における、描画画像特徴と実写画像特徴との対応付けにおける詳細な処理手順を示すフローチャート。 第一の実施形態における、3次元モデルデータの表面情報の実写画像に基づく更新における詳細な処理手順を示すフローチャート。 第二の実施形態における位置姿勢推定装置2の構成を示す図。 第二の実施形態における3次元モデルデータを利用した位置姿勢の推定方法の処理手順を示すフローチャートである。
以下、添付図面を参照して本発明の好適な実施形態について詳細に説明する。
[第一の実施形態](エッジを利用した位置姿勢推定におけるアピアランス更新)
本実施形態では、本発明の画像処理装置及びその方法を、3次元モデルの描画結果および実写画像から抽出したエッジの対応に基づいて位置姿勢推定する手法に適用した場合について、説明する。
図1は、観察対象物体の形状を表す3次元モデルデータ10を利用して位置姿勢推定を行う位置姿勢推定装置1の構成を示している。位置姿勢推定装置1において、3次元モデル保存部110は、3次元モデルデータ10を保存する。画像取得部120は撮像装置100からの撮像画像を実写画像として取得する。3次元モデル描画部130は、3次元モデル保存部110に保存されている3次元モデルデータ10を画像平面上に投影/描画して描画画像を生成する。モデル特徴抽出部140は3次元モデル描画部130が描画した描画画像から、その輝度および/または色などに基づいて特徴(例えばエッジ特徴、点特徴等)を抽出する。画像特徴抽出部150は、画像取得部120が取得した実写画像における観察対象物体の画像からその輝度および/または色などに基づいて特徴(例えばエッジ特徴、点特徴等)を抽出する。特徴対応付け部160は、モデル特徴抽出部140が抽出した特徴と、画像特徴抽出部150が抽出した特徴とを対応付ける。位置姿勢算出部170は、特徴対応付け部160により対応付けられた特徴領域に基づいて撮像装置100の位置姿勢を算出する。モデル更新部180は、位置姿勢算出部170で算出された位置姿勢に基づいて3次元モデルデータと実写画像とを対応付け、3次元モデルデータ10が有する表面情報(テクスチャ等)を更新する。撮像装置100は、画像取得部120に接続されている。
以上の構成により、位置姿勢推定装置1は、3次元モデル保存部110に保存されている観察対象物体の形状を表す3次元モデルデータ10をもとに、実写画像中に撮像される観察対象物体の位置および姿勢を計測する。なお、本実施形態において、位置姿勢推定装置1が適用できる条件としては、3次元モデル保存部110に保存された3次元モデルデータ10が、現実に撮像される観察対象物体の形状に即していることを前提としている。
次に、位置姿勢推定装置1を構成する各部について詳細に説明する。3次元モデル保存部110は、3次元モデルデータ10を記憶する。3次元モデルデータ10は、位置姿勢算出の基準となる、観察対象物体の3次元的な幾何情報(頂点座標や面情報)および表面情報(色や模様)を表すモデルである。3次元モデルデータ10の形式は、対象物体の形状を表す幾何情報を保持し、かつ、対象物体の幾何情報に対応する表面情報が保持することが出来る限り、いずれの形式でもよい。例えば、頂点と面とで構成されたメッシュモデルにより幾何形状を表し、テクスチャ画像をUVマッピングでメッシュモデルに貼り付けることで表面情報を表してもよい。或いは、NURBS曲面により幾何形状を表し、テクスチャ画像を球面マッピングでNURBS曲面に貼り付けることで表面情報を表してもよい。本実施形態では、頂点情報および各頂点を結んで構成される面の情報と、テクスチャ画像および頂点情報に対応するテクスチャ画像座標の情報とを含むCADモデルを3次元モデルデータ10として利用する。
画像取得部120は、撮像装置100によって撮像された撮像画像を実写画像として位置姿勢推定装置1に入力する。画像取得部120は、撮像装置の出力がNTSCなどのアナログ出力であればアナログビデオキャプチャボードによって実現される。また撮像装置の出力がIEEE1394などのデジタル出力であれば、例えばIEEE1394インタフェースボードによって実現される。また、予め記憶装置(不図示)に記憶してある静止画像や動画像のデジタルデータを読み出してもよい。したがって、以下では画像取得部120が取得する画像を実写画像とも記載する。
3次元モデル描画部130では、3次元モデル保存部110において、保存された3次元モデルデータ10を描画する。3次元モデル描画部130において描画に利用するグラフィックライブラリは、例えば、OpenGLやDirectXなどの広く利用されているグラフィックライブラリでも、独自に開発したグラフィックライブラリでもよい。すなわち、3次元モデル保存部110に保存されたモデル形式を画像平面上に投影することができる限り、いずれの方式を用いても良い。本実施形態ではグラフィックライブラリとしてOpenGLを利用する。
モデル特徴抽出部140は、3次元モデル描画部130が生成した描画画像から、撮影画像(実写画像)に3次元モデルを当てはめるための特徴を抽出する。本実施形態では、モデル特徴抽出部140においては、3次元モデル描画部130が3次元モデルと撮像装置100の位置姿勢に基づいて描画した描画画像から、エッジ情報を抽出する。モデル(描画画像)からの特徴抽出手法については、後述する。
画像特徴抽出部150は、画像取得部120によって取得された実写画像上において、撮像装置100の位置及び姿勢を算出するのに用いられる画像特徴を検出する。本実施形態では、画像特徴抽出部150は撮像画像上のエッジの検出を行う。エッジの検出方法については後述する。
特徴対応付け部160では、モデル特徴抽出部140が抽出した特徴と画像特徴抽出部150が抽出した特徴とを、描画画像と実写画像中から抽出される輝度分布を利用して対応付ける。特徴の対応付け方法については後述する。
位置姿勢算出部170では、特徴対応付け部160によって対応付けられた特徴対応付け情報に基づき、3次元モデルデータ10を基準とした座標系における撮像装置100の位置及び姿勢を算出する。
モデル更新部180では、位置姿勢算出部170により算出された位置姿勢情報と画像取得部120により取得された実写画像とに基づき、3次元モデルデータ10の表面情報を取得・更新する。3次元モデルデータの更新方法について後述する。
なお、3次元モデルデータ10を利用した位置姿勢推定方法は、本実施形態における位置姿勢推定装置1に示される手法に限るものでなく、3次元モデルと実写画像とを当てはめることで位置姿勢推定を行う手法である限り、いずれの手法でもよい。例えば、非特許文献2に開示されている手法を利用しても本発明の本質は損なわれない。
次に、本実施形態における位置姿勢推定方法の処理手順について説明する。図3は、本実施形態における位置姿勢推定方法の処理手順を示すフローチャートである。
まずステップS1010で初期化を行う。ここでは、基準座標系における撮像装置100と観察対象物体との相対的な概略位置姿勢の設定、および、3次元モデルデータの表面情報の初期化を行う。
本実施形態における位置姿勢計測方法は、撮像装置100の概略の位置姿勢を、撮影画像上に撮像される観察対象物体のエッジ情報を利用して逐次更新していく方法である。そのため、位置姿勢計測を開始する前に予め撮像装置100の概略の位置及び姿勢を初期位置及び初期姿勢として与える必要がある。そこで、例えば予め決まった位置及び姿勢を設定しておき、撮像装置100をその位置及び姿勢になるように移動することで初期化を行う。または、画像内で検出するだけで認識可能な人工的な指標を配置し、該指標の各頂点の画像座標と基準座標系における3次元位置との対応から撮像装置の位置姿勢を求めて概略の位置姿勢としてもよい。また、識別性の高い自然特徴点を予め検出してその3次元位置を求めておき、初期化時に画像上で該特徴点を検出し、その画像座標と3次元位置との対応から撮像装置の位置姿勢を求めてもよい。また、非特許文献4のように、3次元モデルの幾何情報から抽出したエッジと画像中のエッジとの比較から撮像装置の位置姿勢を求めてもよい。さらに、磁気式や光学式、超音波式などの6自由度位置姿勢センサによって撮像装置の位置姿勢を計測し、それを概略の位置姿勢としてもよい。人工的な指標や自然特徴点などの画像情報と、前述の6自由度位置姿勢センサや3自由度の姿勢センサ、3自由度の位置センサとを併用して計測される撮像装置100の位置姿勢を用いて初期化してもよい。
また、本実施形態における位置姿勢計測方法は、3次元モデルデータの形状および表面情報に基づいてCG描画した描画結果を利用して位置姿勢を推定する。そのため、3次元モデルデータ10に表面情報が設定されていることが前提である。しかし、表面情報が設定されていない3次元モデルデータ10を利用する場合や、3次元モデルデータ10の表面情報に不適切な情報が設定されている場合もある。そこで、そのような場合は、上述の位置姿勢の初期化処理により位置姿勢が求まった実写画像を利用して、3次元モデルの表面情報を初期化する。具体的には、位置姿勢の初期化処理により求めた位置姿勢を利用し、実写画像に撮像される観察物体の画像情報と、3次元モデルの表面情報との対応関係を算出する。そして、求めた対応関係に基づいて、実写画像の画像情報を3次元モデルの表面情報に反映させることで、3次元モデルの表面情報の初期化を行う。即ち、動的に3次元モデルの表面情報を取得するため、3次元モデルの表面情報にあらかじめ誤った情報が格納されていた場合にも、実環境中の対象物体に即した表面情報を反映させることが可能となる。また、もともと3次元モデルに表面情報が含まれていない場合でも、実写画像から対象物体の画像情報を取得することで、3次元モデルの表面情報に基づく位置姿勢推定を行うことが可能となる。
ステップS1020では、画像取得部120が、撮像装置100が撮像した画像を位置姿勢推定装置1に取り込む。
次にステップS1030において、3次元モデル描画部130は、3次元モデルデータ10をCG描画し、実写画像と比較するための描画画像を得る。最初は、ステップS1010で求めた観察対象物体の概略位置姿勢に基づいて、3次元モデル保存部110に保存された3次元モデルデータ10のCG描画を行う。本実施形態で、描画に利用する射影行列の内部パラメータは、撮像装置100の内部パラメータをあらかじめ計測しておき、実際に用いるカメラと内部パラメータを一致させておく。CG描画とは、ステップS1010で設定した視点の位置姿勢に基づいて、3次元モデル保存部110に保存された3次元モデルデータ10を画像平面上に投影することである。CG描画を行うためには、位置姿勢の設定とともに、射影行列の内部パラメータ(焦点距離や主点位置など)を設定する必要がある。本実施形態では、撮像装置100(カメラ)の内部パラメータをあらかじめ計測しておき、実際に用いるカメラと内部パラメータを一致させておく。また、視点からモデルまでの距離の最大値と最小値を設定しておき、その範囲外のモデルの描画は行わないことで、描画処理の計算コストを低減する。この処理はクリッピングと呼ばれ、一般的に行われている処理である。3次元モデルデータ10のCG描画により、カラーバッファおよびデプスバッファが算出される。ここで、カラーバッファには、画像平面上に投影された3次元モデルデータ10の表面情報(テクスチャ画像)に応じた輝度値が格納される。また、デプスバッファには、画像平面から3次元モデルデータまでの奥行き値が格納される。以後、カラーバッファを3次元モデルデータ10の描画画像と呼称する。3次元モデルデータの描画が終わったら、ステップS1040に進む。
次にステップS1040において、モデル特徴抽出部140は、ステップS1030で生成した描画画像から、実写画像と対応付けるためのエッジ特徴を抽出する。図4は、本実施形態における描画画像のエッジ特徴の検出方法について詳細な処理手順を示すフローチャートである。
まず、ステップS1110では、ステップS1030のCG描画により生成された描画画像に対して、エッジ検出を行う。描画画像に対してエッジ検出することで、輝度が不連続に変化する領域を求めることができる。エッジを検出する手法としては、ここではCannyアルゴリズムを利用するが、画像の画素値が不連続に変化する領域を検出できれば、他の手法でも良く、例えば、sobelフィルタなどのエッジ検出フィルタを利用しても良い。カラーバッファに対してCannyアルゴリズムによるエッジ検出を行うことで、エッジ領域と非エッジ領域に分けられた2値画像が得られる。
次にステップS1120において、ステップS1110で生成された2値化画像について、隣接エッジのラベリングを行い、エッジの連結成分を抽出する。ラベリングは、例えば、ある画素の周囲8画素の中にエッジが存在すれば、同一ラベルを割り当てることにより行う。
次にステップS1130において、ステップS1120で連結成分を抽出したエッジに対して、エッジ素の抽出を行う。ここで、エッジ素とは、3次元座標および方向により表現される、3次元的なエッジを構成する要素をいう。同一ラベルにラベリングされたエッジを画像上で等間隔に分割するように分割点を算出して、この分割点の周辺の極短い連結成分を求めエッジ素を抽出する。本実施形態では、分割点から3pixel離れた連結成分を端点(始点と終点)に設定して、分割点を中心としたエッジ素を抽出する。デプスバッファから抽出したエッジ素は、総数をNとして、各エッジ素をEFi(i=1,2…N)で表す。エッジ素の数Nが多いほど、処理時間が長くなる。そのため、エッジ素の総数が一定になるように、画像上でエッジ素間の間隔を逐次変更しても良い。
次にステップS1140において、ステップS1130で算出されたエッジ素に対して、基準座標系における3次元座標を求める。これには、ステップS1030で生成したデプスバッファを利用する。まず、デプスバッファに格納された奥行き値をカメラ座標系における値に変換する。デプスバッファに格納された値は、ステップS1030のクリッピング処理において設定したクリッピング範囲に応じて0から1の値に正規化されて格納されている。そのため、デプスバッファの奥行き値から、直接基準座標系における3次元座標を求めることはできない。そこで、クリッピング範囲の最小値と最大値を利用して、デプスバッファの値をカメラ座標系における視点からモデルまでの距離の値に変換する。次に、射影行列の内部パラメータを利用して、デプスバッファの画像平面上の2次元座標と、カメラ座標系における奥行き値から、カメラ座標系における3次元座標を求める。そして、カメラ座標系における3次元座標に対して、ステップS1030における3次元モデルデータの描画で用いた位置姿勢変換の逆変換をほどこすことで、基準座標系における3次元座標を求める。以上の処理を各エッジ素EFiに対して行うことで、各エッジ素に対して、基準座標系における3次元座標を求める。また、各エッジ素に対し、ステップS1120で求めたエッジ上で前後に隣接する画素の3次元座標を算出し、それらの差分をとることで、基準座標系における3次元的な方向を求める。
エッジ素EFiの3次元座標と方向の算出が終わったら、ステップS1050に進む。
ステップS1050において、画像特徴抽出部150は、ステップS1040で求めた描画画像中のエッジ素EFi(i=1,2,…,N)に対応する、撮像装置100によって撮像された現フレームの実写画像中のエッジを検出する。エッジの検出は、エッジ素EFiの探索ライン(エッジ素の法線方向の線分)上において、撮影画像上の濃度勾配から極値を算出することにより行う。エッジは、探索ライン上において濃度勾配が極値をとる位置に存在する。探索ライン上で検出されたエッジが一つのみである場合は、そのエッジを対応点とし、その画像座標とエッジ素EFiの3次元座標を保持する。また、探索ライン上で検出されたエッジが複数存在する場合には、複数の点を対応候補として保持する。以上の処理を全てのエッジ素EFiに対して繰り返し、処理が終了すればステップS1050の処理を終了し、ステップS1060に進む。
ステップS1060では、特徴対応付け部160は、対応点が複数存在するエッジ素に関して、最も確からしい対応点を決定する。ステップS1040で求めた描画画像中のエッジ素EFi(i=1,2,…,N)のうちのステップS1050で求めた対応点が複数存在するエッジ素EFj(j=1,2,…,M)に対し、エッジ周辺の輝度分布の比較によりもっとも確からしい対応を求める。ここで、Mは、対応点が複数存在するエッジ素の数である。図5は、本実施形態における対応エッジ選択手法について詳細な処理手順を示すフローチャートである。
まず、ステップS1210において、特徴対応付け部160は、ステップS1030で求めた3次元モデルデータ10の描画画像から、エッジ素EFjのエッジ周辺の輝度分布を取得する。エッジ周辺の輝度分布としては、エッジの法線方向数ピクセルの輝度値を取得しても、エッジ位置から数ピクセル離れた円上の輝度値を取得しても、エッジ位置から数ピクセル離れたエッジ方向と平行方向の輝度値を取得してもよい。また、輝度分布を、輝度値の1次元ベクトル、輝度値のヒストグラム、または、勾配ヒストグラムとして表現してもよい。輝度分布として利用する情報は、描画画像と実写画像の輝度分布の類似度を計算できる限り、いずれの方式でもよい。本実施形態では、エッジ法線方向21ピクセル上の輝度値の1次元ベクトルを、エッジ周辺の輝度分布として取得する。
次に、ステップS1220において、特徴対応付け部160は、エッジ素EFjの対応候補エッジの輝度分布を実写画像から取得する。ステップS1050で求めたエッジ素EFjの対応候補エッジに対して、ステップS1210と同様の処理により、実写画像中のエッジ周辺の輝度分布を取得する。
次に、ステップS1230では、ステップS1210およびステップS1220で求めた両画像の輝度分布を比較し、各エッジ素EFjの対応候補エッジとの類似度を算出する。エッジの類似度には、輝度分布間の差の二乗和(SSD:Sum of square distance)を利用しても、正規化相互相関(NCC:Normalizecross correction)を利用してもよい。輝度分布間の距離が計算できる手法であれば、いずれの手法でもよい。本実施例では、輝度分布間のSSDを要素数で正規化した値を評価値に利用する。
次に、ステップS1240では、ステップS1230で求めた評価値に基づき、各エッジ素EFjに対応するエッジを対応候補エッジの中から選択する。対応候補エッジの中で、ステップS1230で求めた評価値がもっとも高い(=画像上でエッジの見た目が最も近い)エッジを対応エッジとして選択する。以上の処理を、対応点が複数存在する全てのエッジ素EFjに対して繰り返し、全てのエッジ素EFiについて対応点が求まればステップS1060の処理を終了し、ステップS1070に進む。
ステップS1070において、位置姿勢算出部170は、非線形最適化計算を用いて、撮像装置100と観察対象物体との概略の相対的案位置姿勢を反復演算により補正することにより撮像装置100の位置姿勢を算出する。ここで、ステップS1040において検出された描画画像のエッジ素EFiのうち、ステップS1060において対応エッジが求まったエッジ素の総数をLcとする。また、画像の水平方向、垂直方向をそれぞれx軸、y軸とする。また、あるエッジ素の中心点の投影された画像座標を(u0、v0)、エッジ素の直線の画像上での傾きをx軸に対する傾きθと表す。傾きθは、エッジ素端点(始点と終点)の撮影画像上での2次元座標を結んだ直線の傾きとして算出する。エッジ素の直線の画像上での法線ベクトルは(sinθ、−cosθ)となる。また、該エッジ素の対応点の画像座標を(u’、v’)とする。
ここで、点(u、v)を通り、傾きがθである直線の方程式は、以下の数1のように表せる。
Figure 2010267231
エッジ素の撮影画像上での画像座標は撮像装置100の位置及び姿勢により変化する。また、撮像装置100の位置及び姿勢の自由度は6自由度である。ここで撮像装置の位置及び姿勢を表すパラメータをsで表す。sは6次元ベクトルであり、撮像装置の位置を表す3つの要素と、姿勢を表す3つの要素からなる。姿勢を表す3つの要素は、例えばオイラー角による表現や、方向が回転軸を表して大きさが回転角を表す3次元ベクトルなどによって表現される。エッジ素中心点の画像座標(u、v)は(u、v)の近傍で1次のテイラー展開によって数2のように近似できる。
Figure 2010267231
u、vの偏微分∂u/∂si、∂v/∂siの導出方法は例えば非特許文献5に開示されるように広く知られているのでここではその詳細は述べない。数2を数1に代入することにより、数3が得られる。
Figure 2010267231
ここで、数3に示す直線が該エッジ素の対応点の画像座標(u’、v’)を通過するように、撮像装置の位置及び姿勢sの補正値Δsを算出する。r0=u0sinθ−v0cosθ(定数)、d=u'sinθ−v'cosθ(定数)とすると、以下の数4が得られる。
Figure 2010267231
数4はLc個のエッジ素について成り立つため、数5のようなΔsに対する線形連立方程式が成り立つ。
Figure 2010267231
ここで数5を数6のように簡潔に表す。
Figure 2010267231
数6をもとにGauss−Newton法などによって、行列Jの一般化逆行列(JT・J)-1を用いて補正値Δsが求められる。しかしながら、エッジの検出には誤検出が多いので、次に述べるようなロバスト推定手法を用いる。一般に、誤検出されたエッジに対応するエッジ素では誤差d−rが大きくなる。そのため数5、数6の連立方程式に対する寄与度が大きくなり、その結果得られるΔsの精度が低下してしまう。そこで、誤差d−rが大きいエッジ素のデータには小さな重みを与え、誤差d−rが小さいエッジ素のデータには大きな重みを与える。重みは例えば数7Aに示すようなTukeyの関数により与える。
Figure 2010267231
数7においてcは定数である。なお、重みを与える関数はTukeyの関数である必要はなく、例えば次式の数7B、
Figure 2010267231
で示されるようなHuberの関数など、誤差d−rが大きいエッジ素には小さな重みを与え、誤差d−rが小さいエッジ素には大きな重みを与える関数であればなんでもよい。
エッジ素EFiに対応する重みをwiとする。ここで数8のように重み行列Wを定義する。
Figure 2010267231
重み行列Wは、対角成分以外はすべて0のLc×Lc正方行列であり、対角成分には重みwiが入る。この重み行列Wを用いて、数6を数9のように変形する。
Figure 2010267231
数10のように数9を解くことにより補正値Δsを求める。
Figure 2010267231
これにより得られた補正値Δsを用いて、撮像装置100の位置及び姿勢を更新する。次に、撮像装置の位置及び姿勢の反復演算が収束しているかどうかを判定する。補正値Δsが十分に小さかったり、誤差r−dの総和が十分小さい、誤差r−dの総和が変化しないといった場合には、撮像装置の位置及び姿勢の計算が収束したと判定する。収束していないと判定された場合には、撮像装置100の更新された位置及び姿勢を用いて再度線分の傾きθ、r0、d及びu、vの偏微分を計算し直し、数10より再度補正値Δsを求め直す。なお、ここでは非線形最適化手法としてGauss−Newton法を用いた。しかしながら、Newton−Raphson法、Levenberg−Marquardt法、最急降下法、共役勾配法などのその他の非線形最適化手法を用いてもよい。以上、ステップS1070における撮像装置の位置姿勢算出方法について説明した。
次にステップS1080のアピアランス更新の処理を説明する。モデル更新部180は、ステップS1020で入力した実写画像から取得した観察対象物体の画像情報を、ステップS1070で算出した位置姿勢情報に基づいて3次元モデルデータ10の表面情報(テクスチャ画像)に反映させる。図6は、本実施形態における物体アピアランスの更新手法について、詳細な処理手順を示すフローチャートである。
まず、ステップS1310において、モデル更新部180は、ステップS1070で求めた観察対象物体の位置姿勢に基づいて、3次元モデルデータ10の頂点情報を画像平面上に投影する。この処理により3次元モデルデータ10の頂点座標に対応する実写画像上での2次元座標が求まる。
次に、ステップS1320において、モデル更新部180は、3次元モデルデータ10のテクスチャ画像と実写画像との対応関係を算出する。本実施形態においては、3次元モデルデータ10の頂点座標に対応するテクスチャ画像上での2次元座標が既に与えられている。そこで、この3次元モデルデータ10とテクスチャ画像との対応情報と、ステップS1310で求めた3次元モデルデータ10と実写画像間の対応情報から、実写画像とテクスチャ画像間の対応を算出する。
次に、ステップS1330において、モデル更新部180は、ステップS1320で求めた、実写画像とテクスチャ画像間の対応に基づき、実写画像の輝度情報をテクスチャ画像にマッピングし、3次元モデルデータ10の表面情報を更新する。更新においては、テクスチャ画像上の輝度値と、実写画像の輝度値を一定のウェイト値に従って、ブレンディングさせる。これは、ステップS1070で求めた位置姿勢情報が不正確な場合に、テクスチャ画像に本来対応しないはずの輝度値が反映されることを防ぐために行われる。ウェイト値により、実写画像の輝度値を時系列的にゆっくりと反映させることで、突発的な位置姿勢推定の失敗の影響を低減することが出来る。ウェイト値は、位置姿勢推定がどの程度の頻度で失敗するかという位置姿勢推定精度に応じてあらかじめ設定しておく。
以上の処理により、実写画像上に撮像される対象物体の画像情報に基づいて、3次元モデルデータの表面情報を更新する。全ての更新処理が終わったら、ステップ1090に進む。
ステップS1090では、位置姿勢算出を終了する入力がなされたかどうかを判定し、入力された場合には終了し、入力されなかった場合にはステップS1020に戻り、新たな画像を取得して再度位置姿勢算出を行う。
以上述べたように、本実施形態では、実写画像中に撮像される対象物体の画像情報を3次元モデルの表面情報として保持・更新することにより、実写画像に即した表面情報に基づく位置姿勢推定が可能となる。これにより、実環境中で光源が変化した場合でも、動的に対象物体の画像情報を3次元モデルに反映することが可能となり、光源変化に頑健な物***置姿勢推定が可能となる。
[変形例1−1] 幾何情報および表面情報の保持方法のバリエーション
第一の実施形態では、3次元モデルの表面情報をテクスチャ画像として表し、実写画像から取得した画像情報をテクスチャ画像上に保持していたが、これに限るものでない。3次元モデルデータは、対象物体の形状を表す幾何情報を保持し、同時に幾何情報に対応する表面情報を保持できる方式であれば、いずれの形式でも良い。例えば、多数の点および多数の面により構成された細かいメッシュモデルを利用し、それらの頂点の色として、画像情報を保持する方式でもよい。また、3次元モデルの幾何情報を、陰関数多項式で面の情報が記述されたIPモデルや、n次元関数により面の情報が記述されたメタボールなどの関数表現を用いて表現しても良い。このような場合、幾何情報に対応するような表面情報を表現するためには、例えば、テクスチャ画像の球面マッピングなどを用いればよい。
[変形例1−2] 点特徴利用
第一の実施形態では、描画画像と実写画像から抽出する特徴として、エッジを用いたが、これに限るものでない。例えば、Harris検出器や、非特許文献6に示されるSIFT検出器などによって検出される点特徴を利用しても良い。このとき、点特徴の記述子としては、点特徴周辺の輝度分布を利用しても、非特許文献6に示されるSIFT記述子を利用しても良く、点特徴の検出子と記述子の選択に特に制限はない。描画画像と実写画像との対応付けに点特徴を利用する場合でも、処理の流れは第一の実施形態と大きく変わることなく、描画画像中から検出される点特徴と、実写画像から検出される点特徴とを対応付けることで、位置姿勢を推定する。
[第二の実施形態](画像間の明度変化に基づく位置姿勢推定)
第一の実施形態では、描画画像と実写画像から特徴抽出し、抽出した特徴同士を対応付け、対応に基づく非線形最適化計算により物***置姿勢を算出していた。第二の実施形態では、物体表面上にある点の明度は撮像装置の位置姿勢が変化した後も変化しないという仮定を行い、明度変化から物***置姿勢を直接求める手法に本発明を適用した例について説明する。
図7は、本実施形態における位置姿勢推定装置2の構成を示している。同図に示したように、位置姿勢推定装置2は、3次元モデル保存部210と、画像取得部220と、3次元モデル描画部230と、位置姿勢算出部240と、モデル更新部250を具備する。3次元モデルデータ10は、3次元モデル保存部210に保存されている。3次元モデル保存部210はモデル更新部250にも接続されている。撮像装置100は、画像取得部220に接続されている。位置姿勢推定装置2は、3次元モデル保存部210に保存されている観察対象物体の形状を表す3次元モデルデータ10をもとに、実写画像中に撮像される観察対象物体の位置および姿勢を計測する。なお、本実施例において、位置姿勢推定装置2が適用できる条件としては、3次元モデル保存部に保存された3次元モデルデータ10が、現実に撮像される観察対象物体の形状に即していることを前提としている。
次に、位置姿勢推定装置2を構成する各部について説明する。3次元モデル描画部230では、3次元モデル保存部210において、保存された3次元モデルデータ10を描画する。3次元モデル描画部230の処理は、基本的には、第一の実施形態における3次元モデル描画部130における処理と同様である。しかし、第一の実施形態と異なり、位置姿勢算出部240で利用するために、モデルの描画処理を複数回行う。
位置姿勢算出部240は、3次元モデル描画部230により描画された描画画像と画像取得部220より取得した実写画像との間の明度変化から、勾配法に基づいて直接的に位置姿勢を算出する。勾配法に基づく位置姿勢推定方法については後述する。
3次元モデル保存部210、画像取得部220、モデル更新部250は、第一の実施形態における3次元モデル保存部110、画像取得部120、モデル更新部180と同様の機能を有するものであるので説明を省略する。
次に、本実施形態における位置姿勢推定方法の処理手順について説明する。図8は、本実施形態における位置姿勢推定方法の処理手順を示すフローチャートである。
ステップS2010では初期化を行う。ステップS2010の処理内容は基本的に第一の実施形態におけるステップS1010と同様であるので重複部分は説明を省略する。
ステップS2020で画像を入力する。この処理は第一の実施形態におけるステップS1020の処理と同一であるので説明を省略する。
次に、ステップS2030で、3次元モデル描画部230は、ステップS2010で求めた観察対象物体の概略位置姿勢に基づいて、3次元モデル保存部210に保存された3次元モデルデータの描画を行い、実写画像と比較するための描画画像を得る。ステップS2030の処理内容は基本的に第一の実施形態におけるステップS1030と同様であるので重複部分は説明を省略する。ステップS2030がステップ1030と異なる点は次のとおりである。すなわち、次のステップS2040における位置姿勢推定のため、ステップS2010で求めた観察対象物体の概略位置姿勢に基づくCG描画以外に、6自由度ある概略位置姿勢から各自由度の±方向に微少変化させた概略位置姿勢に基づいたCG描画が行われる。この微少変化させた概略位置姿勢による描画画像は、後述する位置姿勢推定処理において利用する。本処理により、概略位置姿勢に基づく描画画像が1枚、微少変化させた概略位置姿勢に基づく描画画像が12枚生成される。
ステップS2040では、勾配法を用いて観察物体の位置姿勢が算出される。即ち、実写画像上の時間的な明度変化と、描画画像上の物***置姿勢の変化により生じる明度変化との関係を定式化することで、明度変化から物***置姿勢を直接算出する。ここで、光源環境など周囲の環境に変化が生じないと仮定すると、3次元空間での物体の位置姿勢を表すパラメータが決定すれば、2次元画像上での見えは一意に定まる。ここで撮像装置の位置及び姿勢を表すパラメータをsで表す。sは6次元ベクトルであり、撮像装置の位置を表す3つの要素と、姿勢を表す3つの要素からなる。姿勢を表す3つの要素は、例えばオイラー角による表現や、方向が回転軸を表して大きさが回転角を表す3次元ベクトルなどによって表現される。今、時刻tにおいて、その物体の表面上の点の明度がI(s)であるとする。微少時間δt後にこの物体の位置姿勢がδsだけ変化し、画像上において物体表面上の同一の点の明度に変化がないと仮定すると、テイラー展開により、明度Iを数11のように表すことができる。
Figure 2010267231
ここで、εは2次以上の高次の式であり、これを無視して一次近似し、画像フレーム間での物体運動により生じる明度変化をΔIとすると、式11から、近似的に以下の式が成り立つ。
Figure 2010267231
この拘束式を画像上の全ての画素に対して適用することで、Δsを求める。ここで、Δsを求めるためには、式12における右辺の偏微分係数∂I/∂piを数値的に求める必要がある。そこで、偏微分係数∂I/∂piを、微少な有限値δを用いて、
Figure 2010267231
と近似する。Iは3次元モデルデータを位置姿勢パラメータsによりCG描画することで得られる描画画像の画素値を表す。偏微分係数∂I/∂piは、位置姿勢のパラメータsの要素を微少変化させて生成した描画画像の差分を求めることで近似的に求めることが出来る。これには、ステップS2030において生成された12枚の描画画像を利用する。
ここで、画像空間をN次元空間として定義すると、N画素を持つ1枚の画像はN個の輝度値を要素とする画像ベクトルとして表される。数13はN個の輝度値を要素とする画像について成り立つため、数14のようなΔsに対する線形連立方程式が成り立つ。
Figure 2010267231
ここで数14を数15のように簡潔に表す。
Figure 2010267231
一般に画素数Nは位置姿勢パラメータの自由度6よりもはるかに大きい。そのため、数15をもとに、第一の実施形態におけるステップS1080と同様にGauss−Newton法などによって、行列Jの一般化逆行列(JT・J)-1を用いてΔsが求められる。以上、ステップS2040における撮像装置100の位置姿勢算出方法について説明した。
次にステップS2050において、モデル更新部250は、アピアランス更新処理を行う。即ち、ステップS2020で入力した実写画像から取得した観察対象物体の画像情報を、ステップS2040で算出した位置姿勢情報に基づいて3次元モデルデータ10の表面情報(テクスチャ画像)に反映させる。ステップS2050の処理内容は基本的に第一の実施形態におけるステップS1080と同一であるので重複部分は説明を省略する。
ステップS2060では、位置姿勢算出を終了する入力がなされたかどうかを判定し、入力された場合には終了し、入力されなかった場合にはステップS2020に戻り、新たな画像を取得して再度位置姿勢算出を行う。
以上述べたように、本実施形態では、実写画像中に撮像される対象物体の画像情報を3次元モデルの表面情報として保持・更新することにより、実写画像に即した表面情報に基づく位置姿勢推定が可能となる。これにより、実環境中で光源が変化した場合でも、動的に対象物体の画像情報を3次元モデルに反映することが可能となり、光源変化に頑健な物***置姿勢推定が可能となる。
[変形例2−1] 画像全体から算出した評価値の最適化
第二の実施形態では、描画画像と実写画像を整合させるための位置姿勢計算に勾配法を用いたが、これに限るものでない。例えば、描画画像と実写画像の比較から評価値を算出し、その評価値を最適化するように位置姿勢を算出しても良い。この場合、評価値の算出方法としては、描画画像と実写画像の差の二乗和を用いてもよいし、描画画像と実写画像の正規化相互相関を用いてもよいし、また、何らかの相互情報量を用いることで類似度を求める方法でもよい。描画画像と実写画像の類似性を示す値である限り、評価値の算出はいずれの方法でもよい。また、評価値の最適化手法も、評価値の最適化により位置姿勢を算出する方法であれば、例えば、グリーディーアルゴリズム、山登り法、シンプレックス法などでもよい。
以上のように、上述した各実施形態によれば、実写画像上に撮像される観察対象物体の画像情報により、位置姿勢推定に利用する3次元モデルデータの表面情報が更新される。このため、実環境中に光源変化が発生した場合や、対象物体の姿勢変化による見えの変化が発生した場合でも、安定的な位置姿勢を実現することが可能となる。
以上、実施形態を詳述したが、本発明は、例えば、システム、装置、方法、プログラムもしくは記憶媒体等としての実施態様をとることが可能である。具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
尚、本発明は、ソフトウェアのプログラムをシステム或いは装置に直接或いは遠隔から供給し、そのシステム或いは装置のコンピュータが該供給されたプログラムコードを読み出して実行することによって前述した実施形態の機能が達成される場合を含む。この場合、供給されるプログラムは実施形態で図に示したフローチャートに対応したコンピュータプログラムである。
また、コンピュータが、コンピュータ読み取り可能な記憶媒体から読み出したプログラムを実行することによって、前述した実施形態の機能が実現される他、そのプログラムの指示に基づき、コンピュータ上で稼動しているOSなどとの協働で実施形態の機能が実現されてもよい。この場合、OSなどが、実際の処理の一部または全部を行ない、その処理によって前述した実施形態の機能が実現される。

Claims (9)

  1. 撮像装置によって観察対象物体を撮像して得られた実写画像を取得する取得手段と、
    前記観察対象物体の形状及び表面情報を表す3次元モデルデータを保持する保持手段と、
    前記3次元モデルデータと前記撮像装置の位置姿勢情報とに基づいて3次元モデルを画像平面上に投影することにより描画画像を生成する描画手段と、
    前記描画手段により生成された描画画像と、前記実写画像における観察対象物体の画像との対応を検出することにより、前記撮像装置と前記観察対象物体の相対的な位置姿勢を算出する算出手段と、
    前記算出手段で算出された位置姿勢に基づいて前記実写画像における前記観察対象物体の画像情報を前記保持手段が保持する前記3次元モデルデータの前記表面情報に対応付けることにより、前記表面情報を更新する更新手段とを備えることを特徴とする位置姿勢推定装置。
  2. 前記算出手段は、前記描画画像と前記実写画像における前記観察対象物体の画像との差分に基づいて位置姿勢を算出することを特徴とする請求項1に記載の位置姿勢推定装置。
  3. 前記算出手段は、
    前記描画画像から前記3次元モデルデータの輝度または色に基づく特徴を抽出するモデル特徴抽出手段と、
    前記実写画像から前記観察対象物体の輝度または色に基づく特徴を抽出する画像特徴抽出手段とをさらに備え、
    前記モデル特徴抽出手段により抽出された特徴と、前記画像特徴抽出手段により抽出された特徴との対応関係から、前記撮像装置の前記観察対象物体に対する相対的な位置姿勢を算出することを特徴とする請求項1に記載の位置姿勢推定装置。
  4. 前記モデル特徴抽出手段および前記画像特徴抽出手段は、エッジ特徴を抽出することを特徴とする請求項3に記載の位置姿勢推定装置。
  5. 前記モデル特徴抽出手段および前記画像特徴抽出手段は、点特徴を抽出することを特徴とする請求項3に記載の位置姿勢推定装置。
  6. 前記更新手段は、前記観察対象物体の画像情報を用いて、3次元モデルデータの対応するテクスチャ画像を更新することを特徴とする請求項1乃至5のいずれか1項に記載の位置姿勢推定装置。
  7. 取得手段が、撮像装置によって観察対象物体を撮像して得られた実写画像を取得する取得工程と、
    描画手段が、保持手段に保持された前記観察対象物体の形状及び表面情報を表す3次元モデルデータと、前記撮像装置の位置姿勢情報とに基づいて3次元モデルを画像平面上に投影することにより描画画像を生成する描画工程と、
    算出手段が、前記描画工程により生成された描画画像と、前記実写画像における観察対象物体の画像との対応を検出することにより、前記撮像装置と前記観察対象物体の相対的な位置姿勢を算出する算出工程と、
    更新手段が、前記算出工程で算出された位置姿勢に基づいて前記実写画像における前記観察対象物体の画像情報を前記保持手段が保持する前記3次元モデルデータの前記表面情報に対応付けることにより、前記表面情報を更新する更新工程とを有することを特徴とする位置姿勢推定方法。
  8. 請求項7に記載の位置姿勢推定方法の各工程をコンピュータに実行させるためのコンピュータプログラム。
  9. 請求項8に記載のコンピュータプログラムを格納したコンピュータ読み取り可能な記憶媒体。
JP2009120391A 2009-05-18 2009-05-18 位置姿勢推定装置及び方法 Active JP5290864B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2009120391A JP5290864B2 (ja) 2009-05-18 2009-05-18 位置姿勢推定装置及び方法
US12/778,385 US20100289797A1 (en) 2009-05-18 2010-05-12 Position and orientation estimation apparatus and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009120391A JP5290864B2 (ja) 2009-05-18 2009-05-18 位置姿勢推定装置及び方法

Publications (2)

Publication Number Publication Date
JP2010267231A true JP2010267231A (ja) 2010-11-25
JP5290864B2 JP5290864B2 (ja) 2013-09-18

Family

ID=43068133

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009120391A Active JP5290864B2 (ja) 2009-05-18 2009-05-18 位置姿勢推定装置及び方法

Country Status (2)

Country Link
US (1) US20100289797A1 (ja)
JP (1) JP5290864B2 (ja)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012128070A1 (ja) * 2011-03-18 2012-09-27 ソニー株式会社 画像処理装置および画像処理方法
JP2013019890A (ja) * 2011-06-13 2013-01-31 Canon Inc 情報処理装置及び情報処理方法
JP2013058036A (ja) * 2011-09-07 2013-03-28 Canon Inc 画像処理装置、画像処理プログラム、ロボット装置及び画像処理方法
JP2014002638A (ja) * 2012-06-20 2014-01-09 Mitsuba Corp 自律走行装置
JP2014102608A (ja) * 2012-11-19 2014-06-05 Ihi Corp 3次元物体認識装置および3次元物体認識方法
JP2015184767A (ja) * 2014-03-20 2015-10-22 キヤノン株式会社 情報処理装置、情報処理方法、位置姿勢推定装置、ロボットシステム
US9900595B2 (en) 2011-08-31 2018-02-20 Sony Corporation Encoding device, encoding method, decoding device, and decoding method
US9979961B2 (en) 2011-03-18 2018-05-22 Sony Corporation Image processing device and image processing method
JP2018128803A (ja) * 2017-02-07 2018-08-16 富士通株式会社 表示制御プログラム、表示制御方法および表示制御装置
CN114758208A (zh) * 2022-06-14 2022-07-15 深圳市海清视讯科技有限公司 考勤设备调整方法、装置、电子设备及存储介质

Families Citing this family (46)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8508550B1 (en) * 2008-06-10 2013-08-13 Pixar Selective rendering of objects
JP5567908B2 (ja) * 2009-06-24 2014-08-06 キヤノン株式会社 3次元計測装置、その計測方法及びプログラム
JP2011133930A (ja) * 2009-12-22 2011-07-07 Fujitsu Ltd 形状最適化プログラム、方法及び装置
JP5746477B2 (ja) 2010-02-26 2015-07-08 キヤノン株式会社 モデル生成装置、3次元計測装置、それらの制御方法及びプログラム
JP5297403B2 (ja) 2010-02-26 2013-09-25 キヤノン株式会社 位置姿勢計測装置、位置姿勢計測方法、プログラムおよび記憶媒体
JP5612916B2 (ja) 2010-06-18 2014-10-22 キヤノン株式会社 位置姿勢計測装置、その処理方法、プログラム、ロボットシステム
US20110316845A1 (en) * 2010-06-25 2011-12-29 Palo Alto Research Center Incorporated Spatial association between virtual and augmented reality
JP5496008B2 (ja) 2010-08-06 2014-05-21 キヤノン株式会社 位置姿勢計測装置、位置姿勢計測方法、およびプログラム
JP5671281B2 (ja) 2010-08-20 2015-02-18 キヤノン株式会社 位置姿勢計測装置、位置姿勢計測装置の制御方法及びプログラム
JP5652097B2 (ja) * 2010-10-01 2015-01-14 ソニー株式会社 画像処理装置、プログラム及び画像処理方法
JP5370398B2 (ja) * 2011-03-15 2013-12-18 オムロン株式会社 画像処理装置および画像処理プログラム
US8884949B1 (en) 2011-06-06 2014-11-11 Thibault Lambert Method and system for real time rendering of objects from a low resolution depth camera
US9600933B2 (en) 2011-07-01 2017-03-21 Intel Corporation Mobile augmented reality system
US9020783B2 (en) 2011-07-07 2015-04-28 Autodesk, Inc. Direct manipulation of composite terrain objects with intuitive user interaction
US9196085B2 (en) * 2011-07-07 2015-11-24 Autodesk, Inc. Interactively shaping terrain through composable operations
US9437005B2 (en) * 2011-07-08 2016-09-06 Canon Kabushiki Kaisha Information processing apparatus and information processing method
JP2013050379A (ja) * 2011-08-31 2013-03-14 Mitsutoyo Corp 硬さ試験機
US20130063560A1 (en) * 2011-09-12 2013-03-14 Palo Alto Research Center Incorporated Combined stereo camera and stereo display interaction
US11321772B2 (en) 2012-01-12 2022-05-03 Kofax, Inc. Systems and methods for identification document processing and business workflow integration
US9514357B2 (en) 2012-01-12 2016-12-06 Kofax, Inc. Systems and methods for mobile image capture and processing
US10146795B2 (en) 2012-01-12 2018-12-04 Kofax, Inc. Systems and methods for mobile image capture and processing
JP5977544B2 (ja) * 2012-03-09 2016-08-24 キヤノン株式会社 情報処理装置、情報処理方法
JP6004809B2 (ja) * 2012-03-13 2016-10-12 キヤノン株式会社 位置姿勢推定装置、情報処理装置、情報処理方法
US9053382B2 (en) * 2012-03-22 2015-06-09 Digital Media Professionals Inc. Robust image based edge detection
US9613461B2 (en) * 2012-12-10 2017-04-04 Sony Corporation Display control apparatus, display control method, and program
JP5670416B2 (ja) * 2012-12-28 2015-02-18 ファナック株式会社 ロボットシステム表示装置
US10127636B2 (en) 2013-09-27 2018-11-13 Kofax, Inc. Content-based detection and three dimensional geometric reconstruction of objects in image and video data
US10783615B2 (en) * 2013-03-13 2020-09-22 Kofax, Inc. Content-based object detection, 3D reconstruction, and data extraction from digital images
JP6126437B2 (ja) * 2013-03-29 2017-05-10 キヤノン株式会社 画像処理装置および画像処理方法
JP6253368B2 (ja) 2013-11-25 2017-12-27 キヤノン株式会社 三次元形状計測装置およびその制御方法
JP6444027B2 (ja) 2013-12-09 2018-12-26 キヤノン株式会社 情報処理装置、情報処理装置の制御方法、情報処理システムおよびプログラム
JP6317618B2 (ja) * 2014-05-01 2018-04-25 キヤノン株式会社 情報処理装置およびその方法、計測装置、並びに、作業装置
US9760788B2 (en) 2014-10-30 2017-09-12 Kofax, Inc. Mobile document detection and orientation based on reference object characteristics
US10467465B2 (en) 2015-07-20 2019-11-05 Kofax, Inc. Range and/or polarity-based thresholding for improved data extraction
US10242285B2 (en) 2015-07-20 2019-03-26 Kofax, Inc. Iterative recognition-guided thresholding and data extraction
JP6624911B2 (ja) * 2015-12-03 2019-12-25 キヤノン株式会社 計測装置、計測方法および物品の製造方法
JP2017182274A (ja) * 2016-03-29 2017-10-05 セイコーエプソン株式会社 情報処理装置およびコンピュータープログラム
EP3252713A1 (en) * 2016-06-01 2017-12-06 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Apparatus and method for performing 3d estimation based on locally determined 3d information hypotheses
US10559085B2 (en) * 2016-12-12 2020-02-11 Canon Kabushiki Kaisha Devices, systems, and methods for reconstructing the three-dimensional shapes of objects
US10621751B2 (en) 2017-06-16 2020-04-14 Seiko Epson Corporation Information processing device and computer program
GB2565306A (en) * 2017-08-08 2019-02-13 Vision Rt Ltd Method and apparatus for measuring the accuracy of models generated by a patient monitoring system
US10565747B2 (en) 2017-09-06 2020-02-18 Nvidia Corporation Differentiable rendering pipeline for inverse graphics
US11062176B2 (en) 2017-11-30 2021-07-13 Kofax, Inc. Object detection and image cropping using a multi-detector approach
US10970425B2 (en) 2017-12-26 2021-04-06 Seiko Epson Corporation Object detection and tracking
US11830131B2 (en) * 2018-02-06 2023-11-28 Veo Robotics, Inc. Workpiece sensing for process management and orchestration
US10311833B1 (en) 2018-03-27 2019-06-04 Seiko Epson Corporation Head-mounted display device and method of operating a display apparatus tracking an object

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001291116A (ja) * 2000-04-11 2001-10-19 Sony Corp 三次元画像生成装置および三次元画像生成方法、並びにプログラム提供媒体
JP2005141655A (ja) * 2003-11-10 2005-06-02 Olympus Corp 3次元モデリング装置及び3次元モデリング方法
JP2008275391A (ja) * 2007-04-26 2008-11-13 Canon Inc 位置姿勢計測装置及び位置姿勢計測方法
JP2008286756A (ja) * 2007-05-21 2008-11-27 Canon Inc 位置姿勢計測装置及びその制御方法

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09319891A (ja) * 1996-06-03 1997-12-12 Sega Enterp Ltd 画像処理装置及びその処理方法
AU2001250802A1 (en) * 2000-03-07 2001-09-17 Sarnoff Corporation Camera pose estimation
US7034820B2 (en) * 2001-12-03 2006-04-25 Canon Kabushiki Kaisha Method, apparatus and program for processing a three-dimensional image
JP3796449B2 (ja) * 2002-01-31 2006-07-12 キヤノン株式会社 位置姿勢決定方法および装置並びにコンピュータプログラム
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
JP4136859B2 (ja) * 2003-01-10 2008-08-20 キヤノン株式会社 位置姿勢計測方法
CN1950844A (zh) * 2004-03-03 2007-04-18 日本电气株式会社 物体的姿势推断及对照***和方法及其程序
JP4599184B2 (ja) * 2005-02-02 2010-12-15 キヤノン株式会社 指標配置計測方法、指標配置計測装置
JP4914039B2 (ja) * 2005-07-27 2012-04-11 キヤノン株式会社 情報処理方法および装置
JP5063023B2 (ja) * 2006-03-31 2012-10-31 キヤノン株式会社 位置姿勢補正装置、位置姿勢補正方法
JP5111210B2 (ja) * 2008-04-09 2013-01-09 キヤノン株式会社 画像処理装置、画像処理方法
JP2010134649A (ja) * 2008-12-03 2010-06-17 Canon Inc 情報処理装置、その処理方法及びプログラム
JP5388932B2 (ja) * 2009-04-30 2014-01-15 キヤノン株式会社 情報処理装置およびその制御方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001291116A (ja) * 2000-04-11 2001-10-19 Sony Corp 三次元画像生成装置および三次元画像生成方法、並びにプログラム提供媒体
JP2005141655A (ja) * 2003-11-10 2005-06-02 Olympus Corp 3次元モデリング装置及び3次元モデリング方法
JP2008275391A (ja) * 2007-04-26 2008-11-13 Canon Inc 位置姿勢計測装置及び位置姿勢計測方法
JP2008286756A (ja) * 2007-05-21 2008-11-27 Canon Inc 位置姿勢計測装置及びその制御方法

Cited By (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9979961B2 (en) 2011-03-18 2018-05-22 Sony Corporation Image processing device and image processing method
US10389997B2 (en) 2011-03-18 2019-08-20 Sony Corporation Image processing apparatus and image processing method
US10218958B2 (en) 2011-03-18 2019-02-26 Sony Corporation Image processing apparatus and image processing method
JP6057136B2 (ja) * 2011-03-18 2017-01-11 ソニー株式会社 画像処理装置および画像処理方法
US9615079B2 (en) 2011-03-18 2017-04-04 Sony Corporation Image processing apparatus and image processing method
WO2012128070A1 (ja) * 2011-03-18 2012-09-27 ソニー株式会社 画像処理装置および画像処理方法
US9712802B2 (en) 2011-03-18 2017-07-18 Sony Corporation Image processing apparatus and image processing method
JP2013019890A (ja) * 2011-06-13 2013-01-31 Canon Inc 情報処理装置及び情報処理方法
US9900595B2 (en) 2011-08-31 2018-02-20 Sony Corporation Encoding device, encoding method, decoding device, and decoding method
JP2013058036A (ja) * 2011-09-07 2013-03-28 Canon Inc 画像処理装置、画像処理プログラム、ロボット装置及び画像処理方法
JP2014002638A (ja) * 2012-06-20 2014-01-09 Mitsuba Corp 自律走行装置
US9652864B2 (en) 2012-11-19 2017-05-16 Ihi Corporation Three-dimensional object recognition device and three-dimensional object recognition method
JP2014102608A (ja) * 2012-11-19 2014-06-05 Ihi Corp 3次元物体認識装置および3次元物体認識方法
US10083512B2 (en) 2014-03-20 2018-09-25 Canon Kabushiki Kaisha Information processing apparatus, information processing method, position and orientation estimation apparatus, and robot system
JP2015184767A (ja) * 2014-03-20 2015-10-22 キヤノン株式会社 情報処理装置、情報処理方法、位置姿勢推定装置、ロボットシステム
JP2018128803A (ja) * 2017-02-07 2018-08-16 富士通株式会社 表示制御プログラム、表示制御方法および表示制御装置
CN114758208A (zh) * 2022-06-14 2022-07-15 深圳市海清视讯科技有限公司 考勤设备调整方法、装置、电子设备及存储介质
CN114758208B (zh) * 2022-06-14 2022-09-06 深圳市海清视讯科技有限公司 考勤设备调整方法、装置、电子设备及存储介质

Also Published As

Publication number Publication date
US20100289797A1 (en) 2010-11-18
JP5290864B2 (ja) 2013-09-18

Similar Documents

Publication Publication Date Title
JP5290864B2 (ja) 位置姿勢推定装置及び方法
JP5290865B2 (ja) 位置姿勢推定方法および装置
JP5253066B2 (ja) 位置姿勢計測装置及び方法
EP3382644B1 (en) Method for 3d modelling based on structure from motion processing of sparse 2d images
JP5618569B2 (ja) 位置姿勢推定装置及びその方法
US9330307B2 (en) Learning based estimation of hand and finger pose
US8467596B2 (en) Method and apparatus for object pose estimation
JP5111210B2 (ja) 画像処理装置、画像処理方法
JP5873442B2 (ja) 物体検出装置および物体検出方法
JP6736257B2 (ja) 情報処理装置、情報処理方法、プログラム
Zhu et al. Video-based outdoor human reconstruction
EP2751777A1 (en) Method for estimating a camera motion and for determining a three-dimensional model of a real environment
Urban et al. Finding a good feature detector-descriptor combination for the 2D keypoint-based registration of TLS point clouds
JP6860620B2 (ja) 情報処理装置、情報処理方法、及びプログラム
JP2008176509A (ja) 情報処理装置および方法
CN109272577B (zh) 一种基于Kinect的视觉SLAM方法
Zagrouba et al. An efficient image-mosaicing method based on multifeature matching
Alcantarilla et al. How to localize humanoids with a single camera?
Furukawa High-fidelity image-based modeling
JP6086491B2 (ja) 画像処理装置およびそのデータベース構築装置
Peng et al. A practical two-step image registration method for two-dimensional images
Sheikh et al. Geodetic alignment of aerial video frames
Witt Visual localization, mapping and reconstruction using edges
Davelli et al. Automatic mapping of uncalibrated pictures on dense 3D point clouds
Herrera-Granda Real-time monocular 3D reconstruction of scenarios using artificial intelligence techniques

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120518

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130214

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130218

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130419

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130606

R151 Written notification of patent or utility model registration

Ref document number: 5290864

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151