(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-02-26
(45)【発行日】2024-03-05
(54)【発明の名称】覚醒度推定方法、覚醒度推定装置及び覚醒度推定プログラム
(51)【国際特許分類】
A61B 5/16 20060101AFI20240227BHJP
A61B 5/18 20060101ALI20240227BHJP
G06Q 50/10 20120101ALI20240227BHJP
G06Q 10/0639 20230101ALI20240227BHJP
【FI】
A61B5/16 130
A61B5/18
G06Q50/10
G06Q10/0639
(21)【出願番号】P 2021055295
(22)【出願日】2021-03-29
【審査請求日】2023-03-16
(73)【特許権者】
【識別番号】000173784
【氏名又は名称】公益財団法人鉄道総合技術研究所
(74)【代理人】
【識別番号】100104064
【氏名又は名称】大熊 岳人
(72)【発明者】
【氏名】鈴木 綾子
【審査官】▲高▼原 悠佑
(56)【参考文献】
【文献】韓国公開特許第10-2010-0016696(KR,A)
【文献】特開2010-128649(JP,A)
【文献】国際公開第2020/157989(WO,A1)
【文献】特表2020-514861(JP,A)
【文献】特開2019-154613(JP,A)
【文献】特開2021-033359(JP,A)
【文献】国際公開第2020/121425(WO,A1)
【文献】特開2012-164040(JP,A)
【文献】特開2009-157780(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
A61B 5/16-5/18
(57)【特許請求の範囲】
【請求項1】
推定対象者の覚醒度を推定する覚醒度推定方法であって、
前記推定対象者の
目部分及び口部分の領域のフレーム毎の画像に基づいて、機械学習によってこの推定対象者の覚醒度を
フレーム毎に推定するとともに、前記推定対象者の
目部分、口部分及び顔部分の領域の
フレーム毎の画像を時系列化した時系列画像に基づいて、機械学習によってこの推定対象者の覚醒度を
時系列画像毎に推定する覚醒度推定工程と、
前記覚醒度推定工程における推定結果に基づいて、前記推定対象者の覚醒度を総合的に推定する総合推定工程と
を含み、
前記覚醒度推定工程は、前記推定対象者の目又は口がマスクされているときに、マスクされていない方の目部分又は口部分の領域のフレーム毎の画像に基づいて、機械学習によってこの推定対象者の覚醒度をフレーム毎に推定する工程を含むこと、
を
特徴とする覚醒度推定方法。
【請求項2】
請求項1に記載の覚醒度推定方法において、
前記覚醒度推定工程は、ディープラーニングによって前記推定対象者の覚醒度を
フレーム毎に推定する工程を含むこと、
を特徴とする覚醒度推定方法。
【請求項3】
請求項1又は請求項2に記載の覚醒度推定方法において、
前記覚醒度推定工程は、前記推定対象者の
目部分及び口部分の領域の
フレーム毎の画像に基づいて、多変量解析によってこの推定対象者の覚醒度を
フレーム毎に推定する工程を含むこと、
を特徴とする覚醒度推定方法。
【請求項4】
請求項1から請求項3までのいずれか1項に記載の覚醒度推定方法において、
前記総合推
定工程は、アンサンブル学習によって前記推定対象者の覚醒度を総合的に推定する工程を含むこと、
を特徴とする覚醒度推定方法。
【請求項5】
請求項1から請求項4までのいずれか1項に記載の覚醒度推定方法において、
前記総合推定工程における推定結果に基づいて、前記推定対象者に所定の警報を提示する警報提示装置に動作を指令する動作指令工程を含むこと、
を特徴とする覚醒度推定方法。
【請求項6】
推定対象者の覚醒度を推定するための覚醒度推定装置であって、
前記推定対象者の
目部分及び口部分の領域のフレーム毎の画像に基づいて、機械学習によってこの推定対象者の覚醒度を
フレーム毎に推定するとともに、前記推定対象者の
目部分、口部分及び顔部分の領域の
フレーム毎の画像を時系列化した時系列画像に基づいて、機械学習によってこの推定対象者の覚醒度を
時系列画像毎に推定する覚醒度推定部と、
前記覚醒度推定部の推定結果に基づいて、前記推定対象者の覚醒度を総合的に推定する総合推定部と
を備え、
前記覚醒度推定部は、前記推定対象者の目又は口がマスクされているときに、マスクされていない方の目部分又は口部分の領域のフレーム毎の画像に基づいて、機械学習によってこの推定対象者の覚醒度をフレーム毎に推定すること、
を
特徴とする覚醒度推定装置。
【請求項7】
推定対象者の覚醒度を推定するための覚醒度推定プログラムであって、
前記推定対象者の
目部分及び口部分の領域のフレーム毎の画像に基づいて、機械学習によってこの推定対象者の覚醒度を
フレーム毎に推定するとともに、前記推定対象者の
目部分、口部分及び顔部分の領域の
フレーム毎の画像を時系列化した時系列画像に基づいて、機械学習によってこの推定対象者の覚醒度を
時系列画像毎に推定する覚醒度推定手順と、
前記覚醒度推定手順における推定結果に基づいて、前記推定対象者の覚醒度を総合的に推定する総合推定手順とをコンピュータに実行させ、
前記覚醒度推定手順は、前記推定対象者の目又は口がマスクされているときに、マスクされていない方の目部分又は口部分の領域のフレーム毎の画像に基づいて、機械学習によってこの推定対象者の覚醒度をフレーム毎に推定する手順を含むこと、
を特徴とする覚醒度推定プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
この発明は、推定対象者の覚醒度を推定する覚醒度推定方法、覚醒度推定装置及び覚醒度推定プログラムに関する。
【背景技術】
【0002】
今日の鉄道では、ATS(自動列車停止装置)や ATC(自動列車制御装置)などの保安装置の整備により、運転士の眠気による注意力の低下が重大な事故に直結する可能性は大幅に減っている。しかし、運転中の前方監視や運転速度規制下における速度制御などは、運転士の注意力に頼っている場合もあり、運転中に生じる眠気に関する問題は、安全・安定輸送のためには軽視できない。運転士が眠気により注意力を欠いたり、居眠りした状態で運転したりすることのないように、覚醒レベルがある程度以下に下がった場合、すなわち一定程度以上の眠気が生じた場合、アラームで運転士自身に知らせることなどにより、運転士を支援することが望まれる。
【0003】
従来の推定器生成装置は、車両を運転する被験者の顔画像データから対象者の状態を導出するように訓練される第1推定器と、顔画像データから生理学的データを再現するように訓練される第2推定器と、第1及び第2推定器に共通エンコーダとを備えている(例えば、特許文献1参照)。この従来の推定器生成装置は、共通のエンコーダのパラメータが対象者の状態を推定する精度のより良い局所解に向かうように第1及び第2の推定器が推定している。
【0004】
従来の眠気推定装置は、運転者の口の動きの継続時間及び周期性の有無に基づいて、口の動きを判定する判定手段と、口の動きの種類に基づいて、運転者の眠気を推定する推定手段とを備えている(例えば、特許文献2参照)。この従来の眠気推定装置は、口の動きが眠気による動きの場合には、運転者が眠いと判断して、運転士に覚醒刺激を提供している。
【0005】
従来の眠気検知装置は、運転者の下瞼と眼球との境界に形成される影を撮影する撮影手段と、運転者が下方視であるか否かを検知する下方視検知手段と、下方視であることによる覚醒度の低下分が相殺されるように覚醒度を補正し、補正後の覚醒度に基づいて運転士の眠気を検知する眠気検知手段とを備えている(例えば、特許文献3参照)。この従来の眠気検知装置は、運転者の下瞼の輪郭形状を示す近似曲線を算出し、運転者の瞼の形状を正確に認識し、下方視であることを精度良く検知している。
【先行技術文献】
【特許文献】
【0006】
【0007】
【0008】
【発明の概要】
【発明が解決しようとする課題】
【0009】
特許文献1~3に示される技術では、主に自動車運転を想定した場合の眠気を推定している。近年、自動車分野では、画像処理技術などの進展により、ドライバーの眠気や居眠りを検知する技術の実用化が図られつつあるが、列車運転士を対象として、カメラと運転士の顔の相対的位置関係、運転士の着座姿勢、指差喚呼などを伴う確認動作および求められる精度の高さなど、鉄道特有の条件に対応した眠気の検知システムは現存しない。
【0010】
この発明の課題は、推定対象者の覚醒度をより高精度に推定することができる覚醒度推定方法、覚醒度推定装置及び覚醒度推定プログラムを提供することである。
【課題を解決するための手段】
【0011】
この発明は、以下に記載するような解決手段により、前記課題を解決する。
なお、この発明の実施形態に対応する符号を付して説明するが、この実施形態に限定するものではない。
請求項1の発明は、
図1及び
図6に示すように、推定対象者(M)の覚醒度を推定する覚醒度推定方法であって、前記推定対象者の
目部分及び口部分の領域のフレーム毎の画像に基づいて、機械学習によってこの推定対象者の覚醒度を
フレーム毎に推定するとともに、前記推定対象者の
目部分、口部分及び顔部分の領域の
フレーム毎の画像を時系列化した時系列画像に基づいて、機械学習によってこの推定対象者の覚醒度を
時系列画像毎に推定する覚醒度推定工程(#120、#130)と、前記覚醒度推定工程における推定結果に基づいて、前記推定対象者の覚醒度を総合的に推定する総合推定工程(#140)と
を含み、
前記覚醒度推定工程は、前記推定対象者の目又は口がマスクされているときに、マスクされていない方の目部分又は口部分の領域のフレーム毎の画像に基づいて、機械学習によってこの推定対象者の覚醒度をフレーム毎に推定する工程を含むことを
特徴とする覚醒度推定方法(#100)である。
【0012】
請求項2の発明は、請求項1に記載の覚醒度推定方法において、前記覚醒度推定工程は、ディープラーニングによって前記推定対象者の覚醒度をフレーム毎に推定する工程を含むことを特徴とする覚醒度推定方法である。
【0013】
請求項3の発明は、請求項1又は請求項2に記載の覚醒度推定方法において、前記覚醒度推定工程は、前記推定対象者の目部分又は口部分の領域のフレーム毎の画像に基づいて、多変量解析によってこの推定対象者の覚醒度をフレーム毎に推定する工程(#110)を含むことを特徴とする覚醒度推定方法である。
【0014】
請求項4の発明は、請求項1から請求項3までのいずれか1項に記載の覚醒度推定方法において、前記総合推定工程は、アンサンブル学習によって前記推定対象者の覚醒度を総合的に推定する工程を含むことを特徴とする覚醒度推定方法である。
【0015】
請求項5の発明は、請求項1から請求項4までのいずれか1項に記載の覚醒度推定方法において、前記総合推定工程における推定結果に基づいて、前記推定対象者に所定の警報を提示する警報提示装置(10)に動作を指令する動作指令工程(#150)を含むことを特徴とする覚醒度推定方法である。
【0016】
請求項6の発明は、
図1に示すように、推定対象者(M)の覚醒度を推定するための覚醒度推定装置であって、前記推定対象者の
目部分及び口部分の領域のフレーム毎の画像に基づいて、機械学習によってこの推定対象者の覚醒度を
フレーム毎に推定するとともに、前記推定対象者の
目部分、口部分及び顔部分の領域の
フレーム毎の画像を時系列化した時系列画像に基づいて、機械学習によってこの推定対象者の覚醒度を
時系列画像毎に推定する覚醒度推定部(6,7)と、前記覚醒度推定部の推定結果に基づいて、前記推定対象者の覚醒度を総合的に推定する総合推定部(8)と
を備え、
前記覚醒度推定部は、前記推定対象者の目又は口がマスクされているときに、マスクされていない方の目部分又は口部分の領域のフレーム毎の画像に基づいて、機械学習によってこの推定対象者の覚醒度をフレーム毎に推定することを
特徴とする覚醒度推定装置(4)である。
【0017】
請求項7の発明は、
図7に示すように、推定対象者(M)の覚醒度を推定するための覚醒度推定プログラムであって、前記推定対象者の
目部分及び口部分の領域のフレーム毎の画像に基づいて、機械学習によってこの推定対象者の覚醒度を
フレーム毎に推定するとともに、前記推定対象者の
目部分、口部分及び顔部分の領域の
フレーム毎の画像を時系列化した時系列画像に基づいて、機械学習によってこの推定対象者の覚醒度を
時系列画像毎に推定する覚醒度推定手順(S110,S120)と、前記覚醒度推定手順における推定結果に基づいて、前記推定対象者の覚醒度を総合的に推定する総合推定手順(S130)とをコンピュータに実行させ、
前記覚醒度推定手順は、前記推定対象者の目又は口がマスクされているときに、マスクされていない方の目部分又は口部分の領域のフレーム毎の画像に基づいて、機械学習によってこの推定対象者の覚醒度をフレーム毎に推定する手順を含むことを特徴とする覚醒度推定プログラムである。
【発明の効果】
【0019】
この発明によると、推定対象者の覚醒度をより高精度に推定することができる。
【図面の簡単な説明】
【0020】
【
図1】この発明の実施形態に係る覚醒度推定装置を備える覚醒レベル低下防止支援システムを模式的に示す構成図である。
【
図2】この発明の実施形態に係る覚醒度推定装置を備える覚醒レベル低下防止支援システムの顔検出装置の原理を説明するための模式図であり、(A)は頭部画像の模式図であり、(B)は顔検出動作の模式図であり、(C)は特徴点抽出動作の模式図である。
【
図3】この発明の実施形態に係る覚醒度推定装置の目・口開度算出部による算出方法を説明するための模式図であり、(A)は左目のアスペクト比の算出方法を一例として説明するための模式図であり、(B)は口のアスペクト比の算出方法を説明するための模式図である。
【
図4】この発明の実施形態に係る覚醒度推定装置の顔変位算出部による算出方法を説明するための模式図であり、(A)は1フレーム前の顔領域の画像の模式図であり、(B)は現在処理中のフレームの顔領域の画像の模式図である。
【
図5】この発明の実施形態に係る覚醒度推定装置の時系列データ化部のデータ構造を示す模式図である。
【
図6】この発明の実施形態に係る覚醒度推定方法を説明するための工程図である。
【
図7】この発明の実施形態に係る覚醒度推定装置の動作を説明するためのフローチャートである。
【発明を実施するための形態】
【0021】
以下、図面を参照して、この発明の実施形態について詳しく説明する。
図1に示す運転士Mは、覚醒度推定装置4によって覚醒度が推定される推定対象者である。運転士Mは、例えば、動力発生装置を有する機関車、電動車又は内燃動車などの鉄道車両を操縦するために、この鉄道車両に常務する動力車乗務員である。
【0022】
覚醒レベル低下防止支援システム1は、列車を運転中の運転士Mの覚醒レベルの低下防止を支援するシステムである。覚醒レベル低下防止支援システム1は、運転士Mの撮影画像に基づいて運転士Mの顔を検出して特徴点を抽出し、運転士Mの顔の特徴点に基づいて運転士Mの覚醒度を推定することによって、運転士Mの眠気発生を捉えて運転士Mに警報を提示する。覚醒レベル低下防止支援システム1は、撮影装置2と、顔検出装置3と、覚醒度推定装置4と、警報提示装置10などを備えている。
【0023】
撮影装置2は、運転士Mを撮影する装置である。撮影装置2は、列車の運転室(乗務員室)内に設置されており、この運転室内で運転士Mの頭部を撮影する。撮影装置2は、運転室内の多様な光環境に対応可能であり、運転士Mの頭部の動画を撮像する。撮影装置2は、赤外線照射器2aと、近赤外線カメラ2bと、制御部2cなどを備えている。
【0024】
赤外線照射器2aは、運転士Mに赤外線を照射する装置である。赤外線照射器2aは、例えば、夜間の運転室内の消灯時における最低照度の場合であっても、運転士Mの頭部画像を撮影可能なように、運転士Mに適切な光量で赤外線を照射する。近赤外線カメラ2bは、運転士Mを撮影する近赤外線装置である。近赤外線カメラ2bは、例えば、列車がトンネルやビルの合間を走行して、照度が急激に変化する場合であっても、運転士Mの頭部を撮影可能なように、フィルタ処理によって近赤外線のみを選択的に透過させて顔画像の白飛びを防ぐ。制御部2cは、赤外線照射器2a及び近赤外線カメラ2bを動作制御する手段である。制御部2cは、例えば、運転室内の照度に応じて赤外線照射器2aの光量を制御したり、顔画像の明るさが一定範囲に収まるように画像照度に合わせてゲイン及びシャッタ時間(露光時間)を制御したりする。制御部2cは、運転士Mの頭部画像を頭部画像データとして顔検出装置3の顔検出部3aに出力する。
【0025】
顔検出装置3は、運転士Mの顔を検出する装置である。顔検出装置3は、
図2に示すように、撮影装置2の近赤外線カメラ2bによって撮影された運転士Mの頭部画像に基づいて運転士Mの顔を検出し、運転士Mの特徴点を抽出するとともに、この特徴点から運転士Mの目画像及び口画像を切り出してマスクの有無を判定する。顔検出装置3は、
図1に示すように、顔検出部3aと、特徴点抽出部3bと、目・口画像切出部3cと、マスク判定部3dなどを備えている。
【0026】
顔検出部3aは、運転士Mの撮影画像から運転士Mの顔を検出する手段である。顔検出部3aは、撮影装置2の制御部2cが出力する頭部画像データに基づいて、
図2(A)(B)に示すように、顔検出部3aが検出する運転士Mの頭部全体の領域から、運転士Mの額よりも下の顔部分の領域を検出する。顔検出部3aは、運転士Mの頭部画像から運転士Mの顔領域を機械学習によって抽出し、この顔領域を顔画像データとして特徴点抽出部3b及び時系列データ化部7cに出力する。ここで、機械学習とは、人工知能の一種であり、経験からの学習により自動で改善するコンピュータアルゴリズムである。機械学習は、データを学習することによってデータの特徴をつかみ識別又は予測が可能である。顔検出部3aは、頭部画像データから反復的に学習し、この頭部画像データに潜む顔領域のパターンを見つけ出し、学習したパターンを新たな頭部画像データに当てはまることで、このパターンに従って顔領域を予測する。顔検出部3aは、学習用データ、訓練用データ又はトレーニングデータと呼ばれるデータを使用して学習し、学習結果(学習済みのモデル)を使用して運転士Mの顔領域を検出する。
【0027】
顔検出部3aは、ディープラーニング(Deep learning(DL))によって顔領域を検出する。ここで、ディープラーニングとは、高度なコンピューティング性能と多層のニューラル・ネットワークとを組み合わせて、多量の撮影画像データの中に潜む複雑なパターンを学習する機械学習手法である。顔検出部3aは、交差検証によって解析の検証及び確認をする。ここで、交差検証とは、統計学において標準データを分割して一部を解析し、残りの部分でこの解析結果のテストを行って、解析の妥当性を検証及び確認し汎化性能を評価する手法である。交差検証には、例えば、事前にデータを学習データと評価データとに分割するホールドアウト検証と、学習データと評価データとの分割を複数回行い、それぞれのデータで学習及び評価を行うk-分割交差検証などがある。顔検出部3aは、例えば、頭部画像データを学習用データ(訓練データ又はトレーニングデータ)と評価用データ(テストデータ)とに分割するとともに、学習用データから検証用データを分割して検証する。顔検出部3aは、例えば、学習用データによって学習し、検証用データによって顔検出モデルの精度を評価し、顔検出モデルのパラメータを調整して学習済みの顔検出モデルを決定し、テストデータでこの学習済みの顔検出モデルの評価を行う。顔検出部3aは、未知の頭部画像データに学習済みの顔検出モデルを適用して、運転士Mの顔を検出する。
【0028】
特徴点抽出部3bは、運転士Mの顔領域から特徴点を抽出する手段である。特徴点抽出部3bは、顔検出部3aが出力する顔画像データに基づいて、
図2(B)(C)に示すように顔検出部3aが検出する運転士Mの頭部全体の領域から、運転士Mの目部分及び口部分の領域を特徴点として抽出する。特徴点抽出部3bは、機械学習によって運転士Mの顔領域の画像から特徴点の領域を抽出し、抽出後の特徴点の画像を特徴点画像データとして、目・口画像切出部3c、特徴量算出部5a及び目・口開度算出部7aに出力する。特徴点抽出部3bは、例えば、顔検出部3aと同様に、ディープラーニングによって運転士Mの特徴点を抽出する。特徴点抽出部3bは、学習済みの特徴点抽出モデルを使用して運転士Mの特徴点を抽出する。特徴点抽出部3bは、未知の顔画像データに学習済みの特徴点抽出モデルを適用して、運転士Mの特徴点を抽出する。
【0029】
目・口画像切出部3cは、運転士Mの目及び口の輪郭を切り出す手段である。目・口画像切出部3cは、特徴点抽出部3bが抽出した特徴点画像データに基づいて、運転士Mの目部分及び口領部分の領域から目及び口の輪郭を切り出す。目・口画像切出部3cは、例えば、運転士Mの目及び口の輪郭に外接する長方形の長辺を辺の長さとする正方形を切り出し範囲として、運転士Mの目部分及び口部分の領域から目及び口の輪郭を切り出す。目・口画像切出部3cは、特徴点抽出部3bが抽出する特徴点画像データから運転士Mの目及び口の輪郭を切り出して、運転士Mの目及び口の輪郭の画像を目・口画像データとしてマスク判定部3d及び目画像判定部6aに出力する。
【0030】
マスク判定部3dは、運転士Mの目及び口がマスクされているか否かを判定する手段である。マスク判定部3dは、目・口画像切出部3cが切り出した目・口画像データに基づいて、運転士Mの目及び口がマスクされているか(隠されているか)否かを判定する。マスク判定部3dは、例えば、運転士Mがマスクを着用しているか否かを判定したり、運転士Mが保護眼鏡を使用しているか否かを判定したりする。マスク判定部3dは、例えば、顔検出部3a及び特徴点抽出部3bと同様に、学習済みのマスク判定モデルを使用して運転士Mの特徴点を抽出する。特徴点抽出部3bは、未知の目・口画像データデータに学習済みのマスク判定モデルを適用して、運転士Mの特徴点を抽出する。
【0031】
マスク判定部3dは、学習済みのサポートベクターマシン(Support vector machine(SVC))によりマスク判定モデルを構成し、このマスク判定モデルによって運転士Mのマスクの有無を判定する。ここで、サポートベクターマシンとは、教師あり学習を用いるパターン認識モデルの一種であり、訓練例のラベルがある特定の属性を持つか否か二種類にグループ分けする二値分類であり、訓練アルゴリズムによってモデルを構築し、新たな例がどちらに分類されるか予測する学習技法である。マスク判定部3dは、運転士Mがマスクを着用しているか否かを判定する場合には、切り出した口領域の画像中の画素の輝度値の分布を表す輝度値ヒストグラムに基づいて、学習済みサポートベクターマシンによってマスク着用の有無を判定する。マスク判定部3dは、マスクの有無をマスク判定データとして目画像判定部6a及び口画像判定部6bに出力する。
【0032】
覚醒度推定装置4は、運転士Mの覚醒度を推定する装置である。覚醒度推定装置4は、多変量解析、フレーム毎の画像ディープラーニング及び時系列ディープラーニングによって画像を解析して覚醒度推定値(眠気評定値)を演算するとともに、これらの覚醒度推定値から総合推定値を演算する。覚醒度推定装置4は、覚醒度推定部5~7と、総合推定部8と、動作指令部9などを備えている。覚醒度推定装置4は、例えば、パーソナルコンピュータなどによって構成されており、運転士Mの覚醒度を推定するための覚醒度推定プログラムに従って所定の処理をコンピュータに実行させる。覚醒度推定装置4は、例えば、学習用データ、評価データ及び検証用データや、頭部画像データ、顔画像データ、特徴点画像データ、目・口画像データ、マスク判定データ、眠気特徴量データ、覚醒度推定値データ、目・口開度データ、顔変位データ、時系列データ及び総合推定値データなどの種々のデータや、学習済みの目画像判定モデル、口画像判定モデル、時系列データ解析モデルなどの種々の学習済みモデルを記憶する記憶装置を備えている。
【0033】
覚醒度推定部5は、運転士Mの特徴点のフレーム毎の画像に基づいて、多変量解析によって運転士Mの覚醒度を推定する手段である。覚醒度推定部5は、主成分回帰分析を用いた覚醒度推定式によって、眠気と関係すると考えられる瞬きに関する眠気特徴量を算出し、運転士Mの覚醒度を推定する。覚醒度推定部5は、特徴量算出部5aと多変量解析部5bなどを備えている。
【0034】
特徴量算出部5aは、眠気特徴量を算出する手段である。特徴量算出部5aは、運転士Mの特徴点のフレーム毎の画像に基づいて、覚醒度の推定に用いる眠気特徴量を算出する。特徴量算出部5aは、特徴点抽出部3bが抽出した運転士Mの目及び口の輪郭の画像である特徴点画像データに基づいて、開眼度、開眼度の標準偏差、開眼時間割合及び顔の向きなどの眠気特徴量を算出する。ここで、開眼度は、目の開き具合である。開眼時間割合は、単位時間当たりの開眼時間の割合である。特徴量算出部5aは、算出後の眠気特徴量を眠気特徴量データとして多変量解析部5bに出力する。
【0035】
多変量解析部5bは、運転士Mの覚醒度を多変量解析によって推定する手段である。多変量解析部5bは、特徴量算出部5aが出力する眠気特徴量データに基づいて、運転士Mの覚醒度を推定する。多変量解析部5bは、例えば、以下の数1に示すような主成分回帰分析を用いた覚醒度推定式によって運転士Mの覚醒度を推定する。
【0036】
【0037】
ここで、数1に示すy:覚醒度推定値、xn:眠気特徴量、an:眠気特徴量のパラメータ、a0:定数項である。多変量解析部5bは、推定後の覚醒度推定値yを覚醒度推定値データとして総合推定部8に出力する。
【0038】
覚醒度推定部6は、運転士Mの特徴点のフレーム毎の画像に基づいて、機械学習によって運転士Mの覚醒度を推定する手段である。覚醒度推定部6は、運転士Mの目又は口がマスクされているときに、マスクされていない方の目画像又は口画像に基づいて、機械学習によって運転士Mの覚醒度を推定する。覚醒度推定部6は、近赤外線カメラ2bが撮像する動画のフレーム毎の画像(静止画)に対して、ディープラーニング(画像ディープラーニング)によって運転士Mの覚醒度を推定する。覚醒度推定部6は、目・口画像切出部3cが切り出した目・口画像データに基づいて、運転士Mの覚醒度を推定する。覚醒度推定部6は、目画像判定部6aと、口画像判定部6bと、総合判定部6cなどを備えている。
【0039】
目画像判定部6aは、運転士Mの目画像に基づいて運転士Mの覚醒度を判定する手段である。目画像判定部6aは、例えば、運転士Mがマスクを着用している場合には、運転士Mの口がマスクによって隠されているため、運転士Mの口画像を使用せずに運転士Mの目画像に基づいて運転士Mの覚醒度を推定する。目画像判定部6aは、例えば、運転士Mが保護眼鏡を着用していない場合には、運転士Mの目が保護眼鏡によって隠されていないため、運転士Mの口画像を使用せずに運転士Mの目画像に基づいて運転士Mの覚醒度を推定する。目画像判定部6aは、例えば、目・口画像データを学習用データと評価用データとに分割するとともに、学習用データから検証用データを分割して検証する。目画像判定部6aは、例えば、学習用データによって学習し、検証用データによって目画像判定モデルの精度を評価し、目画像判定モデルのパラメータを調整して学習済みの目画像判定モデルを決定し、テストデータでこの学習済みの目画像判定モデルの評価を行う。目画像判定部6aは、未知の目・口画像データに学習済みの目画像判定モデルを適用して、運転士Mの覚醒度を推定する。目画像判定部6aは、例えば、運転士Mの左右の目を同一の目画像判定モデル(画像解析モデル)で扱うために、左目領域の目画像を左右反転して判定する。目画像判定部6aは、判定後の運転士Mの覚醒度推定値を覚醒度推定値データとして総合判定部6cに出力する。
【0040】
口画像判定部6bは、運転士Mの口画像に基づいて運転士Mの覚醒度を判定する手段である。口画像判定部6bは、例えば、運転士Mが保護眼鏡を着用している場合には、運転士Mの目が保護眼鏡によって隠されているため、運転士Mの目画像を使用せずに運転士Mの口画像に基づいて運転士Mの覚醒度を推定する。口画像判定部6bは、例えば、運転士Mがマスクを着用していない場合には、運転士Mの口がマスクによって隠されていないため、運転士Mの目画像を使用せずに運転士Mの口画像に基づいて運転士Mの覚醒度を推定する。口画像判定部6bは、例えば、学習用データによって学習し、検証用データによって口画像判定モデルの精度を評価し、口画像判定モデルのパラメータを調整して学習済みの口画像判定モデルを決定し、テストデータでこの学習済みの口画像判定モデルの評価を行う。口画像判定部6bは、未知の目・口画像データに学習済みの口画像判定モデルを適用して、運転士Mの覚醒度を推定する。口画像判定部6bは、判定後の運転士Mの覚醒度推定値を覚醒度推定値データとして総合判定部6cに出力する。
【0041】
総合判定部6cは、運転士Mの目画像及び口画像に基づく運転士Mの覚醒度を総合的に判断する手段である。総合判定部6cは、目画像判定部6aが判定した覚醒度推定値と、口画像判定部6bが判定した覚醒度推定値とを総合的に判定する。総合判定部6cは、例えば、目画像判定部6aによる覚醒度推定値と、口画像判定部6bによる覚醒度推定値とを重み付けすることによって覚醒度推定値を総合的に判定する。総合判定部6cは、判定後の運転士Mの覚醒度推定値を覚醒度推定値データとして総合推定部8に出力する。
【0042】
覚醒度推定部7は、運転士Mの特徴点の時系列画像に基づいて、機械学習によって運転士Mの覚醒度を推定する手段である。覚醒度推定部7は、顔検出部3aが出力する顔画像データと、特徴点抽出部3bが出力する特徴点画像データとに基づいて、ディープラーニング(時系列ディープラーニング)によって運転士Mの覚醒度を推定する。覚醒度推定部7は、目・口開度算出部7aと、顔変位算出部7bと、時系列データ化部7cと、時系列データ解析部7dなどを備えている。
【0043】
目・口開度算出部7aは、運転士Mの目の開き度合及び運転士Mの口の開き度合を算出する手段である。目・口開度算出部7aは、特徴点抽出部3bが出力する特徴点画像データに基づいて、
図3(A)に示す運転士Mの目の目アスペクト比EARと、
図3(B)に示す運転士Mの口の口アスペクト比MARとを、以下の数2によって算出する。
【0044】
【0045】
目・口開度算出部7aは、算出後の目アスペクト比EAR及び口アスペクト比MARを目・口開度データとして時系列データ化部7cに出力する。
【0046】
顔変位算出部7bは、顔領域の画像の中心座標の変位を算出する手段である。顔変位算出部7bは、顔検出部3aが検出した運転士Mの顔領域の画像の中心座標の2フレーム間の変位を算出する。顔変位算出部7bは、
図4に示すように、絶対座標における変位を以下の数3によって0~1に正規化する。
【0047】
【0048】
ここで、数3に示すh:高さ、W:幅、Δx:横方向の顔変位、Δy:縦方向の顔変位である。顔変位算出部7bは、正規化後の横方向の顔変位Δ及び縦方向の顔変位Δyを顔変位データとして時系列データ化部7cに出力する。
【0049】
時系列データ化部7cは、目・口開度及び顔変位を時系列データ化する手段である。時系列データ化部7cは、学習データ及び評価データの各フレームの目アスペクト比EAR、口アスペクト比MAR及び顔変位に基づいて、時系列解析モデルの入力サイズ(タイムステップ)数の連続フレームの値を結合した時系列データを生成する。時系列データ化部7cは、例えば、
図5に示すように、1フレームずつスライドしながら時系列データを採取し、フレーム数Nの動画からステップタイムmの時系列データをN-m+1個採取する。なお、
図5に示すように、目・口領域の検出に失敗した場合には-1を設定する。時系列データ化部7cは、データ化後の目・口開度及び顔変位の時系列データを時系列データ解析部7dに出力する。
【0050】
時系列データ解析部7dは、目・口開度及び顔変位の時系列データを解析する手段である。時系列データ解析部7dは、例えば、
図5に示すような時系列データを学習用データ、評価用データ及び検証用データに分けて、学習用データによって学習し、検証用データによって時系列解析モデル(時系列モデル)の精度を評価し、時系列解析モデルのパラメータを調整して学習済みの時系列解析モデルを決定し、テストデータでこの学習済みの時系列解析モデルの評価を行う。時系列データ解析部7dは、未知の時系列データに学習済みの時系列解析モデルを適用して、運転士Mの覚醒度を推定する。
【0051】
時系列データ解析部7dは、回帰型ニューラル・ネットワーク(Recurrent Neural Network(RNN))の一種である長・短期記憶(Long Short-Term Memory(LSTM)))層と全結合層によって構成されたモデルを時系列解析モデルとして使用する。ここで、RNNとは、ノード間の結合が配列に沿った有向グラフを形成する人工ニューラル・ネットワークである。LSTMとは、ディープラーニングの分野で用いられるRNNアーキテクチャである。時系列データ解析部7dは、例えば、シーケンス入力層、LSTM 層、全結合層、ソフトマックス層及び分類出力層を含む層配列を生成し、正規化線形関数を利用した正規化線形ユニット(Rectified Linear Unit(ReLU))を使用する。時系列データ解析部7dは、解析後の運転士Mの覚醒度推定値を覚醒度推定値データとして総合推定部8に出力する。
【0052】
総合推定部8は、覚醒度推定部5~7の推定結果に基づいて、運転士Mの覚醒度を総合的に推定する手段である。総合推定部8は、アンサンブル学習によって運転士Mの覚醒度を総合的に推定する。総合推定部8は、覚醒度推定部5~7の推定結果からアンサンブル学習によってより精度の高い覚醒度推定値を求める。総合推定部8は、例えば、覚醒度推定部5~7が学習済みの各モデル(1段目のモデル)によって推定した第一段階の覚醒度推定値をメタモデル(2段目のモデル)によって取りまとめて、この第一段階の覚醒度推定値を特徴量として学習し、精度の高い第2段階の覚醒度推定値を推定するスタッキング(stacking)によるアンサンブル学習を行う。総合推定部8は、例えば、メタモデルで用いるアルゴリズムとして線形回帰モデルのような回帰モデルを使用する。総合推定部8は、推定後の総合推定値を総合推定値データとして動作指令部9に出力する。
【0053】
動作指令部9は、警報提示装置10に動作を指令する手段である。動作指令部9は、総合推定部8が出力する総合推定値データに基づいて、警報提示装置10に動作を指令する。動作指令部9は、例えば、総合推定部8が推定した総合推定値に応じた警報を警報提示装置10が提示するように、警報提示装置10に警報提示動作を指令する。
【0054】
警報提示装置10は、運転士Mに所定の警報を提示する装置である。警報提示装置10は、視覚又は聴覚を通じて運転士Mに警報を提示する。警報提示装置10は、総合推定値に基づいて運転士Mの覚醒度(眠気度)に応じた警報を提示する。警報提示装置10は、例えば、運転士Mの眠気度に応じて警報の程度を変化させたり、運転士Mに弱い眠気度が何度も現れたときに警報を提示したりする。警報提示装置10は、例えば、不安定な音や警報音を発生させたり、「眠そうです」のような音声で警報したり、運転台に警報を表示させたりする。
【0055】
次に、この発明の実施形態に係る覚醒度推定方法について説明する。
図6に示す覚醒度推定方法#100は、運転士Mの覚醒度を推定する方法である。覚醒度推定方法#100では、多変量解析、フレーム毎の画像ディープラーニング及び時系列ディープラーニングによって画像を解析して覚醒度推定値(眠気評定値)を演算するとともに、これらの覚醒度推定値から総合推定値を演算する。覚醒度推定方法#100は、覚醒度推定工程#110~#130と、総合推定工程#140と、動作指令工程#150などを含む。
【0056】
覚醒度推定工程#110は、運転士Mの特徴点のフレーム毎の画像に基づいて、多変量解析によって運転士Mの覚醒度を推定する工程である。覚醒度推定工程#110では、運転士Mの特徴点のフレーム毎の画像に基づいて、覚醒度の推定に用いる眠気特徴量を算出し、この眠気特徴量に基づいて運転士Mの覚醒度を数1によって推定する。
【0057】
覚醒度推定工程#120は、運転士Mの特徴点のフレーム毎の画像に基づいて、機械学習によって運転士Mの覚醒度を推定する工程である。覚醒度推定工程#120では、運転士Mの目又は口がマスクされているときには、マスクされていない方の目画像又は口画像に基づいて、機械学習によって運転士Mの覚醒度を推定する。覚醒度推定工程#120では、運転士Mのフレーム毎の目画像又は口画像に基づいて、画像ディープラーニングによって運転士Mの覚醒度を推定する。覚醒度推定工程#120では、学習済みの目画像判定モデルによって、未知の目・口画像データに目画像判定モデルを適用して運転士Mの目画像を判定し、運転士Mの覚醒度を推定する。覚醒度推定工程#120では、学習済みの口画像判定モデルによって、未知の目・口画像データに口画像判定モデルを適用して運転士Mの口画像を判定し、運転士Mの覚醒度を推定する。覚醒度推定工程#120では、目画像判定部6aが判定した覚醒度推定値と、口画像判定部6bが判定した覚醒度推定値とを総合的に判定する。
【0058】
覚醒度推定工程#130は、運転士Mの特徴点の時系列画像に基づいて、機械学習によって運転士Mの覚醒度を推定する工程である。覚醒度推定工程#130は、運転士Mの時系列の目画像又は口画像に基づいて、時系列ディープラーニングによって運転士Mの覚醒度を推定する。覚醒度推定工程#130では、
図3に示すように、運転士Mの目の開き具合及び運転士Mの口の開き具合を数2によって算出するとともに、
図4に示すように顔領域の画像の中心座標の変位を数3によって算出する。覚醒度推定工程#130では、
図5に示すように、目・口開度及び顔変位を時系列データ化し、学習済みの時系列解析モデルによって、未知の時系列データに時系列解析モデルを適用して運転士Mの覚醒度を推定する。
【0059】
総合推定工程#140は、覚醒度推定工程#110~#130における推定結果に基づいて、運転士Mの覚醒度を総合的に推定する工程である。総合推定工程#140では、アンサンブル学習によって運転士Mの覚醒度を総合的に推定して、より精度の高い覚醒度推定値を求める。
【0060】
動作指令工程#150は、総合推定工程#140における推定結果に基づいて、警報提示装置10に動作を指令する工程である。動作指令工程#150では、総合推定工程#140において推定した総合推定値に基づいて、警報提示装置10に動作を指令する。その結果、警報提示装置10が所定の警報を運転士Mに提示する。
【0061】
次に、この発明の実施形態に係る覚醒度推定装置の動作を説明する。
ステップ(以下、Sという)100において、運転士Mの特徴点のフレーム毎の画像に基づいて、多変量解析によって運転士Mの覚醒度を覚醒度推定部5が推定する。
図1に示す特徴点抽出部3bが出力する特徴点画像データに基づいて、特徴量算出部5aが眠気特徴量を算出し、算出後の眠気特徴量を眠気特徴量データとして特徴量算出部5aが多変量解析部5bに出力する。特徴量算出部5aが算出する眠気特徴量に基づいて、運転士Mの覚醒度を数1によって多変量解析部5bが推定し、推定後の覚醒度推定値を覚醒度推定値データとして総合推定部8に多変量解析部5bが出力する。
【0062】
S110において、運転士Mの特徴点のフレーム毎の画像に基づいて、機械学習によって運転士Mの覚醒度を覚醒度推定部6が推定する。運転士Mのマスクされていない方の目画像又は口画像に基づいて、
図1に示す覚醒度推定部6が機械学習によって運転士Mの覚醒度を推定する。目・口画像切出部3cが切り出した運転士Mのフレーム毎の目画像又は口画像に基づいて、画像ディープラーニングによって運転士Mの覚醒度を覚醒度推定部6が推定する。例えば、運転士Mの口がマスクによって隠されている場合には、運転士Mの目画像に基づいて運転士Mの覚醒度推定値を目画像判定モデルによって目画像判定部6aが推定し、この覚醒度推定値を覚醒度推定値データとして総合判定部6cに目画像判定部6aが出力する。一方、運転士Mの目が保護眼鏡によって隠されている場合には、運転士Mの口画像に基づいて運転士Mの覚醒度推定値を口画像判定モデルによって口画像判定部6bが推定し、この覚醒度推定値を覚醒度推定値データとして総合判定部6cに口画像判定部6bが出力する。目画像判定部6aが判定した覚醒度推定値と、口画像判定部6bが判定した覚醒度推定値とを総合判定部6cが総合的に判定して、判定後の運転士Mの覚醒度推定値を覚醒度推定値データとして総合推定部8に出力する。
【0063】
S120において、運転士Mの特徴点の時系列画像に基づいて、機械学習によって運転士Mの覚醒度を覚醒度推定部7が推定する。覚醒度推定部7が時系列ディープラーニングによって運転士Mの覚醒度を推定する。
図1に示す特徴点抽出部3bが抽出した運転士Mのフレーム毎の目画像又は口画像に基づいて、運転士Mの目の開き具合及び運転士Mの口の開き具合を目・口開度算出部7aが数2によって算出する。その結果、運転士Mの目の開き具合及び運転士Mの口の開き具合を目・口開度データとして目・口開度算出部7aが時系列データ化部7cに出力する。顔検出部3aが検出した運転士Mのフレーム毎の顔画像に基づいて、運転士Mの顔領域の画像の中心座標の変位を顔変位算出部7bが数3によって算出し、運転士Mの顔変位Δx,Δyを顔変位データとして顔変位算出部7bが時系列データ化部7cに出力する。
【0064】
目・口開度算出部7aが出力する目・口開度データと、顔変位算出部7bが出力する顔変位データとを時系列データ化部7cが時系列データ化し、時系列データを時系列データ化部7cが時系列データ解析部7dに出力する。その結果、学習済みの時系列解析モデルに未知の時系列データを適用して運転士Mの覚醒度を時系列データ解析部7dが推定し、解析後の運転士Mの覚醒度推定値を覚醒度推定値データとして総合推定部8に出力する。
【0065】
S130において、覚醒度推定部5~7の推定結果に基づいて、総合推定部8が運転士Mの覚醒度を総合的に推定する。覚醒度推定部5~7の推定結果からアンサンブル学習によってより精度の高い覚醒度推定値を総合推定部8が総合的に推定する。覚醒度推定部5~7が推定した学習済みの各モデルによる覚醒度推定値を、総合推定部8がメタモデルによって取りまとめて、この覚醒度推定値を特徴量として総合推定部8が学習し、精度の高い覚醒度推定値を総合推定部8が推定する。推定後の総合推定値を総合推定値データとして動作指令部9に総合推定部8が出力する。
【0066】
S140において、総合推定部8の推定結果に基づいて、動作指令部9が警報提示装置10に動作を指令する。総合推定部8が出力する総合推定値データに基づいて、総合推定部8が推定した総合推定値に応じた警報を警報提示装置10が提示するように、警報提示装置10に警報提示動作を動作指令部9が指令する。
【0067】
この発明の実施形態に係る覚醒度推定方法、覚醒度推定装置及び覚醒度推定プログラムには、以下に記載するような効果がある。
(1) この実施形態では、運転士Mの特徴点のフレーム毎の画像に基づいて、機械学習によって運転士Mの覚醒度を推定するとともに、運転士M者の特徴点の時系列画像に基づいて、機械学習によって運転士Mの覚醒度を推定し、これらの覚醒度の推定結果に基づいて、運転士Mの覚醒度を総合的に推定する。このため、運転士Mの特徴点のフレーム毎の画像に基づく覚醒度推定値と、運転士Mの特徴点の時系列画像に基づく覚醒度推定値とを互いに補完することによって、より一層高精度に覚醒度推定値を求めることができる。
【0068】
(2) この実施形態では、ディープラーニングによって運転士Mの覚醒度を推定する。このため、運転士Mの特徴点の画像データから自動的に特徴点を抽出し、高精度に運転士Mの覚醒度を推定することができる。
【0069】
(3) この実施形態では、運転士Mの特徴点の画像に基づいて、多変量解析によって運転士Mの覚醒度を推定する。このため、運転士Mの特徴点の画像を解析することによって、瞬目などの特徴量から眠気特徴量を抽出し、主成分回帰分析などによって覚醒度を推定することができる。
【0070】
(4) この実施形態では、アンサンブル学習によって運転士Mの覚醒度を総合的に推定する。このため、精度の高いモデルを構築することができ、運転士Mの覚醒度をより一層高精度に推定することができる。その結果、例えば、多変量解析、画像ディープラーニング又は時系列ディープラーニングなどによる運転士Mの覚醒度の推定結果を互いに補完することによって、より精度の高い覚醒度推定値求めることができる。
【0071】
(5) この実施形態では、運転士Mの覚醒度の総合的な推定結果に基づいて、運転士Mに所定の警報を提示する警報提示装置10に動作を指令する。このため、運転室内の運転士Mの覚醒レベルの低下を検知して運転士Mに警報を提示することができる。
【0072】
(6) この実施形態では、運転士Mの目又は口がマスクされているときに、マスクされていない方の目画像又は口画像に基づいて、機械学習によって運転士Mの覚醒度を推定する。このため、運転士Mの特徴点の画像を機械学習によって解析し、運転士Mの特徴点がマスクされているか否かを正確に判定し、マスクの有無に応じて運転士Mの覚醒度を機械学習によって正確に推定することができる。その結果、感染症予防や花粉症対策のためにマスクを運転士Mが着用している場合や、前方確認時の視認性向上及び疲労軽減のために保護眼鏡を運転士Mが使用している場合であっても、運転士Mの覚醒度を正確に推定することができる。
【0073】
この発明は、以上説明した実施形態に限定するものではなく、以下に記載するように種々の変形又は変更が可能であり、これらもこの発明の範囲内である。
(1) この実施形態では、推定対象者が運転士Mである場合を例に挙げて説明したが、推定対象者が車掌である場合についても、この発明を適用することができる。また、この実施形態では、推定対象者が鉄道車両の乗務員である場合を例に挙げて説明したが、自動車、航空機又は船舶などの交通機関の乗務員が推定対象者である場合についても、この発明を適用することができる。さらに、この実施形態では、プラント、工場又は工事現場などで使用される機械、器具又は装置などを操作する作業者などが推定対象者である場合についても、この発明を適用することができる。
【0074】
(2) この実施形態では、列車内の運転室内の運転士Mの頭部画像データに基づいて、顔検出装置3及び覚醒度推定装置4が学習済みのモデルを決定する場合を例に挙げて説明したが、顔検出装置3及び覚醒度推定装置4によって学習済みのモデルを決定する場合にこの発明を限定するものではない。例えば、運転シミュレーション装置や実験室内の被験者を推定対象者として、この被験者の頭部画像データに基づいて学習済みのモデルを決定し、この学習済みモデルを顔検出装置3及び覚醒度推定装置4が使用して、実際の列車の運転室内の運転士Mの覚醒度を推定する場合についても、この発明を適用することができる。また、この実施形態では、顔画像データを学習用データ、評価用データ及び検証用データに分割して学習済みモデルを決定する場合を例に挙げて説明したが、顔画像データを学習用データ及び評価用データに分割して学習済みモデルを決定する場合についても、この発明を適用することができる。さらに、この実施形態では、アンサンブル学習の手法としてスタッキングを使用する場合を例に挙げて説明したが、アンサンブル学習の手法をスタッキングに限定するものではない。例えば、独立に多数のモデル(弱学習器)を作成し、このモデルが予測した結果を多数決で決めるバギング(bagging)や、独立に多数のモデル(弱学習器)を作成し、k個目のモデルをもとにk+1個のモデルを構成し、このモデルが予測した結果を多数決で決めるブースティング(boosting)などの手法を使用してアンサンブル学習を行う場合についても、この発明を適用することができる。
【符号の説明】
【0075】
1 覚醒レベル低下防止システム
2 撮影装置
2a 赤外線照射器
2b 近赤外線カメラ
3 顔検出装置
3a 顔検出部
3b 特徴点抽出部
3c 目・口画像切出部
3d マスク判定部
4 覚醒度推定装置
5 覚醒度推定部
5a 特徴量算出部
5b 多変量解析部
6 覚醒度推定部
6a 目画像判定部
6b 口画像判定部
6c 総合判定部
7 覚醒度推定部
7a 目・口開度算出部
7b 顔変位算出部
7c 時系列データ化部
7d 時系列データ解析部
8 総合推定部
9 動作指令部
10 警報掲示装置
M 運転士(推定対象者)
EAR 目アスペクト比
MAR 口アスペクト比
h 高さ
W 幅
Δx 横方向の顔変位
Δy 縦方向の顔変位