JP2020201766A - 車線逸脱走行アラートシステムおよび車線逸脱走行アラート方法 - Google Patents
車線逸脱走行アラートシステムおよび車線逸脱走行アラート方法 Download PDFInfo
- Publication number
- JP2020201766A JP2020201766A JP2019108882A JP2019108882A JP2020201766A JP 2020201766 A JP2020201766 A JP 2020201766A JP 2019108882 A JP2019108882 A JP 2019108882A JP 2019108882 A JP2019108882 A JP 2019108882A JP 2020201766 A JP2020201766 A JP 2020201766A
- Authority
- JP
- Japan
- Prior art keywords
- lane
- vehicle
- image
- processing unit
- line segment
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Traffic Control Systems (AREA)
Abstract
【課題】車線を逸脱して走行している状態を画像から高精度で検出することができる車線逸脱走行アラートシステムを提供する。【解決手段】実施形態によれば、車線逸脱走行アラートシステムは、カメラと、演算処理部と、を具備する。前記カメラは、車両の前方の画像を撮像する。前記演算処理部は、前記画像に基づき、前記車両が車線を逸脱して走行している状態か否かを判定するための演算処理を実行する。前記演算処理部は、前記画像から路面上の線分を検出し、前記線分が一定期間継続的に検出された場合であって、前記画像上の座標を用いて算出される前記線分の傾きが正から負、または負から正に遷移していない場合、前記車両は車線を逸脱して走行している状態であると判定する。【選択図】図1
Description
本発明の実施形態は、車線逸脱走行アラートシステムおよび車線逸脱走行アラート方法に関する。
近年、自動車などの車両による事故を未然に防ぐための技術が種々提案されている。それらの一形態として、たとえば車線の逸脱などを検出し、運転者に対して警告を発する技術が知られている。
また、最近では、たとえば事故時の状況などを画像として記録するためのドライブレコーダーが広く普及している。このようなことから、たとえば車線の逸脱などを画像から検出する機能をドライブレコーダーに搭載することも行われている。
ところで、車両に後付けされるタイプのドライブレコーダーの場合、ウインカーやハンドルなどの車両標準装置と連携することができない。そのため、このタイプのドライブレコーダーに搭載される、たとえば車線の逸脱などを画像から検出する機能においては、運転手が意図した車線変更で車両が車線を跨いだ事象などを、運転者が意図していない警告すべき車線の逸脱として誤検出してしまう可能性がある。
本発明が解決しようとする課題は、車線を逸脱して走行している状態を画像から高精度で検出することができる車線逸脱走行アラートシステムおよび車線逸脱走行アラート方法を提供することである。
実施形態によれば、車線逸脱走行アラートシステムは、カメラと、演算処理部と、を具備する。前記カメラは、車両の前方の画像を撮像する。前記演算処理部は、前記画像に基づき、前記車両が車線を逸脱して走行している状態か否かを判定するための演算処理を実行する。前記演算処理部は、前記画像から路面上の線分を検出し、前記線分が一定期間継続的に検出された場合であって、前記画像上の座標を用いて算出される前記線分の傾きが正から負、または負から正に遷移していない場合、前記車両は車線を逸脱して走行している状態であると判定する。
以下、実施の形態について、図面を参照して説明する。
図1は、本実施形態の車線逸脱走行アラートシステム1のハードウェア構成の一例を示す図である。ここでは、この車線逸脱走行アラートシステム1が、車両に後付けされるタイプのドライブレコーダー上に実現されていることを想定する。なお、ドライブレコーダーは一例であって、車両の前方(進行方向)の画像を得られるならば、ドライブレコーダーに限らず、車線逸脱走行アラートシステム1は、様々な機器として実現され得る。
ここで、車線逸脱走行とは、たとえば車線変更時やカーブ走行時などの運転者の意図的なハンドル操作が行われている状況下で車両が車線を跨いだ事象を除く、運転者が意図せず車両が車線を逸脱して走行している事象を意味する。つまり、以下において、車線を逸脱して走行している状態という場合、運転者が意図せず車両が車線を逸脱して走行している状態を意味し、運転者の意図的なハンドル操作が行われている状況下で車両が車線を跨いだ状態を含まない。また、車線逸脱走行には、ふらつきなどと称される蛇行の状態が含まれる。
図1に示すように、この車線逸脱走行アラートシステム1は、たとえばCPU(Central Processing Unit)で構成される演算処理部11を有している。また、車線逸脱走行アラートシステム1は、演算処理部11に接続された、カメラ12、画像処理部13、GPS(Global Positioning System)受信部14、加速度センサー15、ジャイロセンサー16、無線通信部17、たとえばスピーカーやLED(light-emitting diode)で構成されるアラート出力部18、メモリー19を有している。さらに、車線逸脱走行アラートシステム1は、メモリー19に接続されたインターフェース部(I/F部)20を有している。
演算処理部11は、車線逸脱走行アラートシステム1としての動作を含むドライブレコーダーの全体的な制御を司るデバイスであり、たとえばメモリー19に格納される各種プログラムを実行することで、様々な演算処理を実行する。各種プログラムの中には、ドライブレコーダーを車線逸脱走行アラートシステム1として動作させるための車線逸脱走行アラートプログラム100が含まれている。
カメラ12は、ドライブレコーダーが設置される車両の前方(進行方向)の画像を動画像として継続的に撮像するための撮像ユニットである。つまり、本ドライブレコーダーは、カメラ12によって車両の前方の画像が撮像されるように車両に設置される。カメラ12によって撮像された画像は、たとえば演算処理部11を介してメモリー19に格納される。カメラ12は、ドライブレコーダー本体と分離して設けられるものであってもよい。この場合、カメラ12の設置位置のみ考慮するだけでよく、ドライブレコーダー本体の設置位置に関して柔軟性を高めることができる。
画像処理部13は、たとえばGPU(Graphics Processing Unit)で構成され、カメラ12によって撮像された画像に対して各種の処理を行う。画像処理部13は、カメラ12から直接的に画像を取得してもよいし、メモリー19に格納された画像をたとえば演算処理部11を介して間接的に取得してもよい。画像処理部13が画像に対して行う処理については、演算処理部11が行うようにしてもよい。つまり、画像処理部13は省略することも可能である。
GPS受信部14は、本ドライブレコーダーが設置された車両の位置を測定するためのGPS信号を受信するデバイスである。また、加速度センサー15およびジャイロセンサー16は、位置測定の精度を向上させるための補助的な情報として加速度および角加速度を取得するデバイスである。演算処理部11は、これらGPS受信部14、加速度センサー15およびジャイロセンサー16からのデータを用いて、位置測定のための演算処理を実行する。測定された位置の情報は、たとえば画像の属性情報としてメモリー19に格納される。ジャイロセンサー16によって得られる角加速度は、位置測定のほか、後述する車線逸脱走行の判定にも用いられる。
無線通信部17は、たとえばインターネットを介して車両外の所定の外部装置と無線通信するためのデバイスである。ここでは、車線逸脱走行の判定に必要な初期設定値を、当該所定の外部装置であるサーバーから取得するものとする。サーバーには、本ドライブレコーダーが設置される車両に関する情報(車高や車幅など)が管理されている。この情報をサーバーから取得して初期設定を行うことにより、後述する、画像内における、本ドライブレコーダーが設置された車両のボンネット位置や消失点などが定められる。初期設定は、車両が走行を開始した際、初期設定が行われていない状態が検知された場合に実行される。換言すれば、本ドライブレコーダーを設置して車両を走行させれば、初期設定は自動的に実行されることになる。初期設定においては、サーバーから取得した初期設定値を暫定的に適用した後、本ドライブレコーダーの設置状況に適応させるための微調整が、本ドライブレコーダーにおいて取得された少なくとも画像を含む各種データを用いて実行される。なお、サーバーは、たとえば車両の運転に関する支援サービスを提供する事業者によって設けられるコンピュータである。
アラート出力部18は、本ドライブレコーダーが設置された車両が車線を逸脱して走行している状態が検出された場合、運転者に警告を発するための報知ユニットである。アラート出力部18がスピーカーで構成される場合、警告音が出力され、アラート出力部18がLEDで構成される場合、その点灯や点滅が行われる。アラート出力部18は、たとえばスピーカーおよびLEDの双方によって構成されてもよい。
メモリー19は、たとえばHDD(Hard Dick Drive)やSSD(Solid State Drive)によって構成される不揮発性のストレージである。インターフェース部20は、メモリー19に格納された、たとえばカメラ12によって撮像された画像などの各種データをメモリーカード2に格納するためのデバイスである。インターフェース部20は、SD(Secure Digital)カード規格またはUSB(Universal Serial Bus)規格に準拠した通信を実行する。メモリーカード2は、たとえば本ドライブレコーダーに着脱自在なSDカードやUSBメモリーなどの不揮発性のストレージである。
次に、以上のような構成を有するドライブレコーダー上に実現されている本車線逸脱走行アラートシステム1が車線逸脱走行を検出する仕組みについて説明する。なお、ここでは、車線逸脱走行アラートプログラム100を演算処理部11が実行することによって本ドライブレコーダーを車線逸脱走行アラートシステム1として動作させることを想定している。より詳しくは、演算処理部11が、カメラ12やジャイロセンサー16からのデータを用いて、本ドライブレコーダーが設置された車両の車線逸脱走行を検出する機能を備えることを想定している。前述したように、本ドライブレコーダーは、無線通信部17を有している。よって、たとえば、カメラ12やジャイロセンサー16からのデータを無線通信部17によってサーバーへ送信し、サーバー側で車線逸脱走行を検出するための演算処理を実行し、その結果を無線通信部17によって受信して、アラート出力部18による警告を行うことも可能である。つまり、車線逸脱走行アラートシステム1は、ドライブレコーダー単体で実現することに限定されず、たとえばドライブレコーダーとサーバーとが協働することによって実現することも可能である。
まず、図2を参照して、本実施形態の車線逸脱走行アラートシステム1の基本的な動作の流れを説明する。
ここでは、車線逸脱走行アラートシステム1は、ドライブレコーダーが起動したタイミングで動作を開始し、ドライブレコーダーが停止したタイミングで動作を終了するものと想定する。また、ドライブレコーダーは、車両が駆動したタイミングで起動し、車両が停止(駆動停止)したタイミングで停止するものと想定する。つまり、車線逸脱走行アラートシステム1は、車両が駆動したタイミングで動作を開始し、車両が停止(駆動停止)したタイミングで動作を終了するものと想定する。そして、車線逸脱走行アラートシステム1は、車両が駆動してから停止(駆動停止)するまでの期間中、図2のフローチャートで示される手順で各処理を繰り返し実行する。
演算処理部11は、まず、カメラ12によって撮像された画像から白線(線分)を検出する白線検出処理(ステップS11)と、ジャイロセンサー16によって取得された角加速度からハンドル操作の有無を判定するハンドル操作有無判定処理(ステップS12)とを実行する。ここでは、路面上の車線を示す線分が白色であることを想定している。ステップS11の白線検出処理と、ステップS12のハンドル操作有無判定処理とは、図2に示すように、パラレル処理として実行されることが好ましいが、たとえば演算処理部11の性能などによっては、シリアル処理として実行してもよい。なお、カメラ12によって撮像された画像に対する処理は、演算処理部11の制御の下、その一部または全部が画像処理部13によって実行されるが、以下では、単に、演算処理部11が実行するという。また、以下では、車線を示す線分を、単に、車線と称することがある。つまり、走行レーンを意図して「車線」を用いることに加えて、走行レーンを示す線分を意図して「車線」を用いることがある。
ここで、路面上の車線を示す線分は以下の場合を含む。
片側2車線の場合・・・走行車線と追越車線の境界線
片側3車線の場合・・・第1走行車線と第2走行車線の境界線、および第2走行車線と追越車線の境界線
また、線分は白色に限らず、オレンジ色・黄色等、何色であってもよい。
ここで、路面上の車線を示す線分は以下の場合を含む。
片側2車線の場合・・・走行車線と追越車線の境界線
片側3車線の場合・・・第1走行車線と第2走行車線の境界線、および第2走行車線と追越車線の境界線
また、線分は白色に限らず、オレンジ色・黄色等、何色であってもよい。
そして、演算処理部11は、ステップS11の白線検出処理と、ステップS12のハンドル操作有無判定処理との処理結果に基づき、車両が車線を逸脱して走行している状態を検出して警告を発する車線逸脱走行アラート処理(ステップS13)を実行する。
続いて、白線検出処理(ステップS11)、ハンドル操作有無判定処理(ステップS12)および車線逸脱走行アラート処理(ステップS13)のそれぞれについて、その詳細を順次説明する。
まず、図3から図6を参照して、白線検出処理(図2:ステップS11)について説明する。
図3は、カメラ12によって撮像された画像の一例であって、当該画像から白線を検出するために当該画像上に設定される各種領域の一設定例を示す図である。
前述したように、車線逸脱走行アラートシステム1は、無線通信部17によってサーバーから取得される初期設定値を暫定的に用いた初期設定により、カメラ12によって撮像される画像内におけるボンネット位置a1が定められる。演算処理部11は、さらに、初期設定において、ボンネット位置a1に基づき、画像内のボンネット位置a1よりも上部の矩形領域を画面平均輝度算出領域a2に設定する。画面平均輝度算出領域a2は、たとえば昼間であるのか夜間であるのかの判定に用いる輝度を得るために設定される領域である。つまり、本車線逸脱走行アラートシステム1は、カメラ12によって撮像される画像全体の平均輝度を画面平均輝度として求めるのではなく、画像中の概ね車外に相当する領域の平均輝度を画面平均輝度として求める。なお、画面平均輝度算出領域a2を示す初期設定値が、サーバーから与えられてもよい。
また、前述したように、車線逸脱走行アラートシステム1は、無線通信部17によってサーバーから取得される初期設定値を暫定的に用いた初期設定により、カメラ12によって撮像される画像内における消失点a3が定められる。消失点a3とは、遠近法における無限遠点であり、カメラ12によって撮像される、車両の前方(進行方向)の画像において1点だけ定まる点である。演算処理部11は、さらに、初期設定において、消失点a3とボンネット位置a1とに基づき、画像内の消失点a3よりも下部であり、かつ、ボンネット位置a1よりも上部の台形領域を白線検出領域a4に設定する。白線検出領域a4は、非平行の一組の対辺が消失点a3と車両の両側端とを結ぶ線上に位置し、かつ、下辺がボンネット位置a1から一定距離離れるように設定される。路面上の車線を検出するための画像上の探索範囲を当該白線検出領域a4に絞り込むことで、本車線逸脱走行アラートシステム1は、計算量を軽減し、高性能な処理能力を必要としないようにしている。図3は、車両が車線を逸脱せずに走行している状態においてカメラ12によって撮像された画像であり、画像内に白線は写っているが、白線検出領域a4外なので、この白線に関する処理を省略することができる。また、このように設定される白線検出領域a4から車線である白線が検出された場合、車両が車線を跨いでいる状態にあると判定することができる。なお、白線検出領域a4を示す初期設定値も、サーバーから与えられてもよい。
また、演算処理部11は、さらに、初期設定において、画像内の白線検出領域a4の下辺とボンネット位置a1との間に路面輝度算出領域a5を設定する。路面輝度算出領域a5を示す初期設定値も、サーバーから与えられてもよい。
次に、図3に例示したように画像内に設定される画面平均輝度算出領域a2、白線検出領域a4および路面輝度算出領域a5を用いて、演算処理部11が、当該画像内から白線領域を検出する手法について説明する。
図4は、カメラ12によって撮像された画像から白線領域を検出するイメージを示す図である。図4中、(A)は、白線検出領域a4を含む、カメラ12によって撮像された画像全体を示し、(B)は、カメラ12によって撮像された画像から検出された白線領域b1を示す。
演算処理部11は、路面輝度算出領域a5内の各画素の輝度を使って路面輝度を算出する。演算処理部11は、この路面輝度よりも閾値以上高い輝度の画素を白線検出領域a4内において検索し、図4(B)に示すような白線領域b1を検出する。ここで、演算処理部11は、画面平均輝度算出領域a2内の各画素の輝度を使って画面平均輝度算出を算出し、白線領域b1を検出するための閾値を決定する。たとえば、昼間と夜間とで当該閾値を切り換える。なお、この閾値の切り換えは、昼間と夜間といった2段階に限らず、3段階以上で行ってもよいし、あるいは、算出された画面平均輝度に応じて当該閾値をたとえばリニアに変化させるようにしてもよい。また、演算処理部11は、一定数以上の(路面輝度よりも閾値以上高い輝度の)画素からなる領域を白線領域b1として検出する。
ところで、このように路面輝度との差分によって検出される領域は、必ずしも白線に対応する領域とは限られない。そこで、演算処理部11は、検出した領域の幅(巾方向(横方向)の長さ)と、高さ(長手方向(縦方向)の長さ)とに基づき、その領域が白線に対応する領域か否かを判定する。幅が閾値以上であるか、または、高さが閾値未満である場合、演算処理部11は、その領域は白線に対応する領域ではないと判定する。
また、幅、高さがいずれも基準を満たす場合、演算処理部11は、さらに、その白線の傾き(絶対値)が閾値以上か否かを判定する。傾きが閾値以上の場合、演算処理部11は、その白線は車線であると判定する。この閾値は、たとえば車高や速度に応じて設定される。図5を参照して、白線の傾きを算出する手法について説明する。
カメラ12によって撮像される画像は、1280画素(横)×720画素(縦)の解像度であるものと想定する。また、画像の左上を原点(0,0)とし、横方向にx軸、縦方向にy軸を取り、画像の右下の座標値を(1280,720)とするものと想定する。画像の横方向は、カメラ12が撮像範囲に収める実空間の水平方向に対応し、画像の縦方向は、当該実空間の垂直方向に対応する。
ここで、図5に示すように、(x1,y1)の位置を一端とし、(x2,y2)の位置を他端とする白線が検出された場合を考える。この場合、演算処理部11は、この白線の傾きαを、
α=(y2−y1)/(x2−x1)…(式1)
によって計算する。そして、演算処理部11は、その算出された値の絶対値が閾値以上である場合、その白線は車線であると判定する。
α=(y2−y1)/(x2−x1)…(式1)
によって計算する。そして、演算処理部11は、その算出された値の絶対値が閾値以上である場合、その白線は車線であると判定する。
たとえば、(x1,y1)=(660,450)であり、(x2,y2)=(620,590)であった場合、白線の傾きαは、
α=(590−450)/(620−660)=−3.5
となる。仮に、車両の左右方向(進行方向に対して垂直方向)に対して45度以上に対応する値が閾値として設定されていると想定すると、その絶対値は閾値(1[45度])以上であるので、演算処理部11は、この白線を車線と判定する。
α=(590−450)/(620−660)=−3.5
となる。仮に、車両の左右方向(進行方向に対して垂直方向)に対して45度以上に対応する値が閾値として設定されていると想定すると、その絶対値は閾値(1[45度])以上であるので、演算処理部11は、この白線を車線と判定する。
なお、図5においては、白線の傾きαを算出するための座標として、白線の両端の座標を示しているが、これに限らず、白線上の任意の2点の座標から白線の傾きαを算出するようにしてもよい。
図6は、本車線逸脱走行アラートシステム1における白線検出処理(図2:ステップS11)の流れを示すフローチャートである。
演算処理部11は、カメラ12によって撮像された画像内に設定される画面平均輝度算出領域a2を対象として画面平均輝度を算出する(ステップS21)。また、演算処理部11は、カメラ12によって撮像された画像内に設定される路面輝度算出領域a5を対象として路面輝度を算出する(ステップS22)。ステップS21の画面平均輝度を算出する処理と、ステップS22の路面輝度を算出する処理とは、パラレル処理として実行されてもよいし、図6に示す順序とは逆の順序でシリアル処理として実行されてもよい。
次に、演算処理部11は、カメラ12によって撮像された画像内に設定される白線検出領域a4を対象として白線領域b1を検出する(ステップS23)。具体的には、ステップS21で算出した画面平均輝度に基づいて定められる閾値を用いて、ステップS22で算出した路面輝度よりも当該閾値以上に高い輝度の領域を、白線検出領域a4から検出する。ここで、演算処理部11は、白線検出領域a4において、一定数以上の(路面輝度よりも閾値以上に高い輝度の)画素からなる領域を白線領域b1として検出する。
白線検出領域a4から白線領域b1が検出された場合(ステップS24:YES)、演算処理部11は、その白線領域b1の幅、高さが各々の閾値以内か否かを判定する(ステップS25)。白線領域b1の幅が閾値未満であり、かつ高さが閾値以上である場合(ステップS25:YES)、演算処理部11は、続いて、白線領域b1の傾き(絶対値)が閾値以上か否かを判定する(ステップS26)。たとえば車両の左右方向(進行方向に対して垂直方向)に対して45度以上か否かを判定する。
幅、高さがいずれも基準を満たし、かつ、傾き(絶対値)が閾値以上である場合(ステップS26:YES)、演算処理部11は、検出対象の車線である白線ありと判定して(ステップS27)、この白線検出処理を終了する。
一方、白線検出領域a4から白線領域b1が検出されなかった場合(ステップS24:NO)、または、検出された白線領域b1の幅、高さの一方でも基準を満たさない場合(ステップS25:NO)、または、白線領域b1の傾き(絶対値)が閾値未満であった場合(ステップS26:NO)、演算処理部11は、検出対象の車線である白線なしと判定して(ステップS28)、この白線検出処理を終了する。
カメラ12によって撮像される画像内において前述したように設定される白線検出領域a4から車線である白線が検出されたことは、車両が車線を跨いでいる状態にあることを示している。しかしながら、たとえば車線変更時やカーブ走行時など、運転者が意図的にハンドル操作を行っている状況下においても、白線検出領域a4から車線である白線が検出され得るので、白線検出領域a4から車線である白線が検出されたことは、車線逸脱走行を必ずしも示すものではない。
次に、図7を参照して、ハンドル操作有無判定処理(図2:ステップS12)について説明する。図7は、ハンドル操作有無判定処理の流れを示すフローチャートである。
演算処理部11は、ジャイロセンサー16からのデータに基づき、車両の左右方向(進行方向に対して垂直方向)の角加速度の移動平均を算出する(ステップS31)。たとえば100ミリ秒分の左右方向の角加速度の移動平均を算出する。また、演算処理部11は、角加速度の移動平均の和を算出する(ステップS32)。
演算処理部11は、角加速度の移動平均の和は閾値以上か否かを判定する(ステップS33)。閾値以上の場合(ステップS33:YES)、演算処理部11は、続いて、角加速度の移動平均の和が閾値以上となる現象が一定期間継続したか否かを判定する(ステップS34)。たとえば500ミリ秒連続して閾値以上か否かを判定する。当該現象が一定期間継続している場合(ステップS34:YES)、演算処理部11は、ハンドル操作ありと判定して(ステップS35)、このハンドル操作有無判定処理を終了する。角加速度の移動平均の和が閾値以上となる現象が一定期間継続する場合とは、たとえばカーブ走行時の場合である。つまり、ここでは、カーブ走行時の運転者の意図的なハンドル操作の有無を判定している。このハンドル操作を便宜的に強ハンドル操作と称する。
一方、角加速度の移動平均の和が閾値未満の場合(ステップS33:NO)や、角加速度の移動平均の和が閾値以上となる現象が一定期間継続していない場合(ステップS34:NO)、演算処理部11は、ハンドル操作なしと判定して(ステップS35)、このハンドル操作有無判定処理を終了する。
このように、本車線逸脱走行アラートシステム1は、ウインカーやハンドルなどの車両標準装置と連携することなく、カーブ走行時の運転者の意図的なハンドル操作の有無を判定する。なお、たとえば車線変更時においても、運転者の意図的なハンドル操作は行われるが、ゆるやかに斜行するために行われるハンドル操作は、このハンドル操作有無判定処理においては、ハンドル操作なしと判定される。このようなハンドル操作を便宜的に弱ハンドル操作と称する。強ハンドル操作による急な車線変更の場合には、ハンドル操作ありと判定される。
次に、図8から図10を参照して、白線検出処理およびハンドル操作有無判定処理の処理結果に基づいて実行される車線逸脱走行アラート処理(図2:ステップS13)について説明する。
図8は、車線逸脱走行アラート処理の流れを示すフローチャートである。
演算処理部11は、白線検出処理によって白線が検出されたか否かを判定する(ステップS41)。白線が検出された場合(ステップS41:YES)、演算処理部11は、続いて、ハンドル操作有無判定処理によってハンドル操作ありと判定されたか否かを判定する(ステップS42)。そして、ハンドル操作なしと判定された場合(ステップS42:NO)、演算処理部11は、ステップS43へ進む。換言すれば、白線が検出されていない場合(ステップS41:NO)、または、ハンドル操作ありと判定された場合(ステップS42:YES)、演算処理部11は、車線逸脱走行の状態ではないとして、この車線逸脱走行アラート処理を終了する。たとえばカーブ走行時の運転者が意図的にハンドル操作(強ハンドル操作)を行っている状況下で車両が車線を跨いだ場合においては、運転者に対する警告は行われない。
なお、ステップS41とステップS42とは、図8に示す順序と逆の順序で実行してもよい。つまり、ハンドル操作なしと判定されている場合に、白線が検出されたか否かを判定するようにしてもよい。
次に、演算処理部11は、一定期間以上白線が継続的に検出されているか否かを判定する(ステップS43)。換言すれば、白線が検出され始めてからの経過期間が一定期間以上か否かを判定する。一定期間以上継続的に検出されている場合(ステップS43:YES)、演算処理部11は、ステップS44へ進む。一定期間に至っていない場合には(ステップS43:NO)、演算処理部11は、その時点でのアラートは行わず、この車線逸脱走行アラート処理を終了する。したがって、たとえば車両が短期的に車線を跨いだ場合においては、運転者に対する警告は行われない。
ここで、図9および図10を参照して、ステップS44〜ステップS45において実行される、画像からの白線の検出状況に基づいて車両が車線を逸脱して走行している状態か否かを判定する手法について説明する。
図9は、片側2車線の道路を走行する車両が車線変更した場合にカメラ12によって撮像される画像中の白線の傾きの遷移状況を示す図である。
より詳しくは、図9は、片側2車線の左側の走行車線を走行する車両が矢印c1で示すように右側の追越車線へ車線変更した場合の時刻t1における画像と(時刻t1よりも時間的に後ろの)時刻t2における画像とを分かり易く比較可能に並べたものである。
前述した白線検出処理において、時刻t1における画像からは、白線検出領域a4内から白線c2−1が検出され、時刻t2における画像からは、白線検出領域a4内から白線c2−2が検出される。また、これら白線c2−1,c2−2については、前述した白線検出処理において、その傾きが各々算出されている。
時刻t1における画像中の白線c2−1は、前述の(式1)の分母(x2−x1)が正となるので(分子(y2−y1)は常に正となる)、傾きが正の値として算出される。これに対して、時刻t2における画像中の白線c2−2は、分母(x2−x1)が負となるので、傾きが負の値として算出される。
そこで、一定期間以上白線が継続的に検出されている場合において、白線の傾きが正から負、または負から正へ遷移しているならば、演算処理部11は、基本的には、車線変更によって車両が車線(走行車線と追越車線の境界線)を跨いだものであり、車線を逸脱して走行している状態ではないと判定する。加えて、演算処理部11は、白線が検出され始めてから白線の傾きが遷移するまでの期間が一定期間内か否かを調べて、一定期間内である場合に、車線変更によって車両が車線(走行車線と追越車線の境界線)を跨いだものであり、車線を逸脱して走行している状態ではないと判定する。換言すれば、白線の傾きが遷移していても、白線が検出され始めてから一定期間を超えて発生している場合には、車線変更によるものではなく、本車線逸脱走行アラートシステム1においては車線逸脱走行の一形態としている、ふらつきなどと称される蛇行の状態であると判定する。なお、白線が検出され始めてから白線の傾きが遷移するまでの期間の長短を判定するための一定期間は、白線が継続的に検出されている期間の長短を判定するための一定期間とは異なるものであり、たとえば、前者の一定期間は後者の一定期間の1/2程度である。
図10は、車線変更の場合(ケース1)での白線の傾きと、車線逸脱走行の場合(ケース2)での白線の傾きとを時系列かつ分かり易く比較可能に並べて示す図である。
図10中、「検知されず」とある欄は、白線が検出されなかったことを示し、数値が記載されている欄は、車線である白線が検出されていることを示し、かつ、その傾きを示している。
白線が一定期間(d1)以上継続して検出された場合、演算処理部11は、車線を逸脱して走行している状態か否かを判定する。ここで、演算処理部11は、白線の傾きが正から負、または負から正へ遷移しているか否かを判定し、遷移していなければ、車線を逸脱して走行している状態であると判定する。ケース2の場合、白線の傾きが正であり続け、負への遷移が発生していないので、演算処理部11は、車線を逸脱して走行している状態であると判定する。
一方、ケース1の場合、白線の傾きが正から負へ遷移している(d2)。この場合、演算処理部11は、その遷移が、白線が検出され始めてから一定期間(d3)内に発生しているか否かを判定し、一定期間(d3)内に発生していれば、車線変更であって、車線を逸脱して走行している状態ではないと判定する。ケース1の場合と異なり、白線の傾きの遷移が、白線が検出され始めてから一定期間(d3)を超えて発生したものであった場合、演算処理部11は、車線逸脱走行(ふらつき・蛇行)の状態であると判定する。
したがって、車線変更時の運転者が意図的にハンドル操作(弱ハンドル操作)を行っている状況下で車両が車線(走行車線と追越車線の境界線)を跨いだ場合においては、運転者に対する警告は行われない。また、ふらつき・蛇行によって車両が車線(走行車線と追越車線の境界線)を跨いだ場合においては、運転者に対する警告が行われる。
以上を踏まえて、図8に戻り、車線逸脱走行アラート処理の説明を続ける。
演算処理部11は、一定期間以上白線が継続的に検出されている場合、白線の傾きの正負が遷移しているか否かを判定する(ステップS44)。遷移している場合(ステップS44:YES)、演算処理部11は、続いて、その遷移が、白線が検出され始めてから一定期間内に発生しているか否かを判定する(ステップS45)。
その遷移が、白線が検出され始めてから一定期間内に発生している場合(ステップS45:YES)、演算処理部11は、車線変更によって車両が車線を跨いだものであり、車線を逸脱して走行している状態ではないと判定し、この車線逸脱走行アラート処理を終了する。
一方、白線の傾きの正負が遷移していない場合(ステップS44:NO)、または、白線の傾きの正負が遷移しているが、その遷移が、白線が検出され始めてから一定期間内に発生していない場合(ステップS45:NO)、演算処理部11は、車線逸脱走行の状態であると判定し、たとえばスピーカーやLEDで構成されるアラート出力部18を介して、警告音の出力やLEDの点灯または点滅などの車線逸脱走行アラートを実行する(ステップS46)。
図11は、車線である白線が継続的に検出された場合における本車線逸脱走行アラートシステム1の車線逸脱走行アラート有無を状況別に示す図である。
ハンドル操作(強ハンドル操作)があり、また、白線の傾きの遷移がある場合、本車線逸脱走行アラートシステム1は、車線変更であると判定し、車線逸脱走行アラートを行わない(1段目)。
ハンドル操作(強ハンドル操作)があり、また、白線の傾きの遷移がない場合、カーブ走行であると判定し、車線逸脱走行アラートを行わない(2段目)。
ハンドル操作(強ハンドル操作)がなく、また、白線の傾きの遷移があり、かつ、その遷移が一定期間内に発生している場合、車線変更であると判定し、車線逸脱走行アラートを行わない(3段目)。
ハンドル操作(強ハンドル操作)がなく、また、白線の傾きの遷移があるが、その遷移が一定期間内に発生していない場合、車線逸脱走行(ふらつき・蛇行)と判定し、車線逸脱走行アラートを行う(4段目)。
ハンドル操作(強ハンドル操作)がなく、また、白線の傾きの遷移がない場合、車線逸脱走行と判定し、車線逸脱走行アラートを行う(5段目)。
以上のように、本車線逸脱走行アラートシステム1においては、カメラ12によって撮像された画像から検出される白線(車線)の傾きの遷移と、ジャイロセンサー16によって得られる車両の左右方向(進行方向に対して垂直方向)の角速度の変化とから、車線変更などの運転者が意図する車線逸脱の誤アラートを防止することができる。
つまり、本車線逸脱走行アラートシステム1は、ウインカーやハンドルなどの車両標準装置と連携する必要がなく、車線を逸脱して走行している状態を画像から高精度で検出することができる。また、本車線逸脱走行アラートシステム1は、カメラ12によって撮像された画像から車線を検出するための探索範囲(白線検出領域a4)を狭めることで、計算量を軽減し、高性能な処理能力を必要としない。すなわち、たとえば車両に後付けされるタイプのドライブレコーダー上などに実現するのに好適な構成を有している。
ところで、以上の説明では、車両の前方(進行方向)の画像を用いる例を示したが、たとえば車両の後方(進行方向の逆方向)の画像を用いることも可能である。また、白線領域を検出する場合についても、輝度値に基づき白線領域を検出する方法の他に、画像を構成する各画素のR値、B値、G値(画素値)に基づき判定することでも構わない。画面平均輝度算出領域a2と同じ領域からR値、G値またはB値の平均値やヒストグラムの中央値を算出し、R値、G値およびB値のいずれか一つまたは二つ以上の値に対して閾値を設定し、各画素のR値、G値およびB値のうち評価対象となる画素値に基づいて白線領域b1を検出しても良い。また、ハンドル操作有無判定処理においても角速度の移動平均値を基に判断する以外にも、角速度の推移や単位時間ごとの角速度積分値などの角速度に基づく値に基づいてハンドル操作の有無を判定しても構わない。
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
1…車線逸脱走行アラートシステム、2…メモリーカード、11…演算処理部、12…カメラ、13…画像処理部、14…GPS受信部、15…加速度センサー、16…ジャイロセンサー、17…無線通信部、18…アラート出力部、19…メモリー、20…インターフェース部、100…車線逸脱走行アラートプログラム。
Claims (10)
- 車両の前方の画像を撮像するカメラと、
前記画像に基づき、前記車両が車線を逸脱して走行している状態か否かを判定するための演算処理を実行する演算処理部と、
を具備し、
前記演算処理部は、
前記画像から路面上の線分を検出し、
前記線分が一定期間継続的に検出された場合であって、前記画像上の座標を用いて算出される前記線分の傾きが正から負、または負から正に遷移していない場合、前記車両は車線を逸脱して走行している状態であると判定する、
車線逸脱走行アラートシステム。 - 前記車両の角加速度を検出するセンサーをさらに具備し、
前記演算処理部は、前記車両の左右方向の角加速度の移動平均の和が閾値以上となる現象が一定期間継続的に検出された場合、前記車両は車線を逸脱して走行している状態ではないと判定する、
請求項1に記載の車線逸脱走行アラートシステム。 - 前記演算処理部は、前記線分が検出されない場合、前記車両は車線を逸脱して走行している状態ではないと判定する請求項1または2に記載の車線逸脱走行アラートシステム。
- 前記演算処理部は、前記線分の傾きが遷移している場合、前記車両は車線を逸脱して走行している状態ではないと判定する請求項1〜3のいずれか1項に記載の車線逸脱走行アラートシステム。
- 前記演算処理部は、前記線分が検出されてから前記線分の傾きが遷移するまでの期間が閾値以上であった場合、前記車両は車線を逸脱して走行している状態であると判定する請求項4に記載の車線逸脱走行アラートシステム。
- 前記演算処理部は、
前記画像上の前記車両のボンネット位置よりも上方の一部領域を平均輝度算出領域に設定し、
前記画像上の消失点よりも下方で前記ボンネット位置よりも上方の一部領域を線分検出領域に設定し、
前記画像上の前記線分検出領域よりも下方で前記ボンネット位置よりも上方の一部領域を路面輝度算出領域に設定し、
前記路面輝度算出領域で得た路面輝度よりも、前記平均輝度算出領域で得た平均輝度に応じて適用される閾値以上に輝度が高い領域を、前記線分検出領域から抽出することによって前記線分を検出する、
請求項1〜5のいずれか1項に記載の車線逸脱走行アラートシステム。 - 前記演算処理部は、前記平均輝度算出領域で得た前記平均輝度に基づき、昼間用の閾値または夜間用の閾値の一方を適用する請求項6に記載の車線逸脱走行アラートシステム。
- 前記演算処理部は、前記線分検出領域から抽出された前記領域のうち、長手方向の長さが長手方向の長さの閾値以上であり、かつ、巾方向の長さが巾方向の長さの閾値未満である線分領域を前記線分として検出する請求項6または7に記載の車線逸脱走行アラートシステム。
- 前記演算処理部は、前記画像上の座標を用いて算出される傾きが閾値以上の前記線分領域を前記線分として検出する請求項8に記載の車線逸脱走行アラートシステム。
- 車両の前方の画像を撮像するカメラと、前記車両の角加速度を検出するセンサーとを有し、前記車両に搭載される電子機器において、前記車両が車線を逸脱して走行している状態を検出して警告を発する車線逸脱走行アラート方法であって、
前記カメラによって撮像される画像から路面上の線分を検出することと、
前記線分が一定期間継続的に検出された場合であって、前記画像上の座標を用いて算出される前記線分の傾きが正から負、または負から正に遷移していない場合、前記車両は車線を逸脱して走行している状態であると判定することと、
前記線分の傾きが遷移している場合、または、前記センサーによって検出される前記車両の左右方向の角加速度の移動平均の和が閾値以上となる現象が一定期間継続的に検出された場合、前記車両は車線を逸脱して走行している状態ではないと判定することと、
を具備する車線逸脱走行アラート方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019108882A JP2020201766A (ja) | 2019-06-11 | 2019-06-11 | 車線逸脱走行アラートシステムおよび車線逸脱走行アラート方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019108882A JP2020201766A (ja) | 2019-06-11 | 2019-06-11 | 車線逸脱走行アラートシステムおよび車線逸脱走行アラート方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2020201766A true JP2020201766A (ja) | 2020-12-17 |
Family
ID=73743466
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019108882A Pending JP2020201766A (ja) | 2019-06-11 | 2019-06-11 | 車線逸脱走行アラートシステムおよび車線逸脱走行アラート方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2020201766A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022168883A1 (ja) * | 2021-02-05 | 2022-08-11 | 株式会社デンソー | 処理方法、処理システム、処理プログラム、処理装置 |
JP7512330B2 (ja) | 2022-08-19 | 2024-07-08 | 株式会社デンソーテン | 情報処理装置、情報処理方法およびプログラム |
-
2019
- 2019-06-11 JP JP2019108882A patent/JP2020201766A/ja active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022168883A1 (ja) * | 2021-02-05 | 2022-08-11 | 株式会社デンソー | 処理方法、処理システム、処理プログラム、処理装置 |
JPWO2022168883A1 (ja) * | 2021-02-05 | 2022-08-11 | ||
JP7428273B2 (ja) | 2021-02-05 | 2024-02-06 | 株式会社デンソー | 処理方法、処理システム、処理プログラム、記憶媒体、処理装置 |
JP7512330B2 (ja) | 2022-08-19 | 2024-07-08 | 株式会社デンソーテン | 情報処理装置、情報処理方法およびプログラム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4045862B2 (ja) | 車載カメラの光軸ずれ検出装置 | |
JP5421072B2 (ja) | 接近物体検知システム | |
JP4914234B2 (ja) | 先行車両検出装置 | |
US7619668B2 (en) | Abnormality detecting apparatus for imaging apparatus | |
JP5637302B2 (ja) | 走行支援装置及びその隣接車両検出方法 | |
US10220782B2 (en) | Image analysis apparatus and image analysis method | |
JP2012166647A (ja) | 画像処理装置およびトラクタ | |
JP6302559B2 (ja) | 車両の車道の車道形状を判定する方法および装置 | |
JP5273300B2 (ja) | 車両周辺監視装置 | |
JP2006157739A (ja) | 撮像装置の異常検知装置 | |
JP4980970B2 (ja) | 撮像手段の調整装置および物体検出装置 | |
JP2007221200A (ja) | 車両周辺監視装置 | |
JP2011065219A (ja) | 道路曲率推定装置 | |
JP6631350B2 (ja) | ドライブレコーダ | |
JP2020201766A (ja) | 車線逸脱走行アラートシステムおよび車線逸脱走行アラート方法 | |
JP2013161202A (ja) | 車両周辺監視装置 | |
WO2016092925A1 (ja) | 接近車両検出装置 | |
JP2011215769A (ja) | 車線位置検出装置および車線位置検出方法 | |
JPH0981757A (ja) | 車両位置検出装置 | |
JP5083142B2 (ja) | 車両周辺監視装置 | |
JP4020071B2 (ja) | 周囲状況表示装置 | |
KR101338058B1 (ko) | 차량의 전방 영상을 이용하는 도로상 요철 검출 시스템 | |
JP2013213792A (ja) | 路面状態推定装置 | |
KR101849326B1 (ko) | 차량용 카메라 시스템 | |
JP2009181310A (ja) | 道路パラメータ推定装置 |