Educational-purpose multi-threaded image blurrifier.
Currently, only jpeg images are supported using libjpeg
.
-
Configure
You can configure
- input image name (
INPUT_IMAGE_FILENAME
) - output images name (
OUTPUT_IMAGE_FILENAME
) - number of worker threads (
NUM_THREADS
) - convolution kernel window radius (
KERNEL_RADIUS
)
configuration variables in
config.h
file. - input image name (
-
Build
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release cmake --build build
Change
Release
toDebug
in order to include debugg symbol files with output executable. -
Run
./build/blurrifier
You'll need CMake and a C compiler. I used CMake version 3.20.1
and clang version 11.1.0
.
If you want to use another compiler, set its path in CMakeLists.txt
file (CMAKE_C_COMPILER
configuration variable).