鄒鵬輝
摘 要:圖像的分辨率在圖像中是一項(xiàng)及其重要的參數(shù),用于蘊(yùn)含圖像的重要信息。而實(shí)際上,可能受多方面環(huán)境因素的影響,高分辨率的圖像往往不容易采集到。為解決低分辨率圖像給采集數(shù)據(jù)帶來(lái)的種種問(wèn)題與影響,人們開(kāi)始研究超分辨率技術(shù)。超分辨率技術(shù)是指將拍攝到的低清分辨率的圖像使用重建的技術(shù)來(lái)得到更高清分辨率的圖像,從而達(dá)到獲取圖像上更多信息的效果,主要的應(yīng)用場(chǎng)景有醫(yī)學(xué)影像儀器、監(jiān)控設(shè)備以及衛(wèi)星圖像等。普通意義上的圖像超分辨率重建一般是將圖像直接放大或者進(jìn)行縮小,對(duì)圖像的實(shí)際超分辨率重建效果不是很明顯。為解決傳統(tǒng)超分辨率重建對(duì)圖像質(zhì)量改善不大的情況,引入基于神經(jīng)網(wǎng)絡(luò)的SRGAN。SRGAN使用生成式對(duì)抗網(wǎng)絡(luò)架構(gòu)(GAN),[1]以?xún)?yōu)化損失函數(shù)為目標(biāo),生成圖像中的某些細(xì)節(jié)。本文將描述SRGAN在應(yīng)用中的具體實(shí)現(xiàn)過(guò)程,通過(guò)分析模型中的損失函數(shù)以及模型的訓(xùn)練過(guò)程,對(duì)其重建效果以及產(chǎn)生的問(wèn)題進(jìn)行深入探討。
關(guān)鍵詞:超分辨率圖像重建;深度學(xué)習(xí);神經(jīng)網(wǎng)絡(luò)
1 緒論
基于SRGAN的超分辨率重建的損失函數(shù)有兩個(gè)方面構(gòu)成,分別是對(duì)抗損失以及內(nèi)容損失。所謂對(duì)抗損失,是將需要超分辨率重建的圖像映射至高維空間,再借用判別網(wǎng)絡(luò)去判別超分辨率重建前以及重建后的圖像。所謂內(nèi)容損失,則是有關(guān)圖像內(nèi)容的相似性,將卷積神經(jīng)網(wǎng)絡(luò)(CNN)提取出來(lái)的圖像特征,通過(guò)對(duì)比生成圖片經(jīng)過(guò)卷積神經(jīng)網(wǎng)絡(luò)的圖像特征和目標(biāo)圖片經(jīng)過(guò)卷積神經(jīng)網(wǎng)絡(luò)的圖像特征的差別,以及優(yōu)化兩者之間的差別,使得生成圖像與目標(biāo)圖像更為接近與相似。其中,生成式對(duì)抗網(wǎng)絡(luò)的主要作用是添加一個(gè)判別器以及兩個(gè)損失(對(duì)抗損失和內(nèi)容損失),用一種交替訓(xùn)練的方法來(lái)訓(xùn)練兩個(gè)網(wǎng)絡(luò)。SRGAN利用生成式對(duì)抗網(wǎng)絡(luò)中的生成網(wǎng)絡(luò)通過(guò)低分辨率圖像生成高分辨率圖像,而生成式對(duì)抗網(wǎng)絡(luò)中的判別網(wǎng)絡(luò)則用于判斷獲取的圖像是由生成式對(duì)抗網(wǎng)絡(luò)中的生成網(wǎng)絡(luò)偽造的還是為原圖像。如果生成式對(duì)抗網(wǎng)絡(luò)中的生成網(wǎng)絡(luò)所生成的圖像,判別網(wǎng)絡(luò)無(wú)法檢測(cè)出,則能得到超分辨率圖像。借用對(duì)抗損失以及內(nèi)容損失來(lái)提升以及恢復(fù)圖像的分辨率。
2 方法
2.1 分析
訓(xùn)練SRGAN的生成網(wǎng)絡(luò)的主要步驟如下,先輸入一張低分辨率的照片,經(jīng)過(guò)卷積得到其主要特征,再使用激活函數(shù)(ReLU),進(jìn)而再次卷積提取其主要特質(zhì),再進(jìn)入殘差網(wǎng)絡(luò)模型,多個(gè)殘差模塊中每個(gè)殘差模塊都包括了兩個(gè)卷積層(conv),之后又接入批量歸一化層,殘差模塊中再接入ReLU作為激活函數(shù),通過(guò)殘差模塊之后再進(jìn)行兩次池化,通過(guò)亞像素卷積層來(lái)增加尺寸。
而對(duì)SRGAN的判別網(wǎng)絡(luò)模型而言,它的主要步驟有如下,先輸入一張待檢測(cè)的圖片,而后通過(guò)卷積層以及特殊的激活函數(shù),最后經(jīng)過(guò)Sigmoid函數(shù)來(lái)判斷輸入圖像為原圖像還是生成圖像。
2.2 損失函數(shù)
前面提到,模型的損失函數(shù)主要有對(duì)抗損失以及內(nèi)容損失。下面將詳細(xì)介紹對(duì)抗損失以及內(nèi)容損失的具體內(nèi)容。
對(duì)抗損失,對(duì)抗損失的計(jì)算公式如下:
公式中DθD代表的是生成圖像屬于真正的高分辨率圖像的概率,而 代表的是重建生成的高清分辨率圖像。最后計(jì)算得出對(duì)抗損失。
內(nèi)容損失,在試驗(yàn)中我們使用的內(nèi)容損失函數(shù)包括兩個(gè)方面,一個(gè)是MSEloss,另一個(gè)則是VGGloss。前者表示的是像素空間的均方誤差,后者則是以ReLU激活函數(shù)為基礎(chǔ)的VGG loss,MSEloss的計(jì)算公式如下:
VGGloss的計(jì)算公式如下:
3 結(jié)論
在SRGAN技術(shù)的模型中,由于生成式對(duì)抗網(wǎng)絡(luò)在實(shí)際應(yīng)用中仍然存在一定的問(wèn)題,在訓(xùn)練過(guò)程中收斂性不是非常好,并且還可能伴隨著模式坍塌的問(wèn)題存在,導(dǎo)致訓(xùn)練結(jié)果不是很好,進(jìn)而影響SRGAN。我們?cè)谘芯恐袑?duì)SRGAN進(jìn)行了一定的改良,除去批量歸一化層,其主要目的是減少計(jì)算的復(fù)雜度從而增加計(jì)算機(jī)CPU及GPU的運(yùn)算性能。在我們進(jìn)行的研究性實(shí)驗(yàn)中,按照上述的模型(SRGAN 生成網(wǎng)絡(luò)模型,SRGAN 判別網(wǎng)絡(luò)模型)的步驟進(jìn)行相關(guān)的處理。先準(zhǔn)備好大量的未處理的圖像集,大概會(huì)在一百?gòu)堊笥?,將一百?gòu)垐D片一次輸入至生成器,經(jīng)過(guò)一系列的卷積、池化等處理之后,再投入到判別器中進(jìn)行判別,在一系列操作之后,得到了生成的高分辨率的圖像。將進(jìn)行比照原圖像與生成的高分辨率的圖像,發(fā)現(xiàn)生成的高分辨率圖像在提高分辨率的基礎(chǔ)上還保持了原圖像的真實(shí)性。
參考文獻(xiàn):
[1]Goodfellow I J,Pouget-Abadie J,Mirza M,et al.Generative Adversarial Networks[J].Advances in Neural Information Processing Systems,2014,3:2672-2680.