【问题标题】:Difference between meanShiftFiltering and meanShiftSegmentation in OpenCVOpenCV中meanShiftFiltering和meanShiftSegmentation的区别
【发布时间】:2015-10-04 10:20:52
【问题描述】:

谁能解释一下gpu::meanshiftFilteringgpu::meanShiftSegmentation 之间的区别?

文档并没有真正的帮助。

也许这是一个不同的问题,但我的目标是提取对象的边界,如果有人可以帮助我,那就太好了。

【问题讨论】:

    标签: c++ opencv image-processing image-segmentation mean-shift


    【解决方案1】:

    TL;DR

    均值偏移过滤旨在减少噪声并提高图像质量,它会返回“更干净”的图像。
    另一方面,mean shift segmentation 将图像分割成具有大致相同颜色的区域。它将每个像素的映射返回到其对应的段。
    如果你想要对象边界,你应该使用均值偏移segmentation


    请参阅 Comaniciu 和 Meer Mean shift: A robust approach toward feature space analysis (PAMI 2002) 的开创性工作,描述了“均值偏移”过程。

    “均值偏移”是一种数值程序,旨在搜索通过样本定义的分布的模式(“集中点”)。在图像处理的上下文中用更简单的话来说:您可以将图像的所有像素视为 RGB-XY 空间中的样本。图像中的“红色”区域可以被视为在该区域的 XY 坐标中具有红色的像素的“高概率”。 因此,您可以将图像视为定义该空间分布的 RGB-XY 样本的集合。
    “均值偏移”过程旨在以高概率("mode" = 分布的局部最大点)在 RGB-XY 空间中找到区域。

    为什么这个观点有用?你可能会问自己。好吧,考虑一个嘈杂的图像,噪声驱使像素远离 RGB-XY 空间中的原始分布模式。如果您可以将每个像素从其当前(嘈杂)颜色“转移”到一种分布模式,您可能会减少噪声。

    因此,均值偏移过滤会改变像素的颜色,使其与附近最主要的颜色相似。

    向前迈出一步,你可以问自己“每个像素属于哪一种模式?”。因此,如果您有m 模式(在 RGB-XY 空间中),您可以将每个像素分配给这些m 模式之一,从而有效地将图像分割成m 段。此过程称为均值偏移分割

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-01-25
    • 2010-10-19
    • 2021-03-02
    • 1970-01-01
    • 2011-07-21
    • 2016-01-31
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多