convfft vs. fftfilt (1D convolution)

5 次查看(过去 30 天)
I'd like to use the fastest way for 1D convolution in Matlab. Under the discussions for convfft, it's said that fftfilt is faster than convfft, however i'm using the following equivalent commands (for large vectors), and i found fftconv to be faster. Any suggestions?
res1 = convfft(a,b);
res2 = fftfilt([a,zeros(length(b)-1,1)],[b,zeros(length(a)-1,1)]);

采纳的回答

David Young
David Young 2011-8-15
The relative speed depends on the the sizes of the vectors. The best way to find out which is fastest is to experiment - and that's therefore my suggestion.
There's some discussion of the 2-D case here and some experimental results, which show some of the factors you need to take into account.

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Startup and Shutdown 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by