李 巍,戴朝霞,張向東,張 亮,沈沛意
1.西安電子科技大學(xué) 通信工程學(xué)院,西安710126
2.中國(guó)電子科技網(wǎng)絡(luò)信息安全有限公司,成都610041
3.西安電子科技大學(xué) 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,西安710126
衛(wèi)星遙感目標(biāo)檢測(cè)在軍事偵察、船舶管理、災(zāi)害監(jiān)測(cè)、無(wú)人駕駛等領(lǐng)域有著十分重要的應(yīng)用。隨著人工智能技術(shù)的蓬勃發(fā)展,深度學(xué)習(xí)在目標(biāo)檢測(cè)領(lǐng)域不斷突破現(xiàn)有瓶頸,相比于傳統(tǒng)方法,其在圖像的目標(biāo)檢測(cè)、分類(lèi)分割上更加具有性能優(yōu)勢(shì)。深度學(xué)習(xí)技術(shù)所具備的高效通用、靈活易學(xué)性,使其成為衛(wèi)星數(shù)據(jù)處理領(lǐng)域一個(gè)熱門(mén)研究方向。深度學(xué)習(xí)在目標(biāo)檢測(cè)領(lǐng)域可以分為“two-stage detection”和“one-stage detection”兩種檢測(cè)方法,兩者的不同之處在于,前者是一個(gè)從粗到細(xì)的兩階段處理過(guò)程,后者則是一步完成[1]。兩階段檢測(cè)模型主要包括R-CNN[2]、Fast R-CNN[3]、Faster R-CNN[4]、R-FCN[5]等,檢測(cè)過(guò)程的第一階段提供大量候選區(qū)域,第二階段則進(jìn)行具體判定并篩選分?jǐn)?shù)最高的區(qū)域。雖然兩階段方法的檢測(cè)準(zhǔn)確率較高,但是不能應(yīng)用于實(shí)時(shí)檢測(cè)。單階段檢測(cè)模型主要包括YOLOv1[6]、YOLOv2[7]、YOLOv3[8]、SSD[9]等系列方法。單階段檢測(cè)模型擁有更快的速度,可以直接完成端到端的預(yù)測(cè),拋棄了兩階段粗檢測(cè)和精檢測(cè)的過(guò)程,但一定程度上降低了物體檢測(cè)的精度。
在衛(wèi)星影像目標(biāo)檢測(cè)領(lǐng)域中,檢測(cè)算法需要維持檢測(cè)速度和精度之間的平衡。Benjdira等[10]對(duì)一階段檢測(cè)和兩階段檢測(cè)模型在衛(wèi)星影像數(shù)據(jù)集上進(jìn)行了細(xì)致對(duì)比,在精度相當(dāng)?shù)那闆r下,一階段檢測(cè)算法的靈敏度和處理時(shí)間均優(yōu)于兩階段檢測(cè)算法。Li等[11]設(shè)計(jì)了一個(gè)端到端的網(wǎng)絡(luò)用于檢測(cè)像素級(jí)標(biāo)注的衛(wèi)星船舶數(shù)據(jù),可以將不同級(jí)別的特征圖進(jìn)行融合并提取多尺度特征,雖然其可以準(zhǔn)確定位,但是標(biāo)注成本過(guò)高且檢測(cè)速度慢。Adam[12]在YOLOv1上進(jìn)行改進(jìn),解決衛(wèi)星影像的高圖像分辨率問(wèn)題和小目標(biāo)物體問(wèn)題,但無(wú)法解決多尺度問(wèn)題。戴偉聰?shù)萚13]將密集相連模塊加入到Y(jié)OLOv3中去檢測(cè)衛(wèi)星遙感圖像的目標(biāo)物體,提高了目標(biāo)的檢測(cè)精度和召回率。魏瑋等[14]對(duì)YOLOv3的網(wǎng)絡(luò)結(jié)構(gòu)和錨點(diǎn)進(jìn)行改進(jìn),提高了YOLOv3在航拍目標(biāo)檢測(cè)中的準(zhǔn)確性,但是在物體密集的情況下,會(huì)存在預(yù)測(cè)框遮擋問(wèn)題,視覺(jué)效果較差。
針對(duì)于如何精確定位,本文設(shè)計(jì)了基于旋轉(zhuǎn)矩形空間的YOLOv3改進(jìn)網(wǎng)絡(luò)用于衛(wèi)星影像的實(shí)時(shí)檢測(cè),使用旋轉(zhuǎn)矩形框?qū)в薪嵌鹊哪繕?biāo)物體進(jìn)行精確定位。主要有以下幾點(diǎn)改進(jìn):針對(duì)于實(shí)例角度會(huì)隨圖像縮放而改變的現(xiàn)象,提出了角度轉(zhuǎn)換算法,計(jì)算圖像縮放后實(shí)例的角度;提出了兩種旋轉(zhuǎn)框坐標(biāo)用于回歸網(wǎng)絡(luò)的設(shè)計(jì),可以更好地定位帶有角度的物體;添加角度錨點(diǎn)到先驗(yàn)框中,幫助網(wǎng)絡(luò)穩(wěn)定角度的預(yù)測(cè);使用逐邊裁剪算法和Green-Riemann定理計(jì)算旋轉(zhuǎn)矩形的IOU值;提出了基于旋轉(zhuǎn)矩形空間的非極大值抑制算法,可以有效去除多余的旋轉(zhuǎn)預(yù)測(cè)框,使算法的檢測(cè)精度得到較大提升。
網(wǎng)絡(luò)結(jié)構(gòu)如圖1,主要包括預(yù)處理部分和三個(gè)主體子模塊:53層卷積層構(gòu)成基礎(chǔ)骨干網(wǎng)絡(luò)、特征金字塔網(wǎng)絡(luò)、用于提取旋轉(zhuǎn)矩形框的預(yù)測(cè)模塊。
圖1 模型網(wǎng)絡(luò)結(jié)構(gòu)圖Fig.1 Model network structure diagram
預(yù)處理模塊對(duì)輸入的數(shù)據(jù)進(jìn)行調(diào)整及增強(qiáng),使數(shù)據(jù)能夠適應(yīng)當(dāng)前網(wǎng)絡(luò),得到更為精良的模型。主要具有兩個(gè)功能:(1)圖像縮放,因?yàn)楸疚木W(wǎng)絡(luò)結(jié)構(gòu)的輸入大小固定,所以需要將圖像縮放到合適的大小,對(duì)應(yīng)于網(wǎng)絡(luò)結(jié)構(gòu)輸入層的大??;(2)數(shù)據(jù)調(diào)整,圖像中的物體經(jīng)過(guò)圖像縮放后,目標(biāo)物體的角度信息相較于整個(gè)圖像會(huì)發(fā)生變化,需要對(duì)角度進(jìn)行計(jì)算變換。圖2給出了目標(biāo)物體角度變化的示意圖,以及角度坐標(biāo)變換公式要用到的參數(shù)。坐標(biāo)(x1,y1)和(x2,y2)為圖(a)目標(biāo)物體上的兩點(diǎn),物體的角度θ0為兩點(diǎn)直線(xiàn)與x軸正向所形成的夾角,(w0,h0)為圖(a)的寬高。將圖(a)縮放為圖(b),坐標(biāo)(x3,y3)和(x4,y4)為圖(b)目標(biāo)物體上的兩點(diǎn),對(duì)應(yīng)于圖(a)的(x1,y1)和(x2,y2),物體的角度θ1為兩點(diǎn)直線(xiàn)與x軸正向所形成的夾角,(w1,h1)為圖(b)的寬高。圖(b)目標(biāo)物體的角度與圖(a)目標(biāo)物體的角度之間的換算公式為式(1):
圖2 物體角度變化的示意圖Fig.2 Schematic diagram of object angle change
目標(biāo)檢測(cè)任務(wù)首先需要對(duì)輸入的圖形進(jìn)行基礎(chǔ)特征提取工作,針對(duì)如何將圖形分解成基礎(chǔ)特征,再將分解的基礎(chǔ)特征逐漸抽象成更為高級(jí)的語(yǔ)義進(jìn)行概念上表達(dá)這一問(wèn)題,本文采用殘差網(wǎng)絡(luò)DarkNet-53和特征金字塔網(wǎng)絡(luò)相結(jié)合的方式進(jìn)行提取特征。殘差網(wǎng)絡(luò)ResNet在2015年的ImageNet大規(guī)模視覺(jué)識(shí)別競(jìng)賽中取得了圖像分類(lèi)和物體識(shí)別的優(yōu)勝,跳躍式連接這一概念首次被應(yīng)用在深度學(xué)習(xí)中[15]。殘差結(jié)構(gòu)主要解決的是隨網(wǎng)絡(luò)層數(shù)增加帶來(lái)的網(wǎng)絡(luò)退化問(wèn)題。Facebook在2017年CVPR論文中提出了特征金字塔網(wǎng)絡(luò)思想,用于提取特征[16]。衛(wèi)星影像上的目標(biāo)物體比自然圖像具有更大的尺寸比,通過(guò)特征金字塔結(jié)構(gòu)可以在速度上和準(zhǔn)確性上兼顧,并獲得更加魯棒的多維度特征。
本文預(yù)測(cè)模塊將每層特征金字塔網(wǎng)絡(luò)的輸出作為輸入,兩個(gè)1×1的卷積層分別對(duì)輸入進(jìn)行特征提取,得到兩種不同的旋轉(zhuǎn)框坐標(biāo)預(yù)測(cè)以及它們各自的置信度和分類(lèi)預(yù)測(cè),如圖3所示。本文使用雙坐標(biāo)參與網(wǎng)絡(luò)訓(xùn)練可以改善網(wǎng)絡(luò)性能,優(yōu)化目標(biāo)檢測(cè)的結(jié)果,其原理是通過(guò)網(wǎng)絡(luò)結(jié)構(gòu)上的改變將兩種坐標(biāo)信息加入到網(wǎng)絡(luò)回歸中,優(yōu)化最終的目標(biāo)函數(shù)。其中坐標(biāo)表示1(圖4(a))只在網(wǎng)絡(luò)訓(xùn)練的過(guò)程中用于回歸,改善網(wǎng)絡(luò)性能。坐標(biāo)表示2(圖4(b))用于網(wǎng)絡(luò)訓(xùn)練時(shí)的回歸,并在測(cè)試階段輸出最終的結(jié)果。
圖3 預(yù)測(cè)模塊示意圖Fig.3 Schematic diagram of prediction module
圖4 兩種旋轉(zhuǎn)坐標(biāo)示意圖Fig.4 Schematic diagram of two rotating coordinates
本文將角度錨點(diǎn)加入到了RPN網(wǎng)絡(luò)中,不僅在每個(gè)格子中設(shè)置長(zhǎng)寬比例不同的anchor box,而且還在每個(gè)長(zhǎng)寬比上設(shè)置不同的旋轉(zhuǎn)角度,具有不同旋轉(zhuǎn)角度和長(zhǎng)寬比的anchor box可以盡可能地覆蓋圖像上不同角度、不同位置、不同尺度的物體。一些大物體可能會(huì)占據(jù)圖像的中心,本文將最后一層特征圖的大小設(shè)置成奇數(shù),這樣會(huì)有一個(gè)物體位置預(yù)測(cè)占據(jù)圖像中心。因此在本文網(wǎng)絡(luò)結(jié)構(gòu)中,特征金字塔有3層,其特征層大小對(duì)應(yīng)不同大小的RPN網(wǎng)絡(luò)格子,分別為13×13、26×26、52×52,每層的每個(gè)格子有3種不同長(zhǎng)寬比的anchor box以及每個(gè)長(zhǎng)寬比有3種角度的預(yù)設(shè),這樣每個(gè)網(wǎng)格將產(chǎn)生9個(gè)anchor box,這些anchor box將作為神經(jīng)網(wǎng)絡(luò)的候選區(qū)域并預(yù)測(cè)其中是否有物體,同時(shí)調(diào)整預(yù)測(cè)框的位置。圖5為本文加入角度錨點(diǎn)后RPN的示意圖。
圖5 角度錨點(diǎn)示意圖Fig.5 Angle anchor point diagram
目標(biāo)之間的交并比(IOU)計(jì)算是現(xiàn)在主流目標(biāo)檢測(cè)算法中的關(guān)鍵步驟,主要應(yīng)用于后處理階段,是目標(biāo)檢測(cè)算法中測(cè)量指標(biāo)mAP計(jì)算的重要參數(shù)。本文設(shè)計(jì)了一個(gè)簡(jiǎn)單且能夠處理旋轉(zhuǎn)矩形框的IOU算法。將要計(jì)算的兩個(gè)旋轉(zhuǎn)矩形的坐標(biāo)按順時(shí)針排列,然后使用由Sutherland和Hodgman提出的逐邊裁剪算法找到兩個(gè)旋轉(zhuǎn)矩形相交的點(diǎn)[17]。其基本思想是將兩個(gè)多邊形中的一個(gè)當(dāng)作窗口,將多邊形關(guān)于窗口的裁剪分解為多邊形關(guān)于窗口各邊所在直線(xiàn)的裁剪。裁剪算法中的裁剪線(xiàn)由窗口的每條邊及其延長(zhǎng)線(xiàn)構(gòu)成,裁剪線(xiàn)將平面分為可見(jiàn)與不可見(jiàn)兩部分。另一個(gè)多邊形每條邊有兩個(gè)端點(diǎn)s、p,按順時(shí)針順序排列,經(jīng)過(guò)裁剪線(xiàn)裁剪后有四種輸出情況,如圖6所示。圖(a)中s、p端點(diǎn)同位于外側(cè),沒(méi)有輸出;圖(b)中s端點(diǎn)位于內(nèi)側(cè),p端點(diǎn)位于外側(cè),輸出sp與邊界交點(diǎn)I;圖(c)中s、p端點(diǎn)同位于內(nèi)側(cè),輸出p;圖(d)中s端點(diǎn)位于外側(cè),p端點(diǎn)位于內(nèi)側(cè),輸出sp與邊界交點(diǎn)I以及p。
圖6 多邊形與裁剪線(xiàn)的位置關(guān)系Fig.6 Position relationship between polygon and cutting line
圖7 為兩個(gè)旋轉(zhuǎn)矩形使用逐邊裁剪算法進(jìn)行裁剪過(guò)程的示意圖,按照從左到右、從上到下的順序進(jìn)行裁剪。通過(guò)逐邊裁剪算法得到兩個(gè)旋轉(zhuǎn)矩形按順時(shí)針旋轉(zhuǎn)的交點(diǎn),然后對(duì)交點(diǎn)使用Green-Riemann定理簡(jiǎn)單高效地計(jì)算兩個(gè)旋轉(zhuǎn)矩形的交叉面積[18],如式(2)所示:
圖7 逐邊裁剪算法裁剪過(guò)程的示意圖Fig.7 Schematic diagram of Sutherland-Hodgman cutting process
式(2)中A為兩個(gè)旋轉(zhuǎn)矩形的交叉面積,(xi,yi)為兩個(gè)旋轉(zhuǎn)矩形的交點(diǎn),n為兩個(gè)旋轉(zhuǎn)矩形交點(diǎn)的數(shù)量(注:兩個(gè)旋轉(zhuǎn)矩形的交點(diǎn)按照順時(shí)針排序)。
本文的后處理階段主要為非極大值抑制處理,主要針對(duì)衛(wèi)星影像這種帶有角度的目標(biāo)物體。假設(shè)有兩個(gè)同心且形狀相同的旋轉(zhuǎn)矩形框,保持兩個(gè)旋轉(zhuǎn)矩形框的角度差不變,逐漸加大兩者的長(zhǎng)寬比,兩者IOU的計(jì)算值會(huì)隨著長(zhǎng)寬比的變化急劇減小;保持兩個(gè)旋轉(zhuǎn)矩形框的長(zhǎng)寬比不變,逐漸加大兩者的角度差,兩者IOU的計(jì)算值會(huì)隨著角度差的變化急劇減小。圖8展示了上述兩種情況。
圖8 物體的角度和長(zhǎng)寬比與IOU關(guān)系示意圖Fig.8 Schematic diagram of relationship between angle and aspect ratio of object and IOU
圖8 (a)、(b)、(c)中兩個(gè)旋轉(zhuǎn)矩形框之間都具有相同的角度差(角度為45°),但是其長(zhǎng)寬比不同,分別為1∶3、1∶6、1∶9,三個(gè)IOU的計(jì)算值相差巨大,分別為0.308、0.134、0.085。圖8(d)、(e)、(f)中兩個(gè)旋轉(zhuǎn)矩形框長(zhǎng)寬比相同(長(zhǎng)寬比為1∶6),但是其角度差不同,分別為15°、30°、45°,三個(gè)IOU的計(jì)算值同樣相差巨大,分別為0.444、0.200、0.134。如果按照非極大值抑制算法設(shè)定一個(gè)閾值I,兩個(gè)預(yù)測(cè)框之間的交并比計(jì)算超過(guò)這個(gè)閾值I,則過(guò)濾掉預(yù)測(cè)分?jǐn)?shù)小的預(yù)測(cè)框,那么遇到圖8中類(lèi)似兩個(gè)預(yù)測(cè)框中心離得較近且角度差極大或者長(zhǎng)寬比極高的情況就會(huì)變得難以處理,因?yàn)閮蓚€(gè)預(yù)測(cè)框的IOU通常值很小。將閾值下調(diào),一般需要設(shè)置一個(gè)非常小的值才可以將上述情況去除掉,但是閾值設(shè)置小的數(shù)值時(shí)又會(huì)遇到新的問(wèn)題,因?yàn)樾l(wèi)星影像檢測(cè)中往往會(huì)遇到如圖9所示的情況。在圖9中,紅色實(shí)線(xiàn)框?yàn)檎鎸?shí)物體,黑色虛線(xiàn)框?yàn)樯窠?jīng)網(wǎng)絡(luò)預(yù)測(cè)框,淺藍(lán)的顏色區(qū)域?yàn)閮蓚€(gè)黑色虛線(xiàn)框交叉的面積。在閾值較小的情況下圖中一些有效的檢測(cè)框會(huì)被抑制掉。
圖9 衛(wèi)星影像檢測(cè)目標(biāo)預(yù)測(cè)之間的位置關(guān)系Fig.9 Position relationship between satellite image detection target prediction
本文對(duì)傳統(tǒng)的非極大值抑制算法進(jìn)行改進(jìn),通過(guò)在不同的角度差和長(zhǎng)寬比下設(shè)置不同閾值來(lái)抑制多余的預(yù)測(cè)框,保留有效的預(yù)測(cè)框。在兩個(gè)旋轉(zhuǎn)框同心的情況下,保持角度差和長(zhǎng)寬比其中一個(gè)變量,調(diào)整另一個(gè)變量,參考兩個(gè)旋轉(zhuǎn)矩形的交并比值大小來(lái)設(shè)置不同的閾值,并根據(jù)檢測(cè)的效果不斷對(duì)每個(gè)閾值進(jìn)行調(diào)整。
本文使用3個(gè)公開(kāi)的高分辨率可見(jiàn)光衛(wèi)星影像數(shù)據(jù)集來(lái)評(píng)估模型的性能,分別是中國(guó)科學(xué)院自動(dòng)化研究團(tuán)隊(duì)建立的High Resolution Ship Collection 2016(HRSC2016)數(shù)據(jù)集[19]、武大遙感國(guó)家重點(diǎn)實(shí)驗(yàn)室夏桂松和華科電信學(xué)院白翔一起建立的Dota數(shù)據(jù)集[20]和中科院大學(xué)高清航拍目標(biāo)數(shù)據(jù)集合UCAS_AOD。
HRSC2016數(shù)據(jù)集主要由各類(lèi)艦船圖像組成,艦船所在場(chǎng)景有海面和近岸兩種。數(shù)據(jù)集主要來(lái)源于Google Earth。數(shù)據(jù)集的圖像從Mumansk、Everett、NewpotRhode Island、Mayport Naval Base、Norfolk Naval Base、San Diego Naval Base這6個(gè)著名港口收集。數(shù)據(jù)集圖像一般分辨率為0.4~2.0 m。圖像大小在300×300至1 500×900之間,大部分圖像分辨率超過(guò)了1 000×600。數(shù)據(jù)使用xml格式保存圖像的分辨率層級(jí)、港口信息、地理坐標(biāo)、數(shù)據(jù)源、標(biāo)尺信息、圖像采集日期等信息。HRSC2016數(shù)據(jù)集總共有1 061張圖像,通過(guò)科學(xué)的方法將其分為包含436幅圖像和1 207個(gè)實(shí)例樣本的訓(xùn)練集,181幅圖像和541個(gè)實(shí)例樣本的驗(yàn)證集,444幅圖像和1 228個(gè)實(shí)例樣本的測(cè)試集。
HRSC2016數(shù)據(jù)集主要數(shù)據(jù)類(lèi)別為艦船,并將其分為3個(gè)等級(jí)的識(shí)別任務(wù):(1)L1級(jí)任務(wù),艦船檢測(cè)任務(wù),種類(lèi)只有船舶一種,任務(wù)是將目標(biāo)物體從背景中分離。(2)L2級(jí)任務(wù),根據(jù)艦船用途進(jìn)行劃分的識(shí)別任務(wù),將船舶分為4大類(lèi),包括軍艦、潛艇、航母以及商船。(3)L3級(jí)任務(wù),根據(jù)艦船型號(hào)進(jìn)行劃分的識(shí)別任務(wù),在L2任務(wù)的基礎(chǔ)上,將軍艦和航母按照大小型號(hào)進(jìn)行細(xì)致的分類(lèi),比如軍艦具體細(xì)分為阿利伯克驅(qū)逐艦(Arleigh Burke)、佩里級(jí)護(hù)衛(wèi)艦(Perry)、奧斯汀級(jí)船塢登陸艦(Austen)等,航母具體細(xì)分為企業(yè)級(jí)航母(Enterprise)、小鷹級(jí)航母(Kitty Hawk)以及尼米茲級(jí)航母(Nimitz)等,商船則按照用途劃分為運(yùn)輸汽車(chē)船、氣墊船以及游艇等。其位置標(biāo)注信息包括矩形框:左上點(diǎn)(x1,y1)、右下點(diǎn)(x2,y2);帶有角度的矩形框:中心點(diǎn)(xc,yc),寬w,高h(yuǎn),角度θ以及像素級(jí)別的分割掩膜。
Dota數(shù)據(jù)集總共有2 806張衛(wèi)星圖像,分為16個(gè)類(lèi)別,包括飛機(jī)、集裝箱起重機(jī)、船只、游泳池、儲(chǔ)蓄罐、環(huán)形路線(xiàn)、棒球內(nèi)場(chǎng)、網(wǎng)球場(chǎng)、英式足球場(chǎng)、直升飛機(jī)、大型車(chē)輛、橋、籃球場(chǎng)、小型車(chē)輛、田徑場(chǎng)、海港,共計(jì)188 282個(gè)實(shí)例。大部分圖像分辨率約為4 000×4 000,需要進(jìn)行裁剪才能使用神經(jīng)網(wǎng)絡(luò)訓(xùn)練。其數(shù)據(jù)主要來(lái)源為衛(wèi)星JL-1、衛(wèi)星GF-2、中國(guó)資源衛(wèi)星數(shù)據(jù)和應(yīng)用中心以及Google Earth。Dota數(shù)據(jù)集中每個(gè)實(shí)例的位置采用標(biāo)注4個(gè)頂點(diǎn)坐標(biāo)的方式,可以定位不同方向和形狀的四邊形,4個(gè)點(diǎn)按順時(shí)針?lè)较蛞来闻判颍瑯?biāo)注形式為(x1,y1,x2,y2,x3,y3,x4,y4)。同時(shí)每個(gè)實(shí)例還被分配類(lèi)別和是否難以檢測(cè)的標(biāo)簽。數(shù)據(jù)集使用txt格式進(jìn)行保存。在數(shù)據(jù)劃分上,隨機(jī)將原始數(shù)據(jù)集劃分為1/2、1/6、1/3作為訓(xùn)練集、驗(yàn)證集和測(cè)試集。Dota數(shù)據(jù)集的實(shí)例在各種角度方向上表現(xiàn)得非常平衡,通過(guò)數(shù)據(jù)集去觀察實(shí)例物體時(shí)可以進(jìn)一步接近真實(shí)場(chǎng)景,這對(duì)神經(jīng)網(wǎng)絡(luò)模型的學(xué)習(xí)訓(xùn)練有著至關(guān)重要的作用。在最新的Dota數(shù)據(jù)集標(biāo)注還包含10像素以下的小目標(biāo)實(shí)例。
UCAS數(shù)據(jù)集總共有1 510張衛(wèi)星圖像,包含飛機(jī)和汽車(chē)兩個(gè)類(lèi)別,共計(jì)14 596個(gè)實(shí)例。所有圖像分辨率都為1 280×659、1 372×941、1 280×685這三種。數(shù)據(jù)集中每個(gè)實(shí)例的標(biāo)注形式為(x1,y1,x2,y2,x3,y3,x4,y4,θ,x,y,width,height),帶角標(biāo)的(xi,yi)為旋轉(zhuǎn)矩形的4個(gè)頂點(diǎn)坐標(biāo),θ為目標(biāo)的旋轉(zhuǎn)角度,(x,y)為水平邊界框的左上點(diǎn),(width,height)為水平邊界框?qū)捀?。?shù)據(jù)主要來(lái)源為Google Earth。數(shù)據(jù)集使用txt格式進(jìn)行保存。因?yàn)樵瓟?shù)據(jù)沒(méi)有將數(shù)據(jù)集進(jìn)行劃分,本文將按照兩個(gè)類(lèi)別的實(shí)例數(shù)量1/2、1/6、1/3作為訓(xùn)練集、驗(yàn)證集和測(cè)試集。同樣數(shù)據(jù)集實(shí)例的角度分布均衡。
(1)檢測(cè)結(jié)果定量分析
本文通過(guò)在HRSC2016數(shù)據(jù)集、Dota數(shù)據(jù)集和UCAS_AOD數(shù)據(jù)集使用均值平均精度(mean Average Precision,mAP)來(lái)評(píng)估本文算法。表1展示了模型在HRSC2016數(shù)據(jù)集3個(gè)等級(jí)任務(wù)下每個(gè)類(lèi)別的召回率、精確度和平均精度等指標(biāo),gts表示每個(gè)類(lèi)別下測(cè)試數(shù)據(jù)中真實(shí)目標(biāo)的數(shù)量,dets表示每個(gè)類(lèi)別下模型預(yù)測(cè)此類(lèi)目標(biāo)的數(shù)量。模型從L1任務(wù)到L3任務(wù)mAP不斷下降。先從模型預(yù)測(cè)目標(biāo)的數(shù)量分析,模型在3個(gè)任務(wù)下的預(yù)測(cè)總數(shù)量為2 948、3 027、5 942。由于HRSC2016數(shù)據(jù)集上L1、L2、L3是不同等級(jí)的分類(lèi)任務(wù),三者在訓(xùn)練集訓(xùn)練的實(shí)例總數(shù)并沒(méi)有改變,只是單個(gè)種類(lèi)實(shí)例的數(shù)量隨著種類(lèi)的細(xì)分而下降,模型預(yù)測(cè)數(shù)量卻急劇上升,保持了高召回率的同時(shí)卻精確度快速下降,導(dǎo)致在L3任務(wù)上mAP大幅下降。
表1 HRSC2016數(shù)據(jù)集測(cè)試實(shí)驗(yàn)的詳細(xì)結(jié)果Table 1 Detailed results of HRSC2016 data set test experiment
Dota數(shù)據(jù)集的測(cè)試結(jié)果如表2所示。結(jié)果相比于HRSC2016數(shù)據(jù)集測(cè)試的結(jié)果,其檢測(cè)準(zhǔn)確率下降,模型的mAP為38.2%。模型在Dota數(shù)據(jù)集上性能整體下降主要有三點(diǎn)原因:(1)Dota數(shù)據(jù)集具有很多小目標(biāo)物體,10~50像素的目標(biāo)占比57%,還包含10像素以下的小目標(biāo)。(2)Dota數(shù)據(jù)集包含多種實(shí)例密度不同的圖像,特別是有很多小目標(biāo)高度聚集的圖像。(3)Dota訓(xùn)練集各個(gè)類(lèi)別的實(shí)例數(shù)量極端不平衡。
表2 Dota數(shù)據(jù)集測(cè)試實(shí)驗(yàn)的詳細(xì)結(jié)果Table 2 Detailed results of Dota data set test experiment
為了驗(yàn)證單階段網(wǎng)絡(luò)的準(zhǔn)確率會(huì)受到類(lèi)別不平衡的影響,本文還使用類(lèi)別實(shí)例數(shù)量較為平衡的UCAS_AOD數(shù)據(jù)集進(jìn)行對(duì)比驗(yàn)證,表3展示了其詳細(xì)的實(shí)驗(yàn)結(jié)果,模型的mAP為92.1%。結(jié)合表4中3個(gè)訓(xùn)練集每個(gè)類(lèi)別實(shí)例數(shù)量的統(tǒng)計(jì),發(fā)現(xiàn)UCAS_AOD訓(xùn)練集兩個(gè)類(lèi)別的實(shí)例數(shù)量分布平衡,模型檢測(cè)效果最好,HRSC2016訓(xùn)練集L1任務(wù)到L3任務(wù),每個(gè)類(lèi)別實(shí)例數(shù)量差異變大,檢測(cè)效果從高到底,Dota訓(xùn)練集中實(shí)例數(shù)量差異最大,最高類(lèi)別實(shí)例數(shù)量與最低類(lèi)別實(shí)例數(shù)量之比約1 000∶1,模型檢測(cè)效果最差。
表3 UCAS_AOD數(shù)據(jù)集測(cè)試實(shí)驗(yàn)的詳細(xì)結(jié)果Table 3 Detailed results of UCAS_AOD data set test experiment
表4 訓(xùn)練集每個(gè)類(lèi)別的實(shí)例數(shù)量統(tǒng)計(jì)Table 4 Statistics of number of instances of each category in training set
(2)可視化檢測(cè)結(jié)果
圖10 和圖11展示了算法改進(jìn)前后使用非旋轉(zhuǎn)矩形候選框和旋轉(zhuǎn)矩形候選框的檢測(cè)效果。圖10為HRSC2016數(shù)據(jù)集的3個(gè)識(shí)別任務(wù)的檢測(cè)結(jié)果,圖11為Dota數(shù)據(jù)集和UCAS_AOD數(shù)據(jù)集的檢測(cè)結(jié)果。圖10中從左到右3列分別為L(zhǎng)1艦船檢測(cè)任務(wù)、L2艦船種類(lèi)識(shí)別任務(wù)、L3艦船型號(hào)識(shí)別任務(wù)。
圖10 HRSC2016數(shù)據(jù)集檢測(cè)結(jié)果對(duì)比圖Fig.10 Comparison chart of HRSC2016 data set test results
圖11 Dota和UCAS_AOD數(shù)據(jù)集檢測(cè)結(jié)果對(duì)比圖Fig.11 Comparison chart of Dota and UCAS_AOD data set test results
圖10 (a)、(b)和(c)分為兩行,第一行為使用非旋轉(zhuǎn)矩形候選框的檢測(cè)結(jié)果,第二行為使用旋轉(zhuǎn)矩形候選框的檢測(cè)結(jié)果。圖11中左列為使用非旋轉(zhuǎn)矩形候選框的檢測(cè)結(jié)果,右列為使用旋轉(zhuǎn)矩形候選框的檢測(cè)結(jié)果。在目標(biāo)背景簡(jiǎn)單以及目標(biāo)為單個(gè)情況下,旋轉(zhuǎn)矩形框和非旋轉(zhuǎn)矩形框在可視化效果方面較為相同,如圖10(a)和(b)所示。當(dāng)物體相鄰較近或者相互挨著的情況下,如圖10(c)和圖11所示,旋轉(zhuǎn)矩形框標(biāo)定的圖像更為清晰,可以幫助工作人員快速定位目標(biāo)并分析處理數(shù)據(jù)。非旋轉(zhuǎn)矩形框標(biāo)定的圖像會(huì)存在幾點(diǎn)問(wèn)題:大物體預(yù)測(cè)框囊括相鄰小物體預(yù)測(cè)框的問(wèn)題,相鄰物體間預(yù)測(cè)框相互覆蓋和重疊的問(wèn)題,以及一個(gè)預(yù)測(cè)框覆蓋多個(gè)實(shí)例的問(wèn)題,這對(duì)快速發(fā)現(xiàn)目標(biāo)物體的位置信息影響較大,特別是當(dāng)較小物體排布特別緊密時(shí),大量重疊的預(yù)測(cè)矩形框會(huì)遮擋小目標(biāo)物體。綜上所述,在可視化效果方面,基于旋轉(zhuǎn)矩形框檢測(cè)識(shí)別的效果更好,因?yàn)樾D(zhuǎn)矩形框更貼合衛(wèi)星圖像目標(biāo),而非旋轉(zhuǎn)矩形框則在預(yù)測(cè)旋轉(zhuǎn)目標(biāo)的同時(shí)還會(huì)覆蓋多余的區(qū)域,如果遇到目標(biāo)物體密集度非常高且目標(biāo)物體處于多角度的場(chǎng)景時(shí),非旋矩形框標(biāo)定的圖像顯得特別雜亂。
(3)與其他算法的比較
使 用Faster R-CNN[4]、Cascade R-CNN[21]、SSD[9]、YOLOv3[8]以及本文改進(jìn)方法進(jìn)行對(duì)比,結(jié)果如表5所示。
表5 不同算法的檢測(cè)結(jié)果對(duì)比Table 5 Comparison of detection results of different algorithms
由表5、圖10和圖11可見(jiàn),改進(jìn)的YOLOv3算法與原YOLOv3相比,時(shí)間上由于引入旋轉(zhuǎn)檢測(cè)框,導(dǎo)致平均檢測(cè)時(shí)間稍長(zhǎng)0.002 6 s,但是在3個(gè)數(shù)據(jù)集的5個(gè)任務(wù)上平均mAP提高了0.8個(gè)百分點(diǎn),可視化效果更好。兩階段方法Faster R-CNN和Cascade R-CNN檢測(cè)準(zhǔn)確率更高,但是本文改進(jìn)的方法檢測(cè)速度是兩者檢測(cè)速度的10倍、25倍。而SSD算法無(wú)論在檢測(cè)精度還是檢測(cè)速度上都較差。因此,本文改進(jìn)的YOLOv3算法在實(shí)時(shí)性及檢測(cè)精度上達(dá)到了較好的平衡,可視化效果更佳。
本文設(shè)計(jì)了基于旋轉(zhuǎn)矩形空間的單階段衛(wèi)星影像目標(biāo)檢測(cè)模型,使用多種方法對(duì)其進(jìn)行改進(jìn),是本文的主要工作內(nèi)容。使用殘差網(wǎng)絡(luò)結(jié)構(gòu)和特征金字塔網(wǎng)絡(luò)結(jié)構(gòu)相結(jié)合的方式提取特征。針對(duì)實(shí)例角度會(huì)隨著圖像縮放而改變的現(xiàn)象,對(duì)角度標(biāo)簽在輸入網(wǎng)絡(luò)時(shí)進(jìn)行了預(yù)處理,使角度符合縮放后實(shí)例的實(shí)際情況。提出了兩種旋轉(zhuǎn)框坐標(biāo)用于網(wǎng)絡(luò)回歸的設(shè)計(jì),添加角度錨點(diǎn)到先驗(yàn)框中,優(yōu)化了目標(biāo)函數(shù)。使用逐邊裁剪算法和Green-Riemann定理計(jì)算旋轉(zhuǎn)矩形的IOU值,并針對(duì)衛(wèi)星影像提出了基于旋轉(zhuǎn)矩形空間的非極大值抑制算法。
但本文工作還存在不足,單階段檢測(cè)模型如果遇到種類(lèi)實(shí)例數(shù)量不平衡的數(shù)據(jù)集,檢測(cè)準(zhǔn)確率會(huì)降低,接下來(lái)還需要克服這方面的影響。本文基于旋轉(zhuǎn)矩形的非極大值抑制算法,雖然效果比傳統(tǒng)的非極大值抑制算法可視化效果好,但是需要人工按照不同的情況去精細(xì)設(shè)置多個(gè)不同角度和不同長(zhǎng)寬比下的NMS閾值,朝著自適應(yīng)化的方向改進(jìn)算法同樣是值得研究的重點(diǎn)。