鄒祥波,饒睦敏,秦士偉,熊會元
(1. 廣東能源集團科學技術研究院有限公司,廣東 廣州510630;2. 視頻圖像智能分析與應用技術公安部重點實驗室,廣東 廣州510006)
安全帽佩戴是各行各業安全生產工作者和高空作業人員必不可少的一種安全措施,每年時有發生因工人未佩戴安全帽、安全帽佩戴不規范而發生意外事故[1]。目前對作業人員安全帽佩戴監管通過人工監管,耗費大量人力財力,且易導致監管不力產生嚴重后果。智慧電廠建設與大數據及人工智能技術發展為安全帽佩戴自動檢測創造條件。
基于深度學習的目標檢測,分為單階段法和雙階段法。雙階段目標檢測算法先對圖像提取候選框,然后基于候選區域做二次修正得到檢測點結果,檢測精度較高,但檢測速度較慢,如Fast-RCNN[2]、Faster-RCNN[3]、Mask R-CNN[4]等;單階段目標檢測算法直接對圖像進行計算生成檢測結果,檢測速度快,但檢測精度低,如SSD[5]、YOLO[6]系列等。
文獻[7]在YOLOv3算法的基礎上將采用DenseNet處理低分辨率的特征層,提出一種改進的YOLOv3的目標檢測網絡,可應用于佩戴安全帽檢測;文獻[8]在YOLOv4算法基礎上,通過膚色特征識別和頭部檢測對安全帽檢測進行優化,在安全帽檢測上準確度達到了94.3%。文獻[9]在Faster RCNN的基礎上使用多層卷積,提出一種區域卷積的安全帽檢測方法。文獻[10]采用了網格搜索與交叉驗證法以增強隨機蕨,應用于安全帽檢測并驗證了有效性。文獻[11]在YOLOv3的基礎上,結合錨框像素特征和權重系數,提出一種檢測安全帽是否佩戴標準的算法。文獻[12]用Faster RCNN方法實現施工現場安全帽佩戴檢測,精度達到88.32%。
上述研究多基于Faster RCNN、YOLOv3、YOLOv4等算法上的改進,并未針對電廠施工維修等復雜的作業場景下安全帽自動檢測中存在目標遮擋、環境光照變化、視距離遠近導致的目標尺度變化等綜合影響以及作業現場對不同類型作業人員佩戴安全帽分類需求。本文面向電廠場景安全帽配套的監管,針對現場復雜環境影響,提出一種基于深度學習的高精度安全帽佩戴自適應檢測模型。
模型框架設計如圖1所示。

圖1 本文模型框架
模型包含數據增強模塊、圖像增強模塊、檢測分類網絡三部分。
數據增強模塊。數據增強模塊主要針對遮擋場景優化處理,模擬真實場景的安全帽遮擋工況,生成遮擋場景數據增強數據集。先選取圖像目標區域,然后隨機選取遮擋區域,以隨機像素值進行遮擋,實現對遮擋場景的模擬。
圖像增強模塊。圖像增強模塊針對光照變化影響優化處理,先將圖像數據轉換到HSV顏色空間信息,通過雙平行網絡融合雙顏色空間信息,得到圖像亮度映射函數,然后調整圖像亮度,實現對強光環境進行抑制,對弱光環境進行增強。
檢測和分類網絡。檢測分類網絡針對安全帽佩戴檢測特點進行網絡結構優化,并實現安全帽的顏色、種類分類。設計K-means聚類自適應匹配數據集的檢測框(Anchor),在神經網絡的骨架網絡的輸入與輸出兩端融合注意力機制,優化神經網絡結構,提升網絡檢測精度,然后基于檢測目標區域,通過模版匹配算法獲得安全帽顏色與種類的分類信息。
作業場景下獲得人員佩戴安全帽圖像易受到自身手部、現場設施、設備與人員等遮擋,導致安全帽圖像不完整,如圖2所示。

圖2 遮擋場景圖像
深度學習模型精度很大程度上取決于訓練集和真實場景的相似度,而電廠施工與維修等場景,存在各種設備設施及人員等干擾,圖像存在大量遮擋現象,現有安全帽數據集遮擋數據樣本少,設計Random-erasing算法對數據進行增強,模擬實際工況遮擋場景,提升模型魯棒性,方法如下:

增強后數據集中含遮擋場景的圖像數量計算方式如下
Total=E×B×ρ
(1)
其中,E為訓練迭代次數(Epoch),B為批量大小(BatchSize),ρ為遮擋概率,遮擋場景增強方法如圖3所示。

圖3 遮擋場景數據增強
遮擋場景增強產生的遮擋數據比例應與真實電廠場景的遮擋現象比例相近,若遮擋數據過少,易造成模型對遮擋現象欠擬合,遮擋場景檢測能力不足;若遮擋數據過多,易造成模型對遮擋現象過擬合。以經驗參數ρ=0.3的概率對原始數據進行遮擋場景數據增強。
施工環境下光照變化大,如圖4所示,光照過強或過弱都影響安全帽佩戴檢測,設計雙平行網絡對強光進行抑制,對弱光進行增強。

圖4 特殊光照場景圖
RGB是日常使用最多的顏色空間,相較于RGB顏色空間,HSV顏色空間可以直觀地表達顏色的色調、鮮艷度和明暗度。HSV 顏色空間由色調(Hue)、飽和度(Saturation)、亮度(Value)三部分組成。將圖像從RGB顏色空間轉化為HSV顏色空間,作為下文中網絡的第二路輸入。其轉換方式如下

(2)

(3)
V=MAX
(4)
其中:R、G、B為紅(R)、綠(G)、藍(B)的顏色值;H、S、V 為色調(H)、飽和度(S)、亮度(V)值;MAX 表示R、G、B中最大值,MIN 為最小值;H取值范圍為[0,360°],S取值范圍為[0,100°],V取值范圍為[0, MAX]。
雙平行網絡的網絡結構如圖5所示。

圖5 雙平行網絡的網絡結構
如圖5所示,雙平行網絡由上下兩路組成。上路輸入為RGB圖像,經過4層卷積層,下路輸入為HSV圖像,也經過4層卷積層,然后上下兩路提取的信息進行融合,最后通過全連接層實現圖像自適應調整。
2.4.1 目標自適應匹配
深度學習算法應用于目標檢測大多是基于檢測框的,而基于檢測框的目標檢測算法需預先設置檢測框參數,如在SSD、Faster-RCNN設計了9個不同大小和寬高比的檢測框。施工環境下,視距不一致導致安全帽目標具有多尺度性,預先設置的檢測框參數不能精準匹配目標對象,直接影響模型的檢測精度。
設計K-means聚類算法實現對象目標檢測自適應匹配,對圖像數據目標框進行聚類,根據聚類結果生成一組與數據集相匹配的檢測框參數,提升模型檢測效率與精度。
算法流程如下所示:

2.4.2 前后端融合雙注意力卷積神經網絡
基于檢測框的目標檢測卷積神經網絡多由輸入、骨架網絡(BackBone)、Neck模塊、輸出組成。輸入為原始圖像RGB三通道信息;骨架網絡也稱特征提取網絡,處理輸入圖進而得到特征圖;Neck模塊對骨架網絡所輸出的特征圖進一步加工,加強特征信息;輸出為目標物體的位置、邊框大小以及類別等等。
其中,骨架網絡起到提取特征的主要作用,而所提取的特征并不都對最終檢測結果有益,若能使網絡學習到各特征權重,保留有利于安全帽檢測的特征,舍棄不重要特征,則可提升網絡檢測效果。此外,若對圖像RGB通道信息添加額外權重,則改變RGB三個通道的權重大小可以組合出任意的顏色變換。而安全帽顏色多為純色,若能使卷積神經網絡從RGB通道信息中學習一組權重,組合出安全帽的顏色,則可降低卷積神經網絡提取佩戴安全帽特征的難度。
通道注意力機制[18]可學習不同通道之間的重要程度,篩選出部分重要通道的信息,提升神經網絡模型的檢測效果。注意力模塊流程如圖6所示,Fsq(uc)將一個通道數為c、長為H、寬為W的特征圖,壓縮成通道數為c、長寬為1的特征圖,即全局平均池化操作,以此特征圖表示全局信息。Fex(z,W)對全局池化后的結果進行兩層全連接,中間經過Relu激活函數,再經過sigmoid激活函數使得數值位于0-1之間,便得到權重矩陣。

(5)
Fex(z,W)=σ(g(z,W))=σ(W2δ(W1z))
(6)
其中,σ表示sigmoid激活函數,δ表示Relu激活函數,W為權重矩陣。

圖6 通道注意力流程[18]
在骨架網絡輸入端和輸出端融合通道注意力機制,設計前后端融合雙注意力檢測網絡如圖7所示。

圖7 前后端融合雙注意力檢測網絡結構圖
網絡以RGB圖像作為輸入,然后依次經過注意力模塊、骨架網絡、注意力模塊、Neck模塊,最后得到輸出。
2.4.3 模版匹配安全帽分類設計
安全帽模版匹配分類方法包含底圖模版制作和模版匹配兩個步驟。如圖8所示,根據模型檢測結果獲得待分類的目標區域,將目標區域與底圖模版進行匹配并實現分類。

圖8 顏色與種類分類方法
底圖模版制作。數據集圖像數量有12581張,分類時對每張圖像匹配耗時巨大,底圖模版匹配是一種高效方法。目標顏色有四種:紅、白、黃、藍。選取四個全白、全紅、全黃、全藍的RGB圖像作為模版圖像,然后轉換到HSV 顏色空間,選取H通道信息作為底圖模版進行后續計算。
模版匹配。根據網絡檢測到佩戴安全帽的位置信息,在原始圖像中截取安全帽位置區域的圖像,將其轉換到HSV顏色空間,選取H通道信息,計算與四個模版的歐式距離,并根據歐式距離計算結果選取距離閾值。若計算結果在閾值內的,選取距離最小的模版作為分類結果;若計算結果在閾值外,則認為該安全帽屬于其他類。
本文構建的數據集來源于開源的安全帽檢測數據集和自制數據。自制數據均采集自電廠環境。將兩部分數據融合,統一圖像命名規則,格式化標注信息,從數據集中刪除模糊、標注錯誤、場景不符的圖像。最終數據集情況如表1所示。

表1 安全帽數據集
實驗的軟件環境為:Ubuntu20.04、CUDA11.2、Python3.8,Pytorch1.4,還包括一些Python基本庫,如OpenCV、Numpy等。實驗硬件環境如表2所示。

表2 實驗硬件環境
平均精度均值(Mean Average Precision,mAP)常用來度量目標檢測模型性能。平均精度均值(mAP)越高,模型性能越好。在計算平均精度均值時,需先計算精度(precision)和召回率(recall),計算公式如下

(7)

(8)
其中:TP表示標簽為正,預測為正的樣本數量;FP表示標簽為負,預測為正的樣本數量;FN表示標簽為正,預測為負的樣本數量。
P-R曲線是以精度P為縱軸、召回率R為橫軸的二維曲線,P-R曲線下的陰影面積為平均精度值(AP),其計算公式如下

(9)
對每一類目標的平均精度值(AP)取均值,即為平均精度均值(mAP)的值。
將數據集按8:1:1大小劃分為訓練集、測試集、驗證集。使用遷移學習,加載ImageNet上的預訓練權重參數作為初始化參數,在自制安全帽數據集上微調(finetune),訓練200個迭代次數(epoch),初始學習率為0.001,實驗超參數設置如表3所示。

表3 超參數設置說明表
模型在200個epoch訓練過程中的平均精度均值(mAP)變化如圖9所示。

圖9 訓練過程平均精度變化
模型平均精度(mAP)達96.34%,其測試結果混淆矩陣如圖10所示。

圖10 模型混淆矩陣
在驗證數據集上使用SSD、YOLOv3、FasterR-CNN、YOLOv5等算法進行對比實驗,結果如表4所示。

表4 對比實驗結果
從測試和驗證數據集中挑選300張含電廠環境的圖像進行消融實驗,驗證本文各個模塊算法的有效性。結果如表5所示。

表5 消融實驗結果
在珠海電廠進行模型部署和實地實驗,分別選取普通場景、未佩戴安全帽場景、弱光場景、強光場景、遮擋場景、混合場景圖像進行測試,結果如圖11所示。

圖11 電廠環境下安全帽佩戴檢測
從實驗結果指標和實地應用效果可以看出,本文所述方法可以很好適應電廠環境下的多種干擾,且模型平均精度達到96.61%,高于Faster R-CNN、YOLOv5等對比算法。消融實驗驗證了在電廠環境下,對安全帽佩戴檢測采取數據增強、圖像增強、融合注意力機制網絡都有效提升了檢測精度。
針對電廠環境下安全帽佩戴檢測過程中的遮擋、強光、弱光、多尺度目標問題,本文提出了一種施工環境下基于深度學習的安全帽佩戴檢測與分類方法,利用卷積神經網絡、注意力機制、圖像處理和數據增強方法,構建電廠環境下安全帽佩戴檢測模型,在施工環境下能保證模型檢測的高準確度。構建了電廠環境工況下安全帽數據集,在該數據集上對本文算法和目前先進算法進行對比實驗和消融實驗,實驗結果表明相較于SSD、YOLOv3、Faster R-CNN、YOLOv5等網絡。本文方法在保證檢測速度的同時提高了檢測精度,對工程管理人員在電廠環境下安全帽佩戴監管有重要借鑒意義,同時也為解決其他工程環境下的目標檢測領域問題提供了參考。