Difference between "Canny" and "Canny_old" in Image Processing toolbox function "edge"
1 view (last 30 days)
Show older comments
Mazhar Lakhani
on 28 Oct 2015
Answered: Amith Kamath
on 8 Dec 2015
Hi,
I was trying to compare OpenCV and Matlab outputs a given test image for Canny edge function and I realized that the "edge" function in matlab provides a "canny" and a "canny_old" implementations.
Can you please provide some reference as to the math behind it and what is the difference between the two?
Thanks & Regards,
Mazhar
0 Comments
Accepted Answer
Amith Kamath
on 8 Dec 2015
Mazhar:
Apologies for such a delayed response. As far as I know, 'canny_old' does not have any relation to the openCV implementation. I would encourage you to avoid using canny_old, as it probably exists only for backward compatibility reasons.
openCV does not use a derivative of gaussian for gradient computations, whereas the MATLAB version does so. Additionally, the use of bwselect in the sub-function 'thinAndThreshold' makes the MATLAB results better looking than the openCV equivalent.
See this post for additional details: https://dsp.stackexchange.com/questions/4716/differences-between-opencv-canny-and-matlab-canny
Are you trying to get the same results that MATLAB provides, using openCV? Could you elaborate on how you are trying to do so?
0 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!