zanazakaryaie / fastGaussianBlur

step-by-step tutorial for optimizing a Gaussian image smoothing function

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Fast Gaussian Blur

Gaussian blur is one of the basic building blocks of computer vision algorithms. This repo is a step-by-step tutorial that shows how it can be accelerated. The ideas used here can be also used for other convolution operations.

To better understand the tips, follow the codes in this order:

  1. memory_management
  2. simd
  3. parallel_processing

How to build?

cd memory_management (or the other folders)
mkdir build
cd build
cmake ..
make
./fastGaussianBlur

Comparison

See the runtimes for different image sizes on Raspberry Pi 3B+ (32bitOS, GCC 6.3)

Details of the implementation

For more details read my posts on memory management, simd and parallel processing.

About

step-by-step tutorial for optimizing a Gaussian image smoothing function


Languages

Language:C++ 96.0%Language:CMake 4.0%