TW202408240A - 一種候選清單構建方法、視訊編解碼方法、碼流、裝置、系統和儲存媒介 - Google Patents
一種候選清單構建方法、視訊編解碼方法、碼流、裝置、系統和儲存媒介 Download PDFInfo
- Publication number
- TW202408240A TW202408240A TW112124895A TW112124895A TW202408240A TW 202408240 A TW202408240 A TW 202408240A TW 112124895 A TW112124895 A TW 112124895A TW 112124895 A TW112124895 A TW 112124895A TW 202408240 A TW202408240 A TW 202408240A
- Authority
- TW
- Taiwan
- Prior art keywords
- mode
- current block
- intra prediction
- mrl
- candidate list
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 146
- 238000010276 construction Methods 0.000 title claims description 7
- 238000004590 computer program Methods 0.000 claims description 26
- 230000008569 process Effects 0.000 claims description 26
- 238000012545 processing Methods 0.000 claims description 20
- 238000001914 filtration Methods 0.000 claims description 14
- 238000009795 derivation Methods 0.000 claims description 8
- 241000023320 Luma <angiosperm> Species 0.000 claims description 5
- OSWPMRLSEDHDFF-UHFFFAOYSA-N methyl salicylate Chemical compound COC(=O)C1=CC=CC=C1O OSWPMRLSEDHDFF-UHFFFAOYSA-N 0.000 claims description 5
- 238000002834 transmittance Methods 0.000 claims description 5
- 238000005457 optimization Methods 0.000 claims description 4
- 238000000638 solvent extraction Methods 0.000 claims description 3
- 230000006399 behavior Effects 0.000 claims 1
- 230000001174 ascending effect Effects 0.000 abstract description 6
- 230000002708 enhancing effect Effects 0.000 abstract 1
- 238000013139 quantization Methods 0.000 description 19
- 238000010586 diagram Methods 0.000 description 14
- 238000005516 engineering process Methods 0.000 description 14
- 208000037170 Delayed Emergence from Anesthesia Diseases 0.000 description 11
- 230000009466 transformation Effects 0.000 description 11
- 238000004891 communication Methods 0.000 description 8
- 230000006835 compression Effects 0.000 description 7
- 238000007906 compression Methods 0.000 description 7
- 238000012360 testing method Methods 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 238000013500 data storage Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000004927 fusion Effects 0.000 description 2
- 238000005192 partition Methods 0.000 description 2
- 230000001052 transient effect Effects 0.000 description 2
- 239000013598 vector Substances 0.000 description 2
- 239000010751 BS 2869 Class A2 Substances 0.000 description 1
- 101100426754 Caenorhabditis elegans try-5 gene Proteins 0.000 description 1
- 208000014651 Meester-Loeys syndrome Diseases 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000006837 decompression Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000005286 illumination Methods 0.000 description 1
- 230000035755 proliferation Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 230000000630 rising effect Effects 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/103—Selection of coding mode or of prediction mode
- H04N19/105—Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/103—Selection of coding mode or of prediction mode
- H04N19/11—Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/157—Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
- H04N19/159—Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
一種多參考行幀內預測模式候選清單的構建方法、視訊編解碼方法、裝置和系統,根據N個擴展參考行和M個幀內預測模式的N×M種組合分別對範本區域進行預測,根據範本區域的重建值和預測值之間的誤差的昇冪,將K種組合填入TMRL_IP模式的候選清單。編碼端在為當前塊選中候選清單中的組合時,編碼TMRL_IP模式標誌和TMRL_IP模式索引,解碼端透過解碼TMRL_IP模式標誌和TMRL_IP模式索引,確定為當前塊選中的擴展參考行和幀內預測模式。本申請實施例將擴展參考行與幀內預測模式組合編解碼,可提高編碼效率,提升編碼性能。
Description
本申請實施例涉及但不限於視訊技術,更具體地,涉及一種多參考行幀內預測模式候選清單的構建方法、視訊編解碼方法、裝置和系統。
數位視訊壓縮技術主要是將龐大的數位影像視訊資料進行壓縮,以便於傳輸以及儲存等。目前通用的視訊編解碼標準,如H.266 / Versatile Video Coding (多功能視訊編碼,VVC ),都採用基於塊的混合編碼框架。視訊中的每一幀被分割成相同大小(如128x128,64x64等)的正方形的最大編碼單元(LCU:largest coding unit)。每個最大編碼單元可根據規則劃分成矩形的編碼單元(CU: coding unit)。編碼單元可能還會劃分預測單元(PU:prediction unit),變換單元(TU:transform unit)等。混合編碼框架包括預測(prediction)、變換(transform)、量化(quantization)、熵編碼(entropy coding)、環路濾波(in loop filter)等模組。預測模組包括用於減少或取出視訊內在冗餘的幀內預測(intra prediction)和幀間預測(inter prediction)。幀內塊透過塊周邊像素作為參考進行預測,幀間塊則參考空間上的鄰近塊資訊和其他幀裡的參考資訊。與預測訊號相對,殘差資訊透過以塊為單位的變換、量化和熵編碼成碼流。這些技術被描述在標準裡並實施在的各種與視訊壓縮相關的領域。
隨著互聯網視訊的激增以及人們對視訊清晰度的要求越來越高,儘管已有的數位視訊壓縮標準能夠節省不少視訊資料,但目前仍然需要追求更好的數位視訊壓縮技術,以減少數位視訊傳輸的頻寬和流量壓力。
以下是對本文詳細描述的主題的概述。本概述並非是為了限制權利要求的保護範圍。
本申請一實施例提供了一種多參考行幀內預測模式候選清單的構建方法,包括:
根據當前塊的N個擴展參考行和M個幀內預測模式得到擴展參考行與幀內預測模式的N×M種組合,N⩾1,M⩾1,N×M⩾2;
根據所述N×M種組合分別對當前塊的範本區域進行預測,並計算所述範本區域的重建值和預測得到的預測值之間的誤差;
按照所述誤差從小到大的順序,將所述誤差對應的K種組合填入當前塊基於範本的多參考行幀內預測TMRL_IP模式的候選清單,1⩽K⩽ N×M。
本申請一實施例還提供了一種視訊解碼方法,包括:
解碼當前塊的多參考行幀內預測MRL_IP模式標誌,確定當前塊是否使用MRL_IP模式;
確定當前塊使用MRL_IP模式的情況下,繼續解碼當前塊的MRL_IP模式索引,並構建當前塊的MRL_IP模式的候選清單,所述候選列表中填入有當前塊候選的擴展參考行與幀內預測模式的組合;
根據所述候選清單和MRL_IP模式索引,確定為當前塊選中的擴展參考行和幀內預測模式的組合,根據選中的組合對當前幀進行預測;
其中,所述TMRL_IP模式索引用於表示所述選中的擴展參考行與幀內預測模式的組合在所述候選清單中的位置。
本申請一實施例還提供了一種視訊編碼方法,包括:
構建當前塊的多參考行幀內預測MRL_IP模式的候選清單,所述候選列表中填入有當前塊候選的擴展參考行與幀內預測模式的組合;
透過率失真優化,為當前塊選中一種參考行和幀內預測模式的組合用於幀內預測;
在當前塊的MRL_IP模式的編碼條件滿足時,編碼當前塊的MRL_IP模式標誌以表示當前塊使用MRL_IP模式,編碼當前塊的MRL_IP模式索引以表示所述選中的組合在所述候選清單中的位置;
其中,所述編碼條件至少包括:所述選中的組合在所述候選清單中。
本申請一實施例還提供了一種碼流,其中,所述碼流中包括塊級的用於幀內預測的語法元素,所述語法元素包括當前塊的多參考行幀內預測MRL_IP模式標誌和MRL_IP模式索引,其中,所述MRL_IP模式標誌用於表示當前塊是否使用MRL_IP模式,所述MRL_IP模式索引用於表示為當前塊選中的擴展參考行和幀內預測模式的組合在MRL_IP模式的候選清單中的位置。
本申請一實施例還提供了一種多參考行幀內預測模式候選清單的構建裝置,包括處理器以及儲存有電腦程式的記憶體,其中,所述處理器執行所述電腦程式時能夠實現如本申請任一實施例所述的多參考行幀內預測模式候選清單的構建方法。
本申請一實施例還提供了一種視訊解碼裝置,包括處理器以及儲存有電腦程式的記憶體,其中,所述處理器執行所述電腦程式時能夠實現如本申請任一實施例所述的視訊解碼方法。
本申請一實施例還提供了一種視訊編碼裝置,包括處理器以及儲存有電腦程式的記憶體,其中,所述處理器執行所述電腦程式時能夠實現如本申請任一實施例所述的視訊編碼方法。
本申請一實施例還提供了一種視訊編解碼系統,其中,包括本申請任一實施例所述的視訊編碼裝置和本申請任一實施例所述的視訊解碼裝置。
本申請一實施例還提供了一種非瞬態電腦可讀儲存媒介,所述電腦可讀儲存媒介儲存有電腦程式,其中,所述電腦程式時被處理器執行時實現如本申請任一實施例所述的多參考行幀內預測模式候選清單的構建方法,或實現本申請任一實施例所述的視訊解碼方法,或實現本申請任一實施例所述的視訊編碼方法。
在閱讀並理解了附圖和詳細描述後,可以明白其他方面。
本申請描述了多個實施例,但是該描述是示例性的,而不是限制性的,並且對於本領域的普通技術人員來說顯而易見的是,在本申請所描述的實施例包含的範圍內可以有更多的實施例和實現方案。
本申請的描述中,“示例性的”或者“例如”等詞用於表示作例子、例證或說明。本申請中被描述為“示例性的”或者“例如”的任何實施例不應被解釋為比其他實施例更優選或更具優勢。本文中的“和/或”是對關聯物件的關聯關係的一種描述,表示可以存在三種關係,例如,A和/或B,可以表示:單獨存在A,同時存在A和B,單獨存在B這三種情況。“多個”是指兩個或多於兩個。另外,為了便於清楚描述本申請實施例的技術方案,採用了“第一”、“第二”等字樣對功能和作用基本相同的相同項或相似項進行區分。本領域技術人員可以理解“第一”、“第二”等字樣並不對數量和執行次序進行限定,並且“第一”、“第二”等字樣也並不限定一定不同。
在描述具有代表性的示例性實施例時,說明書可能已經將方法和/或過程呈現為特定的步驟序列。然而,在該方法或過程不依賴於本文所述步驟的特定順序的程度上,該方法或過程不應限於所述的特定順序的步驟。如本領域普通技術人員將理解的,其它的步驟順序也是可能的。因此,說明書中闡述的步驟的特定順序不應被解釋為對申請專利範圍的限制。此外,針對該方法和/或過程的申請專利範圍不應限於按照所寫循序執行它們的步驟,本領域技術人員可以容易地理解,這些順序可以變化,並且仍然保持在本申請實施例的精神和範圍內。
本申請實施例提出的局部光照補償方法、視訊編解碼方法可以應用於各種視訊編解碼標準,例如:H.264 / Advanced Video Coding (高級視訊編碼,AVC ), H.265 / High Efficiency Video Coding (高效視訊編碼,HEVC), H.266 / Versatile Video Coding (多功能視訊編碼,VVC ) ,AVS(Audio Video coding Standard,音視訊編碼標準),以及MPEG(Moving Picture Experts Group,動態圖像專家組)、AOM(開放媒體聯盟,Alliance for Open Media)、JVET (聯合視訊專家組,Joint Video Experts Team)制訂的其他標準以及這些標準的拓展,或任何自訂的其他標準等。
圖1A是可用於本申請實施例的一種視訊編解碼系統的框圖。如圖所示,該系統分為編碼端裝置1和解碼端裝置2,編碼端裝置1產生碼流。解碼端裝置2可對碼流進行解碼。解碼端裝置2可經由鏈路3從編碼端裝置1接收碼流。鏈路3包括能夠將碼流從編碼端裝置1移動到解碼端裝置2的一個或多個媒體或裝置。在一個示例中,鏈路3包括使得編碼端裝置1能夠將碼流直接發送到解碼端裝置2的一個或多個通訊媒體。編碼端裝置1根據通訊標準(例如無線通訊協定)來調製碼流,將經調製的碼流發送到解碼端裝置2。所述一個或多個通訊媒體可包含無線和/或有線通訊媒體,可形成分組網路的一部分。在另一示例中,也可將碼流從輸出介面15輸出到一個儲存裝置,解碼端裝置2可經由資料流或下載從該儲存裝置讀取所儲存的資料。
如圖所示,碼端裝置1包含資料來源11、視訊編碼裝置13和輸出介面15。資料來源11包括視訊捕獲裝置(例如攝像機)、含有先前捕獲的資料的存檔、用以從內容提供者接收資料的饋入介面,用於產生資料的電腦圖形系統,或這些來源的組合。視訊編碼裝置13對來自資料來源11的資料進行編碼後輸出到輸出介面15,輸出介面15可包含調節器、數據機和發射器中的至少之一。解碼端裝置2包含輸入介面21、視訊解碼裝置23和顯示裝置25。輸入介面21包含接收器和數據機中的至少之一。輸入介面21可經由鏈路3或從儲存裝置接收碼流。視訊解碼裝置23對接收的碼流進行解碼。顯示裝置25用於顯示解碼後的資料,顯示裝置25可以與解碼端裝置2的其他裝置集成在一起或者單獨設置,顯示裝置25對於解碼端來說是可選的。在其他示例中,解碼端可以包含應用解碼後資料的其他裝置或設備。
基於圖1A所示的視訊編解碼系統,可以使用各種視訊編解碼方法來實現視訊壓縮和解壓縮。
圖1B為可用於本申請實施例的一示例性的視訊編碼裝置的框圖。如圖所示,該視訊編碼裝置1000包含預測單元1100、劃分單元1101、殘差產生單元1102(圖中用劃分單元1101後的帶加號的圓圈表示)、變換處理單元1104、量化單元1106、反量化單元1108、反變換處理單元1110、重建單元1112(圖中用反變換處理單元1110後的帶加號的圓圈表示)、濾波器單元1113、解碼圖像緩衝器1114以及熵編碼單元1115。其中,預測單元1100包含幀間預測單元1121和幀內預測單元1126,解碼圖像緩衝器1114也可以稱為已解碼圖像緩衝器、解碼圖片緩衝器、已解碼圖片緩衝器等。視訊編碼器20也可以包含比該示例更多、更少或不同功能元件,如在某些情況下可以取消變換處理單元1104、反變換處理單元1110等。
劃分單元1101與預測單元1100配合將接收的視訊資料劃分為切片(Slice)、編碼樹單元(CTU:Coding Tree Unit)或其它較大的單元。劃分單元1101接收的視訊資料可以是包括I幀、P幀或B幀等視訊幀的視訊序列。
預測單元1100可以將CTU劃分為編碼單元(CU:Coding Unit),對CU執行幀內預測編碼或幀間預測編碼。對CU做幀內預測和幀間預測時,可以將CU劃分為一個或多個預測單元(PU:prediction unit)。
幀間預測單元1121可對PU執行幀間預測,產生PU的預測資料,所述預測資料包括PU的預測塊、PU的運動資訊和各種語法元素。幀間預測單元1121可以包括運動估計(ME: motion estimation)單元和運動補償(MC: motion compensation)單元。運動估計單元可以用於運動估計以產生運動向量,運動補償單元可以用於根據運動向量獲得或生成預測塊。
幀內預測單元1126可對PU執行幀內預測,產生PU的預測資料。PU的預測資料可包含PU的預測塊和各種語法元素。
殘差產生單元1102可基於CU的原始塊減去CU劃分成的PU的預測塊,產生CU的殘差塊。
變換處理單元1104可將CU劃分為一個或多個變換單元(TU:Transform Unit),預測單元和變換單元的劃分可以不同。TU關聯的殘差塊是CU的殘差塊劃分得到的子塊。透過將一種或多種變換應用於TU關聯的殘差塊來產生TU關聯的係數塊。
量化單元1106可基於選定的量化參數對係數塊中的係數進行量化,透過調整量化參數(QP:Quantizer Parameter)可以調整對係數塊的量化程度。
反量化單元1108和反變換單元1110可分別將反量化和反變換應用於係數塊,得到TU關聯的重建殘差塊。
重建單元1112可將所述重建殘差塊和預測單元1100產生的預測塊相加,產生重建圖像。
濾波器單元1113對重建圖像執行環路濾波,將濾波後的重建圖像儲存在解碼圖像緩衝器1114中作為參考圖像。幀內預測單元1126可以從解碼圖像緩衝器1114中提取PU鄰近的塊的參考圖像以執行幀內預測。幀間預測單元1121可使用解碼圖像緩衝器1114緩存的上一幀的參考圖像對當前幀圖像的PU執行幀間預測。
熵編碼單元1115可以對接收的資料(如語法元素、量化後的係數塊、運動資訊等)執行熵編碼操作。
圖1C為可用於本申請實施例的一示例性的視訊解碼裝置的框圖。如圖所示,視訊解碼裝置101包含熵解碼單元150、預測單元152、反量化單元154、反變換處理單元155、重建單元158(圖中用反變換處理單元155後的帶加號的圓圈表示)、濾波器單元159,以及解碼圖像緩衝器160。在其它實施例中,視訊解碼器30可以包含更多、更少或不同的功能元件,如在某些情況下可以取消反變換處理單元155等。
熵解碼單元150可對接收的碼流進行熵解碼,提取語法元素、量化後的係數塊和PU的運動資訊等。預測單元152、反量化單元154、反變換處理單元155、重建單元158以及濾波器單元 159均可基於從碼流提取的語法元素來執行相應的操作。
反量化單元154可對量化後的TU關聯的係數塊進行反量化。
反變換處理單元155可將一種或多種反變換應用於反量化後的係數塊以便產生TU的重建殘差塊。
預測單元152包含幀間預測單元162和幀內預測單元164。如果PU使用幀內預測編碼,幀內預測單元164可基於從碼流解碼出的語法元素確定PU的幀內預測模式,根據確定的幀內預測模式和從解碼圖像緩衝器160獲取的PU鄰近的已重建參考資訊執行幀內預測,產生PU的預測塊。如果PU使用幀間預測編碼,幀間預測單元162可基於PU的運動資訊和相應的語法元素來確定PU的一個或多個參考塊,基於從解碼圖像緩衝器160獲取的所述參考塊來產生PU的預測塊。
重建單元158可基於TU關聯的重建殘差塊和預測單元152產生的PU的預測塊,得到重建圖像。
濾波器單元159可對重建圖像執行環路濾波,濾波後的重建圖像儲存在解碼圖像緩衝器160中。解碼圖像緩衝器 160可提供參考圖像以用於後續運動補償、幀內預測、幀間預測等,也可將濾波後的重建圖像作為已解碼視訊資料輸出,在顯示裝置上的呈現。
基於上述視訊編碼裝置和視訊解碼裝置,可以執行以下基本的編解碼流程,在編碼端,將一幀圖像劃分成塊,對當前塊進行幀內預測或幀間預測或其他演算法產生當前塊的預測塊,使用當前塊的原始塊減去預測塊得到殘差塊,對殘差塊進行變換和量化得到量化係數,對量化係數進行熵編碼生成碼流。在解碼端,對當前塊進行幀內預測或幀間預測產生當前塊的預測塊,另一方面對解碼碼流得到的量化係數進行反量化、反變換得到殘差塊,將預測塊和殘差塊相加得到重建塊,重建塊組成重建圖像,基於圖像或基於塊對重建圖像進行環路濾波得到解碼圖像。編碼端同樣透過和解碼端類似的操作以獲得解碼圖像,編碼端獲得的解碼圖像通常也叫做重建圖像。解碼圖像可以作為對後續幀進行幀間預測的參考幀。編碼端確定的塊劃分資訊,預測、變換、量化、熵編碼、環路濾波等模式資訊和參數資訊如果需要可以寫入碼流。解碼端透過解碼碼流或根據已有資訊進行分析,確定與編碼端相同的塊劃分資訊,預測、變換、量化、熵編碼、環路濾波等模式資訊和參數資訊,從而保證編碼端獲得的解碼圖像和解碼端獲得的解碼圖像相同。
以上雖然是以基於塊的混合編碼框架為示例,但本申請實施例並不局限於此,隨著技術的發展,該框架中的一個或多個模組,及該流程中的一個或多個步驟可以被替換或優化。
本文中,當前塊(current block)可以是當前圖像中的當前編碼單元(CU)、當前預測單元(PU)等塊級編碼單位。
編碼端在幀內預測時,通常借助各種角度模式與非角度模式對當前塊進行預測得到預測塊;根據預測塊與原始塊計算得到的率失真資訊,為當前塊選中最優的幀內預測模式,將該幀內預測模式編碼經碼流傳輸到解碼端。解碼端透過解碼得到為當前選中的該幀內預測模式,按照該幀內預測模式對當前塊進行幀內預測。經過歷代的數位視訊編解碼標準發展,非角度模式保持相對穩定,有均值模式(即DC模式)和平面模式(即Planar模式);角度模式則隨著數位視訊編解碼標準的演進而不斷增加,以國際數位視訊編碼標準H系列為例,H.264/AVC標準僅有8種傳統角度預測模式和1種傳統非角度預測模式;H.265/HEVC擴展到33種傳統角度預測模式和2種傳統非角度預測模式。在H.266/VVC中,傳統幀內預測模式Planar模式,DC模式和65種角度模式,如圖2所示。其中,DC模式適用於大面積平坦區域,其預測值透過計算左邊和/或上邊的參考像素的平均值獲得。Planar平面模式適用於像素漸變的情況,即適用於像素值緩慢變化的區域。
如果直接對當前塊的幀內預測模式進行編碼,67種模式需要7bit來編碼,資料量很大。根據統計特性,距離當前塊越近的像素區域往往越容易與當前塊選中同樣的幀內預測模式,根據這一特性,在HEVC、VVC以及增強的壓縮模型(ECM:Enhanced Compression Model)中都採納了最可能模式(MPM:most probable mode)技術。ECM是基於VTM-10.0參考軟體,集成各類新工具,從而進一步挖掘編解碼性能的參考軟體。
MPM先構建MPM列表,在MPM列表中填充最有可能被當前塊選中的6種幀內預測模式。如果為當前塊選中的幀內預測模式在MPM清單中,只需要編碼其索引號(只需要3bit)即可,如果當前塊選中的幀內預測模式不在MPM清單中而是在61個非MPM(non-MPM)模式中,則在熵編碼階段使用截斷二元碼(Truncated Binary Code ,TBC)編碼該幀內預測模式。
在VVC內,無論是否應用多參考行(MRL:Multiple reference line)和幀內子塊劃分(ISP :Intra Sub-Partitions), MPM清單均有6種預測模式。而ECM中的MPM分為MPM和第二MPM(Secondary MPM),MPM和Secondary MPM分別使用長度為6與長度為16的列表。MPM清單的6個模式中,Planar模式始終填充在MPM中的第一個位置,其餘5個位置的填充由下面三步依次進行,直到填充滿5個位置為止,多出來的模式將自動進入Secondary MPM。
第一步,依次填充當前塊周圍鄰近的5個位置上的預測塊使用的幀內預測模式;如圖3所示,該5個位置依次包括當前塊左上(AL),上(A),右上(AR),左(L)及左下(BL)位置。
第二步,基於當前塊周圍重建像素使用梯度長條圖匯出的模式;
第三步,與第一步選中的角度模式的角度相近的角度模式。
Secondary MPM清單可以由除MPM中的幀內預測模式以外的一些主要角度模式構成。
由於MPM標誌(mpm_flag)的編解碼順序在MRL模式之後, ECM中MPM的編解碼需依賴於MRL標識位元,在當前塊不使用MRL模式時,需解碼MPM標誌以確定當前塊是否使用MPM,而在當前塊使用MRL模式時,無需解碼MPM標誌,預設當前塊使用MPM。
下表是一個MPM相關語法元素的示例:
… … | 說明: |
if(!mrl_flag){ | 不使用MRL模式即不使用拓展參考行? |
mpm_flag | 成立則解碼MPM使用標識 |
} | |
else{ | 使用拓展參考行 |
mpm_flag = 1 | 則初始MPM使用標識為1即預設為使用 |
} | |
if(mpm_flag){ | |
mpm_idx = 0 | |
if(multiRefIdx == 0){ | |
mpm_idx = decodeBin () | 解碼一個基於上下文模型的二元標識 |
} | |
else{ | |
mpm_idx = 1 | |
} | |
if(mpm_idx > 0){ | |
mpm_idx += decodeBin () | 解碼一個基於上下文模型的二元標識 |
if(mpm_idx > 1) | |
mpm_idx += decodeEPBin () | 解碼一個等概率的二元標識 |
if(mpm_idx > 2) | |
mpm_idx += decodeEPBin () | 解碼一個等概率的二元標識 |
if(mpm_idx > 3) | |
mpm_idx += decodeEPBin () | 解碼一個等概率的二元標識 |
} | |
} | |
… … | 解碼不是MPM的部分 |
基於範本的幀內模式推導(TIMD:Template based intra mode derivation)是一種針對亮度幀的幀內預測模式,TIMD模式由MPM清單中候選的幀內預測模式和範本(Template)區域(簡稱範本)生成。在ECM中,如圖4所示,當前塊(如當前CU)11的左側相鄰區域和上方相鄰區域構成當前塊的範本區域12。其中的左側相鄰區域稱為左側範本區域(簡稱左範本),上方相鄰區域稱為上方範本區域或上側範本區域(簡稱上範本)。
如圖所示,範本區域112外側(指左側和上側)設置有範本參考(reference of the template)區域113,各區域示例性的尺寸和位置如圖所示。在一示例中,左範本的寬度L1和上範本的高度L2均為4。範本參考區域113可以是範本區域上方相鄰的一行或左側相鄰的一列。
TIMD假定當前塊和當前塊的範本區域的分佈特性一致,以範本參考區域的重建值作為參考行的重建值,遍歷MPM和Secondary MPM中的所有幀內預測模式對範本區域進行預測,得到預測結果。再計算範本區域上的重建值與每種模式的預測結果之間的誤差,用誤差變換絕對值和(SATD:Sum of absolute transformed differences)表示,選出SATD最小即最優的幀內預測模式,將該幀內預測模式作為當前塊的TIMD模式。解碼端可以透過相同的推導方式推導TIMD模式。如果序列允許使用TIMD,每個當前塊需要一個標誌位元表示是否使用TIMD。如果為當前塊選中的幀內預測模式為TIMD模式,則當前塊使用TIMD模式進行預測,且剩餘的與幀內預測相關的語法元素如ISP、MPM等的解碼過程可以跳過,從而大幅降低模式的編碼位元。
在求得範本區域的重建值與每種模式預測結果(範本區域的預測值)之間的SATD之後,可根據以下方式確定最終使用的TIMD模式:
假設mode1和mode2為MPM中用於幀內預測的兩種角度模式,mode1為SATD最小的角度模式,其SATD為cost1;mode2為SATD次小的角度模式,其SATD為cost2:
當cost1×2 ⩽cost2時,將mode1作為當前塊的TIMD模式;
當cost1×2 >cost2時,將對mode1和mode2的預測結果進行加權的預測模式作為當前塊的TMID模式,也稱TIMD融合(fusion)模式。
加權的方法和權重如下式所示:
其中,
為當前塊使用TIMD融合模式的預測結果,
為當前塊使用mode1的預測結果,
為當前塊使用mode2的預測結果,w1和w2為根據cost1和cost2計算得到的權重。
在HEVC中,幀內預測使用距離當前塊最近的上一行和左一列作為參考進行預測,如果這一行和一列的重建值與原始像素值有著較大的誤差,那麼當前塊的預測品質也會有很大的影響。為了解決這一問題,VVC中採納了MRL幀內預測技術,除了可以使用最近一行參考像素即索引為0的參考行 (Reference line0)之外,VVC還可以使用索引為1的參考行 (Reference line1)和索引為2的參考行 (Reference line2)作為擴展的參考行進行幀內預測。為了減小編碼複雜度,MRL僅在MPM中的非planar模式上使用。編碼端對每個角度模式進行預測時,要將這三個參考行都嘗試過,透過率失真優化,為當前塊選中率失真代價(RD Cost)最小的一個參考行,選中的參考行的索引被編碼發送到解碼端。解碼端解碼得到參考行的索引,再根據參考行的索引確定為當前塊選中的參考行,用於對當前塊的預測。
圖5所示的示例中,示出了當前塊的4個參考行,包括與當前塊相鄰的參考行0(reference line0)221即索引為0的參考行;與當前塊間隔1行的參考行1(reference line1)222即索引為1的參考行;與當前塊間隔2行的參考行2(reference line2)223即索引為2的參考行;以及,與當前塊間隔3行的參考行3(reference line3)224即索引為3的參考行。當前塊的參考行可以有更多,即可以有索引為4以上的參考行。在預測時可以只使用參考行部分的重建值。本文中,參考行的索引均按照圖5所示的方式編號。
本文中,參考行雖然稱之為“行”,但這是為了表述方便,一個參考行實際上包括一行和一列,一般情況下,預測時使用的參考行的重建值也包括一行和一列的重建值,這與業界通常的描述方法是一樣的。
在一個示例中,當前塊的範本區域設置在索引為0的參考行上,則索引為0的參考行稱之為範本區域所在的參考行,索引為1至3的參考行稱之為位於範本區域外側的參考行。如果當前塊的範本區域設置在索引為0和1的參考行上,則索引為0和1的參考行是範本區域所在的參考行,而索引為2和3的參考行是範本區域外側的參考行。本文中,當前塊的參考行包括索引為0的參考行以及索引大於0的參考行,索引大於0的參考行均稱為擴展參考行。範本區域所在的參考行為索引為0的參考行的情況下,所有擴展參考行均為範本區域外側的參考行。範本區域所在的參考行有多個的情況下,範本區域所在的參考行包括擴展參考行。
在ECM中,多參考行相關的解碼方式如下表1和表2所示。其中表1用於當前塊不使用TIMD的情況,表2用於當前塊使用TIMD的情況。
表1
… … | |
if( !sps_mrl_flag || cu.timd || cu.dimd || isFirstLineOfCtu || cu.bdpcmMode || !cu.Y().valid){ | 如果序列級標識不允許使用mrl 或當前編碼單元選擇使用timd 或當前編碼單元選擇使用dimd 或當前編碼單元位於編碼樹單元的第一行 或當前編碼單元選擇使用bdpcm 或當前編碼單元不包含亮度分量 |
multiRefIdx = 0 | 則不使用mrl |
} | |
else{ | 否則(使用mrl): |
idx += decodeBin() | 解碼一個基於上下文模型的二元標識 |
if(idx > 0) | |
idx += decodeBin() | 解碼一個基於上下文模型的二元標識 |
if(idx > 1) | |
idx += decodeBin () | 解碼一個基於上下文模型的二元標識 |
if(idx > 2) | |
idx += decodeBin () | 解碼一個基於上下文模型的二元標識 |
if(idx > 3) | |
idx += decodeBin () | 解碼一個基於上下文模型的二元標識 |
if(idx > 4) | |
idx += decodeBin () | 解碼一個基於上下文模型的二元標識 |
multiRefIdx = MULTI_REF_LINE_IDX[idx] | 獲取multiRefIdx |
} |
MRL索引可以採用基於上下文模型的一元截斷碼編碼,編碼後得到多個基於上下文模型的二元標識,二元標識也可以稱為二元標識位元、二進位符號、二進位位元等。
ECM中,MRL模式可以使用更多的參考行,為了編碼為當前塊選中的參考行,將多個候選的參考行的索引填入一個清單。文中,將該清單稱為多參考行索引清單,簡寫為MRL索引清單,但也可以稱為多參考行列表,候選參考行清單,參考行索引清單等。在當前塊不使用TIMD的情況下,MRL索引清單的長度為6,即共有6個位置,可填入6個參考行的索引,這6個參考行的索引及其順序是固定的,依次為0, 1, 3, 5, 7, 12,可以用下式表示:MULTI_REF_LINE_IDX[6] = { 0, 1, 3, 5, 7, 12 }。該多參考行索引清單中,第1個位置填入的索引為0,是距離當前塊最近的參考行的索引,第2個位置至第6個位置填入的索引分別為1,3,5,7,12,是按照到當前塊的距離從近到遠的順序排列的5個擴展參考行的索引。
為當前塊選中的參考行在MRL索引清單中的情況下,使用多參考行索引(multiRefIdx)表示為當前塊選中的參考行在MRL索引清單中的位置,編碼多參考行索引即可表示選中的參考行。以MRL索引清單{ 0, 1, 3, 5, 7, 12 }為例,其中第1個位置至第6個位置的索引分別為0至5。假定為當前塊選中的是索引為0的參考行,而索引為0的參考行在MRL索引清單的第1個位置,則多參考行索引為0。假定為當前塊選中的是索引為7的參考行,索引為7的參考行在MRL索引清單的第5個位置,則多參考行索引為4,其他情況依此類推。
多參考行索引可以使用基於上下文模型的一元截斷碼等方式編碼。多參考行索引的值越小,碼長越少,解碼越快。
MRL模式也可以與TIMD模式同時使用,在使用TIMD的情況下,MRL索引清單長度為3,可填入3個參考行的索引且索引之間的順序固定,表示為MULTI_REF_LINE_IDX[3] = { 0, 1, 3 }。相應的多參考行的編解碼方式如表2所示:
表2
… … | |
if( (!sps_mrl_flag || cu.dimd || isFirstLineOfCtu || cu.bdpcmMode || !cu.Y().valid)){ | 如果序列級標識不允許使用mrl 或當前編碼單元選擇使用dimd 或當前編碼單元位於編碼樹單元的第一行 或當前編碼單元選擇使用bdpcm 或當前編碼單元不包含亮度分量 |
multiRefIdx = 0 | 則不使用timd模式下的mrl |
} | |
else if(cu.timd){ | 如果當前編碼單元選擇使用timd |
idx += decodeBin () | 解碼一個基於上下文模型的二元標識 |
if(idx > 0) | |
idx += decodeBin () | 解碼一個基於上下文模型的二元標識 |
multiRefIdx = MULTI_REF_LINE_IDX[idx] | 獲取multiRefIdx |
} |
為了方便理解,上文將MRL在使用TIMD和不使用TIMD的情況下分為了兩張表進行舉例,但這兩張表也可以合為一張表。
在不同的標準中,如MPM那樣,利用當前塊周圍的塊匯出一個最可能模式的清單的技術可能具有不同的名稱,例如,在AV2(AVM)中稱為自我調整幀內模式編碼(AIMC:Adaptive Intra Mode Coding), 在AVS3中,在螢幕內容編碼情況下,稱為基於頻數資訊的幀內編碼 (FIMC:Frequency-based Intra Mode Coding)。在非螢幕內容編碼情況下,類似MPM的技術常開。而如MRL那樣,利用多參考行進行幀內預測技術,在AV2(AVM)中稱為用於幀內預測的多參考行選擇 (MRLS: Multiple reference line selection for intra prediction)。 但這僅僅是名稱的不同,本實施例使用MPM、MRL等術語時,同樣應覆蓋到其他標準中的這些實質相同的技術。
在ECM中,當所選模式不是TIMD時,MRL技術的使用與MPM中的非planar模式捆綁使用。最多5個擴展參考行和5個MPM中的幀內預測模式進行組合,共25種組合。對於這25種組合,最多需要使用3個等概率的二元標識位元(MPM的語法元素)和6個上下文模型的二元標識位元(1個是MPM的語法元素,5個是MRL的語法元素),一共需要9個二元標識位元,編解碼的代價較大。
如果當前塊上方距離CTU的上邊界不足13行,則無法使用索引為12的參考行,此時MPM中的5種幀內預測模式和MRL中的4條可用的擴展參考行共20種組合。如果當前塊上方距離CTU的上邊界不足8行,則無法使用到索引為7的參考行,此時MPM中的5種幀內預測模式和MRL中的3條可用的擴展參考行共15種組合。如果當前編碼塊上方距離CTU的上邊界不足6行,則無法使用索引5的參考行,此時MPM中的5種幀內預測模式和MRL中的4條可用的擴展參考行共10種組合。
這意味著,儘管編解碼的標識位元支援了25種MRL中的擴展參考行和MPM中的幀內預測模式的組合,但在當前塊上方的參考行數量不夠的情況下,有些組合不能使用,仍然需要額外的標識去支援這些組合,MPM和MRL中使用的9個二元標識位元並沒有得到充分的利用,編碼性能有待提升。
雖然對當前塊進行幀內預測時,需要將擴展參考行和幀內預測模式組合,但在編解碼時,上述方法均是分別構建MRL索引清單和MPM清單,根據為當前塊選中的參考行和幀內預測模式,分別確定當前塊的多參考行索引和MPM索引,並對多參考行索引和MPM索引分別編碼和解碼,使解碼端能夠確定為當前塊選中的參考行和幀內預測模式。
與上述方法不同的是,本申請實施例提供了一種多參考行幀內預測模式,簡寫為MRL_IP(Multiple reference line & intra_ intra prediction)模式,是一種對擴展參考行與幀內預測模式的組合進行編解碼的方式。
本申請實施例的視訊編碼方法如圖6所示,包括:
步驟110,構建當前塊的多參考行幀內預測MRL_IP模式的候選清單,所述候選列表中填入有當前塊候選的擴展參考行與幀內預測模式的組合;
步驟120,透過率失真優化,為當前塊選中一種參考行和幀內預測模式的組合用於幀內預測;
參考行包括索引為0的參考行和擴展參考行,為當前塊選中的一種參考行和幀內預測模式的組合可能是索引為0的參考行與一種幀內預測模式的組合,也可能是一個擴展參考行與一種幀內預測模式的組合。
步驟130,在當前塊的MRL_IP模式的編碼條件滿足時,編碼當前塊的MRL_IP模式標誌以表示當前塊使用MRL_IP模式,編碼當前塊的MRL_IP模式索引以表示所述選中的組合在所述候選清單中的位置;
其中,所述編碼條件至少包括:所述選中的組合在所述候選清單中。
本文中,候選列表中填入的是當前塊候選的擴展參考行與幀內預測模式的組合,這意味著候選清單中的組合需要參與當前塊的率失真優化,即參與透過率失真代價來選擇當前塊預測模式的模式選擇過程。使得候選清單中的組合均存在被選中的可能。
本文中,N,M,K這些表示個數的參數均為正整數,無需另行說明。
本申請實施例所構建的MRL_IP模式的候選清單,填入的是當前塊候選的擴展參考行與幀內預測模式的組合,不再是單一的候選擴展參考行的列表或者候選的幀內預測模式的清單。在為當前塊選中的參考行和幀內預測模式的組合在該候選清單中(此時為當前塊選中的是擴展參考行),也即選中的組合是該候選清單中的一種組合等編碼條件滿足時,編碼當前塊的MRL_IP模式標誌以表示當前塊使用MRL_IP模式,編碼當前塊的MRL_IP模式索引以表示所述選中的組合在所述候選清單中的位置;解碼端根據MRL_IP模式標誌和MRL_IP模式索引可確定為當前塊選中的擴展參考行和幀內預測模式。本實施例的組合編解碼方式可以減少編碼代價,提升編碼性能。
在本申請一示例性的實施例中,所述MRL_IP模式的候選清單是按照本申請實施例的方法構建的基於範本的多參考行幀內預測模式的候選清單,文中將“基於範本的多參考行幀內預測模式”稱為TMRL_IP模式,簡寫為TMRL模式。TMRL_IP模式是基於範本對組合進行預測排序的MRL_IP模式,而MRL_IP模式是將當前塊候選的擴展參考行與幀內預測模式的組合填入一個候選清單進行編解碼的模式,並不限於TMRL_IP模式。
TMRL_IP模式是根據當前塊的N個擴展參考行和M個幀內預測模式得到的N×M種組合,分別對當前塊的範本區域進行預測,並計算範本區域的重建值和預測得到的預測值之間的誤差;按照誤差從小到大的順序將對應的K種組合填入當前塊的TMRL_IP模式的候選清單,1⩽K⩽ N×M,K為設定值。在一個示例中,基於ECM中擴展參考行與幀內預測模式的25種組合分別對範本區域進行預測,根據所述誤差的昇冪對該25種組合排序,將誤差最小也即最可能選中的12種組合填入TMRL_IP模式的候選例表,使得TMRL_IP模式索引可以使用更少的編碼位元完成編碼。即使擴展參考行{1,3,5,7,12}中有一部分(如索引為7和12的擴展參考行)在CTU邊界之外,也可以基於15種組合排序,將最有可能選中的12種組合加入候選清單,MRL_IP模式索引的編碼位元仍然可以得到充分有效地利用。而按照誤差昇冪排序,使得更有可能被選中用來預測的參考行排和預測模式被留在候選清單中,越可能被選中的組合排在清單越靠前的位置使得編碼代價降低。
TMRL_IP模式的候選清單的創建將在下文中加以更詳細的描述。
在本申請另一示例性的實施例中,所述構建當前塊的多參考行幀內預測MRL_IP模式的候選清單並不基於範本進行排序,而是採用其他的方式創建,例如,基於對大量樣本資料的統計結果,將被選中的概率最高的參考行和幀內預測模式的組合填入MRL_IP模式的候選清單。MRL_IP模式的候選清單可以只填入擴展參考行和幀內預測模式的組合但並不是必須如此。該候選清單中也可以填入索引為0的參考行與其他幀內預測模式的組合,如果選中的組合是候選清單中索引為0的參考行與幀內預測模式的組合,也可以透過編碼MRL_IP模式索引來指示選中的該組合。
在本申請一示例性的實施例中,所述編碼條件還包括:當前塊不使用基於範本的幀內預測模式匯出TIMD;所述方法還包括:
在當前塊使用TIMD的情況下,跳過當前塊的MRL_IP模式標誌和MRL_IP模式索引的編碼;
在當前塊不使用TIMD但所述選中的組合不在所述候選清單中的情況下,編碼當前塊的MRL_IP模式標誌以表示當前塊不使用MRL_IP模式,跳過當前塊的MRL_IP模式索引的編碼。
本實施例是基於TIMD模式在MRL_IP模式之前編解碼的情況。如果當前塊使用TIMD模式,就無需再使用MRL_IP模式,故跳過MRL_IP模式標誌和MRL_IP模式索引的編碼。而如果當前塊不使用TIMD模式,就存在為當前塊選中的組合在MRL_IP模式的候選清單中,或者不在MRL_IP模式的候選清單中這兩種情況,如果選中的組合不在候選清單中。需要編碼MRL_IP模式標誌表示當前塊不使用MRL_IP模式,並跳過MRL_IP模式索引的編碼。如果選中的組合在候選清單中,則MRL_IP模式標誌和MRL_IP模式索引均需要進行編碼。
在當前塊不使用TIMD的情況下,本實施例提供的MRL_IP模式標誌和MRL_IP模式索引可以替代原有的多參考行索引multiRefIdx。而在當前塊使用TIMD的情況下,仍然可使用多參考行索引來表示選中的參考行,並對該多參考行索引進行編碼。
在本申請一示例性的實施例中,所述構建當前塊的MRL_IP模式的候選清單,包括:在設定的當前塊允許使用MRL_IP模式的條件均成立的情況下,才構建所述候選列表,所述允許使用MRL_IP模式的條件包括以下任意一種或更多種:
條件1,當前塊為亮度幀中的塊;即MRL_IP模式只用於亮度幀(即亮度圖像),但不本申請不局限於此;
條件2,當前塊不位於編碼樹單元CTU的上邊界;如位於CTU上邊界,當前塊上方無參考行可使用,故本實施例將不位於CTU上邊界作為允許使用MRL_IP模式的條件;.
條件3,當前塊允許使用多參考行MRL,即允許使用多參考行模式時才允許使用MRL_IP模式。
條件4,當前塊的尺寸不大於可使用MRL_IP模式的當前塊的最大尺寸;該最大尺寸可以是預設的。較大的塊一般比較平緩,不太容易有角度細節,對這樣的大塊,可以限制MRL_IP模式的使用。
步驟5,當前塊的長寬比滿足使用MRL_IP模式對當前塊長寬比的要求。例如當前塊長寬比不大於預設值時,才允許使用MRL_IP模式。
在本申請一示例性的實施例中,所MRL_IP模式索引採用哥倫布-萊斯編碼方法進行編碼。採用哥倫布萊斯編碼可以將候選的組合更合理的歸類成碼字長度不同的類別進行編碼和解碼,提升編碼效率。
以K=12,除數為4為例,假定待編碼數為n,
,按以下公式計算首碼
和尾碼
:
, 尾碼:
。
首碼prefix採用基於上下文模型的截斷一元碼(truncated unary)編解碼每個二元標識位元,首碼的取值與輸出位元如下表,
Prefix | 輸出位元 |
0 | 0 |
1 | 10 |
2 | 11 |
尾碼suffix採用等概率的截斷二進位(truncated binary)碼編解碼每個二元標識位元,尾碼的取值與輸出位元如下表所示:
suffix | 輸出位元 |
0 | 00 |
1 | 01 |
2 | 10 |
3 | 11 |
在K值不同時,可以根據K值大小的不同調整prefix和suffix的計算方式,如設定不同的除數。雖然上述示例中,prefix採用基於上下文模型的截斷一元碼而suffix採用等概率的截斷二進位碼,但在其他示例中,也可以是prefix採用等概率的截斷一元碼而suffix採用基於上下文模型的的截斷二進位碼,等等,本申請對此不做具體限制,。
在本申請一示例性的實施例中,在當前塊的MRL_IP模式的編碼條件滿足的情況下,所述方法還包括:跳過以下任意一種或更多種模式的語法元素的編碼:MPM模式,幀內子塊劃分ISP模式、多變換選擇MTS模式、低頻不可分割變換LFNST模式,TIMD模式。
例如,在MRL_IP模式放在TIMD模式之前編解碼時,此時MRL_IP模式的編碼條件不再包括當前塊不使用TIMD,在當前塊使用MRL_IP模式時,當前塊不允許使用TIMD,可跳過TIMD模式語法元素的編碼。
例如,在當前塊使用MRL_IP模式的情況下,透過MRL_IP模式標誌和MRL_IP模式索引可以同時表示當前塊選中的參考行和幀內預測模式,此時無需要再對MPM相關語法元素進行編解碼。
例如,在特定變換模式下,可以限制MRL_IP模式不與多變換選擇(MTS:Multiple transform selection)模式和/或低頻不可分割變換(LFNST:Low frequency non-separable transform)模式同時使用。
本申請一實施例提供了一種TMRL_IP模式候選清單的構建方法,如圖7所示,包括:
步驟210,根據當前塊的N個擴展參考行和M個幀內預測模式得到擴展參考行與幀內預測模式的N×M種組合,N⩾1,M⩾1,N×M⩾2;
步驟220,根據所述N×M種組合分別對當前塊的範本區域進行預測,並計算所述範本區域的重建值和預測得到的預測值之間的誤差;
本步驟的誤差可以用絕對誤差和(SAD:the sum of absolute difference)表示,或用誤差變換絕對值和(SATD:Sum of Absolute Transformed Difference)表示,但不局限於此,也可以用差值的平方和(SSD:Sum of Squared Difference)、平均絕對差值(MAD:Mean Absolute Difference)、平均平方誤差(MSE:Mean Squared Error)等表示。
步驟230,按照所述誤差從小到大的順序,將所述誤差對應的K種組合填入當前塊基於範本的多參考行幀內預測TMRL_IP模式的候選清單,1⩽K⩽ N×M。
本實施例在為當前塊構建TMRL_IP模式的候選清單時,根據N個擴展參考行和M個幀內預測模式得到N×M種組合,根據N×M種組合分別對當前塊的範本區域進行預測,計算範本區域的重建值和預測值之間的誤差,按照誤差從小到大的順序將對應的K種組合填入候選清單。本實施例創建的候選列表可以實現擴展參考行與幀內預測模式的組合編碼,提升編碼效率。而且透過使用不同組合對範本區域的預測和對誤差的排序,能夠基於當前塊和當前塊範本區域在分佈特性上的相似性,從N×M種組合中選出被選中可能性較大的K種組合,且將被選中可能性大的組合排在候選清單的前面,使得編碼時被選中的組合的TMRL_IP模式索引較小,減少實際編碼代價。
在本申請一示例性的實施例中,所述當前塊的範本區域設置在距離當前塊最近的一個參考行上;或者,所述當前塊的範本區域設置在距離當前塊最近的多個參考行上,所述N個擴展參考行是位於所述範本區域外側的擴展參考行。圖8A中,當前塊的範本區域設置在索引為0的參考行30上,在構建TMRL_IP模式的候選清單中,是從預定義的索引為{1,3,5,7,12}的擴展參考行中選擇可以使用的N個擴展參考行。如果當前塊上方到CTU邊界之間有13個以上的參考行,則選擇索引為{1,3,5,7,12}的5個擴展參考行參與組合。如果當前塊上方到CTU邊界之間有6個或7個參考行,則選擇索引為{1,3,5}的3個擴展參考行參與組合,依此類推。
圖8A示出的了參與組合的5個擴展參考行,包括索引為1的參考行31、索引為3的參考行33、索引為5的參考行35、索引為7的參考行37以及索引為12的參考行39。而與圖8A不同的是,圖8B所示的示例中,當前塊的範本區域40設置在索引為0和1的兩個參考行上,參與組合的擴展參考行是5個擴展參考行,分別是索引為2的參考行42、索引為3的參考行43、索引為5的參考行45、索引為7的參考行47、及索引為12的參考行49。即該示例是從預定義的索引為{2,3,5,7,12}的擴展參考行中選擇可以使用的N個擴展參考行。對於範本區域和擴展參考行的選擇還有很多種,例如將當前塊的範本區域設置在索引為0,1,2的3個參考行上,將當前塊的範本區域設置在索引為0~3的4個參考行上,等等。範本區域較寬時,預測相對更為準確。
在本申請一示例性的實施例中,所述當前塊的N個擴展參考行是預定義的Nmax個擴展參考行中,位於當前塊的範本區域外側且不超過CTU邊界的擴展參考行;其中,Nmax為TMRL_IP模式可使用的擴展參考行的最大個數。本實施例將用於組合的N個擴展參考行限制在當前塊的範本區域外側且不超過CTU邊界的區域。但如果硬體提供支援,也可以選擇超過CTU邊界的擴展參考行參與組合。
在本申請一示例性的實施例中,Nmax=5,預定義的5個擴展參考行是索引為{1,3,5,7,12}或者{2,3,5,7,12}的參考行。在本申請另一示例性的實施例中,預定義的Nmax個擴展參考行是索引從1開始的距離當前塊最近的Nmax個擴展參考行;或者,是索引從1開始且索引為奇數的距離當前塊最近的Nmax個擴展參考行;或者,是索引從2開始且索引為偶數的距離當前塊最近的Nmax個擴展參考行。選擇奇數參考行或偶數參考行可以簡化運算。
在本申請一示例性的實施例中,所述M個幀內預測模式只允許從角度模式中選出,或者只允許從角度模式和DC模式中選出,或者允許從角度模式、DC模式和Planar模式中選出。
在本申請一示例性的實施例中,所述M個幀內預測模式透過以下過程選出:
第一步:確定當前塊周圍多個鄰近位置上的預測塊使用的幀內預測模式,將其中允許選出的幀內預測模式依次選出並去掉重複的模式;
在第一步選出的幀內預測模式的個數等於M時,結束;在第一步選出的幀內預測模式的個數小於M且包括角度模式時,執行第二步;
第二步,從已選出的第一個角度模式開始依次進行角度模式的擴展操作,得到擴展的角度模式,將與已選出的所有角度模式均不同的擴展的角度模式選出,直到已選出的幀內預測模式的總數等於M。
在本實施例的一示例中,所述第一步中,對於位於CTU上邊界和不位於CTU上邊界的當前塊,所述當前塊周圍多個鄰近位置上的預測塊均包括以下部分或全部預測塊:當前塊左側的預測塊、上方的預測塊、左上的預測塊、左下的預測塊和右上的預測塊;如圖3所示,當前塊左側的預測塊、上方的預測塊、左上的預測塊、左下的預測塊和右上的預測塊在圖中分別為用L、A、AL、BL、AR標記的預測塊,M⩾5。
本示例使得CTU上邊界處的當前塊,也能從其上方、左上和右上等鄰近位置的預測塊使用的幀內預測模式中,選出參與組合的M個幀內預測模式,即取消了對於這些位置預測塊的訪問限制。因此,為CTU上邊界處的當前塊構建候選列表時,可以有更多樣的幀內預測模式參與組合,增加了構建的候選清單中組合的多樣性,可以提升編碼性能。
在本實施例的一示例中,所述當前塊周圍多個鄰近位置包括當前塊周圍的5個鄰近位置,該5個鄰近位置依次為左上、上、右上、左和左下;如圖3所示。
在本實施例的一示例中,在基於當前塊周圍多個鄰近位置上的預測塊使用的幀內預測模式,選出的幀內預測模式的個數小於M的情況下,所述第一步還包括:按以下方式中的至少之一繼續選出參與組合的幀內預測模式:
根據當前塊周圍的重建值,利用解碼端幀內模式推導DIMD的梯度長條圖匯出兩個幀內預測模式,將匯出的該兩個幀內預測模式中與已選出的幀內預測模式均不同的幀內預測模式選出;
若已選出的幀內預測模式不包括DC模式,則將DC模式選出。
本示例能夠從DIMD匯出的幀內預測模式和/或DC模式中,選出參與組合的幀內預測模式,這種方式可以增加參與組合的幀內預測模式的多樣性,進而增加構建的候選清單中組合的多樣性,以提升編碼性能。
在本實施例的一示例中,所述第二步中,是對第一步選出的所有角度模式,從選出的第一個角度模式開始,按照設定順序依次執行以下處理:進行角度模式的擴展操作,得到擴展的角度模式,如該擴展的角度模式與已選出的角度模式均不同,將該擴展的角度模式選出;直到已選出的幀內預測模式的總數等於M,結束;其中,所述第一步選出的所有角度模式的數量大於等於1且小於等於5,也即在第一步選出的幀內預測模式均為角度模式時,也可以對所有角度模式逐一進行擴展操作而不加以數量上的減小,可以增加擴展的角度模式的可能性,增升編碼性能。
本實施例的一示例中,所述選出所述M個幀內預測模式的過程還包括:在第一步沒有選出角度模式,或者經第二步後選出的幀內預測模式的總數仍小於M的情況下,進行第三步:確定預定義的幀內預測模式集中允許選出的幀內預測模式,從確定的允許選出的幀內預測模式中依次選出與已選出的幀內預測模式均不同的幀內預測模式,直到已選出的幀內預測模式的總數等於M。
本實施例的一示例中,在選出M個幀內預測模式的過程中,只允許選出角度模式。在本實施例的另一示例中,在選出M個幀內預測模式的過程中,只允許選出角度模式和DC模式;在本實施例的又一示例中,在選出M個幀內預測模式的過程中,允許選出角度模式、DC模式和Planar模式。Planar模式與擴展參考行結合效果有限,可以不參與組合。DC模式的情況類似。但是如果能夠接受所增加的運算複雜度,也可以將Planar模式和DC模式加入到候選清單參與組合,
本實施例的一示例中,所述角度模式的擴展操作包括以下操作中的任意一種或更多種:對角度模式的加1和減1操作;對角度模式的加2和減2操作;對角度模式的加3和減3操作;及,對角度模式的加4和減4操作。
在本申請一示例性的實施例中,所述M個幀內預測模式使用最可能模式MPM中除Planar模式外的部分或全部幀內預測模式;或者,使用MPM和第二MPM中除Planar模式外的部分或全部幀內預測模式;或者,使用最可能模式MPM中除Planar模式和DC模式外的部分或全部幀內預測模式;或者,使用MPM和第二MPM中除Planar模式和DC模式外的部分或全部幀內預測模式;或者,使用最可能模式MPM中除Planar模式、DC模式和解碼端幀內模式推導(DIMD:decoder-sideintra mode derivation)模式外的部分或全部幀內預測模式;或者,所述M個幀內預測模式使用MPM和第二MPM中除Planar、DC模式和DIMD模式外的部分或全部幀內預測模式。
本實施例是將MPM中除Planar模式外的全部幀內預測模式作為預定義的幀內預測模式,或者將MPM和第二MPM中除Planar模式外的全部幀內預測模式作為預定義的幀內預測模式,在當前塊的參考行包括預定義的所有擴展參考行時,就使用全部預定義的幀內預測模式。在當前塊的參考行只包括預定義的部分擴展參考行時,就使用部分預定義的幀內預測模式。
在本申請一示例性的實施例中,M個幀內預測模式按以下方式選出:
選出M’個幀內預測模式;
根據當前塊位於範本外側的參考行和該M’個幀內預測模式,對當前塊的範本分別進行預測並計算所述範本的重建值和預測得的預測值之間的誤差,得到M’個誤差;
從M’個幀內預測模式選出對應誤差最小的M個幀內預測模式,作為參與組合的所述M個幀內預測模式,M <M’。
本實施例當前塊的範本用於從M’個幀內預測模式中選擇M個幀內預測模式,而前述當前塊的範本區域用於從N×M種組合中選擇K種組合,兩者可以是不同的,但也可以佔據相同的區域。
本實施例選出M’個幀內預測模式時,可以使用本申請上述實施例選出M個幀內預測模式的各種方法,例如,從MPM和第二MPM的列表中直接選出,或者採用前述實施例的方法經第一步選出,或經第一步和第二步選出,或經第一步、第二步和第三步選出,等等。
在本申請一示例性的實施例中,N⩽Nmax,2⩽Nmax⩽12;2⩽M⩽18;K⩽Kmax,6⩽Kmax⩽36;其中,Nmax為TMRL_IP模式允許使用的擴展參考行的最大個數,Kmax為TMRL_IP模式允許使用的候選組合的最大個數。雖然這裡給出了N、M和K的相關參數的取值範圍,但這僅僅是示例性地,這些取值範圍不應被視為對本申請的局限,本申請其他實施例也可以在本實施例的這些取值範圍之外取值。
在本實施例的一個示例中,N=5,M=10,K=20;在另一示例中,N=5,M=6,K=12;在另一示例中,N=5,M=8,K=16;在另一示例中,N=5,M=12,K=24。
在本申請一示例性的實施例中,所述N,M和K至少有兩組取值,第一組取值為N1,M1,K1,第二組取值為N2,M2,K2,其中,N1⩽ N2,M1⩽M2,K1⩽ K2,且N1 ×M1< N2×M2;所述第一組取值在為第一尺寸的當前塊構建所述候選列表時使用,第二組取值在為第二尺寸的當前塊構建所述候選列表時使用,所述第一尺寸小於所述第二尺寸。這裡的第一尺寸和第二尺寸可以分別代表多種尺寸,例如第一尺寸可以包括4×4、4×8、8×8等等,第二尺寸可以包括16×8、16×16、8×16等等。
本實施例對於不同尺寸的當前塊,採用不同的N,M和K,在當前塊尺寸較小時,使用較小的取值來構建TMRL_IP模式的候選清單。在當前塊尺寸較大時,使用較大的取值來構建TMRL_IP模式的候選清單。可以在運算的複雜和性能上取得更好的平衡。
在本申請一示例性的實施例中,所述根據所述N×M種組合分別對當前塊的範本區域進行預測,包括:在當前塊位於圖像(picture)左邊界的情況下,根據所述N×M種組合分別對當前塊的上方範本區域進行預測,不對當前塊的左側範本區域進行預測。本實施例在不對性能造成影響的基礎上,可以簡化運算,減小運算所需時間。
在本申請一示例性的實施例中,所述根據所述N×M種組合分別對當前塊的範本區域進行預測,包括:對所述N×M種組合中的每一種組合,按以下方式進行預測:
根據該組合中的擴展參考行的重建值和該組合中的幀內預測模式計算出所述範本區域初始的預測值,其中,所述擴展參考行的重建值是所述擴展參考行原始的重建值或經濾波後的重建值;
對所述範本區域初始的預測值進行4抽頭濾波或6抽頭濾波,濾波結果作為根據該組合預測得到的所述範本區域的預測值。
本實施例在對當前塊的範本區域進行預測時,可以不對擴展參考行的重建值進行濾波,使用原始的重建值進行運算,還可以使用較短抽頭的濾波器(如4抽頭濾波器),來降低運算複雜度,加快運算速度。
在本申請一示例性的實施例中,所述根據所述N×M種組合分別對當前塊的範本區域進行預測,並計算所述範本區域的重建值和預測得到的預測值之間的誤差,包括:
根據K種組合分別對當前塊的整個範本區域進行預測,得到對應的K個誤差組成一誤差集,記錄所述誤差集中的最大誤差為Dmax;
對於餘下的每一種組合,先根據該組合對當前塊的單側範本區域進行預測,計算當前塊單側範本區域的重建值和預測值之間的誤差D1,如D1⩾Dmax,完成該組合的預測,如D1<Dmax,再根據該組合對當前塊的另一側範本區域進行預測,計算當前塊整個範本區域的重建值和預測值之間的誤差D2,如D2<Dmax,將D2加入所述誤差集,將Dmax從所述誤差集中刪除並更新所述誤差集中的最大誤差Dmax,如D2⩾Dmax,則完成該組合的預測;
完成所述N×M種組合的預測後,將所述誤差集中K個誤差對應的K種組合作為對應誤差最小的K種組合。
在一個示例中,可以將誤差集中的誤差按從小到大的順序排列,將D2加入誤差集時、將D2插入到的位置應使得誤差集中的誤差仍按照從小到大的順序排列。但在其他示例中,也可以在完成所述N×M種組合的預測後,再將所述誤差集中K個誤差排序。
本實施例不必對所有組合都進行整個範本區域的預測和誤差計算,可以完成對組合的排序,可以降低運算複雜度,加快運算速度。
在本申請一示例性的實施例中,所述按照所述誤差從小到大的順序,將所述誤差對應的K種組合填入當前塊的TMRL_IP模式的候選清單,包括:從所述候選列表的第1個位置開始,按照所述誤差從小到大的順序,將所述誤差對應的K種組合填入所述候選列表。本實施例TMRL_IP模式的候選清單只填入擴展參考行與幀內預測模式的組合。索引為0的參考行與幀內預測模式的組合透過其他傳統模式來指示,如MPM。
在本申請另一示例性的實施例中,從所述候選列表的第i個位置開始,按照所述誤差從小到大的順序,將所述誤差對應的K種組合填入所述候選列表;所述候選列表的第i個位置之前填入有索引為0的參考行與一種或多種幀內預測模式的組合,i⩾2。本實施例TMRL_IP模式的候選清單不僅填入擴展參考行與幀內預測模式的組合,還可以填入索引為0的參考行與幀內預測模式的組合。在此情況下,為當前塊選中的組合是索引為0的參考行與幀內預測模式的組合時,也可以透過TMRL_IP模式索引來表示。此時的TMRL_IP模式標誌仍可以使用。
本申請一實施例提供了一種視訊解碼方法如圖9所示,包括:
步驟310,解碼當前塊的多參考行幀內預測MRL_IP模式標誌,確定當前塊是否使用MRL_IP模式;
步驟320,確定當前塊使用MRL_IP模式的情況下,繼續解碼當前塊的MRL_IP模式索引,並構建當前塊的MRL_IP模式的候選清單,所述候選列表中填入有當前塊候選的擴展參考行與幀內預測模式的組合;
步驟330,根據所述候選清單和MRL_IP模式索引,確定為當前塊選中的擴展參考行和幀內預測模式的組合,根據選中的組合對當前幀進行預測;
其中,所述TMRL_IP模式索引用於表示所述選中的擴展參考行與幀內預測模式的組合在所述候選清單中的位置。
本實施例透過解碼MRL_IP模式標誌確定當前塊使用MRL_IP模式後,將擴展參考行與幀內預測模式的組合填入MRL_IP模式的候選清單,透過解碼得到的MRL_IP模式索引和候選清單確定為當前塊選中的組合並進行預測。即透過MRL_IP模式索引可以同時指示為當前塊選中的擴展參考行和幀內預測模式,不需要使用兩個索引來完成。可以減少編碼代價。
在本申請一示例性的實施例中,所述MRL_IP模式的候選清單是按照本申請實施例的方法構建的TMRL_IP模式的候選清單。但本申請其他實施例構建的MRL_IP模式並不限於TMRL_IP模式,例如,也可以基於對大量樣本資料的統計結果,將被選中的概率最高的參考行和幀內預測模式的組合填入MRL_IP模式的候選清單。MRL_IP模式的候選清單可以只填入擴展參考行和幀內預測模式的組合,但也可以填入索引為0的參考行與其他幀內預測模式的組合。
本實施例中,在構建TMRL_IP模式的候選清單時,K可以為設定值,但本實施例的K根據TMRL_IP模式索引確定,在TMRL_IP模式索引表示所述選中的擴展參考行與幀內預測模式的組合位於所述候選清單中的第L個位置時,K=L,L為正整數。例如,TMRL_IP模式索引為5,假定索引從0開始編號,表示選中的組合位於候選清單中的第6個位置,則K=6。與解碼端不同的是,編碼端需要根據選中的組合在候選清單中的位置來確定TMRL_IP模式索引,需要使用設定的K值。而解碼端解析得到的TMRL_IP模式索引後,構建的候選清單只需要包括TMRL_IP模式索引指示的位置的組合即可。透過減少填入當前塊TMRL_IP模式的候選清單的組合數量,可以簡化構建候選列表的運算,節約計算資源。
在本申請一示例性的實施例中,所述解碼當前塊的MRL_IP模式標誌之前,還包括:在當前塊允許使用MRL_IP模式的條件均成立的情況下,再解碼當前塊的MRL_IP模式標誌,所述允許使用MRL_IP模式的條件包括以下任意一種或更多種:
當前塊為亮度幀中的塊;
當前塊允許使用MRL;
當前塊不位於編碼樹單元CTU的上邊界;
當前塊不使用基於範本的幀內預測模式匯出TIMD。
本實施例在以上條件中的一個成立時,不允許使用MRL_IP模式,可以跳過MRL_IP模式標誌和MRL_IP模式索引的解碼。但在其他實施例並不一定如此,例如,將MRL_IP模式放在TIMD之前編解碼時,當前塊使用TIMD就不能作為不允許使用MRL_IP模式的條件。又如,在將來硬體可以支援獲取CTU邊界之外的參考行時,當前塊位於CTU的上邊界也就不再作為不允許使用MRL_IP模式的條件,等等。
在本申請一示例性的實施例中,所述方法還包括:在解碼確定當前塊允許使用MRL、當前塊不位於CTU的上邊界且當前塊使用TIMD的情況下,解碼當前塊的多參考行索引,所述多參考行索引用於表示為當前塊選中的參考行在多參考行索引清單中的位置。本實施例在當前塊使用TIMD的情況下,不允許使用MRL_IP模式,但仍然可以允許使用MRL,因而仍然可以透過解碼當前塊的多參考行索引來確定為當前塊選中的參考行,再結合為當前塊選中的TIMD模式,即可對當前塊進行預測。
在本申請一示例性的實施例中,根據所述MRL_IP模式標誌確定當前塊使用MRL_IP模式的情況下,所述方法還包括:跳過以下任意一種或更多種模式的語法元素的解碼: MPM模式、子分區模式、多變換選擇MTS模式、低頻不可分割變換LFNST模式、TIMD模式。與編碼端相應的,如果編碼時,在當前塊使用MRL_IP模式標誌的情況下,跳過上述模式中的一種或多種,則解碼端透過解碼確定當前塊使用MRL_IP模式標誌的情況下,也跳過對這些模式的解碼。
本申請一實施例還提供了一種視訊解碼方法,具體涉及幀內預測的解碼過程。同時也對編碼端的幀內預測編碼過程加以說明。
本實施例中,編碼端構建TMRL_IP模式的候選清單,透過模式選擇為當前塊選中該候選清單中的組合時,對TMRL_IP模式的語法元素進行編碼和解碼,透過將擴展參考行和幀內預測模式(傳統的幀內預測模式,包括DC模式、Planar模式和多種角度模式)組合編解碼,可以提高編碼效率。
本實施例根據預定義的N個擴展參考行和M個幀內預測模式,在索引為0的參考行即reference line 0的位置上構建範本。(x,-1),(-1,y)分別是相對當前塊左上角(0,0)位置的座標,本實施例中當前塊的1行1列的範本區域可參見圖8A所示的範本區域30。該圖中還增出了預定義的5個擴展參考行,索引為{1,3,5,7,12}。
構建TMRL_IP模式的候選清單時,計算N×M種組合在範本上的預測值與重建值之間的SAD, 根據SAD的昇冪對相應的組合排序,將NxM種組合中SAD較小的K種組合按照SAD從小到大的順序填入TMRL_IP模式的候選清單,N×M⩾2。
TMRL_IP模式的候選清單的構建是一個編碼器和解碼器都需要進行的操作,編碼端在為當前塊選中的組合在該候選清單中等編碼條件滿足的情況下,編碼TMRL_IP模式標誌以表示使用TMRL_IP模式,還根據選中的組合在候選清單中位置確定TMRL_IP模式索引,如在第1個位置時,TMRL_IP模式索引為0,在第2個位置時,TMRL_IP模式索引為1,依此類推。TMRL_IP模式索引可使用哥倫布萊斯編碼(golomb-rice)方式編碼,但不局限於此。
以下以N =,M = 6和K = 12為例子進行說明。預定義的5個擴展參考行的索引為{1, 3, 5, 7, 12},6個幀內預測模式分步選出。
本實施例的視訊解碼方法包括:
步驟一,解碼TMRL_IP模式相關的語法元素;
解碼器解析幀內預測模式相關語法元素,包括TIMD、MRL等模式的相關語法元素,本實施例提出的TMRL_IP模式可以視為對MRL模式的演進,TMRL_IP模式的語法元素也可視為MRL模式語法元素的一部分。當然,也可以將兩者視為兩種不同的模式。
當前塊使用TIMD模式的情況下,對MRL模式語法元素的解碼方式不變。當前塊不使用TIMD模式的情況下,則需要解碼TMRL_IP模式的語法元素,當前塊解碼相關的語法如下表所示:
coding_unit( x0, y0, cbWidth, cbHeight, cqtDepth, treeType, modeType ) { | Descriptor |
... ... | |
if( pred_mode_plt_flag ) | |
palette_coding( x0, y0, cbWidth, cbHeight, treeType ) | |
else { | |
if( sps_bdpcm_enabled_flag && cbWidth <= MaxTsSize && cbHeight <= MaxTsSize ) | |
intra_bdpcm_luma_flag | ae(v) |
if( intra_bdpcm_luma_flag ) | |
intra_bdpcm_luma_dir_flag | ae(v) |
else { | |
if( sps_mip_enabled_flag ) | |
intra_mip_flag | ae(v) |
if( intra_mip_flag ) { | |
intra_mip_transposed_flag[ x0 ][ y0 ] | ae(v) |
intra_mip_mode[ x0 ][ y0 ] | ae(v) |
} else { | |
if( sps_timd_enable_flag && cbWidth * cbHeight <= 1024 ) | |
intra_timd_flag | ae(v) |
if( sps_mrl_enabled_flag && ( ( y0 % CtbSizeY ) > 0 ) && !intra_timd_flag ) | |
cu_tmrl_flag | ae(v) |
if(cu_tmrl_flag ) | |
tmrl_idx | ae(v) |
if( sps_mrl_enabled_flag && ( ( y0 % CtbSizeY ) > 0 ) && intra_timd_flag ) | |
intra_luma_ref_idx | ae(v) |
if( sps_isp_enabled_flag && intra_luma_ref_idx = = 0 && ( cbWidth <= MaxTbSizeY && cbHeight <= MaxTbSizeY ) && ( cbWidth * cbHeight > MinTbSizeY * MinTbSizeY ) && !cu_act_enabled_flag && !cu_tmrl_flag) | |
intra_subpartitions_mode_flag | ae(v) |
if( intra_subpartitions_mode_flag = = 1 ) | |
intra_subpartitions_split_flag | ae(v) |
if( !intra_timd_mode ){ | |
if( intra_luma_ref_idx = = 0 ) | |
intra_luma_mpm_flag[ x0 ][ y0 ] | ae(v) |
if( intra_luma_mpm_flag[ x0 ][ y0 ] ) { | |
if( intra_luma_ref_idx = = 0 ) | |
intra_luma_not_planar_flag[ x0 ][ y0 ] | ae(v) |
if( intra_luma_not_planar_flag[ x0 ][ y0 ] ) | |
intra_luma_mpm_idx[ x0 ][ y0 ] | ae(v) |
} else | |
intra_luma_mpm_remainder[ x0 ][ y0 ] | ae(v) |
} | |
} | |
} | |
} | |
} | |
… … |
表中的“cu_tmrl_flag”即TMRL_IP模式標誌,等於1表示當前塊使用TMRL_IP模式,也即定義了當前亮度樣本的幀內預測類型為基於範本的多參考行幀預測模式;“cu_tmrl_flag”等於0表示當前塊不使用TMRL_IP模式,也即定義了當前亮度樣本的幀內預測模式類型不為基於範本的多參考行幀人預測模式。
表中的“tmrl_idx”即TMRL_IP模式索引,為當前塊選中的擴展參考行與幀內預測模式的組合在TMRL_IP模式的候選清單中的位置,也可以說是定義了選中的組合在TMRL_IP模式所排序的候選清單中的索引(表示組合所在位置的索引)。“tmrl_idx”可以使用哥倫布萊斯方式進行編解碼,這裡不再贅述。
從上表可以看出,在解碼cu_tmrl_flag之前,先判斷以下條件是否成立:當前塊允許使用MRL(即sps_mrl_enabled_flag為1是否成立),當前塊不位於CTU上邊界(即( y0 % CtbSizeY ) > 0是否成立),以及當前塊不使用TIMD。在這些條件成立時,再解碼cu_tmrl_flag。如果其他兩個條件成立而當前塊使用TIMD,則解碼當前塊的多參考行索引intra_luma_ref_idx。
表中的ISP模式標誌(intra_subpartitions_mode_flag)在TMRL_IP模式相關語法元素之後解碼,在當前塊不使用TMRL_IP模式(!cu_tmrl_flag成立)的情況下,再解碼intra_subpartitions_mode_flag。
步驟二,構建TMRL_IP模式的候選清單,根據TMRL_IP模式索引和所述候選清單確定為當前塊選中的擴展參考行和幀內預測模式;
解析階段結束後,對當前塊進行預測前,如果當前塊使用TMRL_IP模式,則需要構建TMRL_IP模式的候選清單,根據TMRL_IP模式索引和所述候選清單確定為當前塊選中的擴展參考行和幀內預測模式。
構建TMRL_IP模式的候選清單,需要先確定候選的擴展參考行、確定候選的幀內預測模式。
¾確定候選的擴展參考行
候選的擴展參考行從預定義的擴展參考行中選出。根據當前塊在圖像中的位置來確定預定義的擴展參考行中哪些是可以使用的,原則上,對於當前塊可以使用的上參考行,不應超出上CTU邊界。在一個示例中,將索引為{1,3,5,7,12}的擴展參考行中,沒有超出CTU邊界的擴展參考行都加入候選的擴展參考行。為了獲得更好的編解碼性能,或者為了降低複雜度,也可以採用更多或更少的擴展參考行。
¾確定候選的幀內預測模式
本實施例TMRL_IP模式不與MPM綁定(在其他實施例也可以綁定),而是構建一個幀內預測模式的候選清單,用於組合的幀內預測模式將從此候選清單中選出。候選列表的匯出方法如下:
首先,在67種傳統的預測模式中,去除Planar模式和DC模式,或者僅去除Planar模式而保留DC模式,去除的模式不加入候選清單即不作為TMRL_IP模式中參與組合的幀內預測模式。
本實施例,待構建的候選預測模式清單長度為6,構建候選預測模式清單時,先根據當前塊周圍5個鄰近位置的預測塊使用的幀內預測模式,依序選出不重複的幀內預測模式填充候選預測模式清單。在一示例中,按照如下循序存取當前塊周圍鄰近位置的預測塊(簡稱為塊),獲取它們的幀內預測模式並進行選擇:
訪問左側的塊,判斷該塊是否為幀內編碼塊,若是且該塊的幀內預測模式不為planar模式,則將該塊的幀內預測模式選出,填充進候選列表。
訪問上方的塊,判斷該塊是否為幀內編碼塊,若是且該塊的幀內預測模式不為planar模式且不和候選清單中已有的幀內預測模式重複(即與已有的幀內預測模式均不同),則將該塊的幀內預測模式選出,填充進候選列表。
訪問左側的塊,判斷該塊是否為幀間編碼塊,若是且該塊的幀內預測模式不為planar模式且不和候選清單中已有的幀內預測模式重複,則將該塊的幀內預測模式選出,填充進候選列表。
訪問上方的塊,判斷該塊是否為幀間編碼塊,若是且該塊的幀內預測模式不為planar模式且不和候選清單中已有的幀內預測模式重複,則將該塊的幀內預測模式選出,填充進候選列表。
訪問左上側的塊,判斷該塊是否為幀內編碼塊,若是且該塊的幀內預測模式不為planar模式且不和候選清單中已有的幀內預測模式重複,則將該塊的幀內預測模式選出,填充進候選列表。
訪問左下方的塊,判斷該塊是否為幀內編碼塊,若是且該塊的幀內預測模式不為planar模式且不和候選清單中已有的幀內預測模式重複,則將該塊的幀內預測模式選出,填充進候選列表。
訪問右上方的塊,判斷該塊是否為幀內編碼塊,若是且該塊的幀內預測模式不為planar模式且不和候選清單中已有的幀內預測模式重複,則將該塊的幀內預測模式選出,填充進候選列表。
訪問左上的塊,判斷該塊是否為幀間編碼塊,若是且該塊的幀內預測模式不為planar模式且不和候選清單中已有的幀內預測模式重複,則將該塊的幀內預測模式選出,填充進候選列表。
訪問左下的塊,判斷該塊是否為幀間編碼塊,若是且該塊的幀內預測模式不為planar模式且不和候選清單中已有的幀內預測模式重複,則將該塊的幀內預測模式選出,填充進候選列表。
訪問右上的塊,判斷該塊是否為幀間編碼塊,若是且該塊的幀內預測模式不為planar模式且不和候選清單中已有的幀內預測模式重複,則將該塊的幀內預測模式選出,填充進候選列表。
本申請實施例(包括其他實施例)的當前塊可以是幀間編碼幀中的塊,也可以是幀內編碼幀中的塊,在當前塊是幀間編碼幀中的塊且經解析是幀內編碼塊(使用幀內預測模式預測的塊)的情況下,該幀內編碼塊鄰近位置的預測塊可能是幀間編碼塊,此時該幀間編碼塊的幀內預測模式可以由該幀間編碼塊的參考塊傳遞而來。
對於CTU上邊界處的當前塊,本實施例也採用上述循序存取當前塊鄰近5個位置的預測塊,獲取它們的幀內預測模式並選擇,並不跳過對左上,上,右上的預測塊的訪問。
根據當前塊5個鄰近位置的預測塊使用的幀內預測模式依序選出不重複的幀內預測模式填充候選預測模式清單之後,可以直接執行對角度模式的擴展操作,也可以先執行以下選擇操作中的一種或兩種:
第一種,根據當前塊周圍的重建值,利用DIMD的梯度長條圖,匯出兩個幀內預測模式,將匯出的兩個幀內預測模式中不與清單中已有模式重複的模式選出,填充進候選列表。
第二種,若候選列表中已選出的幀內預測模式中沒有DC模式,則將DC模式選出,填充進候選列表。
然後,對已經填充進清單的模式進行角度模式的擴展操作,具體可以對已選出的所有角度模式依次進行加一減一操作,將不重複的擴展的角度模式選出,依次填入候選預測模式清單,若候選清單填充的模式數到達6,則停止填充。
加一減一的具體操作過程如下表所示:
numCands = modeIdx | 記錄5個鄰近的預測塊共有幾個預測模式 |
if(numCands > 0 && !(numCands == 1 && mpm[0] == DC_IDX)){ | 如果有大於0個角度模式,則進一步嘗試進行角度模式的加1減1操作(+/-1),否則不進行加1減1操作 |
for(i = 0; i < numCands && modeIdx < MPM_SIZE; i++){ | 從第一個已經填充的模式開始迴圈處理,直到處理完所有模式或者因候選預測模式清單填充滿而停止: |
if(mpm[i] <= DC_IDX) | 如果這個已經填充的模式不是角度模式則不用+/-1而是跳過 |
continue | |
mpm[modeIdx] = ((mpm[i] + offset) % mod) + 2 | 獲取當前第i個已填充的角度模式-1,若角度模式-1比角度模式2小,則選取-1角度相反方向的角度模式。 |
if(isInclude(mpm[modeIdx])) | |
isInclude(mpm[modeIdx++]) = true | 如果角度模式-1與已填充的角度模式不重複,則將角度模式-1填充到候選預測模式清單並更新是否重複的列表 |
if(modeIdx >= MPM_SIZE) | 如果候選預測模式清單填充滿,則停止 |
break | |
mpm[modeIdx] = ((mpm[i] -1) % mod) + 2 | 獲取當前第i個已填充的角度模式+1,若角度模式+1後的角度模式比角度模式66大,則選取+1角度相反方向的角度模式。 |
if(isInclude(mpm[modeIdx])) | |
isInclude(mpm[modeIdx++]) = true | 如果角度+1不重複,則填充並更新是否重複的列表 |
} | |
} | |
… … | 若為填充滿,則用預設模式填充 |
上述“角度模式-1”是指將已填充的角度模式的索引減1後得到的角度模式,如已填充的角度模式為模式3,角度模式-1即角度模式2。上述“角度模式+1是指將已填充的角度模式的索引加1後得到的角度模式,例如已填充的角度模式為模式3,角度模式+1即角度模式4。
而若角度模式-1比角度模式2小,例如角度模式-1得到的是角度模式1(角度模式的索引從2編號,角度模式1不存在),則選取-1角度相反方向的角度模式,假定共有65種角度模式,此時相反方向的角度模式即角度模式66。而若角度模式+1後的角度模式比角度模式66大,則選取+1角度相反方向的角度模式是類似的,如已填充的角度模式是角度模式66,則該角度模式+1不存在,此時選取的+1角度相反方向的角度模式即角度模式2。
上述對角度模式進行擴展時,是對角度模式進行加1減1操作,在其他實施例中,也可以將加1減1操作擴展為從加1減1至加X減X,假定X=3,則可以對角度模式進行加1減1、加2減2、加3減3操作,直到候選預測模式清單填充滿。如下表所示,表中的delta=1,2,…X-1。
numCands = modeIdx | 記錄5個鄰近塊共有幾個預測模式 |
if(numCands > 0 && !(numCands == 1 && mpm[0] == DC_IDX)){ | 如果有大於0個角度模式,則進一步嘗試進行角度+/-1操作,否則不進行+/-1操作 |
for(delta = 0; delta < X && modeIdx < MPM_SIZE; delta++){ | 增加迴圈用於逐個填充加減一至加減N |
for(i = 0; i < numCands && modeIdx < MPM_SIZE; i++){ | 從第一個已經填充的模式開始迴圈 |
if(mpm[i] <= DC_IDX) | 如果該已經填充的模式不是角度模式則不用+/-1而是跳過 |
continue | |
mpm[modeIdx] = ((mpm[i] + offset-delta) % mod) + 2 | 獲取當前第i個已填充的角度模式-(1+ delta),若-(1+delta)後比角度模式2小,則選取-(1 + delta)角度相反方向的角度。 |
if(isInclude(mpm[modeIdx])) | |
isInclude(mpm[modeIdx++]) = true | 如果角度模式-(1+delta)不重複,填充並更新是否重複的列表 |
if(modeIdx >= MPM_SIZE) | 如果候選列表填充滿,則停止 |
break | |
mpm[modeIdx] = ((mpm[i] -1 + delta) % mod) + 2 | 獲取當前第i個已填充的角度+(1+delta),若+(1 + delta)後比角度模式66大,則選取+(1 + delta)角度相反方向的角度。 |
if(isInclude(mpm[modeIdx])) | |
isInclude(mpm[modeIdx++]) = true | 如果角度模式+(1+delta)不重複,則填充並更新是否重複的列表 |
} | |
} | |
} | |
… … | 若為填充滿,則用預設模式填充 |
在本申請另一實施例中,對角度模式的擴展操作包括加1和減1操作,加2和減2操作,加3和減3操作,及加4和減4操作,假定第一步選出的角度模式共有4個,一種示例性的設定順序可以是:對選出的第一個角度模式(簡稱第一個角度模式)進行加1和減1操作,對選出的第二個角度模式(簡稱第二個角度模式)進行加1和減1操作,對選出的第三個角度模式(簡稱第三個角度模式)進行加1和減1操作,對選出的第四個角度模式(簡稱第四個角度模式)進行加1和減1操作,對第一個角度模式進行加2和減2操作,對第二個角度模式進行加2和減2操作,對第三個角度模式進行加2和減2操作,對第四個角度模式進行加2和減2操作,之後,繼續對第一個角度模式至第四個角度模式進行加3減3操作,再對第一個角度模式至第四個角度模式進行加4減4操作。在本實施例的角度擴展的過程中,每完成一個角度模式的擴展操作後,可將得到的兩個擴展的角度模式與已選出的角度模式比較,將其與已選出的角度模式均不同的角度模式選出並更新已選出的幀內預測模式的總數,在該總數等於M時,結束構建幀內預測模式的候選清單,也即結束選出M個幀內預測模式的處理。
如果對已經填充進清單的模式進行角度模式的擴展操作之後,候選預測模式清單還沒有填充滿,則使用預定義的模式集中不重複的模式進行填充,直到候選預測模式清單填滿。該模式集包括按照統計規律篩選出的一些角度模式,如下,
mpm_default[] = { DC_IDX, VER_IDX, HOR_IDX, VER_IDX - 4, VER_IDX + 4, 14, 22, 42, 58, 10, 26, 38, 62, 6, 30, 34, 66, 2, 48, 52, 16 };
其中,DC_IDX表示DC模式,VER_IDX表示垂直模式,HOR_IDX表示水準模式,其餘數位表示該數位對應的角度模式。
本實施例中,候選預測模式清單的長度為6,也可以為了性能嘗試更多的角度模式,將長度設置為大於6的值,如8,10,12,14等等,也可以為了降低複雜度嘗試較少的模式,將長度設置為小於6的值。
本實施例確定候選幀內預測模式時,將Planar模式和DC模式,或者僅將Planar模式排除,但在如果不考慮複雜度的情況,這兩個模式也可以不排除,即Planar模式、DC模式和所有角度模式均可作為候選幀內預測模式而參與與擴展參考行的組合。
本實施例透過上述步驟構建的幀內預測模式的候選清單,與直接使用MPM列表和第二MPM列表中的前N個幀內預測模式相比,取消了在CTU上邊界處對於上方預測塊訪問的限制,增加了當前塊處於CTU上邊界時為當前塊構建的候選列表的多樣性。此外,透過加入DIMD和 DC模式,可以進一步增加候選清單中的幀內預測模式的多樣性。
¾構建TMRL_IP模式的候選清單
確定候選的擴展參考行及幀內預測模式後,可逐一嘗試擴展參考行清單和候選預測模式清單中的所有組合,對這些組合在reference line 0所在行的範本(Template如下圖)區域上分別進行預測,參見圖8A,計算範本區域的重建值和每種組合預測得到的預測值之間的誤差,將誤差最小的K種組合按誤差昇冪填入TMRL_IP模式的候選清單。
本實施例在預測過程中,只限制了TMRL_IP模式在當前塊佔據CTU首行時的使用,當當前塊位於圖像左邊界時,TMRL_IP模式仍然可以使用,在這種情況下時由於左側的reference line 0已經處於圖像邊界外,所以在預測時不使用左側範本,即只進行上方範本區域的預測。
在範本區域上預測的過程可與其它正常的幀內角度預測過程完全一致,即先對參考行的重建值濾波再作為範本區域初始的預測值,而基於參考行濾波後的重建值和組合中的幀內預測模式對範本區域進行預測之後,將初始的預測結果進行4或6抽頭濾波,再作為預測得到的預測值。考慮運算的複雜度,可以省去對參考行的重建值的濾波步驟,也可以使用較短抽頭的濾波器。本實施例中,在預測得到範本區域的預測值時,參考行像素的重建值不經過濾波,而初始的預測結果是在非整數角度下經過1/32精度的4抽頭插值濾波,4 抽頭濾波器如下:
Fractional sample position p | fC interpolation filter coefficients | |||
fC[ p ][ 0 ] | fC[ p ][ 1 ] | fC[ p ][ 2 ] | fC[ p ][ 3 ] | |
0 | 0 | 64 | 0 | 0 |
1 | −1 | 63 | 2 | 0 |
2 | −2 | 62 | 4 | 0 |
3 | −2 | 60 | 7 | −1 |
4 | −2 | 58 | 10 | −2 |
5 | −3 | 57 | 12 | −2 |
6 | −4 | 56 | 14 | −2 |
7 | −4 | 55 | 15 | −2 |
8 | −4 | 54 | 16 | −2 |
9 | −5 | 53 | 18 | −2 |
10 | −6 | 52 | 20 | −2 |
11 | −6 | 49 | 24 | −3 |
12 | −6 | 46 | 28 | −4 |
13 | −5 | 44 | 29 | −4 |
14 | −4 | 42 | 30 | −4 |
15 | −4 | 39 | 33 | −4 |
16 | −4 | 36 | 36 | −4 |
17 | −4 | 33 | 39 | −4 |
18 | −4 | 30 | 42 | −4 |
19 | −4 | 29 | 44 | −5 |
20 | −4 | 28 | 46 | −6 |
21 | −3 | 24 | 49 | −6 |
22 | −2 | 20 | 52 | −6 |
23 | −2 | 18 | 53 | −5 |
24 | −2 | 16 | 54 | −4 |
25 | −2 | 15 | 55 | −4 |
26 | −2 | 14 | 56 | −4 |
27 | −2 | 12 | 57 | −3 |
28 | −2 | 10 | 58 | −2 |
29 | −1 | 7 | 60 | −2 |
30 | 0 | 4 | 62 | −2 |
31 | 0 | 2 | 63 | −1 |
根據當前角度的下行與行像素之間的位置偏差選擇合適的濾波器,偏差iFact的匯出過程如下:
根據傳統角度對應到寬角度得到predModeIntra,透過predModeIntra查表獲得intraPredAngle,如下:
透過intraPredAngle和選中的參考行的索引refIdx確定iFact,
iFact = ( ( x + 1 + refIdx ) * intraPredAngle ) & 31
最後,根據當前組合中的角度,參考行,濾波器對範本區域預測。計算預測得到的範本區域的預測值與範本區域的重建值之間的SAD,按照SAD昇冪排序,選取SAD最小的K個組合填入TMRL_IP模式的候選清單。
在排序過程中可以使用快速演算法,在上述過程中需要嘗試5個參考行,6種預測模式共30種組合,但只需要選擇其中SAD最小的K個組合,本實施例在預測完前K種組合,得到相應的SAD後,從第K+1種組合開始,只需要保持K個誤差(也可以叫代價)最小的組合並進行更新。從第K+1種組合開始,只對上方範本區域進行預測並計算相應的SAD,在根據上範本計算的SAD已經大於誤差最小的K種組合中誤差最大的一種組合時,可以跳過對左側範本區域的預測和誤差計算,具體可參見前述實施例。
本實施例K的取值與編碼端相同,即K=12。但在本申請的另一實施例中,K根據TMRL_IP模式索引確定,在TMRL_IP模式索引表示所述選中的擴展參考行與幀內預測模式的組合位於所述候選清單中的第L個位置(即選中的是候選清單中的第L種組合)時,令K=L。如果用L’表示TMRL_IP模式索引的值,
,則有L= L’+1。在L小於12(編碼端設定的K值)時,不需要從NxM中組合中排序出12種的代價最小的組合,而是僅需要排序出L個代價最小的組合即可。解碼端根據TMRL_IP模式索引確定K的值,可以減少解碼器排序的複雜度。
步驟三,根據構建的TMRL_IP模式的候選清單和解碼得到的TMRL_IP模式索引確定為當前塊選中的擴展參考行和幀內預測模式的組合,根據選中對當前塊進行幀內預測。
當使用TMRL_IP模式時,參考行的索引refIdx和變數predModeIntra定義了幀內預測所使用的模式,均根據TMRL_IP模式索引“tmrl_idx”與TMRL_IP模式的候選清單來確定。
在ECM-4.0參考軟體上,使用本實施例所述的方法,以N = 5(5個擴展參考行分別為1, 3, 5, 7, 12),M = 6 (6個預定義的預測模式,不包含Planar和DC模式)和K =12(只選取所有組合種的前12個SAD小的排序組合)的設定,在AI配置下測得結果如下:
以N = 5(5個擴展參考行分別為1, 3, 5, 7, 12),M = 8 (8個預定義的預測模式)和K = 16的設定,在AI配置下測得結果如下,
以N = 5(5條擴展的參考行分別為1, 3, 5, 7, 12),M = 12 (12個預定義的預測模式)和K = 24的設定,在AI配置下測得結果如下,
以N = 5(5條擴展的參考行分別為1, 3, 5, 7, 12),M = 8 (8個預定義的預測模式,不包含Planar和但包含DC模式)和K =16的設定,在AI配置下測得結果如下,
表中的參數含義如下:
EncT : Encoding Time,編碼時間, 10X%代表當集成了參考行排序技術後,與沒集成前相比,編碼時間為10X%, 這意味有X%的編碼時間增加。
DecT: Decoding Time,解碼時間, 10X%代表當集成了參考行排序技術後,與沒集成前相比,解碼時間為10X%, 這意味有X%的解碼時間增加。
ClassA1 和Class A2是解析度為3840x2160的測試視訊序列,ClassB為1920x1080解析度的測試序列,ClassC為832x480,ClassD為416x240,ClassE為1280x720;ClassF為若干個不同解析度的螢幕內容序列(Screen content)。
Y,U,V是顏色三分量,Y,U,V所在列表示測試結果在Y,U,V上的BD-rate(Bjøntegaard-Delta rate)指標,值越小表示編碼性能越好。
All intra表示全幀內幀配置的測試配置。
以N = 5(5條擴展的參考行分別為1, 3, 5, 7, 12),M = 10 (10個預定義的預測模式)和K = 20的設定,且在構建候選列表時直接使用MPM列表和第二MPM列表中前M個預測模式參與組合,在All intra和Random access的配置下的實驗結果如下表A所示:
而在N=5,M=10,K=20的相同設定下,但使用本實施例方法構建候選列表(包括允許CTU上邊界處的當前塊訪問鄰近的上,右上和左上位置的預測塊以選出幀內預測模式,在角度擴展之前對DIMD匯出的模式和DC模式進行選擇,及對所有選出的角度模式進行擴展操作等處理),在AI配置下的測試結果如下表B所示:
透過對比可發現,在overall一欄,直接使用MPM列表和第二MPM列表中前M個預測模式參與組合的方案,對比參考軟體可以帶來all intra配置下0.08%/0.01%/0.04%,Y/U/V的BD-rates節省,random access 配置下0.03%/0.08%/0.13%,Y/U/V的BD-rates節省。而使用本實施例方法構建候選清單,對比參考軟體可以帶來all intra配置下0.11%/0.10%/0.07%,Y/U/V的BD-rates節省,帶來random access 配置下0.05%/-0.05%/0.06%,Y/U/V的BD-rates節省。總體效果提升。
由可見使用本實施例TMRL_IP模式進行幀內預測編解碼,可以取得編碼性能的明顯提升。
本實施例無論是擴展參考行或是預測模式,都是用1行1列的範本區域,並使用SAD昇冪進行了排序和篩選。對於擴展參考行而言,若排序所有的擴展參考行(包括reference line 1),則只能使用1行1列的範本。然而對於預測模式的篩選,為了篩選出更合適的預測模式,可以像TIMD模式那樣,使用更多的參考行可以獲得更準確的結果。在其他實施例中,也可以將TMRL_IP模式確定候選的預測模式清單的方式加以變化。
例如,需要構建一個長度為6的候選預測模式清單時,可以根據與本實施例相同的構建和填充方法方法先構建一個長度大於6的列表,然後使用距離當前塊最近的4行4列作為範本,使用第5個參考行和候選預測模式清單中的幀內預測模式對範本進行預測,計算預測得到的預測值與範本的重建值之間的誤差(SAD或SATD),按照誤差昇冪排序,選出其中6個誤差小的幀內預測模式作為要構建的長度為6的TMRL_IP模式候選清單中的幀內預測模式。此外,TMRL_IP模式的候選清單的長度為6僅僅是一個示例,可根據情況做數值上的調整。
本實施例的角度模式以65種為例,但在其他實施例中,也可以將角度擴展到129種或更多以獲得更好的性能,當擴展到更多的角度時,幀內預測的濾波器數量也應做相應提升,例如129種角度時使用1/64精度的濾波。
本申請一實施例還提供了一種碼流,其中,所述碼流中包括塊級的用於幀內預測的語法元素,所述語法元素包括當前塊的多參考行幀內預測MRL_IP模式標誌和MRL_IP模式索引,其中,MRL_IP模式標誌用於表示當前塊是否使用MRL_IP模式,MRL_IP模式索引用於表示為當前塊選中的擴展參考行和幀內預測模式的組合在MRL_IP模式的候選清單中的位置。本實施例的碼流可以透過本申請任一實施例的視訊編碼方法生成。
本申請一實施例還提供了一種多參考行幀內預測模式候選清單的構建裝置,如圖10所示,包括處理器71以及儲存有電腦程式的記憶體73,其中,所述處理器71執行所述電腦程式時能夠實現如本申請任一實施例所述的多參考行幀內預測模式候選清單的構建方法。
本申請一實施例還提供了一種視訊解碼裝置,參見圖10,包括處理器以及儲存有電腦程式的記憶體,其中,所述處理器執行所述電腦程式時能夠實現如本申請任一實施例所述的視訊解碼方法。
本申請一實施例還提供了一種視訊編碼裝置,參見圖10,包括處理器以及儲存有電腦程式的記憶體,其中,所述處理器執行所述電腦程式時能夠實現如本申請任一實施例所述的視訊編碼方法。
本申請上述實施例的處理器可以是通用處理器,包括中央處理器(CPU)、網路處理器(Network Processor,簡稱NP)、微處理器等等,也可以是其他常規的處理器等;所述處理器還可以是數位訊號處理器(DSP)、專用積體電路(ASIC)、現成可程式設計閘陣列(FPGA)、離散邏輯或者其他可程式設計邏輯器件、分立門或者電晶體邏輯器件、分立硬體元件,或其它等效集成或離散的邏輯電路,也可以是上述器件的組合。即上述實施例的處理器可以是實現本發明實施例中申請的各方法、步驟及邏輯框圖的任何處理器件或器件組合。如果部分地以軟體來實施本申請實施例,那麼可將用於軟體的指令儲存在合適的非易失性電腦可讀儲存媒體中,且可使用一個或多個處理器在硬體中執行所述指令從而實施本申請實施例的方法。本文中所使用的術語“處理器”可指上述結構或適合於實施本文中所描述的技術的任意其它結構。
本申請一實施例還提供了一種視訊編解碼系統,其中,包括本申請任一實施例所述的視訊編碼裝置和本申請任一實施例所述的視訊解碼裝置。
本申請一實施例還提供了一種非瞬態電腦可讀儲存媒介,所述電腦可讀儲存媒介儲存有電腦程式,其中,所述電腦程式時被處理器執行時實現如本申請任一實施例所述的多參考行幀內預測模式候選清單的構建方法,或實現本申請任一實施例所述的視訊解碼方法,或實現本申請任一實施例所述的視訊編碼方法。
在以上一個或多個示例性實施例中,所描述的功能可以硬體、軟體、固件或其任一組合來實施。如果以軟體實施,那麼功能可作為一個或多個指令或代碼儲存在電腦可讀媒介上或經由電腦可讀媒介傳輸,且由基於硬體的處理單元執行。電腦可讀媒介可包含對應於例如資料儲存媒介等有形媒介的電腦可讀儲存媒介,或包含促進電腦程式例如根據通訊協定 從一處傳送到另一處的任何媒介的通訊媒介。以此方式,電腦可讀媒介通常可對應於非暫時性的有形電腦可讀儲存媒介或例如訊號或載波等通訊媒介。資料儲存媒介可為可由一個或多個電腦或者一個或多個處理器存取以檢索用於實施本申請中描述的技術的指令、代碼和/或資料結構的任何可用媒介。電腦程式產品可包含電腦可讀媒介。
舉例來說且並非限制,此類電腦可讀儲存媒介可包括RAM、ROM、 EEPROM、CD-ROM 或其它光碟儲存裝置、磁片儲存裝置或其它磁性儲存裝置、快閃記憶體或可用來以指令或資料結構的形式儲存所要程式碼且可由電腦存取的任何其它媒介。而且,還可以將任何連接稱作電腦可讀媒介舉例來說,如果使用同軸電纜、光纖電纜、雙絞線、數位訂戶線 (DSL)或例如紅外線、無線電及微波等無線技術從網站、伺服器或其它遠端源傳輸指令,則同軸電纜、光纖電纜、雙紋線、DSL或例如紅外線、無線電及微波等無線技術包含於媒介的定義中。然而應瞭解,電腦可讀儲存媒介和資料儲存媒介不包含連接、載波、訊號或其它暫態(瞬態)媒介,而是針對非暫態有形儲存媒介。如本文中所使用,磁片及光碟包含壓縮光碟(CD) 、雷射光碟、光學光碟、數位多功能光碟(DVD)、軟碟或藍光光碟等,其中磁片通常以磁性方式再生資料,而光碟使用雷射以光學方式再生資料。上文的組合也應包含在電腦可讀媒介的範圍內。
在一些方面中,本文描述的功能性可提供於經配置以用於編碼和解碼的專用硬體和/或軟體模組內,或併入在組合式編解碼器中。並且,可將所述技術完全實施於一個或多個電路或邏輯元件中。
本申請實施例的技術方案可在廣泛多種裝置或設備中實施,包含無線手機、積體電路(IC) 或一組IC(例如,晶片組)。本申請實施例中描各種元件、模組或單元以強調經配置以執行所描述的技術的裝置的功能方面,但不一定需要透過不同硬體單元來實現。而是,如上所述,各種單元可在編解碼器硬體單元中組合或由交互操作硬體單元(包含如上所述的一個或多個處理器)的集合結合合適軟體和/或固件來提供。
1:編碼端裝置
11:資料源
13:視訊編碼裝置
15:輸出介面
101:視訊解碼裝置
110~130:步驟
111:當前塊
112:範本區域
113:範本參考區域
150:熵解碼單元
152:預測單元
154:反量化單元
155:反變換處理單元
158:重建單元
159:濾波器單元
160:解碼圖像緩衝器
162:幀間預測單元
164:幀內預測單元
1000:視訊編碼裝置
1100:預測單元
1101:劃分單元
1102:殘差產生單元
1104:變換處理單元
1106:量化單元
1108:反量化單元
1110:反變換處理單元
1112:重建單元
1113:濾波器單元
1114:解碼圖像緩衝器
1115:熵編碼單元
1121:幀間預測單元
1126:幀內預測單元
2:解碼端裝置
21:輸入介面
23:視訊解碼裝置
25:顯示裝置
210~230:步驟
221:參考行0
222:參考行1
223:參考行2
224:參考行3
3:鏈路
30、31、33、35、37、39:參考行
310~330:步驟
40:範本區域
42、43、45、47、49:參考行
71:處理器
73:記憶體
附圖用來提供對本申請實施例的理解,並且構成說明書的一部分,與本申請實施例一起用於解釋本申請的技術方案,並不構成對本申請技術方案的限制。
圖1A是本申請一實施例編解碼系統的示意圖;
圖1B是本申請一實施例編碼端的框架圖;
圖1C是本申請一實施例解碼端的框架圖;
圖2是本申請一實施例幀內預測模式的示意圖;
圖3是本申請一實施例當前塊的相鄰幀內預測塊的示意圖;
圖4是本申請一實施例當前塊的範本及範本參考區域的示意圖;
圖5是本申請一實施例當前塊周圍的多個參考行的示意圖;
圖6是本申請一實施例視訊編碼方法的流程圖;
圖7是本申請一實施例MRL_IP模式候選清單構建方法的流程圖;
圖8A是本申請一實施例當前塊周圍範本區域及擴展參考行的示意圖;
圖8B是本申請另一實施例當前塊周圍範本區域及擴展參考行的示意圖;
圖9是本申請一實施例視訊解碼方法的流程圖;
圖10是本申請一實施MRL_IP模式候選清單構建裝置的示意圖。
110~130:步驟
Claims (39)
- 一種多參考行幀內預測模式候選清單的構建方法,包括: 根據當前塊的N個擴展參考行和M個幀內預測模式得到擴展參考行與幀內預測模式的N×M種組合,N⩾1,M⩾1,N×M⩾2; 根據所述N×M種組合分別對當前塊的範本區域進行預測,並計算所述範本區域的重建值和預測得到的預測值之間的誤差; 按照所述誤差從小到大的順序,將所述誤差對應的K種組合填入當前塊基於範本的多參考行幀內預測(TMRL_IP)模式的候選清單,1⩽K⩽N×M。
- 如請求項1所述的構建方法,其中: 所述當前塊的範本區域設置在距離當前塊最近的一個參考行上;或者 所述當前塊的範本區域設置在距離當前塊最近的多個參考行上,所述N個擴展參考行是位於所述範本區域外側的擴展參考行。
- 如請求項1所述的構建方法,其中: 所述誤差用絕對誤差和(SAD)表示,或用誤差變換絕對值和(SATD)表示。
- 如請求項1所述的構建方法,其中: 所述當前塊的N個擴展參考行是預定義的Nmax個擴展參考行中,位於當前塊的範本區域外側且不超過CTU邊界的擴展參考行; 其中,Nmax為TMRL_IP模式可使用的擴展參考行的最大個數。
- 如請求項4所述的構建方法,其中: 所述預定義的Nmax個擴展參考行為: 索引為{1,3,5,7,12}的5個擴展參考行;或者 索引為{2,3,5,7,12}的5個擴展參考行;或者 索引從1開始的距離當前塊最近的Nmax個擴展參考行;或者 索引從1開始且索引為奇數的距離當前塊最近的Nmax個擴展參考行;或者 索引從2開始且索引為偶數的距離當前塊最近的Nmax個擴展參考行。
- 如請求項1所述的構建方法,其中: 所述M個幀內預測模式透過以下過程選出: 第一步:確定當前塊周圍多個鄰近位置上的預測塊使用的幀內預測模式,將其中允許選出的幀內預測模式依次選出並去掉重複的模式; 在第一步選出的幀內預測模式的個數等於M時,結束;在第一步選出的幀內預測模式的個數小於M且包括角度模式時,執行第二步; 第二步,從已選出的第一個角度模式開始依次進行角度模式的擴展操作,得到擴展的角度模式,將與已選出的所有角度模式均不同的擴展的角度模式選出,直到已選出的幀內預測模式的總數等於M。
- 如請求項6所述的構建方法,其中: 所述第一步中,對於位於CTU上邊界和不位於CTU上邊界的當前塊,所述當前塊周圍多個鄰近位置上的預測塊均包括以下部分或全部預測塊:當前塊左側的預測塊、上方的預測塊、左上的預測塊、左下的預測塊和右上的預測塊;M⩾5。
- 如請求項6或7所述的構建方法,其中: 在基於當前塊周圍多個鄰近位置上的預測塊使用的幀內預測模式,選出的幀內預測模式的個數小於M的情況下,所述第一步還包括:按以下方式中的至少之一繼續選出參與組合的幀內預測模式: 根據當前塊周圍的重建值,利用解碼端幀內模式推導(DIMD)的梯度長條圖匯出兩個幀內預測模式,將匯出的該兩個幀內預測模式中與已選出的幀內預測模式均不同的幀內預測模式選出; 若已選出的幀內預測模式不包括DC模式,則將DC模式選出。
- 如請求項6所述的構建方法,其中: 所述第二步中,是對第一步選出的所有角度模式,從選出的第一個角度模式開始,按照設定順序依次執行以下處理:進行角度模式的擴展操作,得到擴展的角度模式,如該擴展的角度模式與已選出的角度模式均不同,將該擴展的角度模式選出;直到已選出的幀內預測模式的總數等於M,結束;其中,所述第一步選出的所有角度模式的數量大於等於1且小於等於5。
- 如請求項6所述的構建方法,其中: 所述選出所述M個幀內預測模式的過程還包括:在所述第一步沒有選出角度模式,或者經所述第二步後選出的幀內預測模式的總數仍小於M的情況下,進行第三步:確定預定義的幀內預測模式集中允許選出的幀內預測模式,從確定的允許選出的幀內預測模式中依次選出與已選出的幀內預測模式均不同的幀內預測模式,直到已選出的幀內預測模式的總數等於M。
- 如請求項6或10所述的構建方法,其中: 所述允許選出的幀內預測模式僅包括角度模式,或者僅包括角度模式和DC模式,或者包括角度模式、DC模式和Planar模式。
- 如請求項6所述的構建方法,其中: 所述角度模式的擴展操作包括以下操作中的任意一種或更多種: 對角度模式的加1和減1操作; 對角度模式的加2和減2操作; 對角度模式的加3和減3操作; 對角度模式的加4和減4操作。
- 如請求項1所述的構建方法,其中: 所述M個幀內預測模式使用最可能模式(MPM)中除Planar模式外的部分或全部幀內預測模式;或者 所述M個幀內預測模式使用MPM和第二MPM中除Planar模式外的部分或全部幀內預測模式;或者 所述M個幀內預測模式使用最可能模式(MPM)中除Planar模式和DC模式外的部分或全部幀內預測模式;或者 所述M個幀內預測模式使用MPM和第二MPM中除Planar模式和DC模式外的部分或全部幀內預測模式;或者 所述M個幀內預測模式使用最可能模式(MPM)中除Planar模式、DC模式和解碼端幀內模式推導(DIMD)模式外的部分或全部幀內預測模式;或者 所述M個幀內預測模式使用MPM和第二MPM中除Planar、DC模式和DIMD模式外的部分或全部幀內預測模式。
- 如請求項1所述的構建方法,其中: 所述M個幀內預測模式按以下方式選出: 選出M’個幀內預測模式; 根據當前塊位於範本外側的參考行和該M’個幀內預測模式,對當前塊的範本分別進行預測並計算所述範本的重建值和預測得的預測值之間的誤差,得到M’個誤差; 從M’個幀內預測模式選出對應誤差最小的M個幀內預測模式,作為參與組合的所述M個幀內預測模式,M<M’。
- 如請求項1所述的構建方法,其中: N⩽Nmax,2⩽Nmax⩽12;2⩽M⩽18;K⩽Kmax,6⩽Kmax⩽36;其中,Nmax為TMRL_IP模式允許使用的擴展參考行的最大個數,Kmax為TMRL_IP模式允許使用的候選組合的最大個數。
- 如請求項1所述的構建方法,其中: N=5,M=10,K=20;或者 N=5,M=6,K=12;或者 N=5,M=8,K=16;或者 N=5,M=12,K=24。
- 如請求項1所述的構建方法,其中: 所述N,M和K至少有兩組取值,第一組取值為N1,M1,K1,第二組取值為N2,M2,K2,其中,N1⩽ N2,M1⩽M2,K1⩽ K2,且N1×M1< N2×M2; 所述第一組取值在為第一尺寸的當前塊構建所述候選列表時使用,第二組取值在為第二尺寸的當前塊構建所述候選列表時使用,所述第一尺寸小於所述第二尺寸。
- 如請求項1所述的構建方法,其中: 所述根據所述N×M種組合分別對當前塊的範本區域進行預測,包括:在當前塊位於圖像左邊界的情況下,根據所述N×M種組合分別對當前塊的上方範本區域進行預測,不對當前塊的左側範本區域進行預測。
- 如請求項1所述的構建方法,其中: 所述根據所述N×M種組合分別對當前塊的範本區域進行預測,包括:對所述N×M種組合中的每一種組合,按以下方式進行預測: 根據該組合中的擴展參考行的重建值和該組合中的幀內預測模式計算出所述範本區域初始的預測值,其中,所述擴展參考行的重建值是所述擴展參考行原始的重建值或經濾波後的重建值; 對所述範本區域初始的預測值進行4抽頭濾波或6抽頭濾波,濾波結果作為根據該組合預測得到的所述範本區域的預測值。
- 如請求項1所述的構建方法,其中: 所述根據所述N×M種組合分別對當前塊的範本區域進行預測,並計算所述範本區域的重建值和預測得到的預測值之間的誤差,包括: 根據K種組合分別對當前塊的整個範本區域進行預測,得到對應的K個誤差組成一誤差集,記錄所述誤差集中的最大誤差為Dmax; 對於餘下的每一種組合,先根據該組合對當前塊的單側範本區域進行預測,計算當前塊單側範本區域的重建值和預測值之間的誤差D1,如D1⩾Dmax,完成該組合的預測,如D1<Dmax,再根據該組合對當前塊的另一側範本區域進行預測,計算當前塊整個範本區域的重建值和預測值之間的誤差D2,如D2<Dmax,將D2加入所述誤差集,將Dmax從所述誤差集中刪除並更新所述誤差集中的最大誤差Dmax,如D2⩾Dmax,則完成該組合的預測; 完成所述N×M種組合的預測後,將所述誤差集中K個誤差對應的K種組合作為對應誤差最小的K種組合。
- 如請求項1所述的構建方法,其中: 所述按照所述誤差從小到大的順序,將所述誤差對應的K種組合填入當前塊的TMRL_IP模式的候選清單,包括: 從所述候選列表的第1個位置開始,按照所述誤差從小到大的順序,將所述誤差對應的K種組合填入所述候選列表;或者 從所述候選列表的第i個位置開始,按照所述誤差從小到大的順序,將所述誤差對應的K種組合填入所述候選列表;所述候選列表的第i個位置之前填入有索引為0的參考行與一種或多種幀內預測模式的組合,i⩾2。
- 一種視訊解碼方法,包括: 解碼當前塊的多參考行幀內預測(MRL_IP)模式標誌,確定當前塊是否使用MRL_IP模式; 確定當前塊使用MRL_IP模式的情況下,繼續解碼當前塊的MRL_IP模式索引,並構建當前塊的MRL_IP模式的候選清單,所述候選列表中填入有當前塊候選的擴展參考行與幀內預測模式的組合; 根據所述候選清單和MRL_IP模式索引,確定為當前塊選中的擴展參考行和幀內預測模式的組合,根據選中的組合對當前幀進行預測; 其中,所述MRL_IP模式索引用於表示所述選中的擴展參考行與幀內預測模式的組合在所述候選清單中的位置。
- 如請求項18所述的視訊解碼方法,包括: 所述MRL_IP模式的候選清單是按照如請求項1至21中任一所述的方法構建的基於範本的多參考行幀內預測(TMRL_IP)模式的候選清單;其中,K為設定值,或者,K根據TMRL_IP模式索引確定,在TMRL_IP模式索引表示所述選中的擴展參考行與幀內預測模式的組合位於所述候選清單中的第L個位置時,K=L,L為正整數。
- 如請求項22或23所述的視訊解碼方法,包括: 所述解碼當前塊的MRL_IP模式標誌之前,還包括:在當前塊允許使用MRL_IP模式的條件均成立的情況下,再解碼當前塊的MRL_IP模式標誌,所述允許使用MRL_IP模式的條件包括以下任意一種或更多種: 當前塊為亮度幀中的塊; 當前塊允許使用MRL; 當前塊不位於編碼樹單元(CTU)的上邊界; 當前塊不使用基於範本的幀內預測模式匯出(TIMD)。
- 如請求項22所述的視訊解碼方法,包括: 所述方法還包括: 在解碼確定當前塊允許使用MRL、當前塊不位於CTU的上邊界且當前塊使用TIMD的情況下,解碼當前塊的多參考行索引,所述多參考行索引用於表示為當前塊選中的參考行在多參考行索引清單中的位置。
- 如請求項22所述的視訊解碼方法,包括: 根據所述MRL_IP模式標誌確定當前塊使用MRL_IP模式的情況下,所述方法還包括:跳過以下任意一種或更多種模式的語法元素的解碼: MPM模式、幀內子塊劃分(ISP)模式、多變換選擇(MTS)模式、低頻不可分割變換(LFNST)模式、TIMD模式。
- 一種視訊編碼方法,包括: 構建當前塊的多參考行幀內預測(MRL_IP)模式的候選清單,所述候選列表中填入有當前塊候選的擴展參考行與幀內預測模式的組合; 透過率失真優化,為當前塊選中一種參考行和幀內預測模式的組合用於幀內預測; 在當前塊的MRL_IP模式的編碼條件滿足時,編碼當前塊的MRL_IP模式標誌以表示當前塊使用MRL_IP模式,編碼當前塊的MRL_IP模式索引以表示所述選中的組合在所述候選清單中的位置; 其中,所述編碼條件至少包括:所述選中的組合在所述候選清單中。
- 如請求項27所述的視訊編碼方法,其中: 所述MRL_IP模式的候選清單是按照如請求項1至21中任一所述的方法構建的基於範本的多參考行幀內預測TMRL_IP模式的候選清單;其中,K為設定值。
- 如請求項27所述的視訊編碼方法,其中: 所述編碼條件還包括:當前塊不使用基於範本的幀內預測模式匯出(TIMD); 所述方法還包括: 在當前塊使用TIMD的情況下,跳過當前塊的MRL_IP模式標誌和MRL_IP模式索引的編碼; 在當前塊不使用TIMD但所述選中的組合不在所述候選清單中的情況下,編碼當前塊的MRL_IP模式標誌以表示當前塊不使用MRL_IP模式,跳過當前塊的MRL_IP模式索引的編碼。
- 如請求項27所述的視訊編碼方法,其中: 所述構建當前塊的MRL_IP模式的候選清單,包括:在設定的當前塊允許使用MRL_IP模式的條件均成立的情況下,才構建所述候選列表,所述允許使用MRL_IP模式的條件包括以下任意一種或更多種: 當前塊為亮度幀中的塊; 當前塊不位於編碼樹單元(CTU)的上邊界; 當前塊允許使用多參考行(MRL); 當前塊的尺寸不大於可使用MRL_IP模式的當前塊的最大尺寸; 當前塊的長寬比滿足使用MRL_IP模式對當前塊長寬比的要求。
- 如請求項27所述的視訊編碼方法,其中: 所MRL_IP模式索引採用哥倫布-萊斯編碼方法進行編碼。
- 如請求項27所述的視訊編碼方法,包括: 在當前塊的MRL_IP模式的編碼條件滿足的情況下,所述方法還包括:跳過以下任意一種或更多種模式的語法元素的編碼:MPM模式,幀內子塊劃分(ISP)模式、多變換選擇(MTS)模式、低頻不可分割變換(LFNST)模式、TIMD模式。
- 一種碼流,其中,所述碼流中包括塊級的用於幀內預測的語法元素,所述語法元素包括當前塊的多參考行幀內預測(MRL_IP)模式標誌和MRL_IP模式索引,其中,所述MRL_IP模式標誌用於表示當前塊是否使用MRL_IP模式,所述MRL_IP模式索引用於表示為當前塊選中的擴展參考行和幀內預測模式的組合在MRL_IP模式的候選清單中的位置。
- 如請求項33所述的碼流,其中: 所述碼流透過如請求項27至32中任一所述的視訊編碼方法生成。
- 一種多參考行幀內預測模式候選清單的構建裝置,包括處理器以及儲存有電腦程式的記憶體,其中,所述處理器執行所述電腦程式時能夠實現如請求項1至21中任一所述的多參考行幀內預測模式候選清單的構建方法。
- 一種視訊解碼裝置,包括處理器以及儲存有電腦程式的記憶體,其中,所述處理器執行所述電腦程式時能夠實現如請求項22至26中任一所述的視訊解碼方法。
- 一種視訊編碼裝置,包括處理器以及儲存有電腦程式的記憶體,其中,所述處理器執行所述電腦程式時能夠實現如請求項27至32中任一所述的視訊編碼方法。
- 一種視訊編解碼系統,其中,包括如請求項37所述的視訊編碼裝置和如請求項36所述的視訊解碼裝置。
- 一種非瞬態電腦可讀儲存媒介,所述電腦可讀儲存媒介儲存有電腦程式,其中,所述電腦程式時被處理器執行時能夠實現如請求項1至21中任一所述的多參考行幀內預測模式候選清單的構建方法,或實現如請求項22至26中任一所述的視訊解碼方法,或實現如請求項27至32中任一所述的視訊編碼方法。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2022/103946 WO2024007158A1 (zh) | 2022-07-05 | 2022-07-05 | 一种候选列表构建方法、视频编解码方法、装置和系统 |
WOPCT/CN2022/103946 | 2022-07-05 | ||
PCT/CN2022/119139 WO2024007450A1 (zh) | 2022-07-05 | 2022-09-15 | 一种候选列表构建方法、视频编解码方法、装置和系统 |
WOPCT/CN2022/119139 | 2022-09-15 |
Publications (1)
Publication Number | Publication Date |
---|---|
TW202408240A true TW202408240A (zh) | 2024-02-16 |
Family
ID=89454051
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW112124895A TW202408240A (zh) | 2022-07-05 | 2023-07-04 | 一種候選清單構建方法、視訊編解碼方法、碼流、裝置、系統和儲存媒介 |
Country Status (2)
Country | Link |
---|---|
TW (1) | TW202408240A (zh) |
WO (2) | WO2024007158A1 (zh) |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3443746B1 (en) * | 2016-05-17 | 2021-07-21 | ARRIS Enterprises LLC | Template matching for jvet intra prediction |
US10230961B2 (en) * | 2016-06-03 | 2019-03-12 | Mediatek Inc. | Method and apparatus for template-based intra prediction in image and video coding |
WO2019103542A1 (ko) * | 2017-11-23 | 2019-05-31 | 엘지전자 주식회사 | 인트라 예측 모드 기반 영상 처리 방법 및 이를 위한 장치 |
US10419754B1 (en) * | 2018-04-02 | 2019-09-17 | Tencent America LLC | Method and apparatus for video decoding using multiple line intra prediction |
US20220038684A1 (en) * | 2018-10-31 | 2022-02-03 | Interdigital Vc Holdings, Inc. | Multi-reference line intra prediction and most probable mode |
AU2019382524B2 (en) * | 2018-11-22 | 2023-02-02 | Beijing Bytedance Network Technology Co., Ltd. | Pulse code modulation technique in video processing |
CN111654696B (zh) * | 2020-04-24 | 2022-08-05 | 北京大学 | 一种帧内的多参考行预测方法、装置、存储介质及终端 |
-
2022
- 2022-07-05 WO PCT/CN2022/103946 patent/WO2024007158A1/zh unknown
- 2022-09-15 WO PCT/CN2022/119139 patent/WO2024007450A1/zh unknown
-
2023
- 2023-07-04 TW TW112124895A patent/TW202408240A/zh unknown
Also Published As
Publication number | Publication date |
---|---|
WO2024007158A1 (zh) | 2024-01-11 |
WO2024007450A1 (zh) | 2024-01-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110393010B (zh) | 视频译码中的帧内滤波旗标 | |
TWI812694B (zh) | 以角度模式延伸之位置相關框內預測組合 | |
TWI826519B (zh) | 用於係數寫碼之規則寫碼位元子之減少 | |
US8995523B2 (en) | Memory efficient context modeling | |
JP5925830B2 (ja) | マルチレベル有効性写像スキャニング | |
TW201906406A (zh) | 與視訊寫碼中之變換處理一起應用之內部濾波 | |
US11451840B2 (en) | Trellis coded quantization coefficient coding | |
JP2018078569A (ja) | ビデオコード化のためのlcuベースの適応ループフィルタ処理 | |
JP2014535225A (ja) | イントラモードビデオコーディング | |
JP7250927B2 (ja) | フレーム内予測符号化方法、装置、電子デバイスおよびコンピュータプログラム | |
US11128876B2 (en) | Joint coefficient coding of transform skip and BDPCM mode for 4:4:4 color formats | |
TWI827662B (zh) | 用於係數寫碼之規則寫碼位元子之減少 | |
KR20050116344A (ko) | 동영상의 무손실 인코딩 및 디코딩 방법, 그 장치 | |
WO2020042630A1 (zh) | 一种视频图像预测方法及装置 | |
IL281532B1 (en) | Scalar quantizer decision diagram for dependent scalar quantization | |
US20060278725A1 (en) | Image encoding and decoding method and apparatus, and computer-readable recording medium storing program for executing the method | |
WO2020185530A1 (en) | Flexible allocation of regular bins in residual coding for video coding | |
WO2024007450A1 (zh) | 一种候选列表构建方法、视频编解码方法、装置和系统 | |
WO2024007366A1 (zh) | 一种帧内预测融合方法、视频编解码方法、装置和系统 | |
WO2024031691A1 (zh) | 一种视频编解码方法、装置和系统 | |
TW202404366A (zh) | 多參考行索引列表排序方法、視訊編解碼方法、裝置、系統和儲存媒介 | |
WO2024145851A1 (zh) | 帧内模板匹配预测方法、视频编解码方法、装置和系统 | |
WO2024145857A1 (zh) | 帧内模板匹配预测方法、视频编解码方法、装置和系统 | |
WO2022116854A1 (zh) | 视频解码方法、装置、可读介质、电子设备及程序产品 | |
WO2024077575A1 (zh) | 基于神经网络的环路滤波、视频编解码方法、装置和系统 |