作者:雷鵬,單位:中國移動智慧家庭運營中心
我們在《AIoTel下視頻編碼技術(shù)(上)》中提到,AIoTel中應(yīng)用場景中,視頻編碼面臨著低延時和高效率的挑戰(zhàn)。從H.264、H.265到H.266,雖然每一代編碼標準比前一代在編碼效率有顯著提高,但編碼復(fù)雜度也都大幅提升,嚴重限制了它們的應(yīng)用場景。為了解決這個問題,快速編碼成為了視頻編碼中的一個重要研究方向。本文將著重討論快速視頻編碼重要意義和關(guān)鍵技術(shù)。
視頻編碼標準和快速編碼算法的發(fā)展
隨著數(shù)字視頻技術(shù)的發(fā)展,視頻編碼技術(shù)也在不斷進步。早在上世紀九十年代,MPEG-2作為第一代廣泛應(yīng)用的視頻編碼標準,就開始被廣泛用于數(shù)字電視、DVD等應(yīng)用中。然而,由于它的編碼效率相對較低,無法滿足網(wǎng)絡(luò)視頻傳播的需求。H.264作為一種高效的視頻編碼標準,大大提高了編碼效率,但隨之而來的是編碼復(fù)雜度的大幅度提升。H.265標準進一步推動了編碼效率的提升,相比于H.264,可以在相同的視頻質(zhì)量下將碼率降低50%,但與此同時,編碼復(fù)雜度也進一步提高。H.266標準下編碼器的復(fù)雜度比H.265相比又提升了一個數(shù)量級。
伴隨著視頻編碼標準的迭代演進和壓縮效率的顯著提升,降低編碼計算復(fù)雜度問題也日益凸顯。研究人員在不斷探索更高效的編碼方法,期望在保持一定的壓縮率和質(zhì)量的前提下,通過優(yōu)化編碼算法,減少冗余計算有效地提高編碼速度。
圖1 視頻編碼標準及復(fù)雜度變化[1]
快速視頻編碼的重要性
快速視頻編碼具有如下重要意義:
節(jié)約計算成本
快速視頻編碼能夠在保持一定的壓縮率和質(zhì)量的前提下,有效地降低編碼復(fù)雜度,減少編碼時間。這意味著,對于同樣的視頻內(nèi)容,使用快速視頻編碼技術(shù)可以更快地完成編碼處理,從而提高了視頻的處理速度和傳播效率。
縮短編碼延時
快速視頻編碼的實現(xiàn),使得視頻內(nèi)容可以在更多的應(yīng)用場景中得到應(yīng)用。例如,在實時或近實時的視頻通信、直播流媒體、視頻監(jiān)控等領(lǐng)域,快速視頻編碼技術(shù)的應(yīng)用,能夠確保視頻內(nèi)容可以在短時間內(nèi)被處理和傳輸,從而滿足了這些應(yīng)用對于實時性的要求。
支撐和推動更多的視頻應(yīng)用
快速視頻編碼的出現(xiàn),推動了視頻技術(shù)的發(fā)展,為未來的視頻應(yīng)用提供了更多的可能性。隨著技術(shù)的進步,更多的創(chuàng)新應(yīng)用,如虛擬現(xiàn)實、增強現(xiàn)實等,都需要依賴快速視頻編碼技術(shù)的支持。
H.265快速編碼的技術(shù)原理與方法
為了實現(xiàn)視頻編碼的高效率和高質(zhì)量,從H.264到H.266,新一代的編碼標準引入了一系列復(fù)雜而高效的技術(shù),如更精細的運動估計、更多樣的模式?jīng)Q策、更復(fù)雜的編碼塊劃分等。然而,這些高效的技術(shù)同時也帶來了大量的計算量,導(dǎo)致編碼過程變得復(fù)雜和耗時。研究人員提出了一系列的快速編碼技術(shù),包括快速編碼塊(Coding Unit, CU)劃分算法、快速模式?jīng)Q策算法和快速運動估計算法等。
3.1 快速編碼塊劃分算法
H.264編碼中,宏塊的劃分相對簡單,可以被劃分為16x16、16x8、8x16或8x8的子塊。H.265引入了一種更靈活的編碼樹(Coding Tree Unit, CTU)結(jié)構(gòu),允許每個編碼塊被遞歸地劃分成更小的子塊,同時也支持更大的CTU尺寸。這顯著提高了編碼效率,但同時也增加了編碼復(fù)雜度。H.266再次推動了編碼塊劃分的復(fù)雜性,引入了更多的劃分模式和更大的CTU尺寸,但同樣也帶來了更大的計算負擔。
圖2 H.265 CTU劃分結(jié)構(gòu)[2]
為了解決這個問題,研究人員提出了一系列的快速塊劃分方法。這些方法的主要思想是通過分析編碼過程中的統(tǒng)計信息,預(yù)測出最優(yōu)的劃分方式,提前結(jié)束逐層級的CU劃分和RD cost計算??焖賱澐植呗酝ǔ@孟闰炛R,如歷史編碼信息、空間和時間上下文信息等,分析并預(yù)測出最優(yōu)的劃分方式,然后只對預(yù)測出的劃分方式進行測試和RD cost計算,在其中挑選出最終劃分方式。這樣,就可以大大減少劃分測試的數(shù)量,從而降低劃分決策的復(fù)雜度和時間。
通過一個具體的例子進一步說明。對一個CTU進行塊劃分時,可以按照圖3的方式,僅僅根據(jù)四個角的CU信息進行快速判定,看是否可以跳過子CU的劃分。若滿足跳過條件,整個計算流程將會極大簡化,從而降低計算復(fù)雜度。圖4所示的紋理可以更直觀地看出,如果四個角的CU非常接近,那么大概率不用進一步劃分成子CU。
圖3 基于四角信息的快速 CU劃分方法
圖4 紋理變化與CU劃分結(jié)果
3.2 快速模式?jīng)Q策算法
幀內(nèi)預(yù)測模式是視頻編碼中一個重要的環(huán)節(jié),它可以預(yù)測當前幀中的像素值,以實現(xiàn)更高的壓縮效率。在H.264編碼中,幀內(nèi)預(yù)測主要包括9種預(yù)測模式:垂直模式、水平模式、DC模式和6種角度模式。H.265進一步擴展了幀內(nèi)預(yù)測模式,引入了33種角度模式;H.266繼續(xù)增加了幀內(nèi)預(yù)測模式的復(fù)雜性,將角度模式擴展到了65種,并且引入了更多的預(yù)測工具,如色度預(yù)測、聯(lián)合預(yù)測等。這些新的模式和預(yù)測工具進一步提高了編碼效率,但同時也增加了編碼的復(fù)雜度和計算負擔。
圖5 H.264 4x4塊 9種預(yù)測模式[4]
快速模式?jīng)Q策算法的核心思想是利用視頻數(shù)據(jù)的特性和模式的先驗知識,以盡可能減少需要計算的編碼模式數(shù)量。例如,視頻序列中相鄰的幀和塊在視覺上通常是相似的,它們的最優(yōu)編碼模式也可能相似。因此,可以通過分析前一幀或鄰近塊的編碼模式預(yù)測當前塊的最可能的編碼模式。此外,可以進一步優(yōu)化模式?jīng)Q策過程。例如,可以使用更復(fù)雜的預(yù)測模型,如機器學(xué)習(xí)模型,來預(yù)測最可能的編碼模式。這種模型可以更好地利用歷史編碼信息和上下文信息,提供更準確的預(yù)測結(jié)果。通過以上方法,可以大大減少需要計算的編碼模式,從而降低計算復(fù)雜度。
例如,對H.265的35種模式進行預(yù)測時,不必逐一進行計算,而是按照標號為5、10、15、20、25、30的5個方向做初步篩選,從其中最可能的角度模式中做進一步的精細篩選,從而降低模式?jīng)Q策復(fù)雜度。進一步地,甚至可以先從水平和垂直兩個方向中篩選中粗篩,然后從相鄰模式中細篩,進一步減少決策步驟。
圖6 H.265 35種預(yù)測模式及五步法快速預(yù)測
圖7 水平和垂直快速預(yù)測法
3.3 快速運動估計算法
運動估計在視頻編碼中起著至關(guān)重要的作用。它的主要任務(wù)是為每個視頻塊找到一個運動矢量,該矢量指示該塊在參考幀中的位置。傳統(tǒng)的運動估計方法,如全搜索方法,需要對整個搜索窗口進行遍歷,計算量巨大,效率低下。對于每一個可能的運動矢量,都需要計算塊之間的匹配程度,例如通過塊間差異的絕對和(SAD)或塊間差異的平方和(SSE)等。這種方法雖然可以找到最優(yōu)的運動矢量,但是計算復(fù)雜度太高,不適合于實時編碼。
圖8 運動估計原理
在H.264中,引入了一些基本的快速運動估計算法,如鉆石搜索(DS)、三步搜索(TSS)和新的三步搜索(NTSS)等。這些算法通過設(shè)計特定的搜索模式和搜索步長,減少了搜索點的數(shù)量,從而降低了運動估計的復(fù)雜度和時間。然而,這些算法的搜索精度和靈活性還有待提高。
在H.265和H.266中,引入了更精細的運動估計算法,例如精度更高的亞像素和1/4像素位置插值、基于深度信息的運動估計優(yōu)化等。同時,也引入了更多的快速運動估計算法,如Test Zone Search(TZSearch)等。這些算法利用運動矢量的時間和空間相關(guān)性,通過精細地設(shè)計搜索模式和搜索步長,大大減少了搜索點的數(shù)量,從而降低了運動估計的復(fù)雜度和時間。
圖9 TZSearch算法的搜索模板[5]
值得注意的是,上述的快速CU劃分、快速模式?jīng)Q策、快速運動估計等算法雖然可以大大降低運動估計的復(fù)雜度和時間,但也可能導(dǎo)致一定程度的性能損失。因此,在設(shè)計和實施快速算法時,需要在降低計算復(fù)雜度和保持編碼性能之間找到一個平衡。
快速視頻編碼的應(yīng)用與前景
快速視頻編碼技術(shù)的出現(xiàn),為許多實時或近實時的應(yīng)用提供了可能。
4.1 會議和直播場景
在網(wǎng)絡(luò)直播、視頻會議、在線教育、遠程醫(yī)療等場景,都需要快速編碼技術(shù)來保證視頻內(nèi)容在短時間內(nèi)被處理和傳輸,滿足用戶對于實時性的要求。
4.2 實時監(jiān)控場景
在安防監(jiān)控領(lǐng)域,由于監(jiān)控視頻數(shù)據(jù)量巨大,快速視頻編碼技術(shù)也起著關(guān)鍵作用。它不僅可以有效地壓縮視頻數(shù)據(jù),節(jié)省存儲空間,而且由于其快速的編碼能力,也可以支持實時監(jiān)控,對于犯罪預(yù)防和公共安全具有重要意義。
4.3 VR、AR等新型應(yīng)用場景
此外,隨著虛擬現(xiàn)實(VR)、增強現(xiàn)實(AR)等新型應(yīng)用的出現(xiàn),對于視頻編碼技術(shù)的要求也在不斷提高。這些應(yīng)用需要傳輸大量的高質(zhì)量視頻數(shù)據(jù),因此,快速視頻編碼技術(shù)的應(yīng)用,將是未來發(fā)展的一個重要方向。
結(jié)論
總的來說,快速視頻編碼技術(shù),對于推動視頻技術(shù)的發(fā)展,具有重要的意義。它在保持一定的壓縮率和質(zhì)量的前提下,可以有效地降低編碼復(fù)雜度,節(jié)約計算成本,減少編碼時間,提升視頻的處理速度和傳播效率。在未來,隨著視頻應(yīng)用的不斷擴大和深入,我們有理由相信,快速視頻編碼技術(shù)將在更多的領(lǐng)域得到應(yīng)用,推動視頻技術(shù)向更高的水平發(fā)展。
參考文獻
[1]https://en.sdmctech.com/news/industry-knowledge_1894.html.
[2]萬帥. 新一代高效視頻編碼 H. 265/HEVC: 原理, 標準與實現(xiàn). 電子工業(yè)出版社, 2014.
[3]J. Park, B. Kim, J. Lee and B. Jeon, "Machine Learning-Based Early Skip Decision for Intra Subpartition Prediction in VVC," in IEEE Access, vol. 10, pp. 111052-111065, 2022.
[4]Kim, Taeho, Ung Hwang, and Jechang Jeong. "Efficient block mode decision and prediction mode selection for intra prediction in H. 264/AVC high profile." 2011 International Conference on Digital Image Computing: Techniques and Applications. IEEE, 2011.
[5]Kibeya, Hassan, et al. "TZSearch pattern search improvement for HEVC motion estimation modules." 2014 1st international conference on advanced technologies for signal and image processing (ATSIP). IEEE, 2014.