Image encoding device, image encoding method, image encoding program, image decoding device, image decoding method, and image decoding program

By determining intra prediction modes based on adjacent block modes and optimizing prediction processes, the method addresses inefficiencies in HEVC's block size limitations, improving coding efficiency for high-resolution images.

JP7827189B2Active Publication Date: 2026-03-10JVC KENWOOD CORP
View PDF 5 Cites 0 Cited by

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2025-04-03
Publication Date
2026-03-10

AI Technical Summary

Technical Problem

The existing HEVC technology limits the maximum block size for intra prediction to 32x32 pixels, which is inefficient for larger block sizes, particularly in high-resolution images like 4K and 8K video, and does not adequately utilize non-angular intra prediction modes to enhance coding efficiency.

Method used

The method determines the intra prediction mode of a block based on the modes of adjacent blocks, using flags to differentiate between angular and non-angular modes, and adjusts the prediction process accordingly to include or exclude certain modes, optimizing the prediction mode selection and candidate list generation.

Benefits of technology

This approach improves coding efficiency by accurately predicting larger block sizes, especially in high-resolution images, by utilizing non-angular intra prediction modes effectively, thereby enhancing prediction accuracy and reducing processing complexity.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007827189000001
    Figure 0007827189000001
  • Figure 0007827189000002
    Figure 0007827189000002
  • Figure 0007827189000003
    Figure 0007827189000003
Patent Text Reader

Abstract

To improve encoding efficiency in intra-prediction.SOLUTION: In an image encoding device, an intra-prediction selection unit includes: a prediction mode candidate generation section for generating a first intra-prediction mode candidate list and a second intra-prediction mode candidate list from an intra-prediction mode of a block adjacent to a prediction target block; a prediction mode selection section for selecting a first intra-prediction mode and a second intra-prediction mode from the first intra-prediction mode candidate list and the second intra-prediction mode candidate list; a prediction value calculation section for calculating a first prediction value from a decoded pixel adjacent to the prediction target block based on the first intra-prediction mode and calculating a second prediction value from a decoded pixel adjacent to the prediction target block based on the second intra-prediction mode; and a prediction value weighting section for calculating a third prediction value based on the first prediction value and the second prediction value.SELECTED DRAWING: Figure 3
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present invention relates to a technique for encoding and decoding images using intra prediction. [Background technology]

[0002] There are image coding technologies such as HEVC (H.265). HEVC uses inter-prediction coding. In addition to inter-picture predictive coding, intra-picture predictive coding is also available. It is being used. [Prior art documents] [Patent documents]

[0003] [Patent Document 1] Japanese Patent Application Laid-Open No. 2016-213853 Summary of the Invention [Problem to be solved by the invention]

[0004] In HEVC, the maximum block size for square blocks divided into tetrahedrons is 3. Intra prediction is performed with 2 pixels x 32 pixels. The 60° image provides intra prediction with higher efficiency at larger block sizes.

[0005] The present invention has been made in view of the above circumstances, and its object is to provide a method for improving the accuracy of intra prediction. The present invention aims to provide a technology for improving the coding efficiency. [Means for solving the problem]

[0006] In order to solve the above problem, the image encoding device according to one aspect of this embodiment is The intra prediction mode of the block to be predicted is determined based on the intra prediction mode of the block adjacent to the block. a first flag indicating whether a prediction mode is determined or not; a second flag indicating whether the intra prediction mode is a predetermined non-angular intra prediction mode; and the second flag indicates that the mode is not the predetermined non-angular intra-prediction mode. an encoding unit for encoding a candidate specific index when the first flag is true; In this case, the prediction is performed based on the intra prediction mode of a block adjacent to the block to be predicted. determining an intra prediction mode for the current block, and if the second flag is true, a predetermined non-angular intra prediction mode is selected as the intra prediction mode of the block to be predicted; If the second flag is false, then the predetermined from the intra prediction mode candidate list generated so as not to include the intra prediction mode of The prediction mode selection unit selects an intra prediction mode for the block to be predicted.

[0007] Another aspect of the present invention is an image decoding apparatus, the apparatus comprising: The intra prediction mode of the block to be predicted is determined based on the intra prediction mode of the block. a first flag indicating whether to determine whether to perform intra prediction mode of the block to be predicted; a second flag indicating whether the mode is a predetermined non-angular intra prediction mode; If the second flag indicates that the prediction mode is not the predetermined non-angular intra prediction mode, the candidate identification flag is set to a decoding unit for decoding the index of the prediction target block when the first flag is true; The intra prediction mode of the block to be predicted is determined based on the intra prediction mode of the block adjacent to the block. and if the second flag is true, determining a non-angular intra prediction mode. the prediction mode as the intra prediction mode of the block to be predicted, and is false, the predetermined intra-prediction mode is selected based on the candidate specific index. The intra prediction mode candidate list is generated so as not to include the intra prediction mode of the block to be predicted. and a prediction mode selection unit for selecting an intra-prediction mode.

[0008] Any combination of the above components and the expression of the present invention may be used as a method, an apparatus, a system, a computer, or the like. Conversions between computer programs and the like are also valid aspects of the present invention. [Effects of the Invention]

[0009] According to the present invention, it is possible to improve coding efficiency in intra prediction. [Brief explanation of the drawings]

[0010] [Figure 1] FIG. 1 is a diagram illustrating an intra-prediction mode of HEVC. [Figure 2] FIG. 1 is a diagram illustrating syntax related to intra prediction modes in HEVC. [Figure 3] 1 is a diagram illustrating an image coding device and an image decoding device according to a first embodiment of the present invention. [Figure 4] FIG. 10 is a diagram showing an example in which a partial area of ​​an image input to an image encoding device is divided into blocks based on a block size determined by a block size determination unit. [Figure 5] FIG. 2 is a diagram illustrating a configuration of an intra-prediction selection unit according to the first embodiment. [Figure 6] 10 is a flowchart illustrating the operation of an intra prediction selection unit according to the first embodiment. [Figure 7] FIG. 10 is a diagram illustrating the derivation of a predicted value. [Figure 8] FIG. 10 is a diagram illustrating adjacent blocks of a block to be predicted. [Figure 9]10 is a flowchart illustrating an operation of a process for generating a prediction mode candidate list 0. [Figure 10] 10 is a table showing the priorities of predetermined prediction modes used in the process of generating a prediction mode candidate list 0. [Figure 11] 10 is a flowchart illustrating an operation of a process for generating a prediction mode candidate list 1. [Figure 12] 10 is a table showing the priorities of predetermined prediction modes used in the process of generating a prediction mode candidate list 1. [Figure 13] FIG. 2 is a diagram illustrating syntax related to intra prediction modes according to the first embodiment. [Figure 14] FIG. 13 is a diagram illustrating syntax related to intra prediction modes according to Modification 4 of Embodiment 1. [Figure 15] FIG. 11 is a diagram illustrating a configuration of an intra-prediction selection unit according to a second embodiment. [Figure 16] 10 is a flowchart illustrating the operation of an intra prediction selection unit according to the second embodiment. [Figure 17] FIG. 11 is a diagram illustrating syntax related to intra prediction modes according to the second embodiment. [Figure 18] 10 is a table showing the relationship between intra_luma_merge_idx and adjacent blocks. [Figure 19] FIG. 10 is a diagram illustrating syntax related to intra prediction modes according to Modification 2 of Embodiment 2. [Figure 20] FIG. 10 is a diagram illustrating another syntax related to intra prediction modes according to Modification 2 of Embodiment 2. DETAILED DESCRIPTION OF THE INVENTION

[0011] First, the intra prediction of HEVC will be explained. FIG. 1 is a diagram illustrating the intra prediction mode of HEVC. 35 modes from prediction mode 0 to prediction mode 34 are defined as intra prediction modes. Prediction mode 0 is INTRA_PLANAR, and the neighboring pixels of the block to be predicted are The predicted value is calculated by interpolating the four reference pixels generated by filtering the pixel. Mode 1 is INTRA_DC, where the horizontal width of the predicted block is twice the width of the predicted block. The predicted value is calculated by averaging the adjacent pixels in the direction and the adjacent pixels in the vertical direction that are twice the height of the predicted block. Prediction modes 2 to 34 calculate the prediction target block according to each angle. The prediction value is calculated from the reference pixels generated by filtering the neighboring pixels of the block. Regarding filtering of neighboring pixels of the block to be predicted, if the size of the block to be predicted is It is effective when the size of the prediction target block is large, but is ineffective when the size of the prediction target block is small. A 1:2:1 3-tap filter is used for filtering.

[0012] FIG. 2 is a diagram illustrating the syntax related to the intra prediction mode of HEVC. rev_intra_luma_pred_flag is derived for each prediction target block A flag indicating whether or not to use an intra prediction mode candidate. If luma_pred_flag is 1, the intra prediction mode candidates are used, and pr If ev_intra_luma_pred_flag is 0, the intra prediction mode candidate If prev_intra_luma_pred_flag is 1, the complement is not used. , mpm_idx (mpm index) indicates the number of the intra prediction mode candidate, and mp The intra prediction mode candidate indicated by m_idx is the intra prediction mode of the block to be predicted. The intra prediction mode candidates are determined based on the intra prediction modes of the neighboring blocks for each prediction target block. Three intra prediction modes are generated from all 35 intra prediction modes based on the mpm_idx can have values ​​0, 1, or 2. If 0, the intra prediction mode is set from rem_intra_luma_pred_mode. rem_intra_luma_pred_mode is the intra mode number. Indicates an intra prediction mode other than the candidate prediction modes. ma_pred_mode is the intra prediction mode candidate from all 35 intra prediction modes. Indicates one of the 32 intra prediction modes excluding the complement. The intra prediction mode indicated by uma_pred_mode is the intra prediction mode of the block to be predicted. As mentioned above, all 35 intra prediction modes in HEVC are Encoded in both mpm_idx and rem_intra_luma_pred_mode ( prev_intra_luma_pred_flag, m pm_idx and rem_intra_luma_pred_mode are fixed length 2 The data is then binary arithmetically coded using binarization, truncated Rice binarization, and fixed-length binarization. rem_intra_luma_pred_mode is a 5-bit fixed length binary calculation. The smaller the value of Truncated Rice Binarization, the more efficient the coding. do.

[0013] As mentioned above, HEVC prediction modes 2 to 34 are based on one angle. The predicted value of intra prediction is calculated. This is because the amount of coding increases when the image contains The amount of coding is reduced by predicting the edge direction and taking the difference. When the block size is large, the edge direction is predicted from one angle within the block. Therefore, the prediction efficiency may not be improved sufficiently. The adjacent pixels are filtered.

[0014] The maximum size of the prediction block in HEVC is 32 pixels x 32 pixels (hereafter On the other hand, 4K and 8K video require a larger resolution. It is known that prediction efficiency can be improved by using a larger prediction target block size. Increasing the size of the block to be predicted is important for improving prediction efficiency.

[0015] Therefore, in the following embodiment, the maximum size of the block to be predicted is increased. In the following, among the multiple intra prediction modes, the prediction The intra prediction mode in which the neighboring pixels used for measurement do not have angular dependency is called non-angular intra prediction. The intra prediction mode in which the neighboring pixels used for prediction have angle dependency is called an angle dependency mode. The angular intra prediction modes include the horizontal intra prediction mode. and vertical intra prediction modes.

[0016] In HEVC, prediction mode 0 and prediction mode 1 are non-angular intra prediction modes, and prediction Mode 2 to prediction mode 34 are angular intra prediction modes. Prediction modes 2 to 17 are horizontal intra prediction modes, and prediction modes 18 to Prediction mode 34 is a vertical intra-prediction mode.

[0017] (Embodiment 1) Hereinafter, an image coding apparatus, an image coding method, and Image encoding program, image decoding device, image decoding method, and image decoding program Details will be explained.

[0018] FIG. 3 illustrates an image coding device 100 and an image decoding device 200 according to Embodiment 1 of the present invention. The image coding device 100 according to the first embodiment includes a block size determination unit 11. 0, an intra prediction selection unit 120, a conversion unit 130, and an encoding unit 140. An input image is input to the device 100, and the device outputs an encoded stream.

[0019] The image decoding device 200 includes a decoding unit 210, a block size acquisition unit 220, an intra-prediction unit 2 The image decoding device 200 includes a first transform unit 30 and an inverse transform unit 240. A coded stream is input to the image decoding device 200. The decoded image is then output.

[0020] The intra prediction unit 230 of the first embodiment uses the same intra prediction mode as HEVC. The image encoding device 100 and the image decoding device 200 are each implemented by a central processing unit (CPU). Information processing equipment including a processing unit, frame memory, hard disk, etc. This is realized by hardware such as a computer.

[0021] First, the functions and operations of each unit of the image encoding device 100 will be described. An input image is input to 100.

[0022] The block size determination unit 110 determines a block to be intra-predictively coded based on an input image. The size is determined, and the input pixel (input value) corresponding to the determined block size and the block size is calculated. ) is supplied to the intra prediction selection unit 120. Although we won't go into detail here, as used in the HEVC reference software, RDO (Rayback Orientation) is a method to select the optimal block size by comparing the evaluation values ​​of multiple block sizes. Pre-determination based on the evaluation value or distortion optimization can be used.

[0023] Here, the block size will be explained. FIG. 4 shows a block size determination example of a partial area of ​​an image input to the image encoding device 100. 10 shows an example in which the image is divided into blocks based on the block size determined by the unit 110. Block sizes are 4x4, 8x4, 4x8, 8x8, 16x8, 8x16, 32x32, , 128×64, 64×128, 128×128, and the input image is The locks are divided using the above block size so that they do not overlap.

[0024] The intra prediction selector 120 selects the intra prediction based on the block size, the input pixels, and the encoded image. Then, one intra prediction mode is selected from the plurality of intra prediction modes, and the selected intra prediction mode is A prediction value is derived from the coded pixels based on the prediction mode, and the block size and the selection The encoding unit 130 supplies the obtained intra prediction mode, input value, and predicted value to the conversion unit 130. The processed pixels are shared among the various components of the image coding device 100 and are not shown here. The intra-prediction selection unit 120 will be described in detail later.

[0025] The conversion unit 130 calculates a difference value by subtracting the predicted value from the input value, and performs an orthogonal Transformation and quantization are performed to calculate the prediction error data, and the block size and intra prediction are calculated. The prediction mode and the calculated prediction error data are supplied to the encoding unit 140.

[0026] The encoding unit 140 encodes the header and other information as necessary, and transmits the The code string for the supplied block size is encoded, and the intra prediction mode is used as the code string. The prediction error data is coded and output as a coded stream. The encoding process in the prediction mode will be described in detail later.

[0027] The image encoding device 100 repeats the above process until all areas of the input image are encoded. vinegar.

[0028] Here, the intra prediction selection unit 120 will be described in detail. 5 is a diagram showing the configuration of the intra prediction selection unit 120 according to the first embodiment. The prediction mode selection unit 120 includes a mode number determination unit 121, a prediction mode candidate generation unit 122, and a prediction mode selection unit. The prediction value calculation unit 123 , the prediction value calculation unit 124 , and the prediction value weighting unit 125 .

[0029] FIG. 6 is a flowchart illustrating the operation of the intra-prediction selection unit 120 according to the first embodiment. Hereinafter, the intra prediction selection unit 120 will be described in detail with reference to FIGS. 5 and 6. First, The mode number determination unit 121 determines whether the predicted block width is equal to or larger than a predetermined threshold width and the predicted block height is equal to or larger than a predetermined threshold width. In this step, a check is made to see if the predetermined threshold width and the predetermined threshold height are equal to or greater than the predetermined threshold width (S100). However, if the predetermined threshold width is 64 and the predetermined threshold height is 32, The width and the predetermined threshold height may be different values. In the data, the SPS(Sequence_parameter_set ) and store it.

[0030] Next, the mode number determination unit 121 determines whether the prediction block width is equal to or greater than a predetermined threshold width and whether the prediction block If the height is equal to or greater than the predetermined threshold height (YES in S100), the number of prediction modes is set to 2 (S10 1) If the predicted block width is equal to or greater than a predetermined threshold width and the predicted block height is equal to or greater than a predetermined threshold height, If so (NO in S100), the number of prediction modes is set to 1 (S102).

[0031] Next, if the number of prediction modes is 1, the intra-prediction selection unit 120 sets M to 0 and If the number of measurement modes is 2, M is set to 0 and 1, and steps S103 to S107 are repeated. In this case, in consideration of reducing the number of steps, when the number of prediction modes is 1, only M is processed as 0. However, in order to simplify the circuit configuration, even if the number of prediction modes is 1, M can be set to 0 or 1. Steps S103 to S107 may be repeated.

[0032] The prediction mode candidate generation unit 122 selects coded adjacent blocks existing around the block to be predicted. A prediction mode candidate list M is generated from the block (S104). The prediction mode candidate list M is supplied to the prediction mode selection unit 123. More on this later.

[0033] The prediction mode selection unit 123 calculates the evaluation values ​​for each of the prediction modes 0 to 34. Then, based on the calculated evaluation value of each prediction mode, a prediction mode is selected from prediction mode 0 to prediction mode 34. One selected prediction mode M is selected from the list (S105), and the selected selected prediction mode M is used to calculate a predicted value. The selected prediction mode M ranges from prediction mode 0 to prediction mode 34. One of the prediction modes is selected by RDO determination.

[0034] The prediction value calculation unit 124 calculates a prediction value based on the selected prediction mode M input from the prediction mode selection unit 123. Based on the above, a predicted value M of the block to be predicted is calculated (S106), and the calculated predicted value M is used as a predicted value weighting factor. The predicted value is supplied to a prediction unit 125, where the predicted value is derived from neighboring pixels.

[0035] FIG. 7 is a diagram for explaining the derivation of a predicted value. The block to be predicted in FIG. 7 is 32×32. The pixels in the prediction target block are from P(0,0) to P(31,31), and the adjacent pixels are The pixels used are RH-1 to RH63 and RV0 to RV63. If the pixel is not enough, it will be filled with substitute pixels as defined in HEVC. The number of prediction modes is 2, the selected prediction mode 0 is prediction mode 10, and the selected prediction mode 1 is prediction mode 3. 4 is shown in Figure 1.

[0036] First, the prediction value of the selected prediction mode 0 when the selected prediction mode 0 is prediction mode 10 is derived as follows: P(0,0), P(1,0), . . ., P(31,0) are predicted values ​​using RV0. , P(0,1),···, P(31,1) uses RV1 as the predicted value, and P(0,31),·· ·, P(31,31) uses RV31 as the predicted value. Next, the selected prediction mode 1 is the prediction mode The derivation of the predicted value of the selected prediction mode 1 in case 34 is explained. P(0,0) predicts RH1. P(1,0) and P(0,1) are predicted values ​​for RH2, and P(31,31) is predicted value for RH 63 is used as the predicted value. In this embodiment, the reference pixel is not generated by the pixel shifter, but the adjacent pixel is used as it is. In this state, filtering is not required. The calculation of the measurement value is assumed to be the same as that of HEVC.

[0037] Following S106, it is determined whether the selected prediction mode M is not a non-angular intra prediction mode. If the selected prediction mode M is not a non-angular intra prediction mode (S11), If the selected prediction mode M is a non-angular intra-prediction mode, the process proceeds to S107. (NO in S110), proceed to S108. Here, the non-angular intra prediction mode is INT Let RA_PLANAR and INTRA_DC be the same. Thus, INTRA_PLA Not only does it use neighboring pixels at a specific angle like NAR and INTRA_DC, but it also uses multiple directions. Intra prediction mode using adjacent pixels in the same direction does not allow the number of prediction modes to be two. By setting the number of prediction modes to 1, the increase in the amount of processing can be suppressed. Prediction modes belonging to the angular intra prediction mode are combined. There is no matching.

[0038] Following S107, the prediction value weighting unit 125 determines whether the number of prediction modes is 1 or the selected If the prediction mode 0 is a non-angular intra prediction mode, the prediction value supplied from the prediction value calculation unit 124 The predicted value weighting unit 125 outputs the predicted value as it is. If so, the first predicted value of the selected prediction mode 0 supplied from the predicted value calculation unit 124 and the selected prediction mode 1 are The second predicted values ​​of the measurement mode 1 are averaged and output as a third predicted value (S108).

[0039] Next, the function and operation of each unit of the image decoding device 200 will be described. Decodes headers and other information as needed from the encoded stream and obtains information about block sizes. The code string for the intra prediction mode, the code string for the intra prediction mode, and the prediction error data are extracted from the coded stream. The code string for the decoded block size, the code string for the intra prediction mode, and the prediction The measurement error data is supplied to the block size acquisition unit 220. Decoding is performed based on the syntax related to the intra prediction mode described later. .

[0040] The block size acquisition unit 220 acquires the block size information supplied from the decoding unit 210. The block size is obtained from the code string, and the block size, the code string of the intra prediction mode, and The prediction error data is supplied to the intra prediction unit 230.

[0041] The intra prediction unit 230 selects an intra prediction mode from the code stream of the intra prediction mode. and deriving a predicted value from the decoded pixels based on the selected intra prediction mode. The value, block size, and prediction error data are supplied to the inverse transform unit 240. These pixels are shared by the various components in the image decoding device 200 and are not shown here.

[0042] Here, the calculation of the predicted value in the intra prediction unit 230 is performed by the intra prediction selection unit 120. The calculation of the predicted value is the same as that in the image coding device 100. The reproduced image output by the device 200 is the same. Since the intra prediction selection unit 120 can have the same configuration, in this embodiment, The following description will be given assuming that the prediction unit 230 and the intra-prediction selection unit 120 have the same configuration.

[0043] 1 is a flowchart illustrating the operation of the intra prediction unit 230 and the operation of the intra prediction selection unit 120. The difference with the intra prediction selection unit 120 is S105. The intra prediction unit 230 performs the following step S105D instead of step S105.

[0044] The prediction mode selection unit 123 selects one selected prediction mode based on the code string of the intra prediction mode. The selected prediction mode M is then supplied to the prediction value calculation unit 124. The code strings of the intra prediction modes will be described later.

[0045] The inverse transform unit 240 performs an inverse orthogonal transform on the prediction error data supplied from the intra prediction unit 230. The difference value is calculated by performing processes such as inverse quantization and dequantization, and the difference value and the predicted value are added to calculate the reconstructed pixel. and outputs the reproduced pixels.

[0046] The image decoding device 200 continues to decode the above code strings until all the code strings in the input coded stream are decoded. Repeat the process.

[0047] Here, the process of generating a prediction mode candidate list will be described in detail. The coded adjacent blocks existing around a block will now be described. FIG. 8 is a diagram illustrating adjacent blocks of a block to be predicted. Block X is the block to be predicted, and blocks A to E are the neighboring blocks. In the previous example, the adjacent blocks were block A to block E, but block A to block D. Furthermore, the block to the upper left (above block A) and the block to the lower left (block C) of the prediction target block may be You can also add blocks such as the one below.

[0048] FIG. 9 is a flowchart illustrating the operation of the process of generating prediction mode candidate list 0. The process of generating the prediction mode candidate list 0 will be described with reference to FIG. It is assumed that prediction mode candidate list 0 is empty and the number of candidates included in prediction mode candidate list 0 is 0. Prediction mode candidate list 0 is abbreviated as candidate list 0.

[0049] Block X is sorted in the order of Block A, Block B, Block C, Block D, and Block E. 210, repeat steps S201, S202, and S203 (S200 and S204) .

[0050] It is checked whether block X uses intra prediction (S210). If intra prediction is used (YES in S210), proceed to S201. If intra prediction is not being used (NO in S210), the process proceeds to S204.

[0051] Following S210, if the same selected prediction mode 0 as the block X does not exist in the candidate list 0, If not (YES in S201), add the selected prediction mode 0 of block X to candidate list 0 (S 202). Then, it is determined whether the number of prediction modes added to the candidate list 0 has reached a predetermined number. If the number of prediction modes added to the candidate list 0 reaches a predetermined number (S203), If the number of prediction modes added to the candidate list 0 is YES (YES in S203), the process ends. If the predetermined number has not been reached (NO in S203), the process proceeds to S204. If the same selected prediction mode 0 as the block X exists in the candidate list 0 (NO in S201), ), proceed to S204.

[0052] Next, if the number of prediction modes added to the candidate list 0 is less than a predetermined number (Y in S205), ES), based on the priority of a given prediction mode, the same prediction mode is duplicated in candidate list 0. To avoid this, prediction mode candidates are added to candidate list 0 in ascending order of priority (S20 6) The process ends. FIG. 10 shows a table showing the priority order of predetermined prediction modes. If the number of prediction modes added to the candidate list 0 is not less than the predetermined number (NO in S205), End processing.

[0053] FIG. 11 is a flowchart illustrating the operation of the process of generating the prediction mode candidate list 1. The process of generating the prediction mode candidate list 1 will be described with reference to FIG. Mode candidate list 1 is empty, and the number of candidates included in prediction mode candidate list 1 is 0. The prediction mode candidate list is abbreviated as the candidate list.

[0054] Block X is then divided into Block A, Block B, Block C, Block D, and Block E. Repeat steps S310, S301, S302, S303, S304, and S305. (S300 and S306).

[0055] It is checked whether block X uses angular intra prediction mode (S310). If block X uses the angular intra prediction mode (YES in S310), If block X does not use angular intra prediction mode (NO in S310), Proceed to S306.

[0056] For the selected prediction mode N of block X, select prediction mode 1 and select prediction mode 0 are used in this order. Steps S302, S303, and S304 are repeated (S301 and S305).

[0057] If the same selected prediction mode N as the block X does not exist in the candidate list 1 (YES in S302), Then, the prediction mode of block X is added to candidate list 1 (S303). It is checked whether the number of prediction modes added to the list 1 reaches a predetermined number (S304), and the candidate list is If the number of prediction modes added to ST1 has reached a predetermined number (YES in S304), the process If the number of prediction modes added to the candidate list 1 does not reach a predetermined number (S If the answer is NO in S304, proceed to S305. Here, the predetermined number is 3. If there is a selected prediction mode N that is the same as X (NO in S302), the process proceeds to S305.

[0058] Next, if the number of prediction modes added to the candidate list 1 is less than a predetermined number (Y in S307), ES), based on the priority of a given prediction mode, the same prediction mode is duplicated in candidate list 1. To avoid this, prediction mode candidates are added to the candidate list 1 in ascending order of priority (S30 8) The process ends. FIG. 12 shows a table showing the priority order of predetermined prediction modes. The table in Figure 12 differs from the table in Figure 10 in that it includes non-angular intra prediction modes (prediction mode 0 and prediction mode Also, the priority order is vertical intra prediction mode and horizontal intra prediction mode. The number of prediction modes added to the candidate list is set to If the number is not less than the predetermined number (NO in S307), the process ends.

[0059] Here, the effects obtained by the first embodiment will be described. If the size is large, there is a high possibility that multiple edges will be included in the block to be predicted. In this way, when multiple edges are included in the block to be predicted, If a block to be predicted is predicted only in the RGB prediction mode, there is a high possibility that the prediction efficiency will decrease.

[0060] Therefore, as mentioned above, when the size of the block to be predicted is large, the two images are When there are edges in two directions in the block to be predicted, prediction in intra prediction mode is performed. This makes it possible to improve prediction efficiency.

[0061] Next, details of intra prediction mode coding (intra prediction mode code string) explain. FIG. 13 is a diagram illustrating syntax related to intra prediction modes according to the first embodiment. Figure 13 shows the syntax of the prediction block, where pbWidth is the width of the prediction block, pbHeight indicates the height of the predicted block. pbWThread indicates the predetermined threshold width. HThread indicates a predetermined threshold height. The decoding is performed based on the syntax of FIG.

[0062] prev_intra_luma_pred_flag, mpm_idx, and rem _intra_luma_pred_mode is the syntax for selected prediction mode 0 prev_intra_luma_pred_flag is a list of prediction mode candidates. This flag indicates whether to select prediction mode 0 from prediction mode 0. If _luma_pred_flag is 1, the selected prediction mode is If mode 0 is selected and prev_intra_luma_pred_flag is 0, , the selected prediction mode 0 is selected from the intra prediction modes not included in the prediction mode candidate list 0. mpm_idx is a selection selected from the candidates included in prediction mode candidate list 0. rem_intra_luma_pred_ is an index indicating the selected prediction mode 0. mode is a selected prediction mode selected from candidates not included in prediction mode candidate list 0 The index indicates 0.

[0063] 2nd_prev_intra_luma_pred_flag, 2nd_mpm_i dx and 2nd_rem_intra_luma_pred_mode are the selected prediction modes. This is the syntax for 2nd_prev_intra_luma_pred _flag is a flag indicating whether to select the selected prediction mode 1 from the prediction mode candidate list 1. If 2nd_prev_intra_luma_pred_flag is 1, For example, the selected prediction mode 1 is selected from the prediction mode candidate list 1, and the 2nd_prev_in If tra_luma_pred_flag is 0, the prediction mode candidate list 1 contains Selected prediction mode 1 is selected from the intra prediction modes that are not included. An indicator showing a selected prediction mode 1 selected from the candidates included in the prediction mode candidate list 1. 2nd_rem_intra_luma_pred_mode is the prediction mode. An index indicating a selected prediction mode 1 selected from candidates not included in the mode candidate list 1. It's a kus.

[0064] prev_intra_luma_pred_flag, rem_intra_lum a_pred_mode, 2nd_prev_intra_luma_pred_fla g, and 2nd_rem_intra_luma_pred_mode are fixed length (FL) It is binarized, and mpm_idx and 2nd_mpm_idx are truncated rice (TR ) is binarized.

[0065] (First Modification of First Embodiment) The following describes a first modification of the first embodiment. In calculating the predicted value for prediction mode 2 to prediction mode 34), the predicted target block is Instead of calculating a prediction value from the neighboring pixels of the block, the neighboring pixels of the block to be predicted are filtered. Alternatively, a predicted value may be calculated from reference pixels generated by filtering.

[0066] In addition, when the number of prediction modes is 1, the adjacent pixels of the prediction target block are filtered and generated. If the number of prediction modes is 2, the prediction value is calculated from the reference pixels of the block to be predicted. It is also possible to calculate a predicted value from the pixel. The processing amount when the number of prediction modes is 1 and the processing amount when the number of prediction modes is 2 can be equalized.

[0067] (Modification 2 of Embodiment 1) Hereinafter, a second modification of the first embodiment will be described. In the first embodiment, the prediction mode candidate list Prediction mode candidate list 1 is generated as shown in Figure 11, which is different from prediction mode candidate list 0. Selected prediction mode 1 from prediction mode candidate list 1, but selected prediction mode 1 from prediction mode candidate list 0 In this way, the process of generating the prediction mode candidate list 1 can be omitted. can be reduced.

[0068] In addition, the predetermined number of candidates in the prediction mode candidate list 0 can be set to be greater than 3. For example, the predetermined number of candidates in the prediction mode candidate list 0 may be set to 5. In this case, the selected prediction mode This increases the probability that code 1 is coded as 2nd_mpm_idx, improving coding efficiency. If the predetermined number is greater than 3, the priority of the predetermined prediction mode is also set to the predetermined number. A total of four or more modes should be prepared. In this case, the priority order is vertical intra prediction mode and horizontal intra prediction mode. The horizontal intra prediction modes are set alternately.

[0069] (Third Modification of First Embodiment) The following describes Modification 3 of the First Embodiment. In the first embodiment, the selected prediction mode 1 In the third modification, one of the prediction modes 0 to 34 is selected. In this case, the 2nd_pre prediction mode candidate list 1 may be selected from the 2nd_pre prediction mode candidate list 1. v_intra_luma_pred_flag and 2nd_rem_intra_lum a_pred_mode is no longer necessary, and only 2nd_mpm_idx is required. By doing so, the coding efficiency of selected prediction mode 1 can be improved.

[0070] (Fourth Modification of First Embodiment) The following describes the fourth modification of the first embodiment. In the fourth modification, the prediction mode 1 is generated as shown in FIG. A mode candidate list 1 is generated based on the selected prediction mode 0.

[0071] Here, the modes on both sides of the selected prediction mode 0 are used as prediction modes as shown in the following (Equation 1) and (Equation 2). This adds the intermediate prediction mode between two adjacent prediction modes to the candidate list. You will be able to generate modes. Prediction mode candidate list 1[0]=(selected prediction mode 0-1)%35 (Equation 1) Prediction mode candidate list 1 [1] = (selected prediction mode 0 + 1) % 35 (Equation 2) "%" is the modulus operator, and "35" is the number of intra-prediction modes. The remainder of dividing the selected prediction mode 0-1 by 35 is added to the prediction mode candidate list 1[0]. Similarly, the remainder when (selected prediction mode 0 + 1) is divided by 35 is It is added to [1], the remainder is in the range 0 to 34. Note that the selected prediction mode 0 does not take a non-angular intra prediction mode. 0 does not take prediction mode 0 or prediction mode 1. Therefore, the selected prediction mode 0 When the prediction mode is 2, the prediction mode candidate list 1[0] is set to prediction mode 1. Mode 1 is a non-angular intra-prediction mode and is therefore invalid. is the prediction mode 34, the prediction mode candidate list 1[1] is the prediction mode 0, Prediction mode 0 is invalid because it is a non-angular intra prediction mode.

[0072] The syntax for intra prediction modes is also different. FIG. 14 is a diagram illustrating syntax related to the intra prediction mode of the fourth modification. If 2nd_intra_luma_pred_0_flag is 1, the selected prediction mode 1, select prediction mode candidate list 1[0], and 2nd_intra_luma_pr If ed_0_flag is 0, the selected prediction mode 1 is selected from the prediction mode candidate list 1[1 By doing so, the coding efficiency of the selected prediction mode 1 can be improved. If the selected prediction mode 0 is prediction mode 2 or prediction mode 34, the intra The prediction mode is uniquely determined to be 0. Therefore, 2nd_intra_luma_pre There is no need to encode or decode d_0_flag, which improves coding and processing efficiency. The rate can be further improved.

[0073] (Fifth Modification of First Embodiment) The fifth modification of the first embodiment will be described below. 25, if the number of prediction modes is 2, the predicted value of selected prediction mode 0 and the predicted value of selected prediction mode 1 are In the fifth modification, the predicted value of the selected prediction mode 0 and the selected prediction mode 1 are calculated. The predicted value is calculated by weighting the predicted values ​​of mode 1 according to the distance.

[0074] The distance between the pixel to be predicted and the adjacent pixel N0 of the selected prediction mode 0 is d0, and the pixel to be predicted and the selected If the distance to the adjacent pixel N1 in prediction mode 1 is d1, the weighted average predicted value PP is calculated as (Equation 3) ) is calculated as follows. PP=(N0*d1+N1*d0) / (d0+d1) (Formula 3)

[0075] (Sixth Modification of First Embodiment) Hereinafter, a sixth modification of the first embodiment will be described. In the first embodiment, the number of prediction modes is set to The choice of 1 or 2 is made when the width of the prediction target block is equal to or greater than a predetermined threshold width and the prediction The height of the target block is determined based on whether it is equal to or greater than a predetermined threshold. The prediction mode number flag indicating whether the number of modes is 1 or 2 is coded (decoded) and specified. In this case, the prediction efficiency is improved because the flags can be used for more precise control.

[0076] (Embodiment 2) The second embodiment will be described below. It differs from the first embodiment in the configuration of the intra-prediction selection unit. The behavior is different.

[0077] FIG. 15 is a diagram showing a configuration of the intra prediction selection unit 120 according to the second embodiment of the present invention. The intra-prediction selection unit 120 includes a prediction mode candidate generation unit 122, a prediction mode selection unit 123, and a prediction mode candidate generation unit 124. The system includes a measurement value calculation unit 124 and a predicted value weighting unit 125 .

[0078] FIG. 16 is a flowchart illustrating the operation of the intra prediction selection unit 120. The intra prediction selector 120 will be described in detail with reference to FIGS. 15 and 16. The mode candidate generation unit 122 repeats S501 to S503 for the number of non-angular intra prediction modes K. Then, the evaluation value of the non-angular intra prediction mode K is calculated (S502). If K is 1, the evaluation value of INTRA_PLANAR is calculated. If K is 1, the evaluation value of INTRA_DC is calculated.

[0079] Next, the prediction mode candidate generating unit 122 performs a process of generating a prediction mode candidate list M from S505 to S508. The prediction mode candidate generation unit 122 repeats S508. A prediction mode candidate list M is generated from the encoded adjacent blocks (S506). The prediction mode candidate list M is supplied to the prediction mode selection unit 123. M is generated to include the horizontal intra prediction mode if M is 0, and If the prediction mode candidate list M is a vertical intra-prediction mode, it is generated so as to include the vertical intra-prediction mode. Non-angular intra prediction modes are never included.

[0080] In the case of prediction mode candidate list 0, the prediction mode candidate generating unit 122 Prediction mode 2 to prediction mode 17, which are horizontal intra prediction modes included in ST0 The predicted value and evaluation value of each of the prediction modes are calculated, and the prediction model is calculated based on the evaluation value of each prediction mode. One selected prediction mode 0 is selected from prediction modes 2 to 17.

[0081] In the case of prediction mode candidate list 1, the prediction mode candidate generation unit 122 Prediction mode 18 to prediction mode 3 are vertical intra prediction modes included in ST1. 4, and the predicted value and evaluation value are calculated based on the calculated evaluation value of each prediction mode. One selected prediction mode 1 is selected from prediction modes 18 to 34 (S507 ) As mentioned above, if M is 0, it indicates the horizontal intra prediction mode, and if M is 1, it indicates the horizontal intra prediction mode. For example, M indicates the vertical intra prediction mode. That is, M indicates the direction of the intra prediction mode. vinegar.

[0082] Next, the prediction mode candidate generation unit 122 compares the predicted value of selected prediction mode 0 with the predicted value of selected prediction mode 1. The predicted values ​​are weighted-averaged to calculate an evaluation value for the prediction mode number 2 (S510). The mode selection unit 123 selects prediction mode 0, prediction mode 1, and the number of prediction modes based on the evaluation value. Based on this, prediction mode 0, prediction mode 1, and one intra prediction from the number of prediction modes 2 are selected. Next, the prediction value weighting unit 125 selects a mode (S511). A predicted value is output based on the prediction mode (S512).

[0083] Furthermore, the second embodiment differs from the first embodiment in that the syntax regarding the intra prediction mode is different. different.

[0084] FIG. 17 is a diagram illustrating syntax related to intra prediction modes according to the second embodiment. The coding and decoding of intra prediction modes are performed according to the syntax shown in Figure 17. This is based on the following:

[0085] intra_luma_merge_flag is the number of prediction modes for the block to be predicted. As the intra prediction mode, the number of prediction modes and the intra prediction mode of the neighboring block are used. This is a merge flag that indicates whether or not

[0086] intra_luma_merge_idx is the number of prediction modes for the block to be predicted and the Number of prediction modes to be used as intra prediction modes and neighboring blocks having intra prediction modes Shows.

[0087] Figure 18 is a table showing the relationship between intra_luma_merge_idx and adjacent blocks. For example, if intra_luma_merge_idx is 0 and the adjacent block A If the number of prediction modes is 1 and the selected prediction mode 0 is prediction mode 3, the The number of prediction modes is 1, and the selected prediction mode 0 is prediction mode 3. In another example, ra_luma_merge_idx is 2, the number of prediction modes of neighboring block C is 2, and If selected prediction mode 0 is prediction mode 3 and selected prediction mode 1 is prediction mode 20, The number of prediction modes for the target block is 2, and the selected prediction mode is 0. Mode 1 is prediction mode 20.

[0088] intra_luma_non_angular_pred_flag is non-angular intraluma A flag indicating whether the prediction mode is a non-angular intra prediction mode. The flag indicating the non-angular intra prediction mode (intra_luma_n non_angular_idx if on_angular_pred_flag is 1 is encoded (decoded), and the intra prediction mode indicated by non_angular_idx is selected. non_angular_idx is the non-angular intra prediction mode. If non_angular_idx is 0, it indicates the prediction mode of the INTRA_P If it is set to LANAR, it indicates INTRA_DC. The flag indicating whether it is a non-angular intra prediction mode (intra_luma If _non_angular_pred_flag is 0, prev_intra_ luma_pred_h_flag, mpm_idx_h, rem_intra_lum a_pred_mode_h etc. are encoded (decoded) and non-angle intra An intra prediction mode other than the prediction mode is selected as the selected prediction mode.

[0089] intra_luma_pred_idc indicates the number of prediction modes and the direction of intra prediction If intra_luma_pred_idc is 0, the number of prediction modes is 1 and the horizontal direction is indicates that the intra prediction mode is 1, and intra_luma_pred_idc is 1. If the prediction mode number is 1, it indicates the vertical intra prediction mode, and intra_lu If ma_pred_idc is 2, it indicates that the number of prediction modes is two.

[0090] prev_intra_luma_pred_h_flag, mpm_idx_h, and and rem_intra_luma_pred_mode_h are the horizontal intra prediction modes. prev_intra_luma_pred_v_f lag, mpm_idx_v, and rem_intra_luma_pred_mode _v is the syntax for the vertical intra prediction mode, where rem_i ntra_luma_pred_mode_h and rem_intra_luma_pre d_mode_v does not include non-angular intra prediction modes.

[0091] As in the second embodiment, the intra prediction mode of the neighboring block of the block to be predicted is set to the By using the merge flag, when the number of prediction modes is 2 or when the prediction mode is It is possible to improve the coding efficiency of prediction modes that are not present in the candidate list.

[0092] In addition, the intra prediction mode is divided into prediction mode 0, which is a non-angular intra prediction mode, and prediction mode Prediction mode 1, horizontal intra prediction modes 2 to 17, vertical intra prediction modes The intra prediction modes are classified into prediction modes 18 to 34. Syntax elements for non-angular intra prediction modes, horizontal Splitting into syntax elements for directional prediction and vertical prediction In this case, the coding efficiency is improved when a prediction mode that does not exist in the prediction mode candidate list is selected. It can be done.

[0093] In other words, intra_luma_non_angular_pred_flag is set to m_intra_luma_pred_mode_h and rem_intra_luma_ By encoding (decoding) before pred_mode_v, rem_intra_lu ma_pred_mode_h and rem_intra_luma_pred_mode_ In addition to the intra prediction mode candidates included in the prediction mode candidate list for v, There is no need to include the prediction mode. It can be specified with d_mode_h or rem_intra_luma_pred_mode_v. This increases the number of available intra prediction modes, improving coding efficiency. The intra prediction mode to be increased is, for example, a horizontal intra prediction mode. If this is the case, new prediction modes will be added between prediction mode 9 and prediction mode 10, and between prediction mode 10 and prediction mode 11. In the case of a vertical intra-prediction mode, the prediction mode can be set to 25. A new angle intra prediction mode is added between prediction mode 26 and between prediction mode 26 and prediction mode 27. A code may be provided.

[0094] In general, non-angular intra prediction modes have a higher selection probability than angular intra prediction modes. Therefore, a separate syntax, intr, is used to indicate non-angular intra prediction modes. a_luma_non_angular_pred_flag to mpm_idx_h or m By encoding (decoding) before pm_idx_v, prediction mode candidate list 0 and prediction mode Therefore, it is not necessary to include non-angular intra prediction modes in the code candidate list 1. If the prediction mode is a non-angular intra prediction mode, the prediction mode candidate list 0 and the prediction mode This can reduce the processing cost for generating the node candidate list 1.

[0095] Furthermore, increasing the number of non-angular intra prediction modes beyond two or Merge for more detailed classification of prediction mode types and intra prediction mode angles. Classification of flags and syntax is effective in improving coding efficiency. luma_merge_idx, intra_luma_merge_idx or intr a_luma_non_angular_pred_flag, non_angular_ idx is also used in the syntax of the conventional example shown in FIG. 2 and the syntax of the first embodiment shown in FIGS. 13 and 14. It can also be applied before _idx.

[0096] (Modification 1 of Embodiment 2) Hereinafter, a first modification of the second embodiment will be described. In the second embodiment, prediction mode candidates List 0 is the horizontal intra prediction mode, and prediction mode candidate list 1 is the vertical intra prediction mode. The syntax for the prediction mode candidate list and the intra prediction mode is The classification of the materials is consistent with, but not limited to, the above.

[0097] The prediction mode candidate list is a non-angle-input prediction mode candidate list like the prediction mode candidate list in the first embodiment. Intra prediction mode, horizontal intra prediction mode, and vertical intra prediction mode are all supported. It may also contain.

[0098] (Modification 2 of Embodiment 2) The prediction mode candidate list is divided into horizontal and vertical intra prediction modes. However, the case where the non-angular intra prediction mode is included will be explained. The prediction mode candidate list does not include the prediction mode candidate list. FIG. 1 is a diagram illustrating syntax related to intra prediction modes. Encoding and decoding of intra prediction modes are based on the syntax in Figure 19. This is carried out.

[0099] If prev_intra_luma_pred_flag is 1, non-angle intra A prediction mode is selected from the prediction mode or prediction mode candidate list. If the flag indicating whether the prediction mode is a non-angular intra prediction mode is set to 0, the flag indicating whether the prediction mode is a non-angular intra prediction mode is set to 1. In this case, the non-angular intra prediction mode indicated by non_angular_idx is selected. A flag indicating whether or not the non-angular intra prediction mode is set to non-angular. If it indicates that it is not an intra prediction mode, the mpm index (mpm_idx) is The prediction mode candidate list is coded (decoded) and the input is indicated by mpm_idx. The intra prediction mode candidate is selected as the selected prediction mode. If a_pred_flag is 0, it is not a non-angular intra prediction mode and the prediction mode rem_intra_luma_pre from intra prediction modes not included in the candidate list The intra prediction mode indicated by d_mode is selected as the selected prediction mode.

[0100] FIG. 20 shows another syntax related to the intra prediction mode according to the second modification of the second embodiment. 1 is a diagram for explaining intra prediction mode coding and intra prediction mode. The prediction mode is decoded based on the syntax in FIG.

[0101] If intra_luma_non_angular_pred_flag is 1, The non-angular intra prediction mode indicated by non_angular_idx is the selected prediction mode. It is selected as intra_luma_non_angular_pred_fla If g is 0 and prev_intra_luma_pred_flag is 1, the prediction The intra prediction mode candidate indicated by mpm_idx included in the mode candidate list is selected. intra_luma_non_angular_pred If _flag is 0 and prev_intra_luma_pred_flag is 0 is an intra prediction mode that is not a non-angular intra prediction mode and is not included in the prediction mode candidate list. The intra prediction mode is indicated by rem_intra_luma_pred_mode. The prediction mode is selected as the selected prediction mode.

[0102] In the second modification of the second embodiment, rem_intra_luma_pred_mode is From all 35 intra prediction modes, the intra prediction mode candidates and non-angular intra prediction modes are selected. It is only necessary to indicate the 30 intra prediction modes excluding the 30 modes, and a new intra prediction mode can be added. Adding new intra prediction modes can improve coding efficiency. For example, between prediction mode 9 and prediction mode 10, or between prediction mode 10 and prediction mode 11. Between prediction modes 25 and 26, and between prediction modes 26 and 27, A new angular intra prediction mode may be provided. Also, in FIG. 20, a non-angular intra prediction mode is provided. The codes are intra_luma_non_angular_pred_flag and non_ Selection of non-angular intra prediction mode, since encoding (decoding) is possible with angular_idx This improves processing and coding efficiency when the probability is relatively higher than other intra-prediction modes. do.

[0103] (Third Modification of Second Embodiment) Next, the prediction mode candidate list is expanded to include non-angular intra prediction modes INTRA_DC, horizontal The intra prediction modes for the vertical and horizontal directions are However, INTRA_PLANAR is included in the prediction mode candidate list. In the second embodiment, a flag indicating whether or not the prediction mode is a non-angular intra prediction mode is used. Encode the flag(intra_luma_non_angular_pred_flag)( In the third modification of the second embodiment, whether or not the prediction mode is a non-angular intra prediction mode is indicated. The IN flag is the intra prediction mode with the highest selection probability among the intra prediction modes. Encoding (decoding) is limited to the flag indicating whether it is TRA_PLANAR or not. If the measurement mode is INTRA_PLANAR, non_angular_idx is This eliminates the need for encoding (decoding) and improves the coding efficiency of INTRA_PLANAR. The flag indicating whether it is INTRA_PLANAR is INTRA_PLANAR. In this case, INTRA_PLANAR is selected as the selected prediction mode. So, the flag that indicates whether it is INTRA_PLANAR is INTRA_PLANAR If it is not, mpm_idx is encoded (decoded) and An intra prediction mode other than NAR is selected as the selected prediction mode. The flag indicating whether it is TRA_PLANAR or not is not INTRA_PLANAR prev_intra_luma_pred_flag, mpm_idx Indices such as these are coded (decoded) and used for intra prediction other than INTRA_PLANAR. The prediction mode is selected as the selected prediction mode.

[0104] In the third modification of the second embodiment, rem_intra_luma_pred_mode is Intra prediction mode candidates from all 35 intra prediction modes and INTRA_PLANA It is only necessary to indicate 31 intra prediction modes excluding R, and a new intra prediction mode can be added. Adding new intra prediction modes can improve coding efficiency. For example, between prediction mode 9 and prediction mode 10, or between prediction mode 10 and prediction mode 11. Between prediction modes 25 and 26, and between prediction modes 26 and 27, In addition, in FIG. 20, INTRA_PLANA R is one flag of intra_luma_non_angular_pred_flag Since the selection probability of INTRA_PLANAR is higher than that of other intra prediction models, In addition, in Figure 19, the coding efficiency and processing efficiency can be optimized when the INTRA_PLANAR is prev_intra_luma_pred_flag and i ntra_luma_non_angular_pred_flag Therefore, the probability of selecting INTRA_PLANAR is higher than other intra prediction modes. When it is relatively high, coding efficiency and processing efficiency are improved.

[0105] The coded stream output by the image coding apparatus according to the above-described embodiment is The specific data format is used so that it can be decoded depending on the encoding method used. and an image decoding device corresponding to the image encoding device has this specific data format. The encoded stream can be decoded.

[0106] To exchange coded streams between the image coding device and the image decoding device, a wired or When a wireless network is used, the coded stream is sent to a network suitable for the transmission format of the communication channel. In that case, the coding sequence output by the image coding device may be converted into a different data format and transmitted. The stream is converted into coded data in a format suitable for the transmission mode of the communication channel and transmitted over the network. an image transmitting device that receives encoded data from a network and transmits the encoded stream to the and an image receiving device that restores the image to the image decoding device.

[0107] The image transmitting device has a memory for buffering the coded stream output by the image coding device. a packet processing unit for packetizing the coded stream into coded data; and a transmitting unit that transmits the encoded data via a network. a receiving unit that receives packetized coded data via a network; a packet processing unit that processes the encoded data into packets to generate an encoded stream; and a memory for buffering the coded stream, wherein the coded stream in the buffer is supplied to the image decoding device. will be provided.

[0108] In addition, by adding a display unit for displaying the image decoded by the image decoding device to the configuration, In this case, the display unit may display the decoded image decoded by the image decoding device. The image signal is displayed on the screen.

[0109] In addition, by adding an imaging unit to the configuration and inputting the captured image to the image encoding device, In this case, the image capturing unit converts the captured image signal into a block size The result is input to the determination unit 110.

[0110] The above encoding and decoding processes are carried out by hardware-based transmission, storage, and reception devices. It can be realized not only by using ROM (read only memory) or flash memory, but also by firmware stored in flash memory, etc., and software in computers, etc. This can be realized by using the firmware program and software program. The information may be provided by recording it on a computer-readable recording medium, or by wired or wireless communication. It can also be provided from a server through the network, or via terrestrial or satellite digital broadcasting. It is also possible to provide it as data broadcasting.

[0111] The present invention has been described above based on the embodiments. The embodiments are merely examples, and the respective structures thereof are not intended to be limiting. The fact that various variations are possible in the combination of components and each treatment process, and that such variations It will be understood by those skilled in the art that the present invention also encompasses a number of embodiments. However, the embodiments and modifications may be combined in any manner.

[0112] The embodiment may be specified by the following items.

[0113] [Item 1] A first intra prediction mode is selected from the intra prediction modes of blocks adjacent to the block to be predicted. a prediction mode candidate generating unit for generating a second intra-prediction mode candidate list and a second intra-prediction mode candidate list; (122) and the first intra-prediction mode candidate list and the second intra-prediction mode candidate list and a prediction mode for selecting a first intra prediction mode and a second intra prediction mode from the a code selection unit (123); a coded block adjacent to the block to be predicted based on the first intra-prediction mode; a first predicted value is calculated from the pixel of the second intra-prediction mode; A predicted value calculation unit (12) calculates a second predicted value from coded pixels adjacent to the image block. 4) and a predicted value weighting unit ( 125) and An image encoding device (100) comprising: [Item 2] The predicted value weighting unit (125) calculates a simple average or a weighting coefficient of the first predicted value and the second predicted value. 2. The image encoding method according to item 1, wherein the third predicted value is calculated by performing a weighted average. Equipment (100). [Item 3] If the number of intra prediction modes is 2, the prediction mode candidate generation unit (122) 2 intra prediction mode candidate list is generated, and if the number of intra prediction modes is 1, A second intra-prediction mode candidate list is not generated; If the number of intra prediction modes is two, the prediction mode selection unit (123) If the number of intra prediction modes is 1, the second intra prediction mode is selected. Do not select a prediction mode, If the number of intra prediction modes is two, the predicted value calculation unit (124) calculates a second predicted value. If the number of intra prediction modes is 1, the second predicted value is not calculated; If the number of intra prediction modes is two, the prediction value weighting unit (125) A third predicted value is calculated based on the predicted value and the second predicted value. 3. The method according to claim 1 or 2, wherein the first predicted value is used as the predicted value as it is. An image encoding device (100). [Item 4] The width of the block to be predicted is equal to or greater than a predetermined threshold width and the height of the block to be predicted is equal to or greater than a predetermined threshold width. If the threshold value is equal to or greater than the threshold value, the number of intra prediction modes is set to 2, and the width of the block to be predicted is set to a predetermined value. If the width is equal to or greater than a predetermined threshold and the height of the block to be predicted is not equal to or greater than a predetermined threshold, the block is considered to be an intra block. The method further comprises a mode number determination unit (121) that sets the number of prediction modes to 1. 4. The image encoding device (100) according to claim 3. [Item 5] The mode number determination unit (121) determines whether the first intra prediction mode is a non-angular intra prediction mode. 5. The image processing method according to claim 4, wherein the number of intra-prediction modes is set to 1 when the image processing mode is the intra-prediction mode. Image encoding device (100). [Item 6] When the number of intra prediction modes is two, the information of the second intra prediction mode is Any of items 3 to 5, further comprising an encoding unit (140) for encoding the The image encoding device (100) according to any one of claims 1 to 10. [Item 7] A plurality of intra predictions using coded pixels adjacent to the block to be predicted. Intra prediction modes are classified into non-angular intra prediction modes and angular intra prediction modes. , the syntax element of the non-angular intra prediction mode and the syntax element of the angular intra prediction mode The present invention is characterized in that it further comprises an encoding unit (140) that divides the data into syntax elements and generates a code string. The image encoding device (100) according to any one of items 1 to 5 is characterized in that: [Item 8] The first intra prediction mode and the second intra prediction mode of a block adjacent to the block to be predicted are the intra prediction mode of the block to be predicted and the An encoding unit that obtains the second intra-prediction mode and encodes it into one syntax element. 5. The image code according to any one of items 1 to 4, further comprising (140). Encoding device (100). [Item 9] A first intra prediction mode is selected from the intra prediction modes of blocks adjacent to the block to be predicted. a prediction mode candidate step for generating a first intra-prediction mode candidate list and a second intra-prediction mode candidate list; Pu and, the first intra-prediction mode candidate list and the second intra-prediction mode candidate list and a prediction mode for selecting a first intra prediction mode and a second intra prediction mode from the a code selection step; a coded block adjacent to the block to be predicted based on the first intra-prediction mode; a first predicted value is calculated from the pixel of the second intra-prediction mode; a prediction value calculation step for calculating a second prediction value from coded pixels adjacent to the image block; and, a prediction value weighting step for calculating a third prediction value based on the first prediction value and the second prediction value; Top and An image encoding method comprising: [Item 10] A first intra prediction mode is selected from the intra prediction modes of blocks adjacent to the block to be predicted. a prediction mode candidate step for generating a first intra-prediction mode candidate list and a second intra-prediction mode candidate list; Pu and, the first intra-prediction mode candidate list and the second intra-prediction mode candidate list and a prediction mode for selecting a first intra prediction mode and a second intra prediction mode from the a code selection step; a coded block adjacent to the block to be predicted based on the first intra-prediction mode; a first predicted value is calculated from the pixel of the second intra-prediction mode; a prediction value calculation step for calculating a second prediction value from coded pixels adjacent to the image block; and, a prediction value weighting step for calculating a third prediction value based on the first prediction value and the second prediction value; Top and An image encoding program characterized by causing a computer to execute the above. [Item 11] Intra prediction is an intra prediction method that uses coded pixels adjacent to a block to be predicted. An image encoding device (100) in which a plurality of measurement modes are defined, The plurality of intra prediction modes are divided into non-angular intra prediction modes and angular intra prediction modes. and classifying the non-angular intra prediction mode syntax element and the angular intra prediction mode syntax element into The encoding unit (140) divides the mode into syntax elements and generates a code string. An image encoding device (100) characterized by: [Item 12] Intra prediction is an intra prediction method that uses coded pixels adjacent to a block to be predicted. An image coding method in which a plurality of measurement modes are defined, The plurality of intra prediction modes are divided into non-angular intra prediction modes and angular intra prediction modes. and classifying the non-angular intra prediction mode syntax element and the angular intra prediction mode syntax element into The present invention is characterized in that it has an encoding step of dividing the data into syntax elements of the mode and generating a code string. An image coding method characterized by: [Item 13] Intra prediction is an intra prediction method that uses coded pixels adjacent to a block to be predicted. An image encoding program in which a plurality of measurement modes are defined, The plurality of intra prediction modes are divided into non-angular intra prediction modes and angular intra prediction modes. and classifying the non-angular intra prediction mode syntax element and the angular intra prediction mode syntax element into The encoding step of dividing the data into syntax elements of the mode and generating a code string is performed by a computer. 2. An image encoding program for causing a computer to execute an image encoding program. [Item 14] Intra prediction is an intra prediction method that uses coded pixels adjacent to a block to be predicted. An image encoding device (100) in which a plurality of measurement modes are defined, The first intra prediction mode and the second intra prediction mode of the blocks adjacent to the block to be predicted are The prediction mode is the first intra prediction mode and the second intra prediction mode of the block to be predicted. and an encoding unit (140) that acquires the data as a syntax element and encodes it into one syntax element. An image encoding device (100) characterized by: [Item 15] Intra prediction is an intra prediction method that uses coded pixels adjacent to a block to be predicted. An image coding method in which a plurality of measurement modes are defined, The first intra prediction mode and the second intra prediction mode of the blocks adjacent to the block to be predicted are The prediction mode is the first intra prediction mode and the second intra prediction mode of the block to be predicted. The method is characterized by having an encoding step of acquiring the data as a code and encoding it into one syntax element. An image coding method characterized by: [Item 16] Intra prediction is an intra prediction method that uses coded pixels adjacent to a block to be predicted. An image encoding program in which a plurality of measurement modes are defined, The first intra prediction mode and the second intra prediction mode of the blocks adjacent to the block to be predicted are The prediction mode is the first intra prediction mode and the second intra prediction mode of the block to be predicted. The encoding step of taking the data as a code and encoding it into a single syntax element is performed by a computer. 2. An image encoding program for causing a computer to execute an image encoding program. [Item 17] A first intra prediction mode is selected from the intra prediction modes of blocks adjacent to the block to be predicted. a prediction mode candidate generating unit for generating a second intra-prediction mode candidate list and a second intra-prediction mode candidate list; (122) and selecting a first intra prediction mode from the code sequence of the first intra prediction mode; A prediction mode for selecting a second intra prediction mode from a code sequence of the second intra prediction mode. A selection unit (123); a decoded block adjacent to the block to be predicted based on the first intra-prediction mode; a first predicted value is calculated from the pixel, and the predicted value is calculated based on the second intra-prediction mode; a predicted value calculation unit (124) that calculates a second predicted value from decoded pixels adjacent to the block; and, a predicted value weighting unit ( 125) and An image decoding device (200) comprising: [Item 18] The predicted value weighting unit (125) calculates a simple average or a weighting coefficient of the first predicted value and the second predicted value. 18. The image decoding method according to claim 17, wherein the third predicted value is calculated by performing a weighted average. Equipment (200). [Item 19] If the number of intra prediction modes is 2, the prediction mode candidate generation unit (122) 2 intra prediction mode candidate list is generated, and if the number of intra prediction modes is 1, A second intra-prediction mode candidate list is not generated; If the number of intra prediction modes is two, the prediction mode selection unit (123) If the number of intra prediction modes is 1, the second intra prediction mode is selected. Do not select a prediction mode, If the number of intra prediction modes is two, the predicted value calculation unit (124) calculates a second predicted value. If the number of intra prediction modes is 1, the second predicted value is not calculated; If the number of intra prediction modes is two, the prediction value weighting unit (125) A third predicted value is calculated based on the predicted value and the second predicted value. Item 17 or 18, characterized in that if the first predicted value is used as the predicted value, The image decoding device (200) described herein. [Item 20] The width of the block to be predicted is equal to or greater than a predetermined threshold width and the height of the block to be predicted is equal to or greater than a predetermined threshold width. If the threshold value is equal to or greater than the threshold value, the number of intra prediction modes is set to 2, and the width of the block to be predicted is set to a predetermined value. If the width is equal to or greater than a predetermined threshold and the height of the block to be predicted is not equal to or greater than a predetermined threshold, the block is considered to be an intra block. The method further comprises a mode number determination unit (121) that sets the number of prediction modes to 1. 19. An image decoding device (200) according to claim 19. [Item 21] The mode number determination unit (121) determines whether the first intra prediction mode is a non-angular intra prediction mode. 21. The method according to claim 20, wherein the number of intra prediction modes is set to 1 when the prediction mode is set to 0. An image decoding device (200). [Item 22] When the number of intra prediction modes is two, the code string of the second intra prediction mode is decoded. 22. The method according to any one of items 17 to 21, further comprising a decoding unit (210) for decoding the The image decoding device (200) described herein. [Item 23] A plurality of pixels for performing intra prediction using decoded pixels adjacent to the block to be predicted. The intra prediction modes are classified into non-angular intra prediction modes and angular intra prediction modes, The syntax element for the non-angular intra-prediction mode and the syntax element for the angular intra-prediction mode It further comprises a decoding unit (210) for decoding the code string generated by dividing it into tax elements. 22. The image decoding device (200) according to any one of items 17 to 21, [Item 24] The first intra prediction mode and the second intra prediction mode of a block adjacent to the block to be predicted are the intra prediction mode of the block to be predicted and the A code string obtained as the second intra prediction mode and encoded into one syntax element 22. Any one of items 17 to 21, further comprising a decoding unit (210) for decoding the 1. An image decoding device (200) according to claim 1. [Item 25] A first intra prediction mode is selected from the intra prediction modes of blocks adjacent to the block to be predicted. a prediction mode candidate generation process for generating a first intra-prediction mode candidate list and a second intra-prediction mode candidate list; Tep and selecting a first intra prediction mode from the code sequence of the first intra prediction mode; A prediction mode for selecting a second intra prediction mode from a code sequence of the second intra prediction mode. A selection step, a decoded block adjacent to the block to be predicted based on the first intra-prediction mode; a first predicted value is calculated from the pixel, and the predicted value is calculated based on the second intra-prediction mode; a prediction value calculation step of calculating a second prediction value from decoded pixels adjacent to the block; a prediction value weighting step for calculating a third prediction value based on the first prediction value and the second prediction value; Top and An image decoding method comprising: [Item 26] A first intra prediction mode is selected from the intra prediction modes of blocks adjacent to the block to be predicted. a prediction mode candidate generation process for generating a first intra-prediction mode candidate list and a second intra-prediction mode candidate list; Tep and selecting a first intra prediction mode from the code sequence of the first intra prediction mode; A prediction mode for selecting a second intra prediction mode from a code sequence of the second intra prediction mode. A selection step, a decoded block adjacent to the block to be predicted based on the first intra-prediction mode; a first predicted value is calculated from the pixel, and the predicted value is calculated based on the second intra-prediction mode; a prediction value calculation step of calculating a second prediction value from decoded pixels adjacent to the block; a prediction value weighting step for calculating a third prediction value based on the first prediction value and the second prediction value; Top and An image decoding program characterized by causing a computer to execute the above. [Item 27] Intra prediction, which performs intra prediction using decoded pixels adjacent to the block to be predicted An image decoding device (200) in which a plurality of modes are defined, The plurality of intra prediction modes are divided into non-angular intra prediction modes and angular intra prediction modes. and classifying the non-angular intra prediction mode syntax element and the angular intra prediction mode syntax element into A decoding unit (210) for decoding the code string generated by dividing the code string into syntax elements of the mode is provided. An image decoding device (200) characterized by: [Item 28] Intra prediction, which performs intra prediction using decoded pixels adjacent to the block to be predicted An image decoding method in which a plurality of modes are defined, The plurality of intra prediction modes are divided into non-angular intra prediction modes and angular intra prediction modes. and classifying the non-angular intra prediction mode syntax element and the angular intra prediction mode syntax element into a decoding step of decoding a code string generated by dividing the code string into syntax elements of the mode; 1. An image decoding method comprising: [Item 29] Intra prediction, which performs intra prediction using decoded pixels adjacent to the block to be predicted An image decoding program having a plurality of modes defined therein, The plurality of intra prediction modes are divided into non-angular intra prediction modes and angular intra prediction modes. and classifying the non-angular intra prediction mode syntax element and the angular intra prediction mode syntax element into The decoding step is to decode the generated code string by dividing it into syntax elements of the mode. An image decoding program characterized by being executed by a computer. [Item 30] Intra prediction, which performs intra prediction using decoded pixels adjacent to the block to be predicted An image decoding device (200) in which a plurality of modes are defined, The first intra prediction mode and the second intra prediction mode of the blocks adjacent to the block to be predicted are The prediction mode is the first intra prediction mode and the second intra prediction mode of the block to be predicted. A decoding unit (21) that obtains the encoded code and decodes the code sequence encoded into one syntax element. 0). [Item 31] Intra prediction, which performs intra prediction using decoded pixels adjacent to the block to be predicted An image decoding method in which a plurality of modes are defined, The first intra prediction mode and the second intra prediction mode of the blocks adjacent to the block to be predicted are The prediction mode is the first intra prediction mode and the second intra prediction mode of the block to be predicted. a decoding step of obtaining the code and decoding the code sequence encoded into one syntax element. An image decoding method comprising: [Item 32] Intra prediction, which performs intra prediction using decoded pixels adjacent to the block to be predicted An image decoding program having a plurality of modes defined therein, The first intra prediction mode and the second intra prediction mode of the blocks adjacent to the block to be predicted are The prediction mode is the first intra prediction mode and the second intra prediction mode of the block to be predicted. a decoding step of obtaining the code and decoding the code sequence encoded into one syntax element. An image decoding program characterized by causing a computer to execute the above. [Explanation of symbols]

[0114] 100 Image encoding device, 110 Block size determination unit, 120 Intra prediction Selection unit, 130 conversion unit, 140 encoding unit, 200 image decoding device, 210 Decoding unit, 220 block size acquisition unit, 230 intra prediction unit, 240 inverse transform Exchange section.

Claims

1. encoding a first flag indicating whether to determine an intra prediction mode of a block to be predicted based on a first candidate specific index; If the first flag indicates that an intra prediction mode of the block to be predicted is determined based on the first candidate-specific index, encoding the first candidate-specific index; If the first flag does not indicate that the intra prediction mode of the block to be predicted is determined based on the first candidate-specific index, encode a second flag indicating whether the intra prediction mode of the block to be predicted is a predetermined non-angular intra prediction mode; an encoding unit that encodes a second candidate-specific index when the second flag does not indicate the predetermined non-angular intra prediction mode; If the first flag indicates that an intra prediction mode of the block to be predicted is determined based on the first candidate-specific index, determining an intra prediction mode of the block to be predicted based on the first candidate-specific index; If the second flag indicates the predetermined non-angular intra prediction mode, selecting the predetermined non-angular intra prediction mode as the intra prediction mode of the block to be predicted; a prediction mode selection unit that, when the second flag does not indicate the predetermined non-angular intra prediction mode, selects an intra prediction mode for the block to be predicted from an intra prediction mode candidate list generated to include intra prediction modes of blocks neighboring the block to be predicted but not to include the predetermined non-angular intra prediction mode, based on the second candidate identification index; and The image encoding device, wherein the first candidate-specific index indicates an intra-prediction mode that is not present in the intra-prediction mode candidate list.

2. encoding a first flag indicating whether to determine an intra prediction mode of a block to be predicted based on a first candidate specific index; If the first flag indicates that an intra prediction mode of the block to be predicted is determined based on the first candidate-specific index, encoding the first candidate-specific index; If the first flag does not indicate that the intra prediction mode of the block to be predicted is determined based on the first candidate-specific index, encode a second flag indicating whether the intra prediction mode of the block to be predicted is a predetermined non-angular intra prediction mode; an encoding step of encoding a second candidate-specific index when the second flag does not indicate the predetermined non-angular intra prediction mode; If the first flag indicates that an intra prediction mode of the block to be predicted is determined based on the first candidate-specific index, determining an intra prediction mode of the block to be predicted based on the first candidate-specific index; If the second flag indicates the predetermined non-angular intra prediction mode, selecting the predetermined non-angular intra prediction mode as the intra prediction mode of the block to be predicted; a prediction mode selection step of selecting, based on the second candidate identification index, an intra prediction mode for the block to be predicted from an intra prediction mode candidate list generated to include intra prediction modes of blocks neighboring the block to be predicted but not to include the predetermined non-angular intra prediction mode, when the second flag does not indicate the predetermined non-angular intra prediction mode; and The image encoding method, wherein the first candidate specific index indicates an intra-prediction mode that is not present in the intra-prediction mode candidate list.

3. encoding a first flag indicating whether to determine an intra prediction mode of a block to be predicted based on a first candidate specific index; If the first flag indicates that an intra prediction mode of the block to be predicted is determined based on the first candidate-specific index, encoding the first candidate-specific index; If the first flag does not indicate that the intra prediction mode of the block to be predicted is determined based on the first candidate-specific index, encode a second flag indicating whether the intra prediction mode of the block to be predicted is a predetermined non-angular intra prediction mode; an encoding step of encoding a second candidate-specific index when the second flag does not indicate the predetermined non-angular intra prediction mode; If the first flag indicates that an intra prediction mode of the block to be predicted is determined based on the first candidate-specific index, determining an intra prediction mode of the block to be predicted based on the first candidate-specific index; If the second flag indicates the predetermined non-angular intra prediction mode, selecting the predetermined non-angular intra prediction mode as the intra prediction mode of the block to be predicted; a prediction mode selection step of selecting, based on the second candidate identification index, an intra prediction mode for the block to be predicted from an intra prediction mode candidate list generated to include intra prediction modes of blocks neighboring the block to be predicted but not to include the predetermined non-angular intra prediction mode, when the second flag does not indicate the predetermined non-angular intra prediction mode; and The image encoding program, wherein the first candidate-specific index indicates an intra-prediction mode that is not present in the intra-prediction mode candidate list.

4. Decode a first flag indicating whether to determine an intra prediction mode of the block to be predicted based on the first candidate specific index; If the first flag indicates that an intra prediction mode of the block to be predicted is determined based on the first candidate-specific index, decoding the first candidate-specific index; If the first flag does not indicate that the intra prediction mode of the block to be predicted is determined based on the first candidate-specific index, decoding a second flag indicating whether the intra prediction mode of the block to be predicted is a predetermined non-angular intra prediction mode; a decoding unit that decodes a second candidate-specific index when the second flag does not indicate the predetermined non-angular intra prediction mode; If the first flag indicates that an intra prediction mode of the block to be predicted is determined based on the first candidate-specific index, determining an intra prediction mode of the block to be predicted based on the first candidate-specific index; If the second flag indicates the predetermined non-angular intra prediction mode, selecting the predetermined non-angular intra prediction mode as the intra prediction mode of the block to be predicted; a prediction mode selection unit that, when the second flag does not indicate the predetermined non-angular intra prediction mode, selects an intra prediction mode for the block to be predicted from an intra prediction mode candidate list generated to include intra prediction modes of blocks neighboring the block to be predicted but not to include the predetermined non-angular intra prediction mode, based on the second candidate identification index; and The image decoding device, wherein the first candidate-specific index indicates an intra-prediction mode that is not present in the intra-prediction mode candidate list.

5. Decode a first flag indicating whether to determine an intra prediction mode of the block to be predicted based on the first candidate specific index; If the first flag indicates that an intra prediction mode of the block to be predicted is determined based on the first candidate-specific index, decoding the first candidate-specific index; If the first flag does not indicate that the intra prediction mode of the block to be predicted is determined based on the first candidate-specific index, decoding a second flag indicating whether the intra prediction mode of the block to be predicted is a predetermined non-angular intra prediction mode; a decoding step of decoding a second candidate-specific index when the second flag does not indicate the predetermined non-angular intra prediction mode; If the first flag indicates that an intra prediction mode of the block to be predicted is determined based on the first candidate-specific index, determining an intra prediction mode of the block to be predicted based on the first candidate-specific index; If the second flag indicates the predetermined non-angular intra prediction mode, selecting the predetermined non-angular intra prediction mode as the intra prediction mode of the block to be predicted; a prediction mode selection step of selecting, based on the second candidate identification index, an intra prediction mode for the block to be predicted from an intra prediction mode candidate list generated to include intra prediction modes of blocks neighboring the block to be predicted but not to include the predetermined non-angular intra prediction mode, when the second flag does not indicate the predetermined non-angular intra prediction mode; and The image decoding method, wherein the first candidate specific index indicates an intra-prediction mode that is not present in the intra-prediction mode candidate list.

6. Decode a first flag indicating whether to determine an intra prediction mode of the block to be predicted based on the first candidate specific index; If the first flag indicates that an intra prediction mode of the block to be predicted is determined based on the first candidate-specific index, decoding the first candidate-specific index; If the first flag does not indicate that the intra prediction mode of the block to be predicted is determined based on the first candidate-specific index, decoding a second flag indicating whether the intra prediction mode of the block to be predicted is a predetermined non-angular intra prediction mode; a decoding step of decoding a second candidate-specific index when the second flag does not indicate the predetermined non-angular intra prediction mode; If the first flag indicates that an intra prediction mode of the block to be predicted is determined based on the first candidate-specific index, determining an intra prediction mode of the block to be predicted based on the first candidate-specific index; If the second flag indicates the predetermined non-angular intra prediction mode, selecting the predetermined non-angular intra prediction mode as the intra prediction mode of the block to be predicted; a prediction mode selection step of selecting, based on the second candidate identification index, an intra prediction mode for the block to be predicted from an intra prediction mode candidate list generated to include intra prediction modes of blocks neighboring the block to be predicted but not to include the predetermined non-angular intra prediction mode, when the second flag does not indicate the predetermined non-angular intra prediction mode; and The image decoding program is characterized in that the first candidate specifying index indicates an intra-prediction mode that does not exist in the intra-prediction mode candidate list.

7. A storage method for storing, on a recording medium, an encoded stream generated according to the image encoding method of claim 2.

8. A transmission method for transmitting an encoded stream generated according to the image encoding method of claim 2.

Citation Information

Patent Citations

  • Intra-prediction mode encoding method

    JP2016213853A

  • Method and apparatus for coding video and method and apparatus for decoding video, using intra prediction

    US20140133558A1

  • Neighbor based signaling of intra prediction modes

    US20170332084A1

  • Variable number of intra modes for video coding

    US20180098064A1

  • Intra-Prediction With Multiple Reference Lines

    US20180332284A1