Video compression method and apparatus for multiple sets of coefficient component conversion on prediction residuals
Patent Information
- Application Number
- CN202611134782.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2019-06-17
- Filing Date
- 2020-06-17
- Publication Date
- 2026-09-22
AI Technical Summary
[0017]为了解决现有技术中的这一问题,本发明提供了一种对多分量残差数据使用多套系数进行分量转换的数据压缩方法和装置
Smart Images

Figure FT_1
Abstract
Description
[0001] This application is a divisional application of the following original application: The original application was filed on June 17, 2020. The original application number was 2020105564152. Original invention application title: Data compression method and apparatus for performing multi-coefficient component transformation on prediction residuals Technical Field
[0002] This invention relates to an encoding and decoding system for lossy or lossless compression of data, and particularly to a method and apparatus for encoding and decoding prediction residual data. Background Technology
[0003] With the advent of the era of artificial intelligence, big data, cloud-edge computing, and 5G, ultra-high compression ratio and extremely high quality data compression, including image and video data as well as various new forms of data, has become an indispensable technology.
[0004] A dataset is a collection of data elements (e.g., bytes, bits, pixels, pixel components, spatial sampling points, transform domain coefficients).
[0005] When encoding or decoding a dataset, the data elements are usually sorted according to a predetermined rule, i.e., the order is specified, and then the encoding and decoding are performed according to the order.
[0006] When encoding (and corresponding decoding) a dataset arranged in a certain spatial (one-dimensional, two-dimensional, or multi-dimensional) shape (e.g., a one-dimensional data queue, a two-dimensional data file, a frame of an image, a video sequence, a transform domain, a transform block, multiple transform blocks, a three-dimensional scene, or a sequence of continuously changing three-dimensional scenes), especially two-dimensional or higher-dimensional datasets, the dataset is sometimes divided into several subsets with a predetermined shape and / or size (i.e., the number of elements), called integral compression units. Encoding or decoding is performed one integral compression unit at a time, in a predetermined order. At any given moment, the integral compression unit being encoded or decoded is called the current integral compression unit. The data element being encoded or decoded (sometimes simply called an element) is called the currently encoded data element or the currently decoded data element, collectively referred to as the current data element, or simply the current element. An element consists of N components (usually 1 ≤ N ≤ 5), therefore, both the dataset and the integral compression unit consist of N components.
[0007] When a dataset is divided into compressed units, a pre-defined sorting rule is to first sort the compressed units, and then sort the elements within each compressed unit.
[0008] A predetermined number of full compression units constitute a compression block. All full compression units within a compression block typically share one or more common characteristics.
[0009] Encoding in data compression typically consists of some or all of the following stages: 1) Prediction, mainly including adjacent prediction, string prediction, block prediction, etc., generates predicted values and prediction residuals, referred to as residuals; prediction is also called matching, especially string prediction is also called string matching, and block prediction is also called block matching. 2) Transformation mainly involves transforming the predicted residuals to generate transformation coefficients, or simply coefficients. When the transformation is an identity transformation, i.e. no transformation is actually performed, the coefficients are exactly equal to the residuals. 3) Quantization mainly involves quantizing the coefficients to generate quantization residuals. When quantization is identity quantization, i.e., no quantization is actually performed, the quantization residual is equal to the coefficient. When the transformation is identity transformation, the quantization residual is the result of quantizing the prediction residual. When both quantization and transformation are identity transformations, the quantization residual is equal to the coefficient and also equal to the residual. 4) Entropy coding mainly includes entropy coding of the quantization residual, including at least binarization, to generate a compressed data stream.
[0010] The above 2), 3), and 4) are usually collectively referred to as residual coding.
[0011] Decoding in data compression typically consists of some or all of the following stages: 1) Entropy decoding mainly involves parsing the compressed data stream and entropy decoding, including at least inverse binarization, to generate quantization residuals; 2) Dequantization mainly involves dequantizing the quantization residual to generate reconstruction coefficients. When quantization is identity quantization, i.e. no quantization is actually performed, dequantization is also identity dequantization, i.e. no dequantization is actually performed, so the reconstruction coefficients are equal to the quantization residuals. 3) Inverse transform mainly involves performing an inverse transform on the reconstruction coefficients to generate reconstruction residuals. When the transform is an identity transform (i.e., no actual transform is performed), the inverse transform is also an identity transform (i.e., no actual inverse transform is performed), thus the reconstruction residuals are completely equal to the reconstruction coefficients. When quantization is identity quantization and the transform is identity transform, the inverse quantization is also identity inverse quantization and the inverse transform is also identity inverse transform, thus the reconstruction residuals are equal to the reconstruction coefficients and also equal to the quantization residuals. 4) Predictive compensation, mainly including adjacent predictive compensation, series predictive compensation, block predictive compensation, etc., generates predicted values and reconstructed data, also known as reconstructed data or restored data.
[0012] The above 1), 2), and 3) are generally referred to as residual decoding.
[0013] The prediction residuals, transform coefficients, and quantization residuals in each encoding stage, and the quantization residuals, reconstruction coefficients, and reconstruction residuals in each decoding stage, are collectively referred to as residuals or residual data. Generally, the context determines whether the residual is a prediction residual, transform coefficient, quantization residual, reconstruction coefficient, or reconstruction residual. If the context cannot determine this, the residual refers to the prediction residual and / or transform coefficient and / or quantization residual and / or reconstruction coefficient and / or reconstruction residual.
[0014] The individual data points in the input data, raw data, residual data, and various intermediate data involved in each stage of encoding and decoding are called data samples, or simply samples or sample values.
[0015] In the case of multi-component data (N>1), the components of the residual data usually exhibit strong correlation. A common technique in data compression is to use component space transformation (component transformation) to convert the data from a component space with strong correlation between components to a component space with weak correlation between components, thereby improving the coding efficiency of subsequent entropy coding.
[0016] An example of the component transformation positive operation of residual data is: Component 1 after conversion = (Component 1 before conversion + Component 2 before conversion) / 2; Component 2 after conversion = (Component 1 before conversion - Component 2 before conversion) / 2; The corresponding inverse component conversion operation is: Component 1 before conversion = (Component 1 after conversion + Component 2 after conversion); Component 2 before conversion = (Component 1 after conversion - Component 2 after conversion); In existing technologies, a single fixed coefficient is usually used to transform the components of multi-component residual data. This cannot adapt to the new characteristics of various new forms of data with different correlations, and even different parts of the same dataset may have different correlations. Summary of the Invention
[0017] To address this problem in the prior art, the present invention provides a data compression method and apparatus for performing component transformation on multi-component residual data using multiple sets of coefficients. In this method and apparatus, for multi-component residual data, according to predetermined rules and based on its characteristics, one of at least three predetermined sets of coefficients is selected for component transformation. The at least three predetermined sets of coefficients may include a set of coefficients for identity transformation, i.e., where the output component equals the input component.
[0018] According to one aspect of the present invention, a multi-component data encoding method or apparatus is provided, comprising at least the steps or modules that perform the following functions and operations: 1) Analyze the characteristics of the current multi-component residual data, and select one of the predetermined sets of coefficients for component transformation as the selected coefficient for the current encoding according to the predetermined rules; 2) Perform a component transformation positive operation on the current residual using at least the selected coefficients; 3) Write the result of the current encoding into the compressed data stream, which includes at least some or all of the information called selected information that indicates which set of coefficients the selected coefficients belong to.
[0019] Figure 1 (a) is a schematic diagram of the encoding method or apparatus of the present invention.
[0020] From a first perspective, the present invention provides an encoding method for compressing multi-component data, characterized by comprising at least the following steps: 1) Analyze the characteristics of the current multi-component residual data, and select one of the predetermined sets of coefficients for component transformation as the selected coefficient for the current encoding according to the predetermined rules; 2) Perform a component transformation positive operation on the current residual using at least the selected coefficients; 3) Write the result of the current encoding into the compressed data stream, which includes at least some or all of the information called selected information that indicates which set of coefficients the selected coefficients belong to.
[0021] From a second perspective, the present invention provides an encoding apparatus for compressing multi-component data, characterized by comprising at least the following modules: Coefficient selection module: Analyzes the characteristics of the current multi-component residual data, and selects one of the predetermined sets of coefficients for component transformation as the selected coefficient for the current encoding according to predetermined rules; Component conversion positive operation module: Performs component conversion positive operation on the current residual using at least the selected coefficients; The bitstream generation module writes the result of the current encoding into the compressed data bitstream, which includes at least some or all of the information called selected information indicating which set of coefficients the selected coefficients belong to.
[0022] According to another aspect of the present invention, a multi-component data decoding method or apparatus is provided, comprising at least the steps or modules that perform the following functions and operations: 1) Parse the compressed data stream to obtain at least some or all of the information needed to perform component transformation on the current residual, which is called the selected information, indicating which set of coefficients from a predetermined set of coefficients is selected as the selected coefficients. 2) At least based on the information and / or the parameters and / or variables involved in the predetermined decoding, select one of the predetermined sets of coefficients as the selected coefficient for the current decoding; 3) Use at least the selected coefficients to perform the component transformation inverse operation on the residuals to obtain restored, reconstructed or reconstructed multi-component residual data.
[0023] Figure 1 (b) is a schematic diagram of the decoding method or apparatus of the present invention.
[0024] From a third perspective, the present invention provides a decoding method for compressing multi-component data, characterized by comprising at least the following steps: 1) Parse the compressed data stream to obtain at least some or all of the information needed to perform component transformation on the current residual, which is called the selected information, indicating which set of coefficients from a predetermined set of coefficients is selected as the selected coefficients. 2) At least based on the information and / or the parameters and / or variables involved in the predetermined decoding, select one of the predetermined sets of coefficients as the selected coefficient for the current decoding; 3) Use at least the selected coefficients to perform the component transformation inverse operation on the residuals to obtain restored, reconstructed or reconstructed multi-component residual data.
[0025] From a fourth perspective, the present invention provides a decoding apparatus for compressing multi-component data, characterized by comprising at least the following modules: The bitstream parsing module parses the compressed data bitstream and at least obtains some or all of the information called selected information, which indicates which set of coefficients from a set of predetermined coefficients is selected as the selected coefficients for component conversion of the current residual. Coefficient selection module: Based at least on the information and / or the parameters and / or variables involved in the predetermined decoding, select one of a predetermined set of coefficients as the selected coefficient for the current decoding; Component transformation inverse operation module: At least the selected coefficients are used to perform component transformation inverse operation on the residuals to obtain restored, reconstructed or reconstructed multi-component residual data.
[0026] This invention is applicable to the encoding and decoding of data with lossy compression, and it is also applicable to the encoding and decoding of data with lossless compression. This invention is applicable to the encoding and decoding of one-dimensional data such as string data, byte string data, one-dimensional graphics, or fractal-dimensional graphics, and it is also applicable to the encoding and decoding of two-dimensional or higher-dimensional data such as image or video data.
[0027] In this invention, the data compression involves one or a combination of the following types of data: 1) One-dimensional data; 2) Two-dimensional data; 3) Multi-dimensional data; 4) Graphics; 5) Fractal-dimensional graphics; 6) Images; 7) Sequences of images; 8) Video; 9) Audio; 10) Files; 11) Bytes; 12) Bits; 13) Pixels; 14) Three-dimensional scenes; 15) Sequences of continuously changing three-dimensional scenes; 16) Virtual reality scenes; 17) Sequences of continuously changing virtual reality scenes; 18) Images in pixel form; 19) Transform domain data of images; 20) Sets of bytes of two or more dimensions; 21) Sets of bits of two or more dimensions; 22) Sets of pixels; 23) ... 24) A set of three-component pixels (R, G, B, A); 25) A set of three-component pixels (Y, U, V); 26) A set of three-component pixels (Y, Cb, Cr); 27) A set of three-component pixels (Y, Cg, Co); 28) A set of four-component pixels (C, M, Y, K); 29) A set of four-component pixels (R, G, B, A); 30) A set of four-component pixels (Y, U, V, A); 31) A set of four-component pixels (Y, Cb, Cr, A); 32) A set of four-component pixels (Y, Cg, Co, A).
[0028] In this invention, when the original data is an image, a sequence of images, a video, etc., the entire compression unit is a coding region or a decoding region of the image or sequence, including the following: sub-images of an image, slices, tiles, tile groups, bricks, macroblocks, maximum coding units (LCU), coding tree units (CTU), coding units (CU), sub-regions of CU, sub-coding units (SubCU), prediction blocks, prediction units (PU), sub-regions of PU, sub-prediction units (SubPU), transform blocks, transform units (TU), sub-regions of TU, and sub-transform units (SubTU). In this context, a compressed block is a predetermined number of coded regions or a predetermined number of decoded regions in an image or sequence, including the following: sequence, sequence of images, image, sub-image of an image, slice, tile, tile group, brick, maximum coding unit (LCU), coding tree unit (CTU), coding unit (CU), transform block, transform unit (TU), one or more predetermined numbers of slices, tiles, tile groups, bricks, maximum coding unit (LCU), coding tree unit (CTU), coding unit (CU), transform block, or transform unit (TU).
[0029] The technical features of the present invention have been described above through several specific embodiments. Those skilled in the art can easily understand other advantages and effects of the present invention from the content disclosed in this specification. The present invention can also be implemented or applied through other different specific implementation manners, and various modifications or changes can be made to various details in this specification based on different viewpoints and applications without departing from the spirit of the present invention. Description of Drawings
[0030] Figure 1 (a) is a schematic diagram of the encoding method or apparatus of the present invention.
[0031] Figure 1 (b) is a schematic diagram of the decoding method or apparatus of the present invention. Detailed Description of Embodiments
[0032] More implementation details and variants of the present invention are described below.
[0033] Implementation or Variant Example 1 In said encoding method or apparatus or decoding method or apparatus, said multiple sets of coefficients include at least two sets of non-identity conversion coefficients.
[0034] Implementation or Variant Example 2 In said encoding method or apparatus or decoding method or apparatus, there is information referred to as full compression unit component conversion selection information in the compressed data stream, which is part or all of the information required to indicate which set or sets of said multiple sets of coefficients are used for a full compression unit.
[0035] Implementation or Variant Example 3 In said encoding method or apparatus or decoding method or apparatus, component conversion is performed on M (2≤M<N) components among N (N≥3) components, and no component conversion is performed on the remaining N-M components, that is, identity conversion where an output component equals an input component is performed.
[0036] Implementation or Variant Example 4 In said encoding method or apparatus or decoding method or apparatus, component conversion is performed on 2 components among N (N≥3) components, and no component conversion is performed on the remaining N-2 components, that is, identity conversion where an output component equals an input component is performed; the forward component conversion operation in said encoding method or apparatus is a linear conversion F that converts components w and x into components y and z, and has I (I≥3) sets of coefficients; the inverse component conversion operation in said decoding method or apparatus is a linear conversion G that converts components yy and zz into components ww and xx, and has I sets of coefficients.
[0037] In lossless compression, ww, xx, yy, and zz in the above decoding method or device are usually equal to w, x, y, and z in the encoding method or device, respectively. In lossy compression, ww, xx, yy, and zz in the above decoding method or device are usually or are equal to the reconstructed values of w, x, y, and z in the encoding method or device after transformation, quantization, dequantization, and inverse transformation, or the reconstructed values after quantization and dequantization, or the reconstructed values after transformation and inverse transformation.
[0038] Implementation or variant example 5 In the implementation or variation of Example 4, the encoding method or apparatus, or the decoding method or apparatus, The I set of coefficients of the linear transformation F are o[i], p[i], q[i], r[i], s[i], t[i], u[i], v[i], 0 ≤ i < I, and the linear transformation F is calculated in the following manner: y = (o[i]*w + p[i]*x + q[i]) / r[i], z = (s[i]*w + t[i]*x + u[i]) / v[i]; The I set of coefficients of the linear transformation G are a[i], b[i], c[i], d[i], e[i], f[i], g[i], h[i], 0 ≤ i < I, and the linear transformation G is calculated in the following manner: ww = (a[i]*yy + b[i]*zz + c[i]) / d[i], xx = (e[i]*yy + f[i]*zz + g[i]) / h[i].
[0039] Implementation or variant example 6 In the encoding method or apparatus or decoding method or apparatus described in Implementation or Variation 5, the i-th (0 ≤ i < 1) set of coefficients o[i], p[i], q[i], r[i], s[i], t[i], u[i], v[i] of the positive operation of component conversion is abbreviated as [o, p, q, r, s, t, u, v], and the i-th (0 ≤ i < 1) set of coefficients a[i], b[i], c[i], d[i], e[i], f[i], g[i], h[i] of the inverse operation of component conversion is abbreviated as [a, b, c, d, e, f, g, h]. The multiple sets of coefficients include at least some or all of the following seven sets of coefficients: 1) Coefficient #1: [o, p, q, r, s, t, u, v] = [1, 0, 0, 0, 0, 1, 0, 0], [a, b, c, d, e, f, g, h] = [1, 0, 0, 0, 0, 1, 0, 0]. That is, the linear transformation is an identity transformation. The calculation formula for the positive operation of component transformation using this set of coefficients is: y = w, z = x; The formula for calculating the inverse operation of component conversion is: ww = yy, xx = zz; 2) Coefficient #2a: [o, p, q, r, s, t, u, v] = [1, 1,δ, 2, 1, –1,λ, 2], [a, b,c, d, e, f, g, h] = [1, 1, 0, 1, 1, –1, 0, 1], where δ=0 or 1 or –1 and λ=0 or 1 or –1 are rounding control parameters. The calculation formula for the positive operation of component conversion using this set of coefficients is: y = (w + x + δ) / 2, where δ = 0, 1, or –1; z = (w - x + λ) / 2, where λ = 0, 1, or –1. The formula for calculating the inverse operation of component conversion is: ww = yy + zz, xx = yy - zz; 3) Coefficient #2b: [o, p, q, r, s, t, u, v] = [1, –1,δ, 2, 1, 1,λ, 2], [a, b,c, d, e, f, g, h] = [1, 1, 0, 1, –1, 1, 0, 1], where δ=0 or 1 and λ=0 or 1 are rounding control parameters. The calculation formula for the positive operation of component conversion using this set of coefficients is: y = (w - x +δ) / 2, where δ = 0, 1, or –1; z = (w + x +λ) / 2, where λ = 0, 1, or –1. The formula for calculating the inverse operation of component conversion is: ww = yy + zz, xx = -yy + zz; It can be seen that the difference between coefficient #2b and coefficient #2a is that the p, t, e, and f of the two sets of coefficients are opposites of each other. 4) Coefficient #3a: [o, p, q, r, s, t, u, v] = [A, 2,δ, A+1, 1, –2,λ, A+1], [a,b, c, d, e, f, g, h] = [1, 1, 0, 1, 1, –A,ε, 2], where A = 1 or 4 or other predetermined integer constants satisfying 1≤A≤10, and δ, λ, and ε are rounding control parameters: δ = 0 or 1 or –1 or A / 2 or –A / 2 or other predetermined integer constants satisfying –A / 2≤δ≤A / 2, λ = 0 or 1 or –1 or A / 2 or –A / 2 or other predetermined integer constants satisfying –A / 2≤λ≤A / 2, ε = 0 or 1 or –1. The calculation formula for the positive operation of component conversion using this set of coefficients is: y = (Aw + 2x +δ) / (A+1), z = (w - 2x +λ) / (A+1); The formula for calculating the inverse operation of component conversion is: ww = yy + zz, xx = (yy - Azz + ε) / 2, where ε = 0, 1, or –1; 5) Coefficient #3b: [o, p, q, r, s, t, u, v] = [A, –2,δ, A+1, 1, 2,λ, A+1], [a,b, c, d, e, f, g, h] = [1, 1, 0, 1, –1, A,ε, 2], where A = 1 or 4 or other predetermined integer constants satisfying 1≤A≤10, and δ, λ, and ε are rounding control parameters: δ = 0 or 1 or –1 or A / 2 or –A / 2 or other predetermined integer constants satisfying –A / 2≤δ≤A / 2, λ = 0 or 1 or –1 or A / 2 or –A / 2 or other predetermined integer constants satisfying –A / 2≤λ≤A / 2, ε = 0 or 1 or –1. The calculation formula for the positive operation of component conversion using this set of coefficients is: y = (Aw - 2x +δ) / (A+1), z = (w + 2x +λ) / (A+1); The formula for calculating the inverse operation of component conversion is: ww = yy + zz, xx = (-yy + Azz + ε) / 2, where ε = 0, 1, or –1; It can be seen that the difference between coefficient #3b and coefficient #3a is that the p, t, e, and f of the two sets of coefficients are opposites of each other. 6) Coefficient #4a: [o, p, q, r, s, t, u, v] = [2, A,δ, A+1, –2, 1,λ, A+1], [a,b, c, d, e, f, g, h] = [1, –A,ε, 2, 1, 1, 0, 1], where A = 1 or 4 or other predetermined integer constants satisfying 1≤A≤10, and δ, λ, and ε are rounding control parameters: δ = 0 or 1 or –1 or A / 2 or –A / 2 or other predetermined integer constants satisfying –A / 2≤δ≤A / 2, λ = 0 or 1 or –1 or A / 2 or –A / 2 or other predetermined integer constants satisfying –A / 2≤λ≤A / 2, ε = 0 or 1 or –1. The calculation formula for the positive operation of component conversion using this set of coefficients is: y = (2w + Ax +δ) / (A+1), z = (-2w + x +λ) / (A+1); The formula for calculating the inverse operation of component conversion is: ww = (yy - Azz +ε) / 2, where ε = 0, 1, or –1, xx = yy + zz; It can be seen that coefficient #4a is the result of swapping o and p, s and t, a and e, b and f, c and g, and d and h in coefficient #3a; 7) Coefficient #4b: [o, p, q, r, s, t, u, v] = [–2, A,δ, A+1, 2, 1,λ, A+1], [a,b, c, d, e, f, g, h] = [–1, A,ε, 2, 1, 1, 0, 1], where A = 1 or 4 or other predetermined integer constants satisfying 1 ≤ A ≤ 10, and δ, λ, and ε are rounding control parameters: δ = 0 or 1 or –1 or A / 2 or –A / 2 or other predetermined integer constants satisfying –A / 2 ≤ δ ≤ A / 2, λ = 0 or 1 or –1 or A / 2 or –A / 2 or other predetermined integer constants satisfying –A / 2 ≤ λ ≤ A / 2, ε = 0 or 1 or –1. The calculation formula for the positive operation of component conversion using this set of coefficients is: y = (-2w + Ax +δ) / (A+1), z = (2w + x +λ) / (A+1); The formula for calculating the inverse operation of component conversion is: ww = (-yy + Azz +ε) / 2, where ε = 0, 1, or –1, and xx = yy + zz; It can be seen that the difference between coefficient #4b and coefficient #4a is that the o, s, a, and b of the two sets of coefficients are opposites of each other. It can also be seen that coefficient #4b is the result of swapping o and p, s and t, a and e, b and f, c and g, and d and h in coefficient #3b.
[0040] Implementation or variant example 7 (multiple sets of coefficients are divided into K coefficient groups that are allowed to overlap, and one compressed block uses one coefficient group) In the encoding method or apparatus or the decoding method or apparatus, the multiple sets of coefficients are divided into a predetermined K (2≤K≤6) groups of coefficients, i.e., K coefficient groups. The k-th (0≤k<K) group of coefficients, i.e., the k-th coefficient group, has Jk sets of coefficients. Two coefficient groups are allowed to have the same set or several sets of coefficients (for example, usually each coefficient group includes the set of coefficients representing identity transformation). A compressed block using component transformation can only use the coefficients in one coefficient group: the compressed data bitstream contains some or all of the information needed to indicate which coefficient group a compressed block uses, called compressed block component transformation selection information.
[0041] Implementation or variant example 8 (multiple sets of coefficients are divided into K coefficient groups that are allowed to overlap, and one compressed block uses one coefficient group) In the implementation or variation of Example 7, the encoding method or apparatus or the decoding method or apparatus further contains information called "selection information for component conversion of an integral compression unit within a compression block," which indicates which set of coefficients in which coefficient group is used by an integral compression unit within the compression block.
[0042] Implementation or variant example 9 (multiple sets of coefficients are divided into K coefficient groups that are allowed to overlap, and one compressed block uses one coefficient group) In the implementation or variations of the encoding method or apparatus described in Examples 4, 5, and 6, or the decoding method or apparatus, the multiple sets of coefficients are divided into a predetermined K (2 ≤ K ≤ 6) groups of coefficients, i.e., K coefficient groups. The k-th (0 ≤ k < K) group of coefficients, i.e., the k-th coefficient group, has Jk sets of coefficients. Two coefficient groups are allowed to have the same set or several sets of coefficients (for example, usually each coefficient group includes the set of coefficients representing identity transformation). A compressed block using component transformation can only use coefficients from one coefficient group: the compressed data bitstream contains some or all of the information needed to indicate which coefficient group a compressed block uses, called compressed block component transformation selection information.
[0043] Implementation or variant example 10 (multiple sets of coefficients are divided into K coefficient groups that are allowed to overlap, and one compressed block uses one coefficient group) In the encoding method or apparatus or decoding method or apparatus described in Implementation or Variation Example 9, the compressed data bitstream also contains information called "selection information for component conversion of an integral compression unit within a compressed block," which indicates which set of coefficients in which coefficient group is used by an integral compression unit within the compressed block.
[0044] Implementation or variant example 11 (multiple sets of coefficients are divided into K coefficient groups that are allowed to overlap, and one compressed block uses one coefficient group) In the encoding method or apparatus or decoding method or apparatus described in Implementation or Variation 6, the seven sets of coefficients are divided into a predetermined K (2≤K≤6) groups of coefficients, i.e., K coefficient groups, each coefficient group has 4 sets of coefficients, the 4 sets of coefficients including coefficient #1; a compressed block using component conversion can only use coefficients from one coefficient group: the compressed data bitstream contains some or all of the information required to indicate which coefficient group a compressed block uses, called compressed block component conversion selection information.
[0045] Implementation or variant example 12 (multiple sets of coefficients are divided into K coefficient groups that are allowed to overlap, and one compressed block uses one coefficient group) In the encoding method or apparatus or decoding method or apparatus described in Implementation or Variation 11, the seven sets of coefficients are divided into the following two groups of coefficients, i.e., two coefficient groups: Coefficient group 1: Coefficient #1, Coefficient #2a, Coefficient #3a, Coefficient #4a; Coefficient group 2: Coefficient #1, Coefficient #2b, Coefficient #3b, Coefficient #4b.
[0046] Implementation or variant example 13 (component conversion and adjustment of energy-based quantization and dequantization degree) In the encoding method or apparatus or the decoding method or apparatus, the degree of quantization and the corresponding degree of dequantization of the converted components are adjusted according to the energy of the component conversion, so as to increase or decrease the degree of quantization and the corresponding degree of dequantization.
[0047] Implementation or variant example 14 (component conversion and adjustment of energy-based quantization and dequantization degree) In the encoding method or apparatus or the decoding method or apparatus, the quantization degree and the corresponding dequantization degree of the converted component are adjusted according to the energy of the component conversion. The increase in the quantization degree and the corresponding dequantization degree is proportional to the gain of the energy of the component conversion, and the decrease in the quantization degree and the corresponding dequantization degree is proportional to the attenuation of the energy of the component conversion.
[0048] Implementation or variant example 15 (component conversion and control of quantization and dequantization degree not only based on energy) In the encoding method or apparatus, or the decoding method or apparatus, the degree of quantization and the corresponding degree of inverse quantization are represented and controlled by the quantization parameter QP; increasing QP increases the degree of quantization and the corresponding degree of inverse quantization, while decreasing QP decreases the degree of quantization and the corresponding degree of inverse quantization; the encoding method or apparatus controls the size of the quantization parameter QP based on the energy of component conversion and / or other predetermined factors, including improving encoding efficiency and / or reducing encoding and decoding complexity.
[0049] Implementation or variant example 16 (component conversion and quantization not only based on energy and the degree of dequantization through QP adjustment) In the implementation or variation of Example 15, the amount of adjustment of QP is represented by QP offset or QP increment.
[0050] Implementation or variant example 17 (combined with component conversion, quantization, and dequantization, it is divided into normal quantization components and enhanced quantization components). In the encoding method or apparatus or the decoding method or apparatus, each component obtained after non-identical transformation is divided into normal quantization components and enhanced quantization components. The quantization degree and the corresponding dequantization degree of the enhanced quantization components are several times greater than the quantization degree and the corresponding dequantization degree of the normal quantization components.
[0051] Implementation or variant example 18 (combining component conversion with quantization and dequantization QP to form normal quantization components and enhanced quantization components). In the encoding method or apparatus or decoding method or apparatus described in Implementation or Variation 17, the degree of quantization and the corresponding degree of inverse quantization are represented and controlled by the quantization parameter QP. Increasing QP increases the degree of quantization and the corresponding degree of inverse quantization, while decreasing QP decreases the degree of quantization and the corresponding degree of inverse quantization. The QP value used for quantizing and inverse quantizing the enhanced quantized component is at least 6 greater than the QP value used for quantizing and inverse quantizing the normal quantized component.
[0052] Implementation or variant example 19 (combining component conversion with quantization and dequantization QP to form normal quantization components and enhanced quantization components). In the implementation or variations of the encoding method or apparatus described in examples 4, 5, and 6, or in the decoding method or apparatus, the component y obtained after non-identity transformation is a normally quantized component, while the component z is an enhanced quantized component; the QP value used for quantizing z and the corresponding dequantization is at least 6 greater than the QP value used for quantizing y and the corresponding dequantization.
[0053] Implementation or variant example 20 (example of energy calculation for component conversion) In the implementation or variant examples 5 and 6, the energy Ey of component y obtained after linear transformation is the square root of o[i]2 + p[i]2, and the energy Ex of component z is the square root of s[i]2 + t[i]2.
[0054] Implementation or variant example 21 (QP offset value adjusted for QP) In the implementation or variation of Example 6, the encoding method or apparatus or the decoding method or apparatus, The QP value used for quantizing or dequantizing components that do not undergo component transformation or that have undergone identity transformation is the basic QP base. The QP value used for quantizing or dequantizing the component y obtained through a non-identical transformation with the i-th set of coefficients is QPy[i] = QPbase + DQPy[i], The QP value used for quantizing or dequantizing the component z obtained by a non-identical transformation with the i-th set of coefficients is QPz[i] = QPbase + DQPz[i], Each i-th set of coefficients has its own independent QP offset values DQPy[i] and DQPz[i].
[0055] Implementation or variant example 22 (relationship between QP offset value and equal quantization component coefficient, normal reinforcement quantization component coefficient) In the implementation or variation of Example 21, the encoding method or apparatus or the decoding method or apparatus, The value of DQPy[i] is -4 or -3 or -2 or -1 or 0 or 1 or 2 or 3; The value of DQPz[i] is DQPy[i] or DQPy[i]±1 or DQPy[i]±2 or DQPy[i]±3 or Q, where Q ≥ (DQPy[i] + 6); The i-th set of coefficients with a value of DQPz[i] of DQPy[i] or DQPy[i]±1 or DQPy[i]±2 or DQPy[i]±3 is called the equal quantization component coefficient with equal QP offset value. The value of DQPz[i] is Q, where Q ≥ (DQPy[i] + 6) is called the normal reinforcement quantization component coefficient with normal reinforcement QP offset value. In this case, component y and component z are called normal quantization component and reinforcement quantization component, respectively.
[0056] Implementation or variant example 23 (example of equal quantification component coefficient, normal reinforcement quantification component coefficient) In the encoding method or apparatus or decoding method or apparatus described in Implementation or Variation 22, a plurality of the seven sets of coefficients are combined with the QP offset value to expand into the plurality of coefficients used by the following encoding method or apparatus or decoding method or apparatus: 1) The I1 set of coefficients among the seven sets of coefficients, combined with the equal QP offset value, becomes the I1 set of equal quantization component coefficients. 2) The I2 set coefficients among the seven sets of coefficients are combined with the normal strengthening QP offset value to form the I2 set of normal strengthening quantification component coefficients. Therefore, the encoding method or apparatus or the decoding method or apparatus uses a total of I1 + I2 sets of coefficients to perform component conversion forward or inverse operations.
[0057] Implementation or variant example 24 (a coefficient set including equal quantization component coefficients and normal reinforcement quantization component coefficients) In the encoding method or apparatus or decoding method or apparatus described in Implementation or Variation 23, the I1 + I2 sets of coefficients are divided into a predetermined K (2≤K≤6) groups of coefficients, i.e., K coefficient groups, and the k-th (0≤k<K) group of coefficients, i.e., the k-th coefficient group, has Jk sets of coefficients. Two coefficient groups are allowed to have the same set or several sets of coefficients (for example, usually each coefficient group includes the set of coefficients representing identity transformation); a compressed block using component transformation can only use the coefficients in one coefficient group: the compressed data bitstream contains some or all of the information required to indicate which coefficient group of the K coefficient groups a compressed block uses, called compressed block component transformation selection information.
[0058] Implementation or variant example 25 (a coefficient set containing equal quantification component coefficients and normal reinforcement quantification component coefficients, with 3 sets of coefficients for each coefficient set). In the encoding method or apparatus or decoding method or apparatus described in Implementation or Variation 23, the I1 + I2 sets of coefficients are divided into a predetermined K (2≤K≤6) groups of coefficients, i.e., K coefficient groups, each coefficient group has 3 sets of coefficients, the 3 sets of coefficients including coefficient #1; a compressed block using component conversion can only use coefficients from one coefficient group: the compressed data bitstream contains some or all of the information required to indicate which coefficient group of the K coefficient groups a compressed block uses, referred to as compressed block component conversion selection information.
[0059] Implementation or variant example 26 (a coefficient set containing equal quantification component coefficients and normal reinforcement quantification component coefficients, with 4 sets of coefficients for each coefficient set) In the encoding method or apparatus or decoding method or apparatus described in Implementation or Variation 23, the I1 + I2 sets of coefficients are divided into a predetermined K (2≤K≤6) groups of coefficients, i.e., K coefficient groups, each coefficient group having 4 sets of coefficients, the 4 sets of coefficients including coefficient #1; a compressed block using component conversion can only use coefficients from one coefficient group: the compressed data bitstream contains some or all of the information required to indicate which coefficient group of the K coefficient groups a compressed block uses, referred to as compressed block component conversion selection information.
[0060] Implementation or variant example 27 (a coefficient set containing equal quantification component coefficients and normal reinforcement quantification component coefficients, with 5 sets of coefficients in each coefficient set) In the encoding method or apparatus or decoding method or apparatus described in Implementation or Variation 23, the I1 + I2 sets of coefficients are divided into a predetermined K (2≤K≤6) groups of coefficients, i.e., K coefficient groups, each coefficient group having 5 sets of coefficients, the 5 sets of coefficients including coefficient #1; a compressed block using component conversion can only use coefficients from one coefficient group: the compressed data bitstream contains some or all of the information required to indicate which coefficient group of the K coefficient groups a compressed block uses, referred to as compressed block component conversion selection information.
[0061] Implementation or variant example 28 (a coefficient set containing equal quantification component coefficients and normal reinforcement quantification component coefficients, with 3 sets of coefficients for each coefficient set) In the encoding method or apparatus or decoding method or apparatus described in embodiments or variations 24, 25, 26, and 27, the compressed data bitstream also contains information called "component conversion selection information of an integral compression unit within a compressed block," which indicates which set of coefficients in which coefficient group is used by an integral compression unit within the compressed block.
[0062] Implementation or variant example 29 (an example of a coefficient group containing equal quantization component coefficients and normal reinforcement quantization component coefficients). In the encoding method or apparatus or decoding method or apparatus described in implementation or variation 24, the K coefficient sets are selected from the following coefficient sets: Coefficient group 1: Coefficient #1, Coefficient #2a combined with the equal QP offset value, Coefficient #3a combined with the equal QP offset value, Coefficient #4a combined with the equal QP offset value; Coefficient group 2: Coefficient #1, Coefficient #2b combined with the equal QP offset value, Coefficient #3b combined with the equal QP offset value, Coefficient #4b combined with the equal QP offset value; Coefficient group 3: Coefficient #1, Coefficient #2a combined with normal reinforcement QP offset value, Coefficient #3a combined with normal reinforcement QP offset value, Coefficient #4a combined with normal reinforcement QP offset value; Coefficient group 4: Coefficient #1, Coefficient #2b combined with normal reinforcement QP offset value, Coefficient #3b combined with normal reinforcement QP offset value, Coefficient #4b combined with normal reinforcement QP offset value; Coefficient group 5: Coefficient #1, Coefficient #2a combined with normal reinforcement QP offset value, Coefficient #2a combined with equal QP offset value, Coefficient #3a combined with normal reinforcement QP offset value; Coefficient group 6: Coefficient #1, Coefficient #2a combined with normal reinforcement QP offset value, Coefficient #2a combined with equal QP offset value, Coefficient #4a combined with normal reinforcement QP offset value; Coefficient group 7: Coefficient #1, Coefficient #2b combined with normal reinforcement QP offset value, Coefficient #2b combined with equal QP offset value, Coefficient #3b combined with normal reinforcement QP offset value; Coefficient group 8: Coefficient #1, Coefficient #2b combined with normal reinforcement QP offset value, Coefficient #2b combined with equal QP offset value, Coefficient #4b combined with normal reinforcement QP offset value; Coefficient group 9: Coefficient #1, Coefficient #2a combined with normal reinforcement QP offset value, Coefficient #2a combined with equal QP offset value, Coefficient #3a combined with normal reinforcement QP offset value, Coefficient #4a combined with normal reinforcement QP offset value; Coefficient group 10: Coefficient #1, Coefficient #2b combined with normal reinforcement QP offset value, Coefficient #2b combined with equal QP offset value, Coefficient #3b combined with normal reinforcement QP offset value, Coefficient #4b combined with normal reinforcement QP offset value; Coefficient group 11: Coefficient #1, Coefficient #2a combined with normal enhanced QP offset value, Coefficient #2a combined with equal QP offset value, Coefficient #3a combined with normal enhanced QP offset value, Coefficient #3a combined with equal QP offset value, Coefficient #4a combined with normal enhanced QP offset value, Coefficient #4a combined with equal QP offset value; Coefficient group 12: Coefficient #1, Coefficient #2b combined with normal reinforcement QP offset value, Coefficient #2b combined with equal QP offset value, Coefficient #3b combined with normal reinforcement QP offset value, Coefficient #3b combined with equal QP offset value, Coefficient #4b combined with normal reinforcement QP offset value, Coefficient #4b combined with equal QP offset value.
[0063] Implementation or variant example 30 (an example of a coefficient group containing equal quantification component coefficients and normal reinforcement quantification component coefficients, with each coefficient group having 4 sets of coefficients) In the encoding method or apparatus or decoding method or apparatus described in implementation or variation 26, the K coefficient sets are selected from the following coefficient sets: Coefficient group 1: Coefficient #1, Coefficient #2a combined with the equal QP offset value, Coefficient #3a combined with the equal QP offset value, Coefficient #4a combined with the equal QP offset value; Coefficient group 2: Coefficient #1, Coefficient #2b combined with the equal QP offset value, Coefficient #3b combined with the equal QP offset value, Coefficient #4b combined with the equal QP offset value; Coefficient group 3: Coefficient #1, Coefficient #2a combined with normal reinforcement QP offset value, Coefficient #3a combined with normal reinforcement QP offset value, Coefficient #4a combined with normal reinforcement QP offset value; Coefficient group 4: Coefficient #1, Coefficient #2b combined with normal reinforcement QP offset value, Coefficient #3b combined with normal reinforcement QP offset value, Coefficient #4b combined with normal reinforcement QP offset value; Coefficient group 5: Coefficient #1, Coefficient #2a combined with normal reinforcement QP offset value, Coefficient #2a combined with equal QP offset value, Coefficient #3a combined with normal reinforcement QP offset value; Coefficient group 6: Coefficient #1, Coefficient #2a combined with normal reinforcement QP offset value, Coefficient #2a combined with equal QP offset value, Coefficient #4a combined with normal reinforcement QP offset value; Coefficient group 7: Coefficient #1, Coefficient #2b combined with normal reinforcement QP offset value, Coefficient #2b combined with equal QP offset value, Coefficient #3b combined with normal reinforcement QP offset value; Coefficient group 8: Coefficient #1, Coefficient #2b combined with normal reinforcement QP offset value, Coefficient #2b combined with equal QP offset value, Coefficient #4b combined with normal reinforcement QP offset value.
[0064] Implementation or variant example 31 (an example of a coefficient group containing equal quantification component coefficients and normal reinforcement component coefficients, with 4 sets of coefficients for each coefficient group) In the encoding method or apparatus or decoding method or apparatus described in implementation or variation 26, the K coefficient groups are the following two coefficient groups: Coefficient group A: Coefficient #1, Coefficient #2a combined with normal reinforcement QP offset value, Coefficient #3a combined with normal reinforcement QP offset value, Coefficient #4a combined with normal reinforcement QP offset value; Coefficient group B: Coefficient #1, Coefficient #2b combined with normal reinforcement QP offset value, Coefficient #3b combined with normal reinforcement QP offset value, Coefficient #4b combined with normal reinforcement QP offset value.
[0065] Implementation or variant example 32 (an example of a coefficient group containing equal quantification component coefficients and normal reinforcement quantification component coefficients, with each coefficient group having 4 sets of coefficients) In the encoding method or apparatus or decoding method or apparatus described in implementation or variation 26, the K coefficient groups are the following four coefficient groups: Coefficient group I: Coefficient #1, Coefficient #2a combined with normal enhanced QP offset value, Coefficient #2a combined with equal QP offset value, Coefficient #3a combined with normal enhanced QP offset value; Coefficient Group II: Coefficient #1, Coefficient #2a combined with normal reinforcement QP offset value, Coefficient #2a combined with equal QP offset value, Coefficient #4a combined with normal reinforcement QP offset value; Coefficient Group III: Coefficient #1, Coefficient #2b combined with normal reinforcement QP offset value, Coefficient #2b combined with equal QP offset value, Coefficient #3b combined with normal reinforcement QP offset value; Coefficient group IV: Coefficient #1, Coefficient #2b combined with normal reinforcement QP offset value, Coefficient #2b combined with equal QP offset value, Coefficient #4b combined with normal reinforcement QP offset value.
[0066] Implementation or variant example 33 (The QP of quantization and dequantization of the enhanced quantization component is very large, so the enhanced quantization component after quantization and dequantization is zero) In the encoding method or apparatus or decoding method or apparatus described in implementations or variations 4, 5, 6, 8, 10, 11, 12, 16, 18, 21, 22, 23, 24, 25, 26, 27, 29, 30, 31, and 32, the degree of quantization and the corresponding inverse quantization are represented and controlled by the quantization parameter QP. Increasing QP increases the degree of quantization and the corresponding inverse quantization, while decreasing QP decreases the degree of quantization and the corresponding inverse quantization. The components obtained after non-identical transformation are divided into normal quantized components and enhanced quantized components. The QP value used for quantizing and inverse quantizing the enhanced quantized components is at least 20 greater than the QP value used for quantizing and inverse quantizing the normal quantized components. Therefore, all enhanced quantized components are zero after quantization, and the reconstructed values of the residual data obtained after at least inverse quantization are also all zero. Thus, in the inverse operation of component transformation, the value of the enhanced quantized component zz is zero, and the components ww and xx are only calculated from the normal quantized component yy.
[0067] Implementation or variant example 34 (the QP of the quantization and dequantization of the enhanced quantization component is very large, so the enhanced quantization component after quantization and dequantization is zero). In the decoding method or apparatus described in implementations or variations 6, 11, 12, 21, 22, 23, 24, 25, 26, 27, 29, 30, 31, and 32, the QP value used for quantizing and dequantizing the enhanced quantized component zzz is at least 20 greater than the QP value used for quantizing and dequantizing the normal quantized component yy. Therefore, the corresponding enhanced quantized component zzz is all zero after quantization in the corresponding encoding method or apparatus. Thus, the value of the enhanced quantized component zzz is always zero. In the inverse operation of component transformation, components ww and xxxx are calculated only from the normal quantized component yy.
[0068] Implementation or variant example 35 (the QP of the quantization and dequantization of the enhanced quantization component is very large, so the enhanced quantization component after quantization and dequantization is zero). In the decoding method or apparatus described in Implementation or Variation 34, the calculation formulas for the inverse operation of the component conversion among the seven sets of coefficients are as follows: 1) Coefficient #1: Still an identity transformation; 2) Coefficient #2a: ww = yy, xx = yy; 3) Coefficient #2b: ww = yy, xx = -yy; 4) Coefficient #3a: ww = yy, xx = (yy+ε) / 2, where ε = 0 or 1 or –1; 5) Coefficient #3b: ww = yy, xx = (-yy+ε) / 2, where ε = 0 or 1 or –1; 6) Coefficient #4a: ww = (yy+ε) / 2, where ε = 0 or 1 or –1, xx = yy; 7) Coefficient #4b: ww = (-yy+ε) / 2, where ε = 0 or 1 or –1, xx = yy.
[0069] Implementation or variant example 36 (Implementation or variant example regarding selected information) In the encoding method or apparatus or the decoding method or apparatus, the selected information exists in the compressed block header and / or the entire compressed unit header in a direct form, an indirect form, or a combination of direct and indirect forms; the selected information in the direct form consists of one or more bit strings in the compressed data bitstream; the selected information in the indirect form is information derived from other encoding parameters and / or encoding / decoding variables and / or other syntax elements of the compressed data bitstream; the selected information in the combination of direct and indirect forms is a selection information that is partially direct (i.e., consists of one or more bit strings in the compressed data bitstream) and partially indirect (i.e., derived from other encoding parameters and / or encoding / decoding variables and / or other syntax elements of the compressed data bitstream) mixed selection information.
[0070] Implementation or variant example 37 (Implementation or variant example regarding selected information) In the implementation or variant of Example 36, the encoding method or apparatus or decoding method or apparatus, the compressed block header is a sequence parameter set or image parameter set or sequence header or image header or strip header or patch header or brick header or maximum coding unit (LCU) header or coding tree unit (CTU) header or coding unit (CU) header.
[0071] Implementation or variant example 38 (Implementation or variant example regarding selected information) In the encoding method or apparatus, or the decoding method or apparatus, one or more flag bits and / or one or more identifier codes and associated syntax elements, represented in italics, are obtained from at least the selected information: Component conversion selected coefficient flag bit and / or component conversion selected coefficient identifier code; The direct flag bits and / or identifiers consist of one or more bit strings in the compressed data bitstream. The indirect flag bits and / or identifiers are derived from other encoding parameters and / or encoding / decoding variables and / or other syntax elements of the compressed data bitstream. The direct-indirect mixed flag bits and / or identifiers are a mixture of partially direct (i.e., composed of one or more bit strings in the compressed data bitstream) and partially indirect (i.e., derived from other encoding parameters and / or encoding / decoding variables and / or other syntax elements of the compressed data bitstream) flag bits and / or identifiers.
[0072] Implementation or variant example 39 (Implementation or variant example regarding selected information) In the encoding method or apparatus or decoding method or apparatus described in Implementation or Variation 38, the multiple sets of coefficients are I (I≥3) sets of coefficients, respectively referred to as the i-th (0 ≤ i < I) set of coefficients; the component conversion and / or the component conversion selected coefficient identifier code takes a predetermined II (II ≥ I) value, respectively referred to as the ii (0 ≤ ii < II) value; each of the ii-th values corresponds to a predetermined set of coefficients in the I sets of coefficients, referred to as the i(ii) set of coefficients, and different ii are allowed to correspond to the same i(ii), such as: i(0)=i(1)=i(2)=i(3)=0, that is, the 0th, 1st, 2nd, and 3rd values of the component conversion selected coefficient identifier code all correspond to the 0th set of coefficients; at least according to the value of the component conversion selected coefficient flag bit and / or the component conversion selected coefficient identifier code, the following corresponding component conversions are performed: If the value of the component conversion selected coefficient flag bit and / or the component conversion selected coefficient identifier code is equal to the ii-th value, then {the residual is subjected to a component conversion positive operation or a component conversion inverse operation using the ii-th set of coefficients}.
[0073] Implementation or variant example 40 (Implementation or variant example regarding selected information for compressed block component conversion) In the encoding method or apparatus or decoding method or apparatus described in embodiments or variations 11, 24, 25, 26, and 27, the compressed block component conversion selection information exists in the compressed block header in a direct form, an indirect form, or a combination of direct and indirect forms; the direct form selection information consists of one or more bit strings in the compressed data bitstream; the indirect form selection information is information derived from other encoding parameters and / or encoding / decoding variables and / or other syntax elements of the compressed data bitstream; and the combination of direct and indirect selection information is a selection information that is partially direct (i.e., consists of one or more bit strings in the compressed data bitstream) and partially indirect (i.e., derived from other encoding parameters and / or encoding / decoding variables and / or other syntax elements of the compressed data bitstream) mixed selection information.
[0074] Implementation or variant example 41 (Implementation or variant example regarding selected information for compressed block component conversion) In the implementation or variant of Example 40, the encoding method or apparatus or decoding method or apparatus, the compressed block header is a sequence parameter set or image parameter set or sequence header or image header or strip header or patch header or brick header or maximum coding unit (LCU) header or coding tree unit (CTU) header or coding unit (CU) header.
[0075] Implementation or variant example 42 (Implementation or variant example regarding selected information for compressed block component conversion) In the encoding method or apparatus or decoding method or apparatus described in embodiments or variations 11, 24, 25, 26, 27, the following one or more flag bits and / or one or more identifier codes and associated syntax elements, represented in italics, are obtained from selected information converted from at least the compressed block components: Compressed block component conversion selected coefficient flag bit and / or compressed block component conversion selected coefficient identifier code; The direct flag bits and / or identifiers consist of one or more bit strings in the compressed data bitstream. The indirect flag bits and / or identifiers are derived from other encoding parameters and / or encoding / decoding variables and / or other syntax elements of the compressed data bitstream. The direct-indirect mixed flag bits and / or identifiers are a mixture of partially direct (i.e., composed of one or more bit strings in the compressed data bitstream) and partially indirect (i.e., derived from other encoding parameters and / or encoding / decoding variables and / or other syntax elements of the compressed data bitstream) flag bits and / or identifiers.
[0076] Implementation or variant example 43 (Implementation or variant example regarding selected information for compressed block component conversion) In the encoding method or apparatus or decoding method or apparatus described in implementation or variation 42, the K coefficient groups are respectively referred to as the k-th (1 ≤ k ≤ K) coefficient group; the selected coefficient flag bit and / or the selected coefficient identifier code of the compressed block component conversion take predetermined K values, which are respectively referred to as the k-th (0 ≤ k < K) value; at least according to the values of the selected coefficient flag bit and / or the selected coefficient identifier code of the compressed block component conversion, the following corresponding component conversions are performed: If the value of the selected coefficient flag bit and / or identifier code of the compressed block component conversion is equal to the k-th value, then {Use the coefficients belonging to the k-th coefficient group to perform either a forward component transformation or an inverse component transformation on the residual}.
[0077] Implementation or variant example 44 (Implementation or variant example regarding the selection information for the conversion of whole compression unit components within a compressed block) In the encoding method or apparatus or decoding method or apparatus described in Implementation or Variation 43, the compressed data bitstream further contains information called "intra-block integral compression unit component conversion selection information," which indicates which set of coefficients in which coefficient group is used by an integral compression unit within the compressed block (i.e., the compressed block using the k-th coefficient group). From at least the intra-block integral compression unit component conversion selection information, the following one or more flag bits and / or one or more identifier codes and associated syntax elements, represented in italics, are obtained: Selected coefficient flag for whole compression unit component conversion within compression block and / or Selected coefficient identifier for whole compression unit component conversion within the compression block The direct flag bits and / or identifiers consist of one or more bit strings in the compressed data bitstream. The indirect flag bits and / or identifiers are derived from other encoding parameters and / or encoding / decoding variables and / or other syntax elements of the compressed data bitstream. The direct-indirect mixed flag bits and / or identifiers are a mixture of partially direct (i.e., composed of one or more bit strings in the compressed data bitstream) and partially indirect (i.e., derived from other encoding parameters and / or encoding / decoding variables and / or other syntax elements of the compressed data bitstream) flag bits and / or identifiers.
[0078] Implementation or variant example 45 (Implementation or variant example regarding the selection information for whole compression unit component conversion within a compressed block) In the encoding method or apparatus or decoding method or apparatus described in Implementation or Variation 44, the k-th coefficient group has Jk sets of coefficients, which are respectively referred to as the j-th (0 ≤ j < Jk) sets of coefficients; the selected coefficient flag bit of the integer compression unit component conversion within the compressed block and / or the selected coefficient identifier code of the integer compression unit component conversion within the compressed block takes a predetermined JJk (JJk ≥ Jk) value, which are respectively referred to as the jj-th (0 ≤ jj < Jk) sets of coefficients. JJk) values; each of the jj-th values corresponds to a predetermined set of coefficients in the Jk sets of coefficients, which is called the j(jj)-th set of coefficients. Different jj are allowed to correspond to the same j(jj), such as: j(0)=j(1)=j(2)=j(3)=0, that is, the 0th, 1st, 2nd, and 3rd values of the selected coefficient identifier code of the whole compression unit component conversion in the compressed block all correspond to the 0th set of coefficients; at least according to the value of the selected coefficient flag bit of the whole compression unit component conversion in the compressed block and / or the value of the selected coefficient identifier code of the whole compression unit component conversion in the compressed block, the following corresponding component conversions are performed: If the value of the selected coefficient flag and / or identifier code of the whole compression unit component conversion in the compressed block is equal to the jjth value, then {the jjth (jj) set of coefficients is used to perform a component conversion positive operation or a component conversion inverse operation on the residual}.
[0079] Implementation or variant example 46 (Example of selecting information for whole compression unit component conversion within a compression block, K=2, Jk=4) In the encoding method or apparatus or decoding method or apparatus described in implementation or variation 45, the K coefficient groups are the following two coefficient groups: Coefficient group A: Coefficient #1, Coefficient #2a combined with normal reinforcement QP offset value, Coefficient #3a combined with normal reinforcement QP offset value, Coefficient #4a combined with normal reinforcement QP offset value; Coefficient group B: Coefficient #1, Coefficient #2b combined with normal reinforcement QP offset value, Coefficient #3b combined with normal reinforcement QP offset value, Coefficient #4b combined with normal reinforcement QP offset value.
[0080] Implementation or variant example 47 (Example of converting selected information into whole compression unit components within a compression block, K=2, Jk=4) In the encoding method or apparatus or decoding method or apparatus described in Implementation or Variation 46, the compressed block component conversion selection information is the compressed block component conversion selection coefficient flag bit or positive / negative sign flag bit (the names are derived from the difference between coefficients #2a, #3a, #4a and coefficients #2b, #3b, #4b, which are respectively opposites of each other by a positive or negative sign); the compressed block component conversion selection coefficient flag bit or the positive / negative sign flag bit exists in the compressed block header in a direct form, an indirect form, or a combination of direct and indirect forms; the direct form of the compressed block component conversion selection coefficient flag bit or the positive / negative sign flag bit is generated from the compressed data bitstream. Composed of one or more bit strings, the indirect form of the compressed block component conversion selected coefficient flag or positive / negative flag is a compressed block component conversion selected coefficient flag or positive / negative flag derived from other encoding parameters and / or encoding / decoding variables and / or other syntax elements of the compressed data bitstream. The direct-indirect mixed compressed block component conversion selected coefficient flag or positive / negative flag is a compressed block component conversion selected coefficient flag or positive / negative flag that is partially direct (i.e. composed of one or more bit strings in the compressed data bitstream) and partially indirect (i.e. derived from other encoding parameters and / or encoding / decoding variables and / or other syntax elements of the compressed data bitstream).
[0081] Implementation or variant example 48 (Example of selecting information for whole compression unit component conversion within a compressed block, K=2, Jk=4) In the encoding method or apparatus or decoding method or apparatus described in implementation or variation 47, the selected coefficient flag bit of the compressed block component conversion or the positive / negative flag bit takes two predetermined values: a first predetermined value and a second predetermined value; at least based on the value of the selected coefficient flag bit of the compressed block component conversion or the positive / negative flag bit, the following corresponding component conversions are performed: If the selected coefficient flag or the sign flag of the compressed block component conversion is equal to the first predetermined value, then {the residual is subjected to a positive or negative component conversion operation using the coefficients belonging to coefficient group A}. If the selected coefficient flag or the sign flag of the compressed block component conversion is equal to the second predetermined value, then {the component conversion positive operation or component conversion inverse operation is performed on the residual using the coefficients belonging to the coefficient group B}.
[0082] Implementation or variant example 49 (5 sets of coefficients represented in 3 forms are divided into 2 coefficient groups, and only one coefficient group can be used in a frame of image (as a compressed block)) Based on implementations or variations, examples 7, 36, 37, 42, 47, and 48. A 3-component image or video consists of one luminance component and two chrominance components. The current chromaticity component of the residual is transformed using a component transformation operation corresponding to one of five predetermined sets of coefficients. These five sets of coefficients include an identity transformation where the output component equals the input component, while the luminance component of the residual is not transformed (i.e., the output component equals the input component). These five sets of coefficients can be equivalently reduced to three component transformation expressions: Expression form 1: Corresponding to the first set of coefficients, i.e., the constant coefficient 1 of the identity transformation. Expression Form 2: Corresponding to two sets of coefficients, namely the 2a set and the 2b set, both include the variable coefficient cSign. The cSign value in the 2a set is 1, while the cSign value in the 2b set is -1, meaning it is the opposite of the cSign in the 2a set. Expression Form 3: Corresponds to two sets of coefficients, namely the 3a set and the 3b set, both of which include the variable coefficient cSign. The cSign value in the 3a set is 1, while the cSign value in the 3b set is -1, meaning it is the opposite of the cSign value in the 3a set. The five sets of coefficients are divided into two overlapping coefficient groups (K=2 in Example 7), where the first set of coefficients (the constant coefficient 1 corresponding to the identity transformation) is the overlapping coefficient common to both coefficient groups: Group 1 coefficients: Set 1 coefficients, Set 2a coefficients, Set 3a coefficients, Group 2 coefficients: Set 1 coefficients, Set 2b coefficients, Set 3b coefficients. A single frame of an image (as a compressed block) can only use coefficients from one coefficient group, where each coefficient group includes three sets of coefficients, and the first set of coefficients consists of coefficients common to two coefficient groups. The compressed data stream contains compression block component conversion selection information. When the compressed block is an image, this compression block component conversion selection information is also called image component conversion selection information. This image component conversion selection information indicates which coefficient group is used for the current image. The image component conversion selection information is located in the image header and includes the following syntax elements: Image component conversion sign flag A flag value of 0 indicates that the image uses the first set of coefficients, and a flag value of 1 indicates that the image uses the second set of coefficients. This implementation or variant uses an image as a specific implementation of a compressed block, and is an application of the general definition of a compressed block in a VVC / H.266 image-level scenario.
[0083] Implementation or variant example 50 (Example of converting selected information into whole compression unit components within a compression block, K=2, Jk=4) In the encoding method or apparatus or decoding method or apparatus described in Implementation or Variation 48, the component conversion selection information of the compressed unit within the compressed block is the component conversion selection coefficient identifier code or the chroma residual code and component conversion type of the compressed unit within the compressed block; the component conversion selection coefficient identifier code or the chroma residual code and component conversion type of the compressed unit within the compressed block exists in the header of the compressed unit in a direct form, an indirect form, or a combination of direct and indirect forms; the direct form of the component conversion selection coefficient identifier code or the chroma residual code and component conversion type of the compressed unit within the compressed block is composed of one or more bit strings in the compressed data bitstream, and the indirect ... The selected coefficient identifier code or chroma residual code and component conversion type is a selected coefficient identifier code or chroma residual code and component conversion type for integer compression unit components within a compressed block derived from other encoding parameters and / or encoding / decoding variables and / or other syntax elements of the compressed data bitstream. The directly and indirectly mixed selected coefficient identifier code or chroma residual code and component conversion type for integer compression unit components within a compressed block is a partially directly (i.e. composed of one or more bit strings in the compressed data bitstream) and partially indirectly (i.e. derived from other encoding parameters and / or encoding / decoding variables and / or other syntax elements of the compressed data bitstream) mixed selected coefficient identifier code or chroma residual code and component conversion type for integer compression unit components within a compressed block.
[0084] Implementation or variant example 51 (Example of selecting information for whole compression unit component conversion within a compression block, K=2, Jk=4) In the encoding method or apparatus or decoding method or apparatus described in implementation or variation 50, the component conversion selection coefficient identifier code of the whole compression unit within the compressed block or the chroma residual code and component conversion type takes seven predetermined values: predetermined value 1, predetermined value 2, predetermined value 3, predetermined value 4, predetermined value 5, predetermined value 6, and predetermined value 7; at least based on the value of the component conversion selection coefficient identifier code of the whole compression unit within the compressed block or the chroma residual code and component conversion type, the following corresponding component conversions are performed: If the selected coefficient identifier code for the whole compression unit component conversion within the compressed block or the chroma residual code and component conversion type are equal to the predetermined value 1, then {Using coefficient #1 to perform a component transformation positive or inverse operation on the residual results in both component 1 and component 2 being zero. Therefore, residual decoding of component 1 and component 2 is not actually required.} If the selected coefficient identifier code for the whole compression unit component conversion within the compressed block or the chroma residual code and component conversion type are equal to the predetermined value 2, then {Using coefficient #1 to perform either a forward or inverse component transformation operation on the residual results in a component that is zero while the component is not zero. Therefore, in practice, only residual decoding is needed for the component.} If the selected coefficient identifier code for the whole compression unit component conversion within the compressed block or the chroma residual code and component conversion type are equal to the predetermined value 3, then {Using coefficient #1 to perform either a forward or inverse component transformation operation on the residual results in a non-zero component and a zero component. Therefore, in practice, only residual decoding of the component is required, not component-specific residual decoding.} If the selected coefficient identifier code for the whole compression unit component conversion within the compressed block or the chroma residual code and component conversion type are equal to the predetermined value 4, then {Using coefficient #1 to perform either a forward or inverse component transformation on the residual, neither component nor component is zero. Therefore, residual decoding is actually required for both components.} If the selected coefficient identifier code for the whole compression unit component conversion within the compressed block or the chroma residual code and component conversion type are equal to the predetermined value 5, then If the selected coefficient flag or the sign flag of the compressed block component conversion is equal to the first predetermined value, then {then perform a positive or negative component conversion operation on the residual using coefficient #2a combined with the normal reinforcement QP offset value}; otherwise, {then perform a positive or negative component conversion operation on the residual using coefficient #2b combined with the normal reinforcement QP offset value}. } If the selected coefficient identifier code for the whole compression unit component conversion within the compressed block or the chroma residual code and component conversion type are equal to the predetermined value 6, then If the selected coefficient flag or the sign flag of the compressed block component conversion is equal to the first predetermined value, then {then perform a positive or negative component conversion operation on the residual using coefficient #3a combined with the normal reinforcement QP offset value}; otherwise, {then perform a positive or negative component conversion operation on the residual using coefficient #3b combined with the normal reinforcement QP offset value}. } If the selected coefficient identifier code for the whole compression unit component conversion within the compressed block or the chroma residual code and component conversion type are equal to the predetermined value 7, then If the selected coefficient flag or the sign flag of the compressed block component conversion is equal to the first predetermined value, then {then perform a positive or negative component conversion operation on the residual using coefficient #4a combined with the normal reinforcement QP offset value}; otherwise, {then perform a positive or negative component conversion operation on the residual using coefficient #4b combined with the normal reinforcement QP offset value}. }
[0085] Implementation or variant example 52 (Example of converting selected information into whole compression unit components within a compressed block, K=4, Jk=4) In the encoding method or apparatus or decoding method or apparatus described in implementation or variation 45, the K coefficient groups are the following four coefficient groups: Coefficient group I: Coefficient #1, Coefficient #2a combined with normal enhanced QP offset value, Coefficient #2a combined with equal QP offset value, Coefficient #3a combined with normal enhanced QP offset value; Coefficient Group II: Coefficient #1, Coefficient #2a combined with normal reinforcement QP offset value, Coefficient #2a combined with equal QP offset value, Coefficient #4a combined with normal reinforcement QP offset value; Coefficient Group III: Coefficient #1, Coefficient #2b combined with normal reinforcement QP offset value, Coefficient #2b combined with equal QP offset value, Coefficient #3b combined with normal reinforcement QP offset value; Coefficient group IV: Coefficient #1, Coefficient #2b combined with normal reinforcement QP offset value, Coefficient #2b combined with equal QP offset value, Coefficient #4b combined with normal reinforcement QP offset value.
[0086] Implementation or variant example 53 (Example of converting selected information into whole compression unit components within a compressed block, K=4, Jk=4) In the encoding method or apparatus or decoding method or apparatus described in Implementation or Variation 52, the compressed block component conversion selection information is the compressed block component conversion selection coefficient identifier code or positive / negative sign flag (named from the difference between coefficients #2a, #3a, #4a and coefficients #2b, #3b, #4b, which are respectively opposites of each other by a positive or negative sign) and the swap flag (named from the difference between coefficients #3a, #3b and coefficients #4a, #4b, which are respectively swapped between o and p, s and t, a and e, b and f, c and g, d and h); the compressed block component conversion selection coefficient identifier code or the positive / negative sign flag and the swap flag exist in the compressed block header in a direct form, an indirect form, or a combination of direct and indirect forms; the compressed block header in the direct form... The selected coefficient identifier or positive / negative flag and the swap flag are composed of one or more bit strings in the compressed data bitstream. The indirect form of the selected coefficient identifier or positive / negative flag and the swap flag are derived from other encoding parameters and / or encoding / decoding variables and / or other syntax elements of the compressed data bitstream. The direct-indirect hybrid selected coefficient identifier or positive / negative flag and the swap flag are partially direct (i.e. composed of one or more bit strings in the compressed data bitstream) and partially indirect (i.e. derived from other encoding parameters and / or encoding / decoding variables and / or other syntax elements of the compressed data bitstream) hybrid selected coefficient identifier or positive / negative flag and the swap flag.
[0087] Implementation or variant example 54 (Example of converting selected information into whole compression unit components within a compressed block, K=4, Jk=4) In the encoding method or apparatus or decoding method or apparatus described in implementation or variation 53, the selected coefficient identifier code for the compressed block component conversion takes four predetermined values: predetermined value one, predetermined value two, predetermined value three, and predetermined value four; or the positive / negative flag bit and the swap flag bit each take two predetermined values independently: a first predetermined value and a second predetermined value; at least based on the value of the selected coefficient identifier code for the compressed block component conversion or the value of the positive / negative flag bit and the swap flag bit, the following corresponding component conversions are performed: If the selected coefficient identifier code for the compressed block component conversion is equal to the predetermined value, or the positive / negative flag is equal to the first predetermined value and the swap flag is also equal to the first predetermined value, then {Use the coefficients belonging to coefficient group I to perform either a forward or inverse component transformation operation on the residuals} If the selected coefficient identifier code for the compressed block component conversion is equal to the predetermined value two, or the positive / negative sign flag is equal to the first predetermined value and the swap flag is equal to the second predetermined value, then {Use the coefficients belonging to coefficient group II to perform either a forward or inverse component transformation operation on the residuals} If the selected coefficient identifier code for the compressed block component conversion is equal to the predetermined value three, or the positive / negative sign flag is equal to the second predetermined value and the swap flag is equal to the first predetermined value, then {Use the coefficients belonging to coefficient group III to perform either a forward or inverse component transformation operation on the residuals} If the selected coefficient identifier code for the compressed block component conversion is equal to the predetermined value four, or the positive / negative sign flag is equal to the second predetermined value and the swap flag is also equal to the second predetermined value, then {Use the coefficients belonging to the coefficient group IV to perform a component transformation positive operation or a component transformation inverse operation on the residual}.
[0088] Implementation or variant example 55 (Example of converting selected information into whole compression unit components within a compressed block, K=4, Jk=4) In the encoding method or apparatus or decoding method or apparatus described in Implementation or Variation 54, the component conversion selection information of the compressed unit within the compressed block is the component conversion selection coefficient identifier code of the compressed unit within the compressed block or the chroma residual code and component conversion type; the component conversion selection coefficient identifier code of the compressed unit within the compressed block or the chroma residual code and component conversion type exists in the compressed unit header in a direct form, an indirect form, or a direct-indirect mixed form; the direct form of the component conversion selection coefficient identifier code of the compressed unit within the compressed block or the chroma residual code and component conversion type is composed of one or more bit strings in the compressed data bitstream, the indirect ... The selected coefficient identifier code or chroma residual code and component conversion type is a selected coefficient identifier code or chroma residual code and component conversion type for integer compression unit components within a compressed block derived from other encoding parameters and / or encoding / decoding variables and / or other syntax elements of the compressed data bitstream. The directly and indirectly mixed selected coefficient identifier code or chroma residual code and component conversion type for integer compression unit components within a compressed block is a partially directly (i.e. composed of one or more bit strings in the compressed data bitstream) and partially indirectly (i.e. derived from other encoding parameters and / or encoding / decoding variables and / or other syntax elements of the compressed data bitstream) mixed selected coefficient identifier code or chroma residual code and component conversion type for integer compression unit components within a compressed block.
[0089] Implementation or variant example 56 (Example of converting selected information into whole compression unit components within a compressed block, K=4, Jk=4) In the encoding method or apparatus or decoding method or apparatus described in implementation or variation 55, the component conversion selection coefficient identifier code of the whole compression unit within the compressed block or the chroma residual code and component conversion type takes seven predetermined values: predetermined value 1, predetermined value 2, predetermined value 3, predetermined value 4, predetermined value 5, predetermined value 6, and predetermined value 7; at least based on the value of the component conversion selection coefficient identifier code of the whole compression unit within the compressed block or the chroma residual code and component conversion type, the following corresponding component conversions are performed: If the selected coefficient identifier code for the whole compression unit component conversion within the compressed block or the chroma residual code and component conversion type are equal to the predetermined value 1, then {Using coefficient #1 to perform either a forward or inverse component transformation on the residual, both component ww and component xx are zero. Therefore, residual decoding of components ww and xx is not actually required.} If the selected coefficient identifier code for the whole compression unit component conversion within the compressed block or the chroma residual code and component conversion type are equal to the predetermined value 2, then {Using coefficient #1 to perform either a forward or inverse component transformation operation on the residual, component ww is zero while component xx is not zero. Therefore, residual decoding is not actually required for component ww, only for component xx.} If the selected coefficient identifier code for the whole compression unit component conversion within the compressed block or the chroma residual code and component conversion type are equal to the predetermined value 3, then {Using coefficient #1 to perform either a forward or inverse component transformation on the residual, component ww is non-zero while component xx is zero. Therefore, only residual decoding of component ww is actually required, and residual decoding of component xx is not necessary.} If the selected coefficient identifier code for the whole compression unit component conversion within the compressed block or the chroma residual code and component conversion type are equal to the predetermined value 4, then {Using coefficient #1 to perform either a forward or inverse component transformation on the residual, neither component ww nor component xx is zero. Therefore, residual decoding is actually required for components xx and xx.} If the selected coefficient identifier code for the whole compression unit component conversion within the compressed block or the chroma residual code and component conversion type are equal to the predetermined value 5, then { If the selected coefficient identifier of the compressed block component conversion is equal to the predetermined value, or the positive / negative flag is equal to the first predetermined value and the swap flag is also equal to the first predetermined value, then {then perform a positive or inverse component conversion operation on the residual using coefficient #2a combined with the normal enhanced QP offset value}. If the selected coefficient identifier of the compressed block component conversion is equal to the predetermined value 2, or the positive / negative flag is equal to the first predetermined value and the swap flag is equal to the second predetermined value, then {then perform a positive or negative component conversion operation on the residual using coefficient #2a combined with the normal enhanced QP offset value}. If the selected coefficient identifier of the compressed block component conversion is equal to the predetermined value three, or the positive / negative flag is equal to the second predetermined value and the swap flag is equal to the first predetermined value, then {then perform a positive or inverse component conversion operation on the residual using coefficient #2b combined with the normal enhanced QP offset value}. If the selected coefficient identifier for the compressed block component conversion is equal to the predetermined value four, or the sign flag is equal to the second predetermined value and the swap flag is also equal to the second predetermined value, then {then perform a positive or inverse component conversion operation on the residual using coefficient #2b combined with the normal enhanced QP offset value}. } If the selected coefficient identifier code for the whole compression unit component conversion within the compressed block or the chroma residual code and component conversion type are equal to the predetermined value 6, then { If the selected coefficient identifier of the compressed block component conversion is equal to the predetermined value, or the positive / negative flag is equal to the first predetermined value and the swap flag is also equal to the first predetermined value, then {then perform a positive or inverse component conversion operation on the residual using coefficient #2a combined with the equal QP offset value}. If the selected coefficient identifier of the compressed block component conversion is equal to the predetermined value 2, or the positive / negative flag is equal to the first predetermined value and the swap flag is equal to the second predetermined value, then {then perform a positive or inverse component conversion operation on the residual using coefficient #2a combined with the equal QP offset value}. If the selected coefficient identifier of the compressed block component conversion is equal to the predetermined value three, or the positive / negative flag is equal to the second predetermined value and the swap flag is equal to the first predetermined value, then {then perform a positive or inverse component conversion operation on the residual using coefficient #2b combined with the equal QP offset value}. If the selected coefficient identifier of the compressed block component conversion is equal to the predetermined value four, or the positive / negative flag is equal to the second predetermined value and the swap flag is also equal to the second predetermined value, then {then perform a positive or inverse component conversion operation on the residual using coefficient #2b combined with the equal QP offset value}. } If the selected coefficient identifier code for the whole compression unit component conversion within the compressed block or the chroma residual code and component conversion type are equal to the predetermined value 7, then { If the selected coefficient identifier of the compressed block component conversion is equal to the predetermined value, or the positive / negative flag is equal to the first predetermined value and the swap flag is also equal to the first predetermined value, then {then perform a positive or inverse component conversion operation on the residual using coefficient #3a combined with the normal enhanced QP offset value}. If the selected coefficient identifier of the compressed block component conversion is equal to the predetermined value two, or the positive / negative flag is equal to the first predetermined value and the swap flag is equal to the second predetermined value, then {then perform a positive or negative component conversion operation on the residual using coefficient #4a combined with the normal enhanced QP offset value}. If the selected coefficient identifier of the compressed block component conversion is equal to the predetermined value three, or the positive / negative flag is equal to the second predetermined value and the swap flag is equal to the first predetermined value, then {then perform a positive or negative component conversion operation on the residual using coefficient #3b combined with the normal enhanced QP offset value}. If the selected coefficient identifier for the compressed block component conversion is equal to the predetermined value four, or the sign flag is equal to the second predetermined value and the swap flag is also equal to the second predetermined value, then {then perform a positive or inverse component conversion operation on the residual using coefficient #4b combined with the normal enhanced QP offset value}. }
[0090] Implementation or variant example 57 (example of first predetermined value and second predetermined value) In the implementation or variation of the encoding method or apparatus described in examples 48, 51, 54, or 56, or in the decoding method or apparatus, The first predetermined value is 0, and the second predetermined value is 1. or The first predetermined value is 1, and the second predetermined value is 0.
[0091] Implementation or variant example 58 (examples of predetermined values 1 to 7) In the implementation or variation of the encoding method or apparatus described in example 51 or 56, or in the decoding method or apparatus, The predetermined value 1 is 00. The predetermined value 2 is 010. The predetermined value 3 is 100. The predetermined value 4 is 110. The predetermined value 5 is 011. The predetermined value 6 is 101. The predetermined value 7 is 111; or The predetermined value 1 is 00. The predetermined value 2 is 010. The predetermined value 3 is 011. The predetermined value 4 is 100. The predetermined value 5 is 101. The predetermined value 6 is 110. The predetermined value 7 is 111.
[0092] Implementation or variant example 59 (examples of predetermined value one, predetermined value two, predetermined value three, and predetermined value four) In the implementation or variation of the encoding method or apparatus described in examples 54 or 56, or in the decoding method or apparatus, The predetermined value is 00. The predetermined value two is 01. The predetermined value three is 10. The predetermined value four is 11.
[0093] Implementation or variant example 60 (in addition to component conversion, color space transformation is also performed) In any of the embodiments or variations 1 to 8, 10 to 18, 21 to 27, 29 to 32, 35 to 39, 41, 43 to 48, 50 to 56, the encoding method or apparatus or the decoding method or apparatus, the multi-component is a 3-component, and the 3-component is subjected to a color space forward transformation or an inverse color space transformation before performing a component conversion forward operation on two of the 3-components or after performing a component conversion inverse operation.
[0094] Implementation or variant example 61 (in addition to component conversion, color space transformation is also performed) In the encoding method or apparatus or decoding method or apparatus described in Implementation or Variation 60, the three components are R, S, and T, the forward color space transformation is a forward transformation that transforms R, S, and T into Y, Cg, and Co; the inverse color space transformation is an inverse transformation that transforms the reconstructed values of Y, Cg, and Co after transformation, quantization, dequantization, and inverse transformation, or the reconstructed values after quantization and dequantization, or the reconstructed values after transformation and inverse transformation, YY, CCg, and CCo, into the reconstructed values of R, S, and T, RR, SS, and TT.
[0095] Implementation or variant example 62 (in addition to component conversion, color space transformation is also performed) In the implementation or variation of the encoding method or apparatus described in Example 61, or in the decoding method or apparatus, The positive transformation that converts R, S, and T into Y, Cg, and Co is: Y = (2R + S + T) / 4 Cg = (2R - S - T) / 4 Co = (-S + T) / 2; The inverse transform of YY, CCg, CCo into RR, SS, TT is: RR = YY + CCg SS = YY - CCg - CCo TT = YY - CCg + CCo; or, Another, simpler form, the positive transform that converts R, S, T into Y, Cg, Co, is: Co = T - S tmp = S + (Co >> 1) Cg = R - tmp Y = tmp + (Cg >> 1); The inverse transform of YY, CCg, CCo into RR, SS, TT is: tmp = YY - (CCg >> 1) RR = CCg + tmp SS = tmp - (CCo >> 1) TT = (CCo >> 1) + tmp = CCo + SS; In the inverse transform above, if RR, SS, and TT are renamed to the new YY, CCg, and CCo respectively, the inverse transform becomes: tmp = YY - (CCg >> 1) YY = CCg + tmp CCg = tmp - (CCo >> 1) CCo = (Co >> 1) + tmp.
Claims
1. A decoding method for a 3-component video, involving multi-coefficient component conversion of the prediction residual, wherein the 3 components include one luminance component and two chrominance components, characterized in that... include: The current chromaticity component of the residual is converted using a component conversion operation corresponding to one of five predetermined sets of coefficients, which includes an identity conversion where the output component equals the input component. The luminance component of the residual is not converted, i.e., an identity conversion where the output component equals the input component is performed. The five sets of coefficients can be equivalently reduced to three component transformation expression forms: Expression form 1: Corresponding to the first set of coefficients, i.e., the constant coefficient 1 of the identity transformation. Expression Form 2: Corresponding to two sets of coefficients, namely the 2a set and the 2b set, both include the variable coefficient cSign. The cSign value in the 2a set is 1, while the cSign value in the 2b set is -1, meaning it is the opposite of the cSign in the 2a set. Expression Form 3: Corresponds to two sets of coefficients, namely the 3a set and the 3b set, both of which include the variable coefficient cSign. The cSign value in the 3a set is 1, while the cSign value in the 3b set is -1, meaning it is the opposite of the cSign value in the 3a set. The five sets of coefficients are divided into two overlapping coefficient groups, where the first set of coefficients consists of overlapping coefficients common to both coefficient groups: Group 1 coefficients: Set 1 coefficients, Set 2a coefficients, Set 3a coefficients. Group 2 coefficients: Set 1 coefficients, Set 2b coefficients, Set 3b coefficients. A single frame of an image can only use coefficients from one coefficient group, where each coefficient group consists of three sets of coefficients. The compressed data stream contains image component conversion selection information, which indicates which coefficient group is used for the current image. The image component conversion selection information is located in the image header and includes the following syntax elements: Image component conversion sign flag A flag of 0 indicates that the image uses the first set of coefficients, and a flag of 1 indicates that the image uses the second set of coefficients.
2. A decoding apparatus for performing multi-coefficient component conversion on prediction residuals in 3-component video, wherein the 3 components include one luminance component and two chrominance components, characterized in that... include: The current chromaticity component of the residual is converted using a component conversion operation corresponding to one of five predetermined sets of coefficients, which includes an identity conversion where the output component equals the input component. The luminance component of the residual is not converted, i.e., an identity conversion where the output component equals the input component is performed. The five sets of coefficients can be equivalently reduced to three component transformation expression forms: Expression form 1: Corresponding to the first set of coefficients, i.e., the constant coefficient 1 of the identity transformation. Expression Form 2: Corresponding to two sets of coefficients, namely the 2a set and the 2b set, both include the variable coefficient cSign. The cSign value in the 2a set is 1, while the cSign value in the 2b set is -1, meaning it is the opposite of the cSign in the 2a set. Expression Form 3: Corresponds to two sets of coefficients, namely the 3a set and the 3b set, both of which include the variable coefficient cSign. The cSign value in the 3a set is 1, while the cSign value in the 3b set is -1, meaning it is the opposite of the cSign value in the 3a set. The five sets of coefficients are divided into two overlapping coefficient groups, where the first set of coefficients consists of overlapping coefficients common to both coefficient groups: Group 1 coefficients: Set 1 coefficients, Set 2a coefficients, Set 3a coefficients. Group 2 coefficients: Set 1 coefficients, Set 2b coefficients, Set 3b coefficients. A single frame of an image can only use coefficients from one coefficient group, where each coefficient group consists of three sets of coefficients. The compressed data stream contains image component conversion selection information, which indicates which coefficient group is used for the current image. The image component conversion selection information is located in the image header and includes the following syntax elements: Image component conversion sign flag A flag of 0 indicates that the image uses the first set of coefficients, and a flag of 1 indicates that the image uses the second set of coefficients.