Using NI with Radiosity Renders

questions about practical use of Neat Image
Post Reply
kirkt
Posts: 18
Joined: Wed Nov 16, 2005 4:36 pm

Using NI with Radiosity Renders

Post by kirkt »

Anyone who has used global illumination methods in 3D model rendering has experienced the Monte Carlo stochastic effects of concentrated light sources and the noise that this method generates in the subsequent rendering. NI does a nice job of toning down this noise and handling it effectively, making for a nice post-processing way of cutting down large iteration numbers or processor-hogging radiosity ray samples.

Here is a simple "before" and "after" of a scene rendered in lightwave. The scene is "lit" with a high dynamic range image using typical image-based lighting techniques. NI is used to suppress the speckling resulting from this rendering technique.

Image

Thanks again for this versatile tool!

Kirk
NITeam
Posts: 3173
Joined: Sat Feb 01, 2003 4:43 pm
Contact:

Post by NITeam »

Thank you for the great example, Kirk. Looks impressive (I mean the scene). I wonder how much does it take to generate this scene as it is and how much would it take to generate a cleaner version of the same scene so that NI would not be needed aftewards. How much time saving can you get using NI?

Thank you,
Vlad
kirkt
Posts: 18
Joined: Wed Nov 16, 2005 4:36 pm

Post by kirkt »

As far as rendering time, it depends on a number of factors. Even if you let the renderer chug for hours, you still can end up with artifact. Lightwave has a "shading noise" check box that you can select to help reduce the noise associated with global illumination techniques. It is applied at the end of each render pass. For example, if you choose Lightwave's "Low" anti-aliasing, the renderer performs 5 passes, applying the shading noise filter after each of the 5 passes. Increasing the number of passes (i.e., selecting higher quality anti-aliasing) is a brute force way of permitting a smaller radiosity array per pixel due to the "random" nature of the sampling.

So ultimately you have to find that balance between radiosity samples per pixel and anti-aliasing passes. NI seems like a time saver in that you may be able to meet the above compromise half way, by reducing noise (number of samples per pixel) and smoothing edges (sort of like anti-aliasing) in NI without eliminating high-frequency detail - essentially permitting you to decrease BOTH the number of passes AND number of samples per pixel in LW and then post-process in NI. I'll play with it and see how it works and post the results of my non-scientific study here.

Of course, how NI fits into the overall workflow of 3D artists is another story.... :lol:
Lightwave is scriptable, but I am not really familiar with scripting it. Blender, an open-source 3D modeling and rendering app, is integrated with a Python API and plug-in environment. Etc.
kirkt
Posts: 18
Joined: Wed Nov 16, 2005 4:36 pm

Post by kirkt »

Here are some sample renderings using a simple scene with a HDR image - the ubiquitous "Uffizi" light probe image from
http://www.debevec.org/Probes/.

The scene contains a diffuse cube (matte), a glossy toroid (shiny plastic) and a specular reflective sphere (chrome) with a slightly reflective floor. To save time, only one bounce was calculated (i.e., the dark underside of the cube is not indirectly illuminated by light bouncing off of the floor, as it would be in "real life").

Figure 1 represents a comparison of 4 different Monte Carlo radiosity sample settings: 1x3, 2x6, 3x9 and 4x12 and their NI filtered post-processed counterparts. The time to render each image is noted next to the sample setting label (xxmxxs). Note the increase in rendering time as the radiosity sample array increases. Qualitatively, it appears that NI filtering gives you about one apparent level of sampling increase with repsect to the appearance of noise in the image. That is, the 3x9 unfiltered image and the 2x6 filtered image look similar.


Image
Figure 1 - Radiosity renderings and the effect of sampling and filtering

The next series of images are comparisons of an unfiltered image and its lower sampling cousin filtered with NI. NI does a nice job. Obviously this is pretty qualitative, but is interesting nonetheless!


Image
Figure 2 - 1x3 filtered image versus 2x6 unfiltered image


Image
Figure 3 - 2x6 filtered image versus 3x9 unfiltered image


Image
Figure 4 - 3x9 filtered image versus 4x12 unfiltered image
kirkt
Posts: 18
Joined: Wed Nov 16, 2005 4:36 pm

Post by kirkt »

Here is the 3x9 filtered image of the entire test scene:

Image
kirkt
Posts: 18
Joined: Wed Nov 16, 2005 4:36 pm

Post by kirkt »

Here is a 4x12 image, filtered with NI. This image includes 2 bounces ad took approximately 3h30m to render.

Image
NITeam
Posts: 3173
Joined: Sat Feb 01, 2003 4:43 pm
Contact:

Post by NITeam »

This is impressive. :!:

Thank you very much for the detailed description and image samples. Indeed, the time difference between 1x3 and 4x12 feels large and I fully understand why you want to find a way to reduce the rendering time. Even one level increase in quality saves appreciable amount of time.

I also understand that NI is an external part of the workflow and it may add some manual work even if reducing the overall processing time. I think we will have to look closer at tools like LW to see if NI noise reduction could be integrated directly into those workflow. With sufficient demand it could even become a new product specifically targeted at such ray tracing applications. We will have to explore these aspects.

Once again, thank you very much for your examples and comments!

Kind regards,
Vlad
kirkt
Posts: 18
Joined: Wed Nov 16, 2005 4:36 pm

Post by kirkt »

Here is the reason NI is so useful. This is a 3x9 rendering of the same scene, with one bounce, with the "Shading Noise Reduction" feature in LW turned "ON" - that is, the LW filter is applied after every one of the 5 anti-aliasing passes. Note the blotchy nature of the image and weird banding on the face of the cube, etc. - yikes! Compare this to the 3x9 image of the whole scene above (3x9, 1 bounce, no Shading Noise Reduction but post-filtered with NI).

Image
kirkt
Posts: 18
Joined: Wed Nov 16, 2005 4:36 pm

Post by kirkt »

One more post on this and I will stop wasting space.

This is a render using FPrime, the kick-ass aftermarket renderer for Lightwave from Worley Labs (http://www.worley.com). This renderer is really amazing and very fast compared to the LW render engine, but still generates noise. The below render was for 2 bounces of Monte Carlo radiosity, with the light quality setting at 100%. This render took about 12 minutes. (Wow! - especially compared to the 3 hour LW render above!).

The next image is NI applied to this render. Smooths it just a little extra for a real nice look.


Image
Figure 1 - FPrime render of 2 bounces


Image
Figure 2 - Figure 1 w/ NI post processing.

Image
Figure 3 - Zoomed comparison

Even this awesome renderer can benefit....
NITeam
Posts: 3173
Joined: Sat Feb 01, 2003 4:43 pm
Contact:

Post by NITeam »

Yes, the speedup is impressive and even in this case Neat Image can help. I guess it could help even better (I am talking about the latest example) if the noise profile was fine-tuned a bit better - that dark bottom part of the cube could probably be filtered a bit stronger in that case. Well, it is just a guess in this case, but generally, the higher quality (including more fine-tuned) profile is used the more accurate noise reduction becomes.

Anyway, thank you once again for the great example of using NI in yet another type of applications!

Kind regards,
Vlad
kirkt
Posts: 18
Joined: Wed Nov 16, 2005 4:36 pm

Post by kirkt »

Yes - In all of these examples I just chose a small patch of flat noise and hit "Regular Profile" - no fine tuning or anything like that. As these are all 640x480 images, the profiling analysis took a second, if that. I'm sure with fine tuning you could get better results.

let me knw if you want more examples, or the orignal images to play around with (not JPEG'ed).

Thanks!

kirk
NITeam
Posts: 3173
Joined: Sat Feb 01, 2003 4:43 pm
Contact:

Post by NITeam »

Yes, some original samples could be useful. We would check the noise properties to see if the noise is similar to other noise types that we can see for example in digital photos. I would appreciate if you sent a couple of unfiltered images to me by e-mail.

Anyway, what is important is that NI works with such images as it is and probably it could be made even more useful with some work.

Thank you,
Vlad
kirkt
Posts: 18
Joined: Wed Nov 16, 2005 4:36 pm

Post by kirkt »

Just for kicks I rendered a "flyby" animation of the test scene - it was 380 frames long and I used the Worley Labs FPrime renderer. Each frame is saved as a TIFF, 320x240. I applied NI to each frame in a batch Action within Photoshop. I opened a frame with a good flat surface full of noise, used "Regular Image" for NI to generate the profile on the fly and then just applied that profile to every frame in the batch. Super easy to automate, leading me to believe that it is feasible to use NI to produce animations. I assembled the animation in Final Cut Pro and exported it as a QuickTime movie. Obviously, getting rid of as much noise as possible is crucial for compression, and saving rendering time by accepting some noise in each frame (noise that will be NI'ed in post processing) is a nice workflow. Noise caused by Monte Carlo simulation is a killer in animations because the distribution of the noisy pixels changes with each frame, causing all of the noisy surfaces to appear to shimmer. There are non-NI ways to cut down on the noise as well (adding actual lights to the scene, etc.) but still, NI is pretty useful even in a situation where there are a lot of frames to process.

I have no idea how one goes about writing plug-ins for FCP, but it may be another area to consider....

kirk
paulselhi
Posts: 1
Joined: Thu Jan 26, 2006 9:14 am
Location: UK
Contact:

Post by paulselhi »

I am not sure if you are familiar with the maxwell render (nextlimit.com), it creates stunning "radiosity" renders but is quite different from most techniques ( more like fprime)

It's only downfall is the very VERY long render times howver it seems tha NI is a good tool to use to take relativevely quickly generated renders and clean them up

Here is a quick exmaple, I am a total newbie to MR and NI so please don't think this shows of the beauty of either !! !!

Image

Image
Post Reply