本公開描述總體上涉及視頻編解碼的實施例。
背景技術:
1、本文所提供的背景描述旨在總體上呈現(xiàn)本公開的背景。在背景技術部分以及本說明書的各個方面中所描述的目前已署名的發(fā)明人的工作所進行的程度,并不表明其在本公開提交時作為現(xiàn)有技術,且從未明示或暗示其被承認為本公開的現(xiàn)有技術。
2、可以使用具有運動補償?shù)膱D片間預測來執(zhí)行視頻編碼和解碼。未壓縮的數(shù)字視頻可以包括一系列圖片,每個圖片具有例如1920×1080亮度樣本及相關色度樣本的空間維度。所述系列圖片可以具有固定的或可變的圖片速率(也非正式地稱為幀率),例如每秒60張圖片或60hz。未壓縮的視頻具有很高的比特率要求。例如,每個樣本8比特的1080p60?4:2:0視頻(60hz幀率下1920x1080亮度樣本分辨率)要求接近1.5gbit/s帶寬。一小時這樣的視頻就需要超過600gb的存儲空間。
3、視頻編碼和解碼的一個目的是通過壓縮減少輸入視頻信號的冗余。壓縮可以幫助降低對上述帶寬或存儲空間的要求,在某些情況下可降低兩個或更多數(shù)量級。無損壓縮和有損壓縮、以及兩者的組合均可采用。無損壓縮是指從壓縮的原始信號中重建原始信號精確副本的技術。當使用有損壓縮時,重建信號可能與原始信號不完全相同,但是原始信號和重建信號之間的失真足夠小,使得重建信號可用于預期應用。有損壓縮廣泛應用于視頻。容許的失真量取決于應用。例如,相比于電視應用的用戶,某些消費流媒體應用的用戶可以容忍更高的失真。可實現(xiàn)的壓縮比反映出:較高的允許/容許失真可產(chǎn)生較高的壓縮比。
4、運動補償可以是一種有損壓縮技術,且可涉及如下技術:來自先前重建的圖片或重建圖片一部分(參考圖片)的樣本數(shù)據(jù)塊在空間上按運動矢量(下文稱為mv)指示的方向移位后,用于新重建的圖片或圖片部分的預測。在某些情況下,參考圖片可與當前正在重建的圖片相同。mv可具有兩個維度x和y,或者三個維度,其中第三個維度表示正在使用的參考圖片(后者間接地可以是時間維度)。
5、在一些視頻壓縮技術中,應用于樣本數(shù)據(jù)的某個區(qū)域的mv可根據(jù)其它mv來預測,例如根據(jù)與正在重建的區(qū)域空間相鄰的樣本數(shù)據(jù)的另一個區(qū)域相關的、且按解碼順序在該mv前面的那些mv。這樣做可以大大減少編解碼mv所需的數(shù)據(jù)量,從而消除冗余并增加壓縮量。mv預測可以有效地進行,例如,因為在對從相機導出的輸入視頻信號(稱為自然視頻)進行編解碼時,存在一種統(tǒng)計上的可能性,即面積大于單個mv適用區(qū)域的區(qū)域,會朝著類似的方向移動,因此,在某些情況下,可以使用從相鄰區(qū)域的mv導出的相似運動矢量進行預測。這導致針對給定區(qū)域發(fā)現(xiàn)的mv與根據(jù)周圍mv預測的mv相似或相同,并且在熵編解碼之后,又可以用比直接編解碼mv時使用的比特數(shù)更少的比特數(shù)來表示。在某些情況下,mv預測可以是對從原始信號(即樣本流)導出的信號(即mv)進行無損壓縮的示例。在其它情況下,例如由于根據(jù)幾個周圍mv計算預測值時產(chǎn)生的取整誤差,mv預測本身可能是有損的。
6、h.265/hevc(itu-t?h.265建議書,“高效視頻編解碼”,2016年12月)描述了各種mv預測機制。在h.265提供的多種mv預測機制中,本公開描述的是下文稱為“空間合并”的技術。
7、參照圖1,當前塊(101)包括編碼器在運動搜索過程中發(fā)現(xiàn)的樣本,所述樣本可以根據(jù)已在空間上移位的相同大小的先前塊進行預測。不直接對mv進行編解碼,而是使用與五個周圍樣本中的任何一個相關聯(lián)的mv,從與一個或多個參考圖片相關聯(lián)的元數(shù)據(jù)中導出該mv,例如,從最近的(按解碼順序)參考圖片中導出該mv。其中,五個周圍樣本分別用a0、a1和b0、b1、b2(分別為102到106)表示。在h.265中,mv預測可使用相鄰塊正在使用的同一參考圖片的預測值。
技術實現(xiàn)思路
1、根據(jù)示例性實施例,本公開中的視頻解碼方法包括接收包括當前圖片的編碼視頻比特流;在當前圖片的目標區(qū)域中解碼多個塊,其中,當在所述目標區(qū)域中啟用并行處理時,當前解碼塊的相鄰塊不用于當前解碼塊的合并候選;當在所述目標區(qū)域中未啟用并行處理時,利用所述目標區(qū)域中的每個解碼塊的運動矢量,更新一歷史運動矢量預測器(hmvp)緩沖器。
2、根據(jù)示例性實施例,本公開中的視頻編碼方法,包括:獲得包括一當前圖片的視頻數(shù)據(jù);在所述當前圖片的目標區(qū)域內(nèi)編碼多個塊,其中,當在所述目標區(qū)域中啟用并行處理時,設置當前編碼塊的相鄰塊不用于當前編碼塊的合并候選;當在所述目標區(qū)域中未啟用并行處理時,利用所述目標區(qū)域中的每個編碼塊的運動矢量,更新一歷史運動矢量預測hmvp緩沖器。
3、根據(jù)示例性實施例,本公開中的用于視頻解碼的視頻解碼器包括處理電路,所述處理電路被配置為接收包括當前圖片的編碼視頻比特流;在當前圖片的目標區(qū)域中解碼多個塊,其中,當在所述目標區(qū)域中啟用并行處理時,設置當前編碼塊的相鄰塊不用于當前編碼塊的合并候選;當在所述目標區(qū)域中未啟用并行處理時,利用所述目標區(qū)域中的每個解碼塊的運動向量,更新歷史運動矢量預測器(hmvp)緩沖器。
4、根據(jù)示例性實施例,本公開中的視頻解碼器包括存儲器和處理器,所述存儲器中存儲有計算機程序,所述處理器被設置為通過所述計算機程序執(zhí)行上述的視頻解碼方法。
5、根據(jù)示例性實施例,本公開中的視頻編碼器包括存儲器和處理器,所述存儲器中存儲有計算機程序,所述處理器被設置為通過所述計算機程序執(zhí)行上述的視頻編、解碼方法。
6、根據(jù)示例性實施例,本公開中的一種具有存儲在其中的指令的非易失性計算機可讀存儲介質(zhì),其在由視頻解碼器中的處理器執(zhí)行時實現(xiàn)上述的視頻編解碼方法。
7、根據(jù)示例性實施例,本公開中的計算機程序產(chǎn)品,包括計算機程序,該計算機程序被處理器執(zhí)行時實現(xiàn)上述的方法。
1.一種視頻解碼方法,其特征在于,包括:
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,在確定在所述區(qū)域中啟用并行處理時,不使用所述區(qū)域中任何解碼塊的任何運動矢量更新所述hmvp緩沖器。
3.根據(jù)權(quán)利要求1所述的方法,其特征在于,進一步包括:確定在所述目標區(qū)域中解碼塊的位置,在確定在所述目標區(qū)域中啟用并行處理并且所述解碼塊的位置在預定位置時,用所述目標區(qū)域中所述解碼塊的運動矢量更新所述hmvp緩沖器。
4.根據(jù)權(quán)利要求3所述的方法,其特征在于,所述預定位置是所述目標區(qū)域的左上角。
5.根據(jù)權(quán)利要求3所述的方法,其特征在于,進一步包括:將每個解碼塊的運動矢量存儲在一臨時緩沖器中。
6.根據(jù)權(quán)利要求5所述的方法,其特征在于,進一步包括:在確定在所述目標區(qū)域中啟用并行處理并且所述解碼塊的位置在所述目標區(qū)域的右下角時,將所述臨時緩沖器的內(nèi)容復制到所述hmvp緩沖器中。
7.一種視頻編碼方法,其特征在于,包括:
8.一種用于視頻解碼的視頻解碼器,其特征在于,包括:處理電路,所述處理電路用于:
9.一種視頻解碼器,包括存儲器和處理器,其特征在于,所述存儲器中存儲有計算機程序,所述處理器被設置為通過所述計算機程序執(zhí)行所述權(quán)利要求1至6任一項中所述的方法。
10.一種視頻編碼器,包括存儲器和處理器,其特征在于,所述存儲器中存儲有計算機程序,所述處理器被設置為通過所述計算機程序執(zhí)行所述權(quán)利要求1至7任一項中所述的方法。
11.一種具有存儲在其中的指令的非易失性計算機可讀存儲介質(zhì),其特征在于,當由處理器執(zhí)行時,該非易失性計算機可讀存儲介質(zhì)使所述處理器執(zhí)行如權(quán)利要求1至7中任一項所述的方法。
12.一種計算機程序產(chǎn)品,包括計算機程序,其特征在于,該計算機程序被處理器執(zhí)行時實現(xiàn)權(quán)利要求1至7任一項中所述方法的步驟。