王晗鵬 平 鵬 杲先鋒 劉偉浦
(1、南通大學 交通與土木工程學院,江蘇 南通 226019 2、江蘇鴻鵠電子科技有限公司,江蘇 南通 226019)
在實際道路行駛中,為獲取有限路權,電動自行車與其他交通參與物需頻繁進行博弈交互,其間極易產生相互碰撞,形成交通事故。相關研究表明,電動車事故所造成的顱腦損傷是導致電動車騎手重傷或者死亡的第一大因素。安全頭盔作為保護騎手頭部的防護設備,可以有效的降低交通事故中電動車騎手的頭部受創程度,從而保障騎手的生命安全。為此,國家相關部門和地方政府相繼出臺了相關法律條例,實施引導或規范騎手佩戴安全頭盔的行為,但是當前對電動自行車騎行者頭盔佩戴、執法成本高、存在漏檢等情況的檢查,主要是依靠人工。對于電動車騎手的頭盔佩戴識別難以進行持續的執法監督,不依法依規佩戴安全頭盔的現象往往呈現出一段時期嚴厲監管后迅速反彈。因此急需推進一種智能識別騎手頭盔佩戴情況的技術,以便為交管部門準確、靈活、全天候掌握重點路段電動車騎手頭盔情況提供技術支撐。
近年來,機器視覺在深度學習的驅動下得到了長足發展,相關研究表明,YOLOv3 在維持不錯準確度的基礎上,其速度已超越其他同類目標檢測方法的三倍之多,其對于圖像數據中特定目標的檢測精度進一步提升,為安全頭盔佩戴識別提供了新的技術手段[1-2]。另外無人機等新型觀測主體的出現,為基于機器視覺技術實現騎手頭盔佩戴情況的自動化識別提供了可能。鑒于電瓶車騎手頭盔外觀不統一,同時不戴頭盔騎手的外觀特征區分度較低,本文設計了一種面向無人機巡檢的電瓶車騎手頭盔佩戴情況識別方法,擬通過該方法提升對于危險騎行行為的識別準確度,為交通安全管理部門的管理效能提升提供重要技術手段[3]。
YOLOV3 于2018 年正式提出,相較于YOLO 算法之前的兩個版本,主要在特征提取網絡和對區域的預測兩個方面進行了改進[4-5]。在繼承了之前版本的優點的前提下,使用了新的特征提取網絡和采用不同尺度對目標進行檢測,提高了目標的檢測準確率。
YOLO 模型的特點是把目標圖像視為一個整體,用N*N 的網格對圖片做分割處理,然后基于各個網格的位置和相應的內容,預測地點、類別、可信度等信息。預測位置是利用網格方框以網格中心點處的對象為目標,利用不同識別對象與相應類型的分數比例進行置信度表征,從而使YOLO 算法在實施方法上有著快速、有效的優勢。為了減少目標的漏標,算法會產生更多數量的候選框,但這些候選框并不都是我們想要的結果,甚至很多候選框的重合面積都比較大,為了得到準確的檢測結果,需要先去掉一個置信度分數低于某一標準的候選框,對于剩余的候選框,則結合置信度和IOU 值進行排序,通過去掉多余的備選框,得出最終的預測框架。YOLOV3 算法通過對各區域概率分別檢測,然后加權計算得出整塊區域概率的方法,完善了原有的網絡檢測方法,改善了檢測速度和整體搜索能力。
利用Dark.net53 網絡結構進行特征的提取,在每一位隱藏層間的殘差結構設定短路鏈接,增強了低級和高級特征的融合,提高了系統的識別精度[6]。該算法打破了常見的池化層和全連接層,通過改變卷積核步長的方法來控制張量維度,從而實現尺寸遞減維度和通道升維維度的目標。該算法不僅加大了模型的特征提取能力,而且可以讓Darknet-53 對整個圖像進行更敏感、更精確的搜索。在這種模型中,一共有5 次尺寸降維,每個高度和寬度都降低了輸入大小,5 層的深度,殘差結構可以增強網絡的特征提取能力,并且在每個維度上維持了傳入和傳出張量的一致性。該方法以通道維度增加為主要目標,以保證圖像特征在不.增加通道維度的情況下得到較好的抽取,同時,利用輸入張量和變換張量相加的方法,對梯度進行有效的控制,從而有效地避免了梯度消失或梯度爆發等問題。在采用5 次殘差層時,將后3 次輸出的張量y1、y2 和y3 作為輸入變量,以實現隨后的特征圖預測。就拿416*416 的像素而言,第一個張特征圖的張.量維度是y1.shape=[52、52、256],第二張是y2.shape=[26、26、512],第三張是y3.shape=[13、13、1024],對越小的特征圖,其特征維度就越高。YOLOV3 模型的最終預測結果包括多個方面,即:不同的對象的概率和這些對象在圖象中的矩形坐標信息,因此,利用YOLOV3 的結構特征,可以發現,在預測框坐標固定的前提下,預測對象的數目和最終輸出的張量參數必須與固定輸出有關,同時,與卷積神經網絡的計算復雜性正相關,與完整的預測模型進行計算復雜性正相關。要求所識別的對象類型要比普通對象類型少,例如在自動駕駛領域中的車輛定位等情況下,需要對某一特定對象進行預測。所以,要合理地調整車型的特征,針對電瓶車騎手提高目標識別的準確性。
為抑制目標圖像受外界光線的干擾,本文對電瓶車騎手圖像分別進行灰度化、灰度變換、平滑處理,來減小噪聲影響。為減輕計算機識別的工作量,可以采用灰度化處理所獲得的彩色圖像,即用單通道的灰度圖像取代RGB 彩色圖像。目前常用的灰度法有平均法、加權平均法、分量法和最大值法,采用設定不同的顏色權重取值加權平均法。在現實生活中,人類對綠色、紅色、藍色的敏感性從高到低,為了客觀地反映人眼所見的實際情況,取綠色權重的數值最大,取紅色、藍色權重的數值較小,即取綠色、紅色、藍色權重從大到小的順序。其公式表達式為:

光照條件的好壞可以用灰度值的分布來判斷,當光線的較暗時,大部分的灰度會向數值較小的地方集聚,而在較強的時候,大部分會向數值較大的區域集聚。累計灰度直方圖可對于圖像的灰度情況進行整體對比,是突出圖像中的有用特征的一種方法。通過非線性拉伸直方圖,重新分配集中在某一范圍內的像素值,使灰度值的分布近似平均分布,從而使圖像的對比度更強,便于后續處理過程的處理。需要對經過直方圖均衡化處理的圖像進行平滑處理,器件和環境的噪聲影響都會影響圖像信號的傳輸質量。平滑處理是為了過濾圖像,由于噪聲常呈高斯分布而使用高斯濾波器,而高斯濾波器對于噪聲的過濾效果更佳。在研究中使用高斯核賦值圖像中各像素點的權重,然后用所賦值的權重與圖像中的像素點相乘,得到中間像素值在使用的時候,可以通過適當增大高斯濾波算子的尺寸來增強圖像的平滑效果,文中采用的一維和二維高斯函數的公式為:

3.1 數據采集。本文使用的無人機是一款通過手持遙控器進行操控的四旋翼無人機。其中,飛控系統、攝錄系統、圖傳系統等無人機均有搭載。無人機可以通過計劃路徑進行飛行,也可以通過遙控進行操控。視頻采集系統可以將采集的視頻實時反饋到遙控器的顯示屏上以便確認樣本的采集情況。在執行樣本采集任務時,根據手持遙控器的操控,可以實現偏航、俯仰與橫滾等飛行動作,來滿足高度、視角等要求[7]。樣本除了要有足夠的數量,還要具有多樣性。本文的樣本考察維度包括地點、時間(早中晚)、天氣、道路類型、飛行高度、正負樣本等來確保訓練的有效性。
為分析拍攝參數對于騎手特征識別的影響,研究中使用無人機搭載攝像機,在5 米、7 米和9 米的高度拍攝了不同路口或道路上行駛的電瓶車,視頻分辨率為1080×720,使用OpenCV 分割視頻讀取圖像,將未戴頭盔的電瓶車騎手在圖片中手動框出,通過程序對其所占用的象素進行計算,并對象素大小的變化進行分析。通過對航拍無人機不同高度下的電瓶車像素值的變化,無人機的飛行高度在5 到9 米之間時,電瓶車與騎行者的占用象素值隨著無人機的接近二增大,即便在7 米的高度,目標所占用像素值的大小仍然大約是612×382,所以無人機在飛行過程中能夠獲得足以進行電瓶車騎手識別。本文采用1000 張圖片作為訓練集,500 張圖片作為驗證集以及700 張圖片用于模型測試。

圖1 初步處理的樣本示例
3.2 模型的性能驗證
3.2.1 驗證環境。 本文采用深度學習架構YOLO-Darknet53 搭建實驗運行環境,計算機顯卡為NVIDIA GTX1050Ti,搭載CPU 為Intel i7-8750H 并采用CUDA 環境進行GPU 并行加速計算,采用Python 進行編程。
3.2.2 評價指標。評價深度學習模型的指標較多,比如用精確率(Precision)來評價分類器預測的準確性,平均正確率(AP)是評估模型的重要指標;交并比(IoU)來反映預測框與真實框的占比關系等[8]。本文擬解決的問題屬于二分類問題,研究目的就是檢測出所有的戴頭盔以及未帶頭盔的騎手,因此為驗證分類方法的性能,本文采用精確度來衡量模型標準。精確度Precision 指的是所有被識別出來的樣本中,真實的樣本所占的比例,公式如下:

3.2.3 驗證結果。飛行器飛行的高度不同,會對目標的探測和識別造成一定的影響,從而導致不同的視角拍攝視頻。考慮到城市道路監控立桿一般高度為6 米橫臂1 米,對室外離地有不應低于3.5 米的安裝高度要求。于是初步設計檢測識別無人機拍攝5 米、7 米、9 米高的測試序列。從每個高度拍攝的視頻取300 張圖,結果如下表:

表1 電瓶車騎手頭盔佩戴情況識別結果
從表中可以看出,YOLOV3 目標探測受無人飛行高度逐漸升高的影響較小。但飛行高度對電瓶車騎手的影響較大,通過對驗證失敗的數據分析和進一步測試發現,目標在5 米高處拍攝的影像中所占的比例是比較恰當的。識別成功率也較高。而3 米的成功率隨著水平距離的調整成功率逐漸升高。本文采取了3~10 米高的范圍進行實驗,每個高度再選取4 個不同道路或路口在光照良好的條件下各100張圖片,模型識別結果如下圖:

圖2 不同高度目標識別成功率
目標識別的成功率隨著無人機飛行高度的提高而逐漸提高,但目標俯視角度過近有會使成功率開始降低,而超過一定高度后目標所占像素比例減小不便識別。所以最佳識別距離在5-6 米。除了高度和光照的變化,水平方向的不同偏移角度也會影響目標特征的提取效果。我們以筆直的車道線為基準,分別偏移0°、15°、30°、45°、60°后采樣并進行目標識別,統一在光照條件良好的5m 高度進行樣本采集,得出的識別準確度如下圖:

圖3 不同角度目標識別成功率
隨著無人機飛行水平旋轉角的增加,相交于正對車道,騎手頭盔的特征更加明顯,識別成功率有提升。角度超過30 度后識別的準確率并沒有明顯提升。而且無論是停止線線前的闖紅燈拍照還是路口信號燈旁的監控攝像頭,可視角一般在40°~50°以確保足夠的覆蓋面積,對于無人機搭載的小型攝像頭則在30°左右可以取得較好的識別效果。
為了解決電瓶車騎手頭盔佩戴識別問題,采用航拍視頻首先獲得YOLOv3 網絡所需要的大量不同高度的樣本,然后對其進行訓練;再通過對分類模型進行權重、分割數據集中的圖像,并對模型的準確性和通用性進行不同檢測條件下的訓練。如何進一步簡化網絡計算量,增加模型魯棒性,適應復雜背景變化,提高識別準確度是下一步的研究重點。