7

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

问题是我在网上找不到任何关于 canny 时间复杂度的参考资料。我什至读过原始的精明论文。我无法正确推断它,在这里需要一些帮助。

4

1 回答 1

12

Canny 边缘检测包括

  1. 图像与模糊核的卷积,
  2. 图像与边缘检测器内核的四个卷积,
  3. 梯度方向的计算,
  4. 非最大抑制,和
  5. 具有滞后的阈值,

步骤 (1)、(2)、(3) 和 (4) 都是根据图像与固定大小的内核的卷积来实现的。使用 FFT,可以在 O(n log n) 时间内实现卷积,其中 n 是元素的数量。如果图像的尺寸为 m × n,则这些步骤的时间复杂度将为 O(mn log mn)。

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

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

希望这可以帮助!

于 2013-11-01T03:22:44.900 回答