鐘源建,劉添榮,李卓亮
(廣州電力工程監(jiān)理有限公司,廣東 廣州 510660)
企業(yè)施工具有行業(yè)危險(xiǎn)性與建筑工業(yè)復(fù)雜性的特點(diǎn),這使得施工現(xiàn)場(chǎng)危險(xiǎn)程度高,佩戴安全帽能夠有效降低安全事故的發(fā)生,而單純依賴于安全巡視員現(xiàn)場(chǎng)巡視和開展安全教育培訓(xùn)是遠(yuǎn)遠(yuǎn)不夠的[1]。采用AI技術(shù)對(duì)施工現(xiàn)場(chǎng)實(shí)施安全監(jiān)控,能有效提高工作效率。對(duì)安全帽檢測(cè)在天氣、光照強(qiáng)度等外界因素影響下出現(xiàn)的準(zhǔn)確度低、漏檢率大、錯(cuò)檢率高問題,在YOLO-ST中引入密集空間金字塔池化模塊,有效豐富了獲取目標(biāo)中的細(xì)節(jié)信息,大大提高了檢測(cè)準(zhǔn)確率[2]。結(jié)合安全帽數(shù)據(jù)集的目標(biāo)尺度偏小、尺度分布不均衡問題,對(duì)SSD模型結(jié)構(gòu)實(shí)施改進(jìn),添加了實(shí)施特征融合的分支網(wǎng)絡(luò),使得安全帽佩戴檢測(cè)的準(zhǔn)確率大大提升[3]。在傳統(tǒng)YOLO v4網(wǎng)絡(luò)中加入注意力機(jī)制模塊來對(duì)安全帽特征進(jìn)行聚焦,對(duì)YOLO v4網(wǎng)絡(luò)進(jìn)行改進(jìn),并與視頻監(jiān)控相結(jié)合,提出了安全帽佩戴檢測(cè)模型,該模型對(duì)識(shí)別率為42幀/s,能夠有效滿足檢測(cè)的實(shí)時(shí)性要求[4]。采用AI算法對(duì)施工現(xiàn)場(chǎng)安全帽佩戴不合規(guī)實(shí)施預(yù)警,對(duì)降低員工安全事故具有一定的實(shí)際意義。
YOLO算法是AI在目標(biāo)檢測(cè)領(lǐng)域的重要算法。YOLO能夠在一次前向傳遞中直接預(yù)測(cè)目標(biāo)位置與類別,具有比較高的檢測(cè)效率。YOLO v4作為YOLO系列的第4個(gè)版本,是基于深度學(xué)習(xí)的物體檢測(cè)算法,其采用卷積神經(jīng)網(wǎng)絡(luò)端到端的檢測(cè)模型,通過多尺度特征與多層次特征融合來檢測(cè)物體,大大提升了物體檢測(cè)的精度和效率[5]。傳統(tǒng)網(wǎng)絡(luò)所采用的激活函數(shù)往往不能夠?qū)ξ矬w圖像的梯度信息進(jìn)行有效保留,造成物體檢測(cè)準(zhǔn)確率不高。YOLO v4采用的是Mish激活函數(shù),其數(shù)學(xué)表達(dá)式為[6]
(1)
Mish激活函數(shù)有上界無下界,避免了在網(wǎng)絡(luò)訓(xùn)練過程中存在的梯度飽和問題,同時(shí)函數(shù)為非單調(diào)函數(shù),穩(wěn)定了網(wǎng)絡(luò)梯度流。Mish激活函數(shù)還具有無窮階連續(xù)性與光滑性,這使得網(wǎng)絡(luò)具有比較好的泛化能力。YOLO v4采用Mish激活函數(shù)使得檢測(cè)物體圖像的梯度信息得到保留,具有更好的平滑非線性特征,大大提升了模型的訓(xùn)練學(xué)習(xí)能力。YOLO v4采用CSPDarknet53骨干網(wǎng)絡(luò),具有比較高的精度和效率,其網(wǎng)絡(luò)結(jié)構(gòu)如圖1所示[7]。
圖1 YOLO v4網(wǎng)絡(luò)結(jié)構(gòu)
(1)輸入層:接受輸入的圖像數(shù)據(jù);
(2)Convolutional Layers:一系列的卷積層用于提取圖像的特征。CSPDarknet53使用多個(gè)卷積層來實(shí)現(xiàn)不同尺度的特征提取[8];
(3)CSP Blocks:CSPDarknet53引入了CSP Block作為主要的特征提取模塊。CSP Block的設(shè)計(jì)采用了部分連接的思想,將輸入特征分成2個(gè)部分:其中一部分經(jīng)過一系列的卷積操作;另一部分直接進(jìn)行跨階段連接。通過這種設(shè)計(jì),CSP Block能夠充分利用淺層和深層特征的信息,提高特征的表達(dá)能力;
(4)Residual Connections:CSPDarknet53在網(wǎng)絡(luò)中引入了殘差連接,將前一層的特征直接與后續(xù)層的特征相加,有助于信息的傳遞和梯度的流動(dòng);
(5)Downsample Layers:通過下采樣操作(如池化或卷積步長(zhǎng)調(diào)整)來減小特征圖的尺寸,提取更高級(jí)別的特征[9];
(6)Upsample Layers:通過上采樣操作(如反卷積)來增加特征圖的尺寸,恢復(fù)較低級(jí)別的特征;
(7)最終特征層:網(wǎng)絡(luò)的最后一層輸出最終的特征圖,用于目標(biāo)檢測(cè)和定位。
YOLO v4在進(jìn)行目標(biāo)檢測(cè)是具有顯著的優(yōu)勢(shì),但是對(duì)存在大量重疊或者密集目標(biāo)時(shí),其可能會(huì)出現(xiàn)目標(biāo)漏檢或者重復(fù)檢測(cè)的問題,這使得傳統(tǒng)的YOLO v4在處理大量重疊或密集目標(biāo)時(shí)面臨巨大的挑戰(zhàn)[10]。另外,YOLO v4采用單個(gè)邊框來預(yù)測(cè)目標(biāo)的位置與大小,這使得在處理復(fù)雜形狀或模糊邊界目標(biāo)時(shí)往往存在邊界框和目標(biāo)之間存在比較大的偏差。YOLO v4的缺陷使得其在施工現(xiàn)場(chǎng)安全帽檢測(cè)的過程中精度不高,需要進(jìn)行模型的改進(jìn)。
為了有效解決傳統(tǒng)YOLO v4模型對(duì)小目標(biāo)、遮擋目標(biāo)以及復(fù)雜背景下目標(biāo)檢測(cè)精度低的問題,引入SENet(Squeeze-and-Excitation Network)注意力機(jī)制,通過學(xué)習(xí)通道間的依賴關(guān)系來自適應(yīng)地調(diào)整特征圖的通道權(quán)重[11]。SENet主要包括Squeeze操作、Excitation操作以及Scale操作。Squeeze操作,即特征壓縮操作,用來降低輸入特征圖的維度,達(dá)到減少模型計(jì)算復(fù)雜度的目的。通過Squeeze操作提取全局統(tǒng)計(jì)信息,捕捉通道間的相關(guān)性,其數(shù)學(xué)表達(dá)式為:
(2)
Excitation操作是通過一系列全連接層或卷積層來學(xué)習(xí)通道間的依賴關(guān)系,并生成一個(gè)通道權(quán)重向量,通過激活函數(shù)和非線性變換來建模通道之間的相互關(guān)系。Scale操作是將通道權(quán)重向量乘以原始的特征圖,以加權(quán)增強(qiáng)特征圖中的每個(gè)通道。通過自適應(yīng)地調(diào)整通道的權(quán)重,重要特征得到了更多的關(guān)注,而不重要的特征則被抑制[12]。圖2為SENet模塊。
圖2 SENet模塊
邊界框回歸損失函數(shù)是目標(biāo)檢測(cè)任務(wù)中用于度量預(yù)測(cè)邊界框與真實(shí)邊界框之間差異的損失函數(shù),常常采用交并比(IoU),其數(shù)學(xué)表達(dá)式為[13]:
(3)
式中:A為真實(shí)標(biāo)定框;B為預(yù)測(cè)候選框。
很明顯,如果A∩B=?,那么交并比為0,無法進(jìn)行網(wǎng)絡(luò)訓(xùn)練[14]。結(jié)合前人的研究成果,對(duì)其進(jìn)行改進(jìn),定義邊界框回歸損失函數(shù)(GIOU)為:
(4)
式中:C為包含A和B的最小框。
很明顯所定義的邊界框回歸損失函數(shù)沒有考慮真實(shí)標(biāo)定框和預(yù)測(cè)候選框中心的距離,對(duì)其進(jìn)行修正,提出新的邊界框回歸損失函數(shù),即:
(5)
式中:b、bgt分別為預(yù)測(cè)框與真實(shí)框的中心點(diǎn);ρ(b,bgt)為預(yù)測(cè)框與真實(shí)框中心點(diǎn)歐氏距離;c為預(yù)測(cè)框與真實(shí)框相交矩形區(qū)域?qū)蔷€長(zhǎng)度;ωgt、ω分別為真實(shí)框、預(yù)測(cè)框的寬度;hgt、h分別為真實(shí)框、預(yù)測(cè)框的高度。
采用多候選框?qū)W習(xí)策略,即在初始的待檢測(cè)目標(biāo)候選框基礎(chǔ)上,通過整合目標(biāo)的位置信息和分類置信度信息來優(yōu)化候選框的位置和分類置信度。在多候選框?qū)W習(xí)策略迭代的過程中不斷地優(yōu)化損失函數(shù),并優(yōu)化候選框參數(shù),提升目標(biāo)檢測(cè)的準(zhǔn)確性,使得最終選出的候選框具有更高的置信度并更接近目標(biāo)的真實(shí)位置[15]。
(1)將待檢測(cè)目標(biāo)(施工現(xiàn)場(chǎng)員工人頭)的候選框構(gòu)成數(shù)組Ai,計(jì)算候選框分類置信度和位置信息,計(jì)算公式為:
(6)
從數(shù)組Ai中選取分類置信度和位置得分最高的候選框,使用其相關(guān)信息更新模型參數(shù)。
(2)為了獲取更準(zhǔn)確的分類置信度和位置得分,采用當(dāng)前計(jì)算模型來計(jì)算數(shù)組Ai中候選框的分類置信度與位置。
(3)通過多次迭代上述步驟,不斷更新模型參數(shù)并重新評(píng)估候選框的分類置信度和位置,從而得到最優(yōu)的安全帽佩戴檢測(cè)候選框信息。
選擇深化方法是一種對(duì)抗過程,包括候選框選取、特征學(xué)習(xí)、迭代執(zhí)行,通過選擇和深化候選框來不斷優(yōu)化最終得到問題的最優(yōu)解。選擇深化方法的過程是首先選出分類置信度和位置得分較高的候選框,然后通過深化方法來學(xué)習(xí)未被選中的候選框中的特征。在迭代的過程中不斷地重復(fù)選擇與深化,從而達(dá)到逐步逼近最優(yōu)解的目的。
數(shù)據(jù)來源于開源的安全帽數(shù)據(jù)集(SHWD),在該數(shù)據(jù)集中有7 581張圖片,其中正樣本(佩戴安全帽)個(gè)數(shù)為9 044,負(fù)樣本(未佩戴安全帽)個(gè)數(shù)為111 514,正負(fù)樣本比例近似為1∶12[16]。正負(fù)樣本個(gè)數(shù)差距非常大,容易導(dǎo)致模型預(yù)測(cè)結(jié)果偏向于負(fù)樣本分類,降低預(yù)測(cè)模型的泛化能力。為增加正樣本數(shù)量,在SHWD數(shù)據(jù)集中增加4 000張施工現(xiàn)場(chǎng)佩戴安全帽的圖像,并采用LabeLImg手動(dòng)標(biāo)注新增圖像工人佩戴安全帽情況,共標(biāo)注了18 326個(gè)佩戴安全帽的樣本。
在電腦上開展試驗(yàn),電腦處理器為Intel(R) Core(TM) i5-10300H CPU @ 2.50GHz,操作系統(tǒng)為Windows 10 家庭中文版。各方法均采用PyTorch深度學(xué)習(xí)框架[17],設(shè)定最大迭代次數(shù)為200,學(xué)習(xí)率為0.014,同時(shí)采用等間隔方法調(diào)整學(xué)習(xí)率。將本文算法和YOLO v2[18]、YOLO v3[19]、YOLO v4[20]進(jìn)行性能對(duì)比,對(duì)比結(jié)果如表1所示。
表1 算法性能對(duì)比
由表1可知,本文所提出的算法是對(duì)YOLO v4的改進(jìn),在特定層插入注意力模塊,這使得全類平均正確率(mAP)數(shù)值得到了明顯提升。相對(duì)于YOLO v2、YOLO v3、YOLO v4,改進(jìn)的YOLO v4計(jì)算量最大,但是依舊可以滿足視頻監(jiān)控實(shí)時(shí)檢測(cè)幀率大于30幀/s的需求,同時(shí)也確保了施工現(xiàn)場(chǎng)安全帽佩戴檢測(cè)準(zhǔn)確性的大大提升。損失函數(shù)對(duì)目標(biāo)檢測(cè)的效果具有重要影響,分析不同損失函數(shù)的影響,結(jié)果如圖3所示。
圖3 不同回歸損失函數(shù)訓(xùn)練過程
由圖3可知,采用IoU回歸損失函數(shù)mAP值為82.3%;采用GIoU回歸損失函數(shù)mAP值為86.7%,采用CIoU回歸損失函數(shù)mAP值為94.6%,即采用CIoU回歸損失函數(shù)的目標(biāo)檢測(cè)性能最佳。同時(shí),采用CIoU回歸損失函數(shù)相對(duì)于IoU、GIoU回歸損失函數(shù),其收斂效率更高且更容易區(qū)域穩(wěn)定。
對(duì)比采用多候選框策略和未采用多候選框策略,結(jié)果表明:當(dāng)采用多候選框策略時(shí),其mAP為97.8%;未采用多候選框策略時(shí),其mAP為92.6%,即采用多候選框策略大大提升了目標(biāo)檢測(cè)的性能。未采用多選候選框策略出現(xiàn)了漏檢,采用多候選框策略不僅提升了施工現(xiàn)場(chǎng)安全帽佩戴的檢測(cè)性能,同時(shí)也可以有效避免漏檢的出現(xiàn)。
施工現(xiàn)場(chǎng)安全帽預(yù)警直接關(guān)系到施工現(xiàn)場(chǎng)工人的生命安全,提出了基于改進(jìn)YOLO v4的工人安全帽佩戴檢測(cè)算法。改進(jìn)的YOLO v4在特定層插入注意力模塊,定義了新的邊界框回歸損失函數(shù),同時(shí)采用多候選框?qū)W習(xí)策略。將提出的安全帽佩戴檢測(cè)模型應(yīng)用于安全帽數(shù)據(jù)集SHWD,結(jié)果表明所提出的改進(jìn)模型能夠快速、準(zhǔn)確檢測(cè)施工現(xiàn)場(chǎng)工人佩戴安全帽情況,同時(shí)發(fā)出預(yù)警,這對(duì)降低施工現(xiàn)場(chǎng)安全管理成本,提升安全管理質(zhì)量具有一定的參考價(jià)值。