(57)【特許請求の範囲】
【請求項１】
共通の被写体が撮影された第１および第２の画像において、前記第１の画像の中から選択された指示点に対応し、前記第２の画像に含まれる対応点を検出する２枚の画像のマッチング装置であって、
前記第１の画像における任意の画素を指示点として指定する指示点指定手段と、
前記第１の画像において、前記指示点の画素の近傍に位置する複数の最適探索画素および前記指示点の各画素値の変化が最も大きくなるように前記複数の最適探索画素を選択する最適探索画素選択手段と、
前記第２の画像において、前記指示点および前記最適探索画素にそれぞれ対応する候補点および候補点周囲画素を求める候補点画素取得手段と、
前記指示点および前記最適探索画素の各画素値と、前記候補点および前記候補点周囲画素の各画素値とに基づいて、誤差を算出する誤差算出手段と、
前記誤差が最小になるような前記候補点を、前記指示点に対応する対応点として求める対応点取得手段と
を備えたことを特徴とする２枚の画像のマッチング装置。
【請求項２】
前記最適探索画素が、前記第１の画像において、前記指示点の周囲に位置する複数の領域に含まれることを特徴とする請求項１に記載のマッチング装置。
【請求項３】
前記最適探索画素が、前記第１の画像において、前記指示点に対して相対的に右上、左上、右下および左下にそれぞれ位置する４個の画素であることを特徴とする請求項２に記載のマッチング装置。
【請求項４】
前記最適探索画素選択手段が、前記指示点の画素値と前記各最適探索画素の画素値との差の二乗和が最大になるようにして前記複数の最適探索画素を選択することを特徴とする請求項１に記載のマッチング装置。
【請求項５】
前記最適探索画素選択手段が、レッド、グリーンおよびブルーについて、前記二乗和を求めることを特徴とする請求項４に記載のマッチング装置。
【請求項６】
前記第１および第２の画像の各画素の画素値および座標に関する画素情報と、前記第１および第２の画像を撮影したときのカメラの撮影位置および姿勢に関する撮影位置情報とを入力する画像・撮影位置情報入力手段を備えることを特徴とする請求項１に記載のマッチング装置。
【請求項７】
前記候補点画素取得手段が、
前記第１の画像における前記指示点の座標と、前記第１の画像を撮影したときのカメラの前記撮影位置情報とを用いて、実空間上での前記指示点に対応する直線である対応線を求める対応線算出手段と、
前記対応線上の１点の前記実空間上における座標と、前記第２の画像を撮影したときのカメラの前記撮影位置情報とを用いて、前記候補点を求める対応候補点算出手段とを備えることを特徴とする請求項６に記載のマッチング装置。
【請求項８】
前記対応線算出手段が、前記指示点の座標と、前記第１の画像を撮影したときのカメラの前記撮影位置情報と、前記カメラの焦点距離と、前記第１の画像の画素ピッチとに基づいて前記対応線を求めることを特徴とする請求項７に記載のマッチング装置。
【請求項９】
前記対応候補点算出手段が、前記対応線上の１点の前記実空間上における座標と、前記第２の画像を撮影したときのカメラの前記撮影位置情報と、前記カメラの焦点距離と、前記第２の画像の画素ピッチとに基づいて前記候補点を求めることを特徴とする請求項７に記載のマッチング装置。
【請求項１０】
前記対応線が前記カメラにおける所定の点と前記指示点を通る直線であることを特徴とする請求項７に記載のマッチング装置。
【請求項１１】
前記誤差算出手段が、前記指示点および前記最適探索画素の各画素値と前記候補点および前記候補点周囲画素の各画素値との差の二乗和を前記誤差として求めることを特徴とする請求項１に記載のマッチング装置。
【請求項１２】
前記誤差算出手段が、レッド、グリーンおよびブルーについて、前記二乗和を前記誤差として求めることを特徴とする請求項１１に記載のマッチング装置。
【請求項１３】
共通の被写体が撮影された第１および第２の画像において、前記第１の画像の中から選択された指示点に対応し、前記第２の画像に含まれる対応点を検出する２枚の画像のマッチング装置であって、
前記第１の画像における任意の画素を指示点として指定する指示点指定手段と、
前記第１の画像において、前記指示点の画素の近傍に位置する複数の最適探索画素および前記指示点の各画素値の変化が最も大きくなるように前記複数の最適探索画素を選択する最適探索画素選択手段と
を備えたことを特徴とする２枚の画像のマッチング装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、写真測量等において用いられる、２枚の画像のマッチング装置に関する。
【０００２】
【従来の技術】
従来写真測量において、共通の被写体を含む２つの画像を撮影してコンピュータに入力し、モニタ装置の画面上において、一方の画像に含まれる指示点を選択することによって、他方の画像における対応点を検出する処理が行われることがある。この処理では、指示点が選択されることによって、まず他方の画像において、対応点を含む直線すなわち対応線が求められる。次に、対応線上に位置する画素において、指示点の画素値に最も近いものが抽出され、対応点として検出される。
【０００３】
このような対応点の検出処理において、一方の画像から選択された１つの指示点のみに基づいて他方の画像から対応点を検出する手法によると、指示点の画素値に近い複数の画素が対応線上に存在することがあり、必ずしも正しい点が検出されるとは限らない。
【０００４】
【発明が解決しようとする課題】
そこで、指示点の近傍の固定された（ｎ×ｎ）画素を用いて対応点を検出する手法が提案されている。すなわち、これは、対応線上の各点に関し、その周囲の（ｎ×ｎ）画素について指示点近傍の（ｎ×ｎ）画素の画素値との相関を比較するものである。しかし、このように多数の画素を用いる手法によると、処理時間が長くなるという問題を生じる。
【０００５】
本発明は、一方の画像の指示点に対応する対応点を他方の画像から検出するマッチング装置において、対応点を正確かつ短時間に検出することを目的としている。
【０００６】
【課題を解決するための手段】
本発明に係る第１のマッチング装置は、第１の画像における任意の画素を指示点として指定する指示点指定手段と、第１の画像において、指示点の画素の近傍に位置する複数の最適探索画素および指示点の各画素値の変化が最も大きくなるように複数の最適探索画素を選択する最適探索画素選択手段と、第２の画像において、指示点および最適探索画素にそれぞれ対応する候補点および候補点周囲画素を求める候補点画素取得手段と、指示点および最適探索画素の各画素値と候補点および候補点周囲画素の各画素値とに基づいて、誤差を算出する誤差算出手段と、誤差が最小になるような候補点を、指示点に対応する対応点として求める対応点取得手段とを備えたことを特徴としている。
【０００７】
最適探索画素は例えば、第１の画像において、指示点の周囲に位置する複数の領域に含まれる。また最適探索画素は、第１の画像において、指示点に対して相対的に右上、左上、右下および左下にそれぞれ位置する４個の画素であってもよい。
【０００８】
最適探索画素選択手段は例えば、指示点の画素値と最適探索画素の画素値との差の二乗和が最大になるようにして複数の最適探索画素として選択する。また最適探索画素選択手段は、レッド、グリーンおよびブルーについて、指示点の画素値と最適探索画素の画素値との差の二乗和を求めることが好ましい。
【０００９】
マッチング装置は、第１および第２の画像の各画素の画素値および座標に関する画素情報と第１および第２の画像を撮影したときのカメラの撮影位置および姿勢に関する撮影位置情報とを入力する画像・撮影位置情報入力手段を備えることが好ましい。この場合、候補点画素取得手段は例えば、第１の画像における指示点の座標と第１の画像を撮影したときのカメラの撮影位置情報とを用いて、実空間上での指示点に対応する直線である対応線を求める対応線算出手段と、対応線上の１点の実空間上における座標と第２の画像を撮影したときのカメラの撮影位置情報とを用いて、候補点を求める対応候補点算出手段とを備える。
【００１０】
好ましくは対応線算出手段は、指示点の座標と、第１の画像を撮影したときのカメラの撮影位置情報と、カメラの焦点距離と、第１の画像の画素ピッチとに基づいて対応線を求める。また対応候補点算出手段は、対応線上の１点の実空間上における座標と、第２の画像を撮影したときのカメラの撮影位置情報とカメラの焦点距離と第２の画像の画素ピッチとに基づいて候補点を求めてもよい。対応線は例えば、カメラにおける所定の点と指示点を通る直線である。
【００１１】
誤差算出手段は、指示点および最適探索画素の各画素値と候補点および候補点周囲画素の各画素値との差の二乗和を誤差として求めてもよい。また誤差算出手段は、レッド、グリーンおよびブルーについて、指示点および最適探索画素の各画素値と候補点および候補点周囲画素の各画素値との差の二乗和を誤差として求めてもよい。
【００１２】
本発明に係る第２のマッチング装置は、第１の画像における任意の画素を指示点として指定する指示点指定手段と、第１の画像において、指示点の画素の近傍に位置する複数の最適探索画素および指示点の各画素値の変化が最も大きくなるように複数の最適探索画素を選択する最適探索画素選択手段とを備えたことを特徴としている。
【００１３】
【発明の実施の形態】
以下、本発明の実施形態を図面を参照して説明する。
図１は本発明の一実施形態のマッチング装置であるコンピュータのモニタ画面に表示された画面を示している。画面の左側には第１の画像Ａ０が示され、右側には第２の画像Ｂ０が示されている。第１の画像Ａ０において指示点Ｐ０が選択されることにより、マッチング装置の作用によって、第２の画像Ｂ０では指示点Ｐ０に対応した対応点Ｑ０が検出されて表示される。
【００１４】
第１の画像Ａ０と第２の画像Ｂ０は、共通の被写体であるターゲット（基準尺）１１を含んでおり、異なる方向から撮影されたものである。なお、この例では、ターゲット１１は路面に載置されている。
【００１５】
ターゲット１１はＬ字型を呈し、その上面には６個の指標板１２が設けられている。指標板１２の１つはターゲット１１の角部に位置し、指標板１２のうちの２つはターゲット１１の先端部に位置している。他の指標板１２は角部と先端部の間に位置している。角部の指標板１２の中心部には、第１の基準点部材１３が設けられ、２つの先端部の指標板１２の中心部には、それぞれ第２の基準点部材１４が設けられている。他の３つの指標板１２には、それぞれ補助点部材１５が設けられている。
【００１６】
図２は、第１および第２の画像Ａ０、Ｂ０が撮影された場所における実空間の座標系を示している。この座標系において、原点Ｏは第１の基準点部材１３の中心点である。Ｘ軸は、第１の基準点部材１３の中心と、第１の画像Ａ０において右側に位置する第２の基準点部材１４の中心とを結ぶ直線である。Ｘ軸の正の方向は第１の基準点部材１３から第２の基準点部材１４へ向かう方向である。Ｚ軸は、第１の基準点部材１３の中心と、第１の画像Ａ０において左側に位置する第２の基準点部材１４の中心とを結ぶ直線である。Ｚ軸の正の方向は第１の基準点部材１３から第２の基準点部材１４へ向かう方向である。各補助点部材１５は、Ｘ軸上またはＺ軸上に位置している。Ｙ軸はＸ軸とＺ軸に垂直であり、路面に対して上側が正の方向である。
【００１７】
第１および第２の画像を撮影したカメラの実空間における位置座標をＣ（ｘ，ｙ，ｚ）とする。一方、カメラの姿勢すなわち撮影レンズの光軸の傾斜（α，β，γ）は図３に示すように定義される。すなわち、βは撮影レンズの光軸のＹ軸周りの回転角である。Ｘ軸、Ｙ軸、Ｚ軸をＹ軸周りにβだけ回転させて得られる座標軸をＸ’軸、Ｙ’軸、Ｚ’軸とすると、αは撮影レンズの光軸のＸ’軸周りの回転角である。Ｘ’軸、Ｙ’軸、Ｚ’軸をＸ’軸周りにαだけ回転させて得られる座標軸をＸ”軸、Ｙ”軸、Ｚ”軸とすると、γは撮影レンズの光軸のＺ”軸周りの回転角である。
【００１８】
再び図１を参照すると、マッチング装置では、例えばマウスあるいはキーボードを用いて、第１の画像Ａ０の中から任意の１つの画素が指示点Ｐ０として選択される。マッチング装置では、従来公知の手法によって、第１の画像Ａ０における指示点Ｐ０と、カメラの例えば撮像素子の受光面の中心点とを結ぶ直線が対応線Ｌ１として求められる。第２の画像Ｂ０では、対応線Ｌ１の投影図が表示される。対応線Ｌ１は、実空間上での指示点Ｐ０を含んだ直線であるが、対応線Ｌ１を求めただけでは、第２の画像Ｂ０において指示点Ｐ０に対応した対応点Ｑ０の位置は特定されない。本実施形態では、後述するように、第１の画像Ａ０において指示点Ｐ０の画素の近傍に位置する所定の複数の画素（最適探索画素）を用いて、対応点Ｑ０が検出される。
【００１９】
図４はマッチング装置のブロック図である。
画像・撮影位置情報入力部２１には、第１の画像Ａ０を撮影したときのカメラの撮影位置情報Ａ１と、第１の画像Ａ０の画素情報Ａ２と、第２の画像Ｂ０を撮影したときの撮影位置情報Ｂ１と、第２の画像Ｂ０の画素情報Ｂ２とが入力される。撮影位置情報Ａ１は、実空間における原点に対するカメラの位置および姿勢を示し、ＣＭＡ（ｘ，ｙ，ｚ，α，β，γ）と表される。画素情報Ａ２は第１の画像Ａ０における各画素の座標と、各画素の画素値すなわちレッド、グリーンおよびブルーのレベル値とから成る。撮影位置情報Ｂ１は、実空間における原点に対するカメラの位置および姿勢を示し、ＣＭＢ（ｘ，ｙ，ｚ，α，β，γ）と表される。画素情報Ｂ２は第２の画像Ｂ０における各画素の座標と、各画素のレッド、グリーンおよびブルーのレベル値とから成る。
【００２０】
撮影位置情報Ａ１、Ｂ１、と画素情報Ａ２、Ｂ２は、画像・撮影位置情報入力部２１から最適探索画素設定部２２に受け渡される。最適探索画素設定部２２では、マウスあるいはキーボードを用いて第１の画像Ａ０の中から選択された指示点Ｐ０の情報に基づいて、指示点Ｐ０の画素の周囲に位置する最適探索画素が設定される。最適探索画素は、第１の画像Ａ０において、指示点Ｐ０の周囲に位置する４つの領域に含まれ、本実施形態では、指示点Ｐ０に対して相対的に右上、左上、右下および左下にそれぞれ位置する４個の画素である。最適探索画素の求め方については後述する。
【００２１】
対応画素算出部２３では、指示点Ｐ０の画素と、最適探索画素設定部２２において設定された最適探索画素と、画像・撮影位置情報入力部２１に入力された各種の情報とに基づいて、第２の画像Ｂ０における、指示点Ｐ０および最適探索画素にそれぞれ対応する候補点および候補点周囲画素が求められる。まず候補点を求めるのに先立ち、下記（１）式によって表される、実空間における対応線Ｌ１が求められる。
Ｒ（ｘ，ｙ，ｚ）＝ｆ（ｉｘ，ｉｙ，ＣＭＡ，Ｆ，ｄ）            （１）
【００２２】
（１）式においてｉｘとｉｙは、図５に示すように、第１の画像Ａ０における指示点Ｐ０のＩＸ座標（横座標）およびＩＹ座標（縦座標）を示し、原点は第１の画像Ａ０の中心である。ＣＭＡは、第１の画像Ａ０を撮影したときのカメラの位置および姿勢を示す撮影位置情報Ａ１である。Ｆはカメラの撮影レンズの焦点距離、ｄは第１の画像Ａ０における画素ピッチすなわち隣接する２つの画素間の距離を示す。（１）式から理解されるように、実空間上の対応線Ｌ１は、ｘ，ｙ，ｚをパラメータとして表され、ｉｘ，ｉｙ，ＣＭＡ，Ｆ，ｄの関数である。この関数すなわち対応線Ｌ１の求め方は従来公知であるので、その説明を省略する。
【００２３】
次に（２）式に従って、第２の画像Ｂ０における対応線Ｌ１上の画素すなわち候補点の座標が求められる。
Ｑ（ｋｘ，ｋｙ）＝ｇ（Ｒ，ＣＭＢ，Ｆ，ｄ）                    （２）
【００２４】
（２）式において、ｋｘとｋｙは、第２の画像Ｂ０における候補点のＩＸ’座標（横座標）およびＩＹ’座標（縦座標）を示し、原点は第２の画像Ｂ０の中心である。ＣＭＢは、第２の画像Ｂ０を撮影したときのカメラの位置および姿勢を示す撮影位置情報Ｂ１である。Ｆはカメラの撮影レンズの焦点距離、ｄは第２の画像Ｂ０における画素ピッチすなわち隣接する２つの画素間の距離を示す。すなわち候補点は、ｋｘ，ｋｙをパラメータとして表され、Ｒ，ＣＭＢ，Ｆ，ｄの関数である。この関数すなわち候補点の求め方は従来公知であるので、その説明を省略する。
【００２５】
このようにして、（１）式に従って実空間における対応線Ｌ１上の点Ｒ１（ｘ１，ｙ１，ｚ１）が選択されると、（２）式に従って、第２の画像Ｂ０において点Ｒ１（ｘ１，ｙ１，ｚ１）に対応した候補点Ｑ１が求められる。そして、候補点Ｑ１に関し、指示点Ｐ０に対する最適探索画素と同じ位置関係にある候補点周囲画素が求められる。なお本実施形態において、点Ｒ１（ｘ１，ｙ１，ｚ１）は第２の画像Ｂ０に含まれ、かつ最もカメラに近い点であると仮定する。
【００２６】
誤差計算部２４では、最適探索画素設定部２２から出力された指示点Ｐ０および最適探索画素の各画素値と、対応画素算出部２３から出力された候補点Ｑ１および候補点周囲画素の各画素値との差の二乗和が誤差として算出される。次いで候補点更新部２５では、次の候補点を選択するためにｚ座標値が更新され、このｚ座標値は候補点Ｑ１を求めたときのｚ座標値よりも所定値だけ大きい。すなわち点Ｒ２（ｘ２，ｙ２，ｚ２）が選択され、対応画素算出部２３では、（２）式に従って、点Ｒ２（ｘ２，ｙ２，ｚ２）を用いて次の候補点Ｑ２と候補点周囲画素が求められる。図５の例で説明すると、候補点Ｑ２は候補点Ｑ１の右側に位置している。
【００２７】
誤差計算部２４では、新しい候補点Ｑ２に関して、候補点Ｑ１の場合と同様にして誤差が算出される。このようにして対応画素算出部２３、誤差計算部２４および候補点更新部２５において、実空間上の対応線Ｌ１におけるｚ座標値が更新されて処理が実行され、第２の画像Ｂ０内における対応線Ｌ１上の各候補点Ｑ１，Ｑ２．．．Ｑ７に関して誤差が求められる。
【００２８】
最適対応画素決定部２６では、誤差計算部２４において求められた全ての候補点に関する誤差がチェックされて、誤差が最小になるような候補点が指示点Ｐ０に対応する対応点Ｑ０として求められる。この対応点Ｑ０は、画素位置表示部２７の処理によって、モニタ画面の第２の画像Ｂ０において表示される（図１参照）。
【００２９】
図６は、対応画素算出部２３、誤差計算部２４、候補点更新部２５および最適対応画素決定部２６において実行され、指示点に基づいて対応点を決定する対応点決定処理ルーチンのフローチャートである。
【００３０】
ステップ１０１では、マウスあるいはキーボードを用いて選択された指示点Ｐ０の情報が入力される。ステップ１０２では、上記（１）式に従って対応線Ｌ１が求められるとともに、パラメータｚが所定の値に定められて、対応線Ｌ１上の点Ｒ１〜Ｒｎが算出される。ステップ１０３では、誤差の最小値Ｅmin が初期値Ｅ1 に、最小値Ｅmin をとるときの候補点を示すパラメータmin が初期値１に、またカウンタｉが初期値２にそれぞれ定められる。
【００３１】
ステップ１０４では、上記（２）式に従って、点Ｒｉに対応する候補点Ｑｉおよび候補点周囲画素が算出される。ステップ１０５では、候補点Ｑｉおよび候補点周囲画素に関する誤差Ｅｉが算出される。この計算は下記（３）式に従って行われる。
Ｅｉ＝Σ（ＰＲ−ＱＲｉ)2＋Σ（ＰＧ−ＱＧｉ)2
＋Σ（ＰＢ−ＱＢｉ)2                                    （３）
【００３２】
（３）式において、ＰＲ，ＰＧ，ＰＢはそれぞれ、指示点Ｐ０あるいは最適探索画素におけるレッド、グリーンおよびブルーの画素値である。ＱＲｉ，ＱＧｉ，ＱＢｉはそれぞれ、候補点Ｑｉあるいは候補点周囲画素におけるレッド、グリーンおよびブルーの画素値である。Σは、指示点、最適探索画素、候補点および候補点周囲画素について、すなわち５点について二乗和が求められることを示す。すなわち（３）式により、レッド、グリーンおよびブルーについて、指示点Ｐ０および最適探索画素の各画素値と候補点Ｑｉおよび候補点周囲画素の各画素値との差の二乗和が求められる。
【００３３】
ステップ１０６では、ステップ１０５において求められた誤差Ｅｉが、今までに求められている最小値Ｅmin よりも小さいか否かが判定される。小さければ、ステップ１０７において誤差Ｅｉが最小値Ｅmin として更新される。また、誤差Ｅｉに対応したカウンタｉが最小値Ｅmin に対応したパラメータmin として更新される。これに対し、ステップ１０６において誤差Ｅｉが最小値Ｅmin 以上であると判定された場合、ステップ１０７は実行されない。
【００３４】
ステップ１０６または１０７の後、ステップ１０８ではカウンタｉが１だけインクリメントされる。ステップ１０９では、カウンタｉの値が候補点の総数ｎよりも大きいか否かが判定される。カウンタｉの値が候補点の総数ｎ以下であるとき、ステップ１０４へ戻り、上述した処理が再び実行される。ステップ１０９においてカウンタｉの値が候補点の総数ｎよりも大きいと判定されたとき、ステップ１１０が実行される。
【００３５】
ステップ１１０では、ステップ１０７において求められた最小値Ｅmin を有する候補点が対応点Ｑ０として第２の画像Ｂ０上に表示される（図１参照）。ステップ１１１では、対応点Ｑ０の座標（Ｘmin,Ｙmin,Ｚmin ）がモニタ画面の所定の部位に表示され、これにより対応点決定処理ルーチンは終了する。
【００３６】
図７は最適探索画素設定部２２において最適探索画素を決定するための処理を示し、図８は指示点Ｐ０およびその近傍に位置する画素の画素値を例示している。これらの図を参照して最適探索画素の求め方を説明する。
【００３７】
マウス等を用いて指示点Ｐ０が選択されると、第１の画像Ａ０における指示点Ｐ０の座標（ｉｘ，ｉｙ）と画素値が求められる。図８の例では、画素値は２３６である。
【００３８】
第１の画像Ａ０において、指示点Ｐ０に隣接する４つの領域１〜４が定義される。領域１は、指示点Ｐ０の直ぐ上の画素（１７０）を左下隅とする。領域２は、指示点Ｐ０の直ぐ左の画素（２０２）を右下隅とする。領域３は、指示点Ｐ０の直ぐ右の画素（１３）を左上隅とする。領域４は、指示点Ｐ０の直ぐ下の画素（１５８）を右上隅とする。
【００３９】
まず領域１に関して、指示点Ｐ０の上側に隣接した画素の座標値が設定され（符号Ｓ１）、その画素値が抽出される（符号Ｓ２）。この画素値は、図８では１７０であり、この画素値と指示点Ｐ０の画素値との間のユークリッド距離すなわち２つの画素値の差の二乗が計算される（符号Ｓ３）。次に、水平方向にさらに＋１画素だけ変位した位置（符号Ｓ１）における画素値（図８では８）が抽出され（符号Ｓ２）、この画素値に関して指示点Ｐ０の画素値との間のユークリッド距離が計算される（符号Ｓ３）。
【００４０】
ユークリッド距離は下記（４）式に従って行われる。
Ｆik＝（ＰＲ−ＡＲik)2＋（ＰＧ−ＡＧik)2＋（ＰＢ−ＡＢik)2    （４）
【００４１】
（４）式において、ＰＲ，ＰＧ，ＰＢはそれぞれ、指示点Ｐ０におけるレッド、グリーンおよびブルーの画素値である。ＡＲik，ＡＧik，ＡＢikはそれぞれ、座標（ｉ，ｋ）の画素におけるレッド、グリーンおよびブルーの画素値である。すなわち（４）式により、レッド、グリーンおよびブルーについて、指示点Ｐ０および（ｉ，ｋ）の画素の各画素値の差の二乗和が求められる。
【００４２】
（４）式の演算が水平方向における限界位置まで行われると、次に、１画素だけ垂直上方に位置する行に関して、同じ処理が行われる。そして、垂直方向に関しても限界位置まで処理が完了した状態において、ユークリッド距離が最大である画素が領域１における最適探索画素として決定される（符号Ｓ４）。領域１における最適探索画素は、図８の例では指示点Ｐ０の右上に隣接する画素ａ１（＝８）である。
【００４３】
次に領域２に関して、指示点Ｐ０の左側に隣接した画素の座標値が設定され（符号Ｓ５）、その画素値が抽出される（符号Ｓ６）。この画素値と指示点Ｐ０の画素値との間のユークリッド距離と、この画素値と領域１の最適探索画素の画素値との間のユークリッド距離との積が計算される（符号Ｓ７）。次に、水平方向にさらに−１画素だけ変位した位置（符号Ｓ５）における画素値が抽出され（符号Ｓ６）、この画素値に関して、前述したように２つのユークリッド距離の積が計算される（符号Ｓ７）。
【００４４】
２つのユークリッド距離の積は下記（５）式に従って行われる。
Ｆik＝（（ＰＲ−ＡＲik)2＋（ＰＧ−ＡＧik)2＋（ＰＢ−ＡＢik)2)
×((Ａ１Ｒ−ＡＲik)2＋（Ａ１Ｇ−ＡＧik)2＋（Ａ１Ｂ−ＡＢik)2)   （５）
【００４５】
なお（５）式において、Ａ１Ｒ，Ａ１Ｇ，Ａ１Ｂはそれぞれ、領域１の最適探索画素におけるレッド、グリーンおよびブルーの画素値である。
【００４６】
（５）式の演算が水平方向における限界位置まで行われると、次に、１画素だけ垂直上方に位置する行に関して、同じ処理が行われる。そして、垂直方向に関しても限界位置まで処理が完了した状態において、２つのユークリッド距離の積が最大である画素が領域２における最適探索画素として決定される（符号Ｓ８）。領域２における最適探索画素は、図８の例では指示点Ｐ０の左上方に位置する画素ａ２（＝１２７）である。
【００４７】
領域３に関しても同様に、指示点Ｐ０の右側に隣接した画素の座標値が設定され（符号Ｓ９）、その画素値が抽出される（符号Ｓ１０）。この画素値と指示点Ｐ０の画素値との間のユークリッド距離と、領域１の最適探索画素の画素値との間のユークリッド距離と、領域２の最適探索画素の画素値との間のユークリッド距離との積が計算される（符号Ｓ１１）。次に、水平方向にさらに＋１画素だけ変位した位置（符号Ｓ９）における画素値が抽出され（符号Ｓ１０）、この画素値に関して、前述したように３つのユークリッド距離の積が計算される（符号Ｓ１１）。
【００４８】
３つのユークリッド距離の積は下記（６）式に従って行われる。
Ｆik＝（（ＰＲ−ＡＲik)2＋（ＰＧ−ＡＧik)2＋（ＰＢ−ＡＢik)2)
×((Ａ１Ｒ−ＡＲik)2＋（Ａ１Ｇ−ＡＧik)2＋（Ａ１Ｂ−ＡＢik)2)
×((Ａ２Ｒ−ＡＲik)2＋（Ａ２Ｇ−ＡＧik)2＋（Ａ２Ｂ−ＡＢik)2)   （６）
【００４９】
なお（６）式において、Ａ２Ｒ，Ａ２Ｇ，Ａ２Ｂはそれぞれ、領域２の最適探索画素におけるレッド、グリーンおよびブルーの画素値である。
【００５０】
（６）式の演算が水平方向における限界位置まで行われると、次に、１画素だけ垂直下方に位置する行に関して、同じ処理が行われる。そして、垂直方向に関しても限界位置まで処理が完了した状態において、３つのユークリッド距離の積が最大である画素が領域３における最適探索画素として決定される（符号Ｓ１２）。領域３における最適探索画素は、図８の例では指示点Ｐ０の右下方に位置する画素ａ３（＝５６）である。
【００５１】
領域４に関しても同様に、指示点Ｐ０の下側に隣接した画素の座標値が設定され（符号Ｓ１３）、その画素値が抽出される（符号Ｓ１４）。この画素値と指示点Ｐ０の画素値との間のユークリッド距離と、領域１の最適探索画素の画素値との間のユークリッド距離と、領域２の最適探索画素の画素値との間のユークリッド距離と、領域３の最適探索画素の画素値との間のユークリッド距離との積が計算される（符号Ｓ１５）。次に、水平方向にさらに−１画素だけ変位した位置（符号Ｓ１３）における画素値が抽出され（符号Ｓ１４）、この画素値に関して、前述したように４つのユークリッド距離の積が計算される（符号Ｓ１５）。
【００５２】
４つのユークリッド距離の積は下記（７）式に従って行われる。
Ｆik＝（（ＰＲ−ＡＲik)2＋（ＰＧ−ＡＧik)2＋（ＰＢ−ＡＢik)2)
×((Ａ１Ｒ−ＡＲik)2＋（Ａ１Ｇ−ＡＧik)2＋（Ａ１Ｂ−ＡＢik)2)
×((Ａ２Ｒ−ＡＲik)2＋（Ａ２Ｇ−ＡＧik)2＋（Ａ２Ｂ−ＡＢik)2)
×((Ａ３Ｒ−ＡＲik)2＋（Ａ３Ｇ−ＡＧik)2＋（Ａ３Ｂ−ＡＢik)2)   （７）
【００５３】
なお（７）式において、Ａ３Ｒ，Ａ３Ｇ，Ａ３Ｂはそれぞれ、領域３の最適探索画素におけるレッド、グリーンおよびブルーの画素値である。
【００５４】
（７）式の演算が水平方向における限界位置まで行われると、次に、１画素だけ垂直下方に位置する行に関して、同じ処理が行われる。そして、垂直方向に関しても限界位置まで処理が完了した状態において、４つのユークリッド距離の積が最大である画素が領域４における最適探索画素として決定される（符号Ｓ１６）。領域４における最適探索画素は、図８の例では指示点Ｐ０の左下に隣接する画素ａ４（＝１９７）である。
【００５５】
図９は最適探索画素設定部２２において実行される最適探索画素決定処理ルーチンのフローチャートである。なお図９には、領域４における最適探索画素ａ２を求める処理のみが示されており、他の領域における最適探索画素は同様な処理によって求められる。また、以下の説明において、ｘ軸は図８において左右方向に延び、右向きが正である。ｙ軸は図８において上下方向に延び、上向きが正である。
【００５６】
ステップ２０１では、（７）式によって求められるユークリッド距離の積の最大値Ｆmax が初期値Ｆx,y-1 に、最大値Ｆmax をとるときの画素のｙ座標を示すパラメータｙmax が初期値(y-1) に、最大値Ｆmax をとるときの画素のｘ座標を示すパラメータｘmax が初期値(x) にまたカウンタｋが初期値(y-1) にそれぞれ定められる。
【００５７】
ステップ２０２ではカウンタｉが初期値ｘに定められる。ステップ２０３では（７）式に従って、座標（ｘ，ｙ−１）の画素におけるユークリッド距離の積Ｆikが計算される。
【００５８】
ステップ２０４では、ステップ２０３において求められた積Ｆikが、今までに求められている最大値Ｆmax よりも大きいか否かが判定される。大きければ、ステップ２０５において積Ｆikが最大値Ｆmax として更新される。また、この積Ｆikに対応したｙ座標（ｋ）がパラメータymaxに、ｘ座標（ｉ）がパラメータxmaxとして更新される。これに対し、ステップ２０４において積Ｆikが最大値Ｆmax 以下であると判定された場合、ステップ２０５は実行されない。
【００５９】
ステップ２０４または２０５の後、ステップ２０６ではカウンタｉが１だけデクリメントされる。ステップ２０７では、カウンタｉの値が最適探索画素の選定を行うべき範囲のｘ座標の限界値（ｘ−１０）よりも小さいか否かが判定される。カウンタｉの値が限界値（ｘ−１０）以上であるとき、すなわちカウンタｉが限界値よりも指示点Ｐ０側の画素を示しているとき、ステップ２０３へ戻り、上述した処理が再び実行される。これに対し、カウンタｉの値が限界値（ｘ−１０）よりも小さいとき、すなわちカウンタｉが限界値よりも左側の画素を示しているとき、ステップ２０８が実行される。
【００６０】
ステップ２０８ではカウンタｋが１だけデクリメントされる。ステップ２０９では、カウンタｋの値が最適探索画素の選定を行うべき範囲のｙ座標の限界値（ｙ−１０）よりも小さいか否かが判定される。カウンタｋの値が限界値（ｙ−１０）以上であるとき、すなわちカウンタｋが限界値よりも指示点Ｐ０側の画素を示しているとき、ステップ２０２へ戻り、上述した処理が再び実行される。これに対し、カウンタｋの値が限界値（ｙ−１０）よりも小さいとき、すなわちカウンタｋが限界値よりも下側の画素を示しているとき、ステップ２１０が実行される。
【００６１】
ステップ２１０では、ステップ２０５において求められた最大値Ｆmax を示す画素ａ４が領域４における最適探索画素として決定され、モニタ画面の所定の部位に表示される。これにより、このルーチンは終了する。
【００６２】
以上のように本実施形態では、特に図８に明示されるように、指示点Ｐ０の周囲に位置する４つの領域に含まれる画素および指示点Ｐ０の各画素値の変化が最も大きくなるようにして、４つの領域からそれぞれ最適探索画素が選択される。したがって、指示点Ｐ０およびその周囲の特徴に近い特徴を有する画素が対応点Ｑ０として検出される。このため指示点Ｐ０に対応した対応点Ｑ０を確実に検出することができる。また、指示点の周囲の特徴を表す画素として、４画素のみを用いており、ｎ×ｎの全ての画素を用いる場合と比較して、対応点Ｑ０の検出処理に要する時間は短い。
【００６３】
【発明の効果】
以上のように本発明によれば、一方の画像の指示点に対応する対応点を他方の画像から検出するマッチング装置において、対応点を正確かつ短時間に検出することができる。
【図面の簡単な説明】
【図１】本発明の一実施形態のマッチング装置であるコンピュータのモニタ画面に表示される第１および第２の画像の一例を示す図である。
【図２】第１および第２の画像が撮影された場所における実空間の座標系を示す図である。
【図３】カメラの姿勢である、撮影レンズの光軸の傾斜の定義を示す図である。
【図４】マッチング装置のブロック図である。
【図５】第１の画像における指示点に基づいて得られた実空間上の対応線から、第２の画像上の対応線を得て候補点を求める手順を示す図である。
【図６】指示点に基づいて対応点を決定する処理を示すフローチャートである。
【図７】最適探索画素設定部において最適探索画素を決定するための処理を示す図である。
【図８】指示点およびその近傍に位置する画素の画素値の例と、最適探索画素設定部によって求められた最適探索画素を示す図である。
【図９】最適探索画素決定処理ルーチンのフローチャートである。
【符号の説明】
Ａ０  第１の画像
Ｂ０  第２の画像
Ｐ０  指示点
Ｑ０  対応点
ａ１，ａ２，ａ３，ａ４  最適探索画素
【図１】
0004166451.tif 000002
【図２】
0004166451.tif 000003
【図３】
0004166451.tif 000004
【図４】
0004166451.tif 000005
【図５】
0004166451.tif 000006
【図６】
0004166451.tif 000007
【図７】
0004166451.tif 000008
【図８】
0004166451.tif 000009
【図９】
0004166451.tif 000010