irregular ,specific geometric shapes

5 views (last 30 days)
Hello again everyone,
i have an irregular region which i get from blob analysis.
As you see, it can not be defined as a known shape, it is not a circle, ellipse, line etc. How can i decide that the region is what i m looking for?
What can i do in such situations that don't match with any of geometric shape?
Can i make my own special filter?
Any suggestions?
Thanks in advance.
  1 Comment
Walter Roberson
Walter Roberson on 17 Jul 2012
You need the Fabric Recognition Toolkit, which is rumoured to be in development at paisley.ac.uk

Sign in to comment.

Accepted Answer

Matt Kindig
Matt Kindig on 17 Jul 2012
Hi selim,
I've actually worked on a similar problem of trying to match irregular shapes from a pattern of other shapes. (In my case, I was trying to identify axons on stained histology slides, but the principle is the same). I (and the rest of the Answers) community would be happy to offer some advice, but one thing that would help is a larger training set. Can you post a larger number of shapes that you want to match (say 20 or so)? That would give us a sense of the variation between matching shapes. Even better, can you post an image containing both shapes you want to match as well as those you wish to reject?
Thanks, Matt
  3 Comments
Image Analyst
Image Analyst on 28 Jul 2012
Have you looked at the solidity (measured by regionprops) or any of the morphometric methods in the wikipedia article I referred you to?
Matt Kindig
Matt Kindig on 2 Aug 2012
Hi Selim,
Sorry about the delay in getting back to you--I lost track of this posting. In addition to the morphometrics techniques that Image Analyst mentioned, one easy rule to try is to compare the amount of filled pixels in the top half of the bounding box to the bottom half-- positive matches seem to have more pixels in the bottom half. You can extract the bounding box as stats(k).BoundingBox, and use that to calculate the center of the bounding box. You can then compare the row indexes of your matched image (you can get those from stats(k).PixelList) to the center to determine the number of pixels in the top and bottom halves of the image.

Sign in to comment.

More Answers (1)

Image Analyst
Image Analyst on 17 Jul 2012
Lucky you. You get to learn about another field of image processing called "Morphometrics." Please read the Wikipedia article on it: http://en.wikipedia.org/wiki/Morphometrics
You say "How can i decide that the region is what i m looking for?" - well I have no idea what you're looking for. You may be able to get by with something simple if you just say what you want, like you want to find all circular objects, or sickle cells, or whatever.
  1 Comment
Matt Kindig
Matt Kindig on 17 Jul 2012
Building on Image Analyst's comment, you might also need to distinguish between size and shape. If you want to consider only shape comparisons, you might need to transform each matched region to have a common centroid, scale, and orientation. There are a number of methods to do so--I've used Procrustes analysis for this purpose.

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!