艾青松,張皓喆,嚴俊偉,3
(1.武漢理工大學 信息工程學院,武漢 430070;2.湖北大學 計算機與信息工程學院,武漢 430062;3.寬帶無線通信和傳感器網絡湖北省重點實驗室,武漢 430070)
隨著公路運輸需求不斷上升,重型卡車運輸成為主要陸運方式。商用車車聯網技術不斷發展,尤其是云計算與通信技術的進步,提高了重型卡車運輸的經濟性與便利性。快運行業具有時效要求高、夜間行駛較多、成本控制嚴格等特點,在防止異常駕駛行為方面需求較高[1]。當重型卡車駕駛員出現異常駕駛行為時,及時檢測并提醒,對保證駕駛安全和提高運輸效率十分重要。因此,在低照度條件下精準快速地檢測異常駕駛行為具有重要的現實意義。
目前,已有關于異常駕駛行為檢測方面的研究按照數據來源分為兩大類:車輛數據和生理特征。基于車輛數據的異常駕駛行為檢測,通過獲取相關車輛數據(例如速度、加速度、方向盤角速度等)來判定駕駛行為。這類方法易受到周圍環境影響,在面對不同的道路情況和車輛異常狀態時,準確率較低。隨著機器視覺的發展,基于生理特征的異常駕駛行為檢測成為主流方法,相比于其他方法,通過判斷駕駛員的異常動作(例如吸煙,接打電話等)來檢測的方法因受外界干擾少、檢測速度快等特點被廣泛應用[2]。
近年來,研究人員開始將深度學習算法應用于異常駕駛行為分析領域。文獻[3]將改進的YOLOv3 檢測算法用于重點關注異常駕駛行為特征,引入融合注意力模塊提高檢測效率。文獻[4]介紹了3 種新穎的深度學習網絡,分別為寬組密集網絡、寬組殘差密集網絡和替代寬組殘差密集網絡,并與傳統檢測網絡和現有檢測網絡進行比較,體現出其檢測精確度高與魯棒性強的優勢。文獻[5]介紹了一種時空間融合駕駛行為識別方法,通過兩流卷積神經網絡(Convolutional Neural Network,CNN)框架進行視頻識別,其中空間流CNN 從靜止幀中捕獲外觀信息,而時間流CNN 通過預先計算來捕獲幾個相鄰運動幀間的光流位移,綜合判斷異常駕駛行為。文獻[6]介紹了一種基于個人的分層駕駛員監控系統(Hierarchical Driver Monitoring Systems,HDMS),HDMS 的第1 層基于歷史駕駛數據判定異常駕駛行為,第2 層進一步判斷行為是否為瞌睡駕駛或分心駕駛。文獻[7]介紹了通過樣本圖像對深度神經網絡Mask R-CNN 改進,使之能夠識別更多種危險駕駛行為。文獻[8]介紹了一個端到端深度學習框架,通過融合卷積神經網絡和帶有注意單元的循環神經網絡對時間特征進行建模,捕捉顯著的駕駛行為特征。
傳統機器視覺檢測異常駕駛行為通常基于深度學習模型或面部特征[9]。在低照度條件下,通過圖像增強算法后,由于存在圖像信息量降低,像素點間向量差值減小,識別過程中出現關鍵細節丟失、噪聲較大、清晰度低、難以識別邊緣等問題,因此基于眼睛、嘴巴狀態的傳統檢測方式準確率較低[10]。此外,在此情況下基于深度學習模型的檢測方法速度較慢,難以滿足實時性要求。
本文提出一種基于自適應圖像增強的異常駕駛行為檢測方法,通過自適應伽馬(Gamma)校正圖像來提高圖像的亮度和信息熵,利用背景建模方法進行干擾剔除,從而得到檢測區域圖像。使用Canny雙閾值邊緣檢測技術得到頭部和手部輪廓,提高時間閾值,實現檢測異常駕駛行為的目的。
駕駛行為是指駕駛員在場景和周圍環境中,結合自身狀態來操縱車輛。駕駛行為是一個復雜的概念,具備隨機性和不確定性,通常被認為是發生交通碰撞的重要因素之一。如何快速、精準地判定異常駕駛行為在今天仍然被認為是一個具有挑戰性的話題[11]。異常駕駛行為檢測數據來源包括車輛數據和駕駛員生理特征兩個方面,生理特征指駕駛員在駕駛車輛時的身體機能狀態,例如疲勞、壓力、位置、動作等。通過監督位置和動作可檢測或預測駕駛員生理特征,駕駛員的動作被認為是駕駛員對周圍環境做出的反應。車輛數據指在行駛過程中車輛的狀態,駕駛員面對突發情況做出的反應,導致車輛出現急轉彎、急加速、急減速等現象,車輛數據反映出駕駛員做出異常駕駛行為的過程。在不同環境背景下,許多因素會導致車輛出現異常數據。通過車輛數據判斷駕駛行為需要隨著時間和外界情況的變化建立復雜模型,同時與道路特征(例如曲率、坡度、車道寬度),道路情況(例如干燥、潮濕),天氣情況(例如下雨、晴天、霧天、下雪、結冰),光線情況(例如白天、夜晚),交通情況(例如擁堵、暢通)等因素關系密切,因此通過車輛數據判定異常駕駛行為具有局限性。例如,當車輛出現長時間走走停停或急加速/急減速的情況時,難以判斷是否源于駕駛員異常駕駛行為還是交通擁堵導致,此方法易出現誤判,干擾駕駛員正常駕駛。
基于駕駛員生理特征的檢測可以實時反饋出駕駛員在做出異常駕駛行為時的變化,同時具有識別精確度高、魯棒性強的特點。異常駕駛行為包含喝酒、談話、發短信、打電話、吃飯、吸煙等。Kaggle發起的State Farm 駕駛員分心檢測比賽規定了6 種異常駕駛行為,其檢測原理是通過機器視覺識別出駕駛員的身體動作,定位駕駛員頭部以及手部位置并追蹤中心點坐標,通過判定肢體間的相互動作來識別異常駕駛行為[12]。在常見異常行為中,例如圖1 所示的吸煙、接打電話,手部出現在頭部周圍且持續一段時間,在發生此行為時,駕駛員注意力轉移到非道路信息,并且持續偏離駕駛目標,在這過程中極易發生交通事故。檢測駕駛員的手部出現頭部周圍的狀態,當持續時間過長并且與頭部位置距離過近時判定為發生異常駕駛行為。因此可以將檢測目標集中于判定手部和頭部相對位置。

圖1 不安全駕駛行為示例Fig.1 Examples of unsafe driving behavior
通過駕駛人的頭部、手部間距離來判定異常駕駛行為的方法需要確定關鍵點間的相對位置,并且融合距離閾值和時間閾值判斷異常駕駛行為。由于重卡駕駛員夜間駕車時間較長,在低照度情況下,通過傳統方法PERCLOS 和PMOT 進行檢測時,圖像細節容易丟失,駕駛員狀態難以精準檢測[13]。本文通過改進伽馬校正算法,對輸入圖像進行預處理,校正圖像亮度和對比度,來提高識別準確率。為剔除背景和周圍環境的干擾,首先利用背景建模提取駕駛員前景圖像,獲得駕駛員的駕駛信息。然后進行Canny 邊緣檢測,得出頭部、手部關鍵點相對位置,并且進行實時跟蹤監測。最后,當定位特征點后,根據歐氏距離進行計算,當頭部和手部特征點距離過近,持續時間超過時間閾值時,將此刻判定為發生異常駕駛行為,同時進行報警,如圖2 所示。

圖2 基于自適應伽馬校正的異常駕駛行為檢測方法框架Fig.2 Framework of abnormal driving behavior detection method based on adaptive Gamma correction
1.2.1 低照度下的改進自適應伽馬校正
人眼對低照度下的感知能力強于高照度下的感知能力,即在暗光的情況下能分辨出更多細節,因此亮度校正是伽馬校正的重點。伽馬校正表達式為:
其中:I表示輸入圖像的灰度值,歸一化處理后取值[0,1];f(I)表示輸出圖像強度;c和γ為校正系數,通常c取值[0,1],不同的γ會對圖像強度有不同的拉伸效果,當γ>1 時,圖像強度降低,當γ<1 時,圖像強度提高[14]。
由于閾值設定固定,因此在進行伽馬校正時對所有圖像的校正效果相同。對于不同的灰度值和顯示效果的圖像,校正效果單一,部分重要信息缺失。因此本文引入BIGA 方法[15],通過雙閾值改進伽馬函數,可以在提高暗部光強度的同時抑制亮區增強,防止彩色圖像增強過度,其表達式如下:
其中:x是輸入圖像的灰度值;γ是可調節變量,用以調整圖像增強程度,通常取γ=2.5;α是調節參數,控制增強圖像亮度的取值范圍為[0,1];Ga(x)是一個凸函數,用于增強圖像的暗區域;Gb(x)是一個凹函數,用于抑制圖像的亮區域。最終增強算法的調整函數G(x)是由Ga(x)和Gb(x)加權得到的。然而公式中α、γ參數均為全局閾值并且手動設置,對于不同環境和駕駛因素,提升效果不明顯。
針對不同照度和圖像色彩的差異,改進算法中的參數為自適應調節,分別通過圖像平均灰度值和圖像信息熵來改進α、γ的值進而校正圖像。自適應閾值的改進解決了傳統算法對圖像改善后出現對比度弱、亮度提升少、邊緣細節模糊的問題。對于照度不同的圖像,通過灰度值范圍確定α值的范圍進行自適應調節。將RGB 3 個通道的分量按照一定的比例計算得到灰度圖像,根據文獻[16]和檢測圖像特征得出分量比例,RGB 格式圖像平均灰度值ggray計算公式如下:
計算原RGB 圖像3 個通道得到圖像灰度值,通過映射函數得到α值,提高校正圖像效果,得到更多圖像細節并傳入異常駕駛行為識別模型,提高精確度和檢測效率。通過映射函數得到α值,即ggray→α,表達式如下:
將灰度值取值范圍歸一化為[0,1],α'的取值范圍為[0.3,0.7],其作用是校正圖形亮度。
基于圖像信息熵確定閾值γ。當圖像內容豐富,信息量大時,圖像信息熵大;當圖像內容單一,信息量小時,圖像信息熵小。對于信息熵不同的圖像,通過改變原函數的γ值提升圖像顯示效果,提高對比度,以顯示更多圖像細節。通過映射函數得到γ值,即H→γ,表達式如式(7)所示:
其中:γ為原函數閾值,通常取值為2.5;γ'為改進后的閾值,取值范圍為[2,3];將圖像的鄰域像素灰度均值(j)作為灰度分布的空間特征量,與像素灰度值(i)組成特征二元組,記為(i,j),i、j分別表示像素的灰度值、鄰域灰度均值,取值范圍均為[0,255]。使用圖像信息熵來自適應調整γ參數,通過改進亮度分量校正圖像來提高不同對比度圖像的質量,以顯示更多的細節信息[17]。
常見圖像均使用RGB 色彩空間表示,但直接對RGB 圖像進行增強容易導致圖像色彩失真,且運算量巨大。HSV 是一種將RGB 色彩空間中的點在倒圓錐體中表示的方法,它描述比RGB 更準確的感知顏色聯系,并仍保持計算簡單的特點。HSV 表示Hue、Saturation、Value[18],且相互間有獨立性,在對其任一個通道進行校正時,不會出現色彩失真的現象。將輸入圖像轉換為HSV 空間后,對其V分量進行伽馬校正后轉回RGB 圖像進行表示。該流程如圖3 所示。將改進函數融合到原雙閾值伽馬函數中,在校正圖像亮度的同時,根據圖像信息熵自適應提高對比度,使圖像顯示出更多細節信息,表達式如下所示:

圖3 改進伽馬校正的流程Fig.3 Procedure of improving Gamma correction
1.2.2 關鍵點定位
常規駕駛行為檢測方法中,背景和環境干擾導致檢測準確率差。經過自適應伽馬校正并將駕駛員和背景灰度差值提升后,根據歷史像素點和像素差值變化消除背景,可以精準高速地排除背景區域對輪廓識別的影響[19]。
前景圖像的提取效果主要依靠背景消除的準確程度,目前效果較好的背景建模方法包括改進高斯混合模型2(Mixture of Gaussian Model 2,MOG2)和K-近鄰(K-Nearest Neighbor,KNN)[20]方法。MOG2方法為每個像素點選擇一個合適的高斯分布前景分割器,這樣一來,亮度變化具有較強的魯棒性。通過創建背景對象,檢測并標記目標區域。KNN 方法將當前像素點與歷史信息進行比較,做出前景背景的判斷,如果超過差別閾值則歸于“潛在背景點”,如果歷史信息中屬于潛在背景點的個數超過設定閾值,則將此區域歸為背景并記錄于歷史信息中[21]。
提取出前景圖像后通過邊緣檢測將灰度級的突變、顏色的突變、紋理結構的突變等分割開。邊緣是一個區域的結束,也是另一個區域的開始,利用該特征可以對圖像中頭部、手部的輪廓進行檢測。常用的邊緣 檢測算子有Sobel、Prewitt、Roberts、Canny、Laplacian 等[22],其特點如表1 所示。

表1 不同邊緣檢測算子對比 Table 1 Comparison of different edge detection operators
在低照度條件環境下,由異常駕駛行為檢測條件可知,需檢測頭部、手部輪廓,并且要求對抗噪聲干擾能力高。本文在周圍環境光變化較大的情況下進行自適應伽馬校正,得到邊緣增強后的圖像,并利用Canny 算子進行邊緣檢測,不僅對弱化的邊緣更加敏感[23],而且能保留圖像特征。
在檢測目標區域時,為避免檢測框具有大量交集區域,需將相交輪廓融合從而得出完整的頭部輪廓。通過判定輪廓交集的方法,得到輪廓相鄰條件并進行取反,通過式(10)和式(11)判斷相鄰輪廓位置。
將得到的駕駛員運動圖像進行邊緣連接,得到完整的駕駛員輪廓。利用邊緣檢測描繪出頭部和手部的輪廓,計算圖形中心矩,確定質心坐標作為駕駛員和手部的關鍵點定位。圖像空間矩的計算式[24]如式(12)所示:
其中:array(x,y)是像素(x,y)處的像素值。可以看出,圖像空間矩的影響因素包含像素值大小和像素位置;當i=j=0 時,moo為圖像的零階空間矩,此時與像素位置無關;當j=0,i=1 或i=0,j=1 時,m01、m10成為圖像一階空間矩,在空間位置上只與像素的行或列有關。根據圖像空間矩原理,得到圖像質心坐標公式如下:
1.2.3 基于手眼距離的異常駕駛行為檢測
通過定位駕駛員頭部、手部位置進行異常駕駛行為判定。由第1.2.2 節獲得輪廓中心距坐標后,為了更明確地表示兩中心距間的相對位置,將笛卡爾坐標系轉換為極坐標系。
極坐標系屬于二維坐標系,在保證中心區域的高分辨率情況下降低外圍采樣率,在保證重要區域信息處理完成情況下降低數據處理數量,從而增加處理速度,是一種類似人類視覺機制的處理方法[25]。圖4 為圖像在對數極坐標系和直角坐標系之間的映射關系示意圖,其中圖4(a)為笛卡爾坐標系,圖4(b)為極坐標系。手部的中心距位置總是分布在頭部周圍,以頭部中心矩為極點O,將手部中心距設為圖像內任意一點M(ρ,θ)。由于笛卡爾坐標系原點位于左上角(0,0),y軸正方向向下,因此做出如下調整:轉換后的極坐標系y軸方向向上,并且以x軸正半軸方向為0°起始,沿順時針方向旋轉360°回到起始角度,如圖4 所示。

圖4 坐標系轉換Fig.4 Coordinate system transformation
在圖4 中,對輸入視頻中的異常幀進行駕駛行為判定,將頭部關鍵點作為極點O,則手部關鍵點為M(ρ,θ)。極徑ρ為頭部與手部之間的距離,θ為頭部與手部間的夾角。設定距離閾值d1,當ρ≤d1時,記錄開始時間t1,當ρ>d1時,記錄異常駕駛行為結束時間t2。設定時間閾值t3,當t2-t1≥t3時,融合時空間因素判定異常駕駛行為。當ρ>d1時,記錄每段正常駕駛行為,并且記錄正常駕駛時間[26]。
目前,國內外文獻和開源數據集中針對異常駕駛行為的有效數據集較少,數據集中只包含光照固定的場景,不適用于本文不同照度下的異常駕駛行為識別。為驗證文中提出方法的有效性,招募4 名實驗者,要求駕駛經驗在2 年以上,健康狀態良好,無睡眠障礙,且在測試前無飲酒、熬夜等行為。本文采用固定攝像機記錄重卡駕駛員在日常駕駛時做出的動作行為并作為測試數據集,以驗證算法效果。
測試視頻分辨率為1 280×720像素,幀率為60幀/s。測試駕駛員在模型駕駛中進行接打電話、吸煙和正常駕駛3 類駕駛行為,在檢測中設置不同背景及不同程度的目標遮擋,增大檢測難度。通過數據增強對實驗數據進行處理,改變數據集中視頻圖像的光線強度,模擬陰天、夜間、強光環境下的駕駛,并作為異常駕駛行為檢測數據集。通過自適應伽馬校正方法對數據集進行預處理,結果如圖5 所示。對數據集的圖像進行預處理后,每類駕駛狀態的樣本數目如表2 所示。

表2 駕駛行為的數據樣本 Table 2 Data samples of driving behavior 單位:次

圖5 圖像預處理前后的對比Fig.5 Comparison of the graph before and after preprocessing
使用預處理前后的數據集進行異常駕駛行為檢測,采用以下評價指標來顯示改進伽馬校正的性能:
1)準確率(Precision)。準確率是指所有檢測出的目標中檢測正確的概率,表達式如下:
2)召回率(Recall)。召回率是指所有的正樣本中正確識別的概率,表達式如下:
其中:TTP、FFP、FFN分別為每組實驗平均異常駕駛行為次數、正常駕駛行為次數、漏檢異常駕駛行為次數。
3)幀率(Frame Per Second,FPS),FPS 是指畫面每秒傳輸幀數。
2.3.1 不同閾值下的伽馬校正效果
針對不同照度的圖像,自適應伽馬校正將整體亮度提升,改善暗部區域細節和曝光過度,增加圖像邊緣區域的對比度,保留更多邊界細節,使圖像顯示更加清晰。改進校正算法中不同γ值對圖像校正的效果不同;當γ<1 時,在低灰度范圍內,動態變化增大;進而圖像對比度增強,圖像整體的灰度值變大。當γ>1 時,低灰度范圍的動態變化減小,降低了圖像低灰度區域的對比度,整體的灰度值變小。
對于不同照度的圖像,根據圖像平均灰度值映射α值。處理低照度圖像時,改進雙閾值伽馬函數中心點上移,使得圖像整體灰度值增加,圖像顯示更加明亮,同時抑制高亮區域,增強暗部區域細節。在處理高照度圖像時函數中心點下移,使得圖像輪廓更加清晰。對比結果如圖6 所示。

圖6 不同參數下的伽馬校正效果Fig.6 Gamma correction effect under different parameters
2.3.2 改進結果對比分析
為驗證本文方法的有效性,將視頻數據集根據照度差異分為4 組數據,每段視頻數據為900 s,幀率為60 幀/s。分別為晴天駕駛測試集、強光駕駛測試集、陰天駕駛測試集、夜間駕駛測試集。每組分為正常組和對照組,正常組為貨車司機駕駛視頻數據,對照組為經過自適應伽馬校正后的正常組視頻數據。將測試集循環,并將其分為9 段測試數據進行實驗,每次實驗中包含異常駕駛行為和正常駕駛行為,所有實驗參數均相同,結果如表3 所示。

表3 模型改進前后的性能對比 Table 3 Comparison of model performance before and after improvement
將自適應伽馬校正前后異常駕駛行為檢測效果進行對比,由表3 可以看出經過自適應伽馬校正后模型的檢測性能提升明顯。特別是陰天和夜間的情況,準確率分別提升10.9 和11.9 個百分點,召回率均提升51.8 個百分點。
為了對比不同圖像增強方法在異常駕駛行為檢測中的表現,針對檢測準確率和幀率兩個指標,與文獻[27]中基于單尺度Retinex(SSR)方法和文獻[28]中多尺度Retinex(MSR)方法以及自適應直方圖均衡化(簡稱直方圖均衡化)方法進行比較。對比實驗分為9 次,除圖像校正方法外,每次實驗參數完全相同,結果如圖7 所示。由圖7 可以看出,本文方法檢測的平均準確率高于其他方法。在檢測速度方面,本文方法優于SSR 和MSR 方法。但由于直方圖均衡化方法的模型簡易,其檢測速度略高于本文方法,檢測準確率卻遠低于本文方法。本文方法的核心在于依賴灰度值和信息熵實現自適應校正圖像,增加圖像邊緣信息和對比度,更加貼合邊緣檢測原理,因此檢測模型性能更強。

圖7 暗光條件下不同增強方法的性能對比Fig.7 Performance comparison of different enhancement methods in dark conditions
本文提出一種基于自適應伽馬校正的異常駕駛行為檢測方法,將不同照度的駕駛行為視頻校正后進行檢測,通過背景建模清除干擾,得到駕駛員頭部和手部的輪廓。在此基礎上計算手部與頭部關鍵點間距離,通過時空間融合判定異常駕駛行為。實驗結果表明,在不同照度條件下,本文方法能夠對異常駕駛行為進行高效、精準檢測。下一步將對駕駛員臉部追蹤方法進行研究,提高檢測準確率,達到實時監測的目的。