How to synthetic face images and to reconstruct them only from low-frequency Fourier features ?

3 次查看(过去 30 天)
Hello everybody I need to reconstruct face images by using only low-frequency Fourier coefficients. So how to keep only the low frequency part . this code keep fourier coeffecients from all bands:
imageA = imread('greekchurch','jpg');
fftA = fft2(double(imageA));
figure, imshow(abs(fftshift(fftA)),[24 100000]), colormap gray
title('Image A FFT2 Magnitude')
figure, imshow(angle(fftshift(fftA)),[-pi pi]), colormap gray
title('Image A FFT2 Phase')
fftC = abs(fftA).*exp(i*angle(fftB));
imageC = ifft2(fftC);
How to preserve only low-frequency Fourier coefficients . Thanks for your attention

采纳的回答

Image Analyst
Image Analyst 2013-2-9
  6 个评论
Mariem Harmassi
Mariem Harmassi 2013-3-2
Hello the problem is as follow :Given an image of size 64*80 , in order to apply the fastFourier transform (FFT) algorithm, image must be extended to 128 128 pixels. Thus, the full bandwidth available is 64 due to the symmetry of the Fourier coefficients. As explained above, i need only the low-frequency Fourier coefficients. In the experiments, i must select the first 16*16 FFT coefficients, which cover about 50% of all the energy, to form the global fourier feature vector (GFFV).how to extract the the first 16*16 FFT coefficients.Can you give me a code .
Image Analyst
Image Analyst 2013-3-2
If you haven't used fftshift() then the low frequencies will be in the 4 corners, so just zero out everything except for 8 by 8 blocks in the corners.

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Images 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by