有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java方向加权中值滤波器(图像处理)

我需要在Java中实现一个方向加权中值滤波器来去除随机脉冲噪声。我不知道从哪里开始。算法如下所示:

  1. 创建一个5x5窗口
  2. 考虑中心像素的4个方向(垂直、水平、左对角线、右对角线)(每个方向5个像素)
  3. 计算加权差,取最小值
  4. 将最小值与阈值进行比较:
    如果值大于;阈值:它是噪声像素
    否则:它不是噪声像素
  5. 计算每个方向上5个像素的标准偏差
  6. 对标准偏差最小的方向给予额外的权重,计算加权中值
  7. 噪声像素将替换为该中值
  8. 在整个图像中移动窗口
  9. 重复步骤8到10次

有人能给我指出正确的方向吗?我该如何着手实施这项计划?任何示例或实现的代码都将受到高度赞赏。我使用的是ImageJ,所以任何实现了这个过滤器(或其变体)的插件都会非常有用。谢谢


共 (1) 个答案

  1. # 1 楼答案

    显然,这个过滤器还没有作为ImageJ插件实现。不幸的是,我在你链接的出版物中也找不到任何来源。除非您直接向作者索要代码,否则您必须根据发布的描述自己实现过滤器

    您可以从ImageJ plugins page中列出的其他过滤器的实现(和源)开始。我建议实现ExtendedPlugInFilter接口

    可选地,您应该考虑使用ImgLib,包括在{a4}中的通用图像处理库,并且是未来ImageJ2的核心模型。您可以在斐济邮件列表上获得更多帮助(fiji@fiji.sc)