【问题标题】:Canny Edge Image - Noise removalCanny Edge Image - 去噪
【发布时间】:2013-08-14 05:30:45
【问题描述】:

我有一个 Canny 边缘检测到的球图像(见下面的链接),其中包含很多嘈杂的边缘。在不移除属于球的边缘的情况下,我可以使用哪些最佳图像处理技术来移除这些噪声边缘?

原图

Canny 边缘图像

非常感谢大家的帮助和建议,非常感谢!

Ps 我正在尝试在使用 Circle Hough 变换检测球之前清理边缘图像。

【问题讨论】:

  • 查看原始图像会很有用。 Canny 有three parameters as inputs,其中一个是用于预处理的高斯模糊滤镜的大小,另外两个是控制返回细节级别的阈值。我怀疑您可以通过更合适的选择来改善结果,但需要确定原始图像。
  • 我正在自动计算 Canny 参数如下: double high_thres = cv::threshold( orig_img, thres_img, 0, 255, CV_THRESH_BINARY+CV_THRESH_OTSU );低阈值 = 0.1 * high_thres cv::Canny(orig_img, cannyOP, lower_thres, high_thres);如果我低于 'lower_thres' 的 0.1 倍数,我会得到太多噪音,如果我更高,我会失去属于球的边缘。这取自:stackoverflow.com/questions/4292249/…
  • 好的,那么你能提供一个指向原始图像的链接吗(我将它添加到你的问题中)?
  • 我不会有问题的,但我会在晚上晚些时候回家 :) 谢谢。
  • 嗨,Roger,有点跑题了,除了 Circle Hough 变换,您知道还有其他检测/跟踪球(可能被遮挡)的方法吗?

标签: image-processing edge-detection


【解决方案1】:

最好的选择是在应用边缘检测器之前过滤图像。为了保持锐利的边缘,您需要使用比高斯模糊更复杂的滤镜。

两个简单的选项是Bilateral filterGuided filter。这两个滤波器非常容易实现,并且在大多数情况下都提供了良好的结果:高斯噪声去除保留边缘。如果你需要更强大的东西,你可以试试过滤器BM3D,它是最先进的过滤器之一,你可以找到一个开源实现here

【讨论】:

    【解决方案2】:

    Canny 边缘检测只有在您设置了最佳阈值水平(下阈值和上限阈值)后才能发挥最佳效果

    你如何设置它们?

    • 首先,计算灰度图像的中值
    • 使用图像的中值选择最佳阈值。

    以下伪代码向您展示了它是如何完成的:

    v = np.median(gray_img)
    sigma = 0.33
    
    #---- apply optimal Canny edge detection using the computed median----
    lower_thresh = int(max(0, (1.0 - sigma) * v))
    upper_thresh = int(min(255, (1.0 + sigma) * v))
    

    lower_threshupper_thresh设置为canny edge函数的参数。

    sigma 设置为0.33,因为在沿分布曲线的统计中,考虑了位于曲线起点和终点之间 33% 之间的值。超出和低于此曲线的值被视为异常值。

    这就是我为你的形象得到的:

    【讨论】:

      【解决方案3】:

      如果可以的话,最好的删除它们的方法可能是一开始就不要拥有它们。如果线条是图像中的噪声伪影,请应用平滑滤波器(例如高斯滤波器)以使图像平整。 -> Gaussian filter info

      一旦它们存在就移除它们很棘手,并且可能涉及一些更高级别的形状识别内容

      【讨论】:

      • Canny 具有内置的高斯模糊 - 无需单独的步骤。
      • 但如果平滑不够强,您仍然会拾取伪影,预过滤阶段(不一定是高斯过滤器)可能会有所帮助
      • 是的,没错,我只是指出您对高斯模糊的建议已经是 Canny 算法的一部分。
      • 我猜没有办法修改OpenCV的内置高斯函数的Canny函数?您需要完成这个额外的步骤吗?
      猜你喜欢
      • 2014-08-31
      • 2011-11-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-01-07
      • 1970-01-01
      • 2011-08-16
      相关资源
      最近更新 更多