Methods and apparatus of filter derivation for filter-based intra prediction in video coding system

By modifying filter-based intra prediction using residuals or stored parameters from reference blocks, the method enhances video coding efficiency and quality in systems like VVC.

WO2025152827A1PCT designated stage expired Publication Date: 2025-07-24MEDIATEK INC
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
PCT/CN2025/071303
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-01-17
Filing Date
2025-01-08
Publication Date
2025-07-24

AI Technical Summary

Technical Problem

Existing video coding systems, such as VVC, face challenges in optimizing filter-based intra prediction, particularly in deriving efficient filters for current blocks, which affects coding efficiency and video quality.

Method used

The method involves determining residuals between filter-predicted and reconstructed samples of a reference block, modifying the target filter-based intra prediction mode using these residuals, and applying the modified prediction to the current block, or using stored filter parameters derived from previous blocks to enhance the prediction process.

Benefits of technology

This approach improves the coding performance by generating more accurate and efficient filter predictions, leading to enhanced video quality and coding efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2025071303_24072025_PF_FP_ABST
    Figure CN2025071303_24072025_PF_FP_ABST
Patent Text Reader

Abstract

Methods and apparatus for video coding using a filter-based intra prediction mode are disclosed. According to this method, a reference block of the current block is determined. Residuals of the reference block corresponding to differences between filter-predicted samples of the reference block and reconstructed samples of the reference block are determined, wherein the filter-predicted samples of the reference block are generated by applying a target filter-based intra prediction mode to the reference block. The target filter-based intra prediction associated with the target filter-based intra prediction mode is modified to target modified filter-based prediction for the current block according to the residuals of the reference block. Modified current filter-prediction is generated by applying the target modified filter-based prediction to the current block. According to another method, stored filter parameters derived by matching filtered results with reconstructed samples of a previous reconstructed block are used to generate prediction for the current block.
Need to check novelty before this filing date? Find Prior Art

Description

METHODS AND APPARATUS OF FILTER DERIVATION FOR FILTER-BASED INTRA PREDICTION IN VIDEO CODING SYSTEMCROSS REFERENCE TO RELATED APPLICATIONS

[0001] The present invention is a non-Provisional Application of and claims priority to U.S. Provisional Patent Application No. 63 / 621,640, filed on January 17, 2024. The U.S. Provisional Patent Application is hereby incorporated by reference in its entirety.FIELD OF THE INVENTION

[0002] The present invention relates to video coding system. In particular, the present invention relates to schemes to improve the performance of filter-based intra prediction by using residuals of a reference block or using filter parameters derived and stored for a previous reconstructed block. BACKGROUND AND RELATED ART

[0003] Versatile video coding (VVC) is the latest international video coding standard developed by the Joint Video Experts Team (JVET) of the ITU-T Video Coding Experts Group (VCEG) and the ISO / IEC Moving Picture Experts Group (MPEG) . The standard has been published as an ISO standard: ISO / IEC 23090-3: 2021, Information technology -Coded representation of immersive media -Part 3: Versatile video coding, published Feb. 2021. VVC is developed based on its predecessor HEVC (High Efficiency Video Coding) by adding more coding tools to improve coding efficiency and also to handle various types of video sources including 3-dimensional (3D) video signals.

[0004] Fig. 1A illustrates an exemplary adaptive Inter / Intra video encoding system incorporating loop processing. For Intra Prediction, the prediction data is derived based on previously coded video data in the current picture. For Inter Prediction 112, Motion Estimation (ME) is performed at the encoder side and Motion Compensation (MC) is performed based on the result of ME to provide prediction data derived from other picture (s) and motion data. Switch 114 selects Intra Prediction 110 or Inter-Prediction 112 and the selected prediction data is supplied to Adder 116 to form prediction errors, also called residues. The prediction error is then processed by Transform (T) 118 followed by Quantization (Q) 120. The transformed and quantized residues are then coded by Entropy Encoder 122 to be included in a video bitstream corresponding to the compressed video data. The bitstream associated with the transform coefficients is then packed with side information such as motion and coding modes associated with Intra prediction and Inter prediction, and other information such as parameters associated with loop filters applied to underlying image area. The side information associated with Intra Prediction 110, Inter prediction 112 and in-loop filter 130, is provided to Entropy Encoder 122 as shown in Fig. 1A. When an Inter-prediction mode is used, a reference picture or pictures have to be reconstructed at the encoder end as well. Consequently, the transformed and quantized residues are processed by Inverse Quantization (IQ) 124 and Inverse Transformation (IT) 126 to recover the residues. The residues are then added back to prediction data 136 at Reconstruction (REC) 128 to reconstruct video data. The reconstructed video data may be stored in Reference Picture Buffer 134 and used for prediction of other frames.

[0005] As shown in Fig. 1A, incoming video data undergoes a series of processing in the encoding system. The reconstructed video data from REC 128 may be subject to various impairments due to a series of processing. Accordingly, in-loop filter 130 is often applied to the reconstructed video data before the reconstructed video data are stored in the Reference Picture Buffer 134 in order to improve video quality. For example, deblocking filter (DF) , Sample Adaptive Offset (SAO) and Adaptive Loop Filter (ALF) may be used. The loop filter information may need to be incorporated in the bitstream so that a decoder can properly recover the required information. Therefore, loop filter information is also provided to Entropy Encoder 122 for incorporation into the bitstream. In Fig. 1A, Loop filter 130 is applied to the reconstructed video before the reconstructed samples are stored in the reference picture buffer 134. The system in Fig. 1A is intended to illustrate an exemplary structure of a typical video encoder. It may correspond to the High Efficiency Video Coding (HEVC) system, VP8, VP9, H. 264 or VVC.

[0006] The decoder, as shown in Fig. 1B, can use similar or portion of the same functional blocks as the encoder except for Transform 118 and Quantization 120 since the decoder only needs Inverse Quantization 124 and Inverse Transform 126. Instead of Entropy Encoder 122, the decoder uses an Entropy Decoder 140 to decode the video bitstream into quantized transform coefficients and needed coding information (e.g. ILPF information, Intra prediction information and Inter prediction information) . The Intra prediction 150 at the decoder side does not need to perform the mode search. Instead, the decoder only needs to generate Intra prediction according to Intra prediction information received from the Entropy Decoder 140. Furthermore, for Inter prediction, the decoder only needs to perform motion compensation (MC 152) according to Inter prediction information received from the Entropy Decoder 140 without the need for motion estimation.

[0007] According to VVC, an input picture is partitioned into non-overlapped square block regions referred as CTUs (Coding Tree Units) , similar to HEVC. Each CTU can be partitioned into one or multiple smaller size coding units (CUs) . The resulting CU partitions can be in square or rectangular shapes. Also, VVC divides a CTU into prediction units (PUs) as a unit to apply prediction process, such as Inter prediction, Intra prediction, etc.

[0008] Partitioning of the CTUs Using a Tree Structure

[0009] In VVC, a quadtree with nested multi-type tree using binary and ternary splits segmentation structure replaces the concepts of multiple partition unit types, i.e. it removes the separation of the CU, PU and TU concepts except as needed for CUs that have a size too large for the maximum transform length, and supports more flexibility for CU partition shapes. In the coding tree structure, a CU can have either a square or rectangular shape. A coding tree unit (CTU) is first partitioned by a quaternary tree (a.k.a. quadtree) structure. Then the quaternary tree leaf nodes can be further partitioned by multi-type tree structure. As shown in Fig. 2, there are four splitting types in multi-type tree structure, vertical binary splitting (SPLIT_BT_VER 210) , horizontal binary splitting (SPLIT_BT_HOR 220) , vertical ternary splitting (SPLIT_TT_VER 230) , and horizontal ternary splitting (SPLIT_TT_HOR 240) . The multi-type tree leaf nodes are called coding units (CUs) , and unless the CU is too large for the maximum transform length, this segmentation is used for prediction and transform processing without any further partitioning. This means that, in most cases, the CU, PU and TU have the same block size in the quadtree with nested multi-type tree coding block structure. The exception occurs when maximum supported transform length is smaller than the width or height of the colour component of the CU.

[0010] Intra Mode Coding with 67 Intra Prediction Modes

[0011] To capture the arbitrary edge directions presented in natural video, the number of directional intra modes in VVC is extended from 33, as used in HEVC, to 65.

[0012] Decoder Side Intra Mode Derivation (DIMD)

[0013] When DIMD is applied, two intra modes are derived from the reconstructed neighbour samples (template) , and those two predictors are combined with the planar mode predictor using the weights derived from the gradients.

[0014] A texture gradient analysis is performed at both the encoder and decoder sides. This process starts with an empty Histogram of Gradient (HoG) with 65 entries, corresponding to the 65 angular modes. Amplitudes of these entries are determined during the texture gradient analysis.

[0015] More details can reference JVET-O0449 “Non-CE3: Decoder-side Intra Mode Derivation (DIMD) with prediction fusion using Planar” and / or “Algorithm description of Enhanced Compression Model” (for example, JVET-AG2025) and / or JVET-AB0116.

[0016] Template-based Intra Mode Derivation (TIMD)

[0017] Template-based intra mode derivation (TIMD) mode implicitly derives the intra prediction mode of a CU using a neighbouring template at both the encoder and decoder, instead of signalling the intra prediction mode to the decoder.

[0018] More details can reference “Algorithm description of Enhanced Compression Model” as disclosed in JVET-AG2025 and / or JVET-AG0092.

[0019] An Extrapolation Filter-Based Intra Prediction (EIP) Mode (from JVET-AF0080)

[0020] In JVET-AF0080 (Luhang Xu, et al., “EE2-2.7: An extrapolation filter-based intra prediction mode” , Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO / IEC JTC 1 / SC 29, 32nd Meeting, Hannover, DE, 13–20 October 2023, Document: JVET-AF0080) , the extrapolation filter-based intra prediction is disclosed, where the EIP prediction is performed in three steps.

[0021] A. Obtaining the EIP filter

[0022] The three EIP filter shapes are shown in Fig. 3, where the three filter shapes correspond to square 310, horizontal strip 320, and vertical strip 330.

[0023] There are two ways to obtain the filter coefficients for the current CU. First, the coefficients can be derived from the neighbouring reconstructed pixels. Second, they can also be inherited from the previously decoded blocks.

[0024] B. Derivation of EIP Coefficients

[0025] The decoder decodes the relevant syntax elements to determine the selected type of reconstructed area and the filter shape for the current block. The selected filter moves in the selected reconstructed area either horizontally or vertically with a one-pixel step to construct the auto-correlation matrix and the cross-correlation vector. The calculation of coefficients from the auto-correlation matrix and the cross-correlation vector is the same as that in convolutional cross-component model (CCCM) .

[0026] The three types of the reconstructed area are defined as shown in Fig. 4, where the three reconstructed areas correspond to Left-Above area (Fig. 4A) , Above area (Fig. 4B) , and Left area (Fig. 4C) . The size of the reconstructed area depends on the min (blockWidth, blockHeight) and the selected filter shape. For example, when the current block is an 8x16 block and the selected filter shape is 4x4. The aboveSize of the reconstructed area is equal to min (8, 16) + 4 –1 = 11, and the leftSize of the reconstructed area is equal to min (8, 16) + 4 –1 = 11.

[0027] C. Inheritance of the EIP filters

[0028] The filter shape and the filter coefficients can be inherited from the previous decoded blocks with EIP or EIP merge mode. The decoder decodes an EIP merge flag to decide whether the proposed merge mode is used when the current block uses the EIP mode. A merge index is further decoded when the EIP merge flag is true. The EIP merge list includes spatial adjacent and non-adjacent candidates, temporal candidates, and history candidates. The constructed EIP merge list can include up to 12 candidates and the list will be reduced to up to 6 candidates by the reordering process based on the SAD cost measured on an L-shape template with column width and row height equal to 1. In the SAD calculation, predictions of the template area by EIP filters are generated only from reconstructed (neighbouring and template) samples, allowing the EIP filters to be applied in parallel rather than sequentially.

[0029] D. Prediction of the current block

[0030] The EIP mode generates prediction values for the current block from the top-left position to the bottom-right position by a diagonal prediction order, as shown in Fig. 5.

[0031] The calculation for the prediction values in this contribution is shown as follows: where pred (x, y) is the predicted value at (x, y) in the current block, ci is the ith coefficient  of the selected EIP filter, the index of the coefficients is from 0 to 14,  is a reconstructed or a predicted value used for the current position’s prediction. offsetXi and offsetYi are the position offsets to the current position along x and y directions, respectively.

[0032] Inter Prediction

[0033] For each inter-predicted CU, motion parameters consisting of motion vectors, reference picture indices and reference picture list usage index, and additional information needed for the new coding feature of VVC to be used for inter-predicted sample generation. The motion parameter can be signalled in an explicit or implicit manner. When a CU is coded with skip mode, the CU is associated with one PU and has no significant residual coefficients, no coded motion vector delta or reference picture index. A merge mode is specified whereby the motion parameters for the current CU are obtained from neighbouring CUs, including spatial and temporal candidates, and additional schedules introduced in VVC. The merge mode can be applied to any inter-predicted CU, not only for skip mode. The alternative to merge mode is the explicit transmission of motion parameters, where motion vector, corresponding reference picture index for each reference picture list and reference picture list usage flag and other needed information are signalled explicitly per each CU.

[0034] Beyond the inter coding features in HEVC, VVC includes a number of new and refined inter prediction coding tools listed as follows: – Extended merge prediction – Merge mode with MVD (MMVD) – Symmetric MVD (SMVD) signalling – Affine motion compensated prediction – Subblock-based temporal motion vector prediction (SbTMVP) – Adaptive motion vector resolution (AMVR) – Motion field storage: 1 / 16th luma sample MV storage and 8x8 motion field compression – Bi-prediction with CU-level weight (BCW) – Bi-directional optical flow (BDOF) – Decoder side motion vector refinement (DMVR) – Geometric partitioning mode (GPM) – Combined inter and intra prediction (CIIP)

[0035] More details can be found in JVET-T2002: “Algorithm description for Versatile Video Coding and Test Model 11 (VTM 11) ” .

[0036] In the present invention, methods and apparatus to improve the performance of filter-based prediction by using residuals of a reference block or using filter parameters derived and stored for a previous reconstructed block are disclosed. BRIEF SUMMARY OF THE INVENTION

[0037] A method and apparatus for video coding are disclosed. According to this method, input data associated with a current block is received, wherein the input data comprise pixel data to be encoded at an encoder side or coded data associated with the current block to be decoded at a decoder side. A reference block of the current block is determined. Residuals of the reference block corresponding to differences between filter-predicted samples of the reference block and reconstructed samples of the reference block are determined, wherein the filter-predicted samples of the reference block are generated by applying a target filter-based intra prediction mode to the reference block. Target filter-based intra prediction associated with the target filter-based intra prediction mode is modified to target modified filter-based prediction for the current block according to the residuals of the reference block. Modified current filter-prediction is generated by applying the target modified filter-based prediction to the current block.

[0038] In one embodiment, the target filter-based intra prediction mode corresponds to EIP (Extrapolation Filter-Based Intra Prediction) . In one embodiment, the target modified filter-based prediction is determined by subtracting the residuals from or adding the residuals to current prediction. In one embodiment, the modified current filter-prediction is combined with the filter-predicted samples of the reference block to generate final prediction of the current block. In one embodiment, information associated with the target filter-based intra prediction mode comprises filter shape and filter parameters.

[0039] According to another method, stored filter parameters associated with a target filter for a filter-based prediction mode are determined, wherein the stored filter parameters are derived by matching filtered results with reconstructed samples of a previous reconstructed block, wherein the filtered results are generated by applying the target filter to prediction of a previous block. The target filter using the stored filter parameters is applied to an initial predictor of the current block to generate a current predictor for the current block. The current block is encoded or decoded using coding information comprising the current predictor.

[0040] In one embodiment, the initial predictor is generated using intra prediction or non-intra prediction. In one embodiment, the initial predictor corresponds to the reconstructed samples or predicted samples prior to current to-be-filter-predicted samples. In one embodiment, the previous reconstructed block corresponds to one or more templates of one or more previous blocks. In one embodiment, the previous reconstructed block corresponds to an adjacent reference region or a non-adjacent region.BRIEF DESCRIPTION OF THE DRAWINGS

[0041] Fig. 1A illustrates an exemplary adaptive Inter / Intra video encoding system incorporating loop processing.

[0042] Fig. 1B illustrates a corresponding decoder for the encoder in Fig. 1A.

[0043] Fig. 2 illustrates the four splitting types in multi-type tree structure, which include vertical binary splitting (SPLIT_BT_VER) , horizontal binary splitting (SPLIT_BT_HOR) , vertical ternary splitting (SPLIT_TT_VER) , and horizontal ternary splitting (SPLIT_TT_HOR) .

[0044] Fig. 3 illustrates three types of filter shapes with fifteen inputs and generate one output for EIP process.

[0045] Figs. 4A-C illustrate three types (Fig. 4A: Left-Above area, Fig. 4B: Above area, and Fig. 4C: Left area) of reconstructed areas used to derive filter coefficients for EIP.

[0046] Fig. 5 illustrates an example of scanning order for generating predictions for different positions in the current block by a diagonal order.

[0047] Fig. 6 illustrates an example of the filter shape using a pattern around (not including) the position (x, y) of the to-be-predicted sample, where the pattern is a MxN region.

[0048] Fig. 7 illustrates an example of a square MxN region excluding the region with the horizontal coordinate > x and excluding the region with the vertical coordinate > y.

[0049] Fig. 8 illustrates an example of a non-square region (M<N) excluding the region with the horizontal coordinate > x and excluding the region with the vertical coordinate > y.

[0050] Fig. 9 illustrates an example of a non-square region (M>N) excluding the region with the horizontal coordinate > x and excluding the region with the vertical coordinate > y.

[0051] Fig. 10 illustrates an example of template (i.e., neighbouring region) of the current block used for deriving filter parameters, where the template refers to top template, left template, and top-left template.

[0052] Fig. 11 illustrates an example of to-be-predicted samples near the top boundary of the current block.

[0053] Fig. 12 illustrates an example of to-be-predicted samples at the inner portion of the current block and / or far away from the top and left boundaries of the current block.

[0054] Fig. 13 illustrates an example where the filter-prediction of the current block using the target filter-based intra prediction mode is combined with filter_pred_ref and the combined filter-prediction to generate the final prediction of the current block.

[0055] Fig. 14 illustrates an example of filter derivation based on a reconstructed block by using the residuals between filter-predicted samples and reconstructed samples of the reconstructed block to modify the filter parameters for the current block.

[0056] Fig. 15 illustrates an example of using non-adjacent reference region for deriving filter parameters.

[0057] Fig. 16 illustrates a flowchart of an exemplary video coding system that uses residuals of a reference block to modify the filter-prediction for the current block according to an embodiment of the present invention.

[0058] Fig. 17 illustrates a flowchart of an exemplary video coding system that uses stored filter parameters derived by matching filtered results with reconstructed samples of a previous reconstructed block according to an embodiment of the present invention.DETAILED DESCRIPTION OF THE INVENTION

[0059] It will be readily understood that the components of the present invention, as generally described and illustrated in the figures herein, may be arranged and designed in a wide variety of different configurations. Thus, the following more detailed description of the embodiments of the systems and methods of the present invention, as represented in the figures, is not intended to limit the scope of the invention, as claimed, but is merely representative of selected embodiments of the invention. References throughout this specification to “one embodiment, ” “an embodiment, ” or similar language mean that a particular feature, structure, or characteristic described in connection with the embodiment may be included in at least one embodiment of the present invention. Thus, appearances of the phrases “in one embodiment” or “in an embodiment” in various places throughout this specification are not necessarily all referring to the same embodiment.

[0060] Furthermore, the described features, structures, or characteristics may be combined in any suitable manner in one or more embodiments. One skilled in the relevant art will recognize, however, that the invention can be practiced without one or more of the specific details, or with other methods, components, etc. In other instances, well-known structures, or operations are not shown or described in detail to avoid obscuring aspects of the invention. The illustrated embodiments of the invention will be best understood by reference to the drawings, wherein like parts are designated by like numerals throughout. The following description is intended only by way of example, and simply illustrates certain selected embodiments of apparatus and methods that are consistent with the invention as claimed herein.

[0061] Proposed Method

[0062] In this invention, a target filter-based intra prediction mode and / or a target filter-based novel prediction mode can be used to generate the prediction for an intra block or a non-intra block which refers to inter and / or block-vector mode. For example, the block-vector mode refers to intra block copy or intra TMP, which searches in a pre-defined region of the current picture and finds a reference block (with the template of the reference block matching well with the template of the current block) in the pre-defined region to predict the current block. For obtaining the filter using in the target-based intra prediction mode or the target-based novel prediction mode, one way is from the derived path and / or another way is from the inheriting path.

[0063] When using the target filter-based intra prediction mode or the target-based novel prediction mode for the current block, obtaining an efficient filter can make the coding performance better. Therefore, several embodiments are proposed to obtain an efficient filter for the current block. In one embodiment, the target filter-based intra prediction mode is EIP. In another embodiment, the target filter-based intra prediction mode is not limited to EIP shown in the background section and / or can be any variation of filter-based intra prediction mode. In section (1) , several variations of filter-based intra prediction modes are proposed to be the target filter-based intra prediction mode. In section (2) , target filter-based novel prediction mode is described. In section (3) , methods of obtaining efficient filters are proposed. In section (4) , several methods are proposed to define the storage rules of the target filter-based intra prediction mode or the target filter-based novel prediction mode.

[0064] (1) Target Filter-Based Intra Prediction Mode

[0065] A filter (or model) of the target filter-based intra prediction mode includes a filter shape and / or determination of filter parameters. After deciding a filter shape among one or more candidate filter shapes and / or a determination of filter parameters among one or more candidate determinations of filter parameters, the filter of the current block is obtained. For each to-be-filter-predicted sample of the current block, the filter is applied. In one embodiment, the filter is applied following a pre-defined order such as horizontal scanning, vertical scanning, diagonal scanning, and / or any scanning order. For example, the pre-defined order is diagonal scanning. That is, the predicted sample located at the position in the first of the diagonal scanning for the current block is outputted first. Then, the predicted sample located at the position in the second, third, …, n-th of the diagonal scanning for the current block is outputted in order, where n corresponds to the block size. When applying the filter, the input of the filter is combined (or convolved) with the filter parameters to get the output of the filter. In one embodiment, the input samples refer to reconstructed and / or filter-predicted and / or predicted samples associated with the current block and / or reconstructed and / or filter-predicted and / or predicted samples associated with the reference region reconstructed prior to or neighbouring to the current block. Finally, after applying the filter to each to-be-filter-predicted sample in the current block, the filter-prediction of the current block, which can be used to generate the final prediction of the current block, is obtained.

[0066] In one embodiment, the filter shape uses a pattern around (not including) the position (x, y) of the to-be-filter-predicted sample. The pattern is a MxN region or any subset of the MxN region around the to-be-filter-predicted sample where M is a first pre-defined positive number larger than 1 and N is a second pre-defined positive number larger than 1. Fig. 6 shows an example of the MxN region.

[0067] In one sub-embodiment, M and N can be the same or different. For example, M and N are equal to 1, 2, 3, 4, …, or any number specified in the standard. For another example, M is larger than N if the current block has the block width larger than the block height. For another example, N is larger than M if the current block has the block height larger than the block width. For another example, M and / or N are adaptive according to the position (x, y) .

[0068] In another sub-embodiment, the subset of the MxN region can be the MxN region (a) excluding the region with the horizontal coordinate > x and / or, (b) excluding the region with the vertical coordinate > y. In this example, the subset of MxN is the MxN region with (a) + (b) and M is equal to N. Therefore, the MxN region is square. The proposed method of subset of the MxN region is not limited to using in the case of M equal to N and / or can be applied to the case of M > N and / or N > M. For another example, the subset of MxN is the MxN region with (a) + (b) and M > N. For another example, the subset of MxN is the MxN region with (a) + (b) and N > M.

[0069] An example of the MxN region (square) excluding the region with the horizontal coordinate > x and excluding the region with the vertical coordinate > y is shown in Fig. 7. An example of the MxN region (non-square, M < N) excluding the region with the horizontal coordinate > x and excluding the region with the vertical coordinate > y is shown in Fig. 8. An example of the MxN region (non-square, M > N) excluding the region with the horizontal coordinate > x and excluding the region with the vertical coordinate > y is shown in Fig. 9.

[0070] In another embodiment, multiple filter shapes are supported and the selection from the multiple filter shapes depends on the explicit signalling at the block-level, CTU-level, slice-level, tile-level, SPS-level, PPS-level, picture-level (for example, picture header) , and / or sequence-level. If the total number of the candidate filter shapes in a list containing multiple filter shapes is K, a syntax is signalled to select a filter shape. For example, the syntax is truncated unary coding. A shortest codeword is used to indicate the first candidate filter shape in the list.

[0071] In another embodiment, multiple determinations of filter parameters are supported and the selection from the multiple determinations of filter parameters depends on the explicit signalling at the block-level, CTU-level, slice-level, tile-level, SPS-level, PPS-level, picture-level (for example, picture header) , and / or sequence-level.

[0072] In another embodiment, the determination of filter parameters can be the derived path “deriving filter parameters using the template (neighbouring region) of the current block” and / or the inheriting path “inheriting filter information from the previously-coded blocks” . In one sub-embodiment, the selection between deriving filter parameters using the template (neighbouring region) of the current block and inheriting filter information from the previously-coded blocks depends on the explicit signalling at the block-level, CTU-level, slice-level, tile-level, SPS-level, PPS-level, picture-level (for example, picture header) , and / or sequence-level.

[0073] In one sub-embodiment, in response to deriving filter parameters using the template (neighbouring region) of the current block, the golden (i.e., a target for comparison) is the reconstructed samples on the template of the current block and the goal is to make the filtering result match the golden on the template. Any method to minimize the difference between the golden and the filter result can be used to get the filer parameters whose filtering result achieves a good matching with the golden. For example, a regression-based method such as Gaussian elimination and / or any regression method unified with the methods of deriving cross-component models for the cross-component chroma modes can be used. For example, chroma component samples can be predicted from corresponding reconstructed luma samples. The model parameters can be derived by minimizing the regression error between neighbouring luma and chroma samples.

[0074] In another sub-embodiment, in response to deriving filter parameters using the template (neighbouring region) of the current block, the template refers to top template, left template, top-left template, and / or any combination of the above-mentioned templates as shown in Fig. 10. The selection of the template among multiple candidate templates can depend on the width, height, area, and / or position of the current block. For example, if the position of the current block is located at the top of picture boundary and / or the top of a CTU row boundary, the top template and / or the top-left template is not used for deriving filter parameters. For example, if the position of the current block is located at the left of picture boundary and / or the left of a CTU boundary, the left template and / or the top-left template is not used for deriving filter parameters. For another example, different templates for deriving filter parameters refer to multiple determinations of filter parameters. The selection from the multiple determinations of filter parameters depends on the explicit signalling at the block-level, CTU-level, slice-level, tile-level, SPS-level, PPS-level, picture-level (for example, picture header) , and / or sequence-level. For example, the size of the template depends on the block position. When the block is at the right picture boundary or any-pre-defined boundary, the top template does not include the template region outside of the current picture or any pre-defined range. When the block is at the bottom picture boundary or any-pre-defined boundary, the left template does not include the template region outside of the current picture or any pre-defined range.

[0075] In another sub-embodiment, in response to inheriting filter information from the previously-coded blocks, the filter information for the previously-coded block is used to decide the filter of the current block. The filter information includes the filter shape, filter parameters, partial filter parameters, or any combination of them. The previously-coded block can be located in the area, reconstructed before the current block, of the picture (or frame) the same as the current block or can be located in the area of the picture reconstructed before the current picture (for example, the collocated picture of the current block) . For example, the filter information is inherited from the previously-coded block through spatial adjacent candidates (including a left neighbouring block and / or an above neighbouring block) and / or spatial non-adjacent candidates, and / or history-based candidates, and / or temporal candidates, and / or propagation candidates. Spatial adjacent candidates can be from the left, above, above-left, above-right, bottom-left neighbouring blocks of the current block, any subset of the above-mentioned positions, or any combination of them.

[0076] Spatial non-adjacent candidates can be from any pre-defined positions in a search pattern around the current block, and / or any subset of the above-mentioned positions. History-based candidates can be from a history buffer which stores filter information of the previously-coded blocks. The history buffer is empty at a pre-defined schedule. For example, the history buffer is empty at the beginning or the end of a slice, CTU / CTB, CTU / CTB row, picture, tile, sequence, and / or any pre-defined unit. Temporal candidates can be from a buffer which stores the filter information at a referred reference position in the reference frame (or reference picture) and / or a pre-defined collocated picture, and / or stores the filter information at any pre-defined positions nearing the referred reference position. For example, the referred reference position is the collocated block in the collocated picture as inter prediction. For another example, the referred reference position is indicated using the motion information of the neighbouring blocks or any pre-defined blocks associated with the current block.

[0077] Propagation candidates can be from the filter information at one or more reference positions referred by the motion information of the neighbouring blocks or any pre-defined blocks associated with the current block. In one case, a pre-defined order is specified to check all or any subset of the above-mentioned inherited candidates. If one inherited candidate cannot find the filter information, this inherited candidate is bypassed. The first available filter information is used for the current block. In another case, a list, including multiple inherited candidates, is built. For example, the list size is fixed at a pre-defined number which specifies in the standard. A pre-defined order is set to insert all or any subset of the above-mentioned inherited candidates into the list. If all or any subset of the above-mentioned inherited candidates cannot find enough filter information to put into the list, default filter information is inserted. For another example, the list size is adaptive according to how much filter information can be found using the all or any subset of the above-mention inherited candidates.

[0078] One way to select the inherited filter information from the list is as follows. If the total number of the inherited candidates in the list containing multiple inherited candidates is K, a syntax is signalled to select an inherited filter information from the original list or a reordered list. For example, the syntax is truncated unary coding. A shortest codeword is used to indicate the first candidate in the list. One example of reordering the list is as follows. The list is reordered (or sorted) according to the measurement for each candidate on the template. For example, the measurement for a candidate depends on the distortion between the reconstructed sample of the template and the predicted samples of the template which was generated by applying the filter information of this candidate to the template. The candidate with a smaller distortion on the template can be treated as a promising candidate during the measurement. The promising candidates are reordered to be put in the front of the list. One variation is that the syntax is not required to indicate a candidate from the reordered list. During the measurement, only the most promising candidate is kept and after checking each candidate in the list, the most promising candidate which has the smallest distortion is selected for the current block.

[0079] In another embodiment, when generating the to-be-filter-predicted samples at the top-left sample of the current block, all input samples of the filtering use the reconstructed samples neighbouring to the current block. When generating the to-be-filter-predicted samples near the top and / or left boundary of the current block, partial of the input samples of the filtering use the reconstructed samples neighbouring to the current block and partial of the input samples of the filtering use the previously-predicted samples within the current block. When generating the to-be-filter-predicted samples at the inner portion of the current block, and / or far away from the top / left boundaries of the current block, all input samples of the filtering use the previously-predicted samples of the current block.

[0080] Fig. 11 illustrates an example of to-be-predicted samples near the top boundary of the current block. Fig. 12 illustrates an example of to-be-predicted samples at the inner portion of the current block and / or far away from the top and left boundaries of the current block.

[0081] In another embodiment, the target filter-based intra prediction mode is used to generate the luma predictor. Therefore, the current block refers to the luma component. For an example of using single tree structure, the current block is a luma coding block (CB) in a coding unit consisting of one or more luma CBs and one or more chroma CBs. For another example of using dual tree structure, the current block is a luma coding block (CB) in a coding unit consisting of one or more luma CBs.

[0082] In another embodiment, the target filter-based intra prediction mode is used to generate the chroma predictor. Therefore, the current block refers to one or more chroma components such as Cb and / or Cr. For an example of using single tree structure, the current block is a chroma coding block (CB) in a coding unit consisting of one or more luma CBs and one or more chroma CBs. For another example of using dual tree structure, the current block is a chroma coding block (CB) in a coding unit consisting of one or more chroma CBs.

[0083] (2) Target Filter-Based Novel Prediction Mode

[0084] When the current block belongs to a non-intra coding mode, a block vector information (including block vectors) and / or motion vector information (including motion vectors and / or reference pictures) refers to a reference block. If the non-intra coding mode of the current block is inter, the motion information of the current block refers to the reference block in the reference picture or any pre-defined collocated picture of the current picture which is different from the current picture. If the non-intra coding mode of the current block is intra block copy (IBC) and / or intra TMP, which searches in a pre-defined region and finds a reference block (with the template of the reference block matching well with the template of the current block) in the pre-defined region to predict the current block, the block vector information of the current block refers to the reference block in the current picture. Similar to the target filter-based intra prediction mode, a filter (including a filter shape and / or determination of filter parameters) of the reference block of the current block is decided. In one embodiment, for the filter of the reference block, the determination of filter parameters can be derived using the template (neighbouring region) of the reference block as applying the derivation process in the derived path on the template of the reference block instead of the current block and / or inheriting filter information from the previously-coded blocks as applying the inheriting process in the inheriting path for the reference block instead of the current block. For example, the spatial adjacent or non-adjacent candidate in the list can be from the block adjacent or non-adjacent to the reference block. Then, the filter of the reference block is used to derive the filter-prediction of the reference block (denoted as filter_pred_ref) , which can be used to generate the final prediction of the current block. The details of deriving filter_pred_ref on the reference block is unified as applying the filter to each to-be-filter-predicted sample in the current block in section (1) and the main difference is that here the operation is performed for the reference block.

[0085] In one embodiment, residuals (R) of the reference block by comparing filter_pred_ref and the reconstructed samples of the reference block are generated and used to modify the filter-prediction of the current block using the target filter-based intra prediction mode. For example, the residuals are calculated as the difference between filter_pred_ref and the reconstructed samples of the reference block and the filter-prediction from the target filter-based intra prediction mode is adjusted by adding or subtracting the residuals. The adjusted filter-prediction is used to generate the final prediction of the current block.

[0086] In another embodiment, the filter-prediction of the current block using the target filter-based intra prediction mode is combined with filter_pred_ref and the combined filter-prediction is used to generate the final prediction of the current block as shown in Fig. 13.

[0087] (3) Obtaining Efficient Filters

[0088] The efficient filters of the current block can be obtained according to previous blocks. In one embodiment, for a reconstructed block prior to the current block, a filter between the prediction 1422 and the reconstruction 1424 of the reconstructed block is derived (in process 1426) as shown in process 1420 in Fig. 14. In response to deriving filter parameters using the reconstructed block, the golden is the reconstructed samples on the reconstructed block and the goal is to make the filtering result match the golden. For example, a filter is applied to the valid prediction samples (marked by slash lines) neighbouring to position (i, j) 1440, the goal is to derive the filter parameters to minimize the difference between the filtering result (marked by backslash lines) 1450 and the reconstruction value at position (i, j) , where (i, j) can be any position inside the current block. Any method to minimize the difference between the golden and the filter result can be used to get the filer parameters whose filtering result achieves a good matching with the golden. For example, a regression-based method such as Gaussian elimination and / or any regression method unified with the methods of deriving cross-component models for the cross-component chroma modes (such as the cross-component chroma modes or any cross-component chroma mode in the standard) and / or the methods of deriving the filter for the target filter-based intra or novel prediction modes can be used. The derived filter is stored for the reconstructed block in Filter buffer 1430. Then, the current block can obtain the stored filter of the reconstructed block through the inheriting path and / or use the obtained filter to generate the filter-prediction 1414 of the current block as shown in process 1410.

[0089] In one way, when generating the filter-prediction of the current block, the input of the filter is the initial predictor of the current block. The initial prediction 1412 may refer to intra prediction or non-intra prediction, such as motion compensation predictors or block-vector predictors. In another way, when generating the filter-prediction of the current block, the input of the filter is the reconstructed samples or predicted samples prior to the current to-be-filter-predicted sample. The initial prediction may refer to intra prediction or non-intra prediction, such as motion compensation predictors or block-vector predictors. In one embodiment, there are some constraints of deriving the filter on the reconstructed block. The constraint may depend on the coding mode, block position, block width, block height, and / or block area of the reconstructed block. For example, when the reconstructed block is not intra coded, the efficient filter is not derived on the reconstructed block. For another example, when the width, height, and / or area of the reconstructed block is smaller than a pre-defined threshold, the efficient filter is not derived on the reconstructed block. In another embodiment, the reconstructed block can refer to a CB / CU, a TB / TU, any pre-defined region, each CB / CU, or each TB / TU.

[0090] The efficient filters of the current block can be obtained according to the template of previous blocks. In one embodiment, for a reconstructed block prior to the current block, a filter between the prediction and the reconstruction of the template of the reconstructed block is derived. In response to deriving filter parameters using the template of the reconstructed block, the golden is the reconstructed samples on the template of the reconstructed block and the goal is to make the filtering result match the golden. Any method to minimize the difference between the golden and the filter result can be used to get the filer parameters whose filtering result achieves a good matching with the golden. For example, a regression-based method such as Gaussian elimination, any regression method unified with the methods of deriving cross-component models for the cross-component chroma modes (such as the cross-component chroma modes and / or any cross-component chroma mode in the standard) and / or the methods of deriving the filter for the target filter-based intra or novel prediction modes can be used. The derived filter is stored for the reconstructed block. Then, the current block can obtain the stored filter of the reconstructed block (derived on the template of the reconstructed block) through the inheriting path and / or use the obtained filter to generate the filter-prediction of the current block.

[0091] When generating the filter-prediction of the current block in section (1) , the output filtering results at a position can be the filtering input at another position of the current block. In one embodiment, there are some constraints of deriving the filter on the template of the reconstructed block. The constraint may depend on the coding mode, block position, block width, block height, and / or block area of the reconstructed block. For example, when the reconstructed block is not intra coded, the efficient filter is not derived on the template of the reconstructed block. For another example, when the width, height, and / or area of the reconstructed block is smaller than a pre-defined threshold, the efficient filter is not derived on the template of the reconstructed block. In another embodiment, the reconstructed block can refer to a CB / CU, a TB / TU, any pre-defined region, each CB / CU, or each TB / TU.

[0092] In another embodiment, the efficient filter of the current block can be obtained from an adjacent and / or non-adjacent reference region of the current block as shown in Fig. 15. The adjacent reference region 1510 can be any reference region reconstructed prior to and adjacent to the current block in the current picture. The non-adjacent reference region 1520 can be any reference region reconstructed prior to and non-adjacent to the current block in the current picture or any pre-defined reference picture (different from the current picture) . A sub-region 1530 in the reference region is accessed to derive the efficient filter. Then, the current block can obtain the derived filter from the sub-region. The derivation is to make the derived filter be able to have the output matching well to the reconstruction of the sub-region. In response to deriving filter parameters using the sub-region, the golden is the reconstructed samples on the sub-region and the goal is to make the filtering result match the golden. Any method to minimize the difference between the golden and the filtered result can be used to get the filer parameters whose filtering result achieves a good matching with the golden. For example, a regression-based method such as Gaussian elimination, any regression method unified with the methods of deriving cross-component models for the cross-component chroma modes (such as the cross-component chroma modes and / or any cross-component chroma mode in the standard) and / or the methods of deriving the filter for the target filter-based intra or novel prediction modes can be used. Then the current block uses the obtained filter to generate the filter-prediction of the current block.

[0093] In one way, when generating the filter-prediction of the current block, the input of the filter is the initial predictor of the current block. The initial prediction may refer to intra prediction or non-intra prediction such as motion compensation predictors or block-vector predictors. In another way, when generating the filter-prediction of the current block, the input of the filter is the reconstructed samples or predicted samples prior to the current to-be-filter-predicted sample. In one embodiment, there are some conditions of determining the sub-region. The determination of the sub-region may depend on the coding mode, block position, block width, block height, and / or block area of the sub-region. For example, the sub-region should be intra coded and then the sub-region can be used to derive the efficient filter. For another example, the sub-region should have the width, height, and / or area larger than a pre-defined threshold, and then the sub-region can be used to derive the efficient filter.

[0094] (4) Storage Rule of Target Filter-Based Intra Prediction Mode or Target Filter-Based Novel Prediction Mode for The Current Block

[0095] All or any subset of the filter information {filter shape and / or filter parameters} is stored for the current block, and / or for subsequent blocks, all or any subset of the filter information {filter shape and / or filter parameters} can be referenced. For example, the stored filter information of the current block can be inherited by the subsequent block in the inheriting path of a subsequent block. With the proposed methods in section (3) , the stored filter information may be obtained from an efficient filter.

[0096] The proposed methods in this invention can be enabled and / or disabled according to implicit rules (e.g. block width, height, or area) or according to explicit rules (e.g. syntax on block, tile, slice, picture, SPS, or PPS level) . For example, the proposed method is applied when the block area is smaller / larger than a threshold.

[0097] The term “block” in this invention can refer to TU / TB, CU / CB, PU / PB, pre-defined region, or CTU / CTB.

[0098] Any combination of the proposed methods in this invention can be applied.

[0099] Any of the foregoing proposed methods of filter derivation can be implemented in encoders and / or decoders. For example, any of the proposed methods can be implemented in an inter and / or intra and / or IBC and / or prediction and / or transform module of an encoder, and / or an inter and / or intra and / or IBC and / or prediction and / or transform module of a decoder. Alternatively, any of the proposed methods can be implemented as a circuit coupled to the inter and / or intra and / or IBC and / or prediction and / or transform module of the encoder, and / or the inter and / or intra and / or IBC and / or prediction and / or transform module of the decoder, so as to provide the information needed by the inter and / or intra and / or IBC and / or prediction and / or transform module. With reference to the encoder and decoder in Fig. 1A and Fig. 1B, any of the proposed methods can be implemented in an inter / intra / prediction / transform module (e.g. Intra Pred. 110 and / or Inter Pred. 112 in Fig. 1A) of an encoder, and / or an inter / intra / prediction / transform module (e.g. Intra Pred. 150 and / or MC 152 in Fig. 1B) of a decoder.

[0100] Fig. 16 illustrates a flowchart of an exemplary video coding system that uses residuals of a reference block to modify the filter-prediction for the current block according to an embodiment of the present invention. The steps shown in the flowchart may be implemented as program codes executable on one or more processors (e.g., one or more CPUs) at the encoder side and / or decoder side. The steps shown in the flowchart may also be implemented based hardware such as one or more electronic devices or processors arranged to perform the steps in the flowchart. According to this method, input data associated with a current block are received in step 1610, wherein the input data comprise pixel data to be encoded at an encoder side or coded data associated with the current block to be decoded at a decoder side. A reference block of the current block is determined in step 1620. Residuals of the reference block corresponding to differences between filter-predicted samples of the reference block and reconstructed samples of the reference block are determined in step 1630, wherein the filter-predicted samples of the reference block are generated by applying a target filter-based intra prediction mode to the reference block. Target filter-based intra prediction associated with the target filter-based intra prediction mode is modified to target modified filter-based prediction for the current block according to the residuals of the reference block in step 1640. Modified current filter-prediction is generated by applying the target modified filter-based prediction to the current block in step 1650.

[0101] Fig. 17 illustrates a flowchart of an exemplary video coding system that uses stored filter parameters derived by matching filtered results with reconstructed samples of a previous reconstructed block according to an embodiment of the present invention. According to this method, input data associated with a current block are received in step 1710, wherein the input data comprise pixel data to be encoded at an encoder side or coded data associated with the current block to be decoded at a decoder side. Stored filter parameters associated with a target filter for a filter-based prediction mode are determined in step 1720, wherein the stored filter parameters are derived by matching filtered results with reconstructed samples of a previous reconstructed block, wherein the filtered results are generated by applying the target filter to prediction of a previous block. The target filter using the stored filter parameters is applied to an initial predictor of the current block to generate a current predictor for the current block in step 1730. The current block is encoded or decoded using coding information comprising the current predictor in step 1740.

[0102] The flowcharts shown are intended to illustrate an example of video coding according to the present invention. A person skilled in the art may modify each step, re-arranges the steps, split a step, or combine steps to practice the present invention without departing from the spirit of the present invention. In the disclosure, specific syntax and semantics have been used to illustrate examples to implement embodiments of the present invention. A skilled person may practice the present invention by substituting the syntax and semantics with equivalent syntax and semantics without departing from the spirit of the present invention.

[0103] The above description is presented to enable a person of ordinary skill in the art to practice the present invention as provided in the context of a particular application and its requirement. Various modifications to the described embodiments will be apparent to those with skill in the art, and the general principles defined herein may be applied to other embodiments. Therefore, the present invention is not intended to be limited to the particular embodiments shown and described, but is to be accorded the widest scope consistent with the principles and novel features herein disclosed. In the above detailed description, various specific details are illustrated in order to provide a thorough understanding of the present invention. Nevertheless, it will be understood by those skilled in the art that the present invention may be practiced.

[0104] Embodiment of the present invention as described above may be implemented in various hardware, software codes, or a combination of both. For example, an embodiment of the present invention can be one or more circuit circuits integrated into a video compression chip or program code integrated into video compression software to perform the processing described herein. An embodiment of the present invention may also be program code to be executed on a Digital Signal Processor (DSP) to perform the processing described herein. The invention may also involve a number of functions to be performed by a computer processor, a digital signal processor, a microprocessor, or field programmable gate array (FPGA) . These processors can be configured to perform particular tasks according to the invention, by executing machine-readable software code or firmware code that defines the particular methods embodied by the invention. The software code or firmware code may be developed in different programming languages and different formats or styles. The software code may also be compiled for different target platforms. However, different code formats, styles and languages of software codes and other means of configuring code to perform the tasks in accordance with the invention will not depart from the spirit and scope of the invention.

[0105] The invention may be embodied in other specific forms without departing from its spirit or essential characteristics. The described examples are to be considered in all respects only as illustrative and not restrictive. The scope of the invention is therefore, indicated by the appended claims rather than by the foregoing description. All changes which come within the meaning and range of equivalency of the claims are to be embraced within their scope.

Claims

1.A method of video coding, the method comprising:receiving input data associated with a current block, wherein the input data comprise pixel data to be encoded at an encoder side or coded data associated with the current block to be decoded at a decoder side;determining a reference block of the current block;determining residuals of the reference block corresponding to differences between filter-predicted samples of the reference block and reconstructed samples of the reference block, wherein the filter-predicted samples of the reference block are generated by applying a target filter-based intra prediction mode to the reference block;modifying target filter-based intra prediction associated with the target filter-based intra prediction mode to target modified filter-based prediction for the current block according to the residuals of the reference block; andgenerating modified current filter-prediction by applying the target modified filter-based prediction to the current block.2.The method of Claim 1, wherein the target filter-based intra prediction mode corresponds to EIP (Extrapolation Filter-Based Intra Prediction) .3.The method of Claim 1, wherein the target modified filter-based prediction is determined by subtracting the residuals from or adding the residuals to current prediction.4.The method of Claim 1, wherein the modified current filter-prediction is combined with the filter-predicted samples of the reference block to generate final prediction of the current block.5.The method of Claim 1, wherein information associated with the target filter-based intra prediction mode comprises filter shape and filter parameters.6.An apparatus for video coding, the apparatus comprising one or more electronics or processors arranged to:receive input data associated with a current block, wherein the input data comprise pixel data to be encoded at an encoder side or coded data associated with the current block to be decoded at a decoder side;determine a reference block of the current block;determine residuals of the reference block corresponding to differences between filter-predicted samples of the reference block and reconstructed samples of the reference block, wherein the filter-predicted samples of the reference block are generated by applying a target filter-based intra prediction mode to the reference block;modify target filter-based intra prediction associated with the target filter-based intra prediction mode to target modified filter-based prediction for the current block according to the residuals of the reference block; andgenerate modified current filter-prediction by applying the target modified filter-based prediction to the current block.7.A method of video coding, the method comprising:receiving input data associated with a current block, wherein the input data comprise pixel data to be encoded at an encoder side or coded data associated with the current block to be decoded at a decoder side;determining stored filter parameters associated with a target filter for a filter-based intra prediction mode, wherein the stored filter parameters are derived by matching filtered results with reconstructed samples of a previous reconstructed block, wherein the filtered results are generated by applying the target filter to prediction of a previous block;applying the target filter using the stored filter parameters to an initial predictor of the current block to generate a current predictor for the current block; andencoding or decoding the current block using coding information comprising the current predictor.8.The method of Claim 7, wherein the target filter for the filter-based intra prediction mode corresponds to EIP (Extrapolation Filter-Based Intra Prediction) .9.The method of Claim 7, wherein the initial predictor is generated using intra prediction or non-intra prediction.10.The method of Claim 7, wherein the initial predictor corresponds to the reconstructed samples or predicted samples prior to current to-be-filter-predicted samples.11.The method of Claim 7, wherein the previous reconstructed block corresponds to one or more templates of one or more previous blocks.12.The method of Claim 7, wherein the previous reconstructed block corresponds to an adjacent reference region or a non-adjacent region.13.An apparatus for video coding, the apparatus comprising one or more electronics or processors arranged to:receive input data associated with a current block, wherein the input data comprise pixel data to be encoded at an encoder side or coded data associated with the current block to be decoded at a decoder side;determine stored filter parameters associated with a target filter for a filter-based intra prediction, wherein the stored filter parameters are derived by matching filtered results with reconstructed samples of a previous reconstructed block, wherein the filtered results are generated by applying the target filter to prediction of a previous block;apply the target filter using the stored filter parameters to an initial predictor of the current block to generate a current predictor for the current block; andencode or decode the current block using coding information comprising the current predictor.

Citation Information

Patent Citations

  • Method and apparatus for intra prediction mode using intra prediction filter in video and image compression

    CN109076237A

  • Adaptive filter intra prediction modes in image / video compression

    US20200275095A1

  • Upsampling reference pixels for intra-prediction in video coding

    US20220394273A1

  • Image coding method, image decoding method, and related apparatus

    WO2022022622A1