聯(lián)合視頻專家組 JVET 官網(wǎng)顯示,字節(jié)跳動設(shè)立在美國的研發(fā)團隊于今年初發(fā)起了一項視頻壓縮技術(shù)提案,并命名為 DAM(Deep-filtering with Adaptive Model-selection)。相比 H.266/VVC 最新標準,DAM 能夠為視頻編碼性能帶來顯著提升,亮度信號 Y 可實現(xiàn) 10.28% 的性能增益。兩個色度信號 U 和 V 的性能增益也分別達到 28.22% 和 27.97%。這是業(yè)界公開的單個智能編碼工具的最佳性能增益。
視頻編解碼是視頻應(yīng)用的底層核心技術(shù),作用是對圖像進行壓縮和數(shù)字編碼,以盡可能小的帶寬傳送盡可能高質(zhì)量的視頻數(shù)據(jù)。H.264 是現(xiàn)在被廣泛使用的視頻編解碼標準,在同等視頻質(zhì)量下,H.265/HEVC 標準可以讓視頻體積減小一半。H.265 尚未完全普及,新一代標準 H.266/VVC 比 H.265 讓視頻又減小一半。
這并不是視頻編碼技術(shù)的盡頭。
今年初,字節(jié)跳動先進視頻團隊(AVG)向聯(lián)合視頻專家組 JVET 發(fā)起了一項 JVET-U0068 技術(shù)提案,可以為視頻壓縮的三個顏色分量(Y, U, V)分別實現(xiàn)約 10%、28%、28% 的性能增益,這是業(yè)界公開的單個智能編碼工具的最佳性能增益。在優(yōu)化壓縮質(zhì)量的同時,視頻體積相比 H.266 最新標準至少還可以縮小 13%。就其實際效果而言,如果新技術(shù)得以應(yīng)用,與現(xiàn)在主流的 H.264 標準相比,我們看同樣質(zhì)量的視頻,大約只需要 22% 的帶寬和存儲空間。
這項技術(shù)名為 DAM(Deep-filtering with Adaptive Model-selection),它是通過深度學(xué)習(xí)技術(shù)構(gòu)建減少視頻壓縮失真的濾波器,主干是基于殘差單元堆疊的深度卷積神經(jīng)網(wǎng)絡(luò),輔以自適應(yīng)模型選擇以最大程度適應(yīng)特性復(fù)雜的自然視頻。該技術(shù)由字節(jié)跳動 AVG 的美國加州研發(fā)團隊實現(xiàn),成員來自高通、英特爾、微軟等巨頭以及海內(nèi)外多家頂級院校。
我們先從下圖示例中對比 H.264 與 H.266+DAM 的視頻壓縮效果:
可以看到,相同壓縮比條件下,H.266+DAM 編碼壓縮質(zhì)量遠遠優(yōu)于 H.264。
除了視頻壓縮質(zhì)量提升之外,應(yīng)用 DAM 技術(shù)可以比H.266再縮小 13% 的數(shù)據(jù)體積,以下圖片來自國際標準組織的測試視頻。其中,圖(左)為原圖,每像素 12 字節(jié);圖(中)使用 VTM11.0 壓縮(qp=42),每像素 0.00216字節(jié),峰值信噪比 27.78dB;圖(右)使用 VTM11.0+DAM(qp=42),每像素 0.00184 字節(jié),峰值信噪比 28.02dB。
對比圖(中)和圖(右)可以看出,應(yīng)用 DAM 技術(shù)后,圖(右)壓縮比更高,峰值信噪比(客觀質(zhì)量)更好,主觀質(zhì)量也相對更好。
圖1. 左:原圖, 12bpp,中:VTM-11.0壓縮,QP42,0.00216bpp,27.78dB,右:VTM-11.0+DAM,QP42, 0.00184bpp,28.02dB
技術(shù)細節(jié)
DAM 的構(gòu)建方法
提案 JVET-U0068 所介紹的 DAM 是字節(jié)跳動 AVG 此前一項提案 JVET-T0088 的擴展版本。
在具體實現(xiàn)上,為了減輕深度網(wǎng)絡(luò)的訓(xùn)練難度,DAM 算法利用殘差單元作為基本模塊,并多次堆疊來構(gòu)建最終網(wǎng)絡(luò)。所謂殘差單元是指通過引入跳層連接,允許網(wǎng)絡(luò)把注意力放在變化的殘差上。為了處理不同類型的內(nèi)容,新技術(shù)針對不同類型的 slice 和質(zhì)量級別訓(xùn)練不同網(wǎng)絡(luò)。此外,還引入了一些新特性來提高編碼性能。
圖 1:(a)是卷積神經(jīng)網(wǎng)絡(luò)濾波器的架構(gòu),M 代表特征圖的數(shù)量,N 代表特征圖的空間分辨率;(b)是(a)中殘差塊的結(jié)構(gòu)。
DAM 濾波方法的主干如上圖 1 所示,為了增加感受野,降低復(fù)雜度,此方法包含一個步幅為 2 的卷積層,該層將特征圖的空間分辨率在水平方向和垂直方向都降低到輸入大小的一半,這一層輸出的特征圖會經(jīng)過若干順序堆疊的殘差單元。最后一個卷積層以最后一個殘差單元的特征圖作為輸入,輸出 4 個子特征圖。最后,shuffle 層會生成空間分辨率與輸入相同的濾波圖像。
與此架構(gòu)相關(guān)的其他細節(jié)如下:
對于所有卷積層,使用 3x3 的卷積核。對于內(nèi)部卷積層,特征圖數(shù)量設(shè)置為 128。對于激活函數(shù),使用 PReLU;
針對不同 slice 類型訓(xùn)練不同的模型;
當(dāng)為 intra slice 訓(xùn)練卷積神經(jīng)網(wǎng)絡(luò)濾波器時,預(yù)測和分塊信息也被輸入網(wǎng)絡(luò)。
新特性:自適應(yīng)模型選擇
在 JVET-T0088 的卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)基礎(chǔ)上,JVET-U0068 引入了以下幾種新特性:
首先,每個 slice 或 CTU 單元可以決定是否使用基于卷積神經(jīng)網(wǎng)絡(luò)的濾波器;
其次,當(dāng)某個 slice 或者 CTU 單元確定使用基于卷積神經(jīng)網(wǎng)絡(luò)的濾波器時,可以進一步確定使用三個候選模型中的哪個模型。為此目的,使用 {17,22,27,32,37,42} 中的 QP 數(shù)值訓(xùn)練不同模型。將編碼當(dāng)前 slice 或 CTU 的 QP 記作 q,那么候選模型由針對 {q,q-5,q-10} 訓(xùn)練的三個模型構(gòu)成。選擇過程基于率失真代價函數(shù),然后將相關(guān)模式表征信息寫入碼流;
第三,基于卷積神經(jīng)網(wǎng)絡(luò)的濾波器在所有層都被啟用;
最后,現(xiàn)有濾波器中的去塊濾波和 SAO 被關(guān)掉,而 ALF(和 CCALF)則被置于基于卷積神經(jīng)網(wǎng)絡(luò)濾波器后面。
在線推斷及訓(xùn)練
推斷過程中使用 PyTorch 在 VTM 中執(zhí)行 DAM 深度學(xué)習(xí)的在線推斷,下表 1 是根據(jù) JVET 建議給出的網(wǎng)絡(luò)信息:
表 1。
訓(xùn)練過程中以 PyTorch 為訓(xùn)練平臺,采用 DIV2K 和 BVI-DVC 數(shù)據(jù)集,分別訓(xùn)練針對 intra slice 和 inter slice 的卷積神經(jīng)網(wǎng)絡(luò)濾波器,并且訓(xùn)練不同的模型以適應(yīng)不同的 QP 點,訓(xùn)練階段的網(wǎng)絡(luò)信息根據(jù) JVET 建議列于下表 2 中。
注意,當(dāng)訓(xùn)練 inter slice 濾波器時,預(yù)測信息也被用作輸入,而在 JVET-T0088 中,它僅用于 intra slice。
表 2。
下圖 2 給出了訓(xùn)練集和驗證集損失函數(shù)的一個示例。
圖 2。
實驗結(jié)果:三個顏色分量(亮度 Y 和色度 Cb、Cr)性能增益顯著
考慮到 VTM-9.0 和 VTM-10.0 之間的微小差異,并根據(jù) JVET 定義的常規(guī)測試條件,在 VTM-9.0 上測試了字節(jié)跳動 AVG 的 DAM 技術(shù)提案,測試結(jié)果如下表 3 和表 4 所示。
結(jié)果顯示,在 RA 構(gòu)型下,Y、Cb 和 Cr 的 BD-rate 節(jié)省分別為 10.28%、28.22% 和 27.97%;在 AI 配置下,對 Y、Cb 和 Cr 分別可帶來 8.33%、23.11% 和 23.55% 的 BD-rate 節(jié)省。
表 3:AVG 提案在 VTM9.0(RA)上的性能表現(xiàn)。
表 4:AVG 提案在 VTM9.0(AI)上的性能表現(xiàn)。
總結(jié)
實測證明,字節(jié)跳動 AVG 的這項視頻編碼技術(shù)創(chuàng)新,可以讓視頻的數(shù)據(jù)體積相比 H.266 最新國際標準再縮小 13%。對視頻服務(wù)商來說,存儲和帶寬成本將顯著降低;對用戶來說,在網(wǎng)速較慢的情況下也可以流暢觀看高清視頻。
但正如前文所述,早在 2013年正式通過的 H.265,如今還沒有完全普及。一方面,高昂的專利授權(quán)費用導(dǎo)致生產(chǎn)硬件設(shè)備和生產(chǎn)內(nèi)容的廠商無法承擔(dān),用戶也只能買并不支持 H.265 標準的設(shè)備;另一方面,H.265 的專利收費很復(fù)雜,想要使用 H.265 得分別多次繳專利費。因此,目前最常見的還是 18 年前的 H.264 標準。
盡管 H.266 新一代標準的推廣還有很長的路要走,字節(jié)跳動 AVG 的技術(shù)探索并不會停止,其研究成果也會通過自主研發(fā)的 BVC 編碼器投入應(yīng)用,為抖音、西瓜視頻、今日頭條等 App 的視頻類內(nèi)容處理,以及云計算、云游戲等基礎(chǔ)架構(gòu)領(lǐng)域創(chuàng)造更高清畫質(zhì)、更流暢播放的視頻體驗。