(57)【要約】【課題】走路の状態によらず走行中の車両に影響する障害物を適切に検出すること。【解決手段】障害物検出装置１００は、カメラから異なる時点での画像を取得し、取得した各画像に基づいて画像の各領域にかかる動きベクトルを算出するとともに、車両の走行状態から車両の走行する空間のモデルを生成し、生成したモデルに基づいて仮想的な動きベクトルを算出する。そして、障害物検出装置１００は、モデルを複数の仮想領域に分割し、分割した仮想領域に対応する動きベクトルおよび仮想動きベクトルと当該仮想領域ごとに設定された判定基準とを基にして障害物を検出する。【選択図】        図２
2008282106.tif 000002
【特許請求の範囲】
【請求項１】
カメラによって撮影された画像から車両の走行に影響する障害物を検出する障害物検出装置の障害物検出方法であって、
前記カメラから異なる時点での画像を取得して記憶装置に記憶し、当該記憶装置に記憶された異なる時点での画像に基づいて当該画像の各領域における動きベクトルを算出する動きベクトル算出工程と、
前記車両の走行状態から当該車両の走行する空間のモデルを生成し、生成したモデルに基づいて前記画像の各領域に対する仮想的な動きベクトルを算出する仮想動きベクトル算出工程と、
前記モデルを複数の仮想領域に分割し、分割した仮想領域に対応する前記動きベクトルおよび仮想的な動きベクトルと当該仮想領域ごとに設定された判定基準とを基にして障害物を検出する障害物検出工程と、
を含んだことを特徴とする障害物検出方法。
【請求項２】
前記仮想領域は第１の仮想領域および第２の仮想領域を含み、前記障害物検出工程は、前記第１の仮想領域に含まれる前記動きベクトルと前記仮想的な動きベクトルとを比較し、前記動きベクトルと前記仮想的な動きベクトルとの差が閾値以上かつ、前記動きベクトルおよび前記仮想的な動きベクトルの差分からなるベクトルの符合と前記仮想的な動きベクトルの符号とが異符号となる部分を障害物として検出することを特徴とする請求項１に記載の障害物検出方法。
【請求項３】
前記障害物検出工程は、前記第２の仮想領域に含まれる前記動きベクトルと前記仮想的な動きベクトルとを比較し、前記動きベクトルと前記仮想的な動きベクトルとの差が閾値以上となる部分を障害物として検出することを特徴とする請求項２に記載の障害物検出方法。
【請求項４】
前記障害物検出工程は、比較対象となる前記動きベクトルと仮想的な動きベクトルとの前記仮想領域上の位置に応じて前記閾値を調整することを特徴とする請求項１、２または３に記載の障害物検出方法。
【請求項５】
カメラによって撮影された画像から車両の走行に影響する障害物を検出する障害物検出装置であって、
前記カメラから異なる時点での画像を取得して記憶装置に記憶し、当該記憶装置に記憶された異なる時点での画像に基づいて当該画像の各領域における動きベクトルを算出する動きベクトル算出手段と、
前記車両の走行状態から当該車両の走行する空間のモデルを生成し、生成したモデルに基づいて前記画像の各領域に対する仮想的な動きベクトルを算出する仮想動きベクトル算出手段と、
前記モデルを複数の仮想領域に分割し、分割した仮想領域に対応する前記動きベクトルおよび仮想的な動きベクトルと当該仮想領域ごとに設定された判断基準とを基にして障害物を検出する障害物検出手段と、
を備えたことを特徴とする障害物検出装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、カメラによって撮影された画像から車両の走行に影響する障害物を検出する障害物検出装置およびその障害物検出方法に関し、特に、走路の状態によらず走行中の車両に影響する障害物を適切に検出可能な障害物検出方法および障害物検出装置に関するものである。
【背景技術】
【０００２】
近年、車載カメラで撮影した画像から車両周辺の歩行者や対向車両などの障害物を検出し、検出した障害物をドライバーに通知することによって交通事故を未然に防止するという技術が考案され、実用化されている。
【０００３】
このような障害物検出に関わる技術は、例えば、特許文献１、特許文献２等に公開されている。具体的に、特許文献１において公開されている技術は、単一のカメラで撮影した画像を複数の領域に分割して画素の動きベクトルを算出するとともに画像の類似度を検出し、かかる動きベクトルおよび画像の類似度に基づいて障害物を検出するという技術である。
【０００４】
また、特許文献２では、画像上で、自車両の幅と白線検出等により走行領域を決定し、テンプレートマッチングなどの特徴量追跡により抽出した障害物が走行領域に外部から侵入してきた場合に、進入してきた物体を障害物として検出するという技術が公開されている。
【０００５】
【特許文献１】特開２００５−１００２０４号公報
【特許文献２】特開２００４−２８０１９４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
障害物検出においては、走路上に存在するもの、もしくは走路へ侵入する方向に移動する物体（あるいは走行中の車両に影響する物体）を障害物として検出することが望ましい。しかし、特許文献１において公開されている技術は、走路への侵入の有無に関わらず障害物検出を行ってしまう（例えば、走路の外に移動する物体も障害物として検出してしまう）ため、ドライバーに不必要な情報を通知してしまうという問題があった。
【０００７】
また、特許文献２において公開されている技術では、走路上に白線が存在することで初めて障害物検出を行うことができるため、走路の状態によっては（例えば、走路上に白線が存在しない場合には）障害物を検出することができないという問題があった。
【０００８】
すなわち、走路の状態によらず走行中の車両に影響する障害物を適切に検出することがきわめて重要な課題となっている。
【０００９】
この発明は、上述した従来技術による問題点を解消するためになされたものであり、走路の状態によらず走行中の車両に影響する障害物を適切に検出することができる障害物検出方法および障害物検出装置を提供することを目的とする。
【課題を解決するための手段】
【００１０】
上述した課題を解決し、目的を達成するため、本発明は、カメラによって撮影された画像から車両の走行に影響する障害物を検出する障害物検出装置の障害物検出方法であって、前記カメラから異なる時点での画像を取得して記憶装置に記憶し、当該記憶装置に記憶された異なる時点での画像に基づいて当該画像の各領域における動きベクトルを算出する動きベクトル算出工程と、前記車両の走行状態から当該車両の走行する空間のモデルを生成し、生成したモデルに基づいて前記画像の各領域に対する仮想的な動きベクトルを算出する仮想動きベクトル算出工程と、前記モデルを複数の仮想領域に分割し、分割した仮想領域に対応する前記動きベクトルおよび仮想的な動きベクトルと当該仮想領域ごとに設定された判定基準とを基にして障害物を検出する障害物検出工程と、を含んだことを特徴とする。
【００１１】
また、本発明は、上記発明において、前記仮想領域は第１の仮想領域および第２の仮想領域を含み、前記障害物検出工程は、前記第１の仮想領域に含まれる前記動きベクトルと前記仮想的な動きベクトルとを比較し、前記動きベクトルと前記仮想的な動きベクトルとの差が閾値以上かつ、前記動きベクトルおよび前記仮想的な動きベクトルの差分からなるベクトルの符合と前記仮想的な動きベクトルの符号とが異符号となる部分を障害物として検出することを特徴とする。
【００１２】
また、本発明は、上記発明において、前記障害物検出工程は、前記第２の仮想領域に含まれる前記動きベクトルと前記仮想的な動きベクトルとを比較し、前記動きベクトルと前記仮想的な動きベクトルとの差が閾値以上となる部分を障害物として検出することを特徴とする。
【００１３】
また、本発明は、上記発明において、前記障害物検出工程は、比較対象となる前記動きベクトルと仮想的な動きベクトルとの前記仮想領域上の位置に応じて前記閾値を調整することを特徴とする。
【００１４】
また、本発明は、上記発明において、カメラによって撮影された画像から車両の走行に影響する障害物を検出する障害物検出装置であって、前記カメラから異なる時点での画像を取得して記憶装置に記憶し、当該記憶装置に記憶された異なる時点での画像に基づいて当該画像の各領域における動きベクトルを算出する動きベクトル算出手段と、前記車両の走行状態から当該車両の走行する空間のモデルを生成し、生成したモデルに基づいて前記画像の各領域に対する仮想的な動きベクトルを算出する仮想動きベクトル算出手段と、前記モデルを複数の仮想領域に分割し、分割した仮想領域に対応する前記動きベクトルおよび仮想的な動きベクトルと当該仮想領域ごとに設定された判断基準とを基にして障害物を検出する障害物検出手段と、を備えたことを特徴とする。
【発明の効果】
【００１５】
本発明によれば、カメラから異なる時点での画像を取得して記憶装置に記憶し、記憶装置に記憶された異なる時点での画像に基づいて当該画像の各領域における動きベクトルを算出し、車両の走行状態から当該車両の走行する空間のモデルを生成し、生成したモデルに基づいて画像の各領域に対する仮想的な動きベクトルを算出し、モデルを複数の仮想領域に分割し、分割した仮想領域に対応する動きベクトルおよび仮想的な動きベクトルと当該仮想領域ごとに設定された判定基準とを基にして障害物を検出するので、走路の状態によらず走行中の車両に影響する障害物を適切に検出することができる。
【００１６】
また、本発明によれば、仮想領域は第１の仮想領域および第２の仮想領域を含み、第１の仮想領域に含まれる動きベクトルと仮想的な動きベクトルとを比較し、動きベクトルと仮想的な動きベクトルとの差が閾値以上かつ、動きベクトルおよび仮想的な動きベクトルとの差分からなるベクトルの符号と仮想的な動きベクトルの符号とが異符号となる部分を障害物として検出するので、走路に侵入する障害物を的確に検出することができる。
【００１７】
また、本発明によれば、第２の仮想領域に含まれる動きベクトルと前記仮想的な動きベクトルとを比較し、動きベクトルと仮想的な動きベクトルとの差が閾値以上となる部分を障害物として検出するので、前方を走行する車両を正確に検出することができる。
【００１８】
また、本発明によれば、比較対象となる動きベクトルと仮想的な動きベクトルとの仮想領域上の位置に応じて閾値を調整するので、ノイズ等の影響による障害物の誤検出を抑制することができる。
【発明を実施するための最良の形態】
【００１９】
以下に添付図面を参照して、この発明に係る障害物検出方法および障害物検出装置の好適な実施の形態を詳細に説明する。
【実施例１】
【００２０】
まず、本実施例１にかかる障害物検出装置の概要および特徴について説明する。図１は、本実施例１にかかる障害物検出装置の概要および特徴を説明するための図である。同図に示すように、本実施例にかかる障害物検出装置は、カメラから異なる時点での画像を取得し、取得した各画像に基づいて画像の各領域にかかる動きベクトル（図１の上段右側を参照）を算出するとともに、車両の走行状態から車両の走行する空間のモデルを生成し、生成したモデルに基づいて仮想的な動きベクトル（図１の上段左側を参照；以下、仮想動きベクトルと表記する）を算出する。
【００２１】
そして、障害物検出装置は、モデルを複数の仮想領域に分割し、分割した仮想領域に対応する動きベクトルおよび仮想動きベクトルと当該仮想領域ごとに設定された判定基準とを基にして障害物を検出する。
【００２２】
図１の下段に示す例では、モデルを第１の仮想領域と第２の仮想領域とに分割しており、障害物検出装置は、第１の仮想領域において、動きベクトルと仮想動きベクトルとの差が閾値以上かつ動きベクトルおよび仮想動きベクトルの差分からなるベクトルの符合と仮想動きベクトルの符号とが異符号となる領域を障害物として検出する。また、障害物検出装置は、第２の仮想領域において、動きベクトルと仮想動きベクトルとの差が閾値以上となる領域を障害物として検出する。
【００２３】
このように、本実施例にかかる障害物検出装置は、モデルを複数の仮想領域に分割し、分割した仮想領域に対応する動きベクトルおよび仮想動きベクトルと当該仮想領域ごとに設定された判定基準とを基にして障害物を検出するので、走路の状態によらず走行中の車両に影響する障害物を適切に検出することができる。例えば、第１の仮想領域において、走路外に移動する物体を障害物として検出しないので、ドライバーに不必要な情報を通知してしまうといった問題を解消することができる。
【００２４】
次に、本実施例１にかかる障害物検出装置の構成について説明する（なお、本実施例１にかかる障害物検出装置は、図示しない車両に搭載されているものとする。）。図２は、本実施例１にかかる障害物検出装置の構成を示す機能ブロック図である。同図に示すように、この障害物検出装置１００は、画像入力部１１０と、画像記憶部１２０と、動きベクトル算出部１３０と、カメラデータ入力部１４０と、車両データ入力部１５０と、走行空間モデル生成部１６０と、走行空間領域判定部１７０と、モデル差分ベクトル算出部１８０と、障害物検出部１９０と、障害物通知部２００とを備えて構成される。
【００２５】
画像入力部１１０は、車載カメラ（図示略）から一定のフレームレートで画像データを取得し、取得した画像データを順次画像記憶部１２０に記憶させる処理部である。画像記憶部１２０は、画像データを記憶する記憶部である。この画像記憶部１２０は、画像内に時間差分による動きベクトルを作成するために必要なだけの画像データを保存するためのバッファを備える。
【００２６】
動きベクトル算出部１３０は、画像記憶部１２０から異なる時点での画像データを取得し（例えば、画像記憶部１２０に最後に記憶された画像データとこの画像データよりも所定時間前に撮影された画像データとを取得し）、取得した画像データを基にして画像データの各領域における動きベクトルを算出する。
【００２７】
この動きベクトルを算出する手法は、従来のどのような手法を用いても構わないが、例えば、特許文献（特開２００５−１００２０４号公報）において開示されている手法などを用いて動きベクトルを算出することができる。動きベクトル算出部１３０は、算出した動きベクトルのデータをモデル差分ベクトル算出部１８０に出力する。
【００２８】
カメラデータ入力部１４０は、車両に設置されたカメラに関する各種データを取得する処理部である。カメラに関する各種データは、カメラから路面までの高さを表すカメラ垂直設定位置、車両の走行する空間を仮定した場合の空間の横幅を示す走行領域幅、カメラからカメラの焦点位置までの距離を示すカメラ焦点距離、カメラの画素ピッチを示すカメラ画素ピッチのデータを含んでいる。カメラに関する各種パラメータは、動的に変更してもよいし、予めユーザが各種パラメータを設定しておいてもよい。カメラデータ入力部１４０は、カメラに関する各種データを走行空間モデル生成部１６０に出力する。
【００２９】
車両データ入力部１５０は、車両の走行状態に関する各種データを取得する処理部である。車両の走行状態に関する各種データは、車両の速度を示す車速データ、ステアリングおよび斜面による車両のヨー、ロール、ピッチを示す車両回転角のデータを含んでいる。車速データは車速パルスなどから得ることができ、車両回転角はステアリングセンサあるいはジャイロスコープなどから得ることができる。車両データ入力部１５０は、車両の走行状態に関する各種データを走行空間モデル生成部１６０に出力する。
【００３０】
走行空間モデル生成部１６０は、カメラに関する各種データおよび車両の走行状態に関する各種データを基にして、仮想動きベクトルを算出する処理部である。以下において、走行空間モデル生成部１６０の行う処理を順に説明する。
【００３１】
まず、走行空間モデル生成部１６０は、カメラに関する各種データおよび車両の走行状態に関する各種データを基にして、走行空間モデルを生成する。走行空間モデルとは、仮想的な車両の走行環境であり、車両が時間局所的にこれから走行するであろう空間をカメラの撮影範囲を含むようにして示したモデルである。これから走行するであろうとは、あくまでも車両の舵角（車両回転角）や車速（車速データ）によって予測されるものであり、路上の白線や車線幅に本質的に依存しないものである。したがって、環境の変化に強い走行空間モデルを生成することができる。
【００３２】
図３は、走行空間モデルの一例を示す図である。図３に示す例では、車載カメラを車両前方中央に配置し、撮影範囲を矩形とした場合の、前方直進時の走行空間モデルを示している。図３に示すｈは、カメラ垂直設置位置を示し、Ｌは、走行領域幅を示し、Ｈは、走行領域高さを示す。なお、本実施例１では、カメラ垂直設置位置ｈを負数として説明する。これは、カメラの設置された位置を原点とし、この原点から鉛直上向きを正とするためである。また、走行領域幅Ｌ、走行領域高さＨは、上述したように、車両の車幅および車高そのものではなく、多少のマージンをもって定義されているものとする。
【００３３】
図３の右側は、本実施例１にかかる車載カメラから見たと仮定した走行空間モデルを示している。同図に示すように、車載カメラから見た空間モデルは、上面部、下面部、側面部に分類することができる。
【００３４】
続いて、走行空間モデル生成部１６０は、走行空間モデルを利用して、動きベクトル算出部１３０によって算出される動きベクトルに対応する仮想動きベクトルを全て算出する。ここでは、説明の便宜上、動きベクトルに対応する画像上の座標を（ｘ，ｙ）として仮想動きベクトルの算出方法を説明する。その他の座標に関する仮想動きベクトルの算出方法は座標が変更されるだけなので説明を省略する。
【００３５】
走行空間モデル生成部１６０は、画像座標系の座標（ｘ，ｙ）を、カメラ設置位置を原点としたモデル空間座標系の座標（ｕ，ｖ）に変換する。図４は、画像座標系の座標（ｘ，ｙ）をモデル空間座標系の座標（ｕ，ｖ）に変換する処理を説明するための説明図である。なお、図４では、画像の中心に消失点があるとした場合の座標変換を示している。
【００３６】
画像座標系に示すWidthは、画像の横幅に含まれる画素数（以下、画像横画素数と表記する）を示し、Heightは、画像の縦幅に含まれる画素数（以下、画像縦画素数）を示している。画像座標系の座標（ｘ，ｙ）をモデル空間座標系の座標（ｕ，ｖ）に変換する具体的な式は、
【数１】
2008282106.tif 000003
【数２】
2008282106.tif 000004
によって表すことができる。なお、式（１）および式（２）に含まれるｃは、カメラの画素ピッチを示す。
【００３７】
続いて、走行空間モデル生成部１６０は、走行空間モデルのどの領域（上面部、下面部、側面部；図３参照）にモデル空間座標系の座標（ｕ，ｖ）が含まれるかを判定する（領域判定を行う）。図５は、走行空間モデル生成部１６０が行う領域判定を説明するための説明図である。
【００３８】
走行空間モデル生成部１６０は、モデル空間座標系の座標（ｕ，ｖ）、カメラ垂直設置位置ｈ、走行領域幅Ｌ、走行領域高さＨの関係に基づいて、座標（ｕ，ｖ）の位置する領域を判定する。具体的に、走行空間モデル生成部１６０は、座標（ｕ，ｖ）、カメラ垂直設置位置ｈ、走行領域幅Ｌ、走行領域高さＨの関係の関係が
【数３】
2008282106.tif 000005
を満たす場合に、座標（ｕ，ｖ）が下面部に位置すると判定する。
【００３９】
一方、走行空間モデル生成部１６０は、座標（ｕ，ｖ）、カメラ垂直設置位置ｈ、走行領域幅Ｌ、走行領域高さＨの関係の関係が
【数４】
2008282106.tif 000006
を満たす場合に、座標（ｕ，ｖ）が上面部に位置すると判定する。なお、走行空間モデル生成部１６０は、座標（ｕ，ｖ）、カメラ垂直設置位置ｈ、走行領域幅Ｌ、走行領域高さＨが式（１）および式（２）のいずれの式にも該当しない場合には、座標（ｕ，ｖ）が側面部に位置すると判定する。
【００４０】
走行空間モデル生成部１６０は、領域判定による判定結果に基づいて、それぞれの領域に位置する座標（ｕ，ｖ）の仮想動きベクトルを算出する。以下において、座標（ｕ，ｖ）が下面部に位置する場合の仮想動きベクトル、上面部に位置する場合の仮想動きベクトル、側面部に位置する場合の仮想動きベクトルの算出方法について順に説明する。
【００４１】
（座標（ｕ，ｖ）が下面部に位置する場合）
座標（ｕ，ｖ）が下面部に位置する場合の仮想動きベクトル（ｄｕ，ｄｖ）の算出方法について説明する。図６は、座標（ｕ，ｖ）が下面部に位置している場合の仮想動きベクトルの算出手法を補足するための図である。図６に示すＦはカメラの焦点位置を示し、ｆはカメラから焦点までの焦点距離を示し、ｚは焦点Ｆから物体（障害物の候補となる物体）の位置Ａまでの進行方向の距離（すなわち、焦点位置Ｆから位置Ｂまでの）を示す。
【００４２】
また、Ｖは車速を示し、ｄｚは微小時間（カメラが画像を撮影するサンプルレートに対応する時間）ｄｔに移動する物体の距離を示す（図６において車両は左から右に移動し、物体は右から左に動くものとする）。また、物体Ａがｄｔ時間後に移動する位置をＡ’とし、位置Ａ’と焦点位置Ｆと含んだ直線が鉛直方向の軸（ｖ軸）と交わる位置をＣとした定義した場合に、ｖと位置Ｃとの差をｄｖとする。
【００４３】
図６に示すように、三角形の相似の関係から、
【数５】
2008282106.tif 000007
となる関係式（５）を導くことができ、式（５）より、
【数６】
2008282106.tif 000008
【数７】
2008282106.tif 000009
を導くことができる。
【００４４】
そして、式（６）をｚで微分することによって、
【数８】
2008282106.tif 000010
を導くことができ、
式（８）から座標（ｕ，ｖ）のｖ軸成分の仮想動きベクトルｄｖを
【数９】
2008282106.tif 000011
によって表すことができる。
【００４５】
一方、座標（ｕ，ｖ）におけるｕおよびｖの関係式は、
【数１０】
2008282106.tif 000012
によって表すことができ、式（９）および式（１０）から座標（ｕ，ｖ）のｕ軸成分の仮想動きベクトルｄｕを
【数１１】
2008282106.tif 000013
によって表すことができる。
【００４６】
（座標（ｕ，ｖ）が上面部に位置する場合）
続いて、座標（ｕ，ｖ）が上面部に位置する場合の仮想動きベクトル（ｄｕ，ｄｖ）の算出方法について説明する。座標（ｕ，ｖ）が上面部に位置する場合には、上述した式（５）〜式（１１）に含まれるカメラ垂直設置位置ｈを走行領域高さＨに変えることによって求めることができる。具体的には、座標（ｕ，ｖ）が上面部に位置する場合の仮想動きベクトルを（ｄｕ，ｄｖ）を
【数１２】
2008282106.tif 000014
【数１３】
2008282106.tif 000015
によって表すことができる。
【００４７】
（座標（ｕ，ｖ）が側面部に位置する場合）
続いて、座標（ｕ，ｖ）が側面部に位置する場合の仮想動きベクトル（ｄｕ，ｄｖ）の算出方法について説明する。図７は、座標（ｕ，ｖ）が側面部に位置している場合の仮想動きベクトルの算出手法を補足するための図である。図７に示すＦはカメラの焦点位置を示し、ｆはカメラから焦点までの焦点距離を示し、ｚは焦点Ｆから物体（障害物の候補となる物体）Ｄの水平方向成分Ｅまでの距離を示す。
【００４８】
また、Ｖは車速を示し、ｄｚは微小時間（カメラが画像を撮影するサンプルレートに対応する時間）ｄｔに移動する物体の距離を示す（図７において車両は左から右に移動し、物体は右から左に動くものとする）。また、物体Ｄがｄｔ時間後に移動する位置をＤ’とし、位置Ｄ’と焦点位置Ｆと含んだ直線がｕ軸と交わる位置をＧとした定義した場合に、ｖと位置Ｇとの差をｄｖとすると、座標（ｕ，ｖ）が側面に位置する場合の仮想動きベクトル（ｄｕ，ｄｖ）は、図７に示す関係から
【数１４】
2008282106.tif 000016
【数１５】
2008282106.tif 000017
によって表すことができる。
【００４９】
図２の説明に戻ると、走行空間モデル生成部１６０は、各座標に対応する仮想動きベクトルを算出した後に、座標と仮想動きベクトルとを対応付けたデータをモデル差分ベクトル算出部１８０に出力する。図８は、走行空間モデル生成部１６０によって算出される仮想動きベクトルの一例を示す図である。走行空間モデル生成部１６０で結果として算出される仮想動きベクトルは、定義した走行空間の境界上に静止物体が存在した場合における画像内の動きを意味する。そのため、例えば、車速が上がると、画像間の動き量も大きくなり、仮想動きベクトルの値も大きくなる。また、図８に示すように、車両に近づくにつれて仮想動きベクトルの値が大きくなる。
【００５０】
走行空間領域判定部１７０は、走行空間モデルを複数の仮想領域（側面領域、下面領域）に分割し、走行空間モデル上の座標（ｘ，ｙ）がどの仮想領域に属するかを判定する処理部である。管理者は、走行空間モデルの各仮想領域の座標を予め設定しておく。
【００５１】
例えば、管理者は、ｘ座標（Ａ〜Ｂ）、ｙ座標（Ｃ〜Ｄ）を側面領域に設定し、ｘ座標（Ｅ〜Ｆ）、ｙ座標（Ｇ〜Ｈ）を下面領域に設定する（以下、設定された情報を、仮想領域座標データと表記する）。走行空間領域判定部１７０は、仮想領域座標データと座標とを比較することによって、各座標がどの仮想領域に属するかを判定する。走行空間領域判定部１７０は、判定結果をモデル差分ベクトル算出部１８０に出力する。
【００５２】
モデル差分ベクトル算出部１８０は、仮想領域（側面領域、下面領域）ごとに動きベクトルと仮想動きベクトルとの差分を算出し、算出した結果を障害物検出部１９０に出力する処理部である。図９は、モデル差分ベクトル算出部１８０の処理を説明するための図である。
【００５３】
図９の下段に示す図は、画像内のある縦座標ｙにおける横座標ｘとｘ方向の動きベクトルＶxとの関係を表している。ｘ方向の動きベクトルは、動きベクトル算出部１３０にて算出された動きベクトルと、走行空間モデル生成部１６０にて生成した仮想動きベクトルとがある。モデル差分ベクトル算出部１８０は、この２種類のベクトルを走行空間領域判定部１７０に判定された領域ごとに異なる判断基準を用いて比較することで、検出対象となる部分を検出する。
【００５４】
側面領域に対して、モデル差分ベクトル算出部１８０は、動きベクトルと仮想動きベクトルとの差分値（以下、差分値と略記する）と、動きベクトルおよび仮想動きベクトルの差分からなるベクトル（以下、差分ベクトルと表記する）の符号と仮想動きベクトルの符号との同異によって、検出対象を検出する。モデル差分ベクトル算出部１８０は、側面部において、差分値が閾値以上かつ、差分ベクトルの符号と仮想動きベクトルの符号とが異なる部分を検出対象とする（例えば、図９の上段に示す物体Ａを検出対象とする）。物体Ａは、走路側に進入してきている物体である。
【００５５】
なお、側面領域において、差分値が閾値以上となる場合でも、差分ベクトルと仮想動きベクトルとの符号が等しい場合には、自車両の側面を経過していくような物体、および自車両から離れていくような物体であるため、かかる物体を検出対象から除外する（例えば、図９の上段に示す物体Ｃを検出対象から除外する）。
【００５６】
側面領域において、差分値が閾値以上となり、動きベクトルと仮想動きベクトルとの符号が同一である場合（例えば、物体Ａが図９の左下方向に移動する場合）でも、差分ベクトルと仮想動きベクトルとの符号が異なる場合には検出対象に含める。例えば、図９の左にもレーンがあり、自車両が併走している左レーンの車両を追い抜こうとするとこの状況が発生する。
【００５７】
例えば、動きベクトルＶx＝−１０、仮想動きベクトルＶx＝−２０とすると、差分ベクトル（動きベクトルＶx−仮想動きベクトルＶx）は、＋１０となり、差分ベクトルの符号と仮想動きベクトルの符号とが異なり、検出対象となる。
【００５８】
一方、下面領域に対して、モデル差分ベクトル算出部１８０は、差分値のみによって検出対象を検出する。モデル差分ベクトル算出部１８０は、下面領域において、差分値が閾値以上となる部分を検出対象とする（図９の上段に示す物体Ｂを検出対象とする）。物体Ｂは、路面ではない先行車などの前方障害物に対応する。
【００５９】
なお、モデル差分ベクトル算出部１８０は、図９の下段に示す４のように十分短い区間で差分が大きい部分はノイズとして検出対象から除外する。また、モデル差分ベクトル算出部１８０は、画像中心からの距離に比例させて、差分値の比較対象となる閾値が大きくなるように調整してもよい（動きベクトルと仮想動きベクトルとを比較する位置に応じて閾値を調整する）。
【００６０】
モデル差分ベクトル算出部１８０は、各水平ラインに対して検出対象となる部分を検出していき、検出候補となる区間を特定していく。本実施例１では、簡易的に水平方向の動きベクトル、仮想動きベクトルに着目すればよい。これは、例えば、図９の上段の物体Ｂのように、前方に障害物が存在する際にも、接近することで画像としては拡大されるため、その結果水平方向の動きが生じることになるためである。モデル差分ベクトル算出部１８０は、障害物の検出候補の分布のデータ（以下、検出候補分布データ）を障害物検出部１９０に出力する。
【００６１】
障害物検出部１９０は、モデル差分ベクトル算出部１８０から検出候補分布データを取得し、障害物の領域を特定する処理部である。障害物検出部１９０は、特定した障害物の領域のデータを障害物通知部２００に出力する。障害物検出部１９０が障害物の領域特定の精度を高める際には、前後フレームにおける検出候補領域からの物体追跡技術や、原画像内における水平・垂直エッジなどの特徴量を判断基準とした物体同定技術など、公知の技術を併用してもよい。
【００６２】
障害物通知部２００は、障害物検出部１９０から障害物の領域のデータを取得し、利用者が確認できるモニタ（車内モニタ；図示略）内の該当領域に矩形描画を行うことで障害物を通知する処理部である。図１０は、モニタに出力される障害物検出画像の一例を示す図である。
【００６３】
次に、本実施例１にかかる障害物検出装置１００の処理手順について説明する。図１１は、本実施例１にかかる障害物検出装置１００の処理手順を示すフローチャートである。同図に示すように、画像入力部１１０が画像データを取得し（ステップＳ１０１）、画像データを画像記憶部１２０に記憶し（ステップＳ１０２）、動きベクトル算出部１３０が異なる時点での画像データを画像記憶部１２０から取得して各領域の動きベクトルを算出する（ステップＳ１０３）。
【００６４】
そして、カメラデータ入力部１４０は、カメラに関する各種データを取得し（ステップＳ１０４）、車両データ入力部１５０が車両の走行状態に関する各種データを取得し（ステップＳ１０５）、走行空間モデル生成部１６０がカメラに関する各種データおよび車両の走行状態に関する各種データを基にして走行空間モデルを生成し（ステップＳ１０６）、動きベクトルの領域に対応する座標の仮想動きベクトルを算出する（ステップＳ１０７）。
【００６５】
続いて、走行空間領域判定部１７０が走行空間モデルを複数の領域に分割し（ステップＳ１０８）、モデル差分ベクトル算出部１８０および障害物検出部１９０が領域ごとの判断基準に基づいて障害物を検出し（ステップＳ１０９）、障害物通知部１１０が障害物のデータをモニタに出力する（ステップＳ１１０）。
【００６６】
このように、モデル差分ベクトル算出部１８０および障害物検出部１９０が、領域ごとの判断基準に基づいて障害物を検出するので、不要な情報を排除し、車両の走行に影響する障害物の情報のみをドライバーに通知することができる。
【００６７】
上述してきたように、本実施例１にかかる障害物検出装置１００は、カメラから異なる時点での画像を取得し、取得した各画像に基づいて画像の各領域にかかる動きベクトルを算出するとともに、車両の走行状態から車両の走行する空間のモデルを生成し、生成したモデルに基づいて仮想的な動きベクトルを算出する。そして、障害物検出装置１００は、モデルを複数の仮想領域に分割し、分割した仮想領域に対応する動きベクトルおよび仮想動きベクトルと当該仮想領域ごとに設定された判定基準とを基にして障害物を検出するので、走路の状態によらず走行中の車両に影響する障害物を適切に検出することができる。
【００６８】
また、本実施例１にかかる障害物検出装置１００は、衝突することがない遠景や対向車両を検出対象から外しつつ、走路上の障害物や走路に侵入してくると思われる障害物のみを検出することが可能となる。前方の障害物検知においては、走路外から走路内に侵入してくるような動きをする物体を障害物として検出することがより重要である。
【００６９】
通常、ドライバーは、前方の走路上を注視しながら運転しているため、既に走路上に存在する先行車両などの前方障害物にはそれなりの注意を払っている。しかし、歩道から横断するような歩行者に対しては、走路外からの侵入になるため注視の度合いは低くなる。このような動きに対して、本実施例１にかかる障害物検出装置１００は、水平方向の動きベクトルと仮想動きベクトルとに顕著な違いが現れるという性質を利用することによって、侵入障害物をより強固に検知可能としている。
【実施例２】
【００７０】
さて、これまで本発明の実施例について説明したが、本発明は上述した実施例１以外にも、種々の異なる形態にて実施されてもよいものである。そこで、以下では実施例２として本発明に含まれる他の実施例を説明する。
【００７１】
（１）車両との連携
上記の実施例１では、障害物検出装置１００は、障害物を検出した場合に、モニタに障害物の情報を表示する例を示したが、これに限定されるものではなく、車両と連携して各種処理を実行することができる。例えば、障害物検出装置１００が車両の前方で障害物を検出した場合には、車速を制御する制御部に減速命令を出力し、車両の安全を確保することができる。また、障害物検出装置１００が前方で障害物を検出している時点で、運転者が急ブレーキをかけた場合には、車両を制御する制御部と協働して、障害物を回避するようにハンドル制御を行っても良い。
【００７２】
（２）車両回転角を反映した仮想動きベクトルの算出
上記の実施例１では、車両がまっすぐに走行している場合の仮想動きベクトル算出方法について説明したが、車両回転角に応じて、仮想動きベクトルの値は補正される。ここでは一例として、ヨー車両回転角を反映させた仮想動きベクトルの算出方法について説明する。図１２は、仮想動きベクトルの補正方法を補足説明するための説明図である。
【００７３】
座標（ｕ，ｖ）は、モデル空間座標系における１座標だが、ヨー車両回転角においてはｖに依存せず、常に補正値は０である。すなわち、実施例１で求めた仮想動きベクトルのｖ成分ｄｖの値そのものとなる。一方、ｕは、焦点距離ｆとなる焦点Ｆと、座標軸との交点において、角θをなしている。
【００７４】
このとき、ヨー車両回転角がｄθであった場合、それは単位時間当たりの回転各θyと微小時間ｄｔによって表せるため、補正量ｄｕを算出することができる。以下に、補正量ｄｕを導く式を示す。
【数１６】
2008282106.tif 000018
より
【数１７】
2008282106.tif 000019
ここで
【数１８】
2008282106.tif 000020
であるため、補正量ｄｕは
【数１９】
2008282106.tif 000021
となる。補正後のｕ成分の仮想動きベクトルは、実施例１で求めた仮想ベクトルのｕ成分ｄｕに補正量ｄｕを加算したものとなる。なお、他の車両回転角（ロール車両回転角、ピッチ車両回転角）も同様に算出することができる。
【００７５】
図１３は、ヨー車両回転角度による仮想動きベクトルの違いを示す図である。上段は、車両が右回転している場合の仮想動きベクトルを示し、下段は、車両が左回転している場合の仮想動きベクトルを示している。
【００７６】
（４）システムの構成など
本実施例において説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部あるいは一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
【００７７】
また、図２に示した障害物検出装置１００の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。さらに、各装置にて行われる各処理機能は、その全部または任意の一部がＣＰＵおよび当該ＣＰＵにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
【００７８】
図１４は、図２に示した障害物検出装置１００を構成するコンピュータのハードウェア構成を示す図である。このコンピュータは、ユーザからのデータの入力を受け付ける入力装置３０、モニタ３１、ＲＡＭ（Random  Access  Memory）３２、ＲＯＭ（Read  Only  Memory）３３、各種プログラムを記録した記録媒体からプログラムを読み取る媒体読取装置３４、画像を撮影するカメラ３５、車両の走行状態を検出する走行状態検出装置（ステアリングセンサ、車速パルス、ジャイロスコープなどに対応）３６、ＣＰＵ（Central  Processing  Unit）３７、および、ＨＤＤ（Hard  Disk  Drive）３８をバス３９で接続して構成される。
【００７９】
そして、ＨＤＤ３８には、上述した障害物検出装置１００の機能と同様の機能を発揮する障害物検出プログラム３８ｂが記憶されている。そして、ＣＰＵ３７が、障害物検出プログラム３８ｂをＨＤＤ３８から読み出して実行することにより、上述した障害物検出装置１００の機能部の機能を実現する障害物検出プロセス３７ａが起動される。この障害物検出プロセス３７ａは、図２に示した画像入力部１１０、動きベクトル算出部１３０、カメラデータ入力部１４０、車両データ入力部１５０、走行空間モデル生成部１６０、走行空間領域判定部１７０、モデル差分ベクトル算出部１８０、障害物検出部１９０、障害物通知部１９０に対応する。
【００８０】
また、ＨＤＤ３８には、上述した障害物検出装置１００において説明した各機能部に利用される各種データ３８ａが記憶される。ＣＰＵ３７は、各種データ３８ａをＨＤＤ３８に記憶するとともに、各種データ３８ａをＨＤＤ３８から読み出してＲＡＭ３２に格納し、ＲＡＭ３２に格納された各種データ３２ａを利用して障害物検出処理を実行する。
【００８１】
ところで、障害物検出プログラム３８ｂは、必ずしも最初からＨＤＤ３８に記憶させておく必要はない。たとえば、コンピュータに挿入されるフレキシブルディスク（ＦＤ）、ＣＤ−ＲＯＭ、ＤＶＤディスク、光磁気ディスク、ＩＣカードなどの「可搬用の物理媒体」、または、コンピュータの内外に備えられるハードディスクドライブ（ＨＤＤ）などの「固定用の物理媒体」、さらには、公衆回線、インターネット、ＬＡＮ、ＷＡＮなどを介してコンピュータに接続される「他のコンピュータ（またはサーバ）」などに障害物検出プログラム３８ｂを記憶しておき、コンピュータがこれらから障害物検出プログラム３８ｂを読み出して実行するようにしてもよい。
【００８２】
（付記１）カメラによって撮影された画像から車両の走行に影響する障害物を検出する障害物検出装置の障害物検出方法であって、
前記カメラから異なる時点での画像を取得して記憶装置に記憶し、当該記憶装置に記憶された異なる時点での画像に基づいて当該画像の各領域における動きベクトルを算出する動きベクトル算出工程と、
前記車両の走行状態から当該車両の走行する空間のモデルを生成し、生成したモデルに基づいて前記画像の各領域に対する仮想的な動きベクトルを算出する仮想動きベクトル算出工程と、
前記モデルを複数の仮想領域に分割し、分割した仮想領域に対応する前記動きベクトルおよび仮想的な動きベクトルと当該仮想領域ごとに設定された判定基準とを基にして障害物を検出する障害物検出工程と、
を含んだことを特徴とする障害物検出方法。
【００８３】
（付記２）前記仮想領域は第１の仮想領域および第２の仮想領域を含み、前記障害物検出工程は、前記第１の仮想領域に含まれる前記動きベクトルと前記仮想的な動きベクトルとを比較し、前記動きベクトルと前記仮想的な動きベクトルとの差が閾値以上かつ、前記動きベクトルおよび前記仮想的な動きベクトルの差分からなるベクトルの符合と前記仮想的な動きベクトルの符号とが異符号となる部分を障害物として検出することを特徴とする付記１に記載の障害物検出方法。
【００８４】
（付記３）前記障害物検出工程は、前記第２の仮想領域に含まれる前記動きベクトルと前記仮想的な動きベクトルとを比較し、前記動きベクトルと前記仮想的な動きベクトルとの差が閾値以上となる部分を障害物として検出することを特徴とする付記２に記載の障害物検出方法。
【００８５】
（付記４）前記障害物検出工程は、比較対象となる前記動きベクトルと仮想的な動きベクトルとの前記仮想領域上の位置に応じて前記閾値を調整することを特徴とする付記１、２または３に記載の障害物検出方法。
【００８６】
（付記５）カメラによって撮影された画像から車両の走行に影響する障害物を検出する障害物検出装置であって、
前記カメラから異なる時点での画像を取得して記憶装置に記憶し、当該記憶装置に記憶された異なる時点での画像に基づいて当該画像の各領域における動きベクトルを算出する動きベクトル算出手段と、
前記車両の走行状態から当該車両の走行する空間のモデルを生成し、生成したモデルに基づいて前記画像の各領域に対する仮想的な動きベクトルを算出する仮想動きベクトル算出手段と、
前記モデルを複数の仮想領域に分割し、分割した仮想領域に対応する前記動きベクトルおよび仮想的な動きベクトルと当該仮想領域ごとに設定された判断基準とを基にして障害物を検出する障害物検出手段と、
を備えたことを特徴とする障害物検出装置。
【００８７】
（付記６）前記仮想領域は第１の仮想領域および第２の仮想領域を含み、前記障害物検出手段は、前記第１の仮想領域に含まれる前記動きベクトルと前記仮想的な動きベクトルとを比較し、前記動きベクトルと前記仮想的な動きベクトルとの差が閾値以上かつ、前記動きベクトルおよび前記仮想的な動きベクトルの差分からなるベクトルの符合と前記仮想的な動きベクトルの符号とが異符号となる部分を障害物として検出することを特徴とする付記５に記載の障害物検出装置。
【００８８】
（付記７）前記障害物検出手段は、前記第２の仮想領域に含まれる前記動きベクトルと前記仮想的な動きベクトルとを比較し、前記動きベクトルと前記仮想的な動きベクトルとの差が閾値以上となる部分を障害物として検出することを特徴とする付記６に記載の障害物検出装置。
【００８９】
（付記８）前記障害物検出手段は、比較対象となる前記動きベクトルと仮想的な動きベクトルとの前記仮想領域上の位置に応じて前記閾値を調整することを特徴とする付記５、６または７に記載の障害物検出装置。
【００９０】
（付記９）コンピュータに
カメラから異なる時点での画像を取得して記憶装置に記憶し、当該記憶装置に記憶された異なる時点での画像に基づいて当該画像の各領域における動きベクトルを算出する動きベクトル算出手順と、
車両の走行状態から当該車両の走行する空間のモデルを生成し、生成したモデルに基づいて前記画像の各領域に対する仮想的な動きベクトルを算出する仮想動きベクトル算出手順と、
前記モデルを複数の仮想領域に分割し、分割した仮想領域に対応する前記動きベクトルおよび仮想的な動きベクトルと当該仮想領域ごとに設定された判断基準とを基にして障害物を検出する障害物検出手順と、
を実行させるための障害物検出プログラム。
【００９１】
（付記１０）前記仮想領域は第１の仮想領域および第２の仮想領域を含み、前記障害物検出手順は、前記第１の仮想領域に含まれる前記動きベクトルと前記仮想的な動きベクトルとを比較し、前記動きベクトルと前記仮想的な動きベクトルとの差が閾値以上かつ、前記動きベクトルおよび前記仮想的な動きベクトルの差分からなるベクトルの符合と前記仮想的な動きベクトルの符号とが異符号となる部分を障害物として検出することを特徴とする付記９に記載の障害物検出プログラム。
【００９２】
（付記１１）前記障害物検出手順は、前記第２の仮想領域に含まれる前記動きベクトルと前記仮想的な動きベクトルとを比較し、前記動きベクトルと前記仮想的な動きベクトルとの差が閾値以上となる部分を障害物として検出することを特徴とする付記１０に記載の障害物検出プログラム。
【００９３】
（付記１２）前記障害物検出手順は、比較対象となる前記動きベクトルと仮想的な動きベクトルとの前記仮想領域上の位置に応じて前記閾値を調整することを特徴とする付記９、１０または１１に記載の障害物検出プログラム。
【産業上の利用可能性】
【００９４】
以上のように、本発明にかかる障害物検出方法および障害物検出装置は、走路上の障害物を検出する障害物検出装置等に有用であり、特に、ドライバーにとって不要な情報通知をなくした障害物通知を実行する必要がある場合に適している。
【図面の簡単な説明】
【００９５】
【図１】本実施例１にかかる障害物検出装置の概要および特徴を説明するための図である。
【図２】本実施例１にかかる障害物検出装置の構成を示す機能ブロック図である。
【図３】走行空間モデルの一例を示す図である。
【図４】画像座標系の座標（ｘ，ｙ）をモデル空間座標系の座標（ｕ，ｖ）に変換する処理を説明するための説明図である。
【図５】走行空間モデル生成部が行う領域判定を説明するための説明図である。
【図６】座標（ｕ，ｖ）が下面部に位置している場合の仮想動きベクトルの算出手法を補足するための図である。
【図７】座標（ｕ，ｖ）が側面部に位置している場合の仮想動きベクトルの算出手法を補足するための図である。
【図８】走行空間モデル生成部によって算出される仮想動きベクトルの一例を示す図である。
【図９】モデル差分ベクトル算出部の処理を説明するための図である。
【図１０】モニタに出力される障害物検出画像の一例を示す図である。
【図１１】本実施例１にかかる障害物検出装置の処理手順を示すフローチャートである。
【図１２】仮想動きベクトルの補正方法を補足説明するための説明図である。
【図１３】ヨー車両回転角度による仮想動きベクトルの違いを示す図である。
【図１４】図２に示した障害物検出装置を構成するコンピュータのハードウェア構成を示す図である。
【符号の説明】
【００９６】
３０    入力装置
３１    モニタ
３２    ＲＡＭ
３２ａ，３８ａ  各種データ
３３    ＲＯＭ
３４    媒体読取装置
３５    カメラ
３６    走行状態検出装置
３７    ＣＰＵ
３７ａ  障害物検出プロセス
３８    ＨＤＤ
３８ｂ  障害物検出プログラム
３９    バス
１００    障害物検出装置
１１０    画像入力部
１２０    画像記憶部
１３０    動きベクトル算出部
１４０    カメラデータ入力部
１５０    車両データ入力部
１６０    走行空間モデル生成部
１７０    走行空間領域判定部
１８０    モデル差分ベクトル算出部
１９０    障害物検出部
２００    障害物通知部
【図１】
2008282106.tif 000022
【図２】
2008282106.tif 000023
【図３】
2008282106.tif 000024
【図４】
2008282106.tif 000025
【図５】
2008282106.tif 000026
【図６】
2008282106.tif 000027
【図７】
2008282106.tif 000028
【図８】
2008282106.tif 000029
【図９】
2008282106.tif 000030
【図１０】
2008282106.tif 000031
【図１１】
2008282106.tif 000032
【図１２】
2008282106.tif 000033
【図１３】
2008282106.tif 000034
【図１４】
2008282106.tif 000035