时域中的零填充意义

Rom*_*rin 6 algorithm matlab signal-processing fft discrete-mathematics

我有与Radon变换相关的任务,它包含一个使用DFT重新采样的子任务.

让我们考虑具有515像素长度的非周期性离散信号(图1)(例如像素串).在我的重新采样实现中包含以下步骤:

  1. 循环左移(图2).
  2. 向中心添加零,以便信号的长度变为2 ^ n(在我们的例子中,我们必须添加1024-515 = 509个零)(图3).
  3. 从此信号中获取DFT(图4).
  4. 循环右移.(用于将低频移到中心)(图5)

图.1 原始图像

图2 循环左移

图3 Zeropadded

图4 DFT频谱

图5 DFT后退了

主要问题:

为什么我们必须执行信号的循环移位并在中心准确添加零?(我假设这使得信号周期性)Zeropadding进行插值DFT频谱,是否正确?(我问过,有人说这不是什么)也许有人可以用简单的方式解释zeropadding后信号会发生什么.

我在Matlab中做了一些实验,发现任何其他动作序列都不能给出所需的结果.

现在让我们考虑两种情况:

a)(这个正确的变体)我们有非周期性离散信号(例如像素串),它将循环移位到左边,在中心填充零,之后将从此获得DFT并将其移回. 在此输入图像描述

b)我们有非周期性离散信号(例如设置的像素串),在此之后将从左和右填充零,从中获得DFT.

在此输入图像描述

这些DFT光谱有什么区别?

我读了一些书,但没有找到这个zeropadding案例的答案.看来这只能通过自己的经验找到.

书中答案:

AC Kak和Malcolm Slaney,计算机断层扫描成像原理,工业和应用数学学会,2001年第25页

Oli*_*rth 5

时域中的零填充对应于频域中的内插.

时域中的循环移位对应于频域中的"相位扭曲"; 每个bin都有一个复杂的旋转应用于它.我不知道为什么你被要求在你的申请中这样做!