(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-11-18
(45)【発行日】2024-11-26
(54)【発明の名称】ドライバ監視装置、ドライバ監視方法及びドライバ監視用コンピュータプログラム
(51)【国際特許分類】
G08G 1/16 20060101AFI20241119BHJP
【FI】
G08G1/16 F
(21)【出願番号】P 2021051353
(22)【出願日】2021-03-25
【審査請求日】2023-05-15
【前置審査】
(73)【特許権者】
【識別番号】000003207
【氏名又は名称】トヨタ自動車株式会社
(74)【代理人】
【識別番号】100099759
【氏名又は名称】青木 篤
(74)【代理人】
【識別番号】100123582
【氏名又は名称】三橋 真二
(74)【代理人】
【識別番号】100092624
【氏名又は名称】鶴田 準一
(74)【代理人】
【識別番号】100147555
【氏名又は名称】伊藤 公一
(74)【代理人】
【識別番号】100123593
【氏名又は名称】関根 宣夫
(74)【代理人】
【識別番号】100133835
【氏名又は名称】河野 努
(72)【発明者】
【氏名】澤井 俊一郎
(72)【発明者】
【氏名】原 健一郎
【審査官】西堀 宏之
(56)【参考文献】
【文献】特開2019-111090(JP,A)
【文献】特開2011-118831(JP,A)
【文献】国際公開第2020/144807(WO,A1)
【文献】特開2018-143285(JP,A)
【文献】特開2016-115120(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G08G 1/00-99/00
(57)【特許請求の範囲】
【請求項1】
車両のドライバの顔が表された顔画像に基づいて該ドライバの眼の開閉状態を検知し、該眼の開閉状態に基づいて、該ドライバが居眠りをしているか否かを判定する居眠り判定部と、
前記ドライバが会話をしているか否かを判定する会話判定部と
を備え、
前記居眠り判定部は、前記ドライバが会話をしていると判定されている間、
前記眼の開閉状態に関わらず、該ドライバが居眠りをしていると判定しない、ドライバ監視装置。
【請求項2】
前記居眠り判定部は、前記ドライバの会話が終了したと判定されてから所定時間が経過するまでの間、
前記眼の開閉状態に関わらず、該ドライバが居眠りをしていると判定しない、請求項1に記載のドライバ監視装置。
【請求項3】
前記会話判定部は、前記顔画像に基づいて、前記ドライバが会話をしているか否かを判定する、請求項1又は2に記載のドライバ監視装置。
【請求項4】
前記会話判定部は、前記顔画像に基づいて前記ドライバの開口度を検出し、該開口度の変化量が所定の第1閾値以上となる頻度が所定の第1基準頻度以上である場合に、前記ドライバが会話をしていると判定する、請求項3に記載のドライバ監視装置。
【請求項5】
前記顔画像に基づいて、前記ドライバがあくびをしているか否かを判定するあくび判定部を更に備え、
前記あくび判定部は、前記顔画像に基づいて前記ドライバの開眼度及び開口度を検出し、該開口度が所定の上側閾値以上であるときに該開眼度が所定の下側閾値以下となり且つ該開口度の変化量が所定の第2閾値以上となる頻度が所定の第2基準頻度未満である場合に、ドライバがあくびをしていると判定する、請求項1から4のいずれか1項に記載のドライバ監視装置。
【請求項6】
車両のプロセッサにより実行されるドライバ監視方法であって、
車両のドライバの顔が表された顔画像に基づいて該ドライバの眼の開閉状態を検知し、該眼の開閉状態に基づいて、該ドライバが居眠りをしているか否かを判定することと、
前記ドライバが会話をしているか否かを判定することと、
前記ドライバが会話をしていると判定されている間、
前記眼の開閉状態に関わらず、該ドライバが居眠りをしていると判定しないことと
を含む、ドライバ監視方法。
【請求項7】
車両のドライバの顔が表された顔画像に基づいて該ドライバの眼の開閉状態を検知し、該眼の開閉状態に基づいて、該ドライバが居眠りをしているか否かを判定することと、
前記ドライバが会話をしているか否かを判定することと、
前記ドライバが会話をしていると判定されている間、
前記眼の開閉状態に関わらず、該ドライバが居眠りをしていると判定しないことと
をコンピュータに実行させるドライバ監視用コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ドライバ監視装置、ドライバ監視方法及びドライバ監視用コンピュータプログラムに関する。
【背景技術】
【0002】
従来、車両に設けられた撮像装置を用いてドライバの状態を監視することが知られている(例えば特許文献1、2)。例えば、撮像装置によって生成されたドライバの顔画像に基づいて、ドライバが眼を閉じている状態が継続して検出された場合には、ドライバが居眠りしていると判定され、ドライバに警告が与えられる。
【先行技術文献】
【特許文献】
【0003】
【文献】特開2020-149499号公報
【文献】特許第6689470号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、居眠り以外の要因によってもドライバが眼を閉じていると判定されるおそれがある。例えば、典型的には、人は笑うときに眼が細くなり、この結果、開眼度が小さくなる。このため、ドライバが笑っているときにドライバが居眠りをしていると判定され、このときの警告によりドライバが不快感を抱くおそれがある。
【0005】
そこで、上記課題に鑑みて、本発明の目的は、ドライバの居眠りを誤判定することを抑制することにある。
【課題を解決するための手段】
【0006】
本開示の要旨は以下のとおりである。
【0007】
(1)車両のドライバの顔が表された顔画像に基づいて該ドライバの眼の開閉状態を検知し、該眼の開閉状態に基づいて、該ドライバが居眠りをしているか否かを判定する居眠り判定部と、前記ドライバが会話をしているか否かを判定する会話判定部とを備え、前記居眠り判定部は、前記ドライバが会話をしていると判定されている間、該ドライバが居眠りをしていると判定しない、ドライバ監視装置。
【0008】
(2)前記居眠り判定部は、前記ドライバの会話が終了したと判定されてから所定時間が経過するまでの間、該ドライバが居眠りをしていると判定しない、上記(1)に記載のドライバ監視装置。
【0009】
(3)前記会話判定部は、前記顔画像に基づいて、前記ドライバが会話をしているか否かを判定する、上記(1)又は(2)に記載のドライバ監視装置。
【0010】
(4)前記会話判定部は、前記顔画像に基づいて前記ドライバの開口度を検出し、該開口度の変化量が所定の第1閾値以上となる頻度が所定の第1基準頻度以上である場合に、前記ドライバが会話をしていると判定する、上記(3)に記載のドライバ監視装置。
【0011】
(5)前記顔画像に基づいて、前記ドライバがあくびをしているか否かを判定するあくび判定部を更に備え、前記あくび判定部は、前記顔画像に基づいて前記ドライバの開眼度及び開口度を検出し、該開口度が所定の上側閾値以上であるときに該開眼度が所定の下側閾値以下となり且つ該開口度の変化量が所定の第2閾値以上となる頻度が所定の第2基準頻度未満である場合に、ドライバがあくびをしていると判定する、上記(1)から(4)のいずれか1つに記載のドライバ監視装置。
【0012】
(6)車両のドライバの顔が表された顔画像に基づいて該ドライバの眼の開閉状態を検知し、該眼の開閉状態に基づいて、該ドライバが居眠りをしているか否かを判定することと、前記ドライバが会話をしているか否かを判定することと、前記ドライバが会話をしていると判定されている間、該ドライバが居眠りをしていると判定しないこととを含む、ドライバ監視方法。
【0013】
(7)車両のドライバの顔が表された顔画像に基づいて該ドライバの眼の開閉状態を検知し、該眼の開閉状態に基づいて、該ドライバが居眠りをしているか否かを判定することと、前記ドライバが会話をしているか否かを判定することと、前記ドライバが会話をしていると判定されている間、該ドライバが居眠りをしていると判定しないこととをコンピュータに実行させるドライバ監視用コンピュータプログラム。
【発明の効果】
【0014】
本発明によれば、ドライバの居眠りを誤判定することを抑制することができる。
【図面の簡単な説明】
【0015】
【
図1】
図1は、本発明の第一実施形態に係るドライバ監視装置を備える車両制御システムの概略構成図である。
【
図2】
図2は、撮像装置が設けられた車両の内部を概略的に示す図である。
【
図3】
図3は、ECUの構成を概略的に示す図である。
【
図4】
図4は、第一実施形態におけるECUのプロセッサの機能ブロック図である。
【
図5】
図5は、本発明の第一実施形態における会話判定処理の制御ルーチンを示すフローチャートである。
【
図6】
図6は、本発明の第一実施形態における居眠り判定処理の制御ルーチンを示すフローチャートである。
【
図7】
図7は、本発明の第二実施形態における会話判定処理の制御ルーチンを示すフローチャートである。
【
図8】
図8は、第三実施形態におけるECUのプロセッサの機能ブロック図である。
【
図9】
図9は、本発明の第三実施形態におけるあくび判定処理の制御ルーチンを示すフローチャートである。
【発明を実施するための形態】
【0016】
以下、図面を参照して本発明の実施形態について詳細に説明する。なお、以下の説明では、同様な構成要素には同一の参照番号を付す。
【0017】
<第一実施形態>
以下、
図1~
図6を参照して、本発明の第一実施形態について説明する。
図1は、本発明の第一実施形態に係るドライバ監視装置を備える車両制御システム1の概略構成図である。車両制御システム1は、車両10に搭載され、車両10を制御する。
図1に示されるように、車両制御システム1は、撮像装置2、ヒューマン・マシン・インターフェース(Human Machine Interface(HMI))3及び電子制御ユニット(Electronic Control Unit(ECU))4を備える。
【0018】
撮像装置2は、車両10のドライバの顔を撮影し、ドライバの顔が表された顔画像を生成する。撮像装置2は、ECU4と電気的に接続され、撮像装置2の出力、すなわち撮像装置2によって生成された顔画像はECU4に送信される。なお、撮像装置2はドライバモニタカメラとも称される。以下、撮像装置2の具体的な構成例について説明する。
【0019】
撮像装置2はカメラ及び投光器を有する。カメラは、レンズ及び撮像素子から構成され、例えばCMOS(相補型金属酸化膜半導体)カメラ又はCCD(電荷結合素子)カメラである。投光器は、LED(発光ダイオード)であり、例えばカメラの両側に配置された二個の近赤外LEDである。ドライバに近赤外光を照射することによって、夜間等の低照度時においてもドライバに不快感を与えることなくドライバの顔を撮影することができる。また、近赤外以外の波長成分の光を除去するするバンドパスフィルタがカメラの内部に設けられ、近赤外LEDから照射される赤色波長成分の光を除去する可視光カットフィルタが投光器の前面に設けられる。
【0020】
図2は、撮像装置2が設けられた車両10の内部を概略的に示す図である。撮像装置2は、車両10のドライバの顔を撮影するように車室内に設けられる。例えば、
図2に示されるように、撮像装置2は車両10のステアリングコラム11の上部に設けられる。
図2には、撮像装置2の投影範囲が破線で示されている。なお、撮像装置2は、車両10のステアリング12、ルームミラー、メータパネル、メータフード等に設けられてもよい。また、車両制御システム1は複数の撮像装置を備えていてもよい。
【0021】
HMI3はドライバと車両10との間で情報の入出力を行う。HMI3は、例えば、情報を表示するディスプレイ、音を発生させるスピーカー、ドライバが入力操作を行うための操作ボタン、操作スイッチ又はタッチスクリーン、ドライバの音声を受信するマイクロフォン等を含む。HMI3はECU4に電気的に接続される。したがって、ECU4の出力はHMI3を介してドライバに伝達され、ドライバからの入力はHMI3を介してECU4に送信される。HMI3は、入力装置、出力装置又は入出力装置の一例である。
【0022】
図3は、ECU4の構成を概略的に示す図である。ECU4は車両の各種制御を実行する。
図3に示されるように、ECU4は、通信インターフェース41、メモリ42及びプロセッサ43を備える。通信インターフェース41及びメモリ42は信号線を介してプロセッサ43に接続されている。
【0023】
通信インターフェース41は、CAN(Controller Area Network)等の規格に準拠した車内ネットワークにECU4を接続するためのインターフェース回路を有する。ECU4は、通信インターフェース41及び車内ネットワークを介して、車内ネットワークに接続された車載機器と互いに通信する。
【0024】
メモリ42は、例えば、揮発性の半導体メモリ(例えばRAM)及び不揮発性の半導体メモリ(例えばROM)を有する。メモリ42は、プロセッサ43によって実行されるコンピュータプログラム、プロセッサ43によって各種処理が実行されるときに使用される各種データ等を記憶する。
【0025】
プロセッサ43は、一つ又は複数のCPU(Central Processing Unit)及びその周辺回路を有し、各種処理を実行する。なお、プロセッサ43は、論理演算ユニット、数値演算ユニット又はグラフィック処理ユニットのような他の演算回路を更に有していてもよい。
【0026】
本実施形態では、ECU4は、車両10のドライバの状態を監視するドライバ監視装置として機能する。
図4は、第一実施形態におけるECU4のプロセッサ43の機能ブロック図である。本実施形態では、プロセッサ43は居眠り判定部51及び会話判定部52を有する。居眠り判定部51及び会話判定部52は、ECU4のメモリ42に記憶されたコンピュータプログラムをECU4のプロセッサ43が実行することによって実現される機能モジュールである。なお、これら機能モジュールは、それぞれ、プロセッサ43に設けられた専用の演算回路によって実現されてもよい。また、車内ネットワークを介して互いに接続された複数のECUによってこれら機能モジュールが実現されてもよい。すなわち、複数のECUがドライバモニタ装置として機能してもよい。
【0027】
上述したように、撮像装置2によって生成された顔画像、すなわち、車両10のドライバの顔が表された顔画像はECU4に送信される。居眠り判定部51は、顔画像に基づいてドライバの眼の開閉状態を検知し、眼の開閉状態に基づいて、ドライバが居眠りをしているか否かを判定する。
【0028】
例えば、ドライバの眼の開閉状態を表す指標として、ドライバの開眼度が用いられる。この場合、居眠り判定部51は顔画像に基づいてドライバの開眼度を検出する。例えば、居眠り判定部51は、顔画像から顔領域を特定し、眼、鼻、口等の顔部品を検出する。そして、居眠り判定部51は、右眼及び左眼のそれぞれについて、上瞼及び下瞼の特徴点を抽出し、二つの特徴点の距離を開眼度として算出する。一つの顔画像から検出される開眼度は、例えば、右眼の開眼度と左眼の開眼度との平均値として算出される。
【0029】
なお、ドライバの開眼度を検出するために画像認識のための識別器が用いられてもよい。すなわち、居眠り判定部51は、顔画像から開眼度を出力するように予め学習された識別器に顔画像を入力することによってドライバの開眼度を検出してもよい。
【0030】
居眠り判定部51は、ドライバの開眼度が所定の基準値以下である場合に、ドライバが閉眼状態にあると判定する。基準値は、不特定多数の人又はドライバが寝ている画像等を用いて予め定められる。また、居眠り判定部51は、閉眼状態が所定の基準時間以上維持された場合、すなわちドライバの開眼度が基準値以下の値に基準時間以上維持された場合に、ドライバが居眠りをしていると判定する。基準時間は、瞬きによって眼が閉じる時間よりも長くなるように予め定められ、例えば1秒~7秒に設定される。
【0031】
なお、居眠り判定部51は、顔画像に基づいてドライバの眼の状態を開眼状態又は閉眼状態に分類するように予め学習された識別器に顔画像を入力することによってドライバの眼の開閉状態を検知してもよい。この場合も、居眠り判定部51は、閉眼状態が基準時間以上維持された場合に、ドライバが居眠りをしていると判定する。開眼度又は眼の状態を出力する識別器として、例えば、ニューラルネットワーク(例えば畳み込みニューラルネットワーク(Convolutional Neural Network(CNN))等)、サポートベクターマシン、ランダムフォレスト等の機械学習モデルが用いられる。
【0032】
居眠り判定部51は、ドライバが居眠りをしていると判定した場合、HMI3によって警告表示及び警告音の少なくとも一方を出力することによってドライバに警告を与える。このことによって、ドライバが居眠りすることを抑制することができる。
【0033】
一方、会話判定部52は、車両10のドライバが会話をしているか否かを判定する。例えば、会話判定部52は、撮像装置2によって生成された顔画像、すなわち車両10のドライバの顔が表された顔画像に基づいて、ドライバが会話をしているか否かを判定する。
【0034】
人が会話をするときには、口の動きに応じて口が頻繁に開閉し、開口度が変化する。このため、会話判定部52は、顔画像に基づいてドライバの開口度を検出し、開口度に基づいて、ドライバが会話をしているか否かを判定する。例えば、会話判定部52は、顔画像から顔領域を特定し、眼、鼻、口等の顔部品を検出する。そして、会話判定部52は、上唇及び下唇の特徴点を抽出し、二つの特徴点の距離を開口度として算出する。
【0035】
なお、ドライバの開口度を検出するために画像認識のための識別器が用いられてもよい。すなわち、会話判定部52は、顔画像から開口度を出力するように予め学習された識別器に顔画像を入力することによってドライバの開口度を検出してもよい。
【0036】
会話判定部52は、開口度の変化量が所定の第1閾値以上となる頻度が所定の第1基準頻度以上である場合に、ドライバが会話をしていると判定する。第1閾値及び第1基準頻度は、不特定多数の人又はドライバが会話をしているときの時系列の一連の顔画像等を用いて予め定められる。
【0037】
なお、会話判定部52は、顔画像に基づいてドライバの状態を会話状態又は非会話状態に分類するように予め学習された識別器に時系列の一連の顔画像を入力することによって、ドライバが会話をしているか否かを判定してもよい。開口度又はドライバの状態を出力する識別器として、例えば、ニューラルネットワーク(例えば、畳み込みニューラルネットワーク(Convolutional Neural Network(CNN))、再帰型ニューラルネットワーク(Recurrent Neural Network(RNN))等)、サポートベクターマシン、ランダムフォレスト等の機械学習モデルが用いられる。
【0038】
ところで、上記のようにドライバの閉眼状態が維持されていることが検出されたとしても、必ずしもドライバが居眠りをしているとは限らない。例えば、典型的には、人は笑うときに眼が細くなり、この結果、開眼度が小さくなる。このため、ドライバが笑っているときにドライバが居眠りをしていると判定され、このときの警告によりドライバが不快感を抱くおそれがある。
【0039】
したがって、居眠りによる閉眼と笑顔による閉眼とを識別できることが望ましい。例えば、ドライバが笑顔になる状況としては、ドライバが人と会話をしている場面が想定される。このため、会話中に検出される閉眼状態は、笑顔に起因している可能性が高い。
【0040】
そこで、本実施形態では、居眠り判定部51は、会話判定部52によってドライバが会話をしていると判定されている間、ドライバが居眠りをしていると判定しない。すなわち、居眠り判定部51は、ドライバの閉眼状態が維持されたとしても、ドライバが会話をしていると判定されている限り、ドライバが居眠りをしていると判定しない。この場合、会話によるドライバの笑顔が閉眼状態と判定されたとしても、ドライバが居眠りをしていると判定されることはない。したがって、ドライバの居眠りを誤判定することを抑制することができる。
【0041】
<会話判定処理>
以下、
図5及び
図6を参照して、上述した制御のフローについて説明する。
図5は、本発明の第一実施形態における会話判定処理の制御ルーチンを示すフローチャートである。本制御ルーチンはECU4によって所定の実行間隔で繰り返し実行される。
【0042】
最初に、ステップS101において、会話判定部52は、現在までの所定期間において撮像装置2によって生成された時系列の一連の顔画像を取得する。これら一連の顔画像は例えばECU4のメモリ42に記憶されている。メモリ42では、現在までの所定期間に生成された画像に対応する所定数の最新の顔画像がメモリ42に記憶されるように、撮像装置2からECU4に顔画像が送信される度に、最も古い顔画像が削除される。
【0043】
次いで、ステップS102において、会話判定部52は、時系列の一連の顔画像に基づいて、ドライバの開口度の変化量が第1閾値以上となる頻度が第1基準頻度以上であるか否かを判定する。例えば、会話判定部52は、一連の顔画像のそれぞれについて開口度を検出し、開口度が下側閾値と上側閾値との間で変化した回数が所定回数以上である場合に、開口度の変化量が第1閾値以上となる頻度が第1基準頻度以上であると判定する。
【0044】
ステップS102において開口度の変化量が第1閾値以上となる頻度が第1基準頻度以上であると判定された場合、本制御ルーチンはステップS103に進む。ステップS103では、会話判定部52は、ドライバが会話をしていると判定する。
【0045】
次いで、ステップS104において、会話判定部52は居眠り判定禁止フラグFを1に設定する。ステップS104の後、本制御ルーチンは終了する。
【0046】
一方、ステップS102において開口度の変化量が第1閾値以上となる頻度が第1基準頻度未満であると判定された場合、本制御ルーチンはステップS105に進む。ステップS105では、会話判定部52は居眠り判定禁止フラグFをゼロに設定する。ステップS105の後、本制御ルーチンは終了する。
【0047】
なお、ステップS102において、会話判定部52は、開口度を検出することなく、時系列の一連の顔画像を識別器に入力することによって、ドライバが会話をしているか否かを判定してもよい。
【0048】
<居眠り判定処理>
図6は、本発明の第一実施形態における居眠り判定処理の制御ルーチンを示すフローチャートである。本制御ルーチンはECU4によって所定の実行間隔で繰り返し実行される。
【0049】
最初に、ステップS201において、居眠り判定部51は、撮像装置2によって生成された顔画像を取得する。
【0050】
次いで、ステップS202において、居眠り判定部51は、顔画像に基づいて、ドライバが閉眼状態にあるか否かを判定する。具体的には、居眠り判定部51は、ドライバの開眼度が基準値以下である場合にドライバが閉眼状態にあると判定し、ドライバの開眼度が基準値よりも大きい場合にドライバが開眼状態にあると判定する。なお、居眠り判定部51は、開眼度を検出することなく、顔画像を識別器に入力することによってドライバが閉眼状態にあるか否かを判定してもよい。
【0051】
ステップS202においてドライバ閉眼状態にあると判定された場合、すなわち、ドライバの眼が閉じていると判定された場合、本制御ルーチンはステップS203に進む。ステップS203では、居眠り判定部51は、閉眼状態が基準時間以上維持されたか否かを判定する。ステップS203において閉眼状態が基準時間以上維持されたと判定された場合、本制御ルーチンはステップS204に進む。
【0052】
ステップS204では、居眠り判定部51は、居眠り判定禁止フラグFがゼロに設定されているか否かを判定する。居眠り判定禁止フラグFがゼロに設定されていると判定された場合、本制御ルーチンはステップS205に進む。
【0053】
ステップS205では、居眠り判定部51は、ドライバが居眠りをしていると判定する。次いで、ステップS206において、居眠り判定部51は、HMI3によって警告表示及び警告音の少なくとも一方を出力することによってドライバに警告を与える。なお、居眠り判定部51は、他の手段、例えば運転席のシートベルトを振動させることによってドライバに警告を与えてもよい。ステップS206の後、本制御ルーチンは終了する。
【0054】
一方、ステップS202においてドライバが開眼状態にあると判定された場合、ステップS203において閉眼状態が基準時間以上維持されていないと判定された場合、又はステップS204において居眠り判定禁止フラグFが1に設定されていると判定された場合、本制御ルーチンは終了する。この場合、居眠り判定部51は、ドライバが居眠りをしていると判定しない。
【0055】
なお、ステップS204はステップS201の前に実行されてもよい。すなわち、居眠り判定部51は、ドライバが会話をしていると判定されている間、ドライバの眼の開閉状態を検知しなくてもよい。
【0056】
<第二実施形態>
第二実施形態に係るドライバ監視装置は、以下に説明する点を除いて、基本的に第一実施形態に係るドライバ監視装置の構成及び制御と同様である。このため、以下、本発明の第二実施形態について、第一実施形態と異なる部分を中心に説明する。
【0057】
第一実施形態では、ドライバの会話中に居眠り判定が禁止される。しかしながら、ドライバが会話をしていなかったとしても、同乗者の会話によってドライバが笑う可能性がある。斯かる状況は、特にドライバが会話をした直後に生じやすい。また、ドライバが会話をした直後にドライバが居眠りをする可能性は低い。
【0058】
このため、第二実施形態では、居眠り判定部51は、ドライバが会話をしていると判定されている間だけでなく、ドライバの会話が終了したと判定されてから所定時間が経過するまでの間も、ドライバが居眠りをしていると判定しない。このことによって、ドライバの居眠りを誤判定することをより一層抑制することができる。
【0059】
<会話判定処理>
図7は、本発明の第二実施形態における会話判定処理の制御ルーチンを示すフローチャートである。本制御ルーチンはECU4によって所定の実行間隔で繰り返し実行される。
【0060】
ステップS301~S304は、
図5のステップS101~S104と同様に実行される。一方、ステップS302において、開口度の変化量が第1閾値以上となる頻度が第1基準頻度未満であると判定された場合、本制御ルーチンはステップS305に進む。
【0061】
ステップS305では、会話判定部52は、ドライバの会話が終了してから所定時間以内であるか否かを判定する。所定時間は例えば5秒~20秒に設定される。なお、会話判定部52は、ステップS302における判定の結果が肯定から否定に変化したときに、ドライバの会話が終了したと判定する。
【0062】
ステップS305において、ドライバの会話が終了してから所定時間以内であると判定された場合、本制御ルーチンはステップS304に進む。ステップS304では、会話判定部52は居眠り判定禁止フラグFを1に設定する。ステップS304の後、本制御ルーチンは終了する。
【0063】
一方、ステップS305において、ドライバの会話が終了してから所定時間以内ではないと判定された場合、本制御ルーチンはステップS306に進む。ステップS306では、会話判定部52は居眠り判定禁止フラグFをゼロに設定する。ステップS306の後、本制御ルーチンは終了する。
【0064】
第二実施形態においても、第一実施形態と同様に、
図6の居眠り判定処理の制御ルーチンが実行される。
【0065】
<第三実施形態>
第三実施形態に係るドライバ監視装置は、以下に説明する点を除いて、基本的に第一実施形態に係るドライバ監視装置の構成及び制御と同様である。このため、以下、本発明の第三実施形態について、第一実施形態と異なる部分を中心に説明する。
【0066】
図8は、第三実施形態におけるECU4のプロセッサ43の機能ブロック図である。第三実施形態では、プロセッサ43は、居眠り判定部51及び会話判定部52に加えて、あくび判定部53を有する。居眠り判定部51、会話判定部52及びあくび判定部53は、ECU4のメモリ42に記憶されたコンピュータプログラムをECU4のプロセッサ43が実行することによって実現される機能モジュールである。なお、これら機能モジュールは、それぞれ、プロセッサ43に設けられた専用の演算回路によって実現されてもよい。また、車内ネットワークを介して互いに接続された複数のECUによってこれら機能モジュールが実現されてもよい。すなわち、複数のECUがドライバモニタ装置として機能してもよい。
【0067】
あくび判定部53は、撮像装置2によって生成された顔画像、すなわち車両10のドライバの顔が表された顔画像に基づいて、ドライバがあくびをしているか否かを判定する。通常、人があくびをするときには、口の動きに眼の動きが連動し、開口度が大きくなると共に、開眼度が小さくなる。また、会話と異なり、人があくびをするときには、口が一度だけ開かれ、口が連続的に開閉することはない。
【0068】
このため、あくび判定部53は、顔画像に基づいてドライバの開眼度及び開口度を検出し、開口度が所定の上側閾値以上であるときに開眼度が所定の下側閾値以下となり且つ開口度の変化量が所定の第2閾値以上となる頻度が所定の第2基準頻度未満である場合に、ドライバがあくびをしていると判定する。このことによって、あくびと居眠りとを識別してあくびを精度良く検出することができる。なお、ドライバの開眼度及び開口度は、居眠り判定部51及び会話判定部52に関して上述した手法によって検出される。
【0069】
<あくび判定処理>
第三実施形態では、
図5の会話判定処理の制御ルーチン及び
図6の居眠り判定処理の制御ルーチンに加えて、
図9のあくび判定処理の制御ルーチンが実行される。
図9は、本発明の第三実施形態におけるあくび判定処理の制御ルーチンを示すフローチャートである。本制御ルーチンはECU4によって所定の実行間隔で繰り返し実行される。
【0070】
最初に、ステップS401において、
図5のステップS101における会話判定部52による処理と同様に、あくび判定部53は、現在までの所定期間において撮像装置2によって生成された時系列の一連の顔画像を取得する。
【0071】
次いで、ステップS402において、あくび判定部53は、時系列の一連の顔画像に基づいて、ドライバの開口度が大きくなり且つドライバの開眼度が低下したか否かを判定する。具体的には、あくび判定部53は、一連の顔画像のそれぞれについて開口度及び開眼度を検出し、開口度が上限閾値以上であるときに開眼度が下限閾値以下になったか否かを判定する。ステップS402の判定が否定された場合、本制御ルーチンは終了する。
【0072】
一方、ステップS402において開口度が上限閾値以上であるときに開眼度が下限閾値以下になったと判定された場合、本制御ルーチンはステップS403に進む。ステップS403では、あくび判定部53は、時系列の一連の顔画像に基づいて、ドライバの開口度の変化量が第2閾値以上となる頻度が第2基準頻度未満であるか否かを判定する。第2閾値及び第2基準頻度は、不特定多数の人又はドライバがあくびをしているときの時系列の一連の顔画像等を用いて予め定められる。なお、第2閾値及び第2基準頻度は、それぞれ、会話判定に用いられる第1閾値及び第1基準頻度と同じ値であってもよい。例えば、あくび判定部53は、一連の顔画像のそれぞれについて開口度を検出し、開口度が下側閾値と上側閾値との間で変化した回数が所定回数未満である場合に、開口度の変化量が第2閾値以上となる頻度が第2基準頻度未満であると判定する。
【0073】
ステップS403において開口度の変化量が第2閾値以上となる頻度が第2基準頻度以上であると判定された場合、本制御ルーチンは終了する。一方、ステップS403において開口度の変化量が第2閾値以上となる頻度が第2基準値未満であると判定された場合、本制御ルーチンはステップS404に進む。
【0074】
ステップS404では、あくび判定部53は、ドライバがあくびをしていると判定する。次いで、ステップS405において、あくび判定部53は、HMI3によって警告表示及び警告音の少なくとも一方を出力することによってドライバに警告を与える。なお、あくび判定部53は、他の手段、例えば運転席のシートベルトを振動させることによってドライバに警告を与えてもよい。また、あくび判定における警告の強度は居眠り判定における警告の強度よりも低く設定されてもよい。また、あくび判定部53は、所定時間内にドライバがあくびをしていると判定した回数が所定回数に達したときにドライバに警告を与えてもよい。ステップS405の後、本制御ルーチンは終了する。
【0075】
以上、本発明に係る好適な実施形態を説明したが、本発明はこれら実施形態に限定されるものではなく、特許請求の範囲の記載内で様々な修正及び変更を施すことができる。
【0076】
例えば、会話判定部52は、ドライバの音声を取得するように車室内に設けられたマイクロフォン(例えばHMI3のマイクロフォン)への入力信号に基づいて、ドライバが会話をしているか否かを判定してもよい。この場合、会話判定部52は、例えば、マイクロフォンへの入力信号の周波数が人の声に対応する所定範囲の周波数である場合に、ドライバが会話をしていると判定する。
【0077】
また、会話判定部52は、マイクロフォンへの入力信号に基づいてドライバの状態を会話状態又は非会話状態に分類するように予め学習された識別器にマイクロフォンへの入力信号を入力することによって、ドライバが会話をしているか否かを判定してもよい。この場合、識別器として、例えば、ニューラルネットワーク(例えば再帰型ニューラルネットワーク(Recurrent Neural Network(RNN))等)、サポートベクターマシン、ランダムフォレスト等の機械学習モデルが用いられる。
【0078】
また、上述した実施形態によるドライバ監視装置のプロセッサが有する各部の機能をコンピュータに実現させるコンピュータプログラムは、コンピュータによって読取り可能な記録媒体に記憶された形で提供されてもよい。コンピュータによって読取り可能な記録媒体は、例えば、磁気記録媒体、光記録媒体又は半導体メモリである。
【0079】
また、上述した実施形態は、任意に組み合わせて実施可能である。第二実施形態と第三実施形態とが組み合わされる場合、
図7の会話判定処理の制御ルーチンと、
図6の居眠り判定処理の制御ルーチンと、
図9のあくび判定処理の制御ルーチンとが実行される。
【符号の説明】
【0080】
10 車両
4 電子制御ユニット(ECU)
43 プロセッサ
51 居眠り判定部
52 会話判定部