# Using the Fourier Transform on Partitioned Images

If I cut my image into several portions and use the Fast Fourier Transform on each portioned image, will I achieve the same result as if I used Fast Fourier Transform on the whole image?

I have this concern because I need to process a large image using the Fast Fourier Transform, the problem is that my computer lacks available memory to do the calculation.

Related MATLAB, Maple, Mathematica, LaTeX News on Phys.org
DrClaude
Mentor
No, you will not get the same result. The resolution in frequency depends on the total length, so cutting the image will lower your resolution. There might also be edge effects, depending on what you do in the frequency domain.

A 2D FT is simply a combination of 1D FTs along each row and column. What you could do is read the image one row at a time, FT it, and write out the result to a file. Then reread that file column by column, again performing a FT one column at a time. That way, you do not need the entire image in memory at any time.

Hesch
Gold Member
will I achieve the same result as if I used Fast Fourier Transform on the whole image?
No, of course you will not, simply because you are transforming different images.
You can calculate the "mean" value of the 0. harmonic for all partial images in the whole image, but for other harmonics you cannot.

Why don't you use the hard disc as memory, reading e.g. a line into memory, calculate the FFT and write it back to the hard disc, thereafter reading rows into memory, calulate the FFT and write them back to hard disc.

I know this method is a lot slower, however it could be done within reasonable time.