Edge direction

7 views (last 30 days)
Philip on 1 Jun 2011
Is there a function to check if an edge changes direction?
I have used bwlabel to work on connected edges, but now I only want to work on the ones that do not follow around corners. More clearly, they can be vertical, horizontal, or diagonal, but they cannot be a mixture of 2 or more...

Accepted Answer

Wolfgang Schwanghart
Wolfgang Schwanghart on 1 Jun 2011
to extract edges of any direction, you just need to choose the right structuring element for a morphological opening. E.g. to extract vertical edges:
BWv = imopen(BW,[1 1 1]');
BWh = imopen(BW,[1 1 1]);
top left to lower right
BWd = imopen(BW,[1 0 0; 0 1 0; 0 0 1]);
and so on.
Hope this helps, W.
  1 Comment
Philip on 1 Jun 2011
You helped immensely, as always! Thanks!

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!

Translated by