DMS技術詳解 一

DMS技術詳解

DMS(Driver Monitor System)——駕駛員監控系統

DMS概述

DMS系統最開始的應用是監控駕駛員的狀態,以防止駕駛員疲勞,分神等危害駕駛過程的行爲發生。隨着計算機視覺技術的發展,現在DMS系統基本涵蓋了整個車載視覺解決方案。

傳統DMS功能分爲:

1、疲勞駕駛檢測

2、分心駕駛檢測

當前車廠提出的需求:

1、司機視線檢測

2、手勢識別(與車機交互)

3、人臉識別(不同的駕駛員調整座椅高度等個性化設置)

4、表情識別


在這裏插入圖片描述

疲勞檢測

何謂疲勞?百度百科上這樣解釋的

疲勞是一種主觀不適感覺,但客觀上會在同等條件下,失去其完成原來所從事的正常活動或工作能力

從我們主觀感受來看,判斷一個人是否疲勞,也就是這個人是否打哈欠了,是否閉眼了。從而轉換到計算機視覺中,就是檢測閉眼動作和打哈欠動作了,打哈欠也就是張嘴動作。

那麼,閉眼和張嘴動作如何識別?

目前常用的有兩種方法,第一種是人臉landmark,第二種是圖像分類

人臉landmark如下圖所示

在這裏插入圖片描述

對於眼睛來說,根據眼睛上眼瞼、下眼瞼,左右眼角的landmark座標來計算眼睛的開合程度

對於嘴巴亦是如此。

使用landmark方法,其優點就是思路比較簡單,只需要根據landmark的座標計算即可,其缺點也顯而易見,此算法精度跟landmark定位精度息息相關,如果landmark定位很準,那麼最終計算結果就很準。

使用圖像分類方法

在這裏插入圖片描述

此類方法對landmark的精度要求不是很高,這裏常用方法是收集正負樣本,訓練一個魯棒性比較強的分類器來對狀態進行判斷。直接由分類器來輸出最終的結果。

分心駕駛檢測

在駕駛過程中,一切注意力不在駕駛上的行爲都被稱爲分心行爲。例如,低頭找東西,看窗外的風景,接打電話,喝水,等等。所以在分心駕駛檢測算法中,就要對這些出現的動作全部檢出。

對於這些異常情況,可以將其分爲兩種。例如低頭或者看窗外都是跟人頭有關,如果能夠得到人頭姿態角度,那麼問題就可以解決;喝水,打電話等動作,都屬於動作識別,設計一個動作識別的算法也可以解決。

人頭姿態角算法
在這裏插入圖片描述

得到人頭姿態角度,一般有兩種方法。第一種是上文中提到的landmark,人臉上關鍵點的座標全部已知,使用PnP算法可以直接擬合出人頭三維角度;第二種是使用標記好的yaw,pitch,roll三個角度的人臉圖片直接訓練一個小型網絡,網絡輸出層直接回歸三個float量,簡單粗暴,精度較高,訓練數據集直接使用開源人臉數據集,無需標註。

動作識別算法
在這裏插入圖片描述

在DMS應用中,一般需要識別出打電話動作,喝水動作,抽菸動作。如果單純地將其是作爲動作行爲識別,使用LSTM或者3D-Conv算法,其計算消耗資源很嚴重,殺雞焉用牛刀?所以,一般有兩種比較簡單的方法。第一種是將此類的動作識別視爲目標檢測問題,例如打電話識別,就將手機視爲待檢目標,喝水檢測就將水杯視爲待檢目標。這種方法思路很簡單,但是有一個缺點就是,例如DMS攝像頭裝在汽車A柱,司機右手打電話,這時候成像畫面中是看不到手機的,所以這種場景下檢出率不高。另一種方法是將動作識別視爲單幀圖像分類任務,採集多種動作行爲下的圖片,人工標註監督信號進行訓練,使用分類器判斷最後的動作分類。

視線檢測

司機在駕駛過程中,其注視方向,也是一個值得關注的問題。

在這裏插入圖片描述

發佈了62 篇原創文章 · 獲贊 61 · 訪問量 15萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章