Re: fft / ifft question
- From: Eric Metois <eric@xxxxxxxxxx>
- Date: Thu, 25 Aug 2005 14:48:09 -0400
dan.starr@xxxxxxxxx wrote:
I'm trying to figure out what a chunk of image processing matlab code is supposed to accomplish, and I'm stumped:
In the following, x is an 84x89 double (complex) matrix of values.
What would be the purpose of this line:
x = ifft(fft(x),[],2);
It's first taking the FFT along each column of x, and then taking the
inverse fft of the result along the 2nd dimension. What purpose would
this have in the field of image processing?
Thanks.
Hi Dan,
There isn't much difference between an fft and an ifft: the ifft is equivalent to the complex conjugate of the fft of the reversed signal (i.e. first sample becomes last signal). The main difference (at least in the Matlab implementation) is that ifft applies a scaling factor that compensates the scaling that occurs during fft. My best guess is that this scaling was the motivation for this line of code.
So, aside from a possible vertical mirror effect and opposite phase, ifft(fft(x),[],2) will probably compute the 2D fft of the image x and scale it in the dynamic range of the original image.
.
- References:
- fft / ifft question
- From: dan.starr@xxxxxxxxx
- fft / ifft question
- Prev by Date: How do I analyse Fourier Transform?
- Next by Date: Re: How do I analyse Fourier Transform?
- Previous by thread: fft / ifft question
- Next by thread: Diffing between 2 images.
- Index(es):
Relevant Pages
|
|