Merge pull request #10258 from savuor:fix/kmeans_channels

* kmeans: number of channels in _centers fixed

* fixedType() is checked now
This commit is contained in:
Rostislav Vasilikhin
2017-12-15 21:48:48 +03:00
committed by Alexander Alekhin
parent 28b19d6e3e
commit bab86d65cb
2 changed files with 9 additions and 4 deletions
+6 -1
View File
@@ -458,7 +458,12 @@ double cv::kmeans( InputArray _data, int K,
{
best_compactness = compactness;
if( _centers.needed() )
centers.copyTo(_centers);
{
Mat reshaped = centers;
if(_centers.fixedType() && _centers.channels() == dims)
reshaped = centers.reshape(dims);
reshaped.copyTo(_centers);
}
_labels.copyTo(best_labels);
}
}