IP Library Granted Patent US 8,023,559
Granted Patent B2
US 8,023,559 · App. 11/244,885 · Granted Sep 20, 2011

Minimizing blocking artifacts in videos

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,023,559
App. No.
11/244,885
Granted
Sep 20, 2011
Kind
B2
Abstract

Techniques for minimizing blocking artifacts in video images or frames are disclosed. In general, these blocking artifacts are the result of block-based compression standards, such as MPEG-1, MPEG-2, MPEG-4, H.261, H.263, and H.264. According to one aspect of the present invention, a blurring process is configured to replace pixels on the blocking boundaries with randomly selected pixels within respective regions, each of the regions is predefined with respect to a pixel being replaced. In a certain perspective, a blocking boundary is diffused without introducing blurring to other than the blocking artifacts. According to another aspect to the present invention, pixels in an image or frame are sequentially processed by a moving average process that is configured to smooth only those pixels that may cause subjective perception of the blocking artifacts.

Claims (51)

1. A method for minimizing blocking artifacts in an image, the method comprising:

determining a pixel to be processed;

defining a region with respect to the pixel, the region including at least eight other pixels;

wherein determining the pixel to be processed includes making a determination as to whether a number of pixels in the region that have a digital value that differs from an average digital value of the total pixels in the region is less than a predefined number of pixels;

upon determining that the number of pixels is less than the predefined number of pixels, performing a random selection of a replacement pixel in the region to replace the pixel;

making a determination as to whether a digital level of the replacement pixel is within a threshold of a digital level of the pixel; and

replacing the pixel with the replacement pixel upon determining that the digital level of the replacement pixel is within the threshold of the digital level of the pixel.

2. The method as recited in claim 1 , wherein the determining of the pixel to be processed comprises scanning all pixels sequentially in the image.

3. The method as recited in claim 2 , wherein the image is one of a plurality of frames in video data that is recovered from a compressed version thereof.

4. The method as recited in claim 3 , wherein the compressed version is created from an original version in accordance with a standard.

5. The method as recited in claim 4 , wherein the standard involves one or more compression techniques that operate on macroblocks that potentially cause the blocking artifacts.

6. The method as recited in claim 1 , wherein the region is defined to be of quadrilateral, circle or vary in accordance with the pixel or surrounding pixels thereof.

7. The method as recited in claim 1 , wherein the method is implemented in an in-line deblocker designated for a compression standard.

8. The method as recited in claim 7 , wherein the compression standard is H.264.

9. The method as recited in claim 7 , wherein each successive frame of original data material has a different noise pattern, the method further comprising:

encoding a first frame in a sequence with more bits to represent noise accurately, if any in the first frame; and

moving blocks around using random motion vectors to provide an illusion of the noise that changes from frame to frame.

10. The method as recited in claim 1 , wherein the blocking artifacts are diffused by randomly selecting a replacement pixel in the defined region to replace a pixel contributing to the blocking artifacts.

11. A method for minimizing blocking artifacts in an image, the method comprising:

determining a pixel to be processed;

defining a region with respect to the pixel, the region including at least eight other pixels; and

calculating a computed value for a replacement pixel in the defined region to replace the pixel, wherein calculating the computed value includes: (i) determining an average value of pixels in the region, (ii) determining an intermediate value between the average value and the pixel to be processed, (iii) weighting the intermediate value by an absolute value and a streak, wherein the streak represents the number of pixels in the region, and (iv) randomly rounding up or down the weighted value.

12. The method as recited in claim 11 , wherein the determining of the pixel to be processed comprises scanning all pixels sequentially in the image.

13. The method as recited in claim 12 , wherein the image is one of a plurality of frames in video data that is recovered from a compressed version thereof.

14. The method as recited in claim 13 , wherein the compressed version is created from an original version in accordance with a standard.

15. The method as recited in claim 14 , wherein the standard involves one or more compression techniques that operate on macroblocks that potentially cause the blocking artifacts.

16. The method as recited in claim 11 , wherein the streak is recalculated after every pixel is processed.

17. A system for minimizing blocking artifacts in an image, the system comprising:

memory for storing code as a deblocking module;

a processor, coupled to the memory, executing the deblocking module to cause the system to perform operations of:

determining a pixel to be processed;

defining a region with respect to the pixel, the region including at least eight other pixels;

wherein determining the pixel to be processed includes making a determination as to whether a number of pixels in the region that have a digital value that differs from an average digital value of the total pixels in the region is less than a predefined number of pixels;

upon determining that the number of pixels is less than the predefined number of pixels, performing a random selection of a replacement pixel in the region to replace the pixel;

making a determination as to whether a digital level of the replacement pixel is within a threshold of a digital level of the pixel; and

replacing the pixel with the replacement pixel upon determining that the digital level of the replacement pixel is within the threshold of the digital level of the pixel.

18. The system as recited in claim 17 , wherein the region is defined to be of quadrilateral, circle or vary in accordance with the pixel or surrounding pixels thereof.

19. The system as recited in claim 18 , wherein the system is implemented in an in-line deblocker designated for a compression standard.

20. The system as recited in claim 19 , wherein the compression standard is H.264.

21. The system as recited in claim 17 , wherein each successive frame of original data material has a different noise pattern, the operations further comprising:

encoding a first frame in a sequence with more bits to represent noise accurately, if any in the first frame; and

moving blocks around using random motion vectors to provide an illusion of the noise that changes from frame to frame.

22. The system as recited in claim 17 , wherein the blocking artifacts are diffused by randomly selecting a replacement pixel in the defined region to replace a pixel contributing to the blocking artifacts.

23. A system for minimizing blocking artifacts in an image, the system comprising:

memory for storing code as a deblocking module;

a processor, coupled to the memory, executing the deblocking module to cause the system to perform operations of:

determining a pixel to be processed;

defining a region with respect to the pixel, the region including at least eight other pixels; and

calculating a computed value for a replacement pixel in the defined region to replace the pixel, wherein calculating the computed value includes: (i) determining an average value of pixels in the region, (ii) determining an intermediate value between the average value and the pixel to be processed, (iii) weighting the intermediate value by an absolute value and a streak, and (iv) randomly rounding up or down the weighted value.

24. The system as recited in claim 23 , wherein the operations are performed on an image that is one of a plurality of frames in video data recovered from a compressed version thereof.

25. The system as recited in claim 23 , wherein the streak is recalculated after every pixel is processed.

Assignments (3)
CORRECTIVE ASSIGNMENT TO CORRECT THE COVERSHEET TO EXCLUDE APP. NO. 11368308, WHICH WAS INADVERTENTLY ADDED AT THE TIME OF RECORDING THE ASSIGNMENT PREVIOUSLY RECORDED AT REEL: 053609 FRAME: 0302. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Jan 18, 2022
From: VUDU, LLC
To: NBCUNIVERSAL MEDIA LLC
Reel/Frame 058756/0244 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 26, 2020
From: VUDU, LLC
To: NBCUNIVERSAL MEDIA LLC
Reel/Frame 053609/0302 →
CHANGE OF NAME Recorded Aug 24, 2020
From: VUDU, INC.
To: VUDU, LLC
Reel/Frame 053585/0162 →