WO2008007757A1 - Image processing device, method, and program - Google Patents

Image processing device, method, and program Download PDF

Info

Publication number
WO2008007757A1
WO2008007757A1 PCT/JP2007/063948 JP2007063948W WO2008007757A1 WO 2008007757 A1 WO2008007757 A1 WO 2008007757A1 JP 2007063948 W JP2007063948 W JP 2007063948W WO 2008007757 A1 WO2008007757 A1 WO 2008007757A1
Authority
WO
WIPO (PCT)
Prior art keywords
image
deblocking
feature amount
unit
encoded
Prior art date
Application number
PCT/JP2007/063948
Other languages
English (en)
French (fr)
Inventor
Junichi Tanaka
Kazushi Sato
Yoichi Yagasaki
Kazuhiro Ishigaya
Original Assignee
Sony Corporation
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 Sony Corporation filed Critical Sony Corporation
Priority to US12/373,623 priority Critical patent/US8625924B2/en
Priority to RU2009101022/07A priority patent/RU2479938C2/ru
Priority to KR20097000640A priority patent/KR101364919B1/ko
Priority to BRPI0714048-7A priority patent/BRPI0714048A2/pt
Priority to CN2007800267311A priority patent/CN101491104B/zh
Publication of WO2008007757A1 publication Critical patent/WO2008007757A1/ja

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/117Filters, e.g. for pre-processing or post-processing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/14Coding unit complexity, e.g. amount of activity or edge presence estimation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/154Measured or subjectively estimated visual quality after decoding, e.g. measurement of distortion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • H04N19/82Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop

Definitions

  • the present invention relates to an image processing apparatus and method, and a program, and more particularly to an image processing apparatus and method that can improve image quality, and a program.
  • Block noise is one of the causes of image quality deterioration of images encoded by the MPEG-2 (Moving Picture Experts Group phase 2) method. Therefore, a deblocking process to remove block noise is performed in an apparatus that encodes an image by MPEG-4 (Moving Picture Experts Group phase 4) method or H.264 / AVC (Advanced Video Coding) method.
  • a deblocking filter to perform is provided (for example, see Patent Document 1). By this deblocking processing, it is possible to suppress deterioration in image quality even in an image having a low bit rate.
  • Patent Document 1 Japanese Patent No. 3489735
  • the present invention has been made in view of such a situation, and is intended to improve image quality by appropriately performing a deblocking process.
  • An image processing apparatus uses a second encoded before the first image to be used for motion prediction of the first image when the first image is encoded.
  • a deblocking filter that performs a deblocking process on the decoded image, and a feature amount calculating unit that calculates a feature amount that represents the complexity of the second image.
  • the deblocking filter includes: Deblocking processing to the decoded image based on the feature amount Is applied, or the strength of deblocking processing applied to the decoded image is controlled.
  • the feature amount calculating means can calculate the encoding difficulty level of the second image as the feature amount.
  • the feature quantity calculation means uses intra-frame prediction before the second image is encoded. Using the encoding difficulty level of the third image encoded in this way, a value obtained by normalizing the encoding difficulty level of the second image can be used as the feature amount.
  • the feature quantity calculating means divides the second image before encoding into a plurality of blocks.
  • the feature amount can be calculated based on the variance of the pixel values for each block.
  • the feature quantity calculation means calculates the feature quantity based on a transform coefficient obtained by dividing the second image before encoding into a plurality of blocks and performing orthogonal transform for each block. Can be calculated.
  • the feature quantity calculating means is based on a prediction error that is a difference between a predicted image for the second image predicted by inter-frame prediction and the second image before the sign. Thus, the feature amount can be calculated.
  • the image processing apparatus encodes an image using an H.264 / AVC (Advanced Video Coding) method, and the deblocking filter includes disable—deblocking—filter—idc, slice—alpha— By adjusting the value of cO-offset- ⁇ 2, or 7-koma, slice-beta-offset-div2, whether or not deblocking processing is applied to the decoded image, or deblocking processing applied to the decoded image
  • the intensity of the can be controlled.
  • the image processing apparatus encodes an image by MPEG-4 (Moving Picture Coding Experts Group phase 4), H.264 / AVC (Advanced Video Coding), or VC-1 (Video Codec 1). Can be made.
  • MPEG-4 Moving Picture Coding Experts Group phase 4
  • H.264 / AVC Advanced Video Coding
  • VC-1 Video Codec 1.1
  • An image processing method or program according to an aspect of the present invention is encoded before the first image, used for motion prediction of the first image when the first image is encoded.
  • No. 2 A feature amount representing the complexity of the image is calculated, and based on the feature amount, whether or not deblocking processing is applied to the decoded image obtained by decoding the second image, or deblocking applied to the decoded image Controlling the intensity of the process.
  • a second image encoded before the first image is used for motion prediction of the first image when the first image is encoded.
  • a feature amount representing complexity is calculated, and based on the feature amount, whether or not a deblocking process is applied to the decoded image obtained by decoding the second image, or a deblocking process applied to the decoded image.
  • the intensity is controlled.
  • deblocking processing can be appropriately performed in accordance with image characteristics.
  • image quality can be improved.
  • FIG. 1 is a block diagram showing an embodiment of an image processing apparatus to which the present invention is applied.
  • FIG. 2 is a flowchart for explaining a sign key process executed by the image processing apparatus of FIG. 1.
  • FIG. 3 is a flowchart for explaining a first embodiment of a deblocking control process executed by the image processing apparatus of FIG. 1.
  • FIG. 4 is a flowchart for explaining a second embodiment of a deblocking control process executed by the image processing apparatus of FIG. 2.
  • FIG. 5 is a flowchart for explaining a third embodiment of a deblocking control process executed by the image processing apparatus of FIG. 3.
  • FIG. 6 is a flowchart for explaining a fourth embodiment of a deblocking control process executed by the image processing apparatus of FIG. 4.
  • FIG. 7 is a block diagram showing an example of the configuration of a personal computer.
  • FIG. 1 is a block diagram showing a configuration of an embodiment of an image processing apparatus to which the present invention is applied.
  • the image processing apparatus 101 encodes an input image using an H.264ZAVC (Advanced Video Coding) method, and the encoded image is transferred to, for example, a recording device or a transmission path (not shown) in the subsequent stage. It is a device that outputs.
  • H.264ZAVC Advanced Video Coding
  • the image processing apparatus 101 includes an AZD (AnalogZDigital) conversion unit 111, a screen rearrangement buffer 112, a feature amount calculation unit 113, an adder 114, an orthogonal transformation unit 115, a quantization unit 116, a lossless encoding unit 117, Accumulation buffer 118, rate control unit 119, prediction error addition unit 120, inverse quantization unit 121, inverse orthogonal transformation unit 122, caloric calculator 123, deblocking filter 124, frame memory 125, intra prediction unit 126, and motion It is configured to include the prediction / compensation unit 127.
  • the feature amount calculation unit 113 is configured to include an activity calculation unit 141 and an orthogonal transformation unit 142.
  • the AZD conversion unit 111 converts an analog image input from the outside into a digital image.
  • the converted digital image (hereinafter also referred to as an original image as appropriate) is supplied to the screen rearrangement buffer 112.
  • the screen rearrangement buffer 112 converts the original image supplied from the AZD conversion unit 111 to GOP (
  • the data are rearranged and supplied to the feature amount calculation unit 113 in order.
  • the feature amount calculation unit 113 calculates a feature amount that represents the complexity of the original image. Also, the feature quantity calculation unit 113 supplies the original image for which the feature quantity has been calculated to the adder 114, the intra prediction unit 126, and the motion prediction / compensation unit 127.
  • the activity calculation unit 141 divides the original image into a plurality of blocks and distributes pixel values for each block, as will be described later with reference to FIG. Based on this, the feature amount of the original image is calculated.
  • the activity calculation unit 141 supplies information indicating the calculated feature amount to the deblocking filter 124.
  • the orthogonal transform unit 142 divides the original image into a plurality of blocks and performs original transform on the basis of transform coefficients obtained by performing orthogonal transform for each block.
  • the feature amount of the image is calculated.
  • the orthogonal transform unit 142 supplies information indicating the calculated feature amount to the fat mouth-packing filter 124.
  • the adder 114 uses, for each macroblock, an intra-predicted image predicted by using intra prediction (intraframe prediction) on the original image, and inter prediction (interframe prediction, motion compensation prediction). One of the predicted inter images is acquired from the intra prediction unit 126 or the motion prediction / compensation unit 127.
  • the adder 114 takes the difference between the original image and the intra-prediction image or the inter-prediction image for each macroblock, and converts the difference image having the prediction error power obtained by taking the difference into the orthogonal transform unit 115 and the prediction error. This is supplied to the adding unit 120.
  • the orthogonal transform unit 115 performs orthogonal transform such as discrete cosign transform or Karhunen's label transform on the difference image for each block of a predetermined size, and quantizes the transform coefficients obtained thereby. Supply to part 116.
  • the quantization unit 116 quantizes the transform coefficient supplied from the orthogonal transform unit 115 using the quantization scale controlled by the rate control unit 119, and converts the quantized transform coefficient into a lossless encoding unit. 117 and the inverse quantization unit 121.
  • the lossless encoding unit 117 acquires information regarding intra prediction from the intra prediction unit 126, and acquires information regarding inter prediction from the motion prediction / compensation unit 127.
  • the lossless code conversion unit 117 arranges quantized transform coefficients, information about intra prediction, information about inter prediction, etc. in a predetermined order, and uses CAVLC (Context-Adaptive Variable Length Coding) etc. for the arranged data.
  • Variable length coding or lossless coding processing such as arithmetic coding such as CABAC (Context-Adaptive Binary Arithmetic Coding) is performed.
  • the lossless code key unit 117 supplies the encoded data to the accumulation buffer 118 and accumulates it.
  • the accumulation buffer 118 outputs the data supplied from the lossless encoding unit 117 as an image encoded by the H.264 / AVC format, for example, to a recording device or a transmission path (not shown) in the subsequent stage.
  • the rate control unit 119 controls the bit rate, which is the code amount per time allocated to the image to be encoded, based on the code amount of the image stored in the accumulation buffer 118.
  • the rate control unit 119 uses the rate control method defined in MPEG-2 TestModel5 (TM5) to control the value of the quantization scale, which is the value by which the quantization unit 116 divides the transform coefficient when performing quantization.
  • TM5 MPEG-2 TestModel5
  • the rate control unit 119 calculates the code difficulty level as a feature amount representing the complexity of the original image, and deblocks the calculated code difficulty level. Supply to filter 124.
  • the prediction error adding unit 120 calculates a feature amount representing the complexity of the image based on the prediction error constituting the difference image supplied from the adder 114.
  • the prediction error adding unit 120 supplies information indicating the calculated feature amount to the deblocking filter 124.
  • the inverse quantization unit 121 performs inverse quantization on the transform coefficient supplied from the quantization unit 116 and supplies the transform coefficient to the inverse orthogonal transform unit 122.
  • the inverse orthogonal transform unit 122 performs inverse orthogonal transform such as inverse discrete cosine transform and inverse Karhunen 'label transform on the transform coefficient supplied from the inverse quantization unit 121. As a result, the difference image is decoded. The inverse orthogonal transform unit 122 supplies the decoded difference image to the adder 123.
  • inverse orthogonal transform such as inverse discrete cosine transform and inverse Karhunen 'label transform
  • the adder 123 acquires the intra prediction image or the inter prediction image used for generating the difference image from the intra prediction unit 126 or the motion prediction / compensation unit 127, and obtains the difference image and the acquired intra prediction image or The inter prediction image is added. As a result, the original image is decoded.
  • the adder 123 supplies the decoded image (hereinafter referred to as a decoded image as appropriate) to the debucking filter 124.
  • the deblocking filter 124 performs a deblocking process for removing block distortion on the decoded image. Note that the deblocking filter 124, as will be described later with reference to FIGS. 3 to 6, features obtained from the rate control unit 119, the prediction error addition unit 120, the activity calculation unit 141, or the orthogonal transform unit 142. Based on the Controls whether blocking processing is applied or the strength of deblocking processing applied to the decoded image.
  • the deblocking filter 124 supplies the decoded image subjected to the deblocking process to the frame memory 125. Further, the deblocking filter 124 supplies the decoded image without being subjected to deblocking processing to the frame memory 125 as it is as an image used for intra prediction.
  • the frame memory 125 stores the decoded image supplied from the deblocking filter 124 as an image to be referred to when intra prediction or inter prediction is performed (hereinafter, referred to as a reference image as appropriate).
  • the intra prediction unit 126 generates, for each macroblock, a predicted image for the original image using the encoded pixels adjacent to the macroblock in the same frame stored in the frame memory 125. Perform intra prediction. Note that, as described above, intra prediction pixels use pixels of the decoded image before the deblocking process is performed.
  • the motion prediction / compensation unit 127 detects the motion vector of the original image with respect to the reference image using the reference image of another frame stored in the frame memory 125 for each macroblock, and detects the detected motion vector. By performing motion compensation on the reference image using, inter prediction is performed to generate an inter prediction image for the original image.
  • the prediction mode to be applied to each macroblock is determined by a mode determination unit (not shown) using a Low Complexity Mode (high-speed mode) method, for example.
  • the applied prediction mode is an intra prediction prediction mode
  • the frame memory 125 and the intra prediction unit 126 are connected, and the intra prediction unit 126, the adder 114, and the adder 123 are connected. Connected.
  • the intra prediction unit 126 generates an intra prediction image based on the selected prediction mode, and supplies the generated intra prediction image to the adder 114 and the adder 123.
  • the intra prediction unit 126 supplies information such as the applied prediction mode to the lossless encoding unit 117 as information related to the intra prediction of the macroblock that has been subjected to the intra prediction.
  • the applied prediction mode is an inter prediction prediction mode
  • the frame memory 125 and the motion prediction 'compensation unit 127 are connected to each other, and the motion prediction' compensation unit 127, adder 114 and adder 123 are connected.
  • Motion prediction / compensation unit 127 Generates an inter prediction image based on the selected prediction mode, and supplies the generated inter prediction image to the adder 114 and the adder 123.
  • the intra prediction unit 126 uses information such as the applied prediction mode, the detected motion vector, and the number of the referenced image (picture) as information on the inter prediction of the macroblock that has been subjected to the inter prediction. To supply.
  • step S1 the image processing apparatus 101 starts encoding an image. That is, when each unit of the image processing apparatus 101 starts the operation described above with reference to FIG. 1, the encoding of the input image by the H.264ZAVC method is started. Further, the deblocking control process described later with reference to FIGS. 3 to 6 is also started.
  • step S2 the image processing apparatus 101 determines whether all images have been encoded.
  • image coding is performed until it is determined that all externally input images have been encoded, and it is determined that all images input from external cameras have been encoded. If so, the encoding process ends.
  • step S21 rate control section 119 calculates Complexity. Specifically, the rate control unit 119 obtains a coded image (picture) from the accumulation buffer 118. The rate control unit 119 calculates a code difficulty level Complexity as a feature amount representing the complexity of the image by the following equation (1).
  • PictureGeneratedBis indicates the generated code amount of the image.
  • PictureA verageQuant indicates the average value of the quantization scale applied to the image, and is calculated by the following equation (2).
  • MBNum indicates the number of macroblocks of the image.
  • Quantk indicates the quantization scale applied to the kth macroblock in the image, and is calculated by the following equation (3).
  • QPk represents the quantization parameter of the kth macroblock in the image.
  • Complexity obtained by Expression (1) is a value obtained by multiplying the generated code amount of the image by the average value of the quantization scale. Therefore, Complexity becomes smaller as the movement of the image becomes smaller, and becomes larger as the movement of the image becomes larger.
  • step S22 the deblocking filter 124 adjusts parameters related to the deblocking process. Specifically, the rate control unit 119 supplies information indicating the calculated Complexity to the deblocking filter 124. Depending on the Complexity value of the image to be deblocked, the deblocking filter 124 is disabled—deblocking g—filter—iac, slice—alpha—cO—offset—div2, and slice—beta—offset—div2. Adjust.
  • disable—deblocking—filter—idc is a parameter for setting whether to apply deblocking processing, and can be set for each slice.
  • disable—de blocking—filter—idc is set to 0 if deblocking is applied, set to 1 if deblocking is not applied, and is set to 2 if no deblocking is applied at the slice boundary. Is set.
  • slice—alpha—cO—offset—div2 is a parameter for adjusting the strength of deblocking processing applied to block boundaries when a slice is divided into 4 x 4 pixel blocks. It is possible to set for each.
  • slice—beta—offset—div2 is a parameter for adjusting the intensity of deblocking applied to the pixels inside the block when the slice is divided into 4 x 4 pixel blocks. It is possible to set for each.
  • the setting range of slice—beta—offset—div2 is -6 to +6. The smaller the value, the weaker the deblocking process applied. The higher the value, the stronger the deblocking process applied Will become stronger.
  • step S22 for example, when Complexity is smaller than a predetermined threshold value
  • the disable—deblocking_filter_idc is set to 1. That is, almost no block noise is generated! / Very little movement, and deblocking processing is not applied to images.
  • slice-alpha-cO-offset-div2 and slice-beta-offset-div2 is adjusted according to the value of Complexity. For example, the smaller the Complexity value, the slice—alpha—cO—offset—div2 and slice—beta—offset—div2 are set closer to —6, and the higher the Complexity value, the more slice—alpha—cO— offset—div2 and slice—beta— of f set—div2 is set to a value close to +6.
  • the strength of the deblocking process applied is reduced for images with little movement that are less likely to cause block noise, and the deblocking process is applied to images with large movements that are likely to generate block noise. The strength of is increased.
  • step S23 the deblocking filter 124 performs the deblocking process !, and the deblocking control process ends.
  • the decoded image subjected to the deblocking process is stored in the frame memory 125 as a reference image. Note that if disable—deblocking—filter —idc is set to 1, no deblocking will be performed.
  • the deblocking process is appropriately performed on the decoded image according to Complexity, and a reference image from which block noise has been removed while the texture is retained is generated. Therefore, it is possible to improve the image quality of an image that is inter-predicted using the reference image.
  • the value of the threshold value The may be changed based on the type of image, that is, whether the I picture, the P picture, and the B picture are shifted.
  • the P and B pictures which are images encoded using inter-frame prediction, are encoded using intra-frame prediction before the image. Normalization is performed using Complexity of the I picture, and the deblocking process may be controlled based on the normalized value (Norm—Complexity). Norm—ComplexityPpic with normalized Comp exit of P picture and Norm—ComplexityBpic with normalized Complexity of B picture are calculated by the following formulas (4) to (8).
  • Compiexitylpic PictureGeneratedBisIpic X PictureAverageQuantlpic ⁇ ⁇ ⁇ (4)
  • ComplexityPpic PictureGeneratedBisPpic X PictureAverageQuan tPpic...
  • ComplexityBpic PictureGeneratedBisBpic X PictureAvera geQuantBpic ⁇ ⁇ ⁇
  • Compiexitylpic, PictureGeneratedBisIpic ⁇ PictureAverageQuantlpic does not have the average value of I-picture code difficulty, generated code amount, and quantization scale. CodeB difficulty, generated code amount, and average value of quantization scale for ComplexityBpic, PictureGeneratedBisBpic, PictureAverageQuant ing.
  • disable-deblocking-filter-idc is set to 1 if Norm-Complexity is smaller than a predetermined threshold value Then. That is, the deblocking process is not applied to an image with very little movement that hardly generates block noise.
  • Norm—Complexity when Norm—Complexity is greater than or equal to the threshold Then, the value of Norm—Com piexity is set to “J”, slice alpna cO offset div2 and slice beta ofis et—The value of div2 is adjusted. For example, the smaller the Norm—Complexity value, the closer it is set to s lice one alpha one cO one offset one div2 and slice one beta one offset one div2 force one, and the larger the Norm—Complexity value, the more slice — Alpha— cO— of f set—div2 and slice—beta— offset—div2 is set to a value close to +6. In other words, the intensity of the debucking process that is applied is reduced for images with little movement that is less likely to cause block noise, and is applied to images that have large movement that is likely to cause block noise. The strength of the deblocking process is increased.
  • Norm ComplexityPpic and Norm— ComplexityBpic show the motion of P and B pictures when the motion of an I picture is 1, and extract the motion complexity of each picture more accurately Therefore, the deblocking process can be performed more appropriately, and the image quality of the inter prediction encoded image can be further improved.
  • the threshold value may be changed based on the type of image, that is, whether it is a P picture or a B picture! ,.
  • the I picture coded at the closest time before the image or the I picture referenced in the code image of the image is used. It is desirable.
  • the deblocking process is controlled based on Complexity.
  • step S41 the activity calculating unit 141 calculates Activity. Specifically, the activity calculation unit 141 calculates Activity as a feature amount representing the complexity of an image to be encoded from the following equation (9).
  • var sblk is a value representing the variance of the pixel values of the divided sub-blocks by dividing one macroblock into four sub-blocks composed of 8 X 8 pixels. And is obtained by the following equations (11) and (12).
  • Pk represents the pixel value of the kth pixel in the sub-block.
  • minsblk 1, 8 (var sblk) in equation (10) indicates that va r sblk is obtained for each sub-block in the frame DCT coding mode and in the field DCT coding mode. The minimum value of the obtained var sblk is obtained.
  • the Activity obtained by Equation (9) is the average value of the activity of each macroblock in the image, and is used in, for example, the rate control specified in MPEG-2 TestModel5 (TM5). Value. Therefore, Activity becomes smaller as an image with a small change in pixel value, and becomes larger as an image with a large change in pixel value.
  • step S42 the deblocking filter 124 adjusts parameters related to the deblocking process. Specifically, the activity calculation unit 141 supplies information indicating the calculated activity to the deblocking filter 124.
  • the deblocking filter 124 is set to disable—deblocking g—filter—iac, slice—alpha—cO—offset—div2, and slice—beta—offset—div2 depending on the Activity value of the image to be deblocked. Adjust.
  • Disable-deblocking-filt er idc is set to 1. That is, the pixel value changes with little block noise. The deblocking process is not applied to a flat image with very little image formation.
  • the values of slice-alpha-cO-offset-div2 and slice-beta-offset-div2 are adjusted according to the value of Activity.
  • the strength of the deblocking process applied is weakened, and block noise is likely to occur! / Complex images with large pixel value changes In contrast, the strength of the applied deblocking process is increased.
  • step S43 the deblocking process is performed in the same manner as the process in step S23 of Fig. 3 described above, and the deblocking control process ends.
  • the deblocking process is appropriately performed on the decoded image in accordance with the activity, and the reference image from which the block noise is removed while the texture is maintained is generated. Therefore, the image quality of an image that is inter-predictively encoded using the reference image can be improved.
  • Activity is a value used in rate control defined in MPEG-2 TestModel5 (TM5), for example, it may be calculated in rate control unit 119. Is possible.
  • the average value of the activity of each macroblock for example, a value that reflects the degree of dispersion of the pixel values of the image such as the total value of the activity of each macroblock. You can use it.
  • the orthogonal transform unit 142 calculates the sum of the orthogonal transform coefficients. Ingredients Specifically, the orthogonal transform unit 142 divides an image to be encoded into blocks of a predetermined size. In the following, an example will be described in which a block is divided into 4 ⁇ 4 pixels and Hadamard transform is used as orthogonal transform. The orthogonal transform unit 142 performs Hadamard transform on each block according to the following equation (13).
  • P represents a pixel matrix of 4 ⁇ 4 pixels before Hadamard transform
  • P ′ represents a 4 ⁇ 4 transform coefficient matrix after Hadamard transform
  • H represents the fourth-order Hadamard matrix shown in the following equation (14)
  • HT represents the transposed matrix of the fourth-order Hadamard matrix.
  • the orthogonal transform unit 142 transforms the transform coefficient at the coordinates (0, 0) of the transform coefficient matrix P 'for each block.
  • Ph is the sum of the absolute values of the conversion coefficients of the AC (alternating current) component having a correlation with the code amount among the conversion coefficients in the block after the Hadamard transform.
  • the orthogonal transformation unit 142 calculates a total sum DCtotal of Ph of all blocks in the image. Note that DCtotal is smaller for simple images with biased frequency components, and larger for complex images with distributed frequency components.
  • step S62 the deblocking filter 124 adjusts parameters related to the deblocking process. Specifically, the orthogonal transform unit 142 supplies information indicating the calculated DCtotal to the deblocking filter 124. The deblocking filter 124 determines whether to disable deblocking, filter according to the DCtotal value of the image to be deblocked.
  • step S63 the deblocking process is performed in the same manner as the process in step S23 of Fig. 3 described above, and the deblocking control process ends.
  • Hadamard transform is used as the orthogonal transform, but other orthogonal transforms such as DCT (discrete cosine transform) may be used.
  • DCT discrete cosine transform
  • the size of the block to be divided is not limited to the 4 X 4 pixels described above, and can be any size such as 8 X 8 pixels, for example.
  • DCtotal is the sum of transform coefficients that have been subjected to orthogonal transform and decomposed into frequency components, so the correlation with the degree of code difficulty of the image is higher, and the image is more accurate than Activity. It can represent complexity.
  • an orthogonal transform unit 115 may be used to calculate an orthogonal transform coefficient.
  • a value that reflects the magnitude of the orthogonal transform coefficient of the AC component of the image such as the average value of the orthogonal transform coefficient of the AC component, may be used.
  • step S81 the prediction error adding unit 120 calculates the sum of prediction errors. Specifically, the prediction error adding unit 120 supplies from the adder 1 14 when the image to be encoded from now on, that is, the image for which the difference is performed by the adder 1 14 is a P picture or a B picture. The prediction error is added by one picture. As a result, the sum Et of prediction errors is calculated. Et is smaller as the image motion is easier to predict, that is, the smaller and simpler the image motion is, and the harder it is to predict the image motion, that is, the larger the image motion is. And the more complex, the bigger.
  • step S82 the deblocking filter 124 adjusts parameters related to the deblocking process. Specifically, the prediction error adding unit 120 supplies information indicating the calculated prediction error total Et to the deblocking filter 124.
  • the deblocking filter 124 adjusts the values of disable—deblocking—filter—idc, slice—alpha—cO—offset—div2, and slice—beta—offset—div2 according to the value of Et.
  • the disable-deblocking-filter-id c is set to 1. In other words, deblocking processing is not applied to images with little block noise and almost no image movement!
  • the values of slice-alpha-c0-offset-div2 and slice-beta-offset-div2 are adjusted according to the value of Et. For example, the smaller the value of E t, the slice—alpha—cO—offset—div2 and slice—beta—off set—div2 are set closer to -6, and the higher the Et value, the more slice—alpha—cO —Offset—div2 and slice—beta—offset—div2 is set to a value close to +6.
  • the strength of the deblocking process applied is weakened, and the movement of images that are prone to block noise is large and complicated. In contrast, the strength of the deblocking process applied Is strengthened.
  • step S83 the deblocking process is performed in the same manner as the process in step S23 of Fig. 3 described above, and the deblocking control process ends.
  • a deblocking process is appropriately performed on the decoded image, and a reference image from which block noise has been removed while maintaining the tissue is generated. Therefore, it is possible to improve the image quality of an image that is inter-predictively encoded using the reference image.
  • a value reflecting the magnitude of the prediction error for the image such as an average value of orthogonal transform coefficients, may be used.
  • the deblocking process can be appropriately performed according to the feature of the image, and as a result, the subjective image quality of the image can be improved.
  • the power of the example in which the encoding is performed according to the H.264ZAVC scheme is a coding scheme using an in-loop deblocking filter, for example, MPEG-4 (Moving Picture It can also be applied to cases where coding is performed by Coding Experts Group phase 4), VC-1 (Video Codec 1) method, or the like.
  • MPEG-4 Moving Picture It can also be applied to cases where coding is performed by Coding Experts Group phase 4
  • VC-1 Video Codec 1
  • the series of processes described above can be executed by hardware or can be executed by software.
  • various functions are executed by installing a computer built into dedicated hardware or various programs that make up the software. For example, it is installed from a program recording medium in a general-purpose personal computer or the like.
  • FIG. 7 is a block diagram showing an example of the configuration of a personal computer 300 that executes the above-described series of processing by a program.
  • a CPU Central Processing Unit
  • ROM Read Only Memory
  • a RAM Random Access Memory
  • FIG. 7 is a block diagram showing an example of the configuration of a personal computer 300 that executes the above-described series of processing by a program.
  • a CPU Central Processing Unit
  • ROM Read Only Memory
  • a RAM Random Access Memory
  • the CPU 301 is also connected with an input / output interface 305 via the bus 304 !.
  • the input / output interface 305 is connected to an input unit 306 including a keyboard, a mouse, and a microphone, and an output unit 307 including a display and a speaker.
  • the CPU 301 executes various processes in response to commands input from the input unit 306. Then, the CPU 301 outputs the processing result to the output unit 307.
  • the recording unit 308 connected to the input / output interface 305 is made of, for example, a node disk, and stores programs executed by the CPU 301 and various data.
  • the communication unit 309 communicates with an external device via a network such as the Internet or a local area network.
  • the program may be acquired via the communication unit 309 and stored in the recording unit 308.
  • the drive 310 connected to the input / output interface 305 drives them when a removable medium 311 such as a magnetic disk, an optical disk, a magneto-optical disk, or a semiconductor memory is attached, and records them there. Get programs and data. Acquired programs and data are transferred to the recording unit 308 and stored as necessary.
  • a removable medium 311 such as a magnetic disk, an optical disk, a magneto-optical disk, or a semiconductor memory
  • a program recording medium for storing a program that is installed in a computer and is ready to be executed by the computer includes a magnetic disk (including a flexible disk), an optical disk (CD-ROM ( Compact Disc -Read Only Memory), DVD (Digital Versatile Disc), removable media 311 which is a package media consisting of magneto-optical disc, semiconductor memory, etc. It consists of a ROM 302 where the ram is stored temporarily or permanently, and a hard disk that constitutes the recording unit 308.
  • the program is stored in the program recording medium using a wired or wireless communication medium such as a local area network, the Internet, or digital satellite broadcasting via a communication unit 309 that is an interface such as a router or a modem as necessary. Done.
  • the step of describing a program stored in the program recording medium is not necessarily performed in time series in the order described, but is necessarily performed in time series. It also includes processing that is executed in parallel or individually.

Landscapes

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

Description

明 細 書
画像処理装置および方法、並びに、プログラム
技術分野
[0001] 本発明は、画像処理装置および方法、並びに、プログラムに関し、画質を向上させ ることができるようにした画像処理装置および方法、並びに、プログラムに関する。 背景技術
[0002] MPEG - 2 (Moving Picture Experts Group phase 2)方式により符号化 した画像の画質劣化の一因としてブロックノイズがある。そこで、 MPEG— 4 (Movin g Picture Experts Group phase 4)方式、または、 H. 264/AVC (Advanc ed Video Coding)方式により画像を符号ィ匕する装置においては、ブロックノイズ を除去するデブロッキング処理を行うデブロッキングフィルタが設けられて 、る(例え ば、特許文献 1参照)。このデブロッキング処理により、特に低ビットレートの画像にお いても、画質の劣化を抑えることができる。
[0003] 特許文献 1:特許第 3489735号公報
発明の開示
発明が解決しょうとする課題
[0004] しかしながら、デブロッキング処理は、ブロック境界に対してローパスフィルタリング 処理を施すため、ブロックノイズを除去できる一方、画像の模様などの詳細情報 (以 下、テクスチャとも称する)が失われてしまうという問題がある。
[0005] 本発明は、このような状況に鑑みてなされたものであり、デブロッキング処理を適切 に施すことにより、画質を向上させるようにするものである。
課題を解決するための手段
[0006] 本発明の一側面の画像処理装置は、第 1の画像を符号化する場合に前記第 1の画 像の動き予測に用いる、前記第 1の画像より前に符号化された第 2の画像を復号した 復号画像に対して、デブロッキング処理を施すデブロッキングフィルタと、前記第 2の 画像の複雑さを表す特徴量を算出する特徴量算出手段とが設けられ、前記デブロッ キングフィルタは、前記特徴量に基づいて、前記復号画像へのデブロッキング処理 の適用の有無、または、前記復号画像に適用するデブロッキング処理の強度を制御 する。
[0007] 前記特徴量算出手段には、前記第 2の画像の符号化難易度を前記特徴量として 算出させることができる。
[0008] 前記特徴量算出手段には、前記第 2の画像がフレーム間予測を用いて符号化され た画像である場合、前記第 2の画像が符号ィ匕される前にフレーム内予測を用いて符 号化された第 3の画像の符号ィ匕難易度を用いて、前記第 2の画像の符号化難易度を 正規ィ匕した値を前記特徴量とさせることができる。
[0009] 前記特徴量算出手段には、符号化前の前記第 2の画像を複数のブロックに分割し
、前記ブロックごとの画素値の分散に基づいて、前記特徴量を算出させることができ る。
[0010] 前記特徴量算出手段には、符号化前の前記第 2の画像を複数のブロックに分割し 、前記ブロックごとに直交変換を施すことにより得られる変換係数に基づいて、前記 特徴量を算出させることができる。
[0011] 前記特徴量算出手段には、フレーム間予測により予測された前記第 2の画像に対 する予測画像と符号ィ匕前の前記第 2の画像との差分である予測誤差に基づ 、て、前 記特徴量を算出させることができる。
[0012] 前記画像処理装置には、 H. 264/AVC (Advanced Video Coding)方式によ り画像を符号化させ、前記デブロッキングフィルタには、 disable— deblocking— filt er― idc、 slice― alpha― cO― offset― αιν2、ま 7こ ίま、 slice― beta― offset― div2 の値を調整することにより、前記復号画像に対するデブロッキング処理の適用の有無 、または、前記復号画像に適用するデブロッキング処理の強度を制御させることがで きる。
[0013] 前記画像処理装置には、 MPEG— 4 (Moving Picture Coding Experts Gr oup phase4)、H. 264/AVC (Advanced Video Coding)、または、 VC— 1 ( Video Codec 1)方式により画像を符号化させることができる。
[0014] 本発明の一側面の画像処理方法またはプログラムは、第 1の画像を符号化する場 合に前記第 1の画像の動き予測に用いる、前記第 1の画像より前に符号化された第 2 の画像の複雑さを表す特徴量を算出し、前記特徴量に基づいて、前記第 2の画像を 復号した復号画像へのデブロッキング処理の適用の有無、または、前記復号画像に 適用するデブロッキング処理の強度を制御するステップを含む。
[0015] 本発明の一側面においては、第 1の画像を符号化する場合に前記第 1の画像の動 き予測に用いる、前記第 1の画像より前に符号化された第 2の画像の複雑さを表す特 徴量が算出され、前記特徴量に基づいて、前記第 2の画像を復号した復号画像への デブロッキング処理の適用の有無、または、前記復号画像に適用するデブロッキング 処理の強度が制御される。
発明の効果
[0016] 本発明の一側面によれば、画像の特徴に応じて、デブロッキング処理を適切に施 すことができる。また、本発明の一側面によれば、画質を向上させることができる。 図面の簡単な説明
[0017] [図 1]本発明を適用した画像処理装置の一実施の形態を示すブロック図である。
[図 2]図 1の画像処理装置により実行される符号ィ匕処理を説明するためのフローチヤ ートである。
[図 3]図 1の画像処理装置により実行されるデブロッキング制御処理の第 1の実施の 形態を説明するためのフローチャートである。
[図 4]図 2の画像処理装置により実行されるデブロッキング制御処理の第 2の実施の 形態を説明するためのフローチャートである。
[図 5]図 3の画像処理装置により実行されるデブロッキング制御処理の第 3の実施の 形態を説明するためのフローチャートである。
[図 6]図 4の画像処理装置により実行されるデブロッキング制御処理の第 4の実施の 形態を説明するためのフローチャートである。
[図 7]パーソナルコンピュータの構成の例を示すブロック図である。
符号の説明
[0018] 101 画像処理装置, 113 特徴量算出部, 114 加算器, 115 直交変換部 , 119 レート制御部, 120 予測誤差加算部, 124 デブロッキングフィルタ, 126 イントラ予測部, 127 動き予測'補償部, 141 アクティビティ算出部, 14 2 直交変換部
発明を実施するための最良の形態
[0019] 以下、図面を参照して、本発明の実施の形態について説明する。
[0020] 図 1は、本発明を適用した画像処理装置の一実施の形態の構成を示すブロック図 である。
[0021] 画像処理装置 101は、入力された画像を H. 264ZAVC (Advanced Video C oding)方式により符号ィ匕し、符号化した画像を、例えば、後段の図示せぬ記録装置 や伝送路などに出力する装置である。
[0022] 画像処理装置 101は、 AZD(AnalogZDigital)変換部 111、画面並べ替えバッ ファ 112、特徴量算出部 113、加算器 114、直交変換部 115、量子化部 116、可逆 符号化部 117、蓄積バッファ 118、レート制御部 119、予測誤差加算部 120、逆量子 化部 121、逆直交変換部 122、カロ算器 123、デブロッキングフィルタ 124、フレームメ モリ 125、イントラ予測部 126、および、動き予測 ·補償部 127を含むように構成される 。また、特徴量算出部 113は、アクティビティ算出部 141および直交変換部 142を含 むように構成される。
[0023] AZD変換部 111は、外部から入力されたアナログの画像をデジタルの画像に AZ
D変換し、変換後のデジタルの画像 (以下、適宜、原画像とも称する)を画面並べ替 えバッファ 112に供給する。
[0024] 画面並べ替えバッファ 112は、 AZD変換部 111から供給された原画像を、 GOP (
Group Of Pictures)構造に基づいて並べ替え、順に、特徴量算出部 113に供給 する。
[0025] 特徴量算出部 113は、原画像の複雑さを表す特徴量を算出する。また、特徴量算 出部 113は、特徴量の算出が終わった原画像を、加算器 114、イントラ予測部 126、 および、動き予測'補償部 127に供給する。
[0026] 特徴量算出部 113を構成する要素のうち、アクティビティ算出部 141は、図 4を参照 して後述するように、原画像を複数のブロックに分割し、ブロックごとの画素値の分散 に基づいて、原画像の特徴量を算出する。アクティビティ算出部 141は、算出した特 徴量を示す情報をデブロッキングフィルタ 124に供給する。 [0027] また、直交変換部 142は、図 5を参照して後述するように、原画像を複数のブロック に分割し、ブロックごとに直交変換を施すことにより得られる変換係数に基づいて、原 画像の特徴量を算出する。直交変換部 142は、算出した特徴量を示す情報をデブ口 ッキングフィルタ 124に供給する。
[0028] 加算器 114は、マクロブロックごとに、原画像に対してイントラ予測(フレーム内予測 )を用いて予測したイントラ予測画像、および、インター予測 (フレーム間予測、動き補 償予測)を用いて予測したインター予測画像のうちいずれか一方の予測画像を、イン トラ予測部 126または動き予測 ·補償部 127から取得する。加算器 114は、マクロプロ ックごとに、原画像とイントラ予測画像またはインター予測画像との差分を取り、差分 を取ることに得られた予測誤差力もなる差分画像を直交変換部 115および予測誤差 加算部 120に供給する。
[0029] 直交変換部 115は、差分画像に対して、所定の大きさのブロックごとに離散コサイ ン変換またはカルーネン 'レーべ変換等の直交変換を施し、これにより得られた変換 係数を量子化部 116に供給する。
[0030] 量子化部 116は、レート制御部 119により制御される量子化スケールを用いて、直 交変換部 115から供給された変換係数を量子化し、量子化した変換係数を可逆符 号化部 117および逆量子化部 121に供給する。
[0031] 可逆符号化部 117は、イントラ予測に関する情報をイントラ予測部 126から取得し、 インター予測に関する情報を動き予測'補償部 127から取得する。可逆符号変換部 117は、量子化された変換係数、イントラ予測に関する情報、インター予測に関する 情報などを所定の順序に配置し、配置したデータに対して CAVLC (Context -Ad aptive Variable Length Coding)などの可変長符号化、または、 CABAC (Co ntext- Adaptive Binary Arithmetic Coding)などの算術符号化等の可逆符 号化処理を施す。可逆符号ィ匕部 117は、符号ィ匕したデータを蓄積バッファ 118に供 給して蓄積させる。
[0032] 蓄積バッファ 118は、可逆符号ィ匕部 117から供給されたデータを、 H. 264/AVC 方式で符号化された画像として、例えば、後段の図示せぬ記録装置や伝送路などに 出力する。 [0033] レート制御部 119は、蓄積バッファ 118に記憶されている画像の符号量に基づいて 、符号ィ匕する画像に割り当てられる時間当たりの符号量であるビットレートを制御する 例えば、レート制御部 119は、 MPEG - 2 TestModel5 (TM5)に規定されるレート 制御方式を用いて、量子化部 116が量子化を行うときに変換係数を除算する値であ る量子化スケールの値を制御することによりビットレートを制御する。また、レート制御 部 119は、図 3を参照して後述するように、原画像の複雑さを表す特徴量として、符 号ィ匕難易度を算出し、算出した符号ィ匕難易度をデブロッキングフィルタ 124に供給 する。
[0034] 予測誤差加算部 120は、図 6を参照して後述するように、加算器 114から供給され る差分画像を構成する予測誤差に基づいて、画像の複雑さを表す特徴量を算出す る。予測誤差加算部 120は、算出した特徴量を示す情報をデブロッキングフィルタ 12 4に供給する。
[0035] 逆量子化部 121は、量子化部 116から供給された変換係数を逆量子化して逆直交 変換部 122に供給する。
[0036] 逆直交変換部 122は、逆量子化部 121から供給された変換係数に対して逆離散コ サイン変換、逆カルーネン 'レーべ変換等の逆直交変換を施す。これにより、差分画 像が復号される。逆直交変換部 122は、復号した差分画像を加算器 123に供給する
[0037] 加算器 123は、差分画像の生成に用いられたイントラ予測画像またはインター予測 画像を、イントラ予測部 126または動き予測 ·補償部 127から取得し、差分画像と取 得したイントラ予測画像またはインター予測画像とを加算する。これにより、原画像が 復号される。加算器 123は、復号した画像 (以下、適宜、復号画像と称する)をデブ口 ッキングフィルタ 124に供給する。
[0038] デブロッキングフィルタ 124は、復号画像に対して、ブロック歪みを除去するための デブロッキング処理を施す。なお、デブロッキングフィルタ 124は、図 3乃至図 6を参 照して後述するように、レート制御部 119、予測誤差加算部 120、アクティビティ算出 部 141、または、直交変換部 142から取得した特徴量に基づいて、復号画像へのデ ブロッキング処理の適用の有無、または、復号画像に適用するデブロッキング処理の 強度を制御する。デブロッキングフィルタ 124は、デブロッキング処理を施した復号画 像をフレームメモリ 125に供給する。また、デブロッキングフィルタ 124は、イントラ予 測に用いる画像として、デブロッキング処理を施さな ヽ復号画像をそのままフレームメ モリ 125に供給する。
[0039] フレームメモリ 125は、デブロッキングフィルタ 124から供給される復号画像を、イン トラ予測またはインター予測が行われる場合に参照される画像 (以下、適宜、参照画 像と称する)として記憶する。
[0040] イントラ予測部 126は、マクロブロックごとに、フレームメモリ 125に記憶されている 同じフレーム内の当該マクロブロックに隣接する符号ィ匕済みの画素を用いて、原画 像に対する予測画像を生成するイントラ予測を行う。なお、上述したように、イントラ予 測〖こは、デブロッキング処理を施す前の復号画像の画素が用いられる。
[0041] 動き予測'補償部 127は、マクロブロックごとに、フレームメモリ 125に記憶されてい る他のフレームの参照画像を用いて、参照画像に対する原画像の動きベクトルを検 出し、検出した動きベクトルを用いて参照画像に動き補償を施こすことにより、原画像 に対するインター予測画像を生成するインター予測を行う。
[0042] なお、各マクロブロックに適用する予測モードは、例えば、図示せぬモード判定部 により、 Low Complexity Mode (高速モード)方式を用いて判定される。適用され る予測モードがイントラ予測の予測モードである場合、図 1に示されるように、フレーム メモリ 125とイントラ予測部 126とが接続され、イントラ予測部 126と加算器 114および 加算器 123とが接続される。イントラ予測部 126は、選択された予測モードに基づい てイントラ予測画像を生成し、生成したイントラ予測画像を加算器 114および加算器 123に供給する。また、イントラ予測部 126は、イントラ予測を行ったマクロブロックの イントラ予測に関する情報として、適用した予測モードなどの情報を可逆符号化部 11 7に供給する。
[0043] また、適用される予測モードがインター予測の予測モードである場合、図 1には示さ れていないが、フレームメモリ 125と動き予測'補償部 127とが接続され、動き予測' 補償部 127と加算器 114および加算器 123とが接続される。動き予測 ·補償部 127 は、選択された予測モードに基づいてインター予測画像を生成し、生成したインター 予測画像を加算器 114および加算器 123に供給する。また、イントラ予測部 126は、 インター予測を行ったマクロブロックのインター予測に関する情報として、適用した予 測モード、検出した動きベクトル、参照した画像 (ピクチャ)の番号などの情報を可逆 符号化部 117に供給する。
[0044] 次に、図 2のフローチャートを参照して、図 1の画像処理装置 101により実行される 符号化処理について説明する。なお、この処理は、例えば、外部から画像処理装置 101への画像の入力が開始されたとき、開始される。
[0045] ステップ S1において、画像処理装置 101は、画像の符号化を開始する。すなわち 、図 1を参照して上述した動作を、画像処理装置 101の各部が開始することにより、 入力された画像の H. 264ZAVC方式による符号ィ匕が開始される。また、図 3乃至 図 6を参照して後述するデブロッキング制御処理も開始される。
[0046] ステップ S2において、画像処理装置 101は、全ての画像を符号ィ匕したかを判定す る。ステップ S 2において、外部から入力された全ての画像を符号ィ匕したと判定される まで、画像の符号化が実行され、外部カゝら入力された全ての画像を符号ィ匕したと判 定された場合、符号化処理は終了する。
[0047] 次に、図 3のフローチャートを参照して、図 2を参照して上述した符号ィ匕処理中に画 像処理装置 101により実行されるデブロッキング制御処理の第 1の実施の形態につ いて説明する。
[0048] ステップ S21において、レート制御部 119は、 Complexityを算出する。具体的に は、レート制御部 119は、符号ィ匕済みの画像 (ピクチャ)を蓄積バッファ 118から取得 する。レート制御部 119は、以下の式(1)により、当該画像の複雑さを表す特徴量と して符号ィ匕難易度 Complexityを算出する。
[0049] Complexity = PictureLreneratedBis X PictureAverage uant …
[0050] ここで、 PictureGeneratedBisは当該画像の発生符号量を示す。また、 PictureA verageQuantは、当該画像に適用された量子化スケールの平均値を示し、以下の 式 (2)により算出される。
[0051] [数 1] j MBNuni
PictureAverageQuant = MBNum ^ Quantk ·'·(2)
[0052] ここで、 MBNumは当該画像のマクロブロックの数を示す。また、 Quantkは画像内 の k番目のマクロブロックに適用された量子化スケールを示し、以下の式(3)により算 出される。
[0053] [数 2]
Qu ntk - 2 6 '.' β)
[0054] ここで、 QPkは画像内の k番目のマクロブロックの量子化パラメータを示す。
[0055] すなわち、式(1)により求められる Complexityは、当該画像の発生符号量と量子 化スケールの平均値とを乗じた値である。従って、 Complexityは、画像の動きが少 な 、ほど小さくなり、画像の動きが大き 、ほど大きくなる。
[0056] ステップ S22において、デブロッキングフィルタ 124は、デブロッキング処理に関わ るパラメータを調整する。具体的には、レート制御部 119は、算出した Complexityを 示す情報をデブロッキングフィルタ 124に供給する。デブロッキングフィルタ 124は、 デブロッキング処理を施す画像の Complexityの値に応じて、 disable— deblockin g― filter― iac、 slice― alpha― cO― offset― div2、および、 slice― beta― offset — div2の値を調整する。
[0057] disable— deblocking— filter— idcは、デブロッキング処理の適用の有無を設定 するためのパラメータであり、スライスごとに設定することが可能である。 disable— de blocking— filter— idcは、デブロッキング処理を適用する場合、 0に設定され、デブ ロッキング処理を適用しない場合、 1に設定され、スライス境界においてデブロッキン グ処理を適用しない場合、 2に設定される。
[0058] slice— alpha— cO— offset— div2は、スライスを 4 X 4画素のブロックに分割した 場合のブロック境界に適用されるデブロッキング処理の強度を調整するためのパラメ ータであり、スライスごとに設定することが可能である。 slice— alpha— cO— offset— div2の設定範囲は、—6乃至 + 6であり、値が小さくなるほど、適用されるデブロッキ ング処理の強度は弱くなり、値が大きくなるほど、適用されるデブロッキング処理の強 度は強くなる。
[0059] slice— beta— offset— div2は、スライスを 4 X 4画素のブロックに分割した場合の ブロックの内部の画素に適用されるデブロッキング処理の強度を調整するためのパラ メータであり、スライスごとに設定することが可能である。 slice— beta— offset— div2 の設定範囲は、ー6乃至 + 6であり、値が小さくなるほど、適用されるデブロッキング 処理の強度は弱くなり、値が大きくなるほど、適用されるデブロッキング処理の強度は 強くなる。
[0060] ステップ S22において、例えば、 Complexityが所定の閾値 Theより小さい場合、 di sable— deblocking_filter_idcが 1に設定される。すなわち、ブロックノイズがほと んど生じな!/、非常に動きが少な 、画像に対しては、デブロッキング処理が適用されな くなる。
[0061] また、例えば、 Complexityが閾値 The以上である場合、 Complexityの値に応じ て、 slice— alpha— cO— offset— div2および slice— beta— offset— div2の値が調 整される。例えば、 Complexityの値が小さくなるほど、 slice— alpha— cO— offset —div2および slice— beta— offset— div2が— 6に近い値に設定され、 Complexit yの値が大きくなるほど、 slice— alpha— cO— offset— div2および slice— beta— of f set— div2が + 6に近い値に設定される。すなわち、ブロックのノイズが生じにくい動 きが少ない画像に対しては、適用されるデブロッキング処理の強度が弱められ、ブロ ックノイズが生じやすい動きが大きい画像に対しては、適用されるデブロッキング処理 の強度が強められる。
[0062] ステップ S23にお!/、て、デブロッキングフィルタ 124は、デブロッキング処理を行!、、 デブロッキング制御処理は終了する。デブロッキング処理が施された復号画像は、参 照画像としてフレームメモリ 125に蓄積される。なお、 disable— deblocking— filter — idcが 1に設定されて!ヽる場合、デブロッキング処理は施されな ヽ。
[0063] このように、 Complexityに応じて、復号画像に対してデブロッキング処理が適切に 施され、テクスチャが保持されたままブロックノイズが除去された参照画像が生成され る。従って、参照画像を用いてインター予測符号ィ匕される画像の画質を向上させるこ とがでさる。 [0064] なお、閾値 Theの値を、画像の種類、すなわち、 Iピクチャ、 Pピクチャ、および、 Bピ クチャの 、ずれであるかに基づ 、て変えるようにしてもょ 、。
[0065] また、フレーム間予測を用いて符号ィ匕された画像である Pピクチャおよび Bピクチャ の符号ィ匕難易度を、当該画像より前にフレーム内予測を用いて符号化された画像で ある Iピクチャの Complexityを用いて正規化し、正規化した値(Norm— Complexit y)に基づいて、デブロッキング処理を制御するようにしてもよい。 Pピクチャの Compl exityを正規化した Norm— ComplexityPpic、および、 Bピクチャの Complexityを 正規化した Norm— ComplexityBpicは、以下の式(4)乃至式(8)により算出される
[0066] Compiexitylpic = PictureGeneratedBisIpic X PictureAverageQuantlpic · • · (4) ComplexityPpic = PictureGeneratedBisPpic X PictureAverageQuan tPpic … (5; ComplexityBpic = PictureGeneratedBisBpic X PictureAvera geQuantBpic · · · (6) Norm― ComplexityPpic = ComplexityPpic ÷ Compl exitylpic … (7)
Norm― ComplexityBpic = ComplexityBpic ÷ Compiexitylpic … (8)
[0067] なお、 Compiexitylpic、 PictureGeneratedBisIpic^ PictureAverageQuantlp icは、それぞれ Iピクチャの符号ィ匕難易度、発生符号量、量子化スケールの平均値を 不し、し omplexityPpic、 PictureGeneratedBisPpic、 PictureAverage uantP picは、それぞれ Pピクチャの符号ィ匕難易度、発生符号量、量子化スケールの平均値 不し、 ComplexityBpic、 PictureGeneratedBisBpic、 PictureAverageQuant IBicは、それぞれ Bピクチャの符号ィ匕難易度、発生符号量、量子化スケールの平均 値を示している。
[0068] 例えば、デブロッキング処理を施す画像が Pピクチャまたは Bピクチャである場合、 Norm— Complexityが所定の閾値 Thenより小さ 、場合、 disable— deblocking— filter— idcが 1に設定される。すなわち、ブロックノイズがほとんど生じない非常に動 きが少な 、画像に対しては、デブロッキング処理が適用されなくなる。
[0069] また、例えば、 Norm— Complexityが閾値 Then以上である場合、 Norm— Com piexityの値に J心し飞、 slice alpna cO offset div2および slice beta ofis et— div2の値が調整される。例えば、 Norm— Complexityの値が小さくなるほど、 s lice一 alpha一 cO一 offset一 div2および slice一 beta一 offset一 div2力一 6に近 ヽ 値に設定され、 Norm— Complexityの値が大きくなるほど、 slice— alpha— cO— of f set— div2および slice— beta— offset— div2が + 6に近い値に設定される。すな わち、ブロックのノイズが生じにくい動きが少ない画像に対しては、適用されるデブ口 ッキング処理の強度が弱められ、ブロックノイズが生じやすい動きが大きい画像に対 しては、適用されるデブロッキング処理の強度が強められる。
[0070] Norm— ComplexityPpicおよび Norm— ComplexityBpicは、 Iピクチャの画像 の動きを 1とした場合の、 Pピクチャおよび Bピクチャの動きを示しており、各ピクチャの 動きの複雑さをより正確に抽出することができるため、より適切にデブロッキング処理 が施され、インター予測符号化される画像の画質をより向上させることができる。
[0071] なお、閾値 Thenの値を、画像の種類、すなわち、 Pピクチャおよび Bピクチャのい ずれであるかに基づ 、て変えるようにしてもよ!、。
[0072] また、正規ィ匕に用いる Iピクチャは、当該画像より前の最も近い時間に符号ィ匕された Iピクチャ、または、当該画像の符号ィ匕において参照される Iピクチャを用いるようにす ることが望ましい。
[0073] また、 Iピクチャについては、上述したように、 Complexityに基づいて、デブロッキ ング処理が制御される。
[0074] 次に、図 4のフローチャートを参照して、図 2を参照して上述した符号ィ匕処理中に画 像処理装置 101により実行されるデブロッキング制御処理の第 2の実施の形態につ いて説明する。
[0075] ステップ S41において、アクティビティ算出部 141は、 Activityを算出する。具体的 には、アクティビティ算出部 141は、以下の式(9)により、これから符号化される画像 の複雑さを表す特徴量として Activityを算出する。
[0076] [数 3]
ΜΒΝιιηι
Activity = MBN k ac
[0077] ここで、 actkは、当該画像の k番目のマクロブロックのアクティビティを示し、以下の 式(10)により求められる。
[0078] [数 4] cth = 1 + mln ( var sblk)
Figure imgf000015_0001
[0079] ここで、 var sblkは、 1個のマクロブロックを、 8 X 8個の画素で構成される 4個のサ ブブロックに分割し、その分割されたサブブロックの画素値の分散を表す値であり、 以下の式(11)および式(12)により求められる。
[0080] [数 5]
Figure imgf000015_0002
[0081] ここで、 Pkはサブブロック内の k番目の画素の画素値を示す。
[0082] また、式(10)の minsblk= 1, 8 (var sblk)は、各サブブロックについてフレーム D CT符号化モードの場合と、フィールド DCT符号化モードの 2通りの場合について va r sblkを求め、求めた var sblkのうちの最小値を示す。
[0083] すなわち、式(9)により求められる Activityは、当該画像内の各マクロブロックのァ クテイビティの平均値であり、例えば、 MPEG - 2 TestModel5 (TM5)に規定され るレート制御において使用される値である。従って、 Activityは、画素値の変化が少 ない画像ほど小さくなり、画素値の変化が大きい画像ほど大きくなる。
[0084] ステップ S42において、デブロッキングフィルタ 124は、デブロッキング処理に関わ るパラメータを調整する。具体的には、アクティビティ算出部 141は、算出した Activi tyを示す情報をデブロッキングフィルタ 124に供給する。デブロッキングフィルタ 124 は、デブロッキング処理を施す画像の Activityの値に応じて、 disable— deblockin g― filter― iac、 slice― alpha― cO― offset― div2、および、 slice― beta― offset — div2の値を調整する。
[0085] 例えば、 Activityが所定の閾値 Thaより小さ!/、場合、 disable— deblocking— filt er idcが 1に設定される。すなわち、ブロックノイズがほとんど生じない、画素値の変 化が非常に少な 、平坦な画像に対しては、デブロッキング処理が適用されなくなる。
[0086] また、例えば、 Activityが閾値 Tha以上である場合、 Activityの値に応じて、 slice —alpha— cO— offset— div2および slice— beta— offset— div2の値が調整される 。例えば、 Activityの値が小さくなるほど、 slice— alpha— cO— offset— div2および slice— beta— off set— div2が 6に近 、値に設定され、 Activityの値が大きくなる ほど、 slice― alpha― cO― offset― div2および slice― beta― offset― div2力 + 6 に近い値に設定される。すなわち、ブロックのノイズが生じにくい画素値の変化が少 ない画像に対しては、適用されるデブロッキング処理の強度が弱められ、ブロックノィ ズが生じやす!/、画素値の変化の大きな複雑な画像に対しては、適用されるデブロッ キング処理の強度が強められる。
[0087] ステップ S43において、上述した図 3のステップ S23の処理と同様に、デブロッキン グ処理が行われ、デブロッキング制御処理は終了する。
[0088] このように、 Activityに応じて、復号画像に対してデブロッキング処理が適切に施さ れ、テクスチャが保持されたままブロックノイズが除去された参照画像が生成される。 従って、参照画像を用いてインター予測符号化される画像の画質を向上させることが できる。
[0089] また、 Activityを用いる場合、画像を符号化する前に、画像の複雑さを表す特徴 量を求めることができる。
[0090] さらに、上述したように、 Activityは、 MPEG— 2 TestModel5 (TM5)に規定さ れるレート制御において使用される値であるので、例えば、レート制御部 119におい て算出するようにすることが可能である。
[0091] また、上述した Activity,すなわち、各マクロブロックのアクティビティの平均値以外 に、例えば、各マクロブロックのアクティビティの合計値など、当該画像の画素値の分 散の大きさを反映した値を用いるようにしてもよ 、。
[0092] 次に、図 5のフローチャートを参照して、図 2を参照して上述した符号ィ匕処理中に画 像処理装置 101により実行されるデブロッキング制御処理の第 3の実施の形態につ いて説明する。
[0093] ステップ S61において、直交変換部 142は、直交変換係数の総和を算出する。具 体的には、直交変換部 142は、これから符号化される画像を所定の大きさのブロック に分割する。なお、以下、 4 X 4画素のブロックに分割し、直交変換としてアダマール 変換を用いる例について説明する。直交変換部 142は、以下の式(13)により、各ブ ロックをアダマール変換する。
[0094] P,=HTPH · · · (13)
[0095] ここで、 Pはアダマール変換前の 4 X 4画素の画素行列を示し、 P'はアダマール変 換後の 4 X 4の変換係数行列を示す。また、 Hは、以下の式(14)に示される 4次のァ ダマール行列を示し、 HTは、 4次のアダマール行列の転置行列を示す。
[0096] [数 6]
Figure imgf000017_0001
[0097] 直交変換部 142は、各ブロックごとに、変換係数行列 P'の座標 (0, 0)の変換係数
(DC (直流)成分の変換係数)を除く変換係数の絶対値の和 Phを算出する。すなわ ち、 Phは、アダマール変換後のブロック内の変換係数のうち、符号量と相関のある A C (交流)成分の変換係数の絶対値の和となる。さらに、直交変換部 142は、画像内 の全ブロックの Phの総和 DCtotalを算出する。なお、 DCtotalは、周波数成分が偏 つた単純な画像ほど小さくなり、周波数成分が分散した複雑な画像ほど大きくなる。
[0098] ステップ S62において、デブロッキングフィルタ 124は、デブロッキング処理に関わ るパラメータを調整する。具体的には、直交変換部 142は、算出した DCtotalを示す 情報をデブロッキングフィルタ 124に供給する。デブロッキングフィルタ 124は、デブ ロッキング処理を施す画像の DCtotalの値に応じて、 disable deblocking, filter
•idc、 slice alpha cO offset div2、および、 slice beta offset div2の 値を調整する。
例えば、 DCtotalが所定の閾値 Thdより小さい場合、 disable— deblocking— filt er— idcが 1に設定される。すなわち、ブロックノイズがほとんど生じない、周波数成分 が偏った非常に単純な画像に対しては、デブロッキング処理が適用されなくなる。 [0100] また、例えば、 DCtotalが閾値 Thd以上である場合、 DCtotalの値に応じて、 slice —alpha— cO— offset— div2および slice— beta— offset— div2の値が調整される 。例えば、 DCtotalの値が小さくなるほど、 slice— alpha— cO— offset— div2および slice— beta— off set— div2が 6に近 、値に設定され、 DCtotalの値が大きくなる ほど、 slice― alpha― cO― offset― div2および slice― beta― offset― div2力 + 6 に近い値に設定される。すなわち、ブロックのノイズが生じにくい周波数成分が偏つ た単純な画像に対しては、適用されるデブロッキング処理の強度が弱められ、ブロッ クノイズが生じやすい周波数成分が分散した複雑な画像に対しては、適用されるデ ブロッキング処理の強度が強められる。
[0101] ステップ S63において、上述した図 3のステップ S23の処理と同様に、デブロッキン グ処理が行われ、デブロッキング制御処理は終了する。
[0102] なお、以上の説明では、直交変換としてアダマール変換を用いる例を示したが、そ の他の直交変換、例えば、 DCT (離散コサイン変換)などを用いるようにしてもよい。
[0103] また、直交変換の種類に関わらず、分割するブロックの大きさは、上述した 4 X 4画 素に限定されるものではなぐ例えば、 8 X 8画素など任意の大きさとすることができる
[0104] このように、 DCtotalに応じて、復号画像に対してデブロッキング処理が適切に施さ れ、テクスチャが保持されたままブロックノイズが除去された参照画像が生成される。 従って、参照画像を用いてインター予測符号化される画像の画質を向上させることが できる。
[0105] また、 DCtotalは、直交変換を施して、周波数成分に分解した変換係数の総和で あるので、当該画像の符号ィ匕難易度との相関が高くなり、 Activityより高い精度で画 像の複雑さを表すことができる。
[0106] さらに、 DCtotalを用いた場合、画像を符号化する前に、画像の複雑さを表す特徴 量を求めることができる。
[0107] また、直交変換部 142の代わりに、直交変換部 115を用いて、直交変換係数を算 出するようにすることが可能である。
[0108] さらに、上述した DCtotal、すなわち、 AC成分の直交変換係数の総和以外に、例 えば、 AC成分の直交変換係数の平均値など、当該画像の AC成分の直交変換係数 の大きさを反映した値を用いるようにしてもよ 、。
[0109] 次に、図 6のフローチャートを参照して、図 2を参照して上述した符号ィ匕処理中に画 像処理装置 101により実行されるデブロッキング制御処理の第 4の実施の形態につ いて説明する。
[0110] ステップ S81において、予測誤差加算部 120は、予測誤差の総和を算出する。具 体的には、予測誤差加算部 120は、これから符号化される画像、すなわち、加算器 1 14により差分が行われている画像が Pピクチャまたは Bピクチャである場合、加算器 1 14から供給される予測誤差を 1ピクチャ分足し合わせる。これにより、予測誤差の総 和 Etが算出される。なお、 Etは、画像の動きの予測が容易であるほど、すなわち、画 像の動きが小さくかつ単純であるほど小さくなり、画像の動きの予測が難しいほど、す なわち、画像の動きが大きくかつ複雑であるほど大きくなる。
[0111] ステップ S82において、デブロッキングフィルタ 124は、デブロッキング処理に関わ るパラメータを調整する。具体的には、予測誤差加算部 120は、算出した予測誤差 の総和 Etを示す情報をデブロッキングフィルタ 124に供給する。デブロッキングフィ ルタ 124は、 Etの値に応じて、 disable— deblocking— filter— idc、 slice— alpha —cO— offset— div2、および、 slice— beta— offset— div2の値を調整する。
[0112] 例えば、 Etが所定の閾値 Theより小さい場合、 disable— deblocking— filter— id cが 1に設定される。すなわち、ブロックノイズがほとんど生じない、画像の動きがほと んどな!/ヽ画像に対しては、デブロッキング処理が適用されなくなる。
[0113] また、例えば、 Etが閾値 The以上である場合、 Etの値に応じて、 slice— alpha— c 0— offset— div2および slice— beta— offset— div2の値が調整される。例えば、 E tの値が小さくなるほど、 slice— alpha— cO— offset— div2および slice— beta— off set— div2がー 6に近い値に設定され、 Etの値が大きくなるほど、 slice— alpha— cO —offset— div2および slice— beta— offset— div2が + 6に近い値に設定される。 すなわち、ブロックのノイズが生じにくい画像の動きが小さくかつ単純な画像に対して は、適用されるデブロッキング処理の強度が弱められ、ブロックノイズが生じやすい画 像の動きが大きくかつ複雑な画像に対しては、適用されるデブロッキング処理の強度 が強められる。
[0114] ステップ S83において、上述した図 3のステップ S23の処理と同様に、デブロッキン グ処理が行われ、デブロッキング制御処理は終了する。
[0115] このように、 Etに応じて、復号画像に対してデブロッキング処理が適切に施され、テ タスチヤが保持されたままブロックノイズが除去された参照画像が生成される。従って 、参照画像を用いてインター予測符号化される画像の画質を向上させることができる
[0116] また、 Etを用いた場合、画像を符号化する前に、画像の複雑さを表す特徴量を求 めることができる。
[0117] さらに、上述した Et、すなわち、予測誤差の総和以外に、例えば、直交変換係数の 平均値など、当該画像に対する予測誤差の大きさを反映した値を用いるようにしても よい。
[0118] 以上のようにして、画像の特徴に応じて、デブロッキング処理を適切に施すことがで き、その結果、画像の主観画質を向上させることができる。
[0119] なお、以上の説明では、 Complexity, Activity, DCtotal、および、 Etを、それぞ れ単独で用 ヽて、 disable― deblocking― filter― idcゝ slice― alpha― cO― offset — div2、および、 slice— beta— offset— div2の値を調整する例を示したが、複数の 値を用いて画像の複雑さを判定し、その結果に基づいて、 disable— deblocking— f liter― idc、 slice― alpha― cO― offset― div2、および、 slice― beta― offset― di v2の値を調整するようにしてもょ 、。
[0120] また、以上の説明では、 H. 264ZAVC方式により符号ィ匕を行う例を示した力 本 発明は、インループのデブロッキングフィルタを用いる符号ィ匕方式、例えば、 MPEG —4 (Moving Picture Coding Experts Group phase4)、 VC— 1 (Video C odec 1)方式などにより符号ィ匕を行う場合にも適用できる。
[0121] 上述した一連の処理は、ハードウェアにより実行させることもできるし、ソフトウェア により実行させることもできる。一連の処理をソフトウェアにより実行させる場合には、 そのソフトウェアを構成するプログラム力 専用のハードウェアに組み込まれているコ ンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行 することが可能な、例えば汎用のパーソナルコンピュータなどに、プログラム記録媒 体からインストールされる。
[0122] 図 7は、上述した一連の処理をプログラムにより実行するパーソナルコンピュータ 30 0の構成の例を示すブロック図である。 CPU (Central Processing Unit) 301は、 ROM (Read Only Memory) 302、または記録部 308に記憶されているプログラ ムに従って各種の処理を実行する。 RAM (Random Access Memory) 303には 、 CPU301が実行するプログラムやデータなどが適宜記憶される。これらの CPU30 1、 ROM302,および RAM303iま、ノ ス 304【こよりネ目互【こ接続されて!ヽる。
[0123] CPU301にはまた、バス 304を介して入出力インタフェース 305が接続されて!、る 。入出力インタフェース 305には、キーボード、マウス、マイクロホンなどよりなる入力 部 306、ディスプレイ、スピーカなどよりなる出力部 307が接続されている。 CPU301 は、入力部 306から入力される指令に対応して各種の処理を実行する。そして、 CP U301は、処理の結果を出力部 307に出力する。
[0124] 入出力インタフェース 305に接続されている記録部 308は、例えばノヽードディスク からなり、 CPU301が実行するプログラムや各種のデータを記憶する。通信部 309は 、インターネットやローカルエリアネットワークなどのネットワークを介して外部の装置と 通信する。
[0125] また、通信部 309を介してプログラムを取得し、記録部 308に記憶してもよい。
[0126] 入出力インタフェース 305に接続されているドライブ 310は、磁気ディスク、光デイス ク、光磁気ディスク、或いは半導体メモリなどのリムーバブルメディア 311が装着され たとき、それらを駆動し、そこに記録されているプログラムやデータなどを取得する。 取得されたプログラムやデータは、必要に応じて記録部 308に転送され、記憶される
[0127] コンピュータにインストールされ、コンピュータによって実行可能な状態とされるプロ グラムを格納するプログラム記録媒体は、図 7に示すように、磁気ディスク (フレキシブ ルディスクを含む)、光ディスク(CD— ROM (Compact Disc -Read Only Me mory) , DVD (Digital Versatile Disc)を含む)、光磁気ディスク、もしくは半導体 メモリなどよりなるパッケージメディアであるリムーバブルメディア 311、または、プログ ラムが一時的もしくは永続的に格納される ROM302や、記録部 308を構成するハー ドディスクなどにより構成される。プログラム記録媒体へのプログラムの格納は、必要 に応じてルータ、モデムなどのインタフェースである通信部 309を介して、ローカルェ リアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の通信 媒体を利用して行われる。
[0128] なお、本明細書にぉ 、て、プログラム記録媒体に格納されるプログラムを記述する ステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも 時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むもので ある。
[0129] さらに、本発明の実施の形態は、上述した実施の形態に限定されるものではなぐ 本発明の要旨を逸脱しな 、範囲にぉ 、て種々の変更が可能である。

Claims

請求の範囲
第 1の画像を符号ィ匕する場合に前記第 1の画像の動き予測に用いる、前記第 1の 画像より前に符号化された第 2の画像を復号した復号画像に対して、デブロッキング
Figure imgf000023_0001
前記第 2の画像の複雑さを表す特徴量を算出する特徴量算出手段と
を含み、
前記デブロッキングフィルタは、前記特徴量に基づいて、前記復号画像へのデブ口 ッキング処理の適用の有無、または、前記復号画像に適用するデブロッキング処理 の強度を制御する
画像処理装置。
[2] 前記特徴量算出手段は、前記第 2の画像の符号化難易度を前記特徴量として算 出する
請求項 1に記載の画像処理装置。
[3] 前記特徴量算出手段は、前記第 2の画像がフレーム間予測を用いて符号化された 画像である場合、前記第 2の画像が符号化される前にフレーム内予測を用いて符号 ィ匕された第 3の画像の符号ィ匕難易度を用いて、前記第 2の画像の符号化難易度を正 規化した値を前記特徴量とする
請求項 2に記載の画像処理装置。
[4] 前記特徴量算出手段は、符号化前の前記第 2の画像を複数のブロックに分割し、 前記ブロックごとの画素値の分散に基づいて、前記特徴量を算出する
請求項 1に記載の画像処理装置。
[5] 前記特徴量算出手段は、符号化前の前記第 2の画像を複数のブロックに分割し、 前記ブロックごとに直交変換を施すことにより得られる変換係数に基づいて、前記特 徴量を算出する
請求項 1に記載の画像処理装置。
[6] 前記特徴量算出手段は、フレーム間予測により予測された前記第 2の画像に対す る予測画像と符号化前の前記第 2の画像との差分である予測誤差に基づ ヽて、前記 特徴量を算出する 請求項 1に記載の画像処理装置。
[7] H. 264/AVC (Advanced Video Coding)方式により画像を符号化し、 目 |J記テブロッキングフィノレタは、 disable― deblocking― filter― idc、 slice― alph a— cO— offset— div2、または、 slice— beta— offset— div2の値を調整することに より、前記復号画像に対するデブロッキング処理の適用の有無、または、前記復号画 像に適用するデブロッキング処理の強度を制御する
請求項 1に記載の画像処理装置。
[8] MPEG— 4 (Moving Picture Coding Experts Group phase4)、 H. 264
/AVC (Advanced Video Coding)、または、 VC— 1 (Video Codec 1)方式 により画像を符号化する
請求項 1に記載の画像処理装置。
[9] 第 1の画像を符号ィ匕する場合に前記第 1の画像の動き予測に用いる、前記第 1の 画像より前に符号化された第 2の画像の複雑さを表す特徴量を算出し、
前記特徴量に基づ!ヽて、前記第 2の画像を復号した復号画像へのデブロッキング 処理の適用の有無、または、前記復号画像に適用するデブロッキング処理の強度を 制御する
ステップを含む画像処理方法。
[10] 第 1の画像を符号ィ匕する場合に前記第 1の画像の動き予測に用いる、前記第 1の 画像より前に符号化された第 2の画像の複雑さを表す特徴量を算出し、
前記特徴量に基づ!ヽて、前記第 2の画像を復号した復号画像へのデブロッキング 処理の適用の有無、または、前記復号画像に適用するデブロッキング処理の強度を 制御する
ステップを含む処理をコンピュータに実行させるプログラム。
PCT/JP2007/063948 2006-07-14 2007-07-13 Image processing device, method, and program WO2008007757A1 (en)

Priority Applications (5)

Application Number Priority Date Filing Date Title
US12/373,623 US8625924B2 (en) 2006-07-14 2007-07-13 Image deblocking based on complexity
RU2009101022/07A RU2479938C2 (ru) 2006-07-14 2007-07-13 Устройство обработки изображения, способ и программа
KR20097000640A KR101364919B1 (ko) 2006-07-14 2007-07-13 화상 처리 장치 및 방법과 기록 매체
BRPI0714048-7A BRPI0714048A2 (pt) 2006-07-14 2007-07-13 aparelho e método de processamento de imagem, e, programa para fazer com que um computador efetue processamento
CN2007800267311A CN101491104B (zh) 2006-07-14 2007-07-13 图像处理装置和方法

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2006193671A JP4747975B2 (ja) 2006-07-14 2006-07-14 画像処理装置および方法、プログラム、並びに、記録媒体
JP2006-193671 2006-07-14

Publications (1)

Publication Number Publication Date
WO2008007757A1 true WO2008007757A1 (en) 2008-01-17

Family

ID=38923313

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2007/063948 WO2008007757A1 (en) 2006-07-14 2007-07-13 Image processing device, method, and program

Country Status (8)

Country Link
US (1) US8625924B2 (ja)
JP (1) JP4747975B2 (ja)
KR (1) KR101364919B1 (ja)
CN (1) CN101491104B (ja)
BR (1) BRPI0714048A2 (ja)
RU (1) RU2479938C2 (ja)
TW (1) TW200812395A (ja)
WO (1) WO2008007757A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103179404A (zh) * 2009-06-11 2013-06-26 索尼公司 图像处理设备和图像处理方法
JP5232175B2 (ja) * 2008-01-24 2013-07-10 パナソニック株式会社 動画像圧縮装置

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010128969A (ja) * 2008-11-28 2010-06-10 Fujitsu Ltd アダマール変換回路
JP2010128968A (ja) * 2008-11-28 2010-06-10 Fujitsu Ltd アダマール変換回路
JP5435452B2 (ja) 2009-01-20 2014-03-05 株式会社メガチップス 画像処理装置および画像変換装置
KR20100095992A (ko) 2009-02-23 2010-09-01 한국과학기술원 비디오 부호화에서의 분할 블록 부호화 방법, 비디오 복호화에서의 분할 블록 복호화 방법 및 이를 구현하는 기록매체
JP5597968B2 (ja) 2009-07-01 2014-10-01 ソニー株式会社 画像処理装置および方法、プログラム、並びに記録媒体
CN102473240B (zh) * 2009-08-03 2015-11-25 摩托罗拉移动有限责任公司 编码视频内容的方法
CN106060546A (zh) * 2010-06-17 2016-10-26 夏普株式会社 解码装置及编码装置
US8976856B2 (en) * 2010-09-30 2015-03-10 Apple Inc. Optimized deblocking filters
US9031341B2 (en) * 2011-02-28 2015-05-12 Megachips Corporation Image coding apparatus
JP6038819B2 (ja) * 2011-03-02 2016-12-07 ゲーム・チェンジャーズ・リミテッド・ライアビリティ・カンパニーGame Changers, Llc 乗り物の移動制御方法、移動制御装置、非一時的なコンピュータ記憶媒体、及び飛行制御システム
US8861593B2 (en) * 2011-03-15 2014-10-14 Sony Corporation Context adaptation within video coding modules
JP2013034162A (ja) * 2011-06-03 2013-02-14 Sony Corp 画像処理装置及び画像処理方法
US9357235B2 (en) * 2011-10-13 2016-05-31 Qualcomm Incorporated Sample adaptive offset merged with adaptive loop filter in video coding
US9510020B2 (en) 2011-10-20 2016-11-29 Qualcomm Incorporated Intra pulse code modulation (IPCM) and lossless coding mode deblocking for video coding
JP6120490B2 (ja) 2011-11-07 2017-04-26 キヤノン株式会社 画像符号化装置、画像符号化方法及びプログラム、画像復号装置、画像復号方法及びプログラム
CN110225354A (zh) * 2012-01-17 2019-09-10 华为技术有限公司 用于高性能视频编码中的无损编码模式的环内滤波的装置
EP2680581A1 (en) * 2012-06-28 2014-01-01 Alcatel-Lucent Method and apparatus for dynamic adaptation of video encoder parameters
US9445130B2 (en) * 2013-01-09 2016-09-13 Qualcomm Incorporated Blockiness metric for large HEVC block artifacts
JP6392572B2 (ja) 2014-07-22 2018-09-19 ルネサスエレクトロニクス株式会社 画像受信装置、画像伝送システムおよび画像受信方法
JP6357385B2 (ja) 2014-08-25 2018-07-11 ルネサスエレクトロニクス株式会社 画像通信装置、画像送信装置および画像受信装置
KR102503900B1 (ko) 2015-10-05 2023-02-27 삼성전자주식회사 양자화 파라미터를 적응적으로 결정하는 인코더 및 이를 포함하는 애플리케이션 프로세서
EP3531700B1 (en) * 2016-10-18 2022-04-06 Panasonic Intellectual Property Management Co., Ltd. Image coding method, transmission method and image coding device
CN110024387B (zh) * 2016-11-28 2021-10-08 日本放送协会 编码装置、解码装置、编码方法和解码方法
CN107135396B (zh) * 2017-06-16 2020-08-28 北京奇艺世纪科技有限公司 一种运动估计方法和装置
WO2020059581A1 (ja) * 2018-09-19 2020-03-26 日本電信電話株式会社 画像処理装置、画像処理方法及び画像処理プログラム
CN109714600B (zh) * 2019-01-12 2020-05-26 贵州佰仕佳信息工程有限公司 兼容性大数据采集系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0638197A (ja) * 1992-06-30 1994-02-10 Sony Corp 符号器、復号器、および符号化方法
JPH06311506A (ja) * 1992-12-25 1994-11-04 Mitsubishi Electric Corp フレーム間符号化処理方式及びフレーム間符号化処理方法及び符号化制御方式
JPH09187008A (ja) * 1995-11-02 1997-07-15 Matsushita Electric Ind Co Ltd 画像信号平滑化装置,画像信号平滑化方法,画像符号化装置,画像符号化方法,画像復号化装置および画像復号化方法
JPH1066082A (ja) * 1996-08-16 1998-03-06 Sony Corp 映像データ圧縮装置およびその方法
WO2004066634A1 (en) * 2003-01-20 2004-08-05 Koninklijke Philips Electronics N.V. Video coding

Family Cites Families (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02235491A (ja) * 1989-03-09 1990-09-18 Toshiba Corp 画像符号化方式
US5229864A (en) * 1990-04-16 1993-07-20 Fuji Photo Film Co., Ltd. Device for regenerating a picture signal by decoding
JP3208039B2 (ja) * 1995-03-09 2001-09-10 ケイディーディーアイ株式会社 画像符号化データのレート変換装置
KR960039992A (ko) * 1995-04-29 1996-11-25 배순훈 블록화 현상 제거 장치 및 이를 이용한 동영상 복호화기
US6064776A (en) * 1995-10-27 2000-05-16 Kabushiki Kaisha Toshiba Image processing apparatus
KR0181067B1 (ko) * 1995-10-31 1999-05-01 배순훈 호환성을 갖는 동영상 부호화기
EP0772365A3 (en) 1995-11-02 1999-05-12 Matsushita Electric Industrial Co., Ltd. Method and device for filtering a picture signal, and encoding/decoding using the same
US6041145A (en) 1995-11-02 2000-03-21 Matsushita Electric Industrial Co., Ltd. Device and method for smoothing picture signal, device and method for encoding picture and device and method for decoding picture
EP1209624A1 (en) * 2000-11-27 2002-05-29 Sony International (Europe) GmbH Method for compressed imaging artefact reduction
US7003174B2 (en) * 2001-07-02 2006-02-21 Corel Corporation Removal of block encoding artifacts
US7227901B2 (en) * 2002-11-21 2007-06-05 Ub Video Inc. Low-complexity deblocking filter
EP1582061A4 (en) * 2003-01-10 2010-09-22 Thomson Licensing DECODER AND METHOD FOR SMOOTHING ARTIFACTS RESULTING FROM ERROR MASKING
JP4221655B2 (ja) * 2003-03-06 2009-02-12 ソニー株式会社 符号化装置および符号化方法、プログラム、並びに記録媒体
US7995849B2 (en) * 2003-03-17 2011-08-09 Qualcomm, Incorporated Method and apparatus for improving video quality of low bit-rate video
US7792194B2 (en) * 2003-04-10 2010-09-07 Lefan Zhong MPEG artifacts post-processed filtering architecture
RU2305377C2 (ru) * 2003-05-20 2007-08-27 Корпорация "САМСУНГ ЭЛЕКТРОНИКС Ко., Лтд." Способ уменьшения искажения сжатого видеоизображения и устройство для его реализации
US20050024651A1 (en) * 2003-07-29 2005-02-03 Zhenghua Yu Adaptive complexity scalable post-processing method
US7551792B2 (en) * 2003-11-07 2009-06-23 Mitsubishi Electric Research Laboratories, Inc. System and method for reducing ringing artifacts in images
JP2005203905A (ja) * 2004-01-13 2005-07-28 Sony Corp 画像符号化装置、画像符号化方法並びに画像符号化プログラム
ZA200607434B (en) * 2004-03-09 2008-08-27 Thomson Res Funding Corp Reduced resolution update mode for advanced video coding
US7430336B2 (en) * 2004-05-06 2008-09-30 Qualcomm Incorporated Method and apparatus for image enhancement for low bit rate video compression
JP4247680B2 (ja) * 2004-07-07 2009-04-02 ソニー株式会社 符号化装置、符号化方法、符号化方法のプログラム及び符号化方法のプログラムを記録した記録媒体
CN1286322C (zh) * 2004-08-06 2006-11-22 联合信源数字音视频技术(北京)有限公司 一种低复杂度整数4×4离散余弦变换量化实现方法
US7574060B2 (en) * 2004-11-22 2009-08-11 Broadcom Corporation Deblocker for postprocess deblocking
CN100345450C (zh) * 2005-01-31 2007-10-24 浙江大学 视频或图像去块滤波的方法和装置
BRPI0610667A2 (pt) * 2005-04-14 2010-07-13 Thomson Licensing método e aparelho para codificação de vetor de movimento adaptativo por fatia para codificação e decodificação de vìdeo redimensionável espacial
US7801385B2 (en) * 2005-05-10 2010-09-21 Intel Corporation Perceptual filter support techniques
US8208564B2 (en) * 2005-06-24 2012-06-26 Ntt Docomo, Inc. Method and apparatus for video encoding and decoding using adaptive interpolation
KR101299390B1 (ko) * 2005-07-21 2013-08-22 톰슨 라이센싱 스케일러블 비디오 코딩용 가중 예측을 위한 방법 및 장치
KR101366918B1 (ko) * 2005-10-12 2014-02-24 톰슨 라이센싱 스케일러블 비디오 인코딩 및 디코딩에서의 가중 예측을위한 방법 및 장치
US8681867B2 (en) * 2005-10-18 2014-03-25 Qualcomm Incorporated Selective deblock filtering techniques for video coding based on motion compensation resulting in a coded block pattern value
US8170116B2 (en) * 2006-03-27 2012-05-01 Nokia Corporation Reference picture marking in scalable video encoding and decoding

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0638197A (ja) * 1992-06-30 1994-02-10 Sony Corp 符号器、復号器、および符号化方法
JPH06311506A (ja) * 1992-12-25 1994-11-04 Mitsubishi Electric Corp フレーム間符号化処理方式及びフレーム間符号化処理方法及び符号化制御方式
JPH09187008A (ja) * 1995-11-02 1997-07-15 Matsushita Electric Ind Co Ltd 画像信号平滑化装置,画像信号平滑化方法,画像符号化装置,画像符号化方法,画像復号化装置および画像復号化方法
JPH1066082A (ja) * 1996-08-16 1998-03-06 Sony Corp 映像データ圧縮装置およびその方法
WO2004066634A1 (en) * 2003-01-20 2004-08-05 Koninklijke Philips Electronics N.V. Video coding

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5232175B2 (ja) * 2008-01-24 2013-07-10 パナソニック株式会社 動画像圧縮装置
US8532199B2 (en) 2008-01-24 2013-09-10 Panasonic Corporation Dynamic image compression device
CN103179404A (zh) * 2009-06-11 2013-06-26 索尼公司 图像处理设备和图像处理方法

Also Published As

Publication number Publication date
CN101491104A (zh) 2009-07-22
TWI335763B (ja) 2011-01-01
US8625924B2 (en) 2014-01-07
BRPI0714048A2 (pt) 2012-12-11
RU2479938C2 (ru) 2013-04-20
JP2008022404A (ja) 2008-01-31
RU2009101022A (ru) 2010-07-20
KR101364919B1 (ko) 2014-02-20
CN101491104B (zh) 2011-07-06
US20090263032A1 (en) 2009-10-22
KR20090039713A (ko) 2009-04-22
JP4747975B2 (ja) 2011-08-17
TW200812395A (en) 2008-03-01

Similar Documents

Publication Publication Date Title
WO2008007757A1 (en) Image processing device, method, and program
US8031769B2 (en) Method and device for controlling quantization scales of a video encoding bit stream
JP5204269B2 (ja) ビデオ・コーデック量子化のための方法および装置
KR101446771B1 (ko) 영상 부호화장치 및 영상 복호화장치
USRE46777E1 (en) Quantization for hybrid video coding
US9077968B2 (en) Image processing apparatus and method, and program
CN107347157B (zh) 视频解码装置
JP4393875B2 (ja) 複雑さの軽減された復号化に適したシングルレイヤビデオ符号化されたビットストリームを供給するシステム及び方法
US8634462B2 (en) Quantization for hybrid video coding
EP1768415A1 (en) Adaptive scan order of DCT coefficients and its signaling
JP2006180497A (ja) 画像又は画像シーケンスを符号化するために使用される量子化マトリクスを生成するための方法及び装置
US20120163473A1 (en) Method for encoding a video sequence and associated encoding device
US20050238096A1 (en) Fractional quantization step sizes for high bit rates
US20040247030A1 (en) Method for transcoding an MPEG-2 video stream to a new bitrate
WO2008035842A1 (en) Apparatus and method for encoding and decoding using alternative converter according to the correlation of residual signal
JP4254147B2 (ja) 画像情報符号化方法及び装置、並びにプログラム及び記録媒体
US20240089440A1 (en) Image decoding device, method, and non-transitory computer-readable storage medium
KR101539045B1 (ko) 양자화 계수 결정 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치
JP2006279272A (ja) 動画像符号化装置およびその符号化制御方法
JP7080424B2 (ja) デブロッキングフィルタ制御装置及びプログラム
US20210400273A1 (en) Adaptive quantizer design for video coding
EP1768416A1 (en) Frequency selective video compression and quantization
JP6743225B2 (ja) 画像復号装置、画像復号方法及びプログラム
JP6200220B2 (ja) 画像処理装置、符号化装置、復号装置、及びプログラム
JP3199786B2 (ja) 画像処理装置

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 200780026731.1

Country of ref document: CN

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

Ref document number: 07790729

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 9641/DELNP/2008

Country of ref document: IN

WWE Wipo information: entry into national phase

Ref document number: 12373623

Country of ref document: US

Ref document number: 1020097000640

Country of ref document: KR

ENP Entry into the national phase

Ref document number: 2009101022

Country of ref document: RU

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 07790729

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: PI0714048

Country of ref document: BR

Kind code of ref document: A2

Effective date: 20090112