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.