diff options
author | Juho Vepsalainen <bebraw@gmail.com> | 2007-12-27 23:36:17 +0300 |
---|---|---|
committer | Juho Vepsalainen <bebraw@gmail.com> | 2007-12-27 23:36:17 +0300 |
commit | f4015d9fce21a4aa5991e3977a146183b1ea32ba (patch) | |
tree | 537953ae79d6138ae54e3c5413a05a7c93d02649 /source/blender/makesdna/DNA_node_types.h | |
parent | 59d40d7f84c5d4f7536fe9642f26f1e5483a68a7 (diff) |
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.
Diffstat (limited to 'source/blender/makesdna/DNA_node_types.h')
-rw-r--r-- | source/blender/makesdna/DNA_node_types.h | 5 |
1 files changed, 5 insertions, 0 deletions
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; |