Beating NumPy in 2DFFT

<p>The 2D Fourier Transform is one of the foremost computer science algorithms of the century. It has gained application in our everyday life, ranging from Instagram filters to the processing of MP3 files.</p> <p>The most frequent implementation used by the average user, sometimes even unknowingly, is an adaptation from NumPy. However, despite its popularity, their algorithm is not the most efficient. With a few simple manipulations and an article from 2015, we beat the NumPy algorithm by 30&ndash;60 percent in performance. The core problem with the current implementation is the simple fact that it is originally derived from a performance-weak algorithm.</p> <p>In its essence, the algorithm implemented by NumPy applies the regular one-dimensional FFT to two dimensions in turn, which clearly cannot be an optimal solution.</p> <p>Conversely, in 2015, two Russian scientists&nbsp;came up&nbsp;with their version of the algorithm, adapting the idea of a one-dimensional butterfly transform for two-dimensional signals. We have implemented their basic algorithm concept efficiently by adding our ideas.</p> <p><a href="https://betterprogramming.pub/beating-numpy-in-2dfft-7963c3b2f3c9">Read More</a></p>
Tags: NumPy 2DFFT