(57)【要約】【課題】デンス処理を用いても認識処理の性能への影響を抑制する画像処理装置、移動体、ロボット、機器制御方法およびプログラムを提供する。【解決手段】視差画像生成部３７０は、デンス処理によって導出された第１視差値によって、基準画像の各画素の輝度値を、その画素に対応する第１視差値で表した画像であるデンス視差画像を生成し、ブロックマッチング処理によって導出された第２視差値によって、基準画像の各画素の輝度を、その画素に対応する第２視差値で表した画像であるエッジ視差画像を生成し、認識処理部４１０は、デンス視差画像に基づいて、テクスチャの弱い部分を認識する路面認識処理等を実行し、エッジ視差画像に基づいて、人物、標識、車両、その他の障害物を認識する物体認識処理等を実行する。【選択図】図１０
2015158749.tif 000002
【特許請求の範囲】
【請求項１】
第１撮像手段が被写体を撮像することにより得られた基準画像、および第２撮像手段が前記被写体を撮像することにより得られた比較画像を取得する取得手段と、
前記基準画像および前記比較画像に基づいてデンス処理を実行し第１視差値を導出するデンス処理手段と、
前記基準画像および前記比較画像に基づいてブロックマッチング処理を実行し第２視差値を導出するマッチング処理手段と、
前記第１視差値に基づく第１視差画像、および前記第２視差値に基づく第２視差画像を生成する生成手段と、
を備えた画像処理装置。
【請求項２】
前記第１視差画像を用いて第１被写体に対する認識処理を実行し、前記第２視差画像を用いて前記第１被写体よりも状態の変化が大きい第２被写体に対する認識処理を実行する認識処理手段をさらに備えた請求項１に記載の画像処理装置。
【請求項３】
前記デンス処理手段は、
前記基準画像における第１基準領域の輝度値と、前記第１基準領域に基づく前記比較画像におけるエピポーラ線上で、前記第１基準領域の位置に相当する領域から、画素単位のシフト量でシフトすることにより特定される、前記第１基準領域に対応する前記比較画像の対応領域の候補となる複数の第１候補領域の輝度値と、に基づいて前記複数の第１候補領域それぞれの第１コスト値を算出する第１算出手段と、
前記第１基準領域の周辺の第２基準領域についての前記比較画像における第１コスト値を、前記第１候補領域の第１コスト値に集約させて、前記複数の第１候補領域それぞれの合成コスト値を算出する合成手段と、
前記比較画像における前記複数の第１候補領域の前記合成コスト値のうち第１極値に対応する前記シフト量に基づいて、前記第１視差値を導出する第１導出手段と、
を備えた請求項１または２に記載の画像処理装置。
【請求項４】
前記マッチング処理手段は、
前記基準画像における第３基準領域の輝度値と、前記第３基準領域に基づく前記比較画像におけるエピポーラ線上で、前記第３基準領域の位置に相当する領域から、画素単位のシフト量でシフトすることにより特定される、前記第３基準領域に対応する前記比較画像の対応領域の候補となる複数の第２候補領域の輝度値と、に基づいて前記複数の第２候補領域それぞれの第２コスト値を算出する第２算出手段と、
前記比較画像における前記複数の第２候補領域の前記第２コスト値のうち第２極値に対応する前記シフト量に基づいて、前記第２視差値を導出する第２導出手段と、
を備えた請求項１〜３のいずれか一項に記載の画像処理装置。
【請求項５】
前記デンス処理手段が前記デンス処理を実行せず、かつ前記マッチング処理手段が前記ブロックマッチング処理を実行する期間と、前記デンス処理手段が前記デンス処理を実行し、かつ前記マッチング処理手段が前記ブロックマッチング処理を実行する期間とが、交互に繰り返される請求項１〜４のいずれか一項に記載の画像処理装置。
【請求項６】
前記デンス処理手段が前記デンス処理を実行せず、かつ前記マッチング処理手段が前記ブロックマッチング処理を実行する期間と、前記デンス処理手段が前記デンス処理を実行し、かつ前記マッチング処理手段が前記ブロックマッチング処理を実行しない期間とが、交互に繰り返される請求項１〜４のいずれか一項に記載の画像処理装置。
【請求項７】
前記第１算出手段は、前記基準画像の所定位置から下側部分における前記第１基準領域の輝度値と、前記エピポーラ線上で、前記第１基準領域の位置に相当する領域から、画素単位のシフト量でシフトすることにより特定される、前記複数の第１候補領域の輝度値と、に基づいて前記複数の第１候補領域それぞれの第１コスト値を算出し、
前記合成手段は、前記基準画像の前記所定位置から下側部分における前記第１基準領域の周辺の第２基準領域についての前記比較画像における第１コスト値を、前記第１候補領域の第１コスト値に集約させて、前記複数の第１候補領域それぞれの前記合成コスト値を算出し、
前記第１導出手段は、前記基準画像の前記所定位置から下側部分に対応して前記第１視差値を導出し、
前記生成手段は、前記基準画像の前記所定位置から下側部分に対応した前記第１視差値に基づく視差画像を生成する請求項３に記載の画像処理装置。
【請求項８】
前記合成手段は、前記第１基準領域の複数の特定方向で隣接する前記第２基準領域についての前記比較画像における第１コスト値を、前記第１候補領域の第１コスト値に集約させて、前記複数の第１候補領域それぞれの前記各特定方向の経路コスト値を算出し、前記各経路コスト値を合計することにより前記合成コスト値を算出する請求項３に記載の画像処理装置。
【請求項９】
前記デンス処理手段および前記マッチング処理手段は、別々の集積回路によって構成された請求項１〜４のいずれか一項に記載の画像処理装置。
【請求項１０】
第１撮像手段が被写体を撮像することにより得られた基準画像、および第２撮像手段が前記被写体を撮像することにより得られた比較画像を取得する取得手段と、
前記基準画像および前記比較画像に基づいてデンス処理を実行し第１視差値を導出するデンス処理手段と、
前記基準画像および前記比較画像に基づいてブロックマッチング処理を実行し第２視差値を導出するマッチング処理手段と、
前記基準画像を構成する各画素が、エッジ部に相当する画素か非エッジ部に相当する画素かを検出し、その検出結果の情報である検出情報を出力する検出手段と、
前記検出情報が、該検出情報に対応する前記基準画像の画素が前記非エッジ部に相当する画素であることを示す場合、該画素に対応する前記第１視差値を出力し、該検出情報に対応する前記基準画像の画素が前記エッジ部に相当する画素であることを示す場合、該画素に対応する前記第２視差値を出力する選択手段と、
前記選択手段により出力された前記第１視差値および前記第２視差値によって視差画像を生成する生成手段と、
を備え、
前記デンス処理手段および前記マッチング処理手段は、別々の集積回路によって構成された画像処理装置。
【請求項１１】
第１撮像手段が被写体を撮像することにより得られた基準画像、および第２撮像手段が前記被写体を撮像することにより得られた比較画像を取得する取得手段と、
前記基準画像および前記比較画像に基づいてデンス処理を実行し第１視差値を導出するデンス処理手段と、
前記基準画像および前記比較画像に基づいてブロックマッチング処理を実行し第２視差値を導出するマッチング処理手段と、
前記基準画像を構成する各画素が、エッジ部に相当する画素か非エッジ部に相当する画素かを検出し、その検出結果の情報である検出情報を出力する検出手段と、
前記検出情報が、該検出情報に対応する前記基準画像の画素が前記非エッジ部に相当する画素であることを示す場合、該画素に対応する前記第１視差値を出力し、該検出情報に対応する前記基準画像の画素が前記エッジ部に相当する画素であることを示す場合、該画素に対応する前記第２視差値を出力する選択手段と、
前記選択手段により出力された前記第１視差値および前記第２視差値によって視差画像を生成する生成手段と、
を備え、
前記デンス処理手段および前記マッチング処理手段のうち、一方は集積回路によって構成され、他方はプログラムが実行されることにより実現される画像処理装置。
【請求項１２】
請求項１〜１１のいずれか一項に記載の画像処理装置を備えた移動体。
【請求項１３】
請求項１〜１１のいずれか一項に記載の画像処理装置を備えたロボット。
【請求項１４】
第１撮像手段が被写体を撮像することにより得られた基準画像、および第２撮像手段が前記被写体を撮像することにより得られた比較画像を取得する取得ステップと、
前記基準画像および前記比較画像に基づいてデンス処理を実行し第１視差値を導出するデンス処理ステップと、
前記基準画像および前記比較画像に基づいてブロックマッチング処理を実行し第２視差値を導出するマッチング処理ステップと、
前記第１視差値に基づく第１視差画像、および前記第２視差値に基づく第２視差画像を生成する生成ステップと、
を備えた機器制御方法。
【請求項１５】
第１撮像手段が被写体を撮像することにより得られた基準画像、および第２撮像手段が前記被写体を撮像することにより得られた比較画像を取得する取得手段と、
前記基準画像および前記比較画像に基づいてデンス処理を実行し第１視差値を導出するデンス処理手段と、
前記基準画像および前記比較画像に基づいてブロックマッチング処理を実行し第２視差値を導出するマッチング処理手段と、
前記第１視差値に基づく第１視差画像、および前記第２視差値に基づく第２視差画像を生成する生成手段と、
をコンピュータに実現させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、移動体、ロボット、機器制御方法およびプログラムに関する。
【背景技術】
【０００２】
近年、自動車間の距離、または自動車と障害物との間の距離等を測定することにより自動車の衝突防止を図る車載システムが一般的に利用されてきている。このような車載システムは、例えば、自動車の前方を監視し、歩行者、他車両または障害物等との距離を測定し、各種認識処理、または、他車両等に衝突する可能性がある場合には、ステアリングを制御して衝突を回避する操舵制御、もしくはブレーキを制御して衝突の回避をするブレーキ制御等を実行する。
【０００３】
そのような距離を測定する方法として、ステレオカメラを用い、三角測量の原理を用いたステレオマッチング処理が用いられている。ステレオマッチング処理とは、ステレオカメラの２つのカメラのうち、一方のカメラで撮像された基準画像と、他方のカメラで撮像された比較画像との間で対応する画素をマッチングすることにより視差を求め、視差からステレオカメラと、画像に含まれる物体との距離を算出する処理である。
【０００４】
上述のようなステレオマッチング処理として、２つのカメラにより撮像された一対の画像のある所定領域（ブロック）の相関値（評価値）を計算し、最も相関が高い所定領域の位置が特定できた際にその所定領域における画素間のシフト量を視差として算出するブロックマッチング処理がある。このようなブロックマッチング処理を用いた技術として、ブロックマッチング処理の際に画像のエッジ情報を利用したテクスチャ特性値を用いることによって、処理の高速化を実現する技術が提案されている（特許文献１参照）。
【０００５】
しかし、ブロックマッチング処理は比較的、高速かつ高精度に視差の演算が可能であるが、画像においてエッジ部分ではないテクスチャが弱い部分では、画像としての特徴を抽出することが困難であり、精度の高い視差を得ることができない場合がある。これに対し、ブロックマッチングのように、局所的な情報ではなく、画像全体の評価値を加味して視差値を求め、路面等のようにテクスチャの弱い部分においても精度よく視差を算出することができるデンスアルゴリズムであるＳＧＭ（Ｓｅｍｉ−Ｇｌｏｂａｌ  Ｍａｔｃｈｉｎｇ）法を用いた処理が提案されている（非特許文献１参照）。
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、ＳＧＭ法等のデンスアルゴリズムを用いた処理（以下、デンス処理という）は、演算量がブロックマッチング処理よりも多く、処理工程が膨大でハードウェア等のリソースを多く必要とし、処理時間も多くかかる。したがって、リアルタイムに視差値を求めることが困難であり、認識処理の性能へ影響を与える可能性があるという問題点があった。
【０００７】
本発明は、上記に鑑みてなされたものであって、デンス処理を用いても認識処理の性能への影響を抑制する画像処理装置、移動体、ロボット、機器制御方法およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
上述した課題を解決し、目的を達成するために、本発明は、第１撮像手段が被写体を撮像することにより得られた基準画像、および第２撮像手段が前記被写体を撮像することにより得られた比較画像を取得する取得手段と、前記基準画像および前記比較画像に基づいてデンス処理を実行し第１視差値を導出するデンス処理手段と、前記基準画像および前記比較画像に基づいてブロックマッチング処理を実行し第２視差値を導出するマッチング処理手段と、前記第１視差値に基づく第１視差画像、および前記第２視差値に基づく第２視差画像を生成する生成手段と、を備えたことを特徴とする。
【発明の効果】
【０００９】
本発明によれば、デンス処理を用いても認識処理の性能への影響を抑制することができる。
【図面の簡単な説明】
【００１０】
【図１】図１は、撮像装置から物体物までの距離を導き出す原理を説明する図である。
【図２】図２は、基準画像、デンス視差画像およびエッジ視差画像を示す概念図である。
【図３】図３は、基準画像における基準画素に対応する比較画像における対応画素を求める場合の説明図である。
【図４】図４は、シフト量とコスト値との関係を示すグラフである。
【図５】図５は、合成コストを導出するための概念図である。
【図６】図６は、シフト量と合成コスト値との関係を示すグラフである。
【図７】図７は、第１の実施の形態に係る機器制御システムを車両に搭載した例を示す図である。
【図８】図８は、第１の実施の形態に係る視差値導出装置の外観の一例を示す図である。
【図９】図９は、第１の実施の形態に係る視差値導出装置のハードウェア構成の一例を示す図である。
【図１０】図１０は、第１の実施の形態に係る視差値導出装置のブロック構成の一例を示す図である。
【図１１】図１１は、第１の実施の形態に係る視差値導出装置により撮像された画像の一例を示す図である。
【図１２】図１２は、第１の実施の形態において基準画像の画素に対するデンス処理のスキャン動作を示す図である。
【図１３】図１３は、第１の実施の形態におけるシフト量と合成コスト値との関係を示すグラフである。
【図１４】図１４は、パラボラフィッティングによるサブピクセル推定を説明する図である。
【図１５】図１５は、最小二乗法によるサブピクセル推定を説明する図である。
【図１６】図１６は、サブピクセル推定を用いたデンス視差画像を示す概念図である。
【図１７】図１７は、第１の実施の形態に係る視差値導出装置のデンス処理によるステレオマッチング処理の動作フローの一例を示す図である。
【図１８】図１８は、第１の実施の形態に係る視差値導出装置のブロックマッチング処理によるステレオマッチング処理の動作フローの一例を示す図である。
【図１９】図１９は、第１の実施の形態に係る機器制御システムの処理のタイミングチャートを示す図である。
【図２０】図２０は、第２の実施の形態に係る機器制御システムの処理のタイミングチャートを示す図である。
【図２１】図２１は、第３の実施の形態に係る機器制御システムの処理のタイミングチャートを示す図である。
【図２２】図２２は、第４の実施の形態において基準画像の画素に対するデンス処理のスキャン動作を示す図である。
【図２３】図２３は、第４の実施の形態に係る機器制御システムの処理のタイミングチャートを示す図である。
【図２４】図２４は、第５の実施の形態において基準画像の画素に対するデンス処理のスキャン動作を示す図である。
【図２５】図２５は、第６の実施の形態に係る視差値導出装置のブロック構成の一例を示す図である。
【図２６】図２６は、第７の実施の形態に係る視差値導出装置のブロック構成の一例を示す図である。
【図２７】図２７は、非エッジ部を検出する動作の一例を示す図である。
【発明を実施するための形態】
【００１１】
［ＳＧＭ法を用いた測距方法の概略］
まず、図１乃至図６を用いて、ＳＧＭ法を用いた測距方法の概略について説明する。
【００１２】
（測距の原理）
図１は、撮像装置から物体物までの距離を導き出す原理を説明する図である。図１を参照しながら、ステレオマッチング処理により、ステレオカメラから物体に対する視差を導出し、この視差を示す視差値によって、ステレオカメラから物体までの距離を測定する原理について説明する。なお、以下では、説明を簡略化するため、所定領域（ブロック）のマッチングではなく、画素単位のマッチングの例について説明する。
【００１３】
図１に示す撮像システム（ステレオカメラ）は、平行等位に配置された撮像装置５１０ａと撮像装置５１０ｂとを有するものとする。撮像装置５１０ａ、５１０ｂは、それぞれ、入射する光を屈折させて物体の像を固体撮像素子である画像センサ（図示せず）に結像させる撮像レンズ５１１ａ、５１１ｂを有する。撮像装置５１０ａおよび撮像装置５１０ｂによって撮像された各画像を、それぞれ比較画像Ｉａおよび基準画像Ｉｂとする。図１において、３次元空間内の物体Ｅ上の点Ｓは、比較画像Ｉａおよび基準画像Ｉｂそれぞれにおいて、撮像レンズ５１１ａと撮像レンズ５１１ｂとを結ぶ直線と平行な直線上の位置に写像される。ここで、各画像に写像された点Ｓを、比較画像Ｉａにおいて点Ｓａ（ｘ，ｙ）とし、基準画像Ｉｂにおいて点Ｓｂ（Ｘ，ｙ）とする。このとき、視差値ｄｐは、比較画像Ｉａ上の座標における点Ｓａ（ｘ，ｙ）と基準画像Ｉｂ上の座標における点Ｓｂ（Ｘ，ｙ）とを用いて、以下の（式１）のように表される。
【００１４】
ｄｐ＝Ｘ−ｘ                                                          （式１）
【００１５】
また、図１において、比較画像Ｉａにおける点Ｓａ（ｘ，ｙ）と撮像レンズ５１１ａから撮像面上におろした垂線の交点との距離をΔａとし、基準画像Ｉｂにおける点Ｓｂ（Ｘ，ｙ）と撮像レンズ５１１ｂから撮像面上におろした垂線の交点との距離をΔｂとすると、視差値ｄｐは、ｄｐ＝Δａ＋Δｂと表すこともできる。
【００１６】
次に、視差値ｄｐを用いることにより、撮像装置５１０ａ、５１０ｂと物体Ｅとの間の距離Ｚを導出する。ここで、距離Ｚは、撮像レンズ５１１ａの焦点位置と撮像レンズ５１１ｂの焦点位置とを結ぶ直線から物体Ｅ上の点Ｓまでの距離である。図１に示すように、撮像レンズ５１１ａおよび撮像レンズ５１１ｂの焦点距離ｆ、撮像レンズ５１１ａと撮像レンズ５１１ｂとの間の長さである基線長Ｂ、および視差値ｄｐを用いて、下記の（式２）により、距離Ｚを算出することができる。
【００１７】
Ｚ＝（Ｂ×ｆ）／ｄｐ                                                  （式２）
【００１８】
この（式２）により、視差値ｄｐが大きいほど距離Ｚは小さく、視差値ｄｐが小さいほど距離Ｚは大きくなることが分かる。
【００１９】
（ＳＧＭ法）
次に、図２乃至図６を用いて、ＳＧＭ法を用いた測距方法について説明する。
【００２０】
図２は、基準画像、デンス視差画像およびエッジ視差画像を示す概念図である。このうち、図２（ａ）は、基準画像を示し、図２（ｂ）は、図２（ａ）に示す基準画像に対するデンス視差画像を示し、図２（ｃ）は、図２（ａ）に示す基準画像に対するエッジ視差画像を示す概念図である。ここで、基準画像は、図１に示す基準画像Ｉｂに相当し、撮像された被写体が輝度値によって表された画像である。また、デンス視差画像とは、基準画像の各画素を、ＳＧＭ法によって導出された基準画像における各画素に対応する視差値で表した画像を示すものとする。そして、エッジ視差画像は、基準画像の各画素を、エッジ検出法によって導出された基準画像における各画素に対応する視差値で表した画像を示すものとする。ただし、エッジ検出法によって導出できる視差値は、後述するように、基準画像におけるエッジ部のような比較的テクスチャの強い部分であり、テクスチャの弱い部分のように視差値を導出できない場合は、例えば視差値を「０」として画像を構成する。
【００２１】
ＳＧＭ法は、画像におけるテクスチャが弱い部分に対しても適切に視差値を導出するための方法であり、図２（ａ）に示す基準画像に基づいて、図２（ｂ）に示すデンス視差画像を導出する方法である。なお、エッジ検出法は、図２（ａ）に示す基準画像に基づいて、図２（ｃ）に示すエッジ視差画像を導出する方法である。ＳＧＭ法によれば、図２（ｂ）および図２（ｃ）における破線の楕円内を比べると分かるように、デンス視差画像は、エッジ視差画像に比べてテクスチャが弱い道路等においても詳細な視差値に基づく距離を表すことができるため、より詳細な測距を行うことができる。
【００２２】
ＳＧＭ法は、基準画像に対する比較画像上のコスト値を算出して直ちに視差値を導出せず、コスト値を算出後、さらに、合成コスト値を算出することで視差値を導出する方法である。そして、ＳＧＭ法は、最終的に、基準画像におけるほぼ全ての画素に対応する視差値で表された視差画像（ここでは、デンス視差画像）を導出する。
【００２３】
なお、エッジ検出法の場合は、コスト値を算出する点はＳＧＭ法と同じであるが、ＳＧＭ法のように、合成コスト値を算出せずに、エッジ部のような比較的テクスチャの強い部分の視差値のみを算出する。
【００２４】
＜コスト値の算出＞
図３は、基準画像における基準画素に対応する比較画像における対応画素を求める場合の説明図である。図４は、シフト量とコスト値との関係を示すグラフである。図３および図４を参照しながら、コスト値Ｃ（ｐ，ｄ）の算出方法について説明する。図３のうち、図３（ａ）は、基準画像における基準画素を示す概念図を示し、図３（ｂ）は、図３（ａ）に示す基準画素に対応する比較画像における対応画素の候補となる候補画素を順次シフトしながら（ずらしながら）、候補画素のコスト値を算出する際の概念図である。ここで、対応画素とは、基準画像における基準画素に最も類似する比較画像における画素を示す。また、コスト値とは、基準画像における基準画素に対する、比較画像における各候補画素の非類似度を表す評価値である。すなわち、以下に示すコスト値（および合成コスト値）は、値が小さいほど比較画像における候補画素が基準画素と類似していることを示す。
【００２５】
図３（ａ）に示すように、基準画像Ｉｂにおける所定の基準画素ｐ（ｘ，ｙ）、および、基準画素ｐ（ｘ，ｙ）に対する比較画像Ｉａにおけるエピポーラ線ＥＬ上の対応画素の候補である候補画素ｑ（ｘ＋ｄ，ｙ）の各輝度値に基づいて、基準画素ｐ（ｘ，ｙ）に対する対応画素の候補画素ｑ（ｘ＋ｄ，ｙ）のコスト値Ｃ（ｐ，ｄ）が算出される。ｄは、基準画素ｐと候補画素ｑとのシフト量（ずれ量）であり、シフト量ｄは、画素単位でシフトされる。すなわち、図３では、候補画素ｑ（ｘ＋ｄ，ｙ）を予め指定された範囲（例えば、０＜ｄ＜２５）において順次一画素分シフトしながら、候補画素ｑ（ｘ＋ｄ，ｙ）と基準画素ｐ（ｘ，ｙ）との輝度値の非類似度であるコスト値Ｃ（ｐ，ｄ）が算出される。
【００２６】
なお、上述のように、撮像装置５１０ａ、５１０ｂは、それぞれ平行等位に配置されるため、比較画像Ｉａおよび基準画像Ｉｂも、それぞれ平行等位の関係にある。したがって、基準画像Ｉｂにおける基準画素ｐに対応する比較画像Ｉａにおける対応画素は、図３に示すエピポーラ線ＥＬ上に存在することになり、比較画像Ｉａにおける対応画素を求めるためには、比較画像Ｉａのエピポーラ線ＥＬ上の画素を探索すればよい。
【００２７】
このようにして算出されたコスト値Ｃ（ｐ，ｄ）は、画素単位のシフト量ｄとの関係で、図４に示すグラフにより表される。図４の例では、コスト値Ｃは、シフト量ｄ＝５、１２、１９の場合が「０」となるため、最小値を求めることができない。例えば、画像におけるテクスチャが弱い部分がある場合には、このようにコスト値Ｃの最小値を求めることは困難になる。
【００２８】
＜合成コスト値の算出＞
図５は、合成コストを導出するための概念図である。図６は、シフト量と合成コスト値との関係を示すグラフである。図５および図６を参照しながら、合成コスト値Ｌｓ（ｐ，ｄ）の算出方法について説明する。
【００２９】
合成コスト値の算出は、ＳＧＭ法に特有のものであり、コスト値Ｃ（ｐ，ｄ）の算出だけでなく、基準画素ｐ（ｘ，ｙ）の周辺の画素を基準画素とした場合のコスト値を、基準画素ｐ（ｘ，ｙ）におけるコスト値Ｃ（ｐ，ｄ）に集約させて、合成コスト値Ｌｓ（ｐ，ｄ）を算出するものである。合成コスト値Ｌｓ（ｐ，ｄ）を算出するためには、まず、経路コスト値Ｌｒ（ｐ，ｄ）を算出する。経路コスト値Ｌｒ（ｐ，ｄ）は、下記の（式３）によって算出する。
【００３０】
Ｌｒ（ｐ，ｄ）＝Ｃ（ｐ，ｄ）＋ｍｉｎ（Ｌｒ（ｐ−ｒ，ｋ）＋Ｐ（ｄ，ｋ））
（式３）
（Ｐ＝０（ｄ＝ｋの場合）、
Ｐ＝Ｐ１（｜ｄ−ｋ｜＝１の場合）、
Ｐ＝Ｐ２（＞Ｐ１）（｜ｄ−ｋ｜＞１の場合））
【００３１】
（式３）に示すように経路コスト値Ｌｒは、再帰的に求められる。ここで、ｒは、集約方向の方向ベクトルを示し、ｘ方向およびｙ方向の２成分を有する。ｍｉｎ（）は、最小値を求める関数である。Ｌｒ（ｐ−ｒ，ｋ）は、基準画素ｐの座標からｒ方向に１画素シフトした座標の画素について、シフト量を変化させた場合（この場合のシフト量をｋとしている）のそれぞれの経路コスト値Ｌｒを示す。そして、経路コスト値Ｌｒ（ｐ−ｒ，ｋ）のうち、経路コスト値Ｌｒ（ｐ，ｄ）のシフト量であるｄと、シフト量ｋとの間の関係に基づいて、下記の（１）〜（３）のように値Ｐ（ｄ，ｋ）を求め、Ｌｒ（ｐ−ｒ，ｋ）＋Ｐ（ｄ，ｋ）を算出している。
【００３２】
（１）ｄ＝ｋの場合、Ｐ＝０とする。すなわち、Ｌｒ（ｐ−ｒ，ｋ）＋Ｐ（ｄ，ｋ）＝Ｌｒ（ｐ−ｒ，ｋ）となる。
（２）｜ｄ−ｋ｜＝１の場合、Ｐ＝Ｐ１とする。すなわち、Ｌｒ（ｐ−ｒ，ｋ）＋Ｐ（ｄ，ｋ）＝Ｌｒ（ｐ−ｒ，ｋ）＋Ｐ１となる。
（３）｜ｄ−ｋ｜＞１の場合、Ｐ＝Ｐ２（＞Ｐ１）とする。すなわち、Ｌｒ（ｐ−ｒ，ｋ）＋Ｐ（ｄ，ｋ）＝Ｌｒ（ｐ−ｒ，ｋ）＋Ｐ２となる。
【００３３】
そして、ｍｉｎ（Ｌｒ（ｐ−ｒ，ｋ）＋Ｐ（ｄ，ｋ））は、上述の（１）〜（３）で算出したＬｒ（ｐ−ｒ，ｋ）＋Ｐ（ｄ，ｋ）のうち最小の値を抽出した値となる。すなわち、比較画像Ｉａにおける基準画素ｐの座標の位置にある画素からｒ方向において隣接する画素（ｐ−ｒ）からシフト量ｄだけシフトした画素から離れた場合に、値Ｐ１、または値Ｐ１よりも大きい値Ｐ２を加算することにより、比較画像Ｉａにおける基準画素ｐの座標から離れた画素の経路コスト値Ｌｒの影響を受け過ぎないようにしている。また、値Ｐ１および値Ｐ２は、予め実験により定められた固定パラメータであり、経路上で隣接する基準画素の視差値が連続になりやすいようなパラメータになっている。例えば、Ｐ１＝４８、Ｐ２＝９６である。このように、比較画像Ｉａにおいてｒ方向の各画素における経路コスト値Ｌｒを求めるために、最初は、基準画像ｐ（ｘ，ｙ）の座標からｒ方向の一番端の画素から経路コスト値Ｌｒを求め、ｒ方向に沿って経路コスト値Ｌｒが求められる。
【００３４】
そして、図５に示すように、８方向（ｒ０、ｒ４５、ｒ９０、ｒ１３５、ｒ１８０、ｒ２２５、ｒ２７０およびｒ３１５）の経路コスト値ＬｒであるＬｒ０、Ｌｒ４５、Ｌｒ９０、Ｌｒ１３５、Ｌｒ１８０、Ｌｒ２２５、Ｌｒ２７０およびＬｒ３１５が求められ、最終的に下記の（式４）に基づいて、合成コスト値Ｌｓ（ｐ，ｄ）が求められる。
【００３５】
Ｌｓ（ｐ，ｄ）＝ΣＬｒ                                                （式４）
【００３６】
以上のようにして、算出された合成コスト値Ｌｓ（ｐ，ｄ）は、シフト量ｄとの関係で、図６に示すグラフによって表すことができる。図６の例では、合成コスト値Ｌｓは、シフト量ｄ＝３の場合が最小値となるため、視差値ｄｐ＝３として導出される。なお、上述の説明においては、ｒ方向の数を８個として説明しているが、これに限定されるものではない。例えば、８方向をさらに２つに分割して１６方向、または、３つに分割して２４方向等にしてもよい。あるいは、８方向のうちのいずれかの経路コスト値Ｌｒを求め、合成コスト値Ｌｓを算出するものとしてもよい。
【００３７】
以下に、図面を参照しながら、本発明に係る画像処理装置、移動体、ロボット、機器制御方法およびプログラムの実施の形態を詳細に説明する。ここでは、ステレオマッチング処理を行う視差値導出装置１が自動車に搭載される場合を例に説明する。また、以下の実施の形態によって本発明が限定されるものではなく、以下の実施の形態における構成要素には、当業者が容易に想到できるもの、実質的に同一のもの、およびいわゆる均等の範囲のものが含まれる。さらに、以下の実施の形態の要旨を逸脱しない範囲で構成要素の種々の省略、置換および変更を行うことができる。
【００３８】
［第１の実施の形態］
（視差値導出装置を備えた車両の概略構成）
図７は、第１の実施の形態に係る機器制御システムを車両に搭載した例を示す図である。図７を参照しながら、本実施の形態に係る機器制御システム５０を搭載した車両１００について説明する。図７のうち、図７（ａ）は、機器制御システム５０を搭載した車両１００の側面図であり、図７（ｂ）は、車両１００の正面図である。
【００３９】
図７に示すように、自動車である車両１００は、機器制御システム５０を備えている。機器制御システム５０は、居室空間である車室に設置された視差値導出装置１と、制御装置５と、ステアリングホイール６と、ブレーキペダル７と、を備えている。なお、機器制御システム５０および視差値導出装置１は、いずれも「画像処理装置」として機能するものとする。
【００４０】
視差値導出装置１は、車両１００の進行方向を撮像する撮像機能を有し、例えば、車両１００のフロントウィンドウ内側のバックミラー近傍に設置される。視差値導出装置１は、詳細は後述するが、本体２と、本体２に固定された撮像部１０ａ（第１撮像手段）と、撮像部１０ｂ（第２撮像手段）とを備えている。撮像部１０ａ、１０ｂは、車両１００の進行方向の被写体を撮像できるように本体２に固定されている。
【００４１】
制御装置５は、視差値導出装置１から受信した視差画像の画像データに基づいて求まる視差値導出装置１から被写体までの距離情報により、各種認識処理および各種車両制御を実行する。制御装置５は、認識処理の例として、状態の変化が大きい人物、標識、車両、その他の障害物（第２被写体）を認識する物体認識処理、または、道路の路面等のテクスチャの弱い等の状態の変化が小さい部分（第１被写体）を認識する路面認識処理等を実行する。制御装置５は、車両制御の例として、視差値導出装置１から受信した視差画像の画像データに基づいて、ステアリングホイール６を含むステアリング系統（制御対象）を制御して障害物を回避するステアリング制御、または、ブレーキペダル７（制御対象）を制御して車両１００を減速および停止させるブレーキ制御等を実行する。なお、状態の変化が大きい被写体とは、例えば、人物、標識および車両等のように、画像の中で位置の変動の度合いが大きい被写体、またはテクスチャの強い被写体等を示すものとする。
【００４２】
このような視差値導出装置１および制御装置５を含む機器制御システム５０のように、物体認識処理および路面認識処理等の認識処理、ならびにステアリング制御またはブレーキ制御等の車両制御が実行されることによって、車両１００の運転の安全性を向上することができる。
【００４３】
なお、上述のように、視差値導出装置１は、車両１００の前方を撮像するものとしたが、これに限定されるものではない。すなわち、視差値導出装置１は、車両１００の後方または側方を撮像するように設置されるものとしてもよい。この場合、視差値導出装置１は、車両１００の後方の後続車、または側方を並進する他の車両等の距離を検出することができる。そして、制御装置５は、車両１００の車線変更時または車線合流時等における危険を検知して、上述の車両制御を実行することができる。また、制御装置５は、車両１００の駐車時等におけるバック動作において、視差値導出装置１によって検出された車両１００の後方の障害物の視差画像に基づいて、衝突の危険があると判断した場合に、上述の車両制御を実行することができる。
【００４４】
（視差値導出装置の構成）
図８は、第１の実施の形態に係る視差値導出装置の外観の一例を示す図である。図８に示すように、視差値導出装置１は、上述のように、本体２と、本体２に固定された撮像部１０ａと、撮像部１０ｂとを備えている。撮像部１０ａ、１０ｂは、本体２に対して平行等位に配置された一対の円筒形状のカメラで構成されている。また、説明の便宜上、図８に示す撮像部１０ａを「左」のカメラと称し、撮像部１０ｂを「右」のカメラと称するものとする。
【００４５】
＜視差値導出装置のハードウェア構成＞
図９は、本実施の形態に係る視差値導出装置のハードウェア構成の一例を示す図である。図９を参照しながら、視差値導出装置１のハードウェア構成について説明する。
【００４６】
図９に示すように、視差値導出装置１は、本体２と、撮像部１０ａと、撮像部１０ｂと、信号変換部２０ａと、信号変換部２０ｂと、画像処理部３０と、を備えている。
【００４７】
本体２は、視差値導出装置１の筐体を構成するものであり、撮像部１０ａ、１０ｂを固定して支持し、信号変換部２０ａ、２０ｂおよび画像処理部３０を内蔵する。
【００４８】
撮像部１０ａは、前方の被写体を撮像してアナログ形式の画像データを生成する処理部である。撮像部１０ａは、撮像レンズ１１ａと、絞り１２ａと、画像センサ１３ａと、を備えている。
【００４９】
撮像レンズ１１ａは、入射する光を屈折させて物体の像を画像センサ１３ａに結像させるための光学素子である。絞り１２ａは、撮像レンズ１１ａを通過した光の一部を遮ることによって、画像センサ１３ａに結像される光の量を調整する部材である。画像センサ１３ａは、撮像レンズ１１ａに入射し、絞り１２ａを通過した光を電気的なアナログ形式の画像データに変換する固体撮像素子である。画像センサ１３ａは、例えば、ＣＣＤ（Ｃｈａｒｇｅ  Ｃｏｕｐｌｅｄ  Ｄｅｖｉｃｅｓ）またはＣＭＯＳ（Ｃｏｍｐｌｅｍｅｎｔａｒｙ  Ｍｅｔａｌ  Ｏｘｉｄｅ  Ｓｅｍｉｃｏｎｄｕｃｔｏｒ）によって実現される。
【００５０】
撮像部１０ｂは、前方の被写体を撮像してアナログ形式の画像データを生成する処理部である。撮像部１０ｂは、撮像レンズ１１ｂと、絞り１２ｂと、画像センサ１３ｂと、を備えている。撮像レンズ１１ｂ、絞り１２ｂおよび画像センサ１３ｂの機能は、それぞれ上述した撮像レンズ１１ａ、絞り１２ａおよび画像センサ１３ａの機能と同様である。また、撮像レンズ１１ａおよび撮像レンズ１１ｂは、それぞれのレンズ面が互いに同一平面内になるように設置されている。
【００５１】
信号変換部２０ａは、撮像部１０ａにより生成されたアナログ形式の画像データを、デジタル形式の画像データに変換する処理部である。信号変換部２０ａは、ＣＤＳ（Ｃｏｒｒｅｌａｔｅｄ  Ｄｏｕｂｌｅ  Ｓａｍｐｌｉｎｇ）２１ａと、ＡＧＣ（Ａｕｔｏ  Ｇａｉｎ  Ｃｏｎｔｒｏｌ）２２ａと、ＡＤＣ（Ａｎａｌｏｇ  Ｄｉｇｉｔａｌ  Ｃｏｎｖｅｒｔｅｒ）２３ａと、フレームメモリ２４ａと、を備えている。
【００５２】
ＣＤＳ２１ａは、画像センサ１３ａにより生成されたアナログ形式の画像データに対して、相関二重サンプリング、横方向の微分フィルタ、および縦方向の平滑フィルタ等によりノイズを除去する。ＡＧＣ２２ａは、ＣＤＳ２１ａによってノイズが除去されたアナログ形式の画像データの強度を制御する利得制御を行う。ＡＤＣ２３ａは、ＡＧＣ２２ａによって利得制御されたアナログ形式の画像データをデジタル形式の画像データに変換する。フレームメモリ２４ａは、ＡＤＣ２３ａによって変換された画像データを記憶する。
【００５３】
信号変換部２０ｂは、撮像部１０ｂにより生成されたアナログ形式の画像データを、デジタル形式の画像データに変換する処理部である。信号変換部２０ｂは、ＣＤＳ２１ｂと、ＡＧＣ２２ｂと、ＡＤＣ２３ｂと、フレームメモリ２４ｂと、を備えている。ＣＤＳ２１ｂ、ＡＧＣ２２ｂ、ＡＤＣ２３ｂおよびフレームメモリ２４ｂの機能は、それぞれ上述したＣＤＳ２１ａ、ＡＧＣ２２ａ、ＡＤＣ２３ａおよびフレームメモリ２４ａの機能と同様である。
【００５４】
画像処理部３０は、信号変換部２０ａおよび信号変換部２０ｂによって変換された画像データに対して画像処理を実行する装置である。画像処理部３０は、ＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）３１と、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）３２と、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）３３と、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）３４と、通信Ｉ／Ｆ（Ｉｎｔｅｒｆａｃｅ）３５と、ＣＡＮＣ（ＣＡＮ  Ｃｏｎｔｒｏｌｌｅｒ）３６と、バス３９と、を備えている。
【００５５】
ＦＰＧＡ３１は、集積回路であり、ここでは、画像データに基づく画像における視差値を導出する処理を行う。ＣＰＵ３２は、視差値導出装置１の各機能を制御する。ＲＯＭ３３は、ＣＰＵ３２が視差値導出装置１の各機能を制御するために実行する画像処理用プログラムを記憶している。ＲＡＭ３４は、ＣＰＵ３２のワークエリアとして使用される。通信Ｉ／Ｆ３５は、外部コントローラ等と通信するためのインターフェースであり、例えば、図９に示すような画像表示装置３が接続される。ＣＡＮＣ３６は、ＣＡＮ（Ｃｏｎｔｒｏｌｌｅｒ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）プロトコルに基づいて、他の制御装置（ＥＣＵ（Ｅｌｅｃｔｒｏｎｉｃ  Ｃｏｎｔｒｏｌ  Ｕｎｉｔ））等と通信を行い、例えば、図７に示すような制御装置５と接続される。なお、ＣＡＮＣ３６は、ＣＡＮプロトコルによる通信を行うことに限定されるものではなく、例えば、ＦｌｅｘＲａｙプロトコルによる通信を行うものとしてもよい。バス３９は、図９に示すように、ＦＰＧＡ３１、ＣＰＵ３２、ＲＯＭ３３、ＲＡＭ３４、通信Ｉ／Ｆ３５およびＣＡＮＣ３６を互いに電気的に接続するアドレスバスおよびデータバス等である。
【００５６】
なお、ＦＰＧＡ３１は、ＦＰＧＡであることに限定されるものではなく、例えば、ＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）もしくはＤＳＰ（Ｄｉｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｏｒ）によって構成、または、これらを組み合わせて構成されてもよい。
【００５７】
図９に示す画像表示装置３は、液晶ディスプレイ、有機ＥＬ（Ｅｌｅｃｔｒｏ−Ｌｕｍｉｎｅｓｃｅｎｃｅ）ディスプレイ、またはＨＵＤ（Ｈｅａｄ  Ｕｐ  Ｄｉｓｐｌａｙ）等の表示装置である。画像表示装置３は、信号変換部２０ａ、２０ｂにより変換された画像データに基づく画像、または、ＦＰＧＡ３１により導出された視差値で表された視差画像等を表示する。視差画像を表示する方法としては、例えば、視差画像上のそれぞれの視差値（またはそれに基づく距離情報）に応じて異なる色で表示する方法等がある。
【００５８】
＜視差値導出装置のブロック構成および各ブロックの動作＞
図１０は、第１の実施の形態に係る視差値導出装置のブロック構成の一例を示す図である。図１１は、第１の実施の形態に係る視差値導出装置により撮像された画像の一例を示す図である。図１２は、第１の実施の形態において基準画像の画素に対するデンス処理のスキャン動作を示す図である。図１３は、第１の実施の形態におけるシフト量と合成コスト値との関係を示すグラフである。図１４は、パラボラフィッティングによるサブピクセル推定を説明する図である。図１５は、最小二乗法によるサブピクセル推定を説明する図である。図１６は、サブピクセル推定を用いたデンス視差画像を示す概念図である。図１０乃至図１６を参照しながら、視差値導出装置１の要部のブロック構成および各ブロックの動作について説明する。
【００５９】
図１０に示すように、視差値導出装置１は、画像取得部１１０（取得手段）と、フィルタ部２１０と、補正部３１０と、第１記憶部３５０と、視差値演算部３００（デンス処理手段、マッチング処理手段）と、第２記憶部３６０と、視差画像生成部３７０（生成手段）と、を備えている。視差画像生成部３７０の出力側には、認識処理部４１０が接続されている。
【００６０】
画像取得部１１０は、左右２台のカメラにより前方の被写体を撮像して、それぞれアナログ形式の画像データを生成し、各画像データ基づく画像である２つの輝度画像を得る処理部である。画像取得部１１０により撮像された輝度画像の例を、図１１に示す。図１１は、２つの輝度画像のうち基準画像Ｉｂの例として示したものであり、図１１に示す基準画像Ｉｂには、例えば、人物の画像である画像部Ｉｍｇ１、車両の画像である画像部Ｉｍｇ２、および道路の路面の画像である画像部Ｉｍｇ３等を含む。画像取得部１１０は、図９に示す撮像部１０ａおよび撮像部１０ｂによって実現される。
【００６１】
フィルタ部２１０は、画像取得部１１０により得られた２つの輝度画像の画像データに対して、ノイズを除去し、デジタル形式の画像データに変換して出力する。ここで、フィルタ部２１０が出力する２つの輝度画像の画像データ（以下、単に「輝度画像」と称する）のうち、画像取得部１１０の右のカメラ（撮像部１０ｂ）により撮像された基準画像Ｉｂの画像データ（以下、単に「基準画像Ｉｂ」という）とし、左のカメラ（撮像部１０ａ）により撮像された比較画像Ｉａの画像データ（以下、単に「比較画像Ｉａ」という）とする。すなわち、フィルタ部２１０は、画像取得部１１０から出力された２つの輝度画像に基づいて、基準画像Ｉｂおよび比較画像Ｉａを出力する。フィルタ部２１０は、図９に示す信号変換部２０ａ、２０ｂによって実現される。
【００６２】
補正部３１０は、フィルタ部２１０から入力した２つの画像（比較画像Ｉａ、基準画像Ｉｂ）に対して、撮像部１０ａと撮像部１０ｂとの間の光学的なずれ、および幾何学的なずれを補正し、補正した比較画像Ｉａおよび基準画像Ｉｂを出力する。補正部３１０は、図９に示すＦＰＧＡ３１によって実現される。
【００６３】
第１記憶部３５０は、補正部３１０から出力された比較画像Ｉａおよび基準画像Ｉｂを一時記憶する記憶部である。第１記憶部３５０は、図９に示すＲＡＭ３４によって実現される。なお、第１記憶部３５０は、図９において図示しないＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）等の外部記憶装置によって実現されるものとしてもよい。
【００６４】
視差値演算部３００は、比較画像Ｉａおよび基準画像Ｉｂに対して、ステレオマッチング処理であるデンス処理およびブロックマッチング処理を実行する処理部である。視差値演算部３００は、第１コスト算出部３２０（第１算出手段）と、コスト合成部３３０（合成手段）と、第１サブピクセル推定部３４０（第１導出手段）と、第２コスト算出部３２１（第２算出手段）と、第２サブピクセル推定部３４１（第２導出手段）と、を含んでいる。視差値演算部３００は、図９に示すＦＰＧＡ３１によって実現され、本実施の形態では、視差値演算部３００に含まれる上述の各処理部は、共通のハードウェア回路（集積回路）によって実現されているものとする。視差値演算部３００のうち、第１コスト算出部３２０、コスト合成部３３０および第１サブピクセル推定部３４０は、後述する動作により、比較画像Ｉａおよび基準画像Ｉｂに対してデンス処理を実行する。また、視差値演算部３００のうち、第２コスト算出部３２１および第２サブピクセル推定部３４１は、後述する動作により、比較画像Ｉａおよび基準画像Ｉｂに対してブロックマッチング処理を実行する。
【００６５】
第１コスト算出部３２０は、基準画像Ｉｂにおける基準画素ｐ（ｘ，ｙ）（第１基準領域）の輝度値、および、基準画素ｐ（ｘ，ｙ）に基づく比較画像Ｉａにおけるエピポーラ線上で、基準画素ｐ（ｘ，ｙ）の位置に相当する画素からシフト量ｄでシフトすることにより特定される、対応画素の候補である候補画素ｑ（ｘ＋ｄ，ｙ）（第１候補領域）の各輝度値に基づいて、各候補画素ｑ（ｘ＋ｄ，ｙ）の第１コスト値Ｃ１（ｐ，ｄ）を算出する。第１コスト算出部３２０が算出する第１コスト値Ｃ１としては、例えば、ＳＡＤ（Ｓｕｍ  ｏｆ  Ａｂｓｏｌｕｔｅ  Ｄｉｆｆｅｒｅｎｃｅｓ）、またはＳＳＤ（Ｓｕｍ  ｏｆ  Ｓｑｕａｒｅｄ  Ｄｉｆｆｅｒｅｎｃｅｓ）等を用いることができる。第１コスト算出部３２０は、上述のように、基準画像Ｉｂにおける基準画素ｐごとに、比較画像Ｉａにおける各候補画素ｑの第１コスト値Ｃ１を算出していく。この場合、第１コスト算出部３２０は、図１２に示すように、ラスタースキャンの要領で、基準画像Ｉｂにおいて基準画素ｐを左上の画素から水平方向に一画素ずつ移動させつつ、かつ垂直方向に移動させながら、各基準画素ｐに対応する比較画像Ｉａにおける第１コスト値Ｃ１を算出していく。そして、シフト量ｄと、第１コスト算出部３２０により算出された第１コスト値Ｃ１との関係を示すグラフの例が、上述した図４に示すグラフにおいてコスト値Ｃを第１コスト値Ｃ１に置き換えたものである。
【００６６】
コスト合成部３３０は、基準画像Ｉｂにおける基準画素ｐ（ｘ，ｙ）の周辺の画素を基準画素とした場合のその基準画素（第２基準領域）についての比較画像Ｉａにおける画素の第１コスト値Ｃ１を、第１コスト算出部３２０により算出された候補画素ｑ（ｘ＋ｄ，ｙ）の第１コスト値Ｃ１（ｐ，ｄ）に集約させて、候補画素ｑ（ｘ＋ｄ，ｙ）の合成コスト値Ｌｓ（ｐ，ｄ）を算出する。コスト合成部３３０は、画素単位にシフトするシフト量ｄに基づいて合成コスト値Ｌｓ（ｐ，ｄ）を算出する。コスト合成部３３０は、合成コスト値Ｌｓを算出するために、まず、上述の（式３）によって、所定のｒ方向の経路コスト値Ｌｒ（ｐ，ｄ）を算出する。次に、コスト合成部３３０は、図５および図１２に示したように、８方向の経路コスト値ＬｒであるＬｒ０、Ｌｒ４５、Ｌｒ９０、Ｌｒ１３５、Ｌｒ１８０、Ｌｒ２２５、Ｌｒ２７０およびＬｒ３１５を算出し、最終的に上述の（式４）に基づいて、合成コスト値Ｌｓ（ｐ，ｄ）を算出する。そして、画素単位のシフト量ｄと、コスト合成部３３０により算出された合成コスト値Ｌｓとの関係を示すグラフが、図１３に示すグラフである。図１３に示すように、合成コスト値Ｌｓは、シフト量ｄ＝３のとき最小値となる。
【００６７】
第１サブピクセル推定部３４０は、コスト合成部３３０により算出された、基準画像Ｉｂにおける基準画素についての比較画像Ｉａにおける画素の合成コスト値Ｌｓの最小値（第１極値）に対応するシフト量ｄ、およびそれに隣接するシフト量ｄにおける合成コスト値Ｌｓに基づいて、サブピクセル推定を実行する。図１３に示す合成コスト値Ｌｓのグラフは、上述のように、画素単位のシフト量ｄに対する合成コスト値Ｌｓのグラフである。図１３に示すグラフの合成コスト値Ｌｓの最小値は、画素単位のシフト量ｄ＝３における合成コスト値Ｌｓということになる。すなわち、図１３に示すような画素単位のシフト量ｄに対する合成コスト値Ｌｓのグラフにおいては、視差値として画素単位の値を導出することしかできないことになる。ここで、サブピクセル推定とは、視差値を画素単位の値ではなく、画素より小さい単位（以下、サブピクセル単位という）の視差値を第１視差値ｄｐ１として推定して導出するものである。
【００６８】
まず、図１４を参照しながら、第１サブピクセル推定部３４０がパラボラフィッティングによるサブピクセル推定を実行する場合について説明する。第１サブピクセル推定部３４０は、コスト合成部３３０によって算出された合成コスト値Ｌｓのグラフ（図１３）において、合成コスト値Ｌｓが最小となるシフト量ｄの値を求める。図１３の例では、シフト量ｄ＝３の場合が、合成コスト値Ｌｓが最小となる。次に、第１サブピクセル推定部３４０は、シフト量ｄ＝３に隣接するシフト量ｄを求める。具体的には、シフト量ｄ＝２，４である。次に、第１サブピクセル推定部３４０は、図１３に示すシフト量ｄと合成コスト値Ｌｓとのグラフにおいて、図１４に示すように、シフト量ｄ＝２，３，４である３点を通る下に凸の２次曲線を求める。そして、第１サブピクセル推定部３４０は、その２次曲線の極小値に対応するサブピクセル単位のシフト量ｄが第１視差値ｄｐ１であると推定する。
【００６９】
次に、図１５を参照しながら、第１サブピクセル推定部３４０が最小二乗法によるサブピクセル推定を実行する場合について説明する。第１サブピクセル推定部３４０は、コスト合成部３３０によって算出された合成コスト値Ｌｓのグラフ（図１３）において、合成コスト値Ｌｓが最小となるシフト量ｄの値を求める。図１３の例では、シフト量ｄ＝３の場合が、合成コスト値Ｌｓが最小となる。次に、第１サブピクセル推定部３４０は、シフト量ｄ＝３の近傍の４つのシフト量ｄを求める。具体的には、シフト量ｄ＝１，２，４，５である。次に、第１サブピクセル推定部３４０は、図１３に示すシフト量ｄと合成コスト値Ｌｓとのグラフにおいて、図１５に示すように、最小二乗法によってシフト量ｄ＝１〜５である５点の近傍を通る下に凸の２次曲線を求める。そして、第１サブピクセル推定部３４０は、その２次曲線の極小値に対応するサブピクセル単位のシフト量ｄが第１視差値ｄｐ１であると推定する。
【００７０】
第１サブピクセル推定部３４０は、図１４に示すパラボラフィッティングによるサブピクセル推定、または、図１５に示す最小二乗法によるサブピクセル推定のいずれかによって、第１視差値ｄｐ１を推定して導出する。
【００７１】
以上のように、コスト合成部３３０によって合成コスト値Ｌｓが算出され、さらに、第１サブピクセル推定部３４０によって合成コスト値Ｌｓのグラフについてサブピクセル推定が実行されるものとしている。これによって、輝度画像にテクスチャが弱い部分がある場合においても、精度よく視差値を導出することができ、かつ、サブピクセル単位で視差値を推定するので密な視差値を導出することができる。
【００７２】
なお、サブピクセル推定は、上述のパラボラフィッティングによるもの、または、最小二乗法によるものに限定されるものではなく、その他の方法によるサブピクセル推定であってもよい。例えば、第１サブピクセル推定部３４０は、図１４に示す３点を用いて、２次曲線ではなく、３点を通る等角直線を求めて視差値を推定する等角直線フィッティングによりサブピクセル推定を実行するものとしてもよい。
【００７３】
また、最小二乗法によるサブピクセル推定において、図１５に示すグラフ上の５点を用いて２次曲線を求めるものとしたが、これに限定されるものではなく、異なる数の点を用いて２次曲線を求めるものとしてもよい。
【００７４】
また、第１サブピクセル推定部３４０によるサブピクセル推定によってサブピクセル単位の第１視差値ｄｐ１を算出することに限定されるものではなく、サブピクセル推定の実行はせずに、画素単位の第１視差値ｄｐ１を算出するものとしてもよい。この場合、第１サブピクセル推定部３４０は、コスト合成部３３０により算出された、基準画像Ｉｂにおける基準画素についての比較画像Ｉａにおける画素の合成コスト値Ｌｓの最小値に対応するシフト量ｄを第１視差値ｄｐ１とすればよい。
【００７５】
第２コスト算出部３２１は、基準画像Ｉｂにおける基準画素ｐ（ｘ，ｙ）を含む所定領域（ブロック）（第３基準領域）の輝度値、および、基準画素ｐ（ｘ，ｙ）に基づく比較画像Ｉａにおけるエピポーラ線上で、基準画素ｐ（ｘ，ｙ）の位置に相当する画素からシフト量ｄでシフトすることにより特定される、対応画素の候補である候補画素ｑ（ｘ＋ｄ，ｙ）を含むブロック（第２候補領域）の各輝度値に基づいて、候補画素ｑ（ｘ＋ｄ，ｙ）を含むブロックの第２コスト値Ｃ２（ｐ，ｄ）を算出する。第２コスト算出部３２１が算出する第２コスト値Ｃ２としては、例えば、ＳＡＤ（Ｓｕｍ  ｏｆ  Ａｂｓｏｌｕｔｅ  Ｄｉｆｆｅｒｅｎｃｅｓ）、またはＳＳＤ（Ｓｕｍ  ｏｆ  Ｓｑｕａｒｅｄ  Ｄｉｆｆｅｒｅｎｃｅｓ）等を用いることができる。第２コスト算出部３２１は、上述のように、基準画像Ｉｂにおける基準画素ｐを含むブロックごとに、比較画像Ｉａにおける各候補画素ｑを含むブロックの第２コスト値Ｃ２を算出していく。この場合、第２コスト算出部３２１は、第１コスト算出部３２０と同様に、図１２に示すように、ラスタースキャンの要領で、基準画像Ｉｂにおいて基準画素ｐを左上の画素から水平方向に一画素ずつ移動させつつ、かつ垂直方向に移動させながら、各基準画素ｐを含むブロックに対応する比較画像Ｉａにおける第２コスト値Ｃ２を算出していく。
【００７６】
そして、基準画像Ｉｂにおける基準画素ｐを含むブロックが、テクスチャの弱い部分であるとした場合、シフト量ｄと、第２コスト算出部３２１により算出された第２コスト値Ｃ２との関係を示すグラフは、例えば、上述した図４に示すグラフにおいてコスト値Ｃを第２コスト値Ｃ２に置き換えたようなグラフが得られる。この場合、図４に示すグラフにおいては、シフト量ｄ＝５、１２、１９において、第２コスト値Ｃ２の最小値として近似した値となっているため、第２コスト値Ｃ２の最小値を求めることによって、基準画素に対応する比較画像Ｉａにおける対応画素を求めることは困難である。しかし、基準画像Ｉｂにおける基準画素ｐを含むブロックが、エッジ部分を含む、すなわちテクスチャの強い部分であるとした場合、シフト量ｄと、第２コスト算出部３２１により算出された第２コスト値Ｃ２との関係を示すグラフは、例えば、上述した図１３に示すグラフにおいて合成コスト値Ｌｓを第２コスト値Ｃ２に置き換えたようなグラフが得られる。この場合、図１３に示すグラフにおいては、シフト量ｄ＝３の場合、第２コスト値Ｃ２が最小値であると認識することができる。
【００７７】
第２サブピクセル推定部３４１は、第２コスト算出部３２１により算出された、基準画像Ｉｂにおける基準画素を含むブロックについての比較画像Ｉａにおける画素のブロックの第２コスト値Ｃ２の最小値（第２極値）に対応するシフト量ｄ、およびそれに隣接するシフト量ｄにおける第２コスト値Ｃ２に基づいて、サブピクセル推定を実行する。図１３に示すグラフがシフト量ｄと第２コスト値Ｃ２との関係を示すグラフとした場合、上述のように、画素単位のシフト量ｄに対する第２コスト値Ｃ２のグラフということになる。この場合、グラフの第２コスト値Ｃ２の最小値は、画素単位のシフト量ｄ＝３における第２コスト値Ｃ２ということになる。すなわち、図１３に示すような画素単位のシフト量ｄに対する第２コスト値Ｃ２のグラフにおいては、視差値として画素単位の値を導出することしかできないことになる。ここで、第１サブピクセル推定部３４０の動作について上述したように、第２サブピクセル推定部３４１は、サブピクセル推定によって、視差値を画素単位の値ではなく、画素より小さいサブピクセル単位の視差値を第２視差値ｄｐ２として推定して導出する。第２サブピクセル推定部３４１は、第１サブピクセル推定部３４０の動作について上述したように、パラボラフィッティングまたは最小二乗法によるサブピクセル推定のいずれかによって、第２視差値ｄｐ２を推定して導出する。
【００７８】
以上のように、第２コスト算出部３２１によって第２コスト値Ｃ２が算出され、さらに、第２サブピクセル推定部３４１によって第２コスト値Ｃ２のグラフについてサブピクセル推定が実行されるものとしている。これによって、輝度画像にエッジ部分を含む、すなわちテクスチャの強い部分においては、精度よく視差値を導出することができ、かつ、サブピクセル単位で視差値を推定するので密な視差値を導出することができる。
【００７９】
また、第２サブピクセル推定部３４１によるサブピクセル推定によってサブピクセル単位の第２視差値ｄｐ２を算出することに限定されるものではなく、サブピクセル推定の実行はせずに、画素単位の第２視差値ｄｐ２を算出するものとしてもよい。この場合、第２サブピクセル推定部３４１は、第２コスト算出部３２１により算出された、基準画像Ｉｂにおける基準画素を含むブロックについての比較画像Ｉａの画素のブロックにおける第２コスト値Ｃ２の最小値に対応するシフト量ｄを第２視差値ｄｐ２とすればよい。
【００８０】
第２記憶部３６０は、第１サブピクセル推定部３４０によって導出された第１視差値ｄｐ１、および第２サブピクセル推定部３４１によって導出された第２視差値ｄｐ２を記憶する記憶部である。第２記憶部３６０は、図９に示すＲＡＭ３４によって実現される。なお、第２記憶部３６０は、図９において図示しないＨＤＤ等の外部記憶装置によって実現されるものとしてもよい。
【００８１】
視差画像生成部３７０は、第２記憶部３６０に記憶され、デンス処理によって導出された第１視差値ｄｐ１によって、基準画像Ｉｂの各画素の輝度値を、その画素に対応する第１視差値ｄｐ１で表した画像であるデンス視差画像Ｉｐ１（第１視差画像）を生成する。また、視差画像生成部３７０は、第２記憶部３６０に記憶され、ブロックマッチング処理によって導出された第２視差値ｄｐ２によって、基準画像Ｉｂの各画素の輝度を、その画素に対応する第２視差値ｄｐ２で表した画像であるエッジ視差画像Ｉｐ２（第２視差画像）を生成する。視差画像生成部３７０は、図９に示すＦＰＧＡ３１によって実現される。図１６のうち、図１６（ａ）は、比較画像Ｉａの一例を示し、図１６（ｂ）は、基準画像Ｉｂの一例を示し、図１６（ｃ）は、視差画像生成部３７０により生成されたデンス視差画像Ｉｐ１の模式図を示す。
【００８２】
認識処理部４１０は、視差画像生成部３７０により生成されたデンス視差画像Ｉｐ１に基づいて、認識処理として道路の路面等のテクスチャの弱い部分を認識する路面認識処理等を実行する。また、認識処理部４１０は、視差画像生成部３７０により生成されたエッジ視差画像Ｉｐ２に基づいて、認識処理として人物、標識、車両、その他の障害物を認識する物体認識処理等を実行する。認識処理部４１０は、図９に示す画像表示装置３、または、図７に示す制御装置５等によって実現される。なお、認識処理部４１０は、視差値導出装置１の外部の装置である画像表示装置３または制御装置５等において実現されることに限定されるものではない。すなわち、認識処理部４１０による認識処理は、視差値導出装置１で実行されるものとしてもよく、この場合、認識処理部４１０は、図９に示すＦＰＧＡ３１によって実現されるものとすればよい。
【００８３】
（視差値導出装置のデンス処理動作）
図１７は、第１の実施の形態に係る視差値導出装置のデンス処理によるステレオマッチング処理の動作フローの一例を示す図である。図１７を参照しながら、視差値導出装置１のデンス処理に基づく画像処理の動作の流れについて説明する。
【００８４】
＜ステップＳ１−１＞
視差値導出装置１の画像取得部１１０は、左のカメラ（撮像部１０ａ）により前方の被写体を撮像して、それぞれアナログ形式の画像データを生成し、その画像データに基づく画像である輝度画像を得る。そして、ステップＳ２−１へ進む。
【００８５】
＜ステップＳ１−２＞
視差値導出装置１の画像取得部１１０は、右のカメラ（撮像部１０ｂ）により前方の被写体を撮像して、それぞれアナログ形式の画像データを生成し、その画像データに基づく画像である輝度画像を得る。そして、ステップＳ２−２へ進む。
【００８６】
＜ステップＳ２−１＞
視差値導出装置１のフィルタ部２１０は、撮像部１０ａにより撮像されて得られたアナログ形式の画像データに対して、ノイズを除去し、デジタル形式の画像データに変換する。そして、ステップＳ３−１へ進む。
【００８７】
＜ステップＳ２−２＞
視差値導出装置１のフィルタ部２１０は、撮像部１０ｂにより撮像されて得られたアナログ形式の画像データに対して、ノイズを除去し、デジタル形式の画像データに変換する。そして、ステップＳ３−２へ進む。
【００８８】
＜ステップＳ３−１＞
フィルタ部２１０は、ステップＳ２−１において変換したデジタル形式の画像データに基づく画像をステレオマッチング処理における比較画像Ｉａとして出力する。そして、ステップＳ４へ進む。
【００８９】
＜ステップＳ３−２＞
フィルタ部２１０は、ステップＳ２−２において変換したデジタル形式の画像データに基づく画像をステレオマッチング処理における基準画像Ｉｂとして出力する。そして、ステップＳ４へ進む。
【００９０】
＜ステップＳ４＞
視差値導出装置１の補正部３１０は、フィルタ部２１０から入力した２つの画像（比較画像Ｉａ、基準画像Ｉｂ）に対して、撮像部１０ａと撮像部１０ｂと間の光学的なずれ、および幾何学的なずれを補正し、補正した比較画像Ｉａおよび基準画像Ｉｂを出力する。視差値導出装置１の第１記憶部３５０は、補正部３１０から出力された比較画像Ｉａおよび基準画像Ｉｂを一時記憶する。視差値導出装置１の第１コスト算出部３２０は、補正部３１０から出力された比較画像Ｉａおよび基準画像Ｉｂ、または、第１記憶部３５０に記憶された比較画像Ｉａおよび基準画像Ｉｂを入力する。第１コスト算出部３２０は、基準画像Ｉｂにおける基準画素ｐ（ｘ，ｙ）の輝度値、および、基準画素ｐ（ｘ，ｙ）に基づく比較画像Ｉａにおけるエピポーラ線上で、基準画素ｐ（ｘ，ｙ）の位置に相当する画素からシフト量ｄでシフトすることにより特定される、対応画素の候補である候補画素ｑ（ｘ＋ｄ，ｙ）の各輝度値に基づいて、各候補画素ｑ（ｘ＋ｄ，ｙ）の第１コスト値Ｃ１（ｐ，ｄ）を算出する。そして、ステップＳ５へ進む。
【００９１】
＜ステップＳ５＞
視差値導出装置１のコスト合成部３３０は、基準画像Ｉｂにおける基準画素ｐ（ｘ，ｙ）の周辺の画素を基準画素とした場合のその基準画素についての比較画像Ｉａにおける画素のコスト値Ｃを、第１コスト算出部３２０により算出された候補画素ｑ（ｘ＋ｄ，ｙ）のコスト値Ｃ（ｐ，ｄ）に集約させて、候補画素ｑ（ｘ＋ｄ，ｙ）の合成コスト値Ｌｓ（ｐ，ｄ）を算出する。コスト合成部３３０は、合成コスト値Ｌｓを算出するために、所定のｒ方向の経路コスト値Ｌｒ（ｐ，ｄ）のうち、Ｌｒ０、Ｌｒ４５およびＬｒ９０については、比較画像Ｉａおよび基準画像Ｉｂの全体（すなわち構成する画素値全体）が第１記憶部３５０に記憶されていなくても算出が可能である。すなわち、コスト合成部３３０は、補正部３１０から出力された比較画像Ｉａおよび基準画像Ｉｂを構成する画素値のうち、直接入力された画素値で第１コスト算出部３２０により算出された第１コスト値Ｃ１に基づいて、Ｌｒ０、Ｌｒ４５およびＬｒ９０を算出できる。一方、コスト合成部３３０は、合成コスト値Ｌｓを算出するために、所定のｒ方向の経路コスト値Ｌｒ（ｐ，ｄ）のうち、Ｌｒ１３５、Ｌｒ１８０、Ｌｒ２２５、Ｌｒ２７０およびＬｒ３１５については、比較画像Ｉａおよび基準画像Ｉｂの全体（すなわち構成する画素値全体）が第１記憶部３５０に記憶されていなければ算出ができない。すなわち、コスト合成部３３０は、補正部３１０から出力され、第１記憶部３５０に記憶された比較画像Ｉａおよび基準画像Ｉｂを構成する画素値で第１コスト算出部３２０により算出された第１コスト値Ｃ１に基づいて、Ｌｒ１３５、Ｌｒ１８０、Ｌｒ２２５、Ｌｒ２７０およびＬｒ３１５を算出する。そして、ステップＳ６へ進む。
【００９２】
＜ステップＳ６＞
視差値導出装置１の第１サブピクセル推定部３４０は、コスト合成部３３０により算出された、基準画像Ｉｂにおける基準画素についての比較画像Ｉａにおける画素の合成コスト値Ｌｓの最小値に対応するシフト量ｄ、およびそれに隣接するシフト量ｄにおける合成コスト値Ｌｓに基づいて、サブピクセル推定を実行する。第１サブピクセル推定部３４０は、サブピクセル推定によって求めた近似曲線（図１４および図１５においては下に凸の２次曲線）の極小値に対応するサブピクセル単位のシフト量ｄが第１視差値ｄｐ１であると推定する。そして、ステップＳ７へ進む。
【００９３】
＜ステップＳ７＞
視差値導出装置１の第２記憶部３６０は、第１サブピクセル推定部３４０によって導出された第１視差値ｄｐ１を記憶する。視差値導出装置１の視差画像生成部３７０は、第２記憶部３６０に記憶され、デンス処理によって導出された第１視差値ｄｐ１によって、基準画像Ｉｂの各画素の輝度値を、その画素に対応する第１視差値ｄｐ１で表した画像であるデンス視差画像Ｉｐ１を生成する。
【００９４】
その後、デンス視差画像Ｉｐ１の画像データは、通信Ｉ／Ｆ３５またはＣＡＮＣ３６を介して出力され、視差値導出装置１の外部の装置（例えば、画像表示装置３または制御装置５）である認識処理部４１０によって、デンス視差画像Ｉｐ１に基づいた路面認識処理等の認識処理が実行される。
【００９５】
（視差値導出装置のブロックマッチング処理動作）
図１８は、第１の実施の形態に係る視差値導出装置のブロックマッチング処理によるステレオマッチング処理の動作フローの一例を示す図である。図１８を参照しながら、視差値導出装置１のブロックマッチング処理に基づく画像処理の動作の流れについて説明する。
【００９６】
＜ステップＳ１１−１＞
視差値導出装置１の画像取得部１１０は、左のカメラ（撮像部１０ａ）により前方の被写体を撮像して、それぞれアナログ形式の画像データを生成し、その画像データに基づく画像である輝度画像を得る。そして、ステップＳ１２−１へ進む。
【００９７】
＜ステップＳ１１−２＞
視差値導出装置１の画像取得部１１０は、右のカメラ（撮像部１０ｂ）により前方の被写体を撮像して、それぞれアナログ形式の画像データを生成し、その画像データに基づく画像である輝度画像を得る。そして、ステップＳ１２−２へ進む。
【００９８】
＜ステップＳ１２−１＞
視差値導出装置１のフィルタ部２１０は、撮像部１０ａにより撮像されて得られたアナログ形式の画像データに対して、ノイズを除去し、デジタル形式の画像データに変換する。そして、ステップＳ１３−１へ進む。
【００９９】
＜ステップＳ１２−２＞
視差値導出装置１のフィルタ部２１０は、撮像部１０ｂにより撮像されて得られたアナログ形式の画像データに対して、ノイズを除去し、デジタル形式の画像データに変換する。そして、ステップＳ１３−２へ進む。
【０１００】
＜ステップＳ１３−１＞
フィルタ部２１０は、ステップＳ１２−１において変換したデジタル形式の画像データに基づく画像をステレオマッチング処理における比較画像Ｉａとして出力する。そして、ステップＳ１４へ進む。
【０１０１】
＜ステップＳ１３−２＞
フィルタ部２１０は、ステップＳ１２−２において変換したデジタル形式の画像データに基づく画像をステレオマッチング処理における基準画像Ｉｂとして出力する。そして、ステップＳ１４へ進む。
【０１０２】
＜ステップＳ１４＞
視差値導出装置１の補正部３１０は、フィルタ部２１０から入力した２つの画像（比較画像Ｉａ、基準画像Ｉｂ）に対して、撮像部１０ａと撮像部１０ｂと間の光学的なずれ、および幾何学的なずれを補正し、補正した比較画像Ｉａおよび基準画像Ｉｂを第２コスト算出部３２１に出力する。視差値導出装置１の第２コスト算出部３２１は、基準画像Ｉｂにおける基準画素ｐ（ｘ，ｙ）を含む所定領域（ブロック）の輝度値、および、基準画素ｐ（ｘ，ｙ）に基づく比較画像Ｉａにおけるエピポーラ線上で、基準画素ｐ（ｘ，ｙ）の位置に相当する画素からシフト量ｄでシフトすることにより特定される、対応画素の候補である候補画素ｑ（ｘ＋ｄ，ｙ）を含むブロックの各輝度値に基づいて、候補画素ｑ（ｘ＋ｄ，ｙ）を含むブロックの第２コスト値Ｃ２（ｐ，ｄ）を算出する。そして、ステップＳ１５へ進む。
【０１０３】
＜ステップＳ１５＞
視差値導出装置１の第２サブピクセル推定部３４１は、第２コスト算出部３２１により算出された、基準画像Ｉｂにおける基準画素を含むブロックについての比較画像Ｉａにおける画素のブロックの第２コスト値Ｃ２の最小値に対応するシフト量ｄ、およびそれに隣接するシフト量ｄにおける第２コスト値Ｃ２に基づいて、サブピクセル推定を実行する。第２サブピクセル推定部３４１は、サブピクセル推定によって求めた近似曲線（図１４および図１５においては下に凸の２次曲線）の極小値に対応するサブピクセル単位のシフト量ｄが第２視差値ｄｐ２であると推定する。そして、ステップＳ１６へ進む。
【０１０４】
＜ステップＳ１６＞
視差値導出装置１の第２記憶部３６０は、第２サブピクセル推定部３４１によって導出された第２視差値ｄｐ２を記憶する。視差値導出装置１の視差画像生成部３７０は、第２記憶部３６０に記憶され、ブロックマッチング処理によって導出された第２視差値ｄｐ２によって、基準画像Ｉｂの各画素の輝度を、その画素に対応する第２視差値ｄｐ２で表した画像であるエッジ視差画像Ｉｐ２を生成する。
【０１０５】
その後、エッジ視差画像Ｉｐ２の画像データは、通信Ｉ／Ｆ３５またはＣＡＮＣ３６を介して出力され、視差値導出装置１の外部の装置（例えば、画像表示装置３または制御装置５）である認識処理部４１０によって、エッジ視差画像Ｉｐ２に基づいた物体認識処理等の認識処理が実行される。
【０１０６】
（機器制御システムの処理の動作タイミング）
図１９は、第１の実施の形態に係る機器制御システムの処理のタイミングチャートを示す図である。図１９を参照しながら、本実施の形態に係る機器制御システム５０の処理の動作タイミングについて説明する。
【０１０７】
図１９に示すように、画像取得部１１０は、有効フレーム信号ＦＶがオン状態のとき、撮像部１０ａ、１０ｂによってそれぞれ１フレーム分、すなわちそれぞれ１つの輝度画像を得る。
【０１０８】
視差値演算部３００の第２コスト算出部３２１および第２サブピクセル推定部３４１によるブロックマッチング処理は、画像取得部１１０による輝度画像の取得の途中からでも、第２視差値ｄｐ２の導出およびエッジ視差画像Ｉｐ２の生成（図１９では、「視差値演算」と記載）が可能であり、かつ、演算処理の負荷もデンス処理と比較して軽い。したがって、ブロックマッチング処理においては、比較画像Ｉａおよび基準画像Ｉｂの１組が取得されるごとに、視差値演算、および認識処理部４１０によるエッジ視差画像Ｉｐ２に基づく認識処理（図１９では「物体認識処理」と例示）の実行が可能である。
【０１０９】
一方、視差値演算部３００の第１コスト算出部３２０、コスト合成部３３０および第１サブピクセル推定部３４０によるデンス処理は、まず、画像取得部１１０の輝度画像の取得と共に、比較画像Ｉａおよび基準画像Ｉｂの第１記憶部３５０への記憶を開始する。また、上述のように、所定のｒ方向の経路コスト値Ｌｒのうち、Ｌｒ０、Ｌｒ４５およびＬｒ９０については、画像取得部１１０による輝度画像の取得の途中からでも算出が可能である。しかし、デンス処理は、上述のように、所定のｒ方向の経路コスト値Ｌｒのうち、Ｌｒ１３５、Ｌｒ１８０、Ｌｒ２２５、Ｌｒ２７０およびＬｒ３１５については、画像取得部１１０による輝度画像の取得が終了し、第１記憶部３５０への比較画像Ｉａおよび基準画像Ｉｂの記憶がなされていないと算出することができない。したがって、デンス処理は、ブロックマッチング処理よりも演算量が多く、処理時間が長いうえに、一部の演算については、第１記憶部３５０への比較画像Ｉａおよび基準画像Ｉｂの記憶が完了していないと実行できない。よって、視差値演算部３００による第１視差値ｄｐ１の導出、および視差画像生成部３７０によるデンス視差画像Ｉｐ１の生成（図１９では、「視差値演算」と記載）は、ブロックマッチング処理における視差値演算よりも処理時間が長くなる。
【０１１０】
図１９のタイムチャートの例では、デンス処理においては、例えば、比較画像Ｉａおよび基準画像Ｉｂの１組の取得が２回行われる間に、視差値演算を１度実行することが可能であり、認識処理部４１０によるデンス視差画像Ｉｐ１に基づく認識処理（図１９では「路面認識処理」と例示）についても１度の実行が可能である。しかし、比較画像Ｉａおよび基準画像Ｉｂの１組の取得が２回行われるごとに、認識処理部４１０による路面認識処理等が行われるとしても、道路の路面の状態は通常は急激な変化を伴うものではないため、認識処理の性能への影響は少ない。また、路面認識処理以外に、画像において急激な変化を伴うものではない被写体の認識処理については、演算処理の負荷が大きいデンス処理により生成したデンス視差画像Ｉｐ１に基づいて実行するものとしても、その認識処理の性能への影響は少ない。なお、図１９のタイムチャートの例では、デンス処理において、比較画像Ｉａおよび基準画像Ｉｂの１組の取得が２回行われる間に、視差値演算を１度実行するものとしているが、認識処理の性能への影響が少ない限りにおいては、画像の取得が３回以上行われる間に、視差値演算が１度の実行が行われるものとしてもよい。
【０１１１】
以上のように、本実施の形態に係る視差値導出装置１において、デンス処理およびブロックマッチング処理を実行する視差値演算部３００は、共通のハードウェア（集積回路）で実現するものとし、デンス処理とブロックマッチング処理とを並列に実行するものとしている。この場合、ブロックマッチング処理は、デンス処理よりも演算処理の負荷が小さいため、比較画像Ｉａおよび基準画像Ｉｂの１組が取得されるごとに、視差値演算、およびエッジ視差画像Ｉｐ２に基づく認識処理の実行が可能である。これに対し、デンス処理は、ブロックマッチング処理よりも演算処理の負荷が大きいため、比較画像Ｉａおよび基準画像Ｉｂの１組の取得が複数回行われる間に、視差値演算、および、デンス視差画像Ｉｐ１に基づく認識処理について１度の実行が可能である。このように、デンス処理およびブロックマッチング処理を並列に動作させることが可能であり、変化のすくない被写体（道路の路面等）についての認識処理は、デンス視差画像によって処理、変化の多い被写体（人物、車両等）についての認識処理は、エッジ視差画像によって処理させるものとしている。これによって、演算処理の負荷が大きいデンス処理を用いても、各種認識処理の性能への影響を抑制することができる。
【０１１２】
また、視差値導出装置１において、第１サブピクセル推定部３４０および第２サブピクセル推定部３４１は、画素より小さい単位であるサブピクセル単位で視差値を導出することができるので、精度が高く、かつ密な視差値を導出することができ、より正確な視差画像を得ることができる。
【０１１３】
なお、補正部３１０、第１コスト算出部３２０、コスト合成部３３０、第１サブピクセル推定部３４０、第２コスト算出部３２１、第２サブピクセル推定部３４１および視差画像生成部３７０は、ＦＰＧＡ３１によって実現、すなわちハードウェア回路（集積回路）によって実現されるものとしたが、これに限定されるものではない。すなわち、補正部３１０、第１コスト算出部３２０、コスト合成部３３０、第１サブピクセル推定部３４０、第２コスト算出部３２１、第２サブピクセル推定部３４１および視差画像生成部３７０の少なくともいずれかは、ソフトウェアである画像処理用プログラムがＣＰＵ３２によって実行されることにより、実現されてもよい。また、補正部３１０、第１コスト算出部３２０、コスト合成部３３０、第１サブピクセル推定部３４０、第２コスト算出部３２１、第２サブピクセル推定部３４１および視差画像生成部３７０は、機能を概念的にブロック構成したものであって、このような構成に限定されるものではない。
【０１１４】
また、上述の画像処理用プログラムは、インストール可能な形式または実行可能な形式のファイルで、コンピュータで読み取り可能な記録媒体に記録して流通させてもよい。この記録媒体は、ＣＤ−ＲＯＭまたはＳＤカード等である。
【０１１５】
［第２の実施の形態］
第２の実施の形態に係る視差値導出装置および機器制御システムについて、第１の実施の形態に係る視差値導出装置および機器制御システムと相違する点を中心に説明する。本実施の形態に係る視差値導出装置１および機器制御システム５０は、構成、ならびに、デンス処理およびブロックマッチング処理の各処理の内容については、第１の実施の形態と同様である。
【０１１６】
（機器制御システムの処理の動作タイミング）
図２０は、第２の実施の形態に係る機器制御システムの処理のタイミングチャートを示す図である。図２０を参照しながら、本実施の形態に係る機器制御システム５０の処理の動作タイミングについて説明する。
【０１１７】
図２０に示すように、画像取得部１１０は、有効フレーム信号ＦＶがオン状態のとき、撮像部１０ａ、１０ｂによってそれぞれ１フレーム分、すなわち、それぞれ１つの輝度画像を得る。
【０１１８】
本実施の形態に係る機器制御システム５０は、所定の輝度画像の組数（所定のページ数）を画像取得部１１０により取得するごとに、ブロックマッチング処理のみの実行と、デンス処理とブロックマッチング処理との並列処理の実行とを、切り替えるものとしている。すなわち、機器制御システム５０は、ブロックマッチング処理は、常時実行するものとし、デンス処理については、所定の輝度画像の組数ごとに処理の実行と停止とを繰り返すものとしている。
【０１１９】
これによって、デンス処理およびブロックマッチング処理の両方を同時に実行しない期間を設けているので、演算量を低減することができる。本実施の形態に係る機器制御システム５０の動作は、路面認識処理等のデンス視差画像に基づく認識処理があまり必要とされない場合に、特に有効である。
【０１２０】
なお、図２０においては、ブロックマッチング処理のみが実行されるページ数と、デンス処理とブロックマッチング処理との並列処理が実行されるページ数とが同一のように記載されているが、これに限定されるものではない。例えば、上述のように、路面認識処理等のデンス視差画像に基づく認識処理があまり必要とされない場合においては、ブロックマッチング処理のみが実行されるページ数を、デンス処理とブロックマッチング処理との並列処理が実行されるページ数よりも多くしてもよい。
【０１２１】
［第３の実施の形態］
第３の実施の形態に係る視差値導出装置および機器制御システムについて、第１の実施の形態に係る視差値導出装置および機器制御システムと相違する点を中心に説明する。本実施の形態に係る視差値導出装置１および機器制御システム５０は、構成、ならびに、デンス処理およびブロックマッチング処理の各処理の内容については、第１の実施の形態と同様である。
【０１２２】
（機器制御システムの処理の動作タイミング）
図２１は、第３の実施の形態に係る機器制御システムの処理のタイミングチャートを示す図である。図２１を参照しながら、本実施の形態に係る機器制御システム５０の処理の動作タイミングについて説明する。
【０１２３】
図２１に示すように、画像取得部１１０は、有効フレーム信号ＦＶがオン状態のとき、撮像部１０ａ、１０ｂによってそれぞれ１フレーム分、すなわち、それぞれ１つの輝度画像を得る。
【０１２４】
本実施の形態に係る機器制御システム５０は、所定の輝度画像の組数（所定のページ数）を画像取得部１１０により取得するごとに、ブロックマッチング処理のみの実行と、デンス処理のみの実行とを、切り替えるものとしている。また、認識処理部４１０は、デンス処理のみを実行する期間では、デンス処理により導出された第１視差値ｄｐ１によるデンス視差画像Ｉｐ１に基づいて、物体認識処理および路面認識処理の双方を実行する。
【０１２５】
これによって、ブロックマッチング処理とデンス処理とを並列に実行させる必要がないので、ハードウェア回路の規模を縮小することができ、演算量、コストおよび電力消費量を低減させることができる。
【０１２６】
［第４の実施の形態］
第４の実施の形態に係る視差値導出装置および機器制御システムについて、第１の実施の形態に係る視差値導出装置および機器制御システムと相違する点を中心に説明する。本実施の形態に係る視差値導出装置１および機器制御システム５０は、構成、および、ブロックマッチング処理の内容については、第１の実施の形態と同様である。
【０１２７】
（視差値導出装置のデンス処理動作）
図２２は、第４の実施の形態において基準画像の画素に対するデンス処理のスキャン動作を示す図である。図２２を参照しながら、本実施の形態に係る視差値導出装置１のデンス処理について説明する。
【０１２８】
上述の図１１に示す基準画像Ｉｂのように、人物、車両等の変化の多い被写体は、基準画像Ｉｂ全体に散在することが多いと考えられるが、路面等の変化の少ない被写体は、基準画像Ｉｂのうち下側半分に存在することが多い。したがって、路面認識処理が特に必要となるのは、第１の実施の形態で視差画像生成部３７０により生成されるデンス視差画像Ｉｐ１全体ではなく、デンス視差画像Ｉｐ１の下側半分であることになる。そこで、本実施の形態に係る視差値導出装置１においては、図２２に示すように、デンス処理の対象を基準画像Ｉｂの下側半分とする。
【０１２９】
具体的には、第１コスト算出部３２０は、基準画像Ｉｂの下側半分における基準画素ｐの輝度値、および、基準画素ｐに基づく比較画像Ｉａにおけるエピポーラ線上で、基準画素ｐの位置に相当する画素からシフト量ｄでシフトすることにより特定される、対応画素の候補である候補画素ｑの各輝度値に基づいて、各候補画素ｑの第１コスト値Ｃ１を算出する。また、コスト合成部３３０は、基準画像Ｉｂの下側半分における基準画素ｐの周辺の画素を基準画素とした場合のその基準画素についての比較画像Ｉａにおける画素の第１コスト値Ｃ１を、第１コスト算出部３２０により算出された候補画素ｑの第１コスト値Ｃ１に集約させて、候補画素ｑの合成コスト値Ｌｓを算出する。また、第１サブピクセル推定部３４０は、コスト合成部３３０により算出された、基準画像Ｉｂの下側半分における基準画素についての比較画像Ｉａにおける画素の合成コスト値Ｌｓの最小値に対応するシフト量ｄ、およびそれに隣接するシフト量ｄにおける合成コスト値Ｌｓに基づいて、サブピクセル推定を実行し、サブピクセル単位の第１視差値ｄｐ１を導出する。そして、視差画像生成部３７０は、第２記憶部３６０に記憶され、デンス処理によって導出された基準画像Ｉｂの下側半分に対応する第１視差値ｄｐ１によって、基準画像Ｉｂの下側半分の各画素の輝度値を、その画素に対応する第１視差値ｄｐ１で表した画像であるデンス視差画像を生成する。
【０１３０】
以上のように、デンス処理を実行する対象を基準画像Ｉｂの下側半分としているので、デンス処理の処理時間を半分にすることができる。
【０１３１】
（機器制御システムの処理の動作タイミング）
図２３は、第４の実施の形態に係る機器制御システムの処理のタイミングチャートを示す図である。図２３を参照しながら、本実施の形態に係る機器制御システム５０の処理の動作タイミングについて説明する。
【０１３２】
図２３に示すように、画像取得部１１０は、有効フレーム信号ＦＶがオン状態のとき、撮像部１０ａ、１０ｂによってそれぞれ１フレーム分、すなわち、それぞれ１つの輝度画像を得る。
【０１３３】
上述のように、デンス処理を実行する対象を基準画像Ｉｂの下側半分としたことによりデンス処理の処理時間を半分にすることができる。しがたって、図２３に示すように、デンス処理は、ブロックマッチング処理と同様に、比較画像Ｉａおよび基準画像Ｉｂの１組が取得されるごとに、視差値演算、および認識処理部４１０によるデンス視差画像（デンス視差画像Ｉｐ１の半分のサイズ）に基づく認識処理の実行が可能となる。
【０１３４】
これによって、デンス処理による演算処理の負荷を低減することができる。また、比較画像Ｉａおよび基準画像Ｉｂの１組が取得されるごとに、デンス視差画像に基づく認識処理を実行することが可能となるので、認識処理の性能を確保することができると共に、デンス視差画像に基づく認識処理の対象としていた被写体に急激な変化が発生しても対応することができる。
【０１３５】
なお、デンス処理の対象を基準画像Ｉｂの下側半分としたが、これに限定されるものではなく、基準画像Ｉｂの上下方向の特定の位置から下側の部分であってもよい。
【０１３６】
［第５の実施の形態］
第５の実施の形態に係る視差値導出装置および機器制御システムについて、第１の実施の形態に係る視差値導出装置および機器制御システムと相違する点を中心に説明する。本実施の形態に係る視差値導出装置１および機器制御システム５０は、構成、および、ブロックマッチング処理の内容については、第１の実施の形態と同様である。
【０１３７】
（視差値導出装置のデンス処理動作）
図２４は、第５の実施の形態において基準画像の画素に対するデンス処理のスキャン動作を示す図である。図２４を参照しながら、本実施の形態に係る視差値導出装置１のデンス処理について説明する。
【０１３８】
上述の図１１に示す基準画像Ｉｂのように、人物、車両等の変化の多い被写体は、基準画像Ｉｂ全体に散在することが多いと考えられるが、路面等の変化の少ない被写体は、基準画像Ｉｂのうち下側半分に存在することが多い。したがって、コスト合成部３３０によって、図５に示すように８方向すべてから第１コスト値Ｃ１を集約させる必要はなく、本実施の形態においては、図２４に示すように、０度、１８０度、２２５度、２７０度および３１５度の５方向（特定方向）から第１コスト値Ｃ１を集約させるものとする。
【０１３９】
具体的には、コスト合成部３３０は、合成コスト値Ｌｓを算出するために、上述の（式３）によって、上述の５方向の経路コスト値Ｌｒ（ｐ，ｄ）、すなわち、Ｌｒ０、Ｌｒ１８０、Ｌｒ２２５、Ｌｒ２７０およびＬｒ３１５を算出し、これらの和をとって合成コスト値Ｌｓとする。そして、第１サブピクセル推定部３４０および視差画像生成部３７０の動作によって、デンス視差画像を得る。
【０１４０】
以上のように、デンス処理を実行する場合における、コスト合成部３３０による経路コスト値Ｌｒの算出を８方向から５方向に減らしているので、デンス処理の処理時間を約半分にすることができる。これによって、第４の実施の形態と同様に、デンス処理は、ブロックマッチング処理と同様に、比較画像Ｉａおよび基準画像Ｉｂの１組が取得されるごとに、視差値演算、および認識処理部４１０によるデンス視差画像に基づく認識処理の実行が可能となる。また、比較画像Ｉａおよび基準画像Ｉｂの１組が取得されるごとに、デンス視差画像に基づく認識処理を実行することが可能となるので、認識処理の性能を確保することができると共に、デンス視差画像に基づく認識処理の対象としていた被写体に急激な変化が発生しても対応することができる。
【０１４１】
なお、コスト合成部３３０によって５方向の経路コスト値Ｌｒ（ｐ，ｄ）が算出されるものとしているが、これに限定されるものではなく、３方向または４方向等としてもよい。３方向としては、例えば、コスト合成部３３０はＬｒ２２５、Ｌｒ２７０およびＬｒ３１５を算出するものとし、４方向としては、例えば、コスト合成部３３０は、Ｌｒ０、Ｌｒ２２５、Ｌｒ２７０およびＬｒ３１５を算出するものとすればよい。
【０１４２】
［第６の実施の形態］
第６の実施の形態に係る視差値導出装置および機器制御システムについて、第１の実施の形態に係る視差値導出装置および機器制御システムと相違する点を中心に説明する。本実施の形態に係る視差値導出装置１および機器制御システム５０は、デンス処理およびブロックマッチング処理の各処理の内容については、第１の実施の形態と同様である。
【０１４３】
＜視差値導出装置のブロック構成＞
図２５は、第６の実施の形態に係る視差値導出装置のブロック構成の一例を示す図である。図２５を参照しながら、視差値導出装置１の要部のブロック構成について説明する。
【０１４４】
図２５に示すように、視差値導出装置１は、画像取得部１１０と、フィルタ部２１０と、補正部３１０と、第１記憶部３５０と、視差値演算部３００ａ（デンス処理手段）と、視差値演算部３００ｂ（マッチング処理手段）と、第２記憶部３６０と、視差画像生成部３７０と、を備えている。視差画像生成部３７０の出力側には、認識処理部４１０が接続されている。
【０１４５】
視差値演算部３００ａは、第１コスト算出部３２０と、コスト合成部３３０と、第１サブピクセル推定部３４０と、を含んでおり、比較画像Ｉａおよび基準画像Ｉｂに対してデンス処理を実行する。視差値演算部３００ｂは、第２コスト算出部３２１と、第２サブピクセル推定部３４１と、を含んでおり、比較画像Ｉａおよび基準画像Ｉｂに対してブロックマッチング処理を実行する。すなわち、本実施の形態に係る視差値導出装置１は、第１の実施の形態の視差値導出装置１における同一のハードウェア回路（集積回路）により実現されていた視差値演算部３００に代えて、別個のハードウェア回路（集積回路）である視差値演算部３００ａと、視差値演算部３００ｂとを備えている。図２５に示す視差値導出装置１に含まれる各処理部の機能は、第１の実施の形態と同様である。
【０１４６】
以上の構成のように、視差値演算部３００ａと視差値演算部３００ｂとは別個のハードウェア回路によって構成されているので、デンス処理およびブロックマッチング処理を並列に実行することができると共に、各ハードウェア回路で独立に実行することができる。これによって、デンス処理およびブロックマッチング処理を、双方、第１の実施の形態と比較して高速に処理することができ、図２３に示すようなタイミングチャートで実行することができる。したがって、比較画像Ｉａおよび基準画像Ｉｂの１組が取得されるごとに、デンス視差画像に基づく認識処理を実行することが可能となるので、認識処理の性能を確保することができると共に、デンス視差画像に基づく認識処理の対象としていた被写体に急激な変化が発生しても対応することができる。
【０１４７】
［第７の実施の形態］
第７の実施の形態に係る視差値導出装置および機器制御システムについて、第６の実施の形態に係る視差値導出装置および機器制御システムと相違する点を中心に説明する。
【０１４８】
＜視差値導出装置のブロック構成および各ブロックの動作＞
図２６は、第７の実施の形態に係る視差値導出装置のブロック構成の一例を示す図である。図２７は、非エッジ部を検出する動作の一例を示す図である。図２６および図２７を参照しながら、視差値導出装置１の要部のブロック構成および各ブロックの動作について説明する。
【０１４９】
図２６に示すように、視差値導出装置１は、画像取得部１１０と、フィルタ部２１０と、補正部３１０と、第１記憶部３５０と、視差値演算部３００ａと、視差値演算部３００ｂと、検出部３８０（検出手段）と、選択部３９０（選択手段）と、第２記憶部３６０ａと、視差画像生成部３７０ａ（生成手段）と、を備えている。視差画像生成部３７０ａの出力側には、認識処理部４１０（認識処理手段）が接続されている。
【０１５０】
視差値演算部３００ａは、第１コスト算出部３２０と、コスト合成部３３０と、第１サブピクセル推定部３４０と、を含んでおり、比較画像Ｉａおよび基準画像Ｉｂに対してデンス処理を実行する。視差値演算部３００ｂは、第２コスト算出部３２１と、第２サブピクセル推定部３４１と、を含んでおり、比較画像Ｉａおよび基準画像Ｉｂに対してブロックマッチング処理を実行する。すなわち、本実施の形態に係る視差値導出装置１は、第６の実施の形態に係る視差値導出装置１と同様に、別個のハードウェア回路である視差値演算部３００ａと、視差値演算部３００ｂとを備えている。
【０１５１】
検出部３８０は、補正部３１０から出力された基準画像Ｉｂを入力し、基準画像Ｉｂを構成する各画素が、エッジ部に相当する画素か非エッジ部に相当する画素かを検出し、検出した結果情報である検出情報を選択部３９０に渡す。検出部３８０は、基準画像Ｉｂを構成する画素がエッジ部か非エッジ部かを、例えば、以下のように検出する。図２７（ａ）に示すように、検出対象である注目画素が「Ｅ」であるものとし、注目画素である「Ｅ」に隣接して囲む隣接画素を「Ａ〜Ｄ、Ｆ〜Ｉ」とする。検出部３８０は、注目画素である「Ｅ」の画素値と、隣接画素である「Ａ〜Ｄ、Ｆ〜Ｉ」の画素値とのそれぞれの差の絶対値を算出する。次に、検出部３８０は、算出した８個の絶対値それぞれが、所定の閾値Ｔｈ以下であるか否かを判定する。そして、検出部３８０は、図２７（ｂ）に示すように、８個の絶対値がすべて、所定の閾値Ｔｈ以下である場合、注目画素である「Ｅ」は、非エッジ部であるものと判定する。また、検出部３８０は、図２７（ｂ）の条件を満たさない場合、注目画素である「Ｅ」は、エッジ部であるものと判定する。
【０１５２】
選択部３９０は、第１サブピクセル推定部３４０から第１視差値ｄｐ１を入力し、第２サブピクセル推定部３４１から第２視差値ｄｐ２を入力し、検出部３８０から検出情報を入力する。そして、選択部３９０は、基準画像Ｉｂの特定の画素についての非エッジ部か否かを示す検出情報に基づいて、その特定の画素に対応する第１視差値ｄｐ１または第２視差値ｄｐ２のうちいずれかを出力して、第２記憶部３６０ａに記憶させる。具体的には、選択部３９０は、基準画像Ｉｂの特定の画素に対応する検出情報が非エッジ部を示す情報である場合、その特定の画素に対応する第１視差値ｄｐ１を出力し、その特定の画素と関連付けた第１視差値ｄｐ１を、第２記憶部３６０ａに記憶させる。また、選択部３９０は、基準画像Ｉｂの特定の画素に対応する検出情報がエッジ部を示す情報である場合、その特定の画素に対応する第２視差値ｄｐ２を出力し、その特定の画素と関連付けた第２視差値ｄｐ２を、第２記憶部３６０ａに記憶させる。選択部３９０は、図９に示すＦＰＧＡ３１によって実現される。
【０１５３】
第２記憶部３６０ａは、選択部３９０から出力された第１視差値ｄｐ１および第２視差値ｄｐ２を、それぞれ基準画像Ｉｂの画素に関連付けて記憶する。第２記憶部３６０ａは、図９に示すＲＡＭ３４によって実現される。なお、第２記憶部３６０ａは、図９において図示しないＨＤＤ等の外部記憶装置によって実現されるものとしてもよい。
【０１５４】
視差画像生成部３７０ａは、第２記憶部３６０ａに基準画像Ｉｂの各画素に関連付けて記憶された第１視差値ｄｐ１および第２視差値ｄｐ２によって、基準画像Ｉｂの各画素の輝度値を、その画素に対応する第１視差値ｄｐ１または第２視差値ｄｐ２で表した画像である混合視差画像Ｉｐ３を生成する。すなわち、混合視差画像Ｉｐ３は、第１視差値ｄｐ１および第２視差値ｄｐ２を混合して生成されたものであり、第１視差値ｄｐ１に対応する画素は、基準画像Ｉｂにおける非エッジ部に相当する画素に対応し、第２視差値ｄｐ２に対応する画素は、基準画像Ｉｂにおけるエッジ部に相当する画素に対応する。視差画像生成部３７０ａは、図９に示すＦＰＧＡ３１によって実現される。
【０１５５】
認識処理部４１０は、視差画像生成部３７０ａにより生成された混合視差画像Ｉｐ３に基づいて、道路の路面等のテクスチャの弱い部分を認識する路面認識処理等、および人物、標識、車両、その他の障害物を認識する物体認識処理等の双方を実行する。認識処理部４１０は、図９に示す画像表示装置３、または、図７に示す制御装置５等によって実現される。
【０１５６】
なお、補正部３１０、第１コスト算出部３２０、コスト合成部３３０、第１サブピクセル推定部３４０、第２コスト算出部３２１、第２サブピクセル推定部３４１、検出部３８０、選択部３９０および視差画像生成部３７０ａは、ＦＰＧＡ３１によって実現、すなわちハードウェア回路によって実現されるものとしたが、これに限定されるものではない。すなわち、補正部３１０、第１コスト算出部３２０、コスト合成部３３０、第１サブピクセル推定部３４０、第２コスト算出部３２１、第２サブピクセル推定部３４１、検出部３８０、選択部３９０および視差画像生成部３７０ａの少なくともいずれかは、ソフトウェアであるプログラムがＣＰＵ３２によって実行されることにより、実現されてもよい。また、補正部３１０、第１コスト算出部３２０、コスト合成部３３０、第１サブピクセル推定部３４０、第２コスト算出部３２１、第２サブピクセル推定部３４１、検出部３８０、選択部３９０および視差画像生成部３７０ａは、機能を概念的にブロック構成したものであって、このような構成に限定されるものではない。
【０１５７】
以上のような構成および動作のように、本実施の形態に係る視差値導出装置１は、輝度画像である基準画像Ｉｂの各画素を、非エッジ部か否かを検出し、非エッジ部である画素に対しては視差値演算部３００ａにより導出された第１視差値ｄｐ１を用いて、エッジ部である画素に対しては視差値演算部３００ｂにより導出された第２視差値ｄｐ２を用いて、混合視差画像Ｉｐ３を生成している。そして、認識処理部４１０は、この混合視差画像Ｉｐ３を用いて各種認識処理を実行するものとしている。これによって、道路の路面等のテクスチャの弱い部分を認識する路面認識処理等、および人物、標識、車両、その他の障害物を認識する物体認識処理等の双方において、共通の混合視差画像Ｉｐ３を利用して処理が可能となる。そして、混合視差画像Ｉｐ３を構成する視差値は、いずれの認識処理にも適した視差値となるので、認識処理の性能を向上させることができる。
【０１５８】
なお、上述の実施の形態では、コスト値Ｃ、第１コスト値Ｃ１および第２コスト値Ｃ２は非類似度を表す評価値としているが、類似度を表す評価値であってもよい。この場合、合成コスト値Ｌｓがサブピクセル単位で最大となるシフト量ｄが第１視差値ｄｐ１となる。
【０１５９】
また、上述の実施の形態では、説明の簡略化のために、画素単位でのマッチングで説明したが、これに限定されるものではなく、所定領域（ブロック）単位でマッチングされてもよい。この場合、基準画素を含む所定領域は基準領域として示され、対応画素を含む所定領域は対応領域として示され、対応画素の候補画素は候補領域として示される。また、この基準領域には基準画素のみの場合も含まれ、対応領域には対応画素のみの場合も含まれ、候補領域には候補画素のみの場合も含まれる。
【０１６０】
また、上述の実施の形態では、視差値導出装置１の外部の機器（例えば、画像表示装置３）が視差画像（視差値）に基づき、距離Ｚを算出しているが、これに限定されるものではなく、画像処理部３０のＣＰＵ３２が距離Ｚを算出するものとしてもよい。
【０１６１】
また、上述の実施の形態では、車両１００としての自動車に搭載される視差値導出装置１について説明したが、これに限定されるものではない。例えば、他の車両の一例としてバイク、自転車、車椅子または農業用の耕運機等の車両に搭載されるものとしてもよい。また、移動体の一例としての車両だけでなく、ロボット等の移動体であってもよい。
【０１６２】
さらに、ロボットは、移動体だけでなく、ＦＡ（Ｆａｃｔｏｒｙ  Ａｕｔｏｍａｔｉｏｎ）において固定設置される工業用ロボット等の装置であってもよい。また、固定設置される装置としては、ロボットだけでなく、防犯用の監視カメラ等であってもよい。
【符号の説明】
【０１６３】
１  視差値導出装置
２  本体
３  画像表示装置
５  制御装置
６  ステアリングホイール
７  ブレーキペダル
１０ａ、１０ｂ  撮像部
１１ａ、１１ｂ  撮像レンズ
１２ａ、１２ｂ  絞り
１３ａ、１３ｂ  画像センサ
２０ａ、２０ｂ  信号変換部
２１ａ、２１ｂ  ＣＤＳ
２２ａ、２２ｂ  ＡＧＣ
２３ａ、２３ｂ  ＡＤＣ
２４ａ、２４ｂ  フレームメモリ
３０  画像処理部
３１  ＦＰＧＡ
３２  ＣＰＵ
３３  ＲＯＭ
３４  ＲＡＭ
３５  通信Ｉ／Ｆ
３６  ＣＡＮＣ
３９  バス
５０  機器制御システム
１００  車両
１１０  画像取得部
２１０  フィルタ部
３００、３００ａ、３００ｂ  視差値演算部
３１０  補正部
３２０  第１コスト算出部
３２１  第２コスト算出部
３３０  コスト合成部
３４０  第１サブピクセル推定部
３４１  第２サブピクセル推定部
３５０  第１記憶部
３６０、３６０ａ  第２記憶部
３７０、３７０ａ  視差画像生成部
３８０  検出部
３９０  選択部
４１０  認識処理部
５１０ａ、５１０ｂ  撮像装置
５１１ａ、５１１ｂ  撮像レンズ
Ｂ  基線長
Ｃ  コスト値
Ｃ１  第１コスト値
Ｃ２  第２コスト値
ｄ  シフト量
ｄｐ  視差値
ｄｐ１  第１視差値
ｄｐ２  第２視差値
Ｅ  物体
ＥＬ  エピポーラ線
ｆ  焦点距離
ＦＶ  有効フレーム信号
Ｉａ  比較画像
Ｉｂ  基準画像
Ｉｍｇ１〜Ｉｍｇ３  画像部
Ｉｐ１  デンス視差画像
Ｉｐ２  エッジ視差画像
Ｉｐ３  混合視差画像
Ｌｒ  経路コスト値
Ｌｓ  合成コスト値
Ｓ、Ｓａ、Ｓｂ  点
Ｔｈ  閾値
Ｚ  距離
【先行技術文献】
【特許文献】
【０１６４】
【特許文献１】特開２０１２−０１８０１３号公報
【非特許文献】
【０１６５】
【非特許文献１】Ｈ．Ｈｉｒｓｃｈｍｕｌｌｅｒ，Ａｃｃｕｒａｔｅ  ａｎｄ  Ｅｆｆｉｃｉｅｎｔ  Ｓｔｅｒｅｏ  Ｐｒｏｃｅｓｓｉｎｇ  ｂｙ  Ｓｅｍｉ−Ｇｌｏｂａｌ  Ｍａｔｃｈｉｎｇ  ａｎｄ  Ｍｕｔｕａｌ  Ｉｍｆｏｒｍａｔｉｏｎ，ＩＥＥＥ  Ｃｏｎｆｅｒｅｎｃｅ  ｏｎ  Ｃｏｍｐｕｔｅｒ  Ｖｉｓｉｏｎ  ａｎｄ  Ｐａｔｔｅｒｎ  Ｒｅｃｏｇｎｉｔｉｏｎ（ＣＶＰＲ），Ｓａｎ  Ｄｉｅｇｏ，ＣＡ，ＵＳＡ，Ｊｕｎｅ  ２０−２６，２００５．
【図１】
2015158749.tif 000003
【図３】
2015158749.tif 000004
【図４】
2015158749.tif 000005
【図５】
2015158749.tif 000006
【図６】
2015158749.tif 000007
【図７】
2015158749.tif 000008
【図８】
2015158749.tif 000009
【図９】
2015158749.tif 000010
【図１０】
2015158749.tif 000011
【図１１】
2015158749.tif 000012
【図１２】
2015158749.tif 000013
【図１３】
2015158749.tif 000014
【図１４】
2015158749.tif 000015
【図１５】
2015158749.tif 000016
【図１７】
2015158749.tif 000017
【図１８】
2015158749.tif 000018
【図１９】
2015158749.tif 000019
【図２０】
2015158749.tif 000020
【図２１】
2015158749.tif 000021
【図２２】
2015158749.tif 000022
【図２３】
2015158749.tif 000023
【図２４】
2015158749.tif 000024
【図２５】
2015158749.tif 000025
【図２６】
2015158749.tif 000026
【図２７】
2015158749.tif 000027
【図２】
2015158749.tif 000028
【図１６】
2015158749.tif 000029