我尝试过以下代码。
he = imread('hestain.png');
imshow(he), title('H&E image');
cform = makecform('srgb2lab');
lab_he = applycform(he,cform);
ab = double(lab_he(:,:,2:3));
nrows = size(ab,1); %n rows
ncols = size(ab,2); %p columns
ab = reshape(ab,nrows*ncols,2);
nColors = 3;
[cluster_idx, cluster_center] = kmeans(ab,nColors);
它给了我错误
reshape无法从n * 1数组创建n * p matirx。
这有意义,但它有效here。
我在八度音程中尝试了相同类型的代码
ed=edge(de,"canny");
imshow(ed);
ed=double(ed);
nrows=size(ed,1);
ncols=size(ed,2);
ed=reshape(ed,nrows*ncols,2)
[cluster_idx, cluster_center]=kmeans(ed,3);
pixel_labels = reshape(cluster_idx,nrows,ncols);
imshow(pixel_labels,[]), title('image labeled by cluster index');
其中de是一些图像。 当我跑的时候我得到了这个错误。
错误:重塑:无法将181x181阵列重新整形为32761x2阵列
帮助赞赏