田 楓,白欣宇,劉 芳,姜文文,于巾濤
(東北石油大學 計算機與信息技術(shù)學院,黑龍江 大慶 163318)
隨著深度學習等大量智能算法的出現(xiàn)以及計算機性能的不斷提升,使得利用智能算法對監(jiān)控視頻進行快速分析成為可能。基于深度學習算法的智能安防技術(shù)在智慧交通、智慧工地、智能礦場等領(lǐng)域開始了初步的應(yīng)用。在我國各大油田由建設(shè)數(shù)字化油田轉(zhuǎn)變建設(shè)智慧油田的背景下,智能安防技術(shù)與智慧油田的結(jié)合應(yīng)用,是油田發(fā)展跨領(lǐng)域融合的1種趨勢,更是歸屬于“數(shù)字中國”建設(shè)必不可少的一環(huán)。而油田危險區(qū)域入侵檢測智能綜合識別技術(shù)是智能安防技術(shù)與智慧油田結(jié)合趨勢下的核心安防技術(shù),油田危險區(qū)域入侵智能綜合識別技術(shù)可徹底取代基于人力監(jiān)控油田的高成本低準確率的方式,可為油田安全提供有力保障。
當前,智能安防技術(shù)在其他應(yīng)用領(lǐng)域中技術(shù)架構(gòu)趨向成熟,“智慧油田”理念逐步完善,在二者結(jié)合落地的過程中,存在油田危險因素多、油田危險區(qū)域多,且危險場景復雜等問題。針對各種油田危險因素,羅音宇等[1]提出了1種含硫氣井硫化氫擴散危險程度的分級技術(shù);張若誠等[2]結(jié)合APIR500防爆標準,初步進行了油田鉆井井場劃分;劉康等[3]提出浮式生產(chǎn)系統(tǒng)泄漏天然氣擴散規(guī)律與危險區(qū)域的劃分;鉆井風險綜合評價方法[4-6]對多種油田風險識別因素進行了定量客觀的評價。以上研究均從油田施工人員作業(yè)安全風險管理方面提出了應(yīng)對措施,對油田危險區(qū)域入侵智能綜合識別技術(shù)的落地與油田安全作業(yè)管理具有重大意義。
針對危險區(qū)域入侵問題,王瑞等[7]在解決鐵路區(qū)域入侵問題方面,提出了1種全天候的鐵路區(qū)域入侵算法,有效解決全天候的鐵路周界的入侵檢測。王偉等[8]對建筑施工領(lǐng)域進行區(qū)域入侵判斷,有效降低入侵危險區(qū)域行為的發(fā)生。
目前,基于視頻的油田危險區(qū)域入侵檢測算法存在如下難點:1)缺乏大量的訓練樣本。2)監(jiān)控視頻畫質(zhì)低且目標較小。3)缺乏油田危險場景等級劃分的理論與危險區(qū)域識別方法。4)缺乏夜間區(qū)域入侵方法。
針對上述難點,本文提出1種基于視頻的油田危險區(qū)域入侵檢測智能綜合識別算法,該算法從全局視頻監(jiān)控的角度出發(fā),結(jié)合相關(guān)標準[4-6]對油田危險區(qū)域進行劃分,并在視頻流中完成場景匹配與危險區(qū)域識別;針對白天光線條件較好時,通過對深度學習算法進行改進進而提高檢出率;針對夜晚場景光線條件差,易受背景干擾等情況,通過運動目標判別方式對作業(yè)人員闖入危險作業(yè)區(qū)進行檢測。本算法能夠自動判別危險作業(yè)區(qū)人員闖入,避免設(shè)備損壞并降低人員傷亡的風險。
針對油田危險入侵檢測存在的難點以及使用場景需求,提出1種綜合識別算法。具體包含2個任務(wù):第1個任務(wù)為根據(jù)危險因素進行油田危險區(qū)域分級與映射,實現(xiàn)危險區(qū)域的自動判別;第2個任務(wù)為人員進入危險區(qū)域的判別,為提高檢測準確率,將黑夜和白天場景分開處理,結(jié)合射線法進行入侵判斷。
在白天場景使用目標檢測技術(shù),如圖1(a)所示。首先,以監(jiān)控攝像頭的rtsp視頻流為輸入,輸入圖像進行危險場景的匹配、危險區(qū)域的識別與定位;然后,以YOLOv5作為基礎(chǔ)網(wǎng)絡(luò),加入卷積注意力模塊提高目標定位精度,增加檢出率;最后,使用射線法完成區(qū)域入侵的判別。
圖1 油田危險區(qū)域入侵Fig.1 Intrusion of oilfield dangerous areas
在夜間場景中使用運動目標檢測算法,如圖1(b)所示,首先針對連續(xù)幀的視頻圖像進行背景動態(tài)建模,使用背景減除法區(qū)分前景與背景,然后使用形態(tài)學方法過濾無用信息進行精準定位,最后應(yīng)用三幀差分法確定運動目標,完成區(qū)域入侵判別。
油田作業(yè)現(xiàn)場中存在多種危險源,例如原油倉庫、泥漿池、抽油機等。當這些地方出現(xiàn)故障時,均可能造成嚴重的財產(chǎn)損失和人員傷亡。因此,本文在基于視頻的油田危險區(qū)域入侵智能識別的角度下,提出油田危險場景分級與自動識別方法,首先對危險場景進行分級,然后對危險區(qū)域進行自動識別。
第1部分為危險場景分級,參考油田3類危險源[5]與鉆井風險因素綜合評價[4-6]等多種場景下危險因素評價方法,將其中的固有危險源[4]定義為易燃易爆區(qū),觸發(fā)危險源[4]定義為臨時故障區(qū),人為型危險源[4]定義為違章操作區(qū)。結(jié)合文獻[2-6]提出的相關(guān)危險場景劃分標準,根據(jù)是否容易造成人員傷亡,設(shè)備損壞,環(huán)境污染等因素將危險場景的等級設(shè)置為3級:1級區(qū)域入侵警報,極易發(fā)生人員傷亡與設(shè)備損壞;2級入侵警報,易發(fā)生人員傷亡;3級區(qū)域入侵警戒,易發(fā)生人員受傷與設(shè)備損壞。根據(jù)分級標準,構(gòu)建油田危險場景庫。
第2部分為危險區(qū)域的自動識別,如圖2所示:首先,提取輸入視頻流圖像中的角點特征,因SIFT[9]特征具有光照不變性,具有旋轉(zhuǎn)不變性,縮放平移性、局部不變性等特性,因此本文使用SIFT在雜波較多、噪聲較多的復雜場景中實現(xiàn)對危險場景、危險區(qū)域的判別。然后,將提取特征后的圖片U與第1部分建立的油田危險場景庫V進行危險場景匹配。圖像特征匹配采用歐式距離d(U,V)作為相似性距離,如式(1)所示:
圖2 危險區(qū)域自動識別Fig.2 Automatic identification of hazardous areas
(1)
式中:d(U,Vi)為相似性距離;U(x1,x2,…,x128)為視頻流提取的特征描述子向量;Vi(y1,y2,…,y128)為危險場景庫V的第i個場景特征描述子向量;xm,ym為特征描述子向量元素;m為第m個描述子向量。最后,將當前場景下的危險區(qū)域與視頻流進行匹配,確定危險區(qū)域位置坐標后映射到視頻流中,完成危險區(qū)域的自動判別。
YOLOv5[10]是目前單階段檢測算法中具有較優(yōu)檢測效果的檢測算法,可較好地兼顧檢測的準確率以及運行速度,因此本文選擇YOLOv5為基準檢測算法,并對其特征提取網(wǎng)絡(luò)部分與推理輸出部分進行改進。
YOLOv5的網(wǎng)絡(luò)結(jié)構(gòu)如圖3所示,在特征提取部分中使用Focus結(jié)構(gòu),減少計算量。使用CSPNet[11]的CSP模塊,增加CNN的學習能力,降低計算瓶頸并節(jié)約內(nèi)存成本。
圖3 檢測網(wǎng)絡(luò)結(jié)構(gòu)Fig.3 Detection network structure
在特征融合部分,采用FPN(特征金字塔)[12]結(jié)構(gòu),使用自上而下的路徑和橫向連接以及自底向上的路徑增強,對語義信息與定位信息進行特征融合,大大提高多尺度檢測的準確性。
在特征預(yù)測部分,在特征圖上應(yīng)用錨定框并生成帶有類概率、對象得分和包圍框的3種不同大小的特征圖向量。
本文將CBAM[13]注意力機制放在骨干網(wǎng)絡(luò)的池化金字塔前,能使特征學習更加專注于油田危險區(qū)域內(nèi)工人特征,抑制其它干擾信息,增強模型對于油田工人檢測精度。輸入到CBAM注意力模塊中,給定1個油田工人特征圖F∈RC*H*W,C為通道數(shù),H為特征圖的高度,W為特征圖的寬度,使用CBAM推斷出1個1維的通道注意力權(quán)重Mc∈RC*1*1,之后通道注意力權(quán)重Mc與特征圖F計算得到通道注意力特征圖F′,如式(2)所示:
F′=Mc(F)?F
(2)
式中:F′為用于空間注意力模塊的特征輸入;F為油田工人特征圖;Mc為通道注意力權(quán)重;?表示逐元素相乘。
CBAM推理出1個二維的空間注意力權(quán)重Mc∈R1*H*W[13]。然后利用F′與空間注意力權(quán)重Ms相乘得到空間注意力特征圖F″,最終輸出的特征圖F″與原始特征進行融合以進行自適應(yīng)特征細化。其中如式(3)所示:
F″=Ms(F′)?F′
(3)
式中:F″為空間注意力特征圖;Ms為空間注意力;F′用于空間注意力模塊的特征輸入;?表示逐元素相乘。
在特征預(yù)測部分每個卷積模塊前加入SE注意力機制,通過增強建模通道之間的相互依賴關(guān)系,進而自適應(yīng)地調(diào)整通道的特征響應(yīng)。主要步驟如下:輸入的特征圖進行全局平均池化,得到長度等于通道數(shù)M的實數(shù)列Zgap。壓縮率r=16的情況下進行特征圖X=[x1,x2,…,xn]通過全局平均池化Fgap,計算過程如式(4)~(5)所示:
(4)
(5)
式中:Zgap為長度等于通道數(shù)M的實數(shù)列;Fgap為全局平均池化;xc為c通道輸入的權(quán)重特征;H為特征圖的高度;W為特征圖的寬度;F1為進行降維的全連接層數(shù);F2為升維的全連接層數(shù);C為特征圖的索引;M為通道數(shù);r為壓縮率。
進行Sigmoid函數(shù)激活,進而生成每個通道對應(yīng)的權(quán)重信息S=[s1,s2,…,sc]。如式(6)所示:
S=Sigmoid(F2(RELU(F1*Zgap)))
(6)
式中:S為每個通道對應(yīng)的權(quán)重信息;F2為升維的全連接層數(shù);F1為進行降維的全連接層數(shù);Zgap為長度等于通道數(shù)M的實數(shù)列。
根據(jù)權(quán)值對輸入的特征圖加權(quán)更新,得到更新后的通道特征Y=[y1,y2,…,yc],如式(7)所示:
Yc=sc*xc
(7)
式中:Yc為c通道更新的通道特征;sc為c通道對應(yīng)的權(quán)重信息;xc為c通道輸入的權(quán)重特征。
使用SENet[14]注意力模塊,能夠更好地利用全局信息進行特征篩選,對重要特征強調(diào)并對非重要特征進行抑制,從而重新校準特征來提高網(wǎng)絡(luò)的表示能力。
由于黑夜場景中光線不足,目標與背景難以區(qū)分,因此本文首先采用背景減除法[15]對背景建模,對各個像素的觀察值進行聚類,經(jīng)過一段時間的學習之后,樣本數(shù)最多的子類構(gòu)成動態(tài)背景的模型。然后使用形態(tài)學處理方法進行區(qū)域連通,以腐蝕與膨脹[16]將2個獨立的連通域拼接成為1個連通域,提取出圖像的輪廓,作為下步的運動目標檢測的輸入。最后使用三幀差分法[17]進行運動目標的檢測,其計算量小,能夠快速檢測并標記出場景中的運動目標。
將2幀圖像對應(yīng)像素點的灰度值進行相減,并取其絕對值,得到差分圖像Dn。兩幀差分計算公式如式(8)所示:
Dn(x,y)=|fn(x,y)-fn-1(x,y)|
(8)
(9)
式中:Dn為差分圖像;fn為像素點的灰度值。
按照式(8)分別得到差分圖像Dn+1和Dn,對差分圖像Dn+1和Dn按照式(9)進行與操作,得到圖像Dn′。
然后再進行閾值處理、連通性分析,最終提取出運動目標。
人物的落腳點是決定人物位置的關(guān)鍵因素,人物是否走入危險區(qū)域內(nèi),由人物落腳點的位置進行判斷。因此考慮人物的落腳點是否在危險區(qū)域內(nèi),如圖4所示,在完成目標檢測后,將人物踏入危險區(qū)域的區(qū)域入侵問題抽象成為人物的落腳點與危險區(qū)域多邊形的相交問題,即判斷點是否在多邊形的內(nèi)部。本文使用射線法[18]進行區(qū)域入侵的判斷。
圖4 判斷點是否在多邊形內(nèi)Fig.4 Judgment of whether points in polygon
計算油田工人落腳點Dx,如式(10)所示:
(10)
式中:Dx為油田工人落腳點;x1,y1為中心點的坐標;h為輸出的定位框的高。
根據(jù)目標檢測結(jié)果輸出的工人定位框,判斷是否發(fā)生多邊形區(qū)域入侵,結(jié)果為奇數(shù)則認定發(fā)生區(qū)域入侵,如式(11)所示:
Rinvade=(sum(cross(Dx,Grax)))%2
(11)
式中:cross為Dx點向任意方向做射線;Grax為自定義危險區(qū)域。
3.1.1 數(shù)據(jù)整理
1)油田綜合視頻數(shù)據(jù)
對油田綜合視頻進行采樣(約10 000張),經(jīng)統(tǒng)計,視頻中出現(xiàn)較為清晰的工人圖像占比約68%,而距離較遠難以識別的人員約占32%。
由此可見,綜合視頻中的油田工人目標存在偏小的情況。油田危險區(qū)域入侵者主要為油田工人,本文將油田危險區(qū)域綜合視頻數(shù)據(jù)進行篩選處理,選取含有油田工人的視頻圖像,根據(jù)人員尺寸進行如下數(shù)據(jù)劃分:①油田工人對應(yīng)的像素高度小于40的圖片設(shè)置為模糊數(shù)據(jù);②油田工人像素在40到70之間設(shè)為小尺寸數(shù)據(jù);③當油田工人像素大于70設(shè)置為正常尺寸數(shù)據(jù)。處理后的油田綜合視頻樣本數(shù)據(jù),模糊數(shù)據(jù)約占20%,小尺度數(shù)據(jù)約占25%,正常尺寸數(shù)據(jù)約占55%。
2)VOC 2012[19]Person
為提高模型的泛化性,對VOC 2012提取person類,結(jié)合油田綜合視頻工人目標特點,選取具有模糊,目標較小的人物3 100張。為提高算法的檢測精度及算法的可移植性,為適應(yīng)油田不同場景下的危險區(qū)域入侵檢測,算法訓練采用油田工人視頻數(shù)據(jù)和篩選VOC 2012 person中更適應(yīng)于油田現(xiàn)場工人的數(shù)據(jù)集組成油田工人檢測數(shù)據(jù)集,使得在各種油田場景下更加魯棒的提取油田工人特征,提高油田工人檢測精度,進而提高危險入侵判定的準確性。
3.1.2 實驗結(jié)果分析
本文選取油田綜合視頻中具有危險區(qū)域的9個場景,共20個視頻,從中選取含有油田工人圖片1 500張作為測試集。
1)同一網(wǎng)絡(luò)不同數(shù)據(jù)集:由表1可以看出,使用公開數(shù)據(jù)集與油田視頻數(shù)據(jù)混合的數(shù)據(jù)集oilperson對比只使用公開數(shù)據(jù)集的算法效果具有顯著性提升,泛化性最好,而僅使用油田視頻數(shù)據(jù)集的方法反而效果變差,原因為油田危險場景數(shù)據(jù)的多樣性欠佳。
表1 同一網(wǎng)絡(luò)在不同訓練集上驗證的評價值Table 1 Evaluation values of same network verified on different training sets %
2)不同網(wǎng)絡(luò)同一數(shù)據(jù)集:為保持實驗對比的完整性,本文使用不同的算法模型,對oilperson進行訓練,在上述同一測試集下進行驗證。由表2可以看出,我們的算法與YOLOv5算法相比,在oilperson數(shù)據(jù)集上的表現(xiàn)更為優(yōu)越,精確率提高了2.62%。
表2 不同網(wǎng)絡(luò)在oilperson數(shù)據(jù)集上的評價值Table 2 Evaluation values of different networks on oilperson dataset %
對不同的場景下的油田區(qū)域檢測效果如圖5所示,圖5(a),圖5(d),圖5(g)為易燃易爆區(qū)檢測效果;圖5(b),圖5(f),圖5(h)為臨時故障區(qū)檢測效果;圖5(c),圖5(e),圖5(i)為違章操作區(qū)檢測效果,其中圖5(c)為夜間檢測效果,仍有較好的檢出率。通過以上檢測結(jié)果可以看出本文算法對油田場景下較小尺寸的工人與模糊的工人具有較好的識別精度,無漏檢、錯誤檢情況出現(xiàn)。
圖5 油田不同場景的檢測效果Fig.5 Detection effect of different scenes in oilfield
運用本文提出的油田入侵檢測算法在油田的不同場景下進行入侵檢測準確率的測試,入侵檢測準確率達到90%,具體效果如表3所示。
表3 不同場景的入侵檢測準確率Table 3 Intrusion accuracy in different scenes
本文主要研究的是識別人員進入危險區(qū)域內(nèi),但給在高危區(qū)域中以其他方式判斷進行某種違章操作提出了1種可能性。在部分模擬場景下,入侵效果如圖6所示,在各種油田危險區(qū)域下進行分級,紅色代表危險區(qū)域,人員進入危險區(qū)域使用紅色檢測框,并顯示“入侵”標簽。圖6(a)為在違章操作區(qū)-閥門,施工人員在危險區(qū)域停留達到10 s,視為正在進行閥門正擰危險操作行為;圖6(b)為違章操作區(qū)-近海區(qū)域,油田工人違規(guī)翻墻進入近海周界危險區(qū)域,視為危險區(qū)域入侵。圖6(c)為臨時故障區(qū)-抽油機故障處人員闖入判別為發(fā)生危險區(qū)域入侵。圖6(d)為易燃易爆區(qū)-鉆井平臺處人員闖入判別為發(fā)生危險區(qū)域入侵。
圖6 區(qū)域入侵效果Fig.6 Area intrusion effect
1)結(jié)合油田多種危險因素,提出油田危險場景分級與映射方法。按照危險源進行危險區(qū)域等級劃分并建立危險場景圖像庫,在視頻流中自動識別危險場景并映射危險區(qū)域位置。
2)提出基于綜合視頻的全天候檢測方法,針對白天場景,對YOLOv5模型進行改進,在特征提取網(wǎng)絡(luò)部分添加CBAM卷積注意力模塊,在預(yù)測部分添加SE通道注意力模塊,使模型更加魯棒地提取工人特征。同時,制作油田作業(yè)現(xiàn)場數(shù)據(jù)集,使得模型具有更好的泛化性。
3)本文設(shè)計1種人員闖入危險區(qū)域的自動入侵檢測方式,引入射線法進行人員踏入危險區(qū)域的自動判別。
4)本文方法提高油田危險區(qū)域入侵的準確率,滿足油田現(xiàn)場安全需求,有效預(yù)防油田危險區(qū)域內(nèi)施工人員傷亡,并在真實油田場景下部署應(yīng)用。