(58)【調査した分野】(Int.Cl.,DB名)
車両上で、前記車両が走行する道路の車線を認識し、前記車線と前記車両との横方向の位置関係を検出する横方向位置検出手段と、前記位置関係の変化に基づいて蛇行運転の異常の有無を識別する異常検出手段とを備えた車両用蛇行運転検出装置であって、
前記横方向位置検出手段が時間Δt毎に検出した横方向位置に関するデータを順次保持し、前記データ又は該データを平均化したデータを時系列順に所定数並べた、前記横方向位置の変化を表す時系列データを出力する時系列データ出力手段と、
道路上の複数車線の境界位置に表示された白線の第1の線を車両が横切って移動する状態、及び、道路側端近傍の限界位置に表示された白線の第2の線を車両が横切って移動する状態を検出する車線変更検出手段と、
運転者の操作による車線変更の合図を表すウインカー信号の状態を監視するウインカー信号監視手段と、
前記ウインカー信号が現れていない場合であって前記車線変更検出手段が前記第1の線を車両が横切って移動する状態を検出したとき、及び、前記ウインカー信号が現れている場合であって前記ウインカー信号が現れてから所定時間が経過するまでの間に前記車線変更検出手段が前記第1の線又は前記第2の線を車両が横切って移動する状態を検出したとき、前記時系列データ出力手段に保持されたデータを全て削除する時系列データ初期化手段と、
を有し、
前記異常検出手段は、前記時系列データ出力手段の出力する最新の時系列データに基づいて蛇行運転の異常の有無を識別すると共に、前記ウインカー信号が現れていない場合であって前記車線変更検出手段が前記第2の線を車両が横切って移動する状態を検出したとき、車線逸脱に関する異常を検出することを特徴とする車両用蛇行運転検出装置。
【背景技術】
【0002】
本発明の車両用蛇行運転検出装置と関連のある従来技術としては、特許文献1に開示された技術が知られている。特許文献1においては、車載カメラにより走行中の車両の後方側の路面等の被写体を連続的に撮影し、得られた画像を処理して路面に表示されている白線やFOE(Focus of Expansion)点を認識し、更にオプティカルフローを求め、車線と車両との位置関係(車線に対する相対的な横方向の位置)を把握して、車線逸脱の有無や蛇行運転の有無を判定して警報を発する。
【0003】
ここで、FOE点とは、無限遠点とも称され、例えば、自車両が走行すべき路面上の自車線の両側に位置する一対の白線をそれぞれ延長した延長線が交わる点と同じ位置として特定することができる。走行中の車両に搭載したカメラの前方映像は時々刻々変化するが、時間tと時間t+Δtにおける映像について、対応する同一点を直線で結ぶと速度ベクトル(オプティカルフロー)が得られる。すべてのオプティカルフローは、画像内の1点から放射状に現れる。この1点がFOE点である。
【0004】
車線と車両との位置関係(横方向の位置)については、一例として次のようにして求めることができる。FOE点から延ばした垂線を基準線に定め、この基準線と車両が走行中の車線両端の1対の白線のそれぞれとがなす角度をθ1、θ2とし、これらの角度差(θ1−θ2)から前記横方向の位置を求めることができる。例えば、角度差(θ1−θ2)が0であれば、車両の位置は当該車線のほぼ中央に位置しており、撮影するカメラからみて車両が左寄りの位置を走行していれば、((θ1−θ2)<0)になり、カメラからみて車両が右寄りの位置を走行していれば、((θ1−θ2)>0)になる。
【0005】
また、特許文献1に開示されているように、検出された車両の横方向位置の時系列変化を分析すれば、車線内における車両位置のふらつき、すなわち蛇行運転のような異常な状態を検出し、自動的に警報を発することもできる。
【0006】
本発明と関連のある従来技術については、特許文献2〜特許文献4にも開示されている。
特許文献2は、道路監視装置に関する技術であり、路上を撮影するカメラにより得られた画像を処理して、車両の走行軌跡を検出し、車両の車線変更などの変化から障害物の存在可能性を識別することを提案している。
【0007】
特許文献3の技術では、車載カメラにより走行中の車両の前方側の路面等の被写体を連続的に撮影し、得られた画像を処理して路面の白線等を認識し、車両の横方向位置のふらつき具合に基づいて、運転者の状況(覚醒度)を推定する。また、路面上に表示された白線等として複数種類の線が混在する場合に、車線を正しく認識するための技術を提案している。
【0008】
特許文献4の技術では、車載カメラにより走行中の車両の後方側の路面等の被写体を連続的に撮影し、得られた画像を処理して路面の白線等を認識し、車両と車線との横方向の位置関係から車線逸脱傾向を検出する。また、道路がカーブしている状態や、車両がどちらか一方の白線側に傾いている場合でも位置関係を正しく把握するための技術を提案している。
【発明の概要】
【発明が解決しようとする課題】
【0010】
特許文献1に開示されているように、検出された車両の横方向位置の時系列変化を分析すれば、車線内における車両位置のふらつき、すなわち蛇行運転のような異常な状態を検出することが可能である。しかしながら、車両用蛇行運転検出装置が使用される環境は様々であり、従来の技術では車両位置のふらつきや蛇行運転を検出する精度が十分に高いとは言えない状況であった。
【0011】
例えば、高速道路のように自車が走行可能な複数の車線が存在している道路では、運転者の意志により、現在走行中の車線からそれに隣接する他の車線に移動する(以下、「車線変更」という)場合がある。一方、運転者の注意力が低下していたり、居眠り運転のような異常な状況が発生している場合には、無意識のうちに複数の車線を跨ぐような位置に移動したり蛇行運転をするような状況が発生しうる。このような運転者の故意の「車線変更」と無意識の蛇行運転のような異常とを自動的に区別するのは非常に難しい。
【0012】
しかも、運転者が故意に「車線変更」を行った場合には、その記録が過去の車両の横方向位置の時系列変化として残り、蛇行運転かどうかを判定する際の障害になる。その影響で、実際には蛇行運転をしていないにもかかわらず、車両用蛇行運転検出装置が蛇行運転の警告を発生する場合がある。一方、このような誤動作を防止するために、蛇行運転を判定するための閾値を大きめに定めると、実際に蛇行運転をしている状況であっても、ふらつき具合が小さい時には蛇行運転を検出できなかったり、検出に大きな時間遅れが生じることになる。従って、事故の発生を回避するための警報発生が時間的に間に合わない可能性が高くなる。
【0013】
本発明は、上述した事情に鑑みてなされたものであり、その目的は、蛇行運転等の異常な状態の検出に関し、誤検出の発生を防止すると共に、異常な状況であれば比較的小さい蛇行であっても、蛇行として検出することが可能な車両用蛇行運転検出装置を提供することにある。
【課題を解決するための手段】
【0014】
前述した目的を達成するために、本発明に係る車両用蛇行運転検出装置は、下記(1)〜(
2)を特徴としている。
(1) 車両上で、前記車両が走行する道路の車線を認識し、前記車線と前記車両との横方向の位置関係を検出する横方向位置検出手段と、前記位置関係の変化に基づいて蛇行運転の異常の有無を識別する異常検出手段とを備えた車両用蛇行運転検出装置であって、
前記横方向位置検出手段が時間Δt毎に検出した横方向位置に関するデータを順次保持し、前記データ又は該データを平均化したデータを時系列順に所定数並べた、前記横方向位置の変化を表す時系列データを出力する時系列データ出力手段と、
道路上の複数車線の境界位置に表示された白線の第1の線を車両が横切って移動する状態、及び、道路側端近傍の限界位置に表示された白線の第2の線を車両が横切って移動する状態を検出する車線変更検出手段と、
運転者の操作による車線変更の合図を表すウインカー信号の状態を監視するウインカー信号監視手段と、
前記ウインカー信号が現れていない場合であって前記車線変更検出手段が前記第1の線を車両が横切って移動する状態を検出したとき、及び、前記ウインカー信号が現れている場合であって前記ウインカー信号が現れてから所定時間が経過するまでの間に前記車線変更検出手段が前記第1の線又は前記第2の線を車両が横切って移動する状態を検出したとき、前記時系列データ出力手段に保持されたデータを全て削除する時系列データ初期化手段と、
を有し、
前記異常検出手段は、前記時系列データ出力手段の出力する最新の時系列データに基づいて蛇行運転の異常の有無を識別すると
共に、前記ウインカー信号が現れていない場合であって前記車線変更検出手段が前記第2の線を車両が横切って移動する状態を検出したとき、車線逸脱に関する異常を検出すること。
(2) 前記(1)に記載の車両用蛇行運転検出装置であって、
前記横方向位置検出手段は、
前記車両に搭載され、前記車両の移動方向の前方又は後方の被写体を周期的に撮影して得られる画像を出力する少なくとも1つの撮像手段と、
前記撮像手段から出力される時系列の複数の画像に基づいて、画像中の道路上に表示された白線の表示を認識する白線認識手段と、
前記白線認識手段が認識した白線に基づいて画像中の無限遠点に相当するFOE点を決定するFOE点決定手段と、
を備えること。
【0015】
上記(1)の構成の車両用蛇行運転検出装置によれば、誤検出の発生を防止でき、異常な状況であれば比較的小さい蛇行であっても蛇行として検出できる。すなわち、運転者が故意に車線変更を行った場合には、時系列データ初期化手段が時系列データ出力手段に保持されたデータを全て削除するため、車線変更に伴う車両位置の変化は時系列データから除外される。従って、故意の車線変更と異常な運転とを明確に区別でき、小さい蛇行であっても異常としてすばやく検出できる。
また、前記ウインカー信号の有無に基づいて、故意の車線変更と異常な運転とを区別し、故意の車線変更の場合は時系列データ出力手段に保持されたデータを全て削除することができる。
また、検出された白線等の線の種類を区別するので、単に車両が複数の車線を跨いだ状況と異常な状況とを識別することができる。例えば、線の種類が点線や破線であれば複数車線の境界に表示される前記第1の線とみなし、線の種類が実線であれば前記第2の線とみなすことが想定される。
加えて、運転者がウインカーの合図を出すことなく意図的に車線変更した場合であっても、時系列データ出力手段に保持されたデータを全て削除できるので、蛇行検出に関する誤検出を防止できる。また、車両が車線を逸脱したような状況では時系列データ出力手段に保持されたデータが無効にされず、車線逸脱に関する異常が検出される。
上記(
2)の構成の車両用蛇行運転検出装置によれば、車両上で撮影して得られる画像の変化に基づいて必要な情報を収集するので、道路側に特別な設備を設置する必要がない。
【発明の効果】
【0016】
本発明によれば、誤検出の発生を防止でき、異常な状況であれば比較的小さい蛇行であっても蛇行として検出できる。すなわち、運転者が故意に車線変更を行った場合には、
時系列データ初期化手段が
時系列データ出力手段
に保持されたデータを無効にするため、車線変更に伴う車両位置の変化は
時系列データから除外される。従って、故意の車線変更と異常な運転とを明確に区別でき、小さい蛇行であっても異常としてすばやく検出できる。
【0017】
以上、本発明について簡潔に説明した。更に、以下に説明される発明を実施するための形態を添付の図面を参照して通読することにより、本発明の詳細は更に明確化されるであろう。
【発明を実施するための形態】
【0019】
以下、本発明の実施の形態を図面に基づいて説明する。実施形態の車両用蛇行運転検出装置に関するハードウェアの構成例が
図2に示されている。
図2に示すように、この車両用蛇行運転検出装置は、撮像手段であるカメラ1を備えている。このカメラ1は、車両上に後側方の被写体(路面等)が撮像できるような位置に所定の姿勢で固定されている。また、カメラ1はレンズ1aにより規定される画角範囲の二次元画像をイメージプレーン1b上に結像させる。この画像はイメージプレーン1bの箇所に設けられた二次元CCDイメージセンサなどの変換部により撮影した画像のフレーム毎に電気信号に変換され、更に画素毎のデータの集合である画像データに変換される。
【0020】
記憶部2は、第1、第2フレームメモリ2a、2b、微分画像メモリ2c及び発散オプティカルフローメモリ2dを有している。第1フレームメモリ2a及び第2フレームメモリ2bは、カメラ1のイメージプレーン1b上に結像された撮像画像データD1を例えば512×512画素、輝度0〜255階調といったm行n列の画素に変換したものを画素データD2、D3として一時的に記憶すると共にマイクロコンピュータ3(以下マイコン3)に出力する。これらの第1又は第2フレームメモリ2a、2bは、例えば第1フレームメモリ2aには時間t、第2フレームメモリ2bには時間t+Δt、…といったように、所定時間Δt毎に撮像された画像をm行n列の画素に変換した画素データD2、D3が順次記憶される。
【0021】
微分画像メモリ2cは、カメラ1のイメージプレーン1b上に結像された撮像画像データD1を微分することにより生成された微分画像データD4を記憶する。また、発散オプティカルフローメモリ2dは発散方向のオプティカルフローデータD5を記憶すると共にマイコン3に出力する。
【0022】
マイコン3は、制御プログラムに従って動作するCPU(マイクロプロセッサ)3aと、このCPU3aの制御プログラム及び予め与えられる設定値などを保持するROM3bと、CPU3aの演算実行時に必要なデータを一時的に保持するRAM3cとを有している。
ウインカ検出部(ウインカー信号監視手段)4は、車両のウインカ機構に取り付けられていて、運転者が車両を左右側に転回させる際に操作するウインカスイッチがオンするとHレベルのウインカ信号S1をマイコン3に対して出力する。
【0023】
車線逸脱警報手段及び蛇行運転警報手段としての警報発生部5は、スピーカ5aと、表示部5bとを有している。警報発生部5は、カメラ1が撮像した画像を表示したり、あるいは、蛇行運転及び車線逸脱が検出された場合、又は他車両が自車両に急接近してきて接触の危険があると判断した場合に、それぞれメッセージなどを表示して運転者に対して危険を映像で知らせる。
【0024】
スピーカ5aは、蛇行運転及び車線逸脱が検出された場合、又は他車両との接触の危険性ありと判断された場合にそれぞれマイコン3から発せられる音声信号S2に基づき、音声ガイダンスあるいは警報音といった音声を発生する。そして、スピーカ5aは、この音声により運転者に対して危険を音声で知らせる。
【0025】
図2に示した車両用蛇行運転検出装置の機能上の主要な構成が
図1に示されている。
図1に示されている白線検出手段3a−1、FOE設定手段3a−2、オプティカルフロー検出手段3a−3、危険判断手段3a−4、位置検出手段3a−5、車線逸脱検出手段3a−6、蛇行運転検出手段3a−7、
時系列データ出力手段3a−11
(以下、統計値出力手段と表記する)、
時系列データ初期化手段3a−12
(以下、統計値初期化手段と表記する)、車線変更検出手段3a−13は上述したCPU3aの処理によりそれぞれ実現される。
【0026】
白線検出手段3a−1は、自車両が走行すべき自車線の両側に位置する一対の白線(路面の表示)を検出する。FOE設定手段3a−2は、前述のFOEの点を特定する。オプティカルフロー検出手段3a−3は、FOEを利用しカメラより所定時間前後して得た2画像中の同一点の移動量をオプティカルフローとして検出する。危険判断手段3a−4は、他車両のオプティカルフローの大きさに基づいて自車両に接近する他車両を検出して危険を判断する。
【0027】
また、位置検出手段3a−5は、自車線内における自車両の横方向位置を検出する。車線逸脱検出手段3a−6は、自車線内における自車両の横方向位置に基づいて車線逸脱走行を検出する。蛇行運転検出手段3a−7は、自車線内における自車両の横方向位置の時間による変化(統計値出力手段3a−11が出力する
時系列データ(以下、統計値
と表記する))に基づいて蛇行運転を検出する。車線逸脱検出手段3a−6と蛇行運転検出手段3a−7とをあわせて異常検出手段3a−10と称することがある。
【0028】
統計値出力手段3a−11は、蛇行運転の検出に必要な横方向位置に関する統計値の情報を保持し出力する。この統計値の具体例としては、例えば位置検出手段3a−5が順次に計算して過去所定時間内に出力した横方向位置の情報をそのまま時系列順に並べたもの、あるいは所定時間毎に平均化した位置の情報を時系列順に所定数だけ並べたものなどを想定している。
【0029】
統計値初期化手段3a−12は、所定の条件を満たす時に、統計値出力手段3a−11の統計値を初期化し、それまでに保持された統計値を無効化する。統計値を初期化するための条件を満たすかどうかを識別するために、統計値初期化手段3a−12は車線変更検出手段3a−13の検出状態を参照する。
【0030】
車線変更検出手段3a−13は、車線変更等に関する検出を行う。具体的には、路面上の自車線の両側端部にある白線を跨ぐような位置に自車両が移動したかどうかを検出したり、跨いだ白線の種類(実線/点線)を識別する。つまり、運転者の意志により隣接する2つの車線の一方から他方に移動(車線変更)する場合や、運転者の意志とは無関係に車線を逸脱するような位置に自車両が移動した場合のような状況を車線変更検出手段3a−13が検出する。
【0031】
上述した車両用蛇行運転検出装置の更に詳細な動作について以下に説明する。まず、カメラ1は、例えば
図5に示すような撮像画像を撮像画像データD1としてマイコン3に対して出力する。この撮像画像は、道路10、道路10上に描かれた白線11〜15及び道路10の両脇に立設された壁16が、画面上における水平方向中心位置にて消失する画像となっている。
【0032】
図5に示す撮像画像は、上述したように、カメラ1が車両の後部に後方に向けて取り付けられているので、撮像画像における右側が進行方向を基準とした場合の左側に相当し、撮像画像における左側が進行方向を基準とした場合の右側に相当する。
【0033】
CPU3aは、カメラ1から出力された時間tにおける撮像画像データD1を上述したような512×512画素、輝度0〜255階調の画素データD2に変換して、第1フレームメモリ2aに出力する。第1フレームメモリ2aは、この画素データD2をマイコン3によって常時読み出し可能に、一時記憶する。さらに、時間Δt後に、マイコン3は、時間t+Δtに撮像された撮像画像の画素データD3を第2フレームメモリ2bに出力する。つまり、第1、第2フレームメモリ2a、2bには所定時間Δt毎に撮像された画像の画素データD2、D3が順次記憶される。
【0034】
また、CPU3aは車線逸脱又は蛇行運転の検出を行うため
図5に示す撮像画像の画素データD2に関し、そのm行n列の画素の輝度値I
m、
nを
図5における水平方向に走査し、隣接する画素の輝度値I
m、
n+1との差I
m、
n+1−I
m、
nが所定輝度値以上のとき、輝度値I
m、
n=1とし、所定輝度値以下のとき、輝度値I
m、
n=0として、
図6に示すような撮像画像上のエッジ部分のみの画像である微分画像(エッジ画像)を生成し、生成した微分画像を微分画像データD4として微分画像メモリ2cに対して出力する。
【0035】
次に、この微分画像に対し
図7に示すような基準線V
SLを設定する。この基準線V
SLは、微分画像上の水平方向における中心位置であって垂直方向に、微分画像を縦断するように設定される。つまり、基準線V
SLは、自車両が走行している白線12及び13によって区切られた車線の水平方向の中心に設定される。
【0036】
基準線V
SLが設定されると、自車両が走行すべき路面上の自車線の両側に位置する一対の白線12及び13を構成するエッジ点の探索を行う。この白線12及び13を構成するエッジ点の探索は、
図7に示す画面の下端に位置する水平ラインH
(LO)から上側に向けて行われる。すなわち、基準線V
SL上であって最下端の点P
(SO)から、水平方向両端部に向けてエッジ点の探索を行う。そして、この探索により、基準線V
SLの左側に存在する白線12のエッジを構成する点P
(LO)及び基準線V
SLの右側に存在する白線13のエッジを構成する点P
(RO)が取得される。
【0037】
続いて、最下端より2番目に位置する点P
(S1)から、水平方向両端部に向けてエッジ点の探索が行われ、これにより基準線V
SLの左側に存在する白線12のエッジを構成する点P
(L1)及び基準線V
SLの右側に存在する白線13のエッジを構成する点P
(R1)が取得される。
【0038】
このような処理を微分画像における上方に向けて順次エッジ点を抽出する。このとき、後続を走行する他車両を構成するエッジ点P
(L(m+2))、P
(R(m+2))、P
(L(m+4))及びP
(R(m+4))も抽出してしまうので、この抽出したエッジ点からさらに同一の直線上にあるもののみを抽出する。この結果、自車両が走行すべき路面上の自車線の両側に位置する一対の白線12及び13を構成するエッジ点のみを抽出することができる。そして、この抽出したエッジ点を最小二乗法による近似線を生成し、この近似線を白線12及び13として検出する。そして、白線12及び13として検出された近似線を延長させて、その交点をFOEとして設定する。さらに、時間Δt後の撮像画像の画素データD3に関しても同様に自車両が走行すべき路面上の自車線の両側に位置する一対の白線12及び13を検出し、検出した白線12及び13の延長線が交わる点をFOEを設定する。
【0039】
さらに、CPU3aは近接車線を走行する他車両、又は後続する他車両に対する危険度を検出するためオプティカルフローを求める。以下オプティカルフローを求める手順を
図8を参照して説明する。まず始めに第1フレームメモリ2aから画素データD2を取り込み、時間tでの撮像画像において、着目する1点に対し、この着目する1点を中心として上述したように設定したFOEから放射線の方向(すなわちFOEと着目する1点を結ぶ方向)に細長い窓を設定する(
図8(a))。次に、第2フレームメモリ2bから画素データD3を取り込み、時間t+Δtでの撮像画像において、窓をFOEから放射状の方向に一点づつ移動しながら、時間tで窓を構成する各画素について、該各画素に対応した時間t+Δtでの窓を構成する各画素と輝度差の絶対値を求める。つまり、時間tでの画素P(
図8(a))に対応した時間t+Δtでの画素Q(
図8(b))との輝度差の絶対値を求める。この求めた輝度差の総和が最小になったときの窓の移動量が、着目する一点のオプティカルフローとして求められる。
【0040】
以上のような処理を撮像画像の全ての点において繰り返し行うことにより、撮像画像全体のオプティカルフローを求めることができる。また、窓内の画素を走査して、着目する点を抽出し、抽出された点を結んでオプティカルフローを求めるようにしてもよい。
【0041】
求めたオプティカルフローの方向がFOEに向かう方向ならば近隣車線を走行する他車両又は後続を走行する他車両が自車両の速度より遅く、自車両から離れていくことを示しており、反対にオプティカルフローの方向がFOEに対して発散する方向である場合は自車両に接近していることを示している。
【0042】
また、撮像画像内の風景や路面上のマーク等によって生ずるオプティカルフローの方向は全てFOEに向かう方向となり、接近する近隣又は後続他車両と容易に区別できる。この近隣又は後続他車両から発せられたオプティカルフローの長さは、自車両と近隣又は後続他車両との相対速度に比例する。したがって、FOEから発散する方向のオプティカルフローの長さが、所定長さを超えたとき他車両が自車両に急接近しているとして、その旨を知らせるため例えばスピーカ5aから音声で「接近してくる車があります」と警報させ、表示部5bに「他車両接近」の表示を行う。
【0043】
さらに、CPU3aは、自車線内における自車両の横方向位置を検出するために、
図9に示すようにFOEからの垂線Lを基準線として設定し、この垂線Lと白線12及び13とのなす角度θ1及びθ2を検出して、角度θ1と角度θ2との角度差θ1−θ2を求める。次に、Δt後の撮像画像の画素データD3についても、同様に角度差θ1−θ2を求める。つまり、Δt毎に角度差θ1−θ2を求める。
【0044】
角度差θ1−θ2を求めた結果、
図9に示すように車両が車線の中心を走行していれば、角度差θ1−θ2=0となる(
図9(a))。また、自車両内において、自車両がカメラ1からみて左寄りに走行していれば、角度差θ1−θ2<0となり(
図9(b))、自車両が自車線の左側によるほど角度差θ1−θ2の値は小さくなる。さらに、自車両が自車線をカメラ1からみて右寄りに走行していれば、角度差θ1−θ2>0となり(
図9(c))、車線の右側によればよるほど角度差θ1−θ2の値は大きくなる。上述したように角度差θ1−θ2を求めることによって、時間Δt毎に自車線内において自車両の横方向位置を検出することができる。このような動作を位置検出手段3a−5が行う。
【0045】
なお、横方向位置を検出する方法については、上述の方法以外にも様々な変形が考えられる。これらの変形例については、例えば特許文献1にも開示されている。
【0046】
車線逸脱検出手段3a−6は、位置検出手段3a−5が検出した横方向位置に基づいて、自車の車線逸脱走行を自動的に検出する。具体的には、自車両が自車線のカメラ1からみて左側に逸脱したときに撮像された画像から求めた角度差θ1−θ2を第1の所定値、右側に逸脱したときに撮像された画像から求めた角度差θ1−θ2を第2の所定値として、角度差θ1−θ2が第1の所定値以上、または第2の所定値以下のとき、車線逸脱走行を検出する。但し、運転者が意図的に車線変更をする場合や、危険でない場合には車線逸脱走行とはみなさない。詳細については後で説明する。
【0047】
車線逸脱検出手段3a−6が車線逸脱走行を検出した場合は、その旨を知らせるため例えばスピーカ5aから音声で「車線逸脱運転しています」と警報させ、表示部5bに「車線逸脱」の表示を行わせることによって、居眠りなどによる車線逸脱走行を警報する。このため、居眠りによる事故を未然に防ぐことができる。
【0048】
蛇行運転検出手段3a−7は、統計値出力手段3a−11が出力する横方向位置の統計値に基づいて、蛇行運転を検出する。蛇行運転の場合には、例えば
図10に示す曲線のような移動軌跡で横方向にふらつきながら車両が移動することになる。
【0049】
例えば、Δtごとに撮像した画像からそれぞれ検出した横方向位置は、
図10に示す各点P1、P2、P3、P4、P5、P6、P7、P8のように車両の過去の移動軌跡の代表点を表す位置情報となる。このような複数(所定数)の点に関する位置情報が統計値として統計値出力手段3a−11から出力される。
【0050】
図10に示す例では、統計値の中から軌跡の山となる点N1(P3)、N2(P6)・・・が抽出され、隣り合った抽出した点同士の横方向位置の変位量ΔMが閾値(th1)を超える場合が所定時間(th2)以内に所定回数(th3)あったとき、蛇行運転として蛇行運転検出手段3a−7が検出する。そして、その旨を知らせるためスピーカ5aから音声で「蛇行運転しています」と警報させ、表示部5bに「蛇行運転」の表示を行わせることによって、居眠りなどによる蛇行運転を警報することができる。このため、居眠りによる事故を未然に防ぐことができる。さらに、上述しように検出した自車両の横方向位置から居眠りによる車線逸脱の検出に用いることにより安価に居眠りによる蛇行運転を検出することができる。
【0051】
しかし、状況によっては蛇行運転検出手段3a−7が蛇行運転を正しく検出できない可能性もある。例えば、高速道路を走行している場合のように複数の車線のいずれかを選択的に走行できる時には、運転者が意図的に車線変更を行う場合がある。その場合、位置検出手段3a−5が検出する横方向位置の変化が大きくなるので、この位置情報を統計値出力手段3a−11の統計値に含めると、蛇行運転検出手段3a−7はふらつきが大きい状態とみなし蛇行運転を誤検出する可能性がある。
【0052】
このような蛇行運転検出手段3a−7の誤検出を防止するために、車線変更検出手段3a−13が車線変更を検出した場合には、統計値初期化手段3a−12が統計値出力手段3a−11の統計値を初期化する。この初期化により、車線変更に伴って生じる横方向位置の大きな変動は統計値から除外される。従って、閾値th1、th2、th3に大きな余裕を持たせなくても蛇行運転検出手段3a−7の誤検出は生じにくくなり、検出感度が高くなり、検出遅れも生じにくい。
【0053】
以上説明したような動作の大部分はマイコン3のCPU3aの処理によって実現される。この処理の手順が
図3、
図4に示されている。
図3、
図4に示す処理について以下に説明する。
【0054】
まず
図5に示すような時間tの撮像画像の撮像画像データD1がカメラ1から取り込まれ、時間tにおける撮像画像データD1に応じた画素データD2として第1フレームメモリ2aに記憶される(ステップSP1)。次に、時間t+Δtの各撮像画像データD1が取り込まれ、画素データD3としてそれぞれ第2フレームメモリ2bに記憶される(ステップSP2)。この各画素データD2、D3を微分することによって微分画像をそれぞれ生成し(ステップSP3)、車両が走行する自車線の両側を形成する白線を検出する(ステップSP4)。次に、検出した両側の白線を延長し、その交点をFOEとして設定する(ステップSP5)。
【0055】
次に、近接車線を走行する他車両、又は後続する他車両に対する危険度を検出するためオプティカルフローを検出し(ステップSP6)、求めたオプティカルフローがFOEから発散する方向で、かつ長さが所定長さを超えたとき他車両が自車両に接近しているとして(ステップSP7でY)、その旨を知らせるため例えばスピーカ5aから音声で「接近してくる車があります」と警報し、表示部5bに他車両急接近の表示を行わせて(ステップSP8)、ステップSP2へ戻る。オプティカルフローがFOEに収束する方向であったり、発散する方向でも長さが所定長さを超えていなかったとき接近してくる他車両がないとして(ステップSP7でN)、次のステップへ進む。
【0056】
次に、
図9に示すように時間tにおける撮像画像の画素データD2上に設定したFOEから降ろした垂線Lと白線12及び13とのなす角θ1及びθ2を検出して、角θ1と角θ2との角度差θ1−θ2を求める。次に、時間t+Δtの撮像画像の画素データD3についても、同様に角度差θ1−θ2を求める(ステップSP9)。
【0057】
図4に示す各ステップSP20〜SP28は、蛇行運転や車線逸脱の検出および警報に関する処理である。
ステップSP20では、ウインカ検出部4からウインカ信号S1が出力されているかどうかを識別する。これは運転者の意図的な車線変更の可能性を把握するための処理である。すなわち、ウインカ信号S1が出力されていれば意図的に車線変更が行われる可能性が高い。但し、運転者がウインカの合図を出さずに車線変更をする場合もあるので、ウインカ信号S1が出力されていない場合でも、意図的な車線変更の可能性はある。
【0058】
ウインカ信号S1が出力されていない場合には、ステップSP20からSP21に進み、車線変更や車線逸脱に関する検出を行う。ステップSP21では、位置検出手段3a−5から出力される最新の横方向位置を監視し、車線側端部を跨ぐ位置に移動したかどうかを識別する。つまり、現在走行中の車線の左右端にある白線のいずれかを横切るような位置まで自車両が移動したか否かを識別する。自車線内にある場合はステップSP25に進み、白線を横切る位置に移動した場合はステップS22に進む。
【0059】
ステップSP22では、車線逸脱と車線変更とを区別するために、自車両が跨いでいる白線の種類を識別する。例えば
図5に示す例のように自車が走行可能な車線として2車線が存在する場合、複数車線の境界にある白線12は点線として路面に表示されており、道路左端の限界位置近傍にある白線11やセンターラインを表す白線13は実線として路面に表示されている。
【0060】
つまり、
図5に示す状態で、自車両が点線の白線12を横切って隣接する車線の範囲内に移動した場合には単なる車線変更とみなすことができるが、実線の白線11又は白線13を横切った場合には危険な状態、すなわち車線逸脱とみなす必要がある。そこで、ステップSP22で跨いだ白線の種類が点線であった場合には、「車線変更」とみなしてステップSP23に進み、白線の種類が実線であった場合には「車線逸脱」とみなしてステップSP24に進む。
【0061】
ステップS23では、自車両が車線変更を完了するのを確認した後で、統計値出力手段3a−11が保持している横方向位置の統計値を初期化する(保持している過去の値をクリアする)。車線変更の完了を確認する方法としては、自車両が新しい車線内に移動してから、その車線の中央付近に移動したかどうかを識別したり、位置の変化が小さくなったかどうかを識別することを想定している。
【0062】
ステップSP24では、「車線逸脱」状態であるので、その旨を運転者に知らせるため例えばスピーカ5aから音声で「車線を逸脱しました」と警報し、表示部5bに車線逸脱の表示を行わせる。
【0063】
一方、ウインカ信号S1が出力されている場合には、運転者の意志による車線変更が行われる可能性が高いので、ステップSP27で車線変更を検出したか否かを識別する。具体的には、位置検出手段3a−5が出力する横方向位置を監視し、いずれか1つの白線を跨ぐ位置に移動した場合に「車線変更」を検出する。「車線変更」を検出するとステップSP28に進み、所定時間を経過しても車線変更を検出しない場合はステップSP27からSP25に進む。なお、ステップSP27では白線の種類を識別する必要はない。
【0064】
ステップSP28では、自車両が車線変更を完了するのを確認した後で、統計値出力手段3a−11が保持している横方向位置の統計値を初期化する(保持している過去の値をクリアする)。
【0065】
ステップSP25では、統計値出力手段3a−11から出力される横方向位置の統計値に基づいて、ふらつき評価値を算出し、その結果に応じて蛇行運転の有無を識別する。すなわち、統計値出力手段3a−11から出力される統計値は、
図10に示す各点P1〜P8の横方向のような情報であるので、これに基づいて、軌跡の山となる各点N1(P3)、N2(P6)・・・を抽出し、隣り合った抽出した点同士の横方向位置の変位量ΔMをふらつき評価値として算出し、この変位量ΔMが閾値(th1)を超える状態が所定時間(th2)以内に所定回数(th3)あったとき、「蛇行運転」を検出する。「蛇行運転」を検出するとステップSP26に進み、その旨を知らせるため例えばスピーカ5aから音声で「蛇行運転しています」と警報し、表示部5bに蛇行運転の表示を行わせる。
【0066】
いずれにしても、運転者の意志により車両が車線変更を行った場合には、それが自動的に検出され、ステップSP23又はSP28で統計値出力手段3a−11の統計値が初期化される。そのため、ステップSP25で蛇行運転検出手段3a−7がふらつきを評価する際には、車線変更の影響を含まない統計値のみに基づいて評価を行うことになる。従って、蛇行運転を行っていないのに車線変更の影響で誤って「蛇行運転」の警報が出力されるのを阻止することができる。また、誤検出が生じにくいのでふらつきを評価する際に用いる閾値(th1、th2、th3)に大きな余裕を持たせる必要がなくなり、蛇行運転の検出感度が高くなり、検出遅れも生じにくくなる。
【0067】
以上、本発明の車両用蛇行運転検出装置を自動車に搭載することにより、蛇行運転や車線逸脱に関する警報を自動的に発することができ、運転者の不注意や居眠り等の危険な状況を回避するのに役立つ。特に、高速道路のように複数の車線のいずれかを選択的に走行できる場合であっても、誤検出なく高精度で蛇行運転を検出できる。