駕駛者監控系統(Driver Monitoring System)

Ray Lin
學以廣才
Published in
12 min readSep 1, 2020

駕駛者監控系統最早是於2006年由 Toyota所提出,並導入其Lexus 車款,用以監控駕駛者的狀態,並且可以與碰撞預防系統共同運作。可為主動DMS和被動DMS。

  • 被動DMS根據方向盤的轉向和行駛軌跡來判斷駕駛員的狀態。
  • 主動DMS通常由攝像機和近紅外技術啟用​​,可通過眼瞼閉合,眨眼,注視方向,打哈欠和頭部運動來檢測駕駛員的狀態。

LS 460首次裝的主動DMS,其攝像機安裝在轉向柱的頂部蓋子帶有六個內置的近紅外LED。起初,汽車製造商對主動DMS並不感興趣,因為他們認為DMS會增加汽車的成本,並且消費者可能不願意為此付費。然而,近年來發生的一系列事故,突顯了DMS在ADAS中的重要性,尤其是L2 / L3。隨著L2系統和即將誕生的L3系統的大量可用性,主動DMS從2018年開始飆升。換句話說,透過監控駕駛人,可確保駕駛時的安全需求。下圖為Tesla Model 3置於後視鏡上方的攝影機。

https://synergytek.com.tw/blog/2018/02/05/patent_watch_on_driver-monitoring-system/?variant=zh-tw

監控的目的

  • 是發現駕駛員走神(distraction)、疲勞(fatigue)或者打瞌睡(drowsiness),甚至出現無法駕駛的意外情況。例如 : 駕駛與乘客爭吵打架等。
  • 監控駕駛是否真的專注於路況,以便釐清事故發生時的汽車製造商、保險公司以及駕駛人的權責。目前至少有超過3000案與DMS駕駛監控系統相關的專利家族已經公開或是公告。
  • 另外,如果作為自動駕駛的研發階段,監控駕駛員可以提供駕駛行為的第一手數據,甚至用於仿真模擬系統中。

基於視覺的DMS面臨哪些挑戰?

目前基於視覺的非侵入式(non-intrusive)監測系統,主要的視覺線索包括面部特徵、手特徵或身體特徵。若檢測系統僅使用單個視覺線索時,系統強固性較差,容易被遮擋或光照變化干擾。所以會將多種視覺與其他線索進行組合,但相對的挑戰性變更高,具體條列如下 :

  1. 圖像質量多變的挑戰
    a) 最大的技術障礙是其在強光或弱光下的性能,這可能分別導致全白或全黑圖像
    b) 即使攝像頭在車內,成像質量也會受外界光線干擾。例如,陽光從側面車窗照射到人臉上時會產生陰陽臉現象,汽車進入隧道或者夜間行車時又會存在光線不足的問題。
  2. 駕駛員狀態多變的挑戰。
    a) 汽車駕駛員有不同性別、年齡、種族,可能會穿戴帽子、口罩、眼鏡(包括墨鏡),駕駛過程中頭部會出現各種姿態,這些複雜狀況會對算法與問題定義構成很大挑戰。
    b) 過多的錯誤警報,可能導致對用戶額外的干擾。
  3. 如何度量疲勞和嗜睡
    測量並定義疲勞與溫度可透過 :
    a) 檢視皮膚狀況,眼球運動,呼吸頻率,心率和大腦活動之間的關係。目前最有效方法是測量脈搏和心率變異性(HRV),但該技術仍不足夠成熟。
    b) 在亮度不同的圖像中會出現信噪比和對比度變化很大,圖像模糊不清和抖動以及在不同天氣和時間段內的光差異。
  4. 人臉檢測挑戰
    a) 人臉不同角度旋轉
    b) 存在化妝品,鬍鬚和眼鏡,蒙面的臉造成的差異;
    c) 不同表情(開心,哭泣等)的影響
    d) 實時處理要求
    e) 視線如何追踪
  5. 數據採集與標註的挑戰。
    a) 計算機視覺算法(如基於深度學習的算法)對圖像質量有較高要求,同一算法在不同攝像頭下性能差異可能會很大。
    b) 車載攝像頭成像質量與公開數據集圖像質量差異較大,為保證算法效果需要用車載攝像頭採集真實行車場景下的數據,這會極大增加數據採集難度與成本。
    c) 目前很少有樣本數據庫可以訓練模型。
  6. 平台計算能力的挑戰
    DMS延遲是由於計算能力,通信等不足引起的。車載計算平台升級換代較慢,現有的主流平台大多只有中低端ARM CPU/GPU,其算力甚至不如兩年前的手機芯片。在這樣的平台上運行諸如人臉檢測、關鍵點檢測、人臉識別、視線追踪、手勢識別等算法,構成很大挑戰。

一個基於駕駛員面部圖像處理的即時監控系統

根據政府的肇事原因統計,以「駕駛人因素」最高(台灣107年高速公路之事故肇因,約占總事故件數80.67%)。實際道路駕駛中,「未注意車前狀態」、「未依規定禮讓」、「轉彎未依規定」成了車禍肇事原因前三名。未注意車前狀態基本上和疲勞或是注意力不集中脫不了干系。

  • 如何測量疲勞? 疲勞與體溫,皮膚電阻,眼球運動,呼吸頻率,心率和大腦活動之間存在關係。通常,第一個也是最重要的疲勞跡象會在眼睛活動中出現,最重要的心理活動也與眼睛活動有關。
  • 如何測量測量駕駛員對道路的注意力;可以從駕駛員頭部和注視方向(gaze direction)估計駕駛員的注意力。

所以,一個以面部圖像處理來研究駕駛身心狀況的實時系統,通常以眼瞼閉合、眨眼、凝視方向、打哈欠和頭部運動等,來檢測駕駛狀態。基本分成兩個:

  1. 僅從眼部區域檢測駕駛員
  2. 從眼睛,臉部,頭部的其他區域檢測。
https://zhuanlan.zhihu.com/p/112322258

系統設計的挑戰與任務

從人臉識別來看:

  1. 旋轉角度,臉部遮擋
  2. 化妝品,鬍鬚,眼鏡,帽子的存在
  3. 表情(快樂,哭泣等) ; 照明條件 ; 實時處理要求。

眼睛檢測方式可分成兩大類:

  • 基於紅外光譜成像方法
  • 基於視覺的方法

除了眼睛,還可以檢測其他面部成分 — 嘴巴,鼻子和臉部突出(Salient)點。整合起來就是面部追踪,主要挑戰包括:

  • 從三維空間到二維空間的映射而讓一些信息丟失
  • 過於複雜的形狀或運動
  • 部分遮擋與不可控的環境光線變化
  • 實時追踪要求

與疲勞、分心和打瞌睡有關的特徵提取包括:

  • 與眼部區域有關:閉眼、眼瞼之間的距離、眨眼速度快、凝視方向和跳躍運動
  • 與嘴巴區域有關:開/閉
  • 與頭部有關:點頭、頭部姿勢和頭固定不變
  • 與面部有關:表情,性別,年齡

過去相關研究案例

Google MediaPipe

  • MediaPipe是google為研開人員為提供在移動通訊,雲端,Web和IoT設備的ML解決方案。
  • 谷歌近兩年持續在此領域發明了BlazeFace、BlazePlam、BlazePose算法,並將其開源到機器學習通用開發庫MediaPipe中。
  • Blaze 意為 "火焰",反應了這一系列算法從算法設計到實現都竭力追求“速度”的特點,方便對運行速度要求比較高的AR/VR開發者使用。

BlazeFace: Sub-millisecond Neural Face Detection on Mobile GPUs

  • BlazeFace是行動手機專用的毫秒級人臉辨識框架
  • google在2019/07發表,專為移動平台GPU量身定制
  • 受MobileNetV1 / V2啟發,參考Single Shot MultiBox Detector(SSD)修改而來的輕量級特徵提取網路
  • 研究團隊用6萬6千張影像來訓練,用2千張來自不同地區的影像來測試
  • 可用於特定任務的模型,像是2D、3D臉部關鍵點定位、輪廓或表面幾何計算,以及臉部特徵或表情分類等
  • 在旗艦設備上,它可以達到200–1000+FPS的運行速度。
https://sites.google.com/view/perception-cv4arvr/blazeface

MediaPipe Hands: On-device Real-time Hand Tracking

包含人手檢測和手部關鍵點檢測MediaPipe Hands (BlazePlam) 是一個實時設備上手部跟踪系統,可以從單個RGB攝像頭預測手部骨架,用於AR/VR應用。由兩個模型組成:手掌檢測器 & 手部關鍵點模型。同樣實現了在移動GPU上的實時推理速度和高預測質量。

https://ai.googleblog.com/2019/08/on-device-real-time-hand-tracking-with.html

BlazePose: On-device Real-time Body Pose tracking

  • 在推理過程中,該網絡為一個人產生33個身體關鍵點,並在Pixel 2手機上以超過30 FPS的速度運行。
  • 它特別適合實時用例,如健身追踪和手語識別。

Reference

--

--

Ray Lin
學以廣才

善歌者,使人繼其聲;善教者,使人繼其志。其言也,約而達,微而臧,罕譬而喻,可謂繼志矣