嗨,纽曼。我跑你的代码在我自己的电脑,发现几个问题:
问题1:你使用这条线:
通用= fitgmdist (X, 1“选项”、选择);
从我收集你想对一个图像进行聚类,所以你为什么X上执行它?X是创建一个随机向量……您需要执行集群P !所以你的代码是这样的:
通用= fitgmdist (P, 1,“选项”、选择);
(P。年代为什么只用1集群在你代码?除非你使用2个或更多,这段代码将没有效果!)
问题# 2:输入是二维图像,所以你需要将你的集群转换成二维图像。这样做你可能想要使用这样的:
cluster1 = (idx = = 1);
cluster1 =重塑(cluster1、大小(我));
imshow (cluster1);
这样做对所有集群,看看你得到什么。
至于重心,我不知道你是什么代码使用,所以我恐怕不能太多的帮助。