(58)【調査した分野】(Int.Cl.,DB名)
前記対応点判定部は、前記参照画像に含まれる画素のうち、前記算出対象の画素の視差ごとの評価値のうち最小の評価値となる視差に対応する画素を、前記対応点として判定する、
請求項1または2記載のステレオマッチング装置。
【背景技術】
【0002】
従来、同一の対象物(被写体)を2台のカメラ(画像取得手段)で撮影し、得られた2枚の画像同士の対応点を求めて、カメラから対象物までの距離を計測する距離計測システムが知られている。
【0003】
図1は、距離計測システムの構成例を示す模式図である。同システムは、同一の対象物OBJを撮影する基準カメラCLと参照カメラCRと、各カメラが撮影した画像から対象物OBJまでの距離(奥行き情報)を出力するコンピュータCOMとを備える。ここで、対象物とはカメラが撮影した画像に写っているものであり、同図では建物とその背景とが対象物OBJを構成している。基準カメラCLにより撮影された画像は、ケーブルCBLによってコンピュータCOMに転送されて、基準画像PLとして記憶される。参照カメラCRより撮影された画像は、ケーブルCBRによってコンピュータに転送されて、参照画像PRとして記憶される。
【0004】
ここで、以降の説明においては、基準カメラCLと参照カメラCRの組をステレオカメラという。また、基準画像PLと参照画像PRの組をステレオ画像という。
【0005】
基準カメラCLと参照カメラCRは、撮影する位置が異なる。ただし、各カメラのピントや絞り、感度などの特性は等しくなるよう調整されることが望ましい。基準カメラCLと参照カメラCRは、平行ステレオカメラとなるように配置される。平行ステレオカメラとは、2台のカメラの光軸が互いに平行であり、かつ、撮像面が同一平面上にあって水平方向に整列されたステレオカメラである。
【0006】
なお、各カメラの配置は左右が逆であっても、水平方向ではなく垂直方向に整列して配置してもよい。また、画像の平行化が可能なように両方のカメラを校正すれば、平行でないステレオカメラであってもよい。
【0007】
ここで、以降の説明においては、説明の便宜上、視線方向に向かって左側に配置されるカメラを基準カメラCL、右側に配置されるカメラを参照カメラCRとする。
【0008】
コンピュータCOMは、ステレオマッチング装置と記憶装置と出力装置を備える。ステレオマッチング装置は、ステレオ画像から対応点を探索する処理を行い、奥行き情報を算出する。記憶装置は、カメラで撮影されたステレオ画像、およびステレオマッチング装置が計算した奥行き情報を記憶する。出力装置は、奥行き情報に基づいて対象物OBJを立体的に表示するディスプレイである。
【0009】
なお、出力装置は、立体視可能な媒体や立体物の印刷装置、奥行き情報に基づく制御が可能な装置(ロボット、玩具、情報端末、交通輸送機、検品装置)であってもよい。
【0010】
ここで、ステレオ計測について説明する。
図2は、ステレオ計測の原理を示す模式図である。同図に示されるように、3次元空間中の点Pは、ステレオ画像に投影され、点P
0および点P
1をもたらす。基準カメラCLと参照カメラCRの位置が異なるため、基準画像PLと参照画像PRに投影された点の2次元座標は一致することはなく、各カメラCL,CRから点Pまでの距離に応じて2次元座標の「ずれ」を生じる。この「ずれ」の大きさを視差という。なお、同図に示された対象物OBJには、建物の背景の図示が省略されている。
【0011】
計測前の点Pの3次元座標は未知であるため、その視差もまた未知である。ステレオカメラによる計測は、画像処理を用いてステレオ画像から視差を獲得することにより達せられる。基準画像PL上の点P
0に対応する点P
1を参照画像CRから精度良く求めるほど、より正確に点Pの3次元座標を計測することが可能となる。
【0012】
なお、以降の説明においては、視差と3次元座標を区別する必要がないとき、これらを単に奥行き情報という。
【0013】
コンピュータCOMのオペレータまたはコンピュータCOMは、ステレオカメラに2枚の画像PL,PRの撮影を指示する。撮影された画像はデジタル化されて、コンピュータCOMへと転送される。ステレオ画像が入力されると、コンピュータCOMは、基準画像PL上の点P
0に対応する点P
1を参照画像PRから探索する。これを対応点探索という。点Pの視差が確定すると、三角測量の原理により、基準カメラCLのカメラ中心O
0と参照カメラCRのカメラ中心O
1、および、基準画像PL中の点P
0と参照画像PRの点P
1から3次元空間中の点Pの3次元座標が直ちに求まる。
【0014】
以上説明した処理を基準画像PL上の各画素についてくり返すことにより、ステレオカメラによって撮影された対象物OBJに関する奥行き情報を獲得することができる。コンピュータCOMは、得られた奥行き情報に基づいてディスプレイに対象物OBJを立体的に表示し、あるいは、他の出力装置に奥行き情報を転送する。
【0015】
次に、ステレオ相関法について説明する。
ステレオ相関法は、基準画像PL上の画素ごとに、対応する点を参照画像PRより探索する。平行ステレオカメラによって撮影すると、一方の画像上のある1点に対する、他方の画像上での対応点は、上下位置が同一の走査線上に存在することが知られている。走査線とは、画像上に水平に並んだ画素の列である。すなわち、基準画像PL上にある1点に対して対応点を求めるためには、参照画像PR上のただ1行の走査線を探索すればよい。
【0016】
なお、平行ステレオカメラではない2台のカメラによって撮影が行われた場合でも、あらかじめ校正され基準カメラCLと参照カメラCRの相対的な位置・姿勢関係および特性が既知であれば、平行化と呼ばれる画像変換によって同様の対応点探索が可能となる。
【0017】
図3は、ウィンドウコストと対応点の関係を示す模式図である。
図3(a)に示すように、対応点の探索は、基準画像PL上に設けた小領域(図中、注目画素の周囲に示された太線で囲まれた領域)と、参照画像PR上に設けた小領域(図中、対応点の周囲に示された太線で囲まれた領域)とを比較する。これらの小領域をウィンドウという。基準画像PL上の注目した点(注目画素)に対して、その近傍にウィンドウを設ける。参照画像PRの走査線上に並んでいる対応点候補それぞれの近傍にウィンドウを設ける。
【0018】
ウィンドウ内に写る像を用いて、注目画素と各対応点候補との非類似性を数値化する。この非類似性の指標をウィンドウコストという。ウィンドウコストは、基準画像PLに含まれる画素と参照画像PRに含まれる画素との非類似性を表す。ウィンドウコストには、輝度の差の絶対値の総和などを用いる。
【0019】
縦軸にウィンドウコストC、横軸に対応点候補の視差dをとってグラフ化すると、理想的な場合におけるウィンドウコストは、
図3(b)に示すように類似性が最も高い候補においてピークを示す曲線を描く。
【0020】
したがって、最も単純な対応点の探索方法は、画素ごとにウィンドウコストが最小値となる視差を求めることである。しかし、局所的な輝度の比較にのみ頼る探索方法は、しばしば誤対応をまねき、奥行き情報に突発的なノイズをもたらす。
【0021】
次に、走査線最適化法について説明する。
図4は、従来の走査線最適化法(scanline optimization)の概念を示す概念図である。同図に示されるように、従来の走査線最適化法は、走査線を単位として、各画素の対応点を決定する手法である(例えば「非特許文献1」参照)。図中の太線の枠は、1回の最適化により視差の組み合わせが求まる画素列である。破線の矢印は、解を求める画素の計算順序を表す。座標軸u,vは、それぞれ基準画像PLの水平座標と垂直座標に対応する。矢印の順に、各画素における対応点候補の評価値を計算する。評価値は、注目画素と対応点との非類似性および奥行きの不連続性を同時に表す。
【0022】
この方法によれば、一般に物体表面は連続するという期待が視差の組み合わせに反映されるため、奥行き情報の突発的なノイズが軽減される。
【0023】
走査線最適化法は、動的計画法の原理に基づいて、走査線ごとに視差の組み合わせの最適解を求める。基準画像PLの幅をLとしたとき、基準画像PLのある1行について1列目からL列目までの最適な視差の組み合わせを求める問題を、いくつかの部分問題に分解する。この場合の部分問題とは、1列目からL−1列目までの組み合わせの問題、1列目からL−2列目までの組み合わせの問題、以下同様に続いて、最後は1列目の最適な視差を求める問題を指す。そして1列目から順番に部分解を得ていくことによって、全体の最適解を得る手法である。
【0024】
視差の組み合わせの評価値は、漸化式に基づいて効率的に求めることができる。そして、漸化式の計算結果を最小にする視差の組み合わせが解となる。漸化式は、隣り合う画素同士の視差変化が小さいほど、かつ、ウィンドウコストの合計が小さいほど、値が小さくなるように定義する。
【0025】
ここで、走査線最適化法のアルゴリズムについて具体例を用いて説明する。
図5は、1つの走査線を1次元画像と見なして、横に水平座標、縦に視差をとったウィンドウコスト配列である。説明を単純化するため、画像の幅は3画素、視差の探索範囲も3画素とする。マス目の中の数値は、対応点候補との非類似性を表すウィンドウコストの例である。
【0026】
各列から視差を1つずつ選び、それらのウィンドウコストの合計を最小化したい。ただし、隣り合う2列の視差が異なる場合は、その組み合わせのたびに、ウィンドウコストの合計にペナルティとして1を加える。視差が同じならペナルティは0である。問題は、最適な視差の組み合わせを効率よく求める方法である。
【0027】
ウィンドウコスト配列とペナルティの系が探索空間となる。視差の組み合わせを全探索すると、画像サイズと探索範囲に応じて計算量が指数関数的に増大する。しかし、計算の段階が順序づけ可能であり、かつ、いずれの段階の探索空間も前の段階の計算結果によって変化しなければ、探索空間の同一部分は解が変化しないので再計算する必要がない。走査線最適化法は、画像の水平座標によって計算の段階を順序づけて、各段階の部分解を記録しながら、最適な組み合わせを効率良く探索する。
【0028】
図6は、
図5に示したウィンドウコスト配列の例に対する走査線最適化法の計算過程をグラフ表現で表したものである。円は計算の段階であり、円内の数値はその段階の評価値を、円外の数値の組はウィンドウコスト配列の列座標と視差を表す。矢印は、段階間の計算順序を示す。矢印線の数値は、両端の視差の組み合わせによる評価値の増分量であり、矢印の先のウィンドウコストにペナルティを加算したものである。終了段階の最適解は、1〜3列目の解の最小値より求まる。1〜3列目の解は、矢印線で結ばれている1〜2列目の評価値と増分量の和の最小値である。1〜2列目の解も同様であり、1列目の解はウィンドウコストそのものとなる。なお、計算の開始段階の評価値は、0である。
【0029】
以上説明した処理により、終了段階において評価値が最小となる視差の組み合わせが求まる。
図6の太線で示される計算順序は、最適解を得るまでの履歴である。この例で求まった、最適な視差の組み合わせは、1列目から順に0、0、2となる。
【0030】
次に、別の従来技術である準大域的マッチング(semi-global matching)について説明する。
【0031】
従来の準大域的マッチングは、走査線最適化法よりも計算が効率的である。すなわち、視差の探索範囲がDのとき、走査線最適化法は計算の段階ごとにD×D通りの組み合わせの計算を必要とする。それに対して準大域的マッチングは、D×4通りとなる。この4通りの内訳は、直前の計算の段階と同じ視差、直前の計算の段階の視差より1つ大きい視差、直前の計算の段階の視差より1つ小さい視差、および、直前の計算の段階における評価値が最小の視差、である。
【0032】
準大域的マッチングは、評価値の計算と同時に最小値も探索することができるので、最小値を求めるためのくり返し処理は必要ない。これにより、準大域的マッチングでは計算オーダーが1つ減じて、走査線最適化法より高速にマッチング処理を実現することができる。
【0033】
図7は、
図5に示したウィンドウコスト配列の例に対して、準大域的マッチングを紙面左から右へ1方向に適用した場合の準大域的マッチングの計算過程をグラフ表現で表したものである。
図6に示した走査線最適化法と比較すると、両者の解は同じとなるが、準大域的マッチングでは
図7の破線で示す計算手順が不要となる。
【0034】
このように視差の組み合わせの数を制限しても、準大域的マッチングは奥行きのエッジを保存する効果を失わない。仮に、視差の組み合わせを、直前の計算の段階と同じ視差、直前の計算の段階の視差よりも1つ大きい視差、直前の計算の段階の視差よりも1つ小さい視差、の3通りに限ると、算出される奥行きは平滑化されてしまう。すなわち、奥行きに大きな段差が存在する計測対象であっても、視差の変化がわずかずつに限定されるため、段差の角を面取りするような効果を及ぼして奥行きのエッジが不鮮明になってしまう。
【0035】
しかし、準大域的マッチングは、視差の組み合わせの選択肢に最小評価値の視差を加えることで、急激な視差の変化を許容し、鮮明な奥行きエッジを保存することができる。
【0036】
なお、準大域的マッチングは、走査線最適化法とは異なり、漸化式の計算を進める方向が走査線方向に限られず、例えば、8ないし16方向の直線的な画像の走査が提案されている(例えば「非特許文献2」参照)。準大域的マッチングにおいて、どの画素を通り、どの方向へ走査したとしても、
図5に示したウィンドウコスト配列と同様の2次元のウィンドウコスト配列を作成することができる。
【0037】
図8は、カメラからコンピュータへ入力されるステレオ画像の例である。
図9は、従来の準大域的マッチングによって求めた奥行き情報であり、準大域的マッチングにおける問題点の例を示している。
【0038】
従来の準大域的マッチングは、奥行きエッジの保存と計算の効率化とを両立する。その一方で、計算を効率化しなければ防ぐことが可能であった誤対応を発生させる場合がある。
図8のステレオ画像に写る屋根の棟と軒先は、ステレオカメラの左右の光学中心を結ぶ線と平行に、すなわち、視差の探索方向に類似したパターンがくり返されている。
図9は、1画素ごとに8方向から準大域的マッチングによって視差を求めた結果を示している。従来の準大域的マッチングは、
図8に示した例のような、変化に乏しいくり返しパターンにおいて誤対応を誘発しやすい。
【0039】
この問題は、くり返しパターンにおける、正しい対応点の評価値と誤った対応点の評価値とで差がつきにくいことに起因する。奥行きエッジの対応点とくり返しパターンの誤対応は、周囲の対応点と視差が大きく変化する点で共通する。しかし正しい対応点が明確な場合は正しい視差に拮抗する評価値が他に存在しないが、くり返しパターンの場合は互いに拮抗し合う評価値が複数の視差に存在する。
【0040】
よって、この問題に対する直観的な解法は、走査線最適化法のように画素ごとにすべての視差の組み合わせを調べて、視差の絶対差の大きさに比例するペナルティを、評価値に加算することである。しかし、準大域的マッチングは、絶対差が1以内の3つの視差、および、直前の計算の段階で最小であった評価値の視差の4通りに限られるので、ペナルティにそれ以上の変化を加えることはできない。一方、評価値に加えるペナルティを視差の変化の大きさに比例させると、従来の準大域的マッチングよりも計算オーダーが増加して走査線最適化法と同等となり、計算に要する時間を増大させる。
【発明を実施するための形態】
【0046】
以下、本発明にかかるステレオマッチング装置とステレオマッチングプログラムとステレオマッチング方法の実施の形態について、図面を参照しながら説明する。
【0047】
図10は、本発明にかかるステレオマッチング装置(以下「本装置」という。)の実施の形態を示すブロック図である。
【0048】
●本装置
本装置1は、画像入力部2、ステレオ画像記憶手段3、ウィンドウコスト計算処理部4、評価値計算処理部5、対応点判定部6、視差記憶手段7、立体表示手段8を有してなる。
【0049】
画像入力部2は、基準カメラCLと参照カメラCRとが撮影した対象物の画像を取得する手段である。
【0050】
ステレオ画像記憶手段3は、画像入力部2により取得されたステレオ画像が記憶される手段である。
【0051】
ウィンドウコスト計算処理部4は、ステレオ画像記憶手段3に記憶されているステレオ画像を取得して(読み出して)、ウィンドウコストを算出する手段である。ウィンドウコストとその算出方法については、後述する。
【0052】
評価値計算処理部5は、評価値を算出する手段である。評価値とその算出方法については、後述する。
【0053】
対応点判定部6は、対応点を判定する手段である。対応点とその判定方法については、後述する。
【0054】
視差記憶手段7は、本装置1が出力する視差を記憶する手段である。
【0055】
立体表示手段8は、画像入力部2が取得した対象物の画像と、視差記憶手段7に記憶された視差と、に基づいて、対象物を立体的に表示する手段である。
【0056】
さらに、本装置1は、ステレオ画像記憶手段3とは別に、後述する本発明にかかるステレオマッチング方法(以下「本方法」という。)を実行するために必要な情報を記憶する不図示の記憶手段を備えている。
【0057】
ここで、本装置1は、パーソナルコンピュータなどの情報処理装置により実現される。後述する本方法は、本装置1で動作する本発明にかかるステレオマッチングプログラム(以下「本プログラム」という。)が本装置1を構成するハードウェア資源と協働することで、本装置1により実行される。
【0058】
なお、本装置1とは別の情報処理装置で本プログラムを動作させることで、同情報処理装置を本装置1と同様に機能させて、本方法を実行させることができる。
【0059】
また、
図10に示した構成に代えて、本装置が、画像入力部2やステレオ画像記憶手段3を備えていなくてもよく、この場合、ウィンドウコスト計算処理部4は本装置の外部の記憶手段に記憶されているステレオ画像を読み出して取得する構成となる。
【0060】
さらに、
図10に示した構成に代えて、本装置が、視差記憶手段7や立体表示手段8を備えていなくてもよい。
【0061】
●ウィンドウコスト
ウィンドウコストとその算出方法について説明する。
ウィンドウコストは、基準画像に含まれる各画素の、各対応点候補について求める。基準画像の注目画素の2次元座標を(u,v)とする。基準画像には、
図3に示したように(u,v)を中心としてウィンドウ(基準ウィンドウ)を設ける。また、対応点候補となる視差の画素について、参照画像の座標(u−d,v)を中心に、基準ウィンドウに対応するウィンドウ(参照ウィンドウ)を設ける。
【0062】
ここで、基準ウィンドウと参照ウィンドウのウィンドウサイズ(ウィンドウの面積)は同一であり、そのサイズは、あらかじめ決められている。
【0063】
基準画像と参照画像のウィンドウの組について、ウィンドウコストC(p,d)を次の計算式によって求める。なお、基準画像における注目画素の座標をp=(u,v)、参照画像に対する視差をd、基準画像の画素の輝度をI
L、参照画像の画素の輝度をI
R、画素pを中心とする1画素以上の領域をW
pで表す。
【0065】
上記の式によって定義されるウィンドウコストは、一般にSAD(Sum of Absolute Differences)として知られる。
【0066】
なお、本発明において用いるウィンドウコストは、ウィンドウ間の非類似性を表す指標であればよく、SSD(Sum of Squared Differences)、あるいは、NCC(Normalized Cross-Correlation)の符号を反転した値など、他の公知の技術を用いてもよい。
【0067】
ウィンドウコストの計算は、基準画像のすべての画素についてくり返す。
図11は、1組のステレオ画像から求まるウィンドウコストの概念図である。ウィンドウコストは、3次元の配列として表現することができる。図中のu,vは、それぞれ基準画像の水平座標と垂直座標に対応し、その解像度によって値のとり得る範囲が定まる。dは視差を表していて、dがとり得る値の範囲は視差の探索範囲としてあらかじめ設定されている。基準画像の注目画素に対して、視差に応じて、参照画像上に対応点候補が定義される。1つの対応点候補から1つのウィンドウコストが求まり、図中の格子1つに割り当てられる。ウィンドウコストの数値が大きいほど、注目画素と対応点候補が類似しないことを表す。
【0068】
●評価値
評価値とその算出方法について説明する。
評価値は、先に説明したウィンドウコストを用いて、基準画像に含まれる画素ごとに、所定の画素から隣接する画素の順に、参照画像に含まれる画素との視差ごとに算出される。
【0069】
本発明では、視差の変化の大きさに比例して評価値を増大させるために、同一の画像座標の異なる視差同士を、視差の組み合わせに加える。例として、直前に計算した画像座標から視差が2つ小さくなる変化は、直接的に隣接画素の2つ小さい視差への変化を評価値の計算に加えるのではなく、
図12のaからa’のように同じ画像座標で1つ小さい視差への変化を2回くり返す。
図12のbからb’のように、視差が大きくなる場合についても同様である。これらの場合について、評価値の計算において、再帰的な計算が可能なように漸化式を定義する。この方法によれば、視差の探索範囲の大きさによらず、計算の各段階における組み合わせの数が一定になるので、効率よく評価値を計算することができる。
【0070】
また、本発明では、視差の評価値を計算するために、後述の3つの漸化式を用いる。これら3つの漸化式を計算するための順序は、評価値の算出対象の画像座標と、視差と、すべての視差について計算が完了した画像座標における評価値が最小となる視差、の3つを用いて定義する。
【0071】
ここで、画像座標は、水平座標あるいは垂直座標に限らず、1次元的に走査できる任意の画素列に対するインデックスとする。また、すべての視差について計算が完了した画素の中で、その時点で直前の画像座標における最小の評価値を、以降の説明では「直前の最適値」と呼ぶ。
【0072】
3つの漸化式を計算するための順序は、まず、画像座標に基づいて定める。この順序は任意の連続する座標であり、例えば、従来技術と同様に水平座標の順序であってもよい。
【0073】
画像座標が同じ場合には、視差に基づいて順序を定める。この順序を次のように定める。なお、以降の説明では、同一の画像座標における順序が先頭の視差を「始点」と呼ぶ。
【0074】
始点は、直前の最適値の視差(以下「直前最適視差」という。)と同じ視差とする。2番目以降の順序は、始点に基づく。まず始点との大小関係、次に始点との絶対差によって、順序を定める。
【0075】
始点との大小関係による順序は、始点より小さい視差を前、より大きい視差を後とする。これは逆であってもよく、あるいは一定でなく交互であってもよいが、一定である方がより望ましい。始点との絶対差による順序は、始点に対する視差の絶対差の昇順とする。大小関係による順序は、絶対差による順序に優先することがより望ましい。
【0076】
例として
図13の太線で示した点の順序は、昇順で点A、B、Cとなる。図中の丸印は、直前最適視差である。ここで、画像座標は、紙面左から右へ走査するものとする。したがって、点Aが始点となる。点Bは始点より視差が小さく、点Cは始点より大きいので、順序はBがCより若くなる。始点との視差の絶対差より、点Bは同じ画像座標で点Bより上に位置するどの点よりも順序が若くなる。点Cも同様に、同じ画像座標で点Cより下に位置するどの点よりも順序が若くなる。
【0077】
ここで、評価値の算出に用いられる3つの漸化式について説明する。
評価値は、基準画像に含まれる画素ごとに、すべての視差について算出されるが、評価値の計算は、3つに場合分けされる。第一に始点の視差の評価値を、各画素の最初に求める。始点は画像座標の走査で直前に走査した画素の、最小評価値の視差O
p+rとする。第二に始点より1つ小さい視差から最小視差まで、始点との絶対差の昇順で評価値を計算する。第三に始点より1つ大きい視差から最大視差まで、始点との絶対差の昇順で評価値を計算する。この3つによって場合分けされる、画像座標がpで視差がdの点の評価値S(p,d)の計算は、下記の漸化式によって表される。
【0079】
このように、算出対象の画素の視差ごとの評価値の算出用の漸化式には、直前最適視差と同じ視差の評価値の算出用の漸化式と、直前最適視差と異なる視差の評価値の算出用の漸化式と、がある。また、直前最適視差と異なる視差の評価値の算出用の漸化式には、直前最適視差より小さい視差の評価値の算出用の漸化式と、直前最適視差より大きい視差の評価値の算出用の漸化式と、がある。
【0080】
ここで、数式2中のrは走査順序が1つ前(直前)の画素への相対座標であり、Dは視差の探索範囲(D={d|D
min≦d≦D
max}であり、W
1は視差の不連続に対するペナルティであり、W
2は後述する隠れに対するペナルティである。また、評価値の初期値は、評価値の算出対象の点のウィンドウコストである。なお、O
pは、画素pごとに評価値が最小となる視差であり、下記の式により算出される。
【0082】
本発明においては、計算の段階ごとに3つの漸化式から1つを選択する。
図13の矢印線は、ある漸化式によって矢印の先の点の評価値を計算するとき、矢印の元の点の評価値が用いられることを示す。点Aを指す3つの矢印は、3つの漸化式のうちの1つを表す。点Bと点Cを指す矢印のそれぞれは、残り2つの漸化式を表す。
【0083】
点Bは、これから計算する評価値の画像座標と、その計算に用いる評価値の画像座標と、が同じとなる。しかし、前述の順序づけによって、参照される点の評価値が常に計算済みとなるため、点Bの評価値の計算は可能となる。点Cについても同様である。
【0084】
同じ画像座標の異なる視差の点同士は、基準カメラCLから見て隠れの関係となる。
図14は、隠れの関係にある点の例を示す模式図である。図中、点Ppが対象物OBJの表面だとすると、点Pq,Pr,Psは基準カメラCLから見て点Ppに隠れてしまうため、基準カメラCLには写らない。このように、基準カメラCLに写らない点Pq,Pr,Psを、基準カメラCLから見た隠れの点という。
【0085】
隣接する画像座標の視差が1より大きく変化するとき、隠れの点の評価値は累積する。隠れの点が多いほど累積する値も大きくなるので、視差の変化の大きさに比例して評価値が大きくなる効果がもたらされる。
【0086】
本発明においては、画像座標を走査する順序は問わない。よって、例えば、走査線最適化法(非特許文献1)と同様に左から右へ、上から下へラスタスキャンしてもよいし、準大域的マッチング(非特許文献2)のように複数かつ任意の方向へ直線的に画像を走査してもよい。また、他の従来技術(例えば、Stereo Correspondence by Dynamic Programming on a Tree, 0. Veksler, Proceedings of IEEE Conference on Computer Vision and Pattern Recognition, Vol.2, pp.384-390,2005.)と同様に、画像を何らかの木構造で表現して、木を深さ優先、幅優先、その他の手段で走査してもよい。
【0087】
なお、画像座標上で複数の方向へ走査する場合、あるいは走査する過程が枝分かれする場合は、計算の過程でそれぞれの評価値を合計し、評価値S(p,d)に置き換えてもよい。
【0088】
●対応点の判定
評価値を算出すると、対応点の判定が可能となる。すなわち、以上説明した計算方法により算出された評価値S(p,d)を、視差の探索範囲Dにおいて最小とする視差を、注目画素pの最適な視差d
pとして採用する。つまり、最適な視差d
pは、以下の式のように表すことができる。
【0090】
●本方法
以下、本方法について説明する。
図15は、本方法の実施の形態を示すフローチャートである。
先ず、ステレオカメラを用いて、対象物(被写体)を撮像してステレオ画像を撮影する(S1)。すなわち、基準カメラCLが基準画像PLを出力し、参照カメラCRが参照画像PRを出力する。
【0091】
本装置1は、画像入力部2を用いて、ステレオ画像(基準画像PLと参照画像PR)を取得してステレオ画像記憶手段3に記憶する。
【0092】
次いで、本装置1は、ウィンドウコスト計算処理部4を用いて、ステレオ画像記憶手段3に記憶されているステレオ画像を読み出して、ウィンドウコストを算出する(S2)。
【0093】
次いで、本装置1は、評価値計算処理部5を用いて、基準画像PLに含まれるすべての画素ごとに、評価値を算出する(S3)。
【0094】
図16は、評価値の算出方法を示すフローチャートである。
画像座標pと視差dについて、評価値S(p,d)の計算をくり返す(S31a,32a,32b,s31b)。ここで、視差dと直前最適視差O
p+rの大小関係により、評価値S(p,d)の算出に用いる漸化式を、前述の数式2の3つの漸化式の中から選択する。すなわち、d=O
p+r(S33のYes)のときは数式2の1番目の漸化式により評価値S(p,d)を算出し、d<O
p+r(S33のNo,S34のYes)のときは数式2の2番目の漸化式により評価値S(p,d)を算出し、d>O
p+r(S33のNo,S34のNo)のときは数式2の3番目の漸化式により評価値S(p,d)を算出する。
【0095】
図15に戻る。
次いで、本装置1は、対応点判定部6を用いて、基準画像PLに含まれるすべての画素ごとに、参照画像PR上の対応点を判定し、その視差を、視差記憶手段7に記憶するなど出力する(S5)。視差記憶手段7に記憶された視差は、例えば、本装置1が対象物を立体的に立体表示手段8に表示する際に用いられる。
【0096】
図17は、本装置1が視差記憶手段7に記憶された視差を用いて、対象物を立体的に表示した例を示す模式図である。同図は、前述の
図9に示した従来技術の出力結果に表れている誤対応が解消していることを示している。
【0097】
●まとめ
以上説明した実施の形態によれば、ステレオマッチングを用いた複数の奥行きを含む3次元空間の計測において、算出対象の画素に隣接する直前の算出対象の画素の直前最適視差と同じ視差、隣接画素の絶対差が1の視差、同じ画素の基準カメラCLから見て隠れになる点の視差、の組み合わせによる3通りの場合分けに基づいて最適化することにより、評価値を算出する計算が効率化され、局所的に大きな視差の変化を伴う誤対応が抑制され、なおかつ、奥行きエッジを保存する効果が維持されるため、ステレオマッチングの精度を向上することができる。
【0098】
ここで、これまで説明した本装置の特徴について、以下にまとめて記載しておく。
【0099】
(特徴1)
基準画像と参照画像とを取得する画像入力部と、
前記基準画像に含まれる画素ごとに、前記基準画像に設定される基準ウィンドウと、前記基準ウィンドウに対応して前記参照画像に設定される参照ウィンドウと、の間の非類似性を示すウィンドウコストを算出するウィンドウコスト計算処理部と、
前記基準画像に含まれる画素ごとに、前記基準画像に含まれる所定の画素から隣接する画素の順に、前記参照画像に含まれる画素との視差ごとの評価値を算出する評価値計算処理部と、
前記基準画像に含まれる画素ごとに、前記評価値に基づいて、前記参照画像に含まれる画素のうち前記基準画像に含まれる画素に対応する対応点を判定する対応点判定部と、
を有してなり、
前記評価値計算処理部は、算出対象の画素の視差ごとの評価値を、前記算出対象の画素に隣接する直前の算出対象の画素の視差ごとの評価値のうち最小の評価値に対応する直前最適視差と同じ視差の評価値から順に算出する、
ことを特徴とするステレオマッチング装置。
【0100】
(特徴2)
前記算出対象の画素の視差ごとの評価値は、前記直前最適視差との絶対差が小さい視差の評価値から順に算出される、
特徴1記載のステレオマッチング装置。
【0101】
(特徴3)
前記対応点判定部は、前記参照画像に含まれる画素のうち、前記算出対象の画素の視差ごとの評価値のうち最小の評価値となる視差に対応する画素を、前記対応点として判定する、
特徴1または2記載のステレオマッチング装置。
【0102】
(特徴4)
前記評価値計算処理部は、前記算出対象の画素の視差ごとの評価値を、
前記直前最適視差と同じ視差の評価値の算出用の漸化式と、
前記直前最適視差と異なる視差の評価値の算出用の漸化式と、
を用いて、算出する、
特徴1乃至3のいずれかに記載のステレオマッチング装置。
【0103】
(特徴5)
前記直前最適視差と異なる視差の評価値の算出用の漸化式には、
前記直前最適視差より小さい視差の評価値の算出用の漸化式と、
前記直前最適視差より大きい視差の評価値の算出用の漸化式と、
が含まれる、
特徴4記載のステレオマッチング装置。
【0104】
(特徴6)
前記直前最適視差と同じ視差の評価値の算出用の漸化式には、視差の不連続に対するペナルティが含まれる、
特徴4または5記載のステレオマッチング装置。
【0105】
(特徴7)
前記直前最適視差と異なる視差の評価値の算出用の漸化式には、視差の不連続に対するペナルティと、隠れに対するペナルティと、が含まれる、
特徴4乃至6のいずれかに記載のステレオマッチング装置。