CAPITOLO 1

INTRODUZIONE

La trasformata wavelet è un recente metodo di analisi dei segnali che, fin da quando a metà degli anni '80, A.Grossmann e J.Morlet ne hanno fondato i presupposti matematici, ha riscosso l'interesse di un gran numero di ricercatori di tutto il mondo. Il largo successo che ha immediatamente avuto in numerosi settori della fisica e della matematica applicata è dovuto alle sue peculiari proprietà che la rendono spesso più utile rispetto agli altri metodi di analisi esistenti. Per dare una esatta connotazione della trasformata wavelet nell'ambito dell'analisi dei segnali discutiamo le motivazioni che sono alla base della sua introduzione.
Per analisi si intende la descrizione di un suono in termini di un insieme di parametri il cui significato è specificato da un particolare modello di rappresentazione. Di varia natura e di diversa derivazione teorica possono essere tali modelli. Se il modello è di tipo matematico siamo nell'ambito della teoria delle trasformate, ovvero di metodi matematici che trasformano il segnale dato in un altro segnale in modo tale da garantire la completa conservazione dell'informazione originaria (ovvero da permettere la reversibilità della trasformazione). Tale processo di trasformazione è finalizzato alla costruzione di una rappresentazione alternativa del segnale, dalla quale con maggiore facilità rispetto alla rappresentazione temporale è possibile estrarre informazione significativa. A questo proposito occorre sottolineare che la possibilità di ricavere informazione dal segnale trasformato dipende sia dalle proprietà matematiche della trasformazione adottata, sia dalle proprietà della funzione di analisi impiegata. Ad esempio la trasformata di Fourier è uno strumento soddisfacente per l'analisi di segnali stazionarî, ma si rivela inadeguato per l'analisi di segnali non stazionarî. Un segnale è considerato stazionario se tutte le sue caratteristiche macroscopiche rilevanti quali ampiezza, frequenza, inviluppo ecc. risultano invarianti nel tempo. Poichè i segnali musicali sono per loro stessa natura non stazionarî, è chiaro il motivo per cui siano in questo campo richiesti altri metodi di analisi. Precisiamo subito che il problema è esclusivamente di rappresentabilità di risultati che invece sono completamente giustificati dal punto di vista matematico. Illustriamo i problemi principali associati alla trasformata di Fourier per segnali non stazionarî. Consideriamo il semplice caso di una sinusoide di durata finita il cui attacco e decadimento sono smorzati in modo tale da non avere discontinuità tra la nascita e l'estinzione dell'onda. La trasformata di Fourier di questo segnale ha una forma a campana centrata sulla frequenza della sinusoide e di larghezza inversamente proporzionale alla sua durata e al suo grado di smorzamento, rivelando così la presenza fittizia di componenti spettrali estranee alla frequenza reale. L'esistenza di tali componenti è un puro artificio matematico, ed è dovuto al tipo di funzioni di analisi impiegate. Poichè l'orecchio percepisce questo segnale esattamente come una sinusoide (eccetto per le variazioni di intensità), e poichè in una ideale serie di risuonatori solo quello la cui frequenza di risonanza è uguale a quella del segnale si mette effettivamente a risuonare, è più opportuno adottare un modello matematico in grado di catturare meglio l'analogia con modelli psicoacustici o fisici. Per esempio in questo caso vorremmo poter rappresentare il segnale con uno spettro composto da un'unica riga dotata di una legge di modulazione d'ampiezza, e ciò può essere fatto ricorrendo ad una famiglia di funzioni ortonormali alternativa: anzichè la famiglia degli esponenziali complessi ad ampiezza costante impiegata nella trasformata di Fourier, quella degli esponenziali complessi ad ampiezza variabile. Da questo esempio si può anche osservare che per poter ricavare facilmente informazioni significative di un segnale le cui caratteristiche non si mantengono costanti nel tempo, occorre abbandonare l'idea di dare una descrizione di tipo globale, cioè basata su funzioni di analisi di durata infinita, ed introdurre invece il concetto di spettro locale, cioè di una descrizione data in termini di funzioni limitate nel tempo e perciò valida entro un determinato intervallo temporale. Un'altra possibilità è la cosiddetta analisi parametrica, ovvero la rappresentazione di un segnale mediante un insieme di valori che vengono assegnati ai parametri che caratterizzano un certo modello di produzione del suono. Un esempio di tali modelli è quello su cui si basa l'analisi LPC (Linear Predictive Coding), nel quale la produzione del suono viene distinta nei suoi aspetti di eccitazione e di risonanza. In questo contesto l'analisi consiste nel calcolare i parametri di un filtro ricorsivo privo di zeri, che nel modello fisico rappresenta il risuonatore. Naturalmente la validità dell'analisi parametrica dipende dalla conoscenza che si ha a priori delle caratteristiche del segnale, per evitare il rischio costituito dall'eventuale non rappresentatività del modello. Ad esmpio l'analisi LPC assume la presenza nel segnale di formanti il cui numero determina le risonanze (poli) del filtro ricorsivo. Altri tipi di modelli si avvalgono delle conoscenze acquisite in campo psicoacustico, con l'intento di isolare i parametri che hanno reale rilevanza sull'apparato uditivo. Sulla base di tali modelli è ad esempio possibile riconoscere caratteristiche complesse dei suoni quali il timbro, che essendo strettamente attinenti alle proprietà sensoriali dell'orecchio, risultano difficilmente rilevabili sulla base di un approccio puramente matematico del problema.
La trasformata wavelet è nata con l'intento di superare le difficoltà dell'analisi di Fourier manifestate nel rilevamento delle caratteristiche rapidamente variabili dei segnali. Questo obiettivo è stato raggiunto attraverso la definizione di diverse proprietà di localizzazione delle funzioni di analisi, che, oltre a rilevarsi adeguate allo studio dei transienti, risultano anche in accordo con un modello psicoacustico semplificato secondo il quale l'orecchio è considerabile come un banco di filtri con larghezza relativa di banda ?f/f costante, almeno per le frequenze superiori agli 800 Hz. La maggiore risoluzione temporale per le alte frequenze che ne consegue, conferisce alla trasformata wavelet migliori proprietà di analisi rispetto alla short-time-Fourier-transform per segnali che hanno componenti ad alta frequenza di breve durata sovrapposte a componenti a bassa frequenza di più lunga durata, come tipicamente è il caso della musica e della voce.
In questo lavoro di tesi, lo studio dell'analisi wavelet è stato finalizzato alla definizione e realizzazione di nuovi progetti applicativi nel campo dell'elaborazione dei segnali acustici, che rappresenta un settore rispetto al quale l'indagine delle possibilità offerte dalla trasformata Wavelet non ha ancora raggiunto uno stadio sufficientemente avanzato. In particolare abbiamo orientato la nostra ricerca verso sistemi di elaborazione in tempo reale, coerentemente con l'esigenza, sempre più irrinunciabile in campo musicale, di ottenere la massima interattività tra l'esecutore e il calcolatore. Le due applicazioni realizzate sono un sistema di pitch-detection per segnali vocali e musicali e un generatore di un effetto acustico, e costituiscono due esempi in cui l'elaborazione in tempo reale gioca un ruolo determinante.
La possibilità di calcolare in tempo reale la trasformata wavelet di un segnale campionato è subordinata all'esistenza di algoritmi computazionalmente efficienti che calcolano i coefficienti Wavelet su una distribuzione discreta di punti del piano tempo-frequenza. Tali algoritmi operano un processo di discretizzazione della definizione continua della trasformata, analogo a quello compiuto dalla FFT per il calcolo della trasformata di Fourier, e pertanto nel seguito ci riferiremo ad essi col termine di Trasformata Wavelet Discreta (DWT).
L'organizzazione della presente documentazione è la seguente: nel capitolo 2 discutiamo le analogie e differenze della trasformata wavelet continua rispetto alla short-time-Fourier-transform con particolare riferimento alle proprietà di localizzazione nel piano tempo-frequenza, ed evidenziamo gli aspetti di completezza delle due rappresentazioni. Al fine di introdurre la trasformata wavelet discreta, precisiamo inoltre il significato della scomposizione di un segnale mediante un sistema ortonormale completo su uno spazio di Hilbert. Nel capitolo 3 presentiamo l'algoritmo per il calcolo della trasformata wavelet discreta che abbiamo utilizzato, derivante dalla teoria della analisi multirisolutiva. In base ad essa, esiste una stretta relazione tra la DWT, e la teoria dei filtri numerici, che permette di trattare l'algoritmo con le tecniche proprie dell'elaborazione numerica dei segnali. Le proprietà analitiche della funzione wavelet utilizzata si traducono in conseguenti proprietà sui parametri dei filtri, ed in particolare, la classe delle wavelet ortonormali, di dominio dell'algoritmo, comporta l'impiego di particolari tipi di filtri detti QMF, con i quali si dimostra la possibilità di ricostruire perfettamente il segnale analizzato. Nel §3.5 descriviamo l'algoritmo nel dominio della frequenza che ci aiuterà nello studio di fattibilità di un sistema di equalizzazione audio basato su questo algoritmo (§3.6). Nel §3.7 illustriamo i metodi di progettazione dei filtri QMF, indicando i criteri di valutazione che conducono alla loro scelta. La DWT è stata implementata su DSP Motorola 56001, perseguendo l'obiettivo della massima efficienza computazionale, e affrontando parallelamente la realizzazione della versione che prevede l'impiego di filtri QMF-FIR (con risposta all'impulso finita, §3.8.2), e quella che prevede l'impiego di filtri QMF-IIR (con risposta all'impulso infinita, §3.8.3). E' stata verificata la qualità della ricostruzione ottenuta in entrambi i casi, giudicandola eccellente nel caso dei filtri FIR, mentre nel caso dei filtri IIR risulta fortemente dipendente dalla profondità dell'analisi in frequenza effettuata, per la non linearità di fase nella risposta di tali filtri. Lo strumento di calcolo costruito è stato utilizzato, a scopo sperimentale, in due applicazioni che attengono rispettivamente ai campi dell'analisi dei segnali (pitch-detector) e della elaborazione dei segnali (sistema di ritardi multipli per bande). Nel capitolo 5 illustriamo le caratteristiche di queste due applicazioni.
Il problema di pitch-detection consiste nel riconoscimento della frequenza di un segnale acustico, quando questo presenta caratteristiche di quasi-periodicità tali da produrre nell'orecchio umano la sensazione di un suono di ben definita altezza. Nel §5.1.1 descriviamo le cause che contribuiscono a rendere tale problema di difficile soluzione nella sua formulazione più generale, e nel §5.1.2 illustriamo alcuni tra i più diffusi metodi di pitch-detection. Nel sistema proposto, presentato nel §5.1.3, si è cercato un approccio generale, per comprendere nella classe di funzionamento sia segnali vocali, sia segnali musicali, sotto la condizione, generalmente verificata, che questi presentino una struttura spettrale di tipo armonico. Un altro fondamentale requisito di progetto è stato quello dell'eseguibilità in tempo reale del sistema, che ne permette, ad esempio, l'inserimento in prodotti di conversione audio/MIDI. Nel §5.1.5 vengono presentati i risultati ottenuti, che attestano la correttezza di funzionamento del sistema per diverse sorgenti sonore analizzate, che comprendono emissioni vocali, sequenze di suoni sintetici e sequenze di suoni naturali. Per quest'ultima categoria, benchè non siano stati riscontrati problemi nel riconoscimento di suoni singoli, esistono alcune oggettive difficoltà nel caso di produzione musicale reale, per gli effetti interferenti di sorgenti di rumore riconducibili alla stessa esecuzione strumentale, e che possono essere affrontate sfruttando le caratteristiche idiomatiche di ogni singolo strumento.
La seconda applicazione, discussa nel §5.2, consiste nell'eseguire la resintesi di un segnale acustico analizzato via DWT, dopo aver effettuato una traslazione temporale multipla dei coefficienti wavelet appartenenti alle diverse bande spettrali.