(57)【特許請求の範囲】
【請求項１】
自車両の左右両側に設置され、車両前方をそれぞれ撮像する左右一対の撮像手段と、
前記撮像手段により撮像された画像の情報に基づいて、前記画像内に存在する特徴点を抽出する特徴点抽出手段と、
前記特徴点の前記画像上での移動方向および移動速度を含む移動情報を算出する移動情報算出手段と、
前記移動情報に基づいて、検出対象を含む対象領域を抽出する対象領域抽出手段と、
前記検出対象の複数の時刻における位置情報と前記撮像手段の位置情報とに基づいて、前記撮像手段と前記検出対象との実空間での相対角速度を算出する相対角速度算出手段と、
前記相対角速度に基づいて、前記検出対象を回避する必要があるかを判断する判断手段と、を有し、
前記相対角速度算出手段は、前記左右一対の撮像手段のうち、自車両の左側に設置された撮像手段と前記検出対象との実空間での前記相対角速度を左側相対角速度として算出し、前記左右一対の撮像手段のうち、自車両の右側に設置された撮像手段と前記検出対象との実空間での前記相対角速度を右側相対角速度として算出し、
前記判断手段は、前記左側相対角速度および前記右側相対角速度に基づいて、前記検出対象を回避する必要があるかを判断することを特徴とする走行支援装置。
【請求項２】
請求項１に記載の走行支援装置において、
前記判断手段は、前記検出対象を回避する必要があると判断した場合に、前記相対角速度に応じて、前記検出対象を回避する方向をさらに判断することを特徴とする走行支援装置。
【請求項３】
請求項１または２に記載の走行支援装置において、
前記判断手段は、前記左側相対角速度もしくは前記右側相対角速度が０である場合、または、前記左側相対角速度および前記右側相対角速度の向きが、いずれも自車両の進行方向の中心軸側に向かうものである場合に、前記検出対象を回避する必要があると判断することを特徴とする走行支援装置。
【請求項４】
請求項１〜３のいずれかに記載の走行支援装置において、
前記判断手段は、前記左側相対角速度と前記右側相対角速度とを比較し、前記比較の結果に基づいて、前記検出対象を回避する方向を判断することを特徴とする走行支援装置。
【請求項５】
請求項４に記載の走行支援装置において、
前記判断手段は、前記右側相対角速度が前記左側相対角速度よりも大きい場合は、右方向を、前記左側相対角速度が前記右側相対角速度よりも大きい場合は、左方向を、前記検出対象を回避する方向として判断することを特徴とする走行支援装置。
【請求項６】
請求項１〜５のいずれかに記載の走行支援装置において、
前記判断手段により前記検出対象を回避する必要があると判断された場合に、前記相対角速度に応じて、前記検出対象を回避するように、前記車両を制御する制御手段をさらに有することを特徴とする走行支援装置。
【請求項７】
請求項１〜６のいずれかに記載の走行支援装置において、
前記撮像手段はドアミラーケース内に設置されている撮像装置であることを特徴とする走行支援装置。
【請求項８】
自車両の左側に設置され車両前方を撮像する左側撮像手段と、自車両の右側に設置され車両前方を撮像する右側撮像手段と、演算手段とを備える走行支援装置を用いて、車両の走行を支援する走行支援方法において、
前記左側撮像手段および前記右側撮像手段から取得した画像の情報に基づいて、検出対象を含む対象領域を抽出し、前記検出対象の複数の時刻における位置情報と前記左側撮像手段の位置情報とに基づいて、前記左側撮像手段と前記検出対象との実空間での相対角速度を左側相対角速度として算出するとともに、前記検出対象の複数の時刻における位置情報と前記右側撮像手段の位置情報とに基づいて、前記右側撮像手段と前記検出対象との実空間での相対角速度を右側相対角速度として算出し、前記左側相対角速度および前記右側相対角速度に基づいて、前記検出対象を回避する必要があるかを判断することを特徴とする走行支援方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、走行支援装置および走行支援方法に関するものである。
【背景技術】
【０００２】
自車両の前方を撮像した画像から、自車両に接近する検出対象を抽出し、抽出した検出対象の接近方向および接近速度を算出し、算出した検出対象の接近方向および接近速度と、自車両の車軸の回転数から算出した車速と、自車両のハンドルの切り角から算出した舵角とから、検出対象を回避する必要があるかを判断する技術が知られている（特許文献１）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００１−１０１５９２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来技術では、タイヤのスリップなどにより、車軸の回転数から算出した車速と実際の車速との間に誤差が生じる場合や、タイヤが轍に嵌るなどにより、ハンドルの切り角から算出した走行方向と実際の走行方向との間に誤差が生じる場合があり、検出対象を回避する必要があるかを適切に判断できない場合があった。
【０００５】
本発明が解決しようとする課題は、検出対象を回避する必要があるかを適切に判断可能な走行支援装置を提供することである。
【課題を解決するための手段】
【０００６】
本発明は、車両前方を撮像した画像の情報に基づいて、撮像手段と検出対象との実空間での相対角速度を算出し、算出した相対角速度に基づいて、検出対象を回避する必要があるかを判断することで、上記課題を解決する。
【発明の効果】
【０００７】
本発明によれば、車両前方を撮像した画像の情報に基づいて、車両前方に存在する検出対象の相対角速度を算出することができ、これにより、車軸の回転数から算出した車速やハンドルの切れ角から求めた走行方向に誤差が生じた場合でも、検出対象を回避する必要があるかを適切に判断することができる。
【図面の簡単な説明】
【０００８】
【図１】本実施形態に係る走行支援装置を搭載する車両の構成図である。
【図２】カメラの配置例を示す図である。
【図３】左側カメラにより撮像された撮像画像の一例を示す図である。
【図４】エッジを抽出し、抽出したエッジの移動情報を算出する手法例を説明するための図である。
【図５】移動画像の一例を示す図である。
【図６】グループ化された画素群の一例を示す図である。
【図７】最上点位置および最下点位置の一例を示す図である。
【図８】最上点位置および最下点位置を、ＺＸ平面（実空間座標系）上の位置座標に変換した一例を示す図である。
【図９】左側カメラから見た検出対象の相対角速度を算出する手法例を説明するための図である。
【図１０】左側カメラから見た検出対象の相対角速度を算出する手法例を説明するための図である。
【図１１】検出対象を回避する必要があるかを判断するための手法例を説明するための図である。
【図１２】検出対象を回避する必要があるかを判断するための手法例を説明するための図である。
【図１３】検出対象を回避する必要があるかを判断するための手法例を説明するための図である。
【図１４】相対角速度に基づいて、検出対象を回避する方向を判断する手法例を説明するための図である。
【図１５】本実施形態に係る走行支援処理を示すフローチャートである。
【図１６】左側カメラで撮像された撮像画像の他の例を示す図である。
【図１７】移動画像の他の例を示す図である。
【図１８】最上点位置および最下点位置の他の例を示す図である。
【発明を実施するための形態】
【０００９】
以下、本発明の実施形態を図面に基づいて説明する。
【００１０】
本実施形態においては、車両前方に存在する検出対象を回避する必要があるか判断可能な走行支援装置を搭載する車両を例示して説明する。ここで、図１は、本実施形態に係る走行支援装置を搭載する車両の構成を示すブロック図である。図１に示すように、車両１は、コントローラ１０と、左右一対のドアミラーケース３０ａ，３０ｂ内にそれぞれ設置された左右一対のカメラ２０ａ，２０ｂと、舵角アクチュエータ４０とを有している。以下において、車両１が備える各構成について説明する。
【００１１】
図１に示すように、左側カメラ２０ａは、車両１の左側前方に設けられたドアミラーケース３０ａ内に設置され、右側カメラ２０ｂは、車両１の右側前方に設けられたドアミラーケース３０ｂ内に設置されている。ここで、図２は、カメラ２０ａ，２０ｂの配置例を示す図である。図２に示すように、左側カメラ２０ａおよび右側カメラ２０ｂは、車両１の前方周辺を撮像するようにそれぞれ設置されている。これら左右一対のカメラ２０ａ，２０ｂは、車両１前方を同じタイミング、かつ、同じ時間間隔で、連続して撮像するように設定されている。撮像された画像の画像データは、各カメラ２０ａ，２０ｂからコントローラ１０へ送信される。なお、各カメラ２０ａ，２０ｂは、その撮像素子上に、複数の画素を有し、輝度画像を撮像できるものが好適である。このような撮像素子としては、例えば、ＣＣＤ（Charge Coupled Devices）やＣＭＯＳ（Complementary Metal Oxide Semiconductor）などが挙げられる。
【００１２】
図３は、左側カメラ２０ａにより撮像された画像の一例を示す図である。図３に示すように、左側カメラ２０ａにより撮像された撮像画像は、画像左上の頂点を原点Ｏとするｘｙ座標（カメラ座標系）によって表され、原点Ｏから右方向へ延在する軸をｘ軸とし、原点から下へ延在する軸をｙ軸とする。また、図示していないが、右側カメラ２０ｂで撮像された撮像画像も、左側カメラ２０ａと同様に表される。図３に示すように、撮像画像には、立体物である外壁などの構造物や他の車両（駐車車両）、平面物であるレーンマークなどが含まれる。
【００１３】
左右一対のドアミラーケース３０ａ，３０ｂは、左右一対のカメラ２０ａ，２０ｂをそれぞれ収容し、さらに、ドアミラーケース３０ａ，３０ｂの図示しない撮影窓にガラスまたは透明樹脂のシールドを設けることにより、カメラ２０ａ，２０ｂを水滴や汚れから保護する。
【００１４】
コントローラ１０は、左右一対のカメラ２０ａ，２０ｂから取得した画像データに基づいて、車両１前方に存在する検出対象を含む対象領域を抽出し、検出対象を回避する必要があるか否かを判断する。また、コントローラ１０は、検出対象を回避する必要があると判断した場合には、検出対象を回避する方向をも判断する。
【００１５】
コントローラ１０は、図１に示すように、検出対象の回避する必要があるか否かを判断するためのプログラムを格納したＲＯＭ（Read Only Memory）１１と、このＲＯＭ１１に格納されたプログラムを実行するＣＰＵ（Central Processing Unit）１２と、アクセス可能な記憶装置として、または撮像された撮像画像などを一時的に記憶する装置として機能するＲＡＭ（Random Access Memory）１３とから構成される。
【００１６】
コントローラ１０のＲＯＭ１１に格納されたプログラムを、ＣＰＵ１２で実施することにより、コントローラ１０は、取得機能、特徴点抽出機能、移動情報算出機能、対象領域抽出機能、相対角速度算出機能、判断機能の各機能を実現する。以下において、コントローラ１０が備える各機能について詳細に説明する。
【００１７】
取得機能は、左右一対のカメラ２０ａ，２０ｂで撮像された画像の画像データを、各カメラ２０ａ，２０ｂから取得する。ここで、上述したように、左右一対のカメラ２０ａ，２０ｂは、一定の時間間隔で、連続して車両１前方を撮像しており、取得機能は、各カメラ２０ａ，２０ｂで時系列に沿って撮像された撮像画像の画像データを、各カメラ２０ａ，２０ｂから連続して取得する。
【００１８】
特徴点抽出機能は、取得機能により取得された撮像画像の画像データを、所定の閾値を用いて２値化することにより、画像内に存在するエッジを抽出する。図４は、エッジを抽出し、抽出したエッジの移動情報を算出する手法例を説明するための図である。以下において、図４を参照して、特徴点抽出機能によりエッジを抽出する手法例を説明する。
【００１９】
まず、特徴点抽出機能は、取得機能により取得された撮像画像の画像データに対して２値化処理を行う。ここで、２値化処理とは、エッジが検出された位置の画素を１とし、エッジの検出されなかった位置の画素を０とする処理である。図４（Ａ）は、画像データを２値化して抽出したエッジの一例を示す。次に、特徴点抽出機能は、図４（Ｂ）に示すように、生成された２値化画像に対して細線化処理を行い、抽出されたエッジのエッジ幅を所定画素幅になるまで縮小する。本実施形態では、抽出されたエッジのエッジ幅（エッジに対応するｘ軸方向に連続する画素の数。例えば、図４（Ａ）に示すエッジのエッジ幅は、３画素となる。）を、図４（Ｂ）に示すように、エッジ強度が最も大きい１画素とすることで、１画素分のエッジ幅に細線化する。このように、エッジのエッジ幅を所定の画素幅になるまで細線化することによって、エッジの中心となる中心位置が設定される。なお、本実施形態では、エッジのエッジ幅を１画素に細線化する例を示したが、細線化する画素数は特に限定されない。
【００２０】
次に、特徴点抽出機能は、細線化されたエッジのエッジ幅が一定の幅となるよう、エッジをｘ軸方向に膨張させる。本実施形態では、図４（Ｃ）に示すように、エッジの中心位置ｘ０からエッジの移動方向（ｘ軸の正方向）に１画素膨張させるとともに、エッジの中心位置ｘ０からエッジの移動方向と反対方向（ｘ軸の負方向）に１画素膨張させて、エッジ幅を３画素に膨張させる。これにより、抽出されたエッジを正規化し、各エッジの幅が均一なエッジ画像を得ることができる。
【００２１】
このように、特徴点抽出機能は、各カメラ２０ａ，２０ｂで撮像された撮像画像の画像データに基づいて、正規化されたエッジを抽出する。
【００２２】
次に、移動情報算出機能について説明する。移動情報算出機能は、撮像画像上においてエッジが移動した方向（移動方向）と、エッジが移動した速度（移動速度）とを含む移動情報を算出する。具体的には、移動情報算出機能は、カウントアップ処理を行うことで、移動情報を算出する。ここで、カウントアップ処理とは、エッジが検出された画素の位置に対応するメモリアドレスの値をカウントアップし、エッジが検出されなかった画素の位置に対応するメモリアドレスの値を初期化する処理である。以下、図４（Ｃ）〜（Ｆ）に基づいて、移動情報算出機能によるカウントアップ処理について説明する。
【００２３】
図４（Ｃ）に示す例では、あるフレーム（ある時刻において撮像された撮像画像）において、位置ｘ０に中心が位置するエッジが検出されている。そして、その中心位置からエッジの移動方向に１画素の位置ｘ０＋１に膨張され、同様に、中心位置からエッジの移動方向と反対方向に１画素の位置ｘ０−１に膨張されている。このような場合、カウントアップ処理では、エッジが検出された位置「ｘ０−１」、「ｘ０」、「ｘ０＋１」に対応するメモリアドレスのカウント値を「＋１」カウントアップし、一方、エッジが検出されなかった位置に対応するメモリアドレスのカウント値をリセットする。
【００２４】
例えば、図４（Ｄ）では、時刻ｔにおいて、位置「ｘ０−１」、「ｘ０」、「ｘ０＋１」にエッジが検出されている。このため、それぞれの位置に対応するメモリアドレスのカウント値が各「１」カウントアップされる。その結果、位置「ｘ０＋１」のカウント値は「１」、位置「ｘ０」のカウント値は「３」、位置「ｘ０−１」のカウント値は「５」である。
【００２５】
次に、図４（Ｅ）に示すように、時刻ｔ＋１になってもエッジが移動していないので、位置「ｘ０−１」、「ｘ０」、「ｘ０＋１」の各位置でエッジが検出される。このため、位置「ｘ０−１」、「ｘ０」、「ｘ０＋１」のカウント値をさらに１ずつカウントアップする。その結果、位置「ｘ０＋１」のカウント値は２、位置「ｘ０」のカウント値は４、位置「ｘ０−１」のカウント値は６となる。
【００２６】
さらに、図４（Ｆ）に示すように、時刻ｔ＋２では、エッジがｘ軸の正方向に１画素シフトして位置「ｘ０」、「ｘ０＋１」、「ｘ０＋２」の位置でエッジが抽出される。このため、エッジが検出された位置「ｘ０」、「ｘ０＋１」、「ｘ０＋２」に対応するメモリアドレスのカウント値はカウントアップされる。他方、エッジが検出されなかった位置「ｘ０−１」のカウント値はリセットされ、「ゼロ」となる。その結果、図４（Ｆ）に示すように位置「ｘ０＋２」のカウント値は１、位置「ｘ０＋１」のカウント値は３、位置「ｘ０」のカウント値は５となる。さらに、エッジが検出されなかった位置「ｘ０−１」のカウント値はリセットされ、「０」になる。
【００２７】
このように、移動情報算出機能は、エッジが検出された位置に対応するメモリアドレスのカウント値をカウントアップし、エッジの検出されなかった位置に対応するメモリアドレスのカウント値をリセットする。
【００２８】
ここで、例えばフレームレートを上げることなどにより、連続するフレーム間において、エッジが同じ位置で複数回検出される場合がある。図４に示す例では、連続する時刻ｔのフレームと時刻ｔ＋１のフレームにおいて、エッジは位置ｘ０において２回検出される。したがって、エッジが検出された位置に対応するメモリアドレスのカウント値をカウントアップしていくと、そのカウント値はその位置においてエッジが検出されている時間（フレーム数、滞留時間）と相関することになる。
【００２９】
そこで、移動情報算出機能は、各画素においてカウントしたカウント値の傾きを算出し、この傾きに基づいて、エッジの移動速度および移動方向を算出する。
【００３０】
例えば、図４（Ｅ）の場合では、位置「ｘ０−１」、「ｘ０」、「ｘ０＋１」のカウント値がそれぞれ「６」、「４」、「２」である。位置「ｘ０−１」のカウント値「６」から「ｘ０＋１」のカウント値「２」を引くと、カウント値の傾きＨは、Ｈ＝（６−２）／２＝２と算出される。
【００３１】
これは、カウント値の傾きＨ＝｛（エッジが位置ｘ０−１に移動してから現在までの時間）−（エッジが位置ｘ０＋１に移動した後の時間）｝／（２画素）を意味しており、これにより、エッジが位置ｘ０のある１画素を通過するのに要する時間（フレーム数）を算出することができる。
【００３２】
このように、カウント値の傾きＨは、エッジが１画素移動するために何フレームを要したかに相当し、このカウント値の傾きＨに基づいて、エッジの移動速度１／Ｈを算出できる。例えば、図４（Ｅ）では１画素移動するのに２フレームを要することになるので、エッジの移動速度は１／２（画素／フレーム）と算出される。
【００３３】
続いて、移動情報算出機能は、カウント値の大小に基づいて、エッジの移動方向を判断する。エッジの無い位置にエッジが移動し、新たにエッジが検出された位置のカウント値は１となるから、各位置のカウント値の中では最も小さな値となる。したがって、エッジが移動する方向のカウント値は小さく、エッジが移動する方向と反対方向のカウント値は大きくなる。この傾向を利用して、エッジの移動方向を判断することができる。
【００３４】
例えば、図４に示す例では、時刻ｔ＋１における図４（Ｅ）と、時刻ｔ＋２における図４（Ｆ）とを比較すると、時刻ｔ＋２における図４（Ｆ）において、ｘ０＋２に新たにエッジが検出されて、カウント値が「１」となる。そのため、移動情報算出機能は、エッジの移動方向を、ｘ軸の正方向として算出することができる。
【００３５】
以上のように、移動情報算出機能は、エッジが検出された位置に対応するメモリアドレスのカウント値をカウントアップすることにより、カウントアップされたカウント値の傾きに基づいてエッジの移動速度および移動方向を算出することができる。
【００３６】
さらに、移動情報算出機能は、撮像画像内に存在するエッジの移動情報を所定の階級値に分類し、移動情報の特徴を表現する移動画像を生成する。図５に、図３に示す撮像画像に基づいて生成された移動画像の一例を示す。なお、図５に示すように、本実施形態の移動画像では、移動情報が検出されたエッジに対応する画素を丸印で表し、移動速度が速いエッジに対応する画素ほど点を大きい丸印で表すことにより、エッジの移動速度を表現する。また、右方向へ移動するエッジに対応する画素を黒丸で表し、左方向へ移動するエッジに対応する画素を白丸で表すことにより、エッジの移動方向を表現する。図５に示す例では、画像右側にある外壁およびレーンマークからは画像の右側へ向かう速度が検出されており、画像左側にある外壁およびレーンマークからは画像の左側へ向かう速度が検出される。また、画像内の移駐車車両においては、駐車車両の左側端部からは画像の左側へ向かう速度が検出されており、駐車車両の右側端部からは画像の右側へ向かう速度が検出されている。
【００３７】
次に、対象領域抽出機能について説明する。対象領域抽出機能は、移動情報算出機能により算出された移動情報に基づいて、検出対象が存在する対象領域を抽出する。ここで、検出対象とは、車両１前方に存在する物体または物体の一部であり、車両１が回避する必要がある否かの判断対象となる。検出対象としては、例えば、車両１の前方に存在する他の車両、歩行者、自転車などの立体物またはその一部が抽出される。
【００３８】
まず、対象領域抽出機能は、ｙ軸方向に沿って連続し、かつ、移動情報が共通する画素をグループ化する。図６は、画素をグループ化する手法例を説明するための図である。対象領域抽出機能は、例えば、図６に示すように、図５に示す移動画像上に短冊状の複数の領域１〜１１を設定し、画像をこの複数の短冊領域１〜１１で分割する。次に、各短冊領域１〜１１において、ｙ軸方向に沿って連続し、かつ、移動情報が共通する画素をグループ化する。具体的には、短冊領域１〜１１のそれぞれを下部から上部に向かってｙ軸方向に探索し、移動情報を有するエッジに対応する画素が見つかった場合、さらに、この画素にｙ軸方向に沿って連続し、移動情報を有するエッジに対応する別の画素を探索する。そして、探索された別の画素に対応するエッジと最初に探索した画素に対応するエッジとの移動方向の差が所定の閾値以内であり、かつ、探索された別の画素に対応するエッジと最初に探索した画素に対応するエッジとの移動速度の差が所定の閾値以内であれば、最初に探索した画素と、最初に探索した画素にｙ軸方向に沿って連続する別の画素とは、同じエッジに対応する画素であり、移動情報が共通する画素であると判断する。さらに、この別の画素とｙ軸方向に沿って連続し、移動情報を有するさらに別の画素についても、移動方向の差が所定の閾値以内であり、かつ移動速度の差が所定の閾値以内であるかを判断する。このように、対象領域抽出機能は、ｙ軸方向に沿って連続し、移動情報が共通する画素の探索を繰り返すことで、車両１に対して同じ速度で移動する同一の物体から抽出されたエッジに対応する画素を、画素群としてグループ化する。ｙ軸方向に沿って連続し、移動情報が共通する画素をグループ化することで、例えば、図６に示す例では、駐車車両の右側端部に対応する画素群ＯＢ１と、駐車車両の左側端部に対応する画素群ＯＢ２と、自車両の右側領域に存在する外壁に対応する画素群ＯＢ３と、レーンマークに対応する画素群ＯＢ４とがグループ化される。なお、図６においては、画素群ＯＢ１〜ＯＢ４についてのみ記載し、それ以外の画素群については記載を省略している。
【００３９】
次に、対象領域抽出機能は、グループ化された画素群のうち、最も上端に位置する画素の位置を最上点位置とし、最も下端に位置する画素の位置を最下点位置として検出する。ここで、図７は、図３に示す撮像画像に基づいて抽出された最上点位置および最下点位置の一例を示す図面である。なお、図７においては、移動情報を有する画素のうち、最上点位置に位置する画素を斜線でハッチングした丸で表しており、また最下点位置に位置する画素を黒丸で表しており、それら以外の画素を破線の白丸で表している。また、図７において、各短冊領域１〜１１において検出された最上点位置はＴＰｉ−ｊのように、最下点位置はＢＰｉ−ｊのように表している。ここで、ｉは、最上点位置および最下点位置が検出された短冊領域の番号を示しており、ｊは１つの短冊領域において検出された最上点位置または最下点位置の数を下側から数えた番号を示している。例えば、短冊領域４の下から３つ目に検出された最上点位置は、最上点位置ＴＰ４−３と表示され、短冊領域７の下から１つ目に検出された最下点位置は、最下点位置ＢＰ７−１と表示される。
【００４０】
図７に示す例では、対象領域抽出機能は、例えば、画素群ＯＢ１において、最上点位置ＴＰ７−１と最下点位置ＢＰ７−１とを、画素群ＯＢ２において、最上点位置ＴＰ４−３と最下点位置ＴＢ４−３とを、画素群ＯＢ３において、最上点位置ＴＰ１１−３と最下点位置ＢＰ１１−３とを、画素群ＯＢ４において、最上点位置ＴＰ３−１と最下点位置ＢＰ３−１とを検出する。なお、図７においては、グループ化された画素群ＯＢ１〜ＯＢ４の最上点位置であるＴＰ７−１，ＴＰ４−３，ＴＰ１１−３，ＴＰ３−１と、最下点位置であるＢＰ７−１，ＢＰ４−３，ＢＰ１１−３，ＢＰ３−１とについてのみ番号を記載し、それ以外の画素群の最上点位置および最下点位置については番号の記載を省略している。
【００４１】
続いて、対象領域抽出機能は、ｘｙ平面（カメラ座標系）上において抽出された最上点位置および最下点位置を、ＺＸ平面（実空間座標系）上の位置座標に変換する。なお、Ｚ軸方向は、車両１の進行方向（ユーザの正面方向）であり、Ｘ軸方向は、路面と平行し、車両１の進行方向と直交する方向である。
【００４２】
図８は、図７に示す最上点位置および最下点位置を、ＺＸ平面（実空間座標系）上の位置座標に変換した一例を示す図である。対象領域抽出機能は、最上点位置および最下点位置をＺＸ平面（実空間座標系）上の位置座標に変換する際に、図８の上図に示すように、例えば、Ｘ軸方向に−５.２５ｍ 未満、−５．２５以上−３．５ｍ未満、−３．５ｍ以上−１．７５ｍ未満、−１．７５ｍ以上０ｍ未満、０ｍ以上１．７５ｍ未満、１．７５ｍ以上３．５ｍ未満、３．５ｍ以上５．２５ｍ未満、および５．２５ｍ以上の８つの領域を設定し、Ｚ軸方向に０ｍ〜１０ｍ、１０ｍ〜２０ｍ、２０ｍ〜３０ｍ、３０ｍ〜４０ｍ、および４０ｍ〜５０ｍの５つの領域を設定することで、８×５の２次元領域を設定する。
【００４３】
なお、設定された８×５の２次元領域は、それぞれの領域を識別するための名称が付与され、各領域は列（Ｚ軸領域）ｉと行（Ｘ軸領域）ｊとを用いて設定領域ｉｊのように表される。例えば、図８の上図に示すように、１列目の１行目に存在する領域は設定領域１１と表し、１列目の２行目に存在する領域は設定領域１２と表し、２列目の１行目に存在する領域は設定領域２１のように表す。
【００４４】
対象領域抽出機能は、ｘｙ平面（カメラ座標系）上の各点の座標を（ｘ，ｙ）とし、カメラの路面からの高さをＣｈ（ｍ）、カメラの俯角をＴｒ（ｒａｄ）、画像の縦サイズをＩｈ、画像の横サイズをＩｗ、高さ方向の１画素あたりの角度分解能をＰＹｒ（ｒａｄ）、横方向の１画素あたりの角度分解能をＰＸｒ（ｒａｄ）とした場合に、ｘｙ平面（カメラ座標系）上の最上点位置および最下点位置を、次式に従って、ＺＸ平面（実空間座標系）の座標（Ｚ，Ｘ）に変換する。
【００４５】
（式１）Ｚ＝(Ｃｈ)／(ＴＡＮ(Ｔｒ＋(ｙ−Ｉｈ／２)×ＰＹｒ))
（式２）Ｘ＝ｘ×ＴＡＮ((Ｚ-Ｉｗ／２)×ＰＸｒ)
ここで、最上点位置をＺＸ平面（実空間座標系）上の座標に変換した点を、最上端変換点とし、最下点位置をＺＸ平面（実空間座標系）上の座標に変換した点を最下端変換点とする。例えば、図８に示す例では、最上点位置ＴＰ３−１を最上端変換点ＲＴ３−１に変換し、最下点位置ＢＰ３−１を最下端変換点ＲＢ３−１に変換する。なお、路面上に存在しない最上点位置および最下点位置は、ＺＸ平面領域外に投影されることとなり、図８の上図に示すＺＸ平面（実空間座標系）の位置座標に変換されない。例えば、最上点位置ＴＰ４−３や最上点位置ＴＰ７−１などは、ＺＸ平面領域外に投影され、ＺＸ平面のどの領域にも属しない。
【００４６】
続いて、対象領域抽出機能は、検出対象を含む対象領域を抽出する。ここで、検出対象を抽出する手法は、特に限定されないが、本実施形態では、以下の手法により検出対象を含む対象領域を抽出する。
【００４７】
例えば、対象領域抽出機能は、車両１前方を撮像した撮像画像内に存在する立体物の全部または一部を検出対象として抽出する。ここで、上述したように、路面上に存在しない最上点位置および最下点位置は、ＺＸ平面の領域外に投影されるため、図８の上図に示すＺＸ平面（実空間座標系）上の設定領域に属することはない。そこで、対象領域抽出機能は、グループ化された画素群から抽出した最上点位置および最下点位置を、ＺＸ平面（実空間座標系）の位置座標に変換した際に、最上端変換点がＺＸ平面領域外に投影され、かつ、最下端変換点がＺＸ平面（実空間座標系）のいずれかの設定領域に属する画素群に対応する領域を、立体物または立体物の一部である検出対象を含む対象領域として抽出する。例えば、図８に示す例では、画素群ＯＢ１の最上点位置ＴＰ７−１は、ＺＸ平面領域外に投影され、一方、画素群ＯＢ１の最下点位置ＢＰ７−１は、最下端変換点ＲＢ７−１に変換され、ＺＸ平面（実空間座標）の設定領域４２に属する。これにより、対象領域抽出機能は、画素群ＯＢ１に撮像される領域を、検出対象を含む対象領域として抽出する。
【００４８】
なお、対象領域抽出機能は、対象領域が複数抽出された場合であって、抽出された対象領域に含まれる検出対象に対応するエッジの移動情報が共通する場合は、これらの対象領域を一の検出対象を含む一の対象領域として抽出する。
【００４９】
このように、対象領域抽出機能は、移動情報算出機能により算出された移動情報に基づいて、検出対象が存在する対象領域を抽出することができる。
【００５０】
次に、相対角速度算出機能について説明する。相対角速度算出機能は、各カメラ２０ａ，２０ｂから見た検出対象の移動速度を、相対角速度として算出する。相対角速度算出機能は、相対角速度を算出するために、まず、左側カメラ２０ａで撮像された画像に基づいて抽出された検出対象と、右側カメラ２０ｂで撮像された画像に基づいて抽出された検出対象との同定を行う。検出対象を同定する手法は特に限定されないが、例えば、左側カメラ２０ａで撮像された画像に基づいて抽出された検出対象の対象領域の位置座標と、右側カメラ２０ｂで撮像された画像に基づいて抽出された検出対象の対象領域との位置座標が一致する場合に、一致した対象領域は同じ対象領域であると同定し、この対象領域に含まれる検出対象は同じであると同定する。
【００５１】
また、相対角速度算出機能は、同定された検出対象の移動速度を、相対角速度として算出する。なお、相対角速度算出機能は、左側カメラ２０ａから見た検出対象の移動速度を左側相対角速度として算出し、右側カメラ２０ｂから見た検出対象の相対角速度を右側相対角速度として算出する。
【００５２】
図９および図１０は、左側カメラ２０ａに対する検出対象の相対角速度（左側相対角速度）を算出する手法例を説明するための図である。図９に示す検出対象ＯＢ１は、図７および図８に示す画素群ＯＢ１に対応する対象領域に含まれる検出対象を示しており、図９において、検出対象ＯＢ１の位置と左側カメラ２０ａの位置とを、左側カメラ２０ａを基準とした相対座標系で表している。図９に示すように、検出対象ＯＢ１は、左側カメラ２０ａの光軸（左側カメラ２０ａの撮像素子に入射する光の軸）よりも右側の領域を移動しており、時刻ｔ１において位置Ｐ１で、時刻ｔ１よりも所定時間経過後の時刻ｔ２において位置Ｐ１’で検出される。この場合、相対角速度算出機能は、時刻ｔ１から時刻ｔ２までの時間において、位置Ｐ１から位置Ｐ１’まで移動した検出対象ＯＢ１の移動速度を、左側カメラ２０ａと位置Ｐ１とを通る直線Ａ１と、左側カメラ２０ａと位置Ｐ１’とを通る直線Ａ１’とがなす角である左側相対角速度ｄθＬ１として算出する。
【００５３】
さらに、相対角速度算出機能は、算出した相対角速度の向きを算出する。例えば、図９に示す例では、時刻ｔ２における検出対象ＯＢ１の位置Ｐ１’を通る直線Ａ１’は、時刻ｔ１における検出対象ＯＢ１の位置Ｐ１を通る直線Ａ１よりも自車両１の中心軸（自車両１の進行方向の中心軸）方向にあるため、左側相対角速度ｄθＬ１の向きを、自車両１の中心軸方向（時計回りの方向）として算出する。
【００５４】
また、図１０の検出対象ＯＢ２は、図７および図８に示す画素群ＯＢ２に対応する対象領域に含まれる検出対象を示しており、図１０において、検出対象ＯＢ２の位置と左側カメラ２０ａの位置とを、左側カメラ２０ａを基準とした相対座標系で表している。図１０に示すように、検出対象ＯＢ２は、左側カメラ２０ａの光軸よりも左側の領域を移動し、時刻ｔ１において位置Ｐ２で、時刻ｔ２において位置Ｐ２’で検出される。この場合、相対角速度算出機能は、時刻ｔ１から時刻ｔ２までの時間において、位置Ｐ２から位置Ｐ２’まで移動した検出対象ＯＢ２の移動速度を、左側カメラ２０ａと位置Ｐ２とを通る直線Ａ２と、左側カメラ２０ａと位置Ｐ２’とを通る直線Ａ２’とがなす角である左側相対角速度ｄθＬ２として算出する。さらに、図１０に示す例では、時刻ｔ２における検出対象ＯＢ２の位置Ｐ２’を通る直線Ａ２’は、時刻ｔ１における検出対象ＯＢ１の位置Ｐ２を通る直線Ａ２よりも自車両１の中心軸と反対する方向にあるため、左側相対角速度ｄθＬ２の向きを、自車両１の中心軸方向と反対する方向（反時計回りの方向）として算出する。
【００５５】
同様に、相対角速度算出機能は、右側カメラ２０ｂから見た検出対象の相対角速度（右側相対角速度）も算出する。例えば、図９に示す場面例において、検出対象ＯＢ１を、右側カメラ２０ｂから見た場合、検出対象ＯＢ１は、右側カメラ２０ｂの光軸（右側カメラ２０ｂの撮像素子に入射する光の軸）よりも左側の領域を移動しているため、右側カメラ２０ｂから見た検出対象ＯＢ１の移動速度は、自車両１の中心軸（反時計回り方向）に向かう右側相対角速度として算出される。また、図示していないが、図７および図８に示す画素群ＯＢ３に対応する対象領域に含まれる検出対象は、右側カメラ２０ｂの光軸よりも右側の領域を移動しており、この場合、右側カメラ２０ｂから見た検出対象の移動速度は、車両１の中心軸と反対する方向（時計回り方向）に向かう右側相対角速度として算出される。
【００５６】
次に、判断機能について説明する。判断機能は、相対角速度算出機能により算出された相対角速度の向きに基づいて、車両１前方に存在する検出対象を回避する必要があるか否かを判断する。具体的には、左側相対角速度または右側相対角速度のいずれかが０の場合、または、左側相対角速度の向きおよび右側相対角速度の向きがともに、自車両１の中心軸方向である場合に、検出対象を回避する必要があると判断する。
【００５７】
図１１〜図１３は、検出対象を回避する必要があるかを判断する手法例を説明するための図である。図１１は、図９に示す場面例において、検出対象ＯＢ１を左側カメラ２０ａから見た左側相対角速度ｄθＬ１に加えて、検出対象ＯＢ１を右側カメラ２０ｂから見た右側相対角速度ｄθＲ１を表した図である。図１１に示すように、検出対象ＯＢ１が、左側カメラ２０ａの光軸よりも右側の領域であり、かつ右側カメラ２０ｂの光軸よりも左側の領域を移動する場合、左側相対角速度ｄθＬ１の向きは、自車両１の中心軸方向（時計回りの方向）となり、かつ、右側相対角速度ｄθＲ１の向きも、自車両１の中心軸方向（反時計回りの方向）となる関係にある。そこで、判断機能は、図１１に示すように、左側相対角速度ｄθＬ１の向きが自車両１の中心軸方向（時計回りの方向）であり、かつ、右側相対角速度ｄθＲ２の向きも自車両１の中心軸方向（反時計回りの方向）である場合には、検出対象ＯＢ１は、自車両１に向かって接近しており、検出対象ＯＢ１を回避する必要があると判断する。
【００５８】
一方、図１２は、図１０に示す場面例において、左側相対角速度ｄθＬ２に加えて、右側相対角速度ｄθＲ２を表した図である。図１２に示すように、検出対象ＯＢ２が、左側カメラ２０ａの光軸よりも左側の領域を移動している場合、左側相対角速度ｄθＬ２の向きは自車両１の中心軸と反対する方向（反時計回りの方向）となり、右側相対角速度ｄθＲ２の向きは自車両１の中心軸方向（反時計回りの方向）となる関係にある。そこで、判断機能は、図１２に示すように、左側相対角速度ｄθＬ２の向きが車両１の中心軸と反対する方向（反時計回りの方向）であり、かつ、右側相対角速度ｄθＲ２の向きが車両１の中心軸方向（反時計回りの方向）である場合には、検出対象ＯＢ２は自車両１の左側側方を通過するものと予測し、検出対象ＯＢ２を回避する必要はないと判断する。
【００５９】
また、図１３に示す検出対象ＯＢ３は、図７および図８に示す画素群ＯＢ３に対応する対象領域に含まれる検出対象を示しており、図１３において、検出対象ＯＢ３に対する右側相対角速度ｄθＬ３および左側相対角速度ｄθＲ３を表している。図１３に示すように、検出対象ＯＢ３が、右側カメラ２０ｂの光軸よりも右側の領域を移動している場合、左側相対角速度ｄθＬ３の向きは、自車両１の中心軸方向（時計回りの方向）となり、右側相対角速度ｄθＲ３の向きは、自車両１の中心軸と反対する方向（時計回りの方向）となる関係にある。そこで、判断機能は、図１３に示すように、左側相対角速度ｄθＬ３の向きが、自車両１の中心軸方向（時計回りの方向）であり、かつ、右側相対角速度ｄθＲ３の向きが、自車両１の中心軸と反対する方向（時計回りの方向）である場合には、検出対象ＯＢ３は車両１の右側側方を通過するものと予測し、検出対象ＯＢ３を回避する必要はないと判断する。
【００６０】
なお、検出対象が左側カメラ２０ａの光軸上を移動し、左側相対角速度が０の場合にも、検出対象を回避する必要があり、また同様に、検出対象が右側カメラ２０ｂの光軸上を移動し、右側相対角速度が０の場合にも、検出対象を回避する必要がある。そのため、判断機能は、左側側相対角速度が０の場合、または右側相対角速度が０の場合にも、検出対象を回避する必要があると判断する。
【００６１】
さらに、判断機能は、検出対象を回避する必要があると判断した場合に、検出対象を回避する方向を判断する。具体的には、左側相対角速度と右側相対角速度との大きさを比較し、左側相対角速度が右側相対角速度よりも大きい場合には、検出対象を回避する方向を左方向と判断し、反対に、右側相対角速度が左側相対角速度よりも大きい場合には、検出対象を回避する方向を右方向と判断する。なお、左側相対角速度と右側相対角速度とが等しい場合は、検出対象を回避する方向を、左右いずれの方向としてもよい。
【００６２】
図１４は、相対角速度に基づいて、検出対象を回避する方向を判断する手法例を説明するための図である。図１４では、図１１に示す場面例において、検出対象ＯＢ１の位置から左側カメラ２０ａの光軸までの最短距離Ｄ１と、検出対象ＯＢ１の位置から右側カメラ２０ｂの光軸までの最短距離Ｄ２とを表している。図１４に示すように、検出対象ＯＢ１が、自車両１の中心軸よりも左側の領域を移動する場合、検出対象ＯＢ１の位置から右側カメラ２０ｂの光軸までの最短距離Ｄ２は、検出対象ＯＢ１の位置から左側カメラ２０ａの光軸までの最短距離Ｄ１よりも大きくなり、右側相対角速度ｄθＲ３は左側相対角速度ｄθＬ３よりも大きくなる。また、図示していないが、反対に、検出対象ＯＢ１が、自車両１の中心軸よりも右側の領域を移動する場合、検出対象ＯＢ１の位置から左側カメラ２０ｂの光軸までの最短距離Ｄ１は、検出対象ＯＢ１の位置から右側カメラ２０ｂの光軸までの最短距離Ｄ２よりも大きくなり、左側相対角速度ｄθＬ３は右側相対角速度ｄθＲ３よりも大きくなる。このように、対象物の位置から各カメラ２０ａ，２０ｂの光軸までの最短距離と、相対角速度の大きさとは、一定の対応関係を有する。すなわち、検出対象の位置から各カメラ２０ａ，２０ｂの光軸までの最短距離が大きくなるほど、相対角速度が大きくなる関係にある。そこで、判断機能は、左側相対角速度と右側相対角速度とを比較し、図１４に示す例のように、右側相対角速度ｄθＲ３が左側相対角速度ｄθＬ３よりも大きい場合には、検出対象ＯＢ１の位置から右側カメラ２０ｂの光軸までの最短距離Ｄ２は、検出対象ＯＢ１の位置から左側カメラ２０ａの光軸までの最短距離Ｄ１よりも大きく、検出対象ＯＢ１は自車両１の中心軸よりも左側の領域に存在すると判断する。反対に、左側相対角速度ｄθＬ３が右側相対角速度ｄθＲ３よりも大きい場合には、検出対象ＯＢ１の位置から左側カメラ２０ａの光軸までの最短距離Ｄ１は、検出対象ＯＢ１の位置から右側カメラ２０ｂの光軸までの最短距離Ｄ２よりも大きくなり、検出対象ＯＢ１が自車両１の中心軸よりも右側の領域に存在すると判断する。
【００６３】
そして、判断機能は、図１４に示すように、検出対象ＯＢ１が自車両１の中心軸よりも左側の領域に存在すると判断した場合には、検出対象ＯＢ１を回避する方向を右方向と判断することで、仮に、検出対象ＯＢ１を左方向に回避する場合と比べて、少ない動作（操舵角）で迅速に検出対象ＯＢ１を回避することができる。また同様に、判断機能は、検出対象が自車両１の中心軸よりも右側の領域に存在すると判断した場合には、検出対象を回避する方向を左方向として判断することで、仮に、検出対象を右方向に回避する場合と比べて、少ない動作（操舵角）で迅速に検出対象を回避することができる。
【００６４】
このように、判断機能は、左側相対角速度の向きおよび右側相対角速度の向きに基づいて、検出対象を回避する必要があるか否かを判断し、検出対象を回避する必要があると判断した場合には、左側相対角速度と右側相対角速とに基づいて、検出対象を回避する方向を判断する。また、判断機能は、検出対象を回避する必要があると判断した場合に、左側相対角速度および右側相対角速度のうち値が小さい相対角速度の向きが自車両１の中心軸と反対する方向となるように、値の小さい方の相対角速度に基づいて制御値を算出し、算出した制御値を、検出対象を回避する方向などの情報とともに、舵角アクチュエータ４０に送信する。
【００６５】
舵角アクチュエータ４０は、コントローラ１０から送信された情報に基づいて、検出対象を回避するように車両１を制御する。例えば、コントローラ１０から送信された制御値に応じた角度だけ、検出対象を回避する方向に、車両１の舵角制御を行う。例えば、図１４に示すように、判断機能が、検出対象ＯＢ１が車両１の中心軸よりも左側の領域に存在し、検出対象を回避する方向を右方向と判断した場合には、舵角アクチュエータ４０は、右方向に、左側相対角速度に基づいて求めた制御値に応じた角度だけ舵角制御をすることで、検出対象ＯＢ１を回避するように車両１を制御する。
【００６６】
また、コントローラ１０は、舵角アクチュエータ４０以外の構成に対して、検出対象を回避する必要がある旨の情報、相対角速度、および検出対象を回避する方向などの情報を送信し、検出対象を回避するための処理を行わせてもよい。例えば、図示しないスピーカやディスプレイを介して、検出対象を回避する必要がある旨、検出対象を回避する方向などを、ユーザに伝達するような構成としてもよい。
【００６７】
次に、図１５を参照して、本実施形態に係る走行支援処理について説明する。図１５は、本実施形態に係る走行支援処理を示すフローチャートである。以下においては、図３に示すように、自車両１が走行する車線側の路肩で駐車している他の車両（駐車車両）を回避するように、車両１を制御する場面例を例示して説明する。
【００６８】
ステップＳ１０１では、左右一対のカメラ２０ａ，２０ｂで、車両１前方を、一定時間間隔で、同時に、連続して撮像する。撮像された撮像画像の画像データは、カメラ２０ａ，２０ｂからコントローラ１０へ送信される。例えば、左側カメラ２０ａでは、図３に示すように、駐車車両を含む撮像画像が撮像される。
【００６９】
ステップＳ１０２では、コントローラ１０の取得機能により、ステップＳ１０１において、左右一対のカメラ２０ａ，２０ｂにより撮像された撮像画像の画像データが取得される。なお、上述したように、左右一対のカメラ２０ａ，２０ｂは、一定時間間隔で、連続して、車両１前方を撮像しており、取得機能は、時系列に沿って撮像された撮像画像の画像データを取得する。
【００７０】
ステップＳ１０３では、コントローラ１０の特徴点抽出機能により、ステップＳ１０２で取得された画像データが、所定の閾値を用いて２値化され、図４（Ａ）に示すように、画像内に存在するエッジが抽出される。
【００７１】
ステップＳ１０４では、特徴点抽出機能により、ステップＳ１０３で抽出されたエッジのエッジ幅を、エッジ強度が最も大きい１画素とすることで、図４（Ｂ）に示すように、エッジのエッジ幅が細線化される。
【００７２】
ステップＳ１０５では、特徴点抽出機能により、ステップＳ１０４で細線化されたエッジがｘ軸方向に膨張され、図４（Ｃ）に示すように、エッジのエッジ幅が一定の幅に正規化される。特徴点抽出機能により得られたエッジ画像は、コントローラ１０のＲＡＭ１３に記憶される。
【００７３】
ステップＳ１０６では、コントローラ１０の移動情報算出機能により、撮像画像上においてエッジが移動した方向（移動方向）と、エッジが移動した速度（移動速度）とを含む移動情報が算出される。例えば、図４（Ｃ）〜図４（Ｆ）に示すように、抽出されたエッジが、何フレームの間、同一画素に存在しているかをカウントアップすることで、エッジの移動速度およびエッジの移動方向が算出される。そして、算出されたエッジの移動情報に基づいて、エッジの移動情報の特徴を表した移動画像が生成される。図３に示す場面例においては、図３に示す撮像画像から抽出したエッジの移動情報に基づいて、図５に示すような移動画像が生成される。
【００７４】
ステップＳ１０７では、コントローラ１０の対象領域抽出機能により、ｙ軸方向に沿って連続し、かつ、移動情報が共通する画素がグループ化され、グループ化された画素群のうち、最も上端に位置する画素の位置が最上点位置として、最も下端に位置する画素の位置が最下点位置として検出される。
【００７５】
図３に示す場面例において、駐車車両の右側端部から抽出されたエッジに対応する画素は、図６に示すように、ｙ軸方向に沿って連続し、かつ、右方向に同程度の速度で移動している。そこで、対象領域抽出機能は、これらの画素をグループ化して画素群ＯＢ１とし、図７に示すように、画素群ＯＢ１の最も上端に位置する画素の位置である最上点位置ＴＰ７−１と、最も下端に位置する画素の位置である最下点位置ＢＰ７−１とを検出する。同様に、対象領域抽出機能は、駐車車両の左側端部から抽出されたエッジに対応する画素群ＯＢ２の最上点位置ＴＰ４−３および最下点位置ＢＰ４−３と、外壁から抽出されたエッジに対応する画素群ＯＢ３の最上点位置ＴＰ１１−３および最下点位置ＢＰ１１−３と、レーンマークから抽出されたエッジに対応する画素群ＯＢ４の最上点位置ＴＰ３−１および最下点位置ＢＰ３−１となどを検出する。
【００７６】
ステップＳ１０８では、対象領域抽出機能により、ｘｙ平面（カメラ座標系）上の最上点位置および最下点位置が、ＺＸ平面（実空間座標系）上の最上端変換点および最下端変換点に変換される。そして、最上点位置および最下点位置を、ＺＸ平面（実空間座標系）の位置座標に変換した際に、最上端変換点がＺＸ平面領域外に投影され、かつ、最下端変換点がＺＸ平面のいずれかの領域に属することとなる画素群に対応する領域を、検出対象を含む対象領域として全て抽出する。
【００７７】
図３に示す場面例では、図８に示すように、駐車車両の右側端部から抽出されたエッジに対応する画素群ＯＢ１の最下点位置ＢＰ７−１は、最下端変換点ＲＢ７−１に変換され、ＺＸ平面の領域４２に属する一方、画素群ＯＢ１の最上点位置ＴＰ７−１は、ＺＸ平面領域外に投影される。そのため、画素群ＯＢ１に対応する領域は、検出対象ＯＢ１を含む対象領域として抽出される。同様に、駐車車両の左側端部から抽出されたエッジに対応する画素群ＯＢ２の最下点位置ＢＰ４−３は、最下端変換点ＲＢ４−３に変換され、ＺＸ平面の領域３２に属する一方、画素群ＯＢ２の最上点位置ＴＰ４−３は、ＺＸ平面領域外に投影されるため、画素群ＯＢ２に対応する領域は、検出対象ＯＢ２を含む対象領域として抽出される。さらに、外壁から抽出されたエッジに対応する画素群ＯＢ３の最下点位置ＢＰ１１−３は、最下端変換点ＲＢ１１−３に変換され、ＺＸ平面の領域８５に属する一方、画素群ＯＢ３の最上点位置ＴＰ１１−３は、ＺＸ平面領域外に投影されるため、画素群ＯＢ３に対応する領域は、検出対象ＯＢ３を含む対象領域として抽出される。一方、レーンマークから抽出されたエッジに対応する画素群ＯＢ４の最下点位置ＢＰ３−１は、最下端変換点ＲＢ３−１に変換され、ＺＸ平面の領域３５に属し、画素群ＯＢ４の最上点位置ＴＰ３−１も、最上端変換点ＲＴ３−１に変換され、ＺＸ平面の領域３４に属する。そのため、画素群ＯＢ４に対応する領域は、平面物であると判断され、検出対象を含む対象領域として抽出されない。
【００７８】
なお、ステップＳ１０１からステップＳ１０８までの処理は、左側カメラ２０ａで撮像された撮像画像の画像データおよび左側カメラ２０ｂで撮像された撮像画像の画像データごとに行われるため、ステップＳ１０８では、左側カメラ２０ａで撮像された撮像画像に基づく対象領域と、左側カメラ２０ｂで撮像された撮像画像に基づく対象領域とが抽出される。
【００７９】
次に、ステップＳ１０９では、ステップＳ１０８で対象領域が抽出されたか判断される。対象領域が抽出されない場合（ステップＳ１０９＝ＮＯ）は、回避する必要があるかの判断の対象となる検出対象が、車両１の前方には存在しないものと判断され、この走行支援処理を終了する。一方、対象領域が抽出された場合（ステップＳ１０９＝ＹＥＳ）は、ステップＳ１１０に進む。
【００８０】
次に、ステップＳ１１０では、コントローラ１０の相対角速度算出機能により、同じタイミングで撮像された左側カメラ２０ａの撮像画像に基づく対象領域と右側カメラ２０ｂの撮像画像に基づく対象領域とが比較され、同一の位置座標で抽出された対象領域に含まれる検出対象が、同一の検出対象であると同定される。
【００８１】
ステップＳ１１１では、コントローラ１０の相対角速度算出機能により、ステップＳ１１０で同定された検出対象の相対角速度が算出される。図３に示す場面例では、図７および図８に示す画素群ＯＢ１に対応する対象領域に含まれる検出対象ＯＢ１について、図１１に示すように、自車両１の中心軸に向かう左側相対角速度ｄθＬ１と、自車両１の中心軸に向かう右側相対角速度ｄθＲ１とが算出される。また、図７および図８に示す画素群ＯＢ２に対応する対象領域に含まれる検出対象ＯＢ２について、図１２に示すように、自車両１の中心軸と反対方向に向かう左側相対角速度ｄθＬ２と、自車両１の中心軸に向かう右側相対角速度ｄθＲ２とが算出される。さらに、図７および図８に示す画素群ＯＢ３に対応する対象領域に含まれる検出対象ＯＢ３について、図１３に示すように、自車両１の中心軸に向かう左側相対角速度ｄθＬ３と、自車両１の中心軸と反対方向に向かう右側相対角速度ｄθＲ３とが算出される。
【００８２】
ステップＳ１１２では、コントローラ１０の判断機能により、ステップＳ１１１で算出された右側相対角速度の向きおよび左側相対角速度の向きに基づいて、検出対象を回避する必要があるか否か判断される。具体的には、左側相対角速度または右側相対角速度のいずれかが０の場合、または、左側相対角速度の向きおよび右側相対角速度の向きがともに、自車両１の中心軸方向である場合に、検出対象を回避する必要があると判断される。
【００８３】
例えば、図３に示す場面例では、検出対象ＯＢ１については、図１１に示すように、自車両１の中心軸に向かう左側相対角速度ｄθＬ１と、自車両１の中心軸に向かう右側相対角速度ｄθＲ１とが算出されるため、検出対象ＯＢ１を回避する必要があると判断される。一方、検出対象ＯＢ２については、図１２に示すように、自車両１の中心軸と反対方向に向かう左側相対角速度ｄθＬ２と、自車両１の中心軸に向かう右側相対角速度ｄθＲ２とが算出されるため、検出対象ＯＢ２を回避する必要はないと判断される。さらに、検出対象ＯＢ３については、図１３に示すように、自車両１の中心軸に向かう左側相対角速度ｄθＬ３と、自車両１の中心軸と反対方向に向かう右側相対角速度ｄθＲ３とが算出されるため、検出対象ＯＢ３を回避する必要はないと判断される。
【００８４】
ステップＳ１１３では、ステップＳ１１２の判断の結果、回避する必要がある検出対象が１つでも存在するか判断される。回避する必要がある検出対象がある場合は、ステップＳ１１４に進み、一方、回避する必要のある検出対象が存在しない場合には、走行支援処理を終了する。図３に示す場面例では、検出対象ＯＢ１を回避する必要があると判断されているため、ステップＳ１１４に進む。
【００８５】
ステップＳ１１４では、判断機能により、左側相対角速度および右側相対角速度に基づいて、検出対象を回避する方向が判断される。例えば、判断機能は、左側相対角速度と右相側対角速度とを比較し、左側相対角速度が右側相対角速度以上の場合には、検出対象を回避する方向を左方向と判断し、反対に、右側相対角速度が左側相対角速度よりも大きい場合には、検出対象を回避する方向を右方向と判断する。そして、判断機能は、左側相対角速度および右側相対角速度のうち値が小さい相対角速度の向きが自車両１の中心軸と反対する方向に向くように、値の小さい方の相対角速度に基づいて制御値を算出し、算出した制御値を、検出対象を回避する方向の情報とともに、舵角アクチュエータ４０に送信する。
【００８６】
例えば、図３に示す場面例では、検出対象ＯＢ１について、左側相対角速度と右側相対角速度とが比較される。検出対象ＯＢ１については、図１４に示すように、右側相対角速度ｄθＲ１が左側相対角速度ｄθＬ１よりも大きいため、検出対象ＯＢ１を回避する方向が右方向と判断される。そして、左側相対角速度ｄθＬ１の向きが自車両１の中心軸と反対する方向となるように、左側相対角速度に基づいて制御値が算出され、算出された制御値と、検出対象を回避する方向である右方向との情報が、舵角アクチュエータ４０に送信される。
【００８７】
ステップＳ１１５では、舵角アクチュエータ４０により、コントローラ１０から送信される制御値、および検出対象を回避する方向などの情報が取得される。そして、舵角アクチュエータ４０は、例えば、コントローラ１０から送信された制御値に応じた角度だけ、検出対象を回避する方向に、車両１の舵角制御を行う。例えば、図３に示す場面例においては、舵角アクチュエータ４０は、検出対象ＯＢ１を回避する方向として判断された右方向に、左側相対角速度に基づいて算出された制御値に応じた角度だけ、車両１を舵角制御することで、車両１に検出対象ＯＢ１を回避させる。
【００８８】
また、ステップＳ１１５では、コントローラ１０は、舵角アクチュエータ４０の他に、例えば、図示しないスピーカやディスプレイなどに、検出対象を回避する必要がある旨または検出対象を回避する方向などの情報を送信し、検出対象を回避する必要があること、または検出対象を回避するための方向を、ユーザに伝達する。
【００８９】
ステップＳ１１５を終了した後は、本実施形態に係る走行支援処理を終了する。
【００９０】
続いて、図１６を参照して、自車両１が片道１車線の道路を走行しており、かつ、対向車線上を他の車両が走行してきた場面における走行支援処理について説明する。図１６は、左側カメラ２０ａで撮像された撮像画像の他の例を示す図である。
【００９１】
まず、左右一対のカメラ２０ａ，２０ｂで車両１の前方が撮像される（ステップＳ１０１）。これにより、図１６に示すように、対向車線上に対向車両が存在する撮像画像の画像データが取得される（ステップＳ１０２）。そして、この画像データに基づいて、図４（Ａ）に示すように、画像内のエッジが抽出され（ステップＳ１０３）、図４（Ｂ），（Ｃ）に示すように、抽出されたエッジについて細線化処理、膨張処理が行われる（ステップＳ１０４，ステップＳ１０５）。その後、図４（Ｃ）〜（Ｆ）に示すように、エッジの移動情報が算出され、移動画像が生成される（ステップＳ１０６）。図１７は、図１６に示す場面例において、抽出されたエッジの移動情報に基づいて作成された移動画像である。図１７に示すように、対向車両から抽出されたエッジは、右方向への移動情報を有する。
【００９２】
次に、ｙ軸方向に沿って連続し、移動情報が共通する画素がグループ化され、グループ化された画素群の最上点位置および最下点位置が抽出される（ステップＳ１０７）。図１８は、図１６に示す場面例において、抽出された最上点位置および最下点位置の一例を示す図である。なお、図１８においては、画素群ＯＢ５以外の画素群については、記載を省略している。図１６に示す場面例では、図１８に示すように、対向車両の右側端部（撮像画面上では対向車線の左側の端部となる）から抽出されたエッジに対応する画素が、ｙ軸方向に沿って連続し、かつ、右方向に同程度の速度で移動するため、画素群ＯＢ５としてグループ化される。そして、画素群ＯＢ５から最上点位置ＴＰ９−３と最下点位置ＢＰ９−３とが抽出される。
【００９３】
続いて、ｘｙ座標（カメラ座標系）上の最上点位置ＴＰ９−３および最下点位置ＢＰ９−３が、ＺＸ座標（実空間座標系）上の位置座標に変換され、検出対象を含む対象領域が抽出される（ステップＳ１０８）。ここで、図示していないが、画素群ＯＢ５の最下点位置ＢＰ９−３と最上点位置ＴＰ９−３とを、ＺＸ平面（実空間座標系）に変換すると、最下点位置ＢＰ９−３から変換された最下端変換点ＢＲ９−３は、ＺＸ平面領域に属することになる一方、最上点位置ＴＰ９−３は、ＺＸ平面領域外に投影される。そのため、画素群ＯＢ５に対応する領域は、立体物または立体物の一部であると判断され、検出対象を含む対象領域として抽出される。
【００９４】
次に、左側カメラ２０ａで撮像された撮像画像に基づいて抽出された検出対象と、右側カメラ２０ｂで撮像された撮像画像に基づいて抽出された検出対象との同定が行われ（ステップＳ１１０）、同定された検出対象の移動速度が相対角速度として算出される（ステップＳ１１１）。ここで、画素群ＯＢ５に対応する対象領域の検出対象について、相対角速度算出手段は、図１３に示すように、自車両１の中心軸（時計回りの方向）に向かう左側相対角速度ｄθＬ３と、自車両１の中心軸と反対する方向（時計回りの方向）に向かう右側相対角速度ｄθＲ３とを算出することになる。
【００９５】
次に、右側相対角速度の向きと左側相対角速度の向きに基づいて、検出対象を回避する必要があるか判断される（ステップＳ１１２）。ここで、図１６に示す場面例において、画素群ＯＢ５に対応する対象領域の検出対象については、図１３に示すように、左側相対角速度の向きは自車両１の中心軸（時計回り方向）に向かっており、右側相対角速度の向きは自車両１の中心軸と反対方向（時計回り方向）に向かっているため、判断機能は、画素群ＯＢ５に対応する対象領域の検出対象を回避する必要がないと判断する。
【００９６】
このように、図１６に示す場面例においては、抽出された全ての検出対象について、検出対象を回避する必要はないと判断され（ステップＳ１１３＝ＮＯ）、車両１の舵角制御を行わず、走行支援処理を終了する。
【００９７】
以上のように、本実施形態によれば、車両１前方を撮像した画像からエッジを抽出し、抽出されたエッジの移動情報に基づいて、各カメラ２０ａ，２０ｂに対する検出対象の移動速度を相対角速度として算出することで、相対角速度の向きから、検出対象が自車両１に向かって接近しているのか、自車両１の側方を通過するのかを予測することができ、検出対象を回避する必要があるか否かを判断することができる。特に、本実施形態によれば、車両１前方を撮像した画像のみに基づいて、相対角速度を算出し、検出対象を回避する必要があるか否かを判断することができるため、従来のように、舵角センサや車速センサなどの構成を必要とせず、装置全体を簡略化することができ、また各センサなどからの情報を処理する必要もなく、装置全体での処理負担を軽減することができる。
【００９８】
また、本実施形態では、左右一対のカメラ２０ａ，２０ｂを用いて、左側カメラ２０ａに対する検出対象の移動速度を左側相対角速度として算出し、また右側カメラ２０ｂに対する検出対象の相対角速度を右側相対角速度として算出する。そして、左側相対角速度の向きが自車両１の中心軸（時計回り方向）に向かっており、かつ、右側相対角速度の向きが中心軸（反時計回り方向）に向かっている場合に、検出対象を回避する必要があると判断する。このように、左側相対角速度の向きと右側相対角速度の向きとに基づいて、検出対象を回避する必要があるか否かを判断することで、より適切な判断が可能となる。これに加え、本実施形態のように、左右一対のカメラ２０ａ，２０ｂを、車両１の左右側端に位置する左右一対のドアミラーケース３０ａ，３０ｂ内にそれぞれ収容することで、左右一対のカメラ２０ａ，２０ｂで撮像された撮像画像に基づいて算出した相対角速度の向きから、検出対象を回避する必要があるか否かを適切に判断することができる。
【００９９】
さらに、本実施形態では、左側相対角速度と右側相対角速度との大きさを比較し、左側相対角速度が右側相対角速度よりも大きい場合には、検出対象を回避する方向を左方向と判断し、反対に、右側相対角速度が左側相対角速度よりも大きい場合には、検出対象を回避する方向を右方向と判断する。検出対象が左側カメラ２０ａの光軸よりも右側の領域であり、かつ右側カメラ２０ｂの光軸よりも左側の領域に存在する場合には、左側相対角速度と右側相対角速度とを比べることで、検出対象が、自車両１の中心軸から右側の領域に存在するか、自車両１の中心軸から左側の領域に存在するかを判断することができるため、迅速に検出対象を回避することができる方向を判断することができる。
【０１００】
以上説明した実施形態は、本発明の理解を容易にするために記載されたものであって、本発明を限定するために記載されたものではない。したがって、上記の実施形態に開示された各要素は、本発明の技術的範囲に属する全ての設計変更や均等物をも含む趣旨である。
【０１０１】
例えば、本実施形態では、左右一対のカメラ２０ａ，２０ｂを備える車両１を例示して説明したが、車両１の構成はこれに限定されるものではなく、左右一対のカメラ２０ａ，２０ｂのいずれか一方のカメラのみを備える構成としてもよい。また、本実施形態では、左右一対のカメラ２０ａ，２０ｂを左右一対のドアミラーケース３０ａ，３０ｂ内に設置しているが、これに限定されるものではなく、車両１の左右両側の任意の位置に設置してもよい。
【０１０２】
さらに、本実施形態では、右側相対角速度の向きおよび左側相対角速度の向きがともに車両１の中心軸に向かっている場合に、検出対象を回避する必要があると判断しているが、例えば、左右一対のカメラ２０ａ，２０ｂが車両１の左右側端に設置されていない場合には、左側相対角速度の向きまたは右側相対角速度の向きが、車両１の中心軸と反対する方向に向かっている場合であっても、相対角速度の大きさが所定の範囲内であれば、検出対象を回避する必要があると判断してもよい。
【０１０３】
なお、上述した実施形態のカメラ２０ａ，２０ｂは本発明の撮像手段に、コントローラ１０の特徴点抽出機能は本発明の特徴点抽出手段に、コントローラ１０の移動情報算出機能は本発明の移動情報算出手段に、コントローラ１０の対象領域抽出機能は本発明の対象領域抽出手段に、コントローラ１０の相対角速度算出機能は本発明の相対角速度算出手段に、コントローラ１０の判断機能は本発明の判断手段に、舵角アクチュエータ４０は本発明の制御手段にそれぞれ相当する。
【符号の説明】
【０１０４】
１…車両（自車両）
１０…コントローラ
２０ａ，２０ｂ…カメラ
３０ａ，３０ｂ…ドアミラーケース
４０…舵角アクチュエータ
【図１】
0005493601.tif 000002
【図２】
0005493601.tif 000003
【図３】
0005493601.tif 000004
【図４】
0005493601.tif 000005
【図５】
0005493601.tif 000006
【図６】
0005493601.tif 000007
【図７】
0005493601.tif 000008
【図８】
0005493601.tif 000009
【図９】
0005493601.tif 000010
【図１０】
0005493601.tif 000011
【図１１】
0005493601.tif 000012
【図１２】
0005493601.tif 000013
【図１３】
0005493601.tif 000014
【図１４】
0005493601.tif 000015
【図１５】
0005493601.tif 000016
【図１６】
0005493601.tif 000017
【図１７】
0005493601.tif 000018
【図１８】
0005493601.tif 000019