趙麗玲 孫權(quán)森 張澤林
(1.南京理工大學計算機科學與工程學院,南京,210094; 2.南京信息工程大學信息與控制學院,南京,210044)
圖像超分辨是指一種由單幀(或多幀)低分辨率退化圖像重建出高分辨率圖像的第二代圖像復原技術(shù)[1]。20世紀60年代,Harris[2]和Goodman[3]首次提出了超分辨率算法。超分辨技術(shù)發(fā)展至今,形成了“單幀圖像—多幀圖像—新型單幀圖像”的3個技術(shù)分支。單幀圖像超分辨雖然是最早發(fā)展起來的,但由于先驗信息的引入不足制約了超分辨圖像質(zhì)量的進一步提高[4-5]。1984年,Tsai和Huang[6]通過比較完美的實驗結(jié)果,提出了基于多幀圖像的超分辨率方法。多幀圖像超分辨技術(shù)在較長的一段時間內(nèi)成為主流,取得了相當多的理論和應(yīng)用成果。然而,多幀圖像超分辨由于涉及到圖像配準、運動估計等多種圖像處理任務(wù),圖像重建質(zhì)量影響因素較多,重建效果不夠魯棒。另外,在許多實際應(yīng)用領(lǐng)域,如衛(wèi)星遙感、軍事戰(zhàn)場和老照片修復等,滿足多幀圖像超分辨基本數(shù)據(jù)的獲取也比較困難,多幀圖像超分辨技術(shù)發(fā)展遇到瓶頸。隨著新的數(shù)學理論和方法的不斷借鑒引入,以及計算機技術(shù)的發(fā)展,近年來許多學者展開了“新型單幀圖像超分辨”的研究工作[7-9]。目前,單幀圖像超分辨技術(shù)成為了新的研究熱點,也是本文的主要研究內(nèi)容。
目前,根據(jù)單幀圖像超分辨率是否需要額外數(shù)據(jù)集,可以分為無外部數(shù)據(jù)集和有外部數(shù)據(jù)集兩類[10-11]。無外部數(shù)據(jù)集超分辨包括插值方法、迭代反向投影法和凸集投影法等[12-14];有外部數(shù)據(jù)集超分辨包括基于示例的方法、鄰域嵌入法和字典方法[15-18]等。在以上算法中,基于字典的超分辨算法可以利用大量隱含在外部數(shù)據(jù)集中的可用信息,成為新型單幀圖像超分辨技術(shù)研究的熱點。詹曙等[19]通過提取圖像的一階、二階導數(shù)等特征,增強了字典表達能力;Dong等[20]實現(xiàn)了對圖像數(shù)據(jù)庫樣本的預先分類,然后針對每一類訓練樣本圖像構(gòu)建一個特征子字典,提高了字典表達不同結(jié)構(gòu)特征的能力;孫玉寶等[21]針對圖像的幾何、紋理結(jié)構(gòu)等形態(tài),分別提取了幾何結(jié)構(gòu)和紋理的分量特征,設(shè)計了更加高效并能保持圖像幾何和紋理結(jié)構(gòu)的多成份子字典,實現(xiàn)了圖像超分辨質(zhì)量的進一步提升;馬麗紅等[22]構(gòu)建了兩種分類字典,分別使用邊緣塊梯度特征和紋理塊局部二值模式特征逼近不同類型結(jié)構(gòu),提高了超分辨圖像的峰值信噪比。另外,多級字典[23]、廣義主成分分析字典[24]、多尺度字典[25-26]、壓縮感知字典[27]和多特征字典[28]等多種類型和結(jié)構(gòu)字典的提出及其在超分辨領(lǐng)域的應(yīng)用,將單幀圖像超分辨率算法能力提高到了新的水平。
以上各種字典均是基于圖像灰度信息、梯度或紋理結(jié)構(gòu)等淺層人工規(guī)則特征構(gòu)建的,對于蘊含大量豐富特征的復雜圖像而言,表達能力仍然有限。因此,如何提高字典的表達能力,使其更準確地描述圖像特征是基于字典超分辨算法中值得繼續(xù)研究的問題。近年來,深度網(wǎng)絡(luò)在計算機視覺領(lǐng)域引起了廣泛關(guān)注,文獻[29]指出深度卷積神經(jīng)網(wǎng)絡(luò)(Convolutional neural networks, CNN)與傳統(tǒng)機器學習方法相比具有更強大的特征學習和特征表達能力,在圖像分類、物體檢測等多個計算機視覺應(yīng)用領(lǐng)域中取得了令人矚目的成績。因此,本文引入深度學習理論,完成高、低分辨率訓練樣本圖像深層次特征提取,并以此構(gòu)建特征字典,實現(xiàn)圖像超分辨重建。實驗結(jié)果表明,本文提出的基于深度網(wǎng)絡(luò)構(gòu)建深層次特征字典的超分辨方法,可以有效提升超分辨圖像質(zhì)量;與雙三次插值以及基于一般人工淺層次特征字典的超分辨算法相比,本文算法在主觀視覺和客觀評價指標中均有一定優(yōu)勢。
(1)
(2)
組合各個重構(gòu)的 HR 圖像塊就可以獲得HR 圖像的估計。然而,對HR圖像的估計是否準確,與參與超分辨的字典原子是否準確有關(guān),其關(guān)鍵是提取的圖像特征對圖像結(jié)構(gòu)信息的描述是否足夠準確[31]。在ScSR 算法中,對圖像特征的提取和描述,選取的是人眼比較敏感的高頻特征,提取了與高頻特征對應(yīng)的一階和二階梯度,梯度算子為
(3)
式中f1,f3提取圖像水平方向梯度特征,f2,f4提取圖像垂直方向的梯度特征,4 個梯度特征按順序排列成一個向量,作為LR圖像塊的特征。超分辨重構(gòu)時,ScSR算法選取梯度特征較大值作為候選字典原子。
然而,對于一些結(jié)構(gòu)信息比較復雜的紋理圖像來說,紋理梯度值的變化程度往往小于邊緣結(jié)構(gòu)梯度值[31]。如果按以上梯度特征選擇候選字典原子,所構(gòu)建的字典會偏重于邊緣結(jié)構(gòu),導致重建圖像的紋理結(jié)構(gòu)趨于平滑,超分辨圖像質(zhì)量不高。另外,當待超分辨重建圖像與訓練集圖像類型差異較大時,按照紋理或邊緣梯度值選擇的候選字典原子,在超分辨重構(gòu)階段會產(chǎn)生不適應(yīng)性,從而影響超分辨重建圖像質(zhì)量。因此,依據(jù)人工規(guī)則特征構(gòu)建字典的ScSR超分辨算法屬于淺層次特征字典,字典在普適性上有一定的局限性。進一步挖掘訓練樣本圖像的深層次特征,從而構(gòu)建深層次特征字典,提高對圖像特征的描述能力,是進一步增強重建圖像質(zhì)量的有效手段。
PCANet是一種具有簡單結(jié)構(gòu)的深度學習算法[32],該算法以卷積神經(jīng)網(wǎng)絡(luò)(Convolutional neural networks,CNN)和主成分分析(Principal component analysis,PCA)為理論基礎(chǔ),其算法原理如圖1所示。由文獻[31]可知,PCANet框架由兩個PCA濾波層、一個哈希層和一個局部直方圖計算層3部分組成,可以實現(xiàn)對訓練樣本圖像深層次特征的有效提取。但與一般網(wǎng)絡(luò)不同,PCANet的濾波器在求解和計算開銷中更具優(yōu)勢。PCANet并不是通過訓練過程不斷迭代優(yōu)化得到的,而是通過提取圖像局部區(qū)域得到映射后直接利用PCA提取其主成分得到,每個主成分就是一個濾波器。因此,PCANet不需要引入規(guī)則化參數(shù),也不需要數(shù)值優(yōu)化求解,計算效率比一般深度網(wǎng)絡(luò)更高。當訓練樣本圖像通過該已知濾波器的深度網(wǎng)絡(luò)進行特征提取時,也不需要通過大量的迭代計算來求出最優(yōu)權(quán)值,節(jié)省了計算時間。同時,離線訓練獲得的濾波器,在對測試樣本實際操作時也可以減少時間開銷。為進一步說明PCANet深度網(wǎng)絡(luò)在特征提取中的優(yōu)勢,本文給出如下舉例和理論分析。假設(shè),有N個輸入圖像,取大小為8×8,移動步長為1的一個圖像塊去遍歷整個輸入圖像,可以得到一個特征映射,用PCA求出這個特征映射的L1個主成分,將L1個主成分調(diào)整成L1個濾波器,然后像一般CNN那樣得到L1個 特征映射;接下來,第2層和第1層的處理一樣,到第3層就得到了L2個特征映射。這L2個特征映射就是PCANet提取出來的特征,可以為后續(xù)的圖像分析和識別提供數(shù)據(jù)基礎(chǔ)。PCANet通過學習得到多層網(wǎng)絡(luò)濾波器的核,輸入圖像經(jīng)過兩層濾波器核之后,可以輸出具有較高維度的數(shù)據(jù),作為輸入圖像的特征參與圖像的后續(xù)處理和分析。有效的數(shù)據(jù)越多,越有利于圖像超分辨重建。
因此, PCANet進行圖像特征提取是對圖像各像素進行的直接操作,且在處理過程中加入了分塊處理的步驟,即在分析圖像特征過程中同時結(jié)合了像素的鄰域信息,并且克服了PCA方法不可避免的降維效果,PCANet深度網(wǎng)絡(luò)輸出的數(shù)據(jù)量反而更多。PCANet通過深度網(wǎng)絡(luò)學習提取了更加豐富的訓練樣本圖像特征,PCANet特征可以提供比人工規(guī)則特征更加豐富的描述和表達,為后續(xù)的圖像處理和識別等準備了更加豐富的先驗信息,對低分辨率圖像的高頻信息補充更加有利,更有利于超分辨重建。
圖1 PCANet 結(jié)構(gòu)框圖[32]Fig.1 Framework of PCANet[32]
特征是機器學習算法的重要因素,對最終模型有決定性的影響。如果對訓練樣本圖像有很好的特征表達能力,通常計算模型就能獲得比較滿意的結(jié)果。近幾年,隨著目標圖像越來越復雜,人們開始關(guān)注如何構(gòu)造更加高效的特征字典[33-36],以實現(xiàn)對圖像邊緣信息、豐富紋理及幾何結(jié)構(gòu)等更準確的描述。深度網(wǎng)絡(luò)則可以挖掘數(shù)據(jù)的深層次知識,用深度網(wǎng)絡(luò)提取訓練樣本圖像更深層次的特征,能夠突破人工規(guī)則特征的局限,從而提高字典的表達能力和適應(yīng)性。
因此,本文結(jié)合PCANet深度網(wǎng)絡(luò)和ScSR稀疏字典兩種算法優(yōu)勢,提出了基于PCANet特征字典的單幀圖像超分辨率重建算法,算法框圖如圖 2所示。在訓練階段,首先假定低分辨率與高分辨率圖像特征塊關(guān)于各自字典具有相似的稀疏表達形式,然后采用PCANet深度網(wǎng)絡(luò)獲得訓練樣本圖像深層次特征,再通過字典聯(lián)合訓練獲得一對過完備特征字典Dh和Dl。其中,Dh表示高分辨率圖像特征字典,Dl表示低分辨率圖像特征字典。在超分辨率重建階段,對低分辨率圖像同樣用PCANet方法提取深層次特征,求解待超分辨圖像的各低分辨率特征塊在字典Dl上的稀疏表達形式,并將低分辨率圖像特征塊關(guān)于Dl的稀疏表示系數(shù)直接作用于Dh,從而獲得對應(yīng)的高分辨率圖像特征塊,最終實現(xiàn)低分辨率圖像的超分辨重建。該算法采用PCANet深度網(wǎng)絡(luò)挖掘訓練樣本圖像特征,可以獲得比非深度網(wǎng)絡(luò)更加豐富的特征信息。在此基礎(chǔ)上構(gòu)建的深層次特征字典,同樣也提高了特征字典的表達能力,實現(xiàn)了重建圖像質(zhì)量的有效提升。
圖2 基于PCANet特征字典的單幅圖像超分辨算法概述Fig.2 Sketch of single image super resolution algorithm based on PCANet features dictionary
得到的第i張高分辨訓練樣本可表示為式(4),總體高分辨樣本的分塊矩陣表示為式(5),低分辨樣本的分塊矩陣計算與高分辨率樣本相同,表示為式(6)。
在以上訓練樣本矩陣的基礎(chǔ)上進行PCANet特征提取,并以此特征作為ScSR模型中的訓練樣本特征,用于PCANet特征字典訓練。PCANet深度學習網(wǎng)絡(luò)分3層完成圖像特征提取,下面以高分辨訓練圖像為例,給出詳細的特征提取過程。
(1) 第1層
第1層特征提取過程即為構(gòu)建PCA濾波器并進行卷積的過程,圖1中第1個矩形框(First stage)內(nèi)所示。假定在第i層需要的濾波器數(shù)量為L1,通過式(7)尋找一系列的標準正交矩陣最小化重構(gòu)誤差,通過提取協(xié)方差矩陣Xh的前L1個最大特征值所對應(yīng)的特征向量,組成特征映射矩陣,即為PCA濾波器,如式(8)所示。
(7)
(8)
把L1個特征向量的每一列重新進行排列,得到1個patch,即獲得了L1個k1×k2的窗口。然后,對每一張圖像,都用這L1個窗口作一次卷積。通過第1層PCA濾波器可以保留訓練樣本圖像的主要信息,表示為
(9)
(2) 第2層
第2層的PCA映射過程如圖1第2個矩形框(Second stage)內(nèi)所示。與第1層對樣本圖像分塊操作類似,將第1層PCA映射輸出結(jié)果作為第2層的輸入,同樣在第2層對該矩陣進行塊采樣、級聯(lián)和零均值化等操作,結(jié)果表示為
(10)
(11)
同樣,PCA濾波器由協(xié)方差矩陣對應(yīng)的特征向量組成,濾波器為
(12)
由于第1層有L1個濾波器核,第2層對上一層輸出的每一個特征再進行同樣的步驟進行特征提取,可以獲得L2個特征輸出。最終,對于每一張樣本圖像, PCANet將輸出L1×L2個特征矩陣,如式(13)。在結(jié)構(gòu)上,兩層PCA特征提取過程很相似, PCANet也可以根據(jù)需要被擴展成包含更多層的深度網(wǎng)絡(luò)結(jié)構(gòu)。
(13)
(3) 輸出層
輸出層主要針對第2層的每個輸出矩陣,將這些矩陣都進行二值處理,使矩陣中只包含整數(shù)1和0,然后對該矩陣進行二值化哈希編碼,如
(14)
(15)
同理可推,經(jīng)過與高分辨率訓練圖像相同的步驟,低分辨率訓練圖像的PCANet特征Fli可表示為
(16)
式中:Fhi和Fli表示樣本圖像特征提取結(jié)果;Bhist表示直方圖編碼過程;B表示樣本圖像被分割的圖像塊數(shù)量。
本文采用聯(lián)合稀疏編碼的方式,在ScSR框架下訓練字典。算法的目標是得到一對可以描述樣本復雜特征的字典對Dh和Dl,使得K對圖像生成的PCANet特征Fhi和Fli在Dh和Dl上具有相同的稀疏表示,而且Fhi和Fli具有相同的表示系數(shù),即
(17)
(18)
(19)
式中:N和M分別表示高、低分辨率特征圖像塊元素值重排成列矢量的維數(shù),1/N和1/M用于平衡式(17,18)中Dh和Dl兩者的代價,為方便求解,將式(19)寫成
(20)
在得到高分辨率和低分辨率圖像特征字典對Dh和Dl后,對于每一張低分辨測試圖像Y,需要解決經(jīng)典優(yōu)化問題
(21)
(22)
式中:H為圖像的降質(zhì)算子(H與成像過程有關(guān),本文實驗中該算子僅表示對測試圖像的下采樣)。對式(22)利用梯度下降法求解,可得到超分辨率結(jié)果圖像。
本文算法首先對低分辨率圖像進行PCANet特征提取,并基于該深層次特征進行字典訓練,最終實現(xiàn)超分辨重建,算法如下所示。
算法1:基于PCANet特征字典的單幀圖像超分辨重建
(1) 輸入:低分辨率圖像Y,高、低分辨率字典對Dh,Dl
(2) 將低分辨圖像進行2倍上采樣插值Y′=S(Y),S為上采樣算子
(3) 提取低分辨圖像的PCANet特征Fl
(4) 根據(jù)式(21)建立字典Dh,Dl與Fl之間的關(guān)系
(5) fori=1 toTdo
(8) 將得到的高分辨率圖像特征信息與低分辨圖像合成,得到初始超分辨結(jié)果圖像
(9) end for
(11) 輸出:高分辨率圖像X*,算法結(jié)束。
為了驗證圖像深層次特征提取對構(gòu)建特征字典以及實現(xiàn)圖像分辨率提高的有效性,本文選擇常用數(shù)據(jù)集Set5[37],Set14[38]和BSD500[39]用于網(wǎng)絡(luò)訓練和測試,選擇BSD500中的Train文件夾圖像訓練深度特征字典,選擇Test文件夾圖像以及Set5,Set14作為測試集。實驗中,選擇了經(jīng)典Bicubic 插值超分辨算法,和基于人工特征字典超分辨算法,作為本文基于深度學習特征字典超分辨算法的對比算法。采用主觀視覺評價、客觀評價指標峰值信噪比(Peak signal to noise ratio, PSNR)、結(jié)構(gòu)相似度參數(shù)(Structural similarity index measurement,SSIM)和算法計算時間(Time)作為圖像質(zhì)量評價標準。實驗所用的圖像庫包括人物、植物、動物、風景和建筑等,部分圖像如圖 3所示。實驗運行環(huán)境為:64 位Windows7 SP1 操作系統(tǒng),Intel(R) Core(TM) i7-3667U 2.0 GHz 處理器,8 GB運行內(nèi)存,Matlab R2012a 版本。
圖3 訓練圖像Fig.3 Training images
實驗所需的高、低分辨率訓練圖像集采用如下方法構(gòu)造,通過對已知高分辨訓練圖像HR進行兩倍的雙三次插值下采樣得到低分辨圖像,再對低分辨圖像進行放大獲得低分辨訓練圖像LR,如圖 4所示。對HR和LR執(zhí)行預處理操作,本文實驗中訓練圖像K=69;k1=k2=5;m,n為每幅訓練圖像實際尺寸。采用PCANet提取訓練圖像的深層次特征時,網(wǎng)絡(luò)參數(shù)L1取值為40、L2取值為8;字典訓練過程中,字典尺寸512,稀疏正則項系數(shù)0.2,塊尺寸5像素。
圖4 高分辨率圖像及其下采樣放大圖像 Fig.4 HR image and its zoomed sub-sampled image
圖 5為是各算法在測試圖像中的部分實驗結(jié)果。從圖 5可以看出,本文算法在超分辨圖像細節(jié)重建上與Bicubic(雙三次插值)和ScSR(稀疏表示超分辨)兩種算法相比的優(yōu)勢。圖 5(a)是降質(zhì)低分辨率圖像,為了考察超分辨算法能力,本實驗降質(zhì)過程僅為下采樣;圖 5(b)是雙Bicubic超分辨算法結(jié)果,可以看出由于先驗信息不足,結(jié)果圖像中部分紋理平滑效應(yīng)較大,圖像比較模糊;圖 5(c)是ScSR算法結(jié)果,因算法利用了訓練圖像集的先驗信息,超分辨結(jié)果圖像質(zhì)量比插值算法所提高;圖 5(d)為本文方法超分辨結(jié)果圖像,圖像中邊界、紋理模糊程度較其他兩種方法結(jié)果圖像有所減弱,圖像細節(jié)的視覺效果最為清晰。該實驗表明,本文算法在訓練圖像中提取的特征最為豐富,因而訓練的到的特征字典可以更好地反映高、低分辨率圖像特征,對構(gòu)建超分辨的特征字典十分有利。表1為各實驗超分辨重建結(jié)果PSNR、SSIM和計算開銷(Time)的比較。從PSNR數(shù)值結(jié)果來看,插值方法PSNR均值為32.17,ScSR方法PSNR均值為35.12,而本文算法PSNR均值為38.24,在實驗測試中最高。從ScSR和本文算法的Time數(shù)值結(jié)果來看,ScSR方法Time均值為37.70,本文算法Time均值為263.21,相比較而言本文計算開銷稍大。通過分析可知,由于本文算法提取圖像深層次特征比一般人工規(guī)則特征對圖像細節(jié)的捕捉能力更強,因而參與字典學習重建的特征規(guī)模更大,所以算法在運行時間上比ScSR運行時間稍長。但從以上客觀評價指標PSNR,SSIM以及主觀視覺效果來看,獲得的超分辨圖像質(zhì)量確有較大提高,因此本文算法在綜合效率中仍具有一定優(yōu)勢。
圖5 具有兩倍放大因子的超分辨率結(jié)果圖像Fig.5 Results of super resolution images with two upscaling factor
圖像PSNRSSIMTime/sBicubicScSRPCANetSRBicubicScSRPCANetSRScSRPCANetSRGirl34.4637.4338.030.971 20.958 70.987 335.89103.67Koala33.5636.8938.820.911 20.927 60.913 528.45150.20Baby33.3135.3635.650.893 50.934 30.964 333.24475.48Microchips31.5636.0838.530.901 10.901 60.975 437.25516.15Building33.4536.9040.560.912 50.913 60.924 336.56350.38Butterfly27.4030.2037.790.862 30.895 60.883 240.26204.96Comic26.0028.2037.360.791 60.788 50.812 539.28107.26Set534.2137.0239.680.885 30.886 10.893 538.90155.51Set1435.3336.9637.570.892 10.895 70.902 342.11450.35BSD50032.4736.2338.470.900 60.911 20.941 145.12118.14Average32.17535.12738.2460.892 140.901 290.919 7437.706263.21
本文提出了基于深度學習特征字典的單幀圖像超分辨重建算法,通過挖掘圖像深層次特征,增強了高、低分辨率字典表達圖像紋理信息和復雜結(jié)構(gòu)的能力,有效保持了超分率重建圖像的豐富細節(jié)特征。與基于人工規(guī)則特征字典的超分辨算法相比,本文算法在圖像質(zhì)量客觀評價指標上具有一定優(yōu)勢。下一步的研究方向是,優(yōu)化算法爭取縮短計算時間,并對影響算法效率的網(wǎng)絡(luò)參數(shù)、字典尺寸等諸多因素進行分析和總結(jié),以進一步提升采用該類算法實現(xiàn)圖像超分辨的效率。