kmeans Segmentation Clarification for color images

I had segmented the attached image using kmeans. After kmeans color image segmentation, when I had plotted the cluster centers, I found that, the cluster center was not at the correct point. Why?

4 commentaires

Please show your code.
dataImage = imread('fpot3_1.jpg');
cform = makecform('srgb2lab');
lab_he = applycform(dataImage,cform);
ab = double(lab_he(:,:,2:3));
nrows = size(ab,1);
ncols = size(ab,2);
ab = reshape(ab,nrows*ncols,2);
nColors = 3;
[cluster_idx,cluster_center] = kmeans(ab,nColors,'emptyaction','singleton');
pixel_labels = reshape(cluster_idx,nrows,ncols);
imshow(pixel_labels,[]); hold on;
plot(cluster_center(:,2),cluster_center(:,1),'r*')
can you please explain each line of k means segmentation?
You can try mine (attached). I always put in lots of comments.

Connectez-vous pour commenter.

 Réponse acceptée

Anand
Anand le 16 Fév 2014

0 votes

Your cluster centers are not in the XY co-ordinate space. They are in the AB color space. So cluster_center does not refer to a location on the image.

Plus de réponses (1)

Image Analyst
Image Analyst le 16 Fév 2014

0 votes

3 commentaires

I closely following up your file exchange list. I had worked with all your demos in that list. But right now I'm working with kmeans Color Image Segmentation.
Anand
Anand le 17 Fév 2014
What didn't work in the link Image Analyst suggested?

Connectez-vous pour commenter.

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by