許若波,盧 濤*,王 宇,張彥鐸
(1. 武漢工程大學計算機科學與工程學院,武漢430205; 2. 智能機器人湖北省重點實驗室(武漢工程大學),武漢430205)
(*通信作者電子郵箱lut@wit.edu.cn)
人臉超分辨率是一種從輸入的低分辨率人臉圖像推斷出其潛在的對應高分辨率圖像技術,該技術能夠顯著增強低分辨率圖像的細節信息,因而被廣泛地應用到了人臉識別、刑事偵察、娛樂等領域。
基于學習的超分辨率方法能夠利用樣本提供的先驗信息推導低分辨率圖像中缺失的高頻細節信息,例如基于主成分分析(Principal Component Analysis,PCA)[1]的線性約束、局部線性嵌入(Locally Linear Embedding,LLE)[2]、稀疏表達[3]、局部約束表達[4]等,這些方法獲得了較好的圖像主客觀重建質量。
深度學習提供了一種端到端的映射關系學習模式來處理超分辨率問題。Dong等[5]首次提出了使用卷積神經網絡建立端到端的超分辨率算法(image Super-Resolution using deep Convolutional Neural Networks,SRCNN)。Kim 等[6]利用深層網絡學習圖像的殘差信息(accurate image Super-Resolution using Very Deep convolutional networks,VDSR)。盧濤等[7]使用中繼循環網絡,增強超分辨率重建圖像的重建效果。Ledig等[8]首次將生成對抗網絡(Generative Adversarial Network,GAN)運用到圖像超分辨率,使圖像產生更加逼真的視覺效果。Yang 等[9]提出了判決性增強的生成對抗網絡(Enhanced Discriminative Generative Adversarial Network for face superresolution,EDGAN)用于人臉圖像的超分辨率。考慮到人臉的結構特性,Song 等[10]提出的通過組件生成和增強學習幻構人臉圖像算法(Learning to hallucinate face images via Component Generation and Enhancement,LCGE),證明了人臉組件在重建高分辨率圖像中的作用。在LCGE 的基礎上,Jiang 等[11]通過兩步法結合使用卷積神經網絡去噪和多層鄰域嵌入來幻構人臉圖像。
基于卷積神經網絡的模型可以重建出平滑的圖像,同時網絡易于收斂和訓練,可以生成高的客觀評分但相對平滑的結果。基于生成對抗網絡的方法可以產生逼真的視覺效果,并恢復豐富的紋理細節,但獲得的客觀評分較低。由于人臉圖像具有高度的結構性,在眼睛、鼻子和嘴巴周圍包含豐富的細節。人臉超分辨率方法和通用圖像超分辨率算法最大的不同之處在于如何利用人臉圖像的結構信息。受到組合學習[12-13]方法的啟示,由于人臉組件部分紋理的復雜性,僅僅利用一種模型難以充分利用人臉的結構性先驗信息,針對這一問題,本文提出了一種基于組合學習的人臉超分辨率算法,采用多個并行訓練的組件生成對抗網絡(Component-Generative Adversarial Network,C-GAN)恢復人臉的重要器官部分,由此在訓練網絡的過程中每個人臉區域的數據分布不同,不同的子網絡能夠獲得更精確的先驗信息,并使用卷積神經網絡(Convolutional Neural Network,CNN)重建人臉背景圖像。首先對人臉圖像使用超像素分割算法[14-15]進行分割,分割出重要的人臉組件部分和人臉背景部分;其次對人臉組件部分構建子網絡,利用不同的超分辨率方法重建背景圖像;然后在重建高分辨率組件的基礎上建立特征融合網絡,將不同學習方法獲得的重建結果進行融合;最后輸出高分辨率人臉圖像。論文的創新之處在于:1)首次利用多種不同的超分辨率重建方法組合學習獲得更精準的重建圖像。2)提出了組件自適應權重學習的多源圖像融合重建網絡,拓展了圖像重建先驗的來源。
近年來,基于深度學習的圖像超分辨率受到很大的關注,Dong 等[5]提出使用3 層卷積神經網絡重建低分辨率圖像。Kim 等[6]在SRCNN 的基礎上加深網絡層數,學習圖像的殘差信息,并獲得了卓越的重建性能。但是基于卷積神經網絡重建的圖像在主觀效果上過于平滑,一些復雜的紋理細節難以恢復,尤其像人臉圖像具有高度的結構性,更加難以學習其復雜的細節信息。為了重建的圖像獲得更加逼真的效果,Ledig等[8]提出使用生成對抗網絡進行對抗學習來恢復更多的細節,并產生逼真的視覺效果。Yu等[16]采用生成對抗網絡的思想提出了一種變換自動編碼器網絡,來重建未對齊且含有噪聲的極低分辨率人臉圖像。雖然生成對抗網絡重建的圖像可以恢復豐富的紋理細節,但是客觀評估指標值較低。為了獲得平滑度適中且具有更高的客觀評分,利用兩種不同深度學習模型的優勢組合學習人臉結構的復雜先驗信息,從而提高網絡的重建性能。
為了充分發揮出不同的神經網絡結構特點和重建性能,本文提出了一種多結構網絡的組合學習框架,其網絡結構如圖1所示,其中C-GAN表示組件生成對抗網絡,n表示人臉組件的個數,Fusion-Net表示組件融合網絡。

圖1 基于組合學習的人臉超分辨率算法框架Fig. 1 Outline of face hallucination via combined learning
C-GAN 用于恢復人臉圖像紋理細節豐富的區域,而CNN則用于學習整個人臉圖像作為背景信息,而Fusion-Net 則用于融合多網絡重建的組件信息,提升超分辨率重建的質量。值得注意的是本文提供了一種多神經網絡融合重建的超分辨率算法框架。為了便于說明和理解,采用了具體的網絡結構加以說明,為了簡化問題的復雜度,本文僅僅設置n= 3,n表示人臉組件的個數,建立C1(眼睛)、C2(鼻子)和C3(嘴巴)3種獨立模型,用以證明本文所提出思路的有效性。組合學習算法流程如圖2所示。

圖2 組合學習算法流程Fig. 2 Flow chart of combined learning algorithm

其中:SLIC表示超像素分割算法,Lab表示生成的人臉組件標簽,k和m表示超像素算法的基本參數,k表示預設的超像素個數,m用于調整超像素的緊湊程度和邊緣特性,在本文中k= 30,m= 80。
超像素分割方法對低分辨率人臉圖像進行分割,產生多個不規則的超像素塊,每個超像素塊擁有自己的標簽,提取不規則人臉組件區域所有坐標:

E(Labl)表示提取人臉圖像xi中標簽為l的區域的所有橫坐標點和縱坐標點,rowl和coll分別表示橫坐標點和縱坐標點。最小橫坐標點和最大橫坐標點分別為min(rowl) 和max(rowl),最小縱坐標點和最大縱坐標點分別為min(coll)和max(coll),通過對角的兩點坐標點確定最終的低分辨率人臉組件矩形面積為:

其中:rect表示通過兩個對角坐標點生成一個規則的矩形,即人臉組件圖像塊。表示最終分割的低分辨率人臉組件圖像塊,j表示不同的人臉組建圖像塊,其中{j|1 ≤j≤3},因此可形成人臉組件訓練集,i表示人臉組件訓練數據集中的樣本圖像塊索引為低分辨率人臉組件圖像塊,為與之對應的高分辨率人臉組件圖像塊。
2.2.1 人臉組件生成對抗網絡(C-GAN)
為了獲取人臉組件周圍更多的紋理細節,本文采用生成對抗網絡來學習更精準的先驗信息。由于人臉組件圖像塊較小,為了保持網絡的重建性能,本文設計了一個適用于輸入圖像塊較小的人臉組件生成對抗網絡,并且此網絡可以獨立地訓練人臉組件區域,形成多個并行的子網絡,每個獨立的子網絡的數據分布不同,從而使獨立的子網絡學習更精確的先驗信息。本文采用了一個淺層的生成對抗網絡,加深了網絡的寬度,訓練過程中可以更好地提取人臉組件的重要特征,并且生成對抗網絡通過生成網絡和對抗網絡互相對抗學習獲得更好的視覺效果。人臉組件生成對抗網絡結構如圖3所示。

圖3 人臉組件生成對抗網絡(C-GAN)的網絡結構Fig. 3 Network structure of face Component Generative Adversarial Networks(C-GAN)
在生成網絡部分,首先在網絡的開始層采用了較大感受野的卷積層(卷積核大小為5×5)來提取更加豐富全面的特征,其他層采用的是3×3的卷積核,采用兩個反卷積層上采樣至高分辨率圖像塊大小,反卷積層是由上采樣層和卷積層級聯起來。人臉組件生成對抗網絡訓練集為,低分辨率人臉組件圖像塊和高分辨率人臉組件圖像塊分別表示為∈?w×h和∈?wt×ht,t表示放大因子,t=4,設有3個獨立的人臉組件生成對抗網絡。人臉組件生成對抗網絡重建圖像為:

其中:Gj表示不同的人臉組件生成網絡,表示不同人臉組件生成網絡生成的高分辨率人臉組件圖像塊,i表示重建的人臉組件圖像塊索引。
在判別網絡部分,使用了4 個卷積層,在其中3 個卷積層后級聯最大池化層,隨著網絡層數加深,特征尺寸不斷減小,并采用修正線性單元(Rectified Linear Unit,ReLU)作為激活函數,最終通過兩個全連接層和最終的sigmoid 激活函數得到預測結果。判別網絡能夠區分輸入的圖像塊是原始的高分辨率人臉組件圖像塊還是人臉組件重建圖像塊,相應的判別信息被反向傳播到生成網絡,從而可以生成視覺效果更加逼真的人臉組件重建圖像塊。
人臉組件生成網絡損失函數使用均方誤差(Mean Square Error,MSE)作為損失函數,采用L2范數損失學習低分辨率圖像和高分辨率圖像之間的差異,生成網絡損失函數為:

其中:u表示人臉組件生成網絡的參數,uCj表示不同的人臉組件生成網絡的參數,p(sCj,yCj)表示人臉組件訓練集中低分辨率人臉組件圖像和原始高分辨率人臉組件圖像的聯合分布。
判別網絡損失函數為:

其中:v表示判別網絡的參數,表示不同的人臉組件判別網絡的參數,p(yCj)和p()表示原始的高分辨率人臉組件和人臉組件重建圖像的聯合分布,D)和Dj(Gj())作為判別網絡的輸出,Dj(Gj())表示人臉組件重建圖像塊Gj(sCj)是原始人臉組件圖像塊的概率,損失函數LCj反向傳播到生成網絡來更新參數uCj,通過傳播給生成網絡判別信息,使生成網絡可以生成更加逼真的高分辨率人臉組件圖像塊。
2.2.2 人臉背景圖像重建網絡
本文采用了一個20 層的深層殘差網絡作為人臉背景重建網絡。第一層和最后一層的結構不同,第一層作為網絡的輸入,輸出的通道數為64,最后一層的作用為輸出重建后的圖像,由1個3×3的卷積核組成。其余的18層網絡結構由64個3×3 大小的卷積核組成,并且采用ReLU 作為激活函數,使網絡更加容易學習,并提升網絡的訓練速度。
在人臉背景圖像重建網絡中,xi為低分辨率圖像,將xi雙三次插值至高分辨率圖像大小表示為為對應的高分辨率圖像,殘差圖像定義為ri=yi-殘差圖像的像素值非常小,因此在訓練過程中大量減少了網絡攜帶的信息,使網絡更加容易收斂。人臉背景重建圖像為:

其中:表示殘差網絡學習到的殘差圖像。
使用均方誤差(MSE)作為損失函數,則損失函數為:

2.2.3 組件融合網絡
本文利用C-GAN 模型重建的人臉組件和CNN 模型重建的人臉背景圖像對應融合,提取其深層特征,在特征域自適應融合兩種不同的特征,從而進一步學習低分辨率人臉組件圖像至原始高分辨率人臉組件圖像之間的映射關系,恢復更多的細節信息,進一步增強重建圖像的質量,并提高組合模型的重建性能。為了保持空間信息,不使用任何池化層或跨步卷積層。特征提取網絡并行使用了8 個殘差塊密集連接,使用本地連接和長跳躍連接獲取更豐富的特征。組件融合網絡結構如圖4所示。

圖4 組件融合網絡結構Fig. 4 Network structure of component fusion
融合重建模塊由5 個卷積層和4 個LeakyReLU 激活函數組成,第一個卷積層卷積核大小為1×1,其他卷積層卷積核大小為3×3,兩種不同的特征拼接輸入卷積核大小為1×1 的卷積層,從而可以降低維度,并保留重要的特征信息。最后一層卷積層為最終重建層,卷積核的個數為3。
通過取人臉背景重建圖像Y?i與人臉組件重建圖像塊的交集獲取人臉背景重建圖像的人臉組件區域形成組件融合網絡訓練集組件融合網絡重建的高分辨率人臉組件圖像塊為:

其中:?表示融合,j表示不同的人臉組件圖像塊,表示人臉組件重建圖像塊。
將融合的人臉組件重建圖像塊合并至人臉背景重建圖像中,形成最終的人臉高分辨率重建圖像為:

其中:Yi表示最終合成的人臉圖像,∪表示人臉組件和人臉背景圖像合并。
融合網絡采用均方誤差(MSE)作為損失函數,計算融合重建后的人臉組件圖像和原始的高分辨人臉組件圖像之間的損失。損失函數為:

其中:θCj表示不同組件融合網絡的模型參數,Fj表示不同的融合網絡,LFj表示不同融合網絡的損失函數。
本文使用了FEI(FEI Face Database)數據集對所提出的方法進行實驗驗證,FEI 數據集含有400 張正面拍攝圖像,共有200人,每個人有兩張正面的圖像。本文使用360張作為訓練集,40張作為測試集,高分辨率圖像大小為260×360像素,使用雙三次插值進行下采樣得到低分辨率圖像,下采樣因子為4,得到低分辨率圖像大小為65×90像素。
實驗使用4個GPU(NVIDIA 1080Ti)并行訓練4個獨立的網絡,其中3個GPU 并行訓練眼睛、鼻子和嘴巴的人臉組件生成對抗網絡,在人臉組件圖像塊中取大小為16×16 像素的圖像塊進行訓練,共訓練70 個時期,初始學習率設置為0.001,每個時期學習率自動更新,將初始學習率乘以一個輔助變量0.99γ作為下一次網絡訓練的學習率,γ表示當前的時期次數,網絡的動量初始值設為0,每個時期增加0.000 8,訓練集批量大小設置為64。第4 個GPU 用來訓練人臉背景圖像,將低分辨率人臉背景圖像雙三次插值至原始高分辨率圖像大小,取大小為41×41 像素的圖像塊進行訓練,訓練80 個時期,初始學習率為0.1,每20 個時期學習率將下降至原來的1/10,網絡的動量為0.9,?2的權值衰減為0.000 1。
融合網絡在高分辨率空間進行融合訓練,從生成的高分辨率人臉組件數據集中取大小為64×64 像素的圖像塊作為網絡的輸入,融合網絡共訓練150 個時期,初始學習率設置為0.000 1,并且每30 個時期乘以0.1,批量大小設置為16,并且通過隨機旋轉和水平翻轉來增加訓練數據。
本文采用超像素分割方法分割人臉組件,利用像素之間特征的相似性將像素分組,人臉組件分割提取流程如圖5 所示,首先通過低分辨率訓練集生成平均面部圖像,采用超像素分割算法對平均面部圖像進行聚類并生成多個超像素塊,每個超像素塊擁有自己的標簽,從圖5 中可以看出生成的人臉組件標簽模板,采用此模板對人臉圖像進行分解,通過標簽提取不規則的區域,對不規則區域進行矩形化得到最終的低分辨率人臉組件圖像塊,通過低分辨率人臉組件圖像塊的兩個對角坐標點,獲取對應的高分辨率人臉組件圖像塊。在本文中提取C1 低分辨率組件大小為48×16 像素,C2 低分辨率組件大小為19×20 像素,C3 低分辨率組件大小為28×17像素。

圖5 人臉組件分割提取流程Fig. 5 Flow chart of face component segmentation and extraction
本文提出的算法與幾種算法進行比較,包括雙三次插值、SRCNN[5]、VDSR[6]、LCGE[10]和EDGAN[9]方法,使用FEI 數據集進行測試,為了公平比較,本文使用相同的訓練集重新訓練對比算法,由于LCGE 只公布了測試代碼,所以只對LCGE 進行測試。本文采用了峰值信噪比(Peak Signal to Noise Ratio,PSNR)、結構相似性(Structural SIMilarity,SSIM)[17]和視覺信息保真度(Visual Information Fidelity,VIF)[18]作為圖像質量客觀評估指標。
3.3.1 融合網絡的作用
為了驗證不同深度學習模型重建的圖像塊自適應融合的有效性,本節比較了不同的模型所產生的效果,如表1 所示,相對于CNN 模型和C1-GAN 模型,本文方法的組合學習模型性能均有不同程度的提升,重建圖像的質量明顯上升,本文只展示40 張C1 區域的平均定量值對比實驗結果,計算平均客觀評估值,本文所提出的算法超過基于CNN 和C1-GAN 模型分別為1.60 dB/0.016 0/0.040 3,1.39 dB/0.013 9/0.059 9,這表明了組件融合網絡的有效性。

表1 同一個區域不同模型的平均PSNR、SSIM和VIFTab. 1 Average PSNR,SSIM and VIF for different models in same region
3.3.2 組件重建性能比較
為了體現本文算法的獨特性,本文將單獨與對比算法比較眼睛、鼻子和嘴巴部分(C1、C2 和C3 區域)的客觀評估指標,結果如表2 所示,本文算法的感興趣區域都優于對比算法。從圖6 中可以看出:雙三次插值法并不能產生額外的細節信息;基于深度學習的SRCNN 和VDSR 通用圖像超分辨率方法,由于其全局優化方案,可以很好地保持局部的基本結構,但是無法恢復更多的高頻細節信息;雖然EDGAN 可以產生良好的視覺效果,但是本文方法與EDGAN相比具有更好的平滑度,而且在紋理細節上更加準確。實驗結果表明,獨立采用不同的深度學習模型重建感興趣的區域可以產生更加豐富的細節信息。

表2 不同算法不同組件的PSNR和SSIM的結果比較Tab. 2 Comparison of PSNR and SSIM results of different algorithms and components

圖6 在FEI數據集中本文算法與不同算法的主觀比較Fig. 6 Subjective comparison of the proposed method with other algorithms on dataset FEI
3.3.3 人臉重建性能比較
本文對最終合成的人臉圖像與對比算法進行比較,如表3 所示,最終實驗結果的PSNR、SSIM 和VIF 平均超過通用圖像SR 算法SRCNN、VDSR 分別為1.20 dB/0.008 5/0.044 2,0.24 dB/0.002 4/0.016 8,超 過 人 臉 圖 像SR 算 法LCGE 和EDGAN 分 別 為1.23 dB/0.009 5/0.043 7,1.11 dB/0.013 9/0.066 7。與LCGE 相比,本文算法的測試時間減小了99%。雖然本文算法的測試時間比Bicubic、SRCNN、VDSR 稍微久一些,但是本文算法的PSNR、SSIM 和VIF 客觀評估指標值超越了它們。實驗結果表明,無論是組件還是最終合成的人臉圖像均獲得了較高的客觀評分。

表3 不同算法PSNR,SSIM,VIF和測試時間的結果比較Tab. 3 Comparisonof PSNR,SSIM,VIF and testing time results of different algorithms
本文提出了一種基于組合學習的人臉超分辨率算法,利用不同的網絡結構重建性能優勢,不僅能夠恢復人臉重要器官的紋理細節信息,還能利用現有的其他超分辨率方法提供人臉背景重建信息,利用多種不同的超分辨率重建方法組合學習獲得更精準的重建圖像,并使用區域融合網絡自適應融合不同深度學習模型重建的圖像塊,從而拓展了圖像重建先驗的來源,進一步提升了人臉超分辨率的重建性能。在后續的研究工作中,擴展更大的人臉圖像數據集,并擴展到通用SR(Super-Resolution)中,來表明此方法的拓展性。并且在不同深度學習模型自適應融合工作中還存在改進的空間,可以進一步提升此方法的重建性能。