【问题标题】:Canny Edge vs Thresholding for contour estimation in Open CV在 Open CV 中用于轮廓估计的 Canny Edge vs Thresholding
【发布时间】:2015-06-02 01:12:47
【问题描述】:

我正在将 Open CV 用于涉及图像轮廓估计的图像处理应用程序。我想知道的是,对图像进行阈值处理(比如他们是如何做到的here)或使用 Canny Edge 算法(here)会产生更好的结果。这涉及算法分析还是我遗漏了什么?

【问题讨论】:

    标签: opencv image-processing computer-vision contour canny-operator


    【解决方案1】:

    Canny 边缘检测显然。它做了很多事情来确保结果中只有强大的边缘。阈值化只是查看强度并查看每个值是否更小或更大,我们分别获得“边缘”点。 但是,根据场景的复杂性,阈值和边缘检测会产生相同的结果。例如,如果您有一个干净的图像,其中包含多个清晰的对象,并且前景和背景之间的强度差异很明显,那么边缘检测或阈值处理都可以。如果您有一个更复杂的图像,其中不同区域的对比度不同,或者如果您有多个具有不同强度的对象,那么阈值不会给您带来好的结果,因为您将不可避免地包含不属于任何适当的像素对象。这就是边缘检测更好的原因,因为它是 local 运算符,而阈值是 global。阈值处理将一套原则应用于图像中的每个像素。边缘检测将您的图像分解为块,并确定每个块中是否发生了某些事情。


    如果你想从中得到一些东西,它们之间的区别在于阈值处理更多用于对象提取,而边缘检测是处理管道中的预处理步骤,例如轮廓估计、对象检测和识别和特征分析。阈值化是一种查看是否正在发生的事情或提取“活动”事物的相当快速而肮脏的方法,而边缘检测更多地用于计算机视觉相关任务。


    我将向您介绍一些文献,而不是解释 Canny 边缘检测如何更好。


    希望这会有所帮助!

    【讨论】:

    • @user3829158 - 我的荣幸 :) 祝你好运!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-07-21
    • 2018-08-30
    • 1970-01-01
    • 2013-03-23
    • 2013-08-07
    • 1970-01-01
    • 2023-03-21
    相关资源
    最近更新 更多