I'm thinking of dividing the image into clusters and them just taking the mean per cluster. How can i divide it into clusters? I dont know the amount of beads.
Determine center of cluster of points
3 views (last 30 days)
Show older comments
I've got (in a x and y vector) some locations which form small clusters, about 10~15 point per cluster. They aren't ordered in any way. And there are multiple clusters per 'image'. How can I determine the center of such a cluster?
Background info: I've got a picture of a few (2 in my case) beads and i'm trying to get the exact location (center) of these beads. With find() I'm getting some points (a cluster) in every bead. But i need just one x,y location per bead.
Accepted Answer
Allison Bradley
on 18 May 2012
I'm working on a very similar problem right now. You can use hierarchical clustering (clusterdata) if you don't know the number of clusters in advance - it's actually pretty straightforward. The only tricky part is setting the cutoff criterion. I'm setting a maximum distance (using the 'single' option for the shortest distance) between clusters as the criterion, which might also make sense for you seeing as your clusters should be pretty tight for the beads. The only problem I see is if you have two beads touching....
More Answers (1)
Image Analyst
on 16 May 2012
If you know how many clusters there should be, then you can use k-means (it's in the stats toolbox). For related questions, see <http://www.mathworks.com/searchresults/?q=%22k-means%22&q1=&q2=%22k-means%22&q3=¬q=&c[]=support>
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!