Intra-frame prediction method and device, and storage medium

By constructing the target intra prediction mode IPM candidate set and filtering the prediction mode according to the template type and correlation, the problems of pattern redundancy and codeword waste in the geometric division mode are solved, and more efficient intra prediction coding is achieved.

CN119996702APending Publication Date: 2025-05-13ZTE CORP
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202311512111.6
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-11-10
Publication Date
2025-05-13

AI Technical Summary

Technical Problem

In the geometric partition mode, the template-based intra mode contained in the intra prediction mode candidate list results in mode redundancy and codeword waste, and the prior art cannot meet the optimal predictive mode arrangement order for different subpartitions.

Method used

By constructing a target intra prediction mode IPM candidate set based on the current template type and template correlation of the current subpartition in the encoding unit, the most suitable intra prediction mode is selected for intra prediction.

Benefits of technology

Effectively filter intra prediction mode, reduce codeword consumption, and improve encoding efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119996702A_ABST
    Figure CN119996702A_ABST
Patent Text Reader

Abstract

The invention provides an intra-frame prediction method and device, and a storage medium. The method comprises the following steps: constructing a corresponding target intra-frame prediction mode I PM candidate set according to a current template type and template correlation of a current sub-partition in a coding unit; and performing intra-frame prediction on the current sub-partition based on one intra-frame prediction mode in the target I PM candidate set.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of communication technology, and in particular to an intra-frame prediction method, device and storage medium. Background Art

[0002] In the Geometric Partitioning Mode (GPM), the coding unit is divided into at least two sub-partitions, each sub-partition is predicted independently, and then all sub-partitions are combined to form the prediction of the coding unit. For any sub-partition, inter-frame prediction, intra-frame prediction, intra-frame block copy (IBC) mode and other prediction modes can be used for prediction coding. In the case of determining to use intra-frame mode for prediction, it is necessary to construct an intra-frame mode candidate list and then select the best candidate intra-frame prediction mode. However, different sub-partitions correspond to different template types. Therefore, when the intra-frame mode candidate list contains intra-frame modes derived based on templates, such as template-based intra-frame mode derivation (TIMD) or decoding-end intra-frame mode derivation (DIMD) and other modes, the mode derived from the L-shaped template (i.e., the mode derived from the L-shaped template area above and to the left of the coding unit, Mode_L) is not suitable as a candidate for all sub-partitions. The mode derived from the Left template (i.e. the mode derived from the template area on the left of the coding unit, Mode_Hor) is not suitable as a sub-partition candidate with only the Above template area (i.e. the template area above the coding unit). The mode derived from the Above template (i.e. the mode derived from the template area on the left of the coding unit, Mode_Ver) is not suitable as a sub-partition candidate with only the Left template area (i.e. the template area on the left of the coding unit).

[0003] In addition, if the vertical mode (Mode_Ver) and horizontal mode (Mode_Hor) of TIMD or DIMD are added to the candidate list of the sub-partition, it will lead to mode redundancy and a larger index range, resulting in codeword waste. At the same time, the prediction modes derived from different template areas have different probabilities of being selected as the final prediction mode for sub-partitions with different template areas, and the current fixed order of these modes in the candidate list cannot meet the optimal arrangement order of different sub-partitions. Summary of the invention

[0004] In view of this, the embodiments of the present application provide an intra-frame prediction method, device and storage medium, which effectively screen the intra-frame prediction mode, reduce codeword consumption, and improve coding efficiency.

[0005] The present application provides an intra-frame prediction method, including:

[0006] Construct a corresponding target intra prediction mode IPM candidate set according to the current template type and template relevance of the current sub-partition in the coding unit;

[0007] The current sub-partition is intra-predicted based on one of the intra-prediction modes in the target IPM candidate set.

[0008] An embodiment of the present application provides a communication device, including: a memory, and one or more processors;

[0009] The memory is configured to store one or more programs;

[0010] When the one or more programs are executed by the one or more processors, the one or more processors implement the method described in any of the above embodiments.

[0011] An embodiment of the present application provides a storage medium, wherein the storage medium stores a computer program, and when the computer program is executed by a processor, the method described in any of the above embodiments is implemented. BRIEF DESCRIPTION OF THE DRAWINGS

[0012] Figure 1 It is a configuration diagram of a hybrid coding framework provided by the prior art;

[0013] Figure 2 It is a schematic diagram of sub-partition division provided by the prior art;

[0014] Figure 3 It is a configuration diagram of angle parameters and offset parameters provided by the prior art;

[0015] Figure 4 is a flowchart of an intra-frame prediction method provided by an embodiment of the present application;

[0016] Figure 5 This is a flowchart of implementing predictive coding using a geometric partitioning mode provided in an embodiment of the present application;

[0017] Figure 6 This is a flowchart of an implementation of predictive decoding using a geometric partitioning mode provided by an embodiment of the present application;

[0018] Figure 7 is a structural block diagram of a prediction device provided in an embodiment of the present application;

[0019] Figure 8 It is a structural diagram of a communication device provided in an embodiment of the present application. DETAILED DESCRIPTION

[0020] The following will describe the embodiments of the present application in conjunction with the accompanying drawings. The following will describe the present application in conjunction with the accompanying drawings of the embodiments, and the examples cited are only used to explain the present application and are not used to limit the scope of the present application.

[0021] The implementation method of the embodiment of the present application is based on a hybrid coding framework. Figure 1 It is a configuration diagram of a hybrid coding framework provided by the prior art, such as Figure 1 The new generation video coding standard H.266 / VVC coding framework includes: intra prediction (Intra Prediction), inter prediction (Inter Prediction), transform (Transform), quantization (Quantization), loop filter (Loop Filter) and entropy coding (entropy coding) and other modules.

[0022] The overall framework process of the encoding end is as follows:

[0023] (1) The input video is divided into frames and blocks: First, the frames are divided into multiple Coding Tree Units (CTUs). Each CTU can be divided into four Coding Units (CUs) of the same size using a quadtree, or recursively divided into CUs of different sizes using a Multiple Type Trees (MTT), i.e., a binary tree or ternary tree structure;

[0024] (2) The divided blocks are sent to the intra-frame / inter-frame prediction module for predictive coding. The intra-frame prediction module is used to remove the spatial correlation of the image. It predicts the current pixel block through the encoded reconstructed block information to remove spatial redundant information. The inter-frame prediction module is used to remove the temporal correlation of the image. It uses the encoded image as the reference image of the current frame to obtain the motion information of each block, thereby removing temporal redundancy.

[0025] (3) Then, the predicted value is subtracted from the original block to obtain the residual value, and then the residual is transformed and quantized to remove the frequency domain correlation and perform lossy compression on the data. Transform coding transforms the image from the spatial domain signal to the frequency domain, concentrating the energy in the low-frequency area. The quantization module can reduce the dynamic range of the image coding.

[0026] (4) Finally, all the coding parameters and residuals are entropy encoded to form a binary stream for storage or transmission. The output data of the entropy coding module is the compressed bit stream of the original video.

[0027] (5) The predicted value and the residual after inverse quantization and inverse transformation are added to obtain the block reconstruction value, and finally a reconstructed image is formed.

[0028] (6) The reconstructed image is filtered through a loop filter and stored in the image cache as a reference image for the future. The loop filtering technologies in H.266 / VVC include: Luma Mapping With Chroma Scaling (LMCS), Deblocking Filter (DBF), Sample Adaptive Offset (SAO) and Adaptive Loop Filter (ALF). LMCS improves compression efficiency by reallocating codewords to information within the dynamic range; DBF is used to reduce block effects; SAO is used to improve ringing effects; and ALF can reduce decoding errors.

[0029] The overall framework process of the decoding end:

[0030] (1) Analyze the bitstream to obtain the prediction mode and get the prediction value;

[0031] (2) Perform inverse transformation and inverse quantization on the residual obtained by bitstream analysis;

[0032] (3) The predicted value and the residual after inverse quantization and inverse transformation are added to obtain the block reconstruction value, and finally a reconstructed image is formed.

[0033] (4) The reconstructed image is filtered through a loop filter and stored in an image cache as a reference image for the future.

[0034] In the case of complex image structures, simple quadtree partitioning or multi-type tree partitioning cannot effectively and accurately divide the image content. Therefore, a geometric partitioning mode (GPM) is proposed to further divide the rectangular coding unit into two sub-partitions. The two sub-partitions are independently inter-frame predicted and encoded to obtain their own reconstruction values, and the reconstruction value of the coding unit is formed by combining the reconstruction values ​​of the two sub-partitions.

[0035] Figure 2 It is a schematic diagram of sub-partition division provided by the prior art. Figure 3 FIG. 1 is a schematic diagram of the configuration of angle parameters and offset parameters provided by the prior art. Figure 2As shown, when using GPM, the CU is divided into two parts by a geometrically positioned straight line; the position of the dividing line is mathematically obtained based on the angle parameter ψ and the offset parameter ρ of the specific partition, as shown in Figure 3 As shown in the left figure.

[0036] The GPM in the VVC standard can quantify 24 angles at unequal intervals of 360°, as shown above. Figure 3 As shown in the middle figure in the figure; there are up to 4 offsets at each angle, as shown above Figure 3 As shown in the right figure in , a total of 64 division modes can be combined.

[0037] Each partition after CU division contains separate motion information. Each partition only allows unidirectional prediction, that is, each partition has only one motion vector and one reference index. Through this constraint, each CU is guaranteed to be the same as the traditional bidirectional prediction, that is, each CU only needs two motion vectors and reference frame indexes. In order to simplify the motion information encoding, the motion information of the two GPM partitions is encoded using the Merge mode, and the candidate list of the GPM mode is derived from the traditional Merge mode.

[0038] After the VVC standard was proposed, a new exploration platform (ECM, Enhanced Compression Model) was proposed. ECM uses the coding framework of H.266 / VVC and expands and adds a lot of new prediction technologies.

[0039] In the process of exploring the new generation of video coding standards, the geometric partitioning mode with intra prediction and inter prediction (GPM with Intra) was proposed to extend GPM. GPM with Intra is consistent with GPM. It uses a geometrically positioned straight line to divide the coding unit into 2 sub-partitions, and each sub-partition is independently predictively encoded. The difference between GPM with Intra and GPM is that its sub-partitions support intra-frame coding. Specifically, for any sub-partition, you can choose the inter-frame coding mode or the intra-frame coding mode. The inter-frame coding mode is the same as GPM. If the intra-frame coding mode is selected, an intra-frame prediction mode (Intra Prediction Mode, IPM) candidate list of size 3 will be constructed, and an intra-frame mode will be selected as the prediction mode of the current sub-partition. Finally, the intra-frame prediction sub-partition and the inter-frame prediction sub-partition are combined as GPM to obtain the final prediction of the coding unit.

[0040] After multiple technical explorations, the construction of the IPM list of the sub-partition of GPM with Intra has formed the following construction method: parallel mode relative to the geometric dividing line; TIMD mode; DIMD mode; vertical mode relative to the geometric dividing line; intra-frame mode of adjacent blocks selected according to the division angle; Planar mode; the size of the IPM is fixed to 3, and repeated patterns are cropped during the construction process.

[0041] In the Z meeting of JVET, GPM was further extended to the spatial geometric partitioning mode (Spatial GPM, SGPM), and both sub-partitions of SGPM use intra-frame prediction. The two sub-partitions of SGPM each construct an IPM list, and each selects an intra-frame mode for prediction, and the final coding unit prediction is obtained by combining the predictions of the two sub-partitions. The construction of IPM of SGPM has gradually developed into the following construction methods in multiple meeting explorations: TIMD vertical mode (TIMD-Ver); TIMD horizontal mode (TIMD-Hor); parallel mode relative to the geometric partition line; DIMD mode; intra-frame mode of adjacent blocks selected according to the partition angle; vertical mode relative to the geometric partition line; Planar mode; The size of IPM is also fixed to 3, and repeated modes are cropped during the construction process.

[0042] In the AC meeting of JVET, IBC was introduced into GPM, namely IBC-GPM. The two sub-partitions of IBC-GPM can use the IBC mode and the intra-frame prediction mode to jointly form the prediction process of the coding unit. In the intra-frame prediction sub-partition of IBC-GPM, the construction of its IPM is consistent with the IPM construction process of GPM with Intra.

[0043] In the IPM construction process of the above three GPMs containing intra-frame prediction, the sources of intra-frame mode candidates are basically the same, including intra-frame modes (TIMD, DIMD) derived from template information, parallel and vertical modes relative to geometric partition lines, intra-frame modes of adjacent blocks, planar modes, etc. Due to different geometric partition positions, the candidate sources of different sub-partitions should also be different, so their IPM construction also needs to be constructed according to the partition angle. The impact of the partition angle on different sub-partitions is taken into account in the process of constructing parallel and vertical modes relative to the geometric partition line and intra-frame modes of adjacent blocks selected according to the partition angle. However, the impact of the partition angle on the sub-partition is not considered for the mode candidates derived from template information. Different sub-partitions have different template areas, and the intra-frame modes derived from different template areas may be different. Therefore, different sub-partitions should select the mode with high correlation with their template area as a candidate in the intra-frame mode derived based on template information.

[0044] In SGPM, the two modes TIMD-Hor and TIMD-Ver derived from two templates (Left template and Above template) are added to the IPM list. This method will cause mode redundancy and codeword waste for sub-partitions with different division angles. For example, for a sub-partition with only the Left template area, its IPM should not include the TIMD-Ver mode candidate derived from the Above template or the TIMD-Ver mode should be selected with a lower priority. Therefore, the corresponding intra-frame mode should be adaptively selected for the sub-partition according to the template area it has, and sorted according to the relevance of the template area.

[0045] In one embodiment, Figure 4 1 is a flowchart of an intra-frame prediction method provided by an embodiment of the present application. This embodiment can be executed by an encoding end or a decoding end. Figure 4 As shown, this embodiment includes: S110-S120.

[0046] S110 . Construct a corresponding target IPM candidate set according to the current template type and template relevance of the current sub-partition in the coding unit.

[0047] S120 . Perform intra prediction on the current subpartition based on one of the intra prediction modes in the target IPM candidate set.

[0048] In an embodiment, according to the current template type of the current sub-partition in the coding unit and by utilizing template correlation, a suitable intra-frame prediction mode can be adaptively selected from multiple intra-frame prediction modes derived based on template information and added to the target IPM candidate set; then, one of the intra-frame prediction modes is selected from the target IPM candidate set to perform intra-frame prediction on the current sub-partition, which can effectively screen the intra-frame prediction mode, reduce codeword consumption, and improve coding efficiency.

[0049] In one embodiment, a corresponding target intra prediction mode IPM candidate set is constructed according to the current template type and template correlation of the current sub-partition in the coding unit, including:

[0050] Obtaining a first derived IPM set derived based on the template information;

[0051] Determine a template correlation between a template type corresponding to each derived IPM in the first derived IPM set and a current template type of a current sub-partition in the coding unit;

[0052] Screening a candidate IPM from the first derived IPM set based on template relevance;

[0053] A corresponding target IPM candidate set is constructed based on the candidate IPMs.

[0054] In one example, the first derived IPM set includes all intra-frame prediction modes derived based on template information. The template type corresponding to each derived IPM in the first derived IPM set is compared with the current template type used by the current sub-partition to determine the template correlation between the two, that is, the closer the template type, the greater the corresponding template correlation. Then, based on the template correlation, one or more derived IPMs are selected from the first derived IPM set as corresponding candidate IPMs; finally, all candidate IPMs are combined into a target IPM candidate set corresponding to the current sub-partition.

[0055] In one embodiment, the first derived IPM set includes at least one of the following: a first type IPM; a second type IPM; a third type IPM; wherein the first type IPM is a prediction mode derived from a first template area and a second template area in a coding unit; the second type IPM is a prediction mode derived from the first template area in the coding unit; and the third type IPM is a prediction mode derived from the second template area in the coding unit.

[0056] In one embodiment, screening the candidate IPM from the first derived IPM set based on template relevance includes:

[0057] In the case where the current template type is a first type template, the candidate IPMs include at least one of the following: a first type IPM; a second type IPM; a third type IPM;

[0058] In the case where the current template type is a second type template, the candidate IPMs include at least one of the following: a first type IPM; a second type IPM;

[0059] When the current template type is a third type template, the candidate IPM includes at least one of the following: a first type IPM; a third type IPM. Exemplarily, the first type template is an L-type template, the second type template is a Left template, and the third type template is an Above template, and correspondingly, the first type IPM is dMode, the second type IPM is dMode-Hor, and the third type IPM is dMode-Ver. In one example, when the current template type is an L-type template, its corresponding candidate IPM may include at least one of the following: dMode, dMode-Hor, and dMode-Ver. In one example, when the current template type is a Left template, its corresponding candidate IPM may include at least one of the following: dMode and dMode-Hor. In one example, when the current template type is an Above template, its corresponding candidate IPM may include at least one of the following: dMode and dMode-Ver.

[0060] In one embodiment, a corresponding target intra prediction mode IPM candidate set is constructed according to the current template type and template correlation of the current sub-partition in the coding unit, including:

[0061] Acquire a second derived IPM set from a pre-created initial IPM candidate set;

[0062] Determine a template correlation between a template type corresponding to each derived IPM in the second derived IPM set and a current template type of a current sub-partition in the coding unit;

[0063] All derived IPMs in the second derived IPM set are sorted based on template relevance to obtain a corresponding target IPM candidate set.

[0064] In one example, the second derived IPM set refers to a set of all intra-frame prediction modes derived based on template information in the initial IPM candidate set. In one example, if all intra-frame prediction modes derived based on template information are included in the pre-created initial IPM candidate set, the intra-frame prediction modes included in the second derived IPM set and the first derived IPM set may be the same.

[0065] In one embodiment, the second derived IPM set includes at least one of the following: a first type IPM; a second type IPM; a third type IPM; wherein the first type IPM is a prediction mode derived from a first template area and a second template area in a coding unit; the second type IPM is a prediction mode derived from the first template area in the coding unit; and the third type IPM is a prediction mode derived from the second template area in the coding unit.

[0066] In one embodiment, when the current template type is a first type template, determining the template correlation between the template type corresponding to each derived IPM in the second derived IPM set and the current template type of the current sub-partition in the coding unit includes:

[0067] Determine the template area occupied by the second template area and the third template area in the first type template respectively;

[0068] The template correlation between the second type template and the third type template and the current template type is determined based on the template area. In one example, the first type template is a combination template of the second type template and the third type template. In one example, the size of the template correlation between the second type template and the current template type is positively correlated with the template area area occupied by the second template area corresponding to the second type template in the first type template; similarly, the size of the template correlation between the third type template and the current template type is positively correlated with the template area area occupied by the third template area corresponding to the third type template in the first type template.

[0069] In one embodiment, all derived IPMs in the second derived IPM set are sorted based on template relevance to obtain a corresponding target IPM candidate set, including: sorting all derived IPMs in the second derived IPM set in descending order based on template relevance to obtain a corresponding target IPM candidate set. All derived IPMs in the second derived IPM set are sorted in descending order according to template relevance, so that the derived IPM with the largest template relevance is at the first position in the target IPM candidate set, the derived IPM with the second largest template relevance is at the second position in the target IPM candidate set, and so on, to obtain the corresponding target IPM candidate set.

[0070] In the following four embodiments, taking the first type of template as an L-type template, the second type of template as a Left template, and the third type of template as an Above template, the first type of IPM as dMode, the second type of IPM as dMode-Hor, and the third type of IPM as dMode-Ver as an example, the construction of the target IPM candidate set in the encoding and decoding process is explained.

[0071] Embodiment 1

[0072] This embodiment is a video encoding method, which is applied to a device for encoding a video.

[0073] The coding unit of a frame image in the video is further divided into 2 or more sub-partitions. For each sub-partition, a target intra-frame prediction mode IPM candidate set is adaptively constructed according to the template type currently used, and an intra-frame prediction mode in the IPM candidate set is selected by using the index as the prediction mode of the corresponding sub-partition. Figure 5 is a flowchart of implementing predictive coding using a geometric partitioning mode provided by an embodiment of the present application, such as Figure 1 As shown, the steps of predictive coding using the geometric partitioning mode include the following:

[0074] Step 1: Divide the coding unit according to the geometric partitioning mode to obtain at least two sub-partitions;

[0075] Step 2: Traverse all sub-partitions and determine the prediction mode of the current sub-partition;

[0076] Step 3: Whether the prediction mode belongs to intra-frame prediction, if not, go to step 4, if yes, jump to step 5;

[0077] Step 4: Perform inter-frame or IBC mode prediction on the sub-partition and jump to step 8;

[0078] Step 5: Determine a target intra prediction mode candidate set;

[0079] The target IPM candidate set includes but is not limited to the form of a mode list. The intra prediction modes included in the target IPM candidate set are selected from the vertical mode of the partition angle, the horizontal mode of the partition angle, the mode (DIMD, TIMD) and the derived mode (DIMD-Hor\DIMD-Ver\TIMD-Hor\TIMD-Ver) derived based on the model template information, the mode of the spatial neighboring block, the Planar mode, etc. Depending on the template type of the sub-partition, the intra prediction mode is adaptively selected from the intra prediction mode and the derived mode derived based on the model information.

[0080] Step 6: Select the best candidate intra prediction mode from the target intra prediction mode candidate set;

[0081] Step 7: Perform intra prediction on the sub-partition using the optimal candidate intra prediction mode;

[0082] Step 8: Determine whether to traverse all sub-partitions. If yes, proceed to step 9. If not, jump back to step 2.

[0083] Step 9: Fuse the sub-partition predictions to obtain the prediction block of the coding unit;

[0084] Step 10: Encode the partition mode and related intra prediction mode and index information into the bitstream.

[0085] The derivation of the intra-frame prediction mode based on template information in step 5 includes multiple situations, among which three commonly used template types include: L-type template (L-shaped template composed of reconstructed pixels above and to the left of the coding unit where the sub-partition is located), Left template (template composed of reconstructed pixels to the left of the coding unit where the sub-partition is located) and Above template (template composed of reconstructed pixels above the coding unit where the sub-partition is located). The intra-frame prediction modes (such as DIMD technology and TIMD technology) derived from the above three types of templates include three types, namely: dMode (derived from the L-type template, such as DIMD and TIMD), dMode-Hor (derived from the Left template, such as DIMD-Hor and TIMD-Hor), and dMode-Ver (derived from the Above template, such as DIMD-Ver and TIMD-Ver). However, the intra-frame prediction modes include but are not limited to the above-mentioned commonly used modes.

[0086] The intra prediction mode derived from the above three template types depends on the template type of the sub-partition, and is adaptively added to the target intra prediction mode candidate set corresponding to the sub-partition from high to low through template relevance, including but not limited to the following implementation methods.

[0087] Alternative implementation method 1

[0088] When the current template type of the current sub-partition is an L-type template, dMode is used as the candidate mode of the current sub-partition and added to the target IPM candidate set.

[0089] When the current template type of the current sub-partition is the Left template, dMode-Hor is used as the candidate mode of the current sub-partition and added to the target IPM candidate set.

[0090] When the current template type of the current sub-partition is the Above template, dMode-Ver is used as the candidate mode of the current sub-partition and added to the target IPM candidate set.

[0091] Alternative Implementation 2

[0092] When the current template type of the current sub-partition is an L-type template, dMode, dMode-Hor or dMode-Ver is used as the candidate intra prediction mode of the current sub-partition and added to the target IPM candidate set.

[0093] When the current template type of the current sub-partition is the Left template, dMode-Hor is used as the candidate intra prediction mode of the current sub-partition and added to the target IPM candidate set.

[0094] When the current template type of the current sub-partition is the Above template, dMode-Ver is used as the candidate intra prediction mode of the current sub-partition and added to the target IPM candidate set.

[0095] Alternative implementation 3

[0096] When the current template type of the current sub-partition is an L-type template, dMode-Hor or dMode-Ver is used as the candidate intra prediction mode of the current sub-partition and added to the target IPM candidate set.

[0097] When the current template type of the current sub-partition is the Left template, dMode-Hor is used as the candidate intra prediction mode of the current sub-partition and added to the target IPM candidate set.

[0098] When the current template type of the current sub-partition is the Above template, dMode-Ver is used as the candidate intra prediction mode of the current sub-partition and added to the target IPM candidate set.

[0099] Alternative Implementation 4

[0100] When the current template type of the current sub-partition is an L-type template, dMode, dMode-Hor or dMode-Ver is used as the candidate intra prediction mode of the current sub-partition and added to the target IPM candidate set.

[0101] When the current template type of the current sub-partition is the Left template, dMode-Hor and dMode are used as candidate intra prediction modes of the current sub-partition and added to the target IPM candidate set.

[0102] When the current template type of the current sub-partition is the Above template, dMode-Ver and dMode are used as candidate intra prediction modes of the current sub-partition and added to the target IPM candidate set.

[0103] In addition, additional high-level syntax elements may be added to any one or more of the video parameter set (VPS), sequence parameter set (SPS), picture parameter set (PPS), adaptive parameter set (APS), slice header (SH), picture header (PH), or supplemental enhancement information (SEI) to indicate whether the method for constructing a template-based adaptive IPM candidate set is enabled, or to specify which construction implementation method is used by using an index. A CU-level identifier may also be added at the CU level to indicate whether the current coding unit enables the method for constructing a template-based adaptive IPM candidate set, or to specify which construction implementation method is used by using an index. If the above syntax elements exist, these syntax elements need to be transmitted to the decoding end in the bitstream.

[0104] Embodiment 2

[0105] This embodiment is a video decoding method, which is applied to a device or application for decoding a video, and corresponds to the first embodiment. Figure 6 is a flowchart of an implementation of predictive decoding using a geometric partitioning mode provided by an embodiment of the present application, such as Figure 6 As shown, the steps of predictive decoding using the geometric partitioning mode include the following:

[0106] Step 1: Read and parse the bitstream to obtain the prediction mode of the coding unit;

[0107] For example, information such as prediction parameters and residual coefficients of the coding unit can be obtained.

[0108] Step 2: Determine whether the current coding unit uses the geometric partitioning mode, if not, proceed to step 3, if yes, proceed to step 4;

[0109] Step 3: Use other prediction models to make predictions;

[0110] Step 4: parse the code stream, obtain the partitioning mode, and perform geometric partitioning;

[0111] Step 5: Traverse all sub-partitions, parse the bitstream, and obtain the current prediction mode of the current sub-partition;

[0112] Step 6: Whether the current prediction mode belongs to the intra prediction mode, if not, go to step 7, if yes, jump to step 8;

[0113] Step 7: Perform inter-frame or IBC mode prediction on the sub-partition and jump to step 9;

[0114] Step 8: Determine a target intra prediction mode candidate set;

[0115] The target IPM candidate set includes but is not limited to the form of a mode list. The intra prediction modes included in the target IPM candidate set are selected from the vertical mode of the partition angle, the horizontal mode of the partition angle, the mode (DIMD, TIMD) and the derived mode (DIMD-Hor\DIMD-Ver\TIMD-Hor\TIMD-Ver) derived based on model information, the mode of the spatial neighboring block, the Planar mode, etc. Depending on the template type of the sub-partition, the intra prediction mode is adaptively selected from the intra prediction mode and the derived mode derived based on the model information.

[0116] Step 9: parse the bitstream, obtain the optimal mode index, and obtain the optimal candidate mode from the target intra-frame prediction mode candidate set;

[0117] Step 10: Use the optimal candidate mode to perform intra-frame prediction on the sub-partition;

[0118] Step 11: Determine whether to traverse all sub-partitions. If yes, proceed to step 12, if not, jump back to step 5;

[0119] Step 12: Fuse the sub-partition predictions to obtain the prediction block of the coding unit.

[0120] In step 8, the specific implementation of adaptively selecting the intra-frame prediction mode derived based on the template information according to the template type of the sub-partition is the same as that of embodiment 1;

[0121] In step 8, if there is a syntax element in any one or more parameter sets in VPS, SPS, PPS, APS, SH, or SEI, which is used to identify whether the method of constructing an adaptive IPM candidate set based on a template type is enabled, or there is an index symbol to specify which construction implementation method to use, or there is a CU-level identifier at the CU level to identify whether the current coding unit enables the method of constructing an adaptive IPM candidate set based on a template type and uses an index to specify which construction implementation method to use, then it is necessary to first parse the above-mentioned syntax elements and construct the candidate list according to the syntax elements.

[0122] Embodiment 3

[0123] This embodiment is a video encoding method, which is applied to a device for encoding a video.

[0124] The coding unit of a frame image in the video is further divided into 2 or more sub-partitions, and the intra-frame prediction modes derived based on template information in the target intra-frame prediction mode candidate set of each sub-partition are adaptively sorted based on template relevance, and an intra-frame prediction mode in the target IPM candidate set is selected as the prediction mode of the corresponding sub-partition using the index. The specific steps are as follows:

[0125] Step 1: Determine a geometric partitioning mode and divide the coding unit into at least two sub-partitions;

[0126] Step 2: Traverse all sub-partitions and determine the prediction mode of the current sub-partition;

[0127] Step 3: Whether the prediction mode belongs to intra-frame prediction, if not, go to step 4, if yes, jump to step 5;

[0128] Step 4: Perform inter-frame or IBC mode prediction on the sub-partition and jump to step 8;

[0129] Step 5: Determine a target intra prediction mode candidate set;

[0130] The target IPM candidate set includes but is not limited to the form of a mode list. The intra prediction modes included in the target IPM candidate set are selected from the vertical mode of the partition angle, the horizontal mode of the partition angle, the mode derived based on model information (DIMD and TIMD) and the derived mode (DIMD-Hor, DIMD-Ver, TIMD-Hor and TIMD-Ver), the mode of the spatial neighboring block, the Planar mode, etc. Depending on the template type of the sub-partition, the correlation of the template is used to adaptively sort the intra prediction modes and the derived modes derived based on the template information in the candidate set from high to low;

[0131] Step 6: Select the best candidate intra prediction mode from the target intra prediction mode candidate set;

[0132] Step 7: Perform intra prediction on the sub-partition using the optimal candidate intra prediction mode;

[0133] Step 8: Determine whether to traverse all sub-partitions. If yes, proceed to step 9, if not, jump back to step 2

[0134] Step 9: Fusion of sub-partition predictions to obtain the prediction block of the coding unit

[0135] Step 10: Encode the partition mode and related intra prediction mode and index information into the bitstream.

[0136] The derivation of the intra-frame prediction mode based on template information in step 5 includes multiple situations, among which three commonly used template types include: L-type template (L-shaped template composed of reconstructed pixels above and to the left of the coding unit where the sub-partition is located), Left template (template composed of reconstructed pixels to the left of the coding unit where the sub-partition is located) and Above template (template composed of reconstructed pixels above the coding unit where the sub-partition is located). The intra-frame prediction modes (such as DIMD technology and TIMD technology) derived from the above three types of templates include three types, namely: dMode (derived from the L-type template, such as DIMD and TIMD), dMode-Hor (derived from the Left template, such as DIMD-Hor and TIMD-Hor), and dMode-Ver (derived from the Above template, such as DIMD-Ver and TIMD-Ver). However, the intra-frame prediction modes include but are not limited to the above-mentioned commonly used modes. After adding several modes including but not limited to the initial IPM candidate set by a certain method, all derived modes derived based on template information are screened out from the initial IPM to obtain a corresponding second derived IPM set, and all intra-frame prediction modes in the second derived IPM set are adaptively sorted from high to low depending on the template correlation of the sub-partition to obtain a target IPM candidate set. Specific implementation methods include but are not limited to the following implementation methods.

[0137] In one example, for the Left template, the corresponding target IPM candidate set is sorted in descending order of template relevance and includes one of the following: dMode-Hor, dMode, dMode-Ver; dMode-Hor, dMode-Ver; dMode-Hor, dMode;

[0138] For the Above template, the corresponding target IPM candidate set is sorted in descending order of template relevance and includes one of the following: dMode-Ver, dMode, Mode-Hor; dMode-Ver, Mode-Hor; dMode-Ver, dMode;

[0139] For the L-type template, the corresponding target IPM candidate set is sorted in descending order of template relevance and includes one of the following: dMode, dMode-Hor, dMode-Ver; dMode, dMode-Ver, dMode-Hor; dMode-Hor, dMode-Ver; dMode-Ver, dMode-Hor; dMode, dMode-Hor; dMode, dMode-Ver.

[0140] Alternative implementation method 1

[0141] For the case where the second derived IPM set includes dMode, dMode-Hor and dMode-Ver, if the current template type of the current sub-partition is an L-type template, and the template area occupied by the Left template in the L-type template is larger than the template area occupied by the Above template, then it is added to the target IPM candidate set in the following order: dMode, dMode-Hor, dMode-Ver;

[0142] For the case where the second derived IPM set includes dMode, dMode-Hor and dMode-Ver, if the current template type of the current sub-partition is an L-type template, and the template area occupied by the Left template in the L-type template is smaller than the template area occupied by the Above template, then it is added to the target IPM candidate set in the following order: dMode, dMode-Ver, dMode-Hor;

[0143] For the case where the second derived IPM set includes dMode, dMode-Hor and dMode-Ver, when the current template type of the current sub-partition is the Left template, it is added to the target IPM candidate set in the following order: dMode-Hor, dMode, dMode-Ver;

[0144] For the case where the second derived IPM set includes dMode, dMode-Hor and dMode-Ver, when the current template type of the current sub-partition is the Above template, it is added to the target IPM candidate set in the following order: dMode-Ver, dMode, Mode-Hor;

[0145] Alternative Implementation 2

[0146] For the case where the second derived IPM set includes dMode-Hor and dMode-Ver, if the current template type of the current sub-partition is an L-type template, and the template area occupied by the Left template in the L-type template is larger than the template area occupied by the Above template, then it is added to the target IPM candidate set in the following order: dMode-Hor, dMode-Ver;

[0147] For the case where the second derived IPM set includes dMode-Hor and dMode-Ver, if the current template type of the current sub-partition is an L-type template, and the template area occupied by the Left template in the L-type template is smaller than the template area occupied by the Above template, then it is added to the target IPM candidate set in the following order: dMode-Ver, dMode-Hor;

[0148] In the case where the second derived IPM set includes dMode-Hor and dMode-Ver, when the current template type of the current sub-partition is the Left template, it is added to the target IPM candidate set in the following order: dMode-Hor, dMode-Ver;

[0149] For the case where the second derived IPM set includes dMode-Hor and dMode-Ver, when the current template type of the current sub-partition is the Above template, it is added to the target IPM candidate set in the following order: dMode-Ver, Mode-Hor;

[0150] Alternative implementation 3

[0151] For the case where the second derived IPM set includes dMode, dMode-Hor and dMode-Ver, if the current template type of the current sub-partition is an L-type template, and the template area occupied by the Left template in the L-type template is larger than the template area occupied by the Above template, then it is added to the target IPM candidate set in the following order: dMode, dMode-Hor, dMode-Ver;

[0152] For the case where the second derived IPM set includes dMode, dMode-Hor and dMode-Ver, when the current template type of the current sub-partition is an L-type template, and the template area occupied by the Left template in the L-type template is smaller than the template area occupied by the Above template, it is added to the target IPM candidate set in the following order: dMode, dMode-Ver, dMode-Hor;

[0153] In the case where the second derived IPM set includes dMode-Hor and dMode-Ver, when the current template type of the current sub-partition is the Left template, it is added to the target IPM candidate set in the following order: dMode-Hor, dMode-Ver;

[0154] For the case where the second derived IPM set includes dMode-Hor and dMode-Ver, when the current template type of the current sub-partition is the Above template, it is added to the target IPM candidate set in the following order: dMode-Ver, Mode-Hor;

[0155] Alternative Implementation 4

[0156] For the case where the second derived IPM set includes dMode-Hor and dMode-Ver, if the current template type of the current sub-partition is an L-type template, and the template area occupied by the Left template in the L-type template is larger than the template area occupied by the Above template, then it is added to the target IPM candidate set in the following order: dMode-Hor, dMode-Ver;

[0157] For the case where the second derived IPM set includes dMode-Hor and dMode-Ver, when the current template type of the current sub-partition is an L-type template, and the template area occupied by the Left template in the L-type template is smaller than the template area occupied by the Above template, it is added to the target IPM candidate set in the following order: dMode-Ver, dMode-Hor;

[0158] For the case where the second derived IPM set includes dMode, dMode-Hor and dMode-Ver, when the current template type of the current sub-partition is the Left template, it is added to the target IPM candidate set in the following order: dMode-Hor, dMode, dMode-Ver;

[0159] For the case where the second derived IPM set includes dMode, dMode-Hor and dMode-Ver, when the current template type of the current sub-partition is the Above template, it is added to the target IPM candidate set in the following order: dMode-Ver, dMode, Mode-Hor;

[0160] Alternative implementation 5

[0161] For the case where the second derived IPM set includes dMode, dMode-Hor and dMode-Ver, if the current template type of the current sub-partition is an L-type template, and the template area occupied by the Left template in the L-type template is larger than the template area occupied by the Above template, then it is added to the target IPM candidate set in the following order: dMode, dMode-Hor, dMode-Ver;

[0162] For the case where the second derived IPM set includes dMode, dMode-Hor and dMode-Ver, if the current template type of the current sub-partition is an L-type template, and the template area occupied by the Left template in the L-type template is smaller than the template area occupied by the Above template, then it is added to the target IPM candidate set in the following order: dMode, dMode-Ver, dMode-Hor;

[0163] For the case where the second derived IPM set includes dMode and dMode-Hor, when the current template type of the current sub-partition is the Left template, it is added to the target IPM candidate set in the following order: dMode-Hor, dMode;

[0164] For the case where the second derived IPM set includes dMode and dMode-Ver, when the current template type of the current sub-partition is the Above template, it is added to the target IPM candidate set in the following order: dMode-Ver, dMode;

[0165] Alternative Implementation 6

[0166] For the case where the second derived IPM set includes dMode and dMode-Hor, if the current template type of the current sub-partition is an L-type template, and the template area occupied by the Left template in the L-type template is larger than the template area occupied by the Above template, then it is added to the target IPM candidate set in the following order: dMode, dMode-Hor;

[0167] For the case where the second derived IPM set includes dMode and dMode-Ver, if the current template type of the current sub-partition is an L-type template, and the template area occupied by the Left template in the L-type template is smaller than the template area occupied by the Above template, then it is added to the target IPM candidate set in the following order: dMode, dMode-Ver;

[0168] For the case where the second derived IPM set includes dMode, dMode-Hor and dMode-Ver, when the current template type of the current sub-partition is the Left template, it is added to the target IPM candidate set in the following order: dMode-Hor, dMode, dMode-Ver;

[0169] For the case where the second derived IPM set includes dMode, dMode-Hor and dMode-Ver, when the current template type of the current sub-partition is the Above template, it is added to the target IPM candidate set in the following order: dMode-Ver, dMode, Mode-Hor;

[0170] Alternative implementation 7

[0171] For the case where the second derived IPM set includes dMode and dMode-Hor, if the current template type of the current sub-partition is an L-type template, and the template area occupied by the Left template in the L-type template is larger than the template area occupied by the Above template, then it is added to the target IPM candidate set in the following order: dMode, dMode-Hor;

[0172] For the case where the second derived IPM set includes dMode and dMode-Ver, if the current template type of the current sub-partition is an L-type template, and the template area occupied by the Left template in the L-type template is smaller than the template area occupied by the Above template, then it is added to the target IPM candidate set in the following order: dMode, dMode-Ver;

[0173] For the case where the second derived IPM set includes dMode and dMode-Hor, when the current template type of the current sub-partition is the Left template, it is added to the target IPM candidate set in the following order: dMode-Hor, dMode;

[0174] For the case where the second derived IPM set includes dMode and dMode-Ver, when the current template type of the current sub-partition is the Above template, it is added to the target IPM candidate set in the following order: dMode-Ver, dMode;

[0175] In addition, additional high-level syntax elements can be added to any one or more of VPS, SPS, PPS, APS, SH, or SEI to indicate whether the template-based adaptive IPM list sorting method is enabled, or to specify which sorting implementation method is used by using an index. A CU-level flag can also be added at the CU level to indicate whether the current coding unit enables the template-based adaptive IPM list sorting method, or to specify which sorting implementation method is used by using an index. If the above syntax elements exist, these syntax elements need to be transmitted to the decoder in the bitstream.

[0176] Embodiment 4

[0177] This embodiment is a video decoding method, which is applied to a device or application for decoding a video, and corresponds to the third embodiment. The specific steps are as follows:

[0178] Step 1: Read the bitstream to obtain the prediction parameters and residual coefficients of the coding unit;

[0179] Step 2: Determine whether the current coding unit is further divided using the geometric division mode. If not, proceed to step 3. If yes, proceed to step 4.

[0180] Step 3: Use other prediction models to make predictions;

[0181] Step 4: parse the code stream, obtain the division mode, and perform division;

[0182] Step 5: Traverse all sub-partitions, parse the bitstream, and obtain the prediction mode of the current sub-partition;

[0183] Step 6: Whether the prediction mode belongs to intra-frame prediction, if not, go to step 7, if yes, jump to step 8;

[0184] Step 7: Perform inter-frame or IBC mode prediction on the sub-partition and jump to step 9;

[0185] Step 8: Determine a target intra prediction mode candidate set;

[0186] The target IPM candidate set includes but is not limited to the form of a mode list. The intra prediction modes included in the target IPM candidate set are selected from the vertical mode of the partition angle, the horizontal mode of the partition angle, the mode derived based on model information (DIMD and TIMD) and the derived mode (DIMD-Hor, DIMD-Ver, TIMD-Hor and TIMD-Ver), the mode of the spatial neighboring block, the Planar mode, etc. Depending on the template type of the sub-partition, the correlation of the template is used to adaptively sort the intra prediction modes and the derived modes derived based on the template information in the candidate set from high to low;

[0187] Step 9: parse the bitstream, obtain the optimal mode index, and obtain the optimal candidate mode from the target intra-frame prediction mode candidate set;

[0188] Step 10: Use the optimal candidate mode to perform intra-frame prediction on the sub-partition;

[0189] Step 11: Determine whether to traverse all sub-partitions. If yes, proceed to step 12, if not, jump back to step 5;

[0190] Step 12: Fuse the sub-partition predictions to obtain the prediction block of the coding unit.

[0191] In step 8, the specific implementation method of adaptively sorting the intra prediction modes derived from the template information in the candidate set according to the template type of the sub-partition is the same as that in embodiment 1;

[0192] In step 8, if there is a syntax element in any one or more parameter sets in VPS, SPS, PPS, APS, SH, or SEI, which is used to identify whether the sorting method of the adaptive IPM candidate set based on the template type is enabled, or there is an index symbol to specify which sorting implementation method to use, or there is a CU-level identifier at the CU level to identify whether the current coding unit enables the sorting method of the adaptive IPM candidate set based on the template type and uses an index to specify which sorting implementation method to use, then the above syntax elements need to be parsed first.

[0193] In one embodiment, Figure 7 is a structural block diagram of a prediction device provided by an embodiment of the present application. This embodiment is applied to an encoding end or a decoding end. Figure 7 As shown, the prediction device in this embodiment includes: a construction module 210 and a prediction module 220.

[0194] The construction module 210 is configured to construct a corresponding target intra prediction mode IPM candidate set according to the current template type and template correlation of the current sub-partition in the coding unit.

[0195] The prediction module 220 is configured to perform intra-frame prediction on the current sub-partition based on one of the intra-frame prediction modes in the target IPM candidate set.

[0196] In one embodiment, the construction module 210 includes:

[0197] A first acquisition unit, configured to acquire a first derived IPM set derived based on the template information;

[0198] A first determining unit is configured to determine a template correlation between a template type corresponding to each derived IPM in the first derived IPM set and a current template type of a current sub-partition in the coding unit;

[0199] A screening unit, configured to screen a candidate IPM from the first derived IPM set based on template relevance;

[0200] The construction unit is configured to construct a corresponding target IPM candidate set based on the candidate IPM.

[0201] In one embodiment, the first derived IPM set includes at least one of the following: a first type IPM; a second type IPM; a third type IPM; wherein the first type IPM is a prediction mode derived from a first template area and a second template area in a coding unit; the second type IPM is a prediction mode derived from the first template area in the coding unit; and the third type IPM is a prediction mode derived from the second template area in the coding unit.

[0202] In one embodiment, the screening unit is configured as follows:

[0203] In the case where the current template type is a first type template, the candidate IPMs include at least one of the following: a first type IPM; a second type IPM; a third type IPM;

[0204] In the case where the current template type is a second type template, the candidate IPMs include at least one of the following: a first type IPM; a second type IPM;

[0205] In the case that the current template type is the third type template, the candidate IPMs include at least one of the following: the first type IPM; the third type IPM.

[0206] In one embodiment, the construction module 210 includes:

[0207] A second acquisition unit is configured to acquire a second derived IPM set from a pre-created initial IPM candidate set;

[0208] A second determining unit is configured to determine a template correlation between a template type corresponding to each derived IPM in the second derived IPM set and a current template type of a current sub-partition in the coding unit;

[0209] The sorting construction unit is configured to sort all the derived IPMs in the second derived IPM set based on the template relevance to obtain a corresponding target IPM candidate set.

[0210] In one embodiment, the second derived IPM set includes at least one of the following: a first type IPM; a second type IPM; a third type IPM; wherein the first type IPM is a prediction mode derived from a first template area and a second template area in a coding unit; the second type IPM is a prediction mode derived from the first template area in the coding unit; and the third type IPM is a prediction mode derived from the second template area in the coding unit.

[0211] In one embodiment, when the current template type is a first type template, the second determining unit includes:

[0212] A first determining subunit is configured to determine the template area respectively occupied by the second template area and the third template area in the first type template;

[0213] The second determining subunit is configured to determine the template correlation between the second type template and the third type template and the current template type respectively according to the area of ​​the template region.

[0214] In one embodiment, the sorting construction unit is configured to: sort all derived IPMs in the second derived IPM set in descending order based on template relevance to obtain a corresponding target IPM candidate set.

[0215] The intra-frame prediction device provided in this embodiment is configured to implement Figure 4 The intra-frame prediction method of the illustrated embodiment and the intra-frame prediction device provided in this embodiment have similar implementation principles and technical effects, which will not be described in detail here.

[0216] In one embodiment, Figure 8 Schematic diagram of a communication device provided in an embodiment of the present application. Figure 8 As shown, the device provided by the present application includes: a processor 310, a memory 320 and a communication module 330. The number of processors 310 in the device can be one or more. Figure 8 In the example, a processor 310 is used. The number of memories 320 in the device may be one or more. Figure 8 A memory 320 is taken as an example. The processor 310, the memory 320 and the communication module 330 of the device can be connected via a bus or other means. Figure 8 In the embodiment, the bus connection is taken as an example. In this embodiment, the device can be an encoding end or a decoding end.

[0217] The memory 320, as a computer-readable storage medium, may be configured to store software programs, computer executable programs, and modules, such as program instructions / modules corresponding to the device of any embodiment of the present application (e.g., the construction module 210 and the prediction module 220 in the prediction device). The memory 320 may include a program storage area and a data storage area, wherein the program storage area may store an operating system, an application required for at least one function; the data storage area may store data created according to the use of the device, etc. In addition, the memory 320 may include a high-speed random access memory, and may also include a non-volatile memory, such as at least one disk storage device, a flash memory device, or other non-volatile solid-state storage device. In some instances, the memory 320 may further include a memory remotely arranged relative to the processor 310, and these remote memories may be connected to the device via a network. Examples of the above-mentioned network include, but are not limited to, the Internet, an intranet, a local area network, a mobile communication network, and combinations thereof.

[0218] The device provided above can be configured to execute the intra-frame prediction method provided by any of the above embodiments, and has corresponding functions and effects.

[0219] An embodiment of the present application also provides a storage medium containing computer executable instructions, which, when executed by a computer processor, are used to perform an intra-frame prediction method, the method comprising: constructing a corresponding target intra-frame prediction mode IPM candidate set based on the current template type and template correlation of the current sub-partition in the coding unit; and performing intra-frame prediction on the current sub-partition based on one of the intra-frame prediction modes in the target IPM candidate set.

[0220] It will be appreciated by those skilled in the art that the term user equipment encompasses any suitable type of wireless user equipment, such as a mobile phone, a portable data processing device, a portable web browser or a car-mounted mobile station.

[0221] In general, various embodiments of the present application can be implemented in hardware or dedicated circuits, software, logic or any combination thereof. For example, some aspects can be implemented in hardware, while other aspects can be implemented in firmware or software that can be executed by a controller, microprocessor or other computing device, although the present application is not limited thereto.

[0222] Embodiments of the present application may be implemented by executing computer program instructions by a data processor of a mobile device, for example in a processor entity, or by hardware, or by a combination of software and hardware. The computer program instructions may be assembly instructions, instruction set architecture (ISA) instructions, machine instructions, machine-dependent instructions, microcode, firmware instructions, state setting data, or source code or object code written in any combination of one or more programming languages.

[0223] The block diagram of any logic flow in the drawings of the present application may represent program steps, or may represent interconnected logic circuits, modules and functions, or may represent a combination of program steps and logic circuits, modules and functions. A computer program may be stored on a memory. The memory may have any type suitable for the local technical environment and may be implemented using any suitable data storage technology, such as but not limited to read-only memory (ROM), random access memory (RAM), optical memory devices and systems (digital versatile discs (DVD) or compact disks (CD)), etc. Computer-readable media may include non-transient storage media. A data processor may be any type suitable for the local technical environment, such as but not limited to a general-purpose computer, a special-purpose computer, a microprocessor, a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field-programmable gate array (FGPAs) and a processor based on a multi-core processor architecture.

[0224] The above are only preferred embodiments of the present application and are not intended to limit the present application. For those skilled in the art, the present application may have various modifications and variations. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present application shall be included in the protection scope of the present application.

Claims

1. An intra-frame prediction method, characterized in that: include: Construct a corresponding target intra prediction mode IPM candidate set according to the current template type and template relevance of the current sub-partition in the coding unit; The current sub-partition is intra-predicted based on one of the intra-prediction modes in the target IPM candidate set.

2. The method according to claim 1, characterized in that The step of constructing a corresponding target intra prediction mode IPM candidate set according to the current template type and template correlation of the current sub-partition in the coding unit includes: Obtaining a first derived IPM set derived based on the template information; Determine a template correlation between a template type corresponding to each derived IPM in the first derived IPM set and a current template type of a current sub-partition in the coding unit; Screening a candidate IPM from the first derived IPM set based on the template relevance; A corresponding target IPM candidate set is constructed based on the candidate IPM.

3. The method according to claim 2, characterized in that The first derived IPM set includes at least one of the following: a first type IPM; a second type IPM; a third type IPM; wherein the first type IPM is a prediction mode derived from a first template area and a second template area in a coding unit; the second type IPM is a prediction mode derived from the first template area in the coding unit; and the third type IPM is a prediction mode derived from the second template area in the coding unit.

4. The method according to claim 2, characterized in that: The step of screening the first derived IPM set to obtain a candidate IPM based on the template correlation includes: In the case where the current template type is a first type template, the candidate IPM includes at least one of the following: a first type IPM; a second type IPM; a third type IPM; In the case where the current template type is a second type template, the candidate IPM includes at least one of the following: a first type IPM; a second type IPM; In the case that the current template type is a third type template, the candidate IPMs include at least one of the following: a first type IPM; a third type IPM.

5. The method according to claim 1, characterized in that: The step of constructing a corresponding target intra prediction mode IPM candidate set according to the current template type and template correlation of the current sub-partition in the coding unit includes: Acquire a second derived IPM set from a pre-created initial IPM candidate set; Determine a template correlation between a template type corresponding to each derived IPM in the second derived IPM set and a current template type of a current sub-partition in the coding unit; All derived IPMs in the second derived IPM set are sorted based on the template relevance to obtain a corresponding target IPM candidate set.

6. The method according to claim 5, characterized in that The second derived IPM set includes at least one of the following: a first type IPM; a second type IPM; a third type IPM; wherein the first type IPM is a prediction mode derived from a first template area and a second template area in a coding unit; the second type IPM is a prediction mode derived from the first template area in the coding unit; and the third type IPM is a prediction mode derived from the second template area in the coding unit.

7. The method according to claim 5, characterized in that In a case where the current template type is a first type template, determining the template correlation between the template type corresponding to each derived IPM in the second derived IPM set and the current template type of the current sub-partition in the coding unit includes: Determine the template area occupied by the second template area and the third template area in the first type of template respectively; The template correlations between the second type template and the third type template and the current template type are determined according to the template region area.

8. The method according to claim 5, characterized in that The sorting of all derived IPMs in the second derived IPM set based on the template relevance to obtain a corresponding target IPM candidate set includes: All derived IPMs in the second derived IPM set are sorted in descending order based on the template relevance to obtain a corresponding target IPM candidate set.

9. A communication device, characterized in that: include: memory, and one or more processors; The memory is configured to store one or more programs; When the one or more programs are executed by the one or more processors, the one or more processors implement the method as described in any one of claims 1 to 8.

10. A storage medium, characterized in that: The storage medium stores a computer program, and when the computer program is executed by a processor, the method according to any one of claims 1 to 8 is implemented.