我想用matlab在一个图像数据库上应用Kmeans聚类算法。我知道编码,但我不知道我的想法是否正确:
首先,将所有图像分组到k个聚类中。
为此,我将对每个集群使用'ai‘,其中第一个集群将是a1,第二个集群将是a2,依此类推。(我将是一个计数器,使用strcat我将创建a1,a2,...)这些‘ai’是数组。
它们的输入值是图像的名称,每个数组的第一个元素,即ai(1)是质心。然后我对这些‘ai’做k_means,在第二步中,数组的每个元素(除了第一个元素是质心)将检查它与所有质心的欧几里德距离,根据这个,新的组将被构造,然后将有k_means迭代。这是一个正确的想法吗?
发布于 2013-07-13 16:58:07
首先,您可以使用单元格来简化编码:
Cluster = cell(3,1);
Cluster{1} = [9 2 3];
Cluster{2} = [];
Cluster{3} = [4 8];如果你使用质心,你必须确保你的图像是相同的大小,或者提取所有图像的特征。
https://stackoverflow.com/questions/17628403
复制相似问题