Pls I need to perform confusion matrix, but I keep getting;
Error using confusion (line 43)Targets and outputs have different dimensions.
The code I used is;
[c,cm,ind,per] = confusion(BW_1,new_image{1})
where;
BW_1=roipoly(my_image); %Trained class no. 1
BW_1 gives a (2592×4608 logical) variable value in the Workspace part
<2592x4608 logical>
new_image
new_image =
Columns 1 through 4 [7776x4608 uint8] [7776x4608 uint8] [7776x4608 uint8] [7776x4608 uint8]Columns 5 through 6 [7776x4608 uint8] [7776x4608 uint8]
Kmeans Segmentation code used
he= imread('C:\Users\ISHOLA\Desktop\1.jpg'); %Reading image which is not gray
cform = makecform('srgb2lab'); lab_he = applycform(he,cform); ab = double(lab_he(:,:,2:3)); nrows = size(ab,1); ncols = size(ab,2); disp(nrows); disp(ncols); ab = reshape(ab,nrows*ncols,2); nColors = 6; % repeat the clustering 3 times to avoid local minima
[cluster_idx cluster_center] = kmeans(ab,nColors,'distance','sqEuclidean','replicates',6); pixel_labels = reshape(cluster_idx,nrows,ncols); %figure, imshow(pixel_labels,[]), title('image labeled by cluster index');
segmented_images = cell(1,3); rgb_label = repmat(pixel_labels,[1 3]); for k = 1:nColors color = he; color(rgb_label ~= k) = 0; segmented_images{k} = color; end new_image = cellfun(@(x)reshape(x,2592*3,4608),segmented_images,'UniformOutput',false)
Best Answer