【发布时间】:2013-08-21 17:19:04
【问题描述】:
我试图简化的一些 MatLab 代码通过寻找 FFT 的努力,只取绝对值,然后取平均值:
> vector = [0 -1 -2 -1 0 +1 +2 +1];
> mean(abs(fft(vector)))
ans = 2
所有这些系数都是建立起来的,然后又被削减到一个单一的值。我正在开发的平台非常有限,如果我能在不使用 FFT 的情况下过关,那就更好了。有没有办法在没有 FFT 的情况下近似这些操作?
可以假设 vector 的长度最多为 64 个值。
【问题讨论】:
-
这个值到底应该代表什么?
-
这样做有什么问题?是性能瓶颈吗?
-
(at) david - 不知道,没有 cmets。 (at) eitan - 是的,很重要。平台没有原生浮点数。
-
它看起来像是输入向量的某种“平均频率”(单边频谱的平均值)。您可以利用输入向量的任何属性来估计或查找答案吗?例如,输入向量是否总是少数几个值之一?输入信号是否有带宽限制?它总是整数吗?在什么范围内?
-
这看起来像是对 RMS 或 sqrt(RMS) 的粗略近似的计算。有什么原因导致实际的 RMS 不起作用?
标签: matlab fft approximation