opencvkmeans二值图像

opencvkmeans二值图像,opencv,k-means,binary-image,Opencv,K Means,Binary Image,我试图在二进制图像上使用opencv kmeans函数 但我不知道如何设置its参数 我的最终目标是找到水滴的两个中心 向量中心; 垫点; findNonZero(二进制图像,点); 积分转换为(积分,CV_32F); kmeans(点,重叠,Mat(),TermCriteria(TermCriteria::EPS+TermCriteria::COUNT,10,1.0),3, KMEANS_PP_中心,中心); 第一个参数需要特定的格式。所以我试图修复它,但它有一个错误 实际上,我不知道如何

我试图在二进制图像上使用opencv kmeans函数 但我不知道如何设置its参数

我的最终目标是找到水滴的两个中心

向量中心;
垫点;
findNonZero(二进制图像,点);
积分转换为(积分,CV_32F);
kmeans(点,重叠,Mat(),TermCriteria(TermCriteria::EPS+TermCriteria::COUNT,10,1.0),3,
KMEANS_PP_中心,中心);
第一个参数需要特定的格式。所以我试图修复它,但它有一个错误

实际上,我不知道如何在二值图像上使用Kmeans函数

你能帮我怎么用吗?

向量中心;
    vector<Point2f> centers;
    Mat points;
    Mat labels;
    findNonZero(temp, points);
    points.convertTo(points, CV_32F);


    
    kmeans(points, overlapped, labels, TermCriteria( TermCriteria::EPS+TermCriteria::COUNT, 10, 1.0), 3,
    KMEANS_PP_CENTERS, centers );
垫点; 垫子标签; findNonZero(温度、点); 积分转换为(积分,CV_32F); kmeans(点、重叠、标签、TermCriteria(TermCriteria::EPS+TermCriteria::COUNT、10、1.0)、3、, KMEANS_PP_中心,中心);
这是一个简单的问题。 我改变了第三个参数

谢谢大家!

    vector<Point2f> centers;
    Mat points;
    Mat labels;
    findNonZero(temp, points);
    points.convertTo(points, CV_32F);


    
    kmeans(points, overlapped, labels, TermCriteria( TermCriteria::EPS+TermCriteria::COUNT, 10, 1.0), 3,
    KMEANS_PP_CENTERS, centers );