Grayscale image to rgb image
3 views (last 30 days)
Show older comments
Can any one tranform the resultant inverse fourier transform image back to color because I am using the color image for FT.So when i apply IFT the resultant image should be color but I am seeing the gray image.Kindly help me my code is given below.
imageA=imread('lena.bmp');
figure,imshow(imageA)
title('Original Grayscale Lena Image');
imageA=double(rgb2gray(imageA));
fftA=fft2(imageA);
figure,imagesc(abs(fftshift(fftA)));
colormap gray;
imagesc(log(abs(fftshift(fftA))));
title('RGB lena Image Magnitude throught Fourier Transforms');
figure,imshow(angle(fftshift(fftA)),[-pi,pi]),colormap gray
title('RGB Lena Image Phase through fourier transform');
fftB = abs(fftA).*exp(i*angle(fftA));
imageB=ifft2(fftB);
cmin=min(min(abs(imageB)));
cmax=max(max(abs(imageB)));
figure,imshow(abs(imageB),[cmin cmax]); colormap in2rgb;
title('RGB Resultant Image Magnitude By inverse Fourier Transform');
0 Comments
Answers (2)
Dr. Deepak Kumar Rout
on 21 Sep 2012
You have to find DFT of RGB frames of the color image and then back in order to get color image or if u have converted the color image to gray before conversion then you simply use a pseudocolor image processing algorithm to it
2 Comments
Image Analyst
on 21 Sep 2012
I don't agree with that. Pseudocoloring has nothing to do with it. You can fft each color plane, then filter, then inverse fft, and use cat(3,r,g,b) to recombine into a color image.
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!