how to find the width of edges in matlab?
4 views (last 30 days)
Show older comments
I am able to find the edges of an image using sobel or canny filter. But I cant calculate the width of the edges.
Actually I want to do the following:
find the width of all horizontal and vertical edges and sum up altogether and store in a variable, say W1
Then find the width of other (non horizontal and vertical) edges. Then multiply each edge width by a factor sqrt(2). After sum up altogether and store in a variable say w2.
Finally perform (w1+w2)/N where N is the no of total edges in the image.
5 Comments
Lahiru
on 5 Jun 2014
Oh, I'm really sorry, I just saw your response. I will reply in that thread. Thanks.
Accepted Answer
Image Analyst
on 25 Aug 2013
First I'd threshold ats some desired edge strength. Then I'd use bwmorph() to get the skeleton of the edges and call sum() to get the length. Then I'd call bwarea() on the thresholded image to get the area. Divide the area by the length to get the average width of all the edges.
8 Comments
More Answers (0)
See Also
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!