WO2012157539A1 - 画像処理装置および方法 - Google Patents

画像処理装置および方法 Download PDF

Info

Publication number
WO2012157539A1
WO2012157539A1 PCT/JP2012/062086 JP2012062086W WO2012157539A1 WO 2012157539 A1 WO2012157539 A1 WO 2012157539A1 JP 2012062086 W JP2012062086 W JP 2012062086W WO 2012157539 A1 WO2012157539 A1 WO 2012157539A1
Authority
WO
WIPO (PCT)
Prior art keywords
prediction
image
unit
intra
intra prediction
Prior art date
Application number
PCT/JP2012/062086
Other languages
English (en)
French (fr)
Inventor
小川 一哉
Original Assignee
ソニー株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ソニー株式会社 filed Critical ソニー株式会社
Publication of WO2012157539A1 publication Critical patent/WO2012157539A1/ja

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/11Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes

Definitions

  • the present disclosure relates to an image processing apparatus and method, and more particularly, to an image processing apparatus and method capable of improving encoding efficiency.
  • MPEG compressed by orthogonal transform such as discrete cosine transform and motion compensation is used for the purpose of efficient transmission and storage of information.
  • a device that conforms to a system such as Moving (Pictures Experts Group) is becoming widespread in both information distribution at broadcast stations and information reception in general households.
  • MPEG2 International Organization for Standardization
  • IEC International Electrotechnical Commission
  • MPEG2 was mainly intended for high-quality encoding suitable for broadcasting, but it did not support encoding methods with a lower code amount (bit rate) than MPEG1, that is, a higher compression rate. With the widespread use of mobile terminals, the need for such an encoding system is expected to increase in the future, and the MPEG4 encoding system has been standardized accordingly. Regarding the image coding system, the standard was approved as an international standard in December 1998 as ISO / IEC 14496-2.
  • H.26L International Telecommunication Union Telecommunication Standardization Sector
  • Q6 / 16 VCEG Video Coding Expert Group
  • H.26L is known to achieve higher encoding efficiency than the conventional encoding schemes such as MPEG2 and MPEG4, although a large amount of calculation is required for encoding and decoding.
  • Joint ⁇ ⁇ ⁇ ⁇ Model of Enhanced-Compression Video Coding has been implemented based on this H.26L and incorporating functions not supported by H.26L to achieve higher coding efficiency. It has been broken.
  • AVC Advanced Video Coding
  • RGB, 4: 2: 2, 4: 4: 4 encoding tools necessary for business use 8x8DCT (Discrete Cosine Transform) and quantization matrix specified by MPEG-2 are added.
  • FRExt Full State Image Codon Standardization was completed in February 2005. This makes it possible to use AVC to properly express film noise in movies. It has been used for a wide range of applications such as Blu-Ray Disc.
  • the conventional macroblock size of 16 pixels ⁇ 16 pixels is a large image frame such as UHD (Ultra High Definition: 4000 pixels ⁇ 2000 pixels), which is the target of the next generation encoding method. There was a fear that it was not optimal.
  • HEVC High Efficiency Video Video Coding
  • JCTVC Joint Collaboration Collaboration Team Video Coding
  • a coding unit (Coding Unit) is defined as a processing unit similar to a macroblock in AVC.
  • the CU is not fixed to a size of 16 ⁇ 16 pixels like the AVC macroblock, and is specified in the image compression information in each sequence.
  • a mode is provided that prohibits intra prediction (intra-screen prediction) from pixels reconstructed by inter prediction (inter-screen prediction) in inter pictures.
  • This mode is to prevent the error from affecting the intra prediction when an error is mixed in an image that is referred to in inter prediction or inter prediction.
  • the syntax in AVC specifies that decoding is performed in the above-described mode when the flag indicated by constrained_intra_pred_flag present in the picture parameter is 1.
  • Non-Patent Document 2 is a simple linear interpolation calculation, when an inter prediction block is large, a value calculated using pixels of an adjacent intra prediction block and a value in inter prediction May be very different.
  • the pixels of the intra prediction block used for the calculation are only two pixels adjacent to the inter prediction block, the value calculated using the pixels of the intra prediction block is the value of the intra prediction block. There is a risk that the pixel value of the block is shifted and the actual value (pixel value obtained by inter prediction) is greatly different.
  • the present disclosure has been made in view of such a situation, and an intra prediction mode that can be used by replacing a pixel of an unpredictable inter prediction block with a pixel with higher accuracy.
  • the purpose is to increase the coding efficiency and improve the coding efficiency.
  • One aspect of the present disclosure provides a prediction image generation unit for peripheral that performs intra prediction on a region to be inter-predicted in a prediction process performed for each predetermined region of an image, and generates a prediction image;
  • a storage unit that stores pixel values of pixels that can be used as peripheral pixels in intra prediction for a region that is processed temporally after the region to be processed of the prediction image generated by the prediction image generation unit for use;
  • the prediction image generation unit for encoding that performs intra prediction on the region to be processed and generates a prediction image, the input image, and the encoding
  • An image processing apparatus comprising: a calculation unit that calculates a difference image of a prediction image generated by a prediction image generation unit; and an encoding unit that encodes the difference image calculated by the calculation unit.
  • a determination unit configured to determine a size and a prediction mode of a processing unit for intra prediction performed by the peripheral prediction image generation unit based on a size and a prediction mode of the inter prediction processing unit; The unit may perform the intra prediction in the prediction mode determined by the determination unit with the size of the processing unit determined by the determination unit, and generate the predicted image.
  • the determination unit can determine the prediction mode of the intra prediction as average value prediction.
  • the determination unit can determine the prediction mode of the intra prediction as the prediction mode of the intra prediction performed immediately before.
  • the determination unit may determine the prediction mode of the intra prediction as a prediction mode in which an inner product of a motion vector unit vector and a prediction mode unit vector is maximized.
  • the determination unit can determine the prediction mode of the intra prediction as a prediction mode of another region adjacent to the processing target region where the intra prediction is performed.
  • the said determination part can determine the prediction mode of the area
  • the peripheral prediction image generation unit is configured to perform an inter prediction on a processing target region in a mode in which a reconstructed image generated using a prediction image generated by inter prediction is prohibited from being used in intra prediction. Intra prediction can be performed to generate a predicted image.
  • the storage unit is processed later in time than the region to be processed in the reconstructed image generated using the prediction image generated by the intra prediction.
  • the intra prediction information is generated, and a prediction image is generated, and the encoding unit encodes the intra prediction information related to the size and prediction mode of the intra prediction processing unit by the prediction image generation unit for encoding. It can be added to the bit stream of the difference image.
  • One aspect of the present disclosure is also an image processing method of an image processing device, in which a prediction image generation unit for a periphery performs processing on an area to be inter-predicted in a prediction process performed for each predetermined area of an image. Pixels that can be used as peripheral pixels in intra prediction for a region that is processed temporally after the region of the processing target of the generated prediction image by performing intra prediction and generating a prediction image.
  • the predicted image generation unit for encoding performs intra prediction on the region to be processed using the stored pixel values of surrounding pixels, generates a predicted image, and the calculation unit
  • a difference image between an input image and a generated predicted image is calculated, and an encoding unit encodes the calculated difference image.
  • Another aspect of the present disclosure includes a decoding unit that decodes a bitstream in which an image is encoded, and a prediction process that is performed for each predetermined region of an image obtained by decoding the bitstream by the decoding unit. From the processing target region of the predicted image generated by the peripheral prediction image generation unit that performs intra prediction on the predicted processing target region and generates a predicted image, and the predicted image generated by the peripheral prediction image generation unit A storage unit that stores pixel values of pixels that can be used as peripheral pixels in intra prediction for a region that is processed later in time, and a region to be processed using pixel values of peripheral pixels that are stored in the storage unit A prediction image generation unit for decoding that performs intra prediction on the image and generates a prediction image, and adds the prediction image generated by the prediction image generation unit for decoding to the difference image An image processing apparatus including an arithmetic unit for generating a decoded image.
  • a determination unit configured to determine a size and a prediction mode of a processing unit for intra prediction performed by the peripheral prediction image generation unit based on a size and a prediction mode of the inter prediction processing unit; The unit may perform the intra prediction in the prediction mode determined by the determination unit with the size of the processing unit determined by the determination unit, and generate the predicted image.
  • the determination unit can determine the prediction mode of the intra prediction as average value prediction.
  • the determination unit can determine the prediction mode of the intra prediction as the prediction mode of the intra prediction performed immediately before.
  • the determination unit may determine the prediction mode of the intra prediction as a prediction mode in which an inner product of a motion vector unit vector and a prediction mode unit vector is maximized.
  • the determination unit can determine the prediction mode of the intra prediction as a prediction mode of another region adjacent to the processing target region where the intra prediction is performed.
  • the determination unit may determine the prediction mode of the region selected according to a predetermined priority order as the prediction mode of the intra prediction when there are a plurality of prediction modes of the other regions.
  • the determination unit based on the size of the inter prediction processing unit and the prediction mode, included in the information about the inter prediction obtained by decoding the bitstream by the decoding unit, the prediction image generation unit for surrounding It is possible to determine the size and the prediction mode of the intra prediction processing unit performed by.
  • the peripheral prediction image generation unit is configured to perform an inter prediction on a processing target region in a mode in which a reconstructed image generated using a prediction image generated by inter prediction is prohibited from being used in intra prediction. Intra prediction can be performed to generate a predicted image.
  • Another aspect of the present disclosure is also an image processing method of an image processing device, in which a decoding unit decodes a bitstream in which an image is encoded, and a peripheral prediction image generation unit decodes the bitstream.
  • intra prediction is performed on the processing target region to be inter-predicted, a predicted image is generated, and a storage unit of the generated predicted image , Storing pixel values of pixels that can be used as peripheral pixels in intra prediction with respect to a region processed later in time than the region to be processed, and the predicted image generation unit for decoding stores the pixel values of the peripheral pixels Is used to perform intra prediction on a region to be processed, generate a predicted image, and the calculation unit adds the generated predicted image to the difference image to generate a decoded image.
  • intra prediction is performed on a processing target region to be inter predicted, a prediction image is generated, and The pixel value of a pixel that can be used as a peripheral pixel in intra prediction for a region processed later in time than the region to be processed is stored, and the pixel value of the peripheral pixel that is stored is used to store the pixel value of the pixel to be processed.
  • intra prediction is performed, a predicted image is generated, a difference image between the input image and the generated predicted image is calculated, and the calculated difference image is encoded.
  • a region to be inter-predicted Pixel values of pixels that can be used as peripheral pixels in intra prediction for a region that is processed temporally after the region to be processed in the generated prediction image Is stored intra prediction is performed on the region to be processed using the pixel values of the stored peripheral pixels, a predicted image is generated, the generated predicted image is added to the difference image, and the decoded image Is generated.
  • an image can be processed.
  • encoding efficiency can be improved.
  • FIG. 1 It is a block diagram which shows the main structural examples of an image coding apparatus. It is the figure which showed the processing order of 4x4 block contained in one macroblock in an AVC encoding system. It is a figure which shows the intra 4x4 prediction mode defined in the AVC encoding system. It is a figure which shows the intra 4x4 prediction mode defined in the AVC encoding system. It is the figure which showed the prediction direction of the intra 4x4 prediction mode defined in the AVC encoding system. It is a figure for demonstrating the prediction method of the intra 4x4 prediction mode defined in the AVC encoding system. It is a figure for demonstrating the encoding method of the intra 4x4 prediction mode defined in the AVC encoding system.
  • FIG. 26 is a block diagram illustrating a main configuration example of a personal computer. It is a block diagram which shows an example of a schematic structure of a television apparatus. It is a block diagram which shows an example of a schematic structure of a mobile telephone. It is a block diagram which shows an example of a schematic structure of a recording / reproducing apparatus. It is a block diagram which shows an example of a schematic structure of an imaging device.
  • FIG. 1 is a block diagram illustrating a main configuration example of an image encoding device.
  • the image encoding device 100 shown in FIG. Like the H.264 and MPEG (Moving Picture Experts Group) 4 Part 10 (AVC (Advanced Video Coding)) coding system, the image data is encoded using a prediction process.
  • H.264 and MPEG Motion Picture Experts Group 4 Part 10 (AVC (Advanced Video Coding)
  • AVC Advanced Video Coding
  • the image encoding device 100 includes an A / D conversion unit 101, a screen rearrangement buffer 102, a calculation unit 103, an orthogonal transformation unit 104, a quantization unit 105, a lossless encoding unit 106, and a storage buffer. 107.
  • the image coding apparatus 100 also includes an inverse quantization unit 108, an inverse orthogonal transform unit 109, a calculation unit 110, a loop filter 111, a frame memory 112, an intra prediction unit 113, a motion prediction / compensation unit 114, and a predicted image selection unit 115. And a rate control unit 116.
  • the A / D conversion unit 101 performs A / D conversion on the input image data, and supplies the converted image data (digital data) to the screen rearrangement buffer 102 for storage.
  • the screen rearrangement buffer 102 rearranges the images of the frames in the stored display order in the order of frames for encoding in accordance with GOP (Group Of Picture), and the images in which the order of the frames is rearranged. This is supplied to the calculation unit 103.
  • the screen rearrangement buffer 102 also supplies the image in which the frame order is rearranged to the intra prediction unit 113 and the motion prediction / compensation unit 114.
  • the calculation unit 103 subtracts the prediction image supplied from the intra prediction unit 113 or the motion prediction / compensation unit 114 via the prediction image selection unit 115 from the image read from the screen rearrangement buffer 102, and the difference information Is output to the orthogonal transform unit 104.
  • the calculation unit 103 subtracts the prediction image supplied from the intra prediction unit 113 from the image read from the screen rearrangement buffer 102.
  • the arithmetic unit 103 subtracts the predicted image supplied from the motion prediction / compensation unit 114 from the image read from the screen rearrangement buffer 102.
  • the orthogonal transform unit 104 performs orthogonal transform such as discrete cosine transform and Karhunen-Loeve transform on the difference information supplied from the computation unit 103. Note that this orthogonal transformation method is arbitrary.
  • the orthogonal transform unit 104 supplies the transform coefficient to the quantization unit 105.
  • the quantization unit 105 quantizes the transform coefficient supplied from the orthogonal transform unit 104.
  • the quantization unit 105 sets a quantization parameter based on the information regarding the target value of the code amount supplied from the rate control unit 116, and performs the quantization. Note that this quantization method is arbitrary.
  • the quantization unit 105 supplies the quantized transform coefficient to the lossless encoding unit 106.
  • the lossless encoding unit 106 encodes the transform coefficient quantized by the quantization unit 105 using an arbitrary encoding method. Since the coefficient data is quantized under the control of the rate control unit 116, the code amount becomes a target value set by the rate control unit 116 (or approximates the target value).
  • the lossless encoding unit 106 acquires information indicating an intra prediction mode from the intra prediction unit 113, and acquires information indicating an inter prediction mode, motion vector information, and the like from the motion prediction / compensation unit 114. Further, the lossless encoding unit 106 acquires filter coefficients used in the loop filter 111 and the like.
  • the lossless encoding unit 106 encodes these various types of information using an arbitrary encoding method, and makes it a part of the header information of the encoded data (multiplexes).
  • the lossless encoding unit 106 supplies the encoded data obtained by encoding to the accumulation buffer 107 for accumulation.
  • Examples of the encoding method of the lossless encoding unit 106 include variable length encoding or arithmetic encoding.
  • Examples of variable length coding include H.264.
  • CAVLC Context-Adaptive Variable Length Coding
  • Examples of arithmetic coding include CABAC (Context-Adaptive Binary Arithmetic Coding).
  • the accumulation buffer 107 temporarily holds the encoded data supplied from the lossless encoding unit 106.
  • the accumulation buffer 107 outputs the stored encoded data to, for example, a recording device (recording medium) (not shown) or a transmission path (not shown) at a predetermined timing at a predetermined timing.
  • the transform coefficient quantized by the quantization unit 105 is also supplied to the inverse quantization unit 108.
  • the inverse quantization unit 108 inversely quantizes the quantized transform coefficient by a method corresponding to the quantization by the quantization unit 105.
  • the inverse quantization method may be any method as long as it is a method corresponding to the quantization processing by the quantization unit 105.
  • the inverse quantization unit 108 supplies the obtained transform coefficient to the inverse orthogonal transform unit 109.
  • the inverse orthogonal transform unit 109 performs inverse orthogonal transform on the transform coefficient supplied from the inverse quantization unit 108 by a method corresponding to the orthogonal transform process by the orthogonal transform unit 104.
  • the inverse orthogonal transform method may be any method as long as it corresponds to the orthogonal transform processing by the orthogonal transform unit 104.
  • the inversely orthogonal transformed output (restored difference information) is supplied to the calculation unit 110.
  • the calculation unit 110 is supplied from the intra prediction unit 113 or the motion prediction / compensation unit 114 via the predicted image selection unit 115 to the inverse orthogonal transform result supplied from the inverse orthogonal transform unit 109, that is, the restored difference information.
  • the predicted images are added to obtain a locally reconstructed image (hereinafter referred to as a reconstructed image).
  • the reconstructed image is supplied to the loop filter 111 or the intra prediction unit 113.
  • the loop filter 111 includes a deblock filter, an adaptive loop filter, and the like, and appropriately performs a filtering process on the decoded image supplied from the calculation unit 110.
  • the loop filter 111 removes block distortion of the decoded image by performing a deblocking filter process on the decoded image.
  • the loop filter 111 performs image quality improvement by performing loop filter processing using a Wiener filter on the deblock filter processing result (decoded image from which block distortion has been removed). Do.
  • the loop filter 111 may perform arbitrary filter processing on the decoded image. Further, the loop filter 111 can supply information such as filter coefficients used for the filter processing to the lossless encoding unit 106 and encode it as necessary.
  • the loop filter 111 supplies a filter processing result (hereinafter referred to as a decoded image) to the frame memory 112.
  • the frame memory 112 stores the supplied decoded image, and supplies the stored decoded image as a reference image to the motion prediction / compensation unit 114 at a predetermined timing.
  • the intra prediction unit 113 holds the reconstructed image supplied from the calculation unit 110 as an image (peripheral image) of a peripheral region located around the processing target region.
  • the intra prediction unit 113 performs intra prediction (intra-screen prediction) that basically generates a prediction image using a prediction unit (PU) as a processing unit, using the pixel values of the peripheral images in the processing target picture.
  • the intra prediction unit 113 performs this intra prediction in a plurality of modes (intra prediction modes) prepared in advance.
  • the intra prediction unit 113 generates predicted images in all candidate intra prediction modes, evaluates the cost function value of each predicted image using the input image supplied from the screen rearrangement buffer 102, and selects the optimum mode. select. When the intra prediction unit 113 selects the optimal intra prediction mode, the intra prediction unit 113 supplies the predicted image generated in the optimal mode to the predicted image selection unit 115.
  • the intra prediction unit 113 appropriately supplies intra prediction mode information indicating the adopted intra prediction mode to the lossless encoding unit 106 to be encoded.
  • the intra prediction unit 113 when the predicted image generated by the inter prediction is selected by the predicted image selection unit 115, the intra prediction unit 113 generates and holds an image of the region by the intra prediction. This image is used as a peripheral image in intra prediction for other regions.
  • the motion prediction / compensation unit 114 basically uses the input image supplied from the screen rearrangement buffer 102 and the reference image supplied from the frame memory 112 as a processing unit for motion prediction (inter prediction). And a motion compensation process is performed according to the detected motion vector to generate a predicted image (inter predicted image information).
  • the motion prediction / compensation unit 114 performs such inter prediction in a plurality of modes (inter prediction modes) prepared in advance.
  • the motion prediction / compensation unit 114 generates a prediction image in all candidate inter prediction modes, evaluates the cost function value of each prediction image, and selects an optimal mode. When the optimal inter prediction mode is selected, the motion prediction / compensation unit 114 supplies the predicted image generated in the optimal mode to the predicted image selection unit 115.
  • the motion prediction / compensation unit 114 transmits information indicating the inter prediction mode employed, information necessary for performing processing in the inter prediction mode when decoding the encoded data, and the like. To be encoded.
  • the motion prediction / compensation unit 114 transmits information (inter prediction information) regarding the mode (optimum inter prediction mode) of the predicted image to the intra prediction unit. 113 is notified.
  • the intra prediction unit 113 determines an intra prediction mode using the inter prediction information.
  • the predicted image selection unit 115 selects a supply source of a predicted image to be supplied to the calculation unit 103 or the calculation unit 110.
  • the prediction image selection unit 115 selects the intra prediction unit 113 as a supply source of the prediction image, and supplies the prediction image supplied from the intra prediction unit 113 to the calculation unit 103 and the calculation unit 110.
  • the predicted image selection unit 115 selects the motion prediction / compensation unit 114 as a supply source of the predicted image, and calculates the predicted image supplied from the motion prediction / compensation unit 114 as the calculation unit 103. To the arithmetic unit 110.
  • the rate control unit 116 controls the rate of the quantization operation of the quantization unit 105 based on the code amount of the encoded data stored in the storage buffer 107 so that overflow or underflow does not occur.
  • intra prediction mode the intra prediction method defined in the AVC encoding method
  • three types of luminance signals are defined: an intra 4 ⁇ 4 prediction mode, an intra 8 ⁇ 8 prediction mode, and an intra 16 ⁇ 16 prediction mode.
  • an intra 4 ⁇ 4 prediction mode the intra 4 ⁇ 4 prediction mode
  • an intra 8 ⁇ 8 prediction mode the intra 16 ⁇ 16 prediction mode
  • an intra 16 ⁇ 16 prediction mode a DC component of each block is collected to generate a 4 ⁇ 4 matrix, which is further subjected to orthogonal transformation.
  • the intra 8 ⁇ 8 prediction mode is applicable only when the macro block is subjected to 8 ⁇ 8 orthogonal transformation with a high profile or higher profile.
  • each mode indicates a certain direction.
  • nine prediction directions are prepared in the intra 4 ⁇ 4 prediction mode.
  • a to p represent pixels of the block, and A to M represent pixel values belonging to adjacent blocks.
  • predicted pixel values a to p are generated using A to M as described below.
  • Mode 0 (Mode 0) is Vertical Prediction, and is applied only when A, B, C, and D are "available”.
  • the predicted pixel value is as follows.
  • Mode 1 is Horizontal Prediction, and is applied only when I, J, K, and L are "available". Each predicted pixel value is generated as follows.
  • Mode 2 (Mode 2) is DC ⁇ Prediction, and when A, B, C, D, I, J, K, and L are all available “available” ⁇ ⁇ , the predicted value is generated as in the following equation (1) Is done.
  • Mode 3 is Diagonal_Down_Left Prediction and is applied only when A, B, C, D, I, J, K, L, and M are “available”. Each predicted value is generated as follows.
  • Mode 4 is Diagonal_Down_Right Prediction and is applied only when A, B, C, D, I, J, K, L, and M are "available". Each predicted value is generated as follows.
  • Mode 5 is Diagonal_Vertical_Right Prediction, and is applied only when A, B, C, D, I, J, K, L, and M are “available”. Each predicted value is generated as follows.
  • Mode 6 is Horizontal_Down Prediction, and is applied only when A, B, C, D, I, J, K, L, and M are "available". Each predicted value is generated as follows.
  • Mode 7 is Vertical_Left d Prediction and is applied only when A, B, C, D, I, J, K, L, and M are available “available”. Each predicted value is generated as follows.
  • Mode 8 is Horizontal_Up Prediction, and is applied only when A, B, C, D, I, J, K, L, and M are "available". Each predicted value is generated as follows.
  • an intra 4 ⁇ 4 prediction mode (Intra_4x4_pred_mode) in C and an intra 4 ⁇ 4 prediction mode in A and B (Intra_4x4_pred_mode) is considered to have a high correlation.
  • the intra 4 ⁇ 4 prediction mode (Intra_4x4_pred_mode) for A and B is set to intra 4 ⁇ 4 prediction mode A (Intra_4x4_pred_modeA) and intra 4 ⁇ 4 prediction mode B (Intra_4x4_pred_modeB), respectively, and MostProbableMode is Define as 4).
  • the one assigned a smaller mode number (mode_number) is set as MostProbableMode. That is, the prediction mode (prediction direction) of the block C is predicted using the prediction mode (prediction direction) of the adjacent blocks A and B. The predicted value is set to MostProbableMode.
  • prev_intra4x4_pred_mode_flag [luma4x4BlkIdx]
  • rem_intra4x4_pred_mode [luma4x4BlkIdx]
  • nine intra 8 ⁇ 8 prediction modes (Intra_8x8_pred_mode) are defined. That is, nine prediction directions (prediction modes) are prepared for the intra 8 ⁇ 8 prediction mode.
  • the pixel value in the 8 ⁇ 8 block is p [x, y] (0 ⁇ x ⁇ 7; 0 ⁇ y ⁇ 7), and the pixel value of the adjacent block is p [-1, -1],. 1,15], p [-1,0],... P [-1,7].
  • the intra 8 ⁇ 8 prediction mode As described below, a low-pass filtering process is performed on adjacent pixels prior to generating a predicted value.
  • the pixel values before low-pass filtering are p [-1, -1], ..., p [-1,15], p [-1,0], ... p [-1,7],
  • the pixel values are represented as p ′ [ ⁇ 1, ⁇ 1],..., P ′ [ ⁇ 1,15], p ′ [ ⁇ 1,0],.
  • the prediction value in each intra prediction mode shown in FIG. 8 is calculated as follows using p ′ calculated in this way.
  • the predicted value pred8x8L [x, y] is calculated as in the following equation (17).
  • the predicted value pred8x8L [x, y] is calculated as in the following equation (18).
  • Mode 2 is DC Prediction
  • pred8x8L [x, y] (p '[x + y, -1] + 2 * p' [x + y + 1, -1] + p '[x + y + 2, -1] + 2)>> 2 ...
  • pred8x8L [x, y] (p '[xy-2, -1] + 2 * p' [xy-1, -1] + p '[xy, -1] + 2) >> 2 ... (25)
  • pred8x8L [x, y] (p '[-1, yx-2] + 2 * p' [-1, yx-1] + p '[-1, yx] + 2) >> 2 ... (26)
  • pred8x8L [x, y] (p '[0, -1] + 2 * p' [-1, -1] + p '[-1,0] + 2) >> 2 ... (27)
  • pred8x8L [x, y] (p '[x- (y >> 1) -1, -1] + p' [x- (y >> 1),-1] + 1) >> 1 ... (29)
  • pred8x8L [x, y] (p '[x- (y >> 1) -2, -1] + 2 * p' [x- (y >> 1) -1, -1] + p '[x -(y >> 1),-1] + 2) >> 2 ... (30)
  • pred8x8L [x, y] (p '[-1,0] + 2 * p' [-1, -1] + p '[0, -1] + 2) >> 2 ... (31)
  • pred8x8L [x, y] (p '[-1, y-2 * x-1] + 2 * p' [-1, y-2 * x-2] + p '[-1, y-2 * x-3] + 2) >> 2 (32)
  • pred8x8L [x, y] (p '[-1, y- (x >> 1) -1] + p' [-1, y- (x >> 1) + 1] >> 1 ... (34)
  • pred8x8L [x, y] (p '[-1, y- (x >> 1) -2] + 2 * p' [-1, y- (x >> 1) -1] + p '[- 1, y- (x >> 1)] + 2) >> 2 ... (35)
  • pred8x8L [x, y] (p '[-1,0] + 2 * p [-1, -1] + p' [0, -1] + 2) >> 2 ... (36)
  • pred8x8L [x, y] (p '[x-2 * y-1, -1] + 2 * p' [x-2 * y-2, -1] + p '[x-2 * y-3 , -1] + 2) >> 2 (37)
  • pred8x8L [x, y] (p '[x + (y >> 1),-1] + p' [x + (y >> 1) + 1, -1] + 1) >> 1 ... (38)
  • pred8x8L [x, y] (p '[x + (y >> 1),-1] + 2 * p' [x + (y >> 1) + 1, -1] + p '[x + (y >> 1) + 2, -1] + 2) >> 2 ... (39)
  • zHU is defined as in the following formula (40).
  • pred8x8L [x, y] (p '[-1, y + (x >> 1)] + p' [-1, y + (x >> 1) +1] + 1) >> 1 ... (41)
  • the predicted pixel value is calculated as in the following formula (44).
  • intra 16 ⁇ 16 prediction modes Intra_16x16_pred_mode
  • four prediction directions Prediction modes
  • the respective predicted values are generated as follows.
  • the intra prediction mode for color difference signals follows the intra 16 ⁇ 16 prediction mode as follows. However, while the intra 16 ⁇ 16 prediction mode targets 16 ⁇ 16 blocks, the intra prediction mode for color difference signals targets 8 ⁇ 8 blocks. Furthermore, it should be noted that the mode number (mode number) and the corresponding mode (mode) are different.
  • the prediction mode for color difference signals can be set independently of the mode for luminance signals.
  • Intra_chroma_pred_mode has four modes, mode 0 to mode 3, as shown in FIG.
  • Mode 0 (Mode 0) is DC Prediction, and when P (x, -1) and P (-1, y) are "available", the predicted value is calculated as in the following equation (56) Is done.
  • Mode 1 is Horizontal Prediction and is applied only when P (-1, y) is "available”.
  • the predicted value is generated as in the following formula (59).
  • Mode 2 is Vertical Prediction and is applied only when P (x, -1) is "available”.
  • the predicted value is generated as in the following equation (60).
  • Mode 3 is Plane Prediction and is applied only when P (x, -1) and P (-1, y) are available "available”.
  • the predicted value is generated as in the following formulas (61) to (66).
  • JM Job Model
  • JM JM
  • High Complexity Mode Low Complexity Mode.
  • the cost function value for each prediction mode Mode is calculated, and the prediction mode that minimizes the cost function value is selected as the optimum mode for the block or macroblock.
  • is the entire set of candidate modes for encoding the block or macroblock
  • D is the difference energy between the decoded image and the input image when encoded in the prediction mode Mode.
  • is a Lagrange undetermined multiplier given as a function of the quantization parameter.
  • R is a total code amount when encoding is performed in the mode Mode, including orthogonal transform coefficients.
  • D is the difference energy between the predicted image and the input image, unlike the case of High Complexity Mode.
  • QP2Quant QP
  • HeaderBit is a code amount related to information belonging to Header, such as a motion vector and a mode, which does not include an orthogonal transform coefficient.
  • Non-Patent Document 1 proposes an example in which this method is applied to an intra slice.
  • HEVC High Efficiency Video ITU Coding
  • JCTVC Joint Collaboration Team Video Coding
  • ISO / IEC ISO/ IEC
  • the standardization of the encoding method called is being advanced.
  • JCTVC-B205 (hereinafter referred to as Non-Patent Document 3) has been issued as Draft.
  • Coding Unit is also called Coding Block (CTB), and is a partial area of a picture unit image that plays the same role as a macroblock in AVC.
  • CTB Coding Block
  • the latter is fixed to a size of 16 ⁇ 16 pixels, whereas the size of the former is not fixed, and is specified in the image compression information in each sequence.
  • the CU having the largest size is called LCU (Largest Coding Unit), and the CU having the smallest size is called SCU (Smallest Coding Unit).
  • LCU Large Coding Unit
  • SCU Smallest Coding Unit
  • the sizes of these regions are specified, but each is limited to a square and a size represented by a power of 2.
  • FIG. 14 shows an example of a coding unit (Coding Unit) defined in HEVC.
  • the LCU size is 128, and the maximum hierarchical depth is 5.
  • split_flag is “1”
  • the 2N ⁇ 2N size CU is divided into N ⁇ N size CUs that are one level below.
  • the CU is divided into prediction units (Prediction Units (PU)) that are regions (partial regions of images in units of pictures) that are processing units of intra or inter prediction, and are regions that are processing units of orthogonal transformation It is divided into transform units (Transform Unit (TU)), which is (a partial area of an image in units of pictures).
  • Prediction Units PU
  • TU Transform Unit
  • area includes all the above-described various areas (for example, macroblock, sub-macroblock, LCU, CU, SCU, PU, TU, etc.) (any of them). .
  • units other than those described above may be included, and units that are impossible according to the content of the description are appropriately excluded.
  • HEVC intra prediction method Next, an intra prediction method defined in HEVC will be described.
  • the unit of PU for intra prediction is 4 ⁇ 4, 8 ⁇ 8, 16 ⁇ 16, 32 ⁇ 32, or 64 ⁇ 64.
  • intra prediction processing is performed based on a method called Angular Prediction described later.
  • intra prediction processing is performed based on a method called Arbitrary Directional Intra (ADI) described later.
  • ADI Arbitrary Directional Intra
  • the following describes the Angular Prediction intra prediction method defined in the HEVC encoding method.
  • FIG. 15 is a diagram for explaining the Angular Prediction intra prediction method.
  • ADI Arbitrary Directional Intra
  • FIG. 16 shows a diagram for explaining the Arbitrary Directional Intra (ADI) intra prediction method.
  • ADI Arbitrary Directional Intra
  • the prediction modes of Vertical, Horizontal, DC, DiagonalftDown-Left, Diagonal Down-Right, Vertical-Right, Horizontal-Down, Vertical-Left, and Horizontal-Up are defined.
  • (dx, dy) is transmitted as encoded information in the image compression information.
  • a CU that performs inter prediction and a CU that performs intra prediction can be mixed in one LCU.
  • constrained_intra_pred_flag 1 (that is, a mode in which pixels reconstructed by inter prediction are not used in intra prediction), there is a high possibility that many neighboring pixels cannot be referred to in intra prediction. As a result, the number of available prediction modes is greatly suppressed, and the coding efficiency may be reduced.
  • FIG. 18 illustrates an example of neighboring neighboring pixels necessary for intra prediction of this CU and the state of inter prediction / intra prediction in the neighboring CU including the neighboring pixels.
  • A, C, D, G, H, L, and M are CUs that are inter predicted
  • B, E, F, J, K, and N are CUs that are intra predicted.
  • HEVC's Intra Angular Prediction aims to improve coding efficiency by setting the prediction direction of intra prediction to 33 directions and finer settings compared to conventional intra prediction in AVC, etc. This could lead to a significant drop.
  • P T Peripheral pixel area composed of inter prediction
  • P RA Pixel composed of intra prediction adjacent to the right or top of PT
  • P LD Pixel composed of intra prediction adjacent to the left or bottom of PT .
  • peripheral pixels composed of inter prediction pixels are changed from pixels composed of intra predictions as in the following Expression (69). Calculate and perform intra prediction with all surrounding pixels available.
  • a pixel composed of intra prediction pixels is used as a peripheral pixel composed of inter prediction pixels as in the following Expression (70). And intra prediction is performed with all surrounding pixels available.
  • P (24, -1) to P (31, -1) are replaced with values calculated as shown in the following formula (72) to make them available.
  • the pixel value used for calculating the replacement value is only two pixels at the maximum, the calculation result is easily influenced by the pixel value. Therefore, the value to be replaced may be significantly different from the value before replacement.
  • the intra prediction for a region to be processed later it is used as a pixel value of surrounding pixels.
  • this constrained_intra_pred_flag is included in the sequence parameter set and the picture parameter set, and transmitted to the decoding side as a bit stream.
  • FIG. 19 is a block diagram illustrating a main configuration example of the intra prediction unit 113 in FIG. 1.
  • the intra prediction unit 113 includes a neighboring pixel buffer 131, a candidate predicted image generation unit 132, a cost function value calculation unit 133, a prediction mode determination unit 134, a PU size determination unit 135, and an encoding use.
  • a predicted image generation unit 136 is included.
  • the intra prediction unit 113 further includes a control unit 141 and a predicted image generation unit 142 for the periphery.
  • the peripheral pixel buffer 131 stores a pixel value used as a peripheral pixel of a region to be processed.
  • the peripheral pixel buffer 131 stores the pixel value (reconstructed pixel) of the reconstructed image supplied from the calculation unit 110.
  • the peripheral pixel buffer 131 stores a pixel value (predicted pixel value) of a predicted image generated by the predicted image generation unit 142 for peripheral.
  • These pixel values are the pixel values of the region to be processed at the time when the peripheral pixel buffer 131 stores the pixel values.
  • the peripheral pixel buffer 131 uses the stored pixel value as the pixel value of the peripheral pixel (peripheral pixel value) in the intra prediction for another region processed later in time than the region, and the candidate predicted image generation unit 132, the encoded prediction image generation unit 136 and the peripheral prediction image generation unit 142. That is, the peripheral pixel buffer 131 provides a peripheral pixel value in intra prediction of the processing target area.
  • the peripheral pixel buffer 131 stores the pixel values of the pixels at the left end and the lower end of the region A when the region A is a processing target.
  • the peripheral pixel buffer 131 stores the reconstructed pixels supplied from the calculation unit 110.
  • the peripheral pixel buffer 131 includes the peripheral prediction image generation unit 142 that performs intra prediction. The predicted pixel value generated by using is stored.
  • the peripheral pixel buffer 131 includes the pixel P [-1, -1] to the pixel P [31, -1] and the pixel P [ -1, -1] to some or all of the pixels P [-1,31] are supplied to the candidate prediction image generation unit 132, the encoding prediction image generation unit 136, and the peripheral prediction image generation unit 142.
  • the candidate predicted image generation unit 132 acquires the peripheral pixel value from the peripheral pixel buffer 131, performs intra prediction in all modes for the region to be processed (CU) using the peripheral pixel value, and predicts the image in each mode. Is generated. That is, the candidate predicted image generation unit 132 generates predicted images in all prediction modes (prediction directions) for each of all PU sizes, and generates predicted image candidates (candidate predicted images). The candidate predicted image generation unit 132 supplies the pixel value (predicted image pixel value) of the predicted image to the cost function value calculation unit 133.
  • the cost function value calculation unit 133 acquires the predicted image pixel value from the candidate predicted image generation unit 132 and acquires the input image pixel value from the screen rearrangement buffer 102.
  • the cost function value calculation unit 133 generates a difference image between the input image and the prediction image for all modes (all prediction sizes (prediction directions) for all PU sizes) from these pixel values, and the difference image The cost function value of is calculated.
  • the cost function value calculation unit 133 supplies the calculated cost function values of all modes to the prediction mode determination unit 134.
  • the prediction mode determination unit 134 determines an optimal prediction mode (prediction direction) for each PU size based on the cost function value acquired from the cost function value calculation unit 133. For example, the prediction mode determination unit 134 selects, for each PU size, the smallest value among the cost function value group acquired from the cost function value calculation unit 133, and the prediction mode (prediction direction) corresponding to the cost function value. Are determined to be the optimum prediction mode (optimum mode) for the PU size. The prediction mode determination unit 134 supplies the cost function value of the optimum mode (optimum prediction direction) of each PU size determined as described above to the PU size determination unit 135.
  • the PU size determination unit 135 acquires the cost function value of the optimal mode for each PU size from the prediction mode determination unit 134, and determines the optimal PU size (optimum PU size) using those cost function values. Based on the determination result, the PU size determination unit 135 supplies information indicating the optimal mode of the PU size determined as the optimal PU size (optimum PU size prediction mode) to the prediction image generation unit 136 for encoding.
  • the encoding prediction image generation unit 136 acquires the peripheral pixel value corresponding to the PU size from the peripheral pixel buffer 131.
  • the prediction image generation unit for encoding 136 uses the peripheral pixel values to perform prediction for encoding in the PU size and prediction mode (prediction direction) indicated by the optimal PU size prediction mode acquired from the PU size determination unit 135. Generate an image.
  • the encoded predicted image generation unit 136 supplies the generated pixel value of the predicted image for encoding (predicted image pixel value) to the predicted image selection unit 115. As described above, when intra prediction is selected by the prediction image selection unit 115, the prediction image is supplied to the calculation unit 103, and a difference from the input image is calculated, and the difference image is encoded.
  • the encoding prediction image generation unit 136 is a lossless encoding unit for intra prediction information including information (the PU size prediction mode) indicating the prediction mode (prediction direction) of the PU size that is the optimal PU size prediction mode. 106. This intra prediction information (the PU size prediction mode) is added to a predetermined position of the bit stream and transmitted to the decoding side.
  • the encoded prediction image generation unit 136 operates according to the control of the control unit 141.
  • the control unit 141 acquires, from the predicted image selection unit 115, prediction selection information indicating whether intra prediction has been selected or inter prediction has been selected. Based on the information and the value of constrained_intra_pred_flag, the control unit 141 controls the operations of the prediction image generation unit 136 and the prediction image generation unit 142 for the periphery.
  • the control unit 141 instructs the encoding prediction image generation unit 136 to output intra prediction information (the PU size prediction mode).
  • intra prediction information the PU size prediction mode
  • a prediction information output instruction is supplied.
  • the encoded prediction image generation unit 136 outputs intra prediction information including the PU size prediction mode to the lossless encoding unit 106 according to the output instruction, and adds the intra prediction information to the bitstream.
  • the control unit 141 prevents the encoded predicted image generation unit 136 and the peripheral predicted image generation unit 142 from operating. To control.
  • the control unit 141 is information on the inter prediction mode adopted as the optimum mode from the motion prediction / compensation unit 114. Get some inter prediction information. Based on the information, the control unit 141 determines a PU size and a prediction mode (prediction direction) of intra prediction for generating a predicted image for obtaining peripheral pixels, and uses information indicating them as a predicted image generation unit for peripheral 142.
  • the peripheral predicted image generation unit 142 acquires the peripheral pixel value corresponding to the PU size and the prediction mode (prediction direction) notified from the control unit 141 from the peripheral pixel buffer 131.
  • the predicted image generation unit 142 for peripheral uses the peripheral pixel value to perform intra prediction with the PU size and the prediction mode (prediction direction) notified from the control unit 141, and generates a predicted image.
  • the predicted image generation unit 142 for surroundings supplies the pixel value (predicted pixel value) of the generated predicted image to the peripheral pixel buffer 131 and holds it.
  • the intra prediction unit 113 can replace the neighboring pixel values in the inter prediction area, which cannot be used when the value of constrained_intra_pred_flag is 1, with the pixel values of intra prediction. That is, even if the value of constrained_intra_pred_flag is 1, the intra prediction unit 113 can use peripheral pixel values in the inter prediction region. Therefore, the intra prediction unit 113 can suppress a reduction in the number of available intra prediction modes, and can improve encoding efficiency.
  • the intra prediction unit 113 can predict the peripheral pixel values in the inter prediction region with high accuracy by intra prediction. That is, the intra prediction unit 113 can replace pixels in the inter prediction area that cannot be used with more accurate pixels. Thereby, the intra estimation part 113 can further increase the intra prediction mode which can be utilized, and can improve encoding efficiency.
  • FIG. 20 is a block diagram illustrating a main configuration example of the control unit 141 of FIG. As illustrated in FIG. 20, the control unit 141 includes a prediction method determination unit 151, an intra prediction information output instruction unit 152, a motion prediction information acquisition unit 153, a prediction mode determination unit 154, and a surrounding prediction image generation instruction unit 155. Have.
  • the prediction method determination unit 151 acquires prediction selection information from the prediction image selection unit 115, and determines the employed prediction method (inter prediction or intra prediction) based on the information.
  • the prediction method determination unit 151 also determines the value of constrained_intra_pred_flag.
  • the prediction method determination unit 151 supplies the determination result to the intra prediction information output instruction unit 152 regardless of the value of constrained_intra_pred_flag.
  • intra prediction information (such as the PU size prediction mode) is generated by the encoded prediction image generation unit 136, supplied to the lossless encoding unit 106, and added to the bitstream.
  • the peripheral pixel buffer 131 stores a reconstructed pixel value (a reconstructed image of a predicted image generated by inter prediction) supplied from the calculation unit 110.
  • the prediction method determination unit 151 supplies the determination result to the motion prediction information acquisition unit 153.
  • the predicted image used as the peripheral pixel value is generated by the intra prediction by the peripheral predicted image generation unit 142 and stored in the peripheral pixel buffer 131.
  • the intra prediction information output instruction unit 152 When the intra prediction information output instruction unit 152 is notified by the prediction method determination unit 151 that intra prediction has been selected by the prediction image selection unit 115, the intra prediction information output instruction unit 152 outputs the intra prediction information including the PU size prediction mode. An instruction to output the intra prediction information to be instructed is generated and supplied to the encoding predicted image generation unit 136. Upon receiving this intra prediction information output instruction, the encoding prediction image generation unit 136 generates intra prediction information including the PU size prediction mode for the prediction image supplied to the prediction image selection unit 115, and performs lossless encoding thereof. Is supplied to the unit 106 and added to the bit stream.
  • the motion prediction information acquisition unit 153 supplies the acquired inter prediction information to the prediction mode determination unit 154.
  • the prediction mode determination unit 154 acquires inter prediction information from the motion prediction information acquisition unit 153, and based on the inter prediction information, generates a prediction image for obtaining neighboring pixels and a PU size and a prediction mode for intra prediction. (Predicted direction) is determined.
  • the PU size is basically set to be the same as the PU size for inter prediction.
  • the prediction mode (prediction direction) can be determined by an arbitrary method.
  • the prediction mode determination unit 154 may always set the prediction mode (prediction direction) of intra prediction to the average value (DC) prediction regardless of the inter prediction mode.
  • the prediction mode determination unit 154 may set the prediction mode (prediction direction) for intra prediction to the prediction mode (prediction direction) for intra prediction performed immediately before.
  • the prediction mode (prediction direction) of the intra prediction performed immediately before cannot be reused in the area due to the availability status of surrounding pixels.
  • the prediction mode (prediction direction) is limited at the slice edge or the screen edge, which was not present in the previous intra prediction.
  • the prediction mode determination unit 154 may set the prediction mode (prediction direction) of intra prediction to average value (DC) prediction.
  • DC average value
  • the prediction mode determination unit 154 may calculate a prediction mode (prediction direction) of intra prediction using an inter prediction motion vector.
  • the prediction mode determination unit 154 may calculate the inner product of the motion vector unit vector and the prediction mode (prediction direction) unit vector, and may adopt the prediction mode (prediction direction) that maximizes the value. .
  • the prediction mode determination unit 154 first, the unit vector e v using the motion vector v of the inter prediction block is calculated by the following equation (73).
  • the prediction mode determination unit 154 calculates a unit vector e ai as shown in the following formula (74), with a vector in the prediction direction of intra prediction other than average value (DC) prediction and plane prediction as a i. To do.
  • the prediction mode determining unit 154 calculates the inner product P ai of the unit vector e v and the unit vector e ai (formula (75)).
  • the prediction mode determination unit 154 predicts the prediction mode (prediction direction) corresponding to the vector a i having the maximum value of the inner product P ai from among the available prediction modes (prediction directions).
  • the mode (predicted direction) is determined.
  • the prediction mode determination unit 154 sets the prediction mode (prediction direction) of intra prediction to average value (DC) prediction. You may make it do.
  • the prediction mode determination unit 154 calculates the inner product P ai as shown in the equation (75) for all prediction modes (prediction directions), and determines the prediction mode (prediction direction) in which the inner product P ai is maximum. You may make it do. Then, the prediction mode determination unit 154 determines whether or not the prediction mode (prediction direction) can be used depending on the availability of neighboring pixels in the vicinity, and the prediction mode (prediction direction) is not usable. In this case, the prediction mode (prediction direction) of intra prediction may be set to average value (DC) prediction.
  • DC average value
  • the prediction mode determination unit 154 sets the prediction mode (prediction direction) of the prediction intra prediction to a region adjacent to the left or top of the processing target region or a region located at the top left of the processing target region.
  • the prediction mode (prediction direction) of the region encoded by intra prediction may be the same.
  • CU # n when CU # n is a region to be processed, a region adjacent to the left or top of this region or a region intra-predicted among regions located at the top left is , Regions B, J, and K.
  • the prediction mode determination unit 154 selects a prediction mode (prediction direction) that can be used in intra prediction of CU # n from among the prediction modes (prediction direction) of these regions, and the prediction mode (prediction direction) of intra prediction of CU # n. ).
  • the prediction mode determination unit 154 uses the average value (DC) prediction as the prediction mode (prediction direction) of the intra prediction of CU # n. Is adopted.
  • the prediction mode determination unit 154 selects one of them by a predetermined method.
  • the prediction mode determination unit 154 preferentially selects the prediction mode of the region located at the top among the intra predicted regions adjacent to the left of the processing target region (CU # n). May be. Further, for example, the prediction mode determination unit 154 preferentially selects the prediction mode of the leftmost region from the intra-predicted regions adjacent to the processing target region (CU # n). You may do it.
  • the prediction mode determination unit 154 may select and determine from some modes instead of all prediction modes in determining the prediction mode (prediction direction) of prediction intra prediction. Also good.
  • the prediction mode determination unit 154 determines the prediction mode (prediction direction) of the prediction intra prediction by the above-described various methods, but does not select all prediction modes as candidates, but some predetermined predictions. Only the mode may be a candidate. For example, only vertical direction prediction (Intra_Vertical), horizontal direction prediction (Intra_Horizontal), and average value (DC) prediction may be used as candidates. In this case, the prediction mode determination unit 154 selects any one of the methods in the same manner as any of the various methods described above.
  • the processing amount for determining the prediction mode (prediction direction) can be reduced.
  • the prediction mode determination unit 154 supplies the determined intra prediction PU size and prediction mode (prediction direction) to the peripheral prediction image generation instruction unit 155.
  • the peripheral prediction image generation instruction unit 155 generates a prediction image generation instruction for peripherals instructing to generate a prediction image for obtaining peripheral pixels by using the PU size and prediction mode (prediction direction) specified by the prediction mode determination unit 154. ) And the peripheral predicted image generation unit 142.
  • the peripheral prediction image generation unit 142 that has received this peripheral prediction image generation instruction performs intra prediction according to the designated PU size and prediction mode (prediction direction), and generates a prediction image.
  • the pixel group at the left end and the pixel group at the lower end of the predicted image are stored in the peripheral pixel buffer 131 as peripheral pixel values. That is, the pixel values of the inter-predicted area are replaced with the pixel values of the intra-predicted predicted image.
  • the control unit 141 controls each unit based on the selection result of the predicted image selection unit 115 and the value of constrained_intra_pred_flag.
  • the intra prediction unit 113 can replace the peripheral pixel values in the inter prediction region that cannot be used when the value of constrained_intra_pred_flag is 1 with the pixel values of intra prediction. That is, the intra prediction unit 113 can suppress a reduction in the number of available intra prediction modes, and can improve encoding efficiency.
  • step S101 the A / D converter 101 performs A / D conversion on the input image.
  • step S102 the screen rearrangement buffer 102 stores the A / D converted image, and rearranges the picture from the display order to the encoding order.
  • step S103 the intra prediction unit 113, the motion prediction / compensation unit 114, and the predicted image selection unit 115 perform a prediction process to generate a predicted image.
  • step S104 the calculation unit 103 calculates a difference between the image rearranged by the process of step S102 and the predicted image generated by the process of step S103 (generates a difference image).
  • the generated difference image has a reduced data amount compared to the original image. Therefore, the data amount can be compressed as compared with the case where the image is encoded as it is.
  • step S105 the orthogonal transform unit 104 orthogonally transforms the difference image generated by the process in step S104. Specifically, orthogonal transformation such as discrete cosine transformation and Karhunen-Loeve transformation is performed, and orthogonal transformation coefficients are output.
  • step S106 the quantization unit 105 quantizes the orthogonal transform coefficient obtained by the process in step S105.
  • step S106 The difference image quantized by the processing in step S106 is locally decoded as follows. That is, in step S107, the inverse quantization unit 108 inversely quantizes the quantized orthogonal transform coefficient (also referred to as a quantization coefficient) generated by the process in step S106 with characteristics corresponding to the characteristics of the quantization unit 105. To do. In step S ⁇ b> 108, the inverse orthogonal transform unit 109 performs inverse orthogonal transform on the orthogonal transform coefficient obtained by the process of step S ⁇ b> 107 with characteristics corresponding to the characteristics of the orthogonal transform unit 104. Thereby, a reconstructed image is obtained.
  • the quantized orthogonal transform coefficient also referred to as a quantization coefficient
  • step S109 the calculation unit 110 adds the predicted image generated in step S103 to the reconstructed image generated in step S108, and decodes the locally decoded image (corresponding to the input to the calculation unit 103). Image).
  • step S111 the loop filter 411 appropriately performs loop filter processing including deblocking filter processing and adaptive loop filter processing on the reconstructed image obtained by the processing in step S109 to generate a decoded image.
  • step S112 the frame memory 112 stores the decoded image generated by the process in step S111.
  • step S113 the lossless encoding unit 106 encodes the orthogonal transform coefficient quantized by the process in step S106. That is, lossless encoding such as variable length encoding or arithmetic encoding is performed on the difference image. Note that the lossless encoding unit 106 encodes information about prediction, information about quantization, and the like, and adds the information to the bitstream.
  • step S114 the accumulation buffer 107 accumulates the bit stream obtained by the process in step S113.
  • the encoded data stored in the storage buffer 107 is appropriately read and transmitted to the decoding side via a transmission path or a recording medium.
  • step S115 the rate control unit 116 causes the quantization unit 105 to prevent overflow or underflow from occurring based on the code amount (generated code amount) of the encoded data accumulated in the accumulation buffer 107 by the process of step S114. Controls the rate of quantization operation.
  • step S115 When the process of step S115 is finished, the encoding process is finished.
  • step S131 the intra prediction unit 113 performs an intra prediction process to generate a predicted image.
  • step S132 the motion prediction / compensation unit 114 performs an inter prediction process to generate a predicted image.
  • step S133 the predicted image selection unit 115 selects one of the predicted image generated in step S131 and the predicted image generated in step S132.
  • step S134 the intra prediction unit 113 determines whether or not inter prediction (predicted image) is selected in step S133. If it is determined that inter prediction is selected, the motion prediction / compensation unit 114 generates inter prediction information that is information related to inter prediction, and outputs the inter prediction information to the lossless encoding unit 106 in step S135.
  • step S135 the motion prediction / compensation unit 114 advances the process to step S136. If it is determined in step S134 that intra prediction has been selected, the intra prediction unit 113 advances the process to step S136.
  • step S136 the intra prediction unit 113 performs an intra prediction related process such as generating a predicted image for obtaining neighboring pixels.
  • step S136 the intra prediction unit 113 ends the prediction process and returns the process to FIG.
  • the candidate prediction image generation unit 132 of the intra prediction unit 113 uses all the prediction modes (prediction directions) of all the PU sizes using the peripheral pixels stored in the peripheral pixel buffer 131. A candidate prediction image for is generated.
  • step S152 the cost function value calculation unit 133 calculates cost function values related to all candidate prediction modes for all PU sizes using the input pixel values.
  • step S153 the prediction mode determination unit 134 selects an optimal prediction mode (prediction direction) for each PU size based on the cost function value calculated in step S152.
  • step S154 the PU size determination unit 135 selects an optimal PU size based on the cost function value calculated in step S152.
  • step S155 the encoded predicted image generation unit 136 performs intra prediction with the optimal PU size and prediction mode (prediction direction) selected in steps S153 and S154, and generates a predicted image.
  • step S156 the encoded predicted image generation unit 136 outputs the predicted image generated in step S155 to the predicted image selection unit 115.
  • the prediction image generation unit for encoding 136 ends the intra prediction process and returns the process to FIG.
  • step S171 the prediction method determination unit 151 of the control unit 141 determines whether or not inter prediction is selected in step S133 of FIG. 22 based on the prediction selection information. When it determines with inter prediction having been selected, the prediction method determination part 151 advances a process to step S172.
  • step S172 the prediction method determination unit 151 determines whether the value of constrained_intra_pred_flag is 1. When it determines with the value of constrained_intra_pred_flag being 1, the prediction method determination part 151 advances a process to step S173.
  • step S173 the motion prediction information acquisition unit 153 acquires, from the motion prediction / compensation unit 114, inter prediction information related to the predicted image of the inter prediction selected in step S133 of FIG.
  • step S174 the prediction mode determination unit 154 determines the PU size of intra prediction for obtaining neighboring pixels based on the PU size of inter prediction included in the inter prediction information acquired in step S173.
  • step S175 the prediction mode determination unit 154 determines an intra prediction prediction mode for obtaining neighboring pixels based on the inter prediction prediction mode included in the inter prediction information acquired in step S173.
  • step S176 the prediction image generation instruction unit 155 for surroundings instructs to perform intra prediction for obtaining surrounding pixels with the PU size determined in step S174 and the prediction mode determined in step S175. Do.
  • the peripheral predicted image generation unit 142 performs intra prediction according to the instruction, and generates a predicted image.
  • the peripheral pixel buffer 131 stores prediction pixels that can be used as peripheral pixels included in the prediction image generated in step S176. That is, in this case, the neighboring pixel buffer 131 stores the intra-predicted prediction pixel as the neighboring pixel even for the inter-predicted region. In this case, the peripheral pixel buffer 131 may replace the reconstructed pixel stored in step S110 of FIG. 21 with the predicted pixel, or may omit the process of step S110 of FIG. . When the processes of Steps S and 177 are completed, the neighboring pixel buffer 131 ends the intra prediction related process and returns the process to FIG.
  • step S172 If it is determined in step S172 that the value of constrained_intra_pred_flag is 0, the prediction method determination unit 151 ends the intra prediction related processing, and returns the processing to FIG.
  • step S171 when it is determined in step S171 that intra prediction has been selected, the prediction method determination unit 151 advances the processing to step S178.
  • step S178 the intra prediction information output instruction unit 152 instructs the encoding prediction image generation unit 136 to output the intra prediction information regarding the prediction image of the intra prediction selected in step S133 of FIG.
  • the encoded prediction image generation unit 136 supplies the intra prediction information to the lossless encoding unit 106 according to the instruction, and adds the intra prediction information to the bitstream.
  • step S178 the encoded prediction image generation unit 136 ends the intra prediction related process, and returns the process to FIG.
  • the determination of the prediction mode (prediction direction) in step S175 of FIG. 24 may be performed by an arbitrary method.
  • the prediction mode determination unit 154 may always set the prediction mode (prediction direction) of intra prediction to the average value (DC) prediction regardless of the inter prediction mode.
  • the prediction mode determination unit 154 determines the prediction mode of intra prediction to be average value (DC) prediction in step S201.
  • DC average value
  • the prediction mode determination unit 154 sets the prediction mode (prediction direction) of intra prediction to the prediction mode (prediction direction) of intra prediction performed immediately before, and the prediction mode (prediction of intra prediction performed immediately before).
  • the prediction mode (prediction direction) of intra prediction may be set to average value (DC) prediction.
  • the prediction mode determination unit 154 determines whether or not the prediction mode (prediction direction) of the intra prediction performed immediately before can be used in step S211. When it determines with it being usable, the prediction mode determination part 154 advances a process to step S212. *
  • step S212 the prediction mode determination unit 154 determines the prediction mode (prediction direction) for intra prediction as the prediction mode (prediction direction) for intra prediction performed immediately before, ends the prediction mode determination process, and performs the process.
  • Step S211 when it is determined that the prediction mode (prediction direction) of the intra prediction performed immediately before cannot be used, the prediction mode determination unit 154 advances the processing to Step S213.
  • step S213 the prediction mode determination unit 154 determines the prediction mode of intra prediction as average value (DC) prediction, ends the prediction mode determination process, and returns the process to FIG.
  • DC average value
  • the prediction mode determination unit 154 calculates the inner product of the unit vector of the motion vector of inter prediction and the unit vector of the prediction mode (prediction direction) of intra prediction, and the prediction mode (prediction) in which the inner product is maximized. Direction).
  • the prediction mode determination unit 154 determines whether there is a prediction mode that can be used in the region to be processed in step S221. When it determines with existing, the prediction mode determination part 154 advances a process to step S222.
  • step S222 the prediction mode determination unit 154 obtains an inner product of the unit vector of the motion vector of the inter prediction and the unit vector of the usable prediction mode (prediction direction) of the intra prediction.
  • step S223 the prediction mode determination unit 154 determines the prediction mode (prediction direction) for intra prediction to be the prediction mode in which the inner product calculated in step S222 is the maximum, ends the prediction mode determination process, and the process is as shown in FIG. Return to.
  • step S221 If it is determined in step S221 that there is no usable prediction mode (prediction direction), the prediction mode determination unit 154 advances the processing to step S224.
  • step S224 the prediction mode determination unit 154 determines the prediction mode of intra prediction as average value (DC) prediction, ends the prediction mode determination process, and returns the process to FIG.
  • DC average value
  • the prediction mode determination unit 154 calculates inner products for all prediction modes (prediction directions), selects a prediction mode (prediction direction) that maximizes the inner product, and uses the prediction mode (prediction direction). If it is possible, the prediction mode (prediction direction) is determined as the prediction mode (prediction direction) for intra prediction. If the prediction mode (prediction direction) is not available, the prediction mode (prediction for intra prediction) is determined. (Direction) may be average (DC) prediction.
  • the prediction mode determination unit 154 for all prediction modes (prediction directions) of intra prediction, in step S231, unit vectors of motion vectors for inter prediction and each prediction mode for intra prediction. The inner product of the (predicted direction) unit vector is obtained.
  • step S232 the prediction mode determination unit 154 selects a prediction mode that maximizes the inner product calculated in step S231.
  • step S233 the prediction mode determination unit 154 determines whether or not the selected prediction mode is available in the area. When it determines with it being usable, the prediction mode determination part 154 determines the prediction mode of intra prediction in the selected prediction mode in step S234, complete
  • step S233 If it is determined in step S233 that it cannot be used, the prediction mode determination unit 154 determines the prediction mode of intra prediction to be an average value (DC) prediction in step S235, and ends the prediction mode determination process. The processing returns to FIG.
  • DC average value
  • the prediction mode determination unit 154 sets the prediction mode (prediction direction) of the prediction intra prediction to a region adjacent to the left or top of the processing target region or a region located at the top left of the processing target region.
  • the prediction mode (prediction direction) of the region encoded by intra prediction may be the same.
  • step S241 the prediction mode determination unit 154 has an intra prediction area adjacent to the area above or to the left, or an intra prediction area located at the upper left of the area. It is determined whether or not to do. When it determines with existing, the prediction mode determination part 154 advances a process to step S242.
  • step S242 the prediction mode determination unit 154 determines whether or not there are a plurality of areas corresponding to the condition in step S241. If it is determined that there are a plurality, the prediction mode determination unit 154 proceeds with the process to step S243.
  • step S243 the prediction mode determination unit 154 determines whether or not the region corresponding to the condition in step S241 exists on the left or upper left of the region. When it determines with existing, the prediction mode determination part 154 advances a process to step S244.
  • step S244 the prediction mode determination unit 154 determines the prediction mode (prediction direction) for intra prediction as the prediction mode for the intra prediction region that is located on the left or upper left of the region and that is positioned at the top. Then, the prediction mode determination process ends, and the process returns to FIG.
  • Step S243 when it is determined that the area corresponding to the condition of Step S241 does not exist on the left or upper left of the area, the prediction mode determination unit 154 advances the processing to Step S245.
  • step S245 the prediction mode determination unit 154 determines the prediction mode (prediction direction) for intra prediction as the prediction mode for the intra prediction region located on the upper left or the upper left of the region and the leftmost. Then, the prediction mode determination process ends, and the process returns to FIG.
  • Step S242 when it is determined that there are not a plurality of regions corresponding to the condition in Step S241, the prediction mode determination unit 154 advances the processing to Step S246.
  • step S246 the prediction mode determination unit 154 determines the prediction mode (prediction direction) for intra prediction as the prediction mode for the only region that satisfies the condition in step S241, ends the prediction mode determination process, and performs the process. Return to 24.
  • step S241 If it is determined in step S241 that the region corresponding to the condition does not exist, the prediction mode determination unit 154 advances the process to step S247, determines the prediction mode of prediction to be an average value (DC) prediction, and performs prediction. The mode determination process is terminated, and the process returns to FIG.
  • DC average value
  • the flowchart of FIG. 29 illustrates an example in which the prediction mode of the region located at the top is preferentially selected from the intra-predicted regions located at the left or upper left of the processing target region. Is.
  • the priority order of the regions for selecting the prediction mode when there are a plurality of regions that meet the condition of step S241 is not limited to this example.
  • the prediction mode of the leftmost region may be preferentially selected from the intra-predicted regions located on the processing target region or on the upper left.
  • step S243 it is determined whether or not the area corresponding to the condition in step S241 exists above or in the upper left of the processing target area. If it exists, the process of step S245 is performed. What is necessary is just to make it process step S244.
  • the procedure is basically the same as these procedures, and the prediction mode determination unit 154 searches for a region having a higher priority, and sets the prediction mode of the region to prediction of intra prediction.
  • the mode may be selected.
  • the prediction mode determination unit 154 may select and determine from some modes instead of all prediction modes in determining the prediction mode (prediction direction) of prediction intra prediction. Also good. In that case, in any prediction mode determination method (for example, the various methods described above), the prediction modes to be candidates may be limited in advance (the number of candidates may be reduced).
  • step S251 the prediction mode determination unit 154 restricts the types of prediction modes that are candidates for intra prediction according to a predetermined setting.
  • step S252 the prediction mode determination unit 154 determines an intra prediction prediction mode from the limited candidates by an arbitrary prediction mode determination method (for example, the various methods described above), and performs a prediction mode determination process. The process ends, and the process returns to FIG.
  • the image encoding apparatus 100 can suppress a reduction in the number of available intra prediction modes even if the value of constrained_intra_pred_flag is 1, and improve encoding efficiency. Can be made.
  • the intra prediction unit 113 may perform intra prediction on the inter-predicted area as described above.
  • the processing amount of the encoding process may increase (the processing complexity increases).
  • the prediction pixel value in intra prediction used instead of inter prediction may deviate from the pixel value in actual inter prediction. Becomes higher.
  • an upper limit may be set for the PU size of the area.
  • the processing complexity increases, but the coding efficiency is improved because more regions are not restricted by intra prediction.
  • the intra prediction unit 113 may be able to intra-predict an inter-predicted area only when the PU size in the area is equal to or larger than a predetermined size.
  • the PU size When the PU size is small, there is a high possibility that there are few errors even if the surrounding pixels are replaced by the method described in Non-Patent Document 2. Therefore, when the PU size is smaller than the predetermined size, the neighboring pixels are replaced by the method described in Non-Patent Document 2, and when the PU size is equal to or larger than the predetermined size, intra prediction is performed as described above. The surrounding pixels in the area that is inter-predicted by the predicted pixel value may be replaced.
  • Angular Prediction intra prediction method and the Arbitrary Directional Intra (ADI) intra prediction method are applied as the intra prediction methods for obtaining neighboring pixels performed on the inter-predicted region described above. It may be.
  • FIG. 31 is a block diagram illustrating a main configuration example of an image decoding apparatus corresponding to the image encoding apparatus 100 of FIG.
  • the image decoding apparatus 300 shown in FIG. 31 decodes the encoded data generated by the image encoding apparatus 100 using a decoding method corresponding to the encoding method.
  • the image decoding apparatus 300 includes a storage buffer 301, a lossless decoding unit 302, an inverse quantization unit 303, an inverse orthogonal transform unit 304, a calculation unit 305, a loop filter 306, a screen rearrangement buffer 307, and a D A / A converter 308 is included. Further, the image decoding device 300 includes a frame memory 309, an intra prediction unit 310, a motion prediction / compensation unit 311, and a selection unit 312.
  • the accumulation buffer 301 accumulates the transmitted encoded data and supplies the encoded data to the lossless decoding unit 302 at a predetermined timing.
  • the lossless decoding unit 302 decodes the information supplied from the accumulation buffer 301 and encoded by the lossless encoding unit 106 in FIG. 1 using a method corresponding to the encoding method of the lossless encoding unit 106.
  • the lossless decoding unit 302 supplies the quantized coefficient data of the difference image obtained by decoding to the inverse quantization unit 303.
  • the lossless decoding unit 302 determines whether the intra prediction mode is selected as the optimal prediction mode or the inter prediction mode, and uses the intra prediction unit 310 and the motion prediction / compensation unit to obtain information regarding the optimal prediction mode. 311 is supplied to the mode determined to be selected. That is, for example, when the intra prediction mode is selected as the optimal prediction mode in the image encoding device 100, intra prediction information that is information regarding the optimal prediction mode is supplied to the intra prediction unit 310. For example, when the inter prediction mode is selected as the optimal prediction mode in the image encoding device 100, inter prediction information that is information regarding the optimal prediction mode is supplied to the motion prediction / compensation unit 311. Note that the lossless decoding unit 302 also supplies inter prediction information to the intra prediction unit 310 when the value of constrained_intra_pred_flag described in a sequence parameter set, a picture parameter set, or the like is 1.
  • the inverse quantization unit 303 inversely quantizes the quantized coefficient data obtained by decoding by the lossless decoding unit 302 using a method corresponding to the quantization method of the quantization unit 105 in FIG. Data is supplied to the inverse orthogonal transform unit 304.
  • the inverse orthogonal transform unit 304 performs inverse orthogonal transform on the coefficient data supplied from the inverse quantization unit 303 in a method corresponding to the orthogonal transform method of the orthogonal transform unit 104 in FIG.
  • the inverse orthogonal transform unit 304 obtains a difference image corresponding to the difference image before being orthogonally transformed in the image encoding device 100 by the inverse orthogonal transform process.
  • the difference image obtained by the inverse orthogonal transform is supplied to the calculation unit 305. Further, a prediction image is supplied to the calculation unit 305 from the intra prediction unit 310 or the motion prediction / compensation unit 311 via the selection unit 312.
  • the calculation unit 305 adds the difference image and the prediction image, and obtains a reconstructed image corresponding to the image before the prediction image is subtracted by the calculation unit 103 of the image encoding device 100.
  • the calculation unit 305 supplies the reconstructed image to the intra prediction unit 310 and the loop filter 306.
  • the loop filter 306 appropriately performs loop filter processing including deblock filter processing and adaptive loop filter processing on the supplied reconstructed image to generate a decoded image. For example, the loop filter 306 removes block distortion by performing deblocking filter processing on the reconstructed image. Further, for example, the loop filter 306 improves the image quality by performing loop filter processing on the deblock filter processing result (reconstructed image from which block distortion has been removed) using a Wiener filter. I do.
  • the type of filter processing performed by the loop filter 306 is arbitrary, and filter processing other than that described above may be performed. Further, the loop filter 306 may perform filter processing using the filter coefficient supplied from the image encoding device 100 of FIG.
  • the loop filter 306 supplies the decoded image as the filter processing result to the screen rearrangement buffer 307 and the frame memory 309.
  • the screen rearrangement buffer 307 rearranges the supplied decoded images. That is, the order of frames rearranged for the encoding order by the screen rearrangement buffer 102 in FIG. 1 is rearranged in the original display order.
  • the D / A conversion unit 308 D / A converts the decoded image supplied from the screen rearrangement buffer 307, outputs it to a display (not shown), and displays it.
  • the frame memory 309 stores the supplied decoded image, and uses the stored decoded image as a reference image at a predetermined timing or based on an external request from the motion prediction / compensation unit 311 or the like. This is supplied to the compensation unit 311.
  • the intra prediction unit 310 performs basically the same processing as the intra prediction unit 113 in FIG. However, the intra prediction unit 310 performs intra prediction only on a region where a prediction image is generated by intra prediction at the time of encoding.
  • the intra prediction unit 310 Based on the intra prediction information supplied from the lossless decoding unit 302, the intra prediction unit 310 identifies that the processing target region is an intra predicted region, determines a PU size and a prediction mode, and performs intra prediction. .
  • the intra prediction unit 310 supplies the prediction image generated by the intra prediction to the selection unit 312. Moreover, the intra estimation part 310 memorize
  • the intra prediction unit 310 obtains peripheral pixels similar to the case of the intra prediction unit 113 for a region in which a prediction image is generated by inter prediction at the time of encoding. Make intra predictions for.
  • the intra prediction unit 310 refers to the value of constrained_intra_pred_flag described in, for example, a sequence parameter set or a picture parameter set. A predicted image generated by the intra prediction is stored as a peripheral pixel.
  • the intra prediction unit 310 can replace the neighboring pixel values in the inter prediction region that cannot be used when the value of constrained_intra_pred_flag is 1 with the pixel values of intra prediction. That is, the intra prediction unit 310 can perform the replacement of the surrounding pixel values in the same manner as the intra prediction unit 113 of the image encoding device 100. Therefore, the image decoding apparatus 300 can correctly decode the bitstream encoded by the image encoding apparatus 100, can suppress a reduction in the number of available intra prediction modes, and improve encoding efficiency. be able to.
  • the motion prediction / compensation unit 311 performs inter prediction in the same manner as the motion prediction / compensation unit 114. However, the motion prediction / compensation unit 311 performs inter prediction only on a region where inter prediction has been performed at the time of encoding, based on the inter prediction information supplied from the lossless decoding unit 302. The motion prediction / compensation unit 311 supplies the generated predicted image to the selection unit 312.
  • the selection unit 312 supplies the prediction image supplied from the intra prediction unit 310 or the prediction image supplied from the motion prediction / compensation unit 311 to the calculation unit 305.
  • FIG. 32 is a block diagram illustrating a main configuration example of the intra prediction unit 310 of FIG. As illustrated in FIG. 32, the intra prediction unit 310 includes a control unit 331, a peripheral pixel buffer 332, a decoded prediction image generation unit 333, and a peripheral prediction image generation unit 334.
  • the control unit 331 acquires the intra prediction information and the inter prediction information supplied from the lossless decoding unit 302, and controls the generation of a prediction image based on the information. For example, when intra prediction information is supplied, the control unit 331 instructs the decoding prediction image generation unit 333 to generate a prediction image. This predicted image is used by the calculation unit 305 to add to the difference image, that is, to generate a decoded image (reconstructed image). The control unit 331 specifies the PU size and the prediction mode (prediction direction) adopted at the time of encoding based on the intra prediction information, and supplies the information to the prediction image generation unit 333 for decoding.
  • the control unit 331 instructs the prediction image generation unit 334 for surroundings to generate a prediction image.
  • This predicted image is for obtaining peripheral pixels, and the leftmost pixel group and the lowermost pixel group are supplied to the peripheral pixel buffer 332 and stored. These pixels are used as peripheral pixels in intra prediction for other regions processed later in time than the region.
  • the control unit 331 Based on the inter prediction information, the control unit 331 identifies the PU size and prediction mode of inter prediction employed at the time of encoding, and based on the information, the PU size and prediction mode of intra prediction (prediction method) ) And the information is supplied to the predicted image generation unit 334 for the periphery.
  • the peripheral pixel buffer 332 stores peripheral pixels used in intra prediction.
  • the peripheral pixel buffer 332 acquires and stores the pixel values (reconstructed pixel values) of the reconstructed pixels supplied from the calculation unit 305.
  • the peripheral pixel buffer 332 acquires and stores pixel values (predicted pixel values) of pixels that can be used as peripheral pixels of the predicted image generated by the predicted image generation unit 334 for peripheral. More specifically, the peripheral pixel buffer 332 acquires and stores the leftmost pixel group and the lowermost pixel group of the predicted image as predicted pixel values.
  • the surrounding pixel buffer 332 supplies the stored pixel value as a surrounding pixel value to the decoding predicted image generation unit 333 and the surrounding predicted image generation unit 334.
  • the decoding prediction image generation unit 333 acquires the peripheral pixel value from the peripheral pixel buffer 332 according to the control of the control unit 331, and uses the peripheral pixel value with the PU size and prediction mode specified by the control unit 331. Intra prediction is performed on the processing target region to generate a predicted image.
  • the decoding prediction image generation unit 333 supplies the selection pixel 312 with a prediction pixel value that is a pixel value of each pixel of the prediction image.
  • the predicted image generation unit 334 for the periphery acquires the peripheral pixel value from the peripheral pixel buffer 332 according to the control of the control unit 331, and uses the peripheral pixel value with the PU size and the prediction mode specified by the control unit 331. Intra prediction is performed on the processing target region to generate a predicted image.
  • the peripheral predicted image generation unit 334 supplies the predicted pixel value, which is the pixel value of each pixel of the predicted image, to the peripheral pixel buffer 332 for storage.
  • FIG. 33 is a block diagram illustrating a main configuration example of the control unit 331 in FIG. 32.
  • the control unit 331 includes a prediction method determination unit 351, a decoded prediction image generation instruction unit 352, a prediction mode determination unit 353, and a surrounding prediction image generation instruction unit 354.
  • the prediction method determination unit 351 acquires intra prediction information and inter prediction information from the lossless decoding unit 302. When the intra prediction information is supplied, the prediction method determination unit 351 determines that intra prediction has been selected at the time of encoding the region, and the determination result together with the intra prediction information is used as a prediction image generation instruction unit for decoding. 352.
  • the prediction method determination unit 351 determines that inter prediction has been selected when the region is encoded.
  • the prediction method determination unit 351 performs encoding of the region so that intra prediction for obtaining neighboring pixels is performed.
  • the determination result that the inter prediction is selected is supplied to the prediction mode determination unit 353 together with the inter prediction information.
  • the prediction method determination unit 351 does not notify the decoding prediction image generation instruction unit 352 nor the prediction mode determination unit 353 so that only inter prediction is performed. .
  • the decoding prediction image generation instruction unit 352 extracts the PU size and prediction mode (prediction direction) at the time of encoding the region from the supplied intra prediction information.
  • the decoding prediction image generation instruction unit 352 supplies the decoding prediction image generation unit 333 with the extracted information and the decoding prediction image generation instruction that is control information for instructing generation of the prediction image.
  • the prediction mode determination unit 353 based on the inter prediction PU size and the prediction mode included in the inter prediction information supplied from the prediction method determination unit 351, obtains the intra prediction PU size and the prediction mode (to obtain neighboring pixel values). Prediction direction) is determined by the same method as the prediction mode determination unit 154.
  • any method may be used.
  • the image encoding device 100 and the image decoding device 300 may supply a predetermined prediction mode determination method. Further, the determination method employed in the image encoding device 100 may be notified to the image decoding device 300.
  • the prediction mode determination unit 353 supplies the determined PU size and prediction mode (prediction direction) to the peripheral prediction image generation instruction unit 354.
  • the peripheral prediction image generation instruction unit 354 outputs a peripheral prediction image generation instruction, which is control information instructing to generate a prediction image, together with the PU size and prediction mode (prediction direction) supplied from the prediction mode determination unit 353. And supplied to the predicted image generation unit 334 for the periphery.
  • control unit 331 performs the control as described above based on the intra prediction information and the inter prediction information transmitted in the bitstream, so that the intra prediction unit 310 and the intra prediction unit 113 Similar intra prediction can be performed. Accordingly, the image decoding apparatus 300 can correctly decode the bitstream encoded by the image encoding apparatus 100, can suppress a reduction in the number of available intra prediction modes, and improve the encoding efficiency. Can be made.
  • step S301 the accumulation buffer 301 accumulates the transmitted bit stream.
  • step S302 the lossless decoding unit 302 decodes the bitstream (encoded difference image information) supplied from the accumulation buffer 301.
  • step S303 the inverse quantization unit 303 inversely quantizes the quantized orthogonal transform coefficient obtained by the process in step S302.
  • step S304 the inverse orthogonal transform unit 304 performs inverse orthogonal transform on the orthogonal transform coefficient inversely quantized in step S303.
  • step S305 the intra prediction unit 310 or the motion prediction / compensation unit 311 performs a prediction process using the supplied information.
  • the selection unit 312 selects the predicted image generated in step S305.
  • the calculation unit 305 adds the predicted image selected in step S306 to the difference image information obtained by the inverse orthogonal transform in step S304. Thereby, a reconstructed image is generated.
  • the peripheral pixel buffer 332 of the intra prediction unit 310 stores pixel values (reconstructed pixel values) of pixels that can be used as peripheral pixels of the reconstructed image generated in step S307.
  • stored in the surrounding pixel buffer 332 of the intra prediction part 310 is the prediction image produced
  • the pixel value (predicted pixel value) of a pixel that can be used as a peripheral pixel is replaced. Therefore, when the region is a region inter-predicted at the time of encoding, the process of step S308 may be omitted.
  • step S309 the loop filter 306 appropriately performs loop filter processing including deblock filter processing and adaptive loop filter processing on the reconstructed image obtained in step S307.
  • step S310 the screen rearrangement buffer 307 rearranges the decoded images generated by the filter processing in step S309. That is, the order of frames rearranged for encoding by the screen rearrangement buffer 102 of the image encoding device 100 is rearranged to the original display order.
  • step S311 the D / A conversion unit 308 D / A converts the decoded image in which the frame order is rearranged in step S310.
  • the decoded image is output and displayed on a display (not shown).
  • step S312 the frame memory 309 stores the decoded image obtained by the filtering process in step S309. This decoded image is used as a reference image in the inter prediction process.
  • step S312 ends, the decryption process ends.
  • the prediction method determination unit 351 of the control unit 331 of the intra prediction unit 310 determines the processing target based on the intra prediction information or the inter prediction information supplied from the lossless decoding unit 302 in step S331. It is determined whether intra prediction has been performed when the region is encoded. When it determines with intra prediction having been performed, the prediction method determination part 351 advances a process to step S332.
  • step S332 the decoded predicted image generation instruction unit 352 instructs the decoded predicted image generation unit 333 to generate a predicted image.
  • the decoding prediction image generation unit 333 performs intra prediction according to the instruction, and generates a prediction image (intra prediction image).
  • step S ⁇ b> 333 the decoded predicted image generation unit 333 outputs the generated predicted image to the selection unit 312.
  • the prediction image generation unit 333 for decoding ends the prediction process and returns the process to FIG.
  • Step S331 when it is determined that intra prediction is not performed, the prediction method determination unit 351 advances the processing to Step S334.
  • step S334 the motion prediction / compensation unit 311 performs inter prediction and generates a prediction image (inter prediction image).
  • the motion prediction / compensation unit 311 outputs the generated predicted image to the selection unit 312.
  • step S336 the prediction method determination unit 351 determines whether the value of constrained_intra_pred_flag described in the sequence parameter set, the picture parameter set, or the like is 1. When it determines with the value of constrained_intra_pred_flag being 1, the prediction method determination part 351 advances a process to step S337.
  • step S337 the prediction mode determination unit 353 determines the PU size of intra prediction to be performed in order to obtain neighboring pixels in the region inter-predicted at the time of encoding.
  • step S3308 the prediction mode determination unit 353 determines the prediction mode.
  • the prediction mode determination method may be any method as long as it is the same as in step S175 of FIG. For example, various methods described with reference to the flowcharts of FIGS. 25 to 30 may be used, or other methods may be used.
  • step S339 the surrounding prediction image generation instruction unit 354 instructs the surrounding prediction image generation unit 334 to generate a prediction image.
  • the predicted image generation unit 334 for surrounding performs intra prediction according to the instruction, and generates a predicted image (intra predicted image).
  • the peripheral pixel buffer 332 stores pixel values (predicted pixel values) of pixels that can be used as peripheral pixels in the generated predicted image.
  • the neighboring pixel buffer 332 ends the prediction process and returns the process to FIG.
  • step S336 If it is determined in step S336 that the value of constrained_intra_pred_flag is 0, the prediction method determination unit 351 ends the prediction process and returns the process to FIG.
  • the image decoding device 300 can correctly decode the bitstream encoded by the image encoding device 100 and suppress the reduction in the number of available intra prediction modes. Encoding efficiency can be improved.
  • the intra prediction unit 310 performs the inter prediction as described above only when the PU size in the region is equal to or smaller than a predetermined size.
  • the region may be intra-predictable.
  • a lower limit of the PU size in the area may be provided. That is, only when the PU size in the area is equal to or larger than a predetermined size, the intra prediction unit 310 may be able to perform intra prediction on the inter-predicted area.
  • the image decoding device 300 also uses an Angular Prediction intra prediction method as an intra prediction prediction method for obtaining neighboring pixels performed on an inter-predicted region, An Arbitrary Directional Intra (ADI) intra prediction method may be applied.
  • ADI Arbitrary Directional Intra
  • this technology is, for example, MPEG, H.264.
  • image information bitstream
  • orthogonal transformation such as discrete cosine transformation and motion compensation, such as 26x
  • network media such as satellite broadcasting, cable television, the Internet, or mobile phones.
  • the present invention can be applied to an image encoding device and an image decoding device used in
  • the present technology can be applied to an image encoding device and an image decoding device that are used when processing on a storage medium such as an optical, magnetic disk, and flash memory.
  • the present technology can also be applied to intra prediction apparatuses included in such image encoding apparatuses and image decoding apparatuses.
  • a CPU (Central Processing Unit) 501 of the personal computer 500 performs various processes according to a program stored in a ROM (Read Only Memory) 502 or a program loaded from a storage unit 513 to a RAM (Random Access Memory) 503. Execute the process.
  • the RAM 503 also appropriately stores data necessary for the CPU 501 to execute various processes.
  • the CPU 501, the ROM 502, and the RAM 503 are connected to each other via a bus 504.
  • An input / output interface 510 is also connected to the bus 504.
  • the input / output interface 510 includes an input unit 511 including a keyboard and a mouse, a display including a CRT (Cathode Ray Tube) and an LCD (Liquid Crystal Display), an output unit 512 including a speaker, and a hard disk.
  • a communication unit 514 including a storage unit 513 and a modem is connected. The communication unit 514 performs communication processing via a network including the Internet.
  • a drive 515 is connected to the input / output interface 510 as necessary, and a removable medium 521 such as a magnetic disk, an optical disk, a magneto-optical disk, or a semiconductor memory is appropriately mounted, and a computer program read from them is It is installed in the storage unit 513 as necessary.
  • a removable medium 521 such as a magnetic disk, an optical disk, a magneto-optical disk, or a semiconductor memory is appropriately mounted, and a computer program read from them is It is installed in the storage unit 513 as necessary.
  • a program constituting the software is installed from a network or a recording medium.
  • the recording medium is distributed to distribute the program to the user separately from the apparatus main body, and includes a magnetic disk (including a flexible disk) on which the program is recorded, an optical disk ( It only consists of removable media 521 consisting of CD-ROM (compact disc -read only memory), DVD (including digital Versatile disc), magneto-optical disk (including MD (mini disc)), or semiconductor memory. Rather, it is composed of a ROM 502 on which a program is recorded and a hard disk included in the storage unit 513, which is distributed to the user in a state of being pre-installed in the apparatus main body.
  • a magnetic disk including a flexible disk
  • an optical disk It only consists of removable media 521 consisting of CD-ROM (compact disc -read only memory), DVD (including digital Versatile disc), magneto-optical disk (including MD (mini disc)), or semiconductor memory. Rather, it is composed of a ROM 502 on which a program is recorded and a hard disk included in the storage unit 513, which is
  • the program executed by the computer may be a program that is processed in time series in the order described in this specification, or in parallel or at a necessary timing such as when a call is made. It may be a program for processing.
  • the step of describing the program recorded on the recording medium is not limited to the processing performed in chronological order according to the described order, but may be performed in parallel or It also includes processes that are executed individually.
  • system represents the entire apparatus composed of a plurality of devices (apparatuses).
  • the configuration described as one device (or processing unit) may be divided and configured as a plurality of devices (or processing units).
  • the configurations described above as a plurality of devices (or processing units) may be combined into a single device (or processing unit).
  • a configuration other than that described above may be added to the configuration of each device (or each processing unit).
  • a part of the configuration of a certain device (or processing unit) may be included in the configuration of another device (or other processing unit). . That is, the present technology is not limited to the above-described embodiment, and various modifications can be made without departing from the gist of the present technology.
  • An image encoding device and an image decoding device include a transmitter or a receiver in optical broadcasting, satellite broadcasting, cable broadcasting such as cable TV, distribution on the Internet, and distribution to terminals by cellular communication
  • the present invention can be applied to various electronic devices such as a recording device that records an image on a medium such as a magnetic disk and a flash memory, or a playback device that reproduces an image from these storage media.
  • a recording device that records an image on a medium such as a magnetic disk and a flash memory
  • a playback device that reproduces an image from these storage media.
  • FIG. 37 shows an example of a schematic configuration of a television apparatus to which the above-described embodiment is applied.
  • the television apparatus 900 includes an antenna 901, a tuner 902, a demultiplexer 903, a decoder 904, a video signal processing unit 905, a display unit 906, an audio signal processing unit 907, a speaker 908, an external interface 909, a control unit 910, a user interface 911, And a bus 912.
  • Tuner 902 extracts a signal of a desired channel from a broadcast signal received via antenna 901, and demodulates the extracted signal. Then, the tuner 902 outputs the encoded bit stream obtained by the demodulation to the demultiplexer 903. In other words, the tuner 902 serves as a transmission unit in the television apparatus 900 that receives an encoded stream in which an image is encoded.
  • the demultiplexer 903 separates the video stream and audio stream of the viewing target program from the encoded bit stream, and outputs each separated stream to the decoder 904. Further, the demultiplexer 903 extracts auxiliary data such as EPG (Electronic Program Guide) from the encoded bit stream, and supplies the extracted data to the control unit 910. Note that the demultiplexer 903 may perform descrambling when the encoded bit stream is scrambled.
  • EPG Electronic Program Guide
  • the decoder 904 decodes the video stream and audio stream input from the demultiplexer 903. Then, the decoder 904 outputs the video data generated by the decoding process to the video signal processing unit 905. In addition, the decoder 904 outputs audio data generated by the decoding process to the audio signal processing unit 907.
  • the video signal processing unit 905 reproduces the video data input from the decoder 904 and causes the display unit 906 to display the video.
  • the video signal processing unit 905 may cause the display unit 906 to display an application screen supplied via a network.
  • the video signal processing unit 905 may perform additional processing such as noise removal on the video data according to the setting.
  • the video signal processing unit 905 may generate a GUI (Graphical User Interface) image such as a menu, a button, or a cursor, and superimpose the generated image on the output image.
  • GUI Graphic User Interface
  • the display unit 906 is driven by a drive signal supplied from the video signal processing unit 905, and displays a video on a video screen of a display device (for example, a liquid crystal display, a plasma display, or an OELD (Organic ElectroLuminescence Display) (organic EL display)). Or an image is displayed.
  • a display device for example, a liquid crystal display, a plasma display, or an OELD (Organic ElectroLuminescence Display) (organic EL display)). Or an image is displayed.
  • the audio signal processing unit 907 performs reproduction processing such as D / A conversion and amplification on the audio data input from the decoder 904, and outputs audio from the speaker 908.
  • the audio signal processing unit 907 may perform additional processing such as noise removal on the audio data.
  • the external interface 909 is an interface for connecting the television apparatus 900 to an external device or a network.
  • a video stream or an audio stream received via the external interface 909 may be decoded by the decoder 904. That is, the external interface 909 also has a role as a transmission unit in the television apparatus 900 that receives an encoded stream in which an image is encoded.
  • the control unit 910 includes a processor such as a CPU and memories such as a RAM and a ROM.
  • the memory stores a program executed by the CPU, program data, EPG data, data acquired via a network, and the like.
  • the program stored in the memory is read and executed by the CPU when the television device 900 is activated, for example.
  • the CPU controls the operation of the television device 900 according to an operation signal input from the user interface 911 by executing the program.
  • the user interface 911 is connected to the control unit 910.
  • the user interface 911 includes, for example, buttons and switches for the user to operate the television device 900, a remote control signal receiving unit, and the like.
  • the user interface 911 detects an operation by the user via these components, generates an operation signal, and outputs the generated operation signal to the control unit 910.
  • the bus 912 connects the tuner 902, the demultiplexer 903, the decoder 904, the video signal processing unit 905, the audio signal processing unit 907, the external interface 909, and the control unit 910 to each other.
  • the decoder 904 has the function of the image decoding apparatus according to the above-described embodiment.
  • the available intra prediction modes can be increased when the television apparatus 900 decodes an image, and the encoding efficiency can be improved.
  • FIG. 38 shows an example of a schematic configuration of a mobile phone to which the above-described embodiment is applied.
  • a mobile phone 920 includes an antenna 921, a communication unit 922, an audio codec 923, a speaker 924, a microphone 925, a camera unit 926, an image processing unit 927, a demultiplexing unit 928, a recording / reproducing unit 929, a display unit 930, a control unit 931, an operation A portion 932 and a bus 933.
  • the antenna 921 is connected to the communication unit 922.
  • the speaker 924 and the microphone 925 are connected to the audio codec 923.
  • the operation unit 932 is connected to the control unit 931.
  • the bus 933 connects the communication unit 922, the audio codec 923, the camera unit 926, the image processing unit 927, the demultiplexing unit 928, the recording / reproducing unit 929, the display unit 930, and the control unit 931 to each other.
  • the mobile phone 920 has various operation modes including a voice call mode, a data communication mode, a shooting mode, and a videophone mode, and is used for sending and receiving voice signals, sending and receiving e-mail or image data, taking images, and recording data. Perform the action.
  • the analog voice signal generated by the microphone 925 is supplied to the voice codec 923.
  • the audio codec 923 converts an analog audio signal into audio data, A / D converts the compressed audio data, and compresses it. Then, the audio codec 923 outputs the compressed audio data to the communication unit 922.
  • the communication unit 922 encodes and modulates the audio data and generates a transmission signal. Then, the communication unit 922 transmits the generated transmission signal to a base station (not shown) via the antenna 921. In addition, the communication unit 922 amplifies a radio signal received via the antenna 921 and performs frequency conversion to acquire a received signal.
  • the communication unit 922 demodulates and decodes the received signal to generate audio data, and outputs the generated audio data to the audio codec 923.
  • the audio codec 923 decompresses the audio data and performs D / A conversion to generate an analog audio signal. Then, the audio codec 923 supplies the generated audio signal to the speaker 924 to output audio.
  • the control unit 931 generates character data constituting the e-mail in response to an operation by the user via the operation unit 932.
  • the control unit 931 causes the display unit 930 to display characters.
  • the control unit 931 generates e-mail data in response to a transmission instruction from the user via the operation unit 932, and outputs the generated e-mail data to the communication unit 922.
  • the communication unit 922 encodes and modulates email data and generates a transmission signal. Then, the communication unit 922 transmits the generated transmission signal to a base station (not shown) via the antenna 921.
  • the communication unit 922 amplifies a radio signal received via the antenna 921 and performs frequency conversion to acquire a received signal.
  • the communication unit 922 demodulates and decodes the received signal to restore the email data, and outputs the restored email data to the control unit 931.
  • the control unit 931 displays the content of the electronic mail on the display unit 930 and stores the electronic mail data in the storage medium of the recording / reproducing unit 929.
  • the recording / reproducing unit 929 has an arbitrary readable / writable storage medium.
  • the storage medium may be a built-in storage medium such as a RAM or a flash memory, or an externally mounted type such as a hard disk, a magnetic disk, a magneto-optical disk, an optical disk, a USB (Unallocated Space Space Bitmap) memory, or a memory card. It may be a storage medium.
  • the camera unit 926 images a subject to generate image data, and outputs the generated image data to the image processing unit 927.
  • the image processing unit 927 encodes the image data input from the camera unit 926 and stores the encoded stream in the storage medium of the storage / playback unit 929.
  • the demultiplexing unit 928 multiplexes the video stream encoded by the image processing unit 927 and the audio stream input from the audio codec 923, and the multiplexed stream is the communication unit 922. Output to.
  • the communication unit 922 encodes and modulates the stream and generates a transmission signal. Then, the communication unit 922 transmits the generated transmission signal to a base station (not shown) via the antenna 921.
  • the communication unit 922 amplifies a radio signal received via the antenna 921 and performs frequency conversion to acquire a received signal.
  • These transmission signal and reception signal may include an encoded bit stream.
  • the communication unit 922 demodulates and decodes the received signal to restore the stream, and outputs the restored stream to the demultiplexing unit 928.
  • the demultiplexing unit 928 separates the video stream and the audio stream from the input stream, and outputs the video stream to the image processing unit 927 and the audio stream to the audio codec 923.
  • the image processing unit 927 decodes the video stream and generates video data.
  • the video data is supplied to the display unit 930, and a series of images is displayed on the display unit 930.
  • the audio codec 923 decompresses the audio stream and performs D / A conversion to generate an analog audio signal. Then, the audio codec 923 supplies the generated audio signal to the speaker 924 to output audio.
  • the image processing unit 927 has the functions of the image encoding device and the image decoding device according to the above-described embodiment. Accordingly, the available intra prediction modes can be increased at the time of encoding and decoding of an image by the mobile phone 920, and the encoding efficiency can be improved.
  • FIG. 39 shows an example of a schematic configuration of a recording / reproducing apparatus to which the above-described embodiment is applied.
  • the recording / reproducing device 940 encodes audio data and video data of a received broadcast program and records the encoded data on a recording medium.
  • the recording / reproducing device 940 may encode audio data and video data acquired from another device and record them on a recording medium, for example.
  • the recording / reproducing device 940 reproduces data recorded on the recording medium on a monitor and a speaker, for example, in accordance with a user instruction. At this time, the recording / reproducing device 940 decodes the audio data and the video data.
  • the recording / reproducing apparatus 940 includes a tuner 941, an external interface 942, an encoder 943, an HDD (Hard Disk Drive) 944, a disk drive 945, a selector 946, a decoder 947, an OSD (On-Screen Display) 948, a control unit 949, and a user interface. 950.
  • Tuner 941 extracts a signal of a desired channel from a broadcast signal received via an antenna (not shown), and demodulates the extracted signal. Then, the tuner 941 outputs the encoded bit stream obtained by the demodulation to the selector 946. That is, the tuner 941 has a role as a transmission unit in the recording / reproducing apparatus 940.
  • the external interface 942 is an interface for connecting the recording / reproducing apparatus 940 to an external device or a network.
  • the external interface 942 may be, for example, an IEEE1394 interface, a network interface, a USB interface, or a flash memory interface.
  • video data and audio data received via the external interface 942 are input to the encoder 943. That is, the external interface 942 serves as a transmission unit in the recording / reproducing device 940.
  • the encoder 943 encodes video data and audio data when the video data and audio data input from the external interface 942 are not encoded. Then, the encoder 943 outputs the encoded bit stream to the selector 946.
  • the HDD 944 records an encoded bit stream in which content data such as video and audio are compressed, various programs, and other data on an internal hard disk. Further, the HDD 944 reads out these data from the hard disk when reproducing video and audio.
  • the disk drive 945 performs recording and reading of data with respect to the mounted recording medium.
  • the recording medium mounted on the disk drive 945 is, for example, a DVD disk (DVD-Video, DVD-RAM, DVD-R, DVD-RW, DVD + R, DVD + RW, etc.) or a Blu-ray (registered trademark) disk. It may be.
  • the selector 946 selects an encoded bit stream input from the tuner 941 or the encoder 943 when recording video and audio, and outputs the selected encoded bit stream to the HDD 944 or the disk drive 945. In addition, the selector 946 outputs the encoded bit stream input from the HDD 944 or the disk drive 945 to the decoder 947 during video and audio reproduction.
  • the decoder 947 decodes the encoded bit stream and generates video data and audio data. Then, the decoder 947 outputs the generated video data to the OSD 948. The decoder 904 outputs the generated audio data to an external speaker.
  • OSD 948 reproduces the video data input from the decoder 947 and displays the video. Further, the OSD 948 may superimpose a GUI image such as a menu, a button, or a cursor on the video to be displayed.
  • the control unit 949 includes a processor such as a CPU and memories such as a RAM and a ROM.
  • the memory stores a program executed by the CPU, program data, and the like.
  • the program stored in the memory is read and executed by the CPU when the recording / reproducing apparatus 940 is activated, for example.
  • the CPU controls the operation of the recording / reproducing apparatus 940 in accordance with an operation signal input from the user interface 950, for example, by executing the program.
  • the user interface 950 is connected to the control unit 949.
  • the user interface 950 includes, for example, buttons and switches for the user to operate the recording / reproducing device 940, a remote control signal receiving unit, and the like.
  • the user interface 950 detects an operation by the user via these components, generates an operation signal, and outputs the generated operation signal to the control unit 949.
  • the encoder 943 has the function of the image encoding apparatus according to the above-described embodiment.
  • the decoder 947 has the function of the image decoding apparatus according to the above-described embodiment.
  • FIG. 40 illustrates an example of a schematic configuration of an imaging apparatus to which the above-described embodiment is applied.
  • the imaging device 960 images a subject to generate an image, encodes the image data, and records it on a recording medium.
  • the imaging device 960 includes an optical block 961, an imaging unit 962, a signal processing unit 963, an image processing unit 964, a display unit 965, an external interface 966, a memory 967, a media drive 968, an OSD 969, a control unit 970, a user interface 971, and a bus. 972.
  • the optical block 961 is connected to the imaging unit 962.
  • the imaging unit 962 is connected to the signal processing unit 963.
  • the display unit 965 is connected to the image processing unit 964.
  • the user interface 971 is connected to the control unit 970.
  • the bus 972 connects the image processing unit 964, the external interface 966, the memory 967, the media drive 968, the OSD 969, and the control unit 970 to each other.
  • the optical block 961 includes a focus lens and a diaphragm mechanism.
  • the optical block 961 forms an optical image of the subject on the imaging surface of the imaging unit 962.
  • the imaging unit 962 includes an image sensor such as a CCD (Charge-Coupled Device) or a CMOS (Complementary Metal-Oxide Semiconductor), and converts an optical image formed on the imaging surface into an image signal as an electrical signal by photoelectric conversion. Then, the imaging unit 962 outputs the image signal to the signal processing unit 963.
  • CCD Charge-Coupled Device
  • CMOS Complementary Metal-Oxide Semiconductor
  • the signal processing unit 963 performs various camera signal processing such as knee correction, gamma correction, and color correction on the image signal input from the imaging unit 962.
  • the signal processing unit 963 outputs the image data after the camera signal processing to the image processing unit 964.
  • the image processing unit 964 encodes the image data input from the signal processing unit 963 and generates encoded data. Then, the image processing unit 964 outputs the generated encoded data to the external interface 966 or the media drive 968. The image processing unit 964 also decodes encoded data input from the external interface 966 or the media drive 968 to generate image data. Then, the image processing unit 964 outputs the generated image data to the display unit 965. In addition, the image processing unit 964 may display the image by outputting the image data input from the signal processing unit 963 to the display unit 965. Further, the image processing unit 964 may superimpose display data acquired from the OSD 969 on an image output to the display unit 965.
  • the OSD 969 generates a GUI image such as a menu, a button, or a cursor, and outputs the generated image to the image processing unit 964.
  • the external interface 966 is configured as a USB input / output terminal, for example.
  • the external interface 966 connects the imaging device 960 and a printer, for example, when printing an image.
  • a drive is connected to the external interface 966 as necessary.
  • a removable medium such as a magnetic disk or an optical disk is attached to the drive, and a program read from the removable medium can be installed in the imaging device 960.
  • the external interface 966 may be configured as a network interface connected to a network such as a LAN or the Internet. That is, the external interface 966 has a role as a transmission unit in the imaging device 960.
  • the recording medium mounted on the media drive 968 may be any readable / writable removable medium such as a magnetic disk, a magneto-optical disk, an optical disk, or a semiconductor memory.
  • a recording medium may be fixedly mounted on the media drive 968, and a non-portable storage unit such as an internal hard disk drive or an SSD (Solid State Drive) may be configured.
  • the control unit 970 includes a processor such as a CPU and memories such as a RAM and a ROM.
  • the memory stores a program executed by the CPU, program data, and the like.
  • the program stored in the memory is read and executed by the CPU when the imaging device 960 is activated, for example.
  • the CPU controls the operation of the imaging device 960 according to an operation signal input from the user interface 971 by executing the program.
  • the user interface 971 is connected to the control unit 970.
  • the user interface 971 includes, for example, buttons and switches for the user to operate the imaging device 960.
  • the user interface 971 detects an operation by the user via these components, generates an operation signal, and outputs the generated operation signal to the control unit 970.
  • the image processing unit 964 has the functions of the image encoding device and the image decoding device according to the above-described embodiment. Accordingly, the available intra prediction modes can be increased when encoding and decoding an image in the imaging apparatus 960, and the encoding efficiency can be improved.
  • the method for transmitting such information is not limited to such an example.
  • these pieces of information may be transmitted or recorded as separate data associated with the encoded bitstream without being multiplexed into the encoded bitstream.
  • the term “associate” means that an image (which may be a part of an image such as a slice or a block) included in the bitstream and information corresponding to the image can be linked at the time of decoding. Means. That is, information may be transmitted on a transmission path different from that of the image (or bit stream).
  • the information may be recorded on a recording medium (or another recording area of the same recording medium) different from the image (or bit stream). Furthermore, the information and the image (or the bit stream) may be associated with each other in an arbitrary unit such as a plurality of frames, one frame, or a part of the frame.
  • this technique can also take the following structures.
  • a predicted image generation unit for surrounding that performs intra prediction on a region to be processed to be inter-predicted and generates a predicted image
  • a storage unit that stores a pixel value of a pixel that can be used as a peripheral pixel in intra prediction of a region that is processed later in time than the region to be processed of the prediction image generated by the prediction image generation unit for peripheral
  • a prediction image generation unit for encoding that performs intra prediction on a region to be processed using the pixel values of peripheral pixels stored in the storage unit, and generates a prediction image
  • a calculation unit that calculates a difference image between the input image and the prediction image generated by the encoding prediction image generation unit
  • An image processing apparatus comprising: an encoding unit that encodes the difference image calculated by the arithmetic unit.
  • the image processing apparatus further includes a determination unit that determines the size and prediction mode of the intra prediction processing unit performed by the peripheral prediction image generation unit based on the size and prediction mode of the inter prediction processing unit, The surrounding prediction image generation unit generates the prediction image by performing the intra prediction in the prediction mode determined by the determination unit with the size of the processing unit determined by the determination unit.
  • the image processing apparatus described.
  • the determination unit determines the prediction mode of the intra prediction as a prediction mode of intra prediction performed immediately before.
  • the image processing device wherein the determination unit determines the prediction mode of the intra prediction as a prediction mode in which an inner product of a motion vector unit vector and a prediction mode unit vector is maximized.
  • the determination unit determines the prediction mode of the intra prediction as a prediction mode of another region that is adjacent to the processing target region and has undergone intra prediction.
  • the determination unit determines a prediction mode for the region selected according to a predetermined priority order as the prediction mode for the intra prediction.
  • the surrounding prediction image generation unit is a region to be processed to be inter-predicted in a mode in which a reconstructed image generated using a prediction image generated by inter prediction is prohibited from being used in intra prediction.
  • the image processing device according to any one of (1) to (7), wherein intra prediction is performed on the image to generate a predicted image.
  • the storage unit temporally reconstructs the reconstructed image generated using the prediction image generated by the intra prediction from the region to be processed.
  • the prediction image generation unit for encoding performs intra prediction on a region to be processed using pixel values of peripheral pixels stored in the storage unit, and generates a prediction image
  • the encoding unit adds the intra prediction information related to the size of the intra prediction processing unit and the prediction mode by the prediction image generation unit for encoding to the bit stream of the encoded difference image.
  • the image processing apparatus according to 8). (10) An image processing method for an image processing apparatus, In the prediction processing performed for each predetermined region of the image by the peripheral prediction image generation unit, intra prediction is performed on the processing target region to be inter predicted, and a prediction image is generated.
  • a storage unit stores pixel values of pixels that can be used as peripheral pixels in intra prediction for a region that is processed temporally after the region to be processed of the generated prediction image
  • the prediction image generation unit for encoding performs intra prediction on the region to be processed using the pixel values of the stored peripheral pixels, generates a prediction image
  • the calculation unit calculates a difference image between the input image and the generated predicted image, An image processing method in which an encoding unit encodes the calculated difference image.
  • a decoding unit that decodes a bitstream in which an image is encoded; In prediction processing performed for each predetermined region of an image obtained by decoding the bitstream by the decoding unit, intra prediction is performed on a region to be processed that is inter-predicted to generate a prediction image
  • An image generator A storage unit that stores a pixel value of a pixel that can be used as a peripheral pixel in intra prediction of a region that is processed later in time than the region to be processed of the prediction image generated by the prediction image generation unit for peripheral
  • a prediction image generation unit for decoding that performs intra prediction on a region to be processed using pixel values of peripheral pixels stored in the storage unit, and generates a prediction image;
  • An image processing apparatus comprising: a calculation unit that adds a prediction image generated by the decoding prediction image generation unit to a difference image and generates a decoded image.
  • (12) Based on the size of the inter prediction processing unit and the prediction mode, further includes a determination unit that determines the size and prediction mode of the intra prediction processing unit performed by the prediction image generation unit for surrounding, The peripheral prediction image generation unit generates the prediction image by performing the intra prediction in the prediction mode determined by the determination unit with the size of the processing unit determined by the determination unit.
  • the image processing apparatus described.
  • (14) The image processing device according to (12), wherein the determination unit determines the prediction mode of the intra prediction as a prediction mode of intra prediction performed immediately before.
  • the image processing device determines the prediction mode of the intra prediction as a prediction mode in which an inner product of a motion vector unit vector and a prediction mode unit vector is maximized.
  • the determination unit determines the prediction mode of the intra prediction as a prediction mode of another region that is adjacent to the region to be processed and in which intra prediction is performed.
  • the determination unit determines the prediction mode of the region selected according to a predetermined priority order as the prediction mode of the intra prediction when there are a plurality of prediction modes of the other region.
  • the determination unit may perform the prediction for the periphery based on the size of the inter prediction processing unit and the prediction mode included in the information on the inter prediction obtained by decoding the bitstream by the decoding unit.
  • the image processing device according to any one of (12) to (17), wherein the size and prediction mode of a processing unit for intra prediction performed by the image generation unit are determined.
  • the surrounding predicted image generation unit is a region to be inter-predicted in a mode that prohibits the use of a reconstructed image generated by using a predicted image generated by inter prediction in intra prediction.
  • the image processing device according to any one of (11) to (18), wherein intra prediction is performed on the image to generate a predicted image.
  • the decoding unit decodes the bitstream in which the image is encoded, In the prediction processing performed for each predetermined region of the image obtained by decoding the bitstream, the peripheral prediction image generation unit performs intra prediction on the processing target region to be inter predicted, and generates a prediction image
  • a storage unit stores pixel values of pixels that can be used as peripheral pixels in intra prediction for a region that is processed temporally after the region to be processed of the generated prediction image
  • the prediction image generation unit for decoding performs intra prediction on the region to be processed using the pixel values of the stored peripheral pixels, generates a prediction image
  • An image processing method in which a calculation unit adds a generated predicted image to a difference image to generate a decoded image.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本技術は、符号化効率を向上させることができるようにする画像処理装置および方法に関する。 画像の所定の領域毎に行う予測処理において、インター予測される処理対象の領域に対してイントラ予測を行い、予測画像を生成する周辺用予測画像生成部と、前記周辺用予測画像生成部により生成された前記予測画像の、前記処理対象の領域よりも時間的に後に処理される領域に対するイントラ予測において周辺画素として利用可能な画素の画素値を記憶する記憶部と、前記記憶部に記憶される周辺画素の画素値を用いて、処理対象の領域に対してイントラ予測を行い、予測画像を生成する符号化用予測画像生成部とを備える。本開示は画像処理装置に適用することができる。

Description

画像処理装置および方法
 本開示は、画像処理装置および方法に関し、特に、符号化効率を向上させることができるようにした画像処理装置および方法に関する。
 近年、画像情報をデジタルとして取り扱い、その際、効率の高い情報の伝送、蓄積を目的とし、画像情報特有の冗長性を利用して、離散コサイン変換等の直交変換と動き補償により圧縮するMPEG(Moving Picture Experts Group)などの方式に準拠した装置が、放送局などの情報配信、及び一般家庭における情報受信の双方において普及しつつある。
 特に、MPEG2(ISO(International Organization for Standardization)/IEC(International Electrotechnical Commission) 13818-2)は、汎用画像符号化方式として定義されており、飛び越し走査画像及び順次走査画像の双方、並びに標準解像度画像及び高精細画像を網羅する標準で、プロフェッショナル用途及びコンシューマ用途の広範なアプリケーションに現在広く用いられている。MPEG2圧縮方式を用いることにより、例えば720×480画素を持つ標準解像度の飛び越し走査画像であれば4~8Mbps、1920×1088画素を持つ高解像度の飛び越し走査画像であれば18~22Mbpsの符号量(ビットレート)を割り当てることで、高い圧縮率と良好な画質の実現が可能である。
 MPEG2は主として放送用に適合する高画質符号化を対象としていたが、MPEG1より低い符号量(ビットレート)、つまりより高い圧縮率の符号化方式には対応していなかった。携帯端末の普及により、今後そのような符号化方式のニーズは高まると思われ、これに対応してMPEG4符号化方式の標準化が行われた。画像符号化方式に関しては、1998年12月にISO/IEC 14496-2としてその規格が国際標準に承認された。
 更に、近年、当初テレビ会議用の画像符号化を目的として、H.26L (ITU-T(International Telecommunication Union Telecommunication Standardization Sector) Q6/16 VCEG(Video Coding Expert Group))という標準の規格化が進んでいる。H.26LはMPEG2やMPEG4といった従来の符号化方式に比べ、その符号化、復号化により多くの演算量が要求されるものの、より高い符号化効率が実現されることが知られている。また、現在、MPEG4の活動の一環として、このH.26Lをベースに、H.26Lではサポートされない機能をも取り入れ、より高い符号化効率を実現する標準化がJoint Model of Enhanced-Compression Video Codingとして行われている。
 標準化のスケジュールとしては、2003年3月にはH.264及びMPEG-4 Part10 (Advanced Video Coding、以下AVCと記す)という名の元に国際標準となった。
 更に、その拡張として、RGBや4:2:2、4:4:4といった、業務用に必要な符号化ツールや、MPEG-2で規定されていた8x8DCT(Discrete Cosine Transform)や量子化マトリクスをも含んだFRExt(Fidelity Range Extension)の標準化が2005年2月に完了し、これにより、AVCを用いて、映画に含まれるフィルムノイズをも良好に表現することが可能な符号化方式となって、Blu-Ray Disc等の幅広いアプリケーションに用いられる運びとなった。
 しかしながら、昨今、ハイビジョン画像の4倍の、4000×2000画素程度の画像を圧縮したい、或いは、インターネットのような、限られた伝送容量の環境において、ハイビジョン画像を配信したいといった、更なる高圧縮率符号化に対するニーズが高まっている。このため、ITU-T傘下のVCEG(Video Coding Expert Group)において、符号化効率の改善に関する検討が継続され行なわれている。
 ところで、従来のように、マクロブロックサイズを16画素×16画素とするのは、次世代符号化方式の対象となるような、UHD(Ultra High Definition;4000画素×2000画素)といった大きな画枠に対しては、最適ではない恐れがあった。
 そこで、現在、AVCより更なる符号化効率の向上を目的として、ITU-Tと、ISO/IECの共同の標準化団体であるJCTVC(Joint Collaboration Team - Video Coding)により、HEVC(High Efficiency Video Coding)と呼ばれる符号化方式の標準化が進められている(例えば、非特許文献1参照)。
 このHEVC符号化方式においては、AVCにおけるマクロブロックと同様の処理単位としてコーディングユニット(CU(Coding Unit))が定義されている。このCUは、AVCのマクロブロックのようにサイズが16×16画素に固定されず、それぞれのシーケンスにおいて、画像圧縮情報中において指定される。
 ところで、AVCには、インターピクチャにおいて、インター予測(画面間予測)により再構成された画素からのイントラ予測(画面内予測)を禁止するモードが用意されている。このモードはインター予測、もしくはインター予測で参照する画像にエラー混入していた際に、そのエラーがイントラ予測に影響することを防ぐためのものである。AVCにおけるシンタックスではピクチャパラメータ中に存在するconstrained_intra_pred_flagで示させるフラグが1の時に上述したモードで復号されることが規定されている。
 しかしながら、HEVCの場合、LCU内にインター予測を行うCUとイントラ予測を行うCUとが混在することができる。このような場合に、constrained_intra_pred_flag=1であるとすると、イントラ予測において周辺画素の参照が不可能になることが頻発し、利用可能な予測モードの数が大幅に制限され、符号化効率が低減する恐れがあった。
 そこで、constrained_intra_pred_flag=1でのイントラ予測の場合、インター予測から構成されるブロック(単に、インター予測のブロックとも称する)の隣接画素を、そのブロックに隣接する、イントラ予測から構成されるブロック(単に、イントラ予測のブロックとも称する)の画素で置き換える方法が考えられた(例えば、非特許文献2参照)。
Thomas Wiegand, Woo-Jin Han, Benjamin Bross, Jens-Rainer Ohm, Gary J. Sullivan, "Working Draft 1 of High-Efficiency Video Coding ", JCTVC-C403, Joint Collaborative Team on Video Coding (JCT-VC)of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG113rd Meeting: Guangzhou, CN, 7-15 October, 2010 Viktor Wahadaniah, ChongSoon Lim, Sue Mon Thet Naing, Xuan Jing, "Constrained Intra Prediction Scheme for Flexible-Sized Prediction Units in HEVC", JCTVC- D094, Joint Collaborative Team on Video Coding (JCT-VC)of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG114th Meeting: Daegu, KR, 20-28 January, 2011
 しかしながら、非特許文献2に記載の方法は、単純な線形補間計算のため、インター予測のブロックが大きい場合、隣接するイントラ予測のブロックの画素を利用して算出された値とインター予測での値が大きく異なってしまう可能性がある。また、計算に使用されるイントラ予測のブロックの画素は、インター予測のブロックに隣接する最大2画素のみであるため、イントラ予測のブロックの画素を利用して算出される値は、そのイントラ予測のブロックの画素値にひきずられてしまい、実際の値(インター予測により求められる画素値)から大きく異なってしまう恐れがあった。
 本開示は、このような状況に鑑みてなされたものであり、利用不可能なインター予測のブロックの画素を、より精度の高い画素を用いて置き換えることができるようにし、利用可能なイントラ予測モードを増大させ、符号化効率を向上させることができるようにすることを目的とする。
 本開示の一側面は、画像の所定の領域毎に行う予測処理において、インター予測される処理対象の領域に対してイントラ予測を行い、予測画像を生成する周辺用予測画像生成部と、前記周辺用予測画像生成部により生成された前記予測画像の、前記処理対象の領域よりも時間的に後に処理される領域に対するイントラ予測において周辺画素として利用可能な画素の画素値を記憶する記憶部と、前記記憶部に記憶される周辺画素の画素値を用いて、処理対象の領域に対してイントラ予測を行い、予測画像を生成する符号化用予測画像生成部と、入力画像と、前記符号化用予測画像生成部により生成された予測画像の差分画像を算出する演算部と、前記演算部により算出された前記差分画像を符号化する符号化部とを備える画像処理装置である。
 前記インター予測の処理単位のサイズと予測モードに基づいて、前記周辺用予測画像生成部により行われるイントラ予測の処理単位のサイズと予測モードを決定する決定部をさらに備え、前記周辺用予測画像生成部は、前記決定部により決定された処理単位のサイズの、前記決定部により決定された予測モードで、前記イントラ予測を行い、前記予測画像を生成することができる。
 前記決定部は、前記イントラ予測の予測モードを平均値予測に決定することができる。
 前記決定部は、前記イントラ予測の予測モードを、直前に行われたイントラ予測の予測モードに決定することができる。
 前記決定部は、前記イントラ予測の予測モードを、動きベクトルの単位ベクトルと予測モードの単位ベクトルとの内積が最大となる予測モードに決定することができる。
 前記決定部は、前記イントラ予測の予測モードを、処理対象の領域に隣接する、イントラ予測が行われた他の領域の予測モードに決定することができる。
前記決定部は、前記他の領域の予測モードが複数存在する場合、所定の優先順に従って選択された領域の予測モードを、前記イントラ予測の予測モードに決定することができる。
 前記周辺用予測画像生成部は、インター予測により生成された予測画像を用いて生成された再構成画像をイントラ予測において利用することを禁止するモードにおいて、インター予測される処理対象の領域に対してイントラ予測を行い、予測画像を生成することができる。
 前記記憶部は、前記処理対象の領域がイントラ予測される場合、前記イントラ予測により生成された予測画像を用いて生成された再構成画像の、前記処理対象の領域よりも時間的に後に処理される領域に対するイントラ予測において周辺画素として利用可能な画素の画素値を記憶し、前記符号化用予測画像生成部は、前記記憶部に記憶される周辺画素の画素値を用いて、処理対象の領域に対してイントラ予測を行い、予測画像を生成し、前記符号化部は、前記符号化用予測画像生成部による前記イントラ予測の処理単位のサイズおよび予測モードに関するイントラ予測情報を、符号化した前記差分画像のビットストリームに付加することができる。
 本開示の一側面は、また、画像処理装置の画像処理方法であって、周辺用予測画像生成部が、画像の所定の領域毎に行う予測処理において、インター予測される処理対象の領域に対してイントラ予測を行い、予測画像を生成し、記憶部が、生成された前記予測画像の、前記処理対象の領域よりも時間的に後に処理される領域に対するイントラ予測において周辺画素として利用可能な画素の画素値を記憶し、符号化用予測画像生成部が、記憶される周辺画素の画素値を用いて、処理対象の領域に対してイントラ予測を行い、予測画像を生成し、演算部が、入力画像と、生成された予測画像の差分画像を算出し、符号化部が、算出された前記差分画像を符号化する画像処理方法である。
 本開示の他の側面は、画像が符号化されたビットストリームを復号する復号部と、前記復号部により前記ビットストリームが復号されて得られた画像の所定の領域毎に行う予測処理において、インター予測される処理対象の領域に対してイントラ予測を行い、予測画像を生成する周辺用予測画像生成部と、前記周辺用予測画像生成部により生成された前記予測画像の、前記処理対象の領域よりも時間的に後に処理される領域に対するイントラ予測において周辺画素として利用可能な画素の画素値を記憶する記憶部と、前記記憶部に記憶される周辺画素の画素値を用いて、処理対象の領域に対してイントラ予測を行い、予測画像を生成する復号用予測画像生成部と、差分画像に、前記復号用予測画像生成部により生成された予測画像を加算し、復号画像を生成する演算部とを備える画像処理装置である。
 前記インター予測の処理単位のサイズと予測モードに基づいて、前記周辺用予測画像生成部により行われるイントラ予測の処理単位のサイズと予測モードを決定する決定部をさらに備え、前記周辺用予測画像生成部は、前記決定部により決定された処理単位のサイズの、前記決定部により決定された予測モードで、前記イントラ予測を行い、前記予測画像を生成することができる。
 前記決定部は、前記イントラ予測の予測モードを平均値予測に決定することができる。
 前記決定部は、前記イントラ予測の予測モードを、直前に行われたイントラ予測の予測モードに決定することができる。
 前記決定部は、前記イントラ予測の予測モードを、動きベクトルの単位ベクトルと予測モードの単位ベクトルとの内積が最大となる予測モードに決定することができる。
 前記決定部は、前記イントラ予測の予測モードを、処理対象の領域に隣接する、イントラ予測が行われた他の領域の予測モードに決定することができる。
 前記決定部は、前記他の領域の予測モードが複数存在する場合、所定の優先順に従って選択された領域の予測モードを、前記イントラ予測の予測モードに決定することができる。
 前記決定部は、前記復号部により前記ビットストリームが復号されて得られた前記インター予測に関する情報に含まれる、前記インター予測の処理単位のサイズと予測モードに基づいて、前記周辺用予測画像生成部により行われるイントラ予測の処理単位のサイズと予測モードを決定することができる。
 前記周辺用予測画像生成部は、インター予測により生成された予測画像を用いて生成された再構成画像をイントラ予測において利用することを禁止するモードにおいて、インター予測される処理対象の領域に対してイントラ予測を行い、予測画像を生成することができる。
 本開示の他の側面は、また、画像処理装置の画像処理方法であって、復号部が、画像が符号化されたビットストリームを復号し、周辺用予測画像生成部が、前記ビットストリームが復号されて得られた画像の所定の領域毎に行う予測処理において、インター予測される処理対象の領域に対してイントラ予測を行い、予測画像を生成し、記憶部が、生成された前記予測画像の、前記処理対象の領域よりも時間的に後に処理される領域に対するイントラ予測において周辺画素として利用可能な画素の画素値を記憶し、復号用予測画像生成部が、記憶される周辺画素の画素値を用いて、処理対象の領域に対してイントラ予測を行い、予測画像を生成し、演算部が、差分画像に、生成された予測画像を加算し、復号画像を生成する画像処理方法である。
 本発明の一側面においては、画像の所定の領域毎に行う予測処理において、インター予測される処理対象の領域に対してイントラ予測が行われ、予測画像が生成され、生成された予測画像の、処理対象の領域よりも時間的に後に処理される領域に対するイントラ予測において周辺画素として利用可能な画素の画素値が記憶され、記憶される周辺画素の画素値を用いて、処理対象の領域に対してイントラ予測が行われ、予測画像が生成され、入力画像と、生成された予測画像の差分画像が算出され、算出された差分画像が符号化される。
 本発明の他の側面においては、画像が符号化されたビットストリームが復号され、ビットストリームが復号されて得られた画像の所定の領域毎に行う予測処理において、インター予測される処理対象の領域に対してイントラ予測が行われ、予測画像が生成され、生成された予測画像の、処理対象の領域よりも時間的に後に処理される領域に対するイントラ予測において周辺画素として利用可能な画素の画素値が記憶され、記憶される周辺画素の画素値を用いて、処理対象の領域に対してイントラ予測が行われ、予測画像が生成され、差分画像に、生成された予測画像が加算され、復号画像が生成される。
 本開示によれば、画像を処理することができる。特に、符号化効率を向上させることができる。
画像符号化装置の主な構成例を示すブロック図である。 AVC符号化方式における1つのマクロブロックに含まれる4×4ブロックの処理順序を示した図である。 AVC符号化方式において定められているイントラ4×4予測モードを示す図である。 AVC符号化方式において定められているイントラ4×4予測モードを示す図である。 AVC符号化方式において定められているイントラ4×4予測モードの予測方向を示した図である。 AVC符号化方式において定められているイントラ4×4予測モードの予測方法を説明するための図である。 AVC符号化方式において定められているイントラ4×4予測モードの符号化方法を説明するための図である。 AVC符号化方式において定められているイントラ8×8予測モードを示した図である。 AVC符号化方式において定められているイントラ8×8予測モードを示した図である。 AVC符号化方式において定められているイントラ16×16予測モードを示した図である。 AVC符号化方式において定められているイントラ16×16予測モードを示した図である。 AVC符号化方式において定められているイントラ16×16予測モードにおける予測値の算出方法を説明するための図である。 AVC符号化方式において定められている色差信号に対する予測モードの例を示す図である。 コーディングユニットの構成例を説明する図である。 Angular Prediction イントラ予測方式を説明する図である。 Arbitrary Directional Intra イントラ予測方式を説明する図である。 LCUの構成例を説明する図である。 イントラ予測の例を説明する図である。 イントラ予測部の主な構成例を示すブロック図である。 制御部の主な構成例を示すブロック図である。 符号化処理の流れの例を説明するフローチャートである。 予測処理の流れの例を説明するフローチャートである。 イントラ予測処理の流れの例を説明するフローチャートである。 イントラ予測関連処理の流れの例を説明するフローチャートである。 予測モード決定処理の流れの例を説明するフローチャートである。 予測モード決定処理の流れの、他の例を説明するフローチャートである。 予測モード決定処理の流れの、さらに他の例を説明するフローチャートである。 予測モード決定処理の流れの、さらに他の例を説明するフローチャートである。 予測モード決定処理の流れの、さらに他の例を説明するフローチャートである。 予測モード決定処理の流れの、さらに他の例を説明するフローチャートである。 画像復号装置の主な構成例を示すブロック図である。 イントラ予測部の主な構成例を示すブロック図である。 制御部の他の構成例を示すブロック図である。 復号処理の流れの例を説明するフローチャートである。 予測処理の流れの例を説明するフローチャートである。 パーソナルコンピュータの主な構成例を示すブロック図である。 テレビジョン装置の概略的な構成の一例を示すブロック図である。 携帯電話機の概略的な構成の一例を示すブロック図である。 記録再生装置の概略的な構成の一例を示すブロック図である。 撮像装置の概略的な構成の一例を示すブロック図である。
 以下、発明を実施するための形態(以下実施の形態とする)について説明する。なお、説明は以下の順序で行う。
 1.第1の実施の形態(画像復号装置)
 2.第2の実施の形態(画像符号化装置)
 3.第3の実施の形態(パーソナルコンピュータ)
 4.第4の実施の形態(テレビジョン受像機)
 5.第5の実施の形態(携帯電話機)
 6.第6の実施の形態(記録再生装置)
 7.第7の実施の形態(撮像装置)
 <1.第1の実施の形態>
 [画像符号化装置]
 図1は、画像符号化装置の主な構成例を示すブロック図である。
 図1に示される画像符号化装置100は、H.264及びMPEG(Moving Picture Experts Group)4 Part10(AVC(Advanced Video Coding))符号化方式のように、予測処理を用いて画像データを符号化する。
 図1に示されるように画像符号化装置100は、A/D変換部101、画面並べ替えバッファ102、演算部103、直交変換部104、量子化部105、可逆符号化部106、および蓄積バッファ107を有する。また、画像符号化装置100は、逆量子化部108、逆直交変換部109、演算部110、ループフィルタ111、フレームメモリ112、イントラ予測部113、動き予測・補償部114、予測画像選択部115、およびレート制御部116を有する。
 A/D変換部101は、入力された画像データをA/D変換し、変換後の画像データ(デジタルデータ)を、画面並べ替えバッファ102に供給し、記憶させる。画面並べ替えバッファ102は、記憶した表示の順番のフレームの画像を、GOP(Group Of Picture)に応じて、符号化のためのフレームの順番に並べ替え、フレームの順番を並び替えた画像を、演算部103に供給する。また、画面並べ替えバッファ102は、フレームの順番を並び替えた画像を、イントラ予測部113および動き予測・補償部114にも供給する。
 演算部103は、画面並べ替えバッファ102から読み出された画像から、予測画像選択部115を介してイントラ予測部113若しくは動き予測・補償部114から供給される予測画像を減算し、その差分情報を直交変換部104に出力する。
 例えば、イントラ符号化が行われる画像の場合、演算部103は、画面並べ替えバッファ102から読み出された画像から、イントラ予測部113から供給される予測画像を減算する。また、例えば、インター符号化が行われる画像の場合、演算部103は、画面並べ替えバッファ102から読み出された画像から、動き予測・補償部114から供給される予測画像を減算する。
 直交変換部104は、演算部103から供給される差分情報に対して、離散コサイン変換やカルーネン・レーベ変換等の直交変換を施す。なお、この直交変換の方法は任意である。直交変換部104は、その変換係数を量子化部105に供給する。
 量子化部105は、直交変換部104から供給される変換係数を量子化する。量子化部105は、レート制御部116から供給される符号量の目標値に関する情報に基づいて量子化パラメータを設定し、その量子化を行う。なお、この量子化の方法は任意である。量子化部105は、量子化された変換係数を可逆符号化部106に供給する。
 可逆符号化部106は、量子化部105において量子化された変換係数を任意の符号化方式で符号化する。係数データは、レート制御部116の制御の下で量子化されているので、この符号量は、レート制御部116が設定した目標値となる(若しくは目標値に近似する)。
 また、可逆符号化部106は、イントラ予測のモードを示す情報などをイントラ予測部113から取得し、インター予測のモードを示す情報や動きベクトル情報などを動き予測・補償部114から取得する。さらに、可逆符号化部106は、ループフィルタ111において使用されたフィルタ係数等を取得する。
 可逆符号化部106は、これらの各種情報を任意の符号化方式で符号化し、符号化データのヘッダ情報の一部とする(多重化する)。可逆符号化部106は、符号化して得られた符号化データを蓄積バッファ107に供給して蓄積させる。
 可逆符号化部106の符号化方式としては、例えば、可変長符号化または算術符号化等が挙げられる。可変長符号化としては、例えば、H.264/AVC方式で定められているCAVLC(Context-Adaptive Variable Length Coding)などが挙げられる。算術符号化としては、例えば、CABAC(Context-Adaptive Binary Arithmetic Coding)などが挙げられる。
 蓄積バッファ107は、可逆符号化部106から供給された符号化データを、一時的に保持する。蓄積バッファ107は、所定のタイミングにおいて、保持している符号化データを、例えば、後段の図示せぬ記録装置(記録媒体)や伝送路などに出力する。
 また、量子化部105において量子化された変換係数は、逆量子化部108にも供給される。逆量子化部108は、その量子化された変換係数を、量子化部105による量子化に対応する方法で逆量子化する。この逆量子化の方法は、量子化部105による量子化処理に対応する方法であればどのような方法であってもよい。逆量子化部108は、得られた変換係数を、逆直交変換部109に供給する。
 逆直交変換部109は、逆量子化部108から供給された変換係数を、直交変換部104による直交変換処理に対応する方法で逆直交変換する。この逆直交変換の方法は、直交変換部104による直交変換処理に対応する方法であればどのようなものであってもよい。逆直交変換された出力(復元された差分情報)は、演算部110に供給される。
 演算部110は、逆直交変換部109から供給された逆直交変換結果、すなわち、復元された差分情報に、予測画像選択部115を介してイントラ予測部113若しくは動き予測・補償部114から供給される予測画像を加算し、局部的に再構成された画像(以下、再構成画像と称する)を得る。その再構成画像は、ループフィルタ111またはイントラ予測部113に供給される。
 ループフィルタ111は、デブロックフィルタや適応ループフィルタ等を含み、演算部110から供給される復号画像に対して適宜フィルタ処理を行う。例えば、ループフィルタ111は、復号画像に対してデブロックフィルタ処理を行うことにより復号画像のブロック歪を除去する。また、例えば、ループフィルタ111は、そのデブロックフィルタ処理結果(ブロック歪みの除去が行われた復号画像)に対して、ウィナーフィルタ(Wiener Filter)を用いてループフィルタ処理を行うことにより画質改善を行う。
 なお、ループフィルタ111が、復号画像に対して任意のフィルタ処理を行うようにしてもよい。また、ループフィルタ111は、必要に応じて、フィルタ処理に用いたフィルタ係数等の情報を可逆符号化部106に供給し、それを符号化させるようにすることもできる。
 ループフィルタ111は、フィルタ処理結果(以下、復号画像と称する)をフレームメモリ112に供給する。
 フレームメモリ112は、供給される復号画像を記憶し、所定のタイミングにおいて、記憶している復号画像を参照画像として、動き予測・補償部114に供給する。
 イントラ予測部113は、演算部110から供給される再構成画像を、処理対象領域の周辺に位置する周辺領域の画像(周辺画像)として保持する。イントラ予測部113は、この処理対象ピクチャ内の周辺画像の画素値を用いて、基本的にプレディクションユニット(PU)を処理単位として予測画像を生成するイントラ予測(画面内予測)を行う。イントラ予測部113は、予め用意された複数のモード(イントラ予測モード)でこのイントラ予測を行う。
 イントラ予測部113は、候補となる全てのイントラ予測モードで予測画像を生成し、画面並べ替えバッファ102から供給される入力画像を用いて各予測画像のコスト関数値を評価し、最適なモードを選択する。イントラ予測部113は、最適なイントラ予測モードを選択すると、その最適なモードで生成された予測画像を、予測画像選択部115に供給する。
 また、イントラ予測部113は、採用されたイントラ予測モードを示すイントラ予測モード情報等を、適宜可逆符号化部106に供給し、符号化させる。
 なお、イントラ予測部113は、予測画像選択部115により、インター予測により生成された予測画像が選択された場合、その領域の画像をイントラ予測により生成し、保持する。この画像は、他の領域に対するイントラ予測において、周辺画像として使用される。
 動き予測・補償部114は、画面並べ替えバッファ102から供給される入力画像と、フレームメモリ112から供給される参照画像とを用いて、基本的にPUを処理単位として、動き予測(インター予測)を行い、検出された動きベクトルに応じて動き補償処理を行い、予測画像(インター予測画像情報)を生成する。動き予測・補償部114は、予め用意された複数のモード(インター予測モード)でこのようなインター予測を行う。
 動き予測・補償部114は、候補となる全てのインター予測モードで予測画像を生成し、各予測画像のコスト関数値を評価し、最適なモードを選択する。動き予測・補償部114は、最適なインター予測モードを選択すると、その最適なモードで生成された予測画像を、予測画像選択部115に供給する。
 また、動き予測・補償部114は、採用されたインター予測モードを示す情報や、符号化データを復号する際に、そのインター予測モードで処理を行うために必要な情報等を可逆符号化部106に供給し、符号化させる。
 さらに、動き予測・補償部114は、予測画像選択部115によってインター予測の予測画像が選択された場合、その予測画像のモード(最適なインター予測モード)に関する情報(インター予測情報)をイントラ予測部113に通知する。イントラ予測部113は、そのインター予測情報を用いてイントラ予測のモードを決定する。
 予測画像選択部115は、演算部103や演算部110に供給する予測画像の供給元を選択する。例えば、イントラ符号化の場合、予測画像選択部115は、予測画像の供給元としてイントラ予測部113を選択し、そのイントラ予測部113から供給される予測画像を演算部103や演算部110に供給する。また、例えば、インター符号化の場合、予測画像選択部115は、予測画像の供給元として動き予測・補償部114を選択し、その動き予測・補償部114から供給される予測画像を演算部103や演算部110に供給する。
 レート制御部116は、蓄積バッファ107に蓄積された符号化データの符号量に基づいて、オーバーフローあるいはアンダーフローが発生しないように、量子化部105の量子化動作のレートを制御する。
 [イントラ予測モード]
 次に、AVC符号化方式で定められているイントラ予測方式について述べる。AVC符号化方式の場合、輝度信号については、イントラ4×4予測モードとイントラ8×8予測モード、イントラ16×16予測モードの3通りの方式が定められている。図2に示されるように、イントラ16×16予測モードの際には、各ブロックの直流成分を集めて4×4行列が生成され、これに対して、更に、直交変換が施される。
 イントラ8×8予測モードに関しては、ハイプロファイル若しくはそれ以上のプロファイルで、当該マクロブロックに、8×8直交変換が施される場合についてのみ適用可能である。
 [イントラ4×4予測モード]
 以下では、まず、イントラ4×4予測モードについて述べる
 AVC符号化方式において規定される9通りのイントラ4×4予測モードを、図3および図4に示す。このうち、DC予測(モード2)以外のモードに関しては、図5に示される通り、それぞれのモードが一定の方向を示している。つまり、イントラ4×4予測モードにおいては、9通りの予測方向(予測モード)が用意されている。
 図6において、a乃至pは、当該ブロックの画素を示し、A乃至Mは隣接ブロックに属する画素値を示す。表に示したそれぞれのモードについて、以下に述べるように、A乃至Mを用いてa乃至pの予測画素値を生成する。
 モード0(Mode 0)はVertical Predictionであり、A,B,C,Dが "available" の場合のみ適用される。予測画素値は以下の通りである。
 a, e, i, m :   A
 b, f, j, n :   B
 c, g, k, o :   C
 d, h, l, p :   D
 モード1(Mode 1)は、Horizontal Predictionであり、I,J,K,Lが "available" の場合のみ適用される。それぞれの予測画素値は以下のように生成される。
 a, b, c, d :   I,
 e, f, g, h :   J,
 i, j, k, l :   K,
 m, n, o, p :   L.
 モード2(Mode 2)は、DC Predictionであり、A,B,C,D,I,J,K,Lが全て "available" である時、予測値は、以下の式(1)ように生成される。
Figure JPOXMLDOC01-appb-M000001
   ・・・(1)
 また、A,B,C,Dが全て "unavailable" である時、予測値は、以下の式(2)ように生成される。
Figure JPOXMLDOC01-appb-M000002
   ・・・(2)
 また、I,J,K,Lが全て "unavailable" である時、予測値は以下の式(3)ように生成される。
Figure JPOXMLDOC01-appb-M000003
   ・・・(3)
 A,B,C,D,I,J,K,Lが全て "unavailable" である時、128を予測値として用いる。
 モード3(Mode 3)は、Diagonal_Down_Left Predictionであり、A,B,C,D,I,J,K,L,Mが "available" の場合のみ適用される。それぞれの予測値は以下のように生成される。
 a :        (A + 2B + C + 2) >> 2
 b, e :      (B + 2C + D + 2) >> 2
 c, f, i :     (C + 2D + E + 2) >> 2
 d, g, j, m :   (D + 2E + F + 2) >> 2
 h, k, n :     (E + 2F + G + 2) >> 2
 l, o :      (F + 2G + H + 2) >> 2
 p :        (G + 3H + 2) >> 2
 モード4(Mode 4)は、Diagonal_Down_Right Predictionであり、A,B,C,D,I,J,K,L,Mが "available" の場合のみ適用される。それぞれの予測値は以下のように生成される。
 m :        (J + 2K + L + 2) >> 2
 i, n :      (I + 2J + K + 2) >> 2
 e, j, o :     (M + 2I + J + 2) >> 2
 a, f, k, p :   (A + 2M + I + 2) >> 2
 b, g, l :     (M + 2A + B + 2) >> 2
 c, h :      (A + 2B + C + 2) >> 2
 d :        (B + 2C + D + 2) >> 2
 モード5(Mode 5)は、Diagonal_Vertical_Right Predictionであり、A,B,C,D,I,J,K,L,Mが "available" の場合のみ適用される。それぞれの予測値は以下のように生成される。
 a, j :   (M + A + 1) >> 1
 b, k :   (A + B + 1) >> 1
 c, l :   (B + C + 1) >> 1
 d :     (C + D + 1) >> 1
 e, n :   (I + 2M + A + 2) >> 2
 f, o :   (M + 2A + B + 2) >> 2
 g, p :   (A + 2B + C + 2) >> 2
 h :     (B + 2C + D + 2)  >> 2
 i :     (M + 2I + J + 2) >> 2
 m :     (I + 2J + K + 2) >> 2
 モード6(Mode 6)は、Horizontal_Down Predictionであり、A,B,C,D,I,J,K,L,Mが "available" の場合のみ適用される。それぞれの予測値は以下のように生成される。
 a, g :   (M + I + 1) >> 1
 b, h :   (I + 2M + A+ 2) >> 2
 c :     (M + 2A + B+ 2) >> 2
 d :     (A + 2B + C+ 2) >> 2
 e, k :   (I + J + 1) >> 1
 f, l :   (M + 2I + J+ 2) >> 2
 i, o :   (J + K + 1) >> 1
 j, p :   (I + 2J + K+ 2) >> 2
 m :     (K + L + 1) >> 1
 n :     (J + 2K + L + 2) >> 2
 モード7(Mode 7)は、Vertical_Left Predictionであり、A,B,C,D,I,J,K,L,Mが "available" の場合のみ適用される。それぞれの予測値は以下のように生成される。
 a :     (A + B + 1) >> 1
 b, i :   (B + C + 1) >> 1
 c, j :   (C + D + 1) >> 1
 d, k :   (D + E + 1) >> 1
 l :     (E + F + 1) >> 1
 e :     (A + 2B + C + 2) >> 2
 f, m :   (B + 2C + D + 2) >> 2
 g, n :   (C + 2D + E + 2) >> 2
 h, o :   (D + 2E + F + 2) >> 2
 p :     (E + 2F + G + 2) >> 2
 モード8(Mode 8)は、Horizontal_Up Predictionであり、A,B,C,D,I,J,K,L,Mが "available" の場合のみ適用される。それぞれの予測値は以下のように生成される。
 a :           (I + J + 1) >> 1
 b :           (I + 2J + K + 2) >> 2
 c, e :         (J + K + 1) >> 1
 d, f :         (J + 2K + L + 2) >> 2
 g, i :         (K + L + 1) >> 1
 h, j :         (K + 3L + 2) >> 2
 k, l, m, n, o, p :   L
 次に、イントラ4×4予測モード(Intra_4x4_pred_mode)の符号化方式について説明する。
 図7において、Cを当該4×4 ブロック、A及びBを隣接する4×4ブロックであるとすると、Cにおけるイントラ4×4予測モード(Intra_4x4_pred_mode)と、A及びBにおけるイントラ4×4予測モード(Intra_4x4_pred_mode)は高い相関があると考えられる。この事実を利用して、以下のように符号化処理を行うことにより、より高い符号化効率を実現することが可能である。
 すなわち、図7において、AおよびBに対するイントラ4×4予測モード(Intra_4x4_pred_mode)をそれぞれイントラ4×4予測モードA(Intra_4x4_pred_modeA)およびイントラ4×4予測モードB(Intra_4x4_pred_modeB)として、MostProbableModeを以下の式(4)のように定義する。
 MostProbableMode=Min(Intra_4x4_pred_modeA, Intra_4x4_pred_modeB) ・・・(4)
 すなわち、A,Bのうち、より小さなモード番号(mode_number)を割り当てられている方をMostProbableModeとする。つまり、隣接ブロックAおよびBの予測モード(予測方向)を用いて、当該ブロックCの予測モード(予測方向)を予測する。その予測値をMostProbableModeとする。
 ビットストリーム中には、当該4×4ブロックに対するパラメータとして、prev_intra4x4_pred_mode_flag[luma4x4BlkIdx]、および、rem_intra4x4_pred_mode[luma4x4BlkIdx]という2つの値が定義されており、以下に示される擬似コードに基づく処理により、復号処理が行われ、当該4×4ブロックに対するイントラ4×4予測モード(Intra_4x4_pred_mode)を示す、Intra4x4PredMode[luma4x4BlkIdx] の値を得ることが出来る。
 if(prev_intra4x4_pred_mode_flag[luma4x4BlkIdx])
      Intra4x4PredMode[luma4x4BlkIdx] = MostProbableMode
 else
   if(rem_intra4x4_pred_mode[luma4x4BlkIdx] < MostProbableMode)
     Intra4x4PredMode[luma4x4BlkIdx]=rem_intra4x4_pred_mode[luma4x4BlkIdx]
   else
    Intra4x4PredMode[luma4x4BlkIdx]=rem_intra4x4_pred_mode[luma4x4BlkIdx] + 1
 [イントラ8×8予測方式]
 次に、イントラ8×8予測方式について説明する。
 AVCにおいては、図8および図9に示されるように、9通りのイントラ8×8予測モード(Intra_8x8_pred_mode)が定義されている。つまり、イントラ8×8予測モードには9通りの予測方向(予測モード)が用意されている。当該8×8ブロックにおける画素値をp[x,y](0≦x≦7;0≦y≦7)とし、隣接ブロックの画素値をp[-1,-1],…,p[-1,15],p[-1,0],…p[-1,7]のように表すものとする。
 イントラ8×8予測モードについては、以下に述べるとおり、予測値を生成するに先立ち、隣接画素にローパスフィルタリング処理を施す。ここで、ローパスフィルタリング処理前の画素値をp[-1,-1],…,p[-1,15],p[-1,0],…p[-1,7]、処理後の画素値をp'[-1,-1],…,p'[-1,15],p'[-1,0],…p'[-1,7]と表すとする。
 まず、p[-1,-1] が "available" である場合、p'[0,-1]は、以下の式(5)のように算出される。
 p'[0,-1] = (p[-1,-1] + 2*p[0,-1] + p[1,-1] + 2) >> 2 ・・・(5)
 また、p[-1,-1] が "not available" である場合、p'[0,-1]は、以下の式(6)のように算出される。
 p'[0,-1] = (3*p[0,-1] + p[1,-1] + 2) >> 2 ・・・(6)
 p'[x,-1] (x=0,…,7)は、以下の式(7)のように算出される。
 p'[x,-1] = (p[x-1,-1] + 2*p[x,-1] + p[x+1,-1] + 2) >>2 ・・・(7)
 p[x,-1] (x=8,…,15) が "available" である場合、p'[x,-1] (x=8,…,15)は、以下の式(8)および式(9)のように算出される。
 p'[x,-1] = (p[x-1,-1] + 2*p[x,-1] + p[x+1,-1] + 2) >>2 ・・・(8)
 p'[15,-1] = (p[14,-1] + 3*p[15,-1] + 2) >>2 ・・・(9) 
 次にp[-1,-1]が "available" である場合について説明する。p[0,-1]及びp[-1,0]の双方がavailableである場合、p'[-1,-1]は、以下の式(10)のように算出される。
 p'[-1,-1] = (p[0,-1] + 2*p[-1,-1] + p[-1,0] + 2) >>2 ・・・(10)
 また、p[-1,0] が "unavailable" である場合、p'[-1,-1]は、以下の式(11)のように算出される。
 p'[-1,-1] = (3*p[-1,-1] + p[0,-1] + 2) >>2 ・・・(11)
 さらに、p[0,-1] が "unavailable" である場合、p'[-1,-1]は、以下の式(12)のように算出される。
 p'[-1,-1] = (3*p[-1,-1] + p[-1,0] + 2) >>2 ・・・(12)
 また、p'[-1,y] (y=0, … ,7) は、p[-1,y] (y=0, … ,7) が "available" の時、以下のように算出される。すなわち、まず、p[-1,-1]が "available" である場合、p'[-1,0]は、以下の式(13)のように算出される。
 p'[-1,0] = (p[-1,-1] + 2*p[-1,0] + p[-1,1] + 2) >>2 ・・・(13)
 また、p[-1,-1]が "unavailable" である場合、p'[-1,0]は、以下の式(14)のように算出される。
 p'[-1,0] = (3*p[-1,0] + p[-1,1] + 2) >>2 ・・・(14)
 なお、p'[-1,y] (y=1,…,6)は、以下の式(15)のように算出される。
 p[-1,y] = (p[-1,y-1] + 2*p[-1,y] + p[-1,y+1] + 2) >>2 ・・・(15)
 また、p'[-1,7]は、以下の式(16)のように算出される。
 p'[-1,7] = (p[-1,6] + 3*p[-1,7] + 2) >>2 ・・・(16)
 このように算出されたp'を用いて、図8に示された各イントラ予測モードにおける予測値は以下のように算出される。
 モード0(Mode 0)は、Vertical Predictionであり、p[x,-1] (x=0, … ,7) が "available" である時のみ適用される。予測値pred8x8L[x,y]は、以下の式(17)のように算出される。
 pred8x8L[x,y] = p'[x,-1] x,y=0,...,7 ・・・(17)
 モード1(Mode 1)は、Horizontal Predictionであり、p[-1,y] (y=0, … ,7) が "available" である時のみ適用される。予測値pred8x8L[x,y]は、以下の式(18)のように算出される。
 pred8x8L[x,y] = p'[-1,y] x,y=0,...,7 ・・・(18)
 モード2(Mode 2)は、DC Predictionであり、予測値pred8x8L[x,y]は以下の通り算出される。すなわち、p[x,-1] (x=0, … ,7) および p[-1,y] (y=0, … ,7) の両方が "available" である場合、予測値pred8x8L[x,y]は以下の式(19)のように算出される。
Figure JPOXMLDOC01-appb-M000004
   ・・・(19)
 p[x,-1] (x=0, … ,7) は、 "available" であるが、 p[-1,y] (y=0, … ,7) が "unavailable" である場合、予測値pred8x8L[x,y]は以下の式(20)のように算出される。
Figure JPOXMLDOC01-appb-M000005
   ・・・(20)
 p[x,-1] (x=0, … ,7) は、 "unavailable" であるが、 p[-1,y] (y=0, … ,7) が "available" である場合、予測値pred8x8L[x,y]は以下の式(21)のように算出される。
Figure JPOXMLDOC01-appb-M000006
   ・・・(21)
 p[x,-1] (x=0, … ,7) および p[-1,y] (y=0, … ,7) の両方が "unavailable" である場合、予測値pred8x8L[x,y]は以下の式(22)のように算出される(但し8ビット入力の場合)。
 pred8x8L[x,y] = 128 ・・・(22)
 モード3(Mode 3)は、Diagonal_Down_Left_predictionであり、予測値pred8x8L[x,y]は、以下の通り算出される。すなわち、Diagonal_Down_Left_predictionは、p[x,-1], x=0,…,15が "available" の時のみ適用され、x=7かつy=7のとき、予測値pred8x8L[x,y]は、以下の式(23)のように算出される。
 pred8x8L[x,y] = (p'[14,-1] + 3*p[15,-1] + 2) >> 2 ・・・(23)
 その他の予測値pred8x8L[x,y]は、以下の式(24)のように算出される。
 pred8x8L[x,y] = (p'[x+y,-1] + 2*p'[x+y+1,-1] + p'[x+y+2,-1] + 2) >> 2
   ・・・(24)
 モード4(Mode 4)は、Diagonal_Down_Right_predictionであり、予測値pred8x8L[x,y]は、以下の通り算出される。すなわち、Diagonal_Down_Right_predictionは、p[x,-1],x=0,…,7及びp[-1,y],y=0,…,7が "available"の時のみ適用され、x > y であるとき、予測値pred8x8L[x,y]は、以下の式(25)のように算出される。
 pred8x8L[x,y] = (p'[x-y-2,-1] + 2*p'[x-y-1,-1] + p'[x-y,-1] + 2) >> 2
   ・・・(25)
 また、x < y であるとき、予測値pred8x8L[x,y]は、以下の式(26)のように算出される。
 pred8x8L[x,y] = (p'[-1,y-x-2] + 2*p'[-1,y-x-1] + p'[-1,y-x] + 2) >> 2
   ・・・(26)
 さらに、x = yであるとき、予測値pred8x8L[x,y]は、以下の式(27)のように算出される。
 pred8x8L[x,y] = (p'[0,-1] + 2*p'[-1,-1] + p'[-1,0] + 2) >> 2
   ・・・(27)
 モード5(Mode 5)は、Vertical_Right_predictionであり、予測値pred8x8L[x,y]は以下の通り算出される。すなわち、Vertical_Right_predictionは、p[x,-1],x=0,…,7及びp[-1,y],y=-1,…,7が "available"の時のみ適用される。zVRを、以下の式(28)のように定義する。
 zVR = 2*x - y ・・・(28)
 zVRが、0,2,4,6,8,10,12,14の場合、予測値pred8x8L[x,y]は、以下の式(29)のように算出される。
 pred8x8L[x,y] = (p'[x-(y>>1)-1,-1] + p'[x-(y>>1),-1] + 1) >> 1
   ・・・(29)
 また、zVRが1,3,5,7,9,11,13の場合、予測値pred8x8L[x,y]は、以下の式(30)のように算出される。
 pred8x8L[x,y] = (p'[x-(y>>1)-2,-1] + 2*p'[x-(y>>1)-1,-1] + p'[x-(y>>1),-1] + 2) >> 2
   ・・・(30)
 また、zVRが-1の場合、予測値pred8x8L[x,y]は、以下の式(31)のように算出される。
 pred8x8L[x,y] = (p'[-1,0] + 2*p'[-1,-1] + p'[0,-1] + 2) >> 2
   ・・・(31)
 これ以外の場合、すなわち、zVRが-2,-3,-4,-5,-6,-7の場合、以下の式(32)のように算出される。
 pred8x8L[x,y] = (p'[-1,y-2*x-1] + 2*p'[-1,y-2*x-2] + p'[-1,y-2*x-3] + 2) >> 2   ・・・(32)
 モード6(Mode 6)は、Horizontal_Down_predictionであり、予測値pred8x8L[x,y]は以下の通り算出される。Horizontal_Down_predictionは、p[x,-1],x=0,…,7及びp[-1,y],y=-1,…,7が "available"の時のみ適用される。zVRを以下の式(33)のように定義する。
 zHD = 2*y - x ・・・(33)
 zHDが0,2,4,6,8,10,12,14の場合、予測値pred8x8L[x,y]は、以下の式(34)のように算出される。
 pred8x8L[x,y] = (p'[-1,y-(x>>1)-1] + p'[-1,y-(x>>1) + 1] >> 1
   ・・・(34)
 また、zHDが1,3,5,7,9,11,13の場合、予測値pred8x8L[x,y]は、以下の式(35)のように算出される。
 pred8x8L[x,y] = (p'[-1,y-(x>>1)-2] + 2*p'[-1,y-(x>>1)-1] + p'[-1,y-(x>>1)] + 2) >> 2
   ・・・(35)
 また、zHDが-1の場合、予測値pred8x8L[x,y]は、以下の式(36)のように算出される。
 pred8x8L[x,y] = (p'[-1,0] + 2*p[-1,-1] + p'[0,-1] + 2) >> 2
   ・・・(36)
 また、zHDがこれ以外の値の場合、すなわち、-2,-3,-4,-5,-6,-7の場合、予測値pred8x8L[x,y]は、以下の式(37)のように算出される。
 pred8x8L[x,y] = (p'[x-2*y-1,-1] + 2*p'[x-2*y-2,-1] + p'[x-2*y-3,-1] + 2) >> 2   ・・・(37)
 モード7(Mode 7)は、Vertical_Left_predictionであり、予測値pred8x8L[x,y]は以下の通り算出される。すなわち、Vertical_Left_predictionは、p[x,-1], x=0,…,15が "available" の時のみ適用され、y=0,2,4,6の場合、予測値pred8x8L[x,y]は、以下の式(38)のように算出される。
 pred8x8L[x,y] = (p'[x+(y>>1),-1] + p'[x+(y>>1)+1,-1] + 1) >> 1
   ・・・(38)
 それ以外の場合、すなわち、y=1,3,5,7の場合、予測値pred8x8L[x,y]は、以下の式(39)のように算出される。
 pred8x8L[x,y] = (p'[x+(y>>1),-1] + 2*p'[x+(y>>1)+1,-1] + p'[x+(y>>1)+2,-1] + 2) >> 2
   ・・・(39)
 モード8(Mode 8)は、Horizontal_Up_predictionであり、予測値pred8x8L[x,y]は以下の通り算出される。すなわち、Horizontal_Up_predictionは、p[-1,y], y=0,…,7 が "available" の時のみ適用される。以下では、zHUを以下の式(40)のように定義する。
 zHU = x + 2*y ・・・(40)
 zHUの値が0,2,4,6,8,10,12の場合、予測値pred8x8L[x,y]は、以下の式(41)のように算出される。
 pred8x8L[x,y] = (p'[-1,y+(x>>1)] + p'[-1,y+(x>>1)+1] + 1) >> 1
   ・・・(41)
 zHUの値が1,3,5,7,9,11の場合、予測値pred8x8L[x,y]は、以下の式(42)のように算出される。
 pred8x8L[x,y] = (p'[-1,y+(x>>1)] ・・・(42)
 zHUの値が13の場合、予測値pred8x8L[x,y]は、以下の式(43)のように算出される。
 pred8x8L[x,y] = (p'[-1,6] + 3*p'[-1,7] + 2) >> 2 ・・・(43)
 それ以外の場合、すなわち、zHUの値が13より大きい場合、予測画素値は、以下の式(44)のように算出される。
 pred8x8L[x,y] = p'[-1,7] ・・・(44)
 [イントラ16×16予測方式]
 次に、イントラ16×16予測方式について説明する。
 AVCにおいては、図10および図11に示されるように、4通りのイントラ16×16予測モード(Intra_16x16_pred_mode)が定義されている。つまり、イントラ16×16予測モードには、4通りの予測方向(予測モード)が用意されている。当該マクロブロックに含まれる画素値、並びに、隣接画素値を図12のように定義すると、それぞれの予測値は、以下のように生成される。
 モード0(Mode 0)は、Vertical Predictionであり、P(x,-1); x,y=-1..15が "available" である時のみ適用される。それぞれの予測値は以下の式(45)のように算出される。
Figure JPOXMLDOC01-appb-M000007
   ・・・(45)
 モード1(Mode 1)は、Horizontal Predictionであり、P(-1,y); x,y=-1..15が "available" である時のみ適用される。それぞれの予測値は以下の式(46)のように算出される。
Figure JPOXMLDOC01-appb-M000008
   ・・・(46)
 モード2(Mode 2)は、DC Predictionであり、P(x,-1)及びP(-1,y); x,y=-1..15が全て "available" である場合、予測値は以下の式(47)のように算出される。
Figure JPOXMLDOC01-appb-M000009
   ・・・(47)
 また、P(x,-1); x,y=-1..15が "not available" である場合、予測値は以下の式(48)のように生成される。
Figure JPOXMLDOC01-appb-M000010
   ・・・(48)
 P(-1,y); x,y=-1..15が "not available" である場合、予測値は以下の式(49)のように生成される。
Figure JPOXMLDOC01-appb-M000011
   ・・・(49)
 なお、P(x,-1)及びP(-1,y); x,y=-1..15が全て "not available" である場合、予測値として128が用いられる。
 モード3(Mode 3)は、Plane Predictionであり、P(x,-1)及びP(-1,y); x,y=-1..15が全て "available" の場合のみ適用される。それぞれの予測値は以下の式(50)乃至式(55)のように生成される。
Figure JPOXMLDOC01-appb-M000012
   ・・・(50)
Figure JPOXMLDOC01-appb-M000013
   ・・・(51)
Figure JPOXMLDOC01-appb-M000014
   ・・・(52)
Figure JPOXMLDOC01-appb-M000015
   ・・・(53)
Figure JPOXMLDOC01-appb-M000016
   ・・・(54)
Figure JPOXMLDOC01-appb-M000017
   ・・・(55)
 [色差信号に対するイントラ予測モード]
 次に、色差信号に対するイントラ予測モードについて述べる。色差信号に対するイントラ予測モードは、以下の通り、イントラ16×16予測モードに順ずる。但し、イントラ16×16予測モードが、16×16ブロックを対象としているのに対し、色差信号に対するイントラ予測モードは8×8ブロックを対象としている。更に、また、モード番号(mode番号)と、対応するモード(mode)が異なっていることに注意されたい。
 色差信号に対する予測モードは、輝度信号に対するモードとは独立に設定することが可能である。
 以下では、当該マクロブロック(Macroblock)に含まれる画素値及び隣接画素値の定義については、イントラ16×16モード(Intra16x16Mode)の場合に順ずる。それぞれのIntra_chroma_pred_modeにおける予測値の生成は以下の通りである。
 Intra_chroma_pred_modeには、図13に示されるように、モード0乃至モード3の4つのモードがある。
 モード0(Mode 0)は、DC Predictionであり、P(x,-1)及びP(-1,y)が "available" である場合、予測値は、以下の式(56)のように算出される。
Figure JPOXMLDOC01-appb-M000018
   ・・・(56)
 また、P(-1,y)が "not available" である場合、予測値は、以下の式(57)のように算出される。
Figure JPOXMLDOC01-appb-M000019
   ・・・(57)
 また、P(x,-1)が "not available" である場合、予測値は、以下の式(58)のように算出される。
Figure JPOXMLDOC01-appb-M000020
   ・・・(58)
 モード1(Mode 1)は、Horizontal Predictionであり、P(-1,y) が "available" の場合にのみ適用される。予測値は、以下の式(59)のように生成される。
Figure JPOXMLDOC01-appb-M000021
   ・・・(59)
 モード2(Mode 2)は、Vertical Predictionであり、P(x,-1) が "available" の場合にのみ適用される。予測値は、以下の式(60)のように生成される。
Figure JPOXMLDOC01-appb-M000022
   ・・・(60)
 モード3(Mode 3)は、Plane Predictionであり、P(x,-1)及びP(-1,y) が "available" の場合にのみ適用される。予測値は、以下の式(61)乃至式(66)のように生成される。
Figure JPOXMLDOC01-appb-M000023
   ・・・(61)
Figure JPOXMLDOC01-appb-M000024
   ・・・(62)
Figure JPOXMLDOC01-appb-M000025
   ・・・(63)
Figure JPOXMLDOC01-appb-M000026
   ・・・(64)
Figure JPOXMLDOC01-appb-M000027
   ・・・(65)
Figure JPOXMLDOC01-appb-M000028
   ・・・(66)
 [コスト関数]
 ところで、AVC符号化方式において、より高い符号化効率を達成するには、適切な予測モードの選択が重要である。
 かかる選択方式の例として、http://iphome.hhi.de/suehring/tml/index.htm において公開されている、JM (Joint Model) と呼ばれるH.264/MPEG-4 AVCの参照ソフトウエアに実装されている方法を挙げることが出来る。
 JMにおいては、以下に述べる、High Complexity Modeと、Low Complexity Modeの2通りのモード判定方法を選択することが可能である。どちらも、それぞれの予測モードModeに関するコスト関数値を算出し、これを最小にする予測モードを当該ブロック乃至マクロブロックに対する最適モードとして選択する。
 High Complexity Modeにおけるコスト関数は、以下の式(67)のようになる。
 Cost(Mode∈Ω) = D + λ*R ・・・(67)
 ここで、Ωは、当該ブロック乃至マクロブロックを符号化するための候補モードの全体集合、Dは、当該予測モードModeで符号化した場合の、復号画像と入力画像の差分エネルギーである。λは、量子化パラメータの関数として与えられるLagrange未定乗数である。Rは、直交変換係数を含んだ、当該モードModeで符号化した場合の総符号量である。
 つまり、High Complexity Modeでの符号化を行うには、上記パラメータD及びRを算出するため、全ての候補モードModeにより、一度、仮エンコード処理を行う必要があり、より高い演算量を要する。
 Low Complexity Modeにおけるコスト関数は、以下の式(68)のようになる。
 Cost(Mode∈Ω) = D + QP2Quant(QP) * HeaderBit ・・・(68)
 ここで、Dは、High Complexity Modeの場合と異なり、予測画像と入力画像の差分エネルギーとなる。QP2Quant(QP) は、量子化パラメータQPの関数として与えられ、HeaderBitは、直交変換係数を含まない、動きベクトルや、モードといった、Headerに属する情報に関する符号量である。
 すなわち、Low Complexity Modeにおいては、それぞれの候補モードModeに関して、予測処理を行う必要があるが、復号化画像までは必要ないため、符号化処理まで行う必要はない。このため、High Complexity Modeより低い演算量での実現が可能である。
 ところで、4000×2000画素といった、より高解像度の画像においては、マクロブロックの大きさを、32×32画素、64×64画素といったように、拡張された大きさのマクロブロックを用いた符号化処理を行うことで、符号化効率を向上させることが可能である。非特許文献1においては、かかる方式を、イントラスライスに適用した例が提案されている。
 ところで、現在、AVCより更なる符号化効率の向上を目的として、ITU-Tと、ISO/IECの共同の標準化団体であるJCTVC(Joint Collaboration Team - Video Coding)により、HEVC(High Efficiency Video Coding)と呼ばれる符号化方式の標準化が進められている。2010年9月現在、Draftとして、"Test Model under Consideration",JCTVC-B205(以下において、非特許文献3と称する)が発行されている。
 [コーディングユニット]
 以下では、まず、HEVC符号化方式において定められている、コーディングユニット(Coding Unit)について説明する。
 Coding Unit(CU)は、Coding Tree Block(CTB)とも呼ばれ、AVCにおけるマクロブロックと同様の役割を果たす、ピクチャ単位の画像の部分領域である。後者は、16×16画素の大きさに固定されているのに対し、前者の大きさは固定されておらず、それぞれのシーケンスにおいて、画像圧縮情報中において指定されることになる。
 特に、最大の大きさを持つCUを、LCU(Largest Coding Unit)と呼び、また、最小の大きさを持つCUをSCU(Smallest Coding Unit)と称する。例えば画像圧縮情報に含まれるシーケンスパラメータセットにおいて、これらの領域のサイズが指定されることになるが、それぞれ、正方形で、2の冪乗で表される大きさに限定される。
 図14に、HEVCで定義されているコーディングユニット(Coding Unit)の例を示す。図14の例では、LCUの大きさが128であり、最大階層深度が5となる。2N×2Nの大きさのCUは、split_flagの値が「1」である時、1つ下の階層となる、N×Nの大きさのCUに分割される。
 更に、CUは、イントラ若しくはインター予測の処理単位となる領域(ピクチャ単位の画像の部分領域)であるプレディクションユニット(Prediction Unit(PU))に分割され、また、直交変換の処理単位となる領域(ピクチャ単位の画像の部分領域)である、トランスフォームユニット(Transform Unit(TU))に分割される。
 なお、以下において、「領域」には、上述した各種領域(例えば、マクロブロック、サブマクロブロック、LCU、CU、SCU、PU、およびTU等)を全て含む(それらのいずれであってもよい)。もちろん、上述した以外の単位が含まれてもよいし、説明の内容に応じて不可能な単位は、適宜、除外するものとする。
 [HEVCイントラ予測方式]
 次に、HEVCにおいて定められているイントラ予測方式について説明する。
 HEVCにおいては、イントラ予測のためのPUの単位は、4×4、8×8、16×16、32×32若しくは64×64である。
 4×4の大きさに関しては、AVCと同様のイントラ予測処理が行われる。
 8×8の大きさに関しては、後述する、Angular Predictionと呼ばれる方式に基づいてイントラ予測処理が行われる。
 16×16及び32×32及び64×64の大きさに関しては、後述するArbitrary Directional Intra(ADI)と呼ばれる方式に基づいて、イントラ予測処理が行われる。
 更に、イントラ予測を行うに先立ち、符号化効率を向上させる場合には、係数(1,2,1)によるローパスフィルタ処理が、周辺画素値に施される。施す・施さないに関する情報が、それぞれのPU毎に、画像圧縮情報中に伝送されることになる。
 以下では、HEVC符号化方式において規定されている、Angular Predictionイントラ予測方式について述べる。
 [Angular Predictionイントラ予測方式]
 図15に、Angular Predictionイントラ予測方式を説明するための図を示す。
 すなわち、Angular Predictionにおいては、図15のAに示されるような角度のイントラ予測処理を行うことが可能である。
 また、図15のAのような角度のイントラ予測を行うためには、図15のBに示されるように、周辺画素の間の画素値を用いる必要が生じるが、このため、Angular Predictionにおいては、1/8画素精度の線形内挿処理を行うことが可能となっている。
 [Arbitrary Directional Intra(ADI)イントラ予測方式]
 次に、HEVC符号化方式において規定されている、Arbitrary Directional Intra(ADI)イントラ予測方式について述べる。
 図16に、Arbitrary Directional Intra(ADI)イントラ予測方式を説明するための図を示す。
 Arbitrary Directional Intra(ADI)イントラ予測方式においては、図16のAに示されるように、左下に位置する隣接画素値も用いられる。 
 AVC符号化方式の場合と同様に、Vertical,Horizontal,DC,Diagonal Down-Left,Diagonal Down-Right,Vertical-Right,Horizontal-Down,Vertical-Left、およびHorizontal-Upの各予測モードが定義されているが、その他のモードに関しては、図16のBに示されるように、(dx,dy)を符号化情報として画像圧縮情報中に伝送される。
 [constrained_intra_pred_flag]
 ところで、例えばAVCやHEVCにおいては、インターピクチャにおいて、インター予測により再構成された画素からのイントラ予測を禁止するモードが用意されている。このモードは、インター予測の画像、若しくは、インター予測で参照する画像にエラー混入していた場合においても、そのエラーのイントラ予測への影響を抑制するためのモードである。
 例えば、シンタックスのピクチャパラメータ中にconstrained_intra_pred_flagが設けられ、その値が、「1」の場合、上述したようなモードが採用される。
 ところが、HEVCの場合、例えば、図17に示されるように、1つのLCU内に、インター予測を行うCUとイントラ予測を行うCUを混在させることが可能である。
 このような場合、constrained_intra_pred_flag=1(すなわちインター予測によって再構成された画素をイントラ予測で利用しないモード)であるとすると、イントラ予測において多くの周辺画素が参照できなくなる可能性が高い。その結果、利用できる予測モードの数が大幅に抑制され、符号化効率が低減する可能性がある。
 図18を参照して、具体的に説明する。イントラ予測の処理対象のCU(イントラ予測CU#n)が16×16画素であるとする。図18には、このCUをイントラ予測をするために必要な周辺の隣接画素と、その隣接画素が含まれる周辺CUでのインター予測・イントラ予測の状態の例が図示してある。
 周辺CUの内、A、C、D、G、H、L、およびMがインター予測されたCUであり、B、E、F、J、K、およびNがイントラ予測されたCUである。
 図18に示されるように、処理対象の領域CU#nの周辺隣接画素はインター予測された画素とイントラ予測された画素が混在している。このため、インター予測によって再構成された画素をイントラ予測で利用しないモード(constrained_intra_pred_flag=1)の場合、利用可能なイントラ予測モードがDC(平均値)予測モードのみになってしまう。しかも既存の規格では周辺画素が利用できないために画素値を固定の128で予測することになる。
 このようにHEVCのインターピクチャにおけるイントラ予測において、インター予測によって再構成された画素をイントラ予測で利用しないモード(constrained_intra_pred_flag=1)の場合、周辺のすべての画素が利用可能でないために、利用できるイントラ予測モードが大幅に制限されてしまう可能性があった。
 特にHEVCのIntra Angular Predictionではイントラ予測の予測方向が33方向とAVC等における従来のイントラ予測に比べて細かく設定することにより符号化効率の向上を目指しているため、上述の制限は符号化効率の大幅な低下を招くことになる可能性があった。
 これに対して、constrained_intra_pred_flag=1の場合のインターピクチャでのイントラ予測において、図18のような周辺画素の構成になっていた場合に、以下の式でインター予測から構成される周辺画素値を計算する方法が、非特許文献2に開示されている。
 例えば、
 PT:インター予測から構成される周辺画素領域
 PRA:PTの右もしくは上に隣接するイントラ予測から構成される画素
 PLD:PTの左もしくは下に隣接するイントラ予測から構成される画素
 とする。
 領域PTの左右もしくは上下両方に隣接するイントラ予測から構成される画素が存在する場合、以下の式(69)のように、インター予測画素から構成される周辺画素をイントラ予測から構成される画素から計算し、周辺画素をすべて利用可能な状態にしてイントラ予測を行う。
 PT=(PRA+PLD+1) >> 1 ・・・(69)
 また、左右もしくは上下のうち一方に隣接するイントラ予測から構成される画素しか存在しない場合、以下の式(70)のように、インター予測画素から構成される周辺画素をイントラ予測から構成される画素から計算し、周辺画素をすべて利用可能な状態にしてイントラ予測を行う。
 PT=PRA     若しくは PT=PLD ・・・(70)
 図18の例の場合、P[8,-1]乃至P[15,-1]は、以下の式(71)のように算出される値に置き換え、利用可能な状態とする。
 PT=(P[7,-1]+P[16,-1]+1) >> 1 ・・・(71)
 また、P(24,-1)乃至P(31,-1)は、以下の式(72)のように算出される値に置き換え、利用可能な状態とする。
 PT=P[23,-1] ・・・(72)
 しかしながら、この方法の場合、単純な線形補間計算により置き換えが行われるため、置き換えられる値が置き換える前の値と大きく異なってしまう可能性がある。特に、PTの領域が大きい場合、その誤差はより顕著になる可能性が高くなる。
 また、置き換える値を算出するのに用いられる画素値が、最大2画素のみであるため、算出結果は、その画素値に大きく影響され易い。したがって、置き換えられる値が置き換える前の値と大きく異なってしまう可能性がある。
 そこで、イントラ予測部113は、インター予測が採用される領域に対して、constrained_intra_pred_flag=1の場合、そのインター予測結果の代わりに、イントラ予測結果を保持し、そのイントラ予測結果を、その領域より時間的に後に処理される領域に対するイントラ予測において、周辺画素の画素値として利用する。
 なお、このconstrained_intra_pred_flagは、シーケンスパラメータセットやピクチャパラメータセットに含められて、ビットストリームとして復号側に伝送される。
 [イントラ予測部]
 図19は、図1のイントラ予測部113の主な構成例を示すブロック図である。
 図19に示されるように、イントラ予測部113は、周辺画素バッファ131、候補予測画像生成部132、コスト関数値算出部133、予測モード判定部134、PUサイズ判定部135、および、符号化用予測画像生成部136を有する。また、イントラ予測部113は、制御部141および周辺用予測画像生成部142をさらに有する。
 周辺画素バッファ131は、処理対象とする領域の周辺画素として利用される画素値を記憶する。例えば、周辺画素バッファ131は、演算部110から供給される再構成画像の画素値(再構成画素)を記憶する。また、例えば、周辺画素バッファ131は、周辺用予測画像生成部142が生成する予測画像の画素値(予測画素値)を記憶する。これらの画素値は、周辺画素バッファ131が記憶する時点では、処理対象の領域の画素値である。
 周辺画素バッファ131は、その領域よりも時間的に後に処理される他の領域に対するイントラ予測において、記憶している画素値を、周辺画素の画素値(周辺画素値)として、候補予測画像生成部132、符号化用予測画像生成部136、および周辺用予測画像生成部142に供給する。つまり、周辺画素バッファ131は、処理対象の領域のイントラ予測において、周辺画素値を提供する。
 図18の例の場合、周辺画素バッファ131は、領域Aが処理対象であるときに、領域Aの左端と下端の各画素の画素値を記憶する。領域B乃至領域Nについても同様であり、周辺画素バッファ131は、各領域を処理対象とするときに、各領域の左端と下端の各画素の画素値を記憶する。
 その際、領域B、E、F、J、K、およびNは、イントラ予測が選択される領域であるので、周辺画素バッファ131は、演算部110から供給される再構成画素を記憶する。これに対して、領域A、C、D、G、H、L、およびMは、インター予測が選択される領域であるので、周辺画素バッファ131は、周辺用予測画像生成部142がイントラ予測を用いて生成した予測画素値を記憶する。
 そして、領域CU#nを処理対象とするイントラ予測において、周辺画素バッファ131は、必要に応じて、画素P[-1,-1]乃至画素P[31,-1]、並びに、画素P[-1,-1]乃至画素P[-1,31]の一部または全部を、候補予測画像生成部132、符号化用予測画像生成部136、および周辺用予測画像生成部142に供給する。
 候補予測画像生成部132は、周辺画素バッファ131から周辺画素値を取得し、その周辺画素値を用いて、処理対象の領域(CU)について全てのモードでイントラ予測を行い、各モードの予測画像を生成する。つまり、候補予測画像生成部132は、全てのPUサイズのそれぞれについて、全ての予測モード(予測方向)で予測画像を生成し、予測画像の候補(候補予測画像)を生成する。候補予測画像生成部132は、その予測画像の画素値(予測画像画素値)をコスト関数値算出部133に供給する。
 コスト関数値算出部133は、候補予測画像生成部132から予測画像画素値を取得するとともに、画面並べ替えバッファ102から入力画像画素値を取得する。コスト関数値算出部133は、これらの画素値から、全てのモード(全てのPUサイズの、全ての予測モード(予測方向))について、入力画像と予測画像の差分画像を生成し、その差分画像のコスト関数値を算出する。コスト関数値算出部133は、算出した全てのモードのコスト関数値を予測モード判定部134に供給する。
 予測モード判定部134は、コスト関数値算出部133から取得したコスト関数値に基づいて、PUサイズ毎に最適な予測モード(予測方向)を決定する。例えば予測モード判定部134は、コスト関数値算出部133から取得したコスト関数値群のうち、最も値の小さいものをPUサイズ毎に選択し、そのコスト関数値に対応する予測モード(予測方向)を、そのPUサイズの最適な予測モード(最適モード)と判定する。予測モード判定部134は、以上のように決定した各PUサイズの最適モード(最適な予測方向)のコスト関数値をPUサイズ判定部135に供給する。
 PUサイズ判定部135は、予測モード判定部134から各PUサイズの最適モードのコスト関数値を取得し、それらのコスト関数値を用いて、最適なPUサイズ(最適PUサイズ)を判定する。その判定結果に基づいて、PUサイズ判定部135は、最適PUサイズと判定されたPUサイズの最適モードを示す情報(最適PUサイズ予測モード)を符号化用予測画像生成部136に供給する。
 符号化用予測画像生成部136は、PUサイズ判定部135から供給される最適PUサイズ予測モードを取得すると、そのPUサイズに対応する周辺画素値を、周辺画素バッファ131から取得する。符号化用予測画像生成部136は、その周辺画素値を用いて、PUサイズ判定部135から取得した最適PUサイズ予測モードにより示されるPUサイズおよび予測モード(予測方向)で、符号化用の予測画像を生成する。符号化用予測画像生成部136は、生成した符号化用の予測画像の画素値(予測画像画素値)を予測画像選択部115に供給する。この予測画像は、上述したように、予測画像選択部115によりイントラ予測が選択されると、演算部103に供給され、入力画像との差分が算出され、その差分画像が符号化される。
 また、符号化用予測画像生成部136は、その最適PUサイズ予測モードである当該PUサイズの予測モード(予測方向)を示す情報(当該PUサイズ予測モード)を含むイントラ予測情報を可逆符号化部106に供給する。このイントラ予測情報(当該PUサイズ予測モード)は、ビットストリームの所定の位置に付加され、復号側に伝送される。なお、この符号化用予測画像生成部136は、制御部141の制御に従って動作する。
 制御部141は、予測画像選択部115から、イントラ予測が選択されたか、若しくは、インター予測が選択されたかを示す予測選択情報を取得する。制御部141は、その情報と、constrained_intra_pred_flagの値に基づいて、符号化用予測画像生成部136および周辺用予測画像生成部142の動作を制御する。
 例えば、予測画像選択部115がイントラ予測を選択した場合、制御部141は、符号化用予測画像生成部136に対して、イントラ予測情報(当該PUサイズ予測モード)を出力させるように指示するイントラ予測情報出力指示を供給する。符号化用予測画像生成部136は、その出力指示に従って、当該PUサイズ予測モードを含むイントラ予測情報を可逆符号化部106に出力し、ビットストリームに付加させる。
 また、例えば、制御部141は、予測画像選択部115がインター予測を選択し、かつ、constrained_intra_pred_flag=0である場合、符号化用予測画像生成部136および周辺用予測画像生成部142が動作しないように制御する。
 さらに、例えば、制御部141は、予測画像選択部115がインター予測を選択し、かつ、constrained_intra_pred_flag=1である場合、動き予測・補償部114から、最適モードとして採用されたインター予測モードに関する情報であるインター予測情報を取得する。制御部141は、その情報に基づいて、周辺画素を得るための予測画像を生成するイントラ予測のPUサイズと予測モード(予測方向)を決定し、それらを示す情報を、周辺用予測画像生成部142に供給する。
 周辺用予測画像生成部142は、制御部141から通知されるPUサイズと予測モード(予測方向)に対応する周辺画素値を周辺画素バッファ131から取得する。周辺用予測画像生成部142は、その周辺画素値を用いて、制御部141から通知されるPUサイズと予測モード(予測方向)でイントラ予測を行い、予測画像を生成する。周辺用予測画像生成部142は、生成した予測画像の画素値(予測画素値)を周辺画素バッファ131に供給し、保持させる。
 つまり、周辺用予測画像生成部142は、イントラ予測によって、周辺画素値として利用する画素値を得るための予測画像を生成する。すなわち、constrained_intra_pred_flag=1である場合、周辺用予測画像生成部142は、インター予測が選択された領域において、動き予測・補償部114において作成されたインター予測画像から生成された再構成画像に置き換える予測画像を、イントラ予測により生成する。
 図18の例において、constrained_intra_pred_flag=1であるとすると、領域A、C、D、G、H、L、およびMにおいて、周辺用予測画像生成部142が、予測画素値を生成し、周辺画素バッファ131に供給し、演算部110において得られる再構成画素値の代わりに記憶させる。
 このようにすることにより、イントラ予測部113は、constrained_intra_pred_flagの値が1であることによって利用不可能となるインター予測の領域の周辺画素値を、イントラ予測の画素値に置き換えることができる。つまり、イントラ予測部113は、constrained_intra_pred_flagの値が1であっても、インター予測の領域の周辺画素値を利用することができるようにすることができる。したがって、イントラ予測部113は、利用可能なイントラ予測モードの数の低減を抑制することができ、符号化効率を向上させることができる。
 その際、イントラ予測部113は、上述したように、インター予測の領域の周辺画素値を、イントラ予測によって精度良く予測することができる。つまり、イントラ予測部113は、利用不可能なインター予測の領域の画素を、より精度の高い画素を用いて置き換えることができる。これにより、イントラ予測部113は、利用可能なイントラ予測モードをさらに増大させ、符号化効率を向上させることができる。
 なお、constrained_intra_pred_flag=1であっても、インター予測が選択されたときは、フレームメモリ112に格納される復号画像は、インター予測画像から生成される。つまり、インター予測に用いられる参照画像は、このフラグの値に関わらず、インター予測画像から生成される。
 [制御部]
 図20は、図19の制御部141の主な構成例を示すブロック図である。図20に示されるように、制御部141は、予測方法判定部151、イントラ予測情報出力指示部152、動き予測情報取得部153、予測モード決定部154、および周辺用予測画像生成指示部155を有する。
 予測方法判定部151は、予測画像選択部115から予測選択情報を取得し、その情報に基づいて、採用された予測方法(インター予測かイントラ予測か)を判定する。また、予測方法判定部151は、constrained_intra_pred_flagの値も判定する。予測画像選択部115によりイントラ予測の予測画像が選択されたと判定した場合、予測方法判定部151は、constrained_intra_pred_flagの値に関わらず、その判定結果をイントラ予測情報出力指示部152に供給する。この場合、符号化用予測画像生成部136により、イントラ予測情報(当該PUサイズ予測モード等)が生成され、可逆符号化部106に供給され、ビットストリームに付加される。
 また、例えば、予測画像選択部115によりインター予測の予測画像が選択され、かつ、constrained_intra_pred_flag=0であると判定した場合、予測方法判定部151は、判定結果の供給を行わず、イントラ予測情報の出力も、周辺用予測画像の生成も行わせないように制御する。この場合、周辺画素バッファ131には、演算部110から供給される再構成画素値(インター予測により生成された予測画像の再構成画像)が記憶される。
 さらに、例えば、予測画像選択部115によりインター予測の予測画像が選択され、かつ、constrained_intra_pred_flag=1であると判定した場合、予測方法判定部151は、その判定結果を動き予測情報取得部153に供給する。この場合、周辺用予測画像生成部142により、周辺画素値として利用される予測画像がイントラ予測により生成され、周辺画素バッファ131に記憶される。
 イントラ予測情報出力指示部152は、予測方法判定部151から、予測画像選択部115によってイントラ予測が選択されたことを通知されると、当該PUサイズ予測モードを含むイントラ予測情報を出力するように指示するイントラ予測情報出力指示を生成し、それを符号化用予測画像生成部136に供給する。このイントラ予測情報出力指示を受け取ると符号化用予測画像生成部136は、予測画像選択部115に供給した予測画像についての当該PUサイズ予測モードを含むイントラ予測情報を生成し、それを可逆符号化部106に供給し、ビットストリームに付加させる。
 動き予測情報取得部153は、予測方法判定部151から、予測画像選択部115によってインター予測が選択され、かつ、constrained_intra_pred_flag=1であることを通知されると、動き予測・補償部114から、その選択されたインター予測画像のPUサイズやインター予測モードに関する情報を含むインター予測情報を取得する。動き予測情報取得部153は、取得したインター予測情報を予測モード決定部154に供給する。
 予測モード決定部154は、動き予測情報取得部153からインター予測情報を取得し、そのインター予測情報に基づいて、周辺画素を得るための予測画像を生成する際のイントラ予測のPUサイズと予測モード(予測方向)を決定する。PUサイズは、基本的に、インター予測のPUサイズと同一に設定される。予測モード(予測方向)は、任意の方法で決定することができる。
 例えば、予測モード決定部154が、イントラ予測の予測モード(予測方向)を、インター予測モードに関わらず、常に、平均値(DC)予測とするようにしてもよい。
 また、例えば、予測モード決定部154が、イントラ予測の予測モード(予測方向)を、直前に行われたイントラ予測の予測モード(予測方向)とするようにしてもよい。ただし、この場合、周辺画素の利用可能状況等により、直前に行われたイントラ予測の予測モード(予測方向)を当該領域において再利用することができない場合が考えられる。例えば、スライス端や画面端等において、直前に行われたイントラ予測の際には無かった予測モード(予測方向)の制限が発生する場合が考えられる。このような場合、予測モード決定部154が、イントラ予測の予測モード(予測方向)を平均値(DC)予測とするようにしてもよい。
 さらに、例えば、予測モード決定部154が、インター予測の動きベクトルを用いてイントラ予測の予測モード(予測方向)を算出するようにしてもよい。例えば、予測モード決定部154が、動きベクトルの単位ベクトルと予測モード(予測方向)の単位ベクトルとの内積を求め、その値が最大となる予測モード(予測方向)を採用するようにしてもよい。
 より具体的に説明すると、予測モード決定部154は、まず、インター予測ブロックの動きベクトルvを用いて単位ベクトルeを、以下の式(73)のように算出する。
 e=v/|v| ・・・(73)
 (ただし、|v|は、動きベクトルvの長さ)
 次に、予測モード決定部154は、平均値(DC)予測、Plane予測以外のイントラ予測の予測方向のベクトルをaとして、その単位ベクトルeaiを、以下の式(74)のように算出する。
 eai=a/|a| ・・・(74)
 (ただし、|a|は、動きベクトルaの長さ)
 そして、予測モード決定部154は、単位ベクトルeと単位ベクトルeaiの内積Paiを算出する(式(75))。
 Pai=<e,eai> ・・・(75)
 予測モード決定部154は、利用可能な予測モード(予測方向)の中で、このような内積Paiの値が最大となるベクトルaに対応する予測モード(予測方向)を、イントラ予測の予測モード(予測方向)として決定する。なお、周辺画素の利用状況等からイントラ予測として利用可能な予測モード(予測方向)が存在しない場合、予測モード決定部154が、イントラ予測の予測モード(予測方向)を平均値(DC)予測とするようにしてもよい。
 また、予測モード決定部154が、全ての予測モード(予測方向)について式(75)のように内積Paiを算出し、その中で内積Paiが最大となる予測モード(予測方向)を決定するようにしてもよい。そして、予測モード決定部154が、その予測モード(予測方向)が周辺の隣接画素の利用可能状況により利用可能であるか否かを判定し、その予測モード(予測方向)が利用不可であった場合、イントラ予測の予測モード(予測方向)を平均値(DC)予測とするようにしてもよい。
 さらに、例えば、予測モード決定部154が、予測イントラ予測の予測モード(予測方向)を、処理対象の領域の左若しくは上に隣接する領域、または、処理対象の領域の左上に位置する領域の内、イントラ予測で符号化されている領域の予測モード(予測方向)と同じものとするようにしてもよい。
 図18を参照してより具体的に説明すると、CU#nを処理対象の領域とすると、この領域の左若しくは上に隣接する領域、または左上に位置する領域の中でイントラ予測された領域は、領域B、J、およびKである。
 予測モード決定部154は、これらの領域の予測モード(予測方向)の内、CU#nのイントラ予測において利用可能な予測モード(予測方向)を、CU#nのイントラ予測の予測モード(予測方向)として採用する。なお、CU#nのイントラ予測において利用可能な予測モード(予測方向)が存在しない場合、予測モード決定部154は、CU#nのイントラ予測の予測モード(予測方向)として平均値(DC)予測を採用する。また、CU#nのイントラ予測において利用可能な予測モード(予測方向)が複数存在する場合、予測モード決定部154は、所定の方法で、その中から1つを選択する。
 例えば、予測モード決定部154が、処理対象の領域(CU#n)の左に隣接するイントラ予測された領域の中で、一番上に位置する領域の予測モードを優先して選択するようにしてもよい。また、例えば、予測モード決定部154が、処理対象の領域(CU#n)の上に隣接するイントラ予測された領域の中で、一番左に位置する領域の予測モードを優先して選択するようにしてもよい。
 また、例えば、予測モード決定部154が、予測イントラ予測の予測モード(予測方向)の決定において、全ての予測モードの中からではなく、一部のモードの中から選択し、決定するようにしてもよい。
 例えば、予測モード決定部154が、予測イントラ予測の予測モード(予測方向)を、上述した各種方法によって決定するが、全ての予測モードを候補とするのではなく、予め定められた一部の予測モードのみを候補とするようにしてもよい。例えば、垂直方向予測(Intra_Vertical)、水平方向予測(Intra_Horizontal)、および平均値(DC)予測のみを候補とするようにしてもよい。この場合、予測モード決定部154は、上述した各種方法のいずれかと同様の方法で、この中からいずれか1つを選択する。
 このように予測モード(予測方向)の候補の数を抑制することにより、この予測モード(予測方向)の決定のための処理量を低減させることができる。
 予測モード決定部154は、決定したイントラ予測のPUサイズと予測モード(予測方向)を周辺用予測画像生成指示部155に供給する。
 周辺用予測画像生成指示部155は、周辺画素を得るための予測画像を生成するように指示する周辺用予測画像生成指示を、予測モード決定部154から指定されるPUサイズおよび予測モード(予測方向)とともに、周辺用予測画像生成部142に供給する。
 この周辺用予測画像生成指示を受けた周辺用予測画像生成部142は、指定されるPUサイズおよび予測モード(予測方向)によってイントラ予測を行い、予測画像を生成する。この予測画像の左端の画素群と下端の画素群が周辺画素値として周辺画素バッファ131に記憶される。つまり、インター予測される領域の周辺画素値が、このイントラ予測された予測画像の画素値で置き換えられる。
 以上のように、制御部141は、予測画像選択部115の選択結果とconstrained_intra_pred_flagの値に基づいて各部を制御する。これにより、イントラ予測部113は、constrained_intra_pred_flagの値が1であることによって利用不可能となるインター予測の領域の周辺画素値を、イントラ予測の画素値に置き換えることができる。つまり、イントラ予測部113は、利用可能なイントラ予測モードの数の低減を抑制することができ、符号化効率を向上させることができる。
 [符号化処理の流れ]
 次に、以上のような画像符号化装置100により実行される各処理の流れについて説明する。最初に、図21のフローチャートを参照して、符号化処理の流れの例を説明する。
 ステップS101において、A/D変換部101は入力された画像をA/D変換する。ステップS102において、画面並べ替えバッファ102は、A/D変換された画像を記憶し、各ピクチャの表示する順番から符号化する順番への並べ替えを行う。
 ステップS103において、イントラ予測部113、動き予測・補償部114、および予測画像選択部115は、予測処理を行い、予測画像を生成する。
 ステップS104において、演算部103は、ステップS102の処理により並び替えられた画像と、ステップS103の処理により生成された予測画像との差分を演算する(差分画像を生成する)。生成された差分画像は元の画像に較べてデータ量が低減される。したがって、画像をそのまま符号化する場合に較べて、データ量を圧縮することができる。
 ステップS105において、直交変換部104は、ステップS104の処理により生成された差分画像を直交変換する。具体的には、離散コサイン変換、カルーネン・レーベ変換等の直交変換が行われ、直交変換係数が出力される。ステップS106において、量子化部105は、ステップS105の処理により得られた直交変換係数を量子化する。
 ステップS106の処理により量子化された差分画像は、次のようにして局部的に復号される。すなわち、ステップS107において、逆量子化部108は、ステップS106の処理により生成された量子化された直交変換係数(量子化係数とも称する)を量子化部105の特性に対応する特性で逆量子化する。ステップS108において、逆直交変換部109は、ステップS107の処理により得られた直交変換係数を、直交変換部104の特性に対応する特性で逆直交変換する。これにより再構成画像が得られる。
 ステップS109において、演算部110は、ステップS103において生成された予測画像を、ステップS108において生成された再構成画像に加算し、局部的に復号された復号画像(演算部103への入力に対応する画像)を生成する。ステップS110において、イントラ予測部113の周辺画素バッファ131は、ステップS109において生成された再構成画像を記憶する。なお、ステップS103の処理によりインター予測が選択され、かつ、constrained_intra_pred_flag=1の領域については、この再構成画像は、イントラ予測部113がイントラ予測により生成した予測画像によって置き換えられる。したがって、このような領域については、ステップS110の処理を省略するようにしてもよい。
 ステップS111において、ループフィルタ411は、ステップS109の処理により得られた再構成画像に対して、デブロックフィルタ処理や適応ループフィルタ処理等を含むループフィルタ処理を適宜行い、復号画像を生成する。
 ステップS112において、フレームメモリ112は、ステップS111の処理により生成された復号画像を記憶する。
 ステップS113において、可逆符号化部106は、ステップS106の処理により量子化された直交変換係数を符号化する。すなわち、差分画像に対して、可変長符号化や算術符号化等の可逆符号化が行われる。なお、可逆符号化部106は、予測に関する情報や、量子化に関する情報等を符号化し、ビットストリームに付加する。
 ステップS114において、蓄積バッファ107は、ステップS113の処理により得られたビットストリームを蓄積する。蓄積バッファ107に蓄積された符号化データは、適宜読み出され、伝送路や記録媒体を介して復号側に伝送される。
 ステップS115においてレート制御部116は、ステップS114の処理により蓄積バッファ107に蓄積された符号化データの符号量(発生符号量)に基づいて、オーバーフローあるいはアンダーフローが発生しないように、量子化部105の量子化動作のレートを制御する。
 ステップS115の処理が終了すると、符号化処理が終了される。
 [予測処理の流れ]
 次に、図23のフローチャートを参照して、図21のステップS103において実行される予測処理の流れの例を説明する。
 ステップS131において、イントラ予測部113は、イントラ予測処理を行い、予測画像を生成する。ステップS132において、動き予測・補償部114は、インター予測処理を行い、予測画像を生成する。ステップS133において、予測画像選択部115は、ステップS131において生成された予測画像、および、ステップS132において生成された予測画像の内、いずれか一方を選択する。
 ステップS134において、イントラ予測部113は、ステップS133においてインター予測(の予測画像)が選択されたか否かを判定する。インター予測が選択されたと判定された場合、動き予測・補償部114は、ステップS135において、インター予測に関する情報であるインター予測情報を生成し、可逆符号化部106に出力する。
 ステップS135の処理が終了すると、動き予測・補償部114は、処理をステップS136に進める。また、ステップS134において、イントラ予測が選択されたと判定された場合、イントラ予測部113は、処理をステップS136に進める。
 ステップS136において、イントラ予測部113は、周辺画素を得るための予測画像を生成する等のイントラ予測関連処理を行う。
 ステップS136の処理を終了すると、イントラ予測部113は、予測処理を終了し、処理を図21に戻す。
 [イントラ予測処理の流れ]
 次に、図23のフローチャートを参照して、図22のステップS131において実行されるイントラ予測処理の流れの例を説明する。
 イントラ予測処理が開始されると、イントラ予測部113の候補予測画像生成部132は、周辺画素バッファ131に記憶される周辺画素を用いて、全てのPUサイズの、全ての予測モード(予測方向)についての候補予測画像を生成する。
 ステップS152において、コスト関数値算出部133は、入力画素値を用いて、全てのPUサイズの、全ての候補予測モードに関するコスト関数値を算出する。ステップS153において、予測モード判定部134は、ステップS152において算出されたコスト関数値に基づいて、各PUサイズにおける、最適な予測モード(予測方向)を選択する。ステップS154において、PUサイズ判定部135は、ステップS152において算出されたコスト関数値に基づいて、最適なPUサイズを選択する。
 ステップS155において、符号化用予測画像生成部136は、ステップS153およびステップS154において選択された最適なPUサイズおよび予測モード(予測方向)でイントラ予測を行い、予測画像を生成する。
 ステップS156において、符号化用予測画像生成部136は、ステップS155において生成した予測画像を予測画像選択部115に出力する。ステップS156の処理が終了すると、符号化用予測画像生成部136は、イントラ予測処理を終了し、処理を図22に戻す。
 [イントラ予測関連処理の流れ]
 次に、図24のフローチャートを参照して、図22のステップS136において実行されるイントラ予測関連処理の流れの例を説明する。
 イントラ予測関連処理が開始されると、ステップS171において、制御部141の予測方法判定部151は、予測選択情報に基づいて、図22のステップS133においてインター予測が選択されたか否かを判定する。インター予測が選択されたと判定された場合、予測方法判定部151は、処理をステップS172に進める。
 ステップS172において、予測方法判定部151は、constrained_intra_pred_flagの値が1であるか否かを判定する。constrained_intra_pred_flagの値が1であると判定された場合、予測方法判定部151は、処理をステップS173に進める。
 ステップS173において、動き予測情報取得部153は、動き予測・補償部114から、図22のステップS133において選択されたインター予測の予測画像に関するインター予測情報を取得する。
 ステップS174において、予測モード決定部154は、ステップS173において取得されたインター予測情報に含まれるインター予測のPUサイズ等に基づいて、周辺画素を得るためのイントラ予測のPUサイズを決定する。
 ステップS175において、予測モード決定部154は、ステップS173において取得されたインター予測情報に含まれるインター予測の予測モード等に基づいて、周辺画素を得るためのイントラ予測の予測モードを決定する。
 ステップS176において、周辺用予測画像生成指示部155は、ステップS174において決定されたPUサイズ、および、ステップS175において決定された予測モードで、周辺画素を得るためのイントラ予測を実行するように指示を行う。周辺用予測画像生成部142は、その指示に従ってイントラ予測を行い、予測画像を生成する。
 ステップS177において、周辺画素バッファ131は、ステップS176において生成された予測画像に含まれる、周辺画素として利用可能な予測画素を記憶する。つまり、周辺画素バッファ131は、この場合、インター予測された領域についても、イントラ予測の予測画素を周辺画素として記憶する。この場合、周辺画素バッファ131は、図21のステップS110において記憶される再構成画素を、この予測画素により置き換えるようにしてもよいし、図21のステップS110の処理を省略するようにしてもよい。ステップS、177の処理が終了すると、周辺画素バッファ131は、イントラ予測関連処理を終了し、処理を図22に戻す。
 また、ステップS172において、constrained_intra_pred_flagの値が0であると判定された場合、予測方法判定部151は、イントラ予測関連処理を終了し、処理を図22に戻す。
 さらに、ステップS171において、イントラ予測が選択されたと判定された場合、予測方法判定部151は、処理をステップS178に進める。
 ステップS178において、イントラ予測情報出力指示部152は、図22のステップS133において選択されたイントラ予測の予測画像に関するイントラ予測情報を出力するように、符号化用予測画像生成部136に指示する。符号化用予測画像生成部136は、その指示に従って、イントラ予測情報を可逆符号化部106に供給し、ビットストリームに付加させる。
 ステップS178の処理が終了すると、符号化用予測画像生成部136は、イントラ予測関連処理を終了し、処理を図22に戻す。
 [予測モード決定処理の流れ]
 図24のステップS175における予測モード(予測方向)の決定は、任意の方法で行うようにしてもよい。
 例えば、予測モード決定部154が、イントラ予測の予測モード(予測方向)を、インター予測モードに関わらず、常に、平均値(DC)予測とするようにしてもよい。
 図25のフローチャートを参照して、その場合に、図24のステップS175において実行される予測モード決定処理の流れの例を説明する。
 予測モード決定処理が開始されると、予測モード決定部154は、ステップS201において、イントラ予測の予測モードを平均値(DC)予測に決定する。ステップS201の処理が終了すると、予測モード決定部154は、予測モード決定処理を終了し、処理を図24に戻す。
 また、例えば、予測モード決定部154が、イントラ予測の予測モード(予測方向)を、直前に行われたイントラ予測の予測モード(予測方向)とし、直前に行われたイントラ予測の予測モード(予測方向)を当該領域において再利用することができない場合、イントラ予測の予測モード(予測方向)を平均値(DC)予測とするようにしてもよい。
 図26のフローチャートを参照して、その場合に、図24のステップS175において実行される予測モード決定処理の流れの例を説明する。
 予測モード決定処理が開始されると、予測モード決定部154は、ステップS211において、直前に行われたイントラ予測の予測モード(予測方向)を利用可能であるか否かを判定する。利用可能であると判定した場合、予測モード決定部154は、処理をステップS212に進める。 
 ステップS212において、予測モード決定部154は、イントラ予測の予測モード(予測方向)を、直前に行われたイントラ予測の予測モード(予測方向)に決定し、予測モード決定処理を終了し、処理を図24に戻す。
 また、ステップS211において、直前に行われたイントラ予測の予測モード(予測方向)を利用不可能であると判定された場合、予測モード決定部154は、処理をステップS213に進める。
 ステップS213において、予測モード決定部154は、イントラ予測の予測モードを平均値(DC)予測に決定し、予測モード決定処理を終了し、処理を図24に戻す。
 さらに、例えば、予測モード決定部154が、インター予測の動きベクトルの単位ベクトルと、イントラ予測の予測モード(予測方向)の単位ベクトルとの内積を算出し、その内積が最大となる予測モード(予測方向)を採用するようにしてもよい。
 図27のフローチャートを参照して、その場合に、図24のステップS175において実行される予測モード決定処理の流れの例を説明する。
 予測モード決定処理が開始されると、予測モード決定部154は、ステップS221において、処理対象の領域において利用可能な予測モードが存在するか否かを判定する。存在すると判定された場合、予測モード決定部154は、処理をステップS222に進める。
 ステップS222において、予測モード決定部154は、インター予測の動きベクトルの単位ベクトルと、イントラ予測の、利用可能な予測モード(予測方向)の単位ベクトルとの内積を求める。
ステップS223において、予測モード決定部154は、イントラ予測の予測モード(予測方向)を、ステップS222において算出した内積が最大となる予測モードに決定し、予測モード決定処理を終了し、処理を図24に戻す。
 また、ステップS221において、利用可能な予測モード(予測方向)が存在しないと判定された場合、予測モード決定部154は、処理をステップS224に進める。
 ステップS224において、予測モード決定部154は、イントラ予測の予測モードを平均値(DC)予測に決定し、予測モード決定処理を終了し、処理を図24に戻す。
 また、予測モード決定部154が、全ての予測モード(予測方向)について内積を算出し、その中で内積が最大となる予測モード(予測方向)を選択し、その予測モード(予測方向)が利用可能であった場合、その予測モード(予測方向)をイントラ予測の予測モード(予測方向)として決定し、その予測モード(予測方向)が利用不可能であった場合、イントラ予測の予測モード(予測方向)を平均値(DC)予測とするようにしてもよい。
 図28のフローチャートを参照して、その場合に、図24のステップS175において実行される予測モード決定処理の流れの例を説明する。
 予測モード決定処理が開始されると、予測モード決定部154は、ステップS231において、イントラ予測の全ての予測モード(予測方向)について、インター予測の動きベクトルの単位ベクトルと、イントラ予測の各予測モード(予測方向)の単位ベクトルとの内積を求める。
 ステップS232において、予測モード決定部154は、ステップS231において算出した内積が最大となる予測モードを選択する。
 ステップS233において、予測モード決定部154は、選択された予測モードが当該領域において利用可能であるか否かを判定する。利用可能であると判定した場合、予測モード決定部154は、ステップS234において、イントラ予測の予測モードを、選択された予測モードに決定し、予測モード決定処理を終了し、処理を図24に戻す。
 また、ステップS233において、利用不可能であると判定した場合、予測モード決定部154は、ステップS235において、イントラ予測の予測モードを平均値(DC)予測に決定し、予測モード決定処理を終了し、処理を図24に戻す。
 さらに、例えば、予測モード決定部154が、予測イントラ予測の予測モード(予測方向)を、処理対象の領域の左若しくは上に隣接する領域、または、処理対象の領域の左上に位置する領域の内、イントラ予測で符号化されている領域の予測モード(予測方向)と同じものとするようにしてもよい。
 図29のフローチャートを参照して、その場合に、図24のステップS175において実行される予測モード決定処理の流れの例を説明する。
 予測モード決定処理が開始されると、予測モード決定部154は、ステップS241において、当該領域の上若しくは左に隣接するイントラ予測の領域、または、当該領域の左上に位置するイントラ予測の領域が存在するか否かを判定する。存在すると判定された場合、予測モード決定部154は、処理をステップS242に進める。
 ステップS242において、予測モード決定部154は、ステップS241の条件に該当する領域が複数存在するか否かを判定する。複数存在すると判定された場合、予測モード決定部154は、処理をステップS243に進める。
 ステップS243において、予測モード決定部154は、ステップS241の条件に該当する領域が、当該領域の左若しくは左上に存在するか否かを判定する。存在すると判定された場合、予測モード決定部154は、処理をステップS244に進める。
 ステップS244において、予測モード決定部154は、イントラ予測の予測モード(予測方向)を、当該領域の左若しくは左上に位置し、かつ、1番上に位置するイントラ予測の領域の予測モードに決定し、予測モード決定処理を終了し、処理を図24に戻す。
 また、ステップS243において、ステップS241の条件に該当する領域が、当該領域の左若しくは左上に存在しないと判定された場合、予測モード決定部154は、処理をステップS245に進める。
 ステップS245において、予測モード決定部154は、イントラ予測の予測モード(予測方向)を、当該領域の上若しくは左上に位置し、かつ、1番左に位置するイントラ予測の領域の予測モードに決定し、予測モード決定処理を終了し、処理を図24に戻す。
 また、ステップS242において、ステップS241の条件に該当する領域が複数存在しないと判定された場合、予測モード決定部154は、処理をステップS246に進める。
 ステップS246において、予測モード決定部154は、イントラ予測の予測モード(予測方向)を、ステップS241の条件に該当する唯一の領域の予測モードに決定し、予測モード決定処理を終了し、処理を図24に戻す。
 また、ステップS241において、条件に該当する領域が存在しないと判定された場合、予測モード決定部154は、処理をステップS247に進め、予測の予測モードを平均値(DC)予測に決定し、予測モード決定処理を終了し、処理を図24に戻す。
 なお、図29のフローチャートは、処理対象の領域の左若しくは左上に位置するイントラ予測された領域の中で、一番上に位置する領域の予測モードを優先して選択する場合の例を説明するものである。ただし、ステップS241の条件に該当する領域が複数存在する場合の、予測モードを選択する領域の優先順は、任意であり、この例に限らない。
 例えば、上述したように、処理対象の領域の上若しくは左上に位置するイントラ予測された領域の中で、一番左に位置する領域の予測モードが優先して選択されるようにしてもよい。その場合、ステップS243において、ステップS241の条件に該当する領域が処理対象の領域の上若しくは左上に存在するか否かが判定され、存在する場合、ステップS245の処理が行われ、存在しない場合、ステップS244の処理が行われるようにすればよい。
 優先順がその他の場合であっても、これらの手順と基本的に同様であり、予測モード決定部154が、より優先する位置の領域を探索し、その領域の予測モードを、イントラ予測の予測モードとして選択するようにすればよい。
 また、例えば、予測モード決定部154が、予測イントラ予測の予測モード(予測方向)の決定において、全ての予測モードの中からではなく、一部のモードの中から選択し、決定するようにしてもよい。その場合、任意の予測モード決定方法(例えば、上述した各種の方法)において、候補とする予測モードを予め制限すればよい(候補を少なくすればよい)。
 図30のフローチャートを参照して、その場合に、図24のステップS175において実行される予測モード決定処理の流れの例を説明する。
 予測モード決定処理が開始されると、ステップS251において、予測モード決定部154は、予め定められた設定に従って、イントラ予測の予測モードの候補とする予測モードの種類を制限する。
 ステップS252において、予測モード決定部154は、任意の予測モード決定方法(例えば、上述した各種の方法)によって、制限された候補の中から、イントラ予測の予測モードを決定し、予測モード決定処理を終了し、処理を図24に戻す。
 以上のように各種処理を行うことにより、画像符号化装置100は、constrained_intra_pred_flagの値が1であっても、利用可能なイントラ予測モードの数の低減を抑制することができ、符号化効率を向上させることができる。
 [当該領域のサイズ制限]
 なお、当該領域内のPUサイズが所定のサイズ以下の場合のみ、イントラ予測部113が、以上のように、インター予測される領域をイントラ予測することができるようにしてもよい。
 上述したようにインター予測される領域をイントラ予測することによって、符号化処理の処理量が増大する(処理の複雑度が増大する)可能性がある。また、PUサイズが大きくなると、より遠くの画素からの予測となるため、インター予測の代わりに使用されるイントラ予測での予測画素値が実際のインター予測での画素値から乖離してしまう可能性が高くなる。
 そこで、符号化効率の向上と本方式における処理の複雑さの増加の低減を考慮し、上述したように、当該領域のPUサイズに上限を設けるようにしてもよい。この上限のPUサイズを大きくすると、処理の複雑さは増加するが、より多くの領域がイントラ予測の制限を受けないため符号化効率は向上する。また、この上限のPUサイズを小さくすると、インター予測でイントラ予測を行う処理の複雑さは削減されるが、constrained_intre_pred_flag=1時にイントラ予測で利用できない周辺画素が増加するため、符号化効率の向上の程度は削減される。
 なお、当該領域内のPUサイズの下限を設けるようにしてもよい。つまり、当該領域内のPUサイズが所定のサイズ以上の場合のみ、イントラ予測部113が、インター予測される領域をイントラ予測することができるようにしてもよい。
 PUサイズが小さい場合、非特許文献2に記載の方法で周辺画素の置き換えを行っても、誤差が少ない可能性が高い。そこで、PUサイズが所定のサイズより小さい場合、非特許文献2に記載の方法で周辺画素の置き換えを行うようにし、PUサイズが所定のサイズ以上である場合、上述したように、イントラ予測を行い、その予測画素値でインター予測される領域の周辺画素の置き換えを行うようにしてもよい。
 なお、以上に説明した、インター予測された領域に対して行う、周辺画素を得るためのイントラ予測の予測方式として、Angular Predictionイントラ予測方式や、Arbitrary Directional Intra(ADI)イントラ予測方式を適用するようにしてもよい。
 <2.第2の実施の形態>
 [画像復号装置]
 次に、以上のように符号化された符号化データの復号について説明する。図31は、図1の画像符号化装置100に対応する画像復号装置の主な構成例を示すブロック図である。
 図31に示される画像復号装置300は、画像符号化装置100が生成した符号化データを、その符号化方法に対応する復号方法で復号する。
 図31に示されるように画像復号装置300は、蓄積バッファ301、可逆復号部302、逆量子化部303、逆直交変換部304、演算部305、ループフィルタ306、画面並べ替えバッファ307、およびD/A変換部308を有する。また、画像復号装置300は、フレームメモリ309、イントラ予測部310、動き予測・補償部311、および選択部312を有する。
 蓄積バッファ301は伝送されてきた符号化データを蓄積し、所定のタイミングにおいてその符号化データを可逆復号部302に供給する。可逆復号部302は、蓄積バッファ301より供給された、図1の可逆符号化部106により符号化された情報を、可逆符号化部106の符号化方式に対応する方式で復号する。可逆復号部302は、復号して得られた差分画像の量子化された係数データを、逆量子化部303に供給する。
 また、可逆復号部302は、最適な予測モードにイントラ予測モードが選択されたかインター予測モードが選択されたかを判定し、その最適な予測モードに関する情報を、イントラ予測部310および動き予測・補償部311の内、選択されたと判定したモードの方に供給する。つまり、例えば、画像符号化装置100において最適な予測モードとしてイントラ予測モードが選択された場合、その最適な予測モードに関する情報であるイントラ予測情報がイントラ予測部310に供給される。また、例えば、画像符号化装置100において最適な予測モードとしてインター予測モードが選択された場合、その最適な予測モードに関する情報であるインター予測情報が動き予測・補償部311に供給される。なお、可逆復号部302は、シーケンスパラメータセットやピクチャパラメータセット等に記述されたconstrained_intra_pred_flagの値が1である場合、インター予測情報を、イントラ予測部310にも供給する。
 逆量子化部303は、可逆復号部302により復号されて得られた量子化された係数データを、図1の量子化部105の量子化方式に対応する方式で逆量子化し、得られた係数データを逆直交変換部304に供給する。
 逆直交変換部304は、図1の直交変換部104の直交変換方式に対応する方式で逆量子化部303から供給される係数データを逆直交変換する。逆直交変換部304は、この逆直交変換処理により、画像符号化装置100において直交変換される前の差分画像に対応する差分画像を得る。
 逆直交変換されて得られた差分画像は、演算部305に供給される。また、演算部305には、選択部312を介して、イントラ予測部310若しくは動き予測・補償部311から予測画像が供給される。
 演算部305は、差分画像と予測画像とを加算し、画像符号化装置100の演算部103により予測画像が減算される前の画像に対応する再構成画像を得る。演算部305は、その再構成画像をイントラ予測部310およびループフィルタ306に供給する。
 ループフィルタ306は、供給された再構成画像に対して、デブロックフィルタ処理や適応ループフィルタ処理等を含むループフィルタ処理を適宜施して復号画像を生成する。例えば、ループフィルタ306は、再構成画像に対してデブロックフィルタ処理を行うことにより、ブロック歪を除去する。また、例えば、ループフィルタ306は、そのデブロックフィルタ処理結果(ブロック歪みの除去が行われた再構成画像)に対して、ウィナーフィルタ(Wiener Filter)を用いてループフィルタ処理を行うことにより画質改善を行う。
 なお、ループフィルタ306が行うフィルタ処理の種類は任意であり、上述した以外のフィルタ処理を行ってもよい。また、ループフィルタ306が、図1の画像符号化装置100から供給されたフィルタ係数を用いてフィルタ処理を行うようにしてもよい。
 ループフィルタ306は、フィルタ処理結果である復号画像を画面並べ替えバッファ307およびフレームメモリ309に供給する。
 画面並べ替えバッファ307は、供給された復号画像の並べ替えを行う。すなわち、図1の画面並べ替えバッファ102により符号化の順番のために並べ替えられたフレームの順番が、元の表示の順番に並べ替えられる。D/A変換部308は、画面並べ替えバッファ307から供給された復号画像をD/A変換し、図示せぬディスプレイに出力し、表示させる。
 フレームメモリ309は、供給される復号画像を記憶し、所定のタイミングにおいて、若しくは、動き予測・補償部311等の外部の要求に基づいて、記憶している復号画像を参照画像として、動き予測・補償部311に供給する。
 イントラ予測部310は、図1のイントラ予測部113と基本的に同様の処理を行う。ただし、イントラ予測部310は、符号化の際にイントラ予測により予測画像が生成された領域に対してのみ、イントラ予測を行う。
 イントラ予測部310は、可逆復号部302から供給されたイントラ予測情報に基づいて、処理対象領域がイントラ予測された領域であることを識別し、PUサイズと予測モードを決定し、イントラ予測を行う。イントラ予測部310は、このイントラ予測により生成した予測画像を選択部312に供給する。また、イントラ予測部310は、この予測画像を用いて生成される再構成画像を周辺画素として記憶する。
 また、イントラ予測部310は、constrained_intra_pred_flagの値が1である場合、符号化の際にインター予測により予測画像が生成された領域に対して、イントラ予測部113の場合と同様の、周辺画素を得るためのイントラ予想を行う。ただし、イントラ予測部310は、例えばシーケンスパラメータセットやピクチャパラメータセット等に記述されたconstrained_intra_pred_flagの値を参照する。このイントラ予測により生成された予測画像は、周辺画素として記憶される。
 このように、イントラ予測部310は、constrained_intra_pred_flagの値が1であることによって利用不可能となるインター予測の領域の周辺画素値を、イントラ予測の画素値に置き換えることができる。つまり、イントラ予測部310は、画像符号化装置100のイントラ予測部113と同様に周辺画素値の置き換えを行うことができる。したがって、画像復号装置300は、画像符号化装置100が符号化したビットストリームを正しく復号することができ、利用可能なイントラ予測モードの数の低減を抑制することができ、符号化効率を向上させることができる。
 動き予測・補償部311は、動き予測・補償部114と同様に、インター予測を行う。ただし、動き予測・補償部311は、可逆復号部302から供給されるインター予測情報に基づいて、符号化の際にインター予測が行われた領域に対してのみ、インター予測を行う。動き予測・補償部311は、生成した予測画像を選択部312に供給する。
 選択部312は、イントラ予測部310から供給される予測画像、若しくは、動き予測・補償部311から供給される予測画像を演算部305に供給する。
 [イントラ予測部]
 図32は、図31のイントラ予測部310の主な構成例を示すブロック図である。図32に示されるように、イントラ予測部310は、制御部331、周辺画素バッファ332、復号用予測画像生成部333、および周辺用予測画像生成部334を有する。
 制御部331は、可逆復号部302から供給されるイントラ予測情報およびインター予測情報を取得し、それらの情報に基づいて、予測画像の生成を制御する。例えば、イントラ予測情報が供給された場合、制御部331は、復号用予測画像生成部333に対して、予測画像の生成を指示する。この予測画像は、演算部305において差分画像との加算、つまり、復号画像(再構成画像)の生成に用いられる。制御部331は、イントラ予測情報に基づいて、符号化の際に採用されたPUサイズおよび予測モード(予測方向)を特定し、その情報を復号用予測画像生成部333に供給する。
 また、例えば、インター予測情報が供給された場合、制御部331は、周辺用予測画像生成部334に対して、予測画像の生成を指示する。この予測画像は、周辺画素を得るためのものであり、その左端の画素群と下端の画素群が、周辺画素バッファ332に供給され、記憶される。これらの画素は、当該領域よりも時間的に後に処理される他の領域に対するイントラ予測において、周辺画素として利用される。制御部331は、インター予測情報に基づいて、符号化の際に採用されたインター予測のPUサイズおよび予測モードを特定し、それらの情報に基づいて、イントラ予測のPUサイズおよび予測モード(予測方法)を決定し、その情報を周辺用予測画像生成部334に供給する。
 周辺画素バッファ332は、イントラ予測において利用される周辺画素を記憶する。周辺画素バッファ332は、演算部305から供給される再構成画素の画素値(再構成画素値)を取得し、記憶する。また、周辺画素バッファ332は、周辺用予測画像生成部334において生成された予測画像の、周辺画素として利用可能な画素の画素値(予測画素値)を取得し、記憶する。より具体的には、周辺画素バッファ332は、予測画像の左端の画素群と下端の画素群を予測画素値として取得し、記憶する。
 周辺画素バッファ332は、記憶している画素値を、周辺画素値として、復号用予測画像生成部333や周辺用予測画像生成部334に供給する。
 復号用予測画像生成部333は、制御部331の制御に従って、周辺画素バッファ332から周辺画素値を取得し、その周辺画素値を用いて、制御部331により指定されるPUサイズおよび予測モードで、処理対象の領域に対して、イントラ予測を行い、予測画像を生成する。復号用予測画像生成部333は、その予測画像の各画素の画素値である予測画素値を選択部312に供給する。
 周辺用予測画像生成部334は、制御部331の制御に従って、周辺画素バッファ332から周辺画素値を取得し、その周辺画素値を用いて、制御部331により指定されるPUサイズおよび予測モードで、処理対象の領域に対して、イントラ予測を行い、予測画像を生成する。周辺用予測画像生成部334は、その予測画像の各画素の画素値である予測画素値を周辺画素バッファ332に供給し、記憶させる。
 [制御部]
 図33は、図32の制御部331の主な構成例を示すブロック図である。図33に示されるように、制御部331は、予測方法判定部351、復号用予測画像生成指示部352、予測モード決定部353、および周辺用予測画像生成指示部354を有する。
 予測方法判定部351は、可逆復号部302からイントラ予測情報およびインター予測情報を取得する。イントラ予測情報が供給された場合、予測方法判定部351は、当該領域の符号化の際にイントラ予測が選択されたと判定し、その判定結果を、イントラ予測情報とともに、復号用予測画像生成指示部352に供給する。
 また、インター予測情報が供給された場合、予測方法判定部351は、当該領域の符号化の際にインター予測が選択されたと判定する。シーケンスパラメータセットやピクチャパラメータセット等に記述されたconstrained_intra_pred_flagの値が1である場合、予測方法判定部351は、周辺画素を得るためのイントラ予測が行われるように、当該領域の符号化の際にインター予測が選択されたとの判定結果を、インター予測情報とともに、予測モード決定部353に供給する。
 なお、constrained_intra_pred_flagの値が0である場合、予測方法判定部351は、インター予測のみが行われるように、復号用予測画像生成指示部352にも、予測モード決定部353にも判定結果を通知しない。
 復号用予測画像生成指示部352は、供給されたイントラ予測情報から、当該領域の符号化の際のPUサイズおよび予測モード(予測方向)を抽出する。復号用予測画像生成指示部352は、それらの抽出した情報とともに、予測画像を生成するように指示する制御情報である復号用予測画像生成指示を、復号用予測画像生成部333に供給する。
 予測モード決定部353は、予測方法判定部351から供給されたインター予測情報に含まれるインター予測のPUサイズおよび予測モードに基づいて、周辺画素値を得るためのイントラ予測のPUサイズおよび予測モード(予測方向)を、予測モード決定部154と同一の方法で決定する。
 予測モードの決定方法は、予測モード決定部154と同一であれば、どのような方法であっても良い。画像符号化装置100と画像復号装置300とが、予め定められた予測モードの決定方法を供給するようにしてもよい。また、画像符号化装置100において採用された決定方法を、画像復号装置300に通知するようにしてもよい。
 予測モード決定部353は、決定したPUサイズおよび予測モード(予測方向)を周辺用予測画像生成指示部354に供給する。
 周辺用予測画像生成指示部354は、予測モード決定部353から供給されるPUサイズおよび予測モード(予測方向)とともに、予測画像を生成するように指示する制御情報である周辺用予測画像生成指示を、周辺用予測画像生成部334に供給する。
 以上のように、制御部331がビットストリームに含まれて伝送されたイントラ予測情報やインター予測情報に基づいて、上述したように制御を行うことにより、イントラ予測部310は、イントラ予測部113と同様のイントラ予測を行うことができる。これにより、画像復号装置300は、画像符号化装置100が符号化したビットストリームを正しく復号することができ、利用可能なイントラ予測モードの数の低減を抑制することができ、符号化効率を向上させることができる。
 [復号処理の流れ]
 次に、以上のような画像復号装置300により実行される各処理の流れについて説明する。最初に、図34のフローチャートを参照して、復号処理の流れの例を説明する。
 復号処理が開始されると、ステップS301において、蓄積バッファ301は、伝送されてきたビットストリームを蓄積する。ステップS302において、可逆復号部302は、蓄積バッファ301から供給されるビットストリーム(符号化された差分画像情報)を復号する。
 このとき、イントラ予測情報やインター予測情報等、ビットストリームに含められた差分画像情報以外の各種情報も復号される。
 ステップS303において、逆量子化部303は、ステップS302の処理により得られた、量子化された直交変換係数を逆量子化する。ステップS304において逆直交変換部304は、ステップS303において逆量子化された直交変換係数を逆直交変換する。
 ステップS305において、イントラ予測部310若しくは動き予測・補償部311は、供給された情報を用いて予測処理を行う。ステップS306において、選択部312は、ステップS305において生成された予測画像を選択する。ステップS307において、演算部305は、ステップS304において逆直交変換されて得られた差分画像情報に、ステップS306において選択された予測画像を加算する。これにより再構成画像が生成される。
 ステップS308において、イントラ予測部310の周辺画素バッファ332は、ステップS307において生成された再構成画像の、周辺画素として利用可能な画素の画素値(再構成画素値)を記憶する。なお、当該領域が符号化の際にインター予測された領域である場合、イントラ予測部310の周辺画素バッファ332に記憶される再構成画素値は、イントラ予測部310において生成される予測画像の、周辺画素として利用可能な画素の画素値(予測画素値)に置き換えられる。したがって、当該領域が符号化の際にインター予測された領域である場合、このステップS308の処理は省略されるようにしてもよい。
 ステップS309において、ループフィルタ306は、ステップS307において得られた再構成画像に対して、デブロックフィルタ処理や適応ループフィルタ処理等を含むループフィルタ処理を適宜行う。
 ステップS310において、画面並べ替えバッファ307は、ステップS309においてフィルタ処理されて生成された復号画像の並べ替えを行う。すなわち画像符号化装置100の画面並べ替えバッファ102により符号化のために並べ替えられたフレームの順序が、元の表示の順序に並べ替えられる。
 ステップS311において、D/A変換部308は、ステップS310においてフレームの順序が並べ替えられた復号画像をD/A変換する。この復号画像が図示せぬディスプレイに出力され、表示される。
 ステップS312において、フレームメモリ309は、ステップS309においてフィルタ処理されて得られた復号画像を記憶する。この復号画像は、インター予測処理において参照画像として利用される。
 ステップS312の処理が終了すると、復号処理が終了される。
 [予測処理の流れ]
 次に、図35のフローチャートを参照して、図34のステップS305において実行される予測処理の流れの例を説明する。
 予測処理が開始されると、イントラ予測部310の制御部331の予測方法判定部351は、ステップS331において、可逆復号部302から供給されるイントラ予測情報若しくはインター予測情報に基づいて、処理対象の領域が符号化の際にイントラ予測が行われたか否かを判定する。イントラ予測が行われたと判定された場合、予測方法判定部351は、処理をステップS332に進める。
 ステップS332において、復号用予測画像生成指示部352は、復号用予測画像生成部333に対して、予測画像の生成を指示する。復号用予測画像生成部333は、その指示に従って、イントラ予測を行い、予測画像(イントラ予測画像)を生成する。ステップS333において、復号用予測画像生成部333は、その生成した予測画像を選択部312に出力する。ステップS333の処理が終了すると、復号用予測画像生成部333は、予測処理を終了し、処理を図34に戻す。
 また、ステップS331において、イントラ予測が行われていないと判定された場合、予測方法判定部351は、処理をステップS334に進める。
 ステップS334において、動き予測・補償部311は、インター予測を行い、予測画像(インター予測画像)を生成する。ステップS335において、動き予測・補償部311は、その生成した予測画像を選択部312に出力する。
 ステップS336において、予測方法判定部351は、シーケンスパラメータセットやピクチャパラメータセット等に記述されたconstrained_intra_pred_flagの値が1であるか否かを判定する。constrained_intra_pred_flagの値が1であると判定された場合、予測方法判定部351は、処理をステップS337に進める。
 ステップS337において、予測モード決定部353は、符号化の際にインター予測された当該領域において周辺画素を得るために行うイントラ予測のPUサイズを決定する。ステップS338において、予測モード決定部353は、予測モードを決定する。この予測モードの決定方法は、図24のステップS175の場合と同様であればどのような方法であっても良い。例えば、図25乃至図30のフローチャートを参照して説明したような各種の方法であってもよいし、それ以外の方法であってもよい。
 ステップS339において、周辺用予測画像生成指示部354は、周辺用予測画像生成部334に対して、予測画像の生成を指示する。周辺用予測画像生成部334は、その指示に従って、イントラ予測を行い、予測画像(イントラ予測画像)を生成する。ステップS340において、周辺画素バッファ332は、その生成した予測画像の、周辺画素として利用可能な画素の画素値(予測画素値)を記憶する。ステップS340の処理が終了すると、周辺画素バッファ332は、予測処理を終了し、処理を図34に戻す。
 また、ステップS336において、constrained_intra_pred_flagの値が0であると判定された場合、予測方法判定部351は、予測処理を終了し、処理を図34に戻す。
 以上のように、各処理を行うことにより、画像復号装置300は、画像符号化装置100が符号化したビットストリームを正しく復号することができ、利用可能なイントラ予測モードの数の低減を抑制することができ、符号化効率を向上させることができる。
 [当該領域のサイズ制限]
 なお、画像符号化装置100の場合と同様に、画像復号装置300においても、当該領域内のPUサイズが所定のサイズ以下の場合のみ、イントラ予測部310が、以上のように、インター予測される領域をイントラ予測することができるようにしてもよい。また、逆に、当該領域内のPUサイズの下限を設けるようにしてもよい。つまり、当該領域内のPUサイズが所定のサイズ以上の場合のみ、イントラ予測部310が、インター予測される領域をイントラ予測することができるようにしてもよい。
 また、画像符号化装置100の場合と同様に、画像復号装置300においても、インター予測された領域に対して行う、周辺画素を得るためのイントラ予測の予測方式として、Angular Predictionイントラ予測方式や、Arbitrary Directional Intra(ADI)イントラ予測方式を適用するようにしてもよい。
 なお、本技術は、例えば、MPEG、H.26x等の様に、離散コサイン変換等の直交変換と動き補償によって圧縮された画像情報(ビットストリーム)を、衛星放送、ケーブルテレビジョン、インターネット、または携帯電話機などのネットワークメディアを介して受信する際に用いられる画像符号化装置および画像復号装置に適用することができる。また、本技術は、光、磁気ディスク、およびフラッシュメモリのような記憶メディア上で処理する際に用いられる画像符号化装置および画像復号装置に適用することができる。さらに、本技術は、それらの画像符号化装置および画像復号装置などに含まれるイントラ予測装置にも適用することができる。
 <3.第3の実施の形態>
 [パーソナルコンピュータ]
 上述した一連の処理は、ハードウエアにより実行することもできるし、ソフトウエアにより実行することもできる。一連の処理をソフトウエアにより実行する場合には、そのソフトウエアを構成するプログラムが、コンピュータにインストールされる。ここで、コンピュータには、専用のハードウエアに組み込まれているコンピュータや、各種のプログラムをインストールすることで、各種の機能を実行することが可能な汎用のパーソナルコンピュータなどが含まれる。
 図36において、パーソナルコンピュータ500のCPU(Central Processing Unit)501は、ROM(Read Only Memory)502に記憶されているプログラム、または記憶部513からRAM(Random Access Memory)503にロードされたプログラムに従って各種の処理を実行する。RAM503にはまた、CPU501が各種の処理を実行する上において必要なデータなども適宜記憶される。
 CPU501、ROM502、およびRAM503は、バス504を介して相互に接続されている。このバス504にはまた、入出力インタフェース510も接続されている。
 入出力インタフェース510には、キーボード、マウスなどよりなる入力部511、CRT(Cathode Ray Tube)やLCD(Liquid Crystal Display)などよりなるディスプレイ、並びにスピーカなどよりなる出力部512、ハードディスクなどより構成される記憶部513、モデムなどより構成される通信部514が接続されている。通信部514は、インターネットを含むネットワークを介しての通信処理を行う。
 入出力インタフェース510にはまた、必要に応じてドライブ515が接続され、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブルメディア521が適宜装着され、それらから読み出されたコンピュータプログラムが、必要に応じて記憶部513にインストールされる。
 上述した一連の処理をソフトウエアにより実行させる場合には、そのソフトウエアを構成するプログラムが、ネットワークや記録媒体からインストールされる。
 この記録媒体は、例えば、図36に示されるように、装置本体とは別に、ユーザにプログラムを配信するために配布される、プログラムが記録されている磁気ディスク(フレキシブルディスクを含む)、光ディスク(CD-ROM(Compact Disc - Read Only Memory),DVD(Digital Versatile Disc)を含む)、光磁気ディスク(MD(Mini Disc)を含む)、若しくは半導体メモリなどよりなるリムーバブルメディア521により構成されるだけでなく、装置本体に予め組み込まれた状態でユーザに配信される、プログラムが記録されているROM502や、記憶部513に含まれるハードディスクなどで構成される。
 なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
 また、本明細書において、記録媒体に記録されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
 また、本明細書において、システムとは、複数のデバイス(装置)により構成される装置全体を表すものである。
 また、以上において、1つの装置(または処理部)として説明した構成を分割し、複数の装置(または処理部)として構成するようにしてもよい。逆に、以上において複数の装置(または処理部)として説明した構成をまとめて1つの装置(または処理部)として構成されるようにしてもよい。また、各装置(または各処理部)の構成に上述した以外の構成を付加するようにしてももちろんよい。さらに、システム全体としての構成や動作が実質的に同じであれば、ある装置(または処理部)の構成の一部を他の装置(または他の処理部)の構成に含めるようにしてもよい。つまり、本技術は、上述した実施の形態に限定されるものではなく、本技術の要旨を逸脱しない範囲において種々の変更が可能である。
 上述した実施形態に係る画像符号化装置及び画像復号装置は、衛星放送、ケーブルTVなどの有線放送、インターネット上での配信、及びセルラー通信による端末への配信などにおける送信機若しくは受信機、光ディスク、磁気ディスク及びフラッシュメモリなどの媒体に画像を記録する記録装置、又は、これら記憶媒体から画像を再生する再生装置などの様々な電子機器に応用され得る。以下、4つの応用例について説明する。
 <4.第4の実施の形態>
 [第1の応用例:テレビジョン受像機]
 図37は、上述した実施形態を適用したテレビジョン装置の概略的な構成の一例を示している。テレビジョン装置900は、アンテナ901、チューナ902、デマルチプレクサ903、デコーダ904、映像信号処理部905、表示部906、音声信号処理部907、スピーカ908、外部インタフェース909、制御部910、ユーザインタフェース911、及びバス912を備える。
 チューナ902は、アンテナ901を介して受信される放送信号から所望のチャンネルの信号を抽出し、抽出した信号を復調する。そして、チューナ902は、復調により得られた符号化ビットストリームをデマルチプレクサ903へ出力する。即ち、チューナ902は、画像が符号化されている符号化ストリームを受信する、テレビジョン装置900における伝送手段としての役割を有する。
 デマルチプレクサ903は、符号化ビットストリームから視聴対象の番組の映像ストリーム及び音声ストリームを分離し、分離した各ストリームをデコーダ904へ出力する。また、デマルチプレクサ903は、符号化ビットストリームからEPG(Electronic Program Guide)などの補助的なデータを抽出し、抽出したデータを制御部910に供給する。なお、デマルチプレクサ903は、符号化ビットストリームがスクランブルされている場合には、デスクランブルを行ってもよい。
 デコーダ904は、デマルチプレクサ903から入力される映像ストリーム及び音声ストリームを復号する。そして、デコーダ904は、復号処理により生成される映像データを映像信号処理部905へ出力する。また、デコーダ904は、復号処理により生成される音声データを音声信号処理部907へ出力する。
 映像信号処理部905は、デコーダ904から入力される映像データを再生し、表示部906に映像を表示させる。また、映像信号処理部905は、ネットワークを介して供給されるアプリケーション画面を表示部906に表示させてもよい。また、映像信号処理部905は、映像データについて、設定に応じて、例えばノイズ除去などの追加的な処理を行ってもよい。さらに、映像信号処理部905は、例えばメニュー、ボタン又はカーソルなどのGUI(Graphical User Interface)の画像を生成し、生成した画像を出力画像に重畳してもよい。
 表示部906は、映像信号処理部905から供給される駆動信号により駆動され、表示デバイス(例えば、液晶ディスプレイ、プラズマディスプレイ又はOELD(Organic ElectroLuminescence Display)(有機ELディスプレイ)など)の映像面上に映像又は画像を表示する。
 音声信号処理部907は、デコーダ904から入力される音声データについてD/A変換及び増幅などの再生処理を行い、スピーカ908から音声を出力させる。また、音声信号処理部907は、音声データについてノイズ除去などの追加的な処理を行ってもよい。
 外部インタフェース909は、テレビジョン装置900と外部機器又はネットワークとを接続するためのインタフェースである。例えば、外部インタフェース909を介して受信される映像ストリーム又は音声ストリームが、デコーダ904により復号されてもよい。即ち、外部インタフェース909もまた、画像が符号化されている符号化ストリームを受信する、テレビジョン装置900における伝送手段としての役割を有する。
 制御部910は、CPUなどのプロセッサ、並びにRAM及びROMなどのメモリを有する。メモリは、CPUにより実行されるプログラム、プログラムデータ、EPGデータ、及びネットワークを介して取得されるデータなどを記憶する。メモリにより記憶されるプログラムは、例えば、テレビジョン装置900の起動時にCPUにより読み込まれ、実行される。CPUは、プログラムを実行することにより、例えばユーザインタフェース911から入力される操作信号に応じて、テレビジョン装置900の動作を制御する。
 ユーザインタフェース911は、制御部910と接続される。ユーザインタフェース911は、例えば、ユーザがテレビジョン装置900を操作するためのボタン及びスイッチ、並びに遠隔制御信号の受信部などを有する。ユーザインタフェース911は、これら構成要素を介してユーザによる操作を検出して操作信号を生成し、生成した操作信号を制御部910へ出力する。
 バス912は、チューナ902、デマルチプレクサ903、デコーダ904、映像信号処理部905、音声信号処理部907、外部インタフェース909及び制御部910を相互に接続する。
 このように構成されたテレビジョン装置900において、デコーダ904は、上述した実施形態に係る画像復号装置の機能を有する。それにより、テレビジョン装置900での画像の復号に際して、利用可能なイントラ予測モードを増大させることができ、符号化効率の向上を実現させることができる。
 <5.第5の実施の形態>
 [第2の応用例:携帯電話機]
 図38は、上述した実施形態を適用した携帯電話機の概略的な構成の一例を示している。携帯電話機920は、アンテナ921、通信部922、音声コーデック923、スピーカ924、マイクロホン925、カメラ部926、画像処理部927、多重分離部928、記録再生部929、表示部930、制御部931、操作部932、及びバス933を備える。
 アンテナ921は、通信部922に接続される。スピーカ924及びマイクロホン925は、音声コーデック923に接続される。操作部932は、制御部931に接続される。バス933は、通信部922、音声コーデック923、カメラ部926、画像処理部927、多重分離部928、記録再生部929、表示部930、及び制御部931を相互に接続する。
 携帯電話機920は、音声通話モード、データ通信モード、撮影モード及びテレビ電話モードを含む様々な動作モードで、音声信号の送受信、電子メール又は画像データの送受信、画像の撮像、及びデータの記録などの動作を行う。
 音声通話モードにおいて、マイクロホン925により生成されるアナログ音声信号は、音声コーデック923に供給される。音声コーデック923は、アナログ音声信号を音声データへ変換し、変換された音声データをA/D変換し圧縮する。そして、音声コーデック923は、圧縮後の音声データを通信部922へ出力する。通信部922は、音声データを符号化及び変調し、送信信号を生成する。そして、通信部922は、生成した送信信号を、アンテナ921を介して基地局(図示せず)へ送信する。また、通信部922は、アンテナ921を介して受信される無線信号を増幅し及び周波数変換し、受信信号を取得する。そして、通信部922は、受信信号を復調及び復号して音声データを生成し、生成した音声データを音声コーデック923へ出力する。音声コーデック923は、音声データを伸張し及びD/A変換し、アナログ音声信号を生成する。そして、音声コーデック923は、生成した音声信号をスピーカ924に供給して音声を出力させる。
 また、データ通信モードにおいて、例えば、制御部931は、操作部932を介するユーザによる操作に応じて、電子メールを構成する文字データを生成する。また、制御部931は、文字を表示部930に表示させる。また、制御部931は、操作部932を介するユーザからの送信指示に応じて電子メールデータを生成し、生成した電子メールデータを通信部922へ出力する。通信部922は、電子メールデータを符号化及び変調し、送信信号を生成する。そして、通信部922は、生成した送信信号を、アンテナ921を介して基地局(図示せず)へ送信する。また、通信部922は、アンテナ921を介して受信される無線信号を増幅し及び周波数変換し、受信信号を取得する。そして、通信部922は、受信信号を復調及び復号して電子メールデータを復元し、復元した電子メールデータを制御部931へ出力する。制御部931は、表示部930に電子メールの内容を表示させると共に、電子メールデータを記録再生部929の記憶媒体に記憶させる。
 記録再生部929は、読み書き可能な任意の記憶媒体を有する。例えば、記憶媒体は、RAM又はフラッシュメモリなどの内蔵型の記憶媒体であってもよく、ハードディスク、磁気ディスク、光磁気ディスク、光ディスク、USB(Unallocated Space Bitmap)メモリ、又はメモリカードなどの外部装着型の記憶媒体であってもよい。
 また、撮影モードにおいて、例えば、カメラ部926は、被写体を撮像して画像データを生成し、生成した画像データを画像処理部927へ出力する。画像処理部927は、カメラ部926から入力される画像データを符号化し、符号化ストリームを記憶再生部929の記憶媒体に記憶させる。
 また、テレビ電話モードにおいて、例えば、多重分離部928は、画像処理部927により符号化された映像ストリームと、音声コーデック923から入力される音声ストリームとを多重化し、多重化したストリームを通信部922へ出力する。通信部922は、ストリームを符号化及び変調し、送信信号を生成する。そして、通信部922は、生成した送信信号を、アンテナ921を介して基地局(図示せず)へ送信する。また、通信部922は、アンテナ921を介して受信される無線信号を増幅し及び周波数変換し、受信信号を取得する。これら送信信号及び受信信号には、符号化ビットストリームが含まれ得る。そして、通信部922は、受信信号を復調及び復号してストリームを復元し、復元したストリームを多重分離部928へ出力する。多重分離部928は、入力されるストリームから映像ストリーム及び音声ストリームを分離し、映像ストリームを画像処理部927、音声ストリームを音声コーデック923へ出力する。画像処理部927は、映像ストリームを復号し、映像データを生成する。映像データは、表示部930に供給され、表示部930により一連の画像が表示される。音声コーデック923は、音声ストリームを伸張し及びD/A変換し、アナログ音声信号を生成する。そして、音声コーデック923は、生成した音声信号をスピーカ924に供給して音声を出力させる。
 このように構成された携帯電話機920において、画像処理部927は、上述した実施形態に係る画像符号化装置及び画像復号装置の機能を有する。それにより、携帯電話機920での画像の符号化及び復号に際して、利用可能なイントラ予測モードを増大させることができ、符号化効率を向上させることができる。
 <6.第6の実施の形態>
 [第3の応用例:記録再生装置]
 図39は、上述した実施形態を適用した記録再生装置の概略的な構成の一例を示している。記録再生装置940は、例えば、受信した放送番組の音声データ及び映像データを符号化して記録媒体に記録する。また、記録再生装置940は、例えば、他の装置から取得される音声データ及び映像データを符号化して記録媒体に記録してもよい。また、記録再生装置940は、例えば、ユーザの指示に応じて、記録媒体に記録されているデータをモニタ及びスピーカ上で再生する。このとき、記録再生装置940は、音声データ及び映像データを復号する。
 記録再生装置940は、チューナ941、外部インタフェース942、エンコーダ943、HDD(Hard Disk Drive)944、ディスクドライブ945、セレクタ946、デコーダ947、OSD(On-Screen Display)948、制御部949、及びユーザインタフェース950を備える。
 チューナ941は、アンテナ(図示せず)を介して受信される放送信号から所望のチャンネルの信号を抽出し、抽出した信号を復調する。そして、チューナ941は、復調により得られた符号化ビットストリームをセレクタ946へ出力する。即ち、チューナ941は、記録再生装置940における伝送手段としての役割を有する。
 外部インタフェース942は、記録再生装置940と外部機器又はネットワークとを接続するためのインタフェースである。外部インタフェース942は、例えば、IEEE1394インタフェース、ネットワークインタフェース、USBインタフェース、又はフラッシュメモリインタフェースなどであってよい。例えば、外部インタフェース942を介して受信される映像データ及び音声データは、エンコーダ943へ入力される。即ち、外部インタフェース942は、記録再生装置940における伝送手段としての役割を有する。
 エンコーダ943は、外部インタフェース942から入力される映像データ及び音声データが符号化されていない場合に、映像データ及び音声データを符号化する。そして、エンコーダ943は、符号化ビットストリームをセレクタ946へ出力する。
 HDD944は、映像及び音声などのコンテンツデータが圧縮された符号化ビットストリーム、各種プログラム及びその他のデータを内部のハードディスクに記録する。また、HDD944は、映像及び音声の再生時に、これらデータをハードディスクから読み出す。
ディスクドライブ945は、装着されている記録媒体へのデータの記録及び読み出しを行う。ディスクドライブ945に装着される記録媒体は、例えばDVDディスク(DVD-Video、DVD-RAM、DVD-R、DVD-RW、DVD+R、DVD+RW等)又はBlu-ray(登録商標)ディスクなどであってよい。
 セレクタ946は、映像及び音声の記録時には、チューナ941又はエンコーダ943から入力される符号化ビットストリームを選択し、選択した符号化ビットストリームをHDD944又はディスクドライブ945へ出力する。また、セレクタ946は、映像及び音声の再生時には、HDD944又はディスクドライブ945から入力される符号化ビットストリームをデコーダ947へ出力する。
 デコーダ947は、符号化ビットストリームを復号し、映像データ及び音声データを生成する。そして、デコーダ947は、生成した映像データをOSD948へ出力する。また、デコーダ904は、生成した音声データを外部のスピーカへ出力する。
 OSD948は、デコーダ947から入力される映像データを再生し、映像を表示する。また、OSD948は、表示する映像に、例えばメニュー、ボタン又はカーソルなどのGUIの画像を重畳してもよい。
 制御部949は、CPUなどのプロセッサ、並びにRAM及びROMなどのメモリを有する。メモリは、CPUにより実行されるプログラム、及びプログラムデータなどを記憶する。メモリにより記憶されるプログラムは、例えば、記録再生装置940の起動時にCPUにより読み込まれ、実行される。CPUは、プログラムを実行することにより、例えばユーザインタフェース950から入力される操作信号に応じて、記録再生装置940の動作を制御する。
 ユーザインタフェース950は、制御部949と接続される。ユーザインタフェース950は、例えば、ユーザが記録再生装置940を操作するためのボタン及びスイッチ、並びに遠隔制御信号の受信部などを有する。ユーザインタフェース950は、これら構成要素を介してユーザによる操作を検出して操作信号を生成し、生成した操作信号を制御部949へ出力する。
 このように構成された記録再生装置940において、エンコーダ943は、上述した実施形態に係る画像符号化装置の機能を有する。また、デコーダ947は、上述した実施形態に係る画像復号装置の機能を有する。それにより、記録再生装置940での画像の符号化及び復号に際して、利用可能なイントラ予測モードを増大させることができ、符号化効率を向上させることができる。
 <7.第7の実施の形態>
 [第4の応用例:撮像装置]
 図40は、上述した実施形態を適用した撮像装置の概略的な構成の一例を示している。撮像装置960は、被写体を撮像して画像を生成し、画像データを符号化して記録媒体に記録する。
 撮像装置960は、光学ブロック961、撮像部962、信号処理部963、画像処理部964、表示部965、外部インタフェース966、メモリ967、メディアドライブ968、OSD969、制御部970、ユーザインタフェース971、及びバス972を備える。
 光学ブロック961は、撮像部962に接続される。撮像部962は、信号処理部963に接続される。表示部965は、画像処理部964に接続される。ユーザインタフェース971は、制御部970に接続される。バス972は、画像処理部964、外部インタフェース966、メモリ967、メディアドライブ968、OSD969、及び制御部970を相互に接続する。
 光学ブロック961は、フォーカスレンズ及び絞り機構などを有する。光学ブロック961は、被写体の光学像を撮像部962の撮像面に結像させる。撮像部962は、CCD(Charge Coupled Device)又はCMOS(Complementary Metal Oxide Semiconductor)などのイメージセンサを有し、撮像面に結像した光学像を光電変換によって電気信号としての画像信号に変換する。そして、撮像部962は、画像信号を信号処理部963へ出力する。
 信号処理部963は、撮像部962から入力される画像信号に対してニー補正、ガンマ補正、色補正などの種々のカメラ信号処理を行う。信号処理部963は、カメラ信号処理後の画像データを画像処理部964へ出力する。
 画像処理部964は、信号処理部963から入力される画像データを符号化し、符号化データを生成する。そして、画像処理部964は、生成した符号化データを外部インタフェース966又はメディアドライブ968へ出力する。また、画像処理部964は、外部インタフェース966又はメディアドライブ968から入力される符号化データを復号し、画像データを生成する。そして、画像処理部964は、生成した画像データを表示部965へ出力する。また、画像処理部964は、信号処理部963から入力される画像データを表示部965へ出力して画像を表示させてもよい。また、画像処理部964は、OSD969から取得される表示用データを、表示部965へ出力する画像に重畳してもよい。
 OSD969は、例えばメニュー、ボタン又はカーソルなどのGUIの画像を生成して、生成した画像を画像処理部964へ出力する。
 外部インタフェース966は、例えばUSB入出力端子として構成される。外部インタフェース966は、例えば、画像の印刷時に、撮像装置960とプリンタとを接続する。また、外部インタフェース966には、必要に応じてドライブが接続される。ドライブには、例えば、磁気ディスク又は光ディスクなどのリムーバブルメディアが装着され、リムーバブルメディアから読み出されるプログラムが、撮像装置960にインストールされ得る。さらに、外部インタフェース966は、LAN又はインターネットなどのネットワークに接続されるネットワークインタフェースとして構成されてもよい。即ち、外部インタフェース966は、撮像装置960における伝送手段としての役割を有する。
 メディアドライブ968に装着される記録媒体は、例えば、磁気ディスク、光磁気ディスク、光ディスク、又は半導体メモリなどの、読み書き可能な任意のリムーバブルメディアであってよい。また、メディアドライブ968に記録媒体が固定的に装着され、例えば、内蔵型ハードディスクドライブ又はSSD(Solid State Drive)のような非可搬性の記憶部が構成されてもよい。
 制御部970は、CPUなどのプロセッサ、並びにRAM及びROMなどのメモリを有する。メモリは、CPUにより実行されるプログラム、及びプログラムデータなどを記憶する。メモリにより記憶されるプログラムは、例えば、撮像装置960の起動時にCPUにより読み込まれ、実行される。CPUは、プログラムを実行することにより、例えばユーザインタフェース971から入力される操作信号に応じて、撮像装置960の動作を制御する。
 ユーザインタフェース971は、制御部970と接続される。ユーザインタフェース971は、例えば、ユーザが撮像装置960を操作するためのボタン及びスイッチなどを有する。ユーザインタフェース971は、これら構成要素を介してユーザによる操作を検出して操作信号を生成し、生成した操作信号を制御部970へ出力する。
 このように構成された撮像装置960において、画像処理部964は、上述した実施形態に係る画像符号化装置及び画像復号装置の機能を有する。それにより、撮像装置960での画像の符号化及び復号に際して、利用可能なイントラ予測モードを増大させることができ、符号化効率を向上させることができる。
 なお、本明細書では、予測モード情報やconstrained_intra_pred_flagなどの様々な情報が、符号化ストリームのヘッダに多重化されて、符号化側から復号側へ伝送される例について説明した。しかしながら、これら情報を伝送する手法はかかる例に限定されない。例えば、これら情報は、符号化ビットストリームに多重化されることなく、符号化ビットストリームと関連付けられた別個のデータとして伝送され又は記録されてもよい。ここで、「関連付ける」という用語は、ビットストリームに含まれる画像(スライス若しくはブロックなど、画像の一部であってもよい)と当該画像に対応する情報とを復号時にリンクさせ得るようにすることを意味する。即ち、情報は、画像(又はビットストリーム)とは別の伝送路上で伝送されてもよい。また、情報は、画像(又はビットストリーム)とは別の記録媒体(又は同一の記録媒体の別の記録エリア)に記録されてもよい。さらに、情報と画像(又はビットストリーム)とは、例えば、複数フレーム、1フレーム、又はフレーム内の一部分などの任意の単位で互いに関連付けられてよい。
 以上、添付図面を参照しながら本開示の好適な実施形態について詳細に説明したが、本発明はかかる例に限定されない。本開示の属する技術の分野における通常の知識を有する者であれば、請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本開示の技術的範囲に属するものと了解される。
 なお、本技術は以下のような構成も取ることができる。
 (1) 画像の所定の領域毎に行う予測処理において、インター予測される処理対象の領域に対してイントラ予測を行い、予測画像を生成する周辺用予測画像生成部と、
 前記周辺用予測画像生成部により生成された前記予測画像の、前記処理対象の領域よりも時間的に後に処理される領域に対するイントラ予測において周辺画素として利用可能な画素の画素値を記憶する記憶部と、
 前記記憶部に記憶される周辺画素の画素値を用いて、処理対象の領域に対してイントラ予測を行い、予測画像を生成する符号化用予測画像生成部と、
 入力画像と、前記符号化用予測画像生成部により生成された予測画像の差分画像を算出する演算部と、
 前記演算部により算出された前記差分画像を符号化する符号化部と
 を備える画像処理装置。
 (2) 前記インター予測の処理単位のサイズと予測モードに基づいて、前記周辺用予測画像生成部により行われるイントラ予測の処理単位のサイズと予測モードを決定する決定部をさらに備え、
 前記周辺用予測画像生成部は、前記決定部により決定された処理単位のサイズの、前記決定部により決定された予測モードで、前記イントラ予測を行い、前記予測画像を生成する
 前記(1)に記載の画像処理装置。
 (3) 前記決定部は、前記イントラ予測の予測モードを平均値予測に決定する
 前記(2)に記載の画像処理装置。
 (4) 前記決定部は、前記イントラ予測の予測モードを、直前に行われたイントラ予測の予測モードに決定する
 前記(2)に記載の画像処理装置。
 (5) 前記決定部は、前記イントラ予測の予測モードを、動きベクトルの単位ベクトルと予測モードの単位ベクトルとの内積が最大となる予測モードに決定する
 前記(2)に記載の画像処理装置。
 (6) 前記決定部は、前記イントラ予測の予測モードを、処理対象の領域に隣接する、イントラ予測が行われた他の領域の予測モードに決定する
 前記(2)に記載の画像処理装置。
 (7) 前記決定部は、前記他の領域の予測モードが複数存在する場合、所定の優先順に従って選択された領域の予測モードを、前記イントラ予測の予測モードに決定する
 前記(2)に記載の画像処理装置。
 (8) 前記周辺用予測画像生成部は、インター予測により生成された予測画像を用いて生成された再構成画像をイントラ予測において利用することを禁止するモードにおいて、インター予測される処理対象の領域に対してイントラ予測を行い、予測画像を生成する
 前記(1)乃至(7)に記載の画像処理装置。
 (9) 前記記憶部は、前記処理対象の領域がイントラ予測される場合、前記イントラ予測により生成された予測画像を用いて生成された再構成画像の、前記処理対象の領域よりも時間的に後に処理される領域に対するイントラ予測において周辺画素として利用可能な画素の画素値を記憶し、
 前記符号化用予測画像生成部は、前記記憶部に記憶される周辺画素の画素値を用いて、処理対象の領域に対してイントラ予測を行い、予測画像を生成し、
 前記符号化部は、前記符号化用予測画像生成部による前記イントラ予測の処理単位のサイズおよび予測モードに関するイントラ予測情報を、符号化した前記差分画像のビットストリームに付加する
 前記(1)乃至(8)に記載の画像処理装置。
 (10) 画像処理装置の画像処理方法であって、
 周辺用予測画像生成部が、画像の所定の領域毎に行う予測処理において、インター予測される処理対象の領域に対してイントラ予測を行い、予測画像を生成し、
 記憶部が、生成された前記予測画像の、前記処理対象の領域よりも時間的に後に処理される領域に対するイントラ予測において周辺画素として利用可能な画素の画素値を記憶し、
 符号化用予測画像生成部が、記憶される周辺画素の画素値を用いて、処理対象の領域に対してイントラ予測を行い、予測画像を生成し、
 演算部が、入力画像と、生成された予測画像の差分画像を算出し、
 符号化部が、算出された前記差分画像を符号化する
 画像処理方法。
 (11) 画像が符号化されたビットストリームを復号する復号部と、
 前記復号部により前記ビットストリームが復号されて得られた画像の所定の領域毎に行う予測処理において、インター予測される処理対象の領域に対してイントラ予測を行い、予測画像を生成する周辺用予測画像生成部と、
 前記周辺用予測画像生成部により生成された前記予測画像の、前記処理対象の領域よりも時間的に後に処理される領域に対するイントラ予測において周辺画素として利用可能な画素の画素値を記憶する記憶部と、
 前記記憶部に記憶される周辺画素の画素値を用いて、処理対象の領域に対してイントラ予測を行い、予測画像を生成する復号用予測画像生成部と、
 差分画像に、前記復号用予測画像生成部により生成された予測画像を加算し、復号画像を生成する演算部と
 を備える画像処理装置。
 (12) 前記インター予測の処理単位のサイズと予測モードに基づいて、前記周辺用予測画像生成部により行われるイントラ予測の処理単位のサイズと予測モードを決定する決定部をさらに備え、
 前記周辺用予測画像生成部は、前記決定部により決定された処理単位のサイズの、前記決定部により決定された予測モードで、前記イントラ予測を行い、前記予測画像を生成する
 前記(11)に記載の画像処理装置。
 (13) 前記決定部は、前記イントラ予測の予測モードを平均値予測に決定する
 前記(12)に記載の画像処理装置。
 (14) 前記決定部は、前記イントラ予測の予測モードを、直前に行われたイントラ予測の予測モードに決定する
 前記(12)に記載の画像処理装置。
 (15) 前記決定部は、前記イントラ予測の予測モードを、動きベクトルの単位ベクトルと予測モードの単位ベクトルとの内積が最大となる予測モードに決定する
 前記(12)に記載の画像処理装置。
 (16) 前記決定部は、前記イントラ予測の予測モードを、処理対象の領域に隣接する、イントラ予測が行われた他の領域の予測モードに決定する
 前記(12)に記載の画像処理装置。
 (17) 前記決定部は、前記他の領域の予測モードが複数存在する場合、所定の優先順に従って選択された領域の予測モードを、前記イントラ予測の予測モードに決定する
 前記(12)に記載の画像処理装置。
 (18) 前記決定部は、前記復号部により前記ビットストリームが復号されて得られた前記インター予測に関する情報に含まれる、前記インター予測の処理単位のサイズと予測モードに基づいて、前記周辺用予測画像生成部により行われるイントラ予測の処理単位のサイズと予測モードを決定する
 前記(12)乃至(17)に記載の画像処理装置。
 (19) 前記周辺用予測画像生成部は、インター予測により生成された予測画像を用いて生成された再構成画像をイントラ予測において利用することを禁止するモードにおいて、インター予測される処理対象の領域に対してイントラ予測を行い、予測画像を生成する
 前記(11)乃至(18)に記載の画像処理装置。
 (20) 画像処理装置の画像処理方法であって、
 復号部が、画像が符号化されたビットストリームを復号し、
 周辺用予測画像生成部が、前記ビットストリームが復号されて得られた画像の所定の領域毎に行う予測処理において、インター予測される処理対象の領域に対してイントラ予測を行い、予測画像を生成し、
 記憶部が、生成された前記予測画像の、前記処理対象の領域よりも時間的に後に処理される領域に対するイントラ予測において周辺画素として利用可能な画素の画素値を記憶し、
 復号用予測画像生成部が、記憶される周辺画素の画素値を用いて、処理対象の領域に対してイントラ予測を行い、予測画像を生成し、
 演算部が、差分画像に、生成された予測画像を加算し、復号画像を生成する
 画像処理方法。
 100 画像符号化装置, 113 イントラ予測部, 131 周辺画素バッファ, 136 符号化用予測画像生成部, 141 制御部, 142 周辺用予測画像生成部, 151 予測方法判定部, 152 イントラ予測情報出力指示部, 153 動き予測情報取得部, 154 予測モード決定部, 155 周辺用予測画像生成指示部, 300 画像復号装置, 310 イントラ予測部, 331 制御部, 332 周辺画素バッファ, 333 復号用予測画像生成部, 334 周辺用予測画像生成部, 351 予測方法判定部, 352 復号用予測画像生成指示部, 353 予測モード決定部, 354 周辺用予測画像生成指示部

Claims (20)

  1.  画像の所定の領域毎に行う予測処理において、インター予測される処理対象の領域に対してイントラ予測を行い、予測画像を生成する周辺用予測画像生成部と、
     前記周辺用予測画像生成部により生成された前記予測画像の、前記処理対象の領域よりも時間的に後に処理される領域に対するイントラ予測において周辺画素として利用可能な画素の画素値を記憶する記憶部と、
     前記記憶部に記憶される周辺画素の画素値を用いて、処理対象の領域に対してイントラ予測を行い、予測画像を生成する符号化用予測画像生成部と、
     入力画像と、前記符号化用予測画像生成部により生成された予測画像の差分画像を算出する演算部と、
     前記演算部により算出された前記差分画像を符号化する符号化部と
     を備える画像処理装置。
  2.  前記インター予測の処理単位のサイズと予測モードに基づいて、前記周辺用予測画像生成部により行われるイントラ予測の処理単位のサイズと予測モードを決定する決定部をさらに備え、
     前記周辺用予測画像生成部は、前記決定部により決定された処理単位のサイズの、前記決定部により決定された予測モードで、前記イントラ予測を行い、前記予測画像を生成する
     請求項1に記載の画像処理装置。
  3.  前記決定部は、前記イントラ予測の予測モードを平均値予測に決定する
     請求項2に記載の画像処理装置。
  4.  前記決定部は、前記イントラ予測の予測モードを、直前に行われたイントラ予測の予測モードに決定する
     請求項2に記載の画像処理装置。
  5.  前記決定部は、前記イントラ予測の予測モードを、動きベクトルの単位ベクトルと予測モードの単位ベクトルとの内積が最大となる予測モードに決定する
     請求項2に記載の画像処理装置。
  6.  前記決定部は、前記イントラ予測の予測モードを、処理対象の領域に隣接する、イントラ予測が行われた他の領域の予測モードに決定する
     請求項2に記載の画像処理装置。
  7.  前記決定部は、前記他の領域の予測モードが複数存在する場合、所定の優先順に従って選択された領域の予測モードを、前記イントラ予測の予測モードに決定する
     請求項2に記載の画像処理装置。
  8.  前記周辺用予測画像生成部は、インター予測により生成された予測画像を用いて生成された再構成画像をイントラ予測において利用することを禁止するモードにおいて、インター予測される処理対象の領域に対してイントラ予測を行い、予測画像を生成する
     請求項1に記載の画像処理装置。
  9.  前記記憶部は、前記処理対象の領域がイントラ予測される場合、前記イントラ予測により生成された予測画像を用いて生成された再構成画像の、前記処理対象の領域よりも時間的に後に処理される領域に対するイントラ予測において周辺画素として利用可能な画素の画素値を記憶し、
     前記符号化用予測画像生成部は、前記記憶部に記憶される周辺画素の画素値を用いて、処理対象の領域に対してイントラ予測を行い、予測画像を生成し、
     前記符号化部は、前記符号化用予測画像生成部による前記イントラ予測の処理単位のサイズおよび予測モードに関するイントラ予測情報を、符号化した前記差分画像のビットストリームに付加する
     請求項1に記載の画像処理装置。
  10.  画像処理装置の画像処理方法であって、
     周辺用予測画像生成部が、画像の所定の領域毎に行う予測処理において、インター予測される処理対象の領域に対してイントラ予測を行い、予測画像を生成し、
     記憶部が、生成された前記予測画像の、前記処理対象の領域よりも時間的に後に処理される領域に対するイントラ予測において周辺画素として利用可能な画素の画素値を記憶し、
     符号化用予測画像生成部が、記憶される周辺画素の画素値を用いて、処理対象の領域に対してイントラ予測を行い、予測画像を生成し、
     演算部が、入力画像と、生成された予測画像の差分画像を算出し、
     符号化部が、算出された前記差分画像を符号化する
     画像処理方法。
  11.  画像が符号化されたビットストリームを復号する復号部と、
     前記復号部により前記ビットストリームが復号されて得られた画像の所定の領域毎に行う予測処理において、インター予測される処理対象の領域に対してイントラ予測を行い、予測画像を生成する周辺用予測画像生成部と、
     前記周辺用予測画像生成部により生成された前記予測画像の、前記処理対象の領域よりも時間的に後に処理される領域に対するイントラ予測において周辺画素として利用可能な画素の画素値を記憶する記憶部と、
     前記記憶部に記憶される周辺画素の画素値を用いて、処理対象の領域に対してイントラ予測を行い、予測画像を生成する復号用予測画像生成部と、
     差分画像に、前記復号用予測画像生成部により生成された予測画像を加算し、復号画像を生成する演算部と
     を備える画像処理装置。
  12.  前記インター予測の処理単位のサイズと予測モードに基づいて、前記周辺用予測画像生成部により行われるイントラ予測の処理単位のサイズと予測モードを決定する決定部をさらに備え、
     前記周辺用予測画像生成部は、前記決定部により決定された処理単位のサイズの、前記決定部により決定された予測モードで、前記イントラ予測を行い、前記予測画像を生成する
     請求項11に記載の画像処理装置。
  13.  前記決定部は、前記イントラ予測の予測モードを平均値予測に決定する
     請求項12に記載の画像処理装置。
  14.  前記決定部は、前記イントラ予測の予測モードを、直前に行われたイントラ予測の予測モードに決定する
     請求項12に記載の画像処理装置。
  15.  前記決定部は、前記イントラ予測の予測モードを、動きベクトルの単位ベクトルと予測モードの単位ベクトルとの内積が最大となる予測モードに決定する
     請求項12に記載の画像処理装置。
  16.  前記決定部は、前記イントラ予測の予測モードを、処理対象の領域に隣接する、イントラ予測が行われた他の領域の予測モードに決定する
     請求項12に記載の画像処理装置。
  17.  前記決定部は、前記他の領域の予測モードが複数存在する場合、所定の優先順に従って選択された領域の予測モードを、前記イントラ予測の予測モードに決定する
     請求項12に記載の画像処理装置。
  18.  前記決定部は、前記復号部により前記ビットストリームが復号されて得られた前記インター予測に関する情報に含まれる、前記インター予測の処理単位のサイズと予測モードに基づいて、前記周辺用予測画像生成部により行われるイントラ予測の処理単位のサイズと予測モードを決定する
     請求項12に記載の画像処理装置。
  19.  前記周辺用予測画像生成部は、インター予測により生成された予測画像を用いて生成された再構成画像をイントラ予測において利用することを禁止するモードにおいて、インター予測される処理対象の領域に対してイントラ予測を行い、予測画像を生成する
     請求項11に記載の画像処理装置。
  20.  画像処理装置の画像処理方法であって、
     復号部が、画像が符号化されたビットストリームを復号し、
     周辺用予測画像生成部が、前記ビットストリームが復号されて得られた画像の所定の領域毎に行う予測処理において、インター予測される処理対象の領域に対してイントラ予測を行い、予測画像を生成し、
     記憶部が、生成された前記予測画像の、前記処理対象の領域よりも時間的に後に処理される領域に対するイントラ予測において周辺画素として利用可能な画素の画素値を記憶し、
     復号用予測画像生成部が、記憶される周辺画素の画素値を用いて、処理対象の領域に対してイントラ予測を行い、予測画像を生成し、
     演算部が、差分画像に、生成された予測画像を加算し、復号画像を生成する
     画像処理方法。
PCT/JP2012/062086 2011-05-18 2012-05-11 画像処理装置および方法 WO2012157539A1 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2011-111577 2011-05-18
JP2011111577A JP2012244354A (ja) 2011-05-18 2011-05-18 画像処理装置および方法

Publications (1)

Publication Number Publication Date
WO2012157539A1 true WO2012157539A1 (ja) 2012-11-22

Family

ID=47176859

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2012/062086 WO2012157539A1 (ja) 2011-05-18 2012-05-11 画像処理装置および方法

Country Status (2)

Country Link
JP (1) JP2012244354A (ja)
WO (1) WO2012157539A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6080726B2 (ja) * 2013-08-27 2017-02-15 三菱電機株式会社 動画像符号化装置及び画面内予測モード決定方法及びプログラム

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006106935A1 (ja) * 2005-04-01 2006-10-12 Matsushita Electric Industrial Co., Ltd. 画像復号化装置及び画像復号化方法
JP2010166133A (ja) * 2009-01-13 2010-07-29 Hitachi Kokusai Electric Inc 動画像符号化装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006106935A1 (ja) * 2005-04-01 2006-10-12 Matsushita Electric Industrial Co., Ltd. 画像復号化装置及び画像復号化方法
JP2010166133A (ja) * 2009-01-13 2010-07-29 Hitachi Kokusai Electric Inc 動画像符号化装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
VIKTOR WAHADANIAH ET AL.: "Constrained Intra Prediction Scheme for Flexible-Sized Prediction Units in HEVC", JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC) OF ITU-T SG16 WP3 AND ISO/IEC JTC1/ SC29/WG11 4TH MEETING, 28 January 2011 (2011-01-28), DAEGU, KR *
YONGBING LIN ET AL.: "CE4 Subset2: Report of Intra Coding Improvements for Slice Boundary Blocks", JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC) OF ITU-T SG16 WP3 AND ISO/IEC JTC1/ SC29/WG11 5TH MEETING, 16 March 2011 (2011-03-16), GENEVA *

Also Published As

Publication number Publication date
JP2012244354A (ja) 2012-12-10

Similar Documents

Publication Publication Date Title
TWI592011B (zh) Image processing device and method
JP2020039153A (ja) 画像符号化装置および方法
WO2011089972A1 (ja) 画像処理装置および方法
JP2013150173A (ja) 画像処理装置および方法
WO2013002110A1 (ja) 画像処理装置および方法
KR102336932B1 (ko) 화상 처리 장치 및 방법
JP5982734B2 (ja) 画像処理装置および方法
US9591329B2 (en) Image processing device and method for encoding and decoding image
WO2014050731A1 (ja) 画像処理装置および方法
WO2013065570A1 (ja) 画像処理装置および方法
US20140092979A1 (en) Image processing apparatus and method
WO2013108688A1 (ja) 画像処理装置および方法
WO2014156708A1 (ja) 画像復号装置および方法
WO2012105406A1 (ja) 画像処理装置および方法
WO2014103764A1 (ja) 画像処理装置および方法
WO2013051453A1 (ja) 画像処理装置および方法
WO2013002106A1 (ja) 画像処理装置および方法
WO2012173063A1 (ja) 画像処理装置および方法
WO2013065567A1 (ja) 画像処理装置および方法
WO2012157539A1 (ja) 画像処理装置および方法
WO2014002900A1 (ja) 画像処理装置および画像処理方法
WO2012157488A1 (ja) 画像処理装置および方法
WO2013002111A1 (ja) 画像処理装置および方法
JP2013150124A (ja) 画像処理装置および方法
WO2014156705A1 (ja) 復号装置および復号方法、並びに、符号化装置および符号化方法

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 12785900

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 12785900

Country of ref document: EP

Kind code of ref document: A1