WO2022188186A1 - 系数编解码方法、编解码设备及存储介质 - Google Patents
系数编解码方法、编解码设备及存储介质 Download PDFInfo
- Publication number
- WO2022188186A1 WO2022188186A1 PCT/CN2021/080635 CN2021080635W WO2022188186A1 WO 2022188186 A1 WO2022188186 A1 WO 2022188186A1 CN 2021080635 W CN2021080635 W CN 2021080635W WO 2022188186 A1 WO2022188186 A1 WO 2022188186A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- value
- flag
- coefficient
- modulo
- decoded
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 163
- 208000037170 Delayed Emergence from Anesthesia Diseases 0.000 claims description 31
- 238000004590 computer program Methods 0.000 claims description 20
- 238000010586 diagram Methods 0.000 description 18
- 230000003044 adaptive effect Effects 0.000 description 16
- 230000008569 process Effects 0.000 description 16
- 230000006835 compression Effects 0.000 description 15
- 238000007906 compression Methods 0.000 description 15
- 238000013139 quantization Methods 0.000 description 15
- 238000012545 processing Methods 0.000 description 11
- 238000005516 engineering process Methods 0.000 description 8
- 230000001131 transforming effect Effects 0.000 description 7
- 230000005540 biological transmission Effects 0.000 description 5
- 238000004891 communication Methods 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 238000013500 data storage Methods 0.000 description 3
- 238000005070 sampling Methods 0.000 description 3
- 238000001914 filtration Methods 0.000 description 2
- 238000000638 solvent extraction Methods 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000035755 proliferation Effects 0.000 description 1
- 238000011002 quantification Methods 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000007723 transport mechanism Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/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/13—Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
-
- 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/46—Embedding additional information in the video signal during the compression process
-
- 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/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
Definitions
- the embodiments of the present disclosure relate to, but are not limited to, video encoding and decoding technologies, and in particular provide a coefficient encoding and decoding method, encoding and decoding device, and storage medium.
- Digital video compression technology mainly compresses huge digital video and video data to facilitate transmission and storage.
- Digital video compression standards can save a lot of video data, it is still necessary to pursue better digital video compression technology to reduce digital video data. Bandwidth and traffic pressure for video transmission.
- An embodiment of the present disclosure provides a coefficient decoding method, including:
- the syntax elements include: a non-zero flag, M absolute values greater than X i flags, a modulo result flag, a residual value flag, and a symbol flag;
- the absolute value of the coefficient to be decoded is the encoded value of the non-zero flag, The sum of the M code values whose absolute value is greater than the X i mark and the corresponding values preset by the code value of the modulo result mark, plus the product of the code value of the remaining value mark and N, the obtained sum value ;
- the value of the coefficient to be decoded is a value determined according to the absolute value of the coefficient to be decoded and a sign indicating positive and negative;
- the encoded value of the modulo result sign is determined according to the coefficient to N modulo operation, i ⁇ M, i, M are positive integers, N is a positive integer greater than 1, X i is a positive integer and when i takes different values, X i takes different values and increases with the value of i.
- An embodiment of the present disclosure provides a coefficient encoding method, including:
- the syntax elements include: a non-zero flag, M absolute values greater than X i flags, a modulo result flag, a residual value flag, and a symbol flag;
- the absolute value of the coefficient to be decoded is the encoded value of the non-zero flag, The sum of the M code values whose absolute value is greater than the X i mark and the corresponding values preset by the code value of the modulo result mark, plus the product of the code value of the remaining value mark and N, the obtained sum value ;
- the value of the coefficient to be decoded is a value determined according to the absolute value of the coefficient to be decoded and a sign indicating positive and negative;
- the encoded value of the modulo result sign is determined according to the coefficient to N modulo operation, i ⁇ M, i, M are positive integers, N is a positive integer greater than 1, X i is a positive integer and when i takes different values, X i takes different values and increases with the value of i.
- the syntax elements include: a non-zero flag, an absolute value greater than 1 flag, a modulo result flag, a residual value flag, and a symbol flag;
- the absolute value of the coefficient to be decoded is the encoded value of the non-zero flag, the absolute value is greater than The coded value of the 1 mark and the pre-set corresponding numerical value of the coded value of the modulo result mark, plus the product of the coded value of the remaining value mark and N, the obtained sum value;
- the coefficient to be decoded The value of the value is determined according to the absolute value of the coefficient to be decoded and the sign indicating positive and negative; , 4 or 5.
- An embodiment of the present disclosure provides a coefficient encoding method, including:
- the syntax elements include: a non-zero flag, an absolute value greater than 1 flag, a modulo result flag, a residual value flag, and a symbol flag;
- the absolute value of the coefficient to be decoded is the encoded value of the non-zero flag, the absolute value is greater than The coded value of the 1 mark and the pre-set corresponding numerical value of the coded value of the modulo result mark, plus the product of the coded value of the remaining value mark and N, the obtained sum value;
- the coefficient to be decoded The value of the value is determined according to the absolute value of the coefficient to be decoded and the sign indicating positive and negative; 4 or 5.
- An embodiment of the present disclosure provides a coefficient decoding method, including:
- the syntax elements include: a non-zero flag, an absolute value greater than 1 flag, an absolute value greater than 2 flag, a modulo result flag, a residual value flag and a symbol flag;
- the absolute value of the coefficient to be decoded is a non-zero flag
- the product of N is the obtained sum value;
- the value of the coefficient to be decoded is a value determined according to the absolute value of the coefficient to be decoded and the sign sign indicating positive and negative;
- An embodiment of the present disclosure provides a coefficient encoding method, including:
- the syntax elements include: a non-zero flag, an absolute value greater than 1 flag, an absolute value greater than 2 flag, a modulo result flag, a residual value flag and a symbol flag;
- the absolute value of the coefficient to be decoded is a non-zero flag
- the product of N is the obtained sum value;
- the value of the coefficient to be decoded is a value determined according to the absolute value of the coefficient to be decoded and the sign sign indicating positive and negative;
- An embodiment of the present disclosure provides a decoding device, including: a processor and a memory storing a computer program
- An embodiment of the present disclosure provides an encoding device, including: a processor and a memory storing a computer program that can be executed on the processor, wherein the processor implements any of the above when executing the computer program.
- the coefficient coding method described above is a method for coding any of the above when executing the computer program.
- An embodiment of the present disclosure provides a non-transitory computer-readable storage medium, where a computer program is stored in the computer-readable storage medium, wherein, when the computer program is executed by a processor, any one of the coefficients described above is implemented decoding method, or implement the coefficient encoding method described in any one of the above.
- Fig. 1 is a kind of frame schematic diagram of video compression coding
- Fig. 2 is the schematic diagram of a kind of diagonal scanning in VVC
- Fig. 3 is the schematic diagram of a kind of coefficient absolute value coding mode in VVC
- Fig. 4 is the schematic diagram of a kind of anti-zig-zag scanning in AVS
- Fig. 5 is the schematic diagram of a kind of coefficient absolute value coding mode in AVS
- FIG. 6 is a schematic flowchart of a coefficient decoding method according to an embodiment of the present disclosure.
- FIG. 7 is a schematic flowchart of a coefficient encoding method according to an embodiment of the present disclosure.
- FIG. 8 is a schematic flowchart of a coefficient decoding method according to an embodiment of the present disclosure.
- FIG. 9 is a schematic flowchart of a coefficient encoding method according to an embodiment of the present disclosure.
- FIG. 10 is a schematic diagram of an absolute value encoding method of a coefficient whose modulus is 3 in an exemplary embodiment of the present disclosure
- FIG. 11 is a schematic flowchart of a coefficient encoding method in an exemplary embodiment of the disclosure.
- FIG. 13 is a schematic diagram of encoding a scanned coefficient string according to an exemplary embodiment of the present disclosure
- FIG. 14 is a schematic flowchart of a coefficient decoding method in an exemplary embodiment of the disclosure.
- FIG. 15 is a schematic diagram of an absolute value encoding method of a coefficient whose modulus is 3 in an exemplary embodiment of the present disclosure
- 16 is a schematic flowchart of a coefficient encoding method in an exemplary embodiment of the disclosure.
- 17 is a schematic flowchart of a coefficient decoding method in an exemplary embodiment of the disclosure.
- FIG. 18 is a schematic diagram of an absolute value encoding method of a coefficient whose modulus is 5 in an exemplary embodiment of the present disclosure
- FIG. 19 is a schematic flowchart of a coefficient encoding method in an exemplary embodiment of the disclosure.
- FIG. 21 is a schematic diagram of an absolute value encoding method of a coefficient whose modulus is 4 in an exemplary embodiment of the present disclosure
- FIG. 22 is a schematic flowchart of a coefficient encoding method in an exemplary embodiment of the disclosure.
- FIG. 23 is a schematic flowchart of a coefficient decoding method in an exemplary embodiment of the disclosure.
- 24 is a schematic flowchart of a coefficient decoding method according to an embodiment of the present disclosure.
- 25 is a schematic flowchart of a coefficient encoding method according to an embodiment of the disclosure.
- 26 is a schematic flowchart of a coefficient decoding method according to an embodiment of the present disclosure.
- FIG. 27 is a schematic flowchart of a coefficient encoding method according to an embodiment of the present disclosure.
- FIG. 28 is a schematic structural diagram of an encoding device according to an embodiment of the present disclosure.
- 29 is a structural block diagram of a video encoder in an exemplary embodiment of the disclosure.
- FIG. 30 is a schematic structural diagram of a decoding device according to an embodiment of the present disclosure.
- FIG. 31 is a structural block diagram of a video decoder in an exemplary embodiment of the disclosure.
- Video codec standards include H.264/Advanced Video Coding (Advanced Video Coding, AVC), H.265/High Efficiency Video Coding (High Efficiency Video Coding, HEVC), H.266/Versatile Video Coding (Multifunctional Video Coding, VVC) ) and extensions of these standards, MPEG (Moving Picture Experts Group, Moving Picture Experts Group), AOM (Alliance for Open Media) or any other custom standards, which reduce data transmission and The amount of data stored to achieve more efficient video codec and transmission storage.
- AVC Advanced Video Coding
- H.265/High Efficiency Video Coding High Efficiency Video Coding
- H.266/Versatile Video Coding Multifunctional Video Coding
- MPEG Moving Picture Experts Group, Moving Picture Experts Group
- AOM Alliance for Open Media
- Video compression includes intra-frame prediction (spatial domain) and/or inter-frame prediction (temporal domain) for reducing or removing redundancy within the video, transforming, quantizing, and inverse quantizing and inverse transforming residual information, and improving the quality of subjective and objective reconstruction.
- Multiple modules such as path filtering and entropy coding.
- Figure 1 is a schematic diagram of a video compression coding framework, as shown in Figure 1, including: intra-frame prediction, motion estimation/compensation, transform/quantization, inverse transform/inverse quantization, loop filtering, entropy coding and other modules.
- Video compression standards are block-based compression techniques. For example, a video slice, a frame of pictures or a series of pictures can be divided into coding tree units CTU (Coding Tree Unit), and then the coding tree unit CTU can be divided into image blocks with CU (Coding Unit) as the basic unit.
- Intra-frame prediction refers to predicting by using the surrounding pixels of the block as a reference
- inter-frame prediction refers to referencing adjacent block information in space and reference information in other frames for prediction.
- the prediction block The residual information represents the pixel difference between the original CU to be encoded and the predicted CU, also known as the residual block.
- the residual block can be transformed, quantized and entropy encoded into a code stream to carry out
- the residual information can be transformed from the pixel domain to the transform domain, resulting in residual coefficients, which can then quantize the two-dimensional array into a one-dimensional vector in coefficient scan order,
- the transformed and quantized coefficients can be applied to entropy coding to achieve more compression.
- the coding unit CU (Coding Unit) is a basic unit for performing various types of coding operations or decoding operations in the video coding and decoding process, such as CU-based prediction, transformation, entropy coding and other operations.
- CU refers to a two-dimensional sampling point array, which can be a square array or a rectangular array.
- a 4x8 CU can be regarded as a 4x8 square sampling point array consisting of a total of 32 sampling points.
- a CU may also be referred to as a tile.
- the current coding unit CU refers to the coding unit currently being processed, and may also be referred to as the current block.
- the current CU refers to the CU currently being encoded; in decoding, the current CU refers to the CU currently being decoded.
- Reference CU refers to a CU that provides a reference signal for the current CU, and may also be referred to as a reference block. Wherein, the pixels of the reference CU refer to the pixels included in the reference CU.
- Prediction CU refers to the CU that provides prediction for the current CU, and may also be called a prediction block (PU, prediction unit). Each CU may contain one or more PUs.
- a PU may include pixel data in a spatial domain (which may be referred to as a pixel domain).
- Residual block refers to the residual image block formed by subtracting the prediction block from the current block to be encoded after the prediction block of the current block is generated by inter-frame prediction and/or intra-frame prediction, which may also be called residual poor data.
- the transform unit TU refers to a block that presents residual (Residual) or coefficients (Transform Coefficients) obtained by transforming residual data, and may also be called a transform block.
- Each CU may contain one or more TUs.
- transforms such as discrete cosine transforms, integer transforms, wavelet transforms, or similar transforms may be used to transform residual data into coefficients, ie, transform the residual data from the pixel domain to the transform domain.
- the coefficient block includes transforming the residual block to obtain a transform block containing transform coefficients, or not transforming the residual block, including the residual block containing residual data (residual signal).
- the coefficients include coefficients of a transform block obtained by transforming the residual block, or the coefficients of the residual block, and entropy encoding the coefficients includes entropy encoding after quantizing the coefficients of the transform block, or, if not Applying a transform to the residual data includes quantizing and entropy encoding the coefficients of the residual block.
- the untransformed residual signal and the transformed residual signal may also be collectively referred to as coefficients.
- the general coefficients need to be quantized.
- the quantized coefficients can also become levels.
- Quantization is often used to reduce the dynamic range of the coefficients, thereby expressing the video with fewer codewords.
- the quantized value is often referred to as a level.
- the quantization operation usually divides the coefficient by the quantization step size, which is determined by the quantization factor passed in the code stream. Inverse quantization is done by multiplying the level by the quantization step size. For a block of NxM size, the quantization of all coefficients can be done independently. This technique is widely used in many international video compression standards, such as H.264, HEVC. In the VVC international video compression standard, the quantization operation can use the correlation between the coefficients and use the characteristics of the quantized coefficients to select a better quantization method, so as to achieve the purpose of optimizing the quantization.
- Entropy encoding the coefficients consists of two parts:
- One is to scan the coefficients, which includes transforming a two-dimensional coefficient block into a one-dimensional coefficient stream;
- the scan order can be diagonal scan, zigzag scan, Zigzag scan, horizontal scan, vertical scan, 4x4 sub-block scan, or any other sequence of scans.
- the second is to entropy encode the value of the coefficient, and then write it into the code stream.
- coefficient block is scanned and quantized to form a one-dimensional coefficient stream (or coefficient string), CAVLC (context-based adaptive variable-length code), context-adaptive binary arithmetic coding (context- based adaptive binary arithmetic coding), syntax-based adaptive binary arithmetic coding (syntax-based adaptive binary arithmetic coding), probability interval partitioning entropy (PIPE), bypass coding or other entropy coding Entropy encoding of coefficients.
- CAVLC context-based adaptive variable-length code
- context-adaptive binary arithmetic coding context- based adaptive binary arithmetic coding
- syntax-based adaptive binary arithmetic coding syntax-based adaptive binary arithmetic coding
- PIPE probability interval partitioning entropy
- bypass coding or other entropy coding Entropy encoding of coefficients.
- VVC Versatile Video Coding
- the coefficients in one transform block are usually divided into multiple non-overlapping coefficient groups.
- the size of the coefficient group depends on the size of the transform block, for example, may include 1x16, 2x8, 8x2, 2x4, 4x2, or 16x1, etc.
- an 8x8 transform block is first divided into four 4x4 sub-blocks, and then the coefficients are quantized from a two-dimensional vector to a one-dimensional vector by diagonal scanning.
- the syntax elements of the coefficients at each position include the non-zero flag bit sig_coeff_flag, the coefficient absolute value greater than 1 flag abs_level_gtx_flag[0], the parity check flag par_level_flag, the coefficient absolute value greater than 3 flag abs_level_gtx_flag[1], The remaining value flags abs_remainder and dec_abs_level, and six parts of the sign flag bit coeff_sign_flag.
- the non-zero flag bit is used to indicate whether the absolute value of the coefficient ⁇ qk ⁇ is non-zero.
- the absolute value of the coefficient is greater than 1 flag, which is used to indicate whether the absolute value of the coefficient ⁇ qk ⁇ is greater than 1. Parity flag, used to indicate whether the absolute value of the coefficient ⁇ qk ⁇ is odd or even.
- the absolute value of the coefficient is greater than 3 flag, which is used to indicate whether the absolute value of the coefficient ⁇ qk ⁇ is greater than 3.
- the residual value flag represents the residual value of the coefficient, which can be determined by the following formula:
- sig+gt1+par+2 ⁇ gt3+2 ⁇ rem, qk is the value of the coefficient, sig is the encoded value of the non-zero flag bit, gt1 is the coded value of the coefficient absolute value greater than 1 flag, par represents the coded value of the parity check flag, gt3 represents the coded value of the coefficient absolute value greater than 3 flag, and rem represents the coded value of the residual value of the coefficient. When present, its value is treated as 0. Sign flags are used to indicate the positive and negative nature of the coefficients.
- the process of entropy coding the coefficients includes:
- abs_level_gtx_flag[0] When abs_level_gtx_flag[0] is 0, skip the encoding of parity check flag par_level_flag, coefficient absolute value greater than 3 flag abs_level_gtx_flag[1], remaining value flag abs_remainder and dec_abs_level; when abs_level_gtx_flag[0] is 1, encode par_level_flag, when When the absolute value of the coefficient is even, encode par_level_flag as 0; when the absolute value of the coefficient is odd, encode par_level_flag as 1;
- abs_level_gtx_flag[1] When abs_level_gtx_flag[1] is 0, skip the encoding of the remaining value flags abs_remainder and dec_abs_level; when abs_level_gtx_flag[1] is 1, encode abs_remainder and dec_abs_level;
- the remaining value flag can be determined according to the following formula:
- sig+gt1+par+2 ⁇ gt3+2 ⁇ rem;
- the coeff_sign_flag is coded according to the positive or negative of the coefficient, when the coefficient is positive, the coeff_sign_flag is coded as 0; when the coefficient is negative, the coeff_sign_flag is coded as 1.
- the residual value flag and the symbol flag are coded using the bypass coding mode, and the other flags can be coded using the context-based adaptive coding mode.
- the coefficients that need to be coded are usually limited within a range by the SRCC technology.
- the coefficient scanning method is to quantize the coefficients from a two-dimensional vector to a one-dimensional vector by scanning in an inverse zig-zag order starting from the lower right corner in the range of SR X -SR Y.
- the syntax elements of the coefficients at each position include the non-zero flag bit sig_flag, the coefficient absolute value greater than 1 mark coeff_abs_level_greater1_flag, the coefficient absolute value greater than 2 mark coeff_abs_level_greater2_flag, the residual value mark coeff_abs_level_remaining and the sign mark coeff_sign five parts.
- the non-zero flag bit is used to indicate whether the absolute value of the coefficient ⁇ qk ⁇ is non-zero.
- the absolute value of the coefficient is greater than 1 flag, which is used to indicate whether the absolute value of the coefficient ⁇ qk ⁇ is greater than 1.
- the absolute value of the coefficient is greater than 2 flag, which is used to indicate whether the absolute value of the coefficient ⁇ qk ⁇ is greater than 2.
- the residual value flag represents the residual value of the coefficient, which can be determined by the following formula:
- sig+gt1+gt2+rem.
- qk is the value of the coefficient
- sig is the coded value of the non-zero flag bit
- gt1 is the coded value of the coefficient absolute value greater than 1 flag
- gt2 represents the coded value of the coefficient absolute value greater than 2 flag
- rem represents the coded value of the remaining value of the coefficient, where , in this formula, when a certain flag does not exist, its value is treated as 0.
- Sign flags are used to indicate the positive and negative nature of the coefficients. .
- the process of entropy coding the coefficients includes:
- coeff_abs_level_remaining can be determined according to the following formula:
- sig+gt1+gt2+rem.
- the coeff_sign is coded according to the positive or negative of the coefficient.
- the coefficient is positive, the coeff_sign is coded as 0; when the coefficient is negative, the coeff_sign is coded as 1.
- the residual value flag and the symbol flag are coded using the bypass coding mode, and the other flags can be coded using the context-based adaptive coding mode.
- An embodiment of the present disclosure provides a coefficient decoding method, as shown in FIG. 6 , including:
- Step 601 parse the obtained code stream, and decode the syntax element of the coefficient to be decoded
- Step 602 determining the value of the coefficient to be decoded according to the syntax element obtained by decoding
- the syntax elements include: a non-zero flag, M absolute values greater than X i flags, a modulo result flag, a residual value flag, and a symbol flag;
- the absolute value of the coefficient to be decoded is the encoded value of the non-zero flag, The sum of the M code values whose absolute value is greater than the X i mark and the corresponding values preset by the code value of the modulo result mark, plus the product of the code value of the remaining value mark and N, the obtained sum value ;
- the value of the coefficient to be decoded is a value determined according to the absolute value of the coefficient to be decoded and a sign indicating positive and negative;
- the encoded value of the modulo result sign is determined according to the coefficient to N modulo operation, i ⁇ M, i, M are positive integers, N is a positive integer greater than 1, X i is a positive integer and when i takes different values, X i takes different values and increases with the value of i.
- the method further includes: pre-setting a specific encoding value for the modulo result flag of the specified absolute value;
- Decode the non-zero flag when the non-zero flag is decoded as 0, skip the decoding of the M coefficients whose absolute value is greater than the i flag, the modulo result flag, the residual value flag and the symbol flag;
- the method further includes:
- Decode the non-zero flag when the non-zero flag is decoded as 0, skip the decoding of the M coefficients whose absolute value is greater than the i flag, the modulo result flag, the residual value flag and the symbol flag;
- the method further includes:
- the absolute value of the coefficient the decoded value of the non-zero flag+M absolute values greater than the decoded value corresponding to the Xi flag respectively+the corresponding numerical value preset by the decoded value of the modulo result flag+the remaining value flag ⁇ N;
- the non-existing syntax element when the decoded value of the non-zero flag, the M absolute values greater than the corresponding decoded value of the Xi flag, the decoded value of the modulo result flag, and the remaining value flag do not exist, the non-existing syntax element shall be used.
- the decoded value of the syntax element or the preset corresponding value takes the value 0.
- the preset corresponding value is 2;
- the preset corresponding value is 3.
- the preset corresponding value is 1;
- the preset corresponding value is 2;
- the preset corresponding value is 3.
- the preset corresponding value is 1;
- the preset corresponding value is 2;
- the preset corresponding value is 3.
- An embodiment of the present disclosure provides a coefficient encoding method, as shown in FIG. 7 , including:
- Step 701 generating a coefficient block based on the residual block, scanning the coefficients in the coefficient block, and encoding the syntax element of the coefficient to be encoded;
- Step 702 write the codeword generated by encoding into the code stream
- the syntax elements include: a non-zero flag, M absolute values greater than X i flags, a modulo result flag, a residual value flag, and a symbol flag;
- the absolute value of the coefficient to be decoded is the encoded value of the non-zero flag, The sum of the M code values whose absolute value is greater than the X i mark and the corresponding values preset by the code value of the modulo result mark, plus the product of the code value of the remaining value mark and N, the obtained sum value ;
- the value of the coefficient to be decoded is a value determined according to the absolute value of the coefficient to be decoded and a sign indicating positive and negative;
- the encoded value of the modulo result sign is determined according to the coefficient to N modulo operation, i ⁇ M, i, M are positive integers, N is a positive integer greater than 1, X i is a positive integer and when i takes different values, X i takes different values and increases with the value of i.
- the coding of the modulo result flag is binary coding, occupying K flag bits, then the binary coding of the modulo result flag has 2 K kinds;
- the method further includes: setting a specific coding value for the modulo result flag of the specified absolute value of the coefficient in advance; coding the non-zero flag, when the absolute value of the coefficient is 0, coding the non-zero flag as 0, Skip the encoding of M coefficients whose absolute value is greater than the i flag, the modulo result flag, the residual value flag and the symbol flag; when the absolute value of the coefficient is not 0, the non-zero flag is encoded as 1;
- the modulo result flag is coded, when the absolute value of the coefficient is the specified absolute value of the coefficient, the modulo result flag is encoded as the specific encoded value, wherein the specific encoded value is globally unique; when the absolute value of the coefficient is When it is not the absolute value of the specified coefficient, the ( 2K -N) binary codes are encoded as the modulo result flags of the coefficients whose absolute values are M+1 to M+ 2K -N, and the above binary codes are encoded.
- the encoded encoded values are defined as 0 to 2K -N-1 respectively; the remaining N kinds of binary codes are encoded as the modulo result flags of the coefficients whose absolute value is greater than M+ 2K -N, and the N kinds of binary codes are encoded respectively.
- the coding values of , respectively, are defined as 1 ⁇ N;
- the quotient value is the absolute value of the coefficient minus a non-zero flag
- the corresponding coded value, the absolute value of the M coefficients are greater than the coded value corresponding to the i flag and the preset corresponding numerical value of the coded value of the modulo result flag, and then divided by N to obtain the quotient value, wherein the modulo The preset corresponding numerical value of the encoded value of the result flag satisfies that the calculated quotient is an integer;
- the sign flag is encoded, when the coefficient is positive, the sign flag is encoded as 0, and when the coefficient is negative, the sign flag is encoded as 1.
- the coding of the modulo result flag is binary coding, occupying K flag bits, then the binary coding of the modulo result flag has 2 K kinds;
- the method also includes:
- the residual value flag is encoded, and the residual value flag is encoded as a quotient value, where the quotient value is the absolute value of the coefficient minus the encoded value corresponding to the non-zero flag , the absolute value of M coefficients is greater than the corresponding numerical value of the encoding value corresponding to the i mark respectively and the encoding value of the said modulo result sign, and then divides the quotient value obtained by N, wherein, the encoding of the said modulo result sign The corresponding value preset by the value satisfies that the calculated quotient is an integer;
- the sign flag is encoded, when the coefficient is positive, the sign flag is encoded as 0, and when the coefficient is negative, the sign flag is encoded as 1.
- the coefficient modulo result flag of 2 is coded as 10B;
- the specific coding value set by the result flag is 00B; the coefficient modulo result flag with the remainder of 0 from the absolute value modulo 3 is coded as 11B, and the coefficient modulo result flag with the remainder of 1 from the absolute value modulo 3 is coded as 01B, Encode the coefficient modulo result flag with a remainder of 2 of the coefficient absolute value modulo 3 as 10B;
- the preset corresponding value is 1;
- the preset corresponding value is 2;
- the preset corresponding value is 3.
- the preset corresponding value is 1;
- the preset corresponding value is 2;
- the preset corresponding value is 3.
- An embodiment of the present disclosure provides a coefficient decoding method, as shown in FIG. 8 , including:
- Step 801 obtain a code stream, and analyze the position of the current coding unit to determine the coefficient
- Step 802 performing entropy decoding on the coefficient according to the position to obtain the syntax element of the coefficient
- Step 803 determining the value of the coefficient according to the syntax element of the coefficient
- performing entropy decoding on the coefficient includes: decoding the five syntax elements of the non-zero flag of the coefficient, the M absolute values greater than Xi flag, the modulo result flag, the residual value flag and the symbol flag.
- the coding of the modulo result flag and the remaining value flag is determined according to the coefficient operation on N modulo, i ⁇ M, i and M are positive integers, and N is a positive integer greater than 1.
- the entropy decoding of the coefficient is implemented in the following manner:
- Decode the non-zero flag when the non-zero flag is decoded as 0, skip the decoding of the M coefficients whose absolute value is greater than the i flag, the modulo result flag, the residual value flag and the symbol flag;
- entropy decoding of the coefficients is accomplished by:
- Decode the non-zero flag when the non-zero flag is decoded as 0, skip the decoding of the M coefficients whose absolute value is greater than the i flag, the modulo result flag, the residual value flag and the symbol flag;
- determining the value of the coefficient from its syntax element is accomplished by:
- the decoded value of the non-zero flag the M number of absolute values greater than the corresponding decoded value of the Xi flag, the preset corresponding numerical value of the decoded value of the modulo result flag, and the residual value flag by N, and the obtained sum value is used as: the absolute value of the coefficient; when the sign flag is 0, the value of the coefficient is positive, and when the sign flag is 1, the value of the coefficient is negative; the modulo operation is an operation of taking modulo N;
- the non-existing syntax element when the decoded value of the non-zero flag, the M absolute values greater than the corresponding decoded value of the Xi flag, the decoded value of the modulo result flag, and the remaining value flag do not exist, the non-existing syntax element shall be used.
- the decoded value of the syntax element takes the value 0.
- the value of the coefficient is determined according to the syntax element of the coefficient in any one of the following ways:
- the X i values corresponding to the M absolute values greater than 0 in the Xi flags are used as the absolute values of the coefficients; when the symbol flags are When the value of the coefficient is 0, the value of the coefficient is positive, and when the sign flag is 1, the value of the coefficient is negative;
- the non-zero flags When the non-zero flags are decoded as 1, and the M absolute values are greater than the Xi flags and both are 1, add the decoded values of the non-zero flags to the decoded values corresponding to the M absolute values greater than the Xi flags, and the encoded value of the modulo result flag.
- the preset corresponding numerical value and the residual value flag are multiplied by N, and the obtained sum value is used as the absolute value of the coefficient; when the symbol flag is 0, the value of the coefficient is positive, and when the symbol flag is 1, all The value of the coefficient is negative; the modulo operation is an operation of taking the modulo of N.
- An embodiment of the present disclosure provides a coefficient encoding method, as shown in FIG. 9 , including:
- Step 901 generating a coefficient block based on the residual block, scanning the coefficients in the coefficient block, and entropy coding the value of the coefficient;
- Step 902 write the code word generated by entropy coding into the code stream; wherein, entropy coding is performed on the value of the coefficient, including the non-zero flag of the coefficient, the M absolute values greater than Xi flag, the modulo result flag, The coding of the remaining value flag and the symbol flag of the five syntax elements, the coded values of the modulo result flag and the remaining value flag are determined according to the modulo operation on N, i ⁇ M, i and M are positive integers, and N is A positive integer greater than 1.
- the encoding of the modulo result flag is implemented in any one of the following ways:
- a specific coded value is set for the modulo result flag of the specified coefficient absolute value in advance, and when the absolute value of the coefficient is the specified coefficient absolute value, the modulo result flag is coded as the specific coded value, wherein , the corresponding encoded value has global uniqueness;
- the modulo result flag is encoded as the absolute value of the coefficient minus the non-zero flag and the absolute value of M coefficients greater than the i flag, and the difference obtained is then the pre-set coded value of the remainder obtained by taking the modulo of N;
- the preset coded value is a binary coded value, and each type of remainder corresponds to a binary coded value.
- the encoding of the residual value flag is implemented in any one of the following ways:
- the residual value flag is encoded as a quotient value, where the quotient value is the absolute value of the coefficient minus the encoded value corresponding to the non-zero flag, M absolute values
- the value is greater than the corresponding value of the encoded value corresponding to the Xi flag and the preset corresponding value of the encoded value of the modulo result flag, and then divided by N to obtain the quotient value, wherein the encoded value of the modulo result flag is preset.
- the corresponding value satisfies that the calculated quotient is an integer.
- the encoding in which the absolute values of the M coefficients are greater than the i flag is implemented by any one of the following methods:
- the non-zero flag is coded as 0, and M coefficients whose absolute value is greater than the i flag, Encoding of modulo result flag, residual value flag and symbol flag;
- the coding of the non-zero flag, the absolute value of the M coefficients greater than i flag, the modulo result flag, the residual value flag and the symbol flag is performed in sequence, wherein, when the non-zero flag is coded as 1, and when the absolute value of the M coefficients is greater than i and the flags are not all 1, the coding of the modulo result flag and the remaining value flag is skipped.
- the preset encoded value of the modulo result flag adopts two binary digits.
- the coding of the modulo result flag is binary coding, occupying K flag bits, then the binary coding of the modulo result flag has 2 K kinds;
- the ( 2K -N) binary codes are coded as the modulo result flags of the coefficients whose absolute values are M+1 to M+ 2K -N, and the The encoded values of the binary encoding are respectively defined as 0 to 2 K -N-1; the remaining N binary encodings are respectively encoded as the modulo result flags of the coefficients whose absolute value is greater than M+2 K -N, and the N binary encodings are The code values of the code are defined as 1 to N, respectively.
- the value is determined by the following calculation method:
- sig+gt1+f(rem_flag)+3 ⁇ rem, where qk is the coefficient, ⁇ qk ⁇ is the absolute value of the coefficient, sig is the encoded value of the non-zero flag, gt1 is the coding value whose absolute value of the coefficient is greater than 1 flag, rem_flag is the coding value of the modulo result flag, f(rem_flag) is the corresponding value preset by rem_flag, when the coding value rem_flag of the modulo result flag
- Coding is 11B, the coefficient absolute value modulo 3 is coded as 01B, and the coefficient absolute value modulo 3 is coded as 10B, and the coding of the residual value mark rem
- the value is determined by the following calculation method:
- sig+gt1+gt2+f(rem_flag)+3 ⁇ rem, where qk is the coefficient, ⁇ qk ⁇ is the absolute value of the coefficient, and sig is the encoded value of the non-zero flag , gt1 is the encoded value of the coefficient absolute value greater than 1 flag, gt2 is the encoded value of the coefficient absolute value greater than 2 flag, rem_flag is the encoded value of the modulo result flag, f(rem_flag) is the corresponding value preset by rem_flag.
- the coding of the modulo result flag is binary coding, and there are N kinds of binary coding of the modulo result flag;
- the absolute value of the coefficient is subtracted from the coding value of the non-zero mark and the coding value of the M coefficients whose absolute value is greater than the 1 mark, and the difference obtained is obtained after modulo N.
- the remainder is pre-set binary coded coded as the coded value of the modulo result flag of the coefficient
- the modulo result flag is coded as 11B, the modulus result flag with a remainder of 2 from the absolute value modulo 4 is coded as 00B, and the coefficient absolute value modulo 4 with a remainder of 3 is coded as 01B, and the remaining value is 01B.
- the coded value of the flag rem is determined by the following calculation method:
- sig+gt1+g(rem_flag)+4 ⁇ rem, where qk is the coefficient, ⁇ qk ⁇ is the absolute value of the coefficient, and sig is the non-zero flag Coding value, gt1 is the coding value whose absolute value of the coefficient is greater than 1 flag, rem_flag is the coding value of the modulo result flag, g(rem_flag) is the corresponding value preset by rem_flag, when the coding value rem_flag of the modulo result flag is 00B , the corresponding g(rem_flag) is 0, when the coded value rem_flag of the modulo result flag is 01B, the corresponding g(rem_flag) is 1, and when the coded value rem_flag of the modulo result flag is 10B, the corresponding g(rem_flag) ) is 2, and
- the syntax elements of the coefficients include a non-zero flag sig, a coefficient absolute value greater than i flag gti, a modulo result flag rem_flag, a residual value flag rem, and a sign flag coeff_sign.
- the non-zero flag sig is used to indicate whether the coefficient is non-zero.
- the coefficient absolute value greater than i flag gti indicates whether the coefficient absolute value is greater than i, for example, the coefficient absolute value greater than i flag gti at least includes the coefficient absolute value greater than 1 flag gt1.
- the absolute value of the coefficient greater than the i flag may also be referred to as the absolute value greater than the Xi flag.
- the value required to be encoded by the modulo result flag rem_flag is determined by the value of the modulo and the obtained remainder.
- the modulo result flag can be encoded as an encoded value corresponding to the remainder, wherein the remainder is the remainder obtained by taking the modulus of the absolute value of the coefficient to N; or, the remainder is subtracting the absolute value of the coefficient from the remainder.
- the absolute value of the non-zero flag and the M coefficients is greater than the i flag, and the difference obtained is the remainder obtained by modulo N.
- a specific coding value may be set for the modulo result flag of the specified absolute value of the coefficient in advance, and when the absolute value of the coefficient is the specified absolute value of the coefficient, the modulo result flag is coded as The specific code value, wherein the specific code is globally unique.
- a specific coding value may be set for the modulo result flag of the specified absolute value of the coefficient in advance, and when the absolute value of the coefficient is not the specified absolute value of the coefficient, the modulo result flag is coded is the coded value corresponding to the remainder, wherein the remainder is the remainder obtained by taking the absolute value of the coefficient modulo N; i sign, the difference obtained is then the remainder obtained by modulo N;
- the numerical value required to be coded by the residual value flag rem is preset by subtracting the coding value corresponding to the non-zero flag from the absolute value of the coefficient, the coding value corresponding to the absolute value of the M coefficients greater than the i flag respectively, and the coding value of the modulo result flag.
- the corresponding value of and then divided by N to determine the quotient value, wherein the preset corresponding value of the encoded value of the modulo result flag satisfies that the calculated quotient value is an integer.
- the sign flag coeff_sign is used to indicate the positive and negative of the level.
- the syntax elements of the coefficient include a non-zero flag sig, a coefficient absolute value greater than 1 flag gt1, a modulo result flag rem_flag, a residual value flag rem, and a sign flag coeff_sign.
- the modulo result flag rem_flag is represented by a two-bit binary.
- the coefficient coding method is as shown in FIG. 10 , where the values of each flag satisfy Formula 1:
- sig+gt1+f(rem_flag) +3 ⁇ rem.
- the coefficient absolute value greater than 1 flag gt1 the modulo result flag rem_flag, and the residual value flag rem does not exist, the corresponding value in this formula is treated as 0.
- rem_flag is a binary coded value
- f(rem_flag) is a numerical value corresponding to rem_flag, expressed in decimal
- Table 1 the corresponding relationship between rem_flag and f(rem_flag) is shown in Table 1:
- the encoded value of the modulo result flag rem_flag corresponding to the absolute value of the coefficient 2 is set to 11B in advance.
- this exemplary embodiment provides a coefficient entropy encoding method, as shown in FIG. 11 , the method includes:
- Step 1101 generating a coefficient block based on the residual block, and scanning the coefficients in the coefficient block;
- the current block is subjected to a prediction part, that is, by inter-frame prediction, or by means of intra-frame prediction, etc., the current block is predicted to obtain a prediction block, and an image corresponding to the coordinates of the original image and the prediction block is taken. block, make a difference with the prediction block to obtain the residual block of the current block, and then transform or not transform the residual block to obtain a transformed block containing transformed coefficients or a non-transformed coefficient block, which are collectively referred to as coefficient blocks here. .
- the coefficient block is then quantized, and the quantized coefficients are entropy encoded according to the coefficient scanning order.
- the scan may take a diagonal scan, a zigzag scan, a Zigzag scan, a horizontal scan, a vertical scan, a 4x4 sub-block scan, or any other sequence of scans.
- Step 1102 entropy encoding is performed on the value of the coefficient based on the encoding method shown in FIG. 10 and the corresponding relationship shown in Table 1;
- entropy coding is performed on the values of the coefficients based on the coding manner shown in The value is entropy encoded:
- the non-zero flag sig When the non-zero flag sig is 0, skip the coding of the coefficient absolute value greater than 1 flag, the modulo result flag, the residual value flag and the symbol flag; when the non-zero flag sig is 1, the absolute value of the coding coefficient is greater than 1 Flag gt1, when the absolute value of the coefficient is not greater than 1, the absolute value of the coefficient is greater than 1, the flag gt1 is encoded as 0, and when the absolute value of the coefficient is greater than 1, the absolute value of the coefficient is greater than 1.
- the flag gt1 is encoded as 1;
- the flag gt1 When the absolute value of the coefficient is greater than 1, the flag gt1 is 0, skip the encoding of the modulo result flag and the remaining value flag of the coefficient.
- the flag gt1 When the absolute value of the coefficient is greater than 1, the flag gt1 is 1, and the modulo result flag rem_flag is encoded.
- the modulo result flag rem_flag When the absolute value of the coefficient is 2, the modulo result flag rem_flag is encoded as 11B; when the coefficient absolute value modulo 3 result is 0, the modulo result flag rem_flag is encoded as 00B; when the coefficient absolute value modulo 3 result is 1, The modulo result flag rem_flag is encoded as 01B; when the coefficient absolute value modulo 3 result is 2, the modulo result flag rem_flag is encoded as 10B;
- the remaining value flag rem can be calculated according to the above formula 1 and Table 1.
- the sign flag coeff_sign of the coefficient is encoded; when the coefficient is positive, the sign flag coeff_sign is encoded as 0; when the coefficient is negative, the sign flag coeff_sign is encoded as 1.
- the transform coefficient string obtained after quantization according to the diagonal scan is ⁇ 0, 2, 4, 5, 0, 6, 3, 7, 0, 2, 1, 0, 9, 3, 0, 8 ⁇
- Step 1103 write the codeword generated by entropy coding into the code stream.
- this exemplary embodiment provides a coefficient entropy decoding method, as shown in FIG. 14 , the method includes:
- Step 1401 Acquire the code stream, parse the current coding unit, and determine the position of the coefficient according to the scanning mode used during coding;
- the scanning manner may be diagonal scanning, zigzag scanning, Zigzag scanning, horizontal scanning, vertical scanning, 4 ⁇ 4 sub-block scanning, or any other sequence of scanning.
- diagonal scanning is used for encoding, and diagonal scanning is also used for decoding.
- Step 1402 performing entropy decoding on the coefficient according to the position to obtain the syntax element of the coefficient
- entropy decoding may be performed on the first coefficient among all the coefficients in sequence according to the position to obtain the syntax element of the coefficient, and then the value of the coefficient may be determined according to the syntax element of the coefficient, and then the following steps may be performed. Entropy decoding of a coefficient.
- the syntax elements of the coefficients are obtained by entropy decoding the coefficients by position in the following manner:
- Decode the non-zero flag when the non-zero flag is decoded as 0, skip the decoding of the coefficient absolute value greater than 1 flag, the modulo result flag, the residual value flag and the symbol flag;
- Step 1403 Determine the value of the coefficient according to the syntax element of the coefficient.
- determining the value of the coefficient from the syntax element of the coefficient is achieved by:
- the syntax element that does not exist shall be used as the syntax element.
- the decoded value or the preset corresponding value is 0.
- the absolute value of the coefficient is calculated by Equation 1 above.
- determining the value of the coefficient from a syntax element of the coefficient is accomplished in any of the following ways:
- the absolute value of the coefficient is determined to be 1; when the sign flag is 0, the value of the coefficient is positive, and when the sign flag is 1 , the value of the coefficient is negative;
- the absolute value of the coefficient greater than 1 is decoded as 1
- the modulo result flag is decoded as 11B
- the absolute value of the coefficient is determined to be 2
- the sign flag is 0, the value of the coefficient is determined to be 2 Positive, when the sign flag is 1, the value of the coefficient is negative;
- the absolute value of the coefficient is calculated according to the above formula 1; when the symbol flag is 0, the coefficient The value of is positive, and when the sign flag is 1, the value of the coefficient is negative.
- the coefficient is -3.
- the encoding mode and the corresponding relationship shown in the above-mentioned Figure 10 and Table 1 are an exemplary description, and other encoding modes and corresponding relationships can also be used, for example, two binary codes include four kinds of binary codes, and any one of the binary codes is used as.
- the syntax elements of the coefficients include a non-zero flag sig, a coefficient absolute value greater than 1 flag gt1, a coefficient absolute value greater than 2 flag gt2, a modulo result flag rem_flag, a residual value flag rem, and a sign flag coeff_sign.
- the modulo result flag rem_flag is represented by a two-bit binary.
- the coefficient coding method is as shown in FIG. 15 , wherein the values of each flag satisfy Formula 2:
- sig+gt1+gt2+f( rem_flag)+3 ⁇ rem.
- the coefficient absolute value greater than 1 flag gt1 the coefficient absolute value greater than 2 flag gt2
- the modulo result flag rem_flag the residual value flag rem does not exist, it is not present in this formula
- the corresponding value in is treated as 0.
- rem_flag is a binary coded value
- f(rem_flag) is a numerical value corresponding to rem_flag, expressed in decimal
- Table 2 the corresponding relationship between rem_flag and f(rem_flag) is shown in Table 2:
- the encoded value of the modulo result flag rem_flag corresponding to the absolute value of the coefficient of 3 is set to 00B in advance.
- this exemplary embodiment provides a coefficient entropy encoding method, as shown in FIG. 16 , the method includes:
- Step 1601 generating a coefficient block based on the residual block, and scanning the coefficients in the coefficient block;
- the current block is subjected to a prediction part, that is, by inter-frame prediction, or by means of intra-frame prediction, etc., the current block is predicted to obtain a prediction block, and an image corresponding to the coordinates of the original image and the prediction block is taken. block, make a difference with the prediction block to obtain the residual block of the current block, and then transform or not transform the residual block to obtain a transformed block containing transformed coefficients or a non-transformed coefficient block, which are collectively referred to as coefficient blocks here. .
- the coefficient block is then quantized, and the quantized coefficients are entropy encoded according to the coefficient scanning order.
- the scan may take a diagonal scan, a zigzag scan, a Zigzag scan, a horizontal scan, a vertical scan, a 4x4 sub-block scan, or any other sequence of scans.
- Step 1602 entropy encoding is performed on the value of the coefficient based on the encoding method shown in FIG. 15 and the corresponding relationship shown in Table 2;
- entropy coding is performed on the value of the coefficient based on the coding manner shown in The value is entropy encoded:
- the non-zero flag sig When the non-zero flag sig is 0, skip the coding of the coefficient absolute value greater than 1 flag, the coefficient absolute value greater than 2 flag, the modulo result flag, the residual value flag and the symbol flag; when the non-zero flag sig is 1 , the absolute value of the coding coefficient is greater than 1 flag gt1, when the absolute value of the coefficient is not greater than 1, the absolute value of the coefficient is greater than 1 flag gt1 is encoded as 0, when the absolute value of the coefficient is greater than 1, the absolute value of the coefficient is greater than 1 The flag gt1 is encoded is 1;
- the flag gt1 When the absolute value of the coefficient is greater than 1, the flag gt1 is 0, skip the coding of the absolute value of the coefficient of the coefficient is greater than 2, the modulo result flag and the remaining value flag.
- the flag gt1 When the absolute value of the coefficient is greater than 1, the flag gt1 is 1, the coding coefficient If the absolute value of the coefficient is greater than 2, when the absolute value of the coefficient is not greater than 2, the absolute value of the coefficient is greater than 2 and the flag gt1 is encoded as 0.
- the absolute value of the coefficient is greater than 2
- the flag gt1 is encoded as 1;
- the flag gt2 When the absolute value of the coefficient is greater than 2, the flag gt2 is 0, skip the encoding of the modulo result flag and the remaining value flag of the coefficient; when the absolute value of the coefficient is greater than 2, the flag gt2 is 1, and the modulo result flag rem_flag is encoded.
- the modulo result flag rem_flag When the absolute value of the coefficient is 3, the modulo result flag rem_flag is encoded as 00B; when the absolute value of the coefficient modulo 3 is 0, the modulo result flag rem_flag is encoded as 11B; when the coefficient absolute value modulo 3 is 1, the The modulo result flag rem_flag is coded as 01B; when the coefficient absolute value modulo 3 result is 2, the modulo result flag rem_flag is coded as 10B;
- the remaining value flag rem can be calculated according to the above formula 2 and table 2.
- the sign flag coeff_sign is encoded; when the coefficient is positive, the sign flag coeff_sign is encoded as 0; when the coefficient is negative, the sign flag coeff_sign is encoded as 1.
- Step 1603 write the codeword generated by entropy coding into the code stream.
- this exemplary embodiment provides a coefficient entropy decoding method, as shown in FIG. 17 , the method includes:
- Step 1701 Acquire a code stream, parse the current coding unit, and determine the position of the coefficient according to the scanning mode used during coding;
- the scanning manner may be diagonal scanning, zigzag scanning, Zigzag scanning, horizontal scanning, vertical scanning, 4 ⁇ 4 sub-block scanning, or any other sequence of scanning.
- zigzag scanning is used during encoding, and zigzag scanning is also used during decoding.
- Step 1702 performing entropy decoding on the coefficient according to the position to obtain the syntax element of the coefficient
- entropy decoding may be performed on the first coefficient among all the coefficients in sequence according to the position to obtain the syntax element of the coefficient, and then the value of the coefficient may be determined according to the syntax element of the coefficient, and then the following steps may be performed. Entropy decoding of a coefficient.
- the syntax elements of the coefficients are obtained by entropy decoding the coefficients by position in the following manner:
- Decode the non-zero flag when the non-zero flag is decoded as 0, skip the decoding of the flag of coefficient absolute value greater than 1, coefficient absolute value greater than 2 flag, modulo result flag, residual value flag and symbol flag;
- the absolute value of the decoding coefficient is greater than 1, and when the absolute value of the coefficient is greater than 1, the decoding is 0, and the decoding of the absolute value of the coefficient is greater than 2, the modulo result flag, and the remaining value flag are skipped;
- Step 1703 determining the value of the coefficient according to the syntax element of the coefficient
- determining the value of the coefficient from the syntax element of the coefficient is achieved by:
- the obtained sum value is used as the absolute value of the coefficient; when the sign is 0, the value of the coefficient is positive, and when the sign is 1, the value of the coefficient is negative;
- the decoded value of the non-zero flag when the decoded value of the non-zero flag, the decoded value of the coefficient absolute value greater than 1 flag, the decoded value of the coefficient absolute value greater than 2 flag, the decoded value of the modulo result flag, and the residual value flag, any syntax element does not exist , the decoded value of the non-existing syntax element or the preset corresponding value takes the value 0.
- the absolute value of the coefficient is calculated by Equation 2 above.
- determining the value of the coefficient from a syntax element of the coefficient is accomplished in any of the following ways:
- the absolute value of the coefficient is determined to be 1; when the sign flag is 0, the value of the coefficient is positive, and when the sign flag is 1 , the value of the coefficient is negative;
- the coefficient absolute value greater than 1 is decoded as 1
- the coefficient absolute value greater than 2 is decoded as 0, the absolute value of the coefficient is determined to be 2; when the sign flag is 0, the coefficient's absolute value is 0. The value is positive, and when the sign flag is 1, the value of the coefficient is negative;
- the coefficient absolute value greater than 1 is decoded as 1
- the coefficient absolute value greater than 2 is decoded as 1
- the modulo result flag is decoded as 00B, the absolute value of the coefficient is determined to be 3;
- the value of the coefficient is positive, and when the sign flag is 1, the value of the coefficient is negative;
- the coefficient is -3.
- the encoding mode and the corresponding relationship shown in the above-mentioned Figure 15 and Table 2 are an exemplary illustration, and other encoding modes and corresponding relationships can also be adopted, for example, two binary codes include four kinds of binary codes, and any one of the binary codes is used as the binary code.
- the coded value of the modulo result flag rem_flag whose coefficient absolute value is 3, and the other three are respectively used as the coding value of the three modulo result flags rem_flag, rem_flag and f( The corresponding relationship of rem_flag) satisfies that the absolute value of the coefficient calculated according to formula 2 is an integer.
- the syntax elements of the coefficient include a non-zero flag sig, a coefficient absolute value greater than 1 flag gt1, a modulo result flag rem_flag, a residual value flag rem, and a sign flag coeff_sign.
- the modulo result flag rem_flag is represented by a three-bit binary.
- the coefficient coding method is as shown in FIG. 18 , where the values of each flag satisfy Formula 3:
- sig+gt1+f(rem_flag) +5 ⁇ rem, in this formula 3, when any one of the non-zero flag sig, the coefficient absolute value greater than 1 flag gt1, the modulo result flag rem_flag, and the residual value flag rem does not exist, its corresponding value in this formula Values are treated as 0.
- rem_flag is a binary coded value
- f(rem_flag) is a numerical value corresponding to rem_flag, expressed in decimal
- Table 3 the corresponding relationship between rem_flag and f(rem_flag) is shown in Table 3:
- the coded value of the modulo result flag rem_flag corresponding to the absolute coefficient value of 2 is set to 101B in advance
- the coded value of the modulo result flag rem_flag corresponding to the absolute coefficient value of 3 is set to 110B
- the absolute value of the coefficient is set to 110B.
- the encoded value of the modulo result flag rem_flag corresponding to a value of 4 is set to 11B.
- the present exemplary embodiment provides a coefficient entropy encoding method, as shown in FIG. 19 , the method includes:
- Step 1901 generating a coefficient block based on the residual block, and scanning the coefficients in the coefficient block;
- the current block is subjected to a prediction part, that is, by inter-frame prediction, or by means of intra-frame prediction, etc., the current block is predicted to obtain a prediction block, and an image corresponding to the coordinates of the original image and the prediction block is taken. block, make a difference with the prediction block to obtain the residual block of the current block, and then transform or not transform the residual block to obtain a transformed block containing transformed coefficients or a non-transformed coefficient block, which are collectively referred to as coefficient blocks here. .
- the coefficient block is then quantized, and the quantized coefficients are entropy encoded according to the coefficient scanning order.
- the scan may take a diagonal scan, a zigzag scan, a Zigzag scan, a horizontal scan, a vertical scan, a 4x4 sub-block scan, or any other sequence of scans.
- Step 1902 entropy encoding is performed on the value of the coefficient based on the encoding method shown in FIG. 18 and the corresponding relationship shown in Table 3;
- entropy coding is performed on the values of the coefficients based on the coding manner shown in The value is entropy encoded:
- the non-zero flag sig When the non-zero flag sig is 0, skip the coding of the coefficient absolute value greater than 1 flag, the modulo result flag, the residual value flag and the symbol flag; when the non-zero flag sig is 1, the absolute value of the coding coefficient is greater than 1 Flag gt1, when the absolute value of the coefficient is not greater than 1, the absolute value of the coefficient greater than 1 flag gt1 is encoded as 0, when the absolute value of the coefficient is greater than 1, the absolute value of the coefficient is greater than 1 The flag gt1 is encoded as 1;
- the flag gt1 When the absolute value of the coefficient is greater than 1, the flag gt1 is 0, skip the encoding of the modulo result flag and the remaining value flag of the coefficient, and when the absolute value of the coefficient is greater than 1, the flag gt1 is 1, encode the modulo result flag of the coefficient;
- the modulo result flag rem_flag When the absolute value modulo of the coefficient is 2, the modulo result flag rem_flag is coded as 101B; when the absolute value modulo of the coefficient is 3, the modulo result flag rem_flag is coded as 110B; when the coefficient absolute value modulo is 4,
- the modulo result flag rem_flag is encoded as 111B, when the absolute value modulo 5 result of the coefficient is 0, the modulo result flag rem_flag is encoded as 000B; when the coefficient absolute value modulo 5 result is 1, the modulo result flag rem_flag Coded as 001B, when the coefficient absolute value modulo 5 result is 2, encode the modulo result flag
- the remaining value flag rem can be calculated according to the above formula 3 and table 3.
- the sign flag coeff_sign is encoded; when the coefficient is positive, the sign flag coeff_sign is encoded as 0; when the coefficient is negative, the sign flag coeff_sign is encoded as 1.
- Step 1903 write the codeword generated by entropy coding into the code stream.
- this exemplary embodiment provides a coefficient entropy decoding method, as shown in FIG. 20 , the method includes:
- Step 2001 obtain a code stream, parse the current coding unit, and determine the position of the coefficient according to the scanning mode adopted during coding;
- the scanning manner may be diagonal scanning, zigzag scanning, Zigzag scanning, horizontal scanning, vertical scanning, 4 ⁇ 4 sub-block scanning, or any other sequence of scanning.
- horizontal scanning is used during encoding, and horizontal scanning is also used during decoding.
- Step 2002 performing entropy decoding on the coefficient according to the position to obtain the syntax element of the coefficient
- entropy decoding may be performed on the first coefficient among all the coefficients in sequence according to the position to obtain the syntax element of the coefficient, and then the value of the coefficient may be determined according to the syntax element of the coefficient, and then the following steps may be performed. Entropy decoding of a coefficient.
- the syntax elements of the coefficients are obtained by entropy decoding the coefficients by position in the following manner:
- Decode the non-zero flag when the non-zero flag is decoded as 0, skip the decoding of the coefficient absolute value greater than 1 flag, the modulo result flag, the residual value flag and the symbol flag;
- Step 2003 determining the value of the coefficient according to the syntax element of the coefficient
- determining the value of the coefficient from the syntax element of the coefficient is achieved by:
- the non-existing syntax element when any syntax element in the decoded value of the non-zero flag, the decoded value corresponding to the absolute value of the coefficient greater than 1 flag, the decoded value of the modulo result flag, and the remaining value flag does not exist, the non-existing syntax element is used.
- the decoded value of the element or the preset corresponding value takes the value 0.
- the absolute value of the coefficient is calculated by Equation 3 above.
- determining the value of the coefficient from a syntax element of the coefficient is accomplished in any of the following ways:
- the absolute value of the coefficient is determined to be 1; when the sign flag is 0, the value of the coefficient is positive, and when the sign flag is 1 , the value of the coefficient is negative;
- the absolute value of the coefficient greater than 1 is decoded as 1
- the modulo result flag is decoded as 110B
- the absolute value of the coefficient is determined to be 3 and when the sign flag is 0, the value of the coefficient is Positive, when the sign flag is 1, the value of the coefficient is negative;
- the absolute value of the coefficient is determined to be 4, and when the symbol flag is 0, the value of the coefficient is determined Positive, when the sign flag is 1, the value of the coefficient is negative;
- the absolute value of the coefficient is calculated according to the above formula 3 and Table 3; when the symbol When the flag is 0, the value of the coefficient is positive, and when the sign flag is 1, the value of the coefficient is negative.
- the encoding mode and the corresponding relationship shown in the above-mentioned Figure 18 and Table 3 are an exemplary illustration, and other encoding modes and corresponding relationships can also be used, for example, three binary codes include eight binary codes, and any three binary codes are respectively.
- the coding value of the modulo result flag rem_flag with absolute coefficient values of 2, 3, and 4 the other five binary codes are used as the absolute value modulo 5 plus 0, excess 1, excess 2, excess 3, and excess 4.
- the coded value of the modulo result flag rem_flag, the corresponding relationship between rem_flag and f(rem_flag) satisfies that the absolute value of the coefficient calculated according to formula 3 is an integer.
- the syntax elements of the coefficient include a non-zero flag sig, a coefficient absolute value greater than 1 flag gt1, a modulo result flag rem_flag, a residual value flag rem, and a sign flag coeff_sign.
- the modulo result flag rem_flag is represented by a two-bit binary.
- the coefficient coding method is as shown in FIG. 21 , where the values of each flag satisfy Formula 4:
- sig+gt1+g(rem_flag) +4 ⁇ rem.
- the coefficient absolute value greater than 1 flag gt1 the modulo result flag rem_flag, and the residual value flag rem does not exist, its corresponding value in this formula is treated as 0.
- rem_flag is a corresponding binary code value
- g(rem_flag) is a numerical value corresponding to rem_flag, and the numerical value is expressed in decimal
- Table 4 the corresponding relationship between rem_flag and g(rem_flag) is shown in Table 4:
- the present exemplary embodiment provides a coefficient entropy encoding method, as shown in FIG. 22 , the method includes:
- Step 2201 generating a coefficient block based on the residual block, and scanning the coefficients in the coefficient block;
- the current block is subjected to a prediction part, that is, by inter-frame prediction, or by means of intra-frame prediction, etc., the current block is predicted to obtain a prediction block, and an image corresponding to the coordinates of the original image and the prediction block is taken. block, make a difference with the prediction block to obtain the residual block of the current block, and then transform or not transform the residual block to obtain a transformed block containing transformed coefficients or a non-transformed coefficient block, which are collectively referred to as coefficient blocks here. .
- the coefficient block is then quantized, and the quantized coefficients are entropy encoded according to the coefficient scanning order.
- the scan may take a diagonal scan, a zigzag scan, a Zigzag scan, a horizontal scan, a vertical scan, a 4x4 sub-block scan, or any other sequence of scans.
- Step 2202 entropy encoding is performed on the value of the coefficient based on the encoding method shown in FIG. 21 and the corresponding relationship shown in Table 4;
- entropy coding is performed on the values of the coefficients based on the coding manner shown in FIG. 21 and the corresponding relationship shown in Table 4, including: performing entropy coding on each coefficient in the coefficient block according to the scanning position.
- the value is entropy encoded:
- the flag gt1 When the absolute value of the coefficient is greater than 1, the flag gt1 is 0, skip the encoding of the modulo result flag and the remaining value flag of the coefficient, and when the absolute value of the coefficient is greater than 1, the flag gt1 is 1, encode the modulo result flag of the coefficient;
- the coefficient absolute value modulo 4 result When the coefficient absolute value modulo 4 result is 0, encode the modulo result flag rem_flag as 00B; when the coefficient absolute value modulo 4 result is 1, encode the modulo result flag rem_flag as 01B, when the coefficient absolute value modulo 4 4
- the modulo result flag rem_flag When the result is 2, the modulo result flag rem_flag is coded as 10B, and when the coefficient absolute value modulo 4 result is 3, the modulo result flag rem_flag is coded as 11B;
- the remaining value flag rem can be calculated according to the above formula 4 and Table 4.
- the sign flag coeff_sign is encoded; when the coefficient is positive, the sign flag coeff_sign is encoded as 0; when the coefficient is negative, the sign flag coeff_sign is encoded as 1.
- Step 2203 Write the codeword generated by entropy coding into the code stream.
- the present exemplary embodiment provides a coefficient entropy decoding method, as shown in FIG. 23 , the method includes:
- Step 2301 obtain the code stream, parse the current coding unit, and determine the position of the coefficient according to the scanning mode adopted during coding;
- the scanning manner may be diagonal scanning, zigzag scanning, Zigzag scanning, horizontal scanning, vertical scanning, 4 ⁇ 4 sub-block scanning, or any other sequence of scanning.
- vertical scanning is used during encoding, and vertical scanning is also used during decoding.
- Step 2302 performing entropy decoding on the coefficient according to the position to obtain the syntax element of the coefficient
- entropy decoding may be performed on the first coefficient among all the coefficients in sequence according to the position to obtain the syntax element of the coefficient, and then the value of the coefficient may be determined according to the syntax element of the coefficient, and then the following steps may be performed. Entropy decoding of a coefficient.
- the syntax elements of the coefficients are obtained by entropy decoding the coefficients by position in the following manner:
- Decode the non-zero flag when the non-zero flag is decoded as 0, skip the decoding of the coefficient absolute value greater than 1 flag, the modulo result flag, the residual value flag and the symbol flag;
- Step 2303 Determine the value of the coefficient according to the syntax element of the coefficient.
- determining the value of the coefficient from the syntax element of the coefficient is achieved by:
- the non-existing syntax element when any syntax element in the decoded value of the non-zero flag, the decoded value corresponding to the absolute value of the coefficient greater than 1 flag, the decoded value of the modulo result flag, and the remaining value flag does not exist, the non-existing syntax element is used.
- the decoded value of the element or the preset corresponding value takes the value 0.
- the absolute value of the coefficient is calculated by Equation 4 above.
- determining the value of the coefficient from a syntax element of the coefficient is accomplished in any of the following ways:
- the absolute value of the coefficient is determined to be 1; when the sign flag is 0, the value of the coefficient is positive, and when the sign flag is 1 , the value of the coefficient is negative;
- the coefficient is -8.
- the encoding mode and the corresponding relationship shown in the above-mentioned Figure 21 and Table 4 are an exemplary illustration, and other encoding modes and corresponding relationships can also be adopted, for example, two binary codes include four kinds of binary codes, and these four kinds are respectively used as coefficient absolutes.
- An embodiment of the present disclosure provides a coefficient decoding method, as shown in FIG. 24 , including:
- Step 2401 parse the obtained code stream, and decode the syntax element of the coefficient to be decoded
- Step 2402 determining the value of the coefficient to be decoded according to the syntax element obtained by decoding
- the syntax elements include: a non-zero flag, an absolute value greater than 1 flag, a modulo result flag, a residual value flag, and a symbol flag;
- the absolute value of the coefficient to be decoded is the encoded value of the non-zero flag, the absolute value is greater than The coded value of the 1 mark and the pre-set corresponding numerical value of the coded value of the modulo result mark, plus the product of the coded value of the remaining value mark and N, the obtained sum value;
- the coefficient to be decoded The value of the value is determined according to the absolute value of the coefficient to be decoded and the sign indicating positive and negative; , 4 or 5.
- N 3;
- the preset corresponding value is 2;
- the preset corresponding value is 3.
- N 4;
- the preset corresponding value is 1;
- the preset corresponding value is 2;
- An embodiment of the present disclosure provides a coefficient encoding method, as shown in FIG. 25 , including:
- Step 2501 generating a coefficient block based on the residual block, scanning the coefficients in the coefficient block, and encoding the syntax elements of the coefficients to be encoded;
- Step 2502 write the code word generated by encoding into the code stream
- the syntax elements include: a non-zero flag, an absolute value greater than 1 flag, a modulo result flag, a residual value flag, and a symbol flag;
- the absolute value of the coefficient to be decoded is the encoded value of the non-zero flag, the absolute value is greater than The coded value of the 1 mark and the pre-set corresponding numerical value of the coded value of the modulo result mark, plus the product of the coded value of the remaining value mark and N, the obtained sum value;
- the coefficient to be decoded The value of the value is determined according to the absolute value of the coefficient to be decoded and the sign indicating positive and negative; 4 or 5.
- N 3;
- the modulo result flag is encoded as 11B,
- N 3;
- the modulo result flag is encoded as 00B
- the preset corresponding value is 1;
- the preset corresponding value is 2;
- the preset corresponding value is 3.
- An embodiment of the present disclosure provides a coefficient decoding method, as shown in FIG. 26 , including:
- Step 2601 parse the obtained code stream, and decode the syntax element of the coefficient to be decoded
- Step 2602 determining the value of the coefficient to be decoded according to the syntax element obtained by decoding
- the syntax elements include: a non-zero flag, an absolute value greater than 1 flag, an absolute value greater than 2 flag, a modulo result flag, a residual value flag and a symbol flag;
- the absolute value of the coefficient to be decoded is a non-zero flag
- the product of N is the obtained sum value;
- the value of the coefficient to be decoded is a value determined according to the absolute value of the coefficient to be decoded and the sign sign indicating positive and negative;
- N 4;
- the preset corresponding value is 1;
- the preset corresponding value is 2;
- the preset corresponding value is 3.
- An embodiment of the present disclosure provides a coefficient encoding method, as shown in FIG. 27 , including:
- Step 2701 generating a coefficient block based on the residual block, scanning the coefficients in the coefficient block, and encoding the syntax elements of the coefficients to be encoded;
- Step 2702 write the code word generated by encoding into the code stream
- the syntax elements include: a non-zero flag, an absolute value greater than 1 flag, an absolute value greater than 2 flag, a modulo result flag, a residual value flag and a symbol flag;
- the absolute value of the coefficient to be decoded is a non-zero flag
- the product of N is the obtained sum value;
- the value of the coefficient to be decoded is a value determined according to the absolute value of the coefficient to be decoded and the sign sign indicating positive and negative;
- N 4;
- the preset corresponding value is 1;
- the preset corresponding value is 2;
- the preset corresponding value is 3.
- any one or more of the following methods are used for encoding: context-based adaptive variable-length coding CAVLC (context-based adaptive variable-length code ), context-based adaptive binary arithmetic coding (context-based adaptive binary arithmetic coding), syntax-based adaptive binary arithmetic coding (syntax-based adaptive binary arithmetic coding), probability interval partitioning entropy (PIPE) ), bypass coding or other entropy coding.
- CAVLC context-based adaptive variable-length code
- context-based adaptive binary arithmetic coding context-based adaptive binary arithmetic coding
- syntax-based adaptive binary arithmetic coding syntax-based adaptive binary arithmetic coding
- PIPE probability interval partitioning entropy
- the encoding of the residual value flag rem and the symbol flag coeff_sign may be encoded using the bypass encoding method, and the non-zero flag sig and the coefficient absolute value greater than 1 flag may be used for encoding. gt1.
- the coding of the modulo result flag rem_flag is performed using a context-based adaptive coding method.
- the encoding of the residual value flag rem and the symbol flag coeff_sign may be encoded using the bypass encoding method, and the non-zero flag sig and the coefficient absolute value greater than 1 flag may be used for encoding.
- gt1 the coefficient absolute value greater than 1 flag gt1
- the modulo result flag rem_flag are coded using a context-based adaptive coding method.
- An embodiment of the present disclosure further provides an encoding device, as shown in FIG. 28 , comprising: a processor and a memory storing a computer program executable on the processor, wherein the processor executes the computer program When implementing the coefficient entropy coding method described in any one of the above.
- the encoding device may be a video encoder or a video codec of any structure.
- FIG. 29 is a structural block diagram of a video encoder.
- the video encoder 20 includes a video data memory 33, a division unit 35, a prediction processing unit 41, a summer 50, Transform processing unit 52 , quantification unit 54 , entropy encoding unit 56 .
- Prediction processing unit 41 includes a motion estimation unit (MEU) 42 , a motion compensation unit (MCU) 44 , an intra-prediction processing unit 46 , and an intra-block copy (IBC) unit 48 .
- MEU 42, MCU 44, intra-prediction processing unit 46, and IBC unit 48 may actually be highly integrated.
- video encoder 20 also includes inverse quantization unit 58 , inverse transform processing unit 60 , summer 62 , filter unit 64 , and decoded picture buffer (DPB) 66 .
- DPB decoded picture buffer
- the coefficient decoding method described in any of the above embodiments may be performed by a video decoder.
- An embodiment of the present disclosure further provides a decoding device, as shown in FIG. 30 , comprising: a processor and a memory storing a computer program executable on the processor, wherein the processor executes the computer program When implementing the coefficient entropy decoding method described in any of the above.
- the encoding device may be a video decoder or video codec of any structure.
- FIG. 31 is a structural block diagram of a video decoder.
- the video decoder 30 includes a video data memory 78 , an entropy decoding unit 80 , a prediction processing unit 81 , and an inverse quantization unit 86 . , an inverse transform processing unit 88 , a summer 90 , a wave filter unit 92 and a DPB 94 .
- the prediction processing unit 81 includes an MCU 82 intra-frame prediction processing unit 84 and an IBC unit 85 .
- video decoder 30 may perform a decoding process that is substantially reciprocal to the encoding process described with respect to video encoder 20 from FIG. 30 .
- Embodiments of the present disclosure further provide a non-transitory computer-readable storage medium, where a computer program is stored in the computer-readable storage medium, wherein, when the computer program is executed by a processor, any one of the above-mentioned methods is implemented.
- the decoding described in the embodiments of the present disclosure may be interpreted as including a decoding operation, or as including an encoding operation and a decoding operation.
- the encoding described in the embodiments of the present disclosure may be interpreted as including an encoding operation, or as including an encoding operation and a decoding operation.
- decoded values described in the embodiments of the present disclosure may also be referred to as encoded values, and the encoded values may also be referred to as decoded values, which are the same.
- the functions described may be implemented in hardware, software, firmware, or any combination thereof. If implemented in software, the functions may be stored on or transmitted over as one or more instructions or code on a computer-readable medium and executed by a hardware-based processing unit.
- Computer-readable media may include computer-readable storage media corresponding to tangible media, such as data storage media, or communication media including any medium that facilitates transfer of a computer program from one place to another, eg, according to a communication protocol.
- a computer-readable medium may generally correspond to a non-transitory, tangible computer-readable storage medium or a communication medium such as a signal or carrier wave.
- Data storage media can be any available media that can be accessed by one or more computers or one or more processors to retrieve instructions, code and/or data structures for implementing the techniques described in this disclosure.
- the computer program product may comprise a computer-readable medium.
- such computer-readable storage media may include RAM, ROM, EEPROM, CD-ROM or other optical disk storage devices, magnetic disk storage devices or other magnetic storage devices, flash memory, or may be used to store instructions or data Any other medium in the form of a structure that stores the desired program code and that can be accessed by a computer.
- any connection is also termed a computer-readable medium if, for example, a connection is made from a website, server, or other remote sources transmit instructions, coaxial cable, fiber optic cable, twine, DSL, or wireless technologies such as infrared, radio, and microwave are included in the definition of medium.
- computer-readable storage media and data storage media do not include connections, carrier waves, signals, or other transitory (transitory) media, but are instead directed to non-transitory, tangible storage media.
- magnetic disks and optical disks include compact disks (CDs), laser disks, optical disks, digital versatile disks (DVDs), floppy disks, or Blu-ray disks, etc., where disks typically reproduce data magnetically, while optical disks use lasers to Optically reproduce data. Combinations of the above should also be included within the scope of computer-readable media.
- processors such as one or more digital signal processors (DSPs), general purpose microprocessors, application specific integrated circuits (ASICs) field programmable logic arrays (FPGAs) or other equivalent integrated or discrete logic circuits.
- DSPs digital signal processors
- ASICs application specific integrated circuits
- FPGAs field programmable logic arrays
- processors may refer to any of the foregoing structure or any other structure suitable for implementation of the techniques described herein.
- the functionality described herein may be provided within dedicated hardware and/or software modules configured for encoding and decoding, or incorporated in a combined codec. Also, the techniques may be fully implemented in one or more circuits or logic elements.
- the technical solutions of the embodiments of the present disclosure may be implemented in a wide variety of devices or apparatuses, including a wireless handset, an integrated circuit (IC), or a set of ICs (eg, a chip set).
- IC integrated circuit
- Various components, modules, or units are described in the disclosed embodiments to emphasize functional aspects of devices configured to perform the described techniques, but do not necessarily require realization by different hardware units. Rather, as described above, the various units may be combined in codec hardware units or provided by a collection of interoperating hardware units (including one or more processors as described above) in conjunction with suitable software and/or firmware.
- Computer storage media includes both volatile and nonvolatile implemented in any method or technology for storage of information, such as computer readable instructions, data structures, program modules or other data flexible, removable and non-removable media.
- Computer storage media include, but are not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, digital versatile disk (DVD) or other optical disk storage, magnetic cartridges, magnetic tape, magnetic disk storage or other magnetic storage devices, or may Any other medium used to store desired information and which can be accessed by a computer.
- communication media typically embodies computer readable instructions, data structures, program modules, or other data in a modulated data signal such as a carrier wave or other transport mechanism, and can include any information delivery media, as is well known to those of ordinary skill in the art .
Abstract
Description
rem_flag | 1 1 | 0 0 | 0 1 | 1 0 |
f(rem_flag) | 0 | 1 | 2 | 3 |
rem_flag | 00 | 0 1 | 10 | 11 |
f(rem_flag) | 0 | 1 | 2 | 3 |
rem_flag | 00 | 01 | 10 | 11 |
f(rem_flag) | 0 | 1 | 2 | 3 |
Claims (29)
- 一种系数解码方法,包括:解析获取的码流,并对待解码系数的语法元素进行解码;根据解码得到的语法元素确定所述待解码系数的值;其中,所述语法元素包括:非零标志、M个绝对值大于X i标志、取模结果标志、剩余值标志和符号标志;所述待解码系数的绝对值为将非零标志的编码值、M个绝对值大于X i标志的的编码值以及取模结果标志的编码值预先设定的对应数值相加的和值,再加上剩余值标志的编码值与N的积,得到的和值;所述待解码系数的值为根据所述待解码系数的绝对值和表示正负性的符号标志确定的值;所述取模结果标志的编码值根据所述系数对N取模运算确定,i≥M,i、M为正整数,N为大于1的正整数,X i为正整数且当i取值不同时,X i取值不同且随i的取值递增。
- 根据权利要求1所述的系数解码方法,所述方法还包括:预先为指定的绝对值的取模结果标志设置特定编码值;解码非零标志,当非零标志解码为0时,跳过M个系数绝对值大于i标志、取模结果标志、剩余值标志和符号标志的解码;当非零标志解码为1时,解码M个绝对值大于Xi标志,当第g个绝对值大于Xi标志解码为0时,跳过后续M-g个绝对值大于Xi标志、取模结果标志和剩余值标志的解码;1≤g≤M;当M个系数绝对值大于i标志均为1时,解码取模结果标志;当取模结果标志的编码值解码为所述特定编码值时,跳过剩余值标志的解码;当取模结果标志解码不为所述特定编码值时,解码剩余值标志;当非零标志解码为1时,解码符号标志。
- 根据权利要求1所述的系数解码方法,所述方法还包括:解码非零标志,当非零标志解码为0时,跳过M个系数绝对值大于i标志、取模结果标志、剩余值标志和符号标志的解码;当非零标志解码为1时,解码M个绝对值大于Xi标志,当第g个绝对值大于Xi标志解码为0时,跳过后续M-g个绝对值大于Xi标志、取模结果标志和剩余值标志的解码;1≤g≤M,当i取值不同时,X i取值不同且随i的取值递增;当M个绝对值大于Xi标志均为1时,依次解码取模结果标志和剩余值标志;当非零标志解码为1时,解码符号标志。
- 根据权利要求2或3所述的系数解码方法,所述方法还包括:系数的绝对值=非零标志的解码值+M个绝对值大于Xi标志分别对应的解码值+取模结果标志的解码值预先设定的对应数值+剩余值标志×N;其中,当非零标志的解码值、M个绝对值大于Xi标志分别对应的解码值、取模结果标志的解码值、以及剩余值标志中的任一个语法元素不存在时,将该不存在的语法元素的解码值或预先设定的对应数值取值为0。
- 根据权利要求1所述的系数解码方法,其中,M=1,2,或3,N=2,3,4或5。
- 根据权利要求2所述的系数解码方法,其中,M=1,X 1=1,N=3,所述指定的绝对值为2,预先为指定的系数绝对值的取模结果标志设置的特定编码值为11B;或者,M=2,X 1=1,X 2=2,N=3,所述指定的绝对值为3,预先为指定的系数绝对值的取模结果标志设置的特定编码值为00B。
- 根据权利要求2所述的系数解码方法,其中,M=1,X 1=1,N=3;当取模结果标志解码为11B时,预先设定的对应数值为0;当取模结果标志解码为00B时,预先设定的对应数值为1;当取模结果标志解码为01B时,预先设定的对应数值为2;当取模结果标志解码为10B时,预先设定的对应数值为3。
- 根据权利要求2所述的系数解码方法,其中,M=2,X 1=1,X 2=2,N=3;当取模结果标志解码为00B时,预先设定的对应数值为0;当取模结果标志解码为01B时,预先设定的对应数值为1;当取模结果标志解码为10B时,预先设定的对应数值为2;当取模结果标志解码为11B时,预先设定的对应数值为3。
- 根据权利要求3所述的系数解码方法,其中,M=1,X 1=1,N=4;当取模结果标志解码为00B时,预先设定的对应数值为0;当取模结果标志解码为01B时,预先设定的对应数值为1;当取模结果标志解码为10B时,预先设定的对应数值为2;当取模结果标志解码为11B时,预先设定的对应数值为3。
- 一种系数编码方法,包括:基于残差块产生系数块,对所述系数块中的系数进行扫描,并对待编码系数的语法元素进行编码;将编码产生的码字写入码流;其中,所述语法元素包括:非零标志、M个绝对值大于X i标志、取模结果标志、剩余值标志和符号标志;所述待解码系数的绝对值为将非零标志的编码值、M个绝对值大于X i标志的的编码值以及取模结果标志的编码值预先设定的对应数值相加的和值,再加上剩余值标志的编码值与N的积,得到的和值;所述待解码系数的值为根据所述待解码系数的绝对值和表示正负性的符号标志确定的值;所述取模结果标志的编码值根据所述系数对N取模运算确定,i≥M,i、M为正整数,N为大于1的正整数,X i为正整数且当i取值不同时,X i取值不同且随i的取值递增。
- 根据权利要求10所述的系数编码方法,其中,所述取模结果标志的编码为二进制编码,占用K个标志位,则所述取模结果标志的二进制编码有2 K种;所述方法还包括:预先为指定的系数绝对值的取模结果标志设置特定编码值;编码所述非零标志,当所述系数绝对值为0时,将所述非零标志编码为0,跳过M个系数绝对值大于i标志、取模结果标志、剩余值标志和符号标志的编码;当所述系数绝对值不为0时,将所述非零标志编码为1;当所述非零标志编码为1时,依次编码M个绝对值大于Xi标志,当所述系数的绝对值为Q,将X i大于Q的绝对值大于Xi标志编码为为0,跳过后续绝对值大于Xi标志的编码;将X i小于等于Q的绝对值大于Xi标志编码为1;当M个绝对值大于Xi标志中任一个编码为0时,跳过取模结果标志和剩余值标志的编码;当M个绝对值大于Xi标志均编码为1时,编码取模结果标志,当所述系数的绝对值为所述指定的系数绝对值时,将所述取模结果标志编码为所述特定编码值,其中,所述特定编码值具有全局唯一性;当所述系数的绝对值不为所述指定的系数绝对值时,将其中的(2 K-N)种二进制编码编码为绝对值为M+1到M+2 K-N的系数的取模结果标志,且将上述二进制编码的编码值分别定义为0到2 K-N-1;将其余的N种二进制编码分别编码为绝对值大于M+2 K-N的系数的取模结果标志,且将该N种二进制编码的编码值分别定义为1~N;当所述系数的绝对值不为所述指定的系数绝对值时,编码剩余值标志,将所述剩余值标志编码为商值,所述商值是所述系数的绝对值减去非零标志对应的编码值、M个系数绝对值大于i标志分别对应的编码值以及所述取模结果标志的编码值预先设定的对应数值,再除以N得到的商值,其中,所述取模结果标志的编码值预先设定的对应数值满足计算得到的商值为整数;当非零标志编码为1时,编码符号标志,当所述系数为正时,将符号标志编码为0,当所述系数为负时,将符号标志编码为1。
- 根据权利要求10所述的系数编码方法,其中,所述取模结果标志的编码为二进制编码,占用K个标志位,则所述取模结果标志的二进制编码有2 K种;所述方法还包括:编码所述非零标志,当所述系数绝对值为0时,将所述非零标志编码为0,跳过M个系数绝对值大于i标志、取模结果标志、剩余值标志和符号标志的编码;当所述系数绝对值不为0时,将所述非零标志编码为1;当所述非零标志编码为1时,依次编码M个绝对值大于Xi标志,当所述系数的绝对值为Q,将X i大于Q的绝对值大于Xi标志编码为为0,跳过后续绝对值大于Xi标志的编码;将X i小于等于Q的绝对值大于Xi标志编码为1;当M个绝对值大于Xi标志中任一个编码为0时,跳过取模结果标志和剩余值标志的编码;当M个绝对值大于Xi标志均编码为1时,编码取模结果标志,将其中的(2 K-N)种二进制编码编码为绝对值为M+1到M+2 K-N的系数的取模结果标志,且将上述二进制编码的编码值分别定义为0到2 K-N-1;将其余的N种二进制编码分别编码为绝对值大于M+2 K-N的系数的取模结果标志,且将该N种二进制编码的编码值分别定义为1~N;当M个绝对值大于Xi标志均编码为1时,编码剩余值标志,将所述剩余值标志编码为商值,所述商值是所述系数的绝对值减去非零标志对应的编码值、M个系数绝对值大于i标志分别对应的编码 值以及所述取模结果标志的编码值预先设定的对应数值,再除以N得到的商值,其中,所述取模结果标志的编码值预先设定的对应数值满足计算得到的商值为整数;当非零标志编码为1时,编码符号标志,当所述系数为正时,将符号标志编码为0,当所述系数为负时,将符号标志编码为1。
- 根据权利要求10所述的系数编码方法,其中,M=1,2,或3,N=2,3,4或5。
- 根据权利要求11所述的系数编码方法,其中,M=1,X 1=1 N=3,K=2,所述指定的系数绝对值为2,预先为指定的绝对值的取模结果标志设置的特定编码值为11B;将系数绝对值模3得余数为0的系数取模结果标志编码为00B,将系数绝对值模3得余数为1的系数取模结果标志编码为01B,将系数绝对值模3得余数为2的系数取模结果标志编码为10B;当取模结果标志编码为11B时,预先设定的对应数值为0;当取模结果标志编码为00B时,预先设定的对应数值为1;当取模结果标志编码为01B时,预先设定的对应数值为2;当取模结果标志编码为10B时,预先设定的对应数值为3。
- 根据权利要求11所述的系数编码方法,其中,M=2,X 1=1,X 2=2,N=3,K=2,所述指定的系数绝对值为3,预先为指定的系数绝对值的取模结果标志设置的特定编码值为00B;将系数绝对值模3得余数为0的系数取模结果标志编码为11B,将系数绝对值模3得余数为1的系数取模结果标志编码为01B,将系数绝对值模3得余数为2的系数取模结果标志编码为10B;当取模结果标志解码为00B时,预先设定的对应数值为0;当取模结果标志解码为01B时,预先设定的对应数值为1;当取模结果标志解码为10B时,预先设定的对应数值为2;当取模结果标志解码为11B时,预先设定的对应数值为3。
- 根据权利要求12所述的系数编码方法,其中,M=1,X 1=1,N=4,K=2,将系数绝对值模4得余数为0的系数取模结果标志编码为10B,将系数绝对值模4得余数为1的系数取模结果标志编码为11B,将系数绝对值模4得余数为2的系数取模结果标志编码为00B,将系数绝对值模4得余数为3的系数取模结果标志编码为01B;当取模结果标志解码为00B时,预先设定的对应数值为0;当取模结果标志解码为01B时,预先设定的对应数值为1;当取模结果标志解码为10B时,预先设定的对应数值为2;当取模结果标志解码为11B时,预先设定的对应数值为3。
- 一种系数解码方法,包括:解析获取的码流,并对待解码系数的语法元素进行解码;根据解码得到的语法元素确定所述待解码系数的值;其中,所述语法元素包括:非零标志、绝对值大于1标志、取模结果标志、剩余值标志和符号标志;所述待解码系数的绝对值为将非零标志的编码值、绝对值大于1标志的的编码值以及取模结果标志的编码值预先设定的对应数值相加的和值,再加上剩余值标志的编码值与N的积,得到的和值;所述待解码系数的值为根据所述待解码系数的绝对值和表示正负性的符号标志确定的值;所述取模结果标志的编码值根据所述系数对N取模运算确定,,N=2,3,4或5。
- 根据权利要求17所述的系数解码方法,其中,N=3;当取模结果标志解码为11B时,预先设定的对应数值为0;当取模结果标志解码为00B时,预先设定的对应数值为1;当取模结果标志解码为01B时,预先设定的对应数值为2;当取模结果标志解码为10B时,预先设定的对应数值为3。
- 根据权利要求17所述的系数解码方法,其中,N=4;当取模结果标志解码为00B时,预先设定的对应数值为0;当取模结果标志解码为01B时,预先设定的对应数值为1;当取模结果标志解码为10B时,预先设定的对应数值为2;当取模结果标志解码为11B时,预先设定的对应数值为3。
- 一种系数编码方法,包括:基于残差块产生系数块,对所述系数块中的系数进行扫描,并对待编码系数的语法元素进行编码;将编码产生的码字写入码流;其中,所述语法元素包括:非零标志、绝对值大于1标志、取模结果标志、剩余值标志和符号标志;所述待解码系数的绝对值为将非零标志的编码值、绝对值大于1标志的的编码值以及取模结果标志的编码值预先设定的对应数值相加的和值,再加上剩余值标志的编码值与N的积,得到的和值;所述待解码系数的值为根据所述待解码系数的绝对值和表示正负性的符号标志确定的值;所述取模结果标志的编码值根据所述系数对N取模运算确定,N=2,3,4或5。
- 根据权利要求20所述的系数编码方法,其中,N=3;当系数绝对值为2时,将取模结果标志编码为11B,将系数绝对值模3得余数为0的系数取模结果标志编码为00B;将系数绝对值模3得余数为1的系数取模结果标志编码为01B;将系数绝对值模3得余数为2的系数取模结果标志编码为10B;当取模结果标志编码为11B时,预先设定的对应数值为0;当取模结果标志编码为00B时,预先设定的对应数值为1;当取模结果标志编码为01B时,预先设定的对应数值为2;当取模结果标志编码为10B时,预先设定的对应数值为3。
- 根据权利要求20所述的系数编码方法,其中,N=3;当系数绝对值为3时,将取模结果标志编码为00B;将系数绝对值模3得余数为0的系数取模结果标志编码为11B;将系数绝对值模3得余数为1的系数取模结果标志编码为01B;将系数绝对值模3得余数为2的系数取模结果标志编码为10B;当取模结果标志解码为00B时,预先设定的对应数值为0;当取模结果标志解码为01B时,预先设定的对应数值为1;当取模结果标志解码为10B时,预先设定的对应数值为2;当取模结果标志解码为11B时,预先设定的对应数值为3。
- 一种系数解码方法,包括:解析获取的码流,并对待解码系数的语法元素进行解码;根据解码得到的语法元素确定所述待解码系数的值;其中,所述语法元素包括:非零标志、绝对值大于1标志、绝对值大于2标志、取模结果标志、剩余值标志和符号标志;所述待解码系数的绝对值为将非零标志的编码值、绝对值大于1标志的编码值、绝对值大于2标志的编码值以及取模结果标志的编码值预先设定的对应数值相加的和值,再加上剩余值标志的编码值与N的积,得到的和值;所述待解码系数的值为根据所述待解码系数的绝对值和表示正负性的符号标志确定的值;所述取模结果标志的编码值根据所述系数对N取模运算确定,N=2,3,4或5。
- 根据权利要求23所述的系数解码方法,其中,N=4;将系数绝对值模4得余数为0的系数取模结果标志编码为10B;将系数绝对值模4得余数为1的系数取模结果标志编码为11B;将系数绝对值模4得余数为2的系数取模结果标志编码为00B;将系数绝对值模4得余数为3的系数取模结果标志编码为01B;当取模结果标志解码为00B时,预先设定的对应数值为0;当取模结果标志解码为01B时,预先设定的对应数值为1;当取模结果标志解码为10B时,预先设定的对应数值为2;当取模结果标志解码为11B时,预先设定的对应数值为3。
- 一种系数编码方法,包括:基于残差块产生系数块,对所述系数块中的系数进行扫描,并对待编码系数的语法元素进行编码;将编码产生的码字写入码流;其中,所述语法元素包括:非零标志、绝对值大于1标志、绝对值大于2标志、取模结果标志、剩余值标志和符号标志;所述待解码系数的绝对值为将非零标志的编码值、绝对值大于1标志的编码值、绝对值大于2标志的编码值以及取模结果标志的编码值预先设定的对应数值相加的和值,再加上剩余值标志的编码值与N的积,得到的和值;所述待解码系数的值为根据所述待解码系数的绝对值和表示正负性的符号标志确定的值;所述取模结果标志的编码值根据所述系数对N取模运算确定,N=2,3,4或5。
- 根据权利要求25所述的系数编码方法,其中,N=4;将系数绝对值模4得余数为0的系数取模结果标志编码为10B,将系数绝对值模4得余数为1的系数取模结果标志编码为11B,将系数绝对值模4得余数为2的系数取模结果标志编码为00B,将系数绝对值模4得余数为3的系数取模结果标志编码为01B;当取模结果标志解码为00B时,预先设定的对应数值为0;当取模结果标志解码为01B时,预先设定的对应数值为1;当取模结果标志解码为10B时,预先设定的对应数值为2;当取模结果标志解码为11B时,预先设定的对应数值为3。
- 一种解码设备,包括:处理器以及存储有可在所述处理器上运行的计算机程序的存储器,其中,所述处理器执行所述计算机程序时实现如权利要求1至9,或者权利要求17至19,或者权利要求23至24中任一项所述的系数解码方法。
- 一种编码设备,包括:处理器以及存储有可在所述处理器上运行的计算机程序的存储器,其中,所述处理器执行所述计算机程序时实现如权利要求12至18,或者权利要求20至22,或者权利要求25至26中任一项所述的系数编码方法。
- 一种非瞬态计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其中,所述计算机程序时被处理器执行时实现如权利要求1至9,或者权利要求17至19,或者权利要求23至24中任一项所述的系数解码方法,或者实现如权利要求10至16,或者权利要求20至22,或者权利要求25至26中任一项所述的系数编码方法。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2021/080635 WO2022188186A1 (zh) | 2021-03-12 | 2021-03-12 | 系数编解码方法、编解码设备及存储介质 |
CN202180095282.6A CN116982316A (zh) | 2021-03-12 | 2021-03-12 | 系数编解码方法、编解码设备及存储介质 |
EP21929659.7A EP4307666A1 (en) | 2021-03-12 | 2021-03-12 | Coefficient encoding method, coefficient decoding method, encoding device, decoding device, and storage medium |
US18/367,101 US20230421816A1 (en) | 2021-03-12 | 2023-09-12 | Coefficient encoding method, coefficient decoding method, encoding device, decoding device, and storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2021/080635 WO2022188186A1 (zh) | 2021-03-12 | 2021-03-12 | 系数编解码方法、编解码设备及存储介质 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US18/367,101 Continuation US20230421816A1 (en) | 2021-03-12 | 2023-09-12 | Coefficient encoding method, coefficient decoding method, encoding device, decoding device, and storage medium |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2022188186A1 true WO2022188186A1 (zh) | 2022-09-15 |
Family
ID=83226202
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2021/080635 WO2022188186A1 (zh) | 2021-03-12 | 2021-03-12 | 系数编解码方法、编解码设备及存储介质 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20230421816A1 (zh) |
EP (1) | EP4307666A1 (zh) |
CN (1) | CN116982316A (zh) |
WO (1) | WO2022188186A1 (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108353167A (zh) * | 2015-11-13 | 2018-07-31 | 高通股份有限公司 | 译码视频数据的正负号信息 |
WO2019027241A1 (ko) * | 2017-07-31 | 2019-02-07 | 한국전자통신연구원 | 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장한 기록 매체 |
CN109788285A (zh) * | 2019-02-27 | 2019-05-21 | 北京大学深圳研究生院 | 一种量化系数结束标志位的上下文模型选取方法及装置 |
CN110708552A (zh) * | 2019-08-27 | 2020-01-17 | 杭州海康威视数字技术股份有限公司 | 解码方法、编码方法及装置 |
CN111586419A (zh) * | 2019-05-13 | 2020-08-25 | 北京达佳互联信息技术有限公司 | 视频解码方法、视频编码方法及装置 |
-
2021
- 2021-03-12 WO PCT/CN2021/080635 patent/WO2022188186A1/zh active Application Filing
- 2021-03-12 CN CN202180095282.6A patent/CN116982316A/zh active Pending
- 2021-03-12 EP EP21929659.7A patent/EP4307666A1/en active Pending
-
2023
- 2023-09-12 US US18/367,101 patent/US20230421816A1/en active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108353167A (zh) * | 2015-11-13 | 2018-07-31 | 高通股份有限公司 | 译码视频数据的正负号信息 |
WO2019027241A1 (ko) * | 2017-07-31 | 2019-02-07 | 한국전자통신연구원 | 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장한 기록 매체 |
CN109788285A (zh) * | 2019-02-27 | 2019-05-21 | 北京大学深圳研究生院 | 一种量化系数结束标志位的上下文模型选取方法及装置 |
CN111586419A (zh) * | 2019-05-13 | 2020-08-25 | 北京达佳互联信息技术有限公司 | 视频解码方法、视频编码方法及装置 |
CN110708552A (zh) * | 2019-08-27 | 2020-01-17 | 杭州海康威视数字技术股份有限公司 | 解码方法、编码方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN116982316A (zh) | 2023-10-31 |
US20230421816A1 (en) | 2023-12-28 |
EP4307666A1 (en) | 2024-01-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2023040013A (ja) | 適応ツリー選択を使用してバイナリ・セットをビデオ符号化およびビデオ復号する方法および装置 | |
US20200244995A1 (en) | Methods and Apparatuses for Coding Transform Blocks | |
US20120140813A1 (en) | Separately coding the position of a last significant coefficient of a video block in video coding | |
TWI830629B (zh) | 轉換省略區塊之傳訊編碼技術 | |
CN112533000B (zh) | 视频解码方法、装置、计算机可读介质及电子设备 | |
WO2022063033A1 (zh) | 视频解码方法、视频编码方法、装置、计算机可读介质及电子设备 | |
WO2022062880A1 (zh) | 视频解码方法、装置、计算机可读介质及电子设备 | |
WO2022116836A1 (zh) | 视频解码方法、视频编码方法、装置及设备 | |
WO2022174660A1 (zh) | 视频编解码方法、装置、计算机可读介质及电子设备 | |
CN113365057B (zh) | 进行编码和解码的方法、解码端、编码端和系统 | |
WO2022217610A1 (zh) | 残差编码方法及设备、视频编码方法及设备、存储介质 | |
CN114257810B (zh) | 上下文模型的选择方法、装置、设备及存储介质 | |
WO2022188186A1 (zh) | 系数编解码方法、编解码设备及存储介质 | |
WO2022193386A1 (zh) | 系数编解码方法、编解码设备、终端及存储介质 | |
CN114286095B (zh) | 视频解码方法、装置及设备 | |
CN114286096B (zh) | 视频解码方法、装置及设备 | |
WO2023051222A1 (zh) | 滤波及编解码方法、装置、计算机可读介质及电子设备 | |
US20230077935A1 (en) | Video Encoding Method and Apparatus, Video Decoding Method and Apparatus, Computer-Readable Medium, and Electronic Device | |
CN117354545B (zh) | 视频图像小波变换高频系数按限定尺寸分块编码方法 | |
WO2023039856A1 (zh) | 一种视频解码、编码方法及设备、存储介质 | |
US20240114140A1 (en) | Video decoding and encoding method, device and storage medium | |
WO2022116854A1 (zh) | 视频解码方法、装置、可读介质、电子设备及程序产品 | |
WO2022063040A1 (zh) | 视频编解码方法、装置及设备 | |
WO2022037478A1 (zh) | 视频解码方法、视频编码方法、装置、介质及电子设备 | |
WO2022188239A1 (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: 21929659 Country of ref document: EP Kind code of ref document: A1 |
|
WWE | Wipo information: entry into national phase |
Ref document number: 202180095282.6 Country of ref document: CN |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2021929659 Country of ref document: EP |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
ENP | Entry into the national phase |
Ref document number: 2021929659 Country of ref document: EP Effective date: 20231012 |