WO2013108684A1 - 動画像復号装置、動画像符号化装置、動画像復号方法及び動画像符号化方法 - Google Patents

動画像復号装置、動画像符号化装置、動画像復号方法及び動画像符号化方法 Download PDF

Info

Publication number
WO2013108684A1
WO2013108684A1 PCT/JP2013/050207 JP2013050207W WO2013108684A1 WO 2013108684 A1 WO2013108684 A1 WO 2013108684A1 JP 2013050207 W JP2013050207 W JP 2013050207W WO 2013108684 A1 WO2013108684 A1 WO 2013108684A1
Authority
WO
WIPO (PCT)
Prior art keywords
coding
block
prediction
unit
image
Prior art date
Application number
PCT/JP2013/050207
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
Priority to BR112014016291A priority Critical patent/BR112014016291A8/pt
Priority to RU2014133864/07A priority patent/RU2577320C1/ru
Application filed by 三菱電機株式会社 filed Critical 三菱電機株式会社
Priority to MX2014008781A priority patent/MX2014008781A/es
Priority to US14/371,964 priority patent/US20150023420A1/en
Priority to IN4356CHN2014 priority patent/IN2014CN04356A/en
Priority to KR1020197025975A priority patent/KR102113985B1/ko
Priority to KR1020147022930A priority patent/KR101647242B1/ko
Priority to SG11201403454PA priority patent/SG11201403454PA/en
Priority to CA2862805A priority patent/CA2862805C/en
Priority to CN201380005907.0A priority patent/CN104067623A/zh
Priority to JP2013549653A priority patent/JP5551837B2/ja
Priority to KR1020147023477A priority patent/KR20140111039A/ko
Priority to EP13738640.5A priority patent/EP2806639A4/en
Priority to KR1020207025986A priority patent/KR102272564B1/ko
Priority to KR1020187032318A priority patent/KR102021257B1/ko
Priority to KR1020177022964A priority patent/KR102157481B1/ko
Priority to TW106113415A priority patent/TWI608728B/zh
Priority to TW106137752A priority patent/TWI665908B/zh
Priority to TW104117115A priority patent/TWI586148B/zh
Priority to TW102101582A priority patent/TWI489837B/zh
Publication of WO2013108684A1 publication Critical patent/WO2013108684A1/ja
Priority to HK14113102.2A priority patent/HK1199589A1/xx

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/117Filters, e.g. for pre-processing or post-processing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/40Tree coding, e.g. quadtree, octree
    • 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/103Selection of coding mode or of prediction mode
    • H04N19/107Selection of coding mode or of prediction mode between spatial and temporal predictive coding, e.g. picture refresh
    • 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/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • 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/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • 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/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • H04N19/82Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/96Tree coding, e.g. quad-tree coding

Definitions

  • the present invention relates to a moving picture coding apparatus and a moving picture coding method for coding a moving picture with high efficiency, a moving picture decoding apparatus and a moving picture decoding method for decoding a moving picture coded with high efficiency, and It is about
  • MPEG and ITU-T H.264 In the international standard video coding method such as 26x, an input video frame is divided into macro block units consisting of 16 ⁇ 16 pixel blocks, motion compensated prediction is performed, and then the prediction error signal is subjected to orthogonal transform in block units. Information compression is performed by quantization. However, if the compression rate is high, there is a problem that the compression efficiency is disturbed due to the deterioration of the quality of the prediction reference image used in performing the motion compensation prediction. Therefore, MPEG-4 AVC / H. In the H.264 coding method (see Non-Patent Document 1), block distortion of the predicted reference image generated along with the quantization of the orthogonal transformation coefficient is removed by performing the processing of the in-loop blocking filter. There is.
  • a motion vector is searched in units of a macroblock itself or subblocks obtained by further dividing the macroblock. Then, using the motion vector, motion compensated prediction is performed on the reference image signal stored in the memory 107 to generate a motion compensated predicted image, and a prediction signal indicating the motion compensated predicted image and the divided image signal are generated. The prediction error signal is calculated by finding the difference.
  • the prediction unit 102 outputs, to the variable-length coding unit 108, the prediction signal generation parameter determined when obtaining the prediction signal.
  • the prediction signal generation parameters include, for example, information such as an intra prediction mode indicating how to perform spatial prediction in a frame, and a motion vector indicating an amount of motion between frames.
  • the compression unit 103 When receiving the prediction error signal from the prediction unit 102, the compression unit 103 performs DCT (Discrete Cosine Transform) processing on the prediction error signal to remove signal correlation, and then quantizes to obtain compressed data.
  • DCT Discrete Cosine Transform
  • the local decoding unit 104 receives the compressed data from the compression unit 103, the local decoding unit 104 inversely quantizes the compressed data to perform inverse DCT processing, thereby generating a prediction error signal corresponding to the prediction error signal output from the prediction unit 102.
  • the adder 105 adds the prediction error signal and the prediction signal output from the prediction unit 102 to generate a locally decoded image.
  • the loop filter 106 removes block distortion superimposed on the local decoded image signal indicating the local decoded image generated by the adder 105, and stores the local decoded image signal after distortion removal in the memory 107 as a reference image signal. .
  • variable-length coding unit 108 When the variable-length coding unit 108 receives the compressed data from the compression unit 103, the variable-length coding unit 108 entropy codes the compressed data, and outputs a bit stream that is the coding result. When outputting a bitstream, the variable-length coding unit 108 multiplexes the prediction signal generation parameters output from the prediction unit 102 into a bitstream and outputs the multiplexed signal.
  • the loop filter 106 is used to calculate the roughness of the quantization, the coding mode, the degree of variation of the motion vector, etc. with respect to the peripheral pixels of the block boundary of the DCT. Based on the information, the smoothing strength is determined to reduce distortion occurring at block boundaries. This improves the quality of the reference image signal and can increase the efficiency of motion compensated prediction in subsequent encoding.
  • Non-Patent Document 1 the higher the coding ratio is, the more the high frequency components of the signal are lost, and the entire screen is excessively smoothed and the image is blurred. There's a problem.
  • a Wiener filter is applied as a loop filter 106, and an image signal to be encoded, which is an original image signal, and a reference image signal corresponding thereto.
  • a technique is proposed to construct the loop filter 106 such that the squared error distortion of
  • FIG. 22 is an explanatory view showing a principle of quality improvement of a reference image signal by a Wiener filter in the image coding device disclosed in Patent Document 1.
  • the signal s is a signal corresponding to the image signal to be encoded input to the block division unit 101 of FIG. 21, and the signal s' is a locally decoded image output from the adder 105 of FIG. It is a signal or a signal corresponding to a locally decoded image signal in which distortion generated at a block boundary by the loop filter 106 in Non-Patent Document 1 is reduced. That is, the signal s ′ is a signal in which the encoding distortion (noise) e is superimposed on the signal s.
  • the Wiener filter is defined as a filter applied to the signal s 'so as to minimize this coding distortion (noise) e in terms of squared error distortion, and in general, the autocorrelation matrix of the signal s' 'and the signal s, s' R s's by the cross-correlation vector R ss' and can be obtained filter coefficients w from the following equation (1).
  • the magnitudes of the matrices R s's' and R ss' correspond to the number of filter taps to be determined.
  • a signal s hat whose quality has been improved by applying a Wiener filter having a filter coefficient w corresponds to a reference image signal Obtained as In Patent Document 1, frames are classified into regions (classifications) according to motion information and local signal characteristics of images, and an optimal Wiener filter is designed for each class to achieve high image quality according to locality. Accurate distortion compensation is realized.
  • the conventional moving picture coding apparatus is configured as described above, highly accurate distortion compensation can be realized according to the locality of the picture to be coded.
  • classification is performed by a method determined according to the motion information and the local signal characteristics of the image, the effect of the filter processing is largely different depending on the image to be encoded, and the distortion compensation effect by the filter processing is There was a problem that an image that can hardly be seen could occur.
  • the present invention has been made to solve the problems as described above, and a moving picture decoding apparatus, a moving picture coding apparatus, a moving picture decoding method, and a moving picture coding method capable of enhancing the improvement accuracy of image quality.
  • the purpose is to get.
  • the filtering unit classifies each pixel in the decoded image generated by the decoded image generation unit in coded block units of the maximum size using the class classification method.
  • a pixel adaptive offset process is performed in which the offset value of each class is added to the pixel value of a pixel belonging to the class.
  • the filtering means classifies each pixel in the decoded image generated by the decoded image generation means in coded block units of the maximum size using the class classification method, Since the pixel adaptive offset process of adding the offset value to the pixel value of the pixel belonging to the class is performed, the improvement accuracy of the image quality can be improved.
  • (A) shows distribution of the coding block and prediction block after division
  • (b) is explanatory drawing which shows the condition where coding mode m ( Bn ) is allocated by hierarchy division.
  • Is an explanatory diagram showing an example of the prediction block P i n-selectable intra prediction parameter coding block B n (intra prediction mode).
  • the upper left pixels in the prediction block P i n is an explanatory diagram showing a relative coordinate whose origin.
  • FIG. It is explanatory drawing which shows the principle of quality improvement of the reference image signal by a Wiener filter. It is explanatory drawing which shows an example of encoding of the index of the largest encoding block unit in an adaptive filter process or a pixel adaptive offset process.
  • FIG. 1 is a block diagram showing a moving picture coding apparatus according to a first embodiment of the present invention.
  • the block division unit 1 when the block division unit 1 inputs a video signal as an input image, the block division unit 1 divides the input image into the largest coding block which is the coding block of the largest size determined by the coding control unit 2 and performs coding A process of hierarchically dividing the largest encoded block into each encoded block is performed until the upper limit hierarchy number determined by the control unit 2 is reached. That is, the block division unit 1 divides the input image into coding blocks in accordance with the division determined by the coding control unit 2 and carries out a process of outputting the coding blocks.
  • each coding block is divided into one or more prediction blocks as a prediction processing unit.
  • the block division unit 1 constitutes block division means.
  • the coding control unit 2 determines the maximum size of the coding block as a processing unit when the coding process is performed, and sets the upper limit hierarchy number when the coding block of the maximum size is hierarchically divided. The determination is performed to determine the size of each coding block. Further, the coding control unit 2 may select one or more selectable coding modes (one or more intra coding modes different in the size of the prediction block indicating the prediction processing unit, etc., one or more inter codes different in the size of the prediction block) A process of selecting a coding mode to be applied to the coding block output from the block division unit 1 from the coding mode) is performed. As an example of the selection method, there is a method of selecting a coding mode with the highest coding efficiency for the coding block output from the block division unit 1 from one or more selectable coding modes.
  • the coding control unit 2 uses the intra prediction parameter to be used when performing the intra prediction process on the coding block in the intra coding mode. It is determined for each prediction block which is a prediction processing unit indicated by the intra coding mode, and when the coding mode with the highest coding efficiency is the inter coding mode, the inter prediction process for the coding block is performed in the inter coding mode A process of determining an inter prediction parameter to be used in the implementation for each prediction block which is a prediction processing unit indicated by the inter coding mode is performed.
  • the coding control unit 2 carries out a process of determining a prediction differential coding parameter to be given to the transform / quantization unit 7 and the inverse quantization / inverse transform unit 8.
  • Orthogonal transformation block division information indicating division information of an orthogonal transformation block which is a unit of orthogonal transformation processing in a coding block, and a quantum defining a quantization step size at the time of quantization of transformation coefficients in a prediction differential coding parameter Parameters, etc. are included.
  • the coding control unit 2 constitutes coding control means.
  • the changeover switch 3 outputs the coding block output from the block division unit 1 to the intra prediction unit 4, and the coding control unit 2 If the coding mode determined by the above is the inter coding mode, the process of outputting the coding block output from the block division unit 1 to the motion compensation prediction unit 5 is performed.
  • the intra prediction unit 4 When the intra coding mode is selected by the coding control unit 2 as the coding mode corresponding to the coding block output from the changeover switch 3, the intra prediction unit 4 performs prediction processing of the coded block. Intra prediction processing using intra prediction parameters determined by the encoding control unit 2 while referring to the locally decoded image stored in the intra prediction memory 10 for each prediction block which is a prediction processing unit (in-frame prediction Processing is performed to perform processing for generating an intra predicted image.
  • the intra prediction unit 4 and the memory 10 for intra prediction constitute an intra prediction means.
  • the motion compensation prediction unit 5 calculates the coding block and the motion compensation prediction frame memory 12.
  • the motion vector is searched by comparing the locally decoded image of one or more frames stored in the unit with the prediction block unit which is the prediction processing unit, and the motion vector and the reference frame number determined by the encoding control unit 2 Using the inter prediction parameter, the inter prediction process (motion compensation prediction process) on the encoded block is performed on a prediction block basis to generate an inter prediction image.
  • the motion compensation prediction unit is configured of the motion compensation prediction unit 5 and the motion compensation prediction frame memory 12.
  • the subtraction unit 6 subtracts the intra prediction image generated by the intra prediction unit 4 or the inter prediction image generated by the motion compensation prediction unit 5 from the coding block output from the block division unit 1 and subtracts the subtraction. A process of outputting a predicted difference signal indicating a difference image as a result to the conversion / quantization unit 7 is performed.
  • the subtraction unit 6 constitutes a difference image generation unit.
  • the transform / quantization unit 7 refers to the orthogonal transformation block division information included in the prediction difference coding parameter determined by the coding control unit 2 and performs orthogonal transformation processing (eg, for example, on the prediction difference signal output from the subtraction unit 6) Perform orthogonal transform processing such as DCT (Discrete Cosine Transform) or DST (Discrete Sine Transform), or KL transform in which a basic design is made on a specific learning sequence in advance to calculate transform coefficients in units of orthogonal transform blocks And quantizes the transform coefficient of the orthogonal transform block unit with reference to the quantization parameter included in the prediction differential encoding parameter, and dequantizes / compresses the compressed data which is the transform coefficient after quantization. 8 and the variable-length coding unit 13 are processed.
  • the transform / quantization unit 7 constitutes an image compression means.
  • the inverse quantization / inverse transform unit 8 refers to the quantization parameter and the orthogonal transformation block division information included in the prediction differential encoding parameter determined by the encoding control unit 2 and transforms / quantizes the orthogonal transformation block into units.
  • Local quantization prediction corresponding to the prediction difference signal output from the subtraction unit 6 by performing inverse quantization on the transform coefficient which is compression data after inverse quantization and performing inverse quantization on the compressed data output from 7 A process of calculating a difference signal is performed.
  • the adder 9 adds the locally decoded prediction difference signal calculated by the inverse quantization / inverse transformer 8, the intra prediction image generated by the intra prediction unit 4, or the inter prediction image generated by the motion compensation prediction unit 5.
  • a local decoded image generation unit is configured by the inverse quantization / inverse transform unit 8 and the addition unit 9.
  • the intra prediction memory 10 is a recording medium for storing the locally decoded image calculated by the adding unit 9.
  • the loop filter unit 11 performs a predetermined filter process on the locally decoded image calculated by the adding unit 9 and performs a process of outputting the locally decoded image after the filter process.
  • filter deblocking filter
  • processing for reducing distortion generated at boundaries of orthogonal transformation blocks and boundaries of prediction blocks
  • processing for adaptively adding an offset on a pixel basis (pixel adaptive offset) processing Wiener filter, etc.
  • Adaptive filter processing for adaptively switching and filtering a linear filter of
  • the loop filter unit 11 may be configured to perform one of the above-described deblocking filter processing, pixel adaptive offset processing, and adaptive filter processing, as shown in FIG. 10, two or more. Filter processing may be performed.
  • the loop filter unit 11 constitutes filtering means.
  • the pixel adaptive offset process is first defined as one of the class classification methods even in the case where the offset process is not performed in units of the largest coding block, and among a plurality of class classification methods prepared in advance. Choose one classification method. Next, each pixel in the block is classified according to the selected classification method, and an offset value that minimizes the sum of squared error of luminance values between the image to be encoded and the local decoded image is calculated for each class. Finally, the image quality of the locally decoded image is improved by performing processing of adding the offset value to the luminance value of the locally decoded image. Therefore, the pixel adaptive offset processing outputs an index indicating a class classification method in units of largest coding blocks, and an offset value of each class in units of largest coding blocks to the variable-length coding unit 13 as a part of filter parameters.
  • the adaptive filter process performs class classification (group classification) including the case where the filter process is not performed in units of the largest coding block (in the example of FIG. Design a filter that compensates for the distortion that is superimposed for each region (local decoded image) belonging to each class (group) (showing “no processing”), and using that filter, the filter of the local decoded image Perform the process. Then, the number (filter number) of the classes (groups), the filter of the local decoded image belonging to each class (group), and the class number (filter number) which is identification information of the class (group) in the largest coding block unit. It is output to the variable-length coding unit 13 as part of the filter parameter. Note that when performing pixel adaptive offset processing and adaptive filter processing, it is necessary to refer to the video signal by the loop filter unit 11, so that the moving image code of FIG. 1 is input so that the video signal is input to the loop filter unit 11. Needs to be changed.
  • either one of pixel adaptive offset processing and adaptive filter processing may be optimally selected per maximum coding block instead of the form shown in FIG. Good. In this way, highly accurate filter processing can be realized while suppressing the amount of operation of filter processing for each maximum coding block.
  • selection information as to whether pixel adaptive offset processing in units of maximum coding blocks or adaptive filter processing is to be performed is output to the variable-length coding unit 13 as part of filter parameters.
  • the motion compensation prediction frame memory 12 is a recording medium for storing the locally decoded image after the filter processing of the loop filter unit 11.
  • the variable-length coding unit 13 outputs the compressed data output from the transform / quantization unit 7 and the output signal of the coding control unit 2 (block division information in the maximum coding block, coding mode, prediction differential coding parameter, Intra prediction parameter or inter prediction parameter), motion vector (if coding mode is inter coding mode) output from motion compensation prediction unit 5, and filter parameter output from loop filter unit 11 as variable length Perform processing to generate a bitstream by encoding.
  • the variable-length coding unit 13 constructs a variable-length coding unit.
  • the unit 7, the inverse quantization / inverse conversion unit 8, the addition unit 9, the intra prediction memory 10, the loop filter unit 11, the motion compensation prediction frame memory 12, and the variable length coding unit 13 are each dedicated hardware (for example, although it is assumed that a semiconductor integrated circuit mounted with a CPU, a one-chip microcomputer, etc.) is used, but the moving picture coding apparatus is constituted by a computer, the block division unit 1 and coding control Unit 2, selector switch 3, intra prediction unit 4, motion compensation prediction unit 5, subtraction unit 6, transformation / quantization unit 7, inverse quantization / inverse transformation unit 8, addition unit 9, loop filter unit 11, and variable-length code Conversion unit 1
  • the processing contents stored programs describing the the memory of the computer may execute a program that the CPU of the computer is stored in the memory.
  • FIG. 2 is a flowchart showing the
  • FIG. 3 is a block diagram showing a moving picture decoding apparatus in accordance with Embodiment 1 of the present invention.
  • the variable-length decoding unit 31 when the variable-length decoding unit 31 receives a bit stream generated by the moving picture coding apparatus shown in FIG. 1, the variable-length decoding unit 31 shows the division status of each coding block hierarchically divided from the bit stream. Variable length decoding of block division information.
  • the variable-length decoding unit 31 refers to the block division information and hierarchically divides the largest decoded block in units of the largest decoded block (a block corresponding to the "largest coding block" of the moving picture coding apparatus of FIG. A decoded block (a block corresponding to a "coded block" of the moving picture coding apparatus of FIG.
  • variable-length decoding unit 31 constructs a variable-length decoding unit.
  • the inverse quantization / inverse transform unit 32 refers to the quantization parameter and the orthogonal transformation block division information included in the prediction differential encoding parameter that has been variable-length decoded by the variable-length decoding unit 31 and causes the variable-length decoding unit 31 to
  • the decoded data is dequantized in units of orthogonal transform blocks, and inverse orthogonal transform processing is performed on transform coefficients that are compressed data after inverse quantization, and output from the dequantization / inverse transform unit 8 of FIG. 1 A process is performed to calculate the same decoded predicted difference signal as the locally decoded predicted difference signal.
  • the inverse quantization / inverse transform unit 32 constructs a difference image generation unit.
  • the changeover switch 33 outputs the intra prediction parameter variable-length decoded by the variable-length decoding unit 31 to the intra prediction unit 34, If the coding mode variable-length decoded by the variable-length decoding unit 31 is the inter coding mode, processing for outputting the inter prediction parameter and motion vector variable-length decoded by the variable-length decoding unit 31 to the motion compensation unit 35 carry out.
  • the intra prediction unit 34 When the coding mode relating to the decoded block identified from the block division information variable-length decoded by the variable-length decoding unit 31 is the intra coding mode, the intra prediction unit 34 performs prediction when the prediction process of the decoded block is performed. Implements intra prediction processing (intra-frame prediction processing) using the intra prediction parameters output from the changeover switch 33, referring to the decoded image stored in the intra prediction memory 37, for each prediction block which is a processing unit Then, a process of generating an intra prediction image is performed.
  • An intra prediction unit is configured by the intra prediction unit 34 and the intra prediction memory 37.
  • the motion compensation unit 35 performs prediction when the prediction process of the decoded block is performed when the coding mode related to the decoded block identified from the block division information subjected to variable length decoding by the variable length decoding unit 31 is the inter coding mode. Inter prediction processing using a motion vector output from the changeover switch 33 and an inter prediction parameter while referring to the decoded image stored in the motion compensation prediction frame memory 39 for each prediction block which is a processing unit (motion compensation prediction Process) is carried out to generate an inter predicted image.
  • the motion compensation unit 35 and the motion compensation prediction frame memory 39 constitute a motion compensation prediction unit.
  • the addition unit 36 adds the decoded prediction difference signal calculated by the inverse quantization / inverse conversion unit 32, and the intra prediction image generated by the intra prediction unit 34 or the inter prediction image generated by the motion compensation unit 35. Then, a process of calculating the same decoded image as the local decoded image output from the adding unit 9 of FIG. 1 is performed.
  • the addition unit 36 constitutes a decoded image generation unit.
  • the intra prediction memory 37 is a recording medium for storing the decoded image calculated by the adding unit 36.
  • the loop filter unit 38 performs a predetermined filtering process on the decoded image calculated by the adding unit 36 and performs a process of outputting the decoded image after the filter process. Specifically, filter (deblocking filter) processing for reducing distortion generated at boundaries of orthogonal transformation blocks and boundaries of prediction blocks, processing for adaptively adding an offset on a pixel basis (pixel adaptive offset) processing, Wiener filter, etc. Adaptive filter processing for adaptively switching and filtering a linear filter of However, the loop filter unit 38 may be configured to perform one of the above deblocking filter processing, pixel adaptive offset processing, and adaptive filter processing, and as shown in FIG. The filtering process may be performed, but the same filtering process as the filtering process performed by the loop filter unit 11 of the moving picture coding apparatus has to be performed.
  • the loop filter unit 38 constitutes filtering means.
  • the pixel adaptive offset processing refers to the index indicating the class classification method of the largest decoding block unit included in the filter parameter that is variable-length decoded by the variable-length decoding unit 31, and the index “does not perform offset processing”. If it is not an index indicating that, each pixel in the block is classified into the largest decoded block unit.
  • the image quality of the decoded image is improved by performing processing of adding the offset value for each class included in the filter parameter that has been variable-length decoded by the variable-length decoding unit 31 to the luminance value of the pixels belonging to the class Do.
  • the number of filter parameters (class (group) number (filter number) number variable-length decoded by the variable-length decoding unit 31, the filter of the locally decoded image belonging to each class (group) If the class (group) indicated by the class number is not a class (group) indicating "do not perform offset processing" by referring to the class number (filter number) which is identification information of (group), The corresponding filter is used to filter the decoded image belonging to the class (group).
  • the motion compensation prediction frame memory 39 is a recording medium for storing the decoded image after the filter processing of the loop filter unit 38.
  • either one of pixel adaptive offset processing or adaptive filter processing is optimum for each maximum coding block.
  • the loop filter unit 11 of the video encoding device is configured to select, pixel adaptive offset processing is performed on the basis of the largest decoding block included in the filter parameter that is variable-length decoded by the variable-length decoding unit 31. Pixel adaptive offset processing or adaptive filter processing is performed for each maximum decoded block with reference to selection information on whether to perform adaptive filter processing.
  • variable length decoding unit 31 the inverse quantization / inverse conversion unit 32, the changeover switch 33, the intra prediction unit 34, the motion compensation unit 35, the addition unit 36, and the intra prediction which are components of the moving picture decoding apparatus Memory 37, loop filter unit 38, and motion compensation prediction frame memory 39 are assumed to be configured with dedicated hardware (for example, a semiconductor integrated circuit on which a CPU is mounted, a one-chip microcomputer, etc.).
  • dedicated hardware for example, a semiconductor integrated circuit on which a CPU is mounted, a one-chip microcomputer, etc.
  • FIG. 4 is a flowchart showing the contents of processing (moving picture decoding method) of the moving picture decoding apparatus in accordance with Embodiment 1 of the present invention.
  • intra-prediction from encoded adjacent pixels or motion-compensated prediction between adjacent frames is performed with each frame image of video as an input image, and a predicted difference signal obtained is obtained.
  • a moving picture coding apparatus that performs compression processing by orthogonal transformation and quantization, and then performs variable length coding to generate a bit stream, and a moving picture decoding that decodes a bit stream output from the moving picture coding apparatus The apparatus will be described.
  • the moving picture coding apparatus shown in FIG. 1 divides the video signal into blocks of various sizes according to local changes in the space and time direction of the video signal, and performs intra-frame and inter-frame adaptive coding. It is characterized by Generally, a video signal has a characteristic that the complexity of the signal changes locally in space and time. When viewed spatially, on some video frames, for example, some patterns have uniform signal characteristics in relatively large image areas such as sky or wall, small images such as a person or a picture including fine texture There may be a mixture of patterns having complicated texture patterns in the area. Even in time, although the sky and walls locally have a small change in the pattern in the time direction, the moving person or object moves temporally in a rigid or non-rigid motion, so the temporal change Is large.
  • the encoding process generates a prediction difference signal with small signal power and entropy by temporal and spatial prediction, and performs a process to reduce the overall code amount, but the parameters used for prediction are as large as possible in the image signal area. If it can apply uniformly, the code amount of the said parameter can be made small.
  • the same prediction parameter is applied to a large image area with respect to an image signal pattern having a large change in time and space, the number of prediction errors increases, so the code amount of the prediction difference signal increases. . Therefore, in a region where temporal and spatial changes are large, the block size for performing prediction processing is reduced by applying the same prediction parameter, and the data amount of parameters used for prediction is increased, and the power and entropy of the prediction difference signal It is desirable to reduce the
  • prediction processing etc. in order to perform encoding adapted to the general nature of the video signal, prediction processing etc. is first started from a predetermined maximum block size, and the area of the video signal is hierarchically divided.
  • prediction processing and coding processing of prediction differences thereof are adapted to be adapted to each divided area.
  • the image frame is an arbitrary video signal such as a monochrome image signal or an infrared image signal, which is composed of horizontal and vertical two-dimensional digital sample (pixel) columns.
  • the gray level of each pixel may be 8 bits, or may be a gray level such as 10 bits or 12 bits.
  • the video signal of the input image is assumed to be a YUV signal, and two color difference components U and V are subsampled with respect to the luminance component Y 4: 2: 0
  • a processing data unit corresponding to each frame of the video signal is referred to as a "picture".
  • “picture” is described as a video frame signal which is sequentially scanned (progressive scan), but when the video signal is an interlace signal, “picture” is a unit forming a video frame. It may be a field image signal.
  • the coding control unit 2 determines the size of the largest coding block used for coding a picture to be coded (current picture) and the upper limit of the number of layers into which the largest coding block is hierarchically divided (FIG. 2). Step ST1).
  • the size of the maximum coding block for example, the same size may be determined for all the pictures according to the resolution of the video signal of the input image, or the local movement of the video signal of the input image
  • the difference in complexity may be quantified as a parameter to set a small size for a picture with large motion, while setting a large size for a picture with small movement.
  • the method of determining the upper limit of the number of divided layers for example, according to the resolution of the video signal of the input image, the method of determining the same number of layers for all pictures or when the motion of the video signal of the input image is severe There is a method of setting the number of layers deeper and setting so as to detect finer movement, and setting the number of layers smaller if the movement is small.
  • the coding control unit 2 selects a coding mode corresponding to each coding block divided hierarchically from the available one or more coding modes (step ST2). That is, the coding control unit 2 divides the image area of the maximum coding block size hierarchically into coding blocks having coding block sizes until reaching the upper limit of the number of division layers determined previously. Determine the coding mode for each coding block. There are one or more intra coding modes (collectively referred to as "INTRA") and one or more inter coding modes (collectively referred to as "INTER”) as coding modes. The coding control unit 2 selects a coding mode corresponding to each coding block from all coding modes available for the picture or a subset thereof.
  • each coding block hierarchically divided by the block division unit 1 described later is further divided into one or more prediction blocks, which are units for performing prediction processing, and the division state of the prediction block is also the coding mode Contained as information. That is, the coding mode is an index for identifying what kind of prediction block division the intra mode or the inter coding mode has.
  • the method of selecting the coding mode by the coding control unit 2 is a known technique, the detailed description is omitted, but, for example, the coding process for the coding block is performed using any available coding mode. There is a method of implementing to verify the coding efficiency, and selecting a coding mode with the highest coding efficiency among a plurality of available coding modes.
  • the coding control unit 2 determines, for each coding block, the quantization parameter and the orthogonal transformation block division state to be used when the difference image is compressed, and is used when prediction processing is performed. Which prediction parameter (intra prediction parameter or inter prediction parameter) to be However, when the coding block is further divided into prediction block units for performing prediction processing, prediction parameters (intra prediction parameters or inter prediction parameters) can be selected for each prediction block. Furthermore, in the coding block in which the coding mode is the intra coding mode, although details will be described later, since the coded pixels adjacent to the prediction block are used when performing the intra prediction processing, Since coding needs to be performed, selectable transform block sizes are limited to less than or equal to the size of a prediction block.
  • the coding control unit 2 outputs the prediction differential coding parameter including the quantization parameter and the conversion block size to the conversion / quantization unit 7, the dequantization / inverse conversion unit 8 and the variable length coding unit 13. Also, the coding control unit 2 outputs the intra prediction parameter to the intra prediction unit 4 as needed. In addition, the coding control unit 2 outputs the inter prediction parameter to the motion compensation prediction unit 5 as necessary.
  • the block division unit 1 When the block division unit 1 inputs a video signal as an input image, the block division unit 1 divides the input image into the maximum coding block size determined by the coding control unit 2, and further divides the maximum coding block into divisions. It divides hierarchically into the coding block determined by 2 and outputs the coding block.
  • FIG. 5 is an explanatory view showing an example in which the largest coding block is hierarchically divided into a plurality of coding blocks.
  • the largest coding block is a coding block in which the luminance component described as "the 0th layer" has a size of (L 0 , M 0 ).
  • the coding block is obtained by hierarchically dividing up to a predetermined depth separately defined in the quadtree structure.
  • the coding block is an image area of size (L n , M n ).
  • the coding block size determined by the coding control unit 2 is defined as the size (L n , M n ) of the luminance component of the coding block.
  • (L n + 1 , M n + 1 ) (L n / 2, M n / 2) always holds.
  • the size of all color components is (L n , M n ), but 4: 2
  • the coding block size of the corresponding chrominance component is (L n / 2, M n / 2).
  • the coding block of the n hierarchy expressed in B n denote the encoding modes selectable by the coding block B n with m (B n).
  • the encoding mode m (B n ) may be configured to use an individual mode for each color component, or common to all color components It may be configured to use the mode. The following description will be made on the assumption that the coding mode for the luminance component of the YUV signal and the coding block of the 4: 2: 0 format is indicated unless otherwise specified.
  • the coding block B n is divided by the block division unit 1 into one or more prediction blocks representing prediction processing units. Thereafter, a prediction block belonging to the coding block B n P i n (i is the predicted block number in the n layer) is denoted as.
  • FIG. 5 shows an example of P 0 0 and P 1 0 .
  • How the prediction block in the coding block B n is divided is included as information in the coding mode m (B n ).
  • Prediction block P i n is that although prediction process all according to the coding mode m (B n) is performed, which for each predicted block P i n, select individual prediction parameters (intra prediction parameters or inter prediction parameter) it can.
  • the coding control unit 2 generates, for example, a block division state as shown in FIG. 6 for the largest coding block, and specifies the coding block.
  • a rectangle surrounded by a dotted line in FIG. 6A represents each coding block, and a hatched block in each coding block represents a division state of each prediction block.
  • FIG. 6B shows a quadtree graph showing the situation where the coding mode m (B n ) is assigned by hierarchical division, in the example of FIG. 6A.
  • the nodes enclosed by ⁇ in FIG. 6B are nodes (coding blocks) to which a coding mode m (B n ) is assigned.
  • the information of this quadtree graph is output from the encoding control unit 2 to the variable length encoding unit 13 together with the encoding mode m (B n ) and multiplexed into a bit stream.
  • the changeover switch 3 is output from the block division unit 1 when the coding mode m (B n ) determined by the coding control unit 2 is the intra coding mode (when m (B n ) ⁇ ⁇ ⁇ ⁇ INTRA).
  • the coding block B n is output to the intra prediction unit 4.
  • the coding mode m (B n ) determined by the coding control unit 2 is the inter coding mode (m (B n ) ⁇ INTER)
  • the coding block output from the block division unit 1 It outputs B n to the motion compensation prediction unit 5.
  • the intra prediction unit 4 determines that the coding mode m (B n ) determined by the coding control unit 2 is the intra coding mode (in the case where m (B n ) ⁇ INTRA) and the switch 3 to the coding block B
  • the encoding block B n and implementing intra prediction process for each of the prediction block P i n in it generates an intra prediction image P INTRAi n (step ST4).
  • intra prediction parameters used for generating the intra prediction image P INTRAi n is from encoding control unit 2 It is output to the variable-length coding unit 13 and multiplexed into a bit stream. Details of the processing content of the intra prediction unit 4 will be described later.
  • the motion compensation prediction unit 5 determines that the coding mode m (B n ) determined by the coding control unit 2 is the inter coding mode (when m (B n ) ⁇ INTER), and the switching block 3 starts the coding block.
  • the motion vector by comparing the locally decoded image after the filtering process stored in the prediction block P i n and the motion compensated prediction frame memory 12 of the encoding block B n I searched, using inter prediction parameters determined by the motion vector and the encoding control unit 2, implemented inter prediction processing for each of the prediction block P i n in the encoding block B n, the inter prediction image P generating a INTERi n (step ST5).
  • inter prediction parameters used for generating the inter prediction image P INTERi n is from encoding control unit 2 It is output to the variable-length coding unit 13 and multiplexed into a bit stream.
  • the motion vector searched by the motion compensation prediction unit 5 is also output to the variable length coding unit 13 and multiplexed into a bit stream.
  • Subtraction unit 6 upon receiving the encoded block B n from the block dividing unit 1 from its prediction block P i n the coded block B n, the intra prediction image P INTRAi n generated by the intra prediction unit 4 or, , by subtracting one of the inter prediction image P INTERi n generated by the motion compensation prediction unit 5, and outputs the prediction difference signal e i n representing a difference image is the subtraction result to the transform and quantization unit 7 (Step ST6).
  • Transform and quantization unit 7 receives the prediction difference signal e i n from the subtracting unit 6, with reference to the orthogonal transform block division information included in the predictive differential coding parameters determined by the coding control unit 2, the orthogonal transform processing for the predicted difference signal e i n (e.g., DCT (discrete cosine transform) or DST (discrete sine transform), the orthogonal transform for KL conversion and the base design have been made in advance to the particular learning sequence)
  • the transform coefficients are calculated by performing the orthogonal transform block unit.
  • the transform / quantization unit 7 quantizes the substitution coefficient in the unit of the orthogonal transformation block with reference to the quantization parameter included in the prediction differential encoding parameter, and compresses the compressed data which is the transformation coefficient after quantization It is output to the inverse quantization / inverse transform unit 8 and the variable length coding unit 13 (step ST7).
  • the inverse quantization / inverse transform unit 8 When the inverse quantization / inverse transform unit 8 receives the compressed data from the transform / quantization unit 7, the inverse quantization / inverse transform unit 8 calculates the quantization parameter and the orthogonal transformation block division information included in the prediction differential coding parameter determined by the coding control unit Referring to the orthogonal transformation block, the compressed data is dequantized. In addition, the inverse quantization / inverse transform unit 8 performs inverse orthogonal transform processing (for example, inverse DCT, inverse DST, inverse KL transformation, etc.) on transform coefficients that are compressed data after inverse quantization in units of orthogonal transform blocks. Te, and calculates and outputs a local decoded prediction difference signal corresponding to the prediction difference signal e i n output from the subtraction unit 6 to the adder 9 (step ST8).
  • inverse orthogonal transform processing for example, inverse DCT, inverse DST, inverse KL transformation, etc.
  • Adding unit 9 from the inverse quantization and inverse transform unit 8 receives the local decoded prediction difference signal, and the local decoded prediction difference signal or intra prediction image P INTRAi n, generated by the intra prediction unit 4, motion compensation by adding one of the inter prediction image P INTERi n generated by the prediction unit 5 calculates a local decoded image (step ST9).
  • the addition unit 9 outputs the local decoded image to the loop filter unit 11 and stores the local decoded image in the intra prediction memory 10. This local decoded image becomes an encoded image signal used in the subsequent intra prediction processing.
  • the loop filter unit 11 When receiving the locally decoded image from the adding unit 9, the loop filter unit 11 performs predetermined filter processing on the locally decoded image, and stores the locally decoded image after the filter processing in the motion compensation prediction frame memory 12 To do (step ST10). Details of the processing content of the loop filter unit 11 will be described later.
  • steps ST3 to ST9 is repeatedly performed until the processing for all the coding blocks B n hierarchically divided is completed, and when the processing for all the coding blocks B n is completed, the processing proceeds to step ST13. (Steps ST11 and ST12)
  • the variable-length coding unit 13 takes the compressed data output from the transform / quantization unit 7 and the block division information in the maximum coding block output from the coding control unit 2 (FIG. 6B as an example). Quadtree information), coding mode m (B n ) and prediction differential coding parameter, intra prediction parameter (if coding mode is intra coding mode) output from the coding control unit 2 or inter prediction Parameters (when the encoding mode is the inter encoding mode), motion vectors (when the encoding mode is the inter encoding mode) output from the motion compensation prediction unit 5, and the output from the loop filter unit 11
  • the variable length coding is performed on the filter parameter and the bit stream indicating the coding result is generated (step ST13). Details of variable-length coding processing of filter parameters by the variable-length coding unit 13 will be described later.
  • FIG. 7 is an explanatory diagram showing an example of the intra prediction mode is an intra prediction parameters each prediction block P i n is selectable within a coding block B n.
  • N I represents the number of intra prediction modes.
  • FIG. 7 shows the index value of the intra prediction mode and the prediction direction vector indicated by the intra prediction mode, and in the example of FIG. 7, relative to each other between the prediction direction vectors as the number of selectable intra prediction modes increases. It is designed to reduce the angle.
  • Intra prediction unit 4 as described above, with reference to the intra prediction parameters of the prediction block P i n, to implement intra prediction processing for the prediction block P i n, but to generate an intra prediction image P INTRAi n , it will be described here intra process of generating an intra prediction signal of a prediction block P i n in the luminance signal.
  • the number of pixels used for prediction may be more or less than the pixels shown in FIG.
  • it is used to predict one line or pixel of one column in the vicinity of the predicted block P i n, 2 rows or two columns, or may be used more pixels in the prediction.
  • the index value of the intra prediction mode for prediction block P i n is 0 (plane (Planar) prediction) is adjacent to the left of the prediction block P i predicted block P i n the encoded pixels adjacent to the upper side of the n using encoded pixels that generates a predicted image interpolated value according to the distance of the pixel and the prediction pixel in the prediction block P i n as the predicted value.
  • the index value of the intra prediction mode for prediction block P i n is 2 (average value (DC) prediction) is to the left of the prediction block P i predicted block P i n the encoded pixels adjacent to the upper side of the n generating a prediction image the mean value of the encoded adjacent pixel as a prediction value of the pixels in the prediction block P i n.
  • the interpolated pixel generated from the integer pixel adjacent to the reference pixel is Make it a forecast value.
  • a value interpolated from two pixels adjacent to the reference pixel is used as a predicted value. Note that interpolation pixels may be generated not only from adjacent two pixels but also from adjacent two or more pixels as prediction values.
  • the processing described above to generate a predicted pixel for all the pixels of the luminance signal in the prediction block P i n, and outputs an intra prediction image P INTRAi n.
  • the intra prediction parameters used for generating the intra prediction image P INTRAi n is output to the variable length coding unit 13 for multiplexing the bitstream.
  • the MPEG-4 AVC / H Similar to the smoothing process performed on the reference image at the time of 8 ⁇ 8 pixel block intra prediction of the 264, the intra prediction unit 4, the reference pixels in generating the intermediate prediction image predicted block P i n even when configured as a prediction block P i n pixels smoothed the encoded pixels adjacent to, it is possible to perform the filtering for the same intermediate predicted image and the above example.
  • the intra prediction processing based on the intra prediction parameters (intra prediction mode) performed the intra prediction parameters used for generating the intra prediction image Is output to the variable-length coding unit 13.
  • the intra prediction parameter (intra prediction mode) selectable by the color difference signal may be different from that of the luminance signal.
  • the color difference signals are signals in which the resolution is reduced to 1/2 in both horizontal and vertical directions with respect to the luminance signal (Y signal) Since the complexity of the image signal is lower and prediction is easier compared to the luminance signal, the amount of code required to encode the intra prediction parameter as a smaller number of selectable intra prediction parameters than the luminance signal is reduced. Alternatively, the calculation process of the prediction process may be reduced.
  • the loop filter unit 11 performs a predetermined filtering process on the locally decoded image calculated by the adding unit 9 and performs a process of outputting the locally decoded image after the filtering process.
  • filter deblocking filter
  • Adaptive filter processing for adaptively switching and filtering a linear filter of
  • the loop filter unit 11 may be configured to perform one of the above-described deblocking filter processing, pixel adaptive offset processing, and adaptive filter processing, as shown in FIG. 10, two or more. Filter processing may be performed.
  • the more types of filtering used the better the image quality, but the higher the processing load. That is, since the image quality and the processing load are in a trade-off relationship, the configuration may be determined according to the processing load permitted by the moving picture coding apparatus.
  • each pixel in a block is classified into classes according to a predetermined method in units of maximum encoding blocks, and luminance values between the encoding target image and the local decoded image are classified in each class. Calculate the offset value that minimizes the sum of squared errors. Then, the image quality of the locally decoded image is improved by performing processing for adding the offset value of each class to the luminance value of the pixel (the pixel of the locally decoded image) belonging to the class.
  • a predetermined method of performing class classification there is a method of classifying according to the size of the luminance value of the local decoded image, the situation around each pixel (whether or not it is an edge portion, etc. for each direction of the edge as shown in FIG.
  • There is a method to classify according to) and these methods are prepared beforehand in common to the image coding device and the image decoding device, and it is defined as one of the classification methods even when offset processing is not performed.
  • which method is used to select the class classification is selected for each block. Further, the case where the pixel adaptive offset process is not performed for the whole picture and the case where the pixel adaptive offset process determined above are performed are compared to select which is better.
  • FIG. 13 is a flowchart showing an example of the adaptive filter process.
  • filter selection and filter processing in steps ST102 to ST106 are performed on each maximum coding block (step ST101).
  • Cost D + ⁇ ⁇ R (3)
  • D is the sum of squared errors between the image signal to be encoded in the block and the locally decoded image signal after filtering
  • is a constant.
  • R is a code amount required to encode a filter number for selecting a filter to be used and a filter coefficient corresponding to the filter number.
  • the cost is expressed by Equation (3), but for example, only the sum of squared errors D may be used as the cost. By doing this, the cost accuracy is reduced, but the cost calculation cost is reduced. Also, D may not be the sum of squared errors, but may be the sum of absolute values of errors with a lower calculation load. What kind of equation is used to define the cost may be determined according to the operation load allowed by the video encoding device. In the case of the cost C 0 when the filter processing is not performed, D is the sum of squared errors between the image signal to be encoded and the locally decoded image signal not subjected to the filter processing, and the code amount R required for the filter is 0 Become.
  • a Wiener filter that minimizes the sum of squared errors between the image signal to be encoded and the local decoded image signal is calculated according to equation (1) for the pixels in the largest encoding block to be processed (step ST 103), with respect to pixels in the block, calculates a cost C new in the case of carrying out the filtering process (step ST 104).
  • the filtering process by Wiener is expressed by the following equation (4).
  • x 0 is the filter target pixel
  • L is the number of filter reference pixels It is.
  • S (x) is the luminance value of pixel x
  • S ′ (x) is the luminance value after filtering of pixel x
  • numbl represents the number of filters that can be used other than the filters designed in the current processing target maximum coding block.
  • a filter that can be used other than the filter designed by the current processing target maximum coding block a filter used by the maximum coding block which has already been subjected to filter processing, and a filter prepared in advance before performing coding processing Etc.
  • the filtering process related to the cost is processed currently It is determined to be the filtering process in the target largest coding block (step ST106).
  • the determined filter processing is the filter (cost C new ) designed for the current processing target largest coding block, numbl + 1 which can use this designed filter for the next processing target largest coding block
  • the filter number is set as the filter number (filter number numbl + 1), and the available number of filters numbl is incremented by one.
  • it proceeds to filter selection and filter processing of the next largest coding block to be processed (step ST107).
  • the filter number set above is defined as a class number, and the number of filters is referred to as the number of classes.
  • the adaptive filter processing includes presence / absence information of picture level adaptive filter processing, the number of classes when the presence / absence information indicates "present", the class number of the maximum coding block unit including "no filter processing", The filter coefficients of the class are output to the variable-length coding unit 13 as part of the filter parameters.
  • FIG. 14 an example shown in FIG. 14 or the like other than FIG. 13 can be considered. Also in the example of FIG. 14, only the selection method of the filtering process in each maximum coding block is different, and as shown in FIG. 11, the class number representing the filter to be used in maximum coding block unit and each class number The point of using the corresponding filter as the filter parameter for outputting to the variable length coding unit 13 is the same. That is, in the example of FIG. 14, a filter to be used in a picture is prepared in advance (step ST108), and the cost C 0 when the filter process is not performed on each maximum encoded block (step ST110).
  • Costs C 1 , C 2 ,..., C numbl (step ST 111) in the case of using a filter prepared in advance are calculated, and an optimal filter process that minimizes the cost is selected (step ST 112). Then, the processing in steps ST110 to ST112 is performed on all the largest encoded blocks in the picture (steps ST109 and ST113), and the filter processing in each largest encoded block is determined.
  • the optimal filter processing is determined for the largest coding block unit, but when considering the area unit smaller than the largest coding block, the filtering process is performed between the coding target image and the local decoded image. There may be a case where the sum of squared errors of the luminance values of B. Therefore, as shown in FIG. 15, it may be selected whether or not the filtering process is to be performed in units of coding blocks obtained by dividing the largest coding block. By doing this, it is possible to reduce the number of pixels in which the square error of the luminance value between the image to be encoded and the local decoded image increases, so that highly accurate filter processing can be realized.
  • one optimal filter process is determined for each largest coding block, but local properties (variance of luminance values such as dispersion, edge, etc., for each small block in the largest coding block) are determined.
  • Group classification may be performed according to the direction (1), etc., a filter may be designed for each group, and filter processing may be performed.
  • the moving picture coding apparatus is configured to perform this process, the moving picture decoding apparatus needs to be configured to perform the same group classification as the moving picture coding apparatus.
  • either one of pixel adaptive offset processing and adaptive filter processing may be optimally selected per maximum coding block instead of the form shown in FIG. Good. In this way, highly accurate filter processing can be realized while suppressing the amount of operation of filter processing for each maximum coding block.
  • selection information as to whether to perform pixel adaptive offset processing in units of maximum coding blocks or adaptive filter processing is output as a part of filter parameters to the variable-length coding unit 13
  • the class selection method of pixel adaptive offset processing and class selection of adaptive filter processing are described in the largest encoded block unit, but may be performed in any block size unit. By doing this, it is possible to reduce selection information of block units to be encoded without significantly degrading the image quality improvement performance by performing with a block size larger than the maximum encoding block in an image having a complicated pattern.
  • selection information in units of blocks to be encoded is increased by performing with a block size smaller than the maximum encoding block, large image quality can be obtained because processing can be performed following complex pattern changes. An improvement effect is obtained.
  • the above-mentioned block size is a part of a filter parameter, and a variable length coding unit Output to 13 and encode.
  • variable-length coding unit 13 performs variable-length coding on the filter parameter output from the loop filter unit 11.
  • a filter parameter as a parameter necessary for pixel adaptive offset processing, the presence / absence information of pixel adaptive offset processing at the picture level and the presence / absence information of “processing present” indicates a classification method in units of maximum coding blocks. There is an index and an offset value of each class in the largest coding block unit.
  • presence / absence information of picture level adaptive filter processing and class number indicating the number of classes and a filter to be used in units of the largest coding block when the presence / absence information is “processed”. And filter coefficients corresponding to each class number.
  • variable-length coding of the class number of the largest coding block unit of adaptive filter processing implements coding processing using Move-To-Front shown in FIG.
  • Move-To-Front is a process that encodes a class number and then assigns that class number to the smallest coding index (index 0), and adds one to the corresponding class index for the other class numbers.
  • index 0 the smallest coding index
  • the occurrence probability of the coding index is biased to 0 and variable according to the occurrence frequency probability.
  • the maximum value of the coding index is unnecessary for decoding processing. That is, when using the Golomb code, coding is not necessary because the number of classes is not necessary. Therefore, if the Golomb code is used, the amount of code required to code the number of classes can be reduced. In addition, even when alpha code (Unary code), gamma code, delta code, etc. are used, the maximum value of the coding index is not necessary for the decoding process, and thus the coding of the number of classes becomes unnecessary.
  • entropy coding may be performed by designing a probability model of variable-length coding each time with the number of filter indexes selectable at the time of coding (numbl in FIG.
  • the presence / absence information of the filtering process of the largest coding block unit is coded, and further, the presence / absence information In the case of indicating “with filter processing”, encoding of the class number described above may be performed. This simplifies the design of the variable length coding probability model when the occurrence probability of each class without filtering and the occurrence probability of each class with filtering are significantly different. can do.
  • the encoding of the class number (class index) of the maximum coding block unit of adaptive filter processing and the encoding of the index indicating the classification method of the maximum coding block unit of pixel adaptive offset processing are described above.
  • a flag indicating whether or not the largest encoded block is the same as a surrounding block (for example, the upper and left blocks), and which block if the flag indicates “same” If the flag indicates "not the same” a method of coding the index to be coded may be considered. Besides, as shown in FIG.
  • a flag indicating whether the index is the same as the above block and a parameter (run-length) indicating how many blocks the same index continues to the right are encoded, Indicates whether the target block is not the same index as the left block and the upper block is not the same index, that is, the run-length is completed in the left block of the target block and is the same index as the upper block It is also conceivable to encode the index to be encoded only when the flag indicates “not identical”. Similar to the coding method using Move-To-Front, these methods can achieve high coding efficiency if spatial correlation exists in the index with the left block of the current block. Furthermore, unlike the coding method using Move-To-Front, these methods achieve high coding efficiency even in the case where spatial correlation exists in the index with the block on the current block. it can.
  • the maximum offset number of pixel adaptive offset processing that can be used in units of pictures or the maximum class number of adaptive filter processing may be encoded as header information.
  • FIG. 18 shows a bit stream generated by the variable length coding unit 13.
  • bitstream at least one of a sequence level header and a picture level header is inserted in front of picture data, so that parameters necessary for decoding each picture can be referenced.
  • picture data is divided into at least one or more slices and encoded, and the slices can be configured in units of encoded blocks obtained by dividing the largest encoded block.
  • at least one variable length encoded filter parameter is inserted before the picture data as a filter parameter set.
  • Each slice has an index indicating which filter parameter set is to be referred to in the slice header, so that each slice can refer to parameters necessary for processing of the loop filter unit 11.
  • adaptive filter processing and pixel adaptive offset processing define adaptive filter processing so as to select whether or not to execute filter processing in units of coding blocks obtained by dividing the largest coding block.
  • the presence / absence information of the filtering process in units of encoded blocks is variable-length encoded and multiplexed in a pit stream.
  • the encoded information on the encoded block unit filter presence / absence information is multiplexed in the slice unit of FIG. 18 on the slice header of the filter processing presence / absence information in the range of the encoded block of each slice. Alternatively, it may be multiplexed on the bitstream as a filter parameter set together with other filter parameters.
  • variable-length decoding unit 31 receives a bit stream generated by the moving picture coding apparatus shown in FIG. 1, the variable-length decoding section 31 executes variable-length decoding processing on the bit stream (step ST21 in FIG. 4)
  • the information of the frame size is decoded in a sequence unit or a picture unit composed of
  • the filter parameters used in the loop filter unit 38 encoded as a filter parameter set are decoded.
  • filter parameters as parameters necessary for pixel adaptive offset processing, presence / absence information of pixel adaptive offset processing at the picture level, and an index indicating a class classification technique of the largest decoding block unit when the presence / absence information is “processed” And the offset value of each class in the largest decoded block unit.
  • parameters necessary for adaptive filter processing presence / absence information of picture level adaptive filter processing, if the presence / absence information is “processed”, the number of classes, and a class number representing a filter to be used in units of the largest decoded block, There are filter coefficients corresponding to each class number.
  • the number of classes that can be selected for each maximum decoding block or encoding of class number representing the filter to be used for each maximum decoding block is performed using Golomb code, alpha code (Unary code), gamma code, delta code, etc.
  • entropy coding is performed by designing a probability model by itself, it is possible to decode even if the number of classes is unknown, so there is no need to encode the number of classes in the video encoding device, and thus video encoding If the encoding apparatus does not encode the number of classes, the moving picture decoding apparatus does not decode the number of classes.
  • variable length decoding unit 31 determines the maximum coding block size and the upper limit of the number of division layers determined by the coding control unit 2 of the moving picture coding apparatus of FIG. 1 in the same procedure as the moving picture coding apparatus. (Step ST22). For example, when the upper limit of the maximum coding block size or the number of division layers is determined according to the resolution of the video signal, the maximum coding is performed in the same procedure as the moving picture coding apparatus based on the decoded frame size information. Determine the block size. When the upper limit of the maximum coding block size and the number of division layers is multiplexed into the bitstream at the video encoding device side, the value decoded from the bitstream is used.
  • the maximum coding block size is referred to as a maximum decoding block size
  • the maximum coding block is referred to as a maximum decoding block.
  • the variable-length decoding unit 31 decodes the division state of the largest decoded block as shown in FIG. 6 in units of the determined largest decoded block. Based on the decoded division state, a decoded block (a block corresponding to a "coded block" of the moving picture coding apparatus of FIG. 1) is specified hierarchically (step ST23).
  • variable-length decoding unit 31 decodes the coding mode assigned to the decoded block.
  • the variable-length decoding unit 31 further divides the decoded block into prediction blocks, which are one or more prediction processing units, based on the information included in the coding mode, and decodes the prediction parameters assigned to the prediction block unit. To do (step ST24).
  • variable-length decoding unit 31 when the coding mode assigned to the decoding block is the intra coding mode, the variable-length decoding unit 31 is included in the decoding block, and is intra for each of one or more prediction blocks serving as a prediction processing unit. Decode prediction parameters.
  • the coding mode assigned to the decoded block is the inter coding mode, it is included in the decoded block, and the inter prediction parameter and motion vector are decoded for each of one or more prediction blocks serving as a prediction processing unit. To do (step ST24).
  • the variable-length decoding unit 31 decodes compressed data (transformation coefficients after transformation and quantization) for each orthogonal transformation block based on the orthogonal transformation block division information included in the prediction difference coding parameter (step ST24).
  • variable-length decoding unit 31 If the coding mode m (B n ) variable-length decoded by the variable-length decoding unit 31 is the intra coding mode (if m (B n ) ⁇ INTRA), the change-over switch 33 operates the variable-length decoding unit 31 The intra prediction parameter of the prediction block unit which has been variable-length decoded is output to the intra prediction unit 34. On the other hand, if the coding mode m (B n ) variable-length decoded by the variable-length decoding unit 31 is the inter coding mode (if m (B n ) ⁇ INTER), then the variable-length decoding unit 31 performs variable-length decoding The motion prediction unit 35 outputs the predicted block unit inter prediction parameter and motion vector to the motion compensation unit 35.
  • the intra prediction unit 34 switches the switch 33.
  • the motion compensation unit 35 performs switching switch 33 Using the motion vector and the inter prediction parameter while referring to the filtered decoded image stored in the motion compensated prediction frame memory 39 by receiving the motion vector and the inter prediction parameter of the prediction block unit output from by carrying out inter-prediction processing for each of the prediction block P i n of the decoded block B n to generate an inter prediction image P INTERi n (step ST27).
  • the predictive difference encoding is performed in the same procedure as the inverse quantization / inverse transform unit 8 in FIG.
  • the compressed data is dequantized in units of orthogonal transformation blocks with reference to the quantization parameter and the orthogonal transformation block division information included in the parameters.
  • the inverse quantization / inverse transform unit 32 performs inverse orthogonal transform processing on transform coefficients which are compressed data after inverse quantization in units of orthogonal transform blocks, and the inverse quantization / inverse transform unit 8 in FIG.
  • the same decoded predicted differential signal as the output local decoded predicted differential signal is calculated (step ST28).
  • Addition unit 36 decodes the prediction difference signal calculated by the inverse quantization and inverse transform unit 32, an intra prediction image P INTRAi n generated by the intra prediction unit 34 or, inter prediction generated by the motion compensation unit 35 by adding one of the image P INTERi n calculates a decoded image, and outputs the decoded image to the loop filter unit 38, and stores the decoded image to the intra prediction memory 37 (step ST29).
  • This decoded image is a decoded image signal used in the subsequent intra prediction processing.
  • the loop filter unit 38 performs a predetermined filter process on the decoded image output from the adding unit 36 to perform filtering.
  • the decoded image after processing is stored in the motion compensation prediction frame memory 39 (step ST31).
  • filter deblocking filter
  • Adaptive filter processing for adaptively switching and filtering a linear filter of
  • the loop filter unit 38 may be configured to perform one of the above deblocking filter processing, pixel adaptive offset processing, and adaptive filter processing, and as shown in FIG. The filtering process may be performed, but the same filtering process as the filtering process performed by the loop filter unit 11 of the moving picture coding apparatus has to be performed.
  • the pixel adaptive offset processing refers to an index indicating a classification method of the largest decoding block unit included in the filter parameter that is variable-length decoded by the variable-length decoding unit 31 among the classification methods prepared in advance. Then, the class classification method corresponding to the index is specified, and using the class classification method, each pixel in the block is classified into the largest decoding block unit. Then, the offset value for each class included in the filter parameter that has been variable-length decoded by the variable-length decoding unit 31 is added to the luminance value of the pixel (the pixel of the decoded image) that belongs to the class.
  • filter parameters number of classes (number of filters) subjected to variable-length decoding by the variable-length decoding unit 31, filters of locally decoded images belonging to each class, class numbers as class identification information of blocks
  • filter processing of the decoded image belonging to the class is performed using a filter corresponding to the class number.
  • FIG. 19 shows an example of a flowchart of adaptive filter processing.
  • filter processing in steps ST222 to ST224 is performed on each largest decoded block (step ST221). The filtering process of steps ST222 to ST224 will be described.
  • step ST222 based on the class number of the largest decoding block unit included in the filter parameter variable-length decoded by the variable-length decoding unit 31, it is determined whether or not the filtering process is to be performed on the largest decoding block to be processed.
  • the filtering process is performed on the pixels in the block using the filter corresponding to the above class number (step ST223). Then, it proceeds to the next largest decoded block (ST224).
  • the above processing is performed on all maximum decoded blocks, and the decoded image after processing is stored in the motion compensation prediction frame memory 39.
  • either one of pixel adaptive offset processing or adaptive filter processing is optimum for each maximum coding block.
  • the loop filter unit 11 of the video encoding device is configured to select, pixel adaptive offset processing is performed on the basis of the largest decoding block included in the filter parameter that is variable-length decoded by the variable-length decoding unit 31. Pixel adaptive offset processing or adaptive filter processing is performed for each maximum decoded block with reference to selection information on whether to perform adaptive filter processing.
  • the class classification method selection information of pixel adaptive offset processing for the largest decoded block unit and the class selection information of adaptive filter processing are decoded to perform loop filter processing, but the block size and the block size If the moving picture coding apparatus is configured such that the class selection method selection information of pixel adaptive offset processing of a unit and the class selection information of adaptive filter processing are encoded, the variable size decoding unit 31 , Variable length decoding of class selection method selection information of pixel adaptive offset processing of the block size unit, class selection information of adaptive filter processing, and the loop filter unit 38 performs loop filter processing of the above block size unit based on these parameters carry out.
  • variable length decoding unit 31 decodes the information, and the process of step ST223 Performs filtering only on decoded blocks that have information that filtering is to be performed.
  • the decoded image after the filter processing by the loop filter unit 38 becomes a reference image for motion compensation prediction, and becomes a reproduced image.
  • the loop filter unit 11 of the moving picture coding apparatus is controlled by the addition unit 9 in coding block units of the maximum size determined by the coding control unit 2. While performing classification of the generated local decoded image, for each local decoded image belonging to each class, design a filter that compensates for the distortion that is superimposed, and use the filter to filter the local decoded image. And the variable length coding unit 13 is configured to encode the filter used for the local decoded image belonging to each class designed by the loop filter unit 11 and the class number of each maximum coding block as a filter parameter. Therefore, the user classifies any number of classes into a predetermined block size unit in an arbitrary manner, and for each area belonging to each class Since filtering is performed, are possible classification according to the encoding target image, an effect that can increase the improvement accuracy of the image quality.
  • the filter parameter variable-length decoded by the variable-length decoding unit 31 of the moving picture decoding apparatus is referred to, and filter processing is performed using a filter belonging to each class.
  • the moving picture coding apparatus and the moving picture coding method according to the present invention are suitable for those which need to perform moving picture coding with high efficiency, and the moving picture coding apparatus and the moving picture coding according to the present invention The method is suitable for those that need to decode moving pictures that are being encoded with high efficiency.

Landscapes

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

Abstract

 ループフィルタ部11が、符号化制御部2により決定された最大サイズの符号化ブロック単位に、加算部9により生成された局所復号画像のクラス分けを実施するとともに、各クラスに属する局所復号画像毎に、重畳されている歪みを補償するフィルタを設計し、そのフィルタを用いて、当該局所復号画像のフィルタ処理を実施し、可変長符号化部13が、ループフィルタ部11により設計された各クラスに属する局所復号画像に用いるフィルタ及び各最大符号化ブロックのクラス番号をフィルタパラメータとして符号化する。

Description

動画像復号装置、動画像符号化装置、動画像復号方法及び動画像符号化方法
 この発明は、動画像を高効率で符号化を行う動画像符号化装置及び動画像符号化方法と、高効率で符号化されている動画像を復号する動画像復号装置及び動画像復号方法とに関するものである。
 従来、MPEGやITU-T H.26x等の国際標準映像符号化方式では、入力映像フレームを、16×16画素ブロックからなるマクロブロックの単位に分割して、動き補償予測を実施した後、予測誤差信号をブロック単位に直交変換・量子化することによって情報圧縮を行うようにしている。
 ただし、圧縮率が高くなると、動き補償予測を実施する際に用いる予測参照画像の品質が低下することに起因して、圧縮効率が妨げられる問題がある。
 そのため、MPEG-4 AVC/H.264の符号化方式(非特許文献1を参照)では、ループ内ブロッキングフィルタの処理を実施することで、直交変換係数の量子化に伴って発生する予測参照画像のブロック歪みを除去するようにしている。
 特に、フレーム間で動き補償予測を実施する場合、マクロブロック自体、または、マクロブロックをさらに細かく分割したサブブロックの単位で動きベクトルを探索する。
 そして、その動きベクトルを用いて、メモリ107により格納されている参照画像信号に対する動き補償予測を実施することで動き補償予測画像を生成し、その動き補償予測画像を示す予測信号と分割画像信号の差分を求めることで予測誤差信号を算出する。
 また、予測部102は、予測信号を得る際に決定した予測信号生成用パラメータを可変長符号化部108に出力する。
 なお、予測信号生成用パラメータには、例えば、フレーム内での空間予測をどのように行うかを示すイントラ予測モードや、フレーム間の動き量を示す動きベクトル等の情報が含まれる。
 圧縮部103は、予測部102から予測誤差信号を受けると、その予測誤差信号に対するDCT(離散コサイン変換)処理を実施することで信号相関を除去した後、量子化することで圧縮データを得る。
 局所復号部104は、圧縮部103から圧縮データを受けると、その圧縮データを逆量子化して、逆DCT処理を実施することで、予測部102から出力された予測誤差信号に相当する予測誤差信号を算出する。
 加算器105は、局所復号部104から予測誤差信号を受けると、その予測誤差信号と予測部102から出力された予測信号を加算して、局所復号画像を生成する。
 ループフィルタ106は、加算器105により生成された局所復号画像を示す局所復号画像信号に重畳されているブロック歪みを除去し、歪み除去後の局所復号画像信号を参照画像信号としてメモリ107に格納する。
 可変長符号化部108は、圧縮部103から圧縮データを受けると、その圧縮データをエントロピー符号化し、その符号化結果であるビットストリームを出力する。
 なお、可変長符号化部108は、ビットストリームを出力する際、予測部102から出力された予測信号生成用パラメータをビットストリームに多重化して出力する。
 ここで、非特許文献1に開示されている符号化方式では、ループフィルタ106が、DCTのブロック境界の周辺画素に対して、量子化の粗さ、符号化モード、動きベクトルのばらつき度合い等の情報に基づいて平滑化強度を決定して、ブロック境界に発生する歪みの低減を図っている。
 これによって、参照画像信号の品質が改善され、以降の符号化における動き補償予測の効率を高めることができる。
 一方、非特許文献1に開示されている符号化方式では、高圧縮率で符号化する程、信号の高周波成分が失われてしまい、画面全体が過度に平滑化されて映像がぼやけてしまうという問題がある。
 この問題を解決するために、以下の特許文献1では、ループフィルタ106としてウィーナフィルタ(Wiener Filter)を適用し、原画像信号である符号化対象の画像信号と、これに対応する参照画像信号との二乗誤差歪みが最小化するように、ループフィルタ106を構成する技術を提案している。
 図22は特許文献1に開示されている画像符号化装置において、ウィーナフィルタによる参照画像信号の品質改善の原理を示す説明図である。
 図22において、信号sは、図21のブロック分割部101に入力される符号化対象の画像信号に相当する信号であり、信号s’は、図21の加算器105から出力される局所復号画像信号、または、非特許文献1におけるループフィルタ106によるブロック境界に発生する歪みが低減された局所復号画像信号に相当する信号である。
 つまり、信号s’は、信号sに符号化歪み(雑音)eが重畳された信号である。
 ウィーナフィルタは、この符号化歪み(雑音)eを二乗誤差歪みの規範で最小化するように、信号s’に対して施されるフィルタとして定義され、一般的に、信号s’の自己相関行列Rs's'と、信号s,s’の相互相関ベクトルRss'とによって、下記の式(1)からフィルタ係数wを求めることができる。行列Rs's',Rss'の大きさは、求められるフィルタのタップ数に対応する。
Figure JPOXMLDOC01-appb-I000001
 フィルタ係数wのウィーナフィルタを施すことにより、品質改善がなされた信号sハット(電子出願の関係上、アルファベット文字に付いている「^」をハットと表記する)が、参照画像信号に相当する信号として得られる。
 なお、特許文献1では、動き情報や画像の局所的な信号特性に応じてフレームを領域分類(クラス分類)し、クラス毎に最適なウィーナフィルタを設計することで画像の局所性に応じた高精度な歪み補償を実現している。
国際公開第2008/010929号公報
MPEG-4 AVC(ISO/IEC 14496-10)/ITU-T H.264規格
 従来の動画像符号化装置は以上のように構成されているので、符号化対象の画像の局所性に応じた高精度な歪み補償を実現することができる。しかし、クラス分類については動き情報や画像の局所的な信号特性に応じた決められた手法で行われるため、符号化対象の画像によってはフィルタ処理の効果が大きく異なり、フィルタ処理による歪み補償効果がほとんど見られない画像が発生してしまうことがある課題があった。
 この発明は上記のような課題を解決するためになされたもので、画像品質の改善精度を高めることができる動画像復号装置、動画像符号化装置、動画像復号方法及び動画像符号化方法を得ることを目的とする。
 この発明に係る動画像復号装置は、フィルタリング手段が、クラス分類手法を用いて、最大サイズの符号化ブロック単位に、復号画像生成手段により生成された復号画像内の各画素のクラス分けを実施し、各クラスのオフセット値を当該クラスに属する画素の画素値に加算する画素適応オフセット処理を実施するようにしたものである。
 この発明によれば、フィルタリング手段が、クラス分類手法を用いて、最大サイズの符号化ブロック単位に、復号画像生成手段により生成された復号画像内の各画素のクラス分けを実施し、各クラスのオフセット値を当該クラスに属する画素の画素値に加算する画素適応オフセット処理を実施するように構成したので、画像品質の改善精度を高めることができる効果がある。
この発明の実施の形態1による動画像符号化装置を示す構成図である。 この発明の実施の形態1による動画像符号化装置の処理内容(動画像符号化方法)を示すフローチャートである。 この発明の実施の形態1による動画像復号装置を示す構成図である。 この発明の実施の形態1による動画像復号装置の処理内容(動画像復号方法)を示すフローチャートである。 最大符号化ブロックが階層的に複数の符号化ブロックに分割される例を示す説明図である。 (a)は分割後の符号化ブロック及び予測ブロックの分布を示し、(b)は階層分割によって符号化モードm(B)が割り当てられる状況を示す説明図である。 符号化ブロックB内の各予測ブロックP が選択可能なイントラ予測パラメータ(イントラ予測モード)の一例を示す説明図である。 =m =4の場合の予測ブロックP 内の画素の予測値を生成する際に用いる画素の一例を示す説明図である。 予測ブロックP 内の左上画素を原点とする相対座標を示す説明図である。 この発明の実施の形態1による動画像符号化装置のループフィルタ部で複数のループフィルタ処理を用いる場合の構成例を示す説明図である。 適応フィルタ処理における最大符号化ブロック単位のクラス分類の一例を示す説明図である。 この発明の実施の形態1による動画像復号装置のループフィルタ部で複数のループフィルタ処理を用いる場合の構成例を示す説明図である。 この発明の実施の形態1による動画像符号化装置のループフィルタ部で適応フィルタ処理を行う場合の一例を示すフローチャートである。 この発明の実施の形態1による動画像符号化装置のループフィルタ部で適応フィルタ処理を行う場合の一例を示すフローチャートである。 適応フィルタ処理における符号化ブロック単位のフィルタ処理の有無の一例を示す説明図である。 適応フィルタ処理の最大符号化ブロック単位のクラス番号のMove-To-Frontを用いた符号化処理を示す説明図である。 適応フィルタ処理における最大符号化ブロック単位のフィルタ処理の有無の一例を示す説明図である。 この発明の実施の形態1による動画像符号化装置の可変長符号化部によって生成されるビットストリームの一例を示す説明図である。 この発明の実施の形態1による動画像復号装置のループフィルタ部で適応フィルタ処理を行う場合の一例を示すフローチャートである。 画素適応オフセット処理を行う場合のクラス分類手法の一部を示す説明図である。 非特許文献1に開示されている画像符号化装置を示す構成図である。 ウィーナフィルタによる参照画像信号の品質改善の原理を示す説明図である。 適応フィルタ処理または画素適応オフセット処理における最大符号化ブロック単位のインデックスの符号化の一例を示す説明図である。
実施の形態1.
 図1はこの発明の実施の形態1による動画像符号化装置を示す構成図である。
 図1において、ブロック分割部1は入力画像として映像信号を入力すると、その入力画像を符号化制御部2により決定された最大サイズの符号化ブロックである最大符号化ブロックに分割するとともに、符号化制御部2により決定された上限の階層数に至るまで、その最大符号化ブロックを階層的に各符号化ブロックへ分割する処理を実施する。
 即ち、ブロック分割部1は入力画像を符号化制御部2により決定された分割に応じて各符号化ブロックに分割して、その符号化ブロックを出力する処理を実施する。また、各符号化ブロックは予測処理単位となる1つないし複数の予測ブロックに分割される。
 なお、ブロック分割部1はブロック分割手段を構成している。
 符号化制御部2は符号化処理が実施される際の処理単位となる符号化ブロックの最大サイズを決定するとともに、最大サイズの符号化ブロックが階層的に分割される際の上限の階層数を決定することで、各々の符号化ブロックのサイズを決定する処理を実施する。
 また、符号化制御部2は選択可能な1以上の符号化モード(予測処理単位を示す予測ブロックのサイズなどが異なる1以上のイントラ符号化モード、予測ブロックのサイズなどが異なる1以上のインター符号化モード)の中から、ブロック分割部1から出力される符号化ブロックに適用する符号化モードを選択する処理を実施する。
 選択手法の一例として、選択可能な1以上の符号化モードの中から、ブロック分割部1から出力される符号化ブロックに対する符号化効率が最も高い符号化モードを選択する手法がある。
 また、符号化制御部2は符号化効率が最も高い符号化モードがイントラ符号化モードである場合、そのイントラ符号化モードで符号化ブロックに対するイントラ予測処理を実施する際に用いるイントラ予測パラメータを上記イントラ符号化モードが示す予測処理単位である予測ブロック毎に決定し、符号化効率が最も高い符号化モードがインター符号化モードである場合、そのインター符号化モードで符号化ブロックに対するインター予測処理を実施する際に用いるインター予測パラメータを上記インター符号化モードが示す予測処理単位である予測ブロック毎に決定する処理を実施する。
 さらに、符号化制御部2は変換・量子化部7及び逆量子化・逆変換部8に与える予測差分符号化パラメータを決定する処理を実施する。予測差分符号化パラメータには、符号化ブロックにおける直交変換処理単位となる直交変換ブロックの分割情報を示す直交変換ブロック分割情報や、変換係数の量子化を行う際の量子化ステップサイズを規定する量子化パラメータなどが含まれる。
 なお、符号化制御部2は符号化制御手段を構成している。
 切換スイッチ3は符号化制御部2により決定された符号化モードがイントラ符号化モードであれば、ブロック分割部1から出力された符号化ブロックをイントラ予測部4に出力し、符号化制御部2により決定された符号化モードがインター符号化モードであれば、ブロック分割部1から出力された符号化ブロックを動き補償予測部5に出力する処理を実施する。
 イントラ予測部4は切換スイッチ3から出力された符号化ブロックに対応する符号化モードとして、符号化制御部2によりイントラ符号化モードが選択された場合、その符号化ブロックの予測処理を行う際の予測処理単位である予測ブロック毎に、イントラ予測用メモリ10に格納されている局所復号画像を参照しながら、符号化制御部2により決定されたイントラ予測パラメータを用いたイントラ予測処理(フレーム内予測処理)を実施してイントラ予測画像を生成する処理を実施する。
 なお、イントラ予測部4及びイントラ予測用メモリ10からイントラ予測手段が構成されている。
 動き補償予測部5は切換スイッチ3から出力された符号化ブロックに対応する符号化モードとして、符号化制御部2によりインター符号化モードが選択された場合、符号化ブロックと動き補償予測フレームメモリ12に格納されている1フレーム以上の局所復号画像を予測処理単位である予測ブロック単位に比較して動きベクトルを探索し、その動きベクトルと符号化制御部2により決定された参照するフレーム番号などのインター予測パラメータを用いて、その符号化ブロックに対するインター予測処理(動き補償予測処理)を予測ブロック単位に実施してインター予測画像を生成する処理を実施する。
 なお、動き補償予測部5及び動き補償予測フレームメモリ12から動き補償予測手段が構成されている。
 減算部6はブロック分割部1より出力された符号化ブロックから、イントラ予測部4により生成されたイントラ予測画像、または、動き補償予測部5により生成されたインター予測画像を減算して、その減算結果である差分画像を示す予測差分信号を変換・量子化部7に出力する処理を実施する。なお、減算部6は差分画像生成手段を構成している。
 変換・量子化部7は符号化制御部2により決定された予測差分符号化パラメータに含まれる直交変換ブロック分割情報を参照して、減算部6から出力された予測差分信号に対する直交変換処理(例えば、DCT(離散コサイン変換)やDST(離散サイン変換)、予め特定の学習系列に対して基底設計がなされているKL変換等の直交変換処理)を直交変換ブロック単位に実施して変換係数を算出するとともに、その予測差分符号化パラメータに含まれる量子化パラメータを参照して、その直交変換ブロック単位の変換係数を量子化し、量子化後の変換係数である圧縮データを逆量子化・逆変換部8及び可変長符号化部13に出力する処理を実施する。
 なお、変換・量子化部7は画像圧縮手段を構成している。
 逆量子化・逆変換部8は符号化制御部2により決定された予測差分符号化パラメータに含まれる量子化パラメータ及び直交変換ブロック分割情報を参照して、直交変換ブロック単位に変換・量子化部7から出力された圧縮データを逆量子化するとともに逆量子化後の圧縮データである変換係数に対する逆直交変換処理を実施して、減算部6から出力された予測差分信号に相当する局所復号予測差分信号を算出する処理を実施する。
 加算部9は逆量子化・逆変換部8により算出された局所復号予測差分信号と、イントラ予測部4により生成されたイントラ予測画像、または、動き補償予測部5により生成されたインター予測画像とを加算して、ブロック分割部1から出力された符号化ブロックに相当する局所復号画像を算出する処理を実施する。
 なお、逆量子化・逆変換部8及び加算部9から局所復号画像生成手段が構成されている。
 イントラ予測用メモリ10は加算部9により算出された局所復号画像を格納する記録媒体である。
 ループフィルタ部11は加算部9により算出された局所復号画像に対して、所定のフィルタ処理を実施して、フィルタ処理後の局所復号画像を出力する処理を実施する。
 具体的には、直交変換ブロックの境界や予測ブロックの境界に発生する歪みを低減するフィルタ(デブロッキングフィルタ)処理、画素単位に適応的にオフセットを加算する(画素適応オフセット)処理、ウィーナフィルタ等の線形フィルタを適応的に切り替えてフィルタ処理する適応フィルタ処理などを行う。
 ただし、ループフィルタ部11は、上記のデブロッキングフィルタ処理、画素適応オフセット処理、適応フィルタ処理の中の1つの処理を行うように構成してもよいし、図10に示すように、2つ以上のフィルタ処理を行うように構成してもよい。
 一般に、使用するフィルタ処理の種類が多いほど、画像品質は向上するが、一方で処理負荷は高くなる。即ち、画像品質と処理負荷はトレードオフの関係にあるため、動画像符号化装置が許容する処理負荷にしたがって構成を決めればよい。
 なお、ループフィルタ部11はフィルタリング手段を構成している。
 ここで、画素適応オフセット処理は、最初に、最大符号化ブロック単位に、オフセット処理を行わない場合もクラス分類手法の一つとして定義して、予め用意している複数のクラス分類手法の中から、1つのクラス分類手法を選択する。
 次に、選択したクラス分類手法によってブロック内の各画素をクラス分類し、クラス毎に符号化対象画像と局所復号画像との間の輝度値の二乗誤差和が最小となるオフセット値を算出する。
 最後に、局所復号画像の輝度値に対して、そのオフセット値を加算する処理を行うことで局所復号画像の画像品質を改善する。
 したがって、画素適応オフセット処理は、最大符号化ブロック単位のクラス分類手法を示すインデックス、最大符号化ブロック単位の各クラスのオフセット値をフィルタパラメータの一部として可変長符号化部13に出力する。
 また、適応フィルタ処理は、図11に示すように、最大符号化ブロック単位にフィルタ処理を行わない場合も含めてクラス分類(グループ分類)を行い(図11の例では、クラス番号0が“フィルタ処理なし”を示している)、各クラス(グループ)に属する領域(局所復号画像)毎に、重畳されている歪みを補償するフィルタを設計し、そのフィルタを用いて、当該局所復号画像のフィルタ処理を実施する。
 そして、上記のクラス(グループ)の数(フィルタ数)、各クラス(グループ)に属する局所復号画像のフィルタ、最大符号化ブロック単位のクラス(グループ)の識別情報であるクラス番号(フィルタ番号)をフィルタパラメータの一部として可変長符号化部13に出力する。
 なお、画素適応オフセット処理及び適応フィルタ処理を行う場合には、映像信号をループフィルタ部11で参照する必要があるため、映像信号がループフィルタ部11に入力されるように図1の動画像符号化装置を変更する必要がある。
 また、画素適応オフセット処理と適応フィルタ処理を共に用いる手法として、図10に示す形ではなく、最大符号化ブロック単位に画素適応オフセット処理と適応フィルタ処理の何れか一方を最適選択するようにしてもよい。このようにすることで最大符号化ブロック毎のフィルタ処理の演算量を抑えつつ高精度なフィルタ処理が実現できる。ただし、このように構成した場合は、最大符号化ブロック単位の画素適応オフセット処理を行うか適応フィルタ処理を行うかの選択情報をフィルタパラメータの一部として可変長符号化部13に出力する。
 動き補償予測フレームメモリ12はループフィルタ部11のフィルタ処理後の局所復号画像を格納する記録媒体である。
 可変長符号化部13は変換・量子化部7から出力された圧縮データと、符号化制御部2の出力信号(最大符号化ブロック内のブロック分割情報、符号化モード、予測差分符号化パラメータ、イントラ予測パラメータ又はインター予測パラメータ)と、動き補償予測部5から出力された動きベクトル(符号化モードがインター符号化モードである場合)と、ループフィルタ部11から出力されたフィルタパラメータとを可変長符号化してビットストリームを生成する処理を実施する。なお、可変長符号化部13は可変長符号化手段を構成している。
 図1の例では、動画像符号化装置の構成要素であるブロック分割部1、符号化制御部2、切換スイッチ3、イントラ予測部4、動き補償予測部5、減算部6、変換・量子化部7、逆量子化・逆変換部8、加算部9、イントラ予測用メモリ10、ループフィルタ部11、動き補償予測フレームメモリ12及び可変長符号化部13のそれぞれが専用のハードウェア(例えば、CPUを実装している半導体集積回路や、ワンチップマイコンなど)で構成されているものを想定しているが、動画像符号化装置がコンピュータで構成される場合、ブロック分割部1、符号化制御部2、切換スイッチ3、イントラ予測部4、動き補償予測部5、減算部6、変換・量子化部7、逆量子化・逆変換部8、加算部9、ループフィルタ部11及び可変長符号化部13の処理内容を記述しているプログラムをコンピュータのメモリに格納し、当該コンピュータのCPUが当該メモリに格納されているプログラムを実行するようにしてもよい。
 図2はこの発明の実施の形態1による動画像符号化装置の処理内容(動画像符号化方法)を示すフローチャートである。
 図3はこの発明の実施の形態1による動画像復号装置を示す構成図である。
 図3において、可変長復号部31は図1の動画像符号化装置により生成されたビットストリームを入力すると、そのビットストリームから、階層的に分割されている各々の符号化ブロックの分割状況を示すブロック分割情報を可変長復号する。
 また、可変長復号部31はブロック分割情報を参照して、最大復号ブロック(図1の動画像符号化装置の「最大符号化ブロック」に相当するブロック)単位に、最大復号ブロックを階層的に分割して復号処理を行う単位である復号ブロック(図1の動画像符号化装置の「符号化ブロック」に相当するブロック)を特定し、各々の復号ブロックに係る圧縮データ、符号化モード、イントラ予測パラメータ(符号化モードがイントラ符号化モードである場合)、インター予測パラメータ(符号化モードがインター符号化モードである場合)、予測差分符号化パラメータ及び動きベクトル(符号化モードがインター符号化モードである場合)を可変長復号するとともに、最大復号ブロック毎のループフィルタ部38で用いるフィルタパラメータを可変長復号する処理を実施する。なお、可変長復号部31は可変長復号手段を構成している。
 逆量子化・逆変換部32は可変長復号部31により可変長復号された予測差分符号化パラメータに含まれる量子化パラメータ及び直交変換ブロック分割情報を参照して、可変長復号部31により可変長復号された圧縮データを直交変換ブロック単位に逆量子化するとともに逆量子化後の圧縮データである変換係数に対する逆直交変換処理を実施して、図1の逆量子化・逆変換部8から出力された局所復号予測差分信号と同一の復号予測差分信号を算出する処理を実施する。なお、逆量子化・逆変換部32は差分画像生成手段を構成している。
 切換スイッチ33は可変長復号部31により可変長復号された符号化モードがイントラ符号化モードであれば、可変長復号部31により可変長復号されたイントラ予測パラメータをイントラ予測部34に出力し、可変長復号部31により可変長復号された符号化モードがインター符号化モードであれば、可変長復号部31により可変長復号されたインター予測パラメータ及び動きベクトルを動き補償部35に出力する処理を実施する。
 イントラ予測部34は可変長復号部31により可変長復号されたブロック分割情報から特定される復号ブロックに係る符号化モードがイントラ符号化モードである場合、その復号ブロックの予測処理を行う際の予測処理単位である予測ブロック毎に、イントラ予測用メモリ37に格納されている復号画像を参照しながら、切換スイッチ33から出力されたイントラ予測パラメータを用いたイントラ予測処理(フレーム内予測処理)を実施してイントラ予測画像を生成する処理を実施する。
 なお、イントラ予測部34及びイントラ予測用メモリ37からイントラ予測手段が構成されている。
 動き補償部35は可変長復号部31により可変長復号されたブロック分割情報から特定される復号ブロックに係る符号化モードがインター符号化モードである場合、上記復号ブロックの予測処理を行う際の予測処理単位である予測ブロック毎に、動き補償予測フレームメモリ39に格納されている復号画像を参照しながら、切換スイッチ33から出力された動きベクトルとインター予測パラメータを用いたインター予測処理(動き補償予測処理)を実施してインター予測画像を生成する処理を実施する。
 なお、動き補償部35及び動き補償予測フレームメモリ39から動き補償予測手段が構成されている。
 加算部36は逆量子化・逆変換部32により算出された復号予測差分信号と、イントラ予測部34により生成されたイントラ予測画像、または、動き補償部35により生成されたインター予測画像とを加算して、図1の加算部9から出力された局所復号画像と同一の復号画像を算出する処理を実施する。なお、加算部36は復号画像生成手段を構成している。
 イントラ予測用メモリ37は加算部36により算出された復号画像を格納する記録媒体である。
 ループフィルタ部38は加算部36により算出された復号画像に対して、所定のフィルタ処理を実施して、フィルタ処理後の復号画像を出力する処理を実施する。
 具体的には、直交変換ブロックの境界や予測ブロックの境界に発生する歪みを低減するフィルタ(デブロッキングフィルタ)処理、画素単位に適応的にオフセットを加算する(画素適応オフセット)処理、ウィーナフィルタ等の線形フィルタを適応的に切り替えてフィルタ処理する適応フィルタ処理などを行う。
 ただし、ループフィルタ部38は、上記のデブロッキングフィルタ処理、画素適応オフセット処理、適応フィルタ処理の中の1つの処理を行うように構成してもよいし、図12に示すように、2つ以上のフィルタ処理を行うように構成してもよいが、動画像符号化装置のループフィルタ部11で行われるフィルタ処理と同じフィルタ処理を行うように構成しなくてはならない。
 なお、ループフィルタ部38はフィルタリング手段を構成している。
 ここで、画素適応オフセット処理は、可変長復号部31により可変長復号されたフィルタパラメータに含まれる最大復号ブロック単位のクラス分類手法を示すインデックスを参照し、そのインデックスが“オフセット処理を行わない”ことを示すインデックスでない場合、最大復号ブロック単位にブロック内の各画素をクラス分類する。
 次に、可変長復号部31により可変長復号されたフィルタパラメータに含まれているクラス毎のオフセット値を当該クラスに属する画素の輝度値に加算する処理を行うことで復号画像の画像品質を改善する。
 また、適応フィルタ処理は、可変長復号部31により可変長復号されたフィルタパラメータ(クラス(グループ)数(フィルタ数)、各クラス(グループ)に属する局所復号画像のフィルタ、最大復号ブロック単位のクラス(グループ)の識別情報であるクラス番号(フィルタ番号))を参照し、そのクラス番号が示すクラス(グループ)が“オフセット処理を行わない”ことを示すクラス(グループ)でない場合、そのクラス番号に対応するフィルタを用いて、そのクラス(グループ)に属する復号画像のフィルタ処理を行う。
 動き補償予測フレームメモリ39はループフィルタ部38のフィルタ処理後の復号画像を格納する記録媒体である。
 また、ループフィルタ部38のフィルタ処理全体の演算量を抑えつつ画素適応オフセット処理と適応フィルタ処理を共に用いる手法として、最大符号化ブロック単位に画素適応オフセット処理と適応フィルタ処理の何れか一方を最適選択するように動画像符号化装置のループフィルタ部11が構成されている場合、可変長復号部31により可変長復号されたフィルタパラメータに含まれている最大復号ブロック単位の画素適応オフセット処理を行うか適応フィルタ処理を行うかの選択情報を参照して、最大復号ブロック毎に画素適応オフセット処理か適応フィルタ処理を実施する。
 図3の例では、動画像復号装置の構成要素である可変長復号部31、逆量子化・逆変換部32、切換スイッチ33、イントラ予測部34、動き補償部35、加算部36、イントラ予測用メモリ37、ループフィルタ部38及び動き補償予測フレームメモリ39のそれぞれが専用のハードウェア(例えば、CPUを実装している半導体集積回路や、ワンチップマイコンなど)で構成されているものを想定しているが、動画像復号装置がコンピュータで構成される場合、可変長復号部31、逆量子化・逆変換部32、切換スイッチ33、イントラ予測部34、動き補償部35、加算部36及びループフィルタ部38の処理内容を記述しているプログラムをコンピュータのメモリに格納し、当該コンピュータのCPUが当該メモリに格納されているプログラムを実行するようにしてもよい。
 図4はこの発明の実施の形態1による動画像復号装置の処理内容(動画像復号方法)を示すフローチャートである。
 次に動作について説明する。
 この実施の形態1では、映像の各フレーム画像を入力画像として、符号化済みの近傍画素からのイントラ予測又は近接フレーム間での動き補償予測を実施して、得られた予測差分信号に対して直交変換・量子化による圧縮処理を施し、その後、可変長符号化を行ってビットストリームを生成する動画像符号化装置と、その動画像符号化装置から出力されるビットストリームを復号する動画像復号装置について説明する。
 図1の動画像符号化装置は、映像信号の空間・時間方向の局所的な変化に適応して、映像信号を多様なサイズのブロックに分割して、フレーム内・フレーム間適応符号化を行うことを特徴としている。
 一般的に、映像信号は、空間・時間的に信号の複雑さが局所的に変化する特性を有している。空間的に見ると、ある映像フレーム上では、例えば、空や壁などのような比較的広い画像領域中で均一な信号特性を有する絵柄もあれば、人物や細かいテクスチャを含む絵画など、小さい画像領域内で複雑なテクスチャパターンを有する絵柄も混在することがある。
 時間的に見ても、空や壁は局所的に時間方向の絵柄の変化は小さいが、動く人物や物体は、その輪郭が時間的に剛体・非剛体の運動をするため、時間的な変化が大きい。
 符号化処理は、時間・空間的な予測によって、信号電力やエントロピーの小さい予測差分信号を生成して、全体の符号量を削減する処理を行うが、予測に用いるパラメータをできるだけ大きな画像信号領域に均一に適用できれば、当該パラメータの符号量を小さくすることができる。
 一方、時間的・空間的に変化の大きい画像信号パターンに対して、同一の予測パラメータを大きな画像領域に適用すると、予測の誤りが増えてしまうため、予測差分信号の符号量が増加してしまう。
 したがって、時間的・空間的に変化が大きい領域では、同一の予測パラメータを適用して予測処理を行うブロックサイズを小さくして、予測に用いるパラメータのデータ量を増やし、予測差分信号の電力・エントロピーを低減する方が望ましい。
 この実施の形態1では、このような映像信号の一般的な性質に適応した符号化を行うため、最初に所定の最大ブロックサイズから予測処理等を開始し、階層的に映像信号の領域を分割し、分割した領域毎に予測処理や、その予測差分の符号化処理を適応化させる構成をとるようにしている。
 図1の動画像符号化装置が処理対象とする映像信号フォーマットは、輝度信号と2つの色差信号からなるYUV信号や、ディジタル撮像素子から出力されるRGB信号等の任意の色空間のカラー映像信号のほか、モノクロ画像信号や赤外線画像信号など、映像フレームが水平・垂直2次元のディジタルサンプル(画素)列から構成される任意の映像信号とする。
 ただし、各画素の階調は、8ビットでもよいし、10ビットや12ビットなどの階調でもよい。
 以下の説明では、便宜上、特に断らない限り、入力画像の映像信号はYUV信号であるとし、かつ、2つの色差成分U,Vが輝度成分Yに対して、サブサンプルされた4:2:0フォーマットの信号を扱う場合について述べる。
 また、映像信号の各フレームに対応する処理データ単位を「ピクチャ」と称する。
 この実施の形態1では、「ピクチャ」は順次走査(プログレッシブスキャン)された映像フレーム信号として説明を行うが、映像信号がインタレース信号である場合、「ピクチャ」は映像フレームを構成する単位であるフィールド画像信号であってもよい。
 最初に、図1の動画像符号化装置の処理内容を説明する。
 まず、符号化制御部2は、符号化対象となるピクチャ(カレントピクチャ)の符号化に用いる最大符号化ブロックのサイズと、最大符号化ブロックを階層分割する階層数の上限を決定する(図2のステップST1)。
 最大符号化ブロックのサイズの決め方としては、例えば、入力画像の映像信号の解像度に応じて、全てのピクチャに対して同一のサイズを定めてもよいし、入力画像の映像信号の局所的な動きの複雑さの違いをパラメータとして定量化して、動きの激しいピクチャには、小さいサイズを定める一方、動きが少ないピクチャには、大きいサイズを定めるようにしてもよい。
 分割階層数の上限の決め方としては、例えば、入力画像の映像信号の解像度に応じて、全てのピクチャに対して同一の階層数を定める方法や、入力画像の映像信号の動きが激しい場合には、階層数を深くして、より細かい動きが検出できるように設定し、動きが少ない場合には、階層数を抑えるように設定する方法などがある。
 また、符号化制御部2は、利用可能な1以上の符号化モードの中から、階層的に分割される各々の符号化ブロックに対応する符号化モードを選択する(ステップST2)。
 即ち、符号化制御部2は、最大符号化ブロックサイズの画像領域毎に、先に定めた分割階層数の上限に至るまで、階層的に符号化ブロックサイズを有する符号化ブロックに分割して、各々の符号化ブロックに対する符号化モードを決定する。
 符号化モードには、1つないし複数のイントラ符号化モード(総称して「INTRA」と称する)と、1つないし複数のインター符号化モード(総称して、「INTER」と称する)とがあり、符号化制御部2は、当該ピクチャで利用可能な全ての符号化モード、または、そのサブセットの中から、各々の符号化ブロックに対応する符号化モードを選択する。
 ただし、後述するブロック分割部1により階層的に分割される各々の符号化ブロックは、さらに予測処理を行う単位である1つないし複数の予測ブロックに分割され、予測ブロックの分割状態も符号化モードの中に情報として含まれる。すなわち、符号化モードはどのような予測ブロック分割を持つイントラモードまたはインター符号化モードかを識別するインデックスである。
 符号化制御部2による符号化モードの選択方法は、公知の技術であるため詳細な説明を省略するが、例えば、利用可能な任意の符号化モードを用いて、符号化ブロックに対する符号化処理を実施して符号化効率を検証し、利用可能な複数の符号化モードの中で、最も符号化効率がよい符号化モードを選択する方法などがある。
 また、符号化制御部2は、各々の符号化ブロック毎に、差分画像が圧縮される際に用いられる量子化パラメータ及び直交変換ブロック分割状態を決定するとともに、予測処理が実施される際に用いられる予測パラメータ(イントラ予測パラメータ又はインター予測パラメータ)を決定する。
 ただし、符号化ブロックがさらに予測処理を行う予測ブロック単位に分割される場合は、予測ブロック毎に予測パラメータ(イントラ予測パラメータ又はインター予測パラメータ)を選択することができる。
 さらに、符号化モードがイントラ符号化モードである符号化ブロックにおいては、詳細は後述するが、イントラ予測処理を行う際に予測ブロックに隣接する符号化済みの画素を用いることから、予測ブロック単位に符号化を行う必要があるため、選択可能な変換ブロックサイズは予測ブロックのサイズ以下に制限される。
 符号化制御部2は、量子化パラメータ及び変換ブロックサイズを含む予測差分符号化パラメータを変換・量子化部7、逆量子化・逆変換部8及び可変長符号化部13に出力する。
 また、符号化制御部2は、イントラ予測パラメータを必要に応じてイントラ予測部4に出力する。
 また、符号化制御部2は、インター予測パラメータを必要に応じて動き補償予測部5に出力する。
 ブロック分割部1は、入力画像として映像信号を入力すると、その入力画像を符号化制御部2により決定された最大符号化ブロックサイズに分割し、さらに、分割した最大符号化ブロックを符号化制御部2により決定された符号化ブロックへ階層的に分割して、その符号化ブロックを出力する。
 ここで、図5は最大符号化ブロックが階層的に複数の符号化ブロックに分割される例を示す説明図である。
 図5において、最大符号化ブロックは、「第0階層」と記されている輝度成分が(L,M)のサイズを有する符号化ブロックである。
 最大符号化ブロックを出発点として、4分木構造で別途定める所定の深さまで、階層的に分割を行うことによって符号化ブロックを得るようにしている。
 深さnにおいては、符号化ブロックはサイズ(L,M)の画像領域である。
 ただし、LとMは、同じであってもよいし、異なっていてもよいが、図5では、L=Mのケースを示している。
 以降、符号化制御部2により決定される符号化ブロックサイズは、符号化ブロックの輝度成分におけるサイズ(L,M)と定義する。
 4分木分割を行うため、常に、(Ln+1,Mn+1)=(L/2,M/2)が成立する。
 なお、RGB信号など、全ての色成分が同一サンプル数を有するカラー映像信号(4:4:4フォーマット)では、全ての色成分のサイズが(L,M)になるが、4:2:0フォーマットを扱う場合、対応する色差成分の符号化ブロックサイズは(L/2,M/2)になる。
 以降、第n階層の符号化ブロックをBで表し、符号化ブロックBで選択可能な符号化モードをm(B)で表すものとする。
 複数の色成分からなるカラー映像信号の場合、符号化モードm(B)は、色成分毎に、それぞれ個別のモードを用いるように構成されてもよいし、全ての色成分に対し共通のモードを用いるように構成されてもよい。以降、特に断らない限り、YUV信号、4:2:0フォーマットの符号化ブロックの輝度成分に対する符号化モードを指すものとして説明を行う。
 符号化ブロックBは、図5に示すように、ブロック分割部1によって、予測処理単位を表す1つないし複数の予測ブロックに分割される。
 以降、符号化ブロックBに属する予測ブロックをP (iは、第n階層における予測ブロック番号)と表記する。図5にはP とP の例を示している。
 符号化ブロックB内の予測ブロックの分割が、どのようになされているかは、符号化モードm(B)の中に情報として含まれる。
 予測ブロックP は、全て符号化モードm(B)に従って予測処理が行われるが、予測ブロックP 毎に、個別の予測パラメータ(イントラ予測パラメータ又はインター予測パラメータ)を選択することができる。
 符号化制御部2は、最大符号化ブロックに対して、例えば、図6に示すようなブロック分割状態を生成して、符号化ブロックを特定する。
 図6(a)の点線で囲まれた矩形が各符号化ブロックを表し、各符号化ブロック内にある斜線で塗られたブロックが各予測ブロックの分割状態を表している。
 図6(b)は、図6(a)の例について、階層分割によって符号化モードm(B)が割り当てられる状況を4分木グラフで示したものである。図6(b)の□で囲まれているノードは、符号化モードm(B)が割り当てられたノード(符号化ブロック)である。
 この4分木グラフの情報は符号化モードm(B)と共に符号化制御部2から可変長符号化部13に出力されて、ビットストリームに多重化される。
 切換スイッチ3は、符号化制御部2により決定された符号化モードm(B)がイントラ符号化モードである場合(m(B)∈INTRAの場合)、ブロック分割部1から出力された符号化ブロックBをイントラ予測部4に出力する。
 一方、符号化制御部2により決定された符号化モードm(B)がインター符号化モードである場合(m(B)∈INTERの場合)、ブロック分割部1から出力された符号化ブロックBを動き補償予測部5に出力する。
 イントラ予測部4は、符号化制御部2により決定された符号化モードm(B)がイントラ符号化モードであり(m(B)∈INTRAの場合)、切換スイッチ3から符号化ブロックBを受けると(ステップST3)、イントラ予測用メモリ10に格納されている局所復号画像を参照しながら、符号化制御部2により決定されたイントラ予測パラメータを用いて、その符号化ブロックB内の各予測ブロックP に対するイントラ予測処理を実施して、イントラ予測画像PINTRAi を生成する(ステップST4)。
 なお、動画像復号装置がイントラ予測画像PINTRAi と全く同じイントラ予測画像を生成する必要があるため、イントラ予測画像PINTRAi の生成に用いられたイントラ予測パラメータは、符号化制御部2から可変長符号化部13に出力されて、ビットストリームに多重化される。
 イントラ予測部4の処理内容の詳細は後述する。
 動き補償予測部5は、符号化制御部2により決定された符号化モードm(B)がインター符号化モードであり(m(B)∈INTERの場合)、切換スイッチ3から符号化ブロックBを受けると(ステップST3)、その符号化ブロックB内の各予測ブロックP と動き補償予測フレームメモリ12に格納されているフィルタ処理後の局所復号画像を比較して動きベクトルを探索し、その動きベクトルと符号化制御部2により決定されたインター予測パラメータを用いて、その符号化ブロックB内の各予測ブロックP に対するインター予測処理を実施して、インター予測画像PINTERi を生成する(ステップST5)。
 なお、動画像復号装置がインター予測画像PINTERi と全く同じインター予測画像を生成する必要があるため、インター予測画像PINTERi の生成に用いられたインター予測パラメータは、符号化制御部2から可変長符号化部13に出力されて、ビットストリームに多重化される。
 また、動き補償予測部5により探索された動きベクトルも可変長符号化部13に出力されて、ビットストリームに多重化される。
 減算部6は、ブロック分割部1から符号化ブロックBを受けると、その符号化ブロックB内の予測ブロックP から、イントラ予測部4により生成されたイントラ予測画像PINTRAi 、または、動き補償予測部5により生成されたインター予測画像PINTERi のいずれか一方を減算して、その減算結果である差分画像を示す予測差分信号e を変換・量子化部7に出力する(ステップST6)。
 変換・量子化部7は、減算部6から予測差分信号e を受けると、符号化制御部2により決定された予測差分符号化パラメータに含まれる直交変換ブロック分割情報を参照して、その予測差分信号e に対する直交変換処理(例えば、DCT(離散コサイン変換)やDST(離散サイン変換)、予め特定の学習系列に対して基底設計がなされているKL変換等の直交変換処理)を直交変換ブロック単位に実施して、変換係数を算出する。
 また、変換・量子化部7は、その予測差分符号化パラメータに含まれる量子化パラメータを参照して、その直交変換ブロック単位の換係数を量子化し、量子化後の変換係数である圧縮データを逆量子化・逆変換部8及び可変長符号化部13に出力する(ステップST7)。
 逆量子化・逆変換部8は、変換・量子化部7から圧縮データを受けると、符号化制御部2により決定された予測差分符号化パラメータに含まれる量子化パラメータ及び直交変換ブロック分割情報を参照して、直交変換ブロック単位にその圧縮データを逆量子化する。
 また、逆量子化・逆変換部8は、直交変換ブロック単位に逆量子化後の圧縮データである変換係数に対する逆直交変換処理(例えば、逆DCT、逆DST、逆KL変換など)を実施して、減算部6から出力された予測差分信号e に相当する局所復号予測差分信号を算出して加算部9に出力する(ステップST8)。
 加算部9は、逆量子化・逆変換部8から局所復号予測差分信号を受けると、その局所復号予測差分信号と、イントラ予測部4により生成されたイントラ予測画像PINTRAi 、または、動き補償予測部5により生成されたインター予測画像PINTERi のいずれか一方を加算することで、局所復号画像を算出する(ステップST9)。
 なお、加算部9は、その局所復号画像をループフィルタ部11に出力するとともに、その局所復号画像をイントラ予測用メモリ10に格納する。
 この局所復号画像が、以降のイントラ予測処理の際に用いられる符号化済みの画像信号になる。
 ループフィルタ部11は、加算部9から局所復号画像を受けると、その局所復号画像に対して、所定のフィルタ処理を実施して、フィルタ処理後の局所復号画像を動き補償予測フレームメモリ12に格納する(ステップST10)。
 ループフィルタ部11の処理内容の詳細は後述する。
 ステップST3~ST9の処理は、階層的に分割された全ての符号化ブロックBに対する処理が完了するまで繰り返し実施され、全ての符号化ブロックBに対する処理が完了すると、ステップST13の処理に移行する(ステップST11,ST12)。
 可変長符号化部13は、変換・量子化部7から出力された圧縮データと、符号化制御部2から出力された最大符号化ブロック内のブロック分割情報(図6(b)を例とする4分木情報)、符号化モードm(B)及び予測差分符号化パラメータと、符号化制御部2から出力されたイントラ予測パラメータ(符号化モードがイントラ符号化モードである場合)又はインター予測パラメータ(符号化モードがインター符号化モードである場合)と、動き補償予測部5から出力された動きベクトル(符号化モードがインター符号化モードである場合)と、ループフィルタ部11から出力されたフィルタパラメータとを可変長符号化して、それらの符号化結果を示すビットストリームを生成する(ステップST13)。
 可変長符号化部13によるフィルタパラメータの可変長符号化処理の詳細については後述する。
 次に、イントラ予測部4の処理内容を詳細に説明する。
 図7は符号化ブロックB内の各予測ブロックP が選択可能なイントラ予測パラメータであるイントラ予測モードの一例を示す説明図である。ただし、Nはイントラ予測モード数を表している。
 図7では、イントラ予測モードのインデックス値と、そのイントラ予測モードが示す予測方向ベクトルを示しており、図7の例では、選択可能なイントラ予測モードの個数が増えるに従って、予測方向ベクトル同士の相対角度が小さくなるように設計されている。
 イントラ予測部4は、上述したように、予測ブロックP のイントラ予測パラメータを参照して、その予測ブロックP に対するイントラ予測処理を実施して、イントラ予測画像PINTRAi を生成するが、ここでは、輝度信号における予測ブロックP のイントラ予測信号を生成するイントラ処理について説明する。
 予測ブロックP のサイズをl ×m 画素とする。
 図8はl =m =4の場合の予測ブロックP 内の画素の予測値を生成する際に用いる画素の一例を示す説明図である。
 図8では、予測ブロックP の上の符号化済みの(2×l +1)個の画素と、左の符号化済みの(2×m )個の画素を予測に用いる画素としているが、予測に用いる画素は、図8に示す画素より多くても少なくてもよい。
 また、図8では、予測ブロックP の近傍の1行又は1列分の画素を予測に用いているが、2行又は2列、あるいは、それ以上の画素を予測に用いてもよい。
 予測ブロックP に対するイントラ予測モードのインデックス値が0(平面(Planar)予測)の場合には、予測ブロックP の上に隣接する符号化済み画素と予測ブロックP の左に隣接する符号化済み画素を用いて、これら画素と予測ブロックP 内の予測対象画素との距離に応じて内挿した値を予測値として予測画像を生成する。
 予測ブロックP に対するイントラ予測モードのインデックス値が2(平均値(DC)予測)の場合には、予測ブロックP の上に隣接する符号化済み画素と予測ブロックP の左に隣接する符号化済み画素の平均値を予測ブロックP 内の画素の予測値として予測画像を生成する。
 イントラ予測モードのインデックス値が0(平面予測)と2(平均値予測)以外の場合には、インデックス値が示す予測方向ベクトルυ=(dx,dy)に基づいて、予測ブロックP 内の画素の予測値を生成する。
 図9に示すように、予測ブロックP の左上画素を原点として、予測ブロックP 内の相対座標を(x,y)と設定すると、予測に用いる参照画素の位置は、下記のLと隣接画素の交点になる。
Figure JPOXMLDOC01-appb-I000002
 参照画素が整数画素位置にある場合には、その整数画素を予測対象画素の予測値とし、参照画素が整数画素位置にない場合には、参照画素に隣接する整数画素から生成される補間画素を予測値とする。
 図8の例では、参照画素は整数画素位置にないので、参照画素に隣接する2画素から内挿したものを予測値とする。なお、隣接する2画素のみではなく、隣接する2画素以上の画素から補間画素を生成して予測値としてもよい。
 補間処理に用いる画素を多くすることで補間画素の補間精度を向上させる効果がある一方、補間処理に要する演算の複雑度が増加することから、演算負荷が大きくても高い符号化性能を要求する動画像符号化装置の場合には、より多くの画素から補間画素を生成するようにした方がよい。
 以上に述べた処理によって、予測ブロックP 内の輝度信号の全ての画素に対する予測画素を生成して、イントラ予測画像PINTRAi を出力する。
 なお、イントラ予測画像PINTRAi の生成に用いられたイントラ予測パラメータ(イントラ予測モード)は、ビットストリームに多重化するために可変長符号化部13に出力される。
 なお、先に説明したMPEG-4 AVC/H.264における8×8画素のブロックのイントラ予測時に参照画像に対して施される平滑化処理と同様に、イントラ予測部4において、予測ブロックP の中間予測画像を生成する際の参照画素を、予測ブロックP に隣接する符号化済み画素を平滑化処理した画素とするように構成した場合であっても、上述の例と同様の中間予測画像に対するフィルタ処理を行うことができる。
 予測ブロックP の色差信号に対しても、輝度信号と同様の手順で、イントラ予測パラメータ(イントラ予測モード)に基づくイントラ予測処理を実施し、イントラ予測画像の生成に用いられたイントラ予測パラメータを可変長符号化部13に出力する。
 ただし、色差信号で選択可能なイントラ予測パラメータ(イントラ予測モード)は輝度信号と異なっていてもよい。例えば、YUV信号4:2:0フォーマットの場合、色差信号(U、V信号)は、輝度信号(Y信号)に対して解像度を水平方向、垂直方向共に1/2に縮小した信号であり、輝度信号と比べて、画像信号の複雑性が低く、予測が容易であることから、選択可能なイントラ予測パラメータは輝度信号よりも少ない数としてイントラ予測パラメータを符号化するのに要する符号量の削減や、予測処理の低演算化を図ってもよい。
 次に、ループフィルタ部11の処理内容を詳細に説明する。
 ループフィルタ部11は、加算部9により算出された局所復号画像に対して、所定のフィルタ処理を実施して、フィルタ処理後の局所復号画像を出力する処理を実施する。
 具体的には、直交変換ブロックの境界や予測ブロックの境界に発生する歪みを低減するフィルタ(デブロッキングフィルタ)処理、画素単位に適応的にオフセットを加算する(画素適応オフセット)処理、ウィーナフィルタ等の線形フィルタを適応的に切り替えてフィルタ処理する適応フィルタ処理などを行う。
 ただし、ループフィルタ部11は、上記のデブロッキングフィルタ処理、画素適応オフセット処理、適応フィルタ処理の中の1つの処理を行うように構成してもよいし、図10に示すように、2つ以上のフィルタ処理を行うように構成してもよい。
 一般に、使用するフィルタ処理の種類が多いほど、画像品質は向上するが、一方で処理負荷は高くなる。即ち、画像品質と処理負荷はトレードオフの関係にあるため、動画像符号化装置が許容する処理負荷にしたがって構成を決めればよい。
 ここで、画素適応オフセット処理は、最初に、最大符号化ブロック単位に所定の手法で、ブロック内の各画素をクラス分類し、クラス毎に符号化対象画像と局所復号画像との間の輝度値の二乗誤差和が最小となるオフセット値を算出する。
 そして、各クラスのオフセット値を当該クラスに属する画素(局所復号画像の画素)の輝度値に加算する処理を行うことで局所復号画像の画像品質を改善する。
 クラス分類を行う所定の手法としては、局所復号画像の輝度値の大きさで分類する手法や、図20に示すようなエッジの方向毎に、各画素の周囲の状況(エッジ部か否か等)に応じて分類する手法があり、これらの手法は、予め画像符号化装置及び画像復号装置共通で用意されており、オフセット処理を行わない場合もクラス分類手法の一つとして定義して、符号化側では、これらの手法の中で、どの手法を用いて、クラス分類を行うかを上記ブロック単位に選択する。
 また、ピクチャ全体で画素適応オフセット処理を行わない場合と、上記で決定した画素適応オフセット処理を行う場合を比較して、どちらが良いか選択する。
 したがって、画素適応オフセット処理は、ピクチャレベルの画素適応オフセット処理の有無情報と、この有無情報が“有り”を示す場合は、最大符号化ブロック単位のクラス分類手法を示すインデックス、最大符号化ブロック単位の各クラスのオフセット値をフィルタパラメータの一部として可変長符号化部13に出力する。
 次に、適応フィルタ処理を具体的に説明する。
 図13は適応フィルタ処理の一例を示すフローチャートである。
 図13の例では、最大符号化ブロック単位の適応フィルタ処理を実施するために、ステップST102~ST106のフィルタ選択及びフィルタ処理を各最大符号化ブロックに対して実行する(ステップST101)。
 ステップST102~ST106のフィルタ選択及びフィルタ処理について説明する。
 まず、現在の処理対象の最大符号化ブロックに対して、フィルタ処理を実施しない場合のコストCをフィルタ番号0の場合として算出する(ステップST102)。
 コストの定義としては、下記に示す例がある。
   コスト=D+λ・R          (3)
 ただし、Dはブロック内における符号化対象の画像信号と、フィルタ処理後の局所復号画像信号間の二乗誤差和、λは定数である。
 また、Rは使用するフィルタを選択するためのフィルタ番号と、そのフィルタ番号に対応するフィルタの係数とを符号化する際に要する符号量である。
 ここでは、コストを式(3)で表しているが、例えば、二乗誤差和Dだけをコストとしてもよい。このようにすることで、コストとしての正確性は低下するが、コストの算出負荷が減少する。
 また、Dは二乗誤差和ではなく、より演算負荷の低い誤差の絶対値和であってもよい。
 コストをどのような式で定義するかは、動画像符号化装置が許容する演算負荷に従って決めればよい。
 なお、フィルタ処理を実施しない場合のコストCの場合、Dは符号化対象の画像信号とフィルタ処理を行っていない局所復号画像信号間の二乗誤差和となり、フィルタに要する符号量Rは0となる。
 次に、処理対象の最大符号化ブロック内の画素を対象にして、符号化対象の画像信号と局所復号画像信号間の二乗誤差和を最小化するウィーナフィルタを式(1)に従って算出し(ステップST103)、ブロック内の画素に対して、フィルタ処理を実施した場合のコストCnewを算出する(ステップST104)。ここで、ウィーナによるフィルタ処理は下記の式(4)で表される。
Figure JPOXMLDOC01-appb-I000003
 ただし、xはフィルタ処理対象画素、x(l=0,1,2,・・・,L-1)はフィルタの参照画素(フィルタ処理対象画素を含む)、Lはフィルタの参照画素数である。
 また、S(x)は画素xの輝度値、S’(x)は画素xにおけるフィルタ処理後の輝度値、a(m=0,1,2,・・・,L)はフィルタ係数を表している。
 なお、aはオフセット係数を示し、常にa=0としてオフセット係数を無効としてもよい。このようにすることで、フィルタ性能は低下するものの、符号化すべきフィルタ係数が削減され、フィルタ係数の符号化に要する符号量を削減することができる。
 さらに、現在の処理対象の最大符号化ブロックで設計したフィルタ以外に使用できるフィルタ(フィルタ番号1,2,・・・,numblに設定されたフィルタ)を用いて、フィルタ処理を実施した場合のコストC,C,・・・,Cnumblを算出する(ステップST105)。
 ただし、numblは現在の処理対象の最大符号化ブロックで設計したフィルタ以外に使用できるフィルタの数を表している。
 現在の処理対象の最大符号化ブロックで設計したフィルタ以外に使用できるフィルタの例としては、既にフィルタ処理を実施した最大符号化ブロックで使用したフィルタや、符号化処理を行う前に予め用意したフィルタなどが挙げられる。
 次に、これまでに算出した各コストCnew,C,C,C,・・・,Cnumblの中で、最小となるコストを特定し、そのコストに係るフィルタ処理を現在の処理対象の最大符号化ブロックでのフィルタ処理に決定する(ステップST106)。
 その際、決定したフィルタ処理が、現在の処理対象の最大符号化ブロックで設計したフィルタ(コストCnew)であった場合、この設計したフィルタを次の処理対象の最大符号化ブロックで使用できるnumbl+1番目のフィルタ(フィルタ番号numbl+1)として設定し、使用できるフィルタ数numblを1加算する。
 そして、次の処理対象の最大符号化ブロックのフィルタ選択及びフィルタ処理に移る(ステップST107)。なお、上記で設定しているフィルタ番号をクラス番号と定義し、そのフィルタの数をクラス数と称する。
 以上の処理を全ての最大符号化ブロックに対して実施し、最後にピクチャ全体で適応フィルタ処理を行わない場合と、上記で決定した最大符号化ブロック単位の適応フィルタ処理を行う場合とを比較し、最適な方を選択する。
 したがって、適応フィルタ処理は、ピクチャレベルの適応フィルタ処理の有無情報と、この有無情報が“有り”を示す場合は、クラス数、“フィルタ処理なし”を含む最大符号化ブロック単位のクラス番号、各クラスのフィルタ係数をフィルタパラメータの一部として可変長符号化部13に出力する。
 なお、適応フィルタ処理の例としては、図13以外にも図14に示す例などが考えられる。
 図14の例においても、各最大符号化ブロックでのフィルタ処理の選択手法が異なるだけで、図11に示すように、最大符号化ブロック単位の使用するフィルタを表すクラス番号と、各クラス番号に対応するフィルタを可変長符号化部13に出力するフィルタパラメータとする点は同じである。
 即ち、図14の例では、予めピクチャ内で使用するフィルタを用意しておき(ステップST108)、各最大符号化ブロックに対して、フィルタ処理を行わない場合のコストC(ステップST110)と、予め用意したフィルタを用いた場合のコストC,C,・・・,Cnumbl(ステップST111)とを算出して、コストが最小となる最適なフィルタ処理を選択する(ステップST112)。
 そして、ステップST110~ST112までの処理をピクチャ内の全ての最大符号化ブロックに対して実施することで(ステップST109,ST113)、各最大符号化ブロックでのフィルタ処理を決定する。
 図13の例と比較して、図14の例では、予め用意したフィルタセットのみを使用するため、最大符号化ブロック単位のフィルタ設計の処理が不要となる。このため、フィルタの最適性は低下するが、処理負荷を軽減することができる。
 したがって、フィルタ処理の画質改善効果よりも処理負荷を重視する場合は、図14の例を用いればよい。
 また、上記例では、最大符号化ブロック単位に最適なフィルタ処理を決定しているが、最大符号化ブロックよりも小さい領域単位で考えると、フィルタ処理によって符号化対象画像と局所復号画像との間の輝度値の二乗誤差和が増加してしまう場合が存在する可能性がある。
 したがって、図15に示すように、最大符号化ブロックを分割した符号化ブロック単位にフィルタ処理を実施するか否かを選択するようにしてもよい。
 このようにすることで、符号化対象画像と局所復号画像との間の輝度値の二乗誤差が増加してしまう画素数を減らすことができるため、高精度なフィルタ処理を実現することができる。本処理を行う場合には、符号化ブロック単位のフィルタ処理の有無情報もフィルタパラメータとして符号化する必要がある。
 なお、本符号化ブロック単位のフィルタのオン・オフ処理は、画素適応オフセット処理に導入しても、適応フィルタ処理に導入した場合と同様の効果が得られる。
 さらに、上記例では、最大符号化ブロック単位に最適なフィルタ処理を1つ決定しているが、最大符号化ブロック単位内の小ブロック単位に局所的性質(分散などの輝度値の散らばり度、エッジの方向)などに応じてグループ分類を行い、そのグループ毎にフィルタを設計し、フィルタ処理を行うようにしてもよい。このようにすることで、最大符号化ブロック単位にグループ数分のフィルタを符号化する必要があるためフィルタに要する符号量は増加するものの、より小さい領域単位に最適なフィルタを用いることが可能になるため、高精度なフィルタ処理を実現することができる。本処理を行うように動画像符号化装置を構成する場合は、動画像復号装置側でも動画像符号化装置と同一のグループ分類を行うように構成する必要がある。
 また、画素適応オフセット処理と適応フィルタ処理を共に用いる手法として、図10に示す形ではなく、最大符号化ブロック単位に画素適応オフセット処理と適応フィルタ処理の何れか一方を最適選択するようにしてもよい。このようにすることで最大符号化ブロック毎のフィルタ処理の演算量を抑えつつ高精度なフィルタ処理が実現できる。ただし、このように構成した場合は、最大符号化ブロック単位の画素適応オフセット処理を行うか適応フィルタ処理を行うかの選択情報をフィルタパラメータの一部として可変長符号化部13に出力して符号化する。
 また、上記例では最大符号化ブロック単位に画素適応オフセット処理のクラス分類手法選択、適応フィルタ処理のクラス選択を行うものについて説明したが、任意のブロックサイズ単位で行えるようにしてもよい。このようにすることで、絵柄が複雑でない画像では最大符号化ブロックよりも大きいブロックサイズで行うことで画質改善性能をあまり低下させることなく符号化すべきブロック単位の選択情報を削減することができる。一方、絵柄が複雑な画像では最大符号化ブロックよりも小さいブロックサイズで行うことで符号化すべきブロック単位の選択情報は増加するものの、複雑な絵柄の変化に追随した処理が可能となるため大きな画質改善効果が得られる。なお、上記のように任意のブロックサイズ単位に画素適応オフセット処理のクラス分類手法選択、適応フィルタ処理のクラス選択を行うようにする場合、上記ブロックサイズをフィルタパラメータの一部として可変長符号化部13に出力して符号化する。
 次に、フィルタパラメータの可変長符号化処理の詳細について説明する。
 可変長符号化部13では、ループフィルタ部11から出力されたフィルタパラメータを可変長符号化する。
 フィルタパラメータとしては、画素適応オフセット処理に必要なパラメータとして、ピクチャレベルの画素適応オフセット処理の有無情報と、その有無情報が“処理有り”の場合は、最大符号化ブロック単位のクラス分類手法を示すインデックスと、最大符号化ブロック単位の各クラスのオフセット値とがある。
 また、適応フィルタ処理に必要なパラメータとして、ピクチャレベルの適応フィルタ処理の有無情報と、その有無情報が“処理有り”の場合は、クラス数、最大符号化ブロック単位の使用するフィルタを示すクラス番号と、各クラス番号に対応するフィルタ係数がある。
 特に、適応フィルタ処理の最大符号化ブロック単位のクラス番号の可変長符号化は、図16に示すMove-To-Frontを用いた符号化処理を実施する。
 Move-To-Frontとは、クラス番号を符号化した後に、そのクラス番号を最も小さい符号化インデックス(インデックス0)に割り当てて、その他のクラス番号は対応する符号化インデックスを1加算する処理である。
 このように最大符号化ブロック毎に符号化インデックスを更新することで、クラス番号に空間的相関が存在する場合は、符号化インデックスの生起確率が0近傍に偏り、この発生頻度確率に応じた可変長符号化を実施することで高い符号化効率で符号化することができる。
 さらに、上記符号化インデックスの可変長符号化にゴロム符号を用いる場合、符号化インデックスの最大値は復号処理に不要である。すなわち、ゴロム符号を用いる場合、クラス数は必要ないため符号化しなくてよい。したがって、ゴロム符号を用いればクラス数の符号化に要する符号量を削減できる。また、アルファ符号(Unary符号)や、ガンマ符号、デルタ符号などを用いた場合でも同様に符号化インデックスの最大値は復号処理に不要であるため、クラス数の符号化は不要となる。
 あるいは、最大符号化ブロック毎に符号化時に選択可能なフィルタインデックス数(図13のnumbl)で可変長符号化の確率モデルを毎回設計してエントロピー符号化を行ってもよい。このようにすることで、実際に選択可能なフィルタのみの発生確率に基づいて符号化できるため、より高効率な符号化が実施できる。なお、この場合もクラス数を符号化する必要はなく、符号量を抑えることができる。
 最大符号化ブロック単位のクラス番号(フィルタ番号)の符号化手法としては、図17に示すように、先に最大符号化ブロック単位のフィルタ処理の有無情報を符号化し、さらに、その有無情報が“フィルタ処理有り”を示す場合は、上記で説明したクラス番号の符号化を実施するようにしてもよい。このようにすることで、フィルタ処理なしの場合の各クラスの生起確率と、フィルタ処理ありの場合の各クラスの生起確率とが大きく異なる場合に、可変長符号化の確率モデルの設計を簡単化することができる。
 また、画素適応オフセット処理の最大符号化ブロック単位のクラス分類手法を示すインデックスの符号化についても、上記適応フィルタ処理の最大符号化ブロック単位のクラス番号の符号化と同様に、Move-To-Frontを用いると、インデックスの生起確率を0近傍に偏りやすくし、この発生頻度確率に応じた可変長符号化を実施することで高い符号化効率で符号化することができる。
 適応フィルタ処理の最大符号化ブロック単位のクラス番号(クラスインデックス)の符号化と、画素適応オフセット処理の最大符号化ブロック単位のクラス分類手法を示すインデックスの符号化については、上記のMove-To-Frontを用いる符号化手法の他にも、最大符号化ブロック単位に周囲のブロック(例えば、上と左のブロック)と同じか否か示すフラグと、フラグが“同じ”を示す場合は、どのブロックと同じかを示すインデックス、フラグが“同じでない”を示す場合は、符号化対象のインデックスを符号化する手法も考えられる。
 他にも、図23に示すように、上のブロックと同じインデックスかどうかを示すフラグと、右に同じインデックスが何ブロック続くかを示すパラメータ(run-length)を符号化しするようにし、符号化対象ブロックが左のブロックと同じインデックスでなく、上のブロックとも同じインデックスでない場合、すなわち、符号化対象ブロックの左のブロックでrun-lengthが終了していて上のブロックと同じインデックスかどうかを示すフラグが“同じでない”を示す場合のみ、符号化対象のインデックスを符号化する手法も考えられる。
 これらの手法もMove-To-Frontを用いる符号化手法と同様に、符号化対象ブロックの左のブロックとのインデックスに空間的相関が存在する場合は高い符号化効率を実現することができる。さらに、これらの手法はMove-To-Frontを用いる符号化手法とは異なり、符号化対象ブロックの上のブロックとのインデックスに空間的相関が存在する場合についても高い符号化効率を実現することができる。
 なお、ヘッダ情報にピクチャ単位で使用できる画素適応オフセット処理の最大オフセット数や適応フィルタ処理の最大クラス数を符号化するようにしてもよい。このようにすることで、復号側でもピクチャ当りに復号しなければならない最大のオフセット数やフィルタ数がわかるため、リアルタイム復号装置を実現するための制限をヘッダ情報にて規定できるようになる。
 ここで、図18は可変長符号化部13によって生成されるビットストリームを示している。
 ビットストリームでは、シーケンスレベルヘッダとピクチャレベルヘッダがピクチャデータの前に少なくとも一つは挿入されており、各ピクチャの復号に必要なパラメータが参照できるようになっている。
 また、ピクチャデータは、少なくとも1つ以上のスライスに分かれて符号化されており、スライスは最大符号化ブロックを分割した符号化ブロック単位に構成することができる。
 そして、ピクチャレベルヘッダと同様に、可変長符号化されたフィルタパラメータは、フィルタパラメータセットとして、ピクチャデータの前に少なくとも1つは挿入されている。
 各スライスは、スライスヘッダにどのフィルタパラメータセットを参照するかを示すインデックスを持つことで、各スライスでループフィルタ部11の処理に必要なパラメータを参照することができるようになっている。
 また、適応フィルタ処理と画素適応オフセット処理は、図15に示すように、最大符号化ブロックを分割した符号化ブロック単位にフィルタ処理を実施するか否かを選択するように適応フィルタ処理を定義している場合、この符号化ブロック単位のフィルタ処理の有無情報を可変長符号化してピットストリームに多重する。符号化された符号化ブロック単位のフィルタ処理の有無情報は、図18のスライス単位に、各スライスの持つ符号化ブロックの範囲のフィルタ処理の有無情報をスライスヘッダに多重する。もしくは、その他のフィルタパラメータと一緒にフィルタパラメータセットとしてビットストリームに多重してもよい。
 次に、図3の動画像復号装置の処理内容を具体的に説明する。
 可変長復号部31は、図1の動画像符号化装置により生成されたビットストリームを入力すると、そのビットストリームに対する可変長復号処理を実施して(図4のステップST21)、1フレーム以上のピクチャから構成されるシーケンス単位、あるいは、ピクチャ単位にフレームサイズの情報を復号する。
 その際、フィルタパラメータセットとして符号化されたループフィルタ部38で使用するフィルタパラメータを復号する。
 フィルタパラメータとしては、画素適応オフセット処理に必要なパラメータとして、ピクチャレベルの画素適応オフセット処理の有無情報と、その有無情報が“処理有り”の場合は、最大復号ブロック単位のクラス分類手法を示すインデックスと、最大復号ブロック単位の各クラスのオフセット値とがある。
 適応フィルタ処理に必要なパラメータとして、ピクチャレベルの適応フィルタ処理の有無情報と、その有無情報が“処理有り”の場合は、クラス数と、最大復号ブロック単位の使用するフィルタを表すクラス番号と、各クラス番号に対応するフィルタ係数とがある。
 ただし、最大復号ブロック単位の使用するフィルタを表すクラス番号の符号化をゴロム符号やアルファ符号(Unary符号)、ガンマ符号、デルタ符号などを用いて行っていたり、各最大復号ブロックで選択できるクラス数のみで確率モデルを設計してエントロピー符号化を行っていたりする場合はクラス数が不明でも復号できるため、動画像符号化装置にてクラス数を符号化する必要はなく、このように動画像符号化装置がクラス数を符号化していない場合は動画像復号装置においてもクラス数の復号は行わない。
 また、可変長復号部31は、図1の動画像符号化装置の符号化制御部2により決定された最大符号化ブロックサイズ及び分割階層数の上限を動画像符号化装置と同様の手順で決定する(ステップST22)。
 例えば、最大符号化ブロックサイズや分割階層数の上限が映像信号の解像度に応じて決められた場合には、復号したフレームサイズ情報に基づいて、動画像符号化装置と同様の手順で最大符号化ブロックサイズを決定する。
 最大符号化ブロックサイズ及び分割階層数の上限が、動画像符号化装置側でビットストリームに多重化されている場合には、ビットストリームから復号した値を用いる。
 以降、動画像復号装置では、上記最大符号化ブロックサイズを最大復号ブロックサイズと称し、最大符号化ブロックを最大復号ブロックと称する。
 可変長復号部31は、決定された最大復号ブロック単位に、図6で示されるような最大復号ブロックの分割状態を復号する。復号された分割状態に基づき、階層的に復号ブロック(図1の動画像符号化装置の「符号化ブロック」に相当するブロック)を特定する(ステップST23)。
 次に、可変長復号部31は、復号ブロックに割り当てられている符号化モードを復号する。
 可変長復号部31は、その符号化モードに含まれる情報に基づき、復号ブロックをさらに1つないし複数の予測処理単位である予測ブロックに分割し、予測ブロック単位に割り当てられている予測パラメータを復号する(ステップST24)。
 即ち、可変長復号部31は、復号ブロックに割り当てられている符号化モードがイントラ符号化モードである場合、復号ブロックに含まれており、予測処理単位となる1つ以上の予測ブロック毎にイントラ予測パラメータを復号する。
 一方、復号ブロックに割り当てられている符号化モードがインター符号化モードである場合、復号ブロックに含まれており、予測処理単位となる1つ以上の予測ブロック毎にインター予測パラメータ及び動きベクトルを復号する(ステップST24)。
 また、可変長復号部31は、予測差分符号化パラメータに含まれる直交変換ブロック分割情報に基づき、直交変換ブロック毎に圧縮データ(変換・量子化後の変換係数)を復号する(ステップST24)。
 切換スイッチ33は、可変長復号部31により可変長復号された符号化モードm(B)がイントラ符号化モードであれば(m(B)∈INTRAの場合)、可変長復号部31により可変長復号された予測ブロック単位のイントラ予測パラメータをイントラ予測部34に出力する。
 一方、可変長復号部31により可変長復号された符号化モードm(B)がインター符号化モードであれば(m(B)∈INTERの場合)、可変長復号部31により可変長復号された予測ブロック単位のインター予測パラメータ及び動きベクトルを動き補償部35に出力する。
 イントラ予測部34は、可変長復号部31により可変長復号された符号化モードm(B)がイントラ符号化モード(m(B)∈INTRA)である場合(ステップST25)、切換スイッチ33から出力された予測ブロック単位のイントラ予測パラメータを受け取って、図1のイントラ予測部4と同様の手順で、イントラ予測用メモリ37に格納されている復号画像を参照しながら、上記イントラ予測パラメータを用いた復号ブロックB内の各予測ブロックP に対するイントラ予測処理を実施して、イントラ予測画像PINTRAi を生成する(ステップST26)。
 動き補償部35は、可変長復号部31により可変長復号された符号化モードm(B)がインター符号化モード(m(B)∈INTER)である場合(ステップST25)、切換スイッチ33から出力された予測ブロック単位の動きベクトルとインター予測パラメータを受け取って、動き補償予測フレームメモリ39に格納されているフィルタ処理後の復号画像を参照しながら、その動きベクトルとインター予測パラメータを用いた復号ブロックB内の各予測ブロックP に対するインター予測処理を実施してインター予測画像PINTERi を生成する(ステップST27)。
 逆量子化・逆変換部32は、可変長復号部31から圧縮データ及び予測差分符号化パラメータを受けると、図1の逆量子化・逆変換部8と同様の手順で、その予測差分符号化パラメータに含まれる量子化パラメータ及び直交変換ブロック分割情報を参照して、直交変換ブロック単位にその圧縮データを逆量子化する。
 また、逆量子化・逆変換部32は、直交変換ブロック単位に逆量子化後の圧縮データである変換係数に対する逆直交変換処理を実施して、図1の逆量子化・逆変換部8から出力された局所復号予測差分信号と同一の復号予測差分信号を算出する(ステップST28)。
 加算部36は、逆量子化・逆変換部32により算出された復号予測差分信号と、イントラ予測部34により生成されたイントラ予測画像PINTRAi 、または、動き補償部35により生成されたインター予測画像PINTERi のいずれか一方を加算して復号画像を算出し、その復号画像をループフィルタ部38に出力するとともに、その復号画像をイントラ予測用メモリ37に格納する(ステップST29)。
 この復号画像が、以降のイントラ予測処理の際に用いられる復号済みの画像信号になる。
 ループフィルタ部38は、全ての復号ブロックBに対するステップST23~ST29の処理が完了すると(ステップST30)、加算部36から出力された復号画像に対して、所定のフィルタ処理を実施して、フィルタ処理後の復号画像を動き補償予測フレームメモリ39に格納する(ステップST31)。
 具体的には、直交変換ブロックの境界や予測ブロックの境界に発生する歪みを低減するフィルタ(デブロッキングフィルタ)処理、画素単位に適応的にオフセットを加算する(画素適応オフセット)処理、ウィーナフィルタ等の線形フィルタを適応的に切り替えてフィルタ処理する適応フィルタ処理などを行う。
 ただし、ループフィルタ部38は、上記のデブロッキングフィルタ処理、画素適応オフセット処理、適応フィルタ処理の中の1つの処理を行うように構成してもよいし、図12に示すように、2つ以上のフィルタ処理を行うように構成してもよいが、動画像符号化装置のループフィルタ部11で行われるフィルタ処理と同じフィルタ処理を行うように構成しなくてはならない。
 ここで、画素適応オフセット処理は、可変長復号部31により可変長復号されたフィルタパラメータに含まれる最大復号ブロック単位のクラス分類手法を示すインデックスを参照して、予め用意されたクラス分類手法の中から、そのインデックスに対応するクラス分類手法を特定し、そのクラス分類手法を用いて、最大復号ブロック単位にブロック内の各画素をクラス分類する。
 そして、可変長復号部31により可変長復号されたフィルタパラメータに含まれるクラス毎のオフセット値を当該クラスに属する画素(復号画像の画素)の輝度値に加算する処理を行う。
 また、適応フィルタ処理は、可変長復号部31により可変長復号されたフィルタパラメータ(クラス数(フィルタ数)、各クラスに属する局所復号画像のフィルタ、ブロック単位のクラスの識別情報であるクラス番号(フィルタ番号))を参照し、そのクラス番号が示すクラスが“オフセット処理を行わない”ことを示すクラスでない場合、そのクラス番号に対応するフィルタを用いて、そのクラスに属する復号画像のフィルタ処理を行う。
 ここで、図19は適応フィルタ処理のフローチャートの一例を示している。
 図19の例では、最大復号ブロック単位の適応フィルタ処理を実施するために、ステップST222~ST224のフィルタ処理を各最大復号ブロックに対して実行する(ステップST221)。
 ステップST222~ST224のフィルタ処理について説明する。
 まず、可変長復号部31により可変長復号されたフィルタパラメータに含まれる最大復号ブロック単位のクラス番号から、処理対象の最大復号ブロックに対してフィルタ処理を実施するか否かを判定する(ステップST222)。
 フィルタ処理を行う場合は、上記のクラス番号に対応するフィルタを用いて、ブロック内の画素に対するフィルタ処理を実施する(ステップST223)。そして次の最大復号ブロックに移る(ST224)。
 以上の処理を全ての最大復号ブロックに対して実施し、処理後の復号画像を動き補償予測フレームメモリ39に格納する。
 また、ループフィルタ部38のフィルタ処理全体の演算量を抑えつつ画素適応オフセット処理と適応フィルタ処理を共に用いる手法として、最大符号化ブロック単位に画素適応オフセット処理と適応フィルタ処理の何れか一方を最適選択するように動画像符号化装置のループフィルタ部11が構成されている場合、可変長復号部31により可変長復号されたフィルタパラメータに含まれている最大復号ブロック単位の画素適応オフセット処理を行うか適応フィルタ処理を行うかの選択情報を参照して、最大復号ブロック毎に画素適応オフセット処理か適応フィルタ処理を実施する。
 また、上記例では最大復号ブロック単位の画素適応オフセット処理のクラス分類手法選択情報、適応フィルタ処理のクラス選択情報を復号してループフィルタ処理を行うものについて説明したが、ブロックサイズと、そのブロックサイズ単位の画素適応オフセット処理のクラス分類手法選択情報、適応フィルタ処理のクラス選択情報が符号化されるように動画像符号化装置が構成されている場合は、可変長復号部31により上記ブロックサイズと、そのブロックサイズ単位の画素適応オフセット処理のクラス分類手法選択情報、適応フィルタ処理のクラス選択情報を可変長復号し、ループフィルタ部38はこれらのパラメータに基づいて上記ブロックサイズ単位のループフィルタ処理を実施する。
 なお、スライスヘッダに最大復号ブロックを分割した復号ブロック単位にフィルタ処理を実施するか否かの情報が符号化されている場合は、可変長復号部31によって上記情報を復号し、ステップST223の処理は、フィルタ処理を行うという情報を持つ復号ブロックのみにフィルタ処理を実施する。
 このループフィルタ部38によるフィルタ処理後の復号画像が、動き補償予測用の参照画像となり、また、再生画像となる。
 以上で明らかなように、この実施の形態1によれば、動画像符号化装置のループフィルタ部11が、符号化制御部2により決定された最大サイズの符号化ブロック単位に、加算部9により生成された局所復号画像のクラス分けを実施するとともに、各クラスに属する局所復号画像毎に、重畳されている歪みを補償するフィルタを設計し、そのフィルタを用いて、当該局所復号画像のフィルタ処理を実施し、可変長符号化部13が、ループフィルタ部11により設計された各クラスに属する局所復号画像に用いるフィルタ及び各最大符号化ブロックのクラス番号をフィルタパラメータとして符号化するように構成したので、ユーザが所定のブロックサイズ単位に、任意の手法で任意のクラス数のクラス分類を行って、各クラスに属する領域毎にフィルタ処理が行えるため、符号化対象画像に応じたクラス分類が可能であり、画像品質の改善精度を高めることができる効果を奏する。
 この実施の形態1によれば、動画像復号装置の可変長復号部31により可変長復号されたフィルタパラメータを参照して、各クラスに属するフィルタを用いてフィルタ処理を行うように構成したので、動画像符号化装置側で最適なクラス分類を求めて符号化することで、画像品質の改善精度を高めることができる効果を奏する。
 なお、本願発明はその発明の範囲内において、実施の形態の任意の構成要素の変形、もしくは実施の形態の任意の構成要素の省略が可能である。
 この発明に係る動画像符号化装置及び動画像符号化方法は、動画像を高効率で符号化を行う必要があるものに適しており、この発明に係る動画像符号化装置及び動画像符号化方法は、高効率で符号化されている動画像を復号する必要があるものに適している。
 1 ブロック分割部(ブロック分割手段)、2 符号化制御部(符号化制御手段)、3 切換スイッチ、4 イントラ予測部(イントラ予測手段)、5 動き補償予測部(動き補償予測手段)、6 減算部(差分画像生成手段)、7 変換・量子化部(画像圧縮手段)、8 逆量子化・逆変換部(局所復号画像生成手段)、9 加算部(局所復号画像生成手段)、10 イントラ予測用メモリ(イントラ予測手段)、11 ループフィルタ部(フィルタリング手段)、12 動き補償予測フレームメモリ(動き補償予測手段)、13 可変長符号化部(可変長符号化手段)、31 可変長復号部(可変長復号手段)、32 逆量子化・逆変換部(差分画像生成手段)、33 切換スイッチ、34 イントラ予測部(イントラ予測手段)、35 動き補償部(動き補償予測手段)、36 加算部(復号画像生成手段)、37 イントラ予測用メモリ(イントラ予測手段)、38 ループフィルタ部(フィルタリング手段)、39 動き補償予測フレームメモリ(動き補償予測手段)、101 ブロック分割部、102 予測部、103 圧縮部、104 局所復号部、105 加算器、106 ループフィルタ、107 メモリ、108 可変長符号化部。

Claims (13)

  1.  ビットストリームに多重化された符号化データから階層的に分割されている各々の符号化ブロックに係る圧縮データを可変長復号するとともに、上記符号化データからフィルタパラメータとして、最大サイズの符号化ブロック単位のクラス分類手法を示すインデックス及び最大サイズの符号化ブロック毎の各クラスのオフセット値を可変長復号する可変長復号手段と、上記符号化ブロックに対する予測処理を実施して予測画像を生成する予測手段と、上記可変長復号手段により可変長復号された符号化ブロックに係る圧縮データから圧縮前の差分画像を生成する差分画像生成手段と、上記差分画像生成手段により生成された差分画像と上記予測手段により生成された予測画像とを加算して復号画像を生成する復号画像生成手段と、上記復号画像生成手段により生成された復号画像に対してフィルタ処理を実施し、フィルタ処理後の復号画像を再生画像として出力するフィルタリング手段とを備え、
     上記フィルタリング手段は、上記クラス分類手法を用いて、最大サイズの符号化ブロック単位に、上記復号画像生成手段により生成された復号画像内の各画素のクラス分けを実施し、各クラスのオフセット値を当該クラスに属する画素の画素値に加算する画素適応オフセット処理を実施することを特徴とすることを特徴とする動画像復号装置。
  2.  可変長復号手段は、ビットストリームに多重化された符号化データからフィルタパラメータとして、最大サイズの符号化ブロック単位のクラス分類手法を示すインデックス、最大サイズの符号化ブロック毎の各クラスのオフセット値、各クラスに属する局所復号画像に用いるフィルタ及び最大サイズの符号化ブロック単位のクラス分類情報を可変長復号し、
     フィルタリング手段は、上記クラス分類手法を用いて、最大サイズの符号化ブロック単位に、復号画像生成手段により生成された復号画像内の各画素のクラス分けを実施し、各クラスのオフセット値を当該クラスに属する画素の画素値に加算する画素適応オフセット処理と、クラス毎に、上記フィルタを用いて上記復号画像にフィルタ処理を行う適応フィルタ処理とから構成されていることを特徴とする請求項1記載の動画像復号装置。
  3.  ビットストリームに多重化された符号化データから階層的に分割されている各々の符号化ブロックに係る圧縮データ及び符号化モードを可変長復号するとともに、上記符号化データからフィルタパラメータとして、最大サイズの符号化ブロック単位のクラス分類手法を示すインデックス及び最大サイズの符号化ブロック毎の各クラスのオフセット値を可変長復号する可変長復号手段と、上記可変長復号手段により可変長復号された符号化ブロックに係る符号化モードに応じて予測処理を実施して予測画像を生成する予測手段とを備えることを特徴とする請求項1記載の動画像復号装置。
  4.  可変長復号手段により可変長復号された符号化ブロックに係る符号化モードがイントラ符号化モードである場合、上記符号化ブロックの予測処理を行う際の予測処理単位となる予測ブロック毎に、上記イントラ符号化モードに対応するフレーム内予測処理を実施して予測画像を生成するイントラ予測手段を設け、
     復号画像生成手段は、差分画像生成手段により生成された差分画像と上記イントラ予測手段により生成された予測画像とを加算して復号画像を生成することを特徴とする請求項3記載の動画像復号装置。
  5.  可変長復号手段により可変長復号された符号化ブロックに係る符号化モードがインター符号化モードである場合、符号化ブロックの予測処理を行う際の予測処理単位となる予測ブロック毎に、参照画像を用いて、当該予測ブロックに対する動き補償予測処理を実施して予測画像を生成する動き補償予測手段を設け、
     復号画像生成手段は、差分画像生成手段により生成された差分画像とイントラ予測手段又は上記動き補償予測手段により生成された予測画像とを加算して復号画像を生成し、
     フィルタリング手段は、上記復号画像生成手段により得られた復号画像に対してフィルタ処理を実施し、フィルタ処理後の復号画像を参照画像として上記動き補償予測手段に出力することを特徴とする請求項4記載の動画像復号装置。
  6.  可変長復号手段は、ビットストリームに多重化された符号化データからブロック分割情報を可変長復号し、上記ブロック分割情報から導かれる各々の符号化ブロックに係る圧縮データ、符号化モード、イントラ予測パラメータ又はインター予測パラメータ、量子化パラメータ及び変換ブロックサイズを可変長復号し、
     差分画像生成手段は、上記可変長復号手段により可変長復号された符号化ブロックに係る量子化パラメータを用いて、当該符号化ブロックに係る圧縮データを逆量子化し、上記変換ブロックサイズ単位で、逆量子化後の圧縮データの逆変換処理を実施することで、圧縮前の差分画像を生成することを特徴とする請求項5記載の動画像復号装置。
  7.  符号化処理が実施される際の処理単位となる符号化ブロックの最大サイズを決定する符号化制御手段と、入力画像を上記符号化制御手段により決定された最大サイズの符号化ブロックに分割するとともに、上記符号化ブロックを階層的に分割するブロック分割手段と、上記符号化ブロックの予測処理を行う際の予測処理単位となる予測ブロック毎に、参照画像を用いて、当該予測ブロックに対する動き補償予測処理を実施して予測画像を生成する動き補償予測手段と、上記ブロック分割手段により分割された符号化ブロックと上記動き補償予測手段により生成された予測画像との差分画像の圧縮データを復号し、復号後の差分画像と上記動き補償予測手段により生成された予測画像とを加算して、局所復号画像を生成する局所復号画像生成手段と、上記局所復号画像生成手段により生成された局所復号画像に対してフィルタ処理を実施し、フィルタ処理後の局所復号画像を上記参照画像として上記動き補償予測手段に出力するフィルタリング手段と、上記圧縮データと上記フィルタリング手段によりフィルタ処理が実施される際に用いられるフィルタパラメータとを可変長符号化して、上記圧縮データ及び上記フィルタパラメータの符号化データが多重化されたビットストリームを生成する可変長符号化手段とを備え、
     上記フィルタリング手段は、上記符号化制御手段により決定された最大サイズの符号化ブロック単位にクラス分類手法を選択し、上記クラス分類手法を用いて、最大サイズの符号化ブロック内の局所復号画像の各画素のクラス分けを実施し、クラス毎のオフセット値を算出して、そのオフセット値を当該クラスに属する画素の画素値に加算する画素適応オフセット処理を実施し、
     上記可変長符号化手段は、上記フィルタリング手段により選択された最大サイズの符号化ブロック単位のクラス分類手法を示すインデックスと、最大サイズの符号化ブロック毎の各クラスのオフセット値とをフィルタパラメータとして符号化することを特徴とする動画像符号化装置。
  8.  上記フィルタリング手段は、最大サイズの符号化ブロック単位にクラス分類手法を選択し、上記クラス分類手法を用いて、最大サイズの符号化ブロック内の局所復号画像の各画素のクラス分けを実施し、クラス毎のオフセット値を算出して、そのオフセット値を当該クラスに属する画素の画素値に加算する画素適応オフセット処理と、最大サイズの符号化ブロック単位に、上記局所復号画像のクラス分けを実施するとともに、各クラスで用いるフィルタを設計し、上記フィルタを用いて、当該局所復号画像のフィルタ処理を行う適応フィルタ処理とから構成されており、
     上記可変長符号化手段は、上記フィルタリング手段により選択された最大サイズの符号化ブロック単位のクラス分類手法を示すインデックス、最大サイズの符号化ブロック毎の各クラスのオフセット値、上記フィルタリング手段により設計された各クラスに属する局所復号画像に用いるフィルタ及び最大サイズの符号化ブロック単位のクラス分類情報をフィルタパラメータとして符号化することを特徴とする請求項7記載の動画像符号化装置。
  9.  符号化処理が実施される際の処理単位となる符号化ブロックの最大サイズを決定するとともに、最大サイズの符号化ブロックが階層的に分割される際の上限の階層数を決定し、利用可能な1以上の符号化モードの中から、階層的に分割される各々の符号化ブロックに対応する符号化モードを選択する符号化制御手段と、入力画像を上記符号化制御手段により決定された最大サイズの符号化ブロックに分割するとともに、上記符号化制御手段により決定された上限の階層数に至るまで、上記符号化ブロックを階層的に分割するブロック分割手段と、上記ブロック分割手段により分割された符号化ブロックに対応する符号化モードとして、上記符号化制御手段によりインター符号化モードが選択された場合、上記符号化ブロックの予測処理を行う際の予測処理単位となる予測ブロック毎に、参照画像を用いて、当該予測ブロックに対する動き補償予測処理を実施して予測画像を生成する動き補償予測手段と、上記ブロック分割手段により分割された符号化ブロックと上記動き補償予測手段により生成された予測画像との差分画像を生成する差分画像生成手段と、上記差分画像生成手段により生成された差分画像を圧縮し、上記差分画像の圧縮データを出力する画像圧縮手段と、上記画像圧縮手段により圧縮された差分画像を復号し、復号後の差分画像と上記動き補償予測手段により生成された予測画像を加算して、局所復号画像を生成する局所復号画像生成手段と、上記局所復号画像生成手段により生成された局所復号画像に対してフィルタ処理を実施し、フィルタ処理後の局所復号画像を上記参照画像として上記動き補償予測手段に出力するフィルタリング手段と、上記画像圧縮手段から出力された圧縮データ、上記符号化制御手段により選択された符号化モード及び上記フィルタリング手段によりフィルタ処理が実施される際に用いられるフィルタパラメータを可変長符号化して、上記圧縮データ、上記符号化モード及び上記フィルタパラメータの符号化データが多重化されたビットストリームを生成する可変長符号化手段とを備えることを特徴とする請求項7記載の動画像符号化装置。
  10.  上記ブロック分割手段により分割された符号化ブロックに対応する符号化モードとして、符号化制御手段によりイントラ符号化モードが選択された場合、符号化ブロックの予測処理を行う際の予測処理単位となる予測ブロック毎に、上記イントラ符号化モードに対応するフレーム内予測処理を実施して予測画像を生成するイントラ予測手段を設け、
     差分画像生成手段は、上記ブロック分割手段により分割された符号化ブロックと上記イントラ予測手段又は動き補償予測手段により生成された予測画像との差分画像を生成し、
     局所復号画像生成手段は、復号後の差分画像と上記イントラ予測手段又は上記動き補償予測手段により生成された予測画像を加算して局所復号画像を生成することを特徴とする請求項9記載の動画像符号化装置。
  11.  符号化制御手段は、各々の符号化ブロック毎に、差分画像が圧縮される際に用いられる量子化パラメータ及び変換ブロック分割状態を決定するとともに、予測処理が実施される際に用いられるイントラ予測パラメータ又はインター予測パラメータを当該符号化ブロックの予測ブロック毎に決定し、
     画像圧縮手段は、上記符号化制御手段により決定された変換ブロック単位で、差分画像生成手段により生成された差分画像の変換処理を実施するとともに、上記符号化制御手段により決定された量子化パラメータを用いて、上記差分画像の変換係数を量子化し、量子化後の変換係数を上記差分画像の圧縮データとして出力し、
     可変長符号化手段は、上記画像圧縮手段から出力された圧縮データ、上記符号化制御手段により選択された符号化モード及びフィルタリング手段によりフィルタ処理が実施される際に用いられるフィルタパラメータを可変長符号化する際、上記符号化制御手段により決定されたイントラ予測パラメータ又はインター予測パラメータと、量子化パラメータ及び変換ブロック分割情報とを可変長符号化して、上記圧縮データ、上記符号化モード、上記フィルタパラメータ、上記イントラ予測パラメータ又は上記インター予測パラメータ、上記量子化パラメータ及び上記変換ブロック分割情報の符号化データが多重化されたビットストリームを生成することを特徴とする請求項10記載の動画像符号化装置。
  12.  可変長復号手段が、ビットストリームに多重化された符号化データからブロック分割情報を可変長復号し、上記ブロック分割情報が示す階層的に分割されている各々の符号化ブロックの分割状況を参照して、上記符号化データから各々の符号化ブロックに係る圧縮データを可変長復号するとともに、上記符号化データからフィルタパラメータとして、最大サイズの符号化ブロック単位のクラス分類手法を示すインデックス及び最大サイズの符号化ブロック毎の各クラスのオフセット値を可変長復号する可変長復号処理ステップと、予測手段が、上記符号化ブロックに対する予測処理を実施して予測画像を生成する予測処理ステップと、差分画像生成手段が、上記可変長復号処理ステップで可変長復号された符号化ブロックに係る圧縮データから圧縮前の差分画像を生成する差分画像生成処理ステップと、復号画像生成手段が、上記差分画像生成処理ステップで生成された差分画像と上記予測処理ステップで生成された予測画像とを加算して復号画像を生成する復号画像生成処理ステップと、フィルタリング手段が、上記復号画像生成処理ステップで生成された復号画像に対してフィルタ処理を実施し、フィルタ処理後の復号画像を再生画像として出力するフィルタリング処理ステップとを備え、
     上記フィルタリング処理ステップでは、上記クラス分類手法を用いて、最大サイズの符号化ブロック単位に、上記復号画像生成処理ステップで生成された復号画像内の各画素のクラス分けを実施し、各クラスのオフセット値を当該クラスに属する画素の画素値に加算する画素適応オフセット処理を実施することを特徴とすることを特徴とする動画像復号方法。
  13.  符号化制御手段が、符号化処理が実施される際の処理単位となる符号化ブロックの最大サイズを決定する符号化制御処理ステップと、ブロック分割手段が、入力画像を上記符号化制御処理ステップで決定された最大サイズの符号化ブロックに分割するとともに、上記符号化ブロックを階層的に分割するブロック分割処理ステップと、動き補償予測手段が、上記符号化ブロックの予測処理を行う際の予測処理単位となる予測ブロック毎に、参照画像を用いて、当該予測ブロックに対する動き補償予測処理を実施して予測画像を生成する動き補償予測処理ステップと、局所復号画像生成手段が、上記ブロック分割処理ステップで分割された符号化ブロックと上記動き補償予測処理ステップで生成された予測画像との差分画像の圧縮データを復号し、復号後の差分画像と上記動き補償予測処理ステップで生成された予測画像とを加算して、局所復号画像を生成する局所復号画像生成処理ステップと、フィルタリング手段が、上記局所復号処理ステップで生成された局所復号画像に対してフィルタ処理を実施し、フィルタ処理後の局所復号画像を上記参照画像として上記動き補償予測手段に出力するフィルタリング処理ステップと、可変長符号化手段が、上記圧縮データと上記フィルタリング処理ステップでフィルタ処理が実施される際に用いられるフィルタパラメータとを可変長符号化して、上記圧縮データ及び上記フィルタパラメータの符号化データが多重化されたビットストリームを生成する可変長符号化処理ステップとを備え、
     上記フィルタリング処理ステップでは、上記符号化制御処理ステップで決定された最大サイズの符号化ブロック単位にクラス分類手法を選択し、上記クラス分類手法を用いて、最大サイズの符号化ブロック内の局所復号画像の各画素のクラス分けを実施し、クラス毎のオフセット値を算出して、そのオフセット値を当該クラスに属する画素の画素値に加算する画素適応オフセット処理を実施し、
     上記可変長符号化処理ステップでは、上記フィルタリング処理ステップで選択された最大サイズの符号化ブロック単位のクラス分類手法を示すインデックスと、最大サイズの符号化ブロック毎の各クラスのオフセット値とをフィルタパラメータとして符号化することを特徴とする動画像符号化方法。
PCT/JP2013/050207 2012-01-19 2013-01-09 動画像復号装置、動画像符号化装置、動画像復号方法及び動画像符号化方法 WO2013108684A1 (ja)

Priority Applications (21)

Application Number Priority Date Filing Date Title
KR1020177022964A KR102157481B1 (ko) 2012-01-19 2013-01-09 화상 복호 장치, 화상 부호화 장치, 화상 복호 방법, 화상 부호화 방법 및 기억 매체
CN201380005907.0A CN104067623A (zh) 2012-01-19 2013-01-09 运动图像解码装置、运动图像编码装置、运动图像解码方法以及运动图像编码方法
MX2014008781A MX2014008781A (es) 2012-01-19 2013-01-09 Dispositivo de decodificacion de imagenes, dispositivo de codificacion de imagenes, metodo de decodificacion de imagenes, y metodo de codificacion de imagenes.
US14/371,964 US20150023420A1 (en) 2012-01-19 2013-01-09 Image decoding device, image encoding device, image decoding method, and image encoding method
IN4356CHN2014 IN2014CN04356A (ja) 2012-01-19 2013-01-09
KR1020197025975A KR102113985B1 (ko) 2012-01-19 2013-01-09 화상 복호 장치, 화상 부호화 장치, 화상 복호 방법, 화상 부호화 방법 및 기억 매체
KR1020147022930A KR101647242B1 (ko) 2012-01-19 2013-01-09 화상 복호 장치, 화상 부호화 장치, 화상 복호 방법, 화상 부호화 방법 및 기억 매체
SG11201403454PA SG11201403454PA (en) 2012-01-19 2013-01-09 Video image decoding device, video image and coding device, video image decoding method and video image coding method
KR1020147023477A KR20140111039A (ko) 2012-01-19 2013-01-09 화상 복호 장치, 화상 부호화 장치, 화상 복호 방법 및 화상 부호화 방법
BR112014016291A BR112014016291A8 (pt) 2012-01-19 2013-01-09 dispositivos e métodos de decodificação e codificação de vídeo
JP2013549653A JP5551837B2 (ja) 2012-01-19 2013-01-09 画像復号装置、画像符号化装置、画像復号方法及び画像符号化方法
CA2862805A CA2862805C (en) 2012-01-19 2013-01-09 Image decoding device, image encoding device, image decoding method, and image encoding method
EP13738640.5A EP2806639A4 (en) 2012-01-19 2013-01-09 VIDEO IMAGE DECODING DEVICE, VIDEO IMAGE CODING DEVICE, VIDEO IMAGE DECODING METHOD AND VIDEO IMAGE CODING METHOD
KR1020207025986A KR102272564B1 (ko) 2012-01-19 2013-01-09 화상 복호 장치, 화상 부호화 장치, 화상 복호 방법, 화상 부호화 방법 및 기억 매체
KR1020187032318A KR102021257B1 (ko) 2012-01-19 2013-01-09 화상 복호 장치, 화상 부호화 장치, 화상 복호 방법, 화상 부호화 방법 및 기억 매체
RU2014133864/07A RU2577320C1 (ru) 2012-01-19 2013-01-09 Устройство декодирования изображений, устройство кодирования изображений, способ декодирования изображений и способ кодирования изображений
TW106113415A TWI608728B (zh) 2012-01-19 2013-01-16 Image decoding device, image decoding method, image coding device, image coding method, coding data
TW106137752A TWI665908B (zh) 2012-01-19 2013-01-16 畫像解碼裝置、畫像解碼方法、畫像編碼裝置、畫像編碼方法、電腦可讀取記錄媒體
TW104117115A TWI586148B (zh) 2012-01-19 2013-01-16 Animation decoding apparatus and moving picture decoding method
TW102101582A TWI489837B (zh) 2012-01-19 2013-01-16 A moving picture decoding apparatus, an image coding apparatus, an image decoding method, and an image coding method
HK14113102.2A HK1199589A1 (en) 2012-01-19 2014-12-31 Video image decoding device, video image and coding device, video image decoding method and video image coding method

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2012009128 2012-01-19
JP2012-009128 2012-01-19

Publications (1)

Publication Number Publication Date
WO2013108684A1 true WO2013108684A1 (ja) 2013-07-25

Family

ID=48799110

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2013/050207 WO2013108684A1 (ja) 2012-01-19 2013-01-09 動画像復号装置、動画像符号化装置、動画像復号方法及び動画像符号化方法

Country Status (14)

Country Link
US (1) US20150023420A1 (ja)
EP (1) EP2806639A4 (ja)
JP (4) JP5551837B2 (ja)
KR (6) KR102113985B1 (ja)
CN (1) CN104067623A (ja)
BR (1) BR112014016291A8 (ja)
CA (3) CA2862805C (ja)
HK (1) HK1199589A1 (ja)
IN (1) IN2014CN04356A (ja)
MX (1) MX2014008781A (ja)
RU (5) RU2616598C1 (ja)
SG (5) SG10201906914WA (ja)
TW (4) TWI586148B (ja)
WO (1) WO2013108684A1 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2015151791A1 (ja) * 2014-03-31 2017-04-13 ソニー株式会社 画像復号装置および方法
JP2018509074A (ja) * 2015-02-11 2018-03-29 クアルコム,インコーポレイテッド コーディングツリーユニット(ctu)レベル適応ループフィルタ(alf)
CN116385414A (zh) * 2023-04-10 2023-07-04 哈尔滨耐是智能科技有限公司 零部件多尺度缺陷特征提取方法、计算设备及存储介质

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6034010B2 (ja) * 2011-10-24 2016-11-30 ソニー株式会社 符号化装置、符号化方法、およびプログラム
KR102276914B1 (ko) * 2013-10-24 2021-07-13 삼성전자주식회사 비디오 인코딩 장치 그리고 이의 구동 방법
CN105981389B (zh) * 2014-02-03 2019-03-01 三菱电机株式会社 图像编码装置、图像解码装置、编码流变换装置、图像编码方法以及图像解码方法
WO2017057857A1 (ko) * 2015-09-29 2017-04-06 엘지전자 주식회사 영상 코딩 시스템에서 필터링 방법 및 장치
JP6634936B2 (ja) * 2016-04-05 2020-01-22 富士通株式会社 画像符号化装置、画像符号化方法、画像符号化プログラム、画像復号装置、画像復号方法、画像復号プログラムおよび画像伝送システム
US10694202B2 (en) * 2016-12-01 2020-06-23 Qualcomm Incorporated Indication of bilateral filter usage in video coding
KR20230157533A (ko) 2017-02-23 2023-11-16 매직 립, 인코포레이티드 가변 파워 반사기를 갖는 디스플레이 시스템
US11057619B2 (en) 2019-03-23 2021-07-06 Lg Electronics Inc. Image coding method and apparatus based on intra prediction using MPM list
US10764507B1 (en) * 2019-04-18 2020-09-01 Kneron (Taiwan) Co., Ltd. Image processing system capable of generating a snapshot image with high image quality by using a zero-shutter-lag snapshot operation
US10708624B1 (en) * 2019-05-30 2020-07-07 Ati Technologies Ulc Pre-processing for video compression
US11431971B2 (en) * 2019-06-24 2022-08-30 Industrial Technology Research Institute Method and image processing apparatus for video coding
CN115589484A (zh) * 2019-12-06 2023-01-10 杭州海康威视数字技术股份有限公司 滤波方法、装置及设备
CN113808157B (zh) * 2021-11-18 2022-02-22 腾讯科技(深圳)有限公司 图像处理方法、装置、及计算机设备

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008010929A2 (en) 2006-07-18 2008-01-24 Thomson Licensing Methods and apparatus for adaptive reference filtering

Family Cites Families (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW256896B (ja) * 1991-07-19 1995-09-11 Sony Co Ltd
RU2154918C1 (ru) * 1998-08-01 2000-08-20 Самсунг Электроникс Ко., Лтд. Способ и устройство для цикл-фильтрации данных изображения
JP3639517B2 (ja) * 2000-10-04 2005-04-20 三洋電機株式会社 動画像復号化装置および動画像復号化方法
JP4114494B2 (ja) * 2002-03-07 2008-07-09 セイコーエプソン株式会社 画像処理装置及び画像処理プログラム、並びに画像処理方法
JP4361435B2 (ja) * 2004-07-14 2009-11-11 株式会社エヌ・ティ・ティ・ドコモ 動画像復号方法、動画像復号プログラム、動画像復号装置、動画像符号化方法、動画像符号化プログラム及び動画像符号化装置
US8340175B2 (en) * 2005-04-13 2012-12-25 Ntt Docomo, Inc. Dynamic image encoding device, dynamic image decoding device, dynamic image encoding method, dynamic image decoding method, dynamic image encoding program, and dynamic image decoding program
KR100745765B1 (ko) * 2006-04-13 2007-08-02 삼성전자주식회사 화상 데이터의 공간상 예측 장치 및 방법과 그를 이용한부호화 장치 및 방법, 화상 데이터의 공간상 예측 보상장치 및 방법과 그를 이용한 복호화 장치 및 방법
RU2427976C2 (ru) * 2006-07-28 2011-08-27 Кабусики Кайся Тосиба Способ и устройство для кодирования и декодирования изображения
JP4931214B2 (ja) * 2007-01-24 2012-05-16 キヤノン株式会社 画像処理装置及びその方法
CN101677400B (zh) * 2008-09-19 2012-08-15 华为技术有限公司 编码、解码方法和编码器、解码器及编解码系统
JP2010130522A (ja) * 2008-11-28 2010-06-10 Canon Inc 動画像符号化装置及び動画像符号化方法
JPWO2010134292A1 (ja) * 2009-05-19 2012-11-08 パナソニック株式会社 描画装置及び描画方法
JP5361998B2 (ja) * 2009-05-29 2013-12-04 三菱電機株式会社 画像符号化装置、画像復号装置、画像符号化方法、および画像復号方法
US20100329361A1 (en) * 2009-06-30 2010-12-30 Samsung Electronics Co., Ltd. Apparatus and method for in-loop filtering of image data and apparatus for encoding/decoding image data using the same
US20110194613A1 (en) * 2010-02-11 2011-08-11 Qualcomm Incorporated Video coding with large macroblocks
US8995527B2 (en) * 2010-02-19 2015-03-31 Qualcomm Incorporated Block type signalling in video coding
CN102265611A (zh) * 2010-03-15 2011-11-30 联发科技(新加坡)私人有限公司 在混合视频编码中具有多个滤波器的本地环路内滤波
KR101750046B1 (ko) * 2010-04-05 2017-06-22 삼성전자주식회사 트리 구조에 따른 부호화 단위에 기반한 인루프 필터링을 수반하는 비디오 부호화 방법과 그 장치 및 복호화 방법과 그 장치
MX353107B (es) * 2010-04-09 2017-12-19 Mitsubishi Electric Corp Dispositivo codificador de imagen en movimiento y dispositivo decodificador de imagen en movimiento.
EP2559166B1 (en) * 2010-04-13 2017-11-01 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Probability interval partioning encoder and decoder
TWI600318B (zh) * 2010-05-18 2017-09-21 Sony Corp Image processing apparatus and image processing method
CN106454356B (zh) * 2010-06-17 2019-11-08 夏普株式会社 解码装置及编码装置
US20120029435A1 (en) * 2010-07-30 2012-02-02 Miriam Gutierrez Del Rio Ng/og support systems
US9055305B2 (en) * 2011-01-09 2015-06-09 Mediatek Inc. Apparatus and method of sample adaptive offset for video coding
DK2882190T3 (en) * 2011-04-21 2019-02-18 Hfi Innovation Inc Method and apparatus for improved ring-structured filtration
US9008170B2 (en) * 2011-05-10 2015-04-14 Qualcomm Incorporated Offset type and coefficients signaling method for sample adaptive offset
US20120294353A1 (en) * 2011-05-16 2012-11-22 Mediatek Inc. Apparatus and Method of Sample Adaptive Offset for Luma and Chroma Components
KR101457398B1 (ko) * 2011-06-28 2014-11-04 삼성전자주식회사 픽셀 분류에 따른 오프셋 조정을 이용하는 비디오 부호화 방법 및 그 장치, 비디오 복호화 방법 및 그 장치
US20130013616A1 (en) * 2011-07-08 2013-01-10 Jochen Lothar Leidner Systems and Methods for Natural Language Searching of Structured Data
US9386305B2 (en) * 2011-11-28 2016-07-05 Qualcomm Incorporated Largest coding unit (LCU) or partition-based syntax for adaptive loop filter and sample adaptive offset in video coding

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008010929A2 (en) 2006-07-18 2008-01-24 Thomson Licensing Methods and apparatus for adaptive reference filtering

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
A. FULDSETH ET AL.: "Improved ALF with low latency and reduced complexity", JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC) OF ITU-T SG16 WP3 AND ISO/IEC JTC1/SC29/WG11 7TH MEETING, 22 November 2011 (2011-11-22), GENEVA, CH, XP030050626 *
CHIH-MING FU ET AL.: "Sample Adaptive Offset with LCU-based Syntax", JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC) OF ITU-T SG16 WP3 AND ISO/IEC JTC1/SC29/WG11 6TH MEETING, 15 July 2011 (2011-07-15), TORINO, IT, XP030049034 *
CHING-YEH CHEN ET AL.: "Non-CE8: One-stage non-deblocking loop filtering", JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC) OF ITU-T SG16 WP3 AND ISO/IEC JTC1/SC29/WG11 7TH MEETING, 21 November 2011 (2011-11-21), GENEVA, CH, XP030110202 *
See also references of EP2806639A4

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2015151791A1 (ja) * 2014-03-31 2017-04-13 ソニー株式会社 画像復号装置および方法
US10440397B2 (en) 2014-03-31 2019-10-08 Sony Corporation Image decoding device and method
US10779009B2 (en) 2014-03-31 2020-09-15 Sony Corporation Image decoding device and method
JP2018509074A (ja) * 2015-02-11 2018-03-29 クアルコム,インコーポレイテッド コーディングツリーユニット(ctu)レベル適応ループフィルタ(alf)
CN116385414A (zh) * 2023-04-10 2023-07-04 哈尔滨耐是智能科技有限公司 零部件多尺度缺陷特征提取方法、计算设备及存储介质
CN116385414B (zh) * 2023-04-10 2023-11-07 哈尔滨耐是智能科技有限公司 零部件多尺度缺陷特征提取方法、计算设备及存储介质

Also Published As

Publication number Publication date
TWI665908B (zh) 2019-07-11
JPWO2013108684A1 (ja) 2015-05-11
US20150023420A1 (en) 2015-01-22
KR101647242B1 (ko) 2016-08-09
TWI608728B (zh) 2017-12-11
JP6082073B2 (ja) 2017-02-15
KR102157481B1 (ko) 2020-09-18
TW201534108A (zh) 2015-09-01
CA2862805C (en) 2019-02-12
EP2806639A1 (en) 2014-11-26
SG10201906914WA (en) 2019-09-27
TW201342934A (zh) 2013-10-16
KR20180123191A (ko) 2018-11-14
RU2577320C1 (ru) 2016-03-20
JP5551837B2 (ja) 2014-07-16
KR20140117557A (ko) 2014-10-07
HK1199589A1 (en) 2015-07-03
JP2017092980A (ja) 2017-05-25
KR20140111039A (ko) 2014-09-17
SG11201403454PA (en) 2014-08-28
MX2014008781A (es) 2014-10-23
CA2961818A1 (en) 2013-07-25
RU2684570C1 (ru) 2019-04-09
BR112014016291A2 (pt) 2017-06-13
IN2014CN04356A (ja) 2015-09-04
KR20170098967A (ko) 2017-08-30
TW201731292A (zh) 2017-09-01
CN104067623A (zh) 2014-09-24
BR112014016291A8 (pt) 2017-07-04
CA3001027A1 (en) 2013-07-25
JP5815795B2 (ja) 2015-11-17
RU2658178C1 (ru) 2018-06-19
SG10201912254WA (en) 2020-02-27
RU2703229C1 (ru) 2019-10-15
KR102113985B1 (ko) 2020-05-22
EP2806639A4 (en) 2016-06-01
KR102272564B1 (ko) 2021-07-02
SG10201912258SA (en) 2020-02-27
TWI489837B (zh) 2015-06-21
TW201808007A (zh) 2018-03-01
CA2862805A1 (en) 2013-07-25
SG10201604926WA (en) 2016-08-30
KR20190105135A (ko) 2019-09-11
JP2015228709A (ja) 2015-12-17
CA2961818C (en) 2020-06-09
TWI586148B (zh) 2017-06-01
KR102021257B1 (ko) 2019-09-11
KR20200108111A (ko) 2020-09-16
RU2616598C1 (ru) 2017-04-18
JP2014187704A (ja) 2014-10-02

Similar Documents

Publication Publication Date Title
JP6835448B2 (ja) 画像符号化装置、画像復号装置、画像符号化方法、画像復号方法及び符号化ビットストリームを記録した記録媒体
JP6863669B2 (ja) 画像符号化装置、画像符号化方法、画像復号装置および画像復号方法
JP6082073B2 (ja) 画像復号装置、画像復号方法、画像符号化装置、画像符号化方法及びビットストリーム
JP6716836B2 (ja) 動画像符号化データ
JP2017077036A (ja) 符号化データ
WO2012042720A1 (ja) 動画像符号化装置、動画像復号装置、動画像符号化方法及び動画像復号方法
WO2014163200A1 (ja) カラー画像符号化装置、カラー画像復号装置、カラー画像符号化方法及びカラー画像復号方法
WO2012081162A1 (ja) 動画像符号化装置、動画像復号装置、動画像符号化方法及び動画像復号方法
WO2014049981A1 (ja) 動画像符号化装置、動画像復号装置、動画像符号化方法及び動画像復号方法
JP2014090326A (ja) 動画像符号化装置、動画像復号装置、動画像符号化方法及び動画像復号方法
JP2014090327A (ja) 動画像符号化装置、動画像復号装置、動画像符号化方法及び動画像復号方法
WO2014049982A1 (ja) 動画像符号化装置、動画像復号装置、動画像符号化方法及び動画像復号方法
WO2013108882A1 (ja) 動画像符号化装置、動画像復号装置、動画像符号化方法及び動画像復号方法

Legal Events

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

Ref document number: 13738640

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2013549653

Country of ref document: JP

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 2013738640

Country of ref document: EP

ENP Entry into the national phase

Ref document number: 2862805

Country of ref document: CA

WWE Wipo information: entry into national phase

Ref document number: 14371964

Country of ref document: US

WWE Wipo information: entry into national phase

Ref document number: MX/A/2014/008781

Country of ref document: MX

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 20147022930

Country of ref document: KR

Kind code of ref document: A

ENP Entry into the national phase

Ref document number: 2014133864

Country of ref document: RU

Kind code of ref document: A

REG Reference to national code

Ref country code: BR

Ref legal event code: B01A

Ref document number: 112014016291

Country of ref document: BR

ENP Entry into the national phase

Ref document number: 112014016291

Country of ref document: BR

Kind code of ref document: A2

Effective date: 20140630