Shadertoy-Shaders/Optimized-Bilateral-Filter
Sven Vogel 7d73a5f097 Update 'Optimized-Bilateral-Filter/README.md' 2023-06-03 15:10:09 +00:00
..
Buffer A.glsl added optimized-bilateral-filter 2023-06-03 16:58:20 +02:00
Image.glsl added optimized-bilateral-filter 2023-06-03 16:58:20 +02:00
README.md Update 'Optimized-Bilateral-Filter/README.md' 2023-06-03 15:10:09 +00:00
overview.png added overview image to blur-filter and optimized-bilateral-filter 2023-06-03 17:05:27 +02:00

README.md

Optimized-Bilateral-Filter

overview.png

In part 1 you can the example image with noise applied to it. In sector 2 you can see the denoised image and in sector 3 is the original unfiltered image.

A biliteral filter is essentially a gaussian blur filter with an extra weight applied per pixel. This weight is a the luminance range between the target pixel to filter and the sourounding pixels passed into a gaussian weight function.

Optimization

Instead of applying a very costly gaussian blur filter we can optimize it by using a tent blur filter instead. This allows to speed up the performance by replacing the gaussian weight function with a tent blur kernel. Additionally we can optimize the squareroot of the gaussian weight function for the luminance range away.