IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 三菱電機モビリティ株式会社の特許一覧

<図1>
  • 特許-眠気推定装置および眠気推定方法 図1
  • 特許-眠気推定装置および眠気推定方法 図2A
  • 特許-眠気推定装置および眠気推定方法 図2B
  • 特許-眠気推定装置および眠気推定方法 図3
  • 特許-眠気推定装置および眠気推定方法 図4
  • 特許-眠気推定装置および眠気推定方法 図5
  • 特許-眠気推定装置および眠気推定方法 図6
  • 特許-眠気推定装置および眠気推定方法 図7
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-12-26
(45)【発行日】2025-01-10
(54)【発明の名称】眠気推定装置および眠気推定方法
(51)【国際特許分類】
   G08G 1/16 20060101AFI20241227BHJP
【FI】
G08G1/16 F
【請求項の数】 13
(21)【出願番号】P 2024543738
(86)(22)【出願日】2022-09-02
(86)【国際出願番号】 JP2022033046
(87)【国際公開番号】W WO2024047856
(87)【国際公開日】2024-03-07
【審査請求日】2024-08-08
【早期審査対象出願】
(73)【特許権者】
【識別番号】324003048
【氏名又は名称】三菱電機モビリティ株式会社
(74)【代理人】
【識別番号】110003166
【氏名又は名称】弁理士法人山王内外特許事務所
(72)【発明者】
【氏名】岡本 有実子
(72)【発明者】
【氏名】田原 奈津季
(72)【発明者】
【氏名】中村 雄大
【審査官】増子 真
(56)【参考文献】
【文献】特開2011-152218(JP,A)
【文献】特開2019-068933(JP,A)
【文献】特開2010-029537(JP,A)
【文献】特開2019-087170(JP,A)
【文献】特開2013-156707(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G08G 1/00 - 99/00
B60W 10/00 - 10/30
B60W 30/00 - 60/00
A61B 5/06 - 5/22
(57)【特許請求の範囲】
【請求項1】
車両の乗員の顔部を撮影した画像に基づいて、学習済みの機械学習モデルを用いて前記乗員の眠気の度合いを示す眠気スコアを算出する眠気スコア算出部と、
前記画像に基づいて、前記眠気スコアの算出に影響を与える過検知要因が存在するかを判定し、前記過検知要因が存在すると判定した場合に前記過検知要因が存在することを示す過検知要因指標およびその過検知要因指標の信頼度をルールベースで算出する過検知要因信頼度算出部と、
その算出された眠気スコア、その算出された過検知要因指標、およびその算出された過検知要因指標の信頼度に基づいて、前記乗員の眠気が、眠気度合いが低い第1の眠気状態と、前記第1の眠気状態よりも眠気度合いが高い第2の眠気状態を含む複数の眠気状態のうちのいずれの眠気状態であるかを判定する状態遷移判定部と、
を備え、
前記過検知要因指標の信頼度は、信頼度が低い第1の信頼度と、前記第1の信頼度よりも信頼度が高い第2の信頼度とを含み、
前記状態遷移判定部は、前記算出された過検知要因指標が存在する場合であって、前記算出された信頼度が前記第2の信頼度の場合、前記複数の眠気状態間で眠気状態に関する判定を遷移させないで直前の眠気状態についての判定を維持する、
眠気推定装置。
【請求項2】
前記状態遷移判定部は、前記算出された過検知要因指標が存在する場合であって、前記算出された信頼度が前記第1の信頼度の場合、前記第1の眠気状態から前記第2の眠気状態への遷移がより難しくなるように補正を行う、
請求項1に記載された眠気推定装置。
【請求項3】
前記状態遷移判定部は、前記算出された過検知要因指標が存在する場合であって、前記算出された信頼度が前記第1の信頼度の場合、前記第1の眠気状態から前記第2の眠気状態へ遷移するための閾値をより高くすることにより前記補正を行う、
請求項2に記載された眠気推定装置。
【請求項4】
前記状態遷移判定部は、前記算出された過検知要因指標が存在する場合であって、前記算出された信頼度が前記第1の信頼度の場合、前記第1の眠気状態と前記第2の眠気状態の中間状態へ遷移させることにより前記補正を行う、
請求項2に記載された眠気推定装置。
【請求項5】
前記過検知要因は前記乗員の下方視であり、
前記過検知要因信頼度算出部は、前記乗員の両まぶた間の両まぶた開眼率があらかじめ定められた閾値以上である場合に前記過検知要因指標の信頼度を算出する、
請求項1に記載された眠気推定装置。
【請求項6】
前記過検知要因信頼度算出部は、上下まぶたの頂点座標の時系列分散があらかじめ定められた閾値以上である場合に、前記過検知要因指標の信頼度は前記第1の信頼度であると判定し、前記上下まぶたの頂点座標の時系列分散が前記あらかじめ定められた閾値未満である場合に、前記過検知要因指標の信頼度は前記第2の信頼度であると判定する、
請求項5に記載された眠気推定装置。
【請求項7】
前記過検知要因信頼度算出部は、開眼度の信頼度に基づいて前記過検知要因指標の信頼度を算出する、
請求項5に記載された眠気推定装置。
【請求項8】
前記過検知要因は前記乗員の会話であり、
前記過検知要因信頼度算出部は、前記乗員の開口および閉口による動作の速度があらかじめ定められた閾値以上である場合に前記過検知要因指標の信頼度を算出する、
請求項1に記載された眠気推定装置。
【請求項9】
前記過検知要因信頼度算出部は、前記乗員の上下唇の頂点座標の時系列分散があらかじめ定められた閾値以上である場合に、前記過検知要因指標の信頼度は前記第1の信頼度であると判定し、前記上下唇の頂点座標の時系列分散が前記あらかじめ定められた閾値未満である場合に、前記過検知要因指標の信頼度は前記第2の信頼度であると判定する、
請求項8に記載された眠気推定装置。
【請求項10】
前記画像に基づいて眠気の兆候を表す眠気特徴量を算出する特徴量算出部を更に備え、
前記学習済みの機械学習モデルは、眠気特徴量と眠気スコアの関係を学習した学習済みのモデルであり、
前記眠気スコア算出部は、前記学習済みの機械学習モデルを用いて、その算出された眠気特徴量から前記乗員の眠気スコアを算出する、
請求項1に記載された眠気推定装置。
【請求項11】
前記第1の眠気状態から前記第2の眠気状態への遷移を判定するための閾値の値は、前記第2の眠気状態から前記第1の眠気状態への遷移を判定するための閾値の値よりも高く設定されている、
請求項1から10のいずれか1項に記載された眠気推定装置。
【請求項12】
車両の乗員の顔部を撮影した画像に基づいて、学習済みの機械学習モデルを用いて前記乗員の眠気の度合いを示す眠気スコアを算出する眠気スコア算出部と、
前記画像に基づいて、前記眠気スコアの算出に影響を与える過検知要因が存在するかを判定し、前記過検知要因が存在すると判定した場合に前記過検知要因が存在することを示す過検知要因指標およびその過検知要因指標の信頼度をルールベースで算出する過検知要因信頼度算出部と、
その算出された眠気スコア、その算出された過検知要因指標、およびその算出された過検知要因指標の信頼度に基づいて、前記乗員の眠気が、眠気度合いが低い第1の眠気状態と、前記第1の眠気状態よりも眠気度合いが高い第2の眠気状態を含む複数の眠気状態のうちのいずれの眠気状態であるかを判定する状態遷移判定部と、
を備え、
前記第1の眠気状態から前記第2の眠気状態への遷移を判定するための閾値の値は、前記第2の眠気状態から前記第1の眠気状態への遷移を判定するための閾値の値よりも高く設定されている、
眠気推定装置。
【請求項13】
眠気スコア算出部、過検知要因信頼度算出部、および状態遷移判定部を備える眠気推定装置が行う眠気推定方法であって、
前記眠気スコア算出部が、車両の乗員の顔部を撮影した画像に基づいて、学習済みの機械学習モデルを用いて前記乗員の眠気の度合いを示す眠気スコアを算出するステップと、
前記過検知要因信頼度算出部が、前記画像に基づいて、前記眠気スコアの算出に影響を与える過検知要因が存在するかを判定し、前記過検知要因が存在すると判定した場合に前記過検知要因が存在する確からしさを表す過検知要因指標の信頼度をルールベースで算出するステップと、
前記状態遷移判定部が、その算出された眠気スコアと、その算出された過検知要因指標と、その算出された信頼度とに基づいて、前記乗員の眠気が、眠気度合いが低い第1の眠気状態と、前記第1の眠気状態よりも眠気度合いが高い第2の眠気状態を含む複数の眠気状態のうちのいずれの眠気状態であるかを判定するステップと、
を備え、
前記過検知要因指標の信頼度は、信頼度が低い第1の信頼度と、前記第1の信頼度よりも信頼度が高い第2の信頼度とを含み、
前記状態遷移判定部が、前記算出された過検知要因指標が存在する場合であって、前記算出された信頼度が前記第2の信頼度の場合、前記複数の眠気状態間で眠気状態に関する判定を遷移させないで直前の眠気状態についての判定を維持するステップと、
を備える眠気推定方法。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、眠気推定技術に関する。
【背景技術】
【0002】
交通事故の原因の1つに、ドライバの眠気による運転操作誤りがある。そのような原因による交通事故を防止するため、車両のドライバ等の乗員を監視する乗員監視システム(Passenger Monitoring System;以下、単に「PMS」と称する場合がある。)の1機能として眠気判定機能が用いられることがある。眠気判定機能とは、カメラ等のセンサを用いて乗員の情報を捉えて乗員の眠気度合を推定する機能である。推定の結果に基づいて乗員の覚醒を促すための警告を行うことにより交通事故の発生が防止される。
【0003】
眠気判定機能を実現するために、乗員の閉眼またはあくび等の特徴を特徴量(以下、「眠気特徴量」という。)として数値化し、数値化された眠気特徴量の変化を総合的に判断して、眠気の有無および眠気の度合いが判定される。ただし、眠気が発生した際における眠気の眠気特徴量への現れ方は個人差が大きいため、どのような場合に眠気ありと判定するのかをルール化してルールベースモデルで眠気判定を行うことは難しい。
【0004】
このようなルールベースモデルに伴う難しさを解消するため、例えば、特許文献1に開示された技術のように、機械学習モデルを用いて眠気判定を行う技術がある。また、特許文献1の段落0020では、機械学習モデルとルールベースモデルを組み合わせてもよいとの記載がなされている。
【先行技術文献】
【特許文献】
【0005】
【文献】特表2020-514861号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
眠気特徴量の数値は、眠気ありの場合と眠気なしの場合とで同様の変化をする場合がある。そのため、単に機械学習モデルを用いて眠気判定を行う技術によれば、これらの場合を識別することが困難である。上述のとおり、特許文献1には機械学習モデルとルールベースモデルを組み合わせてもよいとの記載がなされているものの、具体的な組み合わせ方法については言及がなされていない。したがって、従来技術には、機械学習モデルとルールベースモデルを組み合わせてどのように眠気推定を行うかが明らかでないという課題がある。
【0007】
本開示は、このような課題を解決するためになされたものであり、機械学習モデルとルールベースモデルを組み合わせて車両の乗員の眠気を推定する眠気推定技術を提供することを目的とする。
【課題を解決するための手段】
【0008】
本開示の実施形態の一側面による眠気推定装置は、車両の乗員の顔部を撮影した画像に基づいて、学習済みの機械学習モデルを用いて前記乗員の眠気の度合いを示す眠気スコアを算出する眠気スコア算出部と、前記画像に基づいて、前記眠気スコアの算出に影響を与える過検知要因が存在するかを判定し、前記過検知要因が存在すると判定した場合に前記過検知要因が存在することを示す過検知要因指標およびその過検知要因指標の信頼度をルールベースで算出する過検知要因信頼度算出部と、その算出された眠気スコア、その算出された過検知要因指標、およびその算出された過検知要因指標の信頼度に基づいて、前記乗員の眠気が、眠気度合いが低い第1の眠気状態と、前記第1の眠気状態よりも眠気度合いが高い第2の眠気状態を含む複数の眠気状態のうちのいずれの眠気状態であるかを判定する状態遷移判定部と、を備える。
【発明の効果】
【0009】
本開示の実施形態による眠気推定装置によれば、機械学習モデルとルールベースモデルを組み合わせて車両の乗員の眠気を推定することができる。
【図面の簡単な説明】
【0010】
図1】眠気推定装置の構成例を示すブロック図である。
図2A】眠気推定装置のハードウェアの構成例を示す図である。
図2B】眠気推定装置のハードウェアの構成例を示す図である。
図3】眠気推定装置の概略的な動作を示すフローチャートである。
図4】眠気推定装置の過検知要因信頼度算出部の動作を示すフローチャートである。
図5】両まぶた開眼率の算出方法を説明するための図である。
図6】眠気推定装置の状態遷移判定部の動作を示すフローチャートである。
図7】複数の眠気状態間の状態遷移図である。
【発明を実施するための形態】
【0011】
以下、添付の図面を参照して、本開示における種々の実施形態について詳細に説明する。なお、図面において同一または類似の符号を付された構成要素は、同一または類似の構成または機能を有するものであり、そのような構成要素についての重複する説明は省略する。
【0012】
実施の形態1.
<構成>
図1を参照して、本開示の実施の形態1による眠気推定装置について説明する。図1は、本開示の実施の形態1による眠気推定装置100の構成例を示すブロック図である。図1に示されているように、車両1は、撮像装置2と眠気推定装置100を備える。
【0013】
(撮像装置)
撮像装置2は、車両1の室内を撮像するための装置である。撮像装置2は、例えば車両1の車室内の前方部に設置され、車両1のドライバ等の乗員の顔を含む範囲を前方から撮像する。撮像装置2は、1個の可視光カメラ、複数個の可視光カメラ、1個の赤外線カメラまたは複数個の赤外線カメラによって構成されている。撮像装置2が赤外線カメラにより構成されている場合、ドライバの顔を含む範囲に対して撮像用の赤外線を照射する光源(不図示)が設けられている。この光源は、例えばLED(Light Emitting Diode)により構成されている。
【0014】
(眠気推定装置)
図1に示されているように、眠気推定装置100は、顔情報検出部10と眠気判定部20を備える。また、顔情報検出部10は、映像取得部11、顔検出部12、および顔パーツ検出部13を備える。また、眠気判定部20は、特徴量算出部14、眠気スコア算出部15、過検知要因信頼度算出部16、および状態遷移判定部17を備える。また、眠気推定装置100は不図示の制御部(以下、単に「制御部」と称する。)を備える。図1ではデータの大局的な流れを示すため、制御部の図示は省略している。制御部は、撮像装置2と、眠気推定装置100の各機能部の動作を制御する。具体的には、制御部は、撮像装置2に指示を出してドライバの映像を車内カメラで撮像する。また、制御部は映像取得部11、顔検出部12、顔パーツ検出部13、特徴量算出部14、眠気スコア算出部15、過検知要因信頼度算出部16、および状態遷移判定部17に指示を出して動作タイミングおよび情報の授受を制御する。
【0015】
(映像取得部)
映像取得部11は、撮像装置2が撮像した複数のフレーム画像を備える映像(撮像情報)から顔画像を取得し、取得した顔画像を制御部へ出力する。顔画像とは、各フレーム画像の全体の領域から顔を含む部分領域を抽出した画像を意味する。
【0016】
(顔検出部)
顔検出部12は、映像取得部11により取得された顔画像を制御部から受け取り、顔画像から顔を検出し、検出した顔のデータを顔検出結果として制御部へ出力する。顔検出部12は、例えば、Haar-Like検出器にAdaboostまたはCasecadeを組み合わせた、一般的なアルゴリズムによる識別器である。
【0017】
(顔パーツ検出部)
顔パーツ検出部13は、顔検出部12により出力された顔検出結果を制御部から受け取り、顔検出結果に含まれる顔のデータから目または口などの顔パーツを検出し、検出した顔パーツを顔パーツ検出結果として制御部へ出力する。顔パーツの検出は、一般的な画像処理技術を用いて検出することができ、例えば、微分フィルタを用いてエッジを検出することにより行う。
【0018】
また、顔パーツ検出部13は、検出した顔パーツの形状から、顔パーツの開き具合を算出し、顔パーツの開き具合を示す情報を顔パーツ検出結果に含めて出力してもよい。例えば、顔パーツの開き具合を示す情報として、開眼度を算出してもよい。開眼度とは、目頭の位置、目尻の位置および上まぶたの最高点の位置を検出し、目頭と目尻とを結ぶ直線と上まぶたの最高点との間の距離を、目頭と目尻の間の距離で除算することで目の扁平率を求め、扁平率を予め定められた基準値で除算して得られる値として算出することができる。なお、上まぶたの最高点とは、目尻と目頭を結ぶ直線から最も離れている上まぶたの点(頂点)である。同様にして、顔パーツ検出部13は、口の開き具合を示す情報として、開口度を算出してもよい。
【0019】
また、顔パーツ検出部13は、開眼度の信頼度を算出し、算出した開眼度の信頼を示す情報を顔パーツ検出結果に含めて出力してもよい。開眼度の信頼度は、開眼度が安定して計測できるか示す。開眼度を算出する際、例えばドライバが眼鏡を着用している場合、眼鏡のレンズに風景反射像が映り、その風景反射像が計測の邪魔をする。そのため、風景反射が有る場合は開眼度の信頼度を低く設定する。このような風景反射の検出を行うため、例えば、顔パーツ検出部13は、顔検出結果から乗員の両目を取得するように構成されており、乗員の片目しか取得できない場合に、風景反射があると判定する。一般的には乗員は車両の左右のドアの何れかの側に着座しているので、風景反射は眼鏡の両ガラスのうちの一方にのみ生じる場合が多い。したがって、乗員の片目しか取得できない場合、他方の目の前にある眼鏡のガラス上で風景反射が生じたと推定することができる。風景反射は、眼鏡に映り込んだ反射物の形状を検出する等の他の手法により推定してもよい。風景反射の他にも、ドライバが大きく顔を横向けているような場合(顔向きYaw角が大きい場合)も開眼度の信頼度を低く設定する。上記の風景反射の有無、顔向きYaw角等の複数の指標を考慮して、開眼度の信頼度を算出してもよい。
【0020】
(特徴量算出部)
特徴量算出部14は制御部から顔パーツ検出結果を受け取り、顔パーツ検出結果に現れる眠気の兆候を表す眠気特徴量を算出し、算出した眠気特徴量を制御部へ出力する。眠気特徴量の例には、眠気に伴ってドライバの瞬きが増えることをとらえる閉眼時間割合、および眠気によるあくびをとらえるあくび回数が含まれる。閉眼時間割合は、一定の時間における閉眼時間の割合を計算することにより算出する。閉眼とは上まぶたと下まぶたの距離があらかじめ定めた閾値以下の状態を意味する。あくび回数は、一定の時間におけるあくびの回数をカウントすることにより算出する。あくびとは、口があらかじめ定めた閾値以上開いた状態があらかじめ定めた時間以上継続している場合を意味する。口があらかじめ定めた閾値以上開いた状態があらかじめ定めた時間以上継続しているか否かを判定することにより、会話により口を開けている場合と、あくびにより口を開けている場合とを識別することができる。特徴量算出部14は、例えば閉眼時間割合だけというように1つの眠気特徴量だけを算出してもよいし、複数の眠気特徴量を算出してもよい。
【0021】
(眠気スコア算出部)
眠気スコア算出部15は制御部から眠気特徴量の値を受け取り、眠気スコアを算出して、算出した眠気スコアを制御部に出力する。眠気スコアの算出は、サポートベクターマシン(SVM)、ランダムフォレストなどの機械学習モデルを用いて眠気特徴量と眠気スコアの関係を学習した学習済みの機械学習モデルを用いて行う。すなわち、眠気スコア算出部15は、特徴量算出部14が算出した1つまたは複数の特徴量を学習済みモデルに入力し、学習済みモデルから眠気スコアを取得することにより、眠気スコアを算出する。眠気スコアの出力方式は複数段階に分けられた離散値でもよいし、例えば0~1のような連続値でもよい。
【0022】
(過検知要因信頼度算出部)
過検知要因信頼度算出部16は、制御部から顔パーツ検出結果を受け取り、顔パーツ検出結果に基づいて過検知要因の有無を判定し、過検知要因があると判定した場合には、その過検知要因が存在することを示す過検知要因指標の信頼度を更に算出する。信頼度は、例えば、信頼度が低い第1の信頼度と第1の信頼度よりも信頼度が高い第2の信頼度とを含み、過検知要因信頼度算出部16は、過検知要因指標の信頼度として第1の信頼度または第2の信頼度を算出する。信頼度はより細分化されていてもよい。過検知要因信頼度算出部16は、過検知要因が存在することを示す過検知要因指標と、過検知要因が存在する確からしさを表す過検知要因指標の信頼度とを制御部に出力する。
【0023】
ここで、過検知要因指標とは、過検知となりうる要因が発生しているかどうかを表す指標を意味する。過検知とは、実際にはドライバが眠気を感じていないにもかかわらず、ドライバは眠気ありと誤って判定することを意味する。過検知は未検知と区別される概念であり、未検知とは実際にはドライバが眠気を感じているにもかかわらず、ドライバは眠気なしと誤って判定することを意味する。このような過検知要因指標の例として、例えば、ドライバの視線が下方を向いていることを示す下方視指標、およびドライバが同乗者と会話をしていることを示す会話指標がある。
【0024】
下方視指標の例であれば、上下まぶたの距離に基づいて閉眼と下方視を区別することで、下方視であるかどうかを判定することができる。すなわち、一般に、上下まぶたの距離は閉眼の場合よりも下方視の場合の方が長いので、上下まぶたの距離に基づいて閉眼と下方視を区別できる。
【0025】
会話指標の例であれば、上唇と下唇があらかじめ定められた閾値以上である開口と、閾値未満の閉口とを検出し、開口および閉口による動作の速度を算出する。開口および閉口による動作の速度に基づいてあくびと会話を区別することで、会話であるかどうかを判定することができる。すなわち、一般に、開口および閉口による動作の速度は、あくびの場合よりも会話による場合の方が速いので、開口および閉口による動作の速度に基づいてあくびと会話を区別することができる。
【0026】
過検知要因指標の信頼度とは、過検知要因指標の確からしさ、即ち過検知要因が存在する確からしさを表す値のことである。下方視指標の例であれば、下方視指標の信頼度は、下方視指標が正しく判定できない可能性のある場合に低下する。例えば、上下まぶたの座標の時系列分散を算出し、その値が閾値以上であれば、上下まぶたの座標が安定して検出できていないと判断して、信頼度低と判定する。逆に、閾値未満であれば信頼度高と判定する。他にも、顔検出結果として受け取った開眼度の信頼度とあらかじめ設定した閾値を用いて、下方視指標の信頼度の高低を判定してもよい。会話指標の例であれば、開口および閉口による動作の速度の時系列の分散があらかじめ定められた閾値以上であれば信頼度は低いと判定し、閾値未満であれば信頼度は高いと判定してよい。
【0027】
(状態遷移判定部)
状態遷移判定部17は、制御部から、眠気スコア、過検知要因指標および過検知要因指標の信頼度を受け取ってドライバの眠気状態を判定し、判定した眠気状態を出力する。過検知要因指標および過検知要因指標の信頼度は現在のフレームについて存在しない場合は出力されないので、そのような場合には状態遷移判定部17は過検知要因指標も過検知要因指標の信頼度も受け取らない。
【0028】
一例として、状態遷移判定部17は、眠気スコアとあらかじめ定めた状態遷移閾値とに基づいて判断した結果、眠気スコアが現在の眠気状態に対して設けられた閾値の範囲内であれば現在の眠気状態を維持する。また、眠気スコアが眠気下降閾値よりも小さい場合、より弱い眠気状態に遷移させ、遷移後の眠気状態を出力する。なお、眠気下降閾値とは、現在の眠気状態から、より弱い眠気状態への遷移を判定するための閾値である。
【0029】
また、状態遷移判定部17は、眠気スコアが眠気上昇閾値以上である場合、過検知要因指標の有無を確認し、確認の結果、過検知要因なしであれば眠気スコアに従って眠気状態の遷移を行ってもよい。なお、眠気上昇閾値とは、現在の眠気状態から、より強い眠気状態への遷移を判定するための閾値である。過検知要因指標の確認の結果、過検知要因があり且つ過検知要因指標の信頼度が高いときは、状態遷移判定部17は、眠気スコアの上昇は眠気の上昇でなく過検知要因によるものであると判断して、眠気状態を遷移させなくてもよい。すなわち、現在の眠気状態を維持してもよい。過検知要因指標の確認の結果、過検知要因があり且つ過検知要因指標の信頼度が低いときは、状態遷移判定部17は、眠気状態の遷移がより難しくなるように補正を行ってもよい。例えば、眠気度合いが低い第1の眠気状態から第1の眠気状態よりも眠気度合いが高い第2の眠気状態へ遷移するための閾値をより高くすることにより補正を行ってもよい。別の例として、第1の眠気状態と第2の眠気状態の中間状態へ遷移させることにより補正を行ってもよい。
【0030】
次に、図2Aおよび図2Bを参照して、眠気推定装置100のハードウェアの構成例について説明する。眠気推定装置100の各機能部は、処理回路(processing circuitry)により実現される。処理回路(processing circuitry)は、図2Aに示されているような専用の処理回路(processing circuit)100aであっても、図2Bに示されているようなメモリ100cに格納されるプログラムを実行するプロセッサ100bであってもよい。
【0031】
処理回路(processing circuitry)が専用の処理回路100aである場合、専用の処理回路100aは、例えば、単一回路、複合回路、プログラム化したプロセッサ、並列プログラム化したプロセッサ、ASIC(application specific integrated circuit)、FPGA(field-programmable gate array)、またはこれらを組み合わせたものが該当する。各機能部を別個の複数の処理回路(processing circuits)で実現してもよいし、各機能部をまとめて単一の処理回路(processing circuit)で実現してもよい。
【0032】
処理回路(processing circuitry)がプロセッサ100bの場合、各機能部は、ソフトウェア、ファームウェア、またはソフトウェアとファームウェアとの組み合わせにより実現される。ソフトウェアおよびファームウェアはプログラムとして記述され、メモリ100cに格納される。プロセッサ100bは、メモリに記憶されたプログラムを読み出して実行することにより、各機能部を実現する。メモリ100cの例には、RAM(random access memory)、ROM(read-only memory)、フラッシュメモリ、EPROM(erasable programmable read only memory)、EEPROM(electrically erasable programmable read-only memory)等の、不揮発性または揮発性の半導体メモリや、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ミニディスク、DVDが含まれる。
【0033】
なお、複数の機能部の一部を専用のハードウェアで実現し、他の一部をソフトウェアまたはファームウェアで実現するようにしてもよい。このように、処理回路は、ハードウェア、ソフトウェア、ファームウェア、またはこれらの組み合わせによって、各機能部を実現することができる。
【0034】
<動作>
次に、図3のフローチャートを用いて、本開示の実施の形態1に係る眠気推定装置100の概略的な動作について説明する。
【0035】
ステップST11において、眠気スコア算出部15は、ドライバの顔部を撮影した画像に基づいて、学習済みの機械学習モデルを用いてドライバの眠気の度合いを示す眠気スコアを算出する。一例として、眠気スコア算出部15は、顔部を撮影した画像から抽出された眠気特徴量と眠気スコアの関係を学習した学習済みの機械学習モデルを用いて、ドライバの顔部から抽出された眠気特徴量を機械学習モデルに入力して、ドライバの眠気スコアを取得する。
【0036】
ステップST12において、過検知要因信頼度算出部16は、ドライバの顔部を撮影した画像に基づいて、眠気スコアの算出に影響を与える過検知要因が存在するかを判定し、過検知要因が存在すると判定した場合に過検知要因指標の信頼度を算出する。これらの判定および算出の処理は、ルールベースで行う。一例として、過検知要因信頼度算出部16は、ドライバの顔パーツ検出結果に基づいて、過検知要因が存在するかを判定し、過検知要因が存在する場合には過検知要因指標の信頼度を算出する。例えば、上下まぶたの距離に基づいて下方視が存在するかを判定し、下方視の場合には、上下まぶたの座標の時系列分散から下方視指標の信頼度を算出する。
【0037】
なお、ステップST11およびステップST12は、どちらが先であってもよいし、同時に行われてもよい。
【0038】
ステップST13おいて、状態遷移判定部17は、算出された眠気スコア、算出された過検知要因指標、および算出された過検知要因指標の信頼度に基づいて、ドライバの眠気状態を判定する。
【0039】
次に、図4のフローチャートを用いて、過検知要因信頼度算出部16の動作についてより詳細に説明をする。図4のフローチャートでは過検知要因が下方視である場合に即して記載しているが、会話等のほかの過検知要因の場合も図4と同様の流れで処理を行ってよい。図4のフローチャートの開始時の前提として、過検知要因信頼度算出部16は、顔パーツ検出結果として開眼度のような目の開閉状態に関する情報を受け取っていることとする。
【0040】
端的には、過検知要因信頼度算出部16は、目の状態を分析し、目の複数の状態に応じて、下方視の有無を判定する。また、過検知要因信頼度算出部16は、下方視があると判定した場合には、下方視ありとの判定の信頼度について更に判定する。以下、より詳しく説明をする。
【0041】
ステップST101において、目の状態が閉眼であるかを確認する。閉眼か否かの確認は、例えば、顔パーツ検出結果として受け付けた開眼度が、あらかじめ定められた閾値以下か否かを判定することにより行うことができる。“NO”の場合、ステップST111で下方視なしと判断する。すなわち、目の状態が閉眼でない場合、換言すれば、目の状態が開眼である場合、処理はステップST111へ進み、ステップST111で下方視なしと判定する。他方、ステップST101で“YES”の場合、すなわち閉眼であると判定した場合、処理はステップST102~ステップST104へ進み、本当に閉眼なのか、それとも下方視であるかを判定するために用いる両まぶた開眼率を算出する。なお、過検知要因が会話の場合、閉眼に代えて、開口を判定してもよい。
【0042】
ステップST102において、上下まぶたに対して曲線フィッティングを行う。この点について、図5を参照して説明をする。図5は人の片方の目に対して曲線フィッティングを行った様子を示している。図5に示されているように、目頭座標から目尻座標を結ぶ上まぶた曲線と下まぶた曲線の両曲線を算出する。また、算出した上まぶた曲線から上まぶたの頂点座標を算出し、算出した下まぶた曲線から下まぶたの頂点座標を算出する。
【0043】
ステップST103において、ステップST102で算出した上まぶたと下まぶたの頂点座標を基に、図5に表すまぶた間距離を計測する。まぶた間距離は、上まぶたの頂点座標と下まぶたの頂点座標との差分である。
【0044】
ステップST104において、両まぶた開眼率を計算する。両まぶた開眼率の計算は、(両まぶた開眼率)=(まぶた間距離)/(閉眼時のまぶた間距離)に従って行う。ここで、分母でいう「閉眼時」とは、上述の開眼度を用いて閉眼と判定された場合を意味する。「閉眼時のまぶた間距離」とはそのような場合における両まぶた間の距離であり、ドライバごとに計測した基準値である。この基準値は、一定時間に亘って行われた複数回の閉眼時のまぶた間距離を平均して算出する。この算出は、車両の走行開始前にドライバに閉眼を指示して閉眼を計測することにより行ってもよいし、車両の走行開始直後のドライバの閉眼を計測することにより行ってもよい。分母の「閉眼時のまぶた間距離」が0と算出された場合には、再度計測を行ってもよい。あるいは、分母が0にならないようにするために、「閉眼時のまぶた間距離」に微小値Δdを加算して、(両まぶた開眼率)=(まぶた間距離)/(閉眼時のまぶた間距離+Δd)により両まぶた開眼率の計算を行ってもよい。
【0045】
ステップST106において、両まぶた開眼率があらかじめ設定した閾値以上か否かを判定する。これにより、閉眼と判定された目の状態について、本当に閉眼の状態と、下方視であるにもかかわらず閉眼と判定された状態とを識別する。なお、過検知要因が会話の場合、両まぶた開眼率に代えて、開口および閉口による動作の速度が閾値以上か否かを判定してもよい。
【0046】
ステップST106において“NO”の場合、すなわち両まぶた開眼率が閾値未満の場合、ドライバは本当に目を閉じていると考えられる。そこで、このような場合については、ステップST111で下方視なしと判定する。
【0047】
ステップST106において“YES”の場合、すなわち両まぶた開眼率が閾値以上の場合、ドライバは目を閉じているのでなく下を向いていると考えられる。そこで、このような場合については下方視ありと判定する(ステップST109、ST110)。すなわち、下方視指標のフラグを立てる。
【0048】
下方視ありと判定する場合、過検知要因信頼度算出部16は、下方視ありとの判定の信頼度、即ち下方視指標の信頼度について更に判定してもよい(ステップST107~ST108)。
【0049】
ステップST107において、下方視指標の信頼度を判定するための上下まぶたの座標の時系列分散を算出する。時系列分散があらかじめ定められた閾値以上である場合(ステップST108で“YES”の場合)、ステップST102の上下まぶた曲線フィッティングの結果が何らかの要因で不安定になっていると考えられるため、ステップST109で下方視あり(信頼度低)と判定する。すなわち、過検知要因として下方視があるが、信頼度は低いと判定する。他方、時系列分散があらかじめ定められた閾値未満である場合(ステップST108で“NO”の場合)、ステップST110で下方視あり(信頼度高)と判定する。すなわち、過検知要因として下方視があり、信頼度は高いと判定する。なお、過検知要因が会話の場合、上下まぶたの座標の時系列分散に代えて開口および閉口による動作の速度の時系列分散を算出し、この動作の速度の時系列分散が閾値以上か否かを判定してもよい。
【0050】
ここでは信頼度として上下まぶたの座標の分散を用いたが、顔検出結果として受け取った開眼度の信頼度の時系列平均値をとり、下方視指標の信頼度としてもよい。例えば、開眼度の信頼度が、時刻tで高(=1)、時刻t+1で高(=1)、時刻t+2で低(=0)、時刻t+3で高(=1)の場合、これらの時系列平均値としては3/4=0.75である。この値は、開眼度の信頼度が高い場合と低い場合の中間である0.5より大きいので、下方視指標の信頼度は高いと判定してよい。別の例として、開眼度の信頼度が、時刻tで低(=0)、時刻t+1で高(=1)、時刻t+2で低(=0)、時刻t+3で低(=0)の場合、これらの時系列平均値としては1/4=0.25である。この値は、開眼度の信頼度が中間の場合の0.5より小さいので、下方視指標の信頼度は低いと判定してよい。
【0051】
次に、図6のフローチャートを用いて状態遷移判定部17のより詳細な動作について説明をする。
【0052】
ステップST113において、眠気スコア算出部15の出力である眠気スコアが、現在の眠気状態からより強い眠気の眠気状態へ遷移するための眠気上昇閾値以上か否かを判定する。眠気状態は複数段階に分かれており、それぞれの状態間遷移のための眠気スコアに対する閾値があらかじめ定められている。後述する変形例の説明で用いる図7を参照して説明をすると、現在の眠気状態が「眠気状態2」であれば、眠気スコアpが「眠気状態2」からより強い眠気の眠気状態である「眠気状態3」へ遷移するための眠気上昇閾値T23以上か否かを判定する。現在の眠気状態が「眠気状態1」であれば、眠気スコアpが「眠気状態1」からより強い眠気の眠気状態である「眠気状態2」へ遷移するための眠気上昇閾値T12以上か否かを判定する。ステップST113での判定結果が“NO”の場合、処理はステップST118に進み、眠気スコアを基に状態遷移を判定する。他方、“YES”の場合、処理はステップST114に進む。
【0053】
ステップST114において、過検知要因信頼度算出部16の出力である過検知要因指標を確認して、過検知要因ありかどうかの判定を行う。“NO”の場合、処理はステップST118に進み、眠気スコアを基に状態遷移を判定する。“YES”の場合、処理はステップST115に進む。
【0054】
ステップST115において、過検知要因信頼度算出部16の出力である信頼度を確認し、信頼度が高いか否かを判定する。“YES”の場合、ステップST116で状態遷移なしと判定する。すなわち、過検知要因の信頼度が高い場合、例えば下方視であるとの信頼度が高い場合、ドライバの眠気状態に関する評価である複数の眠気状態間での遷移を行なわず、直前のフレームについてなされた眠気状態レベルについての判定を維持する。
【0055】
他方、“NO”の場合、ステップST117で眠気状態が上がりにくいように補正を行う。補正方法は、眠気スコアに対する遷移閾値を調整する方法でもよいし、眠気スコアによる遷移先の眠気状態と現在の眠気状態の平均となる状態に遷移させる方法でもよい。
【0056】
以上により、本開示の実施の形態1によれば、特徴量の変化に基づき機械学習モデルを用いて算出した眠気スコアを、ルールベース方式で判定した過検知要因指標とその信頼度で補正する。したがって、機械学習モデルだけでは眠気ありの場合と眠気なしの場合の識別が困難であるような場合であっても、ルールベース方式でそれらの場合を識別することが可能となる。
【0057】
また、実施の形態1によれば、過検知要因指標の信頼度を用いるため、単に過検知要因指標を用いる場合に比して、眠気レベルの推定をより正確に行うことができる。
【0058】
変形例.
実施の形態1による眠気推定装置100は、機械学習モデルによる眠気スコアとルールベースによる過検知要因指標およびその信頼度を用いて眠気状態の遷移を判定する。このような手法により眠気状態の遷移を判定する場合、あるフレームについての判定結果により眠気状態が上昇し、次のフレームについての判定結果によりすぐに眠気状態が下降しうる。しかしながら、実際の眠気は、上昇後すぐには下降しないことが分かっている。
【0059】
そこで、このような実際の眠気の遷移を考慮して、異なるレベルの眠気状態間の遷移閾値を異なる値としてもよい。具体的には、眠気がより強いレベルの第1の眠気状態から眠気がより弱いレベルの第2の眠気状態への遷移を判定するための遷移閾値を、第2の眠気状態から第1の眠気状態への遷移を判定するための遷移閾値よりも低く設定してもよい。
【0060】
図7を参照して、より具体的に説明をする。図7には、異なる眠気レベルの眠気状態が3段階で表されている。これらの3つの眠気状態の関係は、眠気レベルが最も弱い眠気状態である「眠気状態1」、眠気レベルが最も強い眠気状態である「眠気状態3」、これらの間に位置して眠気レベルが中間の眠気状態である「眠気状態2」となっている。このような場合において、眠気状態2から眠気状態1への遷移を判定するための眠気下降閾値T21は、眠気状態1から眠気状態2への遷移を判定するための眠気上昇閾値T12よりαだけ低く設定する。同様に、眠気状態3から眠気状態2への眠気下降閾値T32は、眠気状態2から眠気状態3への眠気上昇閾値T23よりβだけ低く設定する。
【0061】
状態遷移判定部17は、以上のようにして設定された状態遷移閾値に基づいて、眠気状態の遷移を判定する。すなわち、図6のステップST118において、状態遷移判定部17は、眠気スコア算出部15から受け取った眠気スコアと、眠気上昇閾値および眠気下降閾値を用いて、眠気状態遷移の判定を行う。
【0062】
以上の変形例によれば、眠気状態間の推移にヒステリシス(α、β)を持たせることができる。したがって、実際の眠気の変化に即した眠気判定を行うことができ、眠気状態の誤推定を防止することができる。
【0063】
<付記>
以上で説明した種々の実施形態のいくつかの側面について、以下のとおりまとめる。
【0064】
(付記1)
付記1の眠気推定装置(100)は、車両の乗員の顔部を撮影した画像に基づいて、学習済みの機械学習モデルを用いて前記乗員の眠気の度合いを示す眠気スコアを算出する眠気スコア算出部(15)と、前記画像に基づいて、前記眠気スコアの算出に影響を与える過検知要因が存在するかを判定し、前記過検知要因が存在すると判定した場合に前記過検知要因が存在することを示す過検知要因指標およびその過検知要因指標の信頼度をルールベースで算出する過検知要因信頼度算出部(16)と、その算出された眠気スコア、その算出された過検知要因指標、およびその算出された過検知要因指標の信頼度に基づいて、前記乗員の眠気が、眠気度合いが低い第1の眠気状態と、前記第1の眠気状態よりも眠気度合いが高い第2の眠気状態を含む複数の眠気状態のうちのいずれの眠気状態であるかを判定する状態遷移判定部(17)と、を備える。
【0065】
(付記2)
付記2の眠気推定装置は、付記1に記載された眠気推定装置であって、前記過検知要因指標の信頼度は、信頼度が低い第1の信頼度と、前記第1の信頼度よりも信頼度が高い第2の信頼度とを含み、前記状態遷移判定部は、前記算出された過検知要因指標が存在する場合であって、前記算出された信頼度が前記第2の信頼度の場合、前記複数の眠気状態間で眠気状態に関する判定を遷移させないで直前の眠気状態についての判定を維持する。
【0066】
(付記3)
付記3の眠気推定装置は、付記1または2に記載された眠気推定装置であって、前記状態遷移判定部は、前記算出された過検知要因指標が存在する場合であって、前記算出された信頼度が前記第1の信頼度の場合、前記第1の眠気状態から前記第2の眠気状態への遷移がより難しくなるように補正を行う。
【0067】
(付記4)
付記4の眠気推定装置は、付記3に記載された眠気推定装置であって、前記状態遷移判定部は、前記算出された過検知要因指標が存在する場合であって、前記算出された信頼度が前記第1の信頼度の場合、前記第1の眠気状態から前記第2の眠気状態へ遷移するための閾値をより高くすることにより前記補正を行う。
【0068】
(付記5)
付記5の眠気推定装置は、付記3に記載された眠気推定装置であって、前記状態遷移判定部は、前記算出された過検知要因指標が存在する場合であって、前記算出された信頼度が前記第1の信頼度の場合、前記第1の眠気状態と前記第2の眠気状態の中間状態へ遷移させることにより前記補正を行う。
【0069】
(付記6)
付記6の眠気推定装置は、付記2に記載された眠気推定装置であって、前記過検知要因は前記乗員の下方視であり、前記過検知要因信頼度算出部は、前記乗員の両まぶた間の両まぶた開眼率があらかじめ定められた閾値以上である場合に前記過検知要因指標の信頼度を算出する。
【0070】
(付記7)
付記7の眠気推定装置は、付記6に記載された眠気推定装置であって、前記過検知要因信頼度算出部は、上下まぶたの頂点座標の時系列分散があらかじめ定められた閾値以上である場合に、前記過検知要因指標の信頼度は前記第1の信頼度であると判定し、前記上下まぶたの頂点座標の時系列分散が前記あらかじめ定められた閾値未満である場合に、前記過検知要因指標の信頼度は前記第2の信頼度であると判定する。
【0071】
(付記8)
付記8の眠気推定装置は、付記6に記載された眠気推定装置であって、前記過検知要因信頼度算出部は、開眼度の信頼度に基づいて前記過検知要因指標の信頼度を算出する。
【0072】
(付記9)
付記9の眠気推定装置は、付記2に記載された眠気推定装置であって、前記過検知要因は前記乗員の会話であり、前記過検知要因信頼度算出部は、前記乗員の開口および閉口による動作の速度があらかじめ定められた閾値以上である場合に前記過検知要因指標の信頼度を算出する。
【0073】
(付記10)
付記10の眠気推定装置は、付記9に記載された眠気推定装置であって、前記過検知要因信頼度算出部は、前記上下唇の頂点座標の時系列分散があらかじめ定められた閾値以上である場合に、前記過検知要因指標の信頼度は前記第1の信頼度であると判定し、前記上下唇の頂点座標の時系列分散が前記あらかじめ定められた閾値未満である場合に、前記過検知要因指標の信頼度は前記第2の信頼度であると判定する。
【0074】
(付記11)
付記11の眠気推定装置は、付記1から10のいずれか1つに記載された眠気推定装置であって、前記画像に基づいて眠気の兆候を表す眠気特徴量を算出する特徴量算出部(14)を更に備え、前記学習済みの機械学習モデルは、眠気特徴量と眠気スコアの関係を学習した学習済みのモデルであり、前記眠気スコア算出部は、前記学習済みの機械学習モデルを用いて、その算出された眠気特徴量から前記乗員の眠気スコアを算出する。
【0075】
(付記12)
付記12の眠気推定装置は、付記1から11のいずれか1つに記載された眠気推定装置であって、前記第1の眠気状態から前記第2の眠気状態への遷移を判定するための閾値の値は、前記第2の眠気状態から前記第1の眠気状態への遷移を判定するための閾値の値よりも高く設定されている。
【0076】
(付記13)
付記13の眠気推定方法は、眠気スコア算出部(15)、過検知要因信頼度算出部(16)、および状態遷移判定部(17)を備える眠気推定装置が行う眠気推定方法であって、前記眠気スコア算出部が、車両の乗員の顔部を撮影した画像に基づいて、学習済みの機械学習モデルを用いて前記乗員の眠気の度合いを示す眠気スコアを算出するステップ(ST11)と、前記過検知要因信頼度算出部が、前記画像に基づいて、前記眠気スコアの算出に影響を与える過検知要因が存在するかを判定し、前記過検知要因が存在すると判定した場合に前記過検知要因が存在する確からしさを表す過検知要因指標の信頼度をルールベースで算出するステップ(ST12)と、前記状態遷移判定部が、その算出された眠気スコアと、その算出された信頼度とに基づいて、前記乗員の眠気状態を判定するステップ(ST13)と、を備える。
【0077】
なお、実施形態を組み合わせたり、各実施形態を適宜、変形、省略したりすることが可能である。
【産業上の利用可能性】
【0078】
本開示の眠気推定技術は、PMSの眠気推定機能を実現する技術として用いることができる。
【符号の説明】
【0079】
1 車両、2 撮像装置、10 顔情報検出部、11 映像取得部、12 顔検出部、13 顔パーツ検出部、14 特徴量算出部、15 眠気スコア算出部、16 過検知要因信頼度算出部、17 状態遷移判定部、20 眠気判定部、100 眠気推定装置、100a 処理回路、100b プロセッサ、100c メモリ。
図1
図2A
図2B
図3
図4
図5
図6
図7