Esempio: trasformate wavelet
Utilizzare le funzioni per le trasformate wavelet per comprimere dati.
1. Definire un segnale ad onda quadra, in cui:
2. Valutare l'array n e tracciare il grafico del segnale S:
Nell'intervallo 0..255 l'ampiezza del segnale S è uguale a 1 per tutti i valori di n (96..160) e uguale a 0 negli altri casi.
3. Utilizzare la funzione wave per calcolare la trasformata wavelet del segnale S:
4. Calcolare il numero di livelli contenuti in questa trasformata:
5. Utilizzare le funzioni
submatrix e
floor per acquisire il senso dell'importanza relativa di ogni livello:
6. Tracciare il grafico di diversi livelli di coefficienti contemporaneamente:
7. Rappresentare il segnale con una minor quantità di dati eseguendo le due operazioni indicate di seguito.
a. Azzerare i coefficienti di livello superiore.
b. Calcolare la trasformata wavelet inversa dei nuovi vettori di coefficienti.
Primo livello in cui i coefficienti vengono azzerati (L < 7 può variare).
8. Utilizzare la funzione
iwave per recuperare il segnale originale:
9. Confrontare il segnale originale con il segnale trasformato e tracciarne il grafico:
Questa tecnica consente di comprimere i dati necessari per rappresentare un segnale.