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

3 visualizzazioni (ultimi 30 giorni)
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

Risposta accettata

Image Analyst
Image Analyst il 9 Feb 2013
  6 Commenti
Mariem Harmassi
Mariem Harmassi il 2 Mar 2013
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 il 2 Mar 2013
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.

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Images in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by