丁玉祥,卞維新,接 標(biāo),趙 俊
1.安徽師范大學(xué) 計(jì)算機(jī)與信息學(xué)院,安徽 蕪湖241002
2.網(wǎng)絡(luò)與信息安全安徽省重點(diǎn)實(shí)驗(yàn)室,安徽 蕪湖241002
圖像超分辨率(Super Resolution,SR)重建算法是利用觀測到的低分辨率圖像重建對應(yīng)的高分辨率圖像的過程,在軍事、醫(yī)學(xué)、遙感、計(jì)算機(jī)視覺等方面都有著重要的研究和應(yīng)用價值。在日常生活中,獲取高質(zhì)量的圖像受到諸如成像設(shè)備硬件成本、成像環(huán)境復(fù)雜等條件的制約。為了改善這一問題,圖像超分辨率重建算法已被越來越多的研究人員關(guān)注。圖像超分辨率重建采用軟件方法,可以將低質(zhì)量的圖像重建成對應(yīng)的高質(zhì)量圖像,既能夠避免設(shè)備條件的復(fù)雜要求從而降低成本,也可以通過技術(shù)的不斷發(fā)展使重建的質(zhì)量得到提高。目前,基于單幅圖像的超分辨率重建成為該研究領(lǐng)域的主要目標(biāo)。圖像超分辨率重建的方法主要有三類:基于插值的方法、基于重建的方法和基于學(xué)習(xí)的方法。
基于插值的算法是利用待重建像素與鄰域像素之間的關(guān)系來預(yù)測待重建像素。這種方法具有算法復(fù)雜度低、運(yùn)行速度快的特點(diǎn),但是這種方法沒有充分利用圖像的高頻信息,導(dǎo)致最終重建出的圖像存在邊緣、紋理缺失的問題,呈現(xiàn)的效果不是很好。
基于重建的算法是基于重建模型而來,通過加入先驗(yàn)知識,使得基于重建的算法在保持邊緣方面有著較好的效果,但是關(guān)于圖像的高頻細(xì)節(jié)信息還是不能有效地被重建出來,低分辨率和高分辨率圖像縮放尺寸越大,重建效果越差。常使用的方法有迭代反投影法(Iterative Back-Projection,IBP)[1]、最大后驗(yàn)概率法(Maximum a Posteriori,MAP)[2]和凸集投影法(Projections onto Convex Sets,POCS)[3]等。
基于學(xué)習(xí)的算法通過訓(xùn)練樣本圖像來學(xué)習(xí)低分辨率圖像和對應(yīng)高分辨率圖像之間的映射關(guān)系,然后用學(xué)習(xí)到的映射關(guān)系來指導(dǎo)目標(biāo)高分辨率圖像的重建,這樣可以重建出更多的高頻信息。2004 年,Chang 等[4]結(jié)合流形的相關(guān)理論,提出了基于領(lǐng)域嵌入的超分辨率算法,克服了對樣本的依賴。2010 年,Yang 等[5]利用自然圖像的稀疏性,引入壓縮感知理論,通過字典學(xué)習(xí)構(gòu)建能夠稀疏表示圖像塊的字典,然后通過該字典與線性規(guī)劃求解得到的稀疏表示系數(shù)的線性組合得到重建圖像,從而恢復(fù)圖像的高頻細(xì)節(jié),取得更好的效果。在Yang的基礎(chǔ)上,Zeyde 等[6]使用K-SVD[7]的方式訓(xùn)練字典,大大加快了字典訓(xùn)練時間,提升了學(xué)習(xí)的效率,重建的效果相較于Yang等的方法,效果得到很好的提升。之后,Timofte 等[8]則通過對字典稀疏訓(xùn)練得到的字典進(jìn)行流形學(xué)習(xí),在保證圖像重建效果的前提下加快了圖像的重建時間。李云飛等[9]在卷積神經(jīng)網(wǎng)絡(luò)超分辨率算法(SRCNN)的基礎(chǔ)上提出一種多通道卷積的圖像超分辨率重建算法(MCSR),生成的高分辨率圖像質(zhì)量較高,缺陷是算法時間復(fù)雜度較高?;趯W(xué)習(xí)的算法在圖像超分辨率重建領(lǐng)域正展現(xiàn)越來越強(qiáng)的優(yōu)越性,成為當(dāng)前主流的研究方向。
上述算法基本上都是對圖像整體信息進(jìn)行處理,沒有關(guān)注圖像的內(nèi)部不同的信息特征。目前,一些研究人員[10-11]將低秩矩陣恢復(fù)理論應(yīng)用于超分辨率重建算法,取得了不錯的效果。受該類研究成果的啟發(fā),本文將提出一種改進(jìn)的圖像超分辨率重建方法。通過引入低秩矩陣恢復(fù)理論將高分辨率圖像進(jìn)行分解,得到圖像的低秩部分和稀疏部分。其中,低秩部分含有圖像的大部分信息,與低分辨率圖像所含信息基本等同,可以通過壓縮感知理論得到相應(yīng)的字典對和稀疏系數(shù),從而完成低秩部分的重建;稀疏部分含有少量的高頻分量,通過尋找稀疏部分像素在對應(yīng)于低分辨率圖像上相同位置像素的映射關(guān)系來指導(dǎo)稀疏部分高分辨率圖像的重建。提出算法依據(jù)圖像信息特征的不同,將圖像重建過程分為兩路通道,利用容易被忽略的高頻信息,改善重建算法的性能。實(shí)驗(yàn)結(jié)果表明,本文算法在峰值信噪比和結(jié)構(gòu)相似性方面均有顯著提升。
日常應(yīng)用中所遇到的矩陣大多數(shù)都是低秩的或近似低秩的,這意味著矩陣的秩與矩陣的行數(shù)或列數(shù)相比較而言會很小。而平常接觸的矩陣因?yàn)槲粗蛩氐母蓴_,原有的低秩性受到了破壞。于是為了恢復(fù)原有矩陣的低秩結(jié)構(gòu),可以將一個已知矩陣M 分解為一個低秩矩陣A 和一個稀疏矩陣E,其優(yōu)化問題如下:
其中,‖ E ‖0表示稀疏矩陣E 的零范數(shù)l0,即E 的非零元素的個數(shù)。在目標(biāo)函數(shù)中,rank(A)和‖ E ‖0均屬于非線性非凸的組合優(yōu)化函數(shù),其求解屬于NP-hard 問題。結(jié)合壓縮感知的相關(guān)理論,可轉(zhuǎn)化為凸優(yōu)化問題:
其中,‖ A ‖?表示低秩矩陣A 的核范數(shù),用來近似估計(jì)矩陣A 的秩;‖ E ‖1表示稀疏矩陣E 的l1范數(shù);λ 是平衡因子,用于權(quán)衡矩陣的低秩性和稀疏性。
Yang 等人[5]在研究圖像超分辨率重建時引入壓縮感知理論,將圖像表示成一個過完備字典與稀疏系數(shù)的線性組合。通過尋求在低分辨率圖像上的稀疏表示,然后利用稀疏表示得到對應(yīng)的高分辨率圖像。這種算法通過構(gòu)建聯(lián)合訓(xùn)練模型將低分辨率圖像與高分辨率圖像的相似性進(jìn)行了強(qiáng)化,與傳統(tǒng)方法相比,不但顯著降低計(jì)算成本而且有很強(qiáng)的魯棒性。其基本思路如下所示:
設(shè)x 是高分辨率圖像X 的一個圖像塊,其對應(yīng)的低分辨率圖像塊y 可由如下的降質(zhì)模型得到:
其中,S 表示下采樣處理,H 表示模糊處理。存在由一組高分辨率圖像樣本訓(xùn)練得到的過完備字典Dh,在Dh下,x 有唯一的最稀疏表示α:
其中,‖ α ‖0表示向量α 的零范數(shù)即向量α 的非零值個數(shù),α 稱為圖像塊x 的稀疏表示。根據(jù)式(3)可得相應(yīng)的低分辨率圖像塊為:
其中,L=SH ,表示從高分辨率圖像塊到低分辨率圖像塊的一個映射矩陣,則低分辨率的字典為Dl=LDh。這表明高、低分辨率圖像塊在對應(yīng)的過完備字典下有著相同的稀疏表示。因此,可以先求解低分辨率圖像塊y在低分辨率字典Dl下的最稀疏表示α ,然后再利用x=Dhα 即可重建出對應(yīng)的高分辨率圖像塊x。
式(4)是一個NP-Hard 問題,稀疏表示α 的最優(yōu)值很難求得。Donoho[12]已經(jīng)證明,只要α 足夠稀疏,則上述問題可以轉(zhuǎn)化成L1范數(shù)最小化問題,因此式(4)可改寫成:
根據(jù)優(yōu)化理論,對低分辨率圖像塊進(jìn)行稀疏表示的優(yōu)化過程可描述為:
同樣,可以將式(8)改寫成L1范數(shù)的形式:
依據(jù)拉格朗日乘子法,式(9)可寫為:
流形學(xué)習(xí)方法是模式識別中的一種常用算法,研究的內(nèi)容是從高維采樣數(shù)據(jù)到低維流形結(jié)構(gòu)的映射。其中,局部線性嵌入(Locally Linear Embedding,LLE[13])是流形學(xué)習(xí)的一種。
LLE算法是一種非監(jiān)督學(xué)習(xí)算法,它主要實(shí)現(xiàn)數(shù)據(jù)從高維空間到低維空間的非線性映射,并且這種方法能夠較好地保持?jǐn)?shù)據(jù)的局部特征。該算法假設(shè)在流形上的每個數(shù)據(jù)點(diǎn)和它鄰域內(nèi)的點(diǎn)在局部上都位于一個線性或近似線性的子空間上,那么其中的任意一點(diǎn)就可以用鄰域內(nèi)其他的點(diǎn)線性表示出來。而局部線性嵌入算法是一種典型的非線性降維方法,將這種算法應(yīng)用在圖像的超分辨率過程中,可以有效地對圖像丟失的高頻信息進(jìn)行估計(jì)。LLE算法主要分為三步:
第一步,尋找每個樣本點(diǎn)的K 個近鄰點(diǎn)。
采用K 近鄰法找到高維空間X 中每個樣本點(diǎn)xi的鄰域點(diǎn)集,由此找到關(guān)于樣本點(diǎn)xi的k 個近鄰點(diǎn)
第二步,計(jì)算權(quán)重wji:
進(jìn)一步可得:
使用拉格朗日乘子法計(jì)算得到權(quán)值系數(shù)wi。
第三步,將高維空間X 映射到低維空間Y ,依據(jù)權(quán)值系數(shù)wi計(jì)算樣本的低維嵌入。
通過求解上述優(yōu)化問題得到映射后的數(shù)據(jù)集Y 。
局部線性嵌入算法能很好地保持局部結(jié)構(gòu)不變,且不需要迭代計(jì)算,降低了計(jì)算復(fù)雜度。通過將這種算法應(yīng)用于稀疏部分的重建,可以減少訓(xùn)練量,很好地保持圖像局部結(jié)構(gòu)信息,從而在稀疏部分的重建上取得更好的效果。
為了充分利用圖像內(nèi)部信息特征,本文擬將圖像的低秩性應(yīng)用到圖像的超分辨率重建,將低分辨率圖像分別與對應(yīng)的高分辨率圖像的低秩部分和稀疏部分進(jìn)行融合。然后用學(xué)習(xí)到的圖像特征對待重建圖像進(jìn)行指導(dǎo),得到最終的高分辨率圖像。
由于圖像具有低秩性,因此通過引入低秩矩陣恢復(fù)理論,可以將圖像分解成低秩部分和稀疏部分。其中,低秩部分保留了圖像的大部分信息,稀疏部分含有易缺失的高頻分量。低秩部分可以通過其在低維空間的稀疏表示和學(xué)到的過完備字典的線性組合來表示。而圖像的稀疏部分則可以依據(jù)在低維空間有相似的流形結(jié)構(gòu),利用相同的局部幾何結(jié)構(gòu)獲取最優(yōu)權(quán)重進(jìn)行重建。提出的算法根據(jù)圖像局部不同特征的信息在低維空間的投影,有效地重建高分辨率圖像,避免了在重建過程中信息之間的干擾。
對高分辨率圖像進(jìn)行低秩分解,得到低秩子圖像Ha和稀疏子圖像He:
然后對高分辨率圖像下采樣得到低分辨率圖像,再將低分辨率圖像上采樣到原高分辨率圖像尺寸得到模糊圖像Yl:
其中,L 表示高分辨率圖像和低分辨率圖像的映射矩陣,v 為加性隨機(jī)噪聲。將式(15)代入到式(16),得到:
對于低秩部分而言,它含有圖像的大部分信息,為了學(xué)習(xí)它與Yl的之間的關(guān)系,可將含有少量信息的稀疏部分忽略:
由于圖像的稀疏部分在低維空間有相似的流形結(jié)構(gòu),因此在局部幾何結(jié)構(gòu)上,可以只考慮稀疏部分在低維空間的投影。為了更好地獲得稀疏部分在低維空間的投影,可將低秩部分忽略:
綜合得:
本文對圖像的低秩部分和稀疏部分分別采用稀疏表示和鄰域嵌入方法進(jìn)行重建。Chang等人[4]在LLE的基礎(chǔ)上,提出基于鄰域嵌入的超分辨重建方法(Neighbor Embedding+LLE,NE+LLE)。算法由兩個階段構(gòu)成:首先將高分辨率圖像訓(xùn)練集下采樣得到對應(yīng)的低分辨率圖像訓(xùn)練集,由高低分辨率圖像訓(xùn)練集構(gòu)建高低分辨率塊對訓(xùn)練集;其次,依據(jù)待重建低分辨率輸入塊,在低分辨率訓(xùn)練集內(nèi)計(jì)算其K 個近鄰塊,依據(jù)鄰域嵌入算法計(jì)算重建權(quán)重系數(shù)wi,再由對應(yīng)的K 個高分辨率近鄰塊和權(quán)重系數(shù)wi得到重建的高分辨率塊。黃福珍等人[14]基于Chang等人的工作,提出了聯(lián)合局部約束的鄰域嵌入方法,實(shí)現(xiàn)了人臉超分辨率重構(gòu)。本文將不直接使用高低分辨率塊對訓(xùn)練集用于鄰域嵌入重建,而是借鑒字典學(xué)習(xí)方法,將學(xué)習(xí)到的高低分辨率特征字典用于鄰域重建,從而能更好地表達(dá)圖像稀疏部分的流形特征。
為了構(gòu)建低秩部分高低分辨率耦合字典,將Ha的圖像塊集和對應(yīng)的Yl的圖像塊集作為低秩部分字典學(xué)習(xí)訓(xùn)練集。同時為了提取稀疏部分的流形特征,將He的圖像塊集作為稀疏部分高分辨率特征字典學(xué)習(xí)訓(xùn)練集。
由于訓(xùn)練集pl的計(jì)算量較大,本文對其進(jìn)行PCA降維,得到訓(xùn)練集,然后使用KSVD字典學(xué)習(xí)算法對進(jìn)行訓(xùn)練,得到低分辨率字典Dl和稀疏系數(shù)Γl。
最終訓(xùn)練得到關(guān)于低分辨率圖像、高分辨率圖像低秩部分和稀疏部分特征的高低分辨率字典對
圖1給出了本文字典構(gòu)建過程的示例。
給出一個待重建的低分辨率圖像Zl,假設(shè)該圖像是通過與訓(xùn)練中使用的相同的模糊和縮小操作從高分辨率圖像Yh生成,本文提出的高分辨率重建過程如下:
步驟1 對Zl進(jìn)行上采樣到指定尺寸的圖像Yl。
步驟2 對圖像Yl進(jìn)行分塊,得到圖像塊集
步驟3 對任一低分率圖像塊,依據(jù)字典Dl,由計(jì)算稀疏系數(shù)γlj。然后依據(jù)計(jì)算=,得到低秩部分高分辨率圖像塊,由此重建出高分辨率圖像的低秩部分Ha。
步驟4 對任一低分率圖像塊,按照歐式距離最小,在低分辨率字典Dl中找到K 個近鄰特征塊集Nl=,對應(yīng)的K 個高分辨率稀疏部分近鄰塊集為,計(jì)算LLE重構(gòu)權(quán)值系數(shù)Wj=(wj1,wj2,…,wjk):
圖1 字典構(gòu)建
鄰域嵌入算法假設(shè)高、低分辨率空間具有相似的流形結(jié)構(gòu),從而可使用在低分辨率空間學(xué)習(xí)得到的LLE重構(gòu)權(quán)重在高分辨率空間構(gòu)建超分辨率圖像,即低分率圖像塊對應(yīng)的稀疏部分高分辨率圖像塊為:
由此重建出高分辨率圖像的稀疏部分He。
步驟5 最后融合低秩部分圖像Ha和稀疏部分圖像He,重建最終的高分辨率圖像Yh:
具體過程見圖2。
實(shí)驗(yàn)平臺為處理器Intel Core i7-4810U@2.80 GHz的64 位Windows7 旗艦版,Matlab R2016a。為了提高重建質(zhì)量,塊重建采用重疊窗口技術(shù)。設(shè)定低秩平衡因子λ=0.45,字典元素個數(shù)為2 048,KSVD 迭代次數(shù)為40,低分辨率塊尺度為3×3 像素,滑動窗口步長為2,鄰域嵌入?yún)?shù)K=24。
為驗(yàn)證本文所提算法的有效性,將本文方法與幾種典型的圖像超分辨率重建方法NE+LLE[4]、Yang[5]、Zeyde[6]、ANR[8]、GR[8]和MCSR[9]做了實(shí)驗(yàn)比較,通過使用圖像評價中最常用的PSNR和SSIM指標(biāo)進(jìn)行客觀評判。其中PSNR 表示峰值信噪比,而SSIM 表示結(jié)構(gòu)相似性。其表達(dá)式分別為:
本文首先驗(yàn)證該算法在測試集Set14上的效果,圖3給出了一組實(shí)驗(yàn)結(jié)果。通過實(shí)驗(yàn)結(jié)果,不難發(fā)現(xiàn)本文算法在PSNR和SSIM上都有著明顯的提升。為了驗(yàn)證提出算法在不同尺度上的表現(xiàn),在測試集Set5上對不同尺度圖像的超分辨率重建進(jìn)行了測試,放大尺度分別為2、3和4,表1給出了PSNR和SSIM的量化實(shí)驗(yàn)結(jié)果,不難發(fā)現(xiàn)在進(jìn)行圖像超分辨率重建的過程中采用不同的放大尺度,提出的算法都顯示出不錯的效果。
為了進(jìn)一步驗(yàn)證提出算法的性能,本文給出了一組超分辨率重建結(jié)果的可視化實(shí)驗(yàn),如圖4 和圖5 所示。由圖可以看出:雙三次插值重建對圖像噪聲幾乎沒有作用,重建結(jié)果相當(dāng)模糊,缺失了大量的高頻細(xì)節(jié)信息;Yang 等的算法通過先驗(yàn)重建圖像的高頻信息,較之于插值算法性能有所提升,重建出了原始圖像的大部分信息,但是重建圖像的邊緣不夠清晰,有些模糊;Zeyde算法的重建圖像較Yang 的邊緣信息更優(yōu),但是重建出的圖像帶有陰影,影響了視覺效果;NE+LLE 算法的重建圖像具有不錯的細(xì)節(jié)信息,但是顆粒感強(qiáng)烈,影響視覺;本文算法融合稀疏表示和LLE 算法對圖像進(jìn)行超分辨率重建,使得重建圖像邊緣清晰,視覺效果更好。
圖2 圖像超分辨率重建
圖3 測試集Set14上放大尺度為3的PSNR和SSIM
表1 測試集Set5上不同放大尺度的PSNR和SSIM
圖4 放大尺度為3時butterfly各算法重構(gòu)效果比較
圖5 放大尺度為3時foreman各算法重構(gòu)效果比較
針對圖像超分辨率重建算法忽略圖像內(nèi)部結(jié)構(gòu)信息的原因,本文通過采用低秩矩陣恢復(fù)理論將分別對圖像的低秩部分和稀疏部分進(jìn)行重建,最后融合得到最終的高分辨率圖像。對于原高分辨率圖像,首先進(jìn)行低秩分解,得到含有原始圖像大部分信息的低秩部分,和含高頻信息的稀疏部分。對低秩部分、稀疏部分和原始圖像對應(yīng)的低分辨率圖像進(jìn)行聯(lián)合訓(xùn)練,構(gòu)建對應(yīng)的特征字典對。對待重構(gòu)的低分辨率圖像分別基于學(xué)習(xí)到的特征字典對采用稀疏表示和鄰域回歸重建出圖像的低秩部分和稀疏部分,最后將重建的低秩部分和稀疏部分融合得到高分辨率圖像。實(shí)驗(yàn)結(jié)果表明,本文算法的重建結(jié)果相較于多種超分辨率方法,得到的圖像邊緣和結(jié)構(gòu)信息更加豐富,而且在客觀評價標(biāo)準(zhǔn)PSNR 和SSIM上獲得了不錯的提升。