(57)【要約】【課題】  悪天候下での車両検知性能を向上させる。【解決手段】  自車の前方を撮像した画像の一部に画像処理領域を設定し、設定した画像処理領域から画像の特徴を導出するとともに、導出した特徴に基づいて車両の存在を判定する車両用画像処理装置において、撮像画像の中の自車に近い位置から遠い位置へ順に画像処理領域を設定し、自車に近い位置から遠い位置へ行くにしたがって画像処理領域を狭くする。【選択図】  図４ 
2006018751.tif 000002
【特許請求の範囲】
【請求項１】
自車の前方を撮像する撮像手段と、
前記撮像手段による撮像画像の一部に画像処理領域を設定する領域設定手段と、
前記領域設定手段により設定した画像処理領域から画像の特徴を導出する特徴導出手段と、
前記特徴導出手段により導出した特徴に基づいて車両の存在を判定する車両判定手段とを備えた車両用画像処理装置において、
前記領域設定手段は、前記撮像手段による撮像画像の中の自車に近い位置から遠い位置へ順に画像処理領域を設定し、自車に近い位置から遠い位置へ行くにしたがって画像処理領域を狭くすることを特徴とする車両用画像処理装置。
【請求項２】
請求項１に記載の車両用画像処理装置において、
自車の進路を予測する進路予測手段を備え、
前記領域設定手段は、前記進路予測手段で予測された自車進路に沿って画像処理領域を設定することを特徴とする車両用画像処理装置。
【請求項３】
請求項１または請求項２に記載の車両用画像処理装置において、
前記領域設定手段によって撮像画像の中の自車に近い位置から遠い位置へ順に画像処理領域が設定されるたびに、設定された画像処理領域において前記特徴導出手段により特徴を導出するとともに前記車両判定手段により車両の存在を判定し、車両の存在が判定されたら前記領域設定手段、前記特徴導出手段および前記車両判定手段による画像処理を終了することを特徴とする車両用画像処理装置。
【請求項４】
請求項１〜３のいずれか１の請求項に記載の車両用画像処理装置において、
前記領域設定手段は、撮像画像上の自車の車幅方向の複数の位置において、撮像画像の中の自車に近い位置から遠い位置へ順に画像処理領域を設定し、自車に近い位置から遠い位置へ行くにしたがって画像処理領域を狭くすることを特徴とする車両用画像処理装置。
【請求項５】
請求項４に記載の車両用画像処理装置において、
前記領域設定手段は、撮像画像上の自車の正面における画像処理領域の設定回数を、自車の左右の位置における画像処理領域の設定回数よりも多くすることを特徴とする車両用画像処理装置。
【請求項６】
請求項１〜５のいずれか１の請求項に記載の車両用画像処理装置において、
前記領域設定手段は、小さな面積の画像処理領域を設定する場合には、自車の車幅方向に多くの画像処理領域を設定することを特徴とする車両用画像処理装置。
【請求項７】
請求項１〜５のいずれか１の請求項に記載の車両用画像処理装置において、
前記領域設定手段は、大きな面積の画像処理領域を設定する場合には、自車の前後方向の画像処理領域の設定数を少なくすることを特徴とする車両用画像処理装置。
【請求項８】
請求項１〜７のいずれか１の請求項に記載の車両用画像処理装置において、
前記領域設定手段は、自車から所定距離の地点に相当する撮像画像上の位置に画像処理領域を設定することを特徴とする車両用画像処理装置。
【請求項９】
請求項１〜８のいずれか１の請求項に記載の車両用画像処理装置において、
前記領域設定手段は、自車からの距離が遠くなるほど撮像画像上の画像処理領域の設定位置間隔を広くすることを特徴とする車両用画像処理装置。
【請求項１０】
請求項８または請求項９に記載の車両用画像処理装置において、
前記車両判定手段は、撮像画像上の画像処理領域の設定地点を自車からの距離に換算し、自車からの換算距離に基づいて画像の特徴から車両の存在を判定するためのしきい値を設定することを特徴とする車両用画像処理装置。
【請求項１１】
請求項１〜１０のいずれか１の請求項に記載の車両用画像処理装置において、
前記車両判定手段は、前記特徴導出手段で導出した特徴の位置座標に基づいて車両の存在を判定するためのしきい値を設定することを特徴とする車両用画像処理装置。
【請求項１２】
請求項１〜１０のいずれか１の請求項に記載の車両用画像処理装置において、
前記車両判定手段は、前記特徴導出手段で導出した特徴の長さに基づいて車両の存在を判定するためのしきい値を設定することを特徴とする車両用画像処理装置。
【請求項１３】
請求項１〜１２のいずれか１の請求項に記載の車両用画像処理装置において、
前記領域設定手段は、自車の車幅方向の大きさが車両２台分以下の画像処理領域を設定することを特徴とする車両用画像処理装置。
【請求項１４】
請求項１〜１３のいずれか１の請求項に記載の車両用画像処理装置において、
前記領域設定手段は、自車の車幅方向の大きさが前後方向の大きさよりも大きい画像処理領域を設定することを特徴とする車両用画像処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、カメラで撮像した画像を処理して先行車を検出する車両用画像処理装置に関する。
【背景技術】
【０００２】
カメラにより撮像した画像を処理して自車前方の車両を検出するようにした車両用障害物検出装置が知られている（例えば、特許文献１参照）。
【０００３】
この出願の発明に関連する先行技術文献としては次のものがある。
【特許文献１】特開平１０−０９７６９９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、上述した従来の車両用障害物検出装置では、降雨や降雪などの悪天候下では前方車両の検知性能が低下してしまうという問題がある。
【課題を解決するための手段】
【０００５】
撮像画像の一部に画像処理領域を設定して画像の特徴を導出し、導出した特徴に基づいて車両の存在を判定する車両用画像処理装置において、撮像画像の中の自車に近い位置から遠い位置へ順に画像処理領域を設定し、自車に近い位置から遠い位置へ行くにしたがって画像処理領域を狭くする。
【発明の効果】
【０００６】
本発明によれば、面積の小さい画像処理領域を設定して悪天候時における車両検知性能を向上させながら、画像の撮像間隔において撮像画像の中の広い範囲に多くの画像処理領域を設定して早く、確実に車両を検出できる。
【発明を実施するための最良の形態】
【０００７】
《発明の第１の実施の形態》
図１は第１の実施の形態の構成を示す。スキャンニング式レーザーレーダー１は車両前方にレーザー光を照射して物体からの反射光を受光し、物体までの距離と方位を測定する。レーダー処理装置２はレーザーレーダー１による測定結果に基づいて車両前方の車両を抽出し、自車両を原点とする車両前後方向と車幅方向の二次元座標上における車両の位置と車両の大きさ（幅）とを算出する。プログレッシブスキャン式３ＣＣＤカメラ３は車両前方を高速に撮像する。画像処理装置４はカメラ３による撮像画像の内、レーダー処理装置２により算出した車両周辺を注目領域として画像処理を行い、自車のピッチング変動などによりレーダー検知物体をロストした場合にも、カメラ画像により車両を検知し続ける。
【０００８】
外界認識装置５は、レーダー処理装置２と画像処理装置４の車両検出結果と、車速検出装置６により検出された車速、操舵角検出装置７により検出された操舵角などに基づいて自車前方の車両を検出し、自車にとって障害物か否かを判断し、必要に応じて自動ブレーキ制御装置８を制御して負圧ブレーキブースター９を駆動し、車両の制動力を発生させる。なお、以下の一実施の形態ではレーザーレーダー１が物体を検出できない走行環境下を想定し、カメラ３による撮像画像を処理して車両の検出を行う。
【０００９】
図２は第１の実施の形態の車両検出処理を示すフローチャートである。このフローチャートにより、第１の実施の形態の動作を説明する。外界認識装置５は所定時間（この第１の実施の形態では５０ｍsec）ごとにこの車両検出処理を実行する。
【００１０】
ステップ２０１においてＣＣＤカメラ３から今回のサンプリングにおける撮像画像を読み込む。続くステップ２０２では車速検出装置６から車速を、操舵角検出装置７から操舵角をそれぞれ読み込む。ステップ２０３で将来の自車進路の曲率半径Ｒow［ｍ］を次式により推定する。
Ｒow＝（１＋Ａ・Ｖsp２・ＬWB）／Ｓteer  ・・・（１）
（１）式において、Ａは車両固有の値であるスタビリティーファクター（車重、ホイールベース長、重心位置、タイヤの横力で決まる定数と見なせる値）を示す。また、Ｖspは自車速［ｍ／ｓ］を、ＬWBはホイールベース長［ｍ］を、Ｓteerは操舵角［rad］（右切りが正）をそれぞれ示す。
【００１１】
ステップ２０４では車幅（左右）方向のスキャンニング位置を決定する。なお、この明細書ではカメラ３の撮像画像の一部に画像処理領域を設定して車両の検出処理を行う際に、画像処理領域の設定地点を自車前方の前後方向と車幅（左右）方向に複数箇所設定し、それらの設定地点の画像処理領域において順に車両検出処理を行うが、その動作を“スキャンニング”と呼ぶ。この第１の実施の形態では５０ｍsecごとに自車線上の中央→右側→左側→中央・・の順に車幅方向にスキャンニングするとともに、各車幅方向の位置において自車の前後方向にスキャンニングして車両の検出を行う。なお、撮像画像上の車幅方向の画像処理領域の設定位置は自車線上に限定されず、自車線から隣接車線にはみ出した位置に画像処理領域を設定してもよい。
【００１２】
具体的には、図３に示すように、時刻ｔ［ｓ］で自車線上の中央を手前から前方の順に画像処理領域を設定してスキャンニングした後、時刻（ｔ＋０．０５）［ｓ］で自車線上の右側を手前から前方の順に画像処理領域を設定してスキャンニングし、さらに時刻（ｔ＋０．１）［ｓ］で自車線上の左側を手前から前方の順に画像処理領域を設定してスキャンニングする。自車線上の車幅方向のスキャンニング位置をＭalfunScanで表すと、
ＭalfunScan＝ＭalfunScan＋１  ・・・（２），
if（ＭalfunScan＞２）ＭalfunScan＝０  ・・・（３）
（２）、（３）式において、if（expression）statementとは、expressionを満たす場合にstatementを実施する関数である。ＭalfunScanは車幅方向のスキャンニング位置を示すカウンターであり、初期値０（中央）、１（右側）、２（左側）の順に車幅方向にスキャンニングする。
【００１３】
ステップ２０５では自車前後方向のスキャンニング位置を決定する。前後方向のスキャンニングは、図３に示すように自車に近い手前から自車から遠い前方へ順に画像処理領域を設定して行う。自車前後方向のスキャンニング位置をＬoopで表すと、
Ｌoop＝Ｌoop＋１  ・・・（４），
if（Ｌoop＞５）Ｌoop＝０  ・・・（５）
（４）、（５）式において、Ｌoopは自車前後方向のスキャンニング位置を示すカウンターであり、初期値０（自車に最も近い位置）から５（自車から最も遠い位置）までの６カ所において前後方向にスキャンニングする。
【００１４】
ステップ２０６では、画像処理領域を設定するために自車から所定の距離に相当する地点を決める。
obj_Ｙ＝Ｋy・Ｌoop＋ＩnitDist  ・・・（６），
ＬateralSlide＝Ｋx・（ＭalScanDir−１）  ・・・（７），
if（Ｒow＞０）obj_Ｘ＝Ｒow−√（Ｒow２−obj_Ｙ２）＋ＬateralSlide＋ＣamInsOfs
・・・（８），
els  obj_Ｘ＝Ｒow＋√（Ｒow２−obj_Ｙ２）＋ＬateralSlide＋ＣamInsOfs
・・・（９）
ここで、obj_Ｙとobj_Ｘが画像処理領域の設定地点の前後、左右の位置［ｍ］を表し、ＩnitDistは前後方向にスキャンニングする際の最も近距離側の位置［ｍ］であり、ＬateralSlideは車幅方向のスキャンニングにおける自車予測進路の正面からのスライド量［ｍ］である。ＩnitDistの値は、通常はＶsp［ｍ／ｓ］の値をそのまま用いる。すなわち、時速１００km/hではＩnitDist＝約２８ｍ／ｓである。これは、車間時間ＴＨＷ＝１ｓより遠方に限定することを意味している。電子地図情報などで自動車専用道路を走行中であると判断できる場合には、この値を通常より長めに設定してもよい。同様に、ＶＩＣＳなどの交通情報から混雑状況を把握し、現在の走行地点が混雑している場合にはＩnitDistを通常より短く設定してもよい。また、Ｋy、Ｋxとは自車の前後方向と車幅方向のスキャンニングにおける１ステップの間隔を意味する値［ｍ］である。さらに、ＣamInsOfsは自車の中心からカメラ３の取り付け位置までのオフセット量［ｍ］であって、if（expression）statement１  else  statement２とは、expressionを満たす場合にstatement１を実行し、expressionを満たさない場合にstatement２を実行する関数である。
【００１５】
ステップ２０７では自車から所定の距離にある地点を撮像画像上の座標に変換し、次式により画像処理領域を設定する。
disp_obj_ＹＡ＝yo＋focusＶ・ＣＡＭ_h2／obj_Ｙ  ・・・（１０），
disp_obj_ＹＢ＝yo＋focusＶ・ＣＡＭ_h／obj_Ｙ  ・・・（１１），
disp_obj_ＸＬ＝xo＋focusＨ・obj_Ｘ／obj_Ｙ−focusＨ・ＰrocessＷide／obj_Ｙ
・・・（１２），
disp_obj_ＸＲ＝xo＋focusＨ・obj_Ｘ／obj_Ｙ＋focusＨ・ＰrocessＷide／obj_Ｙ
・・・（１３）
ここで、disp_obj_ＹＡは画像処理領域の上側、disp_obj_ＹＢは画像処理領域の下側、disp_obj_ＸＬは画像処理領域の左側、disp_obj_ＸＲは画像処理領域の右側の座標である。また、yo、xoは消失点の縦方向座標［pix：画素数］と横方向座標［pix］（カメラ３の取り付け位置と向きで決まるパラメーター）である。同様に、focusＶとfocusＨは鉛直方向と水平方向のカメラ３の焦点距離を画素換算した値［pix］（カメラ３の画角と受光素子の解像度で決まるパラメーターで、受光面が正方格子である場合にはfocusＶ＝focusＨとなる）である。また、ＣＡＭ_hはカメラ３の取り付け高さ［ｍ］であり、ＣＡＭ_h2はＣＡＭ_hから前方車両候補として考慮すべき物体の高さを減算した値である。ＰrocessWideは画像処理領域の幅を決めるパラメーターであり、自車幅以下の値［ｍ］であって、この一実施の形態では１．４［ｍ］とする。さらに、ＣＡＭ_h−ＣＡＭ_h2≪ＰrocessWideの関係がある。
【００１６】
ステップ２０８では、ステップ２０６と２０７で設定した画像処理領域に対して特徴抽出のためのエッジ検出処理を、例えば以下の(ａ)から(ｄ)の手順で行う。(ａ)設定した画像処理領域について、Ｓobelフィルター演算（隣接する画素間での濃淡変化を微分演算により求める演算手法であって、画像上における道路と車両の境界のように濃淡変化が大きい部分だけを集めることが可能な画像処理手法）などにより、エッジ画像を求める。(ｂ)上記(ａ)で求めたエッジ画像の濃淡値の平均値と分散値からしきい値を設定し、エッジ画像を２値化する。つまり、エッジ画像について、しきい値を超える領域とそうでない領域とに分類することによって、明確なエッジ部分とエッジでない部分の２つに分類する。(ｃ)明確なエッジとして分類されたエッジの中から、地平線に相当するような水平方向に長いエッジではなく、垂直方向に長いエッジのみを集め、この集合をＶertEdgeとする。(ｄ)同様に、明確なエッジとして分類されたエッジの中から、水平方向に長いエッジのみを集め、この集合をＨoriEdgeとする。
【００１７】
ステップ２０９では、ステップ２０８で抽出した特徴量を前方車両として検出するか否かの判定を、例えば次の(ｅ)〜(ｇ)の手順で行う。(ｅ)ステップ２０６で求めた画像処理領域の設定地点obj_Ｙを用いて検知したい車両の大きさ（幅）の最も広い限界値obj_Ｗfと最も狭い限界値obj_Ｗnを次式により画素数に換算して求める。
obj_Ｗn＝（focusＨ・pＷn）／obj_Ｙ  ・・・（１４），
obj_Ｗf＝（focusＨ・pＷf）／obj_Ｙ  ・・・（１５）
ここで、pＷnとpＷfはそれぞれ、検知したい車両の横方向の大きさ（幅）［ｍ］であり、例えばpＷn＝１．０［ｍ］、pＷf＝２．５［ｍ］とする。
【００１８】
(ｆ)鉛直エッジ群ＶertEdgeの中から上記(ｅ)で定めた範囲に入る鉛直方向エッジの対（ペア）を求め、 この画像上の座標の集合をＣarCanEdge_Left（ペアの左側に相当する鉛直方向エッジの水平座標）と、ＣarCanEdge_Right（ペアの右側に相当する鉛直方向エッジの水平座標）とする。これを数式化すると次式になる。
ＢodySpace＝ＣarCanEdge_Right［ｉ］−ＣarCanEdge_Left［ｉ］  ・・・（１６），
obj_Ｗn＜ＢodySpace＜obj_Ｗf  ・・・（１７）
ここで、ｉは（１７）式を満足する鉛直エッジのインデックスであり、ｉの数だけ画像処理領域内に検出したい車両の候補が存在することを意味する。
【００１９】
(ｇ)水平エッジ群ＨoriEdgeの中から、上記(ｆ)で求めたすべてのエッジペアに対してその中間に存在する水平エッジと鉛直エッジペアの組み合わせを見つけ、これを満足するエッジの組み合わせをそれぞれＣarEdge_L（車両として検知する領域の左側座標）、ＣarEdge_R（車両として検知する領域の右側座標）、ＣarEdge_B（車両として検知する領域の下側座標）とする。これを数式化すると次式になる。
if（ＣarCanEdge_Left［ｉ］＜ＨoriEdge_x［ｊ］＜ＣarCanEdge_Right［ｉ］｛
・・・（１８），
ＣarEdge_L［ｋ］＝ＣarCanEdge_Left［ｉ］            ・・・（１９），
ＣarEdge_R［ｋ］＝ＣarCanEdge_Right［ｉ］            ・・・（２０），
ＣarEdge_B［ｋ］＝ＨoriEdge_x［ｊ］                  ・・・（２１），
ｋ＝ｋ＋１                                          ・・・（２２），
｝
これにより、ＣarEdge_LとＣarEdge_RとＣarEdge_Bの組み合わせから、Ｈ型のエッジパターンが検出される。このとき、最も画面の下側に存在するＣarEdge_Bのインデックス番号をｋbottomとすると、ＣarEdge_L［ｋbottom］とＣarEdge_R［ｋbottom］とＣarEdge_B［ｋbottom］の組み合わせからなる領域がＵ字型のエッジパターンになる。ここで、ＨoriEdge_xは水平エッジの水平座標であり、ｊは水平エッジのインデックスを意味し、ｋは水平エッジと鉛直エッジの組み合わせから車両として判断した画像特徴のインデックスを意味する。（１８）式から（２２）式はすべての水平エッジとすべての鉛直エッジペアに対して行われる処理である。
【００２０】
ステップ２１０では、ステップ２０９で車両を検知できたか否かを確認し、車両を検知した場合にはステップ２１２へ進み、その後のスキャンニングを途中でも中止する。
【００２１】
ステップ２１１では、次式の条件を満足する場合には前後方向のスキャンニングを続けるため、ステップ２０５へ進む。条件を満足しない場合はステップ２１２へ進む。
if（Ｌoop＜５）goto［step２０５］  ・・・（２３）
ここで、goto［step＊＊＊］とは、＊＊＊に記載のステップ番号へ進むことを意味する関数である。
【００２２】
ステップ２１２では次式により検出車両の位置を算出し、さらに車両発見終了を意味する状態遷移変数Ｍode＝ＩnitDetectからＭode＝Ｔrackingに移行してそれを後段へ出力する。
ＤetectObj_tate＝focusＶ・ＣＡＭ_h／（ＣarEdge_B［kk］−yo）  ・・・（２４），
ＤetectObj_yoko＝（（（ＣarEdge_L［kk］＋ＣarEdge_R［kk］）／２）−xo）・obj_Ｙ／focusＨ  ・・・（２５）
ＤetectObj_haba＝（ＣarEdge_R［kk］−ＣarEdge_L［kk］）・obj_Ｙ／focusＨ
・・・（２６）
ここで、ｋｋはステップ２０９で求めたｋの中で最も大きい領域を構成するエッジ組み合わせのインデックス番号である。最大領域を選ぶ理由は、設定領域内に複数の車両が存在する場合に、前方車両の部分的な検知をなくし、全体を検知するためである。
【００２３】
ステップ２１３では今回の撮像結果における前方車両発見処理を終了する。
【００２４】
図３および図４は第１の実施の形態による画像処理領域の設定の様子を示す図である。図３において、時刻ｔ［ｓ］でカメラ３の撮像画像を入力し、自車線中央を手前（Ｌoop＝０）から自車前方へ等間隔（（６）式のＫy［ｍ］）に画像処理領域の設定地点を設定し、図４に示すように手前の領域の面積を最大にして自車前方になるほど面積が小さくなるように画像処理領域を設定する。同様に、時刻（ｔ＋０．０５）［ｓ］においてカメラ３の撮像画像を入力し、自車線右側を手前から自車前方へ等間隔に、自車前方になるほど小さい面積の画像処理領域を設定する。さらに、時刻（ｔ＋０．１）［ｓ］においてカメラ３の撮像画像を入力し、自車線左側を手前から自車前方へ等間隔に、自車前方になるほど小さい面積の画像処理領域を設定する。
【００２５】
このように第１の実施の形態によれば、高性能な車両検知が単眼カメラで可能になる。すなわち、画像処理領域を非常に小さくして悪天候にも頑強な車両検知を可能にした。また、小さい画像処理領域であるが走行路に沿って高速に走査でき、ＣＰＵの演算負荷を抑制することができる。さらに、誤って背景を車両と誤認することなく、車両を確実に捕捉できる。
【００２６】
《発明の第２の実施の形態》
上述した第１の実施の形態では１枚の撮像画像に対しては自車の前後方向のみにスキャンニングし、撮像画像を更新しながら車幅方向にスキャンニングする例を示したが、演算負荷に余裕のある高速ＣＰＵを用いる場合には、１枚の撮像画像に対して自車の前後方向のスキャンニングと車幅方向のスキャンニングとを同時に行うことができる。なお、この第２の実施の形態の構成は図１に示す第１の実施の形態の構成と同様であり、説明を省略する。
【００２７】
図５は第２の実施の形態の車両検出処理を示すフローチャートである。このフローチャートにより、第２の実施の形態の動作を説明する。外界認識装置５は所定時間（この第２の実施の形態では５０ｍsec）ごとにこの車両検出処理を実行する。
【００２８】
ステップ３０１〜３０３の処理は上述した図２に示すステップ２０１〜２０３の処理と同様であり、説明を省略する。ステップ３０４の処理は図２に示すステップ２０５の処理と同様であり（自車前後方向のスキャンニング）、説明を省略する。ステップ３０５の処理は図２に示すステップ２０４の処理と同様であり（自車の車幅方向のスキャンニング）、説明を省略する。ステップ３０６〜３０７の処理は図２に示すステップ２０６〜２０７の処理と同様であり、説明を省略する。
【００２９】
ステップ３０８において、ステップ３０６と３０７で設定した画像処理領域に対して特徴抽出のためのエッジ検出処理を、例えば以下の(ａ)から(ｄ’)の手順で行う。(ａ)設定した画像処理領域について、Ｓobelフィルター演算（隣接する画素間での濃淡変化を微分演算により求める演算手法であって、画像上における道路と車両の境界のように濃淡変化が大きい部分だけを集めることが可能な画像処理手法）などにより、エッジ画像を求める。(ｂ)上記(ａ)で求めたエッジ画像の濃淡値の平均値と分散値からしきい値を設定し、エッジ画像を２値化する。つまり、エッジ画像について、しきい値を超える領域とそうでない領域とに分類することによって、明確なエッジ部分とエッジでない部分の２つに分類する。
【００３０】
(ｃ’)明確なエッジとして分類されたエッジの中から、地平線に相当するような水平方向に長いエッジではなく、鉛直方向に長いエッジのみを集め、それらの内から次式の条件を満足するものだけに限定して集合ＶerEdgeとする。
ｖEdgeLength_S＝（focusＶ・pＨs）／obj_Ｙ  ・・・（２７），
ｖEdgeLength_T＝（focusＶ・pＨt）／obj_Ｙ  ・・・（２８），
ｖEdgeLength_S＜ＶerEdge_Height＜ｖEdgeLength_T  ・・・（２９）
ここで、pＨsとpＨtはそれぞれ特徴量として導出したいエッジの長さ［ｍ］であり、例えばpＨs＝０．３ｍ、pＨt＝１．０ｍとする。そして、ＶerEdge_HeightとはＶerEdgeの集合におけるエッジの長さを意味する集合である。
【００３１】
(ｄ’)同様に、明確なエッジとして分類されたエッジの中から、水平方向に長いエッジのみを集め、それらの内から次式の条件を満足するものだけに限定して集合ＨoriEdgeとする。
ｈEdgeLength_n＝（focusＨ・pＷ1）／obj_Ｙ  ・・・（３０），
ｈEdgeLength_w＝（focusＨ・pＷ2）／obj_Ｙ  ・・・（３１），
ｈEdgeLength_n＜ＨoriEdge_Length＜ｈEdgeLength_w  ・・・（３２）
ここで、pＷ1とpＷ2はそれぞれ特徴量として導出したいエッジの長さ［ｍ］であり、例えばpＷ1＝０．４ｍ、pＷ2＝２．５ｍとする。そして、ＨoriEdge_LengthとはＨoriEdgeの集合におけるエッジの長さを意味する集合である。
【００３２】
ステップ３０９〜３１０の処理は図２に示すステップ２０９〜２１０の処理と同様であり、説明を省略する。ステップ３１１では次式の条件を満足する場合には車幅（左右）方向のスキャンニングを続けるため、ステップ３０５へ進む。
if（ＭalfunScan＜２）goto［step３０５］  ・・・（３３）
ステップ３１２の処理は図２に示すステップ２１１の処理（縦方向スキャンニングの後処理）と同様であり、説明を省略する。また、ステップ３１３〜３１４の処理は図２に示すステップ２１２〜２１３の処理と同様であり、説明を省略する。
【００３３】
図６は第２の実施の形態による画像処理領域の設定の様子を示す図である。時刻ｔ［ｓ］でカメラ３の撮像画像を入力し、自車に近い側の左側から中央、右側の順に車幅方向にスキャンニングした後、所定間隔（（６）式のＫy［ｍ］）だけ自車から遠い前方へ移動し、その位置で車幅方向にスキャンニングする。この動作を繰り返し、自車の車幅方向と前後方向にスキャンニングする。なお、図４に示すように、自車前後方向の手前の領域の面積を最大にして自車前方になるほど面積が小さくなるように画像処理領域を設定する。同様に、時刻（ｔ＋０．０５）［ｓ］においてカメラ３の撮像画像を入力し、自車の車幅方向と前後方向にスキャンニングする。さらに、時刻（ｔ＋０．１）［ｓ］においてカメラ３の撮像画像を入力し、自車の車幅方向と前後方向にスキャンニングする。
【００３４】
このように第２の実施の形態によれば、高性能な車両検知が単眼カメラで可能になる。すなわち、高速のＣＰＵを用いて１枚の撮像画像の中を前後左右に一気にスキャンニングするため、前方車両を発見するまでの時間が短縮できること、および、特徴量として導出するエッジの長さを自車からの距離に応じて規定するため、遠近ともに適切な長さのエッジを車両の特徴として導出でき、不検出や誤検出の頻度を低減できる。
【００３５】
《発明の第３の実施の形態》
上述した第１および第２の実施の形態では自車の前後方向のスキャンニングは等間隔で行い、車幅方向のスキャンニングは一方向で行うものであるが、この第３の実施の形態では、前後方向のスキャンニング間隔を自車速に応じて変え、車幅方向のスキャンニングを左右両方から行う。なお、この第３の実施の形態の構成は図１に示す第１の実施の形態の構成と同様であり、説明を省略する。
【００３６】
図７は第３の実施の形態の車両検出処理を示すフローチャートである。このフローチャートにより、第３の実施の形態の動作を説明する。外界認識装置５は所定時間（この第１の実施の形態では５０ｍsec）ごとにこの車両検出処理を実行する。
【００３７】
ステップ４０１〜４０３の処理は、図２に示すステップ２０１〜２０３の処理と同様であり、説明を省略する。ステップ４０４の処理は図２に示すステップ２０４の処理と同様であるが、（３）式の代わりに以下に示す（３’）式を用いる。
if（ＭalfunScan＞３）ＭalfunScan＝０  ・・・（３’）
ステップ４０５の処理は図２に示すステップ２０５の処理と同様であり、説明を省略する。
【００３８】
ステップ４０６の処理は図２に示すステップ２０６の処理と同様であるが、（６）、（７）式の代わりに次に示す（３４）、（３５）式を用いる。
obj_Ｙ＝func１（Ｖsp，Ｌoop）＋ＩnitDist  ・・・（３４），
LateralSlide＝func２（ＭalScanDir）  ・・・（３５）
ここで、func１、func２はそれぞれ図９、図１０に示すような特性を有する関数である。図９において、自車速Ｖspが高くなるほどfunc１が大きくなり、かつまた、Ｌoopが大きくなるほど、つまり自車から遠い前方になるほどfunc１が大きくなる。したがって、自車の前後方向のスキャンニング間隔は、自車速Ｖspが高くなるほど広くなり、また、自車から遠い前方になるほど広くなる。
【００３９】
ステップ４０７〜４０８の処理は図５に示すステップ３０７〜３０８の処理と同様であり、説明を省略する。ステップ４０９〜４１３の処理は図２に示すステップ２０９〜２１３の処理と同様であり、説明を省略する。
【００４０】
図８は第３の実施の形態による画像処理領域の設定の様子を示す図である。時刻ｔ［ｓ］でカメラ３の撮像画像を入力し、自車線中央を手前（Ｌoop＝０）から自車前方へ自車速に応じた間隔で画像処理領域の設定地点を設定し、図４に示すように手前の領域の面積を最大にして自車前方になるほど面積が小さくなるように画像処理領域を設定する。次に、時刻（ｔ＋０．０５）［ｓ］においてカメラ３の撮像画像を入力し、自車線右側を手前から自車前方へ自車速に応じた間隔で、自車前方になるほど小さい面積の画像処理領域を設定する。さらに、時刻（ｔ＋０．１）［ｓ］においてカメラ３の撮像画像を入力し、ふたたび自車線中央を手前から自車前方へ自車速に応じた間隔で、自車前方になるほど小さい面積の画像処理領域を設定する。続く時刻（ｔ＋０．１５）［ｓ］においてカメラ３の撮像画像を入力し、自車線左側を手前から自車前方へ自車速に応じた間隔で、自車前方になるほど小さい面積の画像処理領域を設定する。また、時刻（ｔ＋０．２）［ｓ］でカメラ３の撮像画像を入力し、ふたたび自車線中央を手前から自車前方へ自車速に応じた間隔でに、自車前方になるほど小さい面積の画像処理領域を設定する。さらに、時刻（ｔ＋０．２５）［ｓ］でカメラ３の撮像画像を入力し、自車線右側を手前から自車前方へ自車速に応じた間隔で、自車前方になるほど小さい面積の画像処理領域を設定する。
【００４１】
このように第３の実施の形態によれば、高性能な車両検知が単眼カメラで可能になる。すなわち、自車の前後方向のスキャンニングにおいて、自車速が高くなるほど間隔を広くするとともに、自車から遠い前方になるほど間隔を広くするようにしたので、カメラ画像上の遠近感に応じたスキャンニング間隔とすることができ、画像上のしきい値変化を均等化できる。
また、車幅方向のスキャンニングを左右両方向から行うようにし、自車線中央におけるスキャンニング回数を多くした。一般に、白線が見えにくい悪天候時には車線の中央を走行する傾向が高く、前車が自車の正面に存在するケースが多い。そのため、車線中央における自車前後方向のスキャンニングの回数を多くすることによって、車両を検知するまでの時間を短縮できる。
【００４２】
《発明の第４の実施の形態》
上述した第１から第３の実施の形態では自車前後方向のスキャンニングにおける画像処理領域の設定地点の数を一定（６カ所）とする例を示したが、これを可変とする第４の実施の形態を説明する。なお、この第４の実施の形態の構成は図１に示す第１の実施の形態の構成と同様であり、説明を省略する。
【００４３】
図１１は第４の実施の形態の車両検出処理を示すフローチャートである。このフローチャートにより、第４の実施の形態の動作を説明する。外界認識装置５は所定時間（この第１の実施の形態では５０ｍsec）ごとにこの車両検出処理を実行する。
【００４４】
ステップ５０１の処理は図２に示すステップ２０１の処理と同様であるが、この第４の実施の形態ではさらに次の処理を加える。すなわち、画像処理負荷が低い場合にのみ、車幅（左右）方向のスキャンニングにおける画像処理領域の設定地点の個数を増加するフラグＥxcepWideCntをゼロクリアする。ステップ５０２〜５０４の処理は図２に示すステップ２０２〜２０４の処理と同様であり、説明を省略する。
【００４５】
ステップ５０５の処理は図２に示すステップ２０５の処理と同様であるが、（５）式に変えて次の（３６）式を用いる。
if（Ｌoop＞５）Ｌoop＝max（０，（ＣonstSR−ＩnitDist）／Ｋy  ・・・（３６）
ここで、max（Ａ、Ｂ）とはＡとＢを比較して大きい方の値を選択する関数である。また、ＣonstSRとは最も至近距離に画像処理領域を設定する際の距離［ｍ］である。例えばＣonstSR＝１０［ｍ］とし、自車が停止中の場合ではＶsp＝０［ｍ／ｓ］のため、ＩnitDist＝０［ｍ］となる。このため、自車前後方向のスキャンニング間隔をＫy＝５［ｍ］とすると、（３６）式はＬoop＝２となり、前後方向のスキャンニング１回あたり、Ｌoop∈［２，５］のため、画像処理領域の設定地点数は６から４に減少する。
【００４６】
ステップ５０６〜５０７の処理は図２に示すステップ２０６〜２０７の処理と同様であり、説明を省略する。ステップ５０８の処理は図５に示すステップ３０８の処理と同様であり、説明を省略する。また、ステップ５０９〜５１０の処理は図２に示すステップ２０９〜２１０の処理と同様であり、説明を省略する。
【００４７】
ステップ５１１では次の条件を満足する場合に車幅（左右）方向のスキャンニングにおける画像処理領域の設定地点数を増加させる。
if（obj_Ｙ＞ＣonstLR）｛                                  ・・・（３７）
if（ＥxcepWideCnt＝０）｛                                ・・・（３８）
ＥxcepWideCnt＝１                                      ・・・（３９）
LateralSlide＝Ｋx・（ＭalScanDir−１）−Ｋx／２        ・・・（４０）
If(Ｒow＞０)obj_Ｘ＝Ｒow−√(Ｒow２−obj_Ｙ２)＋LaterlSlide＋ＣamInsOfs
・・・（８）
else      obj_Ｘ＝Ｒow＋√（Ｒow２−obj_Ｙ２）＋LateralSlide＋ＣamInsOfs
・・・（９）
goto［step５０７］
｝
if（ＥxcepWideCnt＝１）｛                                    ・・・（４１）
ＥxcepWideCnt＝２                                          ・・・（４２）
LateralSlide＝Ｋx・（ＭalScanDir−１）＋Ｋx／２            ・・・（４３）
if（Ｒow＞０）obj_Ｘ＝Ｒow−√（Ｒow２−obj_Ｙ２）＋LateralSlide＋ＣamInsOfs
・・・（８）
els          obj_Ｘ＝Ｒow＋√（Ｒow２−obj_Ｙ２）＋LateralSlide＋ＣamInsOfs
・・・（９）
goto［step５０７］
｝
｝
ここで、ＣonstLRとは画像処理領域の面積が所定値以下となる距離［ｍ］を表している。画像処理の演算負荷が低いものと判断される場合には、通常の車幅（左右）方向のスキャンニング位置から半ステップほどの間隔を空けた地点に画像処理領域を設定することを意味している。
【００４８】
ステップ５１２〜５１４の処理は図２に示すステップ２１１〜２１３の処理と同様であり、説明を省略する。
【００４９】
図１２は第４の実施の形態による画像処理領域の設定の様子を示す図である。時刻ｔ１では通常走行が行われており、自車前後方向のスキャンニングでは６カ所の地点で広い面積の画像処理領域を設定する。次に、時刻ｔ２で高速走行になると、自車前後方向のスキャンニングでは車速に応じて設定地点の間隔を広くするとともに、画像処理領域の面積を小さくする。さらに、画像処理領域の面積が小さいので、自車から遠方の車幅方向のスキャンニングでは画像処理領域の設定地点数を増加する。また、時刻ｔ３で低速走行になった場合は、画像処理領域の面積を大きくして自車前後方向の画像処理領域の設定地点数を低減する。
【００５０】
このように第４の実施の形態によれば、画像処理領域の面積が大きい場合は、自車前後方向のスキャンニングにおける画像処理領域の設定地点数を低減するようにした。つまり、自車速が低い場合は大きな面積の画像処理領域を設定するので、自車前後方向の長い範囲でスキャンニングしても意味がなく、したがって、画像処理領域の設定地点数を低減することによって、演算負荷を軽減することができる。
また、高速走行時などで自車前後方向における画像処理領域の面積が小さい場合は、車幅方向の画像処理領域の設定地点数を増加するようにしたので、演算負荷の増加にならない範囲で探索領域の個数増加による車両検知の応答性を向上させることができる。
【００５１】
《発明の第５の実施の形態》
上述した第１の実施の形態では画像処理領域の設定地点までの距離に基づいて車両検出のためのしきい値を決定する例を示したが、画像処理領域で検出した特徴量の座標に基づいて車両検出のためのしきい値を決定する第５の実施の形態を説明する。なお、この第５の実施の形態の構成は図１に示す第１の実施の形態の構成と同様であり、説明を省略する。
【００５２】
図１３は第５の実施の形態の車両検出処理を示すフローチャートである。このフローチャートにより、第５の実施の形態の動作を説明する。外界認識装置５は所定時間（この第１の実施の形態では５０ｍsec）ごとにこの車両検出処理を実行する。ステップ６０１〜６０７の処理は図２に示すステップ２０１〜２０７の処理と同様であり、説明を省略する。また、ステップ６０８の処理は図５に示すステップ３０８の処理と同様であり、説明を省略する。
【００５３】
ステップ６０９において、ステップ６０８で導出した特徴量に基づいて次の(ｈ)から(ｋ)の手順により前方車両として検出するか否かの判断を行う。(ｈ)ステップ６０６で求めた画像処理領域の設定地点obj_Ｙを次式により高精度化する。
if（ＨoriEdge_Nunb＞０）｛
obj_Ｙ＝focusＶ・ＣＡＭ_h／（ＨoriEdge_Row［max_row］−ｙo）  ・・・（４４）
｝
ここで、ＨoriEdge_Rowはステップ６０８で導出した水平方向エッジにおける鉛直方向の座標の集合であり、max_rowはこの中で最も画面下側に位置する鉛直座標のインデックス番号である。これにより、Ｕ字型のエッジとなる。また、ＨoriEdge_Nunbとは水平エッジの個数であり、もし水平エッジが存在しない場合にはobj_Ｙの値は（６）式で設定されたままの値である。
【００５４】
(ｉ)上記(ｈ)で求めたobj_Ｙを用いて次式により検知したい車両の間隔obj_Ｗf（最も広い限界値）、obj_Ｗn（最も狭い限界値）を画素数に換算して求める。
obj_Ｗn＝（focusＨ・pＷn）／obj_Ｙ  ・・・（１４），
obj_Ｗf＝（focusＨ・pＷf）／obj_Ｙ  ・・・（１５）
(ｊ)鉛直エッジ群ＶertEdgeの中から上記(ｉ)で定めた範囲に入る鉛直エッジの対（ペア）を求め、この画像上の座標の集合をＣarCanEdge_Left（ペアの左側に相当する鉛直方向エッジの水平座標）とＣarCanEdge_Right（ペアの右側に相当する鉛直方向エッジの水平座標）とする。これを数式化すると次式になる。
ＢodySpace＝ＣarCanEdge_Right［ｉ］−ＣarCanEdge_Left［ｉ］  ・・・（１６），
obj_Ｗh＜ＢodySpace＜obj_Ｗf    ・・・（１７）
【００５５】
(ｋ)水平エッジ群ＨoriEdgeの中から上記(ｊ)で求めたすべてのエッジペアに対して、その中間に存在する水平エッジと鉛直エッジペアの組み合わせを見つけ、これを満足するエッジの組み合わせをそれぞれＣarEdge_Ｌ（車両として検知する領域の左側座標）、ＣarEdge_Ｒ（車両として検知する領域の右側座標）、ＣarEdge_Ｂ（車両として検知する領域の下側座標）とする。これを数式化すると次式になる。
if（ＣarCanEdge_Left［ｉ］＜ＨoriEdge_x［ｊ］＜ＣarCanEdge_Right［ｉ］｛
・・・（１８），
ＣarEdge_L［ｋ］＝ＣarCanEdge_Left［ｉ］            ・・・（１９），
ＣarEdge_R［ｋ］＝ＣarCanEdge_Right［ｉ］            ・・・（２０），
ＣarEdge_B［ｋ］＝ＨoriEdge_x［ｊ］                  ・・・（２１），
ｋ＝ｋ＋１                                          ・・・（２２），
｝
【００５６】
ステップ６１０〜６１３の処理は図２に示すステップ２１０〜２１３の処理と同様であり、説明を省略する。
【００５７】
この第５の実施の形態によれば高性能な車両検知が単眼カメラで可能となる。すなわち、車両を検出できたか否かを判断する際には、画像処理領域から導出した特徴量の座標に基づいて車両検出のためのしきい値を決定するようにしたので、背景や路上ペイントなどを誤検出する頻度を低減できる
【００５８】
《発明の第６の実施の形態》
上述した第５の実施の形態では画像処理領域から導出した特徴量の座標に基づいて物体検出のためのしきい値を決定する例を示したが、特徴量の長さに基づいて物体検出のためのしきい値を決定する第６の実施の形態を説明する。なお、この第６の実施の形態の構成は図１に示す第１の実施の形態の構成と同様であり、説明を省略する。
【００５９】
図１４は第６の実施の形態の車両検出処理を示すフローチャートである。このフローチャートにより、第６の実施の形態の動作を説明する。外界認識装置５は所定時間（この第１の実施の形態では５０ｍsec）ごとにこの車両検出処理を実行する。ステップ７０１〜７０８の処理は図１３に示すステップ６０１〜６０８の処理と同様であり、説明を省略する。
【００６０】
ステップ７０９において、ステップ７０８で導出した特徴量から前方車両として検出するか否かの判断を次の(ｌ)〜(ｏ)の手順で行う。(ｌ)ステップ７０６で求めた画像処理領域の設定地点obj_Ｙを次式により算出し直す。
if（ＨoriEdge_Numb＞０）｛
obj_Ｙ＝１．７・focusＶ／ＨoriEdge_Length［max_length］  ・・・（４５）
｝
ここで、ＨoriEdge_Lengthはステップ７０８で導出した水平方向エッジにおけるエッジ長さの集合であり、max_lengthはこの中で最も長いエッジのインデックス番号である。また、数値１．７は日本の一般的な車両の車幅を表す数値である。
【００６１】
(ｍ)上記(ｌ)で求めたobj_Ｙを用いて次式により検知したい車両の間隔obj_Ｗf（最も広い限界値）、obj_Ｗn（最も狭い限界値）を画素数に換算して求める。
obj_Ｗn＝（focusＨ・pＷn）／obj_Ｙ  ・・・（１４），
obj_Ｗf＝（focusＨ・pＷf）／obj_Ｙ  ・・・（１５）
(ｎ)鉛直エッジ群ＶertEdgeの中から上記(ｍ)で定めた範囲に入る鉛直方向エッジの対（ペア）を求め、この画像上の座標の集合をＣarCanEdge_Left（ペアの左側に相当する鉛直方向エッジの水平座標）とＣarCanEdge_Right（ペアの右側に相当する鉛直方向エッジの水平座標）とする。これを数式化すると次式になる。
ＢodySpace＝ＣarCanEdge_Right［ｉ］−ＣarCanEdge_Left［ｉ］  ・・・（１６），
obj_Ｗh＜ＢodySpace＜obj_Ｗf    ・・・（１７）
【００６２】
(ｏ)水平エッジ群ＨoriEdgeの中から上記(ｎ)で求めたすべてのエッジペアに対して、その中間に存在する水平エッジと鉛直エッジペアの組み合わせを見つけ、これを満足するエッジの組み合わせをそれぞれＣarEdge_Ｌ（車両として検知する領域の左側座標）、ＣarEdge_Ｒ（車両として検知する領域の右側座標）、ＣarEdge_Ｂ（車両として検知する領域の下側座標）とする。これを数式化すると次式になる。
if（ＣarCanEdge_Left［ｉ］＜ＨoriEdge_x［ｊ］＜ＣarCanEdge_Right［ｉ］｛
・・・（１８），
ＣarEdge_L［ｋ］＝ＣarCanEdge_Left［ｉ］            ・・・（１９），
ＣarEdge_R［ｋ］＝ＣarCanEdge_Right［ｉ］            ・・・（２０），
ＣarEdge_B［ｋ］＝ＨoriEdge_x［ｊ］                  ・・・（２１），
ｋ＝ｋ＋１                                          ・・・（２２），
｝
【００６３】
ステップ７１０〜７１３の処理は図１３に示すステップ６１０〜６１３の処理と同様であり、説明を省略する。
【００６４】
この第６の実施の形態によれば高性能な車両検知が単眼カメラで可能となる。すなわち、車両を検知できたか否かを判断する際に、画像処理領域から導出した特徴量の長さに基づいて車両検知のためのしきい値を決定するようにしたので、背景や路上ペイントなどを誤検出する頻度を低減することができる。
【００６５】
このように一実施の形態によれば、自車の前方を撮像した画像の一部に画像処理領域を設定し、設定した画像処理領域から画像の特徴を導出するとともに、導出した特徴に基づいて車両の存在を判定する車両用画像処理装置において、撮像画像の中の自車に近い位置から遠い位置へ順に画像処理領域を設定し、自車に近い位置から遠い位置へ行くにしたがって画像処理領域を狭くするようにした。
撮像画像の中の自車に近い位置では先行車は大きく写し込まれ、自車から遠い位置になるにほど先行車は小さく写し込まれている。したがって、撮像画像の中の自車に近い位置から遠い位置へ順に画像処理領域を設定し、自車に近い位置から遠い位置へ行くにしたがって画像処理領域を狭くすることによって、先行車以外の物体を捕捉する確立が少なくなり、面積の小さい画像処理領域を設定して悪天候時における車両検知性能を向上させながら、撮像画像の中の広い範囲に多くの画像処理領域を設定して早く、確実に車両を検出できる。
【００６６】
また、一実施の形態によれば自車の進路を予測し、予測した自車進路に沿って画像処理領域を設定するようにしたので、曲線路を走行中であっても先行車を早く、確実に検出できる。
【００６７】
一実施の形態によれば撮像画像の中の自車に近い位置から遠い位置へ順に画像処理領域が設定されるたびに、設定された画像処理領域において画像の特徴を導出するとともに、画像の特徴に基づいて車両の存在を判定し、車両の存在が判定されたら一連の画像処理を終了するようにした。
通常、先行車追従走行制御装置や車間距離制御装置においては、自車線上の自車に最も近い先行車のみを検出すればよいから、それらのアプリケーションに適用することによってＣＰＵの演算負荷を軽減しながら、先行車を早く、確実に検出することができる。
【００６８】
また、一実施の形態によれば、撮像画像上の自車の車幅方向の複数の位置において、撮像画像の中の自車に近い位置から遠い位置へ順に画像処理領域を設定し、自車に近い位置から遠い位置へ行くにしたがって画像処理領域を狭くしたので、悪天候時の車両検知の確立を高めるために画像処理領域を小さくしても、自車の正面から横へずれた位置を走行する先行車を確実に検出することができる。
さらに、撮像画像上の自車の正面における画像処理領域の設定回数を、自車の左右の位置における画像処理領域の設定回数よりも多くすることによって、自車の正面に存在する確立が高い先行車をより早く検出することができる。
【００６９】
一実施の形態によれば小さな面積の画像処理領域を設定する場合には、自車の車幅方向に多くの画像処理領域を設定するようにしたので、演算負荷を増加させずに、車両探索領域の数を増やすことができ、早く車両を検出できる確立が高くなる。
【００７０】
一実施の形態によれば大きな面積の画像処理領域を設定する場合には、自車の前後方向の画像処理領域の設定数を少なくするようにした。車速が低い場合には大きな面積の画像処理領域を設定するが、車速が低い場合には自車から遠方まで画像処理領域を数多く設定しても意味がない。したがって、この場合は自車前後方向の画像処理領域の設定数を少なくすることによって、ＣＰＵの演算負荷を軽減することができる。
【００７１】
一実施の形態によれば自車から所定距離の地点に相当する撮像画像上の位置に画像処理領域を設定するようにしたので、画像処理領域で検出される車両までの距離を正確に把握できる。
【００７２】
一実施の形態によれば自車からの距離が遠くなるほど撮像画像上の画像処理領域の設定位置間隔を広くするようにしたので、自車の前後方向における画像処理領域の設定位置を撮像画像上の遠近感に応じた間隔にすることができる。また、各画像処理領域における車両検出のしきい値を均等化することができる。
【００７３】
一実施の形態によれば撮像画像上の画像処理領域の設定地点を自車からの距離に換算し、自車からの換算距離に基づいて画像の特徴から車両の存在を判定するためのしきい値を設定するようにしたので、撮像画像上の画像処理領域の設定地点における車両判定しきい値を正しく設定することができ、単眼カメラ単独で前方車両を検出する際の誤検出と不検出の頻度を低減することができる。
【００７４】
一実施の形態によれば画像処理領域から導出した特徴の位置座標に基づいて車両の存在を判定するためのしきい値を設定するようにしたので、背景や路上ペイントなどを車両と誤検出する頻度を低減できる。また、一実施の形態によれば画像処理領域から導出した特徴の長さに基づいて車両の存在を判定するためのしきい値を設定するようにしたので、背景や路上ペイントなどを車両と誤検出する頻度を低減できる。
【００７５】
なお、自車の車幅方向の大きさが車両２台分以下の画像処理領域とし、自車の車幅方向の大きさが前後方向の大きさよりも大きい画像処理領域を設定する。これにより、しきい値の適正化が可能となり、悪天候時でも先行車検出が頑強に実施できる。また、上空に存在する看板や陸橋などの背景を画像処理領域から排除でき、それらを車両と誤検出する頻度を低減できる。
【００７６】
特許請求の範囲の構成要素と一実施の形態の構成要素との対応関係は次の通りである。すなわち、カメラ３が撮像手段を、外界認識装置５が領域設定手段、特徴導出手段、車両判定手段および進路予測手段をそれぞれ構成する。なお、本発明の特徴的な機能を損なわない限り、各構成要素は上記構成に限定されるものではない。
【図面の簡単な説明】
【００７７】
【図１】第１の実施の形態の構成を示す図である。
【図２】第１の実施の形態の車両検出処理を示すフローチャートである。
【図３】第１の実施の形態による画像処理領域の設定の様子を示す図である。
【図４】第１の実施の形態による画像処理領域の設定の様子を示す図である。
【図５】第２の実施の形態の車両検出処理を示すフローチャートである。
【図６】第２の実施の形態による画像処理領域の設定の様子を示す図である。
【図７】第３の実施の形態の車両検出処理を示すフローチャートである。
【図８】第３の実施の形態による画像処理領域の設定の様子を示す図である。
【図９】関数func１の特性を示す図である。
【図１０】関数func２の特性を示す図である。
【図１１】第４の実施の形態の車両検出処理を示すフローチャートである。
【図１２】第４の実施の形態による画像処理領域の設定の様子を示す図である。
【図１３】第５の実施の形態の車両検出処理を示すフローチャートである。
【図１４】第６の実施の形態の車両検出処理を示すフローチャートである。
【符号の説明】
【００７８】
３  ＣＣＤカメラ
４  画像処理装置
５  外界認識装置
６  車速検出装置
７  操舵角検出装置
【図１】
2006018751.tif 000003
【図２】
2006018751.tif 000004
【図３】
2006018751.tif 000005
【図４】
2006018751.tif 000006
【図５】
2006018751.tif 000007
【図６】
2006018751.tif 000008
【図７】
2006018751.tif 000009
【図８】
2006018751.tif 000010
【図９】
2006018751.tif 000011
【図１０】
2006018751.tif 000012
【図１１】
2006018751.tif 000013
【図１２】
2006018751.tif 000014
【図１３】
2006018751.tif 000015
【図１４】
2006018751.tif 000016