WO2008057308A2 - Methods and apparatus for in-loop de-artifact filtering - Google Patents

Methods and apparatus for in-loop de-artifact filtering Download PDF

Info

Publication number
WO2008057308A2
WO2008057308A2 PCT/US2007/022795 US2007022795W WO2008057308A2 WO 2008057308 A2 WO2008057308 A2 WO 2008057308A2 US 2007022795 W US2007022795 W US 2007022795W WO 2008057308 A2 WO2008057308 A2 WO 2008057308A2
Authority
WO
WIPO (PCT)
Prior art keywords
filters
image region
input
filter
quantization
Prior art date
Application number
PCT/US2007/022795
Other languages
French (fr)
Other versions
WO2008057308A3 (en
Inventor
Meng-Ping Kao
Peng Yin
Oscar Divorra Escoda
Original Assignee
Thomson Licensing
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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=39365013&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=WO2008057308(A2) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Thomson Licensing filed Critical Thomson Licensing
Priority to US12/312,386 priority Critical patent/US9277243B2/en
Priority to EP07870824A priority patent/EP2082583A2/en
Priority to BRPI0717936-7A priority patent/BRPI0717936B1/en
Priority to JP2009536243A priority patent/JP5801032B2/en
Priority to EP21207323.3A priority patent/EP4224853A1/en
Publication of WO2008057308A2 publication Critical patent/WO2008057308A2/en
Publication of WO2008057308A3 publication Critical patent/WO2008057308A3/en
Priority to US14/981,345 priority patent/US9674556B2/en
Priority to US15/585,462 priority patent/US11089337B2/en
Priority to US17/367,184 priority patent/US11979614B2/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/86Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving reduction of coding artifacts, e.g. of blockiness
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/124Quantisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/154Measured or subjectively estimated visual quality after decoding, e.g. measurement of distortion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • 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/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/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/124Quantisation
    • H04N19/126Details of normalisation or weighting functions, e.g. normalisation matrices or variable uniform quantisers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • 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/174Methods 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 slice, e.g. a line of blocks or a group of blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/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/46Embedding additional information in the video signal during the compression process
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • H04N19/82Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop

Definitions

  • the present principles relate generally to video encoding and decoding and, more particularly, to methods and apparatus for in-loop de-artifact filtering.
  • All video compression artifacts result from quantization, which is the only lossy coding part in a hybrid video coding framework.
  • those artifacts can be present in various forms such as, for example, as a blocky artifact, a ringing artifact, an edge distortion, and/or texture corruption.
  • the decoded sequence may be composed of all types of visual artifacts, but with different severances.
  • blocky artifacts are common in block-based video coding. These artifacts can originate from both the block-based transform stage in residue coding and from the motion compensation stage.
  • Adaptive deblocking filters have been studied in the past and some well-known deblocking filtering methods have been proposed and adopted in various standards (such as those adopted in, for example, the International Organization for Standardization/International Electrotechnical Commission (ISO/IEC) Moving Picture Experts Group-4 (MPEG-4) Part 10 Advanced Video Coding (AVC) standard/International Telecommunication Union, Telecommunication Sector (ITU-T) H.264 recommendation (hereinafter the "MPEG-4 AVC standard").
  • MPEG-4 AVC Part 10 Advanced Video Coding
  • a deblocking filter can improve both objective and subjective video quality.
  • an adaptive in-loop deblocking filter is designed to reduce blocky artifacts, wherein the strength of filtering is controlled by the values of several syntax elements.
  • the basic idea is that if a relatively large absolute difference between samples near a block edge is measured, that difference is likely a blocking artifact and should thus be reduced. However, if the magnitude of that difference is so large that it cannot be explained by the coarseness of the quantization used in the encoding, the edge is more likely to reflect the actual behavior of the source picture and should not be smoothed over. In this way, the blockiness of the content is reduced, while the sharpness of the content is basically unchanged.
  • the deblocking filter is adaptive on several levels.
  • the global filtering strength can be adjusted to the individual characteristics of the video sequence.
  • filtering strength is made dependent on the inter/intra prediction decision, motion differences, and the presence of coded residuals in the two neighboring blocks.
  • macroblock boundaries special strong filtering is applied to remove "tiling artifacts".
  • sample values and quantizer-dependent thresholds can turn off filtering for each individual sample.
  • Deblocking filtering in accordance with the MPEG-4 AVC Standard is well designed to reduce the blocky artifact, but it does not try to correct other artifacts caused by quantization noise.
  • deblocking filtering in accordance with the MPEG-4 AVC Standard leaves edges and textures untouched. Thus, it cannot improve distorted edges or texture.
  • One reason for this lack of capability is that the
  • MPEG-4 AVC Standard deblocking filter applies a smooth image model and the designed filters typically include a bank of low-pass filters. However, images include many singularities, texture, and so forth and, thus, they are not handled correctly by the MPEG-4 AVC Standard deblocking filter.
  • a nonlinear de-noising filter adapts to non- stationary image statistics which exploits a sparse image model using an over complete set of linear transforms and hard-thresholding.
  • the nonlinear de-noising filter automatically becomes high-pass, or low-pass, or band-pass, and so forth, depending on the region the filter is operating on.
  • the nonlinear de-noising filter can address all types of quantization noise.
  • This particular de-noising approach basically includes three steps: transform; transform coefficients threshold; and inverse transform. Then several de-noised estimates provided by de-noising with an over complete set of transforms (typically produced by applying de-noising with shifted versions of the same transform) are combined using weighted averaging at every pixel.
  • Sparsity based de-noising tools could reduce quantization noise over video frames that include locally uniform regions (smooth, high frequency, texture, and so forth) separated by singularities.
  • the de-noising tool was designed for additive, independent and identically distributed (i.i.d.) noise removal, while quantization noise has significantly different properties, which can present significant issues in terms of proper distortion reduction and visual de-artifacting. This implies that these techniques may get confused by true edges or false blocky edges.
  • a possibility for a solution is spatio-frequential threshold adaptation, which may be able to correct the decision, but it is not trivial in its implementation.
  • a possible consequence of inadequate threshold selection is that sparse de-noising might result into over-smoothed reconstructed pictures, or a blocky artifact(s) may still be present despite the filtering procedure.
  • the signal as well as the blocky artifact added to the signal would probably have sparse representation at the filtering stage if the same transform is used for compression and denoising. So a thresholding operation would probably still keep the artifact.
  • sparsity based de-noising techniques even though they present a higher distortion reduction in terms of objective measures (e.g., mean squared error (MSE)) than other techniques, they may present important visual artifacts that need to be addressed.
  • MSE mean squared error
  • the in-loop deblocking filter used in the MPEG-4 AVC Standard is a special purpose filter which is not designed to remove the noise/artifacts at pixels away from the boundaries, within textures or to correct the distorted edges.
  • a video encoder capable of performing video encoding in accordance with the MPEG-4 AVC standard is indicated generally by the reference numeral 100.
  • the video encoder 100 includes a frame ordering buffer 110 having an output in signal communication with a non-inverting input of a combiner 185.
  • An output of the combiner 185 is connected in signal communication with a first input of a transformer and quantizer 125.
  • An output of the transformer and quantizer 125 is connected in signal communication with a first input of an entropy coder 145 and a first input of an inverse transformer and inverse quantizer 150.
  • An output of the entropy coder 145 is connected in signal communication with a first non-inverting input of a combiner 190.
  • An output of the combiner 190 is connected in signal communication with a first input of an output buffer 135.
  • a first output of an encoder controller 105 is connected in signal communication with a second input of the frame ordering buffer 110, a second input of the inverse transformer and inverse quantizer 150, an input of a picture-type decision module 115, an input of a macroblock-type (MB-type) decision module 120, a second input of an intra prediction module 160, a second input of a deblocking filter 165, a first input of a motion compensator 170, a first input of a motion estimator 175, and a second input of a reference picture buffer 180.
  • MB-type macroblock-type
  • a second output of the encoder controller 105 is connected in signal communication with a first input of a Supplemental Enhancement Information (SEI) inserter 130, a second input of the transformer and quantizer 125, a second input of the entropy coder 145, a second input of the output buffer 135, and an input of the Sequence Parameter Set (SPS) and Picture Parameter Set (PPS) inserter 140.
  • SEI Supplemental Enhancement Information
  • SPS Sequence Parameter Set
  • PPS Picture Parameter Set
  • a first output of the picture-type decision module 115 is connected in signal communication with a third input of a frame ordering buffer 110.
  • a second output of the picture-type decision module 115 is connected in signal communication with a second input of a macroblock-type decision module 120.
  • SPS Sequence Parameter Set
  • PPS Picture Parameter Set
  • An output of the inverse quantizer and inverse transformer 150 is connected in signal communication with a first non-inverting input of a combiner 119.
  • An output of the combiner 119 is connected in signal communication with a first input of the intra prediction module 160 and a first input of the deblocking filter 165.
  • An output of the deblocking filter 165 is connected in signal communication with a first input of a reference picture buffer 180.
  • An output of the reference picture buffer 180 is connected in signal communication with a second input of the motion estimator 175.
  • a first output of the motion estimator 175 is connected in signal communication with a second input of the motion compensator 170.
  • a second output of the motion estimator 175 is connected in signal communication with a third input of the entropy coder 145.
  • An output of the motion compensator 170 is connected in signal communication with a first input of a switch 197.
  • An output of the intra prediction module 160 is connected in signal communication with a second input of the switch 197.
  • An output of the macroblock-type decision module 120 is connected in signal communication with a third input of the switch 197.
  • the third input of the switch 197 determines whether or not the "data" input of the switch (as compared to the control input, i.e., the third input) is to be provided by the motion compensator 170 or the intra prediction module 160.
  • the output of the switch 197 is connected in signal communication with a second non-inverting input of the combiner 119 and with an inverting input of the combiner 185.
  • Inputs of the frame ordering buffer 110 and the encoder controller 105 are available as input of the encoder 100, for receiving an input picture 101.
  • an input of the Supplemental Enhancement Information (SEI) inserter 130 is available as an input of the encoder 100, for receiving metadata.
  • An output of the output buffer 135 is available as an output of the encoder 100, for outputting a bitstream.
  • SEI Supplemental Enhancement Information
  • a video decoder capable of performing video decoding in accordance with the MPEG-4 AVC standard is indicated generally by the reference numeral 200.
  • the video decoder 200 includes an input buffer 210 having an output connected in signal communication with a first input of the entropy decoder 245.
  • a first output of the entropy decoder 245 is connected in signal communication with a first input of an inverse transformer and inverse quantizer 250.
  • An output of the inverse transformer and inverse quantizer 250 is connected in signal communication with a second non-inverting input of a combiner 225.
  • An output of the combiner 225 is connected in signal communication with a second input of a deblocking filter 265 and a first input of an intra prediction module 260.
  • a second output of the deblocking filter 265 is connected in signal communication with a first input of a reference picture buffer 280.
  • An output of the reference picture buffer 280 is connected in signal communication with a second input of a motion compensator 270.
  • a second output of the entropy decoder 245 is connected in signal communication with a third input of the motion compensator 270 and a first input of the deblocking filter 265.
  • a third output of the entropy decoder 245 is connected in signal communication with an input of a decoder controller 205.
  • a first output of the decoder controller 205 is connected in signal communication with a second input of the entropy decoder 245.
  • a second output of the decoder controller 205 is connected in signal communication with a second input of the inverse transformer and inverse quantizer 250.
  • a third output of the decoder controller 205 is connected in signal communication with a third input of the deblocking filter 265.
  • a fourth output of the decoder controller 205 is connected in signal communication with a second input of the intra prediction module 260, with a first input of the motion compensator 270, and with a second input of the reference picture buffer 280.
  • An output of the motion compensator 270 is connected in signal communication with a first input of a switch 297.
  • An output of the intra prediction module 260 is connected in signal communication with a second input of the switch 297.
  • An output of the switch 297 is connected in signal communication with a first non-inverting input of the combiner 225.
  • An input of the input buffer 210 is available as an input of the decoder 200, for receiving an input bitstream.
  • a first output of the deblocking filter 265 is available as an output of the decoder 200, for outputting an output picture.
  • an apparatus includes an encoder for encoding an image region.
  • the encoder has at least two filters for successively performing in-loop filtering to respectively reduce at least a first and a second type of quantization artifact.
  • a method includes encoding an image region.
  • the encoding step includes performing in-loop filtering to reduce at least a first and a second type of quantization artifact respectively using at least two filters in succession.
  • an apparatus includes a decoder for decoding an image region.
  • the decoder has at least two filters for successively performing in-loop filtering to respectively reduce at least a first and a second type of quantization artifact.
  • the method includes decoding an image region.
  • the decoding step includes performing in-loop filtering to reduce at least a first and a second type of quantization artifact respectively using at least two filters in succession.
  • FIG. 1 shows a block diagram for a video encoder capable of performing video encoding in accordance with the MPEG-4 AVC Standard
  • FIG. 2 shows a block diagram for a video decoder capable of performing video decoding in accordance with the MPEG-4 AVC Standard
  • FIG. 3 shows a block diagram for a video encoder capable of performing video encoding in accordance with the MPEG-4 AVC Standard, modified and/or extended for use with the present principles, according to an embodiment of the present principles;
  • FIG. 4 shows a block diagram for a video decoder capable of performing video decoding in accordance with the MPEG-4 AVC Standard, modified and/or extended for use with the present principles, according to an embodiment of the present principles;
  • FIG. 5 shows a diagram for an exemplary succession of de-artifact filters, according to an embodiment of the present principles
  • FIG. 6 shows a flow diagram for an exemplary method for encoding image data using in-loop de-artifact filtering, according to an embodiment of the present principles
  • FIG. 7 shows a flow diagram for an exemplary method for decoding image data using in-loop de-artifact filtering, according to an embodiment of the present principles
  • FIG. 8 shows an exemplary apparatus for performing quantization constraint set (QCS) coefficients correction after artifact removal/reduction, according to an embodiment of the present principles
  • FIG. 9 shows exemplary quantization bins for an over-filtering problem and a correction approach using QCS in video encoding/decoding, according to an embodiment of the present principles.
  • the present principles are directed to methods and apparatus for in-loop de- artifact filtering.
  • any flow charts, flow diagrams, state transition diagrams, pseudocode, and the like represent various processes which may be substantially represented in computer readable media and so executed by a computer or processor, whether or not such computer or processor is explicitly shown.
  • the functions of the various elements shown in the figures may be provided through the use of dedicated hardware as well as hardware capable of executing software in association with appropriate software.
  • the functions may be provided by a single dedicated processor, by a single shared processor, or by a plurality of individual processors, some of which may be shared.
  • processor or “controller” should not be construed to refer exclusively to hardware capable of executing software, and may implicitly include, without limitation, digital signal processor (“DSP”) hardware, read-only memory (“ROM”) for storing software, random access memory (“RAM”), and non-volatile storage. Other hardware, conventional and/or custom, may also be included.
  • DSP digital signal processor
  • ROM read-only memory
  • RAM random access memory
  • non-volatile storage non-volatile storage.
  • Other hardware conventional and/or custom, may also be included.
  • any switches shown in the figures are conceptual only. Their function may be carried out through the operation of program logic, through dedicated logic, through the interaction of program control and dedicated logic, or even manually, the particular technique being selectable by the implementer as more specifically understood from the context.
  • any element expressed as a means for performing a specified function is intended to encompass any way of performing that function including, for example, a) a combination of circuit elements that performs that function or b) software in any form, including, therefore, firmware, microcode or the like, combined with appropriate circuitry for executing that software to perform the function.
  • the present principles as defined by such claims reside in the fact that the functionalities provided by the various recited means are combined and brought together in the manner which the claims call for. It is thus regarded that any means that can provide those functionalities are equivalent to those shown herein.
  • high level syntax and “high level syntax element” interchangeably refer to syntax present in the bitstream that resides hierarchically above the macroblock layer.
  • high level syntax may refer to, but is not limited to, syntax at the slice header level, Supplemental Enhancement Information (SEI) level, picture parameter set level, sequence parameter set level and network abstraction layer (NAL) unit header level.
  • SEI Supplemental Enhancement Information
  • NAL network abstraction layer
  • block level syntax and “block level syntax element” interchangeably refer to syntax present in the bitstream that resides hierarchically at any of the possible coding units structured as a block or partitions of a block in a video coding scheme.
  • block level syntax may refer to, but is not limited to, syntax at the macroblock level, the 16x8 partition level, the 8x16 partition level, the 8x8 sub-block level, and general partitions of any of these.
  • block level syntax may also refer to blocks issued from the union of smaller blocks (e.g., unions of macroblocks).
  • image data is intended to refer to data corresponding to any of still images and moving images (i.e., a sequence of images including motion). It is to be appreciated that the use of the term “and/or”, for example, in the case of "A and/or B", is intended to encompass the selection of the first listed option (A), the selection of the second listed option (B), or the selection of both options (A and B).
  • such phrasing is intended to encompass the selection of the first listed option (A), the selection of the second listed option (B), the selection of the third listed option (C), the selection of the first and the second listed options (A and B), the selection of the first and third listed options (A and C), the selection of the second and third listed options (B and C), or the selection of all three options (A and B and C). This may be extended, as readily apparent by one of ordinary skill in this and related arts, for as many items listed.
  • FIG. 3 a video encoder capable of performing video encoding in accordance with the MPEG-4 AVC standard, modified and/or extended for use with the present principles, is indicated generally by the reference numeral 300.
  • the video encoder 300 includes a frame ordering buffer 310 having an output in signal communication with a non-inverting input of a combiner 385.
  • An output of the combiner 385 is connected in signal communication with a first input of a transformer and quantizer 325.
  • An output of the transformer and quantizer 325 is connected in signal communication with a first input of an entropy coder 345 and a first input of an inverse transformer and inverse quantizer 350.
  • An output of the entropy coder 345 is connected in signal communication with a first non-inverting input of a combiner 390.
  • An output of the combiner 390 is connected in signal communication with a first input of an output buffer 335.
  • a first output of an encoder controller 305 is connected in signal communication with a second input of a frame ordering buffer 310, a second input of the inverse transformer and inverse quantizer 350, an input of a picture-type decision module 315, a first input of a macroblock-type (MB-type) decision module 320, a second input of an intra prediction module 360, a second input of a deblocking filter 365, a first input of a motion compensator 370, a first input of a motion estimator 375, a second input of a reference picture buffer 380, a first input of a sparsity de-noising filter, and a first input of a quantization constraint set (QCS) 355.
  • MB-type macroblock-type
  • a second output of the encoder controller 305 is connected in signal communication with a first input of a Supplemental Enhancement Information (SEI) inserter 330, a second input of the transformer and quantizer 325, a second input of the entropy coder 345, a second input of the output buffer 335, and an input of the Sequence Parameter Set (SPS) and Picture Parameter Set (PPS) inserter 340.
  • SEI Supplemental Enhancement Information
  • a first output of the picture-type decision module 315 is connected in signal communication with a third input of the frame ordering buffer 310.
  • a second output of the picture-type decision module 315 is connected in signal communication with a second input of a macroblock-type decision module 320.
  • An output of the Sequence Parameter Set (SPS) and Picture Parameter Set (PPS) inserter 340 is connected in signal communication with a third non-inverting input of the combiner 390.
  • An output of the inverse quantizer and inverse transformer 350 is connected in signal communication with a first non-inverting input of a combiner 319.
  • An output of the combiner 319 is connected in signal communication with a first input of the intra prediction module 360 and a first input of the deblocking filter 365.
  • An output of the deblocking filter 365 is connected in signal communication with a second input of the sparsity de-noising filter 344.
  • An output of the sparsity de-noising filter 344 is connected in signal communication with a second input of the quantization constraint set (QCS) 355.
  • An output of the quantization constraint set (QCS) 355 is connected in signal communication with a first input of the reference picture buffer 380.
  • An output of the reference picture buffer 380 is connected in signal communication with a second input of the motion estimator 375 and a second input of the motion compensator 370.
  • a first output of the motion estimator 375 is connected in signal communication with a third input of the motion compensator 370.
  • a second output of the motion estimator 375 is connected in signal communication with a third input of the entropy coder 345.
  • An output of the motion compensator 370 is connected in signal communication with a first input of a switch 397.
  • An output of the intra prediction module 360 is connected in signal communication with a second input of the switch 397.
  • An output of the macroblock-type decision module 320 is connected in signal communication with a third input of the switch 397.
  • the third input of the switch 397 determines whether or not the "data" input of the switch (as compared to the control input, i.e., the third input) is to be provided by the motion compensator 370 or the intra prediction module 360.
  • the output of the switch 397 is connected in signal communication with a second non-inverting input of the combiner 319 and with an inverting input of the combiner 385.
  • Inputs of the frame ordering buffer 310 and the encoder controller 305 are available as input of the encoder 300, for receiving an input picture 301.
  • an input of the Supplemental Enhancement Information (SEI) inserter 330 is available as an input of the encoder 300, for receiving metadata.
  • An output of the output buffer 335 is available as an output of the encoder 300, for outputting a bitstream.
  • SEI Supplemental Enhancement Information
  • the video decoder 400 includes an input buffer 410 having an output connected in signal communication with a first input of the entropy decoder 445.
  • a first output of the entropy decoder 445 is connected in signal communication with a first input of an inverse transformer and inverse quantizer 450.
  • An output of the inverse transformer and inverse quantizer 450 is connected in signal communication with a second non-inverting input of a combiner 425.
  • An output of the combiner 425 is connected in signal communication with a second input of a deblocking filter 465 and a first input of an intra prediction module 460.
  • An output of the deblocking filter 465 is connected in signal communication with a first input of a sparsity de-noising filter 444.
  • An output of the sparsity de-noising filter 444 is connected in signal communication with a first input of a quantization constraint set (QCS) 455.
  • a first output of the quantization constraint set (QCS) 455 is connected in signal communication with a first input of a reference picture buffer 480.
  • An output of the reference picture buffer 480 is connected in signal communication with a second input of a motion compensator 470.
  • a second output of the entropy decoder 445 is connected in signal communication with a third input of the motion compensator 470 and a first input of the deblocking filter 465.
  • a third output of the entropy decoder 445 is connected in signal communication with an input of a decoder controller 405.
  • a first output of the decoder controller 405 is connected in signal communication with a second input of the entropy decoder 445.
  • a second output of the decoder controller 405 is connected in signal communication with a second input of the inverse transformer and inverse quantizer 450.
  • a third output of the decoder controller 405 is connected in signal communication with a third input of the deblocking filter 465, a second input of the sparsity de-noising filter 444, and a second input of the quantization constraint set (QCS) 455.
  • a fourth output of the decoder controller 405 is connected in signal communication with a second input of the intra prediction module 460, with a first input of the motion compensator 470, and with a second input of the reference picture buffer 480.
  • An output of the motion compensator 470 is connected in signal communication with a first input of a switch 497.
  • An output of the intra prediction module 460 is connected in signal communication with a second input of the switch 497.
  • An output of the switch 497 is connected in signal communication with a first non-inverting input of the combiner 425.
  • An input of the input buffer 410 is available as an input of the decoder 400, for receiving an input bitstream.
  • a second output of the quantization constraint set (QCS) 455 is available as an output of the decoder 400, for outputting an output picture.
  • the present principles are directed to methods and apparatus for in-loop de-artifact filtering.
  • the filters are placed in the coding loop (in-loop), so the filtered frames are used as referenced frames for motion compensation of subsequent coded frames.
  • At least one of the filters includes, for example, a deblocking filter, a de-ringing filter, a de-noising filter, a signal estimation filter, a linear filter, and/or a non-linear filter.
  • first pass we apply an adaptive deblocking filter, which targets removing blocking artifacts.
  • second pass we apply an adaptive sparse de-noising filter, which can further reduce quantization noise over video frames composed of locally uniform regions (smooth, high frequency, texture, and so forth).
  • compression constraints including, but not limited to, quantization constraints, in order to help restore the image to the artifact-free form.
  • One or more embodiments herein involve the use of two or more in-loop filters (and/or two or more in-loop filtering passes) to remove or reduce quantization artifacts - the first filter (or filtering pass) to remove or reduce a first type (or group of types) of quantization artifact and the second filter (or filtering pass) to remove or reduce a second type (or group of types) of quantization artifact.
  • the use of even more in-loop filters (or filtering passes) is also contemplated in accordance with embodiments of the present principles. That is, given the teachings of the present principles provided herein, one of ordinary skill in this and related arts will contemplate these and various other implementations and variations of the present principles, while maintaining the spirit of the present principles.
  • filters we are not limited to a particular set of general or special purpose filters, a particular number of cascaded filters, or even a particular order in which they are combined. Those parameters may be adjusted based on, for example, the encoder and/or decoder to be used and the nature of the video data to be filtered. To prevent the input video signal being over processed, we can also enforce some compression and/or quantization constraints.
  • An embodiment involves the use of a "two-pass" filter.
  • an exemplary succession of de-artifact filters is indicated generally by the reference numeral 500.
  • An adaptive sparse de-noising filter 544 is used as a refinement filter subsequent to the MPEG-4 AVC Standard deblocking filter 565 and before the quantization constraint set (QCS) filter 555. Since visual blocking artifacts are most successfully removed by the deblocking filter, the remaining quantization noise tends to become more independent and identically distributed (i.i.d.), which conforms to S the noise model assumption of an adaptive sparse de-noising filter.
  • the quantization constraint set filter 555 After applying the second-pass sparse de-noising filter 544, we use the quantization constraint set filter 555 to reshape the residuals and prevent them from being over-processed.
  • the quantization constraint set filter 555 is used to restrict each transform coefficient to its original quantization interval. This step helps prevent over-smoothing, and0 makes the outcome of the cascaded set of filters more robust to changes in the settings of filters including, but not limited to, changes in the thresholding parameter for the sparse-based de-noising step.
  • the adaptive sparse de-noising filter 544 includes a forward transformer 571 having an output in signal communication with an input of a threshold module 573.5 An output of the threshold module 573 is connected in signal communication with an input of an inverse transformer 575. An output of the inverse transformer 575 is connected in signal communication with an input of an adaptive weighting module 577. An input of the forward transformer is available as an input of the spare de- noising filter 544. An output of the adaptive weighting module 577 is available as an 0 output of the spare de-noising filter 544.
  • a ⁇ > output of the MPEG-4 AVC Standard deblocking filter 565 is connected in signal communication with the input of the forward transformer 571.
  • the output of the adaptive weighting module 577 is connected in signal communication with an input of the quantization constraint set filter 555.
  • An input of the MPEG-4 AVC Standard deblocking filter 565 is available 25 as an input of the succession of de-artifact filters 500.
  • An output of the quantization constraint set filter 571 is available as an output of the succession of de-artifact filters 500.
  • FIGs. 3 and 4 illustrate where the adaptive sparse de-noising filter and the quantization constraint set filter may be located within a video encoder 30 structure and a video decoder structure, respectively.
  • the adaptive sparse de-noising filter and the quantization constraint set filter are located after the deblocking filter.
  • the adaptive sparse de-noising filter and the quantization constraint set filter are located after the deblocking filter.
  • the adaptive sparse de-noising filter and/or the quantization constraint set filter can be turned on/off at the macroblock level, slice level, picture level, and/or sequence level. For example, we may choose to only apply the sparse de-noising filter and the quantization constraint set filter for intra frames, but not for inter frames.
  • the different artifact removing/reducing steps may be selectively switched on/off depending on complexity constraints of the application, distortion measures and/or coding costs.
  • the transform for the sparse de-noising step can be adaptively selected from a set of possible transforms. The selected transform can be indicated and signaled to the decoder using a high level syntax.
  • a proper threshold ⁇ can be signaled to optimize the adaptive sparse de-noising filtering. The signaled threshold ⁇ may need to be adapted to the quantization parameter as well as to the sequence content.
  • the optimal weighting method can also be signaled to maximize the de-noising gain.
  • TABLE 1 shows exemplary picture parameter set (PPS) raw byte sequence payload (RBSP) syntax for use in in-loop de-artifact filtering in accordance with an embodiment of the present principles.
  • PPS picture parameter set
  • RBSP raw byte sequence payload
  • TABLE 2 shows exemplary slice header syntax for use in in-loop de-artifact filtering in accordance with an embodiment of the present principles.
  • sparse_filter_control_present_flag 1 specifies that a set of syntax elements controlling the characteristics of the sparse de-noising filter is present in the slice header.
  • sparse_filter_control_present_flag 0 specifies that a set of syntax elements controlling the characteristics of the sparse de-noising filter is not present in the slice header and their inferred values are in effect.
  • qcs_control_present_flag 1 specifies that a set of syntax elements controlling the characteristics of the quantization constraint set (QCS) filter is present in the slice header.
  • qcs_control_present_flag 0 specifies that a set of syntax elements controlling the characteristics of the quantization constraint set (QCS) filter is not present in the slice header and their inferred values are in effect.
  • disable_sparse_filter_flag specifies whether the operation of the sparse de- noising filter shall be disabled. When disable_sparse_filter_flag is not present in the slice header, disable_sparse_filter_flag shall be inferred to be equal to 0.
  • sparse_threshold specifies the value of threshold used in sparse de-noising.
  • sparse_transform_type specifies the type of the transform used in sparse de-noising.
  • sparse_transform_type 0 specifies that a 4x4 transform is used.
  • sparse_transform_type 0 specifies that a 8x8 transform is used.
  • adaptive_weighting_type specifies the type of weighting used in sparse de- noising.
  • adaptive_weighting_type 0 specifies that sparsity weighting is used.
  • adaptive_weighting_type 0 specifies that average weighting is used.
  • disable_qcs_flag specifies whether the operation of the quantization constraint set (QCS) filter shall be disabled. When disable_qcs_flag is not present in the slice header, disable_qcs_flag shall be inferred to be equal to 0.
  • qcs_pullback_model specifies how to re-assign the value of coefficients.
  • qcs_pullback_model 0 specifies to pull back the coefficients to the closest cell boundary (An example of pulling back to the closet cell (or quantization bin) boundary is shown in the last row of FIG. 9, described below.).
  • qcs_pullback_model 1 specifies to pull back the coefficients to the center (also see FIG., if the quantized coefficient value is used instead) or predefined value of a cell.
  • an adaptive sparse de-noising filter operation involves the following steps.
  • the information related to this particular set may be transmitted to the decoder.
  • the information may be so transmitted at, for example, a slice, picture and/or sequence level.
  • high level syntax may be embedded in the data stream.
  • the high level syntax may be embedded, for example, at the slice, picture and/or sequence level. For example, within the framework of the MPEG-4 AVC Standard, we can reuse the existing 4x4 transform and 8x8 transform and/or the Hadamard transform step.
  • a threshold ⁇ (for example, based on a quantization step and/or the statistics of the encoding picture) is determined, ⁇ may be transmitted to the decoder, ⁇ may be transmitted at, for example, a block, a slice, a picture and/or a sequence level. In transmitting such information, at least one block level syntax and/or at least one high level syntax may be embedded in the data stream.
  • the adaptive weighting method to combine the outcome of the inversed transforms, which may be transmitted to the decoder is determined. The weights may be transmitted at, for example, a block a slice, picture and/or sequence level.
  • weighting In the event that the weighting is directly derived without explicit transmission thereof, there may still be a need to transmit some auxiliary information related to the weighting step.
  • at least one block level syntax and/or at least one high level syntax may be embedded in the data stream.
  • average weighting or sparsity base weighting which adapts the weights inverse of number of. non-zero coefficients, can be used.
  • present principles are not limited to solely the preceding types of weighting and, thus, other types of weighting may also be used in accordance with the present principles, while maintaining the spirit of the present principles.
  • an adaptive sparse de-noising filter methodology used for refinement involves obtaining the de-noised estimate J 1 . from each transform H 1 . using the specified threshold ⁇ ; and combining x,. using adaptive weightings to get the final de-noised estimate x .
  • a quantization constraint set methodology is used for a last refinement step as follows:
  • the adaptive sparse de-noising filtering is directed to recovering the original signal from an independent and identically distributed (i.i.d.) noisy environment.
  • the quantization noise in video compression and particularly with respect to the MPEG-4 AVC Standard, is usually not independent and identically distributed (i.i.d.).
  • the present principles differ from the prior art in the use of a series of refinement steps (succession of filters) after, for example, the MPEG-4 AVC Standard deblocking filter, each oriented to correct at least one part of the coding artifacts.
  • the signal after deblocking filter is a better match to the independent and identically distributed (i.i.d.) noise presumption.
  • the possible "over filtering problem” resulting from the use and/or combination of deblocking and de-noising filters is solved by the subsequent quantization constraint set (QCS) filter.
  • QCS quantization constraint set
  • FIG. 6 an exemplary method for encoding image data using in- loop de-artifact filtering is indicated generally by the reference numeral 600.
  • the method 600 includes a start block 605 that passes control to a function block 610.
  • the function block 610 encodes the current slice, and passes control to a function block 615.
  • the function block 615 decides whether or not a deblocking filter, a sparse de-noising filter, and/or quantization constraint set (QCS) will be applied to the current slice based on statistics of the current slice, and passes control to a decision block 620.
  • the decision block 620 determines whether or not disable_deblocking_filter_ids is equal to zero. If so, then control is passed to a function block 625. Otherwise, control is passed to a decision block 630.
  • the function block 625 applies a deblocking filter, and passes control to the decision block 630.
  • the decision block 630 determines whether or not disable_sparse_filter_flag is equal to zero. If so, then control is passed to a function block 635. Otherwise, control is passed to a decision block 640.
  • the function block 635 applies the sparsity de-noising filter, and passes control to the decision block 640.
  • the decision block 640 determines whether or not diable_qcs_flag is equal to zero. If so, then control is passed to a function block 645. Otherwise, control is passed to an end block 699.
  • the function block 645 applies the quantization constraint set (QCS), and passes control to the end block 699.
  • QCS quantization constraint set
  • FIG. 7 an exemplary method for decoding image data using in- loop de-artifact filtering is indicated generally by the reference numeral 700.
  • the method 700 includes a start block 705 that passes control to a function block 710.
  • the function block 710 parses the bitstream, decodes the syntax, and passes control to a function block 715.
  • the function block 715 decodes the current slice, and passes control to a decision block 720.
  • the decision block 720 determines whether or not diable_deblocking_filter_idc is equal to zero. If so, then control is passed to a function block 725. Otherwise, control is passed to a decision block 730.
  • the function block 725 applies the deblocking filter, and passes control to the decision block 730.
  • the decision block 730 determines whether or not disable_sparse_filter_flag is equal to zero. If so, then control is passed to a function block 735. Otherwise, control is passed to a decision block 740.
  • the function block 735 applies the sparsity de-noising filter, and passes control to the decision block 740.
  • the decision block 740 determines whether or not diable_qcs_flag is equal to zero. If so, then control is passed to a function block 745. Otherwise, control is passed to an end block 799.
  • the function block 745 applies a quantization constraint set (QCS), and passes control to the end block 799.
  • QCS quantization constraint set
  • an exemplary apparatus for performing quantization constraint set (QCS) coefficients correction after artifact removal/reduction is indicated generally by the reference numeral 800.
  • the apparatus 800 includes a combiner 805 having an output in signal communication with an input of a MPEG-4 AVC transformer 810.
  • An output of the MPEG-4 AVC Standard transformer 810 is connected in signal communication with a first input of a comparison and correction module 815.
  • An output of the comparison and correction module 815 is connected in signal communication with an input of a MPEG-4 AVC inverse transformer 820.
  • An output of the MPEG-4 AVC inverse transformer 820 is connected in signal communication with a first non-inverting input of a combiner 825.
  • a non-inverting input of the combiner 805 is available as an input of the apparatus 800, for receiving a reconstructed and filtered video picture.
  • An inverting input of the combiner 805 is available as an input of the apparatus 800, for receiving a predicted video picture.
  • a second input of the compare and correct module 815 is available as an input of the apparatus 800, for receiving quantization bins pattern.
  • a third input of the compare and correct module 815 is available as an input of the apparatus 800, for receiving decoded coefficients.
  • a second non-inverting input of the combiner 825 is available as an input of the apparatus, for receiving a predicted video picture.
  • An output of the combiner 825 is available as an output of the apparatus, for outputting a reconstructed and filtered and quantization constraint set (QCS) corrected video picture.
  • QCS quantization constraint set
  • the MPEG-4 AVC transformer 810 is applied to the decoded residual.
  • the MPEG-4 AVC inverse transformer 820 is applied to the decoded residual.
  • the compare and correct module 815 compares the decoded and filtered pictures in the transform domain and corrects the coefficients that are over-filtered.
  • exemplary quantization bins for using QCS to correct an over-filtering problem in video encoding/decoding is indicated generally by the reference numeral 900.
  • the original value is x
  • the particular bins are denoted by 910, 920, 930, and 940.
  • x is in the quantization bin of (y n -i, y n ].
  • the reconstruction value of x is x', which is in the quantization bin of (y n -i, y n ].
  • bin 930 after the de-artifacting process, the filtered coefficient of x is x", which is in the quantization bin of (y n , y n +i]. However, the coefficient should not be outside the original quantization bin, which is (y n -i, y n ].
  • bin 940 we apply the QCS process, and we set x 1 " equal to y n ,, which is the final reconstructed value.
  • one advantage/feature is an apparatus that includes an encoder for encoding an image region.
  • the encoder has at least two filters for successively performing in-loop filtering to respectively reduce at least a first and a second type of quantization artifact.
  • Another advantage/feature is the apparatus having the encoder that, in turn, has at least two filters as described above, wherein at least one of the at least two filters is used to enforce at least one compression constraint.
  • Yet another advantage/feature is the apparatus having the encoder that, in turn, has at least two filters wherein at least one of the at least two filters is used to enforce at least one compression constraint as described above, wherein the at least one compression constraint involves a quantization constraint set.
  • Still another advantage/feature is the apparatus having the encoder that, in turn, has at least two filters wherein at least one of the at least two filters is used to enforce at least one compression constraint as described above, wherein at least one of, enablement information or disablement information for the at least one compression constraint and side information corresponding to the image region to adaptively indicate parameters of the at least one compression constraint, is signaled using at least one of at least one high level syntax element and at least one block level syntax element.
  • another advantage/feature is the apparatus having the encoder that, in turn, has at least two filters wherein at least one of the at least two filters is used to enforce at least one compression constraint as described above, wherein parameters of the at least one compression constraint is adaptively indicated based at least in part on at least one of data characteristics and data statistics corresponding to the image region.
  • another advantage/feature is the apparatus having the encoder that, in turn, has at least two filters as described above, wherein at least one of the at least two filters includes a deblocking filter, a de-ringing filter, a de-noising filter, a signal estimation filter, a linear filter, and a non-linear filter.
  • another advantage/feature is the apparatus having the encoder that, in turn, has at least two filters as described above, wherein a total number, a type, and an order of implementation of the at least two filters is dynamically selectable. Additionally, another advantage/feature is the apparatus having the encoder that, in turn, has at least two filters as described above, wherein at least one of the two or more filters is adaptively enabled or disabled depending upon at least one of data characteristics and data statistics corresponding to the image region.
  • another advantage/feature is the apparatus having the encoder that, in turn, has at least two filters as described above, wherein enablement information or disablement information for at least one of the two or more filters is signaled using at least one of at least one high level syntax element and at least one block level syntax element.
  • another advantage/feature is the apparatus having the encoder that, in turn, has at least two filters as described above, wherein the encoder transmits side information corresponding to the image region to adaptively indicate parameters of at least one of the two or more filters, the side information being transmitted at at least one of a macroblock level, a slice levef, a picture level, and a sequence level.
  • another advantage/feature is the apparatus having the encoder that transmits side information as described above, wherein the parameters of the at least one of the two or more filters are adaptively tuned based at least in part on at least one of data characteristics and data statistics corresponding to the image region.
  • another advantage/feature is the apparatus having the encoder that, in turn, has at least two filters as described above, wherein the two or more filters are included in a two-pass filter, the two-pass filter having a deblocking filter for performing a first pass to reduce blocking artifacts as the first type of quantization artifact and a sparse de-noising filter for performing a second pass to reduce noise as the second -type of quantization artifact.
  • another advantage/feature is the apparatus having the encoder that, in turn, has at least two filters wherein the two or more filters are included in a two-pass filter as described above, wherein the encoder enforces a quantization constraint set subsequent to the second pass.
  • another advantage/feature is the apparatus having the encoder wherein the two or more filters are included in a two-pass filter as described above, wherein the encoder signals a quantization constraint process pullback method using at least one of at least one high level syntax element and at least one block level syntax element.
  • another advantage/feature is the apparatus having the encoder wherein the two or more filters are included in a two-pass filter as described above, wherein the encoder signals at least one of a transform type, a threshold, and a weighting method for the sparse de-noising filter in at least one of at least one high level syntax element and at least one block level, syntax element.
  • another advantage/feature is the apparatus having the encoder that, in turn, has at least two filters as described above, wherein the at least two filters are in-loop filters corresponding to encoding the image region, and wherein a version of the image region that is displayed is different from at least one of an output signal corresponding to the image region after the at least two in-loop filters and the initial input signal corresponding to the image region before the at least two in-loop filters.
  • the teachings of the -present principles are implemented as a combination of hardware and software.
  • the software may be implemented as an application program tangibly embodied on a program storage unit.
  • the application program may be uploaded to, and executed by, a machine comprising any suitable architecture.
  • the machine is implemented on a computer platform having hardware such as one or more central processing units (“CPU"), a random access memory (“RAM”), and input/output ("I/O") interfaces.
  • CPU central processing units
  • RAM random access memory
  • I/O input/output
  • the computer platform may also include an operating system and microinstruction code.
  • the various processes and functions described herein may be either part of the microinstruction code or part of the application program, or any combination thereof, which may be executed by a CPU.
  • various other peripheral units may be connected to the computer platform such as an additional data storage unit and a printing unit.

Abstract

There are provided methods and apparatus for in-loop artifact filtering. An apparatus includes an encoder (300) for encoding an image region. The encoder (300) has at least two filters (365, 344) for successively performing in-loop filtering to respectively reduce at least a first and a second type of quantization artifact.

Description

METHODS AND APPARATUS FOR IN-LOOP DE-ARTIFACT FILTERING
CROSS-REFERENCE TO RELATED APPLICATIONS
This application claims the benefit of U.S. Provisional Application Serial No. 60/864,917, filed November 8, 2006, which is incorporated by reference herein in its entirety.
TECHNICAL FIELD
The present principles relate generally to video encoding and decoding and, more particularly, to methods and apparatus for in-loop de-artifact filtering.
BACKGROUND
All video compression artifacts result from quantization, which is the only lossy coding part in a hybrid video coding framework. However, those artifacts can be present in various forms such as, for example, as a blocky artifact, a ringing artifact, an edge distortion, and/or texture corruption. In general, the decoded sequence may be composed of all types of visual artifacts, but with different severances. Among the different types of visual artifacts, blocky artifacts are common in block-based video coding. These artifacts can originate from both the block-based transform stage in residue coding and from the motion compensation stage. Adaptive deblocking filters have been studied in the past and some well- known deblocking filtering methods have been proposed and adopted in various standards (such as those adopted in, for example, the International Organization for Standardization/International Electrotechnical Commission (ISO/IEC) Moving Picture Experts Group-4 (MPEG-4) Part 10 Advanced Video Coding (AVC) standard/International Telecommunication Union, Telecommunication Sector (ITU-T) H.264 recommendation (hereinafter the "MPEG-4 AVC standard"). When designed well, a deblocking filter can improve both objective and subjective video quality. In state of the art video encoders and/or decoders such as, for example, those corresponding to the MPEG-4 AVC Standard, an adaptive in-loop deblocking filter is designed to reduce blocky artifacts, wherein the strength of filtering is controlled by the values of several syntax elements. The basic idea is that if a relatively large absolute difference between samples near a block edge is measured, that difference is likely a blocking artifact and should thus be reduced. However, if the magnitude of that difference is so large that it cannot be explained by the coarseness of the quantization used in the encoding, the edge is more likely to reflect the actual behavior of the source picture and should not be smoothed over. In this way, the blockiness of the content is reduced, while the sharpness of the content is basically unchanged. The deblocking filter is adaptive on several levels. On the slice level, the global filtering strength can be adjusted to the individual characteristics of the video sequence. On the block-edge level, filtering strength is made dependent on the inter/intra prediction decision, motion differences, and the presence of coded residuals in the two neighboring blocks. On macroblock boundaries, special strong filtering is applied to remove "tiling artifacts". On the sample level, sample values and quantizer-dependent thresholds can turn off filtering for each individual sample.
Deblocking filtering in accordance with the MPEG-4 AVC Standard is well designed to reduce the blocky artifact, but it does not try to correct other artifacts caused by quantization noise. For example, deblocking filtering in accordance with the MPEG-4 AVC Standard leaves edges and textures untouched. Thus, it cannot improve distorted edges or texture. One reason for this lack of capability is that the
MPEG-4 AVC Standard deblocking filter applies a smooth image model and the designed filters typically include a bank of low-pass filters. However, images include many singularities, texture, and so forth and, thus, they are not handled correctly by the MPEG-4 AVC Standard deblocking filter.
In order to overcome the limitations of the MPEG-4 AVC Standard deblocking filter, an approach has been recently proposed involving a de-noising type nonlinear in-loop filter. In this proposed approach, a nonlinear de-noising filter adapts to non- stationary image statistics which exploits a sparse image model using an over complete set of linear transforms and hard-thresholding. The nonlinear de-noising filter automatically becomes high-pass, or low-pass, or band-pass, and so forth, depending on the region the filter is operating on. The nonlinear de-noising filter can address all types of quantization noise. This particular de-noising approach basically includes three steps: transform; transform coefficients threshold; and inverse transform. Then several de-noised estimates provided by de-noising with an over complete set of transforms (typically produced by applying de-noising with shifted versions of the same transform) are combined using weighted averaging at every pixel.
Sparsity based de-noising tools could reduce quantization noise over video frames that include locally uniform regions (smooth, high frequency, texture, and so forth) separated by singularities. However, the de-noising tool was designed for additive, independent and identically distributed (i.i.d.) noise removal, while quantization noise has significantly different properties, which can present significant issues in terms of proper distortion reduction and visual de-artifacting. This implies that these techniques may get confused by true edges or false blocky edges. A possibility for a solution is spatio-frequential threshold adaptation, which may be able to correct the decision, but it is not trivial in its implementation. A possible consequence of inadequate threshold selection is that sparse de-noising might result into over-smoothed reconstructed pictures, or a blocky artifact(s) may still be present despite the filtering procedure. In particular, for the smooth picture regions, the signal as well as the blocky artifact added to the signal would probably have sparse representation at the filtering stage if the same transform is used for compression and denoising. So a thresholding operation would probably still keep the artifact. At present, it has been observed that sparsity based de-noising techniques, even though they present a higher distortion reduction in terms of objective measures (e.g., mean squared error (MSE)) than other techniques, they may present important visual artifacts that need to be addressed.
It has been observed that the use of a single de-noising filter is not very efficient or effective in removing coding artifacts. The reason for this is that a general purpose de-noising filter is usually based on a distortion model which does not exactly match the actual scenario to which it is applied. This model does not consider the local structure of blocky artifact. A special purpose de-artifacting filter, on the other hand, is designed to relieve a certain type of artifact. Accordingly, a special purpose de-noising filter is not sufficient to correct the rest of the quantization noises. For example, the in-loop deblocking filter used in the MPEG-4 AVC Standard is a special purpose filter which is not designed to remove the noise/artifacts at pixels away from the boundaries, within textures or to correct the distorted edges. Turning to FIG. 1 , a video encoder capable of performing video encoding in accordance with the MPEG-4 AVC standard is indicated generally by the reference numeral 100.
The video encoder 100 includes a frame ordering buffer 110 having an output in signal communication with a non-inverting input of a combiner 185. An output of the combiner 185 is connected in signal communication with a first input of a transformer and quantizer 125. An output of the transformer and quantizer 125 is connected in signal communication with a first input of an entropy coder 145 and a first input of an inverse transformer and inverse quantizer 150. An output of the entropy coder 145 is connected in signal communication with a first non-inverting input of a combiner 190. An output of the combiner 190 is connected in signal communication with a first input of an output buffer 135.
A first output of an encoder controller 105 is connected in signal communication with a second input of the frame ordering buffer 110, a second input of the inverse transformer and inverse quantizer 150, an input of a picture-type decision module 115, an input of a macroblock-type (MB-type) decision module 120, a second input of an intra prediction module 160, a second input of a deblocking filter 165, a first input of a motion compensator 170, a first input of a motion estimator 175, and a second input of a reference picture buffer 180. A second output of the encoder controller 105 is connected in signal communication with a first input of a Supplemental Enhancement Information (SEI) inserter 130, a second input of the transformer and quantizer 125, a second input of the entropy coder 145, a second input of the output buffer 135, and an input of the Sequence Parameter Set (SPS) and Picture Parameter Set (PPS) inserter 140. A first output of the picture-type decision module 115 is connected in signal communication with a third input of a frame ordering buffer 110. A second output of the picture-type decision module 115 is connected in signal communication with a second input of a macroblock-type decision module 120.
An output of the Sequence Parameter Set (SPS) and Picture Parameter Set (PPS) inserter 140 is connected in signal communication with a third non-inverting input of the combiner 190.
An output of the inverse quantizer and inverse transformer 150 is connected in signal communication with a first non-inverting input of a combiner 119. An output of the combiner 119 is connected in signal communication with a first input of the intra prediction module 160 and a first input of the deblocking filter 165. An output of the deblocking filter 165 is connected in signal communication with a first input of a reference picture buffer 180. An output of the reference picture buffer 180 is connected in signal communication with a second input of the motion estimator 175. A first output of the motion estimator 175 is connected in signal communication with a second input of the motion compensator 170. A second output of the motion estimator 175 is connected in signal communication with a third input of the entropy coder 145. An output of the motion compensator 170 is connected in signal communication with a first input of a switch 197. An output of the intra prediction module 160 is connected in signal communication with a second input of the switch 197. An output of the macroblock-type decision module 120 is connected in signal communication with a third input of the switch 197. The third input of the switch 197 determines whether or not the "data" input of the switch (as compared to the control input, i.e., the third input) is to be provided by the motion compensator 170 or the intra prediction module 160. The output of the switch 197 is connected in signal communication with a second non-inverting input of the combiner 119 and with an inverting input of the combiner 185. Inputs of the frame ordering buffer 110 and the encoder controller 105 are available as input of the encoder 100, for receiving an input picture 101. Moreover, an input of the Supplemental Enhancement Information (SEI) inserter 130 is available as an input of the encoder 100, for receiving metadata. An output of the output buffer 135 is available as an output of the encoder 100, for outputting a bitstream.
Turning to FIG. 2, a video decoder capable of performing video decoding in accordance with the MPEG-4 AVC standard is indicated generally by the reference numeral 200.
The video decoder 200 includes an input buffer 210 having an output connected in signal communication with a first input of the entropy decoder 245. A first output of the entropy decoder 245 is connected in signal communication with a first input of an inverse transformer and inverse quantizer 250. An output of the inverse transformer and inverse quantizer 250 is connected in signal communication with a second non-inverting input of a combiner 225. An output of the combiner 225 is connected in signal communication with a second input of a deblocking filter 265 and a first input of an intra prediction module 260. A second output of the deblocking filter 265 is connected in signal communication with a first input of a reference picture buffer 280. An output of the reference picture buffer 280 is connected in signal communication with a second input of a motion compensator 270.
A second output of the entropy decoder 245 is connected in signal communication with a third input of the motion compensator 270 and a first input of the deblocking filter 265. A third output of the entropy decoder 245 is connected in signal communication with an input of a decoder controller 205. A first output of the decoder controller 205 is connected in signal communication with a second input of the entropy decoder 245. A second output of the decoder controller 205 is connected in signal communication with a second input of the inverse transformer and inverse quantizer 250. A third output of the decoder controller 205 is connected in signal communication with a third input of the deblocking filter 265. A fourth output of the decoder controller 205 is connected in signal communication with a second input of the intra prediction module 260, with a first input of the motion compensator 270, and with a second input of the reference picture buffer 280. An output of the motion compensator 270 is connected in signal communication with a first input of a switch 297. An output of the intra prediction module 260 is connected in signal communication with a second input of the switch 297. An output of the switch 297 is connected in signal communication with a first non-inverting input of the combiner 225. An input of the input buffer 210 is available as an input of the decoder 200, for receiving an input bitstream. A first output of the deblocking filter 265 is available as an output of the decoder 200, for outputting an output picture.
SUMMARY These and other drawbacks and disadvantages of the prior art are addressed by the present principles, which are directed to methods and apparatus for in-loop de-artifact filtering. According to an aspect of the present principles, there is provided an apparatus. The apparatus includes an encoder for encoding an image region. The encoder has at least two filters for successively performing in-loop filtering to respectively reduce at least a first and a second type of quantization artifact. According to another aspect of the present principles, there is provided a method. The method includes encoding an image region. The encoding step includes performing in-loop filtering to reduce at least a first and a second type of quantization artifact respectively using at least two filters in succession.
According to yet another aspect of the present principles, there is provided an apparatus. The apparatus includes a decoder for decoding an image region. The decoder has at least two filters for successively performing in-loop filtering to respectively reduce at least a first and a second type of quantization artifact.
According to still another aspect of the present principles, there is provided a method. The method includes decoding an image region. The decoding step includes performing in-loop filtering to reduce at least a first and a second type of quantization artifact respectively using at least two filters in succession.
These and other aspects, features and advantages of the present principles will become apparent from the following detailed description of exemplary embodiments, which is to be read in connection with the accompanying drawings.
BRIEF DESCRIPTION OF THE DRAWINGS
The present principles may be better understood in accordance with the following exemplary figures, in which:
FIG. 1 shows a block diagram for a video encoder capable of performing video encoding in accordance with the MPEG-4 AVC Standard;
FIG. 2 shows a block diagram for a video decoder capable of performing video decoding in accordance with the MPEG-4 AVC Standard;
FIG. 3 shows a block diagram for a video encoder capable of performing video encoding in accordance with the MPEG-4 AVC Standard, modified and/or extended for use with the present principles, according to an embodiment of the present principles;
FIG. 4 shows a block diagram for a video decoder capable of performing video decoding in accordance with the MPEG-4 AVC Standard, modified and/or extended for use with the present principles, according to an embodiment of the present principles;
FIG. 5 shows a diagram for an exemplary succession of de-artifact filters, according to an embodiment of the present principles; FIG. 6 shows a flow diagram for an exemplary method for encoding image data using in-loop de-artifact filtering, according to an embodiment of the present principles;
FIG. 7 shows a flow diagram for an exemplary method for decoding image data using in-loop de-artifact filtering, according to an embodiment of the present principles;
FIG. 8 shows an exemplary apparatus for performing quantization constraint set (QCS) coefficients correction after artifact removal/reduction, according to an embodiment of the present principles; and
FIG. 9 shows exemplary quantization bins for an over-filtering problem and a correction approach using QCS in video encoding/decoding, according to an embodiment of the present principles.
DETAILED DESCRIPTION
The present principles are directed to methods and apparatus for in-loop de- artifact filtering.
The present description illustrates the present principles. It will thus be appreciated that those skilled in the art will be able to devise various arrangements that, although not explicitly described or shown herein, embody the present principles and are included within its spirit and scope. All examples and conditional language recited herein are intended for pedagogical purposes to aid the reader in understanding the present principles and the concepts contributed by the inventor(s) to furthering the art, and are to be construed as being without limitation to such specifically recited examples and conditions. Moreover, all statements herein reciting principles, aspects, and embodiments of the present principles, as well as specific examples thereof, are intended to encompass both structural and functional equivalents thereof. Additionally, it is intended that such equivalents include both currently known equivalents as well as equivalents developed in the future, i.e., any elements developed that perform the same function, regardless of structure.
Thus, for example, it will be appreciated by those skilled in the art that the block diagrams presented herein represent conceptual views of illustrative circuitry embodying the present principles. Similarly, it will be appreciated that any flow charts, flow diagrams, state transition diagrams, pseudocode, and the like represent various processes which may be substantially represented in computer readable media and so executed by a computer or processor, whether or not such computer or processor is explicitly shown. The functions of the various elements shown in the figures may be provided through the use of dedicated hardware as well as hardware capable of executing software in association with appropriate software. When provided by a processor, the functions may be provided by a single dedicated processor, by a single shared processor, or by a plurality of individual processors, some of which may be shared. Moreover, explicit use of the term "processor" or "controller" should not be construed to refer exclusively to hardware capable of executing software, and may implicitly include, without limitation, digital signal processor ("DSP") hardware, read-only memory ("ROM") for storing software, random access memory ("RAM"), and non-volatile storage. Other hardware, conventional and/or custom, may also be included.
Similarly, any switches shown in the figures are conceptual only. Their function may be carried out through the operation of program logic, through dedicated logic, through the interaction of program control and dedicated logic, or even manually, the particular technique being selectable by the implementer as more specifically understood from the context.
In the claims hereof, any element expressed as a means for performing a specified function is intended to encompass any way of performing that function including, for example, a) a combination of circuit elements that performs that function or b) software in any form, including, therefore, firmware, microcode or the like, combined with appropriate circuitry for executing that software to perform the function. The present principles as defined by such claims reside in the fact that the functionalities provided by the various recited means are combined and brought together in the manner which the claims call for. It is thus regarded that any means that can provide those functionalities are equivalent to those shown herein.
Reference in the specification to "one embodiment" or "an embodiment" of the present principles means that a particular feature, structure, characteristic, and so forth described in connection with the embodiment is included in at least one embodiment of the present principles. Thus, the appearances of the phrase "in one embodiment" or "in an embodiment" appearing in various places throughout the specification are not necessarily all referring to the same embodiment.
As used herein, "high level syntax" and "high level syntax element" interchangeably refer to syntax present in the bitstream that resides hierarchically above the macroblock layer. For example, high level syntax, as used herein, may refer to, but is not limited to, syntax at the slice header level, Supplemental Enhancement Information (SEI) level, picture parameter set level, sequence parameter set level and network abstraction layer (NAL) unit header level. As used herein, "block level syntax" and "block level syntax element" interchangeably refer to syntax present in the bitstream that resides hierarchically at any of the possible coding units structured as a block or partitions of a block in a video coding scheme. For example, block level syntax, as used herein, may refer to, but is not limited to, syntax at the macroblock level, the 16x8 partition level, the 8x16 partition level, the 8x8 sub-block level, and general partitions of any of these.
Moreover, block level syntax, as used herein, may also refer to blocks issued from the union of smaller blocks (e.g., unions of macroblocks).
The phrase "image data" is intended to refer to data corresponding to any of still images and moving images (i.e., a sequence of images including motion). It is to be appreciated that the use of the term "and/or", for example, in the case of "A and/or B", is intended to encompass the selection of the first listed option (A), the selection of the second listed option (B), or the selection of both options (A and B). As a further example, in the case of "A, B, and/or C", such phrasing is intended to encompass the selection of the first listed option (A), the selection of the second listed option (B), the selection of the third listed option (C), the selection of the first and the second listed options (A and B), the selection of the first and third listed options (A and C), the selection of the second and third listed options (B and C), or the selection of all three options (A and B and C). This may be extended, as readily apparent by one of ordinary skill in this and related arts, for as many items listed.
Moreover, it is to be appreciated that while one or more embodiments of the present principles are described herein with respect to the MPEG-4 AVC standard, the present principles are not limited to solely this standard and, thus, may be utilized with respect to other video coding standards, recommendations, and extensions thereof, including extensions such as scalable (and non-scalable) extensions and/or multi-view (and non-multi-view) extensions of the MPEG-4 AVC standard, while maintaining the spirit of the present principles. Turning to FIG. 3, a video encoder capable of performing video encoding in accordance with the MPEG-4 AVC standard, modified and/or extended for use with the present principles, is indicated generally by the reference numeral 300.
The video encoder 300 includes a frame ordering buffer 310 having an output in signal communication with a non-inverting input of a combiner 385. An output of the combiner 385 is connected in signal communication with a first input of a transformer and quantizer 325. An output of the transformer and quantizer 325 is connected in signal communication with a first input of an entropy coder 345 and a first input of an inverse transformer and inverse quantizer 350. An output of the entropy coder 345 is connected in signal communication with a first non-inverting input of a combiner 390. An output of the combiner 390 is connected in signal communication with a first input of an output buffer 335.
A first output of an encoder controller 305 is connected in signal communication with a second input of a frame ordering buffer 310, a second input of the inverse transformer and inverse quantizer 350, an input of a picture-type decision module 315, a first input of a macroblock-type (MB-type) decision module 320, a second input of an intra prediction module 360, a second input of a deblocking filter 365, a first input of a motion compensator 370, a first input of a motion estimator 375, a second input of a reference picture buffer 380, a first input of a sparsity de-noising filter, and a first input of a quantization constraint set (QCS) 355.
A second output of the encoder controller 305 is connected in signal communication with a first input of a Supplemental Enhancement Information (SEI) inserter 330, a second input of the transformer and quantizer 325, a second input of the entropy coder 345, a second input of the output buffer 335, and an input of the Sequence Parameter Set (SPS) and Picture Parameter Set (PPS) inserter 340.
A first output of the picture-type decision module 315 is connected in signal communication with a third input of the frame ordering buffer 310. A second output of the picture-type decision module 315 is connected in signal communication with a second input of a macroblock-type decision module 320.
An output of the Sequence Parameter Set (SPS) and Picture Parameter Set (PPS) inserter 340 is connected in signal communication with a third non-inverting input of the combiner 390. An output of the inverse quantizer and inverse transformer 350 is connected in signal communication with a first non-inverting input of a combiner 319. An output of the combiner 319 is connected in signal communication with a first input of the intra prediction module 360 and a first input of the deblocking filter 365. An output of the deblocking filter 365 is connected in signal communication with a second input of the sparsity de-noising filter 344. An output of the sparsity de-noising filter 344 is connected in signal communication with a second input of the quantization constraint set (QCS) 355. An output of the quantization constraint set (QCS) 355 is connected in signal communication with a first input of the reference picture buffer 380. An output of the reference picture buffer 380 is connected in signal communication with a second input of the motion estimator 375 and a second input of the motion compensator 370. A first output of the motion estimator 375 is connected in signal communication with a third input of the motion compensator 370. A second output of the motion estimator 375 is connected in signal communication with a third input of the entropy coder 345. An output of the motion compensator 370 is connected in signal communication with a first input of a switch 397. An output of the intra prediction module 360 is connected in signal communication with a second input of the switch 397. An output of the macroblock-type decision module 320 is connected in signal communication with a third input of the switch 397. The third input of the switch 397 determines whether or not the "data" input of the switch (as compared to the control input, i.e., the third input) is to be provided by the motion compensator 370 or the intra prediction module 360. The output of the switch 397 is connected in signal communication with a second non-inverting input of the combiner 319 and with an inverting input of the combiner 385.
Inputs of the frame ordering buffer 310 and the encoder controller 305 are available as input of the encoder 300, for receiving an input picture 301. Moreover, an input of the Supplemental Enhancement Information (SEI) inserter 330 is available as an input of the encoder 300, for receiving metadata. An output of the output buffer 335 is available as an output of the encoder 300, for outputting a bitstream.
Turning to FIG. 4, a video decoder capable of performing video decoding in accordance with the MPEG-4 AVC standard, modified and/or extended for use with the present principles, is indicated generally by the reference numeral 400. The video decoder 400 includes an input buffer 410 having an output connected in signal communication with a first input of the entropy decoder 445. A first output of the entropy decoder 445 is connected in signal communication with a first input of an inverse transformer and inverse quantizer 450. An output of the inverse transformer and inverse quantizer 450 is connected in signal communication with a second non-inverting input of a combiner 425. An output of the combiner 425 is connected in signal communication with a second input of a deblocking filter 465 and a first input of an intra prediction module 460. An output of the deblocking filter 465 is connected in signal communication with a first input of a sparsity de-noising filter 444. An output of the sparsity de-noising filter 444 is connected in signal communication with a first input of a quantization constraint set (QCS) 455. A first output of the quantization constraint set (QCS) 455 is connected in signal communication with a first input of a reference picture buffer 480. An output of the reference picture buffer 480 is connected in signal communication with a second input of a motion compensator 470.
A second output of the entropy decoder 445 is connected in signal communication with a third input of the motion compensator 470 and a first input of the deblocking filter 465. A third output of the entropy decoder 445 is connected in signal communication with an input of a decoder controller 405. A first output of the decoder controller 405 is connected in signal communication with a second input of the entropy decoder 445. A second output of the decoder controller 405 is connected in signal communication with a second input of the inverse transformer and inverse quantizer 450. A third output of the decoder controller 405 is connected in signal communication with a third input of the deblocking filter 465, a second input of the sparsity de-noising filter 444, and a second input of the quantization constraint set (QCS) 455. A fourth output of the decoder controller 405 is connected in signal communication with a second input of the intra prediction module 460, with a first input of the motion compensator 470, and with a second input of the reference picture buffer 480.
An output of the motion compensator 470 is connected in signal communication with a first input of a switch 497. An output of the intra prediction module 460 is connected in signal communication with a second input of the switch 497. An output of the switch 497 is connected in signal communication with a first non-inverting input of the combiner 425.
An input of the input buffer 410 is available as an input of the decoder 400, for receiving an input bitstream. A second output of the quantization constraint set (QCS) 455 is available as an output of the decoder 400, for outputting an output picture.
With respect to the video decoder 400 of FIG. 4, it is to be appreciated that we can allow output pictures before the application of function block 465, or after the application of function 465, or after application of the function block 444, or after application of the function block 455. That is, we can have the flexibility that the picture for prediction in the reference buffer and the picture for display are different, so we can have a better reference for prediction, and a sharper image for display.
As noted above, the present principles are directed to methods and apparatus for in-loop de-artifact filtering. In an embodiment, we propose utilizing a succession of filters on coded pictures to reduce the amount of coding artifacts over video frames. The filters are placed in the coding loop (in-loop), so the filtered frames are used as referenced frames for motion compensation of subsequent coded frames. At least one of the filters includes, for example, a deblocking filter, a de-ringing filter, a de-noising filter, a signal estimation filter, a linear filter, and/or a non-linear filter.
In an embodiment, we propose using two-pass filters. In the first pass, we apply an adaptive deblocking filter, which targets removing blocking artifacts. In the second pass, we apply an adaptive sparse de-noising filter, which can further reduce quantization noise over video frames composed of locally uniform regions (smooth, high frequency, texture, and so forth). To further improve the result, we can enforce compression constraints including, but not limited to, quantization constraints, in order to help restore the image to the artifact-free form. One or more embodiments herein involve the use of two or more in-loop filters (and/or two or more in-loop filtering passes) to remove or reduce quantization artifacts - the first filter (or filtering pass) to remove or reduce a first type (or group of types) of quantization artifact and the second filter (or filtering pass) to remove or reduce a second type (or group of types) of quantization artifact. It is to be appreciated that the use of even more in-loop filters (or filtering passes) is also contemplated in accordance with embodiments of the present principles. That is, given the teachings of the present principles provided herein, one of ordinary skill in this and related arts will contemplate these and various other implementations and variations of the present principles, while maintaining the spirit of the present principles.
Therefore, in accordance with the principles of the present invention, we suggest using a succession of filters (or filtering passes) to remove or reduce a plurality of possible coding artifact types caused by quantization. If done in this way, different kinds of artifacts and quantization errors are handled by different filters. Hence, by such cascaded filtering of reconstructed video pictures, the decoded sequence is substantially better in both subjective and objective measures. By incorporating this scheme into the encoder/decoder loop, also known as in-loop filtering, the inter prediction process can also benefit from the improvement of decoded reference pictures. Note that by using a succession of filters, we are not limited to a particular set of general or special purpose filters, a particular number of cascaded filters, or even a particular order in which they are combined. Those parameters may be adjusted based on, for example, the encoder and/or decoder to be used and the nature of the video data to be filtered. To prevent the input video signal being over processed, we can also enforce some compression and/or quantization constraints.
An embodiment involves the use of a "two-pass" filter. Turning to FIG. 5, an exemplary succession of de-artifact filters is indicated generally by the reference numeral 500. An adaptive sparse de-noising filter 544 is used as a refinement filter subsequent to the MPEG-4 AVC Standard deblocking filter 565 and before the quantization constraint set (QCS) filter 555. Since visual blocking artifacts are most successfully removed by the deblocking filter, the remaining quantization noise tends to become more independent and identically distributed (i.i.d.), which conforms to S the noise model assumption of an adaptive sparse de-noising filter. After applying the second-pass sparse de-noising filter 544, we use the quantization constraint set filter 555 to reshape the residuals and prevent them from being over-processed. The quantization constraint set filter 555 is used to restrict each transform coefficient to its original quantization interval. This step helps prevent over-smoothing, and0 makes the outcome of the cascaded set of filters more robust to changes in the settings of filters including, but not limited to, changes in the thresholding parameter for the sparse-based de-noising step.
The adaptive sparse de-noising filter 544 includes a forward transformer 571 having an output in signal communication with an input of a threshold module 573.5 An output of the threshold module 573 is connected in signal communication with an input of an inverse transformer 575. An output of the inverse transformer 575 is connected in signal communication with an input of an adaptive weighting module 577. An input of the forward transformer is available as an input of the spare de- noising filter 544. An output of the adaptive weighting module 577 is available as an 0 output of the spare de-noising filter 544. Aι> output of the MPEG-4 AVC Standard deblocking filter 565 is connected in signal communication with the input of the forward transformer 571. The output of the adaptive weighting module 577 is connected in signal communication with an input of the quantization constraint set filter 555. An input of the MPEG-4 AVC Standard deblocking filter 565 is available 25 as an input of the succession of de-artifact filters 500. An output of the quantization constraint set filter 571 is available as an output of the succession of de-artifact filters 500.
As examples, FIGs. 3 and 4 illustrate where the adaptive sparse de-noising filter and the quantization constraint set filter may be located within a video encoder 30 structure and a video decoder structure, respectively. In the examples shown, the adaptive sparse de-noising filter and the quantization constraint set filter, one after the other, are located after the deblocking filter. Of course, given the teachings of the present principles provided herein, one of ordinary skill in this and related arts will contemplate this and other locations for the adaptive sparse de-noising filter and the quantization constraint set filter, while maintaining the spirit of the present principles.
In an embodiment, the adaptive sparse de-noising filter and/or the quantization constraint set filter can be turned on/off at the macroblock level, slice level, picture level, and/or sequence level. For example, we may choose to only apply the sparse de-noising filter and the quantization constraint set filter for intra frames, but not for inter frames.
In an embodiment, the different artifact removing/reducing steps may be selectively switched on/off depending on complexity constraints of the application, distortion measures and/or coding costs. The transform for the sparse de-noising step can be adaptively selected from a set of possible transforms. The selected transform can be indicated and signaled to the decoder using a high level syntax. A proper threshold γ can be signaled to optimize the adaptive sparse de-noising filtering. The signaled threshold γ may need to be adapted to the quantization parameter as well as to the sequence content. The optimal weighting method can also be signaled to maximize the de-noising gain.
TABLE 1 shows exemplary picture parameter set (PPS) raw byte sequence payload (RBSP) syntax for use in in-loop de-artifact filtering in accordance with an embodiment of the present principles.
TABLE 1
Figure imgf000018_0001
TABLE 2 shows exemplary slice header syntax for use in in-loop de-artifact filtering in accordance with an embodiment of the present principles. TABLE 2
Figure imgf000019_0001
With respect to TABLES 1 and 2, the following exemplary syntax definitions are provided. Of course, given the teachings of the present principles provided herein, one of ordinary skill in this and related arts will contemplate these and various other syntaxes and variations thereof for use in accordance with various embodiments of the present principles, while maintaining the spirit of the present principles.
sparse_filter_control_present_flag equal to 1 specifies that a set of syntax elements controlling the characteristics of the sparse de-noising filter is present in the slice header. sparse_filter_control_present_flag equal to 0 specifies that a set of syntax elements controlling the characteristics of the sparse de-noising filter is not present in the slice header and their inferred values are in effect.
qcs_control_present_flag equal to 1 specifies that a set of syntax elements controlling the characteristics of the quantization constraint set (QCS) filter is present in the slice header. qcs_control_present_flag equal to 0 specifies that a set of syntax elements controlling the characteristics of the quantization constraint set (QCS) filter is not present in the slice header and their inferred values are in effect. disable_sparse_filter_flag specifies whether the operation of the sparse de- noising filter shall be disabled. When disable_sparse_filter_flag is not present in the slice header, disable_sparse_filter_flag shall be inferred to be equal to 0.
sparse_threshold specifies the value of threshold used in sparse de-noising.
When sparse_threshold is not present in the slice header, the default value derived based on the slice quantization parameter is used.
sparse_transform_type specifies the type of the transform used in sparse de-noising. sparse_transform_type equal to 0 specifies that a 4x4 transform is used. sparse_transform_type equal to 1 specifies that a 8x8 transform is used.
adaptive_weighting_type specifies the type of weighting used in sparse de- noising. adaptive_weighting_type equal to 0 specifies that sparsity weighting is used. adaptive_weighting_type equal to 1 specifies that average weighting is used.
disable_qcs_flag specifies whether the operation of the quantization constraint set (QCS) filter shall be disabled. When disable_qcs_flag is not present in the slice header, disable_qcs_flag shall be inferred to be equal to 0.
qcs_pullback_model specifies how to re-assign the value of coefficients. qcs_pullback_model equal to 0 specifies to pull back the coefficients to the closest cell boundary (An example of pulling back to the closet cell (or quantization bin) boundary is shown in the last row of FIG. 9, described below.). qcs_pullback_model equal to 1 specifies to pull back the coefficients to the center (also see FIG., if the quantized coefficient value is used instead) or predefined value of a cell.
In an embodiment, an adaptive sparse de-noising filter operation involves the following steps. In one step, an over complete transform set H,, i = I,- -,Af is determined. The information related to this particular set may be transmitted to the decoder. The information may be so transmitted at, for example, a slice, picture and/or sequence level. In transmitting such information, high level syntax may be embedded in the data stream. The high level syntax may be embedded, for example, at the slice, picture and/or sequence level. For example, within the framework of the MPEG-4 AVC Standard, we can reuse the existing 4x4 transform and 8x8 transform and/or the Hadamard transform step. In another step, a threshold γ (for example, based on a quantization step and/or the statistics of the encoding picture) is determined, γ may be transmitted to the decoder, γ may be transmitted at, for example, a block, a slice, a picture and/or a sequence level. In transmitting such information, at least one block level syntax and/or at least one high level syntax may be embedded in the data stream. In yet another step, the adaptive weighting method to combine the outcome of the inversed transforms, which may be transmitted to the decoder, is determined. The weights may be transmitted at, for example, a block a slice, picture and/or sequence level. In the event that the weighting is directly derived without explicit transmission thereof, there may still be a need to transmit some auxiliary information related to the weighting step. In transmitting any weighting step information, at least one block level syntax and/or at least one high level syntax may be embedded in the data stream. For example, average weighting or sparsity base weighting, which adapts the weights inverse of number of. non-zero coefficients, can be used. Of course, the present principles are not limited to solely the preceding types of weighting and, thus, other types of weighting may also be used in accordance with the present principles, while maintaining the spirit of the present principles.
In an embodiment, an adaptive sparse de-noising filter methodology used for refinement involves obtaining the de-noised estimate J1. from each transform H1. using the specified threshold γ ; and combining x,. using adaptive weightings to get the final de-noised estimate x .
In an embodiment, a quantization constraint set methodology is used for a last refinement step as follows:
(1) Calculate the new residual signal r = x-p , where p is the intra/inter predicted signal. (2) Apply the same transformation process on f that the MPEG-4 AVC Standard applies on the residual. Presume that the resulting transform coefficients are c .
(3) Check if c is in the quantization cell indicated by the originally received transform coefficients. For each coefficient, if after the filtering steps, c has fallen outside its original quantization cell, the new coefficient is corrected and reassigned as the closest original quantization cell boundary value to itself. Alternatively, depending on the statistics of every particular coefficient and/or quantization bin, other possible values from within the original quantization cell can be used for the reassignment procedure. The refined coefficients are denoted as c'.
(4) Take the inverse transform of c' , denoted by r' , and sum together with p to obtain the final estimate x' = p + r' .
The adaptive sparse de-noising filtering is directed to recovering the original signal from an independent and identically distributed (i.i.d.) noisy environment. However, the quantization noise in video compression, and particularly with respect to the MPEG-4 AVC Standard, is usually not independent and identically distributed (i.i.d.). The present principles differ from the prior art in the use of a series of refinement steps (succession of filters) after, for example, the MPEG-4 AVC Standard deblocking filter, each oriented to correct at least one part of the coding artifacts. The signal after deblocking filter is a better match to the independent and identically distributed (i.i.d.) noise presumption. The possible "over filtering problem" resulting from the use and/or combination of deblocking and de-noising filters is solved by the subsequent quantization constraint set (QCS) filter. The succession of filters has shown its superior performance in removing video compression artifacts, both in practice and theory.
Turning to FIG. 6, an exemplary method for encoding image data using in- loop de-artifact filtering is indicated generally by the reference numeral 600.
The method 600 includes a start block 605 that passes control to a function block 610. The function block 610 encodes the current slice, and passes control to a function block 615. The function block 615 decides whether or not a deblocking filter, a sparse de-noising filter, and/or quantization constraint set (QCS) will be applied to the current slice based on statistics of the current slice, and passes control to a decision block 620. The decision block 620 determines whether or not disable_deblocking_filter_ids is equal to zero. If so, then control is passed to a function block 625. Otherwise, control is passed to a decision block 630.
The function block 625 applies a deblocking filter, and passes control to the decision block 630.
The decision block 630 determines whether or not disable_sparse_filter_flag is equal to zero. If so, then control is passed to a function block 635. Otherwise, control is passed to a decision block 640.
The function block 635 applies the sparsity de-noising filter, and passes control to the decision block 640.
The decision block 640 determines whether or not diable_qcs_flag is equal to zero. If so, then control is passed to a function block 645. Otherwise, control is passed to an end block 699.
The function block 645 applies the quantization constraint set (QCS), and passes control to the end block 699.
Turning to FIG. 7, an exemplary method for decoding image data using in- loop de-artifact filtering is indicated generally by the reference numeral 700.
The method 700 includes a start block 705 that passes control to a function block 710. The function block 710 parses the bitstream, decodes the syntax, and passes control to a function block 715. The function block 715 decodes the current slice, and passes control to a decision block 720. The decision block 720 determines whether or not diable_deblocking_filter_idc is equal to zero. If so, then control is passed to a function block 725. Otherwise, control is passed to a decision block 730. The function block 725 applies the deblocking filter, and passes control to the decision block 730.
The decision block 730 determines whether or not disable_sparse_filter_flag is equal to zero. If so, then control is passed to a function block 735. Otherwise, control is passed to a decision block 740. The function block 735 applies the sparsity de-noising filter, and passes control to the decision block 740. The decision block 740 determines whether or not diable_qcs_flag is equal to zero. If so, then control is passed to a function block 745. Otherwise, control is passed to an end block 799.
The function block 745 applies a quantization constraint set (QCS), and passes control to the end block 799.
Turning to FIG. 8, an exemplary apparatus for performing quantization constraint set (QCS) coefficients correction after artifact removal/reduction is indicated generally by the reference numeral 800. The apparatus 800 includes a combiner 805 having an output in signal communication with an input of a MPEG-4 AVC transformer 810. An output of the MPEG-4 AVC Standard transformer 810 is connected in signal communication with a first input of a comparison and correction module 815. An output of the comparison and correction module 815 is connected in signal communication with an input of a MPEG-4 AVC inverse transformer 820. An output of the MPEG-4 AVC inverse transformer 820 is connected in signal communication with a first non-inverting input of a combiner 825.
A non-inverting input of the combiner 805 is available as an input of the apparatus 800, for receiving a reconstructed and filtered video picture. An inverting input of the combiner 805 is available as an input of the apparatus 800, for receiving a predicted video picture. A second input of the compare and correct module 815 is available as an input of the apparatus 800, for receiving quantization bins pattern. A third input of the compare and correct module 815 is available as an input of the apparatus 800, for receiving decoded coefficients. A second non-inverting input of the combiner 825 is available as an input of the apparatus, for receiving a predicted video picture. An output of the combiner 825 is available as an output of the apparatus, for outputting a reconstructed and filtered and quantization constraint set (QCS) corrected video picture.
The MPEG-4 AVC transformer 810 is applied to the decoded residual. The MPEG-4 AVC inverse transformer 820 is applied to the decoded residual. The compare and correct module 815 compares the decoded and filtered pictures in the transform domain and corrects the coefficients that are over-filtered.
Turning to FIG. 9, exemplary quantization bins for using QCS to correct an over-filtering problem in video encoding/decoding is indicated generally by the reference numeral 900. Presume the original value is x, and the boundary value of the quantizer is yϊ , i=0, 1 , 2..n,... The particular bins are denoted by 910, 920, 930, and 940. In bin 910, x is in the quantization bin of (yn-i, yn]. In bin 920, after the quantization process in the encoder, the reconstruction value of x is x', which is in the quantization bin of (yn-i, yn]. In bin 930, after the de-artifacting process, the filtered coefficient of x is x", which is in the quantization bin of (yn, yn+i]. However, the coefficient should not be outside the original quantization bin, which is (yn-i, yn]. In bin 940, we apply the QCS process, and we set x1" equal to yn,, which is the final reconstructed value.
A description will now be given of some of the many attendant advantages/features of the present invention, some of which have been mentioned above. For example, one advantage/feature is an apparatus that includes an encoder for encoding an image region. The encoder has at least two filters for successively performing in-loop filtering to respectively reduce at least a first and a second type of quantization artifact. Another advantage/feature is the apparatus having the encoder that, in turn, has at least two filters as described above, wherein at least one of the at least two filters is used to enforce at least one compression constraint.
Yet another advantage/feature is the apparatus having the encoder that, in turn, has at least two filters wherein at least one of the at least two filters is used to enforce at least one compression constraint as described above, wherein the at least one compression constraint involves a quantization constraint set.
Still another advantage/feature is the apparatus having the encoder that, in turn, has at least two filters wherein at least one of the at least two filters is used to enforce at least one compression constraint as described above, wherein at least one of, enablement information or disablement information for the at least one compression constraint and side information corresponding to the image region to adaptively indicate parameters of the at least one compression constraint, is signaled using at least one of at least one high level syntax element and at least one block level syntax element. Moreover, another advantage/feature is the apparatus having the encoder that, in turn, has at least two filters wherein at least one of the at least two filters is used to enforce at least one compression constraint as described above, wherein parameters of the at least one compression constraint is adaptively indicated based at least in part on at least one of data characteristics and data statistics corresponding to the image region.
Further, another advantage/feature is the apparatus having the encoder that, in turn, has at least two filters as described above, wherein at least one of the at least two filters includes a deblocking filter, a de-ringing filter, a de-noising filter, a signal estimation filter, a linear filter, and a non-linear filter.
Also, another advantage/feature is the apparatus having the encoder that, in turn, has at least two filters as described above, wherein a total number, a type, and an order of implementation of the at least two filters is dynamically selectable. Additionally, another advantage/feature is the apparatus having the encoder that, in turn, has at least two filters as described above, wherein at least one of the two or more filters is adaptively enabled or disabled depending upon at least one of data characteristics and data statistics corresponding to the image region.
Moreover, another advantage/feature is the apparatus having the encoder that, in turn, has at least two filters as described above, wherein enablement information or disablement information for at least one of the two or more filters is signaled using at least one of at least one high level syntax element and at least one block level syntax element.
Further, another advantage/feature is the apparatus having the encoder that, in turn, has at least two filters as described above, wherein the encoder transmits side information corresponding to the image region to adaptively indicate parameters of at least one of the two or more filters, the side information being transmitted at at least one of a macroblock level, a slice levef, a picture level, and a sequence level.
Also, another advantage/feature is the apparatus having the encoder that transmits side information as described above, wherein the parameters of the at least one of the two or more filters are adaptively tuned based at least in part on at least one of data characteristics and data statistics corresponding to the image region.
Additionally, another advantage/feature is the apparatus having the encoder that, in turn, has at least two filters as described above, wherein the two or more filters are included in a two-pass filter, the two-pass filter having a deblocking filter for performing a first pass to reduce blocking artifacts as the first type of quantization artifact and a sparse de-noising filter for performing a second pass to reduce noise as the second -type of quantization artifact.
Moreover, another advantage/feature is the apparatus having the encoder that, in turn, has at least two filters wherein the two or more filters are included in a two-pass filter as described above, wherein the encoder enforces a quantization constraint set subsequent to the second pass.
Further, another advantage/feature is the apparatus having the encoder wherein the two or more filters are included in a two-pass filter as described above, wherein the encoder signals a quantization constraint process pullback method using at least one of at least one high level syntax element and at least one block level syntax element.
Also, another advantage/feature is the apparatus having the encoder wherein the two or more filters are included in a two-pass filter as described above, wherein the encoder signals at least one of a transform type, a threshold, and a weighting method for the sparse de-noising filter in at least one of at least one high level syntax element and at least one block level, syntax element.
Additionally, another advantage/feature is the apparatus having the encoder that, in turn, has at least two filters as described above, wherein the at least two filters are in-loop filters corresponding to encoding the image region, and wherein a version of the image region that is displayed is different from at least one of an output signal corresponding to the image region after the at least two in-loop filters and the initial input signal corresponding to the image region before the at least two in-loop filters.
These and other features and advantages of the present principles may be readily ascertained by one of ordinary skill in the pertinent art based on the teachings herein. It is to be understood that the teachings of the present principles may be implemented in various forms of hardware, software, firmware, special purpose processors, or combinations thereof.
Most preferably, the teachings of the -present principles are implemented as a combination of hardware and software. Moreover, the software may be implemented as an application program tangibly embodied on a program storage unit. The application program may be uploaded to, and executed by, a machine comprising any suitable architecture. Preferably, the machine is implemented on a computer platform having hardware such as one or more central processing units ("CPU"), a random access memory ("RAM"), and input/output ("I/O") interfaces. The computer platform may also include an operating system and microinstruction code. The various processes and functions described herein may be either part of the microinstruction code or part of the application program, or any combination thereof, which may be executed by a CPU. In addition, various other peripheral units may be connected to the computer platform such as an additional data storage unit and a printing unit.
It is to be further understood that, because some of the constituent system components and methods depicted in the accompanying drawings are preferably implemented in software, the actual connections between the system components or the process function blocks may differ depending upon the manner in which the present principles are programmed. Given the teachings herein, one of ordinary skill in the pertinent art will be able to contemplate these and similar implementations or configurations of the present principles.
Although the illustrative embodiments have been described herein with reference to the accompanying drawings, it is to be understood that the present principles is not limited to those precise embodiments, and that various changes and modifications may be effected therein by one of ordinary skill in the pertinent art without departing from the scope or spirit of the present principles. All such changes and modifications are intended to be included within the scope of the present principles as set forth in the appended claims.

Claims

CLAIMS:
1. An apparatus, comprising: an encoder (300) for encoding an image region, the encoder having at least two filters (365, 344) for successively performing in-loop filtering to respectively reduce at least a first and a second type of quantization artifact.
2. The apparatus of claim 1 , wherein at least one of the at least two filters is used to enforce at least one compression constraint.
3. The apparatus of claim 1 , wherein at least one of the two or more filters is adaptively enabled or disabled depending upon at least one of data characteristics and data statistics corresponding to the image region.
4. The apparatus of claim 1 , wherein the two or more filters are comprised in a two-pass filter, the two-pass filter having a deblocking filter (365) for performing a first pass to reduce blocking artifacts as the first type of quantization artifact and a sparse de-noising filter (344) for performing a second pass to reduce noise as the second type of quantization artifact.
5. The apparatus of claim 1 , wherein said at least two filters are in-loop filters corresponding to encoding the image region, and wherein a version of the image region that is displayed is different from at least one of an output signal corresponding to the image region after the at least two in-loop filters and the initial input signal corresponding to the image region before the at least two in-loop filters.
6. A method, comprising: encoding an image region, wherein the encoding step includes performing in- loop filtering (365, 344, 355, 565, 544, 555) to reduce at least a first and a second type of quantization artifact respectively using at least two filters in succession.
7. The method of claim 6, wherein at least one of the at least two filters is used to enforce at least one compression constraint (355, 555, 645).
8. The method of claim 6, wherein at least one of the two or more filters is S adaptively enabled or disabled depending upon at least one of data characteristics and data statistics corresponding to the image region (620,630).
9. The method of claim 6, wherein the two or more filters are comprised in a two-pass filter, the two-pass filter (565, 544) having a deblocking filter for0 performing a first pass to reduce blocking artifacts as the first type of quantization artifact and a sparse de-noising filter for performing a second pass to reduce noise as the second type of quantization artifact.
10. The method of claim 6, wherein said at least two filters are in-loop5 filters corresponding to encoding the image region, and wherein a version of the image region that is displayed is different from at least one of an output signal corresponding to the image region after the at least two in-loop filters and the initial input signal corresponding to the image region before the at least two in-loop filters. 0
11. An apparatus, comprising: a decoder (400) for decoding an image region, the decoder having at least two filters (465, 444, 455) for successively performing in-loop filtering to respectively reduce at least a first and a second type of quantization artifact. 5
12. The apparatus of claim 11 , wherein at least one (455) of the at least two filters is used to enforce at least one compression constraint.
13. The apparatus of claim 11 , wherein at least one of the two or more filters is adaptively enabled or disabled depending upon at least one of data 0 characteristics and data statistics corresponding to the image region.
14. The apparatus of claim 11 , wherein the two or more filters are comprised in a two-pass filter, the two-pass filter having a deblocking filter (465) for performing a first pass to reduce blocking artifacts as the first type of quantization artifact and a sparse de-noising filter (444) for performing a second pass to reduce noise as the second type of quantization artifact.
15. The apparatus of claim 11 , wherein said at least two filters are in-loop filters corresponding to decoding the image region, and wherein a version of the image region that is displayed is different from at least one of an output signal corresponding to the image region after the at least two in-loop filters and the initial input signal corresponding to the image region before the at least two in-loop filters.
16. A method, comprising: decoding an image region, wherein the decoding step includes performing in- loop filtering (465, 444, 455, 565, 544, 555) to reduce at least a first and a second type of quantization artifact respectively using at least two filters in succession.
17. The method of claim 16, wherein at least one of the at least two filters is used to enforce at least one compression constraint (455, 555, 745).
18. The method of claim 16, wherein at least one of the two or more filters is adaptively enabled or disabled depending upon at least one of data characteristics and data statistics corresponding to the image region (720, 730).
19. The method of claim 16, wherein the two or more filters are comprised in a two-pass filter, the two-pass filter (565, 544) having a deblocking filter for performing a first pass to reduce blocking artifacts as the first type of quantization artifact and a sparse de-noising filter for performing a second pass to reduce noise as the second type of quantization artifact.
20. The method of claim 16, wherein said at least two filters are in-loop filters corresponding to decoding the image region, and wherein a version of the image region that is displayed is different from at least one of an output signal corresponding to the image region after the at least two in-loop filters and the initial input signal corresponding to the image region before the at least two in-loop filters.
21. A storage media having video signal data encoded thereupon, comprising: an image region field, encoded using at least two filters for successively performing in-loop filtering (365, 344, 355, 544, 555) to respectively reduce at least a first and a second type of quantization artifact.
22. The storage media of claim 21 , wherein at least one of the at least two filters is used to enforce at least one compression constraint.
23. The storage media of claim 22, wherein the at least one compression constraint involves a quantization constraint set (355).
24. The storage media of claim 21 , wherein at least one of the two filters is adaptively enabled or disabled depending upon at least one of data characteristics and data statistics corresponding to the image region.
25. The storage media of claim 21 , wherein enablement information and/or disablement information for at least one of the two filters is signaled using at least one of a high level syntax element and a block level syntax element.
PCT/US2007/022795 2006-11-08 2007-10-25 Methods and apparatus for in-loop de-artifact filtering WO2008057308A2 (en)

Priority Applications (8)

Application Number Priority Date Filing Date Title
US12/312,386 US9277243B2 (en) 2006-11-08 2007-10-25 Methods and apparatus for in-loop de-artifact filtering
EP07870824A EP2082583A2 (en) 2006-11-08 2007-10-25 Methods and apparatus for in-loop de-artifact filtering
BRPI0717936-7A BRPI0717936B1 (en) 2006-11-08 2007-10-25 METHOD AND APPLIANCES FOR FILTERING REMOVAL OF TIE ARTIFACTS
JP2009536243A JP5801032B2 (en) 2006-11-08 2007-10-25 Method and apparatus for in-loop artifact removal filtering
EP21207323.3A EP4224853A1 (en) 2006-11-08 2007-10-25 Methods and apparatus for in-loop de-artifact filtering
US14/981,345 US9674556B2 (en) 2006-11-08 2015-12-28 Methods and apparatus for in-loop de-artifact filtering
US15/585,462 US11089337B2 (en) 2006-11-08 2017-05-03 Methods and apparatus for in-loop de-artifact filtering
US17/367,184 US11979614B2 (en) 2006-11-08 2021-07-02 Methods and apparatus for in-loop de-artifact filtering

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US86491706P 2006-11-08 2006-11-08
US60/864,917 2006-11-08

Related Child Applications (3)

Application Number Title Priority Date Filing Date
US12/312,386 A-371-Of-International US9277243B2 (en) 2006-11-08 2007-10-25 Methods and apparatus for in-loop de-artifact filtering
EP21207323.3A Previously-Filed-Application EP4224853A1 (en) 2006-11-08 2007-10-25 Methods and apparatus for in-loop de-artifact filtering
US14/981,345 Continuation US9674556B2 (en) 2006-11-08 2015-12-28 Methods and apparatus for in-loop de-artifact filtering

Publications (2)

Publication Number Publication Date
WO2008057308A2 true WO2008057308A2 (en) 2008-05-15
WO2008057308A3 WO2008057308A3 (en) 2009-02-12

Family

ID=39365013

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2007/022795 WO2008057308A2 (en) 2006-11-08 2007-10-25 Methods and apparatus for in-loop de-artifact filtering

Country Status (7)

Country Link
US (4) US9277243B2 (en)
EP (2) EP2082583A2 (en)
JP (1) JP5801032B2 (en)
CN (17) CN105376572A (en)
BR (1) BRPI0717936B1 (en)
HK (4) HK1214706A1 (en)
WO (1) WO2008057308A2 (en)

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100027909A1 (en) * 2008-08-04 2010-02-04 The Hong Kong University Of Science And Technology Convex optimization approach to image deblocking
EP2154896A2 (en) * 2008-08-15 2010-02-17 MediaTek Inc. Adaptive restoration for video coding
WO2010042875A2 (en) 2008-10-10 2010-04-15 Microsoft Corporation Reduced dc gain mismatch and dc leakage in overlap transform processing
WO2010104570A1 (en) * 2009-03-12 2010-09-16 Thomson Licensing Methods and apparatus for region-based filter parameter selection for de-artifact filtering
JP2010245734A (en) * 2009-04-03 2010-10-28 Oki Electric Ind Co Ltd Decoding apparatus of video compression encoded data
JP2011044781A (en) * 2009-08-19 2011-03-03 Sony Corp Image processor and method
WO2011005317A3 (en) * 2009-07-07 2011-03-24 Thomson Licensing Methods and apparatus for collaborative partition coding for region based filters
EP2334078A1 (en) 2009-12-14 2011-06-15 Panasonic Corporation Constrained post processing
EP2346256A1 (en) * 2008-10-07 2011-07-20 NTT DoCoMo, Inc. Image processing device, method, and program, dynamic image encoding device, method, and program, dynamic image decoding device, method, and program, and encoding/decoding system and method
WO2011132400A1 (en) * 2010-04-22 2011-10-27 パナソニック株式会社 Image coding method and image decoding method
JP2012510202A (en) * 2008-11-25 2012-04-26 トムソン ライセンシング Method and apparatus for sparsity-based artifact removal filtering for video encoding and decoding
US20120121009A1 (en) * 2009-07-23 2012-05-17 Thomson Licensing Methods and apparatus for adaptive transform selecton for video encoding and decoding
WO2013064661A1 (en) * 2011-11-03 2013-05-10 Panasonic Corporation Filtering of blocks coded in the pulse code modulation mode
JP2014220849A (en) * 2014-08-26 2014-11-20 ソニー株式会社 Image processing apparatus and method
EP2659679A4 (en) * 2010-12-28 2015-07-01 Fish Dive Inc Method and system for selectively breaking prediction in video coding
RU2587465C2 (en) * 2011-10-20 2016-06-20 Квэлкомм Инкорпорейтед Deblocking encoding mode with intra-pulse-code modulation (ipcm) and lossless encoding for video encoding
US9712846B2 (en) 2010-04-12 2017-07-18 Sun Patent Trust Filter positioning and selection
WO2019199767A1 (en) * 2018-04-13 2019-10-17 Google Llc Spatially adaptive quantization-aware deblocking filter
US11477480B2 (en) * 2009-04-20 2022-10-18 Dolby Laboratories Licensing Corporation Directed interpolation and data post-processing

Families Citing this family (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008030068A1 (en) * 2006-09-07 2008-03-13 Lg Electronics Inc. Method and apparatus for decoding/encoding of a video signal
WO2008057308A2 (en) 2006-11-08 2008-05-15 Thomson Licensing Methods and apparatus for in-loop de-artifact filtering
RU2387094C1 (en) * 2006-11-09 2010-04-20 ЭлДжи ЭЛЕКТРОНИКС ИНК. Method and device for coding/decoding video signal
KR101349836B1 (en) * 2006-11-17 2014-01-10 엘지전자 주식회사 Method and apparatus for decoding/encoding a video signal
TWI330987B (en) * 2007-05-18 2010-09-21 Via Tech Inc Method and apparatus for determining whether adjacent macroblocks are located in the same slice
US20100272191A1 (en) * 2008-01-14 2010-10-28 Camilo Chang Dorea Methods and apparatus for de-artifact filtering using multi-lattice sparsity-based filtering
TWI440363B (en) * 2009-02-19 2014-06-01 Sony Corp Image processing apparatus and method
JP4643723B2 (en) * 2009-03-31 2011-03-02 株式会社東芝 Image coding distortion reducing device, display device, and image coding reducing method
US9736500B2 (en) 2009-07-06 2017-08-15 Thomson Licensing Methods and apparatus for spatially varying residue coding
KR101452713B1 (en) 2009-10-30 2014-10-21 삼성전자주식회사 Method and apparatus for encoding and decoding coding unit of picture boundary
KR101070173B1 (en) * 2009-11-10 2011-10-05 갤럭시아커뮤니케이션즈 주식회사 Encoding system and method of conversion block for raising video compressive efficiency
US9094658B2 (en) 2010-05-10 2015-07-28 Mediatek Inc. Method and apparatus of adaptive loop filtering
US9247265B2 (en) 2010-09-01 2016-01-26 Qualcomm Incorporated Multi-input adaptive filter based on combination of sum-modified Laplacian filter indexing and quadtree partitioning
US9819966B2 (en) 2010-09-01 2017-11-14 Qualcomm Incorporated Filter description signaling for multi-filter adaptive filtering
EP2625859A4 (en) * 2010-10-05 2016-03-02 Mediatek Inc Method and apparatus of region-based adaptive loop filtering
US9055305B2 (en) * 2011-01-09 2015-06-09 Mediatek Inc. Apparatus and method of sample adaptive offset for video coding
US8849053B2 (en) 2011-01-14 2014-09-30 Sony Corporation Parametric loop filter
CN102081795B (en) * 2011-01-14 2012-05-23 天津大学 Automatic deblocking method based on sparse representation
US9001883B2 (en) * 2011-02-16 2015-04-07 Mediatek Inc Method and apparatus for slice common information sharing
KR20120096317A (en) * 2011-02-22 2012-08-30 한국전자통신연구원 Method and apparatus of coding stereoscopic video
US9317933B2 (en) * 2011-05-27 2016-04-19 Sony Corporation Image processing device and method
WO2012177052A2 (en) 2011-06-21 2012-12-27 한국전자통신연구원 Inter-prediction method and apparatus for same
KR20120140592A (en) * 2011-06-21 2012-12-31 한국전자통신연구원 Method and apparatus for reducing computational complexity of motion compensation and increasing coding efficiency
CN106941608B (en) 2011-06-30 2021-01-15 三菱电机株式会社 Image encoding device and method, image decoding device and method
GB201119206D0 (en) 2011-11-07 2011-12-21 Canon Kk Method and device for providing compensation offsets for a set of reconstructed samples of an image
US9756327B2 (en) * 2012-04-03 2017-09-05 Qualcomm Incorporated Quantization matrix and deblocking filter adjustments for video coding
US9819965B2 (en) * 2012-11-13 2017-11-14 Intel Corporation Content adaptive transform coding for next generation video
US9883198B2 (en) * 2012-11-13 2018-01-30 Intel Corporation Video codec architecture for next generation video
WO2014120368A1 (en) 2013-01-30 2014-08-07 Intel Corporation Content adaptive entropy coding for next generation video
US9712834B2 (en) 2013-10-01 2017-07-18 Dolby Laboratories Licensing Corporation Hardware efficient sparse FIR filtering in video codec
US20150262404A1 (en) * 2014-03-13 2015-09-17 Huawei Technologies Co., Ltd. Screen Content And Mixed Content Coding
US10715833B2 (en) * 2014-05-28 2020-07-14 Apple Inc. Adaptive syntax grouping and compression in video data using a default value and an exception value
US9747673B2 (en) * 2014-11-05 2017-08-29 Dolby Laboratories Licensing Corporation Systems and methods for rectifying image artifacts
KR102601350B1 (en) * 2016-05-31 2023-11-13 엘지디스플레이 주식회사 Method For Compressing Data And Display Device Using The Same
US20190281273A1 (en) * 2018-03-08 2019-09-12 Mediatek Inc. Adaptive loop filtering method for reconstructed projection-based frame that employs projection layout of 360-degree virtual reality projection
WO2019191888A1 (en) * 2018-04-02 2019-10-10 北京大学 Loop filtering method and apparatus, and computer system
US10708626B2 (en) 2018-11-19 2020-07-07 Google Llc Iterative IDCT with adaptive non-linear filtering
CA3132582A1 (en) * 2019-03-07 2020-09-10 Digitalinsights Inc. Image encoding/decoding method and apparatus
US11399180B1 (en) * 2019-04-09 2022-07-26 Apple Inc. Video encoder with quantization control
KR20210113464A (en) * 2020-03-05 2021-09-16 삼성전자주식회사 Imaging device and electronic device including the same
WO2023241634A1 (en) * 2022-06-18 2023-12-21 Beijing Bytedance Network Technology Co., Ltd. Method, apparatus, and medium for video processing

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5590064A (en) * 1994-10-26 1996-12-31 Intel Corporation Post-filtering for decoded video signals
EP0772365A2 (en) * 1995-11-02 1997-05-07 Matsushita Electric Industrial Co., Ltd. Method and device for filtering a picture signal, and encoding/decoding using the same
EP0781053A2 (en) * 1995-12-18 1997-06-25 Lucent Technologies Inc. Method and apparatus for post-processing images
US20020080882A1 (en) * 2000-12-21 2002-06-27 Matsushita Electric Industrial Co., Ltd. Noise reducing apparatus and noise reducing method
US6909745B1 (en) * 2001-06-05 2005-06-21 At&T Corp. Content adaptive video encoder

Family Cites Families (54)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
IL104568A (en) * 1993-01-31 1995-12-31 Age Computational Graphics Ltd Method and system for producing enhanced output signals
US5541852A (en) * 1994-04-14 1996-07-30 Motorola, Inc. Device, method and system for variable bit-rate packet video communications
KR100373294B1 (en) * 1994-08-22 2003-05-17 소니 가부시끼 가이샤 Transceiver
JP3381755B2 (en) * 1994-10-11 2003-03-04 セイコーエプソン株式会社 Method and apparatus for improved adaptive filtering and thresholding to reduce image graininess
US5648989A (en) 1994-12-21 1997-07-15 Paradyne Corporation Linear prediction filter coefficient quantizer and filter set
KR970073120A (en) * 1996-04-15 1997-11-07 이준 A method of decoding a vector quantized signal in units of blocks
KR100242637B1 (en) * 1996-07-06 2000-02-01 윤종용 Loop filtering method for reducing blocking effect and ringing noise of motion compensated image
KR100213089B1 (en) 1997-01-29 1999-08-02 윤종용 Loop filtering method and loop filter
US6188799B1 (en) 1997-02-07 2001-02-13 Matsushita Electric Industrial Co., Ltd. Method and apparatus for removing noise in still and moving pictures
US6029125A (en) * 1997-09-02 2000-02-22 Telefonaktiebolaget L M Ericsson, (Publ) Reducing sparseness in coded speech signals
US6178205B1 (en) * 1997-12-12 2001-01-23 Vtel Corporation Video postfiltering with motion-compensated temporal filtering and/or spatial-adaptive filtering
RU2154918C1 (en) 1998-08-01 2000-08-20 Самсунг Электроникс Ко., Лтд. Method and device for loop filtration of image data
US6931063B2 (en) * 2001-03-26 2005-08-16 Sharp Laboratories Of America, Inc. Method and apparatus for controlling loop filtering or post filtering in block based motion compensationed video coding
US7929610B2 (en) * 2001-03-26 2011-04-19 Sharp Kabushiki Kaisha Methods and systems for reducing blocking artifacts with reduced complexity for spatially-scalable video coding
US6993191B2 (en) 2001-05-04 2006-01-31 Pts Corporation Methods and apparatus for removing compression artifacts in video sequences
KR100525785B1 (en) * 2001-06-15 2005-11-03 엘지전자 주식회사 Filtering method for pixel of image
US7266150B2 (en) 2001-07-11 2007-09-04 Dolby Laboratories, Inc. Interpolation of video compression frames
ATE454016T1 (en) * 2001-09-12 2010-01-15 Panasonic Corp IMAGE CODING AND DECODING METHODS
CN1874522B (en) * 2001-11-29 2010-09-08 松下电器产业株式会社 Video encoding method
CN101448162B (en) 2001-12-17 2013-01-02 微软公司 Method for processing video image
EP1349393A1 (en) * 2002-03-15 2003-10-01 Ricoh Company Image compression device, image decompression device, image compression/decompression device, program for executing on a computer to perform functions of such devices, and recording medium storing such a program
US7194143B2 (en) 2002-04-26 2007-03-20 Pegasus Imaging Corporation Method of enhancement of the visual display of images and other visual data records
US6741665B2 (en) * 2002-06-20 2004-05-25 Nokia Corporation Method and apparatus providing an amplitude independent automatic frequency control circuit
US6807317B2 (en) 2002-10-25 2004-10-19 Motorola, Inc. Method and decoder system for reducing quantization effects of a decoded image
US7227901B2 (en) 2002-11-21 2007-06-05 Ub Video Inc. Low-complexity deblocking filter
US7352909B2 (en) 2003-06-02 2008-04-01 Seiko Epson Corporation Weighted overcomplete de-noising
US20050013494A1 (en) 2003-07-18 2005-01-20 Microsoft Corporation In-loop deblocking filter
CN1207915C (en) * 2003-08-20 2005-06-22 中国科学院计算技术研究所 Half pixel filtering method for video compression domain
US8625680B2 (en) 2003-09-07 2014-01-07 Microsoft Corporation Bitstream-controlled post-processing filtering
US7388999B2 (en) 2003-10-29 2008-06-17 Hewlett-Packard Development Company, L.P. Transformations for denoising images
KR100531895B1 (en) * 2004-02-26 2005-11-29 엘지전자 주식회사 Apparatus and method for concealing block error of image in mobile communication system
CN1571515A (en) * 2004-05-13 2005-01-26 中国科学院计算技术研究所 A loop filter and filtering method
NO20042477A (en) * 2004-06-14 2005-10-17 Tandberg Telecom As Chroma de-blocking procedure
JP2008503919A (en) 2004-06-18 2008-02-07 トムソン ライセンシング Method and apparatus for optimizing video coding
US7738563B2 (en) 2004-07-08 2010-06-15 Freescale Semiconductor, Inc. Method and system for performing deblocking filtering
US20060007999A1 (en) * 2004-07-08 2006-01-12 Gomez Ramon A Method and system for enhancing image rejection in communications receivers using test tones and a baseband equalizer
US7545988B2 (en) 2004-08-09 2009-06-09 George William Meeker Image blocking artifact reduction via transform pair
NO322722B1 (en) * 2004-10-13 2006-12-04 Tandberg Telecom As Video encoding method by reducing block artifacts
US7620261B2 (en) 2004-11-23 2009-11-17 Stmicroelectronics Asia Pacific Pte. Ltd. Edge adaptive filtering system for reducing artifacts and method
US7136536B2 (en) 2004-12-22 2006-11-14 Telefonaktiebolaget L M Ericsson (Publ) Adaptive filter
US8218634B2 (en) * 2005-01-13 2012-07-10 Ntt Docomo, Inc. Nonlinear, in-the-loop, denoising filter for quantization noise removal for hybrid video compression
CN1816149A (en) * 2005-02-06 2006-08-09 腾讯科技(深圳)有限公司 Filtering-wave method of removing blocking-effect in video-frequency picture and loop filter
US20060233253A1 (en) * 2005-03-10 2006-10-19 Qualcomm Incorporated Interpolated frame deblocking operation for frame rate up conversion applications
FR2889778A1 (en) * 2005-08-12 2007-02-16 Thomson Licensing Sas METHOD FOR ENCODING AND DECODING VIDEO IMAGES WITH SPACE SCALABILITY
US8218655B2 (en) 2005-09-19 2012-07-10 Maxim Integrated Products, Inc. Method, system and device for improving video quality through in-loop temporal pre-filtering
US8537903B2 (en) 2005-09-23 2013-09-17 Entropic Communications, Inc. De-blocking and de-ringing systems and methods
US7551232B2 (en) 2005-11-14 2009-06-23 Lsi Corporation Noise adaptive 3D composite noise reduction
JP4455487B2 (en) 2005-12-16 2010-04-21 株式会社東芝 Decoding device, decoding method, and program
WO2007089803A2 (en) 2006-01-31 2007-08-09 Thomson Licensing Methods and apparatus for edge-based spatio-temporal filtering
US7924925B2 (en) 2006-02-24 2011-04-12 Freescale Semiconductor, Inc. Flexible macroblock ordering with reduced data traffic and power consumption
US9131164B2 (en) * 2006-04-04 2015-09-08 Qualcomm Incorporated Preprocessor method and apparatus
US7570182B2 (en) * 2006-09-15 2009-08-04 Texas Instruments Incorporated Adaptive spectral noise shaping to improve time to digital converter quantization resolution using dithering
WO2008057308A2 (en) * 2006-11-08 2008-05-15 Thomson Licensing Methods and apparatus for in-loop de-artifact filtering
US8023562B2 (en) * 2007-09-07 2011-09-20 Vanguard Software Solutions, Inc. Real-time video coding/decoding

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5590064A (en) * 1994-10-26 1996-12-31 Intel Corporation Post-filtering for decoded video signals
EP0772365A2 (en) * 1995-11-02 1997-05-07 Matsushita Electric Industrial Co., Ltd. Method and device for filtering a picture signal, and encoding/decoding using the same
EP0781053A2 (en) * 1995-12-18 1997-06-25 Lucent Technologies Inc. Method and apparatus for post-processing images
US20020080882A1 (en) * 2000-12-21 2002-06-27 Matsushita Electric Industrial Co., Ltd. Noise reducing apparatus and noise reducing method
US6909745B1 (en) * 2001-06-05 2005-06-21 At&T Corp. Content adaptive video encoder

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
FAN Z ET AL: "JPEG decompression with reduced artifacts" JOURNAL OF THE AMERICAN VETERINARY MEDICAL ASSOCIATION, vol. 2186, 9 February 1994 (1994-02-09), pages 50-55, XP002116488 ISSN: 0003-1488 *
LEE Y L ET AL: "Loop-filtering and post-filtering for low bit-rates moving picture coding" IMAGE PROCESSING, 1999. ICIP 99. PROCEEDINGS. 1999 INTERNATIONAL CONFE RENCE ON KOBE, JAPAN 24-28 OCT. 1999, PISCATAWAY, NJ, USA,IEEE, US, vol. 1, 24 October 1999 (1999-10-24), pages 94-98, XP010369215 ISBN: 978-0-7803-5467-8 *

Cited By (95)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100027909A1 (en) * 2008-08-04 2010-02-04 The Hong Kong University Of Science And Technology Convex optimization approach to image deblocking
EP2154896A2 (en) * 2008-08-15 2010-02-17 MediaTek Inc. Adaptive restoration for video coding
CN102132566B (en) * 2008-10-07 2015-05-20 株式会社Ntt都科摩 Image processing device and method, dynamic image encoding device and method,dynamic image decoding device and method,and encoding/decoding system and method
EP2346256A4 (en) * 2008-10-07 2013-01-02 Ntt Docomo Inc Image processing device, method, and program, dynamic image encoding device, method, and program, dynamic image decoding device, method, and program, and encoding/decoding system and method
CN102132566A (en) * 2008-10-07 2011-07-20 株式会社Ntt都科摩 Image processing device, method, and program, dynamic image encoding device, method, and program, dynamic image decoding device, method, and program, and encoding/decoding system and method
EP2346256A1 (en) * 2008-10-07 2011-07-20 NTT DoCoMo, Inc. Image processing device, method, and program, dynamic image encoding device, method, and program, dynamic image decoding device, method, and program, and encoding/decoding system and method
US9167271B2 (en) 2008-10-07 2015-10-20 Ntt Docomo, Inc. Image processing device, method, and program, dynamic image encoding device, method, and program, dynamic image decoding device, method, and program, and encoding/decoding system and method
KR20110091849A (en) * 2008-10-10 2011-08-16 마이크로소프트 코포레이션 Reduced dc gain mismatch and dc leakage in overlap transform processing
EP2332334A2 (en) * 2008-10-10 2011-06-15 Microsoft Corporation Reduced dc gain mismatch and dc leakage in overlap transform processing
KR101683313B1 (en) 2008-10-10 2016-12-06 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 Reduced dc gain mismatch and dc leakage in overlap transform processing
CN102177714A (en) * 2008-10-10 2011-09-07 微软公司 Reduced DC gain mismatch and DC leakage in overlap transform processing
WO2010042875A2 (en) 2008-10-10 2010-04-15 Microsoft Corporation Reduced dc gain mismatch and dc leakage in overlap transform processing
EP2332334A4 (en) * 2008-10-10 2012-06-06 Microsoft Corp Reduced dc gain mismatch and dc leakage in overlap transform processing
JP2012505613A (en) * 2008-10-10 2012-03-01 マイクロソフト コーポレーション Reduction of DC gain mismatch and DC leakage in overlap conversion process
JP2015128323A (en) * 2008-11-25 2015-07-09 トムソン ライセンシングThomson Licensing Method and apparatus for sparsity-based de-artifact filtering for video encoding and decoding
US9723330B2 (en) 2008-11-25 2017-08-01 Thomson Licensing Dtv Method and apparatus for sparsity-based de-artifact filtering for video encoding and decoding
JP2012510202A (en) * 2008-11-25 2012-04-26 トムソン ライセンシング Method and apparatus for sparsity-based artifact removal filtering for video encoding and decoding
US9294784B2 (en) 2009-03-12 2016-03-22 Thomson Licensing Method and apparatus for region-based filter parameter selection for de-artifact filtering
KR102003137B1 (en) 2009-03-12 2019-07-23 인터디지탈 매디슨 페이튼트 홀딩스 Methods and apparatus for region-based filter parameter selection for de-artifact filtering
WO2010104570A1 (en) * 2009-03-12 2010-09-16 Thomson Licensing Methods and apparatus for region-based filter parameter selection for de-artifact filtering
CN102349298A (en) * 2009-03-12 2012-02-08 汤姆森特许公司 Methods and apparatus for region-based filter parameter selection for de-artifact filtering
KR20170020939A (en) * 2009-03-12 2017-02-24 톰슨 라이센싱 Methods and apparatus for region-based filter parameter selection for de-artifact filtering
CN102349298B (en) * 2009-03-12 2016-08-03 汤姆森特许公司 The method and apparatus selected for the filter parameter based on region of de-artifact filtering
JP2010245734A (en) * 2009-04-03 2010-10-28 Oki Electric Ind Co Ltd Decoding apparatus of video compression encoded data
US11477480B2 (en) * 2009-04-20 2022-10-18 Dolby Laboratories Licensing Corporation Directed interpolation and data post-processing
US20170318290A1 (en) * 2009-07-07 2017-11-02 Thomson Licensing Methods and apparatus for collaborative partition coding for region based filters
KR102350436B1 (en) 2009-07-07 2022-01-14 인터디지털 브이씨 홀딩스 인코포레이티드 Methods and apparatus for collaborative partition coding for region based filters
KR102033025B1 (en) 2009-07-07 2019-10-16 톰슨 라이센싱 Methods and apparatus for collaborative partition coding for region based filters
KR102542401B1 (en) 2009-07-07 2023-06-13 인터디지털 브이씨 홀딩스 인코포레이티드 Methods and apparatus for collaborative partition coding for region based filters
CN107295339B (en) * 2009-07-07 2020-06-26 交互数字Vc控股公司 Method and apparatus for using cooperative partition coding for region-based filters
CN102484708A (en) * 2009-07-07 2012-05-30 汤姆森特许公司 Methods and apparatus for collaborative partition coding for region based filters
US11483556B2 (en) 2009-07-07 2022-10-25 Interdigital Vc Holdings, Inc. Methods and apparatus for collaborative partition coding for region based filters
US10708590B2 (en) 2009-07-07 2020-07-07 Interdigital Vc Holdings, Inc. Methods and apparatus for collaborative partition coding for region based filters
WO2011005317A3 (en) * 2009-07-07 2011-03-24 Thomson Licensing Methods and apparatus for collaborative partition coding for region based filters
KR20190119173A (en) * 2009-07-07 2019-10-21 톰슨 라이센싱 Methods and apparatus for collaborative partition coding for region based filters
KR102135339B1 (en) 2009-07-07 2020-07-20 인터디지털 브이씨 홀딩스 인코포레이티드 Methods and apparatus for collaborative partition coding for region based filters
KR101788292B1 (en) 2009-07-07 2017-10-19 톰슨 라이센싱 Methods and apparatus for collaborative partition coding for region based filters
KR20220011206A (en) * 2009-07-07 2022-01-27 인터디지털 브이씨 홀딩스 인코포레이티드 Methods and apparatus for collaborative partition coding for region based filters
US9743081B2 (en) 2009-07-07 2017-08-22 Thomson Licensing Methods and apparatus for collaborative partition coding for region based filters
CN105791831A (en) * 2009-07-07 2016-07-20 汤姆森特许公司 Method and apparatus for collaborative partition coding for region based filters
KR20180113636A (en) * 2009-07-07 2018-10-16 톰슨 라이센싱 Methods and apparatus for collaborative partition coding for region based filters
JP2012533215A (en) * 2009-07-07 2012-12-20 トムソン ライセンシング Region-based filter cooperative partition coding method and apparatus
KR20200087879A (en) * 2009-07-07 2020-07-21 인터디지털 브이씨 홀딩스 인코포레이티드 Methods and apparatus for collaborative partition coding for region based filters
KR102242039B1 (en) 2009-07-07 2021-04-20 인터디지털 브이씨 홀딩스 인코포레이티드 Methods and apparatus for collaborative partition coding for region based filters
CN107295339A (en) * 2009-07-07 2017-10-24 汤姆森特许公司 The zonal coding that will cooperate is used for the method and device of the wave filter based on region
KR20210043027A (en) * 2009-07-07 2021-04-20 인터디지털 브이씨 홀딩스 인코포레이티드 Methods and apparatus for collaborative partition coding for region based filters
US11895296B2 (en) 2009-07-07 2024-02-06 Interdigital Vc Holdings, Inc. Methods and apparatus for collaborative partition coding for region based filters
US20120121009A1 (en) * 2009-07-23 2012-05-17 Thomson Licensing Methods and apparatus for adaptive transform selecton for video encoding and decoding
US9357221B2 (en) * 2009-07-23 2016-05-31 Thomson Licensing Methods and apparatus for adaptive transform selection for video encoding and decoding
CN102474607A (en) * 2009-07-23 2012-05-23 汤姆森许可贸易公司 Methods and apparatus for adaptive transform selection for video encoding and decoding
CN102714716A (en) * 2009-08-19 2012-10-03 索尼公司 Device and method for image processing
EP3404917A1 (en) * 2009-08-19 2018-11-21 Sony Corporation Device and method for image processing
US10587899B2 (en) 2009-08-19 2020-03-10 Sony Corporation Image processing device and method
EP2469856A1 (en) * 2009-08-19 2012-06-27 Sony Corporation Device and method for image processing
JP2011044781A (en) * 2009-08-19 2011-03-03 Sony Corp Image processor and method
US9967593B2 (en) 2009-08-19 2018-05-08 Sony Corporation Image processing device and method
EP2469856A4 (en) * 2009-08-19 2014-01-22 Sony Corp Device and method for image processing
CN106028036A (en) * 2009-08-19 2016-10-12 索尼公司 Device and method for image processing
CN102714716B (en) * 2009-08-19 2016-08-03 索尼公司 Image processing equipment and method
US10911786B2 (en) 2009-08-19 2021-02-02 Sony Corporation Image processing device and method
CN109951708B (en) * 2009-08-19 2023-01-31 索尼公司 Image processing apparatus and method
CN109951708A (en) * 2009-08-19 2019-06-28 索尼公司 Image processing equipment and method
EP2334078A1 (en) 2009-12-14 2011-06-15 Panasonic Corporation Constrained post processing
WO2011072823A1 (en) 2009-12-14 2011-06-23 Panasonic Corporation Constrained post processing
US10148956B2 (en) 2010-04-12 2018-12-04 Sun Patent Trust Filter positioning and selection
US10015492B2 (en) 2010-04-12 2018-07-03 Sun Patent Trust Filter positioning and selection
US9712846B2 (en) 2010-04-12 2017-07-18 Sun Patent Trust Filter positioning and selection
WO2011132400A1 (en) * 2010-04-22 2011-10-27 パナソニック株式会社 Image coding method and image decoding method
CN106658000A (en) * 2010-12-28 2017-05-10 杜比国际公司 Method and system for selectively breaking prediction in video coding
US9313505B2 (en) 2010-12-28 2016-04-12 Dolby Laboratories Licensing Corporation Method and system for selectively breaking prediction in video coding
US11949878B2 (en) 2010-12-28 2024-04-02 Dolby Laboratories Licensing Corporation Method and system for picture segmentation using columns
US11871000B2 (en) 2010-12-28 2024-01-09 Dolby Laboratories Licensing Corporation Method and system for selectively breaking prediction in video coding
US11582459B2 (en) 2010-12-28 2023-02-14 Dolby Laboratories Licensing Corporation Method and system for picture segmentation using columns
US10244239B2 (en) 2010-12-28 2019-03-26 Dolby Laboratories Licensing Corporation Parameter set for picture segmentation
US10225558B2 (en) 2010-12-28 2019-03-05 Dolby Laboratories Licensing Corporation Column widths for picture segmentation
US10104377B2 (en) 2010-12-28 2018-10-16 Dolby Laboratories Licensing Corporation Method and system for selectively breaking prediction in video coding
EP2659679A4 (en) * 2010-12-28 2015-07-01 Fish Dive Inc Method and system for selectively breaking prediction in video coding
US9794573B2 (en) 2010-12-28 2017-10-17 Dolby Laboratories Licensing Corporation Method and system for selectively breaking prediction in video coding
CN106658000B (en) * 2010-12-28 2019-11-05 杜比国际公司 Method and system for the prediction selectively destroyed in Video coding
US11356670B2 (en) 2010-12-28 2022-06-07 Dolby Laboratories Licensing Corporation Method and system for picture segmentation using columns
US10986344B2 (en) 2010-12-28 2021-04-20 Dolby Laboratories Licensing Corporation Method and system for picture segmentation using columns
US9369722B2 (en) 2010-12-28 2016-06-14 Dolby Laboratories Licensing Corporation Method and system for selectively breaking prediction in video coding
US11178400B2 (en) 2010-12-28 2021-11-16 Dolby Laboratories Licensing Corporation Method and system for selectively breaking prediction in video coding
RU2587465C2 (en) * 2011-10-20 2016-06-20 Квэлкомм Инкорпорейтед Deblocking encoding mode with intra-pulse-code modulation (ipcm) and lossless encoding for video encoding
US9510020B2 (en) 2011-10-20 2016-11-29 Qualcomm Incorporated Intra pulse code modulation (IPCM) and lossless coding mode deblocking for video coding
US9560383B2 (en) 2011-10-20 2017-01-31 Qualcomm Incorporated Intra pulse code modulation (IPCM) and lossless coding mode deblocking for video coding
KR102007050B1 (en) * 2011-11-03 2019-10-01 선 페이턴트 트러스트 Filtering of blocks coded in the pulse code modulation mode
KR20140094496A (en) * 2011-11-03 2014-07-30 파나소닉 인텔렉츄얼 프로퍼티 코포레이션 오브 아메리카 Filtering of blocks coded in the pulse code modulation mode
WO2013064661A1 (en) * 2011-11-03 2013-05-10 Panasonic Corporation Filtering of blocks coded in the pulse code modulation mode
JP2014220849A (en) * 2014-08-26 2014-11-20 ソニー株式会社 Image processing apparatus and method
US11070808B2 (en) 2018-04-13 2021-07-20 Google Llc Spatially adaptive quantization-aware deblocking filter
CN111602402B (en) * 2018-04-13 2022-04-26 谷歌有限责任公司 Method and device for generating filtering reconstruction frame
CN111602402A (en) * 2018-04-13 2020-08-28 谷歌有限责任公司 Spatial adaptive quantization aware deblocking filter
WO2019199767A1 (en) * 2018-04-13 2019-10-17 Google Llc Spatially adaptive quantization-aware deblocking filter
US10491897B2 (en) 2018-04-13 2019-11-26 Google Llc Spatially adaptive quantization-aware deblocking filter

Also Published As

Publication number Publication date
US11089337B2 (en) 2021-08-10
US20210337241A1 (en) 2021-10-28
CN105376567A (en) 2016-03-02
WO2008057308A3 (en) 2009-02-12
CN105392006A (en) 2016-03-09
JP2010509842A (en) 2010-03-25
BRPI0717936A2 (en) 2013-12-03
CN105376574A (en) 2016-03-02
JP5801032B2 (en) 2015-10-28
US9277243B2 (en) 2016-03-01
CN105407355A (en) 2016-03-16
EP4224853A1 (en) 2023-08-09
CN105376572A (en) 2016-03-02
CN101543076A (en) 2009-09-23
CN104902278A (en) 2015-09-09
CN105392004A (en) 2016-03-09
CN105392005A (en) 2016-03-09
HK1222077A1 (en) 2017-06-16
EP2082583A2 (en) 2009-07-29
CN105357527A (en) 2016-02-24
CN105357528B (en) 2018-10-09
US11979614B2 (en) 2024-05-07
US20090257664A1 (en) 2009-10-15
US20160112725A1 (en) 2016-04-21
BRPI0717936B1 (en) 2020-09-29
CN105357528A (en) 2016-02-24
CN105357529A (en) 2016-02-24
CN105430398A (en) 2016-03-23
HK1222076A1 (en) 2017-06-16
US20170238021A1 (en) 2017-08-17
HK1222494A1 (en) 2017-06-30
CN105392007A (en) 2016-03-09
CN105376573A (en) 2016-03-02
CN105430399A (en) 2016-03-23
HK1214706A1 (en) 2016-07-29
CN105430398B (en) 2019-06-28
US9674556B2 (en) 2017-06-06
CN105392003A (en) 2016-03-09

Similar Documents

Publication Publication Date Title
US11979614B2 (en) Methods and apparatus for in-loop de-artifact filtering
CN108028920B (en) Method and device for high-level deblocking filtering in video coding and decoding
US9723330B2 (en) Method and apparatus for sparsity-based de-artifact filtering for video encoding and decoding
US20100272191A1 (en) Methods and apparatus for de-artifact filtering using multi-lattice sparsity-based filtering
EP2420063B1 (en) Methods and apparatus for filter parameter determination and selection responsive to variable transforms in sparsity-based de-artifact filtering
EP3748967A1 (en) Methods and apparatus for collaborative partition coding for region based filters
JP6479548B2 (en) Method and apparatus for performing region-based filter parameter selection for artifact removal filtering
WO2011112237A1 (en) Methods and apparatus for a classification-based loop filter
US9167270B2 (en) Methods and apparatus for efficient adaptive filtering for video encoders and decoders
US20100208800A1 (en) Method and decoder for decoding an image frame of an image frame sequence
WO2010134973A1 (en) Methods and apparatus for a generalized filtering structure for video coding and decoding

Legal Events

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

Ref document number: 200780041729.1

Country of ref document: CN

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

Ref document number: 07870824

Country of ref document: EP

Kind code of ref document: A2

WWE Wipo information: entry into national phase

Ref document number: 2576/DELNP/2009

Country of ref document: IN

ENP Entry into the national phase

Ref document number: 2009536243

Country of ref document: JP

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 12312386

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 2007870824

Country of ref document: EP

ENP Entry into the national phase

Ref document number: PI0717936

Country of ref document: BR

Kind code of ref document: A2

Effective date: 20090429