我有与氡变换相关的任务,其中包含一个通过 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 案例的答案。这似乎只能通过自己的经验找到。
书中答案:
AC Kak 和 Malcolm Slaney,计算机断层成像原理,工业与应用数学学会,2001 年,第 25 页