why is calculating convolution in frequency domain quicker than conv2()

2 次查看(过去 30 天)
so i have two programs written that calculate the convolution of a picture with a high-pass filter and i used tic/toc to calculate the time it took to make the calculations. it showed that ifft2(fft2(a)*fft2(b)) was faster than conv2(). could someone explain why these calculations are done faster in the frequency domain?
  2 个评论
Rik
Rik 2018-5-5
The direct calculation is the fastest method anyway, so I would image conv2 would need to do some input checking before it concludes that it is the faster method. Or maybe something else is going on. cellfun('length',A) being much faster than cellfun(@length,A) has it's roots in how the function started, although why this is still the case is a mystery to me.

请先登录,再进行评论。

回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Read, Write, and Modify Image 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by