TWI842980B - 用於視訊編碼及解碼的高階語法 - Google Patents

用於視訊編碼及解碼的高階語法 Download PDF

Info

Publication number
TWI842980B
TWI842980B TW110107728A TW110107728A TWI842980B TW I842980 B TWI842980 B TW I842980B TW 110107728 A TW110107728 A TW 110107728A TW 110107728 A TW110107728 A TW 110107728A TW I842980 B TWI842980 B TW I842980B
Authority
TW
Taiwan
Prior art keywords
header
picture
slice
information
flag
Prior art date
Application number
TW110107728A
Other languages
English (en)
Other versions
TW202135533A (zh
Inventor
吉羅姆 拉契
奈爾 奧德果
派翠斯 昂諾
Original Assignee
日商佳能股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from GB2003562.2A external-priority patent/GB2592957A/en
Application filed by 日商佳能股份有限公司 filed Critical 日商佳能股份有限公司
Publication of TW202135533A publication Critical patent/TW202135533A/zh
Application granted granted Critical
Publication of TWI842980B publication Critical patent/TWI842980B/zh

Links

Images

Abstract

提供一種從位元流解碼視訊資料的方法,該位元流包括與一個或多個切片相對應的視訊資料。該位元流包括:圖片標頭,其包括在解碼一個或多個切片時使用的語法元素;以及切片標頭,其包括在解碼切片時使用的語法元素。該解碼包括在可以在該圖片標頭中信令在該圖片標頭或該切片標頭中信令的資訊的情況下,在切片標頭中信令圖片標頭,允許在切片標頭或圖片標頭中的僅一個,可以其他方式在切片標頭或圖片標頭信令資訊的解析;及使圖片標頭不在切片標頭中,並使用該語法元素對該位元流進行解碼。

Description

用於視訊編碼及解碼的高階語法
本發明關於視訊編碼和解碼,尤其關於位元流中使用的高階語法。
最近,由MPEG和ITU-T第16研究組的VCEG組成的協作小組聯合視訊專家小組(Joint Video Experts Team, JVET)開始研究稱為多功能視訊編碼(Versatile Video Coding, VCC)的新視訊編碼標準。VVC的目標是在現有HEVC標準上實現壓縮性能的顯著改善(即通常是以前的兩倍),並在2020年完成。主要目標應用和服務包括但不限於360度和高動態範圍(HDR)視訊。總體而言,JVET使用獨立測試實驗室進行的正式主觀測試評估32個組織的回饋。一些建議表明,與使用HEVC相比,壓縮效率通常提高40%或更多。在超高清(UHD)視訊測試材料上顯示特殊的效果。因此,我們可以預期壓縮效率的提高將遠遠超過最終標準的目標50%。
JVET探索模型(JEM)使用所有HEVC工具,並引入許多新工具。這些改變使得必須改變位元流的結構,且特別是高階別語法,可以對位元流的總位元率產生影響。
本發明關於對高階語法結構的改進,其導致複雜度的降低而編碼性能沒有任何下降。
根據本發明的第一態樣,提供一種從位元流解碼視訊資料的方法,該位元流包括與一個或多個切片相對應的視訊資料,其中,該位元流包括:圖片標頭,其包括在解碼一個或多個切片時使用的語法元素;以及切片標頭,其包括在解碼切片時使用的語法元素;且,該解碼包括在可以在該圖片標頭中信令在該圖片標頭或該切片標頭中信令資訊的情況下,使(施加限制條件)該圖片標頭不在該切片標頭中;及使用該語法元素對該位元流進行解碼。
可選地,該解碼進一步包括:解析第一語法元素,該第一語法元素指示是否在圖片標頭中信令該資訊,以及允許僅在基於該第一語法元素的該切片標頭或圖片標頭中的一個在該切片標頭或圖片標頭中可信令的該資訊的該解析。
可選地,該第一語法元素是在圖片參數設置旗標的資訊或圖片標頭旗標中的資訊。
可選地,在該第一語法元素指示該資訊是在該圖片標頭中信令的情況下,不允許在該切片標頭中解析該資訊。
可選地,該方法進一步包括:解析第二語法元素,該第二語法元素指示該圖片標頭是否在該切片標頭中,其中,對位元流一致性的要求是,該第二語法元素指示在該第一語法元素指示在該圖片標頭中信令該資訊的情況下,該圖片標頭不在該切片標頭中。
可選地,該資訊包括量化參數值資訊、參考圖片列表資訊、解區塊濾波器資訊、樣本自適應偏移(SAO)資訊、加權預測資訊和自適應環路濾波(ALF)資訊中的一個或多個。
可選地,該資訊包括可以在圖片標頭和切片標頭中信令的所有資訊。
可選地,該參考圖片列表資訊包括 slice_collocated_from_l0 flag,slice_collocated_ref_idx、ph_collocated_from_l0_flag及ph_collocated_ref_idx中的一個或多個。
根據本發明的第二態樣,提供一種將視訊資料編碼為位元流的方法,該視訊資料對應一個或多個切片,其中,該位元流包括:圖片標頭,其包括在解碼一個或多個切片時使用的語法元素;以及切片標頭,其包括在解碼切片時使用的語法元素;且,該編碼包括:在該圖片標頭中信令可以在該圖片標頭中或在該切片標頭中信令資訊的情況下,信令該圖片標頭不是在該切片標頭中,及使用該語法元素對該視訊資料進行編碼。
可選地,該編碼進一步包括:編碼第一語法元素,該第一語法元素指示是否在圖片標頭中信令該資訊,以及允許僅在基於該第一語法元素的該切片標頭或圖片標頭中的一個在該切片標頭或圖片標頭中可信令的該資訊的該編碼。
可選地,該第一語法元素是在圖片參數設置旗標的資訊或圖片標頭旗標中的資訊。
可選地,在該第一語法元素指示該資訊是在該圖片標頭中信令的情況下,不允許在該切片標頭中編碼該資訊。
任選地,該方法進一步包括:編碼第二語法元素,該第二語法元素指示該圖片標頭是否在該切片標頭中,其中,對位元流一致性的要求是,該第二語法元素指示在該第一語法元素指示在該圖片標頭中信令該資訊的情況下,該圖片標頭不在該切片標頭中。
可選地,該資訊包括量化參數值資訊、參考圖片列表資訊、解區塊濾波器資訊、樣本自適應偏移(SAO)資訊、加權預測資訊和自適應環路濾波(ALF)資訊中的一個或多個。
可選地,該資訊包括可以在圖片標頭和切片標頭中信令的所有資訊。
可選地,該參考圖片列表資訊包括slice_collocated_from_l0 flag、slice_collocated_ref_idx、ph_collocated_from_l0_flag 及 ph_collocated_ref_idx中的一個或多個。
在本發明的替代態樣,提供一種從位元流解碼視訊資料的方法,該位元流包括與一個或多個切片相對應的視訊資料,其中,該位元流包括:圖片標頭,包括在解碼一或更多切片時使用的語法元素;切片標頭,包括在解碼切片時要用的語法元素,且該解碼包括:在可以在該圖片標頭中信令在該圖片標頭或該切片標頭中信令資訊的情況下,使該圖片標頭不在該切片標頭中;及使用該語法元素對該位元流進行解碼。
根據本發明的另一態樣,提供一種從位元流解碼視訊資料的方法,一種從位元流解碼視訊資料的方法,該位元流包括與一個或多個切片相對應的視訊資料,其中,該位元流包括:圖片標頭,其包括在解碼一個或多個切片時使用的語法元素;以及切片標頭,其包括在解碼切片時使用的語法元素;且解碼包括將以下組合起來視為不適用:(a)語法元素,指示工具資訊在該圖片標頭中而不是在切片標頭中信令,以及(b)語法元素,指示在切片標頭中信令圖片標頭;以及使用所述語法元素解碼所述位元流。當存在被認為不適用於組合的所述語法元素(a)和(b)時,不會發生解碼。
根據本發明的相關態樣,位元流包括:與一個或多個切片相對應的視訊資料;圖片標頭,包含在解碼一個或多個切片時使用的語法元素;及切片標頭,包括在解碼切片時使用的語法元素。位元流具有的限制是以下組合不可存在條件:(a)表示在圖片標頭中而不是在切片標頭中信令工具資訊的語法元素,以及(b)表示(a)在切片標頭中信令圖片標頭的語法元素。工具資訊可以是量化參數值資訊、參考圖片列表資訊、解區塊濾波器資訊、樣本自適應偏移(SAO)資訊、加權預測資訊和自適應環路濾波(ALF)資訊中的任何一種。在一相關態樣,提供一種解碼所述位元流的方法。在另一相關態樣,提供一個配置為解碼所述位元流的解碼器。位元流可以受限於視訊編碼標準的一致性。在一個實施例中,所述視訊編碼標準是多功能視訊編碼標準。限制條件可以被應用遍及整個位元流。例如,在實施例中,該限制條件被應用於位元流中的任何或所有序列、圖片和切片。
根據本發明的另一態樣,提供一種從位元流解碼視訊資料的方法,該位元流包括與一個或多個切片相對應的視訊資料,其中該位元流包括圖片標頭,包括當解碼一或更多個切片時要使用的語法元素;切片標頭,包含在解碼切片時要使用的語法元素,且解碼包括將以下內容組合起來視為不適用:(a)指示在切片標頭中而不是在圖片標頭中信令工具資訊的語法元素和(b)指示在切片標頭信令圖片標頭的語法元素;以及使用所述語法元素解碼所述位元流。當存在組合所述語法元素(a)和(b)被認為不適用於時,不會發生解碼。
根據本發明的另一態樣,提供一種從位元流解碼視訊資料的方法,該位元流包括與一個或多個切片相對應的視訊資料,其中該位元流包括:圖片標頭,包括當解碼一個或多個切片時使用的語法元素,以及切片標頭,包括在解碼切片時要使用的語法元素,其中圖片標頭將在切片標頭中信令,且其中資訊的解析本來可以在切片標頭和圖片標頭中信令,僅在切片標頭或圖片標頭之一中受限制; 且解碼包括在語法元素(xxx_info_in_ph_flag )指示圖片標頭中存在工具資訊的情況下(例如,當xxx_info_in_ph_flag=1時),在切片標頭中未信令圖片標頭(例如,強制 picture_header_in_slice_header_flag為0)。
根據本發明的相關態樣,一種位元流包括:視訊資料,與一個或多個切片相對應;圖片標頭,包含在解碼一或更多切片時使用的語法元素;以及包括解碼切片時使用的語法元素的切片標頭。位元流具有以下組合不能存在的限制條件:(a)指示在切片標頭而不是在圖片標頭中信令工具資訊的語法元素,以及(b)指示在切片標頭中信令圖片標頭的語法元素。
根據本發明的另一態樣,提供一種從位元流解碼視訊資料的方法,該位元流包括與一個或多個切片相對應的視訊資料,其中該位元流包括:圖片標頭,包括當解碼一個或多個切片時要使用的語法元素,以及切片標頭,包括在解碼切片時要使用的語法元素,其中將在切片標頭中信令圖片標頭,且其中資訊的解析本來可以在切片標頭和圖片標頭中信令,僅在切片標頭或圖片標頭之一中受限制; 且解碼包括在語法元素(xxx_info_in_ph_flag )指示圖片標頭中不存在工具資訊的情況下(例如,當xxx_info_in_ph_flag=0時),切片標頭中未信令圖片標頭(例如,強制picture_header_in_slice_header_flag為0)。
在本發明第一進一步的態樣,提供一種從位元流解碼視訊資料的方法,位元流包括對應於一個或多個切片的視訊資料,其中位元流包括:圖片標頭,包括當解碼一個或多個切片時要使用的語法元素,以及切片標頭,包括在解碼切片時要使用的語法元素,且解碼包括:在要在切片標頭中信令圖片標頭的情況下,允許解析資訊,其可能以其他方式僅在切片標頭或圖片標頭之一中在切片標頭和圖片標頭信令;及使用所述語法元素解碼該位元流。
當圖片標頭位於切片標頭中時,這意味著當前圖片僅存在一個切片。因此,因為參數相同,所以對於切片和圖片都傳輸或可傳輸的資訊不會增加編碼器或解碼器的彈性。換句話說,如果該資訊在圖片標頭中,則切片標頭中的對應資訊將是冗餘的。類似地,如果資訊在切片標頭中,則圖片標頭中的相應資訊將是冗餘的。通過僅允許資訊在圖片標頭或切片標頭中,在圖片標頭在切片標頭中的情況下,可以通過限制信令中的冗餘以簡化解碼器的實現。因此,可以簡化解析而不會損失任何編碼效率。
解碼還可以包括:解析第一語法元素,其指示是否要在切片標頭中信令圖片標頭;以及基於第一個語法元素僅在切片標頭或圖片標頭中的一個中允許可以在切片標頭和圖片標頭中信令的資訊的解析。第一語法元素可以是在切片標頭旗標的圖片標頭。
可選地,在第一語法元素指示在切片標頭中信令圖片標頭的情況下,不允許在切片標頭中的資訊的解析。第二語法元素可以被解析指示資訊是否是在圖片標頭,其中,位元流的一致性的要求是,在第一語法元素指示在切片標頭中信令圖片標頭的情況下,第二語法元素指示該資訊在圖片標頭中被信令。
可選地,在第一語法元素指示在切片標頭中信令圖片標頭的情況下,在圖片標頭中的資訊的信令是不允許的。該方法可以進一步包括:解析第二語法元素,指示資訊是否在圖片標頭中,其中位元流的一致性的要求是,在第一語法元素指示在切片標頭中信令圖片標頭的情況下,第二語法元素指示該資訊在圖片標頭中。第二語法元素可以是圖片參數設置旗標中的資訊,其中,當設置旗標時,該資訊在圖片標頭中,而在未設置時,該資訊在切片標頭中或不存在。
根據實施例,該資訊可以包括量化參數值資訊、參考圖片列表資訊、解區塊濾波器資訊、樣本自適應偏移(SAO)資訊、加權預測資訊和自適應環路濾波(ALF)資訊中的一個或多個。例如,所有量化參數值資訊、參考圖片列表資訊、解區塊濾波器資訊、樣本自適應偏移(SAO)資訊、加權預測資訊和自適應環路濾波(ALF)資訊。
可選地,該資訊包括可以在圖片標頭和切片標頭中信令的所有資訊。
參考圖片列表資訊可以包含下面語法元素的一個或多個:slice_collocated_from_l0 flagslice_collocated_ref_idxph_collocated_from_l0_flagph_collocated_ref_idx
在將要在切片標頭中信令圖片標頭的情況下,可以解析用於加權預測的權重的數量可受到限制。
根據本發明的第二進一步態樣,提供一種將視訊資料編碼至位元流的方法,所述視訊資料對應於一個或多個切片,其中,該位元流包括:圖片標頭,其包括在解碼一個或多個切片時使用的語法元素;以及切片標頭,其包括在解碼切片時使用的語法元素,且所述編碼包括在要在切片標頭中信令圖片標頭的情況下,允許在切片標頭或圖片標頭中的僅一個中對可能在切片標頭和圖片標頭中信令的資訊進行編碼,以及使用所述語法元素編碼所述視訊資料。
當圖片標頭位於切片標頭中時,這意味著當前圖片僅存在一個切片。因此,使資訊針對切片和圖片兩者進行傳輸或為可傳輸的不會增加編碼器或解碼器的彈性,因為參數將是相同的。換句話說,如果該資訊在圖片標頭中,則切片標頭中的對應資訊將是冗餘的。類似地,如果資訊在切片標頭中,則圖片標頭中的相應資訊將是冗餘的。通過僅允許資訊在圖片標頭或切片標頭中,在圖片標頭在切片標頭中的情況下,可以通過限制信令中的冗餘來簡化解碼器的實現。因此,可以簡化編碼而不會降低任何編碼效率且降低信令成本(因為相關資訊僅在位元流中包含一次)。
編碼進一步可以包括:編碼第一語法元素,該第一語法元素指示是否要在切片標頭中信令圖片標頭,且允許基於第一個語法元素在切片標頭和圖片標頭中的僅一個可信令資訊的編碼。
第一語法元素可以是在切片標頭旗標中的圖片標頭。
在第一語法元素指示在切片標頭中信令圖片標頭的情況下,可能不允許在切片標頭中編碼資訊。
可以對第二語法元素進行編碼,以指示資訊是否在圖片標頭中,其中對位元流一致性的要求是,在第一語法元素指示在切片標頭中信令圖片標頭的情況下,第二語法元素指示該資訊在圖片標頭中。
可選地,在第一語法元素指示在切片標頭中信令圖片標頭的情況下,不允許在圖片標頭中信令資訊。
可以對第二語法元素進行編碼,以指示資訊是否在圖片標頭中,其中對位元流一致性的要求是,在第一語法元素指示在切片標頭中信令圖片標頭的情況下,第二語法元素指示該資訊在圖片標頭中。
第二語法元素可以是在圖片參數集旗標中的資訊或圖片標頭旗標中的資訊,其中,當設置該旗標時,該資訊在圖片標頭中信令,而當未設置時,該資訊在切片標頭中信令或不存在。
該資訊可以包括量化參數值資訊、參考圖片列表資訊、解區塊濾波器資訊、樣本自適應偏移(SAO)資訊、加權預測資訊和自適應環路濾波(ALF)資訊中的一個或多個。可選地,該資訊包括可以在圖片標頭和切片標頭中信令的所有資訊。例如,所有量化參數值資訊、參考圖片列表資訊、解區塊濾波器資訊、樣本自適應偏移(SAO)資訊、加權預測資訊和自適應環路濾波(ALF)資訊。
參考圖片列表資訊包括slice_collocated_from_l0flag、slice_collocated_ref_idx、ph_collocated_from_l0_flag及  a ph_collocated_ref_idx中的一個或多個。
可選地,在要在切片標頭中信令圖片標頭的情況下,可以限制用於加權預測的權重的數量。
根據本發明的第三進一步態樣,提供一種解碼位元流的方法,包含對應於一個或多個切片的視訊資料,其中所述位元流包括:圖片標頭,其包括在解碼一個或多個切片時使用的語法元素;以及切片標頭,其包括在解碼切片時使用的語法元素,且所述方法包括在切片標頭中解析指示在切片標頭中是否信令圖片標頭的語法元素,其中與ALF APS ID相關的語法元素在指示在切片標頭中是否信令圖片標頭的語法元素之前解析。ALF APS ID相關的資訊可以被在切片標頭附近或開始進行解析。
根據本發明的第四進一步態樣,提供一種編碼視訊資料的方法,包含一個或多個切片成位元流,其中,該位元流包括:圖片標頭,其包括在解碼一個或多個切片時使用的語法元素;以及切片標頭,其包括在解碼切片時使用的語法元素,且所述方法包括在切片標頭中解析指示在切片標頭中是否信令圖片標頭的語法元素,其中與ALF APS ID相關的語法元素在指示在切片標頭中是否信令圖片標頭的語法元素之前編碼。ALF APS ID相關的資訊可以被在切片標頭附近或開始進行編碼。
根據本發明的第五進一步態樣,提供一種從位元流解碼視訊資料的方法,位元流包括對應於一個或多個切片的視訊資料,其中,該位元流包括:圖片標頭,其包括在解碼一個或多個切片時使用的語法元素;以及切片標頭,其包括在解碼切片時使用的語法元素,且解碼包括:在要在切片標頭中信令圖片標頭的情況下,限制為加權預測模式以信令的權重數量;及使用所述語法元素,解碼所述位元流。在要在切片標頭中信令圖片標頭的情況下,可以僅在切片標頭或圖片標頭之一中允許解析可能在切片標頭和圖片標頭中信令的資訊。
根據本發明的第六進一步態樣,提供一種從位元流視訊資料進行編碼的方法,位元流包括對應於一個或多個切片的視訊資料,其中,該位元流包括:圖片標頭,其包括在解碼一個或多個切片時使用的語法元素;以及切片標頭,其包括在解碼切片時使用的語法元素,且編碼包括:在要在切片標頭中信令圖片標頭的情況下,限制為加權預測模式以編碼的權重數量;及使用所述語法元素,解碼所述位元流。在要在切片標頭中信令圖片標頭的情況下,可以僅在切片標頭或圖片標頭之一中允許編碼可能在切片標頭和圖片標頭中信令的資訊。
根據本發明的第七進一步態樣,提供一種用於從位元流解碼視訊資料的解碼器,該解碼器被配置為執行第一、第三或第五進一步態樣的任一者的方法。
根據本發明的第八進一步態樣,提供一種用於將視訊資料編碼到位元流中的編碼器,所述編碼器被配置為執行第二、第四或第六進一步態樣的任一者的方法。
根據本發明的第九進一步態樣,提供了一種電腦程式,該電腦程式在執行時執行第一至第六進一步態樣中的任一者的方法。程式可以單獨提供,也可以藉由承載媒體承載、在承載媒體中或上承載。承載媒體可以是非暫態的,例如儲存媒體,特別是電腦可讀儲存媒體。承載媒體也可以是暫態的,例如信號或其他傳輸媒體。該信號可以經由包括網際網路的任何合適的網路來發送。本發明的其他特徵由獨立申請專利範圍和附屬申請專利範圍表徵。
根據本發明的第一再進一步態樣,提供一個從位元流解碼視訊資料的方法,位元流包括對應於一個或多個切片的視訊資料,其中,該位元流包括:圖片標頭,其包括在解碼一個或多個切片時使用的語法元素;以及切片標頭,其包括在解碼切片時使用的語法元素;以及位元流受到限制,使得當位元流包括第一語法元素,而其具有指示在圖片標頭信令可以在圖片標頭或切片標頭中信令資訊的值時,位元流還包括:第二語法元素,具有指示圖片標頭不在切片標頭中的值時,該方法包括:使用所述語法元素解碼所述位元流。為了符合視訊編碼標準一致,可以限制位元流。在一個實施例中,所述視訊編碼標準是通用視訊編碼標準。第二語法元素在切片標頭語法元素中可以是圖片標頭。第一語法元素可以是在量化參數值資訊、參考圖片列表資訊、解區塊濾波器資訊、樣本自適應偏移(SAO)資訊、加權預測資訊和自適應環路濾波(ALF)資訊中的一個或多個的圖片標頭中指示信令的旗標。位元流限制條件可以被系統地應用。例如,在實施例中,該限制條件被應用於位元流中的任何或所有序列、圖片和切片。
本發明的一個態樣中的任何特徵可以以任何適當的組合應用於本發明的其他態樣。特別地,方法態樣可以應用於裝置態樣,反之亦然。
此外,以硬體實現的特徵可以以軟體實現,反之亦然。本文對軟體和硬體功能的任何引用均應據此解釋。
如本文所述的任何裝置特徵也可以被提供為方法特徵,反之亦然。如本文中所使用的,手段功能用語特徵可以可替換地根據其相應結構來表達,例如適當程式化的處理器和相關聯的記憶體。
還應當理解,可以獨立地實現及/或提供及/或使用在本發明的任何態樣中描述和定義的各種特徵的特定組合。
圖1關於在高效率視訊編碼(High Efficiency Video Coding, HEVC)視訊標準中使用的編碼結構。視訊序列1由一系列的數位影像i組成。每個這樣的數位影像由一個或多個矩陣表示。矩陣係數代表像素。
序列的影像2可以被劃分為切片3。在某些情況下,切片可以構成整個影像。這些切片被劃分為非重疊的編碼樹單元(Coding Tree Unit, CTU)。編碼樹單元(CTU)是高效率視訊編碼(HEVC)視訊標準的基本處理單元,從概念上講,其結構對應於幾個先前的視訊標準中使用的巨集區塊(macroblock)單元。CTU有時也稱為最大編碼單元(Largest Coding Unit, LCU)。CTU具有亮度和色度組成部分,每個組成部分都稱為編碼樹區塊(Coding Tree Block, CTB)。這些不同的顏色組成未在圖1中顯示。
CTU的大小通常為64像素x 64像素。然後,可以使用四元樹分解將每個CTU迭代地劃分為較小的可變大小編碼單元(CU)5。
編碼單元是基本編碼元素,且由稱為預測單元(Prediction Unit, PU)和變換單元(Transform Unit, TU)的兩種子單元構成。PU或TU的最大大小等於CU大小。預測單元對應於用於像素值的預測的CU的分區。如6所示,可以將CU的各種不同分區劃分為PU,包括劃分為4個正方形PU的分區和將兩個不同的劃分為2個矩形PU的分區。變換單元是使用DCT進行空間變換的基本單元。可以基於四元樹7表示將CU劃分成TU。
每個切片都嵌入一個網路提取層(Network Abstraction Layer, NAL)單元中。此外,視訊序列的編碼參數儲存在稱為參數集的專用NAL單元中。在HEVC和H.264/AVC中,使用兩種參數集NAL單元:首先,一個序列參數集(SPS)NAL單元收集在整個視訊序列中未改變的所有參數。通常,其處理編碼設定檔、視訊幀的大小和其他參數。其次,圖片參數集(Picture Parameter Set , PPS)NAL單元包括可以從一個影像(或幀)更改為序列中的另一圖片(或幀)的參數。HEVC還包括視訊參數集(Video Parameter Set, VPS)NAL單元,其包含描述位元流的整體結構的參數。VPS是HEVC中定義的一種新型參數集,適用於位元流的所有層。一層可以包含多個時間子層,且所有版本1位元流都限於單個層。HEVC具有用於擴展性和多視圖的某些分層擴展,這些擴展將支持多層,並具有向後兼容的版本1基本層。
圖2示出其中可以實現本發明的一個或多個實施例的資料通信系統。該資料通信系統包括傳輸裝置,在這種情況下是伺服器201,其可操作以經由資料通信網路200將資料串流的資料封包傳輸到接收裝置,在這種情況下是客戶終端202。資料通信網路200可以是廣域網路(WAN)或區域網路(LAN)。這樣的網路可以是例如無線網路(Wifi/802.11a或b或g)、乙太網路、網際網路或由幾個不同網路組成的混合網路。在本發明的特定實施例中,資料通信系統可以是數位電視廣播系統,其中伺服器201將相同的資料內容發送到多個客戶端。
伺服器201提供的資料串流204可以由表示視訊和音訊資料的多媒體資料組成。在本發明的一些實施例中,音訊和視訊資料串流可以分別由伺服器201使用麥克風和照相機擷取。在一些實施例中,資料串流可以儲存在伺服器201上或由伺服器201從另一資料提供者接收,或在伺服器201上產生。伺服器201設置有用於對視訊和音訊流進行編碼的編碼器,特別是提供用於傳輸的壓縮位元流,該壓縮位元流是作為向編碼器的輸入呈現的資料的更緊湊的表示。
為獲得傳輸資料的品質與傳輸資料的數量的更好的比率,視訊資料的壓縮可以例如根據HEVC格式或H.264/AVC格式。
客戶端202接收所發送的位元流,且對重構的位元流進行解碼,以再現顯示裝置上的視訊影像和通過喇叭再現音訊資料。
儘管在圖2的示例中考慮串流傳輸場景,但是應當理解,在本發明的一些實施例中,可以使用例如諸如光碟的媒體儲存裝置來執行編碼器和解碼器之間的資料通信。
在本發明的一個或多個實施例中,視訊影像與代表補償偏移的資料一起被發送,以應用於影像的重構像素,以在最終影像中提供濾波(filter)後的像素。
圖3示意性地示出被配置為實現本發明的至少一個實施例的處理裝置300。處理裝置300可以是諸如微型電腦、工作站或輕便便攜式裝置之類的裝置。裝置300包括通信匯流排313連接到: -中央處理單元311,例如微處理器,表示為CPU; -表示為ROM的唯讀記憶體306,用於儲存用於實現本發明的電腦程式; -表示為RAM的隨機存取記憶體312,根據本發明實施例,用於儲存本發明實施例的方法的可執行碼,以及適於記錄對實施數位影像序列進行編碼的方法及/或解碼位元流的方法所必需的變量和參數的暫存器;及 -連接到通信網路303的通信介面302,通過該通信網路發送或接收要處理的數位資料
可選地,設備300還可以包括以下組件: -資料儲存裝置304,例如硬碟,用於儲存用於實施本發明一個或多個實施例的方法的電腦程式以及在實施本發明一個或多個實施例期間使用或產生的資料; -用於磁碟306的磁碟驅動器305,該磁碟驅動器適於從磁碟306讀取資料或將資料寫入所述磁碟; -螢幕309,用於借助於鍵盤310或任何其他指示裝置來顯示資料及/或用作與使用者的圖形介面。
裝置300可以連接到各種外圍裝置,例如數位照相機320或麥克風308,每個外圍裝置都連接到輸入/輸出卡(未示出),以便向裝置300提供多媒體資料。
通信匯流排在設備300中包括的或與其連接的各種元件之間提供通信和互操作性。匯流排的表示形式不是限制性的,且特別地,中央處理單元可操作以將指令直接傳送到裝置300的任何元件或借助於裝置300的另一個元件來傳送指令。
可以用任何資訊媒體來代替磁碟306,例如,光碟(CD-ROM)(可重寫或不可重寫)、ZIP磁碟或記憶體卡,以及一般而言,通過一種資訊儲存裝置,該資訊儲存裝置可以由微型電腦或微處理器讀取,可以整合到設備中,也可以不整合到設備中,且是可移除的並適於儲存一個或多個程式,其根據本發明的實施執行使得對數位影像序列進行編碼的方法及/或解碼位元流的方法成為可能。
可執行碼可以儲存在唯讀記憶體306中、硬碟304上或可移除數位媒體(例如,如前所述的磁碟306)上。根據一種變體,可以通過介面302通過通信網路303來接收程式的可執行碼,以便在執行之前將其儲存在裝置300的儲存裝置之一中,例如硬碟304。
中央處理單元311適於控制和引導根據本發明的一個或多個程式的指令或軟體代碼的一部分的指令的執行,這些指令被儲存在上述儲存裝置之一中。通電時,儲存在非揮發性記憶體(例如硬碟304或唯讀記憶體306)中的一個或多個程式將轉移到隨機存取記憶體312中,然後該隨機存取記憶體312包含一個或多個程式的可執行碼以及用於儲存實現本發明所必需的變量和參數的暫存器。
在該實施例中,該裝置是使用軟體來實現本發明的可程式裝置。然而,可替代地,本發明可以以硬體(例如,以特殊應用積體電路或ASIC的形式)實現。
圖4示出根據本發明的至少一個實施例的編碼器的方塊圖。編碼器由連接的模組表示,每個模組適於例如以將由裝置300的CPU 311執行的編程指令的形式來實現一種方法的至少一個對應步驟,該方法實現對根據本發明的一個或多個實施例的影像序列的影像進行編碼的至少一個實施例。
編碼器400接收數位影像的原始序列i 0至i n 401作為輸入。每個數位影像由一組稱為像素的樣本組表示。
在執行編碼過程之後,編碼器400輸出位元流410。位元流410包括多個編碼單元或切片,每個切片包括切片標頭,該切片標頭用於發送用於對切片和包括編碼視訊資料的切片主體進行編碼的編碼參數的編碼值。
輸入數位影像i 0至i n 401被模組402劃分為像素區塊。這些區塊對應於影像部分,且可以具有可變大小(例如4x4、8x8、16x16、32x32、64x64、128x128像素和幾個矩形區塊大小也可以考慮)。為每個輸入區塊選擇一種編碼模式。提供兩種編碼模式系列:基於空間預測編碼(幀內預測(Intra prediction))的編碼模式和基於時間預測(幀間編碼(Inter coding),合併,跳過)的編碼模式。測試可能的編碼模式。
模組403實施幀內預測過程,其中,要編碼的給定區塊是由根據要編碼的所述區塊的鄰域的像素計算出的預測子(predictor)進行預測的。如果選擇幀內編碼,則對所選幀內預測子的指示以及給定區塊與其預測子之間的差異進行編碼,以提供殘差(residual)。
時間預測由運動估計模組404和運動補償模組405實現。首先,從一組參考影像416中選擇參考影像,且參考影像的一部分,也稱為參考區域或影像部分,即運動估計模組404選擇與要編碼的給定區塊最接近的區域。運動補償模組405然後使用所選區域來預測要編碼的區塊。由運動補償模組405計算所選擇的參考區域與給定區塊(也稱為殘差區塊)之間的差。所選擇的參考區域由運動向量指示。
因此,在兩種情況下(空間和時間預測),都通過從原始區塊中減去預測來計算殘差。
在模組403實施幀內預測中,對預測方向進行編碼。在時間預測中,至少一個運動向量被編碼。在由模組404、405、416、418、417實現的幀間預測中,至少一個運動向量或用於識別這種運動向量的資料被編碼用於時間預測。
如果選擇幀間預測,則相對於運動向量和殘差區塊的資訊被編碼。為進一步降低位元率,假設運動是同質的,則通過相對於運動向量預測子的差異來對運動向量進行編碼。透過運動向量預測和編碼模組417從運動向量字段418獲得一組運動資訊預測子的運動向量預測子。
編碼器400還包括選擇模組406,用於通過應用諸如比率失真標準的編碼成本標準來選擇編碼模式。為進一步減少冗餘,變換模組407將變換(例如DCT)應用於殘差區塊,然後由量化模組408對獲得的變換資料進行量化,並由熵編碼模組409對熵進行編碼。最後,編碼的當前區塊的編碼殘差區塊被插入到位元流410中。
編碼器400還執行編碼影像的解碼,以便產生用於後續影像的運動估計的參考影像。這使得接收位元流的編碼器和解碼器能夠具有相同的參考幀。逆量化模組411執行量化資料的逆量化,然後由逆變換模組412進行逆變換。逆幀內預測模組413使用預測資訊來確定對於給定區塊使用哪個預測子,以及逆運動補償模組414實際上將模組412獲得的殘差添加到從參考影像組416獲得的參考區域中。
然後由模組415應用後濾波以對重構的像素幀進行濾波。在本發明的實施例中,使用SAO環路濾波器(loop filter),其中將補償偏移添加到重構影像的重構像素的像素值。
圖5示出根據本發明實施例的可用於從編碼器接收資料的解碼器60的方塊圖。解碼器由連接的模組表示,每個模組適於以例如由裝置300的CPU 311執行的編程指令的形式來實現由解碼器60實現的方法的相應步驟。
解碼器60接收包括編碼單元的位元流61,每個位元流由包含關於編碼參數的資訊的標頭和包含編碼的視訊資料的主體組成。下面參考圖6更詳細地描述VVC中的位元流的結構。如關於圖4所解釋的,對編碼的視訊資料進行熵編碼,且對於給定區塊,在預定數目的位元上對運動向量預測子的索引進行編碼。接收到的編碼視訊資料由模組62熵解碼。然後,殘差資料由模組63解量化,然後由模組64應用逆變換以獲得像素值。
指示編碼模式的模式資料也被熵解碼,且基於該模式,對影像資料的編碼區塊執行INTRA類型解碼或INTER類型解碼。
在INTRA模式的情況下,幀內逆預測模組65基於在位元流中指定的幀內預測模式來確定INTRA預測子。
如果模式是INTER,則從位元流中提取運動預測資訊,以便找到編碼器使用的參考區域。運動預測資訊由參考幀索引和運動向量殘差組成。運動向量預測子被添加到運動向量殘差以便由運動向量解碼模組70獲得運動向量。
運動向量解碼模組70對通過運動預測編碼的每個當前區塊應用運動向量解碼。對於當前區塊,一旦獲得運動向量預測子的索引,就可以對與當前區塊相關聯的運動向量的實際值進行解碼,並由模組66用於施加逆運動補償。從參考影像68提取由解碼的運動向量指示的參考影像部分,以應用逆運動補償66。利用解碼後的運動向量來更新運動向量場資料71,以便將其用於隨後的解碼後的運動向量的逆預測。
最終,獲得解碼區塊。後濾波由後濾波模組67進行。解碼器60最終提供解碼的視訊信號69。
圖6示出如在JVET-Q2001-vD中描述的示例性編碼系統VVC中的位元流的組織。
根據VVC編碼系統的位元流61由語法元素和編碼資料的有序序列組成。語法元素和編碼的資料被放置到網路提取層(NAL)單元601-608。有不同的NAL單位類型。網路提取層提供將位元流封裝到不同協議中的能力,例如RTP/IP,代表實時協議/網際網路協議(Real Time Protocol/Internet Protocol),ISO基本媒體文件格式(ISO Base Media File Format)等。網路提取層還提供封包遺失(packet loss)彈性的架構(framework)。
NAL單元分為視訊編碼層(VCL)NAL單元和非VCL NAL單元。VCL NAL單元包含實際編碼的視訊資料。非VCL NAL單元包含其他資訊。該附加資訊可以是解碼編碼視訊資料或補充資料所需的參數,其可以增強解碼視訊資料的可用性。NAL單元606對應於切片,且構成位元流的VCL NAL單元。
不同的NAL單元601 - 605對應於不同的參數集,這些NAL單元是非VCL NAL單元。所述解碼器參數集(Decoder Parameter Set, DPS )NAL單元301包含對於給定的解碼處理是常數的參數。視訊參數集(Video Parameter Set, VPS )NAL單元602包含為整個視訊定義的參數,且因此包含為整個位元流定義的參數。DPS NAL單元可以定義比VPS中的參數更靜態的參數。換句話說,DPS的參數更改的頻率低於VPS的參數。
在序列參數集(Sequence Parameter Set, SPS )NAL單元603包含用於視訊序列定義的參數。特別地,SPS NAL單元可以定義子圖片佈局和視訊序列的相關參數。與每個子圖片相關聯的參數指定應用於子圖片的編碼限制條件。特別地,其包括指示子圖片之間的時間預測限於來自相同子圖片的資料的旗標。另一個旗標可以啟用或禁用跨子圖片邊界的環路濾波器。
在圖片參數集(Picture Parameter Set, PPS)NAL單元604,PPS包含圖片或圖片組的定義的參數。該適應參數集(Adaptation Parameter Set, APS )NAL單元605,包含用於環路濾波器的參數,這些參數通常是(Adaptive Loop Filter, ALF)或整形器模型(或色度縮放亮度映射參數(luma mapping with chroma scaling, LMCS)模型),或者是在切片級中使用的縮放矩陣。
在VVC的當前版本中提出的PPS語法包括語法元素,這些語法元素指定亮度樣本中圖片的大小以及每個圖片在圖塊和切片中的劃分。
PPS包含語法元素,這些語法元素使確定切片在幀中的位置成為可能。由於子圖片在幀中形成矩形區域,因此可以從參數集NAL單元確定切片集、圖塊的部分或屬於子圖片的圖塊的部分。與APS一樣,PPS具有ID機制,以限制相同PPS傳輸的量。
PPS和圖片標頭之間的主要區別在於其傳輸,與為每個圖片系統地傳輸的PH相比,PPS通常針對一組圖片傳輸。因此,與PH相比,PPS包含對於幾個圖片可以恆定的參數。
位元流也可含有補充增強資訊(Supplemental Enhancement Information, SEI)NAL單元(圖6未示出)。這些參數集在位元流中的出現週期是可變的。為整個位元流定義的VPS只能在位元流中出現一次。相反,針對切片定義的APS可能針對每個圖片中的每個切片發生一次。實際上,不同的切片可能依賴於相同的APS,因此通常每個圖片中的APS比切片少。特別地,APS是在圖片標頭中定義的。但是,可以在切片標頭中完善ALF APS。
該存取單元定界符(Access Unit Delimiter, AUD )NAL單元607分隔兩個存取單元。存取單元是一組NAL單元,其可以包括具有相同解碼時間戳的一個或多個編碼圖片。在當前VVC規範中,此可選NAL單元僅包含一個語法元素:pic_type ,此語法元素。指示AU中已編碼圖片的所有切片的slice_type值。如果pic_type設置為等於0,則AU僅包含幀內切片。如果等於1,則包含P和I切片。如果等於2,則包含B、P或幀內切片。
該NAL單元僅包含pic類型的一個語法元素。 1 語法 AUD
在JVET-Q2001-vD中,pic_type的定義如下: “pic_type 表示針對給定pic_type 值,在包含AU分隔符NAL單元的AU中編碼圖片的所有切片的slice_type 值是表2中列出的集合的成員。在符合本規範版本的位元流中,pic_type 的值應等於0、1或2。pic_type 的其他值保留給ITU T | ISO / IEC供未來使用。符合本規範此版本的解碼器應忽略pic_type 的保留值。”
rbsp_trailing_bits( )是添加位元以便與位元組(byte)的末尾對齊的函數。因此,此函數之後,解析的位元流數量是位元組的整數。 2 pic_type 的解釋
PH NAL單元608是圖片標頭NAL單元,其對一個編碼圖片的一組切片所共有的參數進行分組。圖片可以參考一個或多個APS來指示圖片切片使用的AFL參數、整形模型和縮放矩陣。
每個VCL NAL單元606包含切片。切片可對應於整個圖片或子圖片,單個圖塊或多個圖塊或圖塊的一部分。例如,圖3的切片包含幾個圖塊620。切片由切片標頭610和原始位元組序列有效負載RBSP 611組成,其中RBSP 611包含編碼為編碼區塊640的編碼像素資料。
在VVC的當前版本中提出的PPS語法包括語法元素,這些語法元素指定亮度樣本中圖片的大小以及每個圖片在圖塊和切片中的劃分。
PPS包含語法元素,這些語法元素使確定切片在幀中的位置成為可能。由於子圖片在幀中形成矩形區域,因此可以從參數集NAL單元確定切片集、圖塊的一部分或屬於子圖片的圖塊的部分。NAL 單位切片
NAL單元切片層包含切片標頭和切片資料,如表3所示。 3 切片層語法 APS
在表4中定義的適配參數集(APS )NAL單元605示出語法元素。
如表4所示,aps_params_type語法元素提供3種可能的APS類型: • ALF_AP:用於ALF參數 • LMCS_APS用於LMCS參數 • SCALING_APS用於縮放列表的相關參數 4 適應參數集語法
下面依次討論這三種類型的APS參數。ALF APS
在自適應環路濾波器資料語法元素(表5)中描述ALF參數。首先,四個旗標專用於指定ALF濾波器是否為亮度及/或色度傳輸,以及是否為Cb分量和Cr分量啟用CC-ALF(跨分量自適應環路濾波(Cross Component Adaptive Loop Filtering))。如果啟用亮度濾波器旗標,則對另一個旗標進行解碼,以了解是否發送限幅值(clip value)(alf_luma_clip_flag )。然後,使用alf_luma_num_filters_signalled_minus1語法元素對信令的濾波器數量進行解碼。如果需要,則針對每個啟用的濾波器對表示ALF係數差量(delta) "alf_luma_coeff_delta_idx "的語法元素進行解碼。然後,解碼每個濾波器的每個係數的絕對值和符號。
如果啟用alf_luma_clip_flag ,則將解碼每個啟用的濾波器的每個係數的限幅索引。
以相同的方式,如果需要,對ALF色度係數進行解碼。
如果為Cr或Cb啟用CC-ALF,則對濾波器的數量進行解碼(alf_cc_cb_filters_signalled_minus1alf_cc_cr_filters_signalled_minus1 ),並對相關係數進行解碼(alf_cc_cb_mapped_coeff_absalf_cc_cb_coeff_sign 或分別對alf_cc_cr_mapped_coeff_absalf_cc_cr_coeff_sign )。 5 自適應環路濾波器資料語法 用於亮度映射和色度縮放的 LMCS 語法元素
下表6列出當aps_params_type參數設置為1(LMCS_APS)時在適應參數集(APS)語法結構中編碼的所有LMCS語法元素。截至4 LMCS APS的可以在編碼的視訊序列中使用,然而,只有一個LMCS APS可用於給定的圖片。
這些參數用於構建亮度的正向和逆映射函數以及色度的縮放函數。 6 具有色度縮放資料語法的亮度映射 縮放列表 APS
縮放列表提供更新用於量化的量化矩陣的可能性。在VVC中,如縮放列表資料語法元素(表7縮放列表資料語法)中所述,此縮放矩陣在APS中信令。第一個語法元素基於旗標scaling_matrix_for_lfnst_disabled_flag 指定縮放矩陣是否用於LFNST(低頻不可分離變換)工具。如果縮放列表用於色度組件,則指定第二個(scaling_list_chroma_present_flag )。然後,解碼構建縮放矩陣所需的語法元素(scaling_list_copy_mode_flag, scaling_list_pred_mode_flag, scaling_list_pred_id_delta, scaling_list_dc_coef, scaling_list_delta_coef )。 7 縮放列表資料語法 圖片標頭
在每個切片的開始時,在其他切片資料之前,發送圖片標頭。與該標準以前的草案中的以前的標頭相比,這是非常大的。所有這些參數的完整描述可以在JVET-Q2001-vD中找到。表9顯示當前圖片標頭解碼語法中的這些參數。
可以解碼的相關語法元素相關於: • 該圖片的用途,是否參考幀 • 圖片類型 • 輸出幀 • 圖片編號 • 使用子圖片(如果需要) • 參考圖片列表(如果需要) • 彩色平面(如果需要) • 分區更新(如果啟用覆蓋旗標) • 差量QP參數(如果需要) • 運動資訊參數(如果需要) • ALF參數(如果需要) • SAO參數(如果需要) • 定量參數(如果需要) • LMCS參數(如果需要) • 縮放列表參數(如果需要) • 圖片標頭擴展(如果需要) • 等等…圖片 類型
第一旗標是gdr_or_irap_pic_flag ,其指示當前圖片是否是重新同步圖片(IRAP或GDR)。如果此旗標為是(true),則對gdr_pic_flag 進行解碼以了解當前圖片是IRAP或GDR圖片。
然後ph_inter_slice_allowed_flag 進行解碼,以識別幀間切片被允許。
當其是允許的,解碼旗標ph_intra_slice_allowed_flag 以知道對當前圖片,幀內切片是否允許。
然後,對non_reference_picture_flag ,指示PPS ID的ph_pic_parameter_set_id 和圖片順序計數ph_pic_order_cnt_lsb 進行解碼。圖片順序計數給出當前圖片的編號。
如果該圖片是GDR或IRAP圖片,則對旗標no_output_of_prior_pics_flag 進行解碼。
如果圖片是GDR,則對recovery_poc_cnt 進行解碼。然後,根據需要解碼ph_poc_msb_present_flagpoc_msb_valALF
在這些參數描述當前圖片上的重要資訊之後,如果在SPS級別啟用ALF且在圖片標頭級別啟用ALF,則對ALF APS id語法元素集進行解碼。由於使用sps_alf_enabled_flag 旗標,因此可以在SPS級別啟用ALF 。由於alf_info_in_ph_flag 等於1,否則在圖片標頭級別啟用ALF信令,否則(alf_info_in_ph_flag 等於0)在切片級別發送ALF信號。
alf_info_in_ph_flag 定義如下: “alf_info_in_ph_flag 等於1表示ALF資訊存在於PH語法結構中,而不存在於引用不包含PH語法結構的PPS的切片標頭中。alf_info_in_ph_flag 等於0表示在PH語法結構中不存在ALF資訊,且可以在引用不包含PH語法結構的PPS的切片標頭中顯示ALF資訊。”
首先,對ph_alf_enabled_present_flag 進行解碼,以確定是否應該對ph_alf_enabled_flag 進行解碼。如果啟用ph_alf_enabled_flag ,則為當前圖片的所有切片啟用ALF。
如果啟用ALF,則使用pic_num_alf_aps_ids_luma 語法元素對亮度解碼ALF APS id的量。對於每個APS id,用於亮度的APS id值被解碼為“ph_alf_aps_id_luma ”。
對於色度,對語法元素ph_alf_chroma_idc 進行解碼,以確定是否針對色度,僅針對Cr或僅針對Cb啟用ALF。如果啟用,則使用ph_alf_aps_id_chroma 語法元素對色度的APS ID值進行解碼。
如果需要Cb和/或CR組件,則以CC-ALF方法的APS ID進行解碼的方式。LMCS
如果在SPS級別啟用LMCS,則對LMCS APS ID語法元素集進行解碼。首先,ph_lmcs_enabled_flag 進行解碼,以確定對於當前圖片是否啟用LMCS。如果啟用LMCS,則將ID值解碼為ph_lmcs_aps_id 。對於色度,僅對ph_chroma_residual_scale_flag 進行解碼以啟用或禁用色度的方法。縮放表
如果在SPS級別啟用縮放列表,則對縮放列表APS ID組進行解碼。對ph_scaling_list_present_flag 進行解碼,以確定縮放矩陣是否被用於當前圖片啟用。然後,對APS ID的值,ph_scaling_list_aps_id 進行解碼。子圖片
子圖片參數在SPS上啟用且子圖片id信令已禁用時啟用。其還包含有關虛擬邊界的一些資訊。對於子圖片參數,定義八個語法元素: 輸出旗標
這些子圖片參數隨後是pic_output_flag (如果存在)。參考圖片列表
如果參考圖片列表在圖片標頭中信令(由於rpl_info_in_ph_flag等於1),則參考圖片列表的參數將被解碼ref_pic_lists() ,其中包含以下語法元素: 分區
如果需要,將對分區參數集進行解碼,並包含以下語法元素: 加權預測
如果在PPS級別啟用加權預測方法,且在圖片標頭中信令加權預測參數(wp_info_in_ph_flag 等於1),則對加權預測參數pred_weight_table() 進行解碼。
當啟用雙向預測(bi-prediction)加權預測時,pred_weight_table() 包含列表L0和列表L1的加權預測參數。當在圖片標頭中發送加權預測參數時,如pred_weight_table() 語法表表8中所示,顯式發送每個列表的權重數。 8 加權預測參數語法 差量 QP
當圖片為Intra時,如果需要,可以對ph_cu_qp_delta_subdiv_intra_sliceph_cu_chroma_qp_offset_subdiv_intra_slice 進行解碼。而如果允許幀間切片,如果需要,可以對ph_cu_qp_delta_subdiv_inter_sliceph_cu_chroma_qp_offset_subdiv_inter_slice 進行解碼。最後,如果需要,對圖片標頭擴展語法元素進行解碼。
在PPS中信令所有參數alf_info_in_ph_flag rpl_info_in_ph_flag qp_delta_info_in_ph_flag sao_info_in_ph_flag dbf_info_in_ph_flag wp_info_in_ph_flag 9 圖片標頭結構 切片標頭
切片標頭在每個切片的開始傳輸。切片標頭包含大約65個語法元素。與早期的視訊編碼標準中的先前切片標頭相比,這是非常大的。所有切片標頭參數的完整描述可以在JVET-Q2001-vD中找到。表10以當前的切片標頭解碼語法顯示這些參數。 10 部分切片標頭
首先,對picture_header_in_slice_header_fla g 進行解碼以知道picture_header_structure( )是否存在於切片標頭中。
然後,如果需要,將slice_subpic_id 解碼以確定當前切片的子圖片id。然後,對slice_address 進行解碼以確定當前切片的位址。如果當前圖片中的圖塊數大於1,則對num_tiles_in_slice_minus1 進行解碼。
然後,對slice_type 進行解碼。
如果ALF是在SPS級別(sps_alf_enabled_flag )啟用,且如果ALF在切片標頭中信令(alf_info_in_ph_flag 等於0),ALF資訊被解碼。這包括對當前切片指示啟用ALF的旗標(slice_alf_enabled_flag )。如果啟用,則對亮度的APS ALF ID數((slice_num_alf_aps_ids_luma )進行解碼,然後對APS ID進行解碼(slice_alf_aps_id_luma[i] )。然後,對slice_alf_chroma_idc 進行解碼,以了解是否為色度分量啟用ALF以及啟用哪個色度分量。然後,如果需要,將色度的APS ID解碼slice_alf_aps_id_chroma 。以相同的方式,如果需要,對slice_cc_alf_cb_enabled_flag 進行解碼,以了解是否啟用CC ALF方法。如果啟用CC ALF,則如果為CR及/或CB啟用CC ALF,則會解碼CR及/或CB的相關APS ID。
如果顏色平面獨立地發送 (separate_colour_plane_flag 等於到1)colour_plane_id 被解碼。
當參考圖片列表沒有在圖片標頭中發送(rpl_info_in_ph_flag 等於0),且當NAL單元不是IDR或者如果參考圖片列表針對IDR圖片傳送(sps_idr_rpl_present_flag 等於1),則參考圖片列表參數被解碼;這些與圖片標頭中的相似。
如果參考圖片列表是在圖片標頭中發送(rpl_info_in_ph_flag 等於1)或Nal單元不是IDR,或者參考圖片列表是針對IDR圖片發送(sps_idr_rpl_present_flag 等於1),且至少一個列表的參考數優於1,覆寫旗標num_ref_idx_active_override_flag 被解碼。
如果啟用此旗標,則將解碼每個列表的參考索引。
當切片類型非幀內時,如果需要,則將cabac_init_flag 解碼。如果在切片標頭中發送參考圖片列表,且出現其他情況,則會對slice_collocated_from_l0_flagslice_collocated_ref_idx 進行解碼。這些資料與CABAC編碼和運動向量並置有關。
以相同的方式,當切片類型不是幀內時,對加權預測pred_weight_table() 的參數進行解碼。
slice_qp_delta 被解碼,如果差量QP資訊在切片標頭傳送(qp_delta_info_in_ph_flag 等於0)。如果需要語法元素,則會對slice_cb_qp_offset slice_cr_qp_offset slice_joint_cbcr_qp_offset cu_chroma_qp_offset_enabled_flag 進行解碼。
如果在切片標頭中發送SAO資訊 (sao_info_in_ph_flag 等於0),且在SPS級別將其啟用(sps_sao_enabled_flag ),則將針對亮度和色度對SAO的啟用旗標進行解碼:slice_sao_luma_flagslice_sao_chroma_flag
然後,解區塊濾波器參數被解碼,如果其在切片標頭信令(dbf_info_in_ph_flag 於0)。
系統地對旗標slice_ts_residual_coding_disabled_flag 進行解碼,以了解是否為當前切片啟用轉換跳過(Transform Skip)殘差編碼方法。
如果在圖片標頭中啟用LMCS(ph_lmcs_enabled_flag 等於1),則對旗標slice_lmcs_enabled_flag 進行解碼。
以相同的方式,如果縮放列表在圖片標頭啟用(phpic_scaling_list_presentenabled_flag 等於1),將旗標slice_scaling_list_present_flag 解碼。
然後,如果需要,對其他參數進行解碼。切片標頭中的圖片標頭
以特定的信令方式,可以在切片標頭710內信令圖片標頭708,如圖7所示。在那種情況下,不存在僅包含圖片標頭608的Nal單元。單元701、702、703、704、705、706、707、720和740對應於圖6的601、602、603、604、605、606、606、620和640,因此可以從中了解前面的描述。由於旗標picture_header_in_slice_header_flag,可以在切片標頭中啟用。此外,當在切片標頭內信令圖片標頭時,圖片應僅包含一切片。因此,每張圖片始終只有一個圖片標頭。此外,對於CLVS(編碼層視訊序列(Coded Layer Video Sequence))的所有圖片,旗標picture_header_in_slice_header_flag應當具有相同的值。這意味著兩個IRAP之間的所有圖片(包括第一個IRAP)每個圖片只有一個切片。
該旗標picture_header_in_slice_header_flag被定義為如下: “等於1的picture_header_in_slice_header_flag 指定在切片標頭中存在PH 語法結構。等於0的picture_header_in_slice_header_flag 指定在切片標頭中不存在PH 語法結構。 位元流一致性的要求是,CLVS 中所有編碼切片中的picture_header_in_slice_header_flag 的值都應相同。 當對於編碼切片,picture_header_in_slice_header_flag 等於1時,對位元流一致性的要求是CLVS 中不得存在nal_unit_type 等於PH_NUTVCL NAL 單元。 當picture_header_in_slice_header_flag 等於0時,當前圖片中的所有編碼切片應具有picture_header_in_slice_header_flag 等於0,且當前PU 應具有PH NAL 單元。 所述picture_header_structure( ) 包含除填充位元rbsp_trailing_bits( ) 以外的picture_rbsp() 的語法元素。”切片標頭中的圖片標頭與圖片標頭和切片標頭中的工具信令之間的相互作用
QP差量資訊,參考圖片列表參數,解區塊濾波器參數,樣本自適應偏移參數,加權預測參數和ALF參數可以由於相應的旗標在圖片標頭或切片標頭中傳輸:
這些旗標是在PPS中傳輸。
如表11總結XXX信令根據旗標picture_header_in_slice_header_flagxxx_info_in_ph_flag ,透過為上述工具之一考慮“xxx”,當使用當前語法將xxx _info_in_ph_flag設置為等於0時,可以在切片標頭中發送xxx信號。換句話說,我們在隨後的描述中使用速記XXX或xxx來指代可能在圖片標頭和切片標頭中信令的資訊類型(上面給出示例)。 11 根據旗標 picture_header_in_slice_header_flag xxx_info_in_ph_flag XXX 信令摘要
當圖片標頭位於切片標頭中時,這意味著當前圖片僅存在一個切片。因此,因為切片和圖片的資訊都可以傳輸或可傳輸,當參數不變,不會增加編碼器或解碼器的彈性。換句話說,如果該資訊在圖片標頭中,則切片標頭中的對應資訊將是冗餘的(redundant)。類似地,如果資訊在切片標頭中,則圖片標頭中的相應資訊將是冗餘的。本文描述的實施例通過限制相同編碼的信令中的冗餘來簡化解碼器實現。特別地,在實施例中,當在切片標頭中信令圖片標頭時,資訊被允許在圖片標頭中而不在切片標頭中。串流應用程式
一些串流應用程式僅提取位元流的某些部分。這些提取可以是空間的(作為子圖片)或時間的(視訊序列的子部分)。然後,這些提取的部分可以與其他位元流合併。其他一些通過僅提取一些幀來降低幀速率。通常,這些串流應用程式的主要目的是使用最大允許頻寬為最終使用者產出最大品質。
在VVC,為降低幀速率,已限制APS ID編號,以使幀的新APS id號不能用於時間層次結構中較高階別的幀。然而,對於提取部分位元流的串流應用程式,需要跟踪APS ID以確定對於位元流的子部分應保留哪個APS,因為幀(作為IRAP)不會重置APS ID的編號。LMCS( 具有色度縮放的亮度映射 )
具有色度縮放的亮度映射(LMCS)技術是在將環路濾波器應用於視訊解碼器(如VVC)之前應用於區塊的樣本值轉換方法。
LMCS可以分為兩個子工具。第一個子工具應用於亮度區塊(Luma block),而第二個子工具應用於色度區塊(Chroma block),如下所述: 1)第一個子工具是基於自適應分段線性模型的Luma分量的迴路映射。亮度分量的環路映射通過在整個動態範圍內重新分配碼字來調整輸入信號的動態範圍,以提高壓縮效率。亮度映射利用前向映射函數到“映射域”和相應的逆映射函數返回“輸入域”。 2)第二個子工具與色度分量有關,其中應用亮度相關色度殘差縮放。色度殘差縮放設計用於補償亮度信號及其相應色度信號之間的相互作用。色度殘差縮放取決於當前區塊的頂部及/或左側重建的相鄰亮度樣本的平均值。
像視訊編碼器中的大多數其他工具(如VVC)一樣,可以使用SPS旗標在序列級別啟用/禁用LMCS。色度殘差縮放是否啟用也在切片級別信令。如果啟用亮度映射,則會信令一個附加旗標,以指示是否啟用與亮度相關的色度殘差縮放。當不使用亮度映射時,完全禁用與亮度有關的色度殘差縮放。此外,對於大小小於或等於4的色度區塊,始終禁用與亮度相關的色度殘差縮放。
圖8顯示如上所述用於Luma映射子工具的LMCS原理。圖8中帶陰影的方塊是新的LMCS功能方塊,包括亮度信號的正和逆映射。重要的是要注意,使用LMCS時,在“映射域”中應用一些解碼操作。這些操作在圖8中用虛線方塊表示。其通常對應於逆量化,逆變換,亮度幀內預測和重構步驟,其由將亮度預測與亮度殘差相加組成。相反地,圖8中的實線方塊指示在原始(即,非映射)域中的解碼過程在何處應用,這包括諸如去區塊,ALF和SAO之類的環路濾波,運動補償預測和儲存解碼圖片作為參考圖片(DPB)。
圖9顯示與圖8類似的圖,但是這次是針對LMCS工具的Chroma縮放子工具。圖9的陰影方塊是新的LMCS功能方塊,其包括亮度依賴性色度縮放處理。但是,在色度中,與亮度的情況相比有一些重要的區別。這裡,在色度樣本的“映射域”中僅執行由虛線的方塊表示的逆量化和逆變換。幀內色度預測,運動補償,環路濾波的所有其他步驟均在原始域中執行。如圖9所示,對於亮度映射,僅存在縮放處理,且沒有正向和逆向處理。通過使用分段線性模型進行亮度映射
亮度映射子工具正在使用分段線性模型。這意味著分段線性模型將輸入信號動態範圍分為16個相等的子範圍,對於每個子範圍,其線性映射參數使用分配給該範圍的碼字(codeword)的數量表示。亮度映射的語義
語法元素lmcs_min_ bin _idx 指定在具有色度縮放(LMCS)構造過程的亮度映射中使用的最小bin索引。lmcs_min_bin_idx 的值應在0到15的範圍內(包括0和15)。
語法元素lmcs_ delta _max_bin_idx 指定介於15和最大色度索引LmcsMaxBinIdx 之間的差量值,該最大bin索引LmcsMaxBinIdx 用於通過色度縮放構建過程的亮度映射。lmcs_delta_max_bin_idx 的值應在0到15的範圍內(包括0和15)。LmcsMaxBinIdx 的值設置為等於15-lmcs_delta_max_bin_idxLmcsMaxBinIdx 的值應大於或等於lmcs_min_bin_idx
語法元素lmcs_delta_cw_prec_minus1 加1指定用於表示語法lmcs_delta_abs_cw[i] 的位元的數。
語法元素lmcs _delta_abs_cw[i] 指定第i個bin(ith bin)的絕對差量碼字值。
語法元素lmcs_delta_sign_cw_flag[i] 指定變量lmcsDeltaCW[i] 的符號。當lmcs_delta_sign_cw_flag[i] 不存在,則將其推斷為等於0。用於亮度映射的 LMCS 中間變量計算
為應用正向和逆Luma映射過程,需要一些中間變量和資料陣列。
首先,變量OrgCW的導出如下:
然後,變量lmcsDeltaCW[i],其中 i=lmcs_min_bin_idx .. LmcsMaxBinIdx計算如下:
新變量lmcsCW [ i ]得出如下: –對於i=0.. lmcs_min_bin_idx−1,將lmcsCW[i]設置為等於0。 –對於i=lmcs_min_bin_idx..LmcsMaxBinIdx,適用以下: lmcsCW[i]的值應在(OrgCW>>3)至(OrgCW<<3−1)的範圍內,包括端值。 –對於i=LmcsMaxBinIdx+1..15,lmcsCW[ i ]設置為等於0。
變量InputPivot[i],其中i=0..16,得到如下:
變量LmcsPivot[i],其中i=0..16,變量 ScaleCoeff[i]和InvScaleCoeff[i],其中i=0..15,計算如下: 正向亮度映射
如圖8所示,當將LMCS應用到Luma時,從預測樣本predSamples [i] [j] 獲得稱為predMapSamples [i] [j] 的Luma重映射樣本。
所述predMapSamples[i][j] 計算如下: 首先,索引idxY從預測樣本predSamples[i][j] 計算,在位置(i, j) 然後,使用第0部分的中間變量idxY, LmcsPivot[idxY]和InputPivot[idxY]得出predMapSamples[i][j]如下: 亮度重建樣本
從預測亮度樣本predMapSample[i][j] 和殘差亮度樣本resiSamples[i][j] 獲得重建過程。
只需將predMapSample[i][j] 添加到resiSamples[i][j] ,即可簡單地獲得重構的亮度圖片樣本recSamples[i][j] ,如下所示:
在上述關係中,Clip 1函數是一種限幅函數,可確保重建的樣本在0和1<<BitDepth-1之間。逆亮度映射
當根據圖8應用逆亮度映射時,以下操作將應用於正在處理的當前區塊的每個樣本recSample[i][j] : 首先,在位置(i,j)處,重構樣本recSamples[i][j] 計算索引idxY 得出逆映射亮度樣本invLumaSample[i][j]是基於以下方法: 然後進行限幅操作以獲得最終樣本: 色度縮放 用於色度縮放的 LMCS 語義
在表6的語法元素lmcs_delta_abs_crs 指定的變量lmcsDeltaCrs 的絕對碼字值。lmcs_delta_abs_crs 的值應在0到7之間(包括0和7)。如果不存在,則推斷lmcs_delta_abs_crs 等於0。
語法元素lmcs_delta_sign_crs_flag 指定變量lmcsDeltaCr s 的符號。如果不存在,則推斷lmcs_delta_sign_crs_flag 等於0。用於色度縮放的 LMCS 中間變量計算
要應用色度縮放過程,需要一些中間變量。
變量lmcsDeltaCrs ,得出如下:
變量ChromaScaleCoeff[i] ,其中i=0…15,推導如下: 色度縮放過程
第一步,導出變量invAvgLuma ,以便計算當前對應色度區塊周圍的重建亮度樣本的平均亮度值。平均亮度是根據相應色度區塊周圍的左側和頂部亮度區塊計算得出。
如果沒有可用的樣本,則變量invAvgLuma 設置如下:
然後,根據第0部分的中間陣列LmcsPivot[ ] ,變量idxYInv導出如下:
變量varScale導出如下:
當對當前色度區塊應用變換時,重構色度圖片樣本陣列recSamples 導出如下
如果尚未對當前區塊應用任何變換,則適用以下: 編碼器注意事項
LMCS編碼器的基本原理是,首先將更多的碼字分配給那些動態範圍段的碼字低於平均方差(variance)的範圍。在此的替代方案中,LMCS的主要目標是為具有比平均方差更高的碼字的那些動態範圍段分配更少的碼字。這樣,圖片的平滑區域使用比平均更多的碼字進行編碼,反之亦然。
儲存在APS中的LMCS工具的所有參數(請參閱表6)在編碼器側確定。LMCS編碼器演算法是基於局部亮度方差的評估,且根據上述基本原理最佳化LMCS參數的確定。然後進行最佳化以獲得給定區塊的最終重構樣本的最佳PSNR度量(metric)。在圖片標頭而不是切片標頭中信令資訊的實施例
在實施例中,當在切片標頭中信令圖片標頭時,可以在圖片標頭中或在切片標頭中信令的資訊的信令在圖片標頭中而不是在切片標頭中信令。以等效的方式,當在圖片標頭中信令可以在圖片標頭中或在切片標頭中信令資訊的信令時,在切片標頭中不信令圖片標頭。以另一種等效方式,當可以在圖片標頭中信令可以在圖片標頭中或在切片中信令的資訊的信令時,在切片標頭中信令圖片標頭。表12示出用XXX代替工具名稱的實施例的實施方式。在該表中,當在切片標頭中信令圖片標頭時,在切片標頭中未授權參數的信令。 12 信令摘要
在一個實施例中,在xxx_info_in_ph_flag 的語義中添加以下條件: “當切片標頭參照PPS 包含PH 語法結構,其位元流一致性的要求是 XXX_info_in_ph_flag 應等於1。” 及/或 “當XXX_info_in_ph_flag 等於0時 picture_header_in_slice_header_flag 應等於0”
當圖片標頭位於切片標頭中時,這意味著當前圖片僅存在一個切片。因此,具有針對切片和圖片兩者進行傳輸或可傳輸的資訊不會增加編碼器或解碼器的彈性,因為參數將是相同的。換句話說,如果該資訊在圖片標頭中,則切片標頭中的對應資訊將是冗餘的。類似地,如果資訊在切片標頭中,則圖片標頭中的相應資訊將是冗餘的。通過強制條件,使得在圖片標頭在切片標頭中的情況下,這樣的資訊可以在圖片標頭中而不在切片標頭中,可以通過限制信令中的冗餘以簡化解碼器的實現。QP ( 量化參數 ) 差量
在一個實施例中,當在切片標頭中信令圖片標頭時,在切片標頭中避免QP差量信令。以等效的方式,當在切片標頭中信令QP差量信令時,在切片標頭中不信令圖片標頭。以另一等效方式,當在圖片標頭中信令QP差量時,在切片標頭中信令圖片標頭。換句話說,上面提到的工具XXX是QP差量。
表13示出可以實現的一種方式,以使得當在切片標頭中信令圖片標頭時,未授權(即,不允許)QP差量資訊的信令。 13 QP 差量信令
當圖片標頭位於切片標頭中(意味著當前圖片僅存在一個切片)時,在切片和圖片標頭中可傳輸的資訊不會增加編碼器或解碼器的彈性,因為參數將相同。因此,為降低解碼器實現的複雜性,較佳在切片或圖片標頭之一中僅具有一個可能的信令QP差量資訊來編碼相同的編碼可能性,在這種情況下為QP差量參數(qp_delta_info)。
在第一實施例的實現中,可以在qp_delta _info_in_ph_flag 的語義中添加以下條件: “當引用PPS 的切片標頭包含PH 語法結構時,其位元流一致性的要求是,qp_delta_info_in_ph_flag 等於1。” 及/或 “當qp_delta _info_in_ph_flag 等於0時,picture_header_in_slice_header_flag 應等於0”
在另一實施例中,僅當旗標picture_header_in_slice_header_flag 的值被設置為等於0時才授權切片標頭中的解碼QP差量參數,如表14所示。底線顯示對語法的修改。在該表中,如果在切片級別(qp_delta_info_in_ph_flag 等於0)信令QP差量資訊,且如果未在切片標頭中發送圖片標頭(picture_header_in_slice_header_flag 等於0),則可以解碼切片標頭的slice_qp_delta 資訊。 1 4 部分切片標頭顯示對 QP 差量的修改
在一個實施例中,如表15所示,當旗標picture_header_in_slice_header_flag 的值被設置為等於1時,系統地授權圖片標頭中的解碼QP差量參數。根據該表,僅當在圖片標頭中信令QP差量資訊(qp_delta_info_in_ph_flag等於1)或在切片標頭中發送圖片標頭(picture_header_in_slice_header_flag等於1)時,才能解碼切片標頭的QP差量資訊。 1 5 部分圖片標頭,顯示對 QP 差量的修改 參考圖片列表 (RPL)
在一實施例中,當在切片標頭中信令圖片標頭時,在切片標頭中避免參考圖片列表的信令。以等效的方式,當在切片標頭中信令參考圖片列表時,在切片標頭中沒有信令圖片標頭。以另一等效方式,當參考圖片列表的信令在圖片標頭中信令時,圖片標頭在切片標頭中信令。換句話說,上面提到的工具XXX是RPL。
表16示出該實施例的實現,其中,當在切片標頭中信令圖片標頭時,未授權RPL信令。 1 6 RPL 信令摘要。
當圖片標頭位於切片標頭中時(意味著當前圖片僅存在一個切片),由於切片參數相同,因此可在切片和圖片標頭中傳輸的資訊不會增加編碼器或解碼器的彈性。根據該實施例,降低解碼器實現的複雜度,因為較佳是在切片或圖片標頭中的其中一者僅具有一種可能的資訊信令以編碼相同的編碼可能性,在這種情況下是參考圖片列表(RPL)資訊(rpl_info)。
在一個實施例中,在rpl_info_in_ph_flag 的語義中添加以下條件: “當引用PPS 的切片標頭包含PH 語法結構時,其位元流一致性的要求是,rpl _info_in_ph_flag 等於1。” 及/或 “當rpl _info_in_ph_ flag等於 0 時,picture_header_in_slice_header_flag 應等於0”
在一個實施例中,僅當旗標picture_header_in_slice_header_flag 的值被設置為等於0時才授權對切片標頭中的參考圖片列表的參數進行解碼,如表17所示。在該表中,如果參考圖片列表資訊是在切片級別信令(rpl_info_in_ph_flag 等於0),且如果圖片標頭沒有在切片標頭中發送(picture_header_in_slice_header_flag 等於0),則可以解碼切片標頭的ref_pic_lists() 資訊。
在一個實施例中,如表17所示,當圖片標頭在切片標頭中時,不能解碼時間參數slice_collocated_from_l0_flagslice_collocated_ref_idx 1 7 部分切片標頭顯示對 RPL 的修改
在一個實施例中,如表18所示,當旗標picture_header_in_slice_header_flag 的值被設置為等於1時,系統地授權對圖片標頭中的RPL參數的解碼。在該表中,僅當在圖片級別信令RPL資訊(rpl_info_in_ph_flag等於1)或如果圖片標頭在切片標頭中發送(picture_header_in_slice_header_flag等於1)時,才可以解碼圖片標頭的RPL資訊。
在一個實施例中,當圖片標頭在切片標頭時,如表18所示,可以對時間參數ph_collocated_from_l0_flagph_collocated_ref_idx 進行解碼。 18 部分圖片標頭顯示對 RPL 的修改 解區塊濾波器 ( Deblocking Filter, DBF )
在一個實施例中,當在切片標頭中信令圖片標頭時,在切片標頭中避免解區塊濾波器參數的信令。以等效的方式,當在切片標頭中信令解區塊濾波器參數的信令時,在切片標頭中不信令圖片標頭。以另一等效方式,當在圖片標頭中信令解區塊濾波器參數的信令時,在切片標頭中信令圖片標頭。換句話說,上面提到的工具XXX是DBF。
表19示出根據該實施例的實現,其中,當在切片標頭中信令圖片標頭時,未授權DBF信令。 1 9 DBF 信令摘要
當圖片標頭位於切片標頭中時,由於當前圖片僅存在一個切片,因此在切片或圖片中傳輸的資訊不會增加編碼器或解碼器的彈性,因為參數是相同的。因此,為降低解碼器的實現複雜度,較佳只使用一種可能的DBF資訊的信令以編碼相同的編碼可能性。
在一個實施例中,在dbf _info_in_ph_flag的語義中添加以下條件: “當引用PPS 的切片標頭包含PH 語法結構時,其位元流一致性的要求是dbf_info_in_ph_flag 應等於1。” 及/或 “當dbf_info_in_ph_ flag等於0時 picture_header_in_slice_header_flag 應等於0”
在一個實施例中,僅當旗標picture_header_in_slice_header_flag 的值被設置為等於0時,才授權切片標頭中的DBF參數,如表20所示。在此表中,如果在切片級別上信令DBF資訊(dbf_info_in_ph_flag 等於0)且未在切片標頭中發送圖片標頭 (picture_header_in_slice_header_flag 等於0),則可以解碼切片標頭的slice_deblocking_filter_override_flag 旗標。 20 部分切片標頭,顯示對 DBF 的修改
在一個實施例中,如表21所示,當旗標picture_header_in_slice_header_flag 的值被設置為等於1時,系統地授權圖片標頭中的DBF參數。在此表中,僅當在圖片標頭中信令DBF資訊(dbf_info_in_ph_flag等於1)或在切片標頭中傳送圖片標頭 (picture_header_in_slice_header_flag等於1)時,才可以解碼切片標頭的DBF資訊。 21 部分圖片標頭顯示對 DBF 的修改 SAO( 樣本自適應偏移 )
在一個實施例中,當在切片標頭中信令圖片標頭時,在切片標頭中避免SAO信令。以等效的方式,當在切片標頭中信令SAO信令時,在切片標頭中不信令圖片標頭。以另一等效方式,當在圖片標頭中信令SAO信令時,在切片標頭中信令圖片標頭。換句話說,上面提到的工具XXX是SAO。
表22示出該實施例,其中,當在切片標頭中信令圖片標頭時,未授權SAO信令。 22 SAO 信令摘要
當圖片標頭位於切片標頭中時,由於當前圖片僅存在一個切片,因此在切片或圖片中傳輸的資訊不會增加編碼器或解碼器的彈性,因為參數是相同的。因此,為降低解碼器的實現複雜度,較佳只使用一種可能的SAO資訊信令來編碼相同的編碼可能性。
在一個實施例中,在sao_info_in_ph_flag 的語義中添加以下條件: “當引用PPS 的切片標頭包含PH 語法結構時,對位元流一致性的要求是sao_info_in_ph_flag 應等於1。” 及/或 “當sa o _ info_in_ph_flag 等於0時,picture_header_in_slice_header_flag 應等於0”
在一個實施例中,僅當旗標 picture_header_in_slice_header_flag的值被設置為等於0時,才授權切片標頭中的解碼SAO參數,如表23所述。
在此表中,如果在切片級別信令SAO資訊(sao_info_in_ph_flag 等於0)且未在切片標頭中發送圖片標頭(picture_header_in_slice_header_flag 等於0),則可以解碼切片標頭的slice_sao_luma_flag 旗標。 23 部分切片標頭顯示對 SAO 的修改
在一個實施例中,如表24所示,當旗標picture_header_in_slice_header_flag 的值被設置為等於1時,系統地授權圖片標頭中的解碼SAO參數。在該表中,僅當在圖片標頭中信令SAO資訊(sao_info_in_ph_flag等於1)或在切片標頭中發送圖片標頭(picture_header_in_slice_header_flag等於1)時,才可以解碼切片標頭的SAO資訊。 2 4 部分圖片標頭顯示對 SAO 的修改 加權預測 (WP )
在一個實施例中,當在切片標頭中信令圖片標頭時,在切片標頭中避免加權預測的信令。以等效的方式,當在切片標頭中信令加權預測的信令時,在切片標頭中不信令圖片標頭。以另一等效方式,當在圖片標頭中信令加權預測的信令時,在切片標頭中信令圖片標頭。換句話說,上面提到的工具XXX是WP。
如表25所示,當使用當前語法將wp_info_in_ph_flag 設置為等於0時,可以在切片標頭中信令WP參數。
表25示出該實施例的實現,其中,當在切片標頭中信令圖片標頭時,未授權WP信令。 25 WP 信令摘要
當圖片標頭位於切片標頭中時,由於當前圖片僅存在一個切片,因此在切片或圖片中傳輸的資訊不會增加編碼器或解碼器的彈性,因為參數是相同的。因此,為了降低解碼器的實現複雜度,較佳只使用一種可能的WP info信號來編碼相同的編碼可能性。
在一個實施例中,在wp_info_in_ph_flag 的語義中添加了以下條件: “當引用PPS 的切片標頭包含PH 語法結構時,其位元流一致性的要求是,wp _info_in_ph_flag 應等於1。” 及/或 “當wp_info_in_ph_flag 等於0時,picture_header_in_slice_header_flag 應等於0”
在一個實施例中,如表26所示,僅當旗標picture_header_in_slice_header_flag 的值被設置為等於0時,才授權切片標頭中的解碼WP參數。在該表中,如果在切片級別(wp_info_in_ph_flag 等於0)信令WP資訊,且未在切片標頭中發送圖片標頭(picture_header_in_slice_header_flag 等於0),則可以解碼包含加權預測參數的pred_weight_table() 函數。 2 6 部分切片標頭顯示對 WP 的修改
在一個實施例中,如表27所示,當旗標picture_header_in_slice_header_flag 的值被設置為等於1時,系統地授權圖片標頭中的解碼WP參數。在此表中,僅當在圖片標頭中信令WP資訊(wp_info_in_ph_flag 等於1)或在切片標頭中發送圖片標頭(picture_header_in_slice_header_flag 等於1)時,才可以對WP資訊進行解碼。 2 7 部分圖片標頭顯示對 WP 的修改 ALF
在一實施例中,當在切片標頭中信令圖片標頭時,在切片標頭中避免ALF的信令。以等效的方式,當在切片標頭中信令ALF的信令時,在切片標頭中不信令圖片標頭。以另一等效方式,當在圖片標頭中信令ALF的信令時,在切片標頭中信令圖片標頭。換句話說,上面提到的工具XXX是ALF。
實際上,當前,當在切片標頭中信令圖片標頭(picture_header_in_slice_header_flag =1)和在切片標頭中信令ALF(alf_info_in_ph_flag = 0)時,應在獲取ALF APS ID之前解析圖片標頭的所有參數。因此,由於某些PPS、SPS、圖片標題等全部變量應保留在記憶體中以解析ALF APS ID,因此增加某些串流應用程式解析的複雜性。
此外,當圖片標頭位於切片標頭中時,由於當前圖片僅存在一個切片,因此在切片或圖片中傳輸的資訊不會增加編碼器或解碼器的靈活性,因為參數是相同的。因此,為降低解碼器的實現複雜度,較佳只使用一種可能的信號來編碼相同的編碼可能性。
表28示出該實施例,其中,當在切片標頭中信令圖片標頭時,未授權ALF信令。 2 8 ALF 信令摘要
在一個實施例中,在alf_info_in_ph_flag的語義中添加以下條件: “當引用PPS 的切片標頭包含PH 語法結構時,其位元流一致性的要求是,alf_info_in_ph_fla g 應等於1。” 及/或 “當alf_info_in_ph_flag 等於0時,picture_header_in_slice_header_flag 應等於0”
在一個實施例中,僅當旗標 picture_header_in_slice_header_flag的值被設置為等於0時,才授權切片標頭中的解碼ALF參數,如表29所示。在此表中,僅當在SPS級別啟用ALF(sps_alf_enabled_flag等於1)且在切片級別信令ALF資訊(alf_info_in_ph_flag等於0)且在切片標頭中(picture_header_in_slice_header_flag等於0)未發送圖片標頭時,才能對切片標頭的ALF資訊進行解碼。 2 9 部分切片標頭顯示對 ALF 的修改
在一個實施例中,如表30所示,當旗標picture_header_in_slice_header_flag 的值被設置為等於1時,系統地授權圖片標頭中的解碼ALF參數。在此表中,僅當在SPS級別(sps_alf_enabled_flag 等於1)啟用ALF且在圖片級別信令ALF資訊(alf_info_in_ph_flag等於1)或在切片標頭(picture_header_in_slice_header_flag等於1)發送圖片標頭時,才能解碼切片標頭的ALF資訊。 30 部分圖片標頭顯示對 ALF 的修改 所有工具 / 參數
在一個實施例中,當在切片標頭中信令圖片標頭時,可以在圖片標頭或切片標頭中信令的所有工具(及/或參數)被限制為在圖片標頭中信令。正如以上描述提到,在一個實施例中,相關的工具有:QP差量資訊、參考圖片列表、解區塊濾波器、SAO加權預測和ALF。但是,其他工具也可以在切片和圖片標頭中信令。
這可以通過添加以下限制條件來表示: “當旗標rpl_info_in_ph_flag dbf_info_in_ph_flag sao_info_in_ph_flag alf_info_in_ph_flag wp_info_in_ph_flag qp_delta_info_in_ph_flag 中的至少一個被設置為等於0,picture_header_in_slice_header_flag 的值應等於0。”
及/或通過添加: “當picture_header_in_slice_header_flag 等於1時,旗標rpl_info_in_ph_flag dbf_info_in_ph_flag sao_info_in_ph_flag wp_info_in_ph_flag qp_delta_info_in_ph_flag 應等於1。”
及/或通過向每個XXX_info_in_ph_flag添加以下限制條件: “當切片標頭參照PPS 包含PH 語法結構,其位元流的一致性的要求是XXX_info_in_ph_flag 應等於1。”
當所有這些參數在同一標頭中信令時,它會降低解碼器的實現複雜度,因為最好只用一種可能的信令來編碼相同的編碼可能性。信令順序實施例
在與ALF有關的先前的一個替換實施例中,在圖片標頭結構之前,設置在切片標頭中的ALF APS ID有關的資訊,如表31所示。以該實施例,當在切片標頭中用信令ALF時以及在切片標頭中信令圖片標頭時,無需解析圖片標頭的所有參數就可以快速獲得APS ID。 31 顯示修改的部分切片標頭 加權數實施例
在一個實施例中,當圖片標頭在切片標頭中時,如語法元素表32的部分表中所描繪的,對每個列表L0 L1的加權預測的權重數進行解碼。因此,加權重數的信令可以僅限圖片標頭。 32 部分加權預測參數語法表 在切片標頭而不是圖片標頭中信令資訊的實施例的摘要
在一個實施例中,當在切片標頭中信令圖片標頭時,在切片標頭中而不是在圖片標頭中信令到圖片標頭或切片標頭中的資訊的信令。以等效的方式,當在切片標頭中信令可以在圖片標頭中或在切片標頭中信令資訊的信令時,在切片標頭中不信令圖片標頭。以另一種等效方式,當在切片標頭中信令可以在圖片標頭中或在切片標頭中信令資訊的信令時,在切片標頭中信令圖片標頭。表33說明此實施例,其中工具(或參數)名稱由XXX代替。在該表中,當在切片標頭中信令圖片標頭時,在該圖片標頭中不授權參數的信令。 33 工具信令摘要
在一個實施例中,在xxx _info_in_ph_flag 的語義中添加了以下條件: “當切片標頭參照PPS 包含PH 語法結構,其位元流一致性的要求是XXX_info_in_ph_flag 應等於0。” 及/或 “當XXX_info_in_ph_flag 等於1,則picture_header_in_slice_header_flag 應等於0”
當圖片標頭位於切片標頭中時,這意味著當前圖片僅存在一個切片。因此,具有針對切片和圖片兩者進行傳輸或可傳輸的資訊不會增加編碼器或解碼器的彈性,因為參數將是相同的。換句話說,如果該資訊在圖片標頭中,則切片標頭中的對應資訊將是冗餘的。類似地,如果資訊在切片標頭中,則圖片標頭中的相應資訊將是冗餘的。本文描述的實施例通過限制相同編碼的信令中的冗餘來簡化解碼器實現。特別地,在實施例中,當在切片標頭中信令圖片標頭時,資訊被允許在切片標頭中,但不允許在圖片標頭中。QP 差量
在一個實施例中,工具XXX是QP差量。在一個實施例中,如表33所示,當旗標picture_header_in_slice_header_flag 的值被設置為等於1時,對切片標頭中的解碼QP差量參數進行授權。以等效方式,當在圖片標頭中發送QP差量參數時,如表33所示,將picture_header_in_slice_header_flag 設置為等於0。以另一種等效方式,當在切片標頭中信令QP差量參數時,將picture_header_in_slice_header_flag 設置為1,如表33所示。在此表中,如果在切片級別(qp_delta_info_in_ph_flag 等於0)信令QP差量資訊,或者如果在切片標頭中發送圖片標頭(picture_header_in_slice_header_flag 等於1),則可以解碼切片標頭的slice_qp_delta 資訊。
這可以通過添加語義來獲得: “當引用PPS 的切片標頭包含PH 語法結構時,其位元流一致性的要求是qp_delta _info_in_ph_flag 應等於0。” 及/或 “當qp_delta _ info_in_ph_ flag等於1時,picture_header_in_slice_header_flag 應等於0”
在一個實施例中,如表35所示,當將旗標picture_header_in_slice_header_flag 的值設置為等於1時,系統地避免對圖片標頭中的解碼QP差量參數。在此表中,僅當在圖片標頭中信令QP差量資訊(qp_delta_info_in_ph_flag 等於1)且將picture_header_in_slice_header_flag 設置為0時,才能解碼圖片標頭的QP差量資訊。RPL ( 參考圖片列表 )
在一個實施例中,工具XXX是參考圖片列表。在一個實施例中,僅當旗標picture_header_in_slice_header_flag 的值設置為等於1時,才授權對切片標頭中的參考圖片列表參數進行解碼,如表33所示。以等效方式,當參考圖片列表參數在圖片標題中信令時,如表33所示,將picture_header_in_slice_header_flag 設置為等於0。以另一種等效方式,當在切片標頭中信令參考圖片列表參數時,picture_header_in_slice_header_flag 設置為1,如表33所示。在該表中,如果參考圖片列表資訊以切片級別發送信號(rpl_info_in_ph_flag 等於0)且如果圖片標題在切片標題中發送(picture_header_in_slice_header_flag 等於1),則可以解碼切片標題的ref_pic_lists() 資訊。
在一個實施例中,當圖片標頭在切片標頭中時,可以解碼時間參數slice_collocated_from_10_flagslice_collocated_ref_idx ,如表34所示。
在一個實施例中,如表35所示,當旗標picture_header_in_slice_header_flag 的值被設置為等於1時,系統地避免圖片標頭中的RPL參數的解碼。在此表中,僅當在圖片級別用信令RPL資訊(rpl_info_in_ph_flag 等於1)且將picture_header_in_slice_header_flag 設置為0時,才能解碼圖片標題的RPL資訊。
在一個實施例中,當圖片標頭在切片標頭中時,時間參數ph_collocated_from_l0_flagph_collocated_ref_idx 無法解碼,如表35所示。解區塊濾波器 (DBF)
在一個實施例中,工具XXX是解區塊濾波器(DBF)。在一個替代或附加實施例中,如表33中所示,當旗標picture_header_in_slice_header_flag 的值被設置為等於1時,授權切片標頭中的DBF參數。以等效方式,當在圖片標頭中用信令DBF參數時,如表33所示,將picture_header_in_slice_header_fla g 設置為等於0。以另一種等效方式,當在切片標頭中信令DBF參數時,picture_header_in_slice_header_flag 設置為1,如表33所示。在此表中,如果在切片級別上信令DBF資訊(dbf_info_in_ph_flag 等於0)或如果圖片標頭在切片標頭中傳輸(picture_header_in_slice_header_flag 等於1),則可以解碼切片標頭的slice_deblocking_filter_override_flag 旗標。
在一個實施例中,如表35所示,當旗標picture_header_in_slice_header_flag 的值被設置為等於1時,系統地避免圖片標頭中的DBF參數。在此表中,只有在圖片標頭中信令DBF資訊(dbf_info_in_ph_flag等於1)且picture_header_in_slice_header_flag 等於0時,才能解碼圖片標頭的DBF資訊。樣本自適應偏移 (SAO)
在一個實施例中,工具XXX是SAO (樣本自適應偏移)。在一個替代或附加實施例中,僅當旗標picture_header_in_slice_header_flag 的值設置為等於1時,才授權切片標頭中的SAO參數,如表33所示。以等效方式,當在圖片標頭中信令SAO參數時,如表33所示,將picture_header_in_slice_header_flag 設置為等於0。以另一種等效方式,當在切片標頭中信令SAO參數時,將picture_header_in_slice_header_flag 設置為1,如表33所示。在此表中,如果在切片級別信令SAO資訊(sao_info_in_ph_flag 等於0)且如果圖片標頭在切片標頭中傳輸(picture_header_in_slice_header_flag 等於1),則可以解碼切片標頭的slice_sao_luma_flag 旗標。
在一個實施例中,如表35所示,當旗標picture_header_in_slice_header_flag 的值被設置為等於1時,系統地避免圖片標頭中的SAO參數。在此表中,僅當在圖片標頭中信令SAO資訊(sao_info_in_ph_flag 等於1)且將picture_header_in_slice_header_flag 設置為0時,才能對圖片標頭的SAO資訊進行解碼。WP ( 加權預測 )
在一個實施例中,工具XXX是WP(加權預測)。在一個實施例中,僅當旗標picture_header_in_slice_header_flag 的值被設置為等於1時,才授權切片標頭中的WP參數,如表33所示。以等效方式,當在圖片標頭中信令WP參數時,如表33所示,將picture_header_in_slice_header_flag 設置為等於0。以另一種等效方式,當在切片標頭中信令WP參數時,picture_header_in_slice_header_flag 設置為1,如表33所示。在該表中,如果在切片級別信令WP資訊(wp_info_in_ph_flag 等於0),或者如果圖片標頭在切片標頭中發送(picture_header_in_slice_header_flag 等於1),則可以對包含加權預測參數的pred_weight_table() 函數進行解碼。
在另一實施例中,如表35所示,當旗標picture_header_in_slice_header_flag 的值被設置為等於1時,系統地避免圖片標頭中的解碼WP參數。在此表中,僅當在圖片標頭中信令WP資訊(wp_info_in_ph_flag 等於1)且將picture_header_in_slice_header_flag 設置為0時,才可以對WP資訊進行解碼。ALF ( 自適應環路濾波器 )
在一個實施例中,工具XXX是ALF(自適應環路濾波器)。在一個實施例中,僅當旗標picture_header_in_slice_header_flag的值被設置為等於1時,才授權切片標頭中的解碼ALF參數,如表33所示。以等效方式,當在圖片標頭中信令ALF參數時,如表33所示,將picture_header_in_slice_header_flag 設置為等於0。以另一種等效方式,當在切片標頭中信令ALF參數時,將picture_header_in_slice_header_flag 設置為等於1,如表33所示。在此表中,僅當在SPS級別(sps_alf_enabled_flag 等於1)啟用ALF且在切片級別(alf_info_in_ph_flag 等於0)信令ALF資訊或在切片標頭發送圖片標頭(picture_header_in_slice_header_flag 等於1)時,才能解碼切片標頭的ALF資訊。
在一個實施例中,如表35所示,當旗標picture_header_in_slice_header_flag 的值被設置為等於1時,系統地避免圖片標頭中的解碼ALF參數。在此表中,僅當在SPS級別上啟用ALF(sps_alf_enabled_flag 等於1)且在圖片級別信令ALF資訊(alf_info_in_ph_flag等於1)且picture_header_in_slice_header_flag 設置為0時,才能解碼切片標頭的ALF資訊。 3 4 部分切片標頭顯示修改 3 5 部分圖片標頭表示修改 所有工具 / 參數
在一個實施例中,當在切片標頭中信令圖片標頭時,在圖片標頭中或在切片標頭中可以信令的所有工具(和/或參數)在切片標頭中信令。如在一個實施例中的以上描述中提到的,相關的工具是:QP差量資訊、參考圖片列表、解區塊濾波器、SAO加權預測和ALF。但是,其他工具也可以在切片和圖片標頭兩者中信令。
這可以通過添加以下限制條件來表示: “當旗標rpl_info_in_ph_flag dbf_info_in_ph_flag sao_info_in_ph_flag alf_info_in_ph_flag wp_info_in_ph_flag qp_delta_info_in_ph_flag 中的至少一個設置為1時,picture_header_in_slice_header_flag 的值應等於0。” 及/或通過添加: “當picture_header_in_slice_header_flag 等於1時,旗標rpl_info_in_ph_flag dbf_info_in_ph_flag sao_info_in_ph_flag wp_info_in_ph_flag qp_delta_info_in_ph_flag 應等於0。” 及/或通過向每個XXX_info_in_ph_flag添加以下限制條件: “當切片標頭參照PPS 包含PH 語法結構,其位元流一致性的要求是,XXX_info_in_ph_flag 應等於0。”
當所有這些參數都在同一標頭中信令時,其會降低解碼器的實現複雜性,因為較佳是僅對工具或參數使用一種可能的信令,而這些工具或參數將不可避免地具有相同的值或屬性。 實施方式
根據本發明實施例,圖10示出系統191、195,其包括編碼器150或解碼器100和通信網路199中的至少一者。根據一個實施例,系統195用於處理並提供內容(例如,用於顯示/輸出或串流視訊/音訊內容的視訊和音訊內容)給存取解碼器100的使用者,例如通過包括解碼器100的使用者終端或與解碼器100可通信的使用者終端的使用者介面。這樣的使用者終端可以是電腦、行動電話、平板電腦或能夠向使用者提供/顯示(提供/串流)內容的任何其他類型的裝置。系統195通過通信網路199獲得/接收位元流101(以連續串流或信號的形式-例如,在顯示/輸出較早的視訊/音訊時)。根據一個實施例,系統191用於處理內容並儲存處理的內容,例如,為稍後顯示/輸出/串流處理的視訊和音訊內容。系統191獲得/接收包括影像151的原始序列的內容,其由編碼器150接收和處理(包括根據本發明的使用解區塊濾波器的濾波),且編碼器150產生位元流101,該位元流101經由通信網路191被通信到解碼器100。然後,位元流101以多種方式被傳送到解碼器100,例如,它可以由編碼器150預先產生,且作為資料被儲存在通信網路199中的儲存設備中(例如,在伺服器或雲儲存上),直到使用者從儲存設備請求內容(即位元流資料)為止,這時資料從儲存設備傳送到/串流到解碼器100。系統191還可以包括內容提供設備,該內容提供設備用於向使用者提供/串流傳輸(例如,通過用於要在使用者終端上顯示的使用者界面的傳送資料)用於儲存在儲存設備中的內容的內容資訊(例如內容標題和其他元(meta)/儲存位置資料,用於標識、選擇和請求內容),以及用於接收和處理對內容的使用者請求,以便可以將請求的內容從儲存設備傳遞/串流到使用者終端。可選地,當使用者請求內容時,編碼器150產生位元流101並將其直接傳送/串流傳輸至解碼器100。解碼器100然後接收位元流101(或信號),並使用根據本發明的解區塊濾波器執行濾波,以獲得/產生視訊信號109及/或音訊信號,然後由使用者終端使用該視訊信號109和/或音訊信號來提供給使用者的請求的內容。
根據本發明的方法/過程的任何步驟或本文描述的功能可以以硬體、軟體、韌體或其任何組合來實現。如果以軟體實現,則步驟/功能可以作為一個或多個指令或代碼或程式或電腦可讀媒體儲存或通過其傳輸,並由一個或多個基於硬體的處理單元(例如可程式計算機器)執行,其可以是PC(“個人電腦”)、DSP(“數位信號處理器”)、電路、電子電路、處理器和記憶體、通用微處理器或中央處理器,微控制器、ASIC(“特殊應用積體電路”)、現場可程式邏輯陣列(FPGA)或其他等效的整合或離散邏輯電路。因此,本文使用的用語“處理器”可以指任何前述結構或適合於實現本文描述的技術的任何其他結構。
本發明的實施例還可以通過各種各樣的裝置或設備來實現,包括無線手機、積體電路(IC)或一組JC(例如,晶片組)。本文描述了各種組件、模組或單元以示出被配置為執行那些實施例的裝置/設備的功能態樣,但是不一定需要通過不同的硬體單元來實現。而是,各種模組/單元可以組合在編解碼器硬體單元中,或者由互操作的硬體單元的集合提供,包括一個或多個處理器以及合適的軟體/韌體。
本發明的實施例可以通過系統或裝置的電腦來實現,該系統或裝置的電腦讀出並執行記錄在儲存媒體上的電腦可執行指令(例如,一個或多個程式),以執行上述實施例中的一個或多個的模組/單元/功能,及/或包括用於執行上述實施例中的一個或多個功能的一個或多個處理單元或電路,以及通過該系統或設備的電腦執行的方法,例如,從儲存媒體中讀出並執行電腦可執行指令以執行上述實施例的一個或多個功能及/或控制一個或多個處理單元或電路以執行上述描述的實施例的一個或多個功能。該電腦可以包括單獨的電腦或單獨的處理單元的網路,以讀出並執行電腦可執行指令。可以例如經由網路或有形儲存媒體從諸如通信媒體之類的電腦可讀媒體將電腦可執行指令提供給電腦。通信媒體可以是信號/位元流/載波。有形儲存媒體是“非暫態電腦可讀儲存媒體”,其可以包括例如硬碟,隨機存取記憶體(RAM)、唯讀記憶體(ROM)、分佈式計算系統儲存器、光碟(例如光碟(CD)、數位多功能光碟(DVD)或Blu-ray光碟(BD)™)、快閃記憶體裝置、記憶卡等中的一個或多個。步驟/功能中的至少一些還可以通過機器或專用組件(例如,FPGA(“現場可程式閘陣列”)或ASIC(“特殊應用積體電路”))以硬體來實現。
圖11是用於實現本發明的一個或多個實施例的計算裝置2000的示意性方塊圖。計算裝置2000可以是諸如微型電腦、工作站或輕便可攜式裝置之類的裝置。計算裝置2000包含一條通信匯流排,該匯流排連接到:-中央處理器(CPU) 2001,例如微處理器;-隨機存取記憶體(RAM) 2002以儲存本發明實施例的方法的可執行碼,以及適於記錄實現根據本發明實施例的用於對影像的至少一部分進行編碼或解碼的方法所必需的變量和參數的暫存器,記憶體容量例如,可以通過連接到擴展端口的可選RAM對其進行擴展;-唯讀記憶體(ROM) 2003用於儲存用於實現本發明實施例的電腦程式;-網路介面(NET) 2004通常連接到通信網路,通過該通信網路發送或接收要處理的數位資料。網路介面(NET)2004可以是單個網路介面,也可以由一組不同的網路介面(例如,有線和無線介面,或不同種類的有線或無線介面)組成。在CPU2001中運行的軟體應用程式的控制下,將資料封包寫入網路介面以進行傳輸或從網路介面讀取以進行接收; -使用者介面(UI)  2005可以用於接收來自使用者的輸入或向使用者顯示資訊;-硬碟(HD)  2006可以提供作為大容量儲存裝置;-輸入/輸出模組(IO) 2007可用於從/向諸如視訊源或顯示器之類的外部裝置接收/發送資料。可執行碼可以儲存在ROM2003中,HD 2006或可移除數位媒體(例如磁碟)上。根據一種變體,執行前,可以經由NET 2004通過通信網路來接收程式的可執行碼,以便被儲存在通信裝置2000的儲存裝置之一中,例如HD 2006。CPU 2001適於控制和指導根據本發明實施例的一個或多個程式的指令或軟體代碼的部分的執行,這些指令被儲存在上述儲存裝置之一中。在接通電源之後,例如,在從程式ROM 2003或HD 2006中加載那些指令之後,CPU 2001能夠執行與軟體應用程式有關的來自主RAM記憶體2002的指令。當由CPU 2001執行時,這樣的軟體應用程式使得根據本發明的方法的步驟得以執行。
還應理解,根據本發明的另一實施例,在諸如電腦、行動電話(蜂巢式電話)、平板電腦或任何其他類型的裝置(例如,顯示裝置)的使用者終端中提供根據前述實施例的解碼器,能夠向使用者提供/顯示內容。根據又一實施例,在圖片擷取設備中提供根據前述實施例的編碼器,該影像擷取設備還包括照相機、視訊照相機或網路照相機(例如,閉路電視或視訊監控照相機),其擷取並提供內容給編碼器以編碼。下面參考圖11和圖12提供兩個這樣的示例。網路照相機
圖11是示出包括網路照相機2102和客戶端設備2104的網路照相機系統2100的圖。
網路照相機2102包括成像單元2106、編碼單元2108、通信單元2110和控制單元2112。
網路照相機2102和客戶端設備2104相互連接以能夠經由網路200彼此通信。
成像單元2106包括透鏡和影像感測器(例如,電荷耦合裝置(CCD)或互補金屬氧化物半導體(CMOS)),且擷取物件的影像並基於該影像產生影像資料。該影像可以是靜止影像或視訊影像。
編碼單元2108通過使用上述編碼方法對影像資料進行編碼。
網路照相機2102的通信單元2110將由編碼單元2108編碼的編碼影像資料發送到客戶端設備2104。
此外,通信單元2110從客戶端設備2104接收命令。命令包括用於設置用於編碼單元2108的編碼的參數的命令。
控制單元2112根據通信單元2110接收的命令來控制網路照相機2102中的其他單元。
客戶端設備2104包括通信單元2114、解碼單元2116和控制單元2118。
客戶端設備2104的通信單元2114將命令發送到網路照相機2102。
此外,客戶端裝置2104的通信單元2114從網路照相機2102接收編碼影像資料。
解碼單元2116通過使用上述解碼方法對編碼影像資料進行解碼。
客戶端設備2104的控制單元2118根據使用者操作或由通信單元2114接收的命令來控制客戶端設備2104中的其他單元。
客戶端設備2104的控制單元2118控制顯示設備2120,以顯示由解碼單元2116解碼的影像。
客戶端設備2104的控制單元2118還控制顯示設備2120,以顯示GUI(圖形使用者介面),以指定用於網路照相機2102的參數的值包括用於編碼單元2108的編碼的參數。
客戶端設備2104的控制單元2118還根據輸入到由顯示設備2120顯示的GUI的使用者操作來控制客戶端設備2104中的其他單元。
客戶端設備2104的控制單元2119控制客戶端設備2104的通信單元2114,以根據輸入至由顯示裝置2120顯示的GUI的使用者操作,將命令發送到網路照相機2102,其指定用於網路照相機2102的參數的值。智慧型電話
圖12是示出智慧型電話2200的圖。
智慧型電話2200包括通信單元2202、解碼單元2204、控制單元2206、顯示單元2208、影像記錄裝置2210和感測器2212。
通信單元2202經由網路200接收編碼影像資料。
解碼單元2204對由通信單元2202接收的編碼影像資料進行解碼。
解碼單元2204通過使用上述解碼方法對編碼影像資料進行解碼。
控制單元2206根據使用者操作或由通信單元2202接收的命令來控制智慧型電話2200中的其他單元。
例如,控制單元2206控制顯示單元2208,以顯示由解碼單元2204解碼的影像。
儘管已經參考實施例描述本發明,但是應當理解,本發明不限於所公開的實施例。本領域技術人員將理解,在不脫離如所附申請專利範圍所限定的本發明的範圍的情況下,可以進行各種改變和修改。在本說明書中公開的所有特徵(包括任何所附申請專利範圍、摘要和附圖)及/或如此公開的任何方法或過程的所有步驟可以以任何組合進行組合,除了其中至少一些這樣的特徵的組合以外及/或步驟是互斥的。除非另有明確說明,否則本說明書中公開的每個特徵(包括任何所附申請專利範圍、摘要和附圖)可以由具有相同、等同或相似目的的替代特徵代替。因此,除非另有明確說明,否則所公開的每個特徵僅是一系列等同或相似特徵的示例。
還應理解,上述比較、確定、評估、選擇、執行、進行或考慮的任何結果,例如在編碼或濾波過程中進行的選擇,可以在位元流中從資料被指示或由其確定/推斷,例如表示結果的旗標或資料,以便可以在處理中使用所指示或確定/推斷的結果,而不是例如在解碼過程中實際執行比較、確定、評估、選擇、執行、進行或考慮。
在申請專利範圍中,用語“包括”不排除其他元件或步驟,且不定冠詞“一”或“一個”不排除多個。在互不相同的從屬申請專利範圍中記載不同特徵的唯一事實並不表示不能有利地使用這些特徵的組合。
出現在申請專利範圍中的附圖標號僅是示例性的,且對申請專利範圍的範圍沒有限制作用。
1:視訊序列 2:影像 3:切片 5:編碼單元 6:預測單元 7:變換單元 200:資料通信網路 201:伺服器 204:資料串流 202:客戶端 300:裝置 313:通信匯流排 311:中央處理單元 306:唯讀記憶體 312:隨機存取記憶體 303:通信網路 302:通信介面 304:資料儲存裝置 305:磁碟驅動器 306:磁碟 309:螢幕 310:鍵盤 320:數位照相機 308:麥克風 311:中央處理單元 400:編碼器 401:數位影像的原始序列 402:模組 403:模組 404:模組 405:模組 406:模組 407:模組 408:模組 409:模組 410:模組 411:模組 412:模組 413:模組 414:模組 415:模組 416:模組 417:模組 418:模組 60:解碼器 61:模組 62:模組 63:模組 64:模組 65:模組 66:模組 67:模組 68:模組 69:模組 70:模組 71:模組 601:單元 602:單元 603:單元 604:單元 605:單元 606:單元 607:單元 608:單元 610:單元 611:單元 620:單元 640:單元 701:單元 702:單元 703:單元 704:單元 705:單元 706:單元 707:單元 720:單元 740:單元 191:系統 195:系統 150:編碼器 100:解碼器 199:通信網路 100:解碼器 101:位元流 151:影像 2000:計算裝置 2001:CPU 2002:RAM 2003:ROM 2004:NET 2005:UI 2006:HD 2007:IO 2102:網路照相機 2106:成像單元 2108: 編碼單元 2110:通信單元 2112:控制單元 2104:客戶端設備 2114:通信單元 2116:解碼單元 2118:控制單元 2120:顯示設備 2200:智慧型電話 2202:通信單元 2204:解碼單元 2206:控制單元 2208:顯示單元 2210:影像記錄裝置 2212:感測器
現在將通過示例的方式參考附圖,其中:
[圖1]是用於說明在HEVC和VVC中使用的編碼結構的圖;
[圖2]是示意性示出可以在其中實現本發明的一個或多個實施例的資料通信系統的方塊圖;
[圖3]是示出其中可以實現本發明的一個或多個實施例的處理裝置的組件的方塊圖;
[圖4]是示出根據本發明實施例的編碼方法的步驟的流程圖;
[圖5]是示出根據本發明實施例的解碼方法的步驟的流程圖;
[圖6]示出示例性編碼系統VVC中的位元流的結構;
[圖7]示出示例性編碼系統VVC中的位元流的另一種結構;
[圖8]示出亮度建模色度縮放(LMCS);
[圖9]顯示LMCS的子工具;
[圖10]是示出根據本發明實施例的包括編碼器或解碼器以及通信網路的系統的圖;
[圖11]是用於實施本發明一個或更多實施例的計算裝置的示意性方塊圖;
[圖12]示出網路照相機系統的圖示;及
[圖13]示出智慧型電話的圖示。
1:視訊序列
2:影像
3:切片
5:編碼單元
6:預測單元
7:變換單元

Claims (18)

  1. 一種從位元流解碼視訊資料的方法,該位元流包括:與一個或多個切片相對應的視訊資料;圖片標頭,包括用以在解碼一個或多個切片時使用的語法元素;切片標頭,包括用以在解碼切片時使用的語法元素;以及旗標,其指示該圖片標頭是否在該切片標頭中,並且,該方法包括:使用該語法元素解碼該位元流,其中在能在該圖片標頭或該切片標頭中傳訊的資訊係在該圖片標頭傳訊的情況下,該旗標須具有指示該圖片標頭不在該切片標頭中的值。
  2. 根據請求項1所述的方法,其中,該解碼進一步包括:解析指示該資訊是否要在圖片標頭中傳訊的第一語法元素,以及允許基於該第一語法元素在該切片標頭或圖片標頭的僅一個中解析可在切片標頭或圖片標頭中傳訊的該資訊。
  3. 根據請求項2所述的方法,其中,該第一語法元素是在圖片參數設置旗標中的資訊。
  4. 根據請求項3所述的方法,其中在該第一語法元素指示該資訊是在該圖片標頭中傳訊的情況下,不允許在該切片標頭中解析該資訊。
  5. 根據請求項1所述的方法,其中,該資訊包括量化參數值資訊、參考圖片列表資訊、解區塊濾波器資訊、樣本自適應偏移(SAO)資訊、加權預測資訊和自適 應環路濾波(ALF)資訊中的一個或多個。
  6. 根據請求項1所述的方法,其中,該資訊包括可以在圖片標頭和切片標頭中傳訊的所有資訊。
  7. 根據請求項5所述的方法,其中,該參考圖片列表資訊包括slice_collocated_from_l0 flag、slice_collocated_ref_idx、ph_collocated_from_l0_flag及ph_collocated_ref_idx中的一個或多個。
  8. 一種解碼視訊資料的方法,該方法包括:接收位元流,該位元流包括:與一個或多個切片相對應的視訊資料;圖片標頭,包括用以當解碼一個或多個切片時使用的語法元素;切片標頭,包括用以在解碼切片時使用的語法元素;以及旗標,其指示該圖片標頭是否在該切片標頭中,其中若該位元流包括具有指示能在該圖片標頭或在該切片標頭中傳訊的資訊係在該圖片標頭中傳訊的值的語法,該旗標之該值必需指示該圖片標頭不在該切片標頭中;以及使用該語法元素對該位元流進行解碼。
  9. 一種將視訊資料編碼為位元流的方法,其中要被編碼為該位元流的該視訊資料對應一個或多個切片,圖片標頭包括用以在解碼一個或多個切片時使用的語法元素,切片標頭包括用以在解碼切片時使用的語法元素,以及旗標指示該圖片標頭是否在該切片標頭中,並且,該方法包括: 使用該語法元素編碼該視訊資料,其中若可以在該圖片標頭中或在該切片標頭中傳訊的資訊係在該圖片標頭中傳訊,則該旗標具有指示該圖片標頭不是在該切片標頭中的值。
  10. 根據請求項9所述的方法,其中,該編碼進一步包括:編碼第一語法元素,該第一語法元素指示該資訊是否要在圖片標頭中傳訊,以及允許基於該第一語法元素在該切片標頭或圖片標頭的僅一個中編碼可在切片標頭及圖片標頭中傳訊的該資訊。
  11. 根據請求項10所述的方法,其中,該第一語法元素是在圖片參數設置旗標的資訊。
  12. 根據請求項10所述的方法,其中在該第一語法元素指示該資訊是在該圖片標頭中傳訊的情況下,不允許在該切片標頭中編碼該資訊。
  13. 根據請求項9所述的方法,其中,該資訊包括量化參數值資訊、參考圖片列表資訊、解區塊濾波器資訊、樣本自適應偏移(SAO)資訊、加權預測資訊和自適應環路濾波(ALF)資訊中的一個或多個。
  14. 根據請求項9所述的方法,其中,該資訊包括可以在圖片標頭和切片標頭中傳訊的所有資訊。
  15. 根據請求項13所述的方法,其中,該參考圖片列表資訊包括slice_collocated_from_l0 flag、slice_collocated_ref_idx、ph_collocated_from_l0_flag及ph_collocated_ref_idx中的一個或多個。
  16. 一種用於從位元流中解碼視訊資料的裝置,其包括被配置為執行根據請求項1-8中任一項所述的方法的解碼器。
  17. 一種用於將視訊資料編碼成位元流的裝置,其包括被配置為執行根據請求項9-15中任一項所述的方法的編碼器。
  18. 一種儲存電腦程式的電腦可讀儲存媒體,該電腦程式當在電腦或處理器上運行時引起該電腦或處理器實施根據請求項1-15中任一項所述的方法。
TW110107728A 2020-03-11 2021-03-04 用於視訊編碼及解碼的高階語法 TWI842980B (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
GB2003562.2 2020-03-11
GB2003562.2A GB2592957A (en) 2020-03-11 2020-03-11 High level syntax for video coding and decoding
GB2005741.0 2020-04-20
GB2005741.0A GB2592997B (en) 2020-03-11 2020-04-20 High level syntax for video coding and decoding

Publications (2)

Publication Number Publication Date
TW202135533A TW202135533A (zh) 2021-09-16
TWI842980B true TWI842980B (zh) 2024-05-21

Family

ID=

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
網路文獻 Sharp Labs of America, Inc.、Ericsson、Tencent "AHG9: Picture Header in Slice Header" Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 17th Meeting 7–17 January 2020 https://jvet-experts.org/doc_end_user/documents/17_Brussels/wg11/JVET-Q0775-v1.zip

Similar Documents

Publication Publication Date Title
JP7457791B2 (ja) ビデオの符号化及び復号のための高レベルシンタックス
JP7403633B2 (ja) ビデオの符号化及び復号のための高レベルシンタックス
JP7434580B2 (ja) ビデオの符号化及び復号のための高レベルシンタックス
TWI811651B (zh) 用於視頻編碼及解碼的高階語法
JP7475455B2 (ja) ビデオの符号化および復号のためのハイレベルシンタックス
TWI842980B (zh) 用於視訊編碼及解碼的高階語法
JP7497441B2 (ja) ビデオの符号化及び復号のための高レベルシンタックス
JP7383808B2 (ja) ビデオコーディング及び復号のための高レベルシンタックス
US20230179802A1 (en) High level syntax for video coding and decoding