If one has a 2-D array and would like to take the 1-D Fourier transform along a direction $\theta$ degrees off the horizontal, is there a better/faster way to do this rather than rotating the image by $-\theta$ degrees, taking the 1-D FT across the columns, and then rotating the result back by $\theta$ degrees?

  • 1
    $\begingroup$ Well 2DFFT(rotated(image)) = rotated(2DFFT(image)), right? So I doubt there's any shortcut for 1DFFT. $\endgroup$ – endolith Oct 8 '13 at 0:27

You can take the 1D IFFT using a pseudo-polar grid. Fig. 2 in this paper shows an example of such grid.

Possible choices for the angle $\theta$ are going to be limited. but the transform will be free from interpolation artifacts introduced by the rotation algorithm.

  • $\begingroup$ I'm not worried about artifacts since I can use high quality filters in the resampling. It's more about efficiency. Also, $\theta$ really needs to be given to several decimal places, so a psuedo-polar FFT is not a solution. $\endgroup$ – AnonSubmitter85 Oct 4 '13 at 21:50

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.