6

我有与氡变换相关的任务,其中包含一个通过 DFT 使用重采样的子任务。

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

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

图。1 原始图像

图2 循环左移

图3 零填充

图4 DFT 谱

图5 DFT 后移

主要问题:

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

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

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

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

b) 我们有非周期性离散信号(例如像素集合),从左到右填充零,然后从中获得 DFT。

在此处输入图像描述

这些 DFT 光谱有什么区别?

我读过一些书,但没有找到这个 zeropadding 案例的答案。这似乎只能通过自己的经验找到。

书中答案:

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

4

2 回答 2

5

时域中的零填充对应于频域中的插值。

时域的圆移对应于频域的“相位扭曲”;每个 bin 都应用了复杂的旋转。我不知道为什么你被要求在你的应用程序中这样做!

于 2012-06-10T09:03:55.540 回答
2

移动数据点并在 FFT 孔径的确切中心进行零填充具有以下特性:原始数据窗口中的所有偶数(对称)信号都以复数 FFT 结果的实部结束,而所有奇数信号都以虚部。例如,保留了奇偶性比,这允许对相位进行插值。在零填充 FFT 的情况下,能够内插相位很重要,因为零填充也会内插频谱幅度。

如果您不将零填充居中,则相位必须在频域中“不扭曲”,然后任何额外的插值才能产生合理的相位结果。

于 2012-06-11T00:10:20.707 回答