Methods and apparatus of intra merge mode with derived modes in video coding

By inheriting information from previous coded blocks, the method addresses inefficiencies in deriving intra prediction modes in VVC, enhancing compression efficiency and reducing computational load in video coding systems.

WO2026001936A1PCT designated stage Publication Date: 2026-01-02MEDIATEK INC
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
PCT/CN2025/102949
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-06-26
Filing Date
2025-06-24
Publication Date
2026-01-02

AI Technical Summary

Technical Problem

Existing video coding systems face challenges in efficiently deriving intra prediction modes, particularly in versatile video coding (VVC), as they often require complex and resource-intensive processes to determine optimal prediction modes, leading to suboptimal compression efficiency and increased computational load.

Method used

The proposed method involves deriving decoder-derived intra prediction (DIP) merge modes by inheriting information from previous coded blocks, utilizing inheritance information settings and block settings to generate prediction, and employing validity checks to refine candidate selection.

Benefits of technology

This approach enhances intra prediction efficiency by reducing computational complexity and improving compression performance, leading to better video quality and reduced resource utilization.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2025102949_02012026_PF_FP_ABST
    Figure CN2025102949_02012026_PF_FP_ABST
Patent Text Reader

Abstract

A method and apparatus for video coding using derived candidates. According to this method, input data associated with a current block is received, wherein the input data comprises pixel data to be encoded at an encoder side or data associated with the current block to be decoded at a decoder side. To determine prediction information, at least one of the following is performed: whether a target candidate with candidate prediction information satisfies validity checking is checked and one or more derived candidates are derived by modifying inheritance information associated with an existing merge candidate. Prediction of the current block is generated using the determined prediction information. The current block is encoded or decoded by using the generated prediction.
Need to check novelty before this filing date? Find Prior Art

Description

METHODS AND APPARATUS OF INTRA MERGE MODE WITH DERIVED MODES IN VIDEO CODINGCROSS 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 / 664, 445, filed on June 26, 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 derivation of derived modes in a video coding system. 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 110, 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 some of the functional blocks as the encoder. For example, the decoder can reuse Inverse Quantization 124 and Inverse Transform 126; however, Transform 118 and Quantization 120 are not needed at the decoder. 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] I. RELATED ART

[0008] I. 1 Intra Mode Coding with 67 Intra Prediction Modes

[0009] In VVC, several conventional angular intra prediction modes are adaptively replaced with wide-angle intra prediction modes for the non-square blocks.

[0010] I. 2 Intra Mode Coding

[0011] The most probable mode (MPM) list is generated by considering two available neighbouring intra modes.

[0012] I. 3 Decoder-side Intra Mode Derivation (DIMD)

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

[0014] A texture gradient analysis is performed at both 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] Figs. 2A-C show an example of HoG, calculated after applying the above operations on all pixel positions in the template. Fig. 2A illustrates an example of selected template 220 for a current block 210. Template 220 comprises T lines above the current block and T columns to the left of the current block. For intra prediction of the current block, the area 230 at the above and left of the current block corresponds to a reconstructed area and the area 240 below and at the right of the block corresponds to an unavailable area. Fig. 2B illustrates an example for T=3 and the HoGs are calculated for pixels 260 in the middle line and pixels 262 in the middle column. For example, for pixel 252, a 3x3 window 250 is used. Fig. 2C illustrates an example of the amplitudes (ampl) calculated for the angular intra prediction modes.

[0016] 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.

[0017] I. 4 Template-based Intra Mode Derivation (TIMD)

[0018] Template-based intra mode derivation (TIMD) mode implicitly derives the intra prediction mode of a CU by a neighbouring template at both the encoder and decoder, instead of signalling intra prediction mode bits to the decoder. The prediction samples of the template are generated using the reference samples of the template for each candidate mode. A cost is calculated as the SATD between the prediction and the reconstruction samples of the template. First two intra prediction modes with the minimum SATD are selected as the TIMD modes. These two TIMD modes are fused with weights to generate prediction for the current CU. More details can reference “Algorithm description of Enhanced Compression Model” (for example, JVET-AG2025) and / or JVET-AG0092.

[0019] I. 5 Extrapolation Filter-Based Intra Prediction (EIP) Mode

[0020] In the EIP mode, the samples in a CU are predicted from the top-left position to the bottom-right position by applying an extrapolation filter to neighbouring reconstructed samples or predicted samples. The EIP mode uses a 15-tap filter for prediction as below: 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 offsetYiare the position offsets to the current position along x and y directions, respectively.

[0021] 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. The three types of the reconstructed area are defined as shown in Fig. 4, where the three reconstructed areas correspond to Left-Above area (i.e., EIP_LT) (Fig. 4A) , Above area (i.e., EIP_T) (Fig. 4B) , and Left area (i.e., EIP_L) (Fig. 4C) . The size of the reconstructed area depends on the min (blockWidth, blockHeight) and the selected filter shape.

[0022] For a CU coded in the EIP mode, an EIP merge flag is signalled to indicate whether the EIP filter is inherited from previous blocks coded in EIP mode. When the EIP merge flag is true, an EIP merge list is constructed. An EIP merge index is further signalled to indicate which EIP merge candidate is selected. The filter shape and the filter coefficients of the selected candidate are then inherited to code the CU.

[0023] When the EIP merge flag is false, the EIP filter is derived from the neighbouring reconstructed samples and the relevant syntax element is signalled to indicate which one of the three types of reconstructed area and which one of the three filter shapes are used for the CU.

[0024] After generating the prediction samples of the CU using the EIP filter, an intra prediction mode is derived by applying the DIMD process to the prediction samples. Specifically, a horizontal gradient and a vertical gradient are calculated for each predicted sample to build a histogram of gradient. Then the intra prediction mode corresponding to the largest histogram count is used to determine the Low Frequency Non-Separable Transform (LFNST) , Non-separable Primary Transform (NSPT) or Multiple Transform Selection (MTS) transform set.

[0025] I. 6 Template-based Multiple Reference Line Intra Prediction

[0026] Template-based multiple reference line intra prediction (TMRL) mode combines reference line and prediction mode together and uses a template matching method to construct a list of candidate combinations. An index to the candidate combination list is signalled.

[0027] The extended reference line starts from reference line 1. Reference line 0 is used for template matching. The SAD costs (TMRL costs) over the template area are calculated between the predictions (generated by 50 combinations) and the reconstructions as shown in Fig. 5. The 20 combinations with the least SAD cost are selected in an ascending order to form the TMRL candidate list.

[0028] I. 7 Intra-prediction Using Merged Histogram of Gradients

[0029] In JVET-AG0078, it proposes to add a new intra prediction mode, referred to as Merged Intra Mode Derivation (MIMD) , based on the computation of a Merged Histogram of Gradients (MHoG) . Similar to DIMD, up to five MIMD modes are derived from the MHoG and are then blended together. The derivation of the modes and blending weights follows the same process to derive DIMD modes and blending weights from the HoG. But differently than DIMD, the MHoG is not computed directly analysing the template samples, but rather is computed based on information extracted from neighbouring blocks. MIMD may be signalled or viewed as a sub-mode of DIMD. More details can be found in JVET-AG0078.

[0030] I. 8 Occurrence-Based Intra Coding (OBIC)

[0031] The Occurrence-based intra coding (OBIC) method is disclosed which derives the intra prediction modes of the current block based on the sample-wise occurrence of the intra modes in the spatial neighbourhood of the block. For this, adjacent and non-adjacent spatial neighbouring blocks are checked and the intra prediction modes of the blocks are collected into an occurrence histogram. Instead of Histogram of Gradient (HoG) as in DIMD, the OBIC introduces the Histogram of oCcurrence (HoC) , which consists of the intra modes and their sample-wise occurrences. The occurrence values are calculated based on the number of samples that are coded in a certain intra prediction mode in that neighbourhood. For example, if a uiWidth × uiHeight block is coded with an IPM mode, the occurrence of the mode in that particular block is calculated as: HoC [IPM] += uiWidth *uiHeight; where uiWidth and uiHeight are the width and height of a spatial neighbouring block.

[0032] The occurrences of the existing modes from the spatial neighbourhood blocks are accumulated into the histogram.

[0033] Up to 5 angular modes with the highest occurrence along with the planar mode or block vector based prediction (similar to DIMD) are selected from the HoC and used for final prediction by blending the prediction of the selected modes.

[0034] The blending weights are calculated similar to the DIMD mode, but instead of using gradient values from the template, the occurrence values are used for OBIC. More details are in JVET-AH0076.

[0035] In the present invention, methods and apparatus to derive candidates for decoder-derived intra prediction (DIP) merge mode by using inheritance information from previous coded blocks are disclosed. BRIEF SUMMARY OF THE INVENTION

[0036] A method and apparatus for video coding using derived candidates are disclosed. According to this method, input data associated with a current block is received, wherein the input data comprises pixel data to be encoded at an encoder side or data associated with the current block to be decoded at a decoder side. To determine prediction information, at least one of the following is performed: whether a target candidate with candidate prediction information satisfies validity checking is checked and one or more derived candidates are derived by modifying inheritance information associated with an existing merge candidate. Prediction of the current block is generated using the determined prediction information. The current block is encoded or decoded by using the generated prediction.

[0037] In one embodiment, when the target candidate with the candidate prediction information satisfies the validity checking, the inheritance information associated with the target candidate is inherited and / or used as one candidate for the current block.

[0038] In one embodiment, if the inheritance information associated with the target candidate refers to a mode type as DIMD (Decoder-side Intra Mode Derivation) or TIMD (Template-based Intra Mode Derivation) , the validity checking is satisfied when fusion or not indicates to do fusion.

[0039] In one embodiment, a condition associated with the validity checking is dependent on one or more predefined rules. In one embodiment, said one or more predefined rules comprise block width, block height, block area, candidate index, or a combination thereof.

[0040] In one embodiment, the existing merge candidate belongs to a predefined mode type corresponding to DIMD (Decoder-side Intra Mode Derivation) or TIMD (Template-based Intra Mode Derivation) .

[0041] In one embodiment, if the existing merge candidate belongs to a predefined mode type and / or the validity checking is satisfied, said one or more derived candidates are derived by modifying the inheritance information by adding or subtracting a direction offset.

[0042] In one embodiment, if the existing merge candidate belongs to a predefined mode type and / or the validity checking is satisfied, said one or more derived candidates are derived by modifying the inheritance information by swapping to-be-modified information in the inheritance information.

[0043] In one embodiment, if the existing merge candidate belongs to a predefined mode type and / or the validity checking is satisfied, said one or more derived candidates are derived by modifying the inheritance information by adjusting one or more location-dependent features in the inheritance information.BRIEF DESCRIPTION OF THE DRAWINGS

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

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

[0046] Fig. 2A illustrates an example of selected template for a current block, where the template comprises T lines above the current block and T columns to the left of the current block.

[0047] Fig. 2B illustrates an example for T=3 and the HoGs (Histogram of Gradients) are calculated for pixels in the middle line and pixels in the middle column.

[0048] Fig. 2C illustrates an example of the amplitudes (ampl) for the angular intra prediction modes.

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

[0050] 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.

[0051] Fig. 5 illustrates an example of template area for template-based multiple reference line intra prediction (TMRL) mode.

[0052] Fig. 6 illustrates the positions of spatial adjacent candidates.

[0053] Fig. 7 illustrates an example of the derived mode using a direction offset according to one embodiment of the present invention.

[0054] Fig. 8 illustrates an example of the derived mode using swapping according to one embodiment of the present invention.

[0055] Fig. 9 illustrates an example of the derived mode using location adjustment according to one embodiment of the present invention.

[0056] Fig. 10 illustrates an example of DIMD multiple reference line (MRL) for deriving candidates according to one embodiment of the present invention.

[0057] Fig. 11A illustrates an example of multi-region DIMD using top-oriented reference region according to one embodiment of the present invention.

[0058] Fig. 11B illustrates an example of multi-region DIMD using left-oriented reference region according to one embodiment of the present invention.

[0059] Fig. 12 illustrates a flowchart of an exemplary video coding system that derives candidates for decoder-derived intra prediction (DIP) merge mode by using inheritance information from previous coded blocks according to an embodiment of the present invention.DETAILED DESCRIPTION OF THE INVENTION

[0060] 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.

[0061] 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.

[0062] II. PROPOSED METHOD

[0063] In this invention, an intra merge scheme is proposed to improve intra prediction using a merge scheme. This intra merge mode can also be named as decoder-derived intra prediction (DIP) merge mode. The concept of the merge scheme is to inherit (or reference) the information from previous coded blocks and use the inheritance information to predict the current block.

[0064] In the first aspect, in some embodiments specified in the Section “inheritance information setting” , with the proposed intra merge scheme, the inheritance information can be any mode information, any sample information, any block information, any model information, and / or any information associated with prediction generation.

[0065] In the second aspect, in some embodiments specified in the Section “inheritance block setting” , with the proposed intra merge scheme, the current block can find the previous coded blocks containing the inheritance information through several proposed merge methods.

[0066] In the third aspect, in the Section “target mode setting and shortcut syntax setting” , for some embodiments, the proposed merge scheme is to obtain the information associated with prediction generation of the current block using the target mode. For some embodiments, the proposed methods are enabled or disabled depending on the shortcut syntax setting.

[0067] When generating the prediction of the current block coded by the target mode, one or more inheritance blocks are selected from a merge candidate list or among several merge candidates (e.g. a set of merge candidates) . Then, the inheritance information from the inheritance blocks is used for the target mode to generate prediction.

[0068] In some embodiments, the inheritance information of each merging candidate can belong to different target modes -referred as mixed modes. For example, the inheritance information of merge candidates can be related to DIMD, TIMD, MRL, MIP, EIP, or a combination thereof. One merge list can contain the merge candidates with different target modes (i.e., mixed modes) . The current block can be predicted following DIMD, TIMD, MRL, MIP, or EIP depending on which merge candidate is used. In one sub-embodiment, only one merge candidate list or set is built for the current block. For example, a unified list or set is used for the current block to generate the intra luma prediction and / or which target mode is applied to the current block depends on the selected candidate from the list or set.

[0069] In some embodiments, at least one or at least two merging candidate lists or sets are built for the current block. For example, for each mode category, a candidate list or set, which contains one or more candidates belonging to the same mode category, is built.

[0070] In one sub-embodiment, one mode category is for DIMD-related modes only, another mode category is for TIMD-related modes only, another mode category is for model-related modes only, another mode category is for MRL-related modes only, and / or another mode category is for matrix-related modes only. In one sub-embodiment, one mode category is for decoder-analysis-related modes only, another mode category is for model-related modes only, another mode category is for MRL-related modes only, and / or another mode category is for matrix-related modes only. The decoder-analysis-related modes can contain DIMD-related modes, TIMD-related modes, any mode using decoder-side analysis (e.g. a texture gradient analysis on the template and / or a distortion measurement on the template instead of a signalled index) to determine the intra prediction mode for the block, and / or any subset or extension of above-mentioned modes. In one sub-embodiment, the mode categories are defined as follows: one category includes only parameter-related modes, another includes only DIMD-related modes, a third includes only MRL-related modes, and / or a fourth includes only TIMD-related modes. The parameter-related modes can contain EIP-related modes, MIP-related modes, any mode using a model or matrix (e.g. a pre-defined model or matrix in the standard and / or a model or matrix derived based on a regression, derivation or on-the-fly-deciding technique, which may be (but not limited to be) performed on the template, instead of using an intra prediction direction) to determine the intra predictor for the block, and / or any subset or extension of above-mentioned modes.

[0071] In one embodiment, a maximum number of allowed candidates in the merge candidate list is imposed. When there are multiple lists, the maximum numbers of different lists can be the same or different.

[0072] II. 1 Inheritance Information Setting

[0073] The inheritance information for generating prediction of the current block using a target mode is defined as follows.

[0074] II. 1.1 Inheritance information setting for DIMD

[0075] For DIMD mode, the inheritance information includes items (a) , (b) , (c) , (d) , (e) , (f) , or a combination thereof. (a) one or more histogram (bar) values for the available DIMD intra prediction modes (such as  DC, planar, and / or directional prediction modes) (b) the N intra prediction modes (with the highest N histogram bars) suggested by the histogram  values (c) DIMD weighting information and / or fusion or not and / or location-dependent features (e.g. the  weighting for samples changing in a horizontal direction, in a vertical direction, or independent of location / direction)  (d) reference line information and / or wide-angle conditions (e) information associated with block vector, for example, Note A Note A: “using block vector information or not” and / or “block vector information” wherein the  block vector information can be any information associated with prediction generation for an IBC or intraTMP mode (f) information associated with transform.

[0076] II. 1.2 Inheritance information setting for TIMD

[0077] For TIMD mode, the inheritance information includes items (a) , (b) , (c) , (d) , (e) , (f) , or a combination thereof. (a) one or more TIMD cost values for the available TIMD intra prediction modes (such as DC,  planar, and / or directional prediction modes) (b) the N intra prediction modes (with the smallest N TIMD costs) suggested by the TIMD costs (c) TIMD weighting information and / or fusion or not and / or location-dependent features (for  example, the weighting for samples changing in a horizontal direction, in a vertical direction, or independent of location / direction) (d) reference line information and / or wide-angle conditions (e) information associated with block vector, for example, Note A (f) information associated with transform.

[0078] II. 1.3 Inheritance information setting for MRL

[0079] For MRL mode, the inheritance information includes items (a) , (b) , (c) , (d) , (e) , or a combination thereof. (a) one or more reference lines jointly with intra prediction modes (such as DC, planar, and / or  directional prediction modes) (b) the N intra prediction modes (with the smallest N TIMD costs) suggested by the TIMD costs (c) weighting information and / or fusion or not (d) reference line information and / or wide-angle conditions (e) information associated with transform.

[0080] II. 1.4 Inheritance information setting for EIP

[0081] For EIP mode, the inheritance information includes items (a) , (b) , (c) , (d) , or a combination thereof. (a) the filter shape (b) all or parts of the filter coefficients (c) the template used to derive the filter coefficients (d) information associated with transform.

[0082] II. 1.5 Inheritance information setting for intra merge mode

[0083] When the target mode is intra merge mode, which can also be named as decoder-derived intra prediction (DIP) merge mode, the inheritance information includes all or any subset of the following items. group 1: (a) and / or (b) and / or (c) and / or (d) and / or (e) and / or (f) in Section II. 1.1 group 2: (a) and / or (b) and / or (c) and / or (d) and / or (e) and / or (f) in Section II. 1.2 group 3: (a) and / or (b) and / or (c) and / or (d) and / or (e) in Section II. 1.3 group 4: coding mode (for example, DIMD-related mode or not, TIMD-related mode or not,  MRL-related mode or not, SGPM-related mode or not, ISP-related mode or not, intraTMP-related mode or not, MPM-related mode or not, MIP-related mode or not, EIP-related mode or not, and / or any mode related to a pre-defined intra mode) and / or corresponding information of the coding mode. group 5: (a) and / or (b) and / or (c) and / or (d) in Section II. 1.4

[0084] In one embodiment, for group 1, group 2, group 3, and / or group 5, the embodiments in Sections II. 1.1, II. 1.2, II. 1.3, II. 1.4 can be used to obtain the inheritance information.

[0085] In another embodiment, group 4 is included in the inheritance information and / or the coding mode in group 4 decides the corresponding information to be further included in the DIP merge inheritance information. For example, the coding mode in group 4 is MRL-related mode and only the corresponding information from group 3 is included in the DIP merge inheritance information.

[0086] In one embodiment, the coding mode in group 4 is from a previous coded block specified in Section II. 2 “Inheritance block setting” . The previous coded block may store the mixed-mode inheritance information. The stored mixed-mode inheritance information of the previous coded block can be referenced by subsequent coding blocks (e.g. the current block) . For example, for each block containing the mixed-mode information, the mixed-mode information is stored and / or referenced by subsequent coding blocks. For example, for each pre-defined unit containing the mixed-mode information, the mixed-mode information is stored and / or referenced by subsequent coding blocks. The unit can be any pre-defined region or kxk grids, where k can be 2, 4, 8, 16, or any pre-defined positive integer.

[0087] In one sub-embodiment, the coding mode is EIP. The previous coded block generates the corresponding EIP inheritance information (e.g. filter shape and / or filter coefficients) and / or stores the DIP merge inheritance information (e.g. coding mode and / or the corresponding information) .

[0088] In one sub-embodiment, the coding mode is SGPM (spatial geometric partitioning mode) . This mode generates multiple hypotheses of predictions from different intra prediction modes and combines the hypotheses of predictions to form the final prediction using the weights based on a geometric partitioning line as inter GPM. The previous coded block generates the corresponding SGPM inheritance information (e.g. intra prediction modes and / or partitioning line and / or weights) and / or stores the DIP merge inheritance information (e.g. coding mode and / or the corresponding information) .

[0089] In one sub-embodiment, the coding mode is ISP (intra sub-partition) . This mode splits the current block into several sub-partitions and generates prediction of each sub-partition using the reconstructed samples (possibly from the previous sub-partition) adjacent to the current sub-partition as the reference samples. The previous coded block generates the corresponding ISP inheritance information (e.g. one or more intra prediction modes and / or splitting method) and / or stores the DIP merge inheritance information (e.g. coding mode and / or the corresponding information) .

[0090] In one sub-embodiment, the coding mode is IntraTMP (intra template matching prediction) . This mode uses template matching to find a displacement (i.e., block vector) to refer a reference block in a pre-defined range of the current picture and generates prediction using the reconstructed samples of the reference block. The previous coded block generates the corresponding intraTMP inheritance information (e.g. one or more block vectors) and / or stores the DIP merge inheritance information (e.g. coding mode and / or the corresponding information) .

[0091] In one sub-embodiment, the coding mode is MIP (matrix-based intra prediction) . This mode uses a pre-defined matrix and pre-defined adjacent or non-adjacent reference samples to generate the prediction. The previous coded block generates the corresponding MIP inheritance information (e.g. one or more matrix indications and / or one or more matrix coefficients of the indicated matrixes and / or block width and / or block height and / or block area and / or block position) and / or stores the DIP merge inheritance information (e.g. coding mode and / or the corresponding information) .

[0092] In another embodiment, instead of storing all DIP merge information (which may be used for reference) , to reduce the storage, only the subset of DIP merge information is stored. For example, only 3 or any pre-defined positive number from all are stored. For example, the subset is the first 3 from all. The first 3 always comprises group 4.

[0093] In one embodiment, the inheritance information of the target mode depends on an inherited mode type of the selected merge candidate.

[0094] In one sub-embodiment, if the coding mode of the selected merge candidate is DIMD, TIMD, EIP or MRL, the inherited mode type is the same as the coding mode (i.e., DIMD, TIMD, EIP or MRL respectively) .

[0095] In one sub-embodiment, for a block coded in DIP merge mode, the inherited mode type is set as following: When the current block is coded in DIP merge mode, the block will select a merge candidate to generate prediction. If the selected merging candidate for the current block is coded in DIMD, TIMD, MRL or EIP, the inherited mode type of the current block is set to DIMD, TIMD, MRL or EIP respectively. If the selected merging candidate for the current block is coded in DIP merge mode, the inherited mode type of the current block is set to the inherited mode type of the selected merging candidate.

[0096] In one sub-embodiment, if the inherited mode type is DIMD, the inheritance information setting follows the description in Section II. 1.1.

[0097] In one sub-embodiment, if the inherited mode type is TIMD, the inheritance information setting follows the description in Section II . 1.2.

[0098] In one sub-embodiment, if the inherited mode type is MRL, the inheritance information setting follows the description in Section II. 1.3.

[0099] In one sub-embodiment, if the inherited mode type is EIP, the inheritance information setting follows the description in Section II. 1.4.

[0100] II. 2 Inheritance Block Setting

[0101] II. 2.1 Inheritance information from the previous coded blocks

[0102] The inheritance information is obtained from the previous coded blocks.

[0103] In one embodiment, one or more candidates of spatial adjacent candidates and / or non-adjacent candidates, history candidates, temporal candidates, derived candidates, default candidates, and / or any subset of above-mentioned candidates provide the inheritance information from the previous coded blocks.

[0104] In one embodiment, a merge candidate list, containing inheritance information, is built for the current block. Like the inter merge mode candidate list, the merge candidate list includes spatial adjacent candidates and / or non-adjacent candidates, history candidates, temporal candidates, derived candidates, default candidates, and / or any subset of above-mentioned candidates.

[0105] In one sub-embodiment, after building the merge candidates list, one or more candidates are selected from the list for the current block to use. The selection depends on explicitly signalling an index or implicitly selecting the one or more (promising) candidates. For example, the first one or more candidates with the smallest costs are selected. For another example, the explicit index indicates one or more candidates in the reordered list as the selected candidates. The cost calculation and / or list reordering may depend on the template matching process, which calculates the cost based on the distortion between the prediction (using a certain candidate) on the template and the reconstruction on the template. The candidates in the list are reordered based on costs in ascending order. For example, the template size is set as 1 or any positive integer.

[0106] In one embodiment, only when the validity condition is satisfied, the inheritance information can be inherited and / or can be a candidate for the current block. In one sub-embodiment, if the inheritance information refers to the mode type as DIMD or TIMD, the validity condition is satisfied when fusion or not indicates to use fusion, that is, the fusion condition is satisfied. Fusion means more than one hypothesis of prediction is used to form the combined prediction for the current block. In another sub-embodiment, the validity condition varies depending on some predefined rules, for example, block width, block height, block area, and / or candidate index. For example, if the candidate index of the to-be-inherited candidate is even, the validity condition comprises the fusion condition; otherwise, the validity condition does not comprise the fusion condition. For example, if the block area of the current block is larger than a threshold, the validity condition comprises the fusion condition; otherwise, the validity condition does not comprise the fusion condition.

[0107] As described above, according to some embodiments of the present invention, whether the inheritance information can be inherited and / or can be a candidate for the current block is dependent on whether the validity condition is satisfied. Since the inheritance information is used to derive candidates, the above process is considered as way to determine prediction information.

[0108] II. 2.1.1 Spatial adjacent candidates and non-adjacent candidates

[0109] The spatial adjacent candidates are from the adjacent neighbouring blocks of the current block. The adjacent neighbouring blocks can be the same as the 5 spatial neighbouring blocks for inter merge mode or any subset of the adjacent neighbouring blocks of the current block. For example, for adding the spatial adjacent candidates into the merge list, as in Fig. 6, the inclusion order can be A1 → B1 → A0 → B0 → B2 or B1 → A1 → B0 → A0 → B2. The non-adjacent candidates are from a search range around (but not adjacent to) the current block. The search range can be the same as the search range of non-adjacent candidates for inter merge mode. The non-adjacent candidates can be from pre-defined positions and are added into the merge list in a pre-defined inclusion order. For example, the pre-defined positions and the inclusion order are the same as those of the non-adjacent candidates of inter merge mode.

[0110] II. 2.1.2 History candidates

[0111] The history candidates are selected from a history-based buffer array. In the history-based buffer array, the inheritance information of each valid previous coded block is stored, where the valid previous coded block refers to any block containing inheritance information. In other words, the validity checking for the previous coded block will check whether the previous coded block contains inheritance information.

[0112] II. 2.1.3 Temporal candidates

[0113] The temporal candidates are obtained from the inheritance information stored in one or more previous coded picture. The temporal candidates are obtainable when the current slice / picture is a non-intra slice / picture.

[0114] II. 2.1.4 Derived candidates

[0115] The concept of derived candidates is to use the information of the existing candidates to obtain derived modes. In some embodiments, the derived modes associated with DIMD are proposed. In some embodiment, the derived modes associated with TIMD are proposed.

[0116] In one embodiment, a derived mode associated with a predefined mode type is proposed to use the information of an existing candidate (with the predefined mode type) and a direction offset. The predefined mode type can be DIMD or TIMD. The following shows an example of the derived mode using the direction offset. For the current block using DIP merge, inheritance information (denoted as inheritedInfo) from the previous coded blocks is obtained through spatial, history, temporal, or any predefined method. If inheritedInfo belongs to the predefined mode type and / or the validity checking is satisfied, inheritedInfo can be modified to be a new candidate by adding or subtracting a direction offset which refers to 1, 2, 3, …, or any positive integer value to one or more to-be-modified intra prediction modes in inheritedInfo. In Fig. 7, the original information of inheritedInfo comprises multiple sets with each set comprising {intra prediction mode, weight} . In the first set, the intra prediction mode, Mode 1, can be used to generate one hypothesis of prediction which corresponds to the weighting information, Weight 1, used in forming the combined prediction for the current block when using inheritedInfo to generate predictors for the current block. In the second set, the intra prediction mode, Mode 2, can be used to generate one hypothesis of prediction which corresponds to the weighting information, Weight 2, used in forming the combined prediction for the current block when using inheritedInfo to generate predictors for the current block. After modifying Mode 1 (with the mode number as 37 originally) in inheritedInfo by using a direction offset (equal to one in this example) , Mode 1 is changed (to be the mode number as 38) and the modified information can be treated as a derived candidate. If the changed Mode 1 is duplicated with any intra prediction mode in other sets, the modified information is not valid. Since new candidates (i.e., derived candidates) are derived for generating prediction for the current block, the above process is also considered as a way to determine prediction information. Therefore, the way to determine prediction information includes at least one of the following: 1. checking whether a target candidate with candidate prediction information satisfies validity checking; and 2. deriving one or more derived candidates by modifying inheritance information associated with an existing merge candidate.

[0117] In one sub-embodiment, the one or more to-be-modified intra prediction modes refer to the first K intra prediction modes in inheritedInfo, where K can be 1, 2, …, or any positive integer. For example, K is equal to 1 and the first intra prediction mode in inheritedInfo refers to generating the hypothesis of prediction corresponding to the highest weighting. For another example, the modification is applied to each intra prediction mode in inheritedInfo until the candidates for the current block are enough.

[0118] In another sub-embodiment, the one or more to-be-modified intra prediction modes are directional prediction modes. That is, each to-be-modified intra prediction mode refers to an angular prediction mode and cannot be DC or planar.

[0119] In another sub-embodiment, the validity checking is satisfied only when the intra prediction modes in inheritedInfo comprise at least one directional prediction mode.

[0120] In another embodiment, a derived mode associated with a predefined mode type is proposed to use the information of an existing candidate (with the predefined mode type) and swapping. The predefined mode type can be DIMD or TIMD. The following shows an example of the derived mode using swapping. For the current block using DIP merge, inheritance information (denoted as inheritedInfo) from the previous coded blocks is obtained through spatial, history, temporal, or any pre-defined method. If inheritedInfo belongs to the predefined mode type and / or the validity checking is satisfied, inheritedInfo can be modified to be a new candidate by swapping to-be-modified information in inheritedInfo. In Fig. 8, the original information of inheritedInfo comprises multiple sets with each set comprising {intra prediction mode, weight} . In the first set, the intra prediction mode, Mode 1, can be used to generate one hypothesis of prediction which corresponds to the weighting information, Weight 1, used in forming the combined prediction for the current block when using inheritedInfo to generate predictors for the current block. In the second set, the intra prediction mode, Mode 2, can be used to generate one hypothesis of prediction which corresponds to the weighting information, Weight 2, used in forming the combined prediction for the current block when using inheritedInfo to generate predictors for the current block. After swapping Mode 1 (with the mode number as 37 originally) and Mode 2 (with the mode number as 50 originally) in inheritedInfo, Mode 1 and Mode 2 are changed (to be the mode numbers as 50 and 37, respectively) and the modified information can be treated as a derived candidate. Since new candidates (i.e., derived candidates) are derived for generating prediction for the current block, the above process is also considered as a way to determine prediction information. Therefore, the way to determine prediction information includes at least one of the following: 1. checking whether a target candidate with candidate prediction information satisfies validity checking; and 2. deriving one or more derived candidates by modifying inheritance information associated with an existing merge candidate.

[0121] In one sub-embodiment, the one or more to-be-modified information is associated with intra prediction modes or weighting information. For example, two intra prediction modes are swapped. Therefore, originally, the first intra prediction mode corresponds to the first weighting information and the second intra prediction mode corresponds to the second weighting information; after swapping, the second intra prediction mode corresponds to the first weighting information and the first intra prediction mode corresponds to the second weighting information. For example, two weighting information are swapped. Therefore, originally, the first intra prediction mode corresponds to the first weighting information and the second intra prediction mode corresponds to the second weighting information; after swapping, the first intra prediction mode corresponds to the second weighting information and the second intra prediction mode corresponds to the first weighting information.

[0122] In another sub-embodiment, the validity checking is satisfied only when inheritedInfo refers a fusion candidate. In other words, more than one hypothesis of prediction is used to form the combined prediction for the current block if inheritedInfo is applied to generating predictors for the current block.

[0123] In another embodiment, a derived mode associated with a predefined mode type is proposed to use the information of an existing candidate (with the predefined mode type) and location adjustment. The predefined mode type can be DIMD or TIMD. The following shows an example of the derived mode using location adjustment. For the current block using DIP merge, inheritance information (denoted as inheritedInfo) from the previous coded blocks is obtained through spatial, history, temporal, or any predefined method. If inheritedInfo belongs to the pre-defined mode type and / or the validity checking is satisfied, inheritedInfo can be modified to be a new candidate by adjusting location-dependent features in inheritedInfo. In Fig. 9, the original information of inheritedInfo comprises multiple sets with each set comprising {intra prediction mode, location-dependent feature} . In the first set, the intra prediction mode, Mode 1, can be used to generate one hypothesis of prediction which corresponds to the location feature associated with weighting for samples, Loc 1, used in forming the combined prediction for the current block when using inheritedInfo to generate predictors for the current block. In the second set, the intra prediction mode, Mode 2, can be used to generate one hypothesis of prediction which corresponds to the location feature associated with weighting for samples, Loc 2, used in forming the combined prediction for the current block when using inheritedInfo to generate predictors for the current block. After adjusting Loc 1 (with the direction as 1 (in vertical direction) originally) and / or Loc 2 (with the direction as 2 (in horizontal direction) originally) in inheritedInfo, Loc 1 and Loc 2 are changed (to be the directions as 2 and 1, respectively) and the modified information can be treated as a derived candidate. Since new candidates (i.e., derived candidates) are derived for generating prediction for the current block, the above process is also considered as a way to determine prediction information. Therefore, the way to determine prediction information includes at least one of the following: 1. checking whether a target candidate with candidate prediction information satisfies validity checking; and 2. deriving one or more derived candidates by modifying inheritance information associated with an existing merge candidate.

[0124] In one sub-embodiment, the one or more to-be-modified location features refer to the first K location features in inheritedInfo, where K can be 1, 2, …, or any positive integer. For example, K is equal to 1 and the first location feature in inheritedInfo refers to combining the hypothesis of prediction corresponding to the highest weighting. For another example, the modification is applied to each location feature in inheritedInfo until the candidates for the current block are enough.

[0125] In another sub-embodiment, the one or more to-be-modified location features are in horizontal direction, in vertical direction, or any feature dependent of location / direction. That is, each to-be-modified location feature cannot be independent of location / direction.

[0126] As described above in this sub-section, according to some embodiments of the present invention, one or more derived candidates are derived by modifying inheritance information associated with an existing merge candidate. Since new candidates (i.e., derived candidates) are derived for generating prediction for the current block, the above process is also considered as way to determine prediction information. Therefore, the way to determine prediction information includes at least one of the following: 1. checking whether a target candidate with candidate prediction information satisfies validity checking; and 2. deriving one or more derived candidates by modifying inheritance information associated with an existing merge candidate.

[0127] In another sub-embodiment, the validity checking is satisfied only when at least one set in inheritedInfo comprises the location feature in horizontal direction, in vertical direction, or any feature dependent of location / direction.

[0128] In another embodiment, when building a merge candidate list for the current block using DIP merge, the derived candidates are generated / inserted after spatial candidates, history candidates, temporal candidates, any inheritance information from the previous coded blocks, or any subset of the above-mentioned.

[0129] In another embodiment, when building a merge candidate list for the current block using DIP merge, the derived candidates are generated / inserted before default candidates.

[0130] In another embodiment, when building a merge candidate list for the current block using DIP merge, the derived candidates are treated as default candidates.

[0131] II. 2.1.5 Default candidates

[0132] The default candidates are the candidates containing pre-defined default information and / or the default information is derived according to the candidates already put in the merge candidate list or set. In one embodiment, the default modes for the default candidates can be derived using MIMD scheme, OBIC scheme, EIP derived mode scheme, any existing or mentioned intra scheme (for example, TIMD, DIMD, EIP, and / or MRL) , any variations of the existing or mentioned intra scheme, or a combination thereof.

[0133] II. 2.2 Variations of DIMD

[0134] In one embodiment, the DIMD variations can be treated as sub-modes of DIMD. In another embodiment, the DIMD variations can be treated as a candidate for DIP merge mode.

[0135] In one embodiment, one DIMD variation (called as DIMD multiple reference line (MRL) ) is to derive the DIMD information using the reference region (not including line 0) non-adjacent to the current block. In the regular DIMD, the DIMD information is derived by applying texture gradient analysis to the reference region adjacent to the current block. The reference region includes line 0, 1, and 2. The 3x3 window is applied with line 1 as the centre line (that is, samples on the centre line correspond to the centre of the window when applying the window on the reference region) . In DIMD MRL, the DIMD information is derived by applying texture gradient analysis to the reference region non-adjacent to the current block. For an example of DIMD MRL in Fig. 10, the reference region includes line 1, 2, and 3. The 3x3 window is applied with line 2 as the centre line.

[0136] In another embodiment, one DIMD variation (called as multi-region DIMD) is to derive the DIMD information using the separated reference region. In the regular DIMD, the DIMD information is derived by applying texture gradient analysis to the reference region by jointly considering the top reference region, the left reference region, and the top-left reference region. In multi-region DIMD, the DIMD information is derived by applying texture gradient analysis to only left-oriented reference region or only top-oriented reference region. Multi-region DIMD using top-oriented reference region is shown in Fig. 11A. Multi-region DIMD using left-oriented reference region is shown in Fig. 11B.

[0137] II. 3 Target Mode Setting and Shortcut Syntax Setting

[0138] II. 3.1 Target mode setting for DIMD (DIMD merge mode)

[0139] This section specifies a DIMD merge mode. When DIMD merge mode is used, the DIMD inheritance information from one or more pre-defined candidates according to the inheritance block setting, is used to decide the prediction information, required for generating the prediction of the current block. For example, the inheritance information refers to the histogram values from the previous coded block and is used to decide one or more intra prediction modes (one kind of prediction information) and / or corresponding weights for the current block as regular DIMD. For example, the inheritance information refers to the intra prediction modes, DIMD weighting information, fusion or not, location-dependent features, or a combination thereof. For example, the inheritance information comprises “using block vector information or not” and / or “block vector information” . Then, unified with regular DIMD, the hypothesis of prediction from each derived intra prediction mode is combined using blending process to form the final prediction of the current block. In one case, one hypothesis of prediction is generated using block vector information.

[0140] II. 3.2 Target mode setting for TIMD (TIMD merge mode)

[0141] This section specifies a TIMD merge mode. When the TIMD merge mode is used, the TIMD inheritance information from one or more pre-defined candidates (for example, each candidate providing N intra prediction modes for the available TIMD intra prediction modes and TIMD weighting information, such as {IPM1, IPM2, W1, W2} , and / or fusion or not, and / or wide-angle conditions and / or location-dependent features) according to the inheritance block setting, is used to decide the prediction information, required for generating the prediction of the current block. For example, the merge candidate list is built and reordered according to the costs in the template matching process. For example, the inheritance information comprises “using block vector information or not” and / or “block vector information” . The template size and the template cost calculation may be unified with regular TIMD. After reordering the TIMD merge candidates, the first 2 or any pre-defined number candidates from the list are kept for signalling. Then, unified with regular TIMD, the hypothesis of prediction from each inherited intra prediction mode is combined using blending process to form the final prediction of the current block. In one case, one hypothesis of prediction is generated using block vector information.

[0142] II. 3.3 Target mode setting for MRL (MRL merge mode)

[0143] This section specifies an MRL merge mode. When the MRL merge mode is used, the inheritance information from one or more pre-defined candidates (for example, each candidate providing one or more reference lines jointly with intra prediction modes (IPM1 and MRL1) and / or fusion or not, and / or wide-angle conditions) according to the inheritance block setting, is used to decide the prediction information, required for generating the prediction of the current block. For example, the merge candidate list is built and reordered according to the costs in the template matching process. The template size and the template cost calculation may be unified with regular TMRL. After reordering the MRL merge candidates, the first 2 or any pre-defined number of candidates from the list are kept for signalling. Then, unified with regular intra prediction, for the example of inherited IPM1 and MRL1, the prediction from the inherited intra prediction mode and the inherited reference line is used to form the final prediction of the current block. For the example, if predictions correspond to inherited IPM1 with MRL1 and IPM2 with MRL2, the hypothesis of prediction from each inherited intra prediction mode with the corresponding inherited reference line is combined using blending process to form the final prediction of the current block. For the example, in the case of inherited IPM1 with MRL1 / W1 and IPM2 with MRL2 / W2, the hypothesis of prediction from each inherited intra prediction mode with the corresponding inherited reference line is combined using blending process with W1 and W2 to form the final prediction of the current block.

[0144] II. 3.4 Target mode setting for intra merge mode (depending on the inherited mode type)

[0145] This section specifies an intra merge mode depending on the inherited mode type. When the DIP merge mode is used, the inherited mode information is used to generate the prediction of the current block. The inheritance information of a candidate may refer to the coding mode and / or the corresponding information. The current block obtains its own prediction information from the inheritance information.

[0146] An example of the coding mode from the inherited mode information being DIMD-related: - In one case or another, DIMD merge mode (Section II. 3.1) or regular DIMD is applied to the  current block.

[0147] An example of the coding mode from the inherited mode information being TIMD-related: - In one case or another, TIMD merge mode (Section II. 3.2) or regular TIMD is applied to the  current block.

[0148] An example of the coding mode from the inherited mode information being MRL-related: - In one case or another, MRL merge mode (Section II. 3.3) or regular intra prediction using  MRL or TMRL is applied to the current block.

[0149] An example of the coding mode from the inherited mode information being EIP-related: - In one case or another, EIP merge mode or EIP derived mode is applied to the current block.

[0150] In another embodiment, only one candidate (e.g., the first available candidate) according to the inheritance block setting, is used to decide the prediction information for the current block.

[0151] In another embodiment, one or more candidates are used to decide the prediction information for the current block. For example, all available candidates are used to decide the prediction information for the current block. For example, assume a pre-defined maximum number be N. The first N available candidates according to the checking order are used to decide the prediction information for the current block. If the number of total available candidate is smaller than N, all the available candidates are used to decide the prediction information for the current block.

[0152] In one embodiment, an additional flag is signalled to indicate whether DIP merge mode is used or not before some intra coding tools (e.g. before DIMD, or before all or any subset of intra luma and / or chroma coding tools) . If DIP merge mode is used, a candidate index is additionally signalled.

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

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

[0155] 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, Sequence Parameter Set (SPS) , or Picture Parameter Set (PPS) level) . For example, the proposed method is applied when the block area is smaller / larger than a threshold.

[0156] Any of the foregoing proposed methods of determining prediction information can be implemented in encoders and / or decoders. For example, any of the proposed methods can be implemented in an inter / intra / IBC / prediction / transform module of an encoder, and / or an inter / intra / IBC / prediction / transform module of a decoder. Alternatively, any of the proposed methods can be implemented as a circuit coupled to the inter / intra / IBC / prediction / transform module of the encoder and / or the inter / intra / IBC / prediction / transform module of the decoder, so as to provide the information needed by the inter / intra / IBC / prediction / transform module.

[0157] With reference to the encoder and decoder in Fig. 1A and Fig. 1B, any of the proposed methods can be implemented in an Intra coding module (e.g. Intra Pred. 150 in Fig. 1B) in a decoder or an Intra coding module (e.g. Intra Pred. 110 in Fig. 1A) in an encoder. Any of the proposed methods can also be implemented as a circuit coupled to the intra / inter coding module at the decoder or the encoder. However, the decoder or encoder may also use additional processing unit to implement the required prediction processing. While the Intra Pred. units (e.g. unit 110 in Fig. 1A and unit 150 in Fig. 1B) are shown as individual processing units, they may correspond to executable software or firmware codes stored on a media, such as hard disk or flash memory, for a CPU (Central Processing Unit) or programmable devices (e.g. DSP (Digital Signal Processor) or FPGA (Field Programmable Gate Array) ) .

[0158] Fig. 12 illustrates a flowchart of an exemplary video coding system that derives candidates for decoder-derived intra prediction (DIP) merge mode by using inheritance information from previous coded blocks 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 and / or decoder side. The steps shown in the flowchart may also be implemented based on hardware such as one or more electronic devices or processors arranged to perform the steps in the flowchart. A method and apparatus for video coding using derived candidates are disclosed. According to this method, input data associated with a current block is received in step 1210, wherein the input data comprises pixel data to be encoded at an encoder side or data associated with the current block to be decoded at a decoder side. To determine prediction information, at least one of the following is performed in step 1220: whether a target candidate with candidate prediction information satisfies validity checking is checked and one or more derived candidates are derived by modifying inheritance information associated with an existing merge candidate. Prediction of the current block is generated using the determined prediction information in step 1230. The current block is encoded or decoded by using the generated prediction in step 1240.

[0159] The flowchart shown is 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.

[0160] 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.

[0161] 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.

[0162] 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 comprises pixel data to be encoded at an encoder side or data associated with the current block to be decoded at a decoder side;determining prediction information comprising at least one of the following:checking whether a target candidate with candidate prediction information satisfies validity checking; andderiving one or more derived candidates by modifying inheritance information associated with an existing merge candidate;generating prediction of the current block using the determined prediction information; andencoding or decoding the current block by using the generated prediction.2.The method of Claim 1, wherein when the target candidate with the candidate prediction information satisfies the validity checking, the inheritance information associated with the target candidate is inherited and / or used as one candidate for the current block.3.The method of Claim 1, wherein if the inheritance information associated with the target candidate refers to a mode type as DIMD (Decoder-side Intra Mode Derivation) or TIMD (Template-based Intra Mode Derivation) , the validity checking is satisfied when fusion or not indicates to do fusion.4.The method of Claim 1, wherein a condition associated with the validity checking is dependent on one or more predefined rules.5.The method of Claim 4, wherein said one or more predefined rules comprise block width, block height, block area, candidate index, or a combination thereof.6.The method of Claim 1, wherein the existing merge candidate belongs to a predefined mode type corresponding to DIMD (Decoder-side Intra Mode Derivation) or TIMD (Template-based Intra Mode Derivation) .7.The method of Claim 1, wherein if the existing merge candidate belongs to a predefined mode type and / or the validity checking is satisfied, said one or more derived candidates are derived by modifying the inheritance information by adding or subtracting a direction offset.8.The method of Claim 1, wherein if the existing merge candidate belongs to a predefined mode type and / or the validity checking is satisfied, said one or more derived candidates are derived by modifying the inheritance information by swapping to-be-modified information in the inheritance information.9.The method of Claim 1, wherein if the existing merge candidate belongs to a predefined mode type and / or the validity checking is satisfied, said one or more derived candidates are derived by modifying the inheritance information by adjusting one or more location-dependent features in the inheritance information.10.An apparatus of 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 comprises pixel data to be encoded at an encoder side or data associated with the current block to be decoded at a decoder side;determine prediction information comprising at least one of the following:check whether a target candidate with candidate prediction information satisfies validity checking; andderive one or more derived candidates by modifying inheritance information associated with an existing merge candidate;generate prediction of the current block using the determined prediction information; andencode or decode the current block by using the generated prediction.

Citation Information

Patent Citations

  • Methods and Apparatuses of Decoder Side Intra Mode Derivation

    US20170374369A1

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

    US20180332292A1

  • Video encoding / decoding method and apparatus using motion information candidate, and method for transmitting bitstream

    US20220286689A1

  • Video encoding / decoding method and apparatus

    US20240129491A1

  • Method and apparatus of region-based intra prediction using template-based or decoder side intra mode derivation in video coding system

    WO2024083251A1