【问题标题】:Maximum value of a direct fourier transform直接傅立叶变换的最大值
【发布时间】:2014-07-07 08:38:49
【问题描述】:

我有一个波形样本列表,所有值都在-1+1 之间。这些值是从音乐文件中读取的。我现在会的,

  1. 应用直接傅立叶变换,(scipy.fftpack.rfft)
  2. 通过将值除以样本数的平方根来归一化,
  3. 计算列表中每个项目的功率。 (sqrt(real^2 + imag^2))

在所有这些之后,我可以期望在这个列表中的最大值是多少?我本来预计最大功率是1,因为输入数据中的最大幅度是还有1。但是,这仅适用于简单的正弦波。一旦我开始用真正的音乐做这件事,我就会得到更高的价值。

如何“规范化”获取01 之间的值的能力?甚至有可能找出最大值吗?如果不是,扩展结果的最佳做法是什么?

【问题讨论】:

    标签: python fft dft spectrum


    【解决方案1】:

    如果你看一个直流信号1 1 1 1,它的DFT是4 0 0 0

    要将其归一化为 [0,1],您需要除以 4,即点数。

    【讨论】:

    • 我已经在这样做了,请参阅我的问题中的#2。对于正弦波,这给了我1 的最大值,就像预期的那样。如果我使用另一波(音乐),我会得到更高的值,我想知道我可以期望的最大值是多少。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多