IP Library › Granted Patent US 11,113,790
Granted Patent B2
US 11,113,790 · App. 16/363,927 · Granted Sep 7, 2021

Adding greater realism to a computer-generated image by smoothing jagged edges

Inventors: Adam Christopher Marrs (Cary, NC); Josef B. Spjut (Rancho Cucamonga, CA); Holger Heinrich Gruen (Bavaria, DE); Morgan McGuire (Williamstown, MA); Rahul Sathe (Folsom, CA)
Assignee: NVIDIA CORPORATION
G06T5/002G06T5/50G06T7/50G06T15/06G06T2207/20192G06T2210/08G06T2210/21
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,113,790
App. No.
16/363,927
Granted
Sep 7, 2021
Kind
B2
Abstract

During the rendering of an image, specific pixels in the image are identified where antialiasing would be helpful. Antialiasing is then performed on these identified pixels, where anti-aliasing is a technique used to add greater realism to a digital image by smoothing jagged edges. This reduces a cost of performing antialiasing by reducing a number of pixels within an image on which antialiasing is performed.

Claims (37)

1. A method comprising:

applying temporal antialiasing (TAA) to an image, wherein for each pixel of at least a subset of pixels, the TAA compares a historical value for the pixel in a previous frame with current values of neighboring pixels to the pixel in a current frame;

identifying failure pixels resulting from applying the TAA to the image, where each pixel of the at least a subset of pixels with the historical value that differs from the current values of the neighboring pixels by more than a predetermined amount is identified as a failure pixel; and

performing antialiasing on each of the failure pixels, utilizing a combination of ray tracing and fast approximate anti-aliasing (FXAA).

2. The method of claim 1 , wherein the failure pixels are identified utilizing results of applying the TAA to the image, utilizing intermediate data, or utilizing source geometry.

3. The method of claim 1 , wherein the image is created utilizing forward rendering or deferred rendering.

4. The method of claim 1 , wherein each pixel of the at least a subset of pixels having a depth value for a pixel that differs from depth values for neighboring pixels by more than a predetermined amount is identified as a failure pixel.

5. The method of claim 1 , wherein each pixel of the at least a subset of pixels having a luminance value for a pixel that differs from luminance values for neighboring pixels by more than a predetermined amount is identified as a failure pixel.

6. The method of claim 1 , wherein the failure pixels are marked using a sentinel value.

7. The method of claim 1 , wherein the failure pixels are included within a segmentation mask.

8. The method of claim 1 , wherein performing the antialiasing includes determining point-sampling visibility for a sub-pixel area within each of the failure pixels, utilizing GPU ray tracing.

9. The method of claim 1 , wherein results of performing the antialiasing on the failure pixels are combined with the results of applying the TAA to the image to create an output image.

10. The method of claim 1 , further comprising:

identifying one or more pixels for which no temporal information exists; and

performing antialiasing on the identified one or more pixels, utilizing fast approximate anti-aliasing (FXAA).

11. The method of claim 10 , further comprising:

creating an output image by combining results of applying the TAA to the image, results of performing the antialiasing on the failure pixels, and results of performing the antialiasing on the one or more pixels for which no temporal information exists.

12. The method of claim 1 , wherein results of applying the TAA to the image includes a color buffer for a second set of pixels of the plurality of pixels, and wherein results of performing the antialiasing on the failure pixels includes textures for a first set of pixels of the plurality of pixels that include the failure pixels.

13. The method of claim 12 , wherein a portion of the color buffer associated with the failure pixels is discarded.

14. The method of claim 13 , further comprising:

creating an output image by blending the textures with the color buffer.

15. A system comprising:

a processor that is configured to:

apply temporal antialiasing (TAA) to an image, wherein for each pixel of at least a subset of pixels, the TAA compares a historical value for the pixel in a previous frame with current values of neighboring pixels to the pixel in a current frame;

identify failure pixels resulting from applying the TAA to the image, where each pixel of the at least a subset of pixels with the historical value that differs from the current values of the neighboring pixels by more than a predetermined amount is identified as a failure pixel; and

perform antialiasing on each of the failure pixels, utilizing a combination of ray tracing and fast approximate anti-aliasing (FXAA); and

a memory that is configured to store results of the antialiasing.

16. The system of claim 15 , wherein the failure pixels are identified utilizing results of applying the TAA to the image, utilizing intermediate data, or utilizing source geometry.

17. The system of claim 15 , wherein the image is created utilizing forward rendering or deferred rendering.

18. The system of claim 15 , wherein each pixel of the at least a subset of pixels having a depth value for a pixel that differs from depth values for neighboring pixels by more than a predetermined amount is identified as a failure pixel.

19. The system of claim 15 , wherein each pixel of the at least a subset of pixels having a luminance value for a pixel that differs from luminance values for neighboring pixels by more than a predetermined amount is identified as a failure pixel.

20. The system of claim 15 , wherein the failure pixels are marked using a sentinel value.

21. The system of claim 15 , wherein the failure pixels are included within a segmentation mask.

22. A non-transitory computer-readable storage medium storing instructions that, when executed by a processor, causes the processor to perform steps comprising:

applying temporal antialiasing (TAA) to an image, wherein for each pixel of at least a subset of pixels, the TAA compares a historical value for the pixel in a previous frame with current values of neighboring pixels to the pixel in a current frame;

identifying failure pixels resulting from applying the TAA to the image, where each pixel of the at least a subset of pixels with the historical value that differs from the current values of the neighboring pixels by more than a predetermined amount is identified as a failure pixel; and

performing antialiasing on each of the failure pixels, utilizing a combination of ray tracing and fast approximate anti-aliasing (FXAA).

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 26, 2019
From: MARRS, ADAM CHRISTOPHER; SPJUT, JOSEF B.; GRUEN, HOLGER HEINRICH; MCGUIRE, MORGAN; SATHE, RAHUL
To: NVIDIA CORPORATION
Reel/Frame 048701/0751 →
Continuity (3)
Provisional Application 62659620 · Apr 18, 2018
Provisional Application 62656951 · Apr 12, 2018
Related Publication 20190318454A1 · Oct 17, 2019
Cited By (1)
US 12,469,203