王艷鵬,王振亞,趙繼紅,葛廣英
(1. 聊城大學(xué)物理科學(xué)與信息工程學(xué)院,山東 聊城 252059;2. 聊城大學(xué)計(jì)算機(jī)學(xué)院,山東 聊城 252059)
在各種工業(yè)領(lǐng)域和施工現(xiàn)場(chǎng)中,安全帽是一種重要的個(gè)人防護(hù)裝備,它能夠保護(hù)頭部免受意外傷害。然而,在實(shí)際場(chǎng)景中,由于種種原因,人們可能沒(méi)有正確佩戴安全帽或者違規(guī)不佩戴安全帽,這會(huì)增加事故發(fā)生的風(fēng)險(xiǎn)。通過(guò)開發(fā)和應(yīng)用安全帽佩戴識(shí)別技術(shù),可以自動(dòng)監(jiān)測(cè)和檢測(cè)工作人員是否正確佩戴安全帽,及時(shí)發(fā)現(xiàn)佩戴違規(guī)行為,提醒相關(guān)人員遵守安全規(guī)定,防止事故的發(fā)生。因此,研究復(fù)雜環(huán)境下安全帽佩戴識(shí)別方法具有一定的現(xiàn)實(shí)意義。
為了有效對(duì)復(fù)雜環(huán)境下安全帽佩戴進(jìn)行識(shí)別[1,2],許凱等人[3]通過(guò)增加特征圖的方式對(duì)YOLOv3算法進(jìn)行改進(jìn),使用K-means聚類算法對(duì)安全帽數(shù)據(jù)集進(jìn)行聚類,將GIoU Loss作為邊界損失,減少正負(fù)樣本帶來(lái)的不均衡誤差,最終實(shí)現(xiàn)安全帽佩戴識(shí)別。張明媛等人[4]主要通過(guò)深度學(xué)習(xí)算法對(duì)建筑工人安全帽佩戴進(jìn)行識(shí)別。施輝等人[5]主要采用改進(jìn)的YOLOv3算法進(jìn)行安全帽佩戴檢測(cè),最終判定施工人員是否佩戴安全帽。在以上方法的基礎(chǔ)上,提出一種基于改進(jìn)YOLOv5的復(fù)雜環(huán)境下安全帽佩戴識(shí)別方法。經(jīng)實(shí)驗(yàn)測(cè)試結(jié)果證明,所提方法可以有效提升施工人員骨骼點(diǎn)提取精度和頭部區(qū)域定位結(jié)果準(zhǔn)確性,同時(shí)還能夠獲取滿意的安全帽佩戴識(shí)別結(jié)果。
通過(guò)Open Pose對(duì)施工人員姿態(tài)信息進(jìn)行估計(jì),進(jìn)而獲取關(guān)鍵部位的骨骼信息。通過(guò)頭部和左右肩構(gòu)建一個(gè)三角區(qū)域,以頭部為中心旋轉(zhuǎn)180°,獲取一個(gè)全新的三角區(qū)域,將新舊三角區(qū)域組合,形成一個(gè)四邊形。將四邊形的最長(zhǎng)對(duì)角線作為直徑,繪制一個(gè)最大外圓。其中,所構(gòu)成的四邊形對(duì)角線長(zhǎng)度可以表示為式(1)和式(2)的形式
(1)
(2)
根據(jù)式(1)和式(2)可以獲取施工人員關(guān)鍵部位骨骼點(diǎn)信息。
YOLOv5是一種目標(biāo)識(shí)別算法,主要包含四種不同類型的網(wǎng)絡(luò)結(jié)構(gòu),以下主要使用基礎(chǔ)的YOLOv5,同時(shí)在其基礎(chǔ)上對(duì)其進(jìn)行改進(jìn)。YOLOv5主要是由三個(gè)部分組成,分別為:
1)輸入端
輸入端主要使用Mosaic數(shù)據(jù)增強(qiáng)方法,可以在數(shù)據(jù)集中隨機(jī)抽取圖像進(jìn)行縮放以及裁剪等相關(guān)操作,最后再拼接成一幅圖像。針對(duì)YOLOv5算法而言,需要針對(duì)識(shí)別對(duì)象的不同,設(shè)定錨框的初始長(zhǎng)和寬,由于網(wǎng)絡(luò)設(shè)置了內(nèi)部程序,當(dāng)錨框的計(jì)算數(shù)值小于設(shè)定閾值,需要重新設(shè)定錨框的長(zhǎng)和寬。
2)骨干網(wǎng)絡(luò)
骨干網(wǎng)絡(luò)主要是由Focus結(jié)構(gòu)和CSPDarknet53結(jié)構(gòu)組成,前者在圖像下采樣過(guò)程中,可以有效降低模型計(jì)算量帶來(lái)的損失;而后者可以獲取融合后的網(wǎng)絡(luò)結(jié)構(gòu),同時(shí)可以對(duì)圖像進(jìn)行相關(guān)處理。
3)頸部
YOLOv5頭部主要使用FPN結(jié)構(gòu),FPN的頂部是逐漸向下的,可以將圖像頂部的特征圖和底部的特征圖信息進(jìn)行融合。增加一個(gè)全新的PAN結(jié)構(gòu),將底部的特征圖信息和特征頂部的特征圖進(jìn)行進(jìn)行二次融合,確保獲取的特征圖融合信息更加豐富,表達(dá)能力更強(qiáng)[6,7]。
YOLOv5損失函數(shù)一共包含三個(gè)部分,具體的表達(dá)形式如式(3)所示
Mloss=Mbos+Mcls+Mobj
(3)
式中,Mloss代表YOLOv5損失函數(shù);Mbos代表定位損失;Mcls代表分類損失;Mobj代表置信度損失。
通過(guò)YOLOv5基本組成結(jié)構(gòu)進(jìn)一步對(duì)其進(jìn)行改進(jìn),在原有網(wǎng)絡(luò)結(jié)構(gòu)的基礎(chǔ)上增加SSH模塊和識(shí)別層,詳細(xì)組成結(jié)構(gòu)如下所示:
1)SSH模塊因?yàn)槌叨炔蛔冃?將上下文信息進(jìn)行整合和合并,進(jìn)而達(dá)到增加視野的目的。
2)在安全帽佩戴識(shí)別的過(guò)程中,在較小目標(biāo)識(shí)別過(guò)程中,將原始的尺度預(yù)測(cè)結(jié)構(gòu)拓展為四種尺度,同時(shí)將設(shè)定規(guī)格的特征圖進(jìn)行上采樣,將卷積過(guò)程中的特征圖進(jìn)行拼接,進(jìn)行四次預(yù)測(cè)。
利用圖1給出基于YOLOv5的復(fù)雜環(huán)境下安全帽佩戴識(shí)別方法的操作流程圖:
圖1 基于改進(jìn)YOLOv5的復(fù)雜環(huán)境下安全帽佩戴識(shí)別流程圖
1)對(duì)施工人員的人體關(guān)鍵點(diǎn)檢測(cè)器進(jìn)行訓(xùn)練,使其能夠獲取更加滿意的檢測(cè)結(jié)果。
2)提取視頻檢測(cè)窗口:
安裝攝像頭采集圖像,同時(shí)對(duì)安全帽和人體框進(jìn)行檢測(cè)[8,9],主要使用改進(jìn)后的YOLOv5。
3)人體關(guān)鍵點(diǎn)、人體框和安全帽檢測(cè):
將視頻幀圖像輸入至完成訓(xùn)練的模型中,進(jìn)行視頻幀圖像檢測(cè),獲取安全框和人體框的具體位置信息。
4)對(duì)施工人員頭部區(qū)域進(jìn)行定位[10,11]:
通過(guò)施工人員頭部關(guān)鍵點(diǎn)位置,定位區(qū)域中心點(diǎn),同時(shí)將人體框中較短邊作為邊長(zhǎng)繪制矩形,即為人體頭部所在的區(qū)域。
5)判斷是否佩戴安全帽:
通過(guò)安全帽位置和頭部區(qū)域位置識(shí)別施工人員是否佩戴安全帽。
施工現(xiàn)場(chǎng)采集到的圖像會(huì)自動(dòng)進(jìn)入前饋網(wǎng)絡(luò)中,根據(jù)網(wǎng)絡(luò)的上下分支預(yù)測(cè)關(guān)鍵點(diǎn)的置信度,同時(shí)還可以獲取各個(gè)部位之間的關(guān)聯(lián)性。將第一階段得到的置信圖和原始特征圖同時(shí)輸入到第二階段進(jìn)行預(yù)測(cè),對(duì)應(yīng)的計(jì)算公式如下
T(S)=α(i)(r,s(t-1),l(t-1))
(4)
L(t)=β(i)(r,s(t-1),l(t-1))
(5)
式中,T(S)和L(t)代表第二階段預(yù)測(cè)結(jié)果;α(i)(r,s(t-1),l(t-1))和β(i)(r,s(t-1),l(t-1))分別代表兩個(gè)不同階段使用的網(wǎng)絡(luò)。
為了確保每一個(gè)預(yù)測(cè)階段都可以獲取比較滿意的預(yù)測(cè)結(jié)果,在最后一個(gè)階段,需要在各個(gè)階段設(shè)定對(duì)應(yīng)的損失函數(shù)。同時(shí)通過(guò)預(yù)測(cè)值和真實(shí)值之間的損失對(duì)損失函數(shù)進(jìn)行加權(quán)處理,其中兩個(gè)不同分支的損失函數(shù)可以表示為式(6)的形式:
(6)
為了在訓(xùn)練過(guò)程中可以對(duì)置信度圖的損失函數(shù)進(jìn)行評(píng)價(jià),需要優(yōu)先對(duì)關(guān)鍵點(diǎn)形成的置信度圖進(jìn)行標(biāo)注。
針對(duì)每個(gè)施工人員形成個(gè)體置信度圖,則圖像像素位置對(duì)應(yīng)的置信度T(j,k)(p)可以表示為式(7)的形式
(7)
式中,x(j,k)代表人體真實(shí)位置。
當(dāng)獲取全部施工人員各個(gè)部位的置信度圖后,需要進(jìn)行最大值操作,進(jìn)而獲取網(wǎng)絡(luò)的預(yù)測(cè)置信度圖T(j)(p),如式(8)所示
T(j)(p)=maxT(j,k)(p)
(8)
通過(guò)式(9)表示真實(shí)的親和矢量場(chǎng)M(c,k)(p)
(9)
式中,w代表施工人員肢體方向上的單位矢量。
對(duì)全部人體目標(biāo)的相同肢體進(jìn)行平均,進(jìn)而獲取這一階段輸出部分的親和矢量場(chǎng),如式(10)所示
(10)
式中,mc(p)代表連接向量。
根據(jù)檢測(cè)出的部位置信度圖進(jìn)行非極大值抑制,獲取離散候選部位位置。優(yōu)先獲取圖像中包含多個(gè)人身體部位點(diǎn)的集合,同時(shí)對(duì)檢測(cè)到的候選點(diǎn)部位進(jìn)行最優(yōu)分配[12,13]。
當(dāng)?shù)玫蕉鄠€(gè)施工人員的全身姿態(tài)信息后,需要引入松弛策略進(jìn)行優(yōu)化處理,同時(shí)將目標(biāo)轉(zhuǎn)換為以下形式
(11)
改進(jìn)的YOLOv5算法就是將檢測(cè)目標(biāo)集成為一個(gè)單一的神經(jīng)網(wǎng)絡(luò),根據(jù)整張圖像的特征直接預(yù)測(cè)各個(gè)邊界框位置和全部目標(biāo)分類[14,15]。改進(jìn)YOLOv5算法在邏輯上會(huì)優(yōu)先將圖像劃分為t×t個(gè)網(wǎng)格,對(duì)于每個(gè)網(wǎng)格而言,需要優(yōu)先預(yù)測(cè)邊界框內(nèi)全部目標(biāo)概率以及準(zhǔn)確度。通常情況下,可以將這個(gè)置信度S(object)表示為式(11)的形式:
(12)
在測(cè)試的過(guò)程中,可以獲取每個(gè)邊框的分類置信度分?jǐn)?shù)Sr(class(i)|object),如式(13)所示
(13)
采用改進(jìn)的YOLOv5算法對(duì)網(wǎng)格邊框數(shù)量進(jìn)行預(yù)測(cè),可以獲取訓(xùn)練過(guò)程中的損失函數(shù)。
通過(guò)改進(jìn)的YOLOv5算法可以對(duì)人體關(guān)鍵點(diǎn)進(jìn)行檢測(cè),獲取關(guān)鍵點(diǎn)信息,可以表示為圖2的形式。
圖2 人體關(guān)鍵點(diǎn)檢測(cè)結(jié)果
(14)
對(duì)安全帽和人體頭部所在區(qū)域的位置進(jìn)行判斷,假設(shè)安全帽框在人體頭部框內(nèi),則說(shuō)明施工人員佩戴了安全帽,反之,則說(shuō)明施工人員沒(méi)有佩戴安全帽,最終達(dá)到復(fù)雜環(huán)境下安全帽佩戴識(shí)別的目的。
為了驗(yàn)證所提基于改進(jìn)YOLOv5的復(fù)雜環(huán)境下安全帽佩戴識(shí)別方法的有效性,實(shí)驗(yàn)選取MPII數(shù)據(jù)集對(duì)施工人員姿態(tài)進(jìn)行估計(jì),優(yōu)先分析三種方法的人體骨骼關(guān)鍵點(diǎn)特征提取結(jié)果,詳細(xì)實(shí)驗(yàn)結(jié)果如圖3所示。
圖3 施工人員身體骨骼關(guān)鍵點(diǎn)提取結(jié)果
分析圖3可知,無(wú)論是在單人還是多人情況下,所提方法都可以準(zhǔn)確對(duì)施工人員的身體關(guān)鍵點(diǎn)進(jìn)行提取,驗(yàn)證了所提方法的有效性。
接下來(lái)對(duì)比三種不同方法的頭部區(qū)域定位結(jié)果,將交并比(IoU)作為衡量指標(biāo),該值越高,說(shuō)明定位結(jié)果越準(zhǔn)確,詳細(xì)的實(shí)驗(yàn)測(cè)試結(jié)果如圖4所示。
圖4 不同方法的頭部區(qū)域定位結(jié)果
由圖4可知,與文獻(xiàn)[3]方法和文獻(xiàn)[4]方法相比,所提方法可以獲取高精度的頭部區(qū)域定位結(jié)果。
選取一組施工人員現(xiàn)場(chǎng)施工圖片作為測(cè)試對(duì)象,分析三種不同方法復(fù)雜環(huán)境下的安全帽佩戴識(shí)別性能,詳細(xì)的實(shí)驗(yàn)測(cè)試結(jié)果如圖5所示。
圖5 復(fù)雜環(huán)境下安全帽佩戴識(shí)別結(jié)果對(duì)比
分析圖5可知,無(wú)論是在哪種條件下,所提方法都可以識(shí)別施工人員是否佩戴安全帽,而另外兩種方法的識(shí)別結(jié)果并不理想。主要因?yàn)樗岱椒梢垣@取高精度的施工人員身體關(guān)鍵點(diǎn)提取結(jié)果,從而提升識(shí)別結(jié)果的準(zhǔn)確性。
為了進(jìn)一步對(duì)所提方法的識(shí)別性能進(jìn)行分析,將漏識(shí)率作為測(cè)試指標(biāo),詳細(xì)的實(shí)驗(yàn)測(cè)試結(jié)果如表1所示。
表1 不同方法的漏識(shí)率測(cè)試結(jié)果對(duì)比
分析表1中的實(shí)驗(yàn)數(shù)據(jù)可知,所提方法的漏識(shí)率明顯低于另外兩種方法,說(shuō)明所提方法可以獲取更加滿意的識(shí)別結(jié)果。
針對(duì)傳統(tǒng)安全帽佩戴識(shí)別方法存在的一系列問(wèn)題,設(shè)計(jì)并提出一種基于改進(jìn)YOLOv5的復(fù)雜環(huán)境下安全帽佩戴識(shí)別方法。經(jīng)過(guò)實(shí)驗(yàn)測(cè)試結(jié)果表明,所提方法可以有效提升安全帽佩戴識(shí)別結(jié)果準(zhǔn)確性,同時(shí)還可以對(duì)人體骨骼關(guān)鍵點(diǎn)精準(zhǔn)提取,獲取高精度的頭部區(qū)域定位結(jié)果。