程國建,李嘉欣,賈強
西安石油大學(xué)計算機學(xué)院(陜西 西安 710065)
眾所周知,石油行業(yè)在我國的國民經(jīng)濟中占有重要的地位和作用,且擁有較大的生產(chǎn)規(guī)模。而井場的安全問題是一個備受關(guān)注的問題,井場作業(yè)的工人接打電話、工服穿戴不齊全、不合理佩戴安全帽等危險行為可能會引發(fā)一系列安全生產(chǎn)事故,而防止此類事故發(fā)生的關(guān)鍵在于消除工人的不規(guī)范行為。因此,對這些不規(guī)范行為進(jìn)行精準(zhǔn)、快速地識別,可為井場的生產(chǎn)作業(yè)提供可靠的保障[1]。
目前,井場作業(yè)現(xiàn)場大多安裝了視頻監(jiān)控系統(tǒng),這種系統(tǒng)能實時顯示監(jiān)控畫面及其錄像,而對違規(guī)操作的鑒別基本上是借助人工辨別,無法做到實時的預(yù)防或干預(yù)。為了強化對井場安全生產(chǎn)的監(jiān)管力度,考慮將深度學(xué)習(xí)算法應(yīng)用其中,將識別結(jié)果直觀地輸出以便監(jiān)管人員能及時發(fā)現(xiàn)違規(guī)行為并糾正工人,提高監(jiān)管效率,避免事故的發(fā)生。
李辰政等[2]采用基于遷移學(xué)習(xí)的C3D網(wǎng)絡(luò)模型進(jìn)行遷移訓(xùn)練,結(jié)果表明使用遷移學(xué)習(xí)方法后的網(wǎng)絡(luò)模型對危險行為的平均識別率達(dá)到了83.2%。魏維等[3]提出了基于淺層與深層神經(jīng)網(wǎng)絡(luò)相結(jié)合的輕量級深度學(xué)習(xí)模型,提高人體行為識別的準(zhǔn)確性。周華平等[4]提出了一種基于YOLOv4-tiny 的多尺度特征融合方法,通過對原有的YOLOv4-tiny 模型進(jìn)行改進(jìn),使其識別準(zhǔn)確率提高了2.45%。Rahmani H等[5]提出基于非線性知識轉(zhuǎn)移模型的深度全連通神經(jīng)網(wǎng)絡(luò),能夠?qū)崿F(xiàn)對任意視角下人體行為的認(rèn)知轉(zhuǎn)換,在3D交叉視圖人類行為識別上獲得了較大的成功。Zhang P 等[6]采用VA-RNN 和VA-CNN 相結(jié)合的注意力機制,對人體骨骼圖像進(jìn)行邊緣特征提取。研究結(jié)果顯示,該方法可以有效地將不同視角的骨骼圖變換成更加一致的虛擬視角,提高了識別的準(zhǔn)確性。
上述研究結(jié)果為人體行為識別提供一系列的模型和算法,有效降低不規(guī)范行為的發(fā)生。但用于井場不規(guī)范行為識別的較少,主要原因在于其工作環(huán)境的特殊性、監(jiān)控攝像頭多固定在較遠(yuǎn)的位置、信息化水平不高、監(jiān)管力度有限等。因此,為解決上述問題,將人員行為識別和目標(biāo)檢測技術(shù)有機地結(jié)合起來,提出了一種基于改進(jìn)YOLOv5 的井場作業(yè)風(fēng)險智能分類識別方法。
YOLOv5 是一種單階段目標(biāo)檢測算法,網(wǎng)絡(luò)結(jié)構(gòu)如圖1 所示。一般可以將它劃分為4 個模塊,分別是輸入端、基準(zhǔn)網(wǎng)絡(luò)、Neck 網(wǎng)絡(luò)與Head 輸出端[7]。
圖1 YOLOv5算法的網(wǎng)絡(luò)結(jié)構(gòu)
1)輸入端是一個無監(jiān)督的輸入數(shù)據(jù)集,用于訓(xùn)練和評估模型。在模型訓(xùn)練過程中,YOLOv5 采用Mosaic操作、自適應(yīng)錨框計算與自適應(yīng)圖片縮放[8]等方法對輸入圖片進(jìn)行一系列處理,然后將其送入檢測網(wǎng)絡(luò)。
2)基準(zhǔn)網(wǎng)絡(luò)主要負(fù)責(zé)進(jìn)行特征提取和分類任務(wù)?;鶞?zhǔn)網(wǎng)絡(luò)包含F(xiàn)ocus 模塊、CSP 模塊和SPP 模塊;Focus 模塊是一種切片操作,將原始圖像通過切片操作變?yōu)?20×320×12特征圖,再通過卷積操作變?yōu)?20×320×32 特征圖;CSP 模塊分為兩部分,一部分通過Res unit 殘差塊增強特征學(xué)習(xí)能力,另一部分與上一部分的特征拼接,對特征進(jìn)行歸一化處理;SPP 模塊將圖像的局部特征和全局特征進(jìn)行特征融合。
3)Neck 網(wǎng)絡(luò)主要負(fù)責(zé)對特征進(jìn)行多尺度特征融合,然后傳遞給Head 輸出層。Neck 結(jié)構(gòu)使用FPN+PAN(特征金字塔)模塊、CSP2 模塊來強化網(wǎng)絡(luò)特征的融合能力[9],F(xiàn)PN 自上而下傳遞強語義特征,PAN自下而上傳遞定位特征。
4)Head 輸出層負(fù)責(zé)進(jìn)行最終的回歸預(yù)測。Head 輸出層使用CIoU 創(chuàng)建Bounding box 的損失函數(shù)。
YOLOv5算法分類識別流程如圖2所示,主要分為以下3個部分:
圖2 YOLOv5算法分類識別流程
1)數(shù)據(jù)集的處理。通過油田現(xiàn)場監(jiān)控攝像頭采集本文所需要的數(shù)據(jù)集,篩選出違規(guī)行為明顯的圖片,使用labelimg工具對不規(guī)范行為進(jìn)行標(biāo)注,劃分訓(xùn)練集和驗證集。
2)模型的訓(xùn)練。將標(biāo)注的數(shù)據(jù)集在改進(jìn)的YOLOv5 網(wǎng)絡(luò)中進(jìn)行訓(xùn)練,訓(xùn)練后的模型學(xué)習(xí)到了不規(guī)范行為的各種特征,并產(chǎn)生一個權(quán)重文件。
3)不規(guī)范行為的檢測。將權(quán)重文件部署到模型上得到不規(guī)范行為分類識別模型。通過輸入圖像或在線視頻部署到模型中,進(jìn)行識別和分類測試。
盡管YOLOv5在開源代碼庫和工程實踐中表現(xiàn)出了較好的檢測效果,但是在井場環(huán)境下工人工服是否穿戴完整、是否戴安全帽等方面存在著漏檢率高、效果不佳的問題[11]。因此,本文以YOLOv5算法為基礎(chǔ),提出了一種新的改進(jìn)方法,采用替換損失函數(shù)和引入注意力機制來改善以上問題,提升檢測效果。
1.2.1 SIoU 損失函數(shù)
YOLOv5 算法以CIoU Loss 為邊框回歸損失函數(shù),并利用Logits 損失函數(shù)和二進(jìn)制交叉熵來計算目標(biāo)得分和類別概率損失[10]。在YOLOv5 算法中,雖然將預(yù)測框直接加入到分類模型中,但是未考慮真實框和預(yù)測框之間的不匹配,使得預(yù)測框在訓(xùn)練過程中可能會位置不定,導(dǎo)致算法的收斂速度慢、效果差等問題。為解決以上問題,在Head輸出層使用SIoU 損失函數(shù)代替CIoU 損失函數(shù),解決了真實框和預(yù)測框不匹配的問題,有效提升了算法的檢測精度和收斂速度[11]。SIoU損失函數(shù)包括以下4個部分:
1)角度損失:
式中:ch為真實框和預(yù)測框中心點之間的高度差,cm;σ為真實框和預(yù)測框中心點之間的距離[12],cm。
2)距離損失:
式中:ρt表示賦予的權(quán)重;()和(bcx,bcy)分別是真實框與預(yù)測框的中心坐標(biāo)。
3)形狀損失:
式中:ωt表示比值權(quán)重;(w,h)是預(yù)測框的寬和高,(wgt,hgt)是真實框的寬和高;θ表示控制對形狀損失的關(guān)注程度。
4)SIoU損失:
SIoU損失函數(shù)的定義如下:
式中:B為預(yù)測框;Bgt為真實框;IoU表示預(yù)測框與真實框的交集;Δ 表示距離損失;Ω表示形狀損失。
1.2.2 注意力機制
深度學(xué)習(xí)中的注意力機制是一種模仿人類視覺和認(rèn)知系統(tǒng)的方法,它允許模型對輸入序列的不同位置分配不同的權(quán)值,以便在處理每個序列元素時專注于最相關(guān)的部分。由于井場環(huán)境十分復(fù)雜,在檢測過程中受到復(fù)雜背景的干擾容易出現(xiàn)漏檢。所以針對此問題,在Neck網(wǎng)絡(luò)中添加注意力機制,以此來提高主干網(wǎng)絡(luò)的特征提取能力。SE注意力機制是典型的通道注意力機制,其網(wǎng)絡(luò)結(jié)構(gòu)如圖3所示。
圖3 SE通道注意力機制網(wǎng)絡(luò)結(jié)構(gòu)
由圖3可以看到,在原特征圖X中,各通道的重要程度相同,經(jīng)過SE網(wǎng)絡(luò)之后,特征圖X*每個通道被賦予了顏色,不同顏色表示不同的權(quán)重;SEnet 通過自學(xué)習(xí)的方式掌握各通道的重要程度,使網(wǎng)絡(luò)關(guān)注對當(dāng)前工作有用的通道而忽略不重要的通道,提高特征的判別能力。
SEnet的實現(xiàn)步驟包括以下3個部分:
1)壓縮(squeeze)。壓縮操作將特征圖X從[H,W,C]壓縮為[1,1,C][13]。通過降低特征圖的維度來減少計算量,加速模型的訓(xùn)練過程,提高模型的泛化能力。
2)激勵(excitation)。激勵操作給每個特征通道賦予一個權(quán)重值,通過兩個全連接層構(gòu)建通道間的相關(guān)性[14],使其輸出的權(quán)重和輸入特征圖的通道數(shù)相等。這有利于網(wǎng)絡(luò)學(xué)習(xí)輸入中的重要特征。
3)通道權(quán)重相乘(scale)。通道權(quán)重相乘操作將是將第二步激勵操作后得到的權(quán)重作用于特征圖X的每個通道,將特征圖(H×W×C)與權(quán)重(1×1×C)對應(yīng)通道相乘得到特征圖X*。
通過油田現(xiàn)場的監(jiān)控攝像頭采集大量井場作業(yè)以及違規(guī)行為的視頻,對于篩選出來有用的視頻,將其分幀成圖片,然后從大量的圖片中挑選出違章特征明顯的圖片,使用labelimg 工具進(jìn)行人工標(biāo)注,具體的識別對象及其標(biāo)簽名稱見表1。
表1 識別對象及其標(biāo)簽名稱
本次實驗共采集了750張圖片,使用其中的675張圖片作為訓(xùn)練樣本,75張圖片作為測試樣本。其中,labelimg操作界面如圖4所示。本次訓(xùn)練的迭代次數(shù)epoch 指定為100 次,輸入圖像大小為1 280×720,超參數(shù)batch_size 指定為5,初始學(xué)習(xí)率指定為0.01,通道數(shù)目為3,最終分類數(shù)目為5。
圖4 Labelimg操作界面
為了體現(xiàn)改進(jìn)算法的有效性,在實驗配置相同的情況下,對原YOLOv5 算法與改進(jìn)YOLOv5 算法進(jìn)行了比較,對比結(jié)果見表2。
表2 YOLOv5算法和改進(jìn)YOLOv5算法結(jié)果對比
表2 從平均準(zhǔn)確率、平均召回率以及均值平均度3 個方面,對比分析了使用改進(jìn)算法對網(wǎng)絡(luò)性能帶來的影響[15]。從表2可看出,相較原始算法,平均準(zhǔn)確率提升3%,平均召回率提升1%。YOLOv5 算法和改進(jìn)YOLOv5算法對每一類別的識別準(zhǔn)確率見表3。
表3 YOLOv5算法和改進(jìn)YOLOv5算法識別準(zhǔn)確率
由表3 可以看出,在每個類別中,改進(jìn)后的YOLOv5 算法識別準(zhǔn)確率高于原始YOLOv5 算法。其中,無上工服類別的識別準(zhǔn)確率從原始的56.5%提高到了83.6%,其識別精度提高了27.1%;工服齊全類別的識別精度提高了5.2%。針對無上工服、工服不全、工服齊全這3 類識別對象出現(xiàn)誤判的情況,分析原因可能是工人身體某些部分被其他物體遮擋,或某些工人將上工服脫掉拿在手里,使得模型無法準(zhǔn)確識別。無安全帽類別的識別準(zhǔn)確率由原始的71%提高到83%,識別準(zhǔn)確率提高了12%,分析原因可能是圖像中工人的頭部被其他物體遮擋,或是監(jiān)控攝像頭距離現(xiàn)場較遠(yuǎn),圖片中安全帽的尺寸非常小,導(dǎo)致模型不能正確識別。但總體來看,改進(jìn)后的算法相較于原始算法對目標(biāo)檢測的效果有明顯的提升。
訓(xùn)練過程中兩種算法的P-R 曲線如圖5 所示,可以看到準(zhǔn)確率與召回率成反比,準(zhǔn)確率越高,召回率越低。曲線離(1,1)坐標(biāo)越近,則表示算法的性能越好。
圖5 精確召回率曲線
由圖5 可以看到,在改進(jìn)的YOLOv5 模型中均值平均度達(dá)到了88.1%,較原始的YOLOv5 模型相比,提高了9.8%。實驗結(jié)果表明,基于YOLOv5的改進(jìn)算法能夠顯著提升目標(biāo)檢測的準(zhǔn)確性。
在數(shù)據(jù)集訓(xùn)練結(jié)束后,會生成兩個權(quán)重文件,隨機選取一張圖片使用最優(yōu)的權(quán)重文件來做推理測試,推理結(jié)果如圖6所示。
圖6 推理測試結(jié)果
在圖6 中可以看到4 個人都被檢測到工服齊全,可以看出其檢測效果不錯。
本文提出了基于改進(jìn)YOLOv5算法的井場作業(yè)風(fēng)險智能識別方法并應(yīng)用,主要結(jié)論與認(rèn)識如下:
1)針對井場中施工人員的一些不規(guī)范行為,提出了改進(jìn)的YOLOv5 算法,通過替換損失函數(shù)和增加注意力機制模塊,能夠有效識別5 種不規(guī)范行為并有較高的準(zhǔn)確性。
2)改進(jìn)YOLOv5 算法相較于原始算法,平均準(zhǔn)確率達(dá)到了93%,整體提高了3%;均值平均度達(dá)到了88.1%,整體提升了9.8%;其中對無上工服和無安全帽識別準(zhǔn)確率分別提升了27.1%和12%。結(jié)果表明,改進(jìn)YOLOv5 算法能夠有效識別工人的不規(guī)范行為,具有較高的預(yù)測精度和較好的實時性,獲得了較滿意的效果。
3)本研究的局限在于數(shù)據(jù)集的獲取上,模型的識別準(zhǔn)確率有限。在后續(xù)的研究中會在獲取更多數(shù)據(jù)集的基礎(chǔ)上,繼續(xù)對現(xiàn)有算法進(jìn)行改進(jìn),在保證算法檢測準(zhǔn)確率的基礎(chǔ)上使其具有更強的魯棒性和泛化能力。