From 29b45e70bdb94b59b3c2822d968e6f6c287b8821 Mon Sep 17 00:00:00 2001 From: Ilya Lysenkov Date: Wed, 1 Jun 2011 12:06:39 +0000 Subject: [PATCH] Fixed cluster centers returning in cvKMeans2 (ticket #706) --- modules/core/src/matrix.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/modules/core/src/matrix.cpp b/modules/core/src/matrix.cpp index dc42f145be..0d0576a47c 100644 --- a/modules/core/src/matrix.cpp +++ b/modules/core/src/matrix.cpp @@ -2586,7 +2586,10 @@ cvKMeans2( const CvArr* _samples, int cluster_count, CvArr* _labels, { cv::Mat data = cv::cvarrToMat(_samples), labels = cv::cvarrToMat(_labels), centers; if( _centers ) + { centers = cv::cvarrToMat(_centers); + centers = centers.reshape(1); + } CV_Assert( labels.isContinuous() && labels.type() == CV_32S && (labels.cols == 1 || labels.rows == 1) && labels.cols + labels.rows - 1 == data.rows );