Filtering image data using a neural network
US-2018204314-A1 · Jul 19, 2018 · US
US10311552B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-10311552-B2 |
| Application number | US-201715630478-A |
| Country | US |
| Kind code | B2 |
| Filing date | Jun 22, 2017 |
| Priority date | Apr 6, 2017 |
| Publication date | Jun 4, 2019 |
| Grant date | Jun 4, 2019 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
The present disclosure relates to using a neural network to efficiently denoise images that were generated by a ray tracer. The neural network can be trained using noisy images generated with noisy samples and corresponding denoised or high-sampled images (e.g., many random samples). An input feature to the neural network can include color from pixels of an image. Other input features to the neural network, which would not be known in normal image processing, can include shading normal, depth, albedo, and other characteristics available from a computer-generated scene. After the neural network is trained, a noisy image that the neural network has not seen before can have noise removed without needing manual intervention.
Opening claim text (preview).
What is claimed is: 1. A method for reducing noise in a two-dimensional image obtained from a computer-generated scene, the method comprising: receiving a plurality of noisy subimages, wherein a subimage is at least a portion of an image, and wherein each of the plurality of noisy subimages is rendered using a respective set of rays in a corresponding computer-generated scene; receiving a plurality of refined subimages, each refined subimage corresponding to a noisy subimage of the plurality of noisy subimages and generated using a corresponding computer-generated scene, wherein a refined subimage has reduced noise relative to a corresponding noisy subimage; extracting values of a first set of features from pixels in each of the plurality of noisy subimages; determining values of a second set of features from information obtained from the corresponding computer-generated scenes from which the plurality of noisy subimages were generated; training a neural network based on the values of the features and the plurality of refined subimages, wherein the neural network outputs pixel values of an output subimage or outputs gradients of pixels of the output subimage, and wherein the training includes: generating, using the neural network, an output subimage for a noisy subimage of the plurality of noisy subimages; comparing the output subimage to a refined subimage of the plurality of refined subimages that corresponds to the noisy subimage; and modifying one or more parameters of the neural network based on the comparison; receiving a new two-dimensional image rendered from a computer-generated scene; and generating, using the neural network after training, a new output image corresponding to the new two-dimensional image, wherein the neural network is a first neural network, wherein the first set of features includes an illumination of pixels of the noisy subimage, wherein the first neural network is trained based on a first light path, wherein a second neural network is trained based on a second light path, and wherein output of the first neural network and the second neural network are combined to generate the new output image. 2. The method of claim 1 , wherein a first noisy subimage of the plurality of noisy subimages is rendered using a respective set of rays corresponding to a first computer-generated scene, and wherein a second noisy subimage of the plurality of noisy subimages is rendered using a respective different set of rays for a different set of pixels corresponding to the first computer-generated scene. 3. The method of claim 1 , wherein the refined subimage is generated using more rays than the corresponding noisy subimage. 4. The method of claim 1 , wherein the refined subimage is a processed version of the corresponding noisy subimage, and wherein the processing includes removing at least a portion of noise from the corresponding noisy subimage using a filter. 5. The method of claim 1 , wherein one of the first set of features is associated with a color or an illumination of each pixel of the noisy subimage. 6. The method of claim 1 , wherein the first light path is associated with specular light transport of the pixels of the noisy subimage, and wherein the second light path is associated with diffuse light transport of the pixels of the noisy subimage. 7. The method of claim 6 , wherein the diffuse light transport of the pixels is divided by an albedo of the pixels before being trained using the second neural network. 8. The method of claim 1 , wherein the one or more parameters that are modified include one or more weights that were determined by the neural network, wherein comparing the output subimage to the refined subimage that corresponds to the noisy subimage includes calculating an error between pixel values of the output subimage and pixel values of the refined subimage. 9. A non-transitory computer-readable medium storing a computer program that when executed by a processor of a computer cause the processor to implement a computer-implemented method comprising: receiving a plurality of noisy subimages, wherein a subimage is at least a portion of an image, and wherein each of the plurality of noisy subimages is rendered using a respective set of rays in a corresponding computer-generated scene; receiving a plurality of refined subimages, each refined subimage corresponding to a noisy subimage of the plurality of noisy subimages and generated using a corresponding computer-generated scene, wherein a refined subimage has reduced noise relative to a corresponding noisy subimage; extracting values of a first set of features from pixels in each of the plurality of noisy subimages; determining values of a second set of features from information obtained from the corresponding computer-generated scenes from which the plurality of noisy subimages were generated; training a neural network based on the values of the features and the plurality of refined subimages, wherein the neural network outputs pixel values of an output subimage or outputs gradients of pixels of the output subimage, and wherein the training includes: generating, using the neural network, an output subimage for a noisy subimage of the plurality of noisy subimages; comparing the output subimage to a refined subimage of the plurality of refined subimages that corresponds to the noisy subimage; and modifying one or more parameters of the neural network based on the comparison; receiving a new two-dimensional image rendered from a computer-generated scene; and generating, using the neural network after training, a new output image corresponding to the new two-dimensional image, wherein the neural network is a first neural network, wherein the first set of features includes an illumination of pixels of the noisy subimage, wherein the first neural network is trained based on a first light path, wherein a second neural network is trained based on a second light path, and wherein output of the first neural network and the second neural network are combined to generate the new output image. 10. The non-transitory computer-readable medium of claim 9 , wherein a first noisy subimage of the plurality of noisy subimages is rendered using a respective set of rays corresponding to a first computer-generated scene, and wherein a second noisy subimage of the plurality of noisy subimages is rendered using a respective different set of rays for a different set of pixels corresponding to the first computer-generated scene. 11. The non-transitory computer-readable medium of claim 9 , wherein the refined subimage is generated using more rays than the corresponding noisy subimage. 12. The non-transitory computer-readable medium of claim 9 , wherein the refined subimage is a processed version of the corresponding noisy subimage, and wherein the processing includes removing at least a portion of noise from the corresponding noisy subimage using a filter. 13. The non-transitory computer-readable medium of claim 9 , wherein one of the first set of features is associated with a color or an illumination of each pixel of the noisy subimage. 14. The non-transitory computer-readable medium of claim 9 , wherein the one or more parameters that are modified include one or more weights that were determined by the neural network, wherein comparing the output subimage to the refined subimage that corresponds to the noisy subimage includes calculating an error between pixel values of the output subimage and pixel values of the refined subimage. 15. A method for reducing noise in a two-dimensional image obtained from a computer-generated scene, the method compri
Related publications grouped by family.
Answers are generated from the same data shown on this page.