设计每度循环工作的 2D DFT 滤波器

问题描述 投票:0回答:1

这是我关于二维 dft 的问题。我知道如何进行 2d-dft 以及卷积和过滤。但是,我仍然有一个基本问题。也许我还没有理解这个概念,所以我不知道在这里做什么。

基本上,当我们想要通过将原始图像的傅里叶变换乘以高斯滤波器来过滤场景的空间频率内容时。如何删除每度 0.5、1 和 2 个周期以上的空间频率内容(cpd;每幅图像 12、24、49 个周期的低通截止值)?

我们还知道,对于 3 dB 的标准衰减,高斯滤波器的 on 是空间频率截止的函数。

image-processing computer-vision filtering dft vision
1个回答
2
投票

我不是这方面的专家,但我会这样处理你的任务:

首先,我希望您知道 FFT 仅返回 奈奎斯特频率。因此,如果您从 FFT 中删除奈奎斯特频率的频带,并不意味着重建图像在删除的频带中将没有频率(由于混叠)!!!我还建议阅读:

现在你想要空间单位而不是

Hz
然后让:

  • xs,ys
    是图像尺寸
  • FFT[xs][ys]
    为 FFT 结果

因此在

x
轴上类似:

  • FFT[1][?]
    代表
    1 cpi
    (每张图像的周期)
  • FFT[2][?]
    代表
    2 cpi
    (每张图像的周期)
  • FFT[xs-1][?]
    代表
    (xs-1) cpi
    (每张图像的周期)

希望大家能由此自行猜出

y
轴。现在我们现在FFT结果的哪一部分属于哪些空间频率。所以:

  1. 构造矩阵

    M[xs][ys]
    保存滤波器系数

    • 为通过过滤器的所有频率设置
      M[x][y]=1.0
    • 将其余设置为
      M[x][y]=0.0
    • 不要忘记始终设置
      M[0][0]=1.0
      ,否则你会破坏结果的
      DC
      部分
  2. 模拟不锐利的过滤

    您可以使用高斯模糊矩阵

    M
    高斯模糊椭圆的半径可以取决于
    x,y
    位置。

  3. 按元素乘以

    FFT[][]
    M[][]

    FFT[x][y]=FFT[x][y]*M[x][y]

  4. 现在重建图像

    image=IFFT(FFT[][])

© www.soinside.com 2019 - 2024. All rights reserved.