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

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

Info

Publication number
WO2011125729A1
WO2011125729A1 PCT/JP2011/057997 JP2011057997W WO2011125729A1 WO 2011125729 A1 WO2011125729 A1 WO 2011125729A1 JP 2011057997 W JP2011057997 W JP 2011057997W WO 2011125729 A1 WO2011125729 A1 WO 2011125729A1
Authority
WO
WIPO (PCT)
Prior art keywords
block
filter
filter strength
unit
image data
Prior art date
Application number
PCT/JP2011/057997
Other languages
English (en)
French (fr)
Inventor
佐藤 数史
Original Assignee
ソニー株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ソニー株式会社 filed Critical ソニー株式会社
Priority to CN201180016506.6A priority Critical patent/CN102823246A/zh
Priority to US13/581,960 priority patent/US9077989B2/en
Publication of WO2011125729A1 publication Critical patent/WO2011125729A1/ja
Priority to US14/710,769 priority patent/US9613400B2/en
Priority to US15/437,717 priority patent/US10373295B2/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/117Filters, e.g. for pre-processing or post-processing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • 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/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/86Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving reduction of coding artifacts, e.g. of blockiness

Definitions

  • the present invention relates to an image processing apparatus and an image processing method. Specifically, a decoded image of good image quality is obtained.
  • devices that handle image information as digital and perform efficient transmission and storage of information at that time for example, devices conforming to a method such as MPEG that performs compression by orthogonal transformation such as discrete cosine transformation and motion compensation are broadcast stations And it is getting popular in general homes.
  • MPEG2 ISO / IEC 13818-2
  • MPEG2 ISO / IEC 13818-2
  • MPEG2 compression method for example, in the case of an interlace scan image of standard resolution having 720 ⁇ 480 pixels, it is possible to realize good image quality by allocating a 4 to 8 Mbps code amount (bit rate). Further, in the case of a high resolution interlaced scanning image having 1920 ⁇ 10 88 pixels, it is possible to realize good image quality by allocating a code amount (bit rate) of 18 to 22 Mbps.
  • MPEG2 was mainly intended for high-quality coding suitable for broadcasting, it did not correspond to a coding amount (bit rate) lower than that of MPEG1, that is, a coding method with a higher compression rate.
  • bit rate bit rate
  • MPEG4 coding amount
  • image coding method that standard was approved as an international standard as ISO / IEC 14496-2 in December 1998.
  • H.26L ITU-T Q6 / 16 VCEG
  • H.264 ISO-T Q6 / 16 VCEG
  • FRExt including RGB, 4: 2: 2, 4: 4: 4, etc., necessary coding tools necessary for business use, and 8 ⁇ 8 DCT and quantization matrix defined in MPEG2 Standardization of Fidelity Range Extension was completed in February 2005.
  • H.264 / AVC system has become a coding system capable of well representing film noise included in a movie, and has been used for a wide range of applications such as Blu-Ray (trademark).
  • encoding of image data is performed in block units. Further, in decoding of encoded data, as shown in, for example, Patent Document 1, performing block processing on the basis of block boundary strength and a quantization parameter is performed to suppress block distortion.
  • Non-Patent Document 1 the macroblock size is set to MPEG2, H.264, H.264, and so forth. It has been proposed to make the size larger than H.264 / AVC, for example, 32 pixels ⁇ 32 pixels. That is, according to Non-Patent Document 1, H.264 and H.264 are applied to 16 ⁇ 16 pixel blocks and below by adopting a hierarchical structure for macroblocks. It is compatible with macroblocks in H.264 / AVC, and larger blocks are defined as its superset.
  • block distortion becomes large especially at a low bit rate. For this reason, when block distortion is removed by the conventional deblocking filter, block distortion may not be sufficiently removed and image quality may be degraded.
  • a decoding unit that decodes a coded stream in which image data is coded block by block to generate decoded image data, and decoded image data generated by the decoding unit.
  • an image processing apparatus including: a filter that performs filtering processing for removing block distortion;
  • the filter strength in the filter processing is adjusted according to a filter that performs filtering processing for removing block distortion from decoded image data and a block size of an adjacent block adjacent to a block boundary.
  • an image processing apparatus including: a filter strength adjustment unit; and an encoding unit that encodes image data using decoded image data that has been subjected to filter processing by the filter.
  • Filter processing to remove block distortion from decoded image data obtained by performing inverse quantization of inverse quantization and data after inverse quantization of quantized data obtained by performing decoding To be done.
  • the filter strength is adjusted so that the filtering process is more likely to be performed as the block size is larger.
  • parameter values for adjusting the filter strength are set according to the block size.
  • the filter strength is adjusted according to the larger block size.
  • the values of syntax elements of the encoding standard are adjusted.
  • H The filter strength is adjusted by adjusting the values of FilterOffsetA and FilterOffsetB specified by slice_alpha_c0_offset_div2 and slice_beta_offset_div2 which are syntax elements of the H.264 / AVC standard.
  • the value of deblocking_filter_control_present_flag of the picture parameter set which is a syntax element is set to a predetermined value, for example, “1”, and FilterOffsetA and FilterOffsetB in the slice header. Describes the value of.
  • a method of decoding an encoded stream in which image data is encoded for each block to generate decoded image data, and for the decoded image data generated by the decoding unit comprising the steps of: filtering for removing distortion; and adjusting the filter strength in the filtering according to the block size of the adjacent block adjacent to the block boundary.
  • an image processing method comprising: a step of encoding image data using the decoded image data subjected to filter processing by the filter.
  • the filter strength is adjusted in accordance with the block size of the adjacent block adjacent at the block boundary. For this reason, even if a macro block having an expanded size is used, it is possible to obtain a high quality decoded image with reduced block distortion by adjusting the filter strength according to the block size.
  • the image processing apparatus is applied to an image coding apparatus that codes image data for each block, an image decoding apparatus that decodes a coded stream in which image data is coded for each block, and the like.
  • the case where it is possible and it applies to an image coding apparatus and the case where it applies to an image decoding apparatus is demonstrated in the following order.
  • Configuration of image coding apparatus About filtering process of deblocking filter 3.
  • Configuration of deblocking filter and filter strength adjustment unit in image coding apparatus Operation of image coding device 5.
  • FIG. 1 shows the configuration of the image coding apparatus.
  • the image coding apparatus 10 includes an analog / digital conversion unit (A / D conversion unit) 11, a screen rearrangement buffer 12, a subtraction unit 13, an orthogonal conversion unit 14, a quantization unit 15, a lossless encoding unit 16, and an accumulation buffer 17. , Rate control unit 18. Furthermore, the image coding apparatus 10 includes an inverse quantization unit 21, an inverse orthogonal transformation unit 22, an addition unit 23, a deblocking filter 24, a frame memory 25, a selector 26, an intra prediction unit 31, a motion prediction / compensation unit 32, a prediction. An image / optimum mode selection unit 33 is provided.
  • the A / D conversion unit 11 converts an analog image signal into digital image data and outputs the digital image data to the screen rearrangement buffer 12.
  • the screen rearrangement buffer 12 rearranges frames of the image data output from the A / D converter 11.
  • the screen rearrangement buffer 12 rearranges the frames according to the GOP (Group of Pictures) structure related to the encoding process, and the image data after the rearrangement is subjected to the subtraction unit 13, the intra prediction unit 31, and the motion prediction / compensation unit Output to 32.
  • GOP Group of Pictures
  • the subtraction unit 13 is supplied with the image data output from the screen rearrangement buffer 12 and the prediction image data selected by the prediction image / optimum mode selection unit 33 described later.
  • the subtraction unit 13 calculates prediction error data, which is the difference between the image data output from the screen rearrangement buffer 12 and the prediction image data supplied from the prediction image / optimum mode selection unit 33, to the orthogonal transformation unit 14. Output.
  • the orthogonal transformation unit 14 performs orthogonal transformation processing such as discrete cosine transformation (DCT; Discrete Cosine Transform), Karhunen-Loeve transformation, or the like on the prediction error data output from the subtraction unit 13.
  • the orthogonal transform unit 14 outputs transform coefficient data obtained by performing orthogonal transform processing to the quantization unit 15.
  • the quantization unit 15 is supplied with the transform coefficient data output from the orthogonal transformation unit 14 and a rate control signal from a rate control unit 18 described later.
  • the quantization unit 15 quantizes the transform coefficient data, and outputs the quantized data to the lossless encoding unit 16 and the inverse quantization unit 21. Further, the quantization unit 15 switches the quantization parameter (quantization scale) based on the rate control signal from the rate control unit 18 to change the bit rate of the quantization data.
  • the lossless encoding unit 16 receives the quantization data output from the quantization unit 15, and prediction mode information from the intra prediction unit 31, the motion prediction / compensation unit 32, and the prediction image / optimum mode selection unit 33 described later. Ru.
  • the prediction mode information includes, for example, a macroblock type capable of identifying a prediction block size, a prediction mode, motion vector information, reference picture information and the like according to intra prediction or inter prediction.
  • the lossless encoding unit 16 performs lossless encoding processing on the quantized data by, for example, variable-length encoding or arithmetic encoding, and generates an encoded stream and outputs the encoded stream to the accumulation buffer 17. Also, the lossless encoding unit 16 losslessly encodes the prediction mode information and adds it to the header information of the encoded stream.
  • the accumulation buffer 17 accumulates the coded stream from the lossless coding unit 16. Further, the accumulation buffer 17 outputs the accumulated encoded stream at a transmission rate according to the transmission path.
  • the rate control unit 18 monitors the free space of the accumulation buffer 17, generates a rate control signal according to the free space, and outputs the rate control signal to the quantization unit 15.
  • the rate control unit 18 acquires, for example, information indicating the free space from the accumulation buffer 17.
  • the rate control unit 18 reduces the bit rate of the quantized data by the rate control signal when the free space is reduced. Further, when the free space of the accumulation buffer 17 is sufficiently large, the rate control unit 18 increases the bit rate of the quantized data by the rate control signal.
  • the inverse quantization unit 21 performs inverse quantization processing of the quantized data supplied from the quantization unit 15.
  • the inverse quantization unit 21 outputs transform coefficient data obtained by performing the inverse quantization process to the inverse orthogonal transform unit 22.
  • the inverse orthogonal transformation unit 22 outputs data obtained by performing inverse orthogonal transformation processing of the transform coefficient data supplied from the inverse quantization unit 21 to the addition unit 23.
  • the addition unit 23 adds the data supplied from the inverse orthogonal transformation unit 22 and the predicted image data supplied from the predicted image / optimum mode selection unit 33 to generate decoded image data, and the deblocking filter 24 and the frame memory Output to 25
  • the deblocking filter 24 performs a filtering process to reduce block distortion that occurs during image coding.
  • the deblocking filter 24 performs filter processing for removing block distortion from the decoded image data supplied from the addition unit 23, and outputs the decoded image data after filter processing to the frame memory 25.
  • the deblocking filter 24 adjusts the filter strength based on the parameter value supplied from the filter strength adjustment unit 41 described later.
  • the frame memory 25 holds the decoded image data supplied from the adding unit 23 and the decoded image data after filter processing supplied from the deblocking filter 24.
  • the selector 26 supplies the decoded image data before the filtering process read out from the frame memory 25 to perform the intra prediction to the intra prediction unit 31. Further, the selector 26 supplies the decoded image data after filter processing read from the frame memory 25 to the motion prediction / compensation unit 32 in order to perform inter prediction.
  • the intra prediction unit 31 uses the image data of the image to be encoded output from the screen rearrangement buffer 12 and the decoded image data before filter processing read from the frame memory 25 to generate the intra for all candidate intra prediction modes. Perform prediction processing. Furthermore, the intra prediction unit 31 calculates a cost function value for each intra prediction mode, and optimizes the intra prediction mode in which the calculated cost function value is the smallest, that is, the intra prediction mode in which the coding efficiency is the best. Select as intra prediction mode. The intra prediction unit 31 outputs predicted image data generated in the optimal intra prediction mode, prediction mode information on the optimal intra prediction mode, and a cost function value in the optimal intra prediction mode to the predicted image / optimum mode selection unit 33. Further, as described later, the intra prediction unit 31 obtains prediction code information on the intra prediction mode in the lossless encoding unit 16 in the intra prediction process of each intra prediction mode in order to obtain the generated code amount used for calculating the cost function value. Output.
  • the motion prediction / compensation unit 32 performs motion prediction / compensation processing on all prediction block sizes corresponding to the macro block.
  • the motion prediction / compensation unit 32 uses the decoded image data after filter processing read from the frame memory 25 for each image of each prediction block size in the encoding target image read from the screen rearrangement buffer 12. Detect motion vectors. Furthermore, the motion prediction / compensation unit 32 performs motion compensation processing on the decoded image based on the detected motion vector to generate a predicted image. Also, the motion prediction / compensation unit 32 calculates a cost function value for each prediction block size, and calculates a prediction block size that minimizes the calculated cost function value, that is, a prediction block size that achieves the best coding efficiency. , Select as the optimal inter prediction mode.
  • the motion prediction / compensation unit 32 outputs predicted image data generated in the optimal inter prediction mode, prediction mode information on the optimal inter prediction mode, and a cost function value in the optimal inter prediction mode to the predicted image / optimum mode selection unit 33. Do. Also, the motion prediction / compensation unit 32 outputs prediction mode information related to the inter prediction mode to the lossless encoding unit 16 in the inter prediction processing with each prediction block size, in order to obtain the generated code amount used for calculating the cost function value. Do. The motion prediction / compensation unit 32 also performs prediction in skipped macroblocks or direct mode as the inter prediction mode.
  • the predicted image / optimum mode selection unit 33 compares the cost function value supplied from the intra prediction unit 31 with the cost function value supplied from the motion prediction / compensation unit 32 in units of macroblocks, and the cost function value is smaller. Is selected as the optimal mode in which the coding efficiency is the best. Further, the predicted image / optimum mode selection unit 33 outputs the predicted image data generated in the optimum mode to the subtraction unit 13 and the addition unit 23. Further, the predicted image / optimum mode selection unit 33 outputs the prediction mode information of the optimum mode to the lossless encoding unit 16 and the filter strength adjustment unit 41. The predicted image / optimum mode selection unit 33 performs intra prediction or inter prediction on a slice basis.
  • the filter strength adjustment unit 41 sets a parameter value for adjusting the filter strength in accordance with the prediction block size indicated by the prediction mode information of the optimum mode, and outputs the parameter value to the deblocking filter 24.
  • deblocking filter filtering In the filtering process of the deblocking filter, H264.
  • deblocking_filter_control_present_flag of Picture Parameter Set RBSP included in image compression information and disable_deblocking_filter_idc included in Slice Header are used. It is possible to specify three ways: (a) applied to block boundaries and macroblock boundaries, (b) applied only to Macroblock boundaries, and (c) not applied.
  • QP when applying the following processing to luminance data, QPY is used, and when applying to chrominance data, QPC is used. Also, in motion vector coding, intra prediction, and entropy coding (CAVLC / CABAC), pixel values belonging to different slices are processed as “not available”. Furthermore, in the filtering process, even when pixel values belonging to different slices belong to the same picture, processing is performed as “available”.
  • pixel data before filter processing at block boundaries are p0 to p3 and q0 to q3 as shown in FIG. 2A.
  • the pixel data after processing is p0 'to p3' and q0 'to q3'.
  • block boundary strength data Bs (Boundary Strength) is defined for the pixels p and q in FIG.
  • the block boundary strength data Bs belongs to the macro block MB in which either the pixel p or the pixel q is intra-coded and the pixel is located at the boundary of the macro block MB. , "4" with the highest filter strength is assigned.
  • the block boundary strength data Bs is next to “4” when the pixel p or the pixel q belongs to the macroblock MB to be intra-coded and the pixel is not located at the boundary of the macroblock MB.
  • a high filter strength "3" is assigned.
  • the block boundary strength data Bs does not belong to the macro block MB in which both the pixel p and the pixel q are intra-coded, and when any pixel has a transform coefficient, the filter following “3” A high strength "2" is assigned.
  • the block boundary strength data Bs does not belong to the macroblock MB in which both the pixel p and the pixel q are intra-coded, and satisfies the condition that one of the pixels has no transform coefficient, and “1” is assigned when either the reference frame is different, the number of reference frames is different, or the motion vector is different.
  • the block boundary strength data Bs does not belong to the macroblock MB in which both the pixels p and q are intra-coded, and both pixels do not have transform coefficients, and the filter processing is performed when the reference frame and motion vector are the same. "0" is assigned, which means not to perform.
  • the threshold values ⁇ and ⁇ which are parameter values for adjusting the filter strength, that is, the ease of application of the filter, are determined by default according to the quantization parameter QP as follows.
  • the user can adjust the strength by two parameters of slice_alpha_c0_offset_div2 and slice_beta_offset_div2 included in Slice Header in the image compression information.
  • FIG. 3 shows the relationship between the quantization parameter QP and the threshold value ⁇ . When an offset amount is added to the quantization parameter QP, the curve showing the relationship between the quantization parameter QP and the threshold value ⁇ moves in the direction of the arrow. From the above, it is clear to adjust the filter strength.
  • index A and index B are calculated from the equations (2) to (4) using the quantization parameters qPp and qPq of the adjacent block P and block Q, respectively, and the thresholds ⁇ and ⁇ are determined from the table shown in Table 2.
  • qPav (qPp + qPq + 1) >> 1
  • indexA Clip3 (0, 51, qPav + FilterOffsetA)
  • index B Clip 3 (0, 51, qPav + FilterOffset B) (4)
  • the deblocking filter performs operations shown in equations (5) to (7) to calculate pixel data p0 ′ and q0 ′ after filter processing.
  • Clip3 indicates clipping processing.
  • p0 ′ Clip 1 (p 0 + ⁇ ) (5)
  • q0 ' Clip1 (q0 + ⁇ ) (6)
  • Clip 3 ( ⁇ tc, tc ((((q0 ⁇ p0) ⁇ 2) + (p1 ⁇ q1) +4) >> 3)) (7))
  • the deblocking filter calculates “tc” in the equation (7) based on the equation (8) when the chromaEdgeFlag indicates “0”, and calculates based on the equation (9) otherwise.
  • (10) aq
  • the deblocking filter calculates the pixel data p1 ′ after filter processing by performing the operation shown in equation (12) when chromaEdgeFlag is “0” and ap is “ ⁇ ” or less, and other than that In this case, it is acquired by equation (13).
  • p1 ' p1 + Clip3 (-tc0, tc0, (p2 + ((p0 + q0 + 1) >> 1)-(p1 ⁇ 1)) >> 1) (12)
  • p1 ' p1 (13)
  • the deblocking filter calculates the pixel data q1 ′ after filter processing by performing the operation shown in equation (14) when the chromaEdgeFlag is “0” and aq is “ ⁇ ” or less, and other than that In this case, it is acquired by equation (15).
  • q1 ' q1 + Clip3 (-tc0, tc0, (q2 + ((p0 + q0 + 1) >> 1)-(q1 ⁇ 1)) >> 1) (14)
  • q1 ' q1 (15)
  • the deblocking filter calculates pixel data p0 ′, p1 ′, p2 ′ according to equations (17) to (19) when the chromaEdgeFlag indicates “0” and the condition of equation (16) is satisfied.
  • the deblocking filter calculates pixel data q0 ′, q1 ′, q2 ′ according to equations (24) to (26) when the chromaEdgeFlag indicates “0” and the condition of equation (23) is satisfied.
  • q0 ' (p1 + 2 ⁇ p 0 + 2 ⁇ q 0 + 2 + q 2 + 4)
  • q1 ′ (p0 + q0 + q1 + q2 + 2) >> 2 (25)
  • q2 ' (2 * q3 + 3 * q2 + q1 + q0 + p4 + 4) >> 3 (26)
  • the deblocking filter calculates pixel data q0 ′, q1 ′, q2 ′ according to equations (27) to (29) when chromaEdgeFlag indicates “0” and the condition of equation (23) is not satisfied. .
  • q0 ' (2 * q1 + q0 + p1 + 2) >> 2
  • q1 ' q1
  • q2 ' q2
  • the filter strength adjustment unit 41 adjusts the filter strength in the deblocking filter 24 according to the prediction block size in the optimum mode in the macroblock.
  • block distortion is more noticeable to human eyes when the block size is larger. Also, larger block sizes are more likely to be selected for flat areas that do not contain much texture information.
  • the filtering process of the deblocking filter is a low-pass filter process, and thus the sharpness of the image is lost.
  • the filter strength adjustment unit 41 adjusts the filter strength in the deblocking filter 24 by setting parameter values for adjusting the filter strength in accordance with the prediction block size.
  • the filter strength adjustment unit 41 adjusts the filter strength in accordance with the larger prediction block size when the prediction block size in the optimum mode is the expanded block size in either the relevant block or the adjacent block. .
  • the filter strength adjustment unit 41 sets prediction block sizes of two adjacent blocks so that the filter strength becomes stronger as the block size is larger. Adjust the filter strength according to the combination of
  • FIG. 4 shows the configuration of the deblocking filter and the filter strength adjustment unit.
  • the filter strength adjustment unit 41 includes a block size buffer 411 and a parameter selection unit 412.
  • the block size buffer 411 accumulates information indicating the predicted block size in the optimum mode selected by the predicted image / optimum mode selection unit 33 for one frame image. That is, in the block size buffer 411, information regarding the predicted block size of each macro block in the one frame image to be encoded is stored.
  • the parameter selection unit 412 sets a parameter value based on the information of the predicted block size of the block size buffer 411 so that filtering processing is likely to be applied to the decoded image portion of a larger block size.
  • the parameter selection unit 412 is, for example, H.264.
  • the values of FilterOffsetA and FilterOffsetB specified by slice_alpha_c0_offset_div2 and slice_beta_offset_div2 which are syntax elements of the H.264 / AVC standard are set to larger values.
  • the parameter selection unit 412 sets FilterOffsetA and FilterOffsetB in advance according to the combination of adjacent prediction block sizes, and determines which prediction block size is the adjacent block based on information of the prediction block size. Do. Furthermore, a value corresponding to the combination of the determined prediction block sizes is used.
  • parameter selection unit 412 calculates index A and index B from the above equations (2) to (4), and uses the table shown in Table 2 to set threshold values ⁇ and ⁇ which are parameter values for setting the filter strength. It is set according to the predicted block size, and is output to the filter strength determination unit 241 of the deblocking filter 24.
  • the filter strength determination unit 241 determines the block boundary strength data Bs based on the prediction mode information supplied from the lossless encoding unit 16 and determines the determined block boundary strength data Bs and the threshold value ⁇ supplied from the parameter selection unit 412. And ⁇ are output to the filter processing unit 242.
  • the filter processing unit 242 performs the above-described filter operation using the block boundary strength data Bs, the threshold values ⁇ and ⁇ , and the pixel data p3, p2, p1, p0, q0, q1, and q3 of the block boundary portion, and performs filter processing
  • the subsequent pixel data p3 ', p2', p1 ', p0', q0 ', q1', q2 ', q3' are calculated.
  • FIG. 5 shows predicted block sizes used in the image coding process.
  • H. In the H.264 / AVC system, as shown in (C) and (D) of FIG. 5, predicted block sizes of 16 ⁇ 16 pixels to 4 ⁇ 4 pixels are defined.
  • H. In the case of using a macro block of a size expanded than the H.264 / AVC system, for example, in the case of using a 32 ⁇ 32 pixel macro block, a predicted block size shown in FIG. 5B is defined, for example.
  • the predicted block size shown in (A) of FIG. 5 is defined.
  • “Skip / direct” indicates that the motion prediction / compensation unit 32 is the predicted block size when the skipped macroblock or the direct mode is selected. Also, “ME” indicates that it is a motion compensation block size. Also, “P8 ⁇ 8” indicates that further division can be performed in the lower layer in which the size of the macro block is reduced.
  • H. In order to improve coding efficiency further than H.264 / AVC, with ITU-T and JCTVC (Joint Collaboration Team-Video Coding), which is a joint standardization body of ISO / IEC, High Efficiency Video Coding (HEVC) and The standardization of the called coding scheme is in progress.
  • JCTVC Joint Collaboration Team-Video Coding
  • HEVC High Efficiency Video Coding
  • H.264 is used. It is possible to use a macroblock of a size expanded than the H.264 / AVC system, and a CU (Coding Unit) is defined.
  • the CU is also referred to as a CTB (Coding Tree Block), and the H. It plays the same role as a macroblock in the H.264 / AVC system.
  • the macroblock In the H.264 / AVC system, the macroblock is fixed at a size of 16 ⁇ 16 pixels, whereas the HEVC coding system is not fixed in size, and in each sequence, in the image compression information It will be specified.
  • LCU Large Coding Unit
  • SCU Smallest Coding Unit
  • FIG. 6 shows an example of a CU defined in the HEVC coding scheme.
  • the size of the LCU is 128, and the maximum hierarchical depth is 5.
  • split_flag is 1, a 2N ⁇ 2N sized CU is divided into an N ⁇ N sized CU, which is one level lower.
  • CU is divided into PU (Prediction Unit) which is a unit of intra or inter prediction, and is divided into TU (Transform Unit) which is a unit of orthogonal transformation.
  • PU Prediction Unit
  • TU Transform Unit
  • the CU is further divided into PUs, which are units of intra or inter prediction, and divided into TUs, which are units of orthogonal transformation, and prediction processing and orthogonal transformation processing are performed.
  • PUs which are units of intra or inter prediction
  • TUs which are units of orthogonal transformation
  • prediction processing and orthogonal transformation processing are performed.
  • 16 ⁇ 16 and 32 ⁇ 32 orthogonal transformations in addition to 4 ⁇ 4 and 8 ⁇ 8.
  • blocks and macroblocks include the concepts of CUs, PUs, and TUs as described above, and are not limited to blocks of fixed sizes.
  • FIG. 7 is a flowchart showing the image coding processing operation.
  • the A / D conversion unit 11 A / D converts the input image signal.
  • step ST12 the screen rearrangement buffer 12 performs image rearrangement.
  • the screen rearrangement buffer 12 stores the image data supplied from the A / D converter 11, and performs rearrangement from the display order of each picture to the coding order.
  • step ST13 the subtraction unit 13 generates prediction error data.
  • the subtraction unit 13 generates a prediction error data by calculating the difference between the image data of the image rearranged in step ST12 and the prediction image data selected by the prediction image / optimum mode selection unit 33.
  • the prediction error data has a smaller amount of data than the original image data. Therefore, the amount of data can be compressed as compared to the case of encoding the image as it is.
  • the orthogonal transformation unit 14 performs orthogonal transformation processing.
  • the orthogonal transformation unit 14 orthogonally transforms the prediction error data supplied from the subtraction unit 13. Specifically, orthogonal transformation such as discrete cosine transformation and Karhunen-Loeve transformation is performed on the prediction error data to output transformation coefficient data.
  • step ST15 the quantization unit 15 performs quantization processing.
  • the quantization unit 15 quantizes transform coefficient data.
  • rate control is performed as described in the process of step ST25 described later.
  • step ST16 the inverse quantization unit 21 performs inverse quantization processing.
  • the inverse quantization unit 21 inversely quantizes the transform coefficient data quantized by the quantization unit 15 with a characteristic corresponding to the characteristic of the quantization unit 15.
  • the inverse orthogonal transform unit 22 performs inverse orthogonal transform processing.
  • the inverse orthogonal transformation unit 22 inversely orthogonally transforms the transform coefficient data inversely quantized by the inverse quantization unit 21 with the characteristic corresponding to the characteristic of the orthogonal transformation unit 14.
  • step ST18 the addition unit 23 generates decoded image data.
  • the addition unit 23 adds the predicted image data supplied from the predicted image / optimum mode selection unit 33 and the data after inverse orthogonal transformation of the position corresponding to the predicted image to generate decoded image data.
  • step ST19 the deblocking filter 24 performs filter processing.
  • the deblocking filter 24 filters the decoded image data output from the adding unit 23 to remove block distortion.
  • step ST20 the frame memory 25 stores the decoded image data.
  • the frame memory 25 stores the decoded image data before the filtering process and the decoded image data after the filtering process.
  • step ST21 the intra prediction unit 31 and the motion prediction / compensation unit 32 perform prediction processing. That is, the intra prediction unit 31 performs intra prediction processing in the intra prediction mode, and the motion prediction / compensation unit 32 performs motion prediction / compensation processing in the inter prediction mode.
  • this process performs prediction processes in all candidate prediction modes, and the cost function values in all candidate prediction modes are respectively It is calculated. Then, based on the calculated cost function value, the optimal intra prediction mode and the optimal inter prediction mode are selected, and the predicted image generated in the selected prediction mode and its cost function and prediction mode information are predicted image / optimum mode The selection unit 33 is supplied.
  • the prediction image / optimum mode selection unit 33 selects prediction image data. Based on the cost function values output from the intra prediction unit 31 and the motion prediction / compensation unit 32, the predicted image / optimum mode selection unit 33 determines the optimal mode with the best coding efficiency. Further, the prediction image / optimum mode selection unit 33 selects prediction image data of the determined optimum mode and supplies the selected prediction image data to the subtraction unit 13 and the addition unit 23. This predicted image is used for the calculation of steps ST13 and ST18 as described above. The prediction mode information corresponding to the selected prediction image data is output to the lossless encoding unit 16 and the filter strength adjustment unit 41.
  • the lossless encoding unit 16 performs lossless encoding processing.
  • the lossless encoding unit 16 losslessly encodes the quantized data output from the quantization unit 15. That is, lossless coding such as variable-length coding or arithmetic coding is performed on the quantized data to perform data compression.
  • prediction mode information for example, including macroblock type, prediction mode, motion vector information, reference picture information, and the like
  • the lossless encoded data of the prediction mode information is added to the header information of the encoded stream generated by the lossless encoding of the quantized data.
  • step ST24 the accumulation buffer 17 performs accumulation processing to accumulate a coded stream.
  • the encoded stream stored in the storage buffer 17 is appropriately read and transmitted to the decoding side through the transmission path.
  • step ST25 the rate control unit 18 performs rate control.
  • the rate control unit 18 controls the rate of the quantization operation of the quantization unit 15 so that overflow or underflow does not occur in the accumulation buffer 17 when the accumulation buffer 17 accumulates the encoded stream.
  • step ST21 of FIG. 7 will be described with reference to the flowchart of FIG.
  • the intra prediction unit 31 performs an intra prediction process.
  • the intra prediction unit 31 performs intra prediction on the image of the block to be processed in all candidate intra prediction modes.
  • the decoded image data stored in the frame memory 25 without being subjected to the filtering process by the deblocking filter 24 is used as the image data of the decoded image referred to in intra prediction.
  • this process performs intra prediction in all candidate intra prediction modes, and calculates cost function values for all candidate intra prediction modes. Then, based on the calculated cost function value, one intra prediction mode with the best coding efficiency is selected from all the intra prediction modes.
  • step ST32 the motion prediction / compensation unit 32 performs inter prediction processing.
  • the motion prediction / compensation unit 32 performs inter prediction processing of all candidate inter prediction modes (all prediction block sizes) using the decoded image data after filter processing stored in the frame memory 25.
  • the prediction process is performed in all candidate inter prediction modes, and cost function values are calculated for all candidate inter prediction modes. Then, based on the calculated cost function value, one inter prediction mode with the best coding efficiency is selected from all the inter prediction modes.
  • step ST41 the intra prediction unit 31 performs intra prediction in each prediction mode.
  • the intra prediction unit 31 generates predicted image data for each intra prediction mode using the decoded image data before filter processing stored in the frame memory 25.
  • the intra prediction unit 31 calculates cost function values for each prediction mode.
  • H.1 As defined in JM (Joint Model), which is reference software in the H.264 / AVC system, this is performed based on either the High Complexity mode or the Low Complexity mode.
  • indicates the entire set of prediction modes to be candidates for encoding the block or macroblock.
  • D indicates the difference energy (distortion) between the decoded image and the input image when encoding is performed in the prediction mode.
  • R is a generated code amount including orthogonal transform coefficients, prediction mode information and the like, and ⁇ is a Lagrange multiplier given as a function of the quantization parameter QP.
  • Cost (Mode ⁇ ) D + QPtoQuant (QP) ⁇ Header_Bit (31)
  • indicates the entire set of prediction modes to be candidates for encoding the block or macroblock.
  • D indicates the difference energy (distortion) between the decoded image and the input image when encoding is performed in the prediction mode.
  • Header_Bit is a header bit for the prediction mode, and QPtoQuant is a function given as a function of the quantization parameter QP.
  • the intra prediction unit 31 determines the optimal intra prediction mode.
  • the intra prediction unit 31 selects one intra prediction mode in which the cost function value is the minimum value among them based on the cost function value calculated in step ST42, and determines it as the optimal intra prediction mode.
  • step ST32 in FIG. 8 will be described with reference to the flowchart in FIG.
  • step ST51 the motion prediction / compensation unit 32 determines a motion vector and a reference image for each prediction mode. That is, the motion prediction / compensation unit 32 determines a motion vector and a reference image for the block to be processed in each prediction mode.
  • step ST52 the motion prediction / compensation unit 32 performs motion compensation on each prediction mode.
  • the motion prediction / compensation unit 32 performs motion compensation on the reference image for each prediction mode (each prediction block size) based on the motion vector determined in step ST51, and generates predicted image data for each prediction mode.
  • the motion prediction / compensation unit 32 In step ST53, the motion prediction / compensation unit 32 generates motion vector information for each prediction mode.
  • the motion prediction / compensation unit 32 generates motion vector information to be included in the coded stream for the motion vector determined in each prediction mode. For example, a prediction motion vector is determined using median prediction or the like, and motion vector information indicating the difference between the motion vector detected by motion prediction and the prediction motion vector is generated.
  • the motion vector information generated in this manner is also used to calculate the cost function value in the next step ST54, and finally, when the corresponding prediction image is selected by the prediction image / optimum mode selection unit 33. Is included in the prediction mode information and output to the lossless encoding unit 16.
  • step ST54 the motion prediction / compensation unit 32 calculates cost function values for each inter prediction mode.
  • the motion prediction / compensation unit 32 calculates the cost function value using the equation (30) or the equation (31) described above. Note that the calculation of the cost function value for the inter prediction mode is based on H.264. The evaluation of cost function values of Skip Mode and Direct Mode defined in the H.264 / AVC system is also included.
  • step ST55 the motion prediction / compensation unit 32 determines the optimal inter prediction mode.
  • the motion prediction / compensation unit 32 selects one prediction mode in which the cost function value is the minimum value among them based on the cost function value calculated in step ST54, and determines it as the optimal inter prediction mode.
  • deblocking_filter_control_present_flag is present in the picture parameter set.
  • slice_alpha_c0_offset_div2 and slice_beta_offset_div2 are present in the slice header, and when they do not exist, "0" is used as a default value.
  • the offset values SZa and SZb are, for example, integers satisfying 0 ⁇ SZa ⁇ SZb ⁇ 6 according to the combination of the sizes of two adjacent blocks, together with FilterOffsetA and FilterOffsetB as shown in Table 4 It is assumed that the value is defined as follows.
  • Table 4 shows an offset for each combination of prediction block sizes of adjacent two blocks so that the filter strength becomes stronger as the block size is larger when a plurality of macroblocks having a block size larger than a predetermined macroblock are used. It shows the value. Further, the offset values in Table 4 are set to adjust the filter strength in accordance with the larger prediction block size, when the prediction block size is different between two adjacent blocks. That is, the values of FilterOffsetA and FilterOffsetB are set in accordance with the larger sized block of the two adjacent blocks. For example, when the larger block is 64 pixels, the offset value SZb is set. When the larger block is 32 pixels, the offset value SZa is set. When the larger block is 16 ⁇ 16 pixels, the offset value is “0”.
  • FIG. 11 is a flowchart showing the filter setting process.
  • the filter strength adjustment unit 41 acquires the prediction block size in the optimum mode.
  • the filter strength adjustment unit 41 acquires the prediction block size corresponding to the prediction image selected in step ST22 of FIG. 7, that is, the prediction block size when encoding is performed in the optimal mode.
  • step ST62 the filter strength adjustment unit 41 determines whether the boundary portion of the block or the adjacent block is 64 pixels. The filter strength adjustment unit 41 proceeds to step ST63 when the boundary portion of the block or the adjacent block is 64 pixels, and proceeds to step ST64 when the boundary portion of the block and the adjacent block is smaller than 64 pixels.
  • step ST63 the filter strength adjustment unit 41 selects the offset value SZb, and proceeds to step ST67 as FilterOffsetA and FilterOffsetB.
  • step ST64 the filter strength adjustment unit 41 determines whether the boundary portion of the block or the adjacent block is 32 pixels. The filter strength adjustment unit 41 proceeds to step ST65 when the boundary portion of the block or the adjacent block is 32 pixels, and proceeds to step ST66 when the boundary portion of the block and the adjacent block is smaller than 32 pixels.
  • step ST65 the filter strength adjustment unit 41 selects the offset value SZa ( ⁇ SZb), and proceeds to step ST67 as FilterOffsetA and FilterOffsetB.
  • step ST66 the filter strength adjustment unit 41 selects the offset value 0 ( ⁇ SZa), and proceeds to step ST67 as FilterOffsetA and FilterOffsetB.
  • the filter strength adjustment unit 41 performs filter strength adjustment.
  • the filter strength adjustment unit 41 determines threshold values ⁇ and ⁇ that are parameter values for setting the filter strength using the FilterOffsetA and FilterOffsetB set in steps ST63, 65 and 66, and outputs them to the deblocking filter 24.
  • the deblocking filter 24 can easily apply the filter processing by setting the thresholds ⁇ and ⁇ by increasing the offset amount. it can.
  • Table 4 and FIG. 11 illustrate combinations of 64 ⁇ 64 images, 32 ⁇ 32 pixels, and 16 ⁇ 16 pixels, the combination is not limited to these sizes.
  • the offset value SZb is used when the larger block is 64 pixels, the offset value SZa when the larger block is 32 pixels, and the offset value “0” when 16 ⁇ 16 pixels are used. Is not limited to the combination described above as long as it is easy to apply a filter to a large block and obtain good image quality.
  • the user when the user wants to set a value different from Table 4 independently, the user sets the value of deblocking_filter_control_present_flag in the picture parameter set to the predetermined value “1”, and the user sets FilterOffsetA16, FilterOffsetA32, FilterOffsetA64 and FilterOffsetB16, in the slice header. It is possible to set values of FilterOffsetB32 and FilterOffsetB64.
  • Each parameter corresponds to the case where the larger one of two adjacent blocks is 16 ⁇ 16, 32 ⁇ 32, 64 ⁇ 64.
  • the block size at which the coding efficiency is the best is determined, and the coding process of the image data is performed with the determined block size.
  • the information indicating the block size is accumulated in the block size buffer 411 of the filter strength adjustment unit 41. Therefore, when decoded image data is generated by decoding image data that has been subjected to the encoding process with the block size with the highest encoding efficiency, the position of the predicted block in the decoded image becomes clear. Therefore, block distortion can be reduced even if the block size is large by adjusting the filter strength for a large block size to make it easy to apply a filter based on the information stored in the block size buffer 411. Further, since block distortion in the decoded image data can be reduced, it is possible to prevent the prediction error data from becoming large due to the influence of the block distortion, and hence the amount of data after the encoding process can be further reduced.
  • An encoded stream generated by encoding an input image is supplied to an image decoding apparatus via a predetermined transmission path, a recording medium, and the like, and is decoded.
  • FIG. 12 shows the configuration of the image decoding apparatus.
  • the image decoding apparatus 50 includes an accumulation buffer 51, a lossless decoding unit 52, an inverse quantization unit 53, an inverse orthogonal transformation unit 54, an addition unit 55, a deblocking filter 56, a screen rearrangement buffer 57, and a D / A conversion unit 58. Is equipped. Further, the image decoding apparatus 50 includes a frame memory 61, selectors 62 and 65, an intra prediction unit 63, a motion compensation unit 64, and a filter strength adjustment unit 71.
  • the accumulation buffer 51 accumulates the transmitted encoded stream.
  • the lossless decoding unit 52 decodes the coded stream supplied from the accumulation buffer 51 by a method corresponding to the coding method of the lossless coding unit 16 in FIG. 1. Further, the lossless decoding unit 52 outputs prediction mode information obtained by decoding header information of the encoded stream to the intra prediction unit 63, the motion compensation unit 64, and the deblocking filter 56.
  • the inverse quantization unit 53 inversely quantizes the quantized data decoded by the lossless decoding unit 52 in a method corresponding to the quantization method of the quantization unit 15 in FIG. 1.
  • the inverse orthogonal transform unit 54 performs inverse orthogonal transform on the output of the inverse quantization unit 53 according to a scheme corresponding to the orthogonal transform scheme of the orthogonal transform unit 14 in FIG.
  • the addition unit 55 adds the data after the inverse orthogonal transform and the predicted image data supplied from the selector 65 to generate decoded image data, and outputs the decoded image data to the deblocking filter 56 and the frame memory 61.
  • the deblocking filter 56 performs a filtering process on the decoded image data supplied from the adding unit 55, removes block distortion, supplies it to the frame memory 61, stores it, and outputs it to the screen rearrangement buffer 57. Further, the deblocking filter 56 adjusts the filter strength based on the prediction mode information supplied from the lossless decoding unit 52 and the threshold values ⁇ and ⁇ for filter strength adjustment supplied from the filter strength adjustment unit 71 described later. .
  • the screen rearranging buffer 57 rearranges the images. That is, the order of the frames rearranged for the encoding order by the screen rearrangement buffer 12 in FIG. 1 is rearranged in the original display order and output to the D / A conversion unit 58.
  • the D / A converter 58 D / A converts the image data supplied from the screen rearrangement buffer 57 and outputs the data to a display (not shown) to display the image.
  • the frame memory 61 holds the decoded image data before the filtering process supplied from the adding unit 55 and the decoded image data after the filtering process supplied from the deblocking filter 24.
  • the selector 62 decodes decoded image data before filter processing read from the frame memory 61 when decoding of a prediction block for which intra prediction has been performed is performed based on prediction mode information supplied from the lossless decoding unit 52. Are supplied to the intra prediction unit 63. Also, when decoding of the prediction block for which inter prediction has been performed is performed based on the prediction mode information supplied from the lossless decoding unit 52, the selector 26 performs decoding after filter processing read from the frame memory 61. The image data is supplied to the motion compensation unit 64.
  • the intra prediction unit 63 generates a prediction image based on the prediction mode information supplied from the lossless decoding unit 52, and outputs the generated prediction image data to the selector 65.
  • the intra prediction unit 63 also outputs information indicating the block size of the generated predicted image to the filter strength adjustment unit 71.
  • the motion compensation unit 64 performs motion compensation based on the prediction mode information supplied from the lossless decoding unit 52, generates prediction image data, and outputs the prediction image data to the selector 65. That is, the motion compensation unit 64 performs motion compensation on the reference image indicated by the reference frame information based on the motion vector information and the reference frame information based on the motion vector information and the reference frame information included in the prediction mode information. Generate predicted image data. Further, the motion compensation unit 64 outputs information indicating the block size of the generated predicted image to the filter strength adjustment unit 71.
  • the selector 65 supplies the predicted image data generated by the intra prediction unit 63 to the addition unit 55. Further, the selector 65 supplies the prediction image data generated by the motion compensation unit 64 to the addition unit 55.
  • the filter strength adjustment unit 71 is configured similarly to the filter strength adjustment unit 41 shown in FIG. 4 and performs the same operation.
  • the filter strength adjustment unit 71 adjusts the filter strength in the deblocking filter 56 by setting parameter values for adjusting the filter strength in accordance with the prediction block size. Further, the filter strength adjustment unit 71 adjusts the filter strength in accordance with the larger predicted block size when the predicted block size in the optimum mode is a block size expanded in either the relevant block or the adjacent block. . Furthermore, when a plurality of macroblocks having a block size larger than that of a predetermined macroblock is used, the filter strength adjustment unit 71 predicts the block sizes of two adjacent blocks so that the filter strength becomes stronger as the block size becomes larger.
  • the filter strength adjustment unit 71 sets threshold values ⁇ and ⁇ which are parameter values for adjusting the filter strength according to the block size supplied from the intra prediction unit 63 and the motion compensation unit 64, and performs the deblocking filter. Output to 56
  • step ST71 the accumulation buffer 51 accumulates the transmitted encoded stream.
  • step ST72 the lossless decoding unit 52 performs lossless decoding processing.
  • the lossless decoding unit 52 decodes the encoded stream supplied from the accumulation buffer 51. That is, quantized data of each picture encoded by the lossless encoding unit 16 of FIG. 1 is obtained. Further, the lossless decoding unit 52 performs lossless decoding of prediction mode information included in header information of the encoded stream, and supplies the obtained prediction mode information to the deblocking filter 56 and the selectors 62 and 65. Furthermore, the lossless decoding unit 52 outputs prediction mode information to the intra prediction unit 63 when the prediction mode information is information related to the intra prediction mode. In addition, when the prediction mode information is information related to the inter prediction mode, the lossless decoding unit 52 outputs the prediction mode information to the motion compensation unit 64.
  • step ST73 the inverse quantization unit 53 performs inverse quantization processing.
  • the inverse quantization unit 53 inversely quantizes the quantized data decoded by the lossless decoding unit 52 with a characteristic corresponding to the characteristic of the quantization unit 15 in FIG. 1.
  • the inverse orthogonal transform unit 54 performs inverse orthogonal transform processing.
  • the inverse orthogonal transformation unit 54 performs inverse orthogonal transformation on the transform coefficient data inversely quantized by the inverse quantization unit 53 with a characteristic corresponding to the characteristic of the orthogonal transformation unit 14 in FIG. 1.
  • step ST75 the addition unit 55 generates decoded image data.
  • the addition unit 55 adds the data obtained by performing the inverse orthogonal transformation process and the predicted image data selected in step ST79 described later to generate decoded image data. The original image is thus decoded.
  • step ST76 the deblocking filter 56 performs filter processing.
  • the deblocking filter 56 performs filter processing of the decoded image data output from the adding unit 55 to remove block distortion included in the decoded image.
  • step ST77 the frame memory 61 performs storage processing of the decoded image data.
  • step ST78 the intra prediction unit 63 and the motion compensation unit 64 perform prediction processing.
  • the intra prediction unit 63 and the motion compensation unit 64 respectively perform prediction processing corresponding to the prediction mode information supplied from the lossless decoding unit 52.
  • the intra prediction unit 63 performs intra prediction processing based on the prediction mode information, and generates prediction image data. Also, when prediction mode information of inter prediction is supplied from the lossless decoding unit 52, the motion compensation unit 64 performs motion compensation based on the prediction mode information to generate prediction image data.
  • step ST79 the selector 65 selects prediction image data. That is, the selector 65 selects the prediction image supplied from the intra prediction unit 63 and the prediction image data generated by the motion compensation unit 64 and supplies it to the addition unit 55, and as described above, the reverse orthogonality is made in step ST75. The output of the conversion unit 54 is added.
  • step ST80 the screen rearrangement buffer 57 performs image rearrangement. That is, in the screen rearrangement buffer 57, the order of the frames rearranged for encoding by the screen rearrangement buffer 12 of the image encoding device 10 of FIG. 1 is rearranged in the original display order.
  • step ST81 the D / A conversion unit 58 D / A converts the image data from the screen rearrangement buffer 57. This image is output to a display not shown, and the image is displayed.
  • the filter strength adjustment unit 71 performs the filter strength adjustment process shown in FIG. 11 described above.
  • the filter strength adjustment unit 71 is, for example, H.264.
  • FilterOffsetA and FilterOffsetB specified by slice_alpha_c0_offset_div2 and slice_beta_offset_div2 which are syntax elements of the H.264 / AVC standard, parameter values for adjusting the filter strength so that the filter is more likely to be applied as the prediction block size becomes larger. Threshold values ⁇ and ⁇ are set.
  • the filter strength adjustment unit 71 generates threshold values ⁇ and ⁇ that are parameter values for adjusting the filter strength according to the predicted block size when encoding is performed, and outputs the threshold values ⁇ and ⁇ to the deblocking filter 56.
  • the deblocking filter 56 determines block boundary strength data Bs based on prediction mode information, and performs filtering on the decoded image data using the threshold values ⁇ and ⁇ .
  • the filter strength adjustment unit 71 sets the value of deblocking_filter_control_present_flag of the picture parameter set that is a syntax element to a predetermined value and the values of FilterOffsetA and FilterOffsetB are described in the slice header, this is described.
  • the threshold values ⁇ and ⁇ are generated using the above values and output to the deblocking filter 56. If such adjustment of the filter strength is performed, if the user independently sets a value different from that in Table 4 in the image encoding device, the image decoding device may perform filter processing according to the user's setting. become able to.
  • the information indicating the block size used in the encoding process is accumulated in the block size buffer of the filter strength adjustment unit 71. Therefore, when the coded stream is decoded to generate decoded image data, the position of the prediction block in the decoded image becomes clear. Therefore, block distortion can be reduced even if the block size is large by adjusting the filter strength for a large block size to make it easy to apply a filter based on the information stored in the block size buffer. Therefore, it is possible to obtain a decoded image with good image quality.
  • the series of processes described in the specification can be performed by hardware, software, or a combined configuration of both.
  • a program recording the processing sequence is installed and executed in a memory in a computer incorporated in dedicated hardware.
  • the program may be installed and executed on a general-purpose computer that can execute various processes.
  • the program can be recorded in advance on a hard disk or ROM (Read Only Memory) as a recording medium.
  • the program may be temporarily or permanently stored in a removable recording medium such as a flexible disk, a compact disc read only memory (CD-ROM), a magneto optical disc (MO), a digital versatile disc (DVD), a magnetic disc, or a semiconductor memory. It can be stored (recorded).
  • a removable recording medium such as a flexible disk, a compact disc read only memory (CD-ROM), a magneto optical disc (MO), a digital versatile disc (DVD), a magnetic disc, or a semiconductor memory. It can be stored (recorded).
  • Such removable recording media can be provided as so-called package software.
  • the program is installed on the computer from the removable recording medium as described above, and is wirelessly transferred from the download site to the computer or transferred to the computer via a network such as LAN (Local Area Network) or the Internet by wire.
  • the computer can receive the program transferred as such, and can install it on a recording medium such as a built-in hard disk.
  • the filter strength is adjusted according to the block size of the adjacent block adjacent at the block boundary. For this reason, even if a macro block having an expanded size is used, it is possible to obtain a high quality decoded image with reduced block distortion by adjusting the filter strength according to the block size. Therefore, as in MPEG, H. 26x, etc., image information (bit stream) obtained by encoding in block units is transmitted / received via network media such as satellite broadcasting, cable TV, Internet, mobile phone etc. It is suitable for an image coding apparatus, an image decoding apparatus, etc. used when processing on storage media such as optical, magnetic disk, flash memory, etc.
  • lossless decoding unit 58 ⁇ ⁇ D / A converter, 64 ⁇ ⁇ ⁇ motion compensation unit, 71 ⁇ ⁇ ⁇ ⁇ filter strength adjustment unit 241 ... filter strength decision unit, 242 ... filter processing unit, 411 ... block size buffer, 412 ... parameter selector

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

 拡張された大きさのマクロブロックを用いる場合でも良好な画質の復号画像を得られるようにする。 デブロッキングフィルタ24は、画像データがブロック毎に符号化されている符号化ストリームに対してブロック歪みを除去するフィルタ処理を行う。フィルタ強度調整部41は、予測画像データのブロックサイズに応じてフィルタ強度を調整する。例えば画像符号化時には、フィルタ処理後の復号画像データを用いて生成された符号化効率が最良となる予測画像データのブロックサイズに応じて、フィルタ強度を調整する。また、画像復号化時に復号画像データに対してブロック歪みを除去するフィルタ処理を行い、予測画像データのブロックサイズに応じてフィルタ強度を調整するものとしてもよい。

Description

画像処理装置と画像処理方法
 この発明は、画像処理装置と画像処理方法に関する。詳しくは、良好な画質の復号画像を得られるようにする。
 近年、画像情報をディジタルとして取り扱い、その際、効率の高い情報の伝送、蓄積を行う装置、例えば離散コサイン変換等の直交変換と動き補償により圧縮するMPEGなどの方式に準拠した装置が、放送局や一般家庭において普及しつつある。
 特に、MPEG2(ISO/IEC13818-2)は、汎用画像符号化方式として定義されており、プロフェッショナル用途およびコンシューマー用途の広範なアプリケーションに現在広く用いられている。このMPEG2圧縮方式を用いることにより、例えば720×480画素を持つ標準解像度の飛び越し走査画像であれば、4~8Mbps符号量(ビットレート)を割り当てることで良好な画質の実現が可能である。また、1920×1088画素を持つ高解像度の飛び越し走査画像であれば18~22Mbpsの符号量(ビットレート)を割り当てることで良好な画質の実現が可能である。
 MPEG2は主として放送用に適合する高画質符号化を対象としていたが、MPEG1より低い符号量(ビットレート)、つまりより高い圧縮率の符号化方式には対応していなかった。携帯端末の普及により、今後そのような符号化方式のニーズは高まると思われ、これに対応してMPEG4符号化方式の標準化が行われた。画像符号化方式に関しては、1998年12月にISO/IEC14496-2としてその規格が国際標準に承認された。
 さらに、近年、当初テレビ会議用の画像符号化を目的として、H.26L(ITU-T Q6/16 VCEG)という標準の規格化が進んでいる。H.26LはMPEG2やMPEG4といった従来の符号化方式に比べ、その符号化、復号化により多くの演算量が要求されるものの、より高い符号化効率が実現されることが知られている。また、現在、MPEG4の活動の一環として、このH.26Lをベースに、より高い符号化効率を実現する標準化がJoint Model of Enhanced-Compression Video Codingとして行われている。標準化のスケジュールとしては、2003年3月にはH.264およびMPEG-4 Part10 (Advanced Video Coding、以下「H.264/AVC」と記す)という名の下に国際標準となった。
 さらに、その拡張として、RGBや4:2:2、4:4:4といった、業務用に必要な符号化ツールや、MPEG2で規定されていた8×8DCTや量子化マトリクスをも含んだFRExt(Fidelity Range Extension)の標準化が2005年2月に完了した。これにより、H.264/AVC方式を用いて、映画に含まれるフィルムノイズをも良好に表現することが可能な符号化方式となって、Blu-Ray(商標)等の幅広いアプリケーションに用いられる運びとなった。
 このような符号化復号化処理では、ブロック単位で画像データの符号化が行われている。また、符号化データの復号化では、例えば特許文献1に示すように、ブロック境界強度や量子化パラメータを基にしてフィルタ処理を行うことブロック歪みを抑制することが行われている。
 さらに、昨今、4000×2000画素程度の画像を圧縮したい、またはインターネットのような、限られた伝送容量の環境において、ハイビジョン画像を配信したいといった、さらなる高圧縮率符号化に対するニーズが高まっている。このため、非特許文献1のように、マクロブロックサイズを、MPEG2やH.264/AVCよりも大きい例えば32画素×32画素といった大きさにすることが提案されている。すなわち、非特許文献1では、マクロブロックについて階層構造を採用することにより、16×16画素ブロック以下に関しては、H.264/AVCにおけるマクロブロックと互換性を保ち、そのスーパーセットとして、より大きなブロックが定義されている。
特開2007-36463号公報
"Video Coding Using Extended Block"(Study Group16, Contribution 123, ITU, 2009年1月)
 ところで、拡張された大きさのマクロブロックを用いる場合、特に低いビットレートにおいては、ブロック歪みが大きくなる。このため、従来のデブロッキングフィルタでブロック歪みの除去を行う場合には、ブロック歪みが十分に除去されなくなって画質の劣化を生じてしまうおそれがある。
 そこで、この発明では、拡張された大きさのマクロブロックを用いる場合でも良好な画質の復号画像を得られる画像処理装置と画像処理方法を提供することを目的とする。
 この発明の第1の側面は、画像データがブロック毎に符号化されている符号化ストリームを復号化して復号画像データを生成する復号部と、前記復号部により生成された復号画像データに対してブロック歪みを除去するフィルタ処理を行うフィルタと、ブロック境界で隣接する隣接ブロックのブロックサイズに応じて、前記フィルタ処理におけるフィルタ強度を調整するフィルタ強度調整部とを設けた画像処理装置にある。
 この発明の第2の側面は、復号画像データに対してブロック歪みを除去するフィルタ処理を行うフィルタと、ブロック境界で隣接する隣接ブロックのブロックサイズに応じて、前記フィルタ処理におけるフィルタ強度を調整するフィルタ強度調整部と、前記フィルタによりフィルタ処理が行われた復号画像データを用いて、画像データを符号化する符号化部とを設けた画像処理装置にある。
 この発明では、例えば画像データの符号化で生成された量子化データの逆量子化や逆量子化後のデータの逆直交変換等を行うことにより得られた復号画像データや、符号化ストリームの可逆復号化を行うことにより得られた量子化データの逆量子化や逆量子化後のデータの逆直交変換等を行うことにより得られた復号画像データに対して、ブロック歪みを除去するフィルタ処理が行われる。フィルタ処理では、ブロックサイズが大きいほどフィルタ処理がかかりやすくなるようにフィルタ強度の調整が行われる。フィルタ強度の調整では、フィルタ強度を調整するパラメータ値がブロックサイズに応じて設定される。また、隣接する2つのブロックでブロックサイズが異なる場合、大きい方のブロックサイズに応じてフィルタ強度が調整される。また、フィルタ強度の調整では、符号化規格のシンタックス・エレメントの値が調整される。例えば、H.264/AVC規格のシンタックス・エレメントであるslice_alpha_c0_offset_div2およびslice_beta_offset_div2で指定するFilterOffsetAおよびFilterOffsetBの値を調整してフィルタ強度の調整が行われる。さらに、予め設けられているパラメータ値と異なるパラメータ値を用いるときは、シンタックス・エレメントであるピクチャパラメータセットのdeblocking_filter_control_present_flagの値を所定の値例えば「1」に設定し、スライスヘッダに、FilterOffsetAおよびFilterOffsetBの値が記述される。
 この発明の第3の側面は、画像データがブロック毎に符号化されている符号化ストリームを復号化して復号画像データを生成する工程と、前記復号部により生成された復号画像データに対してブロック歪みを除去するフィルタ処理を行う工程と、ブロック境界で隣接する隣接ブロックのブロックサイズに応じて、前記フィルタ処理におけるフィルタ強度を調整する工程とを設けた画像処理方法にある。
 この発明の第4の側面は、復号画像データに対してブロック歪みを除去するフィルタ処理を行う工程と、ブロック境界で隣接する隣接ブロックのブロックサイズに応じて、前記フィルタ処理におけるフィルタ強度を調整する工程と、前記フィルタによりフィルタ処理が行われた復号画像データを用いて、画像データを符号化する工程とを設けた画像処理方法にある。
 この発明によれば、復号画像データに対してブロック歪みを除去するフィルタ処理を行うとき、ブロック境界で隣接する隣接ブロックのブロックサイズに応じてフィルタ強度が調整される。このため、拡張された大きさのマクロブロックが用いられても、ブロックサイズに応じてフィルタ強度を調整することで、ブロック歪みが軽減された良好な画質の復号画像を得られるようになる。
画像符号化装置の構成を示す図である。 デブロッキングフィルタのフィルタ処理に用いる画素データを示した図である。 量子化パラメータQPと閾値αの関係を示す図である。 デブロッキングフィルタとフィルタ強度調整部の構成を示す図である。 画像符号化処理で用いる予測ブロックサイズを示す図である。 HEVC符号化方式で定義されているCUの例を示す図である。 画像符号化処理動作を示すフローチャートである。 予測処理を示すフローチャートである。 イントラ予測処理を示すフローチャートである。 インター予測処理を示すフローチャートである。 フィルタ設定処理を示すフローチャートである。 画像復号化装置の構成を示している。 画像復号化処理動作を示すフローチャートである。
 以下、発明を実施するための形態について説明する。本発明の画像処理装置は、ブロック毎に画像データを符号化処理する画像符号化装置や、画像データがブロック毎に符号化されている符号化ストリームを復号化処理する画像復号化装置等に適用可能であり、画像符号化装置に適用した場合と、画像復号化装置に適用した場合について、以下の順序で説明する。
 1.画像符号化装置の構成
 2.デブロッキングフィルタのフィルタ処理について
 3.画像符号化装置におけるデブロッキングフィルタとフィルタ強度調整部の構成
 4.画像符号化装置の動作
 5.画像復号化装置の構成
 6.画像復号化装置の動作
 <1.画像符号化装置の構成>
 図1は、画像符号化装置の構成を示している。画像符号化装置10は、アナログ/ディジタル変換部(A/D変換部)11、画面並び替えバッファ12、減算部13、直交変換部14、量子化部15、可逆符号化部16、蓄積バッファ17、レート制御部18を備えている。さらに、画像符号化装置10は、逆量子化部21、逆直交変換部22、加算部23、デブロッキングフィルタ24、フレームメモリ25、セレクタ26、イントラ予測部31、動き予測・補償部32、予測画像・最適モード選択部33を備えている。
 A/D変換部11は、アナログの画像信号をディジタルの画像データに変換して画面並べ替えバッファ12に出力する。
 画面並べ替えバッファ12は、A/D変換部11から出力された画像データに対してフレームの並べ替えを行う。画面並べ替えバッファ12は、符号化処理に係るGOP(Group of Pictures)構造に応じてフレームの並べ替えを行い、並べ替え後の画像データを減算部13とイントラ予測部31と動き予測・補償部32に出力する。
 減算部13には、画面並べ替えバッファ12から出力された画像データと、後述する予測画像・最適モード選択部33で選択された予測画像データが供給される。減算部13は、画面並べ替えバッファ12から出力された画像データと予測画像・最適モード選択部33から供給された予測画像データとの差分である予測誤差データを算出して、直交変換部14に出力する。
 直交変換部14は、減算部13から出力された予測誤差データに対して、離散コサイン変換(DCT;Discrete Cosine Transform)、カルーネン・レーベ変換等の直交変換処理を行う。直交変換部14は、直交変換処理を行うことにより得られた変換係数データを量子化部15に出力する。
 量子化部15には、直交変換部14から出力された変換係数データと、後述するレート制御部18からレート制御信号が供給されている。量子化部15は変換係数データの量子化を行い、量子化データを可逆符号化部16と逆量子化部21に出力する。また、量子化部15は、レート制御部18からのレート制御信号に基づき量子化パラメータ(量子化スケール)を切り替えて、量子化データのビットレートを変化させる。
 可逆符号化部16には、量子化部15から出力された量子化データと、後述するイントラ予測部31と動き予測・補償部32および予測画像・最適モード選択部33から予測モード情報が供給される。なお、予測モード情報には、イントラ予測またはインター予測に応じて、例えば予測ブロックサイズを識別可能とするマクロブロックタイプ、予測モード、動きベクトル情報、参照ピクチャ情報等が含まれる。可逆符号化部16は、量子化データに対して例えば可変長符号化、または算術符号化等により可逆符号化処理を行い、符号化ストリームを生成して蓄積バッファ17に出力する。また、可逆符号化部16は、予測モード情報を可逆符号化して、符号化ストリームのヘッダ情報に付加する。
 蓄積バッファ17は、可逆符号化部16からの符号化ストリームを蓄積する。また、蓄積バッファ17は、蓄積した符号化ストリームを伝送路に応じた伝送速度で出力する。
 レート制御部18は、蓄積バッファ17の空き容量の監視を行い、空き容量に応じてレート制御信号を生成して量子化部15に出力する。レート制御部18は、例えば蓄積バッファ17から空き容量を示す情報を取得する。レート制御部18は空き容量が少なくなっているとき、レート制御信号によって量子化データのビットレートを低下させる。また、レート制御部18は蓄積バッファ17の空き容量が十分大きいとき、レート制御信号によって量子化データのビットレートを高くする。
 逆量子化部21は、量子化部15から供給された量子化データの逆量子化処理を行う。逆量子化部21は、逆量子化処理を行うことで得られた変換係数データを逆直交変換部22に出力する。
 逆直交変換部22は、逆量子化部21から供給された変換係数データの逆直交変換処理を行うことで得られたデータを加算部23に出力する。
 加算部23は、逆直交変換部22から供給されたデータと予測画像・最適モード選択部33から供給された予測画像データを加算して復号画像データを生成して、デブロッキングフィルタ24とフレームメモリ25に出力する。
 デブロッキングフィルタ24は、画像の符号化時に生じるブロック歪みを減少させるためのフィルタ処理を行う。デブロッキングフィルタ24は、加算部23から供給された復号画像データからブロック歪みを除去するフィルタ処理を行い、フィルタ処理後の復号画像データをフレームメモリ25に出力する。また、デブロッキングフィルタ24は、後述するフィルタ強度調整部41から供給されたパラメータ値に基づきフィルタ強度を調整する。
 フレームメモリ25は、加算部23から供給された復号画像データとデブロッキングフィルタ24から供給されたフィルタ処理後の復号画像データとを保持する。
 セレクタ26は、イントラ予測を行うためにフレームメモリ25から読み出されたフィルタ処理前の復号画像データをイントラ予測部31に供給する。また、セレクタ26は、インター予測を行うためフレームメモリ25から読み出されたフィルタ処理後の復号画像データを動き予測・補償部32に供給する。
 イントラ予測部31は、画面並べ替えバッファ12から出力された符号化対象画像の画像データとフレームメモリ25から読み出したフィルタ処理前の復号画像データを用いて、候補となる全てのイントラ予測モードのイントラ予測処理を行う。さらに、イントラ予測部31は、各イントラ予測モードに対してコスト関数値を算出して、算出したコスト関数値が最小となるイントラ予測モード、すなわち符号化効率が最良となるイントラ予測モードを、最適イントラ予測モードとして選択する。イントラ予測部31は、最適イントラ予測モードで生成された予測画像データと最適イントラ予測モードに関する予測モード情報、および最適イントラ予測モードでのコスト関数値を予測画像・最適モード選択部33に出力する。また、イントラ予測部31は、後述するようにコスト関数値の算出で用いる発生符号量を得るため、各イントラ予測モードのイントラ予測処理において、イントラ予測モードに関する予測モード情報を可逆符号化部16に出力する。
 動き予測・補償部32は、マクロブロックに対応する全ての予測ブロックサイズで動き予測・補償処理を行う。動き予測・補償部32は、画面並べ替えバッファ12から読み出された符号化対象画像における各予測ブロックサイズの画像毎に、フレームメモリ25から読み出されたフィルタ処理後の復号画像データを用いて動きベクトルを検出する。さらに、動き予測・補償部32は、検出した動きベクトルに基づいて復号画像に動き補償処理を施して予測画像の生成を行う。また、動き予測・補償部32は、各予測ブロックサイズに対してコスト関数値を算出して、算出したコスト関数値が最小となる予測ブロックサイズ、すなわち符号化効率が最良となる予測ブロックサイズを、最適インター予測モードとして選択する。動き予測・補償部32は、最適インター予測モードで生成された予測画像データと最適インター予測モードに関する予測モード情報、および最適インター予測モードでのコスト関数値を予測画像・最適モード選択部33に出力する。また、動き予測・補償部32は、コスト関数値の算出で用いる発生符号量を得るため、各予測ブロックサイズでのインター予測処理において、インター予測モードに関する予測モード情報を可逆符号化部16に出力する。なお、動き予測・補償部32は、インター予測モードとして、スキップドマクロブロックやダイレクトモードでの予測も行う。
 予測画像・最適モード選択部33は、イントラ予測部31から供給されたコスト関数値と動き予測・補償部32から供給されたコスト関数値を、マクロブロック単位で比較して、コスト関数値が少ない方を、符号化効率が最良となる最適モードとして選択する。また、予測画像・最適モード選択部33は、最適モードで生成した予測画像データを減算部13と加算部23に出力する。さらに、予測画像・最適モード選択部33は、最適モードの予測モード情報を可逆符号化部16とフィルタ強度調整部41に出力する。なお、予測画像・最適モード選択部33は、スライス単位でイントラ予測またはインター予測を行う。
 フィルタ強度調整部41は、最適モードの予測モード情報によって示された予測ブロックサイズに応じてフィルタ強度を調整するためのパラメータ値を設定してデブロッキングフィルタ24に出力する。
 <2.デブロッキングフィルタのフィルタ処理について>
 デブロッキングフィルタのフィルタ処理において、H264./AVCの符号化方式では、画像圧縮情報に含まれるPicture Parameter Set RBSPのdeblocking_filter_control_present_flagおよびSlice Headerに含まれるdisable_deblocking_filter_idcという2つのパラメータによって、
  (a) ブロック境界、およびマクロブロック境界に施す
  (b) Macroblock境界にのみ施す
  (c) 施さない
の3通りを指定することが可能である。
 量子化パラメータQPについては、以下の処理を輝度データに対して適用する場合は、QPYを、色差データに対して適用する場合はQPCを用いる。また、動きベクトル符号化、イントラ予測、エントロピー符号化(CAVLC/CABAC)においては、異なるスライスに属する画素値は“not available”として処理する。さらに、フィルタ処理においては、異なるスライスに属する画素値でも、同一のピクチャに属する場合は“available”であるとして処理を行う。
 以下の説明では、隣接するブロックP,Qについて、ブロック境界におけるフィルタ処理前の画素データを、図2の(A)に示すようにp0~p3,q0~q3とする。また、処理後の画素データを、図2の(B)に示すようにp0’~p3’,q0’~q3’とする。
 フィルタ処理に先立ち、図2における画素pおよび画素qに対して、表1に示すように、ブロック境界強度データBs(Boundary Strength)が定義される。
Figure JPOXMLDOC01-appb-T000001
 表1に示すように、ブロック境界強度データBsは、画素pまたは画素qのいずれか一方がイントラ符号化されるマクロブロックMBに属し、且つ、当該画素がマクロブロックMBの境界に位置する場合に、最もフィルタ強度が高い「4」が割り当てられている。
 ブロック境界強度データBsは、画素pまたは画素qのいずれか一方がイントラ符号化されるマクロブロックMBに属し、且つ、当該画素がマクロブロックMBの境界に位置しない場合に、「4」の次にフィルタ強度が高い「3」が割り当てられている。
 ブロック境界強度データBsは、画素pおよび画素qの双方がイントラ符号化されるマクロブロックMBに属するものではなく、且つ、いずれかの画素が変換係数を持つ場合に、「3」の次にフィルタ強度が高い「2」が割り当てられている。
 ブロック境界強度データBsは、画素pおよび画素qの双方がイントラ符号化されるマクロブロックMBに属するものではなく、且つ、いずれかの画素が変換係数を持たないという条件を場合に満たし、且つ、参照フレームが異なるか、参照フレームの枚数が異なるか、動きベクトルが異なるかのいずれかの条件を満たす場合に、「1」が割り当てられている。
 ブロック境界強度データBsは、画素p,qの双方がイントラ符号化されるマクロブロックMBに属するものではなく、どちらの画素も変換係数を持たず、参照フレームおよび動きベクトルが同じ場合に、フィルタ処理を行わないことを意味する「0」が割り当てられている。
 図2における(p2,p1,p0,q0,q1,q2)は、式(1)の条件が成立する場合のみ、フィルタ処理が施される。
   Bs>0
   |p0-q0|<α;|p1-p0|<β;|q1-q0|<β
                           ・・・(1)
 ここで、フィルタ強度すなわちフィルタのかかりやすさを調整するパラメータ値である閾値α,βは、デフォルトでは以下のように量子化パラメータQPに応じてその値が定められている。また、画像圧縮情報中のSlice Headerに含まれるslice_alpha_c0_offset_div2、およびslice_beta_offset_div2という2つのパラメータによって、ユーザがその強度を調整することが可能である。なお、図3は、量子化パラメータQPと閾値αの関係を示しており、量子化パラメータQPにオフセット量を加えると、量子化パラメータQPと閾値αの関係を示す曲線は矢印の方向に移動することから、フィルタ強度を調整することが明らかである。
 また、隣接するブロックPとブロックQのそれぞれの量子化パラメータqPp,qPqを用いて式(2)~(4)からindexAとindexBを算出して、表2に示すテーブルから閾値α,βを求める。
  qPav=(qPp+qPq+1)>>1         ・・・(2)
  indexA=Clip3(0,51,qPav+FilterOffsetA) ・・・(3)
  indexB=Clip3(0,51,qPav+FilterOffsetB) ・・・(4)
Figure JPOXMLDOC01-appb-T000002
 
 フィルタ処理は、「Bs<4」の場合と「Bs=4」の場合に対して異なる方法が定義されている。先ず、「Bs<4」の場合を説明する。
 デブロッキングフィルタは、式(5)~(7)に示す演算を行って、フィルタ処理後の画素データp0’,q0’を算出する。式(7)において、Clip3は、クリッピング処理を示す。
  p0’=Clip1(p0+Δ)   ・・・(5)
  q0’=Clip1(q0+Δ)   ・・・(6)
  Δ=Clip3(-tc,tc((((q0-p0)<<2)+(p1-q1)+4)>>3))      ・・・(7)
 デブロッキングフィルタは、式(7)の「tc」を、chromaEdgeFlagが「0」を示す場合に式(8)に基づいて算出し、それ以外の場合に式(9)に基づいて算出する。
 式(8)において、「( )?1:0」は、( )内の条件を満たすと「1」、それ以外の場合は「0」を示す。
  tc=tc0+((ap<β)?1:0)+(aq<β)?1:0) ・・・(8)
  tc=tc0+1                        ・・・(9)
 このtcの値は、BsとindexAの値に応じて表3のように定義される。
Figure JPOXMLDOC01-appb-T000003
 また、デブロッキングフィルタは、式(8)のap,aqを式(10)(11)にしたがって算出する。
  ap=|p2-p0|    ・・・(10)
  aq=|q2-q0|    ・・・(11)
 デブロッキングフィルタは、フィルタ処理後の画素データp1’を、chromaEdgeFlagが「0」で、且つ、apが「β」以下である場合に式(12)に示す演算を行って算出し、それ以外の場合に式(13)により取得する。
  p1’=p1+Clip3(-tc0,tc0,(p2+((p0+q0+1)>>1)-(p1<<1))>>1)     ・・・(12)
  p1’=p1      ・・・(13)
 デブロッキングフィルタは、フィルタ処理後の画素データq1’を、chromaEdgeFlagが「0」で、且つ、aqが「β」以下である場合に式(14)に示す演算を行って算出し、それ以外の場合に式(15)により取得する。
  q1’=q1+Clip3(-tc0,tc0,(q2+((p0+q0+1)>>1)-(q1<<1))>>1)    ・・・(14)
  q1’=q1     ・・・(15)
 次に、「Bs=4」の場合を説明する。デブロッキングフィルタは、chromaEdgeFlagが「0」を示し、且つ、式(16)の条件を満たす場合に、画素データp0’,p1’,p2’を式(17)~(19)にしたがって算出する。
  ap<β && |p0-q0|<((α>>2)+2)    ・・・(16)
  p0’=(p2+2・p1+2・p0+2・q0+q1+4)>>3 ・・・(17)
  p1’=(p2+p1+p0+q0+2)>>2          ・・・(18)
  p2’=(2・p3+3・p2+p1+p0+q0+4)>>3   ・・・(19)
 デブロッキングフィルタは、chromaEdgeFlagが「0」を示し、且つ、式(16)の条件を満たさない場合に、画素データp0’,p1’,p2’を式(20)~(22)にしたがって算出する。
  p0’=(2・p1+p0+q1+2)>>2 ・・・(20)
  p1’=p1               ・・・(21)
  p2’=p2               ・・・(22)
 デブロッキングフィルタは、chromaEdgeFlagが「0」を示し、且つ、式(23)の条件を満たす場合に、画素データq0’,q1’,q2’を式(24)~(26)にしたがって算出する。
  aq<β && |p0-q0|<((α>>2)+2)    ・・・(23)
  q0’=(p1+2・p0+2・q0+2・q1+q2+4)>>3 ・・・(24)
  q1’=(p0+q0+q1+q2+2)>>2          ・・・(25)
  q2’=(2・q3+3・q2+q1+q0+p4+4)>>3   ・・・(26)
 デブロッキングフィルタは、chromaEdgeFlagが「0」を示し、且つ、式(23)の条件を満たさない場合に、画素データq0’,q1’,q2’を式(27)~(29)にしたがって算出する。
  q0’=(2・q1+q0+p1+2)>>2 ・・・(27)
  q1’=q1               ・・・(28)
  q2’=q2               ・・・(29)
 <3.画像符号化装置におけるデブロッキングフィルタとフィルタ強度調整部の構成>
 フィルタ強度調整部41は、当該マクロブロックにおける最適モードの予測ブロックサイズに応じて、デブロッキングフィルタ24におけるフィルタ強度の調整を行う。
 一般に、ブロック歪みは、ブロックサイズがより大きい場合の方が、人間の目につきやすい。また、より大きなブロックサイズは、あまりテクスチャ情報を含まないフラットな領域に対して選択されやすい。
 また、デブロッキングフィルタのフィルタ強度を強くすると、ブロック歪みは除去されるが、同時に、デブロッキングフィルタのフィルタ処理はローパスフィルタ処理であるため、画像の持つ鮮鋭度が失われるという問題点を有する。
 しかるに、例えば、元々テクスチャ情報をあまり含まない、より大きな予測ブロックサイズを用いたブロックに対してフィルタをかかりやすくすれば、テクスチャに与える影響が少なく、目につきやすいブロック歪みを除去し、良好な画質の復号画像を得ることが可能となる。
 フィルタ強度調整部41は、フィルタ強度を調整するパラメータ値を予測ブロックサイズに応じて設定することで、デブロッキングフィルタ24におけるフィルタ強度の調整を行う。
 また、隣接する2つのブロックは、予測ブロックサイズが等しくなる場合に限られない。したがって、フィルタ強度調整部41は、当該ブロック、若しくは隣接ブロックのどちらか一方で最適モードにおける予測ブロックサイズが拡張されたブロックサイズである場合、大きい方の予測ブロックサイズに応じてフィルタ強度を調整する。
 さらに、フィルタ強度調整部41は、所定のマクロブロックよりもブロックサイズが大きい複数のマクロブロックが用いられる場合、ブロックサイズが大きいほどフィルタ強度が強くなるように、隣接する2つのブロックの予測ブロックサイズの組み合わせに応じてフィルタ強度を調整する。
 図4は、デブロッキングフィルタとフィルタ強度調整部の構成を示している。フィルタ強度調整部41は、ブロックサイズバッファ411とパラメータ選択部412を備えている。ブロックサイズバッファ411は、予測画像・最適モード選択部33で選択された最適モードおける予測ブロックサイズを示す情報を、1フレーム画像分蓄積する。すなわち、ブロックサイズバッファ411には、符号化対象の1フレーム画像における各マクロブロックの予測ブロックサイズに関する情報が記憶されている状態となる。
 パラメータ選択部412は、ブロックサイズバッファ411の予測ブロックサイズの情報に基づき、より大きなブロックサイズの復号画像部分に対してはフィルタ処理がかかりやすくなるように、パラメータ値を設定する。パラメータ選択部412は、例えばH.264/AVC規格のシンタックス・エレメントであるslice_alpha_c0_offset_div2およびslice_beta_offset_div2で指定するFilterOffsetAおよびFilterOffsetBの値を、より大きな値に設定する。また、パラメータ選択部412は、隣接する予測ブロックサイズの組み合わせに応じて、FilterOffsetAおよびFilterOffsetBを予め設定しておき、予測ブロックサイズの情報に基づき隣接するブロックがどのような予測ブロックサイズであるか判別する。さらに、判別された予測ブロックサイズの組み合わせに応じた値を用いるようにする。
 さらに、パラメータ選択部412は、上述の式(2)~(4)からindexAとindexBを算出して、表2に示すテーブルを用いて、フィルタ強度を設定するパラメータ値である閾値α,βを予測ブロックサイズに応じて設定して、デブロッキングフィルタ24のフィルタ強度決定部241に出力する。
 フィルタ強度決定部241は、可逆符号化部16から供給された予測モード情報に基づきブロック境界強度データBsを決定して、決定したブロック境界強度データBsと、パラメータ選択部412から供給された閾値α,βをフィルタ処理部242に出力する。
 フィルタ処理部242は、ブロック境界強度データBsと閾値α,βおよびブロック境界部分の画素データp3,p2,p1,p0,q0,q1,q2,q3を用いて上述のフィルタ演算を行い、フィルタ処理後の画素データp3',p2',p1',p0',q0',q1',q2',q3'を算出する。
 <4.画像符号化装置の動作>
 次に、画像符号化処理動作について説明する。図5は、画像符号化処理で用いる予測ブロックサイズを示している。H.264/AVC方式では、図5の(C)(D)に示すように16×16画素~4×4画素の予測ブロックサイズが規定されている。また、H.264/AVC方式よりも拡張された大きさのマクロブロックを用いる場合、例えば32×32画素のマクロブロックを用いる場合、例えば図5の(B)に示す予測ブロックサイズが規定される。また、例えば64×64画素のマクロブロックを用いる場合、例えば図5の(A)に示す予測ブロックサイズが規定される。
 図5において、「Skip/direct」は、動き予測・補償部32において、スキップドマクロブロックやダイレクトモードを選択したときの予測ブロックサイズであることを示している。また、「ME」は動き補償ブロックサイズであることを示している。また、「P8×8」は、マクロブロックのサイズを小さくした下位の階層で更に分割できることを示している。
 なお、H.264/AVC方式より更なる符号化効率の向上を目的として、ITU―Tと、ISO/IECの共同の標準化団体であるJCTVC (Joint Collaboration Team - Video Coding) により、HEVC (High Efficiency Video Coding) と呼ばれる符号化方式の標準化が進められている。2010年9月現在、Draftとして、”Test Model under Consideration”, (JCTVC-B205) が発行されている。
 HEVC符号化方式では、H.264/AVC方式よりも拡張された大きさのマクロブロックを用いることが可能とされており、CU(Coding Unit)が定義されている。
 CUは、CTB(Coding Tree Block)とも呼ばれ、H.264/AVC方式におけるマクロブロックと同様の役割を果たす。また、H.264/AVC方式は、マクロブロックが16×16画素の大きさに固定されているのに対し、HEVC符号化方式は、大きさが固定されておらず、それぞれのシーケンスにおいて、画像圧縮情報中において指定されることになる。
 特に、最大の大きさを持つCUを、LCU (Largest Coding Unit) と呼び、また、最小の大きさを持つCUをSCU (Smallest Coding Unit) と呼ぶ。画像圧縮情報に含まれるシーケンスパラメータセットにおいて、これらのサイズが指定されることになるが、それぞれ、正方形で、2のべき乗で表される大きさに限定される。
 図6は、HEVC符号化方式で定義されているCUの例を示す。図の例では、LCUの大きさが128であり、最大階層深度が5となる。2N×2Nの大きさのCUは、split_flagの値が1である時、一つ下の階層となる、N×Nの大きさのCUに分割される。
 更に、CUは、イントラ若しくはインター予測の単位であるPU(Prediction Unit)に分割され、また、直交変換の単位である、TU(Transform Unit)に分割される。
 CUは、更に、イントラ若しくはインター予測の単位であるPUに分割され、また、直交変換の単位であるTUに分割され、予測処理及び直交変換処理が行われる。現在、HEVC符号化方式においては、4×4及び8×8に加え、16×16及び32×32直交変換を用いることが可能である。
 本明細書において、ブロック、マクロブロックは、上述したようなCU、PU、TUの概念を含んでおり、大きさが固定されたブロックに限定されない。
 図7は、画像符号化処理動作を示すフローチャートである。ステップST11において、A/D変換部11は入力された画像信号をA/D変換する。
 ステップST12において画面並べ替えバッファ12は、画像並べ替えを行う。画面並べ替えバッファ12は、A/D変換部11より供給された画像データを記憶し、各ピクチャの表示する順番から符号化する順番への並べ替えを行う。
 ステップST13において減算部13は、予測誤差データの生成を行う。減算部13は、ステップST12で並び替えられた画像の画像データと予測画像・最適モード選択部33で選択された予測画像データとの差分を算出して予測誤差データを生成する。予測誤差データは、元の画像データに比べてデータ量が小さい。したがって、画像をそのまま符号化する場合に比べて、データ量を圧縮することができる。なお、予測画像・最適モード選択部33でイントラ予測部31から供給された予測画像と動き予測・補償部32からの予測画像の選択がスライス単位で行われるとき、イントラ予測部31から供給された予測画像が選択されたスライスでは、イントラ予測が行われることになる。また、動き予測・補償部32からの予測画像が選択されたスライスでは、インター予測が行われることになる。
 ステップST14において直交変換部14は、直交変換処理を行う。直交変換部14は、減算部13から供給された予測誤差データを直交変換する。具体的には、予測誤差データに対して離散コサイン変換、カルーネン・レーベ変換等の直交変換が行われ、変換係数データを出力する。
 ステップST15において量子化部15は、量子化処理を行う。量子化部15は、変換係数データを量子化する。量子化に際しては、後述するステップST25の処理で説明されるように、レート制御が行われる。
 ステップST16において逆量子化部21は、逆量子化処理を行う。逆量子化部21は、量子化部15により量子化された変換係数データを量子化部15の特性に対応する特性で逆量子化する。
 ステップST17において逆直交変換部22は、逆直交変換処理を行う。逆直交変換部22は、逆量子化部21により逆量子化された変換係数データを直交変換部14の特性に対応する特性で逆直交変換する。
 ステップST18において加算部23は、復号画像データの生成を行う。加算部23は、予測画像・最適モード選択部33から供給された予測画像データと、この予測画像と対応する位置の逆直交変換後のデータを加算して、復号画像データを生成する。
 ステップST19においてデブロッキングフィルタ24は、フィルタ処理を行う。デブロッキングフィルタ24は、加算部23より出力された復号画像データをフィルタリングしてブロック歪みを除去する。
 ステップST20においてフレームメモリ25は、復号画像データを記憶する。フレームメモリ25は、フィルタ処理前の復号画像データとフィルタ処理後の復号画像データを記憶する。
 ステップST21においてイントラ予測部31と動き予測・補償部32は、それぞれ予測処理を行う。すなわち、イントラ予測部31は、イントラ予測モードのイントラ予測処理を行い、動き予測・補償部32は、インター予測モードの動き予測・補償処理を行う。予測処理の詳細は、図8を参照して後述するが、この処理により、候補となる全ての予測モードでの予測処理がそれぞれ行われ、候補となる全ての予測モードでのコスト関数値がそれぞれ算出される。そして、算出されたコスト関数値に基づいて、最適イントラ予測モードと最適インター予測モードが選択され、選択された予測モードで生成された予測画像とそのコスト関数および予測モード情報が予測画像・最適モード選択部33に供給される。
 ステップST22において予測画像・最適モード選択部33は、予測画像データの選択を行う。予測画像・最適モード選択部33は、イントラ予測部31および動き予測・補償部32より出力された各コスト関数値に基づいて、符号化効率が最良となる最適モードに決定する。さらに、予測画像・最適モード選択部33は、決定した最適モードの予測画像データを選択して、減算部13と加算部23に供給する。この予測画像が、上述したように、ステップST13,ST18の演算に利用される。なお、選択した予測画像データに対応する予測モード情報は、可逆符号化部16とフィルタ強度調整部41に出力される。
 ステップST23において可逆符号化部16は、可逆符号化処理を行う。可逆符号化部16は、量子化部15より出力された量子化データを可逆符号化する。すなわち、量子化データに対して可変長符号化や算術符号化等の可逆符号化が行われて、データ圧縮される。このとき、上述したステップST22において可逆符号化部16に入力された予測モード情報(例えばマクロブロックタイプや予測モード、動きベクトル情報、参照ピクチャ情報等を含む)なども可逆符号化される。さらに、量子化データを可逆符号化して生成された符号化ストリームのヘッダ情報に、予測モード情報の可逆符号化データが付加される。
 ステップST24において蓄積バッファ17は、蓄積処理を行い符号化ストリームを蓄積する。この蓄積バッファ17に蓄積された符号化ストリームは適宜読み出され、伝送路を介して復号側に伝送される。
 ステップST25においてレート制御部18は、レート制御を行う。レート制御部18は、蓄積バッファ17で符号化ストリームを蓄積するとき、オーバーフローまたはアンダーフローが蓄積バッファ17で発生しないように、量子化部15の量子化動作のレートを制御する。
 次に、図8のフローチャートを参照して、図7のステップST21における予測処理を説明する。
 ステップST31において、イントラ予測部31はイントラ予測処理を行う。イントラ予測部31は処理対象のブロックの画像を、候補となる全てのイントラ予測モードでイントラ予測する。なお、イントラ予測において参照される復号画像の画像データは、デブロッキングフィルタ24によりフィルタ処理が行われることなくフレームメモリ25に記憶されている復号画像データが用いられる。イントラ予測処理の詳細は後述するが、この処理により、候補となる全てのイントラ予測モードでイントラ予測が行われ、候補となる全てのイントラ予測モードに対してコスト関数値が算出される。そして、算出されたコスト関数値に基づいて、全てのイントラ予測モードの中から、符号化効率が最良となる1つのイントラ予測モードが選択される。
 ステップST32において、動き予測・補償部32はインター予測処理を行う。動き予測・補償部32は、フレームメモリ25に記憶されているフィルタ処理後の復号画像データを用いて、候補となる全てのインター予測モード(全ての予測ブロックサイズ)のインター予測処理を行う。インター予測処理の詳細は後述するが、この処理により、候補となる全てのインター予測モードで予測処理が行われ、候補となる全てのインター予測モードに対してコスト関数値が算出される。そして、算出されたコスト関数値に基づいて、全てのインター予測モードの中から、符号化効率が最良となる1つのインター予測モードが選択される。
 次に、図8のステップST31におけるイントラ予測処理について図9のフローチャートを参照して説明する。
 ステップST41でイントラ予測部31は、各予測モードのイントラ予測を行う。イントラ予測部31は、フレームメモリ25に記憶されているフィルタ処理前の復号画像データを用いて、イントラ予測モード毎に予測画像データを生成する。
 ステップST42でイントラ予測部31は、各予測モードに対するコスト関数値を算出する。コスト関数値としては、H.264/AVC方式における参照ソフトウェアであるJM(Joint Model)で定められているように、High Complexity モードか、Low Complexity モードのいずれかの手法に基づいて行う。
 すなわち、High Complexity モードにおいては、ステップST41の処理として、候補となる全ての予測モードに対して、仮に可逆符号化処理までを行い、次の式(30)で表されるコスト関数値を各予測モードに対して算出する。
  Cost(Mode∈Ω)=D+λ・R      ・・・(30)
 Ωは、当該ブロック乃至マクロブロックを符号化するための候補となる予測モードの全体集合を示している。Dは、予測モードで符号化を行った場合の復号画像と入力画像との差分エネルギー(歪み)を示している。Rは、直交変換係数や予測モード情報等を含んだ発生符号量、λは、量子化パラメータQPの関数として与えられるラグランジュ乗数である。
 つまり、High Complexity Modeでの符号化を行うには、上記パラメータDおよびRを算出するため、候補となる全ての予測モードにより、一度、仮エンコード処理を行う必要があり、より高い演算量を要する。
 一方、Low Complexity モードにおいては、ステップST41の処理として、候補となる全ての予測モードに対して、予測画像の生成、および、動きベクトル情報や予測モード情報などのヘッダビットまでを算出し、次の式(31)で表されるコスト関数値を各予測モードに対して算出する。
  Cost(Mode∈Ω)=D+QPtoQuant(QP)・Header_Bit   ・・・(31)
 Ωは、当該ブロック乃至マクロブロックを符号化するための候補となる予測モードの全体集合を示している。Dは、予測モードで符号化を行った場合の復号画像と入力画像との差分エネルギー(歪み)を示している。Header_Bitは、予測モードに対するヘッダビット、QPtoQuantは、量子化パラメータQPの関数として与えられる関数である。
 すなわち、Low Complexity Modeにおいては、それぞれの予測モードに関して、予測処理を行う必要があるが、復号化画像までは必要ないため、High Complexity Modeより低い演算量での実現が可能である。
 ステップST43でイントラ予測部31は、最適イントラ予測モードを決定する。イントラ予測部31は、ステップST42において算出されたコスト関数値に基づいて、それらの中から、コスト関数値が最小値である1つのイントラ予測モードを選択して最適イントラ予測モードに決定する。
 次に、図10のフローチャートを参照して、図8のステップST32のインター予測処理について説明する。
 ステップST51で動き予測・補償部32は、各予測モードに対して動きベクトルと参照画像をそれぞれ決定する。すなわち、動き予測・補償部32は、各予測モードの処理対象のブロックについて、動きベクトルと参照画像をそれぞれ決定する。
 ステップST52で動き予測・補償部32は、各予測モードに対して動き補償を行う。動き予測・補償部32は、各予測モード(各予測ブロックサイズ)について、ステップST51で決定された動きベクトルに基づいて、参照画像に対する動き補償を行い、各予測モードについて予測画像データを生成する。
 ステップST53で動き予測・補償部32は、各予測モードに対して動きベクトル情報の生成を行う。動き予測・補償部32は、各予測モードで決定された動きベクトルについて、符号化ストリームに含める動きベクトル情報を生成する。例えば、メディアン予測等を用いて予測動きベクトルを決定して、動き予測により検出した動きベクトルと予測動きベクトルの差を示す動きベクトル情報を生成する。このようにして生成された動きベクトル情報は、次のステップST54におけるコスト関数値の算出にも用いられて、最終的に予測画像・最適モード選択部33で対応する予測画像が選択された場合には、予測モード情報に含まれて可逆符号化部16へ出力される。
 ステップST54で動き予測・補償部32は、各インター予測モードに対して、コスト関数値の算出を行う。動き予測・補償部32は、上述した式(30)または式(31)を用いてコスト関数値の算出を行う。なお、インター予測モードに対するコスト関数値の算出には、H.264/AVC方式において定められているSkip ModeおよびDirect Modeのコスト関数値の評価も含まれる。
 ステップST55で動き予測・補償部32は、最適インター予測モードを決定する。動き予測・補償部32は、ステップST54において算出されたコスト関数値に基づいて、それらの中から、コスト関数値が最小値である1つの予測モードを選択して最適インター予測モードに決定する。
 次に、デブロッキングフィルタ調整処理について説明する。H.264/AVC符号化方式におけるデブロッキングフィルタに関連するパラメータの規定方法において、ピクチャパラメータセットに、deblocking_filter_control_present_flagが存在する。このフラグの値が「1」である場合、スライスヘッダにおいて、slice_alpha_c0_offset_div2およびslice_beta_offset_div2が存在することになり、存在しない場合には、デフォルト値として「0」が用いられるという構成になっている。
 これに対して、本発明では、隣接する2つのブロックの大きさの組み合わせに応じて、オフセット値SZa,SZbを、例えば0<SZa≦SZb≦6である整数として、FilterOffsetAおよびFilterOffsetBと共に、表4のように値が定義されているものとする。
Figure JPOXMLDOC01-appb-T000004
 表4は、所定のマクロブロックよりもブロックサイズが大きい複数のマクロブロックが用いられる場合、ブロックサイズが大きいほどフィルタ強度が強くなるように、隣接する2つのブロックの予測ブロックサイズの組み合わせ毎のオフセット値を示している。また、表4のオフセット値は、隣接する2つのブロックで予測ブロックサイズが異なる場合、大きい方の予測ブロックサイズに応じてフィルタ強度を調整するように設定されている。すなわち、隣接する2つのブロックのうち、より大きいサイズのブロックに合わせてFilterOffsetAおよびFilterOffsetBの値が設定されることになる。例えば、大きい方のブロックが64画素であるときはオフセット値SZb、大きい方のブロックが32画素であるときはオフセット値SZa、16×16画素のときはオフセット値「0」とする。
 図11は、フィルタ設定処理を示すフローチャートである。
ステップST61でフィルタ強度調整部41は、最適モードの予測ブロックサイズを取得する。フィルタ強度調整部41は、図7のステップST22で選択された予測画像に対応する予測ブロックサイズ、すなわち最適モードで符号化を行うときの予測ブロックサイズを取得する。
 ステップST62でフィルタ強度調整部41は、当該ブロックまたは隣接ブロックの境界部分が64画素であるか否か判別する。フィルタ強度調整部41は、当該ブロックまたは隣接ブロックの境界部分が64画素であるときステップST63に進み、当該ブロックと隣接ブロックの境界部分が共に64画素よりも小さいときステップST64に進む。
 ステップST63でフィルタ強度調整部41は、オフセット値SZbを選択してFilterOffsetAおよびFilterOffsetBとしてステップST67に進む。
 ステップST64でフィルタ強度調整部41は、当該ブロックまたは隣接ブロックの境界部分が32画素であるか否か判別する。フィルタ強度調整部41は、当該ブロックまたは隣接ブロックの境界部分が32画素であるときステップST65に進み、当該ブロックと隣接ブロックの境界部分が共に32画素よりも小さいときステップST66に進む。
 ステップST65でフィルタ強度調整部41は、オフセット値SZa(≦SZb)を選択してFilterOffsetAおよびFilterOffsetBとしてステップST67に進む。
 ステップST66でフィルタ強度調整部41は、オフセット値0(<SZa)を選択してFilterOffsetAおよびFilterOffsetBとしてステップST67に進む。
 ステップST67でフィルタ強度調整部41は、フィルタ強度調整を行う。フィルタ強度調整部41は、ステップST63,65,66で設定されたFilterOffsetA,FilterOffsetBを用いてフィルタ強度を設定するパラメータ値である閾値α,βを決定してデブロッキングフィルタ24に出力する。
 このようにフィルタ強度調整部41によって、境界部分のブロックサイズが大きいとき、オフセット量を大きくして閾値α,βの設定を行うことで、デブロッキングフィルタ24では、フィルタ処理をかかりやすくすることができる。
 なお、表4および図11では、64×64画像、32×32画素、16×16画素の組み合わせについて例示したが、組み合わせはこれらのサイズに限られない。また、大きい方のブロックが64画素であるときはオフセット値SZb、大きい方のブロックが32画素であるときはオフセット値SZa、16×16画素のときはオフセット値「0」としたが、オフセット値は大きいブロックについてフィルタをかかりやすくして良好な画質を得られればよく、上述の組み合わせに限らない。
 さらに、表4とは異なる値をユーザが独自に設定したい場合には、ピクチャパラメータセットにおけるdeblocking_filter_control_present_flagの値を所定の値「1」として、ユーザは、スライスヘッダにおいて、FilterOffsetA16,FilterOffsetA32,FilterOffsetA64およびFilterOffsetB16,FilterOffsetB32,FilterOffsetB64の値を設定することが可能である。それぞれのパラメータは、隣接する2つのブロックのうち、大きい方が、16×16,32×32,64×64の場合に相当する。deblocking_filter_control_present_flagの値が「1」であっても、FilterOffsetA32,FilterOffsetA64およびFilterOffsetB32,FilterOffsetB64の値はスライスヘッダに存在しなくてもよい。その場合には、
  FilterOffsetA32=FilterOffsetA16+SZa
  FilterOffsetA64=FilterOffsetA16+SZb
  FilterOffsetB32=FilterOffsetB16+SZa
  FilterOffsetB64=FilterOffsetB16+SZb
のような値を用いればよい。
 このように、本発明を適用した画像符号化装置および方法によれば、符号化効率が最良となるブロックサイズを決定して、決定されたブロックサイズで画像データの符号化処理が行われる。このとき、このブロックサイズを示す情報は、フィルタ強度調整部41のブロックサイズバッファ411に蓄積される。したがって、符号化効率が最良となるブロックサイズで符号化処理された画像データを復号化処理して復号画像データを生成したとき、復号画像における予測ブロックの位置が明らかとなる。このため、ブロックサイズバッファ411に蓄積された情報に基づき、大きなブロックサイズに対してフィルタ強度を調整してフィルタをかかりやすくすれば、ブロックサイズが大きくてもブロック歪みを少なくできる。また、復号画像データにおけるブロック歪みを少なくできるので、ブロック歪みの影響によって予測誤差データが大きくなってしまうことを防止できることから、符号化処理後のデータ量を更に少なくできる。
 <5.画像復号化装置の構成>
 入力画像を符号化して生成された符号化ストリームは、所定の伝送路や記録媒体等を介して画像復号化装置に供給されて復号される。
 図12は、画像復号化装置の構成を示している。画像復号化装置50は、蓄積バッファ51、可逆復号化部52、逆量子化部53、逆直交変換部54、加算部55、デブロッキングフィルタ56、画面並べ替えバッファ57、D/A変換部58を備えている。さらに、画像復号化装置50は、フレームメモリ61、セレクタ62,65、イントラ予測部63、動き補償部64、フィルタ強度調整部71を備えている。
 蓄積バッファ51は、伝送されてきた符号化ストリームを蓄積する。可逆復号化部52は、蓄積バッファ51より供給された符号化ストリームを、図1の可逆符号化部16の符号化方式に対応する方式で復号化する。また、可逆復号化部52は、符号化ストリームのヘッダ情報を復号して得られた予測モード情報をイントラ予測部63や動き補償部64、デブロッキングフィルタ56に出力する。
 逆量子化部53は、可逆復号化部52で復号された量子化データを、図1の量子化部15の量子化方式に対応する方式で逆量子化する。逆直交変換部54は、図1の直交変換部14の直交変換方式に対応する方式で逆量子化部53の出力を逆直交変換して加算部55に出力する。
 加算部55は、逆直交変換後のデータとセレクタ65から供給される予測画像データを加算して復号画像データを生成してデブロッキングフィルタ56とフレームメモリ61に出力する。
 デブロッキングフィルタ56は、加算部55から供給された復号画像データに対してフィルタ処理を行い、ブロック歪みを除去してからフレームメモリ61に供給し蓄積させるとともに、画面並べ替えバッファ57に出力する。また、デブロッキングフィルタ56は、可逆復号化部52から供給された予測モード情報と後述するフィルタ強度調整部71から供給されたフィルタ強度調整のための閾値α,βに基づき、フィルタ強度を調整する。
 画面並べ替えバッファ57は、画像の並べ替えを行う。すなわち、図1の画面並べ替えバッファ12により符号化の順番のために並べ替えられたフレームの順番が、元の表示の順番に並べ替えられて、D/A変換部58に出力される。
 D/A変換部58は、画面並べ替えバッファ57から供給された画像データをD/A変換し、図示せぬディスプレイに出力することで画像を表示させる。
 フレームメモリ61は、加算部55から供給されたフィルタ処理前の復号画像データとデブロッキングフィルタ24から供給されたフィルタ処理後の復号画像データとを保持する。
 セレクタ62は、可逆復号化部52から供給された予測モード情報に基づき、イントラ予測が行われた予測ブロックの復号化が行われるとき、フレームメモリ61から読み出されたフィルタ処理前の復号画像データをイントラ予測部63に供給する。また、セレクタ26は、可逆復号化部52から供給された予測モード情報に基づき、インター予測が行われた予測ブロックの復号化が行われるとき、フレームメモリ61から読み出されたフィルタ処理後の復号画像データを動き補償部64に供給する。
 イントラ予測部63は、可逆復号化部52から供給された予測モード情報に基づいて予測画像の生成を行い、生成した予測画像データをセレクタ65に出力する。また、イントラ予測部63は生成した予測画像のブロックサイズを示す情報をフィルタ強度調整部71に出力する。
 動き補償部64は、可逆復号化部52から供給された予測モード情報に基づいて、動き補償を行い、予測画像データを生成してセレクタ65に出力する。すなわち、動き補償部64は、予測モード情報に含まれる動きベクトル情報と参照フレーム情報に基づいて、参照フレーム情報で示された参照画像に対して動きベクトル情報に基づく動きベクトルで動き補償を行い、予測画像データを生成する。また、動き補償部64は生成した予測画像のブロックサイズを示す情報をフィルタ強度調整部71に出力する。
 セレクタ65は、イントラ予測部63で生成された予測画像データを加算部55に供給する。また、セレクタ65は、動き補償部64で生成された予測画像データを加算部55に供給する。
 フィルタ強度調整部71は、図4に示すフィルタ強度調整部41と同様に構成されて、同様な動作を行う。フィルタ強度調整部71は、フィルタ強度を調整するパラメータ値を予測ブロックサイズに応じて設定することで、デブロッキングフィルタ56におけるフィルタ強度の調整を行う。また、フィルタ強度調整部71は、当該ブロック、若しくは隣接ブロックのどちらか一方で最適モードにおける予測ブロックサイズが拡張されたブロックサイズである場合、大きい方の予測ブロックサイズに応じてフィルタ強度を調整する。さらに、フィルタ強度調整部71は、所定のマクロブロックよりもブロックサイズが大きい複数のマクロブロックが用いられる場合、ブロックサイズが大きいほどフィルタ強度が強くなるように、隣接する2つのブロックの予測ブロックサイズの組み合わせに応じてフィルタ強度を調整する。すなわち、フィルタ強度調整部71は、イントラ予測部63や動き補償部64から供給されたブロックサイズに応じてフィルタ強度を調整するためのパラメータ値である閾値α,βを設定して、デブロッキングフィルタ56に出力する。
 <6.画像復号化装置の動作>
 次に、図13のフローチャートを参照して、画像復号化装置50で行われる画像復号処理動作について説明する。
 ステップST71で蓄積バッファ51は、伝送されてきた符号化ストリームを蓄積する。ステップST72で可逆復号化部52は、可逆復号化処理を行う。可逆復号化部52は、蓄積バッファ51から供給される符号化ストリームを復号化する。すなわち、図1の可逆符号化部16により符号化された各ピクチャの量子化データが得られる。また、可逆復号化部52、符号化ストリームのヘッダ情報に含まれている予測モード情報の可逆復号化を行い、得られた予測モード情報をデブロッキングフィルタ56やセレクタ62,65に供給する。さらに、可逆復号化部52は、予測モード情報がイントラ予測モードに関する情報である場合、予測モード情報をイントラ予測部63に出力する。また、可逆復号化部52は、予測モード情報がインター予測モードに関する情報である場合、予測モード情報を動き補償部64に出力する。
 ステップST73において逆量子化部53は、逆量子化処理を行う。逆量子化部53は、可逆復号化部52により復号された量子化データを、図1の量子化部15の特性に対応する特性で逆量子化する。
 ステップST74において逆直交変換部54は、逆直交変換処理を行う。逆直交変換部54は、逆量子化部53により逆量子化された変換係数データを、図1の直交変換部14の特性に対応する特性で逆直交変換する。
 ステップST75において加算部55は、復号画像データの生成を行う。加算部55は、逆直交変換処理を行うことにより得られたデータと、後述するステップST79で選択された予測画像データを加算して復号画像データを生成する。これにより元の画像が復号される。
 ステップST76においてデブロッキングフィルタ56は、フィルタ処理を行う。デブロッキングフィルタ56は、加算部55より出力された復号画像データのフィルタ処理を行い、復号画像に含まれているブロック歪みを除去する。
 ステップST77においてフレームメモリ61は、復号画像データの記憶処理を行う。
 ステップST78においてイントラ予測部63と動き補償部64は、予測処理を行う。イントラ予測部63と動き補償部64は、可逆復号化部52から供給される予測モード情報に対応してそれぞれ予測処理を行う。
 すなわち、可逆復号化部52からイントラ予測の予測モード情報が供給された場合、イントラ予測部63は、予測モード情報に基づいてイントラ予測処理を行い、予測画像データを生成する。また、可逆復号化部52からインター予測の予測モード情報が供給された場合、動き補償部64は、予測モード情報に基づき動き補償を行い、予測画像データを生成する。
 ステップST79において、セレクタ65は予測画像データの選択を行う。すなわち、セレクタ65は、イントラ予測部63から供給された予測画像と動き補償部64で生成された予測画像データを選択して加算部55に供給して、上述したように、ステップST75において逆直交変換部54の出力と加算させる。
 ステップST80において画面並べ替えバッファ57は、画像並べ替えを行う。すなわち画面並べ替えバッファ57は、図1の画像符号化装置10の画面並べ替えバッファ12により符号化のために並べ替えられたフレームの順序が、元の表示の順序に並べ替えられる。
 ステップST81において、D/A変換部58は、画面並べ替えバッファ57からの画像データをD/A変換する。この画像が図示せぬディスプレイに出力され、画像が表示される。
 また、図13のステップST76におけるフィルタ処理では、上述の図11に示すフィルタ強度調整処理をフィルタ強度調整部71で行う。フィルタ強度調整部71は、例えばH.264/AVC規格のシンタックス・エレメントであるslice_alpha_c0_offset_div2およびslice_beta_offset_div2で指定するFilterOffsetAおよびFilterOffsetBを値を調整することで、予測ブロックサイズが大きいほどフィルタがかかりやすくなるようにフィルタ強度を調整するためのパラメータ値である閾値α,βを設定する。
 このように、フィルタ強度調整部71は、符号化が行われたときの予測ブロックサイズに応じて、フィルタ強度を調整するパラメータ値である閾値α,βを生成して、デブロッキングフィルタ56に出力する。デブロッキングフィルタ56は、予測モード情報に基づきブロック境界強度データBsを決定して、閾値α,βを用いて復号画像データに対してフィルタ処理を行う。
 また、フィルタ強度調整部71、シンタックス・エレメントであるピクチャパラメータセットのdeblocking_filter_control_present_flagの値が所定の値に設定されており、スライスヘッダに、FilterOffsetAおよびFilterOffsetBの値が記述されているとき、この記述されている値を用いて閾値α,βを生成して、デブロッキングフィルタ56に出力する。このようなフィルタ強度の調整を行えば、画像符号化装置で、表4とは異なる値をユーザが独自に設定した場合、画像復号化装置でも、ユーザの設定に応じたフィルタ処理を行うことができるようになる。
 このように、本発明を適用した画像復号化装置および方法によれば、符号化処理で用いられたブロックサイズを示す情報が、フィルタ強度調整部71のブロックサイズバッファに蓄積される。したがって、符号化ストリームの復号化処理を行って復号画像データを生成したとき、復号画像における予測ブロックの位置が明らかとなる。このため、ブロックサイズバッファに蓄積された情報に基づき、大きなブロックサイズに対してフィルタ強度を調整してフィルタをかかりやすくすれば、ブロックサイズが大きくてもブロック歪みを少なくできる。したがって、画質の良好な復号画像を得ることができるようになる。
 また、明細書中において説明した一連の処理はハードウェア、またはソフトウェア、または両者の複合構成によって実行することが可能である。ソフトウェアによる処理を実行する場合は、処理シーケンスを記録したプログラムを、専用のハードウェアに組み込まれたコンピュータ内のメモリにインストールして実行させる。または、各種処理が実行可能な汎用コンピュータにプログラムをインストールして実行させることも可能である。
 例えば、プログラムは記録媒体としてのハードディスクやROM(Read Only Memory)に予め記録しておくことができる。または、プログラムはフレキシブルディスク、CD-ROM(Compact Disc Read Only Memory),MO(Magneto optical)ディスク,DVD(Digital Versatile Disc)、磁気ディスク、半導体メモリなどのリムーバブル記録媒体に、一時的または永続的に格納(記録)しておくことができる。このようなリムーバブル記録媒体は、いわゆるパッケージソフトウェアとして提供することができる。
 なお、プログラムは、上述したようなリムーバブル記録媒体からコンピュータにインストールする他、ダウンロードサイトから、コンピュータに無線転送したり、LAN(Local Area Network)、インターネットといったネットワークを介して、コンピュータに有線で転送し、コンピュータでは、そのようにして転送されてくるプログラムを受信し、内蔵するハードディスク等の記録媒体にインストールすることができる。
 さらに、本発明は、上述した発明の実施の形態に限定して解釈されるべきではない。この発明の実施の形態は、例示という形態で本発明を開示しており、本発明の要旨を逸脱しない範囲で当業者が実施の形態の修正や代用をなし得ることは自明である。すなわち、本発明の要旨を判断するためには、特許請求の範囲を参酌すべきである。
 この発明の画像処理装置と画像処理方法では、復号画像データに対してブロック歪みを除去するフィルタ処理を行うとき、ブロック境界で隣接する隣接ブロックのブロックサイズに応じてフィルタ強度が調整される。このため、拡張された大きさのマクロブロックが用いられても、ブロックサイズに応じてフィルタ強度を調整することで、ブロック歪みが軽減された良好な画質の復号画像を得られるようになる。したがって、MPEG、H.26x等のように、ブロック単位で符号化を行うことにより得られた画像情報(ビットストリーム)を、衛星放送、ケーブルTV、インターネット、携帯電話などのネットワークメディアを介して送受信する際に、若しくは光、磁気ディスク、フラッシュメモリのような記憶メディア上で処理する際に用いられる画像符号化装置や画像復号化装置等に適している。
 10・・・画像符号化装置、11・・・A/D変換部、12,57・・・画面並べ替えバッファ、13・・・減算部、14・・・直交変換部、15・・・量子化部、16・・・可逆符号化部、17,51・・・蓄積バッファ、18・・・レート制御部、21,53・・・逆量子化部、22,54・・・逆直交変換部、23,55・・・加算部、24,56・・・デブロッキングフィルタ、25,61・・・フレームメモリ、26,62,65・・・セレクタ、31,63・・・イントラ予測部、32・・・動き予測・補償部、33・・・予測画像・最適モード選択部、41・・・フィルタ強度調整部、50・・・画像復号化装置、52・・・可逆復号化部、58・・・D/A変換部、64・・・動き補償部、71・・・フィルタ強度調整部、241・・・フィルタ強度決定部、242・・・フィルタ処理部、411・・・ブロックサイズバッファ、412・・・パラメータ選択部

Claims (20)

  1.  画像データがブロック毎に符号化されている符号化ストリームを復号化して復号画像データを生成する復号部と、
    前記復号部により生成された復号画像データに対してブロック歪みを除去するフィルタ処理を行うフィルタと、
     ブロック境界で隣接する隣接ブロックのブロックサイズに応じて、前記フィルタ処理におけるフィルタ強度を調整するフィルタ強度調整部と
    を設けた画像処理装置。 
  2.  前記フィルタ強度調整部は、前記隣接ブロックのブロックサイズが大きいほどフィルタ処理をかかりやすくするようにフィルタ強度を調整する請求項1記載の画像処理装置。
  3.  前記フィルタ強度調整部は、前記フィルタ強度を調整するパラメータ値を前記ブロックサイズに応じて設定する請求項2記載の画像処理装置。
  4.  前記フィルタ強度調整部は、隣接ブロックのブロックサイズの組み合わせに応じて、前記フィルタ処理におけるフィルタ強度を調整する請求項3に記載の画像処理装置。
  5.  前記フィルタ強度調整部は、隣接ブロックでブロックサイズが異なる場合、大きい方のブロックサイズに応じてフィルタ強度を調整する請求項4記載の画像処理装置。
  6.  前記フィルタ強度調整部は、所定のマクロブロックよりもブロックサイズが大きいマクロブロックが用いられる場合、ブロックサイズが大きいほどフィルタ強度が強くなるように、隣接ブロックのブロックサイズの組み合わせに応じて、パラメータ値を設定する請求項5記載の画像処理装置。
  7.  前記フィルタ強度調整部は、符号化規格のシンタックス・エレメントの値を調整して、前記フィルタ強度を調整する請求項3記載の画像処理装置。
  8.  前記フィルタ強度調整部は、H.264/AVC規格のシンタックス・エレメントであるslice_alpha_c0_offset_div2およびslice_beta_offset_div2で指定するFilterOffsetAおよびFilterOffsetBの値を調整して、前記フィルタ強度を調整する請求項7記載の画像処理装置。
  9.  前記フィルタ強度調整部は、予め設けられているパラメータ値と異なるパラメータ値を用いる場合に、前記シンタックス・エレメントであるピクチャパラメータセットのdeblocking_filter_control_present_flagの値を所定の値に設定し、スライスヘッダに、前FilterOffsetAおよびFilterOffsetBの値を記述する請求項7記載の画像処理装置。
  10.  画像データがブロック毎に符号化されている符号化ストリームを復号化して復号画像データを生成する工程と、
     前記復号部により生成された復号画像データに対してブロック歪みを除去するフィルタ処理を行う工程と、
     ブロック境界で隣接する隣接ブロックのブロックサイズに応じて、前記フィルタ処理におけるフィルタ強度を調整する工程と
    を設けた画像処理方法。 
  11.  復号画像データに対してブロック歪みを除去するフィルタ処理を行うフィルタと、
     ブロック境界で隣接する隣接ブロックのブロックサイズに応じて、前記フィルタ処理におけるフィルタ強度を調整するフィルタ強度調整部と、
     前記フィルタによりフィルタ処理が行われた復号画像データを用いて、画像データを符号化する符号化部と、
     を設けた画像処理装置。
  12.  前記フィルタ強度調整部は、前記隣接ブロックのブロックサイズが大きいほどフィルタ処理をかかりやすくするようにフィルタ強度を調整する請求項11記載の画像処理装置。
  13.  前記フィルタ強度調整部は、前記フィルタ強度を調整するパラメータ値を前記ブロックサイズに応じて設定する請求項12記載の画像処理装置。
  14.  前記フィルタ強度調整部は、隣接ブロックのブロックサイズの組み合わせに応じて、前記フィルタ処理におけるフィルタ強度を調整する請求項13に記載の画像処理装置。
  15.  前記フィルタ強度調整部は、隣接ブロックでブロックサイズが異なる場合、大きい方のブロックサイズに応じてフィルタ強度を調整する請求項14記載の画像処理装置。
  16.  前記フィルタ強度調整部は、所定のマクロブロックよりもブロックサイズが大きいマクロブロックが用いられる場合、ブロックサイズが大きいほどフィルタ強度が強くなるように、隣接ブロックのブロックサイズの組み合わせに応じて、パラメータ値を設定する請求項15記載の画像処理装置。
  17.  前記フィルタ強度調整部は、符号化規格のシンタックス・エレメントの値を調整して、前記フィルタ強度を調整する請求項13記載の画像処理装置。
  18.  前記フィルタ強度調整部は、H.264/AVC規格のシンタックス・エレメントであるslice_alpha_c0_offset_div2およびslice_beta_offset_div2で指定するFilterOffsetAおよびFilterOffsetBの値を調整して、前記フィルタ強度を調整する請求項17記載の画像処理装置。
  19.  前記フィルタ強度調整部は、予め設けられているパラメータ値と異なるパラメータ値を用いる場合に、前記シンタックス・エレメントであるピクチャパラメータセットのdeblocking_filter_control_present_flagの値を所定の値に設定し、スライスヘッダに、前FilterOffsetAおよびFilterOffsetBの値を記述する請求項17記載の画像処理装置。
  20.  復号画像データに対してブロック歪みを除去するフィルタ処理を行う工程と、
     ブロック境界で隣接する隣接ブロックのブロックサイズに応じて、前記フィルタ処理におけるフィルタ強度を調整する工程と、
     前記フィルタによりフィルタ処理が行われた復号画像データを用いて、画像データを符号化する工程と
    を設けた画像処理方法。
PCT/JP2011/057997 2010-04-09 2011-03-30 画像処理装置と画像処理方法 WO2011125729A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN201180016506.6A CN102823246A (zh) 2010-04-09 2011-03-30 图像处理设备和图像处理方法
US13/581,960 US9077989B2 (en) 2010-04-09 2011-03-30 Image processing apparatus and image processing method for removing blocking artifacts
US14/710,769 US9613400B2 (en) 2010-04-09 2015-05-13 Image processing apparatus and image processing method
US15/437,717 US10373295B2 (en) 2010-04-09 2017-02-21 Image processing apparatus and image processing method

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2010090333A JP2011223302A (ja) 2010-04-09 2010-04-09 画像処理装置と画像処理方法
JP2010-090333 2010-04-09

Related Child Applications (2)

Application Number Title Priority Date Filing Date
US13/581,960 A-371-Of-International US9077989B2 (en) 2010-04-09 2011-03-30 Image processing apparatus and image processing method for removing blocking artifacts
US14/710,769 Continuation US9613400B2 (en) 2010-04-09 2015-05-13 Image processing apparatus and image processing method

Publications (1)

Publication Number Publication Date
WO2011125729A1 true WO2011125729A1 (ja) 2011-10-13

Family

ID=44762671

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2011/057997 WO2011125729A1 (ja) 2010-04-09 2011-03-30 画像処理装置と画像処理方法

Country Status (4)

Country Link
US (3) US9077989B2 (ja)
JP (1) JP2011223302A (ja)
CN (1) CN102823246A (ja)
WO (1) WO2011125729A1 (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104221383A (zh) * 2012-04-13 2014-12-17 三菱电机株式会社 运动图像编码装置、运动图像解码装置、运动图像编码方法以及运动图像解码方法
CN104247417A (zh) * 2012-04-13 2014-12-24 高通股份有限公司 用于视频译码中的解块滤波器的β偏移控制
JP2018033163A (ja) * 2011-06-30 2018-03-01 ソニー株式会社 画像処理装置および方法、記録媒体、並びに、プログラム
WO2020183849A1 (ja) * 2019-03-08 2020-09-17 ソニー株式会社 情報処理装置、情報処理方法及びプログラム
CN113170206A (zh) * 2018-11-02 2021-07-23 索尼集团公司 图像处理装置和图像处理方法

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8625914B2 (en) * 2013-02-04 2014-01-07 Sony Corporation Image processing system, image processing method and program
CN106231342B (zh) * 2010-04-13 2019-05-31 三星电子株式会社 执行去块滤波的对视频进行解码的方法
KR20110123651A (ko) * 2010-05-07 2011-11-15 한국전자통신연구원 생략 부호화를 이용한 영상 부호화 및 복호화 장치 및 그 방법
TWI600318B (zh) 2010-05-18 2017-09-21 Sony Corp Image processing apparatus and image processing method
JP2012253722A (ja) * 2011-06-07 2012-12-20 Sony Corp 画像符号化装置と画像復号装置およびその方法とプログラム
DK2725797T3 (da) 2011-06-23 2019-01-02 Huawei Tech Co Ltd Offset dekoderanordning, offset koderanordning, billedfilteranordning og datastruktur
WO2013037254A1 (en) * 2011-09-13 2013-03-21 Mediatek Inc. Method and apparatus for reduction of deblocking filter
JP2013085096A (ja) * 2011-10-07 2013-05-09 Sony Corp 画像処理装置および方法
US10230950B2 (en) * 2013-05-30 2019-03-12 Intel Corporation Bit-rate control for video coding using object-of-interest data
US10123036B2 (en) * 2014-06-27 2018-11-06 Microsoft Technology Licensing, Llc Motion vector selection for video encoding
JP6016280B2 (ja) * 2014-11-28 2016-10-26 Necプラットフォームズ株式会社 バーコード評価装置、バーコード画像生成システム、バーコード評価方法、バーコード画像生成方法及びバーコード評価プログラム
CN108353192B (zh) * 2015-09-30 2022-01-04 真实网络公司 视频处理系统和方法中的分层去块滤波
JP6620354B2 (ja) 2015-09-30 2019-12-18 Kddi株式会社 動画像の処理装置、処理方法及びコンピュータ可読記憶媒体
WO2017065422A1 (ko) * 2015-10-12 2017-04-20 엘지전자(주) 영상 처리 방법 및 이를 위한 장치
CN107734347B (zh) * 2016-08-12 2019-07-12 珠海市杰理科技股份有限公司 去块滤波边界强度确定方法和装置
EP3454556A1 (en) 2017-09-08 2019-03-13 Thomson Licensing Method and apparatus for video encoding and decoding using pattern-based block filtering
KR102444054B1 (ko) 2017-09-14 2022-09-19 삼성전자주식회사 영상 처리 장치, 영상 처리 방법 및 컴퓨터 판독가능 기록 매체
US10542255B2 (en) * 2017-09-28 2020-01-21 Google Llc Image processing for compression
CN118042166A (zh) * 2018-03-29 2024-05-14 艾锐势有限责任公司 用于对hdr内容进行去方块的系统和方法
CN110971915B (zh) * 2018-09-28 2022-07-01 杭州海康威视数字技术股份有限公司 滤波方法和设备
BR112021005758A2 (pt) 2018-09-28 2021-07-06 Fraunhofer Ges Forschung decodificador para decodificação, codificador para codificação, método para decodificação e codificação, mídia de armazenamento digital e fluxo contínuo de dados
US11363303B2 (en) 2018-10-02 2022-06-14 Comcast Cable Communications, Llc Systems, methods, and apparatuses for processing video
KR20200044653A (ko) * 2018-10-19 2020-04-29 삼성전자주식회사 딥 뉴럴 네트워크를 이용한 영상의 ai 부호화 및 ai 복호화 방법, 및 장치
US10853709B1 (en) * 2019-12-18 2020-12-01 Ricoh Company, Ltd. Image filtering for improved lossless compression
CN113011433B (zh) * 2019-12-20 2023-10-13 杭州海康威视数字技术股份有限公司 一种滤波参数调整方法及装置
CN112863010B (zh) * 2020-12-29 2022-08-05 宁波友好智能安防科技有限公司 一种防盗锁的视频图像处理系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005123732A (ja) * 2003-10-14 2005-05-12 Matsushita Electric Ind Co Ltd デブロックフィルタ処理装置およびデブロックフィルタ処理方法
JP2006521065A (ja) * 2003-03-17 2006-09-14 クゥアルコム・インコーポレイテッド 低ビット・レート・ビデオのビデオ品質を改善するための方法及び装置
JP2008205534A (ja) * 2007-02-16 2008-09-04 Matsushita Electric Ind Co Ltd 符号化方式変換装置
WO2009001793A1 (ja) * 2007-06-26 2008-12-31 Kabushiki Kaisha Toshiba 画像符号化と画像復号化の方法及び装置
WO2010001911A1 (ja) * 2008-07-03 2010-01-07 シャープ株式会社 フィルタ装置

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7227901B2 (en) * 2002-11-21 2007-06-05 Ub Video Inc. Low-complexity deblocking filter
EP1803303B1 (en) * 2004-10-21 2019-12-04 InterDigital VC Holdings, Inc. Technique for adaptive de-blocking of block-based film grain patterns
JP4784188B2 (ja) 2005-07-25 2011-10-05 ソニー株式会社 画像処理装置、画像処理方法およびプログラム
KR100678958B1 (ko) * 2005-07-29 2007-02-06 삼성전자주식회사 인트라 bl 모드를 고려한 디블록 필터링 방법, 및 상기방법을 이용하는 다 계층 비디오 인코더/디코더
JP2010081368A (ja) * 2008-09-26 2010-04-08 Toshiba Corp 画像処理装置、動画像復号装置、動画像符号化装置、画像処理方法、動画像復号方法、及び、動画像符号化方法
TWI600318B (zh) * 2010-05-18 2017-09-21 Sony Corp Image processing apparatus and image processing method

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006521065A (ja) * 2003-03-17 2006-09-14 クゥアルコム・インコーポレイテッド 低ビット・レート・ビデオのビデオ品質を改善するための方法及び装置
JP2005123732A (ja) * 2003-10-14 2005-05-12 Matsushita Electric Ind Co Ltd デブロックフィルタ処理装置およびデブロックフィルタ処理方法
JP2008205534A (ja) * 2007-02-16 2008-09-04 Matsushita Electric Ind Co Ltd 符号化方式変換装置
WO2009001793A1 (ja) * 2007-06-26 2008-12-31 Kabushiki Kaisha Toshiba 画像符号化と画像復号化の方法及び装置
WO2010001911A1 (ja) * 2008-07-03 2010-01-07 シャープ株式会社 フィルタ装置

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018033163A (ja) * 2011-06-30 2018-03-01 ソニー株式会社 画像処理装置および方法、記録媒体、並びに、プログラム
CN104221383A (zh) * 2012-04-13 2014-12-17 三菱电机株式会社 运动图像编码装置、运动图像解码装置、运动图像编码方法以及运动图像解码方法
CN104247417A (zh) * 2012-04-13 2014-12-24 高通股份有限公司 用于视频译码中的解块滤波器的β偏移控制
US10009616B2 (en) 2012-04-13 2018-06-26 Mitsubishi Electric Corporation Image encoding device, image decoding device, image encoding method, and image decoding method
CN104221383B (zh) * 2012-04-13 2018-09-11 三菱电机株式会社 图像编码装置、图像解码装置、图像编码方法以及图像解码方法
CN113170206A (zh) * 2018-11-02 2021-07-23 索尼集团公司 图像处理装置和图像处理方法
WO2020183849A1 (ja) * 2019-03-08 2020-09-17 ソニー株式会社 情報処理装置、情報処理方法及びプログラム
US11909964B2 (en) 2019-03-08 2024-02-20 Sony Group Corporation Information processing device, information processing method, and program

Also Published As

Publication number Publication date
US9613400B2 (en) 2017-04-04
JP2011223302A (ja) 2011-11-04
US10373295B2 (en) 2019-08-06
US20170163981A1 (en) 2017-06-08
US9077989B2 (en) 2015-07-07
CN102823246A (zh) 2012-12-12
US20120321206A1 (en) 2012-12-20
US20150243001A1 (en) 2015-08-27

Similar Documents

Publication Publication Date Title
WO2011125729A1 (ja) 画像処理装置と画像処理方法
US20200029074A1 (en) Image processing device and image processing method
JP4617644B2 (ja) 符号化装置及び方法
KR20190091568A (ko) 영상 정보 부호화 및 복호화 방법
KR20120079180A (ko) 동화상 복호화 방법 및 장치
KR20140048885A (ko) 화상 처리 장치 및 방법
JP5375938B2 (ja) 復号装置及び方法
JP4924708B2 (ja) 復号装置及び方法
JP5375935B2 (ja) 符号化装置及び方法
JP4983908B2 (ja) 復号装置及び方法
JP4983907B2 (ja) 符号化装置及び方法
JP5375936B2 (ja) 復号装置及び方法
JP5375937B2 (ja) 符号化装置及び方法

Legal Events

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

Ref document number: 201180016506.6

Country of ref document: CN

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

Ref document number: 11765629

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 13581960

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 11765629

Country of ref document: EP

Kind code of ref document: A1