IP Library › Granted Patent US 12,574,564
Granted Patent B2
US 12,574,564 · App. 18/325,983 · Granted Mar 10, 2026

Banding artifact detector

Inventors: Joel Sole Rojals (San Franscisco, CA); Mariana Fernandez Afonso (Santa Clara, PT)
Assignee: Netflix, Inc.
H04N19/86G06F3/14G06V10/751G09G3/2044G09G2340/0442
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 12,574,564
App. No.
18/325,983
Granted
Mar 10, 2026
Kind
B2
Abstract

A computer-implemented method includes accessing a video frame that includes a plurality of pixels. The method also includes generating a spatial mask that identifies pixels whose likelihood of causing banding within the video frame meets at least a minimum threshold likelihood. The method also includes computing a local distribution for a region of the video frame that includes at least those pixels that were identified by the spatial mask to detect bands in the video frame. The method further includes determining that the detected bands in the video frame are at least a minimum threshold size. The method also includes applying dithering to those detected bands in the video frame that were determined to meet the minimum threshold size. Various other methods, systems, and computer-readable media are also disclosed.

Claims (37)

1 . A computer-implemented method comprising:

accessing a video frame that includes a plurality of pixels;

generating a spatial mask that identifies one or more pixels whose likelihood of causing banding within the video frame meets at least a minimum threshold likelihood based at least in part on whether the one or more pixels have zero derivatives;

computing a local distribution for a region of the video frame that includes at least the identified pixels that were identified by the spatial mask to detect one or more bands in the video frame;

determining that the detected bands in the video frame are at least a minimum threshold size; and

applying dithering to those detected bands in the video frame that were determined to meet the minimum threshold size.

2 . The computer-implemented method of claim 1 , further comprising outputting the dithered video frame to an electronic display.

3 . The computer-implemented method of claim 2 , wherein the video frame is part of a video feed that is streamed to the electronic display.

4 . The computer-implemented method of claim 1 , wherein generating the spatial mask including computing a zero derivative for at least one of the one or more pixels in the video frame.

5 . The computer-implemented method of claim 4 , wherein the spatial mask is generated for a block of pixels that includes at least a minimum number of adjacent pixels.

6 . The computer-implemented method of claim 5 , wherein generating the spatial mask includes, for each block of pixels, determining a number of zero derivative values in the region around the block of pixels.

7 . The computer-implemented method of claim 6 , wherein generating the spatial mask includes assigning the block of pixels to the spatial mask if the determined number of zero derivative values in the region is above a threshold value.

8 . The computer-implemented method of claim 1 , wherein computing the local distribution comprises identifying two or more bands within the region.

9 . The computer-implemented method of claim 1 , wherein computing the local distribution comprises identifying one or more local statistics for the region around a specified block of pixels.

10 . The computer-implemented method of claim 9 , wherein the one or more local statistics for the region comprise p_values for the pixels in the block of pixels.

11 . The computer-implemented method of claim 9 , wherein identifying the local statistics for the region comprises identifying a largest band and a second largest band.

12 . The computer-implemented method of claim 1 , wherein the region comprises a specified size, and wherein the size depends on a resolution of a display to which the video frame is to be sent.

13 . A system comprising:

at least one physical processor; and

physical memory comprising computer-executable instructions that, when executed by the physical processor, cause the physical processor to:

access a video frame that includes a plurality of pixels;

generate a spatial mask that identifies one or more pixels whose likelihood of causing banding within the video frame meets at least a minimum threshold likelihood based at least in part on whether the one or more pixels have zero derivatives;

compute a local distribution for a region of the video frame that includes at least the identified pixels that were identified by the spatial mask to detect one or more bands in the video frame;

determine that the detected bands in the video frame are at least a minimum threshold size; and

apply dithering to those detected bands in the video frame that were determined to meet the minimum threshold size.

14 . The system of claim 13 , wherein applying dithering to the detected bands in the video frame includes applying dithering to a block of pixels in the video frame.

15 . The system of claim 13 , wherein applying dithering to the detected bands in the video frame includes creating a pseudorandom number to generate noise used in the dithering.

16 . The system of claim 15 , wherein creating the pseudorandom number for noise generation includes indexing a random vector and multiplying by a random number based on a selected pixel value.

17 . The system of claim 13 , wherein pixel values are updated during dithering according to a calculated probability value.

18 . The system of claim 17 , wherein the probability value is calculated as part of computing the local distribution.

19 . The system of claim 13 , wherein the region comprises a specified size, and wherein the size depends on a resolution of a display to which the video frame is to be sent.

20 . A non-transitory computer-readable medium comprising one or more computer-executable instructions that, when executed by at least one processor of a computing device, cause the computing device to:

access a video frame that includes a plurality of pixels;

generate a spatial mask that identifies one or more pixels whose likelihood of causing banding within the video frame meets at least a minimum threshold likelihood based at least in part on whether the one or more pixels have zero derivatives;

compute a local distribution for a region of the video frame that includes at least the identified pixels that were identified by the spatial mask to detect one or more bands in the video frame;

determine that the detected bands in the video frame are at least a minimum threshold size; and

apply dithering to those detected bands in the video frame that were determined to meet the minimum threshold size.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 30, 2023
From: SOLE ROJALS, JOEL; FERNANDEZ AFONSO, MARIANA
To: NETFLIX, INC.
Reel/Frame 063800/0929 →
Continuity (2)
Provisional Application 63347468 · May 31, 2022
Related Publication 20230388556A1 · Nov 30, 2023
References Cited (6)
US 8730251B2 · Mathew · 2014 [cited by examiner]
US 9432694B2 · Su · 2016 [cited by examiner]
US 11915391B2 · Bhattacharjee · 2024 [cited by examiner]
US 20190080437A1 · Shivakumar · 2019 [cited by examiner]
Bhagavathy, et al. (Multi-Scale Probabilistic Dithering for Suppressing Banding Artifacts in Digital Images). (Year: 2007). [cited by examiner]
PCT/US2023/067664 International Search Report and Written Opinion mailed Sep. 12, 2023. [cited by applicant]