TW202404358A - 編解碼方法、裝置、編碼設備、解碼設備以及儲存媒介 - Google Patents
編解碼方法、裝置、編碼設備、解碼設備以及儲存媒介 Download PDFInfo
- Publication number
- TW202404358A TW202404358A TW112124424A TW112124424A TW202404358A TW 202404358 A TW202404358 A TW 202404358A TW 112124424 A TW112124424 A TW 112124424A TW 112124424 A TW112124424 A TW 112124424A TW 202404358 A TW202404358 A TW 202404358A
- Authority
- TW
- Taiwan
- Prior art keywords
- value
- current block
- color component
- predicted
- sampling point
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 258
- 238000005070 sampling Methods 0.000 claims abstract description 256
- 239000013074 reference sample Substances 0.000 claims abstract description 157
- 238000013507 mapping Methods 0.000 claims description 163
- 230000008569 process Effects 0.000 claims description 80
- 238000001914 filtration Methods 0.000 claims description 68
- 238000004364 calculation method Methods 0.000 claims description 62
- 230000006870 function Effects 0.000 claims description 43
- 230000015654 memory Effects 0.000 claims description 41
- 238000012545 processing Methods 0.000 claims description 27
- 238000004590 computer program Methods 0.000 claims description 22
- 238000012937 correction Methods 0.000 claims description 7
- 239000013598 vector Substances 0.000 description 61
- 239000000523 sample Substances 0.000 description 36
- 238000005516 engineering process Methods 0.000 description 27
- 238000010586 diagram Methods 0.000 description 20
- 235000019557 luminance Nutrition 0.000 description 18
- 238000009795 derivation Methods 0.000 description 14
- 238000013139 quantization Methods 0.000 description 10
- 238000007781 pre-processing Methods 0.000 description 9
- 238000004891 communication Methods 0.000 description 8
- 101100533089 Mycoplasma gallisepticum (strain R(low / passage 15 / clone 2)) secY gene Proteins 0.000 description 6
- 238000012805 post-processing Methods 0.000 description 6
- 230000009466 transformation Effects 0.000 description 6
- 208000037170 Delayed Emergence from Anesthesia Diseases 0.000 description 5
- 241000023320 Luma <angiosperm> Species 0.000 description 5
- OSWPMRLSEDHDFF-UHFFFAOYSA-N methyl salicylate Chemical group COC(=O)C1=CC=CC=C1O OSWPMRLSEDHDFF-UHFFFAOYSA-N 0.000 description 5
- 230000001360 synchronised effect Effects 0.000 description 5
- 238000006073 displacement reaction Methods 0.000 description 4
- 230000003321 amplification Effects 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 238000003199 nucleic acid amplification method Methods 0.000 description 3
- YBJHBAHKTGYVGT-ZKWXMUAHSA-N (+)-Biotin Chemical compound N1C(=O)N[C@@H]2[C@H](CCCCC(=O)O)SC[C@@H]21 YBJHBAHKTGYVGT-ZKWXMUAHSA-N 0.000 description 2
- 101150039623 Clip1 gene Proteins 0.000 description 2
- 102000020897 Formins Human genes 0.000 description 2
- 108091022623 Formins Proteins 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000002474 experimental method Methods 0.000 description 2
- 238000007667 floating Methods 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- FEPMHVLSLDOMQC-UHFFFAOYSA-N virginiamycin-S1 Natural products CC1OC(=O)C(C=2C=CC=CC=2)NC(=O)C2CC(=O)CCN2C(=O)C(CC=2C=CC=CC=2)N(C)C(=O)C2CCCN2C(=O)C(CC)NC(=O)C1NC(=O)C1=NC=CC=C1O FEPMHVLSLDOMQC-UHFFFAOYSA-N 0.000 description 2
- KLDZYURQCUYZBL-UHFFFAOYSA-N 2-[3-[(2-hydroxyphenyl)methylideneamino]propyliminomethyl]phenol Chemical compound OC1=CC=CC=C1C=NCCCN=CC1=CC=CC=C1O KLDZYURQCUYZBL-UHFFFAOYSA-N 0.000 description 1
- 101100168473 Streptomyces griseolus cyp105B1 gene Proteins 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 201000001098 delayed sleep phase syndrome Diseases 0.000 description 1
- 208000033921 delayed sleep phase type circadian rhythm sleep disease Diseases 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 238000007373 indentation Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003062 neural network model Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 101150063279 subC gene Proteins 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 230000001131 transforming effect Effects 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/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/186—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a colour or a chrominance component
-
- 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/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/59—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution
-
- 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/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/593—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
一種編解碼方法、裝置、編碼設備、解碼設備以及儲存媒介,該方法包括:確定當前塊的第一和第二顏色分量的參考值;根據當前塊的第一顏色分量的參考值,確定加權係數;根據當前塊的第二顏色分量的參考值,確定當前塊的第二顏色分量的參考均值;以及根據當前塊的第二顏色分量的參考值與參考均值,確定當前塊的第二顏色分量的參考樣值;根據當前塊的第二顏色分量的參考均值、參考樣值以及對應的加權係數,確定當前塊中第二顏色分量採樣點的預測值;根據當前塊中第二顏色分量採樣點的預測值,確定當前塊中第二顏色分量採樣點的重建值。
Description
本申請實施例涉及視訊編解碼技術領域,尤其涉及一種編解碼方法、裝置、編碼設備、解碼設備以及儲存媒介。
隨著人們對視訊顯示品質要求的提高,高清和超高清視訊等新視訊應用形式應運而生。國際標準組織ISO/IEC和ITU-T的聯合視訊研究組(Joint Video Exploration Team,JVET)制定了下一代視訊編碼標準H.266/多功能視訊編碼(Versatile Video Coding,VVC)。
H.266/VVC中包含了顏色分量間預測技術。然而,H.266/VVC的顏色分量間預測技術計算得到的編碼塊的預測值與原始值之間存在較大偏差,這導致預測準確度低,造成解碼視訊的品質下降,降低了編碼性能。
本申請實施例提供一種編解碼方法、裝置、編碼設備、解碼設備以及儲存媒介,不僅可以提高色度預測的準確性,降低色度預測的計算複雜度,而且還能夠提升編解碼性能。
本申請實施例的技術方案可以如下實現:
第一方面,本申請實施例提供了一種解碼方法,包括:
確定當前塊的第一顏色分量的參考值和當前塊的第二顏色分量的參考值;
根據當前塊的第一顏色分量的參考值,確定加權係數;
根據當前塊的第二顏色分量的參考值,確定當前塊的第二顏色分量的參考均值;以及根據當前塊的第二顏色分量的參考值與當前塊的第二顏色分量的參考均值,確定當前塊的第二顏色分量的參考樣值;
根據當前塊的第二顏色分量的參考均值、當前塊的第二顏色分量的參考樣值以及對應的加權係數,確定當前塊中第二顏色分量採樣點的預測值;
根據當前塊中第二顏色分量採樣點的預測值,確定當前塊中第二顏色分量採樣點的重建值。
第二方面,本申請實施例提供了一種編碼方法,包括:
確定當前塊的第一顏色分量的參考值和當前塊的第二顏色分量的參考值;
根據當前塊的第一顏色分量的參考值,確定加權係數;
根據當前塊的第二顏色分量的參考值,確定當前塊的第二顏色分量的參考均值;以及根據當前塊的第二顏色分量的參考值與當前塊的第二顏色分量的參考均值,確定當前塊的第二顏色分量的參考樣值;
根據當前塊的第二顏色分量的參考均值、當前塊的第二顏色分量的參考樣值以及對應的加權係數,確定當前塊中第二顏色分量採樣點的預測值;
根據當前塊中第二顏色分量採樣點的預測值,確定當前塊中第二顏色分量採樣點的預測差值。
第三方面,本申請實施例提供了一種編碼裝置,包括第一確定單元、第一計算單元和第一預測單元;其中,
第一確定單元,配置為確定當前塊的第一顏色分量的參考值和當前塊的第二顏色分量的參考值;以及根據當前塊的第一顏色分量的參考值,確定加權係數;
第一計算單元,配置為根據當前塊的第二顏色分量的參考值,確定當前塊的第二顏色分量的參考均值;以及根據當前塊的第二顏色分量的參考值與當前塊的第二顏色分量的參考均值,確定當前塊的第二顏色分量的參考樣值;
第一預測單元,配置為根據當前塊的第二顏色分量的參考均值、當前塊的第二顏色分量的參考樣值以及對應的加權係數,確定當前塊中第二顏色分量採樣點的預測值;
第一確定單元,還配置為根據當前塊中第二顏色分量採樣點的預測值,確定當前塊中第二顏色分量採樣點的預測差值。
第四方面,本申請實施例提供了一種編碼設備,包括第一記憶體和第一處理器;其中,
第一記憶體,用於儲存能夠在第一處理器上運行的電腦程式;
第一處理器,用於在運行電腦程式時,執行如第二方面所述的方法。
第五方面,本申請實施例提供了一種解碼裝置,包括第二確定單元、第二計算單元和第二預測單元;其中,
第二確定單元,配置為確定當前塊的第一顏色分量的參考值和當前塊的第二顏色分量的參考值;以及根據當前塊的第一顏色分量的參考值,確定加權係數;
第二計算單元,配置為根據當前塊的第二顏色分量的參考值,確定當前塊的第二顏色分量的參考均值;以及根據當前塊的第二顏色分量的參考值與當前塊的第二顏色分量的參考均值,確定當前塊的第二顏色分量的參考樣值;
第二預測單元,配置為根據當前塊的第二顏色分量的參考均值、當前塊的第二顏色分量的參考樣值以及對應的加權係數,確定當前塊中第二顏色分量採樣點的預測值;
第二確定單元,還配置為根據當前塊中第二顏色分量採樣點的預測值,確定當前塊中第二顏色分量採樣點的重建值。
第六方面,本申請實施例提供了一種解碼設備,包括第二記憶體和第二處理器;其中,
第二記憶體,用於儲存能夠在第二處理器上運行的電腦程式;
第二處理器,用於在運行電腦程式時,執行如第一方面所述的方法。
第七方面,本申請實施例提供了一種電腦可讀儲存媒介,該電腦可讀儲存媒介儲存有電腦程式,所述電腦程式被執行時實現如第一方面所述的方法、或者如第二方面所述的方法。
本申請實施例提供了一種編解碼方法、裝置、編碼設備、解碼設備以及儲存媒介,無論是編碼端還是解碼端,通過確定當前塊的第一顏色分量的參考值和當前塊的第二顏色分量的參考值;根據當前塊的第一顏色分量的參考值,確定加權係數;根據當前塊的第二顏色分量的參考值,確定當前塊的第二顏色分量的參考均值;以及根據當前塊的第二顏色分量的參考值與當前塊的第二顏色分量的參考均值,確定當前塊的第二顏色分量的參考樣值;根據當前塊的第二顏色分量的參考均值、當前塊的第二顏色分量的參考樣值以及對應的加權係數,確定當前塊中第二顏色分量採樣點的預測值。這樣,在編碼端根據當前塊中第二顏色分量採樣點的預測值,能夠確定當前塊的第二顏色分量採樣點的預測差值;使得在解碼端,根據當前塊中第二顏色分量採樣點的預測值可以確定出當前塊的第二顏色分量採樣點的重建值。也就是說,基於當前塊的相鄰區域中的顏色分量參考資訊與當前塊內的顏色分量重建資訊,不僅需要構造亮度差向量,以便確定出加權係數;而且還需要根據色度參考資訊確定色度平均值,然後根據色度參考資訊和色度平均值來確定出色度差向量,進而根據色度差向量及對應的加權係數,再加上色度平均值即可確定出色度預測值;如此,通過對基於權重的色度預測的計算過程進行優化,能夠實現完全採用整型運算,而且充分考慮了權重模型的特性,合理優化整型運算過程;在充分保證色度預測準確性的同時,還可以降低計算複雜度,提高編解碼效率,進而提升編解碼性能。
為了能夠更加詳盡地瞭解本申請實施例的特點與技術內容,下面結合附圖對本申請實施例的實現進行詳細闡述,所附附圖僅供參考說明之用,並非用來限定本申請實施例。
除非另有定義,本文所使用的所有的技術和科學術語與屬於本申請的技術領域的技術人員通常理解的含義相同。本文中所使用的術語只是為了描述本申請實施例的目的,不是旨在限制本申請。
在以下的描述中,涉及到“一些實施例”,其描述了所有可能實施例的子集,但是可以理解,“一些實施例”可以是所有可能實施例的相同子集或不同子集,並且可以在不衝突的情況下相互結合。還需要指出,本申請實施例所涉及的術語“第一\第二\第三”僅是用於區別類似的物件,不代表針對物件的特定排序,可以理解地,“第一\第二\第三”在允許的情況下可以互換特定的順序或先後次序,以使這裡描述的本申請實施例能夠以除了在這裡圖示或描述的以外的順序實施。
在視訊圖像中,一般採用第一顏色分量、第二顏色分量和第三顏色分量來表徵編碼塊(Coding Block,CB)。其中,這三個顏色分量分別為一個亮度分量、一個藍色色度分量和一個紅色色度分量。示例性地,亮度分量通常使用符號Y表示,藍色色度分量通常使用符號Cb或者U表示,紅色色度分量通常使用符號Cr或者V表示;這樣,視訊圖像可以用YCbCr格式表示,也可以用YUV格式表示。除此之外,視訊圖像也可以是RGB格式、YCgCo格式等,本申請實施例不作任何限定。
可以理解,在當前的視訊圖像或者視訊編解碼過程中,對於跨分量預測技術,主要包括分量間線性模型(Cross-component Linear Model,CCLM)預測模式和多方向線性模型(Multi-Directional Linear Model,MDLM)預測模式,無論是根據CCLM預測模式推導的模型參數,還是根據MDLM預測模式推導的模型參數,其對應的預測模型均可以實現第一顏色分量到第二顏色分量、第二顏色分量到第一顏色分量、第一顏色分量到第三顏色分量、第三顏色分量到第一顏色分量、第二顏色分量到第三顏色分量、或者第三顏色分量到第二顏色分量等顏色分量間的預測。
以第一顏色分量到第二顏色分量的預測為例,假定第一顏色分量為亮度分量,第二顏色分量為色度分量,為了減少亮度分量與色度分量之間的冗餘,在H.266/多功能視訊編碼(Versatile Video Coding,VVC)中使用CCLM預測模式,即根據同一編碼塊的亮度重建值來構造色度的預測值,如:
。
其中,
表示編碼塊中待預測像素的位置座標,
表示水準方向,
表示豎直方向;
表示編碼塊中位置座標
的待預測像素對應的色度預測值,
表示同一編碼塊中(經過下採樣的)位置座標
的待預測像素對應的亮度重建值。另外,
和
表示模型參數,可通過參考像素推導得到。
對於編碼塊而言,其相鄰區域可以分為五部分:左側相鄰區域、上側相鄰區域、左下側相鄰區域、左上側相鄰區域和右上側相鄰區域。在H.266/VVC中包括三種跨分量線性模型預測模式,分別為:左側及上側相鄰的幀內CCLM預測模式(可以用INTRA_LT_CCLM表示)、左側及左下側相鄰的幀內CCLM預測模式(可以用INTRA_L_CCLM表示)和上側及右上側相鄰的幀內CCLM預測模式(可以用INTRA_T_CCLM表示)。在這三種預測模式中,每種預測模式都可以選取預設數量(比如4個)的參考像素用於模型參數
和
的推導,而這三種預測模式的最大區別在於用於推導模型參數
和
的參考像素對應的選擇區域是不同的。
具體地,針對色度分量對應的編碼塊尺寸為
,假定參考像素對應的上側選擇區域為
,參考像素對應的左側選擇區域為
;這樣,
對於INTRA_LT_CCLM模式,參考像素可以在上側相鄰區域和左側相鄰區域進行選取,即
,
;
對於INTRA_L_CCLM模式,參考像素可以在左側相鄰區域和左下側相鄰區域進行選取,即
,並設置
;
對於INTRA_T_CCLM模式,參考像素可以在上側相鄰區域和右上側相鄰區域進行選取,即
,並設置
。
需要注意的是,在VTM中,對於右上側相鄰區域內最多只儲存了
範圍的像素點,對於左下側相鄰區域內最多只儲存了
範圍的像素點。雖然INTRA_L_CCLM模式和INTRA_T_CCLM模式的選擇區域的範圍定義為
,但是在實際應用中,INTRA_L_CCLM模式的選擇區域將限制在
之內,INTRA_T_CCLM模式的選擇區域將限制在
之內;這樣,
對於INTRA_L_CCLM模式,參考像素可以在左側相鄰區域和左下側相鄰區域進行選取,
;
對於INTRA_T_CCLM模式,參考像素可以在上側相鄰區域和右上側相鄰區域進行選取,
。
參見圖1,其示出了一種有效相鄰區域的分佈示意圖。在圖1中,左側相鄰區域、左下側相鄰區域、上側相鄰區域和右上側相鄰區域都是有效的;另外,灰色填充的塊即為編碼塊中位置座標為
的待預測像素。
如此,在圖1的基礎上,針對三種預測模式的選擇區域如圖2所示。其中,在圖2中,(a)表示了INTRA_LT_CCLM模式的選擇區域,包括了左側相鄰區域和上側相鄰區域;(b)表示了INTRA_L_CCLM模式的選擇區域,包括了左側相鄰區域和左下側相鄰區域;(c)表示了INTRA_T_CCLM模式的選擇區域,包括了上側相鄰區域和右上側相鄰區域。這樣,在確定出三種預測模式的選擇區域之後,可以在選擇區域內進行用於模型參數推導的像素選取。如此選取到的像素可以稱為參考像素,通常參考像素的個數為4個;而且對於一個尺寸確定的
的編碼塊,其參考像素的位置一般是確定的。
在獲取到預設數量的參考像素之後,目前是按照圖3所示的模型參數推導方案的流程示意圖進行色度預測。根據圖3所示的流程,假定預設數量為4個,該流程可以包括:
S301:在選擇區域中獲取參考像素。
S302:判斷有效參考像素的個數。
S303:若有效參考像素的個數為0,則將模型參數
設置為0,
設置為預設值。
S304:色度預測值填充為預設值。
S305:若有效參考像素的個數為4,則經過比較獲得亮度分量中較大值的兩個參考像素和較小值的兩個參考像素。
S306:計算較大值對應的均值點和較小值對應的均值點。
S307:根據兩個均值點推導得到模型參數
和
。
S308:使用
和
所構建的預測模型進行色度預測。
需要說明的是,在VVC中,有效參考像素為0的這一步驟是根據相鄰區域的有效性進行判斷的。
還需要說明的是,利用“兩點確定一條直線”原則來構建預測模型,這裡的兩點可以稱為擬合點。目前的技術方案中,在獲取到4個參考像素之後,經過比較獲得亮度分量中較大值的兩個參考像素和較小值的兩個參考像素;然後根據較大值的兩個參考像素,求取一均值點(可以用
表示),根據較小值的兩個參考像素,求取另一均值點(可以用
表示),即可得到兩個均值點
和
;再將
和
作為兩個擬合點,能夠推導出模型參數(用
和
表示);最後根據
和
構建出預測模型,並根據該預測模型進行色度分量的預測處理。
然而,在相關技術中,針對每個編碼塊都使用簡單的線性模型
來預測色度分量,並且每個編碼塊任意位置像素都使用相同的模型參數
和
進行預測。這樣會導致以下缺陷:一方面,不同內容特性的編碼塊都利用簡單線性模型進行亮度到色度的映射,以此實現色度預測,但是並非任意編碼塊內的亮度到色度的映射函數都可以準確由此簡單線性模型擬合,這導致部分編碼塊預測效果不夠準確;另一方面,在預測過程中,編碼塊內不同位置的像素點均使用相同的模型參數
和
,編碼塊內不同位置的預測準確性的同樣存在較大差異;又一方面,在CCLM技術的預測過程中,未充分考慮當前塊的重建亮度資訊與相鄰區域的參考資訊之間的高度相關性,這會導致部分編碼塊在此技術下無法準確預測,從而影響該技術的增益效果。簡單來說,目前的CCLM技術下部分編碼塊的預測值與原始值之間存在較大偏差,導致預測準確度低,造成品質下降,進而降低了編解碼效率。
基於此,本申請實施例提供了一種編碼方法,通過確定當前塊的第一顏色分量的參考值和當前塊的第二顏色分量的參考值;根據當前塊的第一顏色分量的參考值,確定加權係數;根據當前塊的第二顏色分量的參考值,確定當前塊的第二顏色分量的參考均值;以及根據當前塊的第二顏色分量的參考值與當前塊的第二顏色分量的參考均值,確定當前塊的第二顏色分量的參考樣值;根據當前塊的第二顏色分量的參考均值、當前塊的第二顏色分量的參考樣值以及對應的加權係數,確定當前塊中第二顏色分量採樣點的預測值;根據當前塊中第二顏色分量採樣點的預測值,確定當前塊中第二顏色分量採樣點的預測差值。
本申請實施例還提供了一種解碼方法,通過確定當前塊的第一顏色分量的參考值和當前塊的第二顏色分量的參考值;根據當前塊的第一顏色分量的參考值,確定加權係數;根據當前塊的第二顏色分量的參考值,確定當前塊的第二顏色分量的參考均值;以及根據當前塊的第二顏色分量的參考值與當前塊的第二顏色分量的參考均值,確定當前塊的第二顏色分量的參考樣值;根據當前塊的第二顏色分量的參考均值、當前塊的第二顏色分量的參考樣值以及對應的加權係數,確定當前塊中第二顏色分量採樣點的預測值;根據當前塊中第二顏色分量採樣點的預測值,確定當前塊中第二顏色分量採樣點的重建值。
這樣,基於當前塊的相鄰區域中的顏色分量參考資訊與當前塊內的顏色分量重建資訊,不僅需要構造亮度差向量,以便確定出加權係數;而且還需要根據色度參考資訊確定色度平均值,然後根據色度參考資訊和色度平均值來確定出色度差向量,進而根據色度差向量及對應的加權係數,再加上色度平均值即可確定出色度預測值;如此,通過對基於權重的色度預測的計算過程進行優化,能夠實現完全採用整型運算,而且充分考慮了權重模型的特性,合理優化整型運算過程;在充分保證色度預測準確性的同時,還可以降低計算複雜度,提高編解碼效率,進而提升編解碼性能。
下面將結合附圖對本申請各實施例進行詳細說明。
參見圖4A,其示出了本申請實施例提供的一種編碼器的組成框圖示意圖。如圖4A所示,編碼器(具體為“視訊編碼器”)100可以包括變換與量化單元101、幀內估計單元102、幀內預測單元103、運動補償單元104、運動估計單元105、反變換與反量化單元106、濾波器控制分析單元107、濾波單元108、編碼單元109和解碼圖像緩存單元110等,其中,濾波單元108可以實現去方塊濾波及樣本自我調整縮進(Sample Adaptive 0ffset,SAO)濾波,編碼單元109可以實現頭資訊編碼及基於上下文的自我調整二進位算術編碼(Context-based Adaptive Binary Arithmetic Coding,CABAC)。針對輸入的原始視訊訊號,通過編碼樹塊(Coding Tree Unit,CTU)的劃分可以得到一個視訊編碼塊,然後對經過幀內或幀間預測後得到的殘差像素資訊通過變換與量化單元101對該視訊編碼塊進行變換,包括將殘差資訊從像素域變換到變換域,並對所得的變換係數進行量化,用以進一步減少位元速率;幀內估計單元102和幀內預測單元103是用於對該視訊編碼塊進行幀內預測;明確地說,幀內估計單元102和幀內預測單元103用於確定待用以編碼該視訊編碼塊的幀內預測模式;運動補償單元104和運動估計單元105用於執行所接收的視訊編碼塊相對於一或多個參考幀中的一或多個塊的幀間預測編碼以提供時間預測資訊;由運動估計單元105執行的運動估計為產生運動向量的過程,所述運動向量可以估計該視訊編碼塊的運動,然後由運動補償單元104基於由運動估計單元105所確定的運動向量執行運動補償;在確定幀內預測模式之後,幀內預測單元103還用於將所選擇的幀內預測資料提供到編碼單元109,而且運動估計單元105將所計算確定的運動向量資料也發送到編碼單元109;此外,反變換與反量化單元106是用於該視訊編碼塊的重構建,在像素域中重構建殘差塊,該重構建殘差塊通過濾波器控制分析單元107和濾波單元108去除方塊效應偽影,然後將該重構殘差塊添加到解碼圖像緩存單元110的幀中的一個預測性塊,用以產生經重構建的視訊編碼塊;編碼單元109是用於編碼各種編碼參數及量化後的變換係數,在基於CABAC的編碼演算法中,上下文內容可基於相鄰編碼塊,可用於編碼指示所確定的幀內預測模式的資訊,輸出該視訊訊號的碼流;而解碼圖像緩存單元110是用於存放重構建的視訊編碼塊,用於預測參考。隨著視訊圖像編碼的進行,會不斷生成新的重構建的視訊編碼塊,這些重構建的視訊編碼塊都會被存放在解碼圖像緩存單元110中。
參見圖4B,其示出了本申請實施例提供的一種解碼器的組成框圖示意圖。如圖4B所示,解碼器(具體為“視訊解碼器”)200包括解碼單元201、反變換與反量化單元202、幀內預測單元203、運動補償單元204、濾波單元205和解碼圖像緩存單元206等,其中,解碼單元201可以實現頭資訊解碼以及CABAC解碼,濾波單元205可以實現去方塊濾波以及SAO濾波。輸入的視訊訊號經過圖4A的編碼處理之後,輸出該視訊訊號的碼流;該碼流輸入解碼器200中,首先經過解碼單元201,用於得到解碼後的變換係數;針對該變換係數通過反變換與反量化單元202進行處理,以便在像素域中產生殘差塊;幀內預測單元203可用於基於所確定的幀內預測模式和來自當前幀或圖片的先前經解碼塊的資料而產生當前視訊解碼塊的預測資料;運動補償單元204是通過剖析運動向量和其他關聯語法元素來確定用於視訊解碼塊的預測資訊,並使用該預測資訊以產生正被解碼的視訊解碼塊的預測性塊;通過對來自反變換與反量化單元202的殘差塊與由幀內預測單元203或運動補償單元204產生的對應預測性塊進行求和,而形成解碼的視訊塊;該解碼的視訊訊號通過濾波單元205以便去除方塊效應偽影,可以改善視訊品質;然後將經解碼的視訊塊儲存於解碼圖像緩存單元206中,解碼圖像緩存單元206儲存用於後續幀內預測或運動補償的參考圖像,同時也用於視訊訊號的輸出,即得到了所恢復的原始視訊訊號。
需要說明的是,本申請實施例的方法主要應用在如圖4A所示的幀內預測單元103部分和如圖4B所示的幀內預測單元203部分。也就是說,本申請實施例既可以應用於編碼器,也可以應用於解碼器,甚至還可以同時應用於編碼器和解碼器,但是本申請實施例不作具體限定。
還需要說明的是,當應用於幀內預測單元103部分時,“當前塊”具體是指當前待進行幀內預測的編碼塊;當應用於幀內預測單元203部分時,“當前塊”具體是指當前待進行幀內預測的解碼塊。
在本申請的一實施例中,參見圖5,其示出了本申請實施例提供的一種解碼方法的流程示意圖。如圖5所示,該方法可以包括:
S501:確定當前塊的第一顏色分量的參考值和當前塊的第二顏色分量的參考值。
需要說明的是,本申請實施例的解碼方法應用於解碼裝置,或者集成有該解碼裝置的解碼設備(也可簡稱為“解碼器”)。另外,本申請實施例的解碼方法具體可以是指一種幀內預測方法,更具體地,是一種基於權重的色度預測(Weight-based Chroma Prediction,WCP)的整數化運算方法。
在本申請實施例中,視訊圖像可以劃分為多個解碼塊,每個解碼塊可以包括第一顏色分量、第二顏色分量和第三顏色分量,而這裡的當前塊是指視訊圖像中當前待進行幀內預測的解碼塊。另外,假定當前塊進行第一顏色分量的預測,而且第一顏色分量為亮度分量,即待預測分量為亮度分量,那麼當前塊也可以稱為亮度預測塊;或者,假定當前塊進行第二顏色分量的預測,而且第二顏色分量為色度分量,即待預測分量為色度分量,那麼當前塊也可以稱為色度預測塊。
還需要說明的是,在本申請實施例中,當前塊的參考資訊可以包括當前塊的相鄰區域中的第一顏色分量採樣點的取值和當前塊的相鄰區域中的第二顏色分量採樣點的取值,這些採樣點(Sample)可以是根據當前塊的相鄰區域中的已解碼像素確定的。在一些實施例中,當前塊的相鄰區域可以包括下述至少之一:上側相鄰區域、右上側相鄰區域、左側相鄰區域和左下側相鄰區域。
在這裡,上側相鄰區域和右上側相鄰區域整體可以看作上方區域,左側相鄰區域和左下側相鄰區域整體可以看作左方區域;除此之外,相鄰區域還可以包括左上方區域,詳見圖6所示。其中,在對當前塊進行第二顏色分量的預測時,當前塊的上方區域、左方區域和左上方區域作為相鄰區域均可被稱為當前塊的參考區域,而且參考區域中的像素都是已重建的參考像素。
在一些實施例中,確定當前塊的第一顏色分量的參考值和當前塊的第二顏色分量的參考值,可以包括:
根據當前塊的相鄰區域中的第一顏色分量採樣點的取值,確定當前塊的第一顏色分量的參考值;
根據當前塊的相鄰區域中的第二顏色分量採樣點的取值,確定當前塊的第二顏色分量的參考值。
需要說明的是,在本申請實施例中,當前塊的參考像素可以是指與當前塊相鄰的參考像素點,也可稱為當前塊的相鄰區域中的第一顏色分量採樣點、第二顏色分量採樣點,用Neighboring Sample或Reference Sample表示。其中,這裡的相鄰可以是空間相鄰,但是並不局限於此。例如,相鄰也可以是時域相鄰、空間與時域相鄰,甚至當前塊的參考像素還可以是對空間相鄰、時域相鄰、空間和時域相鄰的參考像素點進行某種處理後得到的參考像素等等,本申請實施例不作任何限定。
還需要說明的是,在本申請實施例中,假定第一顏色分量為亮度分量,第二顏色分量為色度分量;那麼,當前塊的相鄰區域中的第一顏色分量採樣點的取值表示為當前塊的參考像素對應的參考亮度資訊,當前塊的相鄰區域中的第二顏色分量採樣點的取值表示為當前塊的參考像素對應的參考色度資訊。
還需要說明的是,在本申請實施例中,從當前塊的相鄰區域中確定第一顏色分量採樣點的取值或第二顏色分量採樣點的取值,這裡的相鄰區域可以是僅包括上側相鄰區域,或者僅包括左側相鄰區域,也可以是包括上側相鄰區域和右上側相鄰區域,或者包括左側相鄰區域和左下側相鄰區域,或者包括上側相鄰區域和左側相鄰區域,或者甚至還可以包括上側相鄰區域、右上側相鄰區域和左側相鄰區域等等,本申請實施例不作任何限定。
還需要說明的是,在本申請實施例中,相鄰區域也可以是根據當前塊的預測模式進行確定。在一種具體的實施例中,可以包括:若當前塊的預測模式為上相鄰模式,則確定當前塊的相鄰區域包括上側相鄰區域和/或右上側相鄰區域;若當前塊的預測模式為左相鄰模式,則確定當前塊的相鄰區域包括左側相鄰區域和/或左下側相鄰區域。其中,所述上相鄰模式包括使用上相鄰參考採樣點的預測模式,所述左相鄰模式包括使用左相鄰參考採樣點的預測模式。
示例性地,如果當前塊的預測模式是上相鄰模式中的垂直模式,那麼基於權重的色度分量預測中相鄰區域可以只選取上側相鄰區域和/或右上側相鄰區域;如果當前塊的預測模式是左相鄰模式中的水準模式,那麼基於權重的色度分量預測中相鄰區域可以只選取左側相鄰區域和/或左下側相鄰區域。
進一步地,在一些實施例中,對於當前塊的參考像素的確定,可以包括:對當前塊的相鄰區域中的像素進行篩選處理,確定參考像素。
具體來說,在本申請實施例中,根據當前塊的相鄰區域中的像素,組成第一參考像素集合;那麼可以對第一參考像素集合進行篩選處理,確定參考像素。在這裡,參考像素的數量可以為M個,M為正整數。換句話說,可以從相鄰區域中的像素中選取出M個參考像素。其中,M的取值一般可以為4,但是並不作具體限定。
還需要說明的是,在當前塊的相鄰區域中的像素中,可能會存在部分不重要的像素(例如,這些像素的相關性較差)或者部分異常的像素,為了保證預測的準確性,需要將這些像素剔除掉,以便得到有效的參考像素。因此,在一種具體的實施例中,對相鄰區域中的像素進行篩選處理,確定參考像素,可以包括:
基於相鄰區域中的像素的位置和/或顏色分量強度,確定待選擇像素位置;
根據待選擇像素位置,從相鄰區域中的像素中確定參考像素。
需要說明的是,在本申請實施例中,顏色分量強度可以用顏色分量資訊來表示,比如參考亮度資訊、參考色度資訊等;這裡,顏色分量資訊的值越大,表明了顏色分量強度越高。這樣,針對相鄰區域中的像素進行篩選,可以是根據像素的位置來進行篩選的,也可以是根據顏色分量強度來進行篩選的,從而根據篩選出的像素確定當前塊的參考像素,進一步可以確定出當前塊的相鄰區域中的第一顏色分量採樣點的取值和當前塊的相鄰區域中的第二顏色分量採樣點的取值;然後根據當前塊的相鄰區域中的第一顏色分量採樣點的取值來確定當前塊的第一顏色分量的參考值,根據當前塊的相鄰區域中的第二顏色分量採樣點的取值來確定當前塊的第二顏色分量的參考值。
在一些實施例中,根據當前塊的相鄰區域中的第一顏色分量採樣點的取值,確定當前塊的第一顏色分量的參考值,可以包括:對當前塊的相鄰區域中的第一顏色分量採樣點的取值進行第一濾波處理,確定當前塊的第一顏色分量的參考值。
在本申請實施例中,第一濾波處理為下採樣濾波處理。其中,第一顏色分量為亮度分量,此時可以通過對參考亮度資訊進行下採樣濾波處理,使得濾波後的參考亮度資訊的空間解析度與參考色度資訊的空間解析度相同。示例性地,如果當前塊的尺寸大小為2M×2N,參考亮度資訊為2M+2N個,那麼在經過下採樣濾波之後,可以變換至M+N個,以得到當前塊的第一顏色分量的參考值。
在一些實施例中,根據當前塊的相鄰區域中的第二顏色分量採樣點的取值,確定當前塊的第二顏色分量的參考值,可以包括:對當前塊的相鄰區域中的第二顏色分量採樣點的取值進行第二濾波處理,確定當前塊的第二顏色分量的參考值。
在本申請實施例中,第二濾波處理為上採樣濾波處理。其中,上取樣速率是2的正整數倍。
也就是說,第一顏色分量為亮度分量,第二顏色分量為色度分量,本申請實施例也可以對參考色度資訊進行上採樣濾波,使得濾波後的參考色度資訊的空間解析度與參考亮度的空間解析度相同。示例性地,如果參考亮度資訊為2M+2N個,而參考色度資訊為M+N個;那麼在對參考色度資訊經過上採樣濾波之後,可以變換至2M+2N個,以得到當前塊的第二顏色分量的參考值。
S502:根據當前塊的第一顏色分量的參考值,確定加權係數。
需要說明的是,在本申請實施例中,當前塊的參考資訊還可以包括當前塊中第一顏色分量採樣點的重建值。假定第一顏色分量為亮度分量,那麼當前塊中第一顏色分量採樣點的重建值即為當前塊的重建亮度資訊。
在一些實施例中,根據所述當前塊的第一顏色分量的參考值,確定加權係數,可以包括:
確定當前塊中第一顏色分量採樣點的重建值;
根據當前塊中第一顏色分量採樣點的重建值和當前塊的第一顏色分量的參考值,確定當前塊的第一顏色分量的參考樣值;
根據當前塊的第一顏色分量的參考樣值,確定加權係數。
在一種可能的實施例中,根據當前塊中第一顏色分量採樣點的重建值和當前塊的第一顏色分量的參考值,確定當前塊的第一顏色分量的參考樣值,可以包括:
確定當前塊中第一顏色分量採樣點的重建值和當前塊的第一顏色分量的參考值的差值;
根據差值,確定當前塊的第一顏色分量的參考樣值。
在本申請實施例中,可以將當前塊的第一顏色分量的參考樣值設置為等於差值的絕對值。另外,根據差值來確定當前塊的第一顏色分量的參考樣值,還可以是對差值進行平方計算、或者將差值進行一些相關處理和映射等,以確定出當前塊的第一顏色分量的參考樣值,這裡並不作任何限定。
在另一種可能的實施例中,根據當前塊中第一顏色分量採樣點的重建值和當前塊的第一顏色分量的參考值,確定當前塊的第一顏色分量的參考樣值,可以包括:
對當前塊中第一顏色分量採樣點的重建值進行第三濾波處理,得到當前塊中第一顏色分量採樣點的濾波樣值;
根據當前塊中第一顏色分量採樣點的濾波樣值和當前塊的第一顏色分量的參考值,確定當前塊的第一顏色分量的參考樣值。
在本申請實施例中,第三濾波處理為下採樣濾波處理。其中,第一顏色分量為亮度分量,此時也可以對當前塊內的重建亮度資訊進行下採樣濾波處理。示例性地,如果當前塊內的重建亮度資訊的數量為2M×2N,那麼在經過下採樣濾波之後,可以變換至M×N。
在本申請實施例中,根據當前塊中第一顏色分量採樣點的濾波樣值和當前塊的第一顏色分量的參考值,確定當前塊的第一顏色分量的參考樣值,可以是根據當前塊中第一顏色分量採樣點的濾波樣值和當前塊的第一顏色分量的參考值之差來確定當前塊的第一顏色分量的參考樣值;更具體地,可以是根據當前塊中第一顏色分量採樣點的濾波樣值和當前塊的第一顏色分量的參考值之差的絕對值來確定當前塊的第一顏色分量的參考樣值,這裡也不作任何限定。
可以理解地,在確定出當前塊的第一顏色分量的參考樣值之後,本申請實施例可以進一步確定加權係數。其中,當前塊的第一顏色分量的參考樣值可以是當前塊中第一顏色分量採樣點的重建值和當前塊的第一顏色分量的參考值之差的絕對值。
在一種可能的實現方式中,假定第一顏色分量為色度分量,第二顏色分量為亮度分量,本申請實施例主要是對當前塊中待預測像素的色度分量進行預測。首先選取當前塊中的至少一個待預測像素,分別計算其重建色度與相鄰區域中的參考色度之間的色度差(用
表示);不同位置的待預測像素在相鄰區域的色度差存在差異,色度差最小的參考像素位置會跟隨當前塊中待預測像素的變化,通常色度差的大小代表色度之間的相近程度。如果
較小,表明色度值的相似性比較強,對應的加權係數(用
表示)可以賦予較大的權重;反之,如果
較大,表明色度值的相似性比較弱,
可以賦予較小的權重。也就是說,
與
之間的關係近似呈反比。這樣,根據
可以建立預設的映射關係,
。其中,
表示第一顏色分量的參考樣值,
表示在預設映射關係下第一顏色分量的參考樣值對應的取值,
表示加權係數,即將
設置為等於
。
在另一種可能的實現方式中,假定第一顏色分量為亮度分量,第二顏色分量為色度分量,這時候也可以選取當前塊中的至少一個待預測像素,分別計算其重建亮度與相鄰區域中的參考亮度之間的亮度差(用
表示)。其中,如果
較小,表明亮度值的相似性比較強,對應的加權係數(用
表示)可以賦予較大的權重;反之,如果
較大,表明亮度值的相似性比較弱,
可以賦予較小的權重。這樣,在計算加權係數時,第一顏色分量的參考樣值也可以為
,根據
也可計算出加權係數。
需要注意的是,在對當前塊中待預測像素的色度分量進行預測時,由於待預測像素的色度分量值無法直接確定,因而參考像素與待預測像素之間的色度差
也無法直接得到;但是當前塊的局部區域內,分量間存在強相關性,這時候可以根據參考像素與待預測像素之間的亮度差
來推導得到
;即根據
和模型因數的乘積,可以得到
;這樣,該乘積值等於模型因數與
的乘積。也就是說,在本申請實施例中,對於第一顏色分量的參考樣值而言,其可以是
,即色度差的絕對值;或者也可以是
,即亮度差的絕對值;或者還可以是
,即亮度差的絕對值與預設乘子之積等等。其中,這裡的預設乘子即為本申請實施例所述的模型因數。
進一步地,對於模型因數而言,在一種具體的實施例中,該方法還可以包括:根據參考像素的第一顏色分量值與參考像素的第二顏色分量值進行最小二乘法計算,確定模型因數。
也就是說,假定參考像素的數量為N個,參考像素的第一顏色分量值即為當前塊的參考亮度資訊,參考像素的第二顏色分量值即為當前塊的參考色度資訊,那麼可以對N個參考像素的色度分量值和亮度分量值進行最小二乘法計算,得到模型因數。示例性地,最小二乘法回歸計算如下所示,
(1)
其中,
表示第
個參考像素的亮度分量值,
表示第
個參考像素的色度分量值,
表示參考像素的個數;
表示模型因數,其可以是採用最小二乘法回歸計算得到。需要注意的是,模型因數也可以是固定取值或者基於固定取值進行微調整等等,本申請實施例並不作具體限定。
在又一種可能的實施例中,當前塊的第一顏色分量的參考樣值可以是當前塊中亮度重建資訊(用recY表示)和inSize數量的參考亮度資訊(用refY表示)之差的絕對值。其中,對於當前塊中的待預測像素
,其對應的亮度差向量
可以是由其對應的亮度重建資訊
與inSize數量的參考亮度資訊
相減並取絕對值得到的;即在本申請實施例中,當前塊的第一顏色分量的參考樣值可以用
表示。
進一步地,在一些實施例中,根據當前塊的第一顏色分量的參考樣值,確定加權係數,可以包括:根據當前塊的第一顏色分量的參考樣值,確定權重索引值;根據權重索引值,使用第一預設映射關係確定加權係數。
在一種具體的實施例中,根據當前塊的第一顏色分量的參考樣值,確定權重索引值,可以包括:
確定當前塊的最大權重索引值和最小權重索引值;
根據最大權重索引值和最小權重索引值對第一顏色分量的參考樣值進行修正處理,確定權重索引值。
需要說明的是,在本申請實施例中,最大權重索引值可以用
表示,最小權重索引值可以用表示零表示,權重索引值用index表示。在這裡,權重索引值是限定在
和
之間。示例性地,權重索引值可以根據下式計算得到,如下所示:
(2)
其中,k=0, 1, ..., inSize-1,
。也就是說,在式(2)中,如果
,那麼
;如果
,那麼
;否則,如果
,那麼
。
在一種具體的實施例中,最大權重索引值可以與顏色分量的位元深度(用
表示)有關。示例性地,最大權重索引值可以根據下式計算得到,如下所示:
(3)
需要說明的是,在本申請實施例中,
的取值包括但不限於根據式(3)計算得到,它還可以是WCP的核心參數中所確定的。
進一步地,對於第一預設映射關係而言,在一些實施例中,第一預設映射關係是權重索引值與加權係數的數值映射查閱資料表。也就是說,在本申請實施例中,解碼端可以預先設置有對應的查閱資料表(Look Up Table,LUT)。通過該查閱資料表,結合
即可確定出對應的加權係數。示例性地,加權係數
可以用下述的映射關係表示:
(4)
對於第一預設映射關係而言,在一些實施例中,第一預設映射關係還可以是預設函數關係。在一些實施例中,根據權重索引值,使用第一預設映射關係確定加權係數,可以包括:確定在第一預設映射關係下權重索引值對應的第一取值;將加權係數設置為等於第一取值。
在一種具體的實施例中,確定在第一預設映射關係下權重索引值對應的第一取值,可以包括:
確定第一因數;
根據權重索引值,使用第二預設映射關係確定第二取值;
計算第一因數與第二取值的第一乘積值;
將第一取值設置為等於第一乘積值在第一預設映射關係下對應的取值。
需要說明的是,在本申請實施例中,第一因數可以用
表示,權重索引值用
表示。示例性地,加權係數
還可以用下述的函數關係表示:
(5)
在這裡,第二預設映射關係可以為基於n的指數函數關係,例如
;其中,n的取值等於權重索引值,即n=0, 1, …,
。這樣,當n的取值等於
時,那麼第二取值等於
,第一乘積值等於
。另外,第一預設映射關係可以設置為
;那麼當
等於第一乘積值時,
的值即為第一取值,也即加權係數
。
還需要說明的是,在本申請實施例中,對於第一預設映射關係而言,可以用下式表示:
(6)
其中,
;
;
表示小於或等於x的最大整數。
進一步地,對於第一因數而言,在一些實施例中,第一因數可以為預設常數值。也就是說,第一因數可以是預先設定的常數,其與塊尺寸參數無關。
對於第一因數而言,在一些實施例中,第一因數的取值還可以與塊尺寸參數有關。在一種具體的實施例中,確定第一因數,可以包括:根據當前塊的尺寸參數,確定第一因數的取值;其中,當前塊的尺寸參數包括以下參數的至少之一:當前塊的寬度,當前塊的高度。也就是說,本申請實施例可以採用分類方式固定第一因數的取值。例如,將根據當前塊的尺寸參數分為三類,確定每一類對應的第一因數的取值。針對這種情況,本申請實施例還可以預先儲存當前塊的尺寸參數與第一因數的取值映射查閱資料表,然後根據該查閱資料表即可確定出第一因數的取值。
示例性地,W表示當前塊的寬度,H表示當前塊的高度;若當前塊的尺寸參數滿足第一預設條件,即Min(W, H)<=4,則設置第一因數的取值為第一值;若當前塊的尺寸參數滿足第二預設條件,即Min(W, H)>4&& Min(W, H)<=16,則設置第一因數的取值為第二值;若當前塊的尺寸參數滿足第三預設條件,即Min(W, H)>16,則設置第一因數的取值為第三值。簡單來說,在本申請實施例中,第一因數可以是預先設定的常數,也可以是根據當前塊的尺寸參數來確定的,甚至還可以是其它方式(例如,根據顏色分量的
等)來確定,這裡不作任何限定。
進一步地,在一些實施例中,所述根據當前塊的第一顏色分量的參考樣值,確定權重索引值,可以包括:確定第二因數;根據當前塊的第一顏色分量的參考樣值和第二因數,確定權重索引值。
需要說明的是,在本申請實施例中,一定條件下還可以根據WCP的核心參數中的控制參數對加權係數進行調整。在這裡,第二因數即為本實施例所述的控制參數(也可稱為“尺度參數”、“尺度因數”等),用S表示。示例性地,如果當前塊的尺寸靈活性好,可以根據該第二因數調整權重係數,以非線性函數(例如Softmax函數)為例,可以根據當前塊所歸屬的塊分類類別的不同,選擇不同的第二因數來調整函數,以便根據調整後的函數確定出加權係數。
還需要說明的是,對於第二因數而言,在一些實施例中,第二因數可以是預設常數值。也就是說,在這種情況下,對於S而言,可以根據色度相對平坦的特性調整鄰近色度的加權係數分佈,從而捕獲適合自然圖像色度預測的加權係數分佈。為了確定適合自然圖像色度預測的參數S,遍歷給定的S集合,通過不同S下預測色度與原始色度間的差距來衡量S合適與否。示例性地,S可以取
,其中ε∈{1, 0, -1, -2, -3};經過試驗發現,在此S集合中,S的最佳取值為4。因此,在一種具體的實施例中,S可以設置為4,但是本申請實施例並不作具體限定。
還需要說明的是,對於第二因數而言,在一些實施例中,第二因數的取值還可以與塊尺寸參數有關。在一種具體的實施例中,確定第二因數,可以包括:根據當前塊的尺寸參數,確定第二因數的取值;其中,當前塊的尺寸參數包括以下參數的至少之一:當前塊的寬度,當前塊的高度。
在一種可能的實現方式中,所述根據當前塊的尺寸參數,確定第二因數的取值,可以包括:
若當前塊的高度和寬度的最小值小於或等於4,則確定第二因數為8;
若當前塊的高度和寬度的最小值大於4且小於或等於16,則確定第二因數為12;
若當前塊的高度和寬度的最小值大於16,則確定第二因數為16。
需要說明的是,本申請實施例可以採用分類方式固定第二因數的取值。例如,將根據當前塊的尺寸參數分為三類,確定每一類對應的第二因數的取值。針對這種情況,本申請實施例還可以預先儲存當前塊的尺寸參數與第二因數的取值映射查閱資料表,然後根據該查閱資料表即可確定出第二因數的取值。示例性地,表1示出了本申請實施例提供的一種第二因數與當前塊的尺寸參數之間的對應關係。
表1
當前塊的尺寸參數 | 第二因數 |
Min(W, H)<=4 | 8 |
Min(W, H)>4&& Min(W, H)<=16 | 12 |
Min(W, H)>16 | 16 |
在另一種可能的實現方式中,在對權重係數的調整中,還可以對上述的第二因數與當前塊的尺寸參數之間的對應關係進行微調。表2示出了本申請實施例提供的另一種第二因數與當前塊的尺寸參數之間的對應關係。
表2
當前塊的尺寸參數 | 第二因數 |
Min(W, H)<=4 | 8 |
Min(W, H)>4&& Min(W, H)< 16 | 12 |
Min(W, H)>=16 | 16 |
在又一種可能的實現方式中,在對權重係數的調整中,還可以對上述的第二因數的取值進行微調。在一些實施例中,所述根據當前塊的尺寸參數,確定第二因數的取值,可以包括:
若當前塊的高度和寬度的最小值小於或等於4,則確定第二因數為7;
若當前塊的高度和寬度的最小值大於4且小於或等於16,則確定第二因數為11;
若當前塊的高度和寬度的最小值大於16,則確定第二因數為15。
也就是說,通過對上述的第二因數的取值進行微調,表3示出了本申請實施例提供的又一種第二因數與當前塊的尺寸參數之間的對應關係。
表3
當前塊的尺寸參數 | 第二因數 |
Min(W, H)<=4 | 7 |
Min(W, H)>4&& Min(W, H)< =16 | 11 |
Min(W, H)>16 | 15 |
還需要說明的是,在本申請實施例中,將根據當前塊的尺寸參數分為三類,還可以通過塊種類索引值(用wcpSizeId表示)來指示不同的尺寸參數。在再一種可能的實現方式下,所述根據當前塊的尺寸參數,確定第二因數的取值,可以包括:根據塊種類索引值,確定第二因數的取值。
示例性地,若塊種類索引值等於0,則指示Min(W, H)<=4的當前塊;若塊種類索引值等於1,則指示Min(W, H)>4&& Min(W, H)< =16的當前塊;若塊種類索引值等於2,則指示Min(W, H)>16的當前塊。在這種情況下,表4示出了本申請實施例提供的一種第二因數與塊種類索引值之間的對應關係。
表4
塊種類索引值 | 第二因數 |
0 | 8 |
1 | 12 |
2 | 16 |
示例性地,若塊種類索引值等於0,則指示Min(W, H)<128的當前塊;若塊種類索引值等於1,則指示Min(W, H)>=128&& Min(W, H)< =256的當前塊;若塊種類索引值等於2,則指示Min(W, H)>256的當前塊。在這種情況下,表5示出了本申請實施例提供的另一種第二因數與塊種類索引值之間的對應關係。
表5
塊種類索引值 | 第二因數 |
0 | 10 |
1 | 8 |
2 | 1 |
示例性地,若塊種類索引值等於0,則指示Min(W, H)<64的當前塊;若塊種類索引值等於1,則指示Min(W, H)>=64&& Min(W, H)< =512的當前塊;若塊種類索引值等於2,則指示Min(W, H)>512的當前塊。在這種情況下,表6示出了本申請實施例提供的又一種第二因數與塊種類索引值之間的對應關係。
表6
塊種類索引值 | 第二因數 |
0 | 16 |
1 | 4 |
2 | 1 |
還需要說明的是,對於第二因數而言,在一些實施例中,第二因數還可以根據當前塊的參考像素數量進行分類。在另一種具體的實施例中,確定第二因數,可以包括:根據當前塊的參考像素數量,確定第二因數的取值;其中,N表示參考像素數量。
在一種可能的實現方式中,所述根據當前塊的參考像素數量,確定第二因數的取值,可以包括:
若N的取值小於16,則確定第二因數為8;
若N的取值大於或等於16且小於32,則確定第二因數為12;
若N的取值大於或等於32,則確定第二因數為16。
也就是說,根據當前塊的參考像素數量進行分類,表7示出了本申請實施例提供的一種第二因數與參考像素數量之間的對應關係。
表7
參考像素數量 | 第二因數 |
N<16 | 8 |
N >=16&& N < 32 | 12 |
N >=32 | 16 |
需要注意的是,無論是表1、表2、表3,還是表4、表5、表6、表7等,這裡僅是一種示例性查閱資料表,本申請實施例並不作具體限定。
進一步地,在一些實施例中,根據當前塊的第一顏色分量的參考樣值和第二因數,確定權重索引值,可以包括:
根據第一顏色分量的參考樣值和第二因數,使用第三預設映射關係確定第三取值;
確定當前塊的最大權重索引值和最小權重索引值;
根據最大權重索引值和最小權重索引值對第三取值進行修正處理,確定權重索引值。
需要說明的是,在本申請實施例中,最大權重索引值可以用
表示,最小權重索引值可以用表示零表示,權重索引值用index表示。在這裡,權重索引值是限定在
和
之間,而第三取值是
。示例性地,權重索引值可以根據下式計算得到,如下所示:
(7)
其中,k=0, 1, ..., inSize-1,
。也就是說,在式(7)中,如果
,那麼
;如果
,那麼
;否則,如果
,那麼
。在這裡,
的取值可以是根據上述的式(3)計算得到,還可以是WCP的核心參數中所確定的,對此並不作任何限定。
還需要說明的是,對於第三預設映射關係而言,f( )是指與第二因數S和亮度差向量
的函數。在一種可能的實現方式中,
可以通過下式來實現,如下所示:
(8)
在另一種可能的實現方式中,
可以通過如下操作來實現。在一些實施例中,所示根據第一顏色分量的參考樣值和第二因數,使用第三預設映射關係確定第三取值,可以包括:
確定至少一個移位元陣列;
根據第二因數,從至少一個移位元陣列中確定目標偏移量;
對第一顏色分量的參考樣值進行目標偏移量的右移運算,確定第三取值。
在這裡,由於不同的第二因數S可以使用各自的LUT[S],本申請實施例僅儲存幾個基礎的LUT。例如,當S={2,4,8}時,僅儲存S=2時的LUT;對於其他的第二因數S,可以通過移位運算得到。這時候,
可以通過下式來實現,如下所示:
(9)
其中,對於移位元陣列
,其定義如下:
(10)
在本申請實施例中,如果第二因數等於2,那麼目標偏移量等於0;如果第二因數等於4,那麼目標偏移量等於1;如果第二因數等於8,那麼目標偏移量等於2;然後對第一顏色分量的參考樣值進行目標偏移量的右移運算,即可確定出第三取值。
另外,需要注意的是,對於
來說,其實現方式並不局限於式(8)或式(9),還可以是其他實現方式,本申請實施例也不作任何限定。
進一步地,在一些實施例中,所述根據權重索引值,使用第一預設映射關係確定加權係數,可以包括:
根據第二因數和權重索引值,確定第二乘積值;
確定第二乘積值在第一預設映射關係下對應的第四取值,將加權係數設置為等於第四取值。
在一種具體的實施例中,確定第二乘積值在第一預設映射關係下對應的第四取值,可以包括:
確定第一因數;
根據第二乘積值,使用第二預設映射關係確定第五取值;
計算第一因數與第五取值的第三乘積值;
將第四取值設置為等於第三乘積值在第一預設映射關係下對應的取值。
需要說明的是,在本申請實施例中,第一因數可以用
表示,第二因數可以用
表示,權重索引值可以用
表示。
對於第一預設映射關係而言,在一些實施例中,第一預設映射關係是第二因數、權重索引值與加權係數的數值映射查閱資料表。也就是說,在本申請實施例中,解碼端可以預先設置有對應的查閱資料表(Look Up Table,LUT)。通過該查閱資料表,結合
即可確定出對應的加權係數。示例性地,加權係數
可以用下述的映射關係表示:
(11)
對於第一預設映射關係而言,在一些實施例中,第一預設映射關係還可以是預設函數關係,該函數的輸入為
和
,輸出為加權係數。示例性地,加權係數
還可以用下述的函數關係表示:
(12)
在這裡,第二預設映射關係仍可以為基於n的指數函數關係,例如
;其中,n的取值等於權重索引值,即n=0, 1, …,
。這樣,當n的取值等於
時,那麼第五取值等於
,第三乘積值等於
。另外,第一預設映射關係可以設置為
,具體如上述的式(6)所示;那麼當
等於第三乘積值時,
的值即為第四取值,也即加權係數
。
簡單來說,本申請實施例使用的是LUT來確定加權係數
。其中,LUT中包含的元素個數是theMaxPos個,如式(3)所示,theMaxPos與亮度或色度的位元深度有關;如式(4)和式(11)所示,LUT中元素的值都是常數值。可以是實現儲存在解碼器中,也可以是在編碼或解碼之前計算得到的;如(5)或式(12)所示,可以說是根據一個指數為n的指數函數關係來確定;如式(4)和式(11)所示,LUT的索引參數是根據
確定的,LUT儲存的是不同索引參數對應的
。
S503:根據當前塊的第二顏色分量的參考值,確定當前塊的第二顏色分量的參考均值;以及根據當前塊的第二顏色分量的參考值與當前塊的第二顏色分量的參考均值,確定當前塊的第二顏色分量的參考樣值。
需要說明的是,在本申請實施例中,基於權重預測的輸入參考像素數量可以用N表示,也可以用inSize表示。在這裡,基於權重預測的輸入參考像素數量與第二顏色分量的參考樣值的數量相同,也可以說是N表示第二顏色分量的參考樣值的數量,N是正整數。
在一些實施例中,根據當前塊的第二顏色分量的參考值,確定當前塊的第二顏色分量的參考均值,可以包括:對N個當前塊的第二顏色分量的參考值進行平均值計算,得到當前塊的第二顏色分量的參考均值。
還需要說明的是,在本申請實施例中,當前塊的第二顏色分量的參考值可以用refC[k]表示,當前塊的第二顏色分量的參考均值可以用avgC表示,k=0, 1, …, N-1。avgC的計算如下:
(13)
對於N的取值,在一些實施例中,該方法還可以包括:根據當前塊的尺寸參數,確定塊種類索引值;根據塊種類索引值,使用第五預設映射關係確定N的取值。
在一種具體的實施例中,第五預設映射關係表示塊種類索引值與N的數值映射查閱資料表。
需要說明的是,在本申請實施例中,塊種類索引值可以用wcpSizeId表示。針對不同的塊種類索引值,基於權重預測的輸入參考像素數量也會存在差異;即N或者(inSize)的取值不同。
示例性地,若Min(W, H)<=4的當前塊,則確定塊種類索引值等於0;若Min(W, H)>4&&Min(W, H)<=16的當前塊,則確定塊種類索引值等於1;若Min(W, H)>16的當前塊,則確定塊種類索引值等於2;或者,若Min(W, H)<128的當前塊,則確定塊種類索引值等於0;若Min(W, H)>=128&&Min(W, H)<=256的當前塊,則確定塊種類索引值等於1;若Min(W, H)>256的當前塊,則確定塊種類索引值等於2;對此並不作任何限定。
在一種可能的實現方式中,表8示出了本申請實施例提供的一種塊種類索引值與N (inSize)的取值之間的對應關係。
表8
塊種類索引值 | N (inSize) |
0 | 2×H+2×W |
1 | 2×H+2×W |
2 | 2×H+2×W |
在另一種可能的實現方式中,表9示出了本申請實施例提供的另一種塊種類索引值與N (inSize)的取值之間的對應關係。
表9
塊種類索引值 | N (inSize) |
0 | 2×H+2×W |
1 | 1.5×H+1.5×W |
2 | H+W |
進一步地,對於當前塊的第二顏色分量的參考樣值而言,在一些實施例中,所述根據當前塊的第二顏色分量的參考值與當前塊的第二顏色分量的參考均值,確定當前塊的第二顏色分量的參考樣值,可以包括:
對當前塊的第二顏色分量的參考值與當前塊的第二顏色分量的參考均值進行減法計算,得到當前塊的第二顏色分量的參考樣值。
在本申請實施例中,對N個參考色度資訊refC計算其平均值avgC,然後將N個參考色度資訊refC與平均值avgC相減即可得到參考色度差向量diffC。具體地,diffC的計算如下:
(14)
其中,k=0, 1, …, N-1。
S504:根據當前塊的第二顏色分量的參考均值、當前塊的第二顏色分量的參考樣值以及對應的加權係數,確定當前塊中第二顏色分量採樣點的預測值。
S505:根據當前塊中第二顏色分量採樣點的預測值,確定當前塊中第二顏色分量採樣點的重建值。
需要說明的是,在確定當前塊的第二顏色分量的參考均值
、當前塊的第二顏色分量的參考樣值
以及對應的加權係數
之後,就可以進一步確定當前塊中第二顏色分量採樣點的預測值。
在一些實施例中,根據當前塊的第二顏色分量的參考均值、當前塊的第二顏色分量的參考樣值以及對應的加權係數,確定當前塊中第二顏色分量採樣點的預測值,可以包括:
確定第二顏色分量的參考樣值與對應的加權係數的加權值;
將當前塊中待預測像素的加權和值設置為等於N個加權值之和,將當前塊中待預測像素的係數和值設置為等於N個加權係數之和;其中,N表示第二顏色分量的參考樣值的數量,N是正整數;
根據加權和值和係數和值,使用第四預設映射關係確定第六取值;
對第二顏色分量的參考均值與第六取值進行加法計算,得到當前塊中待預測像素的第二顏色分量的預測值;
根據當前塊中待預測像素的第二顏色分量的預測值,確定當前塊中第二顏色分量採樣點的預測值。
需要說明的是,在本申請實施例中,如果第二顏色分量的參考樣值的數量有N個,那麼首先確定每一個第二顏色分量的參考樣值與對應的加權係數的加權值(即
),然後對這N個加權值進行加法運算,可以得到當前塊中待預測像素的加權和值,可以用calVal表示。具體地,其計算公式具體如下,
(15)
(16)
在這裡,(i, j)表示當前塊中待預測像素的位置資訊,k表示WCP計算過程中使用的第k個第二顏色分量的參考樣值,且k=0, …, N-1。
還需要說明的是,在本申請實施例中,針對當前塊中待預測像素對應的N個加權係數,可以對這N個加權係數進行加法運算,得到當前塊中待預測像素的係數和值,可以用sum表示。具體地,其計算公式具體如下:
(17)
進一步地,在一些實施例中,根據加權和值和係數和值,使用第四預設映射關係確定第六取值,可以包括:
確定預設偏移量;
根據係數和值,使用第六預設映射關係確定第一數值;以及根據係數和值與第一數值,使用第七預設映射關係確定陣列索引值,並根據陣列索引值與預設偏移量,使用第八預設映射關係確定第二數值;
在陣列索引值是否等於零的情況下,根據第一數值確定第三數值;以及根據第三數值與預設偏移量,確定第一偏移量;
根據第二數值與加權和值確定第四乘積值,根據第三數值和預設偏移量確定預設加法值,對第四乘積值和預設加法值進行加法運算,得到目標和值;
對目標和值進行第一偏移量的右移運算,確定第六取值。
需要說明的是,在本申請實施例中,預設偏移量可以用
表示,陣列索引值可以用
表示,第一數值可以用x表示,第二數值可以用v表示,第三數值可以用y表示,預設加法值用add表示。在一種具體的實施例中,
的取值可以設置為5,但是並不作具體限定。
還需要說明的是,在本申請實施例中,對於第一數值的計算,第六預設映射關係可以用下式表示:
(18)
在一種可能的實現方式中,對於第一數值的計算,按照數學上的直接描述,可以包括:確定係數和值的以2為底的對數值;確定小於或等於該對數值的最大整數值;這裡所確定的最大整數值即為第一數值。
在另一種可能的實現方式中,對於第一數值的計算,按照計算結果進行描述,可以包括:將第一數值設置為等於係數和值的二進位表示時所需二進位符號的位元數減一。
在又一種可能的實現方式中,對於第一數值的計算,按照可能的整數化實施方式進行描述(文字描述),可以包括:對係數和值進行二進位右移操作,確定右移後數值恰等於零時的右移位數;將第一數值設置為等於該右移位數減一。
在又一種可能的實現方式中,對於第一數值的計算,按照可能的整數化實施方式進行描述(偽代碼描述),如式(18)所示,可以包括:
x=0
while(sum!=0){
sum=sum>>1;
x++;
}
x=x-1
等價地,該偽代碼也可以描述如下:
x=0
while(sum>1){
sum=sum>>1;
x++;
}
或者,該偽代碼還可以描述如下:
x=0
while(sum!=1){
sum=sum>>1;
x++;
}
需要注意的是,在偽代碼描述中,本申請實施例所涉及的符號按照C語言進行理解。
在一些實施例中,所述根據係數和值與第一數值,使用第七預設映射關係確定陣列索引值,可以包括:將係數和值與第一數值作為預設函數關係的輸入,根據預設函數關係輸出陣列索引值。
在本申請實施例中,對於陣列索引值的計算,可以用下式表示:
(19)
其中,
表示係數和值,x表示第一數值,
表示陣列索引值。在這裡,Func( )是與
有關的函數,示例性地,Func( )的一種具體形式如下所示:
(20)
對應地,當
=5時,
。
在一些實施例中,根據陣列索引值與預設偏移量,使用第八預設映射關係確定第二數值,可以包括:
根據陣列索引值,在陣列映射表中確定索引指示值;
根據索引指示值與預設偏移量,使用第八預設映射關係確定第二數值。
需要說明的是,在本申請實施例中,陣列映射表用
表示,那麼陣列索引值
在
中對應的索引指示值為
。示例性地,根據
和
,第八預設映射關係如下式所示:
(21)
對應地,當
=5時,
。在這裡,“|”運算子表示按位或運算,即
是由
進行按位或運算得到的。
在一些實施例中,在陣列索引值是否等於零的情況下,根據第一數值確定第三數值,可以包括:
若陣列索引值等於零,則將第三陣列設置為等於第一數值;
若陣列索引值不等於零,則將第三陣列設置為等於第一數值與一的和值。
需要說明的是,在本申請實施例中,第一數值用x表示,第三數值用y表示。示例性地,可以用下式表示:
(22)
在這裡,“= =”運算子表示等於運算,“
”運算子表示不等於運算。
還需要說明的是,在本申請實施例中,對於預設加法值而言,根據第三數值和預設偏移量確定預設加法值,其計算公式如下所示:
(23)
還需要說明的是,在本申請實施例中,第一偏移量是由第三數值和預設偏移量確定的,示例性地,通過對第三數值和預設偏移量進行加法運算,以得到第一偏移量,即第一偏移量可以為y+
。
如此,假定第六取值用C表示,那麼對於第六取值而言,可以用下式表示:
(24)
在這裡,“<<”運算子表示左移運算,“>>”運算子表示右移運算。
進一步地,對於當前塊中待預測像素的第二顏色分量的預測值的確定,假定待預測像素為(i, j), 當前塊中待預測像素的第二顏色分量的預測值用
表示,這時候根據第二顏色分量的參考均值與第六取值進行加法計算,可以得到當前塊中待預測像素的第二顏色分量的預測值,其計算公式如下:
(25)
進一步地,在本申請實施例中,對於
,通常還需要限定在一預設範圍內。因此,在一些實施例中,該方法還可以包括:對待預測像素的第二顏色分量的預測值進行修正操作,將修正後的預測值作為當前塊中待預測像素的第二顏色分量的預測值。
需要說明的是,在本申請實施例中,預設範圍可以為:0到(1<<BitDepth) -1之間;其中,BitDepth為色度分量所要求的位元深度。如果預測值超出該預設範圍的取值,那麼需要對預測值進行相應的修正操作。示例性地,可以對
進行鉗位操作,具體如下:
當
的值小於0時,將其置為0;
當
的值大於或等於0且小於或等於(1<<BitDepth)-1時,其等於
;
當
的值大於(1<<BitDepth)-1時,其置為(1<<BitDepth)-1。
這樣,在對預測值進行修正處理之後,可以保證當前塊中待預測像素的第二顏色分量的預測值都在0到(1<<BitDepth)-1之間。
進一步地,在確定出預測值之後,在一定條件下需要後處理操作後作為最終的色度預測值。因此,在一些實施例中,根據當前塊中待預測像素的第二顏色分量的預測值,確定當前塊中第二顏色分量採樣點的預測值,可以包括:
對待預測像素的第二顏色分量的預測值進行濾波處理,確定當前塊中第二顏色分量採樣點的預測值。
在本申請實施例中,待預測像素的第二顏色分量的預測值包含當前塊中至少部分第二顏色分量採樣點的預測值。換句話說,根據待預測像素的第二顏色分量的預測值所組成的第一預測塊,該第一預測塊包含當前塊中至少部分第二顏色分量採樣點的預測值。
需要說明的是,在本申請實施例中,如果第一預測塊包括了當前塊中部分第二顏色分量採樣點的預測值,這時候需要對第一預測塊進行上採樣濾波,以得到最終的第二預測塊。因此,在一些實施例中,該方法還可以包括:對第一預測塊進行上採樣濾波處理,確定當前塊的第二顏色分量的第二預測塊。
還需要說明的是,在本申請實施例中,如果第一預測塊中包含的第二顏色分量的預測值的數量與當前塊中包含的第二顏色分量採樣點的數量相同,但是並未包含當前塊的第二顏色分量採樣點的預測值,這時候需要用濾波對預測值進行增強,以得到最終的第二預測塊。因此,在一些實施例中,該方法還可以包括:對第一預測塊進行濾波增強處理,確定當前塊的第二顏色分量的第二預測塊。
還需要說明的是,在本申請實施例中,如果第一預測塊包括了當前塊中全部第二顏色分量採樣點的預測值,這時候不需要對第一預測塊進行任何處理,可以直接將第一預測塊作為最終的第二預測塊。
也就是說,第一預測塊可以包含當前塊中至少部分第二顏色分量採樣點的預測值。其中,如果第一預測塊包含當前塊中全部第二顏色分量採樣點的預測值,那麼可以將當前塊中第二顏色分量採樣點的預測值設置為等於第一預測塊的值;如果第一預測塊包含當前塊中部分第二顏色分量採樣點的預測值,那麼可以對第一預測塊的值進行上採樣濾波,將當前塊中第二顏色分量採樣點的預測值設置為等於所述上採樣濾波後的輸出值。
這樣,在經過上述操作後,第二預測塊包括當前塊中全部第二顏色分量採樣點的預測值。如此,基於權重的色度預測輸出predWcp在一定條件下需要後處理後才能夠作為最終的色度預測值predSamples,否則最終的色度預測值predSamples即為predWcp。
在一些實施例中,在確定出當前塊中第二顏色分量採樣點的預測值之後,根據當前塊中第二顏色分量採樣點的預測值,確定當前塊中第二顏色分量採樣點的重建值,可以包括:
確定當前塊中第二顏色分量採樣點的預測差值;
根據當前塊中第二顏色分量採樣點的預測差值和當前塊中第二顏色分量採樣點的預測值,確定當前塊中第二顏色分量採樣點的重建值。
在一種具體的實施例中,確定當前塊中第二顏色分量採樣點的重建值,包括:對當前塊中第二顏色分量採樣點的預測差值和當前塊中第二顏色分量採樣點的預測值進行加法運算,確定當前塊中第二顏色分量採樣點的重建值。
還需要說明的是,在本申請實施例中,確定當前塊中第二顏色分量採樣點的預測差值(residual),可以是:解析碼流,確定當前塊中第二顏色分量採樣點的預測差值。
這樣,以色度分量為例,通過解析碼流,確定當前塊的色度預測差值;在確定當前塊的色度預測值之後,對色度預測值和色度預測差值進行加法計算,可以得到當前塊的色度重建值。
可以理解地,本申請實施例是對WCP預測技術過程中對浮點型運算的優化,採用整型運算實現。一方面,充分利用當前塊的內容特性,自我調整選擇最佳的整型運算位移量;另一方面,充分保證WCP預測技術的精確性;又一方面,充分考慮權重模型的特性,合理設計整型運算過程;從而可以在保證WCP預測技術的一定準確性的前提下,降低了WCP預測技術的計算複雜度。
本實施例提供了一種解碼方法,通過確定當前塊的第一顏色分量的參考值和當前塊的第二顏色分量的參考值;根據當前塊的第一顏色分量的參考值,確定加權係數;根據當前塊的第二顏色分量的參考值,確定當前塊的第二顏色分量的參考均值;根據當前塊的第二顏色分量的參考值與當前塊的第二顏色分量的參考均值,確定當前塊的第二顏色分量的參考樣值;根據當前塊的第二顏色分量的參考均值、當前塊的第二顏色分量的參考樣值以及對應的加權係數,確定當前塊中第二顏色分量採樣點的預測值;根據當前塊中第二顏色分量採樣點的預測值,確定當前塊中第二顏色分量採樣點的重建值。這樣,基於當前塊的相鄰區域中的顏色分量參考資訊與當前塊內的顏色分量重建資訊,不僅需要構造亮度差向量,以便確定出加權係數;而且還需要根據色度參考資訊確定色度平均值,然後根據色度參考資訊和色度平均值來確定出色度差向量,進而根據色度差向量及對應的加權係數,再加上色度平均值即可確定出色度預測值;如此,通過對基於權重的色度預測的計算過程進行優化,能夠實現完全採用整型運算,而且充分考慮了權重模型的特性,合理優化整型運算過程;在充分保證色度預測準確性的同時,還可以降低計算複雜度,提高編解碼效率,進而提升編解碼性能。
在本申請的另一實施例中,基於前述實施例所述的解碼方法,以當前塊進行色度預測為例,在對當前塊進行色度預測時,當前塊的重建亮度資訊、相鄰區域的參考亮度資訊及參考色度資訊都是已解碼的參考資訊。因此,本申請實施例提出了一種利用上述這些資訊的基於權重的色度預測技術,該技術實現過程中的全部運算使用整數運算。本申請實施例的技術方案主要提出了:採用整數運算替代浮點數運算。在這裡,WCP預測技術的色度預測過程的詳細步驟如下:
WCP模式的輸入:當前塊的位置( xTbCmp, yTbCmp ),當前塊的寬度nTbW及當前塊的高度nTbH。
WCP模式的輸出:當前塊的預測值predSamples[x][y],其中以當前塊內左上角位置為座標原點,x=0, ..., nTbW-1,y=0, ..., nTbH-1。
其中,WCP預測技術的預測過程可以包含確定WCP核心參數、獲取輸入資訊、基於權重的色度預測、後處理過程等步驟,經過這些步驟之後,可以得到當前塊的色度預測值。
在一種具體的實施例中,參見圖7,其示出了本申請實施例提供的另一種解碼方法的流程示意圖。如圖7所示,該方法可以包括:
S701:確定WCP核心參數。
需要說明的是,對於S701而言,對WCP涉及的核心參數進行確定,即可以通過配置或通過某種方式獲取或推斷WCP核心參數,例如在解碼端從碼流獲取WCP核心參數。
在這裡,WCP核心參數包括但不限於控制參數(S)、基於權重的色度預測輸入的個數(inSize)、基於權重的色度預測輸出的個數(排列成predSizeW×predSizeH)、權重模型LUT、權重模型LUT的最大權重索引值theMaxPos。其中,基於權重的色度預測輸出的第一預測塊可以用predWcp表示,這裡基於權重的色度預測輸出的個數可以設置為相同的值(如predSizeW=predSizeH=S/4)或者與當前塊的尺寸參數相關(如predSizeW=nTbW,predSizeH=nTbH)。其中,控制參數(S)可以用於對後續環節中非線性函數進行調整或用來對後續環節涉及的資料進行調整。在這裡,權重模型LUT可以預定義,也可以根據不同的WCP控制參數(S)即時計算得到;權重模型LUT的最大權重索引值theMaxPos可以根據不同的權重模型LUT進行調整,或者是固定的。
對於WCP核心參數的確定,在一定條件下受塊尺寸或塊內容或塊內像素數的影響。例如:
可以對當前塊根據其塊尺寸或塊內容或塊內像素數進行分類,根據不同的類別確定相同或不同的核心參數。即不同類別對應的控制參數(S)或基於權重的色度預測輸入的個數inSize或基於權重的色度預測輸出的個數(排列成predSizeW×predSizeH)可以相同或不同。注意,predSizeW和高predSizeH也可以相同或不同。
如果WCP應用的塊尺寸種類較多或塊尺寸之間的差異較大或塊內容差異很大或塊內像素數差異較大,可以對當前塊根據其塊尺寸或塊內容或塊內像素數進行分類,根據不同的類別確定相同或不同的核心參數。即不同類別對應的控制參數(S)或基於權重的色度預測輸入的個數inSize或基於權重的色度預測輸出的個數(排列成predSizeW×predSizeH)可以相同或不同。注意,predSizeW和高predSizeH也可以相同或不同。
下面為了更好說明核心參數的確定,以兩種簡單分類為例進行說明:
分類示例1:WCP可以根據當前塊的寬度和高度將當前塊分類,用wcpSizeId表示塊的種類,也可稱為塊種類索引值。對不同種類的塊,控制參數(S)、基於權重的色度預測輸入的個數inSize、基於權重的色度預測輸出的個數(排列成predSizeW×predSizeH)可以相同或不同。這裡以分為3類的一種示例進行說明:
根據當前塊的寬度和高度將當前塊分為3類,不同類別的控制參數(S)可以設為不同,不同類別的inSize、基於權重的色度預測輸出的個數(排列成predSizeW×predSizeH)可以設為相同。nTbW為當前塊的寬度,nTbH為當前塊的高度,塊的種類wcpSizeId的定義如下:
wcpSizeId=0:表示min(nTbW, nTbH)<=4的當前塊。其中,控制參數(S)為8,inSize為(2×nTbH+2×nTbW),基於權重的色度預測輸出nTbH×nTbW個色度預測值;
wcpSizeId=1:表示4<min(nTbW, nTbH)<=16的當前塊。其中,控制參數(S)為12,inSize為(2×nTbH+2×nTbW),基於權重的色度預測輸出nTbH×nTbW個色度預測值;
wcpSizeId=2:表示min(nTbW, nTbH)>16的當前塊。其中,控制參數(S)為16,inSize為(2×nTbH+2×nTbW),基於權重的色度預測輸出nTbH×nTbW個色度預測值;
以表格形式表示上述WCP核心參數的數量關係,如表10所示。
表10
wcpSizeId | S | inSize | predSizeH | predSizeW |
0 | 8 | 2×nTbH+2×nTbW | nTbH | nTbW |
1 | 12 | 2×nTbH+2×nTbW | nTbH | nTbW |
2 | 16 | 2×nTbH+2×nTbW | nTbH | nTbW |
分為3類還可以另一種示例進行說明:
根據當前塊的寬度和高度將當前塊分為3類,不同類別的控制參數(S)可以設為不同,不同類別的inSize、基於權重的色度預測輸出的個數(排列成predSizeW×predSizeH)可以設為相同。nTbW為當前塊的寬度,nTbH為當前塊的高度,塊的種類wcpSizeId的定義如下:
wcpSizeId=0:表示min(nTbW, nTbH)<=4的當前塊。其中,控制參數(S)為8,inSize為(2×nTbH+2×nTbW),基於權重的色度預測輸出nTbH×nTbW個色度預測值;
wcpSizeId=1:表示4<min(nTbW, nTbH)<=16的當前塊。其中,控制參數(S)為12,inSize為(1.5×nTbH+1.5×nTbW),基於權重的色度預測輸出nTbH/2×nTbW/2個色度預測值;
wcpSizeId=2:表示min(nTbW, nTbH)>16的當前塊。其中,WCP控制參數(S)為16,inSize為(nTbH+nTbW),基於權重的色度預測輸出nTbH/4×nTbW/4個色度預測值;
以表格形式表示上述核心參數的數量關係,如表11所示。
表11
wcpSizeId | S | inSize | predSizeH | predSizeW |
0 | 8 | 2×nTbH+2×nTbW | nTbH | nTbW |
1 | 12 | 1.5×nTbH+1.5×nTbW | nTbH/2 | nTbW/2 |
2 | 16 | nTbH+nTbW | nTbH/4 | nTbW/4 |
分類示例2:WCP模式也可以根據當前塊的像素數將當前塊分類,用wcpSizeId表示塊的種類。對不同種類的塊,控制參數(S)、基於權重的色度預測輸入的個數inSize、基於權重的色度預測輸出的個數(排列成predSizeW×predSizeH)可以相同或不同。這裡以分為3類的一種示例進行說明:
根據當前塊的像素數將當前塊分為3類,不同類別的控制參數(S)可以設為不同,不同類別的inSize、基於權重的色度預測輸出的個數(排列成predSizeW×predSizeH)可以設為相同。nTbW為當前塊的寬度,nTbH為當前塊的高度,nTbWÍnTbH表示當前塊的像素數。塊的種類wcpSizeId的定義如下:
wcpSizeId=0:表示(nTbWÍnTbH)<128的當前塊。其中,控制參數(S)為10,inSize為(2×nTbH+2×nTbW),基於權重的色度預測輸出nTbH×nTbW個色度預測值;
wcpSizeId=1:表示128<=(nTbWÍnTbH)<=256的當前塊。其中,控制參數(S)為8,inSize為(2×nTbH+2×nTbW),基於權重的色度預測輸出nTbH×nTbW個色度預測值;
wcpSizeId=2:表示(nTbWÍnTbH) > 256當前塊。其中,控制參數(S)為1,inSize為(2×nTbH+2×nTbW),基於權重的色度預測輸出nTbH×nTbW個色度預測值;
以表格形式表示上述核心參數的數量關係,如表12所示。
表12
wcpSizeId | S | inSize | predSizeH | predSizeW |
0 | 10 | 2×nTbH+2×nTbW | nTbH | nTbW |
1 | 8 | 2×nTbH+2×nTbW | nTbH | nTbW |
2 | 1 | 2×nTbH+2×nTbW | nTbH | nTbW |
分為3類還可以另一種示例進行說明:
根據當前塊的像素數將當前塊分為3類,不同類別的控制參數(S)可以設為不同,不同類別的inSize、基於權重的色度預測輸出的個數(排列成predSizeW×predSizeH)可以設為相同。nTbW為當前塊的寬度,nTbH為當前塊的高度,nTbWÍnTbH表示當前塊的像素數。塊的種類wcpSizeId的定義如下:
wcpSizeId=0:表示(nTbWÍnTbH)<64的當前塊。其中,控制參數(S)為16,inSize為(2×nTbH+2×nTbW),基於權重的色度預測輸出nTbH×nTbW個色度預測值;
wcpSizeId=1:表示64<=(nTbWÍnTbH)<=512的當前塊。其中,控制參數(S)為4,inSize為(1.5×nTbH+1.5×nTbW),基於權重的色度預測輸出nTbH/2×nTbW/2個色度預測值;
wcpSizeId=2:表示(nTbWÍnTbH)>512的當前塊。其中,控制參數(S)為1,inSize為(nTbH+nTbW),基於權重的色度預測輸出nTbH/4×nTbW/4個色度預測值;
以表格形式表示上述核心參數的數量關係,如表13所示。
表13
wcpSizeId | S | inSize | predSizeH | predSizeW |
0 | 16 | 2×nTbH+2×nTbW | nTbH | nTbW |
1 | 4 | 1.5×nTbH+1.5×nTbW | nTbH/2 | nTbW/2 |
2 | 1 | nTbH+nTbW | nTbH/4 | nTbW/4 |
還需要說明的是,對於表11、表13來說,predSizeW×predSizeH是基於權重的色度預測計算得到的;但是當wcpSizeId=1時,僅部分即nTbH/2×nTbW/2的色度預測值是根據WCP計算得到的;當wcpSizeId=2時,僅部分即nTbH/4×nTbW/4的色度預測值是根據WCP計算得到的;那麼剩下一部分的色度預測值,則是根據WCP計算得到的色度預測值進行濾波處理所得到的,這裡的濾波處理可以是插值濾波方式、上採樣濾波方式等,對此不作任何限定。
S702:根據WCP核心參數,獲取輸入資訊。
需要說明的是,對於S702而言,輸入資訊可以包括參考色度資訊(refC)、參考亮度資訊(refY)和重建亮度資訊(recY)。其中,對於輸入資訊的獲取,在預測當前塊時,當前塊的上方區域、左上方區域及左方區域作為當前塊的相鄰區域(也可被稱為“參考區域”),如前述的圖6所示,相鄰區域中的像素都是已重建的參考像素。
還需要說明的是,從相鄰區域中獲取參考色度資訊refC和參考亮度資訊refY。獲取的參考色度資訊包括但不限於:選取當前塊的上方區域的參考色度重建值,和/或,左方區域的參考色度重建值。獲取的參考亮度資訊包括但不限於:根據參考色度資訊位置獲取對應的參考亮度資訊。
獲取當前塊的重建亮度資訊recY,獲取方式包括但不限於:根據當前塊內的色度資訊位置獲取對應的重建亮度資訊作為當前塊的重建亮度資訊。
獲取輸入資訊包括獲取inSize數量的參考色度資訊refC(若需要進行前處理,則是經過前處理操作後的)、獲取inSize數量的參考亮度資訊refY(若需要進行前處理,則是經過前處理操作後的)及獲取當前預測塊的亮度重建資訊recY(若需要進行前處理,則是經過前處理操作後的)。
S703:根據輸入資訊進行基於權重的色度預測計算,確定當前塊的色度預測值。
需要說明的是,對於S703而言,對WCP核心參數規定的尺寸內的色度預測值
,i=0…predSizeW-1, j=0…predSizeH-1,逐個進行獲取。注意,predSizeH和predSizeW為確定的WCP核心參數,可與當前待預測色度塊的高nTbH或寬nTbW相同或不同。這樣在一定條件下,也可只對當前塊內的部分待預測像素進行以下計算。
WCP的色度預測計算包括以下操作:通過參考色度資訊的預處理、獲取權重向量、根據權重向量進行加權預測得到基於權重的色度預測值,再對其進行修正。其中,參考資訊的預處理過程包括計算平均值、構造參考色度差向量;權重向量的獲取過程包括構造亮度差向量、計算權重向量。
詳細計算過程如下:
計算參考色度資訊的平均值avgC
對於k=0,1... inSize-1
構造參考色度差向量diffC
對於i=0…predSizeW-1, j=0…predSizeH-1
對於k=0,1... inSize-1
構造亮度差向量中各個元素diffY [i][j][k]
計算權重向量中各個元素cWeightInt[i][j][k],然後由cWeightInt[i][j]、diffC和avgC計算色度預測值
。
在一種具體的實施例中,參見圖8,其示出了本申請實施例提供的又一種解碼方法的流程示意圖。如圖8所示,該方法可以包括:
S801:對於當前塊,利用獲取的參考色度資訊計算色度平均值,並利用色度平均值構建參考色度差向量。
需要說明的是,對於S801而言,主要是對參考色度資訊的預處理。其中,對inSize數量的參考色度資訊refC計算其平均值avgC,將inSize數量的參考色度資訊refC與平均值avgC相減得到參考色度差向量diffC。
(26)
(27)
S802:對於每個待預測像素,利用參考亮度資訊及當前塊的亮度重建資訊構造亮度差向量。
需要說明的是,對於S802而言,主要是構造亮度差向量。其中,對WCP核心參數所規定尺寸內的每個待預測像素
,將其對應的亮度重建資訊recY[i][j]與inSize數量的參考亮度資訊refY相減並取絕對值得到亮度差向量
。
(28)
在一定條件下,可以對待預測像素的亮度差向量進行線性或非線性數值處理。例如:可根據WCP核心參數中的WCP控制參數S來縮放待預測像素的亮度差向量的數值。
S803:對於每個待預測像素,利用所得到的亮度差向量,根據權重模型LUT確定權重向量。
需要說明的是,對於S803而言,主要是計算權重向量。其中,採用非線性權重模型的LUT對每個待預測像素
對應的亮度差向量
進行處理,可以得到對應的整型權重向量
。
示例性地,在一種可能的實現方式中,可以採用非線性Softmax函數作為權重模型。此時的權重模型LUT的獲取方式包括但不限於以下方法:
(29)
在這裡,theMaxPos的值包括但不限於根據式(29)計算得到,它可以是WCP核心參數中所確定的參數。
對於n=0,1…theMaxPos
(30)
在這裡,ModelScale的值包括但不限於由WCP核心參數中所確定的參數,它代表的是權重係數的放大倍數,是一個預先設定的常數。
對於k=0,1... inSize-1
(31)
(32)
示例性地,在另一種可能的實現方式中,在一定條件下,還可以根據核心參數中的WCP控制參數(S)對權重模型進行調整。
如果當前塊尺寸靈活,那麼可以根據WCP控制參數(S)調整權重模型LUT,以非線性Softmax函數為例,可根據當前塊屬於的塊種類類別不同,選取不同的控制參數來調整函數。此時的權重模型LUT的獲取方式包括但不限於以下方式:
其中,theMaxPos的值包括但不限於根據式(29)計算得到,它可以是WCP核心參數中所確定的參數,並可以與不同的WCP控制參數(S)賦值不同的值,即theMaxPos[S]。
對於n=0,1…theMaxPos
(33)
在這裡,ModelScale的值包括但不限於由WCP核心參數中所確定的參數,它代表的是權重係數的放大倍數。
對於k=0,1... inSize-1
(34)
(35)
其中,f( )指與WCP控制參數S和亮度差diffY[i][j][k]的函數,其輸出為LUT的權重索引值。這裡,f( )包括但不限於以下例子的實現方式:
(36)
其中,
(37)
Abs( x ) =
(38)
Floor( x )表示小於或等於x的最大整數;
Log2( x )表示以2為底的對數;
Sign( x ) =
(39)
Round( x ) = Sign( x ) ×Floor( Abs( x ) + 0.5 ) (40)
S804:對於每個待預測像素,利用所得到的參考色度差向量與所得到的權重向量的乘積和色度平均值,計算色度預測值。
需要說明的是,對於S804而言,主要是計算色度預測值。其中,根據每個待預測像素對應的整型權重向量cWeightInt[i][j]和參考色度差向量diffC、參考色度資訊的平均值來計算待預測像素的色度預測值。具體地,將參考色度差向量diffC與每個待預測像素對應的權重向量元素逐一對應相乘得到subC[i][j],將相乘結果累加除以每個待預測像素對應的整型權重向量cWeightInt[i][j]的和,再加上參考色度資訊的平均值就得到了每個待預測像素的色度預測值
。在這裡,本申請實施例所涉及的除法操作一律使用右移操作,具體過程如下:
對於k=0,1... inSize-1
(41)
對於i=0…predSizeW-1, j=0…predSizeH-1
(42)
其中,
(43)
(44)
(45)
(46)
(47)
在這裡,
的獲取方式包括但不限於由WCP確定參數中所確定的參數,在解碼規範文本中,
的取值可以被賦值為5。
另外,關於x的計算公式對應于解碼規範文本中,x=Floor(Log2(sum))。
關於v的計算公式對應于解碼規範文本中,在
時的divSigTable[normDiff]|32。
關於
的計算公式對應于解碼規範文本中,對應于解碼規範文本中,在
時的normDiff=((sum<<5)>>x)&31。
關於y的計算公式對應于解碼規範文本中,x+=(normDiff!=0)?1:0。
關於add的計算公式對應于解碼規範文本中,在
時的add=1<<x<<4。
還需要說明的是,在本申請實施例中,DivSigTable是一個預定義的陣列,與Shift有關,DivSigTable對應于解碼規範文本中的divSigTable[]={0,15,14,13,12,12,11,10,10,9,8,8,7,7,6,6,5,5,4,4,4,3, 3,3,2,2,2,1,1,1,1,0}。
還需要說明的是,在本申請實施例中,Func()是與Shift有關的函數,輸入是權重向量之和與所計算得到的x,輸出是
的陣列索引值。示例性地,Func()的一種具體形式可以表示為:
(48)
其中,式(48)對應于解碼規範文本中,在
時的normDiff=((sum<<5)>>x)&31。
S805:對於每個待預測像素,對計算得到的色度預測值進行修正處理,確定當前塊的色度預測值。
需要說明的是,對於S805而言,主要是對第一預測塊predWcp內的色度預測值進行修正操作。其中,predWcp內的色度預測值應該在限定在預設範圍內,如果超出該預設範圍,那麼需要進行相應的修正操作。例如:
可以對
的色度預測值進行鉗位操作,具體如下:
當
的值小於0時,將其置為0;
當
的值大於(1<<BitDepth)–1時,其置為(1<<BitDepth)–1。
其中,BitDepth為色度像素值所要求的位元深度,以保證predWcp中所有的色度預測值都在0到(1<<BitDepth)–1之間。即,如下式所示:
(49)
S704:對色度預測值進行後處理操作,確定當前塊的目標色度預測值。
需要說明的是,對於S704而言,基於權重的色度預測輸出predWcp在一定條件下需要後處理後作為最終的目標色度預測值predSamples,否則最終的目標色度預測值predSamples即為predWcp。
示例性地,為了降低WCP逐像素獨立並行預測帶來的不穩定性,可以對predWcp進行平滑濾波作為最終的色度預測值predSamples。或者,為了進一步提升WCP預測值的準確性,可以對predWcp進行位置相關的修正過程。比如:利用空間位置接近的參考像素對每個待預測像素計算色度補償值,用此色度補償值對predWcp進行修正,將修正後的預測值作為最終的色度預測值predSamples。或者,為了進一步提升WCP預測值的準確性,可以將其他色度預測模式計算的色度預測值與WCP計算的色度預測值predWcp進行加權融合,將此融合結果作為最終的色度預測值predSamples。比如:可以將CCLM模式預測得到的色度預測值與WCP計算的色度預測值predWcp進行等權重或不等權重加權,加權結果作為最終的色度預測值predSamples。或者,為了提高WCP預測性能,可以採用神經網路模型對WCP的預測輸出predWcp進行修正等等,本申請實施例對此不作任何限定。
可以理解地,在本申請實施例中,對於權重向量的獲取,其中關於具有WCP控制參數(S)的權重模型的LUT以及index的推導仍佔據較大的儲存空間,因此,本申請實施例還可以針對具有WCP控制參數(S)的權重模型LUT進行修改,其它保持不變。具體步驟如下:
在一定條件下,可根據WCP核心參數中的WCP控制參數(S)對權重模型LUT進行調整。示例性地,如果當前塊的尺寸靈活,那麼可以根據WCP控制參數(S)調整權重模型,以非線性Softmax函數為例,可根據當前預測塊屬於的塊種類類別不同,選取不同的控制參數來調整函數。此時的權重模型LUT的獲取方式包括但不限於以下方式:
(50)
在這裡,theMaxPos的值包括但不限於根據式(50)計算得到,它可以是WCP核心參數中所確定的參數,並可以與不同的WCP控制參數(S)賦值不同的值,即theMaxPos[S]。
對於n=0,1…theMaxPos
(51)
在這裡,ModelScale的值包括但不限於由WCP核心參數中所確定的參數,它代表的是權重係數的放大倍數。
由於不同的WCP控制參數(S)使用各自的LUT[S],這裡可以僅儲存幾個基礎的LUT。例如,當S={2,4,8}時,僅儲存S=2時的LUT。這時候代碼如下:
對於k=0,1...inSize-1
(52)
(53)
其中,f()指與WCP控制參數(S)和亮度差向量diffY[i][j][k]的函數,其輸出為LUT的權重索引值。這裡,f()包括但不限於以下例子的實現方式:
(54)
其中,式(54)中的陣列LUTshift的定義如下:
(55)
例如,當S={8,12,16}時,僅儲存S=12時的LUT。這時候代碼如下:
對於k=0,1...inSize-1
(56)
(57)
其中,f()指與WCP控制參數(S)和亮度差向量diffY[i][j][k]的函數,其輸出為LUT的權重索引值。這裡,f( )包括但不限於以下例子的實現方式:
(58)
還需要說明的是,式(58)對應于解碼規範文本中的( baseDiffL + ( blockIndex & 1 ) * ( baseDiffL >> 1 ) − ( blockIndex & 2 ) * ( baseDiffL >> 2 ) + indexOffset[ cnt ] )。
式(58)中的wcpSizeId為確定WCP核心參數中的變數,另外,indexOffset的計算方式如下:
(59)
還需要說明的是,式(59)對應于解碼規範文本中的indexOffset[ cnt ] = ( ( blockIndex & 1 ) – ( blockIndex & 2 ) ) * ( baseDiffY[ cnt ] & 1 )。
在又一種具體的實施例中,基於前述實施例所述的解碼方法,本申請實施例提供的一種解碼規範文本的具體描述如下:
(1)關於INTRAL_WCP幀內預測模式的規範說明。
該過程的輸入包括:
–幀內預測模式的標識predModeIntra。
–當前變換塊的左上的樣本位置相對於當前圖片的左上的樣本位置(xTbC、yTbC)。
–表示變換塊寬度的變數nTbW。
–表示變換塊高度的變數nTbH。
–表示當前塊的顏色分量的變數cIdx。
–相鄰色度樣本p[x][y],x=−1,y=−1…2*nTbH−1和x=0…2*nTbW−1,y=−1。
此過程的輸出為預測樣本predSamples[x][y],x=0…nTbW−1,y=0…nTbH−1。
當前塊對應的亮度位置(xTbY,yTbY)的推導如下:
(xTbY,yTbY)=(xTbC<<(SubWidthC−1),yTbC<<(SubHeightC−1))
變數availL和availT的推導如下:
–調用第(2)部分中規定的相鄰塊可用性的推導過程時,當前塊的亮度位置(xCurr,yCurr)設置為等於(xTbY,yTbY),相鄰亮度位置(xTbY−1,yTbY),將checkPredModeY設置為FALSE,cIdx作為輸入,輸出分配給availL。
–調用第(2)部分中規定的相鄰塊可用性的推導過程時,當前塊的亮度位置(xCurr,yCurr)設置為等於(xTbY,yTbY),相鄰亮度位置(xTbY,yTbY−1),將checkPredModeY設置為FALSE,將cIdx作為輸入,並將輸出分配給availT。
可用的右上方相鄰色度樣本數numTopRight如下所示:
–變數numTopRight設置為0,availTR設置為TRUE。
–當predModeIntra等於INTRA_WCP時,以下適用於x=nTbW…2*nTbW−1,直到availTR等於FALSE:
–調用第(2)部分中規定的相鄰塊可用性的推導過程時,當前亮度位置(xCurr,yCurr)設置為等於(xTbY,yTbY)相鄰亮度位置(xTbY+x*SubWidthC,yTbY−1),將checkPredModeY設置為FALSE,將cIdx作為輸入,並將輸出分配給availTR。
–當availTR等於TRUE時,numTopRight增加1。
可用的左下方相鄰色度樣本數numleftbellow如下所示:
–變數numleftbellow設置為0,availLB設置為TRUE。
–當predModeIntra等於INTRA_WCP時,以下適用於y=nTbH…2*nTbH−1,直到availB等於FALSE:
–調用第(2)部分中規定的相鄰塊可用性的推導過程時,當前亮度位置(xCurr,yCurr)設置為等於(xTbY,yTbY),相鄰luma位置(xTbY−1,yTbY+y*SubweightC),將checkPredModeY設置為FALSE,cIdx作為輸入,輸出分配給AvailLB。
–當availLB等於TRUE時,numLeftBelow將增加1。
上方和右上方的可用相鄰色度樣本數numSampT以及左方和左下方的可用相鄰色度樣本數numSampL推導出如下:
–如果predModeIntra等於INTRA_WCP,則以下情況適用:
numSampT=availT?(nTbW+numTopRight):0
numSampL=availL?(nTbH+numLeftBelow):0
所有可用的相鄰色度樣本數numSamp和變數enableWcp的推導如下:
–如果predModeIntra等於INTRA_WCP,則以下情況適用:
numSamp=numSampT+numSampL
enableWcp=numSamp?true:false
預測樣本predSamples[x][y]的x=0…nTbW−1,y=0…nTbH−1的推導如下:
–如果enableWcp等於FALSE,則以下內容適用:
predSamples[x][y]=1<<(BitDepth−1)
–否則,按照以下步驟順序進行:
1、亮度樣本pY[x][y]的x=0…nTbW*SubWidthC−1,y=0…nTbH*SubHeightC−1被設置為等於在位置(xTbY+x,yTbY+y)處的解碼濾波處理之前的重建亮度樣本。
2、相鄰的亮度樣本pY[x][y]推導如下:
–當availL等於TRUE時,相鄰的亮度樣本pY[x][y],x=−3…−1,y=(availT?−1:0)…SubHeightC* Max(nTbH, numSampL)−1,被設置為在位置(xTbY+x,yTbY+y)處的解碼濾波處理之前的重建亮度樣本。
–當availT等於FALSE時,相鄰的亮度樣本pY[x][y],x=−2..SubWidthC*nTbW−1,y=−2..−1,被設置為等於重建亮度樣本pY[x][0]。
–當availT等於TRUE時,相鄰的亮度樣本pY[x][y],x=(availL?−1:0)…SubWidthC*Max(nTbW, numSampT)−1,y=−3…−1,被設置為等於在位置(xTbY+x,yTbY+y)處的解碼濾波處理之前的重建亮度樣本。
–當avillL等於FALSE時,相鄰的亮度樣本pY[x][y],x=−1,y=−2..SubHeightC*nTbH−1,被設置為等於重建亮度樣本pY[0][y]。
3、下採樣的同位元的亮度樣本pDsY[x][y],x=0..nTbW−1,y=0..nTbH−1的推導如下:
–如果SubWidthC和SubHeightC均等於1,則以下各項適用:
pDsY[x][y]=pY[x][y]
–否則,如果SubHeightC等於1,則以下內容適用:
pDsY[x][y]=(pY[SubWidthC*x−1][y]+
2*pY[SubWidthC*x][y]+
pY[SubWidthC*x+1][y]+2)>>2
–否則(SubHeightC不等於1),以下適用:
–如果sps_chroma_vertical_collocated_flag等於1,則以下情況適用:
pDsY[x][y]=(pY[SubWidthC*x][SubHeightC*y−1]+
pY[SubWidthC*x−1][SubHeightC*y]+
4*pY[SubWidthC*x][SubHeightC*y]+
pY[SubWidthC*x+1][SubHeightC*y]+
pY[SubWidthC*x][SubHeightC*y+1]+4)>>3
–否則(sps_chroma_vertical_collocated_flag等於0),以下內容適用:
pDsY[x][y]=(pY[SubWidthC*x−1][SubHeightC*y]+
pY[SubWidthC*x−1][SubHeightC*y+1]+
2*pY[SubWidthC*x][SubHeightC*y]+
2*pY[SubWidthC*x][SubHeightC*y+1]+
pY[SubWidthC*x+1][SubHeightC*y]+
pY[SubWidthC*x+1][SubHeightC*y+1]+4)>>3
4、當numSampT大於0時,相鄰上側色度樣本refC[idx]設置為等於p[idx][−1],其中,idx=0…numSampT−1,並且下採樣的相鄰上側亮度樣本refY[idx],idx=0…numSampT−1規定如下:
如果SubWidthC和SubHeightC均等於1,則以下情況適用:
refY[idx]=pY[idx][−1]
否則,以下內容適用:
如果SubHeightC不等於1且bCTUboundary等於FALSE,則以下情況適用:
如果sps_chroma_vertical_collocated_flag等於1,則以下情況適用:
refY[idx]=(pY[SubWidthC*x][−3]+
pY[SubWidthC*x−1][−2]+
4*pY[SubWidthC*x][−2]+
pY[SubWidthC*x+1][−2]+
pY[SubWidthC*x][−1]+4)>>3
否則(sps_chroma_vertical_collocated_flag等於0),以下內容適用:
refY[idx]=(pY[SubWidthC*x−1][−1]+
pY[SubWidthC*x−1][−2]+
2*pY[SubWidthC*x][−1]+
2*pY[SubWidthC*x][−2]+
pY[SubWidthC*x+1][−1]+
pY[SubWidthC*x+1][−2]+4)>>3
否則(SubHeightC等於1或者bCTUboundary等於TRUE),以下情況適用:
refY[idx]=(pY[SubWidthC*x−1][−1]+
2*pY[SubWidthC*x][−1]+
pY[SubWidthC*x+1][−1]+2)>>2
5、當numSampL大於0時,相鄰的左側色度樣本refC[idx]設置為等於p[−1][idx-numSampT],其中,idx=numSampT…numSamp−1,並且下採樣的相鄰左側亮度樣本refY[idx],其中,idx=numSampT…numSamp−1的推導如下:
如果SubWidthC和SubHeightC均等於1,則以下情況適用:
refY[idx]=pY[−1][y]
否則,如果SubHeightC等於1,則以下內容適用:
refY[idx]=(pY[−1−SubWidthC][y]+
2*pY[−SubWidthC][y]+
pY[1−SubWidthC][y]+2)>>2
否則,以下內容適用:
如果sps_chroma_vertical_collocated_flag等於1,則以下情況適用:
refY[idx]=(pY[−SubWidthC][SubHeightC*y−1]+
pY[−1−SubWidthC][SubHeightC*y]+
4*pY[−SubWidthC][SubHeightC*y]+
pY[1−SubWidthC][SubHeightC*y]+
pY[−SubWidthC][SubHeightC*y+1]+4)>>3
否則(sps_chroma_vertical_collocated_flag等於0),以下內容適用:
refY[idx]=(pY[−1−SubWidthC][SubHeightC*y]+
pY[−1−SubWidthC][SubHeightC*y+1]+
2*pY[−SubWidthC][SubHeightC*y]+
2*pY[−SubWidthC][SubHeightC*y+1]+
pY[1−SubWidthC][SubHeightC*y]+
pY[1−SubWidthC][SubHeightC*y+1]+4)>>3
6、變數avgC和色度參考樣本差refDiffC[idx],其中,idx=0..numSamp−1的推導如下:
RedNumSamp=1<<Floor(Log2(numSamp))
bDwn=numSamp/RedNumSamp
avgC=(
+(RedNumSamp>>1))>>Floor(Log2(numSamp))
refDiffC[idx]=refC[idx]−avgC
7、變數minBlockSize、blockIndex、亮度參考樣本和重建樣本的差baseDiffY[cnt],其中,cnt=0…numSamp–1;變數indexDiffY[cnt],其中,cnt=0..numSamp–1;變數indexOffset[cnt],其中,cnt=0…numSamp–1;變數LUTindex[cnt],其中,cnt=0…numSamp–1;最終的預測樣本predSamples[x][y],其中,x=0...nTbW−1, y=0...nTbH–1的推導如下:
minBlockSize=Min(nTbW,nTbH)
If minBlockSize等於2或4,blockIndex設置為等於0
If minBlockSize等於8或16,blockIndex設置為等於1
If minBlockSize大於16,blockIndex設置為等於2
baseDiffY[cnt]=Abs(refY[cnt]−predSamples[x][y])
indexOffset[cnt]=((blockIndex&1)–(blockIndex&2))*(baseDiffY[cnt]&1)
LUTindex[cnt]=Clip3(0,WCP_LUT_Max_Index,(baseDiffL+(blockIndex&1)*(baseDiffL>>1)−(blockIndex&2)*(baseDiffL>>2)+indexOffset[cnt]))
其中,WCP_LUT_Max_Index等於49
8、變數numerator[cnt],其中,cnt=0…numSamp–1;用於預測樣本的predSamples[x][y]的變數sum和finalVal,其中,x=0…nTbW−1,y=0…nTbH–1的推導如下:
numerator[cnt]=WcpLUT[LUTindex[cnt]]
whereWcpLUT[i]={31,29,26,24,22,20,19,17,16,15,13,12,11,10,10,9,8,8,7,6,6,5,5,5,4,4,4,3,3,3,3,2,2, 2,2,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1}
sum=
calVal=
x=Floor(Log2(sum))
normDiff=((sum<<5)>>x)&31
x+=(normDiff!=0)?1:0
add=1<<x<<4
finalVal=(calVal*(divSigTable[normDiff]|32)+add)>>(x+5)+avgC
where divSigTable[ ]is specified as follows:
divSigTable[ ]={0,15,14,13,12,12,11,10,10,9,8,8,7,7,6,6,5,5,4,4,4,3,3,3,2,2,2,1,1,1,1,0}
9、預測樣本predSamples[x][y],其中,x=0…nTbW−1,y=0…nTbH−1的推導如下:
predSamples[x][y]=Clip1(finalVal[x][y])
Clip1(x)=Clip3(0,(1<<BitDepth)−1,x)
(2)關於相鄰塊可用性的推導過程的規範說明。
該過程的輸入包括:
–當前塊的左上樣本相對於當前圖片的左上樣本的亮度位置(xCurr,yCurr)。
–相鄰塊包含的亮度位置(xNbY,yNbY),該位置相對于當前圖片左上位置的亮度樣本。
–變數checkPredModeY用於標識可用性是否依賴於預測模式。
–表示當前塊顏色分量的變數cIdx。
該過程的輸出是包含該位置(xNbY,yNbY)的相鄰塊的可用性,用availableN表示。
相鄰塊可用性的可用性availableN的推導如下:
–如果以下一個或多個條件為TRUE,則availableN設置為FALSE:
–xNbY小於0;
–yNbY小於0;
–xNbY大於或等於pps_pic_width_in_luma_samples;
–yNbY大於或等於pps_pic_height_in_luma_samples;
–(xNbY>>CtbLog2SizeY)大於(xCurr>>CtbLog2SizeY)且(yNbY>>CtbLog2SizeY)大於或等於(yCurr>>CtbLog2SizeY);
–(yNbY>>CtbLog2SizeY)大於或等於(yCurr>>CtbLog2SizeY)+1;
–IsAvailable[cIdx][xNbY][yNbY]等於FALSE;
–相鄰塊包含在與當前塊不同的slice中;
–相鄰塊包含在與當前塊不同的tile中;
–sps_entropy_coding_sync_enabled_flag等於1且(xNbY>>CtbLog2SizeY)大於或等於(xCurr>>CtbLog2SizeY)+1;
–否則,availableN設置為等於TRUE。
當以下所有條件均為true時,availableN設置為FALSE:
–checkPredModeY等於TRUE;
–CuPredMode[0][xNbY][yNbY]不等於CuPredMode[0][xCurr][yCurr]。
本實施例提供了一種解碼方法,通過上述實施例對前述實施例的具體實現進行詳細闡述,根據前述實施例的技術方案,從中可以看出,對WCP預測技術過程中對浮點型運算的優化,採用整型運算實現;一方面,充分利用當前塊的內容特性,自我調整選擇最佳的整型運算位移量;另一方面,充分保證WCP預測技術的精確性;又一方面,充分考慮權重模型的特性,合理設計整型運算過程。也就是說,通過對WCP預測技術中的基於權重的色度預測的計算過程的優化,本技術方案完全採用整數運算,同時也可以自我調整選擇最佳的整數化所需的位移量等資訊,進一步降低計算複雜度;而且由於WCP預測技術所採用的計算方式均為整數運算,這樣對硬體實現是極為友好的;這樣,可以在保證WCP預測技術的一定的準確性的前提下,降低WCP預測技術的計算複雜度,提升編解碼性能。
在本申請的又一實施例中,參見圖9,其示出了本申請實施例提供的一種編碼方法的流程示意圖。如圖9所示,該方法可以包括:
S901:確定當前塊的第一顏色分量的參考值和當前塊的第二顏色分量的參考值。
需要說明的是,本申請實施例的編碼方法應用於編碼裝置,或者集成有該編碼裝置的編碼設備(也可簡稱為“編碼器”)。另外,本申請實施例的編碼方法具體可以是指一種幀內預測方法,更具體地,是一種基於權重的色度預測(Weight-based Chroma Prediction,WCP)的整數化運算方法。
在本申請實施例中,視訊圖像可以劃分為多個編碼塊,每個編碼塊可以包括第一顏色分量、第二顏色分量和第三顏色分量,而這裡的當前塊是指視訊圖像中當前待進行幀內預測的編碼塊。另外,假定當前塊進行第一顏色分量的預測,而且第一顏色分量為亮度分量,即待預測分量為亮度分量,那麼當前塊也可以稱為亮度預測塊;或者,假定當前塊進行第二顏色分量的預測,而且第二顏色分量為色度分量,即待預測分量為色度分量,那麼當前塊也可以稱為色度預測塊。
還需要說明的是,在本申請實施例中,當前塊的參考資訊可以包括當前塊的相鄰區域中的第一顏色分量採樣點的取值和當前塊的相鄰區域中的第二顏色分量採樣點的取值,這些採樣點(Sample)可以是根據當前塊的相鄰區域中的已編碼像素確定的。在一些實施例中,當前塊的相鄰區域可以包括下述至少之一:上側相鄰區域、右上側相鄰區域、左側相鄰區域和左下側相鄰區域。
在這裡,上側相鄰區域和右上側相鄰區域整體可以看作上方區域,左側相鄰區域和左下側相鄰區域整體可以看作左方區域;除此之外,相鄰區域還可以包括左上方區域,詳見前述的圖6所示。其中,在對當前塊進行第二顏色分量的預測時,當前塊的上方區域、左方區域和左上方區域作為相鄰區域均可被稱為當前塊的參考區域,而且參考區域中的像素都是已重建的參考像素。
在一些實施例中,確定當前塊的第一顏色分量的參考值和當前塊的第二顏色分量的參考值,可以包括:
根據當前塊的相鄰區域中的第一顏色分量採樣點的取值,確定當前塊的第一顏色分量的參考值;
根據當前塊的相鄰區域中的第二顏色分量採樣點的取值,確定當前塊的第二顏色分量的參考值。
需要說明的是,在本申請實施例中,當前塊的參考像素可以是指與當前塊相鄰的參考像素點,也可稱為當前塊的相鄰區域中的第一顏色分量採樣點、第二顏色分量採樣點,用Neighboring Sample或Reference Sample表示。其中,這裡的相鄰可以是空間相鄰,但是並不局限於此。例如,相鄰也可以是時域相鄰、空間與時域相鄰,甚至當前塊的參考像素還可以是對空間相鄰、時域相鄰、空間和時域相鄰的參考像素點進行某種處理後得到的參考像素等等,本申請實施例不作任何限定。
還需要說明的是,在本申請實施例中,假定第一顏色分量為亮度分量,第二顏色分量為色度分量;那麼,當前塊的相鄰區域中的第一顏色分量採樣點的取值表示為當前塊的參考像素對應的參考亮度資訊,當前塊的相鄰區域中的第二顏色分量採樣點的取值表示為當前塊的參考像素對應的參考色度資訊。
還需要說明的是,在本申請實施例中,從當前塊的相鄰區域中確定第一顏色分量採樣點的取值或第二顏色分量採樣點的取值,這裡的相鄰區域可以是僅包括上側相鄰區域,或者僅包括左側相鄰區域,也可以是包括上側相鄰區域和右上側相鄰區域,或者包括左側相鄰區域和左下側相鄰區域,或者包括上側相鄰區域和左側相鄰區域,或者甚至還可以包括上側相鄰區域、右上側相鄰區域和左側相鄰區域等等,本申請實施例不作任何限定。
進一步地,在一些實施例中,對於當前塊的參考像素的確定,可以包括:對當前塊的相鄰區域中的像素進行篩選處理,確定參考像素。
具體來說,在本申請實施例中,根據當前塊的相鄰區域中的像素,組成第一參考像素集合;那麼可以對第一參考像素集合進行篩選處理,確定參考像素。在這裡,參考像素的數量可以為M個,M為正整數。換句話說,可以從相鄰區域中的像素中選取出M個參考像素。其中,M的取值一般可以為4,但是並不作具體限定。
還需要說明的是,在當前塊的相鄰區域中的像素中,可能會存在部分不重要的像素(例如,這些像素的相關性較差)或者部分異常的像素,為了保證預測的準確性,需要將這些像素剔除掉,以便得到有效的參考像素。因此,在一種具體的實施例中,對相鄰區域中的像素進行篩選處理,確定參考像素,可以包括:
基於相鄰區域中的像素的位置和/或顏色分量強度,確定待選擇像素位置;
根據待選擇像素位置,從相鄰區域中的像素中確定參考像素。
需要說明的是,在本申請實施例中,顏色分量強度可以用顏色分量資訊來表示,比如參考亮度資訊、參考色度資訊等;這裡,顏色分量資訊的值越大,表明了顏色分量強度越高。這樣,針對相鄰區域中的像素進行篩選,可以是根據像素的位置來進行篩選的,也可以是根據顏色分量強度來進行篩選的,從而根據篩選出的像素確定當前塊的參考像素,進一步可以確定出當前塊的相鄰區域中的第一顏色分量採樣點的取值和當前塊的相鄰區域中的第二顏色分量採樣點的取值;然後根據當前塊的相鄰區域中的第一顏色分量採樣點的取值來確定當前塊的第一顏色分量的參考值,根據當前塊的相鄰區域中的第二顏色分量採樣點的取值來確定當前塊的第二顏色分量的參考值。
在一些實施例中,根據當前塊的相鄰區域中的第一顏色分量採樣點的取值,確定當前塊的第一顏色分量的參考值,可以包括:對當前塊的相鄰區域中的第一顏色分量採樣點的取值進行第一濾波處理,確定當前塊的第一顏色分量的參考值。
在本申請實施例中,第一濾波處理為下採樣濾波處理。其中,第一顏色分量為亮度分量,此時可以通過對參考亮度資訊進行下採樣濾波處理,使得濾波後的參考亮度資訊的空間解析度與參考色度資訊的空間解析度相同。示例性地,如果當前塊的尺寸大小為2M×2N,參考亮度資訊為2M+2N個,那麼在經過下採樣濾波之後,可以變換至M+N個,以得到當前塊的第一顏色分量的參考值。
在一些實施例中,根據當前塊的相鄰區域中的第二顏色分量採樣點的取值,確定當前塊的第二顏色分量的參考值,可以包括:對當前塊的相鄰區域中的第二顏色分量採樣點的取值進行第二濾波處理,確定當前塊的第二顏色分量的參考值。
在本申請實施例中,第二濾波處理為上採樣濾波處理。其中,上取樣速率是2的正整數倍。
也就是說,第一顏色分量為亮度分量,第二顏色分量為色度分量,本申請實施例也可以對參考色度資訊進行上採樣濾波,使得濾波後的參考色度資訊的空間解析度與參考亮度的空間解析度相同。示例性地,如果參考亮度資訊為2M+2N個,而參考色度資訊為M+N個;那麼在對參考色度資訊經過上採樣濾波之後,可以變換至2M+2N個,以得到當前塊的第二顏色分量的參考值。
S902:根據當前塊的第一顏色分量的參考值,確定加權係數。
需要說明的是,在本申請實施例中,當前塊的參考資訊還可以包括當前塊中第一顏色分量採樣點的重建值。假定第一顏色分量為亮度分量,那麼當前塊中第一顏色分量採樣點的重建值即為當前塊的重建亮度資訊。
在一些實施例中,根據所述當前塊的第一顏色分量的參考值,確定加權係數,可以包括:
確定當前塊中第一顏色分量採樣點的重建值;
根據當前塊中第一顏色分量採樣點的重建值和當前塊的第一顏色分量的參考值,確定當前塊的第一顏色分量的參考樣值;
根據當前塊的第一顏色分量的參考樣值,確定加權係數。
在一種可能的實施例中,根據當前塊中第一顏色分量採樣點的重建值和當前塊的第一顏色分量的參考值,確定當前塊的第一顏色分量的參考樣值,可以包括:
確定當前塊中第一顏色分量採樣點的重建值和當前塊的第一顏色分量的參考值的差值;
根據差值,確定當前塊的第一顏色分量的參考樣值。
在本申請實施例中,可以將當前塊的第一顏色分量的參考樣值設置為等於差值的絕對值。另外,根據差值來確定當前塊的第一顏色分量的參考樣值,還可以是對差值進行平方計算、或者將差值進行一些相關處理和映射等,以確定出當前塊的第一顏色分量的參考樣值,這裡並不作任何限定。
在另一種可能的實施例中,根據當前塊中第一顏色分量採樣點的重建值和當前塊的第一顏色分量的參考值,確定當前塊的第一顏色分量的參考樣值,可以包括:
對當前塊中第一顏色分量採樣點的重建值進行第三濾波處理,得到當前塊中第一顏色分量採樣點的濾波樣值;
根據當前塊中第一顏色分量採樣點的濾波樣值和當前塊的第一顏色分量的參考值,確定當前塊的第一顏色分量的參考樣值。
在本申請實施例中,第三濾波處理為下採樣濾波處理。其中,第一顏色分量為亮度分量,此時也可以對當前塊內的重建亮度資訊進行下採樣濾波處理。示例性地,如果當前塊內的重建亮度資訊的數量為2M×2N,那麼在經過下採樣濾波之後,可以變換至M×N。
在本申請實施例中,根據當前塊中第一顏色分量採樣點的濾波樣值和當前塊的第一顏色分量的參考值,確定當前塊的第一顏色分量的參考樣值,可以是根據當前塊中第一顏色分量採樣點的濾波樣值和當前塊的第一顏色分量的參考值之差來確定當前塊的第一顏色分量的參考樣值;更具體地,可以是根據當前塊中第一顏色分量採樣點的濾波樣值和當前塊的第一顏色分量的參考值之差的絕對值來確定當前塊的第一顏色分量的參考樣值,這裡也不作任何限定。
可以理解地,在確定出當前塊的第一顏色分量的參考樣值之後,本申請實施例可以進一步確定加權係數。其中,當前塊的第一顏色分量的參考樣值可以是當前塊中第一顏色分量採樣點的重建值和當前塊的第一顏色分量的參考值之差的絕對值。
在本申請實施例中,當前塊的第一顏色分量的參考樣值可以是當前塊中亮度重建資訊(用recY表示)和inSize數量的參考亮度資訊(用refY表示)之差的絕對值。其中,對於當前塊中的待預測像素
,其對應的亮度差向量
可以是由其對應的亮度重建資訊
與inSize數量的參考亮度資訊
相減並取絕對值得到的;即在本申請實施例中,當前塊的第一顏色分量的參考樣值可以用
表示。
進一步地,在一些實施例中,根據當前塊的第一顏色分量的參考樣值,確定加權係數,可以包括:根據當前塊的第一顏色分量的參考樣值,確定權重索引值;根據權重索引值,使用第一預設映射關係確定加權係數。
在一種具體的實施例中,根據當前塊的第一顏色分量的參考樣值,確定權重索引值,可以包括:
確定當前塊的最大權重索引值和最小權重索引值;
根據最大權重索引值和最小權重索引值對第一顏色分量的參考樣值進行修正處理,確定權重索引值。
需要說明的是,在本申請實施例中,最大權重索引值可以用
表示,最小權重索引值可以用表示零表示,權重索引值用index表示。在這裡,權重索引值是限定在
和
之間。示例性地,權重索引值可以根據下式計算得到,如前述的式(2)所示。
其中,k=0, 1, ..., inSize-1,
。也就是說,在式(2)中,如果
,那麼
;如果
,那麼
;否則,如果
,那麼
。
在一種具體的實施例中,最大權重索引值可以與亮度或色度的位元深度(用
表示)有關。示例性地,最大權重索引值可以根據下式計算得到,如前述的式(3)所示
需要說明的是,在本申請實施例中,
的取值包括但不限於根據式(3)計算得到,它還可以是WCP的核心參數中所確定的。
進一步地,對於第一預設映射關係而言,在一些實施例中,第一預設映射關係是權重索引值與加權係數的數值映射查閱資料表。也就是說,在本申請實施例中,解碼端可以預先設置有對應的查閱資料表(Look Up Table,LUT)。通過該查閱資料表,結合
即可確定出對應的加權係數。示例性地,加權係數
可以用下述的映射關係表示,詳見前述的式(4)。
對於第一預設映射關係而言,在一些實施例中,第一預設映射關係還可以是預設函數關係。在一些實施例中,根據權重索引值,使用第一預設映射關係確定加權係數,可以包括:確定在第一預設映射關係下權重索引值對應的第一取值;將加權係數設置為等於第一取值。
在一種具體的實施例中,確定在第一預設映射關係下權重索引值對應的第一取值,可以包括:
確定第一因數;
根據權重索引值,使用第二預設映射關係確定第二取值;
計算第一因數與第二取值的第一乘積值;
將第一取值設置為等於第一乘積值在第一預設映射關係下對應的取值。
需要說明的是,在本申請實施例中,第一因數可以用
表示,權重索引值用
表示。示例性地,加權係數
還可以用下述的函數關係表示,如前述的式(5)所示。
在這裡,第二預設映射關係可以為基於n的指數函數關係,例如
;其中,n的取值等於權重索引值,即n=0, 1, …,
。這樣,當n的取值等於
時,那麼第二取值等於
,第一乘積值等於
。另外,第一預設映射關係可以設置為
;那麼當
等於第一乘積值時,
的值即為第一取值,也即加權係數
。另外,在本申請實施例中,對於第一預設映射關係而言,可以如前述的式(6)所示。
進一步地,對於第一因數而言,在一些實施例中,第一因數可以為預設常數值。也就是說,第一因數可以是預先設定的常數,其與塊尺寸參數無關。
對於第一因數而言,在一些實施例中,第一因數的取值還可以與塊尺寸參數有關。在一種具體的實施例中,確定第一因數,可以包括:根據當前塊的尺寸參數,確定第一因數的取值;其中,當前塊的尺寸參數包括以下參數的至少之一:當前塊的寬度,當前塊的高度。也就是說,本申請實施例可以採用分類方式固定第一因數的取值。例如,將根據當前塊的尺寸參數分為三類,確定每一類對應的第一因數的取值。針對這種情況,本申請實施例還可以預先儲存當前塊的尺寸參數與第一因數的取值映射查閱資料表,然後根據該查閱資料表即可確定出第一因數的取值。示例性地,當前塊的尺寸參數滿足第一預設條件,即Min(W, H)<=4,則設置第一因數的取值為第一值;當前塊的尺寸參數滿足第二預設條件,即Min(W, H)>4&& Min(W, H)<=16,則設置第一因數的取值為第二值;當前塊的尺寸參數滿足第三預設條件,即Min(W, H)>16,則設置第一因數的取值為第三值。其中,W表示當前塊的寬度,H表示當前塊的高度。
進一步地,在一些實施例中,所述根據當前塊的第一顏色分量的參考樣值,確定權重索引值,可以包括:確定第二因數;根據當前塊的第一顏色分量的參考樣值和第二因數,確定權重索引值。
需要說明的是,在本申請實施例中,一定條件下還可以根據WCP的核心參數中的控制參數對加權係數進行調整。在這裡,第二因數即為本實施例所述的控制參數(也可稱為“尺度參數”、“尺度因數”等),用S表示。示例性地,如果當前塊的尺寸靈活性好,可以根據該第二因數調整權重係數,以非線性函數(例如Softmax函數)為例,可以根據當前塊所歸屬的塊分類類別的不同,選擇不同的第二因數來調整函數,以便根據調整後的函數確定出加權係數。
還需要說明的是,對於第二因數而言,在一些實施例中,第二因數可以是預設常數值。也就是說,在這種情況下,對於S而言,可以根據色度相對平坦的特性調整鄰近色度的加權係數分佈,從而捕獲適合自然圖像色度預測的加權係數分佈。為了確定適合自然圖像色度預測的參數S,遍歷給定的S集合,通過不同S下預測色度與原始色度間的差距來衡量S合適與否。示例性地,S可以取
,其中ε∈{1, 0, -1, -2, -3};經過試驗發現,在此S集合中,S的最佳取值為4。因此,在一種具體的實施例中,S可以設置為4,但是本申請實施例並不作具體限定。
還需要說明的是,對於第二因數而言,在一些實施例中,第二因數的取值還可以與塊尺寸參數有關。在一種具體的實施例中,確定第二因數,可以包括:根據當前塊的尺寸參數,確定第二因數的取值;其中,當前塊的尺寸參數包括以下參數的至少之一:當前塊的寬度,當前塊的高度。
在一種可能的實現方式中,所述根據當前塊的尺寸參數,確定第二因數的取值,可以包括:
若當前塊的高度和寬度的最小值小於或等於4,則確定第二因數為8;
若當前塊的高度和寬度的最小值大於4且小於或等於16,則確定第二因數為12;
若當前塊的高度和寬度的最小值大於16,則確定第二因數為16。
需要說明的是,本申請實施例可以採用分類方式固定第二因數的取值。例如,將根據當前塊的尺寸參數分為三類,確定每一類對應的第二因數的取值。針對這種情況,本申請實施例還可以預先儲存當前塊的尺寸參數與第二因數的取值映射查閱資料表,然後根據該查閱資料表即可確定出第二因數的取值。示例性地,前述的表1示出了本申請實施例提供的一種第二因數與當前塊的尺寸參數之間的對應關係。
在另一種可能的實現方式中,在對權重係數的調整中,還可以對上述的第二因數與當前塊的尺寸參數之間的對應關係進行微調。前述的表2示出了本申請實施例提供的另一種第二因數與當前塊的尺寸參數之間的對應關係。
在又一種可能的實現方式中,在對權重係數的調整中,還可以對上述的第二因數的取值進行微調。在一些實施例中,所述根據當前塊的尺寸參數,確定第二因數的取值,可以包括:
若當前塊的高度和寬度的最小值小於或等於4,則確定第二因數為7;
若當前塊的高度和寬度的最小值大於4且小於或等於16,則確定第二因數為11;
若當前塊的高度和寬度的最小值大於16,則確定第二因數為15。
也就是說,通過對上述的第二因數的取值進行微調,前述的表3示出了本申請實施例提供的又一種第二因數與當前塊的尺寸參數之間的對應關係。
還需要說明的是,在本申請實施例中,將根據當前塊的尺寸參數分為三類,還可以通過塊種類索引值(用wcpSizeId表示)來指示不同的尺寸參數。在再一種可能的實現方式下,所述根據當前塊的尺寸參數,確定第二因數的取值,可以包括:根據塊種類索引值,確定第二因數的取值。
示例性地,若塊種類索引值等於0,則指示Min(W, H)<=4的當前塊;若塊種類索引值等於1,則指示Min(W, H)>4&& Min(W, H)< =16的當前塊;若塊種類索引值等於2,則指示Min(W, H)>16的當前塊。在這種情況下,前述的表4示出了本申請實施例提供的一種第二因數與塊種類索引值之間的對應關係。
示例性地,若塊種類索引值等於0,則指示Min(W, H)<128的當前塊;若塊種類索引值等於1,則指示Min(W, H)>=128&& Min(W, H)< =256的當前塊;若塊種類索引值等於2,則指示Min(W, H)>256的當前塊。在這種情況下,前述的表5示出了本申請實施例提供的另一種第二因數與塊種類索引值之間的對應關係。
示例性地,若塊種類索引值等於0,則指示Min(W, H)<64的當前塊;若塊種類索引值等於1,則指示Min(W, H)>=64&& Min(W, H)< =512的當前塊;若塊種類索引值等於2,則指示Min(W, H)>512的當前塊。在這種情況下,前述的表6示出了本申請實施例提供的又一種第二因數與塊種類索引值之間的對應關係。
還需要說明的是,對於第二因數而言,在一些實施例中,第二因數還可以根據當前塊的參考像素數量進行分類。在另一種具體的實施例中,確定第二因數,可以包括:根據當前塊的參考像素數量,確定第二因數的取值;其中,N表示參考像素數量。
在一種可能的實現方式中,所述根據當前塊的參考像素數量,確定第二因數的取值,可以包括:
若N的取值小於16,則確定第二因數為8;
若N的取值大於或等於16且小於32,則確定第二因數為12;
若N的取值大於或等於32,則確定第二因數為16。
也就是說,根據當前塊的參考像素數量進行分類,前述的表7示出了本申請實施例提供的一種第二因數與參考像素數量之間的對應關係。
進一步地,在一些實施例中,根據當前塊的第一顏色分量的參考樣值和第二因數,確定權重索引值,可以包括:
根據第一顏色分量的參考樣值和第二因數,使用第三預設映射關係確定第三取值;
確定當前塊的最大權重索引值和最小權重索引值;
根據最大權重索引值和最小權重索引值對第三取值進行修正處理,確定權重索引值。
需要說明的是,在本申請實施例中,最大權重索引值可以用
表示,最小權重索引值可以用表示零表示,權重索引值用index表示。在這裡,權重索引值是限定在
和
之間,而第三取值是
。示例性地,權重索引值可以根據下式計算得到,如前述的式(7)所示。
其中,k=0, 1, ..., inSize-1,
。也就是說,在式(7)中,如果
,那麼
;如果
,那麼
;否則,如果
,那麼
。在這裡,
的取值可以是根據上述的式(3)計算得到,還可以是WCP的核心參數中所確定的,對此並不作任何限定。
還需要說明的是,對於第三預設映射關係而言,f( )是指與第二因數S和亮度差向量
的函數。在一種可能的實現方式中,
可以通過下式來實現,如前述的式(8)所示。
在另一種可能的實現方式中,
可以通過如下操作來實現。在一些實施例中,所示根據第一顏色分量的參考樣值和第二因數,使用第三預設映射關係確定第三取值,可以包括:
確定至少一個移位元陣列;
根據第二因數,從至少一個移位元陣列中確定目標偏移量;
對第一顏色分量的參考樣值進行目標偏移量的右移運算,確定第三取值。
在這裡,由於不同的第二因數S可以使用各自的LUT[S],本申請實施例僅儲存幾個基礎的LUT。例如,當S={2,4,8}時,僅儲存S=2時的LUT;對於其他的第二因數S,可以通過移位運算得到。這時候,
可以通過下式來實現,如前述的式(9)和式(10)所示。
在本申請實施例中,如果第二因數等於2,那麼目標偏移量等於0;如果第二因數等於4,那麼目標偏移量等於1;如果第二因數等於8,那麼目標偏移量等於2;然後對第一顏色分量的參考樣值進行目標偏移量的右移運算,即可確定出第三取值。
另外,需要注意的是,對於
來說,其實現方式並不局限於式(8)或式(9),還可以是其他實現方式,本申請實施例也不作任何限定。
進一步地,在一些實施例中,所述根據權重索引值,使用第一預設映射關係確定加權係數,可以包括:
根據第二因數和權重索引值,確定第二乘積值;
確定第二乘積值在第一預設映射關係下對應的第四取值,將加權係數設置為等於第四取值。
在一種具體的實施例中,確定第二乘積值在第一預設映射關係下對應的第四取值,可以包括:
確定第一因數;
根據第二乘積值,使用第二預設映射關係確定第五取值;
計算第一因數與第五取值的第三乘積值;
將第四取值設置為等於第三乘積值在第一預設映射關係下對應的取值。
需要說明的是,在本申請實施例中,第一因數可以用
表示,第二因數可以用
表示,權重索引值可以用
表示。
對於第一預設映射關係而言,在一些實施例中,第一預設映射關係是第二因數、權重索引值與加權係數的數值映射查閱資料表。也就是說,在本申請實施例中,解碼端可以預先設置有對應的查閱資料表(Look Up Table,LUT)。通過該查閱資料表,結合
即可確定出對應的加權係數。示例性地,加權係數
可以用下述的映射關係如前述的式(11)所示。
對於第一預設映射關係而言,在一些實施例中,第一預設映射關係還可以是預設函數關係,該函數的輸入為
和
,輸出為加權係數。示例性地,加權係數
還可以用下述的函數關係如前述的式(12)所示。
在這裡,第二預設映射關係仍可以為基於n的指數函數關係,例如
;其中,n的取值等於權重索引值,即n=0, 1, …,
。這樣,當n的取值等於
時,那麼第五取值等於
,第三乘積值等於
。另外,第一預設映射關係可以設置為
,具體如上述的式(6)所示;那麼當
等於第三乘積值時,
的值即為第四取值,也即加權係數
。
S903:根據當前塊的第二顏色分量的參考值,確定當前塊的第二顏色分量的參考均值;以及根據當前塊的第二顏色分量的參考值與當前塊的第二顏色分量的參考均值,確定當前塊的第二顏色分量的參考樣值。
需要說明的是,在本申請實施例中,基於權重預測的輸入參考像素數量可以用N表示,也可以用inSize表示。在這裡,基於權重預測的輸入參考像素數量與第二顏色分量的參考樣值的數量相同,也可以說是N表示第二顏色分量的參考樣值的數量,N是正整數。
在一些實施例中,根據當前塊的第二顏色分量的參考值,確定當前塊的第二顏色分量的參考均值,可以包括:對N個當前塊的第二顏色分量的參考值進行平均值計算,得到當前塊的第二顏色分量的參考均值。
還需要說明的是,在本申請實施例中,當前塊的第二顏色分量的參考值可以用refC[k]表示,當前塊的第二顏色分量的參考均值可以用avgC表示,而且avgC的計算如前述的式(13)所示。
對於N的取值,在一些實施例中,該方法還可以包括:根據當前塊的尺寸參數,確定塊種類索引值;根據塊種類索引值,使用第五預設映射關係確定N的取值。
在一種具體的實施例中,第五預設映射關係表示塊種類索引值與N的數值映射查閱資料表。
需要說明的是,在本申請實施例中,塊種類索引值可以用wcpSizeId表示。針對不同的塊種類索引值,基於權重預測的輸入參考像素數量也會存在差異;即N或者(inSize)的取值不同。
示例性地,若Min(W, H)<=4的當前塊,則確定塊種類索引值等於0;若Min(W, H)>4&&Min(W, H)<=16的當前塊,則確定塊種類索引值等於1;若Min(W, H)>16的當前塊,則確定塊種類索引值等於2;或者,若Min(W, H)<128的當前塊,則確定塊種類索引值等於0;若Min(W, H)>=128&&Min(W, H)<=256的當前塊,則確定塊種類索引值等於1;若Min(W, H)>256的當前塊,則確定塊種類索引值等於2;對此並不作任何限定。示例性地,前述的表8和表9分別示出了塊種類索引值與N (inSize)的取值之間的對應關係示意。
進一步地,對於當前塊的第二顏色分量的參考樣值而言,在一些實施例中,所述根據當前塊的第二顏色分量的參考值與當前塊的第二顏色分量的參考均值,確定當前塊的第二顏色分量的參考樣值,可以包括:
對當前塊的第二顏色分量的參考值與當前塊的第二顏色分量的參考均值進行減法計算,得到當前塊的第二顏色分量的參考樣值。
在本申請實施例中,對N個參考色度資訊refC計算其平均值avgC,然後將N個參考色度資訊refC與平均值avgC相減即可得到參考色度差向量diffC。具體地,diffC的計算如前述的式(14)所示。
S904:根據當前塊的第二顏色分量的參考均值、當前塊的第二顏色分量的參考樣值以及對應的加權係數,確定當前塊中第二顏色分量採樣點的預測值。
S905:根據當前塊中第二顏色分量採樣點的預測值,確定當前塊中第二顏色分量採樣點的預測差值。
需要說明的是,在確定當前塊的第二顏色分量的參考均值
、當前塊的第二顏色分量的參考樣值
以及對應的加權係數
之後,就可以進一步確定當前塊中第二顏色分量採樣點的預測值。
在一些實施例中,根據當前塊的第二顏色分量的參考均值、當前塊的第二顏色分量的參考樣值以及對應的加權係數,確定當前塊中第二顏色分量採樣點的預測值,可以包括:
確定第二顏色分量的參考樣值與對應的加權係數的加權值;
將當前塊中待預測像素的加權和值設置為等於N個加權值之和,將當前塊中待預測像素的係數和值設置為等於N個加權係數之和;其中,N表示第二顏色分量的參考樣值的數量,N是正整數;
根據加權和值和係數和值,使用第四預設映射關係確定第六取值;
對第二顏色分量的參考均值與第六取值進行加法計算,得到當前塊中待預測像素的第二顏色分量的預測值;
根據當前塊中待預測像素的第二顏色分量的預測值,確定當前塊中第二顏色分量採樣點的預測值。
需要說明的是,在本申請實施例中,如果第二顏色分量的參考樣值的數量有N個,那麼首先確定每一個第二顏色分量的參考樣值與對應的加權係數的加權值(即
),然後對這N個加權值進行加法運算,可以得到當前塊中待預測像素的加權和值,可以用calVal表示。具體地,其計算公式具體如前述的式(15)和式(16)所示。
還需要說明的是,在本申請實施例中,針對當前塊中待預測像素對應的N個加權係數,可以對這N個加權係數進行加法運算,得到當前塊中待預測像素的係數和值,可以用sum表示。具體地,其計算公式具體如前述的式(17)所示。
進一步地,在一些實施例中,根據加權和值和係數和值,使用第四預設映射關係確定第六取值,可以包括:
確定預設偏移量;
根據係數和值,使用第六預設映射關係確定第一數值;以及根據係數和值與第一數值,使用第七預設映射關係確定陣列索引值,並根據陣列索引值與預設偏移量,使用第八預設映射關係確定第二數值;
在陣列索引值是否等於零的情況下,根據第一數值確定第三數值;以及根據第三數值與預設偏移量,確定第一偏移量;
根據第二數值與加權和值確定第四乘積值,根據第三數值和預設偏移量確定預設加法值,對第四乘積值和預設加法值進行加法運算,得到目標和值;
對目標和值進行第一偏移量的右移運算,確定第六取值。
需要說明的是,在本申請實施例中,預設偏移量可以用
表示,陣列索引值可以用
表示,第一數值可以用x表示,第二數值可以用v表示,第三數值可以用y表示,預設加法值用add表示。在一種具體的實施例中,
的取值可以設置為5,但是並不作具體限定。
還需要說明的是,在本申請實施例中,對於第一數值的計算,第六預設映射關係可以如前述的式(18)所示。
在這裡,對於第一數值的計算,可以是:先確定係數和值的以2為底的對數值,然後再確定小於或等於該對數值的最大整數值,這裡所確定的最大整數值即為第一數值;或者,也可以是:將第一數值設置為等於係數和值的二進位表示時所需二進位符號的位元數減一;或者,還可以是:對係數和值進行二進位右移操作,確定右移後數值恰等於零時的右移位數,然後將第一數值設置為等於該右移位數減一等等,本申請實施例不作任何限定。
在一些實施例中,所述根據係數和值與第一數值,使用第七預設映射關係確定陣列索引值,可以包括:將係數和值與第一數值作為預設函數關係的輸入,根據預設函數關係輸出陣列索引值。
在本申請實施例中,對於陣列索引值的計算,可以用前述的式(19)所示。在這裡,Func( )是與
有關的函數,前述的式(20)示出了Func( )的一種具體形式。
在一些實施例中,根據陣列索引值與預設偏移量,使用第八預設映射關係確定第二數值,可以包括:
根據陣列索引值,在陣列映射表中確定索引指示值;
根據索引指示值與預設偏移量,使用第八預設映射關係確定第二數值。
需要說明的是,在本申請實施例中,陣列映射表用
表示,那麼陣列索引值
在
中對應的索引指示值為
。示例性地,根據
和
,第八預設映射關係如前述的式(21)所示。
在一些實施例中,在陣列索引值是否等於零的情況下,根據第一數值確定第三數值,可以包括:
若陣列索引值等於零,則將第三陣列設置為等於第一數值;
若陣列索引值不等於零,則將第三陣列設置為等於第一數值與一的和值。
需要說明的是,在本申請實施例中,第一數值用x表示,第三數值用y表示。示例性地,可以用前述的式(22)所示。
還需要說明的是,在本申請實施例中,對於預設加法值而言,根據第三數值和預設偏移量確定預設加法值,其計算公式如前述的式(23)所示。
還需要說明的是,在本申請實施例中,第一偏移量是由第三數值和預設偏移量確定的,示例性地,通過對第三數值和預設偏移量進行加法運算,以得到第一偏移量,即第一偏移量可以為y+
。
如此,假定第六取值用C表示,那麼對於第六取值而言,可以用前述的式(24)所示。
進一步地,對於當前塊中待預測像素的第二顏色分量的預測值的確定,假定待預測像素為(i, j), 當前塊中待預測像素的第二顏色分量的預測值用
表示,這時候根據第二顏色分量的參考均值與第六取值進行加法計算,可以得到當前塊中待預測像素的第二顏色分量的預測值,其計算公式如前述的式(25)所示。
進一步地,在本申請實施例中,對於
,通常還需要限定在一預設範圍內。因此,在一些實施例中,該方法還可以包括:對待預測像素的第二顏色分量的預測值進行修正操作,將修正後的預測值作為當前塊中待預測像素的第二顏色分量的預測值。
需要說明的是,在本申請實施例中,預設範圍可以為:0到(1<<BitDepth) -1之間;其中,BitDepth為色度分量所要求的位元深度。如果預測值超出該預設範圍的取值,那麼需要對預測值進行相應的修正操作。示例性地,可以對
進行鉗位操作,具體如下:
當
的值小於0時,將其置為0;
當
的值大於或等於0且小於或等於(1<<BitDepth)-1時,其等於
;
當
的值大於(1<<BitDepth)-1時,其置為(1<<BitDepth)-1。
這樣,在對預測值進行修正處理之後,可以保證當前塊中待預測像素的第二顏色分量的預測值都在0到(1<<BitDepth)-1之間。
進一步地,在確定出預測值之後,在一定條件下需要後處理操作後作為最終的色度預測值。因此,在一些實施例中,根據當前塊中待預測像素的第二顏色分量的預測值,確定當前塊中第二顏色分量採樣點的預測值,可以包括:
對待預測像素的第二顏色分量的預測值進行濾波處理,確定當前塊中第二顏色分量採樣點的預測值。
在本申請實施例中,待預測像素的第二顏色分量的預測值包含當前塊中至少部分第二顏色分量採樣點的預測值。換句話說,根據待預測像素的第二顏色分量的預測值所組成的第一預測塊,該第一預測塊包含當前塊中至少部分第二顏色分量採樣點的預測值。
需要說明的是,在本申請實施例中,如果第一預測塊包括了當前塊中部分第二顏色分量採樣點的預測值,這時候需要對第一預測塊進行上採樣濾波,以得到最終的第二預測塊。因此,在一些實施例中,該方法還可以包括:對第一預測塊進行上採樣濾波處理,確定當前塊的第二顏色分量的第二預測塊。
還需要說明的是,在本申請實施例中,如果第一預測塊中包含的第二顏色分量的預測值的數量與當前塊中包含的第二顏色分量採樣點的數量相同,但是並未包含當前塊的第二顏色分量採樣點的預測值,這時候需要用濾波對預測值進行增強,以得到最終的第二預測塊。因此,在一些實施例中,該方法還可以包括:對第一預測塊進行濾波增強處理,確定當前塊的第二顏色分量的第二預測塊。
還需要說明的是,在本申請實施例中,如果第一預測塊包括了當前塊中全部第二顏色分量採樣點的預測值,這時候不需要對第一預測塊進行任何處理,可以直接將第一預測塊作為最終的第二預測塊。
也就是說,第一預測塊可以包含當前塊中至少部分第二顏色分量採樣點的預測值。其中,如果第一預測塊包含當前塊中全部第二顏色分量採樣點的預測值,那麼可以將當前塊中第二顏色分量採樣點的預測值設置為等於第一預測塊的值;如果第一預測塊包含當前塊中部分第二顏色分量採樣點的預測值,那麼可以對第一預測塊的值進行上採樣濾波,將當前塊中第二顏色分量採樣點的預測值設置為等於所述上採樣濾波後的輸出值。
這樣,在經過上述操作後,第二預測塊包括當前塊中全部第二顏色分量採樣點的預測值。如此,基於權重的色度預測輸出predWcp在一定條件下需要後處理後才能夠作為最終的色度預測值predSamples,否則最終的色度預測值predSamples即為predWcp。
在一些實施例中,在確定出當前塊中第二顏色分量採樣點的預測值之後,根據當前塊中第二顏色分量採樣點的預測值,確定當前塊中第二顏色分量採樣點的預測差值,可以包括:
獲取當前塊中第二顏色分量採樣點的原始值;
根據當前塊中第二顏色分量採樣點的原始值和當前塊中第二顏色分量採樣點的預測值,確定當前塊中第二顏色分量採樣點的預測差值。
進一步地,在一些實施例中,該方法還可以包括:對當前塊中第二顏色分量採樣點的預測差值進行編碼,將所得到的編碼位元寫入碼流。
需要說明的是,在本申請實施例中,在確定出當前塊中第二顏色分量採樣點的預測值後,根據第二顏色分量採樣點的原始值和第二顏色分量採樣點的預測值,即可確定出第二顏色分量採樣點的預測差值,具體可以是對第二顏色分量採樣點的原始值和第二顏色分量採樣點的預測值進行減法計算,從而能夠確定出當前塊的第二顏色分量採樣點的預測差值。這樣,在將第二顏色分量採樣點的預測差值寫入碼流後,後續在解碼端,通過解碼即可獲得第二顏色分量採樣點的預測差值,以便恢復當前塊中第二顏色分量採樣點的重建值。
可以理解地,本申請實施例還提供了一種碼流,該碼流是根據待編碼資訊進行位元編碼生成的;其中,待編碼資訊至少包括:當前塊中第二顏色分量採樣點的預測差值。
還可以理解地,本申請實施例是對WCP預測技術過程中對浮點型運算的優化,採用整型運算實現。一方面,充分利用當前塊的內容特性,自我調整選擇最佳的整型運算位移量;另一方面,充分保證WCP預測技術的精確性;又一方面,充分考慮權重模型的特性,合理設計整型運算過程;從而可以在保證WCP預測技術的一定準確性的前提下,降低了WCP預測技術的計算複雜度。
本申請實施例還提供了一種編碼方法,通過確定當前塊的第一顏色分量的參考值和當前塊的第二顏色分量的參考值;根據當前塊的第一顏色分量的參考值,確定加權係數;根據當前塊的第二顏色分量的參考值,確定當前塊的第二顏色分量的參考均值;以及根據當前塊的第二顏色分量的參考值與當前塊的第二顏色分量的參考均值,確定當前塊的第二顏色分量的參考樣值;根據當前塊的第二顏色分量的參考均值、當前塊的第二顏色分量的參考樣值以及對應的加權係數,確定當前塊中第二顏色分量採樣點的預測值;根據當前塊中第二顏色分量採樣點的預測值,確定當前塊中第二顏色分量採樣點的預測差值。這樣,基於當前塊的相鄰區域中的顏色分量參考資訊與當前塊內的顏色分量重建資訊,不僅需要構造亮度差向量,以便確定出加權係數;而且還需要根據色度參考資訊確定色度平均值,然後根據色度參考資訊和色度平均值來確定出色度差向量,進而根據色度差向量及對應的加權係數,再加上色度平均值即可確定出色度預測值;如此,通過對基於權重的色度預測的計算過程進行優化,能夠實現完全採用整型運算,而且充分考慮了權重模型的特性,合理優化整型運算過程;在充分保證色度預測準確性的同時,還可以降低計算複雜度,提高編解碼效率,進而提升編解碼性能。
在本申請的再一實施例中,基於前述實施例相同的發明構思,參見圖10,其示出了本申請實施例提供的一種編碼裝置310的組成結構示意圖。如圖10所示,該編碼裝置310可以包括:第一確定單元3101、第一計算單元3102和第一預測單元3103;其中,
第一確定單元3101,配置為確定當前塊的第一顏色分量的參考值和當前塊的第二顏色分量的參考值;以及根據當前塊的第一顏色分量的參考值,確定加權係數;
第一計算單元3102,配置為根據當前塊的第二顏色分量的參考值,確定當前塊的第二顏色分量的參考均值;以及根據當前塊的第二顏色分量的參考值與當前塊的第二顏色分量的參考均值,確定當前塊的第二顏色分量的參考樣值;
第一預測單元3103,配置為根據當前塊的第二顏色分量的參考均值、當前塊的第二顏色分量的參考樣值以及對應的加權係數,確定當前塊中第二顏色分量採樣點的預測值;
第一確定單元3101,還配置為根據當前塊中第二顏色分量採樣點的預測值,確定當前塊中第二顏色分量採樣點的預測差值。
在一些實施例中,第一確定單元3101,還配置為獲取當前塊中第二顏色分量採樣點的原始值;以及根據當前塊中第二顏色分量採樣點的原始值和當前塊中第二顏色分量採樣點的預測值,確定當前塊中第二顏色分量採樣點的預測差值。
在一些實施例中,參見圖10,編碼裝置310還可以包括編碼單元3104,配置為對當前塊中第二顏色分量採樣點的預測差值進行編碼,將所得到的編碼位元寫入碼流。
可以理解地,在本申請實施例中,“單元”可以是部分電路、部分處理器、部分程式或軟體等等,當然也可以是模組,還可以是非模組化的。而且在本實施例中的各組成部分可以集成在一個處理單元中,也可以是各個單元單獨物理存在,也可以兩個或兩個以上單元集成在一個單元中。上述集成的單元既可以採用硬體的形式實現,也可以採用軟體功能模組的形式實現。
所述集成的單元如果以軟體功能模組的形式實現並非作為獨立的產品進行銷售或使用時,可以儲存在一個電腦可讀取儲存媒介中,基於這樣的理解,本實施例的技術方案本質上或者說對現有技術做出貢獻的部分或者該技術方案的全部或部分可以以軟體產品的形式體現出來,該電腦軟體產品儲存在一個儲存媒介中,包括若干指令用以使得一台電腦設備(可以是個人電腦,伺服器,或者網路設備等)或processor(處理器)執行本實施例所述方法的全部或部分步驟。而前述的儲存媒介包括:U盤、移動硬碟、唯讀記憶體(Read Only Memory,ROM)、隨機存取記憶體(Random Access Memory,RAM)、磁碟或者光碟等各種可以儲存程式碼的媒介。
因此,本申請實施例提供了一種電腦可讀儲存媒介,應用於編碼裝置310,該電腦可讀儲存媒介儲存有電腦程式,所述電腦程式被第一處理器執行時實現前述實施例中任一項所述的方法的步驟。
基於上述編碼裝置310的組成以及電腦可讀儲存媒介,參見圖11,其示出了本申請實施例提供的編碼設備320的組成結構示意圖。如圖11所示,編碼設備320可以包括:第一通訊介面3201、第一記憶體3202和第一處理器3203;各個元件通過第一匯流排系統3204耦合在一起。可理解,第一匯流排系統3204用於實現這些元件之間的連接通訊。第一匯流排系統3204除包括資料匯流排之外,還包括電源匯流排、控制匯流排和狀態訊號匯流排。但是為了清楚說明起見,在圖11中將各種匯流排都標為第一匯流排系統3204。其中,
第一通訊介面3201,用於在與其他外部網元之間進行收發資訊過程中,訊號的接收和發送;
第一記憶體3202,用於儲存能夠在第一處理器3203上運行的電腦程式;
第一處理器3203,用於在運行所述電腦程式時,執行:
確定當前塊的第一顏色分量的參考值和當前塊的第二顏色分量的參考值;
根據當前塊的第一顏色分量的參考值,確定加權係數;
根據當前塊的第二顏色分量的參考值,確定當前塊的第二顏色分量的參考均值;以及根據當前塊的第二顏色分量的參考值與當前塊的第二顏色分量的參考均值,確定當前塊的第二顏色分量的參考樣值;
根據當前塊的第二顏色分量的參考均值、當前塊的第二顏色分量的參考樣值以及對應的加權係數,確定當前塊中第二顏色分量採樣點的預測值;
根據當前塊中第二顏色分量採樣點的預測值,確定當前塊中第二顏色分量採樣點的預測差值。
可以理解,本申請實施例中的第一記憶體3202可以是易失性記憶體或非易失性記憶體,或可包括易失性和非易失性記憶體兩者。其中,非易失性記憶體可以是唯讀記憶體(Read-Only Memory,ROM)、可程式設計唯讀記憶體(Programmable ROM,PROM)、可擦除可程式設計唯讀記憶體(Erasable PROM,EPROM)、電可擦除可程式設計唯讀記憶體(Electrically EPROM,EEPROM)或快閃記憶體。易失性記憶體可以是隨機存取記憶體(Random Access Memory,RAM),其用作外部快取記憶體。通過示例性但不是限制性說明,許多形式的RAM可用,例如靜態隨機存取記憶體(Static RAM,SRAM)、動態隨機存取記憶體(Dynamic RAM,DRAM)、同步動態隨機存取記憶體(Synchronous DRAM,SDRAM)、雙倍數據速率同步動態隨機存取記憶體(Double Data Rate SDRAM,DDRSDRAM)、增強型同步動態隨機存取記憶體(Enhanced SDRAM,ESDRAM)、同步連接動態隨機存取記憶體(Synchlink DRAM,SLDRAM)和直接記憶體匯流排隨機存取記憶體(Direct Rambus RAM,DRRAM)。本申請描述的系統和方法的第一記憶體3202旨在包括但不限於這些和任意其它適合類型的記憶體。
而第一處理器3203可能是一種積體電路晶片,具有訊號的處理能力。在實現過程中,上述方法的各步驟可以通過第一處理器3203中的硬體的集成邏輯電路或者軟體形式的指令完成。上述的第一處理器3203可以是通用處理器、數位訊號處理器(Digital Signal Processor,DSP)、專用積體電路(Application Specific Integrated Circuit,ASIC)、現成可程式設計閘陣列(Field Programmable Gate Array,FPGA)或者其他可程式設計邏輯器件、分立門或者電晶體邏輯器件、分立硬體元件。可以實現或者執行本申請實施例中的公開的各方法、步驟及邏輯框圖。通用處理器可以是微處理器或者該處理器也可以是任何常規的處理器等。結合本申請實施例所公開的方法的步驟可以直接體現為硬體解碼處理器執行完成,或者用解碼處理器中的硬體及軟體模組組合執行完成。軟體模組可以位於隨機記憶體,快閃記憶體、唯讀記憶體,可程式設計唯讀記憶體或者電可讀寫可程式設計記憶體、寄存器等本領域成熟的儲存媒介中。該儲存媒介位於第一記憶體3202,第一處理器3203讀取第一記憶體3202中的資訊,結合其硬體完成上述方法的步驟。
可以理解的是,本申請描述的這些實施例可以用硬體、軟體、固件、中介軟體、微碼或其組合來實現。對於硬體實現,處理單元可以實現在一個或多個專用積體電路(Application Specific Integrated Circuits,ASIC)、數位訊號處理器(Digital Signal Processing,DSP)、數位訊號處理設備(DSP Device,DSPD)、可程式設計邏輯裝置(Programmable Logic Device,PLD)、現場可程式設計閘陣列(Field-Programmable Gate Array,FPGA)、通用處理器、控制器、微控制器、微處理器、用於執行本申請所述功能的其它電子單元或其組合中。對於軟體實現,可通過執行本申請所述功能的模組(例如過程、函數等)來實現本申請所述的技術。軟體代碼可儲存在記憶體中並通過處理器執行。記憶體可以在處理器中或在處理器外部實現。
可選地,作為另一個實施例,第一處理器3203還配置為在運行所述電腦程式時,執行前述實施例中任一項所述的方法。
本實施例提供了一種編碼設備,該編碼設備還可以包括前述實施例所述的編碼裝置310。對於編碼設備而言,基於當前塊的相鄰區域中的顏色分量參考資訊與當前塊內的顏色分量重建資訊,不僅需要構造亮度差向量,以便確定出加權係數;而且還需要根據色度參考資訊確定色度平均值,然後根據色度參考資訊和色度平均值來確定出色度差向量,進而根據色度差向量及對應的加權係數,再加上色度平均值即可確定出色度預測值;如此,通過對基於權重的色度預測的計算過程進行優化,能夠實現完全採用整型運算,而且充分考慮了權重模型的特性,合理優化整型運算過程;在充分保證色度預測準確性的同時,還可以降低計算複雜度,提高編解碼效率,進而提升編解碼性能。
基於前述實施例相同的發明構思,參見圖12,其示出了本申請實施例提供的一種解碼裝置330的組成結構示意圖。如圖12所示,該解碼裝置330可以包括:第二確定單元3301、第二計算單元3302和第二預測單元3303;其中,
第二確定單元3301,配置為確定當前塊的第一顏色分量的參考值和當前塊的第二顏色分量的參考值;以及根據當前塊的第一顏色分量的參考值,確定加權係數;
第二計算單元3302,配置為根據當前塊的第二顏色分量的參考值,確定當前塊的第二顏色分量的參考均值;以及根據當前塊的第二顏色分量的參考值與當前塊的第二顏色分量的參考均值,確定當前塊的第二顏色分量的參考樣值;
第二預測單元3303,配置為根據當前塊的第二顏色分量的參考均值、當前塊的第二顏色分量的參考樣值以及對應的加權係數,確定當前塊中第二顏色分量採樣點的預測值;
第二確定單元3301,還配置為根據當前塊中第二顏色分量採樣點的預測值,確定當前塊中第二顏色分量採樣點的重建值。
在一些實施例中,第二確定單元3301,還配置為確定當前塊中第二顏色分量採樣點的預測差值;以及根據當前塊中第二顏色分量採樣點的預測差值和當前塊中第二顏色分量採樣點的預測值,確定當前塊中第二顏色分量採樣點的重建值。
在一些實施例中,參見圖12,該解碼裝置330還可以包括解碼單元3304,配置為解析碼流,確定當前塊中第二顏色分量採樣點的預測差值。
可以理解地,在本實施例中,“單元”可以是部分電路、部分處理器、部分程式或軟體等等,當然也可以是模組,還可以是非模組化的。而且在本實施例中的各組成部分可以集成在一個處理單元中,也可以是各個單元單獨物理存在,也可以兩個或兩個以上單元集成在一個單元中。上述集成的單元既可以採用硬體的形式實現,也可以採用軟體功能模組的形式實現。
所述集成的單元如果以軟體功能模組的形式實現並非作為獨立的產品進行銷售或使用時,可以儲存在一個電腦可讀取儲存媒介中。基於這樣的理解,本實施例提供了一種電腦可讀儲存媒介,應用於解碼裝置330,該電腦可讀儲存媒介儲存有電腦程式,所述電腦程式被第二處理器執行時實現前述實施例中任一項所述的方法的步驟。
基於上述解碼裝置330的組成以及電腦可讀儲存媒介,參見圖13,其示出了本申請實施例提供的解碼設備340的組成結構示意圖。如圖13所示,解碼設備340可以包括:第二通訊介面3401、第二記憶體3402和第二處理器3403;各個元件通過第二匯流排系統3404耦合在一起。可理解,第二匯流排系統3404用於實現這些元件之間的連接通訊。第二匯流排系統3404除包括資料匯流排之外,還包括電源匯流排、控制匯流排和狀態訊號匯流排。但是為了清楚說明起見,在圖13中將各種匯流排都標為第二匯流排系統3404。其中,
第二通訊介面3401,用於在與其他外部網元之間進行收發資訊過程中,訊號的接收和發送;
第二記憶體3402,用於儲存能夠在第二處理器3403上運行的電腦程式;
第二處理器3403,用於在運行所述電腦程式時,執行:
確定當前塊的第一顏色分量的參考值和當前塊的第二顏色分量的參考值;
根據當前塊的第一顏色分量的參考值,確定加權係數;
根據當前塊的第二顏色分量的參考值,確定當前塊的第二顏色分量的參考均值;以及根據當前塊的第二顏色分量的參考值與當前塊的第二顏色分量的參考均值,確定當前塊的第二顏色分量的參考樣值;
根據當前塊的第二顏色分量的參考均值、當前塊的第二顏色分量的參考樣值以及對應的加權係數,確定當前塊中第二顏色分量採樣點的預測值;
根據當前塊中第二顏色分量採樣點的預測值,確定當前塊中第二顏色分量採樣點的重建值。
可選地,作為另一個實施例,第二處理器3403還配置為在運行所述電腦程式時,執行前述實施例中任一項所述的方法。
可以理解,第二記憶體3402與第一記憶體2102的硬體功能類似,第二處理器3403與第一處理器2103的硬體功能類似;這裡不再詳述。
本實施例提供了一種解碼設備,該解碼設備還可以包括前述實施例所述的解碼裝置340。對於解碼設備而言,基於當前塊的相鄰區域中的顏色分量參考資訊與當前塊內的顏色分量重建資訊,不僅需要構造亮度差向量,以便確定出加權係數;而且還需要根據色度參考資訊確定色度平均值,然後根據色度參考資訊和色度平均值來確定出色度差向量,進而根據色度差向量及對應的加權係數,再加上色度平均值即可確定出色度預測值;如此,通過對基於權重的色度預測的計算過程進行優化,能夠實現完全採用整型運算,而且充分考慮了權重模型的特性,合理優化整型運算過程;在充分保證色度預測準確性的同時,還可以降低計算複雜度,提高編解碼效率,進而提升編解碼性能。
在本申請的再一實施例中,參見圖14,其示出了本申請實施例提供的一種編解碼系統的組成結構示意圖。如圖14所示,編解碼系統350可以包括編碼器3501和解碼器3502。其中,編碼器3501可以為集成有前述實施例所述編碼裝置310的設備,或者也可以為前述實施例所述的編碼設備320;解碼器3502可以為集成有前述實施例所述解碼裝置330的設備,或者也可以為前述實施例所述的解碼設備340。
在本申請實施例中,在該編解碼系統350中,無論是編碼器3501還是解碼器3502,通過對基於權重的色度預測的計算過程進行優化,能夠實現完全採用整型運算,而且充分考慮了權重模型的特性,合理優化整型運算過程;在充分保證色度預測準確性的同時,還可以降低計算複雜度,提高編解碼效率,進而提升編解碼性能。
需要說明的是,在本申請中,術語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者裝置不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者裝置所固有的要素。在沒有更多限制的情況下,由語句“包括一個……”限定的要素,並不排除在包括該要素的過程、方法、物品或者裝置中還存在另外的相同要素。
上述本申請實施例序號僅僅為了描述,不代表實施例的優劣。
本申請所提供的幾個方法實施例中所揭露的方法,在不衝突的情況下可以任意組合,得到新的方法實施例。
本申請所提供的幾個產品實施例中所揭露的特徵,在不衝突的情況下可以任意組合,得到新的產品實施例。
本申請所提供的幾個方法或設備實施例中所揭露的特徵,在不衝突的情況下可以任意組合,得到新的方法實施例或設備實施例。
以上所述,僅為本申請的具體實施方式,但本申請的保護範圍並不局限於此,任何熟悉本技術領域的技術人員在本申請揭露的技術範圍內,可輕易想到變化或替換,都應涵蓋在本申請的保護範圍之內。因此,本申請的保護範圍應以申請專利範圍的保護範圍為准。
100:編碼器
101:變換與量化單元
102:幀內估計單元
103:幀內預測單元
104:運動補償單元
105:運動估計單元
106:反變換與反量化單元
107:濾波器控制分析單元
108:濾波單元
109:編碼單元
110:解碼圖像緩存單元
200:解碼器
201:解碼單元
202:反變換與反量化單元
203:幀內預測單元
204:運動補償單元
205:濾波單元
206:解碼圖像緩存單元
310:編碼裝置
3101:第一確定單元
3102:第一計算單元
3103:第一預測單元
3104:編碼單元
320:編碼設備
3201:第一通訊介面
3202:第一記憶體
3203:第一處理器
3204:第一匯流排系統
330:解碼裝置
3301:第二確定單元
3302:第二計算單元
3303:第二預測單元
3304:解碼單元
340:解碼設備
3401:第二通訊介面
3402:第二記憶體
3403:第二處理器
3404:第二匯流排系統
350:編解碼系統
3501:編碼器
3502:解碼器
S301~S308:步驟
S501~S505:步驟
S701~S704:步驟
S801~S805:步驟
S901~S905:步驟
圖1為一種有效相鄰區域的分佈示意圖;
圖2為一種不同預測模式下選擇區域的分佈示意圖;
圖3為一種模型參數推導方案的流程示意圖;
圖4A為本申請實施例提供的一種編碼器的組成框圖示意圖;
圖4B為本申請實施例提供的一種解碼器的組成框圖示意圖;
圖5為本申請實施例提供的一種解碼方法的流程示意圖;
圖6為本申請實施例提供的一種當前塊的參考區域示意圖;
圖7為本申請實施例提供的另一種解碼方法的流程示意圖;
圖8為本申請實施例提供的又一種解碼方法的流程示意圖;
圖9為本申請實施例提供的一種編碼方法的流程示意圖;
圖10為本申請實施例提供的一種編碼裝置的組成結構示意圖;
圖11為本申請實施例提供的一種編碼設備的具體硬體結構示意圖;
圖12為本申請實施例提供的一種解碼裝置的組成結構示意圖;
圖13為本申請實施例提供的一種解碼設備的具體硬體結構示意圖;
圖14為本申請實施例提供的一種編解碼系統的組成結構示意圖。
S501~S505:步驟
Claims (82)
- 一種解碼方法,包括: 確定當前塊的第一顏色分量的參考值和所述當前塊的第二顏色分量的參考值; 根據所述當前塊的第一顏色分量的參考值,確定加權係數; 根據所述當前塊的第二顏色分量的參考值,確定所述當前塊的第二顏色分量的參考均值;以及根據所述當前塊的第二顏色分量的參考值與所述當前塊的第二顏色分量的參考均值,確定所述當前塊的第二顏色分量的參考樣值; 根據所述當前塊的第二顏色分量的參考均值、所述當前塊的第二顏色分量的參考樣值以及對應的所述加權係數,確定所述當前塊中第二顏色分量採樣點的預測值; 根據所述當前塊中第二顏色分量採樣點的預測值,確定所述當前塊中第二顏色分量採樣點的重建值。
- 根據請求項1所述的方法,其中,所述確定當前塊的第一顏色分量的參考值和所述當前塊的第二顏色分量的參考值,包括: 根據所述當前塊的相鄰區域中的第一顏色分量採樣點的取值,確定所述當前塊的第一顏色分量的參考值; 根據所述當前塊的相鄰區域中的第二顏色分量採樣點的取值,確定所述當前塊的第二顏色分量的參考值; 其中,所述相鄰區域包括下述至少之一:上側相鄰區域、右上側相鄰區域、左側相鄰區域和左下側相鄰區域。
- 根據請求項2所述的方法,其中,所述根據所述當前塊的相鄰區域中的第一顏色分量採樣點的取值,確定所述當前塊的第一顏色分量的參考值,包括: 對所述當前塊的相鄰區域中的第一顏色分量採樣點的取值進行第一濾波處理,確定所述當前塊的第一顏色分量的參考值。
- 根據請求項3所述的方法,其中,所述第一濾波處理為下採樣濾波處理。
- 根據請求項2所述的方法,其中,所述根據所述當前塊的相鄰區域中的第二顏色分量採樣點的取值,確定所述當前塊的第二顏色分量的參考值,包括: 對所述當前塊的相鄰區域中的第二顏色分量採樣點的取值進行第二濾波處理,確定所述當前塊的第二顏色分量的參考值。
- 根據請求項5所述的方法,其中,所述第二濾波處理為上採樣濾波處理。
- 根據請求項1所述的方法,其中,所述根據所述當前塊的第一顏色分量的參考值,確定加權係數,包括: 確定所述當前塊中第一顏色分量採樣點的重建值; 根據所述當前塊中第一顏色分量採樣點的重建值和所述當前塊的第一顏色分量的參考值,確定所述當前塊的第一顏色分量的參考樣值; 根據所述當前塊的第一顏色分量的參考樣值,確定所述加權係數。
- 根據請求項7所述的方法,其中,所述根據所述當前塊中第一顏色分量採樣點的重建值和所述當前塊的第一顏色分量的參考值,確定所述當前塊的第一顏色分量的參考樣值,包括: 確定所述當前塊中第一顏色分量採樣點的重建值和所述當前塊的第一顏色分量的參考值的差值; 根據所述差值,確定所述當前塊的第一顏色分量的參考樣值。
- 根據請求項8所述的方法,其中,所述根據所述差值,確定所述當前塊的第一顏色分量的參考樣值,包括: 將所述當前塊的第一顏色分量的參考樣值設置為等於所述差值的絕對值。
- 根據請求項7所述的方法,其中,所述根據所述當前塊的第一顏色分量的參考樣值,確定所述加權係數,包括: 根據所述當前塊的第一顏色分量的參考樣值,確定權重索引值; 根據所述權重索引值,使用第一預設映射關係確定所述加權係數。
- 根據請求項10所述的方法,其中,所述根據所述當前塊的第一顏色分量的參考樣值,確定權重索引值,包括: 確定所述當前塊的最大權重索引值和最小權重索引值; 根據所述最大權重索引值和所述最小權重索引值對所述第一顏色分量的參考樣值進行修正處理,確定所述權重索引值。
- 根據請求項10所述的方法,其中,所述根據所述權重索引值,使用第一預設映射關係確定所述加權係數,包括: 所述第一預設映射關係是所述權重索引值與所述加權係數的數值映射查閱資料表。
- 根據請求項10所述的方法,其中,所述根據所述權重索引值,使用第一預設映射關係確定所述加權係數,包括: 確定在所述第一預設映射關係下所述權重索引值對應的第一取值; 將所述加權係數設置為等於所述第一取值。
- 根據請求項13所述的方法,其中,所述確定在所述第一預設映射關係下所述權重索引值對應的第一取值,包括: 確定第一因數; 根據所述權重索引值,使用第二預設映射關係確定第二取值; 計算所述第一因數與所述第二取值的第一乘積值; 將所述第一取值設置為等於所述第一乘積值在所述第一預設映射關係下對應的取值。
- 根據請求項14所述的方法,其中,所述第二預設映射關係為基於n的指數函數關係;其中,n的取值等於所述權重索引值。
- 根據請求項14所述的方法,其中,所述確定第一因數,包括: 所述第一因數為預設常數值。
- 根據請求項14所述的方法,其中,所述確定第一因數,包括: 根據所述當前塊的尺寸參數,確定所述第一因數的取值; 其中,所述當前塊的尺寸參數包括以下參數的至少之一:所述當前塊的寬度,所述當前塊的高度。
- 根據請求項10所述的方法,其中,所述根據所述當前塊的第一顏色分量的參考樣值,確定權重索引值,包括: 確定第二因數; 根據所述當前塊的第一顏色分量的參考樣值和所述第二因數,確定所述權重索引值。
- 根據請求項18所述的方法,其中,所述確定第二因數,包括: 所述第二因數是預設常數值。
- 根據請求項18所述的方法,其中,所述確定第二因數,包括: 根據所述當前塊的尺寸參數,確定所述第二因數的取值; 其中,所述當前塊的尺寸參數包括以下參數的至少之一:所述當前塊的寬度,所述當前塊的高度。
- 根據請求項18所述的方法,其中,所述根據所述當前塊的第一顏色分量的參考樣值和所述第二因數,確定所述權重索引值,包括: 根據所述第一顏色分量的參考樣值和所述第二因數,使用第三預設映射關係確定第三取值; 確定所述當前塊的最大權重索引值和最小權重索引值; 根據所述最大權重索引值和所述最小權重索引值對所述第三取值進行修正處理,確定所述權重索引值。
- 根據請求項21所述的方法,其中,所述根據所述第一顏色分量的參考樣值和所述第二因數,使用第三預設映射關係確定第三取值,包括: 確定至少一個移位元陣列; 根據所述第二因數,從所述至少一個移位元陣列中確定目標偏移量; 對所述第一顏色分量的參考樣值進行所述目標偏移量的右移運算,確定所述第三取值。
- 根據請求項18所述的方法,其中,所述根據所述權重索引值,使用第一預設映射關係確定所述加權係數,包括: 根據所述第二因數和所述權重索引值,確定第二乘積值; 確定所述第二乘積值在所述第一預設映射關係下對應的第四取值; 將所述加權係數設置為等於所述第四取值。
- 根據請求項23所述的方法,其中,所述確定所述第二乘積值在所述第一預設映射關係下對應的第四取值,包括: 確定第一因數; 根據所述第二乘積值,使用第二預設映射關係確定第五取值; 計算所述第一因數與所述第五取值的第三乘積值; 將所述第四取值設置為等於所述第三乘積值在所述第一預設映射關係下對應的取值。
- 根據請求項1所述的方法,其中,所述根據所述當前塊的第二顏色分量的參考均值、所述當前塊的第二顏色分量的參考樣值以及對應的所述加權係數,確定所述當前塊中第二顏色分量採樣點的預測值,包括: 確定所述第二顏色分量的參考樣值與對應的所述加權係數的加權值; 將所述當前塊中待預測像素的加權和值設置為等於N個所述加權值之和,將所述當前塊中待預測像素的係數和值設置為等於N個所述加權係數之和;其中,N表示所述第二顏色分量的參考樣值的數量,N是正整數; 根據所述加權和值和所述係數和值,使用第四預設映射關係確定第六取值; 對所述第二顏色分量的參考均值與所述第六取值進行加法計算,得到所述當前塊中待預測像素的第二顏色分量的預測值; 根據所述當前塊中待預測像素的第二顏色分量的預測值,確定所述當前塊中第二顏色分量採樣點的預測值。
- 根據請求項25所述的方法,其中,所述待預測像素的第二顏色分量的預測值包含所述當前塊中至少部分第二顏色分量採樣點的預測值。
- 根據請求項1所述的方法,其中,所述根據所述當前塊的第二顏色分量的參考值,確定所述當前塊的第二顏色分量的參考均值,包括: 對N個所述當前塊的第二顏色分量的參考值進行平均值計算,得到所述當前塊的第二顏色分量的參考均值。
- 根據請求項27所述的方法,其中,所述方法還包括: 根據所述當前塊的尺寸參數,確定塊種類索引值; 根據所述塊種類索引值,使用第五預設映射關係確定N的取值。
- 根據請求項28所述的方法,其中,所述第五預設映射關係表示所述塊種類索引值與N的數值映射查閱資料表。
- 根據請求項1所述的方法,其中,所述根據所述當前塊的第二顏色分量的參考值與所述當前塊的第二顏色分量的參考均值,確定所述當前塊的第二顏色分量的參考樣值,包括: 對所述當前塊的第二顏色分量的參考值與所述當前塊的第二顏色分量的參考均值進行減法計算,得到所述當前塊的第二顏色分量的參考樣值。
- 根據請求項25所述的方法,其中,所述根據所述加權和值和所述係數和值,使用第四預設映射關係確定第六取值,包括: 確定預設偏移量; 根據所述係數和值,使用第六預設映射關係確定第一數值;以及根據所述係數和值與所述第一數值,使用第七預設映射關係確定陣列索引值,並根據所述陣列索引值與所述預設偏移量,使用第八預設映射關係確定第二數值; 在所述陣列索引值是否等於零的情況下,根據所述第一數值確定第三數值;以及根據所述第三數值與所述預設偏移量,確定第一偏移量; 根據所述第二數值與所述加權和值確定第四乘積值,根據所述第三數值和所述預設偏移量確定預設加法值,對所述第四乘積值和所述預設加法值進行加法運算,得到目標和值; 對所述目標和值進行所述第一偏移量的右移運算,確定所述第六取值。
- 根據請求項31所述的方法,其中,所述根據所述係數和值,使用第六預設映射關係確定第一數值,包括: 將所述第一數值設置為等於所述係數和值的二進位表示時所需二進位符號的位元數減一。
- 根據請求項31所述的方法,其中,所述根據所述係數和值與所述第一數值,使用第七預設映射關係確定陣列索引值,包括: 將所述係數和值與所述第一數值作為預設函數關係的輸入,根據所述預設函數關係輸出所述陣列索引值。
- 根據請求項31所述的方法,其中,所述根據所述陣列索引值與所述預設偏移量,使用第八預設映射關係確定第二數值,包括: 根據所述陣列索引值,在陣列映射表中確定索引指示值; 根據所述索引指示值與所述預設偏移量,使用所述第八預設映射關係確定所述第二數值。
- 根據請求項31所述的方法,其中,所述在所述陣列索引值是否等於零的情況下,根據所述第一數值確定第三數值,包括: 若所述陣列索引值等於零,則將所述第三陣列設置為等於所述第一數值; 若所述陣列索引值不等於零,則將所述第三陣列設置為等於所述第一數值與一的和值。
- 根據請求項25所述的方法,其中,所述方法還包括: 對所述待預測像素的第二顏色分量的預測值進行修正操作,將修正後的預測值作為所述當前塊中待預測像素的第二顏色分量的預測值。
- 根據請求項25所述的方法,其中,所述根據所述當前塊中待預測像素的第二顏色分量的預測值,確定所述當前塊中第二顏色分量採樣點的預測值,包括: 對所述待預測像素的第二顏色分量的預測值進行濾波處理,確定所述當前塊中第二顏色分量採樣點的預測值。
- 根據請求項1至33任一項所述的方法,其中,所述根據所述當前塊中第二顏色分量採樣點的預測值,確定所述當前塊中第二顏色分量採樣點的重建值,包括: 確定所述當前塊中第二顏色分量採樣點的預測差值; 根據所述當前塊中第二顏色分量採樣點的預測差值和所述當前塊中第二顏色分量採樣點的預測值,確定所述當前塊中第二顏色分量採樣點的重建值。
- 一種編碼方法,包括: 確定當前塊的第一顏色分量的參考值和所述當前塊的第二顏色分量的參考值; 根據所述當前塊的第一顏色分量的參考值,確定加權係數; 根據所述當前塊的第二顏色分量的參考值,確定所述當前塊的第二顏色分量的參考均值;以及根據所述當前塊的第二顏色分量的參考值與所述當前塊的第二顏色分量的參考均值,確定所述當前塊的第二顏色分量的參考樣值; 根據所述當前塊的第二顏色分量的參考均值、所述當前塊的第二顏色分量的參考樣值以及對應的所述加權係數,確定所述當前塊中第二顏色分量採樣點的預測值; 根據所述當前塊中第二顏色分量採樣點的預測值,確定所述當前塊中第二顏色分量採樣點的預測差值。
- 根據請求項39所述的方法,其中,所述確定當前塊的第一顏色分量的參考值和所述當前塊的第二顏色分量的參考值,包括: 根據所述當前塊的相鄰區域中的第一顏色分量採樣點的取值,確定所述當前塊的第一顏色分量的參考值; 根據所述當前塊的相鄰區域中的第二顏色分量採樣點的取值,確定所述當前塊的第二顏色分量的參考值; 其中,所述相鄰區域包括下述至少之一:上側相鄰區域、右上側相鄰區域、左側相鄰區域和左下側相鄰區域。
- 根據請求項40所述的方法,其中,所述根據所述當前塊的相鄰區域中的第一顏色分量採樣點的取值,確定所述當前塊的第一顏色分量的參考值,包括: 對所述當前塊的相鄰區域中的第一顏色分量採樣點的取值進行第一濾波處理,確定所述當前塊的第一顏色分量的參考值。
- 根據請求項41所述的方法,其中,所述第一濾波處理為下採樣濾波處理。
- 根據請求項40所述的方法,其中,所述根據所述當前塊的相鄰區域中的第二顏色分量採樣點的取值,確定所述當前塊的第二顏色分量的參考值,包括: 對所述當前塊的相鄰區域中的第二顏色分量採樣點的取值進行第二濾波處理,確定所述當前塊的第二顏色分量的參考值。
- 根據請求項43所述的方法,其中,所述第二濾波處理為上採樣濾波處理。
- 根據請求項39所述的方法,其中,所述根據所述當前塊的第一顏色分量的參考值,確定加權係數,包括: 確定所述當前塊中第一顏色分量採樣點的重建值; 根據所述當前塊中第一顏色分量採樣點的重建值和所述當前塊的第一顏色分量的參考值,確定所述當前塊的第一顏色分量的參考樣值; 根據所述當前塊的第一顏色分量的參考樣值,確定所述加權係數。
- 根據請求項45所述的方法,其中,所述根據所述當前塊中第一顏色分量採樣點的重建值和所述當前塊的第一顏色分量的參考值,確定所述當前塊的第一顏色分量的參考樣值,包括: 確定所述當前塊中第一顏色分量採樣點的重建值和所述當前塊的第一顏色分量的參考值的差值; 根據所述差值,確定所述當前塊的第一顏色分量的參考樣值。
- 根據請求項46所述的方法,其中,所述根據所述差值,確定所述當前塊的第一顏色分量的參考樣值,包括: 將所述當前塊的第一顏色分量的參考樣值設置為等於所述差值的絕對值。
- 根據請求項45所述的方法,其中,所述根據所述當前塊的第一顏色分量的參考樣值,確定所述加權係數,包括: 根據所述當前塊的第一顏色分量的參考樣值,確定權重索引值; 根據所述權重索引值,使用第一預設映射關係確定所述加權係數。
- 根據請求項49所述的方法,其中,所述根據所述當前塊的第一顏色分量的參考樣值,確定權重索引值,包括: 確定所述當前塊的最大權重索引值和最小權重索引值; 根據所述最大權重索引值和所述最小權重索引值對所述第一顏色分量的參考樣值進行修正處理,確定所述權重索引值。
- 根據請求項48所述的方法,其中,所述根據所述權重索引值,使用第一預設映射關係確定所述加權係數,包括: 所述第一預設映射關係是所述權重索引值與所述加權係數的數值映射查閱資料表。
- 根據請求項48所述的方法,其中,所述根據所述權重索引值,使用第一預設映射關係確定所述加權係數,包括: 確定在所述第一預設映射關係下所述權重索引值對應的第一取值; 將所述加權係數設置為等於所述第一取值。
- 根據請求項51所述的方法,其中,所述確定在所述第一預設映射關係下所述權重索引值對應的第一取值,包括: 確定第一因數; 根據所述權重索引值,使用第二預設映射關係確定第二取值; 計算所述第一因數與所述第二取值的第一乘積值; 將所述第一取值設置為等於所述第一乘積值在所述第一預設映射關係下對應的取值。
- 根據請求項52所述的方法,其中,所述第二預設映射關係為基於n的指數函數關係;其中,n的取值等於所述權重索引值。
- 根據請求項52所述的方法,其中,所述確定第一因數,包括: 所述第一因數為預設常數值。
- 根據請求項52所述的方法,其中,所述確定第一因數,包括: 根據所述當前塊的尺寸參數,確定所述第一因數的取值; 其中,所述當前塊的尺寸參數包括以下參數的至少之一:所述當前塊的寬度,所述當前塊的高度。
- 根據請求項48所述的方法,其中,所述根據所述當前塊的第一顏色分量的參考樣值,確定權重索引值,包括: 確定第二因數; 根據所述當前塊的第一顏色分量的參考樣值和所述第二因數,確定所述權重索引值。
- 根據請求項56所述的方法,其中,所述確定第二因數,包括: 所述第二因數是預設常數值。
- 根據請求項56所述的方法,其中,所述確定第二因數,包括: 根據所述當前塊的尺寸參數,確定所述第二因數的取值; 其中,所述當前塊的尺寸參數包括以下參數的至少之一:所述當前塊的寬度,所述當前塊的高度。
- 根據請求項56所述的方法,其中,所述根據所述當前塊的第一顏色分量的參考樣值和所述第二因數,確定所述權重索引值,包括: 根據所述第一顏色分量的參考樣值和所述第二因數,使用第三預設映射關係確定第三取值; 確定所述當前塊的最大權重索引值和最小權重索引值; 根據所述最大權重索引值和所述最小權重索引值對所述第三取值進行修正處理,確定所述權重索引值。
- 根據請求項59所述的方法,其中,所述根據所述第一顏色分量的參考樣值和所述第二因數,使用第三預設映射關係確定第三取值,包括: 確定至少一個移位元陣列; 根據所述第二因數,從所述至少一個移位元陣列中確定目標偏移量; 對所述第一顏色分量的參考樣值進行所述目標偏移量的右移運算,確定所述第三取值。
- 根據請求項56所述的方法,其中,所述根據所述權重索引值,使用第一預設映射關係確定所述加權係數,包括: 根據所述第二因數和所述權重索引值,確定第二乘積值; 確定所述第二乘積值在所述第一預設映射關係下對應的第四取值; 將所述加權係數設置為等於所述第四取值。
- 根據請求項61所述的方法,其中,所述確定所述第二乘積值在所述第一預設映射關係下對應的第四取值,包括: 確定第一因數; 根據所述第二乘積值,使用第二預設映射關係確定第五取值; 計算所述第一因數與所述第五取值的第三乘積值; 將所述第四取值設置為等於所述第三乘積值在所述第一預設映射關係下對應的取值。
- 根據請求項39所述的方法,其中,所述根據所述當前塊的第二顏色分量的參考均值、所述當前塊的第二顏色分量的參考樣值以及對應的所述加權係數,確定所述當前塊中第二顏色分量採樣點的預測值,包括: 確定所述第二顏色分量的參考樣值與對應的所述加權係數的加權值; 將所述當前塊中待預測像素的加權和值設置為等於N個所述加權值之和,將所述當前塊中待預測像素的係數和值設置為等於N個所述加權係數之和;其中,N表示所述第二顏色分量的參考樣值的數量,N是正整數; 根據所述加權和值和所述係數和值,使用第四預設映射關係確定第六取值; 對所述第二顏色分量的參考均值與所述第六取值進行加法計算,得到所述當前塊中待預測像素的第二顏色分量的預測值; 根據所述當前塊中待預測像素的第二顏色分量的預測值,確定所述當前塊中第二顏色分量採樣點的預測值。
- 根據請求項63所述的方法,其中,所述待預測像素的第二顏色分量的預測值包含所述當前塊中至少部分第二顏色分量採樣點的預測值。
- 根據請求項39所述的方法,其中,所述根據所述當前塊的第二顏色分量的參考值,確定所述當前塊的第二顏色分量的參考均值,包括: 對N個所述當前塊的第二顏色分量的參考值進行平均值計算,得到所述當前塊的第二顏色分量的參考均值。
- 根據請求項65所述的方法,其中,所述方法還包括: 根據所述當前塊的尺寸參數,確定塊種類索引值; 根據所述塊種類索引值,使用第五預設映射關係確定N的取值。
- 根據請求項66所述的方法,其中,所述第五預設映射關係表示所述塊種類索引值與N的數值映射查閱資料表。
- 根據請求項39所述的方法,其中,所述根據所述當前塊的第二顏色分量的參考值與所述當前塊的第二顏色分量的參考均值,確定所述當前塊的第二顏色分量的參考樣值,包括: 對所述當前塊的第二顏色分量的參考值與所述當前塊的第二顏色分量的參考均值進行減法計算,得到所述當前塊的第二顏色分量的參考樣值。
- 根據請求項63所述的方法,其中,所述根據所述加權和值和所述係數和值,使用第四預設映射關係確定第六取值,包括: 確定預設偏移量; 根據所述係數和值,使用第六預設映射關係確定第一數值;以及根據所述係數和值與所述第一數值,使用第七預設映射關係確定陣列索引值,並根據所述陣列索引值與所述預設偏移量,使用第八預設映射關係確定第二數值; 在所述陣列索引值是否等於零的情況下,根據所述第一數值確定第三數值;以及根據所述第三數值與所述預設偏移量,確定第一偏移量; 根據所述第二數值與所述加權和值確定第四乘積值,根據所述第三數值和所述預設偏移量確定預設加法值,對所述第四乘積值和所述預設加法值進行加法運算,得到目標和值; 對所述目標和值進行所述第一偏移量的右移運算,確定所述第六取值。
- 根據請求項69所述的方法,其中,所述根據所述係數和值,使用第六預設映射關係確定第一數值,包括: 將所述第一數值設置為等於所述係數和值的二進位表示時所需二進位符號的位元數減一。
- 根據請求項69所述的方法,其中,所述根據所述係數和值與所述第一數值,使用第七預設映射關係確定陣列索引值,包括: 將所述係數和值與所述第一數值作為預設函數關係的輸入,根據所述預設函數關係輸出所述陣列索引值。
- 根據請求項69所述的方法,其中,所述根據所述陣列索引值與所述預設偏移量,使用第八預設映射關係確定第二數值,包括: 根據所述陣列索引值,在陣列映射表中確定索引指示值; 根據所述索引指示值與所述預設偏移量,使用所述第八預設映射關係確定所述第二數值。
- 根據請求項69所述的方法,其中,所述在所述陣列索引值是否等於零的情況下,根據所述第一數值確定第三數值,包括: 若所述陣列索引值等於零,則將所述第三陣列設置為等於所述第一數值; 若所述陣列索引值不等於零,則將所述第三陣列設置為等於所述第一數值與一的和值。
- 根據請求項63所述的方法,其中,所述方法還包括: 對所述待預測像素的第二顏色分量的預測值進行修正操作,將修正後的預測值作為所述當前塊中待預測像素的第二顏色分量的預測值。
- 根據請求項63所述的方法,其中,所述根據所述當前塊中待預測像素的第二顏色分量的預測值,確定所述當前塊中第二顏色分量採樣點的預測值,包括: 對所述待預測像素的第二顏色分量的預測值進行濾波處理,確定所述當前塊中第二顏色分量採樣點的預測值。
- 根據請求項39至75任一項所述的方法,其中,所述根據所述當前塊中第二顏色分量採樣點的預測值,確定所述當前塊中第二顏色分量採樣點的預測差值,包括: 獲取所述當前塊中第二顏色分量採樣點的原始值; 根據所述當前塊中第二顏色分量採樣點的原始值和所述當前塊中第二顏色分量採樣點的預測值,確定所述當前塊中第二顏色分量採樣點的預測差值。
- 根據請求項76所述的方法,其中,所述方法還包括: 對所述當前塊中第二顏色分量採樣點的預測差值進行編碼,將所得到的編碼位元寫入碼流。
- 一種編碼裝置,包括第一確定單元、第一計算單元和第一預測單元;其中, 所述第一確定單元,配置為確定當前塊的第一顏色分量的參考值和所述當前塊的第二顏色分量的參考值;以及根據所述當前塊的第一顏色分量的參考值,確定加權係數; 所述第一計算單元,配置為根據所述當前塊的第二顏色分量的參考值,確定所述當前塊的第二顏色分量的參考均值;以及根據所述當前塊的第二顏色分量的參考值與所述當前塊的第二顏色分量的參考均值,確定所述當前塊的第二顏色分量的參考樣值; 所述第一預測單元,配置為根據所述當前塊的第二顏色分量的參考均值、所述當前塊的第二顏色分量的參考樣值以及對應的所述加權係數,確定所述當前塊中第二顏色分量採樣點的預測值; 所述第一確定單元,還配置為根據所述當前塊中第二顏色分量採樣點的預測值,確定所述當前塊中第二顏色分量採樣點的預測差值。
- 一種編碼設備,包括第一記憶體和第一處理器;其中, 所述第一記憶體,用於儲存能夠在所述第一處理器上運行的電腦程式; 所述第一處理器,用於在運行所述電腦程式時,執行如請求項39至77任一項所述的方法。
- 一種解碼裝置,包括第二確定單元、第二計算單元和第二預測單元;其中, 所述第二確定單元,配置為確定當前塊的第一顏色分量的參考值和所述當前塊的第二顏色分量的參考值;以及根據所述當前塊的第一顏色分量的參考值,確定加權係數; 所述第二計算單元,配置為根據所述當前塊的第二顏色分量的參考值,確定所述當前塊的第二顏色分量的參考均值;以及根據所述當前塊的第二顏色分量的參考值與所述當前塊的第二顏色分量的參考均值,確定所述當前塊的第二顏色分量的參考樣值; 所述第二預測單元,配置為根據所述當前塊的第二顏色分量的參考均值、所述當前塊的第二顏色分量的參考樣值以及對應的所述加權係數,確定所述當前塊中第二顏色分量採樣點的預測值; 所述第二確定單元,還配置為根據所述當前塊中第二顏色分量採樣點的預測值,確定所述當前塊中第二顏色分量採樣點的重建值。
- 一種解碼設備,包括第二記憶體和第二處理器;其中, 所述第二記憶體,用於儲存能夠在所述第二處理器上運行的電腦程式; 所述第二處理器,用於在運行所述電腦程式時,執行如請求項1至38任一項所述的方法。
- 一種電腦可讀儲存媒介,其中,所述電腦可讀儲存媒介儲存有電腦程式,所述電腦程式被執行時實現如請求項1至38任一項所述的方法、或者如請求項39至77任一項所述的方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2022/103963 WO2024007165A1 (zh) | 2022-07-05 | 2022-07-05 | 编解码方法、装置、编码设备、解码设备以及存储介质 |
WOPCT/CN2022/103963 | 2022-07-05 |
Publications (1)
Publication Number | Publication Date |
---|---|
TW202404358A true TW202404358A (zh) | 2024-01-16 |
Family
ID=89454711
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW112124424A TW202404358A (zh) | 2022-07-05 | 2023-06-29 | 編解碼方法、裝置、編碼設備、解碼設備以及儲存媒介 |
Country Status (2)
Country | Link |
---|---|
TW (1) | TW202404358A (zh) |
WO (1) | WO2024007165A1 (zh) |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA3135973A1 (en) * | 2019-04-23 | 2020-10-29 | Beijing Bytedance Network Technology Co., Ltd. | Methods for cross component dependency reduction |
CN113747176A (zh) * | 2020-05-29 | 2021-12-03 | Oppo广东移动通信有限公司 | 图像编码方法、图像解码方法及相关装置 |
US12069243B2 (en) * | 2020-06-11 | 2024-08-20 | Hyundai Motor Company | Video encoding and decoding using luma mapping chroma scaling |
-
2022
- 2022-07-05 WO PCT/CN2022/103963 patent/WO2024007165A1/zh unknown
-
2023
- 2023-06-29 TW TW112124424A patent/TW202404358A/zh unknown
Also Published As
Publication number | Publication date |
---|---|
WO2024007165A1 (zh) | 2024-01-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11843781B2 (en) | Encoding method, decoding method, and decoder | |
WO2021134635A1 (zh) | 变换方法、编码器、解码器以及存储介质 | |
JP2023510666A (ja) | 画像コンポーネント予測方法、エンコーダ、デコーダ及び記憶媒体 | |
TW201937927A (zh) | 使用雙重分類用於線性分量樣本預測的方法以及裝置 | |
WO2021258841A1 (zh) | 帧间预测方法、编码器、解码器以及计算机存储介质 | |
WO2022116119A1 (zh) | 一种帧间预测方法、编码器、解码器及存储介质 | |
CA3114816C (en) | Video image component prediction method and apparatus, and computer storage medium | |
WO2021134327A1 (zh) | 变换方法、编码器、解码器以及存储介质 | |
WO2023197191A1 (zh) | 编解码方法、装置、编码设备、解码设备以及存储介质 | |
WO2024007165A1 (zh) | 编解码方法、装置、编码设备、解码设备以及存储介质 | |
WO2022174469A1 (zh) | 一种光照补偿方法、编码器、解码器及存储介质 | |
CN113766233B (zh) | 图像预测方法、编码器、解码器以及存储介质 | |
CN113395520B (zh) | 解码预测方法、装置及计算机存储介质 | |
WO2021134303A1 (zh) | 变换方法、编码器、解码器以及存储介质 | |
WO2020258052A1 (zh) | 图像分量预测方法、装置及计算机存储介质 | |
WO2023197194A1 (zh) | 编解码方法、装置、编码设备、解码设备以及存储介质 | |
WO2023197189A1 (zh) | 编解码方法、装置、编码设备、解码设备以及存储介质 | |
WO2023197192A1 (zh) | 编解码方法、装置、编码设备、解码设备以及存储介质 | |
WO2023197193A1 (zh) | 编解码方法、装置、编码设备、解码设备以及存储介质 | |
WO2023141781A1 (zh) | 编解码方法、装置、编码设备、解码设备以及存储介质 | |
WO2024098263A1 (zh) | 编解码方法、码流、编码器、解码器以及存储介质 | |
WO2023184747A1 (zh) | 视频编解码方法、装置、设备、系统及存储介质 | |
WO2024007116A1 (zh) | 解码方法、编码方法、解码器以及编码器 | |
WO2023197179A1 (zh) | 解码方法、编码方法、解码器以及编码器 | |
WO2024192733A1 (zh) | 视频编解码方法、装置、设备、系统、及存储介质 |