王 肖,魏嘉旺,袁玉波,2
(1. 華東理工大學(xué)信息科學(xué)與工程學(xué)院,上海200237; 2. 上海大數(shù)據(jù)與互聯(lián)網(wǎng)受眾工程技術(shù)中心,上海200072)
(*通信作者電子郵箱1450061144@qq.com)
數(shù)字人臉圖像識別是目前學(xué)術(shù)界研究的焦點,具有廣闊的應(yīng)用前景。然而,由于人為因素干擾、拍攝設(shè)備故障,在傳輸?shù)倪^程中的編碼、解碼等因素,致使原始數(shù)字圖像有明顯缺損[1],帶來人臉圖像特征信息損失問題,嚴重影響人臉識別的精確性。數(shù)字圖像修復(fù)技術(shù)針對圖像中缺損區(qū)域,從目標區(qū)域邊緣開始,利用非目標區(qū)域的結(jié)構(gòu)和紋理信息,按照匹配準則預(yù)測并修補未知區(qū)域,使得填充后圖像視覺上合理真實[2]。
根據(jù)修復(fù)原理的不同,數(shù)字圖像修復(fù)算法可以分為兩類:基于偏微分方程(Partial Differential Equation,PDE)的結(jié)構(gòu)傳播方法[3]和基于樣本塊的紋理合成方法[4]。基于PDE 的結(jié)構(gòu)傳播方法結(jié)合平滑先驗知識,從目標區(qū)域的外部向內(nèi)部傳遞結(jié)構(gòu)信息完成圖像修復(fù)[5]。該類有兩種經(jīng)典方法:基于總體變分(Total Variation,TV)[6]的方法和基于曲率驅(qū)動擴散(Curvature Driven Diffusion,CDD)[7]的方法?;赑DE 的方法針對小面積非結(jié)構(gòu)的缺損區(qū)域(如劃痕),修復(fù)效果良好,但并不適用于大塊缺失且包含復(fù)雜結(jié)構(gòu)信息的圖像[8]。
基于樣本塊的紋理合成圖像修復(fù)方法的原理由非目標區(qū)域的信息構(gòu)造修復(fù)優(yōu)先權(quán),對最高優(yōu)先權(quán)塊搜尋最佳匹配塊填充目標區(qū)域完成圖像修復(fù)[9]。該類方法最初由Criminisi等[10]于2003 年提出,以去除圖像中的大物體為目標,采用非目標區(qū)域的紋理信息合成圖像中未被遮擋的原始背景。文獻[11]在基于樣本塊的修復(fù)基礎(chǔ)之上,提出樣本塊結(jié)構(gòu)稀疏性概念,通過塊與相鄰塊的稀疏性的相似性來度量圖像結(jié)構(gòu)塊的置信度構(gòu)造優(yōu)先級,結(jié)果顯示該方法使修復(fù)區(qū)域紋理清晰且與周圍結(jié)構(gòu)保持一致。文獻[12]在修改Criminisi算法基礎(chǔ)上,將圖像梯度卷積后的散度作為數(shù)據(jù)項構(gòu)造結(jié)構(gòu)張量,進一步提高了修復(fù)圖像的質(zhì)量。針對以上方法存在的填充塊選擇不恰當?shù)膯栴},2015 年文獻[13]提出了一種分離優(yōu)先級的圖像修復(fù)方法,根據(jù)圖像中紋理信息與非紋理信息的比例設(shè)計分離優(yōu)先級定義的算法,實驗結(jié)果顯示該方法可以較好地恢復(fù)圖像的紋理結(jié)構(gòu)信息。文獻[14]針對修復(fù)結(jié)果存在鋸齒效應(yīng)問題,在優(yōu)先級修復(fù)模型中加入局部特征信息,約束目標塊的修復(fù)順序;通過加入梯度信息減小搜索域,提高修復(fù)的時間效率。
對于人臉數(shù)字圖像,文獻[15]通過引入人臉先驗知識,在人臉數(shù)據(jù)庫中選擇同一人臉圖像做源區(qū)域搜尋匹配塊填充目標區(qū)域完成圖像修復(fù)。文獻[16]針對人臉圖像大塊缺失問題,利用在線稀疏字典學(xué)習(xí)算法,從人臉圖像的各種數(shù)據(jù)集的語料庫中設(shè)計大量的適應(yīng)性原子來完成圖像修復(fù),該方法在全局模型上,將修復(fù)任務(wù)表示為一個具有稀疏推廣先驗的逆問題。但文獻[15]和文獻[16]的方法均需要人臉數(shù)據(jù)庫的支持,對單一人臉圖像并不適用。文獻[17]提出了一種新的動態(tài)閾值策略,使用快速迭代收縮閾值算法來實現(xiàn)了人臉圖像修復(fù)。文獻[18]針對經(jīng)典圖像修復(fù)方法對強紋理結(jié)構(gòu)圖像修復(fù)效果好,而對于弱紋理的人臉圖像修復(fù)存在分解精度低,修復(fù)結(jié)果差的問題,提出分解人臉圖像為骨架部分與紋理部分獲取稀疏系數(shù)修復(fù)人臉圖像,結(jié)果表明該方法可以有效提高圖像分解精度恢復(fù)人臉圖像。
本文方法將人臉特征點定位思想應(yīng)用于基于樣本塊的人臉圖像修復(fù)框架中,提出了基于特征部位圓形域的人臉圖像修復(fù)方法。通過引入結(jié)構(gòu)梯度項,改善了原始優(yōu)先級修復(fù)模型中未能保持良好的結(jié)構(gòu)連通性的問題,精確計算優(yōu)先級,使修復(fù)效果更接近真實人臉圖像;通過人臉特征點定位的自適應(yīng)窗回歸模型[19]對人臉特征部位圓形域分割,提高匹配塊搜尋效率,有效減少算法的時間消耗。
基于樣本塊的紋理合成方法的過程是按照一定順序搜尋目標塊的匹配塊修復(fù)圖像,用優(yōu)先級函數(shù)確定修復(fù)順序,用相似匹配規(guī)則確定匹配塊的選擇。對于輸入圖像I,圖像中的待修復(fù)的目標區(qū)域為Ω,搜索匹配塊的源區(qū)域為=I-Ω,即已知區(qū)域,目標區(qū)域的邊界表示為?Ω,如圖1 所示。其中ψp是邊界線?Ω中以點p為中心的像素塊。
基于樣本塊的紋理合成算法的基本步驟如下:
1)計算目標區(qū)域Ω中所有像素點的初始優(yōu)先級:
C(p)為置信度項,計算如式(2)所示:
其中|ψp|是像素塊ψp的面積,即像素點數(shù)目。初始化時,置信度C(p)在目標區(qū)域Ω均為0,在源區(qū)域Ωˉ均為1。D(p)為數(shù)據(jù)項,計算如式(3)所示:
圖1 算法原理示意圖Fig. 1 Schematic diagram of algorithm
2)選取最高優(yōu)先級待填充塊ψp。以最大優(yōu)先級像素點p為中心,選取一定大小的像素塊為作為待填充的目標塊。
3)搜尋最佳匹配塊。對目標塊ψp,在源區(qū)域Ωˉ搜素匹配塊,相似性度量規(guī)則是:
其中:d()表示目標塊與搜索塊像素之間的差異平方和,n是ψp中像素點的數(shù)目。
將匹配塊的像素值填充到目標塊ψp,目標區(qū)域Ω發(fā)生變化,置信度項與數(shù)據(jù)項也隨之變化,需對其進行更新。重新計算優(yōu)先級P(p)并重復(fù)上述三個步驟直至目標區(qū)域Ω為空,完成圖像修復(fù)。
對人臉圖像,本文方法在基于人臉特征點定位的自適應(yīng)窗回歸技術(shù)[19]上,改進基于樣本塊的紋理合成方法,提出基于特征部位圓形域的人臉圖像修復(fù)方法。本文方法的流程如圖2所示。
算法的關(guān)鍵內(nèi)容包括:
1)人臉特征點定位。通過引入人臉特征點定位技術(shù),定位待修復(fù)人臉圖像的特征點,明確待修復(fù)區(qū)域在人臉的位置。
2)特征部位圓形域確定。具體實現(xiàn)是根據(jù)特征點定位結(jié)果,對不同特征部位的特征點分類,計算出特征部極大半徑以及圓形域,更精確地定位待修復(fù)區(qū)域所處的特征部位。
3)重新定義優(yōu)先級。通過加入結(jié)構(gòu)梯度項,使用梯度信息約束目標區(qū)域優(yōu)先級,優(yōu)先修復(fù)結(jié)構(gòu)區(qū)域,提高修復(fù)結(jié)果的結(jié)構(gòu)連通性。
4)特征部位圓形域搜尋匹配塊。對待修復(fù)塊,判斷其所處的特征部位,在其所處的特征部位中搜尋匹配塊。對符合結(jié)構(gòu)相似性準則的搜尋結(jié)果,直接復(fù)制匹配塊到目標塊完成修復(fù);否則在圖像全局搜索匹配塊,取結(jié)構(gòu)相似性大的塊填充目標區(qū)域。
圖2 基于特征部位圓形域的人臉圖像修復(fù)方法流程Fig. 2 Flow chart of face image inpainting based on circular field of feature parts
對待修復(fù)的人臉圖像,在基于顯式形狀回歸(Explicit Shape Regression,ESR)[20]的人臉特征點定位的基礎(chǔ)上,使用自適應(yīng)窗回歸方法模型[19],初步定位人臉特征點。該模型核心包括:人臉形狀初始化,自適應(yīng)調(diào)整窗口穩(wěn)定預(yù)測結(jié)果和基于互信息相關(guān)計算的特征選擇,該模型的流程如圖3所示。
圖3 人臉特征點定位模型流程Fig. 3 Flow chart of face feature point location model
針對ESR算法的多級級聯(lián)回歸中預(yù)測形狀與真實形狀偏差較大的問題,自適應(yīng)窗回歸模型使用由粗到細的自適應(yīng)特征選擇方法。該模型在基于先前回歸的均方誤差上,以αk=αk-1-λμ的方式調(diào)整特征窗口長度。具體方式是通過級聯(lián)回歸誤差,調(diào)整縮減參數(shù)λ進而約束特征窗口長度α?;谔卣鞔翱诟路绞剑瑢τ诖笳`差結(jié)果采用大窗口,小誤差使用小窗口的方式動態(tài)調(diào)整搜索窗口,使預(yù)測結(jié)果不斷向真實值逼近。
在特征選擇迭代N次后得到N個候選特征點,將特征點成對做差得N*N個像素差。為了規(guī)避ESR 算法通過線性相關(guān)系數(shù)選擇特征點的弊端,自適應(yīng)窗回歸方法模型使用基于互信息的特征選擇策略。首先計算像素差μ的信息熵H(μ),以及特征點的定位殘差值Y 的條件信息熵H(Y|μ),然后根據(jù)定位殘差與像素差之間的互信息I(Y|μ),最后使用熵相關(guān)系數(shù)ECC(Y|μ)選擇出R個最具代表性的像素差。根據(jù)R各像素差構(gòu)造葉節(jié)點數(shù)為2R的隨機蕨構(gòu)造回歸模型。
基于人臉特征點定位的自適應(yīng)窗回歸模型,得到初步定位的人臉特征點。人臉特征點集合記為:
分類為特征點集合S1、S2、S3、S4、S5。S1是左眉眼特征點1~11的集合;S2是右眉眼特征點12~22的集合;S3是鼻子特征點23~31 的集合;S4是嘴巴特征點32~51 的集合;S5是臉部輪廓特征點52~68的集合。
特征點集合S1、S2、S3、S4中的特征點分布在特征部位周圍,根據(jù)特征點的位置信息確定特征部位的范圍。對集合Si分別計算其中心點Ri(Xi,Yi),Xi、Yi可以通過(7)得到:
其中(xij,yij)∈Si,Ni表示集合Si中特征點的個數(shù)。以中心點Ri(Xi,Yi)為圓心,計算特征集合Si中特征點到圓心的歐氏距離,選擇最遠距離為極大半徑ri,即:
其中i= 1,2,3,4。特征部位極大半徑圓形域的就是以Ri為圓心、ri為極大半徑得到人臉圖像的特征部位區(qū)域Ei。實驗結(jié)果如圖4所示。
圖4 人臉特征部位圓形域Fig. 4 Circular fields of facial feature parts
基于樣本塊的紋理合成圖像修復(fù)方法中,優(yōu)先級由置信度項和數(shù)據(jù)項計算得到。置信度是目標塊周圍像素信息可靠程度的度量,如圖5(a)所示的圓圈部分會有更高優(yōu)先級,會隨著圖像修復(fù)進程逐漸減小。數(shù)據(jù)項使得修復(fù)過程優(yōu)先沿著線性結(jié)構(gòu)的方向進行,如圖5(b)所示的圓圈部分為結(jié)構(gòu)方向,傳播過程進行到目標區(qū)域內(nèi)部,使修復(fù)后的圖像視覺上有更好的連通性。
置信度項C(p)表示待修復(fù)塊中已知像素信息的可靠程度,在圖像修復(fù)過程中會迅速衰減為0 而失去約束效力。對C(p)做指數(shù)ex變換,改變衰減趨勢使其在修復(fù)過程中有效約束優(yōu)先級。人臉圖像作為弱紋理圖像,數(shù)據(jù)項D(p)在圖像修復(fù)結(jié)果的結(jié)構(gòu)連通性上表現(xiàn)并不突出,為了使圖像結(jié)構(gòu)信息得到更高的關(guān)注,本文引入結(jié)構(gòu)梯度項α(p)。重新定義修復(fù)
圖6 不同算法的人臉修復(fù)結(jié)果對比Figure 6 Inpainting results comparison of face images by different algorithms
圖7 不同算法修復(fù)結(jié)果的局部放大對比Figure 7 Local magnification comparison of inpainting results by different methods
實驗的定量分析借助峰值信噪比(Peak Signal-to-Noise Ratio,PSNR)與結(jié)構(gòu)相似性(Structural Similarity Index,SSIM)作為評估指標。PSNR的計算方式如下:
其中均方誤差(Mean Square Error,MSE)是對比圖像的均方誤差,2n- 1= 255。PSNR值越大證明兩張圖像越相似。SSIM的計算如式(15):
其中:μ是均值,σ是方差,σxy是x和y的協(xié)方差。c1、c2是用來維持穩(wěn)定的常數(shù)。SSIM的取值范圍是0~1,越接近1 表示兩張圖像的結(jié)構(gòu)越相似。
采用PSNR 和SSIM 對圖6 中的5 張人臉圖像修復(fù)效果進行對比,如表1所示。
表1 不同算法修復(fù)結(jié)果的PSNR對比 單位:dB Tab. 1 Comparison of PSNR of inpainting results of different methods unit:dB
相比對比實驗,本文方法修復(fù)結(jié)果的PSNR 值均有最優(yōu)結(jié)果,提高了0.13~4.39 dB。SSIM值結(jié)果如圖8所示,本文算法對結(jié)構(gòu)相似性也有提高,最高值達到0.977。在科學(xué)角度論證了上本文方法相較對比方法有更好的修復(fù)效果。即使是修復(fù)效果不好的實驗結(jié)果(圖6 人臉1),本文方法在PSNR、SSIM以及視覺效果上均比對比表現(xiàn)優(yōu)異。
圖8 不同算法結(jié)果的SSIM對比Fig. 8 Comparison of SSIM of inpainting results of different methods
為了驗證本文算法的有效性,對100 張人臉圖像進行修復(fù)實驗及對比實驗。實驗結(jié)果的PSNR 對比如圖9 所示。其中柱狀圖是文獻[10,12-14]的方法的結(jié)果,折線圖是本文算法的結(jié)果。對100張人臉圖像,本文算法修復(fù)效果只有3%的情況下略遜于對比實驗。對于所有人臉圖像的修復(fù)結(jié)果,文獻[10,12-13]方法的PSNR 均值差異不大,分別為34.132 dB、34.354 dB、34.576 dB;文獻[14]相對有較好的修復(fù)效果,PSNR 均值為35.576 dB;而本文算法的PSNR 均值為36.795 dB,比對比方法高出1.219~2.663 dB,再一次論證本文算法在修復(fù)人臉圖像上的優(yōu)越性。
圖9 不同算法修復(fù)人臉圖像的PSNR對比Figure 9 PSNR comparison of different algorithms for inpainting face images
相對于對比實驗采用全局搜索的方案,本文方法在搜索匹配塊時是在特征部位極大圓形域內(nèi)搜索,所以在時間效率上有絕對的優(yōu)勢。為了驗證本文方法的時間效率優(yōu)越性,對圖5的各個實驗的耗時記錄如表2所示。由表可知,修復(fù)方法的時間消耗與圖像大小以及破損像素數(shù)緊密相關(guān)。文獻[12]的時間消耗最多,這是由于該方法將圖像梯度卷積后的散度作為數(shù)據(jù)項構(gòu)造結(jié)構(gòu)張量,在每次更新目標域后的數(shù)據(jù)項計算極度消耗時間。文獻[14]的方法由于加入梯度信息減小搜索域,實驗耗時會比文獻[10,12-13]的方法少。本文方法采用局部搜索匹配塊的方式不僅可以準確修復(fù)目標域,且速度更快。
表2 不同方法消耗時間對比Tab. 2 Comparison of time consumption of different methods
對100張人臉圖像的修復(fù)耗時箱型圖如圖10所示。本文算法在修復(fù)耗時上的優(yōu)越性非常明顯。對于所有人臉圖像的實驗耗時,文獻[10]的平均結(jié)果為36.918 s,文獻[12]為59.308 s,文獻[13]為52.688 s,文獻[14]為27.568 s;本文方法為18.003 s,時間消耗減少了34.7%~69.6%。以文獻[10]方法時間消耗作為基準,可以看出文獻[12-13]方法均是以時間消耗作為代價提高圖像修復(fù)精度的;文獻[14]方法在時間消耗上有所減少,但對于人臉圖像的修復(fù)效果并沒有非常突出;而本文算法在提升精度的同時有效減少時間消耗,具有最佳性能。
圖10 不同方法的耗時箱型圖對比Fig. 10 Box diagram of time consumption of different methods
由于優(yōu)先級計算的不精確性,對弱結(jié)構(gòu)特征的人臉圖像,基于樣本塊的紋理合成方法在修復(fù)時通常會出現(xiàn)結(jié)構(gòu)不連通和填充不合理的情況。鑒于此,本文在文獻[10]方法的基礎(chǔ)上,提出了一種基于特征部位圓形域的人臉圖像修復(fù)方法,通過引入人臉特征點定位的自適應(yīng)窗回歸模型定位特征點,確定人臉特征部位極大半徑圓形域,精確分割人臉圖像。對優(yōu)先級函數(shù)進行改進,引入結(jié)構(gòu)梯度項,使修復(fù)順序更為合理。此外,在搜索匹配塊的過程中,根據(jù)目標塊與各特征部位圓形域的相對位置,選擇更為精準的搜索域完成匹配塊搜索,減少時間消耗。實驗結(jié)果表明,本文方法在修復(fù)人臉圖像上,不僅可以保持結(jié)構(gòu)連通性,相比文獻[10,12-14]方法,視覺上更加合理,更接近真實人臉特征,且限定搜索域有效地縮短修復(fù)時間。