魏瑀皓,姚永明
(陸軍工程大學(xué)指揮控制工程學(xué)院,南京 210001)
通過衛(wèi)星遙感影像識(shí)別特定目標(biāo)在軍事情報(bào)偵察、水運(yùn)資源合理運(yùn)用、智慧交通管理等領(lǐng)域具有十分廣闊的應(yīng)用前景。隨著深度神經(jīng)網(wǎng)絡(luò)在計(jì)算機(jī)視覺領(lǐng)域的發(fā)展,衛(wèi)星遙感影像的判別解讀也逐漸從人工的方式向智能的方向轉(zhuǎn)變。特別是當(dāng)前衛(wèi)星遙感成像技術(shù)不斷發(fā)展,影像的分辨率不斷提升,地面目標(biāo)呈現(xiàn)了更為豐富和明顯的特征,不斷拓展了其研究與應(yīng)用的空間。然而,更為精準(zhǔn)的成像也為通過智能方法檢測(cè)地面目標(biāo)帶來了挑戰(zhàn),天氣、季節(jié)的變化對(duì)于成像的擾動(dòng)體現(xiàn)得更為明顯。因此,對(duì)于以上模型開展針對(duì)性的魯棒性測(cè)試,評(píng)估其環(huán)境適應(yīng)性,以發(fā)現(xiàn)其潛在缺陷,對(duì)其在實(shí)際中的應(yīng)用轉(zhuǎn)化具有重要意義。
蛻變測(cè)試[1]是一種緩解測(cè)試預(yù)言問題的常用方法,在多類復(fù)雜軟件測(cè)試中己經(jīng)得到成功應(yīng)用。這種方法具有靈活的特點(diǎn),可根據(jù)待測(cè)軟件應(yīng)滿足的各種測(cè)試屬性構(gòu)造相應(yīng)的蛻變關(guān)系,進(jìn)而檢測(cè)軟件中潛在的故障,在預(yù)期輸出難以確定的情形下可對(duì)軟件進(jìn)行有效測(cè)試。近年來,蛻變測(cè)試在深度學(xué)習(xí)模型測(cè)試領(lǐng)域的研究與應(yīng)用越來越廣泛,許多研究人員根據(jù)模型任務(wù)的不同提出了多種蛻變關(guān)系,并有針對(duì)性地檢測(cè)出了模型的缺陷。
為有效評(píng)估衛(wèi)星遙感目標(biāo)檢測(cè)模型的魯棒性這一測(cè)試屬性,根據(jù)蛻變測(cè)試原理,提出了兩種蛻變關(guān)系,并根據(jù)相應(yīng)的蛻變關(guān)系構(gòu)造衍生用例,同時(shí)根據(jù)變異測(cè)試原理提出相應(yīng)的量化指標(biāo)。選取在衛(wèi)星遙感影像數(shù)據(jù)集上訓(xùn)練的通用目標(biāo)檢測(cè)模型YOLOv7以及面向衛(wèi)星遙感影像檢測(cè)的YOLOv7+CNeB 改進(jìn)模型為測(cè)試對(duì)象,構(gòu)造相應(yīng)的測(cè)試集進(jìn)行魯棒性測(cè)試,結(jié)果顯示,該方法可有效發(fā)現(xiàn)模型的部分缺陷,相應(yīng)的量化指標(biāo)在一定程度上體現(xiàn)了模型的魯棒性。
近年來,深度學(xué)習(xí)模型在視覺領(lǐng)域的各類任務(wù)中取得了較好的效果,其應(yīng)用領(lǐng)域也不斷拓展。一方面,F(xiàn)aster R-CNN[2]、YOLO 系列[3]、SSD 系列[4]等通用目標(biāo)檢測(cè)模型不斷發(fā)展,已具備較強(qiáng)的特征學(xué)習(xí)能力,針對(duì)不同的下游任務(wù)構(gòu)建相應(yīng)數(shù)據(jù)集進(jìn)行訓(xùn)練,便可達(dá)到較好效果,例如AI-TOD 航空?qǐng)D像數(shù)據(jù)集[5]、TGRS-HRRSD衛(wèi)星影像數(shù)據(jù)集[6]。另一方面,隨著深度學(xué)習(xí)可解釋性的研究不斷推進(jìn),圍繞不同下游任務(wù)特點(diǎn),修改卷積核、添加注意力機(jī)制等,可以進(jìn)一步提升模型在特定任務(wù)中的表現(xiàn),例如YOLOv5m+CBAM[7]、FCOS[8]、YOLT[9]。
魯棒性是一種深度學(xué)習(xí)模型重要的測(cè)試屬性,其度量深度學(xué)習(xí)模型對(duì)于擾動(dòng)的適應(yīng)性(resilience)[10]。Katz 等[11]重點(diǎn)研究了對(duì)抗魯棒性這一魯棒性重要的子類,并根據(jù)作用范圍的不同,將魯棒性分為針對(duì)所有輸入的全局魯棒性和針對(duì)某一特定輸入的局部魯棒性。Moosavi-Dezfooli 等[12]提出了DeepFool, 計(jì)算“愚弄”深度網(wǎng)絡(luò)的擾動(dòng)(添加噪聲),從而量化其魯棒性。Bastani 等[13]提出了三個(gè)衡量魯棒性的指標(biāo):①點(diǎn)向魯棒性,表明分類器的最小輸入變化不具有魯棒性;②對(duì)抗性頻率(adversarial frequency),表示輸入改變分類器結(jié)果的頻率;③對(duì)抗嚴(yán)重性,表示輸入與其最近的對(duì)抗示例之間的距離。
衡量魯棒性的一種自然方法是檢查在噪聲擾動(dòng)下的模型的正確性表現(xiàn),即一個(gè)健壯的模型應(yīng)該在噪聲擾動(dòng)下仍然能保持性能。對(duì)抗樣本是一種模型魯棒性評(píng)估重要的測(cè)試輸入。這種樣本基于Szegedy 等[14]提出的概念,通過黑盒或白盒的方法人為地構(gòu)造擾動(dòng)并添加到原始樣本中,進(jìn)而測(cè)試模型對(duì)這些對(duì)抗樣本的行為。值得注意的是,近年來,這種人為的蓄意對(duì)抗攻擊往往被歸納于安全性這一范疇,而魯棒性更傾向于模型應(yīng)用場(chǎng)景中的自然擾動(dòng),如自動(dòng)駕駛天氣、光照、白晝等自然條件。因此,針對(duì)不同應(yīng)用場(chǎng)景,構(gòu)建相應(yīng)的魯棒性測(cè)試輸入具有重要意義。
軟件測(cè)試預(yù)言問題是指軟件在測(cè)試過程中需要在給定的輸入下能夠區(qū)分出軟件正確行為和潛在的錯(cuò)誤行為,解決測(cè)試預(yù)言問題的關(guān)鍵是確定與測(cè)試輸入相對(duì)應(yīng)的正確的預(yù)期輸出作為測(cè)試基準(zhǔn)。然而,深度學(xué)習(xí)模型往往存在結(jié)果不確定性,因此,對(duì)其開展測(cè)試面臨著測(cè)試預(yù)言問題。
蛻變測(cè)試是一種解決測(cè)試預(yù)言問題的常用方法,其核心思想在于構(gòu)造蛻變關(guān)系,來描述待測(cè)系統(tǒng)測(cè)試輸入的變化與輸出變化的關(guān)系與規(guī)律。這種關(guān)系,可以基于嚴(yán)密的數(shù)理邏輯以及形式化證明,也可以基于測(cè)試人員的經(jīng)驗(yàn)以及對(duì)于待測(cè)軟件和應(yīng)用場(chǎng)景的理解。近年來,蛻變測(cè)試也被應(yīng)用到機(jī)器學(xué)習(xí)算法和深度學(xué)習(xí)模型的測(cè)試中。在CV 領(lǐng)域,Xie 等[15]提出了一種針對(duì)有監(jiān)督的機(jī)器學(xué)習(xí)分類算法的蛻變測(cè)試方法,并總結(jié)出了十一種蛻變關(guān)系。Dwarakanath等[16]提出了一種針對(duì)圖像分類的DNN 系統(tǒng)的蛻變測(cè)試方法,并總結(jié)出了四種蛻變關(guān)系。
提出的蛻變測(cè)試框架如圖1所示。
圖1 蛻變測(cè)試框架圖
首先提出兩種蛻變關(guān)系。
(1)淡云層遮擋不改變模型輸出結(jié)果。該蛻變關(guān)系模擬成像時(shí),某些區(qū)域受到淡云層遮擋(厚云層遮擋下目標(biāo)信息完全丟失),如圖2所示。
圖2 濃云層(左上紅框區(qū)域)與淡云層(中下黃框區(qū)域)
(2)明暗度變化不改變模型輸出結(jié)果。該蛻變關(guān)系模擬成像時(shí),季節(jié)或時(shí)間導(dǎo)致的光照強(qiáng)度變化,如圖3所示。
圖3 同一地域不同明暗度示例
圖4 原始用例與衍生用例示例
上述兩種蛻變關(guān)系均來源于現(xiàn)實(shí)場(chǎng)景,在實(shí)際應(yīng)用中均有所體現(xiàn)。
而后,隨機(jī)選取原始測(cè)試用例,基于相應(yīng)的蛻變關(guān)系,采用傳統(tǒng)CV 的方法構(gòu)造相應(yīng)的衍生測(cè)試用例集。最后,對(duì)比檢測(cè)模型在原始用例集和衍生用例集的表現(xiàn)差異,評(píng)估模型的魯棒性。
2.2.1 淡云層遮擋
采用兩種方式實(shí)現(xiàn)衛(wèi)星遙感圖像添加淡云層遮擋。第一種方法通過Photoshop 構(gòu)造分層云彩,而后隨機(jī)裁剪云彩圖像,疊加到原始用例上,進(jìn)而實(shí)現(xiàn)淡云層遮擋。第二種方法通過PIL庫實(shí)現(xiàn)。PIL 庫是一個(gè)具有強(qiáng)大圖像處理能力的第三方庫,不僅包含了豐富的像素、色彩操作功能,還可以用于圖像歸檔和批量處理。具體通過PIL編寫相應(yīng)算法,隨機(jī)構(gòu)造不同半徑、不同透明度的云層,實(shí)現(xiàn)相應(yīng)遮擋。增加淡云層算法示例如算法1所示。
2.2.2 明暗度調(diào)節(jié)
在計(jì)算機(jī)視覺中,HSV(Hue,Saturation,Value)通道是一種常用的顏色空間。HSV 模型將顏色的屬性分為色相、飽和度和明度三個(gè)維度,使得對(duì)顏色的描述更加直觀。因此,在生成衍生用例時(shí),主要在HSV 空間中進(jìn)行相關(guān)操作。首先,將圖像從默認(rèn)的RGB 空間轉(zhuǎn)換到HSV 空間,而后直接調(diào)節(jié)明度(Value)通道的值,并將其限制在(0,255)的有效范圍內(nèi),最后合并通道,并轉(zhuǎn)換回到RGB 空間,生成衍生用例。增加亮度算法示例如算法2所示。
由于某些目標(biāo)的邊界框可能會(huì)在每輪預(yù)測(cè)過程中出現(xiàn)較小的漂移現(xiàn)象,通過(bk,lk,ck)三元組來斷言目標(biāo)檢測(cè)輸出的相等性過于嚴(yán)格。因此,采用交并比來度量預(yù)測(cè)結(jié)果與實(shí)際結(jié)果的差異,即在相同的標(biāo)簽下,IoU 大于某一閾值,則認(rèn)為滿足了蛻變關(guān)系與輸出相等性。
本文所提出的蛻變關(guān)系與衍生用例生成過程均建立在魯棒性這一測(cè)試屬性上,因此,受變異測(cè)試思想啟示,引入類似于殺死率的魯棒性評(píng)估指標(biāo),通過計(jì)算滿足蛻變關(guān)系的用例比例來衡量模型的魯棒性。該指標(biāo)s計(jì)算方式如式(1)所示。
以TGRS-HRRSD 遙感影像數(shù)據(jù)集為訓(xùn)練數(shù)據(jù)集。該數(shù)據(jù)集由中國(guó)科學(xué)院西安光學(xué)精密機(jī)械研究所光學(xué)影像分析與學(xué)習(xí)中心制作,共有13 個(gè)類別,包含21761 張獲取自谷歌地球的0.15~1.2 mGSD 影像以及4961 張獲取自百度地圖的0.6~1.2 mGSD 影像,對(duì)40000 多個(gè)目標(biāo)對(duì)象進(jìn)行了標(biāo)注。選取飛機(jī)(airplane)和船舶(ship)兩類目標(biāo)進(jìn)行訓(xùn)練與檢測(cè),其中飛機(jī)目標(biāo)訓(xùn)練集包含2448 張樣本,測(cè)試集包含2451 張樣本;船舶目標(biāo)訓(xùn)練集包含1898 張樣本,測(cè)試集包含1988張樣本。
實(shí)驗(yàn)使用兩個(gè)模型進(jìn)行測(cè)試。以通用目標(biāo)檢測(cè)模型YOLOv7作為基準(zhǔn)模型,以添加了類注意力模塊CNeB 的面向衛(wèi)星遙感小目標(biāo)檢測(cè)的YOLOv7+CNeB 為對(duì)照模型。訓(xùn)練過程中,保持輸入為1280*1280,初始學(xué)習(xí)率為0.01,epoch為100 次,batch size 為16,采用引入動(dòng)量的隨機(jī)梯度下降的優(yōu)化方式,動(dòng)量設(shè)置為0.937,不采用預(yù)訓(xùn)練權(quán)重。
實(shí)驗(yàn)軟件環(huán)境為Ubuntu22.04,Python 3.8,PyTorch 2.0.0,CUDA 12.0,CUDNN 8.1;硬件環(huán)境中,CPU 為Intel Xeon Gold 6126,GPU 為RTX2080Ti。
3.4.1 衍生用例生成
首先生成相應(yīng)的衍生用例。從測(cè)試集中隨機(jī)選取兩類目標(biāo)樣本各200 張,并采用3.2 中的衍生用例生成方法,分別生成淡云層遮擋、亮度變暗的衍生用例。原始用例與衍生用例示例如圖6所示。
3.4.2 魯棒性評(píng)估
進(jìn)而,將原始用例和衍生用例分別輸入兩個(gè)模型,觀察模型輸出是否滿足蛻變關(guān)系,并通過魯棒性指標(biāo)進(jìn)行量化評(píng)估。設(shè)置閾值為0.8,即在同一正確的預(yù)測(cè)標(biāo)簽下,IoU 大于0.8即表示滿足蛻變關(guān)系。測(cè)試結(jié)果見表1。
表1 測(cè)試結(jié)果(s/%)
結(jié)果表明,兩個(gè)模型在大部分的用例上均能保證相同的輸出,尤其是在應(yīng)對(duì)明暗度的變化上,基本都能滿足蛻變關(guān)系,對(duì)該特征變化較為魯棒。而增加云層遮擋后,兩個(gè)模型的表現(xiàn)出了較大的行為差異,表明模型對(duì)該變化魯棒性不佳。這可能由于訓(xùn)練數(shù)據(jù)中很少有被云層遮擋的樣本,導(dǎo)致模型對(duì)此類數(shù)據(jù)泛化能力不佳。值得注意的是,兩個(gè)模型對(duì)于被遮擋的“船舶”目標(biāo)比“飛機(jī)”目標(biāo)差異更小,這表明由于云層的顏色與飛機(jī)顏色相近,遮擋后飛機(jī)的特征更為不明顯,導(dǎo)致效果不佳。但總體來看,面向衛(wèi)星遙感影像目標(biāo)檢測(cè)的改進(jìn)模型,在應(yīng)對(duì)兩種變化的能力總體優(yōu)于基準(zhǔn)模型。這可能由于改進(jìn)后的模型對(duì)小目標(biāo)的細(xì)粒度特征學(xué)習(xí)能力更強(qiáng),使得其在預(yù)測(cè)過程中,仍能挖掘更為豐富的特征以支持其決策。
作為軟件開發(fā)到落地的關(guān)鍵環(huán)節(jié),智能技術(shù)在衛(wèi)星遙感影像目標(biāo)識(shí)別的應(yīng)用不斷深入與拓展,也為相應(yīng)的測(cè)試工作帶來了挑戰(zhàn)。針對(duì)魯棒性這一測(cè)試屬性,面向衛(wèi)星遙感目標(biāo)檢測(cè)模型,提出了一種基于蛻變測(cè)試的魯棒性測(cè)試方法,構(gòu)造了兩種魯棒性蛻變關(guān)系,并提出相應(yīng)指標(biāo)以量化。實(shí)驗(yàn)證明,該方法具有一定的有效性與直觀性。后續(xù),將繼續(xù)圍繞衛(wèi)星影像目標(biāo)檢測(cè)模型其他相關(guān)測(cè)試屬性開展相應(yīng)研究,充分挖掘現(xiàn)實(shí)應(yīng)用場(chǎng)景中可能存在的問題以及潛在的缺陷,不斷完善測(cè)試方法,改善相應(yīng)模型以及提升軟件的質(zhì)量。