Community
Arnold General Rendering Forum
cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

How to create multichannel noice output

8 REPLIES 8
Reply
Message 1 of 9
llamCAN4Q
1127 Views, 8 Replies

How to create multichannel noice output

I'm currently running command line noice over multiple AOVs with hopes of splitting the AOVs back out after process completes.

So,

./noice -patchradius 3 -searchradius 9 -variance 0.5 -i beauty.exr -i denoise_albedo.exr -i variance.exr -i N_noice.exr -i Z_noice.exr -i specular.exr -i <other AOVs> -o denoised.exr

I notice that denoised.exr only has RGBA channels and no other AOVs or channels. Is there a way to output denoised image with all the AOVs and channels preserved?

Thanks!

Labels (4)
8 REPLIES 8
Message 2 of 9
hitecom8172
in reply to: llamCAN4Q

Instead of using noice I'd consider using something like neat video. denoising in nuke is always better and much much faster unless you have something very high profile. Also have you tried writng channels to separate exrs? Much faster write speeds and can denoise them individually.

Message 3 of 9
llamCAN4Q
in reply to: llamCAN4Q

Sorry, I'm not sure I understand what you mean.

I have separate AOV renders which are being sent to noice. Since noice outputs a single exr, I would like to separate the AOVs back out as part of the post denoising process.

Message 4 of 9
llamCAN4Q
in reply to: llamCAN4Q

Is there anyway to have noice output "specular.R", "specular.G", etc. in addition to just the beauty's "R","G","B","A" channels?

Message 5 of 9
Stephen.Blair
in reply to: llamCAN4Q

noice outputs the denoised AOVs only.

However, if you want to be a bit hacky, you can tell noice to denoise AOVs for which you provide no variance channels. Then noice will simple copy the existing AOV channels to the output.

For example, I've added the other AOVs with -l flags. But there's no variance AOVs, so noice "will just copy"

C:\solidangle\mtoadeploy\2019\bin\noice 
-i C:/maya/projects/default/images/denoise_test.0002.exr 
-o C:/maya/projects/default/images/denoise_test.0002_denoised.exr 
-ef 0 -sr 9 -pr 3 -v 0.5 
-l diffuse -l direct -l emission -l indirect -l specular -l sss 
Denoising image C:/Users/Stephen Blair/Documents/maya/projects/default/images/denoise_test/denoise_test.0002.exr 
------------------------ (1/1)
noice 5.4.0.0 [4d2efe03] - the Arnold denoiser
Using 40 threads.
Loading images...
Loading file "C:/maya/projects/default/images.0002.exr".
Using feature AOV 'diffuse_albedo' with filter 'gaussian_filter'
Using feature AOV 'N' with filter 'gaussian_filter'
Using feature AOV 'Z' with filter 'gaussian_filter'
Working with 1 frame at 1024x1024
Will denoise AOV "RGBA", using associated variance
   Output file will be "C:/maya/projects/default/images.0002_denoised.exr"
Will just copy AOV "diffuse", variance not found
   Output file will be "C:/maya/projects/default/images.0002_denoised.exr"
Will just copy AOV "direct", variance not found
   Output file will be "C:/maya/projects/default/images.0002_denoised.exr"
Will just copy AOV "emission", variance not found
   Output file will be "C:/maya/projects/default/images.0002_denoised.exr"
Will denoise AOV "indirect", using associated variance
   Output file will be "C:/maya/projects/default/images.0002_denoised.exr"
Will denoise AOV "specular", using associated variance
   Output file will be "C:/maya/projects/default/images.0002_denoised.exr"
Will just copy AOV "sss", variance not found
   Output file will be "C:/maya/projects/default/images.0002_denoised.exr"
Start denoising (patch radius 3, search radius 9, variance 0.5)
Denoising RGBA
Denoising diffuse
   Could not find AOV with source diffuse and filter variance_filter
   Could not find variance for AOV "diffuse", skipping denoise.
Denoising direct
   Could not find AOV with source direct and filter variance_filter
   Could not find variance for AOV "direct", skipping denoise.
Denoising emission
   Could not find AOV with source emission and filter variance_filter
   Could not find variance for AOV "emission", skipping denoise.
Denoising indirect
Denoising specular
Denoising sss
   Could not find AOV with source sss and filter variance_filter
   Could not find variance for AOV "sss", skipping denoise.
Finished denoising
Saving image C:/maya/projects/default/images.0002_denoised.exr (1024 x 1024 x 22)

Here's the noice output

oiiotool.exe -v --info "denoise_test.0002_denoised.exr"
Reading denoise_test.0002_denoised.exr
denoise_test.0002_denoised.exr : 1024 x 1024, 22 channel, float openexr
    channel list: R, G, B, A, diffuse.R, diffuse.G, diffuse.B, direct.R, direct.G, direct.B, emission.R, emission.G, emission.B, indirect.R, indirect.G, indirect.B, specular.R, specular.G, specular.B, sss.R, sss.G, sss.B


// Stephen Blair
// Arnold Renderer Support
Message 6 of 9
llamCAN4Q
in reply to: Stephen.Blair

Thank you for your suggestion.

Right now, what we have are separate AOVs renders. We were hoping to be able to select individual AOVs which are noisy and just run noice on those. Obviously denoising beauty is important, but we would like to denoise the other layers separately as well.

If we pass the other light AOVs with '-l' flag as the hack you mentioned, from what I can see, they will remain unaltered. If I try passing the other AOVs as the main input along with the variance AOVs, it doesn't seem to denoise them. Getting the folloing output message:

Message 7 of 9
llamCAN4Q
in reply to: Stephen.Blair

...

Loading images...

Loading file "<all the AOV files>"

Using feature AOV 'diffuse_albedo' with filter 'gaussian_filter'

Using feature AOV 'N' with filter 'gaussian_filter'

Using feature AOV 'Z' with filter 'gaussian_filter'

Working with 5 frames at 960x540

Will just copy AOV "specular", variance not found

Output file will be "output.exr"

Start denoising (patch radius 3, search radius 9, variance 0.5)

Denoising diffuse

Could not find AOV with source specular and filter variance_filer

Could not find variance for AOV "specular", skipping denoise.

Finished denoising

Message 8 of 9
llamCAN4Q
in reply to: Stephen.Blair

My guess is this is because those variance AOVs were based on beauty.

I've tried skipping the variance AOVs in hopes the additional frames alone would provide some temporal stability but it does not seem to denoise either.

So basically, this works for beauty, but not for the other AOVs as we would like. Is there a way we can denoise the other AOVs?

Thanks!

Message 9 of 9
Stephen.Blair
in reply to: llamCAN4Q

In the original question, it says "with all the AOVs and channels preserved" so that's what I answered.

If you want to denoise individual AOVs, see here:

https://answers.arnoldrenderer.com/questions/16837/efficient-denoiser-utitliy-workaround.html



// Stephen Blair
// Arnold Renderer Support

Can't find what you're looking for? Ask the community or share your knowledge.

Post to forums  

Autodesk Design & Make Report