Hi,
I am wondering if finding out which pixels are still noisy and calculating a relative "pixel noisiness" measure can help in optimizing the ray tracing engine (like progressively concentrating the rays on those noisy pixels/patches and reducing rays or even eliminating them for pixels that are already clean).
Honestly, I thought that this optimization strategy has been done long time ago until a saw a recent youtube of someone explaining the new features of an advanced unbiased renderer which includes a "manual way" for focusing rays on noisy areas. With today's advances in image/signal processing, I can't imagine a need to do this manually.
I've attached a simple test render I made with Octane (1000 SPP) with corresponding pixel noisiness level using a simple algorithm I developed in MATLAB (noise is dispersed so I just used a threshold to separate noisy pixels (black) from the one that are already clean (white)). Maybe Octane development team can look into using this technique if not already done in the engine.
Mishal
optimization strategy to reduce noise
Forum rules
NOTE: The software in this forum is not %100 reliable, they are development builds and are meant for testing by experienced octane users. If you are a new octane user, we recommend to use the current stable release from the 'Commercial Product News & Releases' forum.
NOTE: The software in this forum is not %100 reliable, they are development builds and are meant for testing by experienced octane users. If you are a new octane user, we recommend to use the current stable release from the 'Commercial Product News & Releases' forum.
Interesting! Nice to see matlab in action (I used it years ago besides gauss and r).
Could you compare the level of nosie in more dimensions - (ms/s, GI clamp, Coherent ratio) and post graphs (2D or 3D)?
Could you compare the level of nosie in more dimensions - (ms/s, GI clamp, Coherent ratio) and post graphs (2D or 3D)?
3090, Titan, Quadro, Xeon Scalable Supermicro, 768GB RAM; Sketchup Pro, Classical Architecture.
Custom alloy powder coated laser cut cases, Autodesk metal-sheet 3D modelling.
build-log http://render.otoy.com/forum/viewtopic.php?f=9&t=42540
Custom alloy powder coated laser cut cases, Autodesk metal-sheet 3D modelling.
build-log http://render.otoy.com/forum/viewtopic.php?f=9&t=42540
That will be interesting but it requires the engine reporting these values to work with. Matlab is a great tool for many things and it is incredibly useful for signal and image processing applications.smicha wrote:Interesting! Nice to see matlab in action (I used it years ago besides gauss and r).
Could you compare the level of nosie in more dimensions - (ms/s, GI clamp, Coherent ratio) and post graphs (2D or 3D)?
Masayuki Tanaka has a paper regarding noisy images and they do not assume a noise pattern since even in SLR cameras the noise is dependent on the signal-to-noise ratio which is higher in bright areas (clean) and low in the shadow areas (similar to ray tracing problem ?). the paper can be found here;
http://www.ok.ctrl.titech.ac.jp/res/NLE ... ation.html
I think their method is an overkill for rendering engines (partitioning the image and iterative calculations etc) but it prompted me to look into a simpler and computationally efficient way to separate noisy pixels from clean ones and calculating a simple measure for noise level.
I am playing with the concept right now and I think I may have a way to even "clean up" the image using the additional information describing the noise pattern (machine learning methods ?)
Mishal
OK, so can you post same graph for two different GI clamp values - 10000 and 1
3090, Titan, Quadro, Xeon Scalable Supermicro, 768GB RAM; Sketchup Pro, Classical Architecture.
Custom alloy powder coated laser cut cases, Autodesk metal-sheet 3D modelling.
build-log http://render.otoy.com/forum/viewtopic.php?f=9&t=42540
Custom alloy powder coated laser cut cases, Autodesk metal-sheet 3D modelling.
build-log http://render.otoy.com/forum/viewtopic.php?f=9&t=42540
Hi Smicha,smicha wrote:OK, so can you post same graph for two different GI clamp values - 10000 and 1
sorry I misunderstood your original request, still learning Octane render

Sure, I attached GI clamp of 1 and 10000 noise images. I changed the engine to PT and now working with 16 bit images. the noise distribution is different than DL, which is expected. the only clear difference at a glance is in the bright spot on the wall which still shows noise at 1000 SPP for GI clamp of 10000. there could be more hidden in the noisy regions but it is difficult to distinguish visually.
I'm working on a method to reduce Octane render noise and hopefully I will post some proof of concept images if it does work.
Mishal
Thank you! This is even more interesting. So one more test would be useful: there is so called 'path term power' and it affects noise in shadowed areas. So could you run tests for 0, 0.5, 1 of its values?
3090, Titan, Quadro, Xeon Scalable Supermicro, 768GB RAM; Sketchup Pro, Classical Architecture.
Custom alloy powder coated laser cut cases, Autodesk metal-sheet 3D modelling.
build-log http://render.otoy.com/forum/viewtopic.php?f=9&t=42540
Custom alloy powder coated laser cut cases, Autodesk metal-sheet 3D modelling.
build-log http://render.otoy.com/forum/viewtopic.php?f=9&t=42540
sorry I forgot to attach the imagesmishal wrote:Hi Smicha,smicha wrote:OK, so can you post same graph for two different GI clamp values - 10000 and 1
sorry I misunderstood your original request, still learning Octane render.
Sure, I attached GI clamp of 1 and 10000 noise images. I changed the engine to PT and now working with 16 bit images. the noise distribution is different than DL, which is expected. the only clear difference at a glance is in the bright spot on the wall which still shows noise at 1000 SPP for GI clamp of 10000. there could be more hidden in the noisy regions but it is difficult to distinguish visually.
I'm working on a method to reduce Octane render noise and hopefully I will post some proof of concept images if it does work.
Mishal
- prehabitat
- Posts: 495
- Joined: Fri Aug 16, 2013 10:30 am
- Location: Victoria, Australia
This thread is heading towards adaptive sampling right? Isn't that already locked in as an octane 3.1 feature?
Win10/3770/16gb/K600(display)/GTX780(Octane)/GTX590/372.70
Octane 3.x: GH Lands VARQ Rhino5 -Rhino.io- C4D R16 / Revit17
Octane 3.x: GH Lands VARQ Rhino5 -Rhino.io- C4D R16 / Revit17