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

By dividing images into luminance and color difference signal blocks with optimized division strategies, the image encoding and decoding process achieves improved efficiency and reduced processing load, addressing the challenges of increased processing amounts and dependency relationships.

JP7854606B2Active Publication Date: 2026-05-07GODO KAISHA IP BRIDGE 1
View PDF 7 Cites 0 Cited by

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
GODO KAISHA IP BRIDGE 1
Filing Date
2025-05-21
Publication Date
2026-05-07

AI Technical Summary

Technical Problem

Existing image encoding and decoding technologies face challenges in processing efficiency due to increased processing amounts and dependency relationships between primary and secondary signal processing, making parallel processing difficult.

Method used

The image is divided into luminance and color difference signal blocks, with independent division in intra-prediction and joint division in inter-prediction, and luminance-color difference intra-prediction is prohibited for blocks larger than a predetermined size, optimizing block division for encoding and decoding.

Benefits of technology

This approach improves encoding efficiency and reduces processing load by allowing block division suitable for image coding and decoding, enhancing coding efficiency and reducing processing requirements.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007854606000001
    Figure 0007854606000001
  • Figure 0007854606000002
    Figure 0007854606000002
  • Figure 0007854606000003
    Figure 0007854606000003
Patent Text Reader

Abstract

To provide an image coding device capable of improving a coding efficiency by performing a block division that is adopted to a coding and a decoding of an image.SOLUTION: An image coding device 100 that divides an image into blocks and performs encoding on a divided block basis comprises: a luminance signal block dividing unit that generates a luminance signal block by dividing a luminance signal of an image into rectangles in a predetermined size; a color difference signal block dividing unit that generates a color difference signal block by dividing a color difference signal of an image into rectangles in a predetermined size; and a prediction image generation unit that includes a luminance signal prediction part for predicting a luminance signal and a color difference signal prediction part for predicting a color difference signal. The luminance signal block and the color difference signal block are each divided independently in the case of an intra prediction, and is divided together in the case of an inter-prediction. The color difference signal prediction part can perform luminance / color difference intra-prediction for predicting the color difference signal from the decoded luminance signal, and inhibits use of the luminance / color difference intra-prediction in the case where a size of the luminance signal block is a predetermined size or larger.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to a technique for dividing an image into blocks and performing encoding and decoding in units of the divided blocks.

Background Art

[0002] In image encoding and decoding, an image is divided into blocks that are sets of a predetermined number of pixels, and encoding and decoding are performed in units of the blocks. By performing appropriate block division, the encoding efficiency of intra prediction (intra-frame prediction) and inter prediction (inter-frame prediction) is improved. Also, in intra prediction, the encoding efficiency is improved by predicting a secondary signal from a decoded image of a primary signal.

Prior Art Documents

Patent Documents

[0003]

Patent Document 1

Summary of the Invention

Problems to be Solved by the Invention

[0004] However, when predicting a secondary signal from a decoded image of a primary signal, the processing amount increases, a dependency relationship between the processing for the primary signal and the processing for the secondary signal occurs, and parallel processing becomes difficult.

[0005] The present invention has been made in view of such a situation, and an object thereof is to provide a technique for improving encoding efficiency by performing block division suitable for image encoding and decoding. [[ID=统一]]

Means for Solving the Problems

[0006] To solve the above problems, an image encoding device in one aspect of the present invention is an image encoding device that divides an image into blocks and encodes each divided block, and includes a luminance signal block division unit that divides the luminance signal of the image into rectangles of a predetermined size to generate luminance signal blocks, a color difference signal block division unit that divides the color difference signal of the image into rectangles of a predetermined size to generate color difference signal blocks, a luminance signal prediction unit that predicts the luminance signal, and a color difference signal prediction unit that predicts the color difference signal, wherein the luminance signal blocks and the color difference signal blocks are divided independently in the case of intra-prediction and together in the case of inter-prediction, the color difference signal prediction unit is capable of luminance-color difference intra-prediction that predicts the color difference signal from the decoded luminance signal, and the use of luminance-color difference intra-prediction is prohibited when the size of the luminance signal block is greater than or equal to a predetermined size.

[0007] Another aspect of the present invention is an image encoding method. This method is an image encoding method that divides an image into blocks and encodes each divided block, and includes a luminance signal block division step of dividing the luminance signal of the image into rectangles of a predetermined size to generate luminance signal blocks, a color difference signal block division step of dividing the color difference signal of the image into rectangles of a predetermined size to generate color difference signal blocks, a luminance signal prediction step of predicting the luminance signal, and a color difference signal prediction step of predicting the color difference signal, wherein the luminance signal blocks and the color difference signal blocks are divided independently in the case of intra-prediction and together in the case of inter-prediction, the color difference signal prediction step allows for luminance-color difference intra-prediction, which predicts the color difference signal from the decoded luminance signal, and prohibits the use of luminance-color difference intra-prediction if the size of the luminance signal block is greater than or equal to a predetermined size.

[0008] A further aspect of the present invention is an image decoding device. This device is an image decoding device that decodes an image in divided block units, and includes a luminance signal block division unit that divides the luminance signal of the image into rectangles of a predetermined size to generate luminance signal blocks, a color difference signal block division unit that divides the color difference signal of the image into rectangles of a predetermined size to generate color difference signal blocks, a luminance signal prediction unit that predicts the luminance signal, and a color difference signal prediction unit that predicts the color difference signal, wherein the luminance signal blocks and the color difference signal blocks are divided independently in the case of intra-prediction and together in the case of inter-prediction, the color difference signal prediction unit is capable of luminance-color difference intra-prediction that predicts the color difference signal from the decoded luminance signal, and prohibits the use of luminance-color difference intra-prediction when the size of the luminance signal block is greater than or equal to a predetermined size.

[0009] A further aspect of the present invention is an image decoding method. This method is an image decoding method that decodes an image in divided block units, and includes a luminance signal block division step of dividing the luminance signal of the image into rectangles of a predetermined size to generate luminance signal blocks, a color difference signal block division step of dividing the color difference signal of the image into rectangles of a predetermined size to generate color difference signal blocks, a luminance signal prediction step of predicting the luminance signal, and a color difference signal prediction step of predicting the color difference signal, wherein the luminance signal blocks and the color difference signal blocks are divided independently in the case of intra-prediction and together in the case of inter-prediction, the color difference signal prediction step allows for luminance-color difference intra-prediction, which predicts the color difference signal from the decoded luminance signal, and prohibits the use of luminance-color difference intra-prediction if the size of the luminance signal block is greater than or equal to a predetermined size.

[0010] Furthermore, any combination of the above components, as well as conversions of the expression of the present invention between methods, apparatus, systems, recording media, computer programs, etc., are also valid embodiments of the present invention. [Effects of the Invention]

[0011] According to the present invention, block division suitable for image coding and decoding becomes possible, improving coding efficiency and providing image coding and decoding with reduced processing load. [Brief explanation of the drawing]

[0012] [Figure 1] This is a configuration diagram of an image encoding device according to the first embodiment. [Figure 2] This is a configuration diagram of an image decoding device according to the first embodiment. [Figure 3] This is a flowchart illustrating the division into tree blocks and the division within tree blocks. [Figure 4] This diagram shows how an input image is divided into tree blocks. [Figure 5] This is a diagram illustrating the z-scan. [Figure 6] This diagram shows a tree block divided into four sections horizontally and vertically. [Figure 7] This diagram shows a tree block divided horizontally into two sections. [Figure 8] This diagram shows a tree block divided vertically into two sections. [Figure 9] This flowchart explains how to process each of the four divided blocks when a tree block is divided horizontally and vertically. [Figure 10] This flowchart explains how to process each of the two divided blocks when a tree block is split horizontally into two sections. [Figure 11] This diagram shows how a tree block is subdivided when it is divided horizontally into two sections. [Figure 12] This flowchart explains how to process each of the two divided blocks when a tree block is split vertically into two. [Figure 13] This diagram shows how a tree block is subdivided when it is split vertically into two sections. [Figure 14]It is a diagram showing an example of the syntax related to block division in the first embodiment. [Figure 15] It is a diagram for explaining intra prediction. [Figure 16] It is a diagram for explaining inter prediction. [Figure 17] It is a diagram for explaining a color difference format. [Figure 18] It is a diagram for explaining luminance color difference intra prediction. [Figure 19] It is a flowchart for explaining luminance color difference intra prediction. [Figure 20] It is a diagram for explaining the case where the size of a color difference block is larger than the size of a luminance block. [Figure 21] It is a diagram for explaining the case where the size of a color difference block is smaller than the size of a luminance block. [Figure 22] It is a diagram for explaining an example of the syntax of an intra color difference prediction mode. [Figure 23] It is a diagram for explaining an example of restricting intra color difference prediction by replacing surrounding pixels. [Figure 24] It is a diagram for explaining luminance color difference intra prediction due to differences in the size of luminance blocks.

Embodiments for Carrying Out the Invention

[0013] Embodiments of the present invention provide an image encoding technique for dividing an image into rectangular blocks and encoding / decoding the divided blocks.

[0014] (First Embodiment) The image encoding device 100 and the image decoding device 200 according to Embodiment 1 of the present invention will be described.

[0015] Figure 1 is a configuration diagram of the image encoding device 100 according to the first embodiment. Here, Figure 1 shows only the data flow related to the image signal. Additional information other than the image signal, such as motion vectors and prediction modes, is supplied by each component to the encoding bit sequence generation unit 105 to generate corresponding encoded data, but the data flow related to the additional information is not shown.

[0016] The block division unit 101 divides the image into encoding target blocks, which are the processing units for encoding, and supplies the image signals within the encoding target blocks to the residual signal generation unit 103. The block division unit 101 also supplies the image signals from the encoding target blocks to the prediction image generation unit 102 in order to evaluate the degree of agreement with the predicted image.

[0017] The block division unit 101 recursively divides the image into rectangles of a predetermined size to generate blocks to be encoded. The block division unit 101 includes a 4-division unit that divides the target block in the recursive division into four horizontally and vertically to generate four blocks, and a 2-division unit that divides the target block in the recursive division into two horizontally or vertically to generate two blocks. The detailed operation of the block division unit 101 will be described later.

[0018] The prediction image generation unit 102 generates a prediction image signal by performing intra-picture prediction or inter-picture prediction based on the prediction mode from the decoded image signal supplied from the decoded image memory 108. The image signal within the block to be encoded supplied from the block division unit 101 is used to evaluate intra-prediction and inter-prediction. In intra-prediction, the prediction image signal is generated using the image signal of the block to be encoded supplied from the block division unit 101 and the image signals of surrounding encoded blocks adjacent to the block to be encoded, which are in the same picture as the block to be encoded and supplied from the decoded image memory 108. In inter-prediction, the image signal of the block to be encoded supplied from the block division unit 101 is used as a reference picture, an encoded picture stored in the decoded image memory 108 that is before or after the picture containing the block to be encoded (encoded picture) in the time series is used as a reference picture, and block matching or other block matching evaluation is performed between the encoded picture and the reference picture to obtain a motion vector indicating the amount of motion, and motion compensation is performed from the reference picture based on this amount of motion to generate a prediction image signal. The predictive image generation unit 102 supplies the thus generated predictive image signal to the residual signal generation unit 103.

[0019] The residual signal generation unit 103 generates a residual signal by subtracting the image signal to be encoded from the predicted signal generated by the predicted image generation unit 102, and supplies it to the orthogonal transformation and quantization unit 104.

[0020] The orthogonal transformation and quantization unit 104 orthogonally transforms and quantizes the residual signal supplied from the residual signal generation unit 103, and supplies the orthogonally transformed and quantized residual signal to the encoded bit sequence generation unit 105 and the inverse quantization and inverse orthogonal transformation unit 106.

[0021] The encoded bit sequence generation unit 105 generates encoded bit sequences for the orthogonal transform and quantized residual signals supplied by the orthogonal transform and quantization unit 104. The encoded bit sequence generation unit 105 also generates corresponding encoded bit sequences for additional information such as motion vectors, prediction modes, and block division information.

[0022] The inverse quantization / inverse orthogonal transformation unit 106 inversely quantizes and inversely orthogonal transforms the orthogonal transformed residual signal supplied from the orthogonal transformation / quantization unit 104, and supplies the inversely quantized and inversely orthogonal transformed residual signal to the decoded image signal superposition unit 107.

[0023] The decoded image signal superposition unit 107 superimposes the predicted image signal generated by the predicted image generation unit 102 with the residual signal that has been inversely quantized and inversely orthogonal transformed by the inverse quantization / inverse orthogonal transformation unit 106 to generate a decoded image, which is then stored in the decoded image memory 108. In addition, the decoded image may be subjected to filtering to reduce block distortion caused by encoding before being stored in the decoded image memory 108.

[0024] Figure 2 is a configuration diagram of the image decoding device 200 according to Embodiment 1. Here, Figure 2 shows only the data flow related to the image signal. Additional information other than the image signal, such as motion vectors and prediction modes, is supplied to each component by the bit string decoding unit 201 and used for corresponding processing, but the data flow related to the additional information is not shown.

[0025] The bit sequence decoding unit 201 decodes the supplied encoded bit sequence and supplies the orthogonally transformed and quantized residual signal to the block division unit 202.

[0026] The block division unit 202 determines the shape of the block to be decoded based on the decoded block division information, and supplies the orthogonal transform and quantized residual signal of the determined block to be decoded to the inverse quantization and inverse orthogonal transform unit 203.

[0027] The block division unit 202 generates blocks to be decoded by recursively dividing the image into rectangles of a predetermined size based on the decoded block division information. The block division unit 202 includes a 4-division unit that divides the target block in the recursive division into four horizontally and vertically to generate four blocks, and a 2-division unit that divides the target block in the recursive division into two horizontally or vertically to generate two blocks. The detailed operation of the block division unit 202 will be described later.

[0028] The inverse quantization / inverse orthogonal transformation unit 203 performs an inverse orthogonal transformation and inverse quantization on the supplied orthogonal transformation / quantized residual signal to obtain an inverse orthogonal transformation / inverse quantized residual signal.

[0029] The predictive image generation unit 204 generates a predictive image signal from the decoded image signal supplied from the decoded image memory 206 and supplies it to the decoded image signal superposition unit 205.

[0030] The decoded image signal superposition unit 205 generates and outputs a decoded image signal by superimposing the predicted image signal generated by the prediction image generation unit 204 with the residual signal that has been inversely orthogonal transformed and inversely quantized by the inverse quantization and inverse orthogonal transformation unit 203, and stores it in the decoded image memory 206. In addition, the decoded image may be subjected to filtering to reduce block distortion caused by encoding, etc., before being stored in the decoded image memory 206.

[0031] The operation of the block division unit 101 of the image encoding device 100 will be described in detail. Figure 3 is a flowchart illustrating the division into tree blocks and the division within the tree blocks.

[0032] First, the input image is divided into tree blocks of a predetermined size (S1000). For example, the tree block may be 128 pixels x 128 pixels. However, the tree block is not limited to 128 pixels x 128 pixels; any size and shape can be used as long as it is rectangular. The size and shape of the tree block may be fixed values ​​between the encoding device and the decoding device, or the encoding device may determine and record the block size in the encoded bitstream, and the decoding device may use the recorded block size. Figure 4 shows how the input image is divided into tree blocks. The tree blocks are encoded and decoded in the order of the raster scan, that is, from left to right and from top to bottom.

[0033] The tree block is further divided into rectangular blocks. The inside of the tree block is encoded and decoded in z-scan order. Figure 5 shows the z-scan order. In z-scan, encoding and decoding are performed in the order of top left, top right, bottom left, and bottom right. The inside of the tree block can be divided into 4 or 2 sections. 4 sections are divided horizontally and vertically. 2 sections are divided horizontally or vertically. Figure 6 shows a tree block divided into 4 sections horizontally and vertically. Figure 7 shows a tree block divided into 2 sections horizontally. Figure 8 shows a tree block divided into 2 sections vertically.

[0034] Refer to Figure 3 again. Determine whether to divide the inside of the tree block into four sections horizontally and vertically (S1001).

[0035] If it is determined that the tree block should be divided into four sections (S1001: Yes), the tree block is divided into four sections (S1002), and each of the four sections divided horizontally and vertically is processed (S1003). The process of further dividing the four sections will be described later (Figure 9).

[0036] If it is determined that the tree block should not be divided into four parts (S1001: No), then it is determined whether to divide the tree block into two parts (S1004).

[0037] If it is determined that the inside of the tree block should be divided into two (S1004: Yes), then it is determined whether the direction of division should be horizontal (S1005).

[0038] If it is determined that the direction to divide into two is horizontal (S1005: Yes), the tree block is divided into two horizontally (S1006), and each of the horizontally divided blocks is processed (S1007). The process of further dividing the horizontally divided blocks will be described later (Figure 10).

[0039] If it is determined that the direction of division should be vertical rather than horizontal (S1005: No), the tree block is divided vertically into two parts (S1008), and each of the vertically divided blocks is processed (S1009). The process of further dividing a block that has been divided horizontally will be described later (Figure 11).

[0040] If it is determined that the tree block should not be divided into two parts (S1004: No), the block division process is terminated without dividing the tree block into blocks (S1010).

[0041] Next, we will explain the processing of each divided block when the tree block is divided into four sections horizontally and vertically, using the flowchart in Figure 9.

[0042] Determine whether to divide the inside of the block into four sections again horizontally and vertically (S1101).

[0043] If it is determined that the block should be divided into four again (S1101: Yes), the block is divided into four again (S1102), and each of the four blocks divided horizontally and vertically is processed (S1103).

[0044] If it is determined that the block should not be divided into four parts again (S1101: No), then it is determined whether to divide the block into two parts (S1104).

[0045] If it is determined that the inside of the block should be divided into two (S1104: Yes), then it is determined whether the direction of division should be horizontal (S1105).

[0046] If it is determined that the direction to divide into two is horizontal (S1105: Yes), the inside of the block is divided into two horizontally (S1106), and each of the horizontally divided blocks is processed (S1107).

[0047] If it is determined that the direction to be divided into two is vertical rather than horizontal (S1105: No), the inside of the block is divided into two vertically (S1108), and each of the vertically divided blocks is processed (S1109).

[0048] If it is determined that the block should not be divided into two parts (S1104: No), the block division process is terminated without dividing the block internally (S1110).

[0049] The process shown in the flowchart of Figure 9 is executed for each of the four divided blocks. The contents of the four divided blocks are also encoded and decoded in z-scan order.

[0050] Next, we will explain the processing of each divided block when a tree block is divided horizontally into two, using the flowchart in Figure 10.

[0051] When a tree block is divided horizontally into two sections, each of the two divided sections first determines whether to divide the inside of the block into four sections horizontally and vertically (S1201).

[0052] If it is determined that the inside of the block should be divided into four parts (S1201: Yes), the inside of the block is divided into four parts (S1202), and each of the four divided blocks is processed horizontally and vertically (S1203).

[0053] If it is determined that the block should not be divided into four parts (S1201: No), then it is determined whether to divide the block into two parts again (S1204).

[0054] If it is decided to divide it into two again (S1204: Yes), the inside of the block is divided vertically (S1205), and each of the two vertically divided blocks is processed (S1206).

[0055] If it is determined that the block will not be divided into two again (S1204: No), the block division process is terminated without further dividing the inside of the block (S1207).

[0056] Figure 11 shows how the divided blocks are subdivided when a tree block is subdivided horizontally into two. Here, when the parent tree block is subdivided horizontally into two, the subdivided blocks are only allowed to be subdivided vertically, and are automatically subdivided vertically. Furthermore, when the parent tree block is subdivided into two, it is also possible to completely prohibit subdividing into four in the child blocks. This prevents the blocks from being subdivided in the same direction as the parent block, thus preventing the subdividing of blocks into elongated rectangles horizontally, and making the encoding and decoding process easier.

[0057] The process shown in the flowchart of Figure 10 is executed for each block that is divided horizontally into two parts. Within each divided block, encoding and decoding are performed in the order of top and bottom.

[0058] Next, we will explain the processing of each divided block when a tree block is divided vertically into two, using the flowchart in Figure 12.

[0059] When a tree block is divided vertically into two sections, each of the two divided sections first determines whether to divide the inside of the block into four sections horizontally and vertically (S1301).

[0060] If it is determined that the inside of the block should be divided into four parts (S1301: Yes), the inside of the block is divided into four parts (S1302), and each of the four divided blocks is processed horizontally and vertically (S1303).

[0061] If it is determined that the block should not be divided into four parts (S1301: No), then it is determined whether to divide the block into two parts again (S1304).

[0062] If it is decided to divide it into two again (S1304: Yes), the inside of the block is divided horizontally (S1305), and each of the horizontally divided blocks is processed (S1306).

[0063] If it is determined that the block will not be divided into two again (S1304: No), the block division process is terminated without further dividing the inside of the block (S1307).

[0064] Figure 13 shows how the divided blocks are subdivided when a tree block is subdivided vertically into two. Here, when the parent tree block is subdivided vertically into two, the subdivided blocks are only allowed to be subdivided horizontally, and are automatically subdivided horizontally. Furthermore, when the parent tree block is subdivided into two, it is also possible to completely prohibit subdividing into four in the child blocks. This prevents the blocks from being subdivided in the same direction as the parent block, thus preventing block subdivisions that result in elongated rectangles in the vertical direction, and making the encoding and decoding process easier.

[0065] The process shown in the flowchart of Figure 12 is executed for each block that is divided vertically into two parts. Within each divided block, encoding and decoding are performed in the order of left then right.

[0066] While we have explained how to subdivide a tree block when it is divided, the parent block does not necessarily have to be a tree block. For example, if a tree block (128x128) is divided into four, and each of those four divided blocks (64x64) is further divided into four or two, the above process will also be applied to the subdivision of the subdivided blocks.

[0067] Next, the operation of the block division unit 202 of the image decoding device 200 will be explained. It divides blocks using the same processing procedure as the block division unit 101 of the image encoding device 100, but the block division unit 101 of the image encoding device 100 selects a block division pattern and outputs the selected block division information, whereas the block division unit 202 of the image decoding device divides blocks using the block division information decoded from the encoded bitstream. Furthermore, when decoding the block division information from the encoded bitstream, if further division in the same direction is prohibited, the syntax structure is such that information for which there is no choice is not transmitted within the bitstream.

[0068] Figure 14 shows an example of the syntax (syntax rules for encoded bitstreams) for block division in the first embodiment. The division of the tree block begins by sending and receiving a flag (4_division_flag) indicating whether to divide it into four parts. If it is to divide it into four parts (4_division_flag is 1), the tree block is divided into four parts and processing ends. After that, the divided block is further divided using the syntax shown in Figure 14. If it is not to divide it into four parts (4_division_flag is 0), a flag (2_division_flag) indicating whether to divide it into two parts is sent and received. If it is to divide it into two parts (2_division_flag is 1), a flag (2_division_direction) indicating the direction of the division is also sent and received. If 2_division_direction is 1, it indicates a vertical division, and if 2_division_direction is 0, it indicates a horizontal division. After that, the divided block is further divided using the syntax shown in Figure 14. If the tree block is not to be split into two (2_division_flag is 0), the process will terminate without splitting the tree block.

[0069] Here, we will explain the process of subdividing the interior of a block that has been divided into four or two parts. The process of subdividing the interior of a block also uses the syntax shown in Figure 14, but it differs from the case of dividing a tree block in that there is a restriction on the direction of division when dividing it into two parts. In other words, when a tree block is divided into two parts, when subdividing the interior of the two divided parts, it is prohibited to divide in the same direction as the division direction that was used to divide the tree block into two parts. This prevents the divided blocks from becoming longer and narrower rectangles, and prevents an increase in the memory bandwidth required for intra-prediction and inter-prediction. Details on preventing an increase in memory bandwidth will be described later.

[0070] Furthermore, it is also possible to count the number of times something has been divided in the same direction and restrict further divisions in the same direction if the number exceeds a predetermined limit. For example, dividing something in the same direction in two directions may be permitted up to two times, but from the third time onward, it may be prohibited.

[0071] In Figure 14, the syntax prioritizes selecting a 4-part division, sending and receiving information about whether to divide into 4 parts before information about whether to divide into 2 parts. On the other hand, if prioritizing a 2-part division, it is also possible to use a syntax that sends and receives information about whether to divide into 2 parts before information about whether to divide into 4 parts. This is because sending and receiving the event that is more likely to occur probabilistically first reduces the amount of code transmitted as a bitstream. In other words, it is also possible to estimate in advance whether a 4-part division or a 2-part division is more likely to occur, and use a syntax that sends and receives the division information that is more likely to occur first. For example, by sending and receiving information in the image header that prioritizes either a 4-part division or a 2-part division, the encoding device can adaptively determine the number of divisions that is most efficient for encoding, and the decoding device can divide the tree block using a syntax based on the selected number of divisions.

[0072] In the image encoding device 100 and the image decoding device 200, intra-prediction and inter-prediction are performed using the divided blocks. Both intra-prediction and inter-prediction involve copying pixels from memory.

[0073] Figures 15(a) to 15(d) show an example of intra-prediction. Figures 15(a) and 15(b) show the prediction direction and mode number of intra-prediction. As shown in Figures 15(c) and 15(d), intra-prediction generates a predicted image of the target block for encoding and decoding by copying pixels from pixels that are adjacent to the target block for encoding and decoding. In intra-prediction, the process of generating a predicted image and then generating encoded and decoded pixels is repeated on a block-by-block basis, so the processing order is sequential on a block-by-block basis, and the smaller the division of the block, the greater the overall processing load. Also, the more elongated the rectangle shape of the block, the greater the processing load of copying pixels from memory. Furthermore, since encoding and decoding involve orthogonal transformations of residual signals, the more different sizes of rectangles there are, the more different types of orthogonal transformations are required, which leads to an increase in circuit size. Therefore, when dividing the inside of a block into two, restricting the division to the same direction as the parent block can prevent an increase in the memory bandwidth required for intra-prediction.

[0074] Figure 16 shows an example of interpretation. Interpretation generates a predicted image of a block to be encoded / decoded by copying pixels in block units from pixels contained in an encoded / decoded image. In interpretation, when copying pixels in block units from a reference image, the device configuration often requires acquiring the necessary pixels in memory management units. Therefore, the smaller the block is divided, and the more elongated the shape of the block, the greater the overall processing load. Also, when performing fractional-precision motion compensation using an interpolation filter on the reference image, it is necessary to copy pixels that are several pixels added to the pixels contained in the block. The smaller the block size, the larger the relative ratio of the several pixels added, and the greater the overall processing load. Therefore, when dividing a block into two, restricting the division to the same direction as the division direction of the parent block can prevent an increase in the memory bandwidth required for interpretation.

[0075] Next, we will explain the relationship between luminance signals and chrominance signals in intra-prediction. Conventional formats for the relationship between luminance signals and chrominance signals include 4:2:0, 4:2:2, and 4:4:4. In the 4:2:0 format shown in Figure 17(a), two pixels are sampled from the luminance signal in both the horizontal and vertical directions, while one pixel is sampled from the chrominance signal in both the horizontal and vertical directions. Because the human eye perceives luminance signals more sensitively than chrominance signals, the amount of information in the chrominance signal is reduced compared to that of the luminance signal. In the 4:2:2 format shown in Figure 17(b), two pixels are sampled from the luminance signal in the horizontal direction, while one pixel is sampled from the chrominance signal in the horizontal direction. In the vertical direction, two pixels are sampled from the luminance signal in the vertical direction, while two pixels are sampled from the chrominance signal in the vertical direction. In the 4:4:4 format shown in Figure 17(c), two pixels are sampled from the luminance signal in both the horizontal and vertical directions, while two pixels are sampled from the chrominance signal in both the horizontal and vertical directions.

[0076] This embodiment will be described using the 4:2:0 format, the most widely used format for image coding, as an example. The block division units 101 and 202 include a luminance block division unit that divides the luminance signal of an image to generate luminance blocks, and a chrominance block division unit that divides the chrominance signal of an image to generate chrominance blocks. In intra prediction, the luminance signal and the chrominance signal are divided into blocks independently. In other words, in intra prediction, the size of the luminance block and the size of the chrominance block are determined independently. In intra prediction, since the luminance signal and the chrominance signal each copy pixel values ​​from surrounding pixels, dividing the luminance signal and the chrominance signal into blocks independently improves prediction efficiency. In contrast, in inter prediction, the luminance signal and the chrominance signal are treated together and divided into blocks. In other words, in inter prediction, the size of the luminance block and the size of the chrominance block are the same. This is because in inter prediction, there is no need to distinguish between luminance and chrominance in motion compensation.

[0077] The predictive image generation units 102 and 204 include a luminance signal prediction unit that predicts a luminance signal and a chrominance signal prediction unit that predicts a chrominance signal. The chrominance signal prediction unit performs luminance-chrominance intra-prediction, which predicts the chrominance signal from pixels that have already been encoded and decoded from the luminance signal, in order to improve the prediction efficiency of the chrominance signal in intra-prediction. In luminance-chrominance intra-prediction, the primary signal is encoded and decoded before the secondary signal, and the secondary signal is predicted using the encoded and decoded primary signal. Here, in the 4:2:0 and 4:2:2 formats, the amount of information in the luminance signal is greater than that of the chrominance signal, so the luminance signal is used as the primary signal and the chrominance signal is used as the secondary signal. In the 4:4:4 format, the amount of information in the luminance signal and the chrominance signal are the same, but in accordance with other formats, it is common to use the luminance signal as the primary signal and the chrominance signal as the secondary signal.

[0078] Figure 18 is a diagram illustrating luminance chrominance intra prediction, and Figure 19 is a flowchart illustrating luminance chrominance intra prediction.

[0079] As shown in Figure 18, the luminance-chrominance intra prediction is performed based on the degree of correlation between the encoded and decoded peripheral pixels 12a and 12b of the luminance block 10 and the encoded and decoded peripheral pixels 16a and 16b of the chrominance block 14. Since the luminance-chrominance intra prediction predicts the chrominance signal, the peripheral pixels for which the degree of correlation is calculated are defined based on the peripheral pixels of the chrominance block that are to be encoded and decoded. In other words, the peripheral pixels of the luminance block that are in the same position as the peripheral pixels determined for the chrominance block are the ones for which the degree of correlation is calculated.

[0080] First, the degree of correlation between the surrounding pixels of the encoded / decoded luminance signal and the surrounding pixels of the chrominance signal is calculated (S1901). Next, the encoded / decoded luminance signal of the block to be encoded / decoded is downsampled (S1902). Here, multiple filter types for downsampling may be prepared so that the filter type can be selected. For example, multiple filter types may be selected by preparing filters with different intensities, or multiple filter types may be selected by preparing filters with different numbers of taps. The filter type may be automatically selected using the degree of correlation between surrounding pixels, or the filter type may be encoded / decoded and transmitted within the bitstream. Furthermore, unless the downsampling filter for the luminance signal of the block to be encoded / decoded is determined using the degree of correlation between surrounding pixels, the processing in steps S1901 and S1902 can be done in any order, and steps S1901 and S1902 can be processed in parallel.

[0081] Finally, the chrominance signal is predicted from the downsampled luminance signal based on the degree of correlation between peripheral pixels (S1903). Downsampling is performed horizontally and vertically in the case of a 4:2:0 format. In the case of a 4:2:2 format, downsampling is performed horizontally and not vertically. In the case of a 4:4:4 format, downsampling is not performed horizontally or vertically.

[0082] In luminance-chrominance intra-prediction, the chrominance signal prediction process can begin after the encoding and decoding of the luminance signal of the block to be encoded and decoded is complete. Therefore, the timing at which the prediction process for the chrominance block can begin depends on the size of the luminance block and the size of the chrominance block.

[0083] Figures 20(a) and 20(b) illustrate the luminance-chrominance intra prediction when the size of the chrominance block is larger than the size of the luminance block. The number of pixels in the four divided luminance blocks 20a, 20b, 20c, and 20d shown in Figure 20(a) is 16x16, and the number of pixels in the chrominance block 20e shown in Figure 20(b) is 16x16.

[0084] Here, the comparison of luminance block and chrominance block sizes is not based on the number of pixels within the block, but on the area considering the chrominance format. That is, in a 4:2:0 format, the area occupied by the luminance block is half the area occupied by the chrominance block. Therefore, if the number of pixels in the luminance block is 16x16 and the number of pixels in the chrominance block is also 16x16, the luminance block is smaller. In a 4:2:0 format, if the number of pixels in the luminance block is 16x16 and the number of pixels in the chrominance block is 8x8, the area occupied by both blocks is the same, and the luminance block and chrominance block are the same size.

[0085] To compare the sizes of luminance blocks and chrominance blocks by comparing the number of pixels within each block rather than the area of ​​the blocks, the number of pixels in the chrominance block can be converted to the number of pixels in the luminance block using the ratio of the luminance signal to the chrominance signal in the chrominance format. In the case of a 4:2:0 format, the number of pixels in the luminance signal is twice the number of pixels in the chrominance signal, so the vertical and horizontal number of pixels in the chrominance block is doubled to convert it to the vertical and horizontal number of pixels in the luminance block. For example, in a 4:2:0 format, if the size of the luminance block is 16x16 and the size of the chrominance block is 16x16, the converted size of the chrominance block after converting to the number of pixels in the luminance block is 32x32, showing that the chrominance block is larger.

[0086] Intra prediction allows prediction processing for subsequent blocks only after decoding is completed block by block. That is, after decoding of the first luminance block 20a is complete, decoding of the second luminance block 20b becomes possible; after decoding of the second luminance block 20b is complete, decoding of the third luminance block 20c becomes possible; and after decoding of the third luminance block 20c is complete, decoding of the fourth luminance block 20d becomes possible.

[0087] If the size of the color difference block is larger than the size of the luminance block, the surrounding pixels required for the prediction processing of the color difference block 20e exist before the decoding of the four luminance blocks 20a, 20b, 20c, and 20d, both for luminance pixels and color difference pixels. Therefore, the degree of correlation between the surrounding pixels of the luminance signal and the surrounding pixels of the color difference signal in step S1901 of Figure 19 can be calculated without waiting for the decoding of the four luminance blocks 20a, 20b, 20c, and 20d.

[0088] Next, after decoding the first luminance block 20a is complete, downsampling of the luminance signal is performed as in step S1902 of Figure 19. Without waiting for the decoding of the second luminance block 20b to be complete, the pixels of the chrominance block 20e corresponding to the position of the first luminance block 20a can be predicted. Similarly, after decoding the second luminance block 20b is complete, downsampling of the luminance signal is performed to predict the pixels of the chrominance block 20e corresponding to the position of the second luminance block 20b without waiting for the decoding of the third luminance block 20c to be complete. Furthermore, after decoding the third luminance block 20c is complete, downsampling of the luminance signal is performed to predict the pixels of the chrominance block 20e corresponding to the position of the third luminance block 20c without waiting for the decoding of the fourth luminance block 20d to be complete. Finally, after decoding the fourth luminance block 20d is complete, downsampling of the luminance signal is performed to predict the pixels of the chrominance block 20e corresponding to the position of the fourth luminance block 20d.

[0089] Figures 21(a) and 21(b) illustrate the luminance-chrominance intra-prediction when the size of the chrominance block is smaller than the size of the luminance block. The luminance block 21a shown in Figure 21(a) has 16x16 pixels, and the four divided 1st to 4th chrominance blocks 21b, 21c, 21d, and 21e shown in Figure 21(b) have 4x4 pixels.

[0090] In a 4:2:0 format, the area occupied by a luminance block is half the area occupied by a chrominance block. Therefore, if the luminance block has 16x16 pixels and the chrominance block has 4x4 pixels, the chrominance block is smaller. To compare the sizes of luminance and chrominance blocks by comparing the number of pixels within each block rather than the area of ​​the blocks, in a 4:2:0 format, double the vertical and horizontal pixel count of the chrominance block to obtain the equivalent vertical and horizontal pixel count of the luminance block. In a 4:2:0 format, if the luminance block is 16x16 and the chrominance block is 4x4, the converted size of the chrominance block, when converted to the pixel count of the luminance block, becomes 8x8, showing that the chrominance block is smaller.

[0091] If the size of the color difference block is smaller than the size of the luminance block, the peripheral pixels of the first color difference block 21b can be used for both luminance and color difference pixels even before decoding of the luminance block 21a. However, the peripheral pixels of the second to fourth color difference blocks 21c, 21d, and 21e cannot be used until the decoding of the luminance block 21a is complete. In other words, for the second color difference block 21c, the degree of correlation between the peripheral pixels of the luminance signal and the peripheral pixels of the color difference signal in step S1901 of Figure 19 cannot be calculated until the decoding of the luminance block 21a is complete and the decoding of the first and second color difference blocks 21b and 21c is complete. Similarly, for the third color difference block 21d, the degree of correlation between the peripheral pixels of the luminance signal and the peripheral pixels of the color difference signal cannot be calculated until the decoding of the luminance block 21a is complete and the decoding of the first and second color difference blocks 21b and 21c is complete. Similarly, for the fourth color difference block 21e, the degree of correlation between the peripheral pixels of the luminance signal and the peripheral pixels of the color difference signal cannot be calculated for the fourth color difference block 21e until the decoding of the luminance block 21a is complete and the decoding of the first to third color difference blocks 21b, 21c, and 21d is complete.

[0092] Thus, when the size of a color difference block is smaller than the size of a luminance block, performing luminance-color difference intra prediction results in processing dependencies between luminance blocks and color difference blocks, and between color difference blocks themselves, making it unsuitable for parallel processing. Therefore, when the size of a color difference block is smaller than the size of a luminance block, luminance-color difference intra prediction is restricted. Methods for restricting luminance-color difference intra prediction include (1) restricting it by syntax, (2) replacing the intra color difference mode, and (3) replacing the surrounding pixels.

[0093] Figure 22 shows an example of the syntax for the intra-color difference prediction mode. When the color difference prediction mode number is 0, the same intra-prediction mode as the luminance prediction mode is used for color difference prediction. For example, if the luminance prediction mode is horizontal prediction mode, the color difference prediction mode will also be horizontal prediction mode. When the color difference prediction mode number is 1, the average value mode (DC mode) is used. DC mode performs intra-prediction using the average value of peripheral pixels. When the color difference prediction mode number is 2, the luminance color difference intra-prediction mode is used.

[0094] As a method to restrict luminance chrominance intra prediction, (1) when restricting by syntax, mode 2 is prohibited because it represents luminance chrominance intra prediction. In other words, mode 2 is not transmitted, and the intra chrominance mode is selected from mode 0 and mode 1.

[0095] As a method to limit luminance chrominance intra prediction, (2) when replacing an intra chrominance mode, if the chrominance prediction mode number is specified as mode 2, the vertical prediction mode is used instead of the luminance chrominance intra prediction mode. However, the prediction mode to be replaced is not limited to the vertical prediction mode; other prediction modes may also be used. Furthermore, it is preferable that the luminance prediction mode in mode 0 and the mode replaced in mode 2 are the same, so that there is no overlap in the modes used.

[0096] As a method to limit the luminance-chrominance intra prediction, (3) when replacing peripheral pixels, the peripheral pixels used to calculate the degree of correlation between the peripheral pixels of the luminance signal and the peripheral pixels of the chrominance signal in step S1901 of Figure 19 are replaced. In the second to fourth chrominance blocks 21c, 21d, and 21e of Figure 21, the degree of correlation of peripheral pixels can be calculated without waiting for the decoding of the luminance block 21a.

[0097] An example of replacing peripheral pixels is shown in Figure 23. Normally, pixels within the first color difference block 21b are used as peripheral pixels on the left side of the second color difference block 21c. However, using pixels within the first color difference block 21b requires waiting for the decoding of the luminance block 21a and the first color difference block 21b to be completed. Therefore, the area 21f that can be used without waiting for the decoding of the luminance block 21a to be completed is used as the peripheral pixels of the second color difference block 21c. Similarly, for the third color difference block 21d, the area 21f that can be used without waiting for the decoding of the luminance block 21a to be completed is used as the peripheral pixels of the third color difference block 21d. Similarly, for the fourth color difference block 21e, the area 21f that can be used without waiting for the decoding of the luminance block 21a to be completed is used as the peripheral pixels of the fourth color difference block 21e.

[0098] Thus, in the first embodiment, when performing luminance-chrominance intra prediction, if the size of the chrominance block is smaller than the size of the luminance block, the luminance-chrominance intra prediction can be limited, thereby mitigating the processing dependency between the luminance block and the chrominance block. This enables parallel processing of the luminance block and the chrominance block, reducing the amount of encoding and decoding processing required.

[0099] (Second Embodiment) A second embodiment of the present invention will now be described. In the second embodiment, unlike the first embodiment, the size of the luminance block and the size of the chrominance block are evaluated independently, rather than the relative sizes of the luminance block and the chrominance block, in order to limit the luminance-chrominance intra prediction. The other configurations and operations are the same as in the first embodiment.

[0100] First, let's explain the limitations based on the size of the luminance blocks. Figures 24(a) to 24(c) show the intra-prediction of luminance chrominance based on the size of the luminance blocks. As shown in Figures 24(a) and 24(b), the first luminance block 24a corresponds to the position of the first chrominance block 24e, the second luminance block 24b corresponds to the position of the second chrominance block 24f, the third luminance block 24c corresponds to the position of the third chrominance block 24g, and the fourth luminance block 24d corresponds to the position of the fourth chrominance block 24h. Also, the luminance block 24i in Figure 24(c) corresponds to the positions of the first to fourth chrominance blocks 24e, 24f, 24g, and 24h in Figure 24(b).

[0101] The dependency between luminance blocks and chrominance blocks is explained below. When the size of the luminance blocks is small, as shown in Figure 24(a), once the decoding of the first luminance block 24a is complete, decoding of the first chrominance block 24e becomes possible. Once the decoding of the second luminance block 24b is complete, decoding of the second chrominance block 24f becomes possible. Once the decoding of the third luminance block 24c is complete, decoding of the third chrominance block 24g becomes possible. Once the decoding of the fourth luminance block 24d is complete, decoding of the fourth chrominance block 24h becomes possible.

[0102] On the other hand, if the luminance block size is large, as shown in Figure 24(c), decoding of the first to fourth color difference blocks 24e, 24f, 24g, and 24h will not be possible until the decoding of luminance block 24i is completed.

[0103] When the division of luminance blocks and chrominance blocks is determined independently, a large absolute size of the luminance block increases the likelihood that the size of the chrominance block will be smaller than the size of the luminance block. Therefore, if the absolute size of the luminance block is greater than or equal to a predetermined size, the luminance-chrominance intra prediction of the corresponding chrominance block is restricted.

[0104] Similarly, if the absolute size of the color difference block is small, the likelihood that the size of the color difference block will be smaller than the size of the luminance block increases. Therefore, if the absolute size of the color difference block is less than or equal to a predetermined size, the luminance color difference intra prediction of the color difference block is restricted.

[0105] The method for limiting the luminance chromatic difference intra prediction is the same as in the first embodiment.

[0106] Thus, in the second embodiment, the luminance-chrominance intra-prediction is restricted when the absolute size of the luminance block is greater than the threshold, or when the absolute size of the chrominance block is less than the threshold. This allows for the prediction of cases where the size of the chrominance block is smaller than the size of the luminance block, thereby restricting the luminance-chrominance intra-prediction and probabilistically mitigating the processing dependency between the luminance block and the chrominance block.

[0107] (Third embodiment) A third embodiment of the present invention will now be described. In the third embodiment, unlike the first embodiment, the block division unit 101 divides the color difference blocks so that the size of the color difference blocks does not become smaller than the size of the luminance blocks, but the other configurations and operations are the same as in the first embodiment. When dividing the color difference blocks, the block division unit 101 prohibits division in a way that makes the size of the color difference blocks smaller than the size of the luminance blocks. As a result, in luminance-color difference intra prediction, the size of the color difference blocks becomes smaller than the size of the luminance blocks, and parallel processing of luminance blocks and color difference blocks is always possible.

[0108] The encoded bitstream of the image output by the image encoding device of the embodiment described above has a specific data format so that it can be decoded according to the encoding method used in the embodiment, and an image decoding device corresponding to the image encoding device can decode the encoded bitstream of this specific data format.

[0109] When a wired or wireless network is used to exchange encoded bitstreams between an image encoding device and an image decoding device, the encoded bitstream may be converted to a data format suitable for the transmission mode of the communication channel before transmission. In this case, a transmitting device is provided that converts the encoded bitstream output by the image encoding device into encoded data in a data format suitable for the transmission mode of the communication channel and transmits it to the network, and a receiving device is provided that receives the encoded data from the network, restores it to an encoded bitstream, and supplies it to the image decoding device.

[0110] The transmitting device includes a memory for buffering the encoded bitstream output by the image encoding device, a packet processing unit for packetizing the encoded bitstream, and a transmitting unit for transmitting the packetized encoded data over the network. The receiving device includes a receiving unit for receiving the packetized encoded data over the network, a memory for buffering the received encoded data, and a packet processing unit for packetizing the encoded data to generate an encoded bitstream and providing it to the image decoding device.

[0111] Furthermore, by adding a display unit to the configuration that displays the image decoded by the image decoding device, it is also possible to use it as a display device. In that case, the display unit reads the decoded image signal generated by the decoded image signal superimposition unit 205 and stored in the decoded image memory 206 and displays it on the screen.

[0112] Furthermore, by adding an imaging unit to the configuration and inputting the captured images into an image encoding device, it is possible to create an imaging device. In that case, the imaging unit inputs the captured image signals into the block division unit 101.

[0113] The above encoding and decoding processes can, of course, be implemented using hardware-based transmission, storage, and receiving devices, but they can also be implemented using firmware stored in ROM (read-only memory) or flash memory, or software on a computer. These firmware programs and software programs can be provided by recording them on a computer-readable recording medium, by providing them from a server via a wired or wireless network, or by providing them as data broadcasts on terrestrial or satellite digital broadcasting.

[0114] The present invention has been described above based on embodiments. The embodiments are illustrative, and it will be understood by those skilled in the art that various modifications are possible in combinations of their components and processing processes, and that such modifications also fall within the scope of the present invention. [Explanation of Symbols]

[0115] 100 Image encoding device, 101 Block division unit, 102 Predictive image generation unit, 103 Residual signal generation unit, 104 Orthogonal transformation / quantization unit, 105 Encoded bit sequence generation unit, 106 Inverse quantization / inverse orthogonal transformation unit, 107 Decoded image signal superposition unit, 108 Decoded image memory, 200 Image decoding device, 201 Bit sequence decoding unit, 202 Block division unit, 203 Inverse quantization / inverse orthogonal transformation unit, 204 Predictive image generation unit, 205 Decoded image signal superposition unit, 206 Decoded image memory.

Claims

1. An image encoding device that divides an image into blocks, encodes each divided block, and generates a bitstream, A luminance signal block division unit that divides the luminance signal of an image into rectangles to generate luminance signal blocks, A color difference signal block division unit divides the color difference signals of an image into rectangles to generate color difference signal blocks, A luminance signal prediction unit that predicts the luminance signal, It includes a color difference signal prediction unit that predicts the color difference signal, The aforementioned color difference signal prediction unit is capable of luminance-color difference intra-prediction, which predicts the color difference signal from the decoded luminance signal. The luminance signal block division unit recursively divides the luminance signal of the image into four parts in the horizontal and vertical directions, or recursively divides it into two parts in the horizontal or vertical directions. The color difference signal block division unit recursively divides the color difference signal of the image into four parts in the horizontal and vertical directions, or into two parts in the horizontal or vertical directions. The luminance signal block and the chrominance signal block are separated independently in the case of intra-prediction, and if the size of the luminance signal block is greater than or equal to a predetermined size, the luminance chrominance intra-prediction is prohibited. In the case of interpretation, the luminance signal block and the chrominance signal block are divided into blocks of the same area. An image coding device characterized by the following:

2. An image encoding method that divides an image into blocks, encodes each divided block, and generates a bitstream, A luminance signal block division step involves dividing the luminance signal of an image into rectangles to generate luminance signal blocks, and A color difference signal block division step involves dividing the color difference signal of an image into rectangles to generate color difference signal blocks, and A luminance signal prediction step that predicts the luminance signal, This includes a color difference signal prediction step that predicts the color difference signal, In the aforementioned color difference signal prediction step, it is possible to perform luminance-color difference intra-prediction, which predicts the color difference signal from the decoded luminance signal. The image's luminance signal is recursively divided into four parts horizontally and vertically, or into two parts horizontally or vertically. The color difference signal of the image is recursively divided into four parts horizontally and vertically, or into two parts horizontally or vertically. The luminance signal block and the chrominance signal block are separated independently in the case of intra-prediction, and if the size of the luminance signal block is greater than or equal to a predetermined size, the luminance chrominance intra-prediction is prohibited. In the case of interpretation, the luminance signal block and the chrominance signal block are divided into blocks of the same area. An image encoding method characterized by the following.

3. An image decoding device that decodes an image in blocks, A luminance signal block division unit that divides the luminance signal of an image into rectangles to generate luminance signal blocks, A color difference signal block division unit divides the color difference signals of an image into rectangles to generate color difference signal blocks, A luminance signal prediction unit that predicts the luminance signal, It includes a color difference signal prediction unit that predicts the color difference signal, The aforementioned color difference signal prediction unit is capable of luminance-color difference intra-prediction, which predicts the color difference signal from the decoded luminance signal. The luminance signal block division unit recursively divides the luminance signal of the image into four parts in the horizontal and vertical directions, or recursively divides it into two parts in the horizontal or vertical directions. The color difference signal block division unit recursively divides the color difference signal of the image into four parts in the horizontal and vertical directions, or into two parts in the horizontal or vertical directions. The luminance signal block and the chrominance signal block are separated independently in the case of intra-prediction, and if the size of the luminance signal block is greater than or equal to a predetermined size, the luminance chrominance intra-prediction is prohibited. In the case of interpretation, the luminance signal block and the chrominance signal block are divided into blocks of the same area. An image decoding device characterized by the following features.

4. An image decoding method that decodes an image in units of divided blocks, A luminance signal block division step involves dividing the luminance signal of an image into rectangles to generate luminance signal blocks, and A color difference signal block division step involves dividing the color difference signal of an image into rectangles to generate color difference signal blocks, and A luminance signal prediction step that predicts the luminance signal, This includes a color difference signal prediction step that predicts the color difference signal, In the aforementioned color difference signal prediction step, it is possible to perform luminance-color difference intra-prediction, which predicts the color difference signal from the decoded luminance signal. The image's luminance signal is recursively divided into four parts horizontally and vertically, or into two parts horizontally or vertically. The color difference signal of the image is recursively divided into four parts horizontally and vertically, or into two parts horizontally or vertically. The luminance signal block and the chrominance signal block are separated independently in the case of intra-prediction, and if the size of the luminance signal block is greater than or equal to a predetermined size, the luminance chrominance intra-prediction is prohibited. In the case of interpretation, the luminance signal block and the chrominance signal block are divided into blocks of the same area. An image decoding method characterized by the following:

5. A storage method for storing a bitstream generated according to the image encoding method described in claim 2 into a recording medium.

6. A transmission method for transmitting a bitstream generated according to the image encoding method described in claim 2.

Citation Information

Patent Citations

  • Image encoder, image encoding method and image encoding program

    JP2013005343A

  • Image processing device and image processing method

    JP2013034163A

  • Intra prediction apparatus, encoder, decoder and program

    JP2013090015A

  • Dynamic image encoding device, dynamic image decoding device, dynamic image encoding method, dynamic image decoding method and program

    JP2014195142A

  • Video encoding device, video decoding device, video system, video encoding method, video decoding method, and program

    WO2015005418A1