help with Robust Image Denoising using a Virtual Flash Image

Practical and theoretical implementation discussion.
Post Reply
MohamedSakr
Posts: 83
Joined: Thu Apr 24, 2014 2:27 am

help with Robust Image Denoising using a Virtual Flash Image

Post by MohamedSakr » Sat May 03, 2014 8:22 pm

I'm trying to implement "Robust Image Denoising using a Virtual Flash Image for Monte Carlo Ray Tracing" , I've successfully implemented the denoising algorithm, but still having some trouble with generating the flash image itself!!

paper url, http://sglab.kaist.ac.kr/VFL/

here is the result for 16 spp "modified a little in smallVCM to generate virtual flash image(VFI)", the VFI looks too noisy compared to what the images in paper looks like!!
Attachments
LeftIsInputNoisyImage_RightIsVFI.jpg
LeftIsInputNoisyImage_RightIsVFI.jpg (648.52 KiB) Viewed 3263 times

macnihilist
Posts: 8
Joined: Thu Mar 22, 2012 9:36 am

Re: help with Robust Image Denoising using a Virtual Flash I

Post by macnihilist » Sun May 04, 2014 6:29 pm

What I'm going to say applies to 'aggressive' denoising with only a few spp, which is not necessarily the focus of the paper you cited. Also, I don't know how you generate your virtual flash images, and I don't remember exactly how the paper does it, and I don't remember exactly how the paper does the filtering. That being said, here my comments:

In my opinion glossy surfaces are not a strong point of this kind of algorithm (EDIT: especially with caustics). I usually just render them as diffuse, this way you get at least the texture and (to some extent) the normals into your range buffer. On the positive side of things: glossy reflections are usually quite blurry anyway, so blurring them a bit more with a 'wrong' range buffer is often acceptable, especially if the blurring goes away with more ssp.

For the perfect specular things I usually go for Whitted-style ray tracing in the VFI, which is fast, gets rid of the MC noise, and still captures some structure.

In general I also had mixed experiences with the t-test (I think that is what they used) with small sample sets (not surprisingly). You need a few samples to get near a normal distribution and to get results of some significance.

If you don't want to change the way the VFI is generated, I don't know what you can do -- I assume the usual MC noise reduction techniques are already implemented in SmallVCM.

Post Reply