【问题标题】:Implementation of Non Local Means Noise reduction algorithm in image processing图像处理中非局部均值降噪算法的实现
【发布时间】:2011-06-30 10:44:45
【问题描述】:

我正在研究 C++ 中非局部均值降噪算法的实现。这个算法有论文(such as this paper),但也不是很清楚。

我知道,它使用的是加权平均值,但我不知道研究窗口在这里有什么用,它与比较窗口有什么关系。

作为新用户,StackOverflow 不允许我上传图片。但是,您可以在上面提供的链接的 nl ​​表示部分下找到公式。

【问题讨论】:

  • 是的,我的意思是一样的搜索窗口=研究窗口。不同论文中的不同命名法。

标签: c++ image-processing


【解决方案1】:

从你参考的论文来看,在确定给定像素 p 的结果值时,图像的所有其他像素将根据它们的邻域与像素 p 的邻域之间的相似性进行加权和求和。

但这在计算上非常昂贵。因此作者限制了对加权和有贡献的像素数量;那一定是你所说的搜索窗口。这个搜索窗口是以像素 p 为中心的 21x21 区域。被比较的社区大小为 7x7(第 5 节)。

我可以使用 Mathematica 快速制作原型,并且我确认当搜索窗口的大小增加时它会变得非常昂贵。当您在 C++ 中实现时,我期望相同的行为。

【讨论】:

  • 感谢@matthias 的帮助。它让我发现了我在理解这个概念时所犯的错误。我发现搜索窗口包含像素 p 周围的邻域。比较窗口用于查找以像素 p 为中心的 NxN 个补丁与其他像素 q 之间的距离 d。
  • 这是处理 45 分钟后的结果。 i.imgur.com/uG4wa.jpg(需要优化)。
  • @pratikone 我很高兴你能弄清楚。感谢您展示示例。
【解决方案2】:

这里有一些 GPL 的 C++ 代码以及原始作者对该算法的简要说明:http://www.ipol.im/pub/algo/bcm_non_local_means_denoising/

【讨论】:

    【解决方案3】:

    【讨论】:

      猜你喜欢
      • 2017-05-09
      • 1970-01-01
      • 2019-04-20
      • 2018-04-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-05-14
      • 2012-07-27
      相关资源
      最近更新 更多