我做了以下事情:
I=imread('image.png');
I2=im2double(I);
cidx = fcm(I2,5);
当我尝试运行以下命令时:
silhouette(I2,cidx)
我收到以下错误:
Error using grp2idx (line 39)
Grouping variable must be a vector or a character array.
Error in silhouette (line 79)
[idx,cnames] = grp2idx(clust);
我该如何解决这个问题?
感谢。
答案 0 :(得分:1)
遇到这样的问题,你想要在错误中倒退。它声明
分组变量必须是矢量或字符数组。
显然它是抱怨的变量clust
。请查看文件silhouette
,并找出变量clust
的设置。我想象它不是一个载体...
当您打开调试器以在错误时停止,您将在“函数”中发生错误,然后您可以检查变量,在堆栈中上下移动,并找出确切的错误。
如果您仍需要更多帮助,请告诉我们您输入的内容
whos clust
在silhouette
。