王志鵬,王 濤
(中國石油大學(華東)計算機科學與技術學院,青島 266580)
電力行業(yè)是國民經濟的支柱產業(yè),也是支撐交通、金融、供水、供氣等民生基礎設施安全可靠運行的關鍵設施.電力系統(tǒng)的安全與穩(wěn)定對社會的發(fā)展有很重要的影響[1],因此應該積極防范電力安全風險,提前對電力運維情況分析、降低該領域潛在的風險以及積極研發(fā)防御技術.目前,電力維護現(xiàn)場都會配備監(jiān)控設備實時記錄作業(yè)過程,但是對施工安全的管控仍然主要依賴于人工監(jiān)察.這種方式會造成管控效率低下、人力資源浪費、發(fā)展進程緩慢等情況,并會伴隨著一定的經濟損失.
隨著社會科學技術迅速發(fā)展,人工智能取得了突破性進展.各行業(yè)向自動化和智能化方向發(fā)展是實現(xiàn)工業(yè)4.0 智能制造目標的必然趨勢[2].如今,人工智能在工業(yè)生產的許多方面都有實際應用,這使得用智能方法對電力施工現(xiàn)場進行安全管控有了現(xiàn)實可能.智能安全管控系統(tǒng)利用視頻設備實時檢測作業(yè)過程中的違規(guī)行為,不僅可以節(jié)省人力資源,而且可以實現(xiàn)全時段覆蓋檢測,降低作業(yè)過程中的安全風險,有效提高作業(yè)效率.
安全圍欄在電力運維作業(yè)中扮演著重要的角色,可以保護工作人員免受外界因素干擾,保障無關人員的安全性.現(xiàn)有的圍欄主要有菱形圍欄、單柱雙帶圍欄、旗子圍欄、網狀圍欄等.在變電器維修、街頭環(huán)網柜維護以及吊車等作業(yè)過程中,都需要提前布置圍欄.但是許多作業(yè)人員安全意識較差,出入圍欄時往往不按照布置圍欄時預設出入口進出,而使直接跨越圍欄、挪開圍欄以及鉆過圍欄等,這些不規(guī)范的行為給施工作業(yè)造成了很大的安全隱患.現(xiàn)場監(jiān)管人員由于自身的作業(yè)任務,以及作業(yè)現(xiàn)場覆蓋面積廣等問題,很難監(jiān)測到每個違規(guī)行為,非常容易造成安全事故.針對這種情況,設計一款高效的智能化的穿越圍欄違規(guī)行為檢測方法勢在必行,對違規(guī)行為及時警告與制止,增強作業(yè)過程中的安全性.
電力施工現(xiàn)場的安全管控涉及到方方面面[3],但大多需要監(jiān)管人員的現(xiàn)場監(jiān)管,針對施工現(xiàn)場檢查表逐一排查,效率較低且時效性較差.圍欄是重要的安全工具,為了實現(xiàn)高效智能化管控,基于紅外線的電子圍欄應用于實際[4],同時相對應的監(jiān)管系統(tǒng)也逐步完善[5].隨著人工智能高速發(fā)展,房凱也提出了基于深度學習的跨越圍欄違規(guī)行為檢測方法[6],促進了監(jiān)管方法的多樣性.
隨著卷積神經網絡的盛行,目標檢測取得了突破性的進展.目前目標檢測主要分為兩大流派:anchorbased 和 anchor-free.Anchor-based 方法會在特征圖上生成一系列的人為定義尺寸和寬高比的矩形框作為候選框,然后對這些候選框進行分類和回歸進而得到目標區(qū)域.Ren 等人[7]提出的RPN(區(qū)域建議網絡)改進了傳統(tǒng)的SS(selective search)方法,極大地推進了anchor-based 方法的發(fā)展,YOLO 也由v1[8]的版本的anchor-free 改為了anchor-based 方法.隨后許多方法提出解決anchor-based 方法中的缺點,如使用nms 刪除候選框和Mask RCNN[9]提出的ROI Align 解決ROI pooling 中的量化取整問題.Anchor-based 方法還包括:SSD[10],FPN[11],RetinaNet[12]等.Anchor-free 方法則是摒棄了anchor 的思想,利用關鍵點進行回歸獲取目標框.2018年,Law 等人[13]提出CornerNet 通過預測左上角和右下角的角點檢測目標,隨后ExtremeNet[14]改進CornerNet 通過預測極值點和中心點來預測目標,類似的還有CenterNet[15]預測角點以及中心點.同時FPN網絡也被應用于anchor-free 方法中,包括FSAF[16]、FCOS[17]、FoveaBox[18]等.雖然目標檢測取得了很大成功,但無法有效的檢測出運動物體,在動作識別方面有很大的局限性.
幀差法是通過計算相鄰幀圖像的灰度差與設定閾值的大小關系來判斷圖像中是否存在運動目標的檢測方法,主要分為兩幀差法和三幀差法.兩幀差法適合運動目標較緩慢的場景,當運動目標移動速度較快時,三幀差法的檢測結果更為準確.幀差法被廣泛應用于運動目標的檢測,周越等人[19]利用幀差法檢測運動車輛,也有研究將幀差法應用于濾波跟蹤[20].幀差法也會與其他技術進行結合,例如背景差分法[21,22].歐先鋒等人[23]將幀差法融入卷積神經網絡中,提升了復雜場景以及小目標的檢測效果.
為了有效地捕獲視頻中的外觀和運動信息,Simonyan 等人[24]基于CNN 設計了一種雙流卷積網絡分別處理圖片的RGB 圖像信息和光流信息.雙流網絡也是動作識別領域的重要方法.之后Wang 等人[25]提出了TSN(temporal segment networks)解決長視頻的行為判斷和小數(shù)據的問題.除了雙流網絡,2015年Tran 等人[26]提出C3D 卷積網絡,將卷積網絡的卷積核結構從二維擴展為三維來捕獲視頻中的時空特征,從此三維卷積網絡獲得快速發(fā)展.Hara 等人[27]將三維卷積與ResNet[28]結合,增加了網絡的深度,有效地提升了在動作識別領域的準確率.Carreira[29]將2D 網絡的與訓練權重應用與3D 網絡,提升了模型的效果.雖然視頻動作識別已經取得了很好的效果,但是其主要用于短視頻的行為判斷,無法滿足安全管控的實時性的要求.
為了有效地解決電力運維作業(yè)現(xiàn)場的穿越圍欄監(jiān)控問題,本文提出了一種基于Faster RCNN 的智能檢測方法.首先對現(xiàn)場監(jiān)控視頻進行取幀,利用改進的Faster RCNN 算法檢測圍欄位置以及使用關鍵點算法檢測人的關鍵點位置,通過設計的算法判斷人員是否存在違規(guī)行為.穿越圍欄是一個連續(xù)的行為,僅憑單張圖像的檢測結果容易造成誤檢,所以我們借助了幀差法的思想,將多張圖像的檢測結果進行連續(xù)性判斷.最后我們將目標檢測、關鍵點檢測算法以及判斷算法結合,提出一種端到端的穿越圍欄檢測算法.
圖1 描述了本文設計的基于Faster RCNN的穿越圍欄違規(guī)行為檢測方法的整體流程圖.首先獲取視頻流,對視頻取幀之后,將圖像分別輸入到Faster RCNN網絡以及人體關鍵點檢測網絡獲取到圍欄的位置信息以及人體信息暫存至隊列當中.然后利用幀差判斷法判斷該張圖片是否存在違規(guī)行為,如果存在,就對該幀圖像中的任務用紅色框表示并將檢測結果保存至本地.
圖1 整體流程圖
Faster RCNN 網絡結構如圖2所示.數(shù)據經過預處理后,送入到backbone 網絡中提取特征得到feature map.Faster RCNN 提出的RPN(region proposal networks)網絡首先生成anchor boxes 并通過Softmax 分類判斷屬于positive 或者negtive.得到的anchors 通過ROI pooling 層與feature map 結合提取proposal feature,然后通過全連接和Softmax 進行分類,并對proposals 進行回歸修正.本文依據圍欄目標的數(shù)據特征,對Faster RCNN 進行了如下調整:
圖2 Faster RCNN 網絡結構
(1)選用Resnet101+FPN 作為Backbone:Faster RCNN 采用的是VGG 網絡的最后一層特征作為feature map,為了提升網絡的特征提取能力,本文采用ResNet101網絡結合FPN 網絡作為特征提取網絡.ResNet 網絡是一個深度卷積神經網絡,針對深度神經網絡可能出現(xiàn)的隨著網絡深度加深導致訓練集準確率下降的問題,ResNet 設計了殘差模塊提出了深度殘差網絡,提升了網絡抗過擬合能力.圖3 展示了兩種殘差結構.
圖3 兩種殘差結構
低層的特征圖語義信息少但是目標位置準確,高層的語義信息豐富但目標位置粗略,為了解決物體檢測中的多尺度問題,FPN 設計了一種金字塔式的網絡,可以在不增加原有模型計算量的情況下提升物體檢測的性能.ResNet101 結合FPN 的具體網絡結構如圖4.
圖4 ResNet101+FPN 網絡結構
(2)修改anchors 比例.在Faster RCNN 中,RPN 會對特征圖中的每個特征點提取9 個anchors,其中anchors 的長寬比設置為{0.5,1.0,2.0}.本文考慮到圍欄數(shù)據往往是長條形狀的,所以將長寬比設置為{0.5,1.0,2.0,3.0},這樣使產生的anchors 更容易匹配到原圖中圍欄的目標區(qū)域.產生的候選anchors 通過Softmax網絡二分類為positive 與negative,挑選2 000 個positive anchors 進行后續(xù)的計算.
(3)采用Softnms:NMS(non-maximum suppression)會對候選框進行排序,選中分數(shù)最高的候選框,最后抑制與選中框有明顯重疊的候選框.為了優(yōu)化NMS 這種略顯暴力的方法,Softnms 應運而生.和NMS 相同,Softnms 首先也是對候選框排序,選擇分數(shù)最高的框作為選中框,不同的是,對于其他有明顯重疊的候選框的處理不是暴力的將其置信度置為0,而是會降低其置信度,進行下一次的選擇.
(4)使用GIoU Loss:對于許多基于anchor 的目標檢測算法,計算預測框與Ground Truth Bbox 的損失的時候往往使用L1 和L2 范數(shù),但是評價預測框置信度的時候卻使用的IoU(交并比),顯然存在一定的問題.所以本文選擇了GIoULoss 作為損失函數(shù).GIoU的做法是:假設現(xiàn)在有兩個預測框A和B,需要找到最小的一個可以將A和B包圍的封閉形狀C,然后計算C中不包含A、B的部分占C的比值.IoU以及GIoU的公式如下所示:
幀差法是根據物體運動時目標在相鄰幀圖像上的差異進行運動目標檢測的算法,通常采用灰度圖的方式判斷運動目標.本文借鑒幀差法的思想,將幀差法與目標檢測結合進行穿越圍欄違規(guī)行為判斷.首先利用改進的Faster RCNN 以及人體關鍵點檢測算法獲取圖像中圍欄坐標以及人體17 個關鍵點的坐標并存儲在判斷隊列中,判斷隊列的大小設置為5,即每次存儲5 張圖像的信息.如果某幀圖像被認為可能存在違規(guī)行為,就會繼續(xù)判斷該幀圖像與接下來幾幀圖像的運動關系,具體是當人體的關鍵點位于異常區(qū)域,就會繼續(xù)偵察后幾幀圖像相關關鍵點的運動趨勢,綜合判斷該幀圖像的違規(guī)行為.算法流程圖如圖5所示.
圖5 幀差判斷法流程圖
本實驗的硬件條件為:顯卡NVIDIA GeForce RTX 2080Ti,處理器為Inter i7 9900k.選擇MMDetection 框架,使用PyTorch 進行深度學習網絡搭建,語言為Python 3.6.8.
本次實驗共有圍欄數(shù)據1 601 張,其中分為訓練集1 387 張和測試集214 張.圍欄共分為7 類:菱形圍欄,橫條圍欄,旗子圍欄,網狀圍欄,柵欄,單柱雙帶圍欄,黃黑菱形圍欄.使用UPCLabel 框出目標之后轉化為COCO 格式.
為了盡量的減少背景噪聲,對數(shù)據首先裁剪至大小為1 300×600,然后為了增強模型的泛化性能,對數(shù)據以0.5 的概率進行隨機翻轉.本次實驗的評價指標為bbox_mAP 以及bbox_mAP_50.實驗共訓練50 個epochs,初始學習率設置為0.001,并在第20 次以及第40 次epoch 將學習率乘0.1.實驗效果如表1所示.
表1 Faster RCNN 實驗設置及結果(%)
綜合以上結果,本文選用了ResNet101+FPN 作為網絡的backbone,并對anchor 重新設計比例,使用Softnms和GIoU優(yōu)化,最終模型可以達到76.9 的mAP_50 以及48.8 的mAP.此外研究還發(fā)現(xiàn),在本文的數(shù)據集上,ResNet101 的效果要好于ResNet50,使用Softnms 以及GIoU 都可以提高模型的效果.另外,Softnms 的閾值需要根據數(shù)據集的情況來設定,本實驗嘗試了閾值選擇為0.5,0.6,0.7 分別進行實驗,最終選擇了0.6 作為最終的閾值.
訓練得到模型后,將模型與幀差算法等其他部分結合,構建基于Faster RCNN的穿越圍欄檢測方法.為了驗證該方法的性能,本文選取了5 段現(xiàn)場場景下模擬的違規(guī)視頻,經過視頻取幀、分類之后,共獲取非法圖片168 張,合法圖片132 張.由于要求圖片的連續(xù)性,所以我們將圖片按照視頻取幀順序依次輸入檢測方法中,利用txt 文件存儲圖片的標簽.本次實驗采用準確率作為評價指標,其計算公式如式(3):
其中,N表示圖片的總數(shù)量,本實驗中為300,y表示該圖片是否合法,yi表示該圖片的標簽.經過一輪實驗,共正確檢測圖片276 張,漏檢和誤檢圖片共24 張,準確率達到92%.
為了驗證本方法的穩(wěn)定性以及幀差判斷方法的有效性,本文將上述實驗進行多次,然后將其結果與未使用幀差判斷方法的結果進行對比,結果取多次實驗結果的平均值,實驗結果如表2.
表2 幀差判斷法驗證實驗結果
從表2 結果中可以看出,本文提出的幀差判斷方法可以有效的提升穿越圍欄檢測方法的準確性,準確率提升16.4%.誤檢率和漏檢率都大幅度減小,特別是誤檢數(shù)量,采用幀差判斷方法之后從40 張減少到5.3張.部分實驗效果如圖6所示.
如果圖6 中檢測到存在違規(guī)的工作人員,我們會發(fā)出違規(guī)警告信息,然后將違規(guī)人員信息保存并通過OpenCV 使用紅色警戒框表示并保存該幀圖像至本地.并且該方法的處理速度可以達到32 fps,完全可以達到實際應用中的實時性的要求.
圖6 實驗效果圖
本文將深度學習目標檢測與幀差法的思想結合提出了一種基于Faster RCNN的穿越圍欄違規(guī)行為檢測方法.首先基于數(shù)據的特點,改進了Faster RCNN 網絡,包括選用ResNet101+FPN 的骨干網絡,修改的anchor的比例,選用Softnms 和GIoU.然后借助圍欄目標與人體關鍵點信息,結合幀差判斷法進行穿越圍欄違規(guī)行為檢測.實驗結果證明,改進的Faster RCNN 網絡在圍欄數(shù)據集取得了更好的效果,提出的幀差判斷法也能夠更好的檢測出視頻中的違規(guī)行為,檢測速度達到32 fps,可以達到實際應用中的實時性要求,并具有較高的準確性,可以有效的提升電力場景安全管控的效率.
實驗結果也顯示方法仍然存在一定的漏檢數(shù)量,未來將繼續(xù)考慮實際復雜的場景,更加充分利用視頻的光流信息,提升穿越圍欄檢測的準確性.