前言
近日,計算機視覺和模式識別領域頂級會議 CVPR 在美國新奧爾良市舉辦,同時計算機影像恢復領域最具影響力的全球性頂級賽事 NTIRE 在會上頒獎,網易雲信音視訊實驗室取得 NTIRE 高效率超解析度挑戰賽總體效能賽道冠軍,以及執行時間賽道季軍。本文將著眼於 AI 超分技術從研究到部署的落地問題,介紹超解析度技術現狀,以及視訊超分在移動端落地應用所面臨的機遇與挑戰。
超解析度技術概述
近年來,網際網路視訊資料呈爆炸式增長。與此同時,視訊的解析度也越來越高,以滿足人們對視訊體驗質量(Quality of Experience, QoE)日益增長的需求。但是,由於頻寬的限制,網路傳輸視訊通常會被降取樣和壓縮,這不可避免地會導致視訊質量的下降,進而影響使用者的體驗與觀感。超分技術旨在從低解析度輸入中恢復出視覺質量更佳的高解析度輸出,可以有效地解決視訊質量不佳的問題,從而滿足播放端使用者對於極致高清畫質的需求。在直播點播、監控裝置、視訊編解碼、手機拍攝、醫學影像、數字高清和視訊復原等領域都有非常重要的應用價值。
超解析度技術的分類與發展方向
超解析度技術廣義上講包含 3 種情況: 單幅影像超解析度、從多幀連續影像中超解析度重建單幀影像、視訊序列的超解析度重建。
單幅影像放大主要利用對髙解析度影像的先驗知識和以混疊形式存在的高頻資訊進行復原。後兩種情況除了利用先驗知識和單幅影像資訊外,還可以應用相鄰影像之間的互補資訊進行超解析度重建,得到比任何一幅低解析度影像解析度都高的高解析度影像,但是這兩種情況常帶來難以接受的計算成本與鄰幀重建不連續的風險。因此,在實際落地時,偏向於單圖超解析度技術。
按照時間和效果進行分類,可以將單幅影像超解析度演算法分為傳統演算法和深度學習演算法兩類。
傳統超解析度重建演算法
傳統的超解析度重建演算法主要依靠基本的數字影像處理技術進行重建,常見的有如下幾類:
基於插值的超解析度重建:基於插值的方法將影像上每個畫素都看做是影像平面上的一個點,那麼對超解析度影像的估計可以看做是利用已知的畫素資訊為平面上未知的畫素資訊進行擬合的過程,這通常由一個預定義的變換函式或者插值核來完成。基於插值的方法計算簡單、易於理解,但存在較為明顯的缺陷。復原出的影像常常出現模糊、鋸齒等現象。常見的基於插值的方法包括最近鄰插值法、雙線性插值法和雙立方插值法等。
基於退化模型的超解析度重建:此類方法從影像的降質退化模型出發,假定高解析度影像是經過了適當的運動變換、模糊及噪聲才得到低解析度影像。這種方法通過提取低解析度影像中的關鍵資訊,並結合對未知的超解析度影像的先驗知識來約束超解析度影像的生成。常見的方法包括迭代反投影法、凸集投影法和最大後驗概率法等。
基於學習的超解析度重建:基於學習的方法則是利用大量的訓練資料,從中學習低解析度影像和高解析度影像之間某種對應關係,然後根據學習到的對映關係來預測低解析度影像所對應的高解析度影像,從而實現影像的超解析度重建過程。常見的基於學習的方法包括流形學習、稀疏編碼方法。
基於深度學習的超解析度重建演算法
SRCNN 是深度學習方法在超分辨問題的首次嘗試,是一個比較簡單的卷積網路,由 3 個卷積層構成,每個卷積層負責不同的職能。第一個卷積層的作用主要是負責提取高頻特徵,第二個卷積層則負責完成從低清特徵到高清特徵的非線性對映,最後一個卷積層的作用是重建出高解析度的影像。SRCNN 的網路結構比較簡單,超分辨效果也有待改善,不過它確立了深度學習方法在處理超分辨這類問題時的基本思想。後來的深度學習方法,基本都遵循這一思想去進行超分辨的重建。
後來的 ESPCN 基於 SRCNN 進行了一些改進,但由於網路重建能力有限,超分辨的效果也不是特別理想。因為在當時,深度卷積網路的訓練是存在問題的。一般對於卷積神經網路來說,當網路層數增加的時候,效能也會增加,但在實際應用中,人們發現當網路層數增加到了一定程度,由於反向傳播原理,就會出現梯度消失的問題,導致網路收斂性變差,模型效能降低。這個問題直到 ResNet 提出殘差網路結構之後,才得到比較好的解決。但值得注意到是,ESPCN 網路首次提出了亞畫素卷積層,去除了低解析度影像送入神經網路前的預上採操作,極大降低了 SRCNN 的計算量,提高了重建效率。
VDSR 是殘差網路以及殘差學習思想在超分辨問題上的首次應用,將超分辨網路的層數首次增加到了 20 層。利用殘差學習的方式,網路學習殘差特徵,網路收斂快,對細節更加敏感。後來一些卷積神經網路提出了更復雜的結構,比如 RGAN 提出使用生成式對抗網路來生成高分辨的影像,SRGAN 由 2 部分組成,一個是生成網路,另一個是判別網路。生成網路的作用是根據一張低解析度的影像來生成一張高分辨的影像,而判別網路的作用是將生成網路生成的高分辨影像判定為假,這樣網路在訓練的時候,生成網路和判定網路兩者之間不斷博弈,最終達到平衡,從而生成細節紋理比較逼真的高分辨影像,具有更好的主觀視覺效果。其他深度卷積網路方法比如 SRDenseNet、EDSR、RDN,使用了更復雜的網路結構,網路的卷積層越來越深,在單張影像上的超分辨效果也越來越好。
然而,由於高計算成本與記憶體佔用,許多工作難以部署在資源有限的裝置上。為此,超解析度的高效模型設計也引起廣泛關注。FSRCNN 採用緊湊的沙漏型架構首次加速 SR 網路;DRCN 和 DRRN 採用遞迴層來構建具有較少引數的深度網路。CARN 通過將有效殘差塊與組卷積相結合,減少了 SR 網路的計算。還引入了注意機制來找到資訊量最大的區域,以更好地重建高解析度影像。另外,知識蒸餾也被引用到輕量型超解析度網路,以提高它們的效能。
實時視訊超解析度的挑戰
在移動網際網路時代,移動端作為視訊內容最重要承載平臺,負責著大量的 PGC 和 UGC 視訊內容的播放,但受限於模型泛化能力不足,移動端算力有限,演算法計算複雜度高等問題,基於 AI 的超解析度演算法的以下特性使得其在移動端上進行實時部署時面臨著巨大挑戰:
主觀效果不佳,直接使用以上提到的基於深度學習的超解析度演算法,會發現其主觀效果和 Bicubic 等傳統演算法差不多,對視訊畫質的提升效果很有限。
學界 SOTA 方法網路模型引數量過大,即使以輕便稱的諸多網路,引數量也都大於 500K,這就導致模型運算量過大,推理很慢,無法滿足移動端實時處理視訊的要求。
雲信 AI 超分
基於真實下采樣的訓練資料
現有的基於深度學習的超解析度演算法的訓練資料,往往是通過 Bicubic 或者其他已知下采樣方式得到的。然而往往真實場景並不是,從而導致模型訓練資料和實際預測資料存在比較大的差距,使得超分演算法效果不夠理想。
我們採用一種同樣基於對抗生成網路的真實下采樣生成方式。如下圖所示,對於一張高解析度圖,我們訓練下采樣生成器 G 和判別器 D,使得 G 生成的低解析度圖和真實低解析度圖接近,從而得到真實下采樣 G。得到了 G 以後我們便可以利用高解析度圖大量生成滿足真實下采樣退化的訓練資料對。
雲信超解析度演算法
網易雲信視訊實驗室提出一種面向邊緣的高效特徵蒸餾網路(EFDN),在 2022 年 CVPR NTIRE 高效率超解析度挑戰賽中,Overall Performance 賽道雲信以明顯優勢獲得第一名,Runtime 賽道獲得第三名的好成績。
比賽完整報告:
https://arxiv.org/abs/2205.05675
該方法為了提升模型的精度以及降低模型的開銷,基於結構重引數的思想,在訓練階段用面向邊緣的卷積塊(ECB)代替殘差特徵蒸餾模組(RFDB)中的 SRB 淺殘差塊,在推理階段將面向邊緣的卷積塊(ECB)轉換為普通的3x3卷積層,該方法可以更高效地提取影像的紋理資訊和邊緣資訊,在降低開銷的同時提升網路效能;同時對增強空間注意力(ESA)模組進行裁剪,減少引數量以及增加池化層步長,進一步減少了演算法開銷。
為了進一步工程落地,得到一個可在移動裝置上實時執行的模型,綜合效率與效果,雲信團隊採用了以下幾種優化方法:
模型壓縮:在實際落地過程中,為了滿足實時處理的要求,我們在CVPR NTIRE 2022 高效率超分挑戰賽參賽模型-一種面向邊緣的高效特徵蒸餾模組(EFDN)的基礎上,利用通道剪枝,知識蒸餾等模型壓縮技術在優化後的模型架構上進一步減少模型中冗餘的引數,去掉對模型效能貢獻小的通道,達到減小模型複雜度的目的。同時採用量化技術將權重以低位元儲存,從而減小模型體積,加速計算。
工程優化:在移動裝置算力、記憶體頻寬有限的情況下,既要滿足超分演算法實時處理視訊的要求,又不能增加太多耗電,對工程化部署要求非常高。我們在工程側的優化主要通過 SIMD,模型記憶體優化,資料排布優化等優化方法節省記憶體開銷以及推理耗時,同時深度結合業務場景實現演算法在渲染管線與裝置之間記憶體零拷貝,完成了演算法的高效能落地。
下表是雲信超分在不同平臺/裝置上的單幀耗時。
效果展示與未來展望
移動端視訊超分能突破編解碼界限與視訊傳輸的效率瓶頸,優化視訊傳輸速度、播放流暢度等使用者體驗,並帶來眾多實際效果:
- 提升視訊清晰度,利用高階機螢幕的高解析度優勢,低清視訊高清播放,高清視訊提供超高清畫質,提升使用者視訊消費體驗。
- 降低頻寬,通過傳送端/服務端降低轉碼分發視訊解析度,結合接收端超分處理呈現高解析度效果,降低高清播放門檻,提升流暢度,減輕使用者網路壓力。
未來,我們將持續優化包括超分演算法在內的視訊增強演算法,打造業界頂尖水平的影像恢復和影像增強技術,幫助客戶提高視訊畫質,降低視訊播放成本,提供更低耗時,更低功耗,更好的主觀質量,覆蓋更多的機型以及節省更多的位元速率的演算法, 讓使用者在不同手機、不同網路環境下享受超高清視訊體驗。
左為 Bicubic 上取樣結果,右為超分優化結果
參考資料
[1] Yawei Li, Kai Zhang, Luc Van Gool, Radu Timofte, et al. Ntire 2022 challenge on efficient super-resolution: Methods and results. In IEEE Conference on Computer Vision and Pattern Recognition Workshops, 2022.
[2] Zheng Hui, Xinbo Gao, Yunchu Yang, and Xiumei Wang. Lightweight image super-resolution with information multi-distillation network. In Proceedings of the ACM International Conference on Multimedia, pages 2024–2032, 2019.
[3] Jie Liu, Jie Tang, and Gangshan Wu. Residual feature distillation network for lightweight image super-resolution. In European Conference on Computer Vision Workshops, pages41–55. Springer, 2020.
[4] Zhang, Xindong and Zeng, Hui and Zhang, Lei. Edge-oriented Convolution Block for Real-time Super Resolution on Mobile Devices. In Proceedings of the 29th ACM International Conference on Multimedia, pages4034--4043. 2021.