Python SciPy卷积VS fft卷积
问题描述
我知道一般来说,当数组相对较大时,FFT and multiplication
通常比直接convolve
操作更快。然而,我正在将一个非常长的信号(比方说1000万点)和一个非常短的响应(比方说1000点)进行卷积。在这种情况下,fftconvolve
似乎没有多大意义,因为它强制第二个数组的FFT与第一个数组的大小相同。在这种情况下,直接卷积是否更快?
解决方案
看看我在这里所做的比较:
http://scipy-cookbook.readthedocs.io/items/ApplyFIRFilter.html
您的情况可能处于使用普通卷积和使用基于FFT的卷积之间的过渡阶段,因此您最好的选择(@Douga在评论中建议的那样)是自己计时。
(请注意,在该比较中我没有执行重叠-添加或重叠-保存。)
相关文章