IP Library › Granted Patent US 11,475,542
Granted Patent B2
US 11,475,542 · App. 16/717,090 · Granted Oct 18, 2022

Neural network system with temporal feedback for adaptive sampling and denoising of rendered sequences

Inventors: Carl Jacob Munkberg (Malmö, SE); Jon Niklas Theodor Hasselgren (Bunkeflostrand, SE); Anjul Patney (Kirkland, WA); Marco Salvi (Kirkland, WA); Aaron Eliot Lefohn (Kirkland, WA); Donald Lee Brittain (Pasadena, CA)
Assignee: NVIDIA Corporation
G06T5/002G06T7/248G06T7/50G06T2207/10016G06T2207/20084
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,475,542
App. No.
16/717,090
Granted
Oct 18, 2022
Kind
B2
Abstract

A neural network-based rendering technique increases temporal stability and image fidelity of low sample count path tracing by optimizing a distribution of samples for rendering each image in a sequence. A sample predictor neural network learns spatio-temporal sampling strategies such as placing more samples in dis-occluded regions and tracking specular highlights. Temporal feedback enables a denoiser neural network to boost the effective input sample count and increases temporal stability. The initial uniform sampling step typically present in adaptive sampling algorithms is not needed. The sample predictor and denoiser operate at interactive rates to achieve significantly improved image quality and temporal stability compared with conventional adaptive sampling techniques.

Claims (45)

1. A computer-implemented method, comprising:

receiving guide data for a rendered image frame in a sequence of rendered image frames, the sequence including a previous rendered image frame and the rendered image frame;

receiving external state including a reconstructed previous rendered image frame with fewer artifacts compared with the previous rendered image frame, wherein the external state is warped, using difference data corresponding to changes between the previous rendered image frame and the rendered image frame, to produce warped external state;

processing the guide data for the rendered image frame using layers of a neural network model to produce a sample map that indicates a number of samples to be computed for each pixel in the rendered image frame, wherein the warped external state is input to one or more of the layers of the neural network; and

processing the guide data for the previous rendered image frame using layers of the neural network model to produce a first sample map that indicates a number of samples to be computed for each pixel in the previous rendered image frame, wherein an initial warped external state is input to one or more of the layers of the neural network.

2. The computer-implemented method of claim 1 , further comprising rendering the rendered image frame according to the sample map.

3. The computer-implemented method of claim 2 , wherein the rendered image frame includes artifacts including at least a loss of high-frequency detail or residual noise.

4. The computer-implemented method of claim 1 , further comprising processing the previous rendered image frame using layers of a reconstruction neural network model to produce the external state.

5. The computer-implemented method of claim 1 , wherein the guide data comprises normal vectors, depth, or albedo.

6. The computer-implemented method of claim 1 , wherein the difference data is motion vectors.

7. A computer-implemented method, comprising:

receiving guide data for a rendered image frame in a sequence of rendered image frames, the sequence including a previous rendered image frame and the rendered image frame;

receiving external state including a reconstructed previous rendered image frame with fewer artifacts compared with the previous rendered image frame, wherein the external state is warped, using difference data corresponding to changes between the previous rendered image frame and the rendered image frame, to produce warped external state;

processing the guide data for the rendered image frame using layers of a neural network model to produce a sample map that indicates a number of samples to be computed for each pixel in the rendered image frame, wherein the warped external state is input to one or more of the layers of the neural network; and

processing the rendered image frame using layers of a reconstruction neural network model to produce second external state including a reconstructed rendered image frame with fewer artifacts compared with the rendered image frame.

8. The computer-implemented method of claim 7 , wherein processing the rendered image frame to produce the reconstructed data frame is based on the warped external state.

9. The computer-implemented method of claim 7 , wherein processing the rendered image frame to produce the reconstructed image frame is based on the guide data for the rendered image frame.

10. The computer-implemented method of claim 7 , further comprising adjusting parameters of the neural network model and the reconstruction neural network model based on differences between the reconstructed image frame and the rendered image frame without artifacts.

11. A system, comprising:

a processing unit configured as a neural network model to:

receive guide data for a rendered image frame in a sequence of rendered image frames, the sequence including a previous rendered image frame and the rendered image frame;

receive external state including a reconstructed previous rendered image frame with fewer artifacts compared with the previous rendered image frame, wherein the external state is warped, using difference data corresponding to changes between the previous rendered image frame and the rendered image frame, to produce warped external state;

process the guide data for the rendered image frame using layers of the neural network model to produce a sample map that indicates a number of samples to be computed for each pixel in the rendered image frame, wherein the warped external state is input to one or more of the layers of the neural network;

process the guide data for the previous rendered image frame using layers of the neural network model to produce a first sample map that indicates a number of samples to be computed for each pixel in the previous rendered image frame.

12. The system of claim 11 , further comprising a renderer that is coupled to the neural network model and configured to render the rendered image frame according to the sample map.

13. The system of claim 12 , wherein the rendered image frame includes artifacts including at least a loss of high-frequency detail or residual noise.

14. The system of claim 11 , further comprising a reconstruction neural network model configured to process the previous rendered image frame using layers of the reconstruction neural network model to produce the external state.

15. The system of claim 11 , wherein the guide data comprises normal vectors, depth, or albedo.

16. A system, further comprising:

a processing unit configured as a neural network model to:

receive guide data for a rendered image frame in a sequence of rendered image frames, the sequence including a previous rendered image frame and the rendered image frame;

receive external state including a reconstructed previous rendered image frame with fewer artifacts compared with the previous rendered image frame, wherein the external state is warped, using difference data corresponding to changes between the previous rendered image frame and the rendered image frame, to produce warped external state;

process the guide data for the rendered image frame using layers of the neural network model to produce a sample map that indicates a number of samples to be computed for each pixel in the rendered image frame, wherein the warped external state is input to one or more of the layers of the neural network;

a reconstruction neural network model configured to process the rendered image frame using layers of the reconstruction neural network model to produce second external state including a reconstructed rendered image frame with fewer artifacts compared with the rendered image frame.

17. The system of claim 16 , wherein processing the rendered image frame to produce the reconstructed data frame is based on the warped external state.

18. A non-transitory, computer-readable storage medium storing instructions that, when executed by a processing unit, cause the processing unit to:

receive guide data for a rendered image frame in a sequence of rendered image frames, the sequence including a previous rendered image frame and the rendered image frame;

receive external state including a reconstructed previous rendered image frame with fewer artifacts compared with the previous rendered image frame, wherein the external state is warped, using difference data corresponding to changes between the previous rendered image frame and the rendered image frame, to produce warped external state;

process the guide data for the rendered image frame using layers of a neural network model to produce a sample map that indicates a number of samples to be computed for each pixel in the rendered image frame, wherein the warped external state is input to one or more of the layers of the neural network; and

process the guide data for the previous rendered image frame using layers of the neural network model to produce a first sample map that indicates a number of samples to be computed for each pixel in the previous rendered image frame.

19. A non-transitory, computer-readable storage medium storing instructions that, when executed by a processing unit, cause the processing unit to:

receive guide data for a rendered image frame in a sequence of rendered image frames, the sequence including a previous rendered image frame and the rendered image frame;

receive external state including a reconstructed previous rendered image frame with fewer artifacts compared with the previous rendered image frame, wherein the external state is warped, using difference data corresponding to changes between the previous rendered image frame and the rendered image frame, to produce warped external state;

process the guide data for the rendered image frame using layers of a neural network model to produce a sample map that indicates a number of samples to be computed for each pixel in the rendered image frame, wherein the warped external state is input to one or more of the layers of the neural network; and

process the rendered image frame using layers of a reconstruction neural network model to produce second external state including a reconstructed rendered image frame with fewer artifacts compared with the rendered image frame.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 17, 2019
From: MUNKBERG, CARL JACOB; HASSELGREN, JON NIKLAS THEODOR; PATNEY, ANJUL; SALVI, MARCO; LEFOHN, AARON ELIOT; BRITTAIN, DONALD LEE
To: NVIDIA CORPORATION
Reel/Frame 051306/0662 →
Continuity (5)
Continuation In Part 16041502 · Jul 20, 2018
Provisional Application 62884453 · Aug 8, 2019
Provisional Application 62621510 · Jan 24, 2018
Provisional Application 62537800 · Jul 27, 2017
Related Publication 20200126191A1 · Apr 23, 2020
Cited By (3)
US 12,477,131 US 12,567,197 US 12,739,383