"第一の画像取得手段からの第一の画像と第二の画像取得手段からの第二の画像が入力される画像入力手段と、前記第一の画像の第一の画素データを相互に異なる位置に含む複数の第一のウィンドウの各々について、当該第一ウィンドウと、指定された視差データに対応した前記第二の画像の第二のウィンドウとの間の非類似性に応じた評価値であるウィンドウコストを生成するウィンドウコスト計算処理手段と、前記第一のウィンドウのウィンドウコストに、前記第一の画素データに隣接する任意の方向にある三以上の画素データのウィンドウコストを累積加算する累積加算コスト計算処理手段と、前記累積加算コスト計算処理手段により計算された累積加算コストを修正する修正コストを計算する修正コスト計算処理手段と、前記修正コストに基づいて前記第一の画像の画素データそれぞれの対応点を前記第二の画像において求め、視差データを出力する対応点判定手段と、前記視差データを記憶する視差データ記憶手段と、を有するステレオ画像処理装置。前記修正コスト計算処理手段は、累積加算した方向各々のウィンドウコストを合計し、累積加算した隣接する画素データの数から一を減じた数倍の前記第一の画素データのウィンドウコストを、合計したウィンドウコストから減算することで修正コストを計算することを特徴とする請求項1記載のステレオ画像処理装置。前記修正コスト計算処理手段は、隣接する方向それぞれの信頼性を評価し、評価値に基づいてそれぞれの方向に対応する隣接する画素データのウィンドウコストを累積加算することで修正コストを計算することを特徴とする請求項1記載のステレオ画像処理装置。前記対応点判定手段は、ウィンドウコストが最小値となる第二の画像データにおける画素データを対応点として判定することを特徴とする請求項1記載のステレオ画像処理装置。前記対応点判定手段は、動的計画法により対応点を判定することを特徴とする請求項1記載のステレオ画像処理装置。第一の画像取得手段からの第一の画像と第二の画像取得手段からの第二の画像が入力される画像するステップ、前記第一の画像の第一の画素データを相互に異なる位置に含む複数の第一のウィンドウの各々について、当該第一ウィンドウと、指定された視差データに対応した前記第二の画像の第二のウィンドウとの間の非類似性に応じた評価値であるウィンドウコストを生成するウィンドウコストを計算処理するステップ、前記第一のウィンドウのウィンドウコストに、前記第一の画素データに隣接する三以上の画素データのウィンドウコストを累積加算するウィンドウコスト累積加算ステップ、前記ウィンドウコスト累積加算ステップにより計算された累積加算コストを修正する修正コストを計算する修正コスト計算処理ステップ、前記修正コストに基づいて前記第一の画像の画素データそれぞれの対応点を前記第二の画像において求め、視差データを出力する対応点判定ステップ、前記視差データを記憶するステップと、を有するステレオ画像処理方法。しかし、特許文献1の構成では、テクスチャが弱く抽出すべき特徴そのものに乏しい領域では、対応させるべき点について類似性が極大とならず、適切な奥行き情報を伝播することができない、という問題がある。また、非特許文献1に開示された方法でも、奥行きに段差があるとき適切な結果が得られない。奥行きの段差に対して、テクスチャの弱い領域へ誤った奥行き情報を伝播する、あるいは段差の形状を平滑化してしまう、という問題がある。物体の表面については奥行きを滑らかに連続させて、同時に段差については奥行きの不連続を保存しなければならない場合に、誤りが生じてしまう。本発明は、上述した従来技術の課題に鑑みてなされたもので、テクスチャの弱い領域および奥行きの段差を有する画像であっても、画像の対応付けに際しミスマッチングを軽減して高精度の視差検出を行うことができるステレオ画像処理装置、方法を提供することを目的とする。上記目的を達成するために、本発明では、画像入力手段と、ウィンドウコスト計算処理手段と、累積加算コスト計算処理手段と、修正コスト計算処理手段と、対応点判定手段と、視差データ記憶手段と、を有するステレオ画像処理装置を提案する。画像入力手段は、第一の画像取得手段からの第一の画像と第二の画像取得手段からの第二の画像が入力される。ウィンドウコスト計算処理手段は、第一の画像の第一の画素データを相互に異なる位置に含む複数の第一のウィンドウの各々について、当該第一ウィンドウと、指定された視差データに対応した第二の画像の第二のウィンドウとの間の非類似性に応じた評価値であるウィンドウコストを生成する。累積加算コスト計算処理手段は、第一のウィンドウのウィンドウコストに、第一の画素データに隣接する三以上の画素データのウィンドウコストを累積加算する。修正コスト計算処理手段は、累積加算コスト計算処理手段により計算した累積加算コストを集計した修正コストを計算する。対応点判定手段は、修正コストに基づいて第一の画像の画素データそれぞれの対応点を第二の画像において求め、視差データを出力する。視差データ記憶手段は、視差データを記憶する。さらに上記構成において、修正コスト計算処理手段は、累積加算した方向各々のウィンドウコストを合計し、累積加算した隣接する画素の数から一を減じた数の前記第一の画素のウィンドウコストを、合計したウィンドウコストから減算することで修正コストを計算するステレオ画像処理装置を提案する。また、上記構成において、修正コスト計算処理手段は、隣接する方向それぞれの信頼性を評価し、評価値に基づいてそれぞれの方向に対応する隣接する画素のウィンドウコストを累積加算することで修正コストを計算するステレオ画像処理装置を提案する。また、対応点判定手段は、ウィンドウコストが最小値となる第二の画像データにおける画素データを対応点として判定するステレオ画像処理装置を提案する。さらに、対応点判定手段は、動的計画法により対応点を判定するステレオ画像処理装置を提案する。本発明によれば、複数の面により奥行きの段差が形成される対象の計測において、計測する点に隣接する3以上の方向、例えば、上下左右4方向、あるいは斜めを含む8方向、あるいは任意の複数の方向から奥行きの連続性を反映することで、特定の方向においてテクスチャが弱い場合や、同じ方向にテクスチャが類似する場合であっても、他の方向から連続する奥行きが支持され、ステレオマッチングの精度を向上させることができる。また、方向に優先順位を与えることによって、奥行きの段差を保存する。画素ごとに、各方向の信頼性を推定し、信頼性の低い方向の評価を低く、信頼性の高い方向の評価を高くすることによって、修正コストが平滑化されることを抑止することができる。図1は、本発明のステレオ画像処理装置の構成を示す図である。本発明のステレオ画像処理装置は、同一の対象物を撮影する二台のカメラと、撮影された二枚の画像から対応点を探索して奥行き情報を出力するコンピュータを備える。基準カメラによって撮影された画像はケーブル1によってコンピュータに転送され、基準画像として記憶される。参照カメラで撮影した画像はケーブル2によってコンピュータに転送され、参照画像として記憶される。これ以降、基準カメラと参照カメラの組をステレオカメラと呼び、基準画像と参照画像の組をステレオ画像と呼ぶ。基準カメラと参照カメラは、ピントや絞り,感度などの特性が等しくなるようにあらかじめ調整されており、撮影する位置のみが異なる。基準カメラと参照カメラは平行ステレオカメラとなるように配置される。平行ステレオカメラとは、二台のカメラの光軸が互いに平行であり、かつ撮像面が同一平面上にあって水平方向に整列されたものを指す。カメラの配置は左右が逆であっても、水平方向ではなく垂直方向に整列して配置してもよい。以降では説明を簡単にするため、左側を基準カメラ、右側を参照カメラとして扱う。コンピュータはステレオマッチング装置と記憶装置とディスプレイを備える。ステレオマッチング装置はステレオ画像から対応点を探索する処理を行う。記憶装置は、カメラから取得したステレオ画像、およびステレオマッチング装置により作成する奥行き情報を記憶する。ディスプレイは奥行き情報に基づいて対象物を立体表示する。図2は、ステレオ計測の原理を示す図である。三次元空間中の点Pはステレオ画像に投影され、点P0および点P1をもたらす。基準カメラと参照カメラの位置が異なるため、それぞれの画像に投影された点の二次元座標は一致することなく、カメラから点Pまでの距離に応じて二次元座標のずれを生じる。このずれの大きさを視差と呼ぶ。計測前の点Pの三次元座標は未知であるため、その視差もまた未知である。ステレオカメラによる計測は、画像処理を用いてステレオ画像から視差を獲得することにより達せられる。基準画像上の点P0に対応する点P1を参照画像から精度良く求めるほど、より正確に点Pの三次元座標を計測することが可能となる。本発明において、視差と三次元座標を区別する必要がないとき、単に奥行き情報と呼ぶ。コンピュータから,ステレオカメラに二枚の画像の撮影を指示する命令がされる。ステレオカメラにより撮影された画像はデジタル化され,コンピュータへと転送される。ステレオ画像が入力されると、コンピュータは基準画像上の点P0に対応する点P1を参照画像から探索する。点Pの視差が確定すると、三角測量の原理によりカメラ中心O0とO1および画像中の点P0とP1から三次元空間中の点Pの三次元座標が直ちに求まる。以上の処理を基準画像上の各画素について繰り返すことにより、ステレオカメラによって撮影された対象物に関する奥行き情報を獲得する。コンピュータは、得られた奥行き情報に基づいてディスプレイに対象物を立体的に表示する。あるいは対象物の形状を分析する処理を行って分析結果をディスプレイに表示する。図3は、対応点の探索方法を示す図である。ステレオ相関法は、基準画像上の各点ごとに、対応する点を参照画像より探索する。平行ステレオカメラよって撮影すると、一方の画像上のある一点に対する他方の画像上での対応点は、上下位置が同一の走査線上に存在することが知られている。走査線とは画像上に水平に並んだ画素の列である。すなわち基準画像上にある一点に対して対応点を求めるためには、参照画像上のただ一列の走査線を探索すればよい。平行ステレオカメラカメラではない二台のカメラによって撮影が行われた場合でも、基準カメラと参照カメラの相対的な位置関係が既知であれば、平行化と呼ばれる画像変換によって同様の対応点探索が可能となる。対応点の探索は、基準画像上に設けた小領域と、参照画像上に設けた小領域とを比較する。この小領域をウィンドウと呼ぶ。基準画像上の注目した画素に対し、その近傍にウィンドウを設ける。参照画像の走査線上に並んでいる対応点候補それぞれの近傍にウィンドウを設ける。ウィンドウ内に写る像より、注目画素と各対応点候補との非類似性を数値化する。この非類似性の評価値をウィンドウコストと呼ぶ。ウィンドウコストには、輝度の差分の絶対値の総和などを用いる。図3のように、縦軸にウィンドウコストを、横軸に対応点候補の視差をとってグラフ化すると、類似性が最も高い候補においてピークを示す谷を描く曲線となる。ウィンドウコストが最小となる候補を対応点とする。図4は、本発明におけるステレオ画像処理装置のブロック図である。カメラなどの画像取得手段401a、bと、画像取得手段からの画像を入力する画像入力部402、取得した画像を記憶するステレオ画像記憶手段403、ステレオマッチング装置410とステレオマッチング装置で算出された視差データを記憶する視差記憶手段408と、視差データに基づいて対象物体を立体表示するディスプレイなどの立体表示手段409を有している。ステレオマッチング装置410は、2台以上のカメラで構成されるステレオカメラからの画像であるステレオ画像の対応点を検出し視差データを得るための装置であって、通常は、コンピュータの制御手段が処理を行う。制御手段は、例えば、CPUCentralProcessingUnit:中央演算処理装置やVDPVideoDisplayProcessorなどのプロセッサや、ASIC、ICメモリなどから構成される。ステレオマッチング装置410は、ウィンドウコスト計算処理部404、累積加算コスト計算処理部405、修正コスト計算処理部406、対応点判定部407を有している。ウィンドウコスト計算処理部404は、参照画像における対応点を探索するために、基準画像に含まれる各画素についてウィンドウコストの計算を行う。ステレオ画像入力部402よりステレオ画像が入力されると、ウィンドウコスト計算処理部404はウィンドウコストの計算を開始する。ウィンドウコストの計算は、基準画像に含まれる各画素について繰り返す。累積加算コスト計算処理部405は、基準画像の各画素について、ウィンドウコストの累積加算を行う。累積加算は、基準画素を中心として任意の方向に隣接する3以上の画素であればよく、例えばある画素を中心とする8方向において隣接する画素からコストを累積加算することによって行う。修正コスト計算処理部406は、累積加算コスト計算処理部405において計算した累積加算コストについて、奥行きの連続性が反映されるように、合計か、各方向の信頼性を算出することで修正コストの算出を行う。修正コストの計算方法の詳細については、後述する。対応点判定部407は、修正コスト計算処理部406で計算された修正コストに基づいて、カメラから対象物までの奥行きを推定して、対応点を判定し、対応点の視差を計算する。視差記憶手段408は、対応点判定部407において計算された視差データを記憶する。立体表示手段409は、計算された視差データをもとに、対象物の3次元表示を可能とする表示手段である。図5は、本発明における画像処理方法を示すフローチャートである。まず、画像取得手段401a、bは、ステレオ画像を撮影し、撮影されたステレオ画像は画像入力部402からステレオ画像記憶手段403へ記憶されるS501。記憶されたステレオ画像に基づいて、対応点探索のためにウィンドウコストを計算するS502。オペレータはあらかじめ、対応点の探索範囲の上限dmaxと下限dmin、奥行きの不連続にペナルティを課すためのしきい値T,奥行きの連続性が反映される視差の範囲m、奥行きの連続性を反映する方向とその数n、対応点の探索に用いるウィンドウの大きさwをコンピュータに入力しておく。ウィンドウの形状は正方形であり、wは一辺の長さを表す。なお、ウィンドウの形状は必ずしも正方形に制限されず、長方形などであってもよい。ウィンドウコストは、次のように計算される。まず画像の水平座標値をx、垂直座標値をyによって表す。基準画像上のある二次元座標の画素に注目し、図3に示すようにを中心としてウィンドウを設ける。対応点候補となる視差dの画素について、参照画像上の座標を中心にウィンドウを設ける。基準画像と参照画像のウィンドウの組より、ウィンドウコストCを以下の計算によって求める。Ilは基準画像の画素の輝度,Irは参照画像の画素の輝度を表す。このウィンドウコストをSADSumofAbsoluteDifferencesと呼ぶ。ウィンドウコストはウィンドウ間の非類似性を表す指標であればよく、SSDSumofSquaredDifferencesすなわち輝度の差の自乗和などを用いてもよい。次にコンピュータは基準画像の各画素について、ウィンドウコストの累積加算を繰り返すS503。基準画像の画素に注目したとき、視差dのコストの加算について説明する。注目画素の視差dにコストGkを求めるため、次の計算を行う。注目画素から見て方向kに隣接する画素の座標をとする。dmからdmまでの範囲に含まれる視差をd’で表す。隣接画素のコストGkと、奥行きの不連続に対するペナルティ関数tの値とを合計する。視差d’の範囲dmからdmの中から最小となる合計値を求め、前記処理によって求めたウィンドウコストCに加算して、コストGkとして記憶する。記憶したコストGkは、将来において同じ方向k上の画素の累積加算時に参照することが可能となる。したがって過去にコストを計算した画素が存在する方向は、記憶済みのコストを参照することによって、累積加算の計算量を削減できる。例として、注目画素を中心とする8方向からコストを累積加算する場合、図6のように順方向ラスタスキャンにおいて左方向から斜め右下方向にかけての計算を行う。同様に逆方向ラスタスキャンにおいて右方向から斜め左上方向にかけての計算を行うと、画像を二回走査するだけで累積加算の処理が完了する。ここで順方向ラスタスキャンとは画像の左上から右下へ向かう経路を意味し、走査線上の画素を左から右へ走査し、走査線を上から下へ辿る。一方、逆方向ラスタスキャンとは画像の右下から左上へ向かう経路を意味し、走査線上の画素を右から左へ走査し、走査線を下から上へ辿る。なおtは次の関数とする。奥行きが連続するという仮定が成り立つとき値が0となり、仮定から外れるとき値がTとなる。Tはペナルティの大きさを表すしきい値である。また、上記の計算方法における視差d’の範囲dmからdmは、m0でなければならない。この範囲内からGkの最小値を求めた場合、その値が描く曲線はピークが平坦なものになる。すなわちm0とすることによって、注目画素から画像上の距離が離れている画素ほど、そのウィンドウコストが修正コストに与える影響は小さくなる。これにより、注目画素から遠く離れた画素が、注目画素に対して奥行きを連続させるよう過剰に拘束をかけることを防止する。以上の処理を注目画素の全ての対応点候補について行い、注目画素の方向kに累積加算されたコストを計算する。この処理を1からnまで繰り返し、各方向のコストを累積加算して記録する。コンピュータは前記処理によって累積加算したコストより、n個の方向より奥行きの連続性が反映されるよう修正されたコストを計算するS504。n個の処理結果を合計するS505か、あるいはn個の処理結果を累積加算してS506、修正コストを求める。後者を用いることにより、奥行きの段差を保存する効果が得られる。合計による修正コストの計算方法及び累積加算による修正コストの計算方法については、後述する。次に、ステレオマッチング装置410の対応点判定部407は、修正コストの情報を基に、画像取得手段401a、bから対象物までの奥行きを推定して、視差データを作成するS507。対応点の探索範囲をdmindmaxで表すとき、画素についてとなる対応点の視差Dを計算する処理を行うS509。これを基準画像の各画素について繰り返す。対応点を判定する方法には、非特許文献2に記載されている動的計画法を用いてもよいS508。また、動的計画法の代わりに、非特許文献3に記載されている走査線最適化法を用いてもよい。動的計画法によって対応点を判定する場合は次のように行う。まず探索平面を作成する。これは基準画像と参照画像に共通する水平な走査線を二本の座標軸とする平面である。探索平面上の点は、基準画像および参照画像の走査線上にある二点の対応関係を表現する。ある二点をステレオカメラで撮影したとき、それらの点の位置関係は両方の画像で同じになること可能性が高い。つまり、一般的には一方の画像に左右の関係で写った二点は、他方の画像に左側の点と右側の点が入れ替わって写ることはない。したがって探索平面上の対応点は、座標値が基準参照ともに小さい方から大きい方へ単調に増加する点の列となる。これによって作られる点列の候補の中から、漸化計算を用いて各点のウィンドウコストの合計が最小となる点列を探索し、その点列に含まれる各点を対応点として採用する。走査線最適化法は、探索平面の座標軸を基準画像の水平な走査線および視差とし、基準画像の水平座標が単調増加する点列を候補とする。また連続する二点間の視差が異なる場合にはペナルティとなる値を加える。それ以外は動的計画法と同様の方法によって対応点を決定する。次に、ステレオマッチング装置410は、対応点の判定によって得られた結果を出力し、基準画像の各画素について視差データを記憶するS510。修正コストの算出方法について、まず合計による修正コスト算出方法S505について図7を参照しながら、説明する。本発明では、奥行きの連続性を注目画素に反映するために、注目画素を挟む水平な二方向だけでなく、複数の任意の方向を考慮して修正コストを算出する。図7に示すように注目画素を中心するn個の方向kに累積加算したコストを合計する。なお、8近傍の方向を考慮する場合、n=8であり、8方向となる。このように合計された値には注目画素のウィンドウコストがn倍されて含まれることになる。注目画素の奥行きに対する不要な重みづけを取り除くため、方向数nから1を減じた数に倍する注目画素のウィンドウコストCを減算し、注目画素の修正コストSとする。修正コストSは次の式によって表される。次に信頼性に基づいて方向ごとに優先順位を与え、奥行きの段差が保存されるよう修正コストを算出する方法S506について説明する。図8は累積加算による修正コストの算出方法を示す概要フローチャートである。各画素にn個の方向を順序付けるため、下記の計算によって各方向の信頼性を評価する。すなわち、注目画素の隣接画素を参照し、よりウィンドウコストの小さい画素が存在する方向をより信頼性が高いものとする。まず、注目画素の各方向の隣接画素について最小ウィンドウコストをそれぞれ探索するS801。次に、最小ウィンドウコストの集合を降順にソートすることで方向の順位付けを行いS802、方向間の累積加算を行うS803。図9は、S801における最小ウィンドウコストの探索方法を具体的に示すフローチャートである。注目画素に対して方向kで隣接する画素の、視差dに応じて変化するウィンドウコストCから、最小値Mkを求める。方向は注目画素に対して相対的なので、最小値の算出は画素ごとに方向の数だけ繰り返す必要はなく、画素ごとに1回ずつ求める。最初の画像座標から注目画素として設定しS901、方向kで隣接する画素のウィンドウコストの上限値をMとして設定するS902。ウィンドウコストの最小値を求めるために最小視差から最大視差までdの値を1ずつ増やして計算するS903。視差dの値に応じて変化するCがMより小さいか判定しS904、M>Cの場合はCをMとして設定するS905。このように判定していくことで注目画素の方向kにおけるウィンドウコストの最小値を求めるS906。次の画像座標をと設定しS907、同様に、また全ての画素についてスキャンを行ってウィンドウコストの最小値を算出していくS908。図10は、S802における方向の順位付け方法を具体的に示すフローチャートである。最初の画像座標から注目画素として設定しS1001、方向の番号と最小ウィンドウコストをn個分、列に格納していくS1002。第k方向の隣接画素の相対座標をと設定しS1003、列rのk番目の要素に第k方向の最小ウィンドウコストMを格納し、列qのk番目の要素に方向kの番号を格納しS1004、同様にn個分について繰り返すS1005。次に列rのウィンドウコストの降順に方向の列qをソートするS1006。次の画像座標をと設定しS1007、同様に、すべての画像座標についてスキャンを行って処理を繰り返すS1008。以上の処理によって、優先順位iを方向kに対応付ける関数qを得る。なお、iは数値が大きいほど信頼性が高いものとする。このときの優先順位iについて次の関係が成り立つ。図11は、S803における方向間の累積加算方法を具体的に示すフローチャートである。最初の画像座標から注目画素として設定しS1101、優先順位が最下位の方向の累積加算コストを修正コスト計算の初期値として設定するS1102。図12は、最下位の方向による初期値の設定方法のフローを示している。まず、qより得られる最下位の方向の番号を方向jに設定するS1201。次に、dを最小視差から最大視差まで1ずつ増やしS1202、j方向の累積加算コストGjを修正コストSの初期値としS1203、すべての視差について繰り返すS1204。次に残りの方向について累積加算を行っていくS1103。図13は、残りの方向による累積加算の算出方法を示すフローチャートである。優先順位の変数iを2から最上位まで順に1ずつ増やすことで順次、累積加算を行っていくS1301。すなわち、優先順位を下からi番目とした場合に、qより得られる第i位の方向の番号を方向jに設定するS1302。最小視差から最大視差まで1ずつ増やして累積加算コストを加算していくS1303。累積加算コストの加算と最小値の判定処理を行いS1304、全ての視差について繰り返すS1305。以上の処理によって求めた第i位までの結果を最小視差から最大視差まで1ずつ増やしてS1306、修正コストSに代入しS1307、すべての視差について繰り返すS1308。同様に、全ての順位の方向について繰り返すS1309。加算と最小値の判定処理S1304について、図14により説明する。修正コストの上限値をBと設定するS1401。すでに計算された下位の方向の計算結果のうち、視差dとの差が奥行きの連続性が反映される範囲mに含まれる視差d’についてS1402、Bが修正コストSにペナルティ関数tを加算した値よりも大きいか判定する。Bの値よりも大きい場合はStをBに代入しS1404、そうでない場合はBを変えない。同様に、範囲内の全ての視差d’について繰り返すS1405。方向jの累積加算コストに求めた最小値を積算し、S’に代入するS1406。図11に戻り、このようにしてすべての方向における累積加算を行った後、注目画素のウィンドウコストを最小視差から最大視差まで全ての視差の値において累積加算した修正コストから減算する処理を行うS1104。つまり、S-Cを修正コストSとする処理を繰り返すS1105、S1106。そして次の画像座標へと移り、すべての画素について累積加算により修正コストを得る。このように、各方向について累積加算したコストを、さらに方向間で累積加算することによって段差を保存する修正コストを得る。注目画素から離れた画素のウィンドウコストは注目画素の修正コストに与える影響が小さくなる。累積加算の方法を各方向の結果にも適用し、信頼性の低い方向から高い方向へ処理を進めることによって、確からしい方向の結果ほどより強く修正コストに反映させる。累積加算によって求める場合の、n個の方向に基づく修正コストSは次の式によって表される。次に、本発明の適用例を説明する。図15は、入力するステレオ画像の例を示している。この画像には、背景にテクスチャの弱い領域である壁面や類似するテクスチャが水平方向に続く領域がある。本発明の画像処理装置により、8方向において修正コストを算出してステレオマッチング処理を行い、三次元計測を行った結果が図16である。このように、本発明を適用することで、複数の面によって奥行きに段差が形成されているような画像においても正確にステレオマッチング処理を行うことができる。"