Method for intra prediction and method for providing video data

By deriving the intra-frame prediction mode and utilizing reference line information and MPM lists, the problem of insufficient coding efficiency of existing video compression technology under high data volume is solved, and more efficient video encoding and decoding is achieved.

CN120812261APending Publication Date: 2025-10-17SK TELECOM CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202511158353.9
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2019-12-02
Filing Date
2020-05-27
Publication Date
2025-10-17

AI Technical Summary

Technical Problem

Existing video compression technologies have insufficient improvement in coding efficiency and image quality in the face of increasing video data volume. A more efficient intra-frame prediction mode is needed to improve video coding and decoding efficiency.

Method used

By the method of deriving the intra prediction mode, whether the intra prediction mode of the current block is a planar mode is determined based on reference line information and most probable mode list (MPM) information, and the intra prediction mode of the current block is derived by using the planar information.

Benefits of technology

It provides a wider range of applications and more accurate chroma block prediction, improving the compression performance of video coding.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120812261A_ABST
    Figure CN120812261A_ABST
Patent Text Reader

Abstract

The present disclosure provides a method for intra prediction and a method for providing video data. According to an embodiment of the present disclosure, there is provided a method for deriving an intra prediction mode, the method comprising: a step for obtaining, on the basis of reference line information indicating any one of a plurality of reference lines, MPM information indicating whether an intra prediction mode of a current block is included in a most probable mode (MPM) list not including a planar mode; a step for determining, on the basis of the reference line information and the MPM information, plane information indicating whether an intra prediction mode of the current block corresponds to a plane mode; and a step for deriving an intra prediction mode of the current block using the plane information.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] This application is a divisional application of the original application No. 202080053549.0 (International Application No. PCT / KR2020 / 006823, filed on May 27, 2020, entitled “METHOD AND APPARATUS FOR DERIVING INTRA PREDICTION MODE”). TECHNICAL FIELD

[0002] The present disclosure in some embodiments relates to encoding and decoding of images or videos. More specifically, the present disclosure relates to a method and apparatus for deriving an intra prediction mode by an intra prediction mode derivation scheme with an extended application range to provide improved encoding efficiency and decoding efficiency. BACKGROUND

[0003] Since video data has a large amount of data compared to audio data or still image data, a large amount of hardware resources (including memory) is required to store or transmit the data in its original form before undergoing a compression process.

[0004] Accordingly, storing or transmitting video data is usually accompanied by compressing the data by using an encoder before a decoder can receive, decompress, and reproduce the compressed video data. Existing video compression technologies include H.264 / AVC and High Efficiency Video Coding (HEVC) which improves the encoding efficiency of H.264 / AVC by about 40%.

[0005] However, the increasing size, resolution, and frame rate of videos and the resulting increase in the amount of data to be encoded require a new and more optimal compression technology that has better encoding efficiency and higher image quality improvement than existing compression technologies. SUMMARY

[0006] TECHNICAL PROBLEM

[0007] The present disclosure relates to providing improved video encoding and decoding technology to meet these needs, and in particular, at least one aspect of the present disclosure aims to provide a technology for improving the efficiency of video encoding and decoding by an intra prediction mode derivation scheme that can be generally applicable to various intra prediction technologies.

[0008] TECHNICAL SOLUTION

[0009] At least one aspect of the present disclosure provides a method of deriving an intra prediction mode, the method including the steps of: obtaining MPM (Most Probable Mode) information indicating whether an intra prediction mode of a current block is included in an MPM list excluding a planar mode, based on reference line information indicating any one of a plurality of reference lines; determining planar information indicating whether the intra prediction mode of the current block is a planar mode, based on the reference line information and the MPM information; and deriving the intra prediction mode of the current block by using the planar information.

[0010] Another aspect of the present application provides a device for decoding a video image, comprising an obtaining unit, a determining unit and a deriving unit. The obtaining unit is configured to obtain MPM information indicating whether an intra prediction mode of a current block is included in a most probable mode (MPM) list without a planar mode based on reference line information indicating any one of a plurality of reference lines. The determining unit is configured to determine planar information indicating whether the intra prediction mode of the current block is the planar mode based on the reference line information and the MPM information. The deriving unit is configured to derive the intra prediction mode of the current block by using the planar information.

[0011] Advantageous effects

[0012] As described above, according to at least one embodiment of the present disclosure, an intra prediction mode derivation scheme is provided, which has a more extended application range, effective selection of candidate intra modes for chroma blocks and more accurate prediction for chroma blocks can enable to improve compression performance.

[0013] According to another embodiment of the present disclosure, the MPM list and the non-MPM list can be effectively set, thereby providing improved compression performance. BRIEF DESCRIPTION OF DRAWINGS

[0014] Figure 1 is a block diagram illustrating a video encoding device that can implement the techniques of the present disclosure.

[0015] Figure 2 is a diagram for explaining a method of partitioning or splitting a block by using a QTBTTT structure.

[0016] Figure 3 is a diagram of a plurality of intra prediction modes.

[0017] Figure 4 is a block diagram illustrating a video decoding device that can implement the techniques of the present disclosure.

[0018] Figure 5 is a diagram illustrating a conventional intra prediction mode.

[0019] Figure 6 is a diagram illustrating a multiple reference line (MRL) function.

[0020] Figure 7 is a diagram illustrating an intra sub-partition (ISP) function.

[0021] Figure 8 is a block diagram of an example video encoding / decoding device that can implement the techniques of the present disclosure.

[0022] Figure 9 is a flowchart of an exemplary embodiment of intra prediction mode derivation.

[0023] Figure 10 is a flowchart of an exemplary embodiment for obtaining most probable mode (MPM) information.

[0024] Figure 11 and Figure 12 is a flowchart illustrating various embodiments for determining planar information.

[0025] Figure 13 is a flowchart of an exemplary embodiment of MPM list configuration.

[0026] Figure 14 is a diagram illustrating neighboring blocks used for MPM list configuration.

[0027] Figure 15 and Figure 16 is a flowchart illustrating various embodiments of MPM list configuration. DETAILED DESCRIPTION

[0028] Some embodiments of the present disclosure will be described in detail below with reference to the attached drawings. In the following description, although shown in different drawings, like reference numerals preferably refer to like elements. Also, in the following description of some embodiments, detailed descriptions of related known components and functions will be omitted for the purpose of clarity and conciseness when it is deemed to obscure the subject matter of the present disclosure.

[0029] Figure 1 is a block diagram illustrating a video encoding apparatus in which the techniques of the present disclosure can be implemented. Hereinafter, the video encoding apparatus and sub-components of the apparatus will be described with reference to Figure 1

[0030] The video encoding apparatus can be configured to include a block partitioner 110, a prediction unit 120, a subtractor 130, a transformer 140, a quantizer 145, an encoder 150, a dequantizer 160, an inverse transformer 165, an adder 170, a filter unit 180, and a memory 190.

[0031] The various components of the video encoding apparatus can be implemented as hardware or software, or a combination of hardware and software. In addition, the functions of each component can be implemented by software, and the software functions of each component can be implemented as being executed by a microprocessor.

[0032] ​A video is composed of a plurality of pictures. Each picture is divided into a plurality of regions, and encoding is performed for each region. For example, a picture is divided into one or more tiles or / and slices. Here, one or more tiles can be defined as a tile group. Each tile or / and slice is divided into one or more coding tree units (CTUs). And each CTU is divided into one or more coding units (CUs) in a tree structure. Information applied to each CU is coded as the syntax of the CU, and information commonly applied to CUs included in one CTU is coded as the syntax of the CTU. In addition, information commonly applied to all blocks in one slice is coded as the syntax of the tile or as the syntax of the tile group as a set of tiles, and information applied to all blocks constituting one picture is coded in a picture parameter set (PPS) or a picture header. Furthermore, information commonly referred to by a plurality of pictures is coded in a sequence parameter set (SPS). In addition, information commonly referred to by one or more SPSs is coded in a video parameter set (VPS).

[0033] The block partitioner 110 determines the size of a coding tree unit (CTU). The size information of the CTU (CTU size) is coded as the syntax of the SPS or the PPS and is transmitted to the video decoding apparatus.

[0034] The block partitioner 110 divides each picture constituting a video into a plurality of coding tree units (CTUs) having a predetermined size, and then recursively divides the CTUs using a tree structure. A leaf node in the tree structure becomes a coding unit (CU), which is a basic unit of encoding.

[0035] The tree structure used can be a quad tree (QT) in which an upper node (or parent node) is divided into four lower nodes (or child nodes) of the same size, a binary tree (BT) in which an upper node is divided into two lower nodes, a ternary tree (TT) in which an upper node is divided into three lower nodes in a size ratio of 1:2:1, or a mixture of two or more of the QT structure, the BT structure, and the TT structure. For example, a quad tree plus binary tree (QTBT) structure can be used, or a quad tree plus binary tree plus ternary tree (QTBTTT) structure can be used. Here, BTTT can be collectively referred to as a multi-type tree (MTT).

[0036] Figure 2 A QTBTTT partition tree structure is shown. As Figure 2As shown, a CTU can first be partitioned into a QT structure. Quad-tree partitioning can be repeated until the size of the partitioned block reaches the minimum block size of the leaf node allowed in QT (MinQTSize). A first flag (QT_split_flag) indicating whether each node of the QT structure is partitioned into four nodes at the lower level is encoded by the encoder 150 and signaled to the video decoding device. When the leaf node of the QT is not larger than the maximum block size of the root node allowed in BT (MaxBTSize), it can be further partitioned into any one or more of a BT structure or a TT structure. In the BT structure and / or the TT structure, there can be multiple partition directions. For example, there can be two directions in which the blocks of the related node are partitioned horizontally and vertically. As shown, when starting MTT partitioning, a second flag (mtt_split_flag) indicates whether the node is partitioned, and if so, further flags indicating the partition direction (vertical or horizontal) and / or a flag indicating the split or partition type (binary or ternary) are encoded by the encoder 150 and signaled to the video decoding device. Figure 2

[0037] As another example of a tree structure, when partitioning a block using a QTBTTT structure, information about a CU partition flag (split_cu_flag) indicating whether the node is partitioned is first encoded and signaled, and then QT split flag (split_qt_flag) information indicating whether the partition type is QT partitioning is encoded by the encoder 150 and signaled to the video decoding device. When the CU partition flag (split_cu_flag) value indicates that the node is not partitioned, the block of the node becomes a leaf node in the partition tree structure and becomes a coding unit (CU) that is the basic unit of encoding. When the CU partition flag (split_cu_flag) value indicates that the node is partitioned, the video encoding device classifies the partition type as QT partitioning or MTT partitioning. When the partition type is QT partitioning, no additional information is present. When the partition type is MTT partitioning, one or both of the flags are additionally encoded by the encoder 150 and signaled to the video decoding device, which are a flag (mtt_split_cu_vertical_flag) indicating the MTT partition direction (vertical or horizontal) and a flag (mtt_split_cu_binary_flag) indicating the MTT partition type (binary or ternary).

[0038] ​As yet another example of tree structure, when QTBT is used, there can be two types of partitioning including a type of partitioning that horizontally partitions a block of a relevant node into two blocks of equal size (i.e., symmetric horizontal partitioning) and a type of partitioning that is also vertically partitioned (i.e., symmetric vertical partitioning). A split flag indicating whether each node of the BT structure is partitioned into blocks of a lower layer and partition type information indicating a partitioning type thereof are encoded by the encoder 150 and transmitted to a video decoding apparatus. In addition, there can be another type in which a block of a relevant node is partitioned into two blocks of an asymmetric form. The asymmetric form can include a form in which a block of a relevant node is partitioned into two rectangular blocks of a size ratio of 1:3, or a form in which a block of a relevant node is partitioned in a diagonal direction.

[0039] According to QTBT or QTBTTT partitioning of a CTU, a CU can have various sizes. Hereinafter, a block corresponding to a CU to be encoded or to be decoded (i.e., a leaf node of QTBTTT) is referred to as a "current block".

[0040] The prediction unit 120 predicts the current block to generate a prediction block. The prediction unit 120 includes an intra predictor 122 and an inter predictor 124.

[0041] In general, a current block in a picture can be predictively coded, respectively. Prediction of the current block can be generally performed using an intra prediction technique or an inter prediction technique. The intra prediction technique uses data from the picture containing the current block, and the inter prediction technique uses data from a previous picture that was coded before the picture containing the current block. The inter prediction includes both uni-prediction and bi-prediction.

[0042] The intra predictor 122 predicts pixels in the current block by using peripheral pixels (reference pixels) located around the current block in the current picture. According to different prediction directions, there are a plurality of intra prediction modes. For example, as shown in Figure 3 , the plurality of intra prediction modes can include 2 non-directional modes including a planar mode and a DC mode and 65 directional modes. For each prediction mode, neighboring pixels and a formula to be used are defined differently.

[0043] The intra predictor 122 can determine an intra prediction mode to be used for encoding the current block. In some examples, the intra predictor 122 can encode the current block by using several intra prediction modes and select an appropriate intra prediction mode from among the tested modes. For example, the intra predictor 122 can calculate rate-distortion values through rate-distortion analysis of several tested intra prediction modes, and select an intra prediction mode having the best rate-distortion characteristics among the tested modes.

[0044] The intra predictor 122 selects one of a plurality of intra prediction modes and predicts the current block by using at least one neighboring pixel (reference pixel) determined according to the selected intra prediction mode and a calculation formula. Information about the selected intra prediction mode is encoded by the encoder 150 and transmitted to the video decoding apparatus.

[0045] The inter predictor 124 generates a prediction block for the current block through a motion compensation process. The inter predictor 124 searches for a block most similar to the current block in an encoded and decoded reference picture before the current picture and generates a prediction block of the current block by using the searched block. Then, the inter predictor 124 generates a motion vector corresponding to a displacement between the current block in the current picture and the prediction block in the reference picture. Generally, motion estimation is performed for a luma component, and a motion vector calculated based on the luma component is used for both the luma component and a chroma component. Information about the reference picture and information about the motion vector to be used for predicting the current block are encoded by the encoder 150 and transmitted to the video decoding apparatus.

[0046] The subtracter 130 generates a residual block by subtracting the prediction block generated by the intra predictor 122 or the inter predictor 124 from the current block.

[0047] The transformer 140 transforms a residual signal in the residual block having pixel values in a spatial domain into a transform coefficient in a frequency domain. The transformer 140 can transform the residual signal in the residual block by using a full-size residual block as a transform unit, or separate the residual block into two sub-blocks as a transform region and a non-transform region, and use only the transform region sub-block as a transform unit to transform the residual signal. Here, the transform region sub-block can be one of two rectangular blocks having a size ratio of 1:1 based on a horizontal axis (or a vertical axis). In this case, a flag (cu_sbt_flag) indicating that only the sub-block is transformed, a direction or vertical / horizontal information (cu_sbt_horizontal_flag), and / or position information (cu_sbt_pos_flag) are encoded by the encoder 150 and signaled to the video decoding apparatus. In addition, the size of the transform region sub-block can have a size ratio of 1:3 based on a horizontal axis (or a vertical axis), in which a flag (cu_sbt_quad_flag) identifying the division is additionally encoded by the encoder 150 and signaled to the video decoding apparatus.

[0048] The quantizer 145 quantizes the transform coefficient output from the transformer 140 and outputs the quantized transform coefficient to the encoder 150.

[0049] The encoder 150 encodes the quantized transform coefficients using various encoding methods, such as context-based adaptive binary arithmetic coding (CABAC), to generate a bitstream. The encoder 150 encodes information about block partitioning (such as the CTU size, CU partition flag, QT partition flag, MTT partition type, and MTT partition direction related to block partitioning) to allow a video decoding device to partition blocks in the same manner as a video encoding device.

[0050] In addition, the encoder 150 encodes information about a prediction type indicating whether the current block is encoded by intra prediction or inter prediction, and encodes intra prediction information (i.e., information about an intra prediction mode) or inter prediction information (i.e., information about a reference picture and a motion vector) according to the prediction type.

[0051] The inverse quantizer 160 inversely quantizes the quantized transform coefficient output from the quantizer 145 to generate a transform coefficient. The inverse transformer 165 transforms the transform coefficient output from the inverse quantizer 160 from the frequency domain to the spatial domain to reconstruct a residual block.

[0052] The adder 170 reconstructs the current block by adding the reconstructed residual block and the prediction block generated by the prediction unit 120. The pixels in the reconstructed current block are used as reference pixels when intra-predicting the next block.

[0053] The filter unit 180 performs filtering on the reconstructed pixels to reduce blocking artifacts, ringing artifacts, blurring artifacts, etc. generated due to block-based prediction and transform / quantization. The filter unit 180 may include a deblocking filter 182 and a sample adaptive offset (SAO) filter 184 .

[0054] The deblocking filter 182 filters the boundaries between reconstructed blocks to remove blocking artifacts caused by block-by-block encoding / decoding, and the SAO filter 184 performs additional filtering on the deblocking filtered video. The SAO filter 184 is a filter for compensating for the difference between reconstructed pixels and original pixels caused by lossy encoding.

[0055] The reconstructed blocks are filtered by the deblocking filter 182 and the SAO filter 184 and stored in the memory 190. When all blocks in one picture are reconstructed, the reconstructed picture can be used as a reference picture for inter prediction of blocks in the next picture to be encoded.

[0056] Figure 4 is a functional block diagram illustrating a video decoding device capable of implementing the technology of the present disclosure. Figure 4 Describes a video decoding device and subcomponents of the device.

[0057] The video decoding apparatus may be configured to include a decoder 410 , an inverse quantizer 420 , an inverse transformer 430 , a prediction unit 440 , an adder 450 , a filter unit 460 , and a memory 470 .

[0058] and Figure 1 Like the video encoding device, each component of the video decoding device can be implemented as hardware or software, or a combination of hardware and software. In addition, the function of each component can be implemented by software, and the software function of each component can be implemented as being executed by a microprocessor.

[0059] The decoder 410 decodes a bitstream generated by the video encoding apparatus and extracts information about block partitioning to determine a current block to be decoded, and extracts prediction information required to reconstruct the current block and information about a residual signal, etc.

[0060] The decoder 410 extracts information about the CTU size from the sequence parameter set (SPS) or the picture parameter set (PPS), determines the size of the CTU, and partitions the picture into CTUs of the determined size. The decoder 410 then determines the CTU as the highest level (i.e., the root node of the tree structure) and extracts partition information about the CTU, thereby partitioning the CTU using the tree structure.

[0061] For example, when a CTU is split using the QTBTTT structure, the first flag (QT_split_flag) related to QT splitting is first extracted, and each node is split into four nodes at the lower level. For nodes corresponding to QT leaf nodes, the decoder 410 extracts the second flag (MTT_split_flag) related to MTT division and information on the split direction (vertical / horizontal) and / or split type (binary / ternary) to split the leaf node into the MTT structure. This allows each node below the QT leaf node to be recursively split into a BT or TT structure.

[0062] As another example, when a CTU is partitioned by using a QTBT structure, the decoder 410 first extracts a CU split flag indicating whether a CU is split or not and once a split related block, it extracts a QT split flag. When the partition type is MTT instead of QT, the decoder 410 further extracts a flag (mtt_split_cu_vertical_flag) indicating the MTT split direction (vertical or horizontal) and / or a flag (mtt_split_cu_binary_flag) indicating the MTT split type (binary or ternary). In the partitioning process, each node can have zero or more recursive QT splits followed by zero or more recursive MTT splits. For example, a CTU can go into MTT split immediately or, conversely, have multiple QT splits alone.

[0063] As yet another example, when a CTU is partitioned by using a QTBT structure, the decoder 410 extracts a first flag (QT_split_flag) related to QT split to split each node into four nodes of a lower level. And, for a node corresponding to a leaf node of QT, the decoder 410 extracts a split flag (split_flag) and split direction information indicating whether the node is further split into BT or not.

[0064] Further, when the decoder 410 determines a current block to be decoded through tree structure partitioning, it extracts information about prediction type indicating whether the current block is intra-predicted or inter-predicted. When the prediction type information indicates intra-prediction, the decoder 410 extracts a syntax element for intra-prediction information (intra-prediction mode) of the current block. When the prediction type information indicates inter-prediction, the decoder 410 extracts a syntax element for inter-prediction information (i.e., information indicating a motion vector and a reference picture referred to by the motion vector).

[0065] Further, the decoder 410 extracts information about quantized transform coefficients of the current block as information about the residual signal.

[0066] The inverse quantizer 420 inverse-quantizes the quantized transform coefficients. The inverse transformer 430 inverse-transforms the inverse-quantized transform coefficients from the frequency domain to the spatial domain to reconstruct the residual signal, thereby generating a reconstructed residual block of the current block.

[0067] In addition, when the inverse transformer 430 inverse-transforms only a local region (sub-block) of the transform block, it extracts a flag (cu_sbt_flag) indicating that only the sub-block of the transform block has been transformed, the sub-block's direction (vertical / horizontal) information (cu_sbt_horizontal_flag), and / or the sub-block's position information (cu_sbt_pos_flag), and inverse-transforms the transform coefficients of the sub-block from the frequency domain to the spatial domain to reconstruct the residual signal. Simultaneously, the inverse transformer 430 fills the remaining region of the transform block that has not been inverse-transformed with a "0" value for the residual signal, thereby generating a final residual block for the current block.

[0068] The prediction unit 440 may include an intra predictor 442 and an inter predictor 444. The intra predictor 442 is activated when the prediction type of the current block is intra prediction, and the inter predictor 444 is activated when the prediction type of the current block is inter prediction.

[0069] The intra predictor 442 determines an intra prediction mode of a current block from among a plurality of intra prediction modes from the syntax elements for the intra prediction mode extracted by the decoder 410, and predicts the current block by using neighboring reference pixels of the current block according to the determined intra prediction mode.

[0070] The inter predictor 444 determines a motion vector of a current block and a reference picture referred to by the motion vector using the syntax elements for the inter prediction information extracted by the decoder 410 , and predicts the current block by using the determined motion vector and reference picture.

[0071] The adder 450 adds the residual block output from the inverse transformer to the prediction block output from the inter predictor or the intra predictor to reconstruct the current block. The pixels in the reconstructed current block are used as reference pixels when intra-predicting the upcoming block to be decoded.

[0072] The filter unit 460 may include a deblocking filter 462 and an SAO filter 464. The deblocking filter 462 deblocks and filters the boundaries between reconstructed blocks to remove blocking artifacts caused by block-by-block decoding. The SAO filter 464 performs additional filtering on the reconstructed blocks after deblocking filtering to compensate for the differences between the reconstructed pixels and the original pixels caused by lossy encoding. The reconstructed blocks are filtered by the deblocking filter 462 and the SAO filter 464 and stored in the memory 470. When all blocks in a picture are reconstructed, the reconstructed picture is used as a reference picture for inter-frame prediction of blocks in the picture to be encoded later.

[0073] The intra prediction mode for intra prediction consists of a directional mode with directionality and an undirectional mode without directionality. In traditional methods, such as Figure 5As shown, intra prediction is performed using a total of 35 intra prediction modes, including 33 angular modes having directionality (ie, directional modes) and two non-angular modes without directionality (ie, a planar mode and a non-directional mode of a direct current (DC) mode).

[0074] The conventional method determines the intra prediction mode for intra prediction of the current block (or, the intra prediction mode of the current block) by selecting three most probable modes (MPMs) with a high probability of matching the intra prediction mode of the current block from among 35 modes and including the selected prediction mode configuration list. For the list configuration, the conventional method uses the prediction modes of neighboring blocks located near the current block and the prediction mode that is statistically most frequently used.

[0075] The list consisting of the selected prediction modes may be referred to as an MPM list, and the unselected prediction modes (ie, 32 prediction modes) may be referred to as non-MPM modes or remaining modes. In addition, the list consisting of non-MPM modes may be referred to as a non-MPM list.

[0076] The intra prediction mode of the current block can be determined by a prediction mode information item signaled from the video encoding device to the video decoding device. Conventionally, a 1-bit flag indicating whether the intra prediction mode of the current block is included in the MPM list is first signaled. If the intra prediction mode of the current block is included in the MPM list, information (MPM index) is signaled to indicate any one of the prediction modes included in the MPM list. If the intra prediction mode of the current block is not included in the MPM list, an index indicating any one of the non-MPM modes is signaled.

[0077] Furthermore, intra prediction of the current block may utilize various techniques such as multiple reference lines (MRL), intra sub-partitioning (ISP), regular intra prediction, and the like.

[0078] like Figure 6 As shown, the MRL technology or MRL mode refers to a technology for performing intra prediction of a current block (CU) by using multiple reference lines. When the MRL mode is applied, multiple reference lines are assigned indexes "0" to "3" according to their proximity to the current block. One reference line is selected from the reference lines of "0", "1" and "2", and the samples in the selected reference line are used as reference samples when performing intra prediction. Information (index) about the selected reference line is notified by signal from the video encoding device to the video decoding device. The MRL mode is applicable only to the MPM mode, and is applied only to the directional mode and DC mode.

[0079] like Figure 7As shown, the ISP technique or ISP mode refers to a technique of splitting a current block into a plurality of sub-blocks and performing prediction, transformation, quantization, etc. for each sub-block. When the ISP mode is applied, the current block is divided into two sub-blocks (a) of (b) or four sub-blocks (b) according to its size. Since the minimum size of the current block to which the ISP mode can be applied is 4x8 or 8x4, the ISP technique is turned off when the size of the current block is 4x4. The current block is bisected when the size of the current block is 4x8 or 8x4, and the current block is quadrisected when the size of the current block exceeds 4x8 or 8x4. Figure 7 Figure 7

[0080] First, a flag indicating whether the ISP mode (on / off) is applied is signaled from the video encoding device to the video decoding device, and when the ISP mode is on, information about the partition direction of the current block is additionally signaled. The ISP mode is turned on only when the reference line index is "0" in the MRL mode, and is applied to both the MPM mode and the non-MPM mode, and to both the directional mode and the non-directional mode.

[0081] Regular is a commonly used intra prediction technique or mode, and refers to a case where the reference line index is "0" in the MRL mode and a case where the ISP mode is turned off. The Regular mode is applied to both the MPM mode and the non-MPM mode, and to both the directional mode and the non-directional mode.

[0082] Table 1 shows the syntax and structure of the MRL mode, the ISP mode, and the Regular mode.

[0083] [Table 1]

[0084]

[0085] The syntax expressed in Table 1 is described as follows.

[0086] intra_luma_ref_idx: a syntax indicating the index of the reference line. intra_luma_ref_idx ≠ 0 means the reference line for the MRL mode, and intra_luma_ref_idx = 0 means the reference line for the ISP mode or the Regular mode. The MRL mode is not performed in the first row of the CTU.

[0087] intra_subpartitions_mode_flag: a syntax indicating whether the ISP mode (on / off) is applied.

[0088] ​​intra_subpartitions_split_flag: information indicating the partition direction of the current block when the ISP mode is on.

[0089] intra_luma_mpm_flag: information indicating whether the intra prediction mode of the current block is included in the MPM list. When the MRL mode is on, a condition that intra_luma_mpm_flag = 1 can be set or derived. Here, the scenario that the MRL mode is on means that intra_luma_ref_idx ≠ 0.

[0090] intra_luma_mpm_idx: information indicating one of the prediction modes included in the MPM list, which is the same prediction mode as the intra prediction mode of the current block. intra_luma_mpm_idx is signaled when intra_luma_mpm_flag = 1.

[0091] intra_luma_mpm_remainder: information indicating any one of the non-MPM modes (the same prediction mode as the intra prediction mode of the current block). intra_luma_mpm_remainder is signaled when intra_luma_mpm_flag = 0.

[0092] A comparison of the above three techniques is shown in Table 2.

[0093] [Table 2]

[0094] Ref idx MPM Mode MRL !=0 MPM Angle + DC ISP =0 MPM + non-MPM Angle + plane + DC Regular =0 MPM + non-MPM Angle + plane + DC

[0095] As can be seen from Table 2, in the MRL mode, the index of the reference line is non-zero, only the MPM mode is supported, and only the directional mode and the DC mode are supported. In the ISP mode, the index of the reference line is zero, both the MPM mode and the non-MPM mode are supported, and both the directional mode and the undirectional mode are supported. In the Regular mode, the index of the reference line is zero, both the MPM mode and the non-MPM mode are supported, and both the directional mode and the undirectional mode are supported.

[0096] The present disclosure aims to provide a method of configuring the MPM list that can be applied to all MRL mode, ISP mode, and Regular mode. Specifically, the present disclosure provides a method of configuring the MPM list by excluding the planar mode and / or the DC mode (one or more of the undirectional mode) and signaling separate information for the undirectional mode.

[0097] As Figure 8As shown, the video encoding / decoding device can include an obtaining unit 810, a determining unit 820, a deriving unit 830, a candidate deriving unit 840 and a list configuring unit 850. The determining unit 820 can include a first determining unit 822 and a second determining unit 824.

[0098] The obtaining unit 810 can obtain the MPM information based on the reference line information (step S910). Here, the reference line information is information indicating a reference line among the multiple reference lines used for the intra prediction of the current block. The reference line information can be implemented as intra luma ref idx. When the reference line information is not present, the reference line information can be set or derived to indicate the reference line with index 0 (intra luma ref idx = 0).

[0099] The MPM information is information indicating whether the intra prediction mode of the current block (current intra mode) is included in the MPM list. The MPM information can be implemented as intra luma mpm flag. When the MPM information is not present (when the multiple reference lines or MRL is on), the MPM information can be set or derived to indicate that the intra prediction mode of the current block is included in the MPM list (intra luma mpm flag = 1).

[0100] The determining unit 820 can determine the planar information based on the reference line information and the MPM information (S920). The planar information is information indicating whether the intra prediction mode of the current block is the planar mode, and it can be implemented as intra luma planar mode flag or intra luma not planar flag. When the planar information is not present, the planar information can be inferred to indicate that the intra prediction mode of the current block is not the planar mode (intra luma planar mode flag = 0, intra luma not planar flag = 1).

[0101] When the planar information is implemented as intra_luma_planar_mode_flag, the condition of intra_luma_planar_mode_flag = 1 can indicate that the intra prediction mode of the current block is the planar mode, and the condition of intra_luma_planar_mode_flag = 0 can indicate that the intra prediction mode of the current block is not the planar mode. When the planar information is implemented as intra_luma_not_planar_flag, the condition of intra_luma_not_planar_flag = 0 can indicate that the intra prediction mode of the current block is the planar mode, and the condition of intra_luma_not_planar_flag = 1 can indicate that the intra prediction mode of the current block is not the planar mode.

[0102] The derivation unit 830 can derive the intra prediction mode of the current block by using the planar information (S930). For example, when the planar information indicates the planar mode, the planar mode can be set as the intra prediction mode of the current block. When the planar information does not indicate the planar mode, the intra prediction mode of the current block can be determined by the content indicated by the MPM information. In the case where the MPM information indicates that the intra prediction mode of the current block is included in the MPM list, the candidate intra prediction mode among the intra prediction modes indicated by the MPM index (i.e., the candidate intra prediction mode included in the MPM list) can be derived as the intra prediction mode of the current block. Conversely, when the MPM information indicates that the intra prediction mode of the current block is not included in the MPM list, the non-MPM mode indicated by the non-MPM information (intra_luma_mpm_remainder) can be derived for the intra prediction mode of the current block.

[0103] Hereinafter, each of the above-described steps will be described with respect to each embodiment, respectively.

[0104] Embodiment 1

[0105] Embodiment 1 is a process of obtaining MPM information.

[0106] First, the video encoding apparatus can signal the reference line information (intra_luma_ref_idx) to the video decoding apparatus by including the reference line information (intra_luma_ref_idx) in a bitstream. The video decoding apparatus can decode the reference line information from the bitstream (S1020).

[0107] MRL mode

[0108] When the reference line information indicates a reference line with an index other than "0" (intra_luma_ref_idx≠0), the MRL mode can be applied to intra prediction of the current block. Since the MRL mode exclusively supports the MPM mode, the video encoding device may not signal the MPM information (intra_luma_mpm_flag), and the MPM information may be derived or set to "1" (intra_luma_mpm_flag=1).

[0109] When the decoded reference line information indicates a reference line having an index other than '0' (intra_luma_ref_idx≠0) in step S1040 , since MPM information is not signaled, the video decoding apparatus may obtain MPM information by inferring or setting the MPM information to '1' (intra_luma_mpm_flag=1) in step S1080 .

[0110] ISP mode

[0111] When the reference line information indicates a reference line with an index of "0" (intra_luma_ref_idx = 0), the ISP mode or the Regular mode can be applied to the intra prediction of the current block. In order to distinguish between the ISP mode and the Regular mode, the video encoding device can include the information indicating whether the ISP mode is applied (intra_subpartitions_mode_flag) in the bitstream to signal the video decoding device whether the ISP mode is applied (intra_subpartitions_mode_flag).

[0112] In addition, when the ISP mode (intra_subpartitions_mode_flag = 1) is applied, the video encoding device can further include information indicating the split direction of the current block (intra_subpartitions_split_flag) in the bitstream to signal the information indicating the split direction of the current block (intra_subpartitions_split_flag). In addition, since the ISP mode supports both the MPM mode and the non-MPM mode, the video encoding device can signal the MPM information.

[0113] When the decoded reference line information indicates the reference line with index "0" (intra_luma_ref_idx = 0) in step S1040, the video decoding device can distinguish the ISP mode and the Regular mode by further decoding information indicating whether to apply the ISP mode (S1050). When the information indicates to apply the ISP mode (intra_subpartitions_mode_flag = 1) in step S1060, the video decoding device can further decode information indicating a partition direction (intra_subpartition_split_flag) in step S1070. In addition, the video decoding device can obtain the MPM information by decoding the MPM information from the bitstream (S1090).

[0114] Regular mode

[0115] When the ISP mode is not applied (intra_subpartitions_mode_flag = 0), the Regular mode can be used for the intra prediction of the current block. Since the Regular mode supports both the MPM mode and the non-MPM mode, the video encoding device can signal the MPM information to the video decoding device.

[0116] When the information indicating whether to apply the ISP mode indicates not to apply the ISP mode (intra_subpartitions_mode_flag = 0) in step S1060, the Regular mode can be used for the intra prediction of the current block. In this case, the video decoding device can decode and obtain the MPM information from the bitstream (S1090).

[0117] Table 3 shows the syntax structure of the above-described embodiment 1.

[0118] [Table 3]

[0119]

[0120] Some embodiments implement the step of obtaining the MPM information by using information indicating activation / deactivation (enable / disable, i.e., on / off) of the MRL mode (e.g., mrl_enabled_flag) or information indicating activation / deactivation (on / off) of the ISP mode (e.g., isp_enabled_flag).

[0121] The information indicating activation / deactivation of the MRL mode and the information indicating activation / deactivation of the ISP mode can be defined in one or more locations of a sequence parameter set, a picture parameter set, a slice header, and a tile group header.

[0122] When the MRL mode is enabled (mrl enabled flag = 1), the video encoding device can signal the reference line information, and when the MRL mode is not enabled (mrl enabled flag = 0), it can not signal the reference line information, but set or derive the reference line information to the reference line with index "0" (intra luma ref idx = 0). When the MRL mode is enabled (mrl enabled flag = 1 in step S1010), the video decoding device can decode the reference line information (S1020), and when the MRL mode is not enabled (mrl enabled flag = 0 in step S1010), it can not decode the reference line information, but can infer the reference line information to indicate the reference line with index "0" (intra luma ref idx = 0).

[0123] When the ISP mode is enabled (isp enabled flag = 1), the video encoding device can signal intra subpartitions mode flag and intra subpartitions split flag, and when the ISP mode is disabled (isp enabled flag = 0), it can not signal intra subpartitions mode flag and intra subpartitions split flag. In response, when the ISP mode is enabled (isp enabled flag = 1) in step S1040 while the reference line information indicates the reference line with index "0" (intra luma ref idx = 0), the video decoding device can decode intra subpartitions mode flag and intra subpartitions split flag in steps S1050 and S1070. When the ISP mode is disabled (isp enabled flag = 0) in step S1040 or the reference line information indicates the reference line with index other than "0" (intra luma ref idx ≠ 0), the video decoding device can not decode intra subpartitions mode flag and intra subpartitions split flag (S1050, S1070).

[0124] Embodiment 2

[0125] Embodiment 2 relates to the steps of determining the plane information and the steps of deriving the intra prediction mode of the current block based on the plane information.

[0126] In Embodiment 2 and Embodiment 3 to be described below, it is assumed that a total of 67 intra prediction modes are used to derive an intra prediction mode of a current block. The total of 67 intra prediction modes can include two non-directional modes (a planar mode and a DC mode) and 65 directional modes.

[0127] Embodiment 2 can be divided into the following two embodiments according to the type of non-directional mode excluded from the MPM list among the non-directional modes (the planar mode and the DC mode).

[0128] Embodiment 2-1

[0129] In Embodiment 2-1, the planar mode can be excluded from the MPM list alone. In other words, in Embodiment 2-1, the MPM list can be configured by using the DC mode and the directional modes.

[0130] MRL mode

[0131] The MRL mode can support the MPM mode, support the directional modes and the DC mode, and support the reference line having an index other than "0". Therefore, in the case where the MRL mode is applied, the MPM information can indicate that the current intra mode (the intra prediction mode of the current block) is included in the MPM list (intra_luma_mpm_flag = 1), and the reference line information can indicate the reference line having an index other than "0" (intra_luma_ref_idx ≠ 0).

[0132] When the MPM information indicates that the current intra mode is included in the MPM list (intra_luma_mpm_flag = 1) while the reference line information indicates the reference line having an index other than "0" (intra_luma_ref_idx ≠ 0), the planar information can be inferred to be a value indicating that the current intra mode is not the planar mode (intra_luma_planar_mode_flag = 0 or intra_luma_not_planar_mode_flag = 1).

[0133] In addition, in order to indicate any one of the candidate intra prediction modes included in the MPM list, an MPM index (intra_luma_mpm_idx) can be signaled to the video decoding apparatus. Here, the MPM index can be information indicating any one of the candidate intra prediction modes (MPM mode) included in the MPM list.

[0134] The video decoding device can determine MPM information and reference line information (S1110, S1120). In case the MRL mode is applied, the MPM information can indicate that the current intra mode is included in the MPM list (intra_luma_mpm_flag = 1), and the reference line information can indicate a reference line with an index other than "0" (intra_luma_ref_idx ≠ 0).

[0135] In addition, in step S1140, the planar information can not be signaled and can be inferred as a value not indicating the planar mode (intra_luma_planar_mode_flag = 0).

[0136] Since the planar information does not indicate the planar mode in step S1150 (intra_luma_planar_mode_flag = 0 or intra_luma_not_planar_mode_flag = 1), the MPM index can be decoded from the bitstream (S1160). In addition, the candidate intra prediction mode indicated by the MPM index in the MPM list can be derived as the intra prediction mode of the current block.

[0137] ISP mode

[0138] The ISP mode can support both the MPM mode and the non-MPM mode, support both the directional mode and the non-directional mode, and support a reference line with an index of "0". Therefore, in case the ISP mode is applied, the MPM information can indicate that the current intra mode is included in the MPM list (intra_luma_mpm_flag = 1) or indicate that the current intra mode is not included in the MPM list (intra_luma_mpm_flag = 0). The reference line information can indicate a reference line with an index of "0" (intra_luma_ref_idx = 0).

[0139] When the MPM information indicates that the current intra mode is included in the MPM list (intra_luma_mpm_flag = 1) while the reference line information indicates a reference line with an index of "0" (intra_luma_ref_idx = 0), the planar information can be signaled to the video decoding device.

[0140] When the planar information indicates that the current intra mode is not a planar mode (intra_luma_planar_mode_flag = 0 or intra_luma_not_planar_mode_flag = 1), the MPM index can be signaled to the video decoding device. In contrast, when the planar information indicates that the current intra mode is a planar mode (intra_luma_planar_mode_flag ≠ 0 or intra_luma_not_planar_mode_flag = 0), the MPM index can not be signaled to the video decoding device.

[0141] The video decoding device can determine the MPM information and the reference line information (S1110, S1120). In the case of applying the ISP mode, the MPM information can indicate that the current intra mode is included in the MPM list (intra_luma_mpm_flag = 1) or indicate that the current intra mode is not included in the MPM list (intra_luma_mpm_flag = 0). The reference line information can indicate the reference line with index "0" (intra_luma_ref_idx = 0).

[0142] When intra_luma_mpm_flag = 0 (S1110), the non-MPM information can be decoded from the bitstream (S1170). When intra_luma_mpm_flag = 1 (S1110), due to intra_luma_ref_idx = 0 (S1120), the planar information can be decoded from the bitstream and thus its value can be determined (S1130).

[0143] When the planar information does not indicate a planar mode (intra_luma_planar_mode_flag = 0 or intra_luma_not_planar_mode_flag = 1, S1150), the MPM index can be decoded from the bitstream (S1160). In addition, the candidate intra prediction mode indicated by the MPM index in the MPM list can be set as the intra prediction mode of the current block. In contrast, when the planar information indicates a planar mode (intra_luma_planar_mode_flag = 1 or intra_luma_not_planar_mode_flag = 0, S1150), the planar mode can be set as the intra prediction mode of the current block.

[0144] Regular mode

[0145] The Regular mode can support the MPM mode and the non-MPM mode, support the directional mode and the non-directional mode, and support the reference line with index "0". Thus, in the case of applying the Regular mode, the MPM information can indicate that the current intra mode is included in the MPM list (intra_luma_mpm_flag = 1) or indicate that the current intra mode is not included in the MPM list (intra_luma_mpm_flag ≠ 1), and the reference line information can indicate the reference line with index "0" (intra_luma_ref_idx = 0).

[0146] When the MPM information indicates that the current intra mode is not included in the MPM list (intra_luma_mpm_flag = 0), the non-MPM information (intra_luma_mpm_remainder) can be signaled to the video decoding device. Here, the non-MPM information can be information indicating one of the candidate intra prediction modes (non-MPM modes) included in the non-MPM list.

[0147] In contrast, when the MPM information indicates that the current intra mode is included in the MPM list (intra_luma_mpm_flag = 1) and the reference line information indicates the reference line with index "0" (intra_luma_ref_idx = 0), the planar information can be signaled to the video decoding device.

[0148] When the planar information indicates that the current intra mode is not the planar mode (intra_luma_planar_mode_flag = 0 or intra_luma_not_planar_mode_flag = 1), the MPM index can be signaled to the video decoding device. In contrast, when the planar information indicates that the current intra mode is the planar mode (intra_luma_planar_mode_flag ≠ 0 or intra_luma_not_planar_mode_flag = 0), the MPM index can not be signaled.

[0149] The video decoding device can determine the MPM information and the reference line information (S1110, S1120). When the MPM information indicates that the current intra mode is not included in the MPM list (intra_luma_mpm_flag = 0), the non-MPM information can be decoded from the bitstream (S1170), and the candidate intra prediction mode indicated by the non-MPM information in the non-MPM list can be selected as the intra prediction mode of the current block.

[0150] On the other hand, when the MPM information indicates that the current intra mode is included in the MPM list (intra_luma_mpm_flag = 1), reference line information can be determined (S1120). When the reference line information indicates a reference line with index "0" (intra_luma_ref_idx = 0), planar information can be decoded from the bitstream (S1130).

[0151] When the planar information does not indicate the planar mode (intra_luma_planar_mode_flag = 0 or intra_luma_not_planar_mode_flag = 1) in step S1150, an MPM index can be decoded from the bitstream (S1160), and a candidate intra prediction mode indicated by the MPM index in the MPM list can be derived as the intra prediction mode of the current block. On the other hand, when the planar information indicates the planar mode (intra_luma_planar_mode_flag = 1 or intra_luma_not_planar_mode_flag = 0) in step S1150, the planar mode can be derived for the intra prediction mode of the current block.

[0152] Table 4 shows the syntax structure of the above-described embodiment 2-1.

[0153] [Table 4]

[0154]

[0155] Embodiment 2-2

[0156] In embodiment 2-2, the non-directional modes (i.e., the planar mode and the DC mode) can be excluded from the MPM list. In other words, embodiment 2-2 can configure the MPM list by using only the directional modes.

[0157] Compared with Embodiment 2-1, Embodiment 2-2 can further distinguish the planar mode and the DC mode by further using information (e.g., intra_luma_non-angular_mode_flag) indicating whether the intra prediction mode of the current block corresponds to the non-angular mode. The condition of intra_luma_non-angular_mode_flag = 1 can indicate that the intra prediction mode of the current block corresponds to the non-angular mode (the planar mode or the DC mode), and the condition of intra_luma_non-angular_mode_flag = 0 can indicate that the intra prediction mode of the current block corresponds to the directional mode. When the non-angular mode does not exist, the intra prediction mode of the current block can be set or derived as a value (intra_luma_non-angular_mode_flag = 0) indicating that the intra prediction mode of the current block corresponds to the directional mode.

[0158] The step of determining the non-angular information can be performed by the first determining unit 822, and the step of determining the planar information can be performed by the second determining unit 824.

[0159] MRL mode

[0160] When the MPM information indicates that the current intra mode is included in the MPM list (intra_luma_mpm_flag = 1) while the reference line information indicates that the reference line has an index other than “0” (intra_luma_ref_idx ≠ 0), the non-angular information (intra_luma_non-angular_mode_flag) can be set or derived as a value (intra_luma_non-angular_mode_flag = 0) indicating that the current intra mode does not correspond to the non-angular mode.

[0161] In the case where the non-angular information is set as a value (intra_luma_non-angular_mode_flag = 0) indicating that the current intra mode does not correspond to the non-angular mode, the MPM index can be signaled to the video decoding device to indicate one of the candidate intra prediction modes included in the MPM list.

[0162] The video decoding device can determine the MPM information and the reference line information (S1210, S1220). When the MRL mode is applied, the MPM information can indicate that the current intra mode is included in the MPM list (intra_luma_mpm_flag = 1) in step S1210, and the reference line information can indicate that the reference line has an index other than "0" (intra_luma_ref_idx ≠ 0) in step S1220. Accordingly, the non-angular information can be inferred to a value indicating that the current intra mode does not correspond to the non-angular mode (intra_luma_non-angular_mode_flag = 0) in step S1240.

[0163] In addition, in a case where the non-angular information indicates that the current intra mode does not correspond to the non-angular mode (intra_luma_non-angular_mode_flag = 0, S1280), the MPM index can be decoded from the bitstream (S1290). Further, the candidate intra prediction mode indicated by the MPM index in the MPM list can be derived as the intra prediction mode of the current block.

[0164] ISP mode

[0165] When the MPM information indicates that the current intra mode is included in the MPM list (intra_luma_mpm_flag = 1) while the reference line information indicates the reference line with the index of "0" (intra_luma_ref_idx = 0), the non-angular information (intra_luma_non-angular_mode_flag) can be signaled to the video decoding device.

[0166] In a case where the ISP mode is applied (intra_subpartitions_mode_flag = 1), the planar information can be inferred to a value indicating that the intra prediction mode of the current block is the planar mode (intra_luma_planar_mode_flag = 1 or intra_luma_not_planar_mode_flag = 0). In addition, in a case where the planar information indicates that the current intra mode is the planar mode (intra_luma_planar_mode_flag = 1 or intra_luma_not_planar_mode_flag = 0), the MPM index can not be signaled to the video decoding device.

[0167] The video decoding device can determine the MPM information and the reference line information (S1210, S1220). When the ISP mode is applied, the MPM information can indicate that the current intra mode is included in the MPM list (intra_luma_mpm_flag = 1) in step S1210, and the reference line information can indicate the reference line with index "0" (intra_luma_ref_idx = 0) in step S1220. Thus, the non-directional information can be decoded from the bitstream (S1230).

[0168] Since the ISP mode is applied and intra_subpartitions_mode_flag = 1 (S1250), the planar information can be inferred as a value indicating that the intra prediction mode of the current block is the planar mode (intra_luma_planar_mode_flag = 1 or intra_luma_not_planar_mode_flag = 0, S1270).

[0169] When the non-directional information indicates that the current intra mode corresponds to the non-directional mode (intra_luma_non-angular_mode_flag = 0, S1250), the planar mode can be derived as the intra prediction mode of the current block. On the other hand, when the non-directional information indicates that the current intra mode does not correspond to the non-directional mode (intra_luma_non-angular_mode_flag = 1) in step S1280, the MPM index is decoded from the bitstream (S1290), and the candidate intra prediction mode in the MPM list indicated by the MPM index can be derived as the intra prediction mode of the current block.

[0170] Regular mode

[0171] When the MPM information indicates that the current intra mode is not included in the MPM list (intra_luma_mpm_flag = 0), the non-MPM information (intra_luma_mpm_remainder) can be signaled to the video decoding device. In contrast, when the MPM information indicates that the current intra mode is included in the MPM list (intra_luma_mpm_flag = 1) while the reference line information indicates the reference line with index "0" (intra_luma_ref_idx = 0), the non-directional information (intra_luma_non-angular_mode_flag) can be signaled to the video decoding device.

[0172] In addition, when the ISP mode is not applied (intra_subpartitions_mode_flag = 0) and the angular information indicates that the current intra mode corresponds to an angular mode (intra_luma_non-angular_mode_flag = 1), the planar information can be signaled to the video decoding device. In contrast, when the ISP mode is applied (intra_subpartitions_mode_flag = 1) or the angular information indicates that the current intra mode does not correspond to an angular mode (intra_luma_non-angular_mode_flag = 0), the planar information can be inferred to be a value (intra_luma_planar_mode_flag = 1 or intra_luma_not_planar_mode_flag = 0) indicating that the current intra mode is a planar mode. Since the Regular mode is applied, this step can assume that intra_subpartitions_mode_flag = 0.

[0173] When the angular information indicates that the current intra mode corresponds to an angular mode (intra_luma_non-angular_mode_flag = 1), the MPM index (intra_luma_mpm_idx) can be signaled to the video decoding device. In contrast, when the angular information indicates that the current intra mode does not correspond to an angular mode (intra_luma_non-angular_mode_flag = 0), the MPM index (intra_luma_mpm_idx) can not be signaled.

[0174] The video decoding device can determine the MPM information and the reference line information (S1210, S1220). When the MPM information indicates that the current intra mode is not included in the MPM list (intra_luma_mpm_flag = 0), the non-MPM information (intra_luma_mpm_remainder) can be decoded from the bitstream (S1295), and the candidate intra prediction mode in the non-MPM list indicated by the syntax of the intra_luma_mpm_remainder can be derived as the intra prediction mode of the current block.

[0175] On the contrary, when the MPM information indicates that the current intra mode is included in the MPM list (intra_luma_mpm_flag = 1, S1210), the reference line information can be determined (S1220). When the reference line information indicates the reference line with index "0" (intra_luma_ref_idx = 0, S1220), the non-angular information can be decoded from the bitstream (S1230), so that its value can be determined.

[0176] When the ISP mode is not applied (intra_subpartitions_mode_flag = 0) and the non-angular information indicates that the current intra mode corresponds to the non-angular mode (intra_luma_non-angular_mode_flag = 1) (S1250), the planar information can be decoded from the bitstream. On the contrary, when the ISP mode is applied (intra_subpartitions_mode_flag = 1) or when the non-angular information indicates that the current intra mode does not correspond to the non-angular mode (intra_luma_non-angular_mode_flag = 0) (S1250), in step S1270, the planar information can be inferred as a value indicating that the current intra mode is the planar mode (intra_luma_planar_mode_flag = 1 or intra_luma_not_planar_mode_flag = 0). Since the Regular mode is applied, intra_subpartitions_mode_flag = 0 can be assumed in S1270.

[0177] When the non-angular information indicates that the current intra mode does not correspond to the non-angular mode (intra_luma_non-angular_mode_flag = 0) in step S1280, the MPM index (intra_luma_mpm_idx) can be decoded from the bitstream (S1290). In this case, the candidate intra prediction mode indicated by the decoded MPM index in the MPM list can be derived as the intra prediction mode of the current block.

[0178] On the other hand, when the angular information indicates that the current intra mode corresponds to the angular mode (intra_luma_non-angular_mode_flag = 0) in step S1280, the intra prediction mode of the current block can be derived by the content indicated by the planar information. Specifically, when the planar information indicates that the intra prediction mode of the current block is the planar mode (intra_luma_planar_mode_flag = 1 or intra_luma_not_planar_mode_flag = 0), the planar mode can be derived as the intra prediction mode of the current block, and when the planar information indicates that the intra prediction mode of the current block is not the planar mode (intra_luma_planar_mode_flag = 0 or intra_luma_not_planar_mode_flag = 1), the DC mode can be derived as the intra prediction mode of the current block.

[0179] Table 5 shows syntax structures of operations of the above-described video encoding / decoding apparatus.

[0180] [Table 5]

[0181]

[0182] Embodiment 3

[0183] Embodiment 3 provides various embodiments for configuring the MPM list.

[0184] A neighboring block of the current block can be used as a block for configuring the MPM list. As shown in Figure 14 the third embodiment can configure the MPM list by using a left block L located left of the current block CU and an above block A located above the current block CU. Hereinafter, the prediction mode of the left block L is referred to as Left, and the prediction mode of the above block A is referred to as Above.

[0185] The video encoding / decoding apparatus (candidate derivation unit) can obtain the Left from the left block L and the Above from the above block A (S1310). In this process, the availability of the Left and the Above can be determined, and as a result, a step for setting or modifying an unavailable prediction mode to the planar mode can be performed.

[0186] The video encoding / decoding apparatus (candidate derivation unit) can apply various criteria to the Left and the Above to derive the candidate intra prediction modes (MPM modes) to be included in the MPM list (S1320).

[0187] The various criteria can include whether at least one of the left prediction mode (Left) and the above prediction mode (Above) corresponds to the directional mode, and whether the left prediction mode (Left) and the above prediction mode (Above) are identical to each other. The various criteria can further include determining whether the left prediction mode (Left) and the above prediction mode (Above) are different directional modes, and if so, determining whether a difference between the left prediction mode (Left) and the above prediction mode (Above) is within a preset range.

[0188] The video encoding / decoding apparatus (list configuration unit) can configure the MPM list by including the derived candidate intra prediction modes (S1330). The MPM list can include one or more directional modes. The MPM list can further include the DC mode as the non-directional mode. For example, the MPM list can consist of only 4 or 5 directional modes. Alternatively, the MPM list can consist of a total of 4 or 5 intra prediction modes including the DC mode and the directional modes.

[0189] When the MPM list is configured by including the DC mode, the DC mode can be located at the end of the MPM list. In other words, among the prediction modes included in the MPM list, the largest index can be assigned to the DC mode (located at the end of the MPM list). Conversely, the smallest index can be assigned to the DC mode (at the beginning of the MPM list).

[0190] For example, when the MPM list is configured as {3, DC, 12, 4, 45}, in order to indicate that mode No. "12" is used for the intra prediction mode of the current block, the index "2" corresponding to mode No. "12" can be expressed as "001" (truncated unary method). On the other hand, when the MPM list is configured as {3, 12, 4, 45, DC}, in order to indicate that mode No. "12" is used for the intra prediction mode of the current block, the index "1" corresponding to mode No. "12" can be expressed as "01".

[0191] Embodiment 3 can be divided into the following specific embodiments according to the criteria applied to the left prediction mode (Left) and the above prediction mode (Above).

[0192] Embodiment 3-1

[0193] When the left prediction mode (Left) and the above prediction mode (Above) are obtained (S1510), it can be determined whether both the left prediction mode (Left) and the above prediction mode (Above) correspond to the non-directional mode (S1520).

[0194] When both the left prediction mode (Left) and the above prediction mode (Above) are non-directional modes, the MPM list can be composed of a total of four directional modes such as {V, H, V-4, V+4}, or it can be composed of four directional modes and the DC mode such as {V, H, V-4, V+4, DC} or {DC, V, H, V-4, V+4} (S1530). Here, V indicates a vertical mode (angular_50, directional mode No. 50), H indicates a horizontal mode (angular_18, directional mode No. 18), V-4 indicates directional mode No. 46, and V+4 indicates directional mode No. 54.

[0195] When there is an addition or subtraction operator in the value of the prediction mode to be added to the MPM list, the MPM list can be provided with a result value obtained by applying a remainder operation as in Equation 1.

[0196] [Equation 1]

[0197]

[0198] The input value for the calculation can be designated as A, and A' is the result value included in the MPM list.

[0199] In addition, when the value of the prediction mode to be added to the MPM list exceeds a predetermined range (for example, 2 or more to 66 or less), the result of applying a clipping function as in Equation 2 below can be included in the MPM list.

[0200] [Equation 2]

[0201]

[0202] In step S1520, when at least one of the left prediction mode (Left) and the above prediction mode (Above) is a directional mode, it can be determined whether any one of the left prediction mode (Left) and the above prediction mode (Above) is a non-directional mode, or whether both the left prediction mode (Left) and the above prediction mode (Above) are directional modes while the left prediction mode (Left) and the above prediction mode (Above) are identical to each other (S1550). To determine this, a step for determining the maximum value and the minimum value between the left prediction mode (Left) and the above prediction mode (Above) can be first performed (S1520). Min = min(Left, Above) is a process of determining the minimum value between the left prediction mode (Left) and the above prediction mode (Above), and Max = max(Left, Above) is a process of determining the maximum value between the left prediction mode (Left) and the above prediction mode (Above).

[0203] When either of the two modes is an undirectional mode (Min<=1), or when both of the two modes are directional modes and identical (Min=Max), the MPM list can be configured to include {Max, Max-1, Max+1, Max-2} of a total of four directional modes or to include {Max, Max-1, Max+1, Max-2, DC} of four directional modes and a DC mode (S1560).

[0204] On the other hand, when the two modes are directional modes and different from each other, the MPM list can be configured to include {Left, Above, Min+1, Max-1} of a total of four directional modes or to include {Left, Above, Min+1, Max-1, DC} of four directional modes and a DC mode (S1570).

[0205] Embodiment 3-2

[0206] When the left prediction mode (Left) and the above prediction mode (Above) are obtained (S1610), it can be determined whether both of the left prediction mode (Left) and the above prediction mode (Above) correspond to undirectional modes (S1620).

[0207] When both of the left prediction mode (Left) and the above prediction mode (Above) are undirectional modes, the MPM list can consist of a total of four directional modes such as {V, H, V-4, V+4}, or consist of four directional modes such as {V, H, V-4, V+4, DC} and a DC mode (S1630).

[0208] When at least one of the left prediction mode (Left) and the above prediction mode (Above) is a directional mode, it can be determined whether any one of the left prediction mode (Left) and the above prediction mode (Above) is an undirectional mode (S1640). To determine this, a step for determining a minimum value (Min) between the left prediction mode (Left) and the above prediction mode (Above) can be first performed (S1630).

[0209] When any one of the left prediction mode (Left) and the above prediction mode (Above) is an undirectional mode (Min<=1), the MPM list can consist of a total of four directional modes such as {Max, Max-1, Max+1, Max-2}, or it can consist of four directional modes such as {Max, Max-1, Max+1, Max-2, DC} and a DC mode (S1650).

[0210] In step S1640, when both the left prediction mode (Left) and the above prediction mode (Above) are directional modes, it can be determined whether the two directional modes are identical to each other (S1660). When the left prediction mode (Left) and the above prediction mode (Above) are directional modes and identical to each other (Min = Max), the MPM list can consist of a total of four directional modes such as {Left, Left-1, Left+1, Left-2}, or can consist of four directional modes and a DC mode such as {Left, Left-1, Left+1, Left-2, DC} (S1670).

[0211] In step S1660, when the left prediction mode (Left) and the above prediction mode (Above) are not identical to each other, it can be determined whether the difference between the two modes is within a preset range (S1680). Here, the preset range can be 2 or more to 66 or less. When the difference between the left prediction mode (Left) and the above prediction mode (Above) is equal to or greater than 2 and less than or equal to 66, the MPM list can consist of a total of four directional modes such as {Left, Above, Max-1, Max+1}, or can consist of four directional modes and a DC mode such as {Left, Above, Max-2, Max+2, DC} (S1690). When the difference between the left prediction mode (Left) and the above prediction mode (Above) is less than 2 or greater than 66, the MPM list can consist of a total of four directional modes such as {Left, Above, Max-2, Max+2}, or can consist of four directional modes and a DC mode such as {Left, Above, Max-2, Max+2, DC} (S1695).

[0212] Embodiment 4

[0213] Embodiment 4 is an example method for binarizing the index of an MPM mode (a candidate intra prediction mode included in an MPM list) and the index of a non-MPM mode (a candidate intra prediction mode included in a non-MPM list).

[0214] In the present disclosure, the index of an MPM mode is encoded using a truncated rice method, and the index of a non-MPM mode is encoded using a truncated binary method.

[0215] When the MPM list is configured by including four MPM modes, the parameter value for the truncated Rice method can be k = 0, Max = 3. When the MPM list is configured by including five MPM modes, the parameter value for the truncated Rice method can be k = 0, Max = 4. However, in an embodiment in which the MPM list is configured by including five MPM modes, the parameter value for the truncated Rice method can also be k = 0, Max = 3. Here, the parameter value k can be referred to as cRiceParam, and Max can be referred to as cMax.

[0216] Table 6 shows an example of the above two binarization methods.

[0217] [Table 6]

[0218]

[0219] As shown in Table 6, with the truncated Rice method, the index of the MPM mode can be represented with at most 3 bits (MPM list configured with 4 MPM modes) or at most 4 bits (MPM list configured with 5 MPM modes).

[0220] The non-MPM list consists of a total of 61 non-MPM modes, excluding the planar mode and the 5 MPM modes, among the total of 67 intra prediction modes. When the non-MPM list consists of a total of 61 non-MPM modes, the parameter value for the truncated binary method can be Max = 60. Table 7 shows an example of representing the index of the total of 61 non-MPM modes with the truncated binary method. In Table 7, Max can be cMax.

[0221] [Table 7]

[0222]

[0223] As shown in Table 7, the index of the non-MPM mode can be represented with 5 bits or 6 bits by using the truncated binary method. The index value of the non-MPM mode shown in Table 7 is the index value of the reconstruction of the 61 non-MPM modes, excluding the planar mode and the 5 MPM modes, among the total of 67 intra prediction modes. In other words, the index value of the 61 non-MPM modes is reconstructed by a shift operation. For example, when the 5 MPM modes are configured as {1, 3, 10, 15, 23} and the planar mode and the MPM modes are shifted in all intra prediction modes, the non-MPM list is configured as {2, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 16, …, 22, 24, 25, …, 65, 66}. In this case, prediction mode No. 2 is set as index 0, prediction mode No. 4 is set as index 1, and prediction mode No. 5 is set as index 2.

[0224] While exemplary embodiments of the disclosure have been described for illustrative purposes, those skilled in the art will appreciate that various modifications, additions and substitutions are possible, without departing from the concept and scope of the claimed invention. Therefore, the exemplary embodiments of the disclosure have been described. The scope of the technical idea of the present embodiments is not limited by the examples. Accordingly, those of ordinary skill in the art will understand that the scope of the claimed invention is not limited by the explicitly described embodiments above, but is limited by the claims and their equivalents.

[0225] Cross Reference to Related Applications

[0226] This application claims priority to Korean Patent Application No. 10-2019-0061737, filed May 27, 2019, and Korean Patent Application No. 10-2019-0157997, filed December 2, 2019, the disclosures of which are incorporated herein by reference in their entirety.

Claims

1. A method for intra-frame prediction of a current block of video data, the method comprising the following steps: Decoding reference line information, where the reference line information indicates a reference line to be referenced by the current block among a plurality of reference lines; decoding intra-frame sub-division information according to the reference line information, the intra-frame sub-division information indicating whether an intra-frame sub-division mode is applied to the current block, wherein the intra-frame sub-division information is decoded when one of the plurality of reference lines indicated by the reference line information is a reference line directly adjacent to the current block; decoding, based on the reference line information, most probable mode (MPM) information indicating whether the intra prediction mode of the current block is included in the MPM list, wherein when one of the plurality of reference lines indicated by the reference line information is a reference line directly adjacent to the current block, the MPM information is decoded regardless of whether the intra sub-division mode is applied to the current block; decoding plane information indicating whether the intra prediction mode of the current block is a planar mode based on the reference line information and the MPM information, wherein the plane information is decoded when the intra prediction mode of the current block is included in the MPM list and when one of the plurality of reference lines indicated by the reference line information is a reference line directly adjacent to the current block; and deriving the intra prediction mode for the current block based at least in part on the plane information, wherein, when the intra sub-division mode is applied to the current block, the current block is divided into two or more sub-blocks, the two or more sub-blocks are predicted in the intra prediction mode of the current block, and The number of sub-blocks is determined based on the size of the current block.

2. The method according to claim 1, wherein The step of deriving the intra prediction mode comprises the following steps: When the plane information indicates that the intra prediction mode of the current block is the planar mode, the planar mode is set as the intra prediction mode of the current block.

3. The method according to claim 1, wherein The step of deriving the intra prediction mode comprises the following steps: When the plane information indicates that the intra prediction mode of the current block is not the planar mode, a candidate intra prediction mode indicated by an MPM index in the MPM list is set as the intra prediction mode of the current block.

4. The method according to claim 1, further comprising the steps of: deriving a candidate intra prediction mode from a left prediction mode and an upper prediction mode based on whether a left prediction mode, which is a prediction mode for a block located to the left of the current block, and an upper prediction mode, which is a prediction mode for a block located above the current block, are identical to each other and whether one or both of the left prediction mode and the upper prediction mode are directional modes; as well as The MPM list including the candidate intra prediction modes is configured.

5. The method according to claim 4, wherein The step of deriving the candidate intra prediction mode comprises the following steps: When the left prediction mode and the upper prediction mode are different directional modes, the candidate intra prediction mode is derived based on whether a difference between the left prediction mode and the upper prediction mode is within a preset range.

6. The method according to claim 4, wherein: The step of deriving the candidate intra prediction mode comprises the following steps: When both the left prediction mode and the above prediction mode are non-directional modes, a direct current (DC) mode is set as one of the candidate intra prediction modes.

7. The method according to claim 6, wherein: The step of deriving the candidate intra prediction mode comprises the following steps: When both the left prediction mode and the above prediction mode are non-directional modes, directional modes corresponding to mode numbers 50, 18, 46, and 54 are further set as the candidate intra prediction modes.

8. The method according to claim 4, wherein The step of deriving the candidate intra prediction mode comprises the following steps: The candidate intra prediction mode is derived by setting an unavailable prediction mode among the left prediction mode and the above prediction mode to a planar mode.

9. A method for intra-frame prediction of a current block of video data, the method comprising the following steps: determining an intra prediction mode for the current block; Encoding reference line information, where the reference line information indicates a reference line to be referenced by the current block among a plurality of reference lines; encoding intra-frame sub-division information according to the reference line information, the intra-frame sub-division information indicating whether an intra-frame sub-division mode is applied to the current block, wherein the intra-frame sub-division information is encoded when one of the plurality of reference lines indicated by the reference line information is a reference line directly adjacent to the current block; encoding, based on the reference line information, most probable mode (MPM) information, the MPM information indicating whether the intra prediction mode of the current block is included in the MPM list, wherein when one of the plurality of reference lines indicated by the reference line information is a reference line directly adjacent to the current block, the MPM information is encoded regardless of whether the intra sub-division mode is applied to the current block; encoding plane information according to the reference line information and the MPM information, the plane information indicating whether the intra prediction mode of the current block is a plane mode, wherein when the intra prediction mode of the current block is included in the MPM list and when one of the plurality of reference lines indicated by the reference line information is a reference line directly adjacent to the current block, the plane information is encoded, wherein, when the intra sub-division mode is applied to the current block, the current block is divided into two or more sub-blocks, the two or more sub-blocks are predicted in the intra prediction mode of the current block, and The number of sub-blocks is determined based on the size of the current block.

10. A method for providing video data to a video decoding device, the method comprising the following steps: encoding the video data into a bitstream; as well as sending the bitstream to the video decoding device, The step of encoding the video data includes: determining an intra prediction mode for a current block; Encoding reference line information, where the reference line information indicates a reference line to be referenced by the current block among a plurality of reference lines; encoding intra-frame sub-division information according to the reference line information, the intra-frame sub-division information indicating whether an intra-frame sub-division mode is applied to the current block, wherein the intra-frame sub-division information is encoded when one of the plurality of reference lines indicated by the reference line information is a reference line directly adjacent to the current block; encoding, based on the reference line information, most probable mode (MPM) information, the MPM information indicating whether the intra prediction mode of the current block is included in the MPM list, wherein when one of the plurality of reference lines indicated by the reference line information is a reference line directly adjacent to the current block, the MPM information is encoded regardless of whether the intra sub-division mode is applied to the current block; encoding plane information according to the reference line information and the MPM information, the plane information indicating whether the intra prediction mode of the current block is a plane mode, wherein when the intra prediction mode of the current block is included in the MPM list and when one of the plurality of reference lines indicated by the reference line information is a reference line directly adjacent to the current block, the plane information is encoded, wherein, when the intra sub-division mode is applied to the current block, the current block is divided into two or more sub-blocks, the two or more sub-blocks are predicted in the intra prediction mode of the current block, and The number of sub-blocks is determined based on the size of the current block.

Citation Information

Patent Citations

  • Composition for Preventing, Improving or Treating Sleep Disorder Comprising Passiflora caerulea extract as an Active Ingredients

    KR1020190061737A