IP Library › Granted Patent US 11,120,620
Granted Patent B2
US 11,120,620 · App. 16/910,252 · Granted Sep 14, 2021

Gradient approximation filtering mechanism

Inventors: Filip Strugar (Warwick, GB); Trapper McFerron (Hillsboro, OR); Adam Lake (Portland, OR)
Assignee: Intel Corporation
G06T15/80G06T3/4007G06T5/50G06T7/0002G06T2207/20024G06T2207/20224
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 11,120,620
App. No.
16/910,252
Granted
Sep 14, 2021
Kind
B2
Abstract

An apparatus to facilitate variable rate shading is disclosed. The apparatus comprises one or more processors to generate a course pixel output value for a pixel block, generate a gradient value comprising a gradient of the course pixel output value using neighbor pixel data and process the pixels in the pixel block using the gradient value to generate a fine pixel value for one or more pixels.

Claims (38)

1. An apparatus to facilitate variable rate shading, comprising:

one or more processors to:

generate a course pixel output value for a pixel block;

generate a gradient value comprising a gradient of the course pixel output value using neighbor pixel data; and

process the pixels in the pixel block using the gradient value to generate a fine pixel value for one or more pixels, wherein processing the pixels comprises approximating a bilinear filtering using the gradient value.

2. The apparatus of claim 1 , wherein the neighbor pixel data comprises data used to compute partial difference derivative components.

3. The apparatus of claim 2 , wherein the gradient value is determined over a size of the pixel block between horizontal or vertical neighbors in the pixel block.

4. The apparatus of claim 3 , wherein the one or more processors further to identify pixels in the pixel block that are to be interpolated or extrapolated and classify the pixels as interpolation pixels and extrapolation pixels.

5. The apparatus of claim 4 , wherein processing the pixels comprises interpolating the interpolation pixels and extrapolating the extrapolation pixels.

6. The apparatus of claim 5 , wherein the one or more processors further to apply color clamp values to horizontal and vertical color values of a fine pixel value for the one or more pixels.

7. The apparatus of claim 6 , wherein a color clamp value comprises an absolute threshold value.

8. The apparatus of claim 1 , wherein the bilinear filtering is approximated for a pixel by adding horizontal and vertical gradients for a pixel to the course pixel output value.

9. The apparatus of claim 8 , wherein the bilinear filtering is further approximated by approximated for a pixel by scaling the horizontal and vertical gradients scaled by an offset ratio.

10. A method to facilitate variable rate shading, comprising:

generating a course pixel output value for a pixel block;

generating a gradient value comprising a gradient of the course pixel output value using neighbor pixel data; and

processing the pixels in the pixel block using the gradient value to generate a fine pixel value for one or more pixels, wherein processing the pixels comprises approximating a bilinear filtering using the gradient value.

11. The method of claim 10 , wherein the neighbor pixel data comprises data used to compute partial difference derivative components.

12. The method of claim 11 , wherein the gradient value is determined over a size of the pixel block between horizontal or vertical neighbors in the pixel block.

13. The method of claim 10 , further comprising:

identifying pixels in the pixel block that are to be interpolated or extrapolated; and

classifying the pixels as interpolation pixels and extrapolation pixels.

14. The method of claim 13 , wherein processing the pixels comprises:

interpolating the interpolation pixels; and

extrapolating the extrapolation pixels.

15. The method of claim 10 , wherein the bilinear filtering is approximated for a pixel by adding horizontal and vertical gradients for a pixel to the course pixel output value.

16. The method of claim 15 , wherein the bilinear filtering is further approximated by approximated for a pixel by scaling the horizontal and vertical gradients scaled by an offset ratio.

17. At least one non-transitory computer readable medium having instructions stored thereon, which when executed by one or more processors, cause the processors to:

generate a course pixel output value for a pixel block;

generate a gradient value comprising a gradient of the course pixel output value using neighbor pixel data; and

process the pixels in the pixel block using the gradient value to generate a fine pixel value for one or more pixels, wherein processing the pixels comprises approximating a bilinear filtering using the gradient value.

18. The computer readable medium of claim 17 , having instructions stored thereon, which when executed by one or more processors, cause the processors to:

identify pixels in the pixel block that are to be interpolated or extrapolated; and

classify the pixels as interpolation pixels and extrapolation pixels.

19. The computer readable medium of claim 18 , wherein processing the pixels comprises:

interpolating the interpolation pixels; and

extrapolating the extrapolation pixels.

20. The computer readable medium of claim 17 , wherein the bilinear filtering is approximated for a pixel by adding horizontal and vertical gradients for a pixel to the course pixel output value.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 15, 2020
From: STRUGAR, FILIP; MCFERRON, TRAPPER; LAKE, ADAM
To: INTEL CORPORATION
Reel/Frame 053784/0977 →
Continuity (2)
Provisional Application 62872357 · Jul 10, 2019
Related Publication 20210012563A1 · Jan 14, 2021