盧世杰,郝文寧,余曉晗,于 坤
(中國人民解放軍陸軍工程大學 指揮控制工程學院,南京 210007)
圖像補全是一項極為重要的底層視覺任務,其目的是根據(jù)圖像中已有信息還原圖像中的缺失部分,在生活中的各個領域都具有廣泛的應用價值.然而,圖像補全具有不確定性,一張待修復的圖像往往會有多種修復結(jié)果,通常需要添加圖像先驗知識來約束求解范圍.因此,設計好的先驗知識是完成圖像補全任務的關鍵.圖像先驗描述了自然圖像的統(tǒng)計信息,它在計算機視覺任務中得到了廣泛的應用.傳統(tǒng)的圖像先驗包括馬爾可夫隨機場[1-3]、暗通道先驗[4,5]和總變差正則化等.隨著深度學習的發(fā)展,文獻[6]提出將卷積神經(jīng)網(wǎng)絡作為一種先驗信息,但受限于模型結(jié)構和參數(shù)隨機初始化等問題,卷積神經(jīng)網(wǎng)絡無法擬合顏色、紋理等更高級的信息.近年來,有研究人員發(fā)現(xiàn)預訓練GAN模型中包含了豐富的圖像先驗知識,文獻[7]提出了mGANprior,通過使用多個隱變量,并在生成器中間層加入通道注意力,實現(xiàn)了較高質(zhì)量的圖像重建,還將預訓練模型應用于圖像去噪、超分辨率等圖像復原任務,但由于生成器參數(shù)在訓練過程中沒有被更新,且在特征融合時每個隱變量對應的特征圖被賦予了相同的權重,導致重建后的圖像丟失了大量的細節(jié)紋理信息,并且該模型在圖像補全任務中的表現(xiàn)并不理想.
隨著注意力機制在計算機視覺領域被越來越多的探索,有研究提出了卷積塊注意力模型(CBAM)[8],該模型同時在通道和空間上添加注意力機制,即圖片的特征體現(xiàn)在每個通道的每個像素上.CBAM 可以嵌入到目前大部分主流網(wǎng)絡中,在不顯著增加計算量和參數(shù)量的同時提升網(wǎng)絡模型的特征提取能力.受此啟發(fā),本文綜合利用預訓練GAN 模型的先驗知識以及注意力機制在提升模型性能方面的優(yōu)勢,從而高質(zhì)量地完成圖像補全任務.
綜上,本文的主要工作包括以下幾個方面:
(1)本文在使用多個隱變量的基礎上,在預訓練生成器中間層同時對通道和特征圖添加自適應權重,并在訓練過程中微調(diào)生成器參數(shù).
(2)使用本文模型進行圖像重建實驗,并與其他圖像重建方法進行比較,證實了本文模型可以更好地恢復圖像的細節(jié)紋理信息.
(3)將本文模型應用于圖像補全任務,并與其他圖像補全方法進行比較,證實了本文方法可以有效地利用預訓練GAN 模型中的先驗知識,進而更好地完成圖像補全任務.
生成對抗網(wǎng)絡(GAN)包含兩個相互作用的神經(jīng)網(wǎng)絡: 生成器和鑒別器.生成器的目標是合成類似真實數(shù)據(jù)的偽數(shù)據(jù),鑒別器的目標是區(qū)分真實數(shù)據(jù)和偽數(shù)據(jù),通過對抗訓練使生成器學習從潛在分布到真實數(shù)據(jù)分布的映射,在學習了這種非線性映射之后,GAN就能夠從隱空間隨機采樣的向量中生成逼真的圖像.因其在產(chǎn)生高質(zhì)量圖片方面具備優(yōu)勢,GAN 被應用于多個圖像處理任務,如圖像去噪[9,10],圖像補全[11,12],超分辨率[13,14],人臉編輯[15,16]等.
GAN 本質(zhì)是將采樣的噪聲向量輸入生成器轉(zhuǎn)變?yōu)閳D片,并不是直接對真實圖像進行處理.若想將預訓練GAN 模型應用于真實圖像的處理,首先需要將圖片映射為隱變量,而后再將隱變量傳入預訓練生成器,從而實現(xiàn)圖像重建,該過程稱為GAN 反演.形式上,反演問題描述如式(1):
其中,x是 目標圖像,G為GAN 生成器,L表示損失函數(shù).目前有兩種主流方法來實現(xiàn)GAN 反演,一種是訓練額外的編碼器來學習從圖像空間到隱空間的映射[17,18],另一種是基于優(yōu)化的方法[19],即先將隨機初始化的隱變量送入生成器,再通過反向傳播算法最小化重構誤差,進而優(yōu)化隱變量.
圖像補全屬于圖像復原任務的一種,圖像復原任務的目的是將降質(zhì)圖像(降低分辨率,加入遮擋等)恢復為原始圖像,優(yōu)化公式通常如式(2)所示:
其中,x是降質(zhì)后的圖像,x0是網(wǎng)絡模型生成的圖像,E(x;x0)是針對具體任務的優(yōu)化函數(shù),R(x)是正則化項,通常表示圖像先驗信息.在早期的基于深度學習的圖像復原方法中,通常是通過大量的數(shù)據(jù)樣例的訓練學習到R(x).
文獻[6]認為隨機初始化的卷積神經(jīng)網(wǎng)絡(CNN)可以捕獲低層級的圖像先驗信息,如式(3)、式(4)所示,f是任意的CNN 模型,θ是該模型的權重參數(shù),z是隨機初始化的噪聲向量,通過優(yōu)化CNN 模型的參數(shù)來獲取圖像先驗,一旦得到了最優(yōu)的參數(shù),把向量z輸入模型即可得到最優(yōu)的圖像x,即使只在單張降質(zhì)圖像上進行反復迭代,也同樣能學習到圖像的先驗信息,進而完成圖像復原.
CNN 模型結(jié)構雖然可以獲取到圖像的底層統(tǒng)計特性,但由于其模型參數(shù)由隨機初始化得到,因此無法擬合到圖像更高級的信息,如顏色,紋理等.生成對抗網(wǎng)絡(GAN)作為一種很好的自然圖像流形逼近器,具有擬合自然圖像分布的能力,通過從大型圖像數(shù)據(jù)集學習,其生成器部分可以捕捉到豐富的高層圖像語義信息,包括顏色、空間相干性、紋理等高級概念.SinGAN[20]利用目標圖像的圖像補丁(patch)來學習圖像內(nèi)部統(tǒng)計信息,來實現(xiàn)各種圖像編輯或恢復效果.文獻[21]表明預訓練的GAN 模型捕獲了豐富自然圖像的統(tǒng)計數(shù)據(jù)作為先驗知識.文獻[7]利用多個隱變量實現(xiàn)GAN 反演,并利用GAN 捕獲的先驗知識完成多種圖像處理任務.
本文使用預訓練PGGAN 的生成器作為基礎模型架構,PGGAN (progressive GAN)[22]采用一種漸進式的訓練策略,在訓練過程中逐漸向生成器和判別器網(wǎng)絡中添加新的層,以此對越來越細粒度的細節(jié)進行建模,提高了訓練速度和穩(wěn)定性.文獻[7]提出利用多個隱變量重建圖像,每個隱變量負責重建圖像的一塊區(qū)域,并在生成器中間層加入通道注意力.文獻[8]提出了一種輕量級的注意力模塊,將注意力同時用到了通道和空間兩個維度上,在ResNet 等經(jīng)典結(jié)構上展現(xiàn)了強大的特征提取能力.
本文在使用多個隱變量的基礎上,提出了在預訓練PGGAN 模型中同時對通道和特征圖添加自適應權重的方法,模型結(jié)構如圖1 所示,將預訓練生成器G在第k層切分為兩部分,即G1和G2,Tn表示N個隱變量經(jīng)過生成器G1后形成的N個特征圖.αn是一個M維向量,表示特征圖中對應通道的重要性,M表示生成器第k層輸出通道的個數(shù),β是一個N維向量,表示N個中間層特征圖在合成圖像過程中的重要性權重,通過給中間層特征圖賦予自適應權重,可以充分發(fā)揮不同隱變量的作用.圖像重建過程分為以下兩個階段,式(5)表示N個隱變量經(jīng)過第1 個生成器生成N個中間特征圖,式(6)表示經(jīng)過特征加權融合后傳入第2 個生成器生成最終的圖片.
圖1 圖像重建模型
利用預訓練GAN 生成器重建一張目標圖片,此前基于優(yōu)化的反演方法是固定預訓練生成器,僅優(yōu)化隱變量.然而,這種優(yōu)化方式難以完成復雜紋理圖片的重建.此外,目標圖片與訓練集圖片的分布可能存在較大的差異,GAN 生成器不可避免地受到訓練數(shù)據(jù)分布的限制,從而難以重建訓練集以外的圖片.為了更精確的重建目標圖像,本文在優(yōu)化自適應權重 α ,β及隱變量z的同時,微調(diào)生成器參數(shù)θ,以減小圖像近似流型和真實流型之間的差距,通過這種過參數(shù)化的方式提高了圖像重建質(zhì)量,待優(yōu)化參數(shù)及優(yōu)化過程如式(7):
本文使用MSE 和感知損失作為距離度量,二者分別表示像素級重建誤差以及把兩幅圖像分別輸入到VGG 等深度網(wǎng)絡中提取的感知特征[23]之間的距離,如式(8)所示,其中,φ表示感知特征提取器,本文使用VGG16 作為特征提取器.
本文先使用LSUN 數(shù)據(jù)集上預訓練的PGGAN 模型進行圖像重建實驗,在此基礎上利用預訓練GAN 模型中的先驗知識完成圖像補全任務.
為了定量評估圖像的重建質(zhì)量,本文使用峰值信噪比(PSNR)和結(jié)構相似性(SSIM)兩種圖像評價指標.PSNR是目前應用最為廣泛的一種圖像評價指標,它通過均方差(MSE)進行定義.兩個m×n單色圖像I和K,如果一個為另外一個的噪聲近似,那么它們的均方差定義如式(9)所示,峰值信噪比的定義如式(10)所示,MAXI表示圖像中可能出現(xiàn)的最大像素值,它通過計算對應像素點間的誤差來衡量目標圖片與重建圖片之間的相似度,數(shù)值越大表示失真越小,SSIM是一種全參考的圖像質(zhì)量評價指標,它分別從亮度、對比度、結(jié)構3 方面度量圖像相似性,如式(10)所示,μx,μy分別表示圖像x和y的均值,σx,σy分別表示圖像x和y的方差,σxy表示圖像x和y的協(xié)方差.SSIM的取值范圍為[0,1],值越大表示補全的圖像與原圖越相似.
本文分別使用LSUN 臥室、LSUN 教堂數(shù)據(jù)集上預訓練的PGGAN 模型上進行實驗,對于每個模型,隨機選取對應數(shù)據(jù)集中100 張圖像進行重建,最終結(jié)果取平均.將本文方法與兩種基于GAN 反演的圖像重建方法進行比較,mGANprior 模型僅在通道層面添加自適應權重,且在優(yōu)化過程中固定生成器參數(shù).idinvert采用基于學習的反演方法,使用編碼器初始化隱變量.表1顯示了定量比較結(jié)果,本文在LSUN 臥室、LSUN 教堂數(shù)據(jù)集上預訓練的兩個PGGAN 模型上,無論是像素級(PSNR)還是全參考的評價指標(SSIM),都優(yōu)于其他兩種方法.圖2 顯示了定性比較結(jié)果,可看出傳統(tǒng)多隱變量先驗方法mGANprior 無法恢復目標圖像的細節(jié)紋理信息,這是因為生成器參數(shù)在訓練過程中沒有被更新,且在特征融合時每個隱變量對應的特征圖被賦予了相同的權重,而事實上每個隱變量在圖像重建中的貢獻程度應是不同的.訓練域?qū)蚓幋a器的方法idinvert 將圖像編碼為隱變量,再送入生成器實現(xiàn)圖像重建,該方法重建的圖像雖然在人眼感知層面有著較好的效果,但在布局和結(jié)構上與目標圖像差別較大.相比之下,使用本文方法重建的圖像,在保持原圖像布局和結(jié)構的同時,增添了更多的細節(jié)信息,如臥室圖片中的抽屜,枕頭,教堂圖片中建筑物的紋理以及路面的標線等.
圖2 不同圖像重建方法的定性比較
表1 不同圖像重建方法的定量比較
高質(zhì)量的圖像重建可以使得預訓練GAN 模型作為一種先驗知識應用于圖像處理任務,本文利用預訓練GAN 模型的先驗知識完成圖像補全任務.圖像補全的目標函數(shù)如式(12)所示,已知完整圖像x,模型生成的圖像xgt與二值掩模m,?表示兩個矩陣對應元素相乘,在重建過程中只重建未加入遮擋的部分:
預訓練GAN 模型可以利用自身的先驗知識自動填充缺失部分的像素.圖3 展現(xiàn)了更為直觀的補全過程,模型采用與圖像重建實驗相同的的網(wǎng)絡結(jié)構,不同之處在于計算損失的方式,首先給目標圖像添加隨機遮擋,再給生成器生成的圖片添加相同的遮擋,隨后計算二者之間的誤差,最后通過梯度下降算法更新待優(yōu)化參數(shù),經(jīng)過一定次數(shù)的迭代,生成器便可生成完整無缺失的圖像.
圖3 圖像補全模型
本文使用30 個隱變量,并在生成器第8 層進行特征加權融合,將本文方法與兩種圖像補全的方法作比較,隨機選取LSUN 臥室和LSUN 教堂數(shù)據(jù)集中各100 張圖像進行圖像補全實驗,表2 顯示了定量比較結(jié)果,可看出本文方法優(yōu)于其他兩種方法.圖4 顯示了定性比較結(jié)果,多隱變量先驗方法mGANprior 在生成器第4 層進行特征融合,雖然可以填補缺失部分的像素,卻使得整張圖像變得模糊,將CNN 結(jié)構作為先驗知識DIP 的補全效果也并不理想,補全后的區(qū)域與背景的語義信息不一致.相比之下,本文方法更有效的利用了預訓練GAN 模型的先驗知識,實現(xiàn)了較高質(zhì)量的圖像補全.
表2 不同圖像補全方法的定量比較
圖4 不同圖像補全方法的定性比較
本文方法在圖像補全任務中展現(xiàn)出一定的優(yōu)越性,主要得益于3 個部分: 預訓練的GAN 模型,針對目標圖像的生成器微調(diào),對中間層特征圖添加自適應權重.為了體現(xiàn)不同部分的作用,本文進行了消融實驗.首先將隨機初始化權重和使用預訓練權重兩種方式進行對比,以此證明預訓練模型中的先驗知識對圖像補全效果的影響.結(jié)果如圖5 所示,實驗結(jié)果表明,權重隨機初始化的GAN 模型難以捕捉豐富的圖像語義知識,只能重建出目標圖像的輪廓和結(jié)構,而加入預訓練權重后的生成器則可以作為一種先驗知識引導圖像重建,生成的圖像包含豐富的細節(jié)紋理信息.
圖5 權重不同初始化方式效果對比
為了探究模型微調(diào)對圖像補全效果的影響,本文對生成器微調(diào)和不微調(diào)兩種方式進行了對比實驗,如圖6 所示,當利用臥室數(shù)據(jù)集上預訓練的GAN 模型完成房屋圖片的補全時,如果不微調(diào)生成器參數(shù),生成的圖片會存在偽影,原因在于待補全圖片與訓練集圖片的分布存在較大的差異,而本文在優(yōu)化隱變量和自適應權重的同時,微調(diào)了生成器參數(shù),在一定程度上減小了生成器模擬分布和真實圖像分布之間的差距,增強了圖像的真實感.
圖6 不同優(yōu)化策略的效果對比
本文同時給通道和特征圖賦予自適應權重,為了體現(xiàn)給特征圖賦權重的作用,本文進行了對比實驗,如圖7 所示,實驗結(jié)果表明,僅給通道加權的模型在細節(jié)補全方面效果不太理想,如圖中的窗子出現(xiàn)了模糊和截斷,這是因為在特征融合時,每個隱變量生成的中間層特征圖被賦予了相同的權重,本文給特征圖加入自適應權重后,效果有一定的提升,原因在于每個隱變量在圖像補全任務中的貢獻程度是不同的,通過給中間層特征圖添加自適應權重,可以充分發(fā)揮每個隱變量的作用,更好地利用已知區(qū)域的信息填補未知區(qū)域.
圖7 不同加權方式的效果對比
為了有效地利用預訓練GAN 模型中的先驗知識完成圖像補全任務,本文在使用多個隱變量的基礎上,在生成器中間層同時對通道和特征圖添加自適應權重,并在訓練過程中微調(diào)生成器參數(shù).實驗結(jié)果表明,本文方法可以更高質(zhì)量地完成圖像補全任務,優(yōu)于其他深度模型先驗方法.但現(xiàn)有工作仍存在一些不足,有待進一步研究.
(1)利用預訓練GAN 模型的先驗知識完成圖像補全任務,雖然不需要額外的訓練數(shù)據(jù),但是需要每張圖片在線自適應,訓練模型的時間轉(zhuǎn)移到了優(yōu)化參數(shù)上面,這就導致優(yōu)化過程過于復雜緩慢,如何縮短優(yōu)化時間仍是一個待解決的問題.
(2)本文方法只能針對降質(zhì)類型確定的圖像,對于降質(zhì)類型未知的圖像,利用模型先驗知識完成圖像復原較為困難,仍值得進一步探索.