US-20260129181-A1 - CODING METHOD, DECODER, AND STORAGE MEDIUM
Abstract
A coding method, a decoder, and a storage medium are provided. The decoding method includes the following. A related syntax element for a current block is obtained, where the related syntax element indicates whether prediction on the current block is to be performed based on both a transform model list and an intra-block copy (IBC) technology. A reference block obtained by applying the IBC technology to the current block is determined. A first transform model obtained based on a constructed transform model list is determined according to the related syntax element, where the constructed transform model list includes at least two types of transform models. A prediction block for the current block is determined based on the reference block and the first transform model.
Inventors
- Lai ZHANG
Assignees
- GUANGDONG OPPO MOBILE TELECOMMUNICATIONS CORP., LTD.
Dates
- Publication Date
- 20260507
- Application Date
- 20251229
Claims (20)
- 1 . A decoding method, applied to a decoder and comprising: obtaining a related syntax element for a current block, wherein the related syntax element indicates whether prediction on the current block is to be performed based on both a transform model list and an intra-block copy (IBC) technology; determining a reference block obtained by applying the IBC technology to the current block; determining, according to the related syntax element, a first transform model obtained based on a constructed transform model list, wherein the constructed transform model list comprises at least two types of transform models; and determining a prediction block for the current block based on the reference block and the first transform model.
- 2 . The method of claim 1 , wherein the related syntax element at least comprises a second syntax element, wherein the second syntax element indicates whether the transform model list is to be applied to the current block for prediction; and the related syntax element further comprises a first syntax element, wherein the first syntax element indicates a prediction mode for the current block using the IBC technology.
- 3 . The method of claim 2 , wherein obtaining the related syntax element for the current block comprises: decoding the first syntax element; and determining, according to the first syntax element, the prediction mode for the current block using the IBC technology, and decoding the second syntax element.
- 4 . The method of claim 3 , wherein determining, according to the first syntax element, the prediction mode for the current block using the IBC technology and decoding the second syntax element comprises: when a value of the first syntax element is a first value, determining that the prediction mode for the current block using the IBC technology is an advanced motion vector prediction (AMVP) mode, and decoding a third syntax element, wherein the third syntax element indicates whether a transform technology is to be applied for prediction, and the third syntax element belongs to the related syntax element; and decoding the second syntax element when a value of the third syntax element is a second value; or decoding the second syntax element when the value of the third syntax element is the first value; or when the value of the first syntax element is the first value, determining that the prediction mode for the current block using the IBC technology is an AMVP mode, and decoding the second syntax element; and decoding the third syntax element when a value of the second syntax element is the first value.
- 5 . The method of claim 3 , wherein determining, according to the first syntax element, the prediction mode for the current block using the IBC technology and decoding the second syntax element comprises: when a value of the first syntax element is a second value, determining that the prediction mode for the current block using the IBC technology is a merge mode, and decoding the second syntax element.
- 6 . The method of claim 3 , wherein determining, according to the related syntax element, the first transform model obtained based on the constructed transform model list comprises: when the value of the second syntax element is a second value indicating to apply the transform model list to the current block for prediction, decoding a fourth syntax element to determine index information of the transform model, and skipping inheriting a local illumination compensation (LIC) flag from a merge candidate block for the current block, wherein the fourth syntax element indicates a model index of the transform model in the transform model list, and the related syntax element further comprises the fourth syntax element; and determining the first transform model from the constructed transform model list based on the index information of the transform model.
- 7 . The method of claim 2 , further comprising: constructing the transform model list when the value of the second syntax element is the second value.
- 8 . The method of claim 7 , wherein constructing the transform model list comprises: adding sequentially at least one different transform model to an initial transform model list to obtain the transform model list, wherein the at least one transform model comprises at least one of: a second transform model corresponding to a sample in at least one neighbouring position of the current block; a third transform model corresponding to a sample in at least one non-neighbouring position of the current block; a fourth transform model applied in a history decoding procedure; an available transform model in temporal domain; or a preset transform model.
- 9 . The method of claim 8 , wherein the preset transform model comprises: a model corresponding to a preset model parameter, or a model obtained by applying an offset to at least one of: the second transform model, the third transform model, the fourth transform model, the model corresponding to the preset model parameter, or the available transform model in temporal domain.
- 10 . The method of claim 8 , further comprising: for a sample in any neighbouring position of the current block or a sample in any non-neighbouring position of the current block, when the sample satisfies a transform condition, obtaining a second transform model corresponding to the neighbouring position of the current block, or obtaining a third transform model corresponding to a sample in any non-neighbouring position of the current block, wherein the transform condition comprises at least one of: the IBC technology is applied to a block that the sample belongs to; a transform model flag is valid; or a size of the block that the sample belongs to satisfies a first preset size.
- 11 . The method of claim 8 , wherein the at least one different transform model comprises at least one of: at least one transform model has different transform types; at least one transform model has different model parameters; or a same transform type applies different template regions.
- 12 . The method of claim 8 , wherein adding sequentially the at least one different transform model to the initial transform model list to obtain the transform model list comprises: adding sequentially the at least one different transform model to the initial transform model list to obtain an intermediate transform model list; and rearranging the intermediate transform model list to obtain the transform model list.
- 13 . The method of claim 12 , wherein rearranging the intermediate transform model list to obtain the transform model list comprises: traversing each transform model in the intermediate transform model list to determine an offset value corresponding to each transform model; performing prediction on a reference-block template by applying each transform model, to determine a reference-block template prediction corresponding to each transform model; determining an error value between the reference-block template prediction corresponding to each transform model and a current-block template; determining a template error value corresponding to each transform model based on the error value and the offset value corresponding to each transform model; and rearranging the transform models based on the template error values corresponding to the transform models to obtain the transform model list.
- 14 . The method of claim 13 , wherein when the template error values corresponding to the transform models are in an ascending order, index information corresponding to the transform models in the transform model list is also in an ascending order.
- 15 . The method of claim 13 , further comprising: determining the error value to be a maximum value, when the reference-block template is unavailable.
- 16 . The method of claim 8 , further comprising: obtaining first position information of the current block and a current size of the current block; and determining at least one neighbouring position and at least one non-neighbouring position of the current block based on the first position information and the current size.
- 17 . The method of claim 8 , further comprising: obtaining a history transform model applied in a decoding procedure; and when a model same as the history transform model exists in a history transform model list, removing the same model from the history transform model list, and adding the history transform model to a 1 st position in the history transform model list; when no model same as the history transform model exists in the history transform model list, adding the history transform model to the 1 st position in the history transform model list.
- 18 . An encoding method, applied to an encoder and comprising: determining a candidate block vector list for a current block; determining a reference block vector based on the candidate block vector list; determining a reference block based on the reference block vector; when a prediction mode for the current block is determined to be an intra-block copy (IBC) technology combined with a transform model list, obtaining a first transform model from a constructed transform model list, wherein the constructed transform model list comprises at least two types of transform models; determining a prediction block for the current block based on the reference block and the first transform model; and encoding a related syntax element for the current block and signalling encoded bits obtained into a bitstream, wherein the related syntax element indicates whether prediction on the current block is to be performed based on both the transform model list and the IBC technology.
- 19 . A decoder, comprising: a processor; and a memory storing computer readable program codes which, when executed by the processor, cause the processor to: obtain a related syntax element for a current block, wherein the related syntax element indicates whether prediction on the current block is to be performed based on both a transform model list and an intra-block copy (IBC) technology; determine a reference block obtained by applying the IBC technology to the current block, and determine, according to the related syntax element, a first transform model obtained based on a constructed transform model list, wherein the constructed transform model list comprises at least two types of transform models; and determine a prediction block for the current block based on the reference block and the first transform model.
- 20 . A non-transitory computer-readable storage medium, having a computer program and a bitstream stored thereon, wherein the computer program, when executed by a processor, enables the processor to perform the steps of the encoding method of claim 18 to generate the bitstream.
Description
CROSS REFERENCE TO RELATED APPLICATION(S) This application is a continuation of International Application No. PCT/CN2023/105611, filed on Jul. 3, 2023, the entire disclosure of which is hereby incorporated herein by reference. TECHNICAL FIELD This disclosure relates to the field of video coding technology, and more particularly, to a coding method, a decoder, and a storage medium. BACKGROUND Intra block copy (IBC) technology is an intra prediction technology in which prediction samples are obtained based on block matching. IBC is similar to inter prediction in that prediction is implemented based on a block vector directed to a reference block from a current block. The difference lies in that a reference block in inter prediction comes from a reconstructed picture that has been encoded, while a reference block in IBC comes from a reconstructed part of a current picture. Local illumination compensation (LIC) technology is a block-level linear transform technology. An LIC method is based on existence of a linear relationship between a current coding block and a reference block. In the related art, with IBC technology, a reference block can be determined from a current picture through block compensation. On this basis, IBC technology can be combined with LIC technology to perform linear transform on the reference block to determine a prediction block, thereby improving prediction accuracy. However, linear transform parameters for LIC technology are derived from reconstructed samples neighbouring a current block and reconstructed samples neighbouring a reference block, which is unable to provide a variety of parameter options and therefore has limitation, thus affecting coding performance. SUMMARY In a first aspect, a decoding method is provided in embodiments of the disclosure. The method is applied to a decoder. The method includes the following. A related syntax element for a current block is obtained, where the related syntax element indicates whether prediction on the current block is to be performed based on both a transform model list and an intra-block copy (IBC) technology. A reference block obtained by applying the IBC technology to the current block is determined. A first transform model obtained based on a constructed transform model list is determined according to the related syntax element, where the constructed transform model list includes at least two types of transform models. A prediction block for the current block is determined based on the reference block and the first transform model. In a second aspect, an encoding method is provided in embodiments of the disclosure. The encoding method is applied to an encoder. The method includes the following. A candidate block vector list for a current block is determined. A reference block vector is determined based on the candidate block vector list. A reference block is determined based on the reference block vector. If a prediction mode for the current block is determined to be an IBC technology combined with a transform model list, a first transform model is obtained from a constructed transform model list, where the constructed transform model list includes at least two types of transform models. A prediction block for the current block is determined based on the reference block and the first transform model. A related syntax element for the current block is encoded, and encoded bits obtained are signalled into a bitstream, where the related syntax element indicates whether prediction on the current block is to be performed based on both the transform model list and the IBC technology. In a third aspect, a decoder is provided in embodiments of the disclosure. The decoder includes a first memory and a first processor. The first memory is configured to store computer programs executable by the first processor. The first processor is configured to, when executing the computer programs, perform the decoding method described in the first aspect. In a fourth aspect, a non-transitory computer-readable storage medium, having a computer program and a bitstream stored thereon, wherein the computer program, when executed by a processor, enables the processor to perform the steps of the encoding method in the first aspect to generate the bitstream. BRIEF DESCRIPTION OF THE DRAWINGS FIG. 1 is a schematic diagram illustrating a prediction procedure in Intra template matching prediction (intra TMP) technology. FIG. 2 is a schematic diagram illustrating a matching block in Intra TMP technology. FIG. 3 is a schematic diagram illustrating template types in Intra TMP technology. FIG. 4A is a schematic diagram illustrating coarse search in template matching in Intra TMP technology. FIG. 4B is a schematic diagram illustrating fine search in template matching in Intra TMP technology. FIGS. 5A and 5B show a schematic diagram illustrating weighted fusion in Intra TMP fusion prediction technology. FIG. 6A is a schematic diagram illustrating a filter shape. FIG. 6B is a