WO2021004152A1 - 图像分量的预测方法、编码器、解码器以及存储介质 - Google Patents
图像分量的预测方法、编码器、解码器以及存储介质 Download PDFInfo
- Publication number
- WO2021004152A1 WO2021004152A1 PCT/CN2020/090644 CN2020090644W WO2021004152A1 WO 2021004152 A1 WO2021004152 A1 WO 2021004152A1 CN 2020090644 W CN2020090644 W CN 2020090644W WO 2021004152 A1 WO2021004152 A1 WO 2021004152A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- cclm
- current block
- parameter
- parameters
- target
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Ceased
Links
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/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
-
- 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/132—Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
-
- 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
-
- 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/17—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 an image region, e.g. an object
- H04N19/176—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 an image region, e.g. an object the region being a block, e.g. a macroblock
-
- 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/184—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 bits, e.g. of the compressed video stream
-
- 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/70—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
-
- 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
Definitions
- the embodiments of the present application relate to the field of image processing technologies, and in particular, to a prediction method, encoder, decoder, and storage medium of image components.
- H.265/High Efficiency Video Coding has been unable to meet the needs of the rapid development of video applications.
- JVET Joint Video Exploration Team
- Functional Video Coding VVC
- VTM VVC Reference Software Test Platform
- the cross-component Linear Model Prediction (CCLM) mode can be used to realize the prediction from the luminance value to the chrominance value or the chrominance value.
- the linear regression method can be used to correspond to the current block
- the embodiments of the present application provide an image component prediction method, an encoder, a decoder, and a storage medium, which greatly reduces the complexity of coding and decoding processing and improves the coding and decoding efficiency.
- an embodiment of the present application provides a method for predicting image components, which is applied to an encoder, and the method includes:
- the current block uses CCLM to determine the intra prediction value of the current block
- multiple sets of reference points of the current block are used to determine multiple corresponding sets of CCLM parameters;
- the CCLM parameters include a scale factor and an offset parameter;
- a target CCLM parameter from the multiple sets of CCLM parameters, and set a CCLM index value according to the target CCLM parameter and write it into the code stream; wherein the CCLM index value is used to indicate the use of the target CCLM parameter;
- an embodiment of the present application provides a method for predicting image components, which is applied to a decoder, and the method includes:
- the prediction mode parameter indicates to use CCLM to determine the intra prediction value of the current block
- the target CCLM parameter includes a scale factor and an offset parameter
- an embodiment of the present application provides an encoder, the encoder includes: a first determining part, a setting part,
- the first determining part is configured to use multiple sets of reference points of the current block to determine corresponding multiple sets of CCLM parameters when the current block uses CCLM to determine the intra prediction value of the current block; wherein, the CCLM
- the parameters include a scale factor and an offset parameter; and the target CCLM parameter is determined from the multiple sets of CCLM parameters;
- the setting part is configured to set a CCLM index value according to the target CCLM parameter and write it into the code stream; wherein the CCLM index value is used to indicate the use of the target CCLM parameter;
- the first determining part is further configured to determine the intra prediction value of the current block according to the target CCLM parameter.
- an embodiment of the present application provides an encoder.
- the encoder includes a first processor and a first memory storing executable instructions of the first processor. When the instructions are executed, the encoder When the first processor is executed, the method for predicting image components as described above is implemented.
- an embodiment of the present application provides a decoder, the decoder includes: an analysis part, a second determination part,
- the parsing part is configured to analyze the code stream to determine the prediction mode parameter of the current block; and when the prediction mode parameter indicates to use CCLM to determine the intra prediction value of the current block, analyze the code stream to determine The CCLM index value of the current block;
- the second determining part is configured to determine the target CCLM parameter of the current block according to the CCLM index value; wherein the target CCLM parameter includes a scale factor and an offset parameter; and determine according to the target CCLM parameter The intra prediction value of the current block.
- an embodiment of the present application provides a decoder.
- the decoder includes a second processor and a second memory storing executable instructions of the second processor. When the instructions are executed, When the second processor is executed, the image component prediction method described above is implemented.
- an embodiment of the present application provides a computer storage medium, the computer storage medium stores a computer program, and when the computer program is executed by the first processor and the second processor, the image component as described above is realized Forecasting method.
- the embodiments of the application provide a prediction method, an encoder, a decoder, and a storage medium for image components.
- the encoder uses multiple sets of reference points of the current block to determine Corresponding multiple sets of CCLM parameters; among them, the CCLM parameters include scale factors and offset parameters; determine the target CCLM parameters from the multiple sets of CCLM parameters, set the CCLM index value according to the target CCLM parameters and write the code stream; among them, the CCLM index value is used Instruct to use the target CCLM parameter; according to the target CCLM parameter, determine the intra prediction value of the current block.
- the decoder parses the code stream to determine the prediction mode parameters of the current block; when the prediction mode parameter indicates that the intra prediction value of the current block is determined using CCLM, it parses the code stream to determine the CCLM index value of the current block; according to the CCLM index value, the current block is determined The target CCLM parameter of the block; where the target CCLM parameter includes a scale factor and an offset parameter; the intra prediction value of the current block is determined according to the target CCLM parameter. It can be seen that, in the embodiment of the present application, when the encoder determines that the current block uses CCLM to determine the intra prediction value of the current block, it can determine the corresponding multiple sets of CCLM parameters based on multiple sets of reference points adjacent to the current block.
- the encoder can write the CCLM index value indicating the use of the target CCLM parameter into the code stream and transmit it to the decoding side, so that the decoder can analyze the code stream.
- the target CCLM parameter can be used to determine the intra prediction value of the current block. That is to say, the image component prediction method proposed in this application can write the target CCLM parameters of the multiple sets of CCLM parameters of the current block into the code stream for transmission, so that the codec can determine the current block according to the target CCLM parameters. Carrying out intra-frame prediction processing greatly reduces the complexity of coding and decoding processing and improves coding and decoding efficiency.
- Figure 1 is a schematic diagram of the structure of a video encoding system
- Figure 2 is a schematic diagram of the structure of a video decoding system
- Fig. 3 is a schematic diagram 1 of the implementation process of the method for predicting image components
- Figure 4 is a second schematic diagram of the implementation process of the image component prediction method
- Figure 5 is a third schematic diagram of the implementation process of the image component prediction method
- Figure 6 is a fourth schematic diagram of the implementation process of the image component prediction method
- FIG. 7 is a fifth schematic diagram of the implementation process of the prediction method of image components.
- Fig. 8 is a first schematic diagram of the position of the reference point of the current block
- Fig. 9 is a second schematic diagram of the position of the reference point of the current block.
- Figure 10 is a third schematic diagram of the position of the reference point of the current block
- Figure 11 is a schematic diagram of determining the position of the reference point of the INTRA_T_CCLM mode
- FIG. 12 is a sixth schematic diagram of the implementation process of the image component prediction method.
- FIG. 13 is a seventh schematic diagram of the implementation process of the image component prediction method
- Figure 14 is a schematic diagram eight of the implementation process of the method for predicting image components
- Figure 15 is a schematic diagram of the composition structure of a sending device
- Figure 16 is a schematic diagram of the composition structure of the target device
- Figure 17 is a schematic diagram of the composition structure of the communication system
- Figure 18 is a schematic diagram of the composition of the encoder
- Figure 19 is a second schematic diagram of the composition of the encoder
- Figure 20 is a schematic diagram of the structure of the decoder
- Figure 21 is a second schematic diagram of the structure of the decoder.
- VVC Universal Video Coding VVC
- ITU-T International Organization for Standardization
- ISO International Organization for Standardization
- IEC International Electrotechnical Commission
- VVC Universal Video Coding VVC
- Its purpose is to encode high-quality video with one or more of the characteristics of high resolution, high frame rate, high bit depth, high dynamic range, wide color gamut, and omnidirectional viewing angle, with the latest H.265
- JVET is responsible for the standardization project.
- Various intra-frame prediction modes and inter-frame prediction modes have been verified to achieve high compression efficiency when encoding high-quality videos, so work in VVC The draft was adopted.
- the CCLM mode is an intra-frame prediction mode, which instructs the use of a linear model to obtain the prediction of the chrominance component of the current block (that is, the current coding block in the encoder or the current block in the decoder), where the reconstruction of the current block
- the chrominance component is used as the input of the linear model, and the adjacent samples (ie reference points) of the chrominance component and luminance component of the current block are used to calculate the parameters of the linear model.
- the first image component, the second image component, and the third image component are generally used to characterize the coding block (CB); among them, the three image components are a luminance component and a blue chrominance component. And a red chrominance component, specifically, the luminance component is usually represented by the symbol Y, the blue chrominance component is usually represented by the symbol Cb or U, and the red chrominance component is usually represented by the symbol Cr or V; in this way, the video image can be in YCbCr format It can also be expressed in YUV format.
- the first image component may be a luminance component
- the second image component may be a blue chrominance component
- the third image component may be a red chrominance component
- CCLM realizes the prediction between the first image component to the second image component, the first image component to the third image component, and the second image component and the third image component.
- the CCLM method realizes the prediction from the luminance component to the chrominance component, in order to reduce the redundancy between the luminance component and the chrominance component and between the different chrominance components, in the next generation of video coding
- the standard uses the inter-component linear model prediction mode. For example, according to formula (1), the reconstructed luminance value of the same coding block is used to construct the chrominance prediction value:
- i, j represent the position coordinates of the sampling point in the coding block
- i represents the horizontal direction
- j represents the vertical direction
- Pred C [i,j] represents the position coordinate of the sampling point in the coding block [i,j].
- the predicted value of the two image components, Rec L [i,j] represents the reconstructed value of the first image component of the sampling point with the position coordinate [i,j] in the same coding block (downsampled)
- ⁇ is the scale factor of the linear model
- ⁇ is the offset parameter, which can be derived by minimizing the regression error between the adjacent reference value of the first image component and the adjacent reference value of the second image component, as follows:
- L(n) represents the down-sampled adjacent reference value of the first image component (for example, left and upper side)
- C(n) represents the adjacent reference value of the second image component (for example, left and upper side)
- N is the number of adjacent reference values of the second image component.
- the CCLM mode includes the method of predicting the chrominance component with the luminance component, that is, predicting the second image component with the first image component, or predicting the third image component with the first image component. In addition, it also includes the prediction between the two chrominance components, that is, the prediction method between the second image component and the third image component.
- the Cr component can be predicted from the Cb component.
- Cb component can also be predicted from Cr component.
- the prediction between the chrominance components in CCLM can be applied to the residual domain.
- the Cb residual can be used to predict the Cr residual.
- the final prediction value of the Cr component is obtained by adding a weighted reconstruction Cb residual to the traditional intra prediction value of the Cr component, as shown in formula (3):
- the calculation method of the prediction model parameters from the luminance component to the chrominance component is the same, the only difference is that a regression cost related to the default ⁇ value in the error function is added, so that the obtained scale factor ⁇ can be biased to the default of -0.5
- the value, specifically, the scale factor ⁇ can be calculated by formula (4).
- Cb(n) represents the adjacent reference Cb value of the current coding block
- Cr(n) represents the adjacent reference Cr value of the current coding block
- the encoder may determine the corresponding multiple sets of CCLM based on multiple sets of reference points adjacent to the current block. Parameters, and determine the optimal target CCLM parameter from multiple sets of CCLM parameters.
- the encoder can write the CCLM index value indicating the use of the target CCLM parameter into the code stream and transmit it to the decoding side, so that the decoder can analyze the code stream After obtaining the CCLM index value and determining the target CCLM parameter indicated by the CCLM index value, the target CCLM parameter can be used to determine the intra prediction value of the current block.
- the image component prediction method proposed in this application can write the target CCLM parameters of the multiple sets of CCLM parameters of the current block into the code stream for transmission, so that the codec can determine the current block according to the target CCLM parameters.
- Carrying out intra-frame prediction processing greatly reduces the complexity of coding and decoding processing and improves coding and decoding efficiency.
- FIG. 1 is a schematic structural diagram of a video encoding system.
- the video encoding system 100 includes a transform and quantization module 101, an intra-frame estimation module 102, an intra-frame prediction module 103, a motion compensation module 104, and a motion estimation module 105, Inverse transform and inverse quantization module 106, filter control analysis module 107, deblocking filter and sample adaptive indentation (Sample Adaptive Offset, SAO) filter module 108, header information coding and context-based adaptive binary arithmetic coding (Context- Based on Adaptive Binary Arithmatic Coding, CABAC) encoding module 109 and decoded image buffer module 110;
- Figure 2 is a schematic diagram of the structure of the video decoding system, as shown in Figure 2, the video decoding system 200 includes header information decoding and CABAC decoding module 201 , Inverse transform and inverse quantization module 202, intra-frame prediction module 203, motion compensation module 204, deblocking filter and SAO filter module 205, de
- the video image passes through the transformation and quantization module 101, the intra-frame estimation module 102, the intra-frame prediction module 103, the motion compensation module 104, the motion estimation module 105, the deblocking filtering and SAO filtering module 108, the header information encoding and CABAC in the video encoding system 100
- the module 109 and other parts it outputs the code stream of the video image;
- the code stream is input into the video decoding system 200, and passes through the header information decoding and CABAC decoding module 201 in the video decoding system 200, the inverse transform and inverse quantization module 202, and the intraframe
- the prediction module 203 and the motion compensation module 204 perform partial processing, and finally restore the original video image.
- the image component prediction method proposed in this application can affect the intra-frame prediction process in the encoding and decoding process.
- the image component prediction method proposed in this application can be in the structure of the video encoding system shown in FIG. 1
- the position application of the intra-frame prediction module 103 can also be applied in the position of the intra-frame prediction module 203 in the structure of the video coding system shown in FIG. 2.
- the first image component may be the brightness component Y
- the component may be the red chrominance component Cr
- the third image component may be the blue chrominance component Cb, which is not specifically limited in the embodiment of the present application.
- FIG. 3 is a schematic diagram of the implementation process of the method for predicting image components.
- the encoder predicts image components.
- the method can include the following steps:
- Step 101 When the current block uses CCLM to determine the intra prediction value of the current block, multiple sets of reference points of the current block are used to determine multiple corresponding sets of CCLM parameters; wherein, the CCLM parameters include a scale factor and a bias Shift parameters.
- the encoder can use multiple sets of reference points of the current block to determine multiple corresponding sets of CCLM parameters. Specifically, a set of reference points corresponds to a set of CCLM parameters.
- each set of CCLM parameters includes a scale factor and an offset parameter determined by a corresponding set of reference points.
- the video image may be divided into multiple image blocks, where the current block is the image block to be encoded, and may also be called a coding block (CB).
- each encoding block may include a first image component, a second image component, and a third image component. Accordingly, the current block is the first image component, the second image component, or the third image component currently to be performed in the video image.
- the predicted coding block is the first image component, the second image component, or the third image component currently to be performed in the video image.
- the current block performs the first image component prediction
- the first image component is a luminance component, that is, the image component to be predicted is a luminance component
- the current block can also be called a luminance block
- the current block can also be called a chrominance block.
- the multiple sets of reference points of the current block may include pixel sampling points adjacent to the current block, wherein each set of reference points in the multiple sets of reference points may include One or more adjacent pixel sampling points.
- the encoder can use the pixel sampling points adjacent to the current block to determine the CCLM parameters, that is, use the current block Multiple sets of reference points of the block are used to determine the corresponding multiple sets of CCLM parameters.
- the encoder when the encoder uses multiple sets of reference points of the current block to determine the corresponding multiple sets of CCLM parameters, it can use one set of the multiple sets of reference points to calculate the A set of CCLM parameters corresponding to a set of reference points can then be traversed for each set of reference points in the multiple sets of reference points, so that multiple sets of CCLM parameters corresponding to the multiple sets of reference points can be determined.
- each of the multiple sets of CCLM parameters may include a scale factor and an offset parameter.
- the scale factor may be ⁇ in the above formula (1)
- the offset parameter may be ⁇ in the above formula (1). That is to say, for a set of reference points of the current block, the encoder can determine the corresponding set of CCLM parameters including the scale factor ⁇ and the offset parameter ⁇ . Accordingly, based on the multiple sets of reference points of the current block, it can finally Multiple sets of CCLM parameters including scale factor ⁇ and offset parameter ⁇ are determined.
- the encoder may first determine the prediction mode parameters of the current block.
- the prediction mode parameter indicates the coding mode of the current block and parameters related to the mode, that is, the value of the prediction mode parameter may indicate the intra prediction mode used by the current block.
- a rate-distortion optimization method can be used to determine the prediction mode parameters of the current block.
- the encoding mode may include two categories: traditional intra prediction mode and non-traditional intra prediction mode.
- traditional intra prediction modes may include direct current (DC) mode, planar (PLANAR) mode, and angular mode, etc.
- non-traditional intra prediction modes may include matrix-based intra prediction (Matrix-based Intra Prediction (MIP) mode, CCLM mode, Intra Block Copy (IBC) mode, PLT (Palette) mode, etc.
- MIP matrix-based intra prediction
- CCLM mode CCLM mode
- IBC Intra Block Copy
- PLT PLT
- the encoder can determine the specific encoding mode of the traditional intra prediction mode or the non-traditional intra prediction mode by setting the prediction mode parameter.
- the encoder may first determine the image components to be predicted for the current block; then, based on the parameters of the current block, use multiple prediction modes to respectively predict the image The components are predicted and coded, and the rate-distortion cost result corresponding to each prediction mode under multiple prediction modes is calculated; finally, the minimum rate-distortion cost result can be selected from the calculated multiple rate-distortion cost results, and the minimum rate-distortion cost can be selected The prediction mode corresponding to the result is determined as the prediction mode parameter of the current block.
- multiple prediction modes can be used for the current block to respectively encode the image components to be predicted.
- multiple prediction modes usually include traditional intra prediction modes and non-traditional intra prediction modes.
- the encoder uses multiple prediction modes to respectively encode the current block, it can obtain the rate-distortion cost result corresponding to each prediction mode; then, from the obtained multiple rate-distortion modes The minimum rate-distortion cost result is selected in the cost result, and the prediction mode corresponding to the minimum rate-distortion cost result is determined as the prediction mode parameter of the current block; in this way, the determined prediction mode can be used to encode the current block in the end. In this prediction mode, the prediction residual can be made small and the coding efficiency can be improved.
- the encoder after determining the prediction mode parameter of the current block, the encoder can write the prediction mode parameter into the code stream, so that the decoder can Determine the prediction mode parameters of the current block by analyzing the code stream.
- Step 102 Determine the target CCLM parameter from the multiple sets of CCLM parameters, set the CCLM index value according to the target CCLM parameter and write the code stream; where the CCLM index value is used to indicate the use of the target CCLM parameter.
- the encoder after the encoder uses multiple sets of reference points of the current block to determine the corresponding multiple sets of CCLM parameters, it can continue to determine the target CCLM parameters from the multiple sets of CCLM parameters, and then can set the CCLM according to the target CCLM parameters Index value and write the code stream.
- the CCLM index value is used to indicate that the target CCLM parameter is used to determine the intra prediction value of the current block.
- the encoder After the encoder determines the target CCLM parameter from multiple sets of CCLM parameters, it needs to set the index value corresponding to the target CCLM parameter according to the target CCLM parameter, that is, set the CCLM index value, and then set the CCLM index value It is written into the code stream and transmitted to the decoding side, so that the decoder can determine the intra prediction value of the current block by using the target CCLM parameter by analyzing the CCLM index value obtained by analyzing the code stream.
- the encoder when it determines the target CCLM parameter from multiple sets of CCLM parameters, it can use the rate-distortion optimization (Rate Distortion Optimization, RDO) method to select the target from multiple sets of CCLM parameters.
- RDO Rate Distortion Optimization
- a set of CCLM parameters corresponding to the optimal value of the cost function, and the set of CCLM parameters is determined as the target CCLM parameter.
- the encoder may use multiple sets of CCLM parameters to perform predictive encoding on the predicted image components respectively based on the parameters of the current block, and calculate the rate-distortion cost result corresponding to each set of CCLM parameters in the multiple sets of CCLM parameters ;
- the minimum rate-distortion cost result can be selected from the calculated multiple rate-distortion cost results, and a set of CCLM parameters corresponding to the minimum rate-distortion cost result can be determined as the target CCLM parameters of the current block.
- the CCLM index value when the encoder sets the CCLM index value according to the target CCLM parameter and writes the code stream, the CCLM index value may first be set to the index number corresponding to the target CCLM parameter in the multiple sets of CCLM parameters , And then write the CCLM index value into the code stream. That is to say, in this application, each set of CCLM parameters in the multiple sets of CCLM parameters has a corresponding index number, and the encoder can determine the target CCLM parameters used by the current block from the multiple sets of CCLM parameters. Use the index number corresponding to the target CCLM parameter to set the CCLM index value.
- the encoder can first determine the position information of each group of reference points in the multiple groups of reference points; then, it can determine the position information of the multiple groups of CCLM parameters according to the position information of each group of reference points.
- the index number of each group of CCLM parameters can be determined.
- the position information corresponding to each group of reference points may include the starting position and the step length.
- the encoder can use the width W and height H of the current block to calculate the position information of each group of reference points.
- the encoder can calculate the obtained starting position ⁇ and step length L according to the following formulas:
- the encoder when the encoder determines the index number of each group of CCLM parameters in the multiple sets of CCLM parameters according to the position information of each group of reference points, it may firstly, according to the position information of each group of reference points, Determine the multiple distance parameters between multiple groups of reference points and the current block; then set the index number of each group of CCLM parameters in the multiple groups of CCLM parameters in the order of the distance parameters from small to large.
- the encoder can first calculate the multiple distance parameters between the multiple reference points and the current block according to the position information of each reference point in the multiple reference points, that is, multiple reference points. Any set of reference points in the points corresponds to a distance parameter. Then, the encoder can sort multiple distance parameters, for example, sort multiple distance parameters in ascending order to obtain the sorted distance parameters. Accordingly, the encoder can sort the distance parameters according to the sorted distance parameters.
- the index number is set for each group of CCLM parameters in multiple groups of CCLM parameters.
- the encoder may sequentially set the index number of each set of CCLM parameters in the multiple sets of CCLM parameters according to the sorted distance parameters.
- the encoder can write the CCLM index value into the data unit containing the current block coded data in the code stream to facilitate subsequent decoding Analyze processing on the device side.
- Step 103 Determine the intra prediction value of the current block according to the target CCLM parameter.
- the encoder can determine the intra prediction value of the current block according to the target CCLM parameter.
- the encoder determines the target CCLM parameters used by the current block, it can use the target CCLM parameters to further determine the intra prediction value of the current block, so as to calculate the current block and intra prediction The predicted difference between the values.
- the target CCLM parameter includes the scale factor and offset parameter used in intra prediction of the current block. Therefore, when the encoder determines the intra prediction value of the current block according to the target CCLM parameter, The above formula (1) can be used to calculate the position in the coding block by using the reconstructed value Rec L [i, j] of the first image component of the sampling point with the position coordinate [i, j] in the coding block (down-sampled) The predicted value Pred C [i,j] of the second image component of the sampling point with coordinates [i,j].
- the encoder can continue to calculate the difference between the actual pixel value of the current block and the intra prediction value, and calculate the difference The value is used as the predicted difference to facilitate subsequent transformation processing on the predicted difference.
- the encoder when the encoder determines the intra prediction value of the current block according to the target CCLM parameter, it can use a linear model based on the target CCLM parameter and the reconstruction value of the first image component of the current block. Calculate the predicted value of the second image component of the current block.
- the first image component is a luminance component
- the second image component is a chrominance component
- Figure 4 is a schematic diagram of the second implementation process of the image component prediction method.
- the encoder uses multiple sets of reference points of the current block to determine the corresponding multiple sets of CCLM parameters, that is, before step 101,
- the method for the encoder to predict image components may further include the following steps:
- Step 104 Determine the CCLM mode index parameter; where the CCLM mode index parameter is used to indicate the CCLM mode used by the current block, and the CCLM mode is used to indicate the calculation and derivation method of using CCLM to determine the intra prediction value.
- Step 105 Write the CCLM mode index parameter into the code stream.
- the encoder can first determine the CCLM mode index parameter of the current block, and then can use the CCLM mode index parameter to determine the CCLM mode used by the current block, so that the CCLM can be used to determine the frame of the current block.
- the calculation and derivation method of the predicted value can be used to determine the frame of the current block.
- the encoder needs to use different index parameters to calibrate and calibrate different prediction modes in the CCLM mode. distinguish. In other words, different CCLM modes correspond to different CCLM mode index parameters.
- the encoder may determine the calculation and derivation method of the intra prediction value of the current block according to the CCLM mode, and at the same time, may determine the CCLM mode index parameter corresponding to the CCLM mode.
- the encoder can set the CCLM mode index parameter to indicate the use of the current block according to the value of the CCLM mode index parameter, and write the code stream and transmit it to the decoding side to facilitate subsequent use in the decoder.
- the CCLM mode index parameter obtained by parsing the code stream enables the decoder to determine the CCLM mode indicated by the CCLM mode index parameter.
- the embodiment of the present application proposes a method for predicting image components.
- the encoder uses multiple sets of reference points of the current block to determine multiple sets of corresponding CCLM parameters; wherein, CCLM parameters include scale factors and offset parameters; determine the target CCLM parameters from multiple sets of CCLM parameters, set the CCLM index value according to the target CCLM parameters and write the code stream; among them, the CCLM index value is used to indicate the use of the target CCLM parameter; according to the target The CCLM parameter determines the intra prediction value of the current block.
- the encoder when the encoder determines that the current block uses CCLM to determine the intra prediction value of the current block, it can determine the corresponding multiple sets of CCLM parameters based on multiple sets of reference points adjacent to the current block. , And determine the optimal target CCLM parameter from multiple sets of CCLM parameters.
- the encoder can write the CCLM index value indicating the use of the target CCLM parameter into the code stream and transmit it to the decoding side, so that the decoder can analyze the code stream. After obtaining the CCLM index value and determining the target CCLM parameter indicated by the CCLM index value, the target CCLM parameter can be used to determine the intra prediction value of the current block.
- the image component prediction method proposed in this application can write the target CCLM parameters of the multiple sets of CCLM parameters of the current block into the code stream for transmission, so that the codec can determine the current block according to the target CCLM parameters.
- Performing intra-frame prediction processing greatly reduces the complexity of coding and decoding processing and improves coding and decoding efficiency.
- FIG. 5 is a schematic diagram of the implementation process of the method for predicting image components, as shown in FIG. 5.
- the method for the decoder to predict image components may include the following steps:
- Step 201 Parse the code stream to determine the prediction mode parameters of the current block.
- the decoder can parse the code stream to determine the prediction mode parameter of the current block. Specifically, the decoder may further determine the intra prediction mode used by the current block according to the value of the prediction mode parameter, that is, in this application, the prediction mode parameter may indicate the coding mode of the current block and parameters related to the mode.
- the encoding mode may include two categories: traditional intra prediction mode and non-traditional intra prediction mode.
- traditional intra prediction modes may include DC mode, PLANAR mode, and angle mode
- non-traditional intra prediction modes may include MIP mode, CCLM mode, IBC mode, and PLT mode.
- the decoder can determine the specific coding mode of the traditional intra prediction mode or the non-traditional intra prediction mode through the prediction mode parameter.
- the encoder when determining the prediction mode parameters of the current block, may first determine the image components to be predicted for the current block; then, based on the parameters of the current block, use multiple prediction modes Perform predictive coding on the predicted image components separately, calculate the rate-distortion cost result corresponding to each prediction mode under multiple prediction modes; finally, select the minimum rate-distortion cost result from the multiple calculated rate-distortion cost results, and add The prediction mode corresponding to the minimum rate-distortion cost result is determined as the prediction mode parameter of the current block. That is to say, on the encoder side, multiple prediction modes can be used for the current block to respectively encode the image components to be predicted.
- multiple prediction modes usually include traditional intra prediction modes and non-traditional intra prediction modes.
- the encoder after the encoder sets the prediction mode corresponding to the minimum rate-distortion cost result as the prediction mode parameter of the current block, it can write the prediction mode parameter into the code stream and transmit it to the decoding side. , So that the decoder obtains the prediction mode parameters of the current block by parsing the code stream, the decoder can then use the determined prediction mode to decode the current block, and in this prediction mode, the prediction residual can be made small and can improve Decoding efficiency.
- Step 202 When the prediction mode parameter indicates to use CCLM to determine the intra prediction value of the current block, analyze the code stream to determine the CCLM index value of the current block.
- Step 203 Determine the target CCLM parameter of the current block according to the CCLM index value; where the target CCLM parameter includes a scale factor and an offset parameter.
- the decoder after the decoder parses the code stream and determines the prediction mode parameters of the current block, if the prediction mode parameters indicate to use CCLM to determine the intra prediction value of the current block, the decoder can continue to parse the code stream and determine The CCLM index value of the current block can then continue to determine the target CCLM parameter of the current block according to the CCLM index value.
- the CCLM index value is used to instruct the current block to use the target CCLM parameter to determine the intra prediction value of the current block.
- the target CCLM parameters include scale factors and offset parameters.
- the scale factor may be ⁇ in the above formula (1)
- the offset parameter may be ⁇ in the above formula (1)
- the decoder when the decoder determines the target CCLM parameter of the current block according to the CCLM index value, it may first determine the target reference point of the current block according to the CCLM index value; and then determine the target reference point according to the target reference point.
- the target CCLM parameter of the current block when the decoder determines the target CCLM parameter of the current block according to the CCLM index value, it may first determine the target reference point of the current block according to the CCLM index value; and then determine the target reference point according to the target reference point.
- the target CCLM parameter of the current block when the decoder determines the target CCLM parameter of the current block according to the CCLM index value, it may first determine the target reference point of the current block according to the CCLM index value; and then determine the target reference point according to the target reference point.
- the target CCLM parameter of the current block when the decoder determines the target CCLM parameter of the current block according to the CCLM index value, it may first determine the
- the target reference point may be one or more pixel sampling points adjacent to the current block. Specifically, there are multiple sets of reference points in the current block, and the target reference point may be a set of reference points in the multiple sets of reference points.
- the decoder when the decoder determines the target reference point of the current block according to the CCLM index value, it can determine the target reference point from the multiple sets of reference points of the current block according to the CCLM index value.
- the multiple sets of reference points of the current block may include pixel sampling points adjacent to the current block. Accordingly, each set of reference points in the multiple sets of reference points of the current block may include One or more pixel sampling points at preset positions adjacent to the current block.
- the decoder when the decoder determines the target reference point from the multiple sets of reference points of the current block according to the CCLM index value, it may first determine the position information of each set of reference points in the multiple sets of reference points; According to the position information of each group of reference points, determine the multiple distance parameters between the multiple groups of reference points and the current block; then you can set the distance parameters of each group of reference points in the order of the distance parameters from small to large. Position index number; finally, from multiple groups of reference points, a group of reference points with the same position index number as the index number indicated by the CCLM index value can be selected as the target reference point.
- the decoder can first calculate the position information of each set of reference points in the multiple sets of reference points, that is, any set of reference points in the multiple sets of reference points corresponds to one position information, and then according to The position information of each set of reference points in the multiple sets of reference points is calculated separately to obtain multiple distance parameters between the multiple sets of reference points and the current block, that is, any set of reference points in the multiple sets of reference points corresponds to a distance parameter . Then, the decoder can sort the multiple distance parameters. For example, the multiple distance parameters are sorted in ascending order to obtain the sorted distance parameters. Accordingly, the decoder can sort the distance parameters according to the sorted distance parameters. Set the position index number for each group of reference points in multiple groups. Specifically, based on the correspondence between the multiple sets of reference points and the multiple sets of distance parameters, the decoder may sequentially set the position index number of each set of reference points in the multiple sets of reference points according to the sorted distance parameters.
- the encoder in the encoding end is based on the correspondence between multiple sets of reference points, multiple sets of CCLM parameters, and multiple sets of distance parameters
- multiple sets of CCLM are set in sequence according to the sorted distance parameters.
- the index number of each group of CCLM parameters in the parameters, and at the decoding end, the decoder is based on the correspondence between multiple sets of reference points and multiple sets of distance parameters, and sets each of the multiple sets of reference points in turn according to the sorted distance parameters.
- the position index number of the group reference point Therefore, there is a mapping relationship between the index number of the CCLM parameter of a group of reference points and the position index number of the group of reference points.
- the decoder can select the target reference point from multiple sets of reference points according to the index sequence number indicated by the CCLM index value.
- the decoder may determine a group of reference points whose position index number is 5 among the multiple groups of reference points It is the target reference point.
- the decoder may first use multiple sets of reference points of the current block to determine the corresponding multiple sets of CCLM parameters; Among the multiple sets of CCLM parameters, a set of CCLM parameters indicated by the CCLM index value is used as the target CCLM parameter.
- the multiple sets of reference points of the current block may include pixel sampling points adjacent to the current block. Accordingly, each set of reference points in the multiple sets of reference points of the current block may include a reference point corresponding to the current block. One or more adjacent pixel sampling points at preset positions.
- the decoder when it uses a set of CCLM parameters indicated by the CCLM index value among multiple sets of CCLM parameters as the target CCLM parameters, it may first determine the position information of each set of reference points in the multiple sets of reference points ; Then, according to the position information of each group of reference points, determine the multiple distance parameters between multiple groups of reference points and the current block; and then set each group of CCLM parameters in multiple groups of CCLM parameters in the order of the distance parameters from small to large The index number of the parameter; finally, a group of CCLM parameters whose index number in the CCLM parameter is the same as the index number indicated by the CCLM index value can be used as the target CCLM parameter.
- the decoder can first calculate the position information of each set of reference points in the multiple sets of reference points, that is, any set of reference points in the multiple sets of reference points corresponds to one position information, and then according to The position information of each set of reference points in the multiple sets of reference points is calculated separately to obtain multiple distance parameters between the multiple sets of reference points and the current block, that is, any set of reference points in the multiple sets of reference points corresponds to a distance parameter . Then, the decoder can sort the multiple distance parameters. For example, the multiple distance parameters are sorted in ascending order to obtain the sorted distance parameters. Accordingly, the decoder can sort the distance parameters according to the sorted distance parameters.
- the index number is set for each group of CCLM parameters in multiple groups of CCLM parameters. Specifically, based on the correspondence between multiple sets of reference points, multiple sets of CCLM parameters, and multiple sets of distance parameters, the decoder may sequentially set the index number of each set of CCLM parameters in the multiple sets of CCLM parameters according to the sorted distance parameters.
- the encoder in the encoding end is based on the correspondence between multiple sets of reference points, multiple sets of CCLM parameters, and multiple sets of distance parameters, multiple sets of CCLM are set in sequence according to the sorted distance parameters.
- the index number of each group of CCLM parameters in the parameters, and at the decoding end, the decoder is also based on the correspondence between multiple sets of reference points, multiple sets of CCLM parameters, and multiple sets of distance parameters, and sets multiple groups in sequence according to the sorted distance parameters.
- the index number of each group of CCLM parameters in the CCLM parameters Therefore, after analyzing and obtaining the CCLM index value, the decoder selects a corresponding set of CCLM parameters from multiple sets of CCLM parameters as the target CCLM parameters according to the index number indicated by the CCLM index value.
- the decoder may determine a set of reference points with index number 3 in the multiple sets of CCLM parameters as Target reference point.
- Step 204 Determine the intra prediction value of the current block according to the target CCLM parameter.
- the decoder after the decoder determines the target CCLM parameter of the current block according to the CCLM index value, it can further determine the intra prediction value of the current block according to the target CCLM parameter.
- the decoder determines the target CCLM parameters used by the current block, it can use the target CCLM parameters to further determine the intra prediction value of the current block, so as to calculate the current block and intra prediction The predicted difference between the values.
- the target CCLM parameter includes the scale factor and offset parameter used in intra prediction of the current block. Therefore, when the decoder determines the intra prediction value of the current block according to the target CCLM parameter,
- the above formula (1) can be used to calculate the position in the coding block by using the reconstructed value Rec L [i, j] of the first image component of the sampling point with the position coordinate [i, j] in the coding block (down-sampled) The predicted value Pred C [i,j] of the second image component of the sampling point with coordinates [i,j].
- the decoder determines the intra-frame prediction value of the current block, it can continue to calculate the difference between the real pixel value of the current block and the intra-frame prediction value, and calculate the difference The value is used as the predicted difference to facilitate subsequent transformation processing on the predicted difference.
- the decoder when the decoder determines the intra prediction value of the current block according to the target CCLM parameter, it can use the linear model, according to the target CCLM parameter and the reconstruction value of the first image component of the current block. Calculate the predicted value of the second image component of the current block.
- the first image component is a luminance component
- the second image component is a chrominance component
- Figure 6 is a fourth schematic diagram of the implementation process of the image component prediction method. As shown in Figure 6, in this application, after the decoder parses the code stream and determines the prediction mode parameters of the current block, that is, after step 101, the decoder predicts the image
- the component method can also include the following steps:
- Step 205 When the prediction mode parameter indicates to use CCLM to determine the intra prediction value of the current block, parse the code stream to determine the CCLM mode index parameter of the current block; where the CCLM mode index parameter is used to indicate the CCLM mode used by the current block, CCLM The mode is used to indicate the calculation and derivation method of using CCLM to determine the intra prediction value.
- the decoder can continue to analyze the code stream to determine the CCLM mode index parameter of the current block.
- the CCLM mode index parameter is used to indicate the CCLM mode used by the current block
- the CCLM mode is used to indicate the calculation and derivation method of using CCLM to determine the intra prediction value.
- the decoder after the decoder parses the code stream, it can first determine the CCLM mode index parameter of the current block, and then can use the CCLM mode index parameter to determine the CCLM mode used by the current block, so that the use of CCLM can be obtained. Determine the calculation and derivation method of the intra prediction value of the current block.
- the encoder needs to use different index parameters to calibrate and calibrate different prediction modes in the CCLM mode. distinguish. In other words, different CCLM modes correspond to different CCLM mode index parameters.
- the decoder may determine the calculation and derivation method of the intra prediction value of the current block according to the CCLM mode indicated by the CCLM mode index parameter.
- the embodiment of the application proposes a method for predicting image components.
- the decoder parses the code stream to determine the prediction mode parameter of the current block; when the prediction mode parameter indicates that the intra prediction value of the current block is determined using CCLM, the code stream is analyzed to determine The CCLM index value of the current block; the target CCLM parameter of the current block is determined according to the CCLM index value; the target CCLM parameter includes a scale factor and an offset parameter; the intra prediction value of the current block is determined according to the target CCLM parameter.
- the encoder when the encoder determines that the current block uses CCLM to determine the intra prediction value of the current block, it can determine the corresponding multiple sets of CCLM parameters based on multiple sets of reference points adjacent to the current block. , And determine the optimal target CCLM parameter from multiple sets of CCLM parameters.
- the encoder can write the CCLM index value indicating the use of the target CCLM parameter into the code stream and transmit it to the decoding side, so that the decoder can analyze the code stream. After obtaining the CCLM index value and determining the target CCLM parameter indicated by the CCLM index value, the target CCLM parameter can be used to determine the intra prediction value of the current block.
- the image component prediction method proposed in this application can write the target CCLM parameters of the multiple sets of CCLM parameters of the current block into the code stream for transmission, so that the codec can determine the current block according to the target CCLM parameters.
- Carrying out intra-frame prediction processing greatly reduces the complexity of coding and decoding processing and improves coding and decoding efficiency.
- Fig. 7 is a schematic diagram of the implementation process of the method for predicting image components, as shown in Fig. 7
- the method for the encoder to predict image components may include the following steps:
- Step 301 When the current block uses CCLM to determine the intra prediction value, multiple sets of reference points of the current block are used to calculate multiple sets of CCLM parameters.
- Step 302 Establish a CCLM parameter list according to multiple sets of CCLM parameters.
- Step 303 Select the target CCLM parameter from the CCLM parameter list.
- Step 304 Set a CCLM index value according to the target CCLM parameter and write the code stream; where the CCLM index value is used to indicate the use of the target CCLM parameter.
- the encoder divides the picture in the input video into one or more CTUs, that is, divides the picture into tiles, and optionally further divides the tiles into one or more bricks, where the tiles and the bricks
- Each of the blocks contains one or more complete and/or partial CTUs, forming one or more slices, where a slice can include one or more blocks in the raster order of the blocks in the picture, or cover the picture
- One or more tiles in the rectangular area in may also form one or more sub-pictures, where the sub-pictures include one or more slices, tiles or bricks.
- the encoder may continue to iteratively use quadtree splitting, binary splitting, and ternary splitting on the divided CTU, and further divide the CTU into smaller coding units (CU).
- the motion compensation unit and the motion estimation unit can be used to obtain the inter current block of the CU.
- the intra prediction unit is used to determine the intra prediction mode to be used to encode the video coding block, and various intra prediction modes including the MIP mode can be used to obtain the intra prediction block of the CU.
- the rate-distortion optimized motion estimation method may be called by the motion compensation unit and the motion estimation unit to obtain the inter current block
- the rate-distortion optimized mode determination method may be called by the intra prediction unit to obtain the intra prediction block.
- the intra prediction unit 103 determines whether the CCLM mode (including the intra prediction mode whose mode index is equal to INTRA_LT_CCLM, INTRA_L_CCLM, and INTRA_T_CCLM, respectively) is used to obtain an intra prediction block.
- the encoder may select the current block from the inter current block and the intra prediction block, and transmit the current block, and at the same time, may also transmit the mode parameter of the corresponding mode of the selected current block.
- the current block uses CCLM to determine the intra prediction value
- multiple sets of reference points of the current block may be used to calculate multiple sets of CCLM parameters.
- the multiple sets of reference points include pixel sampling points adjacent to the current block.
- the CCLM mode parameters used when obtaining the intra prediction block can be transmitted to the coding unit, where if the flexible CCLM reference is enabled,
- the CCLM mode parameters include the CCLM mode index parameter and the CCLM index value.
- Fig. 8 is a schematic diagram of the position of the reference point of the current block
- Fig. 9 is a schematic diagram of the position of the reference point of the current block
- Fig. 10 is a schematic diagram of the location of the reference point of the current block
- An example of obtaining the position of the reference point of the current block in the INTRA_LT_CCLM mode, INTRA_L_CCLM mode and INTRA_T_CCLM mode is shown, where the reference point position is marked by a black dot.
- Blocks 3101, 3201, and 3301 include the reference point of the luminance component of the current block
- blocks 3102, 3202, and 3302 include the reference point of the first chrominance component (such as Cb or U component) of the current block
- blocks 3103, 3203, and 3303 include the current Reference point for the second chrominance component (e.g. Cr or V component) of the block.
- the encoder can use the width W and height H of the block (marked as W(W') and H(H') in FIGS. 2A to 2C) and two parameters (ie The starting position s and the step size ⁇ ) determine the position of the reference point.
- Figure 11 is a schematic diagram of determining the position of the reference point of the INTRA_T_CCLM mode.
- L is equal to 16
- N is equal to 8
- the number of reference points is equal to 4
- the encoder obtains reference points from sample positions 2, 6, 10, and 14 to form a subset of reference points.
- the CCLM parameters obtained by the encoder using the obtained reference points may include a scale factor and an offset parameter, that is, the scale factor ⁇ and the offset adoption number ⁇ in the above formula (1) .
- the encoder can obtain one or more different values of the CCLM parameters ( ⁇ and ⁇ ) by changing the position of the reference point, that is, the encoder can use multiple sets of reference points of the current block. Determine the corresponding multiple sets of CCLM parameters.
- the encoder can select the target CCLM parameters from the multiple sets of CCLM parameters (for example, using a rate-distortion optimization mode determination method).
- the encoder can indicate the target CCLM parameters through grammar settings, and at the same time, can also indicate whether multiple sets of CCLM parameters are allowed through grammar settings.
- Table 1 is CCLM syntax 1.
- the encoder can indicate the target CCLM parameters by setting the CCLM index value cclm_ref_index, that is, set cclm_ref_index in Table 1 to indicate the target CCLM parameter.
- Table 2 is the second syntax of CCLM.
- the encoder can determine whether to allow multiple sets of CCLM parameters by setting cclm_multiple_ref_enable_flag.
- the encoder may call step 301 to calculate multiple sets of CCLM parameters using multiple sets of reference points. Then step 302 can be called to establish a CCLM parameter list according to multiple sets of CCLM parameters.
- Table 3 is CCLM syntax 3.
- the encoder can assign cclm_ref_index to the CCLM parameter in the CCLM parameter list, where the CCLM parameter includes the scale factor ⁇ and the offset parameter ⁇ .
- the encoder may call step 303 to select the target CCLM parameter from the CCLM parameter list.
- the encoder determines the cost value of the corresponding CCLM parameter in the CCLM parameter list, that is, the rate-distortion optimization method, and then determines the CCLM parameter with the optimal cost as the target CCLM parameter.
- the encoder may call step 304 to set cclm_ref_index equal to the index number of the target CCLM parameter in the CCLM parameter list.
- FIG. 12 is a schematic diagram 6 of the implementation process of the image component prediction method.
- the method for the encoder to predict the image component may include the following steps:
- Step 401 When the current block uses CCLM to determine the intra prediction value, multiple sets of reference points of the current block are used to calculate multiple sets of CCLM parameters.
- Step 402 Determine target CCLM parameters according to multiple sets of CCLM parameters.
- Step 403 Set the CCLM index value according to the target CCLM parameter and write the code stream; where the CCLM index value is used to indicate the use of the target CCLM parameter.
- the encoder can also use the CCLM
- the parameter is expressed as the position of the reference point extracted by the corresponding s and ⁇ .
- Table 4 shows an example of the reference position of the CCLM model.
- INTRA_LT_CCLM, INTRA_L_CCLM and INTRA_T_CCLM can be 3 consecutive positive integers;
- IntraPredModeY[x0][y0] indicates that the position of the luminance sample at the top left of the current block is equal to (x0, y0 in the picture or sub-picture ) Is the intra prediction mode of the current block;
- the value of cclm_ref_index corresponds to various s and ⁇ parameters to determine the reference point and then the CCLM parameter.
- the encoder may call step 401 to obtain multiple sets of reference positions using s and ⁇ of multiple sets of reference points, and then calculate and obtain corresponding multiple sets of CCLM parameters.
- the encoder can call step 402 to determine the optimal CCLM mode using, for example, a method similar to steps 302 and 303.
- the encoder can set cclm_ref_index equal to the index number of the target CCLM parameter.
- various CCLM modes may have different numbers of candidate CCLM parameters. As shown in Table 4, for the three CCLM modes INTRA_LT_CCLM, INTRA_L_CCLM and INTRA_T_CCLM, the number of subsets of reference positions represented by s and ⁇ may be different.
- the default position may be used to obtain the reference point.
- An example of the default position is the example in FIG. 11.
- the encoder calculates the residual error according to the intra prediction value of the current block. For example, the encoder calculates the difference between the divided CU and the prediction block of the CU, that is, the residual CU.
- the encoder reads the residual CU and performs one or more transform operations on the residual CU to obtain coefficients.
- the quantity encoder quantizes the coefficients and outputs the quantized coefficients (ie, levels).
- the inverse quantization unit in the encoder performs a scaling operation on the quantized coefficient to output the reconstructed coefficient.
- the inverse transform unit performs one or more inverse transforms corresponding to the transform in the transform unit and outputs a reconstruction residual.
- the adder calculates the reconstructed CU by adding the reconstructed residual and the prediction block of the CU from the prediction unit.
- the adder also sends its output to the prediction unit for use as an intra prediction reference.
- the filtering unit After all CUs in the picture or sub-picture are reconstructed, the filtering unit performs loop filtering on the reconstructed picture or sub-picture.
- the filtering unit contains one or more filters, such as deblocking filters, sample point adaptive offset (SAO) filters, adaptive loop filters (ALF), luminance mapping and chrominance scaling (LMCS) filters, and Filter based on neural network.
- filters such as deblocking filters, sample point adaptive offset (SAO) filters, adaptive loop filters (ALF), luminance mapping and chrominance scaling (LMCS) filters, and Filter based on neural network.
- the filtering unit determines that the CU is not used as a reference for encoding other CUs, the filtering unit performs loop filtering on one or more target pixels in the CU.
- the output of the filtering unit is a decoded picture or sub-picture, and the decoded picture or sub-picture is sent to the DPB (Decoded Picture Buffer).
- DPB Decoded Picture Buffer
- DPB outputs decoded pictures according to timing and control information.
- the pictures stored in the DPB can also be used as references for the prediction unit to perform inter prediction or intra prediction.
- the entropy coding unit converts the parameters (necessary to obtain decoded pictures) and control parameters and supplementary information from the unit in the encoder into a binary representation, and writes such a binary representation into the generation according to the syntax structure of each data unit Video bitstream.
- the entropy coding unit encodes the cclm_ref_index in Table 1 into the data unit corresponding to the current block in the bitstream.
- ae(v) is the parsing process corresponding to ae(v) detailed in VVCWD Entropy coding method.
- the encoder may also determine whether to allow multiple subsets of reference positions to be used when determining the CCLM mode parameters through the intra prediction unit.
- the entropy coding unit can encode the syntax elements in Table 2 into one or more subsequent data units in the bitstream.
- the syntax elements include (from a higher level to a lower level) a sequence level parameter set (for example, a sequence parameter set ( SPS)), picture or sub-picture level parameter set (such as picture parameter set (PPS)), adaptive parameter set (APS), slice header, the syntax of tiles in slice data, and the syntax of bricks in slice data , Coding Tree Unit (CTU).
- the entropy coding unit uses u(1) to code cclm_multiple_ref_enable_flag.
- u(1) is an entropy coding method corresponding to the analysis process of u(1) detailed in VVCWD.
- the cclm_multiple_ref_enable_flag in the lower level may override the corresponding flag in the higher level.
- the embodiment of the present application proposes a method for predicting image components.
- the encoder uses multiple sets of reference points of the current block to determine multiple sets of corresponding CCLM parameters; wherein, CCLM parameters include scale factors and offset parameters; determine the target CCLM parameters from multiple sets of CCLM parameters, set the CCLM index value according to the target CCLM parameters and write the code stream; among them, the CCLM index value is used to indicate the use of the target CCLM parameter; according to the target The CCLM parameter determines the intra prediction value of the current block.
- the encoder when the encoder determines that the current block uses CCLM to determine the intra prediction value of the current block, it can determine the corresponding multiple sets of CCLM parameters based on multiple sets of reference points adjacent to the current block. , And determine the optimal target CCLM parameter from multiple sets of CCLM parameters.
- the encoder can write the CCLM index value indicating the use of the target CCLM parameter into the code stream and transmit it to the decoding side, so that the decoder can analyze the code stream. After obtaining the CCLM index value and determining the target CCLM parameter indicated by the CCLM index value, the target CCLM parameter can be used to determine the intra prediction value of the current block.
- the image component prediction method proposed in this application can write the target CCLM parameters of the multiple sets of CCLM parameters of the current block into the code stream for transmission, so that the codec can determine the current block according to the target CCLM parameters.
- Carrying out intra-frame prediction processing greatly reduces the complexity of coding and decoding processing and improves coding and decoding efficiency.
- FIG. 13 is a schematic diagram of the implementation process of the method for predicting image components, as shown in FIG. 13
- the method for the decoder to predict image components may include the following steps:
- Step 501 When the current block uses CCLM to determine the intra prediction value of the current block, the code stream is analyzed to determine the CCLM index value of the current block.
- Step 502 Establish a CCLM parameter list of the current block.
- Step 503 Select the target CCLM parameter from the CCLM parameter list according to the CCLM index value.
- the input bit stream of the decoder may be a bit stream generated by an encoder, and the bit stream is a bit stream.
- the parsing unit of the decoder parses the input bit stream and obtains the value of the syntax element from the input bit stream.
- the parsing unit of the decoder converts the binary representation of the syntax element into a digital value and sends the digital value to a unit in the decoder to obtain one or more decoded pictures.
- the parsing unit of the decoder can also parse one or more syntax elements from the input bitstream to display decoded pictures.
- the parsing unit of the decoder can obtain one or more syntax elements, and the one or more syntax elements indicate the reference point position of the current block (ie, the current block).
- the parsing unit of the decoder can obtain cclm_ref_index from the data unit in the input bitstream, where the data unit can be at least one of a slice header, a parameter set, a slice data, a supplementary enhancement information message, etc. .
- the syntax structure of the CCLM index value cclm_ref_index in the input bitstream is as shown in Table 1 above.
- the parsing unit of the decoder uses the entropy coding method corresponding to ae(v) to convert the binary representation in the bitstream into a digital value of cclm_ref_index.
- the decoder may first parse the code stream to determine the prediction mode parameter of the current block.
- the parsing unit of the decoder before parsing cclm_ref_index, the parsing unit of the decoder first obtains a value indicating whether the flexible reference point position is allowed to be used in the syntax element of the CCLM mode.
- the parsing unit of the decoder obtains the syntax element from the active parameter set directly or indirectly related to the slice containing the current block, for example, it is called the prediction mode parameter cclm_multiple_ref_enable_flag.
- cclm_multiple_ref_enable_flag 1
- the parsing unit of the decoder can obtain the cclm_ref_index from the encoding bit of the current block.
- cclm_multiple_ref_enable_flag 0
- cclm_ref_index does not exist in the part of the current block in the input bitstream, because the CCLM mode is not used to decode the current block.
- Table 2 above is used to represent the syntax structure of cclm_multiple_ref_enable_flag in one or more data units.
- the data units include, for example, parameter sets, slice headers, slice data, CTU and supplementary enhancement information messages, input Bitstream.
- the parsing unit of the decoder uses the entropy decoding method corresponding to u(1) to convert the binary representation in the bit stream into the digital value of cclm_multiple_ref_enable_flag. Similar to the encoder, the cclm_multiple_ref_enable_flag in the lower level can override the corresponding flag in the higher level.
- the parsing unit of the decoder sends cclm_ref_index and other syntax elements used to obtain one or more decoded pictures to the prediction unit in the decoder to determine the prediction block of the current block (for example, CU) .
- the prediction unit transmits the relative parameters from the parsing unit of the decoder to the MC unit to obtain the inter-frame prediction block.
- the intra prediction mode which can include the CCLM intra prediction mode
- the prediction unit transmits the relative parameters from the parsing unit of the decoder to the intra prediction unit to obtain the intra prediction block.
- the intra prediction unit uses the same type of CCLM mode as shown in FIGS. 8 to 10 to obtain the prediction of the current block Piece.
- the process of obtaining intra prediction blocks in the decoder is similar to that in the encoder.
- the intra prediction unit obtains the reference point position indicated by cclm_ref_index, calculates the CCLM parameters in the same way as the calculation method of the intra prediction unit of the encoder, and finally uses the linear model shown in the above formula (1) to calculate the intra frame of the current block Prediction block.
- step 501 the parsing unit of the decoder is executed to obtain the CCLM index value cclm_ref_index from the input bit stream.
- the intra prediction unit calls step 502 to use the subset to calculate multiple sets of CCLM parameters corresponding to the multiple sets of reference points.
- the order of the subsets and each sub-set The positions of the concentrated reference points are the same as the order and position used by the intra-frame prediction unit of the encoder, and the intra-frame prediction unit invokes step 502 to establish a CCLM parameter list.
- the decoder may also assign an index to the CCLM parameter in the CCLM parameter CCLM parameter list, where the CCLM parameter includes a scale factor and an offset parameter.
- the intra prediction unit calls step 503 to select the target CCLM parameter whose index number is equal to the value of cclm_ref_index from the CCLM parameter list (the target CCLM parameter includes a scale factor and an offset parameter).
- FIG. 14 is a schematic diagram of the implementation process of the image component prediction method 8.
- the method for the decoder to predict the image component may include the following steps:
- Step 601 When the current block uses CCLM to determine the intra-frame prediction value of the current block, analyze the code stream to determine the CCLM index value of the current block.
- Step 602 Determine a target reference point according to the CCLM index value.
- Step 603 Determine the target CCLM parameter according to the target reference point.
- the decoder can also express the CCLM parameters as corresponding The s and ⁇ extract the position of the reference point.
- INTRA_LT_CCLM, INTRA_L_CCLM, and INTRA_T_CCLM may be 3 consecutive positive integers;
- IntraPredModeY[x0][y0] indicates that the position of the luminance sample at the top left of the current block is equal to The intra prediction mode of the current block in the case of (x0, y0) in the picture or sub-picture;
- the value of cclm_ref_index corresponds to various s and ⁇ parameters to determine the reference point and then the CCLM parameter.
- step 601 is performed by the parsing unit of the decoder to obtain cclm_ref_index from the input bit stream.
- the intra prediction unit calls step 602 to use cclm_ref_index to obtain the target reference point, as indicated by the exemplary structure in Table 4.
- the intra prediction unit calls step 603 to determine the position of the target reference point, and then calculates the target CCLM parameter including the scale factor and the offset parameter for decoding the current block.
- various CCLM modes may have different numbers of candidate CCLM parameters. As shown in Table 4, for the three CCLM modes INTRA_LT_CCLM, INTRA_L_CCLM and INTRA_T_CCLM, the number of subsets of reference positions represented by s and ⁇ may be different.
- the scaling unit of the decoder has the same function as the function of the dequantization unit in the encoder.
- the scaling unit of the decoder performs a scaling operation on the quantized coefficient (ie, horizontal) from the parsing unit of the decoder to obtain the reconstructed coefficient.
- the transform unit of the decoder has the same function as that of the inverse transform unit in the encoder.
- the transform unit of the decoder performs one or more transform operations (that is, the inverse operation of one or more transform operations performed by the inverse transform unit in the encoder) to obtain the reconstruction residual.
- the adder of the decoder performs an addition operation on its inputs (the current block from the prediction unit and the reconstruction residual from the transform unit of the decoder) to obtain a reconstructed block of the current block.
- the reconstructed block is also sent to the prediction unit to be used as a reference for other blocks encoded in the intra prediction mode.
- the filtering unit After all CUs in the picture or sub-picture are reconstructed, the filtering unit performs loop filtering on the reconstructed picture or sub-picture.
- the filtering unit contains one or more filters, such as deblocking filters, sample point adaptive offset (SAO) filters, adaptive loop filters (ALF), luminance mapping and chrominance scaling (LMCS) filters, and Filter based on neural network.
- filters such as deblocking filters, sample point adaptive offset (SAO) filters, adaptive loop filters (ALF), luminance mapping and chrominance scaling (LMCS) filters, and Filter based on neural network.
- the filtering unit determines that the reconstructed block is not used as a reference for decoding other blocks, the filtering unit performs loop filtering on one or more target pixels in the reconstructed block.
- the output of the filtering unit is a decoded picture or sub-picture, and the decoded picture or sub-picture is sent to the DPB (Decoded Picture Buffer).
- DPB Decoded Picture Buffer
- DPB outputs decoded pictures according to timing and control information.
- the pictures stored in the DPB can also be used as a reference for performing inter prediction or intra prediction through a prediction unit.
- the embodiment of the application proposes a method for predicting image components.
- the decoder parses the code stream to determine the prediction mode parameter of the current block; when the prediction mode parameter indicates that the intra prediction value of the current block is determined using CCLM, the code stream is analyzed to determine The CCLM index value of the current block; the target CCLM parameter of the current block is determined according to the CCLM index value; the target CCLM parameter includes a scale factor and an offset parameter; the intra prediction value of the current block is determined according to the target CCLM parameter.
- the encoder when the encoder determines that the current block uses CCLM to determine the intra prediction value of the current block, it can determine the corresponding multiple sets of CCLM parameters based on multiple sets of reference points adjacent to the current block. , And determine the optimal target CCLM parameter from multiple sets of CCLM parameters.
- the encoder can write the CCLM index value indicating the use of the target CCLM parameter into the code stream and transmit it to the decoding side, so that the decoder can analyze the code stream. After obtaining the CCLM index value and determining the target CCLM parameter indicated by the CCLM index value, the target CCLM parameter can be used to determine the intra prediction value of the current block.
- the image component prediction method proposed in this application can write the target CCLM parameters of the multiple sets of CCLM parameters of the current block into the code stream for transmission, so that the codec can determine the current block according to the target CCLM parameters.
- Carrying out intra-frame prediction processing greatly reduces the complexity of coding and decoding processing and improves coding and decoding efficiency.
- FIG. 15 is a schematic diagram of the composition structure of a sending device.
- the sending device 500 may include a collection unit 501, an encoder 300, and a storage/transmission unit 502.
- the acquisition unit 501 acquires a video signal and transmits the video signal to the encoder 300.
- the acquisition unit 501 may be a device including one or more cameras (including a depth camera).
- the acquisition unit 501 may be a device that partially or completely decodes the bitstream to obtain a video.
- the acquisition unit 501 may also include one or more elements to capture audio signals.
- An embodiment of the encoder 300 is an encoder, which encodes the video signal as its input video from the acquisition unit 501 and generates a video bitstream.
- the encoder 300 may also include one or more audio encoders to encode audio signals to generate audio bitstreams.
- the storage/transmission unit 502 receives a video bitstream from the encoder 300.
- the storage/transmission unit 502 may also receive an audio bitstream from the encoder 300 and compress the video bitstream and the audio bitstream together to form a media file (for example, an ISO-based media file format) or a transport stream.
- a media file for example, an ISO-based media file format
- the storage/transmission unit 502 writes media files or transport streams into a storage unit, such as a hard disk, a DVD disk, a cloud, or a portable storage device.
- the storage/transmission unit 502 transmits the bit stream to a transmission network, such as the Internet, a wired network, a cellular network, a wireless local area network, and so on.
- FIG. 16 is a schematic diagram of the structure of the target device. As shown in FIG. 16, the target device 600 may include a receiving unit 601, an encoder 300, and a rendering unit 602.
- the receiving unit 601 receives a media file or transport stream from the network or reads a media file or transport stream from a storage device.
- the receiving unit 601 separates the video bit stream and the audio bit stream from the media file or transport stream.
- the receiving unit 601 can also generate a new video bitstream by extracting the video bitstream.
- the receiving unit 601 can also generate a new audio bitstream by extracting the audio bitstream.
- the encoder 300 decodes the video bitstream and audio bitstream from the receiving unit 601 to obtain decoded video and one or more decoded audios corresponding to one or more channels.
- the rendering unit 602 performs operations on the reconstructed video to make it suitable for display.
- Such operations may include one or more of the following operations to improve the perceived quality: noise reduction, synthesis, color space conversion, up-sampling, down-sampling, and so on.
- the rendering unit 602 may also perform operations on the decoded audio to improve the perceived quality of the displayed audio signal.
- FIG. 17 is a schematic diagram of the composition structure of a communication system.
- the communication system 700 may include a source device 701, a storage medium/transmission network 702, and a target device 600.
- the source device 701 may be a transmission device 500, and the output of the storage/transmission unit 502 is processed by the storage medium/transmission network 702 to store or transmit a bit stream.
- the receiving unit 601 in the target device 600 obtains the bit stream from the storage medium/transmission network 702.
- the receiving unit 601 can extract a new video bit stream from the media file or the transport stream.
- the receiving unit 601 can also extract a new audio bit stream from the media file or transport stream.
- the disclosed method and device use multiple sets of CCLM parameters (ie, linear model parameters, scale factors, and offset parameters) and pass the reference position index to the CU data for use in determining the CCLM mode parameters.
- Two methods are provided in the embodiment. The first method is to construct a list of several candidate CCLM parameters. The index indicating the candidate CCLM parameter to be used is passed to the CU data. The second method is to pass the reference position of the CCLM block, because the CCLM parameters are calculated by using samples of the reference position.
- the reference point position can be determined by the step size ⁇ between the starting point s and the adjacent sample, so the reference position index is passed to the CU data to indicate the values of s and ⁇ used to locate the reference point position, The reference point position is used to extract the reference point and then determine the CCLM mode parameters.
- FIG. 18 is a schematic diagram of the composition structure of an encoder.
- the encoder 300 proposed in this embodiment of the present application may include a first determining part 301, Part 302,
- the first determining part 301 is configured to use multiple sets of reference points of the current block to determine corresponding multiple sets of CCLM parameters when the current block uses CCLM to determine the intra prediction value of the current block; wherein, the The CCLM parameters include a scale factor and an offset parameter; and the target CCLM parameter is determined from the multiple sets of CCLM parameters;
- the setting part 302 is configured to set a CCLM index value according to the target CCLM parameter and write the code stream; wherein the CCLM index value is used to indicate the use of the target CCLM parameter;
- the first determining part 301 is further configured to determine the intra prediction value of the current block according to the target CCLM parameter.
- the first determining part 301 is specifically configured such that the multiple sets of reference points include pixel sampling points adjacent to the current block; use one of the multiple sets of reference points A set of reference points is used to calculate a set of CCLM parameters corresponding to the set of reference points; the multiple sets of reference points are traversed to determine the multiple sets of CCLM parameters.
- the first determining part 301 is also specifically configured to use a rate-distortion optimization method to select a set of CCLM corresponding to the optimal value of the objective cost function from the multiple sets of CCLM parameters The parameter is determined as the target CCLM parameter.
- the setting part 302 is specifically configured to set the CCLM index value to the index number corresponding to the target CCLM parameter in the multiple sets of CCLM parameters; The index value is written into the code stream.
- the first determining part 301 is further configured to determine the position information of each group of reference points in the plurality of groups of reference points; according to the position information of each group of reference points, Determine the index number of each group of CCLM parameters in the multiple groups of CCLM parameters.
- the first determining part 301 is further specifically configured to determine the multiple between the multiple sets of reference points and the current block according to the position information of each set of reference points.
- a distance parameter; according to the order of the distance parameter from small to large, the index number of each group of CCLM parameters in the multiple sets of CCLM parameters is sequentially set.
- the setting part 302 is further specifically configured to write the CCLM index value into the data unit containing the current block coded data in the code stream.
- the first determining part 301 is also specifically configured to use a linear model to calculate the target CCLM parameter and the reconstruction value of the first image component of the current block The predicted value of the second image component of the current block.
- the first image component is a luminance component
- the second image component is a chrominance component
- the first determining part 301 is further specifically configured to determine a CCLM mode index parameter; wherein, the CCLM mode index parameter is used to indicate the CCLM mode used by the current block, so The CCLM mode is used to indicate a calculation and derivation method of using CCLM to determine the intra-frame prediction value; and write the CCLM mode index parameter into a code stream.
- the setting part 302 is further configured to set the prediction mode parameter of the current block when the current block uses CCLM to determine the intra prediction value of the current block, and Write code stream.
- FIG. 19 is a schematic diagram of the composition structure of the encoder.
- the encoder 300 proposed in the embodiment of the present application may further include a first processor 303 and a first memory 304 storing executable instructions of the first processor 303 , A first communication interface 305, and a first bus 306 for connecting the first processor 303, the first memory 304, and the first communication interface 305.
- the above-mentioned first processor 303 is configured to use multiple sets of reference points of the current block to determine the corresponding reference point when the current block uses CCLM to determine the intra prediction value of the current block
- the CCLM parameters include scale factors and offset parameters; determine the target CCLM parameters from the multiple sets of CCLM parameters, and set the CCLM index value according to the target CCLM parameters and write the code stream; wherein The CCLM index value is used to indicate that the target CCLM parameter is used; and the intra prediction value of the current block is determined according to the target CCLM parameter.
- the functional modules in this embodiment may be integrated into one processing unit, or each unit may exist alone physically, or two or more units may be integrated into one unit.
- the above-mentioned integrated unit can be realized in the form of hardware or software function module.
- the integrated unit is implemented in the form of a software function module and is not sold or used as an independent product, it can be stored in a computer readable storage medium.
- the technical solution of this embodiment is essentially or correct
- the part that contributes to the prior art or all or part of the technical solution can be embodied in the form of a software product.
- the computer software product is stored in a storage medium and includes several instructions to enable a computer device (which can be a personal A computer, a server, or a network device, etc.) or a processor (processor) execute all or part of the steps of the method in this embodiment.
- the aforementioned storage media include: U disk, mobile hard disk, read only memory (Read Only Memory, ROM), random access memory (Random Access Memory, RAM), magnetic disk or optical disk and other media that can store program codes.
- the embodiment of the present application provides an image encoder.
- the encoder uses multiple sets of reference points of the current block to determine multiple sets of corresponding CCLM parameters; among them, CCLM Parameters include scale factor and offset parameters; determine the target CCLM parameter from multiple sets of CCLM parameters, set the CCLM index value according to the target CCLM parameter and write the code stream; among them, the CCLM index value is used to indicate the use of the target CCLM parameter; according to the target CCLM The parameter determines the intra prediction value of the current block.
- the encoder when the encoder determines that the current block uses CCLM to determine the intra prediction value of the current block, it can determine the corresponding multiple sets of CCLM parameters based on multiple sets of reference points adjacent to the current block. , And determine the optimal target CCLM parameter from multiple sets of CCLM parameters.
- the encoder can write the CCLM index value indicating the use of the target CCLM parameter into the code stream and transmit it to the decoding side, so that the decoder can analyze the code stream. After obtaining the CCLM index value and determining the target CCLM parameter indicated by the CCLM index value, the target CCLM parameter can be used to determine the intra prediction value of the current block.
- the image component prediction method proposed in this application can write the target CCLM parameters of the multiple sets of CCLM parameters of the current block into the code stream for transmission, so that the codec can determine the current block according to the target CCLM parameters.
- Carrying out intra-frame prediction processing greatly reduces the complexity of coding and decoding processing and improves coding and decoding efficiency.
- FIG. 20 is a schematic diagram of the structure of the decoder.
- the decoder 400 proposed in this embodiment of the present application may include a parsing part 401. Part 402,
- the parsing part 401 is configured to analyze a code stream
- the second determining part 402 is configured to determine the prediction mode parameter of the current block
- the parsing part 401 is further configured to analyze the code stream when the prediction mode parameter indicates to use CCLM to determine the intra prediction value of the current block;
- the second determining part 402 is further configured to determine the CCLM index value of the current block; and determine the target CCLM parameter of the current block according to the CCLM index value; wherein, the target CCLM parameter includes a scale factor and Offset parameter; and determining the intra prediction value of the current block according to the target CCLM parameter.
- the second determining part 402 is specifically configured to determine the target reference point of the current block according to the CCLM index value; wherein, the target reference point is the current One or more pixel sampling points adjacent to the block; determine the target CCLM parameter of the current block according to the target reference point.
- the second determining part 402 is further specifically configured to determine the number of reference points in the current block according to the index number indicated by the CCLM index value.
- Target reference point wherein each group of reference points in the plurality of groups of reference points includes one or more pixel sampling points at preset positions adjacent to the current block.
- the second determining part 402 is further specifically configured to determine the position information of each group of reference points in the plurality of groups of reference points; according to the position information of each group of reference points , Determine multiple distance parameters between the multiple sets of reference points and the current block; set the position index of each set of reference points in the multiple sets of reference points in the order of the distance parameters from small to large Serial number; from the multiple groups of reference points, a group of reference points whose position index number is the same as the index number indicated by the CCLM index value is selected as the target reference point.
- the second determining part 402 is further specifically configured to use multiple sets of reference points of the current block to determine corresponding multiple sets of CCLM parameters; wherein, the multiple sets of reference points Each set of reference points in includes one or more pixel sampling points at preset positions adjacent to the current block; among the multiple sets of CCLM parameters, a set of CCLM parameters indicated by the CCLM index value is used as the The target CCLM parameters.
- the second determining part 402 is further specifically configured to determine the position information of each group of reference points in the plurality of groups of reference points; according to the position information of each group of reference points , Determine the multiple distance parameters between the multiple groups of reference points and the current block; according to the order of the distance parameters from small to large, set the index number of each group of CCLM parameters in the multiple groups of CCLM parameters in turn ; A group of CCLM parameters whose index number in the CCLM parameter is the same as the index number indicated by the CCLM index value is used as the target CCLM parameter.
- the second determining part 402 is further specifically configured to use a linear model to calculate the reconstruction value of the first image component of the current block and the target CCLM parameter. The predicted value of the second image component of the current block.
- the first image component is a luminance component
- the second image component is a chrominance component
- the parsing part 401 is also configured to analyze the code stream to determine the prediction mode parameter of the current block, when the prediction mode parameter indicates to use CCLM to determine the current block Parse the code stream when the intra-frame prediction value of the block is used;
- the second determining part 402 is further configured to determine the CCLM mode index parameter of the current block; wherein the CCLM mode index parameter is used to indicate the CCLM mode used by the current block, and the CCLM mode is used to indicate the use of The CCLM determines the calculation and derivation mode of the intra prediction value.
- FIG. 21 is a second schematic diagram of the structure of the decoder.
- the decoder 400 proposed in the embodiment of the present application may further include a second processor 403, and a second memory 404 storing executable instructions of the second processor 403. , A second communication interface 405, and a second bus 406 for connecting the second processor 403, the second memory 404, and the second communication interface 405.
- the above-mentioned second processor 403 is configured to parse the code stream and determine the prediction mode parameter of the current block; when the prediction mode parameter indicates to use CCLM to determine the frame of the current block In the intra prediction value, the code stream is analyzed to determine the CCLM index value of the current block; according to the CCLM index value, the target CCLM parameter of the current block is determined; wherein, the target CCLM parameter includes a scale factor and a bias Shift parameter; determine the intra prediction value of the current block according to the target CCLM parameter.
- the functional modules in this embodiment may be integrated into one processing unit, or each unit may exist alone physically, or two or more units may be integrated into one unit.
- the above-mentioned integrated unit can be realized in the form of hardware or software function module.
- the integrated unit is implemented in the form of a software function module and is not sold or used as an independent product, it can be stored in a computer readable storage medium.
- the technical solution of this embodiment is essentially or correct
- the part that contributes to the prior art or all or part of the technical solution can be embodied in the form of a software product.
- the computer software product is stored in a storage medium and includes several instructions to enable a computer device (which can be a personal A computer, a server, or a network device, etc.) or a processor (processor) execute all or part of the steps of the method in this embodiment.
- the aforementioned storage media include: U disk, mobile hard disk, read only memory (Read Only Memory, ROM), random access memory (Random Access Memory, RAM), magnetic disk or optical disk and other media that can store program codes.
- the embodiment of the application provides an image decoder that parses the code stream and determines the prediction mode parameter of the current block; when the prediction mode parameter indicates that the intra prediction value of the current block is determined using CCLM, the code stream is parsed to determine the current block
- the CCLM index value of the block the target CCLM parameter of the current block is determined according to the CCLM index value; where the target CCLM parameter includes a scale factor and an offset parameter; the intra prediction value of the current block is determined according to the target CCLM parameter.
- the encoder when the encoder determines that the current block uses CCLM to determine the intra prediction value of the current block, it can determine the corresponding multiple sets of CCLM parameters based on multiple sets of reference points adjacent to the current block. , And determine the optimal target CCLM parameter from multiple sets of CCLM parameters.
- the encoder can write the CCLM index value indicating the use of the target CCLM parameter into the code stream and transmit it to the decoding side, so that the decoder can analyze the code stream. After obtaining the CCLM index value and determining the target CCLM parameter indicated by the CCLM index value, the target CCLM parameter can be used to determine the intra prediction value of the current block.
- the image component prediction method proposed in this application can write the target CCLM parameters of the multiple sets of CCLM parameters of the current block into the code stream for transmission, so that the codec can determine the current block according to the target CCLM parameters.
- Carrying out intra-frame prediction processing greatly reduces the complexity of coding and decoding processing and improves coding and decoding efficiency.
- the embodiments of the present application provide a computer-readable storage medium and a computer-readable storage medium, on which a program is stored, and when the program is executed by a processor, the method as described in the foregoing embodiment is implemented.
- the program instructions corresponding to an image component prediction method in this embodiment can be stored on storage media such as optical disks, hard disks, USB flash drives, etc.
- storage media such as optical disks, hard disks, USB flash drives, etc.
- the current block uses CCLM to determine the intra prediction value of the current block
- multiple sets of reference points of the current block are used to determine multiple corresponding sets of CCLM parameters;
- the CCLM parameters include a scale factor and an offset parameter;
- a target CCLM parameter from the multiple sets of CCLM parameters, and set a CCLM index value according to the target CCLM parameter and write it into the code stream; wherein the CCLM index value is used to indicate the use of the target CCLM parameter;
- the program instructions corresponding to an image component prediction method in this embodiment can be stored on storage media such as optical disks, hard disks, USB flash drives, etc.
- storage media such as optical disks, hard disks, USB flash drives, etc.
- the prediction mode parameter indicates to use CCLM to determine the intra prediction value of the current block
- the target CCLM parameter includes a scale factor and an offset parameter
- this application can be provided as methods, systems, or computer program products. Therefore, this application may adopt the form of hardware embodiments, software embodiments, or embodiments combining software and hardware. Moreover, this application may adopt the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage, optical storage, etc.) containing computer-usable program codes.
- These computer program instructions can also be stored in a computer-readable memory that can guide a computer or other programmable data processing equipment to work in a specific manner, so that the instructions stored in the computer-readable memory produce an article of manufacture including the instruction device.
- the device realizes the functions specified in one or more processes in the schematic diagram and/or one block or more in the block diagram.
- These computer program instructions can also be loaded on a computer or other programmable data processing equipment, so that a series of operation steps are executed on the computer or other programmable equipment to produce computer-implemented processing, so as to execute on the computer or other programmable equipment.
- the instructions provide steps for implementing functions specified in one or more processes in the schematic diagram and/or one block or more in the block diagram.
- the embodiments of the application provide a prediction method, an encoder, a decoder, and a storage medium for image components.
- the encoder uses multiple sets of reference points of the current block to determine Corresponding multiple sets of CCLM parameters; among them, the CCLM parameters include scale factors and offset parameters; determine the target CCLM parameters from the multiple sets of CCLM parameters, set the CCLM index value according to the target CCLM parameters and write the code stream; among them, the CCLM index value is used Instruct to use the target CCLM parameter; according to the target CCLM parameter, determine the intra prediction value of the current block.
- the decoder parses the code stream to determine the prediction mode parameters of the current block; when the prediction mode parameter indicates that the intra prediction value of the current block is determined using CCLM, it parses the code stream to determine the CCLM index value of the current block; according to the CCLM index value, the current block is determined The target CCLM parameter of the block; where the target CCLM parameter includes a scale factor and an offset parameter; the intra prediction value of the current block is determined according to the target CCLM parameter. It can be seen that, in the embodiment of the present application, when the encoder determines that the current block uses CCLM to determine the intra prediction value of the current block, it can determine the corresponding multiple sets of CCLM parameters based on multiple sets of reference points adjacent to the current block.
- the encoder can write the CCLM index value indicating the use of the target CCLM parameter into the code stream and transmit it to the decoding side, so that the decoder can analyze the code stream.
- the target CCLM parameter can be used to determine the intra prediction value of the current block. That is to say, the image component prediction method proposed in this application can write the target CCLM parameters of the multiple sets of CCLM parameters of the current block into the code stream for transmission, so that the codec can determine the current block according to the target CCLM parameters. Carrying out intra-frame prediction processing greatly reduces the complexity of coding and decoding processing and improves coding and decoding efficiency.
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本申请实施例公开了一种图像分量的预测方法、编码器、解码器以及存储介质,编码器在当前块使用CCLM确定当前块的帧内预测值时,使用当前块的多组参考点,确定对应的多组CCLM参数;从多组CCLM参数中确定目标CCLM参数,根据目标CCLM参数设置CCLM索引值并写入码流;其中,CCLM索引值用于指示使用目标CCLM参数;根据目标CCLM参数,确定当前块的帧内预测值。解码器解析码流,确定当前块的预测模式参数;当预测模式参数指示使用CCLM确定当前块的帧内预测值时,解析码流,确定当前块的CCLM索引值;根据CCLM索引值,确定当前块的目标CCLM参数;根据目标CCLM参数,确定当前块的帧内预测值。
Description
本申请实施例涉及图像处理技术领域,尤其涉及一种图像分量的预测方法、编码器、解码器以及存储介质。
随着人们对视频显示质量要求的提高,高清和超高清视频等新视频应用形式应运而生。H.265/高效率视频编码(High Efficiency Video Coding,HEVC)已经无法满足视频应用迅速发展的需求,联合视频研究组(Joint Video Exploration Team,JVET)提出了下一代视频编码标准H.266/多功能视频编码(Versatile Video Coding,VVC),其相应的测试模型为VVC的参考软件测试平台(VVC Test Model,VTM)。
在VVC中,可以通过分量间线性模型预测(Cross-component Linear Model Prediction,CCLM)模式实现亮度值到色度值或者色度值之间的预测,具体地,可以利用线性回归方法对当前块对应的相邻亮度参数和色度参数进行线性模型的构建,从而可以根据该线性模型和重建亮度值来计算色度预测值。在利用CCLM模式进行帧内预测的过程中,需要对当前块的相邻块的位置进行确定,会大大增加编解码处理的复杂程度,降低了编解码效率。
发明内容
本申请实施例提供一种图像分量的预测方法、编码器、解码器以及存储介质,大大降低了编解码处理的复杂程度,提高了编解码效率。
本申请实施例的技术方案可以如下实现:
第一方面,本申请实施例提供了一种图像分量的预测方法,应用于编码器,所述方法包括:
在当前块使用CCLM确定所述当前块的帧内预测值时,使用所述当前块的多组参考点,确定对应的多组CCLM参数;其中,所述CCLM参数包括比例因子和偏移参数;
从所述多组CCLM参数中确定目标CCLM参数,根据所述目标CCLM参数设置CCLM索引值并写入码流;其中,所述CCLM索引值用于指示使用所述目标CCLM参数;
根据所述目标CCLM参数,确定所述当前块的帧内预测值。
第二方面,本申请实施例提供了一种图像分量的预测方法,应用于解码器,所述方法包括:
解析码流,确定所述当前块的预测模式参数;
当所述预测模式参数指示使用CCLM确定所述当前块的帧内预测值时,解析所述码流,确定所述当前块的CCLM索引值;
根据所述CCLM索引值,确定所述当前块的目标CCLM参数;其中,所述目标CCLM参数包括比例因子和偏移参数;
根据所述目标CCLM参数,确定所述当前块的帧内预测值。
第三方面,本申请实施例提供了一种编码器,所述编码器包括:第一确定部分,设置部分,
所述第一确定部分,配置为在当前块使用CCLM确定所述当前块的帧内预测值时,使用所述当前块的多组参考点,确定对应的多组CCLM参数;其中,所述CCLM参数包括比例因子和偏移参数;以及从所述多组CCLM参数中确定目标CCLM参数;
所述设置部分,配置为根据所述目标CCLM参数设置CCLM索引值并写入码流;其中,所述CCLM索引值用于指示使用所述目标CCLM参数;
所述第一确定部分,还配置为根据所述目标CCLM参数,确定所述当前块的帧内预测值。
第四方面,本申请实施例提供了一种编码器,所述编码器包括第一处理器、存储有所述第一处理器可执行指令的第一存储器,当所述指令被执行时,所述第一处理器执行时实现如上所述的图像分量的预测方法。
第五方面,本申请实施例提供了一种解码器,所述解码器包括:解析部分,第二确定部分,
所述解析部分,配置为解析码流,确定所述当前块的预测模式参数;以及当所述预测模式参数指示使用CCLM确定所述当前块的帧内预测值时,解析所述码流,确定所述当前块的CCLM索引值;
所述第二确定部分,配置为根据所述CCLM索引值,确定所述当前块的目标CCLM参数;其中,所述目标CCLM参数包括比例因子和偏移参数;以及根据所述目标CCLM参数,确定所述当前块的帧内预测值。
第六方面,本申请实施例提供了一种解码器,所述解码器包括第二处理器、存储有所述第二处理器可执行指令的第二存储器,当所述指令被执行时,所述第二处理器执行时实现如上所述的图像分量的预测方法。
第七方面,本申请实施例提供了一种计算机存储介质,所述计算机存储介质存储有计算机程序,所述计算机程序被第一处理器和第二处理器执行时,实现如上所述的图像分量的预测方法。
本申请实施例提供了一种图像分量的预测方法、编码器、解码器以及存储介质,编码器在当前块使用CCLM确定当前块的帧内预测值时,使用当前块的多组参考点,确定对应的多组CCLM参数;其中,CCLM参数包括比例因子和偏移参数;从多组CCLM参数中确定目标CCLM参数,根据目标CCLM参数设置CCLM索引值并写入码流; 其中,CCLM索引值用于指示使用目标CCLM参数;根据目标CCLM参数,确定当前块的帧内预测值。解码器解析码流,确定当前块的预测模式参数;当预测模式参数指示使用CCLM确定当前块的帧内预测值时,解析码流,确定当前块的CCLM索引值;根据CCLM索引值,确定当前块的目标CCLM参数;其中,目标CCLM参数包括比例因子和偏移参数;根据目标CCLM参数,确定当前块的帧内预测值。由此可见,在本申请的实施例中,编码器在确定当前块使用CCLM确定当前块的帧内预测值时,可以基于与当前块相邻点的多组参考点确定对应的多组CCLM参数,并从多组CCLM参数中确定出最优的目标CCLM参数,编码器可以将指示使用目标CCLM参数的CCLM索引值写入码流,传输至解码侧,从而可以使解码器在解析码流之后获得CCLM索引值,并确定CCLM索引值指示的目标CCLM参数,便可以利用目标CCLM参数确定当前块的帧内预测值。也就是说,本申请提出的图像分量的预测方法,可以将当前块的多组CCLM参数中的目标CCLM参数写入码流中进行传递,从而可以使编解码器根据目标CCLM参数确定对当前块进行帧内预测处理,大大降低了编解码处理的复杂程度,提高了编解码效率。
图1为视频编码系统的结构示意图;
图2为视频解码系统的结构示意图;
图3为图像分量的预测方法的实现流程示意图一;
图4为图像分量的预测方法的实现流程示意图二;
图5为图像分量的预测方法的实现流程示意图三;
图6为图像分量的预测方法的实现流程示意图四;
图7为图像分量的预测方法的实现流程示意图五;
图8为当前块的参考点的位置的示意图一;
图9为当前块的参考点的位置的示意图二;
图10为当前块的参考点的位置的示意图三;
图11为确定INTRA_T_CCLM模式的参考点位置的示意图;
图12为图像分量的预测方法的实现流程示意图六;
图13为图像分量的预测方法的实现流程示意图七;
图14为图像分量的预测方法的实现流程示意图八;
图15为发送设备的组成结构示意图;
图16为目标设备的组成结构示意图;
图17为通信系统的组成结构示意图;
图18为编码器的组成结构示意图一;
图19为编码器的组成结构示意图二;
图20为解码器的组成结构示意图一;
图21为解码器的组成结构示意图二。
为了能够更加详尽地了解本申请实施例的特点与技术内容,下面结合附图对本申请实施例的实现进行详细阐述,所附附图仅供参考说明之用,并非用来限定本申请实施例。
目前,通信版方面的建议(ITU-T)和由国际标准化组织(ISO)/国际电工委道员会(IEC)启动了一项名为通用视频编码VVC的标准化项目以开发新一代视频编码标准,其目的是在对具有高分辨率、高帧率、高位深、高动态范围、宽色域和全向视角中的一个或多个特征的高质量视频进行编码时,与最新的H.265/HEVC标准相比,VVC性能提高大约50%,JVET负责该标准化项目,各种帧内预测模式和帧间预测模式已被验证在对高质量视频进行编码时实现高压缩效率,因此在VVC工作草案中被采纳。
CCLM模式是一种帧内预测模式,其指示使用线性模型获得当前块(即编码器中的当前编码块或解码器中的当前块)的色度分量的预测,其中,当前块的重构的色度分量作为线性模型的输入,使用当前块的色度分量和亮度分量的相邻样本(即参考点)计算线性模型的参数。
在视频图像中,一般采用第一图像分量、第二图像分量和第三图像分量来表征编码块(Coding Block,CB);其中,这三个图像分量分别为一个亮度分量、一个蓝色色度分量和一个红色色度分量,具体地,亮度分量通常使用符号Y表示,蓝色色度分量通常使用符号Cb或者U表示,红色色度分量通常使用符号Cr或者V表示;这样,视频图像可以用YCbCr格式表示,也可以用YUV格式表示。
在本申请实施例中,第一图像分量可以为亮度分量,第二图像分量可以为蓝色色度分量,第三图像分量可以为红色色度分量,但是本申请实施例不作具体限定。
在H.266中,为了进一步提升了编码性能和编码效率,针对分量间预测(Cross-component Prediction,CCP)进行了扩展改进,提出了CCLM。在H.266中,CCLM实现了第一图像分量到第二图像分量、第一图像分量到第三图像分量以及第二图像分量与第三图像分量之间的预测。
具体地,在本申请的实施例中,CCLM方法在实现亮度分量到色度分量的预测时,为了减少亮度分量与色度分量间和不同色度分量之间的冗余,在下一代视频编码标准中使用分量间分量间线性模型预测模式。例如,根据公式(1),利用同一编码块的重建亮度值构造色度的预测值:
Pred
C[i,j]=α·Rec
L[i,j]+β (1)
其中,i,j表示编码块中采样点的位置坐标,i表示水平方向,j表示竖直方向,Pred
C[i,j]表示编码块中位置坐标为[i,j]的采样点的第二图像分量预测值,Rec
L[i,j]表示同一编码块中(经过下采样的)位置坐标为[i,j]的采样点的第一图像分量重建值,α是线性模型的比例因子,β为偏移参数,可以通过最小化第一图像分量相邻参考值和第二图像分量相邻参考值的回归误差推导得到,如下公式(2):
其中,L(n)表示经过下采样的第一图像分量相邻参考值(例如左侧和上侧),C(n)表示第二图像分量相邻参考值(例如左侧和上侧),N为第二图像分量相邻参考值的个数。
具体地,CCLM模式除包含以亮度分量对色度分量预测的方法之外,即以第一图像分量对第二图像分量进行预测,或者以第一图像分量对第三图像分量进行预测的方法之外,也包含两个色度分量之间的预测,即还包含第二图像分量与第三图像分量之间的预测方法,其中,在本申请的实施例中,既可以从Cb分量预测Cr分量,也可以从Cr分量预测Cb分量。
需要说明的是,在本申请的实施例中中,CCLM中色度分量之间的预测,即第二图像分量与第三图像分量之间的预测可以应用于残差域。以对Cr分量进行预测为例,可以利用Cb残差预测Cr残差。Cr分量的最终预测值通过Cr分量的传统帧内预测值添加一个带权重的重建Cb残差得到,如公式(3)所示:
Pred*
Cr[i,j]=γ·resi
Cb'[i,j]+Pred
Cr[i,j] (3)
其中,
表示上述当前编码块中位置坐标为[i,j]的采样点的Cr分量的最终预测值,resi
Cb'[i,j]是重建Cb分量的预测残差,比例因子γ的计算方法和CCLM中亮度分量到色度分量的预测模型参数的计算方式一样,唯一不同的是增加了一个与误差函数中的默认γ值有关的回归代价,从而可以使得到的比例因子γ偏向于-0.5的默认值,具体地,可以通过公式(4)对比例因子γ进行计算。
其中,Cb(n)表示上述当前编码块的相邻参考Cb值,Cr(n)表示上述当前编码块的相邻参考Cr值,λ可以为一个经验值,例如,λ=∑(Cb(n)·Cb(n))>>9。
对于目前H.266/VVC,在利用CCLM模式进行帧内预测的过程中,需要对当前块的相邻块的位置进行确定,会大大增加编解码处理的复杂程度,降低了编解码效率。
为了克服上述缺陷,在本申请的实施例中,编码器在确定当前块使用CCLM确定当前块的帧内预测值时,可以基于与当前块相邻点的多组参考点确定对应的多组CCLM参数,并从多组CCLM参数中确定出最优的目标CCLM参数,编码器可以将指示使用目标CCLM参数的CCLM索引值写入码流,传输至解码侧,从而可以使解码器在解析码流之后获得CCLM索引值,并确定CCLM索引值指示的目标CCLM参数,便可以利用目标CCLM参数确定当前块的帧内预测值。也就是说,本申请提出的图像分量的预测方法,可以将当前块的多组CCLM参数中的目标CCLM参数写入码流中进行传递,从而可以使编解码器根据目标CCLM参数确定对当前块进行帧内预测处理,大大降低了编解码处理的复杂程度,提高了编解码效率。
图1为视频编码系统的结构示意图,如图1所示,该视频编码系统100包括变换与量化模块101、帧内估计模块102、帧内预测模块103、运动补偿模块104、运动估计模块105、反变换与反量化模块106、滤波器控制分析模块107、去方块滤波及样本自适应缩进(Sample Adaptive 0ffset,SAO)滤波模块108、头信息编码及基于上下文的自适应二进制算术编码(Context-based Adaptive Binary Arithmatic Coding,CABAC)编码模块109和解码图像缓存模块110等部件;图2为视频解码系统的结构示意图,如图2所示,该视频解码系统200包括头信息解码及CABAC解码模块201、反变换与反量化模块202、帧内预测模块203、运动补偿模块204、去方块滤波及SAO滤波模块205和解码图像缓存模块206等部件。视频图像经过视频编码系统100中变换与量化模块101、帧内估计模块102、帧内预测模块103、运动补偿模块104、运动估计模块105、去方块滤波及SAO滤波模块108以及头信息编码及CABAC模块109等部分处理之后,输出该视频图像的码流;该码流输入视频解码系统200中,经过视频解码系统200中头信息解码及CABAC解码模块201、反变换与反量化模块202、帧内预测模块203以及运动补偿模块204等部分处理,最终恢复出原来的视频图像。
本申请所提出的图像分量的预测方法,可以影响编解码过程中的帧内预测过程,示例性的,本申请所提出的图像分量的预测方法可以在图1所示视频编码系统的结构中的帧内预测模块103位置应用,还可以在图2所示视频编码系统的结构中的帧内预测模块203位置应用。
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,其中,在下面的各个实施例中,第一图像分量可以为亮度分量Y,第二图像分量可以为红色色度分量Cr,第三图像分量可以为蓝色色度分量Cb,本申请实施例对此并不作具体限定。
本申请一实施例提出了一种图像分量的预测方法,应用于编码器,图3为图像分量的预测方法的实现流程示意图一,如图3所示,在本申请中,编码器预测图像分量的方法可以包括以下步骤:
步骤101、在当前块使用CCLM确定所述当前块的帧内预测值时,使用所述当前块的多组参考点,确定对应的多组CCLM参数;其中,所述CCLM参数包括比例因子和偏移参数。
在本申请的实施例中,如果当前块使用CCLM确定所述当前块的帧内预测值,那么编码器可以使用所述当前块的多组参考点,确定对应的多组CCLM参数。具体地,一组参考点对应一组CCLM参数。
可以理解的是,在本申请的实施例中,每一组CCLM参数均包括通过对应的一组参考点确定的比例因子和偏移参数。
需要说明的是,在本申请的实施例中,视频图像可以划分为多个图像块,其中,当前块即为待编码的图像块,也可以称为编码块(Coding Block,CB)。具体地,每个编码块可以包括第一图像分量、第二图像分量和第三图像分量,相应地,当前块为视频图像中当前待进行第一图像分量、第二图像分量或者第三图像分量预测的编码块。
可以理解的是,在本申请的实施例中,假定当前块进行第一图像分量预测,而且第一图像分量为亮度分量,即待预测图像分量为亮度分量,那么当前块也可以称为亮度块;或者,假定当前块进行第二图像分量预测,而且第二图像分量为色度分量,即待预测图像分量为色度分量,那么当前块也可以称为色度块。
需要说明的是,在本申请的实施例中,当前块的多组参考点可以包括与当前块相邻的像素采样点,其中,多组参考点中的每组参考点可以包含与当前块相邻的一个或多个像素采样点。
也就是说,在本申请中,编码器在确定当前块使用CCLM来对当前块的帧内预测值进行确定之后,便可以使用与当前块相邻像素采样点进行CCLM参数的确定,即使用当前块的多组参考点来确定对应的多组CCLM参数。
进一步地,在本申请的实施例中,编码器在使用当前块的多组参考点,确定对应的多组CCLM参数时,可以使用所述多组参考点中的一组参考点,计算与该一组参考点对应的一组CCLM参数,接着可以遍历所述多组参考点中每一组参考点,从而可以确定多组参考点对应的多组CCLM参数。
可以理解的是,在本申请的实施例中,多组CCLM参数中的每一组CCLM参数均可以包括比例因子和偏移参数。具体地,比例因子可以为上述公式(1)中的α,偏移参数可以为上述公式(1)中的β。也就是说,对于当前块的一组参考点,编码器可以确定出对应的、包括比例因子α和偏移参数β的一组CCLM参数,相应地,基于当前块的多组参考点,最终可以确定出多组包括比例因子α和偏移参数β的CCLM参数。
进一步地,在本申请的实施例中,在使用当前块的多组参考点,确定对应的多组CCLM参数之前,编码器可以先确定出当前块的预测模式参数。
需要说明的是,在本申请的实施例中,预测模式参数指示了当前块的编码模式及该模式相关的参数,即预测模式参数的取值可以指示当前块使用的帧内预测模式。通常可以采用率失真优化的方式确定当前块的预测模式参数。
进一步地,在本申请的实施例中,编码模式可以包括传统帧内预测模式和非传统帧内预测模式这两大类。具体地,传统帧内预测模式可以包括直流(Direct Current,DC)模式、平面(PLANAR)模式以及角度模式等;非传统帧内预测模式又可以包括有基于矩阵的帧内预测(Matrix-based Intra Prediction,MIP)模式、CCLM模式、帧内块复制(Intra Block Copy,IBC)模式以及PLT(Palette)模式等。
也就是说,在本申请的实施例中,编码器可以通过预测模式参数的设定来确定当前块的编码模式是传统帧内预测模式或非传统帧内预测模式的具体哪一种编码模式。
在本申请的实施例中,进一步地,编码器在确定当前块的预测模式参数时,可以先确定当前块的待预测图像分量;然后基于当前块的参数,利用多种预测模式分别对待预测图像分量进行预测编码,计算多种预测模式下每一种预测模式对应的率失真代价结果;最后便可以从计算得到的多个率失真代价结果中选取最小率失真代价结果,并将最小率失真代价结果对应的预测模式确定为当前块的预测模式参数。
也就是说,在编码器侧,针对当前块可以采用多种预测模式分别对待预测图像分量进行编码。这里,多种预测模式通常包括有传统帧内预测模式和非传统帧内预测模式。
进一步地,在本申请的实施例中,编码器在利用多种预测模式分别对当前块进行编码之后,可以得到每一种预测模式对应的率失真代价结果;然后从所得到的多个率失真代价结果中选取最小率失真代价结果,并将该最小率失真代价结果对应的预测模式确定为当前块的预测模式参数;如此,最终可以使用所确定的预测模式对当前块进行编码,而且在这种预测模式下,可以使得预测残差小,能够提高编码效率。
可以理解的是,在本申请的实施例中,编码器在确定出当前块的预测模式参数之后,可以将预测模式参数写入到码流中,从而可以在传输至解码侧之后,使解码器通过解析码流确定当前块的预测模式参数。
步骤102、从多组CCLM参数中确定目标CCLM参数,根据目标CCLM参数设置CCLM索引值并写入码流;其中,CCLM索引值用于指示使用目标CCLM参数。
在本申请的实施例中,编码器在使用当前块的多组参考点,确定对应的多组CCLM参数之后,可以继续从多组CCLM参数中确定目标CCLM参数,然后可以根据目标CCLM参数设置CCLM索引值并写入码流。具体地,在本申请中,CCLM索引值用于指示使用目标CCLM参数确定当前块的帧内预测值。
进一步地,在本申请中,编码器在从多组CCLM参数中确定目标CCLM参数之后,需要根据目标CCLM参数,设置与目标CCLM参数对应的索引值,即设置CCLM索引值,然后将CCLM索引值写入码流中,传输至解码侧,从而可以使解码器通过解析码流获得的CCLM索引值确定使用目标CCLM参数进行当前块的帧内预测值的确定。
需要说明的是,在本申请的实施例中,编码器在从多组CCLM参数中确定目标CCLM参数时,可以使用率失真优化(Rate Distortion Optimization,RDO)的方法从多组CCLM参数中选择目标代价函数最优值对应的一组CCLM参数,并将该一组CCLM参数确定为目标CCLM参数。
示例性的,在本申请中,编码器可以基于当前块的参数,利用多组CCLM参数分别对待预测图像分量进行预测 编码,计算多组CCLM参数中的每一组CCLM参数对应的率失真代价结果;最后便可以从计算得到的多个率失真代价结果中选取最小率失真代价结果,并将最小率失真代价结果对应的一组CCLM参数确定为当前块的目标CCLM参数。
进一步地,在本申请的实施例中,编码器在根据目标CCLM参数设置CCLM索引值并写入码流时,可以先将CCLM索引值设置为目标CCLM参数在多组CCLM参数中对应的索引序号,然后将CCLM索引值写入码流。也就是说,在本申请中,多组CCLM参数中的每一组CCLM参数均存在对应的索引序号,而编码器在从多组CCLM参数中确定出当前块使用的目标CCLM参数之后,便可以利用目标CCLM参数对应的索引序号设置CCLM索引值。
可以理解的是,在本申请的实施例中,编码器可以先确定多组参考点中的每组参考点的位置信息;然后可以根据每组参考点的位置信息,确定多组CCLM参数中的每组CCLM参数的索引序号。
需要说明的是,在本申请的实施例中,基于当前块的尺寸信息,每组参考点对应的位置信息可以包括起始位置和步长。具体地,编码器可以使用当前块的宽度W和高度H,对每组参考点的位置信息进行计算。
示例性的,在本申请的实施例中,编码器可以根据以下公式分别计算获得的起始位置Δ和步长L:
Δ=L/(N/2) (5)
s=Δ/2 (6)
其中,L为在当前块的上方相邻位置中参考点的数量,或者在当前块的左侧相邻位置中参考点的数量;N为期望用于建立参考点的子集的相邻样本的数量。
进一步地,在本申请的实施例中,编码器在根据每组参考点的位置信息,确定多组CCLM参数中的每组CCLM参数的索引序号时,可以先根据每组参考点的位置信息,确定多组参考点与当前块之间的多个距离参数;然后按照距离参数由小到大的顺序,依次设置多组CCLM参数中的每组CCLM参数的索引序号。
也就是说,在本申请中,编码器可以先根据多组参考点中的每组参考点的位置信息,分别计算获得多组参考点与当前块之间的多个距离参数,即多组参考点中的任一组参考点均对应有一个距离参数。接着,编码器可以对多个距离参数进行排序,例如,按照由小到大的顺序对多个距离参数进行排序,获得排序后的距离参数,相应地,编码器便可以根据排序后的距离参数对多组CCLM参数中的每组CCLM参数进行索引序号的设置。具体地,基于多组参考点、多组CCLM参数以及多组距离参数之间的对应关系,编码器可以按照排序后的距离参数依次设置多组CCLM参数中的每组CCLM参数的索引序号。
可以理解的是,在本申请的实施例中,编码器在根据目标CCLM参数设置CCLM索引值之后,可以将CCLM索引值写入码流中包含当前块编码数据的数据单元,以便于后续在解码器侧进行解析处理。
步骤103、根据目标CCLM参数,确定当前块的帧内预测值。
在本申请的实施例中,编码器在从多组CCLM参数中确定目标CCLM参数之后,便可以根据目标CCLM参数,确定当前块的帧内预测值。
可以理解的是,在本申请中,编码器在确定出当前块使用的目标CCLM参数之后,便可以利用目标CCLM参数进一步确定出当前块的帧内预测值,从而可以计算当前块与帧内预测值之间的预测差值。
示例性的,在本申请的实施例中,目标CCLM参数包括当前块帧内预测时使用的比例因子和偏移参数,因此,编码器在根据目标CCLM参数确定当前块的帧内预测值时,可以通过上述公式(1),利用编码块中(经过下采样的)位置坐标为[i,j]的采样点的第一图像分量重建值Rec
L[i,j],计算获得编码块中位置坐标为[i,j]的采样点的第二图像分量预测值Pred
C[i,j]。
示例性的,在本申请的实施例中,编码器在确定当前块的帧内预测值之后,便可以继续根据当前块的像素真实值与帧内预测值进行差值计算,将计算得到的差值作为预测差值,便于后续针对预测差值进行变换处理。
也就是说,在本申请的实施例中,编码器在根据目标CCLM参数,确定当前块的帧内预测值时,可以使用线性模型,根据目标CCLM参数和当前块的第一图像分量的重建值,计算当前块的第二图像分量的预测值。
具体地,在本申请中,第一图像分量是亮度分量;第二图像分量是色度分量。
图4为图像分量的预测方法的实现流程示意图二,如图4示,在本申请中,编码器在使用当前块的多组参考点,确定对应的多组CCLM参数之前,即步骤101之前,编码器预测图像分量的方法还可以包括以下步骤:
步骤104、确定CCLM模式索引参数;其中,CCLM模式索引参数用于指示当前块使用的CCLM模式,CCLM模式用于指示使用CCLM确定帧内预测值的计算推导方式。
步骤105、将CCLM模式索引参数写入码流。
在本申请的实施例中,编码器可以先确定当前块的CCLM模式索引参数,然后便可以利用CCLM模式索引参数确定出当前块使用的CCLM模式,从而便可以获得使用CCLM确定当前块的帧内预测值的计算推导方式。
可以理解的是,在本申请的实施例中,对于CCLM模式,具体可以包括多种不同的帧内预测模式,因此,编码器需要利用不同的索引参数对CCLM模式中的不同预测模式进行标定和区分。也就是说,不同的CCLM模式对应有不同的CCLM模式索引参数。
进一步地,在本申请中,编码器在确定当前块使用的CCLM模式之后,可以按照CCLM模式确定当前块的帧内预测值的计算推导方式,同时,可以确定CCLM模式对应的CCLM模式索引参数。
进一步地,在本申请的实施例中,编码器可以根据将CCLM模式索引参数的取值设置为指示当前块的使用的CCLM模式,并写入码流,传输至解码侧,便于后续在解码器通过解析码流获得的CCLM模式索引参数,以使解码器确定CCLM模式索引参数指示的CCLM模式。
本申请的实施例提出一种图像分量的预测方法,编码器在当前块使用CCLM确定当前块的帧内预测值时,使用当前块的多组参考点,确定对应的多组CCLM参数;其中,CCLM参数包括比例因子和偏移参数;从多组CCLM参数中确定目标CCLM参数,根据目标CCLM参数设置CCLM索引值并写入码流;其中,CCLM索引值用于指示使 用目标CCLM参数;根据目标CCLM参数,确定当前块的帧内预测值。由此可见,在本申请的实施例中,编码器在确定当前块使用CCLM确定当前块的帧内预测值时,可以基于与当前块相邻点的多组参考点确定对应的多组CCLM参数,并从多组CCLM参数中确定出最优的目标CCLM参数,编码器可以将指示使用目标CCLM参数的CCLM索引值写入码流,传输至解码侧,从而可以使解码器在解析码流之后获得CCLM索引值,并确定CCLM索引值指示的目标CCLM参数,便可以利用目标CCLM参数确定当前块的帧内预测值。也就是说,本申请提出的图像分量的预测方法,可以将当前块的多组CCLM参数中的目标CCLM参数写入码流中进行传递,从而可以使编解码器根据目标CCLM参数确定对当前块进行帧内预测处理,大大降低了编解码处理的复杂程度,提高了编解码效率。
基于上述实施例,本申请的再一实施例提出一种图像分量的预测方法,该图像分量的预测方法应用于解码器,图5为图像分量的预测方法的实现流程示意图三,如图5所示,解码器预测图像分量的方法可以包括以下步骤:
步骤201、解析码流,确定当前块的预测模式参数。
在本申请的实施例中,解码器可以解析码流,从而确定当前块的预测模式参数。具体地,解码器可以根据预测模式参数的取值进一步确定当前块使用的帧内预测模式,也就是说,在本申请中,预测模式参数可以指示当前块的编码模式及该模式相关的参数。
进一步地,在本申请的实施例中,编码模式可以包括传统帧内预测模式和非传统帧内预测模式这两大类。具体地,传统帧内预测模式可以包括DC模式、PLANAR模式以及角度模式等;非传统帧内预测模式又可以包括MIP模式、CCLM模式、IBC模式以及PLT模式等。
也就是说,在本申请的实施例中,解码器器可以通过预测模式参数来确定当前块的编码模式是传统帧内预测模式或非传统帧内预测模式的具体哪一种编码模式。
在本申请的实施例中,进一步地,在编码侧,编码器在确定当前块的预测模式参数时,可以先确定当前块的待预测图像分量;然后基于当前块的参数,利用多种预测模式分别对待预测图像分量进行预测编码,计算多种预测模式下每一种预测模式对应的率失真代价结果;最后便可以从计算得到的多个率失真代价结果中选取最小率失真代价结果,并将最小率失真代价结果对应的预测模式确定为当前块的预测模式参数。也就是说,在编码器侧,针对当前块可以采用多种预测模式分别对待预测图像分量进行编码。这里,多种预测模式通常包括有传统帧内预测模式和非传统帧内预测模式。
进一步地,在本申请的实施例中,编码器在根据该最小率失真代价结果对应的预测模式设置为当前块的预测模式参数之后,可以将预测模式参数写入码流中,传输至解码侧,从而使解码器通过解析码流获得当前块的预测模式参数,解码器进而可以使用所确定的预测模式对当前块进行解码,而且在这种预测模式下,可以使得预测残差小,能够提高解码效率。
步骤202、当预测模式参数指示使用CCLM确定当前块的帧内预测值时,解析码流,确定当前块的CCLM索引值。
步骤203、根据CCLM索引值,确定当前块的目标CCLM参数;其中,目标CCLM参数包括比例因子和偏移参数。
在本申请的实施例中,解码器在解析码流,确定当前块的预测模式参数之后,如果预测模式参数指示使用CCLM确定当前块的帧内预测值,那么解码器可以继续解析码流,确定当前块的CCLM索引值,然后便可以继续根据CCLM索引值,进一步地确定当前块的目标CCLM参数。
可以理解的是,在本申请中,CCLM索引值用于指示当前块使用目标CCLM参数确定当前块的帧内预测值。其中,目标CCLM参数包括比例因子和偏移参数。
需要说明的是,在本申请的实施例中,比例因子可以为上述公式(1)中的α,偏移参数可以为上述公式(1)中的β。
进一步地,在本申请的实施例中,解码器在根据CCLM索引值,确定当前块的目标CCLM参数时,可以先根据CCLM索引值,确定当前块的目标参考点;然后根据目标参考点,确定当前块的目标CCLM参数。
需要说明的是,在本申请的实施例中,目标参考点可以为与当前块相邻的一个或多个像素采样点。具体地,当前块存在多组参考点,而目标参考点可以为多组参考点中的一组参考点。
可以理解的是,在本申请中,解码器在根据CCLM索引值,确定当前块的目标参考点时,可以根据CCLM索引值,从当前块的多组参考点中,确定目标参考点。
需要说明的是,在本申请的实施例中,当前块的多组参考点可以包括当前块相邻的像素采样点,相应地,当前块的多组参考点中的每组参考点可以包含与当前块相邻的一个或多个预设位置的像素采样点。
具体地,在本申请中,解码器在根据CCLM索引值,从当前块的多组参考点中,确定目标参考点时,可以先确定多组参考点中的每组参考点的位置信息;然后根据每组参考点的位置信息,确定多组参考点与当前块之间的多个距离参数;进而可以按照距离参数由小到大的顺序,依次设置多组参考点中的每组参考点的位置索引序号;最后便可以从多组参考点中,选择位置索引序号与CCLM索引值所指示的索引序号相同的一组参考点作为目标参考点。
也就是说,在本申请中,解码器可以先分别计算多组参考点中的每组参考点的位置信息,即多组参考点中的任一组参考点均对应有一个位置信息,进而根据多组参考点中的每组参考点的位置信息,分别计算获得多组参考点与当前块之间的多个距离参数,即多组参考点中的任一组参考点均对应有一个距离参数。接着,解码器可以对多个距离参数进行排序,例如,按照由小到大的顺序对多个距离参数进行排序,获得排序后的距离参数,相应地,解码器便可以根据排序后的距离参数对多组参考点中的每组参考点进行位置索引序号的设置。具体地,基于多组参考点和多组距离参数之间的对应关系,解码器可以按照排序后的距离参数依次设置多组参考点中的每组参考点的位置索引序号。
进一步地,在本申请的实施例中,由于编码端中编码器是基于多组参考点、多组CCLM参数以及多组距离参数 之间的对应关系,按照排序后的距离参数依次设置多组CCLM参数中的每组CCLM参数的索引序号,而在解码端,解码器是基于多组参考点和多组距离参数之间的对应关系,按照排序后的距离参数依次设置多组参考点中的每组参考点的位置索引序号。因此,一组参考点的CCLM参数的索引序号与该组参考点的位置索引序号存在映射关系。进而可以使解码器在解析获得CCLM索引值之后,根据CCLM索引值所指示的索引序号,从多组参考点中选择出目标参考点。
示例性的,在本申请中,解码器解析码流获得的CCLM索引值所指示的索引序号为5,那么解码器可以将多组参考点中的、位置索引序号为5的一组参考点确定为目标参考点。
在本申请的实施例中,进一步地,解码器在根据CCLM索引值,确定当前块的目标CCLM参数时,还可以先使用当前块的多组参考点,确定对应的多组CCLM参数;然后再将多组CCLM参数中的、CCLM索引值指示的一组CCLM参数作为目标CCLM参数。
可以理解的是,在本申请中,当前块的多组参考点可以包括当前块相邻的像素采样点,相应地,当前块的多组参考点中的每组参考点可以包含与当前块相邻的一个或多个预设位置的像素采样点。
具体地,在本申请中,解码器在将多组CCLM参数中的、CCLM索引值指示的一组CCLM参数作为目标CCLM参数时,可以先确定多组参考点中的每组参考点的位置信息;然后根据每组参考点的位置信息,确定多组参考点与当前块之间的多个距离参数;进而可以按照距离参数由小到大的顺序,依次设置多组CCLM参数中的每组CCLM参数的索引序号;最后便可以将CCLM参数中的索引序号与CCLM索引值所指示的索引序号相同的一组CCLM参数作为目标CCLM参数。
也就是说,在本申请中,解码器可以先分别计算多组参考点中的每组参考点的位置信息,即多组参考点中的任一组参考点均对应有一个位置信息,进而根据多组参考点中的每组参考点的位置信息,分别计算获得多组参考点与当前块之间的多个距离参数,即多组参考点中的任一组参考点均对应有一个距离参数。接着,解码器可以对多个距离参数进行排序,例如,按照由小到大的顺序对多个距离参数进行排序,获得排序后的距离参数,相应地,解码器便可以根据排序后的距离参数对多组CCLM参数中的每组CCLM参数进行索引序号的设置。具体地,基于多组参考点、多组CCLM参数以及多组距离参数之间的对应关系,解码器可以按照排序后的距离参数依次设置多组CCLM参数中的每组CCLM参数的索引序号。
进一步地,在本申请的实施例中,由于编码端中编码器是基于多组参考点、多组CCLM参数以及多组距离参数之间的对应关系,按照排序后的距离参数依次设置多组CCLM参数中的每组CCLM参数的索引序号,而在解码端,解码器也是基于多组参考点、多组CCLM参数以及多组距离参数之间的对应关系,按照排序后的距离参数依次设置多组CCLM参数中的每组CCLM参数的索引序号。因此,解码器在解析获得CCLM索引值之后,根据CCLM索引值所指示的索引序号,从多组CCLM参数中选择出相应地一组CCLM参数作为目标CCLM参数。
示例性的,在本申请中,解码器解析码流获得的CCLM索引值所指示的索引序号为3,那么解码器可以将多组CCLM参数中的、索引序号为3的一组参考点确定为目标参考点。
步骤204、根据目标CCLM参数,确定当前块的帧内预测值。
在本申请的实施例中,解码器在根据CCLM索引值,确定当前块的目标CCLM参数之后,便可以根据目标CCLM参数,进一步确定当前块的帧内预测值。
可以理解的是,在本申请中,解码器在确定出当前块使用的目标CCLM参数之后,便可以利用目标CCLM参数进一步确定出当前块的帧内预测值,从而可以计算当前块与帧内预测值之间的预测差值。
示例性的,在本申请的实施例中,目标CCLM参数包括当前块帧内预测时使用的比例因子和偏移参数,因此,解码器在根据目标CCLM参数确定当前块的帧内预测值时,可以通过上述公式(1),利用编码块中(经过下采样的)位置坐标为[i,j]的采样点的第一图像分量重建值Rec
L[i,j],计算获得编码块中位置坐标为[i,j]的采样点的第二图像分量预测值Pred
C[i,j]。
示例性的,在本申请的实施例中,解码器在确定当前块的帧内预测值之后,便可以继续根据当前块的像素真实值与帧内预测值进行差值计算,将计算得到的差值作为预测差值,便于后续针对预测差值进行变换处理。
也就是说,在本申请的实施例中,解码器在根据目标CCLM参数,确定当前块的帧内预测值时,可以使用线性模型,根据目标CCLM参数和当前块的第一图像分量的重建值,计算当前块的第二图像分量的预测值。
具体地,在本申请中,第一图像分量是亮度分量;第二图像分量是色度分量。
图6为图像分量的预测方法的实现流程示意图四,如图6所示,在本申请中,解码器在解析码流,确定当前块的预测模式参数之后,即步骤101之后,解码器预测图像分量的方法还可以包括以下步骤:
步骤205、当预测模式参数指示使用CCLM确定当前块的帧内预测值时,解析码流,确定当前块的CCLM模式索引参数;其中,CCLM模式索引参数用于指示当前块使用的CCLM模式,CCLM模式用于指示使用CCLM确定帧内预测值的计算推导方式。
在本申请的实施例中,如果预测模式参数指示使用CCLM确定当前块的帧内预测值,解码器可以继续解析码流,确定当前块的CCLM模式索引参数。
需要说明的是,在本申请的实施例中,CCLM模式索引参数用于指示当前块使用的CCLM模式,CCLM模式用于指示使用CCLM确定帧内预测值的计算推导方式。
也就是说,在本申请中,解码器解析码流之后,可以先确定当前块的CCLM模式索引参数,然后便可以利用CCLM模式索引参数确定出当前块使用的CCLM模式,从而便可以获得使用CCLM确定当前块的帧内预测值的计算推导方式。
可以理解的是,在本申请的实施例中,对于CCLM模式,具体可以包括多种不同的帧内预测模式,因此,编码器需要利用不同的索引参数对CCLM模式中的不同预测模式进行标定和区分。也就是说,不同的CCLM模式对应有 不同的CCLM模式索引参数。
进一步地,在本申请中,解码器在确定当前块使用CCLM确定帧内预测值之后,可以按照CCLM模式索引参数指示的CCLM模式确定当前块的帧内预测值的计算推导方式。
本申请的实施例提出一种图像分量的预测方法,解码器解析码流,确定当前块的预测模式参数;当预测模式参数指示使用CCLM确定当前块的帧内预测值时,解析码流,确定当前块的CCLM索引值;根据CCLM索引值,确定当前块的目标CCLM参数;其中,目标CCLM参数包括比例因子和偏移参数;根据目标CCLM参数,确定当前块的帧内预测值。由此可见,在本申请的实施例中,编码器在确定当前块使用CCLM确定当前块的帧内预测值时,可以基于与当前块相邻点的多组参考点确定对应的多组CCLM参数,并从多组CCLM参数中确定出最优的目标CCLM参数,编码器可以将指示使用目标CCLM参数的CCLM索引值写入码流,传输至解码侧,从而可以使解码器在解析码流之后获得CCLM索引值,并确定CCLM索引值指示的目标CCLM参数,便可以利用目标CCLM参数确定当前块的帧内预测值。也就是说,本申请提出的图像分量的预测方法,可以将当前块的多组CCLM参数中的目标CCLM参数写入码流中进行传递,从而可以使编解码器根据目标CCLM参数确定对当前块进行帧内预测处理,大大降低了编解码处理的复杂程度,提高了编解码效率。
基于上述实施例,本申请的再一实施例提出一种图像分量的预测方法,该图像分量的预测方法应用于编码器,图7为图像分量的预测方法的实现流程示意图五,如图7所示,编码器预测图像分量的方法可以包括以下步骤:
步骤301、当当前块使用CCLM确定帧内预测值时,使用当前块的多组参考点计算多组CCLM参数。
步骤302、根据多组CCLM参数建立CCLM参数列表。
步骤303、从CCLM参数列表中选择目标CCLM参数。
步骤304、根据目标CCLM参数设置CCLM索引值并写入码流;其中,CCLM索引值用于指示使用目标CCLM参数。
在本申请的实施例中,编码器将输入视频中的图片分成一个或多个CTU,即将图片分成图块,可选地,进一步将图块分成一个或多个砖块,其中图块和砖块中的每一个包含一个或多个完整的和/或部分的CTU,形成一个或多个切片,其中切片可包含处于图片中的图块的光栅顺序的一个或多个图块,或者覆盖图片中的矩形区域的一个或多个图块,还可形成一个或多个子图片,其中子图片包含一个或多个切片、图块或砖块。
进一步地,在本申请的实施例中,编码器可以继续对分割后的CTU迭代地使用四叉树分裂、二元分裂和三元分裂,进一步将CTU分成更小的编码单元(CU)。运动补偿单元和运动估计单元可以用于获得CU的帧间当前块。帧内预测单元用于确定待用以编码该视频编码块的帧内预测模式,可使用包括MIP模式的各种帧内预测模式获得CU的帧内预测块。在示例中,率失真优化的运动估计方法可被运动补偿单元和运动估计单元调用以获得帧间当前块,以及率失真优化的模式确定方法可被帧内预测单元调用以获得帧内预测块。帧内预测单元103确定CCLM模式(包括其模式指数分别等于INTRA_LT_CCLM、INTRA_L_CCLM和INTRA_T_CCLM的帧内预测模式)是否用于获得帧内预测块。
进一步地,在本申请的实施例中,编码器可以从帧间当前块和帧内预测块选择当前块,并传输当前块,同时,还可以传输所选择的当前块的对应模式的模式参数。具体地,当当前块使用CCLM确定帧内预测值时,可以使用当前块的多组参考点计算多组CCLM参数。其中,多组参考点包括当前块相邻的像素采样点。
需要说明的是,在本申请的实施例中,当所选择的当前块通过使用CCLM模式获得时,可以在获得帧内预测块时使用的CCLM模式参数传送到编码单元,其中如果启用柔性CCLM参考,则CCLM模式参数包括CCLM模式索引参数和CCLM索引值。
图8为当前块的参考点的位置的示意图一,图9为当前块的参考点的位置的示意图二,图10为当前块的参考点的位置的示意图三,图8至图10分别示出了在INTRA_LT_CCLM模式、INTRA_L_CCLM模式和INTRA_T_CCLM模式下获取当前块的参考点的位置的示例,其中参考点位置由黑色圆点标记。块3101、3201和3301包括当前块的亮度分量的参考点,块3102、3202和3302包括当前块的第一色度分量(例如Cb或U分量)的参考点,块3103、3203和3303包括当前块的第二色度分量(例如Cr或V分量)的参考点。
进一步地,在本申请的实施例中,编码器可以使用块的宽度W和高度H(在图2A至图2C中标记为W(W')和H(H'))和两个参数(即起始位置s和步长Δ)确定参考点的位置。
进一步地,在本申请的实施例中,编码器可以计算Δ的值,得到Δ=L/(N/2),其中L指示在当前块的上方相邻位置中参考点的数量,或者在当前块的左侧相邻位置中参考点的数量;N指示期望用于建立参考点的子集的相邻样本的数量。编码器计算s的值,得到s=Δ/2。
图11为确定INTRA_T_CCLM模式的参考点位置的示意图,如图11所示,假设L等于16,N等于8以及参考点的数量等于4,则编码器计算Δ,得到Δ=L/(N/2)=16/(8/2)=4,以及计算s,得到s=Δ/2=4/2=2。即,编码器确定参考点的起始位置位于图11中的样本位置2,到达下一个相邻参考点位置的步长等于4。编码器从样本位置2、6、10和14获取参考点,以形成参考点的子集。
需要说明的是,在本申请的实施例中,编码器使用获取的参考点获得的CCLM参数可以包括比例因子和偏移参数,即上述公式(1)中的比例因子α和偏移采纳数β。
进一步地,在本申请的实施例中,编码器通过改变参考点的位置,可以获得CCLM参数(α和β)的一个或多个不同的值,即编码器使用当前块的多组参考点可以确定对应的多组CCLM参数。当使用多组位置获得不同的CCLM参数时,编码器可以从多组CCLM参数中选择目标CCLM参数(例如使用率失真优化的模式确定方法)。
需要说明的是,在本申请的实施例中,编码器可以通过语法的设置来对目标CCLM参数进行指示,同时,还可以通过语法的设置来对是否允许多组CCLM参数进行指示。
示例性的,在本申请中,表1为CCLM的语法一,如表1所示,编码器可以通过CCLM索引值cclm_ref_index的设置来指示目标CCLM参数,即设置表1中的cclm_ref_index以指示目标CCLM参数。
表1
示例性的,在本申请中,表2为CCLM的语法二,如表2所示,编码器可以通过设置cclm_multiple_ref_enable_flag来确定是否允许多组CCLM参数。
表2
| …… | Descriptor |
| CCLM_multiple_ref_enable_flag | u(1) |
| …… |
进一步地,在本申请的实施例中,编码器在获取当前块的多组参考点之后,可以调用步骤301以使用多组参考点计算多组CCLM参数。然后可以调用步骤302,以根据多组CCLM参数建立CCLM参数列表。
示例性的,在本申请中,表3为CCLM的语法三,如表3所示,编码器可以向CCLM参数列表中的CCLM参数分配cclm_ref_index,其中CCLM参数包含比例因子α和偏移参数β。
表3
进一步地,在本申请的实施例中,编码器可以调用步骤303以从CCLM参数列表中选择目标CCLM参数。
示例性的,在本申请中,编码器确定CCLM参数列表中的对应CCLM参数的成本值,即率失真优化方法,然后将具有最优成本的CCLM参数确定为目标CCLM参数。
进一步地,在本申请的实施例中,编码器可以调用步骤304以将cclm_ref_index设置成等于CCLM参数列表中的目标CCLM参数的索引序号。
在本申请的实施例中,进一步地,图12为图像分量的预测方法的实现流程示意图六,如图12所示,编码器预测图像分量的方法可以包括以下步骤:
步骤401、当当前块使用CCLM确定帧内预测值时,使用当前块的多组参考点计算多组CCLM参数。
步骤402、根据多组CCLM参数确定目标CCLM参数。
步骤403、根据目标CCLM参数设置CCLM索引值并写入码流;其中,CCLM索引值用于指示使用目标CCLM参数。
可以理解的是,在本申请的实施例中,由于当前块的多组CCLM参数(即比例因子和偏移参数)是由当前块的多组参考点确定的,因此,编码器也可以将CCLM参数表示成通过对应的s和Δ提取参考点的位置。
示例性的,在本申请中,表4示出了CCLM模型的参考位置的示例。如表4所示,INTRA_LT_CCLM、INTRA_L_CCLM和INTRA_T_CCLM可以是3个连续的正整数;IntraPredModeY[x0][y0]指示在当前块的顶部左侧亮度样本的位置等于图片或子图片中的(x0,y0)的情况下当前块的帧内预测模式;cclm_ref_index的值对应于各种s和Δ参数,以确定参考点然后确定CCLM参数。在调用的率失真优化过程中,参考点的位置可表示成s=cclmRefPosition[x0][y0][IntraPredModeY[x0][y0]-INTRA_LT_CCLM][cclm_ref_index][0],以及Δ=cclmRefPosition[x0][y0][IntraPredModeY[x0][y0]-INTRA_LT_CCLM][cclm_ref_index][1]。
表4
进一步地,在本申请的实施例中,编码器可以调用步骤401以使用多组参考点的s和Δ获得多组参考位置,然后 计算获得对应的多组CCLM参数。编码器可以调用步骤402以使用例如类似于步骤302和303的方法确定最优CCLM模式。最后,编码器可以将cclm_ref_index设置成等于目标CCLM参数的索引序号。
需要说明的是,在本申请的实施例中,各种CCLM模式可具有不同数量的候选CCLM参数。如表4所示,对于INTRA_LT_CCLM、INTRA_L_CCLM和INTRA_T_CCLM这三个CCLM模式,由s和Δ表示的参考位置的子集的数量可以不同。
需要说明的是,在本申请的实施例中,当编码器确定不使用CCLM参数的多个子集时,可以使用默认位置获得参考点。默认位置的示例是图11中的示例。
进一步地,在本申请的实施例中,编码器根据当前块的帧内预测值计算残差,例如,编码器计算分割后的CU和CU的预测块之间的差,即残差CU。编码器读取残差CU并对残差CU执行一个或多个变换操作以获得系数。量编码器对系数进行量化并输出量化系数(即水平)。
进一步地,在本申请的实施例中,编码器中的反量化单元对量化系数执行缩放操作以输出重构系数。逆变换单元执行对应于变换单元中的变换的一个或多个逆变换并输出重构残差。加法器通过使重构残差和来自预测单元的CU的预测块相加而计算重构CU。加法器还将其输出发送到预测单元以用作帧内预测参考。在图片或子图片中的所有CU被重构之后,滤波单元对重构图片或子图片执行环路滤波。滤波单元包含一个或多个滤波器,例如去块滤波器、采样点自适应偏移(SAO)滤波器、自适应环路滤波器(ALF)、亮度映射和色度缩放(LMCS)滤波器以及基于神经网络的滤波器。替代地,当滤波单元确定CU不用作对其它CU进行编码的参考时,滤波单元对CU中的一个或多个目标像素执行环路滤波。
滤波单元的输出是解码图片或子图片,解码图片或子图片发送到DPB(解码图片缓冲器)。DPB根据时序和控制信息输出解码图片。存储在DPB中的图片还可用作预测单元执行帧间预测或帧内预测的参考。
熵编码单元将来自编码器中的单元的参数(获得解码图片所必需的)以及控制参数和补充信息转换成二元表示,并根据每个数据单元的语法结构将这样的二元表示写入生成的视频比特流中。
熵编码单元将表1中的cclm_ref_index编码到比特流中对应于当前块的数据单元中,其中在表1中,ae(v)是对应于在VVC WD中详细说明的ae(v)的解析过程的熵编码方法。可选地,编码器还可确定在通过帧内预测单元确定CCLM模式参数时是否允许使用参考位置的多个子集。熵编码单元可将表2中的语法元素编码到比特流中的一个或多个随后的数据单元中,语法元素包括(从较高水平到较低水平)序列水平参数集(例如序列参数集(SPS))、图片或子图片水平参数集(例如图片参数集(PPS))、自适应参数集(APS)、切片标头、切片数据中的图块的语法、切片数据中的砖块的语法、编码树单元(CTU)。熵编码单元使用u(1)对cclm_multiple_ref_enable_flag进行编码。u(1)是对应于在VVC WD中详细说明的u(1)的解析过程的熵编码方法。可选地,较低水平中的cclm_multiple_ref_enable_flag可推翻较高水平中的对应标志。
本申请的实施例提出一种图像分量的预测方法,编码器在当前块使用CCLM确定当前块的帧内预测值时,使用当前块的多组参考点,确定对应的多组CCLM参数;其中,CCLM参数包括比例因子和偏移参数;从多组CCLM参数中确定目标CCLM参数,根据目标CCLM参数设置CCLM索引值并写入码流;其中,CCLM索引值用于指示使用目标CCLM参数;根据目标CCLM参数,确定当前块的帧内预测值。由此可见,在本申请的实施例中,编码器在确定当前块使用CCLM确定当前块的帧内预测值时,可以基于与当前块相邻点的多组参考点确定对应的多组CCLM参数,并从多组CCLM参数中确定出最优的目标CCLM参数,编码器可以将指示使用目标CCLM参数的CCLM索引值写入码流,传输至解码侧,从而可以使解码器在解析码流之后获得CCLM索引值,并确定CCLM索引值指示的目标CCLM参数,便可以利用目标CCLM参数确定当前块的帧内预测值。也就是说,本申请提出的图像分量的预测方法,可以将当前块的多组CCLM参数中的目标CCLM参数写入码流中进行传递,从而可以使编解码器根据目标CCLM参数确定对当前块进行帧内预测处理,大大降低了编解码处理的复杂程度,提高了编解码效率。
基于上述实施例,本申请的再一实施例提出一种图像分量的预测方法,该图像分量的预测方法应用于解码器,图13为图像分量的预测方法的实现流程示意图七,如图13所示,解码器预测图像分量的方法可以包括以下步骤:
步骤501、当当前块使用CCLM确定当前块的帧内预测值时,解析码流,确定当前块的CCLM索引值。
步骤502、建立当前块的CCLM参数列表。
步骤503、根据CCLM索引值从CCLM参数列表中选择目标CCLM参数。
在本申请的实施例中,解码器的输入比特流可以是由编码器生成的比特流,比特流即码流。解码器的解析单元对输入比特流进行解析并从输入比特流获得语法元素的值。解码器的解析单元将语法元素的二元表示转换成数字值并将数字值发送到解码器中的单元以获得一个或多个解码图片。解码器的解析单元还可从输入比特流解析一个或多个语法元素以显示解码图片。
进一步地,在本申请的实施例中,解码器的解析单元可获得一个或多个语法元素,该一个或多个语法元素指示当前块(即当前块)的参考点位置。
示例性的,在本申请中,解码器的解析单元可从输入比特流中的数据单元获得cclm_ref_index,其中数据单元可以是切片标头、参数集、切片数据、补充增强信息消息等中的至少一个。
具体地,在本申请中,输入比特流中的CCLM索引值cclm_ref_index的语法结构如上述表1所示。解码器的解析单元使用对应于ae(v)的熵编码方法,以将比特流中的二元表示转换成cclm_ref_index的数字值。
可以理解的是,在本申请的实施例中,解码器可以先解析码流,确定当前块的预测模式参数。
示例性的,在本申请中,在对cclm_ref_index进行解析之前,解码器的解析单元首先可获得指示是否允许柔性参考点位置用于CCLM模式的语法元素的值。例如,解码器的解析单元从与包含当前块的切片直接或间接相关的活性参数集获得该语法元素,例如被称为预测模式参数cclm_multiple_ref_enable_flag。如果cclm_multiple_ref_enable_flag等于1,如果CCLM模式在比特流中指示用于对当前块进行解码的帧内预测模式,则解码器的解析单元可从当前块 的编码位获得cclm_ref_index。另外,如果cclm_multiple_ref_enable_flag等于0,则在输入比特流中的当前块的部分中不存在cclm_ref_index,原因是CCLM模式不用于对当前块进行解码。
示例性的,在本申请中,上述表2用于表示一个或多个数据单元中的cclm_multiple_ref_enable_flag的语法结构,数据单元包括例如参数集、切片标头、切片数据、CTU和补充增强信息消息、输入比特流。解码器的解析单元使用对应于u(1)的熵解码方法,以将比特流中的二元表示转换成cclm_multiple_ref_enable_flag的数字值。类似于编码器,较低水平中的cclm_multiple_ref_enable_flag可推翻较高水平中的对应标志。
进一步地,在本申请的实施例中,解码器的解析单元将cclm_ref_index以及用于获得一个或多个解码图片的其它语法元素发送到解码器中的预测单元确定当前块(例如CU)的预测块。当指示帧间解码模式用于对当前块进行解码时,预测单元将来自解码器的解析单元的相对参数传送到MC单元以获得帧间预测块。当指示帧内预测模式(能够包括CCLM帧内预测模式)用于对当前块进行解码时,预测单元将来自解码器的解析单元的相对参数传送到帧内预测单元以获得帧内预测块。
进一步地,在本申请的实施例中,当解码器确定使用CCLM帧内预测模式时,帧内预测单元使用与图8至图10中所示的相同类型的CCLM模式,以获得当前块的预测块。解码器中的帧内预测块的获得过程与编码器中的过程类似。帧内预测单元获得由cclm_ref_index指示的参考点位置,以与编码器的帧内预测单元的计算方式相同的方式计算CCLM参数,最后使用上述公式(1)所示的线性模型计算当前块的帧内预测块。
可以理解的是,在本申请的实施例中,在步骤501中解码器的解析单元执行以从输入比特流获得CCLM索引值cclm_ref_index。在获取多组参考点的一个以上子集之后,帧内预测单元调用步骤502以使用子集计算多组参考点对应的多组CCLM参数,在计算多组CCLM参数时子集的顺序和每个子集中的参考点的位置与编码器的帧内预测单元所使用的顺序和位置相同,帧内预测单元调用步骤502以建立CCLM参数列表。
示例性的,在本申请中,如上述表3所示,解码器还可以向CCLM参数CCLM参数列表中的CCLM参数分配指数,其中CCLM参数包含比例因子和偏移参数。帧内预测单元调用步骤503以在CCLM参数列表中选择其索引序号等于cclm_ref_index的值的目标CCLM参数(目标CCLM参数包括比例因子和偏移参数)。
在本申请的实施例中,进一步地,图14为图像分量的预测方法的实现流程示意图八,如图14所示,解码器预测图像分量的方法可以包括以下步骤:
步骤601、当当前块使用CCLM确定当前块的帧内预测值时,解析码流,确定当前块的CCLM索引值。
步骤602、根据CCLM索引值确定目标参考点。
步骤603、根据目标参考点确定目标CCLM参数。
在本申请的实施例中,由于当前块的多组CCLM参数(即比例因子和偏移参数)是由当前块的多组参考点确定的,因此,解码器也可以将CCLM参数表示成通过对应的s和Δ提取参考点的位置。
示例性的,在本申请中,如上述表4所示,INTRA_LT_CCLM、INTRA_L_CCLM和INTRA_T_CCLM可以是3个连续的正整数;IntraPredModeY[x0][y0]指示在当前块的顶部左侧亮度样本的位置等于图片或子图片中的(x0,y0)的情况下当前块的帧内预测模式;cclm_ref_index的值对应于各种s和Δ参数,以确定参考点然后确定CCLM参数。在调用的率失真优化过程中,参考点的位置可表示成s=cclmRefPosition[x0][y0][IntraPredModeY[x0][y0]-INTRA_LT_CCLM][cclm_ref_index][0],以及Δ=cclmRefPosition[x0][y0][IntraPredModeY[x0][y0]-INTRA_LT_CCLM][cclm_ref_index][1]。
可以理解的是,在本申请的实施例中,步骤601由解码器的解析单元执行以从输入比特流获得cclm_ref_index。帧内预测单元调用步骤602以使用cclm_ref_index获得目标参考点,如表4中的示例性结构表示的,关于当前块及其顶部左侧亮度样本(x0,y0),帧内预测单元确定目标参考点,得到s=cclmRefPosition[x0][y0][IntraPredModeY[x0][y0]-INTRA_LT_CCLM][cclm_ref_index][0],以及Δ=CCLMRefPosition[x0][y0][IntraPredModeY[x0][y0]-INTRA_LT_CCLM][cclm_ref_index][1]。帧内预测单元调用步骤603以确定目标参考点的位置,然后计算用于对当前块进行解码的、包括比例因子和偏移参数的目标CCLM参数。
需要说明的是,在本申请的实施例中,各种CCLM模式可具有不同数量的候选CCLM参数。如表4所示,对于INTRA_LT_CCLM、INTRA_L_CCLM和INTRA_T_CCLM这三个CCLM模式,由s和Δ表示的参考位置的子集的数量可以不同。
可以理解的是,在本申请中,解码器的缩放单元具有与编码器中的反量化单元的功能相同的功能。解码器的缩放单元对来自解码器的解析单元的量化系数(即水平)执行缩放操作以获得重构系数。解码器的变换单元具有与编码器中的逆变换单元的功能相同的功能。解码器的变换单元执行一个或多个变换操作(即通过编码器中的逆变换单元执行的一个或多个变换操作的反操作)以获得重构残差。解码器的加法器对其输入(来自预测单元的当前块和来自解码器的变换单元的重构残差)执行相加操作以获得当前块的重构块。重构块还发送到预测单元以用作在帧内预测模式下编码的其它块的参考。
在图片或子图片中的所有CU被重构之后,滤波单元对重构图片或子图片执行环路滤波。滤波单元包含一个或多个滤波器,例如去块滤波器、采样点自适应偏移(SAO)滤波器、自适应环路滤波器(ALF)、亮度映射和色度缩放(LMCS)滤波器以及基于神经网络的滤波器。替代地,当滤波单元确定重构块不用作对其它块进行解码的参考时,滤波单元对重构块中的一个或多个目标像素执行环路滤波。
滤波单元的输出是解码图片或子图片,解码图片或子图片发送到DPB(解码图片缓冲器)。DPB根据时序和控制信息输出解码图片。存储在DPB中的图片还可用作通过预测单元执行帧间预测或帧内预测的参考。
本申请的实施例提出一种图像分量的预测方法,解码器解析码流,确定当前块的预测模式参数;当预测模式参数指示使用CCLM确定当前块的帧内预测值时,解析码流,确定当前块的CCLM索引值;根据CCLM索引值,确定当前块的目标CCLM参数;其中,目标CCLM参数包括比例因子和偏移参数;根据目标CCLM参数,确定当前 块的帧内预测值。由此可见,在本申请的实施例中,编码器在确定当前块使用CCLM确定当前块的帧内预测值时,可以基于与当前块相邻点的多组参考点确定对应的多组CCLM参数,并从多组CCLM参数中确定出最优的目标CCLM参数,编码器可以将指示使用目标CCLM参数的CCLM索引值写入码流,传输至解码侧,从而可以使解码器在解析码流之后获得CCLM索引值,并确定CCLM索引值指示的目标CCLM参数,便可以利用目标CCLM参数确定当前块的帧内预测值。也就是说,本申请提出的图像分量的预测方法,可以将当前块的多组CCLM参数中的目标CCLM参数写入码流中进行传递,从而可以使编解码器根据目标CCLM参数确定对当前块进行帧内预测处理,大大降低了编解码处理的复杂程度,提高了编解码效率。
基于上述实施例,在本申请的另一实施例中,图15为发送设备的组成结构示意图,如图15所示,发送设备500可以包括采集单元501、编码器300以及存储/发送单元502。
采集单元501获取视频信号并将视频信号传送到编码器300。采集单元501可以是包含一个或多个相机(包括深度相机)的设备。采集单元501可以是对比特流进行部分或完全解码以获得视频的设备。采集单元501还可包含一个或多个元件以捕捉音频信号。编码器300的实施例是编码器,对来自采集单元501的作为其输入视频的视频信号进行编码并生成视频比特流。编码器300还可包含一个或多个音频编码器以对音频信号进行编码而生成音频比特流。存储/发送单元502从编码器300接收视频比特流。存储/发送单元502还可从编码器300接收音频比特流并将视频比特流和音频比特流压缩在一起以形成媒体文件(例如基于ISO的媒体文件格式)或传输流。可选地,存储/发送单元502将媒体文件或传输流写入存储单元,例如硬盘、DVD盘、云、便携式存储设备。可选地,存储/发送单元502将比特流发送到传输网络,例如因特网、有线网络、蜂窝网络、无线局域网等。
图16为目标设备的组成结构示意图,如图16所示,目标设备600可以包括接收单元601、编码器300以及渲染单元602。
接收单元601从网络接收媒体文件或传输流或者从存储设备读取媒体文件或传输流。接收单元601将来自媒体文件或传输流的视频比特流和音频比特流分开。接收单元601还可通过提取视频比特流而生成新的视频比特流。接收单元601还可通过提取音频比特流而生成新的音频比特流。编码器300对来自接收单元601的视频比特流和音频比特流进行解码,以获得解码视频以及对应于一个或多个声道的一个或多个解码音频。渲染单元602对重构视频执行操作,使之适合于显示出来。这样的操作可包括提高感知质量的如下操作中的一个或多个:降噪、合成、颜色空间的转换、上采样、下采样等。渲染单元602还可对解码音频执行操作,以提高显示出来的音频信号的感知质量。
图17为通信系统的组成结构示意图,如图17所示,通信系统700可以包括源设备701、存储介质/传输网络702以及目标设备600。
源设备701可以为发送设备500,存储/发送单元502的输出被存储介质/传输网络702处理以存储或传输比特流。目标设备600中的接收单元601从存储介质/传输网络702获得比特流。接收单元601可从媒体文件或传输流提取新的视频比特流。接收单元601还可从媒体文件或传输流提取新的音频比特流。
如上所公开的,公开的方法和设备使用多组CCLM参数(即线性模型参数、比例因子和偏移参数)并将参考位置指数传递到CU数据中以用于确定CCLM模式参数。在实施例中提供两种方法。第一种方法在于构建包含数个候选CCLM参数列表。指示待使用的候选CCLM参数的指数传递到CU数据中。第二种方法在于传递CCLM块的参考位置,原因是CCLM参数通过使用参考位置的样本来计算。在本VVC设计中,参考点位置可通过开始点s和相邻样本之间的步长Δ确定,因此参考位置指数传递到CU数据中以指示用于定位参考点位置的s和Δ的值,参考点位置用于提取参考点然后确定CCLM模式参数。
基于上述实施例,在本申请的再一实施例中,图18为编码器的组成结构示意图一,如图18所示,本申请实施例提出的编码器300可以包括第一确定部分301,设置部分302,
所述第一确定部分301,配置为在当前块使用CCLM确定所述当前块的帧内预测值时,使用所述当前块的多组参考点,确定对应的多组CCLM参数;其中,所述CCLM参数包括比例因子和偏移参数;以及从所述多组CCLM参数中确定目标CCLM参数;
所述设置部分302,配置为根据所述目标CCLM参数设置CCLM索引值并写入码流;其中,所述CCLM索引值用于指示使用所述目标CCLM参数;
所述第一确定部分301,还配置为根据所述目标CCLM参数,确定所述当前块的帧内预测值。
进一步地,在本申请的实施例中,所述第一确定部分301,具体配置为所述多组参考点包括所述当前块相邻的像素采样点;使用所述多组参考点中的一组参考点,计算所述一组参考点对应的一组CCLM参数;遍历所述多组参考点,确定所述多组CCLM参数。
进一步地,在本申请的实施例中,所述第一确定部分301,还具体配置为使用率失真优化的方法,从所述多组CCLM参数中选择目标代价函数最优值对应的一组CCLM参数,确定为所述目标CCLM参数。
进一步地,在本申请的实施例中,所述设置部分302,具体配置为将所述CCLM索引值设置为所述目标CCLM参数在所述多组CCLM参数中对应的索引序号;将所述CCLM索引值写入码流。
进一步地,在本申请的实施例中,所述第一确定部分301,还配置为确定所述多组参考点中的每组参考点的位置信息;根据所述每组参考点的位置信息,确定所述多组CCLM参数中的每组CCLM参数的索引序号。
进一步地,在本申请的实施例中,所述第一确定部分301,还具体配置为根据所述每组参考点的位置信息,确定所述多组参考点与所述当前块之间的多个距离参数;按照所述距离参数由小到大的顺序,依次设置所述多组CCLM参数中的每组CCLM参数的索引序号。
进一步地,在本申请的实施例中,所述设置部分302,还具体配置为将所述CCLM索引值写入所述码流中包含所述当前块编码数据的数据单元。
进一步地,在本申请的实施例中,所述第一确定部分301,还具体配置为使用线性模型,根据所述目标CCLM 参数和所述当前块的第一图像分量的重建值,计算所述当前块的第二图像分量的预测值。
进一步地,在本申请的实施例中,所述第一图像分量是亮度分量;所述第二图像分量是色度分量。
进一步地,在本申请的实施例中,所述第一确定部分301,还具体配置为确定CCLM模式索引参数;其中,所述CCLM模式索引参数用于指示所述当前块使用的CCLM模式,所述CCLM模式用于指示使用CCLM确定所述帧内预测值的计算推导方式;将所述CCLM模式索引参数写入码流。
进一步地,在本申请的实施例中,所述设置部分302,还配置为在所述当前块使用CCLM确定所述当前块的帧内预测值时,设置所述当前块的预测模式参数,并写入码流。
图19为编码器的组成结构示意图二,如图19所示,本申请实施例提出的编码器300还可以包括第一处理器303、存储有第一处理器303可执行指令的第一存储器304、第一通信接口305,和用于连接第一处理器303、第一存储器304以及第一通信接口305的第一总线306。
进一步地,在本申请的实施例中,上述第一处理器303,用于在当前块使用CCLM确定所述当前块的帧内预测值时,使用所述当前块的多组参考点,确定对应的多组CCLM参数;其中,所述CCLM参数包括比例因子和偏移参数;从所述多组CCLM参数中确定目标CCLM参数,根据所述目标CCLM参数设置CCLM索引值并写入码流;其中,所述CCLM索引值用于指示使用所述目标CCLM参数;根据所述目标CCLM参数,确定所述当前块的帧内预测值。
另外,在本实施例中的各功能模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
集成的单元如果以软件功能模块的形式实现并非作为独立的产品进行销售或使用时,可以存储在一个计算机可读取存储介质中,基于这样的理解,本实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
本申请实施例提供了一种图像编码器,该编码器在当前块使用CCLM确定当前块的帧内预测值时,使用当前块的多组参考点,确定对应的多组CCLM参数;其中,CCLM参数包括比例因子和偏移参数;从多组CCLM参数中确定目标CCLM参数,根据目标CCLM参数设置CCLM索引值并写入码流;其中,CCLM索引值用于指示使用目标CCLM参数;根据目标CCLM参数,确定当前块的帧内预测值。由此可见,在本申请的实施例中,编码器在确定当前块使用CCLM确定当前块的帧内预测值时,可以基于与当前块相邻点的多组参考点确定对应的多组CCLM参数,并从多组CCLM参数中确定出最优的目标CCLM参数,编码器可以将指示使用目标CCLM参数的CCLM索引值写入码流,传输至解码侧,从而可以使解码器在解析码流之后获得CCLM索引值,并确定CCLM索引值指示的目标CCLM参数,便可以利用目标CCLM参数确定当前块的帧内预测值。也就是说,本申请提出的图像分量的预测方法,可以将当前块的多组CCLM参数中的目标CCLM参数写入码流中进行传递,从而可以使编解码器根据目标CCLM参数确定对当前块进行帧内预测处理,大大降低了编解码处理的复杂程度,提高了编解码效率。
基于上述实施例,在本申请的另一实施例中,图20为解码器的组成结构示意图一,如图20所示,本申请实施例提出的解码器400可以包括解析部分401,第二确定部分402,
所述解析部分401,配置为解析码流;
所述第二确定部分402,配置为确定所述当前块的预测模式参数;
所述解析部分401,还配置为当所述预测模式参数指示使用CCLM确定所述当前块的帧内预测值时,解析所述码流;
所述第二确定部分402,还配置为确定所述当前块的CCLM索引值;以及根据所述CCLM索引值,确定所述当前块的目标CCLM参数;其中,所述目标CCLM参数包括比例因子和偏移参数;以及根据所述目标CCLM参数,确定所述当前块的帧内预测值。
进一步地,在本申请的实施例中,所述第二确定部分402,具体配置为根据所述CCLM索引值,确定所述当前块的目标参考点;其中,所述目标参考点是所述当前块相邻的一个或多个像素采样点;根据所述目标参考点,确定所述当前块的目标CCLM参数。
进一步地,在本申请的实施例中,所述第二确定部分402,还具体配置为根据所述CCLM索引值所指示的索引序号,从所述当前块的多组参考点中,确定所述目标参考点;其中,所述多组参考点中的每组参考点包含与所述当前块相邻的一个或多个预设位置的像素采样点。
进一步地,在本申请的实施例中,所述第二确定部分402,还具体配置为确定所述多组参考点中的每组参考点的位置信息;根据所述每组参考点的位置信息,确定所述多组参考点与所述当前块之间的多个距离参数;按照所述距离参数由小到大的顺序,依次设置所述多组参考点中的每组参考点的位置索引序号;从所述多组参考点中,选择位置索引序号与所述CCLM索引值所指示的索引序号相同的一组参考点作为所述目标参考点。
进一步地,在本申请的实施例中,所述第二确定部分402,还具体配置为使用所述当前块的多组参考点,确定对应的多组CCLM参数;其中,所述多组参考点中的每组参考点包含与所述当前块相邻的一个或多个预设位置的像素采样点;将所述多组CCLM参数中的、所述CCLM索引值指示的一组CCLM参数作为所述目标CCLM参数。
进一步地,在本申请的实施例中,所述第二确定部分402,还具体配置为确定所述多组参考点中的每组参考点的位置信息;根据所述每组参考点的位置信息,确定所述多组参考点与所述当前块之间的多个距离参数;按照所述距离参数由小到大的顺序,依次设置所述多组CCLM参数中的每组CCLM参数的索引序号;将所述CCLM参数中的 索引序号与所述CCLM索引值所指示的索引序号相同的一组CCLM参数作为所述目标CCLM参数。
进一步地,在本申请的实施例中,所述第二确定部分402,还具体配置为使用线性模型,根据所述目标CCLM参数和所述当前块的第一图像分量的重建值,计算所述当前块的第二图像分量的预测值。
进一步地,在本申请的实施例中,所述第一图像分量是亮度分量;所述第二图像分量是色度分量。
进一步地,在本申请的实施例中,所述解析部分401,还配置为所述解析码流,确定所述当前块的预测模式参数之后,当所述预测模式参数指示使用CCLM确定所述当前块的帧内预测值时,解析所述码流;
所述第二确定部分402,还配置为确定所述当前块的CCLM模式索引参数;其中,所述CCLM模式索引参数用于指示所述当前块使用的CCLM模式,所述CCLM模式用于指示使用CCLM确定所述帧内预测值的计算推导方式。
图21为解码器的组成结构示意图二,如图21所示,本申请实施例提出的解码器400还可以包括第二处理器403、存储有第二处理器403可执行指令的第二存储器404、第二通信接口405,和用于连接第二处理器403、第二存储器404以及第二通信接口405的第二总线406。
进一步地,在本申请的实施例中,上述第二处理器403,用于解析码流,确定所述当前块的预测模式参数;当所述预测模式参数指示使用CCLM确定所述当前块的帧内预测值时,解析所述码流,确定所述当前块的CCLM索引值;根据所述CCLM索引值,确定所述当前块的目标CCLM参数;其中,所述目标CCLM参数包括比例因子和偏移参数;根据所述目标CCLM参数,确定所述当前块的帧内预测值。
另外,在本实施例中的各功能模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
集成的单元如果以软件功能模块的形式实现并非作为独立的产品进行销售或使用时,可以存储在一个计算机可读取存储介质中,基于这样的理解,本实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或processor(处理器)执行本实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
本申请实施例提供了一种图像解码器,该解码器解析码流,确定当前块的预测模式参数;当预测模式参数指示使用CCLM确定当前块的帧内预测值时,解析码流,确定当前块的CCLM索引值;根据CCLM索引值,确定当前块的目标CCLM参数;其中,目标CCLM参数包括比例因子和偏移参数;根据目标CCLM参数,确定当前块的帧内预测值。由此可见,在本申请的实施例中,编码器在确定当前块使用CCLM确定当前块的帧内预测值时,可以基于与当前块相邻点的多组参考点确定对应的多组CCLM参数,并从多组CCLM参数中确定出最优的目标CCLM参数,编码器可以将指示使用目标CCLM参数的CCLM索引值写入码流,传输至解码侧,从而可以使解码器在解析码流之后获得CCLM索引值,并确定CCLM索引值指示的目标CCLM参数,便可以利用目标CCLM参数确定当前块的帧内预测值。也就是说,本申请提出的图像分量的预测方法,可以将当前块的多组CCLM参数中的目标CCLM参数写入码流中进行传递,从而可以使编解码器根据目标CCLM参数确定对当前块进行帧内预测处理,大大降低了编解码处理的复杂程度,提高了编解码效率。
本申请实施例提供计算机可读存储介质和计算机可读存储介质,其上存储有程序,该程序被处理器执行时实现如上述实施例所述的方法。
具体来讲,本实施例中的一种图像分量的预测方法对应的程序指令可以被存储在光盘,硬盘,U盘等存储介质上,当存储介质中的与一种图像分量的预测方法对应的程序指令被一电子设备读取或被执行时,包括如下步骤:
在当前块使用CCLM确定所述当前块的帧内预测值时,使用所述当前块的多组参考点,确定对应的多组CCLM参数;其中,所述CCLM参数包括比例因子和偏移参数;
从所述多组CCLM参数中确定目标CCLM参数,根据所述目标CCLM参数设置CCLM索引值并写入码流;其中,所述CCLM索引值用于指示使用所述目标CCLM参数;
根据所述目标CCLM参数,确定所述当前块的帧内预测值。
具体来讲,本实施例中的一种图像分量的预测方法对应的程序指令可以被存储在光盘,硬盘,U盘等存储介质上,当存储介质中的与一种图像分量的预测方法对应的程序指令被一电子设备读取或被执行时,还包括如下步骤:
解析码流,确定所述当前块的预测模式参数;
当所述预测模式参数指示使用CCLM确定所述当前块的帧内预测值时,解析所述码流,确定所述当前块的CCLM索引值;
根据所述CCLM索引值,确定所述当前块的目标CCLM参数;其中,所述目标CCLM参数包括比例因子和偏移参数;
根据所述目标CCLM参数,确定所述当前块的帧内预测值。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用硬件实施例、软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的实现流程示意图和/或方框图来描述的。应理解可由计算机程序指令实现流程示意图和/或方框图中的每一流程和/或方框、以及实现流程示意图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于 实现在实现流程示意图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在实现流程示意图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在实现流程示意图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述,仅为本申请的较佳实施例而已,并非用于限定本申请的保护范围。
本申请实施例提供了一种图像分量的预测方法、编码器、解码器以及存储介质,编码器在当前块使用CCLM确定当前块的帧内预测值时,使用当前块的多组参考点,确定对应的多组CCLM参数;其中,CCLM参数包括比例因子和偏移参数;从多组CCLM参数中确定目标CCLM参数,根据目标CCLM参数设置CCLM索引值并写入码流;其中,CCLM索引值用于指示使用目标CCLM参数;根据目标CCLM参数,确定当前块的帧内预测值。解码器解析码流,确定当前块的预测模式参数;当预测模式参数指示使用CCLM确定当前块的帧内预测值时,解析码流,确定当前块的CCLM索引值;根据CCLM索引值,确定当前块的目标CCLM参数;其中,目标CCLM参数包括比例因子和偏移参数;根据目标CCLM参数,确定当前块的帧内预测值。由此可见,在本申请的实施例中,编码器在确定当前块使用CCLM确定当前块的帧内预测值时,可以基于与当前块相邻点的多组参考点确定对应的多组CCLM参数,并从多组CCLM参数中确定出最优的目标CCLM参数,编码器可以将指示使用目标CCLM参数的CCLM索引值写入码流,传输至解码侧,从而可以使解码器在解析码流之后获得CCLM索引值,并确定CCLM索引值指示的目标CCLM参数,便可以利用目标CCLM参数确定当前块的帧内预测值。也就是说,本申请提出的图像分量的预测方法,可以将当前块的多组CCLM参数中的目标CCLM参数写入码流中进行传递,从而可以使编解码器根据目标CCLM参数确定对当前块进行帧内预测处理,大大降低了编解码处理的复杂程度,提高了编解码效率。
Claims (25)
- 一种图像分量的预测方法,应用于编码器,所述方法包括:在当前块使用分量间线性模型预测CCLM确定所述当前块的帧内预测值时,使用所述当前块的多组参考点,确定对应的多组CCLM参数;其中,所述CCLM参数包括比例因子和偏移参数;从所述多组CCLM参数中确定目标CCLM参数,根据所述目标CCLM参数设置CCLM索引值并写入码流;其中,所述CCLM索引值用于指示使用所述目标CCLM参数;根据所述目标CCLM参数,确定所述当前块的帧内预测值。
- 根据权利要求1所述的方法,其中,所述使用所述当前块的多组参考点,确定对应的多组CCLM参数,包括:所述多组参考点包括所述当前块相邻的像素采样点;使用所述多组参考点中的一组参考点,计算所述一组参考点对应的一组CCLM参数;遍历所述多组参考点,确定所述多组CCLM参数。
- 根据权利要求1所述的方法,其中,所述从所述多组CCLM参数中确定目标CCLM参数,包括:使用率失真优化的方法,从所述多组CCLM参数中选择目标代价函数最优值对应的一组CCLM参数,确定为所述目标CCLM参数。
- 根据权利要求1所述的方法,其中,所述根据所述目标CCLM参数设置CCLM索引值并写入码流,包括:将所述CCLM索引值设置为所述目标CCLM参数在所述多组CCLM参数中对应的索引序号;将所述CCLM索引值写入码流。
- 根据权利要求4所述的方法,其中,所述方法还包括:确定所述多组参考点中的每组参考点的位置信息;根据所述每组参考点的位置信息,确定所述多组CCLM参数中的每组CCLM参数的索引序号。
- 根据权利要求5所述的方法,其中,所述根据所述每组参考点的位置信息,确定所述多组CCLM参数中的每组CCLM参数的索引序号,包括:根据所述每组参考点的位置信息,确定所述多组参考点与所述当前块之间的多个距离参数;按照所述距离参数由小到大的顺序,依次设置所述多组CCLM参数中的每组CCLM参数的索引序号。
- 根据权利要求4所述的方法,其中,将所述CCLM索引值写入码流,包括:将所述CCLM索引值写入所述码流中包含所述当前块编码数据的数据单元。
- 根据权利要求1所述的方法,其中,所述根据所述目标CCLM参数,确定所述当前块的帧内预测值,包括:使用线性模型,根据所述目标CCLM参数和所述当前块的第一图像分量的重建值,计算所述当前块的第二图像分量的预测值。
- 根据权利要求8所述的方法,其中,所述第一图像分量是亮度分量;所述第二图像分量是色度分量。
- 根据权利要求1所述的方法,其中,所述使用所述当前块的多组参考点,确定对应的多组CCLM参数之前,所述方法还包括:确定CCLM模式索引参数;其中,所述CCLM模式索引参数用于指示所述当前块使用的CCLM模式,所述CCLM模式用于指示使用CCLM确定所述帧内预测值的计算推导方式;将所述CCLM模式索引参数写入码流。
- 根据权利要求1所述的方法,其中,所述方法还包括:在所述当前块使用CCLM确定所述当前块的帧内预测值时,设置所述当前块的预测模式参数,并写入码流。
- 一种图像分量的预测方法,应用于解码器,所述方法包括:解析码流,确定所述当前块的预测模式参数;当所述预测模式参数指示使用CCLM确定所述当前块的帧内预测值时,解析所述码流,确定所述当前块的CCLM索引值;根据所述CCLM索引值,确定所述当前块的目标CCLM参数;其中,所述目标CCLM参数包括比例因子和偏移参数;根据所述目标CCLM参数,确定所述当前块的帧内预测值。
- 根据权利要求12所述的方法,其中,所述根据所述CCLM索引值,确定所述当前块的目标CCLM参数,包括:根据所述CCLM索引值,确定所述当前块的目标参考点;其中,所述目标参考点是所述当前块相邻的一个或多个像素采样点;根据所述目标参考点,确定所述当前块的目标CCLM参数。
- 根据权利要求13所述的方法,其中,所述根据所述CCLM索引值,确定所述当前块的目标参考点,包括:根据所述CCLM索引值所指示的索引序号,从所述当前块的多组参考点中,确定所述目标参考点;其中,所述多组参考点中的每组参考点包含与所述当前块相邻的一个或多个预设位置的像素采样点。
- 根据权利要求14所述的方法,其中,所述根据所述CCLM索引值,从所述当前块的多组参考点中,确定所述目标参考点,包括:确定所述多组参考点中的每组参考点的位置信息;根据所述每组参考点的位置信息,确定所述多组参考点与所述当前块之间的多个距离参数;按照所述距离参数由小到大的顺序,依次设置所述多组参考点中的每组参考点的位置索引序号;从所述多组参考点中,选择位置索引序号与所述CCLM索引值所指示的索引序号相同的一组参考点作为所述目标参考点。
- 根据权利要求12所述的方法,其中,所述根据所述CCLM索引值,确定所述当前块的目标CCLM参数,包括:使用所述当前块的多组参考点,确定对应的多组CCLM参数;其中,所述多组参考点中的每组参考点包含与所述当前块相邻的一个或多个预设位置的像素采样点;将所述多组CCLM参数中的、所述CCLM索引值指示的一组CCLM参数作为所述目标CCLM参数。
- 根据权利要求16所述的方法,其中,所述将所述多组CCLM参数中的、所述CCLM索引值指示的一组CCLM参数作为所述目标CCLM参数,包括:确定所述多组参考点中的每组参考点的位置信息;根据所述每组参考点的位置信息,确定所述多组参考点与所述当前块之间的多个距离参数;按照所述距离参数由小到大的顺序,依次设置所述多组CCLM参数中的每组CCLM参数的索引序号;将所述CCLM参数中的索引序号与所述CCLM索引值所指示的索引序号相同的一组CCLM参数作为所述目标CCLM参数。
- 根据权利要求12所述的方法,其中,所述根据所述目标CCLM参数,确定所述当前块的帧内预测值,包括:使用线性模型,根据所述目标CCLM参数和所述当前块的第一图像分量的重建值,计算所述当前块的第二图像分量的预测值。
- 根据权利要求18所述的方法,其中,所述第一图像分量是亮度分量;所述第二图像分量是色度分量。
- 根据权利权利要求12所述的方法,其中,所述解析码流,确定所述当前块的预测模式参数之后,所述方法还包括:当所述预测模式参数指示使用CCLM确定所述当前块的帧内预测值时,解析所述码流,确定所述当前块的CCLM模式索引参数;其中,所述CCLM模式索引参数用于指示所述当前块使用的CCLM模式,所述CCLM模式用于指示使用CCLM确定所述帧内预测值的计算推导方式。
- 一种编码器,所述编码器包括:第一确定部分,设置部分,所述第一确定部分,配置为在当前块使用CCLM确定所述当前块的帧内预测值时,使用所述当前块的多组参考点,确定对应的多组CCLM参数;其中,所述CCLM参数包括比例因子和偏移参数;以及从所述多组CCLM参数中确定目标CCLM参数;所述设置部分,配置为根据所述目标CCLM参数设置CCLM索引值并写入码流;其中,所述CCLM索引值用于指示使用所述目标CCLM参数;所述第一确定部分,还配置为根据所述目标CCLM参数,确定所述当前块的帧内预测值。
- 一种编码器,所述编码器包括第一处理器、存储有所述第一处理器可执行指令的第一存储器,当所述指令被执行时,所述第一处理器执行时实现如权利要求1-11任一项所述的方法。
- 一种解码器,所述解码器包括:解析部分,第二确定部分,所述解析部分,配置为解析码流;所述第二确定部分,配置为确定所述当前块的预测模式参数;所述解析部分,还配置为当所述预测模式参数指示使用CCLM确定所述当前块的帧内预测值时,解析所述码流;所述第二确定部分,还配置为确定所述当前块的CCLM索引值;以及根据所述CCLM索引值,确定所述当前块的目标CCLM参数;其中,所述目标CCLM参数包括比例因子和偏移参数;以及根据所述目标CCLM参数,确定所述当前块的帧内预测值。
- 一种解码器,所述解码器包括第二处理器、存储有所述第二处理器可执行指令的第二存储器,当所述指令被执行时,所述第二处理器执行时实现如权利要求12-20任一项所述的方法。
- 一种计算机存储介质,其中,所述计算机存储介质存储有计算机程序,所述计算机程序被第一处理器执行时实现如权利要求1-11任一项所述的方法,或者,被第二处理器执行时实现如权利要求12-20任一项所述的方法。
Priority Applications (6)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2021578139A JP2022539786A (ja) | 2019-07-10 | 2020-05-15 | 画像成分の予測方法、エンコーダ、デコーダ及び記憶媒体 |
| KR1020217042910A KR20220030950A (ko) | 2019-07-10 | 2020-05-15 | 픽처 컴포넌트의 예측 방법, 인코더, 디코더 및 저장 매체 |
| EP20837251.6A EP3972251A4 (en) | 2019-07-10 | 2020-05-15 | Image component prediction method, encoder, decoder, and storage medium |
| CN202080048662.XA CN114041288A (zh) | 2019-07-10 | 2020-05-15 | 图像分量的预测方法、编码器、解码器以及存储介质 |
| US17/557,546 US12047557B2 (en) | 2019-07-10 | 2021-12-21 | Colour component prediction method, encoder, decoder, and storage medium |
| JP2025092991A JP2025124822A (ja) | 2019-07-10 | 2025-06-03 | 画像成分の予測方法、エンコーダ、デコーダ及び記憶媒体 |
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US201962872694P | 2019-07-10 | 2019-07-10 | |
| US62/872,694 | 2019-07-10 |
Related Child Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| US17/557,546 Continuation US12047557B2 (en) | 2019-07-10 | 2021-12-21 | Colour component prediction method, encoder, decoder, and storage medium |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2021004152A1 true WO2021004152A1 (zh) | 2021-01-14 |
Family
ID=74113535
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/CN2020/090644 Ceased WO2021004152A1 (zh) | 2019-07-10 | 2020-05-15 | 图像分量的预测方法、编码器、解码器以及存储介质 |
Country Status (6)
| Country | Link |
|---|---|
| US (1) | US12047557B2 (zh) |
| EP (1) | EP3972251A4 (zh) |
| JP (2) | JP2022539786A (zh) |
| KR (1) | KR20220030950A (zh) |
| CN (1) | CN114041288A (zh) |
| WO (1) | WO2021004152A1 (zh) |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2023016408A1 (en) * | 2021-08-13 | 2023-02-16 | Beijing Bytedance Network Technology Co., Ltd. | Method, apparatus, and medium for video processing |
| WO2024221361A1 (zh) * | 2023-04-27 | 2024-10-31 | Oppo广东移动通信有限公司 | 编解码方法、码流、编码器、解码器以及存储介质 |
| WO2026007093A1 (zh) * | 2024-07-04 | 2026-01-08 | Oppo广东移动通信有限公司 | 编解码方法、码流、编码器、解码器以及存储介质 |
Families Citing this family (12)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US11765376B2 (en) * | 2020-10-08 | 2023-09-19 | Tencent America LLC | Pruning methods and apparatuses for neural network based video coding |
| CN115190312B (zh) * | 2021-04-02 | 2024-06-07 | 西安电子科技大学 | 一种基于神经网络的跨分量色度预测方法及装置 |
| US11956453B2 (en) * | 2021-06-15 | 2024-04-09 | Tencent America LLC | Content-adaptive online training for DNN-based cross component prediction with scaling factors |
| US12531994B2 (en) * | 2022-01-21 | 2026-01-20 | Mediatek Inc. | Method and apparatus of cross-component linear model prediction with refined parameters in video coding system |
| EP4510566A4 (en) * | 2022-04-12 | 2026-02-11 | Guangdong Oppo Mobile Telecommunications Corp Ltd | ENCODING METHOD AND APPARATUS, DECODING METHOD AND APPARATUS, AND ENCODING DEVICE, DECODING DEVICE AND RECORDING MEDIUM |
| EP4513873A4 (en) * | 2022-04-20 | 2026-04-08 | Lg Electronics Inc | METHOD AND DEVICE FOR IMAGE ENCODING/DECODING BASED ON CONVOLUTIONARY INTER-COMPONENT MODEL PREDICTION (CCCM), AND RECORDING MEDIUM FOR STORING A BINARY STREAM |
| WO2023224290A1 (ko) * | 2022-05-18 | 2023-11-23 | 현대자동차주식회사 | 인트라 예측에서 성분간 관계 모델 유도를 위한 참조샘플 선택을 위한 방법 및 장치 |
| CN116320438A (zh) * | 2022-09-16 | 2023-06-23 | 浙江大华技术股份有限公司 | 帧内预测模式的确定方法、智能编码方法及智能解码方法 |
| CN120814227A (zh) * | 2023-01-10 | 2025-10-17 | 联发科技股份有限公司 | 用于交叉分量模型合并模式的视频编解码方法和装置 |
| CN121002862A (zh) * | 2023-04-13 | 2025-11-21 | Oppo广东移动通信有限公司 | 编解码方法及装置、编解码器、码流、设备、存储介质 |
| CN121399944A (zh) * | 2023-06-20 | 2026-01-23 | 联发科技股份有限公司 | 用于在索引表中存储用于交叉分量预测合并模式的时间模型的方法和设备 |
| CN116668704B (zh) * | 2023-08-02 | 2024-02-06 | 深圳传音控股股份有限公司 | 处理方法、处理设备及存储介质 |
Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20100246688A1 (en) * | 2009-03-26 | 2010-09-30 | Apple Inc. | Blind noise analysis for video compression |
| CN103260018A (zh) * | 2012-02-16 | 2013-08-21 | 乐金电子(中国)研究开发中心有限公司 | 帧内图像预测编解码方法及视频编解码器 |
| CN104718759A (zh) * | 2012-01-24 | 2015-06-17 | 华为技术有限公司 | Lm模式的简化 |
| US20160241861A1 (en) * | 2013-09-30 | 2016-08-18 | University-Industry Foundation (Uif), Yonsei University | Method, device and system for encoding and decoding image |
Family Cites Families (11)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2014151526A1 (en) | 2013-03-15 | 2014-09-25 | Huiru Wang | Biological therapeutics for infection-relating disorders or conditions |
| US9648330B2 (en) * | 2013-07-15 | 2017-05-09 | Qualcomm Incorporated | Inter-color component residual prediction |
| US9998742B2 (en) * | 2015-01-27 | 2018-06-12 | Qualcomm Incorporated | Adaptive cross component residual prediction |
| WO2018016381A1 (en) * | 2016-07-22 | 2018-01-25 | Sharp Kabushiki Kaisha | Systems and methods for coding video data using adaptive component scaling |
| WO2018116925A1 (ja) * | 2016-12-21 | 2018-06-28 | シャープ株式会社 | イントラ予測画像生成装置、画像復号装置、および画像符号化装置 |
| JP2021005741A (ja) * | 2017-09-14 | 2021-01-14 | シャープ株式会社 | 画像符号化装置及び画像復号装置 |
| US20190342546A1 (en) * | 2018-05-03 | 2019-11-07 | FG Innovation Company Limited | Device and method for coding video data based on different reference sets in linear model prediction |
| CN116708833A (zh) * | 2018-07-02 | 2023-09-05 | Lg电子株式会社 | 编解码和发送方法及存储介质 |
| WO2020094057A1 (en) * | 2018-11-06 | 2020-05-14 | Beijing Bytedance Network Technology Co., Ltd. | Position based intra prediction |
| KR102637084B1 (ko) * | 2018-11-23 | 2024-02-15 | 엘지전자 주식회사 | 영상 코딩 시스템에서 cclm 예측 기반 영상 디코딩 방법 및 그 장치 |
| CN116193132A (zh) * | 2019-01-03 | 2023-05-30 | 华为技术有限公司 | 色度块的预测方法和装置 |
-
2020
- 2020-05-15 KR KR1020217042910A patent/KR20220030950A/ko active Pending
- 2020-05-15 WO PCT/CN2020/090644 patent/WO2021004152A1/zh not_active Ceased
- 2020-05-15 CN CN202080048662.XA patent/CN114041288A/zh active Pending
- 2020-05-15 JP JP2021578139A patent/JP2022539786A/ja active Pending
- 2020-05-15 EP EP20837251.6A patent/EP3972251A4/en active Pending
-
2021
- 2021-12-21 US US17/557,546 patent/US12047557B2/en active Active
-
2025
- 2025-06-03 JP JP2025092991A patent/JP2025124822A/ja active Pending
Patent Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20100246688A1 (en) * | 2009-03-26 | 2010-09-30 | Apple Inc. | Blind noise analysis for video compression |
| CN104718759A (zh) * | 2012-01-24 | 2015-06-17 | 华为技术有限公司 | Lm模式的简化 |
| CN103260018A (zh) * | 2012-02-16 | 2013-08-21 | 乐金电子(中国)研究开发中心有限公司 | 帧内图像预测编解码方法及视频编解码器 |
| US20160241861A1 (en) * | 2013-09-30 | 2016-08-18 | University-Industry Foundation (Uif), Yonsei University | Method, device and system for encoding and decoding image |
Non-Patent Citations (2)
| Title |
|---|
| H-J JHU (KWAI); Y-W CHEN (KWAI); WANG (KWAI INC) X: "CE3-related: MMLM only cross-component prediction", 14. JVET MEETING; 20190319 - 20190327; GENEVA; (THE JOINT VIDEO EXPLORATION TEAM OF ISO/IEC JTC1/SC29/WG11 AND ITU-T SG.16 ), no. JVET-N0333, 13 March 2019 (2019-03-13), pages 1 - 3, XP030202977 * |
| See also references of EP3972251A4 * |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2023016408A1 (en) * | 2021-08-13 | 2023-02-16 | Beijing Bytedance Network Technology Co., Ltd. | Method, apparatus, and medium for video processing |
| WO2024221361A1 (zh) * | 2023-04-27 | 2024-10-31 | Oppo广东移动通信有限公司 | 编解码方法、码流、编码器、解码器以及存储介质 |
| WO2026007093A1 (zh) * | 2024-07-04 | 2026-01-08 | Oppo广东移动通信有限公司 | 编解码方法、码流、编码器、解码器以及存储介质 |
Also Published As
| Publication number | Publication date |
|---|---|
| CN114041288A (zh) | 2022-02-11 |
| JP2025124822A (ja) | 2025-08-26 |
| EP3972251A4 (en) | 2022-08-24 |
| EP3972251A1 (en) | 2022-03-23 |
| KR20220030950A (ko) | 2022-03-11 |
| US20220116591A1 (en) | 2022-04-14 |
| US12047557B2 (en) | 2024-07-23 |
| JP2022539786A (ja) | 2022-09-13 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US12047557B2 (en) | Colour component prediction method, encoder, decoder, and storage medium | |
| US12166994B2 (en) | Encoding method, decoding method, and decoder | |
| CN113660489B (zh) | 用于帧内子划分的解码方法、装置、解码器和存储介质 | |
| CN114467306A (zh) | 图像预测方法、编码器、解码器以及存储介质 | |
| WO2020001325A1 (zh) | 一种图像编码方法、解码方法、编码器、解码器及存储介质 | |
| CN113454998A (zh) | 视频编码中的跨分量量化 | |
| JP2023073286A (ja) | イントラ予測のためのデバイスおよび方法 | |
| WO2020103800A1 (zh) | 视频解码方法和视频解码器 | |
| KR102452870B1 (ko) | 인트라 예측 장치, 화상 복호 장치, 및 프로그램 | |
| CN112135128A (zh) | 图像预测方法、编码树节点划分方法及其装置 | |
| CN116546218B (zh) | 解码预测方法、装置及计算机存储介质 | |
| CN113840144A (zh) | 图像分量的预测方法、编码器、解码器及计算机存储介质 | |
| WO2026011430A9 (zh) | 编解码方法、码流、编码器、解码器以及存储介质 | |
| WO2026085787A1 (zh) | 编解码方法、码流、编码器、解码器以及存储介质 | |
| WO2026085788A1 (zh) | 编解码方法、码流、编码器、解码器以及存储介质 | |
| CN120835160A (zh) | 视频编码中的自适应环内滤波 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 20837251 Country of ref document: EP Kind code of ref document: A1 |
|
| ENP | Entry into the national phase |
Ref document number: 2020837251 Country of ref document: EP Effective date: 20211216 |
|
| ENP | Entry into the national phase |
Ref document number: 2021578139 Country of ref document: JP Kind code of ref document: A |


