高斯混合模型(GMM)分割图像
#include<iostream>
#include<opencv2/opencv.hpp>
using namespace std;
using namespace cv;
int main()
{
Mat srcImg = imread("C:\\Users\\tudejiang\\Desktop\\简历\\xiao.jpg");
imshow("srcImg", srcImg);
Scalar colorsTab[] = {
Scalar(255, 0, 0),
Scalar(0, 255, 0),
Scalar(0, 0, 255),
Scalar(255, 255, 0)
};
int width = srcImg.cols;
int height = srcImg.rows;
int dims = srcImg.channels();
int numCluster = 4;
int numSample = width * height;
Mat points(numSample, dims, CV_64FC1);//在EM中数据是64位的
Mat labels;
// 图像RGB像素数据转换为样本数据
int index = 0;
for (int row = 0; row