【问题标题】:Extrapolation using fft in octave在八度音阶中使用 fft 进行外推
【发布时间】:2010-05-09 09:08:16
【问题描述】:

使用 GNU octave,我正在计算一段信号的 fft,然后消除一些频率,最后重建信号。这给了我一个很好的信号近似值;但它并没有给我一种推断数据的方法。

基本上假设我已经绘制了三个半周期

f: x -> sin(x) + 0.5*sin(3*x) + 1.2*sin(5*x)

然后添加一段低幅度、以零为中心的随机噪声。使用 fft/ifft,我可以轻松去除大部分噪音;但是我该如何推断我的信号数据的另外 3 个周期呢? (当然还有复制信号)。

数学方法很简单:您将函数分解为正弦/余弦的无限和,您只需提取部分和并将其应用到任何地方。但我不太了解编程方式...

谢谢!

【问题讨论】:

    标签: signal-processing fft octave


    【解决方案1】:

    离散傅里叶变换依赖于您的时域数据是周期性的假设,因此您可以重复您的时域数据ad nauseam - 无需显式外推。当然,如果您的单个组件周期不是 DFT 输入窗口持续时间的精确约数,那么这可能无法满足您的期望。这就是我们通常在转换之前应用window functions(例如Hanning Window)的原因之一。

    【讨论】:

    • 嗯,但是你在推断非周期性时间序列的趋势时使用什么,例如 codebase.mql4.com/4990(方法 1,“Quinn-Fernandes 算法”)
    • 我没有详细阅读此内容,但我怀疑这是基于连续(可能重叠)DFT 的推断。假设可能是时间序列是周期性的并且是局部静止的,您可以通过查看连续光谱如何变化来处理(相对缓慢的)随时间变化的参数。这有点像语音分析。
    • 嗯,我不确定我是否理解你;重叠 DFT 是什么意思?
    • 不知何故,我相信我需要的是像 III. Aperiodic discrete signal, continuous periodic spectrum on fourier.eng.hmc.edu/e101/lectures/handout4/node3.html 这样的东西,但我现在不知道该怎么做......
    • 重叠的 DFT 意味着第一个 FFT 可能取 0..M-1 作为输入样本,而第二个 DFT 取样本 M/2..3M/2-1,即有 50%重叠。连续输出谱可以看作是非平稳序列时变谱的近似。
    猜你喜欢
    • 2014-11-06
    • 1970-01-01
    • 2020-12-31
    • 1970-01-01
    • 2014-01-14
    • 2015-04-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多