K-means 算法思想:
1.初始化聚类个数及中心点。人为给定。
2.划分数据到每个类。计算样本数据到各聚类中心的距离(欧式距离或其他距离等),把每个样本划分到最近的类中。
3.重新计算类中心点。一般是求坐标平均值。
4.重复2、3步骤。直到聚类中心不再移动位置。
opencv函数kmeans使用方法:
原型:double kmeans(InputArray data, int K, InputOutputArray bestLabels, TermCriteria criteria, int attempts, int flags, OutputArray centers=noArray() )
data:[IN] 输入样本,一行是一个样本。类型float。
K:[IN] 类别数
bestLabels:[OUT] 输出类别标签。与data有相等行数,1列,类型CV_32SC1