WO2010041534A1 - 画像加工装置、方法及びプログラム、動画像符号化装置、方法及びプログラム、動画像復号装置、方法及びプログラム、並びに、符号化・復号システム及び方法 - Google Patents

画像加工装置、方法及びプログラム、動画像符号化装置、方法及びプログラム、動画像復号装置、方法及びプログラム、並びに、符号化・復号システム及び方法 Download PDF

Info

Publication number
WO2010041534A1
WO2010041534A1 PCT/JP2009/065852 JP2009065852W WO2010041534A1 WO 2010041534 A1 WO2010041534 A1 WO 2010041534A1 JP 2009065852 W JP2009065852 W JP 2009065852W WO 2010041534 A1 WO2010041534 A1 WO 2010041534A1
Authority
WO
WIPO (PCT)
Prior art keywords
filter
image
transform coefficient
additional information
pixel
Prior art date
Application number
PCT/JP2009/065852
Other languages
English (en)
French (fr)
Inventor
鈴木 芳典
ブン チュンセン
タン ティオ ケン
Original Assignee
株式会社エヌ・ティ・ティ・ドコモ
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 株式会社エヌ・ティ・ティ・ドコモ filed Critical 株式会社エヌ・ティ・ティ・ドコモ
Priority to JP2010532866A priority Critical patent/JP5542680B2/ja
Priority to CN200980133321.6A priority patent/CN102132566B/zh
Priority to EP09819070A priority patent/EP2346256A4/en
Publication of WO2010041534A1 publication Critical patent/WO2010041534A1/ja
Priority to US13/081,326 priority patent/US9167271B2/en

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/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/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/182Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a pixel
    • 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 device, method, and program for processing a moving image, a moving image encoding device, method, and program for removing a distortion signal remaining in a reproduced image handled in moving image encoding, and decoding of the moving image
  • the present invention relates to a moving picture decoding apparatus, a method and a program for removing a distortion signal remaining in a reproduced image handled in the above, and a coding / decoding system and method for performing coding and decoding.
  • Compressive encoding technology is used to efficiently transmit and store moving image data.
  • MPEG1, 2, 4 and H.264 are used.
  • 261-H. H.264 is widely used.
  • the image to be encoded is divided into a plurality of target blocks, and then prediction encoding / decoding processing is performed. Specifically, an image of one frame is divided into target blocks composed of 16 ⁇ 16 pixels.
  • a prediction signal is generated using an adjacent reproduced image signal (reconstructed from compressed image data) in the same screen as the target block to be encoded. The difference signal obtained by subtracting the prediction signal from the signal of the target block is encoded.
  • an inter prediction encoding method (a prediction signal of a target block is generated by referring to another frame adjacent on the time axis in a moving image, and the prediction signal and the target block In some cases, a method of encoding a difference) is used. In this case, with respect to the target block, motion detection is performed using another frame that has been encoded and restored as a reference image, a prediction signal with the least error is determined, and a difference value between the prediction signal and the target block is calculated. Ask.
  • a discrete cosine transform and a quantization process are performed on the difference signal obtained by the intra prediction encoding method or the inter prediction encoding method. Then, the quantized discrete cosine transform coefficient and the motion vector or mode information for specifying the prediction signal are entropy-coded to generate encoded data.
  • the encoded data encoded in this way is once restored and reproduced in order to obtain a prediction signal of the next target block.
  • the reproduced image is stored in the frame memory as a reference image after distortion caused by encoding is removed by in-loop filter processing.
  • Patent Document 1 describes a filter process for removing noise around an original edge in a reproduced image. In the method of Patent Document 1, since the filtering process is executed so as not to cross the edge of the object in the image, there is an effect of clearing the impression of the entire screen while preserving the edge.
  • Patent Document 1 since the filter processing of Patent Document 1 is processing for preserving edges, there is another problem that distortion that cannot be removed remains. In particular, a pseudo contour in which block distortion occurs stepwise is likely to occur. Such a residual distortion signal can be suppressed by applying a low-pass filter to the entire screen. However, if a low-pass filter is randomly applied to the entire screen, the original edge of the image is crushed.
  • the present invention has been made to solve the above-described problems, and an object of the present invention is to suppress a residual distortion signal generated on a reproduced image while maintaining the original edge of the image.
  • an image processing apparatus applies a first filter to an input target image to generate a first filter image, and the first filter unit generates the first filter image.
  • Attribute information generating means for generating an attribute value indicating whether or not to apply a second filter to the pixel, and the first filter generated by the attribute information generating means.
  • Second filter means for generating a second filter image by applying the second filter to the target pixel of the first filter image selected based on the attribute value for each pixel of the image.
  • the image processing apparatus compares the first filter image and the second filter image to obtain a difference value of each pixel, and for the pixels having the difference value equal to or greater than a predetermined threshold, It is preferable that the image processing apparatus further includes a filter image selection unit that selects and outputs a pixel of the filter image and selects and outputs a pixel of the second filter image for a pixel having the difference value smaller than the threshold value.
  • the second filter means includes the attribute value for the target pixel of the first filter image and the attribute value for a predetermined number of pixels adjacent to the target pixel.
  • the calculated value is larger than a predetermined value, it is desirable that the target pixel of the first filter image is selected as the pixel of the second filter image to be generated.
  • the second filter is a one-dimensional filter
  • the second filter means moves the second filter in a horizontal direction with respect to a target pixel of the first filter image.
  • the second filter may be [1,1,1,1,1,1,2,1,1,1,1,1,1] /
  • the second filter means includes a total of 15 pixels each including the target pixel and 7 pixels adjacent to the left and right of the target pixel, or adjacent to the target pixel and the upper and lower sides of the target pixel. It is preferable that the second filter is applied to the target pixel with reference to a total of 15 pixels of 7 pixels.
  • the second filter when the first filter is a filter that refers to a pixel in a range surrounded by M pixels around the pixel to be applied, the second filter has a periphery around the pixel to be applied. It is preferable that the filter is configured by a filter that refers to pixels in a range surrounded by more L pixels than the M pixels.
  • the present invention can also be understood as an invention related to an image processing method and an invention related to an image processing program, which can be described as follows.
  • An image processing method is an image processing method executed by an image processing apparatus, wherein a first filter step of generating a first filter image by applying a first filter to an input target image; For each pixel of the first filter image generated by the first filter step, an attribute information generation step for generating an attribute value indicating whether or not the second filter is applied to the pixel, and the attribute information generation step A second filter step of generating a second filter image by applying the second filter to a target pixel of the first filter image selected based on the attribute value for each pixel of the first filter image And.
  • the first filter image and the second filter image are compared to obtain a difference value of each pixel, and for the pixel having the difference value equal to or greater than a predetermined threshold, the first filter image is obtained. It is preferable to further include a filter image selection step of selecting and outputting a filter image pixel, and selecting and outputting a pixel of the second filter image for a pixel having the difference value smaller than the threshold value.
  • An image processing program includes: a first filter unit that generates a first filter image by applying a first filter to an input target image by using a computer provided in the image processing apparatus; and the first filter unit. Attribute information generating means for generating an attribute value indicating whether or not to apply a second filter to the pixel, and the first information generated by the attribute information generating means.
  • a second filter unit configured to generate a second filter image by applying the second filter to a target pixel of the first filter image selected based on the attribute value of each pixel of the one filter image; It is characterized by that.
  • the computer further compares the first filter image and the second filter image to obtain a difference value of each pixel, and the difference value is equal to or greater than a predetermined threshold value. For the pixel, the pixel of the first filter image is selected and output, and for the pixel whose difference value is smaller than the threshold value, the pixel of the second filter image is selected and output as a filter image selection unit. Is desirable.
  • the residual distortion signal generated on the reproduced image can be suppressed while maintaining the original edge of the image.
  • the present invention can be applied to a moving image encoding apparatus, method, and program, thereby improving the accuracy of encoding processing.
  • the present invention can be applied to a moving image decoding apparatus, method, and program to improve the accuracy of decoding processing.
  • the moving picture coding apparatus, method, and program to which the present invention is applied can be described as follows.
  • the moving image encoding apparatus includes a block divider that divides an input encoding target image into a plurality of blocks, and a prediction signal and at least information regarding a prediction method for the encoding target block.
  • a prediction signal generator that generates additional information including: a subtractor that generates a residual signal by subtracting the generated prediction signal from the signal of the target block; and the residual signal of the target block.
  • An inverse quantizer, an inverse transformer that reproduces a residual signal by inversely transforming the decoded transform coefficient, the residual signal reproduced by the inverse transformer, and the prediction signal Are added to restore the reproduced image and the above-described image processing device, and unnecessary distortion is removed from the reproduced image using the additional information and the information of the quantization transform coefficient.
  • An in-loop filter that performs filtering, a frame memory that stores the reproduced image after filtering, an entropy encoder that entropy-encodes the quantization transform coefficient information and the additional information, and outputs the entropy encoder as a bit stream; It is characterized by providing.
  • a moving image encoding method is a moving image encoding method executed by a moving image encoding device, the step of dividing an input image to be encoded into a plurality of blocks, For the target block to be processed, a step of generating additional information including a prediction signal and information on at least a prediction method, and a residual signal is generated by subtracting the generated prediction signal from the signal of the target block.
  • a moving image encoding program includes a computer provided in a moving image encoding apparatus, a block divider that divides an input encoding target image into a plurality of blocks, and an encoding target A prediction signal generator that generates additional information including a prediction signal and at least information related to a prediction method for the block, and a difference that generates a residual signal by subtracting the generated prediction signal from the signal of the target block A converter that converts the residual signal of the target block into a transform coefficient in a frequency domain, a quantizer that compresses the transform coefficient by quantization processing to obtain a quantized transform coefficient, and the quantized transform coefficient An inverse quantizer that restores decoded transform coefficients by inverse quantization, an inverse transformer that reproduces a residual signal by inverse transforming the decoded transform coefficients, and An adder that restores a reproduced image by adding the residual signal reproduced by the converter and the prediction signal, and the above-described image processing device, and includes the additional information and the quantized transform coefficient An
  • a moving picture decoding apparatus receives a bitstream obtained by entropy encoding a quantized transform coefficient of a residual signal and additional information including at least information related to a prediction method, and entropy decodes the bitstream.
  • a data analyzer that obtains the quantized transform coefficient and the additional information, a prediction signal generator that generates a prediction signal based on the additional information, and dequantizes the quantized transform coefficient to obtain a decoded transform coefficient
  • a loop that includes an image processing apparatus that performs filtering processing to remove unnecessary distortion from the reproduced image using the additional information and the information of the quantization transform coefficient
  • filter characterized in that it comprises a frame memory for storing the reproduced image after the filtering process, the.
  • a moving picture decoding method is a moving picture decoding method executed by a moving picture decoding apparatus, wherein entropy coding is performed on quantized transform coefficients of a residual signal and at least additional information including information on a prediction method.
  • the obtained bitstream is input, entropy decoding the bitstream to obtain the quantized transform coefficient and the additional information, generating a prediction signal based on the additional information, and the quantized transform
  • a reproduction image is generated by dequantizing the coefficient to obtain a decoded transform coefficient, inversely transforming the decoded transform coefficient, restoring a residual signal, and adding the prediction signal and the residual signal
  • an operation of an in-loop filter configured to include the above-described image processing device, the additional information and the amount Using the information of the transform coefficients, characterized by comprising a said step of performing filtering processing for removing unnecessary distortion from the reproduced image, and storing the reproduced image after the filtering process, the.
  • a moving picture decoding program is a bit stream obtained by entropy encoding a computer provided in a moving picture decoding apparatus with quantization transform coefficients of a residual signal and at least additional information including information on a prediction method. Is input, entropy-decodes the bitstream, obtains the quantized transform coefficient and the additional information, a data analyzer that generates a predicted signal based on the additional information, and the quantized transform An inverse quantizer that inversely quantizes the coefficients to obtain decoded transform coefficients, an inverse transformer that inversely transforms the decoded transform coefficients and restores a residual signal, and adds the prediction signal and the residual signal And an adder for generating a reproduced image and the above-described image processing apparatus, and using the additional information and the information of the quantization transform coefficient, Wherein the loop filter that performs filter processing for removing unnecessary distortion, a frame memory for storing the reproduced image after the filtering process, a function as an.
  • the present invention can be described as follows as an encoding / decoding system and encoding / decoding method.
  • An encoding / decoding system is an encoding / decoding system including a moving image encoding device and a moving image decoding device, and the moving image encoding device receives the input A block divider that divides an image to be encoded into a plurality of blocks; a prediction signal generator that generates additional information including a prediction signal and at least information about a prediction method for the target block to be encoded; and A subtractor that generates a residual signal by subtracting the generated prediction signal from the signal of the target block; a converter that converts the residual signal of the target block into a frequency domain transform coefficient; and the transform A quantizer that compresses the coefficient by quantization processing to obtain a quantized transform coefficient, an inverse quantizer that restores a decoded transform coefficient by dequantizing the quantized transform coefficient, and An inverse transformer that reproduces a residual signal by inversely transforming a signal transformation coefficient, and an adder that restores a reproduced image by adding the residual signal reproduced by the inverse transformer and the
  • a frame memory for storing the reproduced image; and an entropy encoder for entropy encoding the quantized transform coefficient information and the additional information and outputting the encoded information as a bit stream.
  • a bitstream obtained by entropy encoding the quantized transform coefficients and additional information including at least information on the prediction method is input.
  • a data analyzer that entropy-decodes the bitstream to obtain the quantized transform coefficient and the additional information, a prediction signal generator that generates a predicted signal based on the additional information, and inverse quantization of the quantized transform coefficient And the inverse quantizer for obtaining decoded transform coefficients, the inverse transformer for inversely transforming the decoded transform coefficients and restoring the residual signal, and adding the prediction signal and the residual signal to the reproduced image
  • An in-loop filter configured to include an adder to be generated and the above-described image processing device, and performing filter processing to remove unnecessary distortion from the reproduced image using the additional information and the information of the quantization transform coefficient; And a frame memory for storing the reproduced image after the filtering process.
  • An encoding / decoding method is an encoding / decoding method executed in an encoding / decoding system including a moving image encoding device and a moving image decoding device, and the moving image code And a processing step of the moving picture encoding method executed by the moving picture decoding device, wherein the processing step of the moving picture encoding method is inputted.
  • An operation of an in-loop filter configured to include an image processing device, wherein a filter process for removing unnecessary distortion from the reproduced image is performed using the additional information and the information of the quantization transform coefficient.
  • the method includes a step of performing filter processing for removing unnecessary distortion from the reproduced image using information on the transform coefficient, and a step of storing the reproduced image after the filter processing.
  • the residual distortion signal generated on the reproduced image can be suppressed while maintaining the original edge of the image.
  • FIG. It is a block diagram of the moving image encoder which concerns on this embodiment. It is a flowchart explaining the process of the filter in a loop. It is a flowchart explaining a 2nd filter image generation process. It is a block diagram of the filter in a loop. It is a block diagram which shows an example of a 1st filter. It is a flowchart explaining the process in the attribute information generator 202.
  • FIG. It is a block diagram of the moving image decoding apparatus which concerns on this embodiment. It is a flowchart which shows the moving image encoding method which concerns on this embodiment. It is a flowchart which shows the moving image decoding method which concerns on this embodiment. It is a block diagram which shows the module of the moving image encoding program which concerns on this embodiment.
  • FIG. 1 is a block diagram of a moving picture coding apparatus 100 having a residual distortion signal removal function according to the present invention.
  • the moving image encoding apparatus 100 includes an input terminal 101, a block divider 102, a difference unit 103, a converter 104, a quantizer 105, an inverse quantizer 106, an inverse transformer 107, an adder 108, an in-loop filter 109, A frame memory 110, a prediction signal generator 111, an entropy encoder 112, and an output terminal 113 are provided.
  • a plurality of images constituting the moving image are input from the input terminal 101.
  • the block divider 102 divides an image to be encoded into a plurality of small regions (here, for example, blocks composed of 8 ⁇ 8 pixels). The following compression / encoding process is executed for each of the divided blocks.
  • the prediction signal generator 111 generates a prediction signal for a block to be encoded (hereinafter referred to as “target block”), and outputs the prediction signal to the difference unit 103 via the line L111. Further, the prediction signal generator 111 generates a plurality of prediction method candidates by executing the intra-screen prediction method or the inter-screen prediction method, and encodes the signal of the target block input via the line L102. A prediction method that requires a small amount of code and a small residual with the target block is selected from the plurality of prediction method candidates. Note that prediction method candidates are not limited in the present invention. Prediction mode information indicating the selected prediction method, motion information associated with inter-screen prediction, and the like are output as additional information to the entropy encoder 115 and the in-loop filter 109 via the line L112.
  • the subtractor 103 generates a residual signal by subtracting the prediction signal input via the line L111 from the signal of the target block input via the line L102.
  • the generated residual signal is output to the converter 104 via the line L103.
  • the converter 104 converts the difference signal into a frequency domain conversion coefficient in units of a difference signal block (here, a block composed of 4 ⁇ 4 pixels) obtained by further dividing the target block.
  • the transform coefficient obtained by the transform is output to the quantizer 105 via the line L104, and is compressed into a quantized transform coefficient by the quantization processing by the quantizer 105.
  • the moving image encoding apparatus 100 may have a configuration in which one of the converter 104 and the quantizer 105 is omitted.
  • the entropy encoder 112 converts the quantized transform coefficient input via the line L105 into a variable length code and outputs it as a bit stream from the output terminal 113. At this time, arithmetic coding may be applied instead of the variable length code. In addition, the entropy encoder 112 entropy-encodes additional information that is simultaneously input via the line L112 together with the quantized transform coefficient.
  • the inverse quantizer 106 restores the decoded transform coefficient by inversely quantizing the quantized transform coefficient input via the line L105 with the quantization accuracy corresponding to the quantizer 105, and reverses it via the line L106. Output to the converter 107.
  • the inverse transformer 107 reproduces the residual signal by inversely transforming the decoded transform coefficient.
  • the quantization parameter indicating the quantization accuracy is sent from the quantizer 105 to the entropy encoder 112, and is entropy-encoded in units of frames or blocks in the entropy encoder 112, and a part of the bit stream. Is output from the output terminal 113 (that is, notified to the video decoding device that decodes the bit stream). Further, the inverse quantizer 106 outputs the information of the quantized transform coefficient regarding each 4 ⁇ 4 block to the in-loop filter 109 via the line L113.
  • the adder 108 restores the reproduced image by adding the predicted signal input via the line L111 to the regenerated residual signal input via the line L107, and outputs it to the in-loop filter 109 via the line L108. To do.
  • the in-loop filter 109 removes unnecessary distortion from the reproduced image by using the additional information input via the line L112 and the information of the quantized transform coefficient regarding each 4 ⁇ 4 block input via the line L113. This is called “filtering”, and details thereof will be described later.
  • the reproduced image on which the filter processing has been performed is output from the in-loop filter 109 to the frame memory 110 via the line L109 and stored in the frame memory 110 for use as a reference image when the next image is encoded.
  • the in-loop filter 109 (About the in-loop filter 109) Next, the in-loop filter 109 will be described in detail with reference to FIGS.
  • the in-loop filter 109 has a blurring effect and the first filter that removes distortion around the edge so that the image becomes clear while preserving the original edge, and has a blurring effect.
  • One filter includes a second filter that removes block-like distortion that tends to remain.
  • FIG. 2 shows a processing flow of the in-loop filter 109.
  • the in-loop filter 109 first applies the first filter to the reproduced image input via the line L108 to generate a first filter image (step 702).
  • the in-loop filter 109 generates an attribute value for determining whether to apply the second filter for each pixel of the first filter image (step 703). Thereafter, the attribute value for each pixel is used to select a pixel whose signal value does not change even when the first filter is applied.
  • the in-loop filter 109 applies the second filter to the first filter image based on the generated attribute value to generate a second filter image (step 704). That is, the in-loop filter 109 determines whether or not to apply the second filter to each pixel according to the attribute value for each pixel of the first filter image, and the pixel determined to apply the second filter. Applies the second filter and avoids applying the second filter for pixels determined not to apply the second filter, thereby generating a second filter image. In this way, by using the attribute value for each pixel of the first filter image, the second filter can be selectively applied to a region where distortion remains even if the first filter is applied, so that the original edge is blurred. Therefore, it is possible to generate the second filter image in which only the distortion signal remaining in the first filter image is suppressed.
  • the in-loop filter 109 generates a difference image between the first filter image and the second filter image (step 705). Then, for a pixel in the difference image, the pixel value of the difference image (hereinafter referred to as “difference value”) is compared with a predetermined threshold TH (step 706).
  • difference value is smaller than the threshold value TH
  • the pixel value of the second filter image is selected as the pixel value of the final filter image (step 707)
  • the difference value is equal to or larger than the threshold value TH.
  • the pixel value of the first filter image is selected as the pixel value of the final filter image (step 708).
  • the threshold value TH may be a value that is determined according to a quantization parameter that determines quantization accuracy in a quantizer or an inverse quantizer, for example.
  • the difference image in step 705 is not necessarily generated. For example, even if a method of calculating a difference value in units of pixels while obtaining one pixel from each of the first filter image and the second filter image without generating a difference image, the processing in steps 706 to 708 is performed. Can be executed.
  • the process of selecting the filter image shown in steps 705 to 708 may be omitted.
  • a square error minimum filter (Wiener Filter) that minimizes the error between the second filter image and the input image is calculated, and instead of the processing of steps 705 to 708, the square error minimum filter is applied to the second filter image. May be. Similar to the quantization parameter described above, the square error minimum filter calculated here may be encoded and transmitted to the outside.
  • step 802 of FIG. 3 the attribute values for the pixels of the first filter image are sequentially input to the in-loop filter 109, and the in-loop filter 109 determines whether or not the input attribute value is 0 (step 803) If the attribute value is not 0 (if 1), the process proceeds to step 809; if the attribute value is 0, the process proceeds to step 804.
  • step 804 the in-loop filter 109 acquires pixel values and attribute values for a total of 15 pixels, that is, the pixel to be processed in the first filter image and the 7 pixels on the left and right adjacent to the pixel to be processed. Subsequently, the attribute values for the acquired 15 pixels are added (step 805), and it is determined whether or not the added value is 0 (step 806). If the added value is not 0, the process proceeds to step 809. If the added value is 0, the process proceeds to step 807.
  • the in-loop filter 109 applies the second filter to the pixel to be processed with reference to a total of 14 pixels, 7 pixels on the left and right adjacent to the pixel to be processed.
  • the 14 pixels to be referred to are pixels in the first filter image.
  • the pixels after application of the second filter may be referred to.
  • the number of filter taps is as shown below, and the filter format is a low-pass filter. That is, the value of the output pixel of the second filter is obtained by multiplying the value of the pixel to be processed in the first filter image by 2, and adding the value of the right and left 7 pixels adjacent to the pixel to be processed to the multiplied value. It is calculated by dividing the added value by 16.
  • step 808 the in-loop filter 109 outputs the value of the output pixel of the second filter as the pixel value of the second filter image.
  • step 809 the in-loop filter 109 outputs the pixel value of the first filter image as the pixel value of the second filter image.
  • next step 810 it is confirmed whether or not the next pixel to be processed remains. If it remains, the process returns to step 802, and the processing in steps 802 to 810 is performed again for the remaining pixels to be processed. To do. Then, when the processing in steps 802 to 810 is executed for all the pixels to be processed, the processing in FIG. 3 is terminated.
  • the filtering processing in steps 802 to 810 is performed in the “vertical direction” (that is, referring to the upper and lower 7 pixels adjacent to the pixel to be processed, the image is moved vertically from the lower left to the lower right. (Scan from top to bottom, left to right).
  • an image obtained by applying a “horizontal” one-dimensional filter as the second filter may be further subjected to a “vertical” one-dimensional filter.
  • the filter image selection processing shown in steps 705 to 708 is performed on the image that has been subjected to the “horizontal” one-dimensional filter, and the “vertical” one-dimensional filter is applied to the generated intermediate output image. You may make it apply.
  • the filter image selection processing shown in steps 705 to 708 is performed on the image that has been subjected to the “vertical” one-dimensional filter, the difference between the first filter image and the second filter image shown in step 705
  • the processing in steps 706 to 708 may be performed on the difference value between the intermediate output image and an image (corresponding to the second filter image) subjected to the one-dimensional filter in the “vertical direction”.
  • This processing can also be realized by performing the processing in steps 706 to 708 in FIG. 2 between steps 807 and 808 in FIG.
  • threshold processing is performed on the difference between the pixel values before and after filtering in the processing of step 807, and the pixel value after applying the filter (step 707) or the pixel value before applying the filter (step 708). Is output at step 808.
  • the processing in steps 802 to 810 may be changed to be executed in the horizontal direction and the vertical direction in order.
  • the “horizontal” and “vertical” one-dimensional filters may be different filters.
  • the threshold value TH used for the filter image selection process after applying the one-dimensional filter in the “horizontal direction” and the “vertical direction” may be different.
  • two sets of data in the horizontal direction and the vertical direction may be encoded using a one-dimensional filter and a threshold as one set of data.
  • the “vertical” one-dimensional filter may be applied first in the order of filtering. Further, only the “vertical direction” one-dimensional filter may be implemented.
  • the filter shape of the second filter is not limited to the above 15 tap filter.
  • a two-dimensional filter may be applied instead of a one-dimensional filter, or another fixed filter may be applied.
  • the number of taps and the filter coefficient are not limited, and the shape information and tap number information of the second filter may be encoded, and the encoded data may be included in the bit stream and transmitted to the outside. More specifically, the attribute values are all “0”, a square error minimum filter (Wiener Filter) that minimizes the error between the first filter image and the input image is calculated, and the square error minimum filter is used as the second filter. It is good. At this time, the square error minimum filter may be encoded, and the encoded data may be included in the bit stream and transmitted to the outside.
  • Wiener Filter Square error minimum filter
  • a method of inputting an attribute value from the outside of the in-loop filter 109 (for example, a method of determining a target pixel to which the filter is applied by the encoding device and the decoding device) may be employed.
  • the attribute value may be compression-encoded.
  • the first filter processing and the second filter processing are performed in units of images, but may be performed in units of blocks (for example, units of encoding target blocks).
  • the filter processing is delayed from the encoding / decoding processing by several blocks according to the number of filter taps. There is a need. For example, as described above, when the block size is 8 ⁇ 8 and the number of filter taps is 7, the filter for (1 block row + 1 block) is used so that the pixels referred to by the second filter have been reproduced. Implementation of the process is delayed from the encoding / decoding process.
  • the second filter processing may be applied only to an intra-screen prediction block (intra block) in which a residual distortion signal is likely to occur.
  • the second filter process may be applied only to the intra-frame encoded frame (intra frame), or the second filter process may be applied only to a frame in which the frequency of intra blocks in the frame is greater than a predetermined value. Good. Thus, the amount of calculation can be reduced by limiting the blocks to which the second filter processing is applied.
  • FIG. 4 is a block diagram of the in-loop filter 109 that performs the in-loop filter processing described with reference to FIGS.
  • the in-loop filter 109 includes a first filter 201, an attribute information generator 202, a second filter 203, and a filter image selector 204.
  • the first filter 201 is based on the additional information input via the line L112 and the quantization transform coefficient information regarding each 4 ⁇ 4 block input via the line L113, for example, by the method shown in Patent Document 1.
  • a first filter is applied to the reproduced image input via the line L108 to generate a first filtered image.
  • the generated first filter image is output to the second filter 203 via the line L202 and also output to the filter image selector 204 via the line L205.
  • information indicating the application status of the first filter 201 is output to the attribute information generator 202 via the line L201.
  • the attribute information generator 202 generates attribute values indicating whether or not to apply the second filter 203 for each pixel of the first filter image, using the input information indicating the application status of the first filter 201. .
  • the generated attribute value is output to the second filter 203 via the line L203. Since the processing of the attribute information generator 202 is performed based on data obtained from the first filter 201, the function of the attribute information generator 202 can be included in the first filter 201.
  • the second filter 203 applies the second filter to the first filter image input via the line L202 based on the attribute value input via the line L203, and generates a second filter image.
  • the generated second filter image is output to the filter image selector 204 via the line L204.
  • the filter image selector 204 generates a difference image between the first filter image input via the line L205 and the second filter image input via the line L204 as shown in steps 706 to 708 of FIG. Then, the value (difference value) of each pixel of the difference image is compared with a predetermined threshold value TH.
  • a predetermined threshold value TH when the difference value is smaller than the threshold value TH, the pixel value of the second filter image is selected.
  • the difference value is equal to or larger than the threshold value TH, the pixel value of the first filter image is selected.
  • the finally generated filter image is output to the frame memory 110 via the line L109.
  • the difference value may be calculated while obtaining one pixel from each of the first filter image and the second filter image without creating the difference image, and the filter image selection process may be performed on a pixel basis.
  • the filter image selector 204 may be omitted.
  • the filter image selector 204 is included in the second filter 203 to apply the one-dimensional filter of “horizontal direction”.
  • a method of performing filter image selection processing shown in Steps 706 to 708 after applying a one-dimensional filter in the “vertical direction” can be realized.
  • the filter image selector 204 calculates a square error minimum filter (Wiener Filter) that minimizes an error between the second filter image and the input image, and applies the square error minimum filter to the second filter image. May be changed. Similar to the quantization parameter described above, the square error minimum filter calculated here may be encoded and transmitted to the outside.
  • FIG. 5 is a block diagram showing an example of the first filter 201 described in Patent Document 1.
  • the first filter 201 includes 16 converters (referred to as “first to 16th converters”) 301-1 to 301-16, 16 threshold value processors 302-1 to 302-16, and 16 filters.
  • Inverse converters (referred to as “first to sixteenth inverse converters”) 303-1 to 303-16, a synthesizer 304, and a mask processor 305 are provided.
  • the reproduced image input to the first filter 201 via the line L108 is divided into blocks of 4 ⁇ 4 pixels, for example, and subjected to frequency conversion (however, the block size is not limited to 4 ⁇ 4).
  • the converters (the first converter 301-1 to the sixteenth converter 301-16) shift the block boundary by one pixel within the range of 4 pixels in the vertical direction and 4 pixels in the horizontal direction, and the frequency of 16 times in the reproduced image. Conversion is performed to generate 16 sets of converted images.
  • the 4 ⁇ 4 block in the converter 104 and the inverse converter 107 in FIG. 1 is referred to as “C block”
  • the 4 ⁇ 4 block in the first filter 201 in FIG. 5 is referred to as “D block”. I will call it.
  • the 16 converted images are input to the threshold processors 302-1 to 302-16, respectively.
  • Each threshold processor performs threshold processing on the transform coefficients of all the D blocks based on the additional information input via the line L112 and the quantized transform coefficient information regarding each C block input via the line L113.
  • the conversion coefficient smaller than the threshold value is changed to 0 value. That is, the distortion in the image is removed by setting the conversion coefficient that can cause distortion to 0.
  • This threshold value is different for each D block and is determined based on the filter mode related to the C block. Specifically, first, the filter mode is set at the boundary between two C blocks using the prediction method of each coding target block and the information of the quantized transform coefficient regarding each C block. And the filter mode of D block is determined based on the filter mode of the C block boundary which D block straddles. For example, when the priority order of the filter modes is determined in advance and the D block straddles a plurality of C block boundaries, the filter mode with the highest priority order is selected from the plurality of filter modes.
  • the D block subjected to the threshold processing is output to the inverse converters 303-1 to 303-16.
  • the number of 0 coefficients belonging to each D block is output to the attribute information generator 202 via the line L201.
  • the inverse transformers (inverse transformers 303-1 to 303-16) perform inverse transformation on the 16 sets of converted images subjected to the threshold processing, and generate 16 sets of estimated images.
  • the generated 16 sets of estimated images are output to the synthesizer 304 via the line L303.
  • the synthesizer 304 synthesizes 16 sets of estimated images by linear weighting processing to generate a first filter image.
  • the generated first filter image is output to the mask processor 305 via the line L304.
  • the weighting coefficient in the linear weighting process is determined based on the number of zero coefficients in each D block. Specifically, since a D block with a large number of 0 coefficients is estimated to belong to a flat region, a large weight is given to a D block with a large number of 0 coefficients. On the other hand, since the D block with a small 0 coefficient is estimated to include an edge, a small weight is given to the D block with a small 0 coefficient.
  • the edge is extracted by utilizing the property that the conversion efficiency of the block conversion is higher in the flat area, and noise in the flat area is suppressed while the edge is not crushed.
  • the mask processor 305 performs mask processing with the reproduced image input via the line L108 on the C block boundary of the first filter image in order to avoid excessive filter processing. More specifically, the mask processor 305 determines the pixel range to be masked for each C block boundary, and inputs the pixel of the first filter image based on the determined mask pixel range via the line L108. Replace with the pixel of the reproduced image to be played. In other words, for the pixel at the pixel position not masked by the masking process, the pixel of the first filter image is replaced with the pixel of the reproduced image input via the line L108. That is, the reproduced pixels at these pixel positions pass through the first filter without change.
  • the masked pixel information is output to the attribute information generator 202 via the line L201-17.
  • the first filter image subjected to mask processing is output to the second filter 203 via the line L202.
  • the above processing by the converters 301-1 to 301-16, the threshold processors 302-1 to 302-16, the inverse converters 303-1 to 303-16, the combiner 304, and the mask processor 305 is performed. May be repeated using different thresholds.
  • the support range of the filter is usually longer than that of the first filter.
  • the first filter is a filter that refers to pixels in a range surrounded by three pixels surrounding the pixel to which the filter is applied
  • the second filter A case is assumed in which the filter refers to a pixel in a range surrounded by seven pixels around the pixel (that is, the number of pixels larger than three pixels in the case of the first filter).
  • FIG. 6 shows a processing flow in the attribute information generator 202 of FIG.
  • the number of 0 coefficients belonging to the 16 D blocks straddling the target pixel for determining the attribute value and the mask processing result in the first filter 201 of the target pixel for determining the attribute value are obtained via the line L201.
  • Input step 902.
  • the attribute information generator 202 determines from the mask processing result in the first filter 201 that the pixel to be processed is a pixel that is not the filter processing target (that is, the pixel to which the first filter is not applied and the mask processing). It is determined whether or not the pixel is not masked (step 903). If the pixel to be processed is a pixel that is not subject to filtering, the process proceeds to step 906. If the pixel to be processed is not a pixel that is not subject to filtering (the pixel that is subject to filtering), the process proceeds to step 904.
  • step 904 the attribute information generator 202 determines whether or not the number of 0 coefficients in the block is 15 or more for each of the 16 D blocks. If the number of 0 coefficients in the block is 15 or more in all D blocks, the process proceeds to step 905. If the number of 0 coefficients in the block is less than 15 in one or more D blocks, the process proceeds to step 906. move on.
  • step 905 the attribute value of the pixel to be processed is output as “0”, while in step 906, the attribute value of the pixel to be processed is output as “1”.
  • steps 902 to 906 is repeatedly executed until the attribute values of all the pixels are determined (step 907).
  • the attribute value determination method is not limited to the above.
  • the number of 0 coefficients in the D block is not “15” or more, and other reference values may be used.
  • the number of 0 coefficients in the D block is used as an evaluation scale, but the number of 0 coefficients other than the DC coefficient (direct current component) may be used as the evaluation scale.
  • the pixels not masked by the mask processing of the first filter pass through the first filter without change, they may be the filter processing target of the second filter.
  • an attribute value may be determined by extracting an area composed of pixels whose signal value does not change even when the first filter is applied. Specifically, with respect to an input image to the first filter and an output image from the first filter, a difference is taken for each pixel, and a pixel whose absolute value of the difference is smaller than a specified value (or a pixel whose difference is 0) An example in which the attribute value is “0” and other values are “1” is given.
  • the distortion around the edge is suppressed by the first filter while maintaining the original edge of the image. Since the first filter selectively applies the second filter to the region based on the information indicating the region where the change is small in the first filter (the region that may include distortion that cannot be removed by the first filter), the edge is A clear filter image with few residual distortion components can be generated.
  • Patent Document 1 has been described as an example for the first filter processing, it is not limited to the technique described in Patent Document 1.
  • the residual distortion signal removal processing by the second filter of this embodiment can be applied.
  • an attribute value may be determined by extracting a region composed of pixels whose signal value does not change even when the first filter is applied.
  • the first filter process is performed twice while changing the strength of the filter, and the attribute value is determined by taking the difference.
  • the first filter 201 performs a normal first filter process in consideration of the quantization parameter QP used by the quantizer 105 and the inverse quantizer 107 on the reproduced image, and the attribute information generator 202 The first filter processing is performed on the reproduced image with two parameters (for example, corresponding to “QP + ⁇ ” and “QP ⁇ ”) with different filter strengths.
  • the attribute information generator 202 calculates the difference value between the two filter images obtained by the two first filter processes, and uses the obtained difference value as the second filter image indicating the application status of the first filter. Attribute value.
  • the first filter processing is saturated at the quantization level indicated by QP, and pixels of the reproduced image pass through as they are. That is, even if distortion occurs on the reproduced image, it cannot be removed by the first filter processing. A region where distortion that cannot be removed by such first filter processing can occur can be extracted.
  • the processing of the in-loop filter 109 described above can be applied not only to a reproduced image accompanying encoding but also to general distortion removal. Except for the additional information input through the line L112 and the quantization transform coefficient information for each 4 ⁇ 4 block input through the line L113 from the processing shown in FIGS.
  • the attribute information generation process and the filter image selection process can also be applied to general image processing that removes distortion. At this time, information obtained from the input signal may be used in place of the additional information and the quantization transform coefficient information regarding each 4 ⁇ 4 block.
  • FIG. 7 shows a block diagram of a moving picture decoding apparatus 500 having a residual distortion signal removing function according to the present invention.
  • the moving picture decoding apparatus 500 includes an input terminal 501, a data analyzer 502, an inverse quantizer 503, an inverse transformer 504, an adder 505, a prediction signal generator 506, an in-loop filter 109, a frame memory 507, and an image output.
  • a terminal 508 is provided.
  • the function of the in-loop filter 109 is the same as that of the in-loop filter 109 of FIG.
  • the input terminal 501 receives a bit stream including additional information required for generating a prediction signal for each target block and encoded data of a residual signal for the target block.
  • a bit stream obtained by processing by the video encoding device 100 in FIG. 1 is input to the video decoding device 500.
  • the data analyzer 502 analyzes the input data (input bit stream) and decodes the encoded data (quantized transform coefficient) of the residual signal and the additional information. In addition, when the quantization parameter that determines the quantization accuracy, the filter coefficient of the second filter used in the in-loop filter, and the number of taps are included in the input data, the data analyzer 502 also decodes the information. . As a decoding method, variable length decoding or arithmetic decoding is used.
  • the encoded data (quantized transform coefficient) of the decoded residual signal is input to the inverse quantizer 503 via the line L502a, and the inverse quantizer 503 reverses the quantized transform coefficient based on the quantization parameter.
  • the quantized data is restored to the decoded transform coefficient and output to the inverse transformer 504 via the line L503.
  • the inverse transformer 504 inversely transforms the input decoded transform coefficient to restore the residual signal, and outputs the residual signal to the adder 505 via the line L504.
  • the moving picture decoding apparatus 500 may have a configuration in which one of the inverse transformer 504 and the inverse quantizer 503 is omitted.
  • the additional information decoded by the data analyzer 502 is output to the prediction signal generator 506 via the line L502b.
  • the prediction signal generator 506 generates a prediction signal based on the input additional information, outputs the prediction signal to the adder 505 via the line L506, and outputs the additional information to the in-loop filter 109 via the line L112.
  • the adder 505 generates a reproduced image by adding the prediction signal and the restored residual signal, outputs the reproduced image to the in-loop filter 109 via the line L108, and outputs the reproduced image via the line L505. Is output from the image output terminal 508.
  • the in-loop filter 109 removes unnecessary distortion from the reproduced image using the additional information input via the line L112 and the quantized transform coefficient information regarding each 4 ⁇ 4 block input via the line L113 ( That is, filter processing is performed).
  • the filtered reproduced image is used as a reference image when the next image is encoded, and therefore is output to the frame memory 507 via the line L109 and stored in the frame memory 507.
  • FIG. 8 shows a flowchart of a moving image encoding process with a residual distortion signal removal function executed by the moving image encoding device 100.
  • an encoding target image (target image) is input to the moving image encoding apparatus 100, and the block divider 102 divides the input target image into a plurality of small blocks (step 852).
  • the prediction signal generator 111 determines a prediction method from among a plurality of prediction methods using a reference image stored in the frame memory 110 for each target block, and generates a prediction signal. At the same time, the prediction signal generator 111 generates additional information necessary for generating the prediction signal (step 853). By obtaining a prediction signal for each target block, a prediction image for the target image is obtained.
  • the difference unit 103 generates a residual image between the target image and the predicted image (step 854), and the converter 104 converts each block of the residual image into a frequency domain transform coefficient (step 855). Then, the quantizer 105 quantizes the transform coefficient based on the quantization parameter that determines the quantization accuracy, and generates a quantized transform coefficient (step 856).
  • the inverse quantizer 106 dequantizes the quantized transform coefficient based on the quantization parameter to restore the decoded transform coefficient (step 857), and the inverse transformer 107 converts the restored transform coefficient to The residual image is restored (reproduced) by inverse transformation (step 858). Then, the adder 108 adds the restored residual image and the predicted image to generate a reproduced image (step 859).
  • the in-loop filter 109 performs an in-loop filter process for removing unnecessary distortion from the reproduced image using the additional information and the quantization transform coefficient information (step 860). Then, the reproduced image that has been subjected to the in-loop filter processing is output to and stored in the frame memory 110 for use as a reference image when the next image is encoded (step 861).
  • the entropy encoder 112 entropy-encodes the additional information and the quantized transform coefficient and outputs the result as a bit stream (step 862).
  • step 860 has already been described with reference to FIGS. 2, 3, and 6, and will not be described here.
  • the processing of the in-loop filter 109 described above can be applied not only to a reproduced image accompanying encoding but also to general noise removal.
  • the first and second filter processing including the residual distortion signal removal function and the attribute information are obtained by removing the additional information and the quantization transform coefficient information for each 4 ⁇ 4 block from the processing shown in FIGS.
  • the generation process and the filter image selection process can also be applied to a general image processing method for removing distortion.
  • Information obtained from the input signal may be used instead of the additional information and the quantized transform coefficient for each 4 ⁇ 4 block.
  • FIG. 9 shows a flowchart of a moving image decoding process with a residual distortion signal removal function, which is executed by the moving image decoding apparatus 500.
  • the compression-encoded data is input to the moving image decoding apparatus 500, and the data analyzer 902 performs entropy decoding on the input data, and extracts quantized transform coefficients and additional information.
  • the input data includes information on the quantization parameter, the filter coefficient used for the in-loop filter, and the number of filter taps, the information on the quantization parameter, the filter coefficient, and the number of filter taps is also decoded. .
  • the prediction signal generator 506 uses the reference image stored in the frame memory 507 to generate a prediction image based on the additional information (step 953).
  • the inverse quantizer 503 inversely quantizes the extracted quantized transform coefficient based on the quantization parameter to obtain a decoded transform coefficient (step 954), and the inverse transformer 504 inversely transforms the decoded transform coefficient. Then, the residual image is restored (step 955).
  • the adder 505 adds the predicted image and the restored residual image to generate a reproduced image (step 956).
  • the in-loop filter 109 performs an in-loop filter process that removes unnecessary distortion from the reproduced image using the additional information and the quantization transform coefficient information (step 957).
  • the reproduced image on which the in-loop filter processing has been performed is output and stored in the frame memory 110 for use as a reference image for encoding the next image (step 958).
  • step 957 has already been described with reference to FIGS. 2, 3, and 6, and will not be described here.
  • the invention relating to the moving image encoding apparatus can be understood as an invention relating to a moving image encoding program for causing a computer to function as a moving image encoding apparatus.
  • the moving picture coding method according to the present embodiment can be provided as a program stored in a recording medium.
  • the invention relating to the moving picture decoding apparatus can be regarded as an invention relating to a moving picture decoding program for causing a computer to function as a moving picture decoding apparatus.
  • the moving picture decoding method according to the present embodiment can be provided as a program stored in a recording medium.
  • the invention related to the image processing apparatus can be understood as an invention related to an image processing program for causing a computer to function as an image processing apparatus.
  • the image processing method according to the present embodiment can be provided as a program stored in a recording medium.
  • the moving image encoding program, the image processing program, and the moving image decoding program are provided by being stored in a recording medium, for example.
  • the recording medium include a recording medium such as a flexible disk, a CD-ROM, a DVD, a recording medium such as a ROM, or a semiconductor memory.
  • FIG. 10 shows a module of a moving picture coding program capable of executing a moving picture coding method.
  • the moving picture coding program P100 includes a block division module P101, a prediction signal generation module P102, a storage module P103, a subtraction module P104, a transformation module P105, a quantization module P106, an inverse quantization module P107, and an inverse.
  • a conversion module P108, an addition module P109, an in-loop filter module P110, and an entropy encoding module P111 are provided.
  • the block division module P101 is the block divider 102 in FIG. 1
  • the prediction signal generation module P102 is the prediction signal generator 111
  • the storage module P103 is the frame memory 110
  • the subtraction module P104 is the difference unit 103.
  • the transformation module P105 is the transformer 104
  • the quantization module P106 is the quantizer 105
  • the inverse quantization module P107 is the inverse quantizer 106
  • the inverse transformation module P108 is the inverse transformer 107
  • the addition module P109 is the addition
  • the in-loop filter module P110 corresponds to the in-loop filter 109
  • the entropy encoding module P111 corresponds to the entropy encoder 112.
  • the in-loop filter module P110 in FIG. 10 can be regarded as one program and can be represented as the in-loop filter program P110 shown in FIG.
  • the in-loop filter program P110 includes a first filter module P131, an attribute information generation module P132, a second filter module P133, and a filter image selection module P134.
  • each module The function realized by executing each module is the same as the function of the in-loop filter 109 shown in FIG. That is, in terms of function, the first filter module P131 is the first filter 201 of FIG. 4, the attribute information generation module P132 is the attribute information generator 202, the second filter module P133 is the second filter 203, and the filter image selection module. P134 corresponds to the filter image selector 204, respectively.
  • the in-loop filter program P110 corresponds to the image processing program according to the present invention.
  • FIG. 12 shows a video decoding program module capable of executing the video decoding method.
  • the moving picture decoding program P500 includes a data analysis module P501, a prediction signal generation module P502, a storage module P503, an inverse quantization module P504, an inverse transform module P505, an addition module P506, and an in-loop filter module P507. It has.
  • the data analysis module P501 is the data analyzer 502 in FIG. 7
  • the prediction signal generation module P502 is the prediction signal generator 506
  • the storage module P503 is the frame memory 507
  • the inverse quantization module P504 is the inverse quantum.
  • the inverse transformation module P505 corresponds to the inverse transformer 504
  • the addition module P506 corresponds to the adder 505
  • the in-loop filter module P507 corresponds to the in-loop filter 109.
  • the moving image encoding program P100, the moving image decoding program P500, and the in-loop filter program (image processing program) P110 configured as described above are stored in the recording medium 10 shown in FIG. 13 and executed by the computer 30 described later.
  • the in-loop filter program (image processing program) P110 configured as described above are stored in the recording medium 10 shown in FIG. 13 and executed by the computer 30 described later.
  • FIG. 13 shows a hardware configuration of the computer 30 for executing the program recorded in the recording medium 10
  • FIG. 14 shows a perspective view of the computer 30.
  • the computer 30 includes a DVD player, a set top box, a mobile phone, and the like that have a CPU and perform processing and control by software.
  • the computer 30 includes a reading device 12 such as a flexible disk drive device, a CD-ROM drive device, and a DVD drive device, a working memory (RAM) 14 in which an operating system is resident, and a recording medium 10.
  • a reading device 12 such as a flexible disk drive device, a CD-ROM drive device, and a DVD drive device
  • RAM working memory
  • a nonvolatile memory 16 for storing the program stored in the memory
  • a display 18, a mouse 20 and a keyboard 22 as input devices
  • a communication device 24 for transmitting and receiving data and the like
  • a CPU 26 for controlling execution of the program And.
  • the computer 30 can access the moving image encoding program, the image processing program, and the moving image decoding program stored in the recording medium 10.
  • the computer 30 can operate as a moving image encoding apparatus according to the present invention by a moving image encoding program, and can operate as an image processing apparatus according to the present invention by an image processing program.
  • the moving picture decoding program can operate as a moving picture decoding apparatus according to the present invention.
  • the moving image encoding program, the image processing program, and the moving image decoding program may be provided as a computer data signal 40 superimposed on a carrier wave via a wired network / wireless network.
  • the computer 30 stores the moving image encoding program, the image processing program, and the moving image decoding program received by the communication device 24 in FIG. 13 in the memory 16, and the CPU 26 stores the moving image encoding program, the image processing program, and the like.
  • a moving picture decoding program can be executed.
  • the present invention includes the moving picture encoding apparatus 100 (FIG. 1) with the residual distortion signal function described above and the moving picture decoding apparatus 500 (FIG. 7) with the residual distortion signal function described above. It can be understood as an invention relating to the encoding / decoding system.
  • the encoding / decoding system 1 includes a moving image encoding device 100 and a moving image decoding device 500.
  • the moving picture encoding apparatus 100 and the moving picture decoding apparatus 500 can be connected by any communication means, and a bit stream is transmitted from the moving picture encoding apparatus 100 to the moving picture decoding apparatus 500.
  • the present invention can be understood as an invention relating to an encoding / decoding method executed in an encoding / decoding system. That is, the encoding / decoding method according to the present invention includes the processing steps (FIG. 8) of the above-described moving image encoding method executed by the moving image encoding device 100 and the above-described processing executed by the moving image decoding device 500. And a processing step (FIG. 9) of the moving picture decoding method.
  • Frame memory 111, 506 ... Predictive signal generator, 112 ... Entropy Encoder, 201 ... first filter, 202 ... attribute information generator, 203 ... second filter, 204 ... filter image selector 302 ... thresholding unit, 304 ... combiner, 305 ... mask processor, 113,508 ... output terminal, 502 ... data analyzer.

Landscapes

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

Abstract

 画像本来のエッジを保ちつつ、再生された画像上に発生する残留歪み信号を抑制するために、画像加工装置(ループ内フィルタ(109))は、入力された対象画像に第1フィルタを適用して第1フィルタ画像を生成する第1フィルタ手段(201)と、生成された第1フィルタ画像の各画素について、当該画素に第2フィルタを適用するか否かを示す属性値を生成する属性情報生成器(202)と、生成された第1フィルタ画像の各画素についての属性値に基づいて選択される第1フィルタ画像の対象画素に、第2フィルタを適用して第2フィルタ画像を生成する第2フィルタ手段(203)と、を備える。

Description

画像加工装置、方法及びプログラム、動画像符号化装置、方法及びプログラム、動画像復号装置、方法及びプログラム、並びに、符号化・復号システム及び方法
 本発明は、動画像を加工する画像加工装置、方法及びプログラム、動画像の符号化にて扱われる再生画像に残留する歪み信号を除去する動画像符号化装置、方法及びプログラム、動画像の復号にて扱われる再生画像に残留する歪み信号を除去する動画像復号装置、方法及びプログラム、並びに、符号化と復号を行う符号化・復号システム及び方法に関する。
 動画像データの伝送や蓄積を効率よく行うために、圧縮符号化技術が用いられる。動画像の場合はMPEG1、2、4やH.261~H.264の方式が広く用いられている。
 符号化効率を高めるために、符号化対象となる画像を複数の対象ブロックに分割した上で予測符号化・復号処理を行う。具体的には1フレームの画像を16×16画素から成る対象ブロックに分割する。画面内予測符号化方法では、符号化対象となる対象ブロックと同じ画面内にある隣接する既再生の画像信号(圧縮された画像データから復元されたもの)を用いて予測信号を生成した上で、該予測信号を対象ブロックの信号から引き算して得られた差分信号を符号化する。
 また、画面内予測符号化方法に代わり、画面間予測符号化方法(動画像における時間軸上で隣接する他のフレームを参照して対象ブロックの予測信号を生成し該予測信号と対象ブロックとの差分を符号化する方法)が用いられる場合もある。この場合、対象ブロックに対し、符号化済で復元された他のフレームを参照画像として動き検出を行い、誤差の最も少ない予測信号を決定した上で、該予測信号と対象ブロックとの差分値を求める。
 次に、画面内予測符号化方法又は画面間予測符号化方法により得られた差分信号に対し、離散コサイン変換と量子化処理を行う。そして、量子化された離散コサイン変換の係数、及び、予測信号を特定するための動きベクトル又はモード情報をエントロピー符号化し、符号化データを生成する。
 このようにして符号化された符号化データは、次の対象ブロックの予測信号を求めるために、一度復元されて再生される。再生された画像は、ループ内フィルタ処理により、符号化に伴う歪みが除去された後、参照画像としてフレームメモリに格納される。
 上記のループ内フィルタとしては、ブロック間に発生するブロック歪みを除去するブロック歪み除去フィルタが知られているが、このブロック歪み除去フィルタは、ボケた画像を生成しやすいという問題点がある。一方、特許文献1には、再生された画像内の本来のエッジ周辺のノイズを除去するフィルタ処理が記載されている。この特許文献1の手法では、画像内の物体のエッジをまたがないようにフィルタ処理が実行されるため、エッジを保存しつつ画面全体の印象を鮮明にする効果がある。
米国公開公報2006/0153301
 しかしながら、特許文献1のフィルタ処理は、エッジを保存する処理であるため、取り除けない歪を残してしまうという別の問題点がある。特に、ブロック歪みが階段状に発生する擬似輪郭が発生しやすい。このような残留歪み信号は、画面全体にローパスフィルタを適用することにより抑制できる。ところが、画面全体に無作為にローパスフィルタを適用すれば、画像本来のエッジをつぶしてしまう。
 本発明は、上記の課題を解決するために成されたものであり、画像本来のエッジを保ちつつ、再生された画像上に発生する残留歪み信号を抑制することを目的とする。
 上記目的を達成するために、本発明に係る画像加工装置は、入力された対象画像に第1フィルタを適用して第1フィルタ画像を生成する第1フィルタ手段と、前記第1フィルタ手段により生成された前記第1フィルタ画像の各画素について、当該画素に第2フィルタを適用するか否かを示す属性値を生成する属性情報生成手段と、前記属性情報生成手段により生成された前記第1フィルタ画像の各画素についての前記属性値に基づいて選択される前記第1フィルタ画像の対象画素に、前記第2フィルタを適用して第2フィルタ画像を生成する第2フィルタ手段と、を備えることを特徴とする。
 上記の本発明に係る画像加工装置は、前記第1フィルタ画像と前記第2フィルタ画像とを比較し各画素の差分値を求め、前記差分値が予め定めた閾値以上の画素については前記第1フィルタ画像の画素を選択して出力し、前記差分値が前記閾値より小さい画素については前記第2フィルタ画像の画素を選択して出力するフィルタ画像選択手段、をさらに備えることが望ましい。
 また、本発明に係る画像加工装置において、前記第2フィルタ手段は、前記第1フィルタ画像の前記対象画素についての前記属性値と該対象画素に隣接する所定数の画素についての前記属性値とから算出される値が所定の値より大きい場合、生成される前記第2フィルタ画像の画素として、前記第1フィルタ画像の前記対象画素を選択する構成とすることが望ましい。
 また、本発明に係る画像加工装置において、前記第2フィルタは、1次元のフィルタであり、前記第2フィルタ手段は、前記第2フィルタを、前記第1フィルタ画像の対象画素に対し、水平方向および垂直方向のうち一方の方向に適用した後、さらに、前記第2フィルタを他方の方向に適用する構成とすることが望ましい。
 また、本発明に係る画像加工装置において、前記第2のフィルタは、[1,1,1,1,1,1,1,2,1,1,1,1,1,1,1]/16で示される15タップを有し、前記第2フィルタ手段は、前記対象画素および該対象画素の左右に隣接する7画素ずつの計15画素、又は、前記対象画素および該対象画素の上下に隣接する7画素ずつの計15画素を参照して、前記対象画素に前記第2のフィルタを適用する構成とすることが望ましい。
 また、本発明に係る画像加工装置において、前記第1フィルタが適用対象の画素の周囲M画素で囲われる範囲の画素を参照するフィルタである場合、前記第2フィルタは、適用対象の画素の周囲における、前記M画素よりも多いL画素で囲われる範囲の画素を参照するフィルタにより構成されることが望ましい。
 ところで、本発明は、画像加工方法に係る発明、および、画像加工プログラムに係る発明として捉えることもでき、それぞれ以下のように記述することができる。
 本発明に係る画像加工方法は、画像加工装置により実行される画像加工方法であって、入力された対象画像に第1フィルタを適用して第1フィルタ画像を生成する第1フィルタステップと、前記第1フィルタステップにより生成された前記第1フィルタ画像の各画素について、当該画素に第2フィルタを適用するか否かを示す属性値を生成する属性情報生成ステップと、前記属性情報生成ステップにより生成された前記第1フィルタ画像の各画素についての前記属性値に基づいて選択される前記第1フィルタ画像の対象画素に、前記第2フィルタを適用して第2フィルタ画像を生成する第2フィルタステップと、を備えることを特徴とする。
 なお、本発明に係る画像加工方法は、前記第1フィルタ画像と前記第2フィルタ画像とを比較し各画素の差分値を求め、前記差分値が予め定めた閾値以上の画素については前記第1フィルタ画像の画素を選択して出力し、前記差分値が前記閾値より小さい画素については前記第2フィルタ画像の画素を選択して出力するフィルタ画像選択ステップ、をさらに備えることが望ましい。
 本発明に係る画像加工プログラムは、画像加工装置に設けられたコンピュータを、入力された対象画像に第1フィルタを適用して第1フィルタ画像を生成する第1フィルタ手段と、前記第1フィルタ手段により生成された前記第1フィルタ画像の各画素について、当該画素に第2フィルタを適用するか否かを示す属性値を生成する属性情報生成手段と、前記属性情報生成手段により生成された前記第1フィルタ画像の各画素についての前記属性値に基づいて選択される前記第1フィルタ画像の対象画素に、前記第2フィルタを適用して第2フィルタ画像を生成する第2フィルタ手段、として機能させることを特徴とする。
 なお、本発明に係る画像加工プログラムは、前記コンピュータを、さらに、前記第1フィルタ画像と前記第2フィルタ画像とを比較し各画素の差分値を求め、前記差分値が予め定めた閾値以上の画素については前記第1フィルタ画像の画素を選択して出力し、前記差分値が前記閾値より小さい画素については前記第2フィルタ画像の画素を選択して出力するフィルタ画像選択手段、として機能させることが望ましい。
 以上のような本発明によれば、画像本来のエッジを保ちつつ、再生された画像上に発生する残留歪み信号を抑制することができる。
 また、本発明は、動画像符号化装置、方法、プログラムに適用することで、符号化処理の精度を向上させることができる。同様に、本発明は、動画像復号装置、方法、プログラムに適用することで、復号処理の精度を向上させることができる。
 このうち、本発明を適用した動画像符号化装置、方法、プログラムは以下のように記述することができる。
 本発明に係る動画像符号化装置は、入力された符号化対象となる画像を複数のブロックに分割するブロック分割器と、符号化対象となる対象ブロックについて、予測信号、および少なくとも予測方法に関する情報を含む付加情報を生成する予測信号生成器と、前記対象ブロックの信号から前記生成された予測信号を引き算することにより、残差信号を生成する差分器と、前記対象ブロックの前記残差信号を周波数領域の変換係数に変換する変換器と、前記変換係数を量子化処理により圧縮し量子化変換係数を得る量子化器と、前記量子化変換係数を逆量子化することで復号変換係数を復元する逆量子化器と、前記復号変換係数を逆変換することで残差信号を再生する逆変換器と、前記逆変換器により再生された前記残差信号と、前記予測信号とを加算することにより再生画像を復元する加算器と、上述した画像加工装置を含んで構成され、前記付加情報および前記量子化変換係数の情報を用いて、前記再生画像から不要な歪みを取り除くフィルタ処理を行うループ内フィルタと、フィルタ処理後の前記再生画像を格納するフレームメモリと、前記量子化変換係数の情報および前記付加情報をエントロピー符号化し、ビットストリームとして出力するエントロピー符号化器と、を備えることを特徴とする。
 本発明に係る動画像符号化方法は、動画像符号化装置により実行される動画像符号化方法であって、入力された符号化対象となる画像を複数のブロックに分割するステップと、符号化対象となる対象ブロックについて、予測信号、および少なくとも予測方法に関する情報を含む付加情報を生成するステップと、前記対象ブロックの信号から前記生成された予測信号を引き算することにより、残差信号を生成するステップと、前記対象ブロックの前記残差信号を周波数領域の変換係数に変換するステップと、前記変換係数を量子化処理により圧縮し量子化変換係数を得るステップと、前記量子化変換係数を逆量子化することで復号変換係数を復元するステップと、前記復号変換係数を逆変換することで残差信号を再生するステップと、前記逆変換器により再生された前記残差信号と、前記予測信号とを加算することにより再生画像を復元するステップと、上述した画像加工装置を含んで構成されたループ内フィルタの動作を行うステップであって、前記付加情報および前記量子化変換係数の情報を用いて、前記再生画像から不要な歪みを取り除くフィルタ処理を行う当該ステップと、フィルタ処理後の前記再生画像を格納するステップと、前記量子化変換係数の情報および前記付加情報をエントロピー符号化し、ビットストリームとして出力するステップと、を備えることを特徴とする。
 本発明に係る動画像符号化プログラムは、動画像符号化装置に設けられたコンピュータを、入力された符号化対象となる画像を複数のブロックに分割するブロック分割器と、符号化対象となる対象ブロックについて、予測信号、および少なくとも予測方法に関する情報を含む付加情報を生成する予測信号生成器と、前記対象ブロックの信号から前記生成された予測信号を引き算することにより、残差信号を生成する差分器と、前記対象ブロックの前記残差信号を周波数領域の変換係数に変換する変換器と、前記変換係数を量子化処理により圧縮し量子化変換係数を得る量子化器と、前記量子化変換係数を逆量子化することで復号変換係数を復元する逆量子化器と、前記復号変換係数を逆変換することで残差信号を再生する逆変換器と、前記逆変換器により再生された前記残差信号と、前記予測信号とを加算することにより再生画像を復元する加算器と、上述した画像加工装置を含んで構成され、前記付加情報および前記量子化変換係数の情報を用いて、前記再生画像から不要な歪みを取り除くフィルタ処理を行うループ内フィルタと、フィルタ処理後の前記再生画像を格納するフレームメモリと、前記量子化変換係数の情報および前記付加情報をエントロピー符号化し、ビットストリームとして出力するエントロピー符号化器、として機能させることを特徴とする。
 また、本発明を適用した動画像復号装置、方法、プログラムは以下のように記述することができる。
 本発明に係る動画像復号装置は、残差信号の量子化変換係数と少なくとも予測方法に関する情報を含む付加情報とをエントロピー符号化して得られたビットストリームが入力され、前記ビットストリームをエントロピー復号し、前記量子化変換係数と前記付加情報とを得るデータ解析器と、前記付加情報に基づいて予測信号を生成する予測信号生成器と、前記量子化変換係数を逆量子化し、復号変換係数を得る逆量子化器と、前記復号変換係数を逆変換し、残差信号を復元する逆変換器と、前記予測信号と前記残差信号とを加算することで再生画像を生成する加算器と、上述した画像加工装置を含んで構成され、前記付加情報および前記量子化変換係数の情報を用いて、前記再生画像から不要な歪みを取り除くフィルタ処理を行うループ内フィルタと、フィルタ処理後の前記再生画像を格納するフレームメモリと、を備えることを特徴とする。
 本発明に係る動画像復号方法は、動画像復号装置により実行される動画像復号方法であって、残差信号の量子化変換係数と少なくとも予測方法に関する情報を含む付加情報とをエントロピー符号化して得られたビットストリームが入力され、前記ビットストリームをエントロピー復号し、前記量子化変換係数と前記付加情報とを得るステップと、前記付加情報に基づいて予測信号を生成するステップと、前記量子化変換係数を逆量子化し、復号変換係数を得るステップと、前記復号変換係数を逆変換し、残差信号を復元するステップと、前記予測信号と前記残差信号とを加算することで再生画像を生成するステップと、上述した画像加工装置を含んで構成されたループ内フィルタの動作を行うステップであって、前記付加情報および前記量子化変換係数の情報を用いて、前記再生画像から不要な歪みを取り除くフィルタ処理を行う当該ステップと、フィルタ処理後の前記再生画像を格納するステップと、を備えることを特徴とする。
 本発明に係る動画像復号プログラムは、動画像復号装置に設けられたコンピュータを、残差信号の量子化変換係数と少なくとも予測方法に関する情報を含む付加情報とをエントロピー符号化して得られたビットストリームが入力され、前記ビットストリームをエントロピー復号し、前記量子化変換係数と前記付加情報とを得るデータ解析器と、前記付加情報に基づいて予測信号を生成する予測信号生成器と、前記量子化変換係数を逆量子化し、復号変換係数を得る逆量子化器と、前記復号変換係数を逆変換し、残差信号を復元する逆変換器と、前記予測信号と前記残差信号とを加算することで再生画像を生成する加算器と、上述した画像加工装置を含んで構成され、前記付加情報および前記量子化変換係数の情報を用いて、前記再生画像から不要な歪みを取り除くフィルタ処理を行うループ内フィルタと、フィルタ処理後の前記再生画像を格納するフレームメモリ、として機能させることを特徴とする。
 さらに、本発明は、符号化・復号システム、および、符号化・復号方法として、以下のように記述することができる。
 本発明に係る符号化・復号システムは、動画像符号化装置と、動画像復号装置と、を含んで構成される符号化・復号システムであって、前記動画像符号化装置は、入力された符号化対象となる画像を複数のブロックに分割するブロック分割器と、符号化対象となる対象ブロックについて、予測信号、および少なくとも予測方法に関する情報を含む付加情報を生成する予測信号生成器と、前記対象ブロックの信号から前記生成された予測信号を引き算することにより、残差信号を生成する差分器と、前記対象ブロックの前記残差信号を周波数領域の変換係数に変換する変換器と、前記変換係数を量子化処理により圧縮し量子化変換係数を得る量子化器と、前記量子化変換係数を逆量子化することで復号変換係数を復元する逆量子化器と、前記復号変換係数を逆変換することで残差信号を再生する逆変換器と、前記逆変換器により再生された前記残差信号と、前記予測信号とを加算することにより再生画像を復元する加算器と、上述した画像加工装置を含んで構成され、前記付加情報および前記量子化変換係数の情報を用いて、前記再生画像から不要な歪みを取り除くフィルタ処理を行うループ内フィルタと、フィルタ処理後の前記再生画像を格納するフレームメモリと、前記量子化変換係数の情報および前記付加情報をエントロピー符号化し、ビットストリームとして出力するエントロピー符号化器と、を備え、前記動画像復号装置は、残差信号の量子化変換係数と少なくとも予測方法に関する情報を含む付加情報とをエントロピー符号化して得られたビットストリームが入力され、前記ビットストリームをエントロピー復号し、前記量子化変換係数と前記付加情報とを得るデータ解析器と、前記付加情報に基づいて予測信号を生成する予測信号生成器と、前記量子化変換係数を逆量子化し、復号変換係数を得る逆量子化器と、前記復号変換係数を逆変換し、残差信号を復元する逆変換器と、前記予測信号と前記残差信号とを加算することで再生画像を生成する加算器と、上述した画像加工装置を含んで構成され、前記付加情報および前記量子化変換係数の情報を用いて、前記再生画像から不要な歪みを取り除くフィルタ処理を行うループ内フィルタと、フィルタ処理後の前記再生画像を格納するフレームメモリと、を備えることを特徴とする。
 本発明に係る符号化・復号方法は、動画像符号化装置と動画像復号装置とを含んで構成される符号化・復号システムにおいて実行される符号化・復号方法であって、前記動画像符号化装置により実行される動画像符号化方法の処理ステップと、前記動画像復号装置により実行される動画像復号方法の処理ステップと、を備え、前記動画像符号化方法の処理ステップは、入力された符号化対象となる画像を複数のブロックに分割するステップと、符号化対象となる対象ブロックについて、予測信号、および少なくとも予測方法に関する情報を含む付加情報を生成するステップと、前記対象ブロックの信号から前記生成された予測信号を引き算することにより、残差信号を生成するステップと、前記対象ブロックの前記残差信号を周波数領域の変換係数に変換するステップと、前記変換係数を量子化処理により圧縮し量子化変換係数を得るステップと、前記量子化変換係数を逆量子化することで復号変換係数を復元するステップと、前記復号変換係数を逆変換することで残差信号を再生するステップと、前記逆変換器により再生された前記残差信号と、前記予測信号とを加算することにより再生画像を復元するステップと、上述した画像加工装置を含んで構成されたループ内フィルタの動作を行うステップであって、前記付加情報および前記量子化変換係数の情報を用いて、前記再生画像から不要な歪みを取り除くフィルタ処理を行う当該ステップと、フィルタ処理後の前記再生画像を格納するステップと、前記量子化変換係数の情報および前記付加情報をエントロピー符号化し、ビットストリームとして出力するステップと、を含み、前記動画像復号方法の処理ステップは、残差信号の量子化変換係数と少なくとも予測方法に関する情報を含む付加情報とをエントロピー符号化して得られたビットストリームが入力され、前記ビットストリームをエントロピー復号し、前記量子化変換係数と前記付加情報とを得るステップと、前記付加情報に基づいて予測信号を生成するステップと、前記量子化変換係数を逆量子化し、復号変換係数を得るステップと、前記復号変換係数を逆変換し、残差信号を復元するステップと、前記予測信号と前記残差信号とを加算することで再生画像を生成するステップと、上述した画像加工装置を含んで構成されたループ内フィルタの動作を行うステップであって、前記付加情報および前記量子化変換係数の情報を用いて、前記再生画像から不要な歪みを取り除くフィルタ処理を行う当該ステップと、フィルタ処理後の前記再生画像を格納するステップと、を含むことを特徴とする。
 本発明によれば、画像本来のエッジを保ちつつ、再生された画像上に発生する残留歪み信号を抑制することができる。
本実施形態に係る動画像符号化装置のブロック図である。 ループ内フィルタの処理を説明する流れ図である。 第2フィルタ画像生成処理を説明する流れ図である。 ループ内フィルタのブロック図である。 第1フィルタの一例を示すブロック図である。 属性情報生成器202における処理を説明する流れ図である。 本実施形態に係る動画像復号装置のブロック図である。 本実施形態に係る動画像符号化方法を示す流れ図である。 本実施形態に係る動画像復号方法を示す流れ図である。 本実施形態に係る動画像符号化プログラムのモジュールを示すブロック図である。 本実施形態に係るループ内フィルタプログラムのモジュールを示すブロック図である。 本実施形態に係る動画像復号プログラムのモジュールを示すブロック図である。 記録媒体に記録されたプログラムを実行するためのコンピュータのハードウェア構成図である。 図13のコンピュータの斜視図である。 本実施形態に係る符号化・復号システムの構成図である。
 以下、本発明に係る実施形態について、図1~図13を用いて説明する。
 (動画像符号化装置について)
 図1には、本発明による残留歪み信号除去機能を備えた動画像符号化装置100のブロック図を示す。動画像符号化装置100は、入力端子101、ブロック分割器102、差分器103、変換器104、量子化器105、逆量子化器106、逆変換器107、加算器108、ループ内フィルタ109、フレームメモリ110、予測信号生成器111、エントロピー符号化器112、及び、出力端子113を備えている。
 このような動画像符号化装置100について、以下、各構成部の動作を述べる。動画像を構成する複数の画像は入力端子101から入力される。
 ブロック分割器102は、符号化対象となる画像を複数の小領域(ここでは例えば8×8画素から成るブロック)に分割する。分割された各ブロックについて、以下の圧縮・符号化処理が実行される。
 予測信号生成器111は、符号化対象となるブロック(以下「対象ブロック」という)について予測信号を生成し、ラインL111経由で差分器103に出力される。また、予測信号生成器111は、画面内予測方法又は画面間予測方法を実行して複数の予測方法の候補を生成し、そして、ラインL102経由で入力される対象ブロックの信号を符号化する際に必要となる符号量が小さく且つ対象ブロックとの残差が小さくなる予測方法を、上記複数の予測方法の候補から選択する。なお、予測方法の候補については、本発明では限定されない。選択した予測方法を示す予測モード情報や画面間予測に伴う動き情報などは、付加情報として、ラインL112経由でエントロピー符号化器115及びループ内フィルタ109に出力される。
 差分器103は、ラインL102経由で入力された対象ブロックの信号から、ラインL111経由で入力された予測信号を引き算することにより残差信号を生成する。生成された残差信号は、ラインL103経由で変換器104に出力される。
 変換器104は、上記対象ブロックをさらに分割した差分信号ブロック(ここでは4×4画素から成るブロック)単位で、差分信号を周波数領域の変換係数に変換する。変換で得られた変換係数は、ラインL104経由で量子化器105に出力され、量子化器105による量子化処理により量子化変換係数に圧縮される。なお、動画像符号化装置100は、変換器104と量子化器105のうち何れか一方が省略された構成であってもよい。
 エントロピー符号化器112は、ラインL105経由で入力された量子化変換係数を可変長符号に変換し出力端子113よりビットストリームとして出力する。このとき、可変長符号の代わりに算術符号化を適用してもよい。また、エントロピー符号化器112は、同時にラインL112経由で入力される付加情報を量子化変換係数とともにエントロピー符号化する。
 逆量子化器106は、量子化器105に対応する量子化精度にて、ラインL105経由で入力される量子化変換係数を逆量子化することで復号変換係数を復元し、ラインL106経由で逆変換器107に出力する。逆変換器107は、復号変換係数を逆変換することで残差信号を再生する。なお、上記の量子化精度を示す量子化パラメータは、量子化器105からエントロピー符号化器112へ送られ、エントロピー符号化器112においてフレーム単位又はブロック単位でエントロピー符号化され、ビットストリームの一部として出力端子113から出力される(即ち、上記ビットストリームを復号する動画像復号装置に通知される)。また、逆量子化器106は、ラインL113経由で、各4×4ブロックに関する量子化変換係数の情報をループ内フィルタ109に出力する。
 加算器108は、ラインL107経由で入力される再生された残差信号に、ラインL111経由で入力される予測信号を加算することにより再生画像を復元し、ラインL108経由でループ内フィルタ109に出力する。
 ループ内フィルタ109は、ラインL112経由で入力される付加情報、およびラインL113経由で入力される各4×4ブロックに関する量子化変換係数の情報を用いて、再生画像から不要な歪みを取り除く。これを「フィルタ処理」といい、その詳細は後述する。フィルタ処理が実施された再生画像は、次の画像を符号化する際の参照画像として用いるため、ラインL109経由でループ内フィルタ109からフレームメモリ110へ出力され、フレームメモリ110に格納される。
 (ループ内フィルタ109について)
 次に、図2~図6を用いてループ内フィルタ109を詳細に説明する。本実施形態では、特性の異なる2種類のフィルタを用いる。即ち、ループ内フィルタ109は、本来のエッジを保存しつつ画像が鮮明になるようにエッジ周辺の歪みを取り除く第1のフィルタ(特許文献1に記載されたフィルタ)と、ぼかし効果があり特に第1フィルタでは残りやすいブロック状の歪みを取り除く第2のフィルタとを含んで構成される。
 以下、ループ内フィルタ109の動作を述べる。図2はループ内フィルタ109の処理フローを示す。ループ内フィルタ109は、まず、ラインL108経由で入力された再生画像に第1フィルタを適用し、第1フィルタ画像を生成する(ステップ702)。
 次に、ループ内フィルタ109は、第1フィルタ画像の各画素について、第2フィルタを適用するか否かを判定するための属性値を生成する(ステップ703)。以降、各画素についての属性値は、第1フィルタを施しても信号値が変化しない画素を選択するために用いられる。
 そして、ループ内フィルタ109は、生成した属性値に基づいて第1フィルタ画像に第2フィルタを適用し、第2フィルタ画像を生成する(ステップ704)。即ち、ループ内フィルタ109は、第1フィルタ画像の各画素についての属性値に応じて、各画素について第2フィルタを適用するか否かを判定し、第2フィルタを適用すると判定された画素については第2フィルタを適用し、第2フィルタを適用しないと判定された画素については第2フィルタの適用を回避することで、第2フィルタ画像を生成する。このように第1フィルタ画像の各画素についての属性値を利用することで、第1フィルタを施しても歪みの残る領域について選択的に第2フィルタを適用することできるため、本来のエッジをぼかすことなく、第1フィルタ画像において残留する歪み信号だけを抑制した第2フィルタ画像を生成することができる。
 その後、ループ内フィルタ109は、第1フィルタ画像と第2フィルタ画像との差分画像を生成する(ステップ705)。そして、当該差分画像のある画素について、差分画像の画素値(以下「差分値」という)と予め定められた閾値THとを比較する(ステップ706)。ここで、差分値が閾値THより小さい場合には、第2フィルタ画像の画素値を最終的なフィルタ画像の画素値として選択し(ステップ707)、一方、差分値が閾値TH以上の場合には、第1フィルタ画像の画素値を最終的なフィルタ画像の画素値として選択する(ステップ708)。これにより、フィルタ処理後の第2フィルタ画像の各画素において、第1フィルタ画像との比較で、信号値の変化が大きい場合は第1フィルタ画像の画素が選択され、信号値の変化が小さい場合は第2フィルタ画像の画素が選択されるため、本来のエッジをつぶすことなく、余分な残留歪みのみを除去できる。
 以降、ステップ706~708の処理を、差分画像の全ての画素について繰り返す(ステップ709)。
 なお、閾値THは、例えば量子化器や逆量子化器における量子化精度を決める量子化パラメータに応じて定まる値としてもよい。このように閾値THを定めれば、量子化精度が粗いほど残留歪みのレベルが大きくなるという状況に対応できる。
 また、ステップ705における差分画像は必ずしも生成する必要はない。例えば、差分画像を生成することなく、第1フィルタ画像と第2フィルタ画像からそれぞれ1画素を取得しながら、画素単位で差分値を算出する方法であっても、ステップ706~ステップ708の処理を実行することができる。
 また、ステップ705~708に示したフィルタ画像を選択する処理は省略しても良い。また、第2フィルタ画像と入力画像との誤差が最小となる二乗誤差最小フィルタ(Wiener Filter)を算出し、ステップ705~708の処理の代わりに、二乗誤差最小フィルタを第2フィルタ画像に適用してもよい。なお、前述した量子化パラメータと同様に、ここで算出された二乗誤差最小フィルタは、符号化して外部へ伝送してもよい。
 次に、図3を用いて図2のステップ704の第2フィルタ画像生成処理を詳しく説明する。
 図3のステップ802では、第1フィルタ画像の画素に対する属性値が順次、ループ内フィルタ109に入力され、ループ内フィルタ109は、入力された属性値が0であるか否かを判定し(ステップ803)、属性値が0でない場合(1の場合)にはステップ809に進み、属性値が0の場合にはステップ804に進む。
 ステップ804ではループ内フィルタ109は、第1フィルタ画像における処理対象の画素および該処理対象の画素に隣接する左右7画素ずつの計15画素について、画素値と属性値を取得する。続いて、取得された15画素についての属性値を加算し(ステップ805)、加算値が0であるか否かを判定する(ステップ806)。ここで加算値が0でない場合にはステップ809に進み、加算値が0の場合にはステップ807に進む。
 ステップ807ではループ内フィルタ109は、処理対象の画素に対し、該処理対象の画素に隣接する左右7画素ずつの計14画素を参照して、第2フィルタを適用する。ここでは、参照される14画素は、第1フィルタ画像内の画素とするが、予め方法を決めておけば第2フィルタ適用後の画素を参照してもよい。フィルタタップ数は下記に示す通りで、フィルタ形式はローパスフィルタとなっている。即ち、第2フィルタの出力画素の値は、第1フィルタ画像における処理対象の画素の値に2を乗算し、該乗算値に、処理対象の画素に隣接する左右7画素の値を加算し、該加算値を16で割ることにより算出される。
Filter tap=[1,1,1,1,1,1,1,2,1,1,1,1,1,1,1]/16
 ステップ808ではループ内フィルタ109は、第2フィルタの出力画素の値を第2フィルタ画像の画素値として出力する。一方、ステップ809ではループ内フィルタ109は、第1フィルタ画像の画素値を第2フィルタ画像の画素値として出力する。
 次のステップ810では、次の処理対象の画素が残っているか否かを確認し、残っている場合には、ステップ802に戻り、残りの処理対象の画素についてステップ802~810の処理を再度実行する。そして、処理対象の画素全てについてステップ802~810の処理が実行された時点で図3の処理を終了する。
 なお、上記処理に加え、ステップ802~810におけるフィルタ処理を「垂直方向」に実施(即ち、処理対象の画素に隣接する上下7画素ずつを参照し、画像を左下から右下に向かって縦方向(上から下、左から右)にスキャン)してもよい。言い換えれば、第2のフィルタとして「水平方向」の1次元フィルタをかけた画像に対し、さらに「垂直方向」の1次元フィルタをかけてもよい。加えて、「水平方向」の1次元フィルタをかけた画像に対して、ステップ705~708に示すフィルタ画像選択処理を行い、生成された中間出力画像に対して、「垂直方向」の1次元フィルタをかけるようにしてもよい。その後、「垂直方向」の1次元フィルタをかけた画像に対して、ステップ705~708に示したフィルタ画像選択処理を行う際には、ステップ705に示す第1フィルタ画像と第2フィルタ画像の差分値の代わりに、上記の中間出力画像と「垂直方向」の1次元フィルタをかけた画像(第2フィルタ画像に相当)の差分値に対してステップ706~708の処理を行うようにしてもよい。この処理は、図2のステップ706~708の処理を図3のステップ807と808の間で行うようにすることでも実現できる。つまり、ステップ807の処理にてフィルタをかける前と後の画素値の差分について閾値処理(ステップ706)を行い、フィルタ適用後の画素値(ステップ707)かフィルタ適用前の画素値(ステップ708)をステップ808にて出力する。このステップ802~810(ステップ706~708を含む)の処理を順に水平方向と垂直方向に実施するように変更すればよい。ここで、「水平方向」と「垂直方向」の1次元フィルタは異なるフィルタでもよい。また、「水平方向」と「垂直方向」の1次元フィルタ適用後のフィルタ画像選択処理に用いる閾値THは異なる値でもよい。これらの1次元フィルタと閾値を符号化するようにしてもよい。このとき、1次元フィルタと閾値を1組のデータとして水平方向と垂直方向の2組のデータを符号化するようにしてもよい。なお、「水平方向」の1次元フィルタと「垂直方向」の1次元フィルタにおいて、フィルタをかける順番は、「垂直方向」の1次元フィルタが先であってもよい。また、「垂直方向」の1次元フィルタのみを実施してもよい。
 また、第2フィルタのフィルタ形状は、上記15タップのフィルタには限定されない。また、1次元のフィルタではなく2次元フィルタを適用してもよいし、別の固定フィルタを適用してもよい。タップ数とフィルタ係数は限定されず、第2フィルタの形状情報およびタップ数情報を符号化し、符号化データをビットストリームに含めて外部に伝送しても良い。より具体的には、属性値をすべて「0」とし、第1フィルタ画像と入力画像との誤差が最小となる二乗誤差最小フィルタ(Wiener Filter)を算出し、該二乗誤差最小フィルタを第2フィルタとしてもよい。この際、二乗誤差最小フィルタを符号化し、符号化データをビットストリームに含めて外部に伝送しても良い。さらに、属性値をループ内フィルタ109の外部から入力する方法(例えば、フィルタを適用すべき対象画素を符号化装置および復号装置にて決める方法)を採用してもよい。この際、属性値は圧縮符号化してもよい。
 上記の説明では、第1フィルタ処理および第2フィルタ処理を画像単位で実施しているが、ブロック単位(例えば、符号化対象ブロック単位)で実施してもよい。但し、復号順で未来のブロックの再生信号を用いるため、ブロック単位で上記のフィルタ処理を行う場合には、フィルタのタップ数に応じて、符号化・復号処理からフィルタ処理を数ブロック分遅延させる必要がある。例えば、上述したようにブロックサイズが8×8でフィルタタップ数が7の場合には、第2のフィルタにて参照する画素が再生済みとなるように、(1ブロック列+1ブロック)分、フィルタ処理の実施を符号化・復号処理から遅延させる。
 上記では、符号化フレーム内の全画素を第2フィルタ処理の対象としているが、残留歪み信号が発生しやすい画面内予測ブロック(イントラブロック)にのみ第2フィルタ処理を適用してもよい。また、画面内符号化フレーム(イントラフレーム)のみに第2フィルタ処理を適用してもよいし、フレーム内のイントラブロックの頻度が所定値よりも大きいフレームにのみ第2フィルタ処理を適用してもよい。このように第2フィルタ処理を適用するブロックを限定することで演算量を削減できる。
 図4には、図2と図3で説明したループ内フィルタ処理を実施するループ内フィルタ109のブロック図を示す。ループ内フィルタ109は、第1フィルタ201と、属性情報生成器202と、第2フィルタ203と、フィルタ画像選択器204とを備えている。
 第1フィルタ201は、ラインL112経由で入力される付加情報と、ラインL113経由で入力される各4×4ブロックに関する量子化変換係数の情報とに基づいて、例えば特許文献1に示す方法により、ラインL108経由で入力される再生画像に対し第1のフィルタを適用し、第1フィルタ画像を生成する。生成された第1フィルタ画像は、ラインL202経由で第2フィルタ203に出力されるとともに、ラインL205経由でフィルタ画像選択器204に出力される。また、第1フィルタ201の適用状況を示す情報が、ラインL201経由で属性情報生成器202に出力される。
 属性情報生成器202は、入力される第1フィルタ201の適用状況を示す情報を用いて、第1フィルタ画像の各画素について、第2フィルタ203を適用するか否かを示す属性値を生成する。生成された属性値は、ラインL203経由で第2フィルタ203に出力される。なお、属性情報生成器202の処理は第1フィルタ201から得られるデータに基づいて実施されているので、属性情報生成器202の機能は第1フィルタ201に含めることが可能である。
 第2フィルタ203は、ラインL203経由で入力される属性値に基づいて、ラインL202経由で入力される第1フィルタ画像に対し第2フィルタを適用し、第2フィルタ画像を生成する。生成された第2フィルタ画像は、ラインL204経由でフィルタ画像選択器204に出力される。
 フィルタ画像選択器204は、図2のステップ706~708に示したように、ラインL205経由で入力される第1フィルタ画像と、ラインL204経由で入力される第2フィルタ画像との差分画像を生成し、差分画像の各画素の値(差分値)を所定の閾値THと比較する。ここで、差分値が閾値THより小さい場合には第2フィルタ画像の画素値を選択し、一方、差分値が閾値TH以上の場合には第1フィルタ画像の画素値を選択する。最終的に生成したフィルタ画像は、ラインL109経由でフレームメモリ110に出力される。
 なお、差分画像は作成せずに、第1フィルタ画像と第2フィルタ画像からそれぞれ1画素ずつ取得しながら差分値を計算し、画素単位でフィルタ画像の選択処理を行ってもよい。
 また、ループ内フィルタ109において、フィルタ画像選択器204は省略しても良い。第2フィルタが「水平方向」と「垂直方向」の1次元フィルタで構成される場合には、フィルタ画像選択器204を第2フィルタ203に含めることで、「水平方向」の1次元フィルタをかけた後と「垂直方向」の1次元フィルタをかけた後にステップ706~708に示すフィルタ画像選択処理を行う手法が実現できる。また、第2フィルタ画像と入力画像との誤差が最小となる二乗誤差最小フィルタ(Wiener Filter)を算出し、該二乗誤差最小フィルタを第2フィルタ画像に適用するようにフィルタ画像選択器204の処理を変更してもよい。なお、前述した量子化パラメータと同様に、ここで算出された二乗誤差最小フィルタは、符号化して外部へ伝送してもよい。
 図5は、特許文献1に記載された第1フィルタ201の一例を示すブロック図である。第1フィルタ201は、16個の変換器(「第1~第16変換器」という)301-1~301-16と、16個の閾値処理器302-1~302-16と、16個の逆変換器(「第1~第16逆変換器」という)303-1~303-16と、合成器304と、マスク処理器305とを備えている。
 第1フィルタ201にラインL108経由で入力された再生画像は、例えば4×4画素のブロックに分割し、周波数変換される(但し、ブロックサイズは4×4には限定されない)。この際、変換器(第1変換器301-1~第16変換器301-16)は、ブロック境界を縦4画素、横4画素の範囲で1画素ずつずらしながら、再生画像に16回の周波数変換を施し、16組の変換画像を生成する。本実施形態では、区別のため、図1の変換器104と逆変換器107における4×4ブロックを「Cブロック」と呼び、図5の第1フィルタ201における4×4ブロックを「Dブロック」と呼ぶことにする。
 16個の変換画像はそれぞれ、閾値処理器302-1~302-16に入力される。各閾値処理器は、ラインL112経由で入力される付加情報およびラインL113経由で入力される各Cブロックに関する量子化変換係数の情報に基づいて、全てのDブロックの変換係数に対し閾値処理を施し、閾値より小さい変換係数を0値に変更する。つまり、歪みの要因となり得る変換係数を0値にすることにより画像内の歪みを除去する。
 この閾値は、Dブロック毎に異なっており、Cブロックに関わるフィルタモードに基づいて決定される。具体的には、まず、各符号化対象ブロックの予測方法および各Cブロックに関する量子化変換係数の情報を用いて、2つのCブロック間の境界にフィルタモードを設定する。そして、Dブロックが跨ぐCブロック境界のフィルタモードに基づいてDブロックのフィルタモードを決定する。例えば、フィルタモードの優先順位を予め決めておき、Dブロックが複数のCブロック境界を跨ぐ場合、複数のフィルタモードの中から優先順位の最も高いフィルタモードが選択される。
 閾値処理されたDブロックは逆変換器303-1~303-16に出力される。同時に、各Dブロックに属する0係数の数が、ラインL201を経由して属性情報生成器202に出力される。
 逆変換器(逆変換器303-1~303-16)は、閾値処理された16組の変換画像に逆変換を施し、16組の推定画像を生成する。生成された16組の推定画像は、ラインL303を経由して合成器304に出力される。
 合成器304は、16組の推定画像を線形重み付け処理により合成し、第1フィルタ画像を生成する。生成された第1フィルタ画像は、ラインL304経由でマスク処理器305に出力される。なお、線形重み付け処理における重み係数は、各Dブロック内の0係数の数などに基づいて決められる。具体的には、0係数が多いDブロックは、平坦領域に属すると推測されるため、0係数が多いDブロックには大きな重みが与えられる。一方、0係数が少ないDブロックは、エッジを含むと推測されるため、0係数が少ないDブロックには小さな重みが与えられる。この第1フィルタ処理では、ブロック変換の変換効率が平坦領域ほど高いという性質を利用してエッジを抽出し、該エッジをつぶさないようにしつつ、平坦領域のノイズを抑制する。
 マスク処理器305は、過剰なフィルタ処理を避けるため、第1フィルタ画像のCブロック境界に、ラインL108経由で入力された再生画像によるマスク処理を施す。より具体的には、マスク処理器305は、各Cブロック境界について、マスクする画素の範囲を決定し、決定したマスク画素の範囲に基づいて、第1フィルタ画像の画素を、ラインL108経由で入力される再生画像の画素に置き換える。言い換えると、マスク処理にてマスクされていない画素位置の画素については、第1フィルタ画像の画素を、ラインL108経由で入力される再生画像の画素で置き換える。つまり、これらの画素位置の再生画素は、変化せずに第1フィルタを通過する。マスクされた画素の情報は、ラインL201-17を経由して属性情報生成器202に出力される。また、マスク処理した第1フィルタ画像は、ラインL202経由で第2フィルタ203に出力される。
 なお、図示しないが、変換器301-1~301-16、閾値処理器302-1~302-16、逆変換器303-1~303-16、合成器304およびマスク処理器305による上記の処理は、異なる閾値を用いて、繰り返し実施してもよい。
 なお、第2フィルタは、第1フィルタでは飽和して処理できない画素を対象とするため、通常はフィルタのサポート範囲が第1フィルタよりも長くなる。例えば、第1フィルタが、フィルタの適用対象の画素に対し該画素の周囲3画素で囲われる範囲の画素を参照するフィルタである場合、第2フィルタは、フィルタの適用対象の画素に対し、該画素の周囲7画素(即ち、第1フィルタの場合の3画素よりも多い画素数)で囲われる範囲の画素を参照するフィルタとする、という場合が想定される。
 図6には、図4の属性情報生成器202における処理フローを示す。属性情報生成器202では、属性値を決める対象画素を跨ぐ16個のDブロックに属する0係数の数と、属性値を決める対象画素の第1フィルタ201におけるマスク処理結果とが、ラインL201経由で入力される(ステップ902)。
 次に、属性情報生成器202は、第1フィルタ201におけるマスク処理結果から、処理対象の画素がフィルタ処理対象外の画素(即ち、第1フィルタが適用されていない画素、および、マスク処理にてマスクされていない画素)であるか否かを判定する(ステップ903)。処理対象の画素がフィルタ処理対象外の画素である場合にはステップ906に進み、処理対象の画素がフィルタ処理対象外の画素でない(フィルタ処理対象の画素である)場合にはステップ904に進む。
 ステップ904では、属性情報生成器202は、16個のDブロックの各々について、ブロック内の0係数の数が15以上であるか否かを判定する。全てのDブロックにおいてブロック内の0係数の数が15以上である場合にはステップ905に進み、1つ以上のDブロックにおいてブロック内の0係数の数が15未満である場合にはステップ906に進む。
 ステップ905では、処理対象の画素の属性値を「0」として出力し、一方、ステップ906では、処理対象の画素の属性値を「1」として出力する。
 以上、ステップ902~906の処理を、全画素の属性値が決まるまで繰り返し実行する(ステップ907)。
 なお、属性値の決定方法は、上記には限定されない。例えば、Dブロック内の0係数の数は「15個」以上ではなく、他の基準値を用いてもよい。また、上記では、Dブロック内の0係数の数を評価尺度として用いているが、DC係数(直流成分)以外の0係数の数を評価尺度としてもよい。
 また、第1フィルタのマスク処理にてマスクされていない画素は、変化することなく第1フィルタを通過しているため、第2フィルタのフィルタ処理対象にしてもよい。
 別の例としては、第1フィルタを適用しても信号値が変化しない画素から成る領域を抽出して属性値を決定しても良い。具体的には、第1フィルタへの入力画像と第1フィルタからの出力画像について、画素毎に差分を取り、差分の絶対値が規定値より小さい画素(又は、差分が0の画素)については属性値を「0」とし、それ以外は「1」とする例が挙げられる。
 このように、本実施形態のループ内フィルタでは、画像本来のエッジを保ちつつ、エッジ周辺の歪みを第1フィルタにて抑制する。そして、第1フィルタでは変化の小さい領域(第1フィルタでは除去できない歪みを含む可能性がある領域)を示す情報に基づいて、当該領域に対し選択的に第2フィルタを適用するため、エッジが鮮明で残留歪み成分が少ないフィルタ画像を生成することができる。
 ここでは、第1フィルタ処理について、特許文献1に記載の手法を例として説明してきたが、特許文献1に記載の手法には限定されない。例えば、第1フィルタ処理の詳細が不明な場合でも、本実施形態の第2フィルタによる残留歪み信号除去処理は適用可能である。
 1つの例としては、上記で示したように、第1フィルタを適用しても信号値が変化しない画素から成る領域を抽出して属性値を決定しても良い。また別の例としては、フィルタの強さを変えて第1フィルタ処理を2回施し、その差分を取ることで属性値を決定する。例えば、第1フィルタ201は、量子化器105や逆量子化器107で用いられる量子化パラメータQPを考慮した通常通りの第1フィルタ処理を、再生画像に対し実施し、属性情報生成器202は、フィルタの強さを変えた2つのパラメータ(例えば「QP+α」と「QP-α」に対応)でそれぞれ、再生画像に対し第1フィルタ処理を実施する。そして、属性情報生成器202は、2回の第1フィルタ処理で得られた2つのフィルタ画像の差分値を計算し、得られた差分値を、第1フィルタの適用状況を示す第2フィルタ画像の属性値とする。この処理により、フィルタの強さを変えてもフィルタ処理の結果が変わらない画素から成る領域を抽出できる。この領域では、QPが示す量子化レベルで第1フィルタ処理が飽和しており、再生画像の画素がそのまま通過してしまう。つまり、再生画像上に歪が発生していても、第1フィルタ処理では除去できない。このような第1フィルタ処理では除去できない歪が発生しうる領域を抽出することができる。
 (画像加工装置について)
 上述したループ内フィルタ109の処理は、符号化に伴う再生画像に限らず、一般の歪み除去にも適用できる。図2~図6に示した処理から、ラインL112で入力される付加情報およびラインL113経由で入力される各4×4ブロックに関する量子化変換係数の情報を除けば、第1・第2フィルタ処理、属性情報生成処理およびフィルタ画像選択処理は、歪みを除去する一般の画像加工処理にも適用できる。このとき、付加情報および各4×4ブロックに関する量子化変換係数の情報に代わり、入力信号から得られる情報を利用してもよい。
 (動画像復号装置について)
 図7には、本発明による残留歪み信号除去機能を伴う動画像復号装置500のブロック図を示す。動画像復号装置500は、入力端子501、データ解析器502、逆量子化器503、逆変換器504、加算器505、予測信号生成器506、ループ内フィルタ109、フレームメモリ507、及び、画像出力端子508を備えている。ループ内フィルタ109の機能は、図1のループ内フィルタ109と同じである。
 このような動画像復号装置500について、以下、各構成部の動作を述べる。入力端子501には、各対象ブロックの予測信号の生成に要する付加情報と対象ブロックの残差信号の符号化データとを含むビットストリームが入力される。本実施形態では、図1の動画像符号化装置100により処理して得られたビットストリームが動画像復号装置500に入力される。
 データ解析器502は、入力データ(入力されたビットストリーム)を解析し、残差信号の符号化データ(量子化変換係数)と付加情報とを復号する。また、量子化精度を決める量子化パラメータや、ループ内フィルタで用いる第2フィルタのフィルタ係数およびタップ数が、入力データに含まれている場合には、データ解析器502は、これら情報も復号する。なお、復号方法としては、可変長復号あるいは算術復号などが用いられる。
 復号された残差信号の符号化データ(量子化変換係数)は、ラインL502a経由で逆量子化器503に入力され、逆量子化器503は、量子化パラメータに基づいて量子化変換係数を逆量子化し、復号変換係数を復元してラインL503経由で逆変換器504に出力する。逆変換器504は、入力された復号変換係数を逆変換し残差信号を復元し、ラインL504経由で該残差信号を加算器505に出力する。なお、動画像復号装置500は、逆変換器504と逆量子化器503のいずれか一方が省略された構成であってもよい。
 一方、データ解析器502により復号された付加情報は、ラインL502b経由で予測信号生成器506に出力される。予測信号生成器506は、入力された付加情報に基づき予測信号を生成し、ラインL506経由で予測信号を加算器505に出力するとともに、ラインL112経由で付加情報をループ内フィルタ109に出力する。加算器505は、予測信号と復元された残差信号とを加算することで再生画像を生成し、該再生画像をラインL108経由でループ内フィルタ109に出力するとともに、該再生画像をラインL505経由で画像出力端子508から出力する。
 ループ内フィルタ109は、ラインL112経由で入力される付加情報、および、ラインL113経由で入力される各4×4ブロックに関する量子化変換係数の情報を用いて、再生画像から不要な歪みを取り除く(即ち、フィルタ処理を行う)。フィルタ処理された再生画像は、次の画像を符号化する際の参照画像として使用されるため、ラインL109経由でフレームメモリ507に出力され、フレームメモリ507に格納される。
 以上の処理を、ビットストリームの全データが処理されるまで繰り返す。これにより動画像データが復元される。なお、ループ内フィルタ109による処理内容は、図2~図6を用いて説明済みであるため、ここでは説明を割愛する。
 (動画像符号化方法について)
 図8には、動画像符号化装置100により実行される、残留歪み信号除去機能を伴う動画像符号化処理の流れ図を示す。まず、符号化対象の画像(対象画像)が動画像符号化装置100に入力され、ブロック分割器102が、入力された対象画像を複数の小ブロックに分割する(ステップ852)。
 次に、予測信号生成器111は、各対象ブロックについて、フレームメモリ110に格納された参照画像を用いて、複数の予測方法の中から1つの予測方法を決定し予測信号を生成する。同時に、予測信号生成器111は、この予測信号の生成に要する付加情報を生成する(ステップ853)。各対象ブロックについて予測信号が得られることで、対象画像についての予測画像が得られる。
 差分器103は、対象画像と予測画像との残差画像を生成し(ステップ854)、変換器104は、残差画像の各ブロックを周波数領域の変換係数に変換する(ステップ855)。そして、量子化器105は、量子化精度を決める量子化パラメータに基づいて上記変換係数を量子化し、量子化変換係数を生成する(ステップ856)。
 次に、逆量子化器106は、上記量子化パラメータに基づいて量子化変換係数を逆量子化して復号変換係数を復元し(ステップ857)、逆変換器107が、上記復元された変換係数を逆変換して残差画像を復元(再生)する(ステップ858)。そして、加算器108が、復元された残差画像と、上記予測画像とを加算して再生画像を生成する(ステップ859)。
 次に、ループ内フィルタ109は、上記付加情報および量子化変換係数の情報を用いて、再生画像から不要な歪みを取り除くループ内フィルタ処理を実施する(ステップ860)。そして、ループ内フィルタ処理が実施された再生画像は、次の画像を符号化する際の参照画像として用いるため、フレームメモリ110に出力され格納される(ステップ861)。
 さらに、エントロピー符号化器112は、上記付加情報と量子化変換係数とをエントロピー符号化し、ビットストリームとして出力する(ステップ862)。
 なお、ステップ860におけるループ内フィルタ処理については、図2、図3及び図6を用いて説明済みのため、ここでは説明を割愛する。
 (画像加工方法について)
 上述したループ内フィルタ109の処理は、符号化に伴う再生画像に限らず、一般のノイズ除去にも適用できる。図2、図3及び図6に示した処理から、付加情報ならびに各4×4ブロックに関する量子化変換係数の情報を除けば、残留歪み信号除去機能を含む第1・第2フィルタ処理、属性情報生成処理ならびにフィルタ画像選択処理は、歪みを除去する一般の画像加工方法にも適用できる。付加情報ならびに各4×4ブロックに関する量子化変換係数の代わりに、入力信号から得られる情報を利用してもよい。
 (動画像復号方法について)
 図9には、動画像復号装置500により実行される、残留歪み信号除去機能を伴う動画像復号処理の流れ図を示す。図9のステップ952では、圧縮符号化されたデータが動画像復号装置500に入力され、データ解析器902が、該入力されたデータをエントロピー復号し、量子化変換係数及び付加情報を抽出する。この際、入力されたデータが、量子化パラメータ、ループ内フィルタに用いられるフィルタ係数やフィルタタップ数の情報を含む場合には、これら量子化パラメータ、フィルタ係数やフィルタタップ数の情報も復号される。
 次に、予測信号生成器506は、フレームメモリ507に格納された参照画像を用いて、上記付加情報に基づいて予測画像を生成する(ステップ953)。
 また、逆量子化器503は、抽出された量子化変換係数を量子化パラメータに基づいて逆量子化して復号変換係数を得て(ステップ954)、逆変換器504は、復号変換係数を逆変換して残差画像を復元する(ステップ955)。
 そして、加算器505は、上記予測画像と復元された残差画像とを加算し、再生画像を生成する(ステップ956)。
 次に、ループ内フィルタ109は、上記付加情報および量子化変換係数の情報を用いて、再生画像から不要な歪みを取り除くループ内フィルタ処理を実施する(ステップ957)。そして、ループ内フィルタ処理が実施された再生画像は、次の画像を符号化する際の参照画像として用いるため、フレームメモリ110に出力され格納される(ステップ958)。
 なお、ステップ957におけるループ内フィルタ処理については、図2、図3及び図6を用いて説明済みのため、ここでは説明を割愛する。
 (動画像符号化プログラム、動画像復号プログラム、画像加工プログラムについて)
 動画像符号化装置に係る発明は、コンピュータを動画像符号化装置として機能させるための動画像符号化プログラムに係る発明として捉えることができる。あるいは、本実施形態に係る動画像符号化方法をプログラムとして記録媒体に格納して提供することもできる。また、動画像復号装置に係る発明は、コンピュータを動画像復号装置として機能させるための動画像復号プログラムに係る発明として捉えることができる。あるいは、本実施形態に係る動画像復号方法をプログラムとして記録媒体に格納して提供することもできる。さらに、画像加工装置に係る発明は、コンピュータを画像加工装置として機能させるための画像加工プログラムに係る発明として捉えることができる。あるいは、本実施形態に係る画像加工方法をプログラムとして記録媒体に格納して提供することもできる。
 動画像符号化プログラム、画像加工プログラム及び動画像復号プログラムは、例えば、記録媒体に格納されて提供される。記録媒体としては、フレキシブルディスク、CD-ROM、DVD等の記録媒体、あるいはROM等の記録媒体、あるいは半導体メモリ等が例示される。
 図10には、動画像符号化方法を実行することができる動画像符号化プログラムのモジュールを示す。図10に示すように、動画像符号化プログラムP100は、ブロック分割モジュールP101、予測信号生成モジュールP102、記憶モジュールP103、減算モジュールP104、変換モジュールP105、量子化モジュールP106、逆量子化モジュールP107、逆変換モジュールP108、加算モジュールP109、ループ内フィルタモジュールP110及びエントロピー符号化モジュールP111を備えている。
 上記各モジュールが実行されることにより実現される機能は、上述した図1の動画像符号化装置100の機能と同じである。即ち、機能面において、ブロック分割モジュールP101は図1のブロック分割器102に、予測信号生成モジュールP102は予測信号生成器111に、記憶モジュールP103はフレームメモリ110に、減算モジュールP104は差分器103に、変換モジュールP105は変換器104に、量子化モジュールP106は量子化器105に、逆量子化モジュールP107は逆量子化器106に、逆変換モジュールP108は逆変換器107に、加算モジュールP109は加算器108に、ループ内フィルタモジュールP110はループ内フィルタ109に、エントロピー符号化モジュールP111はエントロピー符号化器112に、それぞれ相当する。
 図10のループ内フィルタモジュールP110は、1つのプログラムとして捉えることができ、図11に示すループ内フィルタプログラムP110として表すことができる。このループ内フィルタプログラムP110は、第1フィルタモジュールP131、属性情報生成モジュールP132、第2フィルタモジュールP133、およびフィルタ画像選択モジュールP134を備えている。
 上記各モジュールが実行されることにより実現される機能は、上述した図4のループ内フィルタ109の機能と同じである。即ち、機能面において、第1フィルタモジュールP131は図4の第1フィルタ201に、属性情報生成モジュールP132は属性情報生成器202に、第2フィルタモジュールP133は第2フィルタ203に、フィルタ画像選択モジュールP134はフィルタ画像選択器204に、それぞれ相当する。上記のループ内フィルタプログラムP110は、本発明に係る画像加工プログラムに相当する。
 図12には、動画像復号方法を実行することができる動画像復号プログラムのモジュールを示す。図12に示すように、動画像復号プログラムP500は、データ解析モジュールP501、予測信号生成モジュールP502、記憶モジュールP503、逆量子化モジュールP504、逆変換モジュールP505、加算モジュールP506、及びループ内フィルタモジュールP507を備えている。
 上記各モジュールが実行されることにより実現される機能は、上述した図7の動画像復号装置500の機能と同じである。即ち、機能面において、データ解析モジュールP501は図7のデータ解析器502に、予測信号生成モジュールP502は予測信号生成器506に、記憶モジュールP503はフレームメモリ507に、逆量子化モジュールP504は逆量子化器503に、逆変換モジュールP505は逆変換器504に、加算モジュールP506は加算器505に、ループ内フィルタモジュールP507はループ内フィルタ109に、それぞれ相当する。
 上記のように構成された動画像符号化プログラムP100、動画像復号プログラムP500およびループ内フィルタプログラム(画像加工プログラム)P110は、図13に示す記録媒体10に記憶され、後述するコンピュータ30により実行される。
 図13は、記録媒体10に記録されたプログラムを実行するためのコンピュータ30のハードウェア構成を示し、図14は上記コンピュータ30の斜視図を示す。ここでのコンピュータ30としては、CPUを具備しソフトウエアによる処理や制御を行うDVDプレーヤ、セットトップボックス、携帯電話なども含む。
 図13に示すように、コンピュータ30は、フレキシブルディスクドライブ装置、CD-ROMドライブ装置、DVDドライブ装置等の読み取り装置12と、オペレーティングシステムを常駐させた作業用メモリ(RAM)14と、記録媒体10に記憶されたプログラムを記憶する不揮発性のメモリ16と、ディスプレイ18と、入力装置であるマウス20及びキーボード22と、データ等の送受信を行うための通信装置24と、プログラムの実行を制御するCPU26と、を備えている。記録媒体10が読み取り装置12に挿入されると、コンピュータ30は、記録媒体10に格納された動画像符号化プログラム、画像加工プログラム及び動画像復号プログラムにアクセス可能になる。コンピュータ30は、動画像符号化プログラムによって、本発明に係る動画像符号化装置として動作することが可能になり、画像加工プログラムによって、本発明に係る画像加工装置として動作することが可能になり、動画像復号プログラムによって、本発明に係る動画像復号装置として動作することが可能になる。
 図14に示すように、動画像符号化プログラム、画像加工プログラム及び動画像復号プログラムは、搬送波に重畳されたコンピュータデータ信号40として、有線ネットワーク・無線ネットワークを介して提供されるものであってもよい。この場合、コンピュータ30は、図13の通信装置24によって受信した動画像符号化プログラム、画像加工プログラム及び動画像復号プログラムをメモリ16に格納し、CPU26によって当該動画像符号化プログラム、画像加工プログラム及び動画像復号プログラムを実行することができる。
 なお、本発明は、上述した残留歪み信号機能を伴う動画像符号化装置100(図1)と、上述した残留歪み信号機能を伴う動画像復号装置500(図7)と、を含んで構成される符号化・復号システムに係る発明として、捉えることができる。図15に示すように、符号化・復号システム1は、動画像符号化装置100と動画像復号装置500とを含んで構成される。但し、動画像符号化装置100と動画像復号装置500とは、任意の通信手段により接続可能とされており、動画像符号化装置100から動画像復号装置500へビットストリームが伝送される。
 また、本発明は、符号化・復号システムにおいて実行される符号化・復号方法に係る発明として、捉えることができる。即ち、本発明に係る符号化・復号方法は、動画像符号化装置100により実行される前述した動画像符号化方法の処理ステップ(図8)と、動画像復号装置500により実行される前述した動画像復号方法の処理ステップ(図9)と、を備える。
 以上説明した本実施形態によれば、画像本来のエッジを保ちつつ、フィルタ画像に残留する歪み信号を軽減できるという効果が得られる。
 1…符号化・復号システム、10…記録媒体、12…読み取り装置、14…作業用メモリ、16…メモリ、18…ディスプレイ、20…マウス、22…キーボード、24…通信装置、30…コンピュータ、40…コンピュータデータ信号、100…動画像符号化装置、500…動画像復号装置、101、501…入力端子、102…ブロック分割器、103…差分器、104、301…変換器、105…量子化器、106、503…逆量子化器、107、303、504…逆変換器、108…加算器、109…ループ内フィルタ、110、507…フレームメモリ、111、506…予測信号生成器、112…エントロピー符号化器、201…第1フィルタ、202…属性情報生成器、203…第2フィルタ、204…フィルタ画像選択器、302…閾値処理器、304…合成器、305…マスク処理器、113、508…出力端子、502…データ解析器。

Claims (20)

  1.  入力された対象画像に第1フィルタを適用して第1フィルタ画像を生成する第1フィルタ手段と、
     前記第1フィルタ手段により生成された前記第1フィルタ画像の各画素について、当該画素に第2フィルタを適用するか否かを示す属性値を生成する属性情報生成手段と、
     前記属性情報生成手段により生成された前記第1フィルタ画像の各画素についての前記属性値に基づいて選択される前記第1フィルタ画像の対象画素に、前記第2フィルタを適用して第2フィルタ画像を生成する第2フィルタ手段と、
     を備えることを特徴とする画像加工装置。
  2.  前記第1フィルタ画像と前記第2フィルタ画像とを比較し各画素の差分値を求め、前記差分値が予め定めた閾値以上の画素については前記第1フィルタ画像の画素を選択して出力し、前記差分値が前記閾値より小さい画素については前記第2フィルタ画像の画素を選択して出力するフィルタ画像選択手段、
     をさらに備えることを特徴とする請求項1に記載の画像加工装置。
  3.  前記第2フィルタ手段は、
     前記第1フィルタ画像の前記対象画素についての前記属性値と該対象画素に隣接する所定数の画素についての前記属性値とから算出される値が所定の値より大きい場合、生成される前記第2フィルタ画像の画素として、前記第1フィルタ画像の前記対象画素を選択する、
     ことを特徴とする請求項1に記載の画像加工装置。
  4.  前記第2フィルタは、1次元のフィルタであり、
     前記第2フィルタ手段は、前記第2フィルタを、前記第1フィルタ画像の対象画素に対し、水平方向および垂直方向のうち一方の方向に適用した後、さらに、前記第2フィルタを他方の方向に適用する、
     ことを特徴とする請求項1に記載の画像加工装置。
  5.  前記第2のフィルタは、
    [1,1,1,1,1,1,1,2,1,1,1,1,1,1,1]/16
    で示される15タップを有し、
     前記第2フィルタ手段は、前記対象画素および該対象画素の左右に隣接する7画素ずつの計15画素、又は、前記対象画素および該対象画素の上下に隣接する7画素ずつの計15画素を参照して、前記対象画素に前記第2のフィルタを適用する、
     ことを特徴とする請求項4に記載の画像加工装置。
  6.  前記第1フィルタが適用対象の画素の周囲M画素で囲われる範囲の画素を参照するフィルタである場合、前記第2フィルタは、適用対象の画素の周囲における、前記M画素よりも多いL画素で囲われる範囲の画素を参照するフィルタにより構成される、
     ことを特徴とする請求項1に記載の画像加工装置。
  7.  画像加工装置により実行される画像加工方法であって、
     入力された対象画像に第1フィルタを適用して第1フィルタ画像を生成する第1フィルタステップと、
     前記第1フィルタステップにより生成された前記第1フィルタ画像の各画素について、当該画素に第2フィルタを適用するか否かを示す属性値を生成する属性情報生成ステップと、
     前記属性情報生成ステップにより生成された前記第1フィルタ画像の各画素についての前記属性値に基づいて選択される前記第1フィルタ画像の対象画素に、前記第2フィルタを適用して第2フィルタ画像を生成する第2フィルタステップと、
     を備えることを特徴とする画像加工方法。
  8.  前記第1フィルタ画像と前記第2フィルタ画像とを比較し各画素の差分値を求め、前記差分値が予め定めた閾値以上の画素については前記第1フィルタ画像の画素を選択して出力し、前記差分値が前記閾値より小さい画素については前記第2フィルタ画像の画素を選択して出力するフィルタ画像選択ステップ、
     をさらに備えることを特徴とする請求項7に記載の画像加工方法。
  9.  画像加工装置に設けられたコンピュータを、
     入力された対象画像に第1フィルタを適用して第1フィルタ画像を生成する第1フィルタ手段と、
     前記第1フィルタ手段により生成された前記第1フィルタ画像の各画素について、当該画素に第2フィルタを適用するか否かを示す属性値を生成する属性情報生成手段と、
     前記属性情報生成手段により生成された前記第1フィルタ画像の各画素についての前記属性値に基づいて選択される前記第1フィルタ画像の対象画素に、前記第2フィルタを適用して第2フィルタ画像を生成する第2フィルタ手段、
     として機能させるための画像加工プログラム。
  10.  前記コンピュータを、さらに、
     前記第1フィルタ画像と前記第2フィルタ画像とを比較し各画素の差分値を求め、前記差分値が予め定めた閾値以上の画素については前記第1フィルタ画像の画素を選択して出力し、前記差分値が前記閾値より小さい画素については前記第2フィルタ画像の画素を選択して出力するフィルタ画像選択手段、
     として機能させるための請求項9に記載の画像加工プログラム。
  11.  入力された符号化対象となる画像を複数のブロックに分割するブロック分割器と、
     符号化対象となる対象ブロックについて、予測信号、および少なくとも予測方法に関する情報を含む付加情報を生成する予測信号生成器と、
     前記対象ブロックの信号から前記生成された予測信号を引き算することにより、残差信号を生成する差分器と、
     前記対象ブロックの前記残差信号を周波数領域の変換係数に変換する変換器と、
     前記変換係数を量子化処理により圧縮し量子化変換係数を得る量子化器と、
     前記量子化変換係数を逆量子化することで復号変換係数を復元する逆量子化器と、
     前記復号変換係数を逆変換することで残差信号を再生する逆変換器と、
     前記逆変換器により再生された前記残差信号と、前記予測信号とを加算することにより再生画像を復元する加算器と、
     請求項1に記載の画像加工装置を含んで構成され、前記付加情報および前記量子化変換係数の情報を用いて、前記再生画像から不要な歪みを取り除くフィルタ処理を行うループ内フィルタと、
     フィルタ処理後の前記再生画像を格納するフレームメモリと、
     前記量子化変換係数の情報および前記付加情報をエントロピー符号化し、ビットストリームとして出力するエントロピー符号化器と、
     を備える動画像符号化装置。
  12.  動画像符号化装置により実行される動画像符号化方法であって、
     入力された符号化対象となる画像を複数のブロックに分割するステップと、
     符号化対象となる対象ブロックについて、予測信号、および少なくとも予測方法に関する情報を含む付加情報を生成するステップと、
     前記対象ブロックの信号から前記生成された予測信号を引き算することにより、残差信号を生成するステップと、
     前記対象ブロックの前記残差信号を周波数領域の変換係数に変換するステップと、
     前記変換係数を量子化処理により圧縮し量子化変換係数を得るステップと、
     前記量子化変換係数を逆量子化することで復号変換係数を復元するステップと、
     前記復号変換係数を逆変換することで残差信号を再生するステップと、
     前記逆変換器により再生された前記残差信号と、前記予測信号とを加算することにより再生画像を復元するステップと、
     請求項1に記載の画像加工装置を含んで構成されたループ内フィルタの動作を行うステップであって、前記付加情報および前記量子化変換係数の情報を用いて、前記再生画像から不要な歪みを取り除くフィルタ処理を行う当該ステップと、
     フィルタ処理後の前記再生画像を格納するステップと、
     前記量子化変換係数の情報および前記付加情報をエントロピー符号化し、ビットストリームとして出力するステップと、
     を備える動画像符号化方法。
  13.  動画像符号化装置に設けられたコンピュータを、
     入力された符号化対象となる画像を複数のブロックに分割するブロック分割器と、
     符号化対象となる対象ブロックについて、予測信号、および少なくとも予測方法に関する情報を含む付加情報を生成する予測信号生成器と、
     前記対象ブロックの信号から前記生成された予測信号を引き算することにより、残差信号を生成する差分器と、
     前記対象ブロックの前記残差信号を周波数領域の変換係数に変換する変換器と、
     前記変換係数を量子化処理により圧縮し量子化変換係数を得る量子化器と、
     前記量子化変換係数を逆量子化することで復号変換係数を復元する逆量子化器と、
     前記復号変換係数を逆変換することで残差信号を再生する逆変換器と、
     前記逆変換器により再生された前記残差信号と、前記予測信号とを加算することにより再生画像を復元する加算器と、
     請求項1に記載の画像加工装置を含んで構成され、前記付加情報および前記量子化変換係数の情報を用いて、前記再生画像から不要な歪みを取り除くフィルタ処理を行うループ内フィルタと、
     フィルタ処理後の前記再生画像を格納するフレームメモリと、
     前記量子化変換係数の情報および前記付加情報をエントロピー符号化し、ビットストリームとして出力するエントロピー符号化器、
     として機能させるための動画像符号化プログラム。
  14.  残差信号の量子化変換係数と少なくとも予測方法に関する情報を含む付加情報とをエントロピー符号化して得られたビットストリームが入力され、前記ビットストリームをエントロピー復号し、前記量子化変換係数と前記付加情報とを得るデータ解析器と、
     前記付加情報に基づいて予測信号を生成する予測信号生成器と、
     前記量子化変換係数を逆量子化し、復号変換係数を得る逆量子化器と、
     前記復号変換係数を逆変換し、残差信号を復元する逆変換器と、
     前記予測信号と前記残差信号とを加算することで再生画像を生成する加算器と、
     請求項1に記載の画像加工装置を含んで構成され、前記付加情報および前記量子化変換係数の情報を用いて、前記再生画像から不要な歪みを取り除くフィルタ処理を行うループ内フィルタと、
     フィルタ処理後の前記再生画像を格納するフレームメモリと、
     を備える動画像復号装置。
  15.  残差信号の量子化変換係数と少なくとも予測方法に関する情報を含む付加情報とをエントロピー符号化して得られたビットストリームが入力され、前記ビットストリームをエントロピー復号し、前記量子化変換係数と前記付加情報とを得るデータ解析器と、
     前記付加情報に基づいて予測信号を生成する予測信号生成器と、
     前記量子化変換係数を逆量子化し、復号変換係数を得る逆量子化器と、
     前記復号変換係数を逆変換し、残差信号を復元する逆変換器と、
     前記予測信号と前記残差信号とを加算することで再生画像を生成する加算器と、
     請求項2に記載の画像加工装置を含んで構成され、前記付加情報および前記量子化変換係数の情報を用いて、前記再生画像から不要な歪みを取り除くフィルタ処理を行うループ内フィルタと、
     フィルタ処理後の前記再生画像を格納するフレームメモリと、
     を備える動画像復号装置。
  16.  動画像復号装置により実行される動画像復号方法であって、
     残差信号の量子化変換係数と少なくとも予測方法に関する情報を含む付加情報とをエントロピー符号化して得られたビットストリームが入力され、前記ビットストリームをエントロピー復号し、前記量子化変換係数と前記付加情報とを得るステップと、
     前記付加情報に基づいて予測信号を生成するステップと、
     前記量子化変換係数を逆量子化し、復号変換係数を得るステップと、
     前記復号変換係数を逆変換し、残差信号を復元するステップと、
     前記予測信号と前記残差信号とを加算することで再生画像を生成するステップと、
     請求項1に記載の画像加工装置を含んで構成されたループ内フィルタの動作を行うステップであって、前記付加情報および前記量子化変換係数の情報を用いて、前記再生画像から不要な歪みを取り除くフィルタ処理を行う当該ステップと、
     フィルタ処理後の前記再生画像を格納するステップと、
     を備える動画像復号方法。
  17.  動画像復号装置により実行される動画像復号方法であって、
     残差信号の量子化変換係数と少なくとも予測方法に関する情報を含む付加情報とをエントロピー符号化して得られたビットストリームが入力され、前記ビットストリームをエントロピー復号し、前記量子化変換係数と前記付加情報とを得るステップと、
     前記付加情報に基づいて予測信号を生成するステップと、
     前記量子化変換係数を逆量子化し、復号変換係数を得るステップと、
     前記復号変換係数を逆変換し、残差信号を復元するステップと、
     前記予測信号と前記残差信号とを加算することで再生画像を生成するステップと、
     請求項2に記載の画像加工装置を含んで構成されたループ内フィルタの動作を行うステップであって、前記付加情報および前記量子化変換係数の情報を用いて、前記再生画像から不要な歪みを取り除くフィルタ処理を行う当該ステップと、
     フィルタ処理後の前記再生画像を格納するステップと、
     を備える動画像復号方法。
  18.  動画像復号装置に設けられたコンピュータを、
     残差信号の量子化変換係数と少なくとも予測方法に関する情報を含む付加情報とをエントロピー符号化して得られたビットストリームが入力され、前記ビットストリームをエントロピー復号し、前記量子化変換係数と前記付加情報とを得るデータ解析器と、
     前記付加情報に基づいて予測信号を生成する予測信号生成器と、
     前記量子化変換係数を逆量子化し、復号変換係数を得る逆量子化器と、
     前記復号変換係数を逆変換し、残差信号を復元する逆変換器と、
     前記予測信号と前記残差信号とを加算することで再生画像を生成する加算器と、
     請求項1に記載の画像加工装置を含んで構成され、前記付加情報および前記量子化変換係数の情報を用いて、前記再生画像から不要な歪みを取り除くフィルタ処理を行うループ内フィルタと、
     フィルタ処理後の前記再生画像を格納するフレームメモリ、
     として機能させるための動画像復号プログラム。
  19.  動画像符号化装置と、動画像復号装置と、を含んで構成される符号化・復号システムであって、
     前記動画像符号化装置は、
     入力された符号化対象となる画像を複数のブロックに分割するブロック分割器と、
     符号化対象となる対象ブロックについて、予測信号、および少なくとも予測方法に関する情報を含む付加情報を生成する予測信号生成器と、
     前記対象ブロックの信号から前記生成された予測信号を引き算することにより、残差信号を生成する差分器と、
     前記対象ブロックの前記残差信号を周波数領域の変換係数に変換する変換器と、
     前記変換係数を量子化処理により圧縮し量子化変換係数を得る量子化器と、
     前記量子化変換係数を逆量子化することで復号変換係数を復元する逆量子化器と、
     前記復号変換係数を逆変換することで残差信号を再生する逆変換器と、
     前記逆変換器により再生された前記残差信号と、前記予測信号とを加算することにより再生画像を復元する加算器と、
     請求項1に記載の画像加工装置を含んで構成され、前記付加情報および前記量子化変換係数の情報を用いて、前記再生画像から不要な歪みを取り除くフィルタ処理を行うループ内フィルタと、
     フィルタ処理後の前記再生画像を格納するフレームメモリと、
     前記量子化変換係数の情報および前記付加情報をエントロピー符号化し、ビットストリームとして出力するエントロピー符号化器と、
     を備え、
     前記動画像復号装置は、
     残差信号の量子化変換係数と少なくとも予測方法に関する情報を含む付加情報とをエントロピー符号化して得られたビットストリームが入力され、前記ビットストリームをエントロピー復号し、前記量子化変換係数と前記付加情報とを得るデータ解析器と、
     前記付加情報に基づいて予測信号を生成する予測信号生成器と、
     前記量子化変換係数を逆量子化し、復号変換係数を得る逆量子化器と、
     前記復号変換係数を逆変換し、残差信号を復元する逆変換器と、
     前記予測信号と前記残差信号とを加算することで再生画像を生成する加算器と、
     請求項1に記載の画像加工装置を含んで構成され、前記付加情報および前記量子化変換係数の情報を用いて、前記再生画像から不要な歪みを取り除くフィルタ処理を行うループ内フィルタと、
     フィルタ処理後の前記再生画像を格納するフレームメモリと、
     を備える、
     ことを特徴とする符号化・復号システム。
  20.  動画像符号化装置と動画像復号装置とを含んで構成される符号化・復号システムにおいて実行される符号化・復号方法であって、
     前記動画像符号化装置により実行される動画像符号化方法の処理ステップと、
     前記動画像復号装置により実行される動画像復号方法の処理ステップと、
     を備え、
     前記動画像符号化方法の処理ステップは、
     入力された符号化対象となる画像を複数のブロックに分割するステップと、
     符号化対象となる対象ブロックについて、予測信号、および少なくとも予測方法に関する情報を含む付加情報を生成するステップと、
     前記対象ブロックの信号から前記生成された予測信号を引き算することにより、残差信号を生成するステップと、
     前記対象ブロックの前記残差信号を周波数領域の変換係数に変換するステップと、
     前記変換係数を量子化処理により圧縮し量子化変換係数を得るステップと、
     前記量子化変換係数を逆量子化することで復号変換係数を復元するステップと、
     前記復号変換係数を逆変換することで残差信号を再生するステップと、
     前記逆変換器により再生された前記残差信号と、前記予測信号とを加算することにより再生画像を復元するステップと、
     請求項1に記載の画像加工装置を含んで構成されたループ内フィルタの動作を行うステップであって、前記付加情報および前記量子化変換係数の情報を用いて、前記再生画像から不要な歪みを取り除くフィルタ処理を行う当該ステップと、
     フィルタ処理後の前記再生画像を格納するステップと、
     前記量子化変換係数の情報および前記付加情報をエントロピー符号化し、ビットストリームとして出力するステップと、
     を含み、
     前記動画像復号方法の処理ステップは、
     残差信号の量子化変換係数と少なくとも予測方法に関する情報を含む付加情報とをエントロピー符号化して得られたビットストリームが入力され、前記ビットストリームをエントロピー復号し、前記量子化変換係数と前記付加情報とを得るステップと、
     前記付加情報に基づいて予測信号を生成するステップと、
     前記量子化変換係数を逆量子化し、復号変換係数を得るステップと、
     前記復号変換係数を逆変換し、残差信号を復元するステップと、
     前記予測信号と前記残差信号とを加算することで再生画像を生成するステップと、
     請求項1に記載の画像加工装置を含んで構成されたループ内フィルタの動作を行うステップであって、前記付加情報および前記量子化変換係数の情報を用いて、前記再生画像から不要な歪みを取り除くフィルタ処理を行う当該ステップと、
     フィルタ処理後の前記再生画像を格納するステップと、
     を含む、
     ことを特徴とする符号化・復号方法。
PCT/JP2009/065852 2008-10-07 2009-09-10 画像加工装置、方法及びプログラム、動画像符号化装置、方法及びプログラム、動画像復号装置、方法及びプログラム、並びに、符号化・復号システム及び方法 WO2010041534A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2010532866A JP5542680B2 (ja) 2008-10-07 2009-09-10 画像加工装置、方法及びプログラム、動画像符号化装置、方法及びプログラム、動画像復号装置、方法及びプログラム、並びに、符号化・復号システム及び方法
CN200980133321.6A CN102132566B (zh) 2008-10-07 2009-09-10 图像加工装置及方法、动态图像编码装置及方法、动态图像解码装置及方法、以及编码解码系统和方法
EP09819070A EP2346256A4 (en) 2008-10-07 2009-09-10 IMAGE PROCESSING DEVICE, PROCESS AND PROGRAM, DYNAMIC IMAGE CODING DEVICE, METHOD AND PROGRAM, DYNAMIC IMAGE DECODING DEVICE, METHOD AND PROGRAM AND CODING / DECODING SYSTEM AND METHOD
US13/081,326 US9167271B2 (en) 2008-10-07 2011-04-06 Image processing device, method, and program, dynamic image encoding device, method, and program, dynamic image decoding device, method, and program, and encoding/decoding system and method

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2008-260717 2008-10-07
JP2008260717 2008-10-07

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US13/081,326 Continuation US9167271B2 (en) 2008-10-07 2011-04-06 Image processing device, method, and program, dynamic image encoding device, method, and program, dynamic image decoding device, method, and program, and encoding/decoding system and method

Publications (1)

Publication Number Publication Date
WO2010041534A1 true WO2010041534A1 (ja) 2010-04-15

Family

ID=42100489

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2009/065852 WO2010041534A1 (ja) 2008-10-07 2009-09-10 画像加工装置、方法及びプログラム、動画像符号化装置、方法及びプログラム、動画像復号装置、方法及びプログラム、並びに、符号化・復号システム及び方法

Country Status (6)

Country Link
US (1) US9167271B2 (ja)
EP (1) EP2346256A4 (ja)
JP (1) JP5542680B2 (ja)
CN (1) CN102132566B (ja)
TW (1) TWI521947B (ja)
WO (1) WO2010041534A1 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012093491A1 (ja) * 2011-01-07 2012-07-12 株式会社 東芝 動画像符号化方法及び装置、動画像復号化方法及び装置
JP2014506065A (ja) * 2011-01-05 2014-03-06 クゥアルコム・インコーポレイテッド 1次元スイッチ式フィルタと1次元適応フィルタとの組合せを使用したビデオフィルタリング
WO2017154762A1 (ja) * 2016-03-10 2017-09-14 日本電気株式会社 画像処理装置、画像処理方法及びプログラム記録媒体

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101462052B1 (ko) * 2011-11-09 2014-11-20 에스케이 텔레콤주식회사 변환을 이용한 주파수 도메인 상의 적응적 루프 필터를 이용한 영상 부호화/복호화 방법 및 장치
PL3515078T3 (pl) * 2012-04-13 2021-05-17 Jvckenwood Corporation Urządzenie do dekodowania obrazu, sposób dekodowania obrazu, program do dekodowania obrazu, urządzenie do kodowania obrazu, sposób kodowania obrazu i program do kodowania obrazu
TWI586150B (zh) * 2012-06-29 2017-06-01 新力股份有限公司 影像處理裝置及非暫態電腦可讀儲存媒體
US10102613B2 (en) * 2014-09-25 2018-10-16 Google Llc Frequency-domain denoising
KR20190107944A (ko) * 2018-03-13 2019-09-23 삼성전자주식회사 복원 영상에 대한 필터링을 수행하는 영상 처리 장치 및 이의 필터링 방법
CN112789862A (zh) * 2018-10-02 2021-05-11 瑞典爱立信有限公司 使用图块上进行的循环以信号传送的图片图块属性
WO2021025165A1 (en) 2019-08-08 2021-02-11 Panasonic Intellectual Property Corporation Of America System and method for video coding
KR20220038670A (ko) 2019-08-08 2022-03-29 파나소닉 인텔렉츄얼 프로퍼티 코포레이션 오브 아메리카 비디오 코딩을 위한 시스템 및 방법
WO2021049593A1 (en) 2019-09-11 2021-03-18 Panasonic Intellectual Property Corporation Of America System and method for video coding
CN114401410B (zh) * 2021-12-29 2023-06-27 中星电子股份有限公司 非线性滤波信息处理方法、装置、电子设备和可读介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0257067A (ja) * 1988-08-23 1990-02-26 Nippon Telegr & Teleph Corp <Ntt> 画像符号化処理方法
JP2002344968A (ja) * 2001-05-14 2002-11-29 Matsushita Electric Ind Co Ltd ブロック歪み除去装置
US20060153301A1 (en) 2005-01-13 2006-07-13 Docomo Communications Laboratories Usa, Inc. Nonlinear, in-the-loop, denoising filter for quantization noise removal for hybrid video compression
WO2007026274A2 (en) * 2005-08-29 2007-03-08 Koninklijke Philips Electronics N.V. Apparatus for filtering an image obtained by block based image decompression
JP2007166522A (ja) * 2005-12-16 2007-06-28 Toshiba Corp 復号化装置及び復号化方法及びプログラム

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5367385A (en) * 1992-05-07 1994-11-22 Picturetel Corporation Method and apparatus for processing block coded image data to reduce boundary artifacts between adjacent image blocks
JP3495766B2 (ja) * 1993-10-01 2004-02-09 テキサス インスツルメンツ インコーポレイテツド 画像処理方法
US6134518A (en) * 1997-03-04 2000-10-17 International Business Machines Corporation Digital audio signal coding using a CELP coder and a transform coder
US6539120B1 (en) * 1997-03-12 2003-03-25 Matsushita Electric Industrial Co., Ltd. MPEG decoder providing multiple standard output signals
JP4186242B2 (ja) * 1997-12-26 2008-11-26 ソニー株式会社 画像信号処理装置及び画像信号処理方法
EP1164799A1 (en) * 2000-06-16 2001-12-19 Sony International (Europe) GmbH Method for processing compressed image data for reducing blocking artefacts
US7929610B2 (en) * 2001-03-26 2011-04-19 Sharp Kabushiki Kaisha Methods and systems for reducing blocking artifacts with reduced complexity for spatially-scalable video coding
JP4635779B2 (ja) * 2005-08-18 2011-02-23 ソニー株式会社 データ処理装置およびデータ処理方法、並びにプログラム
US7496240B2 (en) * 2005-08-24 2009-02-24 Brother Kogyo Kabushiki Kaisha Image denoising apparatus and method
JP2007174196A (ja) * 2005-12-21 2007-07-05 Toshiba Corp 情報処理装置、制御方法およびプログラム
BRPI0717936B1 (pt) * 2006-11-08 2020-09-29 Interdigital Vc Holdings, Inc. Método e aparelhos para a filtragem de remoção de artefato em laço
US8111760B2 (en) * 2006-11-16 2012-02-07 Texas Instruments Incorporated Deblocking filters
US7899267B2 (en) * 2007-05-23 2011-03-01 Zoran Corporation Dynamic range compensation by filter cascade

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0257067A (ja) * 1988-08-23 1990-02-26 Nippon Telegr & Teleph Corp <Ntt> 画像符号化処理方法
JP2002344968A (ja) * 2001-05-14 2002-11-29 Matsushita Electric Ind Co Ltd ブロック歪み除去装置
US20060153301A1 (en) 2005-01-13 2006-07-13 Docomo Communications Laboratories Usa, Inc. Nonlinear, in-the-loop, denoising filter for quantization noise removal for hybrid video compression
WO2007026274A2 (en) * 2005-08-29 2007-03-08 Koninklijke Philips Electronics N.V. Apparatus for filtering an image obtained by block based image decompression
JP2007166522A (ja) * 2005-12-16 2007-06-28 Toshiba Corp 復号化装置及び復号化方法及びプログラム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP2346256A4 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014506065A (ja) * 2011-01-05 2014-03-06 クゥアルコム・インコーポレイテッド 1次元スイッチ式フィルタと1次元適応フィルタとの組合せを使用したビデオフィルタリング
US9445126B2 (en) 2011-01-05 2016-09-13 Qualcomm Incorporated Video filtering using a combination of one-dimensional switched filter and one-dimensional adaptive filter
WO2012093491A1 (ja) * 2011-01-07 2012-07-12 株式会社 東芝 動画像符号化方法及び装置、動画像復号化方法及び装置
WO2017154762A1 (ja) * 2016-03-10 2017-09-14 日本電気株式会社 画像処理装置、画像処理方法及びプログラム記録媒体
US10997695B2 (en) 2016-03-10 2021-05-04 Nec Corporation Image processing device, image processing method, and recording medium

Also Published As

Publication number Publication date
JPWO2010041534A1 (ja) 2012-03-08
TW201036450A (en) 2010-10-01
EP2346256A1 (en) 2011-07-20
EP2346256A4 (en) 2013-01-02
US9167271B2 (en) 2015-10-20
TWI521947B (zh) 2016-02-11
JP5542680B2 (ja) 2014-07-09
CN102132566A (zh) 2011-07-20
US20110228841A1 (en) 2011-09-22
CN102132566B (zh) 2015-05-20

Similar Documents

Publication Publication Date Title
JP5542680B2 (ja) 画像加工装置、方法及びプログラム、動画像符号化装置、方法及びプログラム、動画像復号装置、方法及びプログラム、並びに、符号化・復号システム及び方法
RU2715017C1 (ru) Устройство кодирования с предсказанием видео, способ кодирования с предсказанием видео, устройство декодирования с предсказанием видео и способ декодирования с предсказанием видео
JP5393573B2 (ja) 動画像予測符号化装置、動画像予測復号装置、動画像予測符号化方法、動画像予測復号方法、動画像予測符号化プログラム、及び動画像予測復号プログラム
EP2755388B1 (en) Method, device, and program for encoding and decoding image
JP5283628B2 (ja) 映像復号方法及び映像符号化方法
WO2010001614A1 (ja) 動画像符号化方法、動画像復号方法、動画像符号化装置、動画像復号装置、プログラム、及び集積回路
KR101663764B1 (ko) 인트라 예측을 이용한 부호화 및 복호화 장치와 방법
WO2009133844A1 (ja) エッジを考慮したフィルタリング機能を備えた動画像符号化/復号化方法及び装置
KR20070096737A (ko) 영상의 부호화 방법 및 장치, 복호화 방법 및 장치
JP2006157481A (ja) 画像符号化装置及びその方法
JPWO2010001999A1 (ja) 動画像符号化/復号化方法及び装置
KR101362755B1 (ko) 센서영상 부호화 및 복호화장치와 그 방법
KR20130051029A (ko) 변환을 이용한 주파수 도메인 상의 적응적 루프 필터를 이용한 영상 부호화/복호화 방법 및 장치
KR100738075B1 (ko) 영상 부호화/복호화 장치 및 방법
KR20180044944A (ko) 계수 유도 예측을 이용하여 비디오 신호를 처리하는 방법 및 장치
KR101713250B1 (ko) 인트라 예측을 이용한 부호화 및 복호화 장치와 방법
JP5627507B2 (ja) 動画像符号化装置、動画像復号装置、動画像符号化方法、動画像復号方法、およびプログラム
JP4762486B2 (ja) マルチ・リゾルーション・ビデオ符号化および復号化
JP2015076765A (ja) 画像処理装置及びその制御方法、並びに、コンピュータプログラム
WO2013145174A1 (ja) 動画像符号化方法、動画像復号方法、動画像符号化装置及び動画像復号装置
JP7343702B2 (ja) デブロッキングフィルタ装置、復号装置、及びプログラム
CN105049846A (zh) 图像和视频编解码的方法和设备
JP2016165054A (ja) 符号化装置、復号装置、及びプログラム
JP5256095B2 (ja) 圧縮画像ノイズ除去装置と再生装置
JP2021150788A (ja) 画像符号化装置、画像符号化方法及びプログラム、画像復号装置、画像復号方法及びプログラム

Legal Events

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

Ref document number: 200980133321.6

Country of ref document: CN

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

Ref document number: 09819070

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2010532866

Country of ref document: JP

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 2009819070

Country of ref document: EP