国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

針對(duì)全球儲(chǔ)油罐檢測(cè)的TCS-YOLO 模型

2023-02-14 12:22:10李想特日根儀鋒徐國(guó)成
光學(xué)精密工程 2023年2期
關(guān)鍵詞:儲(chǔ)油罐損失函數(shù)

李想,特日根*,儀鋒,徐國(guó)成

(1.長(zhǎng)光衛(wèi)星技術(shù)股份有限公司,吉林 長(zhǎng)春 130000;2.吉林省衛(wèi)星遙感應(yīng)用技術(shù)重點(diǎn)實(shí)驗(yàn)室,吉林 長(zhǎng)春 130000;3.吉林大學(xué) 材料科學(xué)與工程學(xué)院,吉林 長(zhǎng)春 130000)

1 引言

隨著高分辨率光學(xué)遙感衛(wèi)星的迅速發(fā)展,對(duì)自然或人造物體目標(biāo)進(jìn)行目標(biāo)檢測(cè)的大量應(yīng)用逐漸進(jìn)入研究團(tuán)隊(duì)的視野[1],其中關(guān)于儲(chǔ)油罐的目標(biāo)檢測(cè)因具有挑戰(zhàn)性的而備受關(guān)注。儲(chǔ)油罐是用于短期或長(zhǎng)期存儲(chǔ)石油和天然氣等液體或壓縮氣體的容器,通常呈圓柱形,頂部直徑從6.1 m 至91.5 m 不等[2]。根據(jù)存儲(chǔ)的材料不同,儲(chǔ)油罐分為固定頂罐(也稱拱形罐)和浮頂罐,本文的主要研究?jī)?nèi)容為全球固定頂儲(chǔ)油罐和浮頂儲(chǔ)油罐的目標(biāo)識(shí)別。

標(biāo)準(zhǔn)圓形霍夫變換(Standard Circular Hough Transform,SCHT)是圖像中檢測(cè)圓形形狀的開創(chuàng)性方法[3],后續(xù)有對(duì)其的修改,包括使用不變性內(nèi)核和濾波器對(duì)SCHT 參數(shù)空間的搜索[4]優(yōu)化等。對(duì)于高分辨率遙感影像儲(chǔ)油罐檢測(cè)的研究,Ok 提出基于陰影信息的儲(chǔ)油罐檢測(cè)方法,通過(guò)儲(chǔ)油罐陰影區(qū)域的代表性邊界推斷圓形罐頂?shù)奈恢眯畔ⅲ?],通過(guò)圓形儲(chǔ)油罐的對(duì)稱性,使用單半徑方法計(jì)算徑向?qū)ΨQ性,進(jìn)而推斷圓形罐頂?shù)奈恢眯畔ⅲ?]。在合成孔徑雷達(dá)(Synthetic Aperture Radar,SAR)圖像中,Wang等[7]應(yīng)用提取明亮區(qū)域的方式獲得儲(chǔ)油罐候選區(qū)域,在光學(xué)圖像中將對(duì)應(yīng)的候選區(qū)域進(jìn)行形狀檢測(cè)。Xu等[8]提出一種將儲(chǔ)油罐的準(zhǔn)圓形陰影和高亮弧相結(jié)合的方法來(lái)檢測(cè)儲(chǔ)油罐。

隨著機(jī)器學(xué)習(xí)技術(shù)和卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network,CNN)[9-10]的發(fā)展,其在遙感影像目標(biāo)檢測(cè)中得到廣泛應(yīng)用。Li等[11]使用顯著性檢測(cè)技術(shù)和GIST 特征[12]對(duì)遙感影像的候選區(qū)域進(jìn)行識(shí)別,Huang等[13]應(yīng)用支持向量機(jī)(Support Vector Machines,SVM)分類器,在像素和對(duì)象級(jí)別結(jié)合多個(gè)光譜和空間特征對(duì)遙感影像進(jìn)行分類。在儲(chǔ)油罐檢測(cè)領(lǐng)域,Zhu等[14]使用一種從粗略到精細(xì)的策略,從遙感影像中基于概率潛在語(yǔ)義分析模型提取儲(chǔ)油罐的圖像塊,進(jìn)而使用霍夫變換和模板匹配檢測(cè)圓形區(qū)域的儲(chǔ)油罐頂部。Zhang等[15]使用橢圓和線段檢測(cè)器(Ellipse and Line Segment Detector,ELSD)選擇候選對(duì)象,方向梯度直方圖(Histogram of Oriented Gradients,HOG)[16]和CNN 進(jìn)行局部和周邊的特征提取,SVM 分類器進(jìn)行輸出。Cai等[17]通過(guò)基于多尺度直方圖對(duì)比度的數(shù)學(xué)形態(tài)學(xué)提出一種新的視覺顯著性模型,使用霍夫變換進(jìn)行儲(chǔ)油罐檢測(cè),利用SVM 算法來(lái)確定儲(chǔ)油罐的位置信息。

隨著GPU 的普及和計(jì)算機(jī)儲(chǔ)存容量的無(wú)限拓展,深度學(xué)習(xí)技術(shù)近些年得到了前所未有的發(fā)展。在深度學(xué)習(xí)的目標(biāo)檢測(cè)領(lǐng)域主要分為onestage 和two-stage 檢測(cè)算法,其 中two-stage檢測(cè)算法分為兩個(gè)階段:用相應(yīng)的Region Proposal 算法從輸入圖片中生成建議目標(biāo)候選區(qū)域;將所有的候選區(qū)域送入分類器進(jìn)行分類[18]。代表算法有SPP-net[19],F(xiàn)ast R-CNN[20]和Faster R-CNN[21]等。One-stage 算法無(wú)需Region Proposal 階段,直接生成物體的類別概率和位置坐標(biāo),具有更快的檢測(cè)速度,但精度與two-stage 相比較低。代表算法有SSD[22]和YOLO 系列,包括YOLO[23],YOLO9000[24-25],YOLOv3[26-27],YOLOv4[28]和YOLOv5。在基于深度學(xué)習(xí)的儲(chǔ)油罐研究中,Zalpour等[29]采用two-stage 檢測(cè)方法,使用Faster RCNN 提取油庫(kù)作為感興趣區(qū)域(Region of Interest,ROI),最大程度地減少誤報(bào)與處理時(shí)間,進(jìn)而從ROI 中通過(guò)圓形檢測(cè)方法選擇多個(gè)候選對(duì)象,通過(guò)CNN 與HOG 方式進(jìn)行特征提取,最后將儲(chǔ)油罐的特征信息通過(guò)SVM 進(jìn)行分類。Xu等[30]通過(guò)在backbone 部分使用DenseNet,增加檢測(cè)尺度和用卷積層替換殘差單元的方式對(duì)YOLOv3 網(wǎng)絡(luò)進(jìn)行優(yōu)化,可在遙感影像中對(duì)儲(chǔ)油罐進(jìn)行識(shí)別。

上述儲(chǔ)油罐檢測(cè)研究均在各自領(lǐng)域取得了令人矚目的成功,盡管如此,在此類研究的具體應(yīng)用中還是存在著較為嚴(yán)重的問(wèn)題:

(1)一些研究的關(guān)注對(duì)象為具有標(biāo)準(zhǔn)尺寸和形狀的儲(chǔ)油罐,當(dāng)儲(chǔ)油罐較小、有陰影或罐頂形狀特殊時(shí),應(yīng)用普適性較差;

(2)一些研究為了消除顏色特征而保留亮度特征,使用灰色強(qiáng)度圖像代替真彩色圖像。與此同時(shí),由于SAR 影像的特性,圖像顏色趨近于灰色。此類情況在處理多種顏色儲(chǔ)油罐(如灰色、棕色等)分類的場(chǎng)景下,適用性較差;

(3)一些研究使用的方式為檢測(cè)候選區(qū)域選擇后的圖像塊,而在高分辨率大尺寸遙感影像中,由于圖像復(fù)雜度較高,會(huì)導(dǎo)致候選誤報(bào)率大幅提升。同時(shí),當(dāng)圖像與儲(chǔ)油罐目標(biāo)尺寸差距很大時(shí),側(cè)重于圖像局部區(qū)域的圖像塊檢測(cè)也不再適用;

(4)一些基于深度學(xué)習(xí)的研究使用two-stage算法,目標(biāo)的訓(xùn)練速度和識(shí)別速度均較慢,且誤報(bào)率較高;

(5)一些基于YOLO 模型的儲(chǔ)油罐識(shí)別模型,網(wǎng)絡(luò)模型較為簡(jiǎn)單,使用的優(yōu)化技巧較為落后,導(dǎo)致識(shí)別精度低。

上述問(wèn)題使得該類研究無(wú)法達(dá)到全球儲(chǔ)油罐識(shí)別的工程化標(biāo)準(zhǔn),本文提出一種基于優(yōu)化YOLOv5 的全球儲(chǔ)油罐檢測(cè)模型TCS-YOLO,該模型的特點(diǎn)如下:

(1)使用較新的科研成果Transformer[31]架構(gòu),與傳統(tǒng)CNN 進(jìn)行互補(bǔ);

(2)使用CBAM[32]代替?zhèn)鹘y(tǒng)的CONV 層,添加網(wǎng)絡(luò)的注意力機(jī)制;

(3)優(yōu)化YOLOv5 的損失函數(shù),使用SIoU loss[33]代替CIoU loss 作為定位損失bbox_loss。

2 改進(jìn)的YOLOv5 模型

2.1 YOLOv5

YOLOv5 是2020 年5月由Ultralytics 公司提出的one-stage 目標(biāo)檢測(cè)模型,包括YOLOv5n,YOLOv5s,YOLOv5m,YOLOv5l以及 YOLOv5x 5 個(gè)版本,他們的主要區(qū)別在于模型的深度和卷積核的個(gè)數(shù),分別用depth_multiple 和width_multiple 參數(shù)控制。模型的尺寸與GFLOPs 和mAP 成正比,與推理速度成反比。YOLOv5 網(wǎng)絡(luò)結(jié)構(gòu)主要由backbone 和head 組成,其中head 中包括特征增強(qiáng)部分和預(yù)測(cè)部分。

YOLOv5 的backbone 主要由Focus 層、CONV 層、C3層和SPP(Spatial Pyramid Pooling)層組成。如圖1 所示,其中Focus 層與普通卷積下采樣相比具有更少的層數(shù)、參數(shù)和FLOPS值,同時(shí)減少了CUDA 內(nèi)存,在保證了mAP 的前提下,提升了向前傳播和向后傳播速度。CONV層由Conv2d 卷積函數(shù)、BatchNorm2d 歸一化函數(shù)和SiLU(Sigmoid Linear Units)激活函數(shù)[34]組成。C3 層是CSPBottleneck層[35]的改進(jìn)版本,包含3 個(gè)卷積層和若干個(gè)bottleneck 模塊,具有更快速且簡(jiǎn)便的特性。SPP 層位于backbone 層中最后一個(gè)CONV 層后,是一種采用空間金字塔池化方式來(lái)去除網(wǎng)絡(luò)固定大小約束的卷積神經(jīng)結(jié)構(gòu),將特征池化并生成固定長(zhǎng)度的輸出。

Head 層中的特征增強(qiáng)部分由PANet(Path Aggregation Network)[36]構(gòu)成,旨在整合不同層級(jí)的特征,通過(guò)自下而上的路徑增強(qiáng),在較低的層次上增強(qiáng)了精確的定位信號(hào),從而縮短了較低層和最頂層特征之間的信息路徑。Head 層的預(yù)測(cè)部分與YOLOv4 和YOLOv3 版本的預(yù)測(cè)部分相同,包括3 個(gè)輸出頭,卷積步長(zhǎng)分別是8,16 和32,大尺寸輸出特征圖檢測(cè)小物體,小尺寸輸出特征圖檢測(cè)大物體。

圖1 YOLOv5 的backbone 層各結(jié)構(gòu)示意圖Fig.1 Schematic diagram of each structure of the backbone layer of YOLOv5

YOLOv5 的損失函數(shù)如式(1)所示。其定位損失bbox_loss 采用了CIoU loss,如式(1)第1 行所示;目標(biāo)置信度損失obj_loss 和分類損失cls_loss 采用了BCEWithLogitsLoss 損失函數(shù),如式(1)第2~4 行所示:

其中,CIoU loss 如式(2)~式(4)所示:

與其他定位損失函數(shù)相比,CIoU loss 在邊界框與目標(biāo)框不相交、完全包含和完全包含且中心點(diǎn)重合的情況下均有更優(yōu)表現(xiàn)。

盡管YOLOv5 是當(dāng)下速度最快、性能最佳和最易于訓(xùn)練的目標(biāo)檢測(cè)框架之一,但當(dāng)應(yīng)用到全球儲(chǔ)油罐檢測(cè)的任務(wù)中,在識(shí)別效率和準(zhǔn)確率方面仍有一定的提升空間。

2.2 Transformer

Transformer 架構(gòu)在許多NLP(Natural Language Processing)[37]任務(wù)中取得了最先進(jìn)的結(jié)果,而在計(jì)算機(jī)視覺領(lǐng)域,CNN 一直作為最主要的模型在視覺任務(wù)中被廣泛使用。隨著深度學(xué)習(xí)的體系結(jié)構(gòu)越來(lái)越高效,計(jì)算機(jī)視覺與NLP逐漸趨同。因此,為了降低架構(gòu)的復(fù)雜度,探索可擴(kuò)展性與訓(xùn)練效率,將Transformer 應(yīng)用于計(jì)算機(jī)視覺領(lǐng)域成為一個(gè)新的研究方向。Facebook AI 團(tuán)隊(duì)提出的DETR 框架[38]是第一個(gè)成功使用Transformer 作為核心模塊的目標(biāo)檢測(cè)框架。商湯科技團(tuán)隊(duì)提出的Deformable DETR[39]結(jié)合了可變形卷積的稀疏空間采樣和Transformer 的關(guān)鍵能力建模的優(yōu)點(diǎn),緩解了DETR 的收斂緩慢和復(fù)雜性高的問(wèn)題。Google 團(tuán)隊(duì)推出ViT 模型[40],將圖像分為固定大小的塊,在圖像塊上采用類似Transformer 的架構(gòu),完成對(duì)圖像的分類和預(yù)測(cè)。微軟推出的Swin Transformer 模型[41]通過(guò)合并更深層的圖像塊來(lái)構(gòu)建分層特征圖,與ViT 不同的是,Swin Transformer 模型的輸入是圖像的原始尺寸,最大程度地保留圖像信息;Swin Transformer 模型的最大貢獻(xiàn)是提出了一個(gè)可以廣泛應(yīng)用到所有計(jì)算機(jī)視覺領(lǐng)域的backbone,并且支持對(duì)大多數(shù)CNN 網(wǎng)絡(luò)中出現(xiàn)的超參數(shù)進(jìn)行調(diào)整。

Transformer 的結(jié)構(gòu)主要分為encoder 和decoder 兩部分,其中encoder 由positional encoding,multi-head attention,add&normalize 和feed forward 組成。其中muti-head attention 即多頭注意力機(jī)制,是encoder 中最重要的組成部分,由scaled dot-product attention 并行化組成,其中scaled dot-product attention 的描述如式(5)所示。

其中:Q(Query)是一個(gè)包含查詢的矩陣,即查詢向量;K(Key)是序列中所有詞的向量表示,內(nèi)容為被查詢信息與其他信息的相關(guān)性的向量;V(Value)表示被查詢信息的向量;通過(guò)Q與K的轉(zhuǎn)置的點(diǎn)積計(jì)算出注意力矩陣QKT,在經(jīng)過(guò)softmax 歸一化后給V加權(quán),生成最終的結(jié)果。

Decoder 與encoder 結(jié)構(gòu)相似,主要區(qū)別在于在自注意力層只被允許處理輸出序列中更靠前的位置,即masked multi-head attention。同時(shí),decoder 中的注意力機(jī)制并非自注意力機(jī)制,其Q矩陣由上一位置的decoder 輸出中取得,K和V矩陣由encoder 的輸出中取得。

在計(jì)算機(jī)視覺領(lǐng)域,Transformer 與傳統(tǒng)CNN 方法相比,在訓(xùn)練效率方面表現(xiàn)出較明顯的優(yōu)勢(shì);Transformer 架構(gòu)可以單獨(dú)使用,也可以與CNN 混合使用,具有良好的擴(kuò)展性。

2.3 CBAM

CBAM(Convolutional Block Attention Module)是卷積神經(jīng)網(wǎng)絡(luò)的注意力模塊。給定一個(gè)中間特征圖,該模塊沿著兩個(gè)獨(dú)立的維度(通道和空間)依次推斷注意力圖,然后將注意力圖與輸入特征圖相乘以進(jìn)行自適應(yīng)特征細(xì)化。

CBAM 包含兩個(gè)模塊,分別是通道注意力模塊(Channel Attention Mudule,CAM)[42]和SAM(Spartial Attention Module,空間注意力模塊)。其中,CAM 將輸入的特征圖通過(guò)平均池化和最大池化生成的特征送入多層感知器(Multilayer Perceptron,MLP)中,然后將各自的輸出特征的對(duì)應(yīng)位置求和,再經(jīng)過(guò)sigmoid 激活操作后,與輸入特征圖做乘法操作,輸出至SAM。SAM 將CAM 輸出的特征圖作為輸入,基于通道應(yīng)用平均池化和最大池化操作后,將各自的輸出特征的對(duì)應(yīng)位置做concat 拼接操作,再經(jīng)過(guò)sigmoid 激活操作后,與輸入特征圖做乘法操作,生成最后的輸出結(jié)果??傮w來(lái)說(shuō),CAM 可以關(guān)注到更有意義的特征,而SAM 是對(duì)CAM 的補(bǔ)充,其注意力聚焦在這些有意義特征的所在位置。

CBAM 作為輕量的注意力模塊,可以在所有常規(guī)的卷積層中使用,通過(guò)對(duì)CNN 網(wǎng)絡(luò)添加多維度的注意力機(jī)制,可以有效提升網(wǎng)絡(luò)性能。

2.4 SIoU loss

回歸損失函數(shù)是深度學(xué)習(xí)算法的核心內(nèi)容,在目標(biāo)檢測(cè)中同樣起到關(guān)鍵作用,更合適的損失函數(shù)會(huì)生成更好的深度學(xué)習(xí)模型。SIoU loss 在CIoU loss 的基礎(chǔ)上解決了目標(biāo)區(qū)域尺度變化很大導(dǎo)致優(yōu)化減慢的過(guò)程,如式(6)所示:

其中:SIoU loss 從面積差異方面對(duì)CIoU loss 進(jìn)行修正,目的為解決CIoU loss 大損失值點(diǎn)周圍梯度趨于平緩的問(wèn)題,在CIoU loss 中的(1-IoU)項(xiàng)上引入面積調(diào)整系數(shù)γ,如公式(7)和公式(8)所示:

其中:s代表邊界框面積,sgt代表目標(biāo)框面積,當(dāng)sgt為1 600(即40×40)時(shí),γ值隨邊界框面積s的變化如圖2 所示,γ可以平衡不同區(qū)域的邊界框的損失值;當(dāng)s=sgt時(shí),γ=0,SIoU loss 退化為CIoU loss,當(dāng)訓(xùn)練開始時(shí),損失值較大,SIoU loss 為主要影響因素,隨著損失值減少,邊界框和目標(biāo)框具有相似的區(qū)域大小,其中γ 的值變小,整體損失值更容易受到CIoU loss 的影響。

圖2 目標(biāo)框尺寸為1 600(40×40)時(shí)γ 變化情況Fig.2 Variation of γ with target frame size 1 600(40×40)

2.5 改進(jìn)的YOLOv5

2.5.1 C3TR 優(yōu)化

C3TR層即C3 層與Transformer 架構(gòu)的 結(jié)合,該層僅使用Transformer 架構(gòu)的encoder 部分,主要實(shí)現(xiàn)方式參考DETR 和ViT,步驟如下:

Step1 將輸入的圖像特征進(jìn)行維度壓縮后轉(zhuǎn)化為序列化數(shù)據(jù);

Step2 序列化數(shù)據(jù)與位置編碼相加;

Step3 將全部數(shù)據(jù)送入Transformer 架構(gòu)的encoder 中,進(jìn)行多頭注意力機(jī)制的處理,并進(jìn)行殘差連接;

Step4 通過(guò)全連接層得到最后的輸出結(jié)果。

YOLOv5 網(wǎng)絡(luò) 中共有8 個(gè)C3 層,其中有4 個(gè)位于backbone,在提取圖像特征的過(guò)程中同時(shí)起到下采樣的作用;另外4 個(gè)位于head,用于加強(qiáng)網(wǎng)絡(luò)特征融合的能力。如表1 所示,就C3TR 層替換C3 層的位置對(duì)預(yù)測(cè)準(zhǔn)確率的影響進(jìn)行了對(duì)比實(shí)驗(yàn)。

以YOLOv5l 模型為例,在backbone 的最淺層(C3TR Position=1)、backbone 的最深層(C3TR Position=4)、head 的預(yù)測(cè)部分(C3TR Position=6,7,8)與全部head 層(C3TR Position=4,5,6,7,8)的C3 層分別替換C3TR 層,結(jié)論如下:

表1 C3TR 層替換位置對(duì)模型性能的影響Tab.1 Impact of C3TR layer replacement position on model performance

(1)在backbone 的最淺層替換C3TR 層,輸入的圖像尚未進(jìn)行下采樣,導(dǎo)致encoder 內(nèi)存溢出,模型訓(xùn)練過(guò)程無(wú)法進(jìn)行;

(2)在backbone 的最深層替換C3TR 層,獲得最佳結(jié)果。與原模型相比,GFLOPs 降低2.9,mAP0.5提升0.1%,mAP0.5∶0.95提升1.3%;

(3)在head 的預(yù)測(cè)部分替換C3TR 層,獲得結(jié)果不佳;

(4)在全部head 層替換C3TR 層,獲得結(jié)果不佳。

與原始的Transformer 架構(gòu)不同,由于層歸一 化(Layer Normalization,LN)與批歸一化(Batch Normalization,BN)相比更耗費(fèi)內(nèi)存資源,因此C3TR 取消了Step3 和Step4 之間的LN部分并進(jìn)行對(duì)比實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果如表2 所示。

表2 LN 對(duì)C3TR 的影響Tab.2 Effects of LN on C3TR

(1)在模型復(fù)雜度方面,取消LN 的模型,其GFLOPs 降低2.9,模型復(fù)雜度更低;

(2)在識(shí)別準(zhǔn)確率方面,取消LN 的模型mAP0.5和mAP0.5∶0.95分別提升了0.1%和1.3%,性能更優(yōu)。

綜上所述,由于Transformer 架構(gòu)消耗的內(nèi)存過(guò)大,因此將C3TR 層放置于backbone 與head的連接處,同時(shí)取消其中的LN 步驟,可以最大程度地節(jié)約GPU 和內(nèi)存資源消耗,并作用到全部head 網(wǎng)絡(luò),獲得最優(yōu)識(shí)別結(jié)果。

2.5.2 CBAM 優(yōu)化

CBAM 層是CONV 層與空間注意力模塊和通道注意力模塊的結(jié)合。在YOLOv5 網(wǎng)絡(luò)中,共有8 個(gè)CONV 層,其中有4 個(gè)位于backbone,另外4 個(gè)位于head,就CBAM 層替換CONV 層的位置對(duì)預(yù)測(cè)準(zhǔn)確率的影響進(jìn)行了對(duì)比實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果如表3 所示。

表3 CBAM 層替換位置對(duì)模型性能的影響Tab.3 Effect of CBAM layer replacement position on model performance

以YOLOv5l 模型為例,在backbone 的最淺層(CBAM Position=1)與最深層(CBAM Position=4),backbone 的最淺層和最深層(CBAM Position=1,4),全部backbone 層(CBAM Position=1,2,3,4),全部head 層(CBAM Position=5,6,7,8)和全部層(CBAM Position=1,2,3,4,5,6,7,8)的CONV 層分別替換CBAM 層,結(jié)論如下:

(1)在backbone 的最淺層的CONV 層替換CBAM 層,與原模型相比,GFLOPs 相同,mAP0.5提升0.1%,mAP0.5∶0.95提升1.0%;

(2)其余替換情況均無(wú)法獲得性能提升。

綜上所述,將CBAM 放置于backbone 的最淺層時(shí),其輸出內(nèi)容將作用到全部網(wǎng)絡(luò),同時(shí)模型復(fù)雜度最低,識(shí)別結(jié)果最優(yōu)。

2.5.3 SIoU loss 優(yōu)化

其中:d為兩框中心點(diǎn)坐標(biāo)的歐式距離,L為包含兩框的最小矩形框的對(duì)角線距離。即在每種場(chǎng)景中,兩幅影像預(yù)測(cè)框的IoU 相同,兩框中心點(diǎn)坐標(biāo)的歐式距離與包含兩框的最小矩形框的對(duì)角線距離的比例相同,兩框的長(zhǎng)寬比相同。

圖3 同一儲(chǔ)油罐對(duì)象的真實(shí)邊框與多種預(yù)測(cè)邊框Fig.3 Ground-truth and multiple predicted bounding boxes for the same tank object

在此情況下,現(xiàn)有的3 種幾何因素(IoU,d和w/h)將失去效力,如表4 所示。

表4 不同的IoU 方式與結(jié)果Tab.4 Different IoU methods and results

(1)對(duì)于場(chǎng)景A,真實(shí)邊框與預(yù)測(cè)邊框中心重合,d=0,d/L=0,w/h=1.12,此時(shí)?IoU=?GIoU=?DIoU=?CIoU=0.3,CIoU 退化到IoU,此時(shí)IoU,GIoU,DIoU 和CIoU 均無(wú)法提供優(yōu)化方向;?SIoU(A,G)=0.306,?SIoU(B,G)=0.31,此時(shí)僅SIoU 可以提供優(yōu)化方向;

(2)對(duì)于場(chǎng)景B,真實(shí)邊框與預(yù)測(cè)邊框中心不重合,d/L=0.11,w/h=1.12,此時(shí)?IoU=?GIoU=0.6,?DIoU=?CIoU=0.624,CIoU 退化到DIoU,此時(shí)IoU,GIoU,DIoU 和CIoU 均無(wú)法提供優(yōu)化方向,而?SIoU(C,G)=0.721,?SIoU(D,G)=0.862,此 時(shí)僅SIoU 可以提供優(yōu)化方向。

應(yīng)用到儲(chǔ)油罐檢測(cè)實(shí)驗(yàn)中,通過(guò)不同IoU 方式作為定位損失函數(shù),研究損失函數(shù)對(duì)預(yù)測(cè)準(zhǔn)確率的影響,其實(shí)驗(yàn)結(jié)果如表5 所示。

以YOLOv5l 模型為例,分別使用IoU loss,GIoU loss,DIoU loss,SIoU loss 作為定位損失函數(shù),與原模型默認(rèn)的CIoU loss 進(jìn)行對(duì)比,結(jié)論如下:

(1)當(dāng)使用IoU loss 作為定位損失函數(shù)時(shí),mAP0.5和mAP0.5∶0.95降低0.1% 和0.9%,性 能下降;

表5 不同IoU 方式的定位損失函數(shù)對(duì)實(shí)驗(yàn)結(jié)果的影響Tab.5 Influence of different IoU methods of localization loss functions on experimental results

(2)當(dāng)使用GIoU loss 和DIoU loss 作為定位損失函數(shù)時(shí),與原模型性能相同;

(3)當(dāng)使用SIoU loss 作為損失函數(shù)時(shí)較原模型mAP0.5∶0.95提升0.7%,性能優(yōu)于原模型。

綜上所述,使用SIoU loss 可調(diào)整不同區(qū)域尺度的預(yù)測(cè)邊框的損失值,增加損失函數(shù)的梯度,可以解決CIoU loss 在損失值較大的點(diǎn)周圍梯度趨于平緩的問(wèn)題,提高目標(biāo)檢測(cè)的精度。

2.5.4 TCS-YOLO

為了提升基于深度學(xué)習(xí)的全球儲(chǔ)油罐目標(biāo)檢測(cè)模型的性能,結(jié)合上述章節(jié)內(nèi)容,對(duì)YOLOv5 網(wǎng)絡(luò)進(jìn)行改進(jìn),得到TCS-YOLO 網(wǎng)絡(luò)。如圖4 所示,其中第1 層使用CBAM 層代替原CONV 層,在第9 層使用C3TR 層代替原C3 層,其余網(wǎng)絡(luò)結(jié)構(gòu)與YOLOv5 相同。

與此同時(shí),在模型訓(xùn)練中使用的定位損失函數(shù)由CIoU loss 改為SIoU loss,TCS-YOLO損失函數(shù)如式(12)所示,其中α,ν和γ 如式(3)、式(4)和式(7)所示:

圖4 TCS-YOLO 網(wǎng)絡(luò)結(jié)構(gòu)Fig.4 TCS-YOLO network structure

3 實(shí)驗(yàn)設(shè)置與結(jié)果分析

3.1 儲(chǔ)油罐遙感影像數(shù)據(jù)集

儲(chǔ)油罐遙感影像數(shù)據(jù)集使用43 幅吉林一號(hào)光學(xué)遙感影像,如表6 所示,影像涵蓋來(lái)自全球六大洲(除南極洲)的具有代表性的20 個(gè)石油和天然氣公司,其儲(chǔ)油罐分布如圖5 所示。通過(guò)對(duì)遙感影像的預(yù)處理,制作成3 658 張尺寸為416×416 的有效圖像,經(jīng)過(guò)圖像旋轉(zhuǎn)擴(kuò)容(90°,180°和270°)后得到14 632 張圖像,共包含91 884 個(gè)固定頂儲(chǔ)油罐,23 688 個(gè)外浮頂儲(chǔ)油罐。同時(shí),為了減少誤報(bào),添加了150 張無(wú)標(biāo)簽的背景圖片。隨機(jī)選取數(shù)據(jù)集中的80% 作為訓(xùn)練集,其余20%為測(cè)試集。

表6 全球儲(chǔ)油罐數(shù)據(jù)集數(shù)據(jù)來(lái)源Tab.6 Global oil storage tank dataset data source

續(xù)表6 全球儲(chǔ)油罐數(shù)據(jù)集數(shù)據(jù)來(lái)源Tab.6 Global oil storage tank dataset data source

圖5 全球儲(chǔ)油罐數(shù)據(jù)集分布Fig.5 Global oil storage tank dataset distribution

如圖6 所示(彩圖見期刊電子版),帶有紅、綠色陰影的儲(chǔ)油罐A 和儲(chǔ)油罐B 中均為數(shù)據(jù)集中阿布扎比地區(qū)某處的同一儲(chǔ)油罐的遙感影像,其中紅色部分代表儲(chǔ)油罐內(nèi)陰影,綠色部分代表儲(chǔ)油罐外陰影。如表7 所示,圖7(a)與圖7(b)拍攝時(shí)間、太陽(yáng)高度角等均不同,確保了數(shù)據(jù)集的多樣性。

圖6 數(shù)據(jù)集多樣性示意圖Fig.6 Dataset diversity diagram

表7 數(shù)據(jù)集圖像參數(shù)對(duì)比Tab.7 Data set image parameter comparison

此外,使用LabelImg 圖像標(biāo)注工具在416×416 有效圖像上標(biāo)記儲(chǔ)油罐對(duì)象區(qū)域輪廓,生成的帶標(biāo)注的儲(chǔ)油罐數(shù)據(jù)集如圖7 所示,儲(chǔ)油罐的尺寸、顏色、密集程度、陰影長(zhǎng)度和陰影方向等均有不同程度的區(qū)別。

3.2 實(shí)驗(yàn)設(shè)置

本實(shí)驗(yàn)所使用的處理器為Intel(R)Core(TM)i7-6700,內(nèi)存32 GB;GPU 為NVIDIA Ge-Force RTX 3090;操作系統(tǒng)為Ubuntu 18.04,CUDA 11.2,cuDNN 8.2.0;深度學(xué)習(xí)框架為Py-Torch 1.9.0。為了獲得更好的訓(xùn)練結(jié)果,對(duì)TCS-YOLO 網(wǎng)絡(luò)訓(xùn)練的超參數(shù)進(jìn)行設(shè)置,如表8所示,輸入圖像大小為416×416 pix,初始學(xué)習(xí)率(Initial Learning Rate)為0.01,訓(xùn)練次數(shù)epochs為300 次,動(dòng)量(Momentum)為0.937,權(quán)重衰減(Weight Decay)為0.000 5。實(shí)驗(yàn)部分其余超參數(shù)設(shè)置均為默認(rèn)設(shè)置。

圖7 帶標(biāo)注的儲(chǔ)油罐數(shù)據(jù)集Fig.7 Annotated oil storage tank dataset

為了利用GPU 的并行性提高計(jì)算速度,同時(shí)避免Batch-size 值較小時(shí)造成的較差的Batch-Norm 結(jié)果,對(duì)5 種不同大小的模型分別使用更合適的Batch-size 值進(jìn)行訓(xùn)練,對(duì)應(yīng)關(guān)系如表9所示。

表8 TCS-YOLO 模型訓(xùn)練超參數(shù)設(shè)置Tab.8 TCS-YOLO model training hyperparameter settings

表9 不同模型的Batch-size 值設(shè)置Tab.9 Batch-size value settings for different models

為了驗(yàn)證模型的性能,本實(shí)驗(yàn)采用mAP0.5,mAP0.5∶0.95、推理時(shí)間(Inference Time)、參數(shù)量(Parameters)和模型復(fù)雜度(GFLOPs)5 個(gè)指標(biāo)進(jìn)行評(píng)價(jià),其中mAP 計(jì)算方式如式(13)所示:

其中:APi為每個(gè)類別的平均精度,由于檢測(cè)類別分別為固定頂儲(chǔ)油罐(類別序號(hào)為0,標(biāo)簽為“Fixed_Roof_Tanks”)和外浮頂儲(chǔ)油罐(類別序號(hào)為1,標(biāo)簽為“Floating_Roof_Tanks”),因此在本文中N為2。本實(shí)驗(yàn)對(duì)測(cè)試集數(shù)據(jù)進(jìn)行推理,設(shè) 置img值為416,conf-thres值為0.001,iouthres值為0.7,half 值為True,即使用FP16半精度推理。

3.3 對(duì)比實(shí)驗(yàn)

為了驗(yàn)證TCS-YOLO 模型的有效性,本實(shí)驗(yàn)將TCS-YOLO 系列的5 種尺度模型與4 種最前沿的目標(biāo)檢測(cè)模型YOLOv3,YOLOv4,YOLOv5 和Swin Transformer 的多種尺度的模型進(jìn)行對(duì)比實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果如表10 和圖8 所示,在圖8中,X軸表示模型推理速度,X值越小性能越優(yōu);Y軸代表模型平均精度,Y值越大性能越優(yōu),即越靠近左上角的模型性能越優(yōu)。

可得到如下結(jié)論:

(1)TCS-YOLO 模型的平均mAP0.5為99.28%,平均mAP0.5∶0.95為89.68%,平均推理時(shí)間為2.48 ms;

(2)在與YOLOv3 系列模型的比較中,TCSYOLO-n 與YOLOv3-tiny 推理速度接近,相差0.1 ms,但mAP0.5∶0.95優(yōu)勢(shì)較大,高7.5%;YOLOv3 和 YOLOv3-spp 比 TCS-YOLO-n 的mAP0.5∶0.95分別高0.7%和2.5%,但推理速度相差較大,分別慢3.6 ms;TCS-YOLO 其余4 個(gè)較大模型均在精度上有較大優(yōu)勢(shì);

表10 不同的目標(biāo)檢測(cè)模型實(shí)驗(yàn)結(jié)果Tab.10 Experimental results of different object detection models

圖8 不同的目標(biāo)檢測(cè)模型實(shí)驗(yàn)結(jié)果Fig.8 Experimental results of different object detection models

(3)在與YOLOv4 系列模型的比較中,YOLOv4-pacsp-mish 和 YOLOv4-pacsp-mish-x比TCS-YOLO-n的mAP0.5∶0.95分別高1.0% 和1.8%,但推理速度相差較大,分別慢3.9 ms 和5.6 ms;其余YOLOv4 系列模型的推理速度和精度均劣于TCS-YOLO-n模型,與TCS-YOLO 其余4 個(gè)較大模型均在精度上有較大優(yōu)勢(shì);

(4)在與YOLOv5 系列模型的比較中,各尺度推理速度相近,YOLOv5 系列占優(yōu),分別快0.1 ms,0.1 ms,0.2 ms,0.2 ms 和0.3 ms,平均差距為0.2 ms;識(shí)別精度TCS-YOLO 模型占優(yōu),mAP0.5分別高0.0%,0.3%,0.2%,0.2% 和0.2%,平均差距為0.2%;mAP0.5∶0.95分別高0.2%,1.0%,1.4%,1.5% 和1.8%,平均差距為1.5%;各尺度模型參數(shù)量相近,TCS-YOLO模型平均參數(shù)量少0.88%;各尺度模型復(fù)雜度相 近,TCS-YOLO 模型平均 GFLOPs 低3.13%;

(5)在與Swin Transformer 系列模型的比較中,TCS-YOLO 系列模型在精度上均具有較大優(yōu) 勢(shì),TCS-YOLO-n 模型的mAP0.5∶0.95值較Swin Transformer 性能最優(yōu)的模型Swin_Transformer_mask_rcnn_small 高3.0%;

3.4 消融實(shí)驗(yàn)

為了驗(yàn)證C3TR 層、CBAM 層和SIoU loss對(duì)模型性能的提升,本實(shí)驗(yàn)對(duì)TCS-YOLO 進(jìn)行消融研究,實(shí)驗(yàn)結(jié)果如表11 所示。

表11 不同優(yōu)化方式對(duì)模型性能的影響Tab.11 Impact of different optimization methods on model performance

以YOLOv5l 模型為例,可得到結(jié)論:

(1)應(yīng) 用SIoU loss 優(yōu)化時(shí),mAP0.5∶0.95提升0.7%;應(yīng) 用CBAM 層優(yōu)化時(shí),mAP0.5提升0.1%,mAP0.5:0.95提升1.0%;應(yīng) 用C3TR 層優(yōu)化時(shí),mAP0.5提升0.1%,mAP0.5∶0.95提升1.3%;

(2)同時(shí)應(yīng)用SIoU loss 優(yōu)化與CBAM 層優(yōu)化 時(shí),mAP0.5提升0.1%,mAP0.5∶0.95提升1.4%;同時(shí)應(yīng)用SIoU loss 優(yōu)化與C3TR 層優(yōu)化時(shí),mAP0.5提升0.2%,mAP0.5∶0.95提升1.4%;同時(shí)應(yīng)用C3TR 層優(yōu)化與CBAM 層優(yōu)化時(shí),mAP0.5提升0.2%,mAP0.5∶0.95提升1.4%;

(3)同時(shí)應(yīng)用C3TR 層優(yōu)化、CBAM 層優(yōu)化和SIoU loss 優(yōu)化的TCS-YOLO 模型,mAP0.5提升0.2%,mAP0.5∶0.95提升1.5%;性能提升最高。

綜上所述,TCS-YOLO 與YOLOv5 相比,在保證了運(yùn)行效率的前提下,在不同尺寸的模型上對(duì)于儲(chǔ)油罐檢測(cè)均有準(zhǔn)確率的提升,具有一定的現(xiàn)實(shí)意義,TCS-YOLO 模型的識(shí)別結(jié)果示例如圖8 所示,在儲(chǔ)油罐的尺寸、顏色、密集程度、陰影長(zhǎng)度和陰影方向等均有差異的情況下,仍有較好的識(shí)別效果。

圖9 TCS-YOLO 模型的儲(chǔ)油罐目標(biāo)識(shí)別示意圖Fig.9 Schematic diagram of oil storage tank target recognition by TCS-YOLO model

4 結(jié)論

為了實(shí)現(xiàn)對(duì)全球儲(chǔ)油罐準(zhǔn)確、實(shí)時(shí)地進(jìn)行目標(biāo)檢測(cè),本文提出了一種基于優(yōu)化YOLOv5的目標(biāo)檢測(cè)模型TCS-YOLO,并對(duì)其在吉林一號(hào)光學(xué)遙感影像數(shù)據(jù)集上進(jìn)行實(shí)驗(yàn),主要結(jié)論如下:

(1)在采用YOLOv5 模型進(jìn)行儲(chǔ)油罐檢測(cè)的基礎(chǔ)上,以YOLOv5l 模型為例,在特征提取網(wǎng)絡(luò)的backbone 中的第1 層使用注意力機(jī)制的CBAM 層替換CONV 層,mAP0.5∶0.95提升1.0%;在第4 層使用基于Transformer 架構(gòu)的C3TR 層代替默認(rèn)CNN 架構(gòu)的C3 層,mAP0.5∶0.95提升1.3%;在訓(xùn)練過(guò)程中使用SIoU loss 代替CIoU loss 作為損失函數(shù)中的定位損失函數(shù),mAP0.5:0.95提升0.7%。3 種優(yōu)化方式均可提升模型的性能。

(2)TCS-YOLO 模型將3 種優(yōu)化方式結(jié)合,與YOLOv5相比,在5 種模型下mAP0.5∶0.95分別提升0.2%,1.0%,1.4%,1.5% 和1.8%,平均提升1.5%;同時(shí),5 種模型下TCS-YOLO 的參數(shù)量平均減少0.88%;模型復(fù)雜度GFLOPs 平均減少3.13%;推理速度平均慢0.2 ms。TCSYOLO 模型在與YOLOv5 模型運(yùn)行效率相近的前提下,具有更優(yōu)的識(shí)別精度。

(3)在對(duì)比實(shí)驗(yàn)中,將TCS-YOLO 模型與當(dāng)前主流目標(biāo)識(shí)別模型YOLOv3,YOLOv4,YOLOv5 和Swin Transformer 進(jìn)行對(duì)比,結(jié)果 表明:TCS-YOLO 模型具有相對(duì)最高的準(zhǔn)確率,最快的訓(xùn)練速度和檢測(cè)速度,以及較小的模型尺寸,在能準(zhǔn)確檢測(cè)全球儲(chǔ)油罐的前提下,滿足實(shí)時(shí)性的要求。

在快速準(zhǔn)確地識(shí)別全球遙感影像中儲(chǔ)油罐的前提下,進(jìn)而通過(guò)區(qū)域內(nèi)原油儲(chǔ)量的計(jì)算和回歸分析,可以挖掘出遙感數(shù)據(jù)在能源期貨領(lǐng)域的巨大的應(yīng)用價(jià)值,更早做出合理投資決策,為交易者和策略制定者提供信息優(yōu)勢(shì)。

猜你喜歡
儲(chǔ)油罐損失函數(shù)
內(nèi)浮頂儲(chǔ)油罐清洗機(jī)器人定位系統(tǒng)的設(shè)計(jì)
少問(wèn)一句,損失千金
儲(chǔ)油罐內(nèi)底板與底圈壁板腐蝕分析與防護(hù)途徑
二次函數(shù)
第3講 “函數(shù)”復(fù)習(xí)精講
胖胖損失了多少元
二次函數(shù)
函數(shù)備考精講
玉米抽穗前倒伏怎么辦?怎么減少損失?
基于GIS的港口儲(chǔ)油罐溢油風(fēng)險(xiǎn)評(píng)價(jià)系統(tǒng)的建立
高雄县| 菏泽市| 右玉县| 株洲市| 邛崃市| 大新县| 铅山县| 浑源县| 牟定县| 金山区| 东乡族自治县| 潮州市| 五寨县| 辛集市| 平潭县| 江口县| 孙吴县| 泰和县| 康定县| 开原市| 富裕县| 襄汾县| 承德县| 青田县| 新干县| 平湖市| 清河县| 柞水县| 胶南市| 安泽县| 苍溪县| 十堰市| 图们市| 陆良县| 日喀则市| 遵义市| 洛宁县| 南木林县| 廊坊市| 徐汇区| 富锦市|