This simple program performs a gaussian blur on given image, using «sliding window» technique, which allows to compute resulting image with O(n × M × N ) + O(m × M × N ) complexity, where M × N stands for input image dimensions and m, n stands for 6 * sigma (sigma is passed as a parameter to program).
Here is the example of program usage result.
Original image:
GIMP Gaussian blur (radius = 15):
Gblur (sigma = 5):
You can clone this repo with git:
git clone https://git.ivnglkv.ru/ivnglkv/gblur.git
This program uses libjpeg library.
In order to build this program you should have cmake
and make
installed. Also install development headers for libjpeg
library.
After that, build it with
make
Output binary will be placed into build
directory.
gblur -i input_file [-o output_file] [-s radius] [-h]
Options:
-i: path to file with input RGB JPEG image.
-o: path to file where blured RGB JPEG image will be recorded. If no path will be specified, input file will be overwritten!
-s: radius of blur. Default is 5.
-h: show this help.
Example of usage:
gblur -i img.jpg -o blured_img.jpg -s 5
Copyright (c) 2016, Golikov Ivan
Licensed under The BSD-3 Clause License