Canny边缘检测器的时间复杂度

时间:2013-07-03 21:14:27

标签: algorithm big-o time-complexity edge-detection

我目前正在撰写一篇关于新隐写算法的研究论文。我在算法的某些方面使用了canny边缘检测器。在论文中,我需要编写新方法的时间复杂度,而这又取决于精确边缘检测器的时间复杂度。

问题是网上没有任何地方我可以找到关于canny的时间复杂性的任何参考。我甚至读过原始的精装纸。我无法正确推断它并需要一些帮助。

1 个答案:

答案 0 :(得分:9)

Canny边缘检测由

组成
  1. 使用模糊内核对图像进行卷积,
  2. 带有边缘检测器内核的图像的四次卷积,
  3. 计算渐变方向,
  4. 非最大限制抑制,
  5. 带滞后的阈值,
  6. 步骤(1),(2),(3)和(4)都是根据具有固定大小的内核的图像的卷积来实现的。使用FFT,可以在时间O(n log n)中实现卷积,其中n是元素的数量。如果图像的尺寸为m×n,则这些步骤的时间复杂度将为O(mn log mn)。

    最后一步是通过对图像进行后处理以删除所有高值和低值,然后丢弃不在其他像素附近的所有其他像素。这可以在时间O(mn)中完成。

    因此,总时间复杂度为O(mn log mn)。

    希望这有帮助!