JP2020135446A - 画像処理装置及び画像処理方法 - Google Patents

画像処理装置及び画像処理方法 Download PDF

Info

Publication number
JP2020135446A
JP2020135446A JP2019028428A JP2019028428A JP2020135446A JP 2020135446 A JP2020135446 A JP 2020135446A JP 2019028428 A JP2019028428 A JP 2019028428A JP 2019028428 A JP2019028428 A JP 2019028428A JP 2020135446 A JP2020135446 A JP 2020135446A
Authority
JP
Japan
Prior art keywords
line
feature
image
line segments
projection
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
JP2019028428A
Other languages
English (en)
Other versions
JP7232663B2 (ja
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 JP2019028428A priority Critical patent/JP7232663B2/ja
Publication of JP2020135446A publication Critical patent/JP2020135446A/ja
Application granted granted Critical
Publication of JP7232663B2 publication Critical patent/JP7232663B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

【課題】物体の形状情報に含まれる線分とその物体の画像から検出された特徴線とを対応付ける処理の操作性を向上させる。【解決手段】抽出部112は、形状情報121に含まれる複数の線分の中から、複数の対象線分を抽出する。投影部113は、形状情報121に含まれる複数の線分を画像122の画像平面上に投影することで、複数の投影線を生成する。検出部114は、画像122から複数の特徴線を検出し、選択部115は、各対象線分に対する対応付け候補の特徴線を、複数の特徴線の中から選択する。表示部116は、物体の形状と画像122とを画面上に表示するとともに、各対象線分の投影線と対応付け候補の特徴線とを表示する。生成部117は、表示された投影線と特徴線とを対応付ける指示に基づいて、対象線分と特徴線との組み合わせを生成する。【選択図】図1

Description

本発明は、画像処理装置及び画像処理方法に関する。
近年、拡張現実(Augmented Reality, AR)技術を用いて画像を表示するシステムが普及してきている。AR技術の一例では、パーソナルコンピュータ(Personal Computer,PC)、携帯端末装置等に搭載したカメラを用いて物体が撮影され、物体の画像から3次元空間内におけるカメラの位置及び姿勢が推定される。そして、決定されたカメラの位置及び姿勢を基準にして、画像中の任意の位置にコンテンツ情報が重畳表示される。
AR技術の応用として、物体の3次元形状を表すCAD(Computer-Aided Design)データを画像に重畳表示する技術も知られている(例えば、特許文献1及び特許文献2を参照)。線対面の対応関係又は線の対応関係から、物体又はカメラの位置及び姿勢を決定する技術も知られている(例えば、非特許文献1〜非特許文献4を参照)。
特開2017−91078号公報 特開2017−182302号公報
J. Z. C. Lai,"Sensitivity Analysis of Line Correspondence", IEEE Transactions on Systems, Man, and Cybernetics VOL. 25, NO. 6, pages 1016-1023, 1995 H. H. Chen,"Pose Determination from Line-to-Plane Correspondences: Existence Condition and Closed-Form Solutions", [1990] Proceedings Third International Conference on Computer Vision, Osaka, Japan, pages 374-378, 1990 L. Zhang et al.,"Robust and Efficient Pose Estimation from Line Correspondences", ACCV 2012, Part III, LNCS 7726, pages 217-230, 2013. 廣瀬他,"線分記述子(LEHF)を用いた実時間SLAM", TVRSJ Vol. l7, No. 3, pages 201?208, 2012
物体の画像から検出された複数の特徴線と、その物体のCADデータに含まれる複数の線分を画像上に投影した複数の投影線とを対応付けることで、撮像装置の位置及び姿勢を推定することができる。しかしながら、ユーザが目視による手作業で特徴線と投影線との組み合わせを選択する場合、適切な組み合わせを選択する操作は困難である。このため、ユーザによる操作に時間がかかるとともに、特徴線と投影線との誤った組み合わせが選択される可能性もある。
なお、かかる問題は、CADデータから撮像装置の位置及び姿勢を推定する場合に限らず、物体の形状を表す他の形状情報から撮像装置の位置及び姿勢を推定する場合においても生ずるものである。
1つの側面において、本発明は、物体の形状情報に含まれる線分とその物体の画像から検出された特徴線とを対応付ける処理の操作性を向上させることを目的とする。
1つの案では、画像処理装置は、記憶部、抽出部、投影部、検出部、選択部、表示部、及び生成部を含む。
記憶部は、3次元空間内における物体の形状を表す複数の線分を含む形状情報と、物体の画像とを記憶する。抽出部は、形状情報に含まれる複数の線分の中から、複数の対象線分を抽出する。投影部は、形状情報に含まれる複数の線分を物体の画像の画像平面上に投影することで、複数の投影線を生成する。検出部は、物体の画像から複数の特徴線を検出する。選択部は、複数の対象線分各々に対する対応付け候補の特徴線を、複数の特徴線の中から選択する。
表示部は、物体の形状と物体の画像とを画面上に表示するとともに、複数の対象線分各々の投影線と対応付け候補の特徴線とを画面上に表示する。生成部は、画面上に表示された複数の対象線分各々の投影線と対応付け候補の特徴線とを対応付ける指示に基づいて、複数の対象線分各々と対応付け候補の特徴線との組み合わせを生成する。
1つの側面において、物体の形状情報に含まれる線分とその物体の画像から検出された特徴線とを対応付ける処理の操作性を向上させることができる。
画像処理装置の機能的構成図である。 画像処理のフローチャートである。 画像処理装置の第1の具体例を示す機能的構成図である。 画面上に表示される映像を示す図である。 画像処理の第1の具体例を示すフローチャートである。 3D線分集合生成処理のフローチャートである。 近接線分の投影線を示す図である。 追加線分を示す図である。 第1の具体例における対応ペア提示処理のフローチャートである。 対応ペア候補の投影線と特徴線を示す図である。 投影線を強調する表示処理を示す図である。 選択肢を表示する画面を示す図である。 奥行き反転の不定性を示す図である。 候補表示処理のフローチャートである。 画像処理装置の第2の具体例を示す機能的構成図である。 画面上に表示される画像を示す図である。 画像処理の第2の具体例を示すフローチャートである。 第2の具体例における対応ペア提示処理のフローチャートである。 投影処理を示す図である。 画像処理装置の第3の具体例を示す機能的構成図である。 回転軸を示す図である。 情報処理装置の構成図である。
以下、図面を参照しながら、実施形態を詳細に説明する。
特許文献1の技術では、立体構造物を撮影した撮像画像から抽出されたエッジ線と、その立体構造物のモデル画像に含まれる稜線との組み合わせを用いて、画像とモデル画像とが重畳表示される。モデル画像は、立体構造物のCADデータを撮影画像上に投影することで生成され、稜線は、CADデータに含まれる線分を撮影画像上に投影した投影線に対応する。
この場合、ユーザが選択するエッジ線及び稜線は線分であるため、点よりも視認性が良い。このため、マウス等を用いてエッジ線及び稜線を選択する操作は、点を選択する操作よりも容易であり、ユーザの作業負荷が低減される。しかしながら、特許文献1には、エッジ線と稜線との適切な組み合わせを選択する方法は記載されていない。
特許文献1のように、物体の画像から検出された特徴線と、その物体のCADデータに含まれる線分を投影した投影線との組み合わせを、ユーザが目視による手作業で選択する場合、次のような問題が発生する。
ユーザが熟練者ではない場合、物体の画像とCADデータが表す物体のモデルとが表示された画面上でモデルを適切な向きに回転させる操作、及び特徴線と投影線との適切な組み合わせを選択する操作は、困難を伴う。例えば、カメラの位置及び姿勢の推定精度を向上させるためには、選択される複数の特徴線又は選択される複数の投影線に、3本の平行な特徴線又は3本の平行な投影線が含まれないことが望ましい。このため、特徴線と投影線との適切な組み合わせを選択する操作に時間がかかるとともに、特徴線と投影線との誤った組み合わせが選択される可能性もある。
一方、ユーザが特徴線及び投影線を選択する代わりに、複数の特徴線と複数の投影線との組み合わせを無作為に選択してカメラの位置及び姿勢を推定し、推定誤差が最小となる組み合わせを決定することも可能である。しかしながら、この場合、複数の特徴線と複数の投影線との組み合わせを変更しながら、カメラの位置及び姿勢を推定する処理が繰り返されるため、計算時間が長時間に及ぶことになる。
図1は、実施形態の画像処理装置の機能的構成例を示している。図1の画像処理装置101は、記憶部111、抽出部112、投影部113、検出部114、選択部115、表示部116、及び生成部117を含む。記憶部111は、3次元空間内における物体の形状を表す複数の線分を含む形状情報121と、物体の画像122とを記憶する。抽出部112、投影部113、検出部114、選択部115、表示部116、及び生成部117は、記憶部111が記憶する形状情報121及び画像122を用いて、画像処理を行う。
図2は、図1の画像処理装置101が行う画像処理の例を示すフローチャートである。まず、抽出部112は、形状情報121に含まれる複数の線分の中から、複数の対象線分を抽出する(ステップ201)。そして、投影部113は、形状情報121に含まれる複数の線分を画像122の画像平面上に投影することで、複数の投影線を生成する(ステップ202)。
次に、検出部114は、物体の画像から複数の特徴線を検出する(ステップ203)。そして、選択部115は、複数の対象線分各々に対する対応付け候補の特徴線を、複数の特徴線の中から選択する(ステップ204)。
次に、表示部116は、形状情報121が表す物体の形状と画像122とを画面上に表示するとともに、各対象線分の投影線と、その対象線分に対する対応付け候補の特徴線とを、画面上に表示する(ステップ205)。そして、生成部117は、画面上に表示された各対象線分の投影線と対応付け候補の特徴線とを対応付ける指示に基づいて、その対象線分と対応付け候補の特徴線との組み合わせを生成する(ステップ206)。
図1の画像処理装置101によれば、物体の形状情報に含まれる線分とその物体の画像から検出された特徴線とを対応付ける処理の操作性を向上させることができる。
図3は、図1の画像処理装置101の第1の具体例を示している。図3の画像処理装置301は、記憶部311、撮像装置312、抽出部313、投影部314、検出部315、選択部316、表示部317、生成部318、受付部319、推定部320、及び追跡部321を含む。
記憶部311、抽出部313、投影部314、検出部315、選択部316、表示部317、及び生成部318は、図1の記憶部111、抽出部112、投影部113、検出部114、選択部115、表示部116、及び生成部117にそれぞれ対応する。
画像処理装置101は、タブレット、スマートデバイス、ノート型PC等の携帯端末装置であってもよい。
撮像装置312は、例えば、CCD(Charged-Coupled Device)、CMOS(Complementary Metal-Oxide-Semiconductor)等の撮像素子を有するカメラであり、3次元空間内に存在する物体の画像331を撮影する。撮像装置312は、撮影した画像331を記憶部311へ出力し、記憶部311は、画像331を記憶する。画像331は、図1の画像122に対応する。撮影対象の物体は、道路、橋梁、建築物等の構造物であってもよく、船舶、車両、電子機器等の製造物であってもよい。
例えば、ユーザは、3次元空間内において画像処理装置301を動かしながら、撮像装置312により物体の映像を撮影する。このとき、ユーザは、2次元平面上の回転及び平行移動(3自由度)の範囲内で、画像処理装置301を動かしてもよい。撮像装置312は、画像処理装置301とともに動きながら、所定のフレームレートで映像を撮影し、その映像に含まれる複数時刻各々の物体の画像が、画像331として記憶部311に格納される。
記憶部311は、撮像装置312が撮影した物体の形状を表す3次元モデル(3Dモデル)332を記憶している。3Dモデル332は、図1の形状情報121に対応し、例えば、物体のCADデータである。3Dモデル332は、物体の3次元形状を表す複数の頂点の頂点情報と、複数の線分の線分情報とを含む。頂点情報は、物体の各頂点の3次元座標を含み、線分情報は、各線分の両端の頂点である端点を示す識別情報を含む。
抽出部313は、3Dモデル332に含まれる複数の線分の中から、3次元空間内における撮像装置312の位置及び姿勢を推定するために用いられる、N本(Nは3以上の整数)の対象線分を抽出する。そして、抽出部313は、抽出したN本の対象線分を含む3次元線分集合(3D線分集合)333を生成して、記憶部311に格納する。
投影部314は、3Dモデル332に含まれる複数の線分を画像331の画像平面上に投影することで、複数の投影線を生成する。
検出部315は、画像331に対するエッジ検出処理を行って、画像331から複数のエッジ線を検出し、検出したエッジ線を特徴線334として記憶部311に格納する。そして、選択部316は、3D線分集合333に含まれる各線分に対する対応付け候補の特徴線を、複数の特徴線334の中から選択する。
表示部317は、物体を撮影したリアルタイムの映像を画面上に表示し、各線分の投影線を用いて、3Dモデル332が表す物体の形状を画面上に表示する。これにより、各時刻の物体の画像331と物体の形状とが、画面上に重畳表示される。さらに、表示部317は、3D線分集合333に含まれる各線分の投影線と、その線分に対する対応付け候補の特徴線とを、画面上に表示する。
ユーザは、表示された投影線と特徴線とが対応しているか否かを確認し、それらが対応していると判断した場合、投影線と特徴線とを対応付ける指示を画像処理装置301に入力する。受付部319は、入力された指示を受け付ける。
生成部318は、入力された指示に基づいて、表示された投影線に対応する線分と表示された特徴線との組み合わせ(対応ペア)を生成し、対応ペア335として記憶部311に格納する。
追跡部321は、撮像装置312が動きながら撮影する複数時刻の画像331の間で、対応ペア335に含まれる特徴線を追跡する。そして、生成部318は、対応ペア335に含まれる特徴線を、各画像331から検出された複数の特徴線334のうち、追跡された特徴線に変更することで、対応ペア335を更新する。
表示部317は、3Dモデル332が表す物体の形状を、画面上の所定位置に固定して表示するとともに、撮像装置312の動きに応じて、複数時刻の画像331を時系列に表示する。
推定部320は、3D線分集合333に含まれるN本の線分から生成されたN個の対応ペア335の一部又は全部を用いて、3次元空間内における撮像装置312の位置及び姿勢を推定し、推定した位置及び姿勢を表す推定結果を生成する。
図4は、画像処理装置301の画面上に表示される映像の例を示している。図4(a)は、第1時刻における画面の例を示しており、図4(b)は、第2時刻における画面の例を示しており、図4(c)は、第3時刻における画面の例を示している。
いずれの時刻においても、物体の形状401は、画面の中央付近に固定して表示されており、3D線分集合333に含まれる1本の線分の投影線402が、物体の形状401に重畳して表示されている。画面右下の隅にはOKボタン403が表示されている。
図4(a)では、物体の画像411は、物体の形状401の右側の離れた位置に表示されており、図4(b)では、物体の画像412は、物体の形状401の右側の近い位置に表示されている。図4(c)では、物体の画像413は、物体の形状401に重畳して表示されている。
ユーザは、図4(a)の画面を見ながら、物体の画像411が物体の形状401に重なるように、画像処理装置301の位置及び姿勢を少しずつ変化させる。これにより、図4(b)が示すように、画面上で物体の画像412が物体の形状401に近づいていき、図4(c)が示すように、物体の画像413上に物体の形状401が重畳される。ただし、物体の画像413と物体の形状401とが完全に重なる必要はなく、投影線402に対応する画像413上の特徴線が投影線402の近くに存在していればよい。
このとき、画像処理装置301は、ユーザに対して、物体の画像が物体の形状401に重なるように画像処理装置301を動かす操作を促すメッセージを出力してもよい。出力されるメッセージは、テキストメッセージであってもよく、音声メッセージであってもよい。
画像処理装置301は、各時刻において、投影線402に対する対応付け候補の特徴線を画面上に表示し、ユーザは、投影線402と表示された特徴線とが対応していると判断した場合、OKボタン403を押す。これにより、投影線と特徴線とを対応付ける指示が画像処理装置301に入力される。このような操作を、3D線分集合333に含まれる線分毎に繰り返すことで、N個の対応ペア335が生成される。
図3の画像処理装置301によれば、対応ペア335の候補となる線分及び特徴線が自動的に提示される。このため、ユーザは、線分及び特徴線を自ら選択しなくても、画像処理装置301を動かしながらOKボタン403を押すだけで、対応ペア335が生成される。したがって、ユーザの操作負荷が削減され、ユーザが熟練者ではない場合であっても、短時間で容易に対応ペア335を生成することができる。このようにして対応ペア335を生成することで、撮像装置312の位置及び姿勢を推定する推定処理が効率化される。
図5は、図3の画像処理装置301が行う画像処理の第1の具体例を示すフローチャートである。まず、抽出部313は、3次元空間内における3Dモデル332の初期位置及び初期姿勢と、撮像装置312の初期位置及び初期姿勢とを決定する(ステップ501)。これらの初期位置及び初期姿勢は、ユーザによって指定された位置及び姿勢であってもよい。
次に、抽出部313は、3Dモデル332から線分を抽出し(ステップ502)、抽出された線分の中から、撮像装置312の位置及び姿勢の推定に適したN本の対象線分を抽出して、3D線分集合333を生成する(ステップ503)。そして、選択部316は、3D線分集合333に含まれるすべての線分を選択したか否かをチェックする(ステップ504)。
未選択の線分が存在する場合(ステップ504,NO)、画像処理装置301は、対応ペア提示処理を行う(ステップ505)。対応ペア提示処理において、投影部314は、3Dモデル332から抽出された線分の投影線を生成し、表示部317は、物体の画像331と3Dモデル332が表す物体の形状とを、画面上に表示する。
また、選択部316は、3D線分集合333から1本の線分を選択し、その線分に対する対応付け候補の特徴線を選択する。そして、表示部317は、選択された線分の投影線と対応付け候補の特徴線とを、対応ペア候補として画面上に表示する。
ユーザが対応ペア候補を確定させる指示を入力した場合、生成部318は、対応ペア候補の投影線に対応する線分と対応ペア候補の特徴線とを含む対応ペア335を生成する。そして、生成部318は、撮像装置312の位置及び姿勢を推定可能であるか否かを判定する(ステップ506)。
例えば、生成部318は、3D線分集合333からP個(3≦P≦N)の対応ペア335が生成されている場合に、撮像装置312の位置及び姿勢を推定可能であると判定することができる。
撮像装置312の位置及び姿勢を推定可能ではない場合(ステップ506,NO)、画像処理装置301は、ステップ504以降の処理を繰り返す。一方、撮像装置312の位置及び姿勢を推定可能である場合(ステップ506,YES)、推定部320は、生成されたP個の対応ペア335を用いて、撮像装置312の位置及び姿勢を推定する(ステップ507)。例えば、推定部320は、特許文献2、非特許文献2、又は非特許文献3に記載された計算方法により、撮像装置312の位置及び姿勢を計算することができる。
次に、推定部320は、撮像装置312の位置及び姿勢の推定誤差を計算し、推定誤差を閾値THと比較する(ステップ508)。例えば、推定部320は、特許文献2に記載された計算方法により、推定誤差を計算することができる。
推定誤差が閾値TH以上である場合(ステップ508,NO)、画像処理装置301は、ステップ504以降の処理を繰り返す。一方、推定誤差が閾値THよりも小さい場合(ステップ508,YES)、画像処理装置301は、処理を終了する。
図6は、図5のステップ503における3D線分集合生成処理の例を示すフローチャートである。まず、抽出部313は、最初の3D線分集合333を生成するか否かをチェックする(ステップ601)。ステップ502に続いてステップ503の処理が行われる場合、最初の3D線分集合333を生成すると判定される。一方、ステップ504に続いてステップ503の処理が行われる場合、最初の3D線分集合333ではなく、2番目以降の3D線分集合333を生成すると判定される。
最初の3D線分集合333を生成する場合(ステップ601,YES)、抽出部313は、ステップ502で抽出された線分のうち、近接線分を処理対象から除外する(ステップ602)。
図7は、近接線分の投影線の例を示している。物体の形状を表す線分の投影線のうち、投影線701と投影線702は互いに近接しており、投影線703と投影線704も互いに近接している。別の投影線に近接している投影線を持つ線分を3D線分集合333に加えた場合、その線分を無関係の特徴線と誤って対応付ける可能性がある。
そこで、抽出部313は、2本の投影線の距離が所定値よりも小さい場合、それらの投影線に対応する2本の線分を近接線分とみなして、処理対象から除外する。これにより、線分と特徴線とを誤って対応付ける可能性が低下する。
次に、抽出部313は、近接線分以外の線分から、3本の線分の集合(線分集合)を複数個生成する(ステップ603)。3本の線分の組み合わせの総数をM個とすると、最大でM個の線分集合が生成される。
次に、抽出部313は、複数個の線分集合それぞれを評価して評価値を求める(ステップ604)。線分集合を用いて推定される撮像装置312の位置及び姿勢の推定精度が高いほど、その線分集合の評価値が高くなる。例えば、抽出部313は、非特許文献1に記載されたセンシティビティ解析により、線分集合の評価値を求めることができる。
次に、抽出部313は、それらの線分集合を評価値が高い順にソートする(ステップ605)。抽出部313は、生成された線分集合のうち、所定値以上の評価値を有する線分集合のみをソートしてもよい。そして、抽出部313は、最高の評価値を有する線分集合を3D線分集合333として選択する(ステップ606)。この場合、3D線分集合333に含まれる線分の本数は、3本である。
一方、2番目以降の3D線分集合333を生成する場合(ステップ601,NO)、抽出部313は、追加線分探索を行う(ステップ607)。
追加線分探索において、抽出部313は、直前に生成された3D線分集合333に含まれる2本の線分に、3D線分集合333とは別の1本の線分を追加することで、3本の線分を含む線分集合を複数個生成する。
図8は、追加線分の例を示している。図8(a)は、ステップ602〜ステップ606の処理により生成された、最初の3D線分集合333に含まれる線分の投影線の例を示している。投影線801〜投影線803に対応する3本の線分は、最初の3D線分集合333に含まれている。
図8(b)は、最初の3D線分集合333に対して追加される第1の追加線分の投影線の例を示している。この場合、最初の3D線分集合333に含まれている3本の線分のうち、投影線802及び投影線803に対応する2本の線分が選択され、さらに投影線804に対応する1本の線分が追加されて、線分集合が生成される。
図8(c)は、最初の3D線分集合333に対して追加される第2の追加線分の投影線の例を示している。この場合、最初の3D線分集合333に含まれている3本の線分のうち、投影線801及び投影線802に対応する2本の線分が選択され、さらに投影線805に対応する1本の線分が追加されて、線分集合が生成される。
次に、抽出部313は、複数個の線分集合それぞれを評価した結果に基づいて、いずれかの線分集合を選択する。例えば、抽出部313は、ステップ604と同様にして、複数個の線分集合それぞれの評価値を求め、それらの線分集合を評価値が高い順にソートして、最高の評価値を有する線分集合を選択する。そして、抽出部313は、選択された線分集合内の追加された線分を、追加線分として抽出する。
なお、抽出部313は、追加線分探索において生成された線分集合に含まれる2本の線分に、別の1本の線分を追加することで、3本の線分を含む新たな線分集合をさらに生成し、その線分集合を含めて評価を行ってもよい。
次に、抽出部313は、直前に生成された3D線分集合333に追加線分を追加することで、3D線分集合333を更新する(ステップ608)。この場合、3D線分集合333に含まれる線分の本数は、直前に生成された3D線分集合333よりも1本だけ増加している。
図6の3D線分集合生成処理によれば、撮像装置312の位置及び姿勢の推定精度が高くなることが期待できる、3D線分集合333を生成することができる。
図9は、図5のステップ505における対応ペア提示処理の例を示すフローチャートである。まず、検出部315は、映像に含まれる処理対象の画像331を取得し(ステップ901)、取得した画像331から複数の特徴線334を検出する(ステップ902)。
次に、追跡部321は、取得した画像331と直前の時刻の画像331との間で、対応ペア335に含まれる特徴線を追跡する(ステップ903)。例えば、追跡部321は、非特許文献4に記載された線分記述子を利用して、画像間で特徴線を追跡することができる。
画像処理装置301に加速度センサ、ジャイロセンサ、地磁気センサ等のセンサが搭載されている場合、追跡部321は、センサが取得した情報に基づいて、画像処理装置301の基準位置からの位置の変化と、基準姿勢からの姿勢の変化とを推定してもよい。基準位置及び基準姿勢は、画像処理の開始時における画像処理装置301の位置及び姿勢である。この場合、追跡部321は、推定された位置及び姿勢の変化を利用して、画像間で特徴線を追跡する。
そして、生成部318は、対応ペア335に含まれる特徴線を、追跡された特徴線に変更することで、取得した画像331に対する対応ペア335を生成する。
次に、画像処理装置301は、候補表示処理を行う(ステップ904)。候補表示処理において、選択部316は、3D線分集合333から1本の線分を選択し、その線分に対する対応付け候補の特徴線を選択する。そして、表示部317は、選択された線分の投影線と対応付け候補の特徴線とを、対応ペア候補として画面上に表示する。
例えば、選択部316は、選択した線分の投影線に最も近い特徴線を、対応付け候補の特徴線として選択することができる。この場合、選択部316は、選択した線分の投影線の中点から各特徴線334に対する垂線を求め、最も短い垂線を有する特徴線334を、対応付け候補の特徴線として選択する。
図10は、対応ペア候補の投影線と特徴線の例を示している。3D線分集合333から選択された線分の投影線1001の中点1011から特徴線1002及び特徴線1003に対する垂線を求めると、特徴線1002に対する垂線の方が特徴線1003に対する垂線よりも短い。この場合、特徴線1002が、投影線1001に対する対応付け候補の特徴線として選択される。
選択された線分の投影線に最も近い特徴線を、対応付け候補の特徴線として選択することで、ユーザが特徴線を選択する操作が不要になるとともに、精度の高い対応ペア候補を提示することができる。なお、選択部316は、選択された線分の投影線と各特徴線334との角度を求め、閾値よりも小さな角度を有する特徴線334の中から、投影線に最も近い特徴線を選択してもよい。
図11は、対応ペア候補の投影線を強調する表示処理の例を示している。表示部317は、対応ペア候補の投影線1101の中点にマーク1111を表示することによって、投影線1101の中点を強調表示する。これにより、対応付け候補の特徴線1102に対する投影線1101の角度が大きい場合であっても、投影線1101と特徴線1102との位置関係を視認しやすくなる。したがって、ユーザが対応付け候補の特徴線1102を確認する作業が容易になる。
ユーザは、表示された対応ペア候補の投影線と特徴線との位置関係を確認し、投影線と特徴線とが対応していると判断した場合、OKボタン等を操作して、その対応ペア候補を確定させる指示(候補確定指示)を入力する。
選択部316は、候補確定指示が入力されたか否かをチェックする(ステップ905)。候補確定指示が入力されない場合(ステップ905,NO)、画像処理装置301は、映像に含まれる次の画像331を処理対象として、ステップ901以降の処理を繰り返す。
そして、候補確定指示が入力された場合(ステップ905,YES)、生成部318は、対応ペア候補の投影線に対応する線分と対応ペア候補の特徴線とを含む対応ペア335を生成する(ステップ906)。
図9のステップ904において、選択部316は、複数の特徴線を対応付け候補として選択することも可能である。
例えば、選択部316は、対応ペア候補の投影線に対する距離が所定値よりも小さい複数の特徴線を、対応付け候補の特徴線として選択する。そして、表示部317は、選択された複数の特徴線を、対応付け候補の選択肢として画面上に表示する。この場合、生成部318は、対応ペア候補の投影線と、選択肢として表示された複数の特徴線の中から選択された特徴線とを対応付ける指示に基づいて、対応ペア335を生成する。
図12は、対応付け候補の選択肢を表示する画面の例を示している。この例では、物体の形状1201に物体の画像1202が重畳して表示され、対応ペア候補の投影線1211に対する対応付け候補として、特徴線1212及び特徴線1213が表示されている。特徴線1212及び特徴線1213は、それぞれ、青の線分及び緑の線分として表示される。
ユーザは、固定ボタン1221を押して、物体の形状1201及び物体の画像1202の重畳表示を固定し、青ボタン1222又は緑ボタン1223のいずれかを押すことによって、特徴線1212又は特徴線1213を選択する。
このように、複数の特徴線を選択肢として表示することで、ユーザは、対応ペア候補の投影線に最も近い特徴線以外の特徴線を、その投影線に対応付けることが可能になる。なお、多数の特徴線が選択肢に含まれる場合は、それらの特徴線が複数の画面に分けて表示され、次の画面又は前の画面を選択可能な切り替えボタンが各画面上に表示される。
ところで、撮像装置312の位置及び姿勢は、通常、4個以上の対応ペアを用いて確定することができる。一方、3個の対応ペアのみを用いた場合、Bas-relief不定性の一種である奥行き反転(depth reversal)の不定性が、撮像装置312の位置及び姿勢の推定結果に含まれる。
図13は、奥行き反転の不定性の例を示している。図13(a)は、所定の視点から観察した多面体の物体1301の例を示している。この場合、物体1301の頂点1311は、物体1301の外周線よりも手前(視点と同じ側)に存在する。図13(b)は、反対側の別の視点から観察した物体1301の例を示している。この場合、物体1301の頂点1311は、物体1301の外周線よりも奥(視点の反対側)に存在する。
しかし、3個の対応ペアのみを用いた場合、視点が頂点1311と同じ側又は反対側のいずれに存在するかが定まらず、撮像装置312の位置に奥行き反転の不定性が生じる。
このように、奥行き反転の不定性が生じる場合であっても、3次元空間内における物体の位置及び姿勢が3Dモデル332の初期位置及び初期姿勢に近い、という拘束条件を用いることで、奥行き反転の推定結果を除外することができる。したがって、3個の対応ペアのみを用いて撮像装置312の位置及び姿勢を確定することも可能である。
そこで、選択部316は、3D線分集合333の線分のうち、3本の線分に対する3個の対応ペア335が生成された後に、4本目の線分に対する対応付け候補の特徴線を選択する場合、それらの対応ペア335を用いて撮像装置312の位置及び姿勢を推定する。
投影部314は、推定された撮像装置312の位置及び姿勢を用いて、4本目の線分を画像平面上に投影することで、4本目の線分の投影線を生成する。そして、選択部316は、4本目の線分の投影線に基づいて、その線分に対する対応付け候補の特徴線を選択する。
図14は、このような拘束条件を用いた場合の図9のステップ904における候補表示処理の例を示すフローチャートである。まず、選択部316は、3D線分集合333から1本の線分を処理対象として選択し、処理対象の線分が4本目以降の線分であるか否かをチェックする(ステップ1401)。
処理対象の線分が1本目〜3本目の線分である場合(ステップ1401,NO)、投影部314は、撮像装置312の初期位置及び初期姿勢を用いて、処理対象の線分を画像平面上に投影することで、処理対象の線分の投影線を生成する(ステップ1409)。そして、選択部316は、処理対象の線分の投影線を用いて、対応付け候補の特徴線を選択し(ステップ1406)、表示部317は、その投影線と特徴線とを対応ペア候補として画面上に表示する(ステップ1407)。
一方、処理対象の線分が4本目以降の線分である場合(ステップ1401,YES)、選択部316は、その線分が4本目の線分であるか否かをチェックする(ステップ1402)。処理対象の線分が4本目の線分である場合(ステップ1402,YES)、選択部316は、1本目〜3本目の線分から生成されている3個の対応ペア335を用いて、撮像装置312の位置及び姿勢を推定する(ステップ1403)。そして、選択部316は、物体の位置及び姿勢が3Dモデル332の初期位置及び初期姿勢に近い、という拘束条件を用いて、2つの推定結果のうち、正しい方の推定結果を選択する(ステップ1404)。
次に、投影部314は、選択された推定結果を用いて、処理対象の線分を画像平面上に投影することで、処理対象の線分の投影線を生成する(ステップ1405)。そして、画像処理装置301は、ステップ1406以降の処理を行う。
一方、処理対象の線分が5本目以降の線分である場合(ステップ1402,NO)、選択部316は、既に生成されている4個以上の対応ペア335を用いて、撮像装置312の位置及び姿勢を推定する(ステップ1408)。そして、画像処理装置301は、ステップ1405以降の処理を行う。
図14の候補表示処理によれば、3本の線分に対する3個の対応ペア335のみを用いて撮像装置312の位置及び姿勢を確定し、4本目の線分に対する対応付け候補の特徴線を、精度良く選択することができる。
図9のステップ904において、選択された線分に対する対応付け候補の特徴線が見つからない場合、ステップ905において、ユーザが対応ペア提示処理を終了する指示を入力してもよい。この場合、画像処理装置301は、ステップ906の処理をスキップして、図5のステップ506以降の処理を行う。
図15は、図1の画像処理装置101の第2の具体例を示している。図15の画像処理装置1501は、図3の画像処理装置301において、追跡部321を変化推定部1511に置き換えた構成を有する。
この場合、ユーザは、撮像装置312により、1時刻における物体の画像331を撮影した後、3次元空間内において画像処理装置1501を動かすことによって、3Dモデル332が表す物体の形状を画面上で変化させる。このとき、ユーザは、2次元平面上の回転及び平行移動(3自由度)の範囲内で、画像処理装置1501を動かしてもよい。
変化推定部1511は、撮像装置312の位置及び姿勢の変化を推定し、投影部314は、推定された変化に基づいて、3Dモデル332に含まれる複数の線分を画像平面上に投影することで、撮像装置312の動きに応じた複数の投影線を生成する。そして、表示部317は、画面上の所定位置に物体の画像331を表示するとともに、撮像装置312の動きに応じた複数の投影線を用いて、物体の形状を表示する。
図16は、画像処理装置1501の画面上に表示される画像の例を示している。図16(a)は、第1時刻における画面の例を示しており、図16(b)は、第2時刻における画面の例を示しており、図16(c)は、第3時刻における画面の例を示している。いずれの時刻においても、物体の画像1601は、画面の中央付近に固定して表示され、画面右下の隅にはOKボタン1603が表示されている。
図16(a)では、物体の形状1611が、物体の画像1601に重畳して表示されており、3D線分集合333に含まれる1本の線分の投影線1621が、物体の形状1611に重畳して表示されている。
図16(b)では、物体の形状1612が、物体の画像1601に重畳して表示されており、図16(a)と同じ線分の投影線1622が、物体の形状1612に重畳して表示されている。
図16(c)では、物体の形状1613が、物体の画像1601に重畳して表示されており、図16(a)と同じ線分の投影線1623が、物体の形状1613に重畳して表示されている。
物体の形状1611〜物体の形状1613は、3次元空間において同じ位置に固定されているように見える。ユーザは、図16(a)の画面を見ながら、物体の形状1611が物体の画像1601に重なるように、画像平面上で画像処理装置1501を平行に移動させる。これにより、図16(b)が示すように、画面上で物体の画像1601に対する物体の形状1612の位置が変化する。
次に、ユーザは、図16(b)の画面を見ながら、物体の形状1612が物体の画像1601に重なるように、画像平面に垂直な軸の周りに画像処理装置1501を回転させる。これにより、図16(c)が示すように、物体の形状1613が物体の画像1601に重畳される。
このとき、画像処理装置1501は、ユーザに対して、物体の形状が物体の画像1601に重なるように画像処理装置1501を動かす操作を促すメッセージを出力してもよい。
画像処理装置1501は、各時刻において、投影線に対する対応付け候補の特徴線を画面上に表示し、ユーザは、投影線と表示された特徴線とが対応していると判断した場合、OKボタン1603を押す。これにより、投影線と特徴線とを対応付ける指示が画像処理装置1501に入力される。このような操作を、3D線分集合333に含まれる線分毎に繰り返すことで、N個の対応ペア335が生成される。
図15の画像処理装置1501によれば、対応ペア335の候補となる線分及び特徴線が自動的に提示される。このため、ユーザは、線分及び特徴線を自ら選択しなくても、画像処理装置1501を動かしながらOKボタン1603を押すだけで、対応ペア335が生成される。したがって、ユーザの操作負荷が削減され、ユーザが熟練者ではない場合であっても、短時間で容易に対応ペア335を生成することができる。このようにして対応ペア335を生成することで、撮像装置312の位置及び姿勢を推定する推定処理が効率化される。
図17は、図15の画像処理装置1501が行う画像処理の第2の具体例を示すフローチャートである。図17のステップ1701及びステップ1702の処理は、図9のステップ901及びステップ902の処理と同様である。ステップ1703〜ステップ1706及びステップ1708〜ステップ1710の処理は、図5のステップ501〜ステップ504及びステップ506〜ステップ508の処理と同様である。
ステップ1707において、画像処理装置1501は、対応ペア提示処理を行う。対応ペア提示処理において、ユーザが画像処理装置1501を動かした場合、変化推定部1511は、撮像装置312の位置及び姿勢の変化を推定し、表示部317は、撮像装置312の動きに応じて、表示される物体の形状を変更する。
次に、選択部316は、3D線分集合333から1本の線分を選択し、その線分に対する対応付け候補の特徴線を選択する。そして、表示部317は、選択された線分の投影線と対応付け候補の特徴線とを、対応ペア候補として画面上に表示する。ユーザが対応ペア候補を確定させる指示を入力した場合、生成部318は、対応ペア候補の投影線に対応する線分と対応ペア候補の特徴線とを含む対応ペア335を生成する。
図18は、図17のステップ1707における対応ペア提示処理の例を示すフローチャートである。図18のステップ1803〜ステップ1805の処理は、図9のステップ904〜ステップ906の処理と同様である。
まず、変化推定部1511は、撮像装置312の位置及び姿勢の変化を推定する(ステップ1801)。例えば、変化推定部1511は、画像間における特徴点追跡を行うことで、撮像装置312の位置及び姿勢の変化を推定することができる。画像処理装置1501に加速度センサ、ジャイロセンサ、地磁気センサ等のセンサが搭載されている場合、変化推定部1511は、センサが取得した情報に基づいて、撮像装置312の位置及び姿勢の変化を推定してもよい。
次に、投影部314は、推定された変化に基づいて、3Dモデル332に含まれる複数の線分を画像平面上に投影することで、撮像装置312の動きに応じた複数の投影線を生成する(ステップ1802)。そして、選択部316及び表示部317は、撮像装置312の動きに応じた複数の投影線を用いて、候補表示処理を行う(ステップ1803)。
図19は、図18のステップ1802における投影処理の例を示している。物体1901の形状を表す3Dモデル1902の位置及び姿勢は、3次元空間の基準座標系1903に対して固定されている。
図19(a)は、撮像装置312が物体1901の画像1931を撮影したときの画像処理装置1501の画面の例を示している。画像処理装置1501は、基準座標系1903における位置ベクトル1911が示す位置に存在する。物体1901の画像1931は、画面の中央付近に固定して表示され、物体1901の形状1941は、画像1931に重畳して表示されている。
図19(b)は、ユーザが画像処理装置1501を動かしたときの画面の例を示している。画像処理装置1501は、基準座標系1903における位置ベクトル1912が示す位置に移動し、矢印1921の向きに回転している。この場合、画面上における物体1901の画像1931は変化しない。一方、撮像装置312の位置及び姿勢が基準座標系1903に対して変化しているため、画像1931に対する物体1901の形状1942の位置及び姿勢は変化している。
時刻1において撮像装置312が物体1901の画像1931を撮影し、時刻2以降においてユーザが画像処理装置1501を動かした場合、図19の投影処理は、以下のようなパラメータを用いて記述することができる。
Cj:時刻j(j=1,2,...)における撮像装置312の座標系
Rw(Cj):基準座標系1903から座標系Cjへの回転行列
Tw(Cj):座標系Cjにおける、基準座標系1903から座標系Cjへの並進ベクトル
R(j):座標系C1から座標系Cj(j=2,3,...)への回転行列
T(j):座標系C1における、座標系C1から座標系Cjへの並進ベクトル
R(j)は、時刻1から時刻jの間における撮像装置312の姿勢の変化を表し、T(j)は、時刻1から時刻jの間における撮像装置312の位置の変化を表す。基準座標系1903の原点に3Dモデル1902が配置されている場合、座標系Cjにおける3Dモデル1902上の点pの位置ベクトルpw(Cj)は、次式により表される。

pw(Cj)=Rw(Cj)pw+Tw(Cj) (1)

式(1)の右辺のpwは、基準座標系1903における3Dモデル1902上の点pの位置ベクトルを表す。このとき、Rw(Cj)及びTw(Cj)(j=2,3,...)は、Rw(C1)、Tw(C1)、R(j)、及びT(j)を用いて、次式により表される。

Rw(Cj)=R(j)Rw(C1) (2)
Tw(Cj)=R(j)(Tw(C1)−T(j)) (3)

式(2)及び式(3)の右辺のR(j)は、R(j)の転置行列を表す。投影部314は、式(1)〜式(3)を用いて、撮像装置312の位置及び姿勢の変化からpw(Cj)を計算することで、3Dモデル1902に含まれる線分の投影線を生成する。
図20は、図1の画像処理装置101の第3の具体例を示している。図20の画像処理装置2001は、図15の画像処理装置1501に回転部2011を追加した構成を有する。
回転部2011は、3D線分集合333に含まれる線分の投影線と特徴線とを対応付ける指示が入力された後に、撮像装置312の姿勢が変化した場合、所定の拘束条件を用いて、3Dモデル332が表す物体の形状を回転させる。所定の拘束条件としては、画面上において、対応付けられた線分の投影線の角度を一定に保つことを示す条件が用いられる。
画像処理装置1501の場合と同様に、ユーザは、撮像装置312により、1時刻における物体の画像331を撮影した後、3次元空間内において画像処理装置1501を動かすことによって、3Dモデル332が表す物体の形状を画面上で変化させる。
画像処理装置2001が行う画像処理は、図17に示した画像処理と同様である。図18のステップ1802において、回転部2011は、直前に入力された候補確定指示に従って生成された対応ペア335の線分の投影線の角度を一定に保ちながら、撮像装置312の姿勢の変化に応じて、物体の形状を回転させる。
例えば、回転軸としては、対応ペア335に含まれる線分、又はその線分と物体の形状に対する視点とを含む平面の法線が用いられる。物体の形状に対する視点は、撮像装置312の座標系の原点に対応する。
次に、投影部314は、回転後の物体の形状を表す複数の線分を画像平面上に投影することで、撮像装置312の姿勢の変化に応じた複数の投影線を生成する。
ステップ1803において、表示部317は、撮像装置312の姿勢の変化に応じた複数の投影線を用いて、画面上に物体の形状を表示する。
図21は、回転軸の例を示している。直前に生成された対応ペア335に線分2111が含まれている場合、視点2102を投影中心として線分2111を画像平面2101上に投影することで、投影線2112が生成される。
この場合、線分2111又は平面2103の法線2113が、回転軸として用いられる。平面2103は、線分2111及び視点2102を含む平面である。物体の形状の回転角度としては、画像処理装置1501の回転と反対方向の回転成分のうち、線分2111又は法線2113の周りの回転成分を用いることができる。
線分2111を含む物体の形状が線分2111の周りに回転しても、画像平面2101上における投影線2112の角度及び長さは変化しない。また、物体の形状が法線2113の周りに回転しても、画像平面2101上における投影線2112の角度は変化しない。
図20の画像処理装置2001によれば、画像処理装置1501と同様に、短時間で容易に対応ペア335を生成することができ、撮像装置312の位置及び姿勢を推定する推定処理が効率化される。
さらに、直前に生成された対応ペア335に含まれる線分の投影線の角度が変化しないため、対応ペア335の個数が増加するにつれて、物体の形状が物体の画像331の姿勢に近づく。したがって、ユーザは、次の対応ペア候補を確認する作業が容易になり、物体の形状をさらに回転させて、容易に物体の画像331に重ね合わせることができる。
図1、図3、図15、及び図20の画像処理装置の構成は一例に過ぎず、画像処理装置の用途又は条件に応じて一部の構成要素を省略又は変更してもよい。例えば、図3、図15、及び図20の画像処理装置において、撮像装置312の位置及び姿勢を推定する推定処理が外部の装置によって行われる場合は、推定部320を省略することができる。CADデータの代わりに、物体の形状を表す他の形状情報を3Dモデル332として用いてもよい。
図2、図5、図6、図9、図14、図17、及び図18のフローチャートは一例に過ぎず、画像処理装置の構成又は条件に応じて一部の処理を省略又は変更してもよい。例えば、図14の候補表示処理において、処理対象の線分が4本目以降の線分である場合、画像処理装置は、ステップ1403〜ステップ1405の処理を行う代わりに、ステップ1409の処理を行ってもよい。
図4、図7、図8、図10〜図13、図16、図19、及び図21に示した物体の形状、物体の画像、投影線、及び特徴線は一例に過ぎず、物体の形状、物体の画像、投影線、及び特徴線は、撮影対象の物体に応じて変化する。
式(1)〜式(3)の計算式は一例に過ぎず、画像処理装置の構成又は条件に応じて別の計算式を用いてもよい。
図22は、図1、図3、図15、及び図20の画像処理装置として用いられる情報処理装置(コンピュータ)の構成例を示している。図22の情報処理装置は、CPU(Central Processing Unit)2201、メモリ2202、入力装置2203、出力装置2204、補助記憶装置2205、媒体駆動装置2206、及びネットワーク接続装置2207を含む。これらの構成要素はバス2208により互いに接続されている。図3、図15、及び図20の撮像装置312は、バス2208に接続されていてもよい。
メモリ2202は、例えば、ROM(Read Only Memory)、RAM(Random Access Memory)、フラッシュメモリ等の半導体メモリであり、処理に用いられるプログラム及びデータを格納する。メモリ2202は、図1の記憶部111又は図3、図15、及び図20の記憶部311として用いることができる。
CPU2201(プロセッサ)は、例えば、メモリ2202を利用してプログラムを実行することにより、図1の抽出部112、投影部113、検出部114、選択部115、及び生成部117として動作する。
CPU2201は、メモリ2202を利用してプログラムを実行することにより、図3、図15、及び図20の抽出部313、投影部314、検出部315、選択部316、生成部318、及び推定部320としても動作する。CPU2201は、メモリ2202を利用してプログラムを実行することにより、図3の追跡部321、図15及び図20の変化推定部1511、及び図20の回転部2011としても動作する。
入力装置2203は、例えば、キーボード、ポインティングデバイス等であり、オペレータ又はユーザからの指示又は情報の入力に用いられる。入力装置2203は、図3、図15、及び図20の受付部319として用いることができる。
出力装置2204は、例えば、表示装置、プリンタ、スピーカ等であり、オペレータ又はユーザへの問い合わせ又は指示、及び処理結果の出力に用いられる。処理結果は、対応ペア335であってもよく、撮像装置312の位置及び姿勢の推定結果であってもよい。出力装置2204は、図1の表示部116又は図3、図15、及び図20の表示部317として用いることができる。
補助記憶装置2205は、例えば、磁気ディスク装置、光ディスク装置、光磁気ディスク装置、テープ装置等である。補助記憶装置2205は、ハードディスクドライブ又はフラッシュメモリであってもよい。情報処理装置は、補助記憶装置2205にプログラム及びデータを格納しておき、それらをメモリ2202にロードして使用することができる。補助記憶装置2205は、図1の記憶部111又は図3、図15、及び図20の記憶部311として用いることができる。
媒体駆動装置2206は、可搬型記録媒体2209を駆動し、その記録内容にアクセスする。可搬型記録媒体2209は、メモリデバイス、フレキシブルディスク、光ディスク、光磁気ディスク等である。可搬型記録媒体2209は、CD−ROM(Compact Disk Read Only Memory)、DVD(Digital Versatile Disk)、USB(Universal Serial Bus)メモリ等であってもよい。オペレータ又はユーザは、この可搬型記録媒体2209にプログラム及びデータを格納しておき、それらをメモリ2202にロードして使用することができる。
このように、処理に用いられるプログラム及びデータを格納するコンピュータ読み取り可能な記録媒体は、メモリ2202、補助記憶装置2205、又は可搬型記録媒体2209のような、物理的な(非一時的な)記録媒体である。
ネットワーク接続装置2207は、LAN(Local Area Network)、WAN(Wide Area Network)等の通信ネットワークに接続され、通信に伴うデータ変換を行う通信インタフェース回路である。情報処理装置は、プログラム及びデータを外部の装置からネットワーク接続装置2207を介して受信し、それらをメモリ2202にロードして使用することができる。
なお、情報処理装置が図22のすべての構成要素を含む必要はなく、用途又は条件に応じて一部の構成要素を省略することも可能である。例えば、可搬型記録媒体2209又は通信ネットワークを使用しない場合は、媒体駆動装置2206又はネットワーク接続装置2207を省略してもよい。
開示の実施形態とその利点について詳しく説明したが、当業者は、特許請求の範囲に明確に記載した本発明の範囲から逸脱することなく、様々な変更、追加、省略をすることができるであろう。
図1乃至図22を参照しながら説明した実施形態に関し、さらに以下の付記を開示する。
(付記1)
3次元空間内における物体の形状を表す複数の線分を含む形状情報と、前記物体の画像とを記憶する記憶部と、
前記複数の線分の中から複数の対象線分を抽出する抽出部と、
前記複数の線分を前記物体の画像の画像平面上に投影することで、複数の投影線を生成する投影部と、
前記物体の画像から複数の特徴線を検出する検出部と、
前記複数の対象線分各々に対する対応付け候補の特徴線を、前記複数の特徴線の中から選択する選択部と、
前記物体の形状と前記物体の画像とを画面上に表示するとともに、前記複数の対象線分各々の投影線と前記対応付け候補の特徴線とを前記画面上に表示する表示部と、
前記画面上に表示された前記複数の対象線分各々の投影線と前記対応付け候補の特徴線とを対応付ける指示に基づいて、前記複数の対象線分各々と前記対応付け候補の特徴線との組み合わせを生成する生成部と、
を備えることを特徴とする画像処理装置。
(付記2)
前記複数の対象線分各々と前記対応付け候補の特徴線との組み合わせを用いて、前記3次元空間内における前記物体の画像を撮影した撮像装置の位置及び姿勢を推定する推定部をさらに備えることを特徴とする付記1記載の画像処理装置。
(付記3)
前記3次元空間内において前記撮像装置が動きながら撮影する複数の画像の間で、前記組み合わせに含まれる特徴線を追跡する追跡部をさらに備え、
前記検出部は、前記複数の画像各々から複数の特徴線を検出し、
前記生成部は、前記組み合わせに含まれる特徴線を、前記複数の画像各々から検出された複数の特徴線のうち、追跡された特徴線に変更し、
前記表示部は、前記画面上の所定位置に前記物体の形状を表示するとともに、前記撮像装置の動きに応じて、前記画面上に前記複数の画像各々を表示することを特徴とする付記2記載の画像処理装置。
(付記4)
前記撮像装置の位置及び姿勢の変化を推定する変化推定部をさらに備え、
前記投影部は、前記撮像装置の位置及び姿勢の変化に基づいて、前記複数の線分を前記画像平面上に投影することで、前記3次元空間内における前記撮像装置の動きに応じた複数の投影線を生成し、
前記表示部は、前記画面上の所定位置に前記物体の画像を表示するとともに、前記撮像装置の動きに応じた複数の投影線を用いて、前記画面上に前記物体の形状を表示することを特徴とする付記2記載の画像処理装置。
(付記5)
前記撮像装置の姿勢の変化を推定する変化推定部と、
前記複数の対象線分のうち特定の線分の投影線と、前記特定の線分に対する対応付け候補の特徴線とを対応付ける指示が入力された後に、前記撮像装置の姿勢が変化した場合、前記画面上において前記特定の線分の投影線の角度を一定に保つ拘束条件を用いて、前記物体の形状を前記撮像装置の姿勢の変化に応じて回転させる回転部と、
をさらに備え、
前記投影部は、回転後の物体の形状を表す複数の線分を前記画像平面上に投影することで、前記撮像装置の姿勢の変化に応じた複数の投影線を生成し、
前記表示部は、前記画面上の所定位置に前記物体の画像を表示するとともに、前記撮像装置の姿勢の変化に応じた複数の投影線を用いて、前記画面上に前記物体の形状を表示することを特徴とする付記2記載の画像処理装置。
(付記6)
前記投影部は、前記特定の線分、又は前記特定の線分と前記複数の線分に対する視点とを含む平面の法線を、回転軸として用いて、前記回転軸の周りに前記物体の形状を回転させることを特徴とする付記5記載の画像処理装置。
(付記7)
前記選択部は、前記複数の対象線分のうち3本の対象線分各々と前記対応付け候補の特徴線との組み合わせが生成された後に、4本目の対象線分に対する前記対応付け候補の特徴線を選択する場合、前記3本の対象線分に対する3個の組み合わせを用いて、前記撮像装置の位置及び姿勢を推定し、
前記投影部は、推定された前記撮像装置の位置及び姿勢を用いて、前記4本目の対象線分を前記画像平面上に投影することで、前記4本目の対象線分の投影線を生成し、
前記選択部は、前記4本目の対象線分の投影線に基づいて、前記4本目の対象線分に対する前記対応付け候補の特徴線を選択することを特徴とする付記2乃至6のいずれか1項に記載の画像処理装置。
(付記8)
前記選択部は、前記複数の特徴線のうち、前記複数の対象線分各々の投影線に最も近い特徴線を、前記対応付け候補の特徴線として選択することを特徴とする付記1乃至7のいずれか1項に記載の画像処理装置。
(付記9)
前記表示部は、前記複数の対象線分各々の投影線の中点を強調表示することを特徴とする付記8記載の画像処理装置。
(付記10)
前記選択部は、前記複数の特徴線のうち、前記複数の対象線分各々の投影線に対する距離が所定値よりも小さい特定の複数の特徴線を、前記対応付け候補の特徴線として選択し、
前記表示部は、前記特定の複数の特徴線を、前記複数の対象線分各々に対する選択肢として表示し、
前記生成部は、前記複数の対象線分各々の投影線と、前記特定の複数の特徴線の中から選択された特徴線とを対応付ける指示に基づいて、前記複数の対象線分各々と前記選択された特徴線との組み合わせを生成することを特徴とする付記1乃至7のいずれか1項に記載の画像処理装置。
(付記11)
前記抽出部は、前記複数の投影線のうち2本の投影線の距離が所定値よりも小さい場合、前記2本の投影線に対応する2本の線分以外の線分の中から、前記複数の対象線分を抽出することを特徴とする付記1乃至10のいずれか1項に記載の画像処理装置。
(付記12)
前記複数の対象線分は3本の対象線分であり、
前記生成部は、前記3本の対象線分各々と前記対応付け候補の特徴線とを対応付けることで、3個の組み合わせを生成し、
前記抽出部は、前記3本の対象線分のうち2本の対象線分に、前記3本の対象線分以外の線分を追加することで、3本の線分を含む線分集合を複数個生成し、複数個の線分集合それぞれを評価した結果に基づいて、いずれかの線分集合を選択し、選択された線分集合に含まれる前記2本の対象線分以外の線分を、前記3本の対象線分に追加することで、4本の対象線分を生成し、
前記選択部、前記表示部、及び前記生成部は、前記4本の対象線分に対して処理を繰り返すことを特徴とする付記1乃至11のいずれか1項に記載の画像処理装置。
(付記13)
コンピュータによって実行される画像処理方法であって、
前記コンピュータが、
3次元空間内における物体の形状を表す複数の線分の中から複数の対象線分を抽出し、
前記複数の線分を前記物体の画像の画像平面上に投影することで、複数の投影線を生成し、
前記物体の画像から複数の特徴線を検出し、
前記複数の対象線分各々に対する対応付け候補の特徴線を、前記複数の特徴線の中から選択し、
前記物体の形状と前記物体の画像とを画面上に表示するとともに、前記複数の対象線分各々の投影線と前記対応付け候補の特徴線とを前記画面上に表示し、
前記画面上に表示された前記複数の対象線分各々の投影線と前記対応付け候補の特徴線とを対応付ける指示に基づいて、前記複数の対象線分各々と前記対応付け候補の特徴線との組み合わせを生成する、
ことを特徴とする画像処理方法。
(付記14)
前記コンピュータは、前記複数の対象線分各々と前記対応付け候補の特徴線との組み合わせを用いて、前記3次元空間内における前記物体の画像を撮影した撮像装置の位置及び姿勢を推定することを特徴とする付記13記載の画像処理方法。
(付記15)
前記コンピュータは、
前記3次元空間内において前記撮像装置が動きながら撮影する複数の画像各々から、複数の特徴線を検出し、
前記複数の画像の間で、前記組み合わせに含まれる特徴線を追跡し、
前記組み合わせに含まれる特徴線を、前記複数の画像各々から検出された複数の特徴線のうち、追跡された特徴線に変更し、
前記画面上の所定位置に前記物体の形状を表示するとともに、前記撮像装置の動きに応じて、前記画面上に前記複数の画像各々を表示することを特徴とする付記14記載の画像処理方法。
(付記16)
前記コンピュータは、
前記撮像装置の位置及び姿勢の変化を推定し、
前記撮像装置の位置及び姿勢の変化に基づいて、前記複数の線分を前記画像平面上に投影することで、前記3次元空間内における前記撮像装置の動きに応じた複数の投影線を生成し、
前記画面上の所定位置に前記物体の画像を表示するとともに、前記撮像装置の動きに応じた複数の投影線を用いて、前記画面上に前記物体の形状を表示することを特徴とする付記14記載の画像処理方法。
(付記17)
前記コンピュータは、
前記複数の対象線分のうち特定の線分の投影線と、前記特定の線分に対する対応付け候補の特徴線とを対応付ける指示が入力された後に、前記撮像装置の姿勢が変化した場合、前記撮像装置の姿勢の変化を推定し、
前記画面上において前記特定の線分の投影線の角度を一定に保つ拘束条件を用いて、前記物体の形状を前記撮像装置の姿勢の変化に応じて回転させ、
回転後の物体の形状を表す複数の線分を前記画像平面上に投影することで、前記撮像装置の姿勢の変化に応じた複数の投影線を生成し、
前記画面上の所定位置に前記物体の画像を表示するとともに、前記撮像装置の姿勢の変化に応じた複数の投影線を用いて、前記画面上に前記物体の形状を表示することを特徴とする付記14記載の画像処理方法。
101、301、1501、2001 画像処理装置
111、311 記憶部
112、313 抽出部
113、314 投影部
114、315 検出部
115、316 選択部
116、317 表示部
117、318 生成部
121 形状情報
122、331、411〜413、1202、1601、1931 画像
312 撮像装置
319 受付部
320 推定部
321 追跡部
332、1902 3Dモデル
333 3D線分集合
334、1002、1003、1102、1212、1213 特徴線
335 対応ペア
401、1201、1611〜1613、1941、1942 物体の形状
402、701〜704、801〜805、1001、1101、1211、1621〜1623、2112 投影線
403、1603 OKボタン
1011 中点
1111 マーク
1221 固定ボタン
1222 青ボタン
1223 緑ボタン
1301、1901 物体
1311 頂点
1511 変化推定部
1901 物体
1903 基準座標系
1911、1912 位置ベクトル
1921 矢印
2011 回転部
2101 画像平面
2102 視点
2103 平面
2111 線分
2113 法線
2201 CPU
2202 メモリ
2203 入力装置
2204 出力装置
2205 補助記憶装置
2206 媒体駆動装置
2207 ネットワーク接続装置
2208 バス
2209 可搬型記録媒体

Claims (11)

  1. 3次元空間内における物体の形状を表す複数の線分を含む形状情報と、前記物体の画像とを記憶する記憶部と、
    前記複数の線分の中から複数の対象線分を抽出する抽出部と、
    前記複数の線分を前記物体の画像の画像平面上に投影することで、複数の投影線を生成する投影部と、
    前記物体の画像から複数の特徴線を検出する検出部と、
    前記複数の対象線分各々に対する対応付け候補の特徴線を、前記複数の特徴線の中から選択する選択部と、
    前記物体の形状と前記物体の画像とを画面上に表示するとともに、前記複数の対象線分各々の投影線と前記対応付け候補の特徴線とを前記画面上に表示する表示部と、
    前記画面上に表示された前記複数の対象線分各々の投影線と前記対応付け候補の特徴線とを対応付ける指示に基づいて、前記複数の対象線分各々と前記対応付け候補の特徴線との組み合わせを生成する生成部と、
    を備えることを特徴とする画像処理装置。
  2. 前記複数の対象線分各々と前記対応付け候補の特徴線との組み合わせを用いて、前記3次元空間内における前記物体の画像を撮影した撮像装置の位置及び姿勢を推定する推定部をさらに備えることを特徴とする請求項1記載の画像処理装置。
  3. 前記3次元空間内において前記撮像装置が動きながら撮影する複数の画像の間で、前記組み合わせに含まれる特徴線を追跡する追跡部をさらに備え、
    前記検出部は、前記複数の画像各々から複数の特徴線を検出し、
    前記生成部は、前記組み合わせに含まれる特徴線を、前記複数の画像各々から検出された複数の特徴線のうち、追跡された特徴線に変更し、
    前記表示部は、前記画面上の所定位置に前記物体の形状を表示するとともに、前記撮像装置の動きに応じて、前記画面上に前記複数の画像各々を表示することを特徴とする請求項2記載の画像処理装置。
  4. 前記撮像装置の位置及び姿勢の変化を推定する変化推定部をさらに備え、
    前記投影部は、前記撮像装置の位置及び姿勢の変化に基づいて、前記複数の線分を前記画像平面上に投影することで、前記3次元空間内における前記撮像装置の動きに応じた複数の投影線を生成し、
    前記表示部は、前記画面上の所定位置に前記物体の画像を表示するとともに、前記撮像装置の動きに応じた複数の投影線を用いて、前記画面上に前記物体の形状を表示することを特徴とする請求項2記載の画像処理装置。
  5. 前記撮像装置の姿勢の変化を推定する変化推定部と、
    前記複数の対象線分のうち特定の線分の投影線と、前記特定の線分に対する対応付け候補の特徴線とを対応付ける指示が入力された後に、前記撮像装置の姿勢が変化した場合、前記画面上において前記特定の線分の投影線の角度を一定に保つ拘束条件を用いて、前記物体の形状を前記撮像装置の姿勢の変化に応じて回転させる回転部と、
    をさらに備え、
    前記投影部は、回転後の物体の形状を表す複数の線分を前記画像平面上に投影することで、前記撮像装置の姿勢の変化に応じた複数の投影線を生成し、
    前記表示部は、前記画面上の所定位置に前記物体の画像を表示するとともに、前記撮像装置の姿勢の変化に応じた複数の投影線を用いて、前記画面上に前記物体の形状を表示することを特徴とする請求項2記載の画像処理装置。
  6. 前記投影部は、前記特定の線分、又は前記特定の線分と前記複数の線分に対する視点とを含む平面の法線を、回転軸として用いて、前記回転軸の周りに前記物体の形状を回転させることを特徴とする請求項5記載の画像処理装置。
  7. 前記選択部は、前記複数の対象線分のうち3本の対象線分各々と前記対応付け候補の特徴線との組み合わせが生成された後に、4本目の対象線分に対する前記対応付け候補の特徴線を選択する場合、前記3本の対象線分に対する3個の組み合わせを用いて、前記撮像装置の位置及び姿勢を推定し、
    前記投影部は、推定された前記撮像装置の位置及び姿勢を用いて、前記4本目の対象線分を前記画像平面上に投影することで、前記4本目の対象線分の投影線を生成し、
    前記選択部は、前記4本目の対象線分の投影線に基づいて、前記4本目の対象線分に対する前記対応付け候補の特徴線を選択することを特徴とする請求項2乃至6のいずれか1項に記載の画像処理装置。
  8. 前記選択部は、前記複数の特徴線のうち、前記複数の対象線分各々の投影線に最も近い特徴線を、前記対応付け候補の特徴線として選択することを特徴とする請求項1乃至7のいずれか1項に記載の画像処理装置。
  9. 前記選択部は、前記複数の特徴線のうち、前記複数の対象線分各々の投影線に対する距離が所定値よりも小さい特定の複数の特徴線を、前記対応付け候補の特徴線として選択し、
    前記表示部は、前記特定の複数の特徴線を、前記複数の対象線分各々に対する選択肢として表示し、
    前記生成部は、前記複数の対象線分各々の投影線と、前記特定の複数の特徴線の中から選択された特徴線とを対応付ける指示に基づいて、前記複数の対象線分各々と前記選択された特徴線との組み合わせを生成することを特徴とする請求項1乃至7のいずれか1項に記載の画像処理装置。
  10. 前記複数の対象線分は3本の対象線分であり、
    前記生成部は、前記3本の対象線分各々と前記対応付け候補の特徴線とを対応付けることで、3個の組み合わせを生成し、
    前記抽出部は、前記3本の対象線分のうち2本の対象線分に、前記3本の対象線分以外の線分を追加することで、3本の線分を含む線分集合を複数個生成し、複数個の線分集合それぞれを評価した結果に基づいて、いずれかの線分集合を選択し、選択された線分集合に含まれる前記2本の対象線分以外の線分を、前記3本の対象線分に追加することで、4本の対象線分を生成し、
    前記選択部、前記表示部、及び前記生成部は、前記4本の対象線分に対して処理を繰り返すことを特徴とする請求項1乃至9のいずれか1項に記載の画像処理装置。
  11. コンピュータによって実行される画像処理方法であって、
    前記コンピュータが、
    3次元空間内における物体の形状を表す複数の線分の中から複数の対象線分を抽出し、
    前記複数の線分を前記物体の画像の画像平面上に投影することで、複数の投影線を生成し、
    前記物体の画像から複数の特徴線を検出し、
    前記複数の対象線分各々に対する対応付け候補の特徴線を、前記複数の特徴線の中から選択し、
    前記物体の形状と前記物体の画像とを画面上に表示するとともに、前記複数の対象線分各々の投影線と前記対応付け候補の特徴線とを前記画面上に表示し、
    前記画面上に表示された前記複数の対象線分各々の投影線と前記対応付け候補の特徴線とを対応付ける指示に基づいて、前記複数の対象線分各々と前記対応付け候補の特徴線との組み合わせを生成する、
    ことを特徴とする画像処理方法。
JP2019028428A 2019-02-20 2019-02-20 画像処理装置及び画像処理方法 Active JP7232663B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2019028428A JP7232663B2 (ja) 2019-02-20 2019-02-20 画像処理装置及び画像処理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019028428A JP7232663B2 (ja) 2019-02-20 2019-02-20 画像処理装置及び画像処理方法

Publications (2)

Publication Number Publication Date
JP2020135446A true JP2020135446A (ja) 2020-08-31
JP7232663B2 JP7232663B2 (ja) 2023-03-03

Family

ID=72263229

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019028428A Active JP7232663B2 (ja) 2019-02-20 2019-02-20 画像処理装置及び画像処理方法

Country Status (1)

Country Link
JP (1) JP7232663B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115564837A (zh) * 2022-11-17 2023-01-03 歌尔股份有限公司 一种视觉定位方法、装置和系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017182302A (ja) * 2016-03-29 2017-10-05 富士通株式会社 画像処理プログラム、画像処理装置、及び画像処理方法
JP2018055199A (ja) * 2016-09-26 2018-04-05 富士通株式会社 画像処理プログラム、画像処理装置、及び画像処理方法
JP2018081589A (ja) * 2016-11-17 2018-05-24 富士通株式会社 重畳画像生成プログラム、重畳画像生成方法、および情報処理装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017182302A (ja) * 2016-03-29 2017-10-05 富士通株式会社 画像処理プログラム、画像処理装置、及び画像処理方法
JP2018055199A (ja) * 2016-09-26 2018-04-05 富士通株式会社 画像処理プログラム、画像処理装置、及び画像処理方法
JP2018081589A (ja) * 2016-11-17 2018-05-24 富士通株式会社 重畳画像生成プログラム、重畳画像生成方法、および情報処理装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115564837A (zh) * 2022-11-17 2023-01-03 歌尔股份有限公司 一种视觉定位方法、装置和系统
CN115564837B (zh) * 2022-11-17 2023-04-18 歌尔股份有限公司 一种视觉定位方法、装置和系统

Also Published As

Publication number Publication date
JP7232663B2 (ja) 2023-03-03

Similar Documents

Publication Publication Date Title
US8154616B2 (en) Data processing apparatus and method, and recording medium
US9674507B2 (en) Monocular visual SLAM with general and panorama camera movements
WO2018112788A1 (zh) 图像处理方法及设备
JP2005250950A (ja) マーカ提示用携帯端末および拡張現実感システムならびにその動作方法
JP6880618B2 (ja) 画像処理プログラム、画像処理装置、及び画像処理方法
JPWO2014069247A1 (ja) 画像処理装置および画像処理方法、並びにプログラム
JP2010282295A (ja) 画像処理装置、画像処理方法及びプログラム
US11138759B2 (en) Image processing apparatus and image processing method
WO2019093457A1 (ja) 情報処理装置、情報処理方法及びプログラム
JP2013003970A (ja) 物体座標系変換装置、物体座標系変換方法、及び物体座標系変換プログラム
JP2016212784A (ja) 画像処理装置、画像処理方法
US10930068B2 (en) Estimation apparatus, estimation method, and non-transitory computer-readable storage medium for storing estimation program
US20180114339A1 (en) Information processing device and method, and program
JP7232663B2 (ja) 画像処理装置及び画像処理方法
US11145048B2 (en) Image processing apparatus, image processing method, and non-transitory computer-readable storage medium for storing program
JP5614118B2 (ja) ランドマーク検知方法、ロボット及びプログラム
JP6305856B2 (ja) 画像処理装置、画像処理方法、およびプログラム
JP2020098575A (ja) 画像処理装置、画像処理方法、及び画像処理プログラム
WO2013032785A1 (en) Line tracking with automatic model initialization by graph matching and cycle detection
JP7334460B2 (ja) 作業支援装置及び作業支援方法
JP7059701B2 (ja) 推定装置、推定方法、及び推定プログラム
US20220309682A1 (en) Object tracking apparatus, object tracking method, and program
JP2005182098A (ja) 合成画像を生成・表示する装置及び方法
WO2022239291A1 (ja) 物体検知装置及び方法
WO2023152971A1 (ja) 画像処理装置、画像処理方法、およびプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20211109

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20221128

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20221206

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230127

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20230127

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230220

R150 Certificate of patent or registration of utility model

Ref document number: 7232663

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150