WO2018235405A1 - 画像処理装置と画像処理方法 - Google Patents

画像処理装置と画像処理方法 Download PDF

Info

Publication number
WO2018235405A1
WO2018235405A1 PCT/JP2018/015377 JP2018015377W WO2018235405A1 WO 2018235405 A1 WO2018235405 A1 WO 2018235405A1 JP 2018015377 W JP2018015377 W JP 2018015377W WO 2018235405 A1 WO2018235405 A1 WO 2018235405A1
Authority
WO
WIPO (PCT)
Prior art keywords
unit
image
prediction
offset
processing
Prior art date
Application number
PCT/JP2018/015377
Other languages
English (en)
French (fr)
Inventor
雄介 宮城
義崇 森上
Original Assignee
ソニー株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ソニー株式会社 filed Critical ソニー株式会社
Priority to US16/623,143 priority Critical patent/US11039133B2/en
Publication of WO2018235405A1 publication Critical patent/WO2018235405A1/ja

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/117Filters, e.g. for pre-processing or post-processing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • H04N19/82Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/86Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving reduction of coding artifacts, e.g. of blockiness

Definitions

  • This technique relates to an image processing apparatus and an image processing method, and enables suppression of image quality degradation of a decoded image.
  • a coding apparatus that generates a coded stream of moving picture data, and a decoding apparatus that decodes the coded stream to generate moving picture data are widely used.
  • HEVC High Efficiency Video Coding, that is, ITU-T H. 265 or ISO / IEC 23008-2
  • CTU Coding Tree Unit
  • the CTU is a multiple of 16 and has a fixed block size of up to 64 ⁇ 64 pixels.
  • Each CTU is divided into coding units (CUs) of variable size on a quadtree basis. When the CTU is not divided, the size is the maximum size of the size CU of the CTU.
  • the largest size CU is called the largest coding unit LCU (Largest Coding Unit), and the smallest size CU is called the SCU (Smallest Coding Unit).
  • Each CU is divided into a block called a prediction unit (PU) and a block called a transform unit (TU).
  • PU and TU are independently defined in CU.
  • a transform skip mode is provided in which the orthogonal transform of the prediction error is skipped and quantized for the TU in order to maintain sharp edges.
  • the skip of orthogonal transformation is selected based on the feature-value which shows the characteristic of a prediction error.
  • DC data DC component
  • residual data predictive residual
  • DC shift is caused in residual data by skipping orthogonal transformation
  • discontinuity occurs in the block boundary between TU for which orthogonal transformation has been performed and TU for which orthogonal transformation has been skipped, and the quality of the decoded image is degraded.
  • the present technology provides an image processing apparatus and an image processing method that can suppress the deterioration in the image quality of a decoded image.
  • the first aspect of this technology is A filter processing unit that performs filter processing for applying an offset to pixels of the decoded image;
  • an image processing apparatus including: a filter control unit that prohibits application of the offset to an edge portion according to a generation situation of a conversion unit in a conversion skip mode in which orthogonal conversion is not performed on prediction residuals.
  • the filter control unit prohibits the application of the offset to the edge portion in accordance with the occurrence of the conversion unit in the conversion skip mode in which the orthogonal transformation is not performed on the prediction residual. For example, the filter control unit prohibits the application of the offset to the edge portion when the transform coding unit in the transform skip mode is included in the maximum coding unit. In addition, the filter control unit may prohibit the application of the offset to the edge portion when the ratio of the number of conversion units in the conversion skip mode to the number of conversion units in the largest coding unit is equal to or more than a threshold.
  • the filter control unit may prohibit the application of the offset to the edge portion when the ratio of the number of pixels of the conversion unit in the conversion skip mode to the number of pixels of the largest encoding unit is equal to or more than a threshold. Also, the filter control unit sets a weight according to the size of the conversion unit, and uses the number of conversion units in the conversion skip mode in the maximum coding unit and the weight corresponding to the conversion unit in the conversion skip mode. If the calculated evaluation value is greater than or equal to the threshold value, the application of the offset to the edge portion may be prohibited. Furthermore, when the decoded image is a high dynamic range image, the filter control unit may prohibit the application of the offset to the edge portion. Also, the filter control unit uses the decoded image to determine whether or not to apply the offset of the tone adjustment in the filter processing unit, and sets the offset in the case of application.
  • the prediction selection unit is further provided with a prediction selection unit that selects a prediction image of either intra prediction or inter prediction, and when the conversion skip mode is selected in the optimum mode in inter prediction, the prediction selection unit converts, for example, 4 ⁇ 4 pixels
  • a prediction image of inter prediction is selected to calculate a prediction residual indicating a difference from the image to be encoded.
  • any prediction image of intra prediction and inter prediction is selected based on the cost of inter prediction and the cost of intra prediction.
  • the second aspect of this technology is Performing a filtering process to apply an offset to the pixels of the decoded image;
  • an image processing method including: prohibiting application of the offset to an edge portion according to a generation situation of a transform unit in a transform skip mode in which orthogonal transformation is not performed on a prediction residual.
  • filtering is performed to apply an offset to the pixels of the decoded image that has been decoded.
  • the application of the offset to the edge portion is prohibited according to the occurrence situation of the transform unit in the transform skip mode in which the orthogonal transformation is not performed on the prediction residual. Therefore, an offset for correcting the DC component is applied to the transform unit in which the orthogonal transform is skipped, and the boundary between the transform unit in which the orthogonal transform is performed and the transform unit in which the orthogonal transform is skipped becomes less noticeable Image quality degradation can be suppressed.
  • the effects described in the present specification are merely examples and are not limited, and additional effects may be present.
  • FIG. 7 is a flowchart illustrating an operation of determining whether to use a conversion skip process. It is a flowchart which shows the 1st specific example of determination operation
  • the present technology is applicable to an image processing apparatus that performs image encoding processing, and the configuration and operation of the image coding apparatus to which the present technology is applied will be described.
  • FIG. 1 illustrates the configuration of the image coding apparatus.
  • the image coding apparatus 10 codes image data using prediction processing, and generates, for example, a coded stream compatible with HEVC.
  • the image encoding device 10 includes a screen rearrangement buffer 21, an operation unit 22, an orthogonal transformation unit 23, a quantization unit 24, an entropy encoding unit 25, an accumulation buffer 26, and a rate control unit 27.
  • the image coding apparatus 10 further includes an inverse quantization unit 31, an inverse orthogonal transformation unit 32, an operation unit 33, a deblocking filter 34, an adaptive offset filter 35, an adaptive loop filter 36, a frame memory 37, and a selection unit 38.
  • the image coding device 10 includes an intra prediction unit 41, a motion prediction / compensation unit 42, a prediction selection unit 43, and a conversion skip control unit 44.
  • the screen rearrangement buffer 21 rearranges the stored frame images of the display order into the order for encoding (encoding order) according to the GOP (Group of Picture) structure.
  • the screen rearrangement buffer 21 outputs the image data (original image data) of the frame image in the coding order to the calculation unit 22.
  • the screen rearrangement buffer 21 outputs the original image data to the adaptive offset filter 35, the intra prediction unit 41, and the motion prediction / compensation unit 42.
  • Arithmetic unit 22 subtracts, for each pixel, predicted image data supplied from intra prediction unit 41 or motion prediction / compensation unit 42 from original image data supplied from screen rearrangement buffer 21 via prediction selection unit 43.
  • the residual data indicating the prediction residual is output to the orthogonal transformation unit 23.
  • the operation unit 22 subtracts the predicted image data generated by the intra prediction unit 41 from the original image data. Also, for example, in the case of an image on which inter coding is performed, the operation unit 22 subtracts the predicted image data generated by the motion prediction / compensation unit 42 from the original image data.
  • the orthogonal transformation unit 23 performs orthogonal transformation processing on the residual data supplied from the computation unit 22 to perform orthogonal transformation such as discrete cosine transformation or Karhunen-Loeve transformation based on the control signal from the transformation skip control unit 44. Or perform transformation skip processing which skips orthogonal transformation.
  • the orthogonal transformation unit 23 outputs the transformation coefficient obtained by performing the orthogonal transformation process to the quantization unit 24.
  • the orthogonal transformation unit 23 outputs the conversion skip coefficient obtained by performing the conversion skip process to the quantization unit 24.
  • the quantization unit 24 quantizes the transform coefficient or the transform skip coefficient output from the orthogonal transform unit 23.
  • the quantization unit 24 outputs the quantization data of the transform coefficient or the transform skip coefficient to the entropy coding unit 25. Further, the quantization unit 24 also outputs the generated quantized data to the inverse quantization unit 31.
  • the entropy coding unit 25 performs entropy coding processing such as arithmetic coding, for example, entropy coding processing of CABAC (Context-Adaptive Binary Arithmetic Coding) on the quantized data. Also, the entropy coding unit 25 acquires parameters of the prediction mode selected by the prediction selection unit 43, for example, parameters such as information indicating an intra prediction mode, or parameters such as information indicating an inter prediction mode or motion vector information. . Furthermore, the entropy coding unit 25 acquires parameters related to the filtering process from an adaptive offset filter 35 described later. The entropy coding unit 25 codes the quantized data, and codes each acquired parameter (syntax element) to be stored (multiplexed) in the accumulation buffer 26 as a part of header information.
  • CABAC Context-Adaptive Binary Arithmetic Coding
  • the accumulation buffer 26 temporarily holds the data supplied from the entropy coding unit 25 and codes it as an encoded image at a predetermined timing as, for example, a recording device or a transmission line (not shown) at a later stage. Output as an integrated stream.
  • the rate control unit 27 controls the rate of the quantization operation of the quantization unit 24 based on the compressed image stored in the storage buffer 26 so that overflow or underflow does not occur.
  • the inverse quantization unit 31 inversely quantizes the quantization data of the transform coefficient or the transform skip coefficient supplied from the quantization unit 24 by a method corresponding to the quantization performed by the quantization unit 24.
  • the inverse quantization unit 31 outputs the obtained inverse quantization data to the inverse orthogonal transform unit 32.
  • the inverse orthogonal transform unit 32 performs inverse orthogonal transform on the supplied dequantized data by a method corresponding to the orthogonal transform process performed by the orthogonal transform unit 23.
  • the inverse orthogonal transformation unit 32 outputs the inverse orthogonal transformation result, that is, the restored residual data to the calculation unit 33.
  • the dequantized data indicates a transform skip coefficient based on the transform skip information from the transform skip control unit 44
  • the inverse orthogonal transform unit 32 skips inverse orthogonal transform, etc.
  • the residual data is output to the calculation unit 33.
  • Arithmetic unit 33 adds the prediction image data supplied from intra prediction unit 41 or motion prediction / compensation unit 42 via prediction selection unit 43 to the residual data supplied from inverse orthogonal transformation unit 32 to obtain To obtain a decoded image (decoded image). For example, when the residual data corresponds to an image on which intra coding is performed, the calculation unit 33 adds the predicted image data supplied from the intra prediction unit 41 to the residual data. Also, for example, when the residual data corresponds to an image on which inter coding is performed, the operation unit 33 adds the predicted image data supplied from the motion prediction / compensation unit 42 to the residual data. The decoded image data that is the addition result is output to the deblocking filter 34. Also, the decoded image data is output to the frame memory 37 as reference image data.
  • the deblocking filter 34 removes block distortion of the decoded image data by appropriately performing deblocking filter processing.
  • the deblocking filter 34 outputs the filter processing result to the adaptive offset filter 35.
  • the adaptive offset filter 35 performs adaptive offset filter processing (hereinafter referred to as “SAO (Sample Adaptive Offset) processing”) on the decoded image data filtered by the deblocking filter 34. The details of the SAO process will be described later.
  • the adaptive offset filter 35 outputs the image after SAO processing to the adaptive loop filter 36.
  • the adaptive offset filter 35 sets the SAO process according to the use status of the conversion skip mode which is a mode for performing conversion skip processing based on conversion skip information from the conversion skip control unit 44 described later, and the conversion skip mode Reduce the impact caused by using The details will be described later. Furthermore, the adaptive offset filter 35 outputs, to the entropy coding unit 25, information on the SAO process performed on the decoded image data supplied from the deblocking filter 34 as a parameter.
  • the adaptive loop filter 36 is configured using, for example, a two-dimensional Wiener filter or the like, and performs adaptive loop filter (ALF: Adaptive Loop Filter) processing for each LCU (CTU equivalent).
  • ALF Adaptive Loop Filter
  • the adaptive loop filter 36 outputs the decoded image data after filter processing to the frame memory 37 as reference image data.
  • the reference image data stored in the frame memory 37 is output to the intra prediction unit 41 or the motion prediction / compensation unit 42 via the selection unit 38 at a predetermined timing.
  • reference image data not subjected to filter processing by the deblocking filter 34 or the like is read from the frame memory 37 and output to the intra prediction unit 41 via the selection unit 38. Be done.
  • reference image data subjected to filter processing by the deblocking filter 34 or the like is read from the frame memory 37 and the motion prediction / compensation unit 42 via the selection unit 38. Output.
  • the intra prediction unit 41 performs intra prediction (in-screen prediction) that generates a predicted image using pixel values in the screen.
  • the intra prediction unit 41 generates predicted image data for each of all intra prediction modes, using the decoded image data generated by the calculation unit 33 and stored in the frame memory 37 as reference image data.
  • the intra prediction unit 41 calculates the cost (for example, rate distortion cost) of each intra prediction mode using the original image data and the predicted image data supplied from the screen rearrangement buffer 21 and the calculated cost is minimum. Choose the best mode to be.
  • the intra prediction unit 41 outputs predicted image data of the selected intra prediction mode, parameters such as intra prediction mode information indicating the selected intra prediction mode, costs, and the like to the prediction selection unit 43. Do.
  • the motion prediction / compensation unit 42 refers to the original image data supplied from the screen rearrangement buffer 21 and the decoded image data stored in the frame memory 37 after the filtering process for the image to be inter-coded. Motion prediction is performed using image data. Further, the motion prediction / compensation unit 42 performs motion compensation processing according to the motion vector detected by the motion prediction, and generates predicted image data.
  • the motion prediction / compensation unit 42 performs inter prediction processing of all candidate inter prediction modes, generates predicted image data for each of all intra prediction modes, and calculates cost (for example, rate distortion cost), Select the optimal mode that minimizes the calculated cost.
  • cost for example, rate distortion cost
  • the motion prediction / compensation unit 42 selects the optimal inter prediction mode, the prediction image data of the selected inter prediction mode, inter prediction mode information indicating the adopted inter prediction mode, motion vector information indicating the calculated motion vector, etc. Parameter and cost etc. are output to the prediction selection unit 43.
  • the prediction selection unit 43 selects an optimal prediction process based on the cost of the intra prediction mode and the inter prediction mode.
  • the prediction selection unit 43 outputs the predicted image data supplied from the intra prediction unit 41 to the operation unit 22 or the operation unit 33, and the parameter such as intra prediction mode information is an entropy encoding unit Output to 25
  • the prediction selection unit 43 outputs the predicted image data supplied from the motion prediction / compensation unit 42 to the operation unit 22 or the operation unit 33 to obtain inter prediction mode information, motion vector information, etc.
  • the parameters are output to the entropy coding unit 25.
  • the conversion skip control unit 44 causes the orthogonal transformation unit 23 to perform orthogonal transformation processing of residual data for each TU.
  • the transform coefficient is output to the quantization unit 24.
  • the conversion skip control unit 44 causes the inverse orthogonal transformation unit 32 to perform inverse orthogonal transformation processing of the transform coefficient after inverse quantization, and outputs the obtained residual data to the operation unit 33.
  • the conversion skip control unit 44 determines whether to set the conversion skip mode for each TU.
  • the conversion skip control unit 44 calculates, for example, an evaluation function value when performing conversion skip processing and orthogonal transformation processing for each TU, and determines whether or not to set the conversion skip mode based on the calculated evaluation function value.
  • the evaluation function value for example, the amount of data after conversion skip processing and the amount of data after orthogonal transform processing are used. In this case, when the amount of data after conversion skip processing is equal to or less than the amount of data after orthogonal transform processing, the conversion skip mode is set.
  • costs for example, rate distortion cost
  • the conversion skip mode is set.
  • another function value may be used as the evaluation function value.
  • the conversion skip control unit 44 performs conversion skip processing on the TUs in the conversion skip mode.
  • the transform skip processing orthogonal transform processing is skipped and residual data is output to the quantization unit 24.
  • the conversion skip control unit 44 controls the orthogonal transformation unit 23 to output the transformation coefficient after orthogonal transformation processing to the quantization unit 24 for the other TUs that are not in the conversion skip mode.
  • the transform skip control unit 44 performs inverse orthogonal transform in the inverse orthogonal transform unit 2 on the dequantized data (corresponding to residual data) obtained by the inverse quantization unit 31 with respect to the TU in the conversion skip mode.
  • the conversion skip control unit 44 performs inverse orthogonal transformation on the dequantized data (corresponding to the transform coefficient) obtained by the inverse quantization unit 31 in the other orthogonal transform unit 2 with respect to the other TUs, and performs an operation unit 33 Output to In the conversion skip processing, bit shift processing is performed so that the norm of the conversion skip coefficient (corresponding to residual data) after the conversion skip processing matches the norm of the conversion coefficient. Further, in this case, residual data obtained by inverse quantization of the inverse quantization unit 31 is subjected to processing reverse to bit shift processing for matching the transform coefficient and the norm, and is output to the arithmetic unit 33. Furthermore, the conversion skip control unit 44 generates conversion skip information which is information related to TU in the conversion skip mode in the LCU (corresponding to CTU), and outputs the conversion skip information to the adaptive offset filter 35.
  • FIG. 2 is a flowchart illustrating the operation of the image coding apparatus.
  • step ST1 the image coding apparatus performs screen rearrangement processing.
  • the screen rearrangement buffer 21 of the image coding device 10 rearranges the frame images in display order in coding order, and outputs the frame images to the intra prediction unit 41, the motion prediction / compensation unit 42, and the adaptive offset filter 35.
  • the image coding apparatus performs intra prediction processing.
  • the intra prediction unit 41 of the image coding device 10 generates predicted image data by performing intra prediction on all candidate pixels of the block to be processed, using the reference image data read from the frame memory 37 as the candidate. Do. Further, the intra prediction unit 41 calculates the cost using the generated predicted image data and the original image data. Note that, as reference image data, decoded image data not subjected to filter processing by the deblocking filter 34 or the like is used.
  • the intra prediction unit 41 selects the optimal intra prediction mode based on the calculated cost, and outputs the predicted image data generated by intra prediction in the optimal intra prediction mode and the parameters and costs to the prediction selection unit 43.
  • the image coding apparatus performs motion prediction / compensation processing in step ST3.
  • the motion prediction / compensation unit 42 of the image coding device 10 inter-predicts the pixels of the block to be processed in all candidate in-prediction modes to generate a predicted image. Also, the motion prediction / compensation unit 42 calculates the cost using the generated predicted image data and the original image data. Note that, as reference image data, decoded image data subjected to filter processing by the deblocking filter 34 or the like is used.
  • the motion prediction / compensation unit 42 determines the optimal inter prediction mode based on the calculated cost, and outputs the predicted image, the parameters, and the cost generated in the optimal inter prediction mode to the prediction selection unit 43.
  • step ST4 the image coding apparatus performs predicted image selection processing.
  • the prediction selection unit 43 of the image coding device 10 determines one of the optimal intra prediction mode and the optimal inter prediction mode as the optimal prediction mode based on the costs calculated in steps ST2 and ST3. Then, the prediction selection unit 43 selects prediction image data of the determined optimal prediction mode, and outputs the prediction image data to the calculation units 22 and 33. The predicted image data is used for the calculation of steps ST5 and ST10 described later. In addition, the prediction selection unit 43 outputs the parameter related to the optimal prediction mode to the entropy coding unit 25.
  • step ST5 the image coding apparatus performs difference calculation processing.
  • Arithmetic unit 22 of image coding apparatus 10 calculates a difference between the original image data rearranged in step ST1 and the predicted image data selected in step ST4, and orthogonally transforms the residual data as the difference result. Output to unit 23.
  • the image coding apparatus performs orthogonal transform processing or transform skip processing.
  • the orthogonal transformation unit 23 of the image encoding device 10 orthogonally transforms the residual data supplied from the calculation unit 22. Specifically, orthogonal transform such as discrete cosine transform or Karhunen-Loeve transform is performed, and the obtained transform coefficient is output to the quantization unit 24. Further, in the case of the conversion skip mode, the orthogonal transformation unit 23 performs conversion skip processing, and outputs the residual data to the quantization unit 24 without performing orthogonal transformation. In the conversion skip processing, as described above, bit shift processing is performed to match the conversion skip coefficient and the norm of the conversion coefficient.
  • step ST7 the image coding apparatus performs quantization processing.
  • the quantization unit 24 of the image coding device 10 quantizes the transform coefficient or the residual data supplied from the orthogonal transform unit 23. During this quantization, the rate is controlled as described in the process of step ST17 described later.
  • the quantization information generated as described above is locally decoded as follows. That is, in step ST8, the image coding apparatus performs inverse quantization processing.
  • the inverse quantization unit 31 of the image coding device 10 inversely quantizes the quantized data output from the quantization unit 24 with the characteristic corresponding to the quantization unit 24.
  • the image coding apparatus performs inverse orthogonal transform processing or inverse transform skip processing.
  • the inverse orthogonal transformation unit 32 of the image coding device 10 performs inverse orthogonal transformation on the dequantized data generated by the inverse quantization unit 31 with the characteristics corresponding to the orthogonal transformation unit 23 to generate residual data, and an operation unit Output to 33. Further, when the transform skip mode is used in the orthogonal transform unit 23, the inverse orthogonal transform unit 32 skips the inverse orthogonal transform of the dequantized data, and then performs an inverse bit shift process and outputs the result to the operation unit 33.
  • step ST10 the image coding apparatus performs an image addition process.
  • the operation unit 33 of the image coding device 10 adds the predicted image data output from the prediction selection unit 43 to the locally decoded residual data, and is locally decoded (that is, locally decoded) Generate an image.
  • step ST11 the image coding apparatus performs deblocking filter processing.
  • the deblocking filter 34 of the image coding device 10 performs deblocking filter processing on the image output from the computing unit 33, removes block distortion, and outputs the resultant to the adaptive offset filter 35.
  • step ST12 the image coding apparatus performs SAO processing.
  • the adaptive offset filter 35 of the image encoding device 10 performs SAO processing on the image output from the deblocking filter 34.
  • SAO process the type and coefficient of the SAO process are determined for each LCU which is the largest coding unit, and the filter process is performed using them.
  • the adaptive offset filter 35 limits the filter operation to the image in the conversion skip mode. The details of the SAO process will be described later.
  • the adaptive offset filter 35 outputs a parameter related to the SAO processing to the entropy coding unit 25 and codes it in step ST15 as described later.
  • the image coding apparatus performs adaptive loop filter processing.
  • the adaptive loop filter 36 of the image coding device 10 performs adaptive loop filter processing on the image filtered by the adaptive offset filter 35. For example, filter processing is performed on the image after filtering by the adaptive offset filter 35 for each LCU using filter coefficients, and the filter processing result is stored in the frame memory 37.
  • step ST14 the image coding apparatus performs storage processing.
  • the frame memory 37 of the image encoding device 10 stores the image before the filtering process by the deblocking filter 34 or the like and the image after the filtering process by the deblocking filter 34 or the like.
  • the transform coefficient or residual data quantized in step ST7 described above is also output to the entropy coding unit 25.
  • the image coding apparatus performs entropy coding processing.
  • the entropy encoding unit 25 of the image encoding device 10 encodes the quantized transform coefficient or residual data after quantization output from the quantization unit 24 and each supplied parameter.
  • step ST16 the image coding apparatus performs storage processing.
  • the accumulation buffer 26 of the image encoding device 10 accumulates encoded data.
  • the encoded data accumulated in the accumulation buffer 26 is appropriately read and transmitted to the decoding side via a transmission path or the like.
  • step ST17 the image coding apparatus performs rate control.
  • the rate control unit 27 of the image encoding device 10 controls the rate of the quantization operation of the quantization unit 24 so that the encoded data accumulated in the accumulation buffer 26 does not cause overflow or underflow.
  • EO Edge Offset
  • BO Band Offset
  • Edge offset is processing for performing addition / subtraction of an offset value to a pixel value for each pixel according to the relative relationship between a pixel to be processed and two adjacent pixels adjacent to the pixel.
  • FIG. 3 is a diagram for explaining an outline of edge offset processing.
  • EO_0 to EO_3 illustrated in (a) of FIG. 3 indicate pixel array candidates (classes) in the edge offset processing.
  • a pixel c indicates a pixel to be processed
  • pixels a and b indicate pixels adjacent to the target pixel c.
  • EO_0 to EO_3 it is possible to select both the luminance and the color difference for each LCU by using the parameters “sao_eo_class_luma” and “sao_eo_class_chroma” as to which class to use.
  • the absolute value "sao_offset_abs" of the offset is given to each of the four types of categories determined by the relative relationship between the target pixel and the adjacent pixel with respect to the selected class.
  • Category 1 to Category 4 shown in (b) of FIG. 3 are classifications of the relationship of pixel values between the target pixel c and the adjacent pixel a and the adjacent pixel b.
  • category 1 shows the case where the pixel value of the target pixel c is smaller than any pixel value of the adjacent pixel a and the adjacent pixel b.
  • category 2 shows a case where the pixel value of the target pixel c is smaller than one of the adjacent pixel a and the adjacent pixel b and equal to the other.
  • by adding an offset to the target pixel c smoothing of pixel values is performed between the target pixel c and the adjacent pixel a and the adjacent pixel b.
  • Category 3 shows a case where the pixel value of the target pixel c is larger than one of the adjacent pixel a and the adjacent pixel b and equal to the other. Further, category 4 shows a case where the pixel value of the target pixel c is larger than any pixel value of the adjacent pixel a and the adjacent pixel b. In the case of categories 3 and 4, the offset is subtracted from the target pixel c to smooth the pixel value between the target pixel c and the adjacent pixel a and the adjacent pixel b.
  • a category 0 indicating that the edge offset process is not performed is provided.
  • one of the classes is selected from classes EO_0 to EO_3, and the relationship between the pixel value of the target pixel c and the pixel values of the adjacent pixel a and the adjacent pixel b is category 0 to category according to the selected class. Identify which of the four is the case. Then, the pixel series smoothing processing is performed by adding and subtracting the offset according to the corresponding category. Therefore, the adaptive offset filter 35 can suppress, for example, ringing by performing edge offset processing.
  • the gradation of pixel values (that is, the maximum value that can be expressed according to 0 to bit depth) is divided into 32 bands, and for pixels belonging to 4 consecutive bands among them.
  • the pixel value is changed (added / subtracted) according to the offset value set for each band. Therefore, the adaptive offset filter 35 can reduce, for example, an error in gradation or the like by performing band offset processing.
  • FIG. 4 is a diagram for explaining an outline of band offset processing, and shows a case where the bit depth is 10 bits.
  • H In the basic profile of 265 / HEVC (Main, Main10, Main Still), 8 bits (pixel value 0 to 255) to 10 bits (pixel value 0 to 1023) can be used as the bit depth of the pixel (Main , Main Still is 8 bits only). That is, in the example in the case where the bit depth shown in FIG. 4 is 10 bits, the pixel values 0 to 1023 are divided into 32 bands, and among the divided 0 to 31 bands, four of bands 3 to 6 are divided. It shows the case where a band is selected. In the band offset process, an operation not performing the band offset process is also defined.
  • FIG. 5 illustrates the configuration of the adaptive offset filter.
  • the adaptive offset filter 35 includes a filter control unit 351 and a filter processing unit 352.
  • the filter control unit 351 further includes a switching determination unit 3511 and an analysis unit 3512.
  • the switching determination unit 3511 determines the applicability of the SAO process for each of the luminance and the chromaticity for each slice to be processed, and controls the operation of the analysis unit 3512 based on the determination result.
  • the switching determination unit 3511 instructs the analysis unit 3512 to apply the SAO process to the slice.
  • the switching determination unit 3511 is an LCU (corresponding to a CTU) to which the SAO process is applied in the slice immediately before the B slice (that is, I slice or P slice). Whether to apply the SAO process to the B slice is determined according to the number of modes (the number of modes).
  • the switching determination unit 3511 when the number of modes is equal to or more than a predetermined threshold Ths (for example, a half or more) in the last slice, the switching determination unit 3511 causes the analysis unit 3512 to apply the SAO process to the B slice to be processed. To direct. On the other hand, when the number of modes is less than the threshold Ths in the slice immediately before, the switching determination unit 3511 restricts (that is, does not apply) the application of the SAO process to the B slice to be processed. Instruct
  • the switching determination unit 3511 outputs the availability of the application of the SAO process for each slice as a parameter to the entropy coding unit 25.
  • a parameter for controlling the applicability of the SAO process for each slice "slice_sao_luma_flag" corresponding to the luminance and "slice_sao_chroma_flag" corresponding to the chromaticity may be mentioned.
  • the analysis unit 3512 includes a statistic acquisition unit 3513 and a mode determination unit 3514.
  • the analysis unit 3512 determines the SAO processing mode and the offset value for each LCU based on the original image data output from the screen rearrangement buffer 21 and the decoded image data output from the deblocking filter 34.
  • the statistic acquisition unit 3513 calculates a statistic for specifying the mode and offset of the SAO process based on the original image data and the decoded image data.
  • the statistic acquisition unit 3513 analyzes the correspondence between the target pixel and the adjacent pixel for each of the edge offset classes EO_0 to EO_3 illustrated in FIG. 3 in pixel units in the decoded image data. , And the appearance frequency of each of the categories 0 to 4. At this time, the statistic acquisition unit 3513 accumulates the difference in pixel value between the decoded image data and the original image data for each of the calculated categories. Then, the statistic acquisition unit 3513 sets the appearance frequency of each of the categories 0 to 4 calculated for each of the classes EO_0 to EO_3 and the pixel value accumulated for each category as a statistic.
  • the statistic acquisition unit 3513 calculates the frequency of the corresponding pixel for each of the bands 0 to 31 of the band offset shown in FIG. 4, and the pixel value between the decoded image data and the original image data at that pixel. The difference of is accumulated for each band. Then, the statistic acquisition unit 3513 sets the frequency calculated for each band and the difference between the pixel values accumulated for each band as the statistic. The statistic acquisition unit 3513 outputs the calculated statistic to the mode determination unit 3514.
  • the mode determination unit 3514 determines the SAO processing mode for each LCU based on the determination result of the switching determination unit 3511, the conversion skip information supplied from the conversion skip control unit 44, and the statistic supplied from the statistic acquisition unit 3513. , Specify the offset value of the mode.
  • the mode determination unit 3514 does not perform the SAO process when the result of the determination by the switching determination unit 3511, for example, “slice_sao_luma_flag” corresponding to the luminance and “slice_sao_chroma_flag” corresponding to the chromaticity indicate that the SAO process is not applied. To identify the mode. In addition, when the determination result of the switching determination unit 3511 indicates that the SAO process is applied, the mode determination unit 3514 is supplied from the conversion skip information supplied from the conversion skip control unit 44 and the statistic acquisition unit 3513. The mode of SAO processing and the offset value in the mode are specified based on the statistics.
  • the offset determination unit 3515 of the mode determination unit 3514 corresponds to the offset value and the offset value for only the band offset for both the edge offset and the band offset or prohibits the edge offset based on the conversion skip information and the statistic. Calculate the cost (e.g. rate distortion cost).
  • the offset determination unit 3515 calculates an offset value and a cost corresponding to the offset value, for each combination of an edge offset, for example, a class of edge offset and each of the categories 1 to 4. Further, the offset determination unit 3515 calculates, for the band offset, an offset value and a cost corresponding to the offset value. Furthermore, the offset determination unit 3515 calculates the cost when the SAO process is not applied.
  • the mode determination unit 3514 compares the costs calculated by the offset determination unit 3515, and based on the comparison result, a mode of SAO processing that can most improve the coding efficiency, and an offset value corresponding to the mode. And for each LCU. Further, the mode determination unit 3514 outputs, to the filter processing unit 352, the mode specified for each LCU and the offset value corresponding to the mode.
  • the mode determination unit 3514 outputs, as a parameter, the mode and offset value of the SAO processing specified for each LCU, or information indicating that the SAO processing is not applied, to the entropy coding unit 25.
  • the mode determination unit 3514 outputs, for example, “sao_type_idx_luma” corresponding to the luminance and “sao_typ_idx_chroma” corresponding to the chromaticity as a parameter indicating either the edge offset or the band offset.
  • “sao_eo_class_luma” corresponding to luminance and “sao_eo_class_chroma” corresponding to chromaticity are output as parameters indicating the class of edge offset.
  • “sao_band_position” is output as a parameter indicating the position of the band.
  • “sao_offset_abs” indicating an absolute value of the offset value
  • “sao_offset_sign” indicating positive or negative of the offset value are output.
  • the filter processing unit 352 performs filter processing on each LCU of the decoded image data based on the mode of SAO processing supplied from the analysis unit 3512 and the offset value. When the analysis unit 3512 instructs not to apply the SAO process, the filter processing unit 352 does not perform the SAO process on the target LCU.
  • the filter processing unit 352 outputs, to the adaptive loop filter 36, the decoded image data after the SAO processing or without the SAO processing.
  • the adaptive offset filter 35 determines whether the SAO process of the slice to be processed is to be turned on.
  • the adaptive offset filter 35 turns on the SAO process when the slice to be processed is either an I slice or a P slice. Further, when the slice to be processed is a B slice, the adaptive offset filter 35 turns on the SAO processing when the number of modes is equal to or greater than a predetermined threshold Ths in the slice immediately before the slice, and SAO when less than the threshold Ths. Turn processing off. Further, the adaptive offset filter 35 may set the SAO process to the on state or the off state based on an instruction from the user or the like.
  • the adaptive offset filter 35 performs the adaptive offset filter setting operation illustrated in FIG. 6 when the SAO process is turned on.
  • step ST21 the adaptive offset filter determines whether TUs in the conversion skip mode (TS mode) are mixed.
  • the adaptive offset filter 35 determines, based on the conversion skip information from the conversion skip control unit 44, whether a TU in the conversion skip mode is mixed in the LCU.
  • the adaptive offset filter 35 proceeds to step ST22 when the TU performing orthogonal transformation and the TU in the conversion skip mode are mixed in the LCU, and proceeds to step ST26 when not mixed.
  • the adaptive offset filter determines whether edge offset is inhibited (EO inhibited).
  • the adaptive offset filter 35 determines whether EO is prohibited based on the conversion skip information from the conversion skip control unit 44.
  • FIG. 7 illustrates TUs in the conversion skip mode included in the LCU to be processed. For example, there are 22 TUs in the LCU to be processed and 8 TUs in the conversion skip mode, and TUs in the conversion skip mode include 1 TU of 16 ⁇ 16 pixels and 3 TUs of 8 ⁇ 8 pixels. Conversion skip information indicates that the number of 4 ⁇ 4 pixel TUs is four.
  • the adaptive offset filter 35 performs the first determination operation, determines that EO is prohibited when the LCU to be processed includes a TU in the conversion skip mode, and does not inhibit EO when it is not included. To determine.
  • the adaptive offset filter 35 may perform a third determination operation different from the first and second determination operations. For example, the adaptive offset filter 35 determines whether EO is prohibited based on the number of pixels (area) of TUs in the conversion skip mode included in the LCU to be processed. In the case of FIG. 7, the TU in the conversion skip mode is 512 pixels, and the adaptive offset filter 35 determines that the EO is prohibited when the number of pixels of TU in the conversion skip mode is equal to or greater than a preset threshold. If it is less than the threshold value, it is determined that EO is not prohibited.
  • the adaptive offset filter 35 may perform a fourth determination operation different from the first to third determination operations. As a fourth determination operation, the adaptive offset filter 35 sets a weight for each TU size in the conversion skip mode, and makes it easy to determine that EO is prohibited when there is a TU in the conversion skip mode having a large size.
  • the adaptive offset filter 35 performs any one of the first determination operation to the fourth determination operation, proceeds to step ST23 when it is determined that EO is inhibited, and proceeds to step ST26 when it is determined that EO is not inhibited.
  • the adaptive offset filter 35 may be set in advance to perform any of the first to fourth determination operations, and the user can specify the first to fourth determination operations. It may be configured as follows. Further, the adaptive offset filter 35 may be configured to be able to switch between a plurality of determination operations in the first determination operation to the fourth determination operation.
  • step ST23 the adaptive offset filter calculates the cost when the SAO process is turned off.
  • the adaptive offset filter 35 calculates the cost when the SAO process is not applied, and proceeds to step ST24.
  • the adaptive offset filter calculates the cost of the band offset.
  • the adaptive offset filter 35 calculates an offset for the band offset, and calculates a cost when using the calculated offset.
  • FIG. 8 is a flowchart illustrating the offset calculation operation.
  • FIG. 8 shows the case where the original image data to be encoded is 10 bits wide.
  • step ST31 the adaptive offset filter calculates a coding error.
  • the adaptive offset filter 35 calculates the encoding error of each pixel using the original image data and the decoded image data, and proceeds to step ST32.
  • step ST32 the adaptive offset filter performs clipping processing.
  • the adaptive offset filter 35 clips the coding error calculated in step ST31 within the range of ⁇ 31, and proceeds to step ST33.
  • the adaptive offset filter detects an associated band. For example, when the bit depth of a pixel is 10 bits, the adaptive offset filter 35 performs right shift by a fixed amount of 5 bits, and performs processing of making a band indicated by a value of upper 5 bits a belonging band as pixels of decoded image data. Do every time. When the bit depth of the pixel is 8 bits, the right shift is performed as in the case of 10 bits, and the band indicated by the value of the upper 3 bits is taken as the assigned band. The adaptive offset filter 35 detects the assigned band of each pixel and proceeds to step ST34.
  • step ST34 the adaptive offset filter calculates the sum of errors in each band.
  • the adaptive offset filter 35 calculates the sum of the errors for each band based on the coding error clipped in step ST32 and the detection result of the belonging band in step ST33, and proceeds to step ST35.
  • the adaptive offset filter determines the band position in step ST35.
  • the adaptive offset filter 35 selects four consecutive bands at which the sum of errors becomes maximum, and proceeds to step ST36 with the selected four bands as the start position of the band.
  • the adaptive offset filter determines an offset value in step ST36.
  • the adaptive offset filter 35 divides the sum of errors of the selected four bands by the number of belonging pixels, and clips the division result within a range of ⁇ 31 to obtain an offset value.
  • FIG. 9 shows an operation example of the offset calculation operation.
  • the LCU has a size of 16 ⁇ 16 pixels in order to simplify the description.
  • (A) of FIG. 9 shows original image data
  • (b) of FIG. 9 shows decoded image data.
  • (C) of FIG. 9 shows the coding error.
  • (d) of FIG. 9 shows the belonging band detected for each pixel based on the decoded image data.
  • the adaptive offset filter 35 calculates the cost when using the offset value calculated by performing the process of FIG. 8, and proceeds to step ST25 of FIG.
  • step ST25 the adaptive offset filter performs an optimum mode determination process.
  • the adaptive offset filter 35 compares the costs calculated in the processing of step ST23 and step ST24, and specifies, for each LCU, the mode of SAO processing that can most improve the coding efficiency based on the comparison result.
  • step ST21 or step ST22 the adaptive offset filter 35 calculates the cost when the SAO process is turned off.
  • the adaptive offset filter calculates the cost when the SAO process is not applied, and proceeds to step ST27.
  • step ST27 the adaptive offset filter calculates the cost of the edge offset.
  • the adaptive offset filter 35 calculates an offset value and a cost corresponding to the offset value for each combination of the class of edge offset and each of the categories 1 to 4, and proceeds to step ST28.
  • the adaptive offset filter calculates the cost of the band offset in step ST28.
  • the adaptive offset filter 35 calculates an offset for the band offset, calculates the cost when using the calculated offset, and proceeds to step ST29.
  • step ST29 the adaptive offset filter performs optimum mode determination processing.
  • the adaptive offset filter 35 compares the costs calculated in the processes of step ST26 to step ST28, and specifies, for each LCU, a mode of SAO process that can most improve the coding efficiency based on the comparison result.
  • the adaptive offset filter 35 specifies the optimal mode and offset value of the SAO processing according to the TU in the conversion skip mode in the LCU. Furthermore, the adaptive offset filter 35 performs SAO processing using the offset value corresponding to the optimal mode in the optimal mode determined for each LCU. Therefore, even if the TU in the conversion skip mode is provided, it is possible to suppress the deterioration in the image quality of the decoded image due to the discontinuity of the block boundary between the TU in the conversion skip mode and the TU subjected to the orthogonal conversion.
  • FIG. 10 shows an operation example of the image coding process.
  • FIG. 10 exemplifies the case where the TU to be processed has a size of 8 ⁇ 8 pixels.
  • FIG. 10A schematically shows a part of the original image
  • FIG. 10B shows a part of the original image data
  • FIG. 10C shows a part of the predicted image data.
  • D residual data.
  • transform coefficients are It becomes the value shown in e). Further, when the transform coefficient is quantized, the quantized data has, for example, a value shown in (f) of FIG. Further, when the quantized data is subjected to inverse quantization and further inverse orthogonal transformation is performed, residual data shown in (g) of FIG. 10 is obtained. Therefore, the decoded image data obtained by adding the predicted image data and the residual data after decoding has a value shown in (h) of FIG. 10, for example, and the pixel value of the background image fluctuates to generate so-called mosquito noise.
  • the conversion skip coefficient becomes the value shown in (i) of FIG. 10, and the conversion skip coefficient is quantized,
  • the quantized data has, for example, a value shown in (j) of FIG.
  • residual data shown in (k) of FIG. 10 is obtained. Therefore, decoded image data obtained by adding predicted image data and residual data after decoding has a value shown in (m) of FIG. 10, for example. That is, although the decoded image can reproduce an impulse image, the pixel value "170" of the background image of the TU to be processed is different from the pixel value "196" of the background image of the other TU, and the block boundary becomes remarkable. .
  • FIG. 11 illustrates an operation in the case where an SAO process is performed on a decoded image of a TU in the conversion skip mode.
  • A) of FIG. 11 shows the decoded image data of TU in the conversion skip mode
  • (b) of FIG. 11 shows the decoded image data when edge offset is performed as the SAO process.
  • FIG. 11B shows the case where the direction used for category determination is the vertical direction (90 degrees), and the offset absolute value "sao_offset_sign" is "0, 0, 13, 30". In this case, in category 3, "13" is subtracted from the pixel value, and in category 4, the pixel value is "30".
  • FIG. 11C schematically shows a decoded image when edge offset processing is performed as SAO processing.
  • (D) of FIG. 11 shows decoded image data when band offset is performed as SAO processing.
  • the parameter “sao_band_position” indicating the position of the band is “5”
  • the parameter “sao_offset_abs” indicating the absolute value of the offset value is “26, 0, 0, 0”
  • the offset value is positive or negative.
  • the case where the parameter “sao_offset_sign” indicating “1” is “1, 1, 1, 1” is illustrated.
  • FIG. 11 schematically shows a decoded image when band offset processing is performed as SAO processing.
  • the edge offset process is prohibited according to the TU in the conversion skip mode in the LCU, so that even if the TU in the conversion skip mode is included in the LCU, performing the SAO process allows the image quality to be improved. It is possible to generate a coded stream that can suppress degradation.
  • the image encoding device 10 prohibits the edge offset processing. By performing such an operation, it is possible to generate a coded stream capable of obtaining a high-quality decoded image by suppressing DC deviation.
  • FIG. 12 is a diagram illustrating processing when the original image is an image of low-pass components.
  • the low-pass component image shown in FIG. 12 is, for example, an image of a DC component. Further, in the low-pass component image, the case where the boundary between the encoding target block and the adjacent pixel is an edge boundary or the like and there is no spatial correlation is illustrated.
  • FIG. 12 exemplifies the case where the original image is an image of low-pass components.
  • B of FIG. 12 exemplifies the intra-predicted image in the case where the original image is an image of low-pass components. Note that the intra-predicted image when the original image is a low-pass component image is, for example, an image of DC prediction.
  • C of FIG. 12 shows residual data in the case where the original image is a low-pass component image, and the residual data has a large value because there is no spatial correlation with adjacent pixels.
  • the conversion skip process is performed on residual data in the case where the original image is an image of low-pass components
  • the conversion skip coefficients have values shown in (d) of FIG.
  • the left bit shift processing is performed so that the quantization unit can perform quantization of the coefficient of the orthogonal conversion and the residual data, so that the conversion skip coefficient illustrated in (d) of FIG. Is a value obtained by bit-shifting the residual data shown in FIG. (E) of FIG. 12 shows the quantization data of the transform skip coefficient.
  • the predicted image data is added to the decoded residual data to obtain the decoded image data shown in (g) of FIG. That is, the decoded image data when the conversion skip processing is performed is an image in which a DC shift occurs as compared with the input image data illustrated in (a) of FIG.
  • the transformation coefficients when the orthogonal transformation processing is performed on the residual when the original image is an image of low-pass components are values shown in (h) of FIG. (I) of FIG. 12 shows quantization data of transform coefficients.
  • decoded residual data shown in (j) of FIG. 12 is obtained.
  • the predicted image data is added to the decoded residual data to obtain decoded image data shown in (k) of FIG.
  • the decoded image data using this orthogonal transformation becomes an image with less DC deviation than the input image data shown in (a) of FIG.
  • the decoded image may be an image with a degraded image quality as compared to the case where the orthogonal conversion process is performed.
  • FIG. 13 is a diagram illustrating processing in the case where the original image is an image of the midrange component.
  • the image of the middle band component shown in FIG. 13 is an image of a frequency component higher than the low band component and lower than the predetermined frequency component.
  • FIG. 13 exemplifies the case where the original image is an image of the midrange component.
  • B of FIG. 13 exemplifies the intra-predicted image in the case where the original image is an image of the midrange component.
  • the intra-predicted image when the original image is an image of the midrange component is, for example, an image generated by directional prediction.
  • C of FIG. 13 shows residual data when the original image is an image of the midrange component.
  • pixel values included in a predetermined range and those included in other predetermined ranges are included so that gradation changes can be easily recognized.
  • the pixel border with the pixel value to be displayed is indicated by a thick line.
  • the conversion skip coefficient has a value shown in (d) of FIG.
  • the left bit shift processing is performed so that the quantization unit can perform quantization of the coefficient of the orthogonal conversion and the residual data, so that the conversion skip coefficient illustrated in (d) of FIG. Is a value obtained by bit-shifting the residual data shown in FIG. (E) of FIG. 13 shows the quantization data of the conversion skip coefficient.
  • decoded residual data shown in (f) of FIG. 13 is obtained.
  • the predicted image data is added to the decoded residual data to obtain decoded image data shown in (g) of FIG. That is, compared to the input image data shown in (a) of FIG. 13, the decoded image data when the conversion skip processing is performed has a stepwise pixel value change of gradation, and corrects continuous gradation change etc. correctly. It can not be reproduced.
  • the transform coefficients when the orthogonal transformation process is performed on the residual when the original image is an image of the midrange component are values shown in (h) of FIG. (I) of FIG. 13 shows quantized data of transform coefficients.
  • decoded residual data shown in (j) of FIG. 13 is obtained.
  • the predicted image data is added to the decoded residual data to obtain decoded image data shown in (k) of FIG.
  • the decoded image data subjected to the orthogonal transformation process has higher reproducibility of gradation change of the input image data shown in (a) of FIG. 13 than in (g) of FIG. 13.
  • the decoded image may be an image with a degraded image quality as compared to the case where the orthogonal conversion process is performed. Therefore, in other operations of the image coding apparatus, the selection operation of intra prediction or inter prediction is restricted based on the result of determination as to whether or not to perform conversion skip processing or whether or not there is a TU in conversion skip mode. Control the image quality degradation of the decoded image.
  • FIG. 14 is a flowchart illustrating an operation of determining whether to use the conversion skip process.
  • the prediction selecting unit calculates an image feature amount.
  • the image feature quantity is a feature quantity that makes it possible to determine whether an input image includes an artificial image such as a computer graphics image.
  • the prediction selecting unit 43 calculates an image feature amount using the original image data supplied from the screen rearrangement buffer 21 and proceeds to step ST42.
  • the image feature amount may be calculated using the residual data.
  • the prediction selecting unit 43 uses, as an image feature amount, at least one of, for example, variance of pixel values, total variation (total variation, sum of absolute values of gradients in each pixel), difference with median, and histogram as image feature amounts. calculate. By calculating the image feature amount in this manner, it can be determined whether the image is an artificial image with many changes. In addition, artificial images often have larger maximum values of luminance data and color difference data than natural images different from artificial images. Therefore, luminance data or chrominance data, or the maximum value of luminance data and chrominance data may be used as the image feature amount.
  • step ST42 the prediction image selection unit determines whether to use the conversion skip mode (TS mode).
  • the prediction selecting unit 43 determines the use of the conversion skip mode based on the image feature amount calculated in step ST41.
  • FIG. 15 is a flowchart showing a first specific example of the operation of determining whether to use the conversion skip mode.
  • step ST51 the prediction selecting unit calculates the variance as the image feature amount.
  • the prediction selecting unit 43 calculates the variance of 4 ⁇ 4 pixels in the original image data, and proceeds to step ST52.
  • step ST52 the prediction selecting unit calculates the maximum luminance as the image feature amount.
  • the prediction selecting unit 43 calculates the maximum luminance in the 4 ⁇ 4 pixel image used in step ST51, and proceeds to step ST53.
  • step ST53 the prediction selection unit determines whether the variance is equal to or greater than a threshold Tha.
  • the prediction selection unit 43 proceeds to step ST54 when the variance calculated in step ST41 is equal to or greater than the threshold Tha, and proceeds to step ST56 when the variance is not equal to or greater than the threshold Tha.
  • step ST54 the prediction selection unit determines whether the maximum luminance is equal to or greater than the threshold Thb.
  • the prediction selection unit 43 proceeds to step ST55 when the maximum luminance calculated in step ST52 is equal to or higher than the threshold Thb, and proceeds to step ST56 when the maximum luminance is not equal to or higher than the threshold Thb.
  • step ST55 the prediction selection unit determines to use the conversion skip mode (TS mode).
  • step ST56 the prediction selection unit determines that the conversion skip mode is not used.
  • FIG. 16 is a flowchart showing a second specific example of the operation of determining whether to use the conversion skip mode.
  • a prediction selection part produces
  • the prediction selecting unit 43 generates a difference image indicating the difference between the original image and the original image after filter processing using, for example, a 3 ⁇ 3 pixel median filter, and proceeds to step ST62.
  • step ST62 the prediction selecting unit calculates the maximum luminance as the image feature amount.
  • the prediction selecting unit 43 calculates the maximum luminance in the 4 ⁇ 4 pixel image in the difference image generated in step ST61, and proceeds to step ST63.
  • step ST63 the prediction selecting unit calculates the maximum color difference as the image feature amount.
  • the prediction selecting unit 43 calculates the maximum color difference in the 4 ⁇ 4 pixel image used in step ST62, and proceeds to step ST64.
  • step ST64 the prediction selection unit determines whether the maximum luminance is equal to or higher than the threshold Thc.
  • the prediction selection unit 43 proceeds to step ST65 when the maximum luminance calculated in step ST62 is equal to or higher than the threshold Thc, and proceeds to step ST67 when the maximum luminance is not equal to or higher than the threshold Thc.
  • step ST65 the prediction selection unit determines whether the maximum color difference is equal to or greater than the threshold Thd.
  • the prediction selection unit 43 proceeds to step ST66 when the maximum color difference calculated in step ST63 is equal to or larger than the threshold Thd, and proceeds to step ST67 when the maximum color difference is not equal to or larger than the threshold Thd.
  • step ST66 the prediction selection unit determines to use the conversion skip mode (TS mode). Also, in step ST67, the prediction selection unit determines that the conversion skip mode is not used.
  • the prediction selecting unit 43 calculates the image feature amount from the original image or the difference image as shown in FIG. 15 or 16 and determines whether to use the conversion skip mode based on the calculated image feature amount. Furthermore, when it is determined that the conversion skip mode is not used, the prediction selection unit 43 selects either intra prediction or inter prediction based on the cost. Further, when determining that the conversion skip process is to be performed, the prediction selecting unit 43 selects inter prediction in the selection of intra prediction and inter prediction. As described above, by controlling the use of the conversion skip mode and the selection of prediction, it is possible to prevent the conversion skip processing from being performed in intra prediction and the reduction in the reproducibility of the low band and the mid band.
  • 15 and 16 illustrate the operation of determining whether or not to use the conversion skip mode, but the operation of selecting whether to use intra prediction and inter prediction and whether or not to use the conversion skip mode is used. It may be performed in combination.
  • FIG. 17 is a flowchart illustrating a case where the prediction selection operation and the conversion skip determination operation are performed in combination.
  • the motion prediction / compensation unit determines the optimal mode in inter prediction.
  • the motion prediction / compensation unit 42 determines, for example, a motion vector, PU size, TU size, orthogonal transform / conversion skip, or the like that minimizes the cost, and proceeds to step ST72.
  • the motion prediction / compensation unit 42 may calculate the cost by causing the orthogonal transformation unit 23 to perform orthogonal transformation processing or transformation skip processing by controlling the conversion skip control unit 44.
  • step ST72 the prediction selection unit determines whether a TU in the conversion skip mode (TS mode) is present.
  • the prediction selection unit 43 proceeds to step ST75 when there is a TU in conversion skip mode in the optimal mode selected in step ST71, and proceeds to step ST73 when there is no TU in conversion skip mode.
  • step ST73 the intra prediction unit determines the optimal mode in intra prediction.
  • the intra prediction unit 41 determines a prediction mode that minimizes the cost, and proceeds to step ST74.
  • step ST74 the prediction selection unit proceeds to step ST75 when the cost of inter prediction is smaller than intra prediction, and proceeds to step ST76 when the cost of inter prediction is smaller than intra prediction.
  • step ST75 the prediction selection unit selects inter prediction. Also, in step ST76, the prediction selection unit selects intra prediction.
  • the basic profile of the HEVC standard (Main, Main 10, Main Still) enables the setting of the conversion skip mode for 4 ⁇ 4 pixel TUs, and therefore the 4 ⁇ 4 pixel TU in the conversion skip mode
  • the inter prediction may be selected in the presence of.
  • FIG. 18 is a flowchart illustrating the case where the prediction selection operation is performed according to the presence of a 4 ⁇ 4 pixel TU that is a conversion skip mode.
  • step ST81 the motion prediction / compensation unit selects the optimal mode in inter prediction.
  • the motion prediction / compensation unit 42 determines, for example, the motion vector, the PU size, the TU size, or any of the orthogonal transform / conversion skip, and the like at which the cost is minimized, and proceeds to step ST82.
  • step ST82 the prediction selection unit determines whether a 4 ⁇ 4 pixel TU in the conversion skip mode (TS mode) is present.
  • the prediction selection unit 43 proceeds to step ST85 if there is a 4 ⁇ 4 pixel TU in conversion skip mode in the optimum mode selected in step ST81, and proceeds to step ST83 if there is no TU in conversion skip mode.
  • step ST83 the intra prediction unit determines the optimal mode in intra prediction.
  • the intra prediction unit 41 determines the prediction mode that minimizes the cost, and proceeds to step ST84.
  • step ST84 the prediction selection unit proceeds to step ST85 if the cost of inter prediction is smaller than that of intra prediction, and proceeds to step ST86 if the cost of inter prediction is not smaller than intra prediction.
  • step ST85 the prediction selection unit selects inter prediction. Also, in step ST86, the prediction selection unit selects intra prediction.
  • inter prediction is selected, so that it is possible to suppress the deterioration in the image quality of the decoded image.
  • inter prediction is selected.
  • FIG. 19 illustrates the configuration of the image decoding device, and the image decoding device 50 is a decoding device corresponding to the image coding device 10 of FIG.
  • the encoded stream (data) encoded by the image encoding device 10 is supplied to the image decoding device 50 via a predetermined transmission path or the like and is decoded.
  • the image decoding apparatus 50 includes an accumulation buffer 61, an entropy decoding unit 62, an inverse quantization unit 63, an inverse orthogonal transformation unit 64, an operation unit 65, a deblocking filter 66, an adaptive offset filter 67, an adaptive loop filter 68, and a screen rearrangement buffer. It has 69.
  • the image decoding apparatus 50 further includes a frame memory 71, a selection unit 72, an intra prediction unit 73, and a motion compensation unit 74.
  • the accumulation buffer 61 receives and accumulates the transmitted encoded stream.
  • the encoded stream is read at a predetermined timing and output to the entropy decoding unit 62.
  • the entropy decoding unit 62 entropy decodes the encoded stream, and outputs parameters such as information indicating the obtained intra prediction mode to the intra prediction unit 73, and parameters such as information indicating the inter prediction mode and motion vector information It is output to the motion compensation unit 74. Further, the entropy decoding unit 62 outputs parameters such as information on TU in the transform skip mode to the inverse orthogonal transform unit 64. Furthermore, the entropy decoding unit 62 outputs the parameters related to the decoded adaptive offset filter to the adaptive offset filter 67.
  • the inverse quantization unit 63 inversely quantizes the quantized data obtained by being decoded by the entropy decoding unit 62, using a method corresponding to the quantization method of the quantization unit 24 in FIG. That is, the inverse quantization unit 63 performs inverse quantization of the quantized data by the same method as the inverse quantization unit 31 of FIG. 1 using the quantization parameter supplied from the image coding device 10.
  • the inverse quantization unit 63 outputs the dequantized data to the inverse orthogonal transform unit 64.
  • the inverse orthogonal transformation unit 64 switches the operation of the inverse orthogonal transformation based on the parameters supplied from the entropy decoding unit 62.
  • the inverse orthogonal conversion unit 64 performs inverse orthogonal conversion using a method corresponding to the orthogonal conversion method of the orthogonal conversion unit 23 in FIG. Decoded residual data corresponding to residual data before orthogonal transformation in image coding apparatus 10 is obtained and output to operation unit 65. Further, when the data supplied from the inverse quantization unit 63 is data of TU in the change skip mode, the inverse orthogonal transformation unit 64 outputs the data to the operation unit 65 without performing the inverse orthogonal transformation. When bit shift processing is performed on residual data of TU in the change skip mode, bit shift processing in the reverse direction is performed.
  • the prediction image data is supplied to the calculation unit 65 from the intra prediction unit 73 or the motion compensation unit 74.
  • the operation unit 65 adds the decoded residual data and the predicted image data to obtain decoded image data corresponding to the original image data before the predicted image data is subtracted by the operation unit 22 of the image coding device 10.
  • Arithmetic unit 65 outputs the decoded image data to deblocking filter 66.
  • the deblocking filter 66 removes block distortion of the decoded image by appropriately performing deblocking filter processing.
  • the deblocking filter 66 outputs the result of the filtering process to the adaptive offset filter 67.
  • the adaptive offset filter 67 performs SAO processing on the image filtered by the deblocking filter 66.
  • the adaptive offset filter 67 performs filtering on the image filtered by the deblocking filter 66 for each LCU, using the parameters supplied from the entropy decoding unit 62.
  • the adaptive offset filter 67 outputs the filtered image to the adaptive loop filter 68.
  • the adaptive loop filter 68 is configured in the same manner as the adaptive loop filter 36 of FIG. 1 and performs adaptive loop filter processing for each LCU.
  • the adaptive loop filter 68 performs filter processing for each LCU, using filter coefficients, on the image filtered by the adaptive offset filter 67, and outputs the filter processing result to the screen rearrangement buffer 69 and the frame memory 71. .
  • the screen rearrangement buffer 69 rearranges the images. That is, the order of the frames rearranged for the order of encoding by the screen rearrangement buffer 21 in FIG. 1 is rearranged in the order of the original display.
  • the output of the adaptive loop filter 68 is further supplied to a frame memory 71.
  • the frame memory 71, the selection unit 72, the intra prediction unit 73, and the motion compensation unit 74 correspond to the frame memory 37, the selection unit 38, the intra prediction unit 41, and the motion prediction / compensation unit 42 of the image coding device 10.
  • the selection unit 72 reads an image used for intra prediction from the frame memory 71 and outputs the image to the intra prediction unit 73. Further, the selection unit 72 reads out the image to be inter-processed and the image to be referred to from the frame memory 71 and outputs the image to the motion compensation unit 74.
  • the intra prediction unit 73 generates a prediction image from the reference image acquired from the frame memory 71 based on this information, and outputs the generated prediction image to the calculation unit 65.
  • the motion compensation unit 74 is supplied with information (prediction mode information, motion vector information, reference frame information, flags, various parameters, and the like) obtained by decoding the header information from the entropy decoding unit 62.
  • the motion compensation unit 74 generates a predicted image from the reference image acquired from the frame memory 71 based on the information supplied from the entropy decoding unit 62, and outputs the generated predicted image to the calculation unit 65.
  • FIG. 20 is a flowchart illustrating the operation of the image decoding apparatus.
  • the image decoding apparatus When the decoding process is started, the image decoding apparatus performs an accumulation process in step ST101.
  • the accumulation buffer 61 of the image decoding device 50 receives and accumulates the transmitted encoded stream.
  • the image decoding apparatus performs an entropy decoding process in step ST102.
  • the entropy decoding unit 62 of the image decoding device 50 decodes the encoded stream supplied from the accumulation buffer 61.
  • the I picture, P picture, and B picture encoded by the entropy encoding unit 25 of FIG. 1 are decoded.
  • the entropy decoding unit 62 also decodes information of parameters such as motion vector information, reference frame information, and prediction mode information (intra prediction mode or inter prediction mode).
  • the prediction mode information is intra prediction mode information
  • the prediction mode information is supplied to the intra prediction unit 73.
  • the prediction mode information is inter prediction mode information
  • motion vector information or the like corresponding to the prediction mode information is output to the motion compensation unit 74.
  • a parameter indicating information on TU in the transform skip mode is supplied to the inverse orthogonal transform unit 64, and a parameter on the adaptive offset filter is output to the adaptive offset filter 67.
  • the image decoding apparatus performs predicted image generation processing in step ST103.
  • the intra prediction unit 73 or the motion compensation unit 74 of the image decoding device 50 performs predicted image generation processing in response to the prediction mode information supplied from the entropy decoding unit 62.
  • the intra prediction unit 73 when the intra prediction mode information is supplied from the entropy decoding unit 62, the intra prediction unit 73 generates an intra prediction image in the intra prediction mode.
  • the motion compensation unit 74 performs motion compensation processing in the inter prediction mode to generate an inter prediction image.
  • the predicted image (intra predicted image) generated by the intra prediction unit 73 or the predicted image (inter predicted image) generated by the motion compensation unit 74 is output to the calculation unit 65.
  • the image decoding apparatus performs inverse quantization processing in step ST104.
  • the inverse quantization unit 63 of the image decoding device 50 inversely quantizes the quantized data obtained by the entropy decoding unit 62 according to a method corresponding to the quantization method of the quantization unit 24 of FIG. Are output to the inverse orthogonal transform unit 64.
  • the image decoding apparatus performs inverse orthogonal transform processing or inverse transform skip processing.
  • the inverse orthogonal transformation unit 64 of the image decoding device 50 performs an inverse orthogonal transformation process based on the parameters supplied from the entropy decoding unit 62.
  • the inverse orthogonal transform unit 64 performs inverse orthogonalization using a method corresponding to the orthogonal conversion method of the orthogonal conversion unit 23 in FIG. A transform is performed to obtain decoded residual data corresponding to residual data before orthogonal transform in image coding apparatus 10, and the decoded residual data is output to operation unit 65.
  • the inverse orthogonal transformation unit 64 skips the inverse orthogonal transformation and outputs the skip to the computing unit 65.
  • the image decoding apparatus performs image addition processing in step ST106.
  • the operation unit 65 of the image decoding apparatus 50 adds the predicted image data supplied from the intra prediction unit 73 or the motion compensation unit 74 and the decoded residual data supplied from the inverse orthogonal transform unit 64 to generate decoded image data. Do.
  • the operation unit 65 outputs the generated decoded image data to the deblocking filter 66 and the frame memory 71.
  • the image decoding apparatus performs deblocking filter processing in step ST107.
  • the deblocking filter 66 of the image decoding device 50 performs deblocking filter processing on the image output from the computing unit 65. This removes blockiness.
  • the decoded image from the deblocking filter 66 is output to the adaptive offset filter 67.
  • step ST108 the image decoding apparatus performs SAO processing.
  • the adaptive offset filter 67 of the image decoding device 50 performs SAO processing on the image filtered by the deblocking filter 66 using the parameters related to the SAO processing supplied from the entropy decoding unit 62.
  • the adaptive offset filter 67 outputs the decoded image data after SAO processing to the adaptive loop filter 68.
  • step ST109 the image decoding apparatus performs adaptive loop filter processing.
  • the adaptive loop filter 68 of the image decoding device 50 performs adaptive loop filter processing on the decoded image data after SAO processing by the adaptive offset filter 67, and the decoded image data after filter processing is subjected to the screen rearrangement buffer 69 and the frame memory 71.
  • the image decoding apparatus performs storage processing in step ST110.
  • the frame memory 71 of the image decoding apparatus 50 receives the decoded image data before filter processing supplied from the arithmetic unit 65, and the decoded image data subjected to the filter processing by the deblocking filter 66, the adaptive offset filter 67, and the adaptive loop filter.
  • step ST111 the image decoding apparatus performs screen rearrangement processing.
  • the screen rearrangement buffer 69 of the image decoding apparatus 50 accumulates the decoded image data supplied from the adaptive loop filter 68 and the accumulated decoded image data is rearranged by the screen rearrangement buffer 21 of the image coding apparatus 10 Output to the display order of
  • the SAO processing is performed by the adaptive offset filter 67 based on the parameters supplied from the entropy decoding unit 62, and the edge offset processing is prohibited according to TU in the conversion skip mode in LCU. Ru. Therefore, the encoding process is performed such that the TU in the conversion skip mode is included in the LCU in order to hold sharp edges and the like, and in the other cases, it is possible to output a decoded image in which the image quality degradation is suppressed.
  • the inter prediction is selected, so it is possible to output a decoded image in which the deterioration of the image quality is suppressed.
  • the image decoding apparatus 50 may prohibit the edge offset process in the SAO process when the information indicating that the input image is in the high dynamic range is included in the encoded stream.
  • FIG. 21 shows an example of a schematic configuration of a television set to which the image processing apparatus described above is applied.
  • the television device 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.
  • the tuner 902 extracts a signal of a desired channel from a broadcast signal received via the antenna 901, and demodulates the extracted signal. Then, the tuner 902 outputs the coded bit stream obtained by demodulation to the demultiplexer 903. That is, the tuner 902 has a role as a transmission means in the television apparatus 900 for receiving a coded stream in which an image is coded.
  • the demultiplexer 903 separates the video stream and audio stream of the program to be viewed from the coded bit stream, and outputs the separated streams to the decoder 904. Also, the demultiplexer 903 extracts auxiliary data such as an EPG (Electronic Program Guide) from the encoded bit stream, and supplies the extracted data to the control unit 910. When the coded bit stream is scrambled, the demultiplexer 903 may perform descrambling.
  • 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. Further, the decoder 904 outputs the 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 a video. Also, the video signal processing unit 905 may cause the display unit 906 to display an application screen supplied via the network. Further, the video signal processing unit 905 may perform additional processing such as noise removal (suppression) on the video data according to the setting. Furthermore, the video signal processing unit 905 may generate an image of a graphical user interface (GUI) such as a menu, a button, or a cursor, for example, and may superimpose the generated image on the output image.
  • GUI graphical 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 the image surface of a display device (for example, a liquid crystal display, a plasma display, or OELD (Organic ElectroLuminescence Display) (organic EL display)). Or display an image.
  • a display device for example, a liquid crystal display, a plasma display, or OELD (Organic ElectroLuminescence Display) (organic EL display)). Or display an image.
  • the audio signal processing unit 907 performs reproduction processing such as D / A conversion and amplification on audio data input from the decoder 904, and causes the speaker 908 to output audio. Also, the audio signal processing unit 907 may perform additional processing such as noise removal (suppression) on the audio data.
  • the external interface 909 is an interface for connecting the television device 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 serves as a transmission means in the television apparatus 900 for receiving the coded stream in which the image is coded.
  • 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 by the memory is read and executed by the CPU, for example, when the television device 900 is started.
  • the CPU controls the operation of the television apparatus 900 according to an operation signal input from, for example, the user interface 911 by executing a program.
  • the user interface 911 is connected to the control unit 910.
  • the user interface 911 has, for example, buttons and switches for the user to operate the television device 900, a receiver of remote control signals, 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 mutually 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.
  • the decoder 904 has the function of the image decoding apparatus described above. As a result, when decoding an image in the television apparatus 900, a decoded image in which the reduction in image quality is suppressed can be displayed.
  • FIG. 22 shows an example of a schematic configuration of a mobile phone to which the embodiment described above is applied.
  • the 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 multiplexing and separating unit 928, a recording and reproducing unit 929, a display unit 930, a control unit 931, an operation.
  • a unit 932 and a bus 933 are provided.
  • 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 mutually 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.
  • the cellular phone 920 can transmit and receive audio signals, transmit and receive electronic mail or image data, capture an image, and record data in various operation modes including a voice call mode, a data communication mode, a shooting mode, and a videophone mode. Do 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, and A / D converts and compresses the converted audio data. Then, the audio codec 923 outputs the compressed audio data to the communication unit 922.
  • the communication unit 922 encodes and modulates audio data to generate 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 also amplifies and frequency-converts a radio signal received via the antenna 921 to obtain a reception 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 and D / A converts audio data 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 an electronic mail in accordance with an operation by the user via the operation unit 932. Further, the control unit 931 causes the display unit 930 to display characters. Further, the control unit 931 generates electronic mail data in response to a transmission instruction from the user via the operation unit 932, and outputs the generated electronic mail data to the communication unit 922.
  • a communication unit 922 encodes and modulates electronic mail data to generate 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 also amplifies and frequency-converts a radio signal received via the antenna 921 to obtain a reception signal.
  • the communication unit 922 demodulates and decodes the received signal to restore the e-mail data, and outputs the restored e-mail data to the control unit 931.
  • the control unit 931 causes the display unit 930 to display the content of the e-mail, and stores the e-mail data in the storage medium of the recording and reproduction unit 929.
  • the recording and reproducing unit 929 includes an arbitrary readable and writable storage medium.
  • the storage medium may be a built-in storage medium such as RAM or flash memory, and may be an externally mounted type such as hard disk, magnetic disk, magneto-optical disk, optical disk, USB (Universal Serial Bus) memory, or memory card Storage media.
  • the camera unit 926 captures an image of 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 recording and reproduction 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 communication unit 922 multiplexes the multiplexed stream.
  • Output to The communication unit 922 encodes and modulates the stream to generate a transmission signal.
  • the communication unit 922 transmits the generated transmission signal to a base station (not shown) via the antenna 921.
  • the communication unit 922 also amplifies and frequency-converts a radio signal received via the antenna 921 to obtain a reception signal.
  • the transmission signal and the reception signal may include a coded 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 to generate video data.
  • the video data is supplied to the display unit 930, and the display unit 930 displays a series of images.
  • the audio codec 923 decompresses and D / A converts the audio stream 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 above-described image encoding device and image decoding device. As a result, when encoding and decoding an image in the mobile phone 920, it is possible to output a decoded image in which the deterioration in image quality is suppressed.
  • FIG. 23 shows an example of a schematic configuration of a recording and reproducing apparatus to which the embodiment described above is applied.
  • the recording / reproducing device 940 encodes, for example, audio data and video data of the received broadcast program and records the encoded data on a recording medium.
  • the recording and reproduction device 940 may encode, for example, audio data and video data acquired from another device and record the encoded data on a recording medium.
  • the recording / reproducing device 940 reproduces the data recorded on the recording medium on the monitor and the speaker, for example, in accordance with the user's 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. And 950.
  • the 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 coded bit stream obtained by demodulation to the selector 946. That is, the tuner 941 has a role as a transmission means in the recording / reproducing device 940.
  • the external interface 942 is an interface for connecting the recording and reproducing device 940 to an external device or a network.
  • the external interface 942 may be, for example, an IEEE 1394 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 has a role 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 coded bit stream to the selector 946.
  • the HDD 944 records an encoded bit stream obtained by compressing content data such as video and audio, various programs, and other data in an internal hard disk. Also, the HDD 944 reads these data from the hard disk when reproducing video and audio.
  • the disk drive 945 records and reads data on the attached recording medium.
  • the recording medium mounted on the disk drive 945 may be, 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, etc. .
  • the selector 946 selects the coded bit stream input from the tuner 941 or the encoder 943 at the time of recording video and audio, and outputs the selected coded bit stream to the HDD 944 or the disk drive 945. Also, the selector 946 outputs the encoded bit stream input from the HDD 944 or the disk drive 945 to the decoder 947 at the time of reproduction of video and audio.
  • the decoder 947 decodes the coded bit stream to generate video data and audio data. Then, the decoder 947 outputs the generated video data to the OSD 948. Also, the decoder 904 outputs the generated audio data to an external speaker.
  • the OSD 948 reproduces the video data input from the decoder 947 and displays the video.
  • the OSD 948 may superimpose an image of a GUI 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 programs executed by the CPU, program data, and the like.
  • the program stored by the memory is read and executed by the CPU, for example, when the recording and reproducing device 940 is started.
  • the CPU controls the operation of the recording / reproducing apparatus 940 in accordance with an operation signal input from, for example, the user interface 950 by executing a 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 and reproducing device 940, a receiver of a remote control signal, 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 coding apparatus described above.
  • the decoder 947 has the function of the image decoding apparatus described above.
  • FIG. 24 shows an example of a schematic configuration of an imaging device to which the embodiment described above is applied.
  • the imaging device 960 captures an object to generate an image, encodes image data, and records the image data in 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 is provided.
  • 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 mutually 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.
  • the optical block 961 has a focus lens, an aperture mechanism, and the like.
  • the optical block 961 forms an optical image of a subject on the imaging surface of the imaging unit 962.
  • the imaging unit 962 includes an image sensor such as a charge coupled device (CCD) or a complementary metal oxide semiconductor (CMOS), and converts an optical image formed on an 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 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 to generate 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.
  • the image processing unit 964 may output the image data input from the signal processing unit 963 to the display unit 965 to display an image. The image processing unit 964 may superimpose the display data acquired from the OSD 969 on the image to be output to the display unit 965.
  • the OSD 969 generates an image of a GUI such as a menu, a button, or a cursor, for example, and outputs the generated image to the image processing unit 964.
  • a GUI such as a menu, a button, or a cursor
  • the external interface 966 is configured as, for example, a USB input / output terminal.
  • the external interface 966 connects the imaging device 960 and the printer, for example, when printing an image.
  • a drive is connected to the external interface 966 as necessary.
  • removable media such as a magnetic disk or an optical disk may be attached to the drive, and a program read from the removable media may 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 in the media drive 968 may be, for example, any readable / writable removable medium such as a magnetic disk, a magneto-optical disk, an optical disk, or a semiconductor memory.
  • the recording medium may be fixedly attached to the media drive 968, and a non-portable storage unit such as, for example, a built-in hard disk drive or a solid state drive (SSD) may be configured.
  • SSD solid state drive
  • the control unit 970 includes a processor such as a CPU, and memories such as a RAM and a ROM.
  • the memory stores programs executed by the CPU, program data, and the like.
  • the program stored by the memory is read and executed by the CPU, for example, when the imaging device 960 starts up.
  • the CPU controls the operation of the imaging device 960 according to an operation signal input from, for example, the user interface 971 by executing a 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 functions of the image coding device and the image decoding device according to the above-described embodiment. As a result, when encoding and decoding an image in the imaging device 960, it is possible to output a decoded image in which the degradation of the image quality is suppressed.
  • the series of processes described in the specification can be performed by hardware, software, or a combination of both.
  • a program recording the processing sequence is installed and executed in a memory in a computer incorporated in dedicated hardware.
  • the program can be installed and executed on a general-purpose computer that can execute various processes.
  • the program can be recorded in advance on a hard disk or a solid state drive (SSD) as a recording medium, or a read only memory (ROM).
  • the program may be a flexible disk, a compact disc read only memory (CD-ROM), a magneto optical (MO) disc, a digital versatile disc (DVD), a BD (Blu-Ray Disc (registered trademark)), a magnetic disc, a semiconductor memory card Etc.
  • CD-ROM compact disc read only memory
  • MO magneto optical
  • DVD digital versatile disc
  • BD Blu-Ray Disc
  • magnetic disc a semiconductor memory card Etc.
  • Such removable recording media can be provided as so-called package software.
  • the program may be installed from the removable recording medium to the computer, or may be transferred from the download site to the computer wirelessly or by wire via a network such as a LAN (Local Area Network) or the Internet.
  • the computer can receive the program transferred in such a manner, and install the program on a recording medium such as a built-in hard disk.
  • the effect described in this specification is an illustration to the last, is not limited, and may have an additional effect which is not described.
  • the present technology should not be construed as being limited to the embodiments of the above-described technology.
  • the embodiments of this technology disclose the present technology in the form of exemplification, and it is obvious that those skilled in the art can modify or substitute the embodiments within the scope of the present technology. That is, in order to determine the gist of the present technology, the claims should be taken into consideration.
  • the image processing apparatus of the present technology can also have the following configuration.
  • a filter processing unit that performs filter processing for applying an offset to pixels of a decoded image;
  • An image processing apparatus comprising: a filter control unit which prohibits application of the offset to an edge portion according to a generation situation of a conversion unit in a conversion skip mode in which orthogonal conversion is not performed on a prediction residual.
  • the filter control unit prohibits the application of the offset to the edge portion when the ratio of the number of conversion units in the conversion skip mode to the number of conversion units in the largest coding unit is equal to or more than a threshold (1)
  • the filter control unit prohibits the application of the offset to the edge portion when the ratio of the number of pixels of the conversion unit of the conversion skip mode to the number of pixels of the largest encoding unit is equal to or more than a threshold (1)
  • the filter control unit sets a weight according to the size of the conversion unit, and the number of conversion units in the conversion skip mode in the largest coding unit and the weight corresponding to the conversion unit in the conversion skip mode
  • the filter control unit determines, using the decoded image, whether or not the offset of the gradation adjustment is to be applied by the filter processing unit, and sets the offset in the case of applying (1) to (6)
  • the apparatus further comprises a prediction selection unit that selects a prediction image of either intra prediction or inter prediction, The prediction selection unit according to any one of (1) to (7), which causes the prediction residual to be calculated by selecting a prediction image of the inter prediction when the conversion skip mode is selected in the inter prediction.
  • Image processing device When the conversion skip mode is not selected in the inter prediction, the prediction selection unit selects one of the intra prediction and the inter prediction based on the cost of the inter prediction and the cost of the intra prediction.
  • the image processing apparatus according to (8), wherein a predicted image is selected.
  • the prediction selection unit selects the prediction image of the inter prediction when the conversion skip mode is selected in the 4 ⁇ 4 pixel conversion unit in the inter prediction, according to (8) or (9).
  • Image processing device (11) The image according to any one of (1) to (10), wherein the prediction residual indicates a difference between a coding target image and a prediction image generated based on the decoding image, and the coding target image. Processing unit.
  • the filtering process of applying the offset to the pixels of the decoded image is performed.
  • the application of the offset to the edge portion is prohibited according to the occurrence situation of the transform unit in the transform skip mode in which the orthogonal transformation is not performed on the prediction residual. Therefore, the offset for correcting the DC component is applied to the transform unit in which the orthogonal transform is skipped, and the boundary between the transform unit in which the orthogonal transform is performed and the transform unit in which the orthogonal transform is skipped becomes less noticeable It is possible to suppress the image quality deterioration of the image. Therefore, it is suitable for the electronic device which performs encoding and decoding of a moving image.
  • Prediction selection unit 44 Conversion skip control unit 50 ⁇ Image decoding device 62 ⁇ Entropy decoding unit 74 ⁇ Motion compensation unit 351 ⁇ Filter control unit 3511 ⁇ Switching judgment unit 512 ... analyzing portion 3513 ... statistic acquiring unit 3514 ... mode determination unit 3515 ... offset determination unit 352 ... filter processing unit

Landscapes

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

Abstract

フィルタ処理部352は、復号画像の画素に対してオフセットを適用するフィルタ処理を行う。フィルタ制御部351は、予測残差について直交変換を行わない変換スキップモードの変換ユニットの発生状況に応じて、エッジ部分に対するオフセットの適用を禁止する。また、フィルタ制御部351は、復号画像を用いて階調調整のオフセットをフィルタ処理部352で適用するか否かの判定と、適用する場合のオフセットを設定する。階調調整のオフセットによって直交変換が行われた変換ユニットと直交変換がスキップされた変換ユニットとの境界を目立たなくすることが可能となり、復号画像の画質低下を抑制できる。

Description

画像処理装置と画像処理方法
 この技術は、画像処理装置と画像処理方法に関し、復号画像の画質低下を抑制できるようにする。
 従来、動画像を効率的に伝送または記録するために、動画像データの符号化ストリームを生成する符号化装置、および符号化ストリームの復号を行い動画像データを生成する復号装置が広く用いられている。また、動画像符号化方式として、例えば非特許文献1,2で示すように、HEVC(High Efficiency Video Coding、すなわちITU-T H.265またはISO/IEC 23008-2)が規格化されている。
 HEVCでは、CTU(Coding Tree Unit)と呼ばれるブロックの単位でピクチャ分割が行われる。CTUは16の倍数で最大64×64画素のいずれかの固定ブロックサイズとされている。各CTUは、四分木ベースで可変サイズの符号化ユニット(Coding Unit:CU)に分割される。また、CTUを分割しない場合は、CTUのサイズCUの最大サイズとなる。最大サイズのCUは、最大符号化ユニットLCU(Largest Coding Unit)、最小サイズのCUはSCU(Smallest Coding Unit)と呼ばれている。各CUは予測ユニット(PU:Prediction Unit)と呼ばれるブロック、及び変換ユニット(TU:Transform Unit)と呼ばれるブロックに分割される。PUとTUは、CU内で独立に定義される。HEVCでは、急峻なエッジの保持のためTUに対して予測誤差の直交変換をスキップして量子化する変換スキップモードが設けられている。
 また、特許文献1では、予測誤差の特性を示す特徴量に基づいて直交変換のスキップが選択されている。
特開2014-131270号公報
ITU-T Recommendation H.265:"High Efficiency Video Coding," 2013. ISO/IEC 23008-2:"High Efficiency Video Coding," 2013.
 ところで、残差データ(予測残差)に直流成分(DC成分)が含まれる場合、直交変換をスキップして残差データを量子化すると、逆量子化後の残差データでは直流成分を再現することができない場合がある。また、直交変換をスキップしたことで残差データにDCずれを生じると、直交変換が行われたTUと直交変換がスキップされたTUのブロック境界で不連続を生じて、復号画像は画質の低下した画像となってしまう。
 そこで、本技術では、復号画像の画質低下を抑制できる画像処理装置と画像処理方法を提供する。
 この技術の第1の側面は、
 復号画像の画素に対してオフセットを適用するフィルタ処理を行うフィルタ処理部と、
 予測残差について直交変換を行わない変換スキップモードの変換ユニットの発生状況に応じて、エッジ部分に対する前記オフセットの適用を禁止するフィルタ制御部と
を備える画像処理装置にある。
 この技術において、フィルタ制御部は、予測残差について直交変換を行わない変換スキップモードの変換ユニットの発生状況に応じて、エッジ部分に対するオフセットの適用を禁止する。例えば、フィルタ制御部は、最大符号化ユニット内に変換スキップモードの変換ユニットを含む場合にエッジ部分に対するオフセットの適用を禁止する。また、フィルタ制御部は、最大符号化ユニット内の変換ユニット数に対する変換スキップモードの変換ユニット数の割合が閾値以上である場合にエッジ部分に対するオフセットの適用を禁止してもよい。また、フィルタ制御部は、最大符号化ユニットの画素数に対する変換スキップモードの変換ユニットの画素数の割合が閾値以上である場合にエッジ部分に対するオフセットの適用を禁止してもよい。また、フィルタ制御部は、変換ユニットのサイズに応じて重みを設定して、最大符号化ユニット内における変換スキップモードの変換ユニットの数と、変換スキップモードの変換ユニットに対応する重みとを用いて算出した評価値が閾値以上である場合に、エッジ部分に対するオフセットの適用を禁止してもよい。さらに、フィルタ制御部は、復号画像が高ダイナミックレンジ画像である場合、エッジ部分に対するオフセットの適用を禁止してもよい。また、フィルタ制御部は、復号画像を用いて階調調整のオフセットをフィルタ処理部で適用するか否かの判定と、適用する場合のオフセットを設定する。
 また、イントラ予測及びインター予測のいずれかの予測画像を選択する予測選択部をさらに備え、予測選択部は、インター予測における最適モードで変換スキップモードが選択される場合、例えば4×4画素の変換ユニットで変換スキップモードが選択される場合、インター予測の予測画像を選択して符号化対象画像との差を示す予測残差を算出させる。インター予測における最適モードで変換スキップモードが選択されていない場合、インター予測のコストとイントラ予測のコストに基づいて、イントラ予測及びインター予測のいずれかの予測画像を選択する。
 この技術の第2の側面は、
 復号された復号画像の画素に対してオフセットを適用するフィルタ処理を行うことと、
 予測残差について直交変換を行わない変換スキップモードの変換ユニットの発生状況に応じて、エッジ部分に対する前記オフセットの適用を禁止することと
を含む画像処理豊方法にある。
 この技術によれば、復号された復号画像の画素に対してオフセットを適用するフィルタ処理が行われる。また、予測残差について直交変換を行わない変換スキップモードの変換ユニットの発生状況に応じて、エッジ部分に対するオフセットの適用が禁止される。したがって、直交変換がスキップされた変換ユニットに対してはDC成分を補正するオフセットが適用されて、直交変換が行われた変換ユニットと直交変換がスキップされた変換ユニットとの境界が目立たなくなり復号画像の画質低下を抑制できる。なお、本明細書に記載された効果はあくまで例示であって限定されるものではなく、また付加的な効果があってもよい。
画像符号化装置の構成を例示した図である。 画像符号化装置の動作を例示したフローチャートである。 エッジオフセット処理の概要について説明するための図である。 バンドオフセット処理の概要について説明するための図である。 適応オフセットフィルタの構成を例示した図である。 適応オフセットフィルタ設定動作を例示したフローチャートである。 処理対象のLCUに含まれる変換スキップモードのTUを例示した図である。 オフセット算出動作を例示したフローチャートである。 オフセット算出動作の動作例を示したす図である。 画像符号化処理の動作例を示した図である。 変換スキップモードのTUの復号画像に対してSAO処理を行った場合の動作を例示した図である。 原画が低域成分の画像である場合の処理を例示した図である。 原画が中域成分の画像である場合の処理を例示した図である。 変換スキップ処理を用いるか否かの判定動作を例示したフローチャートである。 変換スキップモードを利用するか否かの判定動作の第1の具体例を示すフローチャートである。 変換スキップモードを利用するか否かの判定動作の第2の具体例を示すフローチャートである。 予測選択動作と変換スキップ判別動作を組み合わせて行う場合を例示したフローチャートである。 変換スキップモードである4×4画素のTUの存在に応じて予測選択動作を行う場合を例示したフローチャートである。 画像復号装置の構成を例示した図である。 画像復号装置の動作を例示したフローチャートである。 テレビジョン装置の概略的な構成の一例を示す図である。 携帯電話機の概略的な構成の一例を示す図である。 記録再生装置の概略的な構成の一例を示す図である。 撮像装置の概略的な構成の一例を示す図である。
 以下、本技術を実施するための形態について説明する。なお、説明は以下の順序で行う。
 1.画像処理装置で符号化処理を行う場合の構成と動作
  1-1.画像符号化装置の構成
  1-2.画像符号化装置の動作
  1-3.適応オフセットフィルタの概要
  1-4.適応オフセットフィルタの構成
  1-5.適応オフセットフィルタ設定動作
  1-6.適応オフセットフィルタの他の動作
  1-7.画像符号化装置の他の動作
 2.画像処理装置で復号処理を行う場合の構成と動作
  2-1.画像復号装置の構成
  2-2.画像復号装置の動作
 3.応用例
 <1.画像処理装置で符号化処理を行う場合の構成と動作>
 本技術は、画像の符号化処理を行う画像処理装置に適用可能であり、本技術を適用した画像符号化装置の構成と動作について説明する。
 <1-1.画像符号化装置の構成>
 図1は、画像符号化装置の構成を例示している。画像符号化装置10は、予測処理を用いて画像データの符号化を行い、例えばHEVCに対応した符号化ストリームを生成する。
 画像符号化装置10は、画面並べ替えバッファ21、演算部22、直交変換部23、量子化部24、エントロピー符号化部25、蓄積バッファ26、レート制御部27を有する。また、画像符号化装置10は、逆量子化部31、逆直交変換部32、演算部33、デブロッキングフィルタ34、適応オフセットフィルタ35、適応ループフィルタ36、フレームメモリ37、選択部38を有している。さらに、画像符号化装置10は、イントラ予測部41、動き予測・補償部42、予測選択部43、変換スキップ制御部44を有する。
 画面並べ替えバッファ21は、記憶した表示順序のフレーム画像を、GOP(Group of Picture)構造に応じて、符号化のための順序(符号化順)に並べ替える。画面並べ替えバッファ21は、符号化順とされたフレーム画像の画像データ(原画像データ)を、演算部22へ出力する。また、画面並べ替えバッファ21は、原画像データを適応オフセットフィルタ35、イントラ予測部41および動き予測・補償部42へ出力する。
 演算部22は、画面並べ替えバッファ21から供給された原画像データから、予測選択部43を介してイントラ予測部41若しくは動き予測・補償部42から供給される予測画像データを画素毎に減算して、予測残差を示す残差データを直交変換部23へ出力する。
 例えば、イントラ符号化が行われる画像の場合、演算部22は原画像データからイントラ予測部41で生成された予測画像データを減算する。また、例えば、インター符号化が行われる画像の場合、演算部22は原画像データから動き予測・補償部42で生成された予測画像データを減算する。
 直交変換部23は、演算部22から供給される残差データに対して、変換スキップ制御部44からの制御信号に基づき、離散コサイン変換またはカルーネン・レーベ変換等の直交変換を行う直交変換処理、または直交変換をスキップする変換スキップ処理を行う。直交変換部23は、直交変換処理を行うことにより得られた変換係数を量子化部24へ出力する。または、直交変換部23は、変換スキップ処理を行うことにより得られた変換スキップ係数を量子化部24へ出力する。
 量子化部24は、直交変換部23が出力する変換係数または変換スキップ係数を量子化する。量子化部24は、変換係数または変換スキップ係数の量子化データをエントロピー符号化部25へ出力する。また、量子化部24は、生成した量子化データを逆量子化部31にも出力する。
 エントロピー符号化部25は、その量子化データに対して、算術符号化等のエントロピー符号化処理、例えばCABAC(Context-Adaptive Binary Arithmetic Coding)のエントロピー符号化処理を行う。また、エントロピー符号化部25は、予測選択部43で選択された予測モードのパラメータ、例えばイントラ予測モードを示す情報などのパラメータ、またはインター予測モードを示す情報や動きベクトル情報などのパラメータを取得する。さらに、エントロピー符号化部25は、後述する適応オフセットフィルタ35からフィルタ処理に関するパラメータを取得する。エントロピー符号化部25は、量子化データを符号化するとともに、取得した各パラメータ(シンタックス要素)を符号化してヘッダ情報の一部として(多重化して)蓄積バッファ26に蓄積させる。
 蓄積バッファ26は、エントロピー符号化部25から供給されたデータを一時的に保持し、所定のタイミングにおいて、符号化された符号化画像として、例えば後段の図示せぬ記録装置や伝送路などに符号化ストリームとして出力する。
 レート制御部27は、蓄積バッファ26に蓄積された圧縮画像に基づいて、オーバーフローあるいはアンダーフローが発生しないように、量子化部24の量子化動作のレートを制御する。
 逆量子化部31は、量子化部24から供給された変換係数または変換スキップ係数の量子化データを、量子化部24で行われた量子化に対応する方法で逆量子化する。逆量子化部31は、得られた逆量子化データを、逆直交変換部32へ出力する。
 逆直交変換部32は、供給された逆量子化データを、直交変換部23で行われた直交変換処理に対応する方法で逆直交変換する。逆直交変換部32は、逆直交変換結果すなわち復元された残差データを、演算部33へ出力する。また、逆直交変換部32は、変換スキップ制御部44から変換スキップ情報に基づき、逆量子化データが変換スキップ係数を示す場合、逆直交変換のスキップ等を行い、逆量子化データすなわち復元された残差データを演算部33へ出力する。
 演算部33は、逆直交変換部32から供給された残差データに、予測選択部43を介してイントラ予測部41若しくは動き予測・補償部42から供給される予測画像データを加算し、局部的に復号された画像(復号画像)を得る。例えば、残差データが、イントラ符号化が行われる画像に対応する場合、演算部33は、その残差データにイントラ予測部41から供給される予測画像データを加算する。また、例えば、残差データが、インター符号化が行われる画像に対応する場合、演算部33は、その残差データに動き予測・補償部42から供給される予測画像データを加算する。加算結果である復号画像データは、デブロッキングフィルタ34へ出力される。また、復号画像データは参照画像データとしてフレームメモリ37へ出力される。
 デブロッキングフィルタ34は、適宜デブロッキングフィルタ処理を行うことにより復号画像データのブロック歪を除去する。デブロッキングフィルタ34は、そのフィルタ処理結果を適応オフセットフィルタ35へ出力する。
 適応オフセットフィルタ35は、デブロッキングフィルタ34によるフィルタ後の復号画像データに対して、適応オフセットフィルタ処理(以下「SAO(Sample Adaptive Offset)処理」という)を行う。なお、SAO処理についての詳細は後述する。適応オフセットフィルタ35は、SAO処理後の画像を、適応ループフィルタ36へ出力する。
 また、適応オフセットフィルタ35は、後述する変換スキップ制御部44からの変換スキップ情報に基づき、変換スキップ処理を行うモードである変換スキップモードの利用状況に応じてSAO処理を設定して、変換スキップモードを利用したことによって生じる影響を抑制する。なお、詳細については後述する。さらに、適応オフセットフィルタ35は、デブロッキングフィルタ34から供給された復号画像データに対して行うSAO処理に関する情報をパラメータとしてエントロピー符号化部25へ出力する。
 適応ループフィルタ36は、例えば2次元のウィナーフィルタ(Wiener Filter)等を用いて構成されており、LCU(CTU相当)毎に適応ループフィルタ(ALF:Adaptive Loop Filter)処理を行う。適応ループフィルタ36は、フィルタ処理後の復号画像データを参照画像データとしてフレームメモリ37へ出力する。
 フレームメモリ37に蓄積されている参照画像データは、所定のタイミングで選択部38を介してイントラ予測部41または動き予測・補償部42に出力される。例えば、イントラ符号化が行われる画像の場合、フレームメモリ37からデブロッキングフィルタ34等によるフィルタ処理が行われていない参照画像データが読み出されて、選択部38を介してイントラ予測部41へ出力される。また、例えば、インター符号化が行われる場合、フレームメモリ37からデブロッキングフィルタ34等によるフィルタ処理が行われている参照画像データが読み出されて、選択部38を介して動き予測・補償部42へ出力される。
 イントラ予測部41は、画面内の画素値を用いて予測画像を生成するイントラ予測(画面内予測)を行う。イントラ予測部41は、演算部33で生成されてフレームメモリ37に記憶されている復号画像データを参照画像データとして用いて全てのイントラ予測モード毎に予測画像データを生成する。また、イントラ予測部41は、画面並べ替えバッファ21から供給された原画像データと予測画像データを用いて各イントラ予測モードのコスト(例えばレート歪みコスト)の算出等を行い、算出したコストが最小となる最適なモードを選択する。イントラ予測部41は、最適なイントラ予測モードを選択すると、選択したイントラ予測モードの予測画像データと、選択したイントラ予測モードを示すイントラ予測モード情報等のパラメータ、コスト等を予測選択部43へ出力する。
 動き予測・補償部42は、インター符号化が行われる画像について、画面並べ替えバッファ21から供給された原画像データと、フィルタ処理が行われてフレームメモリ37に記憶されている復号画像データを参照画像データとして用いて動き予測を行う。また、動き予測・補償部42は、動き予測により検出された動きベクトルに応じて動き補償処理を行い、予測画像データを生成する。
 動き予測・補償部42は、候補となる全てのインター予測モードのインター予測処理を行い、全てのイントラ予測モード毎に予測画像データを生成してコスト(例えばレート歪みコスト)の算出等を行い、算出したコストが最小となる最適なモードを選択する。動き予測・補償部42は、最適なインター予測モードを選択すると、選択したインター予測モードの予測画像データと、採用したインター予測モードを示すインター予測モード情報や算出した動きベクトルを示す動きベクトル情報などのパラメータ、コスト等を予測選択部43へ出力する。
 予測選択部43は、イントラ予測モードとインター予測モードのコストに基づき最適な予測処理を選択する。予測選択部43は、イントラ予測処理を選択した場合、イントラ予測部41から供給された予測画像データを演算部22や演算部33へ出力して、イントラ予測モード情報等のパラメータをエントロピー符号化部25へ出力する。予測選択部43は、インター予測処理を選択した場合、動き予測・補償部42から供給された予測画像データを演算部22や演算部33へ出力して、インター予測モード情報や動きベクトル情報等のパラメータをエントロピー符号化部25へ出力する。
 変換スキップ制御部44は、交換スキップモードを利用しないように画像符号化装置10の動作が設定されている場合、直交変換部23で残差データの直交変換処理をTU毎に行わせて、得られた変換係数を量子化部24へ出力させる。また、変換スキップ制御部44は、逆直交変換部32で逆量子化後の変換係数の逆直交変換処理を行わせて、得られた残差データを演算部33へ出力させる。
 変換スキップ制御部44は、変換スキップモードの利用が可能に画像符号化装置10の動作が設定されている場合、TU毎に変換スキップモードとするか否かを判定する。変換スキップ制御部44は、TU毎に例えば変換スキップ処理及び直交変換処理を行ったときの評価関数値を算出して、算出した評価関数値に基づいて変換スキップモードとするか否かを判別する。評価関数値としては、例えば変換スキップ処理後のデータ量と直交変換処理後のデータ量を用いる。この場合、変換スキップ処理後データ量が直交変換処理後のデータ量以下となる場合、変換スキップモードに設定する。また、評価関数値として、変換スキップ処理を行った場合と直交変換処理を行った場合のコスト(例えばレート歪みコスト)を用いてもよい。この場合、変換スキップ処理のコストが直交変換処理のコスト以下となる場合、変換スキップモードに設定する。なお、評価関数値として他の関数値を用いてもよい。
 変換スキップ制御部44は、変換スキップモードとされたTUについては、変換スキップ処理を行う。変換スキップ処理では、直交変換処理をスキップさせて残差データを量子化部24へ出力する。また、変換スキップ制御部44は、変換スキップモードでない他のTUについては、直交変換処理後の変換係数を量子化部24へ出力するように直交変換部23を制御する。さらに、変換スキップ制御部44は、変換スキップモードとされたTUに対して、逆量子化部31で得られた逆量子化データ(残差データに相当)について逆直交変換部2で逆直交変換を行うことなく演算部33へ出力させる。また、変換スキップ制御部44は、他のTUに対して、逆量子化部31で得られた逆量子化データ(変換係数に相当)について逆直交変換部2で逆直交変換を行い演算部33へ出力させる。なお、変換スキップ処理では、変換スキップ処理後の変換スキップ係数(残差データに相当)のノルムが変換係数のノルムが整合するようにビットシフト処理を行う。また、この場合、逆量子化部31の逆量子化によって得られた残差データは、変換係数とノルムを整合させるビットシフト処理とは逆の処理を行って演算部33へ出力する。さらに、変換スキップ制御部44は、LCU(CTUに相当)における変換スキップモードとされたTUに関する情報である変換スキップ情報を生成して、適応オフセットフィルタ35へ出力する。
 <1-2.画像符号化装置の動作>
 次に、画像符号化装置の動作について説明する。図2は、画像符号化装置の動作を例示したフローチャートである。
 ステップST1において画像符号化装置は画面並べ替え処理を行う。画像符号化装置10の画面並べ替えバッファ21は、表示順のフレーム画像を符号化順に並べ替えて、イントラ予測部41と動き予測・補償部42および適応オフセットフィルタ35へ出力する。
 ステップST2において画像符号化装置はイントラ予測処理を行う。画像符号化装置10のイントラ予測部41は、フレームメモリ37から読み出した参照画像データを用いて、処理対象のブロックの画素を候補となる全てのイントラ予測モードでイントラ予測して予測画像データを生成する。また、イントラ予測部41は、生成した予測画像データと原画像データを用いてコストを算出する。なお、参照画像データとしては、デブロッキングフィルタ34等によりフィルタ処理されていない復号画像データが用いられる。イントラ予測部41は、算出されたコストに基づいて、最適イントラ予測モードを選択して、最適イントラ予測モードのイントラ予測により生成された予測画像データとパラメータやコストを予測選択部43に出力する。
 ステップST3において画像符号化装置は動き予測・補償処理を行う。画像符号化装置10の動き予測・補償部42は、処理対象のブロックの画素を、候補となる全てのインー予測モードでインター予測を行い予測画像を生成する。また、動き予測・補償部42は、生成した予測画像データと原画像データを用いてコストを算出する。なお、参照画像データとしては、デブロッキングフィルタ34等によりフィルタ処理が行われた復号画像データが用いられる。動き予測・補償部42は、算出したコストに基づいて、最適インター予測モードを決定して、最適インター予測モードにより生成された予測画像とパラメータとコストを予測選択部43へ出力する。
 ステップST4において画像符号化装置は予測画像選択処理を行う。画像符号化装置10の予測選択部43は、ステップST2およびステップST3で算出されたコストに基づいて、最適イントラ予測モードと最適インター予測モードのうちの一方を、最適予測モードに決定する。そして、予測選択部43は、決定した最適予測モードの予測画像データを選択して、演算部22,33へ出力する。なお、予測画像データは、後述するステップST5,ST10の演算に利用される。また、予測選択部43は、最適予測モードに関するパラメータを、エントロピー符号化部25へ出力する。
 ステップST5において画像符号化装置は差分演算処理を行う。画像符号化装置10の演算部22は、ステップST1で並べ替えられた原画像データと、ステップST4で選択された予測画像データとの差分を算出して、差分結果である残差データを直交変換部23へ出力する。
 ステップST6において画像符号化装置は直交変換処理または変換スキップ処理を行う。画像符号化装置10の直交変換部23は、演算部22から供給された残差データを直交変換する。具体的には、離散コサイン変換またはカルーネン・レーベ変換等の直交変換を行い、得られた変換係数を量子化部24へ出力する。また、直交変換部23は、変換スキップモードの場合、変換スキップ処理を行い、残差データの直交変換を行うことなく量子化部24へ出力する。なお、変換スキップ処理では、上述のように、変換スキップ係数と変換係数のノルムと整合させるようにビットシフト処理を行う。
 ステップST7において画像符号化装置は量子化処理を行う。画像符号化装置10の量子化部24は、直交変換部23から供給された変換係数または残差データを量子化する。この量子化に際しては、後述するステップST17の処理で説明されるように、レートが制御される。
 以上のようにして生成された量子化情報は、次のようにして局部的に復号される。すなわち、ステップST8において画像符号化装置は逆量子化処理を行う。画像符号化装置10の逆量子化部31は、量子化部24から出力された量子化データを量子化部24に対応する特性で逆量子化する。
 ステップST9において画像符号化装置は逆直交変換処理または逆変換スキップ処理を行う。画像符号化装置10の逆直交変換部32は、逆量子化部31で生成された逆量子化データを直交変換部23に対応する特性で逆直交変換して残差データを生成して演算部33へ出力する。また、逆直交変換部32は、直交変換部23で変換スキップモードが用いられている場合、逆量子化データの逆直交変換をスキップしたのち逆ビットシフト処理を行い演算部33へ出力する。
 ステップST10において画像符号化装置は画像加算処理を行う。画像符号化装置10の演算部33は、予測選択部43から出力された予測画像データを局部的に復号された残差データに加算し、局部的に復号された(すなわち、ローカルデコードされた)画像を生成する。
 ステップST11において画像符号化装置はデブロッキングフィルタ処理を行う。画像符号化装置10のデブロッキングフィルタ34は、演算部33から出力された画像に対して、デブロッキングフィルタ処理を行い、ブロック歪みを除去して適応オフセットフィルタ35へ出力する。
 ステップST12において画像符号化装置はSAO処理を行う。画像符号化装置10の適応オフセットフィルタ35は、デブロッキングフィルタ34から出力された画像に対してSAO処理を行う。このSAO処理により、最大の符号化単位であるLCU毎にSAO処理のタイプと係数が求められて、それらを用いてフィルタ処理が行われる。また、適応オフセットフィルタ35は、変換スキップモードの画像に対して、フィルタ動作を制限する。なお、このSAO処理の詳細については後述する。また、適応オフセットフィルタ35は、SAO処理に関するパラメータをエントロピー符号化部25へ出力して、後述するようにステップST15で符号化する。
 ステップST13において画像符号化装置は適応ループフィルタ処理を行う。画像符号化装置10の適応ループフィルタ36は、適応オフセットフィルタ35によるフィルタ後の画像に対して、適応ループフィルタ処理を行う。例えば、適応オフセットフィルタ35によるフィルタ後の画像に対して、フィルタ係数を用いて、LCU毎に、画像に対してフィルタ処理が行われ、フィルタ処理結果が、フレームメモリ37に格納される。
 ステップST14において画像符号化装置は記憶処理を行う。画像符号化装置10のフレームメモリ37は、デブロッキングフィルタ34等でフィルタ処理が行われる前の画像と、デブロッキングフィルタ34等でフィルタ処理が行われた後の画像を記憶する。
 一方、上述したステップST7において量子化された変換係数または残差データは、エントロピー符号化部25にも出力される。ステップST15において画像符号化装置はエントロピー符号化処理を行う。画像符号化装置10のエントロピー符号化部25は、量子化部24から出力された量子化後の変換係数または量子化後の残差データと、供給された各パラメータを符号化する。
 ステップST16において画像符号化装置は蓄積処理を行う。画像符号化装置10の蓄積バッファ26は、符号化データを蓄積する。蓄積バッファ26に蓄積された符号化データは適宜読み出されて、伝送路等を介して復号側に伝送される。
 ステップST17において画像符号化装置はレート制御を行う。画像符号化装置10のレート制御部27は、蓄積バッファ26に蓄積された符号化データがオーバーフローあるいはアンダーフローを生じないように量子化部24の量子化動作のレートを制御する。
 <1-3.適応オフセットフィルタ処理の概要>
 次に、適応オフセットフィルタ処理の概要について説明する。適応オフセットフィルタ処理(SAO処理)は、エッジオフセット(EO:Edge Offset)とバンドオフセット(BO:Band Offset)と呼ばれる2種類があり、LCU(Largest Coding Unit)毎にパラメータが設定される。
 エッジオフセットは、処理対象となる画素と、当該画素に隣接する2つの隣接画素の相対関係に応じて、画素毎に画素値に対してオフセット値の加減算を行う処理である。
 例えば、図3は、エッジオフセット処理の概要について説明するための図である。図3の(a)に示すEO_0~EO_3は、エッジオフセット処理における画素配列の候補(クラス)を示している。図3において、画素cが処理対象となる画素を示しており、画素a,bが、対象画素cの隣接画素を示している。なお、クラスEO_0~EO_3のうち、どのクラスを用いるかについては、パラメータ「sao_eo_class_luma」及び「sao_eo_class_chroma」により、輝度と色差との双方についてLCU毎に選択可能とされている。
 また、選択されたクラスに対して対象画素と隣接画素との画素値の相対関係によって決まる4種類のカテゴリ毎に、オフセットの絶対値「sao_offset_abs」が与えられる。図3の(b)に示すカテゴリ1~カテゴリ4は、対象画素cと隣接画素a及び隣接画素bとの間の画素値の関係を分類したものである。例えば、カテゴリ1は、対象画素cの画素値が、隣接画素a及び隣接画素bのいずれの画素値よりも小さい場合を示している。また、カテゴリ2は、対象画素cの画素値が、隣接画素a及び隣接画素bのいずれか一方よりも小さく、他方と等しい場合を示している。カテゴリ1及び2の場合には、対象画素cに対してオフセットを加算することで、対象画素cと隣接画素a及び隣接画素bとの間で画素値の平滑化が行われる。
 カテゴリ3は、対象画素cの画素値が、隣接画素a及び隣接画素bのいずれか一方よりも大きく、他方と等しい場合を示している。また、カテゴリ4は、対象画素cの画素値が、隣接画素a及び隣接画素bのいずれの画素値よりも大きい場合を示している。カテゴリ3及び4の場合には、対象画素cに対してオフセットが減算することで、対象画素cと隣接画素a及び隣接画素bとの間で画素値の平滑化が行われる。
 なお、エッジオフセット処理では、上記に説明したカテゴリ1~カテゴリ4に加えて、エッジオフセット処理を行わないことを示すカテゴリ0が設けられている。
 エッジオフセット処理では、クラスEO_0~EO_3からいずれかのクラスを選択し、選択されたクラスに応じて対象画素cの画素値と隣接画素a及び隣接画素bの画素値との関係がカテゴリ0~カテゴリ4のいずれに該当するかを特定する。そして、該当するカテゴリに応じて、オフセットを加減算することで、画素系列の平滑化処理を行う。したがって、適応オフセットフィルタ35は、エッジオフセット処理を行うことで例えばリンギングを抑制できる。
 バンドオフセット処理では、画素値の階調(即ち、0からビット深度に応じて表現可能な最大値)を32個のバンドに分割し、その中から連続する4個のバンドに属する画素に対して、バンド毎に設定したオフセット値によって画素値を変更(加減算)する。したがって、適応オフセットフィルタ35は、バンドオフセット処理を行うことで例えばグラデーションなどでの誤差を低減できる。
 図4は、バンドオフセット処理の概要について説明するための図であり、ビット深度が10ビットの場合を示している。なお、H.265/HEVCの基本的なプロファイル(Main, Main10, Main Still)では、画素のビット深度として、8ビット(画素値が0~255)~10ビット(画素値が0~1023)を利用できる(Main,Main Stillは8ビットのみ)。即ち、図4に示すビット深度が10ビットの場合の例では、画素値0~1023を32のバンドに分割しており、分割された0~31のバンドのうち、バンド3~6の4つのバンドが選択された場合を示している。なお、バンドオフセット処理では、バンドオフセット処理を行わない動作も規定されている。
 <1-4.適応オフセットフィルタの構成>
 次に、適応オフセットフィルタの構成について説明する。図5は適応オフセットフィルタの構成を例示している。適応オフセットフィルタ35は、フィルタ制御部351とフィルタ処理部352を有している。また、フィルタ制御部351は、切り替え判定部3511と解析部3512を有している。
 切り替え判定部3511は、処理対象のスライス毎に、輝度と色度とのそれぞれについてSAO処理の適用の可否を判定し、判定結果に基づき解析部3512の動作を制御する。
 具体的には、切り替え判定部3511は、処理対象のスライスが、Iスライス及びPスライスのいずれかの場合には、当該スライスに対するSAO処理の適用を解析部3512に指示する。
 また、切り替え判定部3511は、処理対象のスライスがBスライスの場合には、当該Bスライスの直前のスライス(即ち、IスライスまたはPスライス)において、SAO処理が適用されたLCU(CTUに相当)の数(モード数)に応じて、当該Bスライスに対してSAO処理の適用の可否を判定する。
 具体的な一例として、切り替え判定部3511は、直前のスライスにおいてモード数が所定の閾値Ths以上(例えば、半数以上)の場合には、処理対象のBスライスに対するSAO処理の適用を解析部3512に指示する。一方で、直前のスライスにおいてモード数が閾値Ths未満の場合には、切り替え判定部3511は、処理対象のBスライスに対するSAO処理の適用を制限する(即ち、非適用とする)ように解析部3512に指示する。
 また、切り替え判定部3511は、スライス毎のSAO処理の適用の可否をパラメータとしてエントロピー符号化部25に出力する。なお、スライス毎のSAO処理の適用の可否を制御するためのパラメータの一例として、輝度に対応した「slice_sao_luma_flag」と、色度に対応した「slice_sao_chroma_flag」とが挙げられる。
 解析部3512は、統計量取得部3513と、モード判定部3514とを含む。解析部3512は、画面並べ替えバッファ21から出力された原画像データと、デブロッキングフィルタ34から出力される復号画像データとに基づき、SAO処理のモードとオフセット値とをLCU毎に決定する。
 統計量取得部3513は、原画像データと復号画像データとに基づきSAO処理のモードとオフセットとを特定するための統計量を算出する。
 具体的な一例として、統計量取得部3513は、復号画像データ中の画素単位で、図3に示したエッジオフセットのクラスEO_0~EO_3のそれぞれについて、対象画素と隣接画素との対応関係を解析し、カテゴリ0~4のそれぞれの出現頻度を算出する。また、このとき、統計量取得部3513は、算出したカテゴリ毎に、復号画像データと原画像データとの間の画素値の差を累積する。そして、統計量取得部3513は、クラスEO_0~EO_3それぞれについて算出された各カテゴリ0~4の出現頻度と、カテゴリ毎に累積された画素値とを統計量とする。
 また、統計量取得部3513は、図4に示したバンドオフセットのバンド0~31それぞれについて、対応する画素の頻度を算出して、その画素における復号画像データと原画像データとの間の画素値の差をバンド毎に累積する。そして、統計量取得部3513は、バンド毎に算出した頻度と、バンド毎に累積した画素値の差とを統計量とする。統計量取得部3513は、算出した統計量をモード判定部3514に出力する。
 モード判定部3514は、切り替え判定部3511の判定結果と変換スキップ制御部44から供給された変換スキップ情報、および統計量取得部3513から供給された統計量に基づき、LCU毎にSAO処理のモードと、当該モードのオフセット値を特定する。
 モード判定部3514は、切り替え判定部3511の判定結果、例えば輝度に対応した「slice_sao_luma_flag」と色度に対応した「slice_sao_chroma_flag」によってSAO処理を適用しないことが示されている場合、SAO処理を行わないようにモードを特定する。また、モード判定部3514は、切り替え判定部3511の判定結果によってSAO処理を適用することが示されている場合、変換スキップ制御部44から供給された変換スキップ情報と統計量取得部3513から供給される統計量に基づき、SAO処理のモードと、当該モードにおけるオフセット値を特定する。
 モード判定部3514のオフセット判定部3515は、変換スキップ情報と統計量に基づき、エッジオフセットとバンドオフセットの両方について、またはエッジオフセットを禁止してバンドオフセットのみについて、オフセット値と当該オフセット値に対応するコスト(例えばレート歪みコスト)を算出する。オフセット判定部3515は、エッジオフセットについて、例えばエッジオフセットのクラスと各カテゴリ1~4との組み合わせのそれぞれについて、オフセット値と当該オフセット値に対応するコストを算出する。また、オフセット判定部3515は、バンドオフセットについて、オフセット値と当該オフセット値に対応するコストとを算出する。さらに、オフセット判定部3515は、SAO処理を適用しない場合のコストを算出する。
 モード判定部3514は、オフセット判定部3515で算出された各コストを比較し、当該比較結果に基づき、符号化効率を最も向上させることが可能なSAO処理のモードと、当該モードに対応するオフセット値とをLCU毎に特定する。さらに、モード判定部3514は、LCU毎に特定したモードと、当該モードに対応するオフセット値をフィルタ処理部352へ出力する。
 また、モード判定部3514は、LCU毎に特定したSAO処理のモードとオフセット値、またはSAO処理を適用しない旨の情報を、パラメータとしてエントロピー符号化部25に出力する。なお、モード判定部3514は、例えばエッジオフセットとバンドオフセットとのいずれかを示すパラメータとして、輝度に対応した「sao_type_idx_luma」や、色度に対応した「sao_typ_idx_chroma」を出力する。また、エッジオフセットが適用された場合に、エッジオフセットのクラスを示すパラメータとして、輝度に対応した「sao_eo_class_luma」や、色度に対応した「sao_eo_class_chroma」を出力する。また、バンドオフセットが適用された場合に、バンドの位置を示すパラメータとして、「sao_band_position」を出力する。また、オフセット値を通知するためのパラメータとして、オフセット値の絶対値を示す「sao_offset_abs」と、オフセット値の正負を示す「sao_offset_sign」を出力する。
 フィルタ処理部352は、復号画像データの各LCUに対して、解析部3512から供給されるSAO処理のモードとオフセット値とに基づいてフィルタ処理を施す。なお、解析部3512から、SAO処理を適用しない旨が指示された場合、フィルタ処理部352は、対象となるLCUに対してSAO処理を施さない。フィルタ処理部352は、SAO処理後またはSAO処理が行われていない復号画像データを、適応ループフィルタ36へ出力する。
 <1-5.適応オフセットフィルタ設定動作>
 次に適応オフセットフィルタ設定動作について説明する。適応オフセットフィルタ35は、処理対象のスライスのSAO処理をオン状態とするか判別する。適応オフセットフィルタ35は、処理対象のスライスがIスライス及びPスライスのいずれかの場合、SAO処理をオン状態とする。また、適応オフセットフィルタ35は、処理対象のスライスがBスライスの場合、当該Bスライスの直前のスライスにおいてモード数が所定の閾値Ths以上であるときSAO処理をオン状態、閾値Ths未満であるときSAO処理をオフ状態とする。また、適応オフセットフィルタ35は、ユーザ等の指示に基づきSAO処理をオン状態またはオフ状態に設定してもよい。
 適応オフセットフィルタ35は、SAO処理をオン状態とする場合、図6に例示した適応オフセットフィルタ設定動作を行う。
 ステップST21で適応オフセットフィルタは変換スキップモード(TSモード)のTUが混在するか判別する。適応オフセットフィルタ35は、変換スキップ制御部44からの変換スキップ情報に基づき、LCU内に変換スキップモードのTUが混在するか判別する。適応オフセットフィルタ35は、LCU内に直交変換を行うTUと変換スキップモードのTUが混在する場合にステップST22に進み、混在していない場合にステップST26に進む。
 ステップST22で適応オフセットフィルタはエッジオフセットを禁止(EO禁止)とするか判別する。適応オフセットフィルタ35は、変換スキップ制御部44からの変換スキップ情報に基づきEO禁止とするか判別する。図7は、処理対象のLCUに含まれる変換スキップモードのTUを例示している。例えば、処理対象のLCUに含まれるTUは22個で変換スキップモードのTUが8個であり、変換スキップモードのTUは、16×16画素のTUが1個、8×8画素のTUが3個、4×4画素のTUが4個であることが、変換スキップ情報で示されている。
 適応オフセットフィルタ35は、第1の判別動作を行い、処理対象のLCUに変換スキップモードのTUが含まれている場合はEO禁止と判別して、TUが含まれていない場合は、EO禁止でないと判別する。
 また、適応オフセットフィルタ35は、第1の判別動作と異なる第2の判別動作を行ってもよい。例えば、適応オフセットフィルタ35は、処理対象のLCUに含まれる変換スキップモードのTUの個数比に基づいて、EO禁止とするか判別する。図7の場合、処理対象のLCUに含まれるTUは22個で変換スキップモードのTUが8個であることから個数比は0.367(=8/22)となる。適応オフセットフィルタ35は個数比が予め設定された閾値以上である場合はEO禁止と判別して、個数比が閾値未満である場合はEO禁止でないと判別する。
 また、適応オフセットフィルタ35は、第1,第2の判別動作と異なる第3の判別動作を行ってもよい。例えば、適応オフセットフィルタ35は、処理対象のLCUに含まれる変換スキップモードのTUの画素数(面積)に基づいて、EO禁止とするか判別する。図7の場合、変換スキップモードのTUが512画素であり、適応オフセットフィルタ35は変換スキップモードのTUの画素数が予め設定された閾値以上である場合はEO禁止と判別して、画素数が閾値未満である場合はEO禁止でないと判別する。
 また、適応オフセットフィルタ35は、第1~第3の判別動作と異なる第4の判別動作を行ってもよい。適応オフセットフィルタ35は、第4の判別動作として、変換スキップモードのTUのサイズ毎に重みを設定して、サイズの大きい変換スキップモードのTUがあった場合にEO禁止と判別されやすくする。
 例えば、サイズが4×4画素のTUの重みを「WT_4x4」、サイズが8×8画素のTUの重みを「WT_8x8」、サイズが16×16画素のTUの重みを「WT_16x16」とすると、重み付け後の個数比RBWは、図7の場合、式(1)となる。
  RBW=4×WT_4x4+3×WT_8x8+1×WT_16x16  ・・・(1)
 ここで、DCずれはサイズの大きいTUで目立ちやすいことから、重みを「WT_4x4<WT_8x8<WT_16x16」に設定すると、変換スキップモードのTUにサイズの大きいTUが含まれる場合に、EO禁止と判別されやすくなる。
 適応オフセットフィルタ35は、第1の判別動作乃至第4の判別動作のいずれかを行い、EO禁止と判別した場合はステップST23に進み、EO禁止でないと判別した場合はステップST26に進む。なお、適応オフセットフィルタ35は、予め第1の判別動作乃至第4の判別動作のいずれかを行うように設定されていてもよく、ユーザが第1の判別動作乃至第4の判別動作を指定できるように構成されてもよい。また、適応オフセットフィルタ35は、第1の判別動作乃至第4の判別動作における複数の判別動作を切り替え可能に構成してもよい。
 ステップST23で適応オフセットフィルタはSAO処理をオフ状態としたときのコストを算出する。適応オフセットフィルタ35はSAO処理を適用しない場合のコストを算出してステップST24に進む。
 ステップST24で適応オフセットフィルタはバンドオフセットのコストを算出する。適応オフセットフィルタ35は、バンドオフセットついてオフセットを算出して、算出したオフセットを用いた場合のコストを算出する。
 図8は、オフセット算出動作を例示したフローチャートである。なお、図8は、符号化対象の原画像データが10ビット幅である場合を示している。
 ステップST31で適応オフセットフィルタは、符号化誤差を算出する。適応オフセットフィルタ35は原画像データと復号画像データを用いて、各画素の符号化誤差を算出してステップST32に進む。
 ステップST32で適応オフセットフィルタはクリップ処理を行う。適応オフセットフィルタ35は、ステップST31で算出した符号化誤差を±31の範囲内にクリップしてステップST33に進む。
 ステップST33で適応オフセットフィルタは所属バンドを検出する。適応オフセットフィルタ35は、例えば画素のビット深度が10ビットの場合、5ビットの固定量で右シフトを行い、上位5ビットの値で示されるバンドを所属バンドとする処理を、復号画像データの画素毎に行う。また、画素のビット深度が8ビットの場合、10ビットの場合と同様に右シフトを行い、上位3ビットの値で示されるバンドを所属バンドとする。適応オフセットフィルタ35は、各画素の所属バンドを検出してステップST34に進む。
 ステップST34で適応オフセットフィルタは各バンドにおける誤差の総和を算出する。適応オフセットフィルタ35は、ステップST32でクリップ処理された符号化誤差とステップST33の所属バンドの検出結果に基づき、バンド毎に誤差の総和を算出してステップST35に進む。
 ステップST35で適応オフセットフィルタはバンドポジションを判別する。適応オフセットフィルタ35は、誤差の総和が最大となる連続した4バンドを選択して、選択した4バンドの始点をバンドポジションとしてステップST36に進む。
 ステップST36で適応オフセットフィルタはオフセット値を決定する。適応オフセットフィルタ35は、選択した4バンドの誤差の総和を所属する画素数で除算して、除算結果を±31の範囲内にクリップしてオフセット値とする。
 図9は、オフセット算出動作の動作例を示している。なお、図9では、説明を簡易とするためLCUを16×16画素のサイズとしている。図9の(a)は原画像データ、図9の(b)は復号画像データを示している。図9の(c)は、符号化誤差を示している。また、図9の(d)は、復号画像データに基づいて画素毎に検出した所属バンドを示している。
 ここで、バンド毎に誤差の総和と所属する画素数を算出すると図9の(e)に示すようになる。したがって、適応オフセットフィルタ35は、バンドの位置を示すパラメータを「sao_band_position」を「4」とする。また、適応オフセットフィルタ35はオフセット値の絶対値を示す「sao_offset_abs」を「0,26(=1638/63),0,0」とする。さらに、適応オフセットフィルタ35は、オフセット値の正負を示す「sao_offset_sign」を「1(1は正の値を示す),1,1,1」とする。
 適応オフセットフィルタ35は、図8の処理を行うことにより算出したオフセット値を用いたときのコストを算出して図6のステップST25に進む。
 ステップST25で適応オフセットフィルタは最適モード判定処理を行う。適応オフセットフィルタ35は、ステップST23とステップST24の処理で算出したコストを比較し、当該比較結果に基づき、符号化効率を最も向上させることが可能なSAO処理のモードをLCU毎に特定する。
 ステップST21またはステップST22からステップST26に進むと、適応オフセットフィルタ35はSAO処理をオフ状態としたときのコストを算出する。適応オフセットフィルタはSAO処理を適用しない場合のコストを算出してステップST27に進む。
 ステップST27で適応オフセットフィルタはエッジオフセットのコスト算出を行う。適応オフセットフィルタ35は、エッジオフセットのクラスと各カテゴリ1~4との組み合わせのそれぞれについて、オフセット値と当該オフセット値に対応するコストを算出してステップST28に進む。
 ステップST28で適応オフセットフィルタはバンドオフセットのコストを算出する。適応オフセットフィルタ35は、バンドオフセットついてオフセットを算出して、算出したオフセットを用いた場合のコストを算出してステップST29に進む。
 ステップST29で適応オフセットフィルタは最適モード判定処理を行う。適応オフセットフィルタ35は、ステップST26乃至ステップST28の処理で算出したコストを比較し、当該比較結果に基づき、符号化効率を最も向上させることが可能なSAO処理のモードをLCU毎に特定する。
 このような処理を行うことで、適応オフセットフィルタ35は、LCU内における変換スキップモードのTUに応じてSAO処理の最適なモードやオフセット値を特定する。さらに、適応オフセットフィルタ35は、LCU毎に判定された最適モードで、当該最適モードに対応するオフセット値を用いてSAO処理を行う。したがって、変換スキップモードのTUが設けられても、この変換スキップモードのTUと直交変換が行われたTUとのブロック境界の不連続による復号画像の画質低下を抑制できる。
 図10は、画像符号化処理の動作例を示している。図10では、処理対象のTUが8×8画素のサイズである場合を例示している。図10の(a)は原画像の一部を模式的に示しており、図10の(b)は原画像データの一部、図10の(c)は予測画像データの一部を示している。図10の(d)は、残差データを示している。
 インパルス画像(例えば背景画像が画素値「196」、被写体画像が画素値「990」である画像)を含む処理対象のTUの残差データについて、直交変換を行うと変換係数は例えば図10の(e)に示す値となる。また、変換係数を量子化すると、量子化データは例えば図10の(f)に示す値となる。さらに、量子化データを逆量子化してさらに逆直交変換を行うと図10の(g)に示す残差データが得られる。したがって、予測画像データと復号後の残差データを加算した復号画像データは例えば図10の(h)に示す値となり、背景画像の画素値が変動して、いわゆるモスキートノイズが発生する。
 また、処理対象のTUが変換スキップモードとされた場合、残差データに対して変換スキップ処理を行うと、変換スキップ係数は図10の(i)に示す値となり変換スキップ係数を量子化すると、量子化データは例えば図10の(j)に示す値となる。さらに、量子化データを逆量子化して逆変換スキップ処理を行うと図10の(k)に示す残差データが得られる。したがって、予測画像データと復号後の残差データを加算した復号画像データは例えば図10の(m)に示す値となる。すなわち、復号画像は、インパルス画像を再生できるが、処理対象のTUの背景画像の画素値「170」と他のTUの背景画像の画素値「196」が異なり、ブロック境界が顕著となってしまう。
 図11は、変換スキップモードのTUの復号画像に対してSAO処理を行った場合の動作を例示している。図11の(a)は変換スキップモードのTUの復号画像データを示しており、図11の(b)はSAO処理としてエッジオフセットを行った場合の復号画像データを示している。なお、図11の(b)では、カテゴリ判定に用いる方向が垂直方向(90度)であり、オフセットの絶対値「sao_offset_sign」を「0,0,13,30」とした場合を示している。この場合、カテゴリ3では画素値から「13」が減算されて、カテゴリ4では画素値が「30」が減算させる。このようなエッジオフセット処理を行った場合、変換スキップモードのTUと隣接するTUとの境界では画素値が「170」から「183」に補正されて、変化をなだらかにできる。しかし、変換スキップモードのTUのDCずれを修正することができない。また、インパルス部分ではピークを下げる方向の処理、例えば画素値を「986」から「966」に補正する処理が行われてしまう。なお、図11の(c)は、SAO処理としてエッジオフセット処理を行ったときの復号画像を模式的に示している。
 本技術では、LCUにおける変換スキップモードのTUに応じてEO禁止とされて、例えば変換スキップモードのTUに対してバンドオフセットが行われる。図11の(d)はSAO処理としてバンドオフセットを行った場合の復号画像データを示している。なお、図11の(d)では、バンドの位置を示すパラメータ「sao_band_position」を「5」、オフセット値の絶対値を示すパラメータ「sao_offset_abs」を「26,0,0,0」、オフセット値の正負を示すパラメータ「sao_offset_sign」を「1,1,1,1」とした場合を例示している。この場合、変換スキップモードのTUのDCが「170」から「196」に補正されて、変換スキップモードのTUと隣接するTUとの境界を目立たなくできる。なお、図11の(e)は、SAO処理としてバンドオフセット処理を行ったときの復号画像を模式的に示している。
 このように、本技術によれば、LCUにおける変換スキップモードのTUに応じてエッジオフセット処理が禁止されるので、変換スキップモードのTUがLCUに含まれてもSAO処理を行うことで、画質の低下を抑制できる符号化ストリームを生成できる。
 <1-6.適応オフセットフィルタの他の動作>
 上述の実施の形態では、LCU内の変化スキップモードのTUに関する変換スキップ情報に基づきEO禁止とするか否かを判別する場合について例示したが、エッジオフセット処理を禁止するか否かの判別は、変換スキップ情報に限らず他の情報を用いてもよい。例えば明るさの情報を拡大した高ダイナミックレンジ(HDR:High Dynamic Range)の画像では、わずかなDCずれでも画質に与える影響が大きい。そこで、画像符号化装置10では、符号化対象の入力画像が高ダイナミックレンジである場合、エッジオフセット処理を禁止する。例えば、入力画像がHybrid Log Gamma方式やPQ(Perceptual Quantizer)方式である場合、画像符号化装置10はエッジオフセット処理を禁止する。このような動作を行えば、DCずれを抑制して高画質の復号画像を得ることが可能な符号化ストリームを生成できる。
 <1-7.画像符号化装置の他の動作>
 ところで、入力画像が低域画像または中域画像である場合、イントラ予測で変換スキップ処理を行うと画質の低下を招く場合がある。図12は、原画が低域成分の画像である場合の処理を例示した図である。なお、図12に示す低域成分の画像は、例えばDC成分の画像である。また、低域成分の画像では符号化対象ブロックと隣接画素の境界がエッジ境界等であり空間相関が無い場合を例示している。
 図12の(a)は原画が低域成分の画像である場合を例示している。図12の(b)は原画が低域成分の画像である場合のイントラ予測画像を例示している。なお、原画が低域成分の画像である場合のイントラ予測画像は例えばDC予測の画像である。図12の(c)は原画が低域成分の画像である場合の残差データを示しており、残差データは隣接画素と空間相関が無いことから大きい値となっている。
 ここで、変換スキップ処理を行った場合について説明する。原画が低域成分の画像である場合の残差データに対して変換スキップ処理を行うと、変換スキップ係数は図12の(d)に示す値となる。なお、変換スキップ処理では、量子化部で直交変換の係数と残差データの量子化を行うことができるように左ビットシフト処理が行われることから、図12の(d)に示す変換スキップ係数は、図12の(c)に示す残差データをビットシフト処理した値となる。図12の(e)は、変換スキップ係数の量子化データを示している。この量子化データに対して逆量子化と逆ビットシフト処理を行うと、図12の(f)に示す復号残差データが得られる。さらに、この復号残差データに予測画像データが加算することで図12の(g)に示す復号画像データが得られる。すなわち、変換スキップ処理を行った場合の復号画像データは、図12の(a)に示す入力画像データに比べてDCずれを生じた画像となってしまう。
 次に、直交変換処理を行った場合について説明する。原画が低域成分の画像である場合の残差に対して直交変換処理を行った場合の変換係数は、図12の(h)に示す値となる。図12の(i)は、変換係数の量子化データを示している。この量子化データに対して逆量子化と逆直交変換を行うと、図12の(j)に示す復号残差データが得られる。さらに、この復号残差データに予測画像データが加算することで図12の(k)に示す復号画像データが得られる。この直交変換を用いた復号画像データは、図12の(a)に示す入力画像データに比べてDCずれの少ない画像となる。
 このように、入力画像が低域成分の画像である場合、イントラ予測で変換スキップ処理を行うと直交変換処理を行う場合に比べて復号画像は画質の低下した画像となってしまう場合がある。
 図13は、原画が中域成分の画像である場合の処理を例示した図である。なお、図13に示す中域成分の画像は、低域成分よりも高い周波数成分であり所定の周波数成分よりも低い周波数成分の画像である。
 図13の(a)は原画が中域成分の画像である場合を例示している。図13の(b)は原画が中域成分の画像である場合のイントラ予測画像を例示している。なお、原画が中域成分の画像である場合のイントラ予測画像は例えば方向予測により生成された画像である。図13の(c)は原画が中域成分の画像である場合の残差データを示している。なお、図13の(a)および後述する図13の(g),(k)では、階調変化を容易に認識できるように、所定範囲内に含まれる画素値と他の所定範囲内に含まれる画素値との画素境界を太線で示している。
 原画が中域成分の画像である場合の残差データに対して変換スキップ処理を行うと、変換スキップ係数は図13の(d)に示す値となる。なお、変換スキップ処理では、量子化部で直交変換の係数と残差データの量子化を行うことができるように左ビットシフト処理が行われることから、図13の(d)に示す変換スキップ係数は、図13の(c)に示す残差データをビットシフト処理した値となる。図13の(e)は、変換スキップ係数の量子化データを示している。この量子化データに対して逆量子化と逆ビットシフト処理を行うと、図13の(f)に示す復号残差データが得られる。さらに、この復号残差データに予測画像データが加算することで図13の(g)に示す復号画像データが得られる。すなわち、変換スキップ処理を行った場合の復号画像データは、図13の(a)に示す入力画像データに比べてグラデーションの画素値変化が階段状となって、連続的な階調変化等を正しく再現できない。
 次に、直交変換処理を行った場合について説明する。原画が中域成分の画像である場合の残差に対して直交変換処理を行った場合の変換係数は図13の(h)に示す値となる。図13の(i)は、変換係数の量子化データを示している。この量子化データに対して逆量子化と逆直交変換を行うと、図13の(j)に示す復号残差データが得られる。さらに、この復号残差データに予測画像データが加算することで図13の(k)に示す復号画像データが得られる。この直交変換処理を行った復号画像データは、図13の(g)に比べて、図13の(a)に示す入力画像データの階調変化の再現性が高い。
 このように、入力画像が中域成分の画像である場合、イントラ予測で変換スキップ処理を行うと直交変換処理を行う場合に比べて復号画像は画質の低下した画像となってしまう場合がある。そこで、画像符号化装置の他の動作では、変換スキップ処理を行うか否かの判定結果または変換スキップモードのTUがあるか否か等に基づき、イントラ予測またはインター予測の選択動作に制限を加えて、復号画像の画質低下を抑制する。
 図14は、変換スキップ処理を用いるか否かの判定動作を例示したフローチャートである。ステップST41で予測選択部は画像特徴量を算出する。画像特徴量は、入力画像にコンピュータグラフィクス画像等の人工的画像が含まれているかを判別可能とする特徴量である。
 予測選択部43は、画面並べ替えバッファ21から供給された原画像データを用いて画像特徴量を算出してステップST42に進む。なお、画像特徴量は、残差データを用いて画像特徴量を算出してもよい。
 予測選択部43は、画像特徴量として、例えば画素値の分散、全変動(Total Variation、各画素における勾配の絶対値和)、中央値との差分、ヒストグラム等の少なくともいずれかを画像特徴量として算出する。このように画像特徴量を算出すれば、変化の多い人工的画像であるか否かを判別できる。また、人工的画像は輝度データや色差データの最大値が人工的画像と異なる自然画像に比べて大きい場合が多い。したがて、画像特徴量として輝度データまたは色差データ、あるいは輝度データと色差データの最大値を用いても良い。
 ステップST42で予測画像選択部は、変換スキップモード(TSモード)を利用するか判別する。予測選択部43は、ステップST41で算出した画像特徴量に基づき変換スキップモードの利用を判別する。
 図15は、変換スキップモードを利用するか否かの判定動作の第1の具体例を示すフローチャートである。
 ステップST51で予測選択部は画像特徴量として分散を算出する。予測選択部43は、原画像データにおける4×4画素の分散を算出してステップST52に進む。
 ステップST52で予測選択部は画像特徴量として最大輝度を算出する。予測選択部43は、ステップST51で用いた4×4画素の画像において最大輝度を算出してステップST53に進む。
 ステップST53で予測選択部は分散が閾値Tha以上であるか判別する。予測選択部43は、ステップST41で算出した分散が閾値Tha以上である場合にステップST54に進み、分散が閾値Tha以上でない場合にステップST56に進む。
 ステップST54で予測選択部は最大輝度が閾値Thb以上であるか判別する。予測選択部43は、ステップST52で算出した最大輝度が閾値Thb以上である場合にステップST55に進み、最大輝度が閾値Thb以上でない場合にステップST56に進む。
 ステップST55で予測選択部は変換スキップモード(TSモード)を利用すると判別する。また、ステップST56で予測選択部は変換スキップモードを利用しないと判別する。
 図16は、変換スキップモードを利用するか否かの判定動作の第2の具体例を示すフローチャートである。
 ステップST61で予測選択部は差分画像を生成する。予測選択部43は、例えば3×3画素のメディアンフィルタを用いて、原画像とフィルタ処理後の原画像との差分を示す差分画像を生成してステップST62に進む。
 ステップST62で予測選択部は画像特徴量として最大輝度を算出する。予測選択部43は、ステップST61で生成した差分画像における4×4画素の画像において最大輝度を算出してステップST63に進む。
 ステップST63で予測選択部は画像特徴量として最大色差を算出する。予測選択部43は、ステップST62で用いた4×4画素の画像において最大色差を算出してステップST64に進む。
 ステップST64で予測選択部は最大輝度が閾値Thc以上であるか判別する。予測選択部43は、ステップST62で算出した最大輝度が閾値Thc以上である場合にステップST65に進み、最大輝度が閾値Thc以上でない場合にステップST67に進む。
 ステップST65で予測選択部は最大色差が閾値Thd以上であるか判別する。予測選択部43は、ステップST63で算出した最大色差が閾値Thd以上である場合にステップST66に進み、最大色差が閾値Thd以上でない場合にステップST67に進む。
 ステップST66で予測選択部は変換スキップモード(TSモード)を利用すると判別する。また、ステップST67で予測選択部は変換スキップモードを利用しないと判別する。
 予測選択部43は、図15または図16に示すように、原画像や差分画像から画像特徴量を算出して、算出した画像特徴量に基づき変換スキップモードを利用するか否かを判別する。さらに、予測選択部43は、変換スキップモードを利用しないと判別した場合は、イントラ予測とインター予測のいずれかをコストに基づき選択する。また、予測選択部43は、変換スキップ処理を行うと判別した場合、イントラ予測とインター予測の選択においてインター予測を選択する。このように、変換スキップモードの利用と予測の選択を制御すれば、イントラ予測で変換スキップ処理が行われて低域や中域の再現性が低下することを防止できる。
 ところで、図15と図16は、変換スキップモードを利用するか否かの判別動作を例示しているが、イントラ予測とインター予測の選択動作と変換スキップモードを利用するか否かの判別動作を組み合わせて行うようにしてもよい。
 図17は、予測選択動作と変換スキップ判別動作を組み合わせて行う場合を例示したフローチャートである。
 ステップST71で動き予測・補償部はインター予測における最適モードを決定する。動き予測・補償部42は、コストが最小となる例えば動きベクトルやPUサイズ、TUサイズ、直交変換/変換スキップのいずれか等を決定してステップST72に進む。なお、動き予測・補償部42は、変換スキップ制御部44を制御して直交変換処理または変換スキップ処理を直交変換部23で行うようにしてコストの算出を行ってもよい。
 ステップST72で予測選択部は、変換スキップモード(TSモード)のTUが存在するか判別する。予測選択部43は、ステップST71で選択された最適モードにおいて変換スキップモードのTUが存在する場合にステップST75に進み、変換スキップモードのTUが存在しない場合にステップST73に進む。
 ステップST73でイントラ予測部はイントラ予測における最適モードを決定する。イントラ予測部41は、コストが最小となる予測モードを決定してステップST74に進む。
 ステップST74で予測選択部はイントラ予測よりもインター予測のコストが小さい場合にステップST75に進み、イントラ予測よりもインター予測のコストが小さくない場合にステップST76に進む。
 ステップST75で予測選択部はインター予測を選択する。また、ステップST76で予測選択部はイントラ予測を選択する。
 このような処理を行うようにすれば、最適モードに変換スキップモードのTUが含まれる場合はインター予測が選択されるので、復号画像の画質低下を抑制できるようになる。
 また、HEVC規格の基本的なプロファイル(Main, Main10, Main Still)では4×4画素のTUに対して変換スキップモードの設定が可能とされていることから変換スキップモードの4×4画素のTUが存在する場合にインター予測を選択するようにしてもよい。
 図18は、変換スキップモードである4×4画素のTUの存在に応じて予測選択動作を行う場合を例示したフローチャートである。
 ステップST81で動き予測・補償部はインター予測における最適モードを選択する。動き予測・補償部42は、コストが最小となる例えば動きベクトルやPUサイズ、TUサイズ、直交変換/変換スキップのいずれか等を決定してステップST82に進む。
 ステップST82で予測選択部は変換スキップモード(TSモード)の4×4画素のTUが存在するか判別する。予測選択部43は、ステップST81で選択された最適モードにおいて変換スキップモードの4×4画素のTUが存在する場合にステップST85に進み、変換スキップモードのTUが存在しない場合にステップST83に進む。
 ステップST83でイントラ予測部はイントラ予測における最適モードを決定する。イントラ予測部41は、コストが最小となる予測モードを決定してステップST84に進む。
 ステップST84で予測選択部はイントラ予測よりもインター予測のコストが小さい場合にステップST85に進み、イントラ予測よりもインター予測のコストが小さくない場合にステップST86に進む。
 ステップST85で予測選択部はインター予測を選択する。また、ステップST86で予測選択部はイントラ予測を選択する。
 このような処理を行うことで、最適モードに変換スキップモードのTUが含まれる場合はインター予測が選択されるので、復号画像の画質低下を抑制できるようになる。また、変換スキップモードの4×4画素のTUが存在する場合にインター予測が選択されるようになる。
 <2.画像処理装置で復号処理を行う場合の構成と動作>
 次に、上述の画像符号化装置10で生成された符号化ストリームの復号処理を行う画像処理装置の構成と動作について説明する。
 <2-1.画像復号装置の構成>
 図19は、画像復号装置の構成を例示しており、画像復号装置50は図1の画像符号化装置10に対応する復号装置である。
 画像符号化装置10より符号化された符号化ストリーム(データ)は、所定の伝送路等を介して画像復号装置50に供給されて復号される。
 画像復号装置50は、蓄積バッファ61、エントロピー復号部62、逆量子化部63、逆直交変換部64、演算部65、デブロッキングフィルタ66、適応オフセットフィルタ67、適応ループフィルタ68、画面並べ替えバッファ69を有する。また、画像復号装置50は、フレームメモリ71、選択部72、イントラ予測部73、動き補償部74を有する。
 蓄積バッファ61は、伝送されてきた符号化ストリームを受け取り蓄積する。この符号化ストリームは、所定のタイミングで読み出されてエントロピー復号部62へ出力される。
 エントロピー復号部62は、符号化ストリームをエントロピー復号化して、得られたイントラ予測モードを示す情報などのパラメータをイントラ予測部73へ出力し、インター予測モードを示す情報や動きベクトル情報などのパラメータを動き補償部74へ出力する。また、エントロピー復号部62は、変換スキップモードのTUに関する情報などのパラメータを逆直交変換部64へ出力する。さらに、エントロピー復号部62は、復号された適応オフセットフィルタに関するパラメータを、適応オフセットフィルタ67へ出力する。
 逆量子化部63は、エントロピー復号部62により復号されて得られた量子化データを、図1の量子化部24の量子化方式に対応する方式で逆量子化する。つまり、逆量子化部63は、画像符号化装置10から供給された量子化パラメータを用いて、図1の逆量子化部31と同様の方法で量子化データの逆量子化を行う。逆量子化部63は、逆量子化されたデータを逆直交変換部64へ出力する。
 逆直交変換部64は、エントロピー復号部62から供給されたパラメータに基づき逆直交変換の動作を切り替える。逆直交変換部64は、逆量子化部63から供給されたデータが変換スキップモードでないTUのデータである場合、図1の直交変換部23の直交変換方式に対応する方式で逆直交変換を行い、画像符号化装置10における直交変換前の残差データに対応する復号残差データを得て演算部65へ出力する。また、逆直交変換部64は、逆量子化部63から供給されたデータが変化スキップモードのTUのデータである場合、逆直交変換を行うことなく演算部65へ出力する。なお、変化スキップモードのTUの残差データに対してビットシフト処理が行われている場合は、逆方向のビットシフト処理を行う。
 演算部65には、イントラ予測部73若しくは動き補償部74から予測画像データが供給される。演算部65は、復号残差データと予測画像データとを加算して、画像符号化装置10の演算部22により予測画像データが減算される前の原画像データに対応する復号画像データを得る。演算部65は、その復号画像データをデブロッキングフィルタ66へ出力する。
 デブロッキングフィルタ66は、適宜デブロッキングフィルタ処理を行うことにより復号画像のブロック歪を除去する。デブロッキングフィルタ66は、そのフィルタ処理結果を適応オフセットフィルタ67へ出力する。
 適応オフセットフィルタ67は、デブロッキングフィルタ66によるフィルタ後の画像に対してSAO処理を行う。
 適応オフセットフィルタ67は、エントロピー復号部62から供給されるパラメータを用いて、LCU毎に、デブロッキングフィルタ66によるフィルタ後の画像に対して、フィルタ処理を施す。適応オフセットフィルタ67は、フィルタ処理後の画像を、適応ループフィルタ68へ出力する。
 適応ループフィルタ68は、図1の適応ループフィルタ36と同様に構成され、LCU毎に、適応ループフィルタ処理を行う。適応ループフィルタ68は、適応オフセットフィルタ67によるフィルタ後の画像に対して、フィルタ係数を用いて、LCU毎にフィルタ処理を行い、フィルタ処理結果を、画面並べ替えバッファ69とフレームメモリ71へ出力する。
 画面並べ替えバッファ69は、画像の並べ替えを行う。すなわち、図1の画面並べ替えバッファ21により符号化の順番のために並べ替えられたフレームの順番が、元の表示の順番に並べ替えられる。
 適応ループフィルタ68の出力は、さらに、フレームメモリ71に供給される。フレームメモリ71、選択部72、イントラ予測部73、動き補償部74は、画像符号化装置10のフレームメモリ37、選択部38、イントラ予測部41、動き予測・補償部42にそれぞれ対応する。
 選択部72は、イントラ予測に用いられる画像をフレームメモリ71から読み出し、イントラ予測部73へ出力する。また、選択部72は、インター処理される画像と参照される画像をフレームメモリ71から読み出し、動き補償部74へ出力する。
 イントラ予測部73には、ヘッダ情報を復号して得られたイントラ予測モードを示す情報等がエントロピー復号部62から適宜供給される。イントラ予測部73は、この情報に基づいて、フレームメモリ71から取得した参照画像から予測画像を生成し、生成した予測画像を演算部65へ出力する。
 動き補償部74には、ヘッダ情報を復号して得られた情報(予測モード情報、動きベクトル情報、参照フレーム情報、フラグ、および各種パラメータ等)がエントロピー復号部62から供給される。動き補償部74は、エントロピー復号部62から供給されるそれらの情報に基づいて、フレームメモリ71から取得した参照画像から予測画像を生成し、生成した予測画像を演算部65へ出力する。
 <2-2.画像復号装置の動作>
 次に、画像復号装置の動作について説明する、図20は、画像復号装置の動作を例示したフローチャートである。
 復号処理が開始されると、ステップST101において画像復号装置は蓄積処理を行う。画像復号装置50の蓄積バッファ61は、伝送されてきた符号化ストリームを受け取り蓄積する。
 ステップST102において画像復号装置はエントロピー復号処理を行う。画像復号装置50のエントロピー復号部62は、蓄積バッファ61から供給される符号化ストリームを復号する。図1のエントロピー符号化部25により符号化されたIピクチャ、Pピクチャ、並びにBピクチャが復号される。また、エントロピー復号部62は、ピクチャの復号に先立ち、動きベクトル情報、参照フレーム情報、予測モード情報(イントラ予測モード、またはインター予測モード)などのパラメータの情報も復号する。予測モード情報がイントラ予測モード情報である場合、予測モード情報は、イントラ予測部73に供給される。予測モード情報がインター予測モード情報である場合、予測モード情報と対応する動きベクトル情報などは、動き補償部74へ出力される。また、変換スキップモードのTUに関する情報を示すパラメータは逆直交変換部64に供給されて、適応オフセットフィルタに関するパラメータは適応オフセットフィルタ67へ出力される。
 ステップST103において画像復号装置は予測画像生成処理を行う。画像復号装置50のイントラ予測部73または動き補償部74は、エントロピー復号部62から供給される予測モード情報に対応して、それぞれ予測画像生成処理を行う。
 すなわち、エントロピー復号部62からイントラ予測モード情報が供給された場合、イントラ予測部73はイントラ予測モードのイントラ予測画像を生成する。エントロピー復号部62からインター予測モード情報が供給された場合、動き補償部74は、インター予測モードの動き補償処理を行い、インター予測画像を生成する。この処理により、イントラ予測部73により生成された予測画像(イントラ予測画像)、または動き補償部74により生成された予測画像(インター予測画像)が演算部65へ出力される。
 ステップST104において画像復号装置は逆量子化処理を行う。画像復号装置50の逆量子化部63は、エントロピー復号部62で得られた量子化データを、図1の量子化部24の量子化方式に対応する方式で逆量子化して、逆量子化データを逆直交変換部64へ出力する。
 ステップST105において画像復号装置は逆直交変換処理または逆変換スキップ処理を行う。画像復号装置50の逆直交変換部64は、エントロピー復号部62から供給されたパラメータに基づいて逆直交変換処理を行う。逆直交変換部64は、逆量子化部63から供給された逆量子化データが変化スキップモードでないTUのデータである場合、図1の直交変換部23の直交変換方式に対応する方式で逆直交変換を行い、画像符号化装置10における直交変換前の残差データに対応する復号残差データを得て演算部65へ出力する。また、逆直交変換部64は、逆量子化部63から供給されたデータが変化スキップモードのTUのデータである場合、逆直交変換をスキップして演算部65へ出力する。
 ステップST106において画像復号装置は画像加算処理を行う。画像復号装置50の演算部65は、イントラ予測部73若しくは動き補償部74から供給された予測画像データと、逆直交変換部64から供給された復号残差データを加算して復号画像データを生成する。演算部65は、生成した復号画像データをデブロッキングフィルタ66とフレームメモリ71へ出力する。
 ステップST107において画像復号装置はデブロッキングフィルタ処理を行う。画像復号装置50のデブロッキングフィルタ66は、演算部65より出力された画像に対して、デブロッキングフィルタ処理を行う。これによりブロック歪みが除去される。デブロッキングフィルタ66からの復号画像は、適応オフセットフィルタ67へ出力する。
 ステップST108において画像復号装置はSAO処理を行う。画像復号装置50の適応オフセットフィルタ67は、エントロピー復号部62から供給されたSAO処理に関するパラメータを用いて、デブロッキングフィルタ66によるフィルタ後の画像に対して、SAO処理を行う。適応オフセットフィルタ67は、SAO処理後の復号画像データを適応ループフィルタ68へ出力する。
 ステップST109において画像復号装置は適応ループフィルタ処理を行う。画像復号装置50の適応ループフィルタ68は、適応オフセットフィルタ67によるSAO処理後の復号画像データに対して適応ループフィルタ処理を行い、フィルタ処理後の復号画像データを画面並べ替えバッファ69およびフレームメモリ71へ出力する。
 ステップST110において画像復号装置は記憶処理を行う。画像復号装置50のフレームメモリ71は、演算部65から供給されたフィルタ処理前の復号画像データと、デブロッキングフィルタ66と適応オフセットフィルタ67および適応ループフィルタによってフィルタ処理が行われた復号画像データを記憶する。
 ステップST111において画像復号装置は画面並べ替え処理を行う。画像復号装置50の画面並べ替えバッファ69は、適応ループフィルタ68から供給された復号画像データを蓄積して、蓄積した復号画像データを画像符号化装置10の画面並べ替えバッファ21で並べ替えられる前の表示順序に出力する。
 このように、画像復号装置50では、エントロピー復号部62から供給されたパラメータに基づいて適応オフセットフィルタ67でSAO処理が行われて、LCUにおける変換スキップモードのTUに応じてエッジオフセット処理が禁止される。したがって、急峻なエッジの保持等のために変換スキップモードのTUをLCUに含むように符号化処理が行われ他場合に、画質の低下が抑制された復号画像を出力できる。
 また、画像復号装置50では、変換スキップモードが用いられたときインター予測が選択されるので、画質の低下が抑制された復号画像を出力できる。
 なお、画像符号化装置10では、入力画像が高ダイナミックレンジである場合、符号化ストリームに含まれるシンタックスにおいて、ビデオ表示情報VUI(Video Usability Information)のパラメータ「transfer_characteristics」若しくは付加情報SEI(Supplemental Enhancement Information)のパラメータ「preferred_transfer_characteristics」に、例えばHybrid Log Gamma方式やPQ方式に関する情報が含められる。したがって、画像復号装置50は、入力画像が高ダイナミックレンジであることを示す情報が符号化ストリームに含まれている場合、SAO処理におけるエッジオフセット処理を禁止してもよい。
 <3.応用例>
 次に、本技術の画像処理装置の応用例について説明する。
 [第1の応用例:テレビジョン受像機]
 図21は、上述した画像処理装置を適用したテレビジョン装置の概略的な構成の一例を示している。テレビジョン装置900は、アンテナ901、チューナ902、デマルチプレクサ903、デコーダ904、映像信号処理部905、表示部906、音声信号処理部907、スピーカ908、外部インタフェース909、制御部910、ユーザインタフェース911、及びバス912を備える。
 チューナ902は、アンテナ901を介して受信される放送信号から所望のチャンネルの信号を抽出し、抽出した信号を復調する。そして、チューナ902は、復調により得られた符号化ビットストリームをデマルチプレクサ903へ出力する。即ち、チューナ902は、画像が符号化されている符号化ストリームを受信する、テレビジョン装置900における伝送手段としての役割を有する。
 デマルチプレクサ903は、符号化ビットストリームから視聴対象の番組の映像ストリーム及び音声ストリームを分離し、分離した各ストリームをデコーダ904へ出力する。また、デマルチプレクサ903は、符号化ビットストリームからEPG(Electronic Program Guide)などの補助的なデータを抽出し、抽出したデータを制御部910に供給する。なお、デマルチプレクサ903は、符号化ビットストリームがスクランブルされている場合には、デスクランブルを行ってもよい。
 デコーダ904は、デマルチプレクサ903から入力される映像ストリーム及び音声ストリームを復号する。そして、デコーダ904は、復号処理により生成される映像データを映像信号処理部905へ出力する。また、デコーダ904は、復号処理により生成される音声データを音声信号処理部907へ出力する。
 映像信号処理部905は、デコーダ904から入力される映像データを再生し、表示部906に映像を表示させる。また、映像信号処理部905は、ネットワークを介して供給されるアプリケーション画面を表示部906に表示させてもよい。また、映像信号処理部905は、映像データについて、設定に応じて、例えばノイズ除去(抑制)などの追加的な処理を行ってもよい。さらに、映像信号処理部905は、例えばメニュー、ボタン又はカーソルなどのGUI(Graphical User Interface)の画像を生成し、生成した画像を出力画像に重畳してもよい。
 表示部906は、映像信号処理部905から供給される駆動信号により駆動され、表示デバイス(例えば、液晶ディスプレイ、プラズマディスプレイ又はOELD(Organic ElectroLuminescence Display)(有機ELディスプレイ)など)の映像面上に映像又は画像を表示する。
 音声信号処理部907は、デコーダ904から入力される音声データについてD/A変換及び増幅などの再生処理を行い、スピーカ908から音声を出力させる。また、音声信号処理部907は、音声データについてノイズ除去(抑制)などの追加的な処理を行ってもよい。
 外部インタフェース909は、テレビジョン装置900と外部機器又はネットワークとを接続するためのインタフェースである。例えば、外部インタフェース909を介して受信される映像ストリーム又は音声ストリームが、デコーダ904により復号されてもよい。即ち、外部インタフェース909もまた、画像が符号化されている符号化ストリームを受信する、テレビジョン装置900における伝送手段としての役割を有する。
 制御部910は、CPUなどのプロセッサ、並びにRAM及びROMなどのメモリを有する。メモリは、CPUにより実行されるプログラム、プログラムデータ、EPGデータ、及びネットワークを介して取得されるデータなどを記憶する。メモリにより記憶されるプログラムは、例えば、テレビジョン装置900の起動時にCPUにより読み込まれ、実行される。CPUは、プログラムを実行することにより、例えばユーザインタフェース911から入力される操作信号に応じて、テレビジョン装置900の動作を制御する。
 ユーザインタフェース911は、制御部910と接続される。ユーザインタフェース911は、例えば、ユーザがテレビジョン装置900を操作するためのボタン及びスイッチ、並びに遠隔制御信号の受信部などを有する。ユーザインタフェース911は、これら構成要素を介してユーザによる操作を検出して操作信号を生成し、生成した操作信号を制御部910へ出力する。
 バス912は、チューナ902、デマルチプレクサ903、デコーダ904、映像信号処理部905、音声信号処理部907、外部インタフェース909及び制御部910を相互に接続する。
 このように構成されたテレビジョン装置900において、デコーダ904は、上述した画像復号装置の機能を有する。それにより、テレビジョン装置900での画像の復号に際して、画質の低下が抑制された復号画像を表示できる。
 [第2の応用例:携帯電話機]
 図22は、上述した実施形態を適用した携帯電話機の概略的な構成の一例を示している。携帯電話機920は、アンテナ921、通信部922、音声コーデック923、スピーカ924、マイクロホン925、カメラ部926、画像処理部927、多重分離部928、記録再生部929、表示部930、制御部931、操作部932、及びバス933を備える。
 アンテナ921は、通信部922に接続される。スピーカ924及びマイクロホン925は、音声コーデック923に接続される。操作部932は、制御部931に接続される。バス933は、通信部922、音声コーデック923、カメラ部926、画像処理部927、多重分離部928、記録再生部929、表示部930、及び制御部931を相互に接続する。
 携帯電話機920は、音声通話モード、データ通信モード、撮影モード及びテレビ電話モードを含む様々な動作モードで、音声信号の送受信、電子メール又は画像データの送受信、画像の撮像、及びデータの記録などの動作を行う。
 音声通話モードにおいて、マイクロホン925により生成されるアナログ音声信号は、音声コーデック923に供給される。音声コーデック923は、アナログ音声信号を音声データへ変換し、変換された音声データをA/D変換し圧縮する。そして、音声コーデック923は、圧縮後の音声データを通信部922へ出力する。通信部922は、音声データを符号化及び変調し、送信信号を生成する。そして、通信部922は、生成した送信信号を、アンテナ921を介して基地局(図示せず)へ送信する。また、通信部922は、アンテナ921を介して受信される無線信号を増幅し及び周波数変換し、受信信号を取得する。そして、通信部922は、受信信号を復調及び復号して音声データを生成し、生成した音声データを音声コーデック923へ出力する。音声コーデック923は、音声データを伸張し及びD/A変換し、アナログ音声信号を生成する。そして、音声コーデック923は、生成した音声信号をスピーカ924に供給して音声を出力させる。
 また、データ通信モードにおいて、例えば、制御部931は、操作部932を介するユーザによる操作に応じて、電子メールを構成する文字データを生成する。また、制御部931は、文字を表示部930に表示させる。また、制御部931は、操作部932を介するユーザからの送信指示に応じて電子メールデータを生成し、生成した電子メールデータを通信部922へ出力する。通信部922は、電子メールデータを符号化及び変調し、送信信号を生成する。そして、通信部922は、生成した送信信号を、アンテナ921を介して基地局(図示せず)へ送信する。また、通信部922は、アンテナ921を介して受信される無線信号を増幅し及び周波数変換し、受信信号を取得する。そして、通信部922は、受信信号を復調及び復号して電子メールデータを復元し、復元した電子メールデータを制御部931へ出力する。制御部931は、表示部930に電子メールの内容を表示させると共に、電子メールデータを記録再生部929の記憶媒体に記憶させる。
 記録再生部929は、読み書き可能な任意の記憶媒体を有する。例えば、記憶媒体は、RAM又はフラッシュメモリなどの内蔵型の記憶媒体であってもよく、ハードディスク、磁気ディスク、光磁気ディスク、光ディスク、USB(Universal Serial Bus)メモリ、又はメモリカードなどの外部装着型の記憶媒体であってもよい。
 また、撮影モードにおいて、例えば、カメラ部926は、被写体を撮像して画像データを生成し、生成した画像データを画像処理部927へ出力する。画像処理部927は、カメラ部926から入力される画像データを符号化し、符号化ストリームを記録再生部929の記憶媒体に記憶させる。
 また、テレビ電話モードにおいて、例えば、多重分離部928は、画像処理部927により符号化された映像ストリームと、音声コーデック923から入力される音声ストリームとを多重化し、多重化したストリームを通信部922へ出力する。通信部922は、ストリームを符号化及び変調し、送信信号を生成する。そして、通信部922は、生成した送信信号を、アンテナ921を介して基地局(図示せず)へ送信する。また、通信部922は、アンテナ921を介して受信される無線信号を増幅し及び周波数変換し、受信信号を取得する。これら送信信号及び受信信号には、符号化ビットストリームが含まれ得る。そして、通信部922は、受信信号を復調及び復号してストリームを復元し、復元したストリームを多重分離部928へ出力する。多重分離部928は、入力されるストリームから映像ストリーム及び音声ストリームを分離し、映像ストリームを画像処理部927、音声ストリームを音声コーデック923へ出力する。画像処理部927は、映像ストリームを復号し、映像データを生成する。映像データは、表示部930に供給され、表示部930により一連の画像が表示される。音声コーデック923は、音声ストリームを伸張し及びD/A変換し、アナログ音声信号を生成する。そして、音声コーデック923は、生成した音声信号をスピーカ924に供給して音声を出力させる。
 このように構成された携帯電話機920において、画像処理部927は、上述した画像符号化装置及び画像復号装置の機能を有する。それにより、携帯電話機920での画像の符号化及び復号に際して、画質の低下が抑制された復号画像の出力を行えるようになる。
 [第3の応用例:記録再生装置]
 図23は、上述した実施形態を適用した記録再生装置の概略的な構成の一例を示している。記録再生装置940は、例えば、受信した放送番組の音声データ及び映像データを符号化して記録媒体に記録する。また、記録再生装置940は、例えば、他の装置から取得される音声データ及び映像データを符号化して記録媒体に記録してもよい。また、記録再生装置940は、例えば、ユーザの指示に応じて、記録媒体に記録されているデータをモニタ及びスピーカ上で再生する。このとき、記録再生装置940は、音声データ及び映像データを復号する。
 記録再生装置940は、チューナ941、外部インタフェース942、エンコーダ943、HDD(Hard Disk Drive)944、ディスクドライブ945、セレクタ946、デコーダ947、OSD(On-Screen Display)948、制御部949、及びユーザインタフェース950を備える。
 チューナ941は、アンテナ(図示せず)を介して受信される放送信号から所望のチャンネルの信号を抽出し、抽出した信号を復調する。そして、チューナ941は、復調により得られた符号化ビットストリームをセレクタ946へ出力する。即ち、チューナ941は、記録再生装置940における伝送手段としての役割を有する。
 外部インタフェース942は、記録再生装置940と外部機器又はネットワークとを接続するためのインタフェースである。外部インタフェース942は、例えば、IEEE1394インタフェース、ネットワークインタフェース、USBインタフェース、又はフラッシュメモリインタフェースなどであってよい。例えば、外部インタフェース942を介して受信される映像データ及び音声データは、エンコーダ943へ入力される。即ち、外部インタフェース942は、記録再生装置940における伝送手段としての役割を有する。
 エンコーダ943は、外部インタフェース942から入力される映像データ及び音声データが符号化されていない場合に、映像データ及び音声データを符号化する。そして、エンコーダ943は、符号化ビットストリームをセレクタ946へ出力する。
 HDD944は、映像及び音声などのコンテンツデータが圧縮された符号化ビットストリーム、各種プログラムおよびその他のデータを内部のハードディスクに記録する。また、HDD944は、映像及び音声の再生時に、これらデータをハードディスクから読み出す。
 ディスクドライブ945は、装着されている記録媒体へのデータの記録及び読み出しを行う。ディスクドライブ945に装着される記録媒体は、例えばDVDディスク(DVD-Video、DVD-RAM、DVD-R、DVD-RW、DVD+R、DVD+RW等)又はBlu-ray(登録商標)ディスクなどであってよい。
 セレクタ946は、映像及び音声の記録時には、チューナ941又はエンコーダ943から入力される符号化ビットストリームを選択し、選択した符号化ビットストリームをHDD944又はディスクドライブ945へ出力する。また、セレクタ946は、映像及び音声の再生時には、HDD944又はディスクドライブ945から入力される符号化ビットストリームをデコーダ947へ出力する。
 デコーダ947は、符号化ビットストリームを復号し、映像データ及び音声データを生成する。そして、デコーダ947は、生成した映像データをOSD948へ出力する。また、デコーダ904は、生成した音声データを外部のスピーカへ出力する。
 OSD948は、デコーダ947から入力される映像データを再生し、映像を表示する。また、OSD948は、表示する映像に、例えばメニュー、ボタン又はカーソルなどのGUIの画像を重畳してもよい。
 制御部949は、CPUなどのプロセッサ、並びにRAM及びROMなどのメモリを有する。メモリは、CPUにより実行されるプログラム、及びプログラムデータなどを記憶する。メモリにより記憶されるプログラムは、例えば、記録再生装置940の起動時にCPUにより読み込まれ、実行される。CPUは、プログラムを実行することにより、例えばユーザインタフェース950から入力される操作信号に応じて、記録再生装置940の動作を制御する。
 ユーザインタフェース950は、制御部949と接続される。ユーザインタフェース950は、例えば、ユーザが記録再生装置940を操作するためのボタン及びスイッチ、並びに遠隔制御信号の受信部などを有する。ユーザインタフェース950は、これら構成要素を介してユーザによる操作を検出して操作信号を生成し、生成した操作信号を制御部949へ出力する。
 このように構成された記録再生装置940において、エンコーダ943は、上述した画像符号化装置の機能を有する。また、デコーダ947は、上述した画像復号装置の機能を有する。それにより、記録再生装置940での画像の符号化及び復号に際して、画質の低下が抑制された復号画像の再生を行えるようになる。
 [第4の応用例:撮像装置]
 図24は、上述した実施形態を適用した撮像装置の概略的な構成の一例を示している。撮像装置960は、被写体を撮像して画像を生成し、画像データを符号化して記録媒体に記録する。
 撮像装置960は、光学ブロック961、撮像部962、信号処理部963、画像処理部964、表示部965、外部インタフェース966、メモリ967、メディアドライブ968、OSD969、制御部970、ユーザインタフェース971、及びバス972を備える。
 光学ブロック961は、撮像部962に接続される。撮像部962は、信号処理部963に接続される。表示部965は、画像処理部964に接続される。ユーザインタフェース971は、制御部970に接続される。バス972は、画像処理部964、外部インタフェース966、メモリ967、メディアドライブ968、OSD969、及び制御部970を相互に接続する。
 光学ブロック961は、フォーカスレンズ及び絞り機構などを有する。光学ブロック961は、被写体の光学像を撮像部962の撮像面に結像させる。撮像部962は、CCD(Charge Coupled Device)又はCMOS(Complementary Metal Oxide Semiconductor)などのイメージセンサを有し、撮像面に結像した光学像を光電変換によって電気信号としての画像信号に変換する。そして、撮像部962は、画像信号を信号処理部963へ出力する。
 信号処理部963は、撮像部962から入力される画像信号に対してニー補正、ガンマ補正、色補正などの種々のカメラ信号処理を行う。信号処理部963は、カメラ信号処理後の画像データを画像処理部964へ出力する。
 画像処理部964は、信号処理部963から入力される画像データを符号化し、符号化データを生成する。そして、画像処理部964は、生成した符号化データを外部インタフェース966又はメディアドライブ968へ出力する。また、画像処理部964は、外部インタフェース966又はメディアドライブ968から入力される符号化データを復号し、画像データを生成する。そして、画像処理部964は、生成した画像データを表示部965へ出力する。また、画像処理部964は、信号処理部963から入力される画像データを表示部965へ出力して画像を表示させてもよい。また、画像処理部964は、OSD969から取得される表示用データを、表示部965へ出力する画像に重畳してもよい。
 OSD969は、例えばメニュー、ボタン又はカーソルなどのGUIの画像を生成して、生成した画像を画像処理部964へ出力する。
 外部インタフェース966は、例えばUSB入出力端子として構成される。外部インタフェース966は、例えば、画像の印刷時に、撮像装置960とプリンタとを接続する。また、外部インタフェース966には、必要に応じてドライブが接続される。ドライブには、例えば、磁気ディスク又は光ディスクなどのリムーバブルメディアが装着され、リムーバブルメディアから読み出されるプログラムが、撮像装置960にインストールされ得る。さらに、外部インタフェース966は、LAN又はインターネットなどのネットワークに接続されるネットワークインタフェースとして構成されてもよい。即ち、外部インタフェース966は、撮像装置960における伝送手段としての役割を有する。
 メディアドライブ968に装着される記録媒体は、例えば、磁気ディスク、光磁気ディスク、光ディスク、又は半導体メモリなどの、読み書き可能な任意のリムーバブルメディアであってよい。また、メディアドライブ968に記録媒体が固定的に装着され、例えば、内蔵型ハードディスクドライブ又はSSD(Solid State Drive)のような非可搬性の記憶部が構成されてもよい。
 制御部970は、CPUなどのプロセッサ、並びにRAM及びROMなどのメモリを有する。メモリは、CPUにより実行されるプログラム、及びプログラムデータなどを記憶する。メモリにより記憶されるプログラムは、例えば、撮像装置960の起動時にCPUにより読み込まれ、実行される。CPUは、プログラムを実行することにより、例えばユーザインタフェース971から入力される操作信号に応じて、撮像装置960の動作を制御する。
 ユーザインタフェース971は、制御部970と接続される。ユーザインタフェース971は、例えば、ユーザが撮像装置960を操作するためのボタン及びスイッチなどを有する。ユーザインタフェース971は、これら構成要素を介してユーザによる操作を検出して操作信号を生成し、生成した操作信号を制御部970へ出力する。
 このように構成された撮像装置960において、画像処理部964は、上述した実施形態に係る画像符号化装置及び画像復号装置の機能を有する。それにより、撮像装置960での画像の符号化及び復号に際して、画質の低下が抑制された復号画像の出力を行えるようになる。
 明細書中において説明した一連の処理はハードウェア、またはソフトウェア、あるいは両者の複合構成によって実行することが可能である。ソフトウェアによる処理を実行する場合は、処理シーケンスを記録したプログラムを、専用のハードウェアに組み込まれたコンピュータ内のメモリにインストールして実行させる。または、各種処理が実行可能な汎用コンピュータにプログラムをインストールして実行させることが可能である。
 例えば、プログラムは記録媒体としてのハードディスクやSSD(Solid State Drive)、ROM(Read Only Memory)に予め記録しておくことができる。あるいは、プログラムはフレキシブルディスク、CD-ROM(Compact Disc Read Only Memory),MO(Magneto optical)ディスク,DVD(Digital Versatile Disc)、BD(Blu-Ray Disc(登録商標))、磁気ディスク、半導体メモリカード等のリムーバブル記録媒体に、一時的または永続的に格納(記録)しておくことができる。このようなリムーバブル記録媒体は、いわゆるパッケージソフトウェアとして提供することができる。
 また、プログラムは、リムーバブル記録媒体からコンピュータにインストールする他、ダウンロードサイトからLAN(Local Area Network)やインターネット等のネットワークを介して、コンピュータに無線または有線で転送してもよい。コンピュータでは、そのようにして転送されてくるプログラムを受信し、内蔵するハードディスク等の記録媒体にインストールすることができる。
 なお、本明細書に記載した効果はあくまで例示であって限定されるものではなく、記載されていない付加的な効果があってもよい。また、本技術は、上述した技術の実施の形態に限定して解釈されるべきではない。この技術の実施の形態は、例示という形態で本技術を開示しており、本技術の要旨を逸脱しない範囲で当業者が実施の形態の修正や代用をなし得ることは自明である。すなわち、本技術の要旨を判断するためには、請求の範囲を参酌すべきである。
 また、本技術の画像処理装置は以下のような構成も取ることができる。
 (1) 復号画像の画素に対してオフセットを適用するフィルタ処理を行うフィルタ処理部と、
 予測残差について直交変換を行わない変換スキップモードの変換ユニットの発生状況に応じて、エッジ部分に対する前記オフセットの適用を禁止するフィルタ制御部と
を備える画像処理装置。
 (2) 前記フィルタ制御部は、最大符号化ユニット内に前記変換スキップモードの変換ユニットを含む場合、前記エッジ部分に対する前記オフセットの適用を禁止する(1)に記載の画像処理装置。
 (3) 前記フィルタ制御部は、最大符号化ユニット内の変換ユニット数に対する前記変換スキップモードの変換ユニット数の割合が閾値以上である場合、前記エッジ部分に対する前記オフセットの適用を禁止する(1)に記載の画像処理装置。
 (4) 前記フィルタ制御部は、最大符号化ユニットの画素数に対する前記変換スキップモードの変換ユニットの画素数の割合が閾値以上である場合、前記エッジ部分に対する前記オフセットの適用を禁止する(1)に記載の画像処理装置。
 (5) 前記フィルタ制御部は、変換ユニットのサイズに応じて重みを設定して、最大符号化ユニット内における前記変換スキップモードの変換ユニットの数と、前記変換スキップモードの変換ユニットに対応する重みとを用いて算出した評価値が閾値以上である場合、前記エッジ部分に対する前記オフセットの適用を禁止する(1)に記載の画像処理装置。
 (6) 前記フィルタ制御部は、前記復号画像が高ダイナミックレンジ画像である場合、前記エッジ部分に対する前記オフセットの適用を禁止する(1)に記載の画像処理装置。
 (7) 前記フィルタ制御部は、前記復号画像を用いて階調調整のオフセットを前記フィルタ処理部で適用するか否かの判定と、適用する場合のオフセットを設定する(1)乃至(6)のいずれかに記載の画像処理装置。
 (8) イントラ予測及びインター予測のいずれかの予測画像を選択する予測選択部をさらに備え、
 前記予測選択部は、前記インター予測において前記変換スキップモードが選択されている場合に前記インター予測の予測画像を選択して前記予測残差を算出させる(1)乃至(7)のいずれかに記載の画像処理装置。
 (9) 前記予測選択部は、前記インター予測において前記変換スキップモードが選択されていない場合、前記インター予測のコストと前記イントラ予測のコストに基づいて、前記イントラ予測及び前記インター予測のいずれかの予測画像を選択する(8)に記載の画像処理装置。
 (10) 前記予測選択部は、前記インター予測において4×4画素の変換ユニットで前記変換スキップモードが選択されている場合に前記インター予測の予測画像を選択する(8)または(9)に記載の画像処理装置。
 (11) 前記予測残差は、符号化対象画像と前記復号画像に基づいて生成した予測画像と、前記符号化対象画像との差を示す(1)乃至(10)のいずれかに記載の画像処理装置。
 この技術の画像処理装置と画像処理方法によれば、復号された復号画像の画素に対してオフセットを適用するフィルタ処理が行われる。また、予測残差について直交変換を行わない変換スキップモードの変換ユニットの発生状況に応じて、エッジ部分に対するオフセットの適用が禁止される。このため、直交変換がスキップされた変換ユニットに対してはDC成分を補正するオフセットが適用されて、直交変換が行われた変換ユニットと直交変換がスキップされた変換ユニットとの境界が目立たなくなり復号画像の画質低下を抑制できる。したがって、動画の符号化や復号を行う電子機器に適している。
 10・・・画像符号化装置
 21,69・・・画面並べ替えバッファ
 22,33,65・・・演算部
 23・・・直交変換部
 24・・・量子化部
 25・・・エントロピー符号化部
 26,61・・・蓄積バッファ
 27・・・レート制御部
 31,63・・・逆量子化部
 32,64・・・逆直交変換部
 34,66・・・デブロッキングフィルタ
 35,67・・・適応オフセットフィルタ
 36,68・・・適応ループフィルタ
 37,71・・・フレームメモリ
 38,72・・・選択部
 41,73・・・イントラ予測部
 42・・・動き予測・補償部
 43・・・予測選択部
 44・・・変換スキップ制御部
 50・・・画像復号装置
 62・・・エントロピー復号部
 74・・・動き補償部
 351・・・フィルタ制御部
 3511・・・切り替え判定部
 3512・・・解析部
 3513・・・統計量取得部
 3514・・・モード判定部
 3515・・・オフセット判定部
 352・・・フィルタ処理部

Claims (13)

  1.  復号画像の画素に対してオフセットを適用するフィルタ処理を行うフィルタ処理部と、
     予測残差について直交変換を行わない変換スキップモードの変換ユニットの発生状況に応じて、エッジ部分に対する前記オフセットの適用を禁止するフィルタ制御部と
    を備える画像処理装置。
  2.  前記フィルタ制御部は、最大符号化ユニット内に前記変換スキップモードの変換ユニットを含む場合、前記エッジ部分に対する前記オフセットの適用を禁止する
    請求項1に記載の画像処理装置。
  3.  前記フィルタ制御部は、最大符号化ユニット内の変換ユニット数に対する前記変換スキップモードの変換ユニット数の割合が閾値以上である場合、前記エッジ部分に対する前記オフセットの適用を禁止する
    請求項1に記載の画像処理装置。
  4.  前記フィルタ制御部は、最大符号化ユニットの画素数に対する前記変換スキップモードの変換ユニットの画素数の割合が閾値以上である場合、前記エッジ部分に対する前記オフセットの適用を禁止する
    請求項1に記載の画像処理装置。
  5.  前記フィルタ制御部は、変換ユニットのサイズに応じて重みを設定して、最大符号化ユニット内における前記変換スキップモードの変換ユニットの数と、前記変換スキップモードの変換ユニットに対応する重みを用いて算出した評価値が閾値以上である場合、前記エッジ部分に対する前記オフセットの適用を禁止する
    請求項1に記載の画像処理装置。
  6.  前記フィルタ制御部は、前記復号画像が高ダイナミックレンジ画像である場合、前記エッジ部分に対する前記オフセットの適用を禁止する
    請求項1に記載の画像処理装置。
  7.  前記フィルタ制御部は、前記復号画像を用いて階調調整のオフセットを前記フィルタ処理部で適用するか否かの判定と、適用する場合のオフセットを設定する
    請求項1に記載の画像処理装置。
  8.  イントラ予測及びインター予測のいずれかの予測画像を選択する予測選択部をさらに備え、
     前記予測選択部は、前記インター予測において前記変換スキップモードが選択されている場合に前記インター予測の予測画像を選択して前記予測残差を算出させる
    請求項1に記載の画像処理装置。
  9.  前記予測選択部は、前記インター予測において前記変換スキップモードが選択されていない場合、前記インター予測のコストと前記イントラ予測のコストに基づいて、前記イントラ予測及び前記インター予測のいずれかの予測画像を選択する
    請求項8に記載の画像処理装置。
  10.  前記予測選択部は、前記インター予測において4×4画素の変換ユニットで前記変換スキップモードが選択されている場合に前記インター予測の予測画像を選択する
    請求項8に記載の画像処理装置。
  11.  前記予測残差は、符号化対象画像と前記復号画像に基づいて生成した予測画像と、前記符号化対象画像との差を示す
    請求項1に記載の画像処理装置。
  12.  前記復号画像は、符号化ストリームから生成した予測残差と予測処理によって生成した予測画像を加算した画像である
    請求項1に記載の画像処理装置。
  13.  復号された復号画像の画素に対してオフセットを適用するフィルタ処理を行うことと、
     予測残差について直交変換を行わない変換スキップモードの変換ユニットの発生状況に応じて、エッジ部分に対する前記オフセットの適用を禁止することと
    を含む画像処理方法。
PCT/JP2018/015377 2017-06-23 2018-04-12 画像処理装置と画像処理方法 WO2018235405A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US16/623,143 US11039133B2 (en) 2017-06-23 2018-04-12 Image processing apparatus and image processing method for inhibiting application of an offset to pixels of an image

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2017-123013 2017-06-23
JP2017123013 2017-06-23

Publications (1)

Publication Number Publication Date
WO2018235405A1 true WO2018235405A1 (ja) 2018-12-27

Family

ID=64737040

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2018/015377 WO2018235405A1 (ja) 2017-06-23 2018-04-12 画像処理装置と画像処理方法

Country Status (2)

Country Link
US (1) US11039133B2 (ja)
WO (1) WO2018235405A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021244586A1 (zh) * 2020-06-05 2021-12-09 杭州海康威视数字技术股份有限公司 编解码方法及装置

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113424530B (zh) * 2018-12-28 2024-05-24 索尼集团公司 图像处理装置和方法
CN110225339A (zh) * 2019-05-10 2019-09-10 上海德衡数据科技有限公司 一种hevc视频序列编解码加速方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013070707A1 (en) * 2011-11-07 2013-05-16 Qualcomm Incorporated Coding significant coefficient information in transform skip mode
US20170019685A1 (en) * 2014-04-23 2017-01-19 Sony Corporation Image processing apparatus and image processing method
US20170019668A1 (en) * 2014-04-23 2017-01-19 Sony Corporation Image processing apparatus and image processing method

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2503875B (en) * 2012-06-29 2015-06-10 Canon Kk Method and device for encoding or decoding an image
US20140169452A1 (en) * 2012-12-14 2014-06-19 Electronics And Telecommunications Research Institute Video encoding method and apparatus using the same
JP2014131270A (ja) 2012-12-28 2014-07-10 Panasonic Corp 画像符号化方法及び画像符号化装置
GB2509563A (en) * 2013-01-04 2014-07-09 Canon Kk Encoding or decoding a scalable video sequence using inferred SAO parameters

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013070707A1 (en) * 2011-11-07 2013-05-16 Qualcomm Incorporated Coding significant coefficient information in transform skip mode
US20170019685A1 (en) * 2014-04-23 2017-01-19 Sony Corporation Image processing apparatus and image processing method
US20170019668A1 (en) * 2014-04-23 2017-01-19 Sony Corporation Image processing apparatus and image processing method

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
ITU-T: "High efficiency video coding", RECOMMENDATION ITU-T H.265, no. H.265, April 2013 (2013-04-01), pages 34,35,51,52,158 - 160 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021244586A1 (zh) * 2020-06-05 2021-12-09 杭州海康威视数字技术股份有限公司 编解码方法及装置

Also Published As

Publication number Publication date
US11039133B2 (en) 2021-06-15
US20200195923A1 (en) 2020-06-18

Similar Documents

Publication Publication Date Title
JP6580648B2 (ja) 画像処理装置および記録媒体
US10003827B2 (en) Image processing device and image processing method
KR102005209B1 (ko) 화상 처리 장치와 화상 처리 방법
JP6521013B2 (ja) 画像処理装置および方法、プログラム、並びに記録媒体
WO2014002896A1 (ja) 符号化装置および符号化方法、復号装置および復号方法
JP5884313B2 (ja) 画像処理装置、画像処理方法、プログラム及び記録媒体
US20150036758A1 (en) Image processing apparatus and image processing method
WO2012063878A1 (ja) 画像処理装置と画像処理方法
WO2015053001A1 (ja) 画像処理装置及び画像処理方法
WO2015163046A1 (ja) 画像処理装置及び画像処理方法
WO2015146278A1 (ja) 画像処理装置及び画像処理方法
WO2015163047A1 (ja) 画像処理装置及び画像処理方法
JPWO2019003676A1 (ja) 画像処理装置と画像処理方法およびプログラム
WO2018235405A1 (ja) 画像処理装置と画像処理方法
WO2014148070A1 (ja) 画像処理装置及び画像処理方法
JP6217826B2 (ja) 画像処理装置及び画像処理方法
WO2017208549A1 (ja) 画像処理装置及び画像処理方法
WO2014050311A1 (ja) 画像処理装置及び画像処理方法
WO2012124406A1 (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: 18819893

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: 18819893

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: JP