是否存在使用频率对数除法的FFT?

时间:2009-07-13 16:08:55

标签: audio signal-processing fft wikipedia logarithm

维基百科的Wavelet article包含以下文字:

  

离散小波变换的计算复杂度也较低,与fast Fourier transform的O(N log N)相比,需要O(N)时间。这种计算优势并不是变换所固有的,而是反映了频率的对数除法的选择,而不是FFT的等间隔频率划分。

这是否意味着还有类似FFT的算法使用频率的对数除法而不是线性?是O(N)吗?对于很多应用来说,这显然是首选。

3 个答案:

答案 0 :(得分:12)

是。是。否。

它被称为对数傅里叶变换。它有O(n)时间。然而,它对于随着域/横坐标增加而缓慢衰减的函数是有用的。

回顾维基百科的文章:

  

主要区别在于小波   在时间和地点都有本地化   频率而标准傅立叶   变换仅在本地化   频率。

因此,如果你只能在时间(或空间,选择你对横坐标的解释)进行本地化,那么小波(或离散余弦变换)是一种合理的方法。但是如果你需要继续下去,那么你需要进行傅里叶变换。

http://homepages.dias.ie/~ajones/publications/28.pdf

了解有关LFT的更多信息

以下是摘要:

“我们提出了一个精确的解析表达式,用于对数采样的函数的傅立叶变换。该算法在计算上比快速傅立叶变换(FFT)更有效,用于转换函数或测量响应随着增加而缓慢衰减我们用电磁地球物理学的例子来说明所提出的方法,其中缩放通常应该应用我们的对数傅里叶变换(LFT)。对于所选择的例子,我们能够获得与来自FFT缩短到0.5%以内,时间缩短了1.0e2倍。我们的LFT在地球物理学中的潜在应用包括将宽带电磁频率响应转换为瞬态响应,冰川加载和卸载, 地下水中的含水层补给问题,正常模式和地球潮汐研究以及脉冲冲击波模型。“

答案 1 :(得分:0)

编辑:在阅读完这篇文章后,我认为这个算法对这个问题并不是很有用,我会为其他读者提供一个描述。

还有 Filon的算法一种基于Filon的方法的方法,可以在 Numerical Recipes 这个[博士论文] [1]中找到。 时间刻度是对数间隔,因为产生的频率刻度。

此算法用于在观察到的时间间隔内衰减为0的数据/函数(可能不是您的情况),典型的简单示例是指数衰减。

如果您的数据是通过点(x_0,y_0),(x_1,y_1)...(x_i,y_i)记录的,并且您想要计算频谱A(f),其中f是来自f_min =的频率1 / x_max到f_max = 1 / x_min  日志间隔。 然后通过以下公式计算每个频率f的实部:

A(f)=来自i = 0 ... i-1的总和{(y_i + 1 - y_i)/(x_i + 1 - x_i)* [cos(2 * pi * f * t_i + 1) - cos(2 * pi * f * t_i)] /((2 * pi * f)^ 2)}

虚部是:

A(f)= y_0 /(2 * pi * f)+来自i = 0 ... i-1 {(y_i + 1 - y_i)/(x_i + 1 - x_i)* [sin(2) * pi * f * t_i + 1) - sin(2 * pi * f * t_i)] /((2 * pi * f)^ 2)}

[1] Blochowicz,Thomas:纯净和二元分子玻璃形成器中的宽带介电谱。拜罗伊特大学,2003年,第3.2.3章

答案 2 :(得分:0)

要做你想做的事,你需要测量不同时间的Windows,这意味着较低的频率最少经常更新(与2的幂成反比)。

点击FPPO: https://www.rationalacoustics.com/files/FFT_Fundamentals.pdf

这意味着更高的频率会更频繁地更新,但你总是平均(移动平均值很好),但也可以让它移动得更快。当然,如果计划使用逆FFT,你不需要任何这个。此外,为了在较低频率下具有更好的精度(更小的带宽),意味着需要更快地更新,例如16k Windows(1/3 m / s)。

是的,低频信号自然会慢慢传播,因此当然,您需要花费大量时间来检测它们。这不是数学可以修复的问题。它是一种自然交易,你不能具有较高的准确度,较低的频率和较快的响应。

我认为我提供的链接会澄清您的一些选择......不幸的是,在您提出问题7年后。