|

本帖最后由 z13228604287 于 2022-9-16 15:33 编辑
聚类:将抽象对象的集合分成由多个相似的对象组成的多个子类的过程,常用聚类方法有:分裂法,层次法,基于密度的方法,基于网格的方法,基于模型的方法,K均值法。其中K均值法是一种基于距离的分裂法。
K均值算法是非常常用的一种聚类算法,用于将给定的样本集分成指定数目的聚类。具体算法如下:
· 为每个聚类确定一个初始的聚类中心,这样k个聚类存在k个聚类中心
· 将样本集中的每一个样本按照最小距离原则 分配到k个聚类中的某一个
· 使用每个聚类中所有样本的均值作为新的聚类中心
· 如果聚类中心有变化则重复2、3步直到聚类中心不再变化为止
· 最后得到的k个聚类中心就是聚类的结果
K均值算法是一种贪心算法,因而不一定能得到最优化结果,不过它是必定收敛的。
调用格式: 〈双精度小数型〉 视觉_K均值 (多维矩阵类 数据,整数型 ?,多维矩阵类 标签,迭代标准类 迭代,整数型 尝试,整数型 标志,多维矩阵类 中心)
英文名称:kmeans
查找聚类中心并对聚类周围的输入样本进行分组。本命令为初级命令。
参数<1>的名称为“数据”,类型为“多维矩阵类(Mat)”。用于聚类的数据。需要具 CV_32F与CV_32FC2数据类型。
参数<2>的名称为“?”,类型为“整数型(int)”,初始值为“2”。要拆分集合的集群数。
参数<3>的名称为“标签”,类型为“多维矩阵类(Mat)”。输入/输出整数数组,用于存储每个样本的集群索引。
参数<4>的名称为“迭代”,类型为“迭代标准类(TermCriteria)”。算法终止标准,即最大迭代次数和/或所需精度。精度被指定为criteria.epsilon。一旦每个聚类中心在某个迭代中移动小于标准.epsilon,算法就会停止。
参数<5>的名称为“尝试”,类型为“整数型(int)”,初始值为“10”。用于指定使用不同初始标签执行算法的次数的标志。该算法返回产生最佳紧凑性的标签。
参数<6>的名称为“标志”,类型为“整数型(int)”,初始值为“0”。可以采用 #K方法_* 的常量。
参数<7>的名称为“中心”,类型为“多维矩阵类(Mat)”。聚类中心的输出矩阵,每个聚类中心一行。
操作系统需求: Windows
变量名 | 类 型 | 静态 | 数组 | 备 注 | 图 | 多维矩阵类 | | | 结果 | 多维矩阵类 | | |
图 = 视觉_图像解码 ( #图片1, #读图_彩色 )结果 = 图像分割 (图, 2 )视觉_显示图像 (“小白鼠”, 结果 )视觉_等待按键 (0 )返回 (0 ) |
图像分割 | 多维矩阵类 | | |
输入图 | 多维矩阵类 | | | | 分类数量 | 整数型 | | | |
变量名 | 类 型 | 静态 | 数组 | 备 注 | 颜色标签 | 颜色标签 | | 6 | 列数 | 整数型 | | | 行数 | 整数型 | | | 样本计数 | 整数型 | | | 样本数据 | 多维矩阵类 | | | 数据 | 多维矩阵类 | | | 集群计数 | 整数型 | | | 迭代标准 | 迭代标准类 | | | 标签 | 多维矩阵类 | | | 中心 | 多维矩阵类 | | | 返回图 | 多维矩阵类 | | | i | 整数型 | | | 位置 | 整数型 | | | 标志 | 整数型 | | | j | 整数型 | | | 随机 | 随机数类 | | |
颜色标签 [1 ].颜色 = { 0, 0, 255 }颜色标签 [2 ].颜色 = { 0, 255, 0 }颜色标签 [3 ].颜色 = { 255, 0, 0 }颜色标签 [4 ].颜色 = { 0, 255, 255 }颜色标签 [5 ].颜色 = { 255, 0, 255 }颜色标签 [6 ].颜色 = { 255, 255, 0 }列数 = 输入图. 列数 ()行数 = 输入图. 行数 ()样本计数 = 列数 × 行数 样本数据 = 输入图. 重塑 (3, 样本计数 )样本数据. 转换到 (数据, #Cv小数型, 1, 0 )集群计数 = 分类数量 迭代标准. 初始化 ( #迭代标准_精度 + #迭代标准_元素, 10, 0.1 )视觉_K均值 (数据, 集群计数, 标签, 迭代标准, 10, #K方法_随机_中心, 中心 )返回图. 初始化 (输入图. 行数 (), 输入图. 列数 (), 输入图. 类型 (), 标量 (0 )) 变量循环首 (0, 行数 - 1, 1, i ) 变量循环首 (0, 列数 - 1, 1, j )  位置 = i × 列数 + j   标志 = 标签. 取元素 (位置, 0 )  返回图. 置元素V (i, j, 颜色标签 [标志 + 1 ].颜色 ) 变量循环尾 () 变量循环尾 ()返回 (返回图 )
|
|