Home Tutorials Matlab Matlab e la Trasformata di Fourier (Fast Fourier Transform, FFT): fft, fftshift, ifft, complessa coniugata.

Google Translator

 

Effettua una donazione

 

 

 

 

 

Page Rank Check    

 

 

Ultimi articoli

Matlab e la Trasformata di Fourier (Fast Fourier Transform, FFT): fft, fftshift, ifft, complessa coniugata.
Tutorials - Matlab
Scritto da RedBaron85   
Sabato 30 Gennaio 2010 13:38

Matlab e la Trasformata di Fourier (Fast Fourier Transform, FFT): fft, fftshift, ifft, complessa coniugata.

Questo script carica un file immagine, 'immagine.jpg', ne calcola la trasformata di Fourier, la shifta, ne ricava la complessa coniugata e da quest'ultima ricava l'antitrasformata di Fourier, mostrando a video il risultato.

 

Ebook, videocorsi e tutorials di RedBaron85 su Blender, Java3D e altro su effe12.com

 

Ecco lo script:

clear;

immagine = imread('immagine.jpg');

fourier = fft2(immagine);        % Funzione per calcolare la Fast Fourier Transform di un'immagine (2D)

fourier = fftshift(fourier);        % Shift della trasformata

[M, N] = size(fourier);        % Questi ed altri comandi di base dovrebbero essere chiari, dopo l''articolo sulle basi di Matlab per l'elaborazione delle immagini digitali... ;-)

complessaConiugata = zeros(M,N);    % Creo una matrice di zeri della dimensione della trasformata di Fourier; tale matrice conterrà la complessa coniugata

for x=1:M

for y=1:N

complessaConiugata(x,y) = fourier(abs(x-(M+1)), abs(y-(N+1)));

end;

end;

% A questo punto, calcolo la trasformata inversa shiftata della complessa coniugata e la mostro a video:

ifft = ifftshift(complessaConiugata);

ifft = real(ifft2(ifft));        % ifft2 produce una matrice di numeri complessi; noi possiamo considerare e mostrare a video la parte reale, ignorando la parte immaginaria (la teoria che sta alla base di questa considerazione esula da questa trattazione)

imshow(ifft);      .


Da notare che è possibile visualizzare a video anche la trasformata di Fourier di un'immagine: basta scrivere ad esempio

immagine = imread('immagine.jpg');

fourier = fft2(immagine);

imshow(fourier);          .


E' tutto, a presto!

 


Risorse consigliate su Matlab:


                 

 

Tags:     tutorial      matlab      script      scripting      trasformata      fourier      fast fourier transform      fft      fftshift      ifft      complessa coniugata
Ultimo aggiornamento Martedì 05 Febbraio 2013 22:51
 

 

Ricerca personalizzata

 

Milanese Francesco - Partita IVA: 04950350878

Copyright © 2013 RedBaron85.com: Informatica, CG 2D e 3D, Blender, Python, Java 2D e 3D, 3D Studio e altro ancora!. Tutti i diritti riservati.
Joomla! è un software libero rilasciato sotto licenza GNU/GPL.
AltroArticoliblog utentiBlueprintsContestenglishProgrammazioneModelliElencoNewsTexturesTutorialsVideotutorials