李夢宇,元 輝,付華勇,孫真真
(山東大學 信息科學與工程學院,山東 濟南 250000)
?
應用于汽車安全駕駛的手部跟蹤算法
李夢宇,元 輝,付華勇,孫真真
(山東大學 信息科學與工程學院,山東 濟南 250000)
為了提高汽車駕駛的安全性,提出了利用方向盤檢測與手部跟蹤的方法,對駕駛員的操作行為進行分析,并能對潛在的危險駕駛行為預警,進而減少意外事故的發生。該方法首先采用邊緣檢測和霍夫變換檢測出方向盤所在的位置坐標,然后以正常駕駛的手部狀態為模板檢測并跟蹤手部。實驗結果表明,所提方法可以有效地跟蹤駕駛員的手部動作。
安全駕駛;方向盤檢測;手部跟蹤
交通事故使人們的生命財產安全受到巨大威脅。如果在事故發生前,能夠對潛在的危險預警,就可以有效降低交通事故發生的概率。在傳統的汽車安全駕駛分析中,研究者常常通過瞳孔的張合度來判斷駕駛員是否在疲勞駕駛[1],由于每個人的眼睛張合度不同,此方法并不能有效地判定每位駕駛員的疲勞狀態。此外,也有研究人員通過判斷視頻場景中手的數目(是否為2)判斷駕駛員是否規范駕駛[2]。如果僅僅通過手部數量的檢測,即便檢測出駕駛員的2只手全部在場景范圍內,駕駛員也仍然有可能存在不規范駕駛行為。
由此,本文提出一種應用于汽車安全駕駛的手部跟蹤算法。通過對視頻場景中的圖像進行直方圖均衡化、開運算與輪廓繪制以及霍夫圓檢測等處理,準確檢測出方向盤的位置坐標,然后以左右兩只手部的圖像為模板對場景里的駕駛員手部進行模板匹配,實現手部的跟蹤定位。通過判定手部是否在方向盤標定的范圍內運動,判斷駕駛員是否正常駕駛。如在檢測疲勞駕駛時,若檢測過程中發現手部坐標長時間無變化,則判定駕駛員有極大可能處于疲勞駕駛的狀態。再者如酒后駕駛、不規范駕駛以及駕駛員休克等情況,若檢測到雙手長時間超出方向盤所在的范圍或者檢測不到雙手,則會發出警告,從而有效提高駕駛員的人身安全。圖1所示,提出算法主要包括方向盤檢測與手部跟蹤兩個部分。

圖1 手部跟蹤算法系統框圖
方向盤具有兩種直觀的特征,即接近圓形、顏色較深。因此,提出首先對待檢測的圖像進行預處理;然后繪制處理后的圖像的邊緣輪廓;最后利用霍夫變換檢測圖像中的圓形區域,確定方向盤的位置。
1.1 預處理
為了增強對比度,使方向盤相對于其他區域亮度對比更加突出,首先對圖像進行直方圖均衡;然后進行開運算消除圖像中的細小物體;為了使方向盤的檢測更加精準,采用邊緣檢測,保留方向盤所在區域的強邊緣,并在此基礎上提取方向盤的邊緣輪廓。
1.1.1 直方圖均衡化
在實際應用中,外界光線紛繁復雜,方向盤各部分亮度不同,難以準確地用灰度值判斷方向盤的位置。因此采用直方圖均衡化處理,增強圖像對比度。圖2是原始圖像經過直方圖均衡化處理后的圖像及相應的直方圖。

圖2 原始圖像經過直方圖均衡化處理后的圖像及相應的直方圖
1.1.2 開運算
在汽車中控區域,除了方向盤外還存在其他圓形區域(如各種儀表盤)。這些區域亮度通常較弱,在經過直方圖均衡處理后,可以通過開運算將這些區域作為細小物體消除。
開運算是先腐蝕后膨脹的過程,其可以用來消除小物體、平滑較大物體的邊界[3]。
腐蝕是求局部最小值的操作,使圖像中的高亮區域逐漸減少。它是一種消除邊界點,使邊界向內部收縮的過程,其腐蝕的數學表達式為

(1)
式中:src是將原圖與核卷積操作的函數;dst是膨脹處理后的圖像;(x,y)是原圖像中的像素點坐標;(Δx,Δy)是鄰近像素與當前像素之間的水平、垂直距離。膨脹與腐蝕相反,是求局部最大值的操作,如式(2)所示。

(2)
圖3是腐蝕與開運算處理后的圖像,可見儀表盤部分已被消除。

圖3 腐蝕與開運算處理后的圖像
1.1.3 邊緣檢測及強邊緣保留
為提高霍夫變換的速度與精度,在經過開運算處理后,需采用Canny算子檢測邊緣并繪制邊緣輪廓。輪廓是一系列的像素點集合,即圖像中的一條曲線。
首先對圖像進行一階微分運算,求得梯度最大值,最后通過判定像素點的幅值是否大于閾值來提取邊界[4]。若像素點的幅值大于高閾值,則保留為邊緣像素,若其小于低閾值時則棄用,若其介于二者之間并且能連接到一個高于高閾值的像素點時被保留。圖4所示為邊緣圖像及強邊緣保留后的圖像。

圖4 邊緣圖像及強邊緣保留后的圖像
1.2 霍夫圓檢測
對于平面上的圓只需要知道圓心坐標(x0,y0)以及半徑r,即可確定圓上所有點的坐標(x,y),在極坐標上表示為[5]
(3)
由于圓心位于圓上的每個點的模向量(垂直于切線并指向圓心)上, 圓心即是圓上所有點的模向量的交點。因此,邊緣點對應的三維空間曲線交于一點的個數越多,其經過的共同圓上的點就越多,進而判斷圓心坐標,然后根據設定的圓的半徑來選取最優的圓。
(4)
式中:(x, y)表示圖像中的像素點;(X, Y) 表示圓檢測后的圓心坐標;Sx,Sy分別表示x與y方向的梯度;D表示斜率指定的直線上的每一個像素點的集合;max表示通過累加器得到的所有大于給定閾值并且大于其所有近鄰的候選中心,Rmin與Rmax分別表示設定的圓的最小半徑和最大半徑。圖5是原始圖像直接進行霍夫圓檢測與經過邊緣檢測等預處理后的圖像進行霍夫圓檢測的對比圖。

圖5 霍夫圓檢測結果
在手部識別跟蹤研究中,常常通過訓練大量手部樣本,進而得到手部特征(如Haar特征[6])實現手部的識別跟蹤,但是該方法需要建立龐大的數據庫[7],并且運算復雜度較高。為了迅速識別手部區域并進行跟蹤,采用模板匹配來檢測手部并跟蹤的。
首先從訓練圖像中選取手部區域,并作為模板,然后在測試圖像中遍歷搜索,找到與模板最匹配的區域作為手部區域,如圖6所示[8]。
在匹配過程中,采用平方差匹配法[9]作為匹配準則,即
(5)
式中:T為模板圖像;I為搜索圖像中與模板大小相對應的區域。圖7所示為模板匹配檢測到的手部區域。

圖6 模板匹配示意圖

圖7 手部模板匹配的檢測標識
為驗證算法的有效性,采用公交駕駛員的駕駛視頻在PC端(Windows7系統,32位,4 Gbyte內存)進行實驗仿真。圖8所示是不同幀下的方向盤的圓心坐標及半徑和手部坐標。圖8中(X,Y) 表示圓心坐標,R表示圓半徑,(Ax,Ay)表示左手坐標,(Bx,By)表示右手坐標。

圖8 圓心坐標及半徑的折線圖和相應檢測結果圖
為判斷駕駛員是否在安全駕駛,通過判定手部是否在指定區域運動來確定。首先定義規范駕駛情況下,手部中心坐標與方向盤的中心之間的最遠和最近距離dmax和dmin。當手部中心坐標與方向盤中心的距離D位于dmax和dmin之間時,即
(6)
判定駕駛員駕駛行為規范;當D>dmax或D 本文主要研究駕駛員手部操作規范情況的判別,以不同于疲勞駕駛的角度進行危險駕駛預警,對包括疲勞駕駛、酒后駕駛以及駕駛員意外情況發生等情形下的不符合規范的行為能實現正確檢測。由于本文所提的安全駕駛檢測算法目前并無一致的國際衡量標準,因此有待進一步完善與研究。 [1]徐建軍. 基于人臉特征的列車司機疲勞駕駛檢測與識別系統研究[D]. 成都:西南交通大學,2010. [2]郭克友,紀彬,陳雪潔,等.一種方向盤上操作手數目檢測算法[J].計算機工程與應用,2015,51(10):177-181. [3]毛星云,冷雪飛.Opencv3編程入門[M].北京:電子工業出版社,2015. [4]Opencv 2.4.9.0 documentation[EB/OL].[2015-11-23].http://docs.opencv.org/ modules/refman.html,2014. [5]陳國棟. Hough變換改進算法研究[D].哈爾濱:哈爾濱工業大學,2007. [6]TRIESEH J, Der MALSBURG C. Classification of hand postures against complex backgrounds using elastic graph matching[J]. Image and vision computing,2002,20 (13/14):937-943. [7]GIANNI F, COLLET C, DALLE P. Robust tracking gestures[C]//Proc. Gesture-Based Human-Computer for Processing of videos of communication's Interaction and Simulation. [S.l.]:IEEE,2009:93-101. [8]高富強.一種快速彩色圖像匹配算法[J].計算機應用,2005, 25(11):2604-2605. [9]GONZALEZ R C.Digital image processing[M].3rd ed. [S.l.]:Prentice Hall,2007. 李夢宇(1994— ),碩士生,主研計算機視覺及圖像處理; 元 輝(1984— ),副教授,碩士生導師,主要研究方向為視頻編解碼。 責任編輯:閆雯雯 Hand tracking algorithm applied to vehicular safe driving LI Mengyu, YUAN Hui, FU Huayong, SUN Zhenzhen (SchoolofInformationScience&Engineering,ShandongUniversity,Jinan250000,China) In order to improve the safety of driving, vehicular steering detection and hand tracking are proposed to analyze the operation behavior of the driver, and reduce the occurrence of accidents. Firstly, the position coordinates of the vehicular steering is detected by using edge detection and Hough transform. Secondly, the driver’s hands are detected and tracked by template matching. Experimental results show that the proposed method can effectively track the driver's hand movements. safe driving; steering detection; hand tracking 李夢宇,元輝,付華勇,等. 應用于汽車安全駕駛的手部跟蹤算法[J]. 電視技術,2016,40(11):112-115. LI M Y, YUAN H, FU H Y,et al. Hand tracking algorithm applied to vehicular safe driving [J]. Video engineering,2016,40(11):112-115. TP391 A 10.16280/j.videoe.2016.11.023 國家自然科學基金項目(61571274);山東大學青年學者未來計劃項目(2015WLJH39) 2015-11-234 結論