亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于最小二乘生成對抗網(wǎng)絡(luò)的人臉圖像修復(fù)研究

        2020-08-14 09:13:22謝卓然寸怡鵬姜德航
        科技視界 2020年22期
        關(guān)鍵詞:人臉損失函數(shù)

        謝卓然 寸怡鵬 姜德航 王 菲

        0 引言

        隨著計算機硬件的飛速發(fā)展,深度學(xué)習(xí)的出現(xiàn)使得計算機視覺課題中的許多難題迎刃而解。但即便在這種情形下,要想讓計算機學(xué)習(xí)并擁有修復(fù)一張圖片中的缺失部分的能力依然是一件很有挑戰(zhàn)性的事。而本文討論的圖像修復(fù)方法正是結(jié)合深度學(xué)習(xí)中的生成對抗網(wǎng)絡(luò)(Generative Adversarial Network,后稱GAN),并以最小二乘作為GAN 損失函數(shù)的一種圖像修復(fù)方法。我們稱這種網(wǎng)絡(luò)結(jié)構(gòu)為:最小二乘生成對抗網(wǎng)絡(luò)(LeatSquare GenerativeAdversarial Network,后稱 LSGAN)。

        1 現(xiàn)存圖像修復(fù)方法及問題

        1.1 Criminisi 修復(fù)

        Criminis 算法[1]的本質(zhì)是將圖像本身的紋理“復(fù)制粘貼”到破損區(qū)進行修復(fù)。

        圖 1 Criminisi 修復(fù)算法原理

        如圖1 所示為Criminis 算法修復(fù)殘缺圖片的過程:Ω是圖像中待修補的部分,則可以用?Ω 表示其邊界;Φ 為圖像剩余區(qū)域;算法在邊界先選一以p 點為中心的區(qū)域Ψp 作為當(dāng)前修復(fù)目標(biāo) ,再到已知的Φ 中搜索一與其紋理最為相似的Ψq,如圖1(b)所示。最后復(fù)制粘貼到破損部分進行修復(fù)形成圖1(c)的結(jié)果,以此類推。

        1.2 數(shù)據(jù)驅(qū)動修復(fù)

        數(shù)據(jù)驅(qū)動修復(fù)圖像[2]的方法不將圖像修補的素材局限在破損圖像本身,而是利用互聯(lián)網(wǎng)上豐富的圖片來解決Criminisi 算法中,不能在剩余圖像中找到與待修復(fù)區(qū)相匹配的紋理的問題。

        該方法首先從互聯(lián)網(wǎng)中挑選數(shù)百個與待修復(fù)圖像最為相似的圖片,并用Oliva A 等人[3]計算圖像匹配特征向量。接著根據(jù)上下文的匹配誤差,選擇最佳的補全位置。最后返回20 個最佳補全結(jié)果供用戶挑選。

        這種方法拋棄了Criminisi 算法中修補材料只能來源于破損圖片的局限性,為如何修復(fù)圖像提出了新思路。

        1.3 Context-Encoder 修復(fù)圖像

        繼數(shù)據(jù)驅(qū)動修復(fù)之后,Pathak D 等人[4]在2017 年CVPR(IEEE Conference on Computer Vision and Pattern Recognition,IEEE 國際計算機視覺與模式識別會議)上提出,利用卷積神經(jīng)網(wǎng)絡(luò)來學(xué)習(xí)圖像中的高級特征,再用這些特征來指導(dǎo)圖像破損區(qū)域的重新生成。其網(wǎng)絡(luò)結(jié)構(gòu)如圖2 所示。

        圖2 Pathak.D 等人提出的用修補圖像網(wǎng)絡(luò)

        Context-Encoder(后稱 CE)將 Encoder-Decoder 網(wǎng)絡(luò)和GAN(生成式對抗網(wǎng)絡(luò))相結(jié)合:兩個網(wǎng)絡(luò)各司其職:Encoder-Decoder 負(fù)責(zé)實現(xiàn)同時學(xué)習(xí)圖像特征以及生成修補素材的兩大功能,而GAN 部分則用來判斷修復(fù)結(jié)果的真實性。當(dāng)Encoder-Decoder 生成的素材與破損圖像無縫銜接,且GAN 也判斷不出圖像是否為人工合成時,認(rèn)為該方法達到最佳效果。

        與數(shù)據(jù)驅(qū)動法相比,這種方法不需要連接圖片庫,當(dāng)網(wǎng)絡(luò)訓(xùn)練好以后,它可以省去大量用于圖片搜索的時間。

        1.4 現(xiàn)存修復(fù)方法中存在的問題

        Criminisi 的算法只能很好的修復(fù)含大量重復(fù)性紋理的圖像,算法效率較低,且對其他大部分圖片都不適用。

        數(shù)據(jù)驅(qū)動算法允許引入更多的外部內(nèi)容對圖像進行修復(fù),但在修復(fù)過程中使用的特征仍然是較低級的特征,在測試場景與數(shù)據(jù)庫映像有顯著差異時很容易失敗。

        CE 算法利用深度卷積神經(jīng)網(wǎng)絡(luò),克服了前兩種算法中存在的問題。但由于其訓(xùn)練網(wǎng)絡(luò)時,直接將含有固定破損形狀的圖像作為神經(jīng)網(wǎng)絡(luò)的輸入,導(dǎo)致其只能很好的修復(fù)某特定類型的破損圖片。當(dāng)圖像破損部分與用來訓(xùn)練網(wǎng)絡(luò)的圖片的破損形狀不一致時,修復(fù)出的結(jié)果就很難令人滿意了。

        相比之下,本文所使用的方法在這一方面具有顯著優(yōu)勢:它與CE 同樣用到了GAN 網(wǎng)絡(luò)作為模型核心,但它在訓(xùn)練網(wǎng)絡(luò)時不需要加入帶掩碼的圖片,因此對于任意形狀的破損區(qū)域,也能獲得較好的修復(fù)結(jié)果。

        2 本文方法

        2.1 GAN 工作原理

        生成式對抗網(wǎng)絡(luò)的理念起初是在 Ian Goodfellow 等人的開創(chuàng)性論文“Generative Adversarial Nets”[5]中提出的。GAN 網(wǎng)絡(luò)原理結(jié)構(gòu)如圖3 所示。其中,G 是圖像生成網(wǎng)絡(luò),向他輸入一單位隨機向量z 以生成圖片G(z)。D 是判別網(wǎng)絡(luò),用于判斷圖片來源的真實性。其輸?shù)膱D像x 可以來源于現(xiàn)實環(huán)境或生成器G 偽造而成,最終輸出一結(jié)果D(x)表示圖像來源為真實圖像的概率。

        圖 3 GANs 結(jié)構(gòu)模型

        在訓(xùn)練過程中,D 和G 網(wǎng)絡(luò)之間形成動態(tài)博弈。生成網(wǎng)絡(luò)在一次次訓(xùn)練中逐漸增加偽造圖像在判別網(wǎng)絡(luò)處的得分。而判別網(wǎng)絡(luò)則希望將生成網(wǎng)絡(luò)合成的圖片和真實的自然圖像準(zhǔn)確區(qū)分開。我們將上述過程循環(huán)執(zhí)行足夠多的次數(shù),D(G(z))的值將趨近于50%,此時生成網(wǎng)絡(luò)合成的圖像已經(jīng)足夠自然,網(wǎng)絡(luò)訓(xùn)練完成。

        2.2 構(gòu)造LSGAN 修復(fù)網(wǎng)絡(luò)

        文獻[12-13]指出,原始GAN 訓(xùn)練過程很不穩(wěn)定,這很大程度上是GAN 使用交叉熵函數(shù)(Sigmoid cross entropy)作為判別器損失函數(shù)導(dǎo)致的。這將導(dǎo)致那些仍然遠(yuǎn)離真實數(shù)據(jù)的、但又在決策邊界被分類為真的假樣本停止繼續(xù)迭代,而這些樣本的梯度是梯度下降的決定方向。于是當(dāng)我們再用這些樣本反過來更新生成器的時候,訓(xùn)練過程就變得不穩(wěn)定了,容易發(fā)生梯度消失的現(xiàn)象,導(dǎo)致生成器生成的圖片質(zhì)量很差。

        Mao Xudong 等人[8]提出,用最小二乘函數(shù)替換交叉熵做判別器損的失函數(shù)可以很好解決這個問題。因為使用最小二乘函數(shù)的LSGAN 會對處于判別成真的那些遠(yuǎn)離決策邊界的樣本進行懲罰,把遠(yuǎn)離決策邊界的假樣本拖進決策邊界,有效避免梯度消失,從而提高生成圖片的質(zhì)量。

        圖4 展示了交叉熵和最小二乘損失函數(shù)的區(qū)別,可以看出GAN 采用的交叉熵函數(shù)右側(cè)存在大片梯度為0 的飽和區(qū)域,當(dāng)樣本落入這個范圍時,對生成器不再起到任何更新作用。反觀最小二乘函數(shù),只在1 個點發(fā)生飽和,這使LSGAN 的訓(xùn)練過程可以一直進行下去,生成比GAN 更清晰的結(jié)果。

        設(shè)原GAN 的目標(biāo)函數(shù)如下:

        其中,x~pdata表示圖像來源于真實數(shù)據(jù),z~pz來表示圖片是偽造生成。對生成器 G,希望 D(G(z))最大,或(1-D(G(z)))最小。而對于判別器D,則希望當(dāng)數(shù)據(jù)來源于真實圖像式 D(x)最大。

        改進后的損失函數(shù)如下:

        對上式 a,b,c 有:b-c=1 且 b-a=2。本文選取 a=0,b=1,c=1。

        與CE 修復(fù)圖像的方法不同,該網(wǎng)絡(luò)并不是直接將破損的圖片直接作為輸入來修復(fù),而是先用生成器生成一人臉圖像,將其對應(yīng)的破損區(qū)域剪裁下來并粘貼到破損圖上,用泊松編輯[9]做邊界融合,這使得本文的修復(fù)方法將不受到圖像破損形狀的約束,修復(fù)效果優(yōu)于CE。

        本文用到的LSGAN 圖像修復(fù)網(wǎng)絡(luò)結(jié)構(gòu)如圖5 所示。生成網(wǎng)絡(luò)G 的輸入是一個從[-1,1]之間的均勻分布繪制的隨機100維矢量,經(jīng)過數(shù)次微步幅卷積運算,最終生成64*64*3 的圖像。鑒別模型D 與生成模型G 呈現(xiàn)鏡像:輸入層是尺寸為64*64*3的圖像,隨后是一系列卷積運算,最后經(jīng)最小二乘函數(shù)輸出一個0 到1 之間的單值作為概率。

        此外,我們還在卷積神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)上做了一些調(diào)整,以提高樣本的質(zhì)量和收斂的速度,包括:

        圖4 交叉熵?fù)p失與最小二乘損失對比

        圖5 LSGAN 圖像修復(fù)網(wǎng)絡(luò)結(jié)構(gòu)

        (1)將所有池化層都改為帶步長卷積運算。這能讓網(wǎng)絡(luò)學(xué)習(xí)到自己去學(xué)習(xí)一種采樣方式。

        (2)用全局平均池化(global average pooling)替換全連接層,這雖然會影響收斂速度但是能增加模型的穩(wěn)定性。

        (3)使用批歸一化,使輸入到每一個節(jié)點的數(shù)據(jù)的平均值都為0,方差都為1,從而穩(wěn)定訓(xùn)練。這個方法能防止模型只輸出相同的樣本,又稱為Helvetica Scenario 現(xiàn)象,而這個現(xiàn)象是GAN 在實際使用中遇到的最大的問題。

        (4) 生成模型中除了輸出層的激活函數(shù)使用tanh 以外,其余激活函數(shù)都用ReLU。這能夠讓模型在訓(xùn)練中更快地達到飽和并且能對彩色圖片有更好的處理效果。

        (5)用Adam 優(yōu)化算法[7]代替梯度下降法。原始的隨機梯度下降算法在更新參數(shù)的過程中學(xué)習(xí)率始終保持不變,當(dāng)研究非穩(wěn)態(tài)或非線性問題時性能差。而Adam 算法結(jié)合了AdaGrad 和RMSProp 算法最優(yōu)的性能,能為不同的參數(shù)設(shè)計獨立的自適應(yīng)性學(xué)習(xí)率,調(diào)參過程簡單,默認(rèn)參數(shù)就可以處理絕大部分的問題。

        2.3 設(shè)置損失函數(shù)

        假定現(xiàn)在網(wǎng)絡(luò)生成了一個G(z)'能與破損圖像完美拼合。設(shè)圖片待修復(fù)區(qū)域為y,并用一個與y 相同大小二進制掩碼M來標(biāo)注破損區(qū)域,破損區(qū)域的值均為0,其余部分為1,則我們可以用下列算式來表示修補后的圖像。

        為使G(z)'生成的圖像與y 有高度相似性,我們定義兩個損失函數(shù)Lc與Lp,其中,環(huán)境損失Lc表示破損圖與生成器偽造圖像素材的匹配程度,先驗損失Lp表示生成人像的真實程度,有:

        損失越小,G 生成的圖像與殘缺圖像剩余的部分越相似,圖像越真實。但在實驗過程中,我們發(fā)現(xiàn)公式(5)的設(shè)定并不合理,因為它對破損圖像中的所有像素均做等同處理。實際上我們應(yīng)該使靠近破損區(qū)域的像素獲得更高的權(quán)重。因此,添加參數(shù)W 衡量待修復(fù)人像中像素對環(huán)境損失的影響大小:

        其中N(i)代表的是像素i 周圍的一個鄰組,它的絕對值則表示該鄰組的像素基數(shù)。經(jīng)試驗發(fā)現(xiàn),范數(shù)1 的效果比范數(shù)2更佳,因此我們重新定義環(huán)境損失為。

        現(xiàn)在整個修復(fù)圖像過程的損失函數(shù)L(z)可以表示。

        其中λ 為超參數(shù),當(dāng)λ 值大于1,說明先驗損失在圖像修補過程中更受重視;當(dāng)λ 的值小于1 時,則環(huán)境損失更受重視。本文選取λ=0.003。

        2.4 準(zhǔn)備工作

        實驗環(huán)境為基于Linux 內(nèi)核的Ubuntu 14 操作系統(tǒng),采用python3.5 下的Tensorflow 深度學(xué)習(xí)框架。我們把從CelebA(CelebFaces Attributes Dataset)上下載的202 599 張數(shù)據(jù)集放入一個單獨命名好的文件夾中,表明這個數(shù)據(jù)集是未經(jīng)加工的圖片。利用OpenFace 的排列工具,將所有圖像統(tǒng)一處理成64×64像素的大小。再將這些圖片打包分為訓(xùn)練集、測試集和驗證集。用這些素材訓(xùn)練LSGAN 生成人臉以及修復(fù)圖像,運行50 個周期,每個周期2 000 次,監(jiān)控圖像修復(fù)過程中的參數(shù)變化,并將結(jié)果與現(xiàn)有的深度學(xué)習(xí)修復(fù)方法相比較,分析不同的網(wǎng)絡(luò)的性能差異。

        3 結(jié)果展示

        3.1 修復(fù)過程

        經(jīng)過5 個周期后,修復(fù)效果如圖6 所示。

        圖6 LSGAN 修復(fù)破損人臉圖像的效果

        其生成模型生成人臉的過程,以及對應(yīng)損失值的變化分別如圖7 和圖8 所示??梢钥闯?,在最初250 次損失下降最快,200 個周期以內(nèi)損失值降為最初損失的一半(紅色虛線標(biāo)記)。1 個周期之后,損失就已經(jīng)足夠小了。

        3.2 質(zhì)量分析

        表1 質(zhì)量評價表

        將本文對中心區(qū)域破損圖像的修復(fù)效果與同樣運用了GAN 結(jié)構(gòu)的DCGAN 和CE 方法相比,結(jié)果如圖9 所示。表1 展示了每1 000 次修復(fù)結(jié)果中的平均峰值信噪比PSNR[10]和結(jié)構(gòu)相似性SSIM[11]來定量評價各模型的修復(fù)效果。PSNR 是最普遍和使用最為廣泛的一種圖像客觀評價指標(biāo),然而它是基于對應(yīng)像素點間的誤差,即基于誤差敏感的圖像質(zhì)量評價。SSIM 可以分別從亮度、對比度、結(jié)構(gòu)三方面度量圖像相似性。這兩種指標(biāo)的數(shù)值越大,表示效果越好。

        為保證結(jié)果客觀,除中心區(qū)域破損的圖像修復(fù)外,我們也展示了LSGAN 模型對一些特殊圖像的修復(fù),包括戴眼鏡的人像,黑白人像,半張人臉圖像,以及局部破損人像等,并在圖10中展示了一些較理想的修復(fù)結(jié)果??梢钥闯鲈趹?yīng)對不同類型的修復(fù)任務(wù)時,本文方法也能提供讓人滿意的效果。

        4 結(jié)論與展望

        本文提出了一種基于最小二乘生成對抗網(wǎng)絡(luò)的圖像修補方法。與傳統(tǒng)的基于紋理的修復(fù)方法相比,這種方法彌補了大面積缺失的圖像的復(fù)原中找不到匹配紋理的問題;與數(shù)據(jù)驅(qū)動的方法相比,該方法不需要儲存數(shù)據(jù)庫,且運算速度快;與同樣結(jié)合生成對抗網(wǎng)絡(luò)的CE 算法和DCGAN 相比,由于采用最小二乘損失,這種方法的訓(xùn)練過程穩(wěn)定,判別器分類更加嚴(yán)格,因此生成的圖片質(zhì)量更好。本文在訓(xùn)練生成網(wǎng)絡(luò)時,無需連同遮擋圖像的掩碼一起訓(xùn)練,能夠很好的解決任意破損區(qū)域的修復(fù),這是CE 做不到的。從對中心區(qū)域破損的人臉修復(fù)實驗的結(jié)果來看,本文方法具有更高的峰值信噪比和結(jié)構(gòu)相似度,修復(fù)效果更自然。

        圖7 LSGAN 生成圖像的過程

        圖8 損失值變化曲線(左右分別對應(yīng)圖6 女性人臉和男性人臉)

        圖9 不同模型修復(fù)效果比較

        圖10 圖片類型或破損區(qū)域不同的圖像修復(fù)結(jié)果

        猜你喜歡
        人臉損失函數(shù)
        少問一句,損失千金
        二次函數(shù)
        有特點的人臉
        第3講 “函數(shù)”復(fù)習(xí)精講
        胖胖損失了多少元
        二次函數(shù)
        函數(shù)備考精講
        玉米抽穗前倒伏怎么辦?怎么減少損失?
        三國漫——人臉解鎖
        動漫星空(2018年9期)2018-10-26 01:17:14
        一般自由碰撞的最大動能損失
        色综合久久无码五十路人妻| 日韩精品一区二区三区四区五区六| 国产精品一区一区三区| 日本熟妇另类一区二区三区| 日本高清视频xxxxx| 狠干狠爱无码区| 亚洲区精品久久一区二区三区女同| 亚洲精品国产一区二区免费视频 | 东北少妇不带套对白| 亚洲国产精品久久久久久久| 无码啪啪人妻| 丝袜美腿国产一区二区| 手机福利视频| 国产精品第一二三区久久蜜芽| 国产成人精品一区二免费网站| 一区二区三区亚洲视频| 无码国产色欲xxxx视频| 久久亚洲国产精品成人av秋霞| 91色婷婷成人精品亚洲| 国产婷婷成人久久av免费| 人人妻人人狠人人爽| 日韩www视频| 亚洲色图视频在线观看,| 日韩精品久久中文字幕| 国产综合久久久久| 亚洲一区二区在线视频播放 | 久久2020精品免费网站| 99riav国产精品视频| 亚洲欧美日韩综合久久| 尤物yw午夜国产精品视频| 亚洲精品国产一区二区免费视频| 国产精品中文久久久久久久 | 好吊妞人成免费视频观看| 中文字幕精品乱码一二三区| 成年美女黄网站色大免费视频| 色伦专区97中文字幕| 国内精品91久久久久| 国产亚洲熟妇在线视频| 高潮又爽又无遮挡又免费| 国产精品福利小视频| 国产一区二区资源在线观看|