JP2019105992A - 画像処理装置、画像処理プログラム及び画像処理方法 - Google Patents

画像処理装置、画像処理プログラム及び画像処理方法 Download PDF

Info

Publication number
JP2019105992A
JP2019105992A JP2017237961A JP2017237961A JP2019105992A JP 2019105992 A JP2019105992 A JP 2019105992A JP 2017237961 A JP2017237961 A JP 2017237961A JP 2017237961 A JP2017237961 A JP 2017237961A JP 2019105992 A JP2019105992 A JP 2019105992A
Authority
JP
Japan
Prior art keywords
line
feature
dimensional
line segment
pair
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.)
Pending
Application number
JP2017237961A
Other languages
English (en)
Inventor
あゆ 烏谷
Ayu Karasuya
あゆ 烏谷
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2017237961A priority Critical patent/JP2019105992A/ja
Publication of JP2019105992A publication Critical patent/JP2019105992A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Length Measuring Devices By Optical Means (AREA)
  • Image Analysis (AREA)

Abstract

【課題】撮像装置の位置及び姿勢の推定に用いる撮影画像中の対象物の特徴線と、対応する物体の形状を表す形状情報の線分とのペアを決定するための計算量を削減する。【解決手段】 画像処理装置は、3次元形状情報から複数の3次元線分を抽出する3次元線分抽出部と、撮影画像から複数の特徴線を抽出する特徴線抽出部と、複数の特徴線の角度についての第1の分布と、複数の3次元線分を投影面に投影して得られる複数の投影線の角度についての第2の分布との間の距離に基づいて、第1の特徴線と第1の3次元線分との1対のペアを推定すると共に、推定した1対のペアに基づいて特徴線と3次元線分とのペアを少なくとも3対推定するペア推定部と、推定された少なくとも4対のペアに基づいて、撮影画像から3次元空間内における対象物に対する撮像装置の位置及び方向を推定する視点推定部と、を含むにより上記課題の解決を図る。【選択図】図6

Description

本発明は、画像処理装置、画像処理プログラム及び画像処理方法に関する。
近年、拡張現実(Augmented Reality, AR)技術を用いて画像を表示するシステムが普及してきている(例えば、特許文献1〜3を参照)。AR技術の一例では、パーソナルコンピュータ(PC)、携帯端末装置等に搭載したカメラを用いて物体が撮影され、物体の画像から3次元空間内におけるカメラの位置及び姿勢が推定される。そして、決定されたカメラの位置及び姿勢を基準にして、画像中の任意の位置にコンテンツ情報が重畳表示される。
重畳表示するコンテンツ情報としては、例えば、物体の3次元形状を表すComputer-Aided Design(CAD)データが使用される。カメラの位置・姿勢を決定するためには、CADデータの3次元線分と、撮影された画像中の対象物において対応する線分とのペアが、少なくとも4ペア用いられる。
第1の技術として、立体構造物とモデル情報が表すモデルとを比較する技術がある(例えば、特許文献1)。第1の技術では、コンピュータは、撮像装置により立体構造物を撮像した撮像画像から抽出されたエッジ線と、その立体構造物のモデル情報が表すモデル画像に含まれる稜線とを、選択可能な状態で表示する。次に、コンピュータは、重ね合わせる対象のエッジ線と稜線とを示す選択指示を受け付ける。そして、コンピュータは、受け付けた選択指示に応じて、重ね合わせる対象のエッジ線と稜線とが重なるようにモデル画像を撮像画像に重畳した重畳画像を表示する。
第2の技術として、撮像装置が撮影した物体の画像と形状情報とを用いて、撮像装置の位置を推定する技術がある(例えば、特許文献2。)。第2の技術では、コンピュータは、物体の形状情報に含まれる候補線を画像上に投影した投影線と、画像から検出した特徴線とを対応付けた、所定数の組み合わせを用いて、撮像装置の第1位置を推定する。次に、コンピュータは、第1位置を用いて別の候補線を画像上に投影することで、第1投影線を生成し、それに対応する特徴線を選択する。次に、コンピュータは、第1投影線と特徴線とを対応付けた組み合わせを用いて、撮像装置の第2位置を推定する。そして、コンピュータは、第2位置を用いて上記別の候補線を画像上に投影することで、第2投影線を生成し、第2投影線と上記別の特徴線との間のずれを表す指標に基づいて、撮像装置の第3位置を決定する。
特開2017−91078号公報 特開2017−182302号公報 特開2015−118641号公報
カメラにより撮影した物体の画像と、その物体のCADデータとを対応付けることでカメラの位置及び姿勢を推定する場合、対応付けのための計算量が大きくなる。
なお、かかる問題は、物体の画像とCADデータとを対応付ける場合に限らず、物体の画像と他の形状情報とを対応付ける場合においても生ずるものである。
1つの側面において、本発明は、撮像装置の位置及び姿勢の推定に用いる撮影画像中の対象物の特徴線と、対応する物体の形状を表す形状情報の線分とのペアを決定するための計算量を削減することを目的とする。
一態様によれば、画像処理装置は、物体の3次元形状を示す3次元形状情報から、3次元形状を形成する複数の3次元線分を抽出する3次元線分抽出部と、撮像装置により対象物を撮影した撮影画像から、該対象物の形状の特徴を示す複数の特徴線を抽出する特徴線抽出部と、複数の特徴線の角度についての分布を示す第1の分布と、複数の3次元線分を投影面に投影して得られる複数の投影線の角度についての分布を示す第2の分布との間の距離に基づいて、複数の特徴線のうちの第1の特徴線と複数の3次元線分のうちの第1の3次元線分との1対のペアを推定すると共に、推定した1対のペアに基づいて特徴線と3次元線分とのペアを少なくとも3対推定するペア推定部と、推定された少なくとも4対のペアに基づいて、撮像画像から3次元空間内における対象物に対する前記撮像装置の位置及び方向を推定する視点推定部と、を含む。
実施形態によれば、撮像装置の位置及び姿勢の推定に用いる撮影画像中の対象物の特徴線と、対応する物体の形状を表す形状情報の線分とのペアを決定するための計算量を削減することができる。
撮影した画像に含まれる特徴点を用いてカメラの位置及び姿勢を求める方法を説明するための図である。 3次元マップの生成方法の例を示す図である。 物体の撮影画像の例を示す図である。 CADデータの例を示す図である。 撮像画像から検出されたエッジ線と、CADデータが表す輪郭線との対応付けの例を示す図である。 実施形態における画像処理装置の一例を示す図である。 本実施形態における画像処理の例を示すフローチャートである。 本実施形態における撮像画像からの特徴線の検出の例を示す図である。 本実施形態における3次元線分の検出の例を示す図である。 本実施形態における線分Lmdlが投影面上で線分Limgと平行になるように、3Dモデルを回転させることを説明するための図である。 本実施形態における線分Limgとカメラ視点とがなす平面の法線nを説明する図である。 本実施形態における線分Lmdl、法線nそれぞれを軸として、3Dモデルを回転させた場合の状態遷移を説明するための図である。 本実施形態における、撮影画像より抽出した特徴線と、仮対応線分ペアに基づいて回転させた3Dモデルの3次元線分との例を示す図である。 本実施形態における撮影画像上の特徴線の方向(角度)と、各回転状態における3Dモデルの各投影線の方向(角度)の例を示す図である。 本実施形態における撮影画像上の特徴線の角度についてのヒストグラムと、各回転状態における3Dモデルの各投影線の角度についてのヒストグラムの例を示す図である。 本実施形態における撮影画像上の特徴線の角度についてのヒストグラムと、各回転状態における3Dモデルの各投影線の角度についてのヒストグラムとの間の距離の例を説明するための図である。 本実施形態(実施例1)における画像処理装置の一例を示す図である。 本実施形態(実施例1)におけるペア推定部の機能ブロック図である。 本実施形態(実施例1)における画像処理の具体例を示すフローチャートである。 本実施形態(実施例1)における対応線分ペアの推定処理(ステップ1906)の詳細処理のフローチャートである。 本実施形態(実施例1)における他の3対の対応線分ペアを推定する処理(ステップ2008)の詳細処理のフローチャートである。 本実施形態(実施例1)における対応線分ペアの例を示す図である 本実施形態(実施例1)における領域の面積に基づく計算方法を示す図である。 本実施形態(実施例1)における距離に基づく計算方法を示す図である。 本実施形態(実施例1)における180度回転した線分を示す図である。 本実施形態(実施例1)における粗パラメータの計算に適していない3次元線分の例を示す図である。 本実施形態(実施例2)におけるペア推定部の機能ブロック図である。 本実施形態(実施例2)における画像処理の具体例を示すフローチャートである 本実施形態(実施例2)における特徴線選択(ステップ2001)の詳細フローチャートである。 本実施形態(実施例2)における外側の特徴線から選択する方法について説明する図である。 本実施形態(実施例2)における3次元線分選択(ステップ2002)の詳細処理のフローチャートである。 本実施形態(実施例2)における対応線分を選択する方法を説明するための図である。 本実施形態(実施例1、実施例2)における画像処理装置として用いられる情報処理装置(コンピュータ)の構成例を示す図である。
以下、図面を参照しながら、実施形態を詳細に説明する。
図1は、撮影した画像に含まれる特徴点を用いてカメラの位置及び姿勢を求める方法を説明するための図である。この方法では、物体上におけるマップ点(3次元における位置)111の3次元座標の集合を表す3次元マップ101が、予め生成される。
次に、カメラによって画像102が撮影されたとき、3次元座標系103をカメラ座標系104へ変換する変換行列Mを用いて、マップ点111を投影面としての画像102上に投影することで、投影点112が求められる。そして、投影点112と画像102から検出された特徴点113とを対応付けることで、3次元座標系103におけるカメラの位置及び姿勢が推定される。なお、カメラの姿勢とはカメラの視点の方向を意味する。
例えば、画像102を撮像したカメラの位置は、3次元座標系103に対するカメラ座標系104の相対位置によって表され、カメラの姿勢は、3次元座標系103に対するカメラ座標系104の相対角度によって表される。
マップ点pの3次元座標Sp、マップ点pに対応する投影点の2次元座標xp’、及びマップ点pに対応する特徴点の2次元座標xpは、次式のように記述することができる。
Sp=(x,y,z) (1)
xp’=(u’,v’) (2)
xp=(u,v) (3)
この場合、画像上における投影点と特徴点との距離の二乗和Eは、次式により表される。
式(4)の二乗和Eが最小となるような変換行列Mを求めることで、カメラの位置及び姿勢が決定される。
また、投影点112同士を結ぶ線分を投影線115と称し、そのベクトルを投影線の方向ベクトルと称する。
図2は、3次元マップ101の生成方法の例を示す図である。この生成方法では、ステレオ撮影及びステレオ計測が用いられる。撮影位置211及び撮影位置212からそれぞれ撮影した画像201及び画像202がキーフレームとして用いられ、画像201内の特徴点213と画像202内の特徴点214とを対応付けることで、3次元空間内のマップ点215が復元される。2枚の画像内の複数の特徴点同士を対応付けることで、複数のマップ点が復元され、それらのマップ点の集合を表す3次元マップ101が生成される。
カメラの位置及び姿勢を求める際に、物体のCADデータを図1の3次元マップ101として使用する場合、CADデータと物体との間で、模様又は色合いといった“見た目”の特徴が異なる場合が多い。この“見た目”の特徴が一致することを前提とした場合、画像内の特徴点とCADデータが表すマップ点との対応付けを、画像処理によって自動的に行うことが難しい。このため、PCの画面上でのマウス操作によって、特徴点とマップ点との対応付けが手作業で行われることがある。この場合、以下のような問題が発生すると考えられる。
(A)画像中から特徴点を精度よく検出することが難しい。
(B)マップ点を画像上に投影した投影点及び特徴点をマウス等で選択する操作が難しい。
(C)投影点及び特徴点を選択する操作が難しいことと、手作業の手間のため、選択する投影点と特徴点との組み合わせ(対応ペア)の個数が限られる。
(D)対応ペアの個数が少ないため、カメラの位置及び姿勢の計算精度が低下する。
そこで、特許文献1に記載されているように、画像から検出されたエッジ線と、CADデータが表す輪郭線とを対応付ける方法も考えられる。
図3は、物体の撮影画像の例を示す図である。図3の撮影画像は、ある物体を被写体(対象物)として撮影した画像である。図4は、CADデータの例を示す図である。図4のCADデータは、図3の物体に対応するCADデータである。
図5は、撮像画像から検出されたエッジ線と、CADデータが表す輪郭線との対応付けの例を示す図である。以下では、図3の撮影画像と図4のCADデータとを対応付けることについて説明する。
まず、携帯端末装置等の画像処理装置は、図5(a)に示すように、エッジ検出処理を行って、図3の撮影画像からエッジ線を検出する。次に、図5(b)に示すように、画像処理装置は、CADデータが表す輪郭線と検出したエッジ線とを撮影画像中に表示する。ユーザは、撮影画像エッジ線及び輪郭線をマウス等で選択することで、それらの線同士を対応付ける。その撮影画像を撮影したカメラの位置及び姿勢(カメラ視点の方向)を求めるためには、最低限4個の対応ペアを用いることが望ましい。
次に、画像処理装置は、対応付けられたエッジ線及び輪郭線の組み合わせを用いて、その撮影画像を撮影したカメラの位置及び姿勢を計算する。そして、図5(c)に示すように、画像処理装置は、計算したカメラの位置及び姿勢に合わせて、CADデータが表す輪郭線を物体の画像に重畳表示する。
このような対応付け方法によれば、エッジ線を精度よく検出することができ、エッジ線及び輪郭線を容易に選択することができるため、上記(A)及び(B)の問題が解決されるが、以下のような問題が発生すると考えられる。
(E)手作業の手間のため、選択する輪郭線とエッジ線との組み合わせ(対応ペア)の個数が限られる。
(F)対応ペアの個数が少ないため、カメラの位置及び姿勢の計算精度が低下する。
そこで、特許文献2に記載されているように、対応ペアを自動的に追加してカメラの位置及び姿勢を再計算する方法も考えられる。対応ペアの個数を増加させることで、計算精度が向上する。しかしながら、この方法においても、所定数の初期対応ペアがユーザによって選択されており、初期対応ペアを自動的に選択する具体的な方法は記載されていない。
熟練者ではないユーザが目視による手作業で対応ペアを選択する場合、作業に時間がかかるとともに、選択ミスが発生する可能性がある。
一方、画像から検出されたエッジ線とCADデータが表す輪郭線とのすべての組み合わせを用いて、総当たり計算を行う方法も考えられる。例えば、m本のエッジ線から4本のエッジ線を選択し、n本の輪郭線から4本の輪郭線を選択して、4個の対応ペアを生成する場合、組み合わせの総数は×個になる。このため、エッジ線の数及び輪郭線の数が増加すると、組み合わせの総数が膨大になり、対応ペアを生成するための計算量が増加する。
本実施形態では、一例として、3DモデルもしくはCADデータ等の3次元形状情報が存在し、およその撮影距離が判明している場合、撮影画像への3Dモデルの重畳では、対応線分ペアの選択を自動化してカメラの位置及び姿勢を推定することを説明する。これにより、手作業の手間を低減し、処理時間の短縮及びミスの低減を図る。
図6は、実施形態における画像処理装置の一例を示す図である。画像処理装置601は、3次元線分抽出部602、特徴線抽出部603、ペア推定部604、視点推定部605を含む。
3次元線分抽出部602は、物体の3次元形状を示す3次元形状情報から、3次元形状を形成する複数の3次元線分を抽出する。3次元線分抽出部602の一例としては、後述する3次元線分抽出部1703が挙げられる。
特徴線抽出部603は、撮像装置により対象物を撮影した撮影画像から、対象物の形状の特徴を示す複数の特徴線を抽出する。特徴線抽出部603の一例としては、後述する特徴線検出部1705が挙げられる。
ペア推定部604は、第1の分布と、第2の分布との間の距離に基づいて、複数の特徴線のうちの第1の特徴線と複数の3次元線分のうちの第1の3次元線分との1対のペアを推定する。第1の分布は、複数の特徴線の角度についての分布を示す。第2の分布は、複数の3次元線分を投影面に投影して得られる複数の投影線の角度についての分布を示す。ペア推定部604は、推定した1対のペアに基づいて特徴線と3次元線分とのペアを少なくとも3対推定する。ペア推定部604の一例としては、後述する推定部1706が挙げられる。
視点推定部605は、推定された少なくとも4対のペアに基づいて、撮像画像から3次元空間内における対象物に対する撮像装置の位置及び方向を推定する。視点推定部605の一例としては、後述する位置計算部1707、誤差計算部1708、及び決定部1709が挙げられる。
このように構成することにより、撮像装置の位置及び姿勢の推定に用いる撮影画像中の対象物の特徴線と、対応する物体の形状を表す形状情報の線分とのペアを決定するための計算量を削減することができる。
ペア推定部604は、抽出した複数の特徴線から第1の特徴線を選択し、抽出した複数の3次元線分から第1の3次元線分を選択する。ペア推定部604は、仮想空間において、3次元形状を回転させて第1の特徴線と第1の3次元線分とを一致させる。ペア推定部604は、第1の特徴線と第1の3次元線分とを一致させた3次元形状を、第1の3次元線分と、第1の特徴線と撮像装置の視点とがなす平面に対する法線と、をそれぞれ回転軸として、3次元形状を所定角度ずつ回転させる。ペア推定部604は、回転させる毎に複数の3次元線分を投影面に投影して得られる複数の投影線の角度についての第2の分布を生成する。ペア推定部604は、生成した複数の第2の分布のそれぞれと、第1の分布との間の距離に応じて、1対のペアを推定する。
このように構成することにより、撮影画像から選んだ特徴線と、3次元形状情報から選んだ3次元線分とが対応する線分同士であるか推定することができる。
ペア推定部604は、1対のペアである第1のペアを推定した場合、第1のペアを形成する第1の3次元線分の第1の投影線以外の複数の投影線から、1対のペアを形成する第1の特徴線以外の第2の特徴線と角度が一致している第2の投影線を取得する。ペア推定部604は、第2の投影線に対応する第2の3次元線分と第2の特徴線とを選択し、第2の3次元線分と第2の特徴線を第2のペアと推定する。
ペア推定部604は、第1の投影線及び第2の投影線以外の複数の投影線から、第1の特徴線及び第2の特徴線以外の第3の特徴線と角度と位置が一致している第3の投影線を取得する。ペア推定部604は、第3の投影線に対応する第3の3次元線分と第3の特徴線とを選択し、第3の3次元線分と第3の特徴線を第3のペアと推定する。
ペア推定部604は、第1の投影線、第2の投影線及び第3の投影線以外の複数の投影線から、第1の特徴線、第2の特徴線及び第3の特徴線以外の第4の特徴線と角度と位置が一致している第4の投影線を取得する。ペア推定部604は、第4の投影線に対応する第4の3次元線分と第4の特徴線を選択し、第4の3次元線分と第4の特徴線を第4のペアと推定する。
このように構成することにより、第1のペアが推定された場合に、第1のペアを仮に固定して他の特徴線と3次元線分との位置や角度の関係から、他のペアを推定することができる。
ペア推定部604は、撮影画像より抽出した複数の特徴線を同一方向毎にグループ化して複数の特徴線グループを形成する。ペア推定部604は、複数の3次元線分を同一方向毎にグループ化して複数の3次元線分グループを形成する。
ペア推定部604は、それぞれの特徴線グループに含まれる特徴線の数、それぞれの特徴線グループに含まれる特徴線の長さ、及びそれぞれの特徴線グループにおける特徴線の位置のうち少なくとも1つの条件に基づいて、第1の特徴線を選択する。
ペア推定部604は、それぞれの3次元線分グループに含まれる3次元線分の数、及びそれぞれの3次元線分グループに含まれる3次元線分の長さのうち少なくとも1つの条件に基づいて、第1の3次元線分を選択する。
このように構成することにより、3次元線分の選択時の正しい対応線分ペアが得られる期待値を上げ、かつ対応線分ペアの探索処理を高速化することができる。
ペア推定部604は、撮影画像より抽出した複数の特徴線を同一方向毎にグループ化して複数の特徴線グループを形成する。ペア推定部604は、複数の3次元線分を同一方向毎にグループ化して複数の3次元線分グループを形成する。
ペア推定部604は、複数の特徴線グループから、最も多く特徴線を含む特徴線グループを選択する。ペア推定部604は、選択した特徴線グループに含まれるすべての特徴線の長さが所定の範囲内である場合には選択した特徴線グループにおいて外周線に対応する特徴線を第1の特徴線として選択する。ペア推定部604は、選択した特徴線グループに含まれるいずれかの特徴線の長さが所定の範囲を超える場合には選択した特徴線グループから最も長い特徴線を第1の特徴線として選択する。
ペア推定部604は、複数の3次元線分グループから、選択された特徴線グループに含まれる特徴線の数以上でより近い数の3次元線分を含む3次元線分グループが1つの場合には1つの3次元線分グループを選択する。ペア推定部604は、特徴線の数以上でより近い数の3次元線分を含む3次元線分グループが複数存在する場合には最も長い3次元線分を含む3次元線分グループを選択する。ペア推定部604は、特徴線の数以上の3次元線分を含む3次元線分グループが存在しない場合には選択された特徴線グループに含まれる特徴線の数未満でより近い数の3次元線分を含む3次元線分グループを選択する。ペア推定部604は、選択した3次元線分グループから最も長い3次元線分を第1の3次元線分として選択する。
このように構成することにより、3次元線分の選択時の正しい対応線分ペアが得られる期待値を上げ、かつ対応線分ペアの探索処理を高速化することができる。
図7は、本実施形態における画像処理の例を示すフローチャートである。図8は、本実施形態における撮像画像からの特徴線の検出の例を示す図である。図9は、本実施形態における3次元線分の検出の例を示す図である。図10は、本実施形態における線分Lmdlが投影面上で線分Limgと平行になるように、すなわち仮対応線分ペアの角度が一致するように、3Dモデルを回転させることを説明するための図である。
図7では、画像処理装置601は、撮影画像上の線分と、3Dモデルから選んだ線分とが対応する線分同士(対応線分)か簡易的に推定し、対応する線分同士ではないと推定した場合には3Dモデルの線分を選び直す。画像処理装置601は、対応線分同士と推定した場合、他の対応線分の組を推定し、4ペア以上の組が見つかった場合、精密な計算を行う。
特徴線抽出部603は、図8(a)に示すように、カメラ等で撮影された撮影画像から特徴線(撮影画像から検出した線分)を検出する(ステップ701)。
3次元線分抽出部602は、図9(a)に示すように、3DモデルデータもしくはCADデータ等の3次元形状情報(以下、「3Dモデル」と称する。)から3次元線分を検出する(ステップ702)。3次元線分は、3次元の形状を形成する線分を示す情報である。
ペア推定部604は、図9(b)に示すように、仮想的な空間において、適当な位置にカメラと、そのカメラの視線上のおよその撮影距離に3Dモデルとを仮想的に配置する(ステップ703)。
ペア推定部604は、撮像画像上の線分Limg(図8(b))と、3Dモデル上の線分Lmdl(図9(b))とを選択する(ステップ704)。この選択した線分Limgと線分Lmdlとのペアを、説明の便宜上、仮対応線分ペアと称する。
ペア推定部604は、図10に示すように、線分Lmdlが投影面上で線分Limgと平行になるように、すなわち仮対応線分ペアの角度が一致するように、3Dモデルを回転させる(ステップ705)。
ペア推定部604は、線分Lmdlを軸としておよび、線分Limgとカメラ視点とがなす平面の法線nを軸として、3Dモデルを回転させて3Dモデルの投影線の方向ベクトルを求める(ステップ706)。3Dモデルの投影線の方向ベクトルとは、図1で説明したように、符号115で表したものである。
図11は、本実施形態における線分Limgとカメラ視点とがなす平面の法線nを説明する図である。画像平面1101は、カメラ視点(カメラ座標系原点)1104から撮像される平面である。画像平面1101上に線分Limgが存在する。線分Limgは、3Dモデル上のエッジ1102に相当する。このとき、線分Limgとカメラ視点とがなす平面に対して垂直方向の線分は、法線nで示される。
図12は、本実施形態における線分Lmdl、法線nそれぞれを軸として、3Dモデルを回転させた場合の状態遷移を説明するための図である。図12において、横方向は、選択した3次元線分Lmdlを軸として3Dモデルを回転させた場合の3Dモデルの状態遷移を示す。縦方向は、線分Limgとカメラ視点とがなす平面1105の法線nを軸として3Dモデルを回転させた場合の3Dモデルの状態遷移を示す。
図12に示すように、線分Lmdl、法線nそれぞれを軸として3Dモデルを回転させ、その回転させた状態での3Dモデルを形成する3次元線分の投影線の方向ベクトルを求める。
図7の説明に戻る。ペア推定部604は、撮影画像上の特徴線の方向(角度)のヒストグラムH1と投影線の方向(角度)のヒストグラムH2との距離を指標として、仮対応線分ペアが対応線分の可能性があるか否かを判断する(ステップ707)。ステップ707について、図13〜図16を用いて説明する。
図13は、本実施形態における、撮影画像より抽出した特徴線と、仮対応線分ペアに基づいて回転させた3Dモデルの3次元線分との例を示す図である。撮影画像より抽出した特徴線は、ステップ701で得られる。
ステップ707では、ペア推定部604は、撮影画像より抽出した特徴線1301と、各回転状態にて投影面に投影した3Dモデル1302,1303,1304とを比較して、仮対応線分ペアが対応線分の可能性があるか否かを判断する。この場合に、ペア推定部604は、撮影画像上の特徴線の方向(角度)のヒストグラムH1と投影線の方向(角度)のヒストグラムH2との距離を指標として、仮対応線分ペアが対応線分の可能性があるか否かを判断する。
まずは、撮影画像上の特徴線の方向(角度)と、各回転状態における3Dモデルの各投影線の方向(角度)とが算出される。撮影画像上の特徴線の角度は、撮影画像上における特徴線の傾きであって、例えば、図1のカメラ座標系104のX軸に対する角度で表される。投影線の角度は、投影面における投影線の傾きであって、例えば、図1のカメラ座標系104のX軸に対する角度で表される。
図14は、本実施形態における撮影画像上の特徴線の方向(角度)と、各回転状態における3Dモデルの各投影線の方向(角度)の例を示す図である。
図14(a)は、撮影画像1301上の15本の特徴線の方向(角度)を示す。図14(b)は、15本の3次元線分で形成される3Dモデル1302を撮像平面(図1の画像102に相当)に投影した場合に得られる15本の投影線の方向(角度)を示す。図14(c)は、15本の3次元線分で形成される3Dモデル1303を撮像平面(図1の画像102に相当)に投影した場合に得られる15本の投影線の方向(角度)を示す。図14(c)は、15本の3次元線分で形成される3Dモデル1304を撮像平面(図1の画像102に相当)に投影した場合に得られる15本の投影線の方向(角度)を示す。
図15は、本実施形態における撮影画像上の特徴線の角度についてのヒストグラムと、各回転状態における3Dモデルの各投影線の角度についてのヒストグラムの例を示す図である。各ヒストグラム1501,1502,1503,1504の横軸は角度(3度単位)、縦軸はその角度の範囲に含まれる角度の個数(頻度)を示す。
ヒストグラムH1(1501)は、撮影画像1301上の特徴線の角度についてのヒストグラムであり、図14(a)を3度単位でヒストグラム化したものである。
ヒストグラムH2(1502)は、3Dモデル1302の各投影線の角度についてのヒストグラムであり、図14(b)を3度単位でヒストグラム化したものである。
ヒストグラムH2(1503)は、3Dモデル1303の各投影線の角度についてのヒストグラムであり、図14(c)を3度単位でヒストグラム化したものである。
ヒストグラムH2(1504)は、3Dモデル1304の各投影線の角度についてのヒストグラムであり、図14(d)を3度単位でヒストグラム化したものである。
なお、ヒストグラムにおいて、頻度の集計の単位をビン(ヒストグラムのグラフの柱のこと)といい、上述のように、ヒストグラムH1及びヒストグラムH2のビンの単位及びビンの数が同じになるようにする。
図16は、本実施形態における撮影画像上の特徴線の角度についてのヒストグラムH1と、各回転状態における3Dモデルの各投影線の角度についてのヒストグラムH2との間の距離の例を説明するための図である。
ここで、比較するヒストグラム同士がどれほど類似しているかを、ヒストグラム間の距離といい、以下ではd(x1,x2)で表す。x1は、ヒストグラムH1のn個のビンそれぞれの頻度を要素とするn次元ベクトルである。x2は、ヒストグラムH2のn個のビンそれぞれの頻度を要素とするn次元ベクトルである。
ヒストグラム同士が類似しているほど、ヒストグラム間の距離の値は小さくなり、ヒストグラム同士が相違しているほど、ヒストグラム間の距離の値は大きくなる。ヒストグラム間の距離の計算には様々な方法を用いることができるが、その計算方法の一例を以下に示す。
ここで、ヒストグラムH1とヒストグラムH2とを、同一の2次元座標系に描画する。このとき、ヒストグラムH1の各ビンの頂上の座標をx1iで表し、ヒストグラムH2の各ビンの頂上の座標をx2iで表すものとする。x1iは、ベクトルx1のi番目(i=1〜n)の要素である。x2iは、ベクトルx2のi番目(i=1〜n)の要素である。
・マンハッタン(Manhattan)距離(L1ノルムなどともいう)
マンハッタン距離d(x1,x2)は、式(5)に示すように、ヒストグラムH1の座標x1iとヒストグラムH2の座標x2iそれぞれの差(の絶対値)の総和を2点間の距離で表すことができる。ここで、式(5)のΣは、i=1からi=nまでの総和を表し、nはヒストグラムH1およびヒストグラムH2のビンの数である。
・ユークリッド(Euclidean)距離(L2ノルムなどともいう)
ユークリッド距離d(x1,x2)は、式(6)に示すように、ヒストグラムH1の座標x1iとヒストグラムH2の座標x2iそれぞれの差の二乗和の平方根を2点間の距離として表すことができる。ここで、式(6)のΣは、i=1からi=nまでの総和を表し、nはヒストグラムH1およびヒストグラムH2のビンの数である。
・Hellinger距離
Hellinger距離d(x1,x2)は、式(7)で表される。ここで、式(7)のΣは、i=1からi=nまでの総和を表し、nはヒストグラムH1およびヒストグラムH2のビンの数である。
・バタチャリア(Bhattacharyya)距離
バタチャリア距離d(x1,x2)は、式(8)で表される。ここで、式(8)のΣは、i=1からi=nまでの総和を表し、nはヒストグラムH1およびヒストグラムH2のビンの数である。
・ヒストグラム交差法(Histogram Intersection)
ヒストグラム交差法は、式(9)に示すように、比較するビン毎に小さい値を選択しその総和を総数で割る方法である。ここで、式(9)のΣは、i=1からi=nまでの総和を表し、nはヒストグラムH1およびヒストグラムH2のビンの数である。min(x1i,x2i)は、x1iとx2iとのうち小さい方を選択することを示す。ヒストグラム交差法において、比較するヒストグラムが一致した場合には最大値の1で表される。
・コサイン類似度
コサイン類似度は、式(10)に示すように、比較するヒストグラムH1,H2のビンの頂上の各座標をベクトルとして扱い、そのベクトル間のCOS値を求めることにより得られる。ここで、式(10)のΣは、i=1からi=nまでの総和を表し、nはヒストグラムH1およびヒストグラムH2のビンの数である。
コサイン類似度が1に近ければ近いほど、比較するヒストグラムH1,H2の距離は近い。すなわち比較するヒストグラムH1,H2が一致した場合にはコサイン類似度は、最大値の1で表される。
ヒストグラム間の距離は、上述した方法の他、例えば、Earth Mover‘s Distance(EMD)等を用いてもよい。
図16では、ヒストグラムH1(1501)と、ヒストグラム1502,1503,1504とのヒストグラム間の距離を、一例として、マンハッタン距離、ユークリッド距離、ヒストグラム交差法を用いて算出している。
マンハッタン距離とユークリッド距離については、その距離が短いほど比較するヒストグラム間は類似していると評価される。ヒストグラム交差法では、比較するヒストグラム間が類似しているほど、値が1に近づき、一致した場合、最大値1となる。
図16の表より、ヒストグラムH1(1501)と、ヒストグラムH2(1502,1503,1504)との比較では、いずれの距離計算方法を採用しても、ヒストグラムH1(1501)と、ヒストグラムH2(1503)とが類似度が最も高い。
このように、撮影画像より抽出した特徴線と、仮対応線分ペアに基づいて回転させた3Dモデルの3次元線分との画像間の類似度を、撮影画像上の特徴線の角度のヒストグラムと投影線の角度のヒストグラムとの距離を指標として、算出することができる。
このとき、ヒストグラム間の距離の値が閾値以上のとき、または閾値以下のとき、撮影画像より抽出した特徴線と、仮対応線分ペアに基づいて回転させた3Dモデルの3次元線分との対応関係が正しいと推定することができる。この場合、ペア推定部604は、仮対応線分ペアが対応線分の可能性があると判定する。
図7の説明に戻る。ペア推定部604は、仮対応線分ペアが対応線分の可能性がある場合は、線分の位置関係から他の対応線分のペアを探す(ステップ708)。上述したように、カメラの位置・姿勢を決定するためには、3次元線分と、特徴線とのペアが少なくとも4ペア必要である。ここでは、ペア推定部604は、仮対応線分ペア(1ペア)の他に、3ペアの対応線分を探す。具体的には、ペア推定部604は、対応線分の可能性があると判定した仮対応線分ペアを固定した場合に他の対応する線分同士の角度や位置に基づいて、他の対応線分3ペアを探す。
対応線分ペアが4ペア以上見つかった場合、視点推定部605は、その対応線分ペアの対応付け結果に基づいて、対象物の画像から3次元空間内における対象物に対するカメラ視点の位置及び方向(カメラ位置姿勢)を算出する(ステップ709)。それから、視点推定部605は、算出したカメラ位置姿勢に対して、特徴線と3次元線分を撮影画像に投影した投影線との誤差を算出する。それから、視点推定部605は、ステップ704〜ステップ709を繰り返し、誤差が最小となるカメラ位置姿勢を選択して出力する。
このような画像処理装置601によれば、物体の画像と物体の形状を表す形状情報とを対応付けるための計算量を削減することができる。以下では、本実施形態の実施例について詳述する。
図17は、本実施形態(実施例1)における画像処理装置の一例を示す図である。画像処理装置1701は、3Dモデル読込部1702、3次元線分抽出部1703、画像取得部1704、特徴線検出部1705、ペア推定部1706、位置計算部1707、誤差計算部1708、決定部1709、出力部1710を含む。
画像処理装置1701は、タブレット、ノート型PC、スマートデバイス等の携帯端末装置であってもよく、デスクトップ型PC等の情報処理装置であってもよい。
撮像装置1740は、例えば、カメラであり、物体を撮影して撮像画像1722を生成する。画像取得部1704は、撮像装置1740よって撮像された撮影画像1722を取得して、記憶部1721に格納する。記憶部1721は、撮像画像1722、3Dモデル1723、特徴線1725、3次元線分1726、対応線分ペア1727、粗パラメータ1728、指標1729及びパラメータ1730を記憶する。
3Dモデル読込部1702は、撮影対象物に対応する3Dモデル1723を読み込み、記憶部1721に格納する。3Dモデル1723は、上述の通り、3次元形状情報の一例であって、物体の3次元形状を表す複数の頂点の頂点情報と、複数の線分の線分情報とを含む。頂点情報は、物体の各頂点の3次元座標を含み、線分情報は、各線分の両端の頂点を示す識別情報を含む。
3次元線分抽出部1703は、3Dモデル1723における物体の輪郭線(3次元線分)を抽出し、3次元線分1726として記憶部1721に格納する。3次元線分抽出部1703は、上述の3次元線分抽出部602に対応する。
特徴線検出部1705は、エッジ検出処理を行って、撮影画像1722から複数のエッジ線を検出し、検出したエッジ線を特徴線1725として記憶部1721に格納する。特徴線検出部1705は、上述の特徴線抽出部603に対応する。
ペア推定部1706は、検出した複数の特徴線から1つの特徴線と、抽出した複数の3次元線分から1つの3次元線分を選択して対応線分ペアを推定し、推定した対応線分ペアに基づいて他の対応線分ペアも推定する。本実施形態では、ペア推定部1706は、図7のステップ703〜ステップ708の処理を行って、N(ここで、N≧4)対の対応線分ペア1727を推定し、記憶部1721に記憶する。ペア推定部1706は、上述のペア推定部604に対応する。
位置計算部1707は、選択された対応線分ペアを用いてカメラの位置・姿勢の推定値(ここでの推定値は、誤差修正前の値なので、以下、「粗推定値」と称する)を算出する。すなわち、位置計算部1707は、N対の対応線分ペア1727を用いて、撮影画像1722を撮影したときの撮像装置1740の位置及び姿勢の粗推定値を計算し、計算した粗推定値を粗パラメータ1728として記憶部1721に格納する。
このとき、位置計算部1707は、撮像装置1740の位置及び姿勢を表す粗推定値の変数を所定値ずつ変更しながら、各対応線分ペアに含まれる3次元線分を撮影画像1722上に投影することで、投影線を生成する。
誤差計算部1708は、算出したカメラ位置姿勢の粗推定値に対して、特徴線と3次元線分を撮影画像に投影した投影線との誤差を算出する。すなわち、誤差計算部1708は、位置計算部1707が生成した投影線の位置と、その対応線分ペアに含まれる特徴線の位置との間のずれを表す誤差を計算する。そして、位置計算部1707は、誤差計算部1708が計算した誤差の総和が最小となる変数の値を、粗パラメータ1728として求める。
位置計算部1707は、N個の対応線分ペアの選択を変更しながら、粗パラメータ1728を計算する処理を複数回繰り返す。
決定部1709は、ペア推定部1706、位置算出部1707、及び誤差計算部1708の処理を所定の回数もしくは所定の誤差未満になるまで繰り返し実行し、誤差が最小となるカメラ位置姿勢を推定値として決定する。
すなわち、決定部1709は、粗パラメータ1728が計算される度に、その粗パラメータ1728が表す撮像装置1740の位置及び姿勢を用いて、位置計算部1707が選択したN個の対応線分ペアに含まれる3次元線分を撮影画像1722上に投影する。これにより、決定部1709は、N本の投影線を生成する。そして、決定部1709は、誤差計算部1708と同様にして、N本の投影線の位置とN本の特徴線の位置との間の誤差の総和を計算し、計算した誤差の総和を指標1729として記憶部1721に格納する。
次に、決定部1709は、それぞれの粗パラメータ1728を用いて計算した指標1729に基づいて、誤差の総和が最小となるN個の対応線分ペアを決定する。これらのN個の対応線分ペアは、対応付け結果に対応する。そして、決定部1709は、決定したN個の対応線分ペアを用いて、3次元空間内における撮像装置1740の位置及び姿勢を計算し、計算した位置及び姿勢をパラメータ1730として記憶部1721に格納する。
位置計算部1707、誤差計算部1708及び決定部1709は、上述の視点推定部605に対応する。出力部1710は、パラメータ1730を処理結果として出力する。
このような画像処理装置1701によれば、ユーザが選択操作を行うことなく、3Dモデル1723から検出された3次元線分と撮影画像1722から検出された特徴線との対応線分ペアを自動的に生成することができる。このとき、生成部1707によって、対応線分ペアの生成に用いる3次元線分及び特徴線が絞り込まれるため、総当たり計算を行う場合と比較して、少なくとも4対の対応線分ペアを決定するための計算量が大幅に削減される。
図18は、本実施形態(実施例1)におけるペア推定部の機能ブロック図である。ペア推定部1706は、特徴線選択部1801、3次元線分選択部1802、初期設定部1803、回転制御部1804、特徴線角度ヒストグラム生成部1805、投影線角度ヒストグラム生成部1806として機能する。さらに、ペア推定部1706は、ヒストグラム距離算出部1807、及び仮ペア判定部1808として機能する。
特徴線選択部1801は、特徴線抽出部1705により検出された複数の特徴線からいずれか1つの特徴線を選択する。3次元線分選択部1802は、3次元線分抽出部1703により抽出された複数の3次元線分からいずれか1つの3次元線分を選択する。
初期設定部1803は、図9及び図10で説明したように、選択した3次元線分が選択した特徴線と同じ方向に見えるように、3Dモデル1723を回転させる。
回転制御部1804は、図12で説明したように、選択した3次元線分の投影方向が変わらないように3Dモデル1723を回転させる。すなわち、回転制御部1804は、線分Lmdlを軸としておよび、線分Limgとカメラ視点とがなす平面の法線nを軸として、3Dモデル1723を所定角度ずつ回転させる。
特徴線角度ヒストグラム生成部1805は、図7のステップ707で説明したように、特徴線抽出部1705により検出された複数の特徴線の方向(角度)についてのヒストグラムH1を算出する。
投影線角度ヒストグラム生成部1806は、図7のステップ707で説明したように、複数の3次元線分により形成される3Dモデル1723を投影面に投影した場合の3Dモデルの投影線の方向(角度)についてのヒストグラムH2を算出する。
ヒストグラム距離算出部1807は、図7のステップ707で説明したように、徴線の角度についてのヒストグラムH1と3Dモデルの投影線の方向(角度)のヒストグラムH2との距離を算出する。
仮ペア判定部1808は、ヒストグラム間の距離から選択した3次元線分と選択した特徴線との組み合わせが正しい対応関係の可能性があるかを判定する。正しい対応関係の可能性がある場合には、仮ペア判定部1808は、その選択した3次元線分とその選択した特徴線との組み合わせを基準として、他の3次元線分の投影線の位置関係と特徴線との位置関係性をチェックして、仮対応線分ペアの正当性を判定する。
図19は、本実施形態(実施例1)における画像処理の具体例を示すフローチャートである。まず、3Dモデル読込部1702は、3Dモデル1723を読み込み、記憶部1721に格納する(ステップ1901)。3次元線分抽出部1703は、読み込んだ3Dモデル1723から複数の3次元線分1726を抽出する(ステップ1902)。
画像取得部1704は、撮像装置1740から撮影画像1722を取得する(ステップ1903)。特徴線検出部1705は、撮影画像1722から複数の特徴線1725を検出する(ステップ1904)。
ペア推定部1706(特徴線角度ヒストグラム生成部1805)は、図7のステップ707で説明したように、検出した各特徴線の方向(角度)を算出し、d(d:整数)度単位で、角度についてのヒストグラムH1を生成する(ステップ1905)。
ペア推定部1706は、対応線分ペアの推定処理を実行する(ステップ1906)。ステップ1906の詳細については、図20を用いて説明する。
図20は、本実施形態(実施例1)における対応線分ペアの推定処理(ステップ1906)の詳細処理のフローチャートである。ペア推定部1706は、図9(b)に示すように、仮想的な空間において、適当な位置にカメラと、その視線上のおよその撮影距離に3Dモデル1723とを仮想的に配置する。
特徴線選択部1801は、ステップ1904で検出した特徴線の中から1本の特徴線Limgを選択する(ステップ2001)。3次元線分選択部1802は、ステップ1902で検出した3次元線分1726から1本の3次元線分Lmdlを選択する(ステップ2002)。
初期設定部1803は、この選択した線分Limgと線分Lmdlとのペアを、仮対応線分ペアと設定する。初期設定部1803は、図7のステップ705で説明したように、線分Lmdlが投影面上で線分Limgと平行になるように、すなわち仮対応線分ペアの角度が一致するように、3Dモデル1723を回転させる(ステップ2003)。
回転制御部1804は、図7のステップ706で説明したように、線分Lmdlを軸としておよび、線分Limgとカメラ視点とがなす平面の法線nを軸として、3Dモデル1723を所定角度ずつ回転させる。回転制御部1804は、3Dモデル1723を所定角度ずつ回転させる毎に、3Dモデル1723を投影面に投影させ、投影面上の全ての投影線の方向ベクトル(角度)を求める(ステップ2004)。
投影線角度ヒストグラム生成部1806は、図7のステップ707で説明したように、d(d:整数)度単位で、検出した各投影線の角度についてのヒストグラムH2を生成する(ステップ2005)。
ヒストグラム距離算出部1807は、図7のステップ707で説明したように、特徴線の角度についてのヒストグラムH1と、投影線の角度についてのヒストグラムH2との間の距離を算出する(ステップ2006)。
仮ペア判定部1808は、採用した距離の算出方法に応じて、算出された距離を評価する。例えば、採用した距離の算出方法がマンハッタン距離算出法やユークリッド距離算出法であるとする。このとき、算出された距離が閾値以下である場合には、仮ペア判定部1808は、仮対応線分ペアは対応線分ペアの可能性があると判定する(ステップ2007で「YES」)。算出された距離が閾値より大きい場合には、仮ペア判定部1808は、仮対応線分ペアは対応線分ペアの可能性がないと判定する(ステップ2007で「NO」)。
また、例えば、採用した距離の算出方法がヒストグラム交差法であるとする。このとき、算出された距離が閾値以上である場合には、仮ペア判定部1808は、仮対応線分ペアは対応線分ペアの可能性があると判定する(ステップ2007で「YES」)。算出された距離が閾値未満の場合には、仮ペア判定部1808は、仮対応線分ペアは対応線分ペアの可能性がないと判定する(ステップ2007で「NO」)。
仮対応線分ペアは対応線分ペアの可能性があると判定された場合、仮ペア判定部1808は、他の3対の対応線分ペアを推定する(ステップ2008)。ステップ2008については、図21で説明する。
仮対応線分ペアは対応線分ペアの可能性がないと判定された場合(ステップ2007で「NO」)、ステップ2008の処理により計4対の対応線分ペアが見つからなかった場合(ステップ2009で「NO」)、ステップ2010の処理が行われる。すなわち、仮ペア判定部1808は、3Dモデル1723を回転させた場合の全ての位置について、ステップ2003以降の処理が済んだかを判定する。3Dモデル1723を回転させた場合の全ての位置とは、図12で説明したように、3次元線分Lmdlを軸として、線分Limgとカメラ視点とがなす平面の法線nを軸として、各軸について3Dモデル1723を、例えば1度ずつ回転させて場合の全ての位置を表す。
3Dモデル1723を回転させた場合の全ての位置について処理が完了していない場合(ステップ2010で「NO」)、回転制御部1804は、処理が完了していない位置に3Dモデル1723を回転させる(ステップ2003)。
計4対の対応線分ペアが見つからない場合に、3Dモデル1723を回転させた場合の全ての位置について処理が完了するまで、仮ペア判定部1808は、ステップ2003〜ステップ2010の処理を繰り返す。
3Dモデル1723を回転させた場合の全ての位置について処理が完了した場合(ステップ2010で「YES」)、仮ペア判定部1808は、未選択の3次元線分があるかを判定する(ステップ2011)。未選択の3次元線分がある場合には(ステップ2011で「YES」)、3次元線分選択部1802は、その未選択の3次元線分の中から1本を選択して、ステップ2002以降の処理を行う。
計4対の対応線分ペアが見つからない場合に、全ての3次元線分について処理が完了するまで、仮ペア判定部1808は、ステップ2002〜ステップ2011の処理を繰り返す。
計4対の対応線分ペアが見つからない場合に、全ての3次元線分について処理が完了した場合(ステップ2011で「NO」)、特徴線選択部1801は、未選択の特徴線の中から1本を選択して、ステップ2001以降の処理を行う。
計4対の対応線分ペアが見つからない場合に、全ての特徴線について処理が完了するまで、仮ペア判定部1808は、ステップ2001〜ステップ2011の処理を繰り返す。
計4対の対応線分ペアが見つかった場合(ステップ2009で「YES」)、ペア推定部1706は、本フローを終了する。
図21は、本実施形態(実施例1)における他の3対の対応線分ペアを推定する処理(ステップ2008)の詳細処理のフローチャートである。ステップ2002で設定した仮対応線分ペアは特徴線Limgと3次元線分Lmdlで形成されている。ここで、図21の説明の便宜上、特徴線Limgを第1の特徴線といい、3次元線分Lmdlの投影線を第1の投影線という。また、特徴線Limgと3次元線分Lmdlとのペア、すなわち対応線分ペアの可能性があると判定された仮対応線分ペアを、第1の対応線分ペアと称する。
仮ペア判定部1808は、ステップ2004で得られた3Dモデル1723の投影線の中から(但し、第1の投影線を除く)、エッジの角度が特徴線と一致している投影線を第2の投影線として選択する(ステップ2101)。
仮ペア判定部1808は、ステップ1904で検出した特徴線の中から(但し、第1の特徴線を除く)、ステップ2101で選択した投影線と角度が一致する特徴線を第2の特徴線として選択する(ステップ2102)。このとき、仮ペア判定部1808は、第2の特徴線と、第2の投影線に対応する3次元線分とのペアを第2の対応線分ペアと推定する。
仮ペア判定部1808は、スケーリング調整処理を行う(ステップ2103)。カメラのZ方向は暫定値を用いてこれまで処理を行っていたので、ペア推定部1706は、3Dモデルの投影サイズを調整する。
仮ペア判定部1808は、ステップ2004で得られた3Dモデル1723の投影線の中から(但し、第1の投影線及び第2の投影線を除く)、エッジの角度が特徴線と一致している投影線を第3の投影線として選択する(ステップ2104)。
仮ペア判定部1808は、ステップ1904で検出した特徴線の中から(但し、第1の特徴線及び第2の特徴線を除く)、第3の投影線と角度及び位置が適合する特徴線、すなわち第3の特徴線があるかを判定する(ステップ2105)。
第3の特徴線がない場合(ステップ2105で「NO」)、仮ペア判定部1808は、未選択の投影線について、ステップ2101以降の処理を行う。すなわち、仮ペア判定部1808は、未選択の投影線の中から(但し、第1の投影線を除く)、エッジの角度が特徴線と一致している投影線を第2の投影線として選択し(ステップ2101)、上記と同様に処理を繰り返す。
第3の特徴線がある場合(ステップ2105で「YES」)、仮ペア判定部1808は、第3の特徴線と、第3の投影線に対応する3次元線分とのペアを第3の対応線分ペアと推定する。
それから、仮ペア判定部1808は、ステップ2004で得られた3Dモデル1723の投影線の中から(但し、第1〜第3の投影線を除く)、エッジの角度及び位置が特徴線と適合している投影線を第4の投影線として選択する(ステップ2106)。
仮ペア判定部1808は、ステップ1904で検出した特徴線の中から(但し、第1〜第3の特徴線を除く)、第4の投影線と角度及び位置が適合する特徴線、すなわち第4の特徴線があるかを判定する(ステップ2107)。
第4の特徴線がある場合(ステップ2107で「YES」)、仮ペア判定部1808は、第4の特徴線と、第4の投影線に対応する3次元線分とのペアを第4の対応線分ペアと推定する。この場合、仮ペア判定部1808は、計4対の対応線分ペアが存在すると判定する(ステップ2110)。
第4の特徴線がない場合(ステップ2107で「NO」)、仮ペア判定部1808は、未選択の投影線について、ステップ2101以降の処理を行う(ステップ2108で「NO」)。すなわち、仮ペア判定部1808は、未選択の投影線の中から(但し、第1の投影線を除く)、エッジの角度が特徴線と一致している投影線を第2の投影線として選択し(ステップ2101)、上記と同様に処理を繰り返す。全ての投影線(但し、第1の投影線を除く)について、ステップ2101〜ステップ2108の処理を行う。
全ての投影線(但し、第1の投影線を除く)について、ステップ2101〜ステップ2108の処理が完了した場合(ステップ2108で「YES」)、仮ペア判定部1808は、計4対の対応線分ペアが存在しないと判定する(ステップ2109)。
図19の説明に戻る。対応線分ペアの推定処理(ステップ1906)後、位置計算部1707は、N(本実施例ではN=4)対の対応線分ペア1727を用いて粗カメラ位置姿勢を示すパラメータ(以下、「粗パラメータ」と称する)を算出する(ステップ1907)。粗カメラ位置姿勢とは、誤差を含むカメラ位置姿勢を示す。
図22は、本実施形態(実施例1)における対応線分ペアの例を示す図である。この例では、3次元線分2211〜3次元線分2214が特徴線2201〜特徴線2204とそれぞれ対応付けられて、4個の対応線分ペアが形成されている。
ステップ1907において、位置計算部1707は、例えば、最小二乗法を用いて粗パラメータ1728を計算することができる。この場合、位置計算部1707は、撮像装置1740の位置及び姿勢を表す変数を所定値ずつ変更しながら、各対応線分ペアに含まれる3次元線分を撮影画像1722上に投影することで、投影線を生成する。
誤差計算部1708は、投影線の位置と、その対応線分ペアに含まれる特徴線の位置との誤差Ei(i=1〜N)を評価し、4個の対応線分ペアに対する二乗誤差の総和Eが最小となる変数の値を、粗パラメータ1728として求める。二乗誤差の総和Eは、次式(11)により計算される。
誤差計算部1708は、例えば、図23または図24に示すような方法で、誤差Eiを計算することができる。図23は、投影線と特徴線との間の領域の面積に基づく計算方法の例を示している。i番目の対応線分ペアに含まれる投影線が線分2301であり、特徴線が線分2302である場合、線分2301の両端と線分2302の両端とをそれぞれ結ぶ線分2303及び線分2304を定義することができる。この場合、線分2301〜線分2304によって囲まれた領域の面積Aiを、誤差Eiとして用いることができる。
Ei=Ai (12)
面積Aiが小さいほど、誤差Eiは小さくなり、線分2301が線分2302に重なっている場合、誤差Eiは0になる。
図24は、投影線と特徴線との間の距離に基づく計算方法の例を示している。線分2302の両端から線分2301上へ下ろした垂線2401及び垂線2402の長さを、それぞれ、Li1及びLi2とする。この場合、Li1及びLi2の和を、誤差Eiとして用いることができる。
Ei=Li1+Li2 (13)
Li1及びLi2が短いほど、誤差Eiは小さくなり、線分2301が線分2302に重なっている場合、誤差Eiは0になる。
次に、決定部1709は、粗パラメータ1728が表す撮像装置1740の位置及び姿勢を用いて、N個の対応線分ペアに含まれる3次元線分を撮影画像1722上に投影することで、N本の投影線を生成する(ステップ1908)。
次に、決定部1709は、N本の投影線の位置とN本の特徴線の位置との間の誤差の総和を表す指標1729を計算し(ステップ1909)、指標1729の計算を所定回数行ったか否かをチェックする(ステップ1910)。指標1729の計算を所定回数行っていない場合(ステップ1910で「No」)、位置計算部1707は、N個の対応線分ペアの選択を変更し(ステップ1906)、画像処理装置1701は、ステップ1907以降の処理を繰り返す。
指標1729の計算を所定回数行った場合(ステップ1910で「Yes」)、決定部1709は、誤差の総和が最小となるN個の対応線分ペアを選択する(ステップ1911)。そして、決定部1709は、それらの対応線分ペアに基づいてカメラ位置姿勢を示すパラメータ(以下、「パラメータ」と称する)1730を計算する(ステップ1912)。そして、出力部1710は、選択されたN個の対応線分ペア及びパラメータ1730を出力する(ステップ1913)。
本実施形態の画像処理によれば、N個の対応線分ペアの選択を自動的に変更しながら指標1729の計算を繰り返すことで、誤差の総和が最小となるN個の対応線分ペアを求めることができる。これにより、ユーザによる選択操作の作業時間が削減され、処理時間が短縮されるとともに、撮像装置1740の位置及び姿勢の推定精度が向上する。
また、ヒューマンエラーに起因する選択ミスがなくなるため、選択のやり直しによる処理時間の増加が発生しない。熟練者でなくても最適なN個の対応線分ペアを求めることができるため、対応付け結果を適用する作業の種類及び対象者を拡大することが可能になる。
なお、図19のステップ1910において、画像処理装置1701は、指標1729の計算を所定回数行った場合に繰り返し処理を打ち切る代わりに、指標1729が表す誤差が所定値よりも小さくなった場合に繰り返し処理を打ち切ってもよい。
また、ステップ1907及びステップ1909において、画像処理装置1701は、投影線の位置と特徴線の位置との間の誤差の代わりに、投影線と特徴線との間の類似度を評価してもよい。投影線と特徴線との間の類似度としては、例えば、特許文献3に記載された2本の線分の類似度を用いることができる。この場合、ステップ1907において、類似度の総和が最大となる粗パラメータ1728が求められ、ステップ1911において、類似度の総和が最大となるN個の対応線分ペアが選択される。
ところで、ステップ911において選択されたN個の対応線分ペアの誤差の総和が最小であったとしても、各投影線が各特徴線を180度回転させた線分を表していることがある。
図25は、180度回転した線分の例を示している。図25の投影線及び特徴線のうち、投影線2512は、特徴線2502と重なっている。一方、投影線2511、投影線2513、及び投影線2514は、投影線2512を軸として、特徴線2502、特徴線2503、及び特徴線2504をそれぞれ180度回転させた線分に対応する。この場合、式(12)の面積Aiはほぼ0になるため、誤差の総和が最小になる可能性がある。
そこで、このような対応付けを禁止するために、決定部1709は、次のような条件を満たすN個の対応線分ペアの中から、誤差の総和が最小となるN個の対応線分ペアを選択してもよい。
(C11)N本の投影線のうち、所定の割合の投影線が撮像画像1722内に含まれている。
(C12)N本の投影線のうち、所定の割合の投影線が撮像画像1722内の所定位置の近傍に存在する。
(C13)撮像画像1722の面積に対するN本の投影線の分布範囲の割合が所定値以上である。
図26は、粗パラメータ1728の計算に適していない3次元線分の例を示す図である。図26(a)は、互いに平行な4本の3次元線分を示している。4本の3次元線分が平行である場合、矢印2601の方向に3次元線分を並行移動させても誤差が変化せず、3次元線分の位置を固定することが困難になることがある。
図26(b)は、同一直線上に存在する2本の3次元線分を示している。2本の3次元線分が同一直線上に存在する場合、矢印2602の方向に3次元線分を拡大又は縮小させても誤差が変化せず、スケールを固定することが困難になることがある。
そこで、図9のステップ906において、ペア推定部1706は、次のような条件を満たすN本の3次元線分を選択して、N個の対応線分ペアを生成してもよい。
(C21)N本の3次元線分のうち少なくとも2本の3次元線分は平行ではない。
(C22)N本の3次元線分のうちいずれの2本の3次元線分も同一直線上に存在しない。
同様の理由から、ペア推定部1706は、次のような条件を満たすN本の特徴線を選択して、N個の対応線分ペアを生成してもよい。
(C31)N本の特徴線のうち少なくとも2本の特徴線は平行ではない。
(C32)N本の特徴線のうちいずれの2本の特徴線も同一直線上に存在しない。
次に、本実施形態(実施例2)について説明する。実施例1では、対応線分ペアの推定処理(ステップ1906)において、対応線分ペアを見つけるに際し、特徴線及び3次元線分を順次検索した。それに対して、実施例2では、より適切な対応線分ペアが得られる期待値を上げると共に、より早く対応線分ペアが得られるように、特徴線及び3次元線分を選択する。
実施例2の画像処理装置は、図17の画像処理装置のペア推定部1706の機能が一部相違し、それ以外の構成、機能及び処理は、特段の言及がない限り、実施例1と同じである。また、実施例2において、実施例1と同様の構成、機能及び処理については、同一の符号で示し、その説明を省略する。
図27は、本実施形態(実施例2)におけるペア推定部の機能ブロック図である。図27は、図18のペア推定部の機能ブロック図に、特徴線グループ作成部2703、3次元線分グループ作成部2704が追加され、特徴線選択部1801が特徴線選択部2701に置換され、3次元選択部1802が3次元選択部2702に置換されている。
特徴線グループ作成部2701は、図19のステップ1904において検出された特徴線を、同一方向(平行)のもの同士でグループ化する。このとき、同一方向の程度に関しては、一定の誤差は許容されるものとする。グループ化された特徴線を特徴線グループと称する。
3次元線分グループ作成部2704は、図19のステップ1902において検出された3次元線分を、同一方向(平行)のもの同士でグループ化する。グループ化された3次元線分を3次元線分グループと称する。
特徴線選択部2701は、特徴線グループ内の特徴線の数が多い特徴線グループから選択する。特徴線選択部2701は、選択した特徴線グループに含まれるすべての特徴線の長さが所定の範囲内である場合には、選択した特徴線グループにおいて外側から特徴線を選択する。特徴線選択部2701は、選択した特徴線グループに含まれるいずれかの特徴線の長さが所定の範囲を超える場合には、選択した特徴線グループから最も長い特徴線を選択する。
3次元選択部2702は、複数の3次元線分グループから、選択された特徴線グループに含まれる特徴線の数以上でより近い数の3次元線分を含む3次元線分グループが1つの場合には、その1つの3次元線分グループを選択する。3次元選択部2702は、特徴線の数以上でより近い数の3次元線分を含む3次元線分グループが複数存在する場合には最も長い3次元線分を含む3次元線分グループを選択する。3次元選択部2702は、特徴線の数以上の3次元線分を含む3次元線分グループが存在しない場合には、選択された特徴線グループに含まれる特徴線の数未満でより近い数の3次元線分を含む3次元線分グループを選択する。3次元選択部2702は、選択した3次元線分グループから最も長い3次元線分を選択する。
なお、ヒストグラム距離で仮対応が否定された場合、仮ペア判定部1808は、他の3次元線分グループから次の仮対応線分ペアを選択する。仮ペア判定部1808は、他の対応線分ペアが見つからず仮対応が否定された場合、仮ペア判定部1808は、同一の3次元線分グループの3次元線分で近傍の回転角の方向ベクトル分布から対応線分ペアを探索する。
図28は、本実施形態(実施例2)における画像処理の具体例を示すフローチャートである。図28のフローチャートは、図19のフローチャートに、ステップ2801及びステップ2802を追加したものである。
ステップ1901〜ステップ1905の処理後、特徴線グループ作成部2701は、図19のステップ1904において検出された特徴線を、同一方向(平行)のもの同士でグループ化する(ステップ2801)。このとき、同一方向の程度に関しては、一定の誤差は許容されるものとする。
3次元線分グループ作成部2704は、図19のステップ1902において検出された3次元線分を、同一方向(平行)のもの同士でグループ化する(ステップ2802)。
その後、ステップ1906以降の処理を行う。但し、実施例2では、ステップ1906の処理内のステップ2001及びステップ2002について改良されているので、以下ではこれらについて説明する。
図29は、本実施形態(実施例2)における特徴線選択(ステップ2001)の詳細フローチャートである。図29は、図20の特徴線選択(ステップ2001)を詳細にしたフローチャートである。
特徴線選択部2701は、未選択の特徴線グループのうち、特徴線を最も多く保有している特徴線グループを選択する(ステップ2901)。
特徴線選択部2701は、選択した特徴線グループに含まれる特徴線同士の長さが同じ程度であるか否かを判定する(ステップ2902)。例えば、選択した特徴線グループに含まれる特徴線の長さの標準偏差を算出して、全ての特徴線の長さが所定の範囲以内に収まる場合には、特徴線選択部2701は、全ての特徴線の長さは同程度であると判定する。例えば、選択した特徴線グループに含まれる特徴線の長さの標準偏差を算出して、選択した特徴線グループに含まれる全ての特徴線の長さが所定の範囲以内に収まらない場合には、特徴線選択部2701は、全ての特徴線の長さは同程度でないと判定する。
ステップ2902において、全ての特徴線の長さは同程度でないと判定した場合(ステップ2902で「NO」)、特徴線選択部2701は、選択した特徴線グループにおいて、未選択の特徴線のうち、最も長い特徴線を選択する(ステップ2903)。長い特徴線から選択するのは、長い線分ほどその線分の角度精度が高いためである。
ステップ2902において、全ての特徴線の長さは同程度であると判定した場合(ステップ2902で「YES」)、特徴線選択部2701は、選択した特徴線グループにおいて、未選択の特徴線のうち、最も外側にある特徴線を第1の特徴線として選択する(ステップ2904)。外側の線分から選択するのは、他に選択する線分との相対距離が長くなることが期待でき、結果的に間違った対応の場合のズレが大きく出ることが期待できるためである。
ここで外側の特徴線から選択する方法としては、例えば、外周線から先に選択する方法ある。ここで、外周線か否かは、例えば平行な複数の線分のグループにおいて、ある特徴線の一方の側に特徴線があって、他方の側には特徴線がないかで判断することができる。
図30は、本実施形態(実施例2)における外側の特徴線から選択する方法について説明する図である。図30において、特徴線3001,3002,3003は、およそ平行なもの同士なので、同一グループである。このとき、特徴線3002は、その両側に特徴線3001,3003があるから、外周線に該当しない。一方、特徴線3003の左側には特徴線3102があるが、特徴線3003の左側には特徴線がないので、特徴線3103は、外周線に該当する。
また、外側の特徴線から選択する他の方法としては、例えば、同じ長さの外周線が複数ある場合、もしくは、外周線ではない線分から選ぶ方法がある。例えば、特徴線選択部2701は、全線分の中点の重心との距離が遠い特徴線から選択してもよい。また、例えば、線分を延長した直線上の任意の点と他の線分上の任意の点との間の最大距離が長い特徴線から選択してもよい。
図31は、本実施形態(実施例2)における3次元線分選択(ステップ2002)の詳細処理のフローチャートである。図31は、図20の特徴線選択(ステップ2002)を詳細にしたフローチャートである。
3次元線分選択部2702は、未選択の3次元線分グループのうち、選択した特徴線グループ内の特徴線の本数以上の本数を有する3次元線分グループがあるかを判定する(ステップ3101)。
未選択の3次元線分グループのうち、選択した特徴線グループ内の特徴線の本数(M1)以上の本数を有する3次元線分グループがある場合(ステップ3101で「YES」)、3次元線分選択部2702は、次を行う。すなわち、3次元線分選択部2702は、M1以上M1に最も近い本数(M2)を有する3次元線分グループを選択する(ステップ3103)。選択の結果、M1以上でM1に最も近い本数(M2)を有する3次元線分グループが1グループ選択された場合(ステップ3104で「YES」)、3次元線分選択部2702は、ステップ3106の処理を行う。
選択の結果、M1以上でM1に最も近い本数(M2)を有する3次元線分グループが複数グループ選択された場合(ステップ3104で「NO」)、3次元線分選択部2702は、より長い3次元線分を有する3次元線分グループを選択する(ステップ3105)。
未選択の3次元線分グループのうち、選択した特徴線グループ内の特徴線の本数(M1)以上の本数を有する3次元線分グループがない場合(ステップ3101で「NO」)、3次元線分選択部2702は、次を行う。すなわち、3次元線分選択部2702は、未選択の3次元線分グループのうち、選択した特徴線グループ内の特徴線の本数(M1)未満で最も近い本数を有する3次元線分グループを選択する(ステップ3102)。
ステップ3104で「YES」の場合、ステップ3102が終了した場合、またはステップ3105が終了した場合、3次元線分選択部2702は、選択した3次元線分グループ内の未選択の3次元線分のうち最も長い3次元線分を選択する(ステップ3106)。
ステップ3103で、M1≦M2となる3次元線分グループを選択するのは、特徴線数は対応する3次元線分数以下の場合が多いからである。なお、誤グルーピングがある場合は反転する。
ステップ3105で、長い3次元線分から選択するのは、特徴線を長いものから選んでいるため、3次元線分も長いことが期待されるためである。3次元線分グループが見つからない場合M1>M2からも探すのは、誤グルーピングの可能性もあるためである。
3次元線分グループから長いものから選択するのは、特徴線を長いものから選んでいるので、3次元線分も長いものから選んだ方が、正しい対応が早く見つかる期待値が高いためである。
3次元線分について、ステップ3102,3103,3105で選択したグループの3次元線分が、方向ベクトルの分布で仮対応線分ペアが全ての角度で否定された場合(図20のステップ2007で「NO」)、仮ペア判定部1808は、次を行う。すなわち、仮ペア判定部1808は、他の3次元線分グループから次の対応線分ペアを選択する。他の3次元線分グループから次の対応線分ペアを選択するのは、その3次元線分グループの線分は平行なので、そのどれかを軸として回転した線分の傾きの分布は、同グループ内の他の線分を軸として回転させた線分の傾きとほぼ同じになる。そのため、選択した線分が分布で否決された場合は同グループ内の他の線分も否決される可能性が極めて高いためである。
対応線分ペアが見つからず対応線分ペアが否定された場合(図20のステップ2009で「NO」)、仮ペア判定部1808は、同一の3次元線分グループ内の3次元線分で近傍の回転角の方向ベクトル分布から対応線分ペアを探索する。ここで、近傍の回転角とは、ステップ2007で「YES」の場合の回転角度の近傍を示す。
同一3次元線分グループ内の3次元線分で近傍の回転角の方向ベクトル分布が探索される。ここで、その3次元線分グループの線分は平行なので、そのどれかを軸として回転した線分の傾きの分布は、同一3次元線分グループ内の他の線分を軸として回転させた線分の傾きとほぼ同じになる。そのため、対応線分ペアを見つけるためには、近傍の角度を探索すれば十分である。
図32は、本実施形態(実施例2)における対応線分を選択する方法を説明するための図である。図32(a)は、撮影画像1722より検出された特徴線の例を示す。図32(b)は、3Dモデルにおいて検出された3次元線分を示す。
(S11)図32(a)において、特徴線3201〜3203のグループと、特徴線3204〜3206のグループがそれぞれ3本の特徴線を有する。
(S12)特徴線選択部2701は、その2つのグループのうち、最も長い特徴線を有する特徴線3201〜3203のグループを選択するとする。
(S13)3次元線分選択部2702は、3次元線分の本数が3本のグループはないので、4本の3次元線分3211〜3214から、3次元線分を選択する。
(S14)最も長い3次元線分3211は、他対応線分ペア推定処理(ステップ2008)において、他線分との位置関係で、選択することができない。
(S15)同一グループの3次元線分から2番目に長い3次元線分3212を選択することは、可能である。
次に、特徴線選択部2701は、上記S12で、グループ3204〜3206を選択するとする。
(S13’)3次元線分の本数が3本のグループはないので、3次元線分選択部2702は、4本の3次元線分3211〜3214から、3次元線分を選択する。
(S14’)選択した3次元線分のうち最も長い3次元線分3211は3Dモデルを回転させた全ての角度で、対応線分ペアの可能性がない(図21のステップ1907で「NO」)。そこで、3次元線分選択部2702は、5本の3次元線分3215〜3219から選択するとする。この場合、図20のステップ2007で「YES」になるか、または対応線分ペアが見つからず対応線分ペアが否定される(ステップ2009で「NO」)。
(S15’)この場合、仮ペア判定部1808は、同一3次元線分グループ内の3次元線分3215〜3219で近傍の回転角の方向ベクトル分布に基づいて、対応線分ペアを探索する。
実施例2によれば、3次元線分の選択時の正しい対応線分ペアが得られる期待値を上げ、かつ対応線分ペアの探索処理を高速化することができる。
図17の画像処理装置1701の構成は一例に過ぎず、画像処理装置1701の用途又は条件に応じて一部の構成要素を省略又は変更してもよい。例えば、撮影画像1722から特徴線1725を検出する処理が画像処理装置1701の外部の装置によって行われる場合は、図17の特徴線検出部1705を省略することができる。
3Dモデル1723から3次元線分1726を抽出する処理が外部の装置によって行われる場合は、3次元線分抽出部1703を省略することができる。
図33は、本実施形態(実施例1、実施例2)における画像処理装置1701として用いられる情報処理装置(コンピュータ)の構成例を示す図である。情報処理装置3300は、Central Processing Unit(CPU)3301、メモリ3302、入力装置3303、出力装置3304、補助記憶装置3305、媒体駆動装置3306、及びネットワーク接続装置3307を含む。これらの構成要素はバス3308により互いに接続されている。図17の撮像装置1740は、バス3308に接続されていてもよい。
メモリ3302は、例えば、Read Only Memory(ROM)、Random Access Memory(RAM)、フラッシュメモリ等の半導体メモリであり、画像処理に用いられるプログラム及びデータを格納する。メモリ3302は、図17の記憶部1721として用いることができる。
CPU3301(プロセッサ)は、例えば、メモリ3302を利用してプログラムを実行することにより、ペア推定部1706及び決定部1709として動作する。さらに、CPU3301は、図17の3Dモデル読込部1702、3次元線分抽出部1703、画像取得部1704、特徴線検出部1705、位置計算部1707、誤差計算部1708としても動作する。
入力装置3303は、例えば、キーボード、ポインティングデバイス等であり、オペレータ又はユーザからの指示又は情報の入力に用いられる。出力装置3304は、例えば、表示装置、プリンタ、スピーカ等であり、オペレータ又はユーザへの問い合わせ又は指示、及び処理結果の出力に用いられる。処理結果は、決定部613が決定したN個の対応線分ペアであってもよい。出力装置3304は、図17の出力部1710として用いることができる。
補助記憶装置3305は、例えば、磁気ディスク装置、光ディスク装置、光磁気ディスク装置、テープ装置等である。補助記憶装置3305は、ハードディスクドライブであってもよい。情報処理装置は、補助記憶装置3305にプログラム及びデータを格納しておき、それらをメモリ3302にロードして使用することができる。補助記憶装置3305は、図17の記憶部1721として用いることができる。
媒体駆動装置3306は、可搬型記録媒体3309を駆動し、その記録内容にアクセスする。可搬型記録媒体3309は、メモリデバイス、フレキシブルディスク、光ディスク、光磁気ディスク等である。可搬型記録媒体3309は、Compact Disk Read Only Memory(CD−ROM)、Digital Versatile Disk(DVD)、Universal Serial Bus(USB)メモリ等であってもよい。オペレータ又はユーザは、この可搬型記録媒体3309にプログラム及びデータを格納しておき、それらをメモリ3302にロードして使用することができる。
このように、画像処理に用いられるプログラム及びデータを格納するコンピュータ読み取り可能な記録媒体は、メモリ3302、補助記憶装置3305、又は可搬型記録媒体3309のような、物理的な(非一時的な)記録媒体である。
ネットワーク接続装置3307は、Local Area Network、Wide Area Network等の通信ネットワークに接続され、通信に伴うデータ変換を行う通信インタフェースである。情報処理装置は、プログラム及びデータを外部の装置からネットワーク接続装置3307を介して受信し、それらをメモリ3302にロードして使用することができる。ネットワーク接続装置3307は、図17の出力部1710として用いることができる。
なお、情報処理装置が図33のすべての構成要素を含む必要はなく、用途又は条件に応じて一部の構成要素を省略することも可能である。例えば、可搬型記録媒体3309又は通信ネットワークを使用しない場合は、媒体駆動装置3306又はネットワーク接続装置3307を省略してもよい。
開示の実施形態とその利点について詳しく説明したが、当業者は、特許請求の範囲に明確に記載した本発明の範囲から逸脱することなく、様々な変更、追加、省略をすることができるであろう。
上述した実施形態に関し、さらに以下の付記を開示する。
(付記1)
物体の3次元形状を示す3次元形状情報から、該3次元形状を形成する複数の3次元線分を抽出する3次元線分抽出部と、
撮像装置により対象物を撮影した撮影画像から、該対象物の形状の特徴を示す複数の特徴線を抽出する特徴線抽出部と、
前記複数の特徴線の角度についての分布を示す第1の分布と、前記複数の3次元線分を投影面に投影して得られる複数の投影線の角度についての分布を示す第2の分布との間の距離に基づいて、該複数の特徴線のうちの第1の特徴線と前記複数の3次元線分のうちの第1の3次元線分との1対のペアを推定すると共に、推定した該1対のペアに基づいて前記特徴線と前記3次元線分とのペアを少なくとも3対推定するペア推定部と、
推定された少なくとも4対のペアに基づいて、前記撮影画像から3次元空間内における該対象物に対する前記撮像装置の位置及び方向を推定する視点推定部と、
を備えることを特徴とする画像処理装置。
(付記2)
前記ペア推定部は、抽出した前記複数の特徴線から前記第1の特徴線を選択し、抽出した前記複数の3次元線分から前記第1の3次元線分を選択し、
仮想空間において、前記3次元形状を回転させて前記第1の特徴線と前記第1の3次元線分とを一致させ、
前記第1の特徴線と前記第1の3次元線分とを一致させた前記3次元形状を、該第1の3次元線分と、該第1の特徴線と前記撮像装置の視点とがなす平面に対する法線と、をそれぞれ回転軸として、前記3次元形状を所定角度ずつ回転させ、
回転させる毎に前記複数の3次元線分を前記投影面に投影して得られる複数の投影線の角度についての前記第2の分布を生成し、生成した複数の該第2の分布のそれぞれと、前記第1の分布との間の距離に応じて、前記1対のペアを推定する
ことを特徴とする付記1に記載の画像処理装置。
(付記3)
前記ペア推定部は、前記1対のペアである第1のペアを推定した場合、該第1のペアを形成する前記第1の3次元線分の第1の投影線以外の前記複数の投影線から、該1対のペアを形成する前記第1の特徴線以外の第2の特徴線と角度が一致している第2の投影線を取得し、該第2の投影線に対応する第2の3次元線分と該第2の特徴線とを選択し、該第2の3次元線分と該第2の特徴線を第2のペアと推定し、
前記第1の投影線及び前記第2の投影線以外の前記複数の投影線から、前記第1の特徴線及び前記第2の特徴線以外の第3の特徴線と角度と位置が一致している第3の投影線を取得し、該第3の投影線に対応する第3の3次元線分と該第3の特徴線とを選択し、該第3の3次元線分と該第3の特徴線を第3のペアと推定し、
前記第1の投影線、前記第2の投影線及び前記第3の投影線以外の前記複数の投影線から、前記第1の特徴線、前記第2の特徴線及び前記第3の特徴線以外の第4の特徴線と角度と位置が一致している第4の投影線を取得し、該第4の投影線に対応する第4の3次元線分と該第4の特徴線を選択し、該第4の3次元線分と該第4の特徴線を第4のペアと推定する
ことを特徴とする付記1又は2に記載の画像処理装置。
(付記4)
前記ペア推定部は、前記撮影画像より抽出した前記複数の特徴線を同一方向毎にグループ化して複数の特徴線グループを形成し、前記複数の3次元線分を同一方向毎にグループ化して複数の3次元線分グループを形成し、
それぞれの特徴線グループに含まれる前記特徴線の数、該それぞれの特徴線グループに含まれる前記特徴線の長さ、及びそれぞれの特徴線グループにおける特徴線の位置のうち少なくとも1つの条件に基づいて、前記第1の特徴線を選択し、
それぞれの3次元線分グループに含まれる3次元線分の数、及び該それぞれの3次元線分グループに含まれる前記3次元線分の長さのうち少なくとも1つの条件に基づいて、前記第1の3次元線分を選択する、
ことを特徴とする付記1〜3のうちいずれか1項に記載の画像処理装置。
(付記5)
前記ペア推定部は、前記撮影画像より抽出した前記複数の特徴線を同一方向毎にグループ化して複数の特徴線グループを形成し、前記複数の3次元線分を同一方向毎にグループ化して複数の3次元線分グループを形成し、
前記複数の特徴線グループから、最も多く特徴線を含む特徴線グループを選択し、
選択した前記特徴線グループに含まれるすべての特徴線の長さが所定の範囲内である場合には前記選択した特徴線グループにおいて外周線に対応する特徴線を前記第1の特徴線として選択し、選択した前記特徴線グループに含まれるいずれかの特徴線の長さが前記所定の範囲を超える場合には選択した前記特徴線グループから最も長い特徴線を前記第1の特徴線として選択し、
前記複数の3次元線分グループから、前記選択された特徴線グループに含まれる前記特徴線の数以上でより近い数の3次元線分を含む3次元線分グループが1つの場合には該1つの3次元線分グループを選択し、前記特徴線の数以上でより近い数の3次元線分を含む3次元線分グループが複数存在する場合には最も長い3次元線分を含む3次元線分グループを選択し、前記特徴線の数以上の3次元線分を含む3次元線分グループが存在しない場合には前記選択された特徴線グループに含まれる前記特徴線の数未満でより近い数の3次元線分を含む3次元線分グループを選択し、
選択した前記3次元線分グループから最も長い3次元線分を前記第1の3次元線分として選択する
ことを特徴とする付記1〜3のうちいずれか1項に記載の画像処理装置。
(付記6)
コンピュータに、
物体の3次元形状を示す3次元形状情報から、該3次元形状を形成する複数の3次元線分を抽出し、
撮像装置により対象物を撮影した撮影画像から、該対象物の形状の特徴を示す複数の特徴線を抽出し、
前記複数の特徴線の角度についての分布を示す第1の分布と、前記複数の3次元線分を投影面に投影して得られる複数の投影線の角度についての分布を示す第2の分布との間の距離に基づいて、該複数の特徴線のうちの第1の特徴線と前記複数の3次元線分のうちの第1の3次元線分との1対のペアを推定すると共に、推定した該1対のペアに基づいて前記特徴線と前記3次元線分とのペアを少なくとも3対推定し、
推定された少なくとも4対のペアに基づいて、前記撮像画像から3次元空間内における該対象物に対する前記撮像装置の位置及び方向を推定する
処理を実行させる画像処理プログラム。
(付記7)
前記1対のペアを推定する場合、
抽出した前記複数の特徴線から前記第1の特徴線を選択し、抽出した前記複数の3次元線分から前記第1の3次元線分を選択し、
仮想空間において、前記3次元形状を回転させて前記第1の特徴線と前記第1の3次元線分とを一致させ、
前記第1の特徴線と前記第1の3次元線分とを一致させた前記3次元形状を、該第1の3次元線分と、該第1の特徴線と前記撮像装置の視点とがなす平面に対する法線と、をそれぞれ回転軸として、前記3次元形状を所定角度ずつ回転させ、
回転させる毎に前記複数の3次元線分を前記投影面に投影して得られる複数の投影線の角度についての前記第2の分布を生成し、生成した複数の該第2の分布のそれぞれと、前記第1の分布との間の距離に応じて、前記1対のペアを推定する
ことを特徴とする付記6に記載の画像処理プログラム。
(付記8)
前記1対のペアである第1のペアを推定した場合、該第1のペアを形成する前記第1の3次元線分の第1の投影線以外の前記複数の投影線から、該1対のペアを形成する前記第1の特徴線以外の第2の特徴線と角度が一致している第2の投影線を取得し、該第2の投影線に対応する第2の3次元線分と該第2の特徴線とを選択し、該第2の3次元線分と該第2の特徴線を第2のペアと推定し、
前記第1の投影線及び前記第2の投影線以外の前記複数の投影線から、前記第1の特徴線及び前記第2の特徴線以外の第3の特徴線と角度と位置が一致している第3の投影線を取得し、該第3の投影線に対応する第3の3次元線分と該第3の特徴線とを選択し、該第3の3次元線分と該第3の特徴線を第3のペアと推定し、
前記第1の投影線、前記第2の投影線及び前記第3の投影線以外の前記複数の投影線から、前記第1の特徴線、前記第2の特徴線及び前記第3の特徴線以外の第4の特徴線と角度と位置が一致している第4の投影線を取得し、該第4の投影線に対応する第4の3次元線分と該第4の特徴線を選択し、該第4の3次元線分と該第4の特徴線を第4のペアと推定する
ことを特徴とする付記6又は7に記載の画像処理プログラム。
(付記9)
前記1対のペアを推定する場合、
前記撮影画像より抽出した前記複数の特徴線を同一方向毎にグループ化して複数の特徴線グループを形成し、前記複数の3次元線分を同一方向毎にグループ化して複数の3次元線分グループを形成し、
それぞれの特徴線グループに含まれる前記特徴線の数、該それぞれの特徴線グループに含まれる前記特徴線の長さ、及びそれぞれの特徴線グループにおける特徴線の位置のうち少なくとも1つの条件に基づいて、前記第1の特徴線を選択し、
それぞれの3次元線分グループに含まれる3次元線分の数、及び該それぞれの3次元線分グループに含まれる前記3次元線分の長さのうち少なくとも1つの条件に基づいて、前記第1の3次元線分を選択する、
ことを特徴とする付記6〜8のうちいずれか1項に記載の画像処理プログラム。
(付記10)
前記1対のペアを推定する場合、
前記撮影画像より抽出した前記複数の特徴線を同一方向毎にグループ化して複数の特徴線グループを形成し、前記複数の3次元線分を同一方向毎にグループ化して複数の3次元線分グループを形成し、
前記複数の特徴線グループから、最も多く特徴線を含む特徴線グループを選択し、
選択した前記特徴線グループに含まれるすべての特徴線の長さが所定の範囲内である場合には前記選択した特徴線グループにおいて外周線に対応する特徴線を前記第1の特徴線として選択し、選択した前記特徴線グループに含まれるいずれかの特徴線の長さが前記所定の範囲を超える場合には選択した前記特徴線グループから最も長い特徴線を前記第1の特徴線として選択し、
前記複数の3次元線分グループから、前記選択された特徴線グループに含まれる前記特徴線の数以上でより近い数の3次元線分を含む3次元線分グループが1つの場合には該1つの3次元線分グループを選択し、前記特徴線の数以上でより近い数の3次元線分を含む3次元線分グループが複数存在する場合には最も長い3次元線分を含む3次元線分グループを選択し、前記特徴線の数以上の3次元線分を含む3次元線分グループが存在しない場合には前記選択された特徴線グループに含まれる前記特徴線の数未満でより近い数の3次元線分を含む3次元線分グループを選択し、
選択した前記3次元線分グループから最も長い3次元線分を前記第1の3次元線分として選択する
ことを特徴とする付記6〜8のうちいずれか1項に記載の画像処理プログラム。
(付記11)
コンピュータが、
物体の3次元形状を示す3次元形状情報から、該3次元形状を形成する複数の3次元線分を抽出し、
撮像装置により対象物を撮影した撮影画像から、該対象物の形状の特徴を示す複数の特徴線を抽出し、
前記複数の特徴線の角度についての分布を示す第1の分布と、前記複数の3次元線分を投影面に投影して得られる複数の投影線の角度についての分布を示す第2の分布との間の距離に基づいて、該複数の特徴線のうちの第1の特徴線と前記複数の3次元線分のうちの第1の3次元線分との1対のペアを推定すると共に、推定した該1対のペアに基づいて前記特徴線と前記3次元線分とのペアを少なくとも3対推定し、
推定された少なくとも4対のペアに基づいて、前記撮像画像から3次元空間内における該対象物に対する前記撮像装置の位置及び方向を推定する
ことを特徴とする画像処理方法。
(付記12)
前記1対のペアを推定する場合、
抽出した前記複数の特徴線から前記第1の特徴線を選択し、抽出した前記複数の3次元線分から前記第1の3次元線分を選択し、
仮想空間において、前記3次元形状を回転させて前記第1の特徴線と前記第1の3次元線分とを一致させ、
前記第1の特徴線と前記第1の3次元線分とを一致させた前記3次元形状を、該第1の3次元線分と、該第1の特徴線と前記撮像装置の視点とがなす平面に対する法線と、をそれぞれ回転軸として、前記3次元形状を所定角度ずつ回転させ、
回転させる毎に前記複数の3次元線分を前記投影面に投影して得られる複数の投影線の角度についての前記第2の分布を生成し、生成した複数の該第2の分布のそれぞれと、前記第1の分布との間の距離に応じて、前記1対のペアを推定する
ことを特徴とする付記11に記載の画像処理方法。
(付記13)
前記1対のペアである第1のペアを推定した場合、該第1のペアを形成する前記第1の3次元線分の第1の投影線以外の前記複数の投影線から、該1対のペアを形成する前記第1の特徴線以外の第2の特徴線と角度が一致している第2の投影線を取得し、該第2の投影線に対応する第2の3次元線分と該第2の特徴線とを選択し、該第2の3次元線分と該第2の特徴線を第2のペアと推定し、
前記第1の投影線及び前記第2の投影線以外の前記複数の投影線から、前記第1の特徴線及び前記第2の特徴線以外の第3の特徴線と角度と位置が一致している第3の投影線を取得し、該第3の投影線に対応する第3の3次元線分と該第3の特徴線とを選択し、該第3の3次元線分と該第3の特徴線を第3のペアと推定し、
前記第1の投影線、前記第2の投影線及び前記第3の投影線以外の前記複数の投影線から、前記第1の特徴線、前記第2の特徴線及び前記第3の特徴線以外の第4の特徴線と角度と位置が一致している第4の投影線を取得し、該第4の投影線に対応する第4の3次元線分と該第4の特徴線を選択し、該第4の3次元線分と該第4の特徴線を第4のペアと推定する
ことを特徴とする付記11又は12に記載の画像処理方法。
(付記14)
前記1対のペアを推定する場合、
前記撮影画像より抽出した前記複数の特徴線を同一方向毎にグループ化して複数の特徴線グループを形成し、前記複数の3次元線分を同一方向毎にグループ化して複数の3次元線分グループを形成し、
それぞれの特徴線グループに含まれる前記特徴線の数、該それぞれの特徴線グループに含まれる前記特徴線の長さ、及びそれぞれの特徴線グループにおける特徴線の位置のうち少なくとも1つの条件に基づいて、前記第1の特徴線を選択し、
それぞれの3次元線分グループに含まれる3次元線分の数、及び該それぞれの3次元線分グループに含まれる前記3次元線分の長さのうち少なくとも1つの条件に基づいて、前記第1の3次元線分を選択する、
ことを特徴とする付記11〜13のうちいずれか1項に記載の画像処理方法。
(付記15)
前記1対のペアを推定する場合、
前記撮影画像より抽出した前記複数の特徴線を同一方向毎にグループ化して複数の特徴線グループを形成し、前記複数の3次元線分を同一方向毎にグループ化して複数の3次元線分グループを形成し、
前記複数の特徴線グループから、最も多く特徴線を含む特徴線グループを選択し、
選択した前記特徴線グループに含まれるすべての特徴線の長さが所定の範囲内である場合には前記選択した特徴線グループにおいて外周線に対応する特徴線を前記第1の特徴線として選択し、選択した前記特徴線グループに含まれるいずれかの特徴線の長さが前記所定の範囲を超える場合には選択した前記特徴線グループから最も長い特徴線を前記第1の特徴線として選択し、
前記複数の3次元線分グループから、前記選択された特徴線グループに含まれる前記特徴線の数以上でより近い数の3次元線分を含む3次元線分グループが1つの場合には該1つの3次元線分グループを選択し、前記特徴線の数以上でより近い数の3次元線分を含む3次元線分グループが複数存在する場合には最も長い3次元線分を含む3次元線分グループを選択し、前記特徴線の数以上の3次元線分を含む3次元線分グループが存在しない場合には前記選択された特徴線グループに含まれる前記特徴線の数未満でより近い数の3次元線分を含む3次元線分グループを選択し、
選択した前記3次元線分グループから最も長い3次元線分を前記第1の3次元線分として選択する
ことを特徴とする付記11〜13のうちいずれか1項に記載の画像処理方法。
601 画像処理装置
602 3次元線分抽出部
603 特徴線抽出部
604 ペア推定部
605 視点推定部
1701 画像処理装置
1702 3Dモデル読込部
1703 3次元線分抽出部
1704 画像取得部
1705 特徴線検出部
1706 ペア推定部
1707 位置計算部
1708 誤差計算部
1709 決定部
1710 出力部
1721 記憶部
1722 撮像画像
1723 3Dモデル
1725 特徴線
1726 3次元線分
1727 対応線分ペア
1728 粗パラメータ
1729 指標
1730 パラメータ
1801 特徴線選択部
1802 3次元線分選択部
1803 初期設定部
1804 回転制御部
1805 特徴線角度ヒストグラム生成部
1806 投影線角度ヒストグラム生成部
1807 ヒストグラム距離算出部
1808 仮ペア判定部
2701 特徴線選択部
2702 3次元選択部
2703 特徴線グループ作成部
2704 3次元線分グループ作成部

Claims (7)

  1. 物体の3次元形状を示す3次元形状情報から、該3次元形状を形成する複数の3次元線分を抽出する3次元線分抽出部と、
    撮像装置により対象物を撮影した撮影画像から、該対象物の形状の特徴を示す複数の特徴線を抽出する特徴線抽出部と、
    前記複数の特徴線の角度についての分布を示す第1の分布と、前記複数の3次元線分を投影面に投影して得られる複数の投影線の角度についての分布を示す第2の分布との間の距離に基づいて、該複数の特徴線のうちの第1の特徴線と前記複数の3次元線分のうちの第1の3次元線分との1対のペアを推定すると共に、推定した該1対のペアに基づいて前記特徴線と前記3次元線分とのペアを少なくとも3対推定するペア推定部と、
    推定された少なくとも4対のペアに基づいて、前記撮像画像から3次元空間内における該対象物に対する前記撮像装置の位置及び方向を推定する視点推定部と、
    を備えることを特徴とする画像処理装置。
  2. 前記ペア推定部は、抽出した前記複数の特徴線から前記第1の特徴線を選択し、抽出した前記複数の3次元線分から前記第1の3次元線分を選択し、
    仮想空間において、前記3次元形状を回転させて前記第1の特徴線と前記第1の3次元線分とを一致させ、
    前記第1の特徴線と前記第1の3次元線分とを一致させた前記3次元形状を、該第1の3次元線分と、該第1の特徴線と前記撮像装置の視点とがなす平面に対する法線と、をそれぞれ回転軸として、前記3次元形状を所定角度ずつ回転させ、
    回転させる毎に前記複数の3次元線分を前記投影面に投影して得られる複数の投影線の角度についての前記第2の分布を生成し、生成した複数の該第2の分布のそれぞれと、前記第1の分布との間の距離に応じて、前記1対のペアを推定する
    ことを特徴とする請求項1に記載の画像処理装置。
  3. 前記ペア推定部は、前記1対のペアである第1のペアを推定した場合、該第1のペアを形成する前記第1の3次元線分の第1の投影線以外の前記複数の投影線から、該1対のペアを形成する前記第1の特徴線以外の第2の特徴線と角度が一致している第2の投影線を取得し、該第2の投影線に対応する第2の3次元線分と該第2の特徴線とを選択し、該第2の3次元線分と該第2の特徴線を第2のペアと推定し、
    前記第1の投影線及び前記第2の投影線以外の前記複数の投影線から、前記第1の特徴線及び前記第2の特徴線以外の第3の特徴線と角度と位置が一致している第3の投影線を取得し、該第3の投影線に対応する第3の3次元線分と該第3の特徴線とを選択し、該第3の3次元線分と該第3の特徴線を第3のペアと推定し、
    前記第1の投影線、前記第2の投影線及び前記第3の投影線以外の前記複数の投影線から、前記第1の特徴線、前記第2の特徴線及び前記第3の特徴線以外の第4の特徴線と角度と位置が一致している第4の投影線を取得し、該第4の投影線に対応する第4の3次元線分と該第4の特徴線を選択し、該第4の3次元線分と該第4の特徴線を第4のペアと推定する
    ことを特徴とする請求項1又は2に記載の画像処理装置。
  4. 前記ペア推定部は、前記撮影画像より抽出した前記複数の特徴線を同一方向毎にグループ化して複数の特徴線グループを形成し、前記複数の3次元線分を同一方向毎にグループ化して複数の3次元線分グループを形成し、
    それぞれの特徴線グループに含まれる前記特徴線の数、該それぞれの特徴線グループに含まれる前記特徴線の長さ、及びそれぞれの特徴線グループにおける特徴線の位置のうち少なくとも1つの条件に基づいて、前記第1の特徴線を選択し、
    それぞれの3次元線分グループに含まれる3次元線分の数、及び該それぞれの3次元線分グループに含まれる前記3次元線分の長さのうち少なくとも1つの条件に基づいて、前記第1の3次元線分を選択する、
    ことを特徴とする請求項1〜3のうちいずれか1項に記載の画像処理装置。
  5. 前記ペア推定部は、前記撮影画像より抽出した前記複数の特徴線を同一方向毎にグループ化して複数の特徴線グループを形成し、前記複数の3次元線分を同一方向毎にグループ化して複数の3次元線分グループを形成し、
    前記複数の特徴線グループから、最も多く特徴線を含む特徴線グループを選択し、
    選択した前記特徴線グループに含まれるすべての特徴線の長さが所定の範囲内である場合には前記選択した特徴線グループにおいて外周線に対応する特徴線を前記第1の特徴線として選択し、選択した前記特徴線グループに含まれるいずれかの特徴線の長さが前記所定の範囲を超える場合には選択した前記特徴線グループから最も長い特徴線を前記第1の特徴線として選択し、
    前記複数の3次元線分グループから、前記選択された特徴線グループに含まれる前記特徴線の数以上でより近い数の3次元線分を含む3次元線分グループが1つの場合には該1つの3次元線分グループを選択し、前記特徴線の数以上でより近い数の3次元線分を含む3次元線分グループが複数存在する場合には最も長い3次元線分を含む3次元線分グループを選択し、前記特徴線の数以上の3次元線分を含む3次元線分グループが存在しない場合には前記選択された特徴線グループに含まれる前記特徴線の数未満でより近い数の3次元線分を含む3次元線分グループを選択し、
    選択した前記3次元線分グループから最も長い3次元線分を前記第1の3次元線分として選択する
    ことを特徴とする請求項1〜3のうちいずれか1項に記載の画像処理装置。
  6. コンピュータに、
    物体の3次元形状を示す3次元形状情報から、該3次元形状を形成する複数の3次元線分を抽出し、
    撮像装置により対象物を撮影した撮影画像から、該対象物の形状の特徴を示す複数の特徴線を抽出し、
    前記複数の特徴線の角度についての分布を示す第1の分布と、前記複数の3次元線分を投影面に投影して得られる複数の投影線の角度についての分布を示す第2の分布との間の距離に基づいて、該複数の特徴線のうちの第1の特徴線と前記複数の3次元線分のうちの第1の3次元線分との1対のペアを推定すると共に、推定した該1対のペアに基づいて前記特徴線と前記3次元線分とのペアを少なくとも3対推定し、
    推定された少なくとも4対のペアに基づいて、前記撮像画像から3次元空間内における該対象物に対する前記撮像装置の位置及び方向を推定する
    処理を実行させる画像処理プログラム。
  7. コンピュータが、
    物体の3次元形状を示す3次元形状情報から、該3次元形状を形成する複数の3次元線分を抽出し、
    撮像装置により対象物を撮影した撮影画像から、該対象物の形状の特徴を示す複数の特徴線を抽出し、
    前記複数の特徴線の角度についての分布を示す第1の分布と、前記複数の3次元線分を投影面に投影して得られる複数の投影線の角度についての分布を示す第2の分布との間の距離に基づいて、該複数の特徴線のうちの第1の特徴線と前記複数の3次元線分のうちの第1の3次元線分との1対のペアを推定すると共に、推定した該1対のペアに基づいて前記特徴線と前記3次元線分とのペアを少なくとも3対推定し、
    推定された少なくとも4対のペアに基づいて、前記撮像画像から3次元空間内における該対象物に対する前記撮像装置の位置及び方向を推定する
    ことを特徴とする画像処理方法。
JP2017237961A 2017-12-12 2017-12-12 画像処理装置、画像処理プログラム及び画像処理方法 Pending JP2019105992A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017237961A JP2019105992A (ja) 2017-12-12 2017-12-12 画像処理装置、画像処理プログラム及び画像処理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017237961A JP2019105992A (ja) 2017-12-12 2017-12-12 画像処理装置、画像処理プログラム及び画像処理方法

Publications (1)

Publication Number Publication Date
JP2019105992A true JP2019105992A (ja) 2019-06-27

Family

ID=67062403

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017237961A Pending JP2019105992A (ja) 2017-12-12 2017-12-12 画像処理装置、画像処理プログラム及び画像処理方法

Country Status (1)

Country Link
JP (1) JP2019105992A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6715542B1 (ja) * 2019-10-28 2020-07-01 株式会社センシンロボティクス 飛行体、点検方法及び点検システム
CN113920160A (zh) * 2021-09-17 2022-01-11 北京航空航天大学 初始位姿的估计方法、设备、计算机可读介质和程序产品

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6715542B1 (ja) * 2019-10-28 2020-07-01 株式会社センシンロボティクス 飛行体、点検方法及び点検システム
CN113920160A (zh) * 2021-09-17 2022-01-11 北京航空航天大学 初始位姿的估计方法、设备、计算机可读介质和程序产品

Similar Documents

Publication Publication Date Title
CN107810522B (zh) 实时、基于模型的对象检测及姿态估计
Zeisl et al. Camera pose voting for large-scale image-based localization
JP6216508B2 (ja) 3dシーンにおける3d物体の認識および姿勢決定のための方法
US9177404B2 (en) Systems and methods of merging multiple maps for computer vision based tracking
US10580148B2 (en) Graphical coordinate system transform for video frames
US9633281B2 (en) Point cloud matching method
JP6716996B2 (ja) 画像処理プログラム、画像処理装置、及び画像処理方法
US9626552B2 (en) Calculating facial image similarity
JP6880618B2 (ja) 画像処理プログラム、画像処理装置、及び画像処理方法
US12026827B2 (en) Method, apparatus, system, and storage medium for 3D reconstruction
JP2019114103A (ja) 物体認識処理装置、物体認識処理方法及びプログラム
CN113506373A (zh) 实时的行李三维建模方法、电子设备和存储介质
JP2019105992A (ja) 画像処理装置、画像処理プログラム及び画像処理方法
JP5734000B2 (ja) 物体識別システムおよび方法、並びに、特徴点位置抽出システムおよび方法
JP2019106008A (ja) 推定装置、推定方法、及び推定プログラム
JP2006113832A (ja) ステレオ画像処理装置およびプログラム
Polic et al. Uncertainty based camera model selection
JP5030183B2 (ja) 3次元物***置姿勢計測方法
JP2019159470A (ja) 推定装置、推定方法、及び推定プログラム
WO2017042852A1 (en) Object recognition appratus, object recognition method and storage medium
JP6946912B2 (ja) 推定プログラム、推定装置、及び推定方法
JP7265143B2 (ja) 表示制御方法、表示制御プログラムおよび情報処理装置
JP6092012B2 (ja) 物体識別システムおよび物体識別方法
JP6278757B2 (ja) 特徴量生成装置、特徴量生成方法、およびプログラム
JP6935207B2 (ja) 物体判定装置、物体判定方法、およびプログラム