PBRT v4 - Part III: Watercolor Scene - denoised

Jan Walter July 18, 2023 [TRACE] #pbrt-v4 #denoise

The last part (PBRT v4 - Part II: OptiX denoiser) introduced the OptiX denoiser. Let's apply this to another scene, the Watercolor Scene.

The scene comes with 18 camera perspectives, so there is a lot of material to play with, but I have selected only two of them for this blog post. I did render both camera perspectives (camera-9 and camera-13) with 4096 samples per pixel (spp), copied the results into a subfolder (spp4096), and applied the OptiX denoiser there.

$ pbrt --stats --spp 4096 camera-9.pbrt
...
$ pbrt --stats --spp 4096 camera-13.pbrt
...
$ cp camera-9.exr spp4096/camera-9-4096spp.exr
$ cp camera-13.exr spp4096/camera-13-4096spp.exr
$ cd spp4096/
$ imgtool convert camera-9-4096spp.exr --outfile camera-9-4096spp.png
$ imgtool convert camera-13-4096spp.exr --outfile camera-13-4096spp.png
$ imgtool denoise-optix camera-9-4096spp.exr --outfile camera-9-denoised-4096spp.png
$ imgtool denoise-optix camera-13-4096spp.exr --outfile camera-13-denoised-4096spp.png

For convenience I provide a watercolor_spp4096.zip file with the OpenEXR and PNG files involved:

$ unzip -l watercolor_spp4096.zip 
Archive:  watercolor_spp4096.zip
  Length      Date    Time    Name
---------  ---------- -----   ----
        0  07-18-2023 06:28   spp4096/
  1003526  07-18-2023 06:23   spp4096/camera-13-denoised-4096spp.png
  1338772  07-18-2023 06:28   spp4096/camera-13-4096spp.png
   764671  07-18-2023 06:23   spp4096/camera-9-denoised-4096spp.png
  1106958  07-18-2023 06:28   spp4096/camera-9-4096spp.png
 18447347  07-18-2023 06:19   spp4096/camera-13-4096spp.exr
 17286470  07-18-2023 06:19   spp4096/camera-9-4096spp.exr
---------                     -------
 39947744                     7 files

It's best to download those files and compare them yourself using your favourite image viewer.

Camera 13

The denoised version of camera-13

The biggest visual difference between the denoised version and the original rendering for camera 13 are the two glasses (one filled with colored water) and the floor pattern:

Using imf_diff from mental images for camera 13

$ imf_diff -d -f camera-13-4096spp.png camera-13-denoised-4096spp.png diff-002.jpg
differing pixels:	 28.785% (215885 of 750000)
average difference:	  1.823%
maximum difference:	 13.865%
Summary: Many pixels differ.
== "camera-13-4096spp.png" and "camera-13-denoised-4096spp.png" are different

Camera 9

The denoised version of camera-9

For camera 9 the difference is really hard to catch by eye. If you can spot them it's most visible in the specular highlights of the cans (and the wavy parts). But the shadows on the white walls are noticeable less noisy.

Using imf_diff from mental images for camera 9

$ imf_diff -d -f camera-9-4096spp.png camera-9-denoised-4096spp.png diff-001.jpg
differing pixels:	 10.669% (80020 of 750000)
average difference:	  1.169%
maximum difference:	  6.207%
Summary: Many pixels differ slightly.
== "camera-9-4096spp.png" and "camera-9-denoised-4096spp.png" are different

Back to top