天天看點

揭開“視訊超分”黑科技的神秘面紗

在看電影時,有一幕大家應該都非常熟悉,警察從證據圖檔中選取一塊區域放大,再放大,直到一個很小的目标變得清晰可見,進而發現重要的線索。現實中是不是真的有這樣的技術,可以把模糊的小圖變得清晰?答案是,一定程度上可以,這項黑科技就是超分辨率技術,從低分辨率圖像恢複高分辨率圖像,提高圖像的品質,進而獲得更加清晰的圖檔。超分辨率技術具有廣泛的實際應用,如醫學圖像重建、人臉圖像重建、遠端傳感、全景視訊、無人機監控、超高清電視等。同樣道理,實時視訊也可以進行超分辨率處理,将模糊的小分辨率視訊變成高清超高清視訊,本篇幹貨分享就來揭開這項黑科技的神秘面紗。

01

什麼是超分辨率

我們看到的圖檔或者視訊,都是通過顯示裝置顯示一個個像素來進行表達的。像素是在特定的時間點上能表達一個特定顔色的點,類似一片片馬賽克。一幅圖檔就是由多個像素進行表達的,如圖1所示。一幅圖檔有多少行和多少列像素,通常就是我們說的圖檔和視訊的分辨率,它也是人眼能夠分辨圖像或者視訊中的點或線的能力。

揭開“視訊超分”黑科技的神秘面紗

圖1 圖檔中的像素

數字相機在将真實世界轉換為圖檔時,對真實的光信号進行了離散化,每個像素是一個采樣,像素與像素之間是有間隔的。當圖像分辨率較低時,采樣率就比較低,或者可以了解為像素與像素之間的間隔是較大的;分辨率提高,像素與像素之間的間隔就變小,最終在顯示圖像時,就會對場景有更加精細的呈現。是以我們希望圖像的分辨率越高越好,可以得到更加清晰的圖像。但是,由于采集裝置的能力,或者編碼壓縮、傳輸等方面的限制,圖像的分辨率有時會比較低,為了提高這些圖像的品質,可以通過提升分辨率來得到更高品質的圖像。最直接樸素的想法就是用相鄰的像素來填補空白,即近鄰取樣插值。但是這樣的算法會出現有階梯狀鋸齒,明顯不能很好地提高圖像的品質。雙線性插值、雙三次插值、Lanczos插值等算法可以提高比近鄰取樣插值更好的效果。這一類傳統的算法,往往被歸為圖像縮放技術。一般縮放的比例不會太高。

揭開“視訊超分”黑科技的神秘面紗

圖2 近鄰取樣插值

随着深度學習技術的發展,将低分辨率圖像進行處理,得到一張高分辨率圖像,同時恢複出自然、清晰的紋理,就是我們常聽到的超分辨率技術,往往針對較高倍數的縮放,如4倍8倍縮放等。經典的圖像超分算法SRCNN,首次将卷積神經網絡應用于圖像超分辨率技術,相較于傳統的算法,SRCNN在圖像的重建品質上取得了極大的提升。與傳統方法類似,它實際上也是利用低分辨率圖像對空缺資訊進行填補,進而提高分辨率和品質。在學習階段,有同一幅圖的高分辨率和低分辨率兩個版本,輸入低分辨率圖,通過CNN網絡後,輸出高分辨率圖像,同時與原有的高分辨率圖進行對比,更新疊代下一次的學習,最後得到的CNN網絡,就可以用來恢複低分辨率圖像。如圖3所示,首先将低分辨率圖輸入到網絡,經過特征提取、非線性映射、重建等步驟,輸入高分辨率圖像。SRCNN之是以比傳統網絡更加優秀,是因為它即通過對低分辨率圖像的特征進行學習和提取,針對不同的紋理特征,然後根據特征的不同,進而可以更加合理地進行高頻資訊的生成。

揭開“視訊超分”黑科技的神秘面紗

圖3 SRCNN模型中的卷積結構

視訊與圖像類似,分辨率的提升對于提升視訊品質也至關重要。與圖像超分最大的不同,就是視訊可以利用多個連續的圖像/幀之間的相關資訊,提升目标圖像/幀的分辨率。雖然可以将視訊拆分成多幅圖像,然後用圖像超分算法進行處理,但是會造成幀與幀之間出現不連貫的失真。近年來出現了一大批優秀的應用于視訊的超分算法,以圖像超分算法為基礎,通過增加相應的子產品來挖掘幀與幀之間的特征,進而提高視訊超分算法的性能。

視訊超分,假設低分辨率視訊是從高分辨率的視訊經過一系列的退化操作而得到,超分算法就是将該退化操作進行求逆,進而可以将低分辨率視訊恢複成高分辨率視訊。該退化操作可以表達為:

揭開“視訊超分”黑科技的神秘面紗

式中符号分别表示低分辨率視訊的第i幀,高分辨率視訊的第i幀,以i幀為中心的2N+1個高分辨率視訊幀,及退化操作。通常退化操作為下采樣,模糊,以及運動形變等。現實情況中,退化可能更加複雜,如顔色空間轉換、壓縮等。超分算法的目标即求解該退化過程的逆操作:

揭開“視訊超分”黑科技的神秘面紗

02

視訊超分辨率算法的分類

基于深度學習的視訊超分算法,一般會采用卷積神經網絡(CNN)、生成對抗網絡(GAN)或者循環神經網絡(RNN)。架構基本上都是将低分辨率作為輸入,然後進行幀間對齊,特征提取,特征融合,最後重建生成高分辨率視訊,如圖4所示。可以看出,與圖像超分最大的不同之處在于,視訊超分使用了幀間的資訊。如何高效地使用這些資訊,也是不同的算法的差別之處。

揭開“視訊超分”黑科技的神秘面紗

圖4 視訊超分算法的基本架構

視訊超分可以利用相鄰幀間的資訊,進而極大提高超分算法的性能。根據使用相鄰幀間的資訊的方法,對超分算法進行簡單的分類:相鄰幀進行對齊和非對齊兩類。其中對齊算法又可以分成使用運動估計和運動補償(MEMC)以及使用可變卷積兩類。非對齊算法可分成二維卷積、三維卷積、RCNN、Non-Local。具體分類可圖5,

揭開“視訊超分”黑科技的神秘面紗

圖5 視訊超分算法分類

基于運動估計和運動補償算法

運動估計和補償算法在視訊超分中有着非常重要的作用,很多算法都以此為基礎。運動估計是為了提取出幀間的運動資訊,然後根據運動資訊将不同的幀進行對齊。運動估計大多采用光流法,即通過計算幀間的時域相關性和變化,得到運動資訊,如圖6所示。運動補償即利用運動資訊來對相鄰的幀進行處理,進而與要處理的幀進行對齊。常用的方法有線性插值和空域變換網絡(STN)。

揭開“視訊超分”黑科技的神秘面紗

圖6 光流算法

VSRnet

VSRnet是圖像超分算法SRCNN在視訊上的擴充,最大的改進就是增加了運動估計和運動補償子產品,輸入圖像由一幅變成多幀。運動資訊的提取采用了Druleas算法。

揭開“視訊超分”黑科技的神秘面紗

VESPCN

VESPCN即Video efficient sub-pixel convolutional network,引入了一個空域運動補償變換子產品(MCT),運動補償後的幀作為卷積網絡的輸入,再經過特征提取和融合,最後經過一個亞像素卷積層做上采樣得到高分辨率視訊。MCT子產品采用CNN由粗到精來提取運動資訊、進行運動補償。粗估網絡以2個連續幀作為輸入,經過5層卷積和1層亞像素卷積,得到粗略的光流運動資訊,然後進行運動補償。粗估網絡的輸入為粗估網絡得到的光流資訊和運動補償幀,經過卷積網絡得到更精細的運動資訊和運動補償幀。

揭開“視訊超分”黑科技的神秘面紗

RBPN

受後向投影算法的啟發,RBPN算法設計了一個投影子產品。投影子產品位于特征提取子產品和重模組化塊之間。特征提取分為兩個部分,一是對目标幀的低分辨率進行特征提取,二是對目标幀、相鄰幀、及兩幀的光流圖的組合進行特征提取。投影子產品由編碼器和解碼器組成。編碼器由單圖超分子產品(處理目标圖得到的特征圖)、多圖超分子產品(處理目标幀、相鄰幀、及兩幀的光流圖的組合得到的特征圖)和殘差塊組成(處理前述兩個子產品,得到殘差),将殘差圖與單圖超分的結果疊加,送入解碼器,解碼器由殘差塊和下采樣卷積組成。解碼器的輸出進入下一個投影子產品,将所有投影子產品的解碼器的輸出送入重模組化塊,得到超分幀。投影子產品可以重複使用,直到周遊所有的幀。

揭開“視訊超分”黑科技的神秘面紗

可變卷積

上述這一類的超分算法,其共同點是都運用運動估計和運動補償技術來将相鄰的圖像與目标圖像進行對齊,但是都無法保證運動資訊的準确性,特别是當有光線變化或者較大的運動的時候。針對這點,可變形卷積被用來代替運動估計和補償,來對齊圖像。下述算法将對這種方法進行簡要介紹。

可變卷積于2017年提出,與傳統的卷積層不同的點是,傳統卷積層,每一層都的核都是固定大小;可變卷積在核中加入了偏移量,如此以來,輸入特征通過卷積操作,便可以更好地對幾何模型進行變換。采用可變卷積的視訊超分算法主要有EDVR,DNLN,TDAN,D3Dnet,VESR-Net。本文選取EDVR和VERSR-Net進行簡要介紹。

揭開“視訊超分”黑科技的神秘面紗

EDVR

該算法奪取了NTIRE19 Challenge的冠軍。該算法有兩個關鍵的子產品:a、金字塔、級聯和可變形對齊子產品(PCD),用來解決複雜運動和大運動;b、時空注意融合子產品(TSA),用來融合多個對齊的特征圖。最後是重模組化塊。此外,輸入模糊圖像時,可以增加預處理子產品來去模糊。該架構也可以用來進行其它類型的視訊處理。

揭開“視訊超分”黑科技的神秘面紗

VERSR-Net

該算法奪得優酷視訊增強和超分算法挑戰賽的冠軍。它由特征編碼器,特征融合器和重模組化塊組成。特征編碼器由一個卷積層和多個CARB組成。特征融合模式借鑒了EDVR算法中的PCD子產品,用來進行特征幀對齊。然後将特征圖分解,形成空域,時域和不同顔色通道的特征,然後将這些特征進行融合。重模組化塊先經過CARB子產品,然後進行特征解碼,最後将特征與雙三次插值的得到的高分辨圖進行疊加,得到最終結果。

揭開“視訊超分”黑科技的神秘面紗

非對齊超分算法

除了前述的對齊方法之外,還有多種非對齊算法,即重建時不需要對幀進行對齊操作。可以細分為二維卷積法(FFCVSR)、三維卷積法(動态上采樣濾波(DUF)、循環卷積法(雙向循環卷積網絡(BRCN)、非局部網絡法。除了二維卷積法之外,其餘方法都使用了時空域聯合資訊。這類方法依靠神經網絡學習得到特征和運動資訊,因而不需要幀對齊。在此不做深入分析。

03

各算法性能對比

根據各種算法提供的實驗資料,EDVR,RBPN和FFCVSR是三個比較優秀的算法,特别是EDVR和RBPN都已經被多次驗證過,比早期的超分算法更高效。EDVR是NTIRE2019挑戰賽的冠軍,該挑戰賽目标是處理大運動場景和各種真實的視訊場景,因而EDVR也是近來超分領域比較流行的算法。近期的超分算法比更早期的算法高效,可能得益于硬體計算能力的提升,使更深和更複雜的網絡變得更容易。這幾個優秀的算法,也都有一個明顯的特點,就是它們都有相應的子產品來處理高頻分量和時間相關資訊,如EDVC裡面的跨層PCD對齊,RBPN裡的後向投影和特征上下文。

雖然視訊超分的性能已經有了顯著的提升,但深度神經網絡的引入,使得訓練和預測的計算複雜度、存儲開銷都非常高。随着移動裝置的發展,高效輕量級網絡的需求變得更為迫切。特别是在實時通信領域,對視訊超分提出了更高的要求,由于實時通信還有更多子產品使用計算資源,是以實時通信中的超分,不但需要極為簡潔的設計,10毫秒級的處理算法才能真正落地;另外對幀的時延也有較高要求,往往目标幀之後的幀是不能作為輸入,以減少時延,這對網絡結構的設計也有更高的要求。

随着人工智能和裝置運算能力的持續進步,視訊品質恢複(Video Restoraion)在RTC系統中的地位必将水漲船高,而視訊超分是視訊品質恢複的最核心元件。在前文提到的技術基礎之上,拍樂雲也自研了可适配于主流移動裝置的超分算法,并将持續投入開發,為使用者提供更高品質的實時視訊體驗。

參考文獻

[1] https://arxiv.org/abs/2003.02115 J. Chen, et al. VESR-Net: TheWinning Solution to Youku Video Enhancement and Super-Resolution Challenge

[2] https://arxiv.org/abs/1905.02716  X. Wang, et al. EDVR: Video Restoration with Enhanced Deformable Convolutional Networks

[3] https://arxiv.org/abs/2003.13170 M. Haris, et al. Space-Time-Aware Multi-Resolution Video Enhancement

[4] https://arxiv.org/abs/2007.12928 H. Liu, et al. Video Super Resolution Based on Deep Learning: A Comprehensive Survey

[5] Dong C, et al. Image Super-Resolution Using Deep Convolutional Networks. TPAMI 2016.

揭開“視訊超分”黑科技的神秘面紗

繼續閱讀