本公開(kāi)描述了總體上涉及視頻編解碼的實(shí)施例。
背景技術(shù):
1、本文所提供的背景描述旨在總體上呈現(xiàn)本公開(kāi)的背景。在背景技術(shù)部分以及本說(shuō)明書(shū)的各個(gè)方面中所描述的目前已署名的發(fā)明人的工作所進(jìn)行的程度,并不表明其在本公開(kāi)提交時(shí)作為現(xiàn)有技術(shù),且從未明示或暗示其被承認(rèn)為本公開(kāi)的現(xiàn)有技術(shù)。
2、可以使用具有運(yùn)動(dòng)補(bǔ)償?shù)膱D片間預(yù)測(cè)來(lái)執(zhí)行視頻編碼和解碼。未壓縮的數(shù)字視頻可以包括一系列圖片,每個(gè)圖片具有例如1920×1080亮度樣本及相關(guān)色度樣本的空間維度。所述系列圖片可以具有固定的或可變的圖片速率(也非正式地稱為幀率),例如每秒60張圖片或60hz。未壓縮的視頻具有特定的比特率要求。例如,每個(gè)樣本8比特的1080p60?4:2:0視頻(60hz幀率下1920x1080亮度樣本分辨率)要求接近1.5gbit/s帶寬。一小時(shí)這樣的視頻就需要超過(guò)600gb的存儲(chǔ)空間。
3、視頻編碼和解碼的一個(gè)目的是通過(guò)壓縮減少輸入視頻信號(hào)的冗余。壓縮可以幫助降低對(duì)上述帶寬和/或存儲(chǔ)空間的要求,在某些情況下可降低兩個(gè)或更多數(shù)量級(jí)。無(wú)損壓縮和有損壓縮、以及兩者的組合均可采用。無(wú)損壓縮是指從壓縮的原始信號(hào)中重建原始信號(hào)精確副本的技術(shù)。當(dāng)使用有損壓縮時(shí),重建信號(hào)可能與原始信號(hào)不完全相同,但是原始信號(hào)和重建信號(hào)之間的失真足夠小,使得重建信號(hào)可用于預(yù)期應(yīng)用。有損壓縮廣泛應(yīng)用于視頻。容許的失真量取決于應(yīng)用。例如,相比于電視應(yīng)用的用戶,某些消費(fèi)流媒體應(yīng)用的用戶可以容忍更高的失真??蓪?shí)現(xiàn)的壓縮比反映出:較高的允許/容許失真可產(chǎn)生較高的壓縮比。
4、視頻編碼器和解碼器可以利用幾大類技術(shù),例如包括:運(yùn)動(dòng)補(bǔ)償、變換、量化和熵編碼。
5、視頻編解碼器技術(shù)可以包括已知的幀內(nèi)編解碼技術(shù)。在幀內(nèi)編解碼中,在不參考先前重建的參考圖片的樣本或其它數(shù)據(jù)的情況下表示樣本值。在一些視頻編解碼器中,圖片在空間上被細(xì)分為樣本塊。當(dāng)所有的樣本塊都以幀內(nèi)模式編解碼時(shí),該圖片可以為幀內(nèi)圖片。幀內(nèi)圖片及其衍生(例如獨(dú)立解碼器刷新圖片)可用于復(fù)位解碼器狀態(tài),并且因此可用作已編碼視頻比特流和視頻會(huì)話中的第一圖片,或用作靜止圖像。幀內(nèi)塊的樣本可用于變換,并且可以在熵編碼之前量化變換系數(shù)。幀內(nèi)預(yù)測(cè)可以是一種使預(yù)變換域中的樣本值最小化的技術(shù)。在某些情況下,變換后的dc值越小,且ac系數(shù)越小,則在給定的量化步長(zhǎng)尺寸下表示熵編碼后的塊所需的比特越少。
6、如同從諸如mpeg-2(運(yùn)動(dòng)圖像專家組-2)編解碼技術(shù)中所獲知的,傳統(tǒng)幀內(nèi)編解碼不使用幀內(nèi)預(yù)測(cè)。然而,一些較新的視頻壓縮技術(shù)包括:試圖從例如周圍樣本數(shù)據(jù)和/或元數(shù)據(jù)中得到數(shù)據(jù)塊的技術(shù),其中周圍樣本數(shù)據(jù)和/或元數(shù)據(jù)是在空間相鄰塊的編碼/解碼期間、且在解碼順序之前獲得的。這種技術(shù)后來(lái)被稱為"幀內(nèi)預(yù)測(cè)"技術(shù)。需要注意的是,至少在某些情形下,幀內(nèi)預(yù)測(cè)使用僅來(lái)自正在重建的當(dāng)前圖片的參考數(shù)據(jù),而不使用來(lái)自參考圖片的參考數(shù)據(jù)。
7、可以存在許多不同形式的幀內(nèi)預(yù)測(cè)。當(dāng)在給定的視頻編解碼技術(shù)中可以使用超過(guò)一種這樣的技術(shù)時(shí),所使用的技術(shù)可以按幀內(nèi)預(yù)測(cè)模式進(jìn)行編解碼。在某些情形下,模式可以具有子模式和/或參數(shù),且這些模式可以單獨(dú)編解碼或包含在模式碼字中。給定模式/子模式/參數(shù)組合使用哪個(gè)碼字會(huì)影響通過(guò)幀內(nèi)預(yù)測(cè)獲得的編解碼效率增益,因此用于將碼字轉(zhuǎn)換成比特流的熵編碼技術(shù)也會(huì)出現(xiàn)這種情況。
8、h.264引入了一種幀內(nèi)預(yù)測(cè)模式,其在h.265中進(jìn)行了改進(jìn),且在諸如聯(lián)合開(kāi)發(fā)模型(jem)、通用視頻編解碼(vvc)、基準(zhǔn)集合(bms)等更新的編解碼技術(shù)中進(jìn)一步被改進(jìn)。使用屬于已經(jīng)可用的樣本的相鄰樣本值可以形成預(yù)測(cè)塊。將相鄰樣本的樣本值按照某一方向復(fù)制到預(yù)測(cè)塊中。對(duì)所使用方向的引用可以被編碼在比特流中,或者本身可以被預(yù)測(cè)。
9、參考圖1a,右下方描繪了來(lái)自h.265的33個(gè)可能的預(yù)測(cè)方向(對(duì)應(yīng)于35個(gè)幀內(nèi)模式的33個(gè)角模式)中已知的九個(gè)預(yù)測(cè)方向的子集。箭頭會(huì)聚的點(diǎn)(101)表示正在被預(yù)測(cè)的樣本。箭頭表示樣本正在被預(yù)測(cè)的方向。例如,箭頭(102)表示根據(jù)右上方與水平方向成45度角的一個(gè)或多個(gè)樣本,預(yù)測(cè)樣本(101)。類似地,箭頭(103)表示根據(jù)左下方與水平方向成22.5度角的一個(gè)或多個(gè)樣本,預(yù)測(cè)樣本(101)。
10、仍然參考圖1a,在左上方示出了一個(gè)包括4×4個(gè)樣本的正方形塊(104)(由粗虛線表示)。正方形塊(104)由16個(gè)樣本組成,每個(gè)樣本用“s”、以及其在y維度(例如行索引)上的位置和在x緯度(例如列索引)上的位置來(lái)標(biāo)記。例如,樣本s21是y維度上的第二個(gè)樣本(從上方開(kāi)始)和x維度上的第一個(gè)樣本(從左側(cè)開(kāi)始)。類似地,樣本s44在y維度和x維度上都是塊(104)中的第四個(gè)樣本。由于該塊為4×4大小的樣本,因此s44位于右下角。還示出了遵循類似編號(hào)方案的參考樣本。參考樣本用“r”、以及其相對(duì)于塊(104)的y位置(例如,行索引)和x位置(例如,列索引)來(lái)標(biāo)記。在h.264與h.265中,預(yù)測(cè)樣本與正在重建的塊相鄰,因此不需要使用負(fù)值。
11、通過(guò)從相鄰樣本復(fù)制參考樣本值,可以進(jìn)行幀內(nèi)圖片預(yù)測(cè),其中相鄰樣本是由信號(hào)通知的預(yù)測(cè)方向所決定的。例如,假設(shè)已編碼視頻比特流包括信令,對(duì)于該塊,該信令指示與箭頭(102)一致的預(yù)測(cè)方向,即,根據(jù)右上方與水平方向成45度角的一個(gè)或多個(gè)預(yù)測(cè)樣本來(lái)預(yù)測(cè)樣本。在這種情況下,根據(jù)同一參考樣本r05,預(yù)測(cè)樣本s41、s32、s23和s14。然后,根據(jù)樣本r08,預(yù)測(cè)樣本s44。
12、在某些情況下,例如通過(guò)內(nèi)插,可以合并多個(gè)參考樣本的值,以便計(jì)算參考樣本,尤其是當(dāng)方向不能被45度整除時(shí)。
13、隨著視頻編解碼技術(shù)的發(fā)展,可能的方向的數(shù)量已經(jīng)增加了。在h.264(2003年)中,可以表示九種不同的方向。在h.265(2013年)和jem/vvc/bms中增加到了33個(gè),而在此公開(kāi)時(shí),可以支持多達(dá)65個(gè)方向。已經(jīng)進(jìn)行了實(shí)驗(yàn)來(lái)識(shí)別最可能的方向,并且熵編碼中的某些技術(shù)被用來(lái)使用少量比特來(lái)表示那些可能的方向,對(duì)于較不可能的方向則接受某些代價(jià)。此外,有時(shí)可以根據(jù)在相鄰的、已經(jīng)解碼的塊中所使用的相鄰方向來(lái)預(yù)測(cè)方向本身。
14、圖1b示出了一種示意圖(180),其描述了根據(jù)jem的65種幀內(nèi)預(yù)測(cè)方向,以說(shuō)明隨著時(shí)間的推移預(yù)測(cè)方向的數(shù)量增加。
15、從幀內(nèi)預(yù)測(cè)方向到已編碼視頻比特流中的表示方向的比特的映射可以因視頻編解碼技術(shù)的不同而不同,例如,其范圍可以從對(duì)幀內(nèi)預(yù)測(cè)模式的預(yù)測(cè)方向到碼字的簡(jiǎn)單直接映射,到包括最可能模式的復(fù)雜自適應(yīng)方案以及類似技術(shù)。然而,在所有情況下,視頻內(nèi)容中可能存在某些方向,其在統(tǒng)計(jì)學(xué)上比其它方向更不可能出現(xiàn)。
16、運(yùn)動(dòng)補(bǔ)償可以是一種有損壓縮技術(shù),且可涉及如下技術(shù):來(lái)自先前重建的圖片或重建圖片一部分(參考圖片)的樣本數(shù)據(jù)塊在空間上按運(yùn)動(dòng)矢量(下文稱為mv)指示的方向移位后,用于新重建的圖片或圖片部分的預(yù)測(cè)。在某些情況下,參考圖片可與當(dāng)前正在重建的圖片相同。mv可具有兩個(gè)維度x和y,或者三個(gè)維度,其中第三個(gè)維度表示正在使用的參考圖片(后者間接地可以是時(shí)間維度)。
17、在一些視頻壓縮技術(shù)中,應(yīng)用于樣本數(shù)據(jù)的某個(gè)區(qū)域的mv可根據(jù)其它mv來(lái)預(yù)測(cè),例如根據(jù)與正在重建的區(qū)域空間相鄰的樣本數(shù)據(jù)的另一個(gè)區(qū)域相關(guān)的、且按解碼順序在該mv前面的那些mv。這樣做可以大大減少編解碼mv所需的數(shù)據(jù)量,從而消除冗余并增加壓縮量。mv預(yù)測(cè)可以有效地進(jìn)行,例如,因?yàn)樵趯?duì)從相機(jī)導(dǎo)出的輸入視頻信號(hào)(稱為自然視頻)進(jìn)行編解碼時(shí),存在一種統(tǒng)計(jì)上的可能性,即面積大于單個(gè)mv適用區(qū)域的區(qū)域,會(huì)朝著類似的方向移動(dòng),因此,在某些情況下,可以使用從相鄰區(qū)域的mv導(dǎo)出的相似運(yùn)動(dòng)矢量進(jìn)行預(yù)測(cè)。這導(dǎo)致針對(duì)給定區(qū)域發(fā)現(xiàn)的mv與根據(jù)周圍mv預(yù)測(cè)的mv相似或相同,并且在熵編解碼之后,又可以用比直接編解碼mv時(shí)使用的比特?cái)?shù)更少的比特?cái)?shù)來(lái)表示。在某些情況下,mv預(yù)測(cè)可以是對(duì)從原始信號(hào)(即樣本流)導(dǎo)出的信號(hào)(即mv)進(jìn)行無(wú)損壓縮的示例。在其它情況下,例如由于根據(jù)幾個(gè)周圍mv計(jì)算預(yù)測(cè)值時(shí)產(chǎn)生的取整誤差,mv預(yù)測(cè)本身可能是有損的。
18、h.265/hevc(itu-t?h.265建議書(shū),“高效視頻編解碼”,2016年12月)描述了各種mv預(yù)測(cè)機(jī)制。在h.265提供的多種mv預(yù)測(cè)機(jī)制中,本公開(kāi)描述的是下文稱為“空間合并”的技術(shù)。
19、參考圖2,當(dāng)前塊(201)包括編碼器在運(yùn)動(dòng)搜索過(guò)程中發(fā)現(xiàn)的樣本,所述樣本可以根據(jù)已在空間上移位的相同大小的先前塊進(jìn)行預(yù)測(cè)。不直接對(duì)mv進(jìn)行編解碼,而是使用與五個(gè)周圍樣本中的任何一個(gè)相關(guān)聯(lián)的mv,從與一個(gè)或多個(gè)參考圖片相關(guān)聯(lián)的元數(shù)據(jù)中導(dǎo)出該mv,例如,從最近的(按解碼順序)參考圖片中導(dǎo)出該mv。其中,五個(gè)周圍樣本分別用a0、a1和b0、b1、b2(分別為202到206)表示。在h.265中,mv預(yù)測(cè)可使用相鄰塊正在使用的同一參考圖片的預(yù)測(cè)值。
技術(shù)實(shí)現(xiàn)思路
1、本公開(kāi)的各方面提供用于視頻編碼/解碼的方法和設(shè)備。在一些示例中,用于視頻解碼的設(shè)備包括處理電路。處理電路被配置為:獲得針對(duì)在已編碼視頻比特流中用信號(hào)通知的約束信息中的至少一個(gè)約束信息組中的每個(gè)約束信息組的門控標(biāo)志。每個(gè)門控標(biāo)志可以指示與相應(yīng)門控標(biāo)志相對(duì)應(yīng)的至少一個(gè)約束信息組中的約束信息組是否存在于約束信息中。約束信息可以針對(duì)已編碼視頻比特流中的編碼塊的子集。處理電路被配置為:基于至少一個(gè)約束信息組的約束信息組的門控標(biāo)志來(lái)確定門控標(biāo)志對(duì)應(yīng)的約束信息組是否存在于約束信息中,門控標(biāo)志對(duì)應(yīng)的約束信息組包括針對(duì)編碼塊的子集的至少一個(gè)約束標(biāo)志。所述約束信息中包括偏移量和長(zhǎng)度,并且,處理電路被配置為基于所述偏移量和所述長(zhǎng)度指示至少一個(gè)約束標(biāo)志存在于所述約束信息中;處理電路被配置為基于所述約束信息中存在的約束標(biāo)志來(lái)確定針對(duì)編碼塊的子集的預(yù)測(cè)信息。處理電路被配置為基于預(yù)測(cè)信息來(lái)重建編碼塊的子集。
2、在實(shí)施例中,門控標(biāo)志對(duì)應(yīng)的約束信息組被確定為存在于約束信息中。處理電路被配置為基于門控標(biāo)志對(duì)應(yīng)的約束信息組中的至少一個(gè)約束標(biāo)志來(lái)確定針對(duì)編碼塊的子集的預(yù)測(cè)信息。
3、在實(shí)施例中,門控標(biāo)志對(duì)應(yīng)的約束信息組被確定為不存在于約束信息中。
4、在實(shí)施例中,每個(gè)門控標(biāo)志用于指示與相應(yīng)門控標(biāo)志相對(duì)應(yīng)的約束信息組不存在于約束信息中,并且約束信息中不存在與相應(yīng)門控標(biāo)志對(duì)應(yīng)的所述約束信息組中的約束標(biāo)志。
5、在實(shí)施例中,約束信息存在于針對(duì)至少一個(gè)圖片的高級(jí)別語(yǔ)法中,并且編碼塊的子集包括至少一個(gè)圖片中的編碼塊。
6、在實(shí)施例中,至少一個(gè)約束信息組中的一個(gè)或多個(gè)約束信息組存在于已編碼視頻比特流中。根據(jù)預(yù)定的順序用信號(hào)通知至少一個(gè)約束信息組中的一個(gè)或多個(gè)約束信息組中的多個(gè)約束標(biāo)志。處理電路被配置為對(duì)約束信息中存在的約束標(biāo)志進(jìn)行游程解碼,以及基于約束信息中存在的約束標(biāo)志來(lái)確定針對(duì)編碼塊的子集的預(yù)測(cè)信息。
7、在實(shí)施例中,門控標(biāo)志對(duì)應(yīng)的約束信息組中的至少一個(gè)約束標(biāo)志包括根據(jù)預(yù)定的順序用信號(hào)通知的多個(gè)約束標(biāo)志。處理電路被配置為對(duì)約束信息中存在的約束標(biāo)志進(jìn)行游程解碼。
8、在實(shí)施例中,至少一個(gè)約束信息組中的一個(gè)或多個(gè)約束信息組存在于已編碼視頻比特流中。對(duì)于至少一個(gè)約束信息組中的一個(gè)或多個(gè)約束信息組中的每個(gè)約束信息組,偏移量和長(zhǎng)度存在于約束信息中,指示至少一個(gè)約束信息組中的一個(gè)或多個(gè)約束信息組中的相應(yīng)約束信息組中的至少一個(gè)約束標(biāo)志存在于約束信息中。在已編碼視頻比特流中用信號(hào)通知偏移量的數(shù)量。
9、在實(shí)施例中,至少一個(gè)約束信息組中的一個(gè)或多個(gè)約束信息組存在于已編碼視頻比特流中。約束信息中的一個(gè)或多個(gè)語(yǔ)法元素是字節(jié)對(duì)齊的。一個(gè)或多個(gè)語(yǔ)法元素可包括針對(duì)至少一個(gè)約束信息組中的每個(gè)約束信息組的門控標(biāo)志、以及至少一個(gè)約束信息組中的一個(gè)或多個(gè)約束信息組中的多個(gè)約束標(biāo)志。
10、本公開(kāi)的各方面還提供了一種視頻編碼方法,應(yīng)用于包括本地解碼器的編碼器中,所述方法包括:
11、獲得針對(duì)在已編碼視頻比特流中,用信號(hào)通知的約束信息中的至少一個(gè)約束信息組中的每個(gè)約束信息組的門控標(biāo)志,每個(gè)門控標(biāo)志用于指示與相應(yīng)門控標(biāo)志對(duì)應(yīng)的所述至少一個(gè)約束信息組中的約束信息組是否存在于所述約束信息中,所述約束信息針對(duì)所述已編碼視頻比特流中的編碼塊的子集;
12、基于所述至少一個(gè)約束信息組中的所述約束信息組的所述門控標(biāo)志,來(lái)確定所述門控標(biāo)志對(duì)應(yīng)的所述約束信息組是否存在于所述約束信息中,所述門控標(biāo)志對(duì)應(yīng)的所述約束信息組包括針對(duì)所述編碼塊的子集的至少一個(gè)約束標(biāo)志;
13、所述約束信息中包括偏移量和長(zhǎng)度,并且,基于所述偏移量和所述長(zhǎng)度指示至少一個(gè)約束標(biāo)志存在于所述約束信息中;
14、基于所述約束信息中存在的約束標(biāo)志,來(lái)確定針對(duì)所述編碼塊的子集的預(yù)測(cè)信息;以及
15、基于所述預(yù)測(cè)信息來(lái)重建所述編碼塊的子集。
16、本公開(kāi)的各方面還提供了一種存儲(chǔ)有指令的非暫時(shí)性計(jì)算機(jī)可讀介質(zhì),當(dāng)該指令由計(jì)算機(jī)執(zhí)行以用于視頻解碼時(shí),使計(jì)算機(jī)執(zhí)行用于視頻解碼的方法。