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

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

Info

Publication number
JP2023104399A
JP2023104399A JP2022005357A JP2022005357A JP2023104399A JP 2023104399 A JP2023104399 A JP 2023104399A JP 2022005357 A JP2022005357 A JP 2022005357A JP 2022005357 A JP2022005357 A JP 2022005357A JP 2023104399 A JP2023104399 A JP 2023104399A
Authority
JP
Japan
Prior art keywords
feature point
feature points
specified
feature
image
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2022005357A
Other languages
English (en)
Inventor
喜宏 山下
Yoshihiro Yamashita
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.)
NEC Solution Innovators Ltd
Original Assignee
NEC Solution Innovators 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 NEC Solution Innovators Ltd filed Critical NEC Solution Innovators Ltd
Priority to JP2022005357A priority Critical patent/JP2023104399A/ja
Publication of JP2023104399A publication Critical patent/JP2023104399A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Processing Or Creating Images (AREA)
  • Image Generation (AREA)

Abstract

【課題】複数の画像を用いて対象物の3次元形状を構築する際において、3次元形状の精度の向上を図りつつ、作業者の負担を軽減する。【解決手段】画像処理装置10は、対象物の複数画像から特徴点の組合せを抽出する組合せ抽出部11と、特徴点の組合せを用いて対象物の仮の3次元形状を構築する仮3次元形状構築部12と、画像の1つで指定された対象物上の位置に応じて特徴点を特定し、別の画像で、対応する特徴点を特定する特徴点特定部13と、位置指定の画像で特徴点を選択し、別画像で選択した特徴点に対応する特徴点を抽出する特徴点抽出部14と、特徴点間の幾何学的関係を表す数値行列を算出する行列算出部15と、数値行列を用いて幾何学的関係が矛盾する特徴点の組合せを特定し、この組合せ以外の組合せを用いて3次元形状を構築する3次元形状構築部16と、を備えている。【選択図】図1

Description

本開示は、複数の画像からの3次元形状の構築を可能にするための、画像処理装置、及び画像処理方法に関し、更には、これらを実現するためのプログラムに関する。
近年、画像に写っている対象の3次元形状を構築する技術が注目されている。このような技術の代表例としては、SfM(Structure from Motion)が知られている。SfMでは、対象の視点の異なる複数枚の画像それぞれ毎に、その特徴量(例えば、SIFT特徴量、SURF特徴量)が計算され、特徴点が抽出される。次に、画像間で、抽出した特徴点のマッチングが実行され、一致する特徴点のペアが抽出され、例えば、ロバスト推定(Robust Estimation)によって、特徴点ペアの幾何学的な関係が計算され、誤った特徴点ペアが除外される。
その後、幾つかの特徴点ペア毎に、これらの幾何学的な関係に基づいて、Fundamental行列が算出され、算出された各Fundamental行列間での差が最も少なくなるように、特徴点ペア毎の幾何学的な関係が調整される。そして、調整後の幾何学的な関係に基づいて、3次元形状(点群)が構築される。
また、上述のロバスト推定では、間違った特徴点ペアの除去は完全ではなく、復元される3次元形状の精度が高くないことから、特許文献1は、間違った特徴点ペアの抽出を抑制する技術を開示している。
具体的には、特許文献1に開示された技術では、まず、上述した従来からの手法を用いて、複数の画像から、対応する特徴点ペアが抽出され、抽出された特徴点ペアを用いて仮の3次元形状が構築される。続いて、対象を撮影した各画像において、互いに対応する点又は線分が指定される。このとき指定される点又は線分の合計は2以上となる。
次に、指定された点間又は線分間の幾何学的関係を示す数値行列が算出され、算出された数値行列を用いて、先に抽出された特徴点ペアの中から間違った特徴点ペアが排除される。その後、排除されなかった特徴点ペアのみを用いて、再度、3次元形状が構築される。特許文献1に開示された技術を用いれば、復元される3次元形状の精度の向上が図られる。
国際公開第2019/065784号
ところで、特許文献1に開示された技術では、上述したように、画像毎に、対応する点又は線分が指定されるが、点又は線分の指定は、作業者が肉眼で対応する点又は線分を見つけ出すことによって行われている。このため、点または線分の指定は、作業者にとって大きな負担になる。
本開示の目的の一例は、上記問題を解消し、複数の画像を用いて対象物の3次元形状を構築する際において、3次元形状の精度の向上を図りつつ、作業者の負担を軽減し得る、画像処理装置、画像処理方法、及びプログラムを提供することにある。
上記目的を達成するため、本開示の一側面における画像処理装置は、
対象物の複数の画像それぞれから、対応する特徴点の組合せを抽出する、組合せ抽出部と、
抽出された前記特徴点の組合せを用いて、前記特徴点の点群で構成された、前記対象物の仮の3次元形状を構築する、仮3次元形状構築部と、
前記複数の画像の1つの前記画像において、前記対象物上の位置が指定されると、指定された位置に応じて対応する前記特徴点を特定し、更に、位置が指定されていない別の前記画像において、特定した前記特徴点に対応する前記特徴点を特定する、特徴点特定部と、
前記対象物上の位置が指定された前記画像において、特定された前記特徴点のなかから、設定条件を満たすいずれかの特徴点を選択し、前記別の画像において、選択した前記特徴点に対応する前記特徴点を抽出する、特徴点抽出部と、
前記選択された特徴点と抽出された前記特徴点との幾何学的関係を表現する、数値行列を算出する、行列算出部と、
前記数値行列を用いて、抽出された前記特徴点の組合せの中から、特徴点間の幾何学的関係が矛盾する前記特徴点の組合せを特定し、そして、
特定した前記特徴点の組合せ以外の前記特徴点の組合せを用いて、前記対象物の3次元形状を構築する、3次元形状構築部と、
を備えていることを特徴とする。
また、上記目的を達成するため、本開示の一側面における画像処理方法は、
対象物の複数の画像それぞれから、対応する特徴点の組合せを抽出する、組合せ抽出ステップと、
抽出された前記特徴点の組合せを用いて、前記特徴点の点群で構成された、前記対象物の仮の3次元形状を構築する、仮3次元形状構築ステップと、
前記複数の画像の1つの前記画像において、前記対象物上の位置が指定されると、指定された位置に応じて対応する前記特徴点を特定し、更に、位置が指定されていない別の前記画像において、特定した前記特徴点に対応する前記特徴点を特定する、特徴点特定ステップと、
前記対象物上の位置が指定された前記画像において、特定された前記特徴点のなかから、設定条件を満たすいずれかの特徴点を選択し、前記別の画像において、選択した前記特徴点に対応する前記特徴点を抽出する、特徴点抽出ステップと、
前記選択された特徴点と抽出された前記特徴点との幾何学的関係を表現する、数値行列を算出する、行列算出ステップと、
前記数値行列を用いて、抽出された前記特徴点の組合せの中から、特徴点間の幾何学的関係が矛盾する前記特徴点の組合せを特定し、そして、
特定した前記特徴点の組合せ以外の前記特徴点の組合せを用いて、前記対象物の3次元形状を構築する、3次元形状構築ステップと、
を有する、ことを特徴とする。
更に、上記目的を達成するため、本開示の一側面におけるプログラムは、
コンピュータに、
対象物の複数の画像それぞれから、対応する特徴点の組合せを抽出する、組合せ抽出ステップと、
抽出された前記特徴点の組合せを用いて、前記特徴点の点群で構成された、前記対象物の仮の3次元形状を構築する、仮3次元形状構築ステップと、
前記複数の画像の1つの前記画像において、前記対象物上の位置が指定されると、指定された位置に応じて対応する前記特徴点を特定し、更に、位置が指定されていない別の前記画像において、特定した前記特徴点に対応する前記特徴点を特定する、特徴点特定ステップと、
前記対象物上の位置が指定された前記画像において、特定された前記特徴点のなかから、設定条件を満たすいずれかの特徴点を選択し、前記別の画像において、選択した前記特徴点に対応する前記特徴点を抽出する、特徴点抽出ステップと、
前記選択された特徴点と抽出された前記特徴点との幾何学的関係を表現する、数値行列を算出する、行列算出ステップと、
前記数値行列を用いて、抽出された前記特徴点の組合せの中から、特徴点間の幾何学的関係が矛盾する前記特徴点の組合せを特定し、そして、
特定した前記特徴点の組合せ以外の前記特徴点の組合せを用いて、前記対象物の3次元形状を構築する、3次元形状構築ステップと、
を実行させる、ことを特徴とする。
以上のように本開示によれば、複数の画像を用いて対象の3次元形状を構築する際において、3次元形状の精度の向上を図りつつ、作業者の負担を軽減することができる。
図1は、実施の形態1における画像処理装置の概略構成を示すブロック図である。 図2は、実施の形態1における画像処理装置の具体的構成を示すブロック図である。 図3は、処理対象となる複数の画像の一例を示す図である。 図4は、画面上に表示された対象物の複数枚の画像の一例を示す図である。 図5は、幾何学的関係が矛盾する特徴点の組合せの特定処理を説明する図である。 図6は、特徴点の組合せが抽出されたペア画像の一例を示す図である。 図7は、カメラ行列から求められる、初期ペア画像のカメラの3次元座標と回転行列との一例を示す図である。 図8は、初期ペア画像の選択後に新たに選択された画像とそれから抽出された特徴点の組合せの一例を示す図である。 図9は、対象物における特徴点の再投影誤差の算出処理を説明する図である。 図10は、実施の形態1における画像処理装置の動作を示すフロー図である。 図11は、実施の形態2における画像処理装置の機能を説明するための説明図である。 図12は、実施の形態2における画像処理装置の動作を示すフロー図である。 図13は、実施の形態1及び2における画像処理装置を実現するコンピュータの一例を示すブロック図である。
(実施の形態1)
以下、実施の形態1における画像処理装置について、図1~図10を参照しながら説明する。
[装置構成]
最初に、実施の形態1における画像処理装置の概略構成について図1を用いて説明する。図1は、実施の形態1における画像処理装置の概略構成を示すブロック図である。
図1に示す、実施の形態1における画像処理装置10は、対象物の複数の画像から対象物の3次元形状を構築する装置である。図1に示すように、画像処理装置10は、組合せ抽出部11と、仮3次元形状構築部12と、特徴点特定部13と、特徴点抽出部14と、行列算出部15と、3次元形状構築部16とを備えている。
組合せ抽出部11は、対象物の複数の画像それぞれから、対応する特徴点の組合せを抽出する。仮3次元形状構築部12は、抽出された特徴点の組合せを用いて、特徴点の点群で構成された、対象物の仮の3次元形状を構築する。
特徴点特定部13は、複数の画像の1つの画像において、対象物上の位置が指定されると、指定された位置に応じて対応する特徴点を特定する。また、特徴点特定部13は、位置が指定されていない別の前記画像において、特定した特徴点に対応する特徴点を特定する。
特徴点抽出部14は、対象物上の位置が指定された画像において、特定された特徴点のなかから、設定条件を満たすいずれかの特徴点を選択する。また、特徴点抽出部14は、別の画像において、選択した特徴点に対応する特徴点を抽出する。行列算出部15は、選択された特徴点と抽出された特徴点との幾何学的関係を表現する、数値行列を算出する。
3次元形状構築部16は、数値行列を用いて、抽出された特徴点の組合せの中から、特徴点間の幾何学的関係が矛盾する特徴点の組合せを特定し、特定した特徴点の組合せ以外の特徴点の組合せを用いて、対象物の3次元形状を構築する。
このように、実施の形態1では、一旦、対象物の3次元形状を構築した後に、3次元形状の精度を高めるために、1つの画像上で、位置が指定され、指定された位置の周辺の特徴点が特定される。更に、そのうちの1つが選択されると、残りの画像上で、対応する特徴点が抽出される。そして、選択又は抽出された特徴点を用いて、対象物の3次元形状が再構築される。
従って、実施の形態1によれば、複数の画像を用いて対象物の3次元形状を構築する際において、3次元形状の精度を向上させることができる。また、実施の形態1では、3次元形状の構築において、ユーザは、画像上の点又は線分を厳密に指定する必要はなく、画像上の大体の位置を指定するだけで良いため、従来に比べて、ユーザの負担が軽減される。
続いて、図2~図9を用いて、実施の形態1における画像処理装置の構成及び機能について具体的に説明する。図2は、実施の形態1における画像処理装置の具体的構成を示すブロック図である。
図2に示すように、実施の形態1では、画像処理装置10は、組合せ抽出部11、仮3次元形状構築部12、特徴点特定部13、特徴点抽出部14、行列算出部15、及び3次元形状構築部16に加えて、画像取得部17と、フィルタリング部18と、入力受付部19と、表示部20とを更に備えている。図2において、21は、表示装置である。
画像取得部17は、外部の装置、例えば、撮像装置、端末装置、画像データを保持している記憶装置等から、対象物の複数の画像データを取得する。図3は、処理対象となる複数の画像の一例を示す図である。図3の例では、4枚の画像が例示されているが、実施の形態1において対象となる画像の枚数は特に限定されるものではない。図3において、30は、対象物を示している。
組合せ抽出部11は、実施の形態1では、まず、画像データ毎に、画像から例えば、SIFT特徴量、又はSURF特徴量を計算して特徴点を特定する。そして、組合せ抽出部11は、画像間で対応する特徴点同士を、対応する特徴点の組合せとして抽出する。図3の例では、丸で囲まれた部分は、対象物30の特徴点の一つを示している。対応する特徴点の組合せが抽出された複数枚の画像は、以降においては、「グループ画像」と表記する。
フィルタリング部18は、特徴点の組合せ毎に、特徴点間の幾何学的な関係を計算し、計算結果に基づいて、誤った特徴点の組合せを特定し、特定した特徴点の組合せを排除する。フィルタリング部18によるフィルタリング処理は、従来からのSfMと同様に、ロバスト推定を用いて行われる。実施の形態1では、後述する3次元形状構築部16によるフィルタリング処理(以下「第2のフィルタリング処理」と表記する。)に加えて、フィルタリング部18によるフィルタリング処理(以下「第1のフィルタリング処理」と表記する。)も行われるので、より確実に間違った特徴点の組合せが排除される。
仮3次元形状構築部12は、実施の形態1では、抽出された特徴点の組合せを用いて、仮の3次元座標を算出し、更に、算出された仮の3次元座標を用いて、特徴点の点群で構成された対象物の仮の3次元形状を構築する。
なお、仮3次元形状構築部12による3次元座標の算出処理及び3次元形状の構築処理は、後述する3次元形状構築部16による3次元座標の算出処理及び3次元形状の構築処理と同様に行われる。両者の違いは、処理対象となる特徴点の組合せに対して第2のフィルタリング処理が行われているかどうかのみである。従って、仮3次元形状構築部12による3次元座標の算出処理及び3次元形状の構築処理の詳細については、後述する3次元形状構築部16による3次元座標の算出処理及び3次元形状の構築処理の詳細説明に代える。
入力受付部19は、処理対象となる画像上において位置の指定を受け付ける。位置の指定は、例えば、表示装置21の画面上に表示された画像上で、ユーザによって、タッチパネル、マウスといった入力装置を用いて行われる。また、位置の指定は、ユーザによって、外部の端末装置を介して行われていても良い。
表示部20は、3次元形状構築部16によって対象物の3次元形状が構築されると、構築された3次元形状を、2次元画像として、表示装置21の画面上に表示させる。具体的には、表示部20は、構築された3次元形状を二次元画面上に表示するための画像データを生成し、生成した画像データを表示装置21に出力する。
また、表示部20は、画像取得部17によって複数の画像の画像データが取得されると、取得された画像データの画像を、表示装置21の画面上に表示させることもできる。この場合、ユーザは、図4に示すように、入力受付部19を介して、画面に表示された画像の1つにおいて、対象物上の位置を指定することができる。図4は、画面上に表示された対象物の複数枚の画像の一例を示す図である。図4の例では、ユーザは、画面に表示されるカーソル(矢印)31で、対象物30上の位置を指定する。
特徴点特定部13は、実施の形態1では、図4に示すように、ユーザがカーソル31によって対象物30上で位置を指定すると、指定された位置に対応する特徴点32を特定する。具体的には、特徴点特定部13は、位置が指定された画像において、例えば、指定された位置を中心とした半径rの円形の領域を設定し、設定した領域に存在する特徴点を特定する。なお、円形の領域の半径rは、適宜設定される。
また、特徴点特定部13は、位置が指定された画像以外の画像においても、特定した特徴点に対応する特徴点を特定する。なお、特定の対象となる特徴点は、組合せ抽出部11によって既に画像から抽出され、更にフィルタリング部18によってフィルタリングされた、特徴点である。
更に、特徴点特定部13は、対象物30上の特定した特徴点を、複数の画像それぞれと共に、画面上に提示する。具体的には、特徴点特定部13は、画像毎の特定した特徴点の座標を示すデータを、表示部20に送る。表示部20は、データを受け取ると、各画像に特徴点を示すマーク(図4における●)が重ねあわされた画像データを生成し、生成した画像データを表示装置21に出力する。これにより、図4に示すように、特定された特徴点32と各画像(画像1~4)とが、表示装置21の画面上に表示される。
ユーザは、図4に示すように、指定した位置の周辺の特徴点が画面上に表示されると、入力装置を用いて、位置を指定した画像上において、いずれかの特徴点を指定することができる。この場合、入力受付部19は、指定された特徴点を、特徴点特定部13に通知する。
特徴点抽出部14は、実施の形態1では、画面上で、対象物30上の位置が指定された画像上で、いずれかの特徴点が指定されると、指定された特徴点を選択する。実施の形態1では、ユーザによって指定された特徴点が、上述した「設定条件を満たす特徴点」に該当する。そして、特徴点抽出部14は、上述したように、対象物30上の位置が指定された画像以外の画像において、選択した特徴点に対応する特徴点を抽出する。
行列算出部15は、実施の形態1では、位置が指定された画像上で選択された特徴点と、他の画像から抽出された対応する特徴点と、の幾何学的関係を表現する、数値行列として、下記数1に示したFundamental行列(参照文献)を求める。
Figure 2023104399000002
参照文献:Richard Hartleyand Andrew Zisserman, “Multiple View Geometry in Computer Vision Second Edition”, Cambridge University Press, March 2004.
3次元形状構築部16は、実施の形態1では、まず、行列算出部15によって算出された数値行列(Fundamental行列)を用いて、組合せ抽出部11で抽出された特徴点の組合せ(フィルタリング部18で除外されたものを除く)から、幾何学的関係が矛盾する特徴点の組合せを特定する。
図5を用いて、3次元形状構築部16による幾何学的関係が矛盾する特徴点の組合せの特定処理について具体的に説明する。図5は、幾何学的関係が矛盾する特徴点の組合せの特定処理を説明する図である。図5の例では、特徴点pと特徴点p’との組合せが、間違っているかどうかの判断対象となっている。
また、図5において、Eはエピポーラ面を示し、Oは一方の画像のカメラの中心位置を示し、O’は他方の画像のカメラの中心位置を示している。eは一方の画像とエピポーラ面との交点を示し、e’は他方の画像とエピポーラ面との交点を示している。更に、図5において、左右に示された並行四辺形はそれぞれ画像のフレームを示している。
また、図5においては、一方の画像における点Pは指定された位置を示す点(指定点)であり、他方の画像における点P’は指定点に対応する点(対応点)である。そして、指定点Pと交わるエピポーラ線を、エピポーラ線lと定義し、対応点P’と交わるエピポーラ線を、エピポーラ線l’と定義する。
3次元形状構築部16は、エピポーラ線についての下記の数2に示す関係を用いて、特徴点pが存在しているエピポーラ線lに対応するエピポーラ線l’を算出する。数2において、Fは、数1に示したFundamental行列である。xは、エピポーラ線lの座標である。
Figure 2023104399000003
そして、3次元形状構築部16は、算出したエピポーラ線l’と特徴点p’との距離dが閾値以上となっているかどうかを判定し、距離dが閾値以上となっている場合は、特徴点pと特徴点p’との組合せは間違っていると判定する。この場合、3次元形状構築部16は、特徴点pと特徴点p’との組合せを、幾何学的関係が矛盾する特徴点の組合せとして特定する。
また、3次元形状構築部16は、幾何学的関係が矛盾する特徴点の組合せを特定すると、特定しなかった特徴点の組合せを用いて、3次元形状を構築するための3次元座標を算出する。
図6~図8を用いて、3次元形状構築部16による3次元座標の算出処理について具体的に説明する。図6は、特徴点の組合せが抽出されたペア画像の一例を示す図である。図7は、カメラ行列から求められる、初期ペア画像のカメラの3次元座標と回転行列との一例を示す図である。図8は、初期ペア画像の選択後に新たに選択された画像とそれから抽出された特徴点の組合せの一例を示す図である。
図6示すように、3次元形状構築部16は、最初に、一組のペア画像(初期ペア画像)として画像51と画像52とを選択する。そして、この場合、画像51から抽出されている特徴点(m~m)と、画像52から抽出されている特徴点(m’~m’)とは対応している。mとm’、mとm’、mとm’、mとm’、mとm’は、それぞれ特徴点の組合せ(以下「特徴点ペア」とも表記する)である。また、図6の例では、画像51はカメラ41によって撮影され、画像52はカメラ42によって撮影されている。図6において、M(M~M)は、各特徴点に対応する対象物30上の3次元座標である。
続いて、3次元形状構築部16は、初期ペア画像それぞれから抽出された特徴点ペア(m~m、m’~m’)を用いて、画像51を撮影したカメラ41のカメラ行列Qと、画像52を撮影したカメラ42のカメラ行列Q’とを算出する。また、カメラ行列Q及びカメラ行列Q’は、カメラ41の位置を原点とすると、それぞれ下記の数3及び数4によって表すことができる。
Figure 2023104399000004
Figure 2023104399000005
上記数3において、Iは、カメラ41の回転行列である。図7に示すように、カメラ41の位置が原点となるので、I=(1,1,1)となる。また、上記数4において、Rは、カメラ42の回転行列である(R=(R,R,R))。tは、並進行列であり、カメラ42の位置の3次元座標に相当する(t=(t,t,t))。
従って、この場合は、カメラ行列Q及びカメラ行列Q’から逆算することによって、回転行列Rと並進行列tとを算出することが出来る。具体的には、3次元形状構築部16は、各特徴点の座標を用いて、下記の数5~数7に示す方程式を解くことによって、回転行列Rと並進行列tとを算出する。数5~数7において、mハットは、m(m~m)を正規化して得られた画像51上の座標である。同様に、m’ハットは、m’(m’~m’)を正規化して得られた画像52上の座標である。Eは、Essential行列、Kはカメラのキャリブレーション行列である。
Figure 2023104399000006
Figure 2023104399000007
Figure 2023104399000008
また、キャリブレーション行列Kは、下記の数8及び数9から求めることができる。なお、c、cは、カメラの中心座標である。
Figure 2023104399000009
Figure 2023104399000010
次に、3次元形状構築部16は、各カメラの位置の3次元座標と回転行列とを用いて、抽出された特徴点の3次元座標M(M~M)を算出する。具体的には、3次元形状構築部16は、下記の数10を解くことで3次元座標Mを算出する。また、数10における行列Aは、数11で示される。数11において、qiTは、カメラ行列Qの行であり、q’iTは、カメラ行列Q’の行である。
Figure 2023104399000011
Figure 2023104399000012
次に、図8に示すように、3次元形状構築部16は、特徴点が抽出されている画像であって、初期ペア画像以外の画像の中から、1つの画像53を新たに選択し、新たに選択した画像53と初期ペア画像の1つとを新たなペア画像とする。画像53は、カメラ43によって撮影されている。
そして、3次元形状構築部16は、画像52の特徴点に対応する画像53の特徴点(m’’~m’’)を特定し、画像52の特徴点と画像53との特徴点とを特徴点ペアとする。そして、3次元形状構築部16は、画像53を撮影したカメラ43のカメラ行列Qnを算出する。カメラ行列Qnは、下記の数12によって表すことができる。
Figure 2023104399000013
具体的には、3次元形状構築部16は、画像53の特定された特徴点を用いて、下記の数13に示す方程式を解くことによって、カメラ43のカメラ行列QnのRn及びtnを算出する。
Figure 2023104399000014
数13において、Mは、新たに選択された画像53における画像52と共通する特徴点の3次元座標である。mハットは、新たに選択された画像53における特徴点の正規化された座標である。diは、下記の数14に示すように、画像53を撮影したカメラ43とmハットとの距離を示している。
Figure 2023104399000015
次に、3次元形状構築部16は、算出したカメラ43のカメラ行列QnのQn及びtnを用いて、画像53の特定された特徴点(m’’~m’’)の3次元座標Mを算出する。この場合も、3次元形状構築部16は、上記数10を解くことで、特徴点の3次元座標M(M~M)を算出する。以上の処理により、3次元形状構築部16は、対象物の3次元座標を算出することができる。
また、実施の形態1では、3次元形状構築部16は、3次元座標が算出された特徴点が適正かどうかを、再投影誤差を用いて判定することができる。具体的には、3次元形状構築部16は、特徴点の組合せの一つについて、それから得られる3次元座標と、抽出元の画像に対応するカメラ行列とを用いて、元の画像上に再投影を行い、投影された位置の2次元座標と、抽出時の位置の2次元座標とを比較する。そして、3次元形状構築部16は、実施の形態1では、比較結果として、前者の2次元座標と後者の2次元座標との差分(再投影誤差)を算出し、算出した再投影誤差が閾値以下の場合に、対象となった特徴点が適正であると判定する。一方、3次元形状構築部16は、算出した再投影誤差が閾値を越える場合は、対象となった特徴点が適正でないと判定する。
また、実施の形態1では、3次元形状構築部16は、3次元座標が算出された特徴点の組合せ毎に、この組合せを構成する特徴点の全部又は1部を選択し、選択した特徴点について1つずつ適正かどうかを判定することもできる。例えば、特徴点の組合せが3つの特徴点で構成されている場合は、3次元形状構築部16は、3つの特徴点について1つずつ適正かどうかを判定しても良いし、このうち2つのみを選択し、選択した2つの特徴点について1つずつ適正かどうかを判定しても良い。
図9を用いて、3次元形状構築部16による特徴点の適性の判定処理について具体的に説明する。図9は、対象物における特徴点の再投影誤差の算出処理を説明する図である。また、図9の例では、図6に示した画像52上の特徴点の一つを再投影する例について示している。更に、図9において、特徴点に対応する3次元座標、即ち、世界座標系での3次元座標を(X,Y,Z)とし、特徴点の抽出時の位置の2次元座標を(x,y)とする。また、特徴点のカメラ座標系での座標を(X,Y,Z)とする。
まず、3次元形状構築部16は、下記の数15を用いて、カメラ行列Q’(=[R|t])と特徴点の3次元座標(X,Y,Z)とから、特徴点のカメラ座標系での座標(X,Y,Z)を算出する。
Figure 2023104399000016
続いて、3次元形状構築部16は、下記の数16を用いて、特徴点のカメラ座標系での座標(X,Y,Z)を正規化する。
Figure 2023104399000017
続いて、3次元形状構築部16は、上記数16で正規化された座標と、カメラの内部パラメータ(図9の例では、カメラ42の焦点距離f、画像中心位置の座標(c,c)とを、下記の数17に適用して、特徴点を画像52に再投影した時の2次元座標(x,y)を算出する。
Figure 2023104399000018
次に、3次元形状構築部16は、下記の数18を用いて、上記数17から算出した再投影後の2次元座標(x,y)と特徴点の抽出時の位置の2次元座標(x,y)との差分dfを算出する。
Figure 2023104399000019
その後、3次元形状構築部16は、算出した差分dfが閾値G以下の場合に、対象となった特徴点が適正であると判定し、算出した差分dfが閾値Gを越える場合は、対象となった特徴点が適正でないと判定する。
判定後、3次元形状構築部16は、適正でないと判定された特徴点に対応する3次元座標、及び、この3次元座標に対応する全ての特徴点を除外する。また、3次元形状構築部16は、実施の形態1では、適正でないと判定された特徴点のみを除外し、適正でないと判定された特徴点に対応する3次元座標、及び、この3次元座標に対応する特徴点の組み合わせのうち、適正でないと判定された特徴点以外の特徴点は除外しないことも可能である。但し、この場合は、3次元形状構築部16は、全ての特徴点の適合性判定が完了したときに、全ての3次元座標に対して、それぞれの3次元座標に対応する特徴点の数が2個未満の3次元座標は除外する。
そして、3次元形状構築部16は、残りの特徴点を用いて、3次元座標を再計算し、最終的に得られた各特徴点の3次元座標によって、対象物の点群データを構築し、これを対象物の3次元形状とする。
また、上述の例では、3次元形状構築部16は、特徴点の組合せを用いて、再度、ゼロから3次元形状を構築しているが、実施の形態は当該例に限定されることはない。例えば、3次元形状構築部16は、行列算出部15が算出した数値行列を用いたバンドル調整を行うことによって、仮の3次元形状を構成する各特徴点の座標を調整することによって、最終的な3次元形状を構築することもできる。なお、この態様においても、実質的に、特徴点間の幾何学的関係が矛盾する特徴点の組合せについて、特定及び除外が行われている。
[装置動作]
次に、実施の形態1における画像処理装置10の動作について図10を用いて説明する。図10は、実施の形態1における画像処理装置の動作を示すフロー図である。以下の説明においては、適宜図1~図9を参照する。また、実施の形態1では、画像処理装置10を動作させることによって、画像処理方法が実施される。よって、実施の形態1における画像処理方法の説明は、以下の画像処理装置10の動作説明に代える。
図10に示すように、最初に、画像取得部17は、外部の装置から、対象物の複数の画像データを取得する(ステップA1)。また、ステップA1が実行されると、表示部20は、取得された各画像データの画像を表示装置21の表示画面に表示させる。
次に、組合せ抽出部11は、ステップA1で取得された画像データ毎に、画像から特徴点を特定し、更に、画像間で対応する特徴点同士を、対応する特徴点の組合せとして抽出する(ステップA2)。
次に、フィルタリング部18は、ステップA2で抽出された特徴点の組合せ毎に、特徴点間の幾何学的な関係を計算し、計算結果に基づいて、誤った特徴点の組合せを特定し、特定した特徴点の組合せを排除する(ステップA3)。
次に、仮3次元形状構築部12は、ステップA3の処理後の特徴点の組合せを用いて、仮の3次元座標を算出し、算出された仮の3次元座標を用いて、特徴点の点群で構成された対象物の仮の3次元形状を構築する(ステップA4)。
次に、表示装置21の画面上に表示されている画像上で、ユーザが対象物の位置を指定すると、入力受付部19は、位置の指定を受け付ける(ステップA5)。
次に、特徴点特定部13は、ステップA5で受け付けられた位置に対応する特徴点を特定し、更に、位置が指定された画像以外の画像において、先に特定した特徴点に対応する特徴点も特定する(ステップA6)。更に、特徴点特定部13は、表示部20を介して、特定した特徴点を、表示装置21の表示画面に表示させる(ステップA7)。
次に、特徴点抽出部14は、表示装置21の画面において、位置が指定された画像上で、いずれかの特徴点が指定されると、指定された特徴点を選択し、更に、他の画像上で、選択した特徴点に対応する特徴点を抽出する(ステップA8)。
次に、行列算出部15は、位置が指定された画像上で選択された特徴点と、他の画像から抽出された特徴点と、の幾何学的関係を表現する、数値行列を算出する(ステップA9)。
次に、3次元形状構築部16は、ステップA9で算出された数値行列を用いて、ステップA3の処理後の特徴点の組合せの中から、幾何学的関係が矛盾する特徴点の組合せを特定する(ステップA10)。
次に、3次元形状構築部16は、ステップA10で特定しなかった特徴点の組合せを用いて、3次元形状を構築するための3次元座標を算出する(ステップA11)。
次に、3次元形状構築部16は、ステップA11で3次元座標が算出された特徴点の適性を判定し、更に、適正でない特徴点を排除し、適正な特徴点を用いて3次元座標を再計算する。そして、3次元形状構築部16は、最終的に得られた各特徴点の3次元座標によって、対象物の点群データを構築し、これを対象物の3次元形状とする(ステップA12)。
その後、表示部20は、ステップA12で構築された3次元形状を、2次元の画像として表示装置21の画面上に表示させる(ステップA13)。
[実施の形態1における効果]
以上のように、実施の形態1によれば、ユーザは、画像上で、位置を指定するだけで、画像中の特徴点を確認でき、任意の特徴点を指定できる。そして、特徴点が指定されると、指定された特徴点とそれに対応する特徴点との幾何学的関係に基づいて、対象物の3次元形状が再構築される。この結果、3次元形状の精度の向上が図られることになる。また、ユーザは、画像上の点又は線分を厳密に指定する必要はなく、画像上の大体の位置を指定するだけで良いため、従来に比べて、ユーザの負担が軽減される。
[プログラム]
実施の形態1におけるプログラムは、コンピュータに、図10に示すステップA1~A13を実行させるプログラムであれば良い。このプログラムをコンピュータにインストールし、実行することによって、実施の形態1における画像処理装置と画像処理方法とを実現することができる。この場合、コンピュータのプロセッサは、組合せ抽出部11、仮3次元形状構築部12、特徴点特定部13、特徴点抽出部14、行列算出部15、3次元形状構築部16、画像取得部17、フィルタリング部18、入力受付部19、及び表示部20として機能し、処理を行なう。コンピュータとしては、汎用のPCの他に、スマートフォン、タブレット型端末装置が挙げられる。
また、実施の形態1におけるプログラムは、複数のコンピュータによって構築されたコンピュータシステムによって実行されても良い。この場合は、例えば、各コンピュータが、それぞれ、組合せ抽出部11、仮3次元形状構築部12、特徴点特定部13、特徴点抽出部14、行列算出部15、3次元形状構築部16、画像取得部17、フィルタリング部18、入力受付部19、及び表示部20のいずれかとして機能しても良い。
(実施形態2)
以下、実施の形態2における画像処理装置について、図11及び図12を参照しながら説明する。
[装置構成]
最初に、実施の形態2における画像処理装置の構成について説明する。実施の形態2における画像処理装置は、図2に示した実施の形態1における画像処理装置10と同様の構成を有している。このため、以下の説明では、適宜図2~図9を参照する。
但し、実施の形態2における画像処理装置は、特徴点特定部13の機能の点で、実施の形態1における画像処理装置と異なっている。以下に、実施の形態1との相違点を、図11を用いて説明する。図11は、実施の形態2における画像処理装置の機能を説明するための説明図である。
実施の形態2においても、特徴点特定部13は、実施の形態1と同様に、1つの画像上で、指定された位置に応じた特徴点を特定し、更に、位置が指定されていない別の前記画像において、この特徴点に対応する特徴点を特定する。
但し、実施の形態2では、特徴点特定部13は、各画像上で特徴点を特定すると、特定した特徴点それぞれ毎に、仮の3次元形状を用いて3次元座標を算出する。更に、特徴点特定部13は、特定した特徴点それぞれ毎に、算出した3次元座標と、それぞれが特定された画像上での2次元座標と、それぞれが特定された画像のカメラパラメータと、を用いて、算出した3次元座標についての指標を算出する。指標は、算出した3次元座標と対象物30の対応する位置における実際の3次元座標との誤差を示すものである。
ここで、指標の具体例について説明する。指標の具体例としては、再投影誤差、及びエピポーラ誤差等が挙げられる。
まず、指標として再投影誤差が用いられる場合について説明する。この場合、特徴点特定部13は、3次元座標と、特定元の画像のカメラパラメータ(カメラ行列)とを用いて、特徴点を、特定元の画像上に再投影し、再投影後の2次元座標と、特定時の2次元座標と、の差分を、再投影誤差として算出する。具体的には、特徴点特定部13は、図10に示したように、特定した特徴点それぞれ毎に、上述した数15~数18を用いて、差分dfを算出する。
続いて、指標としてエピポーラ誤差が用いられる場合について説明する。この場合、特徴点特定部13は、図5で示したように、特定した特徴点それぞれ毎に、各特徴点が存在する画像上で、上記数1を用いて、対応する特徴点が存在しているエピポーラ線に対応したエピポーラ線を求める。そして、特徴点特定部13は、特定した特徴点それぞれ毎に、各特徴点とそのエピポーラ線との距離dを算出し、算出した距離dをエピポーラ誤差とする。
そして、特徴点特定部13は、特定した特徴点に加えて、算出した指標についても提示する。この場合、図11に示すように、特徴点特定部13は、算出した指標の値に応じて変化するアイコンによって、指標の提示を行うこともできる。図11の例では、特徴点の箇所に、アイコン33が表示されている。特徴点特定部13は、指標が示す誤差の大きさに応じて、アイコン33の大きさを設定し、設定した大きさのアイコン33を、表示部20を介して表示装置21の表示画面に表示させる。
ユーザは、実施の形態1と同様に、図11に示すように、指定した位置の周辺の特徴点がアイコン33によって表示されると、入力装置を用いて、位置を指定した画像上において、いずれかの特徴点を指定する。
但し、実施の形態2においては、特徴点における指標がアイコン33の大きさによって示されているので、ユーザは、全ての画像において、アイコン33が小さくなるように、特徴点を指定することができる。この場合、特徴点抽出部14によって選択及び抽出される特徴点は、再投影誤差又はエピポーラ誤差が小さい特徴点である。従って、行列算出部15によって算出される数値行列は正確なものとなり、結果、対象物の3次元形状の精度が向上することになる。
また、実施の形態2において、アイコンの変化は、大きさの変化に限定されない。アイコンの変化は、色(色彩、濃淡等)の変化、形状の変化等であっても良い。具体的には、特徴点における指標は、アイコン33の色の変化(誤差大:赤、誤差中:黄、誤差小:青等)によって示されていても良いし、アイコン33の形状の変化(誤差大:×、誤差中:△、誤差小:○等)によって示されていても良い。なお、誤差大、誤差中、誤差小の範囲は予め閾値によって適宜設定される。
[装置動作]
次に、実施の形態2における画像処理装置の動作について図12を用いて説明する。図12は、実施の形態2における画像処理装置の動作を示すフロー図である。以下の説明においては、適宜図1~図9及び図11を参照する。また、実施の形態2でも、画像処理装置を動作させることによって、画像処理方法が実施される。よって、実施の形態2における画像処理方法の説明は、以下の画像処理装置の動作説明に代える。
図12に示すように、最初に、画像取得部17は、外部の装置から、対象物の複数の画像データを取得する(ステップB1)。ステップB1は、図10に示したステップA1と同様のステップである。ステップB1が実行されると、表示部20は、取得された各画像データの画像を表示装置21の表示画面に表示させる。
次に、組合せ抽出部11は、ステップB1で取得された画像データ毎に、画像から特徴点を特定し、更に、画像間で対応する特徴点同士を、対応する特徴点の組合せとして抽出する(ステップB2)。ステップB2は、図10に示したステップA2と同様のステップである。
次に、フィルタリング部18は、ステップB2で抽出された特徴点の組合せ毎に、特徴点間の幾何学的な関係を計算し、計算結果に基づいて、誤った特徴点の組合せを特定し、特定した特徴点の組合せを排除する(ステップB3)。ステップB3は、図10に示したステップA3と同様のステップである。
次に、仮3次元形状構築部12は、ステップB3の処理後の特徴点の組合せを用いて、仮の3次元座標を算出し、算出された仮の3次元座標を用いて、特徴点の点群で構成された対象物の仮の3次元形状を構築する(ステップB4)。ステップB4は、図10に示したステップA4と同様のステップである。
次に、表示装置21の画面上に表示されている画像上で、ユーザが対象物の位置を指定すると、入力受付部19は、位置の指定を受け付ける(ステップB5)。ステップB5は、図10に示したステップA5と同様のステップである。
次に、特徴点特定部13は、ステップB5で受け付けられた位置に対応する特徴点を特定し、更に、位置が指定された画像以外の画像において、先に特定した特徴点に対応する特徴点も特定する(ステップB6)。ステップB6は、図10に示したステップA6と同様のステップである。
次に、特徴点特定部13は、特徴点毎に指標を算出し、算出した値に応じてアイコン33の大きさを設定する。そして、特徴点特定部13は、表示部20を介して、大きさが設定されたアイコンを、特定した特徴点として、表示装置21の表示画面に表示させる(ステップB7)。
次に、特徴点抽出部14は、表示装置21の画面において、位置が指定された画像上で、いずれかの特徴点が指定されると、指定された特徴点を選択し、更に、他の画像上で、選択した特徴点に対応する特徴点を抽出する(ステップB8)。
次に、行列算出部15は、位置が指定された画像上で選択された特徴点と、他の画像から抽出された特徴点と、の幾何学的関係を表現する、数値行列を算出する(ステップB9)。ステップB9は、図10に示したステップA9と同様のステップである。
次に、3次元形状構築部16は、ステップB9で算出された数値行列を用いて、ステップB3の処理後の特徴点の組合せの中から、幾何学的関係が矛盾する特徴点の組合せを特定する(ステップB10)。ステップB10は、図10に示したステップA10と同様のステップである。
次に、3次元形状構築部16は、ステップB10で特定しなかった特徴点の組合せを用いて、3次元形状を構築するための3次元座標を算出する(ステップB11)。ステップB11は、図10に示したステップA11と同様のステップである。
次に、3次元形状構築部16は、ステップB11で3次元座標が算出された特徴点の適性を判定し、更に、適正でない特徴点を排除し、適正な特徴点を用いて3次元座標を再計算する。そして、3次元形状構築部16は、最終的に得られた各特徴点の3次元座標によって、対象物の点群データを構築し、これを対象物の3次元形状とする(ステップB12)。ステップB12は、図10に示したステップA12と同様のステップである。
その後、表示部20は、ステップA12で構築された3次元形状を、2次元の画像として表示装置21の画面上に表示させる(ステップB13)。ステップB13は、図10に示したステップA13と同様のステップである。
[実施の形態2における効果]
以上のように、実施の形態2においては、画像に表示されるアイコン33により、ユーザは指定すべき特徴点を確認することができる。つまり、実施の形態2では、ユーザは、再投影誤差又はエピポーラ誤差等が小さくなるように特徴点を指定できるので、よりいっそう、3次元形状の精度の向上が図られることになる。
[変形例]
上述した例では、画像処理装置は、算出した指標を必ず画面に表示し、ユーザに特徴点を指定させているが、実施の形態2は、これとは別の態様であっても良い。具体的には、実施の形態2は、特徴点特定部13が、各特徴点について指標を算出した後に、特徴点抽出部14が、ユーザからの指定を受け付けることなく、算出された指標に基づいて、画像毎の特徴点の選択及び抽出を実行する、態様であっても良い。この態様では、自動的に適切な特徴点が抽出されることになる。
[プログラム]
実施の形態1におけるプログラムは、コンピュータに、図12に示すステップB1~B13を実行させるプログラムであれば良い。このプログラムをコンピュータにインストールし、実行することによって、実施の形態2における画像処理装置と画像処理方法とを実現することができる。この場合、コンピュータのプロセッサは、組合せ抽出部11、仮3次元形状構築部12、特徴点特定部13、特徴点抽出部14、行列算出部15、3次元形状構築部16、画像取得部17、フィルタリング部18、入力受付部19、及び表示部20として機能し、処理を行なう。コンピュータとしては、汎用のPCの他に、スマートフォン、タブレット型端末装置が挙げられる。
また、実施の形態2におけるプログラムは、複数のコンピュータによって構築されたコンピュータシステムによって実行されても良い。この場合は、例えば、各コンピュータが、それぞれ、組合せ抽出部11、仮3次元形状構築部12、特徴点特定部13、特徴点抽出部14、行列算出部15、3次元形状構築部16、画像取得部17、フィルタリング部18、入力受付部19、及び表示部20のいずれかとして機能しても良い。
[物理構成]
ここで、実施の形態1及び2におけるプログラムを実行することによって、画像処理装置を実現するコンピュータについて図13を用いて説明する。図13は、実施の形態1及び2における画像処理装置を実現するコンピュータの一例を示すブロック図である。
図13に示すように、コンピュータ110は、CPU(Central Processing Unit)111と、メインメモリ112と、記憶装置113と、入力インターフェイス114と、表示コントローラ115と、データリーダ/ライタ116と、通信インターフェイス117とを備える。これらの各部は、バス121を介して、互いにデータ通信可能に接続される。
また、コンピュータ110は、CPU111に加えて、又はCPU111に代えて、GPU(Graphics Processing Unit)、又はFPGA(Field-Programmable Gate Array)を備えていても良い。この態様では、GPU又はFPGAが、実施の形態におけるプログラムを実行することができる。
CPU111は、記憶装置113に格納された、コード群で構成された実施の形態におけるプログラムをメインメモリ112に展開し、各コードを所定順序で実行することにより、各種の演算を実施する。メインメモリ112は、典型的には、DRAM(Dynamic Random Access Memory)等の揮発性の記憶装置である。
また、実施の形態におけるプログラムは、コンピュータ読み取り可能な記録媒体120に格納された状態で提供される。なお、本実施の形態におけるプログラムは、通信インターフェイス117を介して接続されたインターネット上で流通するものであっても良い。
また、記憶装置113の具体例としては、ハードディスクドライブの他、フラッシュメモリ等の半導体記憶装置が挙げられる。入力インターフェイス114は、CPU111と、キーボード及びマウスといった入力機器118との間のデータ伝送を仲介する。表示コントローラ115は、ディスプレイ装置119と接続され、ディスプレイ装置119での表示を制御する。
データリーダ/ライタ116は、CPU111と記録媒体120との間のデータ伝送を仲介し、記録媒体120からのプログラムの読み出し、及びコンピュータ110における処理結果の記録媒体120への書き込みを実行する。通信インターフェイス117は、CPU111と、他のコンピュータとの間のデータ伝送を仲介する。
また、記録媒体120の具体例としては、CF(Compact Flash(登録商標))及びSD(Secure Digital)等の汎用的な半導体記憶デバイス、フレキシブルディスク(Flexible Disk)等の磁気記録媒体、又はCD-ROM(Compact Disk Read Only Memory)などの光学記録媒体が挙げられる。
なお、本実施の形態における画像処理装置は、プログラムがインストールされたコンピュータではなく、各部に対応したハードウェアを用いることによっても実現可能である。更に、画像処理装置は、一部がプログラムで実現され、残りの部分がハードウェアで実現されていてもよい。
上述した実施の形態の一部又は全部は、以下に記載する(付記1)~(付記15)によって表現することができるが、以下の記載に限定されるものではない。
(付記1)
対象物の複数の画像それぞれから、対応する特徴点の組合せを抽出する、組合せ抽出部と、
抽出された前記特徴点の組合せを用いて、前記特徴点の点群で構成された、前記対象物の仮の3次元形状を構築する、仮3次元形状構築部と、
前記複数の画像の1つの前記画像において、前記対象物上の位置が指定されると、指定された位置に応じて対応する前記特徴点を特定し、更に、位置が指定されていない別の前記画像において、特定した前記特徴点に対応する前記特徴点を特定する、特徴点特定部と、
前記対象物上の位置が指定された前記画像において、特定された前記特徴点のなかから、設定条件を満たすいずれかの特徴点を選択し、前記別の画像において、選択した前記特徴点に対応する前記特徴点を抽出する、特徴点抽出部と、
前記選択された特徴点と抽出された前記特徴点との幾何学的関係を表現する、数値行列を算出する、行列算出部と、
前記数値行列を用いて、抽出された前記特徴点の組合せの中から、特徴点間の幾何学的関係が矛盾する前記特徴点の組合せを特定し、そして、
特定した前記特徴点の組合せ以外の前記特徴点の組合せを用いて、前記対象物の3次元形状を構築する、3次元形状構築部と、
を備えている、ことを特徴とする画像処理装置。
(付記2)
付記1に記載の画像処理装置であって、
前記特徴点特定部が、更に、特定した前記特徴点を、前記複数の画像それぞれと共に、画面上に提示し、
前記特徴点抽出部が、前記画面上で、前記対象物上の位置が指定された前記画像における前記特徴点のいずれかが指定されると、指定されたことを前記設定条件として、指定された前記特徴点を選択する、
ことを特徴とする画像処理装置。
(付記3)
付記1または2に記載の画像処理装置であって、
前記特徴点特定部が、
特定した前記特徴点それぞれ毎に、前記仮の3次元形状を用いて3次元座標を算出し、算出した前記3次元座標と、それぞれが特定された前記画像上での2次元座標と、それぞれが特定された前記画像のカメラパラメータと、を用いて、算出した前記3次元座標と前記対象物の対応する位置における実際の3次元座標との誤差を示す指標を算出し、
特定した前記特徴点に加えて、算出した前記指標を提示する、
ことを特徴とする画像処理装置。
(付記4)
付記3に記載の画像処理装置であって、
前記特徴点特定部が、前記指標として、前記特徴点の再投影誤差を算出し、算出した前記再投影誤差の値に応じてサイズが変化するアイコンを提示することで、前記指標を提示する、
ことを特徴とする画像処理装置。
(付記5)
付記3に記載の画像処理装置であって、
前記特徴点特定部が、前記指標として、前記特徴点のエピポーラ誤差を算出し、算出した前記エピポーラ誤差の値に応じて変化するアイコンを提示することで、前記指標を提示する、
ことを特徴とする画像処理装置。
(付記6)
対象物の複数の画像それぞれから、対応する特徴点の組合せを抽出する、組合せ抽出ステップと、
抽出された前記特徴点の組合せを用いて、前記特徴点の点群で構成された、前記対象物の仮の3次元形状を構築する、仮3次元形状構築ステップと、
前記複数の画像の1つの前記画像において、前記対象物上の位置が指定されると、指定された位置に応じて対応する前記特徴点を特定し、更に、位置が指定されていない別の前記画像において、特定した前記特徴点に対応する前記特徴点を特定する、特徴点特定ステップと、
前記対象物上の位置が指定された前記画像において、特定された前記特徴点のなかから、設定条件を満たすいずれかの特徴点を選択し、前記別の画像において、選択した前記特徴点に対応する前記特徴点を抽出する、特徴点抽出ステップと、
前記選択された特徴点と抽出された前記特徴点との幾何学的関係を表現する、数値行列を算出する、行列算出ステップと、
前記数値行列を用いて、抽出された前記特徴点の組合せの中から、特徴点間の幾何学的関係が矛盾する前記特徴点の組合せを特定し、そして、
特定した前記特徴点の組合せ以外の前記特徴点の組合せを用いて、前記対象物の3次元形状を構築する、3次元形状構築ステップと、
を有する、ことを特徴とする画像処理方法。
(付記7)
付記6に記載の画像処理方法であって、
前記特徴点特定ステップにおいて、更に、特定した前記特徴点を、前記複数の画像それぞれと共に、画面上に提示し、
前記特徴点抽出ステップにおいて、前記画面上で、前記対象物上の位置が指定された前記画像における前記特徴点のいずれかが指定されると、指定されたことを前記設定条件として、指定された前記特徴点を選択する、
ことを特徴とする画像処理方法。
(付記8)
付記6または7に記載の画像処理方法であって、
前記特徴点特定ステップにおいて、
特定した前記特徴点それぞれ毎に、前記仮の3次元形状を用いて3次元座標を算出し、算出した前記3次元座標と、それぞれが特定された前記画像上での2次元座標と、それぞれが特定された前記画像のカメラパラメータと、を用いて、算出した前記3次元座標と前記対象物の対応する位置における実際の3次元座標との誤差を示す指標を算出し、
特定した前記特徴点に加えて、算出した前記指標を提示する、
ことを特徴とする画像処理方法。
(付記9)
付記8に記載の画像処理方法であって、
前記特徴点特定ステップにおいて、前記指標として、前記特徴点の再投影誤差を算出し、
算出した前記再投影誤差の値に応じてサイズが変化するアイコンを提示することで、前記指標を提示する、
ことを特徴とする画像処理方法。
(付記10)
付記8に記載の画像処理方法であって、
前記特徴点特定ステップにおいて、前記指標として、前記特徴点のエピポーラ誤差を算出し、算出した前記エピポーラ誤差の値に応じて変化するアイコンを提示することで、前記指標を提示する、
ことを特徴とする画像処理方法。
(付記11)
コンピュータに、
対象物の複数の画像それぞれから、対応する特徴点の組合せを抽出する、組合せ抽出ステップと、
抽出された前記特徴点の組合せを用いて、前記特徴点の点群で構成された、前記対象物の仮の3次元形状を構築する、仮3次元形状構築ステップと、
前記複数の画像の1つの前記画像において、前記対象物上の位置が指定されると、指定された位置に応じて対応する前記特徴点を特定し、更に、位置が指定されていない別の前記画像において、特定した前記特徴点に対応する前記特徴点を特定する、特徴点特定ステップと、
前記対象物上の位置が指定された前記画像において、特定された前記特徴点のなかから、設定条件を満たすいずれかの特徴点を選択し、前記別の画像において、選択した前記特徴点に対応する前記特徴点を抽出する、特徴点抽出ステップと、
前記選択された特徴点と抽出された前記特徴点との幾何学的関係を表現する、数値行列を算出する、行列算出ステップと、
前記数値行列を用いて、抽出された前記特徴点の組合せの中から、特徴点間の幾何学的関係が矛盾する前記特徴点の組合せを特定し、そして、
特定した前記特徴点の組合せ以外の前記特徴点の組合せを用いて、前記対象物の3次元形状を構築する、3次元形状構築ステップと、
を実行させる、プログラム。
(付記12)
付記11に記載のプログラムであって、
前記特徴点特定ステップにおいて、更に、特定した前記特徴点を、前記複数の画像それぞれと共に、画面上に提示し、
前記特徴点抽出ステップにおいて、前記画面上で、前記対象物上の位置が指定された前記画像における前記特徴点のいずれかが指定されると、指定されたことを前記設定条件として、指定された前記特徴点を選択する、
ことを特徴とするプログラム。
(付記13)
付記11または12に記載のプログラムであって、
前記特徴点特定ステップにおいて、
特定した前記特徴点それぞれ毎に、前記仮の3次元形状を用いて3次元座標を算出し、算出した前記3次元座標と、それぞれが特定された前記画像上での2次元座標と、それぞれが特定された前記画像のカメラパラメータと、を用いて、算出した前記3次元座標と前記対象物の対応する位置における実際の3次元座標との誤差を示す指標を算出し、
特定した前記特徴点に加えて、算出した前記指標を提示する、
ことを特徴とするプログラム。
(付記14)
付記13に記載のプログラムであって、
前記特徴点特定ステップにおいて、前記指標として、前記特徴点の再投影誤差を算出し、
算出した前記再投影誤差の値に応じてサイズが変化するアイコンを提示することで、前記指標を提示する、
ことを特徴とするプログラム。
(付記15)
付記13に記載のプログラムであって、
前記特徴点特定ステップにおいて、前記指標として、前記特徴点のエピポーラ誤差を算出し、算出した前記エピポーラ誤差の値に応じて変化するアイコンを提示することで、前記指標を提示する、
ことを特徴とするプログラム。
以上のように本開示によれば、複数の画像を用いて対象の3次元形状を構築する際において、3次元形状の精度の向上を図りつつ、作業者の負担を軽減することができる。本発明は、画像から対象物の3次元形状を構築することが求められる分野において有用である。
10 画像処理装置
11 組合せ抽出部
12 仮3次元形状構築部
13 特徴点特定部
14 特徴点抽出部
15 行列算出部
16 3次元形状構築部
17 画像取得部
18 フィルタリング部
19 入力受付部
20 表示部
30 対象物
31 カーソル
32 特徴点
33 アイコン
41、42 カメラ
51、52 画像
110 コンピュータ
111 CPU
112 メインメモリ
113 記憶装置
114 入力インターフェイス
115 表示コントローラ
116 データリーダ/ライタ
117 通信インターフェイス
118 入力機器
119 ディスプレイ装置
120 記録媒体
121 バス

Claims (7)

  1. 対象物の複数の画像それぞれから、対応する特徴点の組合せを抽出する、組合せ抽出部と、
    抽出された前記特徴点の組合せを用いて、前記特徴点の点群で構成された、前記対象物の仮の3次元形状を構築する、仮3次元形状構築部と、
    前記複数の画像の1つの前記画像において、前記対象物上の位置が指定されると、指定された位置に応じて対応する前記特徴点を特定し、更に、位置が指定されていない別の前記画像において、特定した前記特徴点に対応する前記特徴点を特定する、特徴点特定部と、
    前記対象物上の位置が指定された前記画像において、特定された前記特徴点のなかから、設定条件を満たすいずれかの特徴点を選択し、前記別の画像において、選択した前記特徴点に対応する前記特徴点を抽出する、特徴点抽出部と、
    前記選択された特徴点と抽出された前記特徴点との幾何学的関係を表現する、数値行列を算出する、行列算出部と、
    前記数値行列を用いて、抽出された前記特徴点の組合せの中から、特徴点間の幾何学的関係が矛盾する前記特徴点の組合せを特定し、そして、
    特定した前記特徴点の組合せ以外の前記特徴点の組合せを用いて、前記対象物の3次元形状を構築する、3次元形状構築部と、
    を備えている、ことを特徴とする画像処理装置。
  2. 請求項1に記載の画像処理装置であって、
    前記特徴点特定部が、更に、特定した前記特徴点を、前記複数の画像それぞれと共に、画面上に提示し、
    前記特徴点抽出部が、前記画面上で、前記対象物上の位置が指定された前記画像における前記特徴点のいずれかが指定されると、指定されたことを前記設定条件として、指定された前記特徴点を選択する、
    ことを特徴とする画像処理装置。
  3. 請求項1または2に記載の画像処理装置であって、
    前記特徴点特定部が、
    特定した前記特徴点それぞれ毎に、前記仮の3次元形状を用いて3次元座標を算出し、算出した前記3次元座標と、それぞれが特定された前記画像上での2次元座標と、それぞれが特定された前記画像のカメラパラメータと、を用いて、算出した前記3次元座標と前記対象物の対応する位置における実際の3次元座標との誤差を示す指標を算出し、
    特定した前記特徴点に加えて、算出した前記指標を提示する、
    ことを特徴とする画像処理装置。
  4. 請求項3に記載の画像処理装置であって、
    前記特徴点特定部が、前記指標として、前記特徴点の再投影誤差を算出し、算出した前記再投影誤差の値に応じてサイズが変化するアイコンを提示することで、前記指標を提示する、
    ことを特徴とする画像処理装置。
  5. 請求項3に記載の画像処理装置であって、
    前記特徴点特定部が、前記指標として、前記特徴点のエピポーラ誤差を算出し、算出した前記エピポーラ誤差の値に応じて変化するアイコンを提示することで、前記指標を提示する、
    ことを特徴とする画像処理装置。
  6. 対象物の複数の画像それぞれから、対応する特徴点の組合せを抽出する、組合せ抽出ステップと、
    抽出された前記特徴点の組合せを用いて、前記特徴点の点群で構成された、前記対象物の仮の3次元形状を構築する、仮3次元形状構築ステップと、
    前記複数の画像の1つの前記画像において、前記対象物上の位置が指定されると、指定された位置に応じて対応する前記特徴点を特定し、更に、位置が指定されていない別の前記画像において、特定した前記特徴点に対応する前記特徴点を特定する、特徴点特定ステップと、
    前記対象物上の位置が指定された前記画像において、特定された前記特徴点のなかから、設定条件を満たすいずれかの特徴点を選択し、前記別の画像において、選択した前記特徴点に対応する前記特徴点を抽出する、特徴点抽出ステップと、
    前記選択された特徴点と抽出された前記特徴点との幾何学的関係を表現する、数値行列を算出する、行列算出ステップと、
    前記数値行列を用いて、抽出された前記特徴点の組合せの中から、特徴点間の幾何学的関係が矛盾する前記特徴点の組合せを特定し、そして、
    特定した前記特徴点の組合せ以外の前記特徴点の組合せを用いて、前記対象物の3次元形状を構築する、3次元形状構築ステップと、
    を有する、ことを特徴とする画像処理方法。
  7. コンピュータに、
    対象物の複数の画像それぞれから、対応する特徴点の組合せを抽出する、組合せ抽出ステップと、
    抽出された前記特徴点の組合せを用いて、前記特徴点の点群で構成された、前記対象物の仮の3次元形状を構築する、仮3次元形状構築ステップと、
    前記複数の画像の1つの前記画像において、前記対象物上の位置が指定されると、指定された位置に応じて対応する前記特徴点を特定し、更に、位置が指定されていない別の前記画像において、特定した前記特徴点に対応する前記特徴点を特定する、特徴点特定ステップと、
    前記対象物上の位置が指定された前記画像において、特定された前記特徴点のなかから、設定条件を満たすいずれかの特徴点を選択し、前記別の画像において、選択した前記特徴点に対応する前記特徴点を抽出する、特徴点抽出ステップと、
    前記選択された特徴点と抽出された前記特徴点との幾何学的関係を表現する、数値行列を算出する、行列算出ステップと、
    前記数値行列を用いて、抽出された前記特徴点の組合せの中から、特徴点間の幾何学的関係が矛盾する前記特徴点の組合せを特定し、そして、
    特定した前記特徴点の組合せ以外の前記特徴点の組合せを用いて、前記対象物の3次元形状を構築する、3次元形状構築ステップと、
    を実行させる、プログラム。
JP2022005357A 2022-01-17 2022-01-17 画像処理装置、画像処理方法、及びプログラム Pending JP2023104399A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2022005357A JP2023104399A (ja) 2022-01-17 2022-01-17 画像処理装置、画像処理方法、及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2022005357A JP2023104399A (ja) 2022-01-17 2022-01-17 画像処理装置、画像処理方法、及びプログラム

Publications (1)

Publication Number Publication Date
JP2023104399A true JP2023104399A (ja) 2023-07-28

Family

ID=87379306

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022005357A Pending JP2023104399A (ja) 2022-01-17 2022-01-17 画像処理装置、画像処理方法、及びプログラム

Country Status (1)

Country Link
JP (1) JP2023104399A (ja)

Similar Documents

Publication Publication Date Title
JP6716996B2 (ja) 画像処理プログラム、画像処理装置、及び画像処理方法
US10643347B2 (en) Device for measuring position and orientation of imaging apparatus and method therefor
US20110110557A1 (en) Geo-locating an Object from Images or Videos
KR20210102348A (ko) 선호된 포인트들을 식별하고 유지하는 포인트 클라우드들의 병합 방법
US9311756B2 (en) Image group processing and visualization
CN109919971B (zh) 图像处理方法、装置、电子设备及计算机可读存储介质
JP7188201B2 (ja) 画像処理装置、画像処理方法、及び画像処理プログラム
TW201616451A (zh) 點雲套索選取系統及方法
EP3300025A1 (en) Image processing device and image processing method
US11189053B2 (en) Information processing apparatus, method of controlling information processing apparatus, and non-transitory computer-readable storage medium
US9558561B2 (en) Semiautomatic drawing tool for image segmentation
US20120038785A1 (en) Method for producing high resolution image
US8861838B2 (en) Apparatus and method for correcting stereoscopic image using matching information
JP6989153B2 (ja) 画像処理装置、画像処理方法、及びプログラム
JP2019106008A (ja) 推定装置、推定方法、及び推定プログラム
JP2023104399A (ja) 画像処理装置、画像処理方法、及びプログラム
JP7276978B2 (ja) 画像処理装置、画像処理方法、及びプログラム
JP2022064506A (ja) 画像処理装置、画像処理方法、及びプログラム
JP7188798B2 (ja) 座標算出装置、座標算出方法、及びプログラム
JP7294702B2 (ja) 画像処理装置、画像処理方法、及びプログラム
JP7265143B2 (ja) 表示制御方法、表示制御プログラムおよび情報処理装置
JP2018032144A (ja) 画像処理装置、画像処理方法およびプログラム。
JP7063165B2 (ja) 計測装置、計測方法及び計測プログラム
EP3457353B1 (en) Method and system for obtaining a true shape of objects in a medical image
JP2019105992A (ja) 画像処理装置、画像処理プログラム及び画像処理方法