Canny边缘检测器上可能的NaN梯度方向 - 在matlab上的图像处理

时间:2012-12-04 04:33:31

标签: matlab image-processing

我正在编写自己的Canny's edge detection algorithm版本。我的问题是,我如何计算梯度的方向?我已经知道了:

enter image description here

但是当 G y = G x = 0时,我该怎么办?

1 个答案:

答案 0 :(得分:3)

我认为它实际上并不重要你给theta什么值,因为Gx和Gy等于零意味着没有渐变,这意味着没有边缘。该像素没有边缘,因此它没有边缘的方向角。当Gy = gx = 0时检测并写入你想要的任何内容。

哦!但不要忘记arctan(Inf)= pi / 2!如果只有Gx的值为零,请记住您有结果!

编辑:在图像中,所有黑色区域都没有渐变,因此没有角度。

enter image description here