opencvSharp 学习笔记(二)

  参考文章:https://github.com/shimat/opencvsharp_samples/tree/master/SamplesCS/Samples

参考opencvsharp的官方sample,在vs2015上测试kmeans,参数配置的类型各种不对,折腾半天,如下:

  var columnVector = src.Reshape(cn: 3, rows: src.Rows * src.Cols);

            // convert to floating point, it is a requirement of the k-means method of OpenCV.
            var samples = new Mat();
            columnVector.ConvertTo(samples, MatType.CV_32FC3);

            for (var clustersCount = 2; clustersCount <= 8; clustersCount += 2)
            {
                var bestLabels = new Mat();
                var centers = new Mat();
                Cv2.Kmeans(
                    data: samples,
                    k: clustersCount,
                    bestLabels: bestLabels,
                    criteria:
                        new TermCriteria(type: CriteriaType.Eps | CriteriaType.MaxIter, maxCount: 10, epsilon: 1.0),
                    attempts: 3,
                    flags: KMeansFlags.PpCenters,
                    centers: centers);
原文地址:https://www.cnblogs.com/neo3301/p/13169839.html