Difference between "Canny" and "Canny_old" in Image Processing toolbox function "edge"

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

 採用された回答

Amith Kamath
Amith Kamath 2015 年 12 月 8 日

1 投票

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 件)

質問済み:

2015 年 10 月 28 日

回答済み:

2015 年 12 月 8 日

Community Treasure Hunt

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

Start Hunting!

Translated by