摘要:基于深度學(xué)習(xí)的遙感圖像檢測(cè)在農(nóng)業(yè)生產(chǎn)、軍事打擊等領(lǐng)域都有所應(yīng)用。但深度學(xué)習(xí)模型有計(jì)算復(fù)雜度高和參數(shù)量大的問(wèn)題,而實(shí)際部署深度模型的邊緣設(shè)備計(jì)算性能有限。文章以高分辨率遙感圖像作為研究對(duì)象,對(duì)單階段的實(shí)例分割網(wǎng)絡(luò)算法進(jìn)行改進(jìn),在Yolact(You Only Look At CoefficienTs)網(wǎng)絡(luò)的基礎(chǔ)上提出一種融入注意力機(jī)制和可變形卷積的輕量級(jí)實(shí)例分割算法。使用NWPU VHR-10遙感圖像數(shù)據(jù)集對(duì)所提算法進(jìn)行性能評(píng)估,實(shí)驗(yàn)結(jié)果表明,該算法能在保持性能的情況下減少計(jì)算復(fù)雜度和參數(shù)量。
關(guān)鍵詞:深度學(xué)習(xí);Yolact;輕量化;注意力機(jī)制;可變形卷積
中圖分類號(hào):TP39
文獻(xiàn)標(biāo)志碼:A
0 引言
基于深度學(xué)習(xí)的遙感圖像識(shí)別是當(dāng)前一個(gè)熱點(diǎn)研究方向。諸如Yolact及其改進(jìn)的實(shí)例分割網(wǎng)絡(luò)也被廣泛地應(yīng)用在遙感圖像的識(shí)別上[1]。實(shí)例分割目的是將圖片中的目標(biāo)檢測(cè)出來(lái),并對(duì)檢出目標(biāo)進(jìn)行掩膜標(biāo)記。其技術(shù)可廣泛應(yīng)用于汽車自動(dòng)駕駛、機(jī)器人控制、輔助醫(yī)療和遙感影像等領(lǐng)域[2]。在將實(shí)例分割網(wǎng)絡(luò)應(yīng)用在遙感圖像領(lǐng)域時(shí),會(huì)遇到終端設(shè)備性能不足的情況,這就對(duì)模型的計(jì)算復(fù)雜度和參數(shù)量提出了要求。從Zhao等[1]的研究可以知道,雖然Yolact相比于如Mask-RCNN(Mask Region-based Convolutional Neural Network)的二階段網(wǎng)絡(luò)模型更小,計(jì)算復(fù)雜度更低,但是其構(gòu)成網(wǎng)絡(luò)的各個(gè)模塊依然可以進(jìn)一步進(jìn)行降低計(jì)算復(fù)雜度的操作,本文將使用輕量級(jí)網(wǎng)絡(luò)對(duì)Yolact網(wǎng)絡(luò)進(jìn)行進(jìn)一步輕量化,在保證一定精確度的情況下,比Yolact模型的內(nèi)存占用和計(jì)算復(fù)雜度更小。
1 Yolact網(wǎng)絡(luò)的改進(jìn)
Yolact是一種基于單階段目標(biāo)檢測(cè)網(wǎng)絡(luò)的實(shí)例分割網(wǎng)絡(luò),其在單階段目標(biāo)檢測(cè)網(wǎng)絡(luò)上添加了Mask模板生成分支,類似經(jīng)典的兩階段實(shí)例分割模型Mask-RCNN是在兩階段目標(biāo)檢測(cè)模型Faster-RCNN(Faster Region-based Convolutional Neural Network)上添加掩模分支[1]。Yoalct將實(shí)例分割任務(wù)分成了兩個(gè)并行的過(guò)程,首先使用prototype mask分支生成一個(gè)雛形的Mask,然后再預(yù)測(cè)每個(gè)實(shí)例的掩膜系數(shù),最后通過(guò)將原型與掩模系數(shù)線性組合來(lái)生成實(shí)例掩膜。Yoalct不需要使用RPN(Region Proposal Network)生成建議區(qū)域,因此Yolact的速度高于兩階段的實(shí)例分割網(wǎng)絡(luò)[1]。
1.1 特征提取網(wǎng)絡(luò)的改進(jìn)
Yolact使用了ResNet網(wǎng)絡(luò)進(jìn)行特征提取,但是ResNet網(wǎng)絡(luò)使用了大量的普通卷積。為了減少模型的計(jì)算量并增強(qiáng)對(duì)目標(biāo)信息的感知,本文將ResNet網(wǎng)絡(luò)替換為YOLOX(You Only Look Once X)使用的CSPDarkNet。該網(wǎng)絡(luò)大量使用了殘差連接,同時(shí)可以避免過(guò)深的網(wǎng)絡(luò)帶來(lái)的梯度問(wèn)題,并且使用了Focus模塊,具體是在圖片中每隔一個(gè)像素點(diǎn)進(jìn)行取值來(lái)獲得4個(gè)獨(dú)立的特征層,然后將4個(gè)特征層進(jìn)行堆疊,來(lái)實(shí)現(xiàn)沒(méi)有信息丟失的下采樣[3]。同時(shí)CSPDarknet使用SiLU激活函數(shù),其特定為有下界無(wú)上界、平滑并且是非單調(diào),在深層模型上的效果優(yōu)于ReLU,CSPDarknet最后還使用了SPP(Spatial Pyramid Pooling)結(jié)構(gòu),將不同大小的特征圖進(jìn)行統(tǒng)一并融合,提高了網(wǎng)絡(luò)的感受野[3]。
本文在CSPDarkNet的基礎(chǔ)上使用了CBAM (Convolutional Block Attention Module)注意力機(jī)制,在每一個(gè)CSPLayer后添加一個(gè)CBAM模塊。CBAM是一個(gè)輕量的注意力模塊,可以嵌入其他的卷積網(wǎng)絡(luò)而無(wú)需關(guān)心帶來(lái)的計(jì)算量[4]。
如圖1所示,可以看出添加CBAM注意力機(jī)制模塊后的特征圖能夠更好地獲得輸入圖片的目標(biāo)信息,如圖中箭頭所示,添加注意力機(jī)制的網(wǎng)絡(luò)能更精細(xì)地獲得輸入圖片中飛機(jī)目標(biāo)的信息。
1.2 特征金字塔結(jié)構(gòu)
Yolact所使用的特征金字塔網(wǎng)絡(luò)通過(guò)自上而下的路徑,將低分辨率高語(yǔ)義的特征圖和低語(yǔ)義高分辨率的特征圖進(jìn)行融合,以此來(lái)增強(qiáng)特征圖表征能力[1]。但其高層特征圖由于是通過(guò)了多個(gè)網(wǎng)絡(luò)層,其特征信息只包含少部分的淺層信息。NAS-FCOS在FCOS(Fully Convolutional One-Stage Object Detection)搜索特征金字塔網(wǎng)絡(luò)[5]。本文將NAS-FCOS搜索的特征金字塔網(wǎng)絡(luò)替換Yolact的特征金字塔網(wǎng)絡(luò),該結(jié)構(gòu)能更好地融合各層之間的特征信息,可以獲得更好的特征圖。
1.3 Prediction Head分支的改進(jìn)
Prediction Head分支的網(wǎng)絡(luò)是在RetinaNet的基礎(chǔ)上改進(jìn)得到,該Head結(jié)構(gòu)要更淺。并且添加了一個(gè)mask coefficient分支,同時(shí)通過(guò)采用共享卷積網(wǎng)絡(luò)來(lái)提高速度,達(dá)到實(shí)時(shí)分割的目的[1]。本文在Class預(yù)測(cè)分支上添加了DCNv2(Deformable Convolutional Networks v2)的可變形卷積,可變形卷積是指卷積的位置是可變形的,卷積核能自適應(yīng)調(diào)整自身的形狀。Dai 等[6]在卷積核上的采樣點(diǎn)增加了一個(gè)方向參數(shù),卷積核在訓(xùn)練過(guò)程中可以進(jìn)行擴(kuò)展,從而適應(yīng)目標(biāo)形狀的變化。DCNv2在其基礎(chǔ)上引入權(quán)重系數(shù),通過(guò)增加每個(gè)采樣點(diǎn)的權(quán)重,區(qū)分引入的區(qū)域是否為感興趣的區(qū)域[7]。最后改進(jìn)得到的結(jié)構(gòu)如圖2所示。
2 實(shí)驗(yàn)結(jié)果分析
為驗(yàn)證本文算法的有效性,在NWPU VHR-10遙感數(shù)據(jù)集中進(jìn)行實(shí)驗(yàn)[9-11],同時(shí)與基準(zhǔn)算法Yolact進(jìn)行比較。
2.1 實(shí)驗(yàn)環(huán)境與參數(shù)配置介紹
本文算法是基于MMDetection框架實(shí)現(xiàn)[8],操作系統(tǒng)為Ubuntu20.04,64 G內(nèi)存,CPU為Intel i9-10900k,顯卡為24 GB顯存的NVIDIA GeForce RTX 3090。
本算法在NWPU VHR-10數(shù)據(jù)集進(jìn)行訓(xùn)練及其測(cè)試。NWPU VHR-10 數(shù)據(jù)集包含了飛機(jī)、艦船、油罐、棒球場(chǎng)、網(wǎng)球場(chǎng)、籃球場(chǎng)、田徑場(chǎng)、港口、橋梁和汽車共計(jì)10種類別,800張圖片,其中650張包含目標(biāo)的圖片以及150張背景圖片[9-11]。并且Su等[12]將NWPU VHR-10數(shù)據(jù)集按照coco格式進(jìn)行掩膜打標(biāo)。
本文將NWPU VHR-10 數(shù)據(jù)集隨機(jī)按照6∶2∶2的比例將圖像分為訓(xùn)練集、驗(yàn)證集和測(cè)試集,圖片大小為1024x1024。
2.2 評(píng)價(jià)指標(biāo)
本文算法使用平均精度均值(mean Average Precison,mAP)分別對(duì)模型的目標(biāo)檢測(cè)和實(shí)例分割識(shí)別性能測(cè)試指標(biāo),mAP是各類別AP的平均值,AP值就是PR曲線下的與坐標(biāo)軸包圍的面積[13]。其中P是精確率(Precision),R是召回率(Recall)。
精確率 (Precision):
表示模型預(yù)測(cè)的所有目標(biāo)中,預(yù)測(cè)正確的比例。
召回率 (Recall):
表示所有真實(shí)目標(biāo)中,模型預(yù)測(cè)正確的目標(biāo)比例。
其中,TP(True Positive)為IoU (Intersection over Union) >0.5的檢測(cè)目標(biāo)、FP(False Positive)為IoU≤0.5的檢測(cè)目標(biāo)、FN(False Negative)為沒(méi)有檢測(cè)到的GT(Ground Truth)的數(shù)量。IoU的計(jì)算公式如下,A,B分別是兩個(gè)不同的目標(biāo)。
并且使用浮點(diǎn)運(yùn)算次數(shù)(FLoating-point Operations,F(xiàn)LOPs)和參數(shù)量(Params)來(lái)度量模型的時(shí)間復(fù)雜度和空間復(fù)雜度。
2.3 實(shí)驗(yàn)分析
將本文算法在NWPU VHR-10 數(shù)據(jù)集上與Yolact,Mask-RCNN進(jìn)行性能比較,表中的APS,APM ,APL 為coco數(shù)據(jù)集定義的不同尺度目標(biāo)的AP值,其中APS為面積<322的目標(biāo)AP值,APM為面積>322且<962目標(biāo)AP值,APL為面積>962的目標(biāo)AP值。AP50和AP75為IOU閾值為0.50和0.75下的AP值,mAP為所有類別的AP平均值[14]。如表1、表2所示,可以看出Yolact和本文算法的AP值在整體上低于Mask-RCNN,但本文算法在目標(biāo)檢測(cè)上的效果要好于Yolact網(wǎng)絡(luò),本文mAP為0.531,高于Yolact算法的0.466。但實(shí)例分割的mAP要低于Yolact網(wǎng)絡(luò)。
本文也計(jì)算了各個(gè)算法的計(jì)算復(fù)雜度和參數(shù)量,如表3所示??梢园l(fā)現(xiàn),本文算法在計(jì)算復(fù)雜度和參數(shù)量要低于其他算法,計(jì)算復(fù)雜度分別是Mask-RCNN的0.589倍和Yolact的0.806倍,而參數(shù)量分別是Mask-RCNN的0.613倍和Yolact的0.768倍。綜合表1、表2的性能表現(xiàn),本文算法相比于其他的算法能夠在保證低計(jì)算復(fù)雜度和參數(shù)量的情況下,具備一定的檢測(cè)性能。
2.4 消融實(shí)驗(yàn)
為了驗(yàn)證本文算法對(duì)各個(gè)模塊的改進(jìn)效果,進(jìn)行了相關(guān)實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果如表4所示。其中,Backbone表示是否將ResNet替換為本文所構(gòu)造的骨干網(wǎng)絡(luò),F(xiàn)PN表示是否替換為NAS-FCOS搜索得到的特征金字塔模塊,Head表示Head分支是否替換為本文所改進(jìn)的Head分支。
由表4可以看出,使用本文所構(gòu)造的骨干網(wǎng)絡(luò),浮點(diǎn)運(yùn)算數(shù)和參數(shù)量都有所減低,但目標(biāo)檢測(cè)和實(shí)例分割的mAP也隨之減低。而在使用NAS-FCOS搜索得到的特征金字塔模塊后,參數(shù)量少幅度提升,但是目標(biāo)檢測(cè)的mAP提高了0.027,浮點(diǎn)運(yùn)算數(shù)略為減低。最后使用本文構(gòu)建的Head分支后,目標(biāo)檢測(cè)和實(shí)例分割的mAP均有上升。綜上,本文所構(gòu)建的模塊均表現(xiàn)出了一定的作用,本文的骨干網(wǎng)絡(luò)能在大幅減少計(jì)算復(fù)雜度和參數(shù)量情況下,保證目標(biāo)檢測(cè)的性能。本文構(gòu)建Head分支能在少量提升浮點(diǎn)計(jì)算數(shù)和參數(shù)量的情況下增加目標(biāo)檢測(cè)和實(shí)例分割的性能。但是本文算法的實(shí)例分割的mAP相對(duì)于Yolact并沒(méi)有提升,而是有所降低。
3 結(jié)語(yǔ)
本文提出了一種融合注意力機(jī)制與可變形卷積的輕量化Yolact網(wǎng)絡(luò)。模型以融合注意力機(jī)制CBAM的CSPDarkNet作為特征提取網(wǎng)絡(luò),使用NAS-FCOS搜索得到的特征金字塔,以此來(lái)保證模型進(jìn)行輕量化的同時(shí)性能下降不明顯;模型使用融入可變形卷積的Prediction Head分支使得模型檢測(cè)精度進(jìn)一步提高。實(shí)驗(yàn)表明,本文提出的算法在計(jì)算復(fù)雜度和參數(shù)量上均低于基準(zhǔn)網(wǎng)絡(luò)Yolact,并且在目標(biāo)檢測(cè)上的性能高于原Yolact網(wǎng)絡(luò),但在實(shí)例分割上的性能下降了9%。
參考文獻(xiàn)
[1]ZHAO Z, TONG X, SUN Y, et al. Large scale instance segmentation of outdoor environment based on improved Yolact[J]. Concurrency and Computation: Practice and Experience, 2022(28): e7370.
[2]蘇麗,孫雨鑫,苑守正.基于深度學(xué)習(xí)的實(shí)例分割研究綜述[J].智能系統(tǒng)學(xué)報(bào),2021(1):16-31.
[3]GE Z, LIU S, WANG F, et al. Yolox: exceeding yolo series in 2021[EB/OL]. (2021-08-06) [2023-03-07]. https://arxiv.org/abs/2107.08430.
[4]WOO S, PARK J, LEE J Y, et al. Cbam: convolutional block attention module[C]. Berlin: Proceedings of the European conference on computer vision (ECCV), 2018.
[5]WANG N, GAO Y, CHEN H, et al. Nas-fcos: fast neural architecture search for object detection[C]. Piscataway: Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition,2020.
[6]DAI J, QI H, XIONG Y, et al. Deformable convolutional networks[C]. Piscataway: Proceedings of the IEEE International Conference on Computer Vision, 2017.
[7]ZHU X, HU H, LIN S, et al. Deformable convnets v2: more deformable, better results[C]. Piscataway: Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition, 2019.
[8]CHEN K, WANG J, PANG J, et al. MMDetection: open mmlab detection toolbox and benchmark[EB/OL]. (2019-06-17) [2023-03-07]. https://arxiv.org/abs/1906.07155.
[9]CHENG G, HAN J, ZHOU P, et al. Multi-class geospatial object detection and geographic image classification based on collection of part detectors[J]. ISPRS Journal of Photogrammetry and Remote Sensing, 2014(98): 119-132.
[10]CHENG G, HAN J. A survey on object detection in optical remote sensing images[J]. ISPRS Journal of Photogrammetry and Remote Sensing, 2016(117): 11-28.
[11]CHENG G, ZHOU P, HAN J. Learning rotation-invariant convolutional neural networks for object detection in VHR optical remote sensing images[J]. IEEE Transactions on Geoscience and Remote Sensing, 2016(12): 7405-7415.
[12]SU H, WEI S, YAN M, et al. Object detection and instance segmentation in remote sensing imagery based on precise mask R-CNN[C]. Piscataway: IGARSS 2019-2019 IEEE International Geoscience and Remote Sensing Symposium. IEEE, 2019.
[13]涂銘,金智勇.深度學(xué)習(xí)與目標(biāo)檢測(cè):工具、原理與算法[M].北京:機(jī)械工業(yè)出版社,2021.
[14]LIN T Y, MAIRE M, BELONGIE S, et al. Microsoft coco: common objects in context[C]. Berlin: Computer Vision-ECCV 2014: 13th European Conference, Zurich, Switzerland, September 6-12, 2014, Proceedings, Part V 13. Springer International Publishing, 2014.
(編輯 沈 強(qiáng))
Research on remote sensing image detection based on lightweight Yolact
Fang Yuze, Song Yanan, Xu Ronghua*, Dai Ang
(School of Automation, Guangdong University of Technology, Guangzhou 510006, China)
Abstract: Remote sensing image detection based on deep learning has been applied in agricultural production, military attack and other fields. However, the deep learning model has the problems of high computational complexity and large number of parameters, while the actual deployment depth model has limited computational performance of edge devices. Taking high-resolution remote sensing images as the research object, this paper improves the one-stage instance segmentation network algorithm. Based on the Yolact(You Only Look At CoefficienTs) network, a lightweight instance segmentation algorithm is proposed which integrates the attentional mechanism and deformations convolution. The performance of the proposed algorithm is evaluated using the NWPU VHR-10 remote sensing image dataset, and the experimental results show that the algorithm can reduce the computational complexity and the number of parameters while maintaining the performance.
Key words: deep learning; Yolact; lightweight; attention mechanism; deformable convolution