田 楓,賈昊鵬,劉 芳
(東北石油大學 計算機與信息技術學院,大慶 163318)
油田作業(yè)現(xiàn)場中工作人員的著裝不規(guī)范問題經(jīng)常出現(xiàn),例如油田工人工作時未佩戴安全帽、未穿著勞保服等,從而導致一些不安全的事件時而發(fā)生,因此,規(guī)范化安全著裝檢測在推進企業(yè)智能化安全管理、保障人員生命財產(chǎn)安全等方面起著至關重要的作用[1].對于規(guī)范化安全著裝檢測任務,由于油田作業(yè)現(xiàn)場的監(jiān)控攝像頭覆蓋范圍廣、拍攝距離遠,畫面中人員目標的尺寸較小,導致著裝部件目標所占的像素數(shù)較少、攜帶的特征信息很弱,提高了檢測難度.因此,提高小目標檢測精度是規(guī)范化安全著裝檢測任務的關鍵.本文針對油田作業(yè)現(xiàn)場規(guī)范化安全著裝小目標檢測問題,基于YOLOv5 設計了一種YOLO-people和YOLOdress 級聯(lián)的小目標檢測網(wǎng)絡,先定位行人目標進行尺度變換后再對行人進行安全著裝檢測.同時結合多尺度特征融合的思想,將YOLOv5 中原來的3 尺度檢測擴展為4 尺度檢測,充分融合深淺層特征信息,進一步提高小目標檢測精度,降低漏檢率.
當前目標檢測算法主要分為兩階段方法和單階段方法.經(jīng)典的兩階段方法[2-4]首先利用區(qū)域候選網(wǎng)絡來提取候選目標信息,再利用檢測網(wǎng)絡對候選目標集合進行位置和類別的判定,具有很高的檢測精度,但由于兩階段方法推理速度慢、處理效率低,很難達到實時性檢測的要求.單階段檢測算法如SSD[5]和YOLO[6,7]系列,這些算法不需要對特征區(qū)域進行提取,只需在特征圖上進行邊界框的回歸,僅僅一步即可預測最終結果,算法推理速度能夠達到實時.這些方法在通用數(shù)據(jù)集上已經(jīng)取得了較好的檢測效果,但對于某些特定場景比如油田作業(yè)現(xiàn)場,由于監(jiān)控探頭拍攝范圍廣、目標距離遠,導致人員身上的著裝部件在監(jiān)控畫面下所占像素較少,攜帶的特征信息十分有限,缺少明顯的紋理、形狀等特征,使得通用的目標檢測算法在規(guī)范化安全著裝檢測任務上表現(xiàn)不佳,在進行小目標檢測具有一定的局限性.因此,主流的目標檢測方法在處理規(guī)范化著裝檢測任務尤其是針對小目標的檢測,仍有較大的提升空間.
目前基于深度學習的目標檢測算法普遍針對具有一定比例或尺寸的中大型目標,難以適用復雜背景下的小目標,小目標檢測的難點總結成以下3 個方面.
(1)深度神經(jīng)網(wǎng)絡特征提取和小目標尺寸之間的問題.對于如油田作業(yè)現(xiàn)場等特定場景下的監(jiān)控探頭,由于拍攝范圍廣、目標距離遠,導致待檢測目標尺寸較小,而且多數(shù)目標檢測網(wǎng)絡由于池化層的存在,在特征提取時能夠提取到的特征信息逐漸減少,導致深層特征對小目標的表達能力較弱,檢測效果欠佳.
(2)小目標檢測公共數(shù)據(jù)集較少且目標尺寸分布不均勻.現(xiàn)有的目標檢測算法大多基于Pascal VOC 或COCO 數(shù)據(jù)集進行小目標檢測研究,數(shù)據(jù)集中小目標的分布十分不均勻且占比不多,導致在訓練過程中難以充分學習小目標物體的特征,對小目標的泛化能力弱、檢測精度較低.
(3)相關檢測算法缺乏通用性.目前對小目標檢測的研究大多應用于特定場景下,如疫情期間對人臉口罩的識別、無人機視角檢測地理空間小目標,道路交通方面識別交通標志等,由于檢測任務的多樣性和復雜性使算法在實際應用中面臨很大挑戰(zhàn),難以遷移.
目前針對小目標檢測,基于單階段的檢測算法[8-10]大多通過多尺度特征融合的方式充分利用包含較多細節(jié)信息的高分辨率底層特征,卷積神經(jīng)網(wǎng)絡能夠自動學習不同層次結構的圖像信息特征,底層特征保留了很多局部的圖像細節(jié)信息如輪廓、邊緣和紋理等,有助于更好地進行目標定位.深層特征圖感知細節(jié)信息的能力較差,但包含了更多深層次的語義信息,有助于更好地進行目標分類.多尺度特征融合采用自頂向下的橫向連接的方式融合底層特征與深層特征,融合后的特征具有更強的描述性,有利于小目標的檢測.Lin等人[11]提出特征金字塔網(wǎng)絡(FPN),結構如圖1所示.深層特征圖經(jīng)過上采樣后與較低層特征圖做元素級別的相加,上采樣時采用雙線性插值法增強了網(wǎng)絡提取多尺度特征的能力.FPN 結構作為基礎模塊,在各類目標檢測算法中被普遍使用并取得了極大成功;Woo 等人[12]改進了FPN 上采樣方式,在深層特征圖進行上采樣時用反卷積層代替雙線性插值法并獲得了更好的性能;Li 等人[13]將注意力機制引入FPN 結構,使經(jīng)過全局池化后的深層特征對底層特征圖的通道進行加權,來引導不用層級信息之間的融合;鄭秋梅等人[14]改進YOLOv3 中的FPN 結構,將其在3 個尺度檢測增加至4 個尺度,充分融合提取的底層特征信息和深層語義信息,同時改進原有的損失函數(shù),最終提升對車輛小目標的識別效果.
圖1 FPN 結構
針對規(guī)范化安全著裝小目標檢測問題,分析小目標檢測的特點,本文提出了Cascade-YOLOv5 網(wǎng)絡(CYOLOv5),首先搭建YOLO-people與YOLO-dress 級聯(lián)的小目標檢測網(wǎng)絡,定位行人目標,然后裁剪出行人區(qū)域并進行尺度變換,最后對行人進行安全著裝檢測;同時采用多尺度特征融合方法,更改YOLOv5 中的PANet 結構,采用4 個不同尺度的特征層對目標進行預測,使底層與深層特征信息充分融合,有效增強小目標的檢測效果;并采用旋轉、裁剪、縮放等數(shù)據(jù)擴充方式處理數(shù)據(jù)集,最終提升小目標檢測準確率,減少漏檢、誤檢.
由于油田作業(yè)現(xiàn)場規(guī)范化著裝檢測任務對小目標的檢測精度要求較高,本文經(jīng)過在速度和精度方面的衡量,最終選擇YOLOv5 作為本文方法的基礎模型,其圖像推理速度最快達到0.007 s,即每秒可處理140 幀,滿足油田作業(yè)現(xiàn)場視頻監(jiān)控圖像實時檢測需求,同時有非常輕量級的模型大小,適合監(jiān)控視頻下目標檢測任務的模型部署.YOLOv5的網(wǎng)絡結構主要由輸入端、Backbone、Neck和Prediction 四部分組成,YOLOv5網(wǎng)絡結構如圖2所示.
圖2 YOLOv5 網(wǎng)絡結構
在輸入端包括Mosaic 數(shù)據(jù)增強、圖片自適應縮放和自適應錨框3 個部分,其中Mosaic 增強方法能夠有效提高小目標檢測效果,適用于規(guī)范化安全著裝檢測任務.
在Backbone 特征提取網(wǎng)絡部分,包括CSP 結構和新增的Focus 結構.YOLOv5 中設計了兩種CSP 結構,CSP1_X 結構應用于Backbone 主干網(wǎng)絡中,另一種CSP2_X 結構則應用于Neck 中,二者結構具體如圖2中所示.Focus 結構中比較關鍵的是切片操作,原始640×640×3的圖像,先復制4 份,然后通過切片操作將這4 個圖片切成了4 個320×320×3的切片,然后使用Concat 從深度上連接這4 個切片,輸出為320×320×12,之后再通過卷積核數(shù)為32的卷積層,生成320×320×32的輸出,最后經(jīng)過Batch_norm和Leaky_ReLU 將結果輸入到下一個卷積層.提高了特征圖上每個點的感受野,減少原始信息的丟失且減少了計算量加快了檢測速度.
在Neck 結構中采用了PANet 結構,由FPN+PAN結構組成.FPN 利用自上而下的方式通過對特征圖進行上采樣融合.PAN 結構采用自底向上的方式通過對特征圖進行下采樣融合,PANet 結構如圖3所示.
圖3 PANet 結構
在輸出端YOLOv5 采用了GIoU_Loss 來作為損失函數(shù),并采用加權NMS 來解決遮擋嚴重導致檢測不準確的問題.GIoU_Loss 如式(1)所示:
其中,b與bgt表示預測框與真實框的中心點,ρ(·)表示歐式距離,c表示預測框與真實框的最小外接矩陣的對角線距離.同時,YOLOv5 通過FPN+PAN 結構,最終形成3 個不同尺度的特征層來預測待檢測目標,以640×640 分辨率的圖像為輸入,輸出3 個尺度規(guī)格分別為20×20,40×40,80×80的特征圖,這種采用多尺度特征融合的檢測方法在檢測圖像中不同尺寸的目標時具有較好的魯棒性,但僅利用3 個尺度的特征層進行預測,并不能充分的利用底層特征信息,從而會導致小目標位置信息丟失,不利于油田作業(yè)現(xiàn)場著裝部件小目標檢測.
針對YOLOv5的不足之處以及油田作業(yè)現(xiàn)場安全著裝小目標檢測任務的特點,本文提出了改進的C-YOLOv5方法,最后通過對比實驗驗證本文方法的有效性.
對實際油田作業(yè)場景進行分析,安全著裝檢測任務有如下幾個特點:一是由于實際油田作業(yè)場景中監(jiān)控攝像頭擺放位置較高,導致拍攝畫面中作業(yè)人員目標較小,且監(jiān)控攝像頭長期暴露在空氣中,監(jiān)控畫面會有輕微的模糊現(xiàn)象,都會給規(guī)范化著裝檢測帶來一定的難度;二是由于作業(yè)人員身上的著裝部件相對于作業(yè)人員目標尺寸更小,例如安全帽、作業(yè)上衣、作業(yè)褲子、作業(yè)鞋子、手套等部件,這也會給檢測的準確性帶來影響;三是由于外在環(huán)境的影響,如光照變化、天氣變化、場景遮擋以及監(jiān)控視角的變化等這些因素也會使小目標檢測的難度變得非常大.
基于以上這些考慮,由于通用目標檢測算法對中大型目標有較好的檢測效果.因此對比于直接在監(jiān)控畫面中檢測較小尺寸的著裝部件,先進行作業(yè)人員較大目標檢測,再進行著裝檢測能夠有效地緩解部分小目標難以被檢測到的問題.于是本文以YOLOv5為基礎網(wǎng)絡來搭建安全著裝小目標檢測的級聯(lián)網(wǎng)絡Cascade-YOLOv5 (C-YOLOv5).該網(wǎng)絡由行人檢測網(wǎng)絡YOLOpeople和著裝檢測網(wǎng)絡YOLO-dress 兩部分組成.C-YOLOv5 具體檢測流程如圖4所示.
圖4 C-YOLOv5 檢測流程
以攝像頭源流為輸入,首先利用YOLO-people 網(wǎng)絡將輸入圖片的像素放縮至640×640,將整幅圖片劃分為S×S個網(wǎng)格,分別在20×20、40×40、80×80和160×160 四種不同大小特征圖上進行預測,在每個特征圖上采用跨鄰域網(wǎng)格匹配策略,從目標中心點所在的當前網(wǎng)格的上下左右4 個網(wǎng)格中找到離目標中心點最近的兩個網(wǎng)格,再加上當前網(wǎng)格共3 個網(wǎng)格進行匹配,產(chǎn)生更多的anchor 邊界框,每個網(wǎng)格中都會預測3 個不同尺寸的邊界框,每個邊界框會產(chǎn)生一個5+C維的向量,其中5 表示5 維向量,包含邊框坐標(4 個數(shù)值),類別置信度(1 個數(shù)值).C表示預測類別總數(shù).類別置信度計算方法如式(2)所示:
其中,Pr(object)是指某個網(wǎng)格中是否存在目標對對象,如果存在則為1,不存在則為0;是指目標預測框和真實框的交集和并集的比例.當網(wǎng)絡檢測完成時,特征圖將被重新映射至原圖中,同時繪制出預測框,在原圖中預測框(DetectionResult)和真實標注框(Ground-Truth)之間的面積重合度將以像素為坐標值來計算,這一過程如式(3)所示:
如果網(wǎng)格中包含目標,網(wǎng)格還需要預測該目標屬于第i類的概率Pr(classi|Ob ject),即目標分類條件概率.通過計算目標類別條件概率Pr(classi|Ob ject)與預測框置信度 (Con fidence)的乘積可得目標位置及類別置信度,能夠綜合評價預測邊界框的性能.具體計算如式(4)所示:
同時,損失函數(shù)使用CIoU_Loss[15]作為BoundingBox回歸的損失,如式(5)所示:
b與bgt表示預測框與真實框的中心點,υ用來描述預測框和真實框長寬比的比例一致性,如式(6)所示:
α是權重函數(shù),用來平衡比例,如式(7)所示:
CIoU_Loss 函數(shù)增加了相交尺度的衡量方式,有利于解決邊界框有時不重合的問題,同時考慮了邊界框中心點距離的信息與邊界框寬高比的尺度信息,使網(wǎng)絡會有更快更好的收斂效果.
最后,選擇置信度最高的預測邊界框作為結果的檢測框,同時去除冗余框,即使用了非極大值抑制(NMS)[16]的方法.然后,將YOLO-people 檢測出的行人目標區(qū)域根據(jù)其左上角和右下角坐標,從原始圖像中裁剪并進行放大處理,同時對每一個放大后的行人目標區(qū)域做銳化、對比度增強等處理,增強行人目標的邊界信息表示,有利于規(guī)范化著裝檢測.然后將每個行人區(qū)域送入YOLO-dress 網(wǎng)絡進行規(guī)范化著裝檢測,檢測流程和YOLO-people 幾乎相同,最后,在原始的輸入圖像中,用不同顏色的框標出行人以及行人的著裝部件類別.
對于背景復雜的圖像,在進行目標檢測時小目標在圖像中只占用很少量的像素點,檢測網(wǎng)絡從這些像素中能提取出的語義信息非常有限.根據(jù)圖像梯度上升法[17],利用不同層提取出的特征對原始圖像進行重構,得出富含細節(jié)信息的低層特征比富含語義信息的高層特征可以更好地協(xié)助目標檢測的結論.
本文以YOLOv5L 版本的網(wǎng)絡結構為基礎,搭建YOLO-people與YOLO-dress 級聯(lián)的小目標檢測網(wǎng)絡,每級網(wǎng)絡從多尺度融合方式進行改進.原始YOLOv5通過3 個不同尺度的特征圖進行目標物體的檢測,輸出3 個尺度規(guī)格分別為20×20、40×40、80×80的特征圖,但是僅利用3 個尺度的特征,對淺層信息的利用并不充分,會導致部分小目標信息丟失.因此針對CYOLOv5 兩級子網(wǎng)絡,分別將原來的3 尺度檢測擴展為4 尺度,構成4 個檢測分支結構,如圖5所示,輸入尺寸為640×640,每個分支分別從Backbone主干網(wǎng)絡中提取特征,將從主干網(wǎng)絡中提取的深層特征圖在FPN 中進行上采樣并與網(wǎng)絡前期相應尺寸的底層特征圖由深入淺融合成有效信息,實現(xiàn)了Concat 連接操作.但是在FPN 網(wǎng)絡中會存在一個問題,淺層特征圖在向深層傳遞信息時,難以與高層特征圖進行融合,因此,在FPN 特征金字塔網(wǎng)絡的基礎上實現(xiàn)PAN 網(wǎng)絡結構,增加了自底向上(bottom-up)路徑,將FPN 網(wǎng)絡中融合后的特征圖繼續(xù)進行自底向上的下采樣融合,實現(xiàn)特征圖的反向融合,這樣會得到更豐富的特征信息.利用PAN 結構的bottom-up 路徑將FPN 網(wǎng)絡中融合后的特征圖再次自底向上融合并進行下采樣操作,實現(xiàn)特征圖的反向融合,最后在4 個尺度的融合特征圖上分別做獨立的檢測.改進后的多尺度融合可以從淺特征層中學習較強的位置特征,經(jīng)過PAN 結構的bottom-up路徑再次融合使得深層特征可以進行更確切的細粒度檢測.通過融合更多尺度的淺層特征信息,增強路徑聚合網(wǎng)絡(PANet)的特征表達能力,提升小目標的檢測精度,降低漏檢率.
圖5 改進PANet的多尺度特征融合方式
YOLO-people和YOLO-dress的網(wǎng)絡整體結構基本相同,如圖6所示.差別在于檢測的目標和網(wǎng)絡的輸入分辨率有所不同,YOLO-people 用于檢測行人目標,網(wǎng)絡輸入分辨率為640×640,YOLO-dress 用于檢測著裝部件,網(wǎng)絡輸入分辨率為320×320,圖像信息量的減少加快了檢測速度.最后,由于anchor box的數(shù)量和大小對檢測的精度和速度有直接影響,因此采用K-means聚類方式生成更適合著裝部件檢測的錨點框,通過K-means 聚類選取合適的IOU 分數(shù),可以在模型召回率和精確度之間取得平衡.根據(jù)IOU和anchor box的關系,針對C-YOLOv5 兩級子網(wǎng)絡分別生成12 個anchor box.
圖6 YOLO-people (YOLO-dress)整體網(wǎng)絡結構
4.1.1 數(shù)據(jù)集預處理
由于油田作業(yè)現(xiàn)場要求佩戴安全帽、身穿紅色勞保服,故本文所采用的數(shù)據(jù)集全部源于某油田作業(yè)現(xiàn)場多個監(jiān)控視角下所拍攝的監(jiān)控畫面,對每一個攝像頭設置每間隔半個小時抓取一張圖片,最后再刪除部分沒有工人的圖片.為了提高數(shù)據(jù)集的泛化性,對4 500 張樣本采取圖像反轉、對比度變化等數(shù)據(jù)增強方式,這樣可以有效地避免了訓練模型過擬合問題,提高模型泛化能力,避免了因數(shù)據(jù)樣本量少導致的訓練不充分的問題,最終獲得9 000 張數(shù)據(jù)樣本圖,用于行人檢測網(wǎng)絡YOLO-people的訓練.著裝檢測網(wǎng)絡YOLO-dress的訓練圖像是根據(jù)每幅圖像中行人的標記框坐標,從原始圖像中切割出行人目標區(qū)域再進行尺度變換得到,最終每幅圖像中都只有一個行人,共27 000 張樣本圖.行人檢測網(wǎng)絡和著裝檢測網(wǎng)絡部分訓練樣本圖如圖7、圖8所示.
圖7 工人檢測網(wǎng)絡訓練樣本圖
圖8 著裝檢測網(wǎng)絡訓練樣本圖
4.1.2 圖片標注
本文依據(jù)規(guī)范化安全著裝檢測目標,將設計行人、安全帽、非安全帽、安全上衣、非安全上衣、安全褲子、非安全褲子共7 類檢測標簽,參照PASCAL VOC[18]目標檢測數(shù)據(jù)集標準格式,首先對每張訓練樣本中出現(xiàn)的行人目標進行標記,采用Labelimg 圖像標注工具標注外圍框,將外圍框的左上角坐標(xmin,ymin)、右上角坐標(xmax,ymax)以及目標類別person 等相關信息進行記錄,得到行人檢測數(shù)據(jù)集后,根據(jù)標記框坐標將每張訓練樣本圖中的行人目標進行裁剪并放大,得到每幅圖像只有一個行人,對得到的每幅圖像依據(jù)上述方式進行其余6 個類別的標注,最終得到著裝檢測數(shù)據(jù)集.將兩類數(shù)據(jù)集分別按8:2 劃分為訓練集和測試集,行人和6 類著裝類別目標在兩類數(shù)據(jù)集中所占圖像數(shù)量分布如圖9所示.
圖9 數(shù)據(jù)分布量
本文訓練和測試實驗均在以下工作條件下完成:Ubuntu 20.04 系統(tǒng);CPU 處理器Intel Xeon Gold 6244;運行內存128 GB;顯卡為NVIDIA Tesla V100.采用基于PyTorch 框架的YOLOv5 進行多尺度融合方法改進,并利用改進后的YOLOv5 網(wǎng)絡搭建YOLOpeople和YOLO-dress 網(wǎng)絡進行級聯(lián),從而實現(xiàn)安全著裝檢測,訓練時需要對兩個子網(wǎng)絡單獨進行訓練.YOLO-people 采用行人數(shù)據(jù)集訓練,YOLO-dress 采用著裝數(shù)據(jù)集訓練,通過K-means 聚類算法,在行人數(shù)據(jù)集上,YOLO-people 選用4 個尺度的12 個anchor box 分別為(11,25)(14,44)(23,22),(30,52)(32,80)(34,53),(45,99)(53,66)(86,104),(106,171)(151,244)(170,321).在著裝數(shù)據(jù)集上,YOLO-dress 選用4 個尺度的12 個anchor box 分別為(5,6)(7,9)(12,10),(10,13)(16,30)(33,23),(47,52)(75,79)(96,102),(116,90)(148,187)(372,324).以訓練YOLO-people為例,輸入分辨率設置為640×640,初始學習速率設置為0.000 5,速度衰減因子為0.000 5,batchsize 設置為64,NMS 設置為0.5,每迭代100 次保存一次模型,最后修改網(wǎng)絡訓練相關參數(shù)開始模型訓練.
圖10為兩級子網(wǎng)絡訓練的損失值收斂曲線,可以看出損失值隨著迭代步數(shù)降低,迭代步數(shù)為290 左右時,損失值趨于穩(wěn)定,YOLO-people 網(wǎng)絡訓練loss 值為0.024,YOLO-dress 網(wǎng)絡訓練loss 值為0.005.
圖10 C-YOLOv5 子網(wǎng)絡訓練損失值曲線
本文對于規(guī)范化安全著裝檢測任務采用查準率(Precision)、查全率(Recall)、平均精度(AP)、平均精度均值(mAP)及每秒傳輸幀數(shù)(FPS)作為模型的評價指標.
查準率(Precision)衡量的是所有預測為正樣本的結果中,預測正確的比率,在規(guī)范化安全著裝檢測任務中Precision代表模型正確預測某類著裝部件的個數(shù)(TP) 占預測該類著裝部件總個數(shù)(TP+FP)的比值,該指標如式(8)所示:
查全率(Recall)衡量的是所有正樣本中被預測正確的比率.在規(guī)范化安全著裝檢測任務中Recall代表模型正確預測某類著裝部件的個數(shù)(TP)占該類著裝部件總數(shù)(TP+FN)的比值,該指標如式(9)所示:
平均精度(AP)用來計算單類別模型平均準確度,對于目標檢測任務,每一類都可以計算出Precision和Recall并得到一條P-R 曲線,曲線下的面積就是AP的值.平均精度均值(mAP)就是對所有類別的AP值求平均值,N代表類別總數(shù).該指標如式(10)所示:
實驗1.利用YOLOv5 算法模型和YOLO-people、YOLO-dress 算法模型進行對比實驗,其中YOLO-people和YOLO-dress 算法表示利用了4 個尺度的多尺度特征融合檢測方式進行實驗,YOLOv5 沒有進行任何改動.在自制行人檢測數(shù)據(jù)集和著裝檢測數(shù)據(jù)集上進行實驗,采用mAP和FPS 作為評價指標.測試結果如表1,YOLO-people 模型在保證實時檢測的情況下,相比YOLOv5 模型的mAP提高了約0.7%,YOLO-dress模型相比YOLOv5的mAP提升了約0.6%.
表1 C-YOLOv5 子網(wǎng)絡對比實驗
圖11(a)和圖11(b)為YOLOv5和YOLO-people在同一測試圖像上的檢測效果對比.從圖中可以看出,YOLO-people 網(wǎng)絡可以檢測出更多的小目標行人.圖12(a)和圖12(b)為YOLOv5和YOLO-dress 在同一測試圖像上的檢測效果對比.從對比圖像中看出,原始YOLOv5 對于畫面中兩個人的安全帽佩戴情況沒有檢測出來,而YOLO-dress 模型全部檢測準確,相比YOLOv5的3 尺度檢測效果更好.以上消融實驗說明改進的4 尺度模塊對小目標檢測的準確率有一定的提升.
圖11 YOLO-people 檢測效果測試
圖12 YOLO-dress 檢測效果測試
實驗2.為了驗證級聯(lián)網(wǎng)絡檢測方式對小目標檢測的有效性,本文的級聯(lián)網(wǎng)絡測試實驗采用兩個原始YOLOv5 網(wǎng)絡進行實驗,在檢測出行人目標的基礎上檢測著裝部件,在本文的工人檢測數(shù)據(jù)集和著裝檢測數(shù)據(jù)集上進行實驗,采用mAP和FPS 作為評價指標,測試結果如表2所示.實驗證明,通過級聯(lián)網(wǎng)絡檢測的方式,在保證實時的情況下,mAP相比于YOLOv5 算法提升1.05%,由此證明,級聯(lián)網(wǎng)絡檢測方式對于小目標的檢測效果提升確實有效.
表2 級聯(lián)網(wǎng)絡對比實驗
圖13(a)和圖13(b)為YOLOv5和YOLOv5 級聯(lián)算法對同一圖像的測試結果.從圖中可以看出,原始YOLOv5 算法沒有檢測出畫面中一個人的安全帽和工作上衣的穿著情況,而級聯(lián)檢測方式對畫面中的行人都進行了正確的規(guī)范性著裝檢測,無漏檢情況.
圖13 級聯(lián)網(wǎng)絡對比測試
實驗3.通過整合多尺度融合改進和級聯(lián)網(wǎng)絡檢測方式,最終形成本文的C-YOLOv5.在整體測試中,本次實驗對比了YOLOv5 算法在自制著裝數(shù)據(jù)集上的檢測效果,根據(jù)FPS和mAP評價指標評估本文方法的有效性,如表3所示.
表3 整體改進對比實驗
通過對比實驗結果表明,原始YOLOv5 在自制著裝數(shù)據(jù)集上的傳輸速率達到了81.93 f/s,檢測精度mAP達到了91.75%.而本文提出的C-YOLOv5 方法在自制數(shù)據(jù)集上的傳輸速率達到36.24 f/s,檢測精度mAP達到了94.03%,相比于YOLOv5 提高了約2.3%,這是因為C-YOLOv5 在改進了多尺度融合方式的同時采用了級聯(lián)檢測,不僅增強了小目標的特征信息,而且通過級聯(lián)的方式極大減少了背景干擾等影響因素,降低了小目標檢測的難度,進一步提升了油田作業(yè)現(xiàn)場安全著裝小目標的檢測效果.
圖14展示了本文C-YOLOv5 算法在自制數(shù)據(jù)集上的檢測效果與YOLOv5 算法的對比.從對比效果圖中可以看出,對于規(guī)范化著裝檢測任務,C-YOLOv5 算法在監(jiān)控視角拍攝距離較遠、人員目標尺寸較小的情況下,能夠很好地檢測出油田工人的規(guī)范著裝情況,在精確度和查全率方面具有較好的效果,在小目標檢測中表現(xiàn)較好.
圖14 整體改進對比測試
針對油田作業(yè)現(xiàn)場的監(jiān)控視頻中人員安全著裝小目標檢測問題,本文提出了一種改進的Cascade-YOLOv5 (C-YOLOv5) 方法,該算法首先針對原始YOLOv5 算法進行改進多尺度特征融合方式,從原來的3 尺度檢測擴展為在4 個尺度的融合特征圖上分別做獨立的檢測,改進后的模型充分利用了淺層特征信息并融合高層語義信息,增強了路徑聚合網(wǎng)絡的特征表達能力,提高了小目標的檢測精度.然后在此基礎上,用兩個多尺度特征融合改進后的YOLOv5 算法進行級聯(lián),先檢測工人目標,然后將目標進行尺度變換處理后進行著裝檢測,進一步提高遠距離視頻監(jiān)控中的安全著裝檢測效果.本文方法在自制數(shù)據(jù)集上與YOLOv5算法的對比實驗,證明該方法既能保證實時檢測速度,也提高了小目標檢測精度.本文方法最終實現(xiàn)了油田現(xiàn)場對于工作人員的智能化、自動化的規(guī)范化安全著裝檢測,對油田作業(yè)現(xiàn)場安防智能監(jiān)控發(fā)展有著重要的價值,且本文方法適用于不同場景下的小目標檢測任務.