本發(fā)明涉及圖像重建方法領(lǐng)域,具體涉及一種基于生成對抗網(wǎng)絡(luò)和亞像素卷積的人臉超分辨率重建方法。
背景技術(shù):
在圖像領(lǐng)域,圖像的分辨率一直是表征圖像觀測水平的主要技術(shù)指標之一。圖像的分辨率通常是指圖像處理中的空間分辨率。圖像的分辨率越高,一定數(shù)量的圖像像素所代表的實際場景的面積就越小,圖像能夠反映的場景細節(jié)就越精細,越能提供豐富的信息。圖像超分辨率重建技術(shù)有可能使圖像實現(xiàn)從檢出水平向識別水平的轉(zhuǎn)化,或更進一步實現(xiàn)向細辨水平的轉(zhuǎn)化。圖像超分辨率重建技術(shù)可以提高圖像的識別能力和識別精度。
現(xiàn)有很多安全部門、敏感公共場所、交通要道、居民小區(qū)等都配備了全天候?qū)崟r視頻監(jiān)控系統(tǒng),然而,由于受到監(jiān)控攝像頭分辨率性能、監(jiān)控環(huán)境光照條件、目標距離等因素影響,監(jiān)控系統(tǒng)所獲取的視頻圖像可能是低質(zhì)量的圖像,人臉圖像的分辨率偏低,人臉面部細節(jié)丟失,影響進一步的識別問題。因此,如何針對低分辨率人臉圖像,研究高效的超分辨率重建技術(shù),提高圖像質(zhì)量,提高低分辨率人臉的識別率,成為問題的關(guān)鍵。
單圖像輸入和多圖像輸入是超分辨率重建面臨的兩種不同情況。多圖像輸入意味著輸入的是一系列圖像或視頻的一部分,這些圖像間有著不同的像素平移,每幅圖像都包含著高度相關(guān)的信息可以用于超分辨率重建一幅圖像。而實際中,很多情況沒有足夠的相關(guān)輸入圖像來源,僅有一副人臉圖像輸入。因此,人臉超分辨重建技術(shù)旨在尋求實際輸入人臉數(shù)據(jù)中的內(nèi)在信息,從一張低分辨率圖像恢復出丟失的高分辨率信息,得到相對應的高分辨率人臉圖像。
人臉超分辨率重建方法可以分為三類:基于插值的方法、基于重建的方法和基于學習的方法。近年來,深度學習在計算機視覺中取得了巨大的成功。ianj.goodfellow的2014年的《generativeadversativenets》第一次提出了生成對抗網(wǎng)絡(luò)(gan)模型,論文提出了一個新的框架,可以利用對抗過程估計生成模型,相比之前的算法,可以認為是在無監(jiān)督表示學習上一個突破?;谏蓪咕W(wǎng)絡(luò)模型的人臉超分辨率重建方法,可以利用判別網(wǎng)絡(luò)給出的判別信息來確認生成的高分辨率圖像是否準確。但是,該方法通常使用反卷積層來完成輸入圖像的放大過程,由于反卷積層自身性質(zhì),生成圖像會存在棋盤效應,影響圖像質(zhì)量。一種解決辦法是充分挖掘低分辨率圖像原始信息,利用學習到的像素值來重建圖像,可解決反卷積所產(chǎn)生的棋盤狀噪聲。但是這類方法使用了圖像逐像素求差的損失函數(shù),無法感知圖像語義方向的差異信息,特別是對人臉這種具有鮮明特征的圖像,不能產(chǎn)生很好的人臉重建效果。
技術(shù)實現(xiàn)要素:
本發(fā)明為了解決上述技術(shù)問題提供一種基于生成對抗網(wǎng)絡(luò)和亞像素卷積的人臉超分辨率重建方法。
本發(fā)明通過下述技術(shù)方案實現(xiàn):
基于生成對抗網(wǎng)絡(luò)和亞像素卷積的人臉超分辨率重建方法,包括以下步驟:
a、制作低分辨率人臉圖像與對應高分辨率人臉圖像訓練集;
b、構(gòu)建用于訓練的生成對抗網(wǎng)絡(luò)模型,在生成網(wǎng)絡(luò)中加入亞像素卷積層,引入包含特征損失的加權(quán)型損失函數(shù);
c、將步驟a得到的訓練集依次輸入生成對抗網(wǎng)絡(luò)模型中進行模型訓練,調(diào)整參數(shù),達到收斂;
d、將待處理的圖像進行預處理,輸入步驟c得到的對抗模型得到超分辨率重建后的高分辨率圖像。
本方法通過構(gòu)建生成模型和判別模型,生成網(wǎng)絡(luò)中加入亞像素卷積層來實現(xiàn)低分辨率人臉圖像特征到高分辨率人臉圖像的映射,利用生成對抗網(wǎng)絡(luò)模型的對抗特性,結(jié)合生成圖像特征的損失信息,訓練達到收斂。本方案采用生成對抗網(wǎng)絡(luò)模型結(jié)合亞像素卷積層的方法,引入包含特征損失的加權(quán)型損失函數(shù),實現(xiàn)圖像語義方向的差異信息的感知,保持特征不變性,特別是在對人臉這種具有鮮明特征的圖像,重建效果好。將預處理低分辨率人臉圖像輸入該生成模型,可生成具有人臉輪廓更清晰、細節(jié)更具體、特征不變性的高分辨率對應圖像,提升了人臉識別準確率,有更好的人臉超分辨率重建效果。
作為優(yōu)選,步驟a具體為:
a1、獲取人臉數(shù)據(jù)集并判別圖像質(zhì)量;
a2、對人臉數(shù)據(jù)集中的每張圖片進行人臉檢測和關(guān)鍵點檢測,通過人臉關(guān)鍵點對齊算法對圖片進行處理得到尺寸歸一化的高分辨率人臉圖像ihr;
a3、對高分辨率人臉圖像ihr進行高斯濾波,然后下采樣得到低分辨率圖像ilr。
進一步的,所述低分辨率圖像ilr的計算方法為:
其中,
k由圖像i的k的鄰域中的點計算得到,r為降采樣比例。
通常,ihr和ilr都有c個顏色通道,因此,高分辨率人臉圖像ihr和低分辨率圖像ilr的實際張量大小分別為rh×rw×c和h×w×c。處理后的低分辨率人臉圖像集作為生成對抗網(wǎng)絡(luò)模型中的生成模型輸入數(shù)據(jù)。
作為優(yōu)選,步驟b具體為:
b1、由多個神經(jīng)網(wǎng)絡(luò)卷積層構(gòu)建生成網(wǎng)絡(luò)并加入亞像素卷積層完成映射;
b2、疊加多個卷積層和全連接層搭建判別網(wǎng)絡(luò),實現(xiàn)生成對抗網(wǎng)絡(luò)模型的損失函數(shù),計算反向梯度,連接生成網(wǎng)絡(luò)與判別網(wǎng)絡(luò)組成生成對抗網(wǎng)絡(luò)模型。
進一步的,構(gòu)建生成網(wǎng)絡(luò)為搭建l–1層卷積網(wǎng)絡(luò),每一層輸入圖片大小與輸出大小相同,其中,l為生成網(wǎng)絡(luò)的網(wǎng)絡(luò)深度,對于生成網(wǎng)絡(luò)的前l(fā)–1層,表示為:
fl(ilr;w1:l;b1:l)=φ(wl*fl-1(ilr)+bl),
其中,wl、bl分別是神經(jīng)網(wǎng)絡(luò)中可學習的權(quán)重值和偏移值,l表示層數(shù),l∈(1,l-1);wl是2d的大小為nl-1×nl×kl×kl的卷積核,nl是第l層的特征層數(shù),n0=c;kl是第l層的卷積核尺寸,bl是長度為nl的向量,φ為非線性函數(shù);
亞像素卷積層的實現(xiàn)過程為:
其中wl是大小為nl-1×r2c×kl×kl的權(quán)重值,
所述卷積層的層數(shù)為m,全連接層的為2層,其中,m>l。
所述損失函數(shù)包括生成網(wǎng)絡(luò)的損失函數(shù),所述生成網(wǎng)絡(luò)的損失函數(shù)等于特征損失函數(shù)與相對損失函數(shù)的加權(quán)和,其中,
特征損失函數(shù)為:
其中,
式中,ihr指訓練集中的高分辨率圖像,isr指重建的高分辨率圖像,x,y為ihr和isr中的像素點坐標,fsr、fhr為經(jīng)過判別網(wǎng)絡(luò)m+1層所提取到的人臉特征,n為特征向量的維度;
相對損失函數(shù)為:
其中,
所述損失函數(shù)包括判別網(wǎng)絡(luò)的損失函數(shù),所述判別網(wǎng)絡(luò)的損失函數(shù)為原始高分辨率人臉圖像與生成高分辨率人臉圖像判別結(jié)果的交叉熵損失函數(shù)之和,其中,交叉熵損失函數(shù)為:
式中,zy表示真實結(jié)果,zj表示經(jīng)過判別網(wǎng)絡(luò)得到的結(jié)果,m為判別結(jié)果個數(shù)。
所述步驟c的具體過程為,
預訓練:將步驟a得到的訓練集的高分辨率人臉圖像依次輸入到對抗模型的判別網(wǎng)絡(luò)中,不斷迭代,使判別網(wǎng)絡(luò)具備基本的判別能力;
正式訓練:采用訓練集中成對的人臉圖像,將低分辨率人臉圖像輸入到對抗模型的生成網(wǎng)絡(luò)中,得到重建結(jié)果,再將重建結(jié)果與真實高分辨率圖像分別輸入判別網(wǎng)絡(luò),將判別信息反向傳輸至生成網(wǎng)絡(luò)。
所述步驟d具體為,
將待處理的圖片進行人臉檢測及關(guān)鍵點檢測,通過人臉關(guān)鍵點對齊算法對圖片進行處理,得到尺寸歸一化的低分辨率人臉圖像,并將該圖片作為生成網(wǎng)絡(luò)的輸入,即得超分辨率重建后的高分辨率圖像。
本發(fā)明與現(xiàn)有技術(shù)相比,具有如下的優(yōu)點和有益效果:
本方法通過構(gòu)建生成模型和判別模型,生成網(wǎng)絡(luò)中加入亞像素卷積層來實現(xiàn)低分辨率人臉圖像特征到高分辨率人臉圖像的映射,利用生成對抗網(wǎng)絡(luò)的對抗特性,結(jié)合生成圖像特征的損失信息,訓練達到收斂。將預處理低分辨率人臉圖像輸入該生成模型,可生成具有人臉輪廓更清晰、細節(jié)更具體、特征不變性的高分辨率對應圖像,提升了人臉識別準確率,有更好的人臉超分辨率重建效果。
附圖說明
此處所說明的附圖用來提供對本發(fā)明實施例的進一步理解,構(gòu)成本申請的一部分,并不構(gòu)成對本發(fā)明實施例的限定。在附圖中:
圖1為原始高清分辨率人臉圖像與細節(jié)放大圖。
圖2為低分辨率圖像雙三次插值的結(jié)果與細節(jié)放大圖。
圖3為基于反卷積層的生成對抗網(wǎng)絡(luò)模型的重建結(jié)果與細節(jié)放大圖。
圖4為本發(fā)明重建結(jié)果圖。
具體實施方式
為使本發(fā)明的目的、技術(shù)方案和優(yōu)點更加清楚明白,下面結(jié)合實施例和附圖,對本發(fā)明作進一步的詳細說明,本發(fā)明的示意性實施方式及其說明僅用于解釋本發(fā)明,并不作為對本發(fā)明的限定。
實施例
基于生成對抗網(wǎng)絡(luò)和亞像素卷積的人臉超分辨率重建方法,包括以下步驟:
a、利用常用的公開人臉圖像數(shù)據(jù)集,進行預處理,制作低分辨率人臉圖像與對應高分辨率人臉圖像訓練集;
b、構(gòu)建用于訓練的生成對抗網(wǎng)絡(luò)模型,在生成網(wǎng)絡(luò)中加入亞像素卷積層來實現(xiàn)超分辨率圖像生成并引入包含特征損失的加權(quán)型損失函數(shù);
c、將步驟a得到的訓練集依次輸入生成對抗網(wǎng)絡(luò)模型中進行模型訓練,調(diào)整參數(shù),達到收斂;
d、將待處理的低分辨率人臉圖像進行預處理,輸入步驟c得到的對抗模型得到超分辨率重建后的高分辨率圖像。
現(xiàn)根據(jù)上述原理公開具體實施方式。
步驟a制作訓練集的具體實施方案為:
a1、獲取公開的大規(guī)模人臉數(shù)據(jù)集,如webface、asianface、celeba,判別所得到的人臉圖片的圖像質(zhì)量,保留高分辨率圖像留作后續(xù)處理;
a2、對人臉數(shù)據(jù)集中的每張圖片進行人臉檢測和關(guān)鍵點檢測,通過人臉關(guān)鍵點對齊算法對圖片進行旋轉(zhuǎn)、縮放、裁剪等處理,得到尺寸歸一化的高分辨率人臉圖像ihr,組成生成對抗網(wǎng)絡(luò)模型中的真實數(shù)據(jù)訓練集;
a3、對高分辨率人臉圖像ihr進行高斯濾波,來模擬照相機的點散射函數(shù),然后下采樣得到低分辨率圖像ilr,其中采樣系數(shù)為r,即r為超分辨率重建的放大比率。
低分辨率圖像ilr的計算方法為:
其中,
通常,ihr和ilr都有c個顏色通道,因此,高分辨率人臉圖像ihr和低分辨率圖像ilr的實際張量大小分別為rh×rw×c和h×w×c。處理后的低分辨率人臉圖像集作為生成對抗網(wǎng)絡(luò)模型中的生成模型輸入數(shù)據(jù)。
步驟b具體包括以下過程:
b1、由多個神經(jīng)網(wǎng)絡(luò)卷積層構(gòu)建生成網(wǎng)絡(luò)并加入亞像素卷積層完成映射;
b2、疊加多個卷積層和全連接層搭建判別網(wǎng)絡(luò),實現(xiàn)生成對抗網(wǎng)絡(luò)模型的損失函數(shù),計算反向梯度,連接生成網(wǎng)絡(luò)與判別網(wǎng)絡(luò)組成生成對抗網(wǎng)絡(luò)模型。
構(gòu)建生成網(wǎng)絡(luò)實質(zhì)為搭建l–1層卷積網(wǎng)絡(luò),遵循保持每一層輸入圖片大小與輸出大小不變的原則,其中l(wèi)為可調(diào)參數(shù),為生成網(wǎng)絡(luò)的網(wǎng)絡(luò)深度,可根據(jù)訓練數(shù)據(jù)集的大小及模型實時性需求調(diào)整。
對于生成網(wǎng)絡(luò)第1層,可表示如下:
f1(ilr;w1;b1)=φ(w1*ilr+b1),
則對于生成網(wǎng)絡(luò)前l(fā)–1層,可表示如下:
fl(ilr;w1:l;b1:l)=φ(w1*fl-1(ilr)+bl),
其中,wl、bl分別是神經(jīng)網(wǎng)絡(luò)中可學習的權(quán)重值和偏移值,l表示層數(shù),l∈(1,l-1)。wl是2d的大小為nl-1×nl×kl×kl的卷積核,nl是第l層的特征層數(shù),n0=c;kl是第l層的卷積核尺寸,bl是長度為nl的向量,φ為非線性函數(shù)即激活函數(shù)。
亞像素卷積層的實現(xiàn)過程可表示如下:
其中wl是大小為nl-1×r2c×kl×kl的權(quán)重值,
即:
亞像素卷積層沒有包含非線性操作,直接利用低分辨率圖像的特征圖中的數(shù)據(jù)產(chǎn)生高分辨率圖像。而傳統(tǒng)插值方法實現(xiàn)尺寸放大操作,卷積層的計算發(fā)生在高分辨率空間,會增長r2倍的計算量。如果采用反卷積網(wǎng)絡(luò),每一個輸入像素都會與反卷積核元素智能相乘相加,疊加得到最終結(jié)果,計算更加復雜。因為反卷積核在滑動過程中,存在跨度r,結(jié)果中部分像素點上比其他位置累加了更多的次數(shù),容易產(chǎn)生棋盤狀噪聲,影響圖像邊緣及細節(jié)信息。本發(fā)明中采用亞像素卷積層在保證速度的同時,有更好的圖像超分辨率生成效果。
判別網(wǎng)絡(luò)是生成對抗網(wǎng)絡(luò)的重要組成部分,在后續(xù)訓練過程中起到重要的指導作用。設(shè)計原則是判別網(wǎng)絡(luò)的學習能力必須強于生成網(wǎng)絡(luò),傳遞給生成網(wǎng)絡(luò)足夠的梯度信息來促進生成網(wǎng)絡(luò)的優(yōu)化。本發(fā)明中級聯(lián)m個卷積層,m>l,之后連接兩個全連接層。卷積層作為特征層,用來表征判別網(wǎng)絡(luò)學習到的輸入人臉圖像的抽象特征,特征層后的全連接層作為判別網(wǎng)絡(luò)的分類層,得出判別結(jié)果。
生成對抗網(wǎng)絡(luò)模型的損失函數(shù)是指示整個訓練過程的指標,對生成網(wǎng)絡(luò)的表現(xiàn)至關(guān)重要,其包括生成網(wǎng)絡(luò)的損失函數(shù)和判別網(wǎng)絡(luò)的損失函數(shù)。
損失函數(shù)通常定義為:給定的訓練集中包含高分辨率圖像
但是,使用求逐像素均方差作為損失函數(shù),計算僅用對應像素作為參考,無法得到兩個圖像之間在語義上的差異。本發(fā)明提出加權(quán)型損失函數(shù),即生成網(wǎng)絡(luò)的損失函數(shù)等于特征損失函數(shù)與相對損失函數(shù)的加權(quán)和。特征損失函數(shù)通過計算生成高分辨率圖像特征與實際圖像特征的均方誤差得到,表示圖像的語義差異大小。本發(fā)明中使用的特征損失函數(shù)定義如下:
其中,
式中,ihr指訓練集中的高分辨率圖像,isr指重建的高分辨率圖像,x,y為ihr和isr中的像素點坐標,fsr、fhr為經(jīng)過判別網(wǎng)絡(luò)m+1層所提取到的人臉特征,n為特征向量的維度;
相對損失函數(shù)為:
其中,
因此,生成網(wǎng)絡(luò)的加權(quán)型損失函數(shù)可表示為:
其中,λ為可變參數(shù),用于調(diào)節(jié)相對損失函數(shù)的影響比例。本發(fā)明中針對生成網(wǎng)絡(luò)的加權(quán)型損失函數(shù)既考慮了人臉圖像的特征層次的語義差異信息,又結(jié)合了生成對抗網(wǎng)絡(luò)模型對重建圖像的全局判別信息,進而保證了人臉重建圖像的特征不變性。
所述判別網(wǎng)絡(luò)的損失函數(shù)為原始高分辨率人臉圖像與生成高分辨率人臉圖像判別結(jié)果的交叉熵損失函數(shù)之和,其中,交叉熵損失函數(shù)為:
式中,zy表示真實結(jié)果,zj表示經(jīng)過判別網(wǎng)絡(luò)得到的結(jié)果,m為判別結(jié)果個數(shù)。
步驟c中的模型訓練過程可基于谷歌開源的tensorflow深度學習平臺來進行。為了使得判別網(wǎng)絡(luò)達到最佳效果,首先對判別網(wǎng)絡(luò)單獨進行預訓練過程,具體為將步驟a中得到的訓練集中的高分辨率人臉圖像分批次輸入判別網(wǎng)絡(luò)中,不斷迭代,達到預期效果,使得判別網(wǎng)絡(luò)具備基本的判別能力。正式訓練過程采用訓練集中成對的人臉圖像,將低分辨率人臉圖像輸入生成網(wǎng)絡(luò),得到重建結(jié)果,再將重建結(jié)果與真實高分辨率圖像分別輸入判別網(wǎng)絡(luò),將判別信息反向傳輸至生成網(wǎng)絡(luò)。如上所述,通過指定迭代次數(shù)來進行網(wǎng)絡(luò)參數(shù)更新,同時,可以預留部分圖像對,在訓練過程中進行校驗操作,隨時觀測網(wǎng)絡(luò)的學習效果。
步驟d中,對需要超分辨重建的圖片進行人臉檢測及關(guān)鍵點檢測,通過人臉關(guān)鍵點對齊算法,對圖片進行旋轉(zhuǎn)、縮放、裁剪等操作,得到尺寸歸一化的低分辨率人臉圖像。將該圖像作為生成網(wǎng)絡(luò)的輸入,得到的輸出即為超分辨率重建后的高分辨率圖像。如圖1至圖4所示,是放大比率r=4的超分辨率重建效果圖。其中圖1為原始高分辨率人臉圖像及細節(jié)放大圖,圖2為雙三次插值結(jié)果及細節(jié)放大圖,圖3為基于反卷積的生成對抗網(wǎng)絡(luò)模型的重建結(jié)果及細節(jié)放大圖,圖4為本發(fā)明的人臉超分辨率重建結(jié)果及細節(jié)放大圖,由圖可得,本發(fā)明算法重建出的圖像在邊緣細節(jié)方面都有更好的效果,人臉特征更明顯,更接近于原始高分辨率人臉圖像。
以上所述的具體實施方式,對本發(fā)明的目的、技術(shù)方案和有益效果進行了進一步詳細說明,所應理解的是,以上所述僅為本發(fā)明的具體實施方式而已,并不用于限定本發(fā)明的保護范圍,凡在本發(fā)明的精神和原則之內(nèi),所做的任何修改、等同替換、改進等,均應包含在本發(fā)明的保護范圍之內(nèi)。