How to use kmeans for an image

1 view (last 30 days)
Hi..
I need to apply kmeans clustering for a grayscale image (the clustering should be based on the value of the pixels and not the distance). I tried to apply the inbuilt function to do that but the documentation says I will get only a n-by-1 vector as the output. How do I then get the cluster values for each of the pixels?
Thank you,
Mathew

Accepted Answer

Image Analyst
Image Analyst on 19 Dec 2011
Here's an example that you should be able to modify from color to grayscale rather easily: http://www.mathworks.com/products/demos/image/color_seg_k/ipexhistology.html

More Answers (1)

Walter Roberson
Walter Roberson on 19 Dec 2011
What do you mean by "the cluster values" ? kmeans() returns the cluster number for each point (each row is considered a point) as the first output. That kmeans() cannot return the cluster probabilities, but the four-output version will return the distance from each point to each centroid.

Community Treasure Hunt

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

Start Hunting!