Skip to content

Image-processing filters implemented on GPU with OpenCL

License

Notifications You must be signed in to change notification settings

npazosmendez/gpu-filters

Repository files navigation

GPU Filters

Four image processing filters implemented in pure C and in OpenCL to compare their performances.

Edge Detection with Canny's algorithm

Raw Processed

Line Detection with Hough's transform

Raw Processed

Dense Optical Flow with Lucas-Kanade

Raw Processed

Region Filling via exemplar-based image inpainting

Raw Processed

Dependencies

  • OpenCL 1.2 with C++ bindings

drawing

Filters are implemented using OpenCL 1.2. To download needed headers and libraries (linux) for compilation run:

sudo apt install ocl-icd-libopencl1
sudo apt install opencl-headers
sudo apt install clinfo

We've also used the C++ bindings, which are included in the repo.

A device that supports OpenCL is needed to run the program. Drivers installation varies. These are some devices in which the program ran and how to install their drivers:

NVIDIA GeForce 940m

sudo add-apt-repository ppa:graphics-drivers/ppa
sudo apt-get update
sudo apt-get install nvidia-355 nvidia-prime
sudo reboot
  • OpenCV 2

drawing

For camera input only. Central algorithms are not implemented using this library.

To get eveything needed to compile run:

sudo apt-get install libopencv-dev

drawing

  • Qt 4.8

For an advanced GUI only, not actually needed to run the bascis. More information at gui/readme.md

About

Image-processing filters implemented on GPU with OpenCL

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages