WO2013002106A1 - Dispositif et procédé de traitement d'image - Google Patents
Dispositif et procédé de traitement d'image Download PDFInfo
- Publication number
- WO2013002106A1 WO2013002106A1 PCT/JP2012/065815 JP2012065815W WO2013002106A1 WO 2013002106 A1 WO2013002106 A1 WO 2013002106A1 JP 2012065815 W JP2012065815 W JP 2012065815W WO 2013002106 A1 WO2013002106 A1 WO 2013002106A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- unit
- pixel
- image
- intra prediction
- prediction
- Prior art date
- Legal status (The legal status 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 status listed.)
- Ceased
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/103—Selection of coding mode or of prediction mode
- H04N19/11—Selection 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
- a device that conforms to a method such as Moving (Pictures Experts Group) has been widely used for both information distribution in broadcasting 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 did not support encoding methods with a lower code amount (bit rate) than MPEG1, that is, a higher compression rate.
- bit rate code amount
- MPEG4 encoding system has been standardized accordingly.
- 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.
- MPEG4 activities standardization to achieve higher coding efficiency based on this H.26L and incorporating functions not supported by H.26L has been carried out as Joint Model of Enhanced-Compression Video Coding. It was.
- 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 when interpolating an unusable (not available) surrounding pixel value using an available (available) surrounding pixel, Since the same value is used, there is a possibility that sufficient encoding efficiency cannot be realized.
- the present disclosure has been made in view of such a situation, and allows pixels in an inter prediction block that cannot be used to be replaced with pixels with higher accuracy, thereby improving encoding efficiency.
- the purpose is to be able to.
- One aspect of the present disclosure is that in constrained intra prediction, adjacent pixels that are adjacent to the region that is the processing target of the constrained intra prediction and are used for prediction, and are sandwiched between two usable peripheral pixels For one or a plurality of consecutive peripheral pixels that cannot be used, an interpolation pixel generation unit that generates an interpolation pixel value corresponding to the position, and an interpolation pixel value generated by the interpolation pixel generation unit is used.
- the image processing apparatus includes a predicted image generation unit that performs intra prediction and generates a predicted image.
- the interpolation pixel generation unit can generate an interpolation pixel value having a value corresponding to a distance from the available surrounding pixels.
- the interpolation pixel generation unit can generate the interpolation pixel value by linear interpolation using two neighboring pixels that can be used.
- the interpolation pixel generation unit can perform division using an approximate value that is a power of 2 in the linear interpolation.
- the interpolation pixel generation unit calculates a pixel value of the right adjacent pixel when the pixel adjacent to the right of the peripheral pixel is usable with respect to the unusable peripheral pixel at the upper left of the region.
- the pixel value of the lower pixel is used as the interpolation pixel value of the peripheral pixel.
- the flag determination unit further determines a value of flag information related to intra prediction
- the interpolated pixel generation unit determines that the restricted intra prediction is specified by the flag information
- a size determination unit that determines the size of the region is further included, and the interpolation pixel generation unit can generate the interpolation pixel value when the size determination unit determines that the region is small.
- the size determination unit determines a size of the region using a threshold value, and the interpolation pixel generation unit determines the interpolation pixel value when the size determination unit determines that the region is equal to or less than the threshold value. Can be generated.
- a transmission unit for transmitting the threshold value can be further provided.
- a receiving unit that receives the threshold value to be transmitted is further provided, and the size determining unit can determine the size of the region using the threshold value received by the receiving unit.
- the threshold value can be set according to the profile level.
- One aspect of the present disclosure is also an image processing method of the image processing device, wherein the interpolation pixel generation unit is adjacent to the region that is the processing target of the restricted intra prediction in the restricted intra prediction, and the prediction is performed. For one or more consecutive peripheral pixels that are used peripheral pixels that are sandwiched between two peripheral pixels that can be used, an interpolated pixel value corresponding to the position is generated.
- This is an image processing method in which a predicted image generation unit performs intra prediction using a generated interpolation pixel value to generate a predicted image.
- an interpolated pixel value corresponding to the position is generated, and intra prediction is performed using the generated interpolated pixel value.
- An image is generated.
- an image can be processed.
- encoding efficiency can be improved.
- 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 that is an image processing 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, a selection unit 113, an intra prediction unit 114, a motion prediction / compensation unit 115, and a prediction.
- An image selection unit 116 and a rate control unit 117 are included.
- the image encoding apparatus 100 further includes a restricted intra prediction unit 121.
- 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 order of the frames is rearranged to the intra prediction unit 114 and the motion prediction / compensation unit 115.
- the calculation unit 103 subtracts the prediction image supplied from the intra prediction unit 114 or the motion prediction / compensation unit 115 via the prediction image selection unit 116 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 114 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 115 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 117, 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 117, the code amount becomes a target value set by the rate control unit 117 (or approximates the target value).
- the lossless encoding unit 106 acquires intra prediction information including information indicating an intra prediction mode from the intra prediction unit 114, and moves inter prediction information including information indicating an inter prediction mode, motion vector information, and the like. Obtained from the prediction / compensation unit 115. 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 as a bit stream at a predetermined timing, for example, to a recording device (recording medium) or a transmission path (not shown) in the subsequent stage. That is, various encoded information is supplied to the decoding side.
- 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 orthogonally transformed output (difference information restored locally) is supplied to the calculation unit 110.
- the calculation unit 110 converts the inverse orthogonal transform result supplied from the inverse orthogonal transform unit 109, that is, locally restored difference information, into the intra prediction unit 114 or the motion prediction / compensation unit 115 via the predicted image selection unit 116. Are added to the predicted image 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 frame memory 112.
- 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 reconstructed image supplied from the calculation unit 110 and the decoded image supplied from the loop filter 111, respectively.
- the frame memory 112 supplies the stored reconstructed image to the intra prediction unit 114 via the selection unit 113 at a predetermined timing or based on a request from the outside such as the intra prediction unit 114.
- the frame memory 112 also stores the decoded image stored at a predetermined timing or based on a request from the outside such as the motion prediction / compensation unit 115 via the selection unit 113. 115.
- the selection unit 113 indicates a supply destination of an image output from the frame memory 112. For example, in the case of intra prediction, the selection unit 113 reads an image (reconstructed image) that has not been subjected to filter processing from the frame memory 112 and supplies it to the intra prediction unit 114 as peripheral pixels.
- the selection unit 113 reads out an image (decoded image) that has been filtered from the frame memory 112, and supplies it as a reference image to the motion prediction / compensation unit 115.
- the intra prediction unit 114 When the intra prediction unit 114 acquires an image (peripheral image) of a peripheral region located around the processing target region from the frame memory 112, the intra prediction unit 114 basically uses a pixel value of the peripheral image to perform a prediction unit (PU). Intra prediction (intra-screen prediction) for generating a predicted image with the processing unit as the processing unit. The intra prediction unit 114 performs this intra prediction in a plurality of modes (intra prediction modes) prepared in advance.
- Intra prediction modes intra prediction modes
- the intra prediction unit 114 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 114 selects the optimal intra prediction mode, the intra prediction unit 114 supplies the predicted image generated in the optimal mode to the predicted image selection unit 116.
- the intra prediction unit 114 appropriately supplies intra prediction information including information related to intra prediction, such as an optimal intra prediction mode, to the lossless encoding unit 106 to be encoded.
- the motion prediction / compensation unit 115 basically performs motion prediction (inter prediction) using the input image supplied from the screen rearrangement buffer 102 and the reference image supplied from the frame memory 112 as a processing unit. 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 115 performs such inter prediction in a plurality of modes (inter prediction modes) prepared in advance.
- the motion prediction / compensation unit 115 generates prediction images 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 115 supplies the predicted image generated in the optimal mode to the predicted image selection unit 116.
- the motion prediction / compensation unit 115 supplies inter prediction information including information related to inter prediction, such as an optimal inter prediction mode, to the lossless encoding unit 106 to be encoded.
- inter prediction when inter prediction is selected as the optimal prediction mode, the motion prediction / compensation unit 115 notifies the intra prediction unit 114 of information on the optimal inter prediction mode.
- the predicted image selection unit 116 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 116 selects the intra prediction unit 114 as a supply source of the prediction image, and supplies the prediction image supplied from the intra prediction unit 114 to the calculation unit 103 and the calculation unit 110.
- the predicted image selection unit 116 selects the motion prediction / compensation unit 115 as a supply source of the predicted image, and calculates the predicted image supplied from the motion prediction / compensation unit 115 as the calculation unit 103. To the arithmetic unit 110.
- the rate control unit 117 controls the quantization operation rate 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.
- 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.
- Figure 2 shows an example of 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 areas (for example, AVC macroblocks and sub-macroblocks, LCU, CU, SCU, PU, TU, etc.), which may be any of them. .
- areas for example, AVC macroblocks and sub-macroblocks, LCU, CU, SCU, PU, TU, etc.
- 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. 3 is a diagram for explaining the Angular Prediction intra prediction method.
- ADI Arbitrary Directional Intra
- Fig. 4 shows a diagram for explaining the Arbitrary Directional Intra (ADI) intra prediction method.
- ADI Arbitrary Directional Intra
- the adjacent pixel value located at the lower left is also used.
- the prediction modes of Vertical, Horizontal, DC, DiagonalLeDown-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 mode (constrained intra prediction) for prohibiting intra prediction from pixels reconstructed by inter prediction is prepared for inter pictures.
- This mode is a mode for suppressing the influence of an error on intra prediction even when an error is mixed in an image of inter prediction or an image referred to in inter prediction.
- constrained_intra_pred_flag 1 (constrained intra prediction)
- constrained intra prediction there is a high possibility that many neighboring pixels cannot be referred to in the prediction.
- the number of available prediction modes is greatly suppressed, and the coding efficiency may be reduced.
- FIG. 5 illustrates an example of neighboring adjacent pixels necessary for intra prediction and the state of inter prediction / intra prediction in the surrounding CU including the neighboring pixels for the region CU # n. .
- A, B, D, E, F, H, and I are inter-predicted CUs
- C, G, J, and K are intra-predicted CUs.
- inter-predicted pixels and intra-predicted pixels are mixed in the neighboring pixels in the processing target area CU # n.
- the available intra prediction mode is only the DC (average value) prediction mode.
- the peripheral pixel cannot be used in the existing standard, the pixel value is predicted at a fixed 128.
- HEVC's Intra Angular Prediction aims to improve coding efficiency by setting the prediction direction of intra prediction to 33 directions and finer settings than conventional intra prediction in AVC, etc. This could lead to a significant drop.
- Non-Patent Document 2 discloses this.
- 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 .
- the peripheral pixels composed of inter prediction pixels are changed from the pixels composed of intra prediction as shown in the following equation (1). 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 (2). And intra prediction is performed with all surrounding pixels available.
- the value to be replaced may be significantly different from the value before replacement.
- the error is more likely to become more prominent.
- the image encoding device 100 performs an interpolation process according to the position of the pixel.
- 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. 6 is a block diagram illustrating a main configuration example of a restricted intra prediction unit and the like.
- the intra prediction unit 114 includes a candidate prediction image generation unit 131, a cost function value calculation unit 132, a prediction mode determination unit 133, a prediction image generation unit 134, and a mode buffer 135.
- the restricted intra prediction unit 121 includes a flag determination unit 141, an availability determination unit 142, and an interpolation pixel generation unit 143.
- the flag determination unit 141 determines the value of constrained_intra_pred_flag and performs constrained intra prediction on the region to be processed, or permits normal intra prediction (intra prediction from pixels reconstructed by inter prediction). Control mode instructing which intra prediction is to be performed is supplied to the candidate predicted image generation unit 131, the availability determination unit 142, and the interpolation pixel generation unit 143.
- the candidate predicted image generation unit 131 acquires a peripheral pixel value that is a pixel value of a peripheral area located around the area from the frame memory 112.
- the candidate prediction image generation unit 131 When normal intra prediction is designated by the control instruction supplied from the flag determination unit 141, the candidate prediction image generation unit 131 performs prediction in each intra prediction mode using the peripheral pixel values acquired from the frame memory 112. An image (candidate predicted image) is generated, and the pixel value (candidate predicted image pixel value) is supplied to the cost function value calculation unit 132.
- the candidate prediction image generation unit 131 includes an interpolation pixel generation unit among the peripheral pixel values acquired from the frame memory 112.
- the peripheral pixel value used for pixel interpolation is supplied to the interpolation pixel generation unit 143 by 143.
- the candidate predicted image generation unit 131 acquires the pixel value (interpolation pixel value) of the interpolated pixel from the interpolation pixel generation unit 143.
- the candidate predicted image generation unit 131 generates a predicted image (candidate predicted image) in each intra prediction mode using the peripheral pixel value acquired from the frame memory 112 and the interpolated pixel value, and the pixel value (candidate Predicted image pixel value) is supplied to the cost function value calculation unit 132.
- the cost function value calculation unit 132 obtains the pixel value (input image pixel value) of the input image from the screen rearrangement buffer 102, and uses the input image pixel value and the candidate predicted image pixel value, such as AVC and HEVC. The cost function value of each mode is calculated by the same method as in the case. The cost function value calculation unit 132 supplies the calculated cost function value to the prediction mode determination unit 133.
- the prediction mode determination unit 133 determines the optimal intra prediction mode based on the magnitude of the supplied cost function value, and notifies the prediction image generation unit 134 of the determination result (optimum intra mode).
- the prediction image generation unit 134 generates a prediction image in the optimal intra prediction mode (optimum intra mode) notified from the prediction mode determination unit 133.
- the predicted image generation unit 134 acquires the peripheral pixel value of the area from the frame memory 112, and generates a predicted image using the peripheral pixel value.
- the predicted image generation unit 134 acquires peripheral pixel values of the region from the frame memory 112 and acquires an interpolation pixel value from the interpolation pixel generation unit 143 and uses them. A prediction image is generated.
- the predicted image generation unit 134 supplies the pixel value (predicted image pixel value) of the generated predicted image to the predicted image selection unit 116.
- the predicted image is supplied to the calculation unit 103 and the calculation unit 110, and is used to generate a difference image and a reconstructed image.
- the predicted image generation unit 134 supplies intra mode information, which is information indicating the prediction mode (prediction mode of the predicted image) set to the optimal intra mode, to the lossless encoding unit 106 and transmits the information to the encoding side.
- the predicted image generation unit 134 supplies the mode buffer 135 with a prediction mode (prediction mode of the predicted image) set to the optimal intra mode.
- the mode buffer 135 stores information on the optimal prediction mode selected by the prediction image selection unit 116. That is, the mode buffer 135 acquires and stores information regarding the optimal intra prediction mode supplied from the predicted image generation unit 134 or information regarding the optimal inter prediction mode supplied from the motion prediction / compensation unit 115.
- the mode buffer 135 supplies the stored prediction mode to the availability determination unit 142 as the peripheral region prediction mode at a predetermined timing or based on an external request. That is, the prediction mode of the region is used as the peripheral region prediction mode in constrained intra prediction for a region processed after the prediction mode of the region.
- the availability determination unit 142 acquires the surrounding area prediction mode from the mode buffer 135 and determines whether the surrounding pixels are usable. That is, the availability determination unit 142 determines that the surrounding pixels generated by the inter prediction are unusable for each surrounding pixel of the area, and determines that the surrounding pixels generated by the intra prediction are usable. The availability determination unit 142 notifies the interpolation pixel generation unit 143 of the determination result.
- the interpolation pixel generation unit 143 acquires the determination result supplied from the availability determination unit 142. Then, the interpolation pixel generation unit 143 performs an interpolation process on unusable pixels (that is, inter-predicted pixels). That is, the interpolation pixel generation unit 143 acquires the peripheral pixel value necessary for interpolation of the unusable pixel from the candidate predicted image generation unit 131, and performs an interpolation process using the peripheral pixel value.
- the interpolation pixel generation unit 143 generates an interpolation pixel value corresponding to the position of the pixel to be interpolated.
- the interpolation pixel generation unit 143 supplies the pixel value (interpolation pixel value) generated by the interpolation to the candidate prediction image generation unit 131 and the prediction image generation unit 134.
- the interpolation pixel generation unit 143 performs an interpolation process according to the position of the pixel as shown in FIG.
- pixel q and pixel r are peripheral pixels belonging to an available area generated by intra prediction.
- the pixel p is set as a pixel to be interpolated. That is, the pixel p is a pixel to be generated by interpolation (that is, a peripheral pixel belonging to a not-available area generated by inter prediction).
- the pixel value of the pixel q is referred to as a pixel value q.
- the pixel value of the pixel r is referred to as a pixel value r.
- the interpolation pixel value of the pixel p is referred to as an interpolation pixel value p.
- a portion (pixel row) where unusable pixels including the pixel p are continuous is sandwiched between the pixel q and the pixel r. That is, the pixel q and the pixel r are adjacent to both the area of the available area adjacent to the not available area and the area that is not available (not available). Pixel.
- the distance t1 is a distance between the pixel q and the pixel p.
- the distance t2 is a distance between the pixel r and the pixel p. That is, the distance t1 and the distance t2 are distances between a pixel to be interpolated and a pixel belonging to an available area closest to the pixel to be interpolated on both sides of the pixel to be interpolated. .
- the interpolation pixel generation unit 143 calculates an interpolation pixel value p having a value corresponding to the position of the pixel p using the following equation (3).
- the interpolation pixel generation unit 143 performs the same interpolation in the vertical direction.
- the interpolated pixel value is also calculated using Equation (3) for the peripheral pixels in the inter-predicted regions such as H and I in FIG.
- the interpolated pixel generation unit 143 is a peripheral pixel that is used for prediction in constrained intra prediction, and is used in a horizontal direction or a vertical direction, and one or a plurality of consecutive non-uses that are sandwiched by the peripheral pixels that can be used. For possible peripheral pixels, an interpolation pixel value having a value corresponding to the position is generated.
- the interpolation pixel generation unit 143 generates an interpolation pixel value having a value according to the distance from the available peripheral pixels, as shown in Expression (3).
- the interpolation pixel generation unit 143 generates an interpolation pixel value corresponding to the position of the pixel to be interpolated. By doing so, the interpolation pixel generation unit 143 reproduces the change more correctly than in the case of the conventional interpolation method described above even when interpolating a pixel of a portion where the pixel value changes, such as gradation. can do.
- the total size of inter-predicted peripheral regions that are continuous in the horizontal direction or the vertical direction may not be a power of 2. In this case, division may be required in the calculation of Equation (3), and the load may increase. There is.
- an approximate power of 2 in the denominator of Equation (3) that is, a power of 2 closest to the value of t1 + t2 is used instead of t1 + t2.
- the pixel to be interpolated has been described as being interpolated using one available pixel (two pixels in total) on both sides.
- the present invention is not limited to this.
- two or more pixels on both sides (four in total) Interpolation may be performed using a pixel or more).
- the pixel value (interpolated pixel value) of the pixel group to be interpolated as shown in FIG. Or may be changed in an n-order curve using an n-order function different from the above-described equation (3).
- the pixel used for the interpolation is described as the pixel adjacent to the region predicted intra and the region predicted inter between the intra predicted region, the present invention is not limited to this. However, it is desirable to use a pixel located as close as possible to the pixel to be interpolated.
- the interpolation pixel generation unit 143 performs interpolation processing on the upper left pixel of the area as follows.
- a pixel p is a peripheral pixel at the upper left of the area CU # n and is a peripheral pixel belonging to an unavailable area generated by inter prediction
- the pixel p The pixel value (pixel value q) of the pixel q adjacent to the left or the pixel value (pixel value r) of the pixel r adjacent below the pixel p is set as the interpolation pixel value p.
- the interpolation pixel generation unit 143 sets the pixel value (pixel value q) of the pixel q as the interpolation pixel value p. Also, when the pixel q is a peripheral pixel belonging to an unusable (not available) region generated by inter prediction, and the pixel r is a peripheral pixel belonging to an available region generated by intra prediction The interpolation pixel generation unit 143 sets the pixel value (pixel value q) of the pixel q as the interpolation pixel value p.
- the interpolation pixel generation unit 143 when both the pixel q and the pixel r are peripheral pixels belonging to a not-available region generated by inter prediction, the interpolation pixel generation unit 143 generates the interpolation pixel value p (upper left of the region). (Interpolation processing of peripheral pixels p) is omitted.
- the interpolation pixel generation unit 143 performs the interpolation process on the upper left peripheral pixel of the region using not only the horizontal direction but also the adjacent pixels in the vertical direction. That is, the interpolation pixel generation unit 143 performs the interpolation process of the upper left peripheral pixel of the area by a method different from that of the other peripheral pixels described above, and generates an interpolation pixel value corresponding to the position of the pixel to be interpolated.
- the interpolation pixel generation unit 143 can interpolate the peripheral pixel at the upper left of the area by a pixel closer to the peripheral pixel. Therefore, the interpolation pixel generation unit 143 can obtain a more correct interpolation result than the conventional interpolation method described above.
- the interpolation pixel generation unit 143 sets the interpolation pixel value p to a value other than the two pixels. You may make it produce
- the intra prediction unit 114 can perform constrained intra prediction using a more correct interpolation result, so that the prediction accuracy of intra prediction can be improved. Therefore, the image encoding device 100 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 114 performs an intra prediction process.
- step S104 the motion prediction / compensation unit 115 performs an inter motion prediction process.
- step S105 the predicted image selection unit 116 selects one of a predicted image generated by intra prediction and a predicted image generated by inter prediction.
- the selection result (information indicating the optimal prediction mode) is stored in the mode buffer 135.
- step S106 the calculation unit 103 calculates a difference between the image rearranged by the process of step S103 and the predicted image selected by the process of step S105 (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 S107 the orthogonal transform unit 104 orthogonally transforms the difference image generated by the process in step S106. Specifically, orthogonal transformation such as discrete cosine transformation and Karhunen-Loeve transformation is performed, and orthogonal transformation coefficients are output.
- step S108 the quantization unit 105 quantizes the orthogonal transform coefficient obtained by the process in step S107.
- the difference image quantized by the process in step S108 is locally decoded as follows. That is, in step S109, the inverse quantization unit 108 inversely quantizes the quantized orthogonal transform coefficient (also referred to as a quantization coefficient) generated by the quantization process in step S108. In step S ⁇ b> 110, the inverse orthogonal transform unit 109 performs inverse orthogonal transform on the orthogonal transform coefficient obtained by the inverse quantization process in step S ⁇ b> 109 with characteristics corresponding to the characteristics of the orthogonal transform unit 104. Thereby, the difference image is restored.
- the inverse quantization unit 108 inversely quantizes the quantized orthogonal transform coefficient (also referred to as a quantization coefficient) generated by the quantization process in step S108.
- the inverse orthogonal transform unit 109 performs inverse orthogonal transform on the orthogonal transform coefficient obtained by the inverse quantization process in step S ⁇ b> 109 with characteristics corresponding to the characteristics of the orthogonal transform
- step S111 the calculation unit 110 adds the predicted image selected in step S105 to the difference image generated in step S110, and generates a locally decoded image (reconstructed image).
- step S112 the loop filter 111 appropriately performs a loop filter process including a deblocking filter process and an adaptive loop filter process on the reconstructed image obtained by the process of step S111 to generate a decoded image.
- step S113 the frame memory 112 stores the decoded image generated by the process of step S112 or the reconstructed image generated by the process of step S111.
- step S114 the lossless encoding unit 106 encodes the orthogonal transform coefficient quantized by the process in step S107. 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, information about filter processing, and the like, and adds the information to the bitstream.
- step S115 the accumulation buffer 107 accumulates the bit stream obtained by the process in step S114.
- 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 S116 the rate control unit 117 causes the quantization unit 105 to prevent overflow or underflow based on the code amount (generated code amount) of the encoded data accumulated in the accumulation buffer 107 by the process of step S115. Controls the rate of quantization operation.
- step S116 When the process of step S116 is finished, the encoding process is finished.
- step S132 the availability determination unit 142 acquires the surrounding area prediction mode from the mode buffer 135, and determines whether or not the pixel values of the surrounding pixels in the upper left of the area are usable based on the information. To do. When it determines with it being unusable, the availability determination part 142 advances a process to step S133.
- step S133 the availability determination unit 142 determines, based on the surrounding area prediction mode acquired from the mode buffer 135, a pixel that replaces the surrounding pixel at the upper left of the area (for example, the right or left of the surrounding pixel at the upper left of the area) It is determined whether or not the pixel value of the lower pixel is usable. When it is determined that the substitute pixel can be used, the availability determination unit 142 proceeds with the process to step S134.
- step S134 the interpolated pixel generation unit 143 interpolates the pixel value of the upper left pixel as candidates as well as the peripheral pixels in the horizontal direction as well as the peripheral pixels in the horizontal direction as described with reference to FIG.
- the interpolation pixel generation unit 143 proceeds with the process to step S135.
- step S133 If it is determined in step S133 that the substitute pixel cannot be used, the availability determination unit 142 omits the process of step S134 and proceeds to step S135.
- step S132 If it is determined in step S132 that the pixel value of the upper left peripheral pixel of the area is usable, the availability determination unit 142 omits the processes in steps S133 and S134 and performs the process in step S135. Proceed.
- step S135 the availability determination unit 142 determines whether there is a pixel whose pixel value cannot be used for peripheral pixels other than the upper left of the area based on the peripheral area prediction mode. When it is determined that there is a pixel whose pixel value cannot be used, the availability determination unit 142 proceeds with the process to step S136.
- step S136 the interpolation pixel generation unit 143 generates an interpolation pixel value corresponding to the position of the unavailable pixel as described above with reference to FIG.
- the interpolation pixel generation unit 143 proceeds with the process to step S137.
- step S135 If it is determined in step S135 that there is no pixel whose pixel value cannot be used, the availability determination unit 142 omits the process in step S136 and advances the process to step S137.
- step S131 when it is determined in step S131 that constrained intra prediction is not performed (normal intra prediction is performed), the flag determination unit 141 omits steps S132 to S136 and proceeds to step S137. .
- step S137 the candidate predicted image generation unit 131 performs intra prediction of the area in each mode.
- step S138 the cost function value calculation unit 132 calculates a cost function value for each mode.
- step S139 the prediction mode determination unit 133 determines the optimal intra prediction mode.
- step S140 the predicted image generation unit 134 generates a predicted image in the optimal intra prediction mode.
- step S140 the predicted image generation unit 134 ends the intra prediction process and returns the process to FIG.
- the image encoding device 100 can improve the encoding efficiency.
- FIG. 11 is a block diagram illustrating a main configuration example of an image decoding apparatus that is an image processing apparatus corresponding to the image encoding apparatus 100 of FIG.
- the image decoding apparatus 200 shown in FIG. 11 decodes the encoded data generated by the image encoding apparatus 100 using a decoding method corresponding to the encoding method.
- the image decoding apparatus 200 includes a storage buffer 201, a lossless decoding unit 202, an inverse quantization unit 203, an inverse orthogonal transform unit 204, a calculation unit 205, a loop filter 206, a screen rearrangement buffer 207, and a D A / A converter 208 is included.
- the image decoding apparatus 200 includes a frame memory 209, a selection unit 210, an intra prediction unit 211, a motion prediction / compensation unit 212, and a selection unit 213.
- the image decoding apparatus 200 includes a restricted intra prediction unit 221.
- the accumulation buffer 201 accumulates the transmitted encoded data, and supplies the encoded data to the lossless decoding unit 202 at a predetermined timing.
- the lossless decoding unit 202 decodes the information supplied from the accumulation buffer 201 and encoded by the lossless encoding unit 106 in FIG. 1 by a method corresponding to the encoding method of the lossless encoding unit 106.
- the lossless decoding unit 202 supplies the quantized coefficient data of the difference image obtained by decoding to the inverse quantization unit 203.
- the lossless decoding unit 202 refers to information on the optimal prediction mode obtained by decoding the encoded data, and determines whether the intra prediction mode or the inter prediction mode is selected as the optimal prediction mode. . That is, the lossless decoding unit 202 determines whether the prediction mode employed in the transmitted encoded data is intra prediction or inter prediction.
- the lossless decoding unit 202 supplies information on the prediction mode to the intra prediction unit 211 or the motion prediction / compensation unit 212 based on the determination result.
- the lossless decoding unit 202 is intra prediction information, which is information about the selected intra prediction mode supplied from the encoding side. Is supplied to the intra prediction unit 211.
- the lossless decoding unit 202 is an inter that is information about the selected inter prediction mode supplied from the encoding side. The prediction information is supplied to the motion prediction / compensation unit 212.
- the inverse quantization unit 203 inversely quantizes the quantized coefficient data obtained by decoding by the lossless decoding unit 202. That is, the inverse quantization unit 203 performs inverse quantization by a method corresponding to the quantization method of the quantization unit 105 in FIG. The inverse quantization unit 203 supplies the coefficient data obtained by the inverse quantization to the inverse orthogonal transform unit 204.
- the inverse orthogonal transform unit 204 performs inverse orthogonal transform on the coefficient data supplied from the inverse quantization unit 203 in a method corresponding to the orthogonal transform method of the orthogonal transform unit 104 in FIG.
- the inverse orthogonal transform unit 204 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 205.
- a prediction image is supplied to the calculation unit 205 from the intra prediction unit 211 or the motion prediction / compensation unit 212 via the selection unit 213.
- the calculation unit 205 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 arithmetic unit 205 supplies the reconstructed image to the loop filter 206.
- the loop filter 206 appropriately performs a loop filter process including a deblock filter process and an adaptive loop filter process on the supplied reconstructed image to generate a decoded image.
- the loop filter 206 removes block distortion by performing a deblocking filter process on the reconstructed image.
- the loop filter 206 performs image quality improvement by performing loop filter processing using a Wiener filter on the deblock filter processing result (reconstructed image from which block distortion has been removed). I do.
- the type of filter processing performed by the loop filter 206 is arbitrary, and filter processing other than that described above may be performed. Further, the loop filter 206 may perform filter processing using the filter coefficient supplied from the image encoding device 100 of FIG.
- the loop filter 206 supplies the decoded image as the filter processing result to the screen rearrangement buffer 207 and the frame memory 209. Note that the filter processing by the loop filter 206 can be omitted. That is, the output of the calculation unit 205 can be stored in the frame memory 209 without being subjected to filter processing.
- the intra prediction unit 211 uses pixel values of pixels included in this image as pixel values of peripheral pixels.
- the screen rearrangement buffer 207 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 208 D / A converts the decoded image supplied from the screen rearrangement buffer 207, and outputs and displays the decoded image on a display (not shown).
- the frame memory 209 stores supplied reconstructed images and decoded images. Also, the frame memory 209 selects the stored reconstructed image or decoded image from the selection unit 210 at a predetermined timing or based on an external request such as the intra prediction unit 211 or the motion prediction / compensation unit 212. To the intra prediction unit 211 and the motion prediction / compensation unit 212.
- the intra prediction unit 211 performs basically the same processing as the intra prediction unit 114 in FIG. However, the intra prediction unit 211 performs intra prediction only on a region where a prediction image is generated by intra prediction at the time of encoding.
- the motion prediction / compensation unit 212 performs an inter motion prediction process based on the inter prediction information supplied from the lossless decoding unit 202, and generates a predicted image. Note that the motion prediction / compensation unit 212 performs the inter motion prediction process only on the region where the inter prediction is performed at the time of encoding, based on the inter prediction information supplied from the lossless decoding unit 202.
- the intra prediction unit 211 or the motion prediction / compensation unit 212 supplies the generated predicted image to the calculation unit 205 via the selection unit 213 for each region of the prediction processing unit.
- the selection unit 213 supplies the prediction image supplied from the intra prediction unit 211 or the prediction image supplied from the motion prediction / compensation unit 212 to the calculation unit 205.
- FIG. 12 is a block diagram illustrating a main configuration example such as constrained intra prediction.
- the intra prediction unit 211 includes a prediction mode information buffer 231, a predicted image generation unit 232, and a peripheral mode buffer 233.
- the restricted intra prediction unit 221 includes a flag determination unit 241, an availability determination unit 242, and an interpolation pixel generation unit 243.
- the prediction mode information buffer 231 acquires and stores intra mode information obtained by decoding the bitstream in the lossless decoding unit 202. When the region is in the intra prediction mode, the prediction mode information buffer 231 sends the stored prediction mode (intra prediction mode) of the region to the predicted image generation unit 232 at a predetermined timing or according to an external request. Supply.
- the flag determination unit 241 performs the same process as the flag determination unit 141. That is, the flag determination unit 241 determines the value of constrained_intra_pred_flag transmitted from the encoding side, and performs constrained intra prediction on the region to be processed, or performs normal intra prediction (reconstructed by inter prediction). Whether to perform intra prediction from the selected pixel).
- the constrained_intra_pred_flag is included in a sequence parameter set, a picture parameter set, and the like, and transmitted from the encoding side (image encoding apparatus 100). Then, the constrained_intra_pred_flag is extracted by, for example, the lossless decoding unit 202 and supplied to the flag determination unit 241.
- the flag determination unit 241 supplies a control instruction that instructs which intra prediction is performed to the predicted image generation unit 232, the availability determination unit 242, and the interpolation pixel generation unit 243.
- the predicted image generation unit 232 receives the peripheral pixel values in the intra prediction mode supplied from the prediction mode information buffer 231 from the frame memory 209. get.
- the prediction image generation unit 232 generates a prediction image in the intra prediction mode supplied from the prediction mode information buffer 231 using the peripheral pixel value, and supplies the pixel value (prediction image pixel value) to the calculation unit 205. .
- the prediction image generation unit 232 sets the neighboring pixel values in the intra prediction mode supplied from the prediction mode information buffer 231. , Obtained from the frame memory 209.
- the flag determination unit 241 further supplies, to the interpolation pixel generation unit 243, the peripheral pixel value used for pixel interpolation by the interpolation pixel generation unit 243 among the peripheral pixel values acquired from the frame memory 209.
- the predicted image generation unit 232 acquires the pixel value (interpolation pixel value) of the interpolated pixel from the interpolation pixel generation unit 243.
- the prediction image generation unit 232 generates a prediction image (candidate prediction image) in the intra prediction mode supplied from the prediction mode information buffer 231 using the peripheral pixel value acquired from the frame memory 209 and the interpolation pixel value. Then, the pixel value (predicted image pixel value) is supplied to the calculation unit 205.
- the peripheral mode buffer 233 stores the prediction mode information of the area. That is, the peripheral mode buffer 233 acquires and stores information related to the intra prediction mode supplied from the prediction mode information buffer 231 or information related to the optimal inter prediction mode supplied from the motion prediction / compensation unit 212.
- the peripheral mode buffer 233 supplies the stored prediction mode to the availability determination unit 242 as the peripheral area prediction mode at a predetermined timing or based on an external request. That is, the prediction mode of the region is used as the peripheral region prediction mode in constrained intra prediction for a region processed after the prediction mode of the region.
- the availability determination unit 242 acquires the peripheral region prediction mode from the peripheral mode buffer 233 as in the case of the availability determination unit 142, and the peripheral pixels Determine whether is available. The availability determination unit 242 notifies the interpolation pixel generation unit 243 of the determination result.
- the interpolation pixel generation unit 243 is based on the determination result supplied from the availability determination unit 242 as in the case of the interpolation pixel generation unit 143. Interpolation processing is performed on unusable pixels (that is, inter-predicted pixels). In other words, the interpolation pixel generation unit 243 acquires the peripheral pixel value necessary for interpolation of the unusable pixel from the predicted image generation unit 232, and performs an interpolation process using the peripheral pixel value.
- the interpolation pixel generation unit 243 generates an interpolation pixel value corresponding to the position of the pixel to be interpolated, as in the case of the interpolation pixel generation unit 143 (as described with reference to FIGS. 7 and 8). . Therefore, the interpolation pixel generation unit 243 can obtain the same interpolation result as the interpolation pixel generation unit 143, the intra prediction unit 211 can perform the same prediction as the intra prediction unit 114, and can obtain the same predicted image. Obtainable. Therefore, the image decoding apparatus 200 can correctly decode the encoded data generated in the image encoding apparatus 100, and can realize improvement in encoding efficiency.
- step S201 the accumulation buffer 201 accumulates the transmitted bit stream.
- step S202 the lossless decoding unit 202 decodes the bit stream (encoded difference image information) supplied from the accumulation buffer 201. At this time, various types of information other than the difference image information included in the bitstream, such as information on the prediction mode information, is also decoded.
- step S203 the inverse quantization unit 203 inversely quantizes the quantized orthogonal transform coefficient obtained by the process in step S202.
- step S204 the inverse orthogonal transform unit 204 performs inverse orthogonal transform on the orthogonal transform coefficient inversely quantized in step S203.
- step S205 the intra prediction unit 211 or the motion prediction / compensation unit 212 performs a prediction process using the supplied information.
- step S206 the calculation unit 205 adds the predicted image generated in step S205 to the difference image information obtained by the inverse orthogonal transform in step S204. Thereby, a reconstructed image is generated.
- step S207 the loop filter 206 appropriately performs loop filter processing including deblock filter processing and adaptive loop filter processing on the reconstructed image obtained in step S206.
- step S208 the screen rearrangement buffer 207 rearranges the decoded images generated by the filtering process in step S207. 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 S209 the D / A converter 208 D / A converts the decoded image in which the frame order is rearranged.
- the decoded image is output and displayed on a display (not shown).
- step S210 the frame memory 209 stores the decoded image obtained by the filtering process in step S207. This decoded image is used as a reference image in the inter prediction process.
- step S210 When the process of step S210 is completed, the decoding process is terminated.
- the lossless decoding unit 202 determines in step S221 whether the region is a region where intra prediction (intra coding) has been performed. If it is determined that the region is a region where intra prediction has been performed, the lossless decoding unit 202 advances the processing to step S232.
- the intra prediction unit 211 and the constrained intra prediction unit 221 perform an intra prediction process in step S222.
- the intra prediction unit 211 ends the prediction process and returns the process to FIG.
- step S221 If it is determined in step S221 that the region is a region where inter prediction has been performed, the lossless decoding unit 202 advances the processing to step S223.
- step S223 the motion prediction / compensation unit 212 performs an inter motion prediction process. When the inter motion prediction process ends, the motion prediction / compensation unit 212 ends the prediction process and returns the process to FIG.
- the processes in steps S241 to S246 are executed in the same manner as the processes in steps S131 to S136 in FIG. That is, the processing related to pixel interpolation for constrained intra prediction is performed basically in the same manner as in encoding.
- step S247 the prediction mode information buffer 231 acquires intra mode information extracted from the bitstream.
- step S248 the predicted image generation unit 232 uses the prediction mode specified in the intra mode information acquired in step S247, the peripheral pixel value acquired from the frame memory 209, and the interpolation pixel value generated by the interpolation pixel generation unit 243. Is used appropriately to generate a predicted image.
- the predicted image generation unit 232 ends the intra prediction process.
- the image decoding apparatus 200 can correctly decode the encoded data generated in the image encoding apparatus 100, and can realize improvement in encoding efficiency.
- First Embodiment> [Another example of constrained intra prediction unit]
- the conventional interpolation method described in Non-Patent Document 2 and the interpolation method of the present technology described above may be switched according to the size of the region. For example, when the region is smaller than a predetermined threshold, the interpolation method of the present technology is applied, and when the region is larger than the predetermined threshold, the conventional interpolation method described in Non-Patent Document 2 is applied.
- Non-Patent Document 2 a larger area is easily selected for an image that does not include a texture.
- an image in a large area is highly likely to be an image that does not contain a lot of high frequency components. Therefore, the deterioration by applying the conventional method described in Non-Patent Document 2 is small.
- FIG. 16 is a block diagram illustrating a main configuration example of the restricted intra prediction unit in this case.
- the intra prediction unit 114 has the same configuration as that described with reference to FIG.
- the restricted intra prediction unit 121 has basically the same configuration as that described with reference to FIG. 6, but includes a flag / size threshold determination unit 341 instead of the flag determination unit 141.
- the flag / size threshold determination unit 341 determines not only the value of constrained_intra_pred_flag but also the size determination of the area using a predetermined threshold. That is, the flag / size threshold value determination unit 341 stores in advance a predetermined threshold value for controlling whether or not to apply the present technology according to the size of the area. The flag / size threshold value determination unit 341 determines whether the size of the area is equal to or less than the threshold value. Based on the determination results, the flag / size threshold determination unit 341 determines whether or not to perform constrained intra prediction, and if so, whether or not to apply the interpolation method of the present technology. The candidate predicted image generation unit 131, the availability determination unit 142, and the interpolation pixel generation unit 143 are supplied.
- threshold value may be included in an arbitrary position such as a sequence parameter set of a bit stream and transmitted to the decoding side. Further, the threshold value described above may be defined in accordance with the profile level such as the image frame size.
- each process is basically performed as in the case of the first embodiment described with reference to the flowchart of FIG. That is, each process of step S301, step S303 thru
- the flag / size threshold determination unit 341 determines whether or not constrained intra prediction is performed in step S301. If it is determined that the intra prediction with constraint is performed, the process proceeds to step S302. It is determined whether or not the size of the area is equal to or smaller than a threshold value.
- the flag / size threshold value determination unit 341 advances the process to step S303. That is, in this case, similarly to the case of FIG. 10, constrained intra prediction to which the interpolation method of the present technology is applied is performed.
- step S302 when it is determined in step S302 that the size of the area is larger than the threshold, the flag / size threshold determination unit 341 advances the process to step S308.
- step S308 the availability determination unit 142 and the interpolation pixel generation unit 143 perform constrained intra prediction to which the conventional interpolation method described in Non-Patent Document 2 is applied.
- the interpolation pixel generation unit 143 advances the process to step S309.
- step S301 If it is determined in step S301 that constrained intra prediction is not performed, the flag / size threshold determination unit 341 advances the processing to step S309.
- the interpolation method of the present technology can be applied only to a large region, and the image encoding device 100 can improve encoding efficiency while suppressing an increase in the load of interpolation processing. Can do.
- FIG. 18 is a block diagram illustrating a main configuration example of the restricted intra prediction unit in this case.
- the intra prediction unit 211 has the same configuration as that described with reference to FIG.
- the restricted intra prediction unit 221 has basically the same configuration as that described with reference to FIG. 12, but includes a flag size threshold determination unit 441 instead of the flag determination unit 241.
- the flag / size threshold value determination unit 441 is a processing unit similar to the flag / size threshold value determination unit 341, and not only determines the value of constrained_intra_pred_flag but also determines the size of the area using a predetermined threshold value.
- the flag / size threshold value determination unit 441 supplies a control instruction to the predicted image generation unit 232, the availability determination unit 242, and the interpolation pixel generation unit 243 based on the determination results.
- the predicted image generation unit 232, the availability determination unit 242, and the interpolation pixel generation unit 243 perform normal intra prediction or constrained intra prediction using a conventional interpolation method based on the control instruction, Alternatively, it is determined whether to perform constrained intra prediction using the interpolation method of the present technology, and each process is performed.
- the interpolation method of the present technology can be applied only to a large region as in the encoding side, so that the image decoding device 200 suppresses an increase in the load of the interpolation processing, Encoding efficiency can be improved.
- each process can be performed in the same manner as the encoding side, as in the case of the second embodiment. That is, the processes in steps S401 to S408 in FIG. 19 are performed in the same manner as the processes in steps S301 to S308 in FIG.
- steps S409 and S410 are performed in the same manner as the processes in steps S247 and S248 in FIG. 15 (that is, in the same manner as in the second embodiment).
- the interpolation method of the present technology can be applied only to a large region as in the encoding side, and the image decoding apparatus 200 performs code encoding while suppressing an increase in the load of interpolation processing. Efficiency can be improved.
- the encoding / decoding scheme to which the present technology is applied is arbitrary, and any encoding / decoding scheme can be applied as long as it uses a constrained intra prediction process.
- this technology is, for example, MPEG, H.264.
- image information bitstream
- orthogonal transform such as discrete cosine transform 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 above.
- the present technology can be applied to an image encoding device and an image decoding device that are used when processing is performed on a storage medium such as an optical disk, a magnetic disk, and a flash memory.
- the present technology can also be applied to motion prediction / compensation devices included in such image encoding devices and image decoding devices.
- 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, etc.
- 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. 21 illustrates an example of a schematic configuration of a television device 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. That is, the tuner 902 has a role as a transmission unit in the television device 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 an image 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 apparatus 900 is activated.
- the CPU executes the program to control the operation of the television device 900 according to an operation signal input from the user interface 911, for example.
- 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. Thereby, it is possible to improve the encoding efficiency when the image is decoded by the television apparatus 900.
- FIG. 22 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 RAM or flash memory, and is externally mounted such as a hard disk, magnetic disk, magneto-optical disk, optical disk, USB (Unallocated Space Space Bitmap) memory, or 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, encoding efficiency can be improved when encoding and decoding an image with the mobile phone 920.
- FIG. 23 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 serves 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 to and from 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. 24 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, encoding efficiency can be improved when encoding and decoding an image by the imaging device 960.
- 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).
- 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 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.
- constrained intra prediction one or a continuous pixel that is adjacent to the region that is the processing target of the constrained intra prediction and that is used for prediction and is sandwiched between two usable peripheral pixels
- An interpolation pixel generation unit that generates an interpolation pixel value of a value corresponding to the position of a plurality of peripheral pixels that cannot be used;
- An image processing apparatus comprising: a prediction image generation unit that performs intra prediction using the interpolation pixel value generated by the interpolation pixel generation unit and generates a prediction image.
- the interpolation pixel generation unit generates an interpolation pixel value having a value corresponding to a distance from the available surrounding pixels.
- the pixel value of the pixel adjacent to the right of the peripheral pixel is the interpolation pixel value of the peripheral pixel
- the pixel value of the lower pixel is set as the interpolated pixel value of the peripheral pixel.
- the size determination unit determines a size of the region using a threshold, The image processing device according to (7), wherein the interpolation pixel generation unit generates the interpolation pixel value when the size determination unit determines that the region is equal to or less than a threshold value.
- the threshold is set according to a profile level.
- the interpolated pixel generation unit is a neighboring pixel that is adjacent to the region that is the processing target of the restricted intra prediction and is used for prediction in the restricted intra prediction, and is sandwiched between two usable neighboring pixels For one or a plurality of consecutive peripheral pixels that cannot be used, an interpolated pixel value corresponding to the position is generated, An image processing method in which a predicted image generation unit performs intra prediction using a generated interpolation pixel value to generate a predicted image.
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
La présente invention concerne un dispositif et un procédé de traitement d'image qui permettent d'améliorer l'efficacité de codage. Une unité de génération de pixel interpolé et une unité de génération d'image prédite sont prévues pour une prédiction intra limitée. L'unité de génération de pixel interpolé génère des valeurs de pixel interpolé pour des valeurs correspondant à la position d'un pixel voisin non disponible qui est pris en sandwich entre deux pixels voisins disponibles, ou aux positions de multiples pixels voisins non disponibles consécutifs, lesdits pixels voisins étant adjacents à une zone qui doit subir un traitement de prédiction intra limitée, et être utilisée pour une prédiction. L'unité de génération d'image prédite utilise les valeurs de pixel interpolé générées par l'unité de génération de pixel interpolé pour réaliser une prédiction intra, et pour générer une image prédite. La présente invention peut être appliquée à des dispositifs de traitement d'image.
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2011143115A JP2013012840A (ja) | 2011-06-28 | 2011-06-28 | 画像処理装置および方法 |
| JP2011-143115 | 2011-06-28 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2013002106A1 true WO2013002106A1 (fr) | 2013-01-03 |
Family
ID=47424003
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/JP2012/065815 Ceased WO2013002106A1 (fr) | 2011-06-28 | 2012-06-21 | Dispositif et procédé de traitement d'image |
Country Status (2)
| Country | Link |
|---|---|
| JP (1) | JP2013012840A (fr) |
| WO (1) | WO2013002106A1 (fr) |
Families Citing this family (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR101783617B1 (ko) * | 2013-04-11 | 2017-10-10 | 엘지전자 주식회사 | 비디오 신호 처리 방법 및 장치 |
| JP2015082714A (ja) * | 2013-10-22 | 2015-04-27 | ソニー株式会社 | 画像処理装置及び画像処理方法 |
| EP3262839B1 (fr) * | 2015-04-08 | 2021-06-16 | HFI Innovation Inc. | Procédés pour le codage par contexte en mode palette et binarisation dans le codage vidéo |
Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH10136376A (ja) * | 1996-10-31 | 1998-05-22 | Victor Co Of Japan Ltd | ブロック間予測符号化復号化装置及びその方法 |
| WO2009051419A2 (fr) * | 2007-10-16 | 2009-04-23 | Lg Electronics Inc. | Procédé et appareil de traitement d'un signal vidéo |
| JP2010166133A (ja) * | 2009-01-13 | 2010-07-29 | Hitachi Kokusai Electric Inc | 動画像符号化装置 |
| WO2012090501A1 (fr) * | 2010-12-28 | 2012-07-05 | パナソニック株式会社 | Procédé de décodage de vidéo animée, procédé de codage de vidéo animée, appareil de décodage de vidéo animée, appareil de codage de vidéo animée et appareil de codage/décodage de vidéo animée |
-
2011
- 2011-06-28 JP JP2011143115A patent/JP2013012840A/ja not_active Withdrawn
-
2012
- 2012-06-21 WO PCT/JP2012/065815 patent/WO2013002106A1/fr not_active Ceased
Patent Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH10136376A (ja) * | 1996-10-31 | 1998-05-22 | Victor Co Of Japan Ltd | ブロック間予測符号化復号化装置及びその方法 |
| WO2009051419A2 (fr) * | 2007-10-16 | 2009-04-23 | Lg Electronics Inc. | Procédé et appareil de traitement d'un signal vidéo |
| JP2010166133A (ja) * | 2009-01-13 | 2010-07-29 | Hitachi Kokusai Electric Inc | 動画像符号化装置 |
| WO2012090501A1 (fr) * | 2010-12-28 | 2012-07-05 | パナソニック株式会社 | Procédé de décodage de vidéo animée, procédé de codage de vidéo animée, appareil de décodage de vidéo animée, appareil de codage de vidéo animée et appareil de codage/décodage de vidéo animée |
Non-Patent Citations (2)
| Title |
|---|
| RICKARD SJOBERG ET AL.: "Constrained Intra source code implementation", JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC) OF ITU-T SG16 WP3 AND ISO/IEC JTC1/ SC29/WG11, JCTVC-D386-RL, 4TH MEETING, January 2011 (2011-01-01), DAEGU, KR, pages 1 - 4 * |
| 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, JCTVC-0094_RL, 4TH MEETING, January 2011 (2011-01-01), DAEGU, KR, pages 1 - 8 * |
Also Published As
| Publication number | Publication date |
|---|---|
| JP2013012840A (ja) | 2013-01-17 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP6419113B2 (ja) | 画像処理装置および方法、並びに、プログラム | |
| US10419756B2 (en) | Image processing device and method | |
| JP2013150173A (ja) | 画像処理装置および方法 | |
| US10104372B2 (en) | Image processing apparatus and image processing method | |
| JP5982734B2 (ja) | 画像処理装置および方法 | |
| JP2013012845A (ja) | 画像処理装置および方法 | |
| WO2014050676A1 (fr) | Dispositif et procédé de traitement d'image | |
| WO2012157538A1 (fr) | Dispositif et procédé de traitement d'image | |
| US10075705B2 (en) | Image processing apparatus and method | |
| WO2014050731A1 (fr) | Dispositif et procédé de traitement d'image | |
| WO2013108688A1 (fr) | Dispositif de traitement d'image et procédé | |
| WO2014156708A1 (fr) | Dispositif et procede de decodage d'image | |
| WO2013065568A1 (fr) | Dispositif et procédé de traitement d'image | |
| WO2014156707A1 (fr) | Dispositif et procédé de codage d'image et dispositif et procédé de décodage d'image | |
| WO2013051453A1 (fr) | Dispositif et procédé de traitement d'image | |
| WO2013002106A1 (fr) | Dispositif et procédé de traitement d'image | |
| WO2012173063A1 (fr) | Dispositif et procédé de traitement d'image | |
| WO2013065567A1 (fr) | Dispositif et procédé de traitement d'image | |
| JP5768491B2 (ja) | 画像処理装置および方法、プログラム、並びに記録媒体 | |
| WO2012157539A1 (fr) | Appareil et procédé de traitement d'image | |
| JP2018029347A (ja) | 画像処理装置および方法 | |
| JP6768208B2 (ja) | 画像処理装置および方法 | |
| JP6217997B2 (ja) | 画像処理装置および方法 | |
| WO2013002111A1 (fr) | Dispositif et procédé de traitement d'image | |
| JP2013150124A (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: 12805112 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: 12805112 Country of ref document: EP Kind code of ref document: A1 |