(57)【要約】      （修正有）【課題】遠方にて道路勾配が減少している道路において、道路遠方の障害物領域を道路領域と誤検出することなく、道路領域の範囲を本来の範囲に修正することができる道路領域検出装置を提供する。【解決手段】道路領域検出方法は、作成された道路モデルの視差値からＶ-disparity平面に投影された視差値を差し引いた視差差分値Δdispを算出し、視差差分値Δdispの軌跡（波形部）を抽出する。更に、画像から消失点のＶ座標位置を算出し、複数の波形部のうち、消失点のＶ座標位置に最も近い波形部とＶ座標軸とによって囲まれてなる図形の面積が、他の何れの区間における図形の面積よりも大きく、且つこの軌跡における最大の視差差分値が所定の閾値以上であると判定したときは、道路モデルに基づいて推定した道路領域の遠方端を、消失点のＶ座標位置に最も近い波形部のＶ座標位置の最大端側に変更する。【選択図】図３
2017156965.tif 000002
【特許請求の範囲】
【請求項１】
何れもが車両前方の路面を撮影する左カメラ及び右カメラによりステレオ画像を取得する画像取得手段と、
前記ステレオ画像から同ステレオ画像上の各点の視差値を算出するとともに同視差値を同ステレオ画像と同じＶ座標軸及びＵ座標軸を有する画像上に配置した視差画像を作成する視差画像作成手段と、
前記視差画像を、前記視差画像の縦軸であるＶ座標軸と平行な複数の仮想線によって細分割して複数の微小区間を得るとともに、前記複数の微小区間のそれぞれの視差値を、前記視差画像のＶ座標軸を縦軸として有し前記微小区間のそれぞれの視差値を横軸として有するＶ−視差平面へ投影することによって、複数のＶ−視差平面を作成するＶ−視差平面作成手段と、
前記複数のＶ−視差平面のそれぞれに投影された視差値から主要な直線を道路モデルとして抽出することによって前記複数のＶ−視差平面のそれぞれに対して道路モデルを作成する道路モデル作成手段と、
前記道路モデルに基づいて前記微小区間のそれぞれの道路領域の遠方端を推定し、
前記複数のＶ−視差平面のそれぞれの各Ｖ座標位置において、前記作成された道路モデルの視差値から前記投影された視差値を差し引いた値である視差差分値を算出し、
前記視差差分値を、前記Ｖ座標軸を縦軸として有し同視差差分値を横軸として有するＶ−視差差分値平面へ投影し、同視差差分値が０となる隣接する２点間に存在する視差差分値の軌跡であって正の値を示す軌跡を一つの波形部として認識し、
前記取得したステレオ画像の一方から消失点のＶ座標位置を算出し、
前記波形部のうち、前記消失点のＶ座標位置に最も近い波形部と前記Ｖ座標軸とによって囲まれてなる図形の面積が他の何れの波形部と前記Ｖ座標軸とによって囲まれてなる図形の面積よりも大きく、且つ前記消失点のＶ座標位置に最も近い波形部における最大の視差差分値が所定の閾値以上であるという特定条件が成立するか否かを判定し、
前記特定条件が成立しない場合には前記道路領域の遠方端を前記推定した遠方端に設定し、
前記特定条件が成立する場合には前記道路領域の遠方端を前記消失点のＶ座標位置に最も近い波形部のＶ座標位置の最大値に変更する、遠方端位置決定手段と、
を備える道路領域検出装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像取得手段により取得された画像から、道路領域を検出する道路領域検出装置に関する。
【背景技術】
【０００２】
障害物への衝突回避及びＡＣＣ（Adaptive Cruise Control） 等の運転者支援システムに適用される道路領域検出装置は、車両前方の道路領域と障害物とをできるだけ正確に識別する必要がある。
【０００３】
そこで、従来の道路領域検出装置の一つ（以下、「従来装置」と称呼される。）は、撮像画像から算出された画素毎の視差（disparity） をＵ−Ｖ平面に表現した視差図を使用してＵ−視差図（Ｕ-disparity平面）を作成する。そして、従来装置は、Ｕ-disparity平面の下端から上端に向かって、各行について左右の道路境界（白線及びガードレール等のエッジ）を探索する。更に、従来装置は、Ｕ-disparity平面上において探索された左右の道路境界の間を道路領域として検出する（例えば、特許文献１を参照。）。
【０００４】
より具体的に述べると、Ｕ-disparity平面は、横軸に視差図の横軸であるＵ座標軸、縦軸に視差（disparity） を対応させた画像である。Ｕ-disparity平面の各画素値は、視差図を縦軸と平行な複数の仮想線により区切られてできる複数の微小区間に存在する視差の頻度を輝度（階調）によって表現している。図１５（Ａ）に示した例によれば、車両が平坦路を走行中であるときのＵ-disparity平面において、道路境界（エッジ）８１に対応する点は比較的高い輝度を有し、走行可能領域（即ち、道路領域）８２に対応する点は比較的低い輝度を有する。そこで、従来装置はＵ-disparity平面上にて探索した左右のエッジ間８３を道路領域として検出する。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１４−６７４０７号公報
【発明の概要】
【０００６】
ところが、例えば、遠方が下り坂となっている平坦路を車両が走行している場合、画像上、遠方の道路領域が見えなくなり、道路遠方の障害物（例えば、ガードレール及びフェンス等）が「道路が遠方まで平坦であれば道路領域である領域」に存在する場合がある（図１５（Ｂ）の領域８４を参照。）。この場合の道路遠方の視差は、道路が遠方まで平坦である場合の視差とは異なる。この差異はＵ-disparity平面上においても現れ、遠方が下り坂となっている平坦路の場合、図１５（Ｃ）に示したように、遠方の道路領域に比較的高い輝度を示す領域８５が現れる。しかしながら、従来装置はこれらの視差の差異を判別することができず、結果として、障害物が存在する領域（以下、「障害物領域」とも称呼する。）を道路領域と（即ち、下り坂の道路を平坦な道路と）誤検出してしまうという問題があった。この問題は、道路が平坦路から下り坂に変化する場合に限らず、登り坂の勾配を正、下り坂の勾配を負とすれば、道路勾配が減少するすべての場合に当てはまる。
【０００７】
本発明は上記問題に対処するために為されたものである。即ち、本発明の目的の一つは、車両が現在走行している道路の路面の勾配に対し遠方の路面の勾配が減少する道路において、道路遠方の障害物領域を道路領域と誤検出することなく、道路領域の範囲を本来の範囲に修正することができ、以て、障害物を正しく認識することが可能な道路領域検出装置を提供することにある。
【０００８】
そこで、本発明の道路領域検出装置（以下、「本発明装置」とも称呼する。）は、
画像取得手段（２０）と、視差画像作成手段と、Ｖ−視差平面作成手段と、道路モデル作成手段と、遠方端位置決定手段と、を備える。
【０００９】
前記画像取得手段は、何れもが車両前方の路面を撮影する左カメラ（２０Ｌ）及び右カメラ（２０Ｒ）によりステレオ画像を取得する（ステップ３１０）。
【００１０】
前記視差画像作成手段は、前記ステレオ画像から同ステレオ画像上の各点の視差値を算出するとともに同視差値を同ステレオ画像と同じＶ座標軸及びＵ座標軸を有する画像上に配置した視差画像（４０）を作成する（ステップ３２０）。
【００１１】
前記Ｖ−視差平面作成手段は、前記視差画像を、前記視差画像の縦軸であるＶ座標軸と平行な複数の仮想線（４３）によって細分割して複数の微小区間（ｄＵ）を得るとともに、前記複数の微小区間のそれぞれの視差値を、前記視差画像のＶ座標軸を縦軸として有し前記微小区間のそれぞれの視差値を横軸として有するＶ−視差平面へ投影することによって、複数のＶ−視差平面（５０）を作成する（ステップ３３０）。
【００１２】
前記道路モデル作成手段は、前記複数のＶ−視差平面のそれぞれに投影された視差値から主要な直線を道路モデルとして抽出することによって前記複数のＶ−視差平面のそれぞれに対して道路モデル（５３）を作成する（ステップ３４０）。
【００１３】
前記遠方端位置決定手段は、前記道路モデルに基づいて前記微小区間のそれぞれの道路領域の遠方端を推定し（ステップ３５０、図１１のルーチン）、前記複数のＶ−視差平面のそれぞれの各Ｖ座標位置において、前記作成された道路モデルの視差値から前記投影された視差値を差し引いた値である視差差分値（Δdisp）を算出する（ステップ１２２０）。
【００１４】
更に、前記遠方端位置決定手段は、前記視差差分値を、前記Ｖ座標軸を縦軸として有し同視差差分値を横軸として有するＶ−視差差分値平面（６０）へ投影し、同視差差分値が０となる隣接する２点間に存在する視差差分値の軌跡であって正の値を示す軌跡を一つの波形部（６１）として認識する（ステップ３６０、ステップ１２３０、ステップ１２８０）。
【００１５】
加えて、前記遠方端位置決定手段は、前記取得したステレオ画像の一方から消失点（９６）のＶ座標位置を算出し（ステップ１３１０）、前記波形部のうち、前記消失点のＶ座標位置に最も近い波形部（６１ａ）と前記Ｖ座標軸とによって囲まれてなる図形の面積が他の何れの波形部と前記Ｖ座標軸とによって囲まれてなる図形の面積よりも大きく、且つ前記消失点のＶ座標位置に最も近い波形部における最大の視差差分値（ΔdispMAX） が所定の閾値（Δdispth）以上であるという特定条件が成立するか否かを判定する（ステップ３７０、ステップ１３２０、ステップ１３３０）。
【００１６】
更に、前記遠方端位置決定手段は、前記特定条件が成立しない場合（ステップ１３３０：Ｎｏ）には前記道路領域の遠方端を前記推定した遠方端に設定し（ステップ１４１０：Ｎｏ）、前記特定条件が成立する場合（ステップ１３３０：Ｙｅｓ）には前記道路領域の遠方端を前記消失点のＶ座標位置に最も近い波形部のＶ座標位置の最大値（６３）に変更する（ステップ１４１０にて「Ｙｅｓ」と判定、ステップ１４２０）。
【００１７】
車両が現在走行している路面の勾配に対し遠方の路面の勾配が減少している道路において、Ｖ−視差平面上、前記作成される道路モデル（図１６（Ａ）中の破線９１を参照。）と前記視差値（同図中の実線９２を参照。）との差である「視差差分値」は、車両が現在走行している路面においては比較的小さく（同図中の領域９３を参照。）、遠方の路面においては比較的大きい（同図中の領域９４を参照。）傾向がある。
【００１８】
一方、例えば、画像上のエッジ（道路の白線及び道路脇のガードレール等）を抽出し、それらのエッジを結ぶ線の延長線が複数あるとき、これらの延長線同士の交点を消失点９６と定めると、上記道路の場合、図１６（Ｂ）に示したように、道路遠方の路面高さ９５は、消失点９６の高さより低い位置に存在する。
【００１９】
そこで、発明者は「視差差分値が比較的小さい範囲」と「視差差分値が比較的大きい範囲」との境界が本来の道路領域の遠方端（画像平面における道路領域の上端）と略一致することに着目し、「視差差分値が比較的大きい範囲」を特定するための以下の方法を着想した。
【００２０】
その方法は、先ず、上記得られた視差差分値をＶ−視差差分値平面に投影して視差差分値が０となる隣接する２点間に存在する視差差分値の軌跡であって正の値を示す軌跡を一つの波形部として認識する。この波形部が複数得られる場合には、消失点のＶ座標位置に最も近い位置にある波形部が「実際の道路領域と道路モデルによる道路領域との乖離度合い」を表していると推定する。次に、この波形部とＶ座標軸とによって囲まれてなる図形が所定の大きさ（他の何れの波形部とＶ座標軸とによって囲まれてなる図形の面積よりも大きく、且つ消失点のＶ座標位置に最も近い波形部における最大の視差差分値が所定の閾値以上）を有するならば、上記推定が確からしいと判断する。
【００２１】
これにより、本発明装置によれば、視差差分値が比較的大きい範囲を特定し、この視差差分値の範囲に対応する視差差分値の軌跡（波形部）のＶ座標位置の最大端（画像平面における下端）が本来の道路領域の遠方端（画像平面における上端）であると推定することができる。
【００２２】
このように、本発明装置によれば、車両が現在走行している路面の勾配に対し遠方の路面の勾配が減少している道路において、道路遠方の障害物領域を道路領域と誤検出することなく、道路領域の範囲を本来の範囲に修正することができる。その結果、本発明方法によれば、障害物を正しく認識することが可能となる。
【００２３】
上記説明においては、本発明の理解を助けるために、後述する実施形態に対応する発明の構成に対し、その実施形態で用いた名称及び／又は符号を括弧書きで添えている。しかしながら、本発明の各構成要素は、前記符号によって規定される実施形態に限定されるものではない。本発明の他の目的、他の特徴及び付随する利点は、以下の図面を参照しつつ記述される本発明の実施形態についての説明から容易に理解されるであろう。
【図面の簡単な説明】
【００２４】
【図１】図１は、本発明の実施形態に係る道路領域検出装置の概略構成図である。
【図２】図２は、図１に示したカメラが撮影（取得）するステレオカメラ画像の例である。
【図３】図３は、図１に示した道路領域検出装置のＣＰＵが実行する「道路領域検出・修正ルーチン」を示したフローチャートである。
【図４】図４は、図１に示した道路領域検出装置が作成する視差画像の例であり、図４（Ａ）は平坦な道路の場合、図４（Ｂ）は遠方にて勾配が減少する道路の場合の視差画像の例である。
【図５】図５は、図１に示した道路領域検出装置が算出して得られるＶ−視差平面の例であり、図５（Ａ）は視差画像の例、図５（Ｂ）は視差画像中央付近の微小区間に対応するＶ−視差平面の例、図５（Ｃ）は視差画像中央と右端の中間付近の微小区間に対応するＶ−視差平面の例である。
【図６】図６は、図１に示した道路領域検出装置が算出して得られるＶ−視差平面の例であり、遠方で道路の勾配が減少する道路の例を示した図である。
【図７】図７は、図１に示した道路領域検出装置が行う道路領域の推定方法を説明するための図である。
【図８】図８（Ａ）は、図１に示した道路領域検出装置が算出した視差差分値をＶ−視差差分値平面に投影してできる軌跡（波形部）を説明するための図であり、図８（Ｂ）は、波形部と消失点のＶ座標位置との関係を説明するための図である。
【図９】図９は、図１に示した道路領域検出装置が行う消失点の算出方法を説明するための図である。
【図１０】図１０は、図１に示した道路領域検出装置が行う道路領域遠方端位置変更方法を説明するための図である。
【図１１】図１１は、図１に示した道路領域検出装置のＣＰＵが実行する「道路領域推定ルーチン」を示したフローチャートである。
【図１２】図１２は、図１に示した道路領域検出装置のＣＰＵが実行する「視差差分値の軌跡（波形部）抽出ルーチン」を示したフローチャートである。
【図１３】図１３は、図１に示した道路領域検出装置のＣＰＵが実行する「勾配減少有無判定ルーチン」を示したフローチャートである。
【図１４】図１４は、図１に示した道路領域検出装置のＣＰＵが実行する「道路領域遠方端位置変更ルーチン」を示したフローチャートである。
【図１５】図１５（Ａ）は、Ｕ−視差図の例を、図１５（Ｂ）は遠方の道路が見えなくなる画像例を、図１５（Ｃ）は、図１５（Ｂ）の画像をＵ−視差図に変換した例をそれぞれ示した図である。
【図１６】図１６（Ａ）は、Ｖ−視差図の例を示した図であり、図１６（Ｂ）は、消失点の求め方の例を示した図である。
【発明を実施するための形態】
【００２５】
以下、図面を参照しながら本発明の実施形態に係る道路領域検出装置（以下、「本検出装置」とも称呼する。）について説明する。
【００２６】
（構成）
図１に示したように、本検出装置は、図１に示した車両１０に適用される。本検出装置は、カメラ装置２０と、電子制御装置３０と、を備えている。
【００２７】
カメラ装置２０は左右一組のステレオカメラ（左カメラ２０Ｌ及び右カメラ２０Ｒ）を備える。カメラ装置２０は、左カメラ２０Ｌ及び右カメラ２０Ｒがインナーリアビューミラー（いわゆるルームミラー）２２の両端にそれぞれ位置するように、車体１８に固定されている。左カメラ２０Ｌの光軸２４Ｌは、カメラ装置２０が車体１８に固定された状態において所定の俯角φを有し且つ車体前後方向に一致している。同様に、右カメラ２０Ｒの光軸２４Ｒは、カメラ装置２０が車体１８に固定された状態において所定の俯角φを有し且つ車体前後方向に一致している。更に、左カメラ２０Ｌの撮像素子の中心及び右カメラ２０Ｒの撮像素子の中心を結ぶ直線は車体１８の横幅方向と平行となっている。従って、左カメラ２０Ｌ及び右カメラ２０Ｒのそれぞれは、車両進行方向（車両前方）の路面を撮像することができるようになっている。なお、左カメラ２０Ｌ及び右カメラ２０Ｒのそれぞれの撮像素子は、ＣＣＤ及びＣＭＯＳ等の固体撮像素子である。
【００２８】
より具体的に述べると、左カメラ２０Ｌ及び右カメラ２０Ｒのそれぞれは、電子制御装置３０と電気的に接続され、電子制御装置３０からの指示に従って、車両１０から前方に所定距離だけ離間した位置から遠方の位置までの路面を撮像することができる。左カメラ２０Ｌ及び右カメラ２０Ｒにより撮像された画像は、図２に示したような左右一組の画像を構成する。この一組の画像は、以下、「ステレオ画像」とも称呼する。
【００２９】
電子制御装置（ＥＣＵ）３０は周知のマイクロコンピュータを含む電子回路であり、ＣＰＵ、ＲＯＭ、ＲＡＭ及びインタフェースＩ／Ｆ等を含む。ＥＣＵは、エレクトリックコントロールユニットの略称である。ＣＰＵは、メモリ（ＲＯＭ）に格納されたインストラクション（ルーチン）を実行することにより後述する各種機能を実現する。
【００３０】
（作動）
次に、本検出装置の作動について説明する。
【００３１】
＜全体フロー＞
電子制御装置３０のＣＰＵは、一定時間（例えば、１００ｍｓ）が経過する毎に図３にフローチャートにより示した「道路領域検出・修正ルーチン」を実行するようになっている。従って、ＣＰＵは所定のタイミングにてステップ３００から処理を開始して以下に述べるステップ３１０乃至ステップ３８０の処理を順に実行してステップ３９５に進み、本ルーチンを一旦終了する。
【００３２】
ステップ３１０：ＣＰＵは、カメラ装置２０に撮像を行わせ、それにより得られた一組の画像（即ち、ステレオ画像）を受け取る。
【００３３】
ステップ３２０：ＣＰＵは、受け取った一組の画像から視差画像を作成する。
【００３４】
より具体的に述べると、ＣＰＵは、先ず、受け取った一組の画像に基づいて、周知のステレオマッチング法の一つであるブロックマッチング法により視差を算出する。即ち、ＣＰＵは、受け取った一組の画像のうちの一方の画像（例えば、右カメラ２０Ｒにより撮影された画像（右画像））を小面積の正方形又は長方形の領域に分割し、分割した各領域に撮影されている物標が他方の画像（例えば、左カメラ２０Ｌにより撮影された画像（左画像））の対応する領域において撮影されている位置を決定し、その位置に基づいて右画像及び左画像の間の位置ずれ量を視差として算出する。例えば、図２に示したように、路側に設置された標識Ｍ１のｘ座標位置は、右画像においてｘ１、左画像において（ｘ１＋ｄ）となる。従って、視差はこれらの水平方向（ｘ軸方向）の差分（位置のずれ）ｄである。
【００３５】
次に、ＣＰＵは、この算出した視差を用いて視差画像を作成する。視差画像は、横軸がＵ座標軸であり縦軸がＶ座標軸であるＵ−Ｖ平面の画像であって、各（Ｕ，Ｖ）座標における視差が輝度（階調）により表現された画像である。
【００３６】
図４（Ａ）は、道路が遠方まで平坦である場合に得られる視差画像の例である。この視差画像４０において、道路領域４１のうち車両１０の近傍の領域４１ａは視差が比較的大きいので明るい画像となり、遠方の領域４１ｂは視差が比較的小さいので暗い画像となる。更に、道路領域４１の両端の外側にある領域４２は、路側のガードレール及びフェンス等の障害物領域４２であり、道路領域４１よりも明るく表現されている。これは、同一のＶ座標位置における道路領域４１及び障害物領域４２と車両１０との距離関係を比べると、障害物領域４２の方が車両１０に近い傾向があるからである。即ち、同一のＶ座標位置においては、道路領域４１の視差よりも障害物領域４２の視差の方が大きくなる傾向があるからである。
【００３７】
これに対し、図４（Ｂ）は、道路の勾配が遠方にて減少する場合に得られる視差画像４０の例である。道路の勾配が遠方にて減少する場合、道路が画像から消失する地点よりも遠方の領域は視差が非常に小さい。よって、図４（Ｂ）の視差画像４０においては、道路の勾配の変化点より遠方の領域４１ｃは図４（Ａ）に示した例（４１ｂ）よりも暗くなっている。
【００３８】
ステップ３３０：ＣＰＵは、図５に示したように、ステップ３３０にて得られた視差画像４０からＶ-disparity平面５０を作成する。
【００３９】
より具体的に述べると、ＣＰＵは、図５（Ａ）に示したように、ステップ３２０において作成された視差画像４０を「Ｖ座標軸（縦軸）と平行な複数の仮想線４３」により細分割して、微小区間ｄＵを得る。この微小区間ｄＵの区間幅は３から５画素が適当である。ＣＰＵは、更に、その仮想線４３により分割された複数の微小区間ｄＵ内のそれぞれに存在する視差値を、Ｖ−視差平面（以下、「Ｖ-disparity平面」とも称呼する。）にそれぞれ投影する。Ｖ-disparity平面は、微小区間ｄＵのそれぞれに対する平面であり、その縦軸は視差画像のＶ座標軸と同じ（即ち、縦軸は視差画像の縦軸と同じ）であり、その横軸は微小区間ｄＵ内の視差（disparity）値である。Ｖ-disparity平面５０に投影された視差値５１は、以下、視差点群５１とも称呼される。
【００４０】
図５（Ｂ）に示したＶ-disparity平面５０に対応する微小区間ｄＵには道路遠方まで障害物領域４２（ガードレール及びフェンス等）が存在しないので、Ｖ-disparity平面５０に投影される視差点群５１は、視差ｄ０から視差が微小な領域まで略直線状に延在し、その後、視差が略０である領域においてＶ軸に沿う。これに対し、図５（Ｃ）に示したＶ-disparity平面５０に対応する微小区間ｄＵには障害物領域４２が存在する。障害物領域４２は略一定の視差値を有するので、視差点群はＶ座標軸と平行な方向に延びる直線５２となる。
【００４１】
更に、遠方にて勾配が減少する道路の場合、図６（Ａ）に示した視差画像４０の中央付近の微小区間ｄＵに対するＶ-disparity平面５０において、視差点群５１は、道路勾配の変化点において急激にその傾きを変える（図６（Ｂ）の点Ｐ１を参照。）。これは、道路勾配の変化点より遠方の領域（視差の小さい領域）において、Ｖ座標の変化に対する視差の変化が大きくなることによる。
【００４２】
ステップ３４０：ＣＰＵは、複数のＶ-disparity平面に投影された視差値に基づいてそれぞれ道路モデルを作成する。
【００４３】
より具体的に述べると、ＣＰＵは、先ず、各微小区間ｄＵに対応するＶ-disparity平面５０に存在する「主要な直線」を抽出する。「主要な直線」とは、Ｖ座標軸と平行な直線を除き、各Ｖ-disparity平面５０における最も長い直線である。前述したように、Ｖ-disparity平面５０に投影される道路領域の視差点群５１は略直線状となる。この投影された道路領域の視差点群（直線）５１は、Ｖ-disparity平面５０の「最も長い直線」、即ち、「主要な直線」となる。
【００４４】
主要な直線の抽出は、例えば、古典的な直線抽出手法であるハフ変換を用いて行われる。ハフ変換は、Ｖ-disparity平面５０上の視差点群５１を近似して得られる直線とＶ-disparity平面の原点とを結ぶ垂線の長さをρ、垂線とＶ座標軸とのなす角度をθとして、この近似直線に対応するρ、θの組合せをρ−θ平面（直交座標）に投票する。ＣＰＵは、各微小区間ｄＵについてハフ変換によって最も投票値が大きくなるρとθ（ρ−θ平面における一点）をそれぞれ「主要な直線」として抽出する。そして、ＣＰＵは抽出したそれぞれの「主要な直線」を「道路モデル」として各微小区間ｄＵのＶ-disparity平面５０上に作成する。
【００４５】
ステップ３５０：ＣＰＵは、各微小区間ｄＵについて、ステップ３４０にて作成された道路モデルとステップ３３０にて算出された（Ｖ-disparity平面５０に投影された）視差点群５１とを比較することにより道路領域を推定する。
【００４６】
より具体的に述べると、図７に示したように、ＣＰＵはＶ-disparity平面５０に作成された道路モデル５３と視差点群５１とを併記する。ＣＰＵは、更に、道路モデル５３に、視差が大きいほど大きい「高さの閾値ΔＶth」を加える（Ｖ座標軸上は道路モデル５３から「高さの閾値ΔＶth」を減算する）ことにより、道路領域判定用閾値Ｖthを求めて、この閾値Ｖｔｈを併記する。本例においては、高さの閾値ΔＶthは視差に対して線形的に増加する値である。
【００４７】
障害物５２の上端５２ａが道路領域判定用閾値Ｖthを超える場合、ＣＰＵは障害物５２の下端５２ｂよりも下の領域５４を道路領域と推定する。この道路領域判定用閾値Ｖthは、路側に設置される通常のガードレール及びフェンス等を障害物として認識することができる値に設定されている。
【００４８】
ステップ３６０：ＣＰＵは、各微小区間ｄＵに対応するＶ-disparity平面５０の各Ｖ座標において、道路モデルの視差値から視差点群５１の視差値を差し引いた値である「視差差分値」をそれぞれ算出する。
【００４９】
より具体的に述べると、例えばＶ座標軸の上端の座標が０、下端の座標が（ｊ−１）（ｊは正の整数）である場合、ＣＰＵは以下の（１）式に従って各微小区間ｄＵに対応するＶ-disparity平面の「視差差分値Δdisp(Ｖ)」を０から（ｊ−１）まで算出しそれぞれＲＡＭに記憶する。
Δdisp(Ｖ) ＝ dispmodel(Ｖ) − dispact(Ｖ)              …（１）
（１）式において、dispmodel(Ｖ)は座標Ｖにおける道路モデルの視差値、dispact(Ｖ)は座標Ｖにおける視差点群５１の視差値である。
【００５０】
図８（Ａ）に示したように、ＣＰＵは更に、ＲＡＭに記憶された座標Ｖ毎の視差差分値Δdisp(Ｖ)をＶ−視差差分値平面６０に投影して描かれる軌跡のうち視差差分値 Δdisp(Ｖ) が「０」となる「互いに隣接する２点」の間の軌跡であって、その値が正の値となる軌跡６１を、一つの「波形部」と認識する。
【００５１】
ステップ３７０：ＣＰＵは、ステップ３１０にて入力した画像から消失点の高さ（Ｖ座標位置）を算出する。消失点とは、カメラ装置２０により撮像された直線道路の画像において、道路の幅が遠くに行くほど小さくなり、やがて一点に収束する点である。
【００５２】
例えば、消失点の位置は、周知のエッジ抽出法を用いて算出される。より具体的に述べると、図９に示したように、ＣＰＵは左カメラ２０Ｌによる撮像画像における白線、ガードレール及びフェンス等の直線状に連続するエッジ群を複数抽出する。ＣＰＵは、それらエッジ群を結んでできる複数の直線の交点を消失点９６として算出するとともに消失点の高さ（Ｖ座標位置）を求める。なお、消失点９６の算出には右カメラ２０Ｒにより撮像された画像が用いられてもよい。左カメラ２０Ｌによる撮像画像と右カメラ２０Ｒによる撮像画像との間において、消失点９６のＵ座標軸方向の座標Ｕは一致しないが、Ｖ座標軸方向の座標Ｖは一致するからである。
【００５３】
次に、ＣＰＵは、図８（Ｂ）に示したようにステップ３６０にて算出された各微小区間ｄＵにおける「視差差分値の軌跡（波形部）６１」を用いて、遠方の道路勾配が車両近傍の道路勾配に対して減少しているか否か（道路勾配の減少有無）を判定する。
【００５４】
より具体的に述べると、ＣＰＵは、波形部６１を視差差分値Δdisp(Ｖ)が「０」から正の値となり次いで再び「０」になるまでの波形部（６１ａ、６１ｂ、６１ｃ、…）に区分し、その波形部において消失点９６のＶ座標位置６２に最も近い波形部を抽出する。本例において、消失点９６のＶ座標位置６２に最も近い波形部は６１ａである。本例のように波形部６１が複数得られる場合には、消失点９６のＶ座標位置６２に最も近い位置にある波形部が「実際の道路領域と道路モデルによる道路領域との乖離度合い」を表していると推定される。
【００５５】
次に、ＣＰＵは波形部６１ａが以下の２つの条件を同時に満たすか否かを判定する。ＣＰＵは、波形部６１ａが以下の２つの条件を同時に満たすならば、上記推定が確からしいと判断する。
（条件１）波形部６１とＶ座標軸とによって囲まれてなる図形の面積が他の何れの波形部とＶ座標軸とによって囲まれてなる図形の面積よりも大きい。
（条件２）視差差分値の軌跡６１における最大の視差差分値ΔdispMAX が所定の閾値Δdispth以上である。
【００５６】
本例の視差差分値の波形部６１ａは上記の条件１及び条件２の何れも満たす。従って、ＣＰＵは遠方にて道路勾配が減少していると判定する。これらの条件は、視差差分値の軌跡６１が視差算出時のノイズによって生じる場合と、遠方の道路勾配が車両近傍の道路勾配に対して減少していることによって得られる場合と、を区別するために設定される。
【００５７】
ステップ３８０：ＣＰＵは、ステップ３７０にて遠方にて道路勾配が減少していると判定したときは、図１０に示したように、ステップ３５０にて道路モデル５３から推定した道路領域の上端（即ち、道路の遠方端）６２を、視差差分値の軌跡６１ａのＶ座標位置の最大端６３に変更する。この最大端６３は、Ｖ-disparity平面上、道路モデル５３と視差点群５１とが離間し始める点Ｐ２に相当する。
【００５８】
以下、上記ステップ３５０、ステップ３６０、ステップ３７０及びステップ３８０の具体的な作動を説明する。
【００５９】
＜道路領域推定ルーチン＞
ＣＰＵはステップ３５０に進むと、図１１にフローチャートにより示した「道路領域推定ルーチン」を実行するようになっている。従って、ＣＰＵはステップ１１００を経由してステップ１１１０に進み、Ｖ-disparity平面に、抽出された道路モデル５３を当てはめる（図７を参照。）。
【００６０】
次いで、ＣＰＵはステップ１１２０に進み、図７に示したように、高さの閾値ΔＶthを道路モデル５３に加え、道路領域判定用閾値Ｖthを算出してステップ１１３０に進み、道路領域判定用閾値Ｖthを超える視差値（視差点群５１）があるか否かを判定する。道路領域判定用閾値Ｖthを超える視差値がある場合、ＣＰＵはステップ１１３０にて「Ｙｅｓ」と判定してステップ１１４０に進み、その視差値を有する部分のＶ座標の最大値（即ち、障害物５２の下端５２ｂ）よりもＶ座標が大きい領域５４（図７における下端５２ｂよりも下の領域５４）を道路領域と推定してステップ１１９５に進んで図３のステップ３６０に進む。
【００６１】
これに対し、道路領域判定用閾値Ｖthを超える視差点群５１が無い場合、ＣＰＵはステップ１１３０にて「Ｎｏ」と判定してステップ１１５０に進み、道路モデル５３とＶ座標軸との交点Ｐ３よりも下の（Ｖ座標が大きい）領域を道路領域と推定してステップ１１９５に進んで図３のステップ３６０に進む。
【００６２】
＜視差差分値の軌跡（波形部）抽出ルーチン＞
ＣＰＵはステップ３６０に進むと、図１２にフローチャートにより示した「視差差分値の軌跡算出ルーチン」を実行するようになっている。従って、ＣＰＵはステップ１２００を経由してステップ１２１０に進み、座標Ｖの値を「０」に設定してステップ１２２０に進み、前述した（１）式に従って視差差分値Δdisp(Ｖ)を算出する。
【００６３】
次いで、ＣＰＵはステップ１２３０に進み、視差差分値Δdisp(Ｖ)が「０」よりも大きいか否かを判定する。視差差分値Δdisp(Ｖ)が「０」よりも大きい場合、ＣＰＵはステップ１２３０にて「Ｙｅｓ」と判定してステップ１２４０に進み、視差差分値Δdisp(Ｖ)をＲＡＭに記憶する。これに対し、視差差分値Δdisp(Ｖ)が「０」以下（負の値も含む）の場合、ＣＰＵはステップ１２３０にて「Ｎｏ」と判定してステップ１２７０に進んで視差差分値の値を「０」に設定してステップ１２４０に進み、ＥＣＵ３０内のＲＡＭに、算出された視差差分値Δdisp(Ｖ)を記憶する。
【００６４】
次いで、ＣＰＵはステップ１２５０にて座標Ｖの値を１つインクリメントしてステップ１２６０に進み、座標Ｖの値が（ｊ−１）以上であるか否かを判定する。座標Ｖの値が（ｊ−１）以上である場合、ＣＰＵはステップ１２６０にて「Ｙｅｓ」と判定してステップ１２８０に進む。座標Ｖの値が（ｊ−１）未満の場合、ＣＰＵはステップ１２６０にて「Ｎｏ」と判定してステップ１２２０に進み、ステップ１２２０乃至ステップ１２５０及びステップ１２７０の処理を実行してステップ１２６０に進む。即ち、ＣＰＵは本ルーチンをＶ座標の値０から開始して、座標Ｖの値が（ｊ−１）となるまで本ルーチンの処理を繰り返す。
【００６５】
次いで、ＣＰＵはステップ１２８０に進むと視差差分値Δdisp(Ｖ)を、Ｖ座標軸を縦軸とし視差差分値Δdispを横軸とするＶ−視差差分値平面（Ｖ-Δdisp平面） ６０へ投影し、視差差分値の軌跡（波形部）６１を抽出した後、ステップ１２９５を経由して図３のステップ３７０に進む。
【００６６】
＜勾配減少有無判定ルーチン＞
ＣＰＵはステップ３７０に進むと、図１３にフローチャートにより示した「勾配減少有無判定ルーチン」を実行するようになっている。従って、ＣＰＵはステップ１３００を経由してステップ１３１０に進み、カメラ装置２０が取得した画像から消失点の高さ（Ｖ座標位置）を算出する。
【００６７】
次いで、ＣＰＵはステップ１３２０に進み、図８（Ｂ）に示したように、「消失点の高さ６２に最も近い視差差分値の波形部（軌跡）６１ａ」を抽出する。換言すると、ＣＰＵはステップ１２８０にて複数の視差差分値の軌跡６１が得られた場合、これらの中から「消失点の高さ６２に最も近い視差差分値の波形部６１ａ」を選択する。
【００６８】
次いで、ＣＰＵはステップ１３３０に進み、特定条件が成立するか否か、即ち、ステップ１３２０において抽出された「波形部６１ａ」が、前述した２つの条件（条件１及び条件２）を同時に満足するか否かを判定する。
【００６９】
前述した２つの条件が同時に成立する場合、ＣＰＵはステップ１３３０にて「Ｙｅｓ」と判定してステップ１３４０に進み、道路勾配減少フラグＸdkg の値を「１」に設定して（道路勾配が減少していると判断して）ステップ１３９５に進む。一方、前述した２つの条件のうち何れかが成立しない場合、ＣＰＵはステップ１３３０にて「Ｎｏ」と判定してステップ１３５０に進み、道路勾配減少フラグＸdkg の値を「０」に設定して（道路勾配が減少していないと判断して）ステップ１３９５に進む。その後、ＣＰＵはステップ１３９５を経由して図３のステップ３８０に進む。
【００７０】
＜道路領域遠方端位置変更ルーチン＞
ＣＰＵはステップ３８０に進むと、図１４にフローチャートにより示した「道路領域遠方端位置変更ルーチン」を実行するようになっている。従って、ＣＰＵはステップ１２００を経由してステップ１４１０に進み、道路勾配減少フラグＸdkg の値が「１」であるか否かを判定する。
【００７１】
ＣＰＵが図１３のステップ１３４０を経由していた（勾配減少ありと判定した）場合、道路勾配減少フラグＸdkg の値は「１」となっている。従って、ＣＰＵはステップ１４１０にて「Ｙｅｓ」と判定してステップ１４２０に進み、「ステップ３５０にて推定した道路領域の上端（遠方端）６２を消失点に最も近い視差差分値の波形部（軌跡）６１ａの下端（Ｖ座標位置の最大端）の高さ６３に修正」するとともに道路勾配減少フラグＸdkg の値を「０」に設定してステップ１４９５に進み、その後、図３のステップ３９５に進む。これに対し、ＣＰＵが図１３のステップ１３５０を経由していた（勾配減少なしと判定した）場合、道路勾配減少フラグＸdkg の値は「０」となっている。従って、ＣＰＵはステップ１４１０にて「Ｎｏ」と判定してステップ１４９５に直接進み、その後、図３のステップ３９５に進む。即ち、ステップ３５０にて推定された道路領域の変更は行われない。
【００７２】
以上、説明したように、本検出装置は、視差画像の微小区間に対応する複数のＶ-disparity平面（Ｖ−視差平面）５０に投影された視差値に基づいてそれぞれ道路モデル５３を作成し、この道路モデルに基づいて微小区間における道路領域の遠方端をそれぞれ推定する。
【００７３】
更に、本検出装置は、Ｖ-disparity平面５０の各Ｖ座標位置において、作成された道路モデル５３の視差値から投影された視差値５１を差し引いた値である「視差差分値Δdisp」を算出するとともに、視差差分値Δdispを、Ｖ座標軸を縦軸とし視差差分値Δdispを横軸とするＶ−視差差分値平面６０へ投影し、
視差差分値Δdisp(Ｖ)が「０」となる隣接する２点間に存在する視差差分値Δdisp(Ｖ)の軌跡であって正の値を示す軌跡を１つの波形部６１として認識する。
【００７４】
加えて、本検出装置は、取得した画像から消失点９６のＶ座標位置を算出し、波形部６１のうち消失点９６のＶ座標位置に最も近い波形部６１ａとＶ座標軸とによって囲まれてなる図形の面積が、他の何れの波形部とＶ座標とによって囲まれてなる図形の面積よりも大きく（すべての区間における図形の面積の中で最も大きな面積を有し、）且つ消失点９６のＶ座標位置に最も近い波形部６１ａにおける最大の視差差分値ΔdispMAX が所定の閾値以上であるときは、道路領域の遠方端６２を消失点のＶ座標位置に最も近い波形部６１ａのＶ座標位置の最大端側６３に変更する。
【００７５】
従って、本検出装置によれば、車両が現在走行している路面の勾配に対し遠方の路面の勾配が減少している道路において、道路遠方の障害物領域を道路領域と誤検出することなく、道路領域の範囲を本来の範囲に修正することができ、その結果、障害物を正しく認識することができる。
【００７６】
本発明は上記実施形態に限定されることはなく、本発明の範囲内において種々の変形例を採用することができる。例えば、視差の計算はブロックマッチング法により行われていたが、セミグローバルマッチング（ＳＧＭ）法その他の手法により行われてもよい。
【符号の説明】
【００７７】
１０…車両、２０…カメラ装置、３０…電子制御装置（ＥＣＵ）、４０…視差画像、４１…道路領域、４２…障害物領域、５０…Ｖ−視差平面、５１…視差値（視差点群）、５３…道路モデル、６０…Ｖ−視差差分値平面、６１…視差差分値の軌跡、９６…消失点。
【図１】
2017156965.tif 000003
【図２】
2017156965.tif 000004
【図３】
2017156965.tif 000005
【図４】
2017156965.tif 000006
【図５】
2017156965.tif 000007
【図６】
2017156965.tif 000008
【図７】
2017156965.tif 000009
【図８】
2017156965.tif 000010
【図９】
2017156965.tif 000011
【図１０】
2017156965.tif 000012
【図１１】
2017156965.tif 000013
【図１２】
2017156965.tif 000014
【図１３】
2017156965.tif 000015
【図１４】
2017156965.tif 000016
【図１５】
2017156965.tif 000017
【図１６】
2017156965.tif 000018