fftshift and ifftshif of an image
1 view (last 30 days)
Show older comments
HI, i have loaded and calculate the FFT of a RGB image and do the FFTshift to center the spectrum. My problem is that if I pass the return of fft to fftshift, fftshift mix up the chromatic planes (the 3rd dimension), so I have to run the fftshift function on every color plane, one for red, another for blue, and another for green. Specifically what I do is:
F=fft2(IMG_gray);
S(:,:,1)=fftshift(F(:,:,1));
S(:,:,2)=fftshift(F(:,:,2));
S(:,:,3)=fftshift(F(:,:,3));
Is there a function that do not mix up the color planes?
0 Comments
Accepted Answer
More Answers (1)
Image Analyst
on 16 Jan 2013
If you're taking the FFT of a gray image (like the red channel = f(:,:,1)), as you're doing in:
F=fft2(IMG_gray);
then I don't see why F would have three color channels. Can you explain?
2 Comments
Image Analyst
on 17 Jan 2013
When you were doing the modifying, you should have changed the name too, so it was less confusing. Keeping code maintainable and understandable is an important aspect of code development that should not be underestimated, at least in a business or professional environment.
See Also
Categories
Find more on Image Processing Toolbox in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!