to find length of edges

4 visualizzazioni (ultimi 30 giorni)
christian  bale
christian bale il 10 Gen 2012
is there any function for finding out the length of the edges and average number of edges...?actually i hav to determine the edges using canny edge detection method.So how can i find out the length and average number of edges?
  1 Commento
Walter Roberson
Walter Roberson il 10 Gen 2012
The number of edges averaged over what?

Accedi per commentare.

Risposta accettata

Image Analyst
Image Analyst il 10 Gen 2012
The edge image returned by edge() is a logical image. So to get the length of all the edges, you do
lengthOfEdges = sum(edgeImage);
To get the number of edges:
[labeledImage numberOfEdges] = bwlabel(edgeImage);
To get average edge length (which you didn't ask for but I'm giving you anyway in case you need it), it's
averageEdgeLength = lengthOfEdges / numberOfEdges;
To get the average number of edges you have to define (like Walter asked) what you're averaging over.
  2 Commenti
David Young
David Young il 11 Gen 2012
I think you mean sum(edgeImage(:)) or sum(sum(edgeImage))
Image Analyst
Image Analyst il 11 Gen 2012
Correct - good catch!

Accedi per commentare.

Più risposte (1)

David Young
David Young il 10 Gen 2012
Guessing a little, but I suspect that the following functions will be sufficient:
  • sum
  • bwlabel
  • regionprops

Community Treasure Hunt

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

Start Hunting!

Translated by