Open main menu

CDOT Wiki β

Changes

BarraCUDA Boiz

2 bytes removed, 00:45, 6 February 2017
KmeansPlusPlus
Kmeansplusplus is a clustering method that determins which in this case takes an image and splits it into k number of clusters. For an image it selects k number of pixels and uses those pixels as a reference point to compare all the other pixels to change their colors based on which reference pixel they are closest to.
The first integer is k (the number of reference points), the second integer is the number of times to iterate through the image.
 
Original source code:
https://github.com/tatsy/ImageProcessing/tree/master/KmeansPlusPlus
https://github.com/tatsy/ImageProcessing/tree/master/KmeansPlusPlus
Opencv setup instructions (linux):
Required : opencv, cmake, g++, make, gprof 
1) sudo apt-get install build-essential cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev
 
2) downoad opencv version 2.4.13 and extract it
http://opencv.org/downloads.html
3) cd opencv-2.4.13
 
4) mkdir build
 
5) cd build
 
6) cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local ..
 
7) make -j7
 
8) sudo make install
At this point we recomend you test to see if opencv is working correctly by following:
At this point we recomend you test to see if opencv is working correctly by following: http://docs.opencv.org/2.4/doc/tutorials/introduction/linux_gcc_cmake/linux_gcc_cmake.html 
Build KmeansPlusPlus :
2) cmake -DCMAKE_CXX_FLAGS=-pg -DCMAKE_EXE_LINKER_FLAGS=-pg -DCMAKE_SHARED_LINKER_FLAGS=-pg .
 
3) make
Note possible errors (if compiling from original source):
Solution : add "#include <stdio.h>"
4) ./Kmeans++ <source_img> <output_img> <#clusters> <#iterations>
 
5) gprof -p -b ./Kmeans++ > Kmeans++.flt
Test Cases:
Command line: ./Kmeans++ baboon.jpg baboon_out_5x100.jpg 5 100
Flat profile:
Command line: ./Kmeans++ baboon.jpg baboon_out_5x500.jpg 5 500
Flat profile:
Command line: ./Kmeans++ baboon.jpg baboon_out_100x5.jpg 100 5
Flat profile:
Command line: ./Kmeans++ baboon.jpg baboon_out_500x5.jpg 500 5
Flat profile:
Command line: ./Kmeans++ baboon.jpg baboon_out_100x100.jpg 100 100
Flat profile:
Command line: ./Kmeans++ baboon.jpg baboon_out_500x500.jpg 500 500
Flat profile:
36
edits