WO2019208189A1 - 画像復号装置、および画像復号方法、並びにプログラム - Google Patents

画像復号装置、および画像復号方法、並びにプログラム Download PDF

Info

Publication number
WO2019208189A1
WO2019208189A1 PCT/JP2019/015378 JP2019015378W WO2019208189A1 WO 2019208189 A1 WO2019208189 A1 WO 2019208189A1 JP 2019015378 W JP2019015378 W JP 2019015378W WO 2019208189 A1 WO2019208189 A1 WO 2019208189A1
Authority
WO
WIPO (PCT)
Prior art keywords
pattern
replacement
unit
chromaticity
banding
Prior art date
Application number
PCT/JP2019/015378
Other languages
English (en)
French (fr)
Inventor
朝明 工藤
Original Assignee
ソニー株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ソニー株式会社 filed Critical ソニー株式会社
Publication of WO2019208189A1 publication Critical patent/WO2019208189A1/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/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • 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

  • the present disclosure relates to an image decoding device, an image decoding method, and a program. More specifically, an image decoding apparatus and an image decoding method for performing an encoding process capable of reducing striped pseudo-contours that tend to appear in a gentle gradation region of an image when decoding the encoded image, so-called banding, and an image decoding method , As well as programs.
  • AVC Advanced Video Coding
  • HEVC High Efficiency Video Coding
  • inter prediction coding interframe prediction
  • intra prediction coding intraframe prediction coding
  • banding of light and shade stripes may occur in the decoded image.
  • This banding composed of a striped pattern is likely to appear in a flat image area with little change in pixel value such as “sky” in the image, and becomes conspicuous as image quality degradation of the decoded image.
  • the present disclosure has been made in view of the above-described problems, for example, and performs image decoding that performs decoding processing that enables reduction of striped pseudo contours that appear in an image when decoding an encoded image, so-called banding.
  • An object is to provide an apparatus, an image decoding method, and a program.
  • the first aspect of the present disclosure is: A banding detection unit that detects banding from a block that is a processing unit in decoding processing of an encoded image;
  • the image decoding apparatus includes a pattern replacement unit that replaces a pixel value of a banding detection block with a replacement pattern.
  • the second aspect of the present disclosure is: An image decoding method executed in an image decoding device, A banding detection step in which the banding detection unit detects the banding from the block which is a processing unit in the decoding process of the encoded image;
  • the pattern replacement unit executes a pattern replacement step of replacing the pixel value of the banding detection block with a replacement pattern.
  • the third aspect of the present disclosure is: A program for executing an image decoding process in an image decoding device; A banding detection step for causing the banding detection unit to detect banding from a block which is a processing unit in the decoding process of the encoded image; The program replaces the pixel value of the banding detection block with the replacement pattern.
  • the program of the present disclosure is a program that can be provided by, for example, a storage medium or a communication medium provided in a computer-readable format to an information processing apparatus or a computer system that can execute various program codes.
  • a program in a computer-readable format, processing corresponding to the program is realized on the information processing apparatus or the computer system.
  • system is a logical set configuration of a plurality of devices, and is not limited to one in which the devices of each configuration are in the same casing.
  • a decoding process with reduced banding is realized.
  • a banding detection unit that detects banding from a block that is a processing unit in decoding processing of an encoded image
  • a pattern replacement unit that replaces the pixel value of the banding detection block with a replacement pattern.
  • the maximum and minimum values of brightness and chromaticity of the banding detection block, the minimum value, and the slope are detected, and the replacement pattern similar to the average value of the brightness and chromaticity, the minimum value and the slope, or the brightness and chromaticity individually
  • a replacement pattern similar to the maximum value, the minimum value, and the slope is selected, and the selected replacement pattern is corrected and replaced according to the setting of the banding detection block.
  • the CTU is divided into CUs (Coding Units) that are units of coding units.
  • the encoding process and the decoding process are executed for each CU.
  • a prediction mode is determined by a CU or a PU (Prediction Unit) set as a division unit thereof.
  • a CU is composed of one or more PUs.
  • intra-screen prediction intra prediction
  • inter-screen prediction inter prediction
  • which of these two prediction processes is applied is selected in units of CUs. Which one to select is determined based on the cost. For example, a method (low cost method) capable of reducing more data is selected by comparing the amount of data that can be reduced when encoding is performed by applying each prediction in each CU, which is each encoding unit. .
  • a block (left or upper block of a picture) in the vicinity of a block to be encoded (such as a CU) is used as a reference block, and a difference from the reference block is calculated and encoded. Processing is performed.
  • AVC and HEVC the following three prediction methods are defined according to which position pixel is used as a reference pixel for the encoding target block.
  • DC prediction and planar prediction are both methods of using pixels on the upper and left sides adjacent to the encoding target block, that is, pixels and blocks in a plurality of different directions, as reference pixels and reference blocks.
  • DC prediction the average value of the reference pixels on the upper side and the left side adjacent to the encoding target block is used as a prediction value.
  • planar prediction the plane approximate value of the reference pixels on the upper side and the left side adjacent to the encoding target block. Is used as a predicted value.
  • Directional (Angular) prediction is a method in which a reference pixel or reference block is a pixel or block in one specific direction with respect to a block to be encoded.
  • DC prediction and planar prediction pixels in two different directions on the upper side and the left side adjacent to the encoding target block are referred to.
  • directional prediction one pixel is specified for the encoding target block. Refer only to pixels or blocks in a specific direction.
  • This direction is defined as 33 directions in HEVC and 9 directions in AVC.
  • 1 is a diagram showing 33 directions of directional prediction defined in HEVC (H.265 / HEVC).
  • 33 types of prediction mode numbers 2 to 34 are defined for the constituent pixels of the encoding target block.
  • a block or a pixel located at a 45 ° position in the lower left direction of the constituent pixels of the encoding target block is used as a reference block or a reference pixel.
  • a block or a pixel at a position of 45 ° in the upper left direction of the constituent pixels of the encoding target block is used as a reference block or a reference pixel.
  • a block or a pixel at a position of 45 ° in the upper right direction of the constituent pixels of the encoding target block is used as a reference block or a reference pixel.
  • both AVC and HEVC use directional prediction in encoding processing, basically, a pixel in a direction having a pixel value with a small difference with respect to the pixel value of the encoding target block is selected as a reference pixel. Processing is performed.
  • a prediction mode number is defined. This number corresponds to the identifier of the prediction mode of HEVC intra-screen prediction (intra prediction), and the identifiers of the following prediction modes are defined.
  • Prediction mode number 0 is planar (Planar) prediction
  • Prediction mode number 1 is DC prediction
  • Prediction mode numbers 2 to 34 are directional predictions (Angular), It is.
  • prediction mode numbers 2 to 34 are associated with each other according to the direction of the reference pixel, as shown in FIG.
  • A DC prediction, (b) Planar prediction, (c) Directional prediction (c) Direction of prediction (c) Directional prediction Which prediction is used, that is, which prediction of the prediction mode numbers 0 to 34 is to be executed, is determined based on the cost, that is, the degree of code amount reduction, for each coding block. A method that can maximize the data reduction amount in units of blocks is selected and executed. Note that the cost is calculated based on, for example, the amount of encoded data when the difference between the encoded block and the reference block is encoded.
  • the lowest cost prediction mode is selected for each coding block, the difference between the coding block and the reference block is calculated, and coding processing such as frequency conversion of the difference data, quantization processing, etc. is executed.
  • inter prediction motion compensation between blocks of previous and subsequent frames (pictures) is performed in units of blocks (CU etc.) to be encoded, and differences between blocks between different frames are calculated. Calculation is performed, and encoding processing such as frequency conversion of difference data, quantization processing, or the like is executed.
  • banding When the encoded data generated by performing the image encoding process is decoded, a striped pseudo contour, so-called banding, may occur in a flat portion of the image or a gradation region where the gradation changes gradually.
  • banded banding as shown in (b) decoded image in FIG. 2 occurs.
  • This pseudo contour is likely to appear mainly in a flat portion of an image or a gradation region where the gradation changes gradually. This is due to the loss of data due to the quantization processing at the time of image encoding.
  • a pseudo contour as shown in FIG. 2B may appear.
  • the image decoding apparatus according to the present disclosure realizes a decoding process that reduces the occurrence of such pseudo contours.
  • FIG. 3 is a diagram illustrating a configuration example of the image decoding device 100 of the present disclosure.
  • the image decoding apparatus 100 receives the encoded image 10 and generates and outputs a decoded image 20 with reduced banding.
  • the banding reduction processing is executed by the banding reduction processing unit 200.
  • the banding reduction processing unit 200 detects a banding area from the decoded image obtained by the processes up to the previous stage, and performs a process of gently replacing the pixels in the banding area with replacement pattern data prepared in advance. Details of the banding reduction processing executed in the banding reduction processing unit 200 will be described later.
  • the image decoding apparatus 100 includes an entropy decoding unit 111, an inverse quantization unit 112, an inverse frequency conversion unit 113, an addition unit 114, an in-loop filter 115, a frame buffer 116, an intra prediction unit 121, and inter prediction.
  • Unit 122, mode switching unit 123, and banding reduction processing unit 200 includes
  • the image decoding unit 110 receives the encoded image 10 to be decoded, and generates and outputs a decoded image 20 with reduced banding.
  • the processing of the image decoding unit 110 is performed under the control of the control unit 150.
  • the encoded image 10 to be decoded is, for example, a moving image encoded by the AVC or HEVC encoding process described above.
  • the image decoding unit 110 is input in units of CU (Coding Unit), which is a unit of the above-described encoding unit, and executes decoding processing in units of CU.
  • CU Coding Unit
  • it is good also as a structure which performs the process per CTU (Coding Tree Unit) comprised from several CU.
  • the entropy decoding unit 111 performs an entropy decoding process that is an inverse process of the entropy encoding (variable length encoding process) applied in the encoding process, and returns the input codeword to the data before encoding.
  • the inverse quantization unit 112 inversely quantizes the quantized data in the same quantization step that is executed in the encoding process, and restores the frequency transformed data before the quantization.
  • the inverse quantization unit 112 outputs the restored frequency transform coefficient data to the inverse frequency transform unit 113.
  • the inverse frequency transform unit 113 performs an inverse frequency transform process on the frequency transform coefficient data input from the inverse quantization unit 112 to restore a residual signal (prediction error data) set as a quantization target.
  • the restored prediction error data is output to the adder 114.
  • the addition unit 114 adds the restored prediction error data input from the inverse frequency conversion unit 113 and the predicted image data input from the mode switching unit 123 to generate decoded image data (reconstructed image).
  • the adding unit 114 outputs the generated decoded image data to the in-loop filter 115 and the intra prediction unit 1121.
  • the in-loop filter 115 applies a distortion correction to the reconstructed image supplied from the addition unit 114 by applying a deblocking filter (DBF: De-Blocking Filter), a sample adaptive offset (SAO), or the like, pixel Image correction processing such as value correction is performed.
  • the deblocking filter (DBF) application process is a process for performing filtering processing on block boundaries of motion prediction and conversion processing in order to reduce block-like distortion due to motion compensation and conversion processing.
  • Sample adaptive offset (SAO) is a process of correcting a pixel value by adding a predetermined offset value to a pixel value in a block.
  • the filter processing result image (decoded image) that has been subjected to distortion removal, pixel value correction, and the like by the in-loop filter 115 is stored in the frame buffer 116.
  • the filter processing result image (decoded image) stored in the frame buffer 116 is supplied to the inter prediction unit 122 and the banding reduction processing unit 200.
  • the intra prediction unit 121 adds the decoded image data (reconstructed image) generated by the addition unit 114, that is, the restored prediction error data input from the inverse frequency conversion unit 113 and the predicted image data input from the mode switching unit 123. Decoded image data (reconstructed image) that is data is input, and intra prediction (intra prediction) processing using the decoded image data (reconstructed image) is executed.
  • the intra prediction unit 121 When the prediction mode information associated with the block (CU) to be decoded is the intra prediction mode, the intra prediction unit 121 performs the following three predictions described above with reference to FIG. (A) DC prediction (b) Planar prediction (c) Directional (Angular) prediction Intra prediction processing using any one of these methods is performed. Which of the above is used is determined according to prediction mode information associated with a block (CU) to be decoded. In addition, when utilizing directionality (Angle) prediction, the direction information is also acquired from the prediction mode information matched with the block (CU).
  • the inter prediction unit 122 When the prediction mode information associated with the block (CU) to be decoded is the inter prediction mode, the inter prediction unit 122 performs distortion removal and pixel value using the encoded image 10 to be decoded and the in-loop filter 115. Filter processing result images (decoded images) subjected to correction and the like are input from the frame buffer 116, and inter prediction processing (motion detection and motion compensation) using each image is executed.
  • the mode switching unit 123 feedback-inputs the prediction result of the intra prediction unit 121 to the addition unit 114 when the prediction mode information associated with the block (CU) to be decoded is the intra prediction mode.
  • the prediction mode information associated with the block (CU) to be decoded is the inter prediction mode
  • the prediction result of the inter prediction unit 122 is fed back to the addition unit 114.
  • the banding reduction processing unit 200 acquires a decoded image that is a filter processing result stored in the frame buffer 116, detects a banding area included in the decoded image, and prepares pixel values of the detected banding area in advance. Perform replacement using the replacement pattern. That is, pixel value replacement processing for reducing banding is performed.
  • the processing executed by the banding reduction processing unit 200 will be described in detail below.
  • FIG. 4 is a block diagram illustrating a configuration example of the banding reduction processing unit 200 according to the first embodiment.
  • the banding reduction processing unit 200 includes a banding detection unit 210, a luminance maximum value, a minimum value, a gradient calculation unit 211, a chromaticity maximum value, a minimum value, a gradient calculation unit 212, and a luminance and chromaticity maximum.
  • the banding detection unit 210 acquires a decoded image that is a filter processing result stored in the frame buffer 116, and detects a banding region included in the decoded image. A region where banding occurs is detected by scanning the constituent pixels of the decoded image. Banding detection is performed by existing methods. For example, by performing a process of comparing a difference between a certain pixel and surrounding pixels with a threshold value or the like, it is determined whether or not it is a banding area, and the banding area is detected.
  • the pixel range to be scanned that is, the detection unit of banding presence / absence is performed in units of CU (coding unit) which is a unit of encoding and decoding, for example. Alternatively, it may be performed in CTU (Coding Tree Unit) units including a plurality of CUs, or in other region units.
  • CU Coding unit
  • CTU Coding Tree Unit
  • a processing unit composed of a CU or CTU and other area units will be described as a “block”.
  • the banding detection unit 210 outputs a block for which banding is not detected via the synthesis unit 219 as it is. With respect to the block in which banding is detected in the banding detection unit 210, the replacement process of the block constituent pixels is executed using the replacement pattern stored in the replacement pattern storage unit 214 and is output via the synthesis unit 219.
  • the banding detection unit 210 For the blocks in which banding is detected by the banding detection unit 210, first, the luminance maximum value, minimum value, inclination calculation unit 211, and the chromaticity maximum value, minimum value, inclination calculation unit 212, the luminance of the constituent pixels of the block And detection and calculation of the maximum value (max), minimum value (min), and slope (slope) of chromaticity.
  • FIG. 5 shows an example of the configuration of the luminance maximum value, minimum value, inclination calculation unit 211, and chromaticity maximum value, minimum value, inclination calculation unit 212.
  • the luminance maximum value, minimum value, and inclination calculation unit 211 and the chromaticity maximum value, minimum value, and inclination calculation unit 212 are all shown in FIG. 5 and have the same configuration.
  • the image signal is composed of YCbCr signals
  • the luminance maximum value, minimum value, and inclination calculation unit 211 performs analysis on the luminance signal Y
  • the chromaticity maximum value, minimum value, and inclination calculation unit 212 The degree signals Cb and Cr are analyzed.
  • the luminance maximum value, minimum value, inclination calculation unit 211, chromaticity maximum value, minimum value, inclination calculation unit 212 are an adjacent pixel average value calculation unit 231, memory 232, maximum value, minimum value. It has a calculation unit 233 and an inclination calculation unit 234, and generates and outputs maximum value / minimum value data 241 and inclination data 242 of luminance or chromaticity.
  • the data output destination is the maximum and minimum values of brightness and chromaticity shown in FIG.
  • the adjacent pixel average value calculation unit 231 calculates an average value of a plurality of pixels such as four pixels of a block (CU etc.) in which banding is detected.
  • a luminance maximum value, minimum value, and inclination calculation unit 211 an average value of luminance is calculated.
  • chromaticity maximum value, minimum value, and inclination calculation unit 212 an average value of chromaticity is calculated.
  • the calculated average value is stored in the memory 232 in association with coordinate information indicating the pixel position.
  • the maximum value / minimum value calculation unit 233 acquires a plurality of average value data for one block from the memory 232, and selects the maximum value and the minimum value from the acquired data. Then, the maximum value and minimum value data 241 are output.
  • the maximum value and minimum value data calculated by the maximum value and minimum value calculation unit 233 are also supplied to the inclination calculation unit 234.
  • the inclination calculation unit 234 obtains an inclination angle between the maximum value and the minimum value of luminance or chromaticity.
  • the inclination is an angle formed by a vector having a direction from the maximum value region to the minimum value region in the block. As shown in FIG. 5, the inclination angle ⁇ from the vertical axis (Y axis) of the vector from the maximum value coordinate (x1, y1) to the minimum value coordinate (x2, y2) is obtained, and this is calculated as the processing target block. Is output as the inclination data 242.
  • the inclination calculation unit 234 obtains the length of two sides sandwiching the right angle of a right triangle having two points of the maximum value and the minimum value from the coordinate position, and obtains the inclination ⁇ from the inverse trigonometric function atan.
  • the luminance maximum value, minimum value, and inclination calculation unit 211 calculates the maximum value, minimum value, and inclination of the luminance of the processing target block using the configuration shown in FIG.
  • the maximum value, the minimum value, and the average gradient value calculation unit 213 are output.
  • the chromaticity maximum value, minimum value, and inclination calculation unit 212 calculates the maximum value, minimum value, and inclination of the chromaticity of the processing target block using the configuration shown in FIG. Are output to the maximum and minimum values of the luminance and chromaticity shown in FIG.
  • the chromaticity maximum value, minimum value, and inclination calculation unit 212 individually sets the maximum value, minimum value, and inclination for each chromaticity signal CbCr. It may be calculated or an average value may be calculated.
  • the luminance and chromaticity maximum value, minimum value, and inclination average value calculation unit 213 shown in FIG. 4 are the luminance maximum value, minimum value, and inclination calculation unit 211, and the luminance maximum value, minimum value, inclination, and chromaticity maximum value,
  • the chromaticity maximum value, the minimum value, and the gradient are input from the minimum value / gradient calculation unit 212, and the maximum value average, minimum value average, and gradient average of luminance and chromaticity are calculated.
  • the maximum value, minimum value, and average gradient value calculation unit 213 of luminance and chromaticity calculate the average value of the luminance, chromaticity maximum value, minimum value, and gradient of the processing target block, and use the calculated values as approximate pattern search units. To 215.
  • the luminance and chromaticity maximum value, minimum value, and inclination average value calculation unit 213 calculates the maximum value of luminance and chromaticity and the average value of the minimum value and inclination according to the following calculation formulas, for example.
  • Luminance chromaticity maximum value average value (luminance maximum value + chromaticity maximum value) / 2
  • Luminance chromaticity minimum value average value (luminance minimum value + chromaticity minimum value) / 2
  • Luminance chromaticity gradient average value (luminance gradient ( ⁇ 1) + chromaticity gradient ( ⁇ 2)) / 2
  • FIG. 6 shows an example of processing for calculating the luminance chromaticity gradient average value.
  • FIG. 6A shows a vector indicating the luminance gradient and a vector indicating the chromaticity gradient.
  • the maximum value, the minimum value, and the average gradient value calculation unit 213 of the luminance and chromaticity calculate an average vector of these two vectors and set the gradient as the average luminance and chromaticity gradient value.
  • the maximum value, minimum value, and average gradient value calculation unit 213 for luminance and chromaticity calculate the average value of the maximum value, minimum value, and gradient of the luminance, chromaticity, and gradient of the processing target block.
  • the result is output to the approximate pattern search unit 215.
  • the approximate pattern search unit 215 is based on the luminance, chromaticity maximum value, minimum value, and average value of inclination of the processing target block input from the maximum value, minimum value, and inclination average value calculation unit 213 of luminance and chromaticity.
  • a replacement pattern close to these data is selected from the replacement pattern storage unit 214.
  • the replacement pattern storage unit 214 stores a plurality of replacement patterns in which image data without banding having a gradual change in pixel value or output values for generating such image data are set.
  • FIG. 7 shows examples of the following eight replacement patterns stored in the replacement pattern storage unit 214.
  • Pattern 1 replacement pattern having a setting slope in which luminance and chromaticity values decrease in the upper left 45 ° direction
  • Pattern 2 setting inclination in which the luminance and chromaticity values decrease in the upward vertical direction
  • Pattern 3 replacement pattern having a setting slope that lowers the brightness and chromaticity values in the upper right 45 ° direction
  • pattern 4 setting that lowers the brightness and chromaticity values in the horizontal right direction
  • Pattern 5 replacement pattern having a setting slope in which luminance and chromaticity values decrease in the lower right 45 ° direction (6)
  • Pattern 6 setting inclination in which the luminance and chromaticity values decrease in the vertical downward direction (7)
  • Pattern 7 replacement pattern having a setting slope that lowers the luminance and chromaticity values in the lower left 45 ° direction.
  • Pattern 8 the luminance and chromaticity values decrease in the horizontal left direction.
  • Each of these replacement patterns is an image in which the pixel value change is gently set and there is no banding.
  • the replacement pattern storage unit 214 stores a large number of replacement patterns in addition to these eight patterns.
  • the approximate pattern search unit 215 is based on the luminance, chromaticity maximum value, minimum value, and average value of inclination of the processing target block input from the maximum value, minimum value, and inclination average value calculation unit 213 of luminance and chromaticity.
  • a replacement pattern close to these data is selected from the replacement pattern storage unit 214, and the selected pattern is output to the pattern correction unit 216.
  • the pattern correction unit 216 corrects the replacement pattern input from the approximate pattern search unit 215, generates an image to be replaced with the banding region of the decoded image, and executes the replacement process. By this processing, the banding area of the decoded image is replaced with an image without banding and output.
  • the replacement pattern storage unit 214 may be set to store image data without banding having a gradual change in pixel value, but output for generating image data without banding having a gradual change in pixel value. It may be set to store a replacement pattern in which value ratio data is set. A specific example is shown in FIG.
  • the data shown in FIG. 8A is an example of a replacement pattern in which ratio data of output values for generating image data without banding is set.
  • the example shown in the figure is an example of a block of 8 ⁇ 8 pixels.
  • This is an example of a replacement pattern that is gently changed. That is, it is a pattern having an output value (pixel value) change without banding.
  • the maximum value of this replacement pattern is 1.0 and the minimum value is 0.0.
  • the luminance image shown in FIG. 8 (2) and the chromaticity image shown in FIG. 8 (3) are the luminance image having the same luminance and chromaticity output ratio as the replacement pattern shown in FIG. 8 (1), and the chromaticity image. Become. Further, by synthesizing the luminance image shown in FIG. 8 (2) and the chromaticity image shown in FIG. 8 (3), an output image shown in FIG. 8 (4) is obtained.
  • the output image shown in FIG. 8 (4) is an output image having the same luminance and chromaticity output ratio as the replacement pattern shown in FIG. 8 (1).
  • the pattern correction unit 216 shown in FIG. 4 executes this correction process.
  • the pattern correction unit 216 corrects the replacement pattern input from the approximate pattern search unit 215, generates an image (corrected replacement pattern) to be replaced with the banding region of the decoded image, and executes the replacement process.
  • a specific example of a correction replacement pattern generation process executed in the pattern correction unit 216, that is, a process of generating an image (correction replacement pattern) to be replaced with a banding region of a decoded image will be described with reference to FIG.
  • the replacement pattern shown in FIG. 8A is a replacement pattern stored in the replacement pattern storage unit 214, and the output (chromaticity and luminance) of each pixel is set with a coefficient (coef) indicating a ratio of 0 to 1 It is a pattern.
  • the maximum value is 1 and the minimum value is 0.
  • the coefficient (coef) is shown only up to one decimal place, but in actual operation, various settings can be made for the number of decimal places.
  • the pattern correction unit 216 corrects the replacement pattern shown in FIG. 8A and generates a corrected replacement pattern that is finally output. .
  • the pattern correction unit 216 When generating a corrected replacement pattern, the pattern correction unit 216 firstly calculates the luminance, chromaticity maximum value (max), minimum value (min), and average value of the slope of a block (banding detection block) to be replaced by the pattern. Are input from the maximum and minimum values of luminance and chromaticity, and the average value of slopes 213. The pattern correction unit 216 uses these pieces of input information to calculate pixel values (luminance, chromaticity) to be set for each pixel of the correction replacement pattern using the following (Equation 1).
  • Pixel value (luminance, chromaticity) min + (max ⁇ min) ⁇ coef (Expression 1)
  • max is the average value of the luminance maximum value and chromaticity maximum value of the banding detection block
  • min is an average value of the minimum luminance value and the minimum chromaticity value of the banding detection block
  • coef is a coefficient set for each pixel of the replacement pattern.
  • the example shown in FIG. 8 is an example in which the processing target block (CU) is 8 ⁇ 8 pixels, but the banding detection block that is the processing target block is 16 ⁇ 16 pixels and is stored in the replacement pattern storage unit 214. If the replacement pattern is 8 ⁇ 8 pixels, the replacement pattern is enlarged two times vertically and horizontally. Conversely, if the banding detection block that is the processing target block is 4 ⁇ 4 pixels and the replacement pattern stored in the replacement pattern storage unit 214 is 8 ⁇ 8 pixels, the replacement pattern is reduced to 1/2 in the vertical and horizontal directions.
  • the pattern correction unit 216 generates a correction replacement pattern, that is, an image (correction replacement pattern) to be replaced with the banding area of the decoded image by these processes.
  • FIG. 9 An example of other replacement patterns stored in the replacement pattern storage unit 214 is shown in FIG.
  • the replacement pattern shown in FIG. 9 is an example of a replacement pattern in which ratio data of output values for generating image data without banding having a gradual change in pixel value is set, as described with reference to FIG. .
  • the replacement pattern storage unit 214 stores replacement patterns of various settings.
  • each of the replacement patterns stored in the replacement pattern storage unit 214 is a replacement pattern in which an output value without banding is set. This is a replacement pattern in which the pixel output value is gently changed in the range of 0 to 1.0, and is a pattern having an output value (pixel value) change without occurrence of banding.
  • the 8 ⁇ 8 pixel block shown in FIG. 10 (step S01) is a block that forms a decoded image, and is a banding detection block in which banding is detected.
  • the arrow in the block is an arrow indicating a vector having the gradient of the luminance chromaticity gradient average value. This inclination has an inclination of 45 ° in the lower right direction.
  • the pattern shown in FIG. 10 is one replacement pattern stored in the replacement pattern storage unit 214.
  • This replacement pattern is substantially the same as the pixel value setting mode of the banding detection block in the decoded image shown in FIG. 10 (step S01), and only the size is different.
  • the pattern correction unit 216 changes the size of the replacement pattern shown in FIG. 10 (step S02) to the banding detection block in the decoded image shown in FIG. 10 (step S01). Perform size adjustment to fit the size. Specifically, the size of the replacement pattern is reduced or enlarged. Reduction is performed by thinning out pixels at regular intervals. The enlargement is performed by inserting a new pixel having an average value of the values of both pixels between the pixels.
  • the replacement pattern after the size adjustment is output by replacing it with a banding detection block in the decoded image shown in FIG. 10 (step S01).
  • the actual replacement process is executed by the luminance pattern replacement unit 217 and the chromaticity pattern replacement unit 218 shown in FIG.
  • the luminance pattern replacement unit 217 inputs the banding detection block in the decoded image from the frame buffer 116, and this banding detection block has the same luminance output distribution as the corrected replacement pattern generated by the pattern correction unit 216.
  • a process of replacing with a signal image is executed. Further, the block (luminance signal image block) after the replacement process is output to the chromaticity pattern replacement unit 218.
  • the chromaticity pattern replacement unit 218 outputs the same chromaticity as the corrected replacement pattern generated by the pattern correction unit 216 to the block (luminance signal image block) after the replacement processing of only the luminance signal input from the luminance pattern replacement unit 217.
  • a process of superimposing a chromaticity signal image having a distribution is executed.
  • the block after the superimposition processing is output to the combining unit 219 and output as an image frame combined with other blocks.
  • the replacement pattern storage unit 214 includes replacement patterns that have substantially the same brightness, maximum value, minimum value, and average slope value in the banding area of the decoded image, but only different sizes. 5 is an example of a replacement pattern correction process when acquired from the above.
  • the replacement pattern acquired from the replacement pattern storage unit 214 as the pattern most similar to the brightness, maximum value, minimum value, and average value of the slope of the banding area block of the decoded image is It is an example of a correction process in the case of a pattern that does not match the luminance, chromaticity maximum value, minimum value, and inclination average value of the banding area block.
  • the pattern correction unit obtains the maximum value, minimum value, and inclination of the replacement pattern acquired from the replacement pattern storage unit 214, the average value of the luminance, chromaticity maximum value, minimum value, and inclination of the banding area block of the decoded image. It is necessary to perform a correction process that approaches
  • the decoded image block shown in FIG. 11 (1) is a block constituting a decoded image, and is a banding detection block in which banding is detected.
  • the arrow in the block is an arrow indicating a vector having the gradient of the luminance chromaticity gradient average value. This inclination has an inclination of 45 ° in the lower left direction.
  • the pattern shown in FIG. 11B is one replacement pattern stored in the replacement pattern storage unit 214.
  • This pattern is a replacement pattern having a setting slope in which the values of luminance and chromaticity are lowered in the lower left 45 ° direction.
  • the inclination directions of the banding detection blocks in the decoded image shown in FIG. 11A are substantially the same, but the inclination angles are different. That is, the maximum value and the minimum value are different, and the slopes are also different.
  • the pattern correction unit 216 converts the maximum value, minimum value, and inclination of the replacement pattern shown in FIG. 11 (2) into the banding in the decoded image shown in FIG. 11 (1).
  • a pattern correction process for matching the size of the detection block is executed.
  • the replacement pattern after this correction processing is the replacement pattern shown in FIG.
  • the replacement pattern shown in FIG. 11 (3) is replaced with the banding detection block in the decoded image shown in FIG. 11 (1) and output.
  • the banding detection block in the decoded image is replaced with a replacement pattern image without banding, and a high-quality decoded image without banding can be output.
  • Step S101 banding detection processing is executed. This process is a process executed in the banding detection unit 210 of the banding reduction processing unit 200 shown in FIG.
  • the banding detection unit 210 acquires a decoded image that is a filter processing result stored in the frame buffer 116, and detects a banding region included in the decoded image.
  • a region where banding occurs is detected by scanning the constituent pixels of the decoded image. For example, by performing a process of comparing a difference between a certain pixel and surrounding pixels with a threshold value or the like, it is determined whether or not it is a banding area, and the banding area is detected.
  • step S101 for the banding area block in which banding is detected, the processing in step S102 and subsequent steps is executed.
  • the process of the banding reduction processing unit 200 ends without performing the processes in and after step S102. For this block, the block is output as it is.
  • Step S102 In step S101, for the banding area block in which banding is detected, the processing in step S102 and subsequent steps is executed. In step S102, for the block in which banding is detected, the luminance and chromaticity maximum value (max), minimum value (min), and slope (slope) of the constituent pixels of the block are detected and calculated.
  • This processing is executed by the luminance maximum value, minimum value, inclination calculation unit 211 and chromaticity maximum value, minimum value, inclination calculation unit 212 of the banding reduction processing unit 200 shown in FIG.
  • the luminance maximum value, minimum value, inclination calculation unit 211 and chromaticity maximum value, minimum value, inclination calculation unit 212 apply the configuration described above with reference to FIG. Further, detection and calculation of the maximum value (max), minimum value (min), and slope (slope) of chromaticity are executed. The detailed sequence of step S102 will be described later with reference to the flowchart shown in FIG.
  • Step S103 Next, in step S103, the maximum value and minimum value of luminance and chromaticity and the average value of inclination are calculated. This process is executed by the maximum and minimum values of brightness and chromaticity of the banding reduction processing unit 200 shown in FIG.
  • the maximum value, minimum value, and average gradient value calculation unit 213 of luminance and chromaticity calculate the average value of the luminance, chromaticity maximum value, minimum value, and gradient of the processing target block, and use the calculated values as approximate pattern search units.
  • the luminance and chromaticity maximum value, minimum value, and inclination average value calculation unit 213 calculates the maximum value of luminance and chromaticity and the average value of the minimum value and inclination according to the following calculation formulas, for example.
  • Luminance chromaticity maximum value average value (luminance maximum value + chromaticity maximum value) / 2
  • Luminance chromaticity minimum value average value (luminance minimum value + chromaticity minimum value) / 2
  • Luminance chromaticity gradient average value (luminance gradient ( ⁇ 1) + chromaticity gradient ( ⁇ 2)) / 2
  • Step S104 a replacement pattern that is most similar to the block composed of the maximum value, minimum value, and average gradient value calculated in step S103 is selected from the replacement pattern storage unit.
  • the approximate pattern search unit 215 is based on the luminance, chromaticity maximum value, minimum value, and average value of inclination of the processing target block input from the maximum value, minimum value, and inclination average value calculation unit 213 of luminance and chromaticity.
  • a replacement pattern closest to these data is selected from the replacement pattern storage unit 214.
  • the replacement pattern storage unit 214 stores various patterns of replacement patterns.
  • the replacement pattern storage unit 214 stores image data without banding having a gradual change in pixel value, or a plurality of replacement patterns in which output values for generating such image data are set.
  • the approximate pattern search unit 215 is based on the luminance, chromaticity maximum value, minimum value, and average value of inclination of the processing target block input from the maximum value, minimum value, and inclination average value calculation unit 213 of luminance and chromaticity. A replacement pattern closest to these data is selected from the replacement pattern storage unit 214.
  • Step S105 a process of adjusting the output (n) of the replacement pattern selected in step S104 to the output (average value of luminance and chromaticity) (b) of the banding detection block is performed. Specifically, the following processing is performed.
  • Maximum output value of replacement pattern (n) maximum output value of banding detection block (b)
  • Output minimum value of replacement pattern (n) Minimum output value of banding detection block (b)
  • step S105 first, the process of matching the output maximum value (n) of the replacement pattern with the output maximum value (b) of the banding detection block and the output minimum value (n) of the replacement pattern are set to the output minimum value of the banding detection block. A process for matching with (b) is performed.
  • the pattern correction unit 216 replaces the chromaticity, the minimum value, and the maximum value of the replacement pattern input from the approximate pattern search unit 215, and adjusts the gradient of the entire gradation. This process is, for example, the process described above with reference to FIG. 8, and the maximum value and the minimum value are adjusted while the direction of the inclination remains unchanged.
  • the replacement pattern stored in the replacement pattern storage unit 214 is a coefficient (coef) indicating the ratio of 0 to 1 for the output (chromaticity, luminance) of each pixel.
  • the output value of each pixel can be determined according to (Equation 1) described above.
  • step S106 the replacement process is performed by adjusting the size of the replacement pattern.
  • This process is a process executed by the pattern correction unit 216, the luminance pattern replacement unit 217, and the chromaticity pattern replacement unit 218 shown in FIG.
  • the size adjustment in the pattern correction unit 216 is a process similar to the process described above with reference to FIG. As shown in FIG. 10 (step S03), the pattern correction unit 216 sets the size of the replacement pattern shown in FIG. 10 (step S02) to the size of the banding detection block in the decoded image shown in FIG. 10 (step S01). Perform the size adjustment to fit.
  • the replacement pattern is enlarged two times vertically and horizontally.
  • the banding detection block that is the processing target block is 4 ⁇ 4 pixels and the replacement pattern stored in the replacement pattern storage unit 214 is 8 ⁇ 8 pixels, the replacement pattern is reduced to 1 ⁇ 2 in the vertical and horizontal directions, etc. Perform size adjustment for.
  • the replacement pattern after the size adjustment is replaced with a banding detection block in the decoded image shown in FIG. 10 (step S01) and output.
  • the actual replacement process is executed by the luminance pattern replacement unit 217 and the chromaticity pattern replacement unit 218 shown in FIG.
  • the luminance pattern replacement unit 217 inputs the banding detection block in the decoded image from the frame buffer 116, and this banding detection block has the same luminance output distribution as the corrected replacement pattern generated by the pattern correction unit 216.
  • a process of replacing with a signal image is executed. Further, the block (luminance signal image block) after the replacement process is output to the chromaticity pattern replacement unit 218.
  • the chromaticity pattern replacement unit 218 outputs the same chromaticity as the corrected replacement pattern generated by the pattern correction unit 216 to the block (luminance signal image block) after the replacement processing of only the luminance signal input from the luminance pattern replacement unit 217.
  • a process of superimposing a chromaticity signal image having a distribution is executed.
  • the block after the superimposition processing is output to the combining unit 219 and output as an image frame combined with other blocks.
  • Step S107 The process of step S107 is an option, and is a filter process for the image output from the synthesis unit 219 of the banding reduction processing unit 200 shown in FIG. Although not shown in FIG. 4, a filter processing unit for inputting the output of the synthesis unit 219 is provided, and the filter processing unit executes this filter processing.
  • the filter processing unit performs a blurring process that makes the boundary between blocks inconspicuous. For example, there may be a difference in chromaticity or luminance at the boundary between a block that is replaced by a replacement pattern and an existing block that is not adjacent to the block. Filtering is performed on this boundary to correct the boundary portion so that it smoothly transitions.
  • the banding appearing in the decoded image is output by being replaced with a replacement pattern without banding, and the high-quality decoding with the banding eliminated or reduced.
  • An image can be output.
  • step S102 of the flow shown in FIG. 12 that is, the luminance and chromaticity maximum value (max) and minimum value (min) of the constituent pixels of the banding detection block.
  • maximum the luminance and chromaticity maximum value
  • min minimum value
  • This process is executed by the luminance maximum value, minimum value, and inclination calculation unit 211 and the chromaticity maximum value, minimum value, and inclination calculation unit 212 of the banding reduction processing unit 200 shown in FIG.
  • the luminance maximum value, minimum value, inclination calculation unit 211, and chromaticity maximum value, minimum value, inclination calculation unit 212 have the configuration described above with reference to FIG.
  • the maximum value (max), the minimum value (min), and the slope (slope) are detected and calculated.
  • Step S121 First, in step S121, a block (CU or the like) to be processed is acquired from the frame buffer 116.
  • Step S122 First, in step S122, the average values (luminance, chromaticity) of the four adjacent pixels of the acquired processing block are sequentially calculated and stored in the memory together with the pixel position coordinates.
  • This process is a process executed by the adjacent pixel average value calculation unit 231 shown in FIG.
  • the adjacent pixel average value calculation unit 231 calculates an average value of a plurality of pixels such as four pixels of a block (such as CU) in which banding is detected.
  • a block such as CU
  • an average value of luminance is calculated.
  • chromaticity maximum value, minimum value, and inclination calculation unit 212 an average value of chromaticity is calculated.
  • the calculated average value is stored in the memory 232 in association with coordinate information indicating the pixel position.
  • Step S123 it is determined whether or not the average value calculation processing in step S122 has been completed for all pixels of the processing target block. If not completed, the process returns to step S122 to execute processing for unprocessed pixels.
  • step S122 If it is determined that the average value calculation process in step S122 has been completed for all pixels in the processing target block, the process proceeds to step S124.
  • Step S124 comparison processing of average values (luminance, chromaticity) in units of four pixels is performed, and the maximum value and the minimum value are calculated.
  • This process is a process executed by the maximum value / minimum value calculation unit 233 shown in FIG.
  • the maximum value / minimum value calculation unit 233 acquires a plurality of average value data for one block from the memory 232, selects the maximum value and the minimum value from the acquired data, and in step S125, the maximum value / minimum value Output as data 241.
  • the data output destination is the maximum and minimum values of brightness and chromaticity shown in FIG.
  • step S126 the angle ⁇ of the vector from the maximum value to the minimum value is calculated using the maximum and minimum values of the average values (luminance and chromaticity) in units of four pixels and the coordinate positions thereof.
  • This process is a process executed by the inclination calculation unit 234 shown in FIG.
  • the inclination calculation unit 234 obtains an inclination angle between the maximum value and the minimum value of luminance or chromaticity.
  • the inclination is an angle formed by a vector having a direction from the maximum value region to the minimum value region in the block.
  • the inclination angle ⁇ from the vertical axis (Y axis) of the vector from the maximum value coordinate (x1, y1) to the minimum value coordinate (x2, y2) is obtained, and this is calculated as the processing target block. Is output as the inclination data 242.
  • the inclination calculation unit 234 obtains the length of two sides sandwiching the right angle of a right triangle having two points of the maximum value and the minimum value from the coordinate position, and obtains the inclination ⁇ from the inverse trigonometric function atan.
  • the inclination calculation unit 234 outputs the calculated inclination as inclination data 242 in step S125.
  • the data output destination is the maximum and minimum values of brightness and chromaticity shown in FIG. After this process, the process of step S103 of the flow shown in FIG. 12 is executed.
  • FIG. 14 is a block diagram illustrating a configuration example of the banding reduction processing unit 200 according to the second embodiment.
  • the banding reduction processing unit 200 includes a banding detection unit 210, a luminance maximum value, a minimum value, a gradient calculation unit 211, a chromaticity maximum value, a minimum value, a gradient calculation unit 212, a replacement pattern storage unit 214, and a luminance. It has an approximate pattern search unit 251, a chromaticity approximate pattern search unit 252, a luminance pattern correction unit 261, a chromaticity pattern correction unit 262, a luminance pattern replacement unit 217, a chromaticity pattern replacement unit 218, and a synthesis unit 219.
  • the replacement unit 218 and the synthesis unit 219 have the same configuration as the configuration illustrated in FIG. 4 described as the first embodiment.
  • the approximate pattern search unit 252 is configured as two search units, and the pattern correction unit 216 is used as two correction units, a luminance pattern correction unit 261 and a chromaticity pattern correction unit 262.
  • the banding detection unit 210 acquires a decoded image that is a filter processing result stored in the frame buffer 116, and detects a banding region included in the decoded image. A region where banding occurs is detected by scanning the constituent pixels of the decoded image. For example, by performing a process of comparing a difference between a certain pixel and surrounding pixels with a threshold value or the like, it is determined whether or not it is a banding area, and the banding area is detected. This process is the same as the process executed by the banding detection unit 210 in the first embodiment described with reference to FIG.
  • the luminance maximum value, minimum value, inclination calculation unit 211 and chromaticity maximum value, minimum value, inclination calculation unit 212 apply the configuration described above with reference to FIG. Further, detection and calculation of the maximum value (max), minimum value (min), and slope (slope) of chromaticity are executed. This processing is the same as the processing executed by the luminance maximum value, minimum value, inclination calculation unit 211 and the chromaticity maximum value, minimum value, inclination calculation unit 212 in the first embodiment described with reference to FIG. is there.
  • the maximum value, the minimum value, and the gradient average value calculation unit 213 described in the first embodiment are not provided, and the maximum value, the minimum value, and the average value of the gradient are determined. No calculation is performed.
  • the maximum value (max), the minimum value (min), and the slope (slope) data of the constituent pixels of the block calculated by the brightness calculation unit 211 are output to the brightness approximate pattern search unit 251. .
  • the luminance approximate pattern search unit 251 selects from the replacement pattern storage unit 214 a replacement pattern that is most similar to the block having the input value, that is, the maximum value, the minimum value, and the gradient of the luminance of the constituent pixels of the block.
  • the chromaticity maximum value, the minimum value, and the chromaticity maximum value (max), minimum value (min), and gradient (slope) data of the constituent pixels of the block calculated by the gradient calculation unit 212 are stored in the chromaticity approximate pattern search unit. It is output to 252.
  • the chromaticity approximate pattern search unit 252 selects from the replacement pattern storage unit 214 a replacement pattern that is most similar to the block having the input value, that is, the maximum value, minimum value, and inclination of the chromaticity of the constituent pixels of the block.
  • the replacement pattern selected from the replacement pattern storage unit 214 by the luminance approximate pattern search unit 251, that is, the replacement pattern most similar to the block composed of the maximum value, the minimum value, and the gradient of the block configuration pixel is input to the luminance pattern correction unit 261. Is output.
  • the replacement pattern selected from the replacement pattern storage unit 214 by the chromaticity approximate pattern search unit 252, that is, the replacement pattern most similar to the block composed of the maximum value, the minimum value, and the inclination of the block constituent pixels is the chromaticity.
  • the data is output to the pattern correction unit 262.
  • the luminance pattern correction unit 261 corrects the replacement pattern input from the luminance approximate pattern search unit 251 and generates a luminance image to be replaced with the banding region of the decoded image.
  • the chromaticity pattern correction unit 262 corrects the replacement pattern input from the chromaticity approximate pattern search unit 252 and generates a chromaticity image to be replaced with the banding region of the decoded image.
  • the luminance pattern correction unit 261 performs a correction process for matching the maximum value, minimum value, inclination, and size of the replacement pattern of only luminance data with the luminance data of the banding area of the decoded image to be replaced.
  • the chromaticity pattern correction unit 262 performs a correction process to match the maximum value, minimum value, inclination, and size of the replacement pattern of only chromaticity data with the chromaticity data of the banding area of the decoded image to be replaced.
  • the luminance pattern replacement unit 217 receives the banding detection block in the decoded image from the frame buffer 116, and the banding detection block has the same luminance output distribution as the corrected luminance replacement pattern generated by the luminance pattern correction unit 261.
  • a process of replacing with a luminance signal image is executed. Further, the block (luminance signal image block) after the replacement process is output to the chromaticity pattern replacement unit 218.
  • the chromaticity pattern replacement unit 218 adds the corrected chromaticity replacement pattern generated by the chromaticity pattern correction unit 262 to the block after the replacement processing of only the luminance signal input from the luminance pattern replacement unit 217 (luminance signal image block). A process of superimposing chromaticity signal images having the same chromaticity output distribution is executed. Furthermore, the block after the superimposition processing is output to the combining unit 219 and output as an image frame combined with other blocks.
  • the processing for the luminance data and the chromaticity data is individually executed. That is, a luminance replacement pattern and a chromaticity replacement pattern are generated separately, and then these data are superimposed (synthesized) to generate a final replacement pattern for replacement.
  • FIG. 15 shows a specific processing example.
  • FIG. 15 shows the following data.
  • (1) Replacement pattern P1 (2) Replacement pattern P2 (3) Luminance replacement pattern YP1 (4) Chromaticity replacement pattern CP2 (5) Luminance chromaticity replacement pattern YCP
  • the replacement pattern P1 and (2) the replacement pattern P2 are replacement patterns stored in the replacement pattern storage unit 214.
  • the replacement pattern P1 corresponds to the replacement pattern selected by the luminance approximate pattern search unit 251 from the replacement pattern storage unit 214. That is, this is a replacement pattern that is most similar to a block consisting of the maximum value, minimum value, and slope of the luminance of the block constituent pixels.
  • the replacement pattern P2 corresponds to the replacement pattern selected from the replacement pattern storage unit 214 by the chromaticity approximate pattern search unit 252. That is, the replacement pattern is most similar to a block composed of the maximum value, the minimum value, and the gradient of the chromaticity of the block constituent pixels.
  • the luminance replacement pattern YP1 is luminance replacement pattern data generated by the luminance pattern correction unit 261.
  • Luminance replacement pattern YP1 generated by setting luminance data in replacement pattern P1 and performing correction processing to match the maximum value, minimum value, inclination, and size with the luminance data of the banding area of the decoded image to be replaced It is.
  • the chromaticity replacement pattern CP2 is chromaticity replacement pattern data generated by the chromaticity pattern correction unit 262.
  • Chromaticity data generated by setting chromaticity data in the replacement pattern P2 and performing correction processing to match the maximum value, minimum value, inclination, and size with the chromaticity data of the banding area of the decoded image to be replaced This is the replacement pattern CP2.
  • the luminance replacement pattern YP1 is output to the luminance pattern replacement unit 217.
  • the luminance pattern replacement unit 217 inputs a banding detection block in the decoded image from the frame buffer 116, and executes a process of replacing this banding detection block with (3) the luminance replacement pattern YP1 generated by the luminance pattern correction unit 261. To do. Further, the block (luminance signal image block) after the replacement process is output to the chromaticity pattern replacement unit 218.
  • the chromaticity pattern replacement unit 218 (4) the chromaticity replacement pattern CP2 generated by the chromaticity pattern correction unit 262 in the block (luminance signal image block) after the replacement processing of only the luminance signal input from the luminance pattern replacement unit 217.
  • the process of superimposing is executed.
  • the banding detection block in the decoded image is replaced by (5) luminance chromaticity replacement pattern YCP shown in FIG.
  • the replaced block is combined with other blocks via the combining unit 219 and output as an image frame.
  • maxy, miny, coefy are the maximum value (maxy) and minimum value (miny) of the luminance of the block (banding detection block) to be replaced by the replacement pattern, and the luminance approximate pattern search unit 251 from the replacement pattern storage unit 214.
  • maxc, minc, and coefc are selected from the replacement pattern storage unit 214 by the chromaticity approximate pattern search unit 252 and the chromaticity maximum value (maxc) and minimum value (minc) of the block to be replaced by the replacement pattern.
  • a coefficient (coefc) indicating the output ratio (0 to 1) set in the replacement pattern corresponding to chromaticity.
  • processing for luminance data and chromaticity data is executed separately. That is, a luminance replacement pattern and a chromaticity replacement pattern are generated separately, and then these data are superimposed (synthesized) to generate a final replacement pattern for replacement.
  • BO band offset
  • SAO sample adaptive offset
  • the BO (band offset) process is executed on a pixel basis for all pixels in a CTU (Coding Tree Unit) configured by CU (Coding Unit) which is a unit of coding unit.
  • CTU Coding Tree Unit
  • CU Coding Unit
  • the processing unit that is, the arithmetic unit is set as a CU (Coding Unit) unit smaller than the CTU (Coding Tree Unit), so that the arithmetic amount can be reduced.
  • CU Coding Unit
  • CTU Coding Tree Unit
  • An operation for processing to correct a replacement pattern can be expressed by one expression for one replacement pattern. For example, consider a case where the CU size is 8 ⁇ 8 pixels and the replacement pattern shown in FIG. 8A is used as the replacement pattern selected from the replacement pattern storage unit 214.
  • the replacement pattern shown in FIG. 8A is a replacement pattern stored in the replacement pattern storage unit 214, and the output (chromaticity and luminance) of each pixel is set with a coefficient (coef) indicating a ratio of 0 to 1 It is a pattern.
  • the maximum value is 1 and the minimum value is 0.
  • the coefficient (coef) is shown only up to one decimal place, but in actual operation, various settings can be made for the number of decimal places.
  • the pattern correction unit 216 corrects the replacement pattern shown in FIG. 8A and generates a corrected replacement pattern that is finally output. .
  • the example shown in FIG. 8 is an example in which the processing target block (CU) is 8 ⁇ 8 pixels, but the banding detection block that is the processing target block is 16 ⁇ 16 pixels and is stored in the replacement pattern storage unit 214. If the replacement pattern is 8 ⁇ 8 pixels, the replacement pattern is enlarged two times vertically and horizontally.
  • the replacement pattern is reduced to 1/2 in the vertical and horizontal directions.
  • the luminance correction replacement pattern and the chromaticity correction replacement pattern can be individually generated according to the following (Expression 2a) and (Expression 2b).
  • Pixel value (luminance) miny + (maxy ⁇ miny) ⁇ coefy (formula 2a)
  • Pixel value (chromaticity) minc + (maxc ⁇ minc) ⁇ coefc (Expression 2b)
  • a CPU (Central Processing Unit) 501 functions as a control unit or a data processing unit that executes various processes according to a program stored in a ROM (Read Only Memory) 502 or a storage unit 508. For example, processing according to the sequence described in the above-described embodiment is executed.
  • a RAM (Random Access Memory) 503 stores programs executed by the CPU 501 and data.
  • the CPU 501, ROM 502, and RAM 503 are connected to each other by a bus 504.
  • the CPU 501 is connected to an input / output interface 505 via a bus 504.
  • An input unit 506 including various switches, a keyboard, a mouse, a microphone, and a sensor, and an output unit 507 including a display and a speaker are connected to the input / output interface 505.
  • the CPU 501 executes various processes in response to a command input from the input unit 506 and outputs a processing result to the output unit 507, for example.
  • the storage unit 508 connected to the input / output interface 505 includes, for example, a hard disk, and stores programs executed by the CPU 501 and various data.
  • a communication unit 509 functions as a transmission / reception unit for Wi-Fi communication, Bluetooth (BT) communication, and other data communication via a network such as the Internet or a local area network, and communicates with an external device.
  • BT Bluetooth
  • the drive 510 connected to the input / output interface 505 drives a removable medium 511 such as a magnetic disk, an optical disk, a magneto-optical disk, or a semiconductor memory such as a memory card, and executes data recording or reading.
  • a removable medium 511 such as a magnetic disk, an optical disk, a magneto-optical disk, or a semiconductor memory such as a memory card
  • the technology disclosed in this specification can take the following configurations.
  • An image decoding apparatus having a pattern replacement unit that replaces a pixel value of a banding detection block with a replacement pattern.
  • the image decoding device includes: A maximum value and a minimum value of luminance of the banding detection block, a maximum value of luminance, a minimum value, an inclination detection unit for detecting inclination; A maximum value and a minimum value of chromaticity of the banding detection block, and a chromaticity maximum value, a minimum value and an inclination detection unit for detecting inclination; An approximate pattern search unit for selecting a replacement pattern similar to the maximum and minimum values of the luminance and chromaticity of the banding detection block, and a slope;
  • the pattern replacement unit includes: The image decoding device according to (1), wherein a replacement process using a replacement pattern selected by the approximate pattern search unit is executed.
  • the image decoding device includes: An average value calculation unit for calculating an average value of each of the maximum and minimum values of brightness and chromaticity of the banding detection block; An approximate pattern search unit that selects a replacement pattern similar to the average value of the luminance and chromaticity maximum value, minimum value, and slope of the banding detection block;
  • the pattern replacement unit includes: The image decoding device according to (1) or (2), wherein a replacement process using a replacement pattern selected by the approximate pattern search unit is executed.
  • the image decoding device includes: A maximum value and a minimum value of luminance of the banding detection block, a maximum value of luminance, a minimum value, an inclination detection unit for detecting inclination; Maximum and minimum chromaticity values of the banding detection block, maximum chromaticity value for detecting inclination, minimum value, and inclination detecting unit, A luminance approximate pattern search unit for selecting a replacement pattern similar to the maximum value, minimum value, and slope of the banding detection block; A chromaticity approximation pattern search unit for selecting a replacement pattern similar to the maximum value, minimum value, and inclination of the chromaticity of the banding detection block;
  • the pattern replacement unit includes: The image decoding apparatus according to (1), wherein the luminance replacement pattern selected by the luminance approximate pattern search unit and the chromaticity replacement pattern selected by the chromaticity approximate pattern search unit are combined and replaced.
  • the image decoding device further includes: A pattern correction unit that corrects the replacement pattern acquired from the replacement pattern storage unit according to the pixel value setting mode of the banding detection block and generates a corrected replacement pattern;
  • the pattern replacement unit includes: The image decoding device according to any one of (1) to (4), wherein a replacement process using a corrected replacement pattern generated by the pattern correction unit is executed.
  • the replacement pattern storage unit Stores the replacement pattern in which a coefficient indicating the output ratio of each block constituent pixel is set,
  • the pattern correction unit The image decoding device according to (5), wherein the corrected replacement pattern is generated by a calculation using a coefficient set for each pixel of the replacement pattern.
  • the image decoding device according to (6), which is calculated according to (Equation 1).
  • maxy is the maximum luminance value of the banding detection block
  • miny is the minimum luminance value of the banding detection block
  • coefy is a coefficient set for each pixel of the luminance replacement pattern acquired from the replacement pattern storage unit
  • maxc is the maximum chromaticity value of the banding detection block
  • minc is the minimum chromaticity value of the banding detection block
  • coefc is a coefficient set for each pixel of the chromaticity replacement pattern acquired from the replacement pattern storage unit.
  • the image decoding device according to (6), which is calculated according to (Equation 1).
  • the image decoding device includes: The image decoding device according to any one of (1) to (8), further including a filter processing unit that executes a filter process that makes a block boundary of an image after replacement processing inconspicuous by a replacement pattern by the pattern replacement unit.
  • the block which is a processing unit in the decoding process,
  • the image decoding device according to any one of (1) to (9), which is a CU (Coding Unit) defined as a unit of a coding unit in HEVC (High Efficiency Video Coding).
  • An image decoding method executed in the image decoding device A banding detection step in which the banding detection unit detects the banding from the block which is a processing unit in the decoding process of the encoded image; An image decoding method in which a pattern replacement unit executes a pattern replacement step of replacing a pixel value of a banding detection block with a replacement pattern.
  • a program for executing an image decoding process in an image decoding device A banding detection step for causing the banding detection unit to detect banding from a block which is a processing unit in the decoding process of the encoded image; A program that causes a pattern replacement unit to execute a pattern replacement step of replacing pixel values of a banding detection block with a replacement pattern.
  • the series of processes described in the specification can be executed by hardware, software, or a combined configuration of both.
  • the program recording the processing sequence is installed in a memory in a computer incorporated in dedicated hardware and executed, or the program is executed on a general-purpose computer capable of executing various processing. It can be installed and run.
  • the program can be recorded in advance on a recording medium.
  • the program can be received via a network such as a LAN (Local Area Network) or the Internet and installed on a recording medium such as a built-in hard disk.
  • the various processes described in the specification are not only executed in time series according to the description, but may be executed in parallel or individually according to the processing capability of the apparatus that executes the processes or as necessary.
  • the system is a logical set configuration of a plurality of devices, and the devices of each configuration are not limited to being in the same casing.
  • a decoding process with reduced banding is realized.
  • a banding detection unit that detects banding from a block that is a processing unit in decoding processing of an encoded image
  • a pattern replacement unit that replaces the pixel value of the banding detection block with a replacement pattern.
  • the maximum and minimum values of brightness and chromaticity of the banding detection block, the minimum value, and the slope are detected, and the replacement pattern similar to the average value of the brightness and chromaticity, the minimum value and the slope, or the brightness and chromaticity individually
  • a replacement pattern similar to the maximum value, the minimum value, and the slope is selected, and the selected replacement pattern is corrected and replaced according to the setting of the banding detection block.

Landscapes

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

Abstract

バンディングの発生を低減した復号処理を実現する。符号化画像の復号処理における処理単位であるブロックからバンディングを検出するバンディング検出部と、バンディング検出ブロックの画素値を置き換えパターンに置き換えるパターン置換部を有する。バンディング検出ブロックの輝度と色度の最大値と、最小値と、傾きを検出し、これら輝度と色度の最大値、最小値、傾きの平均値に類似する置き換えパターン、または輝度と色度個別の最大値、最小値、傾きに類似する置き換えパターンを選択し、選択した置き換えパターンをバンディング検出ブロックの設定に応じて補正して置き換える。

Description

画像復号装置、および画像復号方法、並びにプログラム
 本開示は、画像復号装置、および画像復号方法、並びにプログラムに関する。さらに詳細には、符号化画像を復号した場合に画像の緩やかなグラデーション領域に出現しやすい縞状の疑似輪郭、いわゆるバンディングの低減を可能とした符号化処理を行う画像復号装置、および画像復号方法、並びにプログラムに関する。
 画像の符号化処理を行って生成した符号化データを復号すると画像の緩やかなグラデーション領域等に縞状の疑似輪郭、いわゆるバンディングが発生することがある。これは、画像の符号化時の量子化処理によってデータが失われること等に起因する。
 なお、動画像の符号化規格として、例えば、AVC(Advanced Video Coding)や、HEVC(High Efficiency Video Coding)が知られている。HEVCは、ブロック単位の動き補償予測と変換符号化を利用した符号化方式であり、圧縮効率を高めるため、インター予測符号化(フレーム間予測)、イントラ予測符号化(フレーム内予測符号化)を利用している。
 なお、動画像の符号化処理を開示した従来技術として、例えば特許文献1(特開2015-8359号公報)がある。
 例えば、これらAVCやHEVC等による動画像符号化処理において量子化による符号化を行うと復号画像に濃淡の縞状のバンディングが発生することがある。この縞状のパターンからなるバンディングは、例えば画像内の「空」のような画素値変化の少ない平坦画像領域に出現しやすく、復号画像の画質劣化として目立つものとなる。
 バンディングを低減させる方法として、例えば以下のような方法がある。
 (1)ティザーと呼ばれるランダムノイズを加える、
 (2)データビット幅を増やす、
 (3)量子化後の残差成分に加算などの底上げ処理を行い調整する、
 例えばこれらの方法が知られている。
 しかし、上記の方法はいずれも以下のようなデメリットがあり、現状では、決定打が無い状態である。
 (1)ティザーを加える⇒少量では効果が薄く、割合が難しい、
 (2)データビット増やす⇒データ量が大きくなる、
 (3)残差成分の調整⇒あまり効果がない、
特開2015-8359号公報
 本開示は、例えば、上記問題点に鑑みてなされたものであり、符号化画像を復号した場合に画像に出現する縞状の疑似輪郭、いわゆるバンディングの低減を可能とした復号処理を行う画像復号装置、および画像復号方法、並びにプログラムを提供することを目的とする。
 本開示の第1の側面は、
 符号化画像の復号処理における処理単位であるブロックからバンディングを検出するバンディング検出部と、
 バンディング検出ブロックの画素値を、置き換えパターンに置き換えるパターン置換部を有する画像復号装置にある。
 さらに、本開示の第2の側面は、
 画像復号装置において実行する画像復号方法であり、
 バンディング検出部が、符号化画像の復号処理における処理単位であるブロックからバンディングを検出するバンディング検出ステップと、
 パターン置換部が、バンディング検出ブロックの画素値を、置き換えパターンに置き換えるパターン置換ステップを実行する画像復号方法にある。
 さらに、本開示の第3の側面は、
 画像復号装置において画像復号処理を実行させるプログラムであり、
 バンディング検出部に、符号化画像の復号処理における処理単位であるブロックからバンディングを検出させるバンディング検出ステップと、
 パターン置換部に、バンディング検出ブロックの画素値を、置き換えパターンに置き換えるパターン置換ステップを実行させるプログラムにある。
 なお、本開示のプログラムは、例えば、様々なプログラム・コードを実行可能な情報処理装置やコンピュータ・システムに対して、コンピュータ可読な形式で提供する記憶媒体、通信媒体によって提供可能なプログラムである。このようなプログラムをコンピュータ可読な形式で提供することにより、情報処理装置やコンピュータ・システム上でプログラムに応じた処理が実現される。
 本開示のさらに他の目的、特徴や利点は、後述する本開示の実施例や添付する図面に基づくより詳細な説明によって明らかになるであろう。なお、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
 本開示の一実施例の構成によれば、バンディングの発生を低減した復号処理が実現される。
 具体的には、例えば、符号化画像の復号処理における処理単位であるブロックからバンディングを検出するバンディング検出部と、バンディング検出ブロックの画素値を置き換えパターンに置き換えるパターン置換部を有する。バンディング検出ブロックの輝度と色度の最大値と、最小値と、傾きを検出し、これら輝度と色度の最大値、最小値、傾きの平均値に類似する置き換えパターン、または輝度と色度個別の最大値、最小値、傾きに類似する置き換えパターンを選択し、選択した置き換えパターンをバンディング検出ブロックの設定に応じて補正して置き換える。
 本構成により、バンディングの発生を低減した復号処理が実現される。
 なお、本明細書に記載された効果はあくまで例示であって限定されるものではなく、また付加的な効果があってもよい。
HEVC(H.265/HEVC)において定義される方向性(Angular)予測の33の方向を示す図である。 バンディングの概要について説明する図である。 本開示の画像復号装置の構成例について説明する図である。 バンディング低減処理部の構成例について説明する図である。 輝度最大値、最小値、傾き算出部と、色度最大値、最小値、傾き算出部の構成例について説明する図である。 輝度色度傾き平均値の算出処理例について説明する図である。 置き換えパターン格納部に格納される置き換えパターンの例について説明する図である。 出力値の比率データを設定した置き換えパターンの例について説明する図である。 置き換えパターン格納部に格納されるその他の置き換えパターンの例について説明する図である。 パターン補正部の実行する処理の一例について説明する図である。 パターン補正部の実行する処理の一例について説明する図である。 バンディング低減処理部の実行する処理のシーケンスについて説明するフローチャートを示す図である。 バンディング低減処理部の実行する処理のシーケンスについて説明するフローチャートを示す図である。 バンディング低減処理部の構成例について説明する図である。 輝度置き換えパターンと色度置き換えパターンを個別に生成して、これらのデータを重畳(合成)して最終的な置き換えパターンを生成して置き換えを行う処理例について説明する図である。 画像復号装置のハードウェア構成例について説明する図である。
 以下、図面を参照しながら本開示の画像復号装置、および画像復号方法、並びにプログラムの詳細について説明する。なお、説明は以下の項目に従って行なう。
 1.動画像符号化処理の概要とバンディングについて
 2.画像復号装置の構成例について
 3.(実施例1)復号画像のバンディング領域の輝度と色度の平均値に基づいて、バンディング領域の置き換えパターンを決定するバンディング低減処理部の構成と処理の詳細について
 4.バンディング低減処理部の実行する処理のシーケンスについて
 5.(実施例2)復号画像のバンディング領域の輝度と色度を個別に考慮して、バンディング領域の置き換えパターンを決定するバンディング低減処理部の構成と処理の詳細について
 6.本開示のバンディング低減処理と、従来のバンディング低減処理との差異と本開示の処理による効果について
 7.画像復号装置のハードウェア構成例について
 8.本開示の構成のまとめ
  [1.動画像符号化処理の概要とバンディングについて]
 まず、動画像符号化処理の概要とバンディングについて説明する。動画像の符号化規格として、AVC(Advanced Video Coding)や、HEVC(High Efficiency Video Coding)が知られている。HEVC符号化処理の概要について説明する。HEVC符号化処理においては、まず、動画像を構成する画像フレーム(ピクチャ)を2N×2N画素のCTU(Coding Tree Unit)に分割する。CTUの最大サイズは64×64画素である。
 さらに、CTUは符号化単位のユニットであるCU(Coding Unit)に分割される。符号化処理や、復号処理は、このCU単位で実行される。符号化処理では、CU、またはその分割単位として設定されるPU(Prediction Unit)で予測モードが決定される。CUは1つ以上のPUによって構成される。
 符号化処理においては、例えばCU単位で画面内予測(イントラ予測)、または画面間予測(インター予測)、これら2つの予測処理のいずれを適用するかが選択される。いずれを選択するかはコストに基づいて決定される。例えば各符号化単位であるCU単位で各予測を適用して符号化した場合に削減可能なデータ量を比較して、より多くのデータ削減が可能な方法(低コストの方法)が選択される。
 画面内予測(イントラ予測)を行う場合、符号化対象となるブロック(CU等)の近傍のブロック(ピクチャの左または上のブロック)を参照ブロックとして、その参照ブロックとの差分を算出して符号化処理が行われる。
 AVCやHEVCでは、符号化対象ブロックに対して、どの位置の画素を参照画素として用いるかに応じて以下の3つの予測手法が定義されている。
 (a)DC予測
 (b)平面(Planar)予測
 (c)方向性(Angular)予測
 DC予測、平面(Planar)予測は、いずれも符号化対象ブロックに隣接する上辺および左辺の画素、すなわち複数の異なる方向にある画素やブロックを参照画素や参照ブロックとして利用する方法である。DC予測では、符号化対象ブロックに隣接する上辺および左辺の参照画素の平均値を予測値として用い、平面(Planar)予測では、符号化対象ブロックに隣接する上辺および左辺の参照画素の平面近似値を予測値として用いる。
 方向性(Angular)予測は、参照画素や参照ブロックを符号化対象ブロックに対して1つの特定方向の画素やブロックとする方法である。DC予測と、平面(Planar)予測では、符号化対象ブロックに隣接する上辺と左辺の2つの異なる方向の画素を参照するが、方向性(Angular)予測では、符号化対象ブロックに対して1つの特定方向にある画素やブロックのみを参照する。
 この方向は、HEVCでは33方向が定義され、AVCでは9方向が定義されている。図1は、HEVC(H.265/HEVC)において定義される方向性(Angular)予測の33の方向を示す図である。HEVCでは、図1に示すように、符号化対象ブロックの構成画素に対して、予測モード番号2~34の33種類の方向が定義される。
 例えば予測モード番号2の方向性(Angular)予測を行う場合、符号化対象ブロックの構成画素の左下方向45°の位置にあるブロックや画素を参照ブロック、参照画素として利用する。
 また、予測モード番号18の方向性(Angular)予測を行う場合、符号化対象ブロックの構成画素の左上方向45°の位置にあるブロックや画素を参照ブロック、参照画素として利用する。
 また、予測モード番号32の方向性(Angular)予測を行う場合、符号化対象ブロックの構成画素の右上方向45°の位置にあるブロックや画素を参照ブロック、参照画素として利用する。
 AVC、HEVCとも符号化処理に際して方向性(Angular)予測を利用する場合、基本的には、符号化対象ブロックの画素値に対して差分の少ない画素値を持つ方向にある画素を参照画素として選択する処理がなされる。
 なお、HEVCでは、予測モード番号が定義されている。この番号はHEVC画面内予測(イントラ予測)の予測モードの識別子に相当し、以下の各予測モードの識別子が定義されている。
 予測モード番号=0が、平面(Planar)予測、
 予測モード番号=1が、DC予測、
 予測モード番号2~34が、方向性(Angular)予測、
 である。方向性(Angular)予測の場合、図1に示すように、参照画素の方向に応じて予測モード番号2~34が対応付けられている。
 (a)DC予測、(b)平面(Planar)予測、(c)方向性(Angular)予測のいずれを実行するか、また、(c)方向性(Angular)予測のうち、どの方向の予測を用いるか、すなわち、予測モード番号0~34のいずれの予測を実行するかは、各符号化ブロック単位でコスト、すなわち符号量の削減度合いに基づいて決定される。ブロック単位で最もデータ削減量を大きくすることが可能となる方法を選択して実行する。なお、コストは、例えば、符号化ブロックと参照ブロックとの差分を符号化した場合の符号化データ量に基づいて算出する。
 各符号化ブロック単位で最も低コストの予測モードを選択して、符号化ブロックと参照ブロックとの差分を算出し、差分データの周波数変換、量子化処理等による符号化処理を実行する。
 一方、画面間予測(インター予測)を行う場合、符号化対象となるブロック(CU等)単位で、前後のフレーム(ピクチャ)のブロック間の動き補償を行い、異なるフレーム間のブロック間の差分を算出して、差分データの周波数変換、量子化処理等による符号化処理を実行する。
 次に、このようなAVC符号化処理やHEVC符号化処理における1つの問題点について説明する。AVC符号化処理やHEVC符号化処理を実行した場合の問題点として、バンディングの発生がある。
 図2を参照してバンディングの概要について説明する。画像の符号化処理を行って生成した符号化データを復号すると画像の平坦部や、階調が緩やかに変化するグラデーション領域等に縞状の疑似輪郭、いわゆるバンディングが発生することがある。
 例えば図2に示す(a)原画像(符号化処理前画像)に対する符号化処理を行い、その符号化データを復号すると、図2の(b)復号画像に示すような縞状のバンディングが発生する場合がある。この疑似輪郭は、主に画像の平坦部や階調が緩やかに変化するグラデーション領域等に現れやすい。これは、画像の符号化時の量子化処理によってデータが失われること等に起因する。
 上述したAVCやHEVCのいずれの符号化処理においても、符号化時の量子化処理に際してデータが失われると、図2(b)に示すような疑似輪郭が出現することがある。本開示の画像復号装置は、このような疑似輪郭の発生を低減する復号処理を実現するものである。
  [2.画像復号装置の構成例について]
 次に、図3を参照して、本開示の画像復号装置の構成例について説明する。
 図3は、本開示の画像復号装置100の一構成例を示す図である。
 本開示の画像復号装置100は、符号化画像10を入力し、バンディングを低減させた復号画像20を生成して出力する。
 バンディング低減処理は、バンディング低減処理部200において実行する。バンディング低減処理部200は、前段までの処理によって得られる復号画像からバンディング領域を検出し、バンディング領域の画素を、予め用意した置き換えパターンデータで置き替えてなだらかにする処理を行う。バンディング低減処理部200において実行するバンディング低減処理の詳細については後段で説明する。
 まず、図3を参照して、本開示の画像復号装置100の全体構成と一連の処理について説明する。
 図3に示すように、画像復号装置100は、エントロピー復号部111、逆量子化部112、逆周波数変換部113、加算部114、ループ内フィルタ115、フレームバッファ116、イントラ予測部121、インター予測部122、モード切り替え部123、バンディング低減処理部200を有する。
 画像復号部110は、復号対象となる符号化画像10を入力して、バンディングを低減した復号画像20を生成して出力する。この画像復号部110の処理は制御部150の制御の下で行われる
 復号対象となる符号化画像10は、例えば前述したAVCやHEVC符号化処理によって符号化された動画像である。画像復号部110には、前述した符号化単位のユニットであるCU(Coding Unit)単位で入力され、CU単位で復号処理を実行する。なお、複数のCUから構成されるCTU(Coding Tree Unit)単位の処理を行う構成としてもよい。
 図3に示す画像復号部110の各構成における処理について説明する。
 エントロピー復号部111は、符号化処理において適用されたエントロピー符号化(可変長符号化処理)の逆処理であるエントロピー復号処理を行い、入力された符号語を符号化前のデータに戻す。
 逆量子化部112は、符号化処理に際して実行したと同じ量子化ステップで量子化データを逆量子化し、量子化前の周波数変換データを復元する。逆量子化部112は、復元した周波数変換係数データを逆周波数変換部113へ出力する。
 逆周波数変換部113は、逆量子化部112から入力される周波数変換係数データに対する逆周波数変換処理を実行して、量子化対象として設定された残差信号(予測誤差データ)を復元する。復元した予測誤差データは加算部114へ出力される。
 加算部114は、逆周波数変換部113から入力する復元予測誤差データと、モード切り替え部123から入力される予測画像データとを加算して、復号画像データ(リコンストラクト画像)を生成する。加算部114は、生成した復号画像データをループ内フィルタ115と、イントラ予測部1121へ出力する。
 ループ内フィルタ115は、デブロッキングフィルタ(DBF:De-Blocking Filter)やサンプルアダプティブオフセット(SAO:Sample Adaptive Offset)等を適用して加算部114から供給される再構成画像に対して歪み補正、画素値補正等の画像補正処理を行う。デブロッキングフィルタ(DBF)適用処理は、動き補償や変換処理によるブロック状の歪みを低減させるために、動き予測や変換処理のブロック境界にフィルタリング処理を行う処理である。また、サンプルアダプティブオフセット(SAO)は、ブロック内の画素値に所定のオフセット値を加算して画素値修正を行う処理である。ループ内フィルタ115によって歪み除去、画素値補正等が施されたフィルタ処理結果画像(復号画像)は、フレームバッファ116に格納される。
 フレームバッファ116に格納されたフィルタ処理結果画像(復号画像)は、インター予測部122とバンディング低減処理部200に供給される。
 イントラ予測部121は、加算部114の生成した復号画像データ(リコンストラクト画像)、すなわち、逆周波数変換部113から入力する復元予測誤差データと、モード切り替え部123から入力する予測画像データとの加算データである復号画像データ(リコンストラクト画像)を入力し、この復号画像データ(リコンストラクト画像)を用いた画面内予測(イントラ予測)処理を実行する。
 イントラ予測部121は、復号対象となるブロック(CU)に対応づけられた予測モード情報がイントラ予測モードである場合、先に図1を参照して説明した以下の3つの予測、すなわち、
 (a)DC予測
 (b)平面(Planar)予測
 (c)方向性(Angular)予測
 これらのいずれかの手法を用いたイントラ予測処理を行う。上記のいずれを利用するかについては、復号対象となるブロック(CU)に対応づけられた予測モード情報に従って決定する。なお、方向性(Angular)予測を利用する場合は、その方向情報もブロック(CU)に対応づけられた予測モード情報から取得する。
 インター予測部122は、復号対象となるブロック(CU)に対応づけられた予測モード情報がインター予測モードである場合、復号対象となる符号化画像10と、ループ内フィルタ115によって歪み除去、画素値補正等が施されたフィルタ処理結果画像(復号画像)をフレームバッファ116から入力し、各画像を用いたインター予測処理(動き検出および動き補償)を実行する。
 モード切り替え部123は、復号対象となるブロック(CU)に対応づけられた予測モード情報がイントラ予測モードである場合、イントラ予測部121の予測結果を加算部114にフィードバック入力する。また、復号対象となるブロック(CU)に対応づけられた予測モード情報がインター予測モードである場合、インター予測部122の予測結果を加算部114にフィードバック入力する。
 バンディング低減処理部200は、フレームバッファ116に格納されたフィルタ処理結果である復号画像を取得して、復号画像に含まれるバンディング領域を検出し、検出したバンディング領域の画素値を予め用意してある置き換えパターンを利用して置き換える処理を行う。すなわちバンディングを低減させる画素値置き換え処理を行う。
 バンディング低減処理部200の実行する処理については、以下、詳細に説明する。
  [3.(実施例1)復号画像のバンディング領域の輝度と色度の平均値に基づいて、バンディング領域の置き換えパターンを決定するバンディング低減処理部の構成と処理の詳細について]
 以下、バンディング低減処理部200の構成と処理の詳細について説明する
 なお、以下では、次の2つの実施例について、順次、説明する。
 (実施例1)復号画像のバンディング領域の輝度と色度の平均値に基づいて、バンディング領域の置き換えパターンを決定する実施例
 (実施例2)復号画像のバンディング領域の輝度と色度を個別に考慮して、バンディング領域の置き換えパターンを決定する実施例
 まず、(実施例1)復号画像のバンディング領域の輝度と色度の平均値に基づいて、バンディング領域の置き換えパターンを決定する実施例について説明する。
 図4は、本実施例1のバンディング低減処理部200の構成例を示すブロック図である。
 図4に示すように、バンディング低減処理部200は、バンディング検出部210、輝度最大値、最小値、傾き算出部211、色度最大値、最小値、傾き算出部212、輝度および色度の最大値、最小値、傾き平均値算出部213、置き換えパターン格納部214、近似パターン探索部215、パターン補正部216、輝度パターン置換部217、色度パターン置換部218、合成部219を有する。
 バンディング検出部210は、フレームバッファ116に格納されたフィルタ処理結果である復号画像を取得して、復号画像に含まれるバンディング領域を検出する。復号画像の構成画素をスキャンしてバンディングが起こっている領域を検出する。バンディング検出は、既存の手法によって実行される。例えば、ある画素と周辺画素の差分を閾値と比較する処理などによってバンディング領域であるか否かの判定処理を行い、バンディング領域を検出する。
 なお、スキャンする画素範囲、すなわちバンディング有無の検出単位は、例えば符号化および復号処理単位であるCU(coding unit)単位で行う。あるいは複数のCUを含むCTU(Coding Tree Unit)単位、あるいはその他の領域単位で行ってもよい。
 以下の実施例ではCUまたはCTU、その他の領域単位によって構成される処理単位を「ブロック」として説明する。
 バンディング検出部210において、バンディングが検出されないブロックについては、合成部219を介して、そのまま出力する。
 バンディング検出部210において、バンディングが検出されたブロックについては、置き換えパターン格納部214に格納された置き換えパターンを利用してブロック構成画素の置換処理を実行して合成部219を介して出力する。
 バンディング検出部210において、バンディングが検出されたブロックについては、まず、輝度最大値、最小値、傾き算出部211と、色度最大値、最小値、傾き算出部212において、ブロックの構成画素の輝度、および色度の最大値(max)、最小値(min)、傾き(slope)の検出および算出を実行する。
 輝度最大値、最小値、傾き算出部211と、色度最大値、最小値、傾き算出部212の構成の一例を図5に示す。輝度最大値、最小値、傾き算出部211と、色度最大値、最小値、傾き算出部212は、いずれも図5に示す構成であり、同様の構成を有する。なお、例えば画像信号がYCbCr信号によって構成される場合、輝度最大値、最小値、傾き算出部211は輝度信号Yについての解析を行い、色度最大値、最小値、傾き算出部212は、色度信号Cb,Crについての解析を行う。
 図5に示すように、輝度最大値、最小値、傾き算出部211と、色度最大値、最小値、傾き算出部212は、隣接画素平均値算出部231、メモリ232、最大値、最小値算出部233、傾き算出部234を有し、輝度または色度の最大値、最小値データ241と、傾きデータ242を生成して出力する。なお、データ出力先は、図4に示す輝度および色度の最大値、最小値、傾き平均値算出部213である。
 隣接画素平均値算出部231は、図に示すように、バンディングの検出されたブロック(CU等)の例えば4画素等、複数画素の平均値を算出する。輝度最大値、最小値、傾き算出部211の場合は輝度の平均値を算出する。色度最大値、最小値、傾き算出部212の場合は色度の平均値を算出する。算出した平均値は、画素位置を示す座標情報に対応付けてメモリ232に格納する。
 1つのブロックについての平均値算出が終了すると、最大値、最小値算出部233が、メモリ232から1つのブロック分の複数の平均値データを取得し、取得データから、最大値と最小値を選択して、最大値、最小値データ241として出力する。
 最大値、最小値算出部233の算出した最大値、最小値データは、傾き算出部234にも供給される。傾き算出部234は、輝度、または色度の最大値と最小値との傾きの角度を求める。傾きは、ブロック内の最大値領域から最小値領域への方向を持つベクトルのなす角度とする。図5に示すように、最大値の座標(x1,y1)から最小値の座標(x2,y2)へ向かうベクトルの垂直軸(Y軸)からの傾き角度θを求め、これを、処理対象ブロックの傾きデータ242として出力する。
 傾き算出部234は、例えば、最大値、最小値を2点とする直角三角形の、直角を挟む2辺の長さを、座標位置の差から求め、逆三角関数atanより、傾きθを求める。
 輝度最大値、最小値、傾き算出部211は、図5に示す構成を用いて、処理対象ブロックの輝度の最大値、最小値、傾きを算出して、算出値を、図4に示す輝度および色度の最大値、最小値、傾き平均値算出部213に出力する。
 一方、色度最大値、最小値、傾き算出部212は、図5に示す構成を用いて、処理対象ブロックの色度の最大値、最小値、傾きを算出して、算出値を、図4に示す輝度および色度の最大値、最小値、傾き平均値算出部213に出力する。
 なお、画像信号がYCbCr信号のように色度信号が複数ある場合は、色度最大値、最小値、傾き算出部212は、色度信号CbCr各々についてそれぞれ個別に最大値、最小値、傾きを算出してもよいし、平均値を算出してもよい。
 図4に示す輝度および色度の最大値、最小値、傾き平均値算出部213は、輝度最大値、最小値、傾き算出部211から輝度最大値、最小値、傾きと、色度最大値、最小値、傾き算出部212から色度最大値、最小値、傾きを入力して、輝度と色度の最大値平均、最小値平均、傾き平均を算出する。
 輝度および色度の最大値、最小値、傾き平均値算出部213は、処理対象ブロックの輝度と色度の最大値と最小値と傾きの平均値を算出して、算出値を近似パターン探索部215に出力する。
 輝度および色度の最大値、最小値、傾き平均値算出部213は、例えば以下の算出式に従って輝度および色度の最大値と、最小値と傾きの平均値を算出する。
 輝度色度最大値平均値=(輝度最大値+色度最大値)/2
 輝度色度最小値平均値=(輝度最小値+色度最小値)/2
 輝度色度傾き平均値=(輝度傾き(θ1)+色度傾き(θ2))/2
 図6に輝度色度傾き平均値の算出処理例を示す。
 図6(1)には、輝度の傾きを示すベクトルと、色度の傾きを示すベクトルを示している。
 輝度の傾きを示すベクトルは、輝度=最大値の位置から輝度=最小値の位置に向かうほぼ垂直下方向のベクトルである。
 一方、色度の傾きを示すベクトルは、色度=最大値の位置から色度=最小値の位置に向かう右下方向のベクトルである。
 輝度および色度の最大値、最小値、傾き平均値算出部213は、この2つのベクトルの平均ベクトルを算出してその傾きを輝度色度傾き平均値とする。
 図6(2)に示すベクトルは、輝度の傾きを示すベクトルの傾き(θ1)と、色度の傾きを示すベクトルの傾き(θ2)の中間の傾き((θ1+θ2)/2)を持つベクトルであり、この傾き((θ1+θ2)/2)が輝度色度傾き平均値である。
 このように、輝度および色度の最大値、最小値、傾き平均値算出部213は、処理対象ブロックの輝度と色度の最大値と最小値と傾きの平均値を算出して、算出値を近似パターン探索部215に出力する。
 近似パターン探索部215は、輝度および色度の最大値、最小値、傾き平均値算出部213から入力した処理対象ブロックの輝度と色度の最大値と最小値と傾きの平均値に基づいて、これらのデータに近い置き換えパターンを置き換えパターン格納部214から選択する。
 置き換えパターン格納部214には、緩やかな画素値変化を持つバンディングの無い画像データ、またはそのような画像データを生成するための出力値を設定した複数の置き換えパターンが格納されている。
 置き換えパターン格納部214に格納された置き換えパターンの一部の例を図7に示す。図7には、置き換えパターン格納部214に格納された以下の8つの置き換えパターンの例を示している。
 (1)パターン1=左上45°方向に輝度、色度の値が低くなる設定の傾きを有する置き換えパターン
 (2)パターン2=垂直上方向に輝度、色度の値が低くなる設定の傾きを有する置き換えパターン
 (3)パターン3=右上45°方向に輝度、色度の値が低くなる設定の傾きを有する置き換えパターン
 (4)パターン4=水平右方向に輝度、色度の値が低くなる設定の傾きを有する置き換えパターン
 (5)パターン5=右下45°方向に輝度、色度の値が低くなる設定の傾きを有する置き換えパターン
 (6)パターン6=垂直下方向に輝度、色度の値が低くなる設定の傾きを有する置き換えパターン
 (7)パターン7=左下45°方向に輝度、色度の値が低くなる設定の傾きを有する置き換えパターン
 (8)パターン8=水平左方向に輝度、色度の値が低くなる設定の傾きを有する置き換えパターン
 これらの置き換えパターンは、いずれも画素値変化が緩やかに設定され、バンディングのない画像である。
 なお、置き換えパターン格納部214には、これら8パターン以外にも多数の置き換えパターンが格納されている。
 近似パターン探索部215は、輝度および色度の最大値、最小値、傾き平均値算出部213から入力した処理対象ブロックの輝度と色度の最大値と最小値と傾きの平均値に基づいて、これらのデータに近い置き換えパターンを置き換えパターン格納部214から選択して、選択パターンをパターン補正部216に出力する。、
 パターン補正部216は、近似パターン探索部215から入力する置き換えパターンの補正を行って、復号画像のバンディング領域に置き換える画像を生成して置き換え処理を実行する。
 この処理によって、復号画像のバンディング領域がバンディングのない画像に置き換えられて出力されることになる。
 なお、置き換えパターン格納部214には、緩やかな画素値変化を持つバンディングの無い画像データ自体を格納する設定としてもよいが、緩やかな画素値変化を持つバンディングの無い画像データを生成するための出力値の比率データを設定した置き換えパターンを格納する設定としてもよい。具体例を図8に示す。
 図8(1)に示すデータが、バンディングの無い画像データを生成するための出力値の比率データを設定した置き換えパターンの例である。図に示す例は8×8画素のブロックの例であり、左上端画素の出力値=0、右下端画素の出力値=1として、その間の画素の出力値を0~1.0の範囲でなだらかに変化させた置き換えパターンの例である。すなわちバンディングの発生のない出力値(画素値)変化を有するパターンである。
 この置き換えパターンの最大値は1.0、最小値は0.0となる。この置き換えパターンを利用して、置き換えパターンの各画素に設定された出力比率に応じて輝度を設定することで図8(2)に示す輝度画像が生成される。また、置き換えパターンの各画素に設定された出力比率に応じて色度を設定することで図8(3)に示す色度画像が生成される。
 図8(2)に示す輝度画像、図8(3)に示す色度画像は、図8(1)に示す置き換えパターンと同じ輝度、色度の出力比率を持つ輝度画像、および色度画像となる。さらに、図8(2)に示す輝度画像と、図8(3)に示す色度画像を合成することで、図8(4)に示す出力画像が得られる。この図8(4)に示す出力画像は、図8(1)に示す置き換えパターンと同じ輝度、色度の出力比率を持つ出力画像である。
 この図8(4)に示す出力画像を復号画像のバンディング領域の画像に置き換えることで、復号画像のバンディングを消滅させることが可能となる。
 なお、置き換えパターンを復号画像のバンディング領域の画像に置き換える際には、置き換えパターンを復号画像のバンディング領域の画素値設定態様に近づける補正処理を行うことが必要となる。
 この補正処理を実行するのが図4に示すパターン補正部216である。
 パターン補正部216は、近似パターン探索部215から入力する置き換えパターンの補正を行って、復号画像のバンディング領域に置き換える画像(補正置き換えパターン)を生成して置き換え処理を実行する。
 パターン補正部216において実行する補正置き換えパターンの生成処理、すなわち、復号画像のバンディング領域に置き換える画像(補正置き換えパターン)を生成する処理の具体例について、図8を参照して説明する。
 図8(1)に示す置き換えパターンは、置き換えパターン格納部214に格納された置き換えパターンであり、各画素の出力(色度、輝度)を0~1の比率を示す係数(coef)で設定したパターンである。最大値を1、最小値を0としている。係数(coef)は一例として小数点以下1桁までしか表記していないが、実運用上は小数点以下の桁数は、様々な設定が可能である。
 復号画像中のあるブロック(CU)がバンディングブロックであると判定された場合、パターン補正部216は、図8(1)に示す置き換えパターンを補正して最終的に出力する補正置き換えパターンを生成する。
 パターン補正部216は、補正置き換えパターンの生成に際して、まず、パターンによる置き換え対象となるブロック(バンディング検出ブロック)の輝度、色度の最大値(max)、最小値(min)、傾きの平均値情報を、輝度および色度の最大値、最小値、傾き平均値算出部213から入力する。
 パターン補正部216は、これらの入力情報を用いて、補正置き換えパターンの各画素に設定する画素値(輝度、色度)を、以下の(式1)によって算出する。
 画素値(輝度、色度)=min+(max-min)×coef・・・(式1)
 ただし、
 maxは、バンディング検出ブロックの輝度最大値と色度最大値の平均値、
 minは、バンディング検出ブロックの輝度最小値と色度最小値の平均値、
 coefは、置き換えパターンの各画素に設定された係数である。
 次にサイズを補正する。図8に示す例は、処理対象ブロック(CU)を8×8画素とした例であるが、処理対象ブロックであるバンディング検出ブロックが16×16画素であり、置き換パターン格納部214に格納された置き換えパターンが8×8画素であれば、置き換えパターンを縦横2倍に拡大する。逆に処理対象ブロックであるバンディング検出ブロックが4×4画素であり、置き換パターン格納部214に格納された置き換えパターンが8×8画素であれば、置き換えパターンを縦横1/2に縮小する。
 パターン補正部216は、これらの処理によって補正置き換えパターン、すなわち、復号画像のバンディング領域に置き換える画像(補正置き換えパターン)を生成する。
 置き換えパターン格納部214に格納されるその他の置き換えパターンの例を図9に示す。図9に示す置き換えパターンは、図8を参照して説明したと同様、緩やかな画素値変化を持つバンディングの無い画像データを生成するための出力値の比率データを設定した置き換えパターンの例である。
 図9(1)に示す置き換えパターンP1は、出力値の設定が右下=高、左上=低の設定であり、右下部から左上部に進むに従って緩やかに出力値が低下する設定を持つ置き換えパターンP1である。
 図9(2)に示す置き換えパターンP2は、出力値の設定が下=高、上=低の設定であり、下部から上部に進むに従って緩やかに出力値が低下する設定を持つ置き換えパターンP2である。
 図9(3)に示す置き換えパターンP3は、出力値の設定が右上=高、左下=低の設定であり、右上部から左下部に進むに従って緩やかに出力値が低下する設定を持つ置き換えパターンP3である。
 置き換えパターン格納部214には、この他にも、様々な設定の置き換えパターンが格納されている。
 なお、置き換えパターン格納部214に格納されている置き換えパターンは、いずれもバンディングの無い出力値を設定した置き換えパターンである。画素出力値を0~1.0の範囲でなだらかに変化させた置き換えパターンであり、バンディングの発生のない出力値(画素値)変化を有するパターンである。
 次に、パターン補正部216の実行する処理の一例について、図10、図11を参照して説明する。
 図10に示す例は、復号画像のバンディング領域の輝度、色度の最大値、最小値、傾きの各平均値がほぼ同じでサイズのみが異なる置き換えパターンが置き換えパターン格納部214から取得された場合の置き換えパターンの補正処理例である。
 図10(ステップS01)に示す8×8画素ブロックは、復号画像を構成するブロックであり、バンディングが検出されたバンディング検出ブロックである。
 ブロック内の矢印は、輝度色度傾き平均値の傾きを持つベクトルを示す矢印である。この傾きは、右下方向に45°の傾きを持つ。
 図10(ステップS02)に示すパターンは、置き換えパターン格納部214に格納された1つの置き換えパターンである。
 このパターンは、先に図7(5)を参照して説明した置き換えパターンである。すなわち、パターン5=右下45°方向に輝度、色度の値が低くなる設定の傾きを有する置き換えパターンである。
 この置き換えパターンは、図10(ステップS01)に示す復号画像中のバンディング検出ブロックの画素値設定態様とほぼ同じであり、サイズのみが異なっている。
 この場合、パターン補正部216は、図10(ステップS03)に示すように、図10(ステップS02)に示す置き換えパターンのサイズを、図10(ステップS01)に示す復号画像中のバンディング検出ブロックの大きさに合せるサイズ調整を実行する。
 具体的には、置き換えパターンのサイズを縮小または拡大する。縮小は一定の間隔で画素を間引く処理により行う。拡大は各画素間に両画素の値の平均値の新規の画素を挿入する処理により行う。
 このサイズ調整後の置き換えパターンを図10(ステップS01)に示す復号画像中のバンディング検出ブロックに置き換えて出力する。
 なお、実際の置き換え処理は、図4に示す輝度パターン置換部217と、色度パターン置換部218において実行する。
 輝度パターン置換部217は、フレームバッファ116から、復号画像中のバンディング検出ブロックを入力して、このバンディング検出ブロックを、パターン補正部216の生成した補正後の置き換えパターンと同じ輝度出力分布を持つ輝度信号画像に置き換える処理を実行する。さらに、この置き換え処理後のブロック(輝度信号画像ブロック)を色度パターン置換部218に出力する。
 色度パターン置換部218は、輝度パターン置換部217から入力した輝度信号のみの置き換え処理後のブロック(輝度信号画像ブロック)に、パターン補正部216の生成した補正後の置き換えパターンと同じ色度出力分布を持つ色度信号画像を重畳する処理を実行する。さらに、この重畳処理後のブロックを合成部219に出力し、その他のブロックと合成した画像フレームとして出力する。
 なお、図10を参照して説明した例は、復号画像のバンディング領域の輝度、色度の最大値、最小値、傾きの平均値がほぼ同じでサイズのみが異なる置き換えパターンが置き換えパターン格納部214から取得された場合の置き換えパターンの補正処理例である。
 次に、図11を参照して、パターン補正部216の実行するもう一つの処理例について説明する。
 図11に示す例は、復号画像のバンディング領域ブロックの輝度、色度の最大値、最小値、傾きの平均値に最も類似するパターンとして置き換えパターン格納部214から取得した置き換えパターンが、復号画像のバンディング領域ブロックの輝度、色度の最大値、最小値、傾きの平均値に一致しないパターンである場合の補正処理例である。
 この場合、パターン補正部は、置き換えパターン格納部214から取得した置き換えパターンの最大値、最小値、傾きを、復号画像のバンディング領域ブロックの輝度、色度の最大値、最小値、傾きの平均値に近づける補正処理行うことが必要となる。
 図11(1)に示す復号画像ブロックは、復号画像を構成するブロックであり、バンディングが検出されたバンディング検出ブロックである。
 ブロック内の矢印は、輝度色度傾き平均値の傾きを持つベクトルを示す矢印である。この傾きは、左下方向に45°の傾きを持つ。
 図11(2)に示すパターンは、置き換えパターン格納部214に格納された1つの置き換えパターンである。
 このパターンは、左下45°方向に輝度、色度の値が低くなる設定の傾きを有する置き換えパターンである。
 この置き換えパターンは、図11(1)に示す復号画像中のバンディング検出ブロックの傾き方向は、ほぼ同じであるが、傾き角度が異なっている。すなわち、最大値、最小値の値が異なっており、傾きも異なっている。
 この場合、パターン補正部216は、図11(3)に示すように、図11(2)に示す置き換えパターンの最大値、最小値、傾きを、図11(1)に示す復号画像中のバンディング検出ブロックの大きさに合せるパターン補正処理を実行する。
 この補正処理後の置き換えパターンが図11(3)に示す置き換えパターンである。
 この図11(3)に示す置き換えパターンを、図11(1)に示す復号画像中のバンディング検出ブロックに置き換えて出力する。
 この置き換え処理によって、復号画像中のバンディング検出ブロックはバンディングの無い置き換えパターン画像に置き換えられることになり、バンディングの無い高品質な復号画像の出力が可能となる。
  [4.バンディング低減処理部の実行する処理のシーケンスについて]
 次に、本開示の画像復号装置100のバンディング低減処理部200の実行する処理のシーケンスについて、図12に示すフローチャートを参照して説明する。
 なお、図12に示すフローチャートに従った処理は、例えば画像復号装置100の記憶部に格納されたプログラムに従って実行することが可能であり、例えばプログラム実行機能を有するCPU等のプロセッサによるプログラム実行処理として行うことができる。
 以下、図12に示すフローの各ステップの処理について説明する。
  (ステップS101)
 まず、ステップS101において、バンディング検出処理を実行する。
 この処理は、図4に示すバンディング低減処理部200のバンディング検出部210において実行する処理である。
 バンディング検出部210は、フレームバッファ116に格納されたフィルタ処理結果である復号画像を取得して、復号画像に含まれるバンディング領域を検出する。復号画像の構成画素をスキャンしてバンディングが起こっている領域を検出する。例えば、ある画素と周辺画素の差分を閾値と比較する処理などによってバンディング領域であるか否かの判定処理を行い、バンディング領域を検出する。
 なお、この処理は、例えば符号化および復号処理単位であるCU(coding unit)単位等、複数の画素領域からなるブロック単位で実行する。
 ステップS101において、バンディングが検出されたバンディング領域ブロックについては、ステップS102以下の処理を実行する。
 一方、ステップS101において、バンディングが検出されなかったブロックについては、ステップS102以下の処理を行うことなくバンディング低減処理部200の処理は終了する。このブロックについては、ブロックがそのまま出力される。
  (ステップS102)
 ステップS101において、バンディングが検出されたバンディング領域ブロックについては、ステップS102以下の処理を実行する。
 ステップS102では、バンディングが検出されたブロックについて、ブロックの構成画素の輝度、および色度の最大値(max)、最小値(min)、傾き(slope)の検出および算出を実行する。
 この処理は、図4に示すバンディング低減処理部200の輝度最大値、最小値、傾き算出部211と、色度最大値、最小値、傾き算出部212が実行する。輝度最大値、最小値、傾き算出部211と、色度最大値、最小値、傾き算出部212は、先に図5を参照して説明した構成を適用して、ブロックの構成画素の輝度、および色度の最大値(max)、最小値(min)、傾き(slope)の検出および算出を実行する。
 なお、このステップS102の詳細シーケンスについては、後段で図13に示すフローチャートを参照して説明する。
  (ステップS103)
 次に、ステップS103において、輝度および色度の最大値、最小値、傾きの平均値を算出する。
 この処理は、図4に示すバンディング低減処理部200の輝度および色度の最大値、最小値、傾き平均値算出部213が実行する。
 輝度および色度の最大値、最小値、傾き平均値算出部213は、処理対象ブロックの輝度と色度の最大値と最小値と傾きの平均値を算出して、算出値を近似パターン探索部215に出力する。輝度および色度の最大値、最小値、傾き平均値算出部213は、例えば以下の算出式に従って輝度および色度の最大値と、最小値と傾きの平均値を算出する。
 輝度色度最大値平均値=(輝度最大値+色度最大値)/2
 輝度色度最小値平均値=(輝度最小値+色度最小値)/2
 輝度色度傾き平均値=(輝度傾き(θ1)+色度傾き(θ2))/2
  (ステップS104)
 次に、ステップS104において、ステップS103で算出した輝度および色度の最大値、最小値、傾き平均値からなるブロックに最も類似する置き換えパターンを置き換えパターン格納部から選択する。
 この処理は、図4に示すバンディング低減処理部200の近似パターン探索部215が実行する。
 近似パターン探索部215は、輝度および色度の最大値、最小値、傾き平均値算出部213から入力した処理対象ブロックの輝度と色度の最大値と最小値と傾きの平均値に基づいて、これらのデータに最も近い置き換えパターンを置き換えパターン格納部214から選択する。
 先に図7を参照して説明したように、置き換えパターン格納部214には様々なパターンの置き換えパターンが格納されている。置き換えパターン格納部214には、緩やかな画素値変化を持つバンディングの無い画像データ、またはそのような画像データを生成するための出力値を設定した複数の置き換えパターンが格納されている。
 近似パターン探索部215は、輝度および色度の最大値、最小値、傾き平均値算出部213から入力した処理対象ブロックの輝度と色度の最大値と最小値と傾きの平均値に基づいて、これらのデータに最も近い置き換えパターンを置き換えパターン格納部214から選択する。
  (ステップS105)
 次に、ステップS105において、ステップS104で選択した置き換えパターンの出力(n)をバンディング検出ブロックの出力(輝度と色度の平均値)(b)に調整する処理を行う。具体的には、以下の処理を行う。
 置き換えパターンの出力最大値(n)=バンディング検出ブロックの出力最大値(b)、
 置き換えパターンの出力最小値(n)=バンディング検出ブロックの出力最小値(b)
 この処理は、図4に示すバンディング低減処理部200のパターン補正部216が実行する。
 パターン補正部216は、近似パターン探索部215から入力する置き換えパターンの補正を行って、復号画像のバンディング領域に置き換える画像を生成する。
 ステップS105では、まず、置き換えパターンの出力最大値(n)を、バンディング検出ブロックの出力最大値(b)に一致させる処理と、置き換えパターンの出力最小値(n)をバンディング検出ブロックの出力最小値(b)に一致させる処理を行う。
 このように、パターン補正部216は、近似パターン探索部215から入力する置き換えパターンの色度、輝度の最小値、最大値を置き換え、全体のグラデーションの傾斜を調整する。この処理は、例えば、先に図8を参照して説明した処理であり、傾きの方向はそのままで、最大値と最小値の値を調整する。
 なお、先に図8を参照して説明したように、置き換えパターン格納部214に格納された置き換えパターンが、各画素の出力(色度、輝度)を0~1の比率を示す係数(coef)で設定したパターンである場合には、先に説明した(式1)に従って各画素の出力値を決定することができる。
 すなわち、パターン補正部216は、補正置き換えパターンの生成に際して、まず、パターンによる置き換え対象となるブロックの輝度、色度の最大値(max)、最小値(min)、傾きの平均値情報を、輝度および色度の最大値、最小値、傾き平均値算出部213から入力する。
 パターン補正部216は、これらの入力情報を用いて、補正置き換えパターンの各画素に設定する画素値(輝度、色度)を、以下の(式1)によって算出する。
 画素値(輝度、色度)=min+(max-min)×coef・・・(式1)
  (ステップS106)
 次に、ステップS106において、置き換えパターンのサイズを調整して置き換え処理を行う。
 この処理は、図4に示すパターン補正部216と、輝度パターン置換部217、および色度パターン置換部218の実行する処理である。
 パターン補正部216におけるサイズ調整は、先に図10を参照して説明した処理と同様の処理である。パターン補正部216は、図10(ステップS03)に示すように、図10(ステップS02)に示す置き換えパターンのサイズを、図10(ステップS01)に示す復号画像中のバンディング検出ブロックの大きさに合せるサイズ調整を実行する。
 例えば、処理対象ブロックであるバンディング検出ブロックが16×16画素であり、置き換パターン格納部214に格納された置き換えパターンが8×8画素であれば、置き換えパターンを縦横2倍に拡大する。逆に処理対象ブロックであるバンディング検出ブロックが4×4画素であり、置き換パターン格納部214に格納された置き換えパターンが8×8画素であれば、置き換えパターンを縦横1/2に縮小する等のサイズ調整を実行する。
 このサイズ調整後の置き換えパターンを図10(ステップS01)に示す復号画像中のバンディング検出ブロックに置き換えて出力する。
 なお、実際の置き換え処理は、図4に示す輝度パターン置換部217と、色度パターン置換部218において実行する。
 輝度パターン置換部217は、フレームバッファ116から、復号画像中のバンディング検出ブロックを入力して、このバンディング検出ブロックを、パターン補正部216の生成した補正後の置き換えパターンと同じ輝度出力分布を持つ輝度信号画像に置き換える処理を実行する。さらに、この置き換え処理後のブロック(輝度信号画像ブロック)を色度パターン置換部218に出力する。
 色度パターン置換部218は、輝度パターン置換部217から入力した輝度信号のみの置き換え処理後のブロック(輝度信号画像ブロック)に、パターン補正部216の生成した補正後の置き換えパターンと同じ色度出力分布を持つ色度信号画像を重畳する処理を実行する。さらに、この重畳処理後のブロックを合成部219に出力し、その他のブロックと合成した画像フレームとして出力する。
  (ステップS107)
 ステップS107の処理はオプションであり、図4に示すバンディング低減処理部200の合成部219から出力される画像に対するフィルタ処理である。
 図4には示していないが、合成部219の出力を入力するフィルタ処理部を設け、フィルタ処理部においてこのフィルタ処理を実行する。
 フィルタ処理部は、ブロック間の境界を目立たなくするぼかし処理を行う。例えば、置き換えパターンによって置き換えられるブロックと、そのブロックに隣接する置き換えの無い既存ブロックとの境界に色度や輝度の差が現れる可能性がある。この境界にフィルタ処理を行い境界部分が滑らかに遷移するように補正する。
 この図12に示すフローに従った処理を行うことで、復号画像中に出現したバンディングを、バンディングのない置き換えパターンで置き換えて出力されることになり、バンディングを消滅、あるいは低減した高品質な復号画像を出力することが可能となる。
 次に、図13に示すフローチャートを参照して、図12に示すフローのステップS102の処理、すなわち、バンディング検出ブロックの構成画素の輝度、および色度の最大値(max)、最小値(min)、傾き(slope)の算出処理の詳細シーケンスについて説明する。
 なお、この処理は、図4に示すバンディング低減処理部200の輝度最大値、最小値、傾き算出部211と、色度最大値、最小値、傾き算出部212が実行する。輝度最大値、最小値、傾き算出部211と、色度最大値、最小値、傾き算出部212は、先に図5を参照して説明した構成により、ブロックの構成画素の輝度、および色度の最大値(max)、最小値(min)、傾き(slope)の検出および算出を実行する。
  (ステップS121)
 まず、ステップS121において、処理対象となるブロック(CU等)をフレームバッファ116から取得する。
  (ステップS122)
 まず、ステップS122において、取得した処理ブロックの隣接4画素の平均値(輝度、色度)を、順次、算出し、画素位置座標とともにメモリに格納する。
 この処理は、図5に示す隣接画素平均値算出部231の実行する処理である。隣接画素平均値算出部231は、図5を参照して説明したように、バンディングの検出されたブロック(CU等)の例えば4画素等、複数画素の平均値を算出する。輝度最大値、最小値、傾き算出部211の場合は輝度の平均値を算出する。色度最大値、最小値、傾き算出部212の場合は色度の平均値を算出する。算出した平均値は、画素位置を示す座標情報に対応付けてメモリ232に格納する。
  (ステップS123)
 ステップS123では、処理対象ブロックの全画素について、ステップS122の平均値算出処理が完了したか否かを判定する。完了していない場合は、ステップS122に戻り、未処理画素についての処理を実行する。
 処理対象ブロックの全画素について、ステップS122の平均値算出処理が完了したと判定した場合は、ステップS124に進む。
  (ステップS124~S125)
 次に、ステップS124において、4画素単位の平均値(輝度、色度)の比較処理を行い、最大値と最小値を算出する。
 この処理は、図5に示す最大値、最小値算出部233の実行する処理である。
 最大値、最小値算出部233が、メモリ232から1つのブロック分の複数の平均値データを取得し、取得データから、最大値と最小値を選択して、ステップS125において、最大値、最小値データ241として出力する。データ出力先は、図4に示す輝度および色度の最大値、最小値、傾き平均値算出部213である。
  (ステップS126~S127)
 次に、ステップS126において、4画素単位の平均値(輝度、色度)の最大値と最小値と、これらの座標位置を用いて、最大値から最小値へ向かうベクトルの角度θを算出する。
 この処理は、図5に示す傾き算出部234の実行する処理である。傾き算出部234は、輝度、または色度の最大値と最小値との傾きの角度を求める。傾きは、ブロック内の最大値領域から最小値領域への方向を持つベクトルのなす角度とする。図5に示すように、最大値の座標(x1,y1)から最小値の座標(x2,y2)へ向かうベクトルの垂直軸(Y軸)からの傾き角度θを求め、これを、処理対象ブロックの傾きデータ242として出力する。
 傾き算出部234は、例えば、最大値、最小値を2点とする直角三角形の、直角を挟む2辺の長さを、座標位置の差から求め、逆三角関数atanより、傾きθを求める。
 傾き算出部234は、算出した傾きを、ステップS125において、傾きデータ242として出力する。データ出力先は、図4に示す輝度および色度の最大値、最小値、傾き平均値算出部213である。
 この処理の後、図12に示すフローのステップS103の処理が実行される。
  [5.(実施例2)復号画像のバンディング領域の輝度と色度を個別に考慮して、バンディング領域の置き換えパターンを決定するバンディング低減処理部の構成と処理の詳細について]
 次に、実施例2として、復号画像のバンディング領域の輝度と色度を個別に考慮して、バンディング領域の置き換えパターンを決定するバンディング低減処理部の構成と処理の詳細について説明する。
 図14は、本実施例2のバンディング低減処理部200の構成例を示すブロック図である。
 図14に示すように、バンディング低減処理部200はバンディング検出部210、輝度最大値、最小値、傾き算出部211、色度最大値、最小値、傾き算出部212、置き換えパターン格納部214、輝度近似パターン探索部251、色度近似パターン探索部252、輝度パターン補正部261、色度パターン補正部262、輝度パターン置換部217、色度パターン置換部218、合成部219を有する。
 これらの構成中、バンディング検出部210、輝度最大値、最小値、傾き算出部211、色度最大値、最小値、傾き算出部212、置き換えパターン格納部214、輝度パターン置換部217、色度パターン置換部218、合成部219、これらの構成は、先に実施例1として説明した図4に示す構成と同様の構成である。
 本実施例の構成では、図4に示す構成における輝度および色度の最大値、最小値、傾き平均値算出部213を廃止し、近似パターン探索部215を、輝度近似パターン探索部251、色度近似パターン探索部252の2つの探索部として構成し、パターン補正部216を、輝度パターン補正部261、色度パターン補正部262の2つの補正部としている。
 図14に示す実施例2のバンディング低減処理部200の各構成部の処理について説明する。
 バンディング検出部210は、フレームバッファ116に格納されたフィルタ処理結果である復号画像を取得して、復号画像に含まれるバンディング領域を検出する。復号画像の構成画素をスキャンしてバンディングが起こっている領域を検出する。例えば、ある画素と周辺画素の差分を閾値と比較する処理などによってバンディング領域であるか否かの判定処理を行い、バンディング領域を検出する。
 この処理は、図4を参照して説明した実施例1におけるバンディング検出部210の実行する処理と同様の処理である。
 輝度最大値、最小値、傾き算出部211と、色度最大値、最小値、傾き算出部212は、先に図5を参照して説明した構成を適用して、ブロックの構成画素の輝度、および色度の最大値(max)、最小値(min)、傾き(slope)の検出および算出を実行する。
 この処理は、図4を参照して説明した実施例1における輝度最大値、最小値、傾き算出部211と、色度最大値、最小値、傾き算出部212の実行する処理と同様の処理である。
 本実施例2では、実施例1で説明した輝度および色度の最大値、最小値、傾き平均値算出部213を有さず、輝度および色度の最大値、最小値、傾きの平均値の算出は行わない。
 輝度最大値、最小値、傾き算出部211の算出したブロックの構成画素の輝度の最大値(max)、最小値(min)、傾き(slope)データは、輝度近似パターン探索部251に出力される。輝度近似パターン探索部251は、この入力値、すなわち、ブロックの構成画素の輝度の最大値、最小値、傾きからなるブロックに最も類似する置き換えパターンを置き換えパターン格納部214から選択する。
 また、色度最大値、最小値、傾き算出部212の算出したブロックの構成画素の色度の最大値(max)、最小値(min)、傾き(slope)データは、色度近似パターン探索部252に出力される。色度近似パターン探索部252は、この入力値、すなわち、ブロックの構成画素の色度の最大値、最小値、傾きからなるブロックに最も類似する置き換えパターンを置き換えパターン格納部214から選択する。
 輝度近似パターン探索部251が置き換えパターン格納部214から選択した置き換えパターン、すなわち、ブロック構成画素の輝度の最大値、最小値、傾きからなるブロックに最も類似する置き換えパターンは、輝度パターン補正部261に出力される。
 一方、色度近似パターン探索部252が置き換えパターン格納部214から選択した置き換えパターン、すなわち、ブロック構成画素の色度の最大値、最小値、傾きからなるブロックに最も類似する置き換えパターンは、色度パターン補正部262に出力される。
 輝度パターン補正部261は、輝度近似パターン探索部251から入力する置き換えパターンの補正を行って、復号画像のバンディング領域に置き換える輝度画像を生成する。
 一方、色度パターン補正部262は、色度近似パターン探索部252から入力する置き換えパターンの補正を行って、復号画像のバンディング領域に置き換える色度画像を生成する。
 具体的には、輝度パターン補正部261は、輝度データのみの置き換えパターンの最大値、最小値、傾き、サイズを、置き換え対象となる復号画像のバンディング領域の輝度データに合せる補正処理を行う。
 一方、色度パターン補正部262は、色度データのみの置き換えパターンの最大値、最小値、傾き、サイズを、置き換え対象となる復号画像のバンディング領域の色度データに合せる補正処理を行う。
 その後、実際の置き換え処理が、図14に示す輝度パターン置換部217と、色度パターン置換部218において実行される。
 輝度パターン置換部217は、フレームバッファ116から、復号画像中のバンディング検出ブロックを入力して、このバンディング検出ブロックを、輝度パターン補正部261の生成した補正後の輝度置き換えパターンと同じ輝度出力分布を持つ輝度信号画像に置き換える処理を実行する。さらに、この置き換え処理後のブロック(輝度信号画像ブロック)を色度パターン置換部218に出力する。
 色度パターン置換部218は、輝度パターン置換部217から入力した輝度信号のみの置き換え処理後のブロック(輝度信号画像ブロック)に、色度パターン補正部262の生成した補正後の色度置き換えパターンと同じ色度出力分布を持つ色度信号画像を重畳する処理を実行する。さらに、この重畳処理後のブロックを合成部219に出力し、その他のブロックと合成した画像フレームとして出力する。
 このように、本実施例2では、輝度データと色度データに対する処理を個別に実行する。
 すなわち、輝度置き換えパターンと色度置き換えパターンを個別に生成して、その後これらのデータを重畳(合成)して最終的な置き換えパターンを生成して置き換えを行う。
 図15に具体的な処理例を示す。図15には、以下の各データを示している。
 (1)置き換えパターンP1
 (2)置き換えパターンP2
 (3)輝度置き換えパターンYP1
 (4)色度置き換えパターンCP2
 (5)輝度色度置き換えパターンYCP
 (1)置き換えパターンP1と、(2)置き換えパターンP2は、置き換えパターン格納部214に格納された置き換えパターンである。(1)置き換えパターンP1は、輝度近似パターン探索部251が置き換えパターン格納部214から選択した置き換えパターンに相当する。すなわち、ブロック構成画素の輝度の最大値、最小値、傾きからなるブロックに最も類似する置き換えパターンである。
 また、(2)置き換えパターンP2は、色度近似パターン探索部252が置き換えパターン格納部214から選択した置き換えパターンに相当する。すなわち、ブロック構成画素の色度の最大値、最小値、傾きからなるブロックに最も類似する置き換えパターンである。
 (3)輝度置き換えパターンYP1は、輝度パターン補正部261において生成される輝度置き換えパターンデータである。(1)置き換えパターンP1に輝度データを設定し、最大値、最小値、傾き、サイズを、置き換え対象となる復号画像のバンディング領域の輝度データに合せる補正処理を行って生成された輝度置き換えパターンYP1である。
 また、(4)色度置き換えパターンCP2は、色度パターン補正部262において生成される色度置き換えパターンデータである。(2)置き換えパターンP2に色度データを設定し、最大値、最小値、傾き、サイズを、置き換え対象となる復号画像のバンディング領域の色度データに合せる補正処理を行って生成された色度置き換えパターンCP2である。
 まず、(3)輝度置き換えパターンYP1が、輝度パターン置換部217に出力される。輝度パターン置換部217は、フレームバッファ116から、復号画像中のバンディング検出ブロックを入力して、このバンディング検出ブロックを、輝度パターン補正部261の生成した(3)輝度置き換えパターンYP1に置き換える処理を実行する。さらに、この置き換え処理後のブロック(輝度信号画像ブロック)を色度パターン置換部218に出力する。
 色度パターン置換部218は、輝度パターン置換部217から入力した輝度信号のみの置き換え処理後のブロック(輝度信号画像ブロック)に、色度パターン補正部262の生成した(4)色度置き換えパターンCP2を重畳する処理を実行する。
 この処理によって、復号画像中のバンディング検出ブロックは、図15に示す(5)輝度色度置き換えパターンYCPによって置き換えられる。置き換えられたブロックは合成部219を介してその他のブロックと合成され、画像フレームとして出力される。
 先の(実施例1)において図8を参照して説明した例では、色度、輝度ともに同じ補正置き換えパターンを利用して補正を行っているが、図14に示す構成を持つ実施例2のバンディング低減処理部200では、図15(1),(2)に示すように、輝度と色度に個別の異なる係数(coef)設定を持つ置き換えパターンを適用することが可能であり、それぞれのパターンを適用して、以下の(式2a)、(式2b)に従って、輝度補正置き換えパターンと、色度補正置き換えパターンを個別に生成することができる。
 画素値(輝度)=miny+(maxy-miny)×coefy・・・(式2a)
 画素値(色度)=minc+(maxc-minc)×coefc・・・(式2b)
 上記式において、
 maxy、miny、coefyは、置き換えパターンによる置き換え対象となるブロック(バンディング検出ブロック)の輝度の最大値(maxy)、最小値(miny)と、輝度近似パターン探索部251によって、置き換えパターン格納部214から選択された輝度対応の置き換えパターンに設定された出力比率(0~1)を示す係数(coefy)である。
 maxc、minc、coefcは、置き換えパターンによる置き換え対象となるブロックの色度の最大値(maxc)、最小値(minc)と、色度近似パターン探索部252によって、置き換えパターン格納部214から選択された色度対応の置き換えパターンに設定された出力比率(0~1)を示す係数(coefc)である。
 このように、本実施例2では、輝度データと色度データに対する処理を個別に実行する。すなわち、輝度置き換えパターンと色度置き換えパターンを個別に生成して、その後これらのデータを重畳(合成)して最終的な置き換えパターンを生成して置き換えを行う。
  [6.本開示のバンディング低減処理と、従来のバンディング低減処理との差異と本開示の処理による効果について]
 次に、本開示のバンディング低減処理と、従来のバンディング低減処理との差異と本開示の処理による効果について説明する。
 符号化画像の復号時に出現するバンディングを低減させる処理として、HEVC規格のSAO(サンプルアダプティプオフセット)のBO(バンドオフセット)という処理が従来から知られている。
 以下では、このBO(バンドオフセット)と、本開示の処理の差分と本開示の処理の長所について説明する。
 BO(バンドオフセット)処理は、符号化単位のユニットであるCU(Coding Unit)によって構成されるCTU(Coding Tree Unit)内の全画素を対象に、画素単位で実行される。
 BO(バンドオフセット)処理では各画素を32のバンドに分類する。例えば画素が8ビットであれば、各画素は、0から255までのビット値を採りうるので、256/32=8で、0~7のビット値を持つ画素を1つのバンド、8~15のビット値を持つ画素を1つのバンドというように計32のバンドに全画素を分類する。
 そして、エンコード側から連続した4つのバンドを指定し、その4つのバンドに対してオフセット値(これもエンコード側から指定して送信)を加算する。つまり、発想としてはバンディング境界・段差の色度、または輝度が低い側のバンドをかさ上げし、境界の差を小さくし、目立たなくするというものである。この処理は、全画素対象に演算を行うので、特に解像度が大きな映像では計算量が大きくなるという欠点がある。
 一方、本開示の処理では、まず処理単位、すなわち演算単位を、CTU(Coding Tree Unit)より小さいCU(Coding Unit)単位としているため、演算量を減らすことができる。また、CU毎に傾きが一番近い候補のパターンに置き換えるため、画素毎に加算などの演算を実行する必要がない。ただし、本開示の処理では、置き換えパターンを補正する処理のための演算は必要である。
 置き換えパターンを補正する処理のための演算は1つの置き換えパターンに対して1つの式で表すことができる。例えば、CUサイズを8×8画素として、置き換えパターン格納部214から選択した置き換えパターンとして、図8(1)に示す置き換えパターンを利用する場合について考察する。
 図8(1)に示す置き換えパターンは、置き換えパターン格納部214に格納された置き換えパターンであり、各画素の出力(色度、輝度)を0~1の比率を示す係数(coef)で設定したパターンである。最大値を1、最小値を0としている。係数(coef)は一例として小数点以下1桁までしか表記していないが、実運用上は小数点以下の桁数は、様々な設定が可能である。
 復号画像中のあるブロック(CU)がバンディングブロックであると判定された場合、パターン補正部216は、図8(1)に示す置き換えパターンを補正して最終的に出力する補正置き換えパターンを生成する。
 パターン補正部216は、補正置き換えパターンの生成に際して、まず、パターンによる置き換え対象となるブロックの輝度、色度の最大値(max)、最小値(min)、傾きの平均値情報を、輝度および色度の最大値、最小値、傾き平均値算出部213から入力する。
 パターン補正部216は、これらの入力情報を用いて、補正置き換えパターンの各画素に設定する画素値(輝度、色度)を、以下の(式1)によって算出する。
 画素値(輝度、色度)=min+(max-min)×coef・・・(式1)
 次にサイズを補正する。図8に示す例は、処理対象ブロック(CU)を8×8画素とした例であるが、処理対象ブロックであるバンディング検出ブロックが16×16画素であり、置き換パターン格納部214に格納された置き換えパターンが8×8画素であれば、置き換えパターンを縦横2倍に拡大する。
 逆に処理対象ブロックであるバンディング検出ブロックが4×4画素であり、置き換パターン格納部214に格納された置き換えパターンが8×8画素であれば、置き換えパターンを縦横1/2に縮小する。これらの演算はBOにはないものであり、演算量の増大をもたらすが、単一のかつ平易な式を適用した演算で実行可能であり、大きなコスト増加を発生させることはない。
 なお、先に説明したように、図14に示す構成を持つ実施例2のバンディング低減処理部200では、輝度と色度に個別の異なる係数(coef)設定を持つ置き換えパターンを適用することが可能であり、それぞれのパターンを適用して、以下の(式2a)、(式2b)に従って、輝度補正置き換えパターンと、色度補正置き換えパターンを個別に生成することができる。
 画素値(輝度)=miny+(maxy-miny)×coefy・・・(式2a)
 画素値(色度)=minc+(maxc-minc)×coefc・・・(式2b)
 さらに、本開示の処理では、処理対象ブロックであるバンディング検出ブロックの色度、輝度の傾き検出と、置き換えパターンの傾きの比較処理が必要になるが、置き換えパターンが例えば8パターン存在するとすると、バンディング検出ブロックの傾きを置き換え8パターンと比較するのみであるので処理量の大幅な増加はない。
 BO(バンドオフセット)処理においては32バンドの内、連続する4バンドのみ加算処理を行う。これはバンディング境界付近のバンドを指定して行われ、残りの28バンドは変化させていない。一方、本開示の処理では、バンディングケンシュツブロック全体の色度、輝度を置き換えパターンで全て置き換えてしまうため、バンディング境界の緩和をより効果的に行うことが可能となる。
 また、BO(バンドオフセット)処理においてはエンコード側である符号化部において加算する4バンドの一番小さなバンドとその加算値を指定する必要がある。従って、デコード側である復号部ではその値を加算する回路が必要となる。一方、本開示の処理ではエンコード側は何もする必要がないため、エンコード側の負荷を減らすことができる。ただし、デコード側では候補パターンを設定する必要はある。
 従来のバンディング低減処理に対する本開示の処理の優位性として、例えば以下のような優位性がある。
 (1)演算量を増やすことなく、バンディングを抑えることができる。
 (2)バンディング境界のみだけでなく、CU等のバンディング検出ブロック全体で置き換えパターンとの入れ替えを行うため、バンディング境界の緩和を効果的に行うことができる。
 (3)復号(デコード)工程の最終段でCU等のバンディング検出ブロックと補正置き換えパターンとの入れ替え処理を行うので、ストリームの転送ビットレートを上げずに済む。
 (4)符号化(エンコード)側でパラメータ等を付加して転送する必要がないため、エンコード処理の負荷低減につながる。
 (5)画像処理の手段が、ランダムなディザ追加ではないので、滑らかな画像になる。
 (6)CU等のブロック単位でのパターンの入れ替えのため、バンディング外の用途にも応用できる。例えば、リンギング緩和などにも利用可能である。
 本開示の処理を適用することで、例えば、これらの優位性がある。
  [7.画像復号装置のハードウェア構成例について]
 次に、図16を参照して、上述した処理を実行する画像復号装置のハードウェア構成例について説明する。
 CPU(Central Processing Unit)501は、ROM(Read Only Memory)502、または記憶部508に記憶されているプログラムに従って各種の処理を実行する制御部やデータ処理部として機能する。例えば、上述した実施例において説明したシーケンスに従った処理を実行する。RAM(Random Access Memory)503には、CPU501が実行するプログラムやデータなどが記憶される。これらのCPU501、ROM502、およびRAM503は、バス504により相互に接続されている。
 CPU501はバス504を介して入出力インタフェース505に接続され、入出力インタフェース505には、各種スイッチ、キーボード、マウス、マイクロホン、センサーなどよりなる入力部506、ディスプレイ、スピーカーなどよりなる出力部507が接続されている。CPU501は、入力部506から入力される指令に対応して各種の処理を実行し、処理結果を例えば出力部507に出力する。
 入出力インタフェース505に接続されている記憶部508は、例えばハードディスク等からなり、CPU501が実行するプログラムや各種のデータを記憶する。通信部509は、Wi-Fi通信、ブルートゥース(登録商標)(BT)通信、その他インターネットやローカルエリアネットワークなどのネットワークを介したデータ通信の送受信部として機能し、外部の装置と通信する。
 入出力インタフェース505に接続されているドライブ510は、磁気ディスク、光ディスク、光磁気ディスク、あるいはメモリカード等の半導体メモリなどのリムーバブルメディア511を駆動し、データの記録あるいは読み取りを実行する。
  [8.本開示の構成のまとめ]
 以上、特定の実施例を参照しながら、本開示の実施例について詳解してきた。しかしながら、本開示の要旨を逸脱しない範囲で当業者が実施例の修正や代用を成し得ることは自明である。すなわち、例示という形態で本発明を開示してきたのであり、限定的に解釈されるべきではない。本開示の要旨を判断するためには、特許請求の範囲の欄を参酌すべきである。
 なお、本明細書において開示した技術は、以下のような構成をとることができる。
 (1) 符号化画像の復号処理における処理単位であるブロックからバンディングを検出するバンディング検出部と、
 バンディング検出ブロックの画素値を、置き換えパターンに置き換えるパターン置換部を有する画像復号装置。
 (2) 前記画像復号装置は、
 前記バンディング検出ブロックの輝度の最大値と、最小値と、傾きを検出する輝度最大値、最小値、傾き検出部と、
 前記バンディング検出ブロックの色度の最大値と、最小値と、傾きを検出する色度最大値、最小値、傾き検出部を有し、
 前記バンディング検出ブロックの輝度、および色度の最大値と、最小値と、傾きに類似する置き換えパターンを選択する近似パターン探索部を有し、
 前記パターン置換部は、  
 前記近似パターン探索部が選択した置き換えパターンを利用した置き換え処理を実行する(1)に記載の画像復号装置。
 (3) 前記画像復号装置は、
 前記バンディング検出ブロックの輝度、および色度の最大値と、最小値と、傾き各々の平均値を算出する平均値算出部と、
 前記バンディング検出ブロックの輝度、および色度の最大値と、最小値と、傾き各々の平均値に類似する置き換えパターンを選択する近似パターン探索部を有し、
 前記パターン置換部は、
 前記近似パターン探索部が選択した置き換えパターンを利用した置き換え処理を実行する(1)または(2)に記載の画像復号装置。
 (4) 前記画像復号装置は、
 前記バンディング検出ブロックの輝度の最大値と、最小値と、傾きを検出する輝度最大値、最小値、傾き検出部と、
 前記バンディング検出ブロックの色度の最大値と、最小値と、傾きを検出する色度最大値、最小値、傾き検出部と、
 前記バンディング検出ブロックの輝度の最大値と、最小値と、傾きに類似する置き換えパターンを選択する輝度近似パターン探索部と、
 前記バンディング検出ブロックの色度の最大値と、最小値と、傾きに類似する置き換えパターンを選択する色度近似パターン探索部を有し、
 前記パターン置換部は、
 前記輝度近似パターン探索部が選択した輝度置き換えパターンと、前記色度近似パターン探索部が選択した色度置き換えパターンを合成して置き換える処理を実行する(1)に記載の画像復号装置。
 (5) 前記画像復号装置は、さらに、
 置き換えパターン格納部から取得した置き換えパターンを、前記バンディング検出ブロックの画素値設定態様に応じて補正して補正置き換えパターンを生成するパターン補正部を有し、
 前記パターン置換部は、
 前記パターン補正部が生成した補正置き換えパターンを利用した置き換え処理を実行する(1)~(4)いずれかに記載の画像復号装置。
 (6) 前記置き換えパターン格納部は、
 ブロック構成画素各々の出力比率を示す係数を設定した置き換えパターンを格納し、
 前記パターン補正部は、
 前記置き換えパターンの各画素に設定された係数を利用した演算により、前記補正置き換えパターンを生成する(5)に記載の画像復号装置。
 (7) 前記パターン補正部は、
 前記補正置き換えパターンの各画素の輝度および色度を、下記(式1)
 画素値(輝度、色度)=min+(max-min)×coef・・・(式1)、
 ただし、
 maxは、前記バンディング検出ブロックの輝度最大値と色度最大値の平均値、
 minは、前記バンディング検出ブロックの輝度最小値と色度最小値の平均値、
 coefは、前記置き換えパターンの各画素に設定された係数である、
 上記(式1)に従って算出する(6)に記載の画像復号装置。
 (8) 前記パターン補正部は、
 前記補正置き換えパターンの各画素の輝度および色度を、下記(式2a)、(式2b)、
 画素値(輝度)=miny+(maxy-miny)×coefy・・・(式2a)、
 画素値(色度)=minc+(maxc-minc)×coefc・・・(式2b)、
 ただし、
 maxyは、前記バンディング検出ブロックの輝度最大値、
 minyは、前記バンディング検出ブロックの輝度最小値、
 coefyは、前記置き換えパターン格納部から取得した輝度置き換えパターンの各画素に設定された係数、
 maxcは、前記バンディング検出ブロックの色度最大値、
 mincは、前記バンディング検出ブロックの色度最小値、
 coefcは、前記置き換えパターン格納部から取得した色度置き換えパターンの各画素に設定された係数である、
 上記(式1)に従って算出する(6)に記載の画像復号装置。
 (9) 前記画像復号装置は、
 前記パターン置換部による置き換えパターンに置き換え処理後の画像のブロック境界を目立たなくするフィルタ処理を実行するフィルタ処理部を有する(1)~(8)いずれかに記載の画像復号装置。
 (10) 前記復号処理における処理単位である前記ブロックは、
 HEVC(High Efficiency Video Coding)において符号化単位のユニットとして規定されるCU(Coding Unit)である(1)~(9)いずれかに記載の画像復号装置。
 (11) 画像復号装置において実行する画像復号方法であり、
 バンディング検出部が、符号化画像の復号処理における処理単位であるブロックからバンディングを検出するバンディング検出ステップと、
 パターン置換部が、バンディング検出ブロックの画素値を、置き換えパターンに置き換えるパターン置換ステップを実行する画像復号方法。
 (12) 画像復号装置において画像復号処理を実行させるプログラムであり、
 バンディング検出部に、符号化画像の復号処理における処理単位であるブロックからバンディングを検出させるバンディング検出ステップと、
 パターン置換部に、バンディング検出ブロックの画素値を、置き換えパターンに置き換えるパターン置換ステップを実行させるプログラム。
 また、明細書中において説明した一連の処理はハードウェア、またはソフトウェア、あるいは両者の複合構成によって実行することが可能である。ソフトウェアによる処理を実行する場合は、処理シーケンスを記録したプログラムを、専用のハードウェアに組み込まれたコンピュータ内のメモリにインストールして実行させるか、あるいは、各種処理が実行可能な汎用コンピュータにプログラムをインストールして実行させることが可能である。例えば、プログラムは記録媒体に予め記録しておくことができる。記録媒体からコンピュータにインストールする他、LAN(Local Area Network)、インターネットといったネットワークを介してプログラムを受信し、内蔵するハードディスク等の記録媒体にインストールすることができる。
 なお、明細書に記載された各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。また、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
 以上、説明したように、本開示の一実施例の構成によれば、バンディングの発生を低減した復号処理が実現される。
 具体的には、例えば、符号化画像の復号処理における処理単位であるブロックからバンディングを検出するバンディング検出部と、バンディング検出ブロックの画素値を置き換えパターンに置き換えるパターン置換部を有する。バンディング検出ブロックの輝度と色度の最大値と、最小値と、傾きを検出し、これら輝度と色度の最大値、最小値、傾きの平均値に類似する置き換えパターン、または輝度と色度個別の最大値、最小値、傾きに類似する置き換えパターンを選択し、選択した置き換えパターンをバンディング検出ブロックの設定に応じて補正して置き換える。
 本構成により、バンディングの発生を低減した復号処理が実現される。
 100 画像復号装置
 110 画像復号部
 111 エントロピー復号部
 112逆量子化部
 113 逆周波数変換部
 114 加算部
 115 ループ内フィルタ
 116 フレームバッファ
 121 イントラ予測部
 122 インター予測部
 123 モード切り替え部
 150 制御部
 200 バンディング低減処理部
 210 バンディング検出部
 211 輝度最大値、最小値、傾き算出部
 212 色度最大値、最小値、傾き算出部
 213 輝度および色度の最大値、最小値、傾き平均値算出部
 214 置き換えパターン格納部
 215 近似パターン探索部
 216 パターン補正部
 217 輝度パターン置換部
 218 色度パターン置換部
 219 合成部
 231 隣接画素平均値算出部
 232 メモリ
 233 最大値、最小値算出部
 234 傾き算出部
 251 輝度近似パターン探索部
 252 色度近似パターン探索部
 261 輝度パターン補正部
 262 色度パターン補正部
 501 CPU
 502 ROM
 503 RAM
 504 バス
 505 入出力インタフェース
 506 入力部
 507 出力部
 508 記憶部
 509 通信部
 510 ドライブ
 511 リムーバブルメディア

Claims (12)

  1.  符号化画像の復号処理における処理単位であるブロックからバンディングを検出するバンディング検出部と、
     バンディング検出ブロックの画素値を、置き換えパターンに置き換えるパターン置換部を有する画像復号装置。
  2.  前記画像復号装置は、
     前記バンディング検出ブロックの輝度の最大値と、最小値と、傾きを検出する輝度最大値、最小値、傾き検出部と、
     前記バンディング検出ブロックの色度の最大値と、最小値と、傾きを検出する色度最大値、最小値、傾き検出部を有し、
     前記バンディング検出ブロックの輝度、および色度の最大値と、最小値と、傾きに類似する置き換えパターンを選択する近似パターン探索部を有し、
     前記パターン置換部は、  
     前記近似パターン探索部が選択した置き換えパターンを利用した置き換え処理を実行する請求項1に記載の画像復号装置。
  3.  前記画像復号装置は、
     前記バンディング検出ブロックの輝度、および色度の最大値と、最小値と、傾き各々の平均値を算出する平均値算出部と、
     前記バンディング検出ブロックの輝度、および色度の最大値と、最小値と、傾き各々の平均値に類似する置き換えパターンを選択する近似パターン探索部を有し、
     前記パターン置換部は、
     前記近似パターン探索部が選択した置き換えパターンを利用した置き換え処理を実行する請求項1に記載の画像復号装置。
  4.  前記画像復号装置は、
     前記バンディング検出ブロックの輝度の最大値と、最小値と、傾きを検出する輝度最大値、最小値、傾き検出部と、
     前記バンディング検出ブロックの色度の最大値と、最小値と、傾きを検出する色度最大値、最小値、傾き検出部と、
     前記バンディング検出ブロックの輝度の最大値と、最小値と、傾きに類似する置き換えパターンを選択する輝度近似パターン探索部と、
     前記バンディング検出ブロックの色度の最大値と、最小値と、傾きに類似する置き換えパターンを選択する色度近似パターン探索部を有し、
     前記パターン置換部は、
     前記輝度近似パターン探索部が選択した輝度置き換えパターンと、前記色度近似パターン探索部が選択した色度置き換えパターンを合成して置き換える処理を実行する請求項1に記載の画像復号装置。
  5.  前記画像復号装置は、さらに、
     置き換えパターン格納部から取得した置き換えパターンを、前記バンディング検出ブロックの画素値設定態様に応じて補正して補正置き換えパターンを生成するパターン補正部を有し、
     前記パターン置換部は、
     前記パターン補正部が生成した補正置き換えパターンを利用した置き換え処理を実行する請求項1に記載の画像復号装置。
  6.  前記置き換えパターン格納部は、
     ブロック構成画素各々の出力比率を示す係数を設定した置き換えパターンを格納し、
     前記パターン補正部は、
     前記置き換えパターンの各画素に設定された係数を利用した演算により、前記補正置き換えパターンを生成する請求項5に記載の画像復号装置。
  7.  前記パターン補正部は、
     前記補正置き換えパターンの各画素の輝度および色度を、下記(式1)
     画素値(輝度、色度)=min+(max-min)×coef・・・(式1)、
     ただし、
     maxは、前記バンディング検出ブロックの輝度最大値と色度最大値の平均値、
     minは、前記バンディング検出ブロックの輝度最小値と色度最小値の平均値、
     coefは、前記置き換えパターンの各画素に設定された係数である、
     上記(式1)に従って算出する請求項6に記載の画像復号装置。
  8.  前記パターン補正部は、
     前記補正置き換えパターンの各画素の輝度および色度を、下記(式2a)、(式2b)、
     画素値(輝度)=miny+(maxy-miny)×coefy・・・(式2a)、
     画素値(色度)=minc+(maxc-minc)×coefc・・・(式2b)、
     ただし、
     maxyは、前記バンディング検出ブロックの輝度最大値、
     minyは、前記バンディング検出ブロックの輝度最小値、
     coefyは、前記置き換えパターン格納部から取得した輝度置き換えパターンの各画素に設定された係数、
     maxcは、前記バンディング検出ブロックの色度最大値、
     mincは、前記バンディング検出ブロックの色度最小値、
     coefcは、前記置き換えパターン格納部から取得した色度置き換えパターンの各画素に設定された係数である、
     上記(式1)に従って算出する請求項6に記載の画像復号装置。
  9.  前記画像復号装置は、
     前記パターン置換部による置き換えパターンに置き換え処理後の画像のブロック境界を目立たなくするフィルタ処理を実行するフィルタ処理部を有する請求項1に記載の画像復号装置。
  10.  前記復号処理における処理単位である前記ブロックは、
     HEVC(High Efficiency Video Coding)において符号化単位のユニットとして規定されるCU(Coding Unit)である請求項1に記載の画像復号装置。
  11.  画像復号装置において実行する画像復号方法であり、
     バンディング検出部が、符号化画像の復号処理における処理単位であるブロックからバンディングを検出するバンディング検出ステップと、
     パターン置換部が、バンディング検出ブロックの画素値を、置き換えパターンに置き換えるパターン置換ステップを実行する画像復号方法。
  12.  画像復号装置において画像復号処理を実行させるプログラムであり、
     バンディング検出部に、符号化画像の復号処理における処理単位であるブロックからバンディングを検出させるバンディング検出ステップと、
     パターン置換部に、バンディング検出ブロックの画素値を、置き換えパターンに置き換えるパターン置換ステップを実行させるプログラム。
PCT/JP2019/015378 2018-04-26 2019-04-09 画像復号装置、および画像復号方法、並びにプログラム WO2019208189A1 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2018-085516 2018-04-26
JP2018085516 2018-04-26

Publications (1)

Publication Number Publication Date
WO2019208189A1 true WO2019208189A1 (ja) 2019-10-31

Family

ID=68295354

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2019/015378 WO2019208189A1 (ja) 2018-04-26 2019-04-09 画像復号装置、および画像復号方法、並びにプログラム

Country Status (1)

Country Link
WO (1) WO2019208189A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113450711A (zh) * 2021-06-25 2021-09-28 京东方科技集团股份有限公司 显示装置及其驱动方法,驱动装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070286515A1 (en) * 2006-06-13 2007-12-13 Samsung Electronics Co., Ltd Method and apparatus for removing false contours
JP2008047102A (ja) * 2006-07-20 2008-02-28 Matsushita Electric Ind Co Ltd 画像処理装置及び画像処理方法
JP2009055591A (ja) * 2007-08-28 2009-03-12 Samsung Electronics Co Ltd 偽輪郭を探知および除去する方法および装置、ピクセルの輪郭可否を確認する方法および装置、またはシンプリシティを計算する方法および装置
WO2017033560A1 (ja) * 2015-08-25 2017-03-02 Kddi株式会社 動画像符号化装置、動画像復号装置、動画像符号化方法、動画像復号方法、およびプログラム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070286515A1 (en) * 2006-06-13 2007-12-13 Samsung Electronics Co., Ltd Method and apparatus for removing false contours
JP2008047102A (ja) * 2006-07-20 2008-02-28 Matsushita Electric Ind Co Ltd 画像処理装置及び画像処理方法
JP2009055591A (ja) * 2007-08-28 2009-03-12 Samsung Electronics Co Ltd 偽輪郭を探知および除去する方法および装置、ピクセルの輪郭可否を確認する方法および装置、またはシンプリシティを計算する方法および装置
WO2017033560A1 (ja) * 2015-08-25 2017-03-02 Kddi株式会社 動画像符号化装置、動画像復号装置、動画像符号化方法、動画像復号方法、およびプログラム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113450711A (zh) * 2021-06-25 2021-09-28 京东方科技集团股份有限公司 显示装置及其驱动方法,驱动装置

Similar Documents

Publication Publication Date Title
US11902515B2 (en) Method and apparatus for video coding
US9769496B2 (en) Method, apparatus, and program for encoding image, method, apparatus, and program for decoding image, and image processing system
US8750390B2 (en) Filtering and dithering as pre-processing before encoding
JP6464272B2 (ja) 画像符号化装置、画像復号化装置、及びこれらのプログラム
US20110069752A1 (en) Moving image encoding/decoding method and apparatus with filtering function considering edges
TW201820866A (zh) 用以移除漣漪效應之平滑化濾波方法和裝置
US20220417509A1 (en) Adaptive Bilateral Filtering Using Look-Up Tables
WO2020132908A1 (zh) 解码预测方法、装置及计算机存储介质
WO2019208189A1 (ja) 画像復号装置、および画像復号方法、並びにプログラム
US20230388550A1 (en) Method and apparatus for adaptively processing video samples in a video signal frame
JP2005117449A (ja) モスキートノイズ低減装置、モスキートノイズ低減方法、及びモスキートノイズ低減用プログラム
JP2017126829A (ja) 動画像符号化装置、動画像符号化方法、及びプログラム
KR102022375B1 (ko) Uhd tv용 업스케일 칩셋 모듈
EP3481064B1 (en) Adaptive loop filtering for high dynamic range video
KR20130078569A (ko) 관심영역 기반의 화질 향상을 위한 스크린 콘텐츠 비디오 부호화/복호화 방법 및 그 장치
KR20130020511A (ko) 영상 인트라 예측 방법 및 장치
WO2024041658A1 (en) On sao and ccsao
WO2024088003A1 (en) Method and apparatus of position-aware reconstruction in in-loop filtering
CN114424541B (zh) 压缩视频及重建压缩视频的系统、方法、及存储介质
WO2024016981A1 (en) Method and apparatus for adaptive loop filter with chroma classifier for video coding
WO2024017010A1 (en) Method and apparatus for adaptive loop filter with alternative luma classifier for video coding
WO2019208190A1 (ja) 画像符号化装置、および画像符号化方法、並びにプログラム
TW202406336A (zh) 用於重構視訊的適應性環路濾波器處理方法和裝置
TW202406337A (zh) 用於重構視訊的適應性環路濾波器處理方法和裝置
KR20190109293A (ko) 영상 부호화/복호화 방법 및 장치

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

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

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: JP