Recognizing shapes in (binary) matrix

4 Ansichten (letzte 30 Tage)
Yair
Yair am 10 Jun. 2013
Hey all,
I'm trying to find a shape in a binary image.
In order to do that i am using bwboundaries() function to identify all the shapes in the image. I get a cell with matrices (the size of X by 2), of all the objects. Each matrix represent the number of pixels in the object.
For example, lets say there are two matrices, almost the same size. One representing the shape of a line, the other the shape of a circle (not exactly a line or a circle).
My question is - can i differ the line from the circle ?
Any help appreciated.
Yair

Akzeptierte Antwort

Doug Hull
Doug Hull am 10 Jun. 2013
If you KNOW that you are either dealing with a line or a circle, then could you look at the MajorAxisLength and MinorAxisLength from RegionProps. Their ratios should be wildly different, yes?
Doug
  3 Kommentare
Yair
Yair am 11 Jun. 2013
Thank you both.
Gonna try this now and let you know.
Yair
Yair am 12 Jun. 2013
Worked like a charm!
If anyone stumbles across this, you could do:
STATS1(1).MajorAxisLength / STATS2(1).MinorAxisLength;
to get the ratio of the two axis (where STATS1=regionprops(h, 'MajorAxisLength'), and STATS2 is the minor axis).

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Images finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by