王晗鵬 平 鵬 杲先鋒 劉偉浦
(1、南通大學(xué) 交通與土木工程學(xué)院,江蘇 南通 226019 2、江蘇鴻鵠電子科技有限公司,江蘇 南通 226019)
在實際道路行駛中,為獲取有限路權(quán),電動自行車與其他交通參與物需頻繁進行博弈交互,其間極易產(chǎn)生相互碰撞,形成交通事故。相關(guān)研究表明,電動車事故所造成的顱腦損傷是導(dǎo)致電動車騎手重傷或者死亡的第一大因素。安全頭盔作為保護騎手頭部的防護設(shè)備,可以有效的降低交通事故中電動車騎手的頭部受創(chuàng)程度,從而保障騎手的生命安全。為此,國家相關(guān)部門和地方政府相繼出臺了相關(guān)法律條例,實施引導(dǎo)或規(guī)范騎手佩戴安全頭盔的行為,但是當(dāng)前對電動自行車騎行者頭盔佩戴、執(zhí)法成本高、存在漏檢等情況的檢查,主要是依靠人工。對于電動車騎手的頭盔佩戴識別難以進行持續(xù)的執(zhí)法監(jiān)督,不依法依規(guī)佩戴安全頭盔的現(xiàn)象往往呈現(xiàn)出一段時期嚴厲監(jiān)管后迅速反彈。因此急需推進一種智能識別騎手頭盔佩戴情況的技術(shù),以便為交管部門準(zhǔn)確、靈活、全天候掌握重點路段電動車騎手頭盔情況提供技術(shù)支撐。
近年來,機器視覺在深度學(xué)習(xí)的驅(qū)動下得到了長足發(fā)展,相關(guān)研究表明,YOLOv3 在維持不錯準(zhǔn)確度的基礎(chǔ)上,其速度已超越其他同類目標(biāo)檢測方法的三倍之多,其對于圖像數(shù)據(jù)中特定目標(biāo)的檢測精度進一步提升,為安全頭盔佩戴識別提供了新的技術(shù)手段[1-2]。另外無人機等新型觀測主體的出現(xiàn),為基于機器視覺技術(shù)實現(xiàn)騎手頭盔佩戴情況的自動化識別提供了可能。鑒于電瓶車騎手頭盔外觀不統(tǒng)一,同時不戴頭盔騎手的外觀特征區(qū)分度較低,本文設(shè)計了一種面向無人機巡檢的電瓶車騎手頭盔佩戴情況識別方法,擬通過該方法提升對于危險騎行行為的識別準(zhǔn)確度,為交通安全管理部門的管理效能提升提供重要技術(shù)手段[3]。
YOLOV3 于2018 年正式提出,相較于YOLO 算法之前的兩個版本,主要在特征提取網(wǎng)絡(luò)和對區(qū)域的預(yù)測兩個方面進行了改進[4-5]。在繼承了之前版本的優(yōu)點的前提下,使用了新的特征提取網(wǎng)絡(luò)和采用不同尺度對目標(biāo)進行檢測,提高了目標(biāo)的檢測準(zhǔn)確率。
YOLO 模型的特點是把目標(biāo)圖像視為一個整體,用N*N 的網(wǎng)格對圖片做分割處理,然后基于各個網(wǎng)格的位置和相應(yīng)的內(nèi)容,預(yù)測地點、類別、可信度等信息。預(yù)測位置是利用網(wǎng)格方框以網(wǎng)格中心點處的對象為目標(biāo),利用不同識別對象與相應(yīng)類型的分數(shù)比例進行置信度表征,從而使YOLO 算法在實施方法上有著快速、有效的優(yōu)勢。為了減少目標(biāo)的漏標(biāo),算法會產(chǎn)生更多數(shù)量的候選框,但這些候選框并不都是我們想要的結(jié)果,甚至很多候選框的重合面積都比較大,為了得到準(zhǔn)確的檢測結(jié)果,需要先去掉一個置信度分數(shù)低于某一標(biāo)準(zhǔn)的候選框,對于剩余的候選框,則結(jié)合置信度和IOU 值進行排序,通過去掉多余的備選框,得出最終的預(yù)測框架。YOLOV3 算法通過對各區(qū)域概率分別檢測,然后加權(quán)計算得出整塊區(qū)域概率的方法,完善了原有的網(wǎng)絡(luò)檢測方法,改善了檢測速度和整體搜索能力。
利用Dark.net53 網(wǎng)絡(luò)結(jié)構(gòu)進行特征的提取,在每一位隱藏層間的殘差結(jié)構(gòu)設(shè)定短路鏈接,增強了低級和高級特征的融合,提高了系統(tǒng)的識別精度[6]。該算法打破了常見的池化層和全連接層,通過改變卷積核步長的方法來控制張量維度,從而實現(xiàn)尺寸遞減維度和通道升維維度的目標(biāo)。該算法不僅加大了模型的特征提取能力,而且可以讓Darknet-53 對整個圖像進行更敏感、更精確的搜索。在這種模型中,一共有5 次尺寸降維,每個高度和寬度都降低了輸入大小,5 層的深度,殘差結(jié)構(gòu)可以增強網(wǎng)絡(luò)的特征提取能力,并且在每個維度上維持了傳入和傳出張量的一致性。該方法以通道維度增加為主要目標(biāo),以保證圖像特征在不.增加通道維度的情況下得到較好的抽取,同時,利用輸入張量和變換張量相加的方法,對梯度進行有效的控制,從而有效地避免了梯度消失或梯度爆發(fā)等問題。在采用5 次殘差層時,將后3 次輸出的張量y1、y2 和y3 作為輸入變量,以實現(xiàn)隨后的特征圖預(yù)測。就拿416*416 的像素而言,第一個張?zhí)卣鲌D的張.量維度是y1.shape=[52、52、256],第二張是y2.shape=[26、26、512],第三張是y3.shape=[13、13、1024],對越小的特征圖,其特征維度就越高。YOLOV3 模型的最終預(yù)測結(jié)果包括多個方面,即:不同的對象的概率和這些對象在圖象中的矩形坐標(biāo)信息,因此,利用YOLOV3 的結(jié)構(gòu)特征,可以發(fā)現(xiàn),在預(yù)測框坐標(biāo)固定的前提下,預(yù)測對象的數(shù)目和最終輸出的張量參數(shù)必須與固定輸出有關(guān),同時,與卷積神經(jīng)網(wǎng)絡(luò)的計算復(fù)雜性正相關(guān),與完整的預(yù)測模型進行計算復(fù)雜性正相關(guān)。要求所識別的對象類型要比普通對象類型少,例如在自動駕駛領(lǐng)域中的車輛定位等情況下,需要對某一特定對象進行預(yù)測。所以,要合理地調(diào)整車型的特征,針對電瓶車騎手提高目標(biāo)識別的準(zhǔn)確性。
為抑制目標(biāo)圖像受外界光線的干擾,本文對電瓶車騎手圖像分別進行灰度化、灰度變換、平滑處理,來減小噪聲影響。為減輕計算機識別的工作量,可以采用灰度化處理所獲得的彩色圖像,即用單通道的灰度圖像取代RGB 彩色圖像。目前常用的灰度法有平均法、加權(quán)平均法、分量法和最大值法,采用設(shè)定不同的顏色權(quán)重取值加權(quán)平均法。在現(xiàn)實生活中,人類對綠色、紅色、藍色的敏感性從高到低,為了客觀地反映人眼所見的實際情況,取綠色權(quán)重的數(shù)值最大,取紅色、藍色權(quán)重的數(shù)值較小,即取綠色、紅色、藍色權(quán)重從大到小的順序。其公式表達式為:
光照條件的好壞可以用灰度值的分布來判斷,當(dāng)光線的較暗時,大部分的灰度會向數(shù)值較小的地方集聚,而在較強的時候,大部分會向數(shù)值較大的區(qū)域集聚。累計灰度直方圖可對于圖像的灰度情況進行整體對比,是突出圖像中的有用特征的一種方法。通過非線性拉伸直方圖,重新分配集中在某一范圍內(nèi)的像素值,使灰度值的分布近似平均分布,從而使圖像的對比度更強,便于后續(xù)處理過程的處理。需要對經(jīng)過直方圖均衡化處理的圖像進行平滑處理,器件和環(huán)境的噪聲影響都會影響圖像信號的傳輸質(zhì)量。平滑處理是為了過濾圖像,由于噪聲常呈高斯分布而使用高斯濾波器,而高斯濾波器對于噪聲的過濾效果更佳。在研究中使用高斯核賦值圖像中各像素點的權(quán)重,然后用所賦值的權(quán)重與圖像中的像素點相乘,得到中間像素值在使用的時候,可以通過適當(dāng)增大高斯濾波算子的尺寸來增強圖像的平滑效果,文中采用的一維和二維高斯函數(shù)的公式為:
3.1 數(shù)據(jù)采集。本文使用的無人機是一款通過手持遙控器進行操控的四旋翼無人機。其中,飛控系統(tǒng)、攝錄系統(tǒng)、圖傳系統(tǒng)等無人機均有搭載。無人機可以通過計劃路徑進行飛行,也可以通過遙控進行操控。視頻采集系統(tǒng)可以將采集的視頻實時反饋到遙控器的顯示屏上以便確認樣本的采集情況。在執(zhí)行樣本采集任務(wù)時,根據(jù)手持遙控器的操控,可以實現(xiàn)偏航、俯仰與橫滾等飛行動作,來滿足高度、視角等要求[7]。樣本除了要有足夠的數(shù)量,還要具有多樣性。本文的樣本考察維度包括地點、時間(早中晚)、天氣、道路類型、飛行高度、正負樣本等來確保訓(xùn)練的有效性。
為分析拍攝參數(shù)對于騎手特征識別的影響,研究中使用無人機搭載攝像機,在5 米、7 米和9 米的高度拍攝了不同路口或道路上行駛的電瓶車,視頻分辨率為1080×720,使用OpenCV 分割視頻讀取圖像,將未戴頭盔的電瓶車騎手在圖片中手動框出,通過程序?qū)ζ渌加玫南笏剡M行計算,并對象素大小的變化進行分析。通過對航拍無人機不同高度下的電瓶車像素值的變化,無人機的飛行高度在5 到9 米之間時,電瓶車與騎行者的占用象素值隨著無人機的接近二增大,即便在7 米的高度,目標(biāo)所占用像素值的大小仍然大約是612×382,所以無人機在飛行過程中能夠獲得足以進行電瓶車騎手識別。本文采用1000 張圖片作為訓(xùn)練集,500 張圖片作為驗證集以及700 張圖片用于模型測試。
圖1 初步處理的樣本示例
3.2 模型的性能驗證
3.2.1 驗證環(huán)境。 本文采用深度學(xué)習(xí)架構(gòu)YOLO-Darknet53 搭建實驗運行環(huán)境,計算機顯卡為NVIDIA GTX1050Ti,搭載CPU 為Intel i7-8750H 并采用CUDA 環(huán)境進行GPU 并行加速計算,采用Python 進行編程。
3.2.2 評價指標(biāo)。評價深度學(xué)習(xí)模型的指標(biāo)較多,比如用精確率(Precision)來評價分類器預(yù)測的準(zhǔn)確性,平均正確率(AP)是評估模型的重要指標(biāo);交并比(IoU)來反映預(yù)測框與真實框的占比關(guān)系等[8]。本文擬解決的問題屬于二分類問題,研究目的就是檢測出所有的戴頭盔以及未帶頭盔的騎手,因此為驗證分類方法的性能,本文采用精確度來衡量模型標(biāo)準(zhǔn)。精確度Precision 指的是所有被識別出來的樣本中,真實的樣本所占的比例,公式如下:
3.2.3 驗證結(jié)果。飛行器飛行的高度不同,會對目標(biāo)的探測和識別造成一定的影響,從而導(dǎo)致不同的視角拍攝視頻??紤]到城市道路監(jiān)控立桿一般高度為6 米橫臂1 米,對室外離地有不應(yīng)低于3.5 米的安裝高度要求。于是初步設(shè)計檢測識別無人機拍攝5 米、7 米、9 米高的測試序列。從每個高度拍攝的視頻取300 張圖,結(jié)果如下表:
表1 電瓶車騎手頭盔佩戴情況識別結(jié)果
從表中可以看出,YOLOV3 目標(biāo)探測受無人飛行高度逐漸升高的影響較小。但飛行高度對電瓶車騎手的影響較大,通過對驗證失敗的數(shù)據(jù)分析和進一步測試發(fā)現(xiàn),目標(biāo)在5 米高處拍攝的影像中所占的比例是比較恰當(dāng)?shù)?。識別成功率也較高。而3 米的成功率隨著水平距離的調(diào)整成功率逐漸升高。本文采取了3~10 米高的范圍進行實驗,每個高度再選取4 個不同道路或路口在光照良好的條件下各100張圖片,模型識別結(jié)果如下圖:
圖2 不同高度目標(biāo)識別成功率
目標(biāo)識別的成功率隨著無人機飛行高度的提高而逐漸提高,但目標(biāo)俯視角度過近有會使成功率開始降低,而超過一定高度后目標(biāo)所占像素比例減小不便識別。所以最佳識別距離在5-6 米。除了高度和光照的變化,水平方向的不同偏移角度也會影響目標(biāo)特征的提取效果。我們以筆直的車道線為基準(zhǔn),分別偏移0°、15°、30°、45°、60°后采樣并進行目標(biāo)識別,統(tǒng)一在光照條件良好的5m 高度進行樣本采集,得出的識別準(zhǔn)確度如下圖:
圖3 不同角度目標(biāo)識別成功率
隨著無人機飛行水平旋轉(zhuǎn)角的增加,相交于正對車道,騎手頭盔的特征更加明顯,識別成功率有提升。角度超過30 度后識別的準(zhǔn)確率并沒有明顯提升。而且無論是停止線線前的闖紅燈拍照還是路口信號燈旁的監(jiān)控攝像頭,可視角一般在40°~50°以確保足夠的覆蓋面積,對于無人機搭載的小型攝像頭則在30°左右可以取得較好的識別效果。
為了解決電瓶車騎手頭盔佩戴識別問題,采用航拍視頻首先獲得YOLOv3 網(wǎng)絡(luò)所需要的大量不同高度的樣本,然后對其進行訓(xùn)練;再通過對分類模型進行權(quán)重、分割數(shù)據(jù)集中的圖像,并對模型的準(zhǔn)確性和通用性進行不同檢測條件下的訓(xùn)練。如何進一步簡化網(wǎng)絡(luò)計算量,增加模型魯棒性,適應(yīng)復(fù)雜背景變化,提高識別準(zhǔn)確度是下一步的研究重點。