【发布时间】:2012-06-13 14:43:12
【问题描述】:
我有与氡变换相关的任务,其中包含一个通过 DFT 使用重采样的子任务。
让我们考虑具有 515 个像素长度的非周期性离散信号(图 1)(例如像素串)。在我的重采样实现中包含以下步骤:
- 循环左移(图 2)。
- 向中心添加零,以使信号长度变为 2^n(在我们的示例中,1024-515 = 509 个零,我们必须添加)(图 3)。
- 从此信号获取 DFT(图 4)。
- 循环右移。 (用于将低频移至中心)(图5)
图 1
图 2
图 3
图 4
图 5
主要问题:
为什么我们必须对信号进行循环移位并在中心准确地添加零? (我假设这使信号具有周期性) Zeropadding 做插值 DFT 谱,对吗? (我问了,有人说不是这样) 也许有人可以简单地解释一下零填充后信号会发生什么。
我在 Matlab 中做了一些实验,发现任何其他动作序列都无法给出所需的结果。
现在让我们考虑两种情况:
a)(这个正确的变体)我们有非周期性离散信号(例如像素串),它将循环左移并在中心填充零,然后从中获得 DFT 并移位回来了。
b) 我们有非周期性的离散信号(例如像素的集合串),从左到右填充零,然后从中获得 DFT。
这些 DFT 频谱有何不同?
我读过一些书,但没有找到这个 zeropadding 案例的答案。这似乎只能通过自己的经验找到。
书中答案:
A. C. Kak 和 Malcolm Slaney,计算机断层成像原理,工业与应用数学学会,2001 年,第 25 页
【问题讨论】:
标签: algorithm matlab signal-processing fft discrete-mathematics