Using post classification confusion matrix
Ältere Kommentare anzeigen
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 (2592x4608 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)
3 Kommentare
Star Strider
am 19 Sep. 2014
Post the code you are using to do the classification.
bayoishola20
am 20 Sep. 2014
bayoishola20
am 22 Sep. 2014
Akzeptierte Antwort
Weitere Antworten (1)
bayoishola20
am 22 Sep. 2014
0 Stimmen
Kategorien
Mehr zu Image Segmentation finden Sie in Hilfe-Center und File Exchange
Produkte
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!