What is the best edge detector?
Show older comments
Hello What is the difference between sobel, prewitt, canny, laplacien, log...What is the best one used to detect edges? I used sobel and log edge detector but always i had an open edges. There is some solution to close edges? thanks
2 Comments
Walter Roberson
on 19 Oct 2012
If someone asks you what the best vehicle is for bringing home milk, are you going to tell them a particular brand and model and model year of automobile before even asking whether the milk is being transported a block from the corner store, or hundreds of miles up to the International Space Station ?
There is no "best" algorithm to detect edges. There are algorithms that are better in particular circumstances. Better algorithms yet might be invented a week from Sunday, or within a few billion years at latest.
Pamela Paolo
on 19 Oct 2012
Answers (1)
Image Analyst
on 19 Oct 2012
1 vote
The best edge detector is the one that you are happiest with.
For edge linking or closing gaps in edge outlines, try imclose() or try Peter's site for edge-linking code: http://www.csse.uwa.edu.au/~pk/Research/MatlabFns/#edgelink
6 Comments
Pamela Paolo
on 19 Oct 2012
Pamela Paolo
on 19 Oct 2012
Image Analyst
on 19 Oct 2012
junction() is not in the current folder or on the path. Find it then add its folder to the path with addpath().
Pamela Paolo
on 19 Oct 2012
Walter Roberson
on 19 Oct 2012
It is part of findendsjunctions.m and is the first routine in that file after findendsjunctions itself.
Image Analyst
on 20 Oct 2012
I haven't used that edge linking code. It's Peter's. If you've searched your hard drive for both those m-files, and can't find any of them, and you've searched inside all the m-files and still couldn't find it, then you'll have to contact Peter.
Categories
Find more on Object Analysis in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!