寧波市鎮海蛟川書院 錢昱成 符水波
為解決工地場所人員的安全隱患問題,提出了一種基于計算機視覺技術與人工智能技術相結合的安全帽檢測系統。設計了一種與特征圖深度融合的改進YOLOv3算法,它能夠捕捉到原圖像中更多中小型目標物體的圖像信息,使得系統模型更加關注、學習這一塊圖像信息,進而能夠更好的完成對安全帽佩戴檢測這一任務。實驗結果表明,該系統能夠對工地中的工人進行實時、高效檢測,有效的減少工地場所安全隱患。
據2020年的全國安全生產數據分析,其發現生產安全事故中有94%的原因是作業技術人員的不安全行為所導致,如越權限進入工地場所、違規操作、未正確佩戴安全保護設備、操作失誤等行為。在施工過程中,正確佩戴安全帽是一項基本規定。由于缺乏監督,工人不戴安全帽所造成的安全事故時有發生。為了解決施工人員的安全隱患,有必要對施工人員的安全帽進行檢查,降低因不正確佩戴安全帽而造成的事故發生率。
生產安全問題一直是一個社會關注度極高的話題。實現智能視頻監控安全帽佩戴是安全生產環節必不可少的。胡恬等人使用YCbCr模型,利用不同人群膚色差異進行定位、采取小波變換進行數據預處理,通過訓練神經網絡檢測圖像中人員是否佩戴安全帽。楊莉瓊利用SVM分類器對臉部上方是否有安全帽進行判斷,進而實現對工人安全帽佩戴行為的實時檢測和預警。與上述傳統方法不同,本文利用基于卷積神經網絡,設計了一種安全帽檢測系統,能夠高效、準確的檢測出未佩戴安全帽的工人并給予警告。
檢測系統由兩塊組成,第一塊主要用于對人員的安全帽進行檢測,第二塊實現人員的移動檢測。如何更好的實現兩者是主要的研究工作,檢測流程如下:
(1)現場監控設備捕獲人員信息,將視頻流通過網絡傳送至管理系統。
(2)管理系統收到視頻后,通過目標檢測網絡進行安全帽檢測。
(3)若檢測到人員未帶安全帽進行相關信息保存,保留當前幀圖片并通知管理人員。
(4)管理人員收到警告信息,糾正違反安全生產行為。
安全帽佩戴檢測模塊采用YOLOv3為基礎框架,該方法能夠自主學習目標特征,減少手工特征等人為因素干擾,從而能夠具有較高識別性能,對復雜場景下的不同方向、不同形狀以及不同顏色的安全帽檢測都可以呈現較好的泛化能力和魯棒性。同時還在網絡框架中引入了多尺度預測,在特征圖大小分別為13×13,26×26,52×52上進行圖像檢測。由于不同尺度特征圖對不同物體的識別能力有所區別,通過多尺度預測和特征融合的方式能夠有效提高圖像中物體的檢測能力,進而有效的提升整個系統的檢測性能。總體框架如圖1所示。

圖1 總體框架圖
文本中YOLOv3的特征提取網絡使用的是Darknet-53。與YOLOv2中的Darknet-19不同之處在于多了殘差單元模塊,和連續的1×1和3×3卷積層。該網絡結構共包含了53個卷積層以及5個Max-Pooling層。其中,為了防止過擬合現象的產生,在每個卷積層后都會添加歸一化(BN)操作和dropout隨機線性失活操作。
YOLOv3是采用多個不同尺度融合的方式進行預測,結合不同特征圖對不同尺寸目標的檢測能力不同,將不同尺度檢測效果最好的特征圖進行融合的方式能夠提高整體的檢測性能。在YOLOv3中,使用的是維度聚類的方式獲取先驗框從而預測邊界框。通過K-means方法對目標框坐標進行維度聚類,進而得到多個不同大小的先驗框,然后將其分配到多個不同尺度的特征圖上,使得每個特征圖都有著更合適的特征先驗框。在本文訓練過程中,利用二值交叉熵損失進行類別預測。
YOLOv3在目標檢測領域的檢測效果已經很不錯,但是針對本文中的安全帽數據集,仍需要一些改進使其更適應此檢測任務。改進方法如圖2所示。

圖2 方法框架圖
在現實場景中,由于攝像機角度的不同,視頻中的目標物體大小也不一致。因此為了更好的檢測不同尺寸的安全帽,在YOLOv3的基礎上,提出了多尺度圖像金字塔融合、k均值聚類和多尺度訓練算法改進。考慮到不同尺度適合不同尺寸大小物體的檢測,使用多尺度特征預測更能捕捉到圖像全面,深層次的信息。為了使圖像中的目標更好的檢測出來,盡可能的不漏檢,在網絡進行特征提取后,加入一個更大的卷積層,實現不同尺度大小的物體檢測。多尺度融合指的是將不同層次的特征圖融合連接操作,得到最終的三組預測特征圖,然后在這三組預測特征圖上做定位和分類。在實驗中,先通過k均值聚類算法在本文自制的工人數據集上得到預測先驗框維度。YOLOv3算法中的先驗框維度是原先基于COCO數據集上訓練得到,這種方式不能很好的滿足于我們特定的安全帽佩戴檢測任務上,為此需要針對工人安全帽數據集進行聚類操作,來獲取對應的聚類中心。
在實際應用場景中,人員都是流動的,攝像頭需要不斷的捕獲人員,有些場景下攝像頭拍攝角度不是固定不變的。因此為了更好的定位人員,設計了人員跟蹤算法Deep SORT。在實驗中初步采用了SORT算法,但由于該算法使用的相關指標只有在狀態估計的不確定性較低的情況下才能表現出較好的性能,并且在使用過程中容易引起ID切換,因此在遮擋的情況下SORT算法無法跟蹤。而Deep SORT使用更可靠的度量而不是關聯度量,并使用卷積神經網絡對不同行人的數據集進行預訓練,提取行人特征,以增加網絡的魯棒性,從而大大減少了SORT中的ID switches。通過實驗驗證該算法能夠有效減少ID switches,同時在不同場景下的視頻流中也能達到很好的檢測效果。
在本系統中,采用了基于YOLOv3的模型,開發工具為pycharm,開發語言主要為python。Keras是目前主流的深度學習開發框架之一,集成了Tensorflow更方便開發人員使用。在特定的開發環境下,使用該語言,能夠極大的縮短開發時間,其優點如下:
(1)語法簡便,開發環境容易搭建。
(2)封裝多個神經網絡模塊,能夠快速搭建網絡。
(3)做到CPU與GPU資源切換。
通過設計安全帽檢測系統,在工地場景下的工人進行安全帽檢測。當監控攝像頭下存在未佩戴安全帽的工人時,系統做出警報。為確保系統的實時性,在GPU環境中進行了測試。在實時獲取到視頻流時,可能由于網絡環境等因素的影響造成檢測延時,因此使用GPU測試實時性更好。系統接收工地實時監控視頻流,然后通過YOLOv3檢測視頻流中工人是否佩戴安全帽,將檢測的結果實時展示在檢測視頻方框中。實驗結果證明本文的系統對于工地場景下的安全帽檢測達到了不錯的效果,人員是否佩戴安全帽基本上都能被本文所提出的系統所檢測出來。系統測試效果如圖3所示。

圖3 檢測效果圖
總結:本文提出的特征圖深度融合的改進YOLOv3的安全帽檢測系統,它能夠更加關注于圖像的中小型目標,同時能夠構建4種不同尺度的特征金字塔,不同尺度的特征可以更全面的捕獲到圖像中不同尺寸大小的物體,和深層次的語義信息,使得在檢測中更為準確的定位安全帽。在實時檢測中能夠滿足快速、準確的要求。