-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmain.cpp
38 lines (28 loc) · 1.11 KB
/
main.cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
//#define cimg_display 0
//#include <png++/png.hpp>
#include <iostream>
//#include "image_statistic.h"
#include <opencv/cv.h>
#include <opencv/highgui.h>
using namespace std;
using namespace cv;
const static char* image_source_path =
"/media/dodler/CEE4E048E4E033FD/samples/KylbergTextureDataset-1.0-png-originals/blanket2-a.png";
static const int CLUSTER_NUM = 20;
int main(void){
// Mat img = imread("/home/lyan/Downloads/KylbergTextureDataset-1.0-png-originals.7z.001.1/KylbergTextureDataset-1.0-png-originals/blanket2-a.png");
Mat img = imread("//home/lyan/Pictures/Lenna.png");
cv::Mat labels, data;
cv::Mat centers(CLUSTER_NUM, 1, CV_32FC1);
img.convertTo(data, CV_32F);
// kmeans(data, 10,labels, TermCriteria( TermCriteria::EPS+TermCriteria::COUNT, 10, 1.0),3, KMEANS_PP_CENTERS, ¢ers);
double comp = kmeans(data, CLUSTER_NUM, labels,
TermCriteria(CV_TERMCRIT_ITER, 10, 1.0),
10, KMEANS_PP_CENTERS, centers);
imshow("result", data);
data.convertTo(data, CV_32FC3);
cout << centers << endl;
cout << comp << endl;
waitKey();
return 0;
}