From f4015d9fce21a4aa5991e3977a146183b1ea32ba Mon Sep 17 00:00:00 2001 From: Juho Vepsalainen Date: Thu, 27 Dec 2007 20:36:17 +0000 Subject: Bilateral Blur Node Bilateral Blur node allows the user to blur images while retaining their sharp edges. Blurring can be controlled by following controls: *Iterations *Color Sigma *Space Sigma Also image input to blur and a determinator image is provided. The node produces a blurred image as its output. The more iterations are provided, the smoother the result. Use color and space sigmas to control the amount of blur. One way to use the determinator input is to feed a mix (add) of Z and normal passes to it. Examples of usage: Ambient Occlusion smoothing - http://wiki.blender.org/index.php/Image:Bilateral_blur_example_01.blend Blurry Refraction - http://wiki.blender.org/index.php/Image:Bilateral_blur_example_02.blend Smoothed shadows and smoothed Ambient Occlusion combined - http://wiki.blender.org/index.php/Image:Bilateral_blur_example_03.blend If you check out the examples, render the image and alter the values to see how they affect. More information about the algorithm can be found at http://homepages.inf.ed.ac.uk/rbf/CVonline/LOCAL_COPIES/MANDUCHI1/Bilateral_Filtering.html . Thanks to Vilem Novak for contributing the patch. --- source/blender/makesdna/DNA_node_types.h | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'source/blender/makesdna/DNA_node_types.h') diff --git a/source/blender/makesdna/DNA_node_types.h b/source/blender/makesdna/DNA_node_types.h index e010d8409fa..ceab9a1c9c1 100644 --- a/source/blender/makesdna/DNA_node_types.h +++ b/source/blender/makesdna/DNA_node_types.h @@ -209,6 +209,11 @@ typedef struct NodeDBlurData { char wrap, pad; } NodeDBlurData; +typedef struct NodeBilateralBlurData { + float sigma_color, sigma_space; + short iter, pad; +} NodeBilateralBlurData; + typedef struct NodeHueSat { float hue, sat, val; } NodeHueSat; -- cgit v1.2.3