如何从二进制图像中删除非周期性行

时间:2016-05-02 09:12:55

标签: opencv image-processing

Example Image

我想删除线条(以红色显示),因为它们不正常。以黑色显示的线在相同的周期(大约)重复。期间事先不知道。有没有办法自动删除非周期性线条(以红色显示)?

注意:图像是二进制的(后面和后面)..显示为红色的线条仅用于说明。

2 个答案:

答案 0 :(得分:0)

当然有任何办法。几乎总有办法做某事。

幸运的是,您没有提供任何特殊问题。整个事情太广泛了,无法在这里得到解答。

为了帮助您入门:(我强烈建议您从笔,纸和大脑开始)

检测线条 - > google或者认为,有许多标准方法可以检测图像中的线条。如果你的二进制图像中没有噪音,那就太琐碎了。

找到任何等距离集 - >认为 删除其余的 - >想(你知道什么是好的,所以其他一切都必须消失)

答案 1 :(得分:0)

我认为,你的线条(几乎)是垂直的。

以下内容应该有效

  • 将图像转换为列总和直方图
  • 尝试对信号进行傅里叶变换(可能适当地填充图像)
  • 从傅立叶频谱中选择最大值/峰值作为基准周期

如果您需要线条而不是线条的位置,请以适当的间隔生成一个带线条的蒙版(由之前的分析确定)并应用于图像。