陳萱華,張靜,陶建平,顧帥楠
(武警海警學(xué)院情報(bào)偵察系,浙江寧波 315801)
圖像超分辨率SR(Super Resolution) 指從低分辨率的圖像或圖像序列中恢復(fù)出高分辨率的圖像。將低分辨率的圖像用LR(Low Resolution)表示,恢復(fù)出的高分辨率的圖像用HR(High Resolution)表示。根據(jù)輸入圖像進(jìn)行分類,輸入為單張圖像即為SISR(Single Image Super-Resolution),輸入為圖像序列則稱作MFSR(Multi-Frame Super-Resolution)。
圖像超分辨率是計(jì)算機(jī)視覺中一個(gè)很經(jīng)典的問題,在過去的十幾年中,在國內(nèi)外都有非常廣泛和深入的研究。
獲得高分辨率圖像的最直接方法是使用高分辨率圖像傳感器得到,然而這種方式的成本較高,在很多場景下無法實(shí)現(xiàn)。由此,使用圖像超分辨率技術(shù)從低分辨率圖像中重建高分辨率的圖像細(xì)節(jié)十分重要。
圖像超分的關(guān)鍵在于盡可能多地恢復(fù)出圖像中的高頻信息,即由高分辨率圖像退化為低分辨率圖像中丟失的圖像信息。如圖1所示,高分辨率圖像經(jīng)過模糊、降采樣、加噪等步驟,退化為低分辨率的圖像,這個(gè)退化過程為圖像超分技術(shù)提供了技術(shù)原理基礎(chǔ)。很直觀地,若是按照這個(gè)過程直接反推,便可重建出高分辨率圖像,由此進(jìn)一步發(fā)展出了圖像去模糊化、圖像上采樣、圖像去噪等不同研究分支。
圖1 高分辨率圖像(LR)和低分辨率圖像(LR)相互轉(zhuǎn)換的過程
對于圖像超分辨率,存在各種各樣的解決方案。傳統(tǒng)方法中,一種常用的技術(shù)是插值,該方法易于實(shí)現(xiàn),但在視覺質(zhì)量和細(xì)節(jié)的保留上存在很多不足,重建的圖像較為模糊。一種更復(fù)雜的方法是利用圖像內(nèi)部的相似性或者低分辨率圖像和對應(yīng)的高質(zhì)量圖像的數(shù)據(jù)集,通過某種方法學(xué)習(xí)二者之間的映射,而這就給了深度學(xué)習(xí)用武之地。由于深度學(xué)習(xí)模型可以很好地通過大量數(shù)據(jù)集學(xué)習(xí)這種映射,所以從2014年開始,計(jì)算機(jī)視覺領(lǐng)域的科學(xué)家們提出了許多開創(chuàng)性的深度學(xué)習(xí)模型,不斷刷新圖像超分辨率的表現(xiàn)。
2.1.1 基于插值的方法
圖像超分的傳統(tǒng)方法中最常用的是基于插值的方法將圖像放大,比如最近鄰(nearest)、雙線性(bilinear)、雙三次(bicubic)等不同的插值方法。這種方法的本質(zhì)是用像素周圍相鄰像素的信息來推測當(dāng)前像素的像素值。但該方法無法恢復(fù)出圖像中缺少的高頻信息,也難以處理圖像中的邊緣等像素值發(fā)生巨變的地方,導(dǎo)致恢復(fù)出的圖像整體較為模糊,物體邊緣不清晰。
2.1.2 基于回歸的方法
另一個(gè)常用的方法是將圖像超分的過程看作一個(gè)回歸問題,利用貝葉斯中的最大后驗(yàn)概率模型,對退化模型進(jìn)行反向求解(比如計(jì)算模糊矩陣的逆矩陣、構(gòu)建映射關(guān)系等)。
2.1.3 基于淺層學(xué)習(xí)的方法
2004年,Chang等人[1]使用了流形學(xué)習(xí)中的locally linear embedding(LLE) 局部線性嵌入方法,假設(shè)低維空間中的低分辨率圖像內(nèi)部特征之間的線性關(guān)系在高維空間中的高分辨率圖像中能夠保持。2008 年,Yang 等人[2]引入稀疏表示方法,將高分辨率圖像和低分辨率圖像分別用字典和原子進(jìn)行表示,構(gòu)建高-低分辨率圖像集進(jìn)行字典的訓(xùn)練,該訓(xùn)練可以離線進(jìn)行,訓(xùn)練后的字典可以直接使用。2009年,Glasner 等人[3]使用示例學(xué)習(xí)方法,將圖像分為多個(gè)相互重疊的圖像塊,進(jìn)行最近鄰搜索,只利用低分辨率圖像自身的信息進(jìn)行重構(gòu),重構(gòu)在低分辨率紋理信息豐富的部分效果較好,但受限于低分辨率圖像自身特性。
這些傳統(tǒng)方法都較為簡單直觀,重建質(zhì)量較差,或是需要提供對圖像的先驗(yàn)認(rèn)知。其中,傳統(tǒng)方法中通過回歸、淺層學(xué)習(xí)等方式計(jì)算圖像內(nèi)線性關(guān)系、高-低分辨率圖像之間的映射關(guān)系來恢復(fù)高分辨率圖像的方法的特性與深度學(xué)習(xí)的優(yōu)勢非常適配,為深度學(xué)習(xí)方法的引入提供了很好的切口。
基于深度學(xué)習(xí)方法進(jìn)行圖像超分辨率的關(guān)鍵之一在于深度學(xué)習(xí)網(wǎng)絡(luò)的架構(gòu),隨著科學(xué)技術(shù)的發(fā)展,不同的新型網(wǎng)絡(luò)模型被提出,將它們運(yùn)用在圖像超分辨率的問題中,圖像超分辨率的模型和性能也日新月異。
2.2.1 SRCNN
SRCNN是Dong等人在2014年發(fā)表的文章Learning a deep convolutional network for image superresolution[4]中提出的圖像超分辨率方法,是將深度學(xué)習(xí)的方法應(yīng)用在圖像超分辨率問題上的開山之作。
SRCNN 是Super-Resolution Convolutional Neural Network 的縮寫,即超分辨率卷積神經(jīng)網(wǎng)絡(luò)。與傳統(tǒng)方法相比,SRCNN 使用卷積神經(jīng)網(wǎng)絡(luò)提取圖像特征(圖像塊)、學(xué)習(xí)低分辨率圖像與高分辨率圖像間的映射和高分辨率圖像重建。這三個(gè)步驟分別經(jīng)過三個(gè)卷積層來實(shí)現(xiàn)。
在經(jīng)過卷積層之前,SRCNN需要對輸入圖像進(jìn)行預(yù)處理,利用雙三次插值方法將輸入的低分辨率圖像放大為與目標(biāo)高分辨率圖像相同的尺寸。
如圖2 所示,SRCNN 的網(wǎng)絡(luò)結(jié)構(gòu)非常簡單,只有三層神經(jīng)網(wǎng)絡(luò),按照輸入數(shù)據(jù)經(jīng)過的順序分別為低分辨率圖像塊的提取和表示層、低-高分辨率圖像的特征非線性映射層和高分辨率圖像重建層。三個(gè)卷積層的卷積核的大小分別為9×9,1×1 和5×5,得到的低分辨率圖像、高分辨率圖像特征的特征通道數(shù)分別為64和32,文章中的實(shí)驗(yàn)經(jīng)過雙三次插值處理后的輸入到輸出的維度變化為:256×256 →256×256×64 →256×256×32 →256×256。
SRCNN在Timofte數(shù)據(jù)集(包含91幅圖像)和ImageNet數(shù)據(jù)集上進(jìn)行訓(xùn)練,損失函數(shù)為均方誤差MSE,使用峰值信噪比PSNR 作為圖像超分的質(zhì)量評價(jià)標(biāo)準(zhǔn)。SRCNN 的成功證明了深度學(xué)習(xí)在圖像超分領(lǐng)域的可行性。
2.2.2 VDSR
2015年,ResNet的提出解決了深度學(xué)習(xí)中網(wǎng)絡(luò)太深時(shí)難以訓(xùn)練的問題,更深層的網(wǎng)絡(luò)擁有更大的全局感受野,大幅提高了網(wǎng)絡(luò)的學(xué)習(xí)能力。VDSR[5]將殘差網(wǎng)絡(luò)的思想用于圖像超分辨率,與SRCNN 相比,VDSR不需要將大量的圖像信息從輸入端經(jīng)過所有網(wǎng)絡(luò)層達(dá)到輸出端,而是學(xué)習(xí)圖像的殘差,極大地提升了效率。
如圖3所示,VDSR的網(wǎng)絡(luò)主要學(xué)習(xí)殘差,將經(jīng)過插值得到的目標(biāo)圖像大小的原低分辨率圖像與經(jīng)過神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)到的殘差相加,得到最后的高分辨率圖像。
圖3 VDSR的模型框架
殘差的思想非常適用于圖像超分辨率。低分辨率圖像和高分辨率圖像中其實(shí)有大部分信息是相似的,即圖像中攜帶的低頻信息,而差異明顯的部分主要在于細(xì)節(jié)部分的高頻信息。因此,相較于直接學(xué)習(xí)低分辨率圖像到高分辨率的映射關(guān)系,讓網(wǎng)絡(luò)學(xué)習(xí)低分辨率圖像與高分辨率圖像內(nèi)部高頻信息之間的殘差不但能夠減少開銷、增加網(wǎng)絡(luò)的深度,更能提高模型性能。感受野是指輸出圖像中每個(gè)像素能夠反映輸入圖像區(qū)域的大小,增加網(wǎng)絡(luò)深度能夠增大,使得網(wǎng)絡(luò)能夠利用更多的上下文信息,學(xué)習(xí)到更全局的映射。VDSR的網(wǎng)絡(luò)中有20層的卷積,網(wǎng)絡(luò)的學(xué)習(xí)和表示能力都比只有3層卷積的SRCNN有了顯著的提升。同時(shí),殘差學(xué)習(xí)的圖像信息較為稀疏,大部分為0或很小的值,使得學(xué)習(xí)的收斂速度快。
除了學(xué)習(xí)殘差,VDSR 還提出了其他貢獻(xiàn)。比如對圖像進(jìn)行補(bǔ)零操作,使得經(jīng)過卷積層的各級特征保持和目標(biāo)圖像一樣的大小,而不隨著卷積核大小和步長的變化而變小。VDSR還將不同尺度的圖像一起進(jìn)行訓(xùn)練,使得訓(xùn)練得到的網(wǎng)絡(luò)具有解決不同超分辨率的能力。在VDSR 中,圖像被轉(zhuǎn)化至YCbCr 色彩空間,只使用亮度通道(Y),網(wǎng)絡(luò)的輸出端合并輸入端經(jīng)過插值圖像的CbCr 通道,得到最終的彩色圖像。基于的原理在于相較于色差,人類視覺對亮度變化更為敏感。另外,VDSR 使用了自適應(yīng)梯度裁剪(Adjustable Gradient Clipping)策略,將梯度限制在某一范圍之內(nèi),加快了收斂速度。在VDSR 基礎(chǔ)上,后續(xù)提出的DRRN[6]中就使用了VDSR 的調(diào)整梯度裁剪策略和DRCN[7]的遞歸學(xué)習(xí)策略。
以上的幾種基于深度學(xué)習(xí)的圖像超分辨率方法都有對圖像進(jìn)行預(yù)采樣的部分,即在將圖像輸入深度神經(jīng)網(wǎng)絡(luò)之前,先使用插值方法將低分辨率圖像放大。但是這樣的處理會(huì)引入插值方法固有的問題,比如會(huì)使放大后的圖像較為平滑和模糊,丟失了邊緣等細(xì)節(jié)信息。并且,網(wǎng)絡(luò)一直傳遞高分辨率圖像大小的數(shù)據(jù),增加了網(wǎng)絡(luò)的開銷。
針對這個(gè)問題,研究者們提出了對圖像超分辨率采用后上采樣框架,將上采樣模塊集成到網(wǎng)絡(luò)末端的可學(xué)習(xí)層,形成一個(gè)端到端的模型架構(gòu)。這種方法令網(wǎng)絡(luò)能夠在低分辨率大小上進(jìn)行學(xué)習(xí),最后再使用上采樣方法得到目標(biāo)大小的圖像,節(jié)省了開支,提高了效率和性能。
圖像超分辨率是計(jì)算機(jī)視覺中的重要研究問題,運(yùn)用范圍十分廣泛。經(jīng)過較長時(shí)間的研究,圖像超分辨率無論是在傳統(tǒng)方法還是深度學(xué)習(xí)方法上,都已經(jīng)形成了非常成熟的技術(shù)架構(gòu)。本文按照傳統(tǒng)方法和深度學(xué)習(xí)方法兩種類型,對圖像超分技術(shù)進(jìn)行了探究和分析。目前,圖像超分仍然需要解決大尺度、真實(shí)場景下的圖像超分,以及深度學(xué)習(xí)網(wǎng)絡(luò)輕量化的問題。