JP4166451B2 - Two image matching device - Google Patents

Two image matching device Download PDF

Info

Publication number
JP4166451B2
JP4166451B2 JP2001252840A JP2001252840A JP4166451B2 JP 4166451 B2 JP4166451 B2 JP 4166451B2 JP 2001252840 A JP2001252840 A JP 2001252840A JP 2001252840 A JP2001252840 A JP 2001252840A JP 4166451 B2 JP4166451 B2 JP 4166451B2
Authority
JP
Japan
Prior art keywords
pixel
point
image
optimum search
designated
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2001252840A
Other languages
Japanese (ja)
Other versions
JP2002163651A (en
Inventor
紳聡 阿部
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hoya Corp
Original Assignee
Hoya Corp
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 Hoya Corp filed Critical Hoya Corp
Priority to JP2001252840A priority Critical patent/JP4166451B2/en
Publication of JP2002163651A publication Critical patent/JP2002163651A/en
Application granted granted Critical
Publication of JP4166451B2 publication Critical patent/JP4166451B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

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

Description

【0001】
【発明の属する技術分野】
本発明は、写真測量等において用いられる、2枚の画像のマッチング装置に関する。
【0002】
【従来の技術】
従来写真測量において、共通の被写体を含む2つの画像を撮影してコンピュータに入力し、モニタ装置の画面上において、一方の画像に含まれる指示点を選択することによって、他方の画像における対応点を検出する処理が行われることがある。この処理では、指示点が選択されることによって、まず他方の画像において、対応点を含む直線すなわち対応線が求められる。次に、対応線上に位置する画素において、指示点の画素値に最も近いものが抽出され、対応点として検出される。
【0003】
このような対応点の検出処理において、一方の画像から選択された1つの指示点のみに基づいて他方の画像から対応点を検出する手法によると、指示点の画素値に近い複数の画素が対応線上に存在することがあり、必ずしも正しい点が検出されるとは限らない。
【0004】
【発明が解決しようとする課題】
そこで、指示点の近傍の固定された(n×n)画素を用いて対応点を検出する手法が提案されている。すなわち、これは、対応線上の各点に関し、その周囲の(n×n)画素について指示点近傍の(n×n)画素の画素値との相関を比較するものである。しかし、このように多数の画素を用いる手法によると、処理時間が長くなるという問題を生じる。
【0005】
本発明は、一方の画像の指示点に対応する対応点を他方の画像から検出するマッチング装置において、対応点を正確かつ短時間に検出することを目的としている。
【0006】
【課題を解決するための手段】
本発明に係る第1のマッチング装置は、第1の画像における任意の画素を指示点として指定する指示点指定手段と、第1の画像において、指示点の画素の近傍に位置する複数の最適探索画素および指示点の各画素値の変化が最も大きくなるように複数の最適探索画素を選択する最適探索画素選択手段と、第2の画像において、指示点および最適探索画素にそれぞれ対応する候補点および候補点周囲画素を求める候補点画素取得手段と、指示点および最適探索画素の各画素値と候補点および候補点周囲画素の各画素値とに基づいて、誤差を算出する誤差算出手段と、誤差が最小になるような候補点を、指示点に対応する対応点として求める対応点取得手段とを備えたことを特徴としている。
【0007】
最適探索画素は例えば、第1の画像において、指示点の周囲に位置する複数の領域に含まれる。また最適探索画素は、第1の画像において、指示点に対して相対的に右上、左上、右下および左下にそれぞれ位置する4個の画素であってもよい。
【0008】
最適探索画素選択手段は例えば、指示点の画素値と最適探索画素の画素値との差の二乗和が最大になるようにして複数の最適探索画素として選択する。また最適探索画素選択手段は、レッド、グリーンおよびブルーについて、指示点の画素値と最適探索画素の画素値との差の二乗和を求めることが好ましい。
【0009】
マッチング装置は、第1および第2の画像の各画素の画素値および座標に関する画素情報と第1および第2の画像を撮影したときのカメラの撮影位置および姿勢に関する撮影位置情報とを入力する画像・撮影位置情報入力手段を備えることが好ましい。この場合、候補点画素取得手段は例えば、第1の画像における指示点の座標と第1の画像を撮影したときのカメラの撮影位置情報とを用いて、実空間上での指示点に対応する直線である対応線を求める対応線算出手段と、対応線上の1点の実空間上における座標と第2の画像を撮影したときのカメラの撮影位置情報とを用いて、候補点を求める対応候補点算出手段とを備える。
【0010】
好ましくは対応線算出手段は、指示点の座標と、第1の画像を撮影したときのカメラの撮影位置情報と、カメラの焦点距離と、第1の画像の画素ピッチとに基づいて対応線を求める。また対応候補点算出手段は、対応線上の1点の実空間上における座標と、第2の画像を撮影したときのカメラの撮影位置情報とカメラの焦点距離と第2の画像の画素ピッチとに基づいて候補点を求めてもよい。対応線は例えば、カメラにおける所定の点と指示点を通る直線である。
【0011】
誤差算出手段は、指示点および最適探索画素の各画素値と候補点および候補点周囲画素の各画素値との差の二乗和を誤差として求めてもよい。また誤差算出手段は、レッド、グリーンおよびブルーについて、指示点および最適探索画素の各画素値と候補点および候補点周囲画素の各画素値との差の二乗和を誤差として求めてもよい。
【0012】
本発明に係る第2のマッチング装置は、第1の画像における任意の画素を指示点として指定する指示点指定手段と、第1の画像において、指示点の画素の近傍に位置する複数の最適探索画素および指示点の各画素値の変化が最も大きくなるように複数の最適探索画素を選択する最適探索画素選択手段とを備えたことを特徴としている。
【0013】
【発明の実施の形態】
以下、本発明の実施形態を図面を参照して説明する。
図1は本発明の一実施形態のマッチング装置であるコンピュータのモニタ画面に表示された画面を示している。画面の左側には第1の画像A0が示され、右側には第2の画像B0が示されている。第1の画像A0において指示点P0が選択されることにより、マッチング装置の作用によって、第2の画像B0では指示点P0に対応した対応点Q0が検出されて表示される。
【0014】
第1の画像A0と第2の画像B0は、共通の被写体であるターゲット(基準尺)11を含んでおり、異なる方向から撮影されたものである。なお、この例では、ターゲット11は路面に載置されている。
【0015】
ターゲット11はL字型を呈し、その上面には6個の指標板12が設けられている。指標板12の1つはターゲット11の角部に位置し、指標板12のうちの2つはターゲット11の先端部に位置している。他の指標板12は角部と先端部の間に位置している。角部の指標板12の中心部には、第1の基準点部材13が設けられ、2つの先端部の指標板12の中心部には、それぞれ第2の基準点部材14が設けられている。他の3つの指標板12には、それぞれ補助点部材15が設けられている。
【0016】
図2は、第1および第2の画像A0、B0が撮影された場所における実空間の座標系を示している。この座標系において、原点Oは第1の基準点部材13の中心点である。X軸は、第1の基準点部材13の中心と、第1の画像A0において右側に位置する第2の基準点部材14の中心とを結ぶ直線である。X軸の正の方向は第1の基準点部材13から第2の基準点部材14へ向かう方向である。Z軸は、第1の基準点部材13の中心と、第1の画像A0において左側に位置する第2の基準点部材14の中心とを結ぶ直線である。Z軸の正の方向は第1の基準点部材13から第2の基準点部材14へ向かう方向である。各補助点部材15は、X軸上またはZ軸上に位置している。Y軸はX軸とZ軸に垂直であり、路面に対して上側が正の方向である。
【0017】
第1および第2の画像を撮影したカメラの実空間における位置座標をC(x,y,z)とする。一方、カメラの姿勢すなわち撮影レンズの光軸の傾斜(α,β,γ)は図3に示すように定義される。すなわち、βは撮影レンズの光軸のY軸周りの回転角である。X軸、Y軸、Z軸をY軸周りにβだけ回転させて得られる座標軸をX’軸、Y’軸、Z’軸とすると、αは撮影レンズの光軸のX’軸周りの回転角である。X’軸、Y’軸、Z’軸をX’軸周りにαだけ回転させて得られる座標軸をX”軸、Y”軸、Z”軸とすると、γは撮影レンズの光軸のZ”軸周りの回転角である。
【0018】
再び図1を参照すると、マッチング装置では、例えばマウスあるいはキーボードを用いて、第1の画像A0の中から任意の1つの画素が指示点P0として選択される。マッチング装置では、従来公知の手法によって、第1の画像A0における指示点P0と、カメラの例えば撮像素子の受光面の中心点とを結ぶ直線が対応線L1として求められる。第2の画像B0では、対応線L1の投影図が表示される。対応線L1は、実空間上での指示点P0を含んだ直線であるが、対応線L1を求めただけでは、第2の画像B0において指示点P0に対応した対応点Q0の位置は特定されない。本実施形態では、後述するように、第1の画像A0において指示点P0の画素の近傍に位置する所定の複数の画素(最適探索画素)を用いて、対応点Q0が検出される。
【0019】
図4はマッチング装置のブロック図である。
画像・撮影位置情報入力部21には、第1の画像A0を撮影したときのカメラの撮影位置情報A1と、第1の画像A0の画素情報A2と、第2の画像B0を撮影したときの撮影位置情報B1と、第2の画像B0の画素情報B2とが入力される。撮影位置情報A1は、実空間における原点に対するカメラの位置および姿勢を示し、CMA(x,y,z,α,β,γ)と表される。画素情報A2は第1の画像A0における各画素の座標と、各画素の画素値すなわちレッド、グリーンおよびブルーのレベル値とから成る。撮影位置情報B1は、実空間における原点に対するカメラの位置および姿勢を示し、CMB(x,y,z,α,β,γ)と表される。画素情報B2は第2の画像B0における各画素の座標と、各画素のレッド、グリーンおよびブルーのレベル値とから成る。
【0020】
撮影位置情報A1、B1、と画素情報A2、B2は、画像・撮影位置情報入力部21から最適探索画素設定部22に受け渡される。最適探索画素設定部22では、マウスあるいはキーボードを用いて第1の画像A0の中から選択された指示点P0の情報に基づいて、指示点P0の画素の周囲に位置する最適探索画素が設定される。最適探索画素は、第1の画像A0において、指示点P0の周囲に位置する4つの領域に含まれ、本実施形態では、指示点P0に対して相対的に右上、左上、右下および左下にそれぞれ位置する4個の画素である。最適探索画素の求め方については後述する。
【0021】
対応画素算出部23では、指示点P0の画素と、最適探索画素設定部22において設定された最適探索画素と、画像・撮影位置情報入力部21に入力された各種の情報とに基づいて、第2の画像B0における、指示点P0および最適探索画素にそれぞれ対応する候補点および候補点周囲画素が求められる。まず候補点を求めるのに先立ち、下記(1)式によって表される、実空間における対応線L1が求められる。
R(x,y,z)=f(ix,iy,CMA,F,d) (1)
【0022】
(1)式においてixとiyは、図5に示すように、第1の画像A0における指示点P0のIX座標(横座標)およびIY座標(縦座標)を示し、原点は第1の画像A0の中心である。CMAは、第1の画像A0を撮影したときのカメラの位置および姿勢を示す撮影位置情報A1である。Fはカメラの撮影レンズの焦点距離、dは第1の画像A0における画素ピッチすなわち隣接する2つの画素間の距離を示す。(1)式から理解されるように、実空間上の対応線L1は、x,y,zをパラメータとして表され、ix,iy,CMA,F,dの関数である。この関数すなわち対応線L1の求め方は従来公知であるので、その説明を省略する。
【0023】
次に(2)式に従って、第2の画像B0における対応線L1上の画素すなわち候補点の座標が求められる。
Q(kx,ky)=g(R,CMB,F,d) (2)
【0024】
(2)式において、kxとkyは、第2の画像B0における候補点のIX’座標(横座標)およびIY’座標(縦座標)を示し、原点は第2の画像B0の中心である。CMBは、第2の画像B0を撮影したときのカメラの位置および姿勢を示す撮影位置情報B1である。Fはカメラの撮影レンズの焦点距離、dは第2の画像B0における画素ピッチすなわち隣接する2つの画素間の距離を示す。すなわち候補点は、kx,kyをパラメータとして表され、R,CMB,F,dの関数である。この関数すなわち候補点の求め方は従来公知であるので、その説明を省略する。
【0025】
このようにして、(1)式に従って実空間における対応線L1上の点R1(x1,y1,z1)が選択されると、(2)式に従って、第2の画像B0において点R1(x1,y1,z1)に対応した候補点Q1が求められる。そして、候補点Q1に関し、指示点P0に対する最適探索画素と同じ位置関係にある候補点周囲画素が求められる。なお本実施形態において、点R1(x1,y1,z1)は第2の画像B0に含まれ、かつ最もカメラに近い点であると仮定する。
【0026】
誤差計算部24では、最適探索画素設定部22から出力された指示点P0および最適探索画素の各画素値と、対応画素算出部23から出力された候補点Q1および候補点周囲画素の各画素値との差の二乗和が誤差として算出される。次いで候補点更新部25では、次の候補点を選択するためにz座標値が更新され、このz座標値は候補点Q1を求めたときのz座標値よりも所定値だけ大きい。すなわち点R2(x2,y2,z2)が選択され、対応画素算出部23では、(2)式に従って、点R2(x2,y2,z2)を用いて次の候補点Q2と候補点周囲画素が求められる。図5の例で説明すると、候補点Q2は候補点Q1の右側に位置している。
【0027】
誤差計算部24では、新しい候補点Q2に関して、候補点Q1の場合と同様にして誤差が算出される。このようにして対応画素算出部23、誤差計算部24および候補点更新部25において、実空間上の対応線L1におけるz座標値が更新されて処理が実行され、第2の画像B0内における対応線L1上の各候補点Q1,Q2...Q7に関して誤差が求められる。
【0028】
最適対応画素決定部26では、誤差計算部24において求められた全ての候補点に関する誤差がチェックされて、誤差が最小になるような候補点が指示点P0に対応する対応点Q0として求められる。この対応点Q0は、画素位置表示部27の処理によって、モニタ画面の第2の画像B0において表示される(図1参照)。
【0029】
図6は、対応画素算出部23、誤差計算部24、候補点更新部25および最適対応画素決定部26において実行され、指示点に基づいて対応点を決定する対応点決定処理ルーチンのフローチャートである。
【0030】
ステップ101では、マウスあるいはキーボードを用いて選択された指示点P0の情報が入力される。ステップ102では、上記(1)式に従って対応線L1が求められるとともに、パラメータzが所定の値に定められて、対応線L1上の点R1〜Rnが算出される。ステップ103では、誤差の最小値Emin が初期値E1 に、最小値Emin をとるときの候補点を示すパラメータmin が初期値1に、またカウンタiが初期値2にそれぞれ定められる。
【0031】
ステップ104では、上記(2)式に従って、点Riに対応する候補点Qiおよび候補点周囲画素が算出される。ステップ105では、候補点Qiおよび候補点周囲画素に関する誤差Eiが算出される。この計算は下記(3)式に従って行われる。
Ei=Σ(PR−QRi)2+Σ(PG−QGi)2
+Σ(PB−QBi)2 (3)
【0032】
(3)式において、PR,PG,PBはそれぞれ、指示点P0あるいは最適探索画素におけるレッド、グリーンおよびブルーの画素値である。QRi,QGi,QBiはそれぞれ、候補点Qiあるいは候補点周囲画素におけるレッド、グリーンおよびブルーの画素値である。Σは、指示点、最適探索画素、候補点および候補点周囲画素について、すなわち5点について二乗和が求められることを示す。すなわち(3)式により、レッド、グリーンおよびブルーについて、指示点P0および最適探索画素の各画素値と候補点Qiおよび候補点周囲画素の各画素値との差の二乗和が求められる。
【0033】
ステップ106では、ステップ105において求められた誤差Eiが、今までに求められている最小値Emin よりも小さいか否かが判定される。小さければ、ステップ107において誤差Eiが最小値Emin として更新される。また、誤差Eiに対応したカウンタiが最小値Emin に対応したパラメータmin として更新される。これに対し、ステップ106において誤差Eiが最小値Emin 以上であると判定された場合、ステップ107は実行されない。
【0034】
ステップ106または107の後、ステップ108ではカウンタiが1だけインクリメントされる。ステップ109では、カウンタiの値が候補点の総数nよりも大きいか否かが判定される。カウンタiの値が候補点の総数n以下であるとき、ステップ104へ戻り、上述した処理が再び実行される。ステップ109においてカウンタiの値が候補点の総数nよりも大きいと判定されたとき、ステップ110が実行される。
【0035】
ステップ110では、ステップ107において求められた最小値Emin を有する候補点が対応点Q0として第2の画像B0上に表示される(図1参照)。ステップ111では、対応点Q0の座標(Xmin,Ymin,Zmin )がモニタ画面の所定の部位に表示され、これにより対応点決定処理ルーチンは終了する。
【0036】
図7は最適探索画素設定部22において最適探索画素を決定するための処理を示し、図8は指示点P0およびその近傍に位置する画素の画素値を例示している。これらの図を参照して最適探索画素の求め方を説明する。
【0037】
マウス等を用いて指示点P0が選択されると、第1の画像A0における指示点P0の座標(ix,iy)と画素値が求められる。図8の例では、画素値は236である。
【0038】
第1の画像A0において、指示点P0に隣接する4つの領域1〜4が定義される。領域1は、指示点P0の直ぐ上の画素(170)を左下隅とする。領域2は、指示点P0の直ぐ左の画素(202)を右下隅とする。領域3は、指示点P0の直ぐ右の画素(13)を左上隅とする。領域4は、指示点P0の直ぐ下の画素(158)を右上隅とする。
【0039】
まず領域1に関して、指示点P0の上側に隣接した画素の座標値が設定され(符号S1)、その画素値が抽出される(符号S2)。この画素値は、図8では170であり、この画素値と指示点P0の画素値との間のユークリッド距離すなわち2つの画素値の差の二乗が計算される(符号S3)。次に、水平方向にさらに+1画素だけ変位した位置(符号S1)における画素値(図8では8)が抽出され(符号S2)、この画素値に関して指示点P0の画素値との間のユークリッド距離が計算される(符号S3)。
【0040】
ユークリッド距離は下記(4)式に従って行われる。
Fik=(PR−ARik)2+(PG−AGik)2+(PB−ABik)2 (4)
【0041】
(4)式において、PR,PG,PBはそれぞれ、指示点P0におけるレッド、グリーンおよびブルーの画素値である。ARik,AGik,ABikはそれぞれ、座標(i,k)の画素におけるレッド、グリーンおよびブルーの画素値である。すなわち(4)式により、レッド、グリーンおよびブルーについて、指示点P0および(i,k)の画素の各画素値の差の二乗和が求められる。
【0042】
(4)式の演算が水平方向における限界位置まで行われると、次に、1画素だけ垂直上方に位置する行に関して、同じ処理が行われる。そして、垂直方向に関しても限界位置まで処理が完了した状態において、ユークリッド距離が最大である画素が領域1における最適探索画素として決定される(符号S4)。領域1における最適探索画素は、図8の例では指示点P0の右上に隣接する画素a1(=8)である。
【0043】
次に領域2に関して、指示点P0の左側に隣接した画素の座標値が設定され(符号S5)、その画素値が抽出される(符号S6)。この画素値と指示点P0の画素値との間のユークリッド距離と、この画素値と領域1の最適探索画素の画素値との間のユークリッド距離との積が計算される(符号S7)。次に、水平方向にさらに−1画素だけ変位した位置(符号S5)における画素値が抽出され(符号S6)、この画素値に関して、前述したように2つのユークリッド距離の積が計算される(符号S7)。
【0044】
2つのユークリッド距離の積は下記(5)式に従って行われる。
Fik=((PR−ARik)2+(PG−AGik)2+(PB−ABik)2)
×((A1R−ARik)2+(A1G−AGik)2+(A1B−ABik)2) (5)
【0045】
なお(5)式において、A1R,A1G,A1Bはそれぞれ、領域1の最適探索画素におけるレッド、グリーンおよびブルーの画素値である。
【0046】
(5)式の演算が水平方向における限界位置まで行われると、次に、1画素だけ垂直上方に位置する行に関して、同じ処理が行われる。そして、垂直方向に関しても限界位置まで処理が完了した状態において、2つのユークリッド距離の積が最大である画素が領域2における最適探索画素として決定される(符号S8)。領域2における最適探索画素は、図8の例では指示点P0の左上方に位置する画素a2(=127)である。
【0047】
領域3に関しても同様に、指示点P0の右側に隣接した画素の座標値が設定され(符号S9)、その画素値が抽出される(符号S10)。この画素値と指示点P0の画素値との間のユークリッド距離と、領域1の最適探索画素の画素値との間のユークリッド距離と、領域2の最適探索画素の画素値との間のユークリッド距離との積が計算される(符号S11)。次に、水平方向にさらに+1画素だけ変位した位置(符号S9)における画素値が抽出され(符号S10)、この画素値に関して、前述したように3つのユークリッド距離の積が計算される(符号S11)。
【0048】
3つのユークリッド距離の積は下記(6)式に従って行われる。
Fik=((PR−ARik)2+(PG−AGik)2+(PB−ABik)2)
×((A1R−ARik)2+(A1G−AGik)2+(A1B−ABik)2)
×((A2R−ARik)2+(A2G−AGik)2+(A2B−ABik)2) (6)
【0049】
なお(6)式において、A2R,A2G,A2Bはそれぞれ、領域2の最適探索画素におけるレッド、グリーンおよびブルーの画素値である。
【0050】
(6)式の演算が水平方向における限界位置まで行われると、次に、1画素だけ垂直下方に位置する行に関して、同じ処理が行われる。そして、垂直方向に関しても限界位置まで処理が完了した状態において、3つのユークリッド距離の積が最大である画素が領域3における最適探索画素として決定される(符号S12)。領域3における最適探索画素は、図8の例では指示点P0の右下方に位置する画素a3(=56)である。
【0051】
領域4に関しても同様に、指示点P0の下側に隣接した画素の座標値が設定され(符号S13)、その画素値が抽出される(符号S14)。この画素値と指示点P0の画素値との間のユークリッド距離と、領域1の最適探索画素の画素値との間のユークリッド距離と、領域2の最適探索画素の画素値との間のユークリッド距離と、領域3の最適探索画素の画素値との間のユークリッド距離との積が計算される(符号S15)。次に、水平方向にさらに−1画素だけ変位した位置(符号S13)における画素値が抽出され(符号S14)、この画素値に関して、前述したように4つのユークリッド距離の積が計算される(符号S15)。
【0052】
4つのユークリッド距離の積は下記(7)式に従って行われる。
Fik=((PR−ARik)2+(PG−AGik)2+(PB−ABik)2)
×((A1R−ARik)2+(A1G−AGik)2+(A1B−ABik)2)
×((A2R−ARik)2+(A2G−AGik)2+(A2B−ABik)2)
×((A3R−ARik)2+(A3G−AGik)2+(A3B−ABik)2) (7)
【0053】
なお(7)式において、A3R,A3G,A3Bはそれぞれ、領域3の最適探索画素におけるレッド、グリーンおよびブルーの画素値である。
【0054】
(7)式の演算が水平方向における限界位置まで行われると、次に、1画素だけ垂直下方に位置する行に関して、同じ処理が行われる。そして、垂直方向に関しても限界位置まで処理が完了した状態において、4つのユークリッド距離の積が最大である画素が領域4における最適探索画素として決定される(符号S16)。領域4における最適探索画素は、図8の例では指示点P0の左下に隣接する画素a4(=197)である。
【0055】
図9は最適探索画素設定部22において実行される最適探索画素決定処理ルーチンのフローチャートである。なお図9には、領域4における最適探索画素a2を求める処理のみが示されており、他の領域における最適探索画素は同様な処理によって求められる。また、以下の説明において、x軸は図8において左右方向に延び、右向きが正である。y軸は図8において上下方向に延び、上向きが正である。
【0056】
ステップ201では、(7)式によって求められるユークリッド距離の積の最大値Fmax が初期値Fx,y-1 に、最大値Fmax をとるときの画素のy座標を示すパラメータymax が初期値(y-1) に、最大値Fmax をとるときの画素のx座標を示すパラメータxmax が初期値(x) にまたカウンタkが初期値(y-1) にそれぞれ定められる。
【0057】
ステップ202ではカウンタiが初期値xに定められる。ステップ203では(7)式に従って、座標(x,y−1)の画素におけるユークリッド距離の積Fikが計算される。
【0058】
ステップ204では、ステップ203において求められた積Fikが、今までに求められている最大値Fmax よりも大きいか否かが判定される。大きければ、ステップ205において積Fikが最大値Fmax として更新される。また、この積Fikに対応したy座標(k)がパラメータymaxに、x座標(i)がパラメータxmaxとして更新される。これに対し、ステップ204において積Fikが最大値Fmax 以下であると判定された場合、ステップ205は実行されない。
【0059】
ステップ204または205の後、ステップ206ではカウンタiが1だけデクリメントされる。ステップ207では、カウンタiの値が最適探索画素の選定を行うべき範囲のx座標の限界値(x−10)よりも小さいか否かが判定される。カウンタiの値が限界値(x−10)以上であるとき、すなわちカウンタiが限界値よりも指示点P0側の画素を示しているとき、ステップ203へ戻り、上述した処理が再び実行される。これに対し、カウンタiの値が限界値(x−10)よりも小さいとき、すなわちカウンタiが限界値よりも左側の画素を示しているとき、ステップ208が実行される。
【0060】
ステップ208ではカウンタkが1だけデクリメントされる。ステップ209では、カウンタkの値が最適探索画素の選定を行うべき範囲のy座標の限界値(y−10)よりも小さいか否かが判定される。カウンタkの値が限界値(y−10)以上であるとき、すなわちカウンタkが限界値よりも指示点P0側の画素を示しているとき、ステップ202へ戻り、上述した処理が再び実行される。これに対し、カウンタkの値が限界値(y−10)よりも小さいとき、すなわちカウンタkが限界値よりも下側の画素を示しているとき、ステップ210が実行される。
【0061】
ステップ210では、ステップ205において求められた最大値Fmax を示す画素a4が領域4における最適探索画素として決定され、モニタ画面の所定の部位に表示される。これにより、このルーチンは終了する。
【0062】
以上のように本実施形態では、特に図8に明示されるように、指示点P0の周囲に位置する4つの領域に含まれる画素および指示点P0の各画素値の変化が最も大きくなるようにして、4つの領域からそれぞれ最適探索画素が選択される。したがって、指示点P0およびその周囲の特徴に近い特徴を有する画素が対応点Q0として検出される。このため指示点P0に対応した対応点Q0を確実に検出することができる。また、指示点の周囲の特徴を表す画素として、4画素のみを用いており、n×nの全ての画素を用いる場合と比較して、対応点Q0の検出処理に要する時間は短い。
【0063】
【発明の効果】
以上のように本発明によれば、一方の画像の指示点に対応する対応点を他方の画像から検出するマッチング装置において、対応点を正確かつ短時間に検出することができる。
【図面の簡単な説明】
【図1】本発明の一実施形態のマッチング装置であるコンピュータのモニタ画面に表示される第1および第2の画像の一例を示す図である。
【図2】第1および第2の画像が撮影された場所における実空間の座標系を示す図である。
【図3】カメラの姿勢である、撮影レンズの光軸の傾斜の定義を示す図である。
【図4】マッチング装置のブロック図である。
【図5】第1の画像における指示点に基づいて得られた実空間上の対応線から、第2の画像上の対応線を得て候補点を求める手順を示す図である。
【図6】指示点に基づいて対応点を決定する処理を示すフローチャートである。
【図7】最適探索画素設定部において最適探索画素を決定するための処理を示す図である。
【図8】指示点およびその近傍に位置する画素の画素値の例と、最適探索画素設定部によって求められた最適探索画素を示す図である。
【図9】最適探索画素決定処理ルーチンのフローチャートである。
【符号の説明】
A0 第1の画像
B0 第2の画像
P0 指示点
Q0 対応点
a1,a2,a3,a4 最適探索画素
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a matching device for two images used in photogrammetry and the like.
[0002]
[Prior art]
In conventional photogrammetry, two images including a common subject are captured and input to a computer, and a corresponding point in the other image is selected by selecting an indication point included in one image on the screen of the monitor device. Processing to detect may be performed. In this processing, by selecting the designated point, a straight line including a corresponding point, that is, a corresponding line is first obtained in the other image. Next, among the pixels located on the corresponding line, those closest to the pixel value of the designated point are extracted and detected as corresponding points.
[0003]
In such a corresponding point detection process, according to the technique of detecting a corresponding point from the other image based on only one designated point selected from one image, a plurality of pixels close to the pixel value of the designated point are supported. It may exist on the line, and the correct point is not always detected.
[0004]
[Problems to be solved by the invention]
Therefore, a method for detecting a corresponding point using a fixed (n × n) pixel in the vicinity of the designated point has been proposed. In other words, for each point on the corresponding line, the (n × n) pixels around the corresponding line are compared with the pixel values of the (n × n) pixels near the designated point. However, such a method using a large number of pixels causes a problem that the processing time becomes long.
[0005]
An object of the present invention is to detect a corresponding point accurately and in a short time in a matching device that detects a corresponding point corresponding to an indicated point of one image from the other image.
[0006]
[Means for Solving the Problems]
The first matching device according to the present invention includes an indication point designating unit that designates an arbitrary pixel in the first image as an indication point, and a plurality of optimum searches located in the vicinity of the pixel at the indication point in the first image. Optimum search pixel selection means for selecting a plurality of optimum search pixels so that the change in the pixel values of the pixels and the indication point is maximized, and candidate points corresponding to the indication point and the optimum search pixel in the second image, and A candidate point pixel obtaining unit for obtaining a pixel around the candidate point, an error calculating unit for calculating an error based on each pixel value of the indication point and the optimum search pixel, and each pixel value of the candidate point and the surrounding pixel of the candidate point; And a corresponding point obtaining unit that obtains a candidate point that minimizes as a corresponding point corresponding to the designated point.
[0007]
For example, the optimum search pixel is included in a plurality of regions located around the designated point in the first image. Further, the optimum search pixels may be four pixels located at the upper right, upper left, lower right, and lower left relative to the designated point in the first image.
[0008]
The optimum search pixel selection means, for example, selects a plurality of optimum search pixels so that the sum of squares of the difference between the pixel value of the designated point and the pixel value of the optimum search pixel is maximized. The optimum search pixel selection means preferably obtains the sum of squares of the difference between the pixel value of the designated point and the pixel value of the optimum search pixel for red, green and blue.
[0009]
The matching device inputs pixel information related to pixel values and coordinates of each pixel of the first and second images and shooting position information related to the shooting position and orientation of the camera when the first and second images are shot. It is preferable to provide photographing position information input means. In this case, the candidate point pixel acquisition means corresponds to the indication point in the real space using, for example, the coordinates of the indication point in the first image and the shooting position information of the camera when the first image is shot. Correspondence candidate for obtaining a candidate point using correspondence line calculation means for obtaining a correspondence line that is a straight line, coordinates of one point on the corresponding line in real space, and shooting position information of the camera when the second image is shot Point calculating means.
[0010]
Preferably, the corresponding line calculation means generates a corresponding line based on the coordinates of the indication point, the shooting position information of the camera when the first image is shot, the focal length of the camera, and the pixel pitch of the first image. Ask. Further, the correspondence candidate point calculation means uses the coordinates of one point on the correspondence line in the real space, the photographing position information of the camera when the second image is photographed, the focal length of the camera, and the pixel pitch of the second image. Candidate points may be determined based on this. The corresponding line is, for example, a straight line that passes through a predetermined point and an indicated point on the camera.
[0011]
The error calculation means may obtain a sum of squares of differences between the pixel values of the designated point and the optimum search pixel and the pixel values of the candidate point and the surrounding pixels of the candidate point as an error. Further, the error calculation means may obtain a sum of squares of differences between the pixel values of the designated point and the optimum search pixel and the pixel values of the candidate point and the surrounding pixels of the candidate point as the error for red, green and blue.
[0012]
The second matching device according to the present invention includes an indication point designating unit that designates an arbitrary pixel in the first image as an indication point, and a plurality of optimum searches located in the vicinity of the pixel at the indication point in the first image. And an optimum search pixel selection means for selecting a plurality of optimum search pixels so that the change in the pixel values of the pixels and designated points is maximized.
[0013]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, embodiments of the present invention will be described with reference to the drawings.
FIG. 1 shows a screen displayed on a monitor screen of a computer which is a matching device according to an embodiment of the present invention. The first image A0 is shown on the left side of the screen, and the second image B0 is shown on the right side. By selecting the designated point P0 in the first image A0, the corresponding point Q0 corresponding to the designated point P0 is detected and displayed in the second image B0 by the action of the matching device.
[0014]
The first image A0 and the second image B0 include a target (reference scale) 11 that is a common subject, and are taken from different directions. In this example, the target 11 is placed on the road surface.
[0015]
The target 11 has an L shape, and six indicator plates 12 are provided on the upper surface thereof. One of the indicator plates 12 is located at the corner of the target 11, and two of the indicator plates 12 are located at the tip of the target 11. The other indicator plate 12 is located between the corner and the tip. A first reference point member 13 is provided at the center of the corner indicator plate 12, and a second reference point member 14 is provided at the center of the indicator plate 12 at the two distal ends. . The other three indicator plates 12 are provided with auxiliary point members 15 respectively.
[0016]
FIG. 2 shows a coordinate system in real space where the first and second images A0 and B0 are taken. In this coordinate system, the origin O is the center point of the first reference point member 13. The X axis is a straight line connecting the center of the first reference point member 13 and the center of the second reference point member 14 located on the right side in the first image A0. The positive direction of the X axis is a direction from the first reference point member 13 toward the second reference point member 14. The Z-axis is a straight line connecting the center of the first reference point member 13 and the center of the second reference point member 14 located on the left side in the first image A0. The positive direction of the Z-axis is a direction from the first reference point member 13 toward the second reference point member 14. Each auxiliary point member 15 is located on the X axis or the Z axis. The Y axis is perpendicular to the X axis and the Z axis, and the upper side with respect to the road surface is a positive direction.
[0017]
Let C (x, y, z) be the position coordinates in real space of the camera that has captured the first and second images. On the other hand, the posture of the camera, that is, the inclination (α, β, γ) of the optical axis of the taking lens is defined as shown in FIG. That is, β is a rotation angle around the Y axis of the optical axis of the photographing lens. If the coordinate axes obtained by rotating the X, Y, and Z axes by β around the Y axis are the X ′, Y ′, and Z ′ axes, α is the rotation around the X ′ axis of the optical axis of the taking lens. It is a horn. Assuming that the coordinate axes obtained by rotating the X ′ axis, Y ′ axis, and Z ′ axis by α around the X ′ axis are X ″ axis, Y ″ axis, and Z ″ axis, γ is Z ″ of the optical axis of the photographing lens. The rotation angle around the axis.
[0018]
Referring to FIG. 1 again, in the matching device, any one pixel is selected as the designated point P0 from the first image A0 using, for example, a mouse or a keyboard. In the matching device, a straight line connecting the designated point P0 in the first image A0 and the center point of the light receiving surface of the camera, for example, is obtained as the corresponding line L1 by a conventionally known method. In the second image B0, a projection view of the corresponding line L1 is displayed. The corresponding line L1 is a straight line including the designated point P0 in the real space, but the position of the corresponding point Q0 corresponding to the designated point P0 in the second image B0 is not specified only by obtaining the corresponding line L1. . In the present embodiment, as will be described later, the corresponding point Q0 is detected using a predetermined plurality of pixels (optimum search pixels) located in the vicinity of the pixel of the designated point P0 in the first image A0.
[0019]
FIG. 4 is a block diagram of the matching device.
The image / photographing position information input unit 21 captures the camera's photographing position information A1 when the first image A0 is photographed, the pixel information A2 of the first image A0, and the second image B0. The shooting position information B1 and the pixel information B2 of the second image B0 are input. The shooting position information A1 indicates the position and orientation of the camera with respect to the origin in real space, and is expressed as CMA (x, y, z, α, β, γ). The pixel information A2 includes coordinates of each pixel in the first image A0 and pixel values of each pixel, that is, red, green, and blue level values. The shooting position information B1 indicates the position and orientation of the camera with respect to the origin in real space, and is represented as CMB (x, y, z, α, β, γ). The pixel information B2 includes the coordinates of each pixel in the second image B0 and the red, green, and blue level values of each pixel.
[0020]
The shooting position information A1 and B1 and the pixel information A2 and B2 are transferred from the image / shooting position information input unit 21 to the optimum search pixel setting unit 22. In the optimum search pixel setting unit 22, an optimum search pixel located around the pixel of the designated point P0 is set based on the information of the designated point P0 selected from the first image A0 using the mouse or the keyboard. The The optimum search pixel is included in four regions located around the designated point P0 in the first image A0. In the present embodiment, the optimum search pixel is located at the upper right, upper left, lower right, and lower left relative to the designated point P0. There are four pixels located respectively. A method for obtaining the optimum search pixel will be described later.
[0021]
In the corresponding pixel calculation unit 23, based on the pixel at the designated point P 0, the optimum search pixel set in the optimum search pixel setting unit 22, and various types of information input to the image / shooting position information input unit 21, Candidate points and candidate point surrounding pixels respectively corresponding to the designated point P0 and the optimum search pixel in the second image B0 are obtained. First, prior to obtaining a candidate point, a corresponding line L1 in real space represented by the following equation (1) is obtained.
R (x, y, z) = f (ix, iy, CMA, F, d) (1)
[0022]
In the expression (1), ix and iy indicate the IX coordinate (abscissa) and IY coordinate (ordinate) of the designated point P0 in the first image A0 as shown in FIG. 5, and the origin is the first image A0. Is the center of CMA is shooting position information A1 indicating the position and orientation of the camera when the first image A0 is shot. F indicates the focal length of the camera lens, and d indicates the pixel pitch in the first image A0, that is, the distance between two adjacent pixels. As can be understood from the equation (1), the corresponding line L1 in the real space is represented by x, y, z as parameters, and is a function of ix, iy, CMA, F, d. Since this function, that is, how to obtain the corresponding line L1, is conventionally known, the description thereof is omitted.
[0023]
Next, the coordinates of the pixels on the corresponding line L1 in the second image B0, that is, the coordinates of the candidate points are obtained according to the equation (2).
Q (kx, ky) = g (R, CMB, F, d) (2)
[0024]
In equation (2), kx and ky indicate the IX ′ coordinate (abscissa) and IY ′ coordinate (ordinate) of the candidate point in the second image B0, and the origin is the center of the second image B0. CMB is shooting position information B1 indicating the position and orientation of the camera when the second image B0 is shot. F indicates the focal length of the camera lens, and d indicates the pixel pitch in the second image B0, that is, the distance between two adjacent pixels. That is, the candidate points are expressed using kx and ky as parameters and are functions of R, CMB, F, and d. Since this function, that is, how to obtain candidate points is conventionally known, the description thereof is omitted.
[0025]
In this way, when the point R1 (x1, y1, z1) on the corresponding line L1 in the real space is selected according to the equation (1), the point R1 (x1, x1) in the second image B0 according to the equation (2). A candidate point Q1 corresponding to y1, z1) is obtained. Then, regarding the candidate point Q1, candidate point surrounding pixels having the same positional relationship as the optimum search pixel with respect to the designated point P0 are obtained. In the present embodiment, it is assumed that the point R1 (x1, y1, z1) is included in the second image B0 and closest to the camera.
[0026]
In the error calculation unit 24, the pixel values of the indication point P0 and the optimal search pixel output from the optimal search pixel setting unit 22, and the pixel values of the candidate point Q1 and the candidate point surrounding pixels output from the corresponding pixel calculation unit 23 Is calculated as an error. Next, the candidate point update unit 25 updates the z coordinate value in order to select the next candidate point, and this z coordinate value is larger by a predetermined value than the z coordinate value when the candidate point Q1 is obtained. That is, the point R2 (x2, y2, z2) is selected, and the corresponding pixel calculation unit 23 uses the point R2 (x2, y2, z2) according to the equation (2) to determine the next candidate point Q2 and the surrounding pixels of the candidate point. Desired. In the example of FIG. 5, the candidate point Q2 is located on the right side of the candidate point Q1.
[0027]
The error calculation unit 24 calculates an error for the new candidate point Q2 in the same manner as for the candidate point Q1. In this way, in the corresponding pixel calculation unit 23, the error calculation unit 24, and the candidate point update unit 25, the z coordinate value in the corresponding line L1 in the real space is updated and the process is executed, and the correspondence in the second image B0 is performed. Each candidate point Q1, Q2. . . An error is determined for Q7.
[0028]
In the optimum corresponding pixel determining unit 26, errors regarding all candidate points obtained by the error calculating unit 24 are checked, and a candidate point that minimizes the error is obtained as a corresponding point Q0 corresponding to the designated point P0. The corresponding point Q0 is displayed in the second image B0 on the monitor screen by the processing of the pixel position display unit 27 (see FIG. 1).
[0029]
FIG. 6 is a flowchart of a corresponding point determination processing routine that is executed in the corresponding pixel calculation unit 23, the error calculation unit 24, the candidate point update unit 25, and the optimum corresponding pixel determination unit 26 and determines the corresponding points based on the designated points. .
[0030]
In step 101, information on the designated point P0 selected using the mouse or the keyboard is input. In step 102, the corresponding line L1 is obtained according to the above equation (1), the parameter z is set to a predetermined value, and the points R1 to Rn on the corresponding line L1 are calculated. In step 103, the minimum value Emin of the error is set to the initial value E1, the parameter min indicating the candidate point when the minimum value Emin is taken is set to the initial value 1, and the counter i is set to the initial value 2.
[0031]
In step 104, candidate points Qi and candidate point surrounding pixels corresponding to the point Ri are calculated according to the above equation (2). In step 105, an error Ei relating to the candidate point Qi and the pixels around the candidate point is calculated. This calculation is performed according to the following equation (3).
Ei = Σ (PR−QRi)2+ Σ (PG-QGi)2
+ Σ (PB-QBi)2                                    (3)
[0032]
In the equation (3), PR, PG, and PB are red, green, and blue pixel values at the designated point P0 or the optimum search pixel, respectively. QRi, QGi, and QBi are the pixel values of red, green, and blue at the candidate point Qi or pixels around the candidate point, respectively. Σ indicates that the sum of squares is obtained for the designated point, the optimum search pixel, the candidate point, and the surrounding pixels of the candidate point, that is, for five points. That is, the sum of squares of the differences between the pixel values of the designated point P0 and the optimum search pixel and the pixel values of the candidate point Qi and the surrounding pixels of the candidate point is obtained for the red, green and blue by the equation (3).
[0033]
In step 106, it is determined whether or not the error Ei obtained in step 105 is smaller than the minimum value Emin obtained so far. If it is smaller, the error Ei is updated as the minimum value Emin in step 107. Further, the counter i corresponding to the error Ei is updated as the parameter min corresponding to the minimum value Emin. On the other hand, if it is determined in step 106 that the error Ei is greater than or equal to the minimum value Emin, step 107 is not executed.
[0034]
After step 106 or 107, in step 108, the counter i is incremented by one. In step 109, it is determined whether or not the value of the counter i is larger than the total number n of candidate points. When the value of the counter i is equal to or less than the total number n of candidate points, the process returns to step 104 and the above-described processing is executed again. When it is determined in step 109 that the value of the counter i is larger than the total number n of candidate points, step 110 is executed.
[0035]
In step 110, the candidate point having the minimum value Emin obtained in step 107 is displayed on the second image B0 as the corresponding point Q0 (see FIG. 1). In step 111, the coordinates (Xmin, Ymin, Zmin) of the corresponding point Q0 are displayed on a predetermined part of the monitor screen, and the corresponding point determination processing routine is thereby completed.
[0036]
FIG. 7 shows a process for determining the optimum search pixel in the optimum search pixel setting unit 22, and FIG. 8 exemplifies pixel values of the pixel located at the designated point P0 and in the vicinity thereof. A method for obtaining the optimum search pixel will be described with reference to these drawings.
[0037]
When the designated point P0 is selected using a mouse or the like, the coordinates (ix, iy) and the pixel value of the designated point P0 in the first image A0 are obtained. In the example of FIG. 8, the pixel value is 236.
[0038]
In the first image A0, four regions 1 to 4 adjacent to the designated point P0 are defined. In the region 1, the pixel (170) immediately above the designated point P0 is set as the lower left corner. In the region 2, the pixel (202) immediately to the left of the designated point P0 is the lower right corner. In the region 3, the pixel (13) immediately to the right of the designated point P0 is the upper left corner. In the region 4, the pixel (158) immediately below the designated point P0 is the upper right corner.
[0039]
First, for the region 1, the coordinate value of the pixel adjacent to the upper side of the designated point P0 is set (reference S1), and the pixel value is extracted (reference S2). This pixel value is 170 in FIG. 8, and the Euclidean distance between this pixel value and the pixel value of the designated point P0, that is, the square of the difference between the two pixel values is calculated (reference S3). Next, a pixel value (8 in FIG. 8) at a position displaced by +1 pixel in the horizontal direction (symbol S1) is extracted (symbol S2), and the Euclidean distance between this pixel value and the pixel value of the indication point P0 is extracted. Is calculated (reference S3).
[0040]
The Euclidean distance is determined according to the following equation (4).
Fik = (PR-ARik)2+ (PG-AGik)2+ (PB-ABik)2    (4)
[0041]
In the equation (4), PR, PG, and PB are red, green, and blue pixel values at the designated point P0, respectively. ARik, AGik, and ABik are the pixel values of red, green, and blue, respectively, at the pixel at coordinates (i, k). That is, the sum of squares of the difference between the pixel values of the designated points P0 and (i, k) is obtained for red, green, and blue by equation (4).
[0042]
When the calculation of the equation (4) is performed up to the limit position in the horizontal direction, the same processing is performed for the row positioned vertically upward by one pixel. Then, in the state where the processing is completed up to the limit position in the vertical direction, the pixel having the maximum Euclidean distance is determined as the optimum search pixel in the region 1 (reference S4). The optimum search pixel in the region 1 is the pixel a1 (= 8) adjacent to the upper right of the designated point P0 in the example of FIG.
[0043]
Next, for the region 2, the coordinate value of the pixel adjacent to the left side of the designated point P0 is set (reference S5), and the pixel value is extracted (reference S6). The product of the Euclidean distance between this pixel value and the pixel value of the designated point P0 and the Euclidean distance between this pixel value and the pixel value of the optimum search pixel in the region 1 is calculated (reference S7). Next, a pixel value at a position (reference S5) further displaced by −1 pixel in the horizontal direction is extracted (reference S6), and the product of the two Euclidean distances is calculated with respect to this pixel value (reference sign S6). S7).
[0044]
The product of the two Euclidean distances is performed according to the following equation (5).
Fik = ((PR-ARik)2+ (PG-AGik)2+ (PB-ABik)2)
× ((A1R-ARik)2+ (A1G-AGik)2+ (A1B-ABik)2(5)
[0045]
In equation (5), A1R, A1G, and A1B are red, green, and blue pixel values in the optimum search pixel in region 1, respectively.
[0046]
When the calculation of the equation (5) is performed up to the limit position in the horizontal direction, the same processing is then performed for the row positioned vertically upward by one pixel. Then, in the state where the processing is completed up to the limit position in the vertical direction, the pixel having the maximum product of the two Euclidean distances is determined as the optimum search pixel in the region 2 (reference S8). In the example of FIG. 8, the optimum search pixel in the region 2 is the pixel a2 (= 127) located at the upper left of the designated point P0.
[0047]
Similarly for the region 3, the coordinate value of the pixel adjacent to the right side of the designated point P0 is set (reference S9), and the pixel value is extracted (reference S10). The Euclidean distance between the pixel value and the pixel value of the designated point P0, the Euclidean distance between the pixel value of the optimum search pixel in region 1 and the Euclidean distance between the pixel value of the optimum search pixel in region 2 Is calculated (reference S11). Next, a pixel value at a position displaced by +1 pixel in the horizontal direction (reference S9) is extracted (reference S10), and the product of the three Euclidean distances is calculated for the pixel value as described above (reference S11). ).
[0048]
The product of the three Euclidean distances is performed according to the following equation (6).
Fik = ((PR-ARik)2+ (PG-AGik)2+ (PB-ABik)2)
× ((A1R-ARik)2+ (A1G-AGik)2+ (A1B-ABik)2)
× ((A2R-ARik)2+ (A2G-AGik)2+ (A2B-ABik)2(6)
[0049]
In Equation (6), A2R, A2G, and A2B are red, green, and blue pixel values in the optimum search pixel in region 2, respectively.
[0050]
When the calculation of the expression (6) is performed up to the limit position in the horizontal direction, the same processing is performed for the row positioned vertically downward by one pixel. Then, in the state where the processing is completed up to the limit position in the vertical direction, the pixel having the maximum product of the three Euclidean distances is determined as the optimum search pixel in the region 3 (reference S12). In the example of FIG. 8, the optimum search pixel in the region 3 is the pixel a3 (= 56) located at the lower right of the designated point P0.
[0051]
Similarly for the region 4, the coordinate value of the pixel adjacent below the designated point P0 is set (reference S13), and the pixel value is extracted (reference S14). The Euclidean distance between the pixel value and the pixel value of the designated point P0, the Euclidean distance between the pixel value of the optimum search pixel in region 1 and the Euclidean distance between the pixel value of the optimum search pixel in region 2 And the Euclidean distance between the pixel value of the optimum search pixel in region 3 and the Euclidean distance are calculated (reference S15). Next, a pixel value at a position (reference S13) further displaced by −1 pixel in the horizontal direction is extracted (reference S14), and the product of the four Euclidean distances is calculated with respect to this pixel value (reference sign S14). S15).
[0052]
The product of the four Euclidean distances is performed according to the following equation (7).
Fik = ((PR-ARik)2+ (PG-AGik)2+ (PB-ABik)2)
× ((A1R-ARik)2+ (A1G-AGik)2+ (A1B-ABik)2)
× ((A2R-ARik)2+ (A2G-AGik)2+ (A2B-ABik)2)
× ((A3R-ARik)2+ (A3G-AGik)2+ (A3B-ABik)2(7)
[0053]
In the equation (7), A3R, A3G, and A3B are red, green, and blue pixel values in the optimum search pixel in the region 3, respectively.
[0054]
When the calculation of the equation (7) is performed up to the limit position in the horizontal direction, the same processing is performed for the row positioned vertically downward by one pixel. Then, in the state where the processing is completed up to the limit position in the vertical direction, the pixel having the maximum product of the four Euclidean distances is determined as the optimum search pixel in the region 4 (reference S16). The optimum search pixel in the region 4 is the pixel a4 (= 197) adjacent to the lower left of the designated point P0 in the example of FIG.
[0055]
FIG. 9 is a flowchart of an optimum search pixel determination processing routine executed in the optimum search pixel setting unit 22. FIG. 9 shows only processing for obtaining the optimum search pixel a2 in the region 4, and optimum search pixels in other regions are obtained by the same processing. In the following description, the x-axis extends in the left-right direction in FIG. 8, and the right direction is positive. The y-axis extends in the vertical direction in FIG. 8, and the upward direction is positive.
[0056]
In step 201, the maximum value Fmax of the product of the Euclidean distance obtained by the equation (7) is the initial value Fx, y-1 In addition, the parameter ymax indicating the y coordinate of the pixel when the maximum value Fmax is taken is the initial value (y-1), and the parameter xmax indicating the x coordinate of the pixel when the maximum value Fmax is taken is the initial value (x). The counter k is set to the initial value (y-1).
[0057]
In step 202, the counter i is set to the initial value x. In step 203, the product Fik of the Euclidean distance in the pixel at the coordinates (x, y-1) is calculated according to the equation (7).
[0058]
In step 204, it is determined whether or not the product Fik obtained in step 203 is larger than the maximum value Fmax obtained so far. If so, the product Fik is updated at step 205 as the maximum value Fmax. Further, the y coordinate (k) corresponding to the product Fik is updated as the parameter ymax, and the x coordinate (i) is updated as the parameter xmax. On the other hand, if it is determined in step 204 that the product Fik is less than or equal to the maximum value Fmax, step 205 is not executed.
[0059]
After step 204 or 205, in step 206, the counter i is decremented by one. In step 207, it is determined whether or not the value of the counter i is smaller than the limit value (x-10) of the x coordinate of the range in which the optimum search pixel should be selected. When the value of the counter i is equal to or greater than the limit value (x−10), that is, when the counter i indicates a pixel on the indication point P0 side from the limit value, the process returns to step 203 and the above-described processing is executed again. . On the other hand, when the value of the counter i is smaller than the limit value (x−10), that is, when the counter i indicates a pixel on the left side of the limit value, step 208 is executed.
[0060]
In step 208, the counter k is decremented by one. In step 209, it is determined whether or not the value of the counter k is smaller than the limit value (y-10) of the y coordinate of the range in which the optimum search pixel should be selected. When the value of the counter k is equal to or greater than the limit value (y-10), that is, when the counter k indicates a pixel on the indication point P0 side with respect to the limit value, the process returns to step 202 and the above-described processing is executed again. . On the other hand, when the value of the counter k is smaller than the limit value (y-10), that is, when the counter k indicates a pixel below the limit value, step 210 is executed.
[0061]
In step 210, the pixel a4 indicating the maximum value Fmax obtained in step 205 is determined as the optimum search pixel in the region 4, and is displayed on a predetermined part of the monitor screen. As a result, this routine ends.
[0062]
As described above, in the present embodiment, as clearly shown in FIG. 8 in particular, the change in the pixel values of the pixels included in the four regions located around the designated point P0 and the designated point P0 is maximized. Thus, the optimum search pixel is selected from each of the four areas. Therefore, a pixel having a feature close to the designated point P0 and its surrounding features is detected as the corresponding point Q0. Therefore, the corresponding point Q0 corresponding to the designated point P0 can be reliably detected. Further, only four pixels are used as the pixels representing the features around the designated point, and the time required for the detection process of the corresponding point Q0 is shorter than when all the n × n pixels are used.
[0063]
【The invention's effect】
As described above, according to the present invention, in a matching device that detects a corresponding point corresponding to an indicated point of one image from the other image, the corresponding point can be detected accurately and in a short time.
[Brief description of the drawings]
FIG. 1 is a diagram illustrating an example of first and second images displayed on a monitor screen of a computer that is a matching device according to an embodiment of the present invention.
FIG. 2 is a diagram illustrating a coordinate system of a real space at a place where first and second images are taken.
FIG. 3 is a diagram illustrating a definition of an inclination of an optical axis of a photographing lens, which is a posture of a camera.
FIG. 4 is a block diagram of a matching device.
FIG. 5 is a diagram showing a procedure for obtaining a candidate point by obtaining a corresponding line on the second image from a corresponding line on the real space obtained based on the designated point in the first image.
FIG. 6 is a flowchart showing processing for determining corresponding points based on designated points.
FIG. 7 is a diagram illustrating a process for determining an optimum search pixel in an optimum search pixel setting unit.
FIG. 8 is a diagram illustrating an example of pixel values of pixels located near an indication point and its vicinity, and an optimum search pixel obtained by an optimum search pixel setting unit;
FIG. 9 is a flowchart of an optimal search pixel determination processing routine.
[Explanation of symbols]
A0 first image
B0 second image
P0 indication point
Q0 corresponding point
a1, a2, a3, a4 Optimal search pixels

Claims (13)

共通の被写体が撮影された第1および第2の画像において、前記第1の画像の中から選択された指示点に対応し、前記第2の画像に含まれる対応点を検出する2枚の画像のマッチング装置であって、
前記第1の画像における任意の画素を指示点として指定する指示点指定手段と、
前記第1の画像において、前記指示点の画素の近傍に位置する複数の最適探索画素および前記指示点の各画素値の変化が最も大きくなるように前記複数の最適探索画素を選択する最適探索画素選択手段と、
前記第2の画像において、前記指示点および前記最適探索画素にそれぞれ対応する候補点および候補点周囲画素を求める候補点画素取得手段と、
前記指示点および前記最適探索画素の各画素値と、前記候補点および前記候補点周囲画素の各画素値とに基づいて、誤差を算出する誤差算出手段と、
前記誤差が最小になるような前記候補点を、前記指示点に対応する対応点として求める対応点取得手段と
を備えたことを特徴とする2枚の画像のマッチング装置。
Two images for detecting a corresponding point included in the second image corresponding to an indication point selected from the first image in the first and second images obtained by photographing a common subject. Matching device,
Designated point designating means for designating an arbitrary pixel in the first image as an designated point;
In the first image, a plurality of optimum search pixels located in the vicinity of the pixel at the designated point and an optimum search pixel for selecting the plurality of optimum search pixels so that a change in each pixel value at the designated point is maximized. A selection means;
Candidate point pixel obtaining means for obtaining candidate points and candidate point surrounding pixels respectively corresponding to the designated point and the optimum search pixel in the second image;
An error calculating means for calculating an error based on each pixel value of the indicated point and the optimum search pixel and each pixel value of the candidate point and pixels around the candidate point;
A matching device for two images, comprising: a corresponding point obtaining unit that obtains the candidate point that minimizes the error as a corresponding point corresponding to the designated point.
前記最適探索画素が、前記第1の画像において、前記指示点の周囲に位置する複数の領域に含まれることを特徴とする請求項1に記載のマッチング装置。The matching device according to claim 1, wherein the optimum search pixel is included in a plurality of regions located around the designated point in the first image. 前記最適探索画素が、前記第1の画像において、前記指示点に対して相対的に右上、左上、右下および左下にそれぞれ位置する4個の画素であることを特徴とする請求項2に記載のマッチング装置。The optimal search pixel is four pixels respectively located in the upper right, the upper left, the lower right, and the lower left relative to the indication point in the first image. Matching device. 前記最適探索画素選択手段が、前記指示点の画素値と前記各最適探索画素の画素値との差の二乗和が最大になるようにして前記複数の最適探索画素を選択することを特徴とする請求項1に記載のマッチング装置。The optimum search pixel selection means selects the plurality of optimum search pixels so that the sum of squares of the difference between the pixel value of the designated point and the pixel value of each optimum search pixel is maximized. The matching device according to claim 1. 前記最適探索画素選択手段が、レッド、グリーンおよびブルーについて、前記二乗和を求めることを特徴とする請求項4に記載のマッチング装置。5. The matching apparatus according to claim 4, wherein the optimum search pixel selecting unit obtains the sum of squares for red, green, and blue. 前記第1および第2の画像の各画素の画素値および座標に関する画素情報と、前記第1および第2の画像を撮影したときのカメラの撮影位置および姿勢に関する撮影位置情報とを入力する画像・撮影位置情報入力手段を備えることを特徴とする請求項1に記載のマッチング装置。An image for inputting pixel information related to pixel values and coordinates of each pixel of the first and second images, and shooting position information related to the shooting position and orientation of the camera when the first and second images are shot. The matching apparatus according to claim 1, further comprising photographing position information input means. 前記候補点画素取得手段が、
前記第1の画像における前記指示点の座標と、前記第1の画像を撮影したときのカメラの前記撮影位置情報とを用いて、実空間上での前記指示点に対応する直線である対応線を求める対応線算出手段と、
前記対応線上の1点の前記実空間上における座標と、前記第2の画像を撮影したときのカメラの前記撮影位置情報とを用いて、前記候補点を求める対応候補点算出手段とを備えることを特徴とする請求項6に記載のマッチング装置。
The candidate point pixel acquisition means is
A correspondence line that is a straight line corresponding to the designated point in real space, using the coordinates of the designated point in the first image and the photographing position information of the camera when the first image is photographed. Corresponding line calculating means for obtaining
Corresponding candidate point calculating means for obtaining the candidate point using coordinates of the one point on the corresponding line in the real space and the shooting position information of the camera when the second image is shot. The matching device according to claim 6.
前記対応線算出手段が、前記指示点の座標と、前記第1の画像を撮影したときのカメラの前記撮影位置情報と、前記カメラの焦点距離と、前記第1の画像の画素ピッチとに基づいて前記対応線を求めることを特徴とする請求項7に記載のマッチング装置。The corresponding line calculation means is based on the coordinates of the indicated point, the shooting position information of the camera when the first image is shot, the focal length of the camera, and the pixel pitch of the first image. The matching device according to claim 7, wherein the corresponding line is obtained. 前記対応候補点算出手段が、前記対応線上の1点の前記実空間上における座標と、前記第2の画像を撮影したときのカメラの前記撮影位置情報と、前記カメラの焦点距離と、前記第2の画像の画素ピッチとに基づいて前記候補点を求めることを特徴とする請求項7に記載のマッチング装置。The correspondence candidate point calculation means, the coordinates of one point on the correspondence line in the real space, the shooting position information of the camera when the second image is shot, the focal length of the camera, the first The matching device according to claim 7, wherein the candidate point is obtained based on a pixel pitch of the second image. 前記対応線が前記カメラにおける所定の点と前記指示点を通る直線であることを特徴とする請求項7に記載のマッチング装置。The matching device according to claim 7, wherein the corresponding line is a straight line passing through a predetermined point on the camera and the designated point. 前記誤差算出手段が、前記指示点および前記最適探索画素の各画素値と前記候補点および前記候補点周囲画素の各画素値との差の二乗和を前記誤差として求めることを特徴とする請求項1に記載のマッチング装置。The error calculation means obtains, as the error, a sum of squares of differences between the pixel values of the designated point and the optimum search pixel and the pixel values of the candidate point and pixels around the candidate point. The matching apparatus according to 1. 前記誤差算出手段が、レッド、グリーンおよびブルーについて、前記二乗和を前記誤差として求めることを特徴とする請求項11に記載のマッチング装置。The matching device according to claim 11, wherein the error calculation unit obtains the sum of squares as the error for red, green, and blue. 共通の被写体が撮影された第1および第2の画像において、前記第1の画像の中から選択された指示点に対応し、前記第2の画像に含まれる対応点を検出する2枚の画像のマッチング装置であって、
前記第1の画像における任意の画素を指示点として指定する指示点指定手段と、
前記第1の画像において、前記指示点の画素の近傍に位置する複数の最適探索画素および前記指示点の各画素値の変化が最も大きくなるように前記複数の最適探索画素を選択する最適探索画素選択手段と
を備えたことを特徴とする2枚の画像のマッチング装置。
Two images for detecting a corresponding point included in the second image corresponding to an indication point selected from the first image in the first and second images obtained by photographing a common subject. Matching device,
Designated point designating means for designating an arbitrary pixel in the first image as an designated point;
In the first image, a plurality of optimum search pixels located in the vicinity of the pixel at the designated point and an optimum search pixel for selecting the plurality of optimum search pixels so that a change in each pixel value at the designated point is maximized. A two-image matching device comprising a selection unit.
JP2001252840A 2000-09-12 2001-08-23 Two image matching device Expired - Fee Related JP4166451B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001252840A JP4166451B2 (en) 2000-09-12 2001-08-23 Two image matching device

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2000276113 2000-09-12
JP2000-276113 2000-09-12
JP2001252840A JP4166451B2 (en) 2000-09-12 2001-08-23 Two image matching device

Publications (2)

Publication Number Publication Date
JP2002163651A JP2002163651A (en) 2002-06-07
JP4166451B2 true JP4166451B2 (en) 2008-10-15

Family

ID=26599730

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001252840A Expired - Fee Related JP4166451B2 (en) 2000-09-12 2001-08-23 Two image matching device

Country Status (1)

Country Link
JP (1) JP4166451B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100591608B1 (en) 2005-03-18 2006-06-20 전남대학교산학협력단 Method for searching matching point in image matching

Also Published As

Publication number Publication date
JP2002163651A (en) 2002-06-07

Similar Documents

Publication Publication Date Title
JP4307934B2 (en) Imaging apparatus and method with image correction function, and imaging apparatus and method
JP3426459B2 (en) Photogrammetry system and photogrammetry method
JP4532982B2 (en) Arrangement information estimation method and information processing apparatus
EP1734335B1 (en) Three-dimensional measuring method and three-dimensional measuring apparatus
US20110235898A1 (en) Matching process in three-dimensional registration and computer-readable storage medium storing a program thereof
JP2003307466A (en) Apparatus, method and chart for calibration as well as result diagnostic device
CN111220127A (en) Laser focusing measurement method and terminal
JP4679293B2 (en) In-vehicle panoramic camera system
JP3842988B2 (en) Image processing apparatus for measuring three-dimensional information of an object by binocular stereoscopic vision, and a method for recording the same, or a recording medium recording the measurement program
JP3282516B2 (en) 3D image measurement method
JP2000028332A (en) Three-dimensional measuring device and method therefor
US6963666B2 (en) Matching device
JP4166451B2 (en) Two image matching device
JP2000205821A (en) Instrument and method for three-dimensional shape measurement
JP4166988B2 (en) Stereo image processing apparatus and method
JPH09210649A (en) Three dimensional measurement device
JP2002288633A (en) Image processing device and its positional correction method
JPH10185563A (en) Photogrammetry target and photogrammetry using the photogrammetry target
JP4536428B2 (en) Zoom lens calibration apparatus, calibration method, and imaging apparatus
JP2005174151A (en) Three-dimensional image display device and method
JP2002092585A (en) Matching device for two images
JP4409924B2 (en) Three-dimensional image display apparatus and method
JP3851483B2 (en) Image point association apparatus, image point association method, and recording medium storing image point association program
JP4207327B2 (en) Rotation position detector
JP4427305B2 (en) Three-dimensional image display apparatus and method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050819

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20080430

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080715

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080730

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110808

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees