(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-11-15
(45)【発行日】2024-11-25
(54)【発明の名称】運転状態判定装置、運転支援装置、運転状態判定方法、および運転状態判定プログラム
(51)【国際特許分類】
G08G 1/16 20060101AFI20241118BHJP
B60W 50/12 20120101ALI20241118BHJP
B60W 40/02 20060101ALI20241118BHJP
B60W 40/08 20120101ALI20241118BHJP
【FI】
G08G1/16 F
B60W50/12
B60W40/02
B60W40/08
(21)【出願番号】P 2021042178
(22)【出願日】2021-03-16
【審査請求日】2024-01-17
(73)【特許権者】
【識別番号】519373914
【氏名又は名称】株式会社J-QuAD DYNAMICS
(74)【代理人】
【識別番号】100105957
【氏名又は名称】恩田 誠
(74)【代理人】
【識別番号】100068755
【氏名又は名称】恩田 博宣
(72)【発明者】
【氏名】芝田 興史
【審査官】篠原 将之
(56)【参考文献】
【文献】特開2018-022349(JP,A)
【文献】特開2004-069600(JP,A)
【文献】特開2008-219063(JP,A)
【文献】特開2002-025000(JP,A)
【文献】特開平11-339199(JP,A)
【文献】特表2017-516219(JP,A)
【文献】米国特許出願公開第2012/0069185(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G08G 1/16
B60W 50/12
B60W 40/02
B60W 40/08
(57)【特許請求の範囲】
【請求項1】
車両の周囲の物体を感知するセンサ(12,22)の出力に応じた前記車両の周囲の物体の情報を取得する物体情報取得処理(S40)と、
前記物体の情報に基づき、前記車両の運転者が注意を向けるべき対象物体を設定する対象物体設定処理(S50~S54)と、
前記運転者の画像データを取得する画像取得処理(S60)と、
前記画像データを入力とし、前記対象物体の確認がなされない状態が漫然判定値以上継続する場合、漫然運転状態であると判定する判定処理(S14,S16~S22,S30,S32)と、を実行し、
前記漫然運転状態は、前記車両を運転するうえでの安全確認が不十分な運転状態であり、
前記判定処理は、視野算出処理(S14)と、物体確認判定処理(S16~S22)と、漫然運転判定処理(S30,S32)と、を含み、
前記視野算出処理は、前記画像データを入力とし、前記運転者の視野を算出する処理であり、
前記物体確認判定処理は、前記視野に前記対象物体が入っている継続時間が確認判定値以上となる場合に、前記物体の確認がなされたと判定する処理であり、
前記漫然運転判定処理は、前記物体確認判定処理によって確認がなされたと判定されない状態が
前記漫然判定値以上継続する場合に漫然運転状態であると判定する処理である運転状態判定装置。
【請求項2】
前記対象物体は、前記車両の運転の仕方次第では路面よりも上の領域において前記車両が接触する可能性がある物体である請求項1記載の運転状態判定装置。
【請求項3】
前記対象物体設定処理は、評価変数算出処理(S50)と、対象物体判定処理(S52,S54)と、を含み、
前記評価変数算出処理は、前記物体情報取得処理によって情報が取得された物体のそれぞれについて、前記対象物体とするか否かの評価に用いる変数である評価変数の値を算出する処理であり、
前記対象物体判定処理は、前記取得された物体の前記評価変数の値に応じて当該物体を前記対象物体に設定するか否かを判定する処理であり、
前記評価変数の値は、前記評価変数算出処理によって、前記取得された物体の種類に応じて異なる値に算出される請求項1または2記載の運転状態判定装置。
【請求項4】
前記対象物体設定処理は、評価変数算出処理(S50)と、対象物体判定処理(S52,S54)と、を含み、
前記評価変数算出処理は、前記物体情報取得処理によって情報が取得された物体のそれぞれについて、前記対象物体とするか否かの評価に用いる変数である評価変数の値を算出する処理であり、
前記対象物体判定処理は、前記取得された物体の前記評価変数の値に応じて当該物体を前記対象物体に設定するか否かを判定する処理であり、
前記評価変数の値は、前記評価変数算出処理によって、前記車両に対する前記取得した物体の相対速度が負である場合、前記相対速度が小さい場合に大きい場合よりも前記対象物体に設定される側の大きい値に算出される請求項1~3のいずれか1項に記載の運転状態判定装置。
【請求項5】
前記対象物体設定処理は、評価変数算出処理(S50)と、対象物体判定処理(S52,S54)と、を含み、
前記評価変数算出処理は、前記物体情報取得処理によって情報が取得された物体のそれぞれについて、前記対象物体とするか否かの評価に用いる変数である評価変数の値を算出する処理であり、
前記対象物体判定処理は、前記取得された物体の前記評価変数の値に応じて当該物体を前記対象物体に設定するか否かを判定する処理であり、
前記評価変数の値は、前記評価変数算出処理によって、前記取得された物体と前記車両との距離が小さい場合に大きい場合よりも前記対象物体に設定される側の大きい値に算出される請求項3または4記載の運転状態判定装置。
【請求項6】
請求項1~5のいずれか1項に記載の運転状態判定装置における前記各処理と、
前記判定処理の判定結果を入力とする前記車両の運転支援処理と、を実行する運転支援装置。
【請求項7】
前記運転支援処理は、運転支援のための所定のハードウェア(52)を操作する条件を、前記漫然運転状態であると判定されている場合にされてない場合よりも緩める処理(S94,S96)を含む請求項6記載の運転支援装置。
【請求項8】
前記運転支援処理は、前記車両が走行車線を逸脱することに対処すべく、所定のハードウェア手段を操作する逸脱対処処理(S102~S106)を含み、
前記逸脱対処処理を、前記車両が前記走行車線を逸脱する可能性があるときに前記漫然運転状態である旨判定されている場合に実行する請求項6または7記載の運転支援装置。
【請求項9】
前記運転者がブレーキ操作をしている場合、前記漫然運転状態である旨の判定の有無にかかわらず、前記車両が前記走行車線を逸脱する可能性があるときに前記逸脱対処処理を実行する請求項8記載の運転支援装置。
【請求項10】
前記車両の進行方向の情報に基づき、前記車両の走行領域を算出する領域算出処理(S72)と、
前記画像データを入力とし、走行領域の確認がなされない状態の継続時間が所定時間以上となる場合、わき見運転であると判定するわき見判定処理(S74~S89)と、を実行し、
前記逸脱対処処理を、前記車両が前記走行車線を逸脱するおそれがあるときに前記わき見運転であると判定されている場合にも実行する請求項8記載の運転支援装置。
【請求項11】
前記わき見判定処理は、視野算出処理(S14)と、領域確認判定処理(S74~S80)と、を含み、
前記視野算出処理は、前記画像データを入力とし、前記運転者の視野を算出する処理であり、
前記領域確認判定処理は、前記視野に前記走行領域が入っている継続時間が領域注視判定値以上となる場合に、前記走行領域の確認がなされたと判定する処理である請求項10記載の運転支援装置。
【請求項12】
請求項1~5のいずれか1項に記載の運転状態判定装置における前記各処理を実行するステップを有する運転状態判定方法。
【請求項13】
請求項1~5のいずれか1項に記載の運転状態判定装置における前記各処理をコンピュータに実行させる運転状態判定プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、運転状態判定装置、運転支援装置、運転状態判定方法、および運転状態判定プログラムに関する。
【背景技術】
【0002】
たとえば下記特許文献1には、わき見運転をしている旨判定されている場合に、車両と白線との距離が所定距離以下となる場合、警報を発する運転支援装置が記載されている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
ところで、車線逸脱事故の主要因には、わき見運転に加えて、運転者が周囲の安全確認を十分に行うことなく車両を漫然と運転することも含まれる。しかし、上記装置の場合、運転者が、車両を漫然と運転していることに対処することについては考慮されていない。
【課題を解決するための手段】
【0005】
以下、上記課題を解決するための手段およびその作用効果について記載する。
車両の周囲の物体を感知するセンサ(12,22)の出力に応じた前記車両の周囲の物体の情報を取得する物体情報取得処理(S40)と、前記物体の情報に基づき、前記車両の運転者が注意を向けるべき対象物体を設定する対象物体設定処理(S50~S54)と、前記運転者の画像データを取得する画像取得処理(S60)と、前記画像データを入力とし、前記対象物体の確認がなされない状態が漫然判定値以上継続する場合、漫然運転状態であると判定する判定処理(S14,S16~S22,S30,S32)と、を実行し、前記漫然運転状態は、前記車両を運転するうえでの安全確認が不十分な運転状態である運転状態判定装置である。
【0006】
安全確認が十分になされている場合には、運転者が、注意を向けるべき物体に実際に注意を向けているはずである。そのため、注意を向けるべき物体に注意を向けていない場合には、安全確認が不十分である。そのため、上記構成では、対象物体の確認がなされない状態が継続することに基づき、漫然運転状態であるか否かを判定することにより、漫然運転であるか否かを適切に判定できる。
【図面の簡単な説明】
【0007】
【
図2】同実施形態にかかる漫然運転の判定に関する処理の手順を示す流れ図。
【
図3】同実施形態にかかる対象物体設定処理の手順を示す流れ図。
【
図4】同実施形態にかかるポイント規定データを例示する図。
【
図5】同実施形態にかかる視野算出処理の手順を示す流れ図。
【
図6】(a)および(b)は、同実施形態にかかる視野に対象物体が含まれるか否かの判定に関する処理を例示する図。
【
図7】同実施形態にかかるわき見運転の判定に関する処理の手順を示す流れ図。
【
図8】同実施形態にかかる車線の逸脱意図の有無の判定に関する処理の手順を示す流れ図。
【
図9】同実施形態にかかる車線逸脱の回避に関する処理の手順を示す流れ図。
【
図10】同実施形態の作用を説明するタイムチャート。
【発明を実施するための形態】
【0008】
図1に、本実施形態における車両VCに搭載される装置を示す。
図1に示すように、光センサ12は、たとえば近赤外線等のレーザ光を照射する。また、光センサ12は、レーザ光の反射光を受光することに基づき、レーザ光を反射した物体と車両との距離を示す変数である距離変数と、レーザ光の照射方向を示す変数である方向変数と、反射した物体の反射強度を示す変数である強度変数とを示す測距点データを生成する。これは、たとえばTOF(Time of Flight)方式によって実現できる。もっとも、TOF法式に限らず、FMCW(Frequency Modulated Continuous Wave)方式にて測距点データを生成してもよい。その場合、測距点データに、レーザ光を反射した物体との相対速度を示す変数である速度変数を含めることができる。
【0009】
光センサ12は、レーザ光の照射方向を、周期的に水平方向および垂直方向に走査し、得られた測距点データの集合である測距点群データDrpcを出力する。
LIDARECU10は、測距点群データDrpcに基づき、レーザ光を反射した物体の認識処理を実行する。認識処理は、たとえば測距点群データDrpcのクラスタリング処理と、クラスタリング処理によって1つの物体として特定された測距点データの集合の特徴量を抽出し、抽出した特徴量を、識別モデルに入力する処理とを含んでもよい。識別モデルは、物体の種類ごとに設けられ、識別モデルが特定対象とする特定の種類に該当するか否かを判定する。ここで物体の種類とは、人、自転車、車両、標識等のことである。また、これに代えて、測距点群データDrpcを深層学習モデルに直接入力して物体の種類を認識する処理としてもよい。
【0010】
車外カメラ22は、車両VCの外部の物体を撮影し、撮像された画像に関するデータである車外画像データDpoを出力する。画像ECU20は、車外画像データDpoに基づき、車両の周囲の物体の認識処理を実行する。この認識処理も、物体の種類を特定する処理を含む。
【0011】
ADASECU30は、運転者による車両VCの運転を支援する処理を実行する。ADASECU30は、運転を支援する処理を実行する際、車内ネットワーク40を介して、LIDARECU10および画像ECU20のそれぞれによる認識結果を受信する。また、ADASECU30は、運転を支援する処理を実行する際、車内ネットワーク40を介して、転舵ECU50に指令を出力する。転舵ECU50は、転舵輪を転舵させる転舵アクチュエータ52を操作対象とし、転舵アクチュエータ52を操作することによって転舵角を制御する。転舵角は、転舵輪の回転角度である。換言すれば、タイヤの切れ角である。
【0012】
ADASECU30は、さらに、車内ネットワーク40を介して、各種センサの検出値を参照する。すなわち、ADASECU30は、車内カメラ60による車両VC内部の画像データである車内画像データDpiを参照する。車内カメラ60は、可視光カメラであり、主に、運転者を撮像する装置である。また、ADASECU30は、車速センサ62によって検出される車速SPDと、ブレーキセンサ64によって検出されるブレーキペダルの踏み込み量であるブレーキ操作量Brkと、を参照する。また、ADASECU30は、舵角センサ66によって検出される操舵角θsを参照する。操舵角θsは、ステアリングホイールの回転角度である。また、ADASECU30は、ウィンカー68の操作状態を示す状態変数Winを取得する。
【0013】
詳しくは、ADASECU30は、CPU32、ROM34、記憶装置36および周辺回路38を備えており、それらがローカルネットワーク39によって通信可能とされている。ここで、周辺回路38は、内部の動作を規定するクロック信号を生成する回路、電源回路、およびリセット回路等を含む。
【0014】
ROM34には、運転状態判定プログラムPjsと、運転支援プログラムPadとが記憶されている。また、記憶装置36は、電気的に書き換え可能な不揮発性の装置である。記憶装置36には、写像データDmと、ポイント規定データDpとが記憶されている。
【0015】
ADASECU30は、運転支援処理として、車両VCが車線を逸脱することを抑制すべく操舵介入をする処理を実行する。ADASECU30は、この運転支援処理を、高速道路等の自動車専用道路のみならず、一般道においても実行する。ADASECU30は、運転支援処理を実行する際、運転者の運転状態を判定する処理を実行する。運転状態の判定処理としては、漫然運転の判定に関する処理と、わき見運転の判定に関する処理とがある。ここで、漫然運転とは、車両VCを運転するうえでの安全確認が不十分な運転状態のこととする。
【0016】
以下では、ADASECU30が実行する処理について、漫然運転の判定に関する処理、わき見運転の判定に関する処理、運転支援の前処理、運転支援処理の順に説明する。
(漫然運転の判定に関する処理)
CPU32は、車両VCの周囲の物体のうちの対象物体TOを運転者が確認する場合に安全確認をしていると判定する。対象物体TOは、運転者が車両VCを安全に運転するうえで注意を払うべき物体である。本実施形態では、対象物体TOを、車両VCの運転の仕方次第では路面よりも上の領域において車両VCが接触する可能性がある物体とする。すなわち、横断歩道や、信号機等は含まれない。これは、交通指標以外に、車両VCと接触する可能性のある物体に運転者が注意を払っているか否かを判定することを狙った設定である。
【0017】
図2に、漫然運転の判定に関する処理の手順を示す。
図2に示す処理は、ROM34に記憶されている運転状態判定プログラムPjsを、CPU32がたとえば所定周期で繰り返し実行することにより実現される。なお、以下では、先頭に「S」が付与された数字によって、各処理のステップ番号を表現する。
【0018】
図2に示す一連の処理において、CPU32は、まず、対象物体TOを設定する処理を実行する(S10)。
図3に、S10の処理の詳細を示す。
【0019】
図3に示すように、CPU32は、まず、LIDARECU10の出力と画像ECU20の出力とを取り込む(S40)。次にCPU32は、取得した出力が示す車両VCの周囲の物体の中から、対象物体TOの候補となる候補物体CO1,CO2,…,COnを抽出する(S42)。ここで、CPU32は、車両VCの周囲の物体のうち対象物体TOとなりえない信号機等を除いたものを、候補物体CO1,CO2,…とする。すなわち、上述したように、LIDARECU10と画像ECU20とは、物体の種類を特定する処理を実行する。そのため、LIDARECU10の出力と画像ECU20の出力とには、それぞれ物体の種類に関する情報が含まれている。CPU32は、その情報に基づき、候補物体CO1,CO2,…,COnを抽出する。なお、「CO1,CO2,…,COn」との記載は、候補物体が「n」個あるという意味であるが、候補物体COの数は、3個以上であることを意味せず、「n」はゼロであることもある。
【0020】
次に、CPU32は、変数iが候補の数「n」に等しいか否かを判定する(S44)。
図3の一連の処理を開始する際には、変数iは、「0」とされている。CPU32は、変数iが「n」ではないと判定する場合(S44:NO)、変数iをインクリメントする(S46)。そして、CPU32は、S40の処理によって取得した出力変数の値に基づき、候補物体COiの種類、候補物体COiと車両VCとの距離Li、車両VCの走行速度に対する候補物体COiの相対速度Vi、および候補物体COiの配置情報を取得する(S48)。ここで、候補物体COiの配置情報は、車両VCの走行車線上であるか、隣接車線上であるか、歩道上であるか、等の情報である。なお、CPU32は、相対速度Viを、たとえば距離Liの時系列データから算出できる。またたとえば、光センサ12がFMCW方式の場合、CPU32は、測距点群データDrpcに含まれる相対速度を示す変数の値を取得することによって、相対速度Viを取得してもよい。
【0021】
次に、CPU32は、ポイント規定データDpに基づき、候補物体COiのポイントPiを算出する(S50)。ポイントPiは、候補物体COiを対象物体TOとするか否かの評価に用いる変数である。特に、ポイントPiは、対象物体TOである尤度を定量化した変数である。すなわち、候補物体COiが運転を安全に行う上で注意を払うべき物体である尤度を定量化した変数である。
【0022】
図4に、ポイント規定データDpを示す。ポイント規定データDpは、物体の種類のそれぞれについて、距離ポイントマップデータ、速度ポイントマップデータ、および配置ポイントマップデータを備える。すなわち、それらマップデータは、人、自転車、車両等の物体の種類ごとに定義されている。
【0023】
距離ポイントマップデータは、距離Liを入力変数とし、ポイントPを出力変数とするマップデータである。距離ポイントマップデータは、距離Liが小さいほどポイントPを大きい値とする。これは、距離Liが近い物体ほど、運転者が安全確認をするうえで注意を払うべき物体である可能性が高いことに鑑みた設定である。なお、同一の距離Liであっても、候補物体COiの種類が、運転者が安全確認をする上で注意を払うべき度合いが大きいものであるほど、ポイントPが大きい値とされる。
【0024】
速度ポイントマップデータは、相対速度Viを入力変数とし、ポイントPを出力変数とするマップデータである。速度ポイントマップデータは、相対速度Viが小さいほどポイントPを大きい値とする。ここで、相対速度Viは、負である場合に車両VCに近づいてくることを意味する。すなわち、相対速度Viが小さい場合には大きい場合と比較して、車両VCと接触する可能性が大きいことを意味する。なお、同一の相対速度Viであっても、候補物体COiの種類が、運転者が安全確認をする上で注意を払うべき度合いが大きいものであるほど、ポイントPが大きい値とされる。
【0025】
配置ポイントマップデータは、候補物体COiの配置情報を示す変数を入力変数とし、ポイントPを出力変数とするマップデータである。配置ポイントマップデータは、対象物体TOが車両VCの走行車線と同一車線にある場合に、ない場合よりもポイントを大きい値に設定する。なお、同一の配置情報であっても、候補物体COiの種類が、運転者が安全確認をする上で注意を払うべき度合いが大きいものであるほど、ポイントPが大きい値とされる。
【0026】
CPU32は、上記3種類のマップデータに基づき、候補物体COiに関する3つのポイントをマップ演算しそれらの合計値をポイントPiに代入する。なお、マップデータとは、入力変数の離散的な値と、入力変数の値のそれぞれに対応する出力変数の値と、の組データである。また、マップ演算は、たとえば、入力変数の値がマップデータの入力変数の値のいずれかに一致する場合、対応するマップデータの出力変数の値を演算結果とする処理とすればよい。また、マップ演算は、入力変数の値がマップデータの入力変数の値のいずれとも一致しない場合、マップデータに含まれる一対の出力変数の値の補間によって得られる値を演算結果とする処理とすればよい。
【0027】
図3に戻り、CPU32は、ポイントPiが基準値Pth以上であるか否かを判定する(S52)。基準値Pthは、対象物体TOとしてふさわしい物体がとりうるポイントの下限値に設定されている。CPU32は、基準値Pth以上であると判定する場合(S52:YES)、候補物体COiを対象物体TOに認定する(S54)。
【0028】
CPU32は、S54の処理を完了する場合と、S52の処理において否定判定する場合とには、S44の処理に戻る。そして、CPU32は、S44の処理において肯定判定する場合、
図2のS10の処理を完了する。
【0029】
図2に戻り、CPU32は、S10の処理の結果、対象物体TOが存在するか否かを判定する(S12)。そしてCPU32は、対象物体TOが存在すると判定する場合(S12:YES)、運転者の視野FVを算出する(S14)。
【0030】
図5に、S14の処理の詳細を示す。
図5に示す一連の処理において、CPU32は、まず、車内カメラ60による車内画像データDpiを取得する(S60)。そして、CPU32は、車内画像データDpiに基づき、頭部姿勢、および視線を算出する(S62)。本実施形態では、顔や目のモデルを入力画像にフィッティングすることにより視線を推定するいわゆるモデルベース手法を採用した。上記写像データDmは、たとえば、車内画像データDpiを入力とし顔の特徴量を出力する写像を規定するデータとすればよい。その場合、CPU32は、車内画像データDpiを写像への入力とすることによって、顔の特徴量を算出する。顔の特徴量は、予め定められた複数の顔の特徴点の画像中の座標成分である。顔の特徴点は、目の位置のみならず、頭部姿勢の算出において有益な点を含む。上記写像は、たとえば、畳み込みニューラルネットワーク(CNN)とすればよい。またこれに代えて、決定木や、サポートベクトル回帰等を用いてもよい。
【0031】
そして、CPU32は、顔の特徴量である顔の各特徴点の座標から、3次元顔モデルを用いて頭部の位置、方向を定める頭部姿勢を推定する。また、CPU32は、頭部姿勢と、所定の顔特徴点の座標とに基づき、眼球中心を推定する。そしてCPU32は、眼球モデルと眼球中心とに基づき、虹彩中心位置を推定する。そしてCPU32は、眼球中心から虹彩中心に進む方向を算出し、これを視線方向とする。
【0032】
次に、CPU32は、視線方向から所定範囲を視野FVとして算出する(S64)。詳しくは、所定範囲を、視線方向とのなす角度が所定角度以内の範囲とする。ここで所定角度は、たとえば15~25°とすればよい。
【0033】
なお、CPU32は、S64の処理を完了する場合、
図2のS14の処理を完了する。
図2に戻り、CPU32は、視野FVに対象物体TOの少なくとも1つが含まれるか否かを判定する(S16)。ここで、CPU32は、対象物体TOの少なくとも1つについて、視野FVに含まれている部分が所定割合以上である場合に、視野FVに対象物体TOが含まれると判定する。所定割合は、たとえば50%である。
【0034】
図6(a)は、視野FVに対象物体TOが含まれない例を示す。また、
図6(b)は、視野FVに対象物体TOが含まれる例を示す。なお、
図6には、車両VCの前方DF、後方DB、左方向DLおよび右方向DRを記載している。すなわち、
図6(a)は、人HMが前方DFを向いている例である。
【0035】
図2に戻り、CPU32は、少なくとも1つが含まれると判定する場合(S16:YES)、確認判定カウンタC1をインクリメントする(S18)。そして、CPU32は、確認判定カウンタの値が確認判定値C1th以上であるか否かを判定する(S20)。この処理は、安全確認をしたか否かを判定する処理である。ここで、確認判定値C1thは、運転者が対象物体TOを確認する場合に視野FVに含まれる時間の下限値に応じて設定されている。CPU32は、確認判定値C1th以上であると判定する場合(S20:YES)、安全確認がなされた旨、判定する(S22)。すなわち、対象物体TOは、車両VCの運転の仕方次第では車両VCと接触する可能性のある物体であり、車両VCの運転において注意を払うべき物体である。そのため、対象物体TOを確認した場合には、安全確認がなされたとする。そしてCPU32は、後述の漫然判定カウンタC2を初期化する(S24)。
【0036】
一方、CPU32は、視野FVに対象物体TOが1つも含まれないと判定する場合(S16:NO)、安全確認がなされていないと判定し、確認判定カウンタC1を初期化する(S26)。CPU32は、S26の処理を完了する場合と、S20の処理において否定判定する場合とには、漫然判定カウンタC2をインクリメントする(S28)。漫然判定カウンタC2は、安全確認がなされていない時間を計時するカウンタである。換言すれば、安全確認が不十分な運転がなされている時間を計時するカウンタである。
【0037】
CPU32は、S28,S24の処理を完了する場合、漫然判定カウンタC2が漫然判定値C2th以上であるか否かを判定する(S30)。漫然判定値C2thは、漫然運転がなされている場合に安全確認判定がなされない継続時間の下限値に応じて設定されている。そしてCPU32は、漫然判定値C2th以上であると判定する場合(S30:YES)、漫然運転であると判定する(S32)。
【0038】
なお、CPU32は、S32の処理を完了する場合と、S30の処理において否定判定する場合と、には、
図2に示す一連の処理を一旦終了する。
(わき見運転の判定に関する処理)
図7に、わき見運転の判定に関する処理の手順を示す。
図7に示す処理は、ROM34に記憶されている運転状態判定プログラムPjsをCPU32がたとえば所定周期で繰り返し実行することにより実現される。
【0039】
図7に示す一連の処理において、CPU32は、まず車速SPDおよび操舵角θsを取得する(S70)。そして、CPU32は、車速SPDおよび操舵角θsに基づき車両VCの走行領域を設定する(S72)。走行領域は、運転者が車両VCを走行させると予測される領域である。CPU32は、操舵角θsが右旋回側の値の場合、走行領域を車両VCの直進方向に対して右側の領域とする。また、CPU32は、操舵角θsが右旋回側の値であるときにおいて車速SPDが高い場合には低い場合よりも、走行領域を車両VCの直進方向に対してより右側の領域とする。これは、車速SPDが高いほど、運転者の視線と直進方向とのなす角度がより大きくなると考えられることに鑑みたものである。
【0040】
そしてCPU32は、走行領域が
図5のS62の処理によって算出された視野FVの範囲外か否かを判定する(S74)。CPU32は、視野FVに走行領域の少なくとも一部が入っていると判定する場合(S74:NO)、領域確認カウンタC3をインクリメントする(S76)。そしてCPU32は、領域確認カウンタC3が領域注視判定値C3th以上であるか否かを判定する(S78)。領域注視判定値C3thは、運転者が走行領域を注視して運転している場合に、走行領域が視野FVに入っている継続時間の下限値に基づき設定されている。CPU32は、領域注視判定値C3th以上であると判定する場合(S78:YES)、走行領域の確認がなされていると判定する(S80)。そしてCPU32は、後述のわき見判定カウンタC4を初期化する(S82)。
【0041】
一方、CPU32は、走行領域が視野FVの範囲外と判定する場合(S74:YES)、領域確認カウンタC3を初期化する(S84)。CPU32は、S84の処理を完了する場合と、S78の処理において否定判定する場合とには、わき見判定カウンタC4をインクリメントする(S86)。CPU32は、S86,S82の処理を完了する場合、わき見判定カウンタC4がわき見判定値C4th以上であるか否かを判定する(S88)。そして、CPU32は、わき見判定値C4th以上であると判定する場合、わき見運転である旨判定する(S89)。
【0042】
なお、CPU32は、S89の処理を完了する場合と、S88の処理において否定判定する場合と、には、
図7に示す一連の処理を一旦終了する。
(運転支援の前処理)
図8に、運転支援処理のための前処理の手順を示す。
図8に示す処理は、ROM34に記憶された運転支援プログラムPadをCPU32がたとえば所定周期で繰り返し実行することにより実現される。
【0043】
図8に示す一連の処理において、CPU32は、まず、ウィンカー68の状態変数Winおよびブレーキ操作量Brkを入力とし、下記の条件(ア)および条件(イ)の論理和が真であるか否かを判定する(S90)。
【0044】
条件(ア):ウィンカー68が操作されている旨の条件である。ウィンカー68が操作されているとは、ウィンカー68が右旋回または左旋回の操作となっていることを意味する。
【0045】
条件(イ):ブレーキが踏み込まれている旨の条件である。これは、ブレーキ操作量Brkが所定量以上であることとすればよい。
CPU32は、論理和が真であると判定する場合(S90:YES)、車線を逸脱する意図がある旨判定する(S92)。すなわち、ウィンカー68が操作されている場合には、運転者が車両VCを旋回させる意図があることから、運転者が車両VCを車線から逸脱させる意図があると考えられる。また、一般道において、路面に駐車された他の車両をよける場合や、走行車線の左端を走行する2輪車をよける場合等には、ブレーキを踏みつつ走行することがある。そのため、ブレーキ操作がなされている場合にも、運転者が車両VCを車線から逸脱させる意図があると考えられる。
【0046】
一方、CPU32は、上記論理和が偽であると判定する場合(S90:NO)、漫然運転判定がなされていることとわき見運転判定がなされていることとの論理和が真であるか否かを判定する(S94)。そしてCPU32は、論理和が真であると判定する場合(S94:YES)、逸脱意図なしと判定する(S96)。これに対し、CPU32は、論理和が偽であると判定する場合(S94:NO)、逸脱意図有と判定する(S98)。
【0047】
なお、CPU32は、S92,S96,S98の処理を完了する場合には、
図8に示す一連の処理を一旦終了する。
(運転支援処理)
図9に、運転支援処理の手順を示す。
図9に示す処理は、ROM34に記憶された運転支援プログラムPadをCPU32がたとえば所定周期で繰り返し実行することにより実現される。
【0048】
図9に示す一連の処理において、CPU32は、まず、画像ECU20の出力を取得する(S100)。そしてCPU32は、取得した出力が示す車両VCの走行車線の境界を示す白線と車両VCとの距離が所定値以下であるか否かを判定する(S102)。この処理は、車両VCが車線を逸脱すると予測されるか否かを判定する処理である。CPU32は、所定値以下であると判定する場合(S102:YES)、
図8の処理によって逸脱意図がないと判定されているか否かを判定する(S104)。そしてCPU32は、逸脱意図がないと判定している場合(S104:YES)、車両VCが車線を逸脱しないように操舵介入を実行する(S106)。すなわち、CPU32は、運転者によるステアリングホイールの操作とは独立に、転舵アクチュエータ52の操作によって転舵角を制御する。ここでは、運転者によるステアリングホイールの操作を尊重しつつも、車線を逸脱しないように転舵角を微調整する。詳しくは、CPU32は、転舵ECU50に、転舵角の目標値の補正量を出力する。これにより、転舵ECU50では、操舵角θsから定まる転舵角の目標値を補正量にて補正した値へと、転舵角を制御すべく転舵アクチュエータ52を操作する。
【0049】
なお、CPU32は、S106の処理を完了する場合や、S102,S104の処理において否定判定する場合には、
図9に示す一連の処理を一旦終了する。
ここで、本実施形態の作用および効果について説明する。
【0050】
図10に、本実施形態にかかる漫然運転の判定例を示す。
図10に示すように、時刻t1以降、視野FVに対象物体TOが含まれることから、確認判定カウンタC1がインクリメントされていく。そしてCPU32は、時刻t2において、確認判定カウンタC1が確認判定値C1th以上となることから、安全確認有と判定し、漫然判定カウンタC2を初期化する。その後、時刻t3以降、視野FVに対象物体TOが含まれなくなると、CPU32は、確認判定カウンタC1を初期化し、また、漫然判定カウンタC2をインクリメントしていく。
図10に示す例では、時刻t4以降、視野FVに対象物体TOが含まれることから、確認判定カウンタC1がインクリメントされていくものの、確認判定カウンタC1が確認判定値C1thに達する前の時刻t5に漫然判定カウンタC2が漫然判定値C2thに達する。そのため、CPU32は、時刻t5に、漫然運転である旨判定する。
【0051】
このように、CPU32は、安全確認がなされない状態が継続する場合に漫然運転である旨判定することから、運転者が安全確認が不十分な運転をしている状態を適切に判定できる。特に、安全確認がなされない状態が漫然判定値C2th以上となることを漫然運転判定をする条件とすることにより、進行方向の確認等のために視野FVが対象物体TOからそれた場合に、漫然運転であると誤判定することを抑制できる。
【0052】
以上説明した本実施形態によれば、さらに以下に記載する作用および効果が得られる。
(1)CPU32は、視野FVに対象物体TOが入っている継続時間が確認判定値C1th以上となる場合に、安全確認がなされたと判定した。これにより、運転者が視線を移動しているときに、視野FVに対象物体TOが入ったことをもって、安全確認がなされたとの誤判定をすることを抑制できる。
【0053】
(2)CPU32は、候補物体COiに付与するポイントの大きさを、候補物体COiの種類に応じて変更した。これにより、運転者が安全確認をする上で注意を払うべき度合いが大きいものを優先的に対象物体TOに採用することができる。
【0054】
(3)CPU32は、相対速度Viが小さいほど、候補物体COiに付与するポイントの大きさを大きくした。ここで、相対速度Viが小さい場合には大きい場合と比較して、車両VCが候補物体COiと接触する可能性が高い。そのため、候補物体COiが車両VCと接触する可能性が高いほど、ポイントを大きい値とすることができる。そのため、上記設定によれば、運転者が安全確認をする上で注意を払うべき度合いが大きいものを優先的に対象物体TOに採用することができる。
【0055】
(4)CPU32は、距離Liが小さいほど、候補物体COiに付与するポイントの大きさを大きくした。ここで、距離Liが小さいほど、車両VCの運転に際してより注意すべき度合いが高い傾向にある。そのため、上記設定によれば、運転者が安全確認をする上で注意を払うべき度合いが大きいものを優先的に対象物体TOに採用することができる。
【0056】
(5)CPU32は、候補物体COiが車両VCと同一車線に位置する場合には隣接車線に位置する場合よりもポイントの大きさを大きくした。ここで、同一車線に位置する物体は隣接車線に位置する物体よりも車両VCの運転に際してより注意すべき度合いが高い傾向にある。そのため、上記設定によれば、運転者が安全確認をする上で注意を払うべき度合いが大きいものを優先的に対象物体TOに採用することができる。
【0057】
(6)CPU32は、走行領域の確認がなされない状態の継続時間がわき見判定値C4th以上となる場合、わき見運転と判定した。これにより、安全確認等のために運転者の視野が一時的に走行領域からそれた場合にわき見運転と誤判定することを抑制できる。
【0058】
(7)CPU32は、漫然運転判定またはわき見運転判定がなされていることを条件に、逸脱回避のための運転支援処理を実行した。これにより、運転者が車両VCを意図的に車線から逸脱させる場合に、運転支援によって運転者にとって不本意な操舵介入がなされることを抑制できる。
【0059】
(8)CPU32は、ブレーキ操作がなされている場合には、漫然運転判定の有無およびわき見運転判定の有無にかかわらず、操舵介入をしないこととした。これにより、車両VCが走行する車線の左側に駐車されている車両または同車線の左側を走行する2輪車などをよけるために、運転者が意図的に車線を逸脱する場合に、操舵介入がなされることを抑制できる。これにより、運転支援処理を一般道で行う場合であっても、運転者にとって不本意な操舵介入を抑制しつつ、必要な時に操舵介入をすることが可能となる。
【0060】
<その他の実施形態>
なお、本実施形態は、以下のように変更して実施することができる。本実施形態および以下の変更例は、技術的に矛盾しない範囲で互いに組み合わせて実施することができる。
【0061】
「物体確認判定処理について」
・上記実施形態では、視野FVに対象物体TOの所定割合以上が含まれている場合に、視野FVに対象物体TOが含まれているとし、所定割合を「50%」としたが、これに限らない。たとえば、所定割合を、「50%」よりも大きい値としてもよく、「50%」よりも小さい値としてもよい。また、視野FVに対象物体TOが包含されている場合に限って、視野FVに対象物体TOが含まれているとしてもよい。
【0062】
・上記実施形態では、複数の対象物体TOが存在する場合、視野FVにそれらのうちの少なくとも1つが含まれる状態が確認判定値C1th以上継続する場合に、物体の確認がなされたと判定したが、これに限らない。たとえば、複数の対象物体TOのうちの任意の1つが含まれる状態が確認判定値C1th以上継続する場合に物体の確認がなされたと判定する処理であってもよい。これは、たとえば対象物体TOA,TOBが存在する場合であって以下のケースの場合には、物体の確認がなされたとは判定しない処理となる。すなわち、視野FVに対象物体TOAが含まれる状態と対象物体TOBが含まれる状態とのいずれも確認判定値C1th以上とはならないケースである。その場合、対象物体TOA,TOBのうちの少なくとも1つが視野FVに含まれる状態については確認判定値C1th以上継続したとしても、物体の確認がなされたとは判定しない処理となる。
【0063】
「漫然運転判定処理について」
・
図2の処理では、S12の処理において否定判定する場合に、S24の処理に移行したが、これに限らない。換言すれば、対象物体TOが存在しない場合、物体の確認がなされた旨の判定がされていない状態の継続時間を初期化したが、これに限らない。たとえば、S12の処理において否定判定する場合、
図2に示す一連の処理を一旦終了してもよい。換言すれば、物体の確認がなされた旨の判定がされていない状態の継続時間を初期化せず、計時動作を停止してもよい。
【0064】
「評価変数算出処理について」
・上記実施形態では、対象物体TOの候補のポイントPiを、3つのマップデータのそれぞれを用いてマップ演算される値の和としたが、これに限らない。換言すれば、ポイントPiとしては、距離ポイントマップデータ、速度ポイントマップデータ、および配置ポイントマップデータのそれぞれを用いてマップ演算される3つの値の和に限らない。たとえば、複数のマップデータのそれぞれから算出される値の積であってもよい。
【0065】
・ポイント規定データDpとしては、距離ポイントマップデータと、速度ポイントマップデータと、配置ポイントマップデータとを備えるものに限らない。たとえば、上記3つのマップデータに加えて、対象物体TOの候補となる物体の種類を入力変数とし、ポイントを出力変数とするマップデータを備えてもよい。またたとえば、距離Li、相対速度Viおよび配置情報を入力変数とし、ポイントを出力変数とするマップデータを、対象物体TOの候補となる物体の種類ごとに備えてもよい。またたとえば、距離Li、相対速度Vi、配置情報および候補となる物体の種類を入力変数とし、ポイントを出力変数とするマップデータを備えてもよい。
【0066】
・上記実施形態は、対象物体TOの種類ごとに、互いに異なるポイントを定義したが、これに限らない。たとえば、対象物体TOの種類に関係なく、車両VCとの距離Li、相対速度Vi、および配置情報に応じてポイントを付与してもよい。また、距離Li、相対速度Vi、および配置情報の3つについても、それらすべてに応じてポイントを定めることは必須ではない。
【0067】
・評価変数として、対象物体TOである尤度を示す変数であるポイントとする代わりに、対象物体TOではない尤度を示す変数としてもよい。その場合、たとえば、相対速度Viが小さいほど、評価変数の値を小さい値に算出すればよい。これにより、対象物体TOに設定される側に大きい値を算出することになる。そしてその場合、たとえば、
図3のS52の処理において、評価変数の値が閾値以下である場合に、候補物体COiを対象物体TOに設定してもよい。
【0068】
「対象物体設定処理について」
・対象物体TOに設定する処理としては、ポイント等の評価変数の値に基づく処理に限らない。たとえば、対象物体TOとされる物体の種類を定義しておき、定義された物体と車両VCとの距離Liおよび相対速度Viが所定範囲内である場合に、その物体を対象物体TOに設定してもよい。
【0069】
・上記実施形態では、ポイントPiが基準値Pth以上となる候補物体COiを全て対象物体としたが、これに限らない。換言すれば、車両VCの周囲の物体のうち、基準を満たすものを全て対象物体TOとしたが、これに限らない。たとえば対象物体TOの数に上限値を設けてもよい。その場合、たとえばポイントPiが基準値Pth以上となる候補物体COiの数が上限値を上回る場合、ポイントPiの大きいものを優先的に対象物体TOとすればよい。
【0070】
「対象物体TOについて」
・対象物体TOとしては、車両VCの運転の仕方次第では路面よりも上の領域において車両VCが接触する可能性がある物体に限らない。たとえば横断歩道等を含めてもよい。
【0071】
「視野算出処理について」
・上記写像データDmを、たとえば、車内画像データDpiを入力とし、頭部姿勢および眼球中心位置を出力する写像を規定するデータとしてもよい。またたとえば、上記写像データDmを、車内画像データDpiを入力とし虹彩中心位置および眼球中心位置を出力する写像を規定するデータとしてもよい。
【0072】
・上記実施形態では、眼球中心から虹彩中心へと進む方向を視線方向とするモデルを用いて視線を推定したが、モデルベース手法において採用するモデルとしては、これに限らない。たとえば、まぶたの形状を含む眼球モデルを用いてもよい。
【0073】
・視線方向の推定手法としては、モデルベース手法に限らない。たとえば、画像データを入力として注視点を出力する学習済みモデルを用いたアピアランスベース手法であってもよい。ここで、学習済みモデルとしては、たとえば、線形回帰モデルや、ガウス過程回帰モデル、CNN等を用いればよい。
【0074】
・下記「車内カメラについて」の欄に記載したように、赤外線カメラを用いる場合、近赤外線の反射光から角膜上の反射点を特定し、これと瞳孔中心位置とに基づき視線推定を行えばよい。
【0075】
・上記実施形態では、視線方向から所定角度範囲の領域を視野FVと見なしたが、これに限らない。たとえば、視線方向と水平方向とのなす角度が第1角度以下であって且つ視線方向と垂直方向とのなす角度が第2角度以下である領域を視野FVとし、第1角度を第2角度よりも大きくしてもよい。またたとえば、所定角度範囲を、予め定められた固定値とする代わりに、車速に応じて可変設定してもよい。
【0076】
「わき見運転判定処理について」
・
図7のS74の処理では、走行領域の少なくとも一部が視野FVに入っているか否かを判定したが、これに限らない。たとえば走行領域のうち視野FVとの重複領域の割合が所定割合以上であるか否かを判定してもよい。
【0077】
・
図7の処理において、S76~S80,S84の処理を削除してもよい。
「センサについて」
・車両VCの周囲の物体を感知するセンサとしては、光センサ12および車外カメラ22に限らない。たとえば、ミリ波レーダを照射しその反射波を受信するレーダ装置であってもよい。またたとえば、音波信号を照射し、その反射波を受信するソナーであってもよい。
【0078】
「逸脱対処処理について」
・逸脱対処処理としては、白線との距離が所定値以下となる場合に、操舵介入する処理に限らない。たとえば、運転者に注意喚起する処理であってもよい。ここで注意喚起するためのハードウェアは、スピーカであってもよく、またたとえばステアリングホイールを振動させる装置であってもよい。
【0079】
・上記実施形態では、運転者がブレーキ操作をしている場合には、漫然運転判定がなされているか否かにかかわらず、逸脱意図有と判定したが、これに限らない。すなわちたとえば、逸脱対処処理を実行する車速SPDの領域がある程度高速領域である場合等にあっては、ブレーキ操作に応じて逸脱意図の有無を判定しなくてもよい。
【0080】
「運転支援処理について」
・運転支援処理としては、車両VCが車線から逸脱しないように支援する処理に限らない。たとえば、車両VCが車線の中央を走行する支援をすべく、転舵角を微修正する制御をする処理であってもよい。その場合であっても、
図8の処理によって逸脱意図なしと判定されていることを、支援処理の実行条件とすることは有効である。
【0081】
またたとえば、車両VCが物体と接触しないように支援する処理であってもよい。その場合、車両VCが物体に接触する可能性がある場合に対処すべく操作対象とされるハードウェアは、ブレーキアクチュエータであってもよい。すなわち、接触を回避すべくブレーキを操作してもよい。この場合、漫然運転である旨判定されている場合に判定されていない場合よりも、運転者のブレーキ操作とは独立に制動力を付与するタイミングを早めることが望ましい。またたとえば、ハードウェアは、スピーカであってもよい。すなわち、接触の可能性があると判定される場合に、警報を発してもよい。その場合、漫然運転である旨判定されている場合に判定されていない場合よりも、警報を発するタイミングを早めることが望ましい。
【0082】
「車内カメラについて」
・車内カメラとしては、可視光カメラに限らず、たとえば赤外線カメラであってもよい。その場合、赤外線LED等によって運転者の角膜に近赤外線を照射し、その反射光を受光すればよい。
【0083】
「運転状態判定プログラムについて」
・運転状態判定プログラムPjsに、
図7の処理を実行する指令を含まなくてもよい。
・運転状態判定プログラムPjsに、
図8の処理を実行する指令を含めてもよい。
【0084】
「運転支援装置について」
・運転支援装置としては、運転状態を判定する処理である、
図2~7の処理と、運転支援のために所定のハードウェア手段を操作する処理である、
図9の処理との双方を実行する装置に限らない。たとえば、運転状態を判定する処理については、別の制御装置によって実行し、
図8の処理による判定結果が入力されて
図9の処理を実行する装置であってもよい。
【0085】
・運転支援装置としては、ADASECU30に限らない。たとえば転舵ECU50等の運転支援処理による操作対象となるアクチュエータを操作するECUと、ADASECU30とが一体的に形成されたものであってもよい。またたとえば、LIDARECU10等の車両VCの外部の物体を検知するためのECUと、ADASECU30とが一体的に形成されたものであってもよい。
【0086】
・運転支援装置としては、CPUとプログラムを格納するプログラム格納装置とを備えて、ソフトウェア処理を実行するものに限らない。たとえば、上記実施形態においてソフトウェア処理されたものの少なくとも一部を、ハードウェア処理するたとえばASIC等の専用のハードウェア回路を備えてもよい。すなわち、運転支援装置は、以下の(a)~(c)のいずれかの構成であればよい。(a)上記処理の全てを、プログラムに従って実行する処理装置と、プログラム格納装置とを備える。(b)上記処理の一部をプログラムに従って実行する処理装置およびプログラム格納装置と、残りの処理を実行する専用のハードウェア回路とを備える。(c)上記処理の全てを実行する専用のハードウェア回路を備える。ここで、処理装置およびプログラム格納装置を備えたソフトウェア実行装置や、専用のハードウェア回路は複数であってもよい。
【0087】
「運転状態判定装置について」
・運転状態判定装置としては、CPUとプログラムを格納するプログラム格納装置とを備えて、ソフトウェア処理を実行するものに限らない。たとえば、上記実施形態においてソフトウェア処理されたものの少なくとも一部を、ハードウェア処理するたとえばASIC等の専用のハードウェア回路を備えてもよい。すなわち、運転状態判定装置は、以下の(a)~(c)のいずれかの構成であればよい。(a)上記処理の全てを、プログラムに従って実行する処理装置と、プログラム格納装置とを備える。(b)上記処理の一部をプログラムに従って実行する処理装置およびプログラム格納装置と、残りの処理を実行する専用のハードウェア回路とを備える。(c)上記処理の全てを実行する専用のハードウェア回路を備える。ここで、処理装置およびプログラム格納装置を備えたソフトウェア実行装置や、専用のハードウェア回路は複数であってもよい。
【0088】
「コンピュータについて」
・運転状態の判定を行うコンピュータとしては、
図1に例示したCPU32に限らない。たとえば、
図2に示した処理のうち、S14の処理についてはユーザの携帯端末が実行することとし、残りの処理をCPU32が実行するようにしてもよい。
【符号の説明】
【0089】
10…LIDARECU
20…画像ECU
30…ADASECU
40…車内ネットワーク