(57)【要約】      （修正有）【課題】補正対象となる単位画像領域の視差値について、その視差値エラーの原因に対応した適切な補正処理により補正を行う視差値演算装置、物体認識装置、移動体機器制御システム及び視差演算用プログラムを提供する。【解決手段】撮像領域を撮像する複数の撮像部で撮像した複数の撮像画像データ間における視差値を単位画像領域ごとに算出する視差値算出部１３２Ｃと信頼度判定部１３２Ｄを備えた視差画像生成部１３２において、互いに異なる複数の視差値エラー条件のうちの少なくとも１つの視差値エラー条件を満たす単位画像領域の視差値を、複数の視差値エラー条件ごとに異なる複数の補正処理のうち該少なくとも１つの視差値エラー条件に対応する補正処理を用いて補正する視差値補正手段として、信頼度判定値変更部１３２Ｅ，周辺補完処理部１３２Ｆ，フレーム間補完処理部１３２Ｈを有する。【選択図】図１
2016173248.tif 000002
【特許請求の範囲】
【請求項１】
撮像領域を撮像する複数の撮像部で撮像した複数の撮像画像データ間における視差値を単位画像領域ごとに算出する視差値算出手段を備えた視差値演算装置において、
互いに異なる複数の視差値エラー条件のうちの少なくとも１つの視差値エラー条件を満たす単位画像領域の視差値を、該複数の視差値エラー条件ごとに異なる複数の補正処理のうち該少なくとも１つの視差値エラー条件に対応する補正処理を用いて補正する視差値補正手段を有することを特徴とする視差値演算装置。
【請求項２】
請求項１に記載の視差値演算装置において、
前記複数の補正処理は、補正対象となる単位画像領域の視差値について、該単位画像領域の周辺に位置する周辺単位画像領域の視差値を用いて補正する周辺視差値補正処理を含むことを特徴とする視差値演算装置。
【請求項３】
請求項２に記載の視差値演算装置において、
局所的に誤った視差値を生じさせるハードウェアエラーを検出するエラー検出手段を有し、
前記複数の視差値エラー条件は、前記エラー検出手段が検出したハードウェアエラーに対応した単位画像領域であるというハードウェアエラー条件を含み、
前記周辺視差値補正処理は、前記ハードウェアエラー条件に対応する補正処理であることを特徴とする視差値演算装置。
【請求項４】
請求項１乃至３のいずれか１項に記載の視差値演算装置において、
前記視差値算出手段は、単位画像領域ごとに視差値の信頼度を導出し、導出した信頼度が所定の信頼度閾値を超えている視差値については当該単位画像領域の視差値として算出し、導出した信頼度が該所定の信頼度閾値以下である視差値については当該単位画像領域の視差値として算出しないものであり、
前記複数の視差値エラー条件は、前記複数の撮像画像データの少なくとも一方における単位画像領域の画素値と該単位画像領域の周辺に位置する周辺単位画像領域の画素値との差が規定値以下であるという画素値平坦条件を含み、
前記複数の補正処理は、前記画素値平坦条件に対応する補正処理として、前記所定の信頼度閾値を下げる閾値低下処理を含むことを特徴とする視差値演算装置。
【請求項５】
請求項１乃至４のいずれか１項に記載の視差値演算装置において、
前記複数の補正処理は、補正対象となる単位画像領域の視差値を、該視差値を算出した複数の撮像画像データの撮像時期よりも前及び後の少なくとも一方の時期に撮像した複数の撮像画像データ間における視差値を用いて補正する時間差補正処理を含むことを特徴とする視差値演算装置。
【請求項６】
請求項５に記載の視差値演算装置において、
前記複数の視差値エラー条件は、短時間だけ誤った視差値を生じさせる単位画像領域であるという短時間エラー条件を含み、
前記時間差補正処理は、前記短時間エラー条件に対応する補正処理であることを特徴とする視差値演算装置。
【請求項７】
請求項１乃至６のいずれか１項に記載の視差値演算装置において、
前記複数の撮像画像データにおける画素値を補正する画素値補正手段を有し、
前記視差値算出手段は、前記画素値補正手段によって補正された後の複数の撮像画像データ間における視差値を単位画像領域ごとに算出することを特徴とする視差値演算装置。
【請求項８】
撮像領域を撮像する複数の撮像部を備えた撮像手段と、
前記複数の撮像部で撮像した複数の撮像画像データ間における視差値を単位画像領域ごとに演算する視差値演算装置と、
前記視差値演算装置が演算した視差値に基づいて撮像領域内の認識対象物を認識する認識処理手段とを有する物体認識装置において、
前記視差値演算装置として、請求項１乃至７のいずれか１項に記載の視差値演算装置を用いたことを特徴とする物体認識装置。
【請求項９】
移動体の周囲に存在する認識対象物を認識する物体認識装置と、
前記物体認識装置の認識結果に基づいて、移動体に搭載された所定の機器を制御する移動体機器制御手段とを備えた移動体機器制御システムにおいて、
前記物体認識装置として、請求項８に記載の物体認識装置を用いたことを特徴とする移動体機器制御システム。
【請求項１０】
撮像領域を撮像する複数の撮像部で撮像した複数の撮像画像データ間における視差値を演算する視差値演算装置のコンピュータを機能させる視差演算用プログラムであって、
前記複数の撮像画像データ間における視差値を単位画像領域ごとに算出する視差値算出手段、及び、
互いに異なる複数の視差値エラー条件のうちの少なくとも１つの視差値エラー条件を満たす単位画像領域の視差値を、該複数の視差値エラー条件ごとに異なる複数の補正処理のうち該少なくとも１つの視差値エラー条件に対応する補正処理を用いて補正する視差値補正手段として、前記コンピュータを機能させることを特徴とする視差演算用プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、視差値演算装置、物体認識装置、移動体機器制御システム及び視差演算用プログラムに関するものである。
【背景技術】
【０００２】
従来、２つの撮像部で撮像した基準画像と比較画像間における同一地点を撮像する画像部分の位置ズレ量に基づく視差値を単位画像領域ごとに算出した後に、視差値が適切に算出されない単位画像領域の視差値を補正する視差値演算装置が知られている。
【０００３】
例えば、特許文献１には、基準画像内の画像部分と同じ地点を撮像した画像部分を比較画像内から特定するマッチング処理を行い、マッチング処理で特定された比較画像内の画像部分と基準画像内の画像部分との位置ズレ量を視差値として算出するステレオ画像処理装置が開示されている。このステレオ画像処理装置は、単位画像領域ごとの視差値を算出した後、注目する単位画像領域を中心とした３×３の単位画像領域群を抽出し、各単位画像領域のアドレス及び視差値に応じた度数を加算したヒストグラムを作成して、このヒストグラムから抽出した最大度数視差値に応じて、注目した単位画像領域の視差値を補正する多数決フィルタ手段を備えている。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
前記特許文献１に開示のステレオ画像処理装置は、注目する単位画像領域（注目単位画像領域）の周辺に位置する単位画像領域（周辺単位画像領域）の視差値を利用して、当該注目単位画像領域の視差値を補正するという補正方法である。この補正方法によれば、周辺単位画像領域中に正しい視差値が含まれていれば、注目単位画像領域の視差値を適切に補正することが可能である。したがって、撮像部における画像センサの画素欠損や、算出した視差値を記憶するメモリ内のビット状態が放射性粒子等によって変化してしまう１ビットソフトエラーなど、対応する単位画像領域だけに影響を及ぼす不具合によって生じた視差値エラーであれば、適切な補正方法であると言える。
【０００５】
しかしながら、視差値が算出されない又は誤った視差値が算出される等の視差値エラーは、このような不具合に起因するものだけでなく、例えば、広範囲にわたる単位画像領域群の視差値エラーに影響を及ぼす不具合に起因するものある。このような不具合に対しては、上述した補正方法では視差値を適切に補正することができないが、別の補正方法であれば、適切に補正することが可能な場合がある。
【課題を解決するための手段】
【０００６】
上述した課題を解決するために、本発明は、撮像領域を撮像する複数の撮像部で撮像した複数の撮像画像データ間における視差値を単位画像領域ごとに算出する視差値算出手段を備えた視差値演算装置において、互いに異なる複数の視差値エラー条件のうちの少なくとも１つの視差値エラー条件を満たす単位画像領域の視差値を、該複数の視差値エラー条件ごとに異なる複数の補正処理のうち該少なくとも１つの視差値エラー条件に対応する補正処理を用いて補正する視差値補正手段を有することを特徴とする。
【発明の効果】
【０００７】
本発明によれば、補正対象となる単位画像領域の視差値について、その視差値エラーの原因に対応した適切な補正処理により補正を行うことが可能となるという優れた効果が奏される。
【図面の簡単な説明】
【０００８】
【図１】実施形態に係る車載機器制御システムおける視差画像生成部内の機能ブロック図である。
【図２】同車載機器制御システムの概略構成を示す模式図である。
【図３】同車載機器制御システムにおける撮像ユニット及び画像解析ユニットの概略構成を示す模式図である。
【図４】（ａ）及び（ｂ）は、同撮像ユニットにおける２つの撮像部でそれぞれ撮像した撮像画像の一例をそれぞれ示す説明図である。
【図５】一般的な測距原理を示す説明図である。
【図６】実施形態の物体認識処理を説明するための処理ブロック図である。
【図７】（ａ）は視差画像の視差値分布の一例を示す説明図である。（ｂ）は、同（ａ）の視差画像の行ごとの視差値頻度分布を示す行視差分布マップ（Ｖマップ）を示す説明図である。
【図８】対象画素Ｅを中心とした３画素×３画素内の８つの周辺画素を示す説明図である。
【発明を実施するための形態】
【０００９】
以下、本発明に係る視差値演算装置を、移動体である自動車に搭載されている車載機器（移動体搭載機器）の制御システムにおける物体認識装置に適用した一実施形態について説明する。
図２は、本実施形態に係る移動体機器制御システムとしての車載機器制御システムの概略構成を示す模式図である。
本車載機器制御システムは、自動車である自車両１００に搭載された撮像手段としての撮像ユニット１０１で撮像した自車両進行方向前方領域（撮像領域）の撮像画像データから、自車両前方に存在する物体を認識し、その認識結果を利用して各種車載機器の制御を行うものである。
【００１０】
本実施形態の車載機器制御システムには、走行する自車両１００の進行方向前方領域を撮像領域として撮像する撮像ユニット１０１が設けられている。この撮像ユニット１０１は、例えば、自車両１００のフロントガラス１０５のルームミラー付近に設置される。撮像ユニット１０１の撮像によって得られる撮像画像データを含む各種データは、画像解析ユニット１０２に入力される。画像解析ユニット１０２は、撮像ユニット１０１から送信されてくるデータを解析して、自車両前方の他車両、歩行者、各種障害物などの認識対象物を認識する。この認識結果は、例えば、表示ユニット１０３やスピーカーを用いて自車両１００の運転者へ警告情報を報知する報知処理に利用されたり、車両走行制御ユニット１０６により、自車両１００の移動方向を変更する機器であるハンドル装置（ステアリング）や、自車両１００を増速させる機器であるアクセル装置、自車両１００を減速させる機器であるブレーキ装置（制動装置）を制御するなどの走行支援制御に利用されたりする。なお、表示ユニット１０３としては、液晶ディスプレイやＨＵＤ（Head-Up Display）などを用いることができる。
【００１１】
図３は、撮像ユニット１０１及び画像解析ユニット１０２の概略構成を示す模式図である。
撮像ユニット１０１は、２つの撮像部１１０Ａ，１１０Ｂを備えたステレオカメラで構成されており、２つの撮像部１１０Ａ，１１０Ｂは同一のものである。各撮像部１１０Ａ，１１０Ｂは、それぞれ、撮像レンズ１１１Ａ，１１１Ｂと、受光素子が２次元配置された画像センサ１１３Ａ，１１３Ｂを含んだセンサ基板１１４Ａ，１１４Ｂと、センサ基板１１４Ａ，１１４Ｂから出力されるアナログ電気信号（画像センサ１１３Ａ，１１３Ｂ上の各受光素子が受光した受光量）をデジタル電気信号に変換した撮像画像データを生成して出力するデータ出力手段としての信号処理部１１５Ａ，１１５Ｂとから構成されている。なお、信号処理部１１５Ａ，１１５Ｂは、画像センサ１１３Ａ，１１３Ｂ上に設けられていても良い。本実施形態の撮像ユニット１０１からは、輝度画像データと視差画像データが出力される。画像データは、例えば、１画素あたり、１２ビットのデータ量のものであり、０〜４０９５階調（画素値）をとる。
【００１２】
また、撮像ユニット１０１は、画像処理基板等からなる視差値演算装置としての処理ハードウェア部１２０を備えている。処理ハードウェア部１２０は、撮像画像データに対してリアルタイム性が要求される処理を主に実行するものである。具体的には、例えば、ガンマ補正等により輝度値（画素値）を補正する輝度補正処理、２つの撮像部１１０Ａ，１１０Ｂの取り付け位置ズレなどに起因する撮像画像の歪みを補正する歪み補正処理（左右の撮像画像の平行化）、マッチング処理を実行して視差値を演算する視差演算処理などが挙げられる。なお、輝度補正処理や歪み補正処理は必ずしも行う必要はない。
【００１３】
本実施形態の処理ハードウェア部１２０は、各撮像部１１０Ａ，１１０Ｂから出力される輝度画像データの輝度補正処理を行う画素値補正手段としての輝度補正処理部１２４、画像の歪みを補正する画素値補正手段としての歪み補正処理部１２５、これらの補正処理後の輝度画像データから視差画像を得るために各撮像部１１０Ａ，１１０Ｂでそれぞれ撮像した撮像画像間の対応画像部分の視差値を演算する視差演算部１２１などで構成される。
【００１４】
ここでいう視差値とは、各撮像部１１０Ａ，１１０Ｂでそれぞれ撮像した撮像画像の一方を基準画像、他方を比較画像とし、撮像領域内の同一点（同一対象物上の同じ箇所）に対応した基準画像上の画像部分（単位画像領域）に対する比較画像上の画像部分（単位画像領域）の位置ズレ量を、当該画像部分の視差値として算出したものである。三角測量の原理を利用することで、この視差値から当該画像部分に対応した撮像領域内の当該同一点までの距離を算出することができる。
【００１５】
図４（ａ）及び（ｂ）は、２つの撮像部１１０Ａ，１１０Ｂでそれぞれ撮像した撮像画像の一例をそれぞれ示す説明図である。
図４（ａ）及び（ｂ）に示す例では、２つの撮像部１１０Ａ，１１０Ｂで互いに異なる方向から同じ撮像領域を撮像し、これにより得られる２つの撮像画像のうちの一方（図４（ａ）に示す画像）を基準画像とし、他方（図４（ｂ）に示す画像）を比較画像としている。そして、基準画像内のある単位画像領域を含む画像ブロックが比較画像内のどの画像ブロックに対応するかを検索する。例えば、基準画像内の画像ブロックＷａに対応する比較画像内の画像ブロックを検索する際、縦方向位置は画像ブロックＷａの縦方向位置と同じ位置に固定したまま、横方向位置を変化させて、比較画像内を、Ｗｂ１→Ｗｂ２→Ｗｂ３・・・というように検索していく。そして、この検索を行いながら基準画像と比較画像との間の相関演算を行い、相関値が最も高くなる画像ブロックを検出して、撮像領域内の同一点に対応する対応点を基準画像及び比較画像の両方で特定するマッチング処理を行う。
【００１６】
図５は、一般的な測距原理を示す説明図である。
マッチング処理により、基準画像内の画像ブロックＷａに対応する比較画像内の画像ブロックＷｂ３が特定されたら、撮像領域内の同一点に対応した各画像ブロックＷａ，Ｗｂ３内の対応点について、基準画像と比較画像とのズレ量を視差値として求める。具体的には、図５に示すように、基準画像内における注目画素の基線方向位置をＸＲとし、比較画像内における対応画素の基線方向位置をＸＬとしたとき、視差値Ｄは、Ｄ＝｜ＸＬ−ＸＲ｜から求めることができる。
【００１７】
なお、マッチング処理により求めた視差値Ｄを用いることで、基準画像内における注目画素に映し出されている撮像領域内の当該同一点（測定対象点）までの距離（基線から測定対象点までの距離）Ｚを、下記の式（１）より算出することができる。なお、下記の式（１）において、「Ｆ」は撮像部１１０Ａ，１１０Ｂの焦点距離であり、「Ｂ」は撮像部１１０Ａ，１１０Ｂ間の基線長である。
Ｚ  ＝  Ｂ  ×  Ｆ  ／  Ｄ  ・・・（１）
【００１８】
画像解析ユニット１０２は、撮像ユニット１０１から出力される輝度画像データや視差画像データを記憶するＲＡＭやＲＯＭ等で構成される記憶手段１２２と、識別対象の認識処理などを行うためのコンピュータプログラムを実行するＣＰＵ（Central Processing Unit）１２３とを備えている。ＣＰＵは、各撮像部１１０Ａ，１１０Ｂの画像センサコントローラの制御および処理ハードウェア部１２０の全体的な制御を担うとともに、他車両やガードレールその他の各種オブジェクト（認識対象物）の認識処理を実行するプログラムをＲＯＭからロードして、ＲＡＭに蓄えられた輝度画像データや視差画像データを入力として各種処理を実行し、その処理結果を外部へと出力する。外部に出力される認識処理結果のデータは、表示ユニット１０３等において警告情報を報知するために使用されたり、車両走行制御ユニット１０６において自車両１００の各種車両制御用アクチュエータの制御（ブレーキ制御、車速制御など）を行うための入力データとして使用されたりする。
【００１９】
図６は、本実施形態の物体認識処理を説明するための処理ブロック図である。
ステレオカメラを構成する２つの撮像部１１０Ａ，１１０Ｂから出力される２つの輝度画像データは画像処理部１３１に出力される。この画像処理部１３１は、輝度画像データに対して輝度補正処理や歪み補正処理などの画像処理を実行するものであり、処理ハードウェア部１２０の輝度補正処理部１２４及び歪み補正処理部１２５によって構成される。
【００２０】
画像処理部１３１は、輝度画像データが入力されると、輝度補正処理部１２４による輝度補正処理を実行した後に、歪み補正処理部１２５による歪み補正処理を実行する。この歪み補正処理は、撮像部１１０Ａ，１１０Ｂにおける光学系の歪みや左右の撮像部１１０Ａ，１１０Ｂの相対的な位置関係から、各撮像部１１０Ａ，１１０Ｂから出力される輝度画像データ（基準画像と比較画像）を、２つのピンホールカメラが平行に取り付けられたときに得られる理想的な平行化ステレオ画像となるように変換する。
【００２１】
このようにして歪み補正処理を行った後、次に、視差演算部１２１によって構成される視差画像生成部１３２において、視差画像データ（視差情報）を生成する視差画像生成処理を行う。視差画像生成処理では、まず、２つの撮像部１１０Ａ，１１０Ｂのうちの一方の撮像部１１０Ａの輝度画像データを基準画像データとし、他方の撮像部１１０Ｂの輝度画像データを比較画像データとし、これらを用いて両者の視差値を演算して、視差画像データを生成して出力する。この視差画像データは、基準画像データ上の各画像部分（単位画像領域）について算出される視差値ｄに応じた画素値をそれぞれの画像部分の画素値として表した視差画像を示すものである。なお、本実施形態における単位画像領域は輝度画像データ上の１画素に相当するが、これに限られない。
【００２２】
具体的には、視差画像生成部１３２は、基準画像データのある行について、一の注目画素（単位画像領域）とその周辺の画素からなる画像ブロックを定義する。ここで、注目画素とともに画像ブロックを構成する周辺画素としては、例えば、注目画素から探索方向（画像右方向）７つ分の画素を用い、注目画素が左端に位置する１画素×８画素の画像ブロックを定義する。画像ブロックの定義方法はこれに限らず、例えば注目画素を中心とする３画素×３画素の画像ブロックを用いてもよい。
【００２３】
一方、比較画像データにおける同じ行において、定義した基準画像データの画像ブロックと同じサイズの画像ブロックを１画素ずつ横ライン方向（Ｘ方向）へずらし、基準画像データにおいて定義した画像ブロックの画素値（輝度値）の特徴を示す特徴量と比較画像データにおける各画像ブロックの画素値の特徴を示す特徴量との相関を示す相関値を、それぞれ算出する。そして、算出した相関値に基づき、比較画像データにおける各画像ブロックの中で最も基準画像データの画像ブロックと相関があった比較画像データの画像ブロックを選定するマッチング処理を行う。その後、基準画像データの画像ブロックの注目画素と、マッチング処理で選定された比較画像データの画像ブロックの対応画素との位置ズレ量を視差値ｄとして算出する。このような視差値ｄを算出する処理を基準画像データの全域又は特定の一領域について行うことで、視差画像データを得ることができる。
【００２４】
マッチング処理に用いる画像ブロックの特徴量としては、例えば、画像ブロック内の各画素値（輝度値）を用いることができ、相関値としては、例えば、ＳＳＤ（Sum of Squared Difference）、ＺＳＳＤ（Zero-mean Sum of Squared Difference）、ＳＡＤ（Sum of Absolute Difference）、ＺＳＡＤ（Zero-mean Sum of Absolute Difference）などの方法を用いることができる。本実施形態では、基準画像データの画像ブロック内の各画素値（輝度値）と、これらの画素にそれぞれ対応する比較画像データの画像ブロック内の各画素値（輝度値）との差分の絶対値の総和であるＳＡＤを相関値として用いて、マッチング処理を行う。この場合、ＳＡＤ値が最も小さくなる画像ブロックが最も相関があると言える。
【００２５】
このようにして視差画像生成処理を行ったら、次に、Ｖマップ生成部１３３において、Ｖマップを生成するＶマップ生成処理を実行する。視差画像データに含まれる各画素データは、ｘ方向位置とｙ方向位置と視差値ｄとの組（ｘ，ｙ，ｄ）で示されるところ、これを、Ｘ軸にｄ、Ｙ軸にｙ、Ｚ軸に頻度を設定して、Ｘ−Ｙの２次元ヒストグラム情報を作成する。これをＶマップと呼ぶ。
【００２６】
具体的に説明すると、Ｖマップ生成部１３３は、視差画像生成部１３２で生成された視差画像データの各行について、視差値頻度分布を計算する。具体例を挙げて説明すると、図７（ａ）に示すような視差値分布をもった視差画像データが入力されたとき、Ｖマップ生成部１３３は、図７（ｂ）に示すような行ごとの視差値頻度分布を計算して出力する。このようにして得られる各行の視差値頻度分布の情報から、Ｙ軸に視差画像上のｙ方向位置（撮像画像の上下方向位置）をとり、Ｘ軸に視差値をとった二次元直交座標系上に、頻度を分布させたＶマップを得ることができる。このＶマップは、頻度に応じた画素値をもつ画素が前記二次元直交座標系上に分布した画像として表現することもできる。
【００２７】
次に、本実施形態では、視差画像生成部１３２が生成したＶマップの情報（視差ヒストグラム情報）から、路面形状検出部１３４において、自車両１００の前方路面の３次元形状を検出する路面形状検出処理を実行する。
例えば、自車両１００の前方路面が相対的に平坦な路面、すなわち、自車両１００の前方路面が自車両１００の真下の路面部分と平行な面を自車両前方へ延長して得られる仮想の延長面に一致している場合、画像の下部に対応するＶマップの下部において、高頻度の点は、画像上方へ向かうほど視差値ｄが小さくなるような傾きをもった略直線状に分布する。このような分布を示す画素は、視差画像上の各行においてほぼ同一距離に存在していてかつ最も占有率が高く、しかも画像上方へ向かうほど距離が連続的に遠くなる認識対象物を映し出した画素であると言える。このような画素は、路面を映し出す画素が持つ特徴に合致するので、路面を映し出している画素であると推定することができる。
【００２８】
路面形状検出部１３４では、このような路面に対応する視差値が示す特徴、すなわち、撮像画像の上方に向かうほど視差値が低くなるという特徴を示すＶマップ上の高頻度の点を直線近似する処理を行う。近似直線の情報が得られたら、次に、路面高さテーブル算出部１３５において、路面高さ（自車両の真下の路面部分に対する相対的な高さ）を算出してテーブル化する路面高さテーブル算出処理を行う。路面形状検出部１３４により生成されたＶマップ上の近似直線の情報から、撮像画像上の各行領域（画像上下方向の各位置）に映し出されている各路面部分までの距離を算出できる。一方、自車両の真下に位置する路面部分をその面に平行となるように自車両進行方向前方へ延長した仮想平面の自車両進行方向における各面部分が、撮像画像中のどの各行領域に映し出されるかは予め決まっており、この仮想平面はＶマップ上で直線（基準直線）により表される。路面形状検出部１３４から出力される近似直線を基準直線と比較することで、自車両前方の各路面部分の高さを得ることができる。簡易的には、路面形状検出部１３４から出力される近似直線上のＹ軸位置から、これに対応する視差値から求められる距離だけ自車両前方に存在する路面部分の高さを算出できる。路面高さテーブル算出部１３５では、近似直線から得られる各路面部分の高さを、必要な視差範囲についてテーブル化する。
【００２９】
次に、Ｕマップ生成部１３６について説明する。Ｕマップ生成部１３６では、Ｕマップを生成するＵマップ生成処理を実行する。視差画像データに含まれる各画素データにおけるｘ方向位置とｙ方向位置と視差値ｄとの組（ｘ，ｙ，ｄ）を、Ｘ軸にｘ、Ｙ軸にｄ、Ｚ軸に頻度を設定して、Ｘ−Ｙの２次元ヒストグラム情報を作成する。これをＵマップと呼ぶ。本実施形態のＵマップ生成部１３３では、路面からの高さＨが所定の高さ範囲（たとえば２０ｃｍから５ｍ）にある視差画像の点（ｘ，ｙ，ｄ）についてだけＵマップを作成する。この場合、路面から当該所定の高さ範囲に存在する物体を適切に抽出することができる。
【００３０】
例えば、路面の左右両側にガードレールが存在し、他車両としては、先行車両と対向車両がそれぞれ１台ずつ存在する場合、Ｕマップにおいては、左右のガードレールに対応する高頻度の点は、左右両端側から中央に向かって上方へ延びるような略直線状に分布する。一方、他車両に対応する高頻度の点は、左右のガードレールの間で、Ｘ軸方向に略平行に延びる線分の状態で分布する。
【００３１】
次に、孤立領域検出部１３７について説明する。孤立領域検出部１３７では、Ｕマップ生成部１３６で生成されたＵマップの情報から、まず、Ｕマップの平滑化処理を行った後、二値化処理を行う。その後、値のある座標のラベリングを行い、孤立領域を検出する。以下、それぞれの処理について説明する。
【００３２】
視差値には計算誤差等もあって分散があり、視差値がすべての画素について計算されているわけではないので、実際のＵマップは、ノイズを含んでいる。そのため、ノイズを除去するためと、認識対象物（オブジェクト）を識別しやすくするため、Ｕマップを平滑化する処理を行う。この平滑化処理では、画像の平滑化と同様に、平滑化フィルタ（たとえば３×３画素の単純平均）を頻度値に対して適用する。これにより、ノイズと考えられるようなＵマップ上の地点の頻度が減少し、認識対象物（オブジェクト）の地点では頻度が周囲よりも高いグループとなる。その結果、後段の処理において孤立領域の検出を容易になる。
【００３３】
次に、このように平滑化されたＵマップの情報から、Ｕマップ上において頻度が周囲より高い孤立領域を検出する。この検出では、Ｕマップをまず二値化する処理を行う。この二値化処理には、例えば、特許第４０１８３１０号公報などに開示されている適応二値化方法を用いることができる。各認識対象物（オブジェクト）は、その高さ、形状、背景とのコントラスト差などに違いがあるので、各認識対象物にそれぞれ対応する孤立領域は、頻度値が大きいものもあれば小さいものもある。そのため、単一の閾値による二値化では適切に検出できない孤立領域が発生するおそれがある。これを防ぐためにも、上述した適応二値化方法を用いるのが好ましい。なお、二値化は、頻度の高い領域を「１」（黒）とし、頻度の低い領域を「０」（白）とする。
【００３４】
このように二値化処理で「１」の値（黒）をもつ地点（頻度値が二値化閾値より高い座標）をその連結性に基づいてラベリングし、同一ラベルが付いた領域を１つの孤立領域として検出する。
【００３５】
このようにして得られる各孤立領域について、その幅（Ｕマップ上のＸ軸方向長さ）と、その孤立領域内の最小視差値ｄから計算される当該孤立領域に映し出されている認識対象物（オブジェクト）と自車両との距離ｚとを用い、当該孤立領域に対応する画像領域に映し出されている物体の幅Ｗを計算することができる。この物体の幅Ｗが、予め決められた範囲内にある孤立領域を、オブジェクト候補領域として決定する。
【００３６】
次に、視差画像の対応領域検出部１３８について説明する。
前記孤立領域検出部１３７によりオブジェクト候補領域として決定された孤立領域について、当該孤立領域が内接する矩形領域を設定したとき、この矩形領域の幅（Ｕマップ上のＸ軸方向長さ）は、当該孤立領域に対応する認識対象物（オブジェクト）の幅に対応する。また、設定した矩形領域の高さは、当該孤立領域に対応する認識対象物（オブジェクト）の奥行き（自車両進行方向長さ）に対応している。一方で、各孤立領域に対応する認識対象物（オブジェクト）の高さについては、この段階では不明である。視差画像の対応領域検出部１３８は、オブジェクト候補領域に係る孤立領域に対応したオブジェクトの高さを得るために、当該孤立領域に対応する視差画像上の対応領域を検出する。
【００３７】
具体的には、視差画像の対応領域検出部１３８は、孤立領域検出部１３７から出力される孤立領域の情報に基づき、当該孤立領域の幅すなわちＸ軸方向座標がｘｍｉｎからｘｍａｘまでの範囲（検出幅）について、視差画像を所定のＹ軸方向範囲について走査し、当該孤立領域に設定されたＵマップ上での矩形領域の高さすなわちＵマップＹ軸方向座標（視差値）がｄｍｉｎからｄｍａｘまでの範囲の値を視差値とする画素を候補画素として抽出する。このときの走査範囲（視差画像のＹ軸方向範囲）は、例えば、視差画像上端から視差画像１／６だけ下の位置から、視差画像下方に向けて、最大視差ｄｍａｘから得られる路面までの範囲とすることができる。
【００３８】
このようにして抽出した候補画素群の中で、前記検出幅に対して視差画像Ｘ軸方向に所定の数以上の候補画素が存在する横方向ラインを、オブジェクト候補ラインとして決定する。次に、縦方向走査して、ある注目しているオブジェクト候補ラインの周囲に他のオブジェクト候補ラインが所定の密度以上で存在している場合、その注目しているオブジェクト候補ラインをオブジェクトラインとして判定する。
【００３９】
オブジェクト領域抽出部１３９は、各孤立領域に対応する各検出幅について、このようにして判定されたオブジェクトラインを探索し、これにより検出されたオブジェクトライン群の外接矩形を、視差画像上のオブジェクト領域として決定する。
【００４０】
次に、オブジェクトタイプ分類部１４０について説明する。
前記オブジェクト領域抽出部１３９で抽出されるオブジェクト領域の高さから、そのオブジェクト領域に対応する画像領域に映し出されている認識対象物（オブジェクト）の実際の高さを計算できる。同様に、オブジェクト領域抽出部１３９で抽出されるオブジェクト領域の幅から、そのオブジェクト領域に対応する画像領域に映し出されている認識対象物（オブジェクト）の実際の幅を計算できる。また、当該オブジェクト領域に対応する画像領域に映し出されている認識対象物（オブジェクト）の奥行きは、当該オブジェクト領域に対応した孤立領域内の最大視差値ｄｍａｘと最小視差値ｄｍｉｎから計算することができる。
【００４１】
オブジェクトタイプ分類部１４０は、このようにして計算できるオブジェクト領域に対応するオブジェクトの高さ、幅、奥行きの情報から、そのオブジェクトタイプの分類を行う。具体的には、オブジェクトタイプの分類を行うためのテーブルデータと比較して、自車両前方に存在する認識対象物（オブジェクト）が、歩行者なのか、自転車なのか、小型車なのか、トラックなどか等を区別して認識することが可能となる。
【００４２】
次に、３次元位置決定部１４１について説明する。
３次元位置決定部１４１では、検出されたオブジェクト領域に対応するオブジェクトまでの距離や、視差画像の画像中心と視差画像上のオブジェクト領域の中心との画像上の距離も把握されることから、オブジェクトの３次元位置を決定する。
【００４３】
次に、ガードレール検出部１４２について説明する。
路面の側方などに設置される側壁やガードレールは、一般に、路面から３０〜１００ｃｍの範囲内に存在するので、ガードレール検出処理の対象範囲として、この範囲に対応するＵマップ内の領域を選定する。その後、この対象範囲について、Ｕマップの頻度に重み付けを行い、Ｈｏｕｇｈ変換して近似直線を検出し、この近似直線からガードレールを検出する。
【００４４】
次に、本発明の特徴部分である、視差演算処理について詳しく説明する。
図１は、本実施形態に係る視差演算部１２１によって構成される視差画像生成部１３２内の機能ブロック図である。
本実施形態における視差画像生成部１３２において、画像処理部１３１により輝度補正処理や歪み補正処理部１２５がなされた基準画像データと比較画像データは、平坦度判定部１３２Ａに入力される。
【００４５】
平坦度判定部１３２Ａでは、基準画像データ及び比較画像データの各画素値について、当該画素の画素値（輝度値）とその周辺に位置する周辺画素の画素値との差が規定値以下であるか否かを示す平坦度を算出する。具体的には、例えば、図８に示すように、平坦度を算出する対象画素Ｅを中心とした３画素×３画素内の８つの周辺画素Ａ，Ｂ，Ｃ，Ｄ，Ｆ，Ｇ，Ｈ，Ｉを用いて平坦度を算出する。このとき、例えば、対象画素Ｅの画素値と各周辺画素Ａ，Ｂ，Ｃ，Ｄ，Ｆ，Ｇ，Ｈ，Ｉの画素値との差分値をそれぞれ算出したい結果がいずれも所定の規定値以下である場合には平坦度を「１」とし、そうでない場合には平坦度を「０」とする。このようにして平坦度判定部１３２Ａが算出した各画素の平坦度は、画素値補正手段としての輝度ノイズ除去部１３２Ｂに送られる。
【００４６】
輝度ノイズ除去部１３２Ｂでは、平坦度判定部１３２Ａからの平坦度に応じて、基準画像データ及び比較画像データ中のノイズを既知のノイズ除去フィルタによって除去するノイズ除去処理を実行する。具体的には、平坦度が「１」である画素に対しては、ＥＭＩ（Electro-Magnetic Interference）などの電磁波ノイズなどによるノイズを除去するノイズ除去処理を実行し、平坦度が「０」である画素に対してはノイズ除去処理を実行しない。このとき、平坦度が「０」である画素に対しては、エッジ強調処理などの画像処理を実行してもよい。なお、平坦度判定部１３２Ａの処理負荷が大きい場合には、リアルタイム処理を優先して、前回の撮像フレームにおける基準画像データ及び比較画像データについての平坦判定値が輝度ノイズ除去部１３２Ｂに入力されるようにしてもよい。
【００４７】
ノイズ除去の方法としては、例えば、図８に示したような平坦判定対象の対象画素Ｅを中心とした３画素×３画素内の８つの周辺画素Ａ，Ｂ，Ｃ，Ｄ，Ｆ，Ｇ，Ｈ，Ｉを用いて、以下のような式（２）から当該対象画素Ｅの画素値を補正する方法が挙げられる。
Ｅ＝（Ａ＋２×Ｂ＋Ｃ＋２×Ｄ＋４×Ｅ＋２×Ｆ＋Ｇ＋２×Ｈ＋Ｉ）÷１６  ・・・（２）
【００４８】
このようにして輝度ノイズ除去部１３２Ｂでノイズ除去処理がなされた基準画像データ及び比較画像データは、視差値算出部１３２Ｃに送られる。この視差値算出部１３２Ｃでは、上述したマッチング処理を行って、各画素の視差値を算出する。すなわち、基準画像データの全域又は特定の一領域について、基準画像データ内の注目画素を含む画像ブロックＷａとの間でＳＡＤ値が最も小さくなる画像ブロックＷｂを比較画像データ内から特定するマッチング処理を行い、特定した比較画像データの画像ブロックＷｂの対応画素と基準画像データの注目画素との位置ズレ量を視差値ｄとして算出する。
【００４９】
本実施形態の画像ブロックは、上述したとおり、注目画素が左端に位置する１画素×８画素の画像ブロックＷａで定義され、当該注目画素と同じ位置である比較画像内の画素を左端にもった画像ブロックＷｂ１から順に、所定の探索方向へ１画素ずつ画像ブロックＷｂ１，Ｗｂ２，Ｗｂ３，・・・をずらし、各画像ブロックＷｂ１，Ｗｂ２，Ｗｂ３，・・・のＳＡＤ値を算出する。
【００５０】
下記の表１は、画像ブロックＷｂ１〜Ｗｂ８までのＳＡＤ値の一例を示す表である。
【表１】
2016173248.tif 000003
【００５１】
前記表１の例において、ＳＡＤ値が最も小さいのは画像ブロックＷｂ７であり、視差値算出部１３２Ｃは、この画像ブロックＷｂ７の対応画素と当該注目画素との視差値ｄをそのまま算出してもよい。しかしながら、この画像ブロックＷｂ７のＳＡＤ値と他の画像ブロックのＳＡＤ値との差が、誤差に相当する僅かな差である場合、その画像ブロックＷｂ７が注目画素に対応する対応画素を含んだものではないマッチングミスが生じている可能性が高い。この場合、その視差値の信頼性は低いものと言える。
【００５２】
そこで、本実施形態においては、信頼性の低い視差値が算出されるのを防止するために、視差値算出部１３２Ｃは、算出した視差値の信頼度を算出し、その信頼度とともに視差値を、信頼度判定部１３２Ｄへ送る。ここで、信頼度は、視差値の信頼性を示すものであればどのようなものでもよいが、本実施形態では、ＳＡＤ値が最も小さい画像ブロックのＳＡＤ値と、その画像ブロックに対して２画素分ずれた画像ブロックのＳＡＤ値との比較結果を信頼度として用いる。具体的には、前記表１の例で言えば、ＳＡＤ値が最も小さい画像ブロックＷｂ７のＳＡＤ値である「５５」と、その画像ブロックＷｂに対して２画素分ずれた画像ブロックＷｂ５のＳＡＤ値である「８５」との差分値を、信頼度として用いる。この場合、信頼度は「３０」となる。
【００５３】
信頼度判定部１３２Ｄは、このようにして算出される信頼度と視差値とを視差値算出部１３２Ｃから受け取ると、その信頼度が信頼度判定値を超えているか否かを判定する。信頼度判定値が「１０」である場合、前記表１の例では信頼度が「３０」であるため、この信頼度判定値「１０」を超えている。よって、この場合、その視差値の信頼性は高いものと判断され、その視差値についてはそのまま後段の周辺補完処理部１３２Ｆへ出力される。一方、信頼度が信頼度判定値以下である視差値については、信頼度が低いため、その視差値を後段の周辺補完処理部１３２Ｆへ出力する代わりに、ブランク値又はエラー値を出力する。
【００５４】
このようにして信頼度判定部１３２Ｄから出力される視差値は、信頼性の低い視差値が除外されたものとなるが、信頼性が低いと判定された視差値の中には、マッチングミスが生じていない適切な視差値を示しているものも含まれる。特に、輝度値に差が出ないような被写体部分を映し出す画像部分については、その画像部分に含まれる画像ブロック内の画素値（輝度値）がほぼ一様で特徴の無いものとなるため、いずれの画像ブロックＷｂ１〜Ｗｂ８のＳＡＤ値も近い値を取ることになる。この場合、信頼度（ＳＡＤ値の差分値で示される信頼度）が小さい視差値であっても、画像ブロック内の画素値（輝度値）に一定の特徴が存在する画像部分と比べて、適切な視差値が算出されている可能性が高い。
【００５５】
下記の表２は、画像ブロックＷｂ１〜Ｗｂ８までのＳＡＤ値の他の例を示す表である。この例は、輝度値に差が出ないような被写体部分を映し出す画像部分についての例である。
【表２】
2016173248.tif 000004
【００５６】
前記表２に示す例では、上述した表１の例と比べて、いずれの画像ブロックＷｂ１〜Ｗｂ８のＳＡＤ値も近い値を取っている。この例において、ＳＡＤ値が最も小さいのは画像ブロックＷｂ６であるが、その信頼度は、当該画像ブロックＷｂ６のＳＡＤ値である「５２」と、その画像ブロックＷｂに対して２画素分ずれた画像ブロックＷｂ４のＳＡＤ値である「５８」との差分値である「６」、若しくは、その画像ブロックＷｂに対して２画素分ずれた画像ブロックＷｂ８のＳＡＤ値である「６０」との差分値である「８」となる。いずれの差分値を信頼度として用いたとしても、上述した信頼度判定値である「１０」を超えていないので、当該注目画素についての視差値はブランク値又はエラー値として出力されることになる。
【００５７】
そこで、本実施形態では、ＳＡＤ値の差で示される信頼度が小さい場合でも適切な視差値が算出されている可能性が高い画像部分（輝度値に差が出ないような被写体部分を映し出す画像部分）については、信頼度判定値を下げて、その視差値がブランク値又はエラー値にならないようにする。具体的には、信頼度判定値変更部１３２Ｅにおいて、上述した平坦度判定部１３２Ａが算出した平坦度を利用してこのような画像部分であるかどうかを判断し、このような画像部分であればその信頼度判定値を下げる処理を行う。
【００５８】
詳しくは、信頼度判定値変更部１３２Ｅは、平坦度判定部１３２Ａから受け取った平坦度に基づき、注目画像を含む画像ブロックＷａのすべての画素の平坦度がすべて「１」であるという画素値平坦条件を満たすか否かを判断する。このとき、画素値平坦条件を満たさなければ、通常どおり、当該注目画像の視差値について信頼度判定部１３２Ｄが用いる信頼度判定値を「１０」に設定する。一方、画素値平坦条件を満たす場合には、当該注目画像の視差値について信頼度判定部１３２Ｄが用いる信頼度判定値を「５」に設定する。なお、画素値平坦条件は、これに限らず、例えば注目画像を含む画像ブロックＷａ内に平坦度が「１」である画素が例えば３回連続するという条件や、比較画像中の画像ブロックＷｂについての平坦度も利用した条件であってもよい。
【００５９】
このように、本実施形態では、信頼度判定値変更部１３２Ｅにおいて画素値平坦条件を満たすと判断された場合、信頼度判定部１３２Ｄで用いられる信頼度判定値が下げられる結果、前記表２の例のように、信頼度が「１０」以下である視差値についても視差値が算出されることになり、ブランク値又はエラー値になっていた視差値を補完することができる。
【００６０】
このようにして信頼度判定部１３２Ｄから出力される視差値の中には、未だ、ブランク値又はエラー値を示すものが存在する。その原因は、種々考えられるが、その１つにハードウェアエラーに起因するものが挙げられる。ここでいうハードウェアエラーとは、局所的に誤った視差値を生じさせるものであり、そのエラーを検出できるようなものである。
【００６１】
ハードウェアエラーの具体例としては、例えば、１ビットソフトエラーが挙げられる。１ビットソフトエラーとは、放射性粒子によって生じるメモリ内のビット状態が変化してしまう不具合であり、いつ発生するのかを予測することができないものである。本実施形態において、信号処理部１１５Ａ，１１５Ｂは、フレームメモリへのデータ入出力時にチェックサム処理を行って１ビットソフトエラーの発生をチェックしている。信号処理部１１５Ａ，１１５Ｂが１ビットソフトエラーの発生を検出した場合、その検出情報が処理ハードウェア部１２０へ送られる。本実施形態では、撮像ユニット１０１の信号処理部１１５Ａ，１１５Ｂから送られてくる１ビットソフトエラーの検出情報をハードウェアエラー検出部１３２Ｇで取得する。これにより、１ビットソフトエラーが発生した画素を特定することができる。
【００６２】
また、ハードウェアエラーの具体例としては、例えば、撮像部１１０Ａ，１１０Ｂの画像センサ１１３Ａ，１１３Ｂ上の受光素子が故障する画素欠陥も考えられる。この場合、その受光素子に対応する画素値は常にゼロ又はエラー値を示すものとなる。画像解析ユニット１０２は、この画素欠陥を検出したら、画像センサ１１３Ａ，１１３Ｂの画素欠陥エラーを示す画素欠陥情報を処理ハードウェア部１２０へ出力する。この画素欠陥情報がハードウェアエラー検出部１３２Ｇで取得されることにより、画素欠陥が発生した画素を特定することができる。
【００６３】
このようなハードウェアエラーを検出したハードウェアエラー検出部１３２Ｇは、そのハードウェアエラー検出結果を周辺補完処理部１３２Ｆへ送る。周辺補完処理部１３２Ｆは、このハードウェアエラー検出結果から特定される画素について、その周辺に位置する周辺画素の視差値を用いて補正する周辺視差値補正処理を実行する。具体的には、例えば、図８に示したような補完対象の対象画素Ｅを中心とした３画素×３画素内の８つの周辺画素Ａ，Ｂ，Ｃ，Ｄ，Ｆ，Ｇ，Ｈ，Ｉを用いて、以下のような式（３）から当該対象画素Ｅの画素値を補正する方法が挙げられる。
Ｅ＝（Ａ＋２×Ｂ＋Ｃ＋２×Ｄ＋２×Ｆ＋Ｇ＋２×Ｈ＋Ｉ）÷１２  ・・・（３）
【００６４】
周辺補完処理部１３２Ｆにおける周辺視差値補正処理により、ハードウェアエラーに起因してブランク値又はエラー値を示す画素について視差値が補完されるか、ハードウェアエラーに起因して不適切な視差値を示す画素について視差値が補正される。
【００６５】
このようにして周辺補完処理部１３２Ｆから出力される視差値の中には、未だ、ブランク値又はエラー値を示すものが存在することがある。その原因は、これまでの補正処理、すなわち、輝度補正処理部１２４による輝度補正処理、歪み補正処理部１２５による歪み補正処理、輝度ノイズ除去部１３２Ｂによるノイズ除去処理、信頼度判定値変更部１３２Ｅによる信頼度判定部１３２Ｄの信頼度判定値を低下させる判定値低下処理、周辺補完処理部１３２Ｆによる周辺視差値補正処理では、解消することができていない原因である。このような原因としては、短時間だけ誤った視差値を生じさせる短時間エラーを原因にするものが挙げられる。具体的には、例えば、対向車両のヘッドランプ等の強い光が瞬間的に撮像ユニット１０１に入射し、基準画像や比較画像の画素値が飽和してしまう場合である。
【００６６】
そこで、本実施形態では、フレーム間補完処理部１３２Ｈにおいて、短時間の視差値エラーが発生している画素について、その撮像フレームよりも前に撮像された正常な視差値が算出されている過去の撮像フレームの視差値を用いて補正する時間差補正処理を実行する。具体的には、最も簡単な方法としては、短時間の視差値エラーが発生している画素の視差値として、同じ画素位置における当該過去の撮像フレームの視差値を補完する方法である。ただし、自車両１００が走行している場合、短時間の視差値エラーが発生している画素に対応する撮像領域内の地点が、過去の撮像フレームでは別の画素に対応していることがあるので、自車両１００の車速や過去の撮像フレームとの時間差などを考慮し、必要に応じて、過去の撮像フレームにおける別の画素位置の視差値を利用して時間差補正処理を実行してもよい。
【００６７】
なお、以上の説明では、本発明に係る視差値演算装置を利用した物体認識装置を車載機器制御システムに適用した例であったが、これに限られない。例えば、本発明に係る視差値演算装置を利用した物体認識装置を、ＦＡ（Factory Automation）に適用した場合、工場ラインを流れるパーツを当該物体認識装置で認識し、その認識結果に基づいて、流れてくるパーツをマニピュレータ装置等によりピッキングする制御に利用できる。
【００６８】
以上に説明したものは一例であり、本発明は、次の態様毎に特有の効果を奏する。
（態様Ａ）
撮像領域を撮像する複数の撮像部１１０Ａ，１１０Ｂで撮像した基準画像データ及び比較画像データ等の複数の撮像画像データ間における視差値を１画素等の単位画像領域ごとに算出する視差値算出部１３２Ｃ、信頼度判定部１３２Ｄ等の視差値算出手段を備えた視差値演算装置において、互いに異なる複数の視差値エラー条件のうちの少なくとも１つの視差値エラー条件を満たす単位画像領域の視差値を、該複数の視差値エラー条件ごとに異なる複数の補正処理のうち該少なくとも１つの視差値エラー条件に対応する補正処理を用いて補正する信頼度判定値変更部１３２Ｅ、周辺補完処理部１３２Ｆ、フレーム間補完処理部１３２Ｈ等の視差値補正手段を有することを特徴とする。
本態様によれば、補正対象となる単位画像領域の視差値（エラー値やブランク値を含む。）は、互いに異なる複数の視差値エラー条件のうち、少なくとも１つの視差値エラー条件を満たすものである。よって、これらの視差値エラー条件として、視差値エラーを引き起こすエラー原因をそれぞれ特定可能な条件に設定すれば、補正対象となる単位画像領域の視差値を、エラー原因ごとに区別することができる。そして、本態様では、複数の視差値エラー条件ごとに異なる複数の補正処理があり、補正対象となる単位画像領域の視差値については、その単位画像領域が満たした視差値エラー条件に対応する補正処理を用いて補正がなされる。よって、補正対象となる単位画像領域の視差値を、そのエラー原因に対応した適切な補正処理により補正することが可能となる。なお、ここでいう補正処理は、視差値算出手段により算出された視差値をより適切な視差値に補正するだけでなく、視差値算出手段により視差値が算出されなかった単位画像領域の視差値を補完することも含む。
【００６９】
（態様Ｂ）
前記態様Ａにおいて、前記複数の補正処理は、補正対象となる単位画像領域の視差値について、該単位画像領域の周辺に位置する周辺単位画像領域の視差値を用いて補正する周辺視差値補正処理を含むことを特徴とする。
これによれば、局所的に誤った視差値（エラー値やブランク値を含む。）を、その周辺単位画像領域の正常な視差値によって推定される視差値で補正あるいは補完することができる。周辺単位画像領域の視差値が正常であれば、局所的に誤った視差値を適切に補正することができる。
【００７０】
（態様Ｃ）
前記態様Ｂにおいて、局所的に誤った視差値を生じさせる１ビットソフトエラーや画素欠陥等のハードウェアエラーを検出するハードウェアエラー検出部１３２Ｇ等のエラー検出手段を有し、前記複数の視差値エラー条件は、前記エラー検出手段が検出したハードウェアエラーに対応した単位画像領域であるというハードウェアエラー条件を含み、前記周辺視差値補正処理は、前記ハードウェアエラー条件に対応する補正処理であることを特徴とする。
これによれば、ハードウェアエラーに起因して局所的に誤った視差値（エラー値やブランク値を含む。）が生じた場合、これを周辺視差値補正処理により補正、補完することができる。このようなハードウェアエラーに起因した局所的な視差値エラーは、その周辺単位画像領域の視差値は正常であることが多い。よって、ハードウェアエラーに起因して局所的に誤った視差値を適切に補正することができる。
【００７１】
（態様Ｄ）
前記態様Ａ〜Ｃのいずれかの態様において、前記視差値算出手段は、単位画像領域ごとに視差値の信頼度を導出し、導出した信頼度が所定の信頼度閾値を超えている視差値については当該単位画像領域の視差値として算出し、導出した信頼度が該所定の信頼度閾値以下である視差値については当該単位画像領域の視差値として算出しないものであり、前記複数の視差値エラー条件は、前記複数の撮像画像データの少なくとも一方における単位画像領域の画素値と該単位画像領域の周辺に位置する周辺単位画像領域の画素値との差が規定値以下であるという画素値平坦条件を含み、前記複数の補正処理は、前記画素値平坦条件に対応する補正処理として、前記所定の信頼度閾値を下げる閾値低下処理を含むことを特徴とする。
信頼度が低い視差値は、視差値がブランク値やエラー値である場合よりも、かえって後段の処理において問題を引き起こすことがある。そのため、導出した信頼度が所定の信頼度閾値以下である信頼性の低い視差値については算出しないものとすることで、後段の処理において問題を引き起こすのを回避することができる。ただし、画素値の差が少ない画素値平坦条件を満たすような画像部分においては、信頼性が低いと判定される場合でも適切な視差値を示している場合も多い。本態様によれば、画素値の差が少ない画素値平坦条件を満たすような画像部分については、所定の信頼度閾値を下げる閾値低下処理が行われる結果、信頼性が低いと判定されても、視差値算出手段において所定の信頼度閾値を超えていると判断されて、その視差値が算出される。
【００７２】
（態様Ｅ）
前記態様Ａ〜Ｄのいずれかの態様において、前記複数の補正処理は、補正対象となる単位画像領域の視差値を、該視差値を算出した複数の撮像画像データの撮像時期よりも前及び後の少なくとも一方の時期に撮像した複数の撮像画像データ間における視差値を用いて補正する時間差補正処理を含むことを特徴とする。
これによれば、短時間だけ誤った視差値（エラー値やブランク値を含む。）が算出される場合、当該視差値を、撮像時期が異なる撮像画像データに基づく視差値により適切に補正あるいは補完することができる。
【００７３】
（態様Ｆ）
前記態様Ｅにおいて、前記複数の視差値エラー条件は、短時間だけ誤った視差値を生じさせる単位画像領域であるという短時間エラー条件を含み、前記時間差補正処理は、前記短時間エラー条件に対応する補正処理であることを特徴とする。
これによれば、瞬間的な強い外乱光が撮像手段に入射するなどして、短時間だけ誤った視差値を生じた場合、これを時間差補正処理により適切に補正、補完することができる。
【００７４】
（態様Ｇ）
前記態様Ａ〜Ｆのいずれかの態様において、前記複数の撮像画像データにおける画素値を補正する輝度補正処理部１２４、歪み補正処理部１２５、輝度ノイズ除去部１３２Ｂ等の画素値補正手段を有し、前記視差値算出手段は、前記画素値補正手段によって補正された後の複数の撮像画像データ間における視差値を単位画像領域ごとに算出することを特徴とする。
これによれば、視差値算出手段により視差値を算出する前段階で、視差値エラーを生じさせる原因の一部を撮像画像データから取り除くことができる。よって、より適切な視差値を算出することが可能となる。
【００７５】
（態様Ｈ）
撮像領域を撮像する複数の撮像部１１０Ａ，１１０Ｂを備えた撮像ユニット１０１等の撮像手段と、前記複数の撮像部で撮像した複数の撮像画像データ間における視差値を単位画像領域ごとに演算する処理ハードウェア部１２０等の視差値演算装置と、前記視差値演算装置が演算した視差値に基づいて撮像領域内の認識対象物を認識する画像解析ユニット１０２等の認識処理手段とを有する物体認識装置において、前記視差値演算装置として、前記態様Ａ〜Ｇのいずれかの態様に係る視差値演算装置を用いたことを特徴とする。
本態様によれば、適切に演算された視差値に基づいて認識対象物の認識処理を行うことができ、誤認識の少ない認識処理を実現できる。
【００７６】
（態様Ｉ）
自車両１００等の移動体の周囲に存在する他車両、歩行者、ガードレール等の認識対象物を認識する物体認識装置と、前記物体認識装置の認識結果に基づいて、移動体に搭載された所定の機器を制御する車両走行制御ユニット１０６等の移動体機器制御手段とを備えた移動体機器制御システムにおいて、前記物体認識装置として、前記態様Ｈに係る物体認識装置を用いたことを特徴とする。
本態様によれば、誤認識の少ない認識処理に基づいて移動体搭載機器を制御できる。
【００７７】
（態様Ｊ）
撮像領域を撮像する複数の撮像部で撮像した複数の撮像画像データ間における視差値を演算する視差値演算装置のコンピュータを機能させる視差演算用プログラムであって、前記複数の撮像画像データ間における視差値を単位画像領域ごとに算出する視差値算出手段、及び、互いに異なる複数の視差値エラー条件のうちの少なくとも１つの視差値エラー条件を満たす単位画像領域の視差値を、該複数の視差値エラー条件ごとに異なる複数の補正処理のうち該少なくとも１つの視差値エラー条件に対応する補正処理を用いて補正する視差値補正手段として、前記コンピュータを機能させることを特徴とする。
本態様によれば、補正対象となる単位画像領域の視差値（エラー値やブランク値を含む。）は、互いに異なる複数の視差値エラー条件のうち、少なくとも１つの視差値エラー条件を満たすものである。よって、これらの視差値エラー条件として、視差値エラーを引き起こすエラー原因をそれぞれ特定可能な条件に設定すれば、補正対象となる単位画像領域の視差値を、エラー原因ごとに区別することができる。そして、本態様では、複数の視差値エラー条件ごとに異なる複数の補正処理があり、補正対象となる単位画像領域の視差値については、その単位画像領域が満たした視差値エラー条件に対応する補正処理を用いて補正がなされる。よって、補正対象となる単位画像領域の視差値を、そのエラー原因に対応した適切な補正処理により補正することが可能となる。
なお、このプログラムは、ＣＤ−ＲＯＭ等の記録媒体に記録された状態で配布したり、入手したりすることができる。また、このプログラムを乗せ、所定の送信装置により送信された信号を、公衆電話回線や専用線、その他の通信網等の伝送媒体を介して配信したり、受信したりすることでも、配布、入手が可能である。この配信の際、伝送媒体中には、コンピュータプログラムの少なくとも一部が伝送されていればよい。すなわち、コンピュータプログラムを構成するすべてのデータが、一時に伝送媒体上に存在している必要はない。このプログラムを乗せた信号とは、コンピュータプログラムを含む所定の搬送波に具現化されたコンピュータデータ信号である。また、所定の送信装置からコンピュータプログラムを送信する送信方法には、プログラムを構成するデータを連続的に送信する場合も、断続的に送信する場合も含まれる。
【符号の説明】
【００７８】
１００  自車両
１０１  撮像ユニット
１０２  画像解析ユニット
１０３  表示ユニット
１０６  車両走行制御ユニット
１１０Ａ，１１０Ｂ  撮像部
１１３Ａ，１１３Ｂ  画像センサ
１１５Ａ，１１５Ｂ  信号処理部
１２０  処理ハードウェア部
１２１  視差演算部
１２２  記憶手段
１２４  輝度補正処理部
１２５  補正処理部
１３２  視差画像生成部
１３２Ａ  平坦度判定部
１３２Ｂ  輝度ノイズ除去部
１３２Ｃ  視差値算出部
１３２Ｄ  信頼度判定部
１３２Ｅ  信頼度判定値変更部
１３２Ｆ  周辺補完処理部
１３２Ｇ  ハードウェアエラー検出部
１３２Ｈ  フレーム間補完処理部
【先行技術文献】
【特許文献】
【００７９】
【特許文献１】特許第５２３９９４７号公報
【図１】
2016173248.tif 000005
【図２】
2016173248.tif 000006
【図３】
2016173248.tif 000007
【図４】
2016173248.tif 000008
【図５】
2016173248.tif 000009
【図６】
2016173248.tif 000010
【図７】
2016173248.tif 000011
【図８】
2016173248.tif 000012