劉敏豪,王堃,金睿蛟,盧天,李璋
(1.國防科技大學(xué) 空天科學(xué)學(xué)院,湖南 長沙 410000;2.國防科技大學(xué) 圖像測量與視覺導(dǎo)航湖南省重點實驗室,湖南 長沙 410000)
基于深度學(xué)習(xí)的目標(biāo)檢測技術(shù)在遙感領(lǐng)域已廣泛應(yīng)用[1]。不同于前視圖像中的目標(biāo),俯視的遙感圖像中的目標(biāo)具有方向任意的特點(如圖1 所示),依賴于水平感興趣區(qū)域(horizontal region of interest, HRoI)的通用目標(biāo)深度學(xué)習(xí)檢測方法通常會引起預(yù)測邊界框和真實邊界框之間的錯位[2],在檢測大長寬比(如橋梁、大船等)且具有任意角度目標(biāo)時會包含大量冗余的背景信息。此外,遙感圖像中復(fù)雜背景、目標(biāo)的形態(tài)變化[3]、目標(biāo)的密集分布[4]進一步增加了旋轉(zhuǎn)目標(biāo)檢測的難度,針對遙感圖像的高精度的旋轉(zhuǎn)目標(biāo)檢測依然具有挑戰(zhàn)。
圖1 遙感圖像(第1 行)和自然圖像(第2 行)對比圖Fig.1 Comparison between remote sensing images (the first row) and natural images (the second row)
近年來,在基于深度學(xué)習(xí)的通用目標(biāo)檢測基礎(chǔ)上發(fā)展出了多種旋轉(zhuǎn)目標(biāo)檢測方法。通用目標(biāo)檢測主要回歸目標(biāo)區(qū)域的(x,y,w,h),其中(x,y)表示HRoI 的中心,w和h分別表示HRoI 的長度和寬度,而旋轉(zhuǎn)目標(biāo)檢測額外回歸一個方向值θ,并輸出目標(biāo)區(qū)域旋轉(zhuǎn)框(x,y,w,h,θ)。MA J Q 等學(xué)者設(shè)計了RRPN(rotated region proposal network)[5],通過對特征提取網(wǎng)絡(luò)預(yù)定義的每一個anchor 位置添加一些方向參數(shù),以此生成大量不同尺度、長寬比、方向的anchors,其還提出了RRoIs (rotated region of interest),可以將任意旋轉(zhuǎn)候選區(qū)域投影到特征圖。RRPN方法可以獲得旋轉(zhuǎn)的候選目標(biāo)區(qū)域,提升旋轉(zhuǎn)目標(biāo)的檢測精度,但是這些密集的旋轉(zhuǎn)anchors 消耗了大量的計算和存儲資源[6]。DING J 等人提出了RoI Transformer[3],該方法使用空間變換將水平邊界框表示的候選區(qū)域轉(zhuǎn)換為旋轉(zhuǎn)框,可以大大減少旋轉(zhuǎn)anchor 的數(shù)量并提高了檢測精度。在RoI Transformer 的基礎(chǔ)上,HAN J M 等提出了ReDet 來提取目標(biāo)的旋轉(zhuǎn)不變特征[7],其以旋轉(zhuǎn)等變網(wǎng)絡(luò)為骨干網(wǎng)絡(luò)生成旋轉(zhuǎn)等變特征,可以準(zhǔn)確預(yù)測目標(biāo)方向,降低對方向變化建模的復(fù)雜性,其還提出了RiRoIAlign(rotation-invariant RoI Align)算法,對每個候選區(qū)域提取旋轉(zhuǎn)不變特征,進一步提高了旋轉(zhuǎn)目標(biāo)的檢測精度。RoI Transformer 已成為當(dāng)前最典型的旋轉(zhuǎn)目標(biāo)檢測框架,然而,RoI Transformer 采用的骨干網(wǎng)絡(luò)ResNet[8]會在提取特征時逐漸減小特征圖的空間大小[3],因此它對目標(biāo)的尺度變化非常敏感,對于不同分辨率圖像的目標(biāo)檢測適應(yīng)性不足。此外,RoI Transformer 使用基于SmoothL1 損失的回歸方法來預(yù)測目標(biāo)旋轉(zhuǎn)角度,其無法解決旋轉(zhuǎn)目標(biāo)表示帶來的角度周期性問題,其表現(xiàn)為角度邊界不連續(xù)性[9-10]以及類正方形問題。
基于RoI Transformer 的旋轉(zhuǎn)目標(biāo)檢測常用于雙階段(two-stage)目標(biāo)檢測,其包含生成目標(biāo)候選區(qū)域和目標(biāo)檢測分類兩個步驟。最近有學(xué)者提出了一些單階段(one-stage)旋轉(zhuǎn)目標(biāo)檢測方法,例如R3Det(refined rotation RetinaNet)[11],一種基于RetinaNet 的端到端精細化旋轉(zhuǎn)目標(biāo)檢測器,它采用從粗到精的漸進回歸形式,首先使用水平anchor 以達到更高的召回率,然后在后續(xù)精細化階段使用精細的旋轉(zhuǎn)anchor 以獲得更精確的定位。SASM(shape-adaptive selection and measurement) reppoints[12]方法提出樣本自適應(yīng)選擇和分配策略,根據(jù)目標(biāo)的形狀信息和特征分布動態(tài)選擇樣本。Oriented reppoints[13]方法提出一種高效的質(zhì)量評估和樣本分類方法,還引入了一種空間約束來懲罰離群點,以實現(xiàn)魯棒的自適應(yīng)學(xué)習(xí)。其他典型的單階段方法還包括SSD(single shot multibox detector)、YOLO(you only look once)及其改進方法[14]等。在單階段目標(biāo)檢測中,一種基于高斯分布的回歸損失被提出,用來解決目標(biāo)表示的角度周期性問題,提高了旋轉(zhuǎn)目標(biāo)的檢測精度,其核心步驟是將旋轉(zhuǎn)邊界框轉(zhuǎn)換為二維高斯分布,采用的損失包括GWD(Gaussian Wasserstein distance)[9]、KLD(Kullback -Leibler divergence)[15]和KFIoU(Kalman filtering intersection over union)[16]等。單階段方法一般可以獲得比雙階段方法更高的檢測效率,但其檢測精度也會受到一定的損失[17]。
針對RoI Transformer 對多尺度遙感圖像旋轉(zhuǎn)目標(biāo)檢測精度不足的問題,本文提出了HRD-ROI Transformer (HRNet + KLD ROI Transformer)方法。首先,采用原始的RoI Transformer 檢測框架獲取RRoI,用于魯棒的幾何特征提??;其次,使用HRNet[18]作為骨干網(wǎng)絡(luò),提升模型對多尺度目標(biāo)檢測的適應(yīng)能力;最后,借鑒單階段目標(biāo)檢測的損失函數(shù)設(shè)計思路,以KLD 損失代替RoI Transformer檢測框架中的SmoothL1 損失,解決旋轉(zhuǎn)目標(biāo)表示帶來的角度周期性問題,進一步提高ROI Transformer 框架對旋轉(zhuǎn)目標(biāo)檢測能力。
HRD-ROI Transformer使用RoI Transformer 作為基本框架。其采用HRNet 作為骨干網(wǎng)絡(luò),將高分辨率卷積和低分辨率卷積流并行連接,可在保持高分辨率特征提取的前提下提升模型對多尺度目標(biāo)檢測的適應(yīng)能力。KLD 損失用來代替SmoothL1 損失,解決度目標(biāo)表示周期性帶來的角度邊界不連續(xù)性和類正方形問題。
HRD-ROI Transformer 的整體架構(gòu)如圖2 所示,主要包含4 個部分。
特征提取模塊采用帶有特征金字塔的HRNet提取多層高分辨率特征(見1.2 節(jié))。
RPN 模塊RPN 模塊將任意大小的特征圖作為輸入,生成一系列粗略的HRoIs。
RoI Transformer 模塊RoI Transformer 模塊用于從HRoIs 的特征圖中生成RRoIs。首先,通過RoI Pooling 或RoI Align 對不同大小的HRoIs 進行RoI 提取,得到固定大小(默認為7×7)的RoI 特征,然后將每個HRoI 特征輸入到全連接層中,并對其進行解碼,得到相應(yīng)的粗略RRoIs。
基于KLD 損失的RCNN 模塊類似于RoI Transformer 模塊,通過旋轉(zhuǎn)RoI Pooling、旋轉(zhuǎn)RoI warping 或旋轉(zhuǎn)RoI Align 將不同尺寸的RRoIs 進行旋轉(zhuǎn),RoI 提取得到固定尺寸的RoI 特征,再輸入到全連接層進行分類和更加精細的邊界框回歸,其中以KLD 損失調(diào)整邊界框回歸的結(jié)果,最終輸出結(jié)果。
為了提升檢測網(wǎng)絡(luò)對不同尺度目標(biāo)的適應(yīng)性,本文采用高分辨率網(wǎng)絡(luò)HRNet 代替ResNet 作為骨干網(wǎng)絡(luò)。HRNet 的基本結(jié)構(gòu)如圖3 所示,包含并行多分辨率卷積和重復(fù)多分辨率融合。
圖3 HRNet 結(jié)構(gòu)圖[18]Fig.3 Structure diagram of HRNet[18]
圖3 中conv.unit 表示步長為1 的3×3卷積,strided.conv 表示步長為2 的3×3 卷積,upsample表示雙線性上采樣后進行1×1 卷積。并行多分辨率卷積是指以一個高分辨率子網(wǎng)絡(luò)作為第一階段,并逐步增加一個由高分辨率到低分辨率的子網(wǎng)絡(luò),形成新的階段,并將這些多分辨率子網(wǎng)絡(luò)并行連接起來。重復(fù)多分辨率融合是指在各個并行子網(wǎng)絡(luò)之間引入交換單元,使每個子網(wǎng)絡(luò)能重復(fù)地從其他并行子網(wǎng)絡(luò)接收信息。
該模型的主要特點是整個過程中特征圖始終保持高分辨率,通過在高分辨率特征圖主網(wǎng)絡(luò)中逐漸并行加入低分辨率特征圖子網(wǎng)絡(luò),不斷進行不同網(wǎng)絡(luò)分支之間的信息交互,同時保持強語義信息和精準(zhǔn)位置信息。在RoI Transformer 網(wǎng)絡(luò)的基本結(jié)構(gòu)中,F(xiàn)PN(feature pyramid networks)作為特征提取中重要的一個環(huán)節(jié),是將低分辨率強語義的深層特征和高分辨率弱語義的淺層特征通過一種自上而下的方式進行特征融合,使得不同層次的特征增強[19],而HRNet 并非是FPN 的擴展,它不僅有逐層的特征融合,還有子網(wǎng)絡(luò)之間多次重復(fù)地交換信息,可以持續(xù)保持高分辨率的特征。
盡管RoI Transformer 方法在旋轉(zhuǎn)目標(biāo)檢測中具有良好的效率和精度,但由于其旋轉(zhuǎn)目標(biāo)表示方式帶來的角度周期性,會存在角度邊界不連續(xù)性(圖4)和類正方形問題(圖5),導(dǎo)致模型訓(xùn)練的不穩(wěn)定。此外,其采用的smoothL1 回歸損失對目標(biāo)表示的各個參數(shù)是進行獨立優(yōu)化的,使得損失對任何參數(shù)的欠擬合都很敏感,影響了旋轉(zhuǎn)目標(biāo)的檢測精度。本文引入的KLD 損失,將旋轉(zhuǎn)目標(biāo)表示為高斯分布基礎(chǔ)上,采用聯(lián)合優(yōu)化的策略,可有效解決角度周期性問題,提高目標(biāo)的檢測精度。
圖4 角度邊界不連續(xù)性示意圖Fig.4 Schematic diagram of angle boundary discontinuity
圖5 類正方形問題示意圖Fig.5 Schematic diagram of square-like problem
1.3.1 旋轉(zhuǎn)目標(biāo)表示的角度周期性
圖4(a)是目標(biāo)預(yù)測框的理想表示形式,黃色旋轉(zhuǎn)框和綠色加粗旋轉(zhuǎn)框分別表示目標(biāo)的預(yù)測值和真值,其目標(biāo)框的表示分別為(xp,yp,wp,hp,θp)和(xt,yt,wt,ht,θt),兩者只存在角度和中心點的細微差別。旋轉(zhuǎn)目標(biāo)表示一般有OpenCV 表示方法[20]和長邊定義法[21]。若采用OpenCV 定義表示旋轉(zhuǎn)框(圖4(b)),會存在長短邊交換的問題。由于OpenCV表示方法的定義中θ∈(0,π/2],其銳角的一側(cè)定義為w,因此,圖4(b)中的預(yù)測框角度 θp是短邊與水平軸正方向的夾角,與圖4(a)中的理想形式的 θp相差π/2,且預(yù)測框的長寬與真值相反,這種旋轉(zhuǎn)框定義方式有可能會造成較大的回歸損失,導(dǎo)致模型訓(xùn)練不穩(wěn)定,尤其大長寬比目標(biāo),該問題會更加突出。若采用長邊定義法表示旋轉(zhuǎn)框(圖4(c)),由于定義中長邊與水平軸正方向的夾角θ∈(-π/2,π/2],圖4(c)中與圖4(a)中的預(yù)測角度 θp相差 π,因此θp與θt存在較大差異。
對于類正方形的目標(biāo)(如圖5 中的棒球場,其長寬比接近于1),若預(yù)測框的長邊正好與真值的長邊相反,對于長邊定義法的目標(biāo)表示方式,θp與θt會相差π/2,同樣會導(dǎo)致模型訓(xùn)練不穩(wěn)定。
1.3.2 KLD 損失
為解決ROI Transformer 原有的目標(biāo)表示方式存在角度周期性問題,本文在RoI Transformer 框架中引入KLD 損失。首先,將目標(biāo)表示的旋轉(zhuǎn)框(x,y,w,h,θ)轉(zhuǎn)換成高斯分布N(m,Σ):
式中:R表 示旋轉(zhuǎn)矩陣;Λ表示特征值的對角矩陣。
在式( 1 )中,高斯分布具有以下幾個屬性[10]:
屬性1:Σ(w,h,θ)=Σ(h,w,θ-π/2)
屬性2:Σ(w,h,θ)=Σ(w,h,θ-π)
屬性3:Σ(w,h,θ)≈Σ(w,h,θ-π/2),w≈h
根據(jù)屬性1,旋轉(zhuǎn)目標(biāo)的OpenCV 表示方法造成的長短邊的交換問題得以避免。根據(jù)屬性2 和3,旋轉(zhuǎn)目標(biāo)的長邊定義法造成的類正方形問題也可以得到解決。綜上,角度周期性因高斯分布的三角函數(shù)表示方式得以避免,表現(xiàn)出邊界連續(xù)性。
預(yù)測框和真值對應(yīng)的高斯分布 Np(mp,Σp)和Nt(mt,Σt)的KLD 為
顯然,Dkld(Nt‖Np) 中的每一項都是由部分參數(shù)耦合組成的,所有旋轉(zhuǎn)框參數(shù)(x,y,w,h,θ)都形成了一種鏈?zhǔn)今詈详P(guān)系,使其在訓(xùn)練過程中相互影響,聯(lián)合優(yōu)化和自動調(diào)節(jié)。
最后,為了保證評估測度和回歸損失之間的一致性,采用非線性變換將Dkld(Nt‖Np)轉(zhuǎn)換為近似IoU 損失:
式中:f(·)表示一個非線性函數(shù),對距離Dkld(Nt‖Np)進行變換,如f(D)=或f(D)=ln(D+1);τ是一個超參數(shù),用來調(diào)節(jié)整體損失。
上述分析表明,基于KLD 的損失可以保證旋轉(zhuǎn)框參數(shù)(x,y,w,h,θ)在訓(xùn)練過程中聯(lián)合優(yōu)化,優(yōu)化一個參數(shù),其余參數(shù)可以作為其權(quán)重動態(tài)調(diào)整,并且通過非線性變換使得該損失可以和評估測度保持一致性。相比SmoothL1 損失的參數(shù)獨立優(yōu)化,基于KLD 的損失理論上可以得到更高的目標(biāo)檢測精度。
本文使用帶有旋轉(zhuǎn)目標(biāo)標(biāo)簽的DOTA v1.0[22]和DIOR-R[23]數(shù)據(jù)集進行方法的測試和比較。DOTAv1.0 數(shù)據(jù)集的圖像大小從800×800 像素到20 000×20 000 像素不等,包含各類具有各種方向、尺度和外觀的目標(biāo),是迄今為止最具挑戰(zhàn)性的旋轉(zhuǎn)目標(biāo)檢測數(shù)據(jù)集,共包含2806 張圖片,將188282個目標(biāo)實例分為飛機(plane, PL)、船舶(ship)和儲罐(storage tank, ST)等15類,其中訓(xùn)練集、驗證集和測試集的比例分別為1/2、1/6 和1/3,更多有關(guān)各個類別的統(tǒng)計數(shù)據(jù)可以參考文獻[22]。DIORR 數(shù)據(jù)集是DIOR[24]數(shù)據(jù)集的擴展,與DIOR 數(shù)據(jù)集共享相同的圖像,主要用于旋轉(zhuǎn)目標(biāo)檢測。該數(shù)據(jù)集中有 23463 張圖像和192518 個實例,涵蓋各類典型場景和20 個常見目標(biāo)類。DIOR-R 中的目標(biāo)類別包括飛機(airplane, APL)、機場(airport,APO)、棒球場(baseball field, BF)和籃球場(basketball court, BC)等。
本文的目標(biāo)檢測結(jié)果主要采用精度 (precision,P)、召回率(recall,R)、平均精度均值 (mAP)、檢測速度作為評價標(biāo)準(zhǔn)。精度及召回率公式如下:
式中:Tp是真正例(true positive)數(shù)量;Fp為假正例(false positive) 數(shù)量;FN為假反例 (false negative) 數(shù)量。mAP 是一種綜合了準(zhǔn)確率和召回率的評價標(biāo)準(zhǔn):每個類別都可得到一條PR(precision-recall)曲線。計算曲線下的面積可得到該類別的平均精度AP(average precision),mAP 則為各個類別 AP 的均值,是評判目標(biāo)檢測網(wǎng)絡(luò)整體性能最常用的指標(biāo)之一。
實驗基于i9-10920X 處理器,使用4 個NVIDIA GeForce RTX-2080Ti GPU,內(nèi)存為256 GB,利用mmrotate平臺[25],以ImageNet數(shù)據(jù)集預(yù)訓(xùn)練好的模型進行骨干網(wǎng)絡(luò)參數(shù)初始化。采用隨機梯度下降算法(stochastic gradient descent,SGD)對模型進行訓(xùn)練,momentum 為0.9,權(quán)重衰減為0.0001,初始學(xué)習(xí)率為0.005,共訓(xùn)練12 epochs,在第8 和11 個epoch 時學(xué)習(xí)率衰減為前一階段的1/10[26]。
對于DOTAv1.0 數(shù)據(jù)集,本文將所有訓(xùn)練集和驗證集的原始圖像以824 的步長裁剪出1 024×1024像素大小的圖像塊(其中為避免目標(biāo)在切割圖像時被分割,保留圖像重疊度為200)。對于DIOR-R數(shù)據(jù)集,圖像大小保持800 × 800 像素的原始大小。
訓(xùn)練集的圖像塊通過一組圖像歸一化、隨機翻轉(zhuǎn)、隨機裁剪等數(shù)據(jù)增強預(yù)處理方式之后,輸入到模型中用于訓(xùn)練。在DOTAv1.0 數(shù)據(jù)集的實驗中,使用訓(xùn)練集對模型進行訓(xùn)練,使用驗證集對模型進行評價。對于DIOR-R 數(shù)據(jù)集,則使用訓(xùn)練驗證集進行訓(xùn)練,使用測試集對模型進行評價。
表1 和表2 分別展示了HRD-ROI Transformer與典型的旋轉(zhuǎn)目標(biāo)檢測方法在DOTAv1.0 和DIOR-R數(shù)據(jù)集上的對比。針對旋轉(zhuǎn)目標(biāo)檢測,雙階段算法的檢測精度一般會高于單階段算法[17],因為雙階段算法能在第一階段提取的特定候選區(qū)域的基礎(chǔ)上進行旋轉(zhuǎn)框的精細化回歸,而且相比于單階段算法,正負樣本更加均衡。
表1 不同方法在DOTAv1.0 數(shù)據(jù)集上的表現(xiàn)對比Table 1 Performance comparison of different methods on DOTAv1.0 dataset
表2 不同方法在DIOR-R 數(shù)據(jù)集上的表現(xiàn)對比Table 2 Performance comparison of different methods on DIOR-R dataset
RoI Transformer[3]由于提取了更為精準(zhǔn)RRoI 特征,所以達到了比Rotated Faster RCNN[19]更好的性能。如表1 所示,ReDet[7]在DOTAv1.0 數(shù)據(jù)集上的mAP 相較于RoI Transformer 提高了0.9%,它是一種基于RoI Transformer 的檢測方法,可以提取旋轉(zhuǎn)不變特征。本文所提方法的mAP 達到了72.5%,相較于RoI Transformer 提高了3.7%,相較于ReDet提高了2.8%。
本文用DIOR-R 數(shù)據(jù)集評估HRD-ROI Transformer 模型的適應(yīng)性。根據(jù)DIOR-R 數(shù)據(jù)集的特性,將用于DOTAv1.0 數(shù)據(jù)集模型的的輸入圖像大小調(diào)整為800 × 800 像素,檢測目標(biāo)類別調(diào)整為20,并使用DIOR-R 數(shù)據(jù)集重新訓(xùn)練和測試模型。結(jié)果如表2 所示,本文方法仍然是所有雙階段算法中性能最好的,mAP 達到了64.7%,比RoI Transformer 高4%,比ReDet 高5.1%。SASM reppoints[12]和Oriented reppoints[13]也在DIOR-R 數(shù)據(jù)集上取得了較好的檢測效果,但mAP 仍分別比我們的模型低2.7%和1.2%。
盡管ReDet 采用ReResNet 提取旋轉(zhuǎn)不變特征,但它的高分辨率特征語義信息很弱,對于小目標(biāo)的檢測效果不佳。而本文方法中使用的HRNet 保持了高分辨率表示,保持強語義信息的同時,提高了網(wǎng)絡(luò)對各種尺度目標(biāo)的魯棒性。如表3 所示,DIOR-R數(shù)據(jù)集中的船舶(SH)、車輛(VE)、風(fēng)車(WM)和DOTAv1.0 數(shù)據(jù)集中的小型車輛(SV)、船舶(SH)是典型的小目標(biāo),本文方法的檢測結(jié)果均優(yōu)于ReDet。
表3 DOTAv1.0 和DIOR-R 數(shù)據(jù)集的小目標(biāo)檢測效果Table 3 Detection effects of small object on DOTAv1.0 and DIOR-R datasets
圖6(來自DIOR-R 數(shù)據(jù)集)和圖7(來自DOTAv1.0數(shù)據(jù)集) 主要展示了雙階段檢測方法在典型場景旋轉(zhuǎn)目標(biāo)檢測的結(jié)果。圖6 第1 列是Rotated Faster RCNN 的檢測結(jié)果,第2 列是Oriented RCNN 的檢測結(jié)果,第3 列是RoI Transformer 的檢測結(jié)果,第4 列是ReDet 的檢測結(jié)果,第5 列是本文方法的結(jié)果。圖6 第1 行的機場區(qū)域檢測結(jié)果中,前4 列的方法各有不同程度的誤檢,Rotated Faster RCNN 將航站樓誤檢為立交橋,將飛機誤檢為風(fēng)車;Oriented RCNN[6]、RoI Transformer 和ReDet 均將飛機誤檢為風(fēng)車。本文方法沒有出現(xiàn)這種誤檢,是因為HRNet提取了尺度適應(yīng)性更強的特征,能很好地分辨風(fēng)車和飛機,而且對于第1 行圖中航站樓、第2 行中的橋梁這兩種大長寬比的目標(biāo),KLD 損失規(guī)避了角度周期性帶來的問題,提升了檢測性能。圖7展示了不同檢測方法的漏檢情況,可以看到,KLD 損失對于港口、大型車輛這類大長寬比目標(biāo)效果良好。
圖6 檢測結(jié)果對比(誤檢)Fig.6 Comparison of detection results (false detection)
圖7 檢測結(jié)果對比(漏檢)Fig.7 Comparison of detection results (missed detection)
此外,RoI Transformer 對于大長寬比的目標(biāo)定位不夠精準(zhǔn)。如圖8 所示,大壩是典型的大長寬比的目標(biāo),可以清楚地看到,本文方法在檢測精度方面明顯優(yōu)于其他4 種方法。這證明KLD 損失的參數(shù)聯(lián)合優(yōu)化是有效的,在檢測大長寬比目標(biāo)時表現(xiàn)出良好的性能,這在消融實驗中將進一步討論。
圖8 檢測結(jié)果對比(大長寬比目標(biāo))Fig.8 Comparison of detection results (objects of large aspect ratios)
本文利用消融實驗分別測試KLD 損失函數(shù)和HRNet 對模型性能的影響,并對比了GWD、KLD 和KFIoU 3 種用于旋轉(zhuǎn)目標(biāo)檢測的損失函數(shù)的性能。
模型(a)是RoI Transformer 框架中僅以KLD 損失函數(shù)替換Smooth L1 損失函數(shù),模型(b)是RoI Transformer 框架融合HRNet 特征提取網(wǎng)絡(luò),模型(c)即為本文提出的HRD-ROI Transformer 方法。表4 和表5 展示了消融實驗的結(jié)果。
表4 KLD 和HRNet 在DOTAv1.0 上的有效性對比Table 4 Comparison of effectiveness of KLD and HRNet on DOTAv1.0 dataset
表5 KLD 和HRNet 在DIOR-R 上的有效性對比Table 5 Comparison of effectiveness of KLD and HRNet on DIOR-R dataset
在DOTAv1.0 數(shù)據(jù)集上,RoI Transformer 的mAP達到68.8%,而僅使用KLD 損失的模型(a)達到了70.3%,僅使用HRNet 的模型(b)達到了71.7%,相比于RoI Transformer 分別提升了1.5%和2.9%。這表明這兩個部分對于最終的檢測結(jié)果都有貢獻。結(jié)合KLD 損失和HRNet 的模型(c)的mAP 進一步達到了72.5%。上述結(jié)果充分驗證了基于KLD 損失和HRNet 的有效性。模型(a)、(b)和(c)在DIOR-R數(shù)據(jù)集上的mAP 分別比原始RoI Transformer 高0.8%、3.2%和4%,也驗證了本文模型的適應(yīng)性。
模型(a)和RoI Transformer 的檢測結(jié)果對比如圖9 所示,其中第1 行是RoI Transformer 的檢測結(jié)果,第2 行是模型(a)的檢測結(jié)果。港口、立交橋和橋梁是DIOR-R 數(shù)據(jù)集中典型的大長寬比目標(biāo)。造成檢測精度不高的主要原因之一就是目標(biāo)回歸的中心定位不準(zhǔn),與RoI Transformer 相比,模型(a)對目標(biāo)的定位更加準(zhǔn)確。
圖9 KLD 在DIOR-R 上的有效性Fig.9 Effectiveness of KLD on DIOR-R dataset
GWD、KLD 和KFIoU 3 種損失函數(shù)的性能對比如表6 所示。以RoI Transformer 為基礎(chǔ)框架,采用GWD、KLD 和KFIoU 3 種損失函數(shù)分別訓(xùn)練模型,得到不同模型的mAP??梢钥吹?,不管是在DOTAv1.0 還是在DIOR-R 數(shù)據(jù)集上,KLD 損失的mAP 都明顯高于KFIoU 損失。雖然在DIOR-R 數(shù)據(jù)集上,KLD 損失的mAP 僅比GWD 損失高0.1%,但是綜合所有模型來看,KLD 損失仍舊是三者中性能最優(yōu)的損失函數(shù)。
表6 3 種損失函數(shù)模型的mAP 比較Table 6 Comparison of mAP for three loss function models
表2 所示的DIOR-R 數(shù)據(jù)集的檢測結(jié)果中,機場(APO)和高爾夫球場(GF)的檢測效果欠佳,其真值(ground truth)和檢測結(jié)果的對比如圖10 和圖11 所示。
圖10 機場檢測結(jié)果Fig.10 Detection results of airport
圖11 高爾夫球場檢測結(jié)果Fig.11 Detection results of golf course
圖10 中第1 行的紅色框表示本文方法檢測出的機場區(qū)域,第2 行紅色框表示機場區(qū)域的真值,可以看到,第1 列兩張對比圖中,檢測的機場的定位不精準(zhǔn);第2 列兩張對比圖中,檢測到了真值沒有標(biāo)注的機場區(qū)域;第3 列兩張對比圖中,將道路誤檢為了機場。機場的典型特征一般是跑道,其形狀容易和道路混淆,且機場的邊界特征不清晰,會導(dǎo)致回歸的旋轉(zhuǎn)框不準(zhǔn)確。
圖11 中第1 行的玫紅色框表示本文方法檢測出的高爾夫球場,第2 行玫紅色框表示高爾夫球場的真值。圖11 中第1 列和第2 列的兩張對比圖的農(nóng)田均被誤檢為高爾夫球場,且均有高爾夫球場被漏檢;第3 列兩張對比圖中,3 個高爾夫球場均被漏檢。當(dāng)圖像分辨率較低時,高爾夫球場的紋理特征急劇變?nèi)?,與農(nóng)田等綠色植被相似度過高,檢測過程中很容易混淆。
本文提出了一種基于RoI Transformer 的遙感圖像多尺度旋轉(zhuǎn)目標(biāo)檢測方法HRD-ROI Transformer,該方法采用HRNet 作為骨干網(wǎng)絡(luò),提高了模型對目標(biāo)尺度變化的適應(yīng)性,在小目標(biāo)檢測效果上優(yōu)于現(xiàn)有典型旋轉(zhuǎn)目標(biāo)檢測方法;此外,本文所提方法引入KLD 損失,可對旋轉(zhuǎn)邊界框參數(shù)進行聯(lián)合優(yōu)化,提高了模型對旋轉(zhuǎn)目標(biāo),特別是大長寬比旋轉(zhuǎn)目標(biāo)的檢測精度。在兩個公共數(shù)據(jù)集的的比較試驗證明了HRD-ROI Transformer 可以適應(yīng)目標(biāo)尺度變化,并解決了角度周期性問題,在旋轉(zhuǎn)目標(biāo)的檢測精度方面優(yōu)于當(dāng)前主流的方法。
本文方法對DIOR-R 數(shù)據(jù)集中的機場(APO)和高爾夫球場(GF)檢測效果欠佳,后續(xù)將根據(jù)這類目標(biāo)的特性做數(shù)據(jù)增強,并將SAM(segmenting anything model)嵌入檢測模型中[27],以SAM 分割的高細粒度結(jié)果指導(dǎo)目標(biāo)檢測中低細粒度的邊界框的生成,提升模型對這類目標(biāo)的檢測能力。針對小目標(biāo)的檢測問題,本文方法的檢測精度有所提升,后續(xù)還可以通過引入特征層注意力機制[28],增強模型對小目標(biāo)的關(guān)注,或者采用優(yōu)化的低耦合網(wǎng) 絡(luò)(optimized low coupling network, OLCN)[29]避免小目標(biāo)的丟失。此外,使用的HRNet 包含多個特征融合,可能會造成較大的訓(xùn)練存儲成本,因此,網(wǎng)絡(luò)輕量化也將是未來重要的研究方向。