Denoiser AOVs
The following AOVs are needed for the Denoiser.
Beauty
Channel Type | Channel Name | Channel Source / LPE | Filter | Statistics |
---|---|---|---|---|
color | Ci | Ci |
|
|
float | a | a |
|
|
color | mse | Ci |
| mse |
Shading
Channel Type | Channel Name | Channel Source / LPE | Filter | Statistics |
---|---|---|---|---|
float | sampleCount | sampleCount | sum |
|
color | albedo | lpe:nothruput;noinfinitecheck;noclamp;unoccluded;overwrite;C<.S'passthru'>*((U2L)|O) |
|
|
color | albedo_mse | lpe:nothruput;noinfinitecheck;noclamp;unoccluded;overwrite;C<.S'passthru'>*((U2L)|O) |
| mse |
color | diffuse | lpe:C(D[DS]*[LO])|[LO] |
|
|
color | diffuse_mse | lpe:C(D[DS]*[LO])|[LO] |
| mse |
color | specular | lpe:CS[DS]*[LO] |
|
|
color | specular_mse | lpe:CS[DS]*[LO] |
| mse |
Geometry
Channel Type | Channel Name | Channel Source / LPE | Filter | Statistics |
---|---|---|---|---|
normal | normal | lpe:nothruput;noinfinitecheck;noclamp;unoccluded;overwrite;CU6L |
|
|
normal | normal_mse | lpe:nothruput;noinfinitecheck;noclamp;unoccluded;overwrite;CU6L |
| mse |
Setting up a scene in RIB for denoising is more involved if you are doing it manually, but most of the work is in adding the correct DisplayChannel
lines to the prologue.
Here is the basic snippet that you will need:
ML Denoiser AOVs
# Beauty...
DisplayChannel "color Ci" "string source" ["Ci"] "float[2] exposure" [1 1] "float[3] remap" [0 0 0] "float shadowthreshold" [0.00999999978]
DisplayChannel "float a" "string source" ["a"] "float[2] exposure" [1 1] "float[3] remap" [0 0 0] "float shadowthreshold" [0.00999999978]
DisplayChannel "color mse" "string source" ["Ci"] "float[2] exposure" [1 1] "float[3] remap" [0 0 0] "float shadowthreshold" [0.00999999978] "string statistics" ["mse"]
# Shading...
DisplayChannel "float sampleCount" "string source" ["sampleCount"] "float[2] exposure" [1 1] "float[3] remap" [0 0 0] "float shadowthreshold" [0.00999999978]
DisplayChannel "color albedo" "string source" ["color lpe:nothruput;noinfinitecheck;noclamp;unoccluded;overwrite;C<.S'passthru'>*((U2L)|O)"] "float[2] exposure" [1 1] "float[3] remap" [0 0 0] "float shadowthreshold" [0.00999999978]
DisplayChannel "color albedo_mse" "string source" ["color lpe:nothruput;noinfinitecheck;noclamp;unoccluded;overwrite;C<.S'passthru'>*((U2L)|O)"] "float[2] exposure" [1 1] "float[3] remap" [0 0 0] "float shadowthreshold" [0.00999999978] "string statistics" ["mse"]
DisplayChannel "color diffuse" "string source" ["color lpe:C(D[DS]*[LO])|[LO]"] "float[2] exposure" [1 1] "float[3] remap" [0 0 0] "float shadowthreshold" [0.00999999978]
DisplayChannel "color diffuse_mse" "string source" ["color lpe:C(D[DS]*[LO])|[LO]"] "float[2] exposure" [1 1] "float[3] remap" [0 0 0] "float shadowthreshold" [0.00999999978] "string statistics" ["mse"]
DisplayChannel "color specular" "string source" ["color lpe:CS[DS]*[LO]"] "float[2] exposure" [1 1] "float[3] remap" [0 0 0] "float shadowthreshold" [0.00999999978]
DisplayChannel "color specular_mse" "string source" ["color lpe:CS[DS]*[LO]"] "float[2] exposure" [1 1] "float[3] remap" [0 0 0] "float shadowthreshold" [0.00999999978] "string statistics" ["mse"]
#Geometry...
DisplayChannel "normal normal" "string source" ["normal lpe:nothruput;noinfinitecheck;noclamp;unoccluded;overwrite;CU6L"] "float[2] exposure" [1 1] "float[3] remap" [0 0 0] "float shadowthreshold" [0.00999999978]
DisplayChannel "normal normal_mse" "string source" ["normal lpe:nothruput;noinfinitecheck;noclamp;unoccluded;overwrite;CU6L"] "float[2] exposure" [1 1] "float[3] remap" [0 0 0] "float shadowthreshold" [0.00999999978] "string statistics" ["mse"]