潘敏婷,方云升,陳寰,王清峰,錢久超,朱肖光,劉佩林
(1.上海交通大學(xué) 類腦智能應(yīng)用技術(shù)研究中心·上?!?01109;2.上海航天控制技術(shù)研究所·上?!?01109)
隨著計(jì)算機(jī)視覺技術(shù)的發(fā)展,目標(biāo)檢測(cè)的應(yīng)用范圍越來越廣泛。在制導(dǎo)武器上搭載基于人工智能的目標(biāo)識(shí)別智能處理器,可以更加快速、便捷地鎖定目標(biāo)。在軍事安全領(lǐng)域,紅外成像尤為重要。相較于可見光成像,紅外成像具有隱蔽性好、抗干擾能力強(qiáng)、可晝夜工作等優(yōu)勢(shì)。因此,在紅外圖像上應(yīng)用目標(biāo)檢測(cè)技術(shù),可以極大地提高識(shí)別系統(tǒng)的準(zhǔn)確率。在人工智能中,神經(jīng)網(wǎng)絡(luò)往往需要大量的數(shù)據(jù)進(jìn)行訓(xùn)練,不充足的數(shù)據(jù)會(huì)導(dǎo)致網(wǎng)絡(luò)的擬合能力較差。面對(duì)由紅外圖像難以采集而造成的數(shù)據(jù)量較少的問題,采用基于生成對(duì)抗網(wǎng)絡(luò)(Generative Adversarial Networks,GAN)的紅外圖像生成方法進(jìn)行紅外數(shù)據(jù)集的擴(kuò)充,可生成復(fù)雜多樣的紅外樣本訓(xùn)練網(wǎng)絡(luò)模型,以提高網(wǎng)絡(luò)的適應(yīng)性和泛化性。
針對(duì)傳統(tǒng)生成式模型中訓(xùn)練過程和數(shù)據(jù)生成過程效率較低的局限,Goodfellow等[1]人在2014年提出了GAN,通過輸入隨機(jī)噪聲來生成圖像,但生成的樣本的類別是不確定的。換言之,無法控制模型生成特定類別的樣本。為了解決這個(gè)問題,Mirza等[2]提出了條件生成式對(duì)抗網(wǎng)絡(luò)(conditional GAN,cGAN)。cGAN在樸素GAN的基礎(chǔ)上將條件變量y與噪音矢量z同時(shí)輸入至生成器G(Generator)中。在判別器D(Discriminator)中,真實(shí)樣本x和條件變量y同時(shí)作為判別函數(shù)的輸入,可有效控制樣本特定類別的生成。
GAN網(wǎng)絡(luò)的輸入,不僅可以是隨機(jī)噪聲,還可以是圖片,可用于處理圖像到圖像的轉(zhuǎn)換任務(wù)[3-5]。例如,由語義標(biāo)簽圖像生成實(shí)景照片,由遙感衛(wèi)星圖生成虛擬地圖等。在此之后,幾乎在所有的圖像到圖像轉(zhuǎn)換中,都能看到生成對(duì)抗網(wǎng)絡(luò)的影子[6-7]。GAN在圖像生成上已經(jīng)具備絕對(duì)的優(yōu)勢(shì),其生成的圖片清晰逼真[8],但目前的研究主要針對(duì)彩色圖像的生成,對(duì)紅外圖像生成的研究還比較少,且紅外數(shù)據(jù)的采集比彩色數(shù)據(jù)困難。在沒有充足紅外樣本的情況下直接訓(xùn)練生成模型,效果會(huì)比較差。鑒于有限的紅外圖片和充足的彩色圖片,本文通過改進(jìn)生成對(duì)抗網(wǎng)絡(luò),對(duì)鑒別器采用配對(duì)輸入的方式,學(xué)習(xí)點(diǎn)對(duì)點(diǎn)紅外映射進(jìn)行風(fēng)格遷移訓(xùn)練,將彩色圖片轉(zhuǎn)換為紅外圖片擴(kuò)充了紅外數(shù)據(jù)。使用L1損失函數(shù)增加了生成圖片的清晰度,并在網(wǎng)絡(luò)模型中加入了跳躍連接方式,增加了底層信息的輸入,增強(qiáng)了網(wǎng)絡(luò)的生成能力。此外,本文還制作了一個(gè)街道數(shù)據(jù)集。應(yīng)用配對(duì)的紅外圖和彩色圖進(jìn)行訓(xùn)練,可以有效地學(xué)習(xí)兩個(gè)不同域之間的轉(zhuǎn)換關(guān)系,由此生成的紅外圖片更加逼真可靠。
GAN是一種生成模型,可以通過學(xué)習(xí)有標(biāo)簽樣本的數(shù)據(jù)分布來生成類似樣本,從而達(dá)到以假亂真的效果。GAN網(wǎng)絡(luò)主要由兩部分組成,即生成器G和鑒別器D。生成器G以隨機(jī)噪聲z作為輸入,盡可能輸出逼近真實(shí)分布的圖片,使鑒別器D不能判別該圖片是真實(shí)的圖片,還是生成的圖片。而鑒別器D的輸入為真實(shí)的圖片和生成的圖片,可用來判別圖片是否為真實(shí)圖片,它的目標(biāo)是盡可能地將生成器G生成的圖片識(shí)別出來。因此,生成器G和鑒別器D構(gòu)成了一個(gè)動(dòng)態(tài)的博弈過程,其網(wǎng)絡(luò)訓(xùn)練方式如圖1所示。
圖1 GAN網(wǎng)絡(luò)示意圖Fig.1 Schematic diagram of GAN
該網(wǎng)絡(luò)的優(yōu)化函數(shù)為
Ez~Pz(z)[log(1-D(G(z)))]
(1)
式中,L(D,G)為損失值,E表示數(shù)學(xué)期望,x為原始數(shù)據(jù),Pdata(x)為真實(shí)的數(shù)據(jù)分布,Pz(z)為先驗(yàn)分布。對(duì)于鑒別器D而言,這是一個(gè)二分類問題,訓(xùn)練D最大限度地將正確的標(biāo)簽分配給真實(shí)樣本和來自G的樣本。對(duì)于生成器G而言,為了盡可能地欺騙D,其需要最大化地生成樣本的判別概率D(G(z)),即最小化log(1-D(G(z)))。在實(shí)際訓(xùn)練時(shí),生成器G和鑒別器D交替訓(xùn)練,即先訓(xùn)練D,然后訓(xùn)練G,不斷往復(fù),直至最終兩者達(dá)到納什均衡。
卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Networks, CNN)目前已成為解決各種圖像預(yù)測(cè)問題的主力,其通過不斷學(xué)習(xí)使損失函數(shù)最小化,但需要手動(dòng)設(shè)計(jì)有效的損失函數(shù)。如果損失函數(shù)的設(shè)計(jì)不合理,盲目地要求CNN網(wǎng)絡(luò)最小化生成圖像和真實(shí)圖像之間的歐氏距離,那么將會(huì)導(dǎo)致模糊的結(jié)果。這是由于歐氏距離是將所有輸出進(jìn)行平均的結(jié)果,如果將之最小化,將無法輸出清晰和真實(shí)的圖像。GAN網(wǎng)絡(luò)可有效地解決這一問題。GAN網(wǎng)絡(luò)可自動(dòng)學(xué)習(xí)一個(gè)適合的損失函數(shù),以區(qū)分真實(shí)樣本和生成樣本。模糊的圖像由于過于虛假而易被識(shí)別出來,只有生成的圖片較為清晰時(shí),才可讓鑒別器D無法識(shí)別。
由于各種環(huán)境和設(shè)備的限制,采集的紅外數(shù)據(jù)十分有限。若直接使用基本的GAN網(wǎng)絡(luò)對(duì)該數(shù)據(jù)集進(jìn)行擴(kuò)充,將無法生成清晰逼真的圖片。由于彩色圖像易于拍攝,且可以從網(wǎng)上收集,可以對(duì)GAN網(wǎng)絡(luò)進(jìn)行相應(yīng)的改進(jìn),以實(shí)現(xiàn)彩色圖像到紅外圖像的轉(zhuǎn)換,這樣便可解決紅外圖像不足的問題。
改進(jìn)后的GAN網(wǎng)絡(luò)如圖2所示,其可以實(shí)現(xiàn)圖像x到圖像y的轉(zhuǎn)換。網(wǎng)絡(luò)的輸入不僅僅是隨機(jī)噪聲z,而是隨機(jī)噪聲z和圖片x。此時(shí),生成器G的映射過程為G:{x,z}→y,而鑒別器D需要鑒別兩組數(shù)據(jù),即{x,G(x,z)}和{x,y}。
圖2 改進(jìn)后的GAN網(wǎng)絡(luò)示意圖Fig.2 Schematic diagram of the improved GAN
改進(jìn)后GAN的損失函數(shù)為
Ez~Pz(z)[log(1-D(G(z|y)))]
(2)
生成器G不斷地嘗試最小化該損失函數(shù),而D則通過不斷的迭代最大化這個(gè)損失函數(shù)。生成器G不僅要欺騙鑒別器D,還要生成盡可能真實(shí)的圖片,增加圖片的清晰度。因此,可以給生成器G增加一個(gè)L1范數(shù)損失函數(shù)(L1 loss),即
(3)
式中,E同樣表示數(shù)學(xué)期望。將式(2)和式(3)結(jié)合,最終的損失函數(shù)為
(4)
式中,α為平衡因子。
2.1.1 生成器的網(wǎng)絡(luò)結(jié)構(gòu)
圖像轉(zhuǎn)換問題的實(shí)質(zhì)是將一個(gè)高分辨率的輸入特征圖映射到另一個(gè)高分辨率的輸出特征圖。雖然輸入和輸出特征圖在顯示上不一樣,但是它們?cè)诘讓咏Y(jié)構(gòu)上卻是一致的[9]。因此,可以將輸入網(wǎng)絡(luò)和輸出網(wǎng)絡(luò)的結(jié)構(gòu)設(shè)計(jì)為對(duì)齊的形式,如圖3所示。
圖3 生成器的網(wǎng)絡(luò)結(jié)構(gòu)Fig.3 The network structure of the generator
在網(wǎng)絡(luò)中,輸入圖像經(jīng)過幾次卷積和下采樣過程,在到達(dá)瓶頸層(bottleneck)后進(jìn)行逆轉(zhuǎn),即執(zhí)行反卷積和上采樣操作。對(duì)于很多圖像轉(zhuǎn)換問題,輸入圖像和輸出圖像之間存在許多可以共享的底層信息,而這些底層信息對(duì)于圖像的生成有著重要的意義,因此可以在輸入結(jié)構(gòu)和輸出結(jié)構(gòu)之間添加一些跳躍連接,進(jìn)行底層信息的傳遞。具體地,每根跳線將第i層和第n-i層的特征通道連接在一起。其中,n為網(wǎng)絡(luò)的總層數(shù)。
2.1.2 鑒別器的網(wǎng)絡(luò)結(jié)構(gòu)
L1范數(shù)損失函數(shù)和L2范數(shù)損失函數(shù)[10]在圖像生成上會(huì)存在模糊的問題。盡管這些損失函數(shù)不能促進(jìn)網(wǎng)絡(luò)生成高頻清晰的圖像,但在許多情況下,它們可以捕捉到低頻信息。因此,不需要再設(shè)計(jì)一個(gè)全新的結(jié)構(gòu)來提高低頻信息的準(zhǔn)確率。這樣的方式,使得GAN網(wǎng)絡(luò)的鑒別器只需對(duì)高頻結(jié)構(gòu)進(jìn)行建模,而低頻信息的建模則需依靠L1損失函數(shù)。
設(shè)計(jì)鑒別器D關(guān)注局部圖像塊,只對(duì)塊規(guī)模的結(jié)構(gòu)進(jìn)行懲罰,即將圖片劃分為N×N的圖像塊。鑒別器D對(duì)每個(gè)圖像塊進(jìn)行分類,以區(qū)分該圖像塊為真或是假。在整張圖片上,使用滑動(dòng)窗口運(yùn)行該鑒別器,最后以平均值作為鑒別器D的最終輸出。
該網(wǎng)絡(luò)需要一一配對(duì)的彩色圖像和紅外圖像進(jìn)行訓(xùn)練。根據(jù)FLIR公司使用紅外攝像頭拍攝的街道圖片,制作出了彩色和紅外配對(duì)的數(shù)據(jù)集。該數(shù)據(jù)集分別由超過8000張的彩色圖片和紅外圖片組成,彩色圖片的分辨率為1800×1600,紅外圖片的分辨率為640×512,且包含了白天和黑夜的情況。圖片如圖4所示,左邊為紅外圖片,右邊為彩色圖片,左右兩幅圖拍攝的場(chǎng)景是完全一致的。
圖4 數(shù)據(jù)集中的圖片F(xiàn)ig.4 Images in the dataset
為了優(yōu)化網(wǎng)絡(luò),使用標(biāo)準(zhǔn)的訓(xùn)練方法,交替進(jìn)行生成器G和鑒別器D的訓(xùn)練,即先訓(xùn)練鑒別器D,然后訓(xùn)練生成器G,不斷往復(fù)。當(dāng)訓(xùn)練生成器時(shí),對(duì)于最小化log(1-D(x,G(x,z)))的問題,可以將問題轉(zhuǎn)變?yōu)樽畲蠡痩ogD(x,G(x,z)),這樣可以使網(wǎng)絡(luò)更好地收斂。在訓(xùn)練過程中,可使用minibatch SGD和Adam優(yōu)化器[11]。其中,學(xué)習(xí)率設(shè)置為0.0002。
在測(cè)試階段,使用與訓(xùn)練階段相同的方式來運(yùn)行生成器G。另外,與常規(guī)的方法不同,在測(cè)試時(shí)使用了丟棄技術(shù)[12](dropout)和批量正則化[13-14]方式,而這一過程一般是在訓(xùn)練階段使用。當(dāng)設(shè)置批處理大小為1時(shí),這種批處理規(guī)范化的方法被稱為“實(shí)例規(guī)范化”,它已被證明對(duì)于圖像生成任務(wù)而言是有效的。在實(shí)驗(yàn)中,根據(jù)實(shí)際情況,可使用1到10之間的批次大小。
實(shí)驗(yàn)在Utunbu16.04、Nvidia GTX1080ti操作系統(tǒng)下運(yùn)行,基于Pytorch框架進(jìn)行了網(wǎng)絡(luò)構(gòu)建。在整個(gè)訓(xùn)練過程中,生成器G的目標(biāo)是生成可以以假亂真的圖像G(z),讓鑒別器D無法區(qū)分,即D(G(z))=0.5。此時(shí),可得到一個(gè)生成器G,用來生成圖像數(shù)據(jù)集。經(jīng)過60次迭代,損失函數(shù)基本收斂,實(shí)驗(yàn)結(jié)果如圖5所示。
(a)彩色圖x
(b)真實(shí)的紅外圖y
(c)生成的紅外圖G(x)
在圖5的實(shí)驗(yàn)結(jié)果中,第一列為需要轉(zhuǎn)換的原始彩色圖片,第二列為真實(shí)拍攝的紅外圖片,第三列為網(wǎng)絡(luò)生成的紅外圖片。真實(shí)紅外圖與生成紅外圖的對(duì)比結(jié)果,表明改進(jìn)的GAN網(wǎng)絡(luò)可以有效地進(jìn)行圖片風(fēng)格的轉(zhuǎn)換,將彩色圖片轉(zhuǎn)變?yōu)楸普娴募t外圖片以用于數(shù)據(jù)集的擴(kuò)充。由于圖片的分辨率較大,圖中細(xì)小區(qū)域的轉(zhuǎn)換存在一定的誤差,網(wǎng)絡(luò)模型在進(jìn)行特征提取時(shí),在經(jīng)過卷積池化操作后,會(huì)遺失掉一些細(xì)小特征。使用跳躍連接的方式可以保留大部分細(xì)節(jié),因此在進(jìn)行紅外圖像生成時(shí),對(duì)比真實(shí)的紅外圖片,圖片雖然存在一些細(xì)節(jié)差異,但整體上相似度極高。
在生成的紅外圖片上進(jìn)行車輛檢測(cè),檢測(cè)結(jié)果如圖6所示。圖中第二列圖片為第一列圖片經(jīng)過轉(zhuǎn)換后生成的紅外圖片,在生成的紅外圖片上可以較準(zhǔn)確地檢測(cè)出車輛目標(biāo)。在黑夜環(huán)境中,由于光線的問題,使用普通相機(jī)拍攝的彩色圖片很難對(duì)車輛進(jìn)行檢測(cè)。本文提出的紅外圖像生成技術(shù)可有效地解決這一問題,將彩色圖像轉(zhuǎn)換為紅外圖像,然后在紅外圖像上完成對(duì)車輛目標(biāo)的檢測(cè),這在很大程度上提高了目標(biāo)檢測(cè)的精度。
(a)原彩色圖片
(b)生成的紅外圖片
將人工智能應(yīng)用于制導(dǎo)武器是時(shí)代發(fā)展的趨勢(shì),人工智能可有效提高作戰(zhàn)武器對(duì)復(fù)雜空間任務(wù)的自感知、自適應(yīng)能力。本文研究了基于GAN網(wǎng)絡(luò)的紅外圖像生成技術(shù)。紅外圖像采集的局限性,易造成紅外圖片不足,而充足的數(shù)據(jù)量是訓(xùn)練神經(jīng)網(wǎng)絡(luò)的重要條件。通過對(duì)GAN網(wǎng)絡(luò)進(jìn)行改進(jìn),制作配對(duì)的街道數(shù)據(jù)集以進(jìn)行網(wǎng)絡(luò)模型訓(xùn)練,實(shí)現(xiàn)彩色圖片到紅外圖片的轉(zhuǎn)變,以此擴(kuò)充紅外數(shù)據(jù)集。模型搭建和測(cè)試,驗(yàn)證了該算法可有效地生成清晰和高質(zhì)量的紅外圖像。