US20080159386A1 - Loop-filtering method for image data and apparatus therefor - Google Patents
Loop-filtering method for image data and apparatus therefor Download PDFInfo
- Publication number
- US20080159386A1 US20080159386A1 US11/768,688 US76868807A US2008159386A1 US 20080159386 A1 US20080159386 A1 US 20080159386A1 US 76868807 A US76868807 A US 76868807A US 2008159386 A1 US2008159386 A1 US 2008159386A1
- Authority
- US
- United States
- Prior art keywords
- block
- filtering
- pixel
- flag
- image data
- Prior art date
- Legal status (The legal status 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 status listed.)
- Abandoned
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/85—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
- H04N19/86—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/117—Filters, e.g. for pre-processing or post-processing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods 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/162—User input
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/17—Methods 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/176—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/42—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
- H04N19/436—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation using parallelised computational arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/46—Embedding additional information in the video signal during the compression process
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/70—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/80—Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
- H04N19/82—Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop
Definitions
- the present invention relates to image data processing, and more particularly, to a method for loop-filtering image data to reduce a quantization effect and an apparatus therefor.
- picture encoding standards such as MPEG of the International Standardization Organization (ISO) and H.263 recommended by the International Telecommunication Union (ITU) adopt block-based motion estimation and discrete cosine transform (DCT) blocks.
- Most picture encoding standards utilize the DCT in 8.times.8 pixel block units in order to pack information with a small number of transform coefficients.
- This block-based DCT scheme is based on the local spatial correlation properties of an image.
- Blocking artifacts are caused by grid noise generated along the block boundary in a relatively homogeneous area.
- the grid noise shows traces of the block-based process at the edges between blocks when the compressed data is displayed on a screen after being restored. Thus, the edges between blocks are noticeable.
- the corner outlier is generated where the corners of the 8.times.8 blocks meet.
- the ringing noise is a typical Gibb's phenomenon occurring by truncation when the coefficients of high-frequency components of the DCT are quantized so as to highly compress the image. Due to the ringing noise, one can notice overlapping of images with a predetermined interval.
- a single-adaptive filtering (SAF) method has been introduced in order to reduce the quantization effect of JPEG-decompressed images by Y. L Lee, H. C. Kim, and H. W Park (“ Blocking Effect Reduction of JPEG images by Signal Adaptive Filtering” in Press IEEE Trans. On Image Processing, 1997].
- SAF single-adaptive filtering
- Gersho have suggested a method in which a two-dimensional (2-D) filter is used to reduce the blocking artifact while a one-dimensional (1-D) filter is used to reduce staircase noise [“ Nonlinear Space Variant Postprocessing of Block Coded Images”, IEEE Trans. on ASSP, Vol. 34, No. 5, pp 1258-1267, 1986].
- an iterative image-recovery algorithm using the theory of projections onto convex sets (POCS) has been proposed by Y. Ynag, N. Galatsanos and A Katsaggelos [“ Projection - Based Spatially Adaptive Reconstruction of Block - Transform Compressed Images,” IEEE Trans. on Image Processing, Vol. 4., No. 7, pp 896-908, July 1995].
- an object of the present invention is to provide a method for loop-filtering image data and an apparatus therefor, capable of encoding at a low bit rate without need for complicated computations, by which quantization effects such as blocking artifacts, corner outliers and ringing noise caused by block-based decoding can be reduced.
- a loop-filtering method for reducing quantization effect generated when an image data is encoded and decoded, the method comprising the steps of: extracting a flag indicating whether the image data requires loop-filtering using the distribution of inverse quantized coefficients (IQCs) of an inverse quantized image data and a motion vector indicating the difference between the previous frame and the current frame; and filtering the image data corresponding to the flag by a predetermined method if the extracted flag indicates a need for the loop-filtering.
- IQCs inverse quantized coefficients
- the flag is extracted from a discrete cosine transform (DCT) domain of each block if an image frame to be loop-filtered is an intra frame, and from a residual signal and a reference frame if the image frame to be loop-filtered is an inter frame.
- DCT discrete cosine transform
- the flag comprises a blocking flag indicating whether reduction of blocking artifacts near block boundaries is required, and a ringing flag indicating whether reduction of ringing noise near image edges is required.
- the blocking flag of the intra frame comprises a horizontal blocking flag (HBF) and a vertical blocking flag (VBF), wherein the horizontal and vertical blocking flag extraction of the intra frame comprises the steps of: calculating DCT coefficients of the inverse quantized 8 ⁇ 8 block after the compressed image data is inverse quantized; assuming that a pixel A (DC coefficient) is located at the top, far left corner of an 8 ⁇ 8 block consisting of 64 pixels, a pixel B is located to the right of the pixel A, and a pixel C is located below the pixel A, setting the HBF and the VBF to “1” indicating a need for the loop-filtering if only the coefficients in pixels A are non-zero; setting the VBF to “1” indicating a need for the loop-filtering if only the top row of the inverse quantized 8 ⁇ 8 block is non-zero; and setting the HBF to “1” indicating a need for the loop-filtering if only the far
- ringing flag RF is set to “1” indicating a need for loop-filtering when any pixel other than the pixels A, B and C of the inverse quantized 8 ⁇ 8 block has a non-zero coefficient.
- the blocking flag of the current inter frame comprises a horizontal blocking flag and a vertical blocking flag, wherein assuming that a reference frame comprises a predetermined number of reference blocks, a block of the reference frame predicted by a motion vector (MV x 0 , MV y 0 ) of the block A c 0 of the current inter frame is a motion block X 0 , the horizontal and vertical blocking flag extraction on a block A c 0 of the current inter frame comprises the steps of: investigating the degree of overlapping between the motion block X 0 and the reference blocks; bit-wise AND-operating the HBF and the VBF of the reference blocks having a predetermined number of overlapped pixels; and setting the result of the bit-wise AND operation as horizontal and vertical blocking flags of the block A c 0 of the current video object plane (VOP).
- VOP current video object plane
- the horizontal and vertical blocking flag extraction on the block A c 0 of the current inter frame further comprises the step of setting the blocking flag of the reference macro block as the blocking flag of the current macroblock if a motion vector of the current macro block is a skipped macro block having zero motion vector.
- the horizontal and vertical blocking flag extraction on the block A c 0 of the current inter frame further comprises the step of padding the blocking flag of the reference block after replicating the blocking flag.
- the ringing flag extraction on a block A c 0 of the current inter frame in the case where the image frame is an inter frame comprises the steps of: setting a ringing flag RF of the current block A c 0 to ‘1’ if any AC component of inverse quantized coefficients (IQCs) of a residual signal of the 8 ⁇ 8 inter blocks is non-zero, and to ‘0’ if all IS AC components of the IQCs are zero; and setting the RF to ‘1’ when the current block is in an 8 ⁇ 8 prediction mode for transferring a motion vector on the macro block.
- IQCs inverse quantized coefficients
- the ringing flag of the inter frame comprises a first ringing flag (RF 0 ) and a second ringing flag (RF 1 ), wherein extraction of the first and second ringing flags RF 0 and RF 1 on a block A c 0 of the current inter frame comprise the steps of: setting the first ringing flag RF 0 of the current block A c 0 to ‘1’ if only the DC components of inverse quantized coefficients (IQCs) of a residual signal of the 8 ⁇ 8 inter macro blocks are non-zero, and otherwise, setting the RF 0 of the current block A c 0 to ‘0’; and setting the second ringing flag RF 1 of the current block A c 0 to ‘1’ if any AC component of the IQCs of the residual signal of the 8 ⁇ 8 inter frames is non-zero, and otherwise, setting the RF 1 of the current block A c 0 to ‘0’.
- IQCs inverse quantized coefficients
- a predetermined block constituting a frame to be loop-filtered is a block I and a block adjacent to the block I is a block J
- the difference between the current block I and the quantized previous block I is not greater than a predetermined value
- the difference between the current block J and the quantized previous block J is not greater than a predetermined value
- the deblocking filtering for reducing blocking artifacts comprises the steps of: performing a first filtering for changing a predetermined number of pixel values near a horizontal block boundary between the blocks I and J if the RFs of the blocks I and J indicate no need for reducing the ringing noise, and both HBFs of the blocks I and J indicate a need for reducing the blocking artifacts; and comparing the difference between two adjacent pixels around the block boundary with the H.263 quantization factor QP if both RFs of the blocks I and J indicate no need for reducing the ringing noise and at least one of the HBFs of the blocks I and J indicates no need for reducing the blocking artifacts, or if at least one of RFs of the blocks I and J indicate a need for reducing the ringing noise, and changing a predetermined number of pixel values, which is less than that for the first filtering, if the difference between two pixels is less than the QP.
- the deblocking filtering for reducing blocking artifacts comprises the steps of: performing a first filtering for changing a predetermined number of pixel values near a block boundary between the blocks I and J if the RF of the block I indicates no need for reducing the ringing noise, and both blocks I and J are intra-blocks; and comparing the difference between two adjacent pixels around the block boundary with the H.263 quantization factor QP if the RF of the block I indicates no need for reducing the ringing noise and at least one of the HBFs of the blocks I and J indicates no need for reducing the blocking artifacts, and performing a second filtering for changing a predetermined number of pixel values, which is less than that for the first filtering, if the difference between two pixels is less than the QP; performing the first filtering if the RF of the block I indicates no need for reducing the ringing noise, neither the block I nor the block J are intra-blocks, a DC component of inverse quantized coefficient (IQCs)
- the deblocking filtering for reducing blocking artifacts comprises the steps of: performing a first filtering for changing a predetermined number of pixel values near a block boundary between the blocks I and J if the second ringing flag RF 1 of the block I indicates no need for reducing the ringing noise, either the block I or the block J is an intra-block and both HBFs of the blocks I and J indicate a need for reducing the blocking artifacts; comparing the difference between two adjacent pixels around the block boundary with the H.263 quantization factor QP if the RF 1 of the block I indicates no need for reducing the ringing noise, either the block I or the block J is an intra-block, and at least one of the HBFs of the blocks I and J indicates no need for reducing the blocking artifacts, and performing a second filtering for changing a predetermined number of pixel values, which is less than that for the first filtering, if the difference between two pixels is less than the QP; performing the first filtering if the
- pixels on the horizontal block boundary between the blocks I and J are A, B, C, D, E and F, wherein the pixels C and D are the nearest pixels on the horizontal block boundary, the pixels A and F are the farthest pixels thereon, and pixels B and D are middle pixels
- 7-tab low pass filtering with coefficients (1,1,1,2,1,1,1) is performed for the six pixels during the first filtering
- the deringing filtering for reducing the ringing noise in the filtering step is performed if the ringing flag indicates a need for the deringing filtering, and is not performed if the ringing flag indicates no need for the deringing filtering, and the deringing filtering comprises the steps of: (a) detecting horizontal and vertical edges of the image data; and (b) performing a two-dimensional (2-D) signal adaptive filtering on an 8 ⁇ 8 block from which the ringing noise is to be reduced.
- step (a) for the horizontal edge detection assuming that a pixel[m,n] is the current pixel, a pixel[m][n+1] is located to the right of the pixel[m,n], a pixel[m][n ⁇ 1] is located to the left of the pixel[m,n], the difference between the pixel[m][n] and the pixel [m][n+1] is A 1 , the difference between the pixel[m][n] and the pixel[m][n ⁇ 1] is A 2 , and QP is the H.263 quantization factor, when the conditional expression ((A 1 >QP) and (A 2 >QP)) or (A 1 >2QP) or (A 2 >2QP) is satisfied, the current pixel is detected as an edge pixel, and the edge map, Edge[m][n], becomes 1.
- step (a) for the vertical edge detection assuming that the current pixel is pixel[m][n], a pixel[m+1][n] is located above the pixel[m][n], the lower pixel is pixel[m ⁇ 1][n], the difference between the pixel[m][n] and the pixel[m+1][n] is A′ 1 , the difference between the pixel[m][n] and the pixel[m ⁇ 1][n] is A′ 2 , and QP is the H.263 quantization factor, when the conditional expression ((A′ 1 >QP) and (A′ 2 >QP)) or (A′ 1 >2QP) or (A′ 2 >2QP) is satisfied, the current pixel is detected as an edge pixel, and the edge map, Edge[m][n], becomes 1.
- a 4-connected filter window is applied to the 8 ⁇ 8 block to determine whether the center pixel of the filter window is an edge pixel, and the filtering is performed if the central pixel is an edge pixel, and otherwise, a weighted filtering is performed.
- the deringing filtering for reducing the ringing noise in the filtering step is not performed if the difference between the current block I and the quantized previous block I is not greater than a predetermined value, and the difference between the current block J and the quantized previous block J is not greater than a predetermined value.
- the deringing filtering for reducing the ringing noise in the filtering step is performed if the ringing flag of the block I indicates a need for deranging filtering, and otherwise, the deringing filtering is not performed.
- the deringing filtering for reducing the ringing noise is performed when the block I is an intra block, when the block I is not an intra block and has an 8 ⁇ 8 prediction mode, and when the block I is not an intra block and has no 8 ⁇ 8 prediction mode and the RF 1 of the block I indicates no need for the deringing filtering, and the deringing filtering is not performed when the RF 1 of the block I indicates no need for the deringing filtering.
- the deringing filtering comprises the steps of: (a) detecting horizontal and vertical edges of the image data; and (b) performing a two-dimensional (2-D) signal adaptive filtering on the 8 ⁇ 8 block from which the ringing noise is to be removed.
- step (a) for the horizontal edge detection assuming that a pixel[m][n] is the current pixel, a pixel[m][n+1] is located to the right of the pixel[m][n], a pixel[m][n ⁇ 1] is located to the left of the pixel[m][n], the difference between the pixel[m][n] and the pixel[m][n+1] is A 1 , the difference between the pixel[m][n] and the pixel[m][n ⁇ 1] is A 2 , and QP is the H.
- step (a) for the vertical edge detection assuming that the current pixel is pixel[m][n], a pixel[m+1][n] is located above the pixel[m][n], a pixel[m ⁇ 1][n] is located below the pixel[m][n], the difference between the pixel[m][n] and the pixel[m+1][n] is A′ 1 , the difference between the pixel [m][n] and the pixel[m ⁇ 1][n] is A′ 2 , and QP is the H.263 quantization factor, when the conditional expression ((A 1 >QP) and (A′ 2 >QP)) or (A′ 1 >2QP) or (A′ 2 >2QP) is satisfied, the current pixel is detected as an edge pixel, and the edge trap, Edge[m][n], becomes 1.
- a 4-connected filter window is applied to the 8 ⁇ 8 block to determine whether the center pixel of the filter window is an edge pixel, and the filtering is performed if the central pixel is an edge pixel, and otherwise, a weighted filtering is performed.
- the loop-filtering method further comprises the steps of: (a) detecting a corner outlier of an 8 ⁇ 8 block of the inverse quantized image data; and (b) compensating for the detected corner outlier.
- step (a) for the detection assuming that A 0 , D 0 , C 0 and D 0 are four pixels around the point where the four corners meet, and value[ 0 ], value[ 1 ], value[ 2 ] and value[ 3 ] are pixel values of the pixels A 0 , B 0 , C 0 and D 0 respectively, the average of the pixels values is set to (A+B+C+D+2)/40, the difference between each pixel value of the average is compared to the H.263 quantization factor QP, and the number of corner outlier candidate pixels is accumulated to detect the corner outlier if the difference is greater than QP.
- the corner outlier compensation is performed using the following equation:
- the candidate which has the largest difference from (A 3 +B 3 +C 3 +D 3 +2)/40 is selected, and corner outlier compensation is performed on that point in the same manner as in the case of only one candidate.
- an apparatus for loop-filtering image data capable of reducing quantization effect generated when an image data is encoded and decoded
- the apparatus comprising: a flag extractor for extracting a flag indicating whether the image data requires loop-filtering, using distribution of inverse quantized coefficients (IQCS) of the image data, and a motion vector indicating the difference between the previous frame and the current frame; a deblocking filter for deblocking filtering the image data by investigating the blocking flag extracted by the flag extractor; a corner outlier compensator for detecting the corner outlier of the deblocking-filtered data and compensating for the detected corner outlier; and a deringing filter for deringing-filtering the corner outlier compensated data by investigating the ringing flag extracted by the flag extractor, and wherein the flags comprise a blocking flag indicating whether a need for reducing blocking artifacts near block boundaries exists, and a ringing flag indicating whether there is a need for reducing ringing noise near image edges.
- the flags comprise a blocking flag
- the invention may be embodied in a general purpose digital computer that is running a program from a computer usable medium, including but not limited to storage media such as magnetic storage media (e.g., ROM's, floppy disks, hard disks, etc.), optically readable media (e.g., CD-ROMs, DVDs, etc.) and carrier waves (e.g., transmissions over the Internet).
- storage media such as magnetic storage media (e.g., ROM's, floppy disks, hard disks, etc.), optically readable media (e.g., CD-ROMs, DVDs, etc.) and carrier waves (e.g., transmissions over the Internet).
- storage media such as magnetic storage media (e.g., ROM's, floppy disks, hard disks, etc.), optically readable media (e.g., CD-ROMs, DVDs, etc.) and carrier waves (e.g., transmissions over the Internet).
- CD-ROMs compact discs
- DVDs
- a computer readable medium having embodied thereon a computer program for loop-filtering image data, capable of reducing quantization effect generated when the image data is block-based encoded and decoded, wherein the loop-filtering comprises the steps of: (a) extracting a flag indicating whether the image data requires loop-filtering using the distribution of inverse quantized coefficients (IQCs) of an inverse quantized image data and a motion vector indicating the difference between the previous frame and the current frame; and (b) filtering the image data corresponding to the flag by a predetermined method if the extracted flag indicates a need for the loop-filtering, wherein in the step (a) the flag is extracted from a discrete cosine transform (DCT) domain of each block if an image frame to be loop-filtered is an intra frame, and from a residual signal and a reference frame if the image frame to be loop-filtered is an inter frame.
- DCT discrete cosine transform
- FIG. 1 is a block diagram of an apparatus for loop-filtering image data, capable of reducing quantization effect of the block-based image data;
- FIG. 2 shows the structure of a decoder according to the H.263+, and 8 ⁇ 8 discrete cosine transform (DCT) coefficient block inverse-quantized by an inverse quantizer of the decoder;
- DCT discrete cosine transform
- FIG. 3 shows the relationships between an 8 ⁇ 8 block ( Ac 0 ) in an inter-frame and adjacent blocks of a (reference frame;
- FIG. 4 shows an example illustrating extraction of horizontal blocking flag (HBF), vertical blocking flag (VBF) and ringing noise (RF) of the inter video object plane (VOP);
- FIG. 5 shows the block boundaries and the location of pixels adjacent to the block boundaries for illustrating the filtering of a deblocking filter for reducing blocking artifacts
- FIG. 6A shows an example of the edges of image generating corner outliers due to quantization
- FIG. 6B shows the corner outlier generated by the quantization
- FIG. 6C shows coordinates of corner points for compensating for the corner outlier
- FIG. 7A shows the kernel of a two-dimensional (2-D) signal adaptive filter (SAF);
- FIG. 7B shows an example of a 10 ⁇ 10 block for edge detection and the SAF.
- FIG. 8 shows the result of Bf_Y padding.
- an apparatus 10 for loop-filtering image data for reducing quantization effect occurring when the image data is block-base coded and decoded which is used in connection with a general encoder and decoder, comprises a flag extractor 100 , a deblocking filter 110 , a corner outlier compensator 120 and a deringing filter 130 .
- the flag extractor 100 extracts a flag using the distribution of inverse quantized coefficients (IQCs) of an inverse quantized image data, and a motion vector indicating the difference between the previous frame and the current frame.
- the flag is the information indicating whether the decoded image requires the loop-filtering, and is made up of a blocking flag and a ringing flag.
- the blocking flag indicates whether the blocking artifacts near the block boundary must be reduced, and the ringing flag indicates whether the ringing noise near the image edges must be reduced.
- the blocking flag consists of a horizontal blocking flag (HBF) indicating whether the loop-filtering is performed on the pixels of adjacent blocks around a horizontal block boundary, and a vertical blocking flag (VBF) indicating whether the loop-filtering is performed on the pixels of adjacent blocks around a vertical blocking boundary.
- HAF horizontal blocking flag
- VBF vertical blocking flag
- each inter frame is composed of a P frame and a PB frame.
- the distribution of IQCs of the inverse quantized image data is utilized for the flag extraction on the intra frames.
- the flag extraction on the inter frames utilizes the motion vector indicating the difference between the previous frame and the current frame, and a detailed description of this will be provided later.
- the deblocking filter 110 checks the blocking flag extracted by the flag extractor 100 using one-dimensional (1-D) horizontal and vertical low pass filters (LPFs), thereby deblocking-filtering the image data.
- (1-D) horizontal and vertical low pass filters LPFs
- the outlier compensator 120 detects the corner outlier of the data passed through the deblocking filter 110 , and compensates for the detected corner outliers.
- the deringing filter 130 checks the ringing flag extracted by the flag extractor 100 using a 2-D signal adaptive filter (SAF), to deringing-filter the corner outlier compensated data.
- SAF 2-D signal adaptive filter
- the basic idea of the loop-filtering method on the image data according to the present invention is to adaptively filter using spatial frequency and temporal information to reduce the quantization effect.
- the distribution of the IQCs is investigated to extract the information of blocking artifacts and ringing noise in every 8 ⁇ 8 block.
- a 1-D LPF and a 2-D SAF are adaptively applied in every 8 ⁇ 8 block using the blocking and ring flags.
- the ringing flag being set as one ringing flag (RF) in the first embodiment and being set as two, first and second ringing flags RF 0 and RF 1 , in the second embodiment.
- RF ringing flag
- first and second ringing flags RF 0 and RF 1 first and second ringing flags
- the blocking flags In order to reduce the quantization effects in the H.263+, two kinds of flags are defined: the blocking flags and the ringing flags.
- the blocking and the ringing flags are extracted from the DCT domain of each 8 ⁇ 8 block in the intra-macro block (MB). Also, the flags of the inter-MB are calculated from both a residual signal and flags of a reference video object plane (VOP).
- VOP reference video object plane
- FIG. 2 shows the block diagram of a H.263+decoder and the DCT coefficients after inverse quantization.
- the coefficients of A, B and C are used for deciding the blocking and the ringing flags.
- both the HBF and the VBF of the block are set to 1.
- the eight pixels in each column have the same value in the spatial domain. This block may induce vertical blocking artifacts, so the VBF is set to 1.
- the eight pixels in each row have the same value in the spatial domain. This block may induce horizontal blocking artifacts, so the HBF is set to 1.
- the ringing flag RF is set to 1 if a non-zero coefficients exists in positions other than A, B and C in FIG. 2 .
- the first ringing flag RF 0 is set to 1 if a non-zero coefficients exists in positions other than A, B and C in FIG. 2 .
- the block includes image edges. Therefore, the block produces ringing noise around the image edges due to the truncation of the high-frequency coefficients.
- the second ringing flag RF 1 is not used in Intra MB.
- the blocking flags in the reference frames are propagated to the next Inter MB by using the motion vectors. Also, the residual signal of the inter block is used to decide the flag of the inter-block.
- the propagation of the blocking flag from the reference frame to the inter frame is as follows.
- FIG. 3 shows the relationship between the 8 ⁇ 8 block (A c 0 ) in the inter-frame and the adjacent blocks of the reference frame.
- the propagation of the blocking flag is described by the motion vectors MV x 0 and MV y 0 as follows.
- a r 0 , B r 0 , C r 0 and D r 0 are the blocks of the reference frame.
- a c 0 is a block in the current inter-frame
- X 0 is the motion block of A c 0 , which is estimated by using the motion vector (MV x 0 , MV y 0 ).
- the degree of overlapping of the motion vector X 0 and the reference block is investigated.
- the HBF and the VBF of the current block A c 0 can be calculated by a bit-wise AND operation on the HBF and the VBF of the reference blocks which are overlapped by the motion-estimated block X 0 .
- the motion-estimated block X 0 is overlapped with four reference blocks A r 0 , B r 0 , C r 0 and D r 0 .
- the four overlapped regions are all wider than 2 ⁇ 2 pixels.
- the HBS and the VBS of the current block A c 0 can be calculated from the four reference blocks A r 0 , B r 0 , C r 0 and D r 0 as shown in FIG. 4 .
- ‘&’ indicates the bit-wise AND operation.
- the RF of the reference block A c 0 is set to 1 if the IQC of the residual signals in the 8 ⁇ 8 block of the inter-frame is non-zero. Transferring four motion vectors for one MB is called an 8 ⁇ 8 prediction mode.
- the 8 ⁇ 8 prediction mode is applied to a busy area, most having a high-frequency component. Thus, it is investigated whether or not the block has the 8 ⁇ 8 prediction mode, and the RF of the block having the 8 ⁇ 8 prediction mode is set to 1.
- the blocking flags in the reference frame are propagated to the next Inter MB by using the motion vectors.
- the residual signal of the inter block is used to decide the flag of the inter-block. If the current MB is the skipped MB (COD- 1 ), the blocking flags of six blocks (four for Y,. one for C b 0 and one for C r 0 ) in the reference MB are duplicated to the corresponding blocks of the current MB.
- the propagation of the blocking flag from the reference frame to the inter-frame is similar to the first embodiment.
- the AND operation for calculating the HBS and the VBS of the current block A c 0 is applied to the blocks whose overlapped region with the block X 0 is wider than 1 ⁇ 1 pixel, unlike the first embodiment in which the AND operation is applied to the blocks whose overlapped region with the block X 0 is wider than 2 ⁇ 2 pixels.
- the motion-estimated block X 0 is overlapped with four reference blocks A r 0 , B r 0 , C r 0 and D r 0 .
- the four overlapped regions are all wider than 1 ⁇ 1 pixel.
- the RF 0 of the block A c 0 is set to 1 if only the DC component of the IQC is non-zero and the other components are all zero. Also, the RF 1 of the reference block A c 0 is set to 1 if any AC components of IQC of the residual signals are non-zero.
- the 8 ⁇ 8 prediction mode is considered in the ringing filtering.
- the deblocking filter 110 the corner outlier compensator 120 and the deringing filter 130 will be described in detail.
- One-D LPF for reducing the blocking artifacts is performed strongly or weakly, depending on the blocking flags, on the horizontal and vertical block boundaries. According to most deblocking methods for reducing the blocking artifacts, image-edge information is calculated and a LPF is adaptively used based on the image edges. However, the deblocking method according to the present invention uses the blocking flag obtained above, so that image edge detection which requires a large amount of calculation is not necessary.
- the algorithm of the horizontal deblocking filtering in the first embodiment is expressed as follows.
- a block constituting a frame to be loop-filtered is BLOCK_I
- the block adjacent to the BLOCK_I is BLOCK_J
- the difference between the current BLOCK_I and the previous quantized BLOCK_I is not greater than a predetermined value
- the difference between the current BLOCK_J and the previous quantized BLOCK_J is not greater than a predetermined value
- a first filtering strong deblocking filtering for changing a predetermined number of pixel values near the horizontal block boundary between BLOCK_I and BLOCK_J is performed.
- both RFs of BLOCK_I and BLOCK_J indicate that there is no need for reduction of ringing noise and at least one of the HBFs of BLOCK_I and BLOCK_J indicates that reduction of the blocking artifacts is not necessary, or when at least one of the RFs of BLOCK_I and BLOCK_J indicates that reduction of ringing noise is necessary, and the difference between the adjacent two pixels near the horizontal block boundary is less than the H.263 quantization factor (QP), a second filtering (weak deblocking filtering) for changing pixel values whose number is smaller than in the first filtering is performed.
- QP H.263 quantization factor
- filtering on the pixels near the vertical block boundary is performed in the same manner as for the pixels near the horizontal block boundary, using the VBF.
- the deblocking filtering for reducing the blocking artifacts when the RF of BLOCK_I indicates that there is no need for reduction of ringing noise, one of BLOCK_I and BLOCK_J is an intra-block (INTRA) and both HBFs of BLOCK_I and BLOCK_J indicate that reduction of the blocking artifacts is necessary, the first filtering for changing a predetermined number of pixel values near the horizontal block boundary between BLOCK_I and BLOCK_J is performed.
- the second filtering is performed on the pixels C and D.
- a block constituting a frame to be loop-filtered is BLOCK_I
- the block adjacent to the BLOCK_I are BLOCK_J
- the difference between the current BLOCK_I and the previous quantized BLOCK_I is not greater than a predetermined value and the difference between the current BLOCK_J and the previous quantized BLOCK_I is not greater than a predetermined value
- the deblocking filtering is not performed.
- first filtering strong deblocking filtering for changing a predetermined number of pixel values near the horizontal block boundary between BLOCK_I and BLOCK_J is performed.
- both BLOCK_I and BLOCK_J indicate that there is no need for reduction of ringing noise and at least one of the HBFs of BLOCK_I and BLOCK_J indicates that reduction of the blocking artifacts is not necessary, or when at least one of the RF 0 s of BLOCK_I and BLOCK_J indicates that reduction of ringing noise is necessary, and the difference between the adjacent two pixels near the horizontal block boundary is less than the H.263 quantization factor (QP), a second filtering (weak deblocking filtering) for changing pixel values whose number is smaller than in the first filtering is performed.
- QP H.263 quantization factor
- filtering on the pixels near the vertical block boundary is performed in the same manner as for the pixels near the horizontal block boundary, using the VBF.
- the first filtering strong deblocking filtering for changing a predetermined number of pixel values near the horizontal block boundary between BLOCK_I and BLOCK_J is performed.
- any one of the HBFs of BLOCK_I and BLOCK_J indicates that there is no need for reduction of the blocking artifacts, and the difference between the adjacent two pixels near the horizontal block boundary is less than the H.263 quantization factor (QP), the second filtering (weak deblocking filtering) for changing pixel values whose number is smaller than in the first filtering is performed.
- QP H.263 quantization factor
- the second filtering (weak deblocking filtering) is performed.
- filtering on the pixels near the vertical block boundary is performed in the same manner as for the pixels near the horizontal block boundary, using the VBF.
- first and second filterings are performed in the same manner as those of the first embodiment.
- Corner outlier compensation is only performed for INTRA frame.
- a corner outlier is characterized by a pixel which is either much larger or much smaller than its neighboring pixels at the corner point of an 8 ⁇ 8 block as shown in FIGS. 6A through 6C .
- FIG. 6A when a dark-gray region is distributed over four blocks and one or two pixels of the dark-gray region are located at the corner points of neighboring blocks, the corner points can be distorted by quantization of the DCT coefficients as shown in FIG. 6B . Such distortion of the corner points is called a corner outlier.
- the corner outlier cannot be removed by deblocking and deringing filters. In order to reduce the corner outlier, the corner outlier must be detected and compensated for.
- FIG. 6C describes a simple coordination for corner outlier detection, where A 0 , B 0 , C 0 and D 0 are the pixel values of the corner points of the 8 ⁇ 8 pixels.
- a 0 is the only candidate point in FIG. 6C and
- corner outlier compensation is performed on A 0 , A 1 0 and A 2 0 as follows. Assuming that compensated values for A 0 , A 1 0 and A 2 0 are A′ 0 , A 1 ′ 0 and A 2 ′ 0 , respectively, A′ 0 , A 1 ′ 0 and A 2 ′ 0 are determined by Equation (1).
- the candidate which has the largest difference from (A 3 +B 3 +C 3 +D 3 +2)/4 is selected, and corner outlier compensation is performed on that point in the same way as in the case of only one candidate.
- B 3 , C 3 and D 3 indicate pixels diagonal to the pixels A, B, C, respectively.
- RF is investigated prior to applying the deringing filtering for each block. If the RF of the current block is 1, deringing filtering is applied to the current block. In order to prevent the image details from being distorted by filtering, simple edge detection is performed before filtering. As shown in FIGS. 7A and 7B , edge detection and 2-D signal adaptive filtering are applied to an 8 ⁇ 8 block having a non-zero ringing flag. This is because the boundary pixels are made smooth by the deblocking filter.
- the ringing flags i.e., RF 0 and RF 1 .
- the algorithm for determining whether to perform deringing filtering for decreasing the ringing noise is expressed as follows.
- the ringing flag of BLOCK_I requires the deringing filtering.
- the deringing filtering is performed if the deringing filtering is required, and otherwise, the deringing filtering is not performed.
- a determination of whether to perform the deringing filtering for reducing the ringing noise is made as follows. That is, if BLOCK_I is an intra-block, deringing filtering is performed. If BLOCK_I is not an intra-frame and has 8 ⁇ 8 prediction mode, deringing filtering is performed. In the case where BLOCK_I is not the intra-block and has no 8 ⁇ 8 prediction mode, if the RF 1 of BLOCK_I indicates a need for ringing filtering, the deringing filtering is performed. If the RF 1 of BLOCK_I indicates no need of ringing filtering, deringing filtering is not performed.
- the deringing filtering is composed of edge detection and 2-D signal adaptive filtering.
- simple edge detection is performed before filtering.
- Edge detection and 2-D signal adaptive filtering are applied to an 8 ⁇ 8 block in the case that the above condition is satisfied to reduce the ringing noise as shown in FIGS. 7A and 7B .
- Edge detection in the first and second embodiments of the deringing filtering will be described.
- One-D horizontal and vertical gradient operators are applied to the reconstructed blocks in order to fine the image edges.
- the threshold value for deciding the edge pixels is selected from the H.263 quantization factor QP.
- edge information In order for 2-D SAF to be applied to 8 ⁇ 8 pixels, edge information must be obtained for a 10 ⁇ 10 which is the current block, as shown in FIG. 7B .
- the edge map, ‘Edge[m][n], is obtained from pixel values, pixel[m][n], according to the following algorithm.
- the deringing filtering using the 2-D SAF is proposed to smooth the ringing noise without significant loss of image details.
- the deringing filtering according to the present invention is a simple convolution operation in which the weighting factors for the convolution are varied according to the edge map.
- the SAF is applied to the decoded block by using Edge map[m][n].
- the kernel for 2-D SAF is shown in FIG. 7A .
- the 2-D filtering operation is not performed (EXAMPLE 1 in FIG. 7B ). If no edge point is included in the 4-connected filter window, low-pass filtering is performed (EXAMPLE 2 in FIG.
- Bf_Y Blocking flags for Y
- Bf_Cb Blocking flags for Cb
- Bf_Cr Blocking flags for Cr
- the top/bottom row elements of Bf_Y are replicated vertically in order to expand Bf_Y and horizontal repetitive padding is performed on the far left/right column elements of Bf_Y after the vertical repetitive padding.
- the resulting size becomes (M+8) ⁇ (N+8).
- the original size of Bf_Cb and Cf_Cr is M/2 ⁇ N/2, the resulting sizes become (M/2+4) ⁇ (N/2+4).
- FIG. 8 shows the result of Bf_Y padding.
- the padding can be performed using various methods. For example, the padding may be performed by replicating the blocking flag of a reference frame. When a new frame to be loop-filtered enters, the padding is performed once. Then, the blocking flags of the corresponding macro block are obtained using the padded blocking flags.
- the invention may be embodied in a general purpose digital computer that is running a program from a computer usable medium, including but not limited to storage media such as magnetic storage media (e.g., ROM's, floppy disks, hard disks, etc.), optically readable media (e.g., CD-ROMs, DVDs, etc.) and carrier waves (e.g., transmissions over the Internet).
- storage media such as magnetic storage media (e.g., ROM's, floppy disks, hard disks, etc.), optically readable media (e.g., CD-ROMs, DVDs, etc.) and carrier waves (e.g., transmissions over the Internet).
- the present invention may be embodied as a computer usable medium having a computer readable program code unit embodied therein for loop-filtering for reducing the quantization effect generated when encoding and decoding the image data
- the computer readable program code means in the computer usable medium comprising: computer readable program code means causing a computer to effect extracting a flag indicating whether the image data requires loop-filtering using the distribution of IQCs of an inverse quantized image data, and a motion vector indicating the difference between the previous frame and the current frame; and computer readable program code means causing a computer to effect filtering the image data corresponding the flag by a predetermined method if the extracted flag indicates a need for the loop-filtering.
- a functional program, code and code segments, used to implement the present invention can be derived by a skilled computer programmer from the description of the invention contained herein.
- the loop-filtering method reduces the quantization effect using the flags and adaptive filter.
- the blocking and ringing flags of each block contribute to reduce the amount of computation in loop-filtering.
- the motion vector of the inter-frame is used.
- the complexity in computation and PSNR must be considered.
- the method according to the present invention can be performed by a parallel processing without multiplication and division, thereby reducing the complexity of hardware.
- the loop-filtering according to the present invention can greatly improve the subjective quality while maintaining image details, so that the loop-filtering can be applied widely.
Abstract
A loop-filtering method for reducing quantization effect generated when an image data is encoded and decoded, and an apparatus therefor. The loop-filtering method includes the steps of extracting a flag indicating whether the image data requires loop-filtering using the distribution of inverse quantized coefficients (IQCs) of an inverse quantized image data and a motion vector indicating the difference between the previous frame and the current frame. The image data corresponding to the flag is then filtered by a predetermined method if the extracted flag indicates a need for the loop-filtering. Using the flags and an adaptive filter reduces the quantization effect and is useful to reduce the amount of computation required for the filtering. Also, the filtering can be performed through parallel processing without multiplication and division, so that the complexity of hardware can be reduced.
Description
- This is a divisional of application Ser. No. 10/405,642 filed Apr. 3, 2003, which is a Continuation Application of U.S. application Ser. No. 09/302,989 filed Apr. 30, 1999. The entire disclosures of the prior applications, U.S. patent application Ser. Nos. 10/405,642 and 09/302,989 are hereby incorporated by reference.
- 1. Field of the Invention
- The present invention relates to image data processing, and more particularly, to a method for loop-filtering image data to reduce a quantization effect and an apparatus therefor.
- 2. Description of the Related Art
- Generally, picture encoding standards such as MPEG of the International Standardization Organization (ISO) and H.263 recommended by the International Telecommunication Union (ITU) adopt block-based motion estimation and discrete cosine transform (DCT) blocks. Most picture encoding standards utilize the DCT in 8.times.8 pixel block units in order to pack information with a small number of transform coefficients. This block-based DCT scheme is based on the local spatial correlation properties of an image.
- However, when the block-based image data is restored, considerable image deterioration, for example, blocking artifacts near the block boundary, corner outliers at the cross points of blocks, and ringing noise near the image edges, occurs. This is because the image data go through the DCT in 8.times.8 pixel block units prior to quantization. Such deterioration is serious when the image is highly compressed.
- Blocking artifacts are caused by grid noise generated along the block boundary in a relatively homogeneous area. The grid noise shows traces of the block-based process at the edges between blocks when the compressed data is displayed on a screen after being restored. Thus, the edges between blocks are noticeable. The corner outlier is generated where the corners of the 8.times.8 blocks meet. Also, the ringing noise is a typical Gibb's phenomenon occurring by truncation when the coefficients of high-frequency components of the DCT are quantized so as to highly compress the image. Due to the ringing noise, one can notice overlapping of images with a predetermined interval.
- In order to reduce the blocking artifacts, the corner outliers and the ringing noise occurring when block-based coding is performed, several methods have been suggested. A single-adaptive filtering (SAF) method has been introduced in order to reduce the quantization effect of JPEG-decompressed images by Y. L Lee, H. C. Kim, and H. W Park (“Blocking Effect Reduction of JPEG images by Signal Adaptive Filtering” in Press IEEE Trans. On Image Processing, 1997]. B. Ramanuurthi and A. Gersho have suggested a method in which a two-dimensional (2-D) filter is used to reduce the blocking artifact while a one-dimensional (1-D) filter is used to reduce staircase noise [“Nonlinear Space Variant Postprocessing of Block Coded Images”, IEEE Trans. on ASSP, Vol. 34, No. 5, pp 1258-1267, 1986]. Also, an iterative image-recovery algorithm using the theory of projections onto convex sets (POCS) has been proposed by Y. Ynag, N. Galatsanos and A Katsaggelos [“Projection-Based Spatially Adaptive Reconstruction of Block-Transform Compressed Images,” IEEE Trans. on Image Processing, Vol. 4., No. 7, pp 896-908, July 1995]. Also, an article entitled “A Deblocking Algorithm for JPEG compressed Images Using Overcomplete Wavelet Representations” has been disclosed by Z. Xiong, M. T. Orchard and Y. Q. Zhang [IEEE Trans. Circuits System Video Technology, Vol. 7, No. 2, pp 433-437, 1997].
- However, the above methods require complicated computations.
- To solve the above problems, it is an object of the present invention is to provide a method for loop-filtering image data and an apparatus therefor, capable of encoding at a low bit rate without need for complicated computations, by which quantization effects such as blocking artifacts, corner outliers and ringing noise caused by block-based decoding can be reduced.
- According to one aspect of the object, there is provided a loop-filtering method for reducing quantization effect generated when an image data is encoded and decoded, the method comprising the steps of: extracting a flag indicating whether the image data requires loop-filtering using the distribution of inverse quantized coefficients (IQCs) of an inverse quantized image data and a motion vector indicating the difference between the previous frame and the current frame; and filtering the image data corresponding to the flag by a predetermined method if the extracted flag indicates a need for the loop-filtering.
- Preferably, in the extracting step, the flag is extracted from a discrete cosine transform (DCT) domain of each block if an image frame to be loop-filtered is an intra frame, and from a residual signal and a reference frame if the image frame to be loop-filtered is an inter frame.
- Preferably, the flag comprises a blocking flag indicating whether reduction of blocking artifacts near block boundaries is required, and a ringing flag indicating whether reduction of ringing noise near image edges is required.
- Preferably, in the case where the image data is an intra frame, the blocking flag of the intra frame comprises a horizontal blocking flag (HBF) and a vertical blocking flag (VBF), wherein the horizontal and vertical blocking flag extraction of the intra frame comprises the steps of: calculating DCT coefficients of the inverse quantized 8×8 block after the compressed image data is inverse quantized; assuming that a pixel A (DC coefficient) is located at the top, far left corner of an 8×8 block consisting of 64 pixels, a pixel B is located to the right of the pixel A, and a pixel C is located below the pixel A, setting the HBF and the VBF to “1” indicating a need for the loop-filtering if only the coefficients in pixels A are non-zero; setting the VBF to “1” indicating a need for the loop-filtering if only the top row of the inverse quantized 8×8 block is non-zero; and setting the HBF to “1” indicating a need for the loop-filtering if only the far left column of the inverse quantized 8×8 block is non-zero.
- Preferably, in the extraction of the ringing flag from the intra frame, assuming that a pixel A (DC coefficient) is located at the top, far left corner of the 8×8 block consisting of 64 pixels, a pixel B is located to the right of the pixel A, and a pixel C is located below the pixel A, ringing flag RF is set to “1” indicating a need for loop-filtering when any pixel other than the pixels A, B and C of the inverse quantized 8×8 block has a non-zero coefficient.
- Preferably, the blocking flag of the current inter frame comprises a horizontal blocking flag and a vertical blocking flag, wherein assuming that a reference frame comprises a predetermined number of reference blocks, a block of the reference frame predicted by a motion vector (
MV x 0, MVy 0) of theblock A c 0 of the current inter frame is a motion block X0, the horizontal and vertical blocking flag extraction on ablock A c 0 of the current inter frame comprises the steps of: investigating the degree of overlapping between the motion block X0 and the reference blocks; bit-wise AND-operating the HBF and the VBF of the reference blocks having a predetermined number of overlapped pixels; and setting the result of the bit-wise AND operation as horizontal and vertical blocking flags of theblock A c 0 of the current video object plane (VOP). - Preferably, the horizontal and vertical blocking flag extraction on the
block A c 0 of the current inter frame further comprises the step of setting the blocking flag of the reference macro block as the blocking flag of the current macroblock if a motion vector of the current macro block is a skipped macro block having zero motion vector. - Preferably, the horizontal and vertical blocking flag extraction on the
block A c 0 of the current inter frame further comprises the step of padding the blocking flag of the reference block after replicating the blocking flag. - Preferably, the ringing flag extraction on a
block A c 0 of the current inter frame in the case where the image frame is an inter frame, comprises the steps of: setting a ringing flag RF of thecurrent block A c 0 to ‘1’ if any AC component of inverse quantized coefficients (IQCs) of a residual signal of the 8×8 inter blocks is non-zero, and to ‘0’ if all IS AC components of the IQCs are zero; and setting the RF to ‘1’ when the current block is in an 8×8 prediction mode for transferring a motion vector on the macro block. - Preferably, in the case where the image data is an inter frame, the ringing flag of the inter frame comprises a first ringing flag (RF0) and a second ringing flag (RF1), wherein extraction of the first and second ringing flags RF0 and RF1 on a
block A c 0 of the current inter frame comprise the steps of: setting the first ringing flag RF0 of thecurrent block A c 0 to ‘1’ if only the DC components of inverse quantized coefficients (IQCs) of a residual signal of the 8×8 inter macro blocks are non-zero, and otherwise, setting the RF0 of thecurrent block A c 0 to ‘0’; and setting the second ringing flag RF1 of thecurrent block A c 0 to ‘1’ if any AC component of the IQCs of the residual signal of the 8×8 inter frames is non-zero, and otherwise, setting the RF1 of thecurrent block A c 0 to ‘0’. - Preferably, assuming that a predetermined block constituting a frame to be loop-filtered is a block I and a block adjacent to the block I is a block J, the difference between the current block I and the quantized previous block I is not greater than a predetermined value, and the difference between the current block J and the quantized previous block J is not greater than a predetermined value, deblocking filtering is not performed in the filtering step.
- Preferably, the deblocking filtering for reducing blocking artifacts comprises the steps of: performing a first filtering for changing a predetermined number of pixel values near a horizontal block boundary between the blocks I and J if the RFs of the blocks I and J indicate no need for reducing the ringing noise, and both HBFs of the blocks I and J indicate a need for reducing the blocking artifacts; and comparing the difference between two adjacent pixels around the block boundary with the H.263 quantization factor QP if both RFs of the blocks I and J indicate no need for reducing the ringing noise and at least one of the HBFs of the blocks I and J indicates no need for reducing the blocking artifacts, or if at least one of RFs of the blocks I and J indicate a need for reducing the ringing noise, and changing a predetermined number of pixel values, which is less than that for the first filtering, if the difference between two pixels is less than the QP.
- Preferably, the deblocking filtering for reducing blocking artifacts comprises the steps of: performing a first filtering for changing a predetermined number of pixel values near a block boundary between the blocks I and J if the RF of the block I indicates no need for reducing the ringing noise, and both blocks I and J are intra-blocks; and comparing the difference between two adjacent pixels around the block boundary with the H.263 quantization factor QP if the RF of the block I indicates no need for reducing the ringing noise and at least one of the HBFs of the blocks I and J indicates no need for reducing the blocking artifacts, and performing a second filtering for changing a predetermined number of pixel values, which is less than that for the first filtering, if the difference between two pixels is less than the QP; performing the first filtering if the RF of the block I indicates no need for reducing the ringing noise, neither the block I nor the block J are intra-blocks, a DC component of inverse quantized coefficient (IQCs) of a residual signal of the block I or J exists, and both HBFs of the blocks I and J are ‘1’; performing the second filtering if the RF of the block I indicates no need for reducing the ringing noise, neither the block I nor the block J are intra-blocks, a DC component of inverse quantized coefficient (IQCs) of a residual signal of the block I or J exists, and at least one HBF of the blocks I and J is zero; and performing the second filtering if the RF of the block I indicates a need for reducing the ringing noise.
- Preferably, the deblocking filtering for reducing blocking artifacts comprises the steps of: performing a first filtering for changing a predetermined number of pixel values near a block boundary between the blocks I and J if the second ringing flag RF1 of the block I indicates no need for reducing the ringing noise, either the block I or the block J is an intra-block and both HBFs of the blocks I and J indicate a need for reducing the blocking artifacts; comparing the difference between two adjacent pixels around the block boundary with the H.263 quantization factor QP if the RF1 of the block I indicates no need for reducing the ringing noise, either the block I or the block J is an intra-block, and at least one of the HBFs of the blocks I and J indicates no need for reducing the blocking artifacts, and performing a second filtering for changing a predetermined number of pixel values, which is less than that for the first filtering, if the difference between two pixels is less than the QP; performing the first filtering if the RF1 of the block I indicates no need for reducing the ringing noise, neither the block I nor the block J are intra-blocks, at least one of RF0s of the blocks I and J is ‘1’ and both HBFs of the blocks I and J are ‘1’; performing the second filtering if the RF1 of the block I indicates no need for reducing the ringing noise, neither the block I nor the block J are intra-blocks, at least one of RF0s of the blocks I and J is ‘1’, and at least one of the HBFs of the blocks I and J is not 1; and performing the second filtering if the RF1 of the block I is non-zero.
- Preferably, assuming that six pixels on the horizontal block boundary between the blocks I and J are A, B, C, D, E and F, wherein the pixels C and D are the nearest pixels on the horizontal block boundary, the pixels A and F are the farthest pixels thereon, and pixels B and D are middle pixels, 7-tab low pass filtering with coefficients (1,1,1,2,1,1,1) is performed for the six pixels during the first filtering, and the second filtering is performed on the pixels C and D, wherein two pixels C and D are replaced as C=C+(D−C)/4 and D=D+(D−C)/4 if the absolute value of the difference between the pixels C and D is smaller than the QP of the H.263.
- Preferably, the deringing filtering for reducing the ringing noise in the filtering step is performed if the ringing flag indicates a need for the deringing filtering, and is not performed if the ringing flag indicates no need for the deringing filtering, and the deringing filtering comprises the steps of: (a) detecting horizontal and vertical edges of the image data; and (b) performing a two-dimensional (2-D) signal adaptive filtering on an 8×8 block from which the ringing noise is to be reduced. In the step (a) for the horizontal edge detection, assuming that a pixel[m,n] is the current pixel, a pixel[m][n+1] is located to the right of the pixel[m,n], a pixel[m][n−1] is located to the left of the pixel[m,n], the difference between the pixel[m][n] and the pixel [m][n+1] is A1, the difference between the pixel[m][n] and the pixel[m][n−1] is A2, and QP is the H.263 quantization factor, when the conditional expression ((A1>QP) and (A2>QP)) or (A1>2QP) or (A2>2QP) is satisfied, the current pixel is detected as an edge pixel, and the edge map, Edge[m][n], becomes 1. Also, in the step (a) for the vertical edge detection, assuming that the current pixel is pixel[m][n], a pixel[m+1][n] is located above the pixel[m][n], the lower pixel is pixel[m−1][n], the difference between the pixel[m][n] and the pixel[m+1][n] is A′1, the difference between the pixel[m][n] and the pixel[m−1][n] is A′2, and QP is the H.263 quantization factor, when the conditional expression ((A′1>QP) and (A′2>QP)) or (A′1>2QP) or (A′2>2QP) is satisfied, the current pixel is detected as an edge pixel, and the edge map, Edge[m][n], becomes 1. In the step (b) for the signal adaptive filtering, a 4-connected filter window is applied to the 8×8 block to determine whether the center pixel of the filter window is an edge pixel, and the filtering is performed if the central pixel is an edge pixel, and otherwise, a weighted filtering is performed.
- Preferably, the deringing filtering for reducing the ringing noise in the filtering step is not performed if the difference between the current block I and the quantized previous block I is not greater than a predetermined value, and the difference between the current block J and the quantized previous block J is not greater than a predetermined value.
- Preferably, the deringing filtering for reducing the ringing noise in the filtering step is performed if the ringing flag of the block I indicates a need for deranging filtering, and otherwise, the deringing filtering is not performed.
- Preferably, the deringing filtering for reducing the ringing noise is performed when the block I is an intra block, when the block I is not an intra block and has an 8×8 prediction mode, and when the block I is not an intra block and has no 8×8 prediction mode and the RF1 of the block I indicates no need for the deringing filtering, and the deringing filtering is not performed when the RF1 of the block I indicates no need for the deringing filtering.
- Preferably, the deringing filtering comprises the steps of: (a) detecting horizontal and vertical edges of the image data; and (b) performing a two-dimensional (2-D) signal adaptive filtering on the 8×8 block from which the ringing noise is to be removed. In the step (a) for the horizontal edge detection, assuming that a pixel[m][n] is the current pixel, a pixel[m][n+1] is located to the right of the pixel[m][n], a pixel[m][n−1] is located to the left of the pixel[m][n], the difference between the pixel[m][n] and the pixel[m][n+1] is A1, the difference between the pixel[m][n] and the pixel[m][n−1] is A2, and QP is the H. 263 quantization factor, when the conditional expression ((A1>QP) and (A2>QP)) or (A1>2QP) or (A2>2QP) is satisfied, the current pixel is detected as an edge pixel, and the edge map, Edge[m][n], becomes 1. Also, in the step (a) for the vertical edge detection, assuming that the current pixel is pixel[m][n], a pixel[m+1][n] is located above the pixel[m][n], a pixel[m−1][n] is located below the pixel[m][n], the difference between the pixel[m][n] and the pixel[m+1][n] is A′1, the difference between the pixel [m][n] and the pixel[m−1][n] is A′2, and QP is the H.263 quantization factor, when the conditional expression ((A1>QP) and (A′2>QP)) or (A′1>2QP) or (A′2>2QP) is satisfied, the current pixel is detected as an edge pixel, and the edge trap, Edge[m][n], becomes 1. In addition, in the step (b) for the signal adaptive filtering a 4-connected filter window is applied to the 8×8 block to determine whether the center pixel of the filter window is an edge pixel, and the filtering is performed if the central pixel is an edge pixel, and otherwise, a weighted filtering is performed.
- Preferably, for reducing corner outlier generated at the point where the corners of four blocks meet when the image data is block-based coded and decoded, the loop-filtering method further comprises the steps of: (a) detecting a corner outlier of an 8×8 block of the inverse quantized image data; and (b) compensating for the detected corner outlier. In the step (a) for the detection, assuming that A0, D0, C0 and D0 are four pixels around the point where the four corners meet, and value[0], value[1], value[2] and value[3] are pixel values of the pixels A0, B0, C0 and D0 respectively, the average of the pixels values is set to (A+B+C+D+2)/40, the difference between each pixel value of the average is compared to the H.263 quantization factor QP, and the number of corner outlier candidate pixels is accumulated to detect the corner outlier if the difference is greater than QP. Also, in the step (b) for the compensation, assuming that
A 1 0 and A2 0 are pixels adjacent to the pixel A0 andA 3 0 is a pixel diagonal to the pixel A0 in the same block of the pixel A0, and A′0, A1′0 and A2′0 are the compensated values of the pixels A′0, A1′0 and A2′0, respectively, when only one corner outlier candidate is detected and the detected candidate is the pixel A0 and the difference between the pixels A0 andA 3 0 is less than 3QP/2, the corner outlier compensation is performed using the following equation: -
A′=(4A+B+C+2D+4)/8 A 1′=(A′+3A 1+2/4 A 2′=(A′+3A 2+2)/4, - and when the number of candidates is more than two, the candidate which has the largest difference from (A3+B3+C3+D3+2)/40 is selected, and corner outlier compensation is performed on that point in the same manner as in the case of only one candidate.
- According to another aspect of the object, there is provided an apparatus for loop-filtering image data, capable of reducing quantization effect generated when an image data is encoded and decoded, the apparatus comprising: a flag extractor for extracting a flag indicating whether the image data requires loop-filtering, using distribution of inverse quantized coefficients (IQCS) of the image data, and a motion vector indicating the difference between the previous frame and the current frame; a deblocking filter for deblocking filtering the image data by investigating the blocking flag extracted by the flag extractor; a corner outlier compensator for detecting the corner outlier of the deblocking-filtered data and compensating for the detected corner outlier; and a deringing filter for deringing-filtering the corner outlier compensated data by investigating the ringing flag extracted by the flag extractor, and wherein the flags comprise a blocking flag indicating whether a need for reducing blocking artifacts near block boundaries exists, and a ringing flag indicating whether there is a need for reducing ringing noise near image edges.
- The invention may be embodied in a general purpose digital computer that is running a program from a computer usable medium, including but not limited to storage media such as magnetic storage media (e.g., ROM's, floppy disks, hard disks, etc.), optically readable media (e.g., CD-ROMs, DVDs, etc.) and carrier waves (e.g., transmissions over the Internet). Hence, the present invention may be embodied as a computer usable medium.
- According to still another aspect of the present invention, there is provided a computer readable medium having embodied thereon a computer program for loop-filtering image data, capable of reducing quantization effect generated when the image data is block-based encoded and decoded, wherein the loop-filtering comprises the steps of: (a) extracting a flag indicating whether the image data requires loop-filtering using the distribution of inverse quantized coefficients (IQCs) of an inverse quantized image data and a motion vector indicating the difference between the previous frame and the current frame; and (b) filtering the image data corresponding to the flag by a predetermined method if the extracted flag indicates a need for the loop-filtering, wherein in the step (a) the flag is extracted from a discrete cosine transform (DCT) domain of each block if an image frame to be loop-filtered is an intra frame, and from a residual signal and a reference frame if the image frame to be loop-filtered is an inter frame.
- The above object and advantages of the present invention will become more apparent by describing in detail preferred embodiments thereof with reference to the attached drawings in which.
-
FIG. 1 is a block diagram of an apparatus for loop-filtering image data, capable of reducing quantization effect of the block-based image data; -
FIG. 2 shows the structure of a decoder according to the H.263+, and 8×8 discrete cosine transform (DCT) coefficient block inverse-quantized by an inverse quantizer of the decoder; -
FIG. 3 shows the relationships between an 8×8 block (Ac 0) in an inter-frame and adjacent blocks of a (reference frame; -
FIG. 4 shows an example illustrating extraction of horizontal blocking flag (HBF), vertical blocking flag (VBF) and ringing noise (RF) of the inter video object plane (VOP); -
FIG. 5 shows the block boundaries and the location of pixels adjacent to the block boundaries for illustrating the filtering of a deblocking filter for reducing blocking artifacts; -
FIG. 6A shows an example of the edges of image generating corner outliers due to quantization, -
FIG. 6B shows the corner outlier generated by the quantization, and -
FIG. 6C shows coordinates of corner points for compensating for the corner outlier; -
FIG. 7A shows the kernel of a two-dimensional (2-D) signal adaptive filter (SAF); -
FIG. 7B shows an example of a 10×10 block for edge detection and the SAF; and -
FIG. 8 shows the result of Bf_Y padding. - In
FIG. 1 , anapparatus 10 for loop-filtering image data for reducing quantization effect occurring when the image data is block-base coded and decoded, which is used in connection with a general encoder and decoder, comprises aflag extractor 100, adeblocking filter 110, acorner outlier compensator 120 and aderinging filter 130. - The
flag extractor 100 extracts a flag using the distribution of inverse quantized coefficients (IQCs) of an inverse quantized image data, and a motion vector indicating the difference between the previous frame and the current frame. The flag is the information indicating whether the decoded image requires the loop-filtering, and is made up of a blocking flag and a ringing flag. The blocking flag indicates whether the blocking artifacts near the block boundary must be reduced, and the ringing flag indicates whether the ringing noise near the image edges must be reduced. Also, the blocking flag consists of a horizontal blocking flag (HBF) indicating whether the loop-filtering is performed on the pixels of adjacent blocks around a horizontal block boundary, and a vertical blocking flag (VBF) indicating whether the loop-filtering is performed on the pixels of adjacent blocks around a vertical blocking boundary. - Also, the flag extraction is performed on intra frames and inter frames. The present invention contemplates that each inter frame is composed of a P frame and a PB frame. The distribution of IQCs of the inverse quantized image data is utilized for the flag extraction on the intra frames. The flag extraction on the inter frames utilizes the motion vector indicating the difference between the previous frame and the current frame, and a detailed description of this will be provided later.
- The
deblocking filter 110 checks the blocking flag extracted by theflag extractor 100 using one-dimensional (1-D) horizontal and vertical low pass filters (LPFs), thereby deblocking-filtering the image data. - The
outlier compensator 120 detects the corner outlier of the data passed through thedeblocking filter 110, and compensates for the detected corner outliers. - The
deringing filter 130 checks the ringing flag extracted by theflag extractor 100 using a 2-D signal adaptive filter (SAF), to deringing-filter the corner outlier compensated data. - The basic idea of the loop-filtering method on the image data according to the present invention is to adaptively filter using spatial frequency and temporal information to reduce the quantization effect.
- Also, subjective image quality, peak signal-to-noise ratio (PSNR) and complexity of computation are considered. In particular, when the basic idea is realized using software and hardware, the complexity of computation is a very important decisive factor. The distribution of the IQCs is investigated to extract the information of blocking artifacts and ringing noise in every 8×8 block. A 1-D LPF and a 2-D SAF are adaptively applied in every 8×8 block using the blocking and ring flags.
- Two embodiments relating to the ringing noise are introduced in the present invention: the ringing flag being set as one ringing flag (RF) in the first embodiment and being set as two, first and second ringing flags RF0 and RF1, in the second embodiment. In the case where there is no mention about the first and second embodiments in explaining the following embodiments, it means that the two embodiments are commonly applied. Also, in the case when either the first or the second embodiment is applied, the corresponding embodiment would be mentioned.
- First, the flag extraction of the blocking artifacts and ringing noise in the
flag extractor 100 will be described. - 1. The Information of Blocking Artifacts and Ringing Noise
- In order to reduce the quantization effects in the H.263+, two kinds of flags are defined: the blocking flags and the ringing flags. The blocking and the ringing flags are extracted from the DCT domain of each 8×8 block in the intra-macro block (MB). Also, the flags of the inter-MB are calculated from both a residual signal and flags of a reference video object plane (VOP).
- 1.1 Flag Information for Intra-Macro Block (Intra MB)
- The distribution of IQCs (the DCT coefficients after inverse quantization) is investigated in the decoder and decoder.
FIG. 2 shows the block diagram of a H.263+decoder and the DCT coefficients after inverse quantization. In the 8×8 inverse quantized block ofFIG. 2 , the coefficients of A, B and C are used for deciding the blocking and the ringing flags. - When only the coefficient in position A (a DC component) among 64 DCT coefficients of the 8×8 block shown in
FIG. 2 has a non-zero value, 64 pixels of the coded 8×8 block have the same values in the spatial domain. Thus, a block having only a DC component can induce horizontal and vertical blocking artifacts. In this case, both the HBF and the VBF of the block are set to 1. - When only the coefficients in the top row of the 8×8 inverse quantized block have non-zero values, the eight pixels in each column have the same value in the spatial domain. This block may induce vertical blocking artifacts, so the VBF is set to 1.
- When only the coefficients in the far left column have non-zero values, the eight pixels in each row have the same value in the spatial domain. This block may induce horizontal blocking artifacts, so the HBF is set to 1.
- In the first embodiment, the ringing flag RF is set to 1 if a non-zero coefficients exists in positions other than A, B and C in
FIG. 2 . In the second embodiment, the first ringing flag RF0 is set to 1 if a non-zero coefficients exists in positions other than A, B and C inFIG. 2 . - These high-frequency coefficients mean that the block includes image edges. Therefore, the block produces ringing noise around the image edges due to the truncation of the high-frequency coefficients. In the second embodiment, the second ringing flag RF1 is not used in Intra MB.
- 1.2 Propagation of Flag Information for Inter-Macroblock (Inter MB)
- As for the first embodiment, the blocking flags in the reference frames are propagated to the next Inter MB by using the motion vectors. Also, the residual signal of the inter block is used to decide the flag of the inter-block. The propagation of the blocking flag from the reference frame to the inter frame is as follows.
-
FIG. 3 shows the relationship between the 8×8 block (Ac 0) in the inter-frame and the adjacent blocks of the reference frame. The propagation of the blocking flag is described by themotion vectors MV x 0 andMV y 0 as follows. InFIG. 3 , Ar 0,B r 0,C r 0 andD r 0 are the blocks of the reference frame. Ac 0 is a block in the current inter-frame, and X0 is the motion block of Ac 0, which is estimated by using the motion vector (MV x 0, MVy 0). First, the degree of overlapping of the motion vector X0 and the reference block is investigated. When only the blocks in which the overlapped region between the motion block X0 and the reference block is wider than 2×2 pixels are used, the HBF and the VBF of thecurrent block A c 0 can be calculated by a bit-wise AND operation on the HBF and the VBF of the reference blocks which are overlapped by the motion-estimated block X0. - For example, when
MV x 0=5 andMV y 0=3.5, the motion-estimated block X0 is overlapped with four reference blocks Ar 0,B r 0,C r 0 andD r 0. Here, the four overlapped regions are all wider than 2×2 pixels. Thus, the HBS and the VBS of thecurrent block A c 0 can be calculated from the four reference blocks Ar 0,B r 0,C r 0 andD r 0 as shown inFIG. 4 . Here, ‘&’ indicates the bit-wise AND operation. - Next, the ringing flag in the inter-frame will be described. First of all, the RF of the
reference block A c 0 is set to 1 if the IQC of the residual signals in the 8×8 block of the inter-frame is non-zero. Transferring four motion vectors for one MB is called an 8×8 prediction mode. The 8×8 prediction mode is applied to a busy area, most having a high-frequency component. Thus, it is investigated whether or not the block has the 8×8 prediction mode, and the RF of the block having the 8×8 prediction mode is set to 1. - As for the second embodiment, the blocking flags in the reference frame (I picture or P picture or the P picture part of an improved PB frame) are propagated to the next Inter MB by using the motion vectors. Also, the residual signal of the inter block is used to decide the flag of the inter-block. If the current MB is the skipped MB (COD-1), the blocking flags of six blocks (four for Y,. one for
C b 0 and one for Cr 0) in the reference MB are duplicated to the corresponding blocks of the current MB. - The propagation of the blocking flag from the reference frame to the inter-frame is similar to the first embodiment. However, the AND operation for calculating the HBS and the VBS of the
current block A c 0 is applied to the blocks whose overlapped region with the block X0 is wider than 1×1 pixel, unlike the first embodiment in which the AND operation is applied to the blocks whose overlapped region with the block X0 is wider than 2×2 pixels. For example, whenMV x 0=5 andMV y 0=3.5, the motion-estimated block X0 is overlapped with four reference blocks Ar 0,B r 0,C r 0 andD r 0. Here, the four overlapped regions are all wider than 1×1 pixel. - Next, the ringing flag in the inter-frame will be explained. First of all, the IQC of the residual signals in the 8×8 block of the Inter MB is investigated. The RF0 of the
block A c 0 is set to 1 if only the DC component of the IQC is non-zero and the other components are all zero. Also, the RF1 of thereference block A c 0 is set to 1 if any AC components of IQC of the residual signals are non-zero. The 8×8 prediction mode is considered in the ringing filtering. - 2. Loop-Filtering Method Using Flag
- The
deblocking filter 110, thecorner outlier compensator 120 and thederinging filter 130 will be described in detail. - 2.1 Deblocking Filter for Reducing Blocking Artifacts
- One-D LPF for reducing the blocking artifacts is performed strongly or weakly, depending on the blocking flags, on the horizontal and vertical block boundaries. According to most deblocking methods for reducing the blocking artifacts, image-edge information is calculated and a LPF is adaptively used based on the image edges. However, the deblocking method according to the present invention uses the blocking flag obtained above, so that image edge detection which requires a large amount of calculation is not necessary.
- The current 8×8 block to be processed and the adjacent blocks are shown in
FIG. 5 . If both HBFs of the BLOCK-I and BLOCK-J are set to 1, a 7-tab LPF with coefficients (1,1,1,2,1,1,1) is applied for six pixels (A,B,C,D,E,F) on the horizontal block boundary inFIG. 5 . - The algorithm of the horizontal deblocking filtering in the first embodiment is expressed as follows.
-
If (BLOCK_I = = NOT coded && BLOCK_J NOT coded) No deblocking filter; if (INTRA frame) { if (RF of BLOCK_I = = 0 && RF of BLOCK_J = = 0){/*No Ringing Noise*/ if (HBF of BLOCK_I = = 1 && HBF of BLOCK_J = = 1) strong deblocking filtering; else weak deblocking filtering; } else weak deblocking filtering; } if (P or PB_frame) { if (RF of BLOCK_I = = 0){/* No Ringing Noise*/ if (BLOCK_I = = INTRA || BLOCK_J = = INTRA){ If (HBF of BLOCK I ++ 1 && HBF of BLOCK_J = = 1) strong deblocking filtering; else weak deblocking filtering; } else { if (DC component of residual IQC of BLOCK_I or BLOCK_J exist){ If (HBS of BLOCK_I = =1 && HBF of BLOCK_J = =1) strong deblocking filtering; else weak deblocking filtering; } } } else /*Ringing Noise*/ weak deblocking filtering; } - In explaining tie algorithm, assuming that a block constituting a frame to be loop-filtered is BLOCK_I, the block adjacent to the BLOCK_I is BLOCK_J, the difference between the current BLOCK_I and the previous quantized BLOCK_I is not greater than a predetermined value, and the difference between the current BLOCK_J and the previous quantized BLOCK_J is not greater than a predetermined value, the deblocking filtering is not performed.
- If the frame to be loop-filtered is an intra-frame, in the deblocking filtering for reducing the blocking artifacts, when both RFs of BLOCK_I and BLOCK_J indicate that reduction of ringing noise is not necessary, and both HBFs of BLOCK_I and BLOCK_J indicate that reduction of blocking artifacts is necessary, a first filtering (strong deblocking filtering) for changing a predetermined number of pixel values near the horizontal block boundary between BLOCK_I and BLOCK_J is performed.
- When both RFs of BLOCK_I and BLOCK_J indicate that there is no need for reduction of ringing noise and at least one of the HBFs of BLOCK_I and BLOCK_J indicates that reduction of the blocking artifacts is not necessary, or when at least one of the RFs of BLOCK_I and BLOCK_J indicates that reduction of ringing noise is necessary, and the difference between the adjacent two pixels near the horizontal block boundary is less than the H.263 quantization factor (QP), a second filtering (weak deblocking filtering) for changing pixel values whose number is smaller than in the first filtering is performed.
- Also, filtering on the pixels near the vertical block boundary is performed in the same manner as for the pixels near the horizontal block boundary, using the VBF.
- Meanwhile, if the frame to be loop-filtered is an inter-frame (P or PB frame), in the deblocking filtering for reducing the blocking artifacts, when the RF of BLOCK_I indicates that there is no need for reduction of ringing noise, one of BLOCK_I and BLOCK_J is an intra-block (INTRA) and both HBFs of BLOCK_I and BLOCK_J indicate that reduction of the blocking artifacts is necessary, the first filtering for changing a predetermined number of pixel values near the horizontal block boundary between BLOCK_I and BLOCK_J is performed.
- When the RF of BLOCK_I indicates that there is no need for reduction of ringing noise, one of BLOCK_I and BLOCK_J is INTRA, any one of HBFs of BLOCK_I and BLOCK_J indicates that there is no need for reduction of the blocking artifacts, and the difference between the two adjacent pixels near the horizontal block boundary is less than the H.263 quantization factor (QP), the second filtering for changing pixel values whose number is smaller than in the first filtering is performed.
- When the RF of BLOCK_I indicates that there is no need for reduction of ringing noise, neither BLOCK_I nor BLOCK_J are INTRA, and both HBFs of BLOCK_I and BLOCK_J are 1, the first filtering is performed.
- When the RF of BLOCK_I indicates that there is no need for reduction of ringing noise, neither BLOCK_I nor BLOCK_J are INTRA, and at least one of the HBFs of BLOCK_I and BLOCK_J is 0, the second filtering is performed.
- When the RF of BLOCK_I is non-zero, the second filtering is performed.
- Assuming that six pixels on the horizontal block boundary between BLOCK_I and BLOCK_J are A, B, C, D, E and F, wherein the pixels C and D are the nearest pixels on the horizontal block boundary, the pixels A and F are the farthest pixels thereon, and pixels B and b are middle pixels, 7-tab low pass filtering with coefficients 10 (1,1,1,2,1,1,1) is performed for the six pixels during the first filtering.
- The second filtering is performed on the pixels C and D. Here, if the absolute value of the difference between the pixels C and D is smaller than the QP of the H.263, two pixels C and D are replaced as C=C+(D−C)/4 and D=D+(D−C)/4.
- The algorithm of the horizontal deblocking filtering in the second embodiment is expressed as follows.
-
if (BLOCK_I = = NOT coded && BLOCK_J NOT coded) No deblocking filter; if (INTRA frame){ if (RF0 of BLOCK_I == 0 && RF0 of BLOCK_J = = 0){/*No Ringing Noise*/ if (HBF of BLOCK_I = = 1 && HBF of BLOCK_J = = 1) strong deblocking filtering; else weak deblocking filtering; } else weak deblocking filtering; } if (P or PB_frame){ if (RF1 of BLOCK_I = = 0){/*No Ringing Noise*/ if (BLOCK_I = = INTRA || BLOCK_J = = INTRA) { If (HBF of BLOCK I ++ 1 && HBF of BLOCK_J = = 1) strong deblocking filtering; else weak deblocking filtering; } else { if (RF0 of BLOCK_I = = 1 || RF0 of BLOCK_J = = 1){ if (HBS of BLOCK_I = = 1 && HBF of BLOCK_J = = 1) strong deblocking filtering; else weak deblocking filtering; } } } else /*Ringing Noise*/ weak deblocking filtering; } - In explaining the algorithm, assuming that a block constituting a frame to be loop-filtered is BLOCK_I, the block adjacent to the BLOCK_I are BLOCK_J, the difference between the current BLOCK_I and the previous quantized BLOCK_I is not greater than a predetermined value and the difference between the current BLOCK_J and the previous quantized BLOCK_I is not greater than a predetermined value, the deblocking filtering is not performed.
- If the frame to be filtered is an intra-frame, in the deblocking filtering for reducing the blocking artifacts, when the RF0s of both BLOCK_I and BLOCK_J indicate that reduction of ringing noise is not necessary, and the HBFs of both BLOCK_I and BLOCK_J indicate that reduction of blocking artifacts is necessary, first filtering (strong deblocking filtering) for changing a predetermined number of pixel values near the horizontal block boundary between BLOCK_I and BLOCK_J is performed.
- When the RF0s of both BLOCK_I and BLOCK_J indicate that there is no need for reduction of ringing noise and at least one of the HBFs of BLOCK_I and BLOCK_J indicates that reduction of the blocking artifacts is not necessary, or when at least one of the RF0s of BLOCK_I and BLOCK_J indicates that reduction of ringing noise is necessary, and the difference between the adjacent two pixels near the horizontal block boundary is less than the H.263 quantization factor (QP), a second filtering (weak deblocking filtering) for changing pixel values whose number is smaller than in the first filtering is performed.
- Also, filtering on the pixels near the vertical block boundary is performed in the same manner as for the pixels near the horizontal block boundary, using the VBF.
- Meanwhile, if the frame to be loop-filtered is an inter-frame (P or PB frame), in the deblocking filtering for reducing the blocking artifacts, when the RF1 of BLOCK_I indicates that there is no need for reduction of ringing noise, one of BLOCK_I and BLOCK_J is INTRA and the HBFs of both BLOCK_I and BLOCK_J indicate that reduction of the blocking artifacts is necessary, the first filtering (strong deblocking filtering) for changing a predetermined number of pixel values near the horizontal block boundary between BLOCK_I and BLOCK_J is performed.
- When the RF1 of BLOCK_I indicates that there is no need for reduction of ringing noise, one of BLOCK_I and BLOCK_J is INTRA, any one of the HBFs of BLOCK_I and BLOCK_J indicates that there is no need for reduction of the blocking artifacts, and the difference between the adjacent two pixels near the horizontal block boundary is less than the H.263 quantization factor (QP), the second filtering (weak deblocking filtering) for changing pixel values whose number is smaller than in the first filtering is performed.
- When the RF1 of BLOCK_I indicates that there is no need for reduction of ringing noise, neither BLOCK_I nor BLOCK_J are INTRA, one of the RF0 of BLOCK_I and BLOCK_J is 1, and the HBFs of both BLOCK_I and BLOCK_J are 1, the first filtering (strong deblocking filtering) is performed.
- When the RF1 of BLOCK_I indicates that there is no need for reduction of ringing noise, neither BLOCK_I nor BLOCK_J are INTRA, one of the RF0s of BLOCK_I and BLOCK_J is 1, and at least one of the HBFs of BLOCK_I and BLOCK_J is 0, the second filtering (weak deblocking filtering) is performed.
- When RF1 of BLOCK_I is non-zero, the second filtering (weak deblocking filtering) is performed.
- Also, filtering on the pixels near the vertical block boundary is performed in the same manner as for the pixels near the horizontal block boundary, using the VBF.
- Also, the first and second filterings are performed in the same manner as those of the first embodiment.
- 2.2 Corner Outlier Compensator
- Corner outlier compensation is only performed for INTRA frame. A corner outlier is characterized by a pixel which is either much larger or much smaller than its neighboring pixels at the corner point of an 8×8 block as shown in
FIGS. 6A through 6C . InFIG. 6A , when a dark-gray region is distributed over four blocks and one or two pixels of the dark-gray region are located at the corner points of neighboring blocks, the corner points can be distorted by quantization of the DCT coefficients as shown inFIG. 6B . Such distortion of the corner points is called a corner outlier. The corner outlier cannot be removed by deblocking and deringing filters. In order to reduce the corner outlier, the corner outlier must be detected and compensated for.FIG. 6C describes a simple coordination for corner outlier detection, where A0, B0, C0 and D0 are the pixel values of the corner points of the 8×8 pixels. - The algorithm for detecting the corner outlier is expressed as follows:
-
value[0] = A; value[1] = B; value[2] = C; value[3] = D; Average = (A + B + C + D + 2)/4 Count = 0; for (m=0; m<4; m++) if( | value[m]−Average | > QP) Count ++; /*the number of candidate points*/
where QP is the H.263 quantization factor, and ‘Count’ is the variable for storing the number of candidate corner outlier pixels. It is assumed thatA 1 0 and A2 0 are pixels adjacent to the pixel A0 andA 3 0 is a pixel diagonal to the pixel A0 in the same block of the pixel A0. If Count is zero, there is no corner outliers. If A0 is the only candidate point inFIG. 6C and |.A.·A3 0| is less than 3QP/2, corner outlier compensation is performed on A0, A1 0 and A2 0 as follows. Assuming that compensated values for A0, A1 0 and A2 0 are A′0, A1′0 and A2′0, respectively, A′0, A1′0 and A2′0 are determined by Equation (1). -
A′=(4A+B+C+2D+4)/8 A 1′=(A′+3A 1+2)/4 A 2′=(A′+3A 2+2)/4 (1) - If there are more than two candidates, the candidate which has the largest difference from (A3+B3+C3+D3+2)/4 is selected, and corner outlier compensation is performed on that point in the same way as in the case of only one candidate. Here, B3, C3 and D3 indicate pixels diagonal to the pixels A, B, C, respectively.
- 2.3 Deringing Filter for Reducing Ringing Noise
- As a first embodiment, prior to applying the deringing filtering for each block, RF is investigated. If the RF of the current block is 1, deringing filtering is applied to the current block. In order to prevent the image details from being distorted by filtering, simple edge detection is performed before filtering. As shown in
FIGS. 7A and 7B , edge detection and 2-D signal adaptive filtering are applied to an 8×8 block having a non-zero ringing flag. This is because the boundary pixels are made smooth by the deblocking filter. - As a second embodiment, prior to applying the deringing filtering for each block, the ringing flags, i.e., RF0 and RF1, are investigated. The algorithm for determining whether to perform deringing filtering for decreasing the ringing noise is expressed as follows.
-
if (BLOCK_I = = NOT coded) No deringing filtering; if (INTRA frame){ if (RF0 of BLOCK_I = = 1) deringing filtering; else No deringing filtering; } if (P or PB_frame){ if (BLOCK_I = = INTRA_BLOCK) deringing filtering; else{ if (BLOCK_I = = INTER4V_BLOCK) deringing filtering; else{ If (RF1 of BLOCK_I = = 1) deringing filtering; else No deringing filtering; } } } - In explaining the above algorithm, when the difference between the current BLOCK_I and the previous quantized BLOCK_I is not greater than a predetermined value, and the difference between the current BLOCK_J and the previous quantized BLOCK_J is not greater than a predetermined value, the deringing filtering is not performed.
- In the case of the intra-frame, first of all, it is investigated whether the ringing flag of BLOCK_I requires the deringing filtering. The deringing filtering is performed if the deringing filtering is required, and otherwise, the deringing filtering is not performed.
- In the case of inter-frame, a determination of whether to perform the deringing filtering for reducing the ringing noise is made as follows. That is, if BLOCK_I is an intra-block, deringing filtering is performed. If BLOCK_I is not an intra-frame and has 8×8 prediction mode, deringing filtering is performed. In the case where BLOCK_I is not the intra-block and has no 8×8 prediction mode, if the RF1 of BLOCK_I indicates a need for ringing filtering, the deringing filtering is performed. If the RF1 of BLOCK_I indicates no need of ringing filtering, deringing filtering is not performed.
- The deringing filtering is composed of edge detection and 2-D signal adaptive filtering. In order to prevent the image details from being distorted by filtering, simple edge detection is performed before filtering. Edge detection and 2-D signal adaptive filtering are applied to an 8×8 block in the case that the above condition is satisfied to reduce the ringing noise as shown in
FIGS. 7A and 7B . - Edge detection in the first and second embodiments of the deringing filtering will be described. One-D horizontal and vertical gradient operators are applied to the reconstructed blocks in order to fine the image edges. The threshold value for deciding the edge pixels is selected from the H.263 quantization factor QP. In order for 2-D SAF to be applied to 8×8 pixels, edge information must be obtained for a 10×10 which is the current block, as shown in
FIG. 7B . In the horizontal edge detection, assuming that a pixel[m,n] is the current pixel, a pixel[m][n+1] is located to the right of the pixel[m][n], a pixel[m][n−1] is located to the left of the pixel[m][n], the difference between the pixel[m][n] and the pixel[m][n+1] is A1, the difference between the pixel[m][n] and the pixel[m][n−1] is A2, and QP is the H.263 quantization factor, when the conditional expression ((A1>QP) and (A2>QP)) or (A1>2QP) or (A2>2QP) is satisfied, the current pixel is detected as a edge pixel, and the edge map, Edge[m][n], becomes 1. In the vertical edge detection, assuming that the current pixel is pixel[m][n], a pixel[m+1][n] is located above the pixel[m][n], a pixel[m−1][n] is located below the pixel[m][n], the difference between the pixel[m][n] and the pixel[m+1][n] is A′1, the difference between the pixel [m][n] and the pixel [m−1][n] is A′2, and QP is the H.263 quantization factor, when the conditional expression ((A′1>QP) and (A′2>QP)) or (A′1>2QP) or (A′2>2QP) is satisfied, the current pixel is detected as an edge pixel, and the edge map, Edge[m][n], becomes 1. - The edge map, ‘Edge[m][n], is obtained from pixel values, pixel[m][n], according to the following algorithm.
-
/*Horizontal edge detection*/ A1 = | pixel[m][n]−pixel[m][n+1] |; A2 = | pixel[m][n]−pixel[m][n−1] |; if (((A1>QP) and (A2>QP)) or (A1>2QP) or (A2>2QP)) Edge[m][n] = 1; else{ /*vertical edge detection*/ A1 = | pixel[m][n]−pixel[m+1][n] |; A2 = | pixel[m][n]−pixel[m−1][n]; if (((A1>QP) and (A2>QP)) or (A1>2QP) or (A2>2QP)) Edge[m][n] = 1; } - Next, the deringing filtering using the 2-D SAF will be described. The deringing filtering is proposed to smooth the ringing noise without significant loss of image details. The deringing filtering according to the present invention is a simple convolution operation in which the weighting factors for the convolution are varied according to the edge map. The SAF is applied to the decoded block by using Edge map[m][n]. The kernel for 2-D SAF is shown in
FIG. 7A . When the central point A of the filter window inFIG. 7B is on the edge pixel, the 2-D filtering operation is not performed (EXAMPLE 1 inFIG. 7B ). If no edge point is included in the 4-connected filter window, low-pass filtering is performed (EXAMPLE 2 inFIG. 7B ) If some edge points, not on the center point, are in the 4-connected filter window, weighted filtering to exclude the edge pixels is performed (Example 3 inFIG. 7B ). The weighting factors are defined in consideration of computational complexity, so the signal adaptive filtering can be performed by simple shift and addition operations as shown in Table 1. In Table 1, ‘0’ means a non-edge point and ‘1’ means an edge point in the left five columns. - 3. Padding of Blocking Flags
- The padding of blocking flags is performed in the second embodiment. In the case of QCIP, Bf_Y (Blocking flags for Y) is composed of a 22×18 array and both Bf_Cb (Blocking flags for Cb) and Bf_Cr (Blocking flags for Cr) are composed of an 11×9 array, in which each element contains the noise information of each block. However, when the Unrestricted Motion Vector mode is used, motion vectors are allowed to point outside the picture. Therefore, Bf_Y, Bf_Cb and Bf_Cr padding is performed in order to cover that the motion vectors point outside the picture. In case of Bf_Y, the top/bottom row elements of Bf_Y are replicated vertically in order to expand Bf_Y and horizontal repetitive padding is performed on the far left/right column elements of Bf_Y after the vertical repetitive padding. Finally, assuming that the original Bf_Y size is M×N, the resulting size becomes (M+8)×(N+8). Similarly, if the original size of Bf_Cb and Cf_Cr is M/2×N/2, the resulting sizes become (M/2+4)×(N/2+4).
FIG. 8 shows the result of Bf_Y padding. The padding can be performed using various methods. For example, the padding may be performed by replicating the blocking flag of a reference frame. When a new frame to be loop-filtered enters, the padding is performed once. Then, the blocking flags of the corresponding macro block are obtained using the padded blocking flags. -
TABLE 1 A B C D E SAF 0 0 0 0 0 A = (4A + B + C + D + E + 4)/8 0 0 0 0 1 A = (4A + B + 2C + D + 4)/8 0 0 0 1 0 A = (4A + 2B + C + D + 4)/8 0 0 0 1 1 A = (2A + B + C + 2)/4 0 0 1 0 0 A = (4A + B + D + 2E + 4)/8 0 0 1 0 1 A = (2A + B + D + 2)/4 0 0 1 1 0 A = (2A + B + E + 2)/4 0 0 1 1 1 A = (A + B + 1)/2 0 1 0 0 0 A = (4A + C + 2D + E + 4)/8 0 1 0 0 1 A = (2A + C + D + 2)/4 0 1 0 1 0 A = (2A + C + E + 2)/4 0 1 0 1 1 A = (A + C + 1)/2 0 1 1 0 0 A = (2A + D + E + 2)/4 0 1 1 0 1 A = (A + D + 1)/2 0 1 1 1 0 A = (A + E + 1)/2 0 1 1 1 1 A = A - The invention may be embodied in a general purpose digital computer that is running a program from a computer usable medium, including but not limited to storage media such as magnetic storage media (e.g., ROM's, floppy disks, hard disks, etc.), optically readable media (e.g., CD-ROMs, DVDs, etc.) and carrier waves (e.g., transmissions over the Internet). Hence, the present invention may be embodied as a computer usable medium having a computer readable program code unit embodied therein for loop-filtering for reducing the quantization effect generated when encoding and decoding the image data, the computer readable program code means in the computer usable medium comprising: computer readable program code means causing a computer to effect extracting a flag indicating whether the image data requires loop-filtering using the distribution of IQCs of an inverse quantized image data, and a motion vector indicating the difference between the previous frame and the current frame; and computer readable program code means causing a computer to effect filtering the image data corresponding the flag by a predetermined method if the extracted flag indicates a need for the loop-filtering.
- A functional program, code and code segments, used to implement the present invention can be derived by a skilled computer programmer from the description of the invention contained herein.
- When restoring the highly compressed image data, the quantization effect such as blocking artifacts, corner outliers and ringing noise occurs. The loop-filtering method according to the present invention reduces the quantization effect using the flags and adaptive filter. The blocking and ringing flags of each block contribute to reduce the amount of computation in loop-filtering. In order to extract the blocking and ringing flags on the current block, the motion vector of the inter-frame is used.
- In video coding, in order to implement a high-quality image and hardware and software easily from the present invention, the complexity in computation and PSNR must be considered. The method according to the present invention can be performed by a parallel processing without multiplication and division, thereby reducing the complexity of hardware.
- The loop-filtering according to the present invention can greatly improve the subjective quality while maintaining image details, so that the loop-filtering can be applied widely.
Claims (2)
1-37. (canceled)
38. A method for filtering image data comprising:
generating information indicating whether a block requires filtering, based on a reference frame or a reference field of two corresponding blocks constituting the image data; and
filtering the block according to the generated information.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/768,688 US20080159386A1 (en) | 1998-08-01 | 2007-06-26 | Loop-filtering method for image data and apparatus therefor |
Applications Claiming Priority (7)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR98-31431 | 1998-08-01 | ||
KR1019980031431A KR100301013B1 (en) | 1998-08-01 | 1998-08-01 | Image data loop filtering method and apparatus |
KR1019980046822A KR100331331B1 (en) | 1998-11-02 | 1998-11-02 | Image Data Loop Filtering Method |
KR98-46822 | 1998-11-02 | ||
US09/302,989 US6665346B1 (en) | 1998-08-01 | 1999-04-30 | Loop-filtering method for image data and apparatus therefor |
US10/405,642 US7251276B2 (en) | 1998-08-01 | 2003-04-03 | Loop-filtering method for image data and apparatus therefor |
US11/768,688 US20080159386A1 (en) | 1998-08-01 | 2007-06-26 | Loop-filtering method for image data and apparatus therefor |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US10/405,642 Division US7251276B2 (en) | 1998-08-01 | 2003-04-03 | Loop-filtering method for image data and apparatus therefor |
Publications (1)
Publication Number | Publication Date |
---|---|
US20080159386A1 true US20080159386A1 (en) | 2008-07-03 |
Family
ID=26633999
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US09/302,989 Expired - Lifetime US6665346B1 (en) | 1998-08-01 | 1999-04-30 | Loop-filtering method for image data and apparatus therefor |
US10/405,642 Expired - Lifetime US7251276B2 (en) | 1998-08-01 | 2003-04-03 | Loop-filtering method for image data and apparatus therefor |
US11/768,688 Abandoned US20080159386A1 (en) | 1998-08-01 | 2007-06-26 | Loop-filtering method for image data and apparatus therefor |
Family Applications Before (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US09/302,989 Expired - Lifetime US6665346B1 (en) | 1998-08-01 | 1999-04-30 | Loop-filtering method for image data and apparatus therefor |
US10/405,642 Expired - Lifetime US7251276B2 (en) | 1998-08-01 | 2003-04-03 | Loop-filtering method for image data and apparatus therefor |
Country Status (6)
Country | Link |
---|---|
US (3) | US6665346B1 (en) |
JP (1) | JP3308921B2 (en) |
AU (1) | AU717480B2 (en) |
BR (1) | BRPI9901340B1 (en) |
RU (1) | RU2154918C1 (en) |
SG (1) | SG70679A1 (en) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090316793A1 (en) * | 2008-06-20 | 2009-12-24 | Yang Zhijie Michael | Method and system for adaptive deblocking for avs1-p2 |
US20100220931A1 (en) * | 2009-02-27 | 2010-09-02 | Vixs Systems, Inc. | Edge adaptive deblocking filter and methods for use therewith |
US20100272191A1 (en) * | 2008-01-14 | 2010-10-28 | Camilo Chang Dorea | Methods and apparatus for de-artifact filtering using multi-lattice sparsity-based filtering |
US20120195382A1 (en) * | 2009-06-18 | 2012-08-02 | Zte Corporation | Multi-Core Image Encoding Processing Device and Image Filtering Method Thereof |
US20140232711A1 (en) * | 2013-02-18 | 2014-08-21 | Samsung Display Co., Ltd. | Image processing part, display apparatus having the same and method of processing an image using the same |
US8908760B2 (en) | 2009-03-30 | 2014-12-09 | Lg Electronics Inc. | Method and apparatus for processing video signals |
CN107172423A (en) * | 2017-03-31 | 2017-09-15 | 武汉斗鱼网络科技有限公司 | A kind of method and device being filtered to frame of video |
CN109845266A (en) * | 2016-10-14 | 2019-06-04 | 联发科技股份有限公司 | To remove the smoothing filtering method and device of ripple effect |
Families Citing this family (133)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100243225B1 (en) * | 1997-07-16 | 2000-02-01 | 윤종용 | Signal adaptive filtering method for reducting blocking effect and ringing noise and filter thereof |
KR100308016B1 (en) | 1998-08-31 | 2001-10-19 | 구자홍 | Block and Ring Phenomenon Removal Method and Image Decoder in Compressed Coded Image |
US6535643B1 (en) | 1998-11-03 | 2003-03-18 | Lg Electronics Inc. | Method for recovering compressed motion picture for eliminating blocking artifacts and ring effects and apparatus therefor |
US6735249B1 (en) * | 1999-08-11 | 2004-05-11 | Nokia Corporation | Apparatus, and associated method, for forming a compressed motion vector field utilizing predictive motion coding |
KR100335055B1 (en) | 1999-12-08 | 2002-05-02 | 구자홍 | Method of removal block effect and ringing effect of compressed video signal |
KR100380229B1 (en) * | 2000-07-19 | 2003-04-16 | 엘지전자 주식회사 | An wipe and special effect detection method for MPEG-Compressed video using spatio-temporal distribution of the macro blocks |
JP3489735B2 (en) * | 2000-08-16 | 2004-01-26 | 松下電器産業株式会社 | Deblocking filter operation unit |
US7054500B1 (en) * | 2000-12-06 | 2006-05-30 | Realnetworks, Inc. | Video compression and decompression system with postfilter to filter coding artifacts |
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 |
US7450641B2 (en) | 2001-09-14 | 2008-11-11 | Sharp Laboratories Of America, Inc. | Adaptive filtering based upon boundary strength |
US6993191B2 (en) * | 2001-05-04 | 2006-01-31 | Pts Corporation | Methods and apparatus for removing compression artifacts in video sequences |
JP4145665B2 (en) * | 2001-05-10 | 2008-09-03 | 松下電器産業株式会社 | Image processing apparatus and image processing method |
US7054362B1 (en) | 2001-05-29 | 2006-05-30 | Cisco Technology, Inc. | Methods and apparatus for updating a reduction ratio |
US6909745B1 (en) | 2001-06-05 | 2005-06-21 | At&T Corp. | Content adaptive video encoder |
US7773670B1 (en) | 2001-06-05 | 2010-08-10 | At+T Intellectual Property Ii, L.P. | Method of content adaptive video encoding |
US6968006B1 (en) | 2001-06-05 | 2005-11-22 | At&T Corp. | Method of content adaptive video decoding |
US6970513B1 (en) | 2001-06-05 | 2005-11-29 | At&T Corp. | System for content adaptive video decoding |
US6810086B1 (en) | 2001-06-05 | 2004-10-26 | At&T Corp. | System and method of filtering noise |
US7003173B2 (en) * | 2001-06-12 | 2006-02-21 | Sharp Laboratories Of America, Inc. | Filter for combined de-ringing and edge sharpening |
KR100525785B1 (en) * | 2001-06-15 | 2005-11-03 | 엘지전자 주식회사 | Filtering method for pixel of image |
JP3732760B2 (en) * | 2001-06-29 | 2006-01-11 | 株式会社東芝 | Object recognition apparatus and object recognition method |
US20030043172A1 (en) * | 2001-08-24 | 2003-03-06 | Huiping Li | Extraction of textual and graphic overlays from video |
US9042445B2 (en) | 2001-09-24 | 2015-05-26 | Broadcom Corporation | Method for deblocking field-frame video |
US7440504B2 (en) * | 2001-09-24 | 2008-10-21 | Broadcom Corporation | Method and apparatus for performing deblocking filtering with interlace capability |
DE60230666D1 (en) | 2001-11-29 | 2009-02-12 | Panasonic Corp | PROCESS FOR ELIMINATING CODING FORCED AND METHOD FOR VIDEO CODING AND DECODING |
PT1978747E (en) | 2001-11-29 | 2014-07-24 | Panasonic Ip Corp America | Coding distortion removal method |
CN101448162B (en) * | 2001-12-17 | 2013-01-02 | 微软公司 | Method for processing video image |
EP2894856A1 (en) | 2002-01-31 | 2015-07-15 | Samsung Electronics Co., Ltd | Filtering method and apparatus for reducing block artifacts or ringing noise |
JP2005521310A (en) * | 2002-03-26 | 2005-07-14 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | Video signal post-processing method |
US8284844B2 (en) | 2002-04-01 | 2012-10-09 | Broadcom Corporation | Video decoding system supporting multiple standards |
US7543326B2 (en) * | 2002-06-10 | 2009-06-02 | Microsoft Corporation | Dynamic rate control |
US20030235250A1 (en) | 2002-06-24 | 2003-12-25 | Ankur Varma | Video deblocking |
AU2003244072B2 (en) * | 2002-07-11 | 2007-08-16 | Godo Kaisha Ip Bridge 1 | Filtering Strength Determination Method, Moving Picture Coding Method and Moving Picture Decoding Method |
ES2309379T3 (en) * | 2002-11-15 | 2008-12-16 | Qualcomm Incorporated | APPLIANCE AND PROCEDURE FOR CODING FOR MULTIPLE DESCRIPTIONS. |
US7463688B2 (en) * | 2003-01-16 | 2008-12-09 | Samsung Electronics Co., Ltd. | Methods and apparatus for removing blocking artifacts of MPEG signals in real-time video reception |
US7995849B2 (en) * | 2003-03-17 | 2011-08-09 | Qualcomm, Incorporated | Method and apparatus for improving video quality of low bit-rate video |
US7792194B2 (en) * | 2003-04-10 | 2010-09-07 | Lefan Zhong | MPEG artifacts post-processed filtering architecture |
US9330060B1 (en) | 2003-04-15 | 2016-05-03 | Nvidia Corporation | Method and device for encoding and decoding video image data |
US20040208389A1 (en) * | 2003-04-15 | 2004-10-21 | Silicon Integrated Systems Corp. | Digital picture processing method |
US8660182B2 (en) * | 2003-06-09 | 2014-02-25 | Nvidia Corporation | MPEG motion estimation based on dual start points |
US20050013494A1 (en) * | 2003-07-18 | 2005-01-20 | Microsoft Corporation | In-loop deblocking filter |
KR100936034B1 (en) * | 2003-08-11 | 2010-01-11 | 삼성전자주식회사 | Deblocking method for block-coded digital images and display playback device thereof |
KR101050828B1 (en) | 2003-08-26 | 2011-07-21 | 톰슨 라이센싱 | Method and apparatus for decoding hybrid intra-inter coded block |
BRPI0413979A (en) * | 2003-08-26 | 2006-11-07 | Thomson Licensing | method and apparatus for minimizing the number of reference images used for inter-coding |
US8625680B2 (en) * | 2003-09-07 | 2014-01-07 | Microsoft Corporation | Bitstream-controlled post-processing filtering |
US7724827B2 (en) | 2003-09-07 | 2010-05-25 | Microsoft Corporation | Multi-layer run level encoding and decoding |
US7394855B2 (en) * | 2003-11-20 | 2008-07-01 | Mitsubishi Electric Research Laboratories, Inc. | Error concealing decoding method of intra-frames of compressed videos |
US7471845B2 (en) * | 2004-01-06 | 2008-12-30 | Sharp Laboratories Of America, Inc. | De-ringing filter |
KR101000926B1 (en) * | 2004-03-11 | 2010-12-13 | 삼성전자주식회사 | Filter for removing blocking effect and filtering method thereof |
US8503542B2 (en) * | 2004-03-18 | 2013-08-06 | Sony Corporation | Methods and apparatus to reduce blocking noise and contouring effect in motion compensated compressed video |
JP4566591B2 (en) * | 2004-03-19 | 2010-10-20 | キヤノン株式会社 | Image deformation estimation method and image deformation estimation apparatus |
US7539248B2 (en) * | 2004-04-29 | 2009-05-26 | Mediatek Incorporation | Adaptive de-blocking filtering apparatus and method for MPEG video decoder |
US7496141B2 (en) * | 2004-04-29 | 2009-02-24 | Mediatek Incorporation | Adaptive de-blocking filtering apparatus and method for MPEG video decoder |
US7397854B2 (en) * | 2004-04-29 | 2008-07-08 | Mediatek Incorporation | Adaptive de-blocking filtering apparatus and method for MPEG video decoder |
US7400679B2 (en) * | 2004-04-29 | 2008-07-15 | Mediatek Incorporation | Adaptive de-blocking filtering apparatus and method for MPEG video decoder |
US7397853B2 (en) * | 2004-04-29 | 2008-07-08 | Mediatek Incorporation | Adaptive de-blocking filtering apparatus and method for MPEG video decoder |
US7460596B2 (en) * | 2004-04-29 | 2008-12-02 | Mediatek Incorporation | Adaptive de-blocking filtering apparatus and method for MPEG video decoder |
US20050243914A1 (en) * | 2004-04-29 | 2005-11-03 | Do-Kyoung Kwon | Adaptive de-blocking filtering apparatus and method for mpeg video decoder |
US7801383B2 (en) | 2004-05-15 | 2010-09-21 | Microsoft Corporation | Embedded scalar quantizers with arbitrary dead-zone ratios |
US20050281339A1 (en) * | 2004-06-22 | 2005-12-22 | Samsung Electronics Co., Ltd. | Filtering method of audio-visual codec and filtering apparatus |
US7953152B1 (en) | 2004-06-28 | 2011-05-31 | Google Inc. | Video compression and encoding method |
US8085846B2 (en) | 2004-08-24 | 2011-12-27 | Thomson Licensing | Method and apparatus for decoding hybrid intra-inter coded blocks |
US7697782B2 (en) | 2004-09-16 | 2010-04-13 | Sharp Laboratories Of America, Inc. | System for reducing ringing artifacts |
US20060062311A1 (en) * | 2004-09-20 | 2006-03-23 | Sharp Laboratories Of America, Inc. | Graceful degradation of loop filter for real-time video decoder |
NO322722B1 (en) * | 2004-10-13 | 2006-12-04 | Tandberg Telecom As | Video encoding method by reducing block artifacts |
US7136536B2 (en) * | 2004-12-22 | 2006-11-14 | Telefonaktiebolaget L M Ericsson (Publ) | Adaptive filter |
WO2006075973A1 (en) * | 2005-01-14 | 2006-07-20 | Matsushita Electric Industrial Co., Ltd. | Decoding and encoding using motion-compensated temporal filtering |
US8223845B1 (en) * | 2005-03-16 | 2012-07-17 | Apple Inc. | Multithread processing of video frames |
US8422546B2 (en) | 2005-05-25 | 2013-04-16 | Microsoft Corporation | Adaptive video encoding using a perceptual model |
KR100703200B1 (en) * | 2005-06-29 | 2007-04-06 | 한국산업기술대학교산학협력단 | Intra-coding apparatus and method |
US8731071B1 (en) | 2005-12-15 | 2014-05-20 | Nvidia Corporation | System for performing finite input response (FIR) filtering in motion estimation |
US8724702B1 (en) | 2006-03-29 | 2014-05-13 | Nvidia Corporation | Methods and systems for motion estimation used in video coding |
US8503536B2 (en) | 2006-04-07 | 2013-08-06 | Microsoft Corporation | Quantization adjustments for DC shift artifacts |
US7995649B2 (en) | 2006-04-07 | 2011-08-09 | Microsoft Corporation | Quantization adjustment based on texture level |
US8059721B2 (en) | 2006-04-07 | 2011-11-15 | Microsoft Corporation | Estimating sample-domain distortion in the transform domain with rounding compensation |
US8130828B2 (en) | 2006-04-07 | 2012-03-06 | Microsoft Corporation | Adjusting quantization to preserve non-zero AC coefficients |
US7974340B2 (en) | 2006-04-07 | 2011-07-05 | Microsoft Corporation | Adaptive B-picture quantization control |
US8711925B2 (en) | 2006-05-05 | 2014-04-29 | Microsoft Corporation | Flexible quantization |
US20070286277A1 (en) * | 2006-06-13 | 2007-12-13 | Chen Xuemin Sherman | Method and system for video compression using an iterative encoding algorithm |
JP4410225B2 (en) * | 2006-08-07 | 2010-02-03 | 株式会社東芝 | Moving picture decoding apparatus and method |
US8660380B2 (en) * | 2006-08-25 | 2014-02-25 | Nvidia Corporation | Method and system for performing two-dimensional transform on data value array with reduced power consumption |
US20080084932A1 (en) * | 2006-10-06 | 2008-04-10 | Microsoft Corporation | Controlling loop filtering for interlaced video frames |
JP2008109389A (en) * | 2006-10-25 | 2008-05-08 | Canon Inc | Image processing device and control method of image processing device |
CN105392003A (en) * | 2006-11-08 | 2016-03-09 | 汤姆逊许可证公司 | Methods and apparatus for in-loop de-artifact filtering |
JP2008124742A (en) * | 2006-11-10 | 2008-05-29 | Sony Corp | Image processor, image processing method, and program |
EP2123051B1 (en) * | 2006-12-18 | 2010-11-10 | Koninklijke Philips Electronics N.V. | Image compression and decompression |
CN101589624A (en) * | 2007-01-22 | 2009-11-25 | 日本电气株式会社 | Image re-encoding device, image re-encoding method and image encoding program |
US8189946B2 (en) * | 2007-01-24 | 2012-05-29 | Canon Kabushiki Kaisha | Image processing apparatus and method thereof for detecting and removing noise in decoded images |
KR100843100B1 (en) * | 2007-02-07 | 2008-07-03 | 삼성전자주식회사 | Method and apparatus for reducing block noises of digital image, and encoder/decoder using the same |
US8238424B2 (en) | 2007-02-09 | 2012-08-07 | Microsoft Corporation | Complexity-based adaptive preprocessing for multiple-pass video compression |
US8498335B2 (en) | 2007-03-26 | 2013-07-30 | Microsoft Corporation | Adaptive deadzone size adjustment in quantization |
US8243797B2 (en) | 2007-03-30 | 2012-08-14 | Microsoft Corporation | Regions of interest for quality adjustments |
US8442337B2 (en) | 2007-04-18 | 2013-05-14 | Microsoft Corporation | Encoding adjustments for animation content |
KR100856303B1 (en) * | 2007-05-18 | 2008-09-03 | 삼성전기주식회사 | Apparatus for removing ringing noise and apparatus for removing noise |
US8756482B2 (en) * | 2007-05-25 | 2014-06-17 | Nvidia Corporation | Efficient encoding/decoding of a sequence of data frames |
US20080291209A1 (en) * | 2007-05-25 | 2008-11-27 | Nvidia Corporation | Encoding Multi-media Signals |
US8331438B2 (en) | 2007-06-05 | 2012-12-11 | Microsoft Corporation | Adaptive selection of picture-level quantization parameters for predicted video pictures |
US9118927B2 (en) * | 2007-06-13 | 2015-08-25 | Nvidia Corporation | Sub-pixel interpolation and its application in motion compensated encoding of a video signal |
US8873625B2 (en) | 2007-07-18 | 2014-10-28 | Nvidia Corporation | Enhanced compression in representing non-frame-edge blocks of image frames |
TWI375470B (en) * | 2007-08-03 | 2012-10-21 | Via Tech Inc | Method for determining boundary strength |
KR100872253B1 (en) * | 2007-08-23 | 2008-12-05 | 삼성전기주식회사 | Method for eliminating noise of image generated by image sensor |
US8619880B2 (en) | 2007-10-10 | 2013-12-31 | Qualcomm Incorporated | Universal blockiness correction |
US8638852B2 (en) * | 2008-01-08 | 2014-01-28 | Qualcomm Incorporated | Video coding of filter coefficients based on horizontal and vertical symmetry |
US20100278236A1 (en) * | 2008-01-17 | 2010-11-04 | Hua Yang | Reduced video flicker |
US8542730B2 (en) * | 2008-02-22 | 2013-09-24 | Qualcomm, Incorporated | Fast macroblock delta QP decision |
KR101591825B1 (en) * | 2008-03-27 | 2016-02-18 | 엘지전자 주식회사 | A method and an apparatus for encoding or decoding of a video signal |
US8189933B2 (en) | 2008-03-31 | 2012-05-29 | Microsoft Corporation | Classifying and controlling encoding quality for textured, dark smooth and smooth video content |
US8897359B2 (en) | 2008-06-03 | 2014-11-25 | Microsoft Corporation | Adaptive quantization for enhancement layer video coding |
WO2010010943A1 (en) * | 2008-07-25 | 2010-01-28 | ソニー株式会社 | Image processing device and method |
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 |
US8666181B2 (en) * | 2008-12-10 | 2014-03-04 | Nvidia Corporation | Adaptive multiple engine image motion detection system and method |
TWI468020B (en) * | 2009-02-19 | 2015-01-01 | Sony Corp | Image processing apparatus and method |
US10477249B2 (en) * | 2009-06-05 | 2019-11-12 | Apple Inc. | Video processing for masking coding artifacts using dynamic noise maps |
US20100322526A1 (en) * | 2009-06-18 | 2010-12-23 | Electronics And Telecommunications Research Institute | Method of filtering restored image using plurality of filters and encoding/decoding apparatus and method using filtering method |
SG10201809929SA (en) * | 2009-06-19 | 2018-12-28 | Mitsubishi Electric Corp | Image encoding device, image decoding device, image encoding method, and image decoding method |
TWI401972B (en) * | 2009-06-23 | 2013-07-11 | Acer Inc | Method for temporal error concealment |
US8306355B2 (en) * | 2009-07-13 | 2012-11-06 | Sharp Laboratories Of America, Inc. | Methods and systems for reducing compression artifacts |
JP5359657B2 (en) | 2009-07-31 | 2013-12-04 | ソニー株式会社 | Image encoding apparatus and method, recording medium, and program |
JP5344238B2 (en) * | 2009-07-31 | 2013-11-20 | ソニー株式会社 | Image encoding apparatus and method, recording medium, and program |
US20110135011A1 (en) * | 2009-12-04 | 2011-06-09 | Apple Inc. | Adaptive dithering during image processing |
BR112013000556A2 (en) * | 2010-07-09 | 2019-09-24 | Samsung Electronics Co Ltd | method for decoding a video using a video decoding processor, method for encoding a video using a video encoding processor, video decoding apparatus with respect to a video decoding processor, video encoding apparatus with respect to a video encoding processor, and computer readable recording medium |
US9819966B2 (en) | 2010-09-01 | 2017-11-14 | Qualcomm Incorporated | Filter description signaling for multi-filter adaptive 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 |
US8787443B2 (en) | 2010-10-05 | 2014-07-22 | Microsoft Corporation | Content adaptive deblocking during video encoding and decoding |
US9055305B2 (en) * | 2011-01-09 | 2015-06-09 | Mediatek Inc. | Apparatus and method of sample adaptive offset for video coding |
US9020033B2 (en) * | 2010-11-04 | 2015-04-28 | Nice-Systems Ltd. | System and method for enhancing compression using skip macro block on a compressed video |
JP5850214B2 (en) * | 2011-01-11 | 2016-02-03 | ソニー株式会社 | Image processing apparatus and method, program, and recording medium |
US9042458B2 (en) | 2011-04-01 | 2015-05-26 | Microsoft Technology Licensing, Llc | Multi-threaded implementations of deblock filtering |
KR20120140181A (en) * | 2011-06-20 | 2012-12-28 | 한국전자통신연구원 | Method and apparatus for encoding and decoding using filtering for prediction block boundary |
RU2577320C1 (en) * | 2012-01-19 | 2016-03-20 | Мицубиси Электрик Корпорейшн | Video decoding device, video coding device, video decoding method and video coding method |
RS56322B1 (en) * | 2012-04-16 | 2017-12-29 | Hfi Innovation Inc | Method and apparatus for loop filtering across slice or tile boundaries |
WO2020064949A1 (en) | 2018-09-28 | 2020-04-02 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Deblocking or deringing filter and encoder, decoder and method for applying and varying a strength of a deblocking or deringing filter |
CN112508913A (en) * | 2020-12-10 | 2021-03-16 | 国网江西省电力有限公司电力科学研究院 | Cable section edge detection method based on image detection |
Citations (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5164828A (en) * | 1990-02-26 | 1992-11-17 | Sony Corporation | Video signal transmission and method and apparatus for coding video signal used in this |
US5311310A (en) * | 1991-12-06 | 1994-05-10 | Bell Communications Research, Inc. | High efficiency coder and method employing overlapped motion compensation and perfect reconstruction filter banks |
US5365271A (en) * | 1991-12-27 | 1994-11-15 | Mitsubitshi Denki Kabushiki Kaisha | Information source encoding apparatus |
US5432870A (en) * | 1993-06-30 | 1995-07-11 | Ricoh Corporation | Method and apparatus for compressing and decompressing images of documents |
US5475434A (en) * | 1993-08-17 | 1995-12-12 | Goldstar Co. Ltd. | Blocking effect attenuation apparatus for high definition television receiver |
US5506945A (en) * | 1992-09-30 | 1996-04-09 | Bull S.A. | Use of "pipes" for the transfer of status information between different remote systems |
US5565921A (en) * | 1993-03-16 | 1996-10-15 | Olympus Optical Co., Ltd. | Motion-adaptive image signal processing system |
US5682205A (en) * | 1994-08-19 | 1997-10-28 | Eastman Kodak Company | Adaptive, global-motion compensated deinterlacing of sequential video fields with post processing |
US5715008A (en) * | 1996-03-07 | 1998-02-03 | Mitsubishi Denki Kabushiki Kaisha | Motion image decoding method and apparatus for judging contamination regions |
US5768433A (en) * | 1994-03-30 | 1998-06-16 | Sgs-Thomson Microelectronics S.A. | Picture compression circuit |
US5787204A (en) * | 1991-01-10 | 1998-07-28 | Olympus Optical Co., Ltd. | Image signal decoding device capable of removing block distortion with simple structure |
US5786857A (en) * | 1993-10-01 | 1998-07-28 | Texas Instruments Incorporated | Image processing system |
US5825475A (en) * | 1997-07-29 | 1998-10-20 | Van Leer Metallized Products (Usa) Limited | System and method for determining which of a plurality of visually indistinguishable objects have been marked with a covert indicator |
US5844614A (en) * | 1995-01-09 | 1998-12-01 | Matsushita Electric Industrial Co., Ltd. | Video signal decoding apparatus |
US5920356A (en) * | 1995-06-06 | 1999-07-06 | Compressions Labs, Inc. | Coding parameter adaptive transform artifact reduction process |
US6125398A (en) * | 1993-11-24 | 2000-09-26 | Intel Corporation | Communications subsystem for computer-based conferencing system using both ISDN B channels for transmission |
US6134571A (en) * | 1998-04-29 | 2000-10-17 | Hewlett-Packard Company | Implicit DST-based filter operating in the DCT domain |
US6381276B1 (en) * | 2000-04-11 | 2002-04-30 | Koninklijke Philips Electronics N.V. | Video encoding and decoding method |
US20030202605A1 (en) * | 1998-12-23 | 2003-10-30 | Intel Corporation | Video frame synthesis |
US6683988B1 (en) * | 1998-10-08 | 2004-01-27 | Oki Electric Industry Co., Ltd. | Picture transmission system using minimal reference-frame modification to recover from transmission errors |
US6708231B1 (en) * | 1999-08-12 | 2004-03-16 | Mitsumi Electric Co., Ltd. | Method and system for performing a peripheral firmware update |
US6825886B2 (en) * | 1997-12-26 | 2004-11-30 | Sony Corporation | Picture signal processing method and apparatus |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH02137489A (en) | 1988-11-17 | 1990-05-25 | Mitsubishi Electric Corp | Image encoding transmission equipment including motion compensation |
JPH02235491A (en) | 1989-03-09 | 1990-09-18 | Toshiba Corp | Picture coding system |
JP2868342B2 (en) | 1991-08-23 | 1999-03-10 | 日本電気株式会社 | Intra-loop filter control method for inter-frame predictive coding device |
JPH05130592A (en) | 1991-10-31 | 1993-05-25 | Toshiba Corp | Moving picture encoding device |
JP3090763B2 (en) | 1992-02-06 | 2000-09-25 | 富士通株式会社 | Video encoding device |
US5852669A (en) * | 1994-04-06 | 1998-12-22 | Lucent Technologies Inc. | Automatic face and facial feature location detection for low bit rate model-assisted H.261 compatible coding of video |
KR100192270B1 (en) * | 1996-02-03 | 1999-06-15 | 구자홍 | The video decoding circuit in hdtv |
KR19980703741A (en) | 1996-02-05 | 1998-12-05 | 요트.게.아.롤페즈 | Image data noise filtering method and device |
KR100242637B1 (en) * | 1996-07-06 | 2000-02-01 | 윤종용 | Loop filtering method for reducing blocking effect and ringing noise of motion compensated image |
GB2321856A (en) * | 1997-02-06 | 1998-08-12 | Brigitte Friedl | Roulette betting layouts |
US6462791B1 (en) * | 1997-06-30 | 2002-10-08 | Intel Corporation | Constrained motion estimation and compensation for packet loss resiliency in standard based codec |
-
1999
- 1999-01-20 AU AU12160/99A patent/AU717480B2/en not_active Expired
- 1999-01-20 RU RU99101345A patent/RU2154918C1/en active
- 1999-01-21 JP JP1362899A patent/JP3308921B2/en not_active Expired - Lifetime
- 1999-04-14 SG SG1999001675A patent/SG70679A1/en unknown
- 1999-04-30 BR BRPI9901340A patent/BRPI9901340B1/en not_active IP Right Cessation
- 1999-04-30 US US09/302,989 patent/US6665346B1/en not_active Expired - Lifetime
-
2003
- 2003-04-03 US US10/405,642 patent/US7251276B2/en not_active Expired - Lifetime
-
2007
- 2007-06-26 US US11/768,688 patent/US20080159386A1/en not_active Abandoned
Patent Citations (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5164828A (en) * | 1990-02-26 | 1992-11-17 | Sony Corporation | Video signal transmission and method and apparatus for coding video signal used in this |
US5787204A (en) * | 1991-01-10 | 1998-07-28 | Olympus Optical Co., Ltd. | Image signal decoding device capable of removing block distortion with simple structure |
US5311310A (en) * | 1991-12-06 | 1994-05-10 | Bell Communications Research, Inc. | High efficiency coder and method employing overlapped motion compensation and perfect reconstruction filter banks |
US5365271A (en) * | 1991-12-27 | 1994-11-15 | Mitsubitshi Denki Kabushiki Kaisha | Information source encoding apparatus |
US5506945A (en) * | 1992-09-30 | 1996-04-09 | Bull S.A. | Use of "pipes" for the transfer of status information between different remote systems |
US5565921A (en) * | 1993-03-16 | 1996-10-15 | Olympus Optical Co., Ltd. | Motion-adaptive image signal processing system |
US5432870A (en) * | 1993-06-30 | 1995-07-11 | Ricoh Corporation | Method and apparatus for compressing and decompressing images of documents |
US5475434A (en) * | 1993-08-17 | 1995-12-12 | Goldstar Co. Ltd. | Blocking effect attenuation apparatus for high definition television receiver |
US5786857A (en) * | 1993-10-01 | 1998-07-28 | Texas Instruments Incorporated | Image processing system |
US6125398A (en) * | 1993-11-24 | 2000-09-26 | Intel Corporation | Communications subsystem for computer-based conferencing system using both ISDN B channels for transmission |
US5768433A (en) * | 1994-03-30 | 1998-06-16 | Sgs-Thomson Microelectronics S.A. | Picture compression circuit |
US5682205A (en) * | 1994-08-19 | 1997-10-28 | Eastman Kodak Company | Adaptive, global-motion compensated deinterlacing of sequential video fields with post processing |
US5844614A (en) * | 1995-01-09 | 1998-12-01 | Matsushita Electric Industrial Co., Ltd. | Video signal decoding apparatus |
US5920356A (en) * | 1995-06-06 | 1999-07-06 | Compressions Labs, Inc. | Coding parameter adaptive transform artifact reduction process |
US5715008A (en) * | 1996-03-07 | 1998-02-03 | Mitsubishi Denki Kabushiki Kaisha | Motion image decoding method and apparatus for judging contamination regions |
US5825475A (en) * | 1997-07-29 | 1998-10-20 | Van Leer Metallized Products (Usa) Limited | System and method for determining which of a plurality of visually indistinguishable objects have been marked with a covert indicator |
US6825886B2 (en) * | 1997-12-26 | 2004-11-30 | Sony Corporation | Picture signal processing method and apparatus |
US6134571A (en) * | 1998-04-29 | 2000-10-17 | Hewlett-Packard Company | Implicit DST-based filter operating in the DCT domain |
US6683988B1 (en) * | 1998-10-08 | 2004-01-27 | Oki Electric Industry Co., Ltd. | Picture transmission system using minimal reference-frame modification to recover from transmission errors |
US20030202605A1 (en) * | 1998-12-23 | 2003-10-30 | Intel Corporation | Video frame synthesis |
US6708231B1 (en) * | 1999-08-12 | 2004-03-16 | Mitsumi Electric Co., Ltd. | Method and system for performing a peripheral firmware update |
US6381276B1 (en) * | 2000-04-11 | 2002-04-30 | Koninklijke Philips Electronics N.V. | Video encoding and decoding method |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100272191A1 (en) * | 2008-01-14 | 2010-10-28 | Camilo Chang Dorea | Methods and apparatus for de-artifact filtering using multi-lattice sparsity-based filtering |
US20090316793A1 (en) * | 2008-06-20 | 2009-12-24 | Yang Zhijie Michael | Method and system for adaptive deblocking for avs1-p2 |
US20100220931A1 (en) * | 2009-02-27 | 2010-09-02 | Vixs Systems, Inc. | Edge adaptive deblocking filter and methods for use therewith |
US8380001B2 (en) * | 2009-02-27 | 2013-02-19 | Vixs Systems, Inc. | Edge adaptive deblocking filter and methods for use therewith |
US8908760B2 (en) | 2009-03-30 | 2014-12-09 | Lg Electronics Inc. | Method and apparatus for processing video signals |
US20120195382A1 (en) * | 2009-06-18 | 2012-08-02 | Zte Corporation | Multi-Core Image Encoding Processing Device and Image Filtering Method Thereof |
US8867606B2 (en) * | 2009-06-18 | 2014-10-21 | Zte Corporation | Multi-core image encoding processing device and image filtering method thereof |
US9760981B2 (en) * | 2013-02-18 | 2017-09-12 | Samsung Display Co., Ltd. | Image processing part, display apparatus having the same and method of processing an image using the same |
US20140232711A1 (en) * | 2013-02-18 | 2014-08-21 | Samsung Display Co., Ltd. | Image processing part, display apparatus having the same and method of processing an image using the same |
US20180012340A1 (en) * | 2013-02-18 | 2018-01-11 | Samsung Display Co., Ltd. | Image processing part, display apparatus having the same and method of processing an image using the same |
US10275861B2 (en) * | 2013-02-18 | 2019-04-30 | Samsung Display Co., Ltd. | Image processing part, display apparatus having the same and method of processing an image using the same |
CN109845266A (en) * | 2016-10-14 | 2019-06-04 | 联发科技股份有限公司 | To remove the smoothing filtering method and device of ripple effect |
TWI669942B (en) * | 2016-10-14 | 2019-08-21 | 聯發科技股份有限公司 | Method and apparatus of smoothing filter for ringing artefact removal |
US10931974B2 (en) | 2016-10-14 | 2021-02-23 | Mediatek Inc. | Method and apparatus of smoothing filter for ringing artefact removal |
CN113518221A (en) * | 2016-10-14 | 2021-10-19 | 联发科技股份有限公司 | Smoothing filtering method and device for removing ripple effect |
CN107172423A (en) * | 2017-03-31 | 2017-09-15 | 武汉斗鱼网络科技有限公司 | A kind of method and device being filtered to frame of video |
Also Published As
Publication number | Publication date |
---|---|
JP3308921B2 (en) | 2002-07-29 |
US6665346B1 (en) | 2003-12-16 |
BRPI9901340B1 (en) | 2016-03-22 |
AU1216099A (en) | 2000-02-24 |
US20030219073A1 (en) | 2003-11-27 |
BR9901340A (en) | 2000-05-09 |
US7251276B2 (en) | 2007-07-31 |
AU717480B2 (en) | 2000-03-30 |
RU2154918C1 (en) | 2000-08-20 |
JP2000059769A (en) | 2000-02-25 |
SG70679A1 (en) | 2000-02-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6665346B1 (en) | Loop-filtering method for image data and apparatus therefor | |
US6539060B1 (en) | Image data post-processing method for reducing quantization effect, apparatus therefor | |
US8873643B2 (en) | Signal adaptive filtering method, signal adaptive filter and computer readable medium for storing program therefor | |
KR100331331B1 (en) | Image Data Loop Filtering Method | |
KR100301013B1 (en) | Image data loop filtering method and apparatus | |
US7778330B2 (en) | Method of measuring blocking artefacts |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |