souwang324 / GaussianBlur-CUDA

An implementation of a parallel Gaussian blur algorithm written in CUDA C++. OpenCV is used solely for reading/writing images and converting between image formats.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

CUDA Parallel Gaussian Blur

This program will apply a Gaussian blur to the specified image. This is accomplished by convolving the target image with the Gaussian function. To the user, the resulting image will have been uniformly blurred, which can be helpful in many other algorithms such as blob detection and downsampling.

OpenCV is necessary for this program to work. While all image processing is done by standard C++ and CUDA libraries, retrieving image properties is made significantly easier by OpenCV.

This implementation was used in my performance analysis:

Comparing 2D Convolution Performance

Example

Initial Image

Image of Pikachu before convolution

Convolved Image

Image of Pikachu after convolution

About

An implementation of a parallel Gaussian blur algorithm written in CUDA C++. OpenCV is used solely for reading/writing images and converting between image formats.

License:GNU General Public License v3.0


Languages

Language:Cuda 100.0%