Apostolos Fanakis
440320e1f0
|
7 years ago | |
---|---|---|
code | 7 years ago | |
data | 7 years ago | |
mean_shift_cuda | 7 years ago | |
mean_shift_cuda_shared_mem | 7 years ago | |
mean_shift_serial | 7 years ago | |
output/visualization | 7 years ago | |
stats | 7 years ago | |
testers | 7 years ago | |
.gitignore | 7 years ago | |
README.md | 7 years ago |
README.md
Mean-shift
Mean-shift is a mathematical procedure, adopted in algorithms, designed in the 70's by Fukunaga and Hostetler. The algorithm is used for:
- Cluster analysis
- Computer vision
- Image processing
Repository
This repository provides a serial implementation of the algorithm in C language, as well as the parallel equivalent in CUDA. The project was undertaken as part of the "Parallel and distributed systems" course of AUTH university.
A Gaussian kernel was used for the weighting function. The code was tested for different data sets and information regarding the execution time and correctness were extracted. In addition, two versions of the parallel algorithm were tested and compared, with and without the usage of shared memory respectively.
Compilation
To compile make sure all necessary packages and dependencies are installed. Then run:
$ make
Usage
blah blah, arguments needed etc
Free Software, Hell Yeah!