(57)【特許請求の範囲】
【請求項１】
車両に搭載される撮像手段と、
前記撮像手段により撮像された画像の情報に基づいて、前記画像中の物体に対応する画素の移動情報を算出する移動情報算出手段と、
前記移動情報に基づいて、前記撮像された物体の属性を判定し、判定結果を出力する判定手段と、を備え、
前記判定手段は、前記移動情報算出手段により算出された前記移動情報に基づいて、前記移動情報の共通する画素が縦方向に連続する立体特徴領域を抽出し、
前記車両の速度に基づいて予め取得された、前記移動情報算出手段が立体に対応する画素の移動情報を算出できない立体観測不能領域を参照し、前記立体観測不能領域内に前記抽出された立体特徴領域が含まれる場合、当該立体特徴領域に対応する物体は平面体であると判定する車両用画像処理装置。
【請求項２】
請求項１に記載の車両用画像処理装置において、
前記判定手段は、前記平面体であると判定された２以上の物体の外延の傾きをそれぞれ算出し、前記算出された物体の傾きが共通する場合、前記物体は共通の線状平面体であると判定する車両用画像処理装置。
【請求項３】
請求項１又は２に記載の車両用画像処理装置において、
前記判定手段は、前記平面体であると判定された２以上の物体について、前記物体の前記立体特徴領域の端部に位置する基点画素を基準とし、前記基点画素の前記移動情報と共通する移動情報を有する画素の数を縦方向及び横方向にカウントし、前記横方向に隣接する画素の数を前記縦方向に隣接する画素の数で除した前記物体の傾きをそれぞれ算出し、前記算出された物体の傾きが共通する場合、前記各立体特徴領域が属する物体は共通の線状平面体であると判定する車両用画像処理装置。
【請求項４】
請求項１に記載の車両用画像処理装置において、
前記判定手段は、前記平面体であると判定された２以上の物体に対応する立体特徴領域の端部に位置する基点画素の移動情報を算出し、前記算出された移動情報が共通する場合、前記各立体特徴領域が属する物体は共通の線状平面体であると判定する車両用画像処理装置。
【請求項５】
前記請求項４に記載の車両用画像処理装置において、
前記判定手段は、前記平面体であると判定された２以上の物体について、前記物体の立体特徴領域の端部に位置する一の基点画素の移動情報を算出し、前記一の基点画素の移動情報と共通する移動情報を有する画素の数を縦方向及び横方向にカウントし、前記横方向に隣接する画素の数を前記縦方向に隣接する画素の数で除した傾きを算出し、前記一の基点画素を通り、前記傾きの直線近傍にある他の基点画素の移動情報を算出し、前記一の基点画素と前記他の基点画素の移動情報が共通する場合、前記各基点画素を含む立体特徴領域が属する物体は共通の線状平面体であると判定する車両用画像処理装置。
【請求項６】
前記請求項１〜５の何れかに記載の車両用画像処理装置において、
前記判定手段は、前記平面体であると判定された物体以外の物体であって、かつ、前記立体特徴領域に対応する物体は立体であると判定する車両用画像処理装置。
【請求項７】
前記請求項１〜６の何れかに記載の車両用画像処理装置において、
前記判定手段は、前記車両の速度に基づいて、予め取得された、前記立体に対応する立体特徴領域の移動速度が所定値以上となる立体判定領域を参照し、前記立体判定領域内に前記移動速度が前記所定値未満である画素が含まれる場合、当該画素に対応する物体は平面体であると判定する車両用画像処理装置。
【請求項８】
前記請求項１〜７の何れかに記載の車両用画像処理装置において、
前記移動情報算出手段は、前記撮像手段により所定周期で撮像された物体の各画像の情報に基づいて、前記物体に対応する特徴部を抽出し、前記抽出された特徴部の位置に対応する画素のカウント値をカウントアップし、前記カウント値の傾きに基づいて、前記特徴部に対応する画素の移動情報を算出する車両用画像処理装置。
【請求項９】
車両に搭載された撮像手段により取得された画像中の物体に対応する画素の移動情報を算出し、
前記算出された移動情報に基づいて、前記移動情報の共通する前記画素が縦方向に連続する立体特徴領域を抽出し、
前記車両の速度に基づいて予め取得された、立体に対応する画素の移動情報を算出できない立体観測不能領域を参照し、前記立体観測不能領域内に前記抽出された立体特徴領域が含まれる場合には、当該立体特徴領域に対応する前記撮像された物体の属性が平面体であると判定し、
判定結果を出力する、車両用画像処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、車両周囲に存在する物体の属性を判定する車両用画像処理装置及び車両用画像処理方法に関する。
【背景技術】
【０００２】
ステレオカメラの撮像画像から得た撮像対象までの距離を示す距離画像を、俯瞰座標系へ変換し、俯瞰座標系で距離情報が存在しない領域のパターンについてパターンマッチングを行い、立体物か平面物かの判定を行う立体認識装置が知られている（特許文献１参照）。
【０００３】
【特許文献１】特開２００５−３４６３８１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、ステレオカメラの撮像画像の処理においてミスマッチングが発生した場合など、誤った距離情報を取得した場合、俯瞰座標系において、平面物の距離情報が存在しない領域のパターンが、立体物の距離情報が存在しないパターンと近似してしまうため、平面物を立体物と誤検出する可能性があるという問題があった。
【０００５】
本願発明が解決しようとする課題は、平面物を立体物として誤検出することを低減させる車両用画像処理装置及び車両用画像処理方法を提供することである。
【課題を解決するための手段】
【０００６】
本発明は、車両の速度に基づいて予め取得された、立体に対応する画素の移動情報が算出できない立体観測不能領域を参照し、この立体観測不能領域内に、移動情報の共通する画素が縦方向に連続する立体特徴領域が含まれる場合、その立体特徴領域に対応する物体は平面体であると判定することにより、上記課題を解決する。
【発明の効果】
【０００７】
本発明によれば、撮像された画像における画素の移動情報に基づいて導かれた立体特徴領域と立体観測不能領域との位置関係に基づいて、立体と判定できない物体を平面体と判定するので、平面物を立体物と誤検出することを低減することができる。
【発明を実施するための最良の形態】
【０００８】
本実施形態に係る画像処理装置は、車両に搭載され、車両周囲に存在する物体が立体であるか若しくは平面体であるか、又は他の線状平面体と共通であるか、その他の物体の属性を判定する装置である。
【０００９】
図１は、画像処理装置１００を含む車載装置１０００のブロック構成の一例を示す図である。図１に示すように、本実施形態の車載装置１０００は、画像処理装置１００と、この画像処理装置１００に車両情報を提供する車両コントローラ２００と、その車両情報を検出する各種センサ２１０と、画像処理装置１００の判定結果に基づく情報を出力する出力装置３００と、同じく画像処理装置１００の判定結果に基づいて走行支援を行う走行支援装置４００とを備える。画像処理装置１００、車両コントローラ２００、出力装置３００、走行支援装置４００は、ＣＰＵ、ＭＰＵ、ＤＳＰ、ＦＰＧＡなどの動作回路を組み合わせて構成される。また、これらは、ＣＡＮ（Controller Area Network）などの車載ＬＡＮにより接続される。
【００１０】
また、本実施形態の画像処理装置１００は、撮像手段の一態様としてのカメラ１０と、移動情報算出部２０と、判定部３０を備える。さらに、本実施形態の画像処理装置１００は、カメラ１０の撮像データを記憶する画像メモリ１１、判定部３０の判定結果を出力情報として編集する編集部４０とを備える。
【００１１】
本実施形態の画像処理装置１００は、車両に搭載されたカメラ１０により取得された画像に含まれる物体に対応する画素の移動情報を算出し、移動情報の共通する画素が縦方向に連続する「立体特徴領域」を抽出し、この抽出された「立体特徴領域」と、車両の速度に基づいて予め取得された、移動情報算出部２０が立体に対応する画素の移動情報を算出できない「立体観測不能領域」との位置関係を判断し、その物体の属性を判定する。
【００１２】
以下、画像処理装置１００が備える各構成について説明する。
【００１３】
カメラ１０は、例えばＣＣＤ（Charge-Coupled Devices）やＣＭＯＳ（Complementary Metal-Oxide Semiconductor）などの撮像素子を有するカメラである。本実施形態のカメラ１０は、車両周囲（車両前方、車両後方、車両側方など）に存在する物体（立体、路面上の平面体を含む）を所定周期で撮像し、フレーム毎に撮像された画像を画像メモリ１１に出力する。画像メモリ１１は、カメラ１０により撮像された画像をアクセス可能な状態で記憶する。
【００１４】
図２は、カメラ１０の設置例を示す。図２（Ａ）はカメラを搭載する車両を側面から見た図、図２（Ｂ）はカメラを搭載する車両を上方から見た図である。図２に示すように、本実施形態では、１つのカメラ１０を車両に設置する。つまり、本実施形態では、単眼のカメラ１０で車両周囲を撮像する。本実施形態では、カメラ１０を車両の室内上部に車両前方に向けて設置する。そして、カメラ１０の光軸ＬＳが、車両の走行方向（ドライバ正面方向）のＺ方向に向くように調整し、撮像面の水平軸Ｘが路面と平行となるように調整し、さらに、撮像面の垂直軸Ｙが路面と垂直になるように調整する。
【００１５】
図３は、本実施形態のカメラ１０を用いて車両前方を撮像する画像の例である。カメラ１０による撮像画像は、画像左上の頂点を原点とするｘｙ座標系によって表される。そして、原点から右方向へ延在する軸をｘ軸とし、原点から下へ延在する軸をｙ軸とする。なお、図３に示す撮像画像には、立体の物体（立体）としてのポールと、平面の物体（平面体）としての路上の白線（白色以外の線も含む）が含まれている。
【００１６】
次に、移動情報算出部２０について説明する。この移動情報算出部２０は、特徴抽出部２１と算出部２２を備え、カメラ１０により撮像された物体（ポール、白線等を含む）の画像の情報に基づいて、画像中の物体に対応する画素の移動情報を算出する。
【００１７】
この特徴抽出部２１は、カメラ１０が撮像する各画像データ（フレーム）から、撮像された物体の画像上の動きを観測するため、物体の外延、物体の特徴的な部分を含む特徴部を抽出する。本実施形態の特徴抽出部２１は、カメラ１０で撮像された画像を画像メモリ１１から読み込み、読み込んだ撮像画像を所定の閾値を用いて２値化し、画像内に存在する物体のエッジを抽出する。このエッジ成分に基づいて、特徴部を抽出する。
【００１８】
本実施形態の特徴抽出部２１は、カメラ１０で撮像された画像を画像メモリ１１から読み込み、読み込んだ撮像画像を所定の閾値を用いて２値化することによって、画像内に存在する物体のエッジを抽出する。図４（ａ）に抽出された垂直方向のエッジの例を示す。次に、抽出された各エッジに対して、細線化処理を行ってエッジ幅を絞り、エッジの中心を正確に設定する（図４（ｂ）参照）。さらに、細線化されたエッジのエッジ幅が一定の幅となるように、例えば３画素分の幅となるように、エッジを水平方向に膨張させる（図４（ｃ）参照）。この操作により、抽出したエッジが正規化され、各エッジが均一の幅を持つエッジ画像を得る。
【００１９】
算出部２２は、特徴抽出部２１により抽出されたエッジから求められた特徴部の画素の速度を算出する。求めた特徴部の移動速度と移動方向は、撮像タイミング識別子又はフレーム識別子と対応づけて記憶する。この画素の移動情報は、画素の特定情報とともに、「画素の移動速度」と「画素の移動方向」とを含む。なお、一の画像データ中に複数の特徴部が存在する場合は、すべての特徴部について速度を算出する。
【００２０】
以下、本実施形態の移動情報算出部２０が行う、具体的な移動速度算出手法を説明する。
【００２１】
本実施形態の算出部２２は、カメラ１０により撮像された物体の画像の情報に基づいて、物体の外延に対応するエッジが検出された位置の画素のカウント値をカウントアップし、このカウント値の傾きに基づいて、エッジの移動速度及び移動方向を算出する。
【００２２】
本実施形態の移動情報算出部２０は、撮像タイミングが異なる画像データについて、各画像データに含まれるエッジに対応する画素の画素カウンタのカウンタ値を所定の手法で更新する。ここで、画素カウンタとは、各画素に設定されたカウンタであり、画素がエッジに対応する場合は画素カウンタのカウンタ値を＋１加算し、画素がエッジに対応しない場合は画素カウンタのカウンタ値を０とする（初期化する）カウンタである。このカウンタ値の更新処理を、カメラ１０により所定周期で繰り返し撮像されるフレーム毎に行う。この操作を行うと、エッジに対応する時間が長い画素は、対応する画素カウンタのカウンタ値が大きくなり、他方、エッジに対応する時間が短い画素は、対応する画素カウンタのカウンタ値が小さくなる。
【００２３】
この画素カウンタのカウンタ値の変化は、エッジの移動方向と移動量を表していることになる。このため、このカウンタ値に基づいて、撮像画像上におけるエッジの移動方向と移動速度とを算出する。画像の座標系は方位を表しているため、エッジ、及びこのエッジに対応する特徴部の移動方向と移動速度を求めることができる。
【００２４】
さらに、図４に基づいて、算出部２２が行う移動情報の算出手法を説明する。図４は移動情報の算出処理を説明するための図、すなわち、抽出されたエッジが正規化されたエッジ画像を取得し、エッジのカウンタ値（滞留時間）から移動方向と移動速度を算出する処理を具体的に説明するための図である。
【００２５】
まず、特徴抽出部２１は、エッジ画像に対して２値化処理を行う。２値化処理とはエッジの検出された位置の画素を１とし、エッジの検出されなかった位置の画素を０とする処理である。図４（ａ）は抽出された垂直方向のエッジの２値化画像例を示す。
【００２６】
次に、図４（ｂ）に示すように、生成された２値化画像に対して、細線化処理を行う。細線化処理とは、検出されたエッジのエッジ幅を所定画素幅になるまで縮小する処理である。つまり、抽出された各エッジに対して細線化処理を行ってエッジ幅を絞る。本例では、図４（ｂ）に示すように、所定画素幅として１画素になるまでエッジのエッジ幅を細線化する。このようにエッジを所定の画素幅になるまで細線化することによって、エッジの中心となる中心位置を設定する。なお、本例では、１画素に細線化する例を示すが、細線化する画素数は特に限定されない。
【００２７】
次に、細線化されたエッジのエッジ幅を膨張させる膨張処理を行う。膨張処理とは、細線化によって設定された中心位置からエッジの移動方向に向かってエッジ幅が一定の幅となるように膨張させるとともに、中心位置からエッジの移動方向と反対方向にもエッジ幅を膨張させる処理である。本例では、細線化されたエッジのエッジ幅が３画素分の幅となるように、エッジを水平方向に膨張させる。この処理により、抽出されたエッジを正規化し、各エッジの幅が均一なエッジ画像を得る。具体的に、図４（ｃ）に示すように、エッジの中心位置ｘ０からエッジの移動方向（ｘ軸の正方向）に１画素膨張させるとともに、エッジの中心位置ｘ０からエッジの移動方向と反対方向（ｘ軸の負方向）に１画素膨張させて、エッジ幅を３画素に膨張させる。
【００２８】
このように細線化処理と膨張処理とを行うことによって、抽出されたエッジ画像のエッジ幅を、エッジの移動方向に向かって所定の幅に統一し、規格化する。
【００２９】
次に、算出部２２が移動情報を算出するために行う、カウントアップ処理について説明する。ここに言うカウントアップ処理とは、エッジが検出された画素の位置に対応するメモリアドレスの値をカウントアップし、エッジが検出されなかった画素の位置に対応するメモリアドレスの値を初期化する処理である。
【００３０】
以下、図４（ｃ）〜（ｆ）に基づいて算出部２２によるエッジのカウントアップ処理について説明する。説明の便宜のため、ここでは、エッジがｘ軸の正方向に移動する場合を例にして説明する。エッジがｘ軸の負方向やｙ軸方向、あるいは２次元的に移動する場合においても、基本的な処理手法は共通する。
【００３１】
図４（ｃ）に示すように、エッジはあるフレームにおいて位置ｘ０にエッジの中心位置がある。そして、その中心位置からエッジの移動方向に１画素の位置ｘ０＋１に膨張され、同様に、中心位置からエッジの移動方向と反対方向に１画素の位置ｘ０−１に膨張されている。
【００３２】
このようなエッジが検出された位置、「ｘ０−１」、「ｘ０」、「ｘ０＋１」に対応するメモリアドレスのカウント値は「＋１」カウントアップされる。他方、エッジが検出されなかった位置に対応するメモリアドレスのカウント値は、リセットされる。
【００３３】
例えば、図４（ｄ）では、時刻ｔにおいて、位置「ｘ０−１」、「ｘ０」、「ｘ０＋１」にエッジが検出されている。このため、それぞれの位置に対応するメモリアドレスのカウント値が各「１」カウントアップされる。その結果、位置「ｘ０＋１」のカウント値は「１」、位置「ｘ０」のカウント値は「３」、位置「ｘ０−１」のカウント値は「５」である。
【００３４】
次に、図４（ｅ）に示すように、時刻ｔ＋１になってもエッジが移動していないので、位置「ｘ０−１」、「ｘ０」、「ｘ０＋１」の各位置でエッジが検出される。このため、位置「ｘ０−１」、「ｘ０」、「ｘ０＋１」のカウント値をさらに１ずつカウントアップする。その結果、位置「ｘ０＋１」のカウント値は２、位置「ｘ０」のカウント値は４、位置「ｘ０−１」のカウント値は６となる。
【００３５】
さらに、図４（ｆ）に示すように、時刻ｔ＋２では、エッジがｘ軸の正方向に１画素シフトして位置「ｘ０」、「ｘ０＋１」、「ｘ０＋２」の位置でエッジが検出される。このため、エッジが検出された位置「ｘ０」、「ｘ０＋１」、「ｘ０＋２」に対応するメモリアドレスのカウント値はカウントアップされる。他方、エッジが検出されなかった位置「ｘ０−１」のカウント値はリセットされ、「ゼロ」となる。その結果、図４（ｆ）に示すように位置「ｘ０＋２」のカウント値は１、位置「ｘ０＋１」のカウント値は３、位置「ｘ０」のカウント値は５となる。さらに、エッジが検出されなかった位置「ｘ０−１」のカウント値はリセットされ、「０」になっている。
【００３６】
このように、算出部２２は、エッジが検出された位置に対応するメモリアドレスのカウント値をカウントアップし、エッジの検出されなかった位置に対応するメモリアドレスのカウント値をリセットする。
【００３７】
なお、図４に基づく説明においては、カウント値を検出する位置として、エッジの中心位置「ｘ０」と、この中心位置からエッジの移動方向へ１画素の位置「ｘ０＋１」と、中心位置からエッジの移動方向と反対方向に１画素の位置「ｘ０−１」の３箇所でカウント値を検出するが、後述するカウント値の傾きが求められれば、カウント値を検出するポイントの配置、数は限定されない。つまり、エッジの移動方向に対して２箇所以上においてカウント値を検出できれば、カウント値の検出箇所はいくつであってもよい。
【００３８】
また、物体が自車に対して一定角度で近づく場合、連続するフレーム間において、エッジは同じ位置で複数回検出される。例えば、図４の例では、連続する時刻ｔのフレームと時刻ｔ＋１のフレームにおいて、エッジは位置ｘ０において２回検出される。したがって、エッジが検出された位置に対応するメモリアドレスのカウント値をカウントアップしていくと、そのカウント値はその位置においてエッジが検出されている時間（フレーム数、滞留時間）と相関する。
【００３９】
次に、本実施形態における、エッジの移動速度、移動方向及び位置の算出手法について説明する。本実施形態では、カウント値の傾きを算出し、この傾きに基づいて、エッジの移動速度、移動方向及び位置を算出する。
【００４０】
例えば、図４（ｅ）の場合では、位置「ｘ０−１」、「ｘ０」、「ｘ０＋１」のカウント値がそれぞれ「６」、「４」、「２」である。位置「ｘ０−１」のカウント値「６」から「ｘ０＋１」のカウント値「２」を引くと、カウント値の傾きＨは、Ｈ＝（６−２）／２＝２と算出できる。
【００４１】
これは、Ｈ＝｛（エッジが位置ｘ０−１に移動してから現在までの時間）−（エッジが位置ｘ０＋１に移動した後の時間）｝／（２画素）を意味する。つまり、傾きＨを算出することにより、エッジが、位置ｘ０にある１画素を通過するのに要する時間（フレーム数）を算出することになる。
【００４２】
したがって、カウント値の傾きＨは、エッジが１画素移動するために何フレームを要するかに相当し、このカウント値の傾きＨに基づいてエッジの移動速度１／Ｈを算出する。図４（ｅ）では１画素移動するのに２フレームを要することになるので、エッジの移動速度は１／２（画素／フレーム）と算出する。
【００４３】
続いて、カウント値の大小に基づいて、エッジの移動方向を判断する手法について説明する。エッジの無い位置にエッジが移動し、新たにエッジが検出された位置のカウント値は１となるから、各位置のカウント値の中では最も小さな値となる。したがって、エッジが移動する方向のカウント値は小さく、エッジが移動する方向と反対方向のカウント値は大きくなる。この傾向を利用して、エッジの移動方向を判断することができる。
【００４４】
以上のことから、エッジが検出された位置に対応するメモリアドレスのカウント値をカウントアップし、カウントアップされたカウント値の傾きに基づいてエッジの移動速度及び移動方向を算出することができる。
【００４５】
また、算出部２２は、撮像画像上に存在するエッジの移動情報を所定の階級値に分類し、移動情報の特徴を表現する移動画像を生成する。図５に移動画像の一例を示す。図５に示すように、本実施形態の移動画像では、移動情報が検出されたエッジの画素を丸印で表し、移動速度が速い画素ほど点を大きい丸印で表すことにより、画素の速度情報を表現する。また、移動方向が右、すなわち右方向へ移動する画素を塗りつぶした黒印で表し、移動方向が左、すなわち左方向へ移動する画素を色抜きの白印で表すことにより、画素の移動方向を表現する。このように、移動画像は、速度情報と移動方向を含む移動情報を表現できる。
【００４６】
ところで、車両が純粋に直進する場合、平面体の移動速度を検出することはない。しかしながら、通常の走行環境においては、直進以外の車両挙動が発生する。本実施形態では、通常の走行において発生する車両挙動に伴って生じるカメラ１０の挙動に基づいて、擬似的な速度を算出する。
【００４７】
図６は、車両にピッチング挙動が発生した場合の平面体（白線）の画像上の動きを説明するための図である。車両にピッチング挙動が発生したことにより、図６に示すａの位置にあった白線は、次のフレームでｂの位置に画像上移動する。ピッチングによって白線が動いたとき、画像上における白線の動きは実線矢印Ｑの方向であるが、本実施形態の算出部２２は横方向の破線矢印ｑの方向の移動情報を算出する。このように、横方向の移動情報を算出するのは、後述する判定部３０において、立体の横方向の移動画像は「共通の速度情報を持つ画素が縦に連続して存在する」という特徴に基づいて、物体の属性を判定するためである。
【００４８】
次に、判定部３０について説明する。判定部３０は、各画素の移動情報に基づいて、撮像された物体の属性を判定し、その判定結果を出力する。本実施形態の判定部３０は、立体特徴領域抽出部３１と、平面体判定部３２と、立体判定部３３と、共通線状体判定部３４と、記憶部３５とを備える。
【００４９】
以下、判定部３０が備える各構成について説明する。
【００５０】
まず、立体特徴領域抽出部３１は、移動情報算出部２０により算出された特徴部の各画素の移動情報に基づいて、移動情報の共通する画素が縦方向に連続する立体特徴領域を抽出する。「縦方向に移動情報が共通する画素が連続する」という特徴は、立体の画像上の特徴である。
【００５１】
特に限定されないが、立体特徴領域を抽出するにあたり、画像中に特徴部が検出された位置の画素のカウント値をカウントアップしたカウント値の傾きに基づいて算出された移動情報を用いることができる。
【００５２】
立体特徴領域の抽出手法の一例を、図７に基づいて説明する。図７に示すように、まず、移動画像（図５参照）を縦方向（ｙ軸方向）に探索する。移動情報を持った画素Ａが見つかった場合、画素Ａに隣接する画素Ｂを探索する。画素Ｂが移動情報を有し、かつ画素Ａと画素Ｂの速度方向の差（Ｅ２−Ｅ１）が閾値Ｒｅ以内であり、かつ、画素Ａと画素Ｂの速度の大きさの差（Ｖ２−Ｖ１）が閾値Ｔｖ以内であれば、縦に連続していると判断する。次に、画素Ｂに隣接する画素Ｃについても同様に移動情報の有無を判断し、画素Ａと画素Ｃの速度の方向（Ｅ３−Ｅ１が閾値Ｔｖ以内か）が閾値Ｒｅ以内か、速度の大きさの差（Ｖ３−Ｖ１）が閾値Ｔｖ以内かを判断する。以後、いずれかの条件を満たさなくなるまで繰り返す。
【００５３】
図７に示すように画素Ｎの次の画素で条件を満たさなくなった場合、それまでに条件を満たす画素の数をカウントする。そのカウント値が閾値ＴＨ以上であれば、画素Ａから画素Ｎまでの縦連続成分を立体特徴領域として抽出する。この縦連続成分を含む立体特徴領域は、立体の移動画像における特徴を備えているから、画素Ａから画素Ｎまでの立体特徴領域に対応する物体を立体として抽出することも可能である。
【００５４】
平面体判定部３２は、移動情報算出部２０により算出された物体の移動情報に基づいて、物体が平面体であるか否かを判定する。
【００５５】
本実施形態の平面体判定部３２は、予め、画像処理装置１００が搭載された車両の速度に基づいて、移動情報算出部２０が立体に対応する画素の移動情報を算出できない立体観測不能領域３６１を取得する。この立体観測不能領域は予め記憶部３５１に記憶されている。もちろん、平面体の判定を行う際に、平面体判定部３２が立体観測不能領域３６１を算出してもよい。
【００５６】
次に、図８に基づいて、この立体観測不能領域３６の算出手法例を説明する。図８の(Ａ)に示すように、各種センサ２１０で検出され、車両コントローラ２００を介して取得した車速がＶｃのとき、Ｐの位置にある静止立体は、単位時間、例えば1フレーム当りの時間ｔ後には、距離Ｖｃ・ｔだけ移動し、Ｐ´の位置に存在する。カメラ１０の光軸とＰ又はＰ´のなす角が、Ａ１、Ａ２であるとき、Ａ３＝Ａ２−Ａ１がカメラ１０の水平方向角度分解能Ｒｈよりも大きいとき、Ｐの移動速度は観測できる最大の速度を超える。
【００５７】
Ｔａｎ-1(Ｘ／（Ｚ−Ｖｃ*ｔ））−Ｔａｎ-1（Ｘ／Ｚ） > Ｒｈ…  (式１)
つまり、車速Ｖｃのとき、式１を満たすＸとＺにおいて、Ｐの速度は観測できる最大の速度を超える。つまり、この条件下においては、立体に対応する画素の移動情報を算出できない。本実施形態では、式１を満たすＸとＺの領域を求め、それを式２によって、画像座標であるＸ´−Ｙ座標へ変換する。これを図８（Ｂ）に示す。
【００５８】
Ｙ＝Ｔａｎ-1（Ｈｃ／Ｚ)／Ｒｈ
Ｘ´＝Ｍｈ／２−Ｔａｎ-1(Ｘ／Ｚ)Ｒｈ  （式２）
ここで、Ｈｃはカメラ１０の取り付け地上高、Ｒｈはカメラの垂直方向角度分解能、Ｍｈはカメラの水平方向画素数である。
【００５９】
これにより、図８（Ｂ）に示すように、立体を観測することができない立体観測不能領域を定義できる。
【００６０】
そして、平面体判定部３２は、立体特徴領域抽出部３１が抽出する立体特徴領域が、立体観測不能領域内に含まれる場合、その立体特徴領域に対応する物体は平面体であると判定し、その立体特徴領域に平面体フラグを付加する。
【００６１】
このように、本実施形態では、立体の画像の特徴を有する立体特徴領域が検出されたとしても、これを直ちに立体と判定するのではなく、立体特徴領域が立体観測不能領域内に含まれるか否かを判断し、立体が測定されない領域内に含まれる立体特徴領域は平面体と判定する。これにより、高い精度で物体の属性（立体か平面体か）を判定することができる。
【００６２】
なお、物体が平面体であるか否かを判定する手法は特に限定されず、本例のように立体観測不能領域を用いて判定する手法に限定されない。
【００６３】
例えば、本実施形態の平面体判定部３２は、立体に対応する画素の移動速度が所定値以上となる立体判定領域を算出し、この立体判定領域を参照して、この立体判定領域内に移動速度が所定値未満である画素が含まれる場合、この画素に対応する物体は平面体であると判定する。なお、この画素には立体特徴領域を含む。
【００６４】
次に、共通線状体判定部３４について説明する。本実施形態の共通線状判定部３４は、傾き比較部３４１と速度比較部３４２とを備え、判定の対象となる２以上の立体特徴領域について、傾きを比較すること又は速度を比較することにより、その立体特徴領域が属する平面体の共通性を判定する。特に、本実施形態では、平面体のうち、路上の白線（他の色の線も含む）などの平面線状体の共通性を判定する。
【００６５】
まず、物体に係る「傾き」の観点から、その同一性を判定する手法について説明する。傾き比較部３４１は、平面体であると判定された２以上の物体の外延の傾きをそれぞれ算出し、比較する。平面体の外延の傾きを算出する手法は、特に限定されず、立体特徴領域の縦方向に連続する画素の端部の画素を基点とし、共通の移動速度を有しかつエッジの端部に位置する画素を辿り、その軌跡を平面体の外延の傾きとして算出することもできる。
【００６６】
図９に基づいて、本実施形態の平面体の傾きの算出手法を具体的に説明する。
【００６７】
傾き比較部３４１は、平面体であると判定された２以上の物体の立体特徴領域に含まれ、縦方向に連続する縦連続成分（立体特徴領域）のうち上端部（下端部でもよい）に位置する基点画素Ｍを基準とし、基点画素Ｍの移動情報と共通する移動情報を有する画素の数を縦方向（矢印Ａ方向）及び横方向（矢印Ｂ方向）にカウントし、横方向の隣接画素の数を縦方向の隣接画素の数で除する。この値が白線（線状平面体）の傾きとなる。このとき、左方向のカウントと右方向のカウントのうち、カウント数の大きいほうの長さをＢとし、縦方向のカウント数をＡとする場合、線状平面体の傾きは、「直線の傾きα＝Ａ／Ｂ」として求めることが出来る。
【００６８】
傾き比較部３４１は、他の立体特徴領域についても、基点画素Ｍ´を基準として、線上平面体の傾きを算出する。そして、２以上の物体の傾きを比較する。比較処理に際し、傾き比較部３４１は、傾きの共通性を導くため、傾きの差分が所定閾値以内であるか否かを求めることができる。
【００６９】
次に、物体に係る「速度」の観点から、その同一性を判定する手法について説明する。速度比較部３４２は、平面体であると判定された２以上の物体の立体特徴領域について、立体特徴領域に含まれる縦方向に連続する速度共通の画素のうち端部に位置する基点画素の移動情報を算出し、これらを比較する。比較の対象となる移動情報は、移動方向、移動速度、又は移動方向及び移動速度である。
【００７０】
平面体の速度成分の大きさはカメラからの距離によらず一定になる。つまり、同じ平面体であれば、各平面体の立体特徴領域の移動情報は共通する。このため、本実施形態では、立体特徴領域に含まれる縦方向に連続する速度共通の画素のうち、最下端部に位置する基点画素の移動情報を比較する。この移動情報を比較することにより、物体の共通性を判定できる。
【００７１】
本実施形態の速度比較部３４２は、平面体であると判定された２以上の物体の立体特徴領域について、立体特徴領域に含まれる縦方向に連続する画素のうち端部に位置する第１基点画素の移動情報を算出する。また、この基点画素の移動情報と共通する移動情報を有する画素の数を縦方向及び横方向にカウントし、横方向の隣接画素の数を縦方向の隣接画素の数で除した傾きαを算出する。この傾きとして、傾き比較部３４１が算出する値を用いることができる。そして、第１基点画素を通る傾きαの直線の近傍にある他の立体特徴領域の第２基点画素について移動情報を算出し、両移動速度を比較する。
【００７２】
図１０に基づいて、本実施形態の平面体の速度情報の算出手法を具体的に説明する。図１０に示すように、平面体と判定された物体の立体特徴領域について、縦方向に連続する速度共通の画素成分（立体特徴領域）Ｌ１の最下端部Ｋを通り、傾き比較部３４１が算出する傾きαの直線の近傍には、同じ物体の立体特徴領域の最下端部Ｋ´が存在すると予測できる。もし、物体が同じ線状平面体であるならば、最下端部Ｋを含む立体特徴領域の速度情報と最下端部Ｋ´を含む立体特徴領域の速度情報は共通する。
【００７３】
速度比較部３４２は、立体特徴領域Ｌ１の最下端部Ｋの速度情報を取得するとともに、立体特徴領域の最上点が消失線よりも下にあり、かつ、最下端部Ｋを通る傾きαの直線の近傍にある他の立体特徴領域Ｌ２を抽出する。そして、Ｌ１の立体特徴領域の平均速度Ｖａ１とＬ２の立体特徴領域の平均速度Ｖａ２を比較し、その差が閾値ＴＶａ未満であるか否かを算出する。
【００７４】
共通線状体判定部３４は、立体特徴領域の平均速度Ｖａ１とＬ２の立体特徴領域の平均速度Ｖａ２の比較の結果、その差が閾値ＴＶａ未満である場合（Ｖａ１−Ｖａ２＜ＴＶａ）、Ｌ１とＬ２は共通の線状平面体（白線）に属する速度成分と判定し、Ｌ２に対して平面体フラグを付加する。この場合、Ｌ２に対してＬ１と共通の線状平面体である旨のフラグを付加してもよい。他方、Ｖａ１とＶａ２の差がＴＶａよりも大きいとき、Ｌ１とＬ２は共通の線状平面体（白線）には属さないと判定する。
【００７５】
立体判定部３３は、平面体であると判定された物体以外の物体であって、立体特徴領域に対応する物体は立体であると判定する。この平面体には共通線状体と判定された物体も含む。
【００７６】
また、立体判定部３３は、車両の速度に基づいて、予め取得された、立体に対応する画素の移動速度が所定値以上となる立体判定領域３５２を参照し、立体判定領域３５２内に移動速度が所定値未満である画素（立体特徴領域を含む）が含まれる場合、その画素に対応する物体は平面体であると判定する。立体判定領域３５２の算出手法は、特に限定されず、通常の手法を用いることができる。なお、立体判定領域３５２は、予め取得して、記憶部３５に記憶させておくことができる。
【００７７】
判定部３０（平面体判定部３２、立体判定部３３、共通線状体判定部３４）は、判定結果を、編集部４０、走行支援装置４００、又は出力装置３００に向けて出力する。
【００７８】
編集部４０は、判定部３０の判定結果に基づいて、物体の属性、つまり物体が平面体である、物体が立体である、検出された複数の物体は共通する線状体であるといった、物体の属性に関する情報を、出力用の情報に編集する。編集部４０は、編集した情報を、出力装置３００又は走行支援装置４００へ出力する。出力装置３００は、物体の属性に関する情報を、ディスプレイ・スピーカを介して出力する。走行支援装置４００は、物体の属性に関する情報を利用して、車両の走行支援を行う。なお、判定部３０は、編集部４０を介することなく、判定結果を出力装置３００又は走行支援装置４００へ出力することもできる。
【００７９】
続いて、本実施形態の画像処理装置１００の画像処理手順を図１１に基づいて説明する。図１１は本実施形態の画像処理装置１００の画像処理手順を示すフローチャート図である。
【００８０】
イグニションスイッチ（図示省略）がオンされ、車載装置１０００が起動すると、この処理用のプログラムが実行される。
【００８１】
まず、カメラ１０は、所定の周期で車両周囲を撮像する（Ｓ１０１）。撮像された画像は画像メモリ１１に蓄積される。移動情報算出部２０の特徴抽出部２１は、画像に対してエッジ抽出処理を行い、撮像画像内に存在する物体の輪郭をエッジ画像として抽出するとともにエッジ画像の正規化を行う（Ｓ１０２）。算出部２２は、エッジの移動情報を算出する（Ｓ１０３）。そして、算出された移動情報を所定の階調で表された移動画像（図５参照）を作成する。
【００８２】
判定部３０の立体特徴領域抽出部３１は、移動画像を参照し、移動情報の共通する画素が縦方向に連続する立体特徴領域を抽出する（Ｓ１０４）。立体特徴領域抽出部３１は、すべての画像に対し抽出処理が完了したかを確認し、ＹＥＳの場合はステップＳ１０６へ、そうでない場合はＳ１０４へ移行する（Ｓ１０５）。
【００８３】
ステップＳ１０６では、平面体判定部３２が、Ｓ１０４で抽出された立体特徴領域の、あるＸ座標のうち最もＹ座標の値の大きい最下端部をさらに抽出し、立体観測不能領域との位置関係に基づいて、立体が平面体であるか否かを判定する（Ｓ１０６）。抽出された立体特徴領域の最下端部が立体観測不能領域内に含まれる場合、最下端部を含む立体特徴領域の速度成分は、平面体の速度と判定する。そして、この立体特徴領域に対応する物体は平面体と判定する（Ｓ１０７）。平面体の速度と判定された場合はＳ１０８へ進む。他方、抽出された立体特徴領域の最下端部が立体観測不能領域内に含まれない場合、Ｓ１１４へ進む。
【００８４】
ステップＳ１０８では、平面体の速度と判定された立体特徴領域の画素データに対して「平面体である」旨の識別フラグを付加する。
【００８５】
ステップＳ１０９では、ステップＳ１０８で平面体フラグが付加された立体特徴領域について、この立体特徴領域が属する線状平面体（白線）の傾きαを求める（Ｓ１０９）。
【００８６】
ステップＳ１１０では、Ｓ１０８で平面体フラグが付加された立体特徴領域について、Ｓ１０９で求めた、立体特徴領域が属する線状平面体（白線）の傾きαを用いて、同じ線状平面体（白線）に属する可能性の高い立体特徴領域候補の抽出処理を行う（Ｓ１１０）。例えば、傾き比較部３４１は、立体特徴領域の下端部を通り、傾きαの直線上近傍に、下端部が位置する立体特徴領域を抽出する。
【００８７】
平面フラグが付加された立体特徴領域の傾きと、Ｓ１１０で抽出された立体特徴領域候補の傾きを比較し、傾きの差が所定値未満（差が小さい）場合、両者は共通の線状平面体（物体）と判定してもよいが、本実施形態では、さらに、移動情報の観点から物体の共通性について検討を加える。
【００８８】
ステップＳ１１１では、Ｓ１０８で平面フラグが付加された立体特徴領域の移動情報を求め、Ｓ１１０で抽出された共通の立体特徴領域候補の移動情報を求める。そして、両者の移動情報を比較する。移動情報（移動速度、移動方向を含む）の差が所定値未満（差が小さい）場合、両者は共通の線状平面体（物体）と判定する。物体が共通の白線（線状平面体）であると判定された場合はＳ１１２へ進み、そうでない場合はＳ１１３へ処理を進む。
【００８９】
ステップＳ１１２では、Ｓ１１１で共通の白線（線状平面体）であると判定された立体特徴領域に対して平面体フラグを付加する処理を行う。
【００９０】
ステップＳ１１３では、Ｓ１１０で抽出された全ての立体特徴領域候補についてＳ１１１の判定処理を行ったか否かを判断する。全て立体特徴領域候補についてＳ１１１の判定処理を行った場合はステップＳ１１４へ進み、全ての立体特徴領域候補についてＳ１１１の判定処理が行われていない場合は、Ｓ１１１の処理を実行する。
【００９１】
ステップＳ１１４では、Ｓ１０６で抽出された立体特徴領域の最下端部の全てについてＳ１０７からＳ１１３までの処理が行われたかを判断する。全ての立体特徴領域の最下端部について処理が終わっている場合はＳ１１５へ進み、全ての立体特徴領域の最下端部について処理が行われていない場合はＳ１０７へ処理を進める。
【００９２】
続いて、ステップＳ１１５では、Ｓ１０４で抽出された立体特徴領域のうち、平面体フラグが付加されていない立体特徴領域に対応する物体を、立体と判定する処理を行う（Ｓ１１５）。
【００９３】
ステップＳ１１６では、車両のイグニションスイッチがＯＦＦされているかを判断し、ＯＦＦされている場合はＳ１１７へ進み処理を終了する。他方、車両のイグニションスイッチがＯＮの場合はＳ１０１へ処理を進める。
【００９４】
本実施形態の画像処理装置１００は以上のとおり構成され、動作するので、以下の効果を奏する。
【００９５】
本実施形態の車両用の画像処理装置１００は、カメラ１０の画像から取得された移動情報に基づいて物体の属性を判定するので、距離情報に依存しないで物体の属性を判定することができる。また、ステレオカメラなどの距離情報を得るための構成を必要としないため、画像処理装置１００を簡易な構成とすることができる。
【００９６】
加えて、本実施形態の車両用の画像処理装置１００は、単眼のカメラ１０の画像から取得された移動情報に基づいて物体の属性を判定するので、画像処理におけるミスマッチングによる誤測距が発生しないため、高い精度で物体の属性を判定することができる。つまり、距離情報に基づいて物体の属性を判定する手法、例えばステレオ視の画像に基づいて物体の属性を判定する手法においては、ミスマッチングにより誤った距離情報が与えられる場合がある。距離情報に誤りがあると、二次元の物体を誤って立体として判定する誤判定が生じるが、本実施形態の画像処理装置１００は距離情報に依存せずに物体の属性を判定するため、誤った距離情報に基づく誤検出の発生を低減し、精度の高い判定を行う画像処理を行うことができる。
【００９７】
本実施形態の画像処理装置１００は、車両の速度に基づいて、移動情報算出部２０が立体に対応する画素の移動情報を算出できない立体観測不能領域を予め取得し、この立体観測不能領域と、立体特徴領域との位置関係に基づいて物体の属性を判定するため、平面体を立体と誤って判定することがなく、高い精度で物体の属性を判定する画像処理を行うことができる。
【００９８】
また、立体特徴領域を有する物体から、上述の判定に基づいて平面体と判定された物体を除いた物体を、立体と判定するため、平面体を立体と誤って判定することがなく、高い精度で物体の属性を判定する画像処理を行うことができる。
【００９９】
そして、物体に対応する画素の移動情報を算出するにあたり、移動情報算出部２０は、カメラ１０の撮像された物体の画像の情報に基づいて、物体に対応する特徴部が検出された位置の画素のカウント値をカウントアップし、カウント値の傾きに基づいて、特徴部の移動情報を算出するため、簡易な手法で画素の移動情報を取得することができる。また、このような画像処理により、移動情報の共通する画素が縦方向に連続する立体特徴領域という、立体の特徴点を容易に導出できる。
【０１００】
さらに、本実施形態は、平面体であると判定された２以上の物体の傾きの共通性に基づいて、平面体が共通の線状平面体であるか否かを判定するため、簡易な手法で共通の白線（線状平面体）を高い精度で検出する画像処理を行うことができる。また、平面体であると判定された物体に絞って、白線の共通性を判定するため、高い処理効率と高い精度をもって白線の共通性を判定する画像処理を行うことができる。これにより、正確な白線認識を導く画像処理を行うことができる。
【０１０１】
特に、立体特徴領域の端部に位置する基点画素を基準とし、この基点画素の移動情報と共通する移動情報を有する画素の数の縦横比から平面体の傾きを求めることにより、簡易な手法で、物体が白線などの路上にある線状平面体であるか否かを判定する画像処理を行うことができる。路上の線状平面体である白線は、所定の傾きを有することから、画像上における傾きを比較することにより、高い精度で白線の共通性を判定することができる。
【０１０２】
さらに、本実施形態では、平面体の移動情報（移動速度成分、移動方向成分）はカメラからの距離に関わらず一定になる特徴を利用し、平面体であると判定された２以上の物体の立体特徴領域の端部に位置する基点画素の移動情報の共通性に基づいて、平面体が共通の線状平面体であるか否かを判定することができる。このように、移動情報に基づいて線状平面体の共通性を判定するため、簡易な手法で、物体が共通の白線（線状平面体）であるか否かを高い精度で判定する画像処理を行うことができる。
【０１０３】
また、本実施形態においては、平面体と判定された一の立体特徴領域の移動情報と、その立体特徴領域の最下端部Ｋを通り、傾きαの直線の近傍の立体特徴領域の最下端部Ｋ´を含む立体特徴領域の移動情報とを比較することにより、物体が共通の線状平面体であるか否かを判定することができる。本手法によれば、線状平面体の共通性を、移動情報と傾きの両方から検討することができ、より高い精度で線状平面体の共通性を判定する画像処理を行うことができる。加えて、傾き比較部３４１により算出された傾きに基づいて、移動速度を算出する立体特徴領域の候補を抽出するため、立体観測不能領域以外の領域にある平面体についても、高い精度で平面体であるか否かの判定、及び共通する線状平面体であるか否かの判定をすることができる。
【０１０４】
また、車両の速度に基づいて、予め取得された、立体に対応する立体特徴領域の移動速度が所定値Ａ以上となる立体判定領域を参照し、この立体判定領域内に含まれる移動速度が所定値Ａ未満の立体特徴領域に対応する物体は、平面体であると判定する。このため、カメラ１０の近傍に存在する物体の速度成分について、それが立体の速度成分であるか、平面体の速度成分であるかを判定し、その物体の属性を判定することができる。また、立体特徴領域内だけを探索するという簡易な処理により、物体の属性の判定の精度を向上させる画像処理を行うことができる。
【０１０５】
なお、以上説明した実施形態は、本発明の理解を容易にするために記載されたものであって、本発明を限定するために記載されたものではない。したがって、上記の実施形態に開示された各要素は、本発明の技術的範囲に属する全ての設計変更や均等物をも含む趣旨である。
【図面の簡単な説明】
【０１０６】
【図１】本実施形態の画像処理装置１００を含む車載装置１０００のブロック構成の一例を示す図である。
【図２】（Ａ）及び（Ｂ）は、カメラ１０の搭載例を示す図である。
【図３】カメラ１０により撮像された車両前方の画像例である。
【図４】（ａ）〜（ｆ）は移動速度の算出処理を説明するための図である。
【図５】移動画像の一例を示す図である。
【図６】車両にピッチング挙動が発生した場合の平面体（白線）の画像上の動きを、説明するための図である。
【図７】立体特徴領域の算出手法例を説明するための図である。
【図８】立体観測不能領域の算出手法例を説明するための図である。
【図９】平面体の傾きを比較する手法例を説明するための図である。
【図１０】平面体の速度を比較する手法例を説明するための図である。
【図１１】本実施形態の画像処理装置の制御手順を示すフローチャート図である。
【符号の説明】
【０１０７】
１０００…車載装置
１００…画像処理装置
１０…カメラ
１１…画像メモリ
２０…移動情報算出部
３０…判定部
３１…立体特徴領域抽出部
３２…平面体判定部
３３…立体判定部
３４…共通線状体判定部
３５…記憶部
４０…編集部
２００…車両コントローラ
３００…出力装置
４００…走行支援装置
【図１】
0005141275.tif 000002
【図２】
0005141275.tif 000003
【図３】
0005141275.tif 000004
【図４】
0005141275.tif 000005
【図５】
0005141275.tif 000006
【図６】
0005141275.tif 000007
【図７】
0005141275.tif 000008
【図８】
0005141275.tif 000009
【図９】
0005141275.tif 000010
【図１０】
0005141275.tif 000011
【図１１】
0005141275.tif 000012