向 豪, 孫 冬, 高清維, 盧一相
(安徽大學(xué) 電氣工程與自動(dòng)化學(xué)院,安徽 合肥 230601)
視頻插值是視頻處理中的一個(gè)重要研究方向,主要用于精確恢復(fù)低分辨率視頻圖像中的某些未知像素信息。隨著監(jiān)控系統(tǒng)、遙感測(cè)控、自動(dòng)駕駛等領(lǐng)域中視頻圖像技術(shù)的廣泛應(yīng)用,人們對(duì)高分辨率視頻圖像的需求越來越高,但是傳統(tǒng)的視頻圖像插值算法很難恢復(fù)原始高分辨率圖像中的細(xì)節(jié)信息。
目前研究者已提出大量插值算法用于視頻圖像高分辨率重建,其中應(yīng)用最多的是基于核函數(shù)的插值算法,如雙線性、雙立方和B樣條插值算法等[1,2]。這類算法思想簡(jiǎn)單,主要是利用一個(gè)特定核函數(shù)對(duì)目標(biāo)點(diǎn)周圍的像素值進(jìn)行加權(quán),從而計(jì)算出該目標(biāo)點(diǎn)的像素值,具有較低的算法復(fù)雜度和較快的運(yùn)行速度。但該類算法將整個(gè)圖像看作一個(gè)整體,沒有區(qū)分圖像中各個(gè)像素表達(dá)的特征信息,導(dǎo)致重建的高分辨率圖像包含的高頻信息較少,鋸齒和模糊效應(yīng)較為嚴(yán)重。
圖像的細(xì)節(jié)主要集中在圖像的邊緣、紋理等高頻區(qū)域,人類視覺系統(tǒng)對(duì)這些內(nèi)容敏感度較高,因此準(zhǔn)確重建圖像的細(xì)節(jié)對(duì)視頻圖像的插值極為關(guān)鍵。文獻(xiàn)[3~5]研究了基于邊緣檢測(cè)的圖像插值方法,即沿著圖像的邊緣方向進(jìn)行插值,保證了邊緣不被模糊化,提升了插值后的視覺效果。Li X在文獻(xiàn)[6]中提出了隱式利用邊緣信息插值圖像的算法,其通過自適應(yīng)回歸模型,來估計(jì)低分辨率圖像像素間的協(xié)方差關(guān)系系數(shù),再根據(jù)幾何對(duì)偶性假設(shè),計(jì)算未知高分辨率圖像像素,因此具有較好保留邊緣特性的優(yōu)點(diǎn),但是當(dāng)圖像結(jié)構(gòu)復(fù)雜或者有噪聲干擾時(shí)容易造成邊緣模糊和人工痕跡。
基于貝葉斯理論框架的圖像插值算法也研究甚多[7~9],該類方法首先將圖像的邊緣結(jié)構(gòu)信息作為先驗(yàn)知識(shí),然后通過正則化方程來確定高分辨率圖像的最大后驗(yàn)概率。該方法在降低未知像素自由度的同時(shí),還可以恢復(fù)插值后圖像的邊緣結(jié)構(gòu)以及抑制偽影的產(chǎn)生,從而建立更清晰的高分辨圖像。但是該方法難以準(zhǔn)確構(gòu)造約束項(xiàng),優(yōu)化求解也比較復(fù)雜,給后繼的具體實(shí)現(xiàn)帶來了困難。
近年來,許多學(xué)者將深度學(xué)習(xí)理論也引入到插值算法中。文獻(xiàn)[10~12]提出利用卷積神經(jīng)網(wǎng)絡(luò)去學(xué)習(xí)低分辨率圖像與高分辨率圖像之間的映射規(guī)則。首先將低分辨率圖像送入神經(jīng)網(wǎng)絡(luò)來擬合圖像中的非線性特征,然后根據(jù)先驗(yàn)知識(shí)設(shè)計(jì)損失函數(shù),通過大量數(shù)據(jù)訓(xùn)練來尋求該函數(shù)的最優(yōu)解,最后輸出高分辨率圖像??紤]到不同的放大因子需要分別對(duì)模型進(jìn)行大量的數(shù)據(jù)訓(xùn)練,因此該方法不能對(duì)圖像進(jìn)行任意放大,此外利用該方法重建后的圖像通常過于平滑,一定程度上還會(huì)丟失一些重要的高頻信息。
大多數(shù)自然圖像都具有較強(qiáng)的空間冗余結(jié)構(gòu),Sun D在文獻(xiàn)[13]中根據(jù)這一特性提出了信號(hào)的非局部自回歸(non-local auto regressive,NAR)算法。NAR利用圖像中的相似性先驗(yàn),指出了位于圖像中不同位置的局部圖像塊之間的相似關(guān)系,再根據(jù)不同的采樣網(wǎng)格在待插值圖像塊的非局部區(qū)域來建立局部字典,然后通過相似性關(guān)系對(duì)字典進(jìn)行訓(xùn)練,形成K個(gè)與該圖像塊相似的圖像塊,通過對(duì)應(yīng)的采樣網(wǎng)格對(duì)其進(jìn)行下采樣,最后將上述圖像塊互補(bǔ)拼貼成高分辨率視頻圖像。NAR算法很好地解決了邊緣和紋理等高頻信息恢復(fù)較差的問題。
由于視頻是一幅幅視頻圖像的集合,相鄰視頻圖像同一位置的像素值變化不大,因此本文在NAR的基礎(chǔ)上進(jìn)行了改進(jìn),利用視頻幀間和幀內(nèi)冗余的相似性結(jié)構(gòu)來對(duì)要恢復(fù)的低分辨率視頻圖像進(jìn)行插值。實(shí)驗(yàn)表明,本文算法取得了比NAR更好的圖像插值效果。
由于視頻圖像幀間和幀內(nèi)存在大量的相似性結(jié)構(gòu),故圖像中的每個(gè)圖像塊均可由K個(gè)不同位置處的圖像塊進(jìn)行線性組合,如圖1(a)所示,此時(shí)圖像塊方程為
s=Gisj+e≈Gisj
(1)
式中Gi為退化矩陣,e為殘差,sj為與當(dāng)前待插值的圖像塊相似的圖像塊,本文的主要工作也就是對(duì)sj的尋找。
圖1(b)中方塊si為當(dāng)前視頻圖像中待拼貼的圖像塊,以si為中心,設(shè)立邊長(zhǎng)為W的窗口,同理在當(dāng)前幀的前后各L幀(圖1(b)中只選用了前后各一幀作為參考圖像)中確定相同位置及大小的搜索框,作為si相似父塊的搜索區(qū)域,根據(jù)不同的下采樣網(wǎng)格,將該區(qū)域中的圖像塊以列堆疊的方式放進(jìn)三個(gè)不同的字典Sp(00,01,10)中,依次計(jì)算三個(gè)字典中的每個(gè)列向量與si(用列向量表示)的相關(guān)程度,對(duì)所得結(jié)果按照大小順序進(jìn)行排序,保留前K個(gè)最大相關(guān)度所對(duì)應(yīng)的列向量,用以對(duì)si進(jìn)行線性表示,因此得到三個(gè)si的近似估計(jì),再將上述三個(gè)圖像塊根據(jù)相應(yīng)的采樣網(wǎng)格進(jìn)行下采樣,最后將下采樣后的低分辨率圖像互補(bǔ)拼貼成高分辨率視頻圖像塊(如圖1(c)中箭頭所指的最后一個(gè)圖像塊所示)。
圖1 算法框架
首先,確定下采樣網(wǎng)格
Gi=G11={(x,y)│x=2a-1,y=2b-1}a,b∈Z
(2)
式中i為待插值圖像塊的左上角坐標(biāo)(如G11用來對(duì)左上角坐標(biāo)橫縱坐標(biāo)均為奇數(shù)的圖像塊進(jìn)行下采樣)。同理,可以定義其他下采樣網(wǎng)格G10,G01和G00。
設(shè)置與采樣網(wǎng)格G對(duì)應(yīng)的退化矩陣,用于將sj以隔行隔列抽取的方式映射成低分辨率圖像塊,再將得到的低分辨率圖像塊拼貼成高分辨率圖像塊。
從當(dāng)前視頻圖像中取出左上角坐標(biāo)為(xi,yi)處的圖像塊si,建立以si為中心,寬度為W的窗口。同理,在當(dāng)前視頻圖像的前后L幀中確定相應(yīng)位置及大小的搜索框,作為查找與si相似的圖像塊的候選區(qū)域。在每個(gè)搜索框中尋找式(2)中的三種采樣網(wǎng)格對(duì)應(yīng)的圖像塊,放進(jìn)相應(yīng)的字典Sp(p=00,01,10)中,然后對(duì)字典中的原子進(jìn)行訓(xùn)練,本文使用最大歸一化內(nèi)積的方式來判別圖像塊Spj(Sp中的原子)與圖像塊的si的相似程度
(3)
則,si在Sp下的系數(shù)表示為
(4)
(5)
式(5)是一個(gè)凸優(yōu)化求解問題,可以得到其封閉解
(6)
因此,得到插值方程
(7)
當(dāng)所有的圖像塊拼貼完成以后,用式(7)對(duì)si進(jìn)行更新,然后將更新后的高分辨率視頻圖像塊作為初始圖像塊,緊接著進(jìn)行下一次的迭代。
由于高分辨率視頻圖像sj往往是未知的,所以為了使式(7)具有實(shí)際意義,本文將所有視頻圖像序列進(jìn)行下采樣處理,得到低分辨率視頻圖像f=Ds,再采用傳統(tǒng)的雙立方插值算法還原成高分辨率圖像sj,然后為sj確定自相似性圖像塊,代入到上式中可以得到
(8)
該視頻圖像中所有的圖像塊均采用互補(bǔ)拼貼處理,并用式(9)對(duì)si進(jìn)行更新,得到
(9)
視頻圖像插值算法過程如下:
準(zhǔn)備階段:
1)將低分辨率視頻切割成幀圖像集,再將該視頻圖像集逐幀進(jìn)行雙立方插值,還原至原圖像大小,得到高分辨率視頻幀的近似估計(jì)。
2)設(shè)置參數(shù):塊尺寸n,窗口W,參考幀數(shù)L,迭代次數(shù)p。
插值階段:
1)創(chuàng)建塊尺寸大小為n的滑窗,步長(zhǎng)設(shè)置為1,對(duì)待插值的視頻圖像進(jìn)行分塊處理,將切割后的圖像子塊以列堆疊的方式放進(jìn)字典sm中,同理對(duì)參考幀也進(jìn)行相同分塊操作,放進(jìn)字典Smj(j=1,2,3,…)中。
5)將輸出的高分辨率圖像進(jìn)行連接,組合成高分辨率視頻。
輸出:高分辨率視頻。
1)參考幀數(shù)L的選取。以待插值的視頻圖像為中心,前后各L/2幀作為參考,實(shí)驗(yàn)結(jié)果表明,在一定范圍內(nèi)隨著參考幀數(shù)的增加,要插值的圖像塊能夠利用的有用信息越多,重建的效果也越好,但參考幀數(shù)選取過多容易產(chǎn)生過擬合效果,插值質(zhì)量會(huì)有所下降,時(shí)間也是線性增加。本文選取L=2。
2)圖像塊尺寸n大小的選取。對(duì)于不同分辨率的圖像,如果塊尺寸選擇過大會(huì)給非局部自相似性圖像塊的查找?guī)硪欢ǖ碾y度,而過小的塊尺寸又不能提供足夠的有效像素信息來表示圖像的局部特征,同樣會(huì)影響插值圖像的質(zhì)量。本文將塊尺寸設(shè)置為n=8。
3)窗口W大小的選取。確定以si為中心,寬度為W的窗口,在前后多幀圖像中確定同樣大小及位置的搜索框,在這些區(qū)域?qū)ふ覉D像si的相似圖像塊,過大的窗口會(huì)增加計(jì)算量,對(duì)插值的性能有一定的影響。本文將Foreman和Ice視頻序列的窗口的寬度分別設(shè)置為W=14和W=36。
4)迭代次數(shù)p的選取。迭代次數(shù)對(duì)插值的算法來說影響并不是很大,但是如果p選擇過大,將增加本文算法的運(yùn)行時(shí)間,故本文選取p=4。
為了驗(yàn)證本文所提出的視頻圖像插值算法的可行性,本文通過選取2組標(biāo)準(zhǔn)視頻序列Foreman(288×352)和Ice(576×704)進(jìn)行插值重建,將重建后的結(jié)果和原始視頻圖像進(jìn)行比較,采用PSNR和SSIM對(duì)插值后的高分辨率視頻圖像進(jìn)行客觀評(píng)判。實(shí)驗(yàn)硬件平臺(tái)為Intel?CoreTMi5-7300HQ@ 2.5GHz,8G運(yùn)行內(nèi)存;軟件平臺(tái)為Windows 10教育版,MATLAB 2016b。實(shí)驗(yàn)選取參數(shù)為:n=8,W=20,p=4,L=2。
首先對(duì)高分辨率視頻進(jìn)行下采樣,以獲取低分辨率視頻圖像(144×176和288×352),再使用雙立方插值、NAR算法以及本文算法來對(duì)上述低分辨率視頻圖像進(jìn)行插值。
圖2分別顯示了用本文算法對(duì)視頻序列Foreman和Ice的第4幀視頻圖像的插值結(jié)果,從圖中可以看出,本文算法能夠?qū)D像的邊緣和紋理等高頻信息進(jìn)行精準(zhǔn)的恢復(fù),重建后的圖像較為清晰,沒有模糊和鋸齒效應(yīng)。
圖2 Foreman和Ice第4幀低分辨率視頻圖像及部分放大圖像細(xì)節(jié)
從圖3中可以看出雙立方算法在圖像低頻部分能夠得到較為平滑的插值結(jié)果,但是在圖像的邊緣區(qū)域顯得格外的模糊,而且鋸齒效應(yīng)嚴(yán)重(如圖中墻壁上的斜杠以及帽子的邊緣部分)。因此,可以看出雙立方插值并沒有有效恢復(fù)圖像的高頻細(xì)節(jié)信息,從而圖像插值后的結(jié)果不是很理想。
圖3 Foreman第5幀低分辨率視頻圖像及各算法插值結(jié)果
圖4中可看出,NAR插值算法和本文所提出的算法具有類似的主觀視覺質(zhì)量,這兩種方法都充分利用了圖像所包含的空間冗余結(jié)構(gòu)信息,使得圖像中的平坦區(qū)域具有光滑的效果,并且對(duì)于圖像邊緣和紋理等高頻信息較為豐富的部分也能實(shí)現(xiàn)較好插值重建,但是從圖中男子手握拳頭這個(gè)細(xì)節(jié)可以發(fā)現(xiàn),使用本文算法進(jìn)行插值得到的圖像在邊緣的恢復(fù)上相較NAR算法來說實(shí)驗(yàn)效果更優(yōu),主要原因是本文插值算法在NAR算法的基礎(chǔ)上結(jié)合相鄰圖像之間的空間冗余性進(jìn)行插值,使非局部相似圖像塊的查找范圍更廣,因此也具有更加滿意的插值效果。
圖4 Ice第5幀低分辨率視頻圖像及各算法插值結(jié)果
從表1可以看出在PSNR和SSIM兩個(gè)評(píng)價(jià)指標(biāo)下,本文方法均優(yōu)于雙立方插值算法及NAR算法,且隨著圖像中的高頻信息的增多,這種優(yōu)勢(shì)就會(huì)越明顯。
表1 Foreman和Ice中相應(yīng)視頻圖像插值結(jié)果的PSNR和SSIM客觀質(zhì)量對(duì)比
基于視頻圖像間存在的空間冗余信息,本文在NAR模型的基礎(chǔ)上構(gòu)造了一個(gè)具有閉合解的數(shù)學(xué)模型。該模型利用了視頻圖像幀間的自相似先驗(yàn),將待插值圖像塊相似父塊的搜索區(qū)域拓展到相鄰多幀圖像上,使該圖像塊表征的像素信息更為精確,恢復(fù)的高分辨率圖像也愈加清晰。實(shí)驗(yàn)表明:在PSNR和SSIM兩個(gè)評(píng)價(jià)標(biāo)準(zhǔn)下,本文方法在處理邊緣豐富的圖像時(shí)效果明顯優(yōu)于雙立方和NAR方法。進(jìn)一步研究將該算法拓展應(yīng)用于視頻編解碼。因?yàn)楝F(xiàn)有高分辨率視頻傳輸時(shí)需要較大的碼率,然而較大的碼率需要足夠的帶寬作為支撐,成本消費(fèi)較大,所以,可以考慮先將高分辨率視頻進(jìn)行數(shù)據(jù)壓縮,即下采樣至低分辨率視頻,再進(jìn)行視頻的編解碼,最后通過本文算法對(duì)該視頻進(jìn)行超分辨率重建,獲取較高質(zhì)量的輸出視頻。