









關鍵詞:視頻超分辨率;場景先驗學習;注意力機制
中圖分類號:TP391 文獻標志碼:A
0引言(Introduction)
隨著人工智能的快速發展和信息化時代的來臨,人們對于視頻內容的需求日益增長,同時對視頻質量的要求也越來越高。視頻超分辨率算法因此迎來了廣闊的市場需求。然而,目前大多數VSR方法只關注臨近幾幀間的信息,忽視了長時間段內場景中所包含的先驗信息,導致現有VSR方法對于時間信息的利用率普遍偏低。
本文針對長時間段內視頻場景中所包含的先驗信息未被充分利用的問題,提出了一種場景先驗學習模塊(Scene Prior Learning module,SPL)。SPL模塊采用即插即用的插件結構設計,可以方便地插入大多數基于注意力機制的視頻超分辨率(VSR)算法中。該模塊以較低的資源開銷,有效地學習和利用視頻序列中的場景先驗信息,完成對場景先驗特征的更新迭代與特征增強,顯著提升了視頻超分辨率算法的性能。
1相關研究(Related research)
1.1圖像超分辨率算法
插值法是早期圖像超分辨率(Single Image Super-Resolution,SISR)方法研究中常用的一種技術,其核心原理是通過對低分辨率圖像的像素進行插值運算,實現高分辨率圖像的重建。這種方法源于對圖像采樣定理的理解,即通過對低分辨率圖像的插值操作,可以還原出其高頻信息,從而得到更高分辨率的圖像。陶洪久等根據圖像小波變換和插值處理的特點,提出了一種將小波分解與插值算法相結合的圖像插值處理方法,旨在提高圖像的分辨率。
2015年,DONG等率先將卷積神經網絡(Convolutional Neural Network,CNN)引入SISR領域,他提出了一種基于卷積神經網絡的圖像超分辨方法SRCNN(Super-Resolution Convolutional Neural Network)。SRCNN堆疊了多個卷積層,可以自動學習圖像的特征表示,從而提高超分辨率的性能。此外,SRCNN采用端到端的訓練策略,即從低分辨率圖像直接學習到高分辨率圖像的映射,避免了傳統方法中多個階段的串聯處理,簡化了算法流程,并提高了模型的整體性能。隨后,肖進勝等在SRCNN的基礎上提出了改進的基于卷積神經網絡的圖像超分辨率算法,該算法在原有的三層卷積神經網絡中,通過調整卷積核大小、減少參數及加入池化層等方式,降低了計算復雜度,減少了訓練消耗的時間。KIM等提出的深度殘差超分辨率方法VDSR(Very-Deep Super-Resolution),引入了殘差學習的概念,并且通過增加網絡的層數提高了模型的表達能力,使模型能更好地處理圖像中的細微差異,提高了超分辨率結果的準確性。到了2021年,KONG等將研究重點放在算法的運算速度上,提出了一種利用數據特性加速超分辨率網絡的通用框架ClassSR(Class Super-Resolution),該方法不僅關注算法的性能表現,而且還綜合考量了算法的運算速度及資源消耗問題。
1.2視頻超分辨率算法
隨著研究的深入,VSR(視頻超分辨率)領域涌現出了眾多優秀的方法。研究人員的創新努力,極大地推動了VSR技術的發展,使其能夠更好地滿足實際需求,并展現出更加卓越的性能表現。
在2016年,KAPPELER等使用類似SRCNN的方式將卷積神經網絡引入視頻超分領域,并提出了VSRNet(Video Super-Resolution Network),自此卷積神經網絡在VSR領域得到迅速發展。2019年,XUE等基于SpyNet(Spatial Pyramid Network)提出了一種任務導向流TOFlow(Task-Oriented Flow),將預訓練的光流模塊和后續處理聯合訓練,學習到了適用于特定任務的光流特征表達,在視頻插幀、視頻去噪和視頻超分辨率等任務中均展現了出色的性能。WANG等提出了一個時空注意力融合模塊(Temporal and Spatial Attention fusion module,TSA),通過計算參考幀和每一相鄰幀特征之間的元素相關性來引入時間注意力,并進一步應用空間注意力為每個通道中的每個位置分配權重,從而更有效地利用跨通道和空間信息。此外,YI等利用非局部注意力機制提出了一種基于非局部結構的漸進融合網絡PFNL(Progressive Fusion Non-Local Video Super-Resolution Network)。
在過去的研究中,深度卷積神經網絡成為視頻超分辨率領域的主流方法,然而大多數方法仍舊只關注臨近幾幀的信息,對于長視頻序列場景的先驗信息未能充分利用。因此,如何有效地利用長視頻場景的先驗信息,成為VSR領域面臨的一個重要挑戰。
2算法實現(Algorithm implementation)
2.1場景先驗學習模塊的總體概覽
本章節聚焦于長視頻場景的先驗信息的利用,提出了一種基于場景先驗學習的超分辨率算法。所提出的場景先驗學習模塊(Scene Prior Learning module,SPL)可以嵌入含注意力機制的VSR方法中,在保證較少的資源消耗的情況下,盡可能地利用輸入的長視頻序列時間信息。為了提高模塊的適配性,SPL被設計為一種嵌入式的黑盒模塊,該模塊依賴于注意力結構,對于被嵌入模型(基線模型)的其他組成部分,不需要進行太大的變動。場景先驗結構在VSR模型中的結構圖如圖1所示。
對于時間注意力(TA),嵌入SPL模塊后,輸入注意力單元的特征將會被SPL模塊進一步增強處理。在空間注意力(SA)中,SPL模塊增強的特征將與空間注意力特征進行逐元素乘積計算,以進一步提升其表征能力。通道注意力(CA)通常出現在多個注意力塊中,如RCAN(Residual Channel Attention Network)中的RCABs(Residual Channel Attention Blocks)等。在這種情況下,僅在第一個RCAB中嵌入SPL模塊,以增強特征映射并提高通道關注,而其他RCAB保持不變。非局部注意力(NLA)具有3個分支結構,SPL模塊只嵌入在其中一個分支中。這一調整旨在加強模型對關鍵信息的捕獲,提高對多尺度和多通道特征的建模能力。
3實驗(Experiment)
3.1基線模型選擇
為了驗證SPL模塊作為一種插件式模塊結構的普適性和有效性,本實驗設計將各類模型方法嵌入其中進行測試。本實驗將選擇當前領先的一些SOTA(State-of-the-art)方法作為承載模型,下文統一將這種承載模型稱為“基線模型”。
同時,SPL模塊的一大特點是對注意力機制的性能增強作用。因此,為了全面評估SPL在各類注意力結構中的性能表現,本實驗調研了現有的SOTA方法后,最終選擇了以下典型的模型作為基線模型,但這并不代表SPL模塊只適用于這些模型。
RCAN作為實驗中通道注意力的基線模型。EDVR(Enhanced Deep Video Restoration)和TGA(Temporal" Group Attention)作為實驗中時間注意力的基線模型。MuCAN(Multi-Correspondence Aggregation" Network)作為實驗中空間注意力的基線模型。PFNL作為實驗中非局部注意力的基線模型。
3.2實驗數據集
為了保證實驗的公平性和可比性,所有實驗將使用統一的訓練設置和數據集,從而使實驗結果更具說服力和普適性。因為SPL模塊的設計初衷是為了學習和利用長視頻序列的場景先驗信息,所以在選擇數據集時,特別注重選取包含長視頻序列的數據集,以確保實驗的可重復性和結果的可比性。
訓練集采用了REDS(Realistic and Dynamic Scenes)。REDS是一個高質量(720p)的長視頻數據集,專為NTIRE19(2019年NTIRE挑戰賽)舉辦的VSR比賽而提出。測試集(評估數據集)采用了REDS中的REDS4數據集。需要強調的是,該測試集并未參與模型的訓練過程。REDS4數據集包含了與訓練集相似的高質量視頻序列。
REDS數據集包含240個視頻序列,每個序列都包含100個分辨率為1280×720的幀。在實驗中,訓練集共使用了236個視頻序列,測試集共使用了4個視頻序列。從REDS數據集中隨機選取了示例幀,以展示該數據集的內容和特征。REDS數據集圖片場景示例如圖4所示。
3.3實驗設計
由于不同的基線模型的主體結構差異顯著,采用固定學習率可能會導致部分基線模型出現訓練梯度爆炸或者欠擬合等問題,因此對不同的基線模型采用不同的學習率,具體學習率設置如表1所示。
為了加速模型的收斂速度,實驗中除了利用優化器的自動衰減機制,還設置了主動衰減條件。具體操作是每隔5個Epoch進行一次測試集測試,并記錄當前的PSNR均值。若當前PSNR均值相較之前的PSNR均值未有提升,則認為當前學習率可能偏大。在此情況下,將通過衰減因子(表1)對當前學習率進行衰減,衰減后的學習率為衰減因子與當前學習率的乘積。通過定期的測試與對比測試結果.能夠更靈活地調整學習率,促進模型更快地收斂到更優的狀態。
實驗訓練的其他設置如表2所示,這些訓練配置和硬件平臺的選擇能確保模型在訓練過程中具備充足的計算資源和合適的參數設置,旨在獲得更好的訓練效果和結果。
3.4模型訓練過程
由于現有的訓練策略采用了隨機選取視頻幀及隨機裁切后的視頻幀的圖像小塊進行訓練,然而這種策略中同一輪次的多次輸入幀具有不相關性和不連續性,因此并不適用于場景先驗學習的訓練,也不適用于提取長視頻時間信息的其他方法的訓練。為此,本小節提出了一種新穎的訓練策略,以保留訓練過程中長視頻的時間信息,同時兼顧訓練的隨機性,增強訓練過程的魯棒性。模型訓練過程圖如圖5所示。
在深度學習中,一個Epoch是指將整個訓練數據集完整地通過神經網絡進行一次正向傳播和反向傳播的訓練過程。訓練神經網絡需要經過多個Epoch的迭代,每個Epoch都會對整個數據集進行一次訓練。在每個Epoch中,模型通過學習樣本的特征和標簽來優化自己的參數(權重和偏差),以盡量減少預測輸出與實際標簽之間的誤差。
如圖5所示,本文提出的長期連續訓練策略,將每個訓練Epoch再次劃分為多個mini-Epoch。在每個mini-Epoch中,首先會隨機選擇6個視頻序列,其次對每個視頻序列進行裁剪,最后這些經過裁剪后的視頻幀將被用于模型的訓練,以確保模型接收到連續幀的輸入,從而滿足SPL模塊對連續性訓練的需求。
3.5對比實驗
為驗證本文提出的SPL模塊的有效性,選擇代表性的VSR方法EDVR作為初始的基線模型。SPL模塊被嵌入時空注意力(TSA)模塊中。
為確保場景先驗的時間順序性,實驗設計將過去幀和當前幀作為模型的輸入幀。同時,為了展示SPL模塊的魯棒性,實驗也使用未來幀作為臨近幀輸入。為了區分具有不同輸入的模型,將僅使用當前幀和最近的(m-1)過去幀的模型標記為Lm,而將同時使用當前幀、最近的(m-1)過去幀和未來幀的模型標記為Nm。
這樣的對比實驗設計旨在評估SPL模塊對EDVR模型的增強效果,并且考察在不同輸入情況下,SPL模塊對模型性能的影響。以EDVR為基線模型的實驗結果數據表如表3所示,其中“+”表示使用了SPL模塊的EDVR模型訓練結果的數據;實驗效果示例如圖6所示,其中Bicubic為使用雙三次插值法處理的可視化結果圖,GT為原圖。
通過表3中的數據和圖6的可視化效果圖展示可以發現,SPL模塊的引入顯著地提高了所有不同輸入幀的基線模型的性能。SPL模塊帶來的場景先驗有效地提升了模型的性能,并且消耗的計算資源非常少,特別是對輸入幀較少的模型,SPL模塊的效果更為顯著,例如EDVR_L2模型引入SPL模塊后,PSNR和SSIM分別提高了0.09 dB和0.002 4。
此外,實驗選擇了幾種具有代表性的包括不同注意機制的VSR方法作為參考,以證明SPL模塊的適用性。具體選擇了TGAc作為時間注意力代表模型,PFNL作為非局部注意力代表模型,MuCANc作為空間注意力代表模型,RCAN作為通道注意力代表模型。實驗將按照“2.2”小節中的詳細描述,將SPL模塊插入相應的方法中。
由于RCAN是一種SISR方法,因此本實驗只對RCAN的Ll輸入模型進行了比較。對于其他VSR方法,本實驗對相應方法的L2、L5和L7模型進行比較。
以部分SOTA模型為基線模型的實驗結果數據如表4所示。由表4中的數據可知,引入SPL模塊提高了所有選定的SOTA方法的性能。從連續幀中提取的場景先驗對于SISR和VSR方法以及所有注意力機制都是有效的,能夠幫助模型重建高質量的HR幀。以部分SOTA模型為基線模型的實驗可視化結果如圖7所示。從圖7中可以看出,嵌入了SPL模塊的模型能夠更好地重建準確的HR紋理效果。這些實驗結果進一步證實了SPL模塊的適用性和有效性,它能夠在各種具有代表性的VSR方法中提升模型的性能表現。
3.6消融實驗
3.6.1 SPL內部結構消融實驗
本小節專注于SPL模塊內部的消融分析,旨在探究其內部結構的重要性。在SPL模塊中,記憶分支和輸出分支是維持場景先驗特征更新與生成增強特征的關鍵路徑,因此無法移除它們進行消融研究。鑒于此,本小節選擇去除SPL模塊中的遺忘分支,以便進行消融實驗。
SPL模塊的遺忘分支消融實驗結果數據如表5所示,其中“-”表示嵌入無遺忘分支的SPL模塊,“+”表示嵌入含遺忘分支的SPL模塊。值得注意的是,在缺少遺忘分支的情況下,對應的模型仍然能夠獲得比基線模型更高的性能。這種性能的提升得益于不斷增強的特征映射,能夠從之前的幀中提取出一些有效的信息。然而,場景先驗特征的長期信息丟失會對模型的性能產生負面影響,導致其性能下降。
3.6.2 SPL通道數消融實驗
本小節選擇了3種不同的通道數進行實驗,并以EDVR_L2作為基線模型。SPL通道數消融實驗結果數據如表6所示,相較于64通道,32通道的PSNR指標略微下降了0.02 dB,而計算資源的減少并不顯著。當將SPL模塊增加到128通道后,模型性能并沒有顯著提高,而參數量和FLOPs都大幅增加,所以這種選擇并不明智。綜上所述,最終SPL模塊選擇了64通道作為默認通道數。
4結論(Conclusion)
本文提出了一種場景先驗學習模塊,利用記憶分支、遺忘分支及輸出分支對視頻幀序列的輸入特征和場景先驗特征進行迭代更新與增強處理,從而獲得更為優異的增強效果。場景先驗學習模塊被設計為強適用性的結構,因此可以輕松地嵌入各種注意力機制中,為各類模型提供即插即用的功能。實驗結果表明,本文提出的場景先驗學習模塊嵌入各類VSR方法中均可以獲得優異的性能提升。