Code covered by the BSD License  

Highlights from
Low Freq 2D Fourier Transform

5.0

5.0 | 2 ratings Rate this file 23 Downloads (last 30 days) File Size: 2.06 KB File ID: #43311
image thumbnail

Low Freq 2D Fourier Transform

by

 

03 Sep 2013 (Updated )

Produces high resolution 2D Fourier Transform for low spatial frequencies.

| Watch this File

File Information
Description

Useage case:
You are only interested in the low spatial frequencies of your matrix, but you want a high resolution transform. Using fft2 with lots of zero-padding you get a decent resolution but it takes too long. What can you do? Try sft2_low!

Algorithm:
This function uses the basic Fourier transform rather than the FFT, but because it is only evaluating it at a small number of points the total execution time is considerably less (it can be 20x faster or more).

The code is fully vectorised, so it's pretty quick even though it's doing a lot of arithmetic. At some point I may generalise the code to allow you to specify your exact frequencies of interest.

Warning:
The output should be correct, but I recommend testing it and comparing the values with fft2. Please report problems and suggestions in the comments.

Acknowledgements

Numerical Methods For Physics inspired this file.

MATLAB release MATLAB 8.0 (R2012b)
Tags for This File   Please login to tag files.
Please login to add a comment or rating.
Comments and Ratings (2)
24 Oct 2013 Ali

Wow. This is even better than the first version and even faster.

04 Sep 2013 Ali

This is awesome. Thank you.

Updates
23 Oct 2013

Code is now optimized to work specifically on real-valued inputs. It also now optionally gives the frequencies as outputs.

20 Nov 2013

improved comments

Contact us