本発明の実施の形態について、図1〜11を参照して説明する。図1は本発明の車両周囲監視装置の構成図であり、本発明の車両周囲監視装置は画像処理ユニット1により構成されている。画像処理ユニット1には、遠赤外線を検出可能な赤外線カメラ2R,2L(本発明の撮像手段に相当する)、車両のヨーレートを検出するヨーレートセンサ3、車両の走行速度を検出する車速センサ4(本発明の車速検出手段に相当する)、運転者によるブレーキの操作量を検出するブレーキセンサ5、音声により注意喚起を行うためのスピーカ6、及び、赤外線カメラ2R,2Lにより得られた画像を表示すると共に、接触の可能性が高い対象物を運転者に視認させる表示を行うための表示装置7が接続されている。
図2を参照して、赤外線カメラ2R,2Lは、車両10の前部に、車両10の車幅方向の中心部に対してほぼ対象な位置に配置され、2台の赤外線カメラ2R,2Lの光軸を互いに平行とし、各赤外線カメラ2R,2Lの路面からの高さを等しくして固定されている。なお、赤外線カメラ2R,2Lは、撮像物の温度が高い程出力レベルが高くなる(輝度が大きくなる)特性を有している。また、表示装置7は、車両10のフロントウィンドウの運転者側の前方位置に画面7aが表示されるように設けられている。
また、図1を参照して、画像処理ユニット1は、マイクロコンピュータ(図示しない)等により構成された電子ユニットであり、赤外線カメラ2R,2Lから出力されるアナログの映像信号をデジタルデータに変換して画像メモリ(図示しない)に取り込み、該画像メモリに取り込んだ車両前方の画像に対して該マイクロコンピュータにより各種演算処理を行う機能を有している。
そして、該マイクロコンピュータに、車両監視用プログラムを実行させることによって、該マイクロコンピュータが、赤外線カメラ2Rにより撮像された第1画像から、実空間上の対象物の第1画像部分を抽出する対象物抽出手段20、赤外線カメラ2Lにより撮像された第2画像から、該第1画像部分と相関性を有する第2画像部分を抽出する対応画像抽出手段21、対象物抽出手段20により抽出された第1画像部分と対応画像抽出手段21により抽出された第2画像部分との視差を算出する視差算出手段22、視差算出手段22により同一の対象物についての視差の時系列データを算出するための、第1画像及び第2画像を取得するサンプリング期間を設定するサンプリング期間設定手段23、視差算出手段22により算出された同一の対象物についての視差の時系列データから、単位時間あたりの視差の変化率である視差勾配を算出する視差勾配算出手段24、視差勾配に基づいて対象物と車両10との距離を算出する第1の距離算出手段25、1つの視差のデータに基いて対象物と車両10との距離を算出する第2の距離算出手段26、第1の距離算出手段25により算出された距離の信頼性を判定する距離信頼性判定手段27、及び、車両10と対象物との接触可能性を判定する接触判定手段28として機能する。
次に、図3に示したフローチャートに従って、画像処理ユニット1による車両10の周辺の監視処理について説明する。画像処理ユニット1は、所定の制御周期毎に図3に示したフローチャートによる処理を実行して車両10の周辺を監視する。
画像処理ユニット1は、先ずSTEP1で赤外線カメラ2R,2Lから出力される赤外線画像のアナログ信号を入力し、続くSTEP2で該アナログ信号をA/D変換によりデジタル化したグレースケール画像を画像メモリに格納する。
なお、STEP1〜STEP2では、赤外線カメラ2Rによるグレースケール画像(以下、右画像という。)と、赤外線カメラ2Lによるグレースケール画像(以下、左画像という。)とが取得される。そして、右画像と左画像では、同一の対象物の画像部分の水平位置にずれ(視差)が生じるため、この視差に基づいて実空間における車両10から該対象物までの距離を算出することができる。
続くSTEP3で、画像処理ユニット1は、右画像を基準画像として2値化処理(輝度が閾値以上の画素を「1(白)」とし、該閾値よりも小さい画素を「0(黒)」とする処理)を行って2値画像を生成する。次のSTEP4〜STEP6は、対象物抽出手段20による処理である。対象物抽出手段20は、STEP4で、2値画像に含まれる各白領域の画像部分をランレングスデータ(2値画像のx(水平)方向に連続する白の画素のラインのデータ)化する。また、対象物抽出手段20は、STEP5で、2値画像のy(垂直)方向に重なる部分があるラインを一つの画像部分としてラベリングし、STEP6で、ラベリングした画像部分を監視対象物の画像候補として抽出する。
次のSTEP7で、画像処理ユニット1は、各画像候補の重心G、面積S、及び外接四角形の縦横比ASPECTを算出する。なお、具体的な算出方法については、例えば特開2001−6096号公報等に記載された一般的なものであるため、ここでは説明を省略する。そして、画像処理ユニット1は、続くSTEP8〜STEP9と、STEP20〜STEP22を平行して実行する。
STEP8で、画像処理ユニット1は、所定のサンプリング周期毎に赤外線カメラ2R,2Lにより撮像された画像に基づく2値画像から抽出された画像部分について、同一性判定を行い、同一の対象物の画像であると判定された画像部分の位置(重心位置)の時系列データをメモリに格納する(時刻間追跡)。また、STEP9で、画像処理ユニット1は、車速センサ4により検出される車速VCAR及びヨーレートセンサ3により検出されるヨーレートYRを読み込み、ヨーレートYRを時間積分することにより、車両10の回頭角θrを算出する。
また、STEP20〜STEP21は対応画像抽出手段21による処理である。図4を参照して、対応画像抽出手段21は、STEP20で、対象物抽出手段20により抽出された監視対象物の画像候補の中の一つを選択して、右画像のグレースケール画像30から対応する探索画像30a(選択された候補画像の外接四角形で囲まれる領域全体の画像)を抽出する。続くSTEP21で、対応画像抽出手段20は、左画像のグレースケール画像31から探索画像30aに対応する画像を探索する探索領域32を設定し、探索画像30aとの相間演算を実行して対応画像31aを抽出する。
続くSTEP22は、視差算出手段22による処理である。視差算出手段22は、探索画像30aの重心位置と対応画像31aの重心位置との差を視差dxとして算出し、STEP10に進む。
STEP10で、画像処理ユニット1は、探索画像30a及び対応画像31aに対応する実空間上の対象物と、車両10との距離を算出する「距離算出処理」を実行する。「距離算出処理」については、後述する。
続くSTEP11〜STEP15及びSTEP30は、接触判定手段28による処理である。STEP11で、接触判定手段28は、探索画像30aの座標(x,y)とSTEP10で算出された対象物と車両10との距離zを、実空間座標(X,Y,Z)に変換して、探索画像10aに対応する実空間上の対象物の位置の座標を算出する。なお、実空間座標(X,Y,Z)は、図2に示したように、赤外線カメラ2R,2Lの取り付け位置の中点の位置を原点0として、Xを車両10の車幅方向、Yを鉛直方向、Zを車両10の前方向に設定されている。また、画像座標は、画像の中心を原点とし、水平方向がx、垂直方向がyに設定されている。
次のSTEP12で、接触判定手段28は、車両10が回頭することによる画像上の位置ずれを補正するための回頭角補正を行う。また、STEP13で、接触判定手段28は、所定のモニタ期間内で撮像された複数の画像から得られた回頭角補正後の同一の対象物の実空間位置の時系列データから、対象物と車両10との相対的な移動ベクトルを算出する。
なお、対象物の実空間座標(X,Y,Z)及び移動ベクトルの具体的な算出方法については、前掲した特開2001−6096号公報に詳説されているので、ここでは説明を省略する。
次に、STEP14で、接触判定手段28は、車両10と対象物との接触可能性を判断して、注意喚起を行う必要があるか否かを判定する「注意喚起判定処理」を実行する。そして、「注意喚起判定処理」により、注意喚起を行う必要があると判定されたときは、STEP30に分岐してスピーカ6による注意喚起音の出力と、表示装置7への注意喚起表示を行う。一方、「注意喚起判定処理」により注意喚起を行う必要がないと判定されたときにはSTEP1に戻り、画像処理ユニット1は注意喚起を行わない。
画像処理ユニット1は、「注意喚起判定処理」において、対象物が余裕時間内に自車両10と接触する可能性、対象物が自車両周囲に設定した接近判定領域内に存在するか否か、対象物が接近判定領域外から接近判定領域内に進入して自車両10と接触する可能性、対象物が歩行者であるか否か、対象物が人工構造物であるか否か等を判定して、注意喚起を行う必要があるか否かを判定する。
なお、「注意喚起判定処理」の具体的な処理内容については、前掲した特開2001−6069に「警報判定処理」として詳説されているので、ここでは説明を省略する。
次に、図5〜図11を参照して、図3のSTEP10における「距離算出処理」について説明する。図4に示したように、実空間上の同一の対象物について、右画像から探索画像30aが抽出されると共に、左画像31から対応画像31aが抽出されて、視差dxが算出された場合、対象物と車両10間の距離Zは、基本的には以下の式(1)により算出することができる。
但し、Z:対象物と車両10との距離、f:赤外線カメラ2R,2Lの焦点距離、p:赤外線カメラ2R,2Lの画素ピッチ、D:赤外線カメラ2R,2Lの基線長、dx:視差。
しかし、実際には、(a)車両10の走行時における振動の影響、(b)赤外線カメラ2R,2Lを車両10に搭載するときのエイミング精度、(c)対応画像抽出手段21により同一の対象物の画像部分を抽出するときの相関演算による影響等の要因によって、車両と対象物との実際の距離(実距離)と、上記式(1)により算出した距離(算出距離)との間に誤差が生じる。
このような実距離と算出距離との誤差は、上記式(1)については、以下の式(2)に示したように、視差オフセットαとして影響が現れる。
そして、特に車両10と対象物との距離Zが長くなると視差算出手段22により算出される視差dxが小さくなって、上記式(2)の視差オフセットαの影響が無視できなくなる。そのため、算出距離を用いた接触判定手段28による対象物と車両10との接触可能性の判定精度が低下するという不都合が生じる。
ここで、図5(a)は、例えば、車両10が72km/hで走行しているときの視差dxと距離Zとの関係を、縦軸を視差dxに設定し、横軸を車両10と対象物との距離Zに設定して示したものである。図中d1は視差オフセットα=0のとき、d2は視差オフセットα=−2(pixel)のとき、d3は視差オフセットα=−4(pixel)のときを示している。
図5(a)から明らかなように、視差オフセットαの値に応じて距離に対応する視差dxの値が変化するため、距離の算出誤差が生じる。例えば、実際の車両10と対象物との距離が150mであるときに、視差オフセットα=−2(pixel)があると距離の算出値は205mとなり、視差オフセットα=−4(pixel)があると距離の算出値は322mとなる。
しかし、視差勾配は、視差オフセットが生じても変化しない。そこで、第1の距離算出手段25は、視差の時系列データから視差勾配を算出し、視差勾配を用いて対象物と車両10との距離を算出することによって、視差オフセットαの影響を排除している。
なお、右画像及び左画像から得られる同一の対象物の画像部分の視差は、本発明における同一対象物の画像部分の所定要素に相当する。また、視差の時系列データから算出される視差勾配は、本発明における所定要素の変化度合いに相当する。
次に、サンプリング期間設定手段23は、図6に示したフローチャートに従って、視差勾配を算出する際に用いる視差の時系列データを取得するサンプリング期間を設定する。サンプリング期間設定手段23は、STEP90で前回の制御周期で算出された対象物と車両10との距離L(n-1)のデータがメモリ(図示しない)に保持されているか否かを判断する。
ここで、画像処理ユニット1は、車両10の走行時に図3に示したフローチャートによる周辺の監視処理を行うため、前回の制御周期で算出された対象物と車両10との距離L(n-1)のデータがメモリに保持されているのは、車両10が走行している時となる。
STEP90で、前回の制御周期で算出された対象物と車両10との距離L(n-1)のデータがメモリ(図示しない)に保持されているときはSTEP91に進む。そして、サンプリング期間設定手段23は、車速センサ4により検出される車速VCARと、前回の制御周期における距離L(n-1)の算出時から現時点までの経過時間Δtを取得する。
続くSTEP92で、サンプリング期間設定手段23は、以下の式(3)により今回の制御周期における対象物と車両10との推定距離Leを算出する。
但し、Le:今回の制御周期における対象物と車両10との推定距離、L(n-1):前回の制御周期における対象物と車両10との算出距離、VCAR:車両10の車速、Δt:前回の制御周期における対象物と車両10との距離の算出時から現時点までの経過時間。
そして、サンプリング期間設定手段23は、図7(a)のa1に示した、推定距離Leとサンプリング期間Twとの対応マップに、推定距離Leを適用して得たサンプリング期間Twを、今回の制御周期におけるサンプリング期間Twとする。この場合、対象物と車両10との距離が短いほど、サンプリング期間Twが短い時間に設定される。
この場合、対象物が車両10に近付くに従ってサンプリング期間Twが短く設定される。そのため、図7(a)のa2に示したように、サンプリング期間Twを遠距離の対象物の距離算出精度を維持するための一定時間とした場合と比べて、対象物と車両10との距離を速やかに算出して、対象物を検知することができる。また、サンプリング期間Twにおける撮像画像の数が少なくて済むため、距離を算出する際の画像処理ユニット1の処理負荷を軽減することができる。
なお、本実施の形態では、上記式(3)により算出した対象物と車両10との推定距離Leを用いて、Leが短いほどサンプリング期間Twを短い時間に設定したが、前回の制御周期における対象物と車両10との算出距離L(n-1)を用いて、L(n-1)が短いほどサンプリングTwを短い時間に設定するようにしてもよい。
また、推定距離Leや算出距離L(n-1)には誤差が含まれるため、この誤差を考慮して、図7(a)のa3に示したように、サンプリング期間Twを階段状に設定するようにしてもよい。
また、図7(b)に示したように、推定距離Leが短いほど小さくなる係数k1(0<k≦1)を設定し、対象物と車両との距離が長いときを想定して予め設定したサンプリング期間の初期値に、この係数k1を乗じて今回の制御周期におけるサンプリング期間Twを設定するようにしてもよい。
一方、STEP90で、前回の制御周期で算出された対象物と車両10との距離L(n-1)のデータがメモリ(図示しない)に保持されていないときには、STEP100に分岐する。そして、サンプリング期間設定手段23は、車速センサ4により検出される車速VCARを取得する。
続くSTEP101で、サンプリング期間設定手段23は、図7(c)のb1に示した、車速VCARとサンプリング期間Twとの対応マップに、車速VCARを適用して得たサンプリング期間Twを、今回の制御期間におけるサンプリング期間Twとする。この場合、車両10の車速が低いほど、サンプリング期間Twが短い時間に設定される。
この場合、車速が低くなる場合として、市街地の狭い道路を走行しているような状況が想定されるが、この場合には脇道からの歩行者が飛び出すおそれがある。そこで、車速が遅いほどサンプリング期間Twを短い時間に設定することにより、このような歩行者との距離を算出するまでの時間を短くして、歩行者の検知の遅れが生じることを抑制することができる。
そして、サンプリング期間設定手段23は、STEP93で、STEP92又はSTEP101で設定されたサンプリング期間Tw以上の期間における時系列画像が得られるのを待ってSTEP94に進む。STEP94は第1の距離算出手段25による処理であり、第1の距離算出手段25は、STEP94で視差勾配を用いて対象物と車両10との距離を算出し、STEP95に進んで図3のフローチャートに戻る。
次に、図8に示したフローチャートに従って、図6のSTEP94における第1の距離算出手段25による処理について説明する。
第1の距離算出手段25は、STEP50で、予め設定された時系列時間Ts(例えば1秒間)の間に、視差算出手段22により算出された視差の時系列データから、視差が算出されなかったときのデータ(対応画像抽出手段21による相関演算が失敗したときのデータ等)や、視差の値が他のデータから極端に乖離しているデータを除外する外れ値除外処理を行う。
また、STEP51で、第1の距離算出手段25は、視差の時系列データの個数や視差を求める際の相関演算における相関度等に基づいて、視差の時系列データの信頼性を判定する。そして、視差の時系列データの信頼性があると判定したときは、次のSTEP52からSTEP53に進む。一方、視差の時系列データの信頼性がないと判定したときには、STEP52からSTEP60に分岐し、今回の視差の時系列データに基く接触判定手段28による処理が禁止される。
STEP53で、第1の距離算出手段25は、視差の時系列データから視差勾配を算出し、STEP54で視差勾配に基づいて車両10と対象物との距離を推定する。STEP54の距離推定処理の詳細については、後述する。
続くSTEP55は、距離信頼性判定手段27による処理である。距離信頼性判定手段27は、視差勾配を用いて、第1の距離算出手段25により算出された車両10と対象物との距離Z1と、例えば視差の時系列データの中間値を用いて、第2の距離算出手段26により上記式(1)によって算出された車両10と対象物との距離Z2とを比較する。
そして、距離信頼性判定手段27は、Z1とのZ2との差が所定範囲内(赤外線カメラ2R,2Lの取付精度や車両の振動等により変化する車両10固有の範囲)から外れたときは、視差オフセットαが大きく、Z1の信頼性が低いと判定する。距離信頼性判定手段27は、Z1の信頼性が低いと判定したときは、次のSTEP56からSTEP60に分岐する。一方、Z1の信頼性が高いと判定したときには、STEP56からSTEP57に進み、この場合には、接触判定手段28による図3のSTEP11以降の接触判定処理が実行される。
次に、図9を参照して、図8のSTEP54における第1の距離算出手段25による「距離推定処理」について説明する。第1の距離算出手段25は、STEP70で、車速センサ4により算出される車両10の走行速度VCARを入力する。また、続くSTEP71で、第1の距離算出手段25は、図6のSTEP53で算出された視差勾配の算出値Iaを入力し、STEP72で時系列時間Ts(例えば、1秒)を入力する。
そして、第1の距離算出手段25は、STEP73〜STEP76のループを繰り返し実行して、視差勾配の算出値Iaに対応する視差を算出する。図5(b)は、視差オフセットα=0であって、車両10が100km/hで走行しているときの視差と視差勾配の変化を、左側の縦軸を視差に設定し、右側の縦軸を視差勾配に設定し、横軸を時間に設定して、静止した対象物について示したものである。図中e1が視差の時系列データ(理論的な視差の時系列データ)であり、e2が視差勾配(理論的な視差勾配)である。
第1の距離算出手段25は、STEP73〜STEP76のループにおいて、STEP73で、視差のサンプリング期間Twを図5(b)の5秒経過時から0秒に向かって、時系列時間Ts(例えば1秒)ずつずらしながら設定し(例えば、4〜5秒、3.5〜4.5秒、3.0〜4.0秒、2.5〜3.5秒、…)、STEP74で、車両10の速度VCARとサンプリング期間Twとに基づいて、Twにおける視差の理論的な時系列データを作成する。
そして、第1の距離算出手段25は、続くSTEP75で、各サンプリング期間Twにおける視差の理論的な時系列データから視差勾配の理論値Itを算出して、STEP76で視差勾配の算出値Iaが理論値It以上となったか否かを判断する。
そして、STEP76で視差勾配の算出値Iaが理論値It以上となったときは、ループを抜けてSTEP77に進み、視差勾配の算出値Iaが理論値Itよりも小さいときにはSTEP73に戻って、次のサンプリング期間Twを設定してSTEP74以降の処理を行う。
STEP77で、第1の距離算出手段25は、STEP73〜STEP76のループで最後に算出した視差勾配の理論値Itに対応する視差dx_tを取得する。例えば、視差勾配の算出値Iaが150であったときには、図5(b)に示したように、視差勾配の算出値Iaが理論値It以上となったサンプリング期間Tw(2.5〜3.5秒)の中間値である3.0秒における理論的な時系列データの視差9.0が取得される。
そして、第1の距離算出手段25は、続くSTEP78で、視差9.0を上記式(1)のdxに代入して車両と対象物との距離を算出する。
次に、図10〜図11を参照して、視差勾配から車両と対象物との距離を推定する処理の他の実施形態について説明する。
先ず、図10(a)及び図10(b)は、視差の時系列データの分布を、縦軸を視差に設定し、横軸を時間に設定して示したものであり、図10(a)はt11〜t13のサンプリング期間における9個の視差の算出データから直線Saを求めている。
また、図10(b)は、視差オフセットα=0としたときの理論的な視差勾配を持つ直線を、車両と対象物との距離毎に示したものであり、S1は距離を190mに設定した直線、S2は距離を180mに設定した直線、Snは距離を100mに設定した直線を示している。
そして、第1の距離算出手段25は、図10(a)に示したように、視差の時系列データから作成した直線Saの勾配と同じ勾配を有する直線を、図10(b)のS1〜Snの直線の中から選択し、選択した直線の設定距離を車両10と対象物の距離として求めることができる。
次に、図11は、車両10の走行速度毎(図11では、70km/h,95km/h,100km/h)に、視差勾配と対象物との距離との相関マップM1,M2,M3,…を予め用意するものである。第1の距離算出手段25は、視差の時系列データから算出した視差勾配を、車両10の走行速度に応じて選択した相関マップに適用することによって、車両10と対象物との距離を求めることができる。
例えば、車両10の走行速度が70km/hであって、視差の時系列データから算出した視差勾配がIaであるときには、第1の距離算出手段25は、図11の相関マップM1を選択して視差勾配Iaを適用することにより、車両10と対象物との距離Z1を得ることができる。
また、上述した実施の形態においては、距離信頼性判定手段27は、第1の距離算出手段25により、視差勾配を用いて算出された車両10と対象物との距離Z1と、第2の距離算出手段26により、例えば視差の時系列データの中間値を用いて上記式(1)によって算出された車両10と対象物との距離Z2とを比較して、Z1の信頼性を判断したが、他の手法によりZ1の信頼性を判断してもよい。以下では、距離信頼性判定手段27によるZ1の信頼性の判断の他の手法について説明する。
距離信頼性判定手段27は、図8のSTEP55において、上記式(1)の逆算式である以下の式(4)に、第1の距離算出手段25により視差勾配を用いて算出された車両10との距離Z1を代入して算出される、距離Z1に対応する推定視差dx'と、視差算出手段22により算出された視差dxとを比較する。
但し、dx':推定視差、f:赤外線カメラ2R,2Lの焦点距離、p:赤外線カメラ2R,2Lの画素ピッチ、D:赤外線カメラ2R,2Lの基線長、Z1:第1の距離算出手段25により算出された対象物と車両10との距離。
そして、距離信頼性判定手段27は、視差dxと推定視差dx'との差が第2の所定範囲内(赤外線カメラ2R,2Lの取付精度や車両の振動等により変化する車両10固有の範囲)から外れたときは、視差オフセットαが大きく、Z1の信頼性が低いと判定する。
距離信頼性判定手段27は、Z1の信頼性が低いと判定したときは、次のSTEP56からSTEP60に分岐する。一方、Z1の信頼性が低くないと判定したときには、STEP56からSTEP57に進み、この場合には、接触判定手段28による図3のSTEP11以降の接触判定処理が実行される。
なお、本実施の形態では、2台の赤外線カメラ2R,2Lを備え、右画像と左画像間の同一対象物の画像部分の視差を用いて、車両10と対象物との距離を算出したが、例えば、特開2007−213561号公報に記載されているように、1台のカメラにより撮像された時系列画像間における同一対象物の画像部分の大きさの変化率を用いて、車両と対象物との距離を算出する場合にも、本発明の適用が可能である。
この場合には、同一対象物の画像部分の大きさの変化率を算出するための2つの画像のサンプリング周期(2つの画像の撮像時点間の時間)を、車速が低いほど短い時間に設定するか、或いは、前回の制御周期で算出された対象物と車両間の距離が短いほど今回の制御周期におけるサンプリング期間を短い時間に設定すればよい。また、前回の制御周期で算出された対象物と車両間の距離と、車速と、前記の制御周期における対象物と車両間の距離の算出時からの経過時間とを用いて、今回の制御周期における対象物と車両との推定距離を算出し、この推定距離が短いほど今回の制御周期における2つの画像のサンプリング周期を短い時間に設定するようにしてもよい。
なお、本実施の形態においては、車両前方を撮像する構成を示したが、車両の後方や側方等、他の方向を撮像して対象物との接触可能性を判断するようにしてもよい。
また、本実施の形態においては、本発明の撮像手段として赤外線カメラ2R,2Lを用いたが、可視画像を撮像する可視カメラを用いてもよい。