王 正,呂 非,齊宇霄,童 瑩
(1.南京工程學(xué)院 信息與通信工程學(xué)院,江蘇 南京 211167;2.南瑞集團有限公司,江蘇 南京 211106)
安全帽作為勞保用品的重要部分,應(yīng)用廣泛,但其重要性也容易被部分工作人員忽視,因未佩戴安全帽而造成的事故,后果往往極為嚴(yán)重。為解決傳統(tǒng)施工現(xiàn)場存在的安全管理問題,實現(xiàn)施工現(xiàn)場的智能化管理,對施工現(xiàn)場人員進行安全帽佩戴狀態(tài)實時檢測具有重大意義[1]。
計算機視覺領(lǐng)域的發(fā)展促進了圖像采集設(shè)備和圖像處理技術(shù)的結(jié)合應(yīng)用。將拍攝畫面?zhèn)鬏數(shù)接嬎愣耍\用相關(guān)算法對場景進行實時分析、目標(biāo)檢測[2]、目標(biāo)跟蹤[3]、圖像分割[4]等操作,極大地簡化了管理過程。從圖像角度看待安全帽的佩戴識別問題,發(fā)現(xiàn)安全帽醒目的顏色和外形尤其適合用圖像技術(shù)進行處理。
現(xiàn)階段,識別安全帽是否佩戴的方法存在一些缺陷,如脫離人體,將安全帽的檢測作為重點,這種方法無法準(zhǔn)確判斷人體和安全帽的佩戴關(guān)系;將佩戴安全帽和未佩戴安全帽的人體分類檢測,這種方法利用深度學(xué)習(xí)技術(shù)可以較簡單的實現(xiàn),但訓(xùn)練成本較大,識別效果易受噪聲影響。這些方法未能把識別精度和速度相結(jié)合,在實際監(jiān)控應(yīng)用中效果欠佳。基于上述原因,本文提出了一種基于深度學(xué)習(xí)的安全帽佩戴狀態(tài)實時檢測方法。
為了對人員的安全帽佩戴狀態(tài)進行實時檢測,需要對視頻流進行目標(biāo)檢測跟蹤以及安全帽佩戴檢測等處理。方案流程如圖1所示,可分為人員區(qū)域檢測、頭部區(qū)域提取、安全帽存在性判斷3部分。

圖1 方案流程
在圖像目標(biāo)檢測任務(wù)中,基于深度學(xué)習(xí)的方法已被證明優(yōu)于傳統(tǒng)檢測方法[5]。效果較好的目標(biāo)檢測框架有Faster R-CNN[6],YOLO,Mask R-CNN[7],RetinaNet[8]等。本文采用的YOLOv3[9]檢測框架保證了算法運行的速度,滿足了實時性需求,同時也能獲得較準(zhǔn)確的檢測結(jié)果。
如圖2所示,YOLOv3框架采用Darknet-53作為特征提取的主要網(wǎng)絡(luò)[10],與傳統(tǒng)CNN網(wǎng)絡(luò)結(jié)構(gòu)不同的是,Darknet-53舍棄了常用的池化層和全連接層,在卷積層后搭載Leaky-ReLU激活函數(shù),并在YOLOv2的基礎(chǔ)上[11]借鑒了ResNet的殘差塊結(jié)構(gòu),用以解決隨著卷積神經(jīng)網(wǎng)絡(luò)層數(shù)的增加而出現(xiàn)的訓(xùn)練退化現(xiàn)象。為了實現(xiàn)檢測框多尺度變化,YOLOv3借 鑒 了 FPN(Feature Pyramid Networks, FPN)[11]網(wǎng)絡(luò)中的思想,分別在13×13、26×26和52×52三種尺度下進行特征圖融合與預(yù)測,得到Y(jié)1、Y2和Y3三次采樣輸出結(jié)果。

圖2 YOLOv3網(wǎng)絡(luò)結(jié)構(gòu)
YOLOv3目標(biāo)檢測框架可以檢測多類物體,訓(xùn)練時也是以多類物體的標(biāo)簽進行訓(xùn)練。在安全帽佩戴識別任務(wù)中只關(guān)心人員目標(biāo),所以在訓(xùn)練時只采用人員類的標(biāo)簽進行訓(xùn)練,以節(jié)省訓(xùn)練時間,提高訓(xùn)練效率。在硬件計算能力充足時,也可以直接采用YOLOv3訓(xùn)練好的權(quán)重(可以檢測多類),提取檢測結(jié)果中的人員目標(biāo),進行后續(xù)處理。
由于安全帽相對人體區(qū)域而言占比較小,為了更高效的對YOLOv3提取出的人員區(qū)域圖像進行分析,本文進一步提取安全帽可能存在的區(qū)域,即頭部位置區(qū)域,再輸入后面的網(wǎng)絡(luò)進行安全帽存在性判斷。由于檢測到的人員區(qū)域大小存在差異,本文按照長寬比,采取人員區(qū)域中靠近上方的正方形區(qū)域作為提取區(qū)域。提取區(qū)域小于人員區(qū)域,減少了計算負(fù)擔(dān);同時,提取區(qū)域大于安全帽,增加了容錯率。將提取出的區(qū)域調(diào)整到固定大小(方案中取57×57),便于后續(xù)處理。
經(jīng)過前面的檢測和提取步驟,這一過程僅需進行安全帽是否存在的二分類工作。采用經(jīng)典的卷積和全連接CNN+FC(Fully Convolutional Networks, FC)[12]網(wǎng)絡(luò)架構(gòu),能夠達(dá)到較好的分類效果(相比SVM等傳統(tǒng)分類方法)。由于存在全連接層,本文對提取的頭部區(qū)域進行采樣操作,將其變?yōu)楣潭ù笮〉膱D片輸入CNN+FC網(wǎng)絡(luò)。這部分網(wǎng)絡(luò)包含2個卷積層,1個池化層和2個全連接層,流程如圖3所示。

圖3 安全帽存在性判斷流程
識別安全帽的CNN+FC網(wǎng)絡(luò)訓(xùn)練過程可以脫離整體網(wǎng)絡(luò)進行單獨訓(xùn)練。訓(xùn)練數(shù)據(jù)有2個來源:
(1)通過網(wǎng)絡(luò)采集安全帽和行人相關(guān)的開源圖片和標(biāo)簽;
(2)真實環(huán)境中通過固定位置攝像頭采集的圖片,利用YOLOv3提取環(huán)境區(qū)域作為人體標(biāo)簽。
將全部數(shù)據(jù)集中,相對于人體的安全帽潛在區(qū)域(提取出的頭部區(qū)域)按是否佩戴作為正樣本和負(fù)樣本保存,如圖4和圖5所示。在訓(xùn)練時對正負(fù)樣本進行在線處理(包括水平翻轉(zhuǎn),放大、縮小裁剪區(qū)域,旋轉(zhuǎn)等)進行數(shù)據(jù)增強。實驗中發(fā)現(xiàn),從實際測試場景中采集圖片進行訓(xùn)練能夠獲得更好的識別效果。

圖4 部分訓(xùn)練正樣本

圖5 部分訓(xùn)練負(fù)樣本
對于檢測出佩戴安全帽的人員,用藍(lán)色框標(biāo)記;檢測出未佩戴安全帽的人員,用紅色框標(biāo)記。圖6為一般場景下的識別結(jié)果,圖7為特定場景下的識別結(jié)果。

圖6 一般場景下的識別結(jié)果

圖7 特定場景下的識別結(jié)果
本方案和傳統(tǒng)方案在一般場景中的檢測結(jié)果見表1所列。

表1 實驗結(jié)果對比
從表中可以看出,本方案的誤報率、漏檢率和準(zhǔn)確率相比傳統(tǒng)方案均有較大改善。在實際應(yīng)用中,往往會在某一特定場景中進行佩戴檢測,在該場景中拍攝更多正、負(fù)樣本進行訓(xùn)練,檢測準(zhǔn)確率超0.96。本方案基于目標(biāo)檢測算法,避免了傳統(tǒng)方案難以檢測靜止人員的缺陷。在速度方面,傳統(tǒng)方法在800×600大小的圖片上進行檢測,速度為15 FPS(CPU),本方案在1 280×720大小的圖片上進行檢測,速度為43 FPS (GPU),具有實時檢測的效果。通過網(wǎng)絡(luò)剪枝等手段優(yōu)化模型,可以進一步提升檢測速度。
為解決如何檢測作業(yè)人員是否佩戴安全帽的問題,本文提出了一種基于深度學(xué)習(xí)的安全帽佩戴狀態(tài)實時檢測方法。文本方法檢測速度快,平均準(zhǔn)確率高,經(jīng)過本試驗和對深度學(xué)習(xí)的研究,該方法能夠較好地實現(xiàn)安全帽佩戴的圖像和視頻檢測效果。下一步的研究方向是,當(dāng)人員被遮擋或出現(xiàn)低光照等情況時,如何降低這些因素對檢測結(jié)果的影響。
物聯(lián)網(wǎng)技術(shù)2021年10期