Recognizing shapes in (binary) matrix

조회 수: 1 (최근 30일)
Yair
Yair 2013년 6월 10일
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

채택된 답변

Doug Hull
Doug Hull 2013년 6월 10일
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
Yair
Yair 2013년 6월 11일
Thank you both.
Gonna try this now and let you know.
Yair
Yair 2013년 6월 12일
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).

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Images에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by