Wavelets: come e perché Primi fondamenti di signal processing 1780 - 1830 • Pierre Simon Laplace • Jean Baptiste Fourier • Augustine Cauchy L’algoritmo FFT oggi viene attribuito a Gauss! Risultati moderni Probabilità Teoria dei segnali casuali Predizione – Filtro di Wiener Teoria dell’Informazione 1920 - 1950 • Norbert Wiener • Andrei Kolmogorov • Claude Shannon Teorema del campionamento Ricadute industriali 1960 - 1980 • R. E. Kalman • Tukey - Cooley • DSP P TMS 32010 Signal processing Produzione di DSP Storia di oggi 1980 • Ingrid Daubechies Time Frequency Analysis WAVELETS! Architetture VLIW Applicazioni nelle Telecomunicazioni Esplosione dei servizi Multimedia Trasformata di Fourier FT F Trasformata Fourier Transform di Fourier Tempo Frequenza Segnale stazionario 250 1 0.8 200 0.6 0.4 150 0.2 0 100 -0.2 -0.4 50 -0.6 -0.8 -1 0 0.2 0.4 0.6 tempo 0.8 1 0 0 20 40 frequenza 60 80 100 Segnale variabile nel tempo Analisi ambigua 1 0.8 0.6 0.4 0.2 0 -0.2 -0.4 -0.6 -0.8 -1 0 1.5 1 0.5 50 100 150 200 250 300 tempo 350 400 0 0 50 100 frequenza 150 200 Un altro segnale stazionario In tempo In frequenza Un altro segnale non stazionario In tempo In frequenza I due segnali nel dominio delle frequenze Problemi con la Trasformata di Fourier Contiene solo informazioni sulla frequenza Le informazioni sul tempo vengono perse Funziona bene per segnali stazionari Crea problemi per segnali non stazionari Trasformata di Fourier variabile nel tempo Analisi in tempo-frequenza 1 0.9 Frequenza 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0 0 0.1 0.2 0.3 Tempo 0.4 0.5 Trasformata di Fourier Short-time (STFT) Funzioni finestra AMPIEZZA Come si legge la STFT FREQUENZA TEMPO AMPIEZZA AMPIEZZA Finestra TEMPO FREQUENZA Piccola Media TEMPO AMPIEZZA FREQUENZA Larga TEMPO FREQUENZA Problemi con la STFT Scelta di una finestra appropriata Finestra troppo piccola cattiva risoluzione in frequenza Finestra troppo grande cattiva risoluzione nel tempo (violazione della condizione di stazionarietà) Risoluzioni diverse a frequenze diverse Trasformata wavelet • Si sceglie una wavelet e ne si fa variare la scala • Si analizza la risposta del segnale alle varie scale 0.1 0.1 0.05 0.05 0 0 -0.05 -0.05 -0.1 -0.1 0 500 1000 1500 -0.15 0.1 0.1 0.05 0.05 0 0 -0.05 -0.05 -0.1 0 500 1000 1500 -0.1 0 500 1000 1500 0 500 1000 1500 Frequenze La frequenza diminuisce La scala diminuisce Analisi tempo-frequenza per le wavelet Principio di indeterminazione di Heisenberg Dt Df C Trasformata wavelet Segnale Passo 1 Passo 2 * * Passo N Scala bassa Scala media Scala alta AMPIEZZA Come si legge la Trasformata wavelet CWT SCALA TRASLAZIONE Come si calcola la trasformata wavelet (discreta) in modo veloce - Haar wavelet 1 (t) 1 Funzione wavelet -1 1 (t) Funzione di scaling (Haar) 1 Algoritmo piramidale 10 2 8 6 4 6 6 2 4 4 6 2 3 4.5 0 0 1.5 0 1 1 4 2 2 2 4 2 2 2 4 2 2 2 Veloce! 10 2 8 4 6 2 4 0 O(N) operations 6 6 4 6 2 3 4.5 N/2 N/4 4 N 2 2 2 0 1 4 2 2 2 1.5 0 1 4 2 2 2 Ridondanza delle rappresentazioni 10 2 8 4 6 2 4 0 6 6 4 2 4 2 2 2 6 3 0 1 4 2 2 2 0 1 4 2 2 2 4.5 1.5 Dati Scaling Wavelet Filter Bank Analisi (FWT) Sintesi (IWT) Filtro passa-alto Dettagli g 2 2 g’ + h 2 2 Filtro passa-basso Coefficienti della trasformata h’ Approssimazione Algoritmo di Mallat Dettagli Livello 1 HPF h Analisi HPF LPF 2 + g’ ... 2 Coefficienti scaling Livello 1 2 + LPF 2 2 HPF f[n] LPF h’ f[n] 2 g 2 Coefficienti wavelet Livello 1 HPF 2 LPF Approssimazione Livello 1 Coefficienti scaling Livello 2 Sintesi Altre funzioni wavelet HAAR DAUBECHIES 0.1 0.1 0.05 0.05 0 0 -0.05 -0.05 -0.1 -0.1 0 500 1000 1500 -0.15 0 0.1 0.1 0.05 0.05 0 0 -0.05 -0.05 0 500 1000 1000 1500 COIFLET SYMMLET -0.1 500 1500 -0.1 0 500 1000 1500 Segnali (1D) Segnale Wavelet Scaling Rappresentazione trasformata discreta Scaling Wavelet Immagini (2D) Applicazioni De-noising Compressione Analisi serie temporali Classificazione Problemi inversi Equazioni a derivate parziali ………… De-Noising Compressione - Immagini Compressione - Telerilevamento Compressione - FBI Strumenti di lavoro Notiziaro: Wavelet Digest - http://www.wavelets.org Software di base: Wavelab per Matlab – http://www-stat.stanford.edu/~wavelab/ Altro software http://www.mathtools.net/MATLAB/Wavelets/index.html Per divertirsi e impratichirsi http://www.mathtools.net/MATLAB/Wavelets/Java/index.html Letteratura - http://www.mathsoft.com/wavelets.html