comparing shapes: how to find the right one
4 views (last 30 days)
Show older comments
Hi everybody, I have the following problem. I have a true data set. Which is a binary matrix (0/1). If I do imagesc(true_data), it will show a shape. I also have multiple other binary matrices (shapes) that I am trying to compare to my true binary matrix. I need to find the one that best matches my truth. You can imagine that these shapes can be compared by pixels and the observing the pixels that match and that did not match. That however will not work. For example if my true shape is ellipsoid and I can produce two shapes that will have the same areas of intersection and non intersection yet one of them better represents the truth.
I am trying to see which shape is a better match for my main one. Any suggestions? Thanks!
2 Comments
Sean de Wolski
on 30 Aug 2012
Edited: Sean de Wolski
on 30 Aug 2012
Are the templates and images all the same size (e.g. an 8x8 octogon will be 8x8 in both images)?
Answers (1)
Image Analyst
on 31 Aug 2012
If you're lucky and have very simple shapes, then you can figure out which shape matches just based on area, perimeter, and/or the perimeter^2/(4*pi*area) ratio. If the shapes can be any arbitrary shape, and you will accept scaled sizes of the match, then you'll have to compare more things.
0 Comments
See Also
Categories
Find more on Feature Detection and Extraction in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!