楊建華
(安徽開放大學(xué),合肥 230022)
2020年初,為應(yīng)對新冠肺炎疫情,國家開放大學(xué)招生管理系統(tǒng)增設(shè)學(xué)員線上、線下報(bào)名功能。學(xué)員可以自己上傳個人人臉、身份證、畢業(yè)證書等照片,也可以通過身份證讀卡器獲取學(xué)員人臉照片。但學(xué)員上傳的照片經(jīng)常存在分辨率過低、關(guān)鍵部分不清晰,給工作人員的辨識帶來困難;身份證讀卡器獲取的身份證中人臉圖像的大小為:寬102像素、高126像素,在后期用此圖像與學(xué)員本人進(jìn)行人臉識別匹配時,會因圖像的分辨率過低導(dǎo)致人臉識別效果不佳。通常情況下,當(dāng)人們遇到低分辨率的小圖像時,一般是采用一些圖像處理軟件對其放大,但這樣會造成圖像失真,如圖像邊緣出現(xiàn)鋸齒狀,圖像模糊。為此,本文引入基于深度學(xué)習(xí)的單張圖像超分辨率(Single Image Super-Resolution,SISR)重建技術(shù),來解決上述問題。
圖像超分辨率(Image Super-Resolution,SR)重建技術(shù),是指利用一張或多張低分辨率(Low Resolution,SR)圖像,通過軟件處理,生成一張具有較高分辨率(High Resolution,HR)圖像的技術(shù)。在安保監(jiān)控、衛(wèi)星圖像遙感、顯微成像、數(shù)字高清、視頻復(fù)原和醫(yī)學(xué)影像等領(lǐng)域都有非常重要的實(shí)用價(jià)值。與通過升級硬件設(shè)備的成像精度來提高圖像分辨率相比,SR技術(shù)具有成本低、速度快的明顯優(yōu)勢。
該技術(shù)首次由Harris與Goodman于20世紀(jì)60年代提出,采取的方法是在單幀圖像上進(jìn)行線性插值或樣條函數(shù)插值,雖然能提高單幅圖像的分辨率,但圖像中的很多高頻細(xì)節(jié)易丟失。這一時期圖像超分辨率重建技術(shù)主要停留在理論研究階段,沒有具體實(shí)現(xiàn)方法。直到1984年,由RY Tsai與TS Huang利用多幀低分辨率圖像通過傅里葉變換,得到單張高分辨率圖像,這是科研人員第一次利用軟件技術(shù)將圖像超分重建思想變成現(xiàn)實(shí),標(biāo)志著圖像超分辨率重建進(jìn)入了實(shí)踐發(fā)展時期。
2006年,隨著Hinton等人提出了神經(jīng)網(wǎng)絡(luò)中的深度學(xué)習(xí)概念,其核心卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network,CNN)在計(jì)算機(jī)視覺領(lǐng)域取得極快發(fā)展,一系列以卷經(jīng)神經(jīng)網(wǎng)絡(luò)為基礎(chǔ)的網(wǎng)絡(luò)模型不斷被提出,如: AlextNet、GoogleNet、VGGNet、ResNet等,網(wǎng)絡(luò)的學(xué)習(xí)能力也由弱變強(qiáng),在圖像分類、檢測方面取得了越來越優(yōu)秀的成績。很自然地,人們想到可以用訓(xùn)練深度卷積神經(jīng)網(wǎng)絡(luò)來學(xué)習(xí)低分辨率圖像與高分辨率圖像之間的映射關(guān)系。2014年,香港中文大學(xué)的Dong等人最先提出基于CNN的圖像超分模型(Super-Resolution Convolutional Neural Networks, SRCNN),該網(wǎng)絡(luò)模型由特征提取層、非線性映射層、重建層三層構(gòu)成,取得了優(yōu)于傳統(tǒng)方法的效果,奠定了基于深度學(xué)習(xí)的圖像超分辨重建技術(shù)在圖像超分研究領(lǐng)域的主流地位。
單張圖像超分辨率重建技術(shù)早期主要研究方法有三類,基于插值的方法、基于模型重建的方法、基于機(jī)器學(xué)習(xí)的方法。當(dāng)前以基于深度學(xué)習(xí)的單張圖像超分辨率重建技術(shù)為主流研究方向,按使用的網(wǎng)絡(luò)類型可細(xì)分為基于標(biāo)準(zhǔn)的卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)SR模型、基于殘差的網(wǎng)絡(luò)結(jié)構(gòu)SR模型、基于生成對抗 (Generative Adversarial Networks,GAN)的網(wǎng)絡(luò)結(jié)構(gòu)SR模型。
以標(biāo)準(zhǔn)卷積神經(jīng)網(wǎng)絡(luò)(CNN)為基礎(chǔ)的模型主要有SRCNN網(wǎng)絡(luò)、快速超分辨率卷積神經(jīng)網(wǎng)絡(luò)(Fast Super-Resolution Convolutional Neural Networks, FSRCNN)、高效的亞像素卷積神經(jīng)網(wǎng)絡(luò)(Efficient Sub-Pixel Convolutional Neural Network,ESPCN)三種網(wǎng)絡(luò)模型。
以殘差神經(jīng)網(wǎng)絡(luò)(ResNet)為基礎(chǔ)的模型主要有深度超分辨率卷積神經(jīng)網(wǎng)絡(luò)、用于圖像超分辨率的深度遞歸卷積網(wǎng)絡(luò)、拉普拉斯金字塔超分辨率網(wǎng)絡(luò)(Laplacian Pyramid Super-Resolution Networks ,LapSRN)、增強(qiáng)深度超分辨率重建網(wǎng)絡(luò)(Enhanced Deep Super-Resolution Network , EDSR)、級聯(lián)殘差超分辨率網(wǎng)絡(luò)、殘差信道注意網(wǎng)絡(luò)等網(wǎng)絡(luò)模型。
以生成對抗網(wǎng)絡(luò)(GAN)為基礎(chǔ)的模型主要有超分辨率生成對抗網(wǎng)絡(luò)模型、具有特征識別的單圖像超分辨率網(wǎng)絡(luò)模型、雙GAN網(wǎng)絡(luò)模型。
在上述諸多網(wǎng)絡(luò)模型中,比較經(jīng)典與主流的模型有FSRCNN、ESPCN、LapSRN、EDSR四種。如在開源的計(jì)算機(jī)視覺庫OpenCV(Open Source Computer Vision Library)中,也提供了這四種訓(xùn)練好的模型調(diào)用接口,用于實(shí)現(xiàn)基于深度學(xué)習(xí)的圖像超分,能對圖像進(jìn)行2~4倍的超分。
1.FSRCNN模型
FSRCNN模型是2016年由香港中文大學(xué)的湯曉鷗團(tuán)隊(duì)提出,它是對原SRCNN模型的改進(jìn)。SRCNN模型是深度學(xué)習(xí)在圖像超分辨重建上的首次應(yīng)用,其網(wǎng)絡(luò)結(jié)構(gòu)如圖1所示,網(wǎng)絡(luò)使用Timofte數(shù)據(jù)集(包含91幅圖像)和ImageNet大數(shù)據(jù)集進(jìn)行訓(xùn)練,主要過程為:
圖1 SRCNN模型的網(wǎng)絡(luò)結(jié)構(gòu)
Step1:對數(shù)據(jù)集進(jìn)行預(yù)處理,如對原始訓(xùn)練(Trai)數(shù)據(jù)集中的91張圖像進(jìn)行分割,按步長14,大小21*21進(jìn)行裁剪,作為標(biāo)簽(Label)數(shù)據(jù);對Train數(shù)據(jù)集進(jìn)行下采樣(縮小)后再進(jìn)行上采樣(放大)到原始大小,再按步長14,大小33*33進(jìn)行裁剪,作為訓(xùn)練集數(shù)據(jù),這樣得到2萬多組樣本數(shù)據(jù)與標(biāo)簽數(shù)據(jù)。
Step2:構(gòu)建三層的卷積神經(jīng)網(wǎng)絡(luò),三層卷積核大小分別分9*9、1*1、5*5,前兩層卷積后使用Relu作激活函數(shù),輸出特征個數(shù)分別為64和32,用均方差作為損失函數(shù)(loss)進(jìn)行訓(xùn)練,公式如下:
(1)
Step3:訓(xùn)練結(jié)束保存現(xiàn)場參數(shù),測試時選用整張圖像,卷積操作時填充模式選擇“SAME”,圖像尺寸保持不變。
FSRCNN模型主要通過增加網(wǎng)絡(luò)深度與減小卷積核對SRCNN模型進(jìn)行了運(yùn)算加速,圖2為其與SRCNN模型的結(jié)構(gòu)對比圖,能直觀地反映兩者之間的差異,主要表現(xiàn)在:
圖2 FSRCNN與SRCNN網(wǎng)絡(luò)結(jié)構(gòu)對比
(1)FSRCNN直接采用低分辨的圖像作為輸入,而SRCNN需要先對低分辨率的圖像進(jìn)行雙三次插值,對放大后的圖像進(jìn)行切塊,將圖像塊作為輸入;
(2)FSRCNN在網(wǎng)絡(luò)的最后采用反卷積操作實(shí)現(xiàn)圖像放大,運(yùn)算更高效;
(3)FSRCNN中用收縮、映射和擴(kuò)展操作來替代非線性映射;
(4)FSRCNN選擇更小尺寸的卷積核和更深的網(wǎng)絡(luò)結(jié)構(gòu),減少運(yùn)算參數(shù)的同時提升了網(wǎng)絡(luò)的學(xué)習(xí)能力。
FSRCNN的損失函數(shù)不變,仍采用公式(1),但激活函數(shù)選用了團(tuán)隊(duì)定義的PRelu函數(shù),避免了網(wǎng)絡(luò)反向傳播時,可能會由Relu函數(shù)引起梯度為零的情況,PRelu公式為:
f(x
)
=max(x
,
0)
+a
min(0,x
)(2)
2.ESPCN模型
ESPCN模型是由推特(Twitter)的Shi等人在2016年提出,其主要貢獻(xiàn)在于提出了一種直接在低分辨率圖像上進(jìn)行特征提取再轉(zhuǎn)換成高分辨率圖像的有效卷積方法。其網(wǎng)絡(luò)結(jié)構(gòu)如圖3所示,網(wǎng)絡(luò)的輸入仍是原低分辨率圖像,隱藏層通過l
個卷積操作得到r
個與原圖像大小一樣的特征圖,亞像素卷積層將圖像上每個像素的r
個通道按一定規(guī)則重新排列組合成一個r*r
大小的子圖塊,
于是大小為r
個W
×H
的特征圖像被重新排列組合成一個rW
×rH
尺寸的高分辨率圖像。通過使用亞像素卷積操作,圖像從LR到HR放大的過程中,低SR圖像與HR圖像之間的映射關(guān)系隱式地包含在前面的隱藏卷積層中,可以通過一系列的學(xué)習(xí)得到,最后才對圖像大小進(jìn)行轉(zhuǎn)換,由于前面的卷積運(yùn)算都是在低分辨率圖像上進(jìn)行的,參與運(yùn)算的數(shù)據(jù)量小,從而效率更高。圖3 ESPCN模型的網(wǎng)絡(luò)結(jié)構(gòu)
3.LapSRN模型
LapSRN模型是由美國加州大學(xué)默賽德分校的Lai等人在2017年提出,該模型能逐步重建不同尺度的高分辨率圖像,特別是在8倍超分時也取得了良好的重建效果。其網(wǎng)絡(luò)模型結(jié)構(gòu)如圖4所示,從圖中可以觀察到模型由特征提取與圖像重建兩個分支構(gòu)成,圖像特征提取與圖像重建同步進(jìn)行。首先,輸入的LR圖像經(jīng)過一系列卷積操作進(jìn)行特征提取,學(xué)習(xí)的是殘差部分信息,再經(jīng)過解卷積操作進(jìn)行2倍的放大,并與重建分支中經(jīng)過2倍插值放大的原始圖像相加,得到2倍的HR重建圖像。重復(fù)上述過程,得到放大4倍的HR重建圖像。以此類推,理論上可以得到放大2倍的HR重建圖像。
圖4 LapSRN模型的網(wǎng)絡(luò)結(jié)構(gòu)
LapSRN模型與前文提到的SRCNN、FSRCNN、ESPCN模型相比,除了網(wǎng)絡(luò)結(jié)構(gòu)不同外,另一個不同在于它采用了一種有別于公式(1)的Charbonnier損失函數(shù),其公式表達(dá)如下:
(3)
4.EDSR模型
EDSR模型是由韓國首爾大學(xué)的SNU CVLab研究團(tuán)隊(duì)在2017年提出,其網(wǎng)絡(luò)結(jié)構(gòu)如圖5所示,可以看作是對SRResNet的改進(jìn),去掉網(wǎng)絡(luò)結(jié)構(gòu)中的一些多余的運(yùn)算。一是去掉殘差塊內(nèi)的批規(guī)范化處理(batch normalization, BN)操作,二是去掉殘差塊外的Relu操作。在文獻(xiàn)[15]中作者提到,原始?xì)埐罹W(wǎng)絡(luò)的提出是為了解決計(jì)算機(jī)視覺方面的高級(High-level)問題,如圖像分類、圖像檢測、圖像的識別等。而圖像超分屬于低層(Low-level)問題,所以將ResNet結(jié)構(gòu)直接應(yīng)用到圖像超分問題上沒有達(dá)到最優(yōu)效果。而BN層的計(jì)算量和一個卷積層幾乎持平,移除BN層后訓(xùn)練時可以節(jié)約大概40%的內(nèi)存與時間。
圖5 EDSR模型的網(wǎng)絡(luò)結(jié)構(gòu)
此外,EDSR用L1范數(shù)樣式的損失函數(shù)來優(yōu)化網(wǎng)絡(luò)模型。在訓(xùn)練時先訓(xùn)練低倍數(shù)的上采樣模型,再用訓(xùn)練結(jié)果參數(shù)來初始化高倍數(shù)的上采樣模型,這樣能減少高倍數(shù)上采樣模型的訓(xùn)練時間,同時訓(xùn)練效果會更好,如訓(xùn)練縮放因子為3倍、4倍的EDSR時,可用預(yù)訓(xùn)練過的×2的網(wǎng)絡(luò)來初始化模型參數(shù)。這個策略加速了訓(xùn)練并且提升了最后的性能。對于×4,使用預(yù)訓(xùn)練×2的模型訓(xùn)練會收斂更快。
硬件配制為:intel i5及以上處理器,內(nèi)存8G以上的臺式機(jī),身份證讀卡器,實(shí)驗(yàn)時所用的讀卡器為精倫品牌IDR210型號。軟件開發(fā)環(huán)境為:Win7操作系統(tǒng),編程語言為python3.6,工具為Anaconda集成開發(fā)平臺,用到的軟件包有OpenCV、OpencCV-contrib、Numpy。
對上述4種圖像超分網(wǎng)絡(luò)模型,可以通過訓(xùn)練集進(jìn)行訓(xùn)練,得到收斂后的網(wǎng)絡(luò)參數(shù)模型。在實(shí)際圖像超分應(yīng)用時,也可以使用相應(yīng)網(wǎng)絡(luò)模型團(tuán)隊(duì)訓(xùn)練好的模型。如在招生圖像超分時選擇了4倍超分模型,訓(xùn)練模型文件從CSDN網(wǎng)站下載,對應(yīng)的訓(xùn)練模型屬性如表1所示。
表1 FSRCNN、ESPCN、LapSRN、EDSR模型4倍超分訓(xùn)練模型屬性
OpencCV-contrib庫中的dnn_superres模塊提供了上述訓(xùn)練模型的調(diào)用接口,調(diào)用過程的python主要代碼如表2所示。
表2 python調(diào)用訓(xùn)練模型過程
取開放大學(xué)招生過程中通過讀卡器獲取的身份證上人臉圖像,作為超分的LR圖像,大小為102×126像素,分別使用三次線性插值(bicubic)、FSRCNN、ESPCN、LapSRN、EDSRF進(jìn)行4倍超分,超分結(jié)果如圖6所示,直觀上可以看出,普通的圖像放大,通常采用bicubic方法得到的圖像邊緣呈鋸齒狀,效果較差。而采用圖像超分技術(shù),能得到較好效果,如LapSRN、EDSR超分結(jié)果,可用于入學(xué)后的基于人臉識別技術(shù)的考生身份證驗(yàn)證場景,進(jìn)行圖像增強(qiáng),提高人臉識別精度。
圖6 身份證人臉圖像4倍超分結(jié)果
主要對比bicubic,F(xiàn)SRCNN、ESPCN、LapSRN、EDSR方法,進(jìn)行4倍超分圖像超分時的三項(xiàng)指標(biāo):所用時間、峰值信噪比(Peak Signal to Noise Ratio,PSNR)值、結(jié)構(gòu)相似性(Structural Similarity,SSIM)值。
PSNR是一種基于像素點(diǎn)誤差的圖像客觀評價(jià)指標(biāo),應(yīng)用廣泛。它計(jì)算無失真圖像與超分后圖像對應(yīng)像素點(diǎn)間的誤差值,值越大表示超分后的圖像失真越小,其公式為:
(4)
其中MSE為兩幅大小為W×H的RGB三通道圖像之間像素值的均方誤差,公式為:
MSE=
(5)
其中X
為測試時原始無失真HR圖像,Y
為X
下采樣后得到LR圖像,再通過超分模型得到的HR圖像,c
為通過數(shù),彩色圖像時取值3。SSIM是另一種圖像質(zhì)量評價(jià)指標(biāo),偏向于人的視覺感受,它主要從無失真圖像與超分圖像的亮度、對比度、結(jié)構(gòu)三個方面來度量兩者的相似性。SSIM取值范圍為0~1,值越大,表示兩張圖像越相似,失真越??;反之,值越小,表示圖像失真越大。其公式為:
SSIM(X,Y)=L(X,Y)
*C(X,Y)
*S(X,Y)
(6)
其中,L(X,Y)
是亮度比較,C(X,Y)
是對比度比較,S(X,Y)
是結(jié)構(gòu)比較,其表達(dá)式如下:(7)
其中,u
、u
分別表示無失真圖像X
與超分后圖像Y
的均值,σ
、σ
分別表示兩張圖像的標(biāo)準(zhǔn)差,σ
表示兩張圖像之間的協(xié)方差。C
、C
、C
為常數(shù),防止分母為0,通常在實(shí)際應(yīng)用時α
、β
、γ
的值取1,C
取C
的一半。實(shí)驗(yàn)時取一張412×480大小的HR圖像,通過下采樣得到一張103×120大小的LR圖像,分別對其進(jìn)行上述五種4倍超分實(shí)驗(yàn),分別統(tǒng)計(jì)其用時、PSNR、SSIM三項(xiàng)指標(biāo),得到的數(shù)據(jù)如表3所示。
表3 圖像四倍超分時各模型的用時、PNSR、SSIM數(shù)據(jù)
通過對實(shí)驗(yàn)結(jié)果與實(shí)驗(yàn)指標(biāo)數(shù)據(jù)分析,可以得出結(jié)論,普通的雙三次插值,效果差,圖像邊緣鋸齒狀,圖像模糊,對應(yīng)的PSNR、SSIM指標(biāo)值也較??;FSRCNN模型得到的圖像在視覺效果上優(yōu)于雙三次插值,且用時也少,但PSNR、SSIM指標(biāo)與其接近;ESPCN模型用時最少,體現(xiàn)了亞像素卷積操作的優(yōu)勢,且PSNR、SSIM指標(biāo)也優(yōu)于前兩種模型;LapSRN模型,在用時上接近半秒,但PSNR、SSIM指標(biāo)上都有很大提升,圖像質(zhì)量優(yōu)于前三者;EDSR模型由于使用了非常深的網(wǎng)絡(luò),模型參數(shù)眾多,訓(xùn)練模型文件大小接近38 MB,所以超分圖像用時最長,接近6秒,但圖像超分效果最好,從PNSR與SSIM指標(biāo)值上也能反映這一點(diǎn)。因此,在實(shí)際招生應(yīng)用時,可采用EDSR模型對低分辨率圖像進(jìn)行超分。若應(yīng)用場景考慮實(shí)時響應(yīng),可考慮使用LapSRN模型。
招生是開放大學(xué)辦學(xué)的第一個環(huán)節(jié),會采集很多學(xué)員的第一手?jǐn)?shù)據(jù)信息,數(shù)據(jù)質(zhì)量的好壞,將對后續(xù)工作產(chǎn)生很大影響。其中,學(xué)生提交的相關(guān)照片質(zhì)量尤為重要,引入基于深度學(xué)習(xí)單張圖像超分辨率重建技術(shù),能很好解決招生過程中的低分辨率圖像引發(fā)的問題。通過對主流的深度學(xué)習(xí)模型中的FSRCNN、ESPCN、LapSRN、EDSR模型網(wǎng)絡(luò)結(jié)構(gòu)的研究、4倍超分應(yīng)用、評價(jià)指標(biāo)分析,可以看出,EDSR模型得到的超分圖像質(zhì)量更高,視覺效果也最好。下一步的研究是將圖像超分領(lǐng)域的最新研究成果應(yīng)用到開放大學(xué)的招生實(shí)踐中,爭取獲得更好的圖像超分效果。