高階駕駛輔助系統模型壓縮與加速的應用場景

一、駕駛員安全檢測系統

有很多車載裝置(Onboard Device),例如行車記錄儀就是一種比較簡單的車載裝置。現在很多駕駛員都給車輛配備了車機,一些車機是執行在安卓系統上的,這樣的話,很多移動APP就可以方便地在車機上運行了。

高階駕駛輔助系統模型壓縮與加速的應用場景

我們在本章的開始提到了駕駛員狀態檢測系統,它的主要功能是檢測司機在開車過程中是否出現疲勞駕駛或者注意力不集中的情況。例如,有時司機在開車過程中喜歡看手機或者吸菸,如果我們想檢測司機在駕駛過程中是否出現了這些行為,應該怎麼做呢?現在比較常用的演算法流程是,先對司機進行人臉檢測,然後檢測其面部的關鍵點(例如眼睛和嘴巴)及五官的動態,這樣就能夠判斷出司機有沒有打哈欠或者他的眼睛是否閉上等瞬時狀態。其實,這些演算法都可以用深度模型來做,如果在車機上執行相關演算法的話,我們可以利用以上重點介紹的三類模型壓縮與加速技術進行模型壓縮,從而保證演算法的實時性。

高階駕駛輔助系統模型壓縮與加速的應用場景

具體來講,首先我們進行權重剪枝,將模型中不重要的權重修減掉,然後透過知識蒸餾的方式恢復模型精度,最後進行權重量化。目前用得較為廣泛的權重量化方式是INT8,原因是目前安卓系統的主流CPU架構支援INT8操作,並且精度損失也不會太大。

高階駕駛輔助系統模型壓縮與加速的應用場景

二、高階駕駛輔助系統

高階駕駛輔助系統(Advanced Driver AssistanceSystem,ADAS)可以看成一個級別相對比較低的自動駕駛系統。它具備三個主要功能:一是車道偏移預警(LaneDeparture Warning,LDW),即檢測車輛是否壓線或者越線;二是行人碰撞預警(Pedestrian CollisionWarning,PCW);三是前車碰撞預警(Forward CollisionWarning,FCW)。

高階駕駛輔助系統模型壓縮與加速的應用場景

在一般情況下,系統要先檢測出車道的位置,才能判斷出車輛在行駛過程中是不是出現了位置偏離。行人碰撞檢測和前車碰撞檢測是兩件事情,但其本質都屬於目標檢測任務。簡單來說,系統首先要檢測出車輛的前方是否有行人或者有其他車輛,然後估計前方行人或車輛與本車的距離,進而判斷是否做出預警。

高階駕駛輔助系統模型壓縮與加速的應用場景

估計前方行人或車輛的距離可用不同的方法,有基於學習的方法,也有傳統的非學習的方法,上述的目標檢測任務或者針對前方物體的距離估計,均可用深度模型來實現。這三種功能的實現都需要系統具有實時性,如果系統需要幾分鐘或更長時間才能檢測出結果,這就失去了安全檢測的意義。