Encoding method, decoding method, bitstream, encoder, decoder, and storage medium

By using a time-domain adaptive loop filtering method, the reconstructed samples and filter coefficients of the inter-frame reference image are used for filtering, which solves the problem of unsatisfactory filtering effect in the existing technology and improves the encoding and decoding performance.

WO2026007109A1PCT designated stage Publication Date: 2026-01-08GUANGDONG OPPO MOBILE TELECOMMUNICATIONS CORP LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
PCT/CN2024/103911
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-07-05
Publication Date
2026-01-08

AI Technical Summary

Technical Problem

In existing video coding technologies, loop filters fail to fully utilize the relevant information of the temporally reconstructed image, resulting in unsatisfactory filtering effects and reduced encoding and decoding performance.

Method used

A temporal adaptive loop filtering method is adopted. The inter-frame reference image and filter coefficients of the current block are determined by the decoding end and the encoding end, respectively. The filtering is performed on the reconstructed samples based on the inter-frame reference image to determine the reconstructed value after filtering. Syntax element identification information is written at the encoding end to control the filtering process.

Benefits of technology

It improves filtering performance, enhances encoding and decoding performance, and makes full use of relevant information from inter-frame reference images.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2024103911_08012026_PF_FP_ABST
    Figure CN2024103911_08012026_PF_FP_ABST
Patent Text Reader

Abstract

Disclosed in embodiments of the present application are an encoding method and a decoding method. At a decoding end, a bitstream is decoded, and first syntax element identification information is determined; upon determining, on the basis of the first syntax element identification information, that a current block uses TALF for filtering, at least one inter-frame reference image corresponding to a current image and a filter coefficient corresponding to the current block are determined; and on the basis of a reconstructed sample of the at least one inter-frame reference image and the filter coefficient corresponding to the current block, the current block is filtered, and a reconstructed value of the current block after filtering is determined.
Need to check novelty before this filing date? Find Prior Art

Description

Coding method, code stream, encoder, decoder and storage medium TECHNICAL FIELD

[0001] Embodiments of the present application relate to the technical field of image processing, and particularly relate to a coding method, a code stream, an encoder, a decoder and a storage medium. BACKGROUND

[0002] In the multi-functional video coding (VVC), the in loop filter includes a DeBlocking Filter (DBF), a Sample adaptive Offset (SAO), an Adaptive loop filter (ALF) and a Cross Component Adaptive Loop Filter (CCALF).

[0003] However, the common filtering technology does not fully utilize the related information of the time domain reconstructed image, and the filtering effect is not ideal, which reduces the coding performance.

[0004] SUMMARY

[0005] Embodiments of the present application provide a coding method, a code stream, an encoder, a decoder and a storage medium, which can improve the filtering effect and improve the coding performance.

[0006] The technical scheme of the embodiments of the present application can be implemented as follows:

[0007] In a first aspect, the embodiments of the present application provide a decoding method applied to a decoder, and the method comprises:

[0008] decoding a code stream to determine first syntax element identification information;

[0009] in a case where it is determined based on the first syntax element identification information that the current block is filtered using TALF, determining at least one inter-frame reference image corresponding to the current image and filter coefficients corresponding to the current block;

[0010] filtering the current block based on the reconstructed samples of the at least one inter-frame reference image and the filter coefficients corresponding to the current block to determine filtered reconstructed values of the current block.

[0011] In a second aspect, the embodiments of the present application provide an encoding method applied to an encoder, and the method comprises:

[0012] determine at least one inter-frame reference picture corresponding to the current picture and filter coefficients corresponding to the current block;

[0013] filter the current block based on the reconstructed samples of the at least one inter-frame reference picture and the filter coefficients corresponding to the current block, to determine filtered reconstructed values of the current block;

[0014] determine a first generation value according to the filtered reconstructed values of the current block, determine first syntax element identification information based on the first generation value, and write the first syntax element identification information into a bitstream; wherein the first syntax element identification information is used to determine whether the current block is filtered using TALF.

[0015] In a third aspect, an embodiment of the present application provides a bitstream, the bitstream being generated by bit encoding to-be-encoded information; wherein the to-be-encoded information at least includes one or more of the following: first syntax element identification information, second syntax element identification information, third syntax element identification information, APS index, and TALF parameter.

[0016] In a fourth aspect, an embodiment of the present application provides an encoder, the encoder including a first determining unit; wherein

[0017] The first determining unit is configured to determine at least one inter-frame reference picture corresponding to the current picture and filter coefficients corresponding to the current block, filter the current block based on the reconstructed samples of the at least one inter-frame reference picture and the filter coefficients corresponding to the current block, to determine filtered reconstructed values of the current block, determine a first generation value according to the filtered reconstructed values of the current block, determine first syntax element identification information based on the first generation value, and write the first syntax element identification information into a bitstream; wherein the first syntax element identification information is used to determine whether the current block is filtered using TALF.

[0018] In a fifth aspect, an embodiment of the present application provides an encoder, the encoder including a first memory and a first processor; wherein

[0019] The first memory is configured to store a computer program capable of running on the first processor;

[0020] The first processor is configured to execute the encoding method as described above when the computer program is running.

[0021] In a sixth aspect, an embodiment of the present application provides a decoder, the decoder including a second determining unit; wherein

[0022] The second determining unit is configured to decode a code stream, determine a first syntax element identification information, determine at least one inter-frame reference image corresponding to a current image and filter coefficients corresponding to the current block in a case that the current block is determined to use TALF for filtering based on the first syntax element identification information, filter the current block based on the reconstructed samples of the at least one inter-frame reference image and the filter coefficients corresponding to the current block, and determine the filtered reconstructed value of the current block.

[0023] In a seventh aspect, an embodiment of the present application provides a decoder, the decoder comprising a second memory and a second processor; wherein,

[0024] The second memory is configured to store a computer program capable of running on the second processor.

[0025] The second processor is configured to execute the decoding method as described above when running the computer program.

[0026] In an eighth aspect, an embodiment of the present application provides a computer readable storage medium, the computer readable storage medium storing a computer program, the computer program being executed to implement the decoding method as described in the first aspect, or to implement the encoding method as described in the second aspect.

[0027] In a ninth aspect, an embodiment of the present application provides a computer readable storage medium, the computer readable storage medium being configured to store a code stream generated by the encoding method as described in the first aspect.

[0028] The embodiment of the present application provides a coding and decoding method, a code stream, an encoder, a decoder and a storage medium. At a decoding end, the code stream is decoded, and first syntax element identification information is determined. In a case where it is determined based on the first syntax element identification information that a current block uses TALF for filtering, at least one inter-frame reference image corresponding to a current image and filter coefficients corresponding to the current block are determined. The current block is filtered based on the reconstructed samples of the at least one inter-frame reference image and the filter coefficients corresponding to the current block, and the filtered reconstructed value of the current block is determined. At an encoding end, at least one inter-frame reference image corresponding to a current image and filter coefficients corresponding to the current block are determined. The current block is filtered based on the reconstructed samples of the at least one inter-frame reference image and the filter coefficients corresponding to the current block, and the filtered reconstructed value of the current block is determined. The first cost value is determined according to the filtered reconstructed value of the current block, the first syntax element identification information is determined based on the first cost value, and the first syntax element identification information is written into the code stream. The first syntax element identification information is used to determine whether the current block uses TALF for filtering. It can be seen that the embodiment of the present application provides a time domain adaptive loop filtering method, which can realize TALF filtering processing on the reconstructed value of the current block based on the reconstructed samples of the at least one inter-frame reference image and the corresponding filter coefficients. In the TALF filtering process, the related information of the at least one inter-frame reference image is fully utilized, so that the filtering effect can be improved, and the coding and decoding performance is improved. BRIEF DESCRIPTION OF DRAWINGS

[0029] FIG. 1 is an application schematic diagram of an encoding framework provided by the related art;

[0030] FIG. 2 is an application schematic diagram of a loop filtering module provided by the related art;

[0031] FIG. 3 is a shape schematic diagram one of a common luma adaptive loop filter;

[0032] FIG. 4 is a shape schematic diagram two of a common chroma adaptive loop filter;

[0033] FIG. 5 is an implementation process schematic diagram of loop filtering;

[0034] FIG. 6 is a cross-component adaptive filter shape schematic diagram;

[0035] FIG. 7 is a relationship of encoding / decoding and playing order under a RA configuration;

[0036] FIG. 8 is a system composition block diagram of an encoder provided by the embodiment of the present application;

[0037] FIG. 9 is a system composition block diagram of a decoder provided by the embodiment of the present application;

[0038] FIG. 10 is a schematic diagram of a decoding method provided by the embodiment of the present application;

[0039] Fig. 11 is a schematic diagram of implementation of TALF filtering according to an embodiment of the present application;

[0040] Fig. 12 is a schematic diagram of implementation of TALF filtering according to an embodiment of the present application;

[0041] Fig. 13 is a schematic diagram of implementation of TALF filtering according to an embodiment of the present application;

[0042] Fig. 14 is a schematic diagram of implementation of TALF filtering according to an embodiment of the present application;

[0043] Fig. 15 is a schematic diagram of implementation of TALF filtering according to an embodiment of the present application;

[0044] Fig. 16 is a schematic diagram of implementation of TALF filtering according to an embodiment of the present application;

[0045] Fig. 17 is a schematic diagram of implementation of TALF filtering according to an embodiment of the present application;

[0046] Fig. 18 is a schematic diagram of a filter according to an embodiment of the present application;

[0047] Fig. 19 is a schematic diagram of a filter according to an embodiment of the present application;

[0048] Fig. 20 is a schematic diagram of a filter according to an embodiment of the present application;

[0049] Fig. 21 is a schematic diagram of a filter according to an embodiment of the present application;

[0050] Fig. 22 is a schematic diagram of a filter according to an embodiment of the present application;

[0051] Fig. 23 is a schematic diagram of a filter according to an embodiment of the present application;

[0052] Fig. 24 is a schematic diagram of a filter according to an embodiment of the present application;

[0053] Fig. 25 is a schematic diagram of an encoding method according to an embodiment of the present application;

[0054] Fig. 26 is a schematic diagram of a structure of an encoder according to an embodiment of the present application;

[0055] Fig. 27 is a schematic diagram of a specific hardware structure of an encoder according to an embodiment of the present application;

[0056] Fig. 28 is a schematic diagram of a structure of a decoder according to an embodiment of the present application;

[0057] Fig. 29 is a schematic diagram of a specific hardware structure of a decoder according to an embodiment of the present application;

[0058] Fig. 30 is a schematic diagram of a structure of a codec system according to an embodiment of the present application. DETAILED DESCRIPTION

[0059] The technical solutions in the embodiments of the present application will be described clearly and completely below with reference to the drawings in the embodiments of the present application. It can be understood that the specific embodiments described herein are only used to explain the related application, but not to limit the application. In addition, it should be pointed out that only parts related to the application are shown in the drawings for convenience of description.

[0060] In the following description, "some embodiments" are related to a subset of all possible embodiments, but it can be understood that "some embodiments" can be the same subset or different subsets of all possible embodiments, and can be combined with each other without conflict. It should be pointed out that the terms "first\second\third" related to the embodiments of the present application are only used to distinguish similar objects, and do not represent a specific order of the objects. It can be understood that "first\second\third" can be interchanged in a specific order or sequence as allowed, so that the embodiments of the present application described herein can be implemented in an order other than that illustrated or described herein.

[0061] Digital video compression technology is mainly to compress large digital video data for transmission and storage. With the surge of Internet video and people's increasing demand for video clarity, although the existing digital video compression standard can save a lot of video data, better digital video compression technology is still needed to reduce the bandwidth and traffic pressure of digital video transmission.

[0062] In the process of digital video encoding, the encoder reads unequal samples of the original video sequence of different color formats, including luminance components and chrominance components, that is, the encoder reads a black and white or color image. Then it is divided into blocks, and the block data is handed over to the encoder for encoding.

[0063] The general video coding standard adopts a hybrid coding framework based on blocks. Each frame of video image is divided into square maximum coding units (LCU) or coding tree units (CTU) of the same size (such as 128x128, 64x64, etc.), and each maximum coding unit or coding tree unit can also be divided into rectangular coding units (CU) according to the rules; and the coding unit can also be divided into smaller prediction units (PU), transform units (TU), etc.

[0064] FIG. 1 is a schematic diagram of an application of a coding framework provided by the related art. As shown in FIG. 1, the hybrid coding framework can include a prediction module 11, a transform and quantization module 12, an entropy coding module 13, an inverse quantization and inverse transform module 14, a loop filtering module 15, and a decoded picture buffer module 16. The prediction module 11 can include an intra prediction module 11a and an inter prediction module 11b, and the inter prediction module 11b can include a motion estimation module and a motion compensation module. Because there is a strong correlation between adjacent samples in a frame of a video image, using an intra prediction mode in a video coding technology can eliminate spatial redundancy between adjacent samples. However, because there is also a strong similarity between adjacent frames in a video image, using an inter prediction mode in a video coding technology can eliminate temporal redundancy between adjacent frames, thereby improving coding efficiency. The basic process of a video codec is as follows: at an encoding end, a frame of an image is divided into blocks, an intra prediction or an inter prediction is used for a coding block to generate a prediction block of the coding block, an original block of the coding block is subtracted from the prediction block to obtain a residual block, a transform and quantization are performed on the residual block to obtain a quantized coefficient matrix, and the quantized coefficient matrix is entropy coded and output to a bitstream. At a decoding end, an intra prediction or an inter prediction is used for a coding block to generate a prediction block of the coding block, and on the other hand, a quantized coefficient matrix is obtained by decoding the bitstream, the quantized coefficient matrix is inverse quantized and inverse transformed to obtain a residual block, and the prediction block and the residual block are added to obtain a reconstructed value. The reconstructed value constitutes a reconstructed image, and a decoded image is obtained by performing loop filtering on the reconstructed image on a block basis or on an image basis. The encoding end also needs to perform similar operations as the decoding end to obtain a decoded image. The decoded image can be used as a reference frame for inter prediction of subsequent frames. If necessary, block division information, prediction, transform, quantization, entropy coding, loop filtering, and other mode information or parameter information determined by the encoding end need to be output to the bitstream. The decoding end analyzes and determines the same block division information, prediction, transform, quantization, entropy coding, loop filtering, and other mode information or parameter information as the encoding end, so as to ensure that the decoded image obtained by the encoding end is the same as the decoded image obtained by the decoding end. The decoded image obtained by the encoding end is usually also called a reconstructed image. When prediction is performed, a coding block can be divided into prediction units, and when transform is performed, the coding block can be divided into transform units. The division of the prediction units and the transform units can be different. The above is the basic process of a video codec under a hybrid coding framework based on blocks. With the development of technology, some modules or steps of the framework or process can be optimized. Embodiments of the present application are applicable to the basic process of a video codec under the hybrid coding framework based on blocks, but are not limited to the framework and process.

[0065] It can be understood that, intra prediction only refers to the information of the same frame image, predicts the sample information in the current partition block, and is used to eliminate spatial redundancy; inter prediction can refer to the image information of different frames, uses motion estimation to search for a motion vector information most matching the current partition block, and is used to eliminate temporal redundancy; transformation converts the predicted image block to a frequency domain, energy is redistributed, and the information not sensitive to human eyes can be removed in combination with quantization, and is used to eliminate visual redundancy; entropy coding can eliminate character redundancy according to a current context model and probability information of a binary code stream; and loop filtering mainly processes samples after inverse transformation and inverse quantization, makes up for distortion information, and provides better reference for subsequent coding samples.

[0066] Loop filtering is widely used in existing video coding standards, which greatly improves the subjective and objective quality of reconstructed video. In VVC, loop filtering includes DeBlocking Filter (DBF), Sample adaptive Offset (SAO), Adaptive loop filter (ALF) and Cross Component Adaptive Loop Filter (CCALF). In the latest JVET traditional video coding exploration platform reference software test model (Enhanced Compression Model, ECM), loop filtering additionally includes Cross component sample adaptive offset (CCSAO) and Bilateral filter (BIF). For example, FIG. 2 is a schematic diagram of application of a loop filtering module provided by the related art, and a block diagram of ECM loop filtering is shown in FIG. 2.

[0067] The principle of adaptive loop filtering and cross component adaptive loop filtering is to calculate one or more sets of filter coefficients through the relationship between reconstructed values and original sample values. The filter coefficients are transmitted through a code stream, and the decoder can construct a filter after obtaining the filter coefficients, and use the filter to filter the reconstructed image, so that the reconstructed image is closer to the original image after filtering.

[0068] The adaptive loop filtering in VVC can be applied to luminance and chrominance components. FIG. 3 is a schematic diagram of a common luminance adaptive loop filter, as shown in FIG. 3, the filter on the luminance component is a 7x7 diamond-shaped coefficient symmetric filter. FIG. 4 is a schematic diagram of a common chrominance adaptive loop filter, as shown in FIG. 4, the filter on the chrominance component is a 5x5 diamond-shaped coefficient symmetric filter.

[0069] The adaptive loop filter for luma and chroma in VVC uses the reconstructed samples under the filter window as input values, which are multiplied by adaptive filter coefficients and then summed to produce a correction value for the center position of the filter. The correction value is added to the reconstructed value at the center position to obtain the filtered value.

[0070] In ECM, the adaptive loop filter is more refined. The adaptive loop filter in ECM has more coefficients, and the input values of the filter are not limited to the current reconstructed value, but can also include residual values, reconstructed values before deblocking filtering, reconstructed values after deblocking filtering, reconstructed values after Gaussian filtering, and the like. Most of the inputs of the adaptive loop filter in ECM have undergone some pre-filtering processing, so that the adaptive loop filter does not need to transmit a large number of adaptive coefficients through the code stream as before.

[0071] Exemplarily, the cross-component adaptive filter in VVC is an 8-coefficient filter, which is only applicable to the chroma component. The cross-component adaptive filter uses the reconstructed value of luma as the filter input, and produces a correction value with the filter coefficients to be added to the chroma component to improve the subjective and objective quality of the chroma. In ECM, the number of filter coefficients is further increased to achieve higher filtering efficiency. At the same time, the residual value of luma and the reconstructed value of chroma are further made as inputs of the cross-component adaptive filter.

[0072] FIG. 5 is a schematic diagram of the implementation process of loop filtering. As shown in FIG. 5, the CCALF can take the reconstructed information and the residual information (l0) of luma as inputs, so the CCALF takes the luma reconstructed information and the luma residual information output by the SAO as inputs, calculates the filter coefficients to perform filtering processing, and obtains the filtering result (l1). or In addition, the chroma ALF itself filters the chroma reconstructed information output by the SAO to obtain the corresponding filtering result. Finally, the filtering result (l1) of the CCALF and the filtering result of the chroma ALF are added to obtain the final chroma filtering result. or

[0073] FIG. 6 is a schematic diagram of the shape of the cross-component adaptive filter. As shown in FIG. 6, the luma information (luma samples) can be used to minimize the error between the chroma reconstructed image and the original image, so as to complete the correction of the chroma samples.

[0074] ​Video encoding and decoding usually include three mainstream configurations: all intra (AI), random access (RA) and low delay (LD). In AI configuration, all video frames are encoded using intra coding technology; in RA configuration, according to the setting, a plurality of inter-coded frames are inserted between every two intra-coded frames; in LD configuration, except for the first encoded frame which is an intra-coded frame, the rest are inter-coded frames. In AI and LD configurations, the encoding and decoding order of video frames is the same as the playing order, while in RA, the encoding and decoding order and the playing order can be different.

[0075] Exemplarily, FIG. 7 is a relationship between the encoding / decoding and playing order in an RA configuration. As shown in FIG. 7, the actual RA encoding / decoding order is not performed according to the variable (Picture order count, POC) order used to determine the video playing order. For example, in the current ECM CTC test condition, the encoding / decoding order, POC value and temporal level (TemporalId, TID) relationship of RA are shown in Table 1 as follows:

[0076] Table 1

[0077] The inter-coded frame with a larger TID has more available reference images and is more likely to be compressed. Therefore, the higher the TID, the larger the quantization parameter used, and the lower the code rate can be.

[0078] Adaptive parameter set (APS) is a picture-level parameter set, which is used to transmit some adaptive parameters. The APS syntax element table in VVC is as follows:

[0079] The APS parameter set includes a plurality of syntax elements, wherein aps_adaptation_parameter_set_id is used to assign an index to the currently decoded APS set, aps_params_type is used to indicate the type of the APS parameter set, which in VVC can be a parameter set for encoding ALF adaptive parameters, or a parameter set for luma mapping with chroma scaling (LMCS) filter or SCALING. When this APS is an ALF type parameter set, the number of ALF filters, filter parameters and other data are further parsed.

[0080] Since the common filtering technology does not fully utilize the related information of the temporal reconstructed image, the filtering effect is not ideal, which reduces the coding and decoding performance.

[0081] To solve the above problems, the embodiment of the present application provides a coding and decoding method, a code stream, an encoder, a decoder and a storage medium. At the decoding end, the code stream is decoded, and first syntax element identification information is determined. In the case that it is determined that the current block uses TALF for filtering based on the first syntax element identification information, at least one inter-frame reference image corresponding to the current image and filter coefficients corresponding to the current block are determined. The current block is filtered based on the reconstructed samples of the at least one inter-frame reference image and the filter coefficients corresponding to the current block, and the filtered reconstructed value of the current block is determined. At the encoding end, at least one inter-frame reference image corresponding to the current image and filter coefficients corresponding to the current block are determined. The current block is filtered based on the reconstructed samples of the at least one inter-frame reference image and the filter coefficients corresponding to the current block, and the filtered reconstructed value of the current block is determined. The first syntax element identification information is determined according to the filtered reconstructed value of the current block, and the first syntax element identification information is written into the code stream based on the first syntax element identification information. The first syntax element identification information is used to determine whether the current block uses TALF for filtering. It can be seen that the embodiment of the present application provides a time domain adaptive loop filtering method, which can realize TALF filtering processing of the reconstructed value of the current block based on the reconstructed samples of the at least one inter-frame reference image and the corresponding filter coefficients. In the TALF filtering process, the related information of the at least one inter-frame reference image is fully utilized, so that the filtering effect can be improved, and the coding and decoding performance is improved.

[0082] Referring to FIG. 8, a system composition block diagram example of an encoder provided by the embodiment of the present application is shown. As shown in FIG. 8, the encoder 10 can include a segmentation unit 101, a prediction unit 102, a first adder 107, a transformation unit 108, a quantization unit 109, an inverse quantization unit 110, an inverse transformation unit 111, a second adder 112, a filtering unit 113, a decoded picture buffer (DPB) unit 114 and an entropy coding unit 115. Here, the input of the encoder 10 can be a video composed of a series of pictures or a still picture, and the output of the encoder 10 can be a bit stream (also referred to as a “code stream”) used to represent the compressed version of the input video.

[0083] The partition unit 101 partitions a picture in an input video into one or more Coding Tree Units (CTUs). The partition unit 101 partitions the picture into a plurality of tiles (or tiles), and can further partition a tile into one or more bricks, where a tile or a brick can include one or more complete and / or partial CTUs. In addition, the partition unit 101 can form one or more slices, where a slice can include one or more tiles arranged in raster order or one or more tiles covering a rectangular region of the picture. The partition unit 101 can also form one or more sub-pictures, where a sub-picture can include one or more slices, tiles, or bricks.

[0084] During the encoding process of the encoder 10, the partition unit 101 delivers a CTU to the prediction unit 102. Generally, the prediction unit 102 can be composed of a block partition unit 103, a Motion Estimation (ME) unit 104, a Motion Compensation (MC) unit 105, and an intra-prediction unit 106. Specifically, the block partition unit 103 iteratively partitions an input CTU into smaller Coding Units (CUs) using quad-tree partitioning, binary-tree partitioning, and ternary-tree partitioning. The prediction unit 102 can obtain an inter-predicted block for a CU using the ME unit 104 and the MC unit 105. The intra-prediction unit 106 can obtain an intra-predicted block for a CU using various intra-prediction modes including MIP mode. In an example, rate-distortion optimized motion estimation approaches can be invoked by the ME unit 104 and the MC unit 105 to obtain the inter-predicted block, and rate-distortion optimized mode determination approaches can be invoked by the intra-prediction unit 106 to obtain the intra-predicted block.

[0085] The prediction unit 102 outputs the prediction block of the CU, the first adder 107 calculates the difference between the CU in the output of the partition unit 101 and the prediction block of the CU, i.e. the residual CU. The transform unit 108 reads the residual CU and performs one or more transform operations on the residual CU to obtain coefficients. The quantization unit 109 quantizes the coefficients and outputs quantized coefficients (i.e. levels). The inverse quantization unit 110 performs a scaling operation on the quantized coefficients to output reconstructed coefficients. The inverse transform unit 111 performs one or more inverse transforms corresponding to the transforms in the transform unit 108 and outputs reconstructed residuals. The second adder 112 calculates the reconstructed CU by adding the reconstructed residuals and the prediction block of the CU from the prediction unit 102. The second adder 112 also sends its output to the prediction unit 102 to be used as an intra prediction reference. After all CUs in a picture or sub-picture are reconstructed, the filter unit 113 performs loop filtering on the reconstructed picture or sub-picture. Here, the filter unit 113 contains one or more filters, such as a deblocking filter, a Sample Adaptive Offset (SAO) filter, an Adaptive Loop Filter (ALF), a Luma Mapping with Chroma Scaling (LMCS) filter, and a neural network based filter, etc. Alternatively, when the filter unit 113 determines that a CU is not used as a reference for encoding of other CUs, the filter unit 113 performs loop filtering on one or more target samples in the CU.

[0086] The output of the filter unit 113 is the decoded picture or sub-picture, which is buffered to the DPB unit 114. The DPB unit 114 outputs the decoded picture or sub-picture according to the timing and control information. Here, the pictures stored in the DPB unit 114 can also be used as a reference for the prediction unit 102 to perform inter prediction or intra prediction. Finally, the entropy encoding unit 115 converts the parameters necessary for decoding the picture from the encoder 10 (such as control parameters and supplemental information, etc.) into binary form, and writes such binary form into the bitstream according to the syntax structure of each data unit, i.e. the encoder 10 finally outputs the bitstream.

[0087] Further, the encoder 10 can be a computing device having a first processor and a first memory recording a computer program. When the first processor reads and runs the computer program, the encoder 10 reads the input video and generates the corresponding bitstream. In addition, the encoder 10 can also be a computing device having one or more chips. These units implemented as integrated circuits on the chip have similar connection and data exchange functions as the corresponding units in FIG. 9.

[0088] Referring to FIG. 9, an example of a system composition diagram of a decoder is shown. As shown in FIG. 9, the decoder 20 can include a parsing unit 201, a prediction unit 202, an inverse quantization unit 205, an inverse transform unit 206, an adder 207, a filter unit 208, and a decoded picture buffer unit 209. Here, the input of the decoder 20 is a bitstream representing a compressed version of a video or a still picture, and the output of the decoder 20 can be a decoded video consisting of a series of pictures or a decoded still picture.

[0089] The input bitstream of the decoder 20 can be the bitstream generated by the encoder 10. The parsing unit 201 parses the input bitstream and obtains values of syntax elements from the input bitstream. The parsing unit 201 converts the binary representation of the syntax elements into numeric values and sends the numeric values to the units in the decoder 20 to obtain one or more decoded pictures. The parsing unit 201 can also parse one or more syntax elements from the input bitstream to display the decoded pictures.

[0090] During the decoding process of the decoder 20, the parsing unit 201 sends the values of the syntax elements and one or more variables used to obtain one or more decoded pictures that are set or determined according to the values of the syntax elements to the units in the decoder 20.

[0091] The prediction unit 202 determines a prediction block of a current decoded block (e.g., a CU). Here, the prediction unit 202 can include a motion compensation unit 203 and an intra prediction unit 204. Specifically, when an inter-decoding mode is indicated for decoding the current decoded block, the prediction unit 202 passes the relevant parameters from the parsing unit 201 to the motion compensation unit 203 to obtain an inter-prediction block; when an intra-prediction mode (including the MIP mode indicated based on the MIP mode index value) is indicated for decoding the current decoded block, the prediction unit 202 passes the relevant parameters from the parsing unit 201 to the intra prediction unit 204 to obtain an intra-prediction block.

[0092] The inverse quantization unit 205 has the same function as the inverse quantization unit 110 in the encoder 10. The inverse quantization unit 205 performs a scaling operation on the quantized coefficients (i.e., levels) from the parsing unit 201 to obtain reconstructed coefficients.

[0093] The inverse transform unit 206 has the same function as the inverse transform unit 111 in the encoder 10. The inverse transform unit 206 performs one or more transform operations (i.e., the inverse of the one or more transform operations performed by the inverse transform unit 111 in the encoder 10) to obtain a reconstructed residual.

[0094] The adder 207 performs an addition operation on its inputs (the prediction block from the prediction unit 202 and the reconstructed residual from the inverse transform unit 206) to obtain a reconstructed block of the current decoded block. The reconstructed block is also sent to the prediction unit 202 to be used as a reference for other blocks coded in the intra prediction mode.

[0095] After all CUs in a picture or sub-picture are reconstructed, the filter unit 208 performs loop filtering on the reconstructed picture or sub-picture. The filter unit 208 includes one or more filters, such as a deblocking filter, a sample adaptive offset filter, an adaptive loop filter, a luma mapping and chroma scaling filter, and a neural network based filter, etc. Alternatively, when the filter unit 208 determines that a reconstructed block is not used as a reference for decoding other blocks, the filter unit 208 performs loop filtering on one or more target samples in the reconstructed block. Here, the output of the filter unit 208 is a decoded picture or sub-picture, which is buffered to the DPB unit 209. The DPB unit 209 outputs the decoded picture or sub-picture according to the timing and control information. The pictures stored in the DPB unit 209 can also be used as a reference for performing inter prediction or intra prediction by the prediction unit 202.

[0096] Further, the decoder 20 can be a computing device with a second processor and a second memory recording a computer program. When the first processor reads and runs the computer program, the decoder 20 reads the input bitstream and generates the corresponding decoded video. In addition, the decoder 20 can also be a computing device with one or more chips. These units implemented as integrated circuits on the chip have similar connection and data exchange functions as the corresponding units in FIG. 8.

[0097] It also needs to be explained that when the embodiments of the present application are applied to the encoder 10, the “coding block” specifically refers to a current block to be coded in a video image (which can also be referred to as “coding block” for short); when the embodiments of the present application are applied to the decoder 20, the “coding block” specifically refers to a current block to be decoded in a video image (which can also be referred to as “decoded block” for short).

[0098] Based on FIG. 7, the encoding method in the embodiments of the present application is mainly applied to the “filter unit 113” part in the encoder 10.

[0099] Based on FIG. 8, the decoding method in the embodiments of the present application is mainly applied to the “filter unit 208” part in the decoder 20.

[0100] That is, the coding and decoding method in the embodiments of the present application can be applied to a video encoding system (referred to as “encoder” for short), a video decoding system (referred to as “decoder” for short), or even both a video encoding system and a video decoding system, but here is not limited in any way.

[0101] The technical solutions in the embodiments of the present application will be clearly and completely described in conjunction with the drawings in the embodiments of the present application.

[0102] An embodiment of the present application provides a decoding method, which is applied to a decoder and used in a scenario of performing filtering processing through a TALF filter. FIG. 10 is a schematic diagram of the decoding method according to an embodiment of the present application. As shown in FIG. 10, the method of performing decoding processing by the decoder can include the following steps.

[0103] In step 1001, a bitstream is decoded to determine first syntax element identification information.

[0104] In the embodiments of the present application, the bitstream is decoded to determine the first syntax element identification information. The first syntax element identification information can be used to determine whether the current block in the current picture is filtered by TALF, that is, based on the first syntax element identification information, it can be determined whether the TALF filter is used to filter the reconstructed value of the image component of the current block.

[0105] Further, in the embodiments of the present application, for the TALF filter, the corresponding input information can include at least one inter-frame reference picture corresponding to the current picture, and the at least one inter-frame reference picture can be a reconstructed picture that has been decoded in the time domain. The TALF filtering of the current block in the current picture can be completed by using the reconstructed sample value of the at least one inter-frame reference picture.

[0106] It can be understood that, in the embodiments of the present application, the current block can be a CTU determined after the current picture is divided, the current block can also be a coding unit (CU) obtained after the CTU is divided, and the current block can also be a sub-region of any size obtained after the current picture is divided. The size and the obtaining manner of the current block in the current picture are not limited in the present application.

[0107] Further, in the embodiments of the present application, the first syntax element identification information can be used to determine whether the TALF is used to filter the current block. The first syntax element identification information can be a flag. If the current block is a CTU corresponding to the current picture, the first syntax element identification information can be a CTU-level flag. If the current block is a CU corresponding to the current picture, the first syntax element identification information can be a CU-level flag. Of course, for a sub-region of any size in the current picture, the first syntax element identification information can also be a flag of another block level. The present application does not make specific limitation.

[0108] Further, in the embodiments of the present application, whether the TALF is used to filter the current block can be determined by the value of the first syntax element identification information.

[0109] For example, in some embodiments, if the value of the first syntax element identifying information is the first value, it is determined that the current block is not filtered using TALF. If the value of the first syntax element identifying information is not the first value, it is determined that the current block is filtered using TALF.

[0110] It should be noted that in the embodiments of the present application, the first syntax element identifying information can be used to indicate whether the current block is filtered using TALF. In addition, the first value can be in the form of a parameter or in the form of a number, which is not limited herein.

[0111] For example, in some embodiments, if the first syntax element identifying information is a block-level flag, in a specific example, the first value can be set to 0; in another specific example, the first value can also be set to false. The first value in the embodiments of the present application is not limited.

[0112] Taking 0 as the first value, in the embodiments of the present application, if the value of the first syntax element identifying information is 0, it is determined that the current block is not filtered using TALF. Otherwise, if the value of the first syntax element identifying information is not 0, it is determined that the current block is filtered using TALF.

[0113] For example, in some embodiments, if the current block of the current image is a CTU, the first syntax element identifying information can be a CTU-level syntax, for example, the first syntax element identifying information can be represented by the syntax element control identifying talf_ctb_idc[CtbAddrX][CtbAddrY], that is, talf_ctb_idc[CtbAddrX][CtbAddrY] indicates whether the current block of the current image is filtered using TALF. If the value of talf_ctb_idc[CtbAddrX][CtbAddrY] is 0, it is determined that the current block is not filtered using TALF. If the value of talf_ctb_idc[CtbAddrX][CtbAddrY] is not 0, it is determined that the current block is filtered using TALF. Of course, the value of talf_ctb_idc[CtbAddrX][CtbAddrY] is not limited to 0, which is not limited in the present application.

[0114] Further, in the embodiments of the present application, the code stream can be decoded first to determine the second syntax element identifying information; in the case that it is determined that the current image is allowed to be filtered using TALF based on the second syntax element identifying information, the determination process of the first syntax element identifying information is performed, that is, the parsing process of the first syntax element identifying information in step 1001 is performed.

[0115] Further, in embodiments of the present application, the second syntax element identification information can be used to determine whether the current picture is allowed to be filtered using TALF. In some embodiments, the second syntax element identification information can be a flag.

[0116] It should be noted that, in embodiments of the present application, the second syntax element identification information can be a picture-level flag, a slice-level (or slice-level) flag, a sub-picture-level flag, or a tile-level flag. The present application does not make any specific limitation.

[0117] Exemplarily, in some embodiments, if the second syntax element identification information is a slice-level flag, the second syntax element identification information can be used to determine whether the current slice is allowed to be filtered using TALF.

[0118] Further, in embodiments of the present application, the value of the second syntax element identification information can be used to determine whether the current picture (and / or the current slice) is allowed to be filtered using TALF.

[0119] Exemplarily, in some embodiments, if the value of the second syntax element identification information is a second value, it is determined that the current picture (and / or the current slice) is allowed to be filtered using TALF. If the value of the second syntax element identification information is a third value, it is determined that the current picture (and / or the current slice) is not allowed to be filtered using TALF.

[0120] It should be noted that, in embodiments of the present application, the second syntax element identification information can be used to indicate whether the current picture (and / or the current slice) is allowed to be filtered using TALF. In addition, the second value and the third value are different, and the second value and the third value can be in the form of a parameter or in the form of a number. In general, the second syntax element identification information can be a parameter written in a slice header or a picture header, which is not limited herein.

[0121] It should also be noted that, if the second syntax element identification information is a picture-level flag or a slice-level flag, in one specific example, the second value can be set to 1, and the third value can be set to 0; in another specific example, the second value can also be set to true, and the third value can also be set to false; or in yet another specific example, the second value can also be set to 0, and the third value can also be set to 1; or the second value can also be set to false, and the third value can also be set to true. The second value and the third value in embodiments of the present application are not limited.

[0122] For example, in the embodiments of the present application, if the value of the second syntax element identification information is 1, it can be determined that the current picture uses TALF for filtering. Otherwise, if the value of the second syntax element identification information is 0, it can be determined that the current picture does not use TALF for filtering.

[0123] For example, in some embodiments, assuming that the second syntax element identification information is a picture-level flag, the second syntax element identification information can be represented by a syntax element ph_talf_enabled_flag, i.e., ph_talf_enabled_flag indicates whether the current picture is allowed to use TALF for filtering. If the value of ph_talf_enabled_flag is 0, it is determined that the current picture does not use TALF for filtering, and if the value of ph_talf_enabled_flag is 1, it is determined that the current picture is allowed to use TALF for filtering.

[0124] For example, in some embodiments, assuming that the second syntax element identification information is a slice-level flag, the second syntax element identification information can be represented by a syntax element sh_talf_enabled_flag, i.e., sh_talf_enabled_flag indicates whether the current slice is allowed to use TALF for filtering. If the value of sh_talf_enabled_flag is 0, it is determined that the current slice does not use TALF for filtering, and if the value of sh_talf_enabled_flag is 1, it is determined that the current slice is allowed to use TALF for filtering.

[0125] Of course, the value of sh_talf_enabled_flag is not limited to 0 and 1, and the present application does not make specific limitations.

[0126] Therefore, in the embodiments of the present application, the parsing of the first syntax element identification information can depend on the second syntax element identification information. That is, the block-level identification can depend on the picture-level identification, or the block-level identification can depend on the slice-level identification. For example, in the case of determining that the current picture (and / or the current slice) uses TALF for filtering based on the second syntax element identification information, the determination of the first syntax element identification information can be further performed, otherwise, the first syntax element identification information does not need to be decoded again.

[0127] For example, in some embodiments, an example of encoding a picture-level TALF identifier (second syntax element identification information) in a picture header and a corresponding APS index can be as follows:

[0128] wherein ph talf enabled flag is used to indicate whether the current picture is filtered using TALF, and ph talf aps id can be used to indicate where the information of adaptive parameters (e.g. filter number, filter coefficients) of TALF is acquired in the APS parameter set when TALF is used.

[0129] Further, in the embodiments of the present application, the code stream can be decoded first to determine the third syntax element identification information; and in the case that it is determined based on the third syntax element identification information that the current sequence is filtered using TALF, the determination process of the second syntax element identification information is performed.

[0130] Further, in the embodiments of the present application, the third syntax element identification information can be used to determine whether the current sequence is filtered using TALF. The third syntax element identification information can be a flag, for example, a sequence level flag.

[0131] Further, in the embodiments of the present application, whether the current sequence is filtered using TALF can be determined by the value of the third syntax element identification information.

[0132] Exemplarily, in some embodiments, in the case that the value of the third syntax element identification information is a fourth value, it is determined that the current sequence is filtered using TALF. In the case that the value of the third syntax element identification information is a fifth value, it is determined that the current sequence is not filtered using TALF.

[0133] It should be noted that, in the embodiments of the present application, the third syntax element identification information can be used to indicate whether the current sequence is filtered using TALF. In addition, the fourth value and the fifth value are different, and the fourth value and the fifth value can be in the form of parameters or in the form of numbers, which are not limited herein.

[0134] It should be further noted that, if the third syntax element identification information is a sequence level flag, in one specific example, the fourth value can be set as 1, and the fifth value can be set as 0; in another specific example, the fourth value can also be set as true, and the fifth value can also be set as false; or in still another specific example, the fourth value can also be set as 0, and the fifth value can also be set as 1; or the fourth value can also be set as false, and the fifth value can also be set as true. The fourth value and the fifth value in the embodiments of the present application are not limited.

[0135] For example, assuming that the third syntax element identification information is a sequence level flag, and taking the fifth value as 1 and the fourth value as 0 as an example, if the third syntax element identification information takes the value 1, it can be determined that the current sequence uses TALF for filtering. Otherwise, if the third syntax element identification information takes the value 0, it can be determined that the current sequence does not use TALF for filtering.

[0136] For example, in some embodiments, assuming that the third syntax element identification information is a sequence level flag, the third syntax element identification information can be represented by a syntax element sps_talf_enabled_flag, i.e., sps_talf_enabled_flag indicates whether TALF is used for filtering of the current sequence. If sps_talf_enabled_flag takes the value 0, it is determined that TALF is not used for filtering of the current sequence, and if sps_talf_enabled_flag takes the value 1, it is determined that TALF is used for filtering of the current sequence.

[0137] Of course, the value of sps_talf_enabled_flag is not limited to 0 and 1, and the present application does not make specific limitations.

[0138] Therefore, in the embodiments of the present application, the parsing of the second syntax element identification information can depend on the third syntax element identification information, i.e., the image level (and / or slice level) identification can depend on the sequence level identification. For example, in the case where it is determined based on the third syntax element identification information that the current sequence uses TALF for filtering, the determination of the second syntax element identification information can be further performed, otherwise, the second syntax element identification information does not need to be decoded again.

[0139] That is, in the embodiments of the present application, TALF can include a sequence level enabling identification, i.e., the third syntax element identification information. For example, the manner of adding TALF sequence level identification in the standard text can be as follows:

[0140] Among them, sps_talf_enabled_flag is used to indicate whether the current sequence uses TALF for filtering, and sps_alf_enabled_flag is used to indicate whether the current sequence uses ALF for filtering.

[0141] Further, in the embodiments of the present application, the sequence level TALF identification can depend on the sequence level ALF identification, i.e., the parsing of the third syntax element identification information can have a dependent relationship with the parsing of the sequence level syntax element of ALF.

[0142] Exemplarily, in some embodiments, it is assumed that the sequence level ALF indication can be represented by a syntax element sps_alf_enabled_flag, i.e., sps_alf_enabled_flag indicates whether ALF is used for filtering the current sequence. If sps_alf_enabled_flag indicates that ALF is not used for filtering the current sequence, then the determination of the third syntax element indication information can be selected not to be decoded any more; if sps_alf_enabled_flag indicates that ALF is used for filtering the current sequence, then the determination of the third syntax element indication information can be further performed.

[0143] Exemplarily, in some embodiments, the TALF sequence level indication (the third syntax element indication information) can depend on the ALF picture level indication (the picture level ALF indication), and the dependency relationship can be as follows:

[0144] Wherein, sps_talf_enabled_flag is used for indicating whether TALF is used for filtering the current sequence, sps_alf_enabled_flag is used for indicating whether ALF is used for filtering the current sequence, and only when the current sequence allows ALF, i.e., sps_alf_enabled_flag indicates that ALF is used for filtering the current sequence, sps_talf_enabled_flag can be further parsed.

[0145] Further, in the embodiments of the present application, the picture level (and / or slice level) indication depends on the sequence level indication, which can include that the picture level (and / or slice level) TALF indication depends on the sequence level TALF indication, and can also include that the picture level (and / or slice level) TALF indication depends on the sequence level ALF indication.

[0146] That is to say, in the embodiments of the present application, the parsing of the second syntax element indication information can depend on the third syntax element indication information, or can depend on the sequence level ALF indication.

[0147] Exemplarily, in some embodiments, it is assumed that the sequence level ALF indication can be represented by a syntax element sps_alf_enabled_flag, i.e., sps_alf_enabled_flag indicates whether ALF is used for filtering the current sequence. If sps_alf_enabled_flag indicates that ALF is not used for filtering the current sequence, then the determination of the second syntax element indication information can be selected not to be decoded any more; if sps_alf_enabled_flag indicates that ALF is used for filtering the current sequence, then the determination of the second syntax element indication information can be further performed.

[0148] Exemplarily, in some embodiments, the TALF picture level identification (TALF picture level identification) can depend on the ALF sequence level identification (ALF sequence level identification), and the dependency relationship can be as follows:

[0149] Wherein, sps_talf_enabled_flag is used to indicate whether the current sequence is filtered by TALF, sps_alf_enabled_flag is used to indicate whether the current sequence is filtered by ALF, ph_talf_enabled_flag is used to indicate whether the current picture is filtered by TALF, and ph_talf_aps_id can be used to indicate where the adaptive parameters (such as the number of filters, filter coefficients) of TALF and other information are obtained in the APS parameter set when TALF is used.

[0150] Further, in the embodiments of the present application, the TALF identification at the picture level (and / or slice level) can also depend on the ALF identification at the picture level (and / or slice level).

[0151] That is, in the embodiments of the present application, the parsing of the second syntax element identification information can also depend on the ALF identification at the picture level (and / or slice level).

[0152] Exemplarily, in some embodiments, it is assumed that the ALF identification at the picture level can be represented by the syntax element ph_alf_enabled_flag, that is, ph_alf_enabled_flag indicates whether the current picture is allowed to be filtered by ALF. If ph_alf_enabled_flag indicates that the current picture is not filtered by ALF, then the decoding of the second syntax element identification information can be selected to be stopped; if ph_alf_enabled_flag indicates that the current picture is allowed to be filtered by ALF, then the determination of the second syntax element identification information can be further performed.

[0153] Exemplarily, in some embodiments, the TALF picture level identification (TALF picture level identification) can depend on the ALF picture level identification (ALF picture level identification), and the dependency relationship can be as follows:

[0154] sps_talf_enabled_flag is used to indicate whether the current sequence is filtered by TALF, ph_alf_enabled_flag is used to indicate whether the current picture is filtered by ALF, ph_talf_enabled_flag is used to indicate whether the current picture is filtered by TALF, and ph_talf_aps_id can be used to indicate where the adaptive parameters (such as the number of filters and filter coefficients) of TALF are obtained from the APS parameter set when TALF is used.

[0155] Exemplarily, in some embodiments, the image-level (and / or slice-level) TALF identification can also depend on some high-level syntax, for example, a high-level syntax element pps_alf_info_in_ph_flag is used to identify the control identification of the image-level or slice-level of the image-level or slice-level syntax element for parsing ALF, and the ALF identifier also exists in the slice header.

[0156] Exemplarily, in some embodiments, the slice-level TALF identification (slice-level TALF identification) can depend on the TALF control identification, and the dependency relationship can be as follows:

[0157] sps_talf_enabled_flag is used to indicate whether the current sequence is filtered by TALF, pps_alf_info_in_ph_flag is used to indicate whether the control identification of the image-level or slice-level of the image-level or slice-level syntax element for parsing ALF is used, sh_talf_enabled_flag is used to indicate whether the current slice is filtered by TALF, and sh_talf_aps_id can be used to indicate where the adaptive parameters (such as the number of filters and filter coefficients) of TALF are obtained from the APS parameter set when TALF is used.

[0158] Step 1002, in a case where it is determined, based on the first syntax element identification information, that the current block is filtered by TALF, determining at least one inter-frame reference picture corresponding to the current picture and filter coefficients corresponding to the current block.

[0159] In the embodiments of the present application, after determining the first syntax element identification information by decoding the code stream, if it is determined, based on the first syntax element identification information, that the current block is filtered by TALF, at least one inter-frame reference picture corresponding to the current picture and filter coefficients corresponding to the current block can be further determined.

[0160] Further, in the embodiments of the present application, when determining the at least one inter-frame reference picture corresponding to the current picture and the filter coefficients corresponding to the current block, the TALF parameters corresponding to the current block can be determined first, wherein the TALF parameters include one or more of a mode parameter, a number parameter, a coefficient value parameter and a coefficient sign parameter; then the filter mode and the number of filter groups are determined according to the TALF parameters; the at least one inter-frame reference picture can be determined according to the filter mode; and the filter coefficients corresponding to the current block can be determined according to the number of filter groups, the coefficient value parameter, the coefficient sign parameter and the first syntax element identification information.

[0161] It can be understood that, in the embodiments of the present application, the mode parameter can be used to determine the filter mode of the TALF filtering, wherein the determined inter-frame reference picture corresponding to the current picture can be different for different filter modes. The number parameter can be used to determine the number of filter groups corresponding to the current picture. The coefficient value parameter can be used to determine the absolute value of the filter coefficient. The coefficient sign parameter can be used to determine the sign of the filter coefficient, including positive and negative.

[0162] Further, in the embodiments of the present application, when determining the TALF parameters corresponding to the current block, in the case of determining that the current picture uses TALF filtering based on the second syntax element identification information, the code stream can be decoded to determine the APS index; then the APS set can be determined according to the APS index, and the TALF parameters are determined based on the APS set.

[0163] It can be understood that, in the embodiments of the present application, the APS index can be used to determine the APS parameter set corresponding to the current picture, that is, the APS set corresponding to the current picture can be determined through the APS index.

[0164] Exemplarily, in some embodiments, in the case of determining that the current slice uses TALF filtering based on the second syntax element identification information, the code stream can be further decoded to determine the corresponding APS index sh_talf_aps_id, which can be used to indicate in which APS parameter set the adaptive parameters (TALF parameters) of the TALF corresponding to the current slice are obtained when TALF is used.

[0165] Exemplarily, in some embodiments, in the case of determining that the current slice uses TALF filtering based on the second syntax element identification information, the code stream can be further decoded to determine the corresponding APS index sh_talf_aps_id, which can be used to indicate in which APS parameter set the adaptive parameters (TALF parameters) of the TALF corresponding to the current slice are obtained when TALF is used.

[0166] That is, in the embodiments of the present application, the TALF parameters corresponding to the current image can be saved in the APS, so that the TALF parameters can be obtained by parsing in the APS.

[0167] Exemplarily, in some embodiments, the implementation of determining the TALF parameters by parsing the APS is as follows:

[0168] Wherein, alf_data() is a function of parsing ALF, CCALF related syntax elements, parameters. The scheme can further add the syntax elements and parameters of TALF in alf_data() for parsing.

[0169] Exemplarily, in some embodiments, the implementation of determining the TALF parameters by parsing alf_data() is as follows:

[0170] Wherein, talf_filter_signal_flag is used to identify whether there is a TALF parameter in the parameters of the current alf_data.

[0171] talf_filter_mode is a mode parameter, which is used to indicate which mode the TALF belongs to among the forward / backward / bidirectional modes if there is a TALF parameter.

[0172] talf_num_filters_signalled_minus1 is a number parameter, which is used to indicate the number of filter groups. For example, if there is a TALF parameter, the value of talf_num_filters_signalled_minus1 is the number of TALF filters in the current APS minus one.

[0173] talf_coeff_abs is a coefficient value parameter, which is used to indicate the absolute value of the coefficient in each filter.

[0174] talf_coeff_sign is a coefficient sign parameter, which is used to indicate the positive or negative of the non-zero coefficient in each filter.

[0175] numCoeff variable represents the number of filter coefficients in the filter.

[0176] Further, in the embodiments of the present application, when determining the TALF parameters corresponding to the current block, in the case of determining that the current image uses TALF for filtering based on the second syntax element identification information, the TALF parameters can be determined by decoding the code stream.

[0177] That is, in the embodiments of the present application, the TALF parameters corresponding to the current image can be directly written into the code stream, so that the TALF parameters can be obtained by decoding the code stream. For example, the TALF parameters can be coded in the image header or the slice header.

[0178] Exemplarily, in some embodiments, the method of coding the TALF identifier and the TALF parameters in the image header is as follows:

[0179] Further, in the embodiments of the present application, when determining the filter mode and the number of filter groups according to the TALF parameters, the current configuration can be determined first; in the case of a random access (RA) configuration, the filter mode is determined in a first candidate mode according to the mode parameters; wherein the first candidate mode includes one or more of a forward filter mode, a backward filter mode and a bidirectional filter mode; in the case of a low delay (LD) configuration, the filter mode is determined in a second candidate mode according to the mode parameters; wherein the second candidate mode includes one or more of a first forward filter mode, a second forward filter mode and a third forward filter mode.

[0180] It should be noted that in the embodiments of the present application, the filter mode corresponding to the current image can be determined in combination with the current configuration and the mode parameters in the TALF parameters. Wherein, according to the current configuration, the determination of the filter mode based on the first candidate mode or the second candidate mode can be determined, and then the corresponding filter mode can be selected from the first candidate mode or the second candidate mode according to the mode parameters.

[0181] It can be understood that in the embodiments of the present application, for the RA configuration, the corresponding first candidate mode can include one or more of the forward filter mode, the backward filter mode and the bidirectional filter mode. Wherein, the forward filter mode can be understood as using the reconstructed information of the reconstructed image smaller than the POC of the current image as the input of the filter, the backward filter mode can be understood as using the reconstructed information of the reconstructed image larger than the POC of the current image as the input of the filter, and the bidirectional filter mode can be understood as using the reconstructed information of the reconstructed image smaller than the POC of the current image and the reconstructed information of the reconstructed image larger than the POC of the current image as the input of the filter.

[0182] It can be understood that, in the embodiments of the present application, for the LD configuration, the corresponding second candidate mode can include one or more of the first forward filtering mode, the second forward filtering mode and the third forward filtering mode. Wherein, for the coding under the LD configuration, the coding order is the same as the playing order, so only the reference image smaller than the current image POC can be used as the input of the filter, that is, only the forward filtering mode is supported. However, corresponding to different inter-frame reference images, the corresponding forward filtering mode can be distinguished into the first forward filtering mode, the second forward filtering mode and the third forward filtering mode.

[0183] Further, in the embodiments of the present application, after determining the filtering mode corresponding to the current image, at least one inter-frame reference image can be further determined according to the filtering mode.

[0184] It can be understood that, in the embodiments of the present application, the determination of the inter-frame reference image is dependent on the filtering mode, and for different filtering modes, the finally determined inter-frame reference image can be different.

[0185] Exemplarily, in some embodiments, if the POC value of the current image is N, for the RA configuration, if the determined filtering mode is the forward filtering mode, the image with the POC value of N-1 can be selected as the inter-frame reference image of the current image; if the determined filtering mode is the reverse filtering mode, the image with the POC value of N+1 can be selected as the inter-frame reference image of the current image; if the determined filtering mode is the bidirectional filtering mode, the images with the POC values of N-1 and N+1 can be selected as the inter-frame reference images of the current image.

[0186] Exemplarily, in some embodiments, if the POC value of the current image is N, for the LD configuration, the images with the POC values of N-1, N-2… can be used as the inter-frame reference images of the current image. For example, if the determined filtering mode is the first forward filtering mode, the image with the POC value of N-1 can be selected as the inter-frame reference image of the current image; if the determined filtering mode is the second forward filtering mode, the image with the POC value of N-2 can be selected as the inter-frame reference image of the current image; if the determined filtering mode is the third forward filtering mode, the images with the POC values of N-1 and N-2 can be selected as the inter-frame reference images of the current image.

[0187] That is, in the embodiments of the present application, the POC values of the inter-frame reference images determined based on different filter modes can be different, and the number of the determined inter-frame reference images can also be different. For example, for the forward filter mode, the backward filter mode in the RA configuration, and the first forward filter mode (the nearest first frame) and the second forward filter mode (the nearest second frame) in the LD configuration, the current image corresponds to one inter-frame reference image; for the bidirectional filter mode in the RA configuration, and the third forward filter mode (the nearest first frame and the nearest second frame) in the LD configuration, the current image corresponds to two inter-frame reference images.

[0188] It can be seen that, for the time domain adaptive loop filter type, the intra-frame encoded image has no reference image, and the inter-frame encoded image has a reference image, so the time domain filter of the present scheme is applied to the inter-frame encoded image, for example, the inter-frame encoded image under the encoding type of the RA and LD configurations. For the coding under the LD configuration, the coding sequence is the same as the playing sequence, so when the time domain adaptive filter is used for the inter-frame encoded image, the reference image with a smaller POC than the current image POC is always used as the input of the filter. For the coding under the RA configuration, the coding sequence can be different from the playing sequence, and when the time domain filter is used for the current inter-frame encoded image, the reference frame with a larger or smaller POC than the current frame POC can be used as the input of the filter.

[0189] The forward filter uses the reconstructed information of the reconstructed image with a smaller POC than the current image POC as the input of the filter to generate the filter value acting on the current reconstructed image. For example, under the LD configuration, the POC of the current image is N, N is a non-negative integer, and the reconstructed values of the reconstructed images with POC values of N-1, N-2, … can be used as the input of the filter; for example, under the RA configuration, under the coding sequence, when the POC of the current image is N, the inter-frame encoded image with a TID of 5 can use the reconstructed value of the image with a POC value of N-1 as the input of the filter; the inter-frame encoded image with a TID of 4 can use the reconstructed value of the image with a POC value of N-2 as the input of the filter; the inter-frame encoded image with a TID of 3 can use the reconstructed value of the image with a POC value of N-4 as the input of the filter; the inter-frame encoded image with a TID of 2 can use the image with a POC value of N-8 as the input of the filter; the inter-frame encoded image with a TID of 1 can use the reconstructed value of the image with a POC value of N-16 as the input of the filter; and the inter-frame encoded image with a TID of 0 can use the reconstructed value of the image with a POC value of N-32 as the input of the filter.

[0190] It should be noted that, in the embodiments of the present application, the POC values of the reference frames used in the forward filter will change due to different encoding configurations.

[0191] Reverse filtering is to use the reconstructed information of the reconstructed image with a larger POC than the current image as the input of the filter to generate the filtered value acting on the current reconstructed image. In the current various coding configurations, reverse filtering is only used in RA configuration. For example, in the RA configuration, when the POC of the current image is N in the coding order, the inter-coded image with TID of 5 can use the reconstructed value of the image with POC value of N+1 as the input of the filter; the TID of 4 can use the reconstructed value of the image with POC value of N+2 as the input of the filter; the TID of 3 can use the reconstructed value of the image with POC value of N+4 as the input of the filter; the TID of 2 can use the image with POC value of N+8 as the input of the filter; the TID of 1 can use the reconstructed value of the image with POC value of N+16 as the input of the filter; and the TID of 0 can use the reconstructed value of the image with POC value of N+32 as the input of the filter.

[0192] It should be noted that in the embodiments of the present application, the POC value of the reference frame used in reverse filtering will change due to different coding configurations.

[0193] Bidirectional filtering is to use the reconstructed information of the image with a smaller POC than the current image and the image with a larger POC than the current image as the input of the filter to generate the filtered value acting on the current reconstructed image. In the current various coding configurations, bidirectional filtering is only used in RA configuration. For example, in the RA configuration, when the POC of the current image is N in the coding order, the inter-coded image with TID of 5 can use the reconstructed value of the image with POC value of N+1 and N-1 as the input of the filter; the TID of 4 can use the reconstructed value of the image with POC value of N+2 and N-2 as the input of the filter; the TID of 3 can use the reconstructed value of the image with POC value of N+4 and N-4 as the input of the filter; the TID of 2 can use the image with POC value of N+8 and N-8 as the input of the filter; the TID of 1 can use the reconstructed value of the image with POC value of N+16 and N-16 as the input of the filter; and the TID of 0 can use the reconstructed value of the image with POC value of N+32 and N-32 as the input of the filter.

[0194] It should be noted that in the embodiments of the present application, the POC value of the reference frame used in bidirectional filtering will change due to different coding configurations. In principle, in the RA configuration, bidirectional filtering always uses the reconstructed values of the two reconstructed images closest in forward and backward distance as the input of the filter.

[0195] Exemplarily, in some embodiments, assuming that the filtering mode is a forward filtering mode, the following forward filtering modes can be included but are not limited to:

[0196] 1. When in the RA configuration, use the reference picture with the closest temporal distance and smaller POC than the current picture as the input of the temporal filter;

[0197] 2. When in the LD configuration, use the reference picture with POC value N-1 as the input of the temporal filter corresponding to the first forward filter mode when the POC value of the current picture is N;

[0198] 3. When in the LD configuration, use the reference picture with POC value N-2 as the input of the temporal filter corresponding to the second forward filter mode when the POC value of the current picture is N;

[0199] 4. When in the LD configuration, use the reference pictures with POC values N-2 and N-1 as the inputs of the temporal filter corresponding to the third forward filter mode when the POC value of the current picture is N.

[0200] Further, in the embodiments of the present application, when the number of groups of filters is determined according to the TALF parameter, the number of groups of filters can be determined according to the quantity parameter. The number of groups of filters can be determined according to the quantity parameter and a preset value.

[0201] It can be understood that, in the embodiments of the present application, when the number of groups of filters is determined according to the quantity parameter and the preset value, the quantity parameter and the preset value can be mathematically operated to obtain the number of groups of filters.

[0202] Exemplarily, in some embodiments, the quantity parameter can be represented by a syntax element talf_num_filters_signalled_minus1, which is a syntax element indicating the number of TALF filters contained in the current slice minus 1 (i.e., the preset value is 1). The value of talf_num_filters_signalled_minus1 can be 0, 1, 2 or 3, assuming that a slice can have at most four TALF filters. The syntax element is 0, indicating that the current slice has one TALF filter; the syntax element is 1, indicating that the current slice has two TALF filters; the syntax element is 2, indicating that the current slice has three TALF filters; and the syntax element is 3, indicating that the current slice has four TALF filters. When the syntax element does not exist in the code stream, its value can be 0 by default.

[0203] Further, in the embodiments of the present application, when the filter coefficients corresponding to the current block are determined according to the number of groups of filters, the coefficient value parameter, the coefficient sign parameter and the first syntax element identification information, the candidate filter corresponding to the current block can be first determined according to the first syntax element identification information and the number of groups of filters; and then the filter coefficients corresponding to the current block are determined according to the candidate filter corresponding to the current block, the coefficient value parameter and the coefficient sign parameter.

[0204] It can be understood that in the embodiments of the present application, the first syntax element identification information can also be used to determine the TALF information used by the current block, for example, the candidate filter corresponding to the current block can be determined through the value of the first syntax element identification information.

[0205] For example, in some embodiments, when the value of the first syntax element identification information is a first value, it is determined that the current block is not filtered using TALF. When the value of the first syntax element identification information is not the first value, it is determined that the current block is filtered using TALF, and the candidate filter corresponding to the current block can be further determined according to the first syntax element identification information.

[0206] Further, in the embodiments of the present application, when the candidate filter corresponding to the current block is determined according to the first syntax element identification information and the group number of the filter, the group number index of the filter corresponding to the current block can be determined according to the first syntax element identification information first; then the candidate filter corresponding to the current block is determined according to the group number of the filter and the group number index of the filter corresponding to the current block.

[0207] It can be understood that in the embodiments of the present application, when it is determined that the current block is filtered using TALF, the group number index of the filter corresponding to the current block can be determined according to the value of the first syntax element identification information. The group number index of the filter can represent the index of the TALF filter used by the current block in the filter set coded in the current image, that is, the group number index of the filter can be used to select the candidate filter corresponding to the current block from the multiple filters corresponding to the current image.

[0208] For example, in some embodiments, if the current block of the current image is a CTU, assuming that the first syntax element identification information is represented by the syntax element control talf_ctb_idc[CtbAddrX][CtbAddrY], if the value of talf_ctb_idc[CtbAddrX][CtbAddrY] is 0, it is determined that the current block is not filtered using TALF, if the value of talf_ctb_idc[CtbAddrX][CtbAddrY] is 1, then it can be determined that the candidate filter corresponding to the current block can be the first group of filters in the at least one group of filters, if the value of talf_ctb_idc[CtbAddrX][CtbAddrY] is 2, then it can be determined that the candidate filter corresponding to the current block can be the second group of filters in the at least one group of filters.

[0209] It should be noted that in the embodiments of the present application, the value of the first syntax element identification information depends on the number of filter groups. Wherein, assuming that the number of corresponding filter groups can be determined by the number parameter talf_num_filters_signalled_minus1, then the value of the first syntax element identification information talf_ctb_idc[CtbAddrX][CtbAddrY] can depend on talf_num_filters_signalled_minus1, for example, the value range of talf_ctb_idc[CtbAddrX][CtbAddrY]-1 can be 0-talf_num_filters_signalled_minus1.

[0210] Further, in the embodiments of the present application, when determining the filter coefficients corresponding to the current block according to the candidate filter corresponding to the current block, the coefficient value parameter and the coefficient sign parameter, the value of the filter coefficients corresponding to the candidate filter can be determined according to the coefficient value parameter; at the same time, the sign of the filter coefficients corresponding to the candidate filter is determined according to the coefficient sign parameter; finally, the filter coefficients corresponding to the current block can be determined according to the value of the filter coefficients corresponding to the candidate filter and the sign of the filter coefficients corresponding to the candidate filter.

[0211] It can be understood that in the embodiments of the present application, after determining the candidate filter corresponding to the current block based on the first syntax element identification information, the reconstruction of the filter coefficients can be further combined with the coefficient value parameter and the coefficient sign parameter to obtain the filter coefficients corresponding to the current block.

[0212] Exemplarily, in some embodiments, the coefficient value parameter can be represented by the syntax element talf_coeff_abs[sfIdx][j], wherein talf_coeff_abs[sfIdx][j] can be used to determine the absolute value of the jth coefficient of the sfIdxth group of filters. For example, talf_coeff_abs[sfIdx][j] can be represented using K-order exponential Golomb code, and K is 0.

[0213] It should be noted that in the embodiments of the present application, if the syntax element talf_coeff_abs[sfIdx][j] does not exist in the code stream, its value can be defaulted to 0.

[0214] Exemplarily, in some embodiments, the coefficient sign parameter can be represented by a syntax element talf_coeff_sign[sfIdx][j], where talf_coeff_sign[sfIdx][j] can be used to determine the sign of the jth coefficient of the sfIdxth group of filters. For example, when talf_coeff_sign[sfIdx][j] is equal to 1, it indicates that the sign of the jth coefficient of the sfIdxth group of filters is negative, and when talf_coeff_sign[sfIdx][j] is equal to 0, it indicates that the sign of the jth coefficient of the sfIdxth group of filters is positive.

[0215] It should be noted that in the embodiments of the present application, if the syntax element talf_coeff_sign[sfIdx][j] does not exist in the bitstream, it can be defaulted to 0.

[0216] That is, in the embodiments of the present application, if the candidate filter determined based on the first syntax element identification information is the sfIdxth group of filters, the reconstruction of the filter coefficients can be completed in combination with the coefficient value parameter talf_coeff_abs[sfIdx][j] and the coefficient sign parameter talf_coeff_sign[sfIdx][j].

[0217] Exemplarily, in some embodiments, based on the candidate filter corresponding to the current block, the filter coefficients are reconstructed according to the filter coefficient absolute value and the filter

[0218] The process of reconstructing the filter coefficients according to the coefficient sign is as follows:

[0219] Wherein, the numCoeff variable represents the number of filter coefficients in the filter.

[0220] Exemplarily, in some embodiments, in the case that the current picture corresponds to one inter-frame reference picture, for example, the forward filtering mode and the backward filtering mode in the RA configuration, and the first forward filtering mode (the nearest first frame) and the second forward filtering mode (the nearest second frame) in the LD configuration, a 7x7 symmetric filter containing 13 filter coefficients can be selected, and at this time, the value of the numCoeff variable can be 13; in the case that the current picture corresponds to two inter-frame reference pictures, for example, the bidirectional filtering mode in the RA configuration, and the third forward filtering mode (the nearest first frame and the nearest second frame) in the LD configuration, two 5x5 symmetric filters containing 7 filter coefficients can be selected, and at this time, the value of the numCoeff variable can be 14.

[0221] It should be noted that in the embodiments of the present application, the image-level control identifier can be applied to the slice level, the sub-picture level and the tile level, that is, the image-level syntax element identification information can be replaced by the slice-level syntax element identification information, the sub-picture-level syntax element identification information and the tile-level syntax element identification information, and the present application mainly takes the image-level control identifier as an example for illustration, and the type and form of the control identifier are not specifically limited.

[0222] In step 1003, the current block is filtered based on the reconstructed samples of the at least one inter-frame reference picture and the filter coefficients corresponding to the current block to determine the filtered reconstructed value of the current block.

[0223] In the embodiments of the present application, after determining that the current block is filtered using the TALF based on the first syntax element identification information, and determining the at least one inter-frame reference picture corresponding to the current picture and the filter coefficients corresponding to the current block, the current block can be further filtered based on the reconstructed samples of the at least one inter-frame reference picture and the filter coefficients corresponding to the current block to determine the filtered reconstructed value of the current block.

[0224] It can be understood that in the embodiments of the present application, since the POC values of the inter-frame reference pictures determined based on different filtering modes can be different, and the number of the determined inter-frame reference pictures can also be different, when the current block of the current picture is filtered using the TALF, the filtering processes performed corresponding to different numbers of inter-frame reference pictures are also different.

[0225] Further, in the embodiments of the present application, when the current block is filtered based on the reconstructed samples of the at least one inter-frame reference picture and the filter coefficients corresponding to the current block to determine the filtered reconstructed value of the current block, for a current sample position in the current block, the reconstructed sample value of the current sample position is determined according to the reconstructed value of the current block, and the reconstructed sample value of a reference sample position corresponding to the current sample position is determined according to the reconstructed samples of the inter-frame reference picture; the filtered reconstructed sample value of the current sample position is determined according to the filter coefficients corresponding to the current block, the reconstructed sample value of the current sample position and the reconstructed sample value of the reference sample position; and the filtered reconstructed value of the current block is determined according to the filtered reconstructed sample value of the current sample position.

[0226] It can be understood that in the embodiments of the present application, for the forward filtering mode, the backward filtering mode in the RA configuration, and the first forward filtering mode (the nearest first frame), the second forward filtering mode (the nearest second frame) in the LD configuration, the current image corresponds to one inter-frame reference image, and when the TALF filter is used to filter the reconstructed value of the current block based on the reconstructed sample of the one inter-frame reference image, the reference sample position corresponding to the current sample position can be determined in the one inter-frame reference image, and then the reconstructed sample value of the current sample position and the reconstructed sample value of the reference sample position are input into the TALF filter, and finally the filtered reconstructed sample value of the current sample position is determined by combining the determined filter coefficient corresponding to the current block, and the filtering of the current block is completed by traversing any sample position of the current block according to the above scheme, and the filtered reconstructed value of the current block is obtained.

[0227] Exemplarily, in some embodiments, assuming that the current image corresponds to one inter-frame reference image, at this time, the process of filtering the sample value at the coordinate (x, y) position (the current sample position) in the current image using 13 filter coefficients and a 7x7 symmetric filter is as follows:

[0228] Wherein, rec' (x,y) is the reconstructed sample value at the (x, y) position after the correction of the temporal adaptive filter, rec (x,y) is the reconstructed sample value at the (x, y) position to be corrected, and are the reconstructed sample values at (x-u i , y-u i ) and (x+u i , y+u i ) in the inter-frame reference image, and c is the filter coefficient of the temporal adaptive filter.

[0229] Further, in the embodiments of the present application, when the filtered reconstructed sample value of the current sample position is determined according to the filter coefficient corresponding to the current block, the reconstructed sample value of the current sample position, and the reconstructed sample value of the reference sample position, the first sample difference value can be determined according to the reconstructed sample value of the current sample position and the reconstructed sample value of the reference sample position; and then the filtered reconstructed sample value of the current sample position is determined according to the filter coefficient corresponding to the current block, the reconstructed sample value of the current sample position, and the first sample difference value.

[0230] That is, in the embodiments of the present application, the first sample difference value can also be determined according to the reconstructed sample value of the current sample position and the reconstructed sample value of the reference sample position, and then the first sample difference value is used as the input of the filter.

[0231] Exemplarily, in some embodiments, assuming that there is one inter- reference picture corresponding to the current picture, the process of filtering the sample value at the position (x, y) (current sample position) in the current picture using 13 filter coefficients and 7x7 symmetric filter is as follows:

[0232] Further, in the embodiments of the present application, when determining the filtered reconstructed sample value at the current sample position according to the filter coefficients corresponding to the current block, the reconstructed sample value at the current sample position, and the reconstructed sample value at the reference sample position, the filtering position corresponding to the reference sample position in the current block can be determined, and the reconstructed sample value at the filtering position can be determined according to the reconstructed value of the current block; the second sample difference value can be determined according to the reconstructed sample value at the filtering position and the reconstructed sample value at the reference sample position; and the filtered reconstructed sample value at the current sample position can be determined according to the filter coefficients corresponding to the current block, the reconstructed sample value at the current sample position, and the second sample difference value.

[0233] That is, in the embodiments of the present application, for each filtering position, the second sample difference value can also be determined according to the reconstructed sample value at the filtering position and the reconstructed sample value at the reference sample position, and then the second sample difference value can be taken as the input of the filter.

[0234] Exemplarily, in some embodiments, assuming that there is one inter- reference picture corresponding to the current picture, the process of filtering the sample value at the position (x, y) (current sample position) in the current picture using 13 filter coefficients and 7x7 symmetric filter is as follows:

[0235] Further, in the embodiments of the present application, when filtering the current block based on the reconstructed samples of at least one inter- reference picture and the filter coefficients corresponding to the current block to determine the filtered reconstructed value of the current block, for the current sample position in the current block, the reconstructed sample value at the current sample position can be determined according to the reconstructed value of the current block, the reconstructed sample value at the first reference sample position corresponding to the current sample position can be determined according to the reconstructed samples of the first inter- reference picture, and the reconstructed sample value at the second reference sample position corresponding to the current sample position can be determined according to the reconstructed samples of the second inter- reference picture; the filtered reconstructed sample value at the current sample position can be determined according to the filter coefficients corresponding to the current block, the reconstructed sample value at the current sample position, the reconstructed sample value at the first reference sample position, and the reconstructed sample value at the second reference sample position; and the filtered reconstructed value of the current block can be determined according to the filtered reconstructed sample value at the current sample position.

[0236] It can be understood that, in the embodiments of the present application, for the bidirectional filter mode in the RA configuration, and the third forward filter mode (the nearest first frame and the nearest second frame) in the LD configuration, the current picture corresponds to two inter-frame reference pictures, and when the TALF filter is used to filter the reconstructed value of the current block based on the reconstructed samples of the two inter-frame reference pictures, the reference sample positions corresponding to the current sample position can be determined in the two inter-frame reference pictures respectively, and then the reconstructed sample value corresponding to the current sample position, the reconstructed sample values corresponding to the two reference sample positions are input into the TALF filter, combined with the determined filter coefficients corresponding to the current block, to finally determine the filtered reconstructed sample value corresponding to the current sample position. According to the above scheme, any sample position of the current block is traversed to complete the filtering of the current block, and the filtered reconstructed value of the current block is obtained.

[0237] Exemplarily, in some embodiments, assuming that the current picture corresponds to two inter-frame reference pictures, at this time, the process of filtering the sample value at the coordinate (x, y) position (the current sample position) in the current picture using 7 filter coefficients and 5x5 symmetrical 2 filters is as follows:

[0238] Wherein, rec' (x,y) is the reconstructed sample value at the (x, y) position after the correction of the time domain adaptive filter, rec (x,y) is the reconstructed sample value at the (x, y) position to be corrected, ref0 and ref1 are the reconstructed values of the first inter-frame reference picture and the second inter-frame reference picture respectively. and are the reconstructed sample values at (x-u i , y-u i ) and (x+u i , y+u i ) of the first inter-frame reference picture, and are the reconstructed sample values at (x-u i , y-u i ) and (x+u i , y+u i ) of the second inter-frame reference picture, and c is the time domain adaptive filter coefficient.

[0239] Further, in the embodiments of the present application, when the filtered reconstructed sample value of the current sample position is determined according to the filter coefficient corresponding to the current block, the reconstructed sample value of the current sample position, the reconstructed sample value of the first reference sample position, and the reconstructed sample value of the second reference sample position, the third sample difference value can be determined according to the reconstructed sample value of the current sample position and the reconstructed sample value of the first reference sample position; the fourth sample difference value can be determined according to the reconstructed sample value of the current sample position and the reconstructed sample value of the second reference sample position; and the filtered reconstructed sample value of the current sample position can be determined according to the filter coefficient corresponding to the current block, the reconstructed sample value of the current sample position, the third sample difference value, and the fourth sample difference value.

[0240] That is, in the embodiments of the present application, the third sample difference value and the fourth sample difference value can also be determined according to the reconstructed sample value of the current sample position and the reconstructed sample value of the two reference sample positions respectively, and then the third sample difference value and the fourth sample difference value can be used as the input of the filter.

[0241] Exemplarily, in some embodiments, it is assumed that the current image corresponds to two inter-frame reference images, and at this time, the process of filtering the sample value at the coordinate (x, y) position (current sample position) in the current image using 7 filter coefficients and 2 filters of 5x5 symmetry is as follows:

[0242] Further, in the embodiments of the present application, when the filtered reconstructed sample value of the current sample position is determined according to the filter coefficient corresponding to the current block, the reconstructed sample value of the current sample position, the reconstructed sample value of the first reference sample position, and the reconstructed sample value of the second reference sample position, the filter position corresponding to the reference sample position in the current block can be determined, and the reconstructed sample value of the filter position can be determined according to the reconstructed value of the current block; the fifth sample difference value can be determined according to the reconstructed sample value of the filter position and the reconstructed sample value of the first reference sample position; the sixth sample difference value can be determined according to the reconstructed sample value of the filter position and the reconstructed sample value of the second reference sample position; and the filtered reconstructed sample value of the current sample position can be determined according to the filter coefficient corresponding to the current block, the reconstructed sample value of the current sample position, the fifth sample difference value, and the sixth sample difference value.

[0243] That is, in the embodiments of the present application, for each filter position, the fifth sample difference value and the sixth sample difference value can also be determined according to the reconstructed sample value of the filter position and the reconstructed sample value of the two reference sample positions respectively, and then the fifth sample difference value and the sixth sample difference value can be used as the input of the filter.

[0244] Exemplarily, in some embodiments, assuming that there are two inter- frame reference pictures corresponding to the current picture, the filtering process of the sample value at the coordinate (x, y) position (current sample position) in the current picture using 7 filter coefficients and 5x5 symmetrical 2 filters is as follows:

[0245] It should be noted that in the embodiments of the present application, the filtering process shown in the above formula is an exemplary description of the TALF filtering proposed in the present application, and of course, in the actual application process, if the adaptive filter does not have the symmetry of the above example, the adaptive filter coefficients and the input values corresponding to each coefficient should also be adjusted accordingly. That is, the filtering process should be a process in which the adaptive filter coefficients and the reconstructed values of the reference picture at each related position act together.

[0246] It should be noted that in the embodiments of the present application, the filter coefficients can be integers, and the parameters used in the filtering process can also include bias and shift.

[0247] Further, in the embodiments of the present application, for the TALF filter, in addition to the at least one inter-frame reference picture that has been decoded in the time domain, the corresponding input information can also include the reconstructed value of the current block, for example, the reconstructed value of any one image component of the current block. Wherein, the reconstructed value of the current block can be obtained after processing the current block in the current picture based on any loop filtering method.

[0248] That is, in the embodiments of the present application, the determination method of the reconstructed value of the current block is not specifically limited, and correspondingly, the specific position of the TALF filtering in the loop filtering process is not specifically limited, that is, the position of the temporal adaptive loop filtering can be at any place in the loop filtering.

[0249] Exemplarily, in some embodiments, FIG. 11 is an implementation schematic diagram one of the TALF filtering proposed in the embodiments of the present application, as shown in FIG. 11, the input of the TALF can include the reconstructed value on the reconstructed image of the current image before the ALF filtering and the reconstructed image of the current image that has been decoded in the time domain.

[0250] Exemplarily, in some embodiments, FIG. 12 is an implementation schematic diagram two of the TALF filtering proposed in the embodiments of the present application, as shown in FIG. 12, the input of the TALF can include the reconstructed value on the reconstructed image of the current image after the Deblocking and the reconstructed image of the current image that has been decoded in the time domain, that is, the position of the TALF in the loop filtering can be parallel to the SAO.

[0251] Exemplarily, in some embodiments, FIG. 13 is a schematic diagram of implementation of TALF filtering according to an embodiment of the present application, as shown in FIG. 13, the position of TALF in loop filtering can be parallel to Deblocking.

[0252] Exemplarily, in some embodiments, FIG. 14 is a schematic diagram of implementation of TALF filtering according to an embodiment of the present application, as shown in FIG. 14, the position of TALF in loop filtering can be before Deblocking.

[0253] Exemplarily, in some embodiments, FIG. 15 is a schematic diagram of implementation of TALF filtering according to an embodiment of the present application, as shown in FIG. 15, the input of TALF can include the reconstructed value on the reconstructed image of the current image after Deblocking and the decoded reconstructed image in time domain, that is, the position of TALF in loop filtering can be after Deblocking.

[0254] Exemplarily, in some embodiments, FIG. 16 is a schematic diagram of implementation of TALF filtering according to an embodiment of the present application, as shown in FIG. 16, the input of TALF can include the reconstructed value on the reconstructed image of the current image after SAO and the decoded reconstructed image in time domain, that is, the position of TALF in loop filtering can be after SAO.

[0255] Exemplarily, in some embodiments, FIG. 17 is a schematic diagram of implementation of TALF filtering according to an embodiment of the present application, as shown in FIG. 17, the input of TALF can also include the reconstructed value on the reconstructed image of the current image after ALF filtering and the decoded reconstructed image in time domain, that is, the position of TALF in loop filtering can be after ALF.

[0256] Therefore, in some embodiments, TALF can be placed in any position in a series of loop filters, which means that the input of TALF includes the decoded image and the reconstructed value on the reconstructed image of any step in the current loop filtering.

[0257] Further, in the embodiments of the present application, the reconstructed value of the current block can be the reconstructed value of the luminance component of the current block, or the reconstructed value of the chroma component of the current block, which is not limited in the present application.

[0258] That is, in the embodiments of the present application, TALF filtering can be applied to any image component of the current image.

[0259] It should be noted that in the embodiments of the present application, in the video image, the image components of the current image can include a first image component, a second image component and a third image component. Among them, the three image components are a luminance component, a blue color component and a red color component respectively, specifically, the luminance component is usually represented by the symbol Y, the blue color component is usually represented by the symbol Cb or U, and the red color component is usually represented by the symbol Cr or V; in this way, the video image can be represented in YCbCr format or YUV format.

[0260] Further, in the embodiments of the present application, the shape, size and tap number of the filter used in the TALF filtering process are not specifically limited, that is, filters of any shape and size can be applied to the TALF filtering process. For example, the shape of the filter used in the TALF filtering process includes but is not limited to diamond shape, cross shape, rectangle, square.

[0261] Exemplarily, in some embodiments, FIG. 18 is a schematic diagram of a filter according to an embodiment of the present application, as shown in FIG. 18, a 5x5 symmetric filter contains 7 filter coefficients.

[0262] Exemplarily, in some embodiments, FIG. 19 is a schematic diagram of a filter according to an embodiment of the present application, as shown in FIG. 19, a 7x7 symmetric filter contains 13 filter coefficients.

[0263] Exemplarily, in some embodiments, FIG. 20 is a schematic diagram of a filter according to an embodiment of the present application, as shown in FIG. 20, a 9x9 symmetric filter contains 21 filter coefficients.

[0264] Among them, the above several are symmetric filters, each index value corresponds to a filter coefficient value, and each filter coefficient corresponds to two filter input values in the symmetric position except the filter center point.

[0265] Exemplarily, in some embodiments, FIG. 21 is a schematic diagram of a filter according to an embodiment of the present application, as shown in FIG. 21, a 5x5 symmetric filter contains 4 filter coefficients.

[0266] Exemplarily, in some embodiments, FIG. 22 is a schematic diagram of a filter according to an embodiment of the present application, as shown in FIG. 22, a 7x7 symmetric filter contains 6 filter coefficients.

[0267] Among them, the symmetric filter can also be that each index value corresponds to a filter coefficient value, and each filter coefficient corresponds to filter input values in multiple directions except the filter center point.

[0268] Of course, the filter can also be asymmetric, meaning that each filter input position has a different coefficient value.

[0269] Exemplarily, in some embodiments, Fig. 23 is a schematic diagram of a filter six according to an embodiment of the present application. As shown in Fig. 23, a 5x5 asymmetric filter includes 13 filter coefficients.

[0270] Exemplarily, in some embodiments, for the forward filtering and backward filtering under the RA configuration, and the forward filtering using the reconstructed value in the POC N-1 reference image as input and the forward filtering using the reconstructed value in the POC N-2 reference image as input under the LD configuration, a 7x7 symmetric filter including 13 filter coefficients can be selected.

[0271] Exemplarily, in some embodiments, Fig. 24 is a schematic diagram of a filter seven according to an embodiment of the present application. As shown in Fig. 24, two 5x5 symmetric filters include 14 filter coefficients. Among them, for the bidirectional filtering under the RA configuration and the forward filtering using the reconstructed value in the POC N-1 and N-2 reference images as input under the LD configuration, two filters shown in Fig. 24 can be selected, which are respectively used for the reconstructed value in the two reference images as input.

[0272] It can be understood that the decoding method according to an embodiment of the present application is a method for improving the current image reconstruction quality by using the reconstructed sample value in the time domain as an information source and extracting information from the reconstructed sample of the reconstructed image by the TALF filter to filter the current image.

[0273] It can be understood that the decoding method according to an embodiment of the present application can be pre-defined or transmitted through a code stream.

[0274] It can be understood that the decoding method according to an embodiment of the present application can refer to different encoding configurations to propose different filtering modes under different filtering modes. Among them, under the RA configuration, the filtering mode can be divided into forward filtering mode, backward filtering mode and bidirectional filtering mode; under the LD configuration, the filtering mode can be divided into first forward filtering mode, second forward filtering mode and third forward filtering mode.

[0275] It can be understood that the decoding method according to an embodiment of the present application can be used for the luminance component or the chrominance component.

[0276] It can be understood that the decoding method proposed in the embodiments of the present application can be any level of TALF switch identification, such as TALF switching in image units, TALF switching in CTU units, TALF switching in CU units, or other ways of dividing an image into sub-regions.

[0277] It can be understood that the decoding method proposed in the embodiments of the present application can also select to skip the coding and decoding processing of the CTU identifier, and directly determine whether to perform TALF filtering on the entire image through the image-level identifier. At this time, the current image corresponds to only one candidate filter.

[0278] Further, the decoding method proposed in the embodiments of the present application improves the compression performance of the ECM reference software under the RA and LD configurations. For example, the method proposed in the embodiments of the present application is verified on the ECM-12.0 reference software, and some BD-rates can be improved under the RA configuration, and 0.06% and 0.05% improvements can be obtained on test sequences class-C and class-D, respectively, as shown in Table 2:

[0279] Table 2

[0280] The embodiments of the present application provide a decoding method. At the decoding end, a bitstream is decoded, and first syntax element identification information is determined. In a case where it is determined based on the first syntax element identification information that a current block uses TALF for filtering, at least one inter-frame reference image corresponding to the current image and filter coefficients corresponding to the current block are determined. The current block is filtered based on reconstructed samples of the at least one inter-frame reference image and the filter coefficients corresponding to the current block, and filtered reconstructed values of the current block are determined. It can be seen that the embodiments of the present application propose a time-domain adaptive loop filtering method, which can perform TALF filtering processing on the reconstructed values of the current block based on the reconstructed samples of the at least one inter-frame reference image and the corresponding filter coefficients. In the TALF filtering process, the related information of the at least one inter-frame reference image is fully utilized, so that the filtering effect can be improved, and the coding and decoding performance is improved.

[0281] An embodiment of the present application proposes an encoding method. The method is applied to an encoder and used in a scenario of performing filtering processing through a TALF filter. FIG. 25 is a schematic diagram of the encoding method proposed in the embodiments of the present application. As shown in FIG. 25, the method of the encoder for encoding processing can include the following steps:

[0282] Step 2001, determining at least one inter-frame reference image corresponding to a current image and filter coefficients corresponding to a current block.

[0283] In the embodiments of the present application, at least one inter-frame reference picture corresponding to the current picture and filter coefficients corresponding to the current block can be determined first.

[0284] It can be understood that in the embodiments of the present application, at least one inter-frame reference picture corresponding to the current picture and filter coefficients corresponding to the current block can be determined respectively under the current configuration and each candidate mode corresponding to the current configuration.

[0285] Further, in the embodiments of the present application, for the TALF filter, the corresponding input information can include at least one inter-frame reference picture corresponding to the current picture, which can be a temporally coded reconstructed picture. Wherein, the TALF filtering of the current block in the current picture can be completed using the reconstructed sample values of the at least one inter-frame reference picture.

[0286] It can be understood that in the embodiments of the present application, the current block can be a CTU determined after the current picture is divided, the current block can also be a coding unit CU obtained after the CTU is divided, and the current block can also be a sub-region of any size obtained after the current picture is divided. The size and obtaining method of the current block in the current picture are not limited in the present application.

[0287] Further, in the embodiments of the present application, when determining at least one inter-frame reference picture corresponding to the current picture and filter coefficients corresponding to the current block, candidate modes can be determined according to the current configuration first; then under each candidate mode, the at least one inter-frame reference picture is determined, the candidate filter corresponding to the current block is determined, and the filter coefficients corresponding to the current block are determined based on the candidate filter corresponding to the current block.

[0288] Further, in the embodiments of the present application, when determining candidate modes according to the current configuration, in the case that the current configuration is a RA configuration, the candidate modes are determined as first candidate modes; wherein the first candidate modes include one or more of a forward filtering mode, a reverse filtering mode and a bidirectional filtering mode; in the case that the current configuration is a LD configuration, the candidate modes are determined as second candidate modes; wherein the second candidate modes include one or more of a first forward filtering mode, a second forward filtering mode and a third forward filtering mode.

[0289] It can be understood that in the embodiments of the present application, for the RA configuration, the corresponding first candidate mode can include one or more of a forward filtering mode, a reverse filtering mode and a bidirectional filtering mode. Among them, the forward filtering mode can be understood as using the reconstruction information of the reconstructed image smaller than the POC of the current image as the input of the filter, the reverse filtering mode can be understood as using the reconstruction information of the reconstructed image larger than the POC of the current image as the input of the filter, and the bidirectional filtering mode can be understood as using the reconstruction information of the image smaller than the POC of the current image and the image larger than the POC of the current image as the input of the filter.

[0290] It can be understood that in the embodiments of the present application, for the LD configuration, the corresponding second candidate mode can include one or more of a first forward filtering mode, a second forward filtering mode and a third forward filtering mode. Among them, for the coding under the LD configuration, the coding order is the same as the playing order, so only the reference image smaller than the POC of the current image can be used as the input of the filter, that is, only the forward filtering mode is supported. However, corresponding to different inter-frame reference images, the corresponding forward filtering mode can be distinguished into the first forward filtering mode, the second forward filtering mode and the third forward filtering mode.

[0291] Further, in the embodiments of the present application, after determining the filtering mode corresponding to the current image, at least one inter-frame reference image can be further determined according to the filtering mode.

[0292] It can be understood that in the embodiments of the present application, the determination of the inter-frame reference image depends on the filtering mode, and for different filtering modes, the finally determined inter-frame reference image can be different.

[0293] Exemplarily, in some embodiments, if the POC value of the current image is N, for the RA configuration, if the determined filtering mode is the forward filtering mode, the image with the POC value of N-1 can be selected as the inter-frame reference image of the current image; if the determined filtering mode is the reverse filtering mode, the image with the POC value of N+1 can be selected as the inter-frame reference image of the current image; and if the determined filtering mode is the bidirectional filtering mode, the images with the POC values of N-1 and N+1 can be selected as the inter-frame reference images of the current image.

[0294] Exemplarily, in some embodiments, if the POC value of the current image is N, for the LD configuration, the images with POC values of N-1, N-2… can be used as the inter-frame reference images of the current image. For example, if the determined filter mode is the first forward filter mode, the image with POC value of N-1 can be selected as the inter-frame reference image of the current image; if the determined filter mode is the second forward filter mode, the image with POC value of N-2 can be selected as the inter-frame reference image of the current image; if the determined filter mode is the third forward filter mode, the images with POC values of N-1 and N-2 can be selected as the inter-frame reference images of the current image.

[0295] That is, in the embodiments of the present application, the POC values of the determined inter-frame reference images can be different based on different filter modes, and the number of the determined inter-frame reference images can also be different. For example, for the forward filter mode, the backward filter mode in the RA configuration, and the first forward filter mode (the nearest first frame), the second forward filter mode (the nearest second frame) in the LD configuration, the current image corresponds to one inter-frame reference image; for the bidirectional filter mode in the RA configuration, and the third forward filter mode (the nearest first frame and the nearest second frame) in the LD configuration, the current image corresponds to two inter-frame reference images.

[0296] Therefore, for the temporal adaptive loop filter type, the intra-frame encoded image has no reference image, and the inter-frame encoded image has a reference image, so the temporal filter of the present scheme is applied to the inter-frame encoded image, for example, the inter-frame encoded image under the encoding types of the RA and LD configurations. For the encoding and decoding under the LD configuration, the encoding and decoding order is the same as the playing order, so when the temporal adaptive filter is used for the inter-frame encoded image, the reference image with a smaller POC value than the current image is always used as the input of the filter. For the encoding and decoding under the RA configuration, the encoding and decoding order can be different from the playing order, and when the temporal filter is used for the current inter-frame encoded image, the reference frame with a larger or smaller POC value than the current frame can be used as the input of the filter.

[0297] The forward filter uses the reconstructed information of the reconstructed picture with a POC smaller than the POC of the current picture as the input of the filter to generate the filtered value acting on the current reconstructed picture. For example, in the LD configuration, the POC of the current picture is N, where N is a non-negative integer, the reconstructed value of the reconstructed picture with the POC value of N-1, N-2, … can be used as the input of the filter; for example, in the RA configuration, in the coding order, when the POC of the current picture is N, the inter-coded picture with the TID of 5 can use the reconstructed value of the picture with the POC value of N-1 as the input of the filter; the TID of 4 can use the reconstructed value of the picture with the POC value of N-2 as the input of the filter; the TID of 3 can use the reconstructed value of the picture with the POC value of N-4 as the input of the filter; the TID of 2 can use the picture with the POC value of N-8 as the input of the filter; the TID of 1 can use the reconstructed value of the picture with the POC value of N-16 as the input of the filter; and the TID of 0 can use the reconstructed value of the picture with the POC value of N-32 as the input of the filter.

[0298] It should be noted that in the embodiments of the present application, the POC value of the reference frame used in the forward filtering will change due to different coding configurations.

[0299] The backward filter uses the reconstructed information of the reconstructed picture with a POC larger than the POC of the current picture as the input of the filter to generate the filtered value acting on the current reconstructed picture. In the current various coding configurations, the backward filter is only used in the RA configuration. For example, in the RA configuration, in the coding order, when the POC of the current picture is N, the inter-coded picture with the TID of 5 can use the reconstructed value of the picture with the POC value of N+1 as the input of the filter; the TID of 4 can use the reconstructed value of the picture with the POC value of N+2 as the input of the filter; the TID of 3 can use the reconstructed value of the picture with the POC value of N+4 as the input of the filter; the TID of 2 can use the picture with the POC value of N+8 as the input of the filter; the TID of 1 can use the reconstructed value of the picture with the POC value of N+16 as the input of the filter; and the TID of 0 can use the reconstructed value of the picture with the POC value of N+32 as the input of the filter.

[0300] It should be noted that in the embodiments of the present application, the POC value of the reference frame used in the backward filtering will change due to different coding configurations.

[0301] Bidirectional filtering is to use the reconstructed information of the image with smaller POC than the current image and the image with larger POC than the current image as the input of the filter to generate the filtering value acting on the current reconstructed image. In the current various coding configurations, the reverse filtering is only used in the RA configuration. For example, in the RA configuration, when the POC of the current image is N in the coding order, the inter-coded image with TID of 5 can use the reconstructed values of the images with POC values of N+1 and N-1 as the input of the filter; the TID of 4 can use the reconstructed values of the images with POC values of N+2 and N-2 as the input of the filter; the TID of 3 can use the reconstructed values of the images with POC values of N+4 and N-4 as the input of the filter; the TID of 2 can use the images with POC values of N+8 and N-8 as the input of the filter; the TID of 1 can use the reconstructed values of the images with POC values of N+16 and N-16 as the input of the filter; and the TID of 0 can use the reconstructed values of the images with POC values of N+32 and N-32 as the input of the filter.

[0302] It should be noted that in the embodiments of the present application, the POC values of the reference frames used in bidirectional filtering will change due to different coding configurations. In principle, in the RA configuration, bidirectional filtering always uses the reconstructed values of the two frames of reconstructed images with the closest forward and backward distances as the input of the filter.

[0303] Exemplarily, in some embodiments, assuming that the filtering mode is a forward filtering mode, the following forward filtering modes can be included but are not limited to:

[0304] 1. In the RA configuration, the reference image with the closest time domain distance and smaller POC than the current image is used as the input of the time domain filtering;

[0305] 2. In the LD configuration, when the POC value of the current image is N, the reference image with POC value of N-1 is used as the input of the time domain filtering corresponding to the first forward filtering mode;

[0306] 3. In the LD configuration, when the POC value of the current image is N, the reference image with POC value of N-2 is used as the input of the time domain filtering corresponding to the second forward filtering mode;

[0307] 4. In the LD configuration, when the POC value of the current image is N, the two frames of reference images with POC values of N-2 and N-1 are used as the input of the time domain filtering corresponding to the third forward filtering mode.

[0308] It can be understood that in the embodiments of the present application, in the case of being configured as an RA configuration or an LD configuration according to the coding configuration, the mode allowed to be used by the TALF can be determined by traversing each candidate mode. Among them, the candidate modes of the TALF are three in the RA configuration and the LD configuration. For the RA configuration, in the corresponding first candidate mode, the forward filter (forward filter mode) is mode 1, the backward filter (backward filter mode) is mode 2, and the bidirectional filter (bidirectional filter mode) is mode 3; for the LD configuration, in the corresponding second candidate mode, using the reference image POC N-1 as the TALF filter input (first forward filter mode) is mode 1, using the reference image POC N-2 as the TALF filter input (second forward filter mode) is mode 2, and using the reference images POC N-1 and N-2 as the TALF filter input (third forward filter mode) is mode 3.

[0309] Further, in the embodiments of the present application, each candidate mode can be traversed, in each candidate mode, the candidate filter corresponding to the current block is determined, and the filter coefficients corresponding to the current block are determined based on the candidate filter corresponding to the current block.

[0310] It can be understood that in the embodiments of the present application, each filter mode (candidate mode) can be traversed, and the Wiener-Hopf equation can be constructed using the current image reconstruction value in the corresponding mode, the reconstruction value of the reference reconstructed image (inter-frame reference image), and the original value of the current image, and 1-4 groups of filter coefficients can be solved out. Among them, for each group of candidate filters that can be used for the current block, the filter coefficients corresponding to the candidate filter can be obtained, that is, the filter coefficients corresponding to the current block can include the filter coefficients of each group of candidate filters.

[0311] Step 2002, filtering the current block based on the reconstructed samples of at least one inter-frame reference image and the filter coefficients corresponding to the current block to determine the filtered reconstruction value of the current block.

[0312] In the embodiments of the present application, after determining the at least one inter-frame reference image corresponding to the current image and the filter coefficients corresponding to the current block, the current block can be further filtered based on the reconstructed samples of the at least one inter-frame reference image and the filter coefficients corresponding to the current block to determine the filtered reconstruction value of the current block.

[0313] It can be understood that in the embodiments of the present application, in each candidate mode, each group of candidate filters can be used respectively, the filter coefficients corresponding to the current block under the candidate filter, and the reconstructed samples of the at least one inter-frame reference image corresponding to the candidate mode are used to filter the reconstruction value of the current block, so as to determine the filtered reconstruction value of the current block.

[0314] It can be understood that, in the embodiments of the present application, since the POC values of the inter-frame reference pictures determined based on different filter modes can be different, and the number of the determined inter-frame reference pictures can also be different, when performing TALF filtering on the current block of the current picture, the filtering processes performed are also different corresponding to different numbers of the inter-frame reference pictures.

[0315] Further, in the embodiments of the present application, when filtering the current block based on the reconstructed samples of the at least one inter-frame reference picture and the filter coefficients corresponding to the current block to determine the filtered reconstructed value of the current block, for a current sample position in the current block, the reconstructed sample value of the current sample position is determined according to the reconstructed value of the current block, the reconstructed sample value of the reference sample position corresponding to the current sample position is determined according to the reconstructed samples of the inter-frame reference picture; the filtered reconstructed sample value of the current sample position is determined according to the filter coefficients corresponding to the current block, the reconstructed sample value of the current sample position and the reconstructed sample value of the reference sample position; and the filtered reconstructed value of the current block is determined according to the filtered reconstructed sample value of the current sample position.

[0316] It can be understood that, in the embodiments of the present application, for the forward filtering mode and the backward filtering mode in the RA configuration, and the first forward filtering mode (the nearest first frame) and the second forward filtering mode (the nearest second frame) in the LD configuration, the current picture corresponds to one inter-frame reference picture, and when performing TALF filtering on the reconstructed value of the current block based on the reconstructed samples of the one inter-frame reference picture, the reference sample position corresponding to the current sample position can be determined in the one inter-frame reference picture, and then the reconstructed sample value corresponding to the current sample position and the reconstructed sample value corresponding to the reference sample position are respectively input into the TALF filter, combined with the determined filter coefficients corresponding to the current block, to finally determine the filtered reconstructed sample value corresponding to the current sample position, and the above scheme is traversed for any sample position of the current block to complete filtering of the current block and obtain the filtered reconstructed value of the current block.

[0317] Exemplarily, in some embodiments, assuming that the current picture corresponds to one inter-frame reference picture, at this time, the process of filtering the sample value of the position (x, y) (the current sample position) in the current picture using 13 filter coefficients and 7x7 symmetric filter is as formula (1).

[0318] Further, in the embodiments of the present application, when the filtered reconstructed sample value of the current sample position is determined according to the filter coefficient corresponding to the current block, the reconstructed sample value of the current sample position, and the reconstructed sample value of the reference sample position, the first sample difference value can be determined according to the reconstructed sample value of the current sample position and the reconstructed sample value of the reference sample position; and then the filtered reconstructed sample value of the current sample position is determined according to the filter coefficient corresponding to the current block, the reconstructed sample value of the current sample position, and the first sample difference value.

[0319] That is, in the embodiments of the present application, the first sample difference value can be determined according to the reconstructed sample value of the current sample position and the reconstructed sample value of the reference sample position, and then the first sample difference value is taken as the input of the filter.

[0320] Exemplarily, in some embodiments, assuming that the current image corresponds to one inter-frame reference image, the process of filtering the sample value at the coordinate (x, y) position (current sample position) in the current image using 13 filter coefficients and a 7x7 symmetric filter is as shown in formula (2).

[0321] Further, in the embodiments of the present application, when the filtered reconstructed sample value of the current sample position is determined according to the filter coefficient corresponding to the current block, the reconstructed sample value of the current sample position, and the reconstructed sample value of the reference sample position, the filter position corresponding to the reference sample position in the current block can be determined, and the reconstructed sample value of the filter position is determined according to the reconstructed value of the current block; the second sample difference value is determined according to the reconstructed sample value of the filter position and the reconstructed sample value of the reference sample position; and the filtered reconstructed sample value of the current sample position is determined according to the filter coefficient corresponding to the current block, the reconstructed sample value of the current sample position, and the second sample difference value.

[0322] That is, in the embodiments of the present application, the second sample difference value can be determined according to the reconstructed sample value of the filter position and the reconstructed sample value of the reference sample position for each filter position, and then the second sample difference value is taken as the input of the filter.

[0323] Exemplarily, in some embodiments, assuming that the current image corresponds to one inter-frame reference image, the process of filtering the sample value at the coordinate (x, y) position (current sample position) in the current image using 13 filter coefficients and a 7x7 symmetric filter is as shown in formula (3).

[0324] Further, in the embodiments of the present application, when the current block is filtered based on the filter coefficients corresponding to the current block and the reconstructed samples of the at least one inter-frame reference image, for a current sample position in the current block, the reconstructed sample value of the current sample position is determined according to the reconstructed value of the current block, the reconstructed sample value of the first reference sample position corresponding to the current sample position is determined according to the reconstructed samples of the first inter-frame reference image, and the reconstructed sample value of the second reference sample position corresponding to the current sample position is determined according to the reconstructed samples of the second inter-frame reference image; the filtered reconstructed sample value of the current sample position is determined according to the filter coefficients corresponding to the current block, the reconstructed sample value of the current sample position, the reconstructed sample value of the first reference sample position, and the reconstructed sample value of the second reference sample position; and the filtered reconstructed value of the current block is determined according to the filtered reconstructed sample value of the current sample position.

[0325] It can be understood that, in the embodiments of the present application, for the bi-directional filtering mode in the RA configuration and the third forward filtering mode (the nearest first frame and the nearest second frame) in the LD configuration, the current image corresponds to two inter-frame reference images, and thus when the TALF filtering is performed on the reconstructed value of the current block based on the reconstructed samples of the two inter-frame reference images, the reference sample positions corresponding to the current sample position can be determined in the two inter-frame reference images respectively, and then the reconstructed sample value of the current sample position and the reconstructed sample values of the two reference sample positions are input into the TALF filter, and finally the filtered reconstructed sample value of the current sample position is determined according to the determined filter coefficients corresponding to the current block, and the filtering of the current block is completed by traversing any sample position of the current block according to the above scheme to obtain the filtered reconstructed value of the current block.

[0326] Exemplarily, in some embodiments, assuming that the current image corresponds to two inter-frame reference images, the process of filtering the sample value of the position (x, y) (the current sample position) in the current image using 7 filter coefficients and 5x5 symmetrical 2 filters is as shown in formula (4).

[0327] Further, in the embodiments of the present application, when the filtered reconstructed sample value of the current sample position is determined according to the filter coefficients corresponding to the current block, the reconstructed sample value of the current sample position, the reconstructed sample value of the first reference sample position, and the reconstructed sample value of the second reference sample position, the third sample difference value can be determined according to the reconstructed sample value of the current sample position and the reconstructed sample value of the first reference sample position; the fourth sample difference value can be determined according to the reconstructed sample value of the current sample position and the reconstructed sample value of the second reference sample position; and the filtered reconstructed sample value of the current sample position is determined according to the filter coefficients corresponding to the current block, the reconstructed sample value of the current sample position, the third sample difference value, and the fourth sample difference value.

[0328] That is, in the embodiments of the present application, the third sample difference value and the fourth sample difference value can also be determined according to the reconstructed sample value of the current sample position and the reconstructed sample values of the two reference sample positions respectively, and then the third sample difference value and the fourth sample difference value are taken as the input of the filter.

[0329] Exemplarily, in some embodiments, assuming that the current image corresponds to two inter-frame reference images, the process of filtering the sample value at the coordinate (x, y) position (current sample position) in the current image using 7 filter coefficients and 2 filters of 5x5 symmetry is as formula (5).

[0330] Further, in the embodiments of the present application, when the filtered reconstructed sample value of the current sample position is determined according to the filter coefficients corresponding to the current block, the reconstructed sample value of the current sample position, the reconstructed sample value of the first reference sample position, the reconstructed sample value of the second reference sample position, the filtering position corresponding to the reference sample position in the current block can be determined, and the reconstructed sample value of the filtering position is determined according to the reconstructed value of the current block; the fifth sample difference value is determined according to the reconstructed sample value of the filtering position and the reconstructed sample value of the first reference sample position; the sixth sample difference value is determined according to the reconstructed sample value of the filtering position and the reconstructed sample value of the second reference sample position; the filtered reconstructed sample value of the current sample position is determined according to the filter coefficients corresponding to the current block, the reconstructed sample value of the current sample position, the fifth sample difference value, and the sixth sample difference value.

[0331] That is, in the embodiments of the present application, for each filtering position, the fifth sample difference value and the sixth sample difference value can also be determined according to the reconstructed sample value of the filtering position and the reconstructed sample values of the two reference sample positions respectively, and then the fifth sample difference value and the sixth sample difference value are taken as the input of the filter.

[0332] Exemplarily, in some embodiments, assuming that the current image corresponds to two inter-frame reference images, the process of filtering the sample value at the coordinate (x, y) position (current sample position) in the current image using 7 filter coefficients and 2 filters of 5x5 symmetry is as formula (6).

[0333] It should be noted that in the embodiments of the present application, the filtering process shown in the above formula is an exemplary description of the TALF filtering proposed in the present application, and of course, in actual application process, if the adaptive filter does not have the symmetry of the above example, the adaptive filter coefficients and the input values corresponding to each coefficient should also be adjusted accordingly. That is, the filtering process should be a process in which the adaptive filter coefficients and the reconstructed values of the reference image at each related position act together.

[0334] It should be noted that in the embodiments of the present application, the filter coefficients can be integers, and the parameters used in the filtering process can also include bias and shift.

[0335] Further, in the embodiments of the present application, for the TALF filter, in addition to the at least one inter-frame reference image decoded in the time domain, the corresponding input information can also include the reconstructed value of the current block, for example, the reconstructed value of any one of the image components of the current block. Wherein, the reconstructed value of the current block can be obtained after processing the current block in the current image based on any loop filtering method.

[0336] That is to say, in the embodiments of the present application, the determination method of the reconstructed value of the current block is not specifically limited, and correspondingly, the specific position of the TALF filtering in the loop filtering process is not specifically limited, that is, the position of the temporal adaptive loop filter can be at any place in the loop filtering.

[0337] Exemplarily, in some embodiments, FIG. 11 is an implementation schematic diagram one of the TALF filtering according to the embodiments of the present application, as shown in FIG. 11, the input of the TALF can include the reconstructed value on the reconstructed image of the current image before the ALF filtering and the reconstructed image decoded in the time domain, that is, the position of the TALF in the loop filtering can be parallel to the ALF.

[0338] Exemplarily, in some embodiments, FIG. 12 is an implementation schematic diagram two of the TALF filtering according to the embodiments of the present application, as shown in FIG. 12, the input of the TALF can include the reconstructed value on the reconstructed image of the current image after the Deblocking and the reconstructed image decoded in the time domain, that is, the position of the TALF in the loop filtering can be parallel to the SAO.

[0339] Exemplarily, in some embodiments, FIG. 13 is an implementation schematic diagram three of the TALF filtering according to the embodiments of the present application, as shown in FIG. 13, the position of the TALF in the loop filtering can be parallel to the Deblocking.

[0340] Exemplarily, in some embodiments, FIG. 14 is an implementation schematic diagram four of the TALF filtering according to the embodiments of the present application, as shown in FIG. 14, the position of the TALF in the loop filtering can be before the Deblocking.

[0341] Exemplarily, in some embodiments, FIG. 15 is an implementation schematic diagram five of the TALF filtering according to the embodiments of the present application, as shown in FIG. 15, the input of the TALF can include the reconstructed value on the reconstructed image of the current image after the Deblocking and the reconstructed image decoded in the time domain, that is, the position of the TALF in the loop filtering can be after the Deblocking.

[0342] Exemplarily, in some embodiments, Fig. 16 is a schematic diagram of implementation of TALF filtering according to an embodiment of the present application. As shown in Fig. 16, the input of TALF can include the reconstructed value on the reconstructed image of the current image after SAO in the time domain, i.e., the position of TALF in the loop filtering can be after SAO.

[0343] Exemplarily, in some embodiments, Fig. 17 is a schematic diagram of implementation of TALF filtering according to an embodiment of the present application. As shown in Fig. 17, the input of TALF can also include the reconstructed value on the reconstructed image of the current image after ALF in the time domain, i.e., the position of TALF in the loop filtering can be after ALF.

[0344] Therefore, in some embodiments, TALF can be placed at any position in the series of loop filters, which means that the input of TALF includes the reconstructed value on the reconstructed image of the current image and any step in the current loop filtering.

[0345] Further, in the embodiments of the present application, the reconstructed value of the current block can be the reconstructed value of the luma component of the current block, or the reconstructed value of the chroma component of the current block, which is not limited specifically in the present application.

[0346] That is to say, in the embodiments of the present application, TALF filtering can be applied to any image component of the current image.

[0347] It should be noted that, in the embodiments of the present application, the image components of the current image in the video image can include a first image component, a second image component and a third image component. The three image components are a luma component, a blue color component and a red color component respectively, specifically, the luma component is usually represented by the symbol Y, the blue color component is usually represented by the symbol Cb or U, and the red color component is usually represented by the symbol Cr or V; in this way, the video image can be represented in YCbCr format or YUV format.

[0348] Further, in the embodiments of the present application, the shape, size and tap number of the filter used in the TALF filtering process are not limited specifically, i.e., any shape and size of filter can be applied to the TALF filtering process. For example, the shape of the filter used in the TALF filtering process includes but is not limited to diamond shape, cross shape, rectangle and square.

[0349] Exemplarily, in some embodiments, Fig. 18 is a schematic diagram of a filter according to an embodiment of the present application. As shown in Fig. 18, a 5x5 symmetric filter includes 7 filter coefficients.

[0350] Exemplarily, in some embodiments, FIG. 19 is a schematic diagram II of a filter according to an embodiment of the present application, as shown in FIG. 19, a 7x7 symmetric filter, containing 13 filter coefficients.

[0351] Exemplarily, in some embodiments, FIG. 20 is a schematic diagram III of a filter according to an embodiment of the present application, as shown in FIG. 20, a 9x9 symmetric filter, containing 21 filter coefficients.

[0352] wherein the above are symmetric filters, each index value corresponds to a filter coefficient value, and each filter coefficient corresponds to two filter input values in symmetric positions, except for the filter center point.

[0353] Exemplarily, in some embodiments, FIG. 21 is a schematic diagram IV of a filter according to an embodiment of the present application, as shown in FIG. 21, a 5x5 symmetric filter, containing 4 filter coefficients.

[0354] Exemplarily, in some embodiments, FIG. 22 is a schematic diagram V of a filter according to an embodiment of the present application, as shown in FIG. 22, a 7x7 symmetric filter, containing 6 filter coefficients.

[0355] wherein the symmetric filter can also be that each index value corresponds to a filter coefficient value, and each filter coefficient corresponds to filter input values in multiple directions, except for the filter center point.

[0356] Of course, the filter can also be asymmetric, which means that each filter input position has different coefficient values.

[0357] Exemplarily, in some embodiments, FIG. 23 is a schematic diagram VI of a filter according to an embodiment of the present application, as shown in FIG. 23, a 5x5 asymmetric filter, containing 13 filter coefficients.

[0358] Exemplarily, in some embodiments, for the forward filtering and backward filtering under RA configuration, and the forward filtering using the reconstructed value in the POC N-1 reference image as input and the forward filtering using the reconstructed value in the POC N-2 reference image as input under LD configuration, a 7x7 symmetric filter containing 13 filter coefficients can be selected.

[0359] Exemplarily, in some embodiments, FIG. 24 is a schematic diagram seven of a filter according to an embodiment of the present application. As shown in FIG. 24, two 5x5 symmetric filters are used, and a total of 14 filter coefficients are included. For bidirectional filtering under RA configuration and forward filtering using the reconstructed values in the reference pictures with POC N-1 and N-2 as input under LD configuration, two filters as shown in FIG. 24 can be selected and used for the reconstructed values in the two reference pictures as input, respectively.

[0360] In step 2003, a first generation value is determined according to the filtered reconstructed value of the current block, a first syntax element identification information is determined based on the first generation value, and the first syntax element identification information is written into the bitstream; wherein the first syntax element identification information is used to determine whether the current block is filtered using TALF.

[0361] In an embodiment of the present application, after filtering the current block based on the reconstructed samples of the at least one inter-frame reference picture and the filter coefficients corresponding to the current block, and determining the filtered reconstructed value of the current block, a first generation value can be further determined according to the filtered reconstructed value of the current block, a first syntax element identification information is determined based on the first generation value, and the first syntax element identification information is written into the bitstream; wherein the first syntax element identification information is used to determine whether the current block is filtered using TALF.

[0362] Further, in an embodiment of the present application, when determining the first generation value according to the filtered reconstructed value of the current block, in each candidate mode, a second generation value of the filter coefficients corresponding to the current block is determined according to the filtered reconstructed value of the current block; and the smallest second generation value is determined as the first generation value corresponding to the filtering of the current block using TALF.

[0363] It can be understood that in an embodiment of the present application, each candidate filter can be traversed in each candidate mode, and a second generation value corresponding to the filtering using the filter coefficients corresponding to the current block is determined respectively, wherein the method of calculating the generation value includes but is not limited to rate-distortion optimization algorithm.

[0364] Correspondingly, in an embodiment of the present application, in each candidate mode, a plurality of second generation values can be calculated by traversing the candidate filters and a plurality of possible combinations of filter coefficients, and then the smallest generation value in the plurality of second generation values is determined as the first generation value corresponding to the filtering of the current block using TALF in the candidate mode.

[0365] Further, in the embodiments of the present application, when the first syntax element identification information is determined based on the first generation value, a third generation value corresponding to a case that the current block is not filtered by TALF can be determined; in a case that the first generation value is greater than or equal to the third generation value, the first syntax element identification information is set to indicate that the current block is not filtered by TALF; in a case that the first generation value is less than the third generation value, the first syntax element identification information is set to indicate that the current block is filtered by TALF.

[0366] It can be understood that in the embodiments of the present application, the optimal filter set number, whether each CTU uses TALF and which set of TALF filters is calculated under each mode by rate-distortion optimization when it is determined whether each CTU opens TALF filtering according to 1-4 respectively.

[0367] It should be noted that in the embodiments of the present application, the calculation of the generation value can be performed in any manner, including but not limited to rate-distortion optimization (Rate-distortion optimization, RDO) algorithm.

[0368] Further, in the embodiments of the present application, the first syntax element identification information can be used to determine whether the current block in the current image is filtered by TALF, that is, based on the first syntax element identification information, it can be determined whether the TALF filter is used to filter the reconstructed value of the image component of the current block.

[0369] Further, in the embodiments of the present application, the first syntax element identification information can be used to determine whether the current block is filtered by TALF. The first syntax element identification information can be a flag, wherein if the current block is a CTU corresponding to the current image, the first syntax element identification information can be a CTU-level flag, and if the current block is a CU corresponding to the current image, the first syntax element identification information can be a CU-level flag. Of course, corresponding to any size of sub-region in the current image, the first syntax element identification information can also be a flag of other block level. The present application does not make specific limitation.

[0370] Further, in the embodiments of the present application, whether the current block is filtered by TALF can be determined by the value of the first syntax element identification information.

[0371] Exemplarily, in some embodiments, in a case that the value of the first syntax element identification information is a first value, it is determined that the current block is not filtered by TALF. In a case that the value of the first syntax element identification information is not the first value, it is determined that the current block is filtered by TALF.

[0372] It should be noted that in the embodiments of the present application, the first syntax element identification information can be used to indicate whether the current block is filtered using TALF. In addition, the first value can be in the form of a parameter or in the form of a number, which is not limited herein.

[0373] For example, in some embodiments, if the first syntax element identification information is a block-level flag, in a specific example, the first value can be set to 0; in another specific example, the first value can also be set to false. The first value in the embodiments of the present application is not limited.

[0374] Taking the first value as 0 for example, in the embodiments of the present application, if the value of the first syntax element identification information is 0, it can be determined that the current block is not filtered using TALF. Otherwise, if the value of the first syntax element identification information is not 0, it can be determined that the current block is filtered using TALF.

[0375] For example, in some embodiments, if the current block of the current image is a CTU, the first syntax element identification information can be a CTU-level syntax, for example, the first syntax element identification information can be represented by the syntax element control identification talf_ctb_idc[CtbAddrX][CtbAddrY], that is, talf_ctb_idc[CtbAddrX][CtbAddrY] indicates whether the current block of the current image is filtered using TALF. If the value of talf_ctb_idc[CtbAddrX][CtbAddrY] is 0, it is determined that the current block is not filtered using TALF, and if the value of talf_ctb_idc[CtbAddrX][CtbAddrY] is not 0, it is determined that the current block is filtered using TALF. Of course, the value of talf_ctb_idc[CtbAddrX][CtbAddrY] is not limited to 0, which is not limited in the present application.

[0376] Further, in the embodiments of the present application, the fourth generation value corresponding to each candidate mode when the current image is filtered using TALF can also be determined according to the filtered reconstructed value of the current block under each candidate mode; and the smallest fourth generation value is determined as the fifth generation value corresponding to when the current image is filtered using TALF.

[0377] Further, in the embodiments of the present application, the sixth generation value corresponding to the case that the current picture is not filtered using TALF is determined; in the case that the fifth generation value is greater than or equal to the sixth generation value, the second syntax element identification information is set to indicate that the current picture is not filtered using TALF; in the case that the fifth generation value is less than the sixth generation value, the second syntax element identification information is set to indicate that the current picture is filtered using TALF.

[0378] Further, in the embodiments of the present application, in the case that the second syntax element identification information indicates that the current picture is filtered using TALF, the first syntax element is written into the bitstream.

[0379] Further, in the embodiments of the present application, the second syntax element identification information can be used to determine whether the current picture is allowed to be filtered using TALF. The second syntax element identification information can be a flag.

[0380] It should be noted that, in the embodiments of the present application, the second syntax element identification information can be a picture-level flag, a slice-level flag, a sub-picture-level flag, or a tile-level flag. The present application does not make specific limitations.

[0381] For example, in some embodiments, if the second syntax element identification information is a slice-level flag, the second syntax element identification information can be used to determine whether the current slice is allowed to be filtered using TALF.

[0382] Further, in the embodiments of the present application, whether the current picture (and / or the current slice) is allowed to be filtered using TALF can be determined according to the value of the second syntax element identification information.

[0383] For example, in some embodiments, in the case that the value of the second syntax element identification information is a second value, it is determined that the current picture (and / or the current slice) is allowed to be filtered using TALF. In the case that the value of the second syntax element identification information is a third value, it is determined that the current picture (and / or the current slice) is not filtered using TALF.

[0384] It should be noted that, in the embodiments of the present application, the second syntax element identification information can be used to indicate whether the current picture (and / or the current slice) is filtered using TALF. In addition, the second value and the third value are different, and the second value and the third value can be in the form of a parameter or in the form of a number, which are not limited herein.

[0385] It should be further noted that, if the second syntax element identification information is an image-level flag or a slice-level flag, in one specific example, the second value can be set to 1 and the third value can be set to 0; in another specific example, the second value can also be set to true and the third value can also be set to false; and in yet another specific example, the second value can also be set to 0 and the third value can also be set to 1; or, the second value can also be set to false and the third value can also be set to true. The second value and the third value of the embodiments of the present application are not limited in any way.

[0386] Suppose the second syntax element identification information is an image-level flag, and the second value is 1 and the third value is 0, in the embodiments of the present application, if the second syntax element identification information is 1, it can be determined that the current image uses TALF for filtering. Otherwise, if the second syntax element identification information is 0, it can be determined that the current image does not use TALF for filtering.

[0387] Exemplarily, in some embodiments, suppose the second syntax element identification information is an image-level flag, the second syntax element identification information can be represented by a syntax element ph_talf_enabled_flag, i.e., ph_talf_enabled_flag indicates whether the current image is allowed to use TALF for filtering. If the value of ph_talf_enabled_flag is 0, it is determined that the current image is not filtered using TALF, and if the value of ph_talf_enabled_flag is 1, it is determined that the current image is allowed to use TALF for filtering.

[0388] Exemplarily, in some embodiments, suppose the second syntax element identification information is a slice-level flag, the second syntax element identification information can be represented by a syntax element sh_talf_enabled_flag, i.e., sh_talf_enabled_flag indicates whether the current slice is allowed to use TALF for filtering. If the value of sh_talf_enabled_flag is 0, it is determined that the current slice is not filtered using TALF, and if the value of sh_talf_enabled_flag is 1, it is determined that the current slice is allowed to use TALF for filtering.

[0389] Of course, the value of sh_talf_enabled_flag is not limited to 0 and 1, and the present application does not make any specific limitation.

[0390] Therefore, in the embodiments of the present application, the coding of the first syntax element identification information can be dependent on the second syntax element identification information. That is, the identification at the block level can be dependent on the identification at the picture level, or the identification at the block level can be dependent on the identification at the slice level. For example, in the case that the second syntax element identification information is used to determine that the current picture (and / or the current slice) is filtered using TALF, the coding of the first syntax element identification information can be further performed, otherwise, the first syntax element identification information does not need to be coded.

[0391] Further, in the embodiments of the present application, third syntax element identification information can be determined and written into the bitstream, wherein the third syntax element identification information is used to determine whether the current sequence is filtered using TALF, and in the case that the third syntax element identification information indicates that the current sequence is filtered using TALF, the second syntax element is written into the bitstream.

[0392] Further, in the embodiments of the present application, the third syntax element identification information can be used to determine whether the current sequence is filtered using TALF. The third syntax element identification information can be a flag, for example, a sequence level flag.

[0393] Further, in the embodiments of the present application, whether the current sequence is filtered using TALF can be determined according to the value of the third syntax element identification information.

[0394] For example, in some embodiments, in the case that the value of the third syntax element identification information is a fourth value, it is determined that the current sequence is filtered using TALF, and in the case that the value of the third syntax element identification information is a fifth value, it is determined that the current sequence is not filtered using TALF.

[0395] It should be noted that, in the embodiments of the present application, the third syntax element identification information can be used to indicate whether the current sequence is filtered using TALF. In addition, the fourth value and the fifth value are different, and the fourth value and the fifth value can be in the form of a parameter or in the form of a number, which are not limited herein.

[0396] It should be further noted that, if the third syntax element identification information is a sequence level flag, in one specific example, the fourth value can be set to 1, and the fifth value can be set to 0; in another specific example, the fourth value can also be set to true, and the fifth value can also be set to false; or, in yet another specific example, the fourth value can also be set to 0, and the fifth value can also be set to 1; or, the fourth value can also be set to false, and the fifth value can also be set to true. The fourth value and the fifth value in the embodiments of the present application are not limited.

[0397] For example, assuming that the third syntax element identification information is a sequence level flag, and taking the fourth value as 1 and the fifth value as 0 as an example, if the third syntax element identification information takes the value 1, it can be determined that the current sequence uses TALF for filtering. Otherwise, if the third syntax element identification information takes the value 0, it can be determined that the current sequence does not use TALF for filtering.

[0398] For example, in some embodiments, assuming that the third syntax element identification information is a sequence level flag, the third syntax element identification information can be represented by a syntax element sps_talf_enabled_flag, i.e., sps_talf_enabled_flag indicates whether TALF is used for filtering of the current sequence. If sps_talf_enabled_flag takes the value 0, it is determined that TALF is not used for filtering of the current sequence, and if sps_talf_enabled_flag takes the value 1, it is determined that TALF is used for filtering of the current sequence.

[0399] Of course, the value of sps_talf_enabled_flag is not limited to 0 and 1, and the present application does not make specific limitations.

[0400] As can be seen, in the embodiments of the present application, the coding of the second syntax element identification information can depend on the third syntax element identification information, i.e., the image level (and / or slice level) identification can depend on the sequence level identification. For example, in the case where it is determined based on the third syntax element identification information that the current sequence uses TALF for filtering, the coding of the second syntax element identification information can be further performed, otherwise, the second syntax element identification information does not need to be coded again.

[0401] Further, in the embodiments of the present application, the sequence level TALF identification can depend on the sequence level ALF identification, i.e., the coding of the third syntax element identification information can have a dependent relationship with the coding of the sequence level syntax element of ALF.

[0402] Further, in the embodiments of the present application, the image level (and / or slice level) identification depending on the sequence level identification can include the image level (and / or slice level) TALF identification depending on the sequence level TALF identification, and can also include the image level (and / or slice level) TALF identification depending on the sequence level ALF identification.

[0403] That is, in the embodiments of the present application, the coding of the second syntax element identification information can depend on the third syntax element identification information, or can depend on the sequence level ALF identification.

[0404] Further, in embodiments of the present application, the TALF identification at the picture level (and / or slice level) can also depend on the ALF identification at the picture level (and / or slice level).

[0405] That is, in embodiments of the present application, the coding of the second syntax element identification information can also depend on the ALF identification at the picture level (and / or slice level).

[0406] Exemplarily, in some embodiments, the TALF identification at the picture level (and / or slice level) can also depend on some high level syntax, for example, a high level syntax element pps_alf_info_in_ph_flag to identify the control identification of the picture level or slice level using the syntax element at the picture level or slice level to parse the ALF, and the ALF identifier can also exist in the slice header.

[0407] Further, in embodiments of the present application, after the best candidate mode, candidate filter and corresponding filter coefficients are selected based on the rate-distortion optimization algorithm, the TALF parameters can be further determined and written into the bitstream together with the filter coefficients corresponding to the current block. The TALF parameters include one or more of mode parameters, number parameters, coefficient value parameters and coefficient sign parameters.

[0408] It can be understood that, in embodiments of the present application, the mode parameters can be used to determine the filter mode of the TALF filter, wherein the inter prediction reference picture corresponding to the current picture can be different for different filter modes. The number parameters can be used to determine the number of groups of filters corresponding to the current picture. The coefficient value parameters can be used to determine the absolute value of the filter coefficients. The coefficient sign parameters can be used to determine the sign of the filter coefficients, including positive and negative signs.

[0409] Exemplarily, in some embodiments, the coefficient value parameters can be determined according to the value of the filter coefficients corresponding to the current block; the coefficient sign parameters can be determined according to the sign of the filter coefficients corresponding to the current block; and the TALF parameters can be determined according to the coefficient value parameters and the coefficient sign parameters, i.e., the coefficient value parameters and the coefficient sign parameters in the TALF parameters.

[0410] Exemplarily, in some embodiments, the filter mode corresponding to the fifth generation value and the number of groups of candidate filters can be determined; the mode parameters can be determined according to the filter mode and the current configuration; the number parameters can be determined according to the number of groups of candidate filters; and the TALF parameters can be determined according to the mode parameters and the number parameters, i.e., the mode parameters and the number parameters in the TALF parameters.

[0411] Further, in embodiments of the present disclosure, the TALF parameter can correspond to an APS set, and the APS index corresponding to the APS set can be determined and written into the bitstream.

[0412] It can be understood that, in embodiments of the present disclosure, the APS index can be used to determine the APS parameter set corresponding to the current image, that is, the APS index can be used to determine the APS set corresponding to the current image.

[0413] That is, in embodiments of the present disclosure, the TALF parameter corresponding to the current image can be saved in the APS, so that the TALF parameter can be obtained by parsing in the APS.

[0414] Further, in embodiments of the present disclosure, the TALF parameter can also be directly written into the bitstream.

[0415] That is, in embodiments of the present disclosure, the TALF parameter corresponding to the current image can also be directly written into the bitstream. For example, the TALF parameter can be coded in the image header or slice header.

[0416] It can be understood that, in embodiments of the present disclosure, the first syntax element identification information can also be used to determine the TALF information used by the current block, for example, the value of the first syntax element identification information can be set according to the candidate filter corresponding to the current block determined finally.

[0417] For example, in some embodiments, when the value of the first syntax element identification information is a first value, it indicates that the TALF is not used for filtering the current block. When the value of the first syntax element identification information is not the first value, it indicates that the TALF is used for filtering the current block, and the value of the first syntax element identification information can be set to indicate the group index of the filter corresponding to the current block.

[0418] It can be understood that, in embodiments of the present disclosure, when it is determined that the TALF is used for filtering the current block, the value of the first syntax element identification information can be set to indicate the group index of the filter corresponding to the current block. The group index of the filter can represent the index of the TALF filter used by the current block in the filter set coded in the current image, that is, the group index of the filter can be used to select the candidate filter corresponding to the current block from the multiple filters corresponding to the current image.

[0419] For example, in embodiments of the present disclosure, the optimal filter mode, the number of filter groups, and the CTU switch optimized by the rate-distortion optimization are used to filter the reconstructed image, and the filter mode, the number of filter groups, and the filter coefficient are coded in the image header, the CTU switch, and the like.

[0420] It can be understood that the encoding method proposed in the embodiments of the present application is a method of using the reconstructed sample value in the time domain as an information source to improve the current image reconstruction quality, and the information is extracted from the reconstructed sample of the reconstructed image by the TALF filter to filter the current image.

[0421] It can be understood that the encoding method proposed in the embodiments of the present application can be pre-defined or transmitted by a code stream.

[0422] It can be understood that the encoding method proposed in the embodiments of the present application can refer to different encoding configurations, and different filtering modes are proposed. In the RA configuration, the filtering mode can be divided into a forward filtering mode, a reverse filtering mode and a bidirectional filtering mode; in the LD configuration, the filtering mode can be divided into a first forward filtering mode, a second forward filtering mode and a third forward filtering mode.

[0423] It can be understood that the encoding method proposed in the embodiments of the present application can be used for the luminance component or the chrominance component.

[0424] It can be understood that the encoding method proposed in the embodiments of the present application can be any level of switch identification, such as TALF, which can be switched in image units, CTU units, CU units or other ways of dividing the image into sub-regions.

[0425] It can be understood that the encoding method proposed in the embodiments of the present application can also select a skip CTU identification coding processing, and directly decide whether to perform TALF filtering on the entire image through image-level identification. At this time, the current image corresponds to only one candidate filter.

[0426] Further, the encoding method proposed in the embodiments of the present application improves the compression performance of the ECM reference software under the RA and LD configurations. For example, the method proposed in the embodiments of the present application is verified on the ECM-12.0 reference software, and some BD-rates can be improved under the RA configuration, and the test sequences class-C and class-D can be improved by 0.06% and 0.05% respectively, as shown in Table 2.

[0427] The embodiment of the present application provides a coding method, which can realize TALF filtering processing on a reconstructed value of a current block based on reconstructed samples of at least one inter-frame reference image and corresponding filter coefficients. In the TALF filtering process, the related information of the at least one inter-frame reference image is fully utilized, thereby improving the filtering effect and improving the coding and decoding performance.

[0428] Based on the above embodiment, the embodiment of the present application provides a time domain adaptive loop filtering technology, which is a technology of using a reconstructed image in the time domain as an information source to perform adaptive loop filtering on a current frame reconstructed image.

[0429] The embodiment of the present application provides a technology of using a reconstructed image in the time domain to improve the quality of a current image. The encoder can obtain one or more groups of filter coefficients used to improve the quality of the current reconstructed image and transmit the filter coefficients through a code stream. The decoder uses the parsed filter coefficients as input to filter the current image using information including but not limited to the reconstructed value in the time domain.

[0430] The embodiment of the present application provides a technology of using a reconstructed image in the time domain to improve the quality of a current image. The encoder can select appropriate filters and coefficients from a predefined one or more groups of filters and coefficients, and transmit syntax elements related to whether to use the filters and coefficients through a code stream. The decoder determines the filters and coefficients by parsing the syntax elements, uses information including but not limited to the reconstructed value in the time domain as input, and filters the current image.

[0431] The embodiment of the present application provides a technology of using a reconstructed image in the time domain to improve the quality of a current image. The encoder can select predefined filters and coefficients and or obtain coefficients that need to be transmitted through a code stream, and transmit corresponding syntax elements through a code stream. The decoder determines to use the predefined filters and coefficients by parsing the syntax elements, and or parses the filters and coefficients from the code stream, uses information including but not limited to the reconstructed value in the time domain as input, and filters the current image.

[0432] Exemplarily, in some embodiments, a block-level identifier (first syntax element identifier information) can be used to indicate whether the current block is filtered by using TALF.

[0433] Exemplarily, in some embodiments, taking a CTU level as an example, there is an identifier to control whether to start TALF at the CTU level. In addition, since a frame image can have multiple TALF (candidate filters) that can be selected for use, when the TALF identifier of a CTU level is true, a related identifier representing the selected TALF filter used to filter the current CTU should also be parsed.

[0434] Exemplarily, in some embodiments, the first syntax element identifies the parsing process of the information talf_ctb_idc[CtbAddrX][CtbAddrY] as follows:

[0435] When the current slice / current picture allows the use of TALF, the CTU-level control flag talf_ctb_idc[CtbAddrX][CtbAddrY] is also coded when coding each CTU-level syntax, and the value of talf_ctb_idc[CtbAddrX][CtbAddrY] - 1 corresponds to the index of the TALF filter used by the current CTU in the filter set coded in the current picture / slice. For example, if there are 3 sets of TALF filter coefficients coded in the current picture / slice, talf_ctb_idc[CtbAddrX][CtbAddrY] = 0 means that the current CTU does not use TALF, talf_ctb_idc[CtbAddrX][CtbAddrY] = 1 means that the first set of TALF filter coefficients is used to filter the current CTU, talf_ctb_idc[CtbAddrX][CtbAddrY] = 2 means that the second set of TALF filter coefficients is used to filter the current CTU, and talf_ctb_idc[CtbAddrX][CtbAddrY] = 3 means that the third set of TALF filter coefficients is used to filter the current CTU.

[0436] Of course, the CTU identification can also be abandoned, and a decision can be made directly on whether to perform TALF filtering on the entire picture, or a CU-level identification can be used instead of the CTU, or another block-level identification of a different size.

[0437] Exemplarily, in some embodiments, up to 4 sets of TALF coefficients (4 sets of filter coefficients corresponding to 4 sets of candidate filters) can be coded for each picture. Assuming that TALF is placed after ALF, a reference picture (inter-frame reference picture) can be used to further improve the quality of the reconstructed picture after ALF filtering.

[0438] Exemplarily, in some embodiments, a 7x7 symmetric filter and a 5x5 symmetric filter can be used. For TALF using one reconstructed picture (inter-frame reference picture) as input, 1 7x7 symmetric filter with 13 coefficients is used for filtering; for TALF using two reconstructed pictures as input, 2 5x5 symmetric filters with 7 coefficients are used for filtering.

[0439] Exemplarily, in some embodiments, the difference between the reconstructed value of the reconstructed image and the reconstructed value of the current image can be selected as the input of the TALF filter, assuming that the current image corresponds to one inter-frame reference image, at this time, the process of filtering the sample value at the coordinate (x, y) position (current sample position) in the current image using 13 filter coefficients, 7x7 symmetric filter is as follows:

[0440] Exemplarily, in some embodiments, the difference between the reconstructed value of the reconstructed image and the reconstructed value of the current image can be selected as the input of the TALF filter, assuming that the current image corresponds to two inter-frame reference images, at this time, the process of filtering the sample value at the coordinate (x, y) position (current sample position) in the current image using 7 filter coefficients, 5x5 symmetric 2 filters is as follows:

[0441] It should be noted that in the embodiments of the present application, the filter related parameters (TALF parameters and filter coefficients) can be coded at the slice header (or image header) or written into the APS parameter set, which is not limited in the present application.

[0442] It should be noted that in the embodiments of the present application, TALF filtering can be selected to be used for the luminance component, or TALF filtering can be selected to be used for the chrominance component (color component).

[0443] It should be noted that in the embodiments of the present application, when TALF filtering is only used for the luminance component, the chrominance component can also use the information of the reconstructed image in the time domain as auxiliary to improve the reconstructed quality of the current chrominance image.

[0444] Exemplarily, in some embodiments, at the encoding end, assuming that TALF is placed after ALF, that is, after ALF filtering, the decision process of TALF is entered.

[0445] First, according to the encoding configuration RA or LD, the mode allowed to be used by TALF is judged, and the TALF mode is three under RA and LD. The forward filtering is mode 1, the backward filtering is mode 2, and the bidirectional filtering is mode 3 under RA; the reference image POC N-1 is used as the TALF filter input as mode 1, the reference image POC N-2 is used as the TALF filter input as mode 2, and the reference images POC N-1 and N-2 are used as the TALF filter input as mode 3 under LD.

[0446] The Wiener-Hopf equation is constructed using the current image reconstruction value in the corresponding mode, the reconstruction value of the reference reconstruction image and the original value of the current image, and 1-4 sets of filter coefficients are solved. The rate-distortion optimization is used to determine whether each CTU is opened TALF filter according to 1-4, respectively, and the optimal filter set number under each mode, whether each CTU uses TALF and which set of TALF filter is calculated.

[0447] Further, the optimal filter mode, filter set number and CTU switch optimized by the rate-distortion optimization are used to filter the reconstruction image, and the filter mode, filter set number and filter coefficient are encoded in the image header, and the CTU switch information is encoded in each CTU unit.

[0448] Exemplarily, in some embodiments, at the decoding end, the decoder parses the code stream to obtain the filter mode, the filter number, the filter coefficient, whether each CTU uses TALF filter and which set of filter is used.

[0449] After ALF filtering, the selected CTU in the current image uses the corresponding filter for filtering.

[0450] Exemplarily, in some embodiments, when performing temporal adaptive loop filtering, sequence-level syntax elements such as the third syntax element identification information can be parsed, and the parsing process is as follows:

[0451] Wherein, the sequence identification sps_talf_enabled_flag is used to indicate whether the current sequence can use TALF, when the syntax element does not exist in the code stream, the value of the syntax element is inferred to be 0. When the syntax element value is 1, the current sequence can use TALF, and when the syntax element value is 0, the TALF cannot be used.

[0452] Exemplarily, in some embodiments, when performing temporal adaptive loop filtering, slice-level syntax elements such as the second syntax element identification information can be parsed, and the parsing process is as follows:

[0453] Wherein, the sh_talf_enabled_flag syntax element is the TALF enable identification of the slice header, when the syntax element does not exist in the code stream, the value of the syntax element is inferred to be 0. When the syntax element value is 1, the current slice can use TALF, and when the syntax element value is 0, the TALF cannot be used.

[0454] The talf_filter_mode syntax element is a syntax element indicating which TALF mode is used for the current slice, and the syntax element is 0 indicating that the forward filter is used under the RA configuration or the forward filter is used for the first frame before under the LD configuration; the syntax element is 1 indicating that the backward filter is used under the RA configuration or the forward filter is used for the second frame before under the LD configuration; the syntax element is 2 indicating that the bidirectional filter is used under the RA configuration or the filter is used for the two frames before under the LD configuration. When the syntax element does not exist in the bitstream, the value of the syntax element is 0.

[0455] The talf_num_filters_signalled_minus1 syntax element is a syntax element indicating the number of TALF filters contained in the current slice minus one, and in the present scheme, the talf_num_filters_signalled_minus1 can be 0, 1, 2 or 3 because one slice can have at most four TALF filters. The syntax element is 0 indicating that the current slice has one TALF filter, the syntax element is 1 indicating that the current slice has two TALF filters, the syntax element is 2 indicating that the current slice has three TALF filters, and the syntax element is 3 indicating that the current slice has four TALF filters. When the syntax element does not exist in the bitstream, the value of the syntax element is 0.

[0456] The numCoeff variable indicates the number of filter coefficients in the filter, and because the filter used for the forward filter under the RA configuration, the backward filter under the RA configuration and the first frame before under the LD configuration and the second frame before under the LD configuration in the present scheme is a 13 coefficient 7x7 symmetric filter, the numCoeff is equal to 13 in the corresponding case (i.e. talf_filter_mode is 0 or 1); the filter used for the bidirectional filter under the RA configuration and the two frames before under the LD configuration is two 5x5 7 coefficient filters, and there are 14 coefficients in total, so the numCoeff is equal to 14 in the corresponding case (i.e. talf_filter_mode is 2).

[0457] The talf_coeff_abs[sfIdx][j] syntax element indicates the absolute value of the jth coefficient of the sfIdxth group of filters, and the syntax element is represented using the Kth order exponential Golomb code, and K is 0. When the syntax element does not exist in the bitstream, the value of the syntax element is 0.

[0458] The talf_coeff_sign[sfIdx][j] syntax element indicates the positive and negative identification of the jth coefficient of the sfIdxth group of filters, and the syntax element is 1 indicating negative and 0 indicating positive. When the syntax element does not exist in the bitstream, the value of the syntax element is 0.

[0459] Exemplarily, in some embodiments, when performing temporal adaptive loop filtering, CTU level syntax elements, such as the first syntax element identification information, can be parsed, and the parsing process is as follows:

[0460] Wherein, the talf_ctb_idc[CtbAddrX][CtbAddrY] syntax element indicates whether the coding tree block of the horizontal direction number CtbAddrX and the vertical direction number CtbAddrY uses TALF filtering, and its value range is 0-talf_num_filters_signalled_minus1. For example, when talf_num_filters_signalled_minus1 is 1, the value of talf_ctb_idc can be 0 or 1, and for example, when talf_num_filters_signalled_minus1 is 2, the value of talf_ctb_idc can be 0, 1 or 2. When talf_ctb_idc is 0, it indicates that the current coding tree block does not use TALF filtering, when talf_ctb_idc is 1, it indicates that the first set of filters is used for filtering, and when talf_ctb_idc is 2, it indicates that the second set of filters is used for filtering. When the syntax element does not exist in the code stream, its value is 0.

[0461] Further, in the embodiments of the present application, according to the parsed number of filters, filter type, filter coefficient absolute value, and filter coefficient sign, the filter process is as follows:

[0462] Further, in the embodiments of the present application, assuming that the reconstructed value of the luminance component is filtered by TALF, i.e. the current block is a luminance block (luminance coding tree block), when the talf_ctb_idc of the current luminance coding tree block is identified as non-zero, TALF filtering needs to be performed.

[0463] Exemplarily, in some embodiments, the input of the filtering process includes:

[0464] 1. A reconstructed luminance image array rec filtered by luminance adaptive loop filtering,

[0465] 2. A corresponding temporal reconstructed luminance image array, for example, when the talf_filter_mode syntax element is 0, the forward nearest one frame temporal reconstructed image is used under RA configuration or the first frame reconstructed image rec0 is used under LD; when the talf_filter_mode syntax element is 1, the backward nearest one frame temporal reconstructed image is used under RA configuration or the first frame reconstructed image rec1 is used under LD; and when the talf_filter_mode syntax element is 2, two reconstructed image arrays rec0 and rec1 are used,

[0466] 3. Indicates the luminance coordinates (xCtb, yCtb) of the current luminance coding tree block in the current image.

[0467] 4. The width tAlfWidth and height tAlfHeight of the luminance coding tree block.

[0468] 5. The coefficients tAlfCoeff of the time-domain adaptive loop filter [][].

[0469] Accordingly, the filtering calculation for each position in the luminance-coded block is as follows:

[0470] When numCoeff is 14:

[0471] In the above calculation and filtering process, shift is a positive integer, which is 6 in this scheme. BitDepth variable is the bit depth of the luminance component, and x and y represent the horizontal and vertical coordinates of the reconstructed image array.

[0472] When numCoeff is 13 and talf_filter_mode is 0:

[0473] When numCoeff is 13 and talf_filter_mode is 1:

[0474] It should be noted that, in the embodiments of this application, during the filtering process, the same image edge padding method as ALF is used for the image boundaries to obtain the TALF input values ​​outside the required image range.

[0475] For example, in some embodiments, ALF filtering performs edge padding on a block-by-block basis. Filtering within a block does not use the reconstructed values ​​of other blocks. In this case, TALF can also perform edge padding on a block-by-block basis.

[0476] This application provides an encoding / decoding method, which is a temporal adaptive loop filtering method. It can perform TALF filtering on the reconstructed value of the current block based on the reconstructed samples and corresponding filter coefficients of at least one inter-frame reference image. In the TALF filtering process, the relevant information of at least one inter-frame reference image is fully utilized, thereby improving the filtering effect and enhancing the encoding / decoding performance.

[0477] In still another embodiment of the present application, based on the same inventive concept as the foregoing embodiments, referring to FIG. 26, a schematic diagram of the composition structure of the encoder 210 proposed in the embodiments of the present application is shown. As shown in FIG. 26, the encoder 210 can include: a first determining unit 2101; wherein,

[0478] The first determining unit 2101 is configured to determine at least one inter-frame reference image corresponding to a current image and filter coefficients corresponding to a current block; filter the current block based on the reconstructed samples of the at least one inter-frame reference image and the filter coefficients corresponding to the current block, to determine the filtered reconstructed value of the current block; determine a first generation value according to the filtered reconstructed value of the current block, and determine first syntax element identification information based on the first generation value, and write the first syntax element identification information into a bitstream; wherein the first syntax element identification information is used to determine whether the current block is filtered using TALF.

[0479] It should be noted that in the embodiments of the present application, the encoder 210 can also be regarded as a data processing mode (or "entropy encoder") for encoding the values of the syntax elements to be encoded.

[0480] It can be understood that in the embodiments of the present application, the "unit" can be a part of circuit, a part of processor, a part of program or software, etc., and of course can also be a module, and can also be non-modular. Moreover, the components in the embodiments can be integrated in one processing unit, or can be physically present separately, or two or more units can be integrated in one unit. The integrated unit can be realized in the form of hardware or in the form of a software function module.

[0481] The integrated unit, if realized in the form of a software function module and not sold or used as an independent product, can be stored in a computer readable storage medium. Based on this understanding, the technical solutions of the embodiments can be embodied in the form of a software product, and the computer software product is stored in a storage medium, includes a plurality of instructions for causing a computer device (which can be a personal computer, a server, or a network device, etc.) or a processor to perform all or part of the steps of the methods described in the embodiments. The foregoing storage medium includes: a U disk, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk, and various media that can store program codes.

[0482] Therefore, the embodiment of the present application provides a computer readable storage medium applied to the encoder 210, the computer readable storage medium stores a computer program, and the computer program is executed by the first processor to realize the encoding method in any one of the foregoing embodiments.

[0483] Based on the components of the encoder 210 and the computer readable storage medium, referring to FIG. 27, a specific hardware structure schematic diagram of the encoder 210 is shown. As shown in FIG. 27, the encoder 210 can include a first communication interface 2102, a first memory 2103 and a first processor 2104; and each component is coupled together through a first bus system 2105. It can be understood that the first bus system 2105 is used to realize the connection communication between the components. The first bus system 2105 includes a data bus, a power supply bus, a control bus and a state signal bus. However, for the purpose of clear illustration, all kinds of buses are marked as the first bus system 2105 in the figure. Among them,

[0484] The first communication interface 2102 is used for receiving and sending signals in the information transceiving process between other external network elements;

[0485] The first memory 2103 is used for storing a computer program capable of running on the first processor 2104;

[0486] The first processor 2104 is used for, when running the computer program, performing the following steps: determining at least one inter-frame reference image corresponding to a current image and a filter coefficient corresponding to a current block; filtering the current block based on the reconstructed samples of the at least one inter-frame reference image and the filter coefficient corresponding to the current block, to determine the filtered reconstructed value of the current block; determining a first generation value according to the filtered reconstructed value of the current block, and determining first syntax element identification information based on the first generation value, and writing the first syntax element identification information into a bitstream; wherein the first syntax element identification information is used to determine whether the current block is filtered by TALF.

[0487] It is to be appreciated that the first memory 2103 in the embodiments of the application can be a volatile memory or a nonvolatile memory, or can include both volatile and nonvolatile memory. Where the nonvolatile memory is a Read-Only Memory (ROM), Programmable ROM (PROM), Erasable PROM (EPROM), Electrically EPROM (EEPROM), or flash memory. The volatile memory can be a Random Access Memory (RAM), which is used as an external cache. By way of example, and not limitation, many forms of RAM are available, for example, Static RAM (SRAM), Dynamic RAM (DRAM), Synchronous DRAM (SDRAM), Double Data Rate SDRAM (DDR SDRAM), Enhanced SDRAM (ESDRAM), Synchlink DRAM (SLDRAM), and Direct Rambus RAM (DRRAM). The first memory 2103 of the system and method described herein are intended to include, without being limited to, these and any other suitable types of memory.

[0488] The first processor 2104 can be an integrated circuit chip, which has the processing capability of signals. In the implementation process, each step of the above method can be completed by the integrated logic circuit of hardware or the instruction in the form of software in the first processor 2104. The first processor 2104 described above can be a general processor, a digital signal processor (Digital Signal Processor, DSP), an application specific integrated circuit (Application Specific Integrated Circuit, ASIC), a field programmable gate array (Field Programmable Gate Array, FPGA) or other programmable logic device, a discrete gate or transistor logic device, a discrete hardware component. Each method, step and logic block disclosed in the embodiment of the present application can be implemented or executed. The general processor can be a microprocessor or the processor can also be any conventional processor. The steps of the method disclosed in combination with the embodiment of the present application can be directly embodied as a hardware decoding processor for execution, or a combination of hardware and software modules in the decoding processor for execution. The software module can be located in a random access memory, a flash memory, a read only memory, a programmable read only memory or an electrically erasable programmable memory, a register or other mature storage medium in the art. The storage medium is located in the first storage 2103, and the first processor 2104 reads the information in the first storage 2103, and combines the hardware to complete the steps of the above method.

[0489] It can be understood that the embodiments described in the present application can be realized by hardware, software, firmware, middleware, microcode or a combination thereof. For hardware implementation, the processing unit can be realized in one or more application specific integrated circuits (Application Specific Integrated Circuits, ASIC), digital signal processors (Digital Signal Processing, DSP), digital signal processing devices (DSP Device, DSPD), programmable logic devices (Programmable Logic Device, PLD), field programmable gate arrays (Field-Programmable Gate Array, FPGA), general processors, controllers, microcontrollers, microprocessors, other electronic units for executing functions described in the present application or a combination thereof. For software implementation, the technology described in the present application can be realized by modules (such as processes, functions, etc.) for executing functions described in the present application. The software code can be stored in the memory and executed by the processor. The memory can be implemented in the processor or outside the processor.

[0490] Optionally, as another embodiment, the first processor 2104 is further configured to, when running the computer program, perform the encoding method according to any one of the preceding embodiments.

[0491] The embodiment provides an encoder, which can realize TALF filtering processing on a reconstructed value of a current block based on reconstructed samples of at least one inter-frame reference image and corresponding filter coefficients, and in the TALF filtering process, relevant information of the at least one inter-frame reference image is fully utilized, so that the filtering effect can be improved, and the coding and decoding performance is improved.

[0492] In still another embodiment of the present application, based on the same inventive concept as the preceding embodiments, referring to FIG. 28, a constituent structure schematic diagram of a decoder 230 proposed in the embodiment of the present application is shown. As shown in FIG. 28, the decoder 230 can include: a second determining unit 2301; wherein,

[0493] The second determining unit 2301 is configured to decode a code stream, determine first syntax element identification information, in a case where it is determined that the current block is filtered using TALF based on the first syntax element identification information, determine at least one inter-frame reference image corresponding to a current image and filter coefficients corresponding to the current block, and filter the current block based on reconstructed samples of the at least one inter-frame reference image and the filter coefficients corresponding to the current block, to determine a filtered reconstructed value of the current block.

[0494] It should be noted that in the embodiment of the present application, the decoder 230 can also be regarded as a data processing mode (or an "entropy decoder") for decoding processing of a value of a to-be-decoded syntax element.

[0495] It can be understood that in the embodiment, the "unit" can be a part of circuit, a part of processor, a part of program or software, and of course can also be a module, and can also be non-modular. Moreover, the constituent parts in the embodiment can be integrated in one processing unit, or can be physically present separately, or two or more units can be integrated in one unit. The integrated unit can be realized in the form of hardware or in the form of a software function module.

[0496] The integrated unit, if realized in the form of a software function module and not sold or used as an independent product, can be stored in a computer readable storage medium. Based on such understanding, the embodiment provides a computer readable storage medium applied to the decoder 230, and the computer readable storage medium stores a computer program, and the computer program is executed by the second processor to realize the method according to any one of the preceding embodiments.

[0497] Based on the components of the decoder 230 and the computer readable storage medium, referring to FIG. 29, a specific hardware structure diagram of the decoder 230 is shown. As shown in FIG. 29, the decoder 230 can include a second communication interface 2302, a second memory 2303 and a second processor 2304; and the components are coupled together through a second bus system 2305. It can be understood that the second bus system 2305 is used to realize the connection communication between the components. The second bus system 2305 includes a data bus, a power supply bus, a control bus and a state signal bus. However, for the purpose of clear illustration, all the buses are marked as the second bus system 2305 in the figure. Among them,

[0498] The second communication interface 2302 is configured to receive and send signals in the information transceiving process between other external network elements.

[0499] The second memory 2303 is configured to store a computer program capable of running on the second processor 2304.

[0500] The second processor 2304 is configured to, when running the computer program, perform: decoding a code stream, determining first syntax element identification information; in the case of determining that the current block uses TALF for filtering based on the first syntax element identification information, determining at least one inter-frame reference image corresponding to the current image and filter coefficients corresponding to the current block; filtering the current block based on the reconstructed samples of the at least one inter-frame reference image and the filter coefficients corresponding to the current block, and determining the filtered reconstructed value of the current block.

[0501] Optionally, as another embodiment, the second processor 2304 is further configured to, when running the computer program, perform the method in any one of the preceding embodiments.

[0502] It can be understood that the hardware function of the second memory 2303 is similar to that of the first memory 2103, and the hardware function of the second processor 2304 is similar to that of the first processor 2104; and details are not described here.

[0503] The embodiment provides a decoder, which can realize TALF filtering processing of the reconstructed value of the current block based on the reconstructed samples of the at least one inter-frame reference image and the corresponding filter coefficients. In the TALF filtering process, the related information of the at least one inter-frame reference image is fully utilized, so that the filtering effect can be improved, and the coding and decoding performance is improved.

[0504] In still another embodiment of the present application, referring to FIG. 30, a component structure diagram of a coding and decoding system is shown. As shown in FIG. 30, the coding and decoding system 300 can include the encoder 210 and the decoder 230.

[0505] In embodiments of the present application, the encoder 210 can be an encoder as described in any of the foregoing embodiments, and the decoder 230 can be a decoder as described in any of the foregoing embodiments.

[0506] Further, embodiments of the present application also provide a bitstream, wherein the bitstream is generated by bit-encoding to-be-encoded information; and wherein the to-be-encoded information comprises at least one or more of the first syntax element identification information, the second syntax element identification information, the third syntax element identification information, the APS index, and the TALF parameter.

[0507] Further, the present embodiment provides a computer-readable storage medium, wherein the computer-readable storage medium is used to store the bitstream generated by the encoding method of any of the foregoing embodiments.

[0508] It should be noted that, in the present application, the terms “comprising”, “containing” or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, article or device including a series of elements not only includes those elements, but also includes other elements not explicitly listed or inherent to such a process, method, article or device. Without more limitations, the element defined by the statement “comprising a” does not exclude the presence of another identical element in the process, method, article or device including the element.

[0509] The above-mentioned sequence numbers of embodiments of the present application are only for description, and do not represent the advantages or disadvantages of the embodiments.

[0510] The methods disclosed in the several method embodiments provided by the present application can be combined arbitrarily without conflict to obtain new method embodiments.

[0511] The features disclosed in the several product embodiments provided by the present application can be combined arbitrarily without conflict to obtain new product embodiments.

[0512] The features disclosed in the several method or device embodiments provided by the present application can be combined arbitrarily without conflict to obtain new method embodiments or device embodiments.

[0513] The above is merely specific implementation manners of the present application, but the protection scope of the present application is not limited thereto, and any person skilled in the art can easily think of changes or replacements within the technical range disclosed by the present application, which should be covered within the protection scope of the present application. Therefore, the protection scope of the present application should be subject to the protection scope of the claims. Industrial applicability

[0514] Embodiments of the present application provide a coding method, a code stream, an encoder, a decoder and a storage medium. At a decoding end, a code stream is decoded, and a first syntax element identification information is determined. In a case where it is determined that a current block uses TALF filtering based on the first syntax element identification information, at least one inter-frame reference image corresponding to a current image and filter coefficients corresponding to the current block are determined. The current block is filtered based on the reconstructed samples of the at least one inter-frame reference image and the filter coefficients corresponding to the current block, and a filtered reconstructed value of the current block is determined. At an encoding end, at least one inter-frame reference image corresponding to a current image and filter coefficients corresponding to the current block are determined. The current block is filtered based on the reconstructed samples of the at least one inter-frame reference image and the filter coefficients corresponding to the current block, and a filtered reconstructed value of the current block is determined. The first syntax element identification information is determined according to the filtered reconstructed value of the current block, and the first syntax element identification information is written into a code stream based on a first generation value. The first syntax element identification information is used to determine whether the current block uses TALF filtering. It can be seen that the embodiments of the present application propose a time domain adaptive loop filtering method. The TALF filtering processing of the reconstructed value of the current block can be implemented based on the reconstructed samples of the at least one inter-frame reference image and the corresponding filter coefficients. In the TALF filtering process, the related information of the at least one inter-frame reference image is fully utilized, so that the filtering effect can be improved, and the coding and decoding performance is improved.

Claims

1. A decoding method applied to a decoder, the method comprising: decoding a bitstream to determine first syntax element identification information; in a case where it is determined, based on the first syntax element identification information, that temporal adaptive loop filtering (TALF) is used for filtering of a current block, determining at least one inter prediction reference picture corresponding to a current picture and filter coefficients corresponding to the current block; filtering the current block based on reconstructed samples of the at least one inter prediction reference picture and the filter coefficients corresponding to the current block to determine filtered reconstructed values of the current block.

2. The method of claim 1, wherein, The determining of the at least one inter prediction reference picture corresponding to the current picture and the filter coefficients corresponding to the current block comprises: determining TALF parameters corresponding to the current block; wherein the TALF parameters comprise one or more of a mode parameter, a number parameter, a coefficient value parameter and a coefficient sign parameter; determining a filter mode and a number of filter groups according to the TALF parameters; determining the at least one inter prediction reference picture according to the filter mode; determining the filter coefficients corresponding to the current block according to the number of filter groups, the coefficient value parameter, the coefficient sign parameter and the first syntax element identification information.

3. The method of claim 2, wherein, The method further comprises: decoding a bitstream to determine second syntax element identification information; in a case where it is determined, based on the second syntax element identification information, that TALF is used for filtering of a current picture, performing the determining of the first syntax element identification information.

4. The method of claim 3, wherein, The method further comprises: decoding a bitstream to determine third syntax element identification information; in a case where it is determined, based on the third syntax element identification information, that TALF is used for filtering of a current sequence, performing the determining of the second syntax element identification information.

5. The method of claim 3 or 4, wherein, The determining of the TALF parameters corresponding to the current block comprises: in a case where it is determined, based on the second syntax element identification information, that TALF is used for filtering of a current picture, decoding a bitstream to determine an adaptive parameter set (APS) index; determining an APS set according to the APS index, and determining the TALF parameters based on the APS set.

6. The method of claim 3 or 4, wherein, The determining of the TALF parameters corresponding to the current block comprises: in a case where it is determined, based on the second syntax element identification information, that TALF is used for filtering of a current picture, decoding a bitstream to determine the TALF parameters.

7. The method of any one of claims 2-4, wherein, The determining of the filter mode according to the TALF parameters comprises: determining a current configuration; in a case where the current configuration is a random access (RA) configuration, determining the filter mode in a first candidate mode according to the mode parameter; wherein the first candidate mode comprises one or more of a forward filter mode, a backward filter mode and a bi-directional filter mode; in a case where the current configuration is a low delay (LD) configuration, determining the filter mode in a second candidate mode according to the mode parameter; wherein the second candidate mode comprises one or more of a first forward filter mode, a second forward filter mode and a third forward filter mode.

8. The method of any one of claims 2-4, wherein, The determining of the number of filter groups according to the TALF parameters comprises: determining the number of filter groups according to the number parameter.

9. The method of any one of claims 2-4, wherein, The determining the filter coefficient corresponding to the current block according to the group number of the filter, the coefficient numerical value parameter, the coefficient sign parameter and the first syntax element identification information comprises: determining the candidate filter corresponding to the current block according to the first syntax element identification information and the group number of the filter; determining the filter coefficient corresponding to the current block according to the candidate filter corresponding to the current block, the coefficient numerical value parameter and the coefficient sign parameter.

10. The method of claim 9, wherein, The determining the candidate filter corresponding to the current block according to the first syntax element identification information and the group number of the filter comprises: determining the group number index of the filter corresponding to the current block according to the first syntax element identification information; determining the candidate filter corresponding to the current block according to the group number of the filter and the group number index of the filter corresponding to the current block.

11. The method of claim 9, wherein, The determining the filter coefficient corresponding to the current block according to the candidate filter corresponding to the current block, the coefficient numerical value parameter and the coefficient sign parameter comprises: determining the value of the filter coefficient corresponding to the candidate filter according to the coefficient numerical value parameter; determining the sign of the filter coefficient corresponding to the candidate filter according to the coefficient sign parameter; determining the filter coefficient corresponding to the candidate filter according to the value of the filter coefficient corresponding to the candidate filter and the sign of the filter coefficient corresponding to the candidate filter.

12. The method of claim 10 or 11, wherein, The filtering the current block based on the reconstructed sample of the at least one inter-frame reference image and the filter coefficient corresponding to the current block to determine the filtered reconstructed value of the current block comprises: for a current sample position in the current block, determining the reconstructed sample value of the current sample position according to the reconstructed value of the current block and determining the reconstructed sample value of a reference sample position corresponding to the current sample position according to the reconstructed sample of the inter-frame reference image; determining the filtered reconstructed sample value of the current sample position according to the filter coefficient corresponding to the current block, the reconstructed sample value of the current sample position and the reconstructed sample value of the reference sample position; determining the filtered reconstructed value of the current block according to the filtered reconstructed sample value of the current sample position.

13. The method of claim 12, wherein, The determining the filtered reconstructed sample value of the current sample position according to the filter coefficient corresponding to the current block, the reconstructed sample value of the current sample position and the reconstructed sample value of the reference sample position comprises: determining a first sample difference value according to the reconstructed sample value of the current sample position and the reconstructed sample value of the reference sample position; determining the filtered reconstructed sample value of the current sample position according to the filter coefficient corresponding to the current block, the reconstructed sample value of the current sample position and the first sample difference value.

14. The method of claim 12, wherein, The determining the filtered reconstructed sample value of the current sample position according to the filter coefficient corresponding to the current block, the reconstructed sample value of the current sample position and the reconstructed sample value of the reference sample position comprises: determining a filter position corresponding to the reference sample position in the current block according to the reconstructed values of the current block, and determining a reconstructed sample value of the filter position according to the reconstructed values of the current block; determining a second sample difference value according to the reconstructed sample value of the filter position and the reconstructed sample value of the reference sample position; determining a filtered reconstructed sample value of the current sample position according to the filter coefficient corresponding to the current block, the reconstructed sample value of the current sample position, the first reference sample position, and the second reference sample position.

15. The method of claim 10 or 11, wherein, The filtering of the current block based on the reconstructed samples of the at least one inter-frame reference image and the filter coefficient corresponding to the current block to determine the filtered reconstructed values of the current block comprises: for a current sample position in the current block, determining a reconstructed sample value of the current sample position according to the reconstructed values of the current block, determining a reconstructed sample value of a first reference sample position corresponding to the current sample position according to the reconstructed samples of the first inter-frame reference image, and determining a reconstructed sample value of a second reference sample position corresponding to the current sample position according to the reconstructed samples of the second inter-frame reference image; determining a filtered reconstructed sample value of the current sample position according to the filter coefficient corresponding to the current block, the reconstructed sample value of the current sample position, the first reference sample position, and the second reference sample position. determining the filtered reconstructed values of the current block according to the filtered reconstructed sample value of the current sample position.

16. The method of claim 15, wherein, The determining of the filtered reconstructed sample value of the current sample position according to the filter coefficient corresponding to the current block, the reconstructed sample value of the current sample position, the first reference sample position, and the second reference sample position comprises: determining a third sample difference value according to the reconstructed sample value of the current sample position and the reconstructed sample value of the first reference sample position; determining a fourth sample difference value according to the reconstructed sample value of the current sample position and the reconstructed sample value of the second reference sample position; determining a filtered reconstructed sample value of the current sample position according to the filter coefficient corresponding to the current block, the reconstructed sample value of the current sample position, the third sample difference value, and the fourth sample difference value.

17. The method of claim 15, wherein, The determining of the filtered reconstructed sample value of the current sample position according to the filter coefficient corresponding to the current block, the reconstructed sample value of the current sample position, the first reference sample position, and the second reference sample position comprises: determining a filter position corresponding to the reference sample position in the current block according to the reconstructed values of the current block, and determining a reconstructed sample value of the filter position according to the reconstructed values of the current block; determining a fifth sample difference value according to the reconstructed sample value of the filter position and the reconstructed sample value of the first reference sample position; determining a sixth sample difference value according to the reconstructed sample value of the filter position and the reconstructed sample value of the second reference sample position; According to the filter coefficient corresponding to the current block, the reconstructed sample value of the current sample position, the fifth sample difference value and the sixth sample difference value, a filtered reconstructed sample value of the current sample position is determined.

18. The method of any one of claims 13, 14, 16, 17, wherein, The method further comprises: processing the current image based on any loop filtering method to determine the reconstructed value of the current block.

19. An encoding method applied to an encoder, the method comprising: determining at least one inter-frame reference image corresponding to a current image and a filter coefficient corresponding to a current block; filtering the current block based on the reconstructed samples of the at least one inter-frame reference image and the filter coefficient corresponding to the current block to determine a filtered reconstructed value of the current block; determining a first generation value according to the filtered reconstructed value of the current block, determining a first syntax element identification information based on the first generation value, and writing the first syntax element identification information into a bitstream; wherein the first syntax element identification information is used to determine whether the current block is filtered using TALF.

20. The method of claim 19, wherein, The determination of the at least one inter-frame reference image corresponding to the current image and the filter coefficient corresponding to the current block comprises: determining candidate modes according to a current configuration; in each candidate mode, determining the at least one inter-frame reference image, determining a candidate filter corresponding to the current block, and determining the filter coefficient corresponding to the current block based on the candidate filter corresponding to the current block.

21. The method of claim 20, wherein, The determination of the candidate modes according to the current configuration comprises: in a case where the current configuration is a RA configuration, determining that the candidate modes are first candidate modes; wherein the first candidate modes comprise one or more of a forward filtering mode, a reverse filtering mode and a bidirectional filtering mode; in a case where the current configuration is a LD configuration, determining that the candidate modes are second candidate modes; wherein the second candidate modes comprise one or more of a first forward filtering mode, a second forward filtering mode and a third forward filtering mode.

22. The method of claim 20 or 21, wherein, The determination of the first generation value according to the filtered reconstructed value of the current block comprises: in each candidate mode, determining a second generation value of the filter coefficient corresponding to the current block according to the filtered reconstructed value of the current block; determining the minimum second generation value as the first generation value corresponding to the filtering of the current block using TALF.

23. The method of claim 22, wherein, The determination of the first syntax element identification information based on the first generation value comprises: determining a third generation value corresponding to the filtering of the current block not using TALF; in a case where the first generation value is greater than or equal to the third generation value, setting the first syntax element identification information to indicate that the current block is not filtered using TALF; in a case where the first generation value is less than the third generation value, setting the first syntax element identification information to indicate that the current block is filtered using TALF.

24. The method of claim 22, wherein, The method further comprises: determining a coefficient numerical parameter according to the value of the filter coefficient corresponding to the current block; determining a coefficient sign parameter according to the sign of the filter coefficient corresponding to the current block; determining a TALF parameter according to the coefficient numerical parameter and the coefficient sign parameter.

25. The method of claim 22, wherein, The method further comprises: determining a fourth generation value corresponding to each candidate mode when the current picture is filtered using TALF according to the filtered reconstructed value of the current block in each candidate mode; determining a fifth generation value corresponding to when the current picture is filtered using TALF as the smallest fourth generation value.

26. The method of claim 25, wherein, The method further comprises: determining a sixth generation value corresponding to when the current picture is not filtered using TALF; in a case where the fifth generation value is greater than or equal to the sixth generation value, setting second syntax element identification information to indicate that the current picture is not filtered using TALF; in a case where the fifth generation value is less than the sixth generation value, setting second syntax element identification information to indicate that the current picture is filtered using TALF.

27. The method of claim 25, wherein, The method further comprises: determining a number of groups of filter candidates and a filter mode corresponding to the fifth generation value; determining a mode parameter according to the filter mode and the current configuration, and determining a number parameter according to the number of groups of filter candidates; determining a TALF parameter according to the mode parameter and the number parameter.

28. The method of claim 26, wherein, The method further comprises: in a case where the second syntax element identification information indicates that the current picture is filtered using TALF, writing the first syntax element into a bitstream.

29. The method of claim 26 or 28, wherein, The method further comprises: determining third syntax element identification information and writing the third syntax element identification information into a bitstream, wherein the third syntax element identification information is used to determine whether a current sequence is filtered using TALF; in a case where the third syntax element identification information indicates that the current sequence is filtered using TALF, writing the second syntax element into a bitstream.

30. The method of claim 24 or 27, wherein, The method further comprises: determining an APS set corresponding to the TALF parameter; determining an APS index corresponding to the APS set and writing the APS index into a bitstream.

31. The method of claim 24 or 279, wherein, The method further comprises: writing the TALF parameter into a bitstream.

32. A code stream, wherein the code stream is generated by bit-encoding information to be encoded; and wherein, The information to be encoded at least includes one or more of the following: first syntax element identification information, second syntax element identification information, third syntax element identification information, an APS index, and a TALF parameter.

33. An encoder, comprising a first determining unit; wherein the first determining unit is configured to determine at least one inter-frame reference picture corresponding to a current picture and a filter coefficient corresponding to a current block, filter the current block based on a reconstructed sample of the at least one inter-frame reference picture and the filter coefficient corresponding to the current block to determine a filtered reconstructed value of the current block, determine a first generation value according to the filtered reconstructed value of the current block, and determine first syntax element identification information based on the first generation value and write the first syntax element identification information into a bitstream, wherein the first syntax element identification information is used to determine whether the current block is filtered using TALF.

34. An encoder, comprising a first memory and a first processor; wherein The first memory is configured to store a computer program capable of running on the first processor. The first processor is configured to execute the method according to any one of claims 19-31 when running the computer program.

35. A decoder, comprising a second determining unit; wherein The second determining unit is configured to decode a bitstream, determine a first syntax element identification information, in a case that it is determined that the current block is filtered using TALF based on the first syntax element identification information, determine at least one inter-frame reference picture corresponding to a current picture and filter coefficients corresponding to the current block, filter the current block based on reconstructed samples of the at least one inter-frame reference picture and the filter coefficients corresponding to the current block, and determine filtered reconstructed values of the current block.

36. A decoder, comprising a second memory and a second processor; wherein The second memory is configured to store a computer program capable of running on the second processor. The second processor is configured to execute the method according to any one of claims 1-18 when running the computer program.

37. A computer readable storage medium, storing a computer program, the computer program being executed to implement the decoding method according to any one of claims 1-18, or to implement the encoding method according to any one of claims 19-31.

38. A computer readable storage medium, configured to store a bitstream generated by the encoding method according to any one of claims 19-31.

Citation Information

Patent Citations

  • Encoder, decoder and corresponding methods

    CN114868392A

  • Video or image coding accompanied by adaptive loop filtering procedure

    WO2020204412A1