(57)【要約】【課題】近接した複数の物体を映し出す複数の画像領域が１つの候補領域として誤選別される事態を抑制して、当該物体を適切に検出することを課題とする。【解決手段】撮像領域についての視差画像情報に基づいて、前記撮像画像を左右方向に複数分割して得られる各列領域内における視差値ｄの頻度分布を示す視差ヒストグラム情報（リアル頻度Ｕマップ情報）を生成し、その視差ヒストグラム情報に基づいて、前記撮像画像の左右方向で近接していて、かつ、所定値以上の頻度をもつ視差値の値が近接している画像領域を、検出対象物（オブジェクト）を映し出す検出対象物画像領域の候補領域（孤立領域）として選別することにより、撮像領域内に存在する検出対象物を検出する。当該視差画像上における実空間高さの分布を示す高さ分布情報を用いて、実空間高さが所定の高さ条件を満たす画像領域を前記候補領域として選別する。【選択図】図３
2016206801.tif 000002
【特許請求の範囲】
【請求項１】
撮像領域についての視差画像情報を生成する視差画像情報生成手段と、
前記視差画像情報生成手段が生成した視差画像情報に基づいて、前記撮像画像を左右方向に複数分割して得られる各列領域内における視差値の頻度分布を示す視差ヒストグラム情報を生成する視差ヒストグラム情報生成手段と、
前記視差ヒストグラム情報生成手段が生成した視差ヒストグラム情報に基づいて、前記撮像画像の左右方向で近接していて、かつ、所定値以上の頻度をもつ視差値の値が近接している画像領域を、検出対象物を映し出す検出対象物画像領域の候補領域として選別し、選別した候補領域の中から所定の特定条件に従って検出対象物画像領域を特定する検出対象物画像領域特定手段とを有し、
前記撮像領域内に存在する検出対象物を検出する物体検出装置において、
前記視差画像情報に基づいて、当該視差画像上における実空間高さの分布を示す高さ分布情報を生成する高さ分布情報生成手段を有し、
前記検出対象物画像領域特定手段は、前記高さ分布情報を用いて、実空間高さが所定の高さ条件を満たす画像領域を前記候補領域として選別することを特徴とする物体検出装置。
【請求項２】
請求項１に記載の物体検出装置において、
前記検出対象物画像領域特定手段は、前記視差ヒストグラム情報に基づいて候補領域を仮選別した後、前記高さ分布情報を用いて、仮選別された候補領域を前記所定の高さ条件に従って分離して個別の候補領域として選別するものであり、
前記高さ分布情報生成手段は、前記仮選別された候補領域内における実空間高さの分布を示す高さ分布情報を生成することを特徴とする物体検出装置。
【請求項３】
請求項２に記載の物体検出装置において、
前記高さ分布情報生成手段が生成する高さ分布情報は、前記仮選別された候補領域内における前記各列領域について視差値ごとの実空間上の最大高さの分布を示すものであることを特徴とする物体検出装置。
【請求項４】
請求項１乃至３のいずれか１項に記載の物体検出装置において、
前記所定の高さ条件は、前記撮像画像上の位置の違いによって異なることを特徴とする物体検出装置。
【請求項５】
請求項４に記載の物体検出装置において、
前記所定の高さ条件は、前記撮像画像上の位置の違いによって異なる閾値に対し、当該位置における実空間高さが当該位置における閾値を超えているという条件を含むことを特徴とする物体検出装置。
【請求項６】
請求項１乃至５のいずれか１項に記載の物体検出装置において、
前記検出対象物画像領域特定手段は、所定の領域設定条件に従って設定される前記撮像画像の一部分である高さ選別用画像領域に対しては、前記高さ分布情報を用いて前記候補領域を選別するが、該撮像画像の他の部分に対しては前記高さ分布情報を用いずに前記候補領域を選別することを特徴とする物体検出装置。
【請求項７】
移動体の移動方向前方を撮像領域とし、該撮像領域についての視差画像情報に基づいて、該撮像領域内に存在する検出対象物を検出する物体検出装置と、
前記物体検出装置の検出結果に基づいて、移動体に搭載された所定の機器を制御する移動体機器制御手段とを備えた移動体機器制御システムにおいて、
前記物体検出装置として、請求項１乃至６のいずれか１項に記載の物体検出装置を用いることを特徴とする移動体機器制御システム。
【請求項８】
撮像領域についての視差画像情報を生成する視差画像情報生成手段と、前記視差画像情報生成手段が生成した視差画像情報に基づいて、前記撮像画像を左右方向に複数分割して得られる各列領域内における視差値の頻度分布を示す視差ヒストグラム情報を生成する視差ヒストグラム情報生成手段と、前記視差ヒストグラム情報生成手段が生成した視差ヒストグラム情報に基づいて、前記撮像画像の左右方向で近接していて、かつ、所定値以上の頻度をもつ視差値の値が近接している画像領域を、検出対象物を映し出す検出対象物画像領域の候補領域として選別し、選別した候補領域の中から所定の特定条件に従って検出対象物画像領域を特定する検出対象物画像領域特定手段とを有し、前記撮像領域内に存在する検出対象物を検出する物体検出装置のコンピュータを、前記視差画像情報生成手段、前記視差ヒストグラム情報生成手段、及び、前記検出対象物画像領域特定手段として機能させる物体検出用プログラムであって、
前記視差画像情報に基づいて、当該視差画像上における実空間高さの分布を示す高さ分布情報を生成する高さ分布情報生成手段として、前記コンピュータを機能させるものであり、
前記検出対象物画像領域特定手段は、前記高さ分布情報を用いて、実空間高さが所定の高さ条件を満たす画像領域を前記候補領域として選別することを特徴とする物体検出用プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、物体検出装置、移動体機器制御システム及び物体検出用プログラムに関するものである。
【背景技術】
【０００２】
従来、自動車等の移動体の前方領域（撮像領域）をステレオカメラによって撮像して得られる２つの撮像画像から視差画像情報を取得し、その視差画像情報に基づいて移動体前方領域に存在する他車両等の検出対象物を検出する物体検出装置が知られている。
【０００３】
例えば、特許文献１には、この種の物体検出装置が開示されている。この物体検出装置では、視差画像情報から、撮像画像を左右方向に複数分割して得られる各列領域内における視差値の頻度分布を示す視差ヒストグラム情報（Ｕマップ情報）を生成する。そして、生成した視差ヒストグラム情報に基づいて、撮像画像の左右方向で近接していて、かつ、所定値以上の頻度をもつ視差値の値が近接している画像領域を、検出対象物を映し出す検出対象物画像領域の候補領域として選別する。そして、選別した候補領域に映し出されている物体の実空間上の幅や高さ等を算出し、算出した幅や高さ等とテーブルデータとを比較して、当該候補領域が検出対象物を映し出す検出対象物画像領域であるか否かを判断する。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところが、特許文献１に記載の物体検出装置において、候補領域として選別するにあたり、近接した複数の物体を映し出す複数の画像領域を１つの候補領域（１つの物体を映し出す画像領域）として誤って選別してしまうことがある。例えば、道路脇に存在する壁に寄せて他車両が駐車してある道路を自車両が通過しようとするとき、これらの壁と他車両をそれぞれ映し出す画像領域は、視差ヒストグラム情報において、撮像画像の左右方向で近接していて、かつ、所定値以上の頻度をもつ視差値の値が近接したものとなる。そのため、これらの壁と他車両をそれぞれ映し出す画像領域は１つの候補領域として選別されてしまう。このように、複数の物体を映し出す複数の画像領域が１つの候補領域として選別されると、これらの物体を適切に検出することはできない。
【課題を解決するための手段】
【０００５】
上述した課題を解決するために、本発明は、撮像領域についての視差画像情報を生成する視差画像情報生成手段と、前記視差画像情報生成手段が生成した視差画像情報に基づいて、前記撮像画像を左右方向に複数分割して得られる各列領域内における視差値の頻度分布を示す視差ヒストグラム情報を生成する視差ヒストグラム情報生成手段と、前記視差ヒストグラム情報生成手段が生成した視差ヒストグラム情報に基づいて、前記撮像画像の左右方向で近接していて、かつ、所定値以上の頻度をもつ視差値の値が近接している画像領域を、検出対象物を映し出す検出対象物画像領域の候補領域として選別し、選別した候補領域の中から所定の特定条件に従って検出対象物画像領域を特定する検出対象物画像領域特定手段とを有し、前記撮像領域内に存在する検出対象物を検出する物体検出装置において、前記視差画像情報に基づいて、当該視差画像上における実空間高さの分布を示す高さ分布情報を生成する高さ分布情報生成手段を有し、前記検出対象物画像領域特定手段は、前記高さ分布情報を用いて、実空間高さが所定の高さ条件を満たす画像領域を前記候補領域として選別することを特徴とする。
【発明の効果】
【０００６】
本発明によれば、近接した複数の物体を映し出す複数の画像領域が１つの候補領域として誤選別される事態を抑制して、当該物体を適切に検出することが可能になるという優れた効果が得られる。
【図面の簡単な説明】
【０００７】
【図１】実施形態における車載機器制御システムの概略構成を示す模式図である。
【図２】同車載機器制御システムを構成する撮像ユニットの概略構成を示す模式図である。
【図３】図２における画像処理基板および画像解析ユニットで実現される物体検出処理を説明するための処理ブロック図である。
【図４】オブジェクトデータリストの一例を示す説明図である。
【図５】（ａ）は視差画像の視差値分布の一例を示す説明図である。（ｂ）は、同（ａ）の視差画像の行ごとの視差値頻度分布を示す行視差分布マップ（Ｖマップ）を示す説明図である。
【図６】一方の撮像部で撮像される基準画像の一例を模式的に表した画像例である。
【図７】図６の画像例に対応するＶマップを示す説明図である。
【図８】実施形態における抽出条件を説明するためのＶマップを示す説明図である。
【図９】路面形状検出部内の処理ブロック図である。
【図１０】路面候補点検出部で行う路面候補点検出処理の流れを示すフローチャートである。
【図１１】区分直線近似部で行う区分直線近似処理の流れを示すフローチャートである。
【図１２】一方の撮像部で撮像される基準画像の一例を模式的に表した画像例である。
【図１３】図１２の画像例に対応する頻度Ｕマップを示す説明図である。
【図１４】図１２の画像例に対応する高さＵマップを示す説明図である。
【図１５】図１３に示した頻度Ｕマップに対応するリアル頻度Ｕマップである。
【図１６】孤立領域検出部で行う処理の流れを示すフローチャートである。
【図１７】孤立領域検出部で検出された孤立領域が内接する矩形領域を設定したリアル頻度Ｕマップを示す説明図である。
【図１８】図１７に示したリアル頻度Ｕマップに対応する視差画像を模式的に示した説明図である。
【図１９】オブジェクトライン群の外接矩形を設定した視差画像を示す説明図である。
【図２０】オブジェクトタイプの分類を行うためのテーブルデータの一例を示す表である。
【図２１】道路脇に存在する壁に寄せて他車両が駐車してある状況の基準画像の一例を模式的に表した画像例である。
【図２２】図２１の画像例に対応するリアル頻度Ｕマップを示す説明図である。
【図２３】図２１の画像例に対応するリアル高さＵマップを示す説明図である。
【図２４】実施形態における高さ分離処理の流れを示すフローチャートである。
【図２５】同高さ分離処理における探索範囲の設定方法を説明するための説明図である。
【図２６】同高さ分離処理における壁の探索範囲に対する探索処理の流れを示すフローチャートである。
【図２７】同高さ分離処理における車両の探索範囲に対する探索処理の流れを示すフローチャートである。
【発明を実施するための形態】
【０００８】
以下、本発明に係る物体検出装置を、移動体機器制御システムである車載機器制御システムに用いた一実施形態について説明する。
図１は、本実施形態における車載機器制御システムの概略構成を示す模式図である。
本車載機器制御システムは、移動体である自動車などの自車両１００に搭載された撮像ユニット１０１で撮像した自車両進行方向前方領域（撮像領域）の撮像画像データから検出対象物を検出し、その検知結果を利用して各種車載機器の制御を行う。
【０００９】
本実施形態の車載機器制御システムには、走行する自車両１００の進行方向前方領域を撮像領域として撮像する撮像ユニット１０１が設けられている。この撮像ユニット１０１は、例えば、自車両１００のフロントガラス１０５のルームミラー付近に設置される。撮像ユニット１０１の撮像によって得られる撮像画像データ等の各種データは、画像解析ユニット１０２に入力される。画像解析ユニット１０２は、撮像ユニット１０１から送信されてくるデータを解析して、撮像領域内に存在する他車両等の検出対象物を検出する。
【００１０】
画像解析ユニット１０２の検出結果は、車両走行制御ユニット１０６に送られる。車両走行制御ユニット１０６は、画像解析ユニット１０２が検出した検出結果に基づいて、自車両１００の運転者へ表示モニタ１０３を用いて警告を報知したり、自車両のハンドルやブレーキを制御するなどの走行支援制御を行ったりする。
【００１１】
図２は、撮像ユニット１０１の概略構成を示す模式図である。
撮像ユニット１０１は、撮像手段としての２つの撮像部１１０Ａ，１１０Ｂを備えたステレオカメラを備えており、２つの撮像部１１０Ａ，１１０Ｂは同一のものである。各撮像部１１０Ａ，１１０Ｂは、それぞれ、撮像レンズ１１１Ａ，１１１Ｂと、受光素子が２次元配置された画像センサ１１３Ａ，１１３Ｂと、画像センサコントローラ１１５Ａ，１１５Ｂとから構成されている。画像センサコントローラ１１５Ａ，１１５Ｂは、画像センサ１１３Ａ，１１３Ｂの露光制御、画像読み出し制御、外部回路との通信、画像データの送信等の役割を担う。画像センサコントローラ１１５Ａ，１１５Ｂからは、画像センサ１１３Ａ，１１３Ｂから出力されるアナログ電気信号（画像センサ上の各受光素子が受光した受光量）をデジタル電気信号に変換した撮像画像データ（輝度画像データ）が出力される。
【００１２】
また、撮像ユニット１０１は、２つの撮像部１１０Ａ，１１０Ｂに対してデータバス及びシリアルバスで接続された画像処理基板１２０を備えている。画像処理基板１２０には、ＣＰＵ（Central Processing Unit）、ＲＡＭ、ＲＯＭ、ＦＰＧＡ（Field-Programmable Gate Array）、シリアルＩＦ（インターフェース）、データＩＦなどが設けられている。画像処理基板１２０のデータバスは、２つの撮像部１１０Ａ，１１０Ｂから出力される輝度画像データを画像処理基板１２０上のＲＡＭに転送する。画像処理基板１２０のシリアルバスは、ＣＰＵやＦＰＧＡからのセンサ露光制御値の変更命令、画像読み出しパラメータの変更命令、各種設定データなどの送受信を行う。画像処理基板１２０のＦＰＧＡは、ＲＡＭに保存された画像データに対してリアルタイム性が要求される処理、例えばガンマ補正、ゆがみ補正（左右画像の平行化）、ブロックマッチングによる視差演算を行って視差画像データを生成し、ＲＡＭに書き戻す。ＣＰＵは、路面形状検出処理、オブジェクト検出処理等を実行するためのプログラムをＲＯＭからロードし、ＲＡＭに蓄えられた輝度画像データや視差画像データを入力して、各種処理を実行する。検出された各種データは、データＩＦやシリアルＩＦから外部へ出力される。各種処理の実行に際しては、データＩＦを利用して、適宜、車両の情報（車速、加速度、舵角、ヨーレートなど）を入力し、各種処理のパラメータとして使用する。
【００１３】
次に、本実施形態における物体検出処理について説明する。
図３は、主に画像処理基板１２０上のＣＰＵがプログラムを実行することによってあるいはＦＰＧＡによって実現される物体検出処理を説明するための処理ブロック図である。
ステレオカメラを構成する２つの撮像部１１０Ａ，１１０Ｂからは輝度画像データが出力される。このとき、撮像部１１０Ａ，１１０Ｂがカラーの場合には、そのＲＧＢ信号から輝度信号（Ｙ）を得るカラー輝度変換を、例えば下記の式（１）を用いて行う。
Ｙ  ＝  ０．３Ｒ  ＋  ０．５９Ｇ  ＋  ０．１１Ｂ  ・・・（１）
【００１４】
輝度画像データが入力されると、まず、平行化画像生成部１３１で平行化画像生成処理を実行する。この平行化画像生成処理は、撮像部１１０Ａ，１１０Ｂにおける光学系の歪みや左右の撮像部１１０Ａ，１１０Ｂの相対的な位置関係から、各撮像部１１０Ａ，１１０Ｂから出力される輝度画像データ（基準画像と比較画像）を、２つのピンホールカメラが平行に取り付けられたときに得られる理想的な平行化ステレオ画像となるように変換する。これは、各画素での歪み量を、Δｘ＝ｆ（ｘ，ｙ）、Δｙ＝ｇ（ｘ，ｙ）という多項式を用いて計算し、その計算結果を用いて、各撮像部１１０Ａ，１１０Ｂから出力される輝度画像データ（基準画像と比較画像）の各画素を変換する。多項式は、例えば、ｘ（画像の横方向位置）、ｙ（画像の縦方向位置）に関する５次多項式に基づく。
【００１５】
このようにして平行化画像処理を行った後、次に、ＦＰＧＡ等で構成される視差画像生成部１３２において、視差画像データ（視差画像情報）を生成する視差画像生成処理を行う。視差画像生成処理では、まず、２つの撮像部１１０Ａ，１１０Ｂのうちの一方の撮像部１１０Ａの輝度画像データを基準画像データとし、他方の撮像部１１０Ｂの輝度画像データを比較画像データとし、これらを用いて両者の視差を演算して、視差画像データを生成して出力する。この視差画像データは、基準画像データ上の各画像部分について算出される視差値ｄに応じた画素値をそれぞれの画像部分の画素値として表した視差画像を示すものである。
【００１６】
具体的には、視差画像生成部１３２は、基準画像データのある行について、一の注目画素を中心とした複数画素（例えば１６画素×１画素）からなるブロックを定義する。一方、比較画像データにおける同じ行において、定義した基準画像データのブロックと同じサイズのブロックを１画素ずつ横ライン方向（Ｘ方向）へずらし、基準画像データにおいて定義したブロックの画素値の特徴を示す特徴量と比較画像データにおける各ブロックの画素値の特徴を示す特徴量との相関を示す相関値を、それぞれ算出する。そして、算出した相関値に基づき、比較画像データにおける各ブロックの中で最も基準画像データのブロックと相関があった比較画像データのブロックを選定するマッチング処理を行う。その後、基準画像データのブロックの注目画素と、マッチング処理で選定された比較画像データのブロックの対応画素との位置ズレ量を視差値ｄとして算出する。このような視差値ｄを算出する処理を基準画像データの全域又は特定の一領域について行うことで、視差画像データを得ることができる。
【００１７】
マッチング処理に用いるブロックの特徴量としては、例えば、ブロック内の各画素の値（輝度値）を用いることができ、相関値としては、例えば、基準画像データのブロック内の各画素の値（輝度値）と、これらの画素にそれぞれ対応する比較画像データのブロック内の各画素の値（輝度値）との差分の絶対値の総和を用いることができる。この場合、当該総和が最も小さくなるブロックが最も相関があると言える。
【００１８】
視差画像生成部１３２でのマッチング処理をハードウェア処理によって実現する場合には、例えばＳＳＤ（Sum of Squared Difference）、ＺＳＳＤ（Zero-mean Sum of Squared Difference）、ＳＡＤ（Sum of Absolute Difference）、ＺＳＡＤ（Zero-mean Sum of Absolute Difference）などの方法を用いることができる。なお、マッチング処理では画素単位での視差値しか算出できないので、１画素未満のサブピクセルレベルの視差値が必要な場合には推定値を用いる必要がある。その推定方法としては、例えば、等角直線方式、二次曲線方式等を利用することができる。ただし、このサブピクセルレベルの推定視差値には誤差が発生するので、この推定誤差を減少させるＥＥＣ（推定誤差補正）などを用いてもよい。
【００１９】
次に、オブジェクトトラッキング部１３３は、過去の撮像フレームの画像検出処理で検出されたオブジェクト（検出対象物）を追跡する処理を実行する。
詳しく説明すると、本実施形態においては、過去の画像検出処理で検出されたオブジェクトの情報を示すオブジェクトデータリスト１３５が保存される。オブジェクトデータリスト１３５は、図４に示すように、検出したオブジェクトデータの最新情報（最新の位置、大きさ、距離、相対速度、視差情報）に加え、オブジェクト予測データ（次の撮像フレームにおいて当該オブジェクトがどの位置にいるかを推測する情報）、オブジェクトトラッキング部１３３や後述のオブジェクトマッチング部１４７で利用するオブジェクト特徴量、当該オブジェクトがどれだけのフレーム数検出されたか又は連続して検出されなかったかを示す検出／未検出フレーム数、当該オブジェクトが追跡すべき対象かどうかを示す要追跡確度（安定フラグ）などを含む。
【００２０】
オブジェクト選択部１３４は、オブジェクトデータリスト１３５に保存されているオブジェクトについて、当該オブジェクトの存在確度が高いとか（Ｓ＝１）、当該オブジェクトが追跡対象とするのにふさわしい位置にいるか等を判断基準にして、当該オブジェクトを追跡するか否かを選択する。具体的には、オブジェクトデータリスト１３５のオブジェクト予測データに基づいて当該オブジェクトが位置すると予測される視差画像データ中の予測範囲を設定し、その予測範囲内における当該オブジェクトの高さを特定した後、オブジェクトデータリスト１３５のオブジェクト特徴量を参照して、特定した高さから当該オブジェクトの幅を特定し、特定した幅から視差画像データ上におけるオブジェクトの横方向位置を推定する。このようにして推定したオブジェクトの横方向位置が所定の追跡対象条件（当該オブジェクトが画像内に存在する確度が高い位置である場合、当該オブジェクトが追跡対象とするのにふさわしい位置である場合等）を満たせば、当該オブジェクトを追跡対象として選択し、その結果をオブジェクトトラッキング部１３３に出力する。なお、オブジェクト選択部１３４の結果に基づき、オブジェクトデータリスト１３５の情報を更新する。
【００２１】
オブジェクトトラッキング部１３３は、オブジェクト選択部１３４により追跡対象として選択されたオブジェクトについて追跡処理を行う。この追跡処理のため、オブジェクトトラッキング部１３３には、視差画像生成部１３２で生成された視差画像データと、オブジェクト選択部１３４で選択されたオブジェクトデータのオブジェクト予測データ及びオブジェクト特徴量が入力される。
【００２２】
視差補間部１３６は、上述した視差画像生成部１３２における視差画像生成処理で視差値が算出できなかった画像部分の視差値を補間する視差補間処理を実行する。例えば、輝度画像データ上において横方向のエッジ部分や輝度変化が少ない箇所では視差画像生成処理のブロックマッチングが正しく計算できず、視差値が算出されない場合がある。このような場合、視差補間処理において、所定の補間条件を満たした画像部分については、離れた二画素間の間を補間視差で埋める処理を行う。補間条件としては、例えば、同一の横方向座標内の二点間の距離が所定の大きさ（幅）より小さく、その二点間に他の視差値が存在しないという条件を挙げることができる。
【００２３】
以上のようにして視差補間処理を行ったら、次に、Ｖマップ生成部１３７において、Ｖマップを生成するＶマップ生成処理を実行する。視差画像データに含まれる各視差画素データは、ｘ方向位置とｙ方向位置と視差値ｄとの組（ｘ，ｙ，ｄ）で示されるところ、これを、Ｘ軸にｄ、Ｙ軸にｙ、Ｚ軸に頻度ｆを設定した三次元座標情報（ｄ，ｙ，ｆ）に変換したもの、又はこの三次元座標情報（ｄ，ｙ，ｆ）から所定の頻度閾値を超える情報に限定した三次元座標情報（ｄ，ｙ，ｆ）を生成する。この三次元座標情報（ｄ，ｙ，ｆ）をＸ−Ｙの２次元座標系に分布させたものを、Ｖマップと呼ぶ。
【００２４】
具体的に説明すると、Ｖマップ生成部１３７は、画像を上下方向に複数分割して得られる視差画像データの各行領域について、視差値頻度分布を計算する。具体例を挙げて説明すると、図５（ａ）に示すような視差値分布をもった視差画像データが入力されたとき、Ｖマップ生成部１３７は、行ごとの各視差値のデータの個数の分布である視差値頻度分布を計算して出力する。このようにして得られる各行の視差値頻度分布の情報を、Ｙ軸に視差画像上のｙ方向位置（撮像画像の上下方向位置）をとりＸ軸に視差値をとった二次元直交座標系上に表すことで、図５（ｂ）に示すようなＶマップを得ることができる。このＶマップは、頻度ｆに応じた画素値をもつ画素が前記二次元直交座標系上に分布した画像として表現することもできる。
【００２５】
次に、本実施形態では、Ｖマップ生成部１３７が生成したＶマップの情報（視差ヒストグラム情報）から、路面形状検出部１３８において、自車両１００の前方路面の３次元形状を検出する路面形状検出処理が実行される。
図６は、撮像部１１０Ａで撮像される基準画像の一例を模式的に表した画像例である。
図７は、図６の画像例に対応するＶマップである。
図６に示す画像例では、自車両１００が走行している路面と、自車両１００の前方に存在する先行車両と、路外に存在する電柱が映し出されている。この画像例は、自車両１００の前方路面が相対的に平坦な路面、すなわち、自車両１００の前方路面が自車両１００の真下の路面部分と平行な面を自車両前方へ延長して得られる仮想の基準路面（仮想基準移動面）に一致している場合のものである。この場合、画像の下部に対応するＶマップの下部において、高頻度の点は、画像上方へ向かうほど視差値ｄが小さくなるような傾きをもった略直線状に分布する。このような分布を示す画素は、視差画像上の各行においてほぼ同一距離に存在していてかつ最も占有率が高く、しかも画像上方へ向かうほど距離が連続的に遠くなる検出対象物を映し出した画素であると言える。
【００２６】
撮像部１１０Ａでは自車両前方領域を撮像するため、その撮像画像の内容は、図６に示すように、画像上方へ向かうほど路面の視差値ｄは小さくなる。また、同じ行（横ライン）内において、路面を映し出す画素はほぼ同じ視差値ｄを持つことになる。したがって、Ｖマップ上において上述した略直線状に分布する高頻度の点は、路面（移動面）を映し出す画素が持つ特徴に対応したものである。よって、Ｖマップ上における高頻度の点を直線近似して得られる近似直線上又はその近傍に分布する点の画素は、高い精度で、路面を映し出している画素であると推定することができる。また、各画素に映し出されている路面部分までの距離は、当該近似直線上の対応点の視差値ｄから高精度に求めることができる。
【００２７】
ここで、Ｖマップ上における高頻度の点を直線近似する際、その直線近似処理に含める点をどの範囲まで含めるかは、その処理結果の精度を大きく左右する。すなわち、直線近似処理に含める範囲が広いほど、路面に対応しない点が多く含まれ、処理精度を落とすことになり、また、直線近似処理に含める範囲が狭いほど、路面に対応する点の数が少なく、やはり処理精度を落とす結果となる。そこで、本実施形態では、直線近似処理の対象とする視差ヒストグラム情報部分を、以下のようにして抽出している。
【００２８】
図８は、本実施形態における抽出条件を説明するためのＶマップを示す説明図である。
本実施形態のＶマップ生成部１３７では、視差画像データを受け取ると、その視差画像データに含まれる各視差画素データ（ｘ，ｙ，ｄ）を、三次元座標情報である視差ヒストグラム情報構成要素としてのＶマップ要素（ｄ，ｙ，ｆ）に変換して、視差ヒストグラム情報としてのＶマップ情報を生成する。このとき、視差画像データの中から、画像上下方向位置ｙと視差値ｄとの関係が所定の抽出条件を満たす視差画素データを抽出し、その抽出した視差画素データを対象にして上述した変換を行い、Ｖマップ情報を生成する。
【００２９】
本実施形態における抽出条件は、自車両１００の前方路面が自車両１００の真下の路面部分と平行な面を自車両前方へ延長して得られる仮想の基準路面（仮想基準移動面）に対応する視差値ｄと画像上下方向位置ｙとの関係を基準として定まる所定の抽出範囲内に属するという条件である。この基準路面に対応する視差値ｄと画像上下方向位置ｙとの関係は、図８に示すように、Ｖマップ上において直線（以下「基準直線」という。）で示される。本実施形態では、この直線を中心に画像上下方向へ±δの範囲を、抽出範囲として規定している。この抽出範囲は、状況に応じて刻々と変化する実際の路面のＶマップ要素（ｄ，ｙ，ｆ）の変動範囲を含むように設定される。
【００３０】
具体的には、例えば、自車両前方の路面が相対的に上り傾斜である場合、当該路面が相対的に平坦である場合よりも、撮像画像中に映し出される路面画像部分（移動面画像領域）は画像上側へ広がる。しかも、同じ画像上下方向位置ｙに映し出される路面画像部分を比較すると、相対的に上り傾斜である場合には、相対的に平坦である場合よりも、視差値ｄが大きくなる。この場合のＶマップ要素（ｄ，ｙ，ｆ）は、Ｖマップ上において、おおよそ、基準直線に対し、上側に位置し、かつ、傾き（絶対値）が大きい直線を示すものとなる。本実施形態では、前方の路面における相対的な上り傾斜が想定され得る範囲内であれば、その路面のＶマップ要素（ｄ，ｙ，ｆ）が抽出範囲内に収まる。
【００３１】
また、例えば、自車両前方の路面が相対的に下り傾斜である場合、そのＶマップ要素（ｄ，ｙ，ｆ）は、Ｖマップ上において、基準直線に対し、下側に位置し、かつ、傾き（絶対値）が小さい直線を示すものとなる。本実施形態では、前方の路面における相対的な下り傾斜が想定され得る範囲内であれば、その路面のＶマップ要素（ｄ，ｙ，ｆ）が抽出範囲内に収まる。
【００３２】
また、例えば、自車両１００が速度を加速している加速時においては、自車両１００の後方に加重がかかり、自車両の姿勢は、自車両前方が鉛直方向上側を向くような姿勢となる。この場合、自車両１００の速度が一定である場合と比べて、撮像画像中に映し出される路面画像部分（移動面画像領域）は画像下側へシフトする。この場合のＶマップ要素（ｄ，ｙ，ｆ）は、Ｖマップ上において、おおよそ、基準直線に対し、下側に位置し、かつ、基準直線とほぼ平行な直線を示すものとなる。本実施形態では、自車両１００の加速が想定され得る範囲内であれば、その路面のＶマップ要素（ｄ，ｙ，ｆ）が抽出範囲内に収まる。
【００３３】
また、例えば、自車両１００が速度を減速している減速時においては、自車両１００の前方に加重がかかり、自車両の姿勢は、自車両前方が鉛直方向下側を向くような姿勢となる。この場合、自車両１００の速度が一定である場合と比べて、撮像画像中に映し出される路面画像部分（移動面画像領域）は画像上側へシフトする。この場合のＶマップ要素（ｄ，ｙ，ｆ）は、Ｖマップ上において、おおよそ、基準直線に対し、上側に位置し、かつ、基準直線とほぼ平行な直線を示すものとなる。本実施形態では、自車両１００の減速が想定され得る範囲内であれば、その路面のＶマップ要素（ｄ，ｙ，ｆ）が抽出範囲内に収まる。
【００３４】
路面形状検出部１３８では、Ｖマップ生成部１３７においてＶマップ情報が生成されたら、路面に対応する視差値及びｙ方向位置の組（Ｖマップ要素）が示す特徴、すなわち、撮像画像の上方に向かうほど視差値が低くなるという特徴を示すＶマップ上の高頻度の点を直線近似する処理を行う。なお、路面が平坦な場合には一本の直線で十分な精度で近似可能であるが、車両進行方向において路面の傾斜状況が変化するような路面については、一本の直線で十分な精度の近似は難しい。したがって、本実施形態においては、Ｖマップの情報（Ｖマップ情報）を視差値に応じて２以上の視差値区画に区分けし、各視差値区画についてそれぞれ個別に直線近似を行う。
【００３５】
図９は、路面形状検出部１３８内の処理ブロック図である。
本実施形態の路面形状検出部１３８は、Ｖマップ生成部１３７から出力されるＶマップ情報（Ｖマップ情報）を受け取ると、まず、路面候補点検出部１３８Ａにおいて、路面に対応するＶマップ要素が示す特徴、すなわち、撮像画像の上方に向かうほど視差値が低くなるという特徴を示すＶマップ上の高頻度の点を、路面候補点として検出する。
【００３６】
このとき、本実施形態では、路面候補点検出部１３８Ａでの路面候補点検出処理は、Ｖマップの情報（Ｖマップ情報）を視差値に応じて２以上の視差値区画に区分けし、各視差値区画にそれぞれ対応した決定アルゴリズムに従って各視差値区画における路面候補点を決定する。具体的には、例えば、所定の基準距離に対応する視差値を境に、ＶマップをＸ軸方向（横軸方向）に２つの領域、すなわち視差値の大きい領域と小さい領域に区分けし、その領域ごとに異なる路面候補点検出アルゴリズムを用いて路面候補点を検出する。なお、視差値の大きい近距離領域については、後述する第１路面候補点検出処理を行い、視差の小さい遠距離領域については、後述する第２路面候補点検出処理を行う。
【００３７】
ここで、前記のように視差の大きい近距離領域と視差の小さい遠距離領域とで、路面候補点検出処理の方法を変える理由について説明する。
図６に示したように、自車両１００の前方を撮像した撮像画像で、近距離の路面部分についてはその路面画像領域の占有面積が大きく、路面に対応する画素数が多いので、Ｖマップ上の頻度が大きい。これに対し、遠距離の路面部分については、その路面画像領域の撮像画像内における占有面積が小さく、路面に対応する画素数が少ないので、Ｖマップ上の頻度が小さい。すなわち、Ｖマップにおいて、路面に対応する点の頻度値は、遠距離では小さく、近距離では大きい。そのため、例えば同じ頻度閾値を用いるなど、両領域について同じ基準で路面候補点を検出しようとすると、近距離領域については路面候補点を適切に検出できるが、遠距離領域については路面候補点が適切に検出できないおそれがあり、遠距離領域の路面検出精度が劣化する。逆に、遠距離領域の路面候補点を十分に検出できるような基準で近距離領域の検出を行うと、近距離領域のノイズ成分が多く検出され、近距離領域の路面検出精度が劣化する。そこで、本実施形態では、Ｖマップを近距離領域と遠距離領域とに区分し、各領域についてそれぞれ適した基準や検出方法を用いて路面候補点を検出することにより、両領域の路面検出精度を高く維持している。
【００３８】
第１路面候補点検出処理では、各視差値ｄについて、所定の検索範囲内でｙ方向位置を変えながら、Ｖマップ情報に含まれる各Ｖマップ要素（ｄ，ｙ，ｆ）の頻度値ｆが第１頻度閾値よりも大きく、かつ、最も頻度値ｆが大きいＶマップ要素を探索し、そのＶマップ要素を当該視差値ｄについての路面候補点として決定する。このときの第１頻度閾値は、低めに設定し、路面に対応するＶマップ要素が抜け落ちないようにするのが好ましい。本実施形態においては、上述したとおり、Ｖマップ生成部１３７において路面に対応するＶマップ要素を抽出していることから、第１頻度閾値を低めに設定しても、路面分に対応しないＶマップ要素が路面候補点として決定される事態は軽減されるからである。
【００３９】
ここで、各視差値ｄについてｙ値を変化させる検索範囲は、上述したＶマップ生成部１３７における抽出範囲、すなわち、基準直線の画像上下方向位置ｙｐを中心にとした画像上下方向へ±δの範囲である。具体的には、「ｙｐ−δ」から「ｙｐ＋δ」の範囲を探索範囲とする。これにより、探索すべきｙ値の範囲が限定され、高速な路面候補点検出処理を実現できる。
【００４０】
一方、第２路面候補点検出処理は、第１頻度閾値の変わりにこれとは別の第２頻度閾値を用いる点を除いて、前記第１路面候補点検出処理と同じである。すなわち、第２路面候補点検出処理では、各視差値ｄについて、所定の検索範囲内でｙ方向位置を変えながら、Ｖマップ情報に含まれる各Ｖマップ要素（ｄ，ｙ，ｆ）の頻度値ｆが第２頻度閾値よりも大きく、かつ、最も頻度値ｆが大きいＶマップ要素を探索し、そのＶマップ要素を当該視差値ｄについての路面候補点として決定する。
【００４１】
図１０は、路面候補点検出部１３８Ａで行う路面候補点検出処理の流れを示すフローチャートである。
入力されるＶマップの情報について、例えば視差値ｄの大きい順に路面候補点の検出を行い、各視差値ｄについての路面候補点（ｙ，ｄ）を検出する。視差値ｄが所定の基準距離に対応する基準視差値よりも大きい場合（Ｓ１のＹｅｓ）、上述した第１路面候補点検出処理を行う。すなわち、当該視差値ｄに応じたｙの探索範囲（「ｙｐ−δ」〜「ｙｐ＋δ」）を設定し（Ｓ２）、この探索範囲内における頻度値ｆが第１頻度閾値よりも大きいＶマップ要素（ｄ，ｙ，ｆ）を抽出する（Ｓ３）。そして、抽出したＶマップ要素のうち、最大の頻度値ｆを持つＶマップ要素（ｄ，ｙ，ｆ）を、当該視差値ｄの路面候補点として検出する（Ｓ４）。
【００４２】
そして、視差値ｄが基準視差値以下になるまで第１路面候補点検出処理を繰り返し行い（Ｓ５）、視差値ｄが基準視差値以下になったら（Ｓ１のＮｏ）、今度は、上述した第２路面候補点検出処理で路面候補点検出を行う。すなわち、第２路面候補点検出処理でも当該視差値ｄに応じたｙの探索範囲（「ｙｐ−δ」〜「ｙｐ＋δ」）を設定し（Ｓ６）、この探索範囲内における頻度値ｆが第１頻度閾値よりも大きいＶマップ要素（ｄ，ｙ，ｆ）を抽出する（Ｓ７）。そして、抽出したＶマップ要素のうち、最大の頻度値ｆを持つＶマップ要素（ｄ，ｙ，ｆ）を、当該視差値ｄの路面候補点として検出する（Ｓ８）。この第２路面候補点検出処理を、視差値ｄがなくなるまで繰り返し行う（Ｓ９）。
【００４３】
このようにして路面候補点検出部１３８Ａにより各視差値ｄについての路面候補点（抽出処理対象）を検出したら、次に、区分直線近似部１３８Ｂにより、これらの路面候補点についてＶマップ上の近似直線を求める直線近似処理を行う。このとき、路面が平坦な場合であれば、Ｖマップの視差値範囲全域にわたって一本の直線で十分な精度の近似が可能であるが、車両進行方向において路面の傾斜状況が変化している場合には、一本の直線で十分な精度の近似が難しい。したがって、本実施形態においては、Ｖマップの情報（Ｖマップ情報）を視差値に応じて２以上の視差値区画に区分けし、各視差値区画についてそれぞれ個別に直線近似処理を行う。
【００４４】
直線近似処理は、最小二乗近似を利用することができるが、より正確に行うにはＲＭＡ（Reduced Major Axis）などの他の近似を用いるのがよい。その理由は、最小二乗近似は、Ｘ軸のデータに誤差がなく、Ｙ軸のデータに誤差が存在するという前提があるときに、正確に計算されるものである。しかしながら、Ｖマップ情報から検出される路面候補点の性質を考えると、Ｖマップ情報に含まれる各Ｖマップ要素のデータは、Ｙ軸のデータｙについては画像上の正確な位置を示していると言えるが、Ｘ軸のデータである視差値ｄについては、誤差を含んでいるものである。また、路面候補点検出処理では、Ｙ軸方向に沿って路面候補点の探索を行い、その最大のｙ値をもつＶマップ要素を路面候補点として検出するものであるため、路面候補点はＹ軸方向の誤差も含んでいる。したがって、路面候補点となっているＶマップ要素は、Ｘ軸方向にもＹ軸方向にも誤差を含んでいることになり、最小二乗近似の前提が崩れている。したがって、二変数（ｄとｙ）に互換性のある回帰直線（ＲＭＡ）が有効である。
【００４５】
図１１は、区分直線近似部１３８Ｂで行う区分直線近似処理の流れを示すフローチャートである。
区分直線近似部１３８Ｂは、路面候補点検出部１３８Ａから出力される各視差値ｄの路面候補点のデータを受け取ったら、まず、最近距離の第一区間（最も視差値が大きい区間）を設定する（Ｓ１１）。そして、この第一区間内の各視差値ｄに対応した路面候補点を抽出する（Ｓ１２）。このとき、抽出された路面候補点の数が所定の値以下である場合（Ｓ１３のＮｏ）、当該第一区間を所定の視差値分だけ延長する（Ｓ１４）。具体的には、当初の第一区間と第二区間とを結合して、新たにひとつの第一区間（延長された第一区間）とする。このとき、当初の第三区間は新たな第二区間となる。そして、延長された第一区間内の各視差値ｄに対応した路面候補点を再び抽出し（Ｓ１２）、抽出された路面候補点の数が所定の値よりも多くなった場合には（Ｓ１３のＹｅｓ）、抽出した路面候補点について直線近似処理を行う（Ｓ１５）。なお、第一区間ではない区間、例えば第二区間を延長する場合には、当初の第二区間と第三区間とを結合して、新たにひとつの第二区間（延長された第二区間）とする。
【００４６】
このようにして直線近似処理を行ったら、次に、その直線近似処理により得られる近似直線の信頼性判定を行う。この信頼性判定では、最初に、得られた近似直線の傾きと切片が所定の範囲内にあるかどうかを判定する（Ｓ１７）。この判定で所定の範囲内ではない場合には（Ｓ１７のＮｏ）、当該第一区間を所定の視差値分だけ延長し（Ｓ１４）、延長された第一区間について再び直線近似処理を行う（Ｓ１２〜１５）。そして、所定の範囲内ではあると判定されたら（Ｓ１７のＹｅｓ）、その直線近似処理を行った区間が第一区間かどうかを判断する（Ｓ１８）。
【００４７】
このとき、第一区間であると判断された場合には（Ｓ１８のＹｅｓ）、その近似直線の相関値が所定の値よりも大きいかどうかを判定する（Ｓ１９）。この判定において、近似直線の相関値が所定の値よりも大きければ、その近似直線を当該第一区間の近似直線として決定する。近似直線の相関値が所定の値以下であれば、当該第一区間を所定の視差値分だけ延長し（Ｓ１４）、延長された第一区間について再び直線近似処理を行い（Ｓ１２〜１５）、再び信頼性判定を行う（Ｓ１７〜Ｓ１９）。なお、第一区間でない区間については（Ｓ１８のＮｏ）、近似直線の相関値に関する判定処理（Ｓ１９）は実施しない。
【００４８】
その後、残りの区間があるかどうかを確認し（Ｓ２０）、もし残りの区間が無ければ、区分直線近似部１３８Ｂは区分直線近似処理を終了する。一方、残りの区間がある場合には（Ｓ２０のＹｅｓ）、前区間の幅に対応する距離を定数倍した距離に対応する幅をもった次の区間（第二区間）を設定する（Ｓ２１）。そして、この設定後に残っている区間が更に次に設定される区間（第三区間）よりも小さいか否かを判断する（Ｓ２２）。この判断において小さくないと判断されたなら、当該第二区間内の各視差値ｄに対応した路面候補点を抽出して直線近似処理を行うとともに（Ｓ１２〜Ｓ１５）、信頼性判定処理を行う（Ｓ１７〜Ｓ１９）。
【００４９】
このようにして順次区間を設定し、その区間の直線近似処理及び信頼性判定処理を行うという処理を繰り返していくと、いずれ、前記処理ステップＳ２２において、設定後に残っている区間が更に次に設定される区間よりも小さいと判断される（Ｓ２２のＹｅｓ）。この場合、設定された区間を延長して当該残っている区間を含めるようにし、これを最後の区間として設定する（Ｓ２３）。この場合、この最後の区間内の各視差値ｄに対応した路面候補点を抽出し（Ｓ１２）、抽出した路面候補点について直線近似処理を行ったら（Ｓ１５）、処理ステップＳ１６において最後の区間であると判断されるので（Ｓ１６のＹｅｓ）、区分直線近似部１３８Ｂは区分直線近似処理を終了する。
【００５０】
このようにして区分直線近似部１３８Ｂが各区間の直線近似処理を実行して得た各区間の近似直線は、通常、区間境界で連続したものにはならない。そのため、本実施形態では、各区間の近似直線が区間境界において連続になるように、区分直線近似部１３８Ｂから出力される近似直線を、区間近似直線連続化部１３８Ｃにより修正する。具体的には、例えば、区間の境界上における両区間の近似直線の端点間の中点を通るように両近似直線を修正する。
【００５１】
以上のようにして、路面形状検出部１３８においてＶマップ上の近似直線の情報が得られたら、次に、路面高さテーブル算出部１３９において、路面高さ（自車両の真下の路面部分に対する相対的な高さ）を算出してテーブル化する路面高さテーブル算出処理を行う。路面形状検出部１３８により生成されたＶマップ上の近似直線の情報から、撮像画像上の各行領域（画像上下方向の各位置）に映し出されている各路面部分までの距離を算出できる。一方、自車両の真下に位置する路面部分をその面に平行となるように自車両進行方向前方へ延長した仮想平面の自車両進行方向における各面部分が、撮像画像中のどの各行領域に映し出されるかは予め決まっており、この仮想平面（基準路面）はＶマップ上で直線（基準直線）により表される。路面形状検出部１３８から出力される近似直線を基準直線と比較することで、自車両前方の各路面部分の高さを得ることができる。簡易的には、路面形状検出部１３８から出力される近似直線上のＹ軸位置から、これに対応する視差値から求められる距離だけ自車両前方に存在する路面部分の高さを算出できる。路面高さテーブル算出部１３９では、近似直線から得られる各路面部分の高さを、必要な視差範囲についてテーブル化する。
【００５２】
なお、ある視差値ｄにおいてＹ軸位置がｙ’である地点に対応する撮像画像部分に映し出されている物体の路面からの高さは、当該視差値ｄにおける近似直線上のＹ軸位置をｙ０としたとき、（ｙ’−ｙ０）から算出することができる。一般に、Ｖマップ上における座標（ｄ，ｙ’）に対応する物体についての路面からの高さＨは、下記の式（２）より算出することができる。ただし、下記の式（２）において、「ｚ」は、視差値ｄから計算される距離（ｚ＝ＢＦ／（ｄ−ｏｆｆｓｅｔ））であり、「ｆ」はカメラの焦点距離を（ｙ’−ｙ０）の単位と同じ単位に変換した値である。ここで、「ＢＦ」は、ステレオカメラの基線長と焦点距離を乗じた値であり、「ｏｆｆｓｅｔ」は無限遠の物体を撮影したときの視差値である。
Ｈ  ＝  ｚ×（ｙ’−ｙ０）／ｆ  ・・・（２）
【００５３】
次に、Ｕマップ生成部１４０について説明する。
Ｕマップ生成部１４０では、Ｕマップを生成するＵマップ生成処理を実行する。Ｕマップ生成処理では、視差画像データに含まれる各視差画素データにおけるｘ方向位置とｙ方向位置と視差値ｄとの組（ｘ，ｙ，ｄ）を、Ｘ軸にｘ、Ｙ軸にｄ、Ｚ軸に頻度を設定した三次元座標情報（ｘ，ｄ，ｆ）に変換したもの、又はこの三次元座標情報（ｘ，ｄ，ｆ）から所定の頻度閾値を超える情報に限定した三次元座標情報（ｘ，ｄ，ｆ）を、視差ヒストグラム情報として生成する。この三次元座標情報（ｘ，ｄ，ｆ）をＸ−Ｙの２次元座標系に分布させたものを、頻度Ｕマップと呼ぶ。
【００５４】
具体的に説明すると、Ｕマップ生成部１４０は、画像を左右方向に複数分割して得られる視差画像データの各列領域について、視差値頻度分布を計算する。この視差値頻度分布を示す情報が視差ヒストグラム情報である。具体的には、視差値分布をもった視差画像データが入力されたとき、Ｕマップ生成部１４０は、列ごとの各視差値のデータの個数の分布である視差値頻度分布を計算し、これを視差ヒストグラム情報として出力する。このようにして得られる各列の視差値頻度分布の情報を、Ｘ軸に視差画像上のｘ方向位置（撮像画像の左右方向位置）をとりＹ軸に視差値をとった二次元直交座標系上に表すことで、頻度Ｕマップを得ることができる。この頻度Ｕマップは、頻度ｆに応じた画素値をもつ画素が前記二次元直交座標系上に分布した画像として表現することもできる。
【００５５】
本実施形態のＵマップ生成部１４０では、路面高さテーブル算出部１３９によってテーブル化された各路面部分の高さに基づいて、路面からの高さＨが所定の高さ範囲（たとえば２０ｃｍから３ｍ）にある視差画像の点（ｘ，ｙ，ｄ）についてだけＵマップを作成する。この場合、路面から当該所定の高さ範囲に存在する物体を適切に抽出することができる。なお、例えば、撮像画像の下側５／６の画像領域に対応する視差画像の点（ｘ，ｙ，ｄ）についてだけＵマップを作成するようにしてもよい。この場合、撮像画像の上側１／６は、ほとんどの場合、空が映し出されていて認識対象とする必要のある物体が映し出されていないためである。
【００５６】
また、各視差画像の点（ｘ，ｙ，ｄ）については、路面高さテーブル算出部１３９によってテーブル化された各路面部分の高さに基づいて路面からの高さＨが対応づけされることから、頻度に関する三次元座標情報（ｘ，ｄ，ｆ）だけでなく、三次元座標情報（ｘ，ｄ，Ｈ）も得ることができる。この三次元座標情報（ｘ，ｄ，Ｈ）をＸ−Ｙの２次元座標系に分布させたものを、高さＵマップと呼ぶ。この高さＵマップは、高さＨに応じた画素値をもつ画素が前記二次元直交座標系上に分布した画像として表現することもできる。本実施形態では、本実施形態では、頻度Ｕマップを構成する三次元座標情報（ｘ，ｄ，ｆ）から、視差値ｄごとの最大高さＨｍａｘを用いて、三次元座標情報（ｘ，ｄ，Ｈｍａｘ）を抽出し、この三次元座標情報（ｘ，ｄ，Ｈｍａｘ）をＸ−Ｙの２次元座標系に分布させた高さＵマップを用いる。
【００５７】
図１２は、撮像部１１０Ａで撮像される基準画像の一例を模式的に表した画像例である。
図１３は、図１２の画像例に対応するＵマップであり、頻度ｆに応じた画素値をもつ画素が二次元直交座標系上に分布した画像として表現した頻度Ｕマップである。
図１４は、図１２の画像例に対応するＵマップであり、視差値ごとの実空間上の最大高さＨmaxに応じた画素値をもつ画素が二次元直交座標系上に分布した画像として表現した高さＵマップである。
【００５８】
図１２に示す画像例では、路面の左右両側にガードレールが存在し、他車両としては、先行車両と対向車両がそれぞれ１台ずつ存在する。このとき、頻度Ｕマップにおいては、図１３に示すように、左右のガードレールに対応する高頻度の点は、左右両端側から中央に向かって上方へ延びるような略直線状に分布する。一方、他車両に対応する高頻度の点は、左右のガードレールの間で、略Ｘ軸方向に平行に延びる線分の状態で分布する。なお、先行車両の背面部分又は対向車両の前面部分以外に、これらの車両の側面部分が映し出されているような状況にあっては、同じ他車両を映し出している画像領域内において視差が生じる。このような場合、図１３に示すように、他車両に対応する高頻度の点は、略Ｘ軸方向に平行に延びる線分と略Ｘ軸方向に対して傾斜した線分とが連結した状態の分布を示す。
【００５９】
また、高さＵマップにおいては、図１４に示すように、図１３に示す頻度Ｕマップと同様の画像形状を示すが、左右のガードレールに対応する箇所は実空間上の高さが相対的に低いので画素値が低く、他車両に対応する箇所は実空間上の高さが相対的に高いので画素値が高くなっている。
【００６０】
次に、リアルＵマップ生成部１４１について説明する。
リアルＵマップ生成部１４１は、Ｕマップ生成部１４０で生成される頻度Ｕマップ及び高さＵマップにおけるＸ軸を、視差画素データ上のｘ方向位置から、実空間上のｘ方向位置に変換したものである。すなわち、視差画素データ上のｘ方向位置は、実空間上のｘ方向位置が同じであっても、距離が離れるほど（画像上側ほど）、視差画素データ上の消失点に近づくので、頻度Ｕマップ及び高さＵマップについて、このような視差画素データ上のｘ方向位置を実空間上のｘ方向位置に変換したものをリアル頻度Ｕマップ及びリアル高さＵマップと呼ぶ。
【００６１】
図１５は、図１３に示した頻度Ｕマップに対応するリアル頻度Ｕマップである。
図１５に示すリアル頻度Ｕマップでは、Ｙ軸を、頻度Ｕマップでの視差ｄを距離に応じた間引き率で変換した間引き視差という単位としている。近距離の物体は大きく映し出されるために算出される視差値の距離に対する分解能が高いので、視差値について大きく間引くことが可能になる。図１５に示すリアル頻度Ｕマップにおいて、左右のガードレールについては上下方向に延びる線分の状態で分布し、他車両については略長方形状の状態で分布するため、いずれも、実空間上の自車両前方領域を真上から見たときの実際の形状に近い分布形状をとる。なお、リアルＵマップ生成部１４１では、同様にしてリアル高さＵマップも生成する。
【００６２】
次に、孤立領域検出部１４２について説明する。
孤立領域検出部１４２は、撮像領域内に存在する各物体に対応する画像領域に物体ごとに選別するための処理である。本実施形態では、リアル頻度Ｕマップを利用して、画像左右方向で近接していて、かつ、所定値以上の頻度ｆをもつ視差値の値が近接している画像領域を、検出対象物（オブジェクト）を映し出す検出対象物画像領域の候補領域（オブジェクト候補領域）として選別する。
【００６３】
図１６は、孤立領域検出部１４２で行う処理の流れを示すフローチャートである。
孤立領域検出部１４２では、リアルＵマップ生成部１４１で生成されたリアル頻度Ｕマップの情報から、まず、リアル頻度Ｕマップの平滑化処理を行う。視差値には計算誤差等もあって分散があり、視差値がすべての画素について計算されているわけではないので、実際のリアル頻度Ｕマップは、図１３に示した模式図とは異なり、ノイズを含んでいる。そのため、ノイズを除去するためと、検出対象物（オブジェクト）を検出しやすくするため、リアル頻度Ｕマップを平滑化する処理を行う。平滑化処理では、画像の平滑化と同様に、平滑化フィルタ（たとえば３×３画素の単純平均）を頻度値ｆに対して適用する。これにより、ノイズと考えられるようなリアル頻度Ｕマップ上の地点の頻度ｆが減少し、検出対象物（オブジェクト）の地点では頻度ｆが周囲よりも高いグループとなる。その結果、後段の処理において孤立領域の検出を容易になる。
【００６４】
次に、このように平滑化されたリアル頻度Ｕマップの情報を二値化する処理を行う。各検出対象物（オブジェクト）は、その高さ、形状、背景とのコントラスト差などに違いがあるので、各検出対象物にそれぞれ対応する孤立領域は、頻度値ｆが大きいものもあれば小さいものもある。そのため、単一の閾値による二値化では適切に検出できない孤立領域が発生するおそれがある。これを防ぐため、本実施形態では、複数の二値化閾値を用いて孤立領域を検出する。
【００６５】
具体的には、まず、二値化閾値を最も小さい値に設定した上で（Ｓ３２）、リアル頻度Ｕマップの二値化処理を行う（Ｓ３３）。この二値化処理により、当該二値化閾値よりも高い頻度ｆの領域が「１」となり、当該二値化閾値以下の頻度の領域が「０」となる。この二値化処理で「１」の値をもつ地点（頻度値ｆが二値化閾値よりも高い座標）をその連結性に基づいてラベリングし（Ｓ３４）、同一ラベルが付いた領域を１つの孤立領域として検出する。ラベリングの方法は、例えば、注目座標の周囲に位置する周囲座標に対して既にラベル付けされている場合には、その周囲座標のラベルと同一のラベルを割り当てる。もし、周囲座標中に異なるラベルが付されている場合には、注目座標と周囲座標のすべてについて、それらの中で最も小さい値のラベルを割り当る。
【００６６】
このようにして孤立領域を検出したら、検出された１又は２以上の孤立領域について、大きさ判定を実施する（Ｓ３５）。これは、検出対象物には、歩行者から大型自動車まで含まれるので、孤立領域の幅がそれらのサイズの範囲内であるかどうかを判定するものである。この大きさ判定によりサイズを超えていると判定された孤立領域については（Ｓ３５のＹｅｓ）、二値化閾値を１だけインクリメントした新たな二値化閾値を設定し（Ｓ３２）、当該孤立領域内について再び二値化処理を行って（Ｓ３３）、ラベリング処理を行い（Ｓ３４）、より小さな孤立領域を検出する。このような処理を繰り返し行うことで、所望の大きさの孤立領域を検出することができる。
【００６７】
このようにして所望の大きさの孤立領域が検出されたら、次に、周縁部分除去処理を行う（Ｓ３６）。遠方にある物体については、路面検出の精度が悪く、路面部分の視差値についてもリアル頻度Ｕマップに反映され、当該物体と路面とが一つの孤立領域として検出される場合がある。この場合、リアル頻度Ｕマップ上における左端部分や右端部分あるいは上端部分や下端部分が路面である可能性があるので、周縁部分除去処理において、所定の除去条件を満たす周縁部分を除去する。この周縁部分除去処理において除去部分が存在した場合には（Ｓ３７のＹｅｓ）、周縁部分除去処理後の当該孤立領域について、もう一度ラベリングを行い（Ｓ３４）、孤立領域の再設定を行う。
【００６８】
次に、周縁部分除去処理を終えた孤立領域に対し、その大きさ（幅、高さ、距離）に応じて（Ｓ３８）、横方向分離処理を行う（Ｓ３９）。例えば物体同士（自動車とバイク、自動車と歩行者、自動車同士など）が横に並んで近接している場合、リアル頻度Ｕマップの平滑化処理が原因で、複数の物体に対応する部分を１つの孤立領域として検出してしまうことがある。また、視差画像データの視差補間処理の影響で、異なる物体同士の視差がつながってしまい、これが原因で複数の物体に対応する部分を１つの孤立領域として検出してしまうこともある。横方向分離処理は、このようなケースを検出して、複数の物体に対応した１つの孤立領域を、それぞれの物体ごとの孤立領域に分離する処理である。この横方向分離処理で１つの孤立領域が分離された場合には（Ｓ４０のＹｅｓ）、分離後の各孤立領域について、もう一度ラベリングを行い（Ｓ３４）、孤立領域の再設定を行う。
【００６９】
また、周縁部分除去処理を終えた孤立領域に対し、その大きさ（幅、高さ、距離）に応じて（Ｓ３８）、縦方向分離処理を行う（Ｓ４１）。例えば複数の先行車両が遠方を走行している場合、視差画像データ上の視差値の分散が大きくなりやすく、リアル頻度Ｕマップ上において上下に位置する各先行車両に対応する領域が連結して、１つの孤立領域として検出されることがある。縦方向分離処理は、このようなケースを検出して、複数の物体に対応した１つの孤立領域を、それぞれの物体ごとの孤立領域に分離する処理である。この縦方向分離処理で１つの孤立領域が分離された場合には（Ｓ４２のＹｅｓ）、分離後の各孤立領域について、もう一度ラベリングを行い（Ｓ３４）、孤立領域の再設定を行う。
【００７０】
更に、本実施形態においては、周縁部分除去処理を終えた孤立領域に対して、高さ分離処理を実施する（Ｓ４３）。上述した縦分離処理や横分離処理を実施してもなお、複数の物体に対応する部分を１つの孤立領域として検出し残ってしまうケースがある。このようなケースとしては、例えば、乗用車等の車高の低い他車両と高い壁や建物とが近接して位置している傍らを自車両が通過しようとするケースが挙げられる。本実施形態では、このようなケースを検出して、複数の物体に対応した１つの孤立領域を、それぞれの物体ごとの孤立領域に分離するために、高さ分離処理を実施する。そして、この高さ分離処理で１つの孤立領域が分離された場合には（Ｓ４４のＹｅｓ）、分離後の各孤立領域について、もう一度ラベリングを行い（Ｓ３４）、孤立領域の再設定を行う。なお、高さ分離処理の詳細については後述する。
【００７１】
このようにして得られる各孤立領域について、その幅（Ｕマップ上のＸ軸方向長さ）と、その孤立領域内の最小視差値ｄから計算される当該孤立領域に映し出されている検出対象物（オブジェクト）と自車両との距離ｚとを用い、下記の式（３）より、当該孤立領域に対応する画像領域に映し出されている物体の幅Ｗを計算することができる。
Ｗ  ＝  ｚ×（ｘｍａｘ−ｘｍｉｎ）／ｆ  ・・・（３）
この物体の幅Ｗが、予め決められた範囲内にある孤立領域を、オブジェクト候補領域として決定する（Ｓ４５）。
【００７２】
次に、視差画像の対応領域検出部１４３について説明する。
前記孤立領域検出部１４２によりオブジェクト候補領域として決定された孤立領域について、図１７に示すように、当該孤立領域が内接する矩形領域を設定したとき、この矩形領域の幅（リアル頻度Ｕマップ上のＸ軸方向長さ）は、当該孤立領域に対応する検出対象物（オブジェクト）の幅に対応する。また、設定した矩形領域の高さは、当該孤立領域に対応する検出対象物（オブジェクト）の奥行き（自車両進行方向長さ）に対応している。一方、各孤立領域に対応する検出対象物（オブジェクト）の高さについては、リアルＵマップ生成部１４１が生成したリアル高さＵマップから得られるが、ここでは、オブジェクト候補領域に係る孤立領域に対応したオブジェクトの正確な高さを得るために、視差画像の対応領域検出部１４３において、当該孤立領域に対応する視差画像上の対応領域を検出する。
【００７３】
図１８は、図１７に示したリアル頻度Ｕマップに対応する視差画像を模式的に示した説明図である。
視差画像の対応領域検出部１４３は、孤立領域検出部１４２から出力される孤立領域の情報に基づき、当該孤立領域の幅すなわちＸ軸方向座標がｘｍｉｎからｘｍａｘまでの範囲（検出幅）を決定する。また、視差画像の対応領域検出部１４３は、孤立領域検出部１４２から出力される孤立領域の情報に基づき、当該孤立領域に対応する視差画像上の高さすなわちＹ軸方向座標がｙｍｉｎ（最大視差ｄｍａｘについての路面からの最大高さに相当する地点のｙ座標）からｙｍａｘ（最大視差ｄｍａｘに対応する路面のｙ座標）までの範囲（検出高さ）を決定する。このように決定した検出幅及び検出高さについて、視差画像を走査し、当該孤立領域に設定されたリアル頻度Ｕマップ上での矩形領域の高さ、すなわち、リアル頻度ＵマップのＹ軸方向座標（視差値）がｄｍｉｎからｄｍａｘまでの範囲の値を視差値とする画素を候補画素として抽出する。
【００７４】
このようにして抽出した候補画素群の中で、前記検出幅に対して視差画像Ｘ軸方向に所定割合以上の候補画素が存在する横方向ラインを、オブジェクト候補ラインとして決定する。次に、縦方向走査して、ある注目しているオブジェクト候補ラインの周囲に他のオブジェクト候補ラインが所定の密度以上で存在している場合、その注目しているオブジェクト候補ラインをオブジェクトラインとして判定する。
【００７５】
オブジェクト領域抽出部１４４は、各孤立領域に対応する検出幅及び検出高さの範囲で探索して得られたオブジェクトライン群の最下端及び最上端を決定し、これにより規定される外接矩形を、図１９に示すように、視差画像上のオブジェクト領域として決定する。
【００７６】
次に、オブジェクトタイプ分類部１４５について説明する。
前記オブジェクト領域抽出部１４４で抽出されるオブジェクト領域の高さ（ｙｏｍａｘ−ｙｏｍｉｎ）から、下記の式（４）より、そのオブジェクト領域に対応する画像領域に映し出されている検出対象物（オブジェクト）の実際の高さＨｏを計算できる。ただし、「ｚｏ」は、当該オブジェクト領域内の最小視差値ｄから計算される当該オブジェクト領域に対応するオブジェクトと自車両との距離であり、「ｆ」はカメラの焦点距離を（ｙｏｍａｘ−ｙｏｍｉｎ）の単位と同じ単位に変換した値である。
Ｈｏ  ＝  ｚｏ×（ｙｏｍａｘ−ｙｏｍｉｎ）／ｆ  ・・・（４）
【００７７】
同様に、オブジェクト領域抽出部１４４で抽出されるオブジェクト領域の幅（ｘｏｍａｘ−ｘｏｍｉｎ）から、下記の式（５）より、そのオブジェクト領域に対応する画像領域に映し出されている検出対象物（オブジェクト）の実際の幅Ｗｏを計算できる。
Ｗｏ  ＝  ｚｏ×（ｘｏｍａｘ−ｘｏｍｉｎ）／ｆ  ・・・（５）
【００７８】
また、当該オブジェクト領域に対応する画像領域に映し出されている検出対象物（オブジェクト）の奥行きＤｏは、当該オブジェクト領域に対応した孤立領域内の最大視差値ｄｍａｘと最小視差値ｄｍｉｎから、下記の式（６）より計算することができる。
Ｄｏ  ＝  ＢＦ×（１／（ｄｍｉｎ−ｏｆｆｓｅｔ）−１／（ｄｍａｘ−ｏｆｆｓｅｔ））  ・・・（６）
【００７９】
オブジェクトタイプ分類部１４５は、このようにして計算できるオブジェクト領域に対応するオブジェクトの高さ、幅、奥行きの情報から、そのオブジェクトタイプの分類を行う。図２０に示す表は、オブジェクトタイプの分類を行うためのテーブルデータの一例を示すものである。これによれば、自車両前方に存在する検出対象物（オブジェクト）が、歩行者なのか、自転車なのか、小型車なのか、トラックなどか等を区別して認識することが可能となる。
【００８０】
次に、３次元位置決定部１４６について説明する。
検出されたオブジェクト領域に対応するオブジェクトまでの距離や、視差画像の画像中心と視差画像上のオブジェクト領域の中心との画像上の距離も把握されることから、オブジェクトの３次元位置を決定することができる。視差画像上のオブジェクト領域の中心座標を（ｒｅｇｉｏｎ＿ｃｅｎｔｅｒＸ，ｒｅｇｉｏｎ＿ｃｅｎｔｅｒＹ）とし、視差画像の画像中心座標を（ｉｍａｇｅ＿ｃｅｎｔｅｒＸ，ｉｍｇａｅ＿ｃｅｎｔｅｒＹ）としたとき、検出対象物（オブジェクト）の撮像部１１０Ａ，１１０Ｂに対する相対的な横方向位置および高さ方向位置は、下記の式（７）及び式（８）より計算できる。
Ｘｏ  ＝  Ｚ×（ｒｅｇｉｏｎ＿ｃｅｎｔｅｒＸ−ｉｍａｇｅ＿ｃｅｎｔｅｒＸ）／ｆ  ・・・（７）
Ｙｏ  ＝  Ｚ×（ｒｅｇｉｏｎ＿ｃｅｎｔｅｒＹ−ｉｍａｇｅ＿ｃｅｎｔｅｒＹ）／ｆ  ・・・（８）
【００８１】
次に、オブジェクトマッチング部１４７について説明する。
オブジェクトマッチング部１４７では、ある１つの撮像フレームで撮像された撮像画像から検出された各オブジェクト領域について、オブジェクトデータリスト１３５内のＳ＝０であるデータリストと比較マッチングを実行する。この比較マッチングによりマッチングしたオブジェクト領域については、オブジェクトデータリスト１３５内のマッチングしたオブジェクト、すなわち、過去（例えば直前の撮像フレーム）に検出されたオブジェクトと同一のものであるとして、”Ｍａｔｃｈｅｄ”に分類される。一方、オブジェクトデータリスト１３５内のオブジェクトとはマッチングされなかったオブジェクト領域については、新規に検出されたオブジェクトとして、”ＮｅｗＯｂｊｅｃｔ”に分類される。”ＮｅｗＯｂｊｅｃｔ”に分類されたオブジェクト領域についての各種情報は、新たに、オブジェクトデータリスト１３５内に追加される。
【００８２】
このようにして比較マッチングを実行した後、マッチングされなかったオブジェクトデータリスト１３５内のオブジェクトについては、”Ｍｉｓｓｉｎｇ”に分類される。”Ｍｉｓｓｉｎｇ”に分類されたオブジェクトは、未検出フレーム数がカウントアップされ、未検出フレーム数が規定値に達したオブジェクトについては、オブジェクトデータリスト１３５内から消去される。
【００８３】
次に、孤立領域検出部１４２における高さ分離処理について説明する。
図２１に示すように、自車両進行方向正面（撮像画像の左右方向中央部分）より横にずれた位置に存在する他車両（隣接車線を走行する車両や駐車車両など）と壁とが近接している場合、他車両と壁とが一つのオブジェクト候補領域として検出されてしまい、他車両又は壁あるいはその両方を適切に検出することができない場合がある。高さ分離処理では、このようなケースでも、他車両と壁とを別々のオブジェクト候補領域に分離して検出する処理を実行する。
【００８４】
図２２は、図２１の画像例に対応するリアル頻度Ｕマップを示す説明図である。
図２１の画像例のように、道路脇に存在する壁に寄せて他車両が駐車してある道路を自車両が通過しようとするとき、これらの壁と他車両をそれぞれ映し出す画像領域は、図２２に示すリアル頻度Ｕマップ上において、撮像画像の左右方向で近接していて、かつ、所定値以上の頻度ｆをもつ視差値の値ｄが近接したものである。このような場合、他車両の壁よりの部分の視差値がその分散によって壁に対応する視差値と連結されてしまい、上述した孤立領域検出処理における縦分離処理や横分離処理まで実施してもなお、図２２に示すように、他車両と壁とが１つの孤立領域として検出される。
【００８５】
図２３は、図２１の画像例に対応するリアル高さＵマップを示す説明図である。
図２３に示すリアル高さＵマップは、当該視差画像上における実空間高さの分布を示すものであり、本実施形態では、図２２に示される個々の孤立領域内に限定して実空間高さの分布が示される。また、本実施形態では、実空間高さの分布のうち、各視差値に対応した実空間高さの最大値Ｈｍａｘの分布を示している。図２３に示すリアル高さＵマップにおいては、実空間高さが比較的低い他車両に対応する孤立領域部分については画素値が低く、実空間高さが比較的高い壁に対応する孤立領域部分については画素値が高くなっている。本実施形態の高さ分離処理では、リアル高さＵマップを利用し、実空間高さの違いによって孤立領域を分離することにより、他車両と壁とを個別の孤立領域として検出されるようにしている。
【００８６】
図２４は、本実施形態における高さ分離処理の流れを示すフローチャートである。
本実施形態における高さ分離処理（Ｓ４３）では、まず、処理対象となる孤立領域の左右方向位置が、所定の高さ分離実行領域内にあるか否かを判定する（Ｓ４３−１）。本実施形態では、正面（左右方向中央部分）については高さ分離実行領域外としているので、孤立領域の左右方向位置が正面であれば（Ｓ４３−１のＹｅｓ）、そのまま高さ分離処理を終了する。仮に正面に複数の物体が近接して横並びで存在する場合、両物体間に存在する隙間を撮像することが可能である。そのため、これらの物体をそれぞれ映し出す画像領域は、所定値以上の頻度ｆをもつ視差値の値ｄが近接した画像領域ではあるが、撮像画像の左右方向においては一定の隙間が存在しており、上述した視差補間処理を実施しても連続したものとはならず、近接したものとはならない。よって、この場合、上述した二値化処理やラベリング処理によって個別の孤立領域として検出されることになり、高さ分離処理によって分離する必要がない。そのため、本実施形態では、正面については高さ分離実行領域外としている。
【００８７】
具体的には、図２２に示したリアル頻度Ｕマップにおいて、図中縦方向に延びる２つの破線に囲まれた領域（正面）に重複する部分が無い孤立領域については、高さ分離実行領域内にあると判定して（Ｓ４３−１のＮｏ）、高さ分離処理を継続する。正面領域の幅は、例えば実空間上の距離で１ｍとする。なお、２つの破線の左右方向端部側に設定される高さ分離実行領域を、例えば実空間上の距離で１０ｍ程度の領域幅に設定し、その高さ分離実行領域内に孤立領域の全体が収まっている孤立領域を、高さ分離実行領域内にあると判定してもよい。
【００８８】
高さ分離実行領域内であると判定された孤立領域については、次に、各孤立領域の左右方向位置に応じて最大高さＨｍａｘの探索を行うための探索範囲を設定する（Ｓ４３−２）。この探索範囲の設定では、壁に対応すると想定される領域を壁の探索範囲として設定し、車両に対応すると想定される領域を車両の探索範囲として設定する。具体的には、図２５の左側に位置する孤立領域については、図中右上がりの斜線がひかれている領域を壁の探索範囲として設定する。この探索範囲の幅は例えば孤立領域幅の１／２とし、その高さは孤立領域と同じ高さに設定する。また、右下がりの斜線がひかれている領域は、車両の探索範囲として設定する。この探索範囲の幅は例えば８画素分とし、その高さは孤立領域と同じ高さに設定する。図２５の右側に位置する孤立領域についても同様である。
【００８９】
このようにして壁と車両の探索範囲を設定したら、まず、リアル高さＵマップの情報を利用し、壁の探索範囲に対して最大高さＨｍａｘが壁用高さ閾値を超える領域を探索し、壁が存在するか否かを判定する（Ｓ４３−３）。具体的には、図２６に示すように、まず、壁の探索範囲における行領域（リアル高さＵマップ上のＹ軸位置）ごとに、それぞれの列領域に対応した最大高さＨｍａｘを壁用高さ閾値と比較して、行領域ごとの壁用高さ閾値を超える視差値の数をカウントする（Ｓ４３−３−１）。そして、各行領域のカウント値が所定の壁カウント閾値よりも大きい行領域の数をカウントする（Ｓ４３−３−２）。このようにしてカウントした行領域の数が所定の壁領域数閾値より大きいときには、この探索範囲には高い壁が存在するとして高壁フラグを立てる（Ｓ４３−３−３）。
【００９０】
また、リアル高さＵマップの情報を利用し、車両の探索範囲に対して最大高さＨｍａｘが車両用高さ閾値を超える領域を探索し、壁が存在するか否かを判定する（Ｓ４３−４）。具体的には、図２７に示すように、まず、車両の探索範囲における行領域（リアル高さＵマップ上のＹ軸位置）ごとに、それぞれの列領域に対応した最大高さＨｍａｘを車両用高さ閾値と比較して、行領域ごとの車両用高さ閾値を超える視差値の数をカウントする（Ｓ４３−４−１）。そして、各行領域のカウント値が所定の車両カウント閾値よりも大きい行領域の数をカウントする（Ｓ４３−４−２）。このようにしてカウントした行領域の数が所定の車両領域数閾値より大きいときには、この探索範囲には高い車両が存在するとして高車両フラグを立てる（Ｓ４３−４−３）。
【００９１】
そして、壁の探索領域について高壁フラグが立てられ、かつ、車両の探索領域について高車両フラグが立てられていない場合（Ｓ４３−５のＹｅｓ）、最大高さＨｍａｘが壁用高さ閾値を超える視差値に対して、新しいラベルを割り当てる新ラベル割り当て処理を実行する（Ｓ４３−７）。このように新たなラベルが割り当てた孤立領域部分は、もとの孤立領域とは別のラベルが割り当てられる結果、もとの孤立領域は、最大高さＨｍａｘが壁用高さ閾値を超える視差値に対応する部分とそれ以外の部分とに分離される。
【００９２】
このようにして、高さ分離処理により孤立領域が分離された場合（Ｓ４４のＹｅｓ）、分離後の孤立領域について更に細かい孤立領域が検出されることがあり得るため、分離後の孤立領域については、もう一度ラベリングを行い（Ｓ３４）、孤立領域の再設定を行う。
【００９３】
以上に説明したものは一例であり、次の態様毎に特有の効果を奏する。
（態様Ａ）
自車両前方の撮像領域についての視差画像データ等の視差画像情報を生成する視差画像生成部１３２等の視差画像情報生成手段と、前記視差画像情報生成手段が生成した視差画像情報に基づいて、前記撮像画像を左右方向に複数分割して得られる各列領域内における視差値ｄの頻度分布を示すリアル頻度Ｕマップ情報等の視差ヒストグラム情報を生成するＵマップ生成部１４０及びリアルＵマップ生成部１４１等の視差ヒストグラム情報生成手段と、前記視差ヒストグラム情報生成手段が生成した視差ヒストグラム情報に基づいて、前記撮像画像の左右方向で近接していて、かつ、所定値以上の頻度ｆをもつ視差値の値ｄが近接している画像領域を、他車両等の検出対象物（オブジェクト）を映し出すオブジェクト領域等の検出対象物画像領域の候補領域（孤立領域）として選別し、選別した候補領域の中から所定の特定条件に従って検出対象物画像領域を特定する孤立領域検出部１４２、視差画像の対応領域検出部１４３、オブジェクト領域抽出部１４４、オブジェクトタイプ分類部１４５等の検出対象物画像領域特定手段とを有し、前記撮像領域内に存在する検出対象物を検出する画像処理基板１２０及び画像解析ユニット１０２等の物体検出装置において、前記視差画像情報に基づいて、当該視差画像上における実空間高さの分布を示すリアル高さＵマップ情報等の高さ分布情報を生成するＵマップ生成部１４０及びリアルＵマップ生成部１４１等の高さ分布情報生成手段を有し、前記検出対象物画像領域特定手段は、前記高さ分布情報を用いて、実空間高さが所定の高さ条件を満たす画像領域を前記候補領域として選別することを特徴とする。
これによれば、候補領域を選別する選別条件に実空間上の高さが所定範囲内であるなどの条件が含まれる結果、実空間上の高さが有意に異なる複数の物体を映し出す複数の画像領域を別々の候補領域として選別することが可能となる。よって、近接した複数の物体を映し出す複数の画像領域が１つの候補領域として誤選別される事態を抑制できる。
【００９４】
（態様Ｂ）
前記態様Ａにおいて、前記検出対象物画像領域特定手段は、前記視差ヒストグラム情報に基づいて候補領域（孤立領域）を仮選別した後、前記高さ分布情報を用いて、仮選別された候補領域を前記所定の高さ条件に従って分離して個別の候補領域として選別するものであり、前記高さ分布情報生成手段は、前記仮選別された候補領域内における実空間高さの分布を示す高さ分布情報を生成することを特徴とする。
これによれば、仮選別された候補領域内に限定して高さ分布情報を生成するので、高さ分布情報の生成に関する処理を軽減できる。
【００９５】
（態様Ｃ）
前記態様Ｂにおいて、前記高さ分布情報生成手段が生成する高さ分布情報は、前記仮選別された候補領域内における前記各列領域について視差値ごとの実空間上の最大高さの分布を示すものであることを特徴とする。
これによれば、高さ分布情報の生成に関する処理を更に軽減できる。
【００９６】
（態様Ｄ）
前記態様Ａ〜Ｃのいずれかの態様において、前記所定の高さ条件は、前記撮像画像上の位置の違いによって異なることを特徴とする。
実空間上の高さが有意に異なる複数の物体を映し出す複数の画像領域が１つの候補領域として選別される状況は予め想定することができるので、それぞれの物体が映し出される各画像領域の撮像画像上の位置は推測することが可能である。本態様によれば、このようにして推測される領域ごとに、その領域に存在することが予想されるそれぞれの物体に適した高さ条件を設定することで、各物体を映し出す複数の画像領域を個別の候補領域へ適切に分離することができる。
【００９７】
（態様Ｅ）
前記態様Ｄにおいて、前記所定の高さ条件は、前記撮像画像上の位置の違いによって異なる閾値に対し、当該位置における実空間高さが当該位置における閾値を超えているという条件を含むことを特徴とする。
これによれば、各物体を映し出す複数の画像領域を個別の候補領域へ分離する処理をより簡易に実行することができる。
【００９８】
（態様Ｆ）
前記態様Ａ〜Ｅのいずれかの態様において、前記検出対象物画像領域特定手段は、所定の領域設定条件に従って設定される前記撮像画像の一部分である高さ分離実行領域等の高さ選別用画像領域に対しては、前記高さ分布情報を用いて前記候補領域を選別するが、該撮像画像の他の部分（正面領域等）に対しては前記高さ分布情報を用いずに前記候補領域を選別することを特徴とする。
実空間上の高さが有意に異なる複数の物体を映し出す複数の画像領域が１つの候補領域として選別されてしまう事態は、撮像画像上の特定の位置だけで起こることがある。具体的には、上述したとおり、撮像画像の左右方向中央部分（正面領域）ではそのような事態が起こりにくい。本態様によれば、このような事態が起こりにくい箇所については、高さ分布情報を用いた候補領域の選別を実施しないので、処理の簡略化を実現できる。
【００９９】
（態様Ｇ）
自車両１００等の移動体の移動方向前方を撮像領域とし、該撮像領域についての視差画像情報に基づいて、該撮像領域内に存在する他車両等の検出対象物を検出する物体検出装置と、前記物体検出装置の検出結果に基づいて、移動体に搭載された所定の機器を制御する移動体機器制御手段とを備えた移動体機器制御システムにおいて、前記物体検出装置として、前記態様Ａ〜Ｆのいずれかの態様に係る物体検出装置を用いることを特徴とする。
これによれば、近接した複数の物体を映し出す複数の画像領域が１つの候補領域として誤選別される事態を抑制できるので、移動体に搭載された所定の機器をより高精度に制御することが可能となる。
【０１００】
（態様Ｈ）
撮像領域についての視差画像情報を生成する視差画像情報生成手段と、前記視差画像情報生成手段が生成した視差画像情報に基づいて、前記撮像画像を左右方向に複数分割して得られる各列領域内における視差値の頻度分布を示す視差ヒストグラム情報を生成する視差ヒストグラム情報生成手段と、前記視差ヒストグラム情報生成手段が生成した視差ヒストグラム情報に基づいて、前記撮像画像の左右方向で近接していて、かつ、所定値以上の頻度をもつ視差値の値が近接している画像領域を、検出対象物を映し出す検出対象物画像領域の候補領域として選別し、選別した候補領域の中から所定の特定条件に従って検出対象物画像領域を特定する検出対象物画像領域特定手段とを有し、前記撮像領域内に存在する検出対象物を検出する物体検出装置のコンピュータを、前記視差画像情報生成手段、前記視差ヒストグラム情報生成手段、及び、前記検出対象物画像領域特定手段として機能させる物体検出用プログラムであって、前記視差画像情報に基づいて、当該視差画像上における実空間高さの分布を示す高さ分布情報を生成する高さ分布情報生成手段として、前記コンピュータを機能させるものであり、前記検出対象物画像領域特定手段は、前記高さ分布情報を用いて、実空間高さが所定の高さ条件を満たす画像領域を前記候補領域として選別することを特徴とする。
これによれば、候補領域を選別する選別条件に実空間上の高さが所定範囲内であるなどの条件が含まれる結果、実空間上の高さが有意に異なる複数の物体を映し出す複数の画像領域を別々の候補領域として選別することが可能となる。よって、近接した複数の物体を映し出す複数の画像領域が１つの候補領域として誤選別される事態を抑制できる。
【０１０１】
なお、このプログラムは、ＣＤ−ＲＯＭ等の記録媒体に記録された状態で配布したり、入手したりすることができる。また、このプログラムを乗せ、所定の送信装置により送信された信号を、公衆電話回線や専用線、その他の通信網等の伝送媒体を介して配信したり、受信したりすることでも、配布、入手が可能である。この配信の際、伝送媒体中には、コンピュータプログラムの少なくとも一部が伝送されていればよい。すなわち、コンピュータプログラムを構成するすべてのデータが、一時に伝送媒体上に存在している必要はない。このプログラムを乗せた信号とは、コンピュータプログラムを含む所定の搬送波に具現化されたコンピュータデータ信号である。また、所定の送信装置からコンピュータプログラムを送信する送信方法には、プログラムを構成するデータを連続的に送信する場合も、断続的に送信する場合も含まれる。
【符号の説明】
【０１０２】
１００  自車両
１０１  撮像ユニット
１０２  画像解析ユニット
１０３  表示モニタ
１０６  車両走行制御ユニット
１１０Ａ，１１０Ｂ  撮像部
１１３Ａ，１１３Ｂ  画像センサ
１１５Ａ，１１５Ｂ  画像センサコントローラ
１２０  画像処理基板
１３１  平行化画像生成部
１３２  視差画像生成部
１３３  オブジェクトトラッキング部
１３４  オブジェクト選択部
１３５  オブジェクトデータリスト
１３６  視差補間部
１３７  Ｖマップ生成部
１３８  路面形状検出部
１３９  テーブル算出部
１４０  Ｕマップ生成部
１４１  リアルＵマップ生成部
１４２  孤立領域検出部
１４３  対応領域検出部
１４４  オブジェクト領域抽出部
１４５  オブジェクトタイプ分類部
１４６  ３次元位置決定部
１４７  オブジェクトマッチング部
【先行技術文献】
【特許文献】
【０１０３】
【特許文献１】特開２０１４−２２５２２０号公報
【図１】
2016206801.tif 000003
【図２】
2016206801.tif 000004
【図３】
2016206801.tif 000005
【図４】
2016206801.tif 000006
【図５】
2016206801.tif 000007
【図６】
2016206801.tif 000008
【図７】
2016206801.tif 000009
【図８】
2016206801.tif 000010
【図９】
2016206801.tif 000011
【図１０】
2016206801.tif 000012
【図１１】
2016206801.tif 000013
【図１２】
2016206801.tif 000014
【図１６】
2016206801.tif 000015
【図１８】
2016206801.tif 000016
【図１９】
2016206801.tif 000017
【図２０】
2016206801.tif 000018
【図２４】
2016206801.tif 000019
【図２６】
2016206801.tif 000020
【図２７】
2016206801.tif 000021
【図１３】
2016206801.tif 000022
【図１４】
2016206801.tif 000023
【図１５】
2016206801.tif 000024
【図１７】
2016206801.tif 000025
【図２１】
2016206801.tif 000026
【図２２】
2016206801.tif 000027
【図２３】
2016206801.tif 000028
【図２５】
2016206801.tif 000029