MATLAB 图像处理 KMEANS 分割

问题描述

读入图像 (soccer.jpg) 并将其保存在名为 Football 的数组中。实现 kmeans 算法将 inputIm 划分为 K 个集群。这个函数的原型应该是:

function[cluster_map,center,dist] = MYKMEANS(inputIm,K)

其中 inputIm 为原始 RGB 彩色图像,K 为簇数,cluster_map 为与 inputIm 大小相同的单通道图像,cluster_map 中每个像素的值为其分配的簇索引,center 为获得的簇中心是一个K×3矩阵,dist是平均簇内欧氏距离除以特征空间中平均簇间欧氏距离。

调用 MYKMEANS 函数将图像足球聚类为 K=6 个聚类,然后用颜色可视化返回的 cluster_map。对于 inputIm 图像中的每个像素,只需使用其 R、G、B 值作为其 3 维特征进行聚类。例如,如果 K=6,cluster_map 可视化应该类似于以下可视化:

注意:本题不允许使用Matlab内置函数kmeans或任何其他聚类函数或第三方聚类包,违规记0分。调用MYKMEANS函数后,得到cluster_map,然后需要用不同的颜色可视化cluster_map来显示不同的簇索引,例如:黄色表示簇id=1,粉色表示簇id=2,……等等。 Original Image result Image

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...