(57)【要約】【課題】複数種類の動きを用いて被験者の覚醒度の推定を行う覚醒度推定装置において、過去のデータを適切に用いて推定精度を高めること。【解決手段】本発明は、被験者の複数種類の動きを検出する動き検出手段と、覚醒度が把握された状態で検出された動きの検出結果に基づいて、各動きの発生時とそのときの覚醒度との関係を表す時系列データを記憶する記憶手段と、前記動き検出手段により検出された動きと、該動きと同一種類の動きに関する検出結果を含む前記記憶手段内の時系列データに基づいて、被験者の覚醒度を推定する覚醒度推定手段とを備えることを特徴とする。【選択図】図１
2007312905.tif 000002
【特許請求の範囲】
【請求項１】
被験者の複数種類の動きを検出する動き検出手段と、
覚醒度が把握された状態で検出された動きの検出結果に基づいて、各動きの発生時とそのときの覚醒度との関係を表す時系列データを記憶する記憶手段と、
前記動き検出手段により動きが検出された場合に、該動きと同一種類の動きの検出結果を含む前記記憶手段内の時系列データに基づいて、被験者の覚醒度を推定する覚醒度推定手段とを備えることを特徴とする、覚醒度推定装置。
【請求項２】
前記記憶手段は、被験者毎の時系列データが取り出し可能に構成されており、
前記覚醒度推定手段は、前記動き検出手段により検出された被験者の動きが、同被験者に係る時系列データに含まれていない種類の動きである場合には、同種類の動きが含まれている他者に係る時系列データに基づいて、該被験者の覚醒度を推定する、請求項１に記載の覚醒度推定装置。
【請求項３】
複数の状況下で取得された前記時系列データを、類似度に応じてグループ化するグループ化手段を備え、
前記覚醒度推定手段は、前記グループ化された時系列データに基づいて、被験者の覚醒度を推定する、請求項１又は２に記載の覚醒度推定装置。
【請求項４】
前記覚醒度推定手段は、前記動き検出手段により検出された動きに基づいて、現在の被験者の覚醒度と共に、今後の被験者の覚醒度の推移勾配を推定する、請求項1〜３のいずれかに記載の覚醒度推定装置。
【請求項５】
覚醒度が把握された状態で検出された動きの検出結果に基づいて、各動きの発生時とそのときの覚醒度との関係を表す時系列データを取得し、記憶手段に記憶するステップと、
被験者の複数種類の動きを検出する動き検出手段を用いて、被験者の動きを検出する動き検出ステップと、
前記動き検出手段により動きが検出された場合に、該動きと同一種類の動きの検出結果を含む前記記憶手段内の時系列データに基づいて、被験者の覚醒度を推定する推定ステップとを備えることを特徴とする、覚醒度推定方法。
【請求項６】
前記推定ステップは、現在の推定対象の被験者を特定し、該特定した被験者に係る時系列データであって、該動きと同一種類の動きの検出結果を含む時系列データが前記記憶手段内に存在するか否かを判断し、存在する場合には、該時系列データに基づいて該被験者の覚醒度を推定し、存在しない場合には、同種類の動きが検出結果に含まれている他者に係る時系列データに基づいて、該被験者の覚醒度を推定することを含む、請求項５に記載の覚醒度推定方法。
【請求項７】
前記読み出した時系列データ又は前記記憶手段に記憶される時系列データを、類似度に応じてグループ化するステップを更に備え、
前記推定ステップは、前記グループ化された時系列データに基づいて、被験者の覚醒度を推定することを含む、請求項５又は６に記載の覚醒度推定方法。
【請求項８】
前記推定ステップは、現在の被験者の覚醒度と共に、今後の被験者の覚醒度の推移勾配を推定することを含む、請求項５〜７のいずれかに記載の覚醒度推定方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、被験者の覚醒度を高精度に推定する覚醒度推定装置及び方法に関する。
【背景技術】
【０００２】
従来から、人間の眼球部を照明する近赤外光源と、人間の眼球部を撮像する撮像手段と、該撮像手段により撮像された画像から眼球部の瞳孔領域を抽出する抽出手段と、該抽出手段により抽出された瞳孔領域の形状変化から瞬きの時間および頻度が所定値以上の時に人間の覚醒状態が低下していると判断する判断手段とを有することを特徴とする覚醒状態検知装置が知られている（例えば、特許文献１参照）。
【特許文献１】特開平６−２７０７１１公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
ところで、眠気と相関性のある人の動きは様々あるが、動きの種類に応じて、その動きが現れやすい覚醒度が異なる場合が多い。例えば、あくびなどは低い覚醒度で現れやすいが、しかめ顔などは比較的に高い覚醒度で現れることもある。また、同じ種類の動きでも異なる複数の覚醒度で現れることもある。更には、被験者が同一でも、その日の体調等によっては、覚醒度と出現する動きの関係が異なる場合がある。従って、複数種類の動きを用いて覚醒度の推定を行う構成の場合には、それらの各種動きを適切に評価できないと、被験者の覚醒度の推定精度を高めることができない。
【０００４】
そこで、本発明は、複数種類の動きを用いて被験者の覚醒度の推定を行う覚醒度推定装置及び方法において、推定精度を高めることを目的とする。
【課題を解決するための手段】
【０００５】
上記目的を達成するため、第１の発明に係る覚醒度推定装置は、被験者の複数種類の動きを検出する動き検出手段と、
覚醒度が把握された状態で検出された動きの検出結果に基づいて、各動きの発生時とそのときの覚醒度との関係を表す時系列データを記憶する記憶手段と、
前記動き検出手段により動きが検出された場合に、該動きと同一種類の動きの検出結果を含む前記記憶手段内の時系列データに基づいて、被験者の覚醒度を推定する覚醒度推定手段とを備えることを特徴とする。
【０００６】
第２の発明は、第１の発明に係る覚醒度推定装置において、
前記記憶手段は、被験者毎の時系列データが取り出し可能に構成されており、
前記覚醒度推定手段は、前記動き検出手段により検出された被験者の動きが、同被験者に係る時系列データに含まれていない種類の動きである場合には、同種類の動きが含まれている他者に係る時系列データに基づいて、該被験者の覚醒度を推定することを特徴とする。これにより、被験者に係る時系列データに不足がある場合にも、被験者とは異なる他者に係る時系列データを用いて精度良く被験者の覚醒度を推定することができる。
【０００７】
第３の発明は、第１又は２の発明に係る覚醒度推定装置において、
複数の状況下で取得された前記時系列データを、類似度に応じてグループ化するグループ化手段を備え、
前記覚醒度推定手段は、前記グループ化された時系列データに基づいて、被験者の覚醒度を推定することを特徴とする。これにより、傾向の異なる時系列データを排除して精度良く被験者の覚醒度を推定することができる。
【０００８】
第４の発明は、第1〜３のいずれかの発明に係る覚醒度推定装置において、
前記覚醒度推定手段は、前記動き検出手段により検出された動きに基づいて、現在の被験者の覚醒度と共に、今後の被験者の覚醒度の推移勾配を推定することを特徴とする。これにより、動きが検出されない時間間隔においても被験者の覚醒度の推移態様を精度良く推定することができる。
【０００９】
また、上記目的を達成するため、第５の発明に係る覚醒度推定方法は、
覚醒度が把握された状態で検出された動きの検出結果に基づいて、各動きの発生時とそのときの覚醒度との関係を表す時系列データを取得し、記憶手段に記憶するステップと、
被験者の複数種類の動きを検出する動き検出手段を用いて、被験者の動きを検出する動き検出ステップと、
前記動き検出手段により動きが検出された場合に、該動きと同一種類の動きの検出結果を含む前記記憶手段内の時系列データに基づいて、被験者の覚醒度を推定する推定ステップとを備えることを特徴とする。
【００１０】
第６の発明は、第５の発明に係る覚醒度推定方法において、
前記推定ステップは、現在の推定対象の被験者を特定し、該特定した被験者に係る時系列データであって、該動きと同一種類の動きの検出結果を含む時系列データが前記記憶手段内に存在するか否かを判断し、存在する場合には、該時系列データに基づいて該被験者の覚醒度を推定し、存在しない場合には、同種類の動きが検出結果に含まれている他者に係る時系列データに基づいて、該被験者の覚醒度を推定することを含むことを特徴とする。
【００１１】
第７の発明は、第５又は６の発明に係る覚醒度推定方法において、
前記読み出した時系列データ又は前記記憶手段に記憶される時系列データを、類似度に応じてグループ化するステップを更に備え、
前記推定ステップは、前記グループ化された時系列データに基づいて、被験者の覚醒度を推定することを含むことを特徴とする。これにより、傾向の異なる時系列データを排除して精度良く被験者の覚醒度を推定することができる。
【００１２】
第８の発明は、第５〜７のいずれかの発明に係る覚醒度推定方法において、
前記推定ステップは、現在の被験者の覚醒度と共に、今後の被験者の覚醒度の推移勾配を推定することを含むことを特徴とする。これにより、動きが検出されない時間間隔においても被験者の覚醒度の推移態様を精度良く推定することができる。
【発明の効果】
【００１３】
本発明によれば、動き検出手段により検出された動きと、該動きと同一種類の動きに関する検出結果を含む過去の時系列データを用いることで、被験者の覚醒度の推定精度を高めることが可能となる。
【発明を実施するための最良の形態】
【００１４】
以下、図面を参照して、２つの実施例に分けて本発明を実施するための最良の形態の説明を行う。以下では、覚醒度推定システムが車両に搭載され、被験者が車両の運転者である場合について説明する。但し、本発明は、車両以外のアプリケーションにおいても適用可能である。
【実施例１】
【００１５】
図１は、本発明の実施例１による覚醒度推定システムのシステム構成図である。本実施例の覚醒度推定システム１００は、カメラ１１０と、アクション検出モジュール１２０と、アクションデータベース１３２と、アクション優先付けモジュール１５０と、優先度データベース１５２と、アクションヒストリーデータベース１５４と、覚醒度推定モジュール１６０と、を備える。覚醒度推定システム１００には、警告手段１７０が接続される。
【００１６】
カメラ１１０を除く覚醒度推定システム１００のハードウェア構成としては、マイクロコンピュータを中心に構成されている。従って、覚醒度推定システム１００は、所与の実行プログラムに従って各種処理を行うCPU、このCPUの実行プログラムを格納するROM、画像データ、演算結果等を格納する読書き可能なRAM（Random  Access  Memory）、タイマ、カウンタ、入出力インターフェイス等を有している。これらCPU、ROM、RAM、及び入出力インターフェイスは、データバスにより相互に接続されている。尚、以下で説明する覚醒度推定システム１００の各モジュール１２０，１５０，１６０の機能は、CPUによって実行されるプログラムによって実現される。
【００１７】
図２は、本実施例による覚醒度推定システムにより実現される主要処理の流れを示す図である。本実施例による覚醒度推定システムにより実現される主要処理は、
ステップ１０：画像取得処理と、
ステップ２０：アクション検出処理と、
ステップ３０：アクション優先付け処理と、
ステップ４０：覚醒度推定処理と、
ステップ５０：警告手段１７０による警告処理とを含む。尚、後述の如く推定フェーズにおいては、ステップ３０のアクション優先付け処理は、省略されてもよいし、後述の如く実稼動時の学習を実行する処理として実行されてもよい。
【００１８】
以下、各処理について順に詳説する。
【００１９】
［画像取得処理］
カメラ１１０は、例えばカラー又は赤外線感応ＣＣＤ（charge-coupled  device）センサアレイを備える。カメラ１１０は、例えば運転者の前面（例えば顔部を前方から）を捕捉可能なように、車両の適切な箇所に設けられる。例えば、カメラ１１０は、車両のインストルメントパネルのダッシュボードやステアリングコラムに設置される。カメラ１１０は、リアルタイムに運転者の画像を取得し、画像データは、典型的には３０fps(frame  per  second)のストリーム形式で、アクション検出処理に供給される。
【００２０】
［アクション検出処理］
アクション検出モジュール１２０は、カメラ１１０により取得された各画像に基づいて、所定のアクションの発生の有無を判断する。図３は、アクション検出モジュール１２０によるアクション検出処理（図２のステップ２０）の前処理を示すフローチャートである。
【００２１】
ステップ２００では、カメラ１１０により取得された各画像から、顔の代表的なポイント（特徴点）が抽出される。この特徴抽出方法は、適切な任意の方法であってよく、例えばActive Appearance Model（AAM）をベースにした技術が用いられてよい。次いで、適切なエッジ検出アルゴリズム（例えばSobelのエッジ検出アルゴリズム）を適用して、顔と顔の特徴の境界が決定される。
【００２２】
ステップ２０２では、上述の如く抽出されるエッジ及び特徴点を用いて、図４に示すように、顔のパーツが分離され、顔のパーツの形状が抽出される。尚、図４は、顔の一部のみを代表して示しており、顔の眉と目の部分がパーツとして抽出された画像を示している。
【００２３】
ステップ２０４では、頭部の向きの変化及びパーツの形状変形が推定される。この推定処理により、３種類の変化パラメータＰ，Ｅ，Ｍが導出される。
【００２４】
変化パラメータＰは、頭部の向きの変化態様を表すことができる姿勢変化パラメータｐｉからなり、Ｐ＝｛ｐｉ｝、ｉ＝1,…αで表される。尚、αは、姿勢変化パラメータの数である。即ち、変化パラメータＰは、α個の姿勢変化パラメータの集合からなる。姿勢変化パラメータは、例えば正規の姿勢であるときの顔の正面方向を１軸とする３軸まわりの回転角度で表されてよい。
【００２５】
変化パラメータＥは、目の領域の形状変形態様を表すことができる目変化パラメータｅｊからなり、Ｅ＝｛ｅｊ｝、ｊ＝1,…βで表される。尚、βは、目変化パラメータの数である。即ち、変化パラメータＥは、β個の目変化パラメータの集合からなる。目変化パラメータは、例えば目全体の大きさないし面積、幅、高さ等を表すパラメータであってよい。
【００２６】
変化パラメータＭは、口の領域の形状変形態様を表すことができる口変化パラメータｍｋからなり、Ｍ＝｛ｍｋ｝、ｋ＝1,…γで表される。尚、γは、口変化パラメータの数である。即ち、変化パラメータＭは、γ個の口変化パラメータの集合からなる。口変化パラメータは、例えば口全体の大きさないし面積、幅、高さ等を表すパラメータであってよい。
【００２７】
図５は、各ｔ秒間隔（典型的には、ｔ＝１秒）におけるパラメータｐｉ、ｅｊ、ｍｋの変化態様の一例を示す。このように、変化パラメータを複数のパーツないし向きで分けることにより、多様なアクションを多面的に検出することが可能となる。
【００２８】
アクション検出モジュール１２０は、不特定多数の被験者に対する試験結果に基づいて予め構築されたアクションデータベース１３２（図２参照）を用いる。アクションデータベース１３２には、各アクションに対する顔部の向き及び変形に関する変化パラメータが格納されている。本例では、眠気の早期段階で観測される所定の異なるアクションＡｌ（ｌ＝1,…）を、検出対象として用いる。検出対象のアクションは、例えば、ため息、あくび、目のみひらき、しかめ顔をするときの口の動き等である。
【００２９】
アクション検出処理では、現在の姿勢、目、口の部類の変化パラメータと、アクションデータベース１３２内の値とをマッチングすることによって、検出対象のアクションの発生の有無を判断する。マッチングが所定の許容閾値内で見出された場合には、該当するアクションが発生したと判断して、アクショントリガデータパケットがアクション情報と共に生成される。簡易的な例として、例えば、あるｔ秒間に図６（Ａ）に示すようなパラメータｍｋの変化態様が得られた場合、当該変化態様が、図６（Ｂ）に示すようなアクションデータベース１３２内のアクションＡｉに係る同変化態様や、図６（Ｃ）に示すようなアクションデータベース１３２内のアクションＡｊに係る同変化態様に対してマッチングされる。この場合、例えば、アクションＡｉに係る変化態様との所定の許容閾値内でのマッチングが実現され、アクションＡｉが発生したと検出されることになる。
【００３０】
アクション検出モジュール１２０は、上述の如くアクションの発生を検出すると、アクショントリガデータパケットを生成する。アクショントリガデータパケットは、適切な時間間隔（本例では、毎秒）で生成される。アクショントリガデータパケットのパケットＩＤフィールドにおいては、発生したと判断されたアクションを特定するアクションＩＤコードが書き込まれる。また、アクションの発生時刻、継続時間、アクションの大きさが書き込まれる。アクションの発生時刻は、一のセッションにおいて観測が開始された時刻をゼロとして計時されてよい。アクションの大きさは、各パラメータｐｉ、ｅｊ、ｍｋの大きさの平均値で表されてよい。アクション発生が終了すると、継続／終了ビットがＯＦＦ（ゼロ）に設定される。尚、例えば、あるアクションが１秒だけ継続した場合には、１つのアクショントリガデータパケットが生成されることになる。
【００３１】
［アクション優先付け処理］
図７は、覚醒度と被験者の状態との対応関係の一例を表す表図である。本例では、図７に示すように、覚醒度は、６段階Ｌ１〜Ｌ６で表される。即ち、覚醒度Ｌ１は、もっとも眠気が強い状態であり、覚醒度Ｌ６は、もっとも眠気が弱い状態である。詳細については、図７に示されている。尚、本発明は、特に６段階に分けることに限定されること無く、他の態様で覚醒度を類型化してもよい。
【００３２】
図８は、各アクションＡｌ（ｌ＝1，…，１７）に対して付与される優先度εの対応関係を示すマップ（ルックアップテーブル）である。図８に示す例では、優先度は、覚醒度Ｌ６の末期（符号ＡＦにて図示）、覚醒度Ｌ５の初期（符号ＢＦにて図示）及び末期、覚醒度Ｌ４の初期及び末期、覚醒度Ｌ３の初期及び末期、覚醒度Ｌ２の初期及び末期、覚醒度Ｌ１の初期、といったように、同一覚醒度内における変化過程（推移）を考慮して決定される。
【００３３】
図９は、優先度εと覚醒度Ｌ１〜Ｌ６との関係を表す表図である。図９に示す例では、各覚醒度の初期及び末期は、それぞれ５分割されている。優先度εは、係数β、αの値を用いて、ε＝β×αで表され、各覚醒度内の等間隔に分割された時間間隔に対して付与される。係数β、αについては、図１０，図１１及び図１２を参照して説明する。
【００３４】
図１０は、覚醒度の変化過程を時系列で示す概念図である。図１０には、覚醒度の変化態様を示す曲線（覚醒度変化曲線）が時間軸上に示されており、当該覚醒度変化曲線よりも上側の領域が、眠気の強い領域ＩＺを表し、下側の領域が、眠気の弱い領域ＲＺを表す。
【００３５】
係数βは、図１０に示すような覚醒度の時系列に基づいて、覚醒度毎に決定される。例えば、覚醒度Ｌ５の末期ＡＦに係る係数β及び覚醒度Ｌ４の初期ＢＦに係る係数β５は、図１０に示すように、覚醒度Ｌ４からＬ５に属する覚醒度変化曲線部の時間軸上の区間における、当該曲線部により仕切られた上側の領域ＩＺL5と下側の領域ＲＺL5との面積比で表される。即ち、β５＝ＩＺL5／ＲＺL5で表される。
【００３６】
図１１は、ある被験者の試験データに基づいて導出された係数βと覚醒度変化曲線を示す。図１１において、係数β６は、覚醒度Ｌ６の末期ＡＦに係る係数βを示し、係数β５は、覚醒度Ｌ５の末期ＡＦに係る係数β及び覚醒度Ｌ４の初期ＢＦに係る係数βを示し、係数β４は、覚醒度Ｌ４の末期ＡＦに係る係数β及び覚醒度Ｌ３の初期ＢＦに係る係数βを示し、係数β３は、覚醒度Ｌ３の末期ＡＦに係る係数β及び覚醒度Ｌ２の初期ＢＦに係る係数βを示し、係数β２は、覚醒度Ｌ２の末期ＡＦに係る係数β及び覚醒度Ｌ１の初期ＢＦに係る係数βを示す。尚、この係数β６、β５等の各値は、図９で示した表図において、各覚醒度内の各時間間隔における係数βの各値として用いられている。
【００３７】
図１２は、各覚醒度内の各時間間隔における係数αの配列態様を示す図である。尚、図１１に示したように、実際には各覚醒度に留まる時間は、一定でない。このため、係数αは、各覚醒度内の時間を例えば１００秒により正規化して付与される。また、係数αは、図１２に示すように、各覚醒度内の時間を等間隔に１０分割された時間間隔（時間位置）に対して付与される。その際、係数αは、各覚醒度の末期ＡＦで最も大きくなり（本例では、２）、隣接する下位の覚醒度の末期ＡＦに向かうにつれて小さくなるように、設定されている。即ち、係数αは、覚醒度Ｌ６の末期ＡＦから覚醒度Ｌ１の初期ＢＦへと単調増加していくように設定される。尚、係数αは、係数βと共に、図９に示したように、正規化後の各時間間隔に対する優先度εを求めるために用いられる。従って、各覚醒度内の各時間位置に対して求められる優先度εは、互いに相違した値となり、図９に示すように、覚醒度が低下するにつれて大きな値となる。
【００３８】
尚、係数αの範囲（上記の例では１〜２．０）は、係数β６、β５等の各値に基づいて適切に設定される。具体的には、先ず、比φ＝βｉ−１／βｉを求め、φの最小値から小数部を除いた値が係数αの範囲の上限値とされてよい。上記の図１１に示した例では、β５／β６＝3.909、β４／β５＝2.326、β３／β４＝2.330、β２／β１＝3.863であり、従って、φの最小値は2.330となり、その小数部0.330を除いた値2.0が係数αの範囲の上限値とされている。
【００３９】
アクション優先付けモジュール１５０は、学習フェーズにおいて、被験者の覚醒度を把握した状態で行った試験（官能評価試験）により、アクションの発生状況とそのときの覚醒度Ｌ１〜Ｌ６との対応関係を学習し、優先度データベース１５２を構築する。具体的には、官能評価試験により得られる覚醒度変化曲線に基づいて、上述の各係数β１〜６及び各係数αを算出して、図９に示したような優先度εと覚醒度Ｌ１〜Ｌ６との対応関係を構築する。また、官能評価試験において検出された各アクションの種類や発生時期（発生したときの覚醒度）に基づいて、図８に示したような各アクションＡｌと優先度εとの対応関係を構築する。例えばアクションＡ１６が、図１０及び図１２に示すように、覚醒度Ｌ５の初期の時間位置（４０＜ｔ＜５０）で生じた場合、上述の算出方法によりα＝２．０、β＝０．１１であることから、ε＝２．２となる。このようにして、官能評価試験の試験結果に基づいて、図８に示したマップが生成（学習）される。尚、図８に示したマップにおいては、説明に必要な値だけが一例として示されており、＊は、ある値を示し、空欄は、該当するアクションが官能評価試験において検出されなかったことを意味する。
【００４０】
優先度データベース１５２は、被験者毎のデータが別々に管理される。図１３（Ａ），図１３（Ｂ)は、同一の被験者に対して異なる日（ｄａｙ１，ｄａｙ２）に試験した場合の覚醒度変化曲線をそれぞれ示す。図１３（Ａ），図１３（Ｂ)に示すように、その日の体調等に起因して、覚醒度変化曲線が異なる場合がある。この場合、例えばβ５＝ＩＺL5／ＲＺL5は、ｄａｙ２の場合の方が、ｄａｙ１の場合よりも大きくなる。これに伴って、例え同一の時間位置で同一のアクションが検出された場合でも、当該アクションに付与される優先度εが異なってくる。
【００４１】
また、アクション優先付けモジュール１５０は、同様に、官能評価試験による学習により、アクションヒストリーデータベース１５４を構築する。アクションヒストリーデータベース１５４には、官能評価試験において検出された各種類のアクションの発生時系列と、そのときの優先度εとの対応関係（後述の優先度関数ｆ（ｔ）を生成するためのデータ）が格納される。アクションヒストリーデータベース１５４は、被験者毎に、分類して構築される。
【００４２】
尚、アクション優先付けモジュール１５０は、後述の覚醒度推定モジュール１６０により覚醒度推定処理が実行される推定フェーズにおいても、後述の覚醒度推定モジュール１６０による覚醒度推定結果に基づいて、優先度データベース１５２及びアクションヒストリーデータベース１５４の学習を実行してもよい。
【００４３】
［覚醒度推定処理］
図１４は、覚醒度推定モジュール１６０により実現される覚醒度推定処理の流れを示すフローチャートである。
【００４４】
ステップ４００では、現在の推定対象となる被験者が認識される。被験者は、被験者のID等により特定されてよいし、顔の特徴等に基づいて特定されてもよい。
【００４５】
ステップ４０２では、特定された被験者に係るデータを、アクションヒストリーデータベース１５４内から取り出す。
【００４６】
ステップ４０４では、現在のフェーズが判断される。現在のフェーズが学習フェーズである場合、覚醒度推定モジュール１６０による処理はそのまま終了される。この場合、随時検出される被験者のアクションとそのときの優先度ないし覚醒度に関する情報に基づいて、上述の如く、アクション優先付けモジュール１５０による優先度データベース１５２及びアクションヒストリーデータベース１５４の構築（学習）が実行される。一方、現在のフェーズが推定フェーズである場合、ステップ４０６に進む。
【００４７】
ステップ４０６では、現在の推定対象となる被験者のデータが、アクションヒストリーデータベース１５４内に存在するか否かが判断される。現在の推定対象となる被験者のデータが、アクションヒストリーデータベース１５４内に存在する場合には、ステップ４０８に進み、それ以外の場合、即ち、今回の被験者が全く新しい被験者である場合には、ステップ４１２に進む。
【００４８】
ステップ４０８では、アクション検出モジュール１２０からのアクショントリガデータパケットに基づいて、今回検出されたアクションに関するデータが、アクションヒストリーデータベース１５４内から読み出された被験者のデータ内に存在するか否かが判断される。即ち、過去に同一のアクションが同一の被験者において検出されたか否かが判断される。肯定判定の場合、ステップ４１０に進み、否定判定の場合、ステップ４１２に進む。
【００４９】
ステップ４１０では、覚醒度推定モジュール１６０は、第１の推定ロジックにより推定処理を行う。第１の推定ロジックによれば、現在の推定対象となる被験者に関する過去の異なるセッション（状況）に取得されたデータを用いた補間により、該被験者の覚醒度が推定される。第１の推定ロジックについて、図１５以降を参照して後に詳説する。
【００５０】
ステップ４１２では、今回検出されたアクションに関する他の被験者に係るデータが、アクションヒストリーデータベース１５４内に存在するか否かが判断される。即ち、今回検出されたアクションが、過去に他の被験者において検出されたか否かが判断される。肯定判定の場合、ステップ４１４に進み、否定判定の場合、今回検出されたアクションが、新規のアクションとして登録される。
【００５１】
ステップ４１４では、覚醒度推定モジュール１６０は、第２の推定ロジックにより推定処理を行う。第２の推定ロジックによれば、現在の推定対象となる被験者とは異なる他の被験者のデータを用いた補間により、現在の推定対象となる被験者の覚醒度が推定される。以下、第２の推定ロジックについて、図２５を参照して後に詳説する。
【００５２】
図１５は、覚醒度推定モジュール１６０により実現される第１の推定ロジックの詳細を示すフローチャートである。
【００５３】
ステップ４２０では、覚醒度推定モジュール１６０は、アクションヒストリーデータベース１５４内から読み出された同被験者のデータに基づいて、優先度関数ｆ（ｔ）を導出する。優先度関数ｆ（ｔ）については、図１６を参照して後に詳説する。尚、被験者のデータは、被験者毎に且つセッション毎に、優先度関数ｆ（ｔ）の形式で、アクションヒストリーデータベース１５４内に格納されていてもよい。一のセッションでは、ある一定時間連続して被験者のアクションが検出・観測される。例えば朝方に観測されたデータと、その日の夕方に観測されたデータとは、異なるセッションのデータとして別々に扱われる。これは、図１３（Ａ），図１３（Ｂ)に示したように、同一の被験者に対しても常に同じような覚醒度変化曲線が現れるとは限らず、時間帯の相違に起因して、覚醒度変化曲線が異なる場合があるからである。
【００５４】
ステップ４３０では、今回検出されたアクションの発生時刻に基づいて、適切な時間ウインドウＴを設定し、アクションヒストリーデータベース１５４内から読み出された同被験者のデータの中から、当該時間ウインドウＴ内に同アクションの発生時刻を有するデータが抽出され、今回検出されたアクションの発生時刻と、当該抽出された過去の同アクションの発生時刻との差が算出される。時間ウインドウＴは、典型的には、今回検出されたアクションの発生時刻ｔを中心として、１０秒の幅で設定される。即ち、Ｔ＝ｔ±１０とされる。
【００５５】
ステップ４４０では、ステップ４３０で算出された時間差に応じた重みが算出される。
【００５６】
ステップ４５０では、ステップ４４０で算出された重みに基づいて、重み付けされた優先度ξが算出される。上記のステップ４３０からステップ４５０までの処理については、図１７を参照して後に詳説する。
【００５７】
ステップ４６０では、今回のセッションにおける優先度関数ｆ（ｔ）に対する投票処理が実行される。これについては、図１８及び図１９を参照して後に詳説する。
【００５８】
ステップ４７０では、今回のセッションにおいて既に予測された経路（パス）が存在するか否かが判断される。経路とは、今回のセッションにおける優先度関数ｆ（ｔ）の曲線に沿った経路であり、今後の覚醒度の推移を予測するために導出される。ステップ４７０において否定判定の場合には、ステップ４８０に進み、肯定判定の場合には、ステップ４９０に進む。
【００５９】
ステップ４８０では、今回のセッションにおける新しい経路が予測される。即ち、今回のセッションにおいては未だ経路が予測されていない場合、即ち今回検出されたアクションが今回のセッションにおける最初のアクションである場合には、本ステップ４８０にて新しい経路が予測される。これについては、図２０及び図２１を参照して後に詳説する。
【００６０】
ステップ４９０では、経路の延長・構築処理が実行される。これについては、図２２及び図２３を参照して後に詳説する。
【００６１】
図１６は、あるセッションS1における優先度関数ｆ１（ｔ）の一例を示す図である。優先度関数ｆ１（ｔ）は、当該セッションS1において検出された各アクションの発生時とそのときの優先度εとの関係を表す。具体的には、セッションS1において検出された各アクションの発生時と、そのときの相対的な優先度ξを、横軸を時間とし縦軸を優先度としてプロットし、各プロット点を通るＮ次の多項式（近似曲線）を求めることで、生成される。相対的な優先度ξは、覚醒度Ｌ５のある優先度を基準優先度ε０として求められ、基準優先度ε０よりも小さい優先度ε（覚醒度Ｌ６の優先度）はその差の絶対値が用いられる。従って、図１６に示す縦軸の優先度ξは、基準優先度ε０に対する差の絶対値を表す。尚、基準優先度ε０は、必ずしも覚醒度Ｌ５の優先度である必要ななく、例えば覚醒度Ｌ６の優先度が基準優先度ε０として用いられてもよい。
【００６２】
図１７は、上記のステップ４３０からステップ４５０までの処理の具体例を説明するための図である。図１７には、各セッションＳ１〜Ｓ３に係る優先度関数ｆ１（ｔ）、ｆ２（ｔ）、ｆ３（ｔ）が示されている。
【００６３】
先ず、前提として、本例では、今回検出されたアクションがアクションＡ０１であり、時刻ｔ’＝１４で検出された場合を想定する。この場合、時間ウインドウＴは、上記のステップ４３０において、４＜Ｔ＜２４に設定され、当該時間ウインドウＴ内に同アクションの発生時刻を有するデータが抽出される。本例では、当該時間ウインドウＴ内にてアクションＡ０１を過去に検出したセッションが３つあり（セッションＳ１〜Ｓ３）、各セッションＳ１〜Ｓ３におけるアクションＡ０１に係るデータが抽出される。ここでは、セッションＳ１では、アクションＡ０１が時刻ｔ１＝１０で検出され、そのときの相対優先度ξ１がξ１＝0.1941466であり、セッションＳ２では、アクションＡ０１が時刻ｔ２＝１５で検出され、そのときの相対優先度ξ２がξ２＝0.1943390であり、セッションＳ２では、アクションＡ０１が時刻ｔ２＝２０で検出され、そのときの相対優先度ξ２がξ２＝0.2072613であった場合を想定する。
【００６４】
図１７に示す例では、上記のステップ４３０において、各時間差Δｔが、以下のように算出されることになる。
Δｔ１＝｜ｔ’―ｔ１｜＝4.0
Δｔ２＝｜ｔ’―ｔ２｜＝1.0
Δｔ３＝｜ｔ’―ｔ３｜＝6.0
次いで、上記のステップ４４０において、先ず、Ｔ１、Ｔ２、Ｔ３が以下のように算出され、Ｔ１、Ｔ２、Ｔ３に応じた重みＷが、以下のように算出されることになる。
Ｔ１＝１／Δｔ１＝0.25
Ｔ２＝１／Δｔ２＝1.00 
Ｔ３＝１／Δｔ３＝0.167
Ｗ１＝Ｔ１／（Ｔ１＋Ｔ２＋Ｔ３）＝0.1764
Ｗ２＝Ｔ２／（Ｔ１＋Ｔ２＋Ｔ３）＝0.7057
Ｗ３＝Ｔ３／（Ｔ１＋Ｔ２＋Ｔ３）＝0.1179
尚、時間差Δｔの何れかがゼロである場合、即ち同一時刻に同一のアクションが検出されていた場合には、当該過去のアクションに対応した優先度ξが、上記のステップ４５０の処理を受けずそのまま採用される。
【００６５】
次いで、上記のステップ４５０において、重み付けされた優先度ξが、以下のように算出されることになる。
ξ＝Ｗ１ξ１＋Ｗ２ξ２＋Ｗ３ξ３＝0.195829
このようにして導出される重み付けされた優先度ξは、今回検出されたアクションＡ０１の検出時刻ｔ’＝１４における被験者の覚醒度を実質的に表している。このように本実施例によれば、同一の被験者に対して取得された過去のデータに基づいて、体調や時間帯の相違等に起因して生じうる傾向の差異を補償して優先度ひいては覚醒度を精度良く推定することができる。尚、このようにして導出された優先度ξが所定値を超えた場合には、警告手段１７０を介して警報等を発することとしてよい。
【００６６】
図１８は、上記のステップ４６０の投票処理の詳細を示すフローチャートであり、図１９は、当該投票処理を説明するための図である。図１９には、各セッションＳ１〜Ｓ３に係る優先度関数ｆ１（ｔ）、ｆ２（ｔ）、ｆ３（ｔ）が示されている。
【００６７】
ステップ４６１では、上記のステップ４５０で算出された重み付け優先度ξが取得される。本例では、ξは、上述の如くξ＝0.195829である。
【００６８】
ステップ４６２では、今回のプロット点（ｔ’、ξ）から、各優先度関数ｆ１（ｔ）、ｆ２（ｔ）、ｆ３（ｔ）までの距離ＤＩＳＴ（図１９の矢印参照）が、以下のように算出される。
ＤＩＳＴ１＝｜ξ−ｆ１（ｔ’）｜
ＤＩＳＴ２＝｜ξ−ｆ２（ｔ’）｜
ＤＩＳＴ３＝｜ξ−ｆ３（ｔ’）｜
ステップ２６３では、距離ＤＩＳＴが最も小さい優先度関数ｆ（ｔ）が決定される。本例では、図１９に示すように、ＤＩＳＴ２が最小となるので、セッションＳ２の優先度関数ｆ２（ｔ）が決定される。
【００６９】
ステップ２６４では、距離ＤＩＳＴが最も小さい優先度関数ｆ（ｔ）に対する投票値ＶＴが、以下のように増加される。即ち、優先度関数ｆ２（ｔ）に対する投票値ＶＴ２は、以下のように算出される。
ＶＴ２＝ＶＴ２＋１
尚、各優先度関数ｆ（ｔ）に対するそれぞれの投票値ＶＴの初期値は、ゼロとされる。投票値ＶＴの値は、セッション毎に初期化され、各セッションにおいて、各優先度関数ｆ（ｔ）に対する覚醒度変化特性の近似度を表す指標となる。即ち、あるセッションにおいて、投票値ＶＴの値が大きい優先度関数ｆ（ｔ）の方が、投票値ＶＴの値が小さい他の優先度関数ｆ（ｔ）よりも、被験者の現在の状態を的確に表している可能性が高く、それ故に、利用した場合に当該セッションにおける覚醒度推定精度の向上に寄与する可能性が高いことを意味する。
【００７０】
図２０は、上記のステップ４８０の新規経路予測処理の詳細を示すフローチャートであり、図２１は、当該新規経路予測処理を説明するための図である。図２１には、各セッションＳ１〜Ｓ３に係る優先度関数ｆ１（ｔ）、ｆ２（ｔ）、ｆ３（ｔ）が示されている。
【００７１】
ステップ４８１では、上記のステップ４６０の投票処理結果に基づいて、最も高い投票値の優先度関数ｆ（ｔ）が決定される。本例では、今回のセッションの初回のアクションＡ０１が検出された際に、図１９に示したように、ＤＩＳＴ２が最小となるセッションＳ２の優先度関数ｆ２（ｔ）が投票されているので、優先度関数ｆ２（ｔ）が最も高い投票値を有することになる。
【００７２】
ステップ４８２では、優先度関数ｆ２（ｔ）の時刻ｔ’での勾配Ｇｒａｄ（ｆ２（ｔ’））が算出される。
【００７３】
ステップ４８３では、上記のステップ４８２で算出した勾配Ｇｒａｄ（ｆ２（ｔ’））を用いて、現在のプロット点Ｐ（１４、ξ’）から、当該勾配に沿った経路（図２１の矢印参照）を生成する。
【００７４】
図２２は、上記のステップ４９０の経路構築処理の詳細を示すフローチャートであり、図２３は、当該経路構築処理を説明するための図である。図２３には、各セッションＳ１、Ｓ２に係る優先度関数ｆ１（ｔ）、ｆ２（ｔ）が示されている。ここでは、今回のアクションＡ０１が時刻ｔ’＝１５で検出された場合を想定する。また、本例では、時間ウインドウの幅は２５秒以上に設定されており、時刻ｔ’＝１５を中心として当該時間ウインドウ内にアクションＡ０１が検出されたセッションがセッションＳ１、Ｓ２であった場合を想定する。
【００７５】
ステップ４９１では、今回のセッションにおける前回からの予測経路（後述の構築経路を含む。）が取得される。図２３に示す例では、時刻ｔ’＝１５よりも以前の図２２に示すポイントＬ（前回のアクション検出時点のプロット点）までの経路（Ｐｒｅｖｉｏｕｓ
ｅｓｔｉｍａｔｅｄ ｐａｔｈ）が取得されることになる。
【００７６】
ステップ４９２では、現在の各優先度関数ｆ１（ｔ）、ｆ２（ｔ）の投票値ＶＴ１、ＶＴ２が取得される。本例では、前回までの投票値ＶＴ１＝８、ＶＴ２＝９であったと想定する。今回のアクションＡ０１に対しては、図２３に示すように、優先度関数ｆ１（ｔ）の方が現在のプロット点Ｌ’（ｔ’、ξ’）からの距離ＤＩＳＴが小さいので、優先度関数ｆ１（ｔ）の投票値ＶＴ１が９となり、その結果、投票値ＶＴ１＝９、ＶＴ２＝９となる。
【００７７】
ステップ４９３では、各優先度関数ｆ１（ｔ）、ｆ２（ｔ）の時刻ｔ’での勾配Ｇｒａｄ（ｆ１（ｔ’））、Ｇｒａｄ（ｆ２（ｔ’））が算出される。尚、勾配Ｇｒａｄ（ｆ１（ｔ’））、Ｇｒａｄ（ｆ２（ｔ’））については、図２３において模式的に矢印で図示されている。
【００７８】
ステップ４９４では、現在のプロット点Ｌ’（ｔ’、ξ’）まで、前回のプロット点Ｌから経路を延長する（図中の“Ｅｘｔｅｎｄｅｄ  ｐａｔｈ”参照）。
【００７９】
ステップ４９５では、重み付け勾配∇を算出し、今回のプロット点Ｌ’（ｔ’、ξ’）から、当該算出した重み付け勾配∇に沿った予測経路（図中の“Ｐｒｅｄｉｃｔｅｄ
ｐａｔｈ”参照）を生成する。重み付け勾配∇は、次のようにして算出されてよい。
【００８０】
【数１】
2007312905.tif 000003
このように本実施例によれば、上述の如く、随時検出されるアクションに応じて、各アクション検出時の優先度ξ及びそれに基づく被験者の覚醒度を導出するだけでなく、その後の予測経路をも導出するので、以後の被験者の覚醒度の推移勾配を予測することができる。即ち、本実施例によれば、経路を予測しながら被験者の覚醒度を推定していくので、アクションが検出されない時点においても被験者の覚醒度を精度良く推定することができる。例えば、図２４に示すように、時刻ｔ’から時刻Ｔまで何らアクションが検出されない状況であっても、上述の如く予測された経路（図の“Ｐｒｅｄｉｃｔｅｄ  ｐａｔｈ”参照）に基づいて、時刻Ｔでの優先度ξＴを推定することができる。これにより、例えば予測経路に基づき導出された優先度ξが所定値を超えた場合に、警告手段１７０を介して警報等を発することとすれば、早期に有用な警報を出力することも可能となる。また、予測経路に基づき導出された優先度ξが所定値を超えた場合に代えて、又はそれに加えて、重み付け勾配∇が所定値を超えた場合に、警告手段１７０を介して警報等を発することとしてもよい。
【００８１】
尚、本実施例において、上述の如く今回のセッションが終了すると、優先度関数ｆ（ｔ）に対応する経路が生成されるので、かかるデータを、アクションヒストリーデータベース１５４内に蓄積して今後のセッションにおける覚醒度推定処理に利用してもよい。即ち、実稼動時のアクション優先付けモジュール１５０によるアクションヒストリーデータベース１５４の学習は、上述の如く生成される経路を学習することであってよい。
【００８２】
次に、図２５を参照して、第２の推定ロジックについて説明する。第２の推定ロジックは、上述の第１の推定ロジックが上述の如く同一の被験者のデータを用いて優先度ξ及びそれに基づく被験者の覚醒度を導出するのに対して、他の被験者のデータを用いて優先度ξ及びそれに基づく被験者の覚醒度を導出する点が異なる。従って、以下では、第２の推定ロジックを要約して説明する。尚、前提として、第２の推定ロジックに基づく覚醒度推定処理では、上記のステップ４０２では、特定された被験者に係るデータ以外の他の被験者に係るデータについても、アクションヒストリーデータベース１５４内から読み出されることになる。
【００８３】
図２５には、他の被験者Ｕ１，Ｕ２に係る優先度関数ｆ１（ｔ）Ｕ１、ｆ２（ｔ）Ｕ２が示されている。以下では、今回のアクションＡ０５が時刻ｔ’＝１５で検出された場合を想定する。また、本例では、時間ウインドウの幅は２５秒以上に設定されており、時刻ｔ’＝１５を中心として当該時間ウインドウ内にアクションＡ０５の検出結果を有する同被験者のデータが存在せず、当該時間ウインドウ内にアクションＡ０５の検出結果を有するデータが、他の被験者Ｕ１，Ｕ２に係るデータだけであった場合を想定する。
【００８４】
また、ここでは、他の被験者Ｕ１に係るデータでは、アクションＡ０５が時刻ｔ１＝１０で検出され、そのときの相対優先度ξ１がξ１＝0.4238561であり、他の被験者Ｕ２に係るデータでは、アクションＡ０５が時刻ｔ２＝４０で検出され、そのときの相対優先度ξ２がξ２＝0.3854236であった場合を想定する。
【００８５】
この場合、同様に、各時間差Δｔが、以下のように算出されることになる。
Δｔ１＝｜ｔ’―ｔ１｜＝5.0
Δｔ２＝｜ｔ’―ｔ２｜＝25.0
次いで、先ず、Ｔ１、Ｔ２が以下のように算出され、Ｔ１、Ｔ２に応じた重みＷが、以下のように算出されることになる。
Ｔ１＝１／Δｔ１＝0.20
Ｔ２＝１／Δｔ２＝0.04 
Ｗ１＝Ｔ１／（Ｔ１＋Ｔ２）＝0.8333
Ｗ２＝Ｔ２／（Ｔ１＋Ｔ２）＝0.1666
尚、時間差Δｔの何れかがゼロである場合、即ち同一時刻に同一のアクションが検出されていた場合には、当該過去のアクションに対応した優先度ξがそのまま採用される。
【００８６】
次いで、重み付けされた優先度ξが、以下のように算出されることになる。
ξ＝Ｗ１ξ１＋Ｗ２ξ２＝0.41745071
このようにして導出される重み付けされた優先度ξは、今回検出されたアクションＡ０５の検出時刻ｔ’＝１５における被験者の覚醒度を表している。このように本実施例によれば、同一の被験者に対して同一のアクションが過去に検出されていない場合にも、他の被験者に対して取得された過去のデータに基づいて、優先度ひいては覚醒度を精度良く推定することができる。尚、このようにして導出された優先度ξが所定値を超えた場合には、警告手段１７０を介して警報等を発することとしてよい。
【００８７】
また、同様に、予測経路を導出するために、現在のプロット点Ｌ’（ｔ’、ξ’）から優先度関数ｆ１（ｔ）Ｕ１、ｆ２（ｔ）Ｕ２までの距離ＳＨＤ１、ＳＨＤ２が算出され、各優先度関数ｆ１（ｔ）Ｕ１、ｆ２（ｔ）Ｕ２の時刻ｔ’での勾配Ｇｒａｄ（ｆ１（ｔ’））、Ｇｒａｄ（ｆ２（ｔ’））が算出され、これらの算出結果に基づいて、重み付け勾配∇’が次のようにして算出されてよい。
【００８８】
【数２】
2007312905.tif 000004
このように第２の推定ロジックによっても、随時検出されるアクションに応じて、他の被験者に対して取得された過去のデータに基づいて、各アクション検出時の優先度ξ及びそれに基づく被験者の覚醒度を導出するだけでなく、その後の予測経路をも導出するので、以後の被験者の覚醒度の推移態様を予測することができる。即ち、本実施例によれば、経路を予測しながら被験者の覚醒度を推定していくので、アクションが検出されない時点においても被験者の覚醒度を精度良く推定することができる。これにより、例えば予測経路に基づき導出された優先度ξが所定値を超えた場合に、警告手段１７０を介して警報等を発することとすれば、早期に有用な警報を出力することも可能となる。また、予測経路に基づき導出された優先度ξが所定値を超えた場合に代えて、又はそれに加えて、重み付け勾配∇’が所定値を超えた場合に、警告手段１７０を介して警報等を発することとしてもよい。
【００８９】
尚、第２の推定ロジックは、上述の如く主に同一の被験者のデータが存在しない場合に、上述の第１の推定ロジックに代えて一時的に利用されるロジックであるので、上述の数２の式のように、距離ＳＨＤ１、ＳＨＤ２に基づいて重み付け勾配∇’を導出しているが、例えば新規の被験者を推定対象とする場合等、同一のセッションにおいて複数回同一の他の被験者の優先度関数が用いられる場合には、数１の式のように、投票値を導出して当該投票値に基づいて重み付け勾配∇を導出することとしてもよい。
【００９０】
［警告処理］
警告手段１７０は、覚醒度推定モジュール１６０による覚醒度の推定結果に基づいて、例えば覚醒度の低下が推定された場合には、被験者に対して音声や映像により出力する。尚、警報の出力態様は多種多様でありえ、被験者がドライバである場合、シートに埋設した振動体により振動を発生したり、シート（座席）に設けた空気穴から空気を吹き出したり、覚醒を促進させるための匂いを発生したり、ステアリングハンドルの温度を変化させたり、メーター内に警告サインを出力したりしてもよい。また、警告手段１７０は、覚醒度に応じて木目細やかに警報の出力態様を変化させてもよい。
【実施例２】
【００９１】
図２６は、本発明の実施例２による覚醒度推定システムのシステム構成図である。実施例２は、上述の実施例１に対して、上述の第１の推定ロジック及び第２の推定ロジックに代わる第３の推定ロジックを用いる点が異なる。第３の推定ロジックは、推定に用いる複数の優先度関数ｆ（ｔ）に係るデータをグループ化する点が、上述の第１の推定ロジック及び第２の推定ロジックと主に異なる。以下では、上述の実施例１と同一の構成については同一の参照符号を付して説明を省略し、実施例２特有に構成について主に説明する。
【００９２】
本実施例の覚醒度推定システム１００’は、カメラ１１０と、アクション検出モジュール１２０と、アクションデータベース１３２と、アクション優先付けモジュール１５０と、優先度データベース１５２と、アクションヒストリーデータベース１５４と、覚醒度推定モジュール１６０’と、グループ化モジュール１６２と、を備える。
【００９３】
カメラ１１０を除く覚醒度推定システム１００’のハードウェア構成としては、マイクロコンピュータを中心に構成されている。従って、覚醒度推定システム１００’は、所与の実行プログラムに従って各種処理を行うCPU、このCPUの実行プログラムを格納するROM、画像データ、演算結果等を格納する読書き可能なRAM（Random  Access  Memory）、タイマ、カウンタ、入出力インターフェイス等を有している。これらCPU、ROM、RAM、及び入出力インターフェイスは、データバスにより相互に接続されている。尚、以下で説明する覚醒度推定システム１００’の各モジュール１２０，１５０，１６０’、１６２の機能は、CPUによって実行されるプログラムによって実現される。
【００９４】
図２７は、本実施例による覚醒度推定システムにより実現される主要処理の流れを示す図である。本実施例による覚醒度推定システムにより実現される主要処理は、
ステップ１０：画像取得処理と、
ステップ２０：アクション検出処理と、
ステップ３０：アクション優先付け処理と、
ステップ３５：グループ化処理と、
ステップ４０’：覚醒度推定処理と、
ステップ５０：警告手段１７０による警告処理とを含む。尚、後述の如く推定フェーズにおいては、ステップ３０のアクション優先付け処理は、省略されてもよいし、後述の如く実稼動時の学習を実行する処理として実行されてもよい。
【００９５】
以下、グループ化モジュール１６２によるグループ化処理と、覚醒度推定モジュール１６０’による覚醒度推定処理について順に詳説する。
【００９６】
図２８は、グループ化モジュール１６２による実現されるグループ化処理の概要を示すフローチャートである。
【００９７】
ステップ３５１では、アクションデータベース１３２内のデータに基づいて、近接する優先度で同一のアクションが検出されているデータを抽出する。即ち、同一のアクションに係るデータのうち、それらの優先度の差が所定値Ｔｈ以下のデータ集合をグループとして抽出する。
【００９８】
ステップ３５２では、抽出したデータをグループ化し、他のデータと区別する。即ち、｜εｉ−εｊ｜＜Ｔｈの関係を満たす同一アクションのデータ集合を１グループとして区分する。この際、グループ化モジュール１６２は、好ましくは、上述の如く設定される時間ウインドウを用いて、当該時間ウインドウ内のデータに関して上述のグループ化を実行する。これは、あるセッション内において例えば前半の時間帯はある覚醒度変化曲線に類似するものの、後半の時間帯は当該覚醒度変化曲線から大きく乖離することがあるからである。
【００９９】
尚、グループ化モジュール１６２は、推定フェーズにおいて、アクションヒストリーデータベース１５４内から全データを読み出して、それらに対してグループ化を行ってもよいし、或いは、グループ化モジュール１６２は、推定フェーズに先立って、アクションヒストリーデータベース１５４内のデータを予めグループ化しておいてもよい。後者の場合、推定フェーズにおいて、覚醒度推定モジュール１６０’が、当該グループ化されたデータをアクションヒストリーデータベース１５４内から読み出すことになる。
【０１００】
図２９は、覚醒度推定モジュール１６０’により実現される覚醒度推定処理の流れを示すフローチャートである。
【０１０１】
ステップ４００’では、現在の推定対象となる被験者が認識される。被験者は、被験者のID等により特定されてよいし、顔の特徴等に基づいて特定されてもよい。
【０１０２】
ステップ４０２’では、グループ化モジュール１６２によりグループ化されたデータを取得する。
【０１０３】
ステップ４０４’では、現在のフェーズが判断される。現在のフェーズが学習フェーズである場合、覚醒度推定モジュール１６０による処理はそのまま終了される。この場合、随時検出される被験者のアクションとそのときの覚醒度に関する情報に基づいて、上述の如く、アクション優先付けモジュール１５０による優先度データベース１５２及びアクションヒストリーデータベース１５４の構築（学習）が実行される。一方、現在のフェーズが推定フェーズである場合、ステップ４０６’に進む。
【０１０４】
ステップ４０６’では、アクション検出モジュール１２０からのアクショントリガデータパケットに基づいて、今回検出されたアクションに関するデータが、グループ化されたデータ内に存在するか否かが判断される。肯定判定の場合、ステップ４０９に進み、否定判定の場合、今回検出されたアクションが、新規のアクションとして登録される。
【０１０５】
ステップ４０９では、覚醒度推定モジュール１６０は、第３の推定ロジックにより推定処理を行う。第３の推定ロジックによれば、以下で詳説するように、グループ化されたデータを用いた補間により、被験者の覚醒度が推定される。
【０１０６】
第３の推定ロジックは、上述の第１の推定ロジックが上述の如く同一の被験者のデータを用いて優先度ξ及びそれに基づく被験者の覚醒度を導出するのに対して、グループ化されたデータを用いて優先度ξ及びそれに基づく被験者の覚醒度を導出する点が異なる。従って、以下では、第３の推定ロジックを要約して説明する。
【０１０７】
図３０は、上述の覚醒度推定モジュール１６０’により実現される覚醒度推定処理の説明図である。図３０には、一例として今回のセッションの覚醒度推定処理に用いられる３つの優先度関数ｆ１（ｔ）、ｆ２（ｔ）、ｆ３（ｔ）が示されている。尚、実際には、より多数の優先度関数ｆ（ｔ）が読み出されることもありうる。また、図３０には、今回のセッションにおける実際の優先度関数ｆactual（ｔ）が示されている。以下では、時刻ｔ＝ｔ１にてアクションＡ０１が検出され、時刻ｔ＝ｔ２にてアクションＡ０３が検出され、時刻ｔ＝ｔ３にてアクションＡ０４が検出された場合を想定する。
【０１０８】
図３１は、図３０に示すデータのうちのグループ化されたデータをハッチングにより示す図である。即ち、図３１には、同一のグループに属する領域がハッチングにより示されている。
【０１０９】
時刻ｔ＝ｔ１にてアクションＡ０１が検出されると、覚醒度推定モジュール１６０は、同アクションＡ０１を検出結果に含むグループ化されたデータに基づいて（本例では、優先度関数ｆ２（ｔ）と優先度関数ｆ３（ｔ）に係るデータに基づいて）、重み付けされた優先度ξ１を算出する。重み付けされた優先度ξ１は、図３１に示されている。優先度ξ１の算出方法については上述の実施例１と同様であってよい。ここでは、今回のアクションＡ０１の発生時刻ｔ＝ｔ１に関して、優先度関数ｆ２（ｔ）に係るアクションＡ０１の発生時刻ｔ＝ｔ１’との時間差Δｔ１’の方が、優先度関数ｆ３（ｔ）に係るアクションＡ０１の発生時刻ｔ＝ｔ１”との時間差Δｔ１”よりも小さいので、優先度関数ｆ２（ｔ）の投票値ＶＴ２が増加される。即ち、ＶＴ１＝０、ＶＴ２＝１、ＶＴ３＝０となる。
【０１１０】
同様に、時刻ｔ＝ｔ２にてアクションＡ０３が検出されると、覚醒度推定モジュール１６０は、同アクションＡ０３を検出結果に含むグループ化されたデータに基づいて（本例では、優先度関数ｆ３（ｔ）に係るデータに基づいて）、重み付けされた優先度ξ２を算出する。重み付けされた優先度ξ２は、図３１に示されている。優先度ξ２の算出方法については上述の実施例１と同様であってよい。ここでは、優先度関数ｆ３（ｔ）に係るデータしか存在しないので、優先度関数ｆ３（ｔ）の投票値ＶＴ３が増加される。即ち、ＶＴ１＝０、ＶＴ２＝１、ＶＴ３＝１となる。
【０１１１】
次に、時刻ｔ＝ｔ３にてアクションＡ０４が検出されると、覚醒度推定モジュール１６０は、同アクションＡ０４を検出結果に含むグループ化されたデータに基づいて（本例では、優先度関数ｆ１（ｔ）に係るデータに基づいて）、重み付けされた優先度ξ３を算出する。優先度ξ３の算出方法については上述の実施例１と同様であってよい。ここで、優先度関数ｆ２（ｔ）に係るデータは、図３０に示すように、アクションＡ０４を検出結果に含むが、当該アクションＡ０４に係るデータは、図３１に示すように、グループ化されたデータではない。従って、優先度関数ｆ２（ｔ）に係るデータは、上記のステップ４０２’で抽出されずそれ故に今回の覚醒度推定処理には用いられず、優先度関数ｆ１（ｔ）に係るデータのみが、今回の覚醒度推定処理に用いられる。この結果、算出される重み付けされた優先度ξ３は、図３１に示すように、優先度関数ｆ２（ｔ）の影響を受けることなく、実際の優先度関数ｆactual（ｔ）に対して精度良く推定されることになる。
【０１１２】
また、時刻ｔ＝ｔ３では、優先度関数ｆ１（ｔ）に係るデータが採用されるため、優先度関数ｆ１（ｔ）の投票値ＶＴ１が増加される。即ち、ＶＴ１＝１、ＶＴ２＝１、ＶＴ３＝１となる。ＶＴ１＝１、ＶＴ２＝１、ＶＴ３＝１は、重み付け勾配∇を算出する際に用いられる。重み付け勾配∇の算出方法については上述の実施例１と同様であってよい。この時点ｔ＝ｔ３で導出される重み付け勾配∇（及びそれに基づく予測経路“Ｅｓｔｉｍａｔｅｄ  ｐａｔｈ”）は、優先度関数ｆ１（ｔ）の時刻ｔ＝ｔ３での勾配の重みが付加されることで、図３１に示すように、実際の優先度関数ｆactual（ｔ）に近い勾配となる。即ち、予測経路の精度が向上する。
【０１１３】
図３２は、比較例として、グループ化されないデータを用いた場合の覚醒度推定処理結果を示す図である。
【０１１４】
この比較例では、時刻ｔ＝ｔ３にてアクションＡ０４が検出されると、同アクションＡ０４を検出結果に含む優先度関数ｆ１（ｔ）に係るデータと優先度関数ｆ２（ｔ）に係るデータとに基づいて、重み付けされた優先度ξ３が算出されることになる。この結果、算出される重み付けされた優先度ξ３は、図３１に示すように、優先度関数ｆ２（ｔ）の影響を受け、実際の優先度関数ｆactual（ｔ）に対して誤差が大きくなる。また、時刻ｔ＝ｔ３では、図３０に示すように、優先度関数ｆ２（ｔ）に係るアクションＡ０４の発生時刻ｔ＝ｔ３’との時間差Δｔ３’の方が、優先度関数ｆ１（ｔ）に係るアクションＡ０４の発生時刻ｔ＝ｔ３”との時間差Δｔ３”よりも小さいので、優先度関数ｆ２（ｔ）の投票値ＶＴ２が増加される。即ち、ＶＴ１＝０、ＶＴ２＝２、ＶＴ３＝１となる。この結果、この時点で導出される予測経路は、優先度関数ｆ２（ｔ）の時刻ｔ＝ｔ３での勾配の重みが付加されることで、図３２にて矢印“Ｅｓｔｉｍａｔｅｄ  ｐａｔｈ”で示すように、実際の優先度関数ｆactual（ｔ）の勾配に対して誤差の大きい勾配となる。
【０１１５】
このように本実施例によれば、過去のデータのうちグループ化されたデータを用いることで、傾向が大きく異なるデータを排除して、精度の良い補間を行うことができる。これにより、覚醒度の推定精度が大きく向上する。
【０１１６】
尚、本実施例において、グループ化の手法は上述の例に限られず、アクション発生時の時間差等を考慮してもよい。また、グループ化は、被験者毎に実行されてもよい。この場合、特定した被験者のデータのうちのグループ化されたデータのみを用いて、上述の推定処理を行えばよい。また、この場合、同一の被験者に係るデータが存在しない場合には、上述の第２の推定ロジックと同様に、他の被験者に係るグループ化されたデータを用いることとしてもよい。また、上述では、１つのグループのみを形成しているが、より多数のグループを形成してもよい。この場合、今回の被験者又はアクションがどのグループに属するかを判断し、当該グループに係るデータを用いて上述の推定処理を行えばよい。
【０１１７】
以上、本発明の好ましい実施例について詳説したが、本発明は、上述した実施例に制限されることはなく、本発明の範囲を逸脱することなく、上述した実施例に種々の変形及び置換を加えることができる。
【産業上の利用可能性】
【０１１８】
以上のとおり本発明は、車両におけるドライバの覚醒度を推定するアプリケーションを始めとして、被験者の覚醒度を推定することが有用なあらゆるアプリケーションにおいて利用することができる。
【図面の簡単な説明】
【０１１９】
【図１】本発明の実施例１による覚醒度推定システムのシステム構成図である。
【図２】本実施例による覚醒度推定装置により実現される主要処理の流れを示す図である。
【図３】アクション検出処理（図３のステップ２０）の前処理を示すフローチャートである。
【図４】顔の眉と目の部分がパーツとして抽出された画像を示す図である。
【図５】各ｔ秒間隔（典型的には、ｔ＝１秒）におけるパラメータｐｉ、ｅｊ、ｍｋの変化態様の一例を示す。
【図６】アクション発生判断手法の一例を示す図である。
【図７】覚醒度と被験者の状態との対応関係の一例を表す表図である。
【図８】各アクションＡｌ（ｌ＝1，…，１７）に対して付与される優先度εを示すマップの一例を示す図である。
【図９】優先度εと覚醒度Ｌ１〜Ｌ６との関係を表すマップの一例を示す図である。
【図１０】覚醒度の変化過程を時系列で示す概念図である。
【図１１】不特定多数の試験データに基づいて統計的に導出された覚醒度変化曲線及び素に基づく各係数βを示す図である。
【図１２】各覚醒度内の各時間間隔における係数αの配列態様を示す図である。
【図１３】同一の被験者に対して異なる日に試験した場合の覚醒度変化曲線を示す図である。
【図１４】覚醒度推定モジュール１６０により実現される覚醒度推定処理の流れを示すフローチャートである。
【図１５】覚醒度推定モジュール１６０により実現される第１の推定ロジックの詳細を示すフローチャートである。
【図１６】優先度関数ｆ１（ｔ）の一例を示す図である。
【図１７】ステップ４３０からステップ４５０までの処理の具体例を説明するための図である。
【図１８】上記のステップ４６０の投票処理の詳細を示すフローチャートである。
【図１９】図１８に関連した投票処理を説明するための図である。
【図２０】上記のステップ４８０の新規経路予測処理の詳細を示すフローチャートである
【図２１】新規経路予測処理を説明するための図である。
【図２２】上記のステップ４９０の経路構築処理の詳細を示すフローチャートである。
【図２３】経路構築処理を説明するための図である。
【図２４】予測経路に基づいて実行可能な覚醒度推定処理の説明図である。
【図２５】第２の推定ロジックの説明図である。
【図２６】本発明の実施例２による覚醒度推定システムのシステム構成図である。
【図２７】本実施例による覚醒度推定システムにより実現される主要処理の流れを示す図である。
【図２８】グループ化モジュール１６２による実現されるグループ化処理の概要を示すフローチャートである。
【図２９】覚醒度推定モジュール１６０’により実現される覚醒度推定処理の流れを示すフローチャートである。
【図３０】上述の覚醒度推定モジュール１６０’により実現される覚醒度推定処理の説明図である。
【図３１】図３０に示すデータのうちのグループ化されたデータをハッチングにより示す図である。
【図３２】比較例として、グループ化されないデータを用いた場合の覚醒度推定処理結果を示す図である。
【符号の説明】
【０１２０】
１００    覚醒度推定装置
１１０    カメラ
１２０    アクション検出モジュール
１３２    アクションデータベース
１５０    アクション優先付けモジュール
１５２    優先度データベース
１６０    覚醒度推定モジュール
【図１】
2007312905.tif 000005
【図２】
2007312905.tif 000006
【図３】
2007312905.tif 000007
【図４】
2007312905.tif 000008
【図５】
2007312905.tif 000009
【図６】
2007312905.tif 000010
【図７】
2007312905.tif 000011
【図８】
2007312905.tif 000012
【図９】
2007312905.tif 000013
【図１０】
2007312905.tif 000014
【図１１】
2007312905.tif 000015
【図１２】
2007312905.tif 000016
【図１３】
2007312905.tif 000017
【図１４】
2007312905.tif 000018
【図１５】
2007312905.tif 000019
【図１６】
2007312905.tif 000020
【図１７】
2007312905.tif 000021
【図１８】
2007312905.tif 000022
【図１９】
2007312905.tif 000023
【図２０】
2007312905.tif 000024
【図２１】
2007312905.tif 000025
【図２２】
2007312905.tif 000026
【図２３】
2007312905.tif 000027
【図２４】
2007312905.tif 000028
【図２５】
2007312905.tif 000029
【図２６】
2007312905.tif 000030
【図２７】
2007312905.tif 000031
【図２８】
2007312905.tif 000032
【図２９】
2007312905.tif 000033
【図３０】
2007312905.tif 000034
【図３１】
2007312905.tif 000035
【図３２】
2007312905.tif 000036