Andrea Arcella Un Sistema Di Riconoscimento Dei Timbri Musicali
-
Upload
andrea-arcella -
Category
Documents
-
view
358 -
download
0
description
Transcript of Andrea Arcella Un Sistema Di Riconoscimento Dei Timbri Musicali
Università degli Studi di Napoli “Federico II”
corso di laurea in fisica
Un sistema di riconoscimento dei timbri
degli strumenti musicali basato sui
coefficienti mel-cepstrum
Relatore: Prof. Gianpaolo EvangelistaCorrelatore: Prof. Francesco Cutugno Candidato: Andrea Arcella
matricola: 07/5532
anno accademico 2003-2004
Sommario
Il riconoscimento automatico di suoni e immagini è sempre stata un’esigen-
za molto sentita fin dagli albori della ricerca informatica. Infatti le ricadute
di tale ricerca coprono un vasto insieme di discipline che vanno dalla fisi-
ca alla medicina, dalle telecomunicazioni alla multimedialità. Questa tesi ha
come oggetto il riconoscimento automatico degli strumenti musicali, cioè il
riconoscimento dei loro timbri. Il riconoscimento viene effettuato tramite un
sistema in grado di analizzare dei suoni e fornire una risposta sullo strumento
che li ha generati. La tesi illustra inizialmente le caratteristiche del timbro e
le problematiche principali legate al suo riconoscimento. Verranno quindi de-
lineati i principali passi fatti fino ad oggi nel riconoscimento timbrico e verrà
presentato quello che è attualmente lo stato dell’arte. Seguirà la discussione
di un problema parallelo a quello del riconoscimento: la creazione di spazi
timbrici; verrà proposta una metodologia di rappresentazione timbrica basata
su reti competitive con relativa verifica sperimentale. Infine viene presentato
un progetto di classificatore timbrico confrontando due diverse strategie di
classificazione entrambe sottoposte a verifica sperimentale.
Indice
1 Introduzione 7
1.1 Cos’è il riconoscimento timbrico . . . . . . . . . . . . . . . . . 7
1.2 A che serve il riconoscimento timbrico . . . . . . . . . . . . . . 8
1.3 L’evento sonoro tra evento fisico e percezione . . . . . . . . . . 10
2 Il Timbro 14
2.1 Una definizione di timbro . . . . . . . . . . . . . . . . . . . . . 14
2.2 Timbro e Spettro . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.2.1 Segnali discreti e rappresentazione nel dominio della
frequenza . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.2.2 Timbri strumentali e rappresentazioni in frequenza . . 17
2.3 Rappresentazioni del suono . . . . . . . . . . . . . . . . . . . . 20
2.3.1 Evoluzione temporale del suono: la rappresentazione
ADSR . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
2.3.2 Modello di produzione del suono sorgente-filtro . . . . 23
2.3.3 Deconvoluzione e Cepstrum . . . . . . . . . . . . . . . 26
2.4 Timbro, Pitch e Loudness . . . . . . . . . . . . . . . . . . . . 33
2.5 Definizioni quantitative di alcune grandezze percettive . . . . . 35
1
2.6 Il riconoscimento timbrico negli esseri umani . . . . . . . . . . 36
2.6.1 Riconoscimento di toni isolati e frasi monofoniche . . . 37
2.6.2 Riconoscimento di insiemi polistrumentali: il modello
di McAdams . . . . . . . . . . . . . . . . . . . . . . . . 40
3 Rappresentazione Timbrica 43
3.1 Lo Spazio Timbrico . . . . . . . . . . . . . . . . . . . . . . . . 43
3.1.1 Riconoscere o rappresentare . . . . . . . . . . . . . . . 43
3.1.2 Come si crea uno spazio timbrico . . . . . . . . . . . . 44
3.1.3 Lo spazio timbrico di Grey . . . . . . . . . . . . . . . . 46
3.2 Creazione di uno spazio timbrico a partire da coefficienti MFCC 49
3.2.1 Database sonoro e strumenti utilizzati . . . . . . . . . 49
3.2.2 L’algortimo di front end . . . . . . . . . . . . . . . . . 52
3.2.3 Le Mappe Autoorganizzanti . . . . . . . . . . . . . . . 62
3.3 Discussione dell’esperimento . . . . . . . . . . . . . . . . . . . 67
4 Sistema di riconoscimento timbrico a partire da coefficienti
MFCC 75
4.1 Struttura di un sistema di riconoscimento . . . . . . . . . . . . 75
4.2 Riduzione dei dati: Analisi per Componenti Principali . . . . . 77
4.3 Algoritmi di riconoscimento . . . . . . . . . . . . . . . . . . . 81
4.3.1 Approccio classico: criterio MAP . . . . . . . . . . . . 81
4.3.2 Approccio Data Mining . . . . . . . . . . . . . . . . . . 97
5 Conclusioni e sviluppi futuri 120
5.1 Estensione del Database di addestramento . . . . . . . . . . . 120
2
5.2 Quantità delle Features . . . . . . . . . . . . . . . . . . . . . . 121
A Il sistema uditivo 122
A.1 Struttura dell’orecchio . . . . . . . . . . . . . . . . . . . . . . 122
A.2 Discriminazione delle frequenze . . . . . . . . . . . . . . . . . 128
B Schema delle Trasformate di Fourier 131
3
Elenco delle figure
1.1 Schema semplificato dell’MPEG-7 . . . . . . . . . . . . . . . . 10
1.2 Rappresentazione temporale di un campione di violoncello . . 11
1.3 Spettrogramma di un violoncello . . . . . . . . . . . . . . . . . 12
2.1 Rappresentazione in frequenza di un violoncello in regime quasi
stazionario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
2.2 Esempio di ADSR . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.3 Schema del tratto vocale . . . . . . . . . . . . . . . . . . . . . 25
2.4 Schema semplificato di registrazione fonografica . . . . . . . . 29
2.5 Deconvoluzione in frequenza . . . . . . . . . . . . . . . . . . . 30
2.6 Schema Analisi Cepstrale . . . . . . . . . . . . . . . . . . . . . 32
2.7 schema a blocchi del modello di McAdams . . . . . . . . . . . 42
3.1 schema a blocchi MFCC . . . . . . . . . . . . . . . . . . . . . 52
3.2 banco di filtri mel . . . . . . . . . . . . . . . . . . . . . . . . . 55
3.3 I primi 26 mfcc del violoncello rappresentati per 12 frames . . 56
3.4 I primi 26 mfcc della tuba rappresentati per 12 frames . . . . 57
3.5 Gli inviluppi spettrali del violoncello rappresentati per 12 frames 58
3.6 Gli inviluppi spettrali della tuba rappresentati per 12 frames . 59
4
3.7 Esempio di topologia a griglia rettangolare (in alto) ed esago-
nale (in basso) . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
3.8 Esempio di layer bidimensionale: gli intorni sono evidenziati
con toni di grigio . . . . . . . . . . . . . . . . . . . . . . . . . 65
3.9 Due esempi di neuroni con relativi intorni rispettivamente di
raggio d=1 e d=2 . . . . . . . . . . . . . . . . . . . . . . . . . 66
3.10 Proiezione bidimensionale tramite reti di Kohonen . . . . . . . 70
3.11 rete di Kohonen con database di addestramento 1 . . . . . . . 72
3.12 rete di Kohonen con database di addestramento 2 . . . . . . . 73
3.13 Inviluppi spettrali semplificati del database di addestramento 2 74
4.1 Proiezione bidimensionale di 6 timbri tramite PCA . . . . . . 79
4.2 Soglia e regioni di due funzioni di densità gaussiane . . . . . . 85
4.3 Esempio di gaussiana binormale . . . . . . . . . . . . . . . . . 86
4.4 Esempio di curve di livello . . . . . . . . . . . . . . . . . . . . 88
4.5 Gruppo di gaussiane binormali . . . . . . . . . . . . . . . . . . 89
4.6 Sovrapposizione di due gaussiane binormali . . . . . . . . . . . 90
4.7 Proiezione tramite PCA di nove timbri . . . . . . . . . . . . . 94
4.8 Nove timbri rappresentati da altrettante gaussiane binormali.
Vista uno . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
4.9 Nove timbri rappresentati da altrettante gaussiane binormali.
Vista due . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
4.10 Regioni di classificazione relative a nove timbri . . . . . . . . . 108
4.11 Test 1: riconoscimento del timbro di Marimba . . . . . . . . . 109
4.12 Test 2: riconoscimento del timbro di Tromba . . . . . . . . . . 110
5
4.13 Test 3: riconoscimento del timbro di Tromba con pitch modi-
ficato (un tono) . . . . . . . . . . . . . . . . . . . . . . . . . . 111
4.14 Test 4: riconoscimento del timbro di Tromba con pitch modi-
ficato (una quinta) . . . . . . . . . . . . . . . . . . . . . . . . 112
4.15 Test 5: riconoscimento del timbro di Fagotto con pitch modi-
ficato (un semitono) . . . . . . . . . . . . . . . . . . . . . . . 113
4.16 Test 6: riconoscimento del timbro di Fagotto con pitch modi-
ficato (un tono inferiore) . . . . . . . . . . . . . . . . . . . . . 114
4.17 Test 7: riconoscimento del timbro di Fagotto con pitch modi-
ficato (una quinta inferiore) . . . . . . . . . . . . . . . . . . . 115
4.18 Test 8: riconoscimento del timbro di Fagotto con pitch modi-
ficato (un’ottava inferiore) . . . . . . . . . . . . . . . . . . . . 116
4.19 Test 9: riconoscimento del timbro di Vibrafono con pitch mod-
ificato (un’ottava inferiore) e diversa fonte di registrazione . . 117
4.20 Test10: riconoscimento del timbro di Tromba barocca . . . . . 118
4.21 Test11: riconoscimento del timbro di Chitarra classica . . . . . 119
A.1 Schema dell’orecchio . . . . . . . . . . . . . . . . . . . . . . . 123
A.2 Grafico delle curve di Fletcher . . . . . . . . . . . . . . . . . . 125
A.3 Caratteristiche di ingresso-uscita di un compressore e di un
expander di dinamica . . . . . . . . . . . . . . . . . . . . . . . 126
6
Capitolo 1
Introduzione
1.1 Cos’è il riconoscimento timbrico
Riconoscere un timbro vuol dire avere la capacità di riconoscere la sorgente
che ha dato origine ad un suono. In seguito definiremo con precisione cosa si
intende con timbro e sorgente sonora ma per rendere intuitivo il concetto si
può pensare all’azione che compiamo quando ascoltiamo un brano musicale e
riconosciamo gli strumenti che lo eseguono. Questo processo abbastanza fa-
miliare per molte persone è in realtà un’attività estremamente complessa che
coinvolge sia l’aspetto fisico del suono sia le capacità percettive di chi ascolta.
Naturalmente il concetto di sorgente sonora è molto più ampio del concetto
di strumento musicale ma noi faremo esplicito riferimento a quest’ultimo.
I motivi di tale scelta sono i seguenti: il riconoscimento dei timbri relativi
agli strumenti musicali è di per sè un campo interessante di indagine e di
applicazione per tutti coloro che si occupano di musica e multimedialità; gli
strumenti della tradizione musicale occidentale si possono considerare sorgen-
7
ti sonore ben note per quel che riguarda il loro funzionamento ed è disponibile
un’ampia letteratura in merito; data la loro notorietà è più semplice utiliz-
zarli per fare esperimenti di riconoscimento con esseri umani e comparare i
risultati con gli esperimenti eseguiti con il computer.
1.2 A che serve il riconoscimento timbrico
Una parte consistente della ricerca informatica è rivolta attualmente all’ob-
biettivo di rendere intellegibile e quindi utilizzabile l’enorme mole di infor-
mazione presente in rete. Una delle esigenze più sentite è quindi quella del-
l’indicizzazione dei documenti multimediali che diventano una componente
sempre più importante del flusso informativo che avvolge il mondo attuale.
Attualmente è abbastanza semplice effettuare ricerche contestuali in rete me-
diante parole chiave per trovare documenti; in realtà però non sappiamo se
ciò che abbiamo trovato corrisponde realmente a ciò che cerchiamo finchè non
ne prendiamo visione. In altri termini le semplici ricerche che effettuiamo oggi
non sono basate sul contenuto del file ma sul suo formato o su altri parametri
che non assicurano che il contenuto di quel file abbia interesse per noi 1. Ciò
a cui puntano i nuovi sistemi di ricerca che potremmo definire “intelligenti”
è invece una ricerca che operi sui contenuti. Il motore di ricerca deve essere
quindi in grado di capire il contenuto di un oggetto e selezionare ciò che
soddisfa le nostre richieste. Se tutti coloro che rendono disponibile un’infor-
mazione in rete associassero una descrizione di questa informazione che possa
1Si pensi all’algoritmo del motore di ricerca Google, che nel presentare la graduatoria dirilevanza dei siti interessanti sfrutta l’informazione che viene dalla scelta degli altri utenti:i siti più scelti durante le precedenti ricerche sono quelli che il motore presenterà come piùinteressanti per le ricerche successive.
8
essere interpretata dal motore il problema sarebbe risolto. Il problema è stato
immediatamente sentito nell’ambito dello sviluppo di pagine html ed infatti
hanno fatto subito la loro comparsa i famosi tag html che contengono le pa-
role chiave relative al contenuto del sito; tali tag sono invisibili a chi vede la
pagina web e vengono sfruttati dai motori di ricerca per le indicizzazioni. Lo
sviluppo dello standard XML è dettato proprio da questo tipo di esigenze. Ri-
tornando ai file multimediali ed audio in particolare, il problema da risolvere
è lo stesso, con la differenza che la definizione e l’estensione dell’informazione
in essi contenuta è meno immediata. Attualmente vengono investite ingenti
risorse per la ricerca di uno standard di descrizione dei contenuti multimediali
e possiamo senz’altro citare MPEG-7 2 come punto focale di queste ricerche
(si veda la figura 1.1 tratta dal sito di riferimento dell’MPEG-7).
A questo punto però si pone una domanda: che succede se il materiale
informativo su cui effettuiamo una ricerca è sprovvisto dei metadati che ne
descrivono il contenuto? La stessa domanda può essere messa sotto un’altra
forma che ci aiuterà a centrare meglio il senso del nostro lavoro: che succede
se il materiale è sprovvisto di metadati appositamente inseriti da un essere
umano? La risposta è: necessitiamo di un sistema automatico che sia in gra-
do di estrarre dei parametri da usare successivamente come metadati; questi
parametri dovranno essere quindi legati al modo in cui noi percepiamo le
informazioni sonore e le categorizziamo. Lo scopo di questo lavoro è di anal-
izzare le strategie fin qui adottate per risolvere questo problema, valutarne
i successi e i limiti e proporre nuove soluzioni nell’ambito dell’indicizzazione
automatica di una classe di documenti sonori.
2http://ipsi.fraunhofer.de/delite/Projects/MPEG7/
9
Figura 1.1: Schema semplificato dell’MPEG-7
1.3 L’evento sonoro tra evento fisico e percezione
Il suono è un evento fisico, descrivibile come vibrazione in un mezzo elastico.
Come evento fisico può essere descritto dalle opportune equazioni, può essere
rivelato con l’adeguata strumentazione e può infine essere registrato abbas-
tanza fedelmente su un supporto; esso può essere codificato in forma digitale
e reso così disponibile a molti tipi di elaborazione. I computer ci consentono
10
visualizzazioni molto dettagliate del fenomeno e tra le più comuni troviamo
la visualizzazione dell’andamento dell’intensità in funzione del tempo (Fig.
1.2), lo spettrogramma (Fig. 1.3) che descrive l’evoluzione spettrale nel tem-
po, avvalendosi di una terza dimensione data dai falsi colori, o livelli di grigio,
dell’immagine.
0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4−0.1
−0.08
−0.06
−0.04
−0.02
0
0.02
0.04
0.06
0.08
0.1Rappresentazione temporale del campione campione di cello.wav
secondi
inte
nsità
nor
mal
izza
ta
Figura 1.2: Rappresentazione temporale di un campione di violoncello
Ciò che abbiamo appena descritto è qualcosa di oggettivo che esiste in-
dipendentemente da noi e sopratutto indipendentemente dalla sorgente che
l’ha generato. Ciò che indichiamo con evento sonoro è invece un suono così
come viene percepito da un essere umano e quindi introduciamo la percezione
11
secondi
frequ
enza
in H
ertz
Spettrogramma del campione di cello.wav
0 0.05 0.1 0.15 0.2 0.25 0.3 0.35
0.2
0.4
0.6
0.8
1
1.2
1.4
1.6
1.8
2
2.2x 104
Figura 1.3: Spettrogramma di un violoncello
nel nostro discorso. Innanzitutto il cervello non elabora direttamente il suono
realmente presente nell’ambiente in prossimità delle nostre orecchie. L’orec-
chio infatti effettua una serie di modifiche del segnale nel trasdurre la vi-
brazione acustica in impulsi elettrici (vedi Appendice A); la coclea si com-
porta come un banco di filtri a larghezza di banda non uniforme e tali segnali
vengono poi modificati in impulsi dall’organo di Corti. Putroppo, nonostante
i progressi fatti nel campo della fisiologia per capire il funzionamento del sis-
tema uditivo, non esiste a tutt’oggi un modello universalmente condiviso che
ci consenta di riprodurre artificialmente il suo funzionamento. Ovviamente
12
dei modelli esistono, e noi ne utilizzeremo uno, ma è importante sottolineare
che si tratta di approssimazioni valide in casi specifici.
Anche l’aspetto psicologico della percezione riveste un ruolo significativo
quando ascoltiamo un suono. Quando un suono ci raggiunge non ci chiediamo
quale sia l’equazione che lo descriva né come si sia propagato fino a noi, ma
ci chiediamo inanzitutto che cosa ha generato quel suono (la sorgente) e dove
è stato generato (l’ambiente).
13
Capitolo 2
Il Timbro
2.1 Una definizione di timbro
Cominciamo col proporre una definizione di timbro che probabilmente troverà
d’accordo la maggior parte delle persone: “il timbro è la qualità del suono,
la sua coloritura, cioè ciò che permette di distinguere due suoni prodotti
da sorgenti diverse, anche se essi hanno rigorosamente lo stesso tempo di
crescita, la stessa intensità e la stessa durata”. Dai termini usati emerge che
abbiamo usato una definizione basata sulla percezione che le persone hanno
del suono. L’implementazione di un riconoscitore di timbri si deve però basare
su una definizione oggettiva di timbro. Un approccio possibile è quello di
trovare un insieme di parametri misurabili che nel loro complesso ci diano
una descrizione oggettiva di questa entità.
14
2.2 Timbro e Spettro
Sappiamo che la qualità che noi percepiamo come timbro dipende in primo
luogo dal contenuto spettrale del segnale. Chiariamo cosa intendiamo per
spettro e contenuto spettrale.
2.2.1 Segnali discreti e rappresentazione nel dominio
della frequenza
Il suono inteso come vibrazione acustica è un segnale continuo mentre la sua
registrazione su un supporto digitale è un segnale discreto rappresentato da
una sequenza numerica finita. Si definisce Trasformata di Fourier Discreta
(DFT) di sequenze finite x[n] di lunghezza N:
X[k] =N−1∑
n=0
x[n]e−j2πkn/N (2.1)
La quantità |X[k]| è chiamata modulo mentre la quantità argX[k] è chiamata
fase e sono entrambe funzioni reali di k. Tali funzioni ci forniscono una rapp-
resentazione del contenuto in frequenza del segnale. La Trasformata Inversa
di Fourier Discreta (IDFT) è definita come:
x[n] =1
N
N−1∑
k=0
X[k]ej2πkn/N (2.2)
Nel contesto dei segnali audio la coppia di equazioni 2.1 e 2.2 sono dette
rispettivamente analisi e sintesi. Queste denominazioni derivano dal fatto
che tramite la prima equazione è possibile ottenere l’analisi in frequenza del
15
segnale mentre con la seconda è possibile sintetizzare dei suoni a partire dalla
descrizione del loro contenuto in frequenza. Sulla base di questa idea forte si
poggiano molti successi dell’elaborazione dei segnali audio ma queste denom-
inazioni possono essere causa di incomprensione nella corretta discussione dei
fenomeni. Bisogna infatti tener presente che la coppia di equazioni 2.1 e 2.2
corrispondono all’analisi e alla sintesi nel senso proprio del termine solo se N
è maggiore o uguale alla durata del segnale espressa in numero di campioni.
In tal caso, però, l’analisi ci fornisce informazioni solo sul contenuto in fre-
quenza medio del segnale. Come vedremo in seguito, i suoni degli strumenti
musicali sono meglio descritti da un contenuto in frequenza dinamico ovvero
in termini di rappresentazioni miste tempo-frequenza.
L’energia εg della sequenza x[n] è definita come
εg =N−1∑
n=0
|x[n]|2 (2.3)
ed è sempre una quantità finita. Applicando la relazione di Parseval otteni-
amo:
εg =N−1∑
n=0
|x[n]|2 =K−1∑
k=0
|X[k]|2 (2.4)
dove la quantità |X[k]|2 è chiamata densità di energia spettrale o semplice-
mente spettro.
16
2.2.2 Timbri strumentali e rappresentazioni in frequen-
za
In un segnale periodico, come la parte stazionaria di un suono strumentale,
il contenuto in frequenza è dato dalla sovrapposizione della frequenza più
bassa, che generalmente determina il pitch della nota, e dei multipli interi
di questa. Tali componenti sono chiamati armoniche. I suoni degli strumenti
musicali non sono generalmente periodici. Inoltre, in una vasta classe di stru-
menti le frequenze delle componenti principali non sono in relazione armon-
ica. In senso generalizzato si parlerà allora di parziali del suono per indicare
le componenti principali. In figura 2.1 possiamo vedere la rappresentazione
spettrale di un campione di violoncello ove vengono evidenziate le prime
parziali. Bisogna porre attenzione al fatto che la figura si riferisce alla DFT
di un campione in cui non è presente l’attacco ma solo la parte stazionaria
del suono, ed è per questa ragione che riusciamo a distinguere nettamente
le armoniche, cioè le frequenze delle parziali che si trovano in rapporto ar-
monico. Il diverso peso delle parziali nelle rappresentazioni spettrali di due
suoni diversi in regime quasi-stazionario dà origine a quella che definiamo
differenza timbrica. Altre importanti differenze timbriche sono associate al-
l’inviluppo di ampiezza ed al rumore del sistema di eccitazione. Un altro
aspetto su cui occorre focalizzare l’attenzione è l’evoluzione temporale del
contenuto in frequenza dei segnali periodici; se il suono non ha un cambia-
mento del contenuto in frequenza nel corso del tempo 1 la sua DFT fornisce
1In termini rigorosi solo un suono prodotto artificialmente, come un’onda quadra, hauno spettro effettivamente costante nel tempo; nel caso di strumenti acustici si possonocitare strumenti come l’organo che approssimano abbastanza bene questo comportamento
17
effettivamente il contenuto spettrale del suono istante per istante; se invece il
suono evolve nel tempo il calcolo della DFT fornisce una media dei contenuti
spettrali che si sono manifestati. Tale rappresentazione non è ovviamente sig-
nificativa per suoni la cui evoluzione spettrale sia rilevante dal punto di vista
psicoacustico. Per ottenere una rappresentazione spettrale dinamica occorre
suddividere in segnale in piccole porzioni chiamate frame in cui il segnale si
può considerare costante dal punto di vista dello spettro. Tali frame possono
essere quindi giustapposti in vari modi per ottenere delle rappresentazioni
tempo-frequenza; una di queste è lo spettrogramma illustrato in Fig. 1.3
0 500 1000 1500 2000 2500 3000 3500 4000 4500 50000
20
40
60
80
100
120
modulo della dft del campione di cello.wav
prima parziale
seconda parziale
terza parziale
Figura 2.1: Rappresentazione in frequenza di un violoncello in regime quasistazionario
18
Per costruire un algoritmo che possa riconoscere i timbri dobbiamo dare
un criterio di similitudine tra gli spettri. Il problema è che a parte casi elemen-
tari, non abbiamo un criterio di similitudine tra spettri che sia abbastanza
robusto da far funzionare un sistema di elaborazione. Possiamo certamente
dire che a due spettri uguali corrispondono timbri uguali ma non è semplice
dire quanto due spettri siano simili tra loro. Potremmo dire che due suoni
sono simili quando il rapporto tra le armoniche è simile nei due suoni, oppure
se gli spettri variano in modo simile nel tempo. La realtà è che ognuno dei pos-
sibili criteri contiene un qualche grado di verità ma non si riesce a trovare un
insieme di parametri finito che renda conto di tutte le possibili sfaccettature
che identificano un timbro. Vediamo un esempio pratico: qualunque ascolta-
tore percepisce come simili i timbri di una tromba in si bemolle e quelli di una
tromba in mi bemolle; per un computer che faccia l’analisi di Fourier i due
timbri sono irrimediabilmente diversi quanto quelli di un sax e di un’arpa.
Inoltre tutti i timbri naturali hanno un’evoluzione temporale e quindi non
ha senso parlare del timbro di uno strumento come di un’entità statica. Ev-
idenziamo ora un fatto abbastanza ovvio che rimane spesso nascosto tra le
pieghe dei ragionamenti: se abbiamo un’ottima conoscenza di una sorgente
sonora possiamo agevolmente predire quale sarà il contenuto spettrale e quin-
di il timbro che sarà originato da questa sorgente. Se invece siamo esposti
ad un determinato suono non siamo necessariamente in grado di ricostruire
la sorgente, in altri termini nella realtà fisica non esiste una biunivocità tra
l’analisi e la sintesi.
19
2.3 Rappresentazioni del suono
Una soluzione al problema dell’identificazione delle sorgenti sonore può essere
suggerita dall’approccio usato dagli esseri umani. Nell’introduzione abbiamo
detto che un essere umano si chiede quale sia la sorgente che ha prodotto
quel suono. Quindi evidentemente si confronta ciò che si ascolta in un dato
momento con delle informazioni precedentemente memorizzate. Queste infor-
mzioni sono abbastanza precise da farci distinguere nettamente un pianoforte
da una tromba ma sono abbastanza generali da farci riconoscere come simili
due trombe in tonalità diverse, o meglio ancora da consentirci di raggrupp-
pare sotto un’unica famglia le trombe, i tromboni e i flicorni. Noi chiameremo
queste informazioni le caratteristiche del suono e descriveremo il modo in cui
estrarle. Per poter realizzare questa operazione abbiamo bisogno di un mod-
ello del suono a cui fare riferimento e che riassuma delle informazioni che
sono già presenti nell’evoluzione spettrale del segnale.
2.3.1 Evoluzione temporale del suono: la rappresentazione
ADSR
Il modello ADSR (Attack Decay Sustain Release)2 è un modello che descrive
l’evoluzione dell’energia del suono nel dominio temporale. Secondo questo
modello il suono viene descritto in termini dell’evoluzione temporale del-
l’ampiezza che si può riassumere in quattro fasi: una fase di attacco (attack),
2la terminologia usata è derivata da quella usata dai costruttori di sintetizzatori elet-tronici, infatti la parola release si riferisce all’atto di rilascire il tasto del sintetizzatore; perquesto motivo alcuni autori quando usano il modello a tre parametri impiegano il terminedecay per indicare l’ultimo parametro che coincide col nostro release (modello ASD)
20
Figura 2.2: Esempio di ADSR
una fase in cui l’intensità diminuisce (decay) e che rappresenta la transizione
tra l’attacco e la terza fase, una fase di evoluzione temporale (sustain) e infine
una fase in cui l’intensità sonora decade fino al silenzio (release). E’ impor-
tante osservare che queste quattro fasi hanno caratteristiche molto diverse tra
loro; inoltre non sono presenti in tutti i suoni strumentali con le stesse qualità
e nella stessa misura. La prima fase, l’attacco, è quella che contraddistingue
la parte iniziale dell’emissione sonora. L’attacco è strettamente legato al mo-
do in cui viene generato il suono dello strumento. Nella classificazione degli
strumenti l’attacco gioca un ruolo essenziale. Infatti le famiglie strumentali
degli strumenti pizzicati (come la chitarra, il liuto, l’arpa, il clavicembalo
21
etc.) o degli strumenti a percussione vengono in prima approssimazione iden-
tificati proprio dal modo in cui viene prodotto il suono in attacco anzichè
dal materiale di cui sono composti (come i legni o gli ottoni) o dal modo
in cui viene eccitato il risuonatore (ance, doppie ance, archi3). Dal punto di
vista del riconoscimento dello strumento da parte di un ascoltatore (special-
mente se esperto) l’attacco gioca un ruolo fondamentale. Chi usa strumenti
musicali elettronici sa bene che si può fare una riproduzione realistica di un
timbro acustico anche se la parte stazionaria del suono è scadente, mentre
l’elemento fondamentale è il realismo dell’attacco. Purtroppo l’attacco è an-
che la parte del suono che è più difficile da analizzare e classificare. Difatti
esso è essenzialmente costituito da un segnale di breve durata in cui l’onset
dell’oscillazione ed il rumore di eccitazione coesistono e quindi la maggior
parte degli strumenti di analisi diventano inutilizzabili. L’informazione cos-
tituita dalla durata dell’attacco può comunque essere di qualche utilità nella
classificazione timbrica. Tutti i suoni prodotti dagli strumenti musicali hanno
una fase di attacco. La seconda fase, il decay4 tiene conto della transizione
tra la fase non stazionaria dell’attacco e quella stazionaria del sustain ed è
generalmente caratterizzata da una diminuzione dell’intensità; è abbastanza
difficile individuare in modo chiaro questa fase negli strumenti acustici in
quanto essa ha una durata breve e si percepisce solo in pochi casi; un esem-
pio si può avere ascoltando gli ottoni quando vengono suonati con attacco
molto netto. La terza fase, il sustain, è quella in cui la durata del suono è
3si noti che esistono due tecniche per suonare un arco: quella con l’archetto (da cui ilnome della famiglia strumentale) e quella del pizzicato. I due casi corrispondono a duediversi modi di eccitare il risuonatore
4il decay viene descritto in questa sede per completezza ma la sua importanza è dovutapiù alla sua utilità nella sintesi di suoni elettronici che nella descrizione di suoni acustici
22
controllata a piacere dall’esecutore. Si pensi agli strumenti a fiato o ad arco,
la cui intensità deve essere controllata dall’esecutore, oppure all’organo, in
cui invece l’intensità è fissata a priori ed è costante finchè il tasto è abbas-
sato. In questa fase stazionaria abbiamo un segnale periodico e l’evoluzione
temporale dello spettro è molto contenuta a meno che l’esecutore non ricorra
ad artifici espressivi come il vibrato. Non tutti gli strumenti hanno una fase
di sustain, ad esempio il piano e gli strumenti pizzicati passano direttamente
dall’attaco al release. La quarta fase, il release, è caratterizzata dalla pro-
gressiva diminuzione di intensità del suono. Anche in questo caso il segnale
è periodico ma l’evoluzione temporale dello spettro è molto più evidente.
Non tutti gli strumenti hanno questa fase temporale, ad esempio nell’organo
il suono cessa istantaneamente non appena viene rilasciato il tasto. Si noti
come questo modello pur descrivendo un suono come entità indipendente, dia
la possibilità di creare delle relazioni forti tra l’evento sonoro e la sorgente
che l’ha generato consentendo in parte di tracciare il percorso a ritroso dal
suono alla sorgente.
2.3.2 Modello di produzione del suono sorgente-filtro
In questo modello si assume che lo strumento che emette il suono sia schema-
tizzabile come due entità differenti che interagiscono tra di loro: una sorgente5
ed un filtro. La sorgente viene eccitata al fine di creare un pattern di vi-
brazione il quale verrà modificato dal filtro. Il filtro agisce da risuonatore con
5la parola sorgente usata in questo contesto non ha il significato fino ad ora adottatodi origine del suono. Come risulta chiaro dalla lettura del paragrafo la sorgente sonora acui facciamo riferimento nei capitoli precedenti è rappresentata in questo caso dalla coppiasorgente-filtro
23
vari modi di vibrazione. Ciascun modo altera lo spettro inducendo dei picchi
in corrispondenza delle frequenze risonanti. Chiariamo con un esempio: nel
violino l’archetto che sfrega la corda fornisce l’eccitazione, la corda vibrante
è la sorgente mentre il corpo dello strumento è il filtro. La vibrazione della
sorgente determina il contenuto in frequenza del suono. L’ampiezza relati-
va delle armoniche (parziali) può essere alterata cambiando il metodo e la
forza dell’eccitazione, ad esempio l’archetto può sfregare la corda in vari mo-
di che il violinista sfrutta per ottenere suoni più dolci o più aspri. Il filtro
produce due effetti sul suono: esso è in grado di modificare sia l’intensità che
le relazioni temporali delle singole armoniche. Ciascun modo di vibrazione
del risuonatore è caratterizzato dalla frequenza di risonanza e dal fattore di
qualità Q. La frequenza di risonanza di ciascun modo è la frequenza in cui è
massima l’ampiezza delle vibrazioni. Il fattore Q è definito come il rapporto
tra la frequenza di risonanza del sistema e la larghezza di banda dello stes-
so. Il Q indica la selettività in frequenza del modo risonante considerato, in
altri termini controlla quella che si chiama campanatura del filtro; maggiore
è il Q e più è stretta la campana che rappresenta il modo. Una risonanza
con un alto Q causa sia un incremento udibile della frequenza di risonan-
za all’interno dello spettro del suono, sia un maggior tempo di ritardo nelle
componenti del segnale che passano attraverso il modo. Il suono può essere
alterato manipolando le caratteristiche del filtro. Ad esempio in una tromba
si può usare la sordina per cambiare le caratteristiche di risonanza del tubo
e della campana.
Questo modello di produzione sonora può essere riportato in forma matem-
atica descrivendolo come un sistema lineare in cui la funzione di trasferi-
24
mento complessiva è il prodotto delle funzioni di trasferimento dei singoli
sottosistemi come è illustrato nell’equazione 2.5:
Y (z) = X(z)N∏
i=1
Hi(z) (2.5)
dove Y (z) e X(z) sono le trasformate z dell’uscita e del segnale di eccitazione
e Hi(z) sono le trasformate z degli N sottosistemi. Questo modello è nato nel
contesto degli studi di elaborazione del parlato ed è stato ampiamente utiliz-
zato nel modellizzare l’apparato fonatorio. Successivamente è stato impiegato
nella sintesi per modelli fisici portando in alcuni casi a buoni risultati come
nella modellizzazione degli strumenti a corda ad opera di Karplus e Strong.
Non bisogna trascurare però che sia nel caso del parlato che nella sintesi per
modelli fisici alla parte lineare descritta dall’equazione 2.5 è sempre associata
una parte non lineare che tiene conto del feedback che il segnale ha con la
sorgente. La figura 2.3 illustra il classico schema dell’apparato fonatorio
Figura 2.3: Schema del tratto vocale
Dalla figura si evince che esistono due diverse fonti di eccitazione: una per
i suoni vocalici, che sono suoni armonici e l’altra che è schematizzata come un
25
generatore di rumore, necessaria alla generazione dei suoni consonantici che
sono suoni inarmonici o dallo spettro continuo assimilabile a rumore colorato.
Nel caso degli strumenti musicali non possiamo fornire un semplice schema
valido per tutti gli strumenti. Dobbiamo tener presente che generalmente,
almeno nella fase di attacco, la componente non lineare dovuta al feedback
è generalmente preponderante.
La tecnica LPC (Linear Prediction Coefficient) è la più nota implemen-
tazione del modello sorgente filtro; in sintesi lo spettro viene modellato come
una funzione a tutti poli che rispecchiano i picchi spettrali (formanti nel
parlato). Questa tecnica ci consente di ottenere una rappresentazione in fre-
quenza del sistema che chiameremo inviluppo spettrale. L’inviluppo spettrale
ignora i dettagli delle parziali contenute nello spettro offrendo una visione
dell’andamento generale della risposta in frequenza; esso può essere pensato
come una sorta di impronta spettrale del sistema. Tale impronta è caratter-
istica di un certo sistema e ci si aspetta che a sistemi simili corrispondano
impronte simili. Rifacendoci all’esempio precedente possiamo pensare che le
trombe in si bemolle ed in mi bemolle abbiano inviluppi spettrali molto simili
e ci aspettiamo che un flicorno abbia un inviluppo spettrale molto più simile
a quello di una tromba che a quello di un pianoforte.
2.3.3 Deconvoluzione e Cepstrum
Nel dominio del tempo l’operazione di convoluzione è l’operazione matemat-
ica che caratterizza i sistemi lineari, infatti essa descrive la relazione tra tre
segnali: il segnale di ingresso x[n], la risposta all’impulso h[m] e il segnale
26
di uscita y[n]. L’operazione di convoluzione di due segnali si indica con la
notazione x[n] ∗ h[m] e la sua formulazione matematica è6:
y(i) =∞∑
j=−∞
h[j]x[i− j] (2.6)
Uno degli assunti fondamentali della teoria dei sistemi lineari è che è suf-
ficiente conoscere la risposta all’impulso del sistema per conoscere il segnale
di uscita dallo stesso, qualunque sia l’ingresso. L’operazione di convoluzione è
un’operazione molto dispendiosa in termini di potenza computazionale richi-
esta dato che il numero di operazioni (tra addizioni e moltiplicazioni) cresce
molto velocemente al crescere del numero di campioni contenuti in x[n] e
h[m]. Inoltre può accadere che l’informazione contenuta nei segnali di ingres-
so e di uscita nonchè il tipo di trasformazione a cui questi sono sottoposti
dal sistema è leggibile molto più chiaramente nel dominio della frequenza
che nel dominio temporale; per questi motivi, quando si debba valutare la
convoluzione tra due segnali, si preferisce molto spesso passare al dominio
trasformato della frequenza. Dalle proprietà della DFT si vede che la con-
voluzione nel dominio temporale equivale ad una moltiplicazione nel dominio
della frequenza:
Y (f) = H(f)X(f) (2.7)
dove H(f) è la risposta in frequenza del sistema cioè la DTFT della risposta
6le formule che seguono sono riferite a sequenze discrete finite dato che i campioniaudio che elaboriamo sono effettivamente sequenze di questo tipo. Per una trattazione piùgenerale dei concetti espressi si rimanda ai testi di base sul DSP citati in bibliografia.
27
all’impulso:
H(f) =∞∑
k=−∞
h[k]e−j2πkf (2.8)
Quindi per valutare x[n]∗h[m] si trasformano i due segnali nel dominio della
frequenza, si effettua la moltiplicazione, e si antitrasforma il risultato. Pre-
cisiamo che la diminuzione di richiesta computazionale ottenuta valutando la
convoluzione tramite dominio trasformato è dovuta all’utilizzo dell’algoritmo
di calcolo FFT (Fast Fourier Trasform) che abbatte radicalmente il numero
di calcoli necessari per la trasformazione e l’antitrasformazione. Ciò è possi-
bile quando sia la risposta impulsiva che il segnale hanno durata finita ed in
tala caso la 2.7 diventa il prodotto delle DFT di x[n] ed h[n].
Molto spesso ci si trova a dover affrontare il seguente problema: nota la
risposta all’impulso h[n] di un sistema lineare ed il segnale y[n] in uscita dal
sistema si vuole conoscere il segnale in ingresso x[n]. Per risolvere questo
problema si ricorre alla deconvoluzione che è appunto l’operazione neces-
saria a riottenere il segnale originario x[n]. Per un sistema a risposta finita
FIR essa è definita come:
x[n] =y[n]−∑n
k=1 h[k]x[n− k]
h[0](2.9)
dove h[0] 6= 0. Questo tipo di problema si presenta piuttosto frequentemente
in molti contesti compreso quello dell’elaborazione dell’audio digitale. Per
chiarire il concetto illustriamo brevemente un esempio di uso della decon-
voluzione. Agli albori della registrazione fonografica venivano usati apparati
di incisione completamente meccanici; il suono da registrare veniva convoglia-
28
to tramite un tubo a campana che trasportava l’onda sonora verso il sistema
di incisione su ceralacca. Il tubo è una cavità risonante che può essere schema-
tizzata come un sistema lineare la cui risposta in frequenza è caratterizzata
dalla presenza di picchi di risonanza particolarmente evidenti. Il segnale in
uscita dal sistema, dato dalla convoluzione del segnale in ingresso con la
risposta all’impulso del filtro, risulta pertanto affetto da una distorsione ar-
monica che viene percepita dall’ascoltatore come un’alterazione del timbro.
Un semplice schema è proposto in figura 2.4. Oltre a questo effetto il sistema
Figura 2.4: Schema semplificato di registrazione fonografica
di registrazione introduce una drastica limitazione della banda passante del
segnale originario e provoca la comparsa di vari tipi di rumori: sia quelli es-
29
tesi lungo l’intero arco temporale come i fruscii sia quelli di tipo impulsivo7
che hanno una durata molto breve e si presentano ripetutamente. Concentri-
amoci momentaneamente sui soli picchi di risonanza introdotti dalla tromba
trascurando il resto. Se abbiamo la fortuna di essere in possesso dell’apparato
originale di incisione possiamo misurarne la risposta in frequenza; a questo
punto siamo in grado di progettare un filtro in frequenza che abbia una rispos-
ta tale da annullare l’effetto dei picchi di risonanza introdotti dal tubo. Come
illustrato in figura 2.5 moltiplichiamo nel dominio della frequenza il segnale
in uscita con un segnale che è l’inverso della risposta in frequenza del tubo
riottenendo il segnale privo delle risonanze indotte. Il successo della decon-
Figura 2.5: Deconvoluzione in frequenza
voluzione è legato al fatto che il segnale di disturbo convoluto col segnale
originario non opera tagli alla banda del segnale originario (sistema privo di
zeri sull’asse delle frequenze). Purtoppo ogni qual volta un sistema elimina
completamente un intervallo di frequenze non c’è modo di riottenere le fre-
quenze mancanti per ricostruire il segnale originario e infatti anche i migliori
7denominati in gergo click e crackle e dovuti alle imperfezioni della ceralacca
30
restauri fonografici non restituiranno mai l’intera banda udibile di frequenze
come si può udire nelle moderne registrazioni; questa situazione rispecchia
il dato formale che la convoluzione non è in generale una trasformazione in-
vertibile. Inoltre se un sistema sporca il segnale originario con un segnale di
disturbo che copre l’intero range di frequenze del segnale originario ed in-
oltre è costantemente presente lungo tutto l’arco temporale non è possibile
in generale separare il rumore indotto dal segnale originario. In termini più
generali il problema si pone ogni qual volta si devono separare due segnali
che si sovrappongono sia nel dominio della frequenza che in quello del tempo.
Sebbene il problema sia destinato a rimanere insoluto se posto in termini
generali, esistono diversi casi particolari in cui il ricorso a tecniche non lineari
ci consente di superare problemi altrimenti non affrontabili con le tecniche
lineari. Una delle tecniche non lineari impiegate nell’elaborazione dei segnali
è l’elaborazione omomorfa. Tramite questa tecnica si cerca di separare dei
segnali combinati in modo non lineare (ad esempio tramite una convoluzione)
trasformando il problema in modo che risulti lineare. Un esempio tipico di
deconvoluzione omomorfa si ha in problemi di elaborazione del parlato. Il
modello sorgente filtro di produzione del parlato decompone il segnale sn in
un’eccitazione en e un filtro la cui risposta in frequenza è H(ejω). Nel dominio
della frequenza abbiamo S(ejω) = H(ejω)E(ejω). Applicando il logaritmo ad
entrambi i membri otteniamo:
lg S(ejω) = lgH(ejω) + lgE(ejω) (2.10)
In questo caso siamo interessati solo allo spettro, che è il modulo della
31
trasformata di Fourier, e quindi possiamo riscrivere la relazione come
lg |S(ejω)| = lg |H(ejω)|+ lg |E(ejω)| (2.11)
Le componenti lentamente variabili dello spettro e quindi quelle di lg |S(ejω)|
sono rappresentate dalle basse frequenze e corrispondono all’inviluppo spet-
trale. Il dettaglio dovuto alla struttura fine delle parziali è invece rappre-
sentato dalle alte frequenze di lg |S(ejω)|. A questo punto possiamo anti-
trasformare la relazione 2.11 e ottenere la separazione delle basse frequenze
dal dettaglio fine, semplicemente separando i primi coefficienti dai restanti.
Questo processo è chiamato analisi cepstrale ed è schematizzata in figura 2.6.
Si può dire quindi che abbiamo applicato al dominio temporale delle proce-
Figura 2.6: Schema Analisi Cepstrale
32
dure tipiche del dominio della frequenza. Questa prassi è stata attivamente
esplorata dagli anni ’60, quando Bogert, Healy e Tukey [BB63] pubblicarono
il loro lavoro introducendo una curiosa terminologia per indicare l’insieme
delle rappresentazioni che si ottengono seguendo questa strada; inventarono
quindi il termine cepstrum che è l’anagramma di spectrum.
Il concetto di inviluppo spettrale si ricollega strettamente a quello in-
trodotto nel paragrafo 2.3.2 quando si è parlato di impronta spettrale. An-
che in questo caso ci si aspetta che a timbri simili corrispondano inviluppi
spettrali simili ed a timbri diversi corrispondano inviluppi di forma diversa.
2.4 Timbro, Pitch e Loudness
Introduciamo ora le altre due grandezze percettive che insieme al timbro cos-
tituiscono gli attributi fondamentali di un evento sonoro: pitch e loudness.
Il primo termine identifica l’altezza soggettiva di un suono periodico; se ab-
biamo a che fare con un suono puro, cioè una sinusoide, l’altezza percepita
è ovviamente collegata alla frequenza reale del suono; questa corrispondenza
però non è lineare lungo tutta la banda udibile per cui il pitch (altezza sogget-
tiva) e la frequenza di oscillazione (altezza oggettiva) non sono sinonimi. Con-
siderando invece suoni periodici composti, la sensazione del pitch è collegata
alla frequenza della fondamentale cioè la prima parziale del suono composto.
Proprio per questo motivo nella teoria musicale le note (indipendentemente
dallo strumento che le emette) sono organizzate convenzionalmente in mo-
do da avere una corrispondenza biunivoca tra il nome della nota (LA440)
e frequenza assegnata (440 Hz); infatti tale frequenza è proprio quella della
33
fondamentale.
Il loudness è la grandezza percettiva che dà conto dell’intensità sonora;
come illustrato in appendice A.1 anche in questo caso la relazione tra loudness
e intensità sonora è tutt’altro che biunivoca.
Se ritorniamo alla definizione di timbro data nel paragrafo 2.1 ci rendi-
amo conto che le tre grandezze percettive sono considerate completamente
indipendenti tra loro, ma è veramente così? Nel caso degli strumenti acustici
sicuramente no. Un caso abbastanza evidente è la tromba: quando questo
strumento viene suonato con espressività che va da “debole” a “forte” non
solo otteniamo un volume sonoro più alto ma il timbro diventa decisamente
più squillante; al contrario osserviamo che a volumi minori il suono tende a
“chiudersi”. Ma anche il pitch influenza in maniera determinante il timbro
e la riprova sta nel fatto che è più difficile riconscere uno strumento quan-
do viene suonato nelle gamme estreme dei suoi registri. Nelle esperienze che
discuteremo si cercherà sempre di trattare il timbro come un’entità indipen-
dente dalle altre ma bisogna tener presente che questa è un’approssimazione
e che l’analisi dei risultati dovrà tenerne conto. Affinchè l’approssimazione sia
sensata bisognerà comunque adottare alcuni accorgimenti: i campioni sonori
usati negli esperimenti dovranno essere prodotti in modo che la nota emessa
corrisponda ad un suono “giustamente” rappresentativo dello strumento; in
termini musicali sarebbe bene che gli strumenti fossero suonati con dinamica
pari a mezzoforte. Il discorso per il pitch è più complicato: l’idea più comune
nella prassi sperimentale è quella di comparare strumenti diversi suonati al-
lo stesso pitch; in questo modo si pensa di neutralizzare l’effetto del pitch
sulle analisi dei campioni. In realtà questa scelta può creare altri problemi:
34
un dato pitch che rappresenta la nota di un registro medio di un certo stru-
mento potrebbe cadere nel registro estremo di un altro (si pensi a strumenti
con tessiture lontane come contrabbasso e violino); in questo caso il secondo
strumento si troverebbe rappresentato nei dati da analizzare da un contenuto
spettrale meno caratterizzante. Non esiste una soluzione definitiva a questi
problemi ma se ne deve necessariamente tener conto in fase di progettazione
dell’esperimento.
2.5 Definizioni quantitative di alcune grandezze
percettive
In questo paragrafo daremo le definizioni quantitative di alcune grandezze
fisiche strettamente correlate a sensazioni uditive rilevanti. Alcuni modelli
di amplificatori ed equalizzatori per l’alta fedeltà sono dotati di controlli
che fanno riferimento a queste grandezze per consentire all’ascoltatore di
intervenire manualmente sulla modifica del timbro e migliorare l’ascolto in
funzione del tipo di musica e della qualità della registrazione.
• Brightness. Questa grandezza è data dal baricentro della distribuzione
spettrale:
BR =
∫|X(ω)|ωdω∫|X(ω)|dω (2.12)
e per i suoni periodici si può mostrare che:
BR =
∑k kak∑k ak
(2.13)
35
dove k è l’indice dell’armonica e ak la relativa ampiezza. Questa quan-
tità è collegata alla sensazione di brillantezza del suono. Possiamo quin-
di dire che i suoni luminosi, aperti etc. hanno tendenzialmente una
brightness maggiore di quella dei suoni scuri.
• Presence. Essa è definita come:
PR = 10 log(
∫|H(ω)X(ω)|2 dω∫|X(ω)|2 dω
) (2.14)
dove H(ω) è un filtro rettangolare passabanda con guadagno unitario
tra i 700 e i 900 Hz. Questa quantità è quindi una misura in dB del con-
tenuto energetico di una porzione localizzata dello spettro. Questa re-
gione dello spettro è molto significativa dal punto di vista percettivo e la
variazione di presence viene associata ad una variazione di brillantezza
del suono.
2.6 Il riconoscimento timbrico negli esseri umani
In questo paragrafo illustreremo i risultati di alcune ricerche condotte su
esseri umani per verificare la nostra capacità di riconoscimento timbrico.
Tali ricerche sono essenziali sia per capire meglio la percezione umana sia per
avere un termine di paragone con i risultati prodotti con il riconoscimento
artificiale. Nell’ambito del riconoscimento timbrico possiamo schematizzare
tre situazioni diverse: l’ascolto di un tono isolato, di una frase monofonica,
o di un insieme polistrumentale. Nei primi due casi disponiamo di risultati
quantitativi mentre per il terzo è stato solo proposto qualche modello; questo
36
è dovuto al fatto che la ricerca è ancora ai primi passi in questo campo e si è
ancora fermi alla fase di discussione di un modello sufficientemente robusto.
Ci si aspetta che in futuro siano progettati esperimenti che possano fornire
ulteriori dati.
2.6.1 Riconoscimento di toni isolati e frasi monofoniche
In quest’ambito possiamo citare dieci ricerche che vanno dal 1947 al 2001; di
queste le prime cinque hanno indagato il riconoscimento di toni isolati mentre
le successive si sono concentrate su frasi monofoniche. I risulatati complessivi
sono mostrati nella tabella 2.1
Esperimento Percentuale riconoscimenti corretti Numero di strumenti
[Eag47] 56 9[Sal64] 41 10[Ber64] 59 10[Cla64] 90 3[Str67] 85 8[Cam78] 72 6[Ken86] 84 3[Bro99] 89 2[Mar99] - Toni Isolati 46 27[Mar99] - Frasi Monofoniche 10 sec 67 27[Bro01] 85 4
Tabella 2.1: Risultati degli esperimenti sull’accuratezza del riconoscimentoumano
In alcuni esperimenti come quello di Brown [Bro01] è stato usato un
database di pochi strumenti e gli ascoltatori non erano precedentemente in-
formati degli strumenti usati. In questi casi viene chiesto ai soggetti di com-
pilare anche la lista totale di strumenti usati indipendentemente dal loro
37
registro8. Con questa informazione si possono ottenere delle stime sulle ca-
pacità di clustering9dei soggetti. In tal modo l’errore nell’accuratezza del
riconoscimento si può valutare oltre che nelle risposte sbagliate anche nel-
l’inserimento di una classe strumentale non realmente presente nel test. In
altri esperimenti come quello di Martin [Mar99] è stato usato un database
decisamente più grande e i soggetti erano a conoscenza della lista degli stru-
menti impiegati. Diamo qualche dettaglio sull’esperimento di Martin dato
che l’impostazione è stata presa come riferimento anche in esperimenti suc-
cessivi [Ero01] e rappresenta il lavoro organico più recente sul riconoscimento
timbrico. Hanno partecipato all’esperimento quaranta soggetti, tutti a vario
titolo musicalmente esperti. Nel test con toni isolati sono state impiegate
137 note di 27 diversi strumenti, ognuno rappresentato con diversi pitch; i
campioni provengono dalla collezione McGill [Opo87]. I 27 strumenti sono
inoltre stati raggruppati in 5 famiglie strumentali: archi, ottoni, ance doppie,
clarinetti e flauti. In questo test i riconoscimenti accurati sono stati in media
del 46 % per i singoli strumenti e del 92 % per le famglie strumentali. Nella
seconda parte del test sono stati utilizzati 19 strumenti che eseguivano frasi
monofoniche della durata di circa 10 secondi; l’accuratezza in questo caso è
stata del 67 % per gli strumenti e del 97 % per le famiglie strumentali.
Comparando i risultati delle ricerche emergono le seguenti osservazioni:
1. L’accuratezza del riconosciemento decade al crescere del numero di stru-
menti da riconoscere. Tale degradazione non è lineare ma è molto ampia
8ad esempio il sax soprano e quello contralto devono essere riconusciuti entrambi comesassofono
9raggruppamento; in questo caso si intende la capacità di raggruppare strumenti dellastessa famiglia come ad esempio gli archi
38
inizialmente (passando da 3 a 10 strumenti) mentre tende ad attenuarsi
successivamente (l’accuratezza sembra costante passando da 10 a quasi
trenta strumenti)
2. L’accuratezza è molto maggiore nel riconoscimento delle famigle stru-
mentali che nel riconoscimento di singoli toni; tale divario però si re-
stringe quando si passa al test con frasi monofoniche. Questo fatto ci
suggerisce che gli invarianti acustici, pur operando una discriminazione
importante tra strumenti, non sono sufficienti per ottenere un’accu-
ratezza media superiore al 50 %. In pratica l’errore è concentrato al-
l’interno delle famiglie strumentali; questo dato ci induce a pensare
che per migliorare la discriminazione fra strumenti della stessa famiglia
abbiamo bisogno di altre informazioni. Dato che l’accuratezza cresce
sensibilmente quando si passa da singoli toni a frasi monofoniche, pos-
siamo ipotizzare che le informazioni aggiuntive di cui ci possiamo av-
valere siano contenute nel fraseggio strumentale, nella tessitura del bra-
no e nella tecnica esecutiva10. Per verificare questa ipotesi si dovrebbe
ripetere il test con soggetti con una scarsa competenza musicale; in
questo modo si potrebbe separare la capacità percettiva dalle sovras-
trutture culturali che determinano l’incremento di accuratezza che si
ottiene nel passaggio da singoli toni a frasi monofoniche.
10per una persona musicalmente competente è semplice distiguere un sax alto da unsoprano se ha la possibilità di ascoltare i due strumenti che eseguono una scala su 2 ottave(tessitura), oppure prestando attenzione alla velocità di certi passaggi che sono semplici emolto frequenti su uno strumento mentre sono difficili e quindi raramente eseguiti sull’altro(tecnica strumentale).
39
2.6.2 Riconoscimento di insiemi polistrumentali: il mod-
ello di McAdams
Il modello di McAdams [McA93] fornisce un’ipotesi sul riconoscimento tim-
brico effettuato su un insieme polistrumentale. Tale modello è schematizzato
in figura 2.7. Il primo blocco rappresenta la trasduzione della vibrazione sono-
ra in stimolo elettrico così come è stata descritta nel paragrafo A.1. Nella fase
di auditory grouping il flusso di informazioni in ingresso viene quindi elabo-
rato in rappresentazioni uditive separate, una per ciascuna sorgente sonora
presente nell’ambiente; in altri termini il cervello opera una separazione al-
l’interno del flusso informativo in ingresso che descrive l’insieme dei suoni
orchestrali miscelati tra loro, e li separa in flussi indipendenti che rappresen-
tano ciascuna sorgente sonora. Nella fase successiva inizia l’analisi di ciascuna
sorgente con la progressiva estrazione delle caratteristiche percettive rilevan-
ti. Alla fine di queste tre fasi la rappresentazione uditiva iniziale è stata
trasformata in un gruppo di proprietà astratte caratterizzate dagli invarianti
acustici di ciascuna sorgente. Nella fase di matching with auditory lexicon la
rappresentazione è confrontata con classi di eventi e di sorgenti sonore sim-
ili già presenti in memoria; lo stimolo viene quindi riconosciuto in base alla
classe presente in memoria che gli si adatta meglio. Se è presente una sor-
gente sconosciuta 11 l’ascoltatore reagisce creando una nuova voce nella sua
memoria. A questo punto è possibile associare le classi riconosciute con un
dizionario verbale che assegna un nome a ciascuna sorgente riconosciuta. Il
loop in figura spiega il fatto che l’analisi può essere ripetuta più volte nell’am-
11cioè una sorgente che non è confrontabile con nessuno dei gruppi presenti in memoria
40
bito dello stesso ascolto qualora le sorgenti sonore siano corrotte da rumore;
in altri termini il processo quì descritto viene compiuto per approssimazioni
successive.
41
Figura 2.7: schema a blocchi del modello di McAdams
42
Capitolo 3
Rappresentazione Timbrica
3.1 Lo Spazio Timbrico
3.1.1 Riconoscere o rappresentare
Nel Capitolo 2 abbiamo visto come sia possibile applicare dei criteri di simili-
tudine agli inviluppi spettrali, ma limitandoci al confronto tra inviluppi non è
stato necessario chiederci quale proprietà percettiva rappresenti esattamente
la forma di quell’inviluppo. Ad esempio potremmo chiedereci se un inviluppo
con la forma che ricorda quella di un filtro passabanda corrisponde ad un
suono argentino o nasale. La risposta a queste domande viene da un ramo
di ricerca che si interseca col riconoscimento timbrico ma non coicide con
esso; tale ricerca punta alla creazione di uno spazio timbrico. Con questo ter-
mine si intende uno spazio metrico in cui vengono collocati gli oggetti sonori
conformemente alla metrica scelta. Possiamo immaginare lo spazio timbrico
come un modo per visualizzare e quantificare la rappresentazione mentale
43
che gli esseri umani hanno dei suoni. Ad esempio, quando ascoltiamo due
trombe in diversa tonalità, immaginiamo i relativi suoni come vicini mentre
un suono di piano sarà percepito come lontano da questi. Si noti che in questo
ragionamento i termini vicino e lontano sono collegati ai termini simile e dif-
ferente usati a proposito del riconoscimento ma non sono la stessa cosa; nei
primi due è compreso un concetto di metrica che negli altri due è assente.
La differenza consiste proprio nel fatto che per definire una metrica abbi-
amo bisogno di dare un significato percettivo alle quantità che identificano
un suono: due fagotti sono vicini perchè hanno un suono nasale. Si tratta
quindi di individuare quelle qualità percettive che avvicinano o allontanano
due suoni. Questo è contemporaneamente il punto di forza e la debolezza
di questo approccio; infatti da una parte ci fornisce nuovi strumenti per il
riconoscimento come la possibilità di ricerca per attributi percettivi1 mentre
dall’altra si presta a creare delle incongruenze dovute al fatto che lo stesso
strumento può avere caratteristiche percettive assai diverse in funzione del
registro e della tecnica strumentale usata. Una parte del lavoro sperimentale
di questa tesi è stato dedicato ad affrontare quest’approccio per indagarne le
potenzialità e verrà discusso nel capitolo 3.2.
3.1.2 Come si crea uno spazio timbrico
Se immaginiamo che ciascun timbro sia descrivibile mediante un insieme
di caratteristiche misurabili possiamo rappresentarlo come un punto nello
spazio. Ad esempio, supponiamo che ciascun suono sia definito dalla bright-
1ad esempio si può immaginare una query ad un database nella forma: trovami unsuono molto cupo che evolva nel tempo verso un media nasalità
44
ness e dalla presence entrambe misurabili su una scala. Allora possiamo usare
questi valori come componenti di un vettore in uno spazio bidimensionale.
Ciascuna coppia di valori individua un punto che può essere rappresentato
su un piano cartesiano. Una volta stabilita una metrica, per esempio quella
euclidea, è possibile stabilire la distanza tra i punti. Se la rappresentazione
ottenuta è uno specchio fedele della nostra realtà percettiva ci si aspetta che a
punti vicini corrispondano timbri simili. Osserviamo subito che non sappiamo
né quali siano le caratteristiche percettive rilevanti né quante esse siano, cioè
non è possibile stabilire la dimensionalità dello spazio; inoltre non è possibile
stabilire a priori che la metrica euclidea sia quella giusta. La costruzione dello
spazio timbrico si avvale di un misto di ipotesi, manipolazioni statistiche e
successive verifiche. Innanzitutto si fanno delle ipotesi sulla dimensionalità
dello spazio, cioè sul numero di caratteristiche percettive principali. Questo
forse è il momento più delicato dell’intero processo in quanto non c’è nes-
sun elemento sostanziale a partire dalle nostre conoscenze pregresse sulla
percezione che ci dia un’indicazione in tal senso; in questa scelta entra in
gioco il maggior desiderio di qualsiasi ricercatore: poter visualizzare grafi-
camente in un’unica rappresentazione i dati che analizza. Questo orienta la
scelta verso dimensionalità limitate, preferibilemente di ordine due o tre, in
modo da poter rappresentare i timbri su un unico grafico. Sarà la rispondenza
tra i grafici ottenuti e la realtà percettiva a determinare la validità di questa
ipotesi. Una volta stabilite queste premesse, si sottopone un database sonoro
ad un sistema (umano o automatico) che fornisca in uscita delle risposte
basate sulla percezione che indichino il livello di similarità dei suoni. I suoni
vengono quindi rappresentati nel nostro spazio. A questo punto è possibile
45
valutare la correlazione statistica tra la grandezza (ignota) misurata sugli
assi con grandezze note al fine di stabilire il significato degli assi del nostro
spazio. Un’altra operazione da effettuare è la verifica del clustering, ossia la
capacità del sistema di raggruppare in zone ben definite gruppi di suoni simili
come i timbri prodotti da strumenti di una stessa famiglia.
Questo tipo di ricerche ha goduto di un’attenzione decisamente minore
rispetto al riconoscimento vero e proprio. Le motivazioni sono essenzialmente
di opportunità: la rappresentazione timbrica è un argomento che richiede un
insieme di competenze più vasto e non ha le ricadute applicative e commer-
ciali immediate di un software di riconoscimento robusto. Ciò nonostante,
gli sviluppi a lungo termine di questo approccio possono portare a risultati
inattesi in vari campi di ricerca compreso il riconoscimento timbrico. Infatti,
la comprensione dei fenomeni percettivi potrebbe ricevere un grande impulso
dalla comprensione del numero e del significato delle dimensioni dello spazio.
Ai fini del riconoscimento si può ipotizzare l’unione di due framework per
ottenere risultati migliori: uno basato sugli spazi timbrici e l’altro su sistemi
esperti in grado di valutare le tecniche strumentali ed esecutive in presenza
di frammenti musicali.
3.1.3 Lo spazio timbrico di Grey
Grey [Gre75] è stato il primo ad impegnarsi in una verifica sperimentale di
questi concetti. Nell’idea iniziale di Gray non c’era come scopo finale il ri-
conoscimento automatico, il suo obbiettivo era quello di verificare se fosse
stato possibile dare una rappresentazione formale dello spazio mentale in cui
46
gli esseri umani collocano i suoni; la sua impostazione però è stata ripresa
anche per la costruzione di spazi tramite analisi automatiche e quindi vale
la pena di descriverla più in dettaglio. Inizialmente è stato selezionato un
database di 16 strumenti su cui è stata effettuata un’elaborazione tesa ad
eliminare le differenze non timbriche come il pitch o il loudness. I suoni sono
stati quindi somministrati a coppie ad un insieme di ascoltatori. Per ciascuna
coppia l’ascoltatore dava un giudizio di similarità espresso in forma numerica.
A partire da questi dati Grey costruì una serie di matrici che contenevano
le valutazioni soggettive (subjective ratings). Questi dati furono elaborati
in due modi indipendenti: con un algoritmo di Multidimensional Scaling2
(MDS) e con un algoritmo di Hierarchical Clustering3 (HC). Lo scopo del-
l’analisi MDS era quello di scoprire i rapporti metrici degli stimoli in uno
spazio Euclideo che tenesse conto delle valutazioni di somiglianza in termini
di distanze spaziali. L’analisi HC invece era usata per raggruppare stimoli
simili indipendentemente dalla struttura spaziale sottostante. Una prova del-
la bontà del modello era data secondo Grey dalla compatibilità dei risultati
nei due tipi di analisi. In altri termini, se l’algoritmo di clustering tendeva
a raggruppare punti che già risultavano vicini in un grafico tridimension-
ale ottenuto tramite l’analisi MDS, si aveva la conferma di aver individuato
la giusta dimensionalità e la giusta metrica. A questo punto l’ultimo passo
2l’algoritmo prende in input una matrice delle distanze e genera in output una con-figurazione di punti (su due o tre dimensioni); la distanza euclidea tra i punti dellaconfigurazione rappresenta spazialmente la matrice delle distanze.
3l’algoritmo HC adotta una strategia che si può riassumere in tre passi: trova unamatrice di similarità (qualora non sia già disponibile) calcolando le distanze tra gli oggetti.Vengono collegate coppie di oggetti simili per formare dei cluster binari. I cluster cosìottenuti vengono assemblati in cluster più grandi creando un albero gerarchico. L’alberoviene esaminato per trovare dei cluster secondo i criteri scelti
47
sarebbe stato quello di trovare il significato percettivo delle tre dimensioni
con tecniche di regressione. Purtroppo Grey non ci riuscì e lasciò solo delle
considerazioni qualitative su quali potevano essere le grandezze rappresentate
dai tre assi; in particolare indicò l’asse principale come rappresentativo della
distribuzione spettrale mentre gli altri due assi dovevano rappresentare una
serie di caratteristiche temporali e spettrali miscelate tra loro secondo pesi
non noti. La giustificazione di questa difficoltà era dovuta, secondo Grey, alle
influenze di natura culturale degli ascoltatori; egli in pratica sosteneva che
le esperienze culturali degli ascoltatori (del tutto indipendenti quindi dalla
oggettività del timbro) influenzavano i dati in modo da rendere troppo comp-
lessa, se non impossibile, l’identificazione di un certo asse con una grandezza
percettiva misurabile.
Alla luce della successiva esperienza di Martin [Mar99] possiamo ritenere
che Grey avesse in parte ragione nell’indicare l’esperienza culturale dell’as-
coltatore come un limite nella creazione di uno spazio timbrico. Infatti, i
risultati di Martin ci dicono che il riconoscimento migliora sensibilmente us-
ando frasi monofoniche anzichè toni isolati e solo con le prime è possibile
sfruttare la conoscenza del fraseggio e delle tecniche strumentali. D’altra
parte il numero di dimensioni usate da Grey non è necessariamente quello
corretto ed inoltre il grado di correlazione tra un asse e una grandezza non
sarà mai del cento per cento, dato che il timbro non è realmente indipendente
dal pitch. Ma sopratutto osserviamo che se fosse una macchina ad operare
l’analisi e fornire i dati da rappresentare in uno spazio timbrico cadrebbe
completamente il limite dovuto all’esperienza culturale degli uomini.
48
3.2 Creazione di uno spazio timbrico a partire
da coefficienti MFCC
3.2.1 Database sonoro e strumenti utilizzati
In questo capitolo descriveremo la nostra esperienza nella creazione di uno
spazio timbrico. Lo strumento usato per l’implementazione degli algoritmi è
l’ambiente di calcolo scientifico Matlab ver. 6.5. Come materiale timbrico da
analizzare abbiamo utilizzato un gruppo base di 30 strumenti rappresentativo
delle principali famiglie strumentali dell’orchestra classica occidentale come
mostrato in tabella 3.1
Sono stati utlizzati esempi sonori campionati ad una frequenza di 44.1
KHz con una risoluzione di 16 bit. Conviene fare alcune precisazioni sulle
fonti da cui abbiamo attinto i campioni per evidenziare i problemi tipici
che si incontrano quando si fanno questo tipo di esperimenti. Sul mercato si
trovano moltissime librerie commerciali di campioni sonori destinate ai mu-
sicisti. Molte di queste librerie sono realizzate da grandi esecutori e registrate
in studi con attrezzature allo stato dell’arte. Il problema principale è che tali
librerie sono destinate ad essere usate su hardware proprietario come i cam-
pionatori: questo significa che vengono usati formati di file non standard e
comunque i campioni sono tagliati e modificati per ottenere la migliore resa
musicale sulle macchine cui sono destinati.
Nel nostro esperimento i campioni da inserire nel database di strumenti
sono tratti per la maggior parte dalla libreria McGill [Opo87] e in parte
49
Strumento tecnica esecutiva Label Famiglia Strumentale
Flauto contralto vibrato alto flute vibrato fiati - legni
Tromba barocca bach trumpet fiati - ottoni
Clarinetto basso bass clarinet fiati - ancia
Fagotto bassoon fiati - ancia doppia
Clarinetto in sib b-flat-clarinet fiati - ancia
Violoncello vibrato, con archetto cello archi
Violoncello pizzicato cello pizzicato archi
Tromba in do c-trumpet fiati - ottoni
Contrabbasso vibrato, con archetto double bass archi
Contrabbasso pizzicato double bass pizzicato archi
Clarinetto in mib vibrato e-flat-clarinet fiati - ancia
Corno Inglese English-horn fiati - ancia doppia
Flauto vibrato flute-vibrato fiati - legni
Corno Francese french-horn fiati - ottoni
Chitarra acustica guitar web cordofoni - corde pizzicate
Clavicembalo harps cordofoni - corde pizzicate
Marimba marimba percussioni - cromatiche
Oboe vibrato oboe fiati - ancia doppia
Organo da chiesa suonato su registro di riferimento 1 organ 2Organo da chiesa suonato su registro di riferimento 2 organo flautoPianoforte piano cordofoni - corde martellate
Sax Tenore sax tenor fiati - ancia
Trombone Tenore tenor-trombone fiati - ottoni
Tuba tuba fiati - ottoni
Vibrafono vibrafono percussioni - cromatiche
Viola pizzicato viola archi
Viola vibrato, con archetto viola archi
Gruppo di violini vibrato, suonati all’unisono violin ensemble archi
violino vibrato, con archetto violin archi
violino pizzicato violin archi
Tabella 3.1: Strumenti utilizzati per l’analisi timbrica
50
dalla libreria di registrazioni dell’università dell’Iowa 4 che si presentano in
un formato standard e non hanno subito rielaborazioni successive. Gli editori
delle librerie riportano i seguenti dati sulle condizioni di registrazione:
• libreria McGill: la maggior parte dei campioni sono stati registrati di-
rettamente in un registratore Sony PCM 3202 DASH. Sono stati impie-
gati microfoni a condensatore di alta qualità B K collegati ad un stadio
preamplificatore sempre della B K. Gli archi e il piano sono stati regis-
trati in una sala da concerto con un tempo di riverberazione variabile
tra i 2.5 e i 5 secondi. Gli altri strumenti sono stati registrati in uno
studio acusticamente neutro con un tempo di riverberazione di circa
0.4 secondi.
• Libreria dell’università di Iowa: le registrazioni sono state effettuate in
una camera anecoica nel Wendell Johnson Speech and Hearing Center
dell’università dell’Iowa. Sono stati impiegati microfoni Neumann KM
84, mixer Mackie 1402-VLZ e registratore DAT Panasonic SV-3800.
Ciascuno strumento è stato registrato con 3 livelli di dinamica non
normalizzati: piano pianissimo,mezzo forte e forte fortissimo.
La libreria McGill è diventata uno standard nelle più recenti sperimen-
tazioni sulla ricerca timbrica dato che offre un ampio ventaglio di strumenti
e ciascuno strumento viene suonato in tutta la sua estensione. Ma presenta,
però, anche alcuni difetti di cui occorre tener conto: gli esecutori impiegati
nelle registrazioni degli strumenti a fiato e ad arco impiegano la tecnica del
4i campioni audio sono liberamente scaricabili all’indirizzo internet http://theremin.music.uiowa.edu
51
vibrato5 ed in qualche caso si sente chiaramente un crescendo6. Per quanto
detto nel paragrafo 2.4 si deve tener conto di questi fattori nella progettazione
dell’algoritmo di analisi e nella valutazione dei risultati.
3.2.2 L’algortimo di front end
I coefficienti MFCC
Figura 3.1: schema a blocchi MFCC
MFCC è l’acronimo di Mel Frequency Cepstrum Coefficient; anche questa
tecnica è nata nell’ambito delle ricerche di elaborazione del parlato ed è
stata successivamente adattata ai suoni musicali. Analogamente alla tecnica
LPC, anche mediante gli MFCC possiamo ottenere un inviluppo spettrale ma
l’idea sottostante all’algoritmo è diversa. In questo schema il segnale viene
5Il vibrato è una tecnica esecutiva che consiste nel variare rapidamente il pitch dellanota di circa un quarto di tono attorno alla frequenza fondamentale
6Un’altra tecnica esecutiva che consiste nell’effettuare un incremento del loudness daun’intensità molto bassa fino all’intensità desiderata
52
elaborato da un banco di filtri pensato in modo da riflettere alcune proprietà
percettive illustrate in Appendice A.
In figura 3.1 viene presentato lo schema a blocchi dell’algoritmo di es-
trazione dei coefficienti:
Vediamo ora come funzionano i vari blocchi:
• Frame Blocking: il segnale in ingresso viene scomposto in piccole porzioni
temporali chiamate frame. Tali frame sono leggermente sovrapposti
in modo da non perdere eccessive informazioni quando si effettua il
finestramento.
• Finestramento: Lo scopo del finestramento è quello di ottenere in us-
cita un segnale privo di discontinuità all’inizio e alla fine del frame.
Tali discontinuità portano ad una perdita di risoluzione nel dominio
della frequenza che si manifesta col fenomeno del frequency leakage che
consiste in una dispersione dell’energia di una riga spettrale in tut-
to l’asse delle frequenze. La soluzione consiste nel moltiplicare ciascun
frame nel dominio temporale per un altro segnale con lo stesso numero
di campioni chiamato finestra. Utilizziamo a tale scopo la finestra di
Hamming:
{w(n)=0.54−0.46∗cos 2πn
N−1, 0≤n≤N−1
0, altrimenti
}(3.1)
La finestra riduce il frequency leakage ma contribuisce all’allargamento
dei picchi spettrali.
• FFT: ciascun frame in uscita dai blocchi precedenti viene trasformato
53
nel dominio della frequenza. Viene quindi calcolato il modulo della
trasformata di Fourier discreta mediante algoritmo di trasformata di
Fourier rapida. In uscita da questo blocco il segnale viene trattato nel
dominio della frequenza.
• Mel Frequency Warping: la risoluzione in frequenza dello spettro del
sistema uditivo umano non segue una scala uniforme (vedi Appendice
A). Tra le varie scale percettive disponibili scegliamo la scala mel; tale
scala è spaziata uniformemente in frequenza al di sotto dei 1000 Hz
ed esponenzialmente al di sopra. Possiamo usare la seguente formula
approssimata per calcolare i mel per una data frequenza espressa in
Hertz:
mel(f) = 2595 ∗ log10(1 +f
700) f ≥ 1000Hz (3.2)
mentre mel(f) = f per f ≤ 1000. Grazie alla presenza del logaritmo
nella scala mel si ha l’effetto di comprimere il range di frequenze dello
spettro analogamente a quanto accade nell’orecchio. A questo punto
implementiamo un banco di filtri, spaziato uniformemente sulla scala di
mel. Tale banco è costituito da filtri triangolari con larghezza di banda
costante fino ad 1 Khz e Q costante per le frequenze successive. Si noti
che i triangoli si sovrappongono simulando l’effetto delle bande critiche.
Il filtraggio viene realizzato nel dominio della frequenza moltiplicando
la trasformata di Fourier di ciscun frame per la risposta in frequenza
di ciascun filtro mel. La risposta in frequenza del banco ha l’aspetto
mostrato in figura 3.2
• Cepstrum: In questo blocco convertiamo il logaritmo dello spettro in
54
0 1000 2000 3000 4000 5000 6000 7000 80000
0.05
0.1
0.15
0.2
0.25
0.3
0.35
0.4
0.45
Figura 3.2: banco di filtri mel
scala mel nel dominio del tempo. Ciò che otteniamo viene chiamato
coefficiente cepstrum mel (MFCC). Dato che i coefficienti dello spettro
mel (ed i loro logaritmi) sono numeri reali, possiamo convertirli nel
dominio del tempo usando la Trasfomata Coseno Discreta (DCT).
In sintesi la formula utilizzata per il calcolo degli MFCC è
cn =K∑
k=1
log(Sk)cos[k(n−1
2)π
K] (3.3)
dove Sk con k = 1, ..., K sono le energie in uscita dai filtri. Nelle figure
3.3 e 3.4 possiamo osservare i grafici degli MFCC per i campioni di violo-
55
cello e tuba. Entrambi i grafici rappresentano 12 frame rispettivamente dei
due strumenti; confrontandoli emerge che nel caso del violocello le differenze
tra i frame sono molto più marcate che nel caso della tuba. Questo è un
indice abbastanza evidente delle differenze che si hanno tra le evoluzioni tim-
briche dei vari strumenti. Putroppo, come evidenziato nel paragrafo 3.2.1,
queste differenze sono accentuate anche dalle tecniche strumentali usate dai
musicisti.
0 5 10 15 20 25 30−4
−3
−2
−1
0
1
2
3MFCC del Timbro: cello
Figura 3.3: I primi 26 mfcc del violoncello rappresentati per 12 frames
56
0 5 10 15 20 25 30−4
−3
−2
−1
0
1
2
3MFCC del Timbro: tuba
Figura 3.4: I primi 26 mfcc della tuba rappresentati per 12 frames
Effettuando la traformata DCT inversa degli MFCC ritorniamo ad una
rappresentazione in frequenza del segnale che è proprio l’inviluppo spettrale,
sia pur rappresentato in scala mel, a cui abbiamo fatto riferimento prece-
dentemente. Osservando le figure 3.5 e 3.6 relative agli stessi campioni di
violoncello e tuba si ha la conferma di quanto già indicato dagli MFCC: nel
caso della tuba gli inviluppi relativi ai vari frame hanno sempre la stessa
forma mentre si osservano delle variazioni nel caso del violoncello.
57
0 5 10 15 20 25 30−2
−1.5
−1
−0.5
0
0.5
1
1.5
2
2.5
3 Strumento cello
Figura 3.5: Gli inviluppi spettrali del violoncello rappresentati per 12 frames
Riassumendo, possiamo dire di aver individuato una caratteristica distin-
tiva del timbro negli MFCC partendo da un modello che prende spunto dal
funzionamento dell’orecchio, ovvero un modello basato sulla percezione. A
partire da tale descrizione siamo in grado di percorrere a ritroso il cammino
dal suono percepito alla sorgente in quanto la rappresentazione in frequenza
che si ottiene dagli MFCC fornisce un inviluppo spettrale che è caratteristico
dello strumento.
58
0 5 10 15 20 25 30−2
−1.5
−1
−0.5
0
0.5
1
1.5
2
2.5
3 Strumento tuba
Figura 3.6: Gli inviluppi spettrali della tuba rappresentati per 12 frames
Ne segue da quanto detto che gli MFCC individuano degli invarianti
acustici. I limiti di questa tecnica si possono riassumere in due osservazioni
generali; la prima è che l’algoritmo tiene conto solo di alcuni aspetti della
percezione tracurandone molti altri, sia per mantenere l’algoritmo ad un liv-
ello di modesta complessità, sia perchè molti fenomeni percettivi sono ancora
poco noti. La seconda osservazione è intrinseca al modello stesso: si presup-
pone che il segnale da analizzare sia periodico e che l’evoluzione temporale
59
dello spettro sia contenuta. Da quanto detto nel paragrafo 2.3.1, la fase di
attacco del suono non è periodica e quindi non si presta a questo tipo di
analisi; inoltre il contenuto spettrale è soggetto ad evoluzione, ragion per cui
ha senso parlare di impronta spettrale solo per intervalli temporali in cui si
possano considerare trascurabili tali evoluzioni.
Formazione dei Vettori Acustici
Dato che il timbro evolve nel tempo, l’elaborazione del segnale in ingresso
non viene effettuata sull’intero segnale ma quest’ultimo viene suddiviso in
tante piccole finestre temporali chiamate frame. La dimensione del frame si
sceglie in modo tale che all’interno di questo intervallo temporale la variazione
timbrica si possa considerare trascurabile (ipotesi di quasi stazionarietà del
timbro). Ciascun frame viene elaborato separatamente con l’estrazione degli
MFCC ed il risultato è un vettore acustico per ciascun frame. Infine tut-
ti i vettori acustici vengono assemblati in una matrice che rappresenta gli
invarianti acustici del suono in tutta la sua durata.
Il nostro banco è formato da 27 filtri equispaziati su scala mel e ciascun
filtro ha una larghezza di banda di circa 100 mel. Complessivamente il nos-
tro banco copre una larghezza di banda di 2700 mel corrispondenti a circa
8 KHz (vedi figura 3.2). La scelta di questa larghezza è motivata dal fatto
che la maggior parte di informazioni sonore trasportate dagli strumenti mu-
sicali si trovano in questa banda mentre a frequenze più elevate il rapporto
segnale/rumore diventa svantaggioso. Il banco risulta inoltre normalizzato
rispetto all’energia per non privilegiare le frequenze più alte.
Da ogni campione vengono estratti i primi 600 msec e da questi vengono
60
eliminati i primi 80 msec. Alla routine di analisi vengono passati quindi circa
520 msec di audio da analizzare. Questi valori ci sono sembrati ottimali per
i seguenti motivi:
• Una durata intorno ai 500 msec è sufficiente a contenere la maggior
parte delle evoluzioni timbriche di una singola nota su molti strumenti.
• Abbiamo la necessità di eliminare l’attacco da tutti i campioni perchè il
tipo di analisi che ci apprestiamo a fare fornisce informazioni utili solo
per suoni quasi periodici (vedi paragrafo 2.3.1). A questo proposito
osserviamo che per tagliare l’attacco sarebbe stato sufficiente eliminare
i primi 20-40 msec; la scelta di operare un taglio maggiore è dettata
dalla necessità di moderare il palese effetto di crescendo presente in
alcune registrazioni.
Mediante la 3.3 abbiamo che ciascun frame è rappresentato da 27 coeffi-
cienti che formano il vettore acustico. Il primo coefficiente, quello di ordine
zero, rappresenta l’energia media del segnale e viene quindi escluso al fine
di ottenere una normalizzazione. Il vettore acustico così ottenuto, secondo
quanto discusso nel paragrafo 3.2.2, contiene una descrizione percettiva del
suono (o meglio del singolo frame), almeno per la sua parte periodica. In-
fine la trasformata coseno dei 26 coefficienti produce l’inviluppo spettrale del
frame.
In realtà è possibile verificare che la maggior parte delle informazioni spet-
trali rilevanti sono contenute nei primi coefficienti del vettore, mentre quelli
di ordine più elevato contengono la parte più fine di tale rappresentazione.
Non esiste una regola per determinare a priori quali sia il numero giusto
61
di coefficienti da ritenere, ma si valuta in base alle esigenze sperimentali il
numero più opportuno. Nel nostro caso si è scelto di stabilire tale numero
pari a 6, che è la quantità più piccola per conservare le informazioni spettrali
di maggior rilievo. Questa scelta consente di concentrare l’analisi effettuata
nello stadio successivo sulle caratteristiche più importanti diminuendo even-
tuali correlazioni incrociate sugli assi con caratteristiche minori. Operando
la trasformata coseno dei 6 coefficienti otteniamo ancora un inviluppo spet-
trale, che presenterà un andamento più smussato (cioè meno dettagliato)
del precedente. Chiameremo convenzionalemente tale inviluppo col termine
inviluppo semplificato. In stadi successivi della ricerca è comunque oppor-
tuno ripetere e/o riprogettare l’esperienza tenendo conto di un numero di
coefficienti maggiore.
3.2.3 Le Mappe Autoorganizzanti
Generalità
Per la costruzione dello spazio timbrico vengono impiegate le mappe neu-
rali autoorganizzanti o SOM (Self Organizing Map), introdotte da Kohonen
[Koh90a] [Koh90b]. Si tratta di reti neurali appartenenti alla famiglia delle
reti competitive. Queste reti imparano a riconoscere le regolarità e le corre-
lazioni presenti nel loro input e adattano la loro risposta futura, cioè dopo
l’addestramento, in accordo con l’input. In questo modo i neuroni delle reti
competitive imparano a riconoscere gruppi di vettori di input simili. In par-
ticolare, le mappe autoorganizzanti rispondono attivando neuroni vicini in
corrispondenza di ingressi simili. Le SOM sono caratterizzate da:
62
• la forma del pattern reticolare, ad esempio rettangolare o esagonale
(Figura 3.7)
Figura 3.7: Esempio di topologia a griglia rettangolare (in alto) ed esagonale(in basso)
• la metrica scelta, cioè la funzione che caratterizza la distanza; possiamo
avere distanze euclidee, di Manhattan, etc.
La rete funziona nel modo seguente: a ciascun neurone viene associato un
vettore peso wi che ha la stessa dimensionalità del vettore di ingresso x; in
questo modo abbiamo una struttura in cui tutti i neuroni sono idealmente
63
connessi in parallelo a tutti i terminali di ingresso. Per ciascun vettore in in-
gresso viene trovato il neurone che meglio si accoppia col vettore producendo
il più alto livello di eccitazione; quest’accoppiamento produce la corrispon-
denza tra il vettore in input e una posizione sulla mappa. Il neurone che si
ecciterà sarà quello che minimizza la distanza tra x e wi:
d = min ‖x−wi‖ (3.4)
Le coordinate che individuano il neurone eccitato rappresentano la proiezione
del vettore di ingresso sulla mappa. La funzione distanza scelta influenzerà
ovviamente il tipo di proiezione che otterremo. La particolarità delle SOM
rispetto alle altre reti competitive è che insieme al neurone vincente vengono
individuati e aggiornati anche i neuroni che si trovano nell’intorno di questi
(vedi Fig 3.8).
Addestramento e Simulazione
Il funzionamento della rete si basa quindi sulla formazione dei coefficienti
associati a ciascun neurone. I coefficienti si formano nella fase di addestra-
mento della rete. Una rete è inizialmente neutra cioè i suoi coefficienti sono
tutti uguali. L’addestramento consiste nell’esporre la rete ad un insieme di
vettori che costituisce il nostro database di addestramento. Ogni volta che
viene presentato un vettore in ingresso viene selezionato il neurone vincente
secondo la regola già illustrata. A questo punto vengono aggiornati i pesi del
64
Figura 3.8: Esempio di layer bidimensionale: gli intorni sono evidenziati contoni di grigio
neurone vincente secondo la relazione:
wi(t+ 1) = wi(t) + α[x(t)−wi(t)], ∨i ∈ Nc (3.5)
dove Nc rappresenta il gruppo di neuroni formato dal neurone vincente
e dai suoi vicini (Fig. 3.9) e α è il tasso di apprendimento che viene fatto
decrescere col tempo. Col progredire dell’addestramento aumenta la proba-
bilità che il neurone vincente vinca nuovamente quando si presenta lo stesso
input o un input molto simile.
Una volta terminato l’addestramento la rete, è pronta per essere usata:
esponendola ad un vettore in ingresso fornirà in uscita le coordinate del neu-
rone vincente. Possiamo sintetizzare dicendo che la rete opera una proiezione
65
Figura 3.9: Due esempi di neuroni con relativi intorni rispettivamente diraggio d=1 e d=2
dell’input da uno spazio di distribuzione di probabilità m-dimensionale (cos-
tituito dai vettori acustici) ad uno spazio dei dati n-dimensionale dove n<m;
essa opera quindi una riduzione di dimensionalità analogamente agli algo-
ritmi statistici come MDS. In questo processo di proiezione la rete effettua
un’estrazione di caratteristiche: infatti lungo gli n assi della SOM saranno
mappate le caratteristiche dell’input aventi la maggiore varianza numerica.
Principali proprietà delle SOM
L’algoritmo alla base del funzionamento delle SOM è un processo adattivo
che porta la rete a darsi un’organizzazione spaziale; tale algoritmo però non
è una trasformazione lineare e una delle conseguenze è che la distribuzione
66
spaziale è fortemente dipendente dal database di addestramento. La SOM
tende a distribuire la collocazione spaziale degli elementi usati per l’addestra-
mento su tutta la sua superficie7; quindi due SOM addestrate con database
in cui cambino anche un piccolo numero di strumenti darà luogo ad una
diversa distribuzione spaziale. Se ne deduce quindi che è consigliabile l’u-
so di database ricchi per avere a disposizione una capacità di collocazione
spaziale migliore; d’altra parte l’allargamento del database ha come effet-
to collaterale la diminuzione della capacità di clusterizzazione in quanto un
maggior numero di timbri deve contentendersi la stessa superficie. Una rete
di dimensioni maggiori, cioè con più neuroni, non è necessariamente più ef-
ficiente nella estrazione di caratteristiche 8 rispetto ad una più piccola, ma
sicuramente consente una maggiore risoluzione spaziale. Anche in questi casi
non esiste una regola prefissata sul numero di neuroni da adottare e sulla
grandezza del database. La SOM ha un’altra caratteristica importante asso-
lutamente positiva di cui sono privi gli algoritmi di proiezione lineari: essa
introduce dei fattori di ridondanza che la rendono più robusta in presenza di
rumore e segnali spuri.
3.3 Discussione dell’esperimento
La metrica che abbiamo scelto per la creazione delle mappe autoorganizzanti
è la metrica euclidea; tale scelta è dovuta a due motivi: non abbiamo in-
dicazioni a priori sul fatto che altri tipi di metrica diano risultati migliori
7si parla di superficie nel caso bidimensionale e di volume per una SOM tridimensionale8cioè nella collocazione spaziale dei timbri
67
mentre possiamo osservare che la distanza (euclidea) si conserva quando si
passa dagli MFCC agli inviluppi semplificati:
d2= ||cm − cn|| ≈ ||Cm − C
n|| (3.6)
dove i cn sono i coefficienti MFCC e i Cm
sono i coefficienti che rappre-
sentano gli inviluppi spettrali ottenuti trasformando con la DFT gli MFCC.
La verifica sperimentale è stata condotta con due database di addestramen-
to: quello mostrato in tabella 3.1 ed un sottoinsieme di questo composto da
venti timbri. Il gruppo di timbri di test è sempre il sottoinsieme di venti tim-
bri. Chiameremo i due database di addestramento con i nomi database 1 e
database 2. Notiamo che il database 2 è lo stesso usato per le verifiche speri-
mentali effettuate con l’algortitmo K-means illustrato nel paragrafo 4.3.2 per
consentire un confronto su dati omogenei di tecniche diverse. Dato che la
rappresentazione della proiezione bidimensionale offerta dalla rete di Koho-
nen non è molto usuale diamo una spiegazione sulla modalità di lettura dei
grafici che abbiamo ottenuto con l’ausilio della figura 3.10. Ciascun frame
dei timbri appartenenti al database di test eccita uno dei neuroni presenti
nella rete che viene rappresentata come una griglia bidimensionale 30x15;
non è detto che ogni frame debba eccitare un diverso neurone, anzi si spera
di avere solo un piccolo numero di neuroni eccitati9 in modo che il timbro
sia rappresentato da un cluster compatto che identifichi bene un timbro. Nel
grafico rappresentiamo allora delle spezzate che uniscono i neuroni eccitati
dai frame appartenenti ad un certo timbro; nelle figure presentate le spez-
9al limite anche un solo neurone.
68
zate, chiamate firing pattern dei neuroni, sono rappresentate in grigio. Per
dare un’idea della disposizione spaziale dei timbri sulla mappa abbiamo cal-
colato i valori medi delle coordinate dei neuroni eccitati per ciascun timbro
e li abbiamo graficati con dei punti. Infine per valutare rapidamente anche
la dispersione dei frame per ciascun timbro abbiamo plottato anche le de-
viazioni standard sui due assi e che corrispondono alle croci centrate sulle
medie dei timbri. E’ importante sottolineare che le medie non corrispondono
a nessun neurone reale sulla mappa ma costituiscono solo un ausilio grafico
per individuare rapidamente i timbri e le relative dispersioni sui due assi.
69
0 5 10 15 20 25 30
0
2
4
6
8
10
12
14
English−horn
HARPSI
b−flat−clarinet
bass−clarinet
bassoon
c−trumpet
cello
double basse−flat−clarinet
french−horn
guitar web marimba
oboe
piano
sax tenortenor−trombone
tuba
vibraphone
viola2
violin2
Addestramento: database 2 20 strumenti ; Firing Pattern: database 2 20 strumenti
Timbri che hanno eccitatoun piccolo numero di neuroni
Timbri che hanno eccitatoun maggior numero di neuroni
Figura 3.10: Proiezione bidimensionale tramite reti di Kohonen
Nelle figure 3.11 e 3.12 possiamo vedere i risultati della verifica. Notiamo
subito che le mappe autoorganizzanti dimostrano un’eccellente capacità di
raggruppamento delle famiglie strumentali come abitualmente vengono clas-
sificate in musica. Nelle figure si evidenziano delle regioni ben separate in
cui riconosciamo la famiglia degli archi, i clarinetti nelle diverse tonalità, gli
strumenti pizzicati e le percussioni cromatiche; da questo punto di vista le
mappe autoorganizzanti forniscono risultati eccellenti rispetto alle proiezioni
70
ottenute con metodi lineari come la PCA (vedi paragrafo 4.2 e 4.3.2); os-
servando la figura 4.11 e seguenti si verifica infatti che l’accorpamento degli
strumenti in famiglie è molto meno evidente e le regioni non sono così sepa-
rate. Al crescere della grandezza del database di addestramento cresce anche
la capacità di discriminazione del sistema ma questo porta ad una perdita di
generalità nel raggruppamento delle famiglie strumentali; osserviamo infatti
che mentre nella figura 3.12 l’intera famiglia degli archi viene raggruppa-
ta in una sola zona ben separata, nella figura 3.11 (che ha un database di
addestramento più grande) osserviamo che gli archi si dividono in due sotto-
classi: quelli con tessitura acuta (viola e violino) e quelli con tessitura grave
(violoncello e contrabbasso). La figura 3.13 presenta gli inviluppi spettrali
semplificati relativi ai venti timbri del database 2. Confrontando la figura
3.12 con la figura 3.13 osserviamo che esiste un rapporto abbastanza evi-
dente tra l’ordinamento spaziale effettuato dalle mappe autoorganizzanti e
gli inviluppi spettrali. Gli archi, che sono ben raggruppati sulla mappa hanno
evidentemente degli inviluppi spettrali simili; la stessa cosa si può dire dei
clarinetti e delle percussioni cromatiche (marimba e vibrafono). Inoltre gli
strumenti posti più a sinistra del grafico (marimba, tuba, fagotto (bassoon),
corno francese (french horn)) vengono in genere percepiti come strumenti dal
colore timbrico scuro o dalla sonorità cupa. Viceversa gli strumenti posti più
a destra (tromba, clarinetti, oboe) vengono percepiti come strumenti dal col-
ore più chiaro. Osservando gli inviluppi spettrali si rileva allora che esiste una
correlazione tra l’asse orizzontale della mappa e la distribuzione di energia
spettrale che caratterizza la forma degli inviluppi, legata alla brightness del
suono. Non è chiaro invece quale possa essere la grandezza percettiva corre-
71
lata all’asse verticale; possiamo supporre però che, se esiste una correlazione,
questa debba sussustere con un gruppo di grandezze percettive piuttosto che
con una sola.
0 5 10 15 20 25 30
0
2
4
6
8
10
12
14 English−horn
HARPSI
b−flat−clarinet
bass−clarinet
bassoon
c−trumpet
cello
double bass
e−flat−clarinet
french−horn
guitar web marimba
oboe
piano
sax tenor
tenor−trombone
tubavibraphone
viola2
violin2
Addestramento: database 1 30 strumenti ; Firing Pattern: database 2 20 strumenti
CLARINETTI
PERCUSSIONI CROMATICHE
ARCHI TESSITURA ACUTA
ARCHI TESSITURA GRAVE
PIZZICATI CORDE METALLICHE
Figura 3.11: rete di Kohonen con database di addestramento 1
72
0 5 10 15 20 25 30
0
2
4
6
8
10
12
14
English−horn
HARPSI
b−flat−clarinet
bass−clarinet
bassoon
c−trumpet
cello
double basse−flat−clarinet
french−horn
guitar web marimba
oboe
piano
sax tenortenor−trombone
tuba
vibraphone
viola2
violin2
Addestramento: database 2 20 strumenti ; Firing Pattern: database 2 20 strumenti
ARCHI
PIZZICATI CORDE METALLICHE
CLARINETTI
PERCUSSIONICROMATICHE
Figura 3.12: rete di Kohonen con database di addestramento 2
73
0 10 20 30−2
0
2
4English−horn
0 10 20 30−2
0
2
4HARPSI
0 10 20 30−2
0
2
4b−flat−clarinet
0 10 20 30−2
0
2
4bass−clarinet
0 10 20 30−2
0
2
4bassoon
0 10 20 30−2
0
2
4c−trumpet
0 10 20 30−2
0
2
4cello
0 10 20 30−2
0
2
4double bass
0 10 20 30−2
0
2
4e−flat−clarinet
0 10 20 30−2
0
2
4french−horn
0 10 20 30−2
0
2
4guitar web
0 10 20 30−2
0
2
4marimba
0 10 20 30−2
0
2
4oboe
0 10 20 30−2
0
2
4piano
0 10 20 30−2
0
2
4sax tenor
0 10 20 30−2
0
2
4tenor−trombone
0 10 20 30−2
0
2
4tuba
0 10 20 30−2
0
2
4vibraphone
0 10 20 30−2
0
2
4viola2
0 10 20 30−2
0
2
4violin2
Figura 3.13: Inviluppi spettrali semplificati del database di addestramento 2
74
Capitolo 4
Sistema di riconoscimento
timbrico a partire da coefficienti
MFCC
4.1 Struttura di un sistema di riconoscimento
In fase di progettazione di un sistema di riconoscimento timbrico si deve ten-
er conto di quali debbano essere le caratteristiche principali del sistema in
termini di generalità, semplicità, robustezza e risorse di calcolo disponibili.
Con il termine generalità intendiamo la capacità del sistema di operare su un
database di suoni con caratteristiche molto diverse tra loro; la semplicità è
riferita agli algoritmi impiegati nel riconoscimento mentre la robustezza è la
capacità del sistema di fornire risposte corrette. Sebbene sarebbe desiderabile
massimizzare le prime tre proprietà e contemporaneamente minimizzare le
risorse di calcolo richieste, gli studi e le esperienze condotte dimostrano che
75
ciò non è possibile. Esiste sempre un compromesso tra la generalità del sis-
tema e la sua robustezza; in altri termini maggiore è la varietà di suoni su cui
può operare il sistema e minore sarà la sua capacità di fornire risposte cor-
rette. Gli algoritmi di riconoscimento vengono scelti ovviamente in base alla
loro efficacia nello svolgere un determinato compito, ma se si scelgono algorit-
mi complessi aumentano le possibilità di comportamento anomalo del sistema
almeno per due ragioni: la prima è che molte assunzioni fatte sulla natura dei
suoni influenzano l’efficacia e in certi casi la validità stessa dell’algoritmo e
quindi all’aumentare della complessità di quest’ultimo aumenta la difficoltà
di prevedere la sua efficacia per tutti i casi che si possono presentare in input;
la seconda è che un algoritmo complesso è anche più difficile da implementare
in fase di programmazione e aumenta anche in questo senso la possibilità di
comportamento anomalo del sistema. Risulta evidente quindi che esiste un
compromesso anche tra semplicità e robustezza. Per ciò che riguarda le risorse
di calcolo non possiamo affermare che una maggiore semplicità degli algorit-
mi porti necessariamente ad una diminuzione delle richieste computazionali
ma possiamo indubbiamente affermare che un aumento di generalità porta
ad una proliferazione degli algoritmi impiegati.
Un sistema di riconoscimento può essere schematizzato in tre blocchi fun-
zionali distinti tra loro: estrazione delle caratteristiche, riduzione dei dati,
algoritmo di riconoscimento. Ad una maggiore generalità del sistema deve
corrispondere un maggior numero di caratteristiche da estrarre. La riduzione
dei dati si rende necessaria sia per motivi di ordine computazionale sia per-
chè ci si può trovare a dover gestire dati multidimensionali; in questo caso
gli algoritmi di riconoscimento applicabili in maniera semplice a problemi
76
monodimensionali diventano molto complessi quando si passa a due dimen-
sioni o possono perdere del tutto la loro efficacia per dimensioni superiori.
Infine deve essere scelto l’algoritmo di riconoscimento ottimale in base al tipo
di dati in uscita dal secondo blocco. Nel nostro caso le caratteristiche estrat-
te sono gli MFCC già descritti nel paragrafo 3.2.2; discuteremo nei paragrafi
successivi del metodo di riduzione dei dati impiegato e di due diverse strategie
per il riconoscimento.
4.2 Riduzione dei dati: Analisi per Componenti
Principali
I diversi metodi statisitci che tentano di interpretare un set di dati con-
siderando un gruppo di variabili prese contemporaneamente piuttosto che
separatamente vanno sotto il nome di statistica multivariata. Una delle prin-
cipali difficoltà della statistica multivariata è quella di visualizzare la mul-
tidimensionalità. Fortunatamente in un insieme di dati con molte variabili,
alcuni gruppi di variabili si ’muovono insieme’, nel senso che può accadere che
diverse variabili misurino lo stesso principio che governa il comportamento di
un sistema. Molti sistemi sono governati da poche forze ma un’abbondante
strumentazione ci consente di misurare dozzine di variabili di sistema. Spesso
questa ridondanza di informazione è utile ma quando vogliamo una visione di
insieme possiamo semplificare il problema rimpiazzando un gruppo di vari-
abili ridondanti con una singola nuova variabile. L’analisi per componenti
principali (Principal Component Analysis o PCA) è uno dei metodi della
77
statistica multivariata. Esso consente di ottenere un nuovo insieme di vari-
abili, chiamate componenti principali, che si ottengono come combinazione
lineare delle variabili originarie. Tutte le componenti principali sono ortog-
onali fra di loro cosicchè non c’è informazione ridondante e l’intero gruppo
delle componenti principali formano una base ortogonale per lo spazio dei
dati. Ciò che distingue le componenti principali da un qualunque altro in-
sieme di vettori ottenuto tramite un cambiamento di base nello spazio dei
dati è che le componenti principali sono costruite in maniera tale che la vari-
anza dei dati sia massima lungo qualunque punto di ciascun vettore di base.
Dato che in sostanza abbiamo operato un cambiamento di base nello spazio
dei dati, l’intero set di componenti principali è grande quanto il set di vari-
abili originali, ovvero la dimensione dello spazio è la stessa. Quando però ci
troviamo nella situazione in cui dei gruppi di variabili sono governate dallo
stesso principio1 accade che la varianza delle prime componenti principali sia
molto maggiore (circa un fattore dieci) della varianza delle ultime componen-
ti. Questa è un’indicazione del fatto che la maggior parte dell’informazione è
concentrata nelle prime componenti mentre le ultime contengono prevalente-
mente informazione ridondante. E’ chiaro quindi che è possibile operare una
diminuzione di dimensionalità dello spazio riducendo il numero di componen-
ti principali che adottiamo per rappresentazre i dati. In questo senso la PCA
viene utilizzata per operare una riduzione o compressione dei dati.
1per una maggiore chiarezza di esposizione abbiamo supposto che un unico principiogoverni l’andamento di una o più variabili ma nei casi reali come il nostro ciascuna variabileè governata contemporaneamente da più principi; nella maggior parte dei casi però unodei principi coinvolti ha un peso maggiore degli altri nel governare quella data variabileed è proprio la possibilità di identificarlo che ci consente di attribuire un significato fisicoallo spazio timbrico.
78
Nel nostro caso sono i vettori acustici esadimensionali ottenuti tramite
l’algoritmo di front end ad essere elaborati con la tecnica PCA. Questo ci
consente di prendere in considerazione solo le prime componenti escludendo
le altre e ottenendo così una proiezione da uno spazio esadimensionale ad uno
spazio bidimensionale. A differenza delle proiezioni ottenute tramite mappe
autoorganizzanti (par. 3.2.3) le rappresentazioni ottenute tramite PCA sono
proiezioni lineari e quindi possiamo dare una valutazione delle distanze tra
cluster diversi utilizzando la metrica euclidea. Nel nostro caso si è scelto di
ritenere solo le prime due componenti ottenendo quindi una proiezione bidi-
mensionale come quella rappresentata in figura 4.1. La rappresentazione che
−8 −6 −4 −2 0 2 4 6−5
−4
−3
−2
−1
0
1
2
3
4bassoon
c−trumpet
guitar web
marimba
violin2Bach−trumpet
Figura 4.1: Proiezione bidimensionale di 6 timbri tramite PCA
79
otteniamo si presenta come un insieme di cluster ciascuno dei quali rappre-
senta un timbro mentre i punti di ciascun cluster rappresentano i frames in
cui ogni suono è scomposto. Un cluster compatto e confinato in una picco-
la regione del grafico indica che il timbro varia poco nel tempo mentre un
cluster distribuito su una regione più ampia indica una variazione maggiore;
dalla figura 4.1 si evince chiaramente che il timbro di violino presenta una
dispersione maggiore rispetto al timbro di fagotto (bassoon); ascoltando i rel-
ativi campioni si perviene rapidamente ad una giustificazione del fenomeno:
il violinista che ha registrato il campione ha fatto largo uso della tecnica
del vibrato che si riflette in una variazione della qualità timbrica del suono,
viceversa il suonatore di fagotto ha prodotto un suono privo di sensibili vari-
azioni di intensità e di pitch. Nel nostro grafico si deve verificare che a timbri
simili (cioè percepiti come simili dall’orecchio) debbano corrispondere clus-
ter vicini. In particolare a cluster sovrapposti devono corrispondere timbri
scarsamente distinguibili dall’orecchio. Sempre in figura 4.1 osserviamo che i
cluster ottenuti dalla tromba barocca (Bach trumpet) e dalla tromba in do
(c trumpet) sono parzialmente sovrapposti e corrispondono effettivamente a
timbri difficili da distinguere.
80
4.3 Algoritmi di riconoscimento
4.3.1 Approccio classico: criterio MAP
Introduzione al criterio MAP
L’approccio classico al riconoscimento è un approccio di tipo statistico basato
sulle teorie della decisione utilizzate nei sistemi di Signal Detection e di Pat-
tern Classification [Rol03]. Le teorie della decisione si basano sull’ipotesi
fondamentale che il problema di decisione-classificazione possa essere formu-
lato in termini probabilistici. Le probabilità coinvolte possono essere note o
stimate. Diamo un cenno introduttivo in un caso semplice e vediamo come
applicare la teoria per ottenere un algoritmo di riconoscimento. Supponi-
amo di avere due soli timbri che si possono presentare al nostro sistema di
riconoscimento e supponiamo che non sia possibile stabilire in modo deter-
ministico quale dei due si presenterà. Il prossimo timbro che si presenterà in
ingresso potrà essere il timbro 1 o il timbro 2 con una certa probabilità. Nella
teoria della decisione questa situazione si formalizza col concetto di “classi”.
Nel nostro esempio avremo due classi ω1 e ω2. Supponiamo che le due classi
siano equiprobabili (stesse probabilità a priori) cioè P (ω1) = P (ω2) e che
non si possano presentare altri timbri oltre il numero 1 e il numero 2, cioè
P (ω1) + P (ω2) = 1, dove la notazione P (ωj) indica una probabilità discreta.
Supponiamo per semplicità che lo spazio timbrico sia uno spazio monodimen-
sionale ovvero che i diversi frame di ciascuno dei due timbri siano identificati
da una variabile x che rappresenta la caratteristica estratta. Poichè ciscun
frame avrà diversi valori di x, descriveremo x come una variabile aleatoria la
81
cui distribuzione p(x|ωi) dipende dal tipo di timbro. p(x|ωi) è la funzione di
densità di probabilità di x data la classe ωi. Se x è la caratteristica estratta
dal timbro allora la differenza fra le p(x|ωi) descrive le differenze attese tra
le caratteristiche dei due timbri. Applicando le note relazioni sulle densità di
probabilità condizionali e ricordando che P (ωj) rappresenta una probabilità
discreta abbiamo:
p(ωj, x) = P (ωj|x)p(x) = p(x|ωj)P (ωj) (4.1)
dove p(ωj, x) è la funzione di densità di probabilità congiunta che si verifichino
contemporaneamente l’evento x e la classe ωj. La 4.1 può essere riscritta nella
forma nota come regola di Bayes:
P (ωj|x) =p(x|ωj)P (ωj)
p(x)(4.2)
la quale esprime che la Probalità a Posteriori = (Verosimiglianza * Prob-
abilità a Priori) / Evidenza.
Nella terminologia adottata la Probabilità a Posteriori è la probabilità
condizionata che si abbia la classe ωj dato l’evento x mentre nel caso a due
classi abbiamo che l’Evidenza può essere espressa come:
p(x) =2∑
j=1
p(x|ωj)P (ωj) (4.3)
Se le funzioni di densità condizionale sono note, la regola di decisione che
minimizza l’errore per un certo x è quella a Massima Probabilità a Posteriori
82
il cui acronimo è MAP (Maximum A posteriori Probability): se
P (ω1|x) > P (ω2|x) (4.4)
allora la classe vera è ω1. Se
P (ω1|x) < P (ω2|x) (4.5)
allora la classe vera è ω2. Tale regola minimizza l’errore perchè
P (errore|x) = P (ω1|x) se decidiamo per ω2
P (errore|x) = P (ω2|x) se decidiamo per ω1
Applicando la regola di Bayes alle 4.4 e 4.5 possiamo riscrivere il criterio
di scelta come: se p(x|ω1)P (ω1) > p(x|ω2)P (ω2) allora è vera la classe ω1
altrimenti è vera la classe ω2.
Dal criterio di confronto si evince come si ottiene la soglia di separazione
tra le classi, cioè quel valore di x che chiameremo θ al di sopra del quale
l’evento appartiene alla classe ω2 e al di sotto del quale appartiene alla classe
ω1: nel nostro caso in cui P (ω1) = P (ω2)2 la soglia è quel valore θ tale che
p(θ|ω1) = p(θ|ω2) (4.6)
mentre nel caso più generale sarà quel valore θ tale che:
p(θ|ω1) =P (ω2)
P (ω1)p(θ|ω2) (4.7)
2infatti non c’è motivo di supporre che un timbro sia più probabile di un altro almenochènon abbiamo conoscenza a priori sulla formazione dell’orchestra.
83
A questo punto risultano univocamente definite le regioni di decisione R1
e R2 nel seguente modo:
R1 = {x ∈ R : l(x) > θ}
R2 = {x ∈ R : l(x) < θ}
Dove la quantità:
l(x) =p(x|ω1)
p(x|ω2)(4.8)
è denominata rapporto di verosimiglianza.
Nel caso in cui x : l(x) = θ allora x può essere inserito arbitrariamente in
R1 o R2.
La probabilità di errore risulta:
P (errore) = P {x ∈ R2, ω1}+ P {x ∈ R1, ω2} =
P (ω1)P {x ∈ R2|ω1}+ P (ω2)P {x ∈ R1|ω2} =
P (ω1)∫R2
p(x|ω1)dx+ P (ω2)∫R1
p(x|ω1)dx
In figura 4.2 vengono illustrate due funzioni di densità gaussiane in-
tersecantisi di cui vengono evidenziate la soglia θ e le regioni R1 e R2.
Nel caso in cui vi siano più classi la regola di decisione MAP si generalizza
x→ ωi ⇐⇒ P (ωi|x) > P (ωj|x) ∀i 6= j, i = 1, .., c (4.9)
In questo caso avremo ovviamente diverse soglie di decisione θ definite di
volta in volta tra due classi di decisione s e t tali che:
P (ωs|x) = P (ωt|x) > P (ωi|x) ∀s, t 6= i, s 6= t, i = 1, .., c (4.10)
84
−7 −6.5 −6 −5.5 −5 −4.5 −4 −3.5 −3 −2.50
0.5
1
1.5
2
2.5
3
b−flat−clarinet
e−flat−clarinet
tuba
vibraphone
tuba
punto di intersezione
Regione R1 theta Regione R2
Figura 4.2: Soglia e regioni di due funzioni di densità gaussiane
Estensione della classificazione al caso bidimensionale
La rappresentazione che abbiamo ottenuto dei timbri è una rappresentazione
bidimensionale. L’estensione al caso bidimensionale del classificatore prob-
abilistico presenta un notevole aumento di complessità; in due dimesioni la
distribuzione gaussiana p(x) viene chiamata distribuzione binormale; come
si vede dalla figura 4.3 essa si presenta una campana di volume unitario di
equazione:
p(x) =1
2π |Σ|1/2exp[−1
2(x− µ)tΣ−1(x− µ)] (4.11)
85
3.54
4.55
5.56
−1.5
−1
−0.5
0
0.5
10
0.5
1
1.5
2
2.5
3
Grafico Gaussiane Binormali
Strumento: bassoon (fagotto)
Figura 4.3: Esempio di gaussiana binormale
dove x e µ sono vettori colonna a due componenti con
µ = ε[x] =
∫xp(x)dx (4.12)
e Σ è la matrice di covarianza 2x2
Σ = ε[(x− µ)(x− µ)t] =
∫(x− µ)(x− µ)tp(x)dx (4.13)
La matrice Σ è simmetrica cioè Σ = Σt, ed è definita positiva. Gli elementi
(i, j) della matrice di covarianza sono dati da:
86
σij = ε[(xi − µi)(xj − µj)] (4.14)
Se accade che σi,j = 0∀i 6= j, cioè se la matrice è diagonale, allora la
distribuzione di probabilità nel caso bidimensionale è data semplicemente
dal prodotto delle distribuzioni di probabilità delle singole variabili:
p(x) = p(x1)p(x2) (4.15)
e si dice che le variabili aleatorie xi e xj sono scorrelate, ed essendo
gaussiane, sono anche indipendenti.
Le sezioni della campana a quota costante z sono chiamate curve di livello
e sono delle ellissi; gli autovettori di Σ sono le direzioni degli assi delle ellissi.
L’autovettore in corrispondenza dell’autovalore maggiore si dispone lungo
l’asse maggiore dell’ellisse. In figura 4.4 vengono mostrate le curve di livello
relative alla distribuzione binormale illustrata in figura 4.3; i livelli di grigio,
la cui scala è riportata sulla destra della figura, servono come riferimento
della terza dimensione (l’asse z).
Il problema di determinazione della soglia del caso monodimensionale di-
venta nel caso gaussiano bidimensionale quello di una funzione discriminante
del tipo
gi(x) = ln p(x|ωi) + lnP (ωi) (4.16)
dove P (ωi) sono le probabilità a priori, che nel nostro caso sono costanti
e uguali per tutte le classi come nel caso monodimensionale. Esplicitando la
87
4 4.5 5 5.5−1.2
−1
−0.8
−0.6
−0.4
−0.2
0
0.2
0.4
Curve di livello
0.5
1
1.5
2
2.5
Strumento: bassoon (fagotto)
Figura 4.4: Esempio di curve di livello
4.16 otteniamo:
gi(x) = −1
2(x− µi)
tΣ−1i (x− µi)− ln 2π −
1
2ln |Σi|+ lnP (ωi) (4.17)
dove |Σi| è il determinante della matrice di covarianza per ciascuna delle i
classi.
La soluzione nel caso generale del problema di determinazione delle su-
perfici di separazione tra le classi per via analitica non è un problema banale:
si tratta di quadratiche che possono assumere qualunque forma; inoltre le re-
88
Figura 4.5: Gruppo di gaussiane binormali
gioni di decisione potrebbero non essere semplicemente connesse. La figura
4.5 illustra un gruppo di distribuzioni binormali ricavate dai nostri campioni:
si può osservare come variano le forme delle superfici in funzione dei diversi
valori di σ per ciascuna gaussiana. La 4.6 mostra un esempio di gaussiane
binormali sovrapposte; il grafico è un ingrandimento delle due distribuzioni
poste a destra nella figura 4.5. Si tratta di due trombe in diversa tonalità,
cioè di due timbri molto simili; viene evidenziato l’andamento (marcato in
neretto) dell’intersezione tra le due distribuzioni binormali.
Il problema si semplifica drasticamente se si ipotizza che le matrici di
covarianza siano uguali per tutte le classi, cioè Σi = Σ∀i, dato che in questo
caso la funzione discriminante diventa:
89
Figura 4.6: Sovrapposizione di due gaussiane binormali
gi(x) = −1
2(x− µi)
tΣ−1(x− µi) (4.18)
avendo omesso il termine relativo alle probabilità a priori P (ωi) considerate
uguali per tutte le classi. La 4.18 è nota anche come distanza di Mahalanoibis.
In questo caso semplificato la regola di decisione sarà: dato x misuriamo
la distanza di Mahalanoibis tra x e ogni µi e assegnamo x alla classe con
distanza minima. Le superfici di decisione tra due classi diventano in questo
caso dei piani.
90
Dato che nella pratica la 4.18 è l’unica funzione discriminante che si riesce
a trattare agevolmente sono state sviluppate una serie di tecniche che operano
sui dati in modo tale da riportarci alla situazione in cui le matrici di covari-
anza siano tutte uguali. Una di queste è il features whitening (sbiancamento
dello spazio dei dati): si applica una trasformazione di Karhunen-Loeve (KL)
ai dati originari al fine di ottenere un nuovo set di dati scorrelati, ovvero per
ottenere che le matrici Σi siano tutte diagonali. Successivamente si applica
una nuova trasformazione al set scorrelato per ottenere un terzo set le cui
classi abbiano tutte la stessa viarianza, cioè σi = σ ∀i. Un esempio di tale
trasformazione è
zi =yi√λi⇒ var(zi) = 1∀i (4.19)
dove abbiamo indicato con λi gli autovalori delle Σi. Il risultato è che da un
vettore guassiano bidimensionale passiamo a 2 variabili gaussiane indipen-
denti tra di loro e di uguale dispersione.
Discussione sul metodo MAP finalizzato al caso del riconoscimento
timbrico
Come risulta chiaro dall’introduzione alla classificazione con metodi statis-
tici è necessario fare un’attenta valutazione del tipo di dati da trattare al
fine di comprendere se siano soddisfatte le ipotesi su cui si basano le teorie
statistiche che intendiamo applicare. La prima domanda che occorre porsi
è se le classi che andiamo ad analizzare siano realmente approssimabili con
distribuzioni gaussiane. Ricordiamo a questo proposito che la distribuzione
gaussiana è la distribuzione limite di misure soggette a errori casuali. In ef-
91
fetti dato che le nostre misure variano in seguito a variazioni timbriche che si
susseguono nel tempo non è affatto ovvio che tali variazioni siano realmente
casuali. Se consideriamo ad esempio la classe di uno strumento come il vibra-
fono osserviamo che la variazione temporale del timbro è condizionata, tra
l’altro, da un impoverimento progressivo dello spettro che avviene contem-
poraneamente alla diminuzione di intensità del suono; se invece consideriamo
una classe come il violino ci rendiamo conto che l’ampiezza della dispersione
della classe risultante è molto influenzata dalle variazioni di pitch causate dal
vibrato. Nel primo caso è difficile sostenere che esista un valor medio attorno
a cui oscillano le misure dato che l’evoluzione timbrica avviene sempre in un
determinato senso e non si può parlare di oscillazione. Nel secondo caso in-
vece si potrebbe pensare di inquadrare il fenomeno dell’oscillazione del pitch
più come un errore sistematico che come un incertezza casuale dovuta alla
misura. D’altra parte se avessimo molti campioni dello stesso tipo di timbro
sia suonati allo stesso pitch che a pitch diversi potremmo ipotizzare che in
una classe così formata l’elemento casuale sia predominante su quello sistem-
atico e che quindi l’ipotesi di gaussianità sia ragionevole. Inoltre, anche se le
variazioni timbriche degli strumenti come il vibrafono non sono in realtà oscil-
lazioni attorno ad una media si potrebbe presumere (e si dovrebbe verificare)
che il risultato delle misure si presenta come se fosse un’oscillazione attorno
ad un valor medio. Purtroppo nel nostro caso i campioni disponibili non sono
in quantità tali da poter effettuare questo tipo di verifiche ne sono noti in
letteratura risultati che ci possano dare un’indicazione in un senso o in altro.
L’altro punto su cui focalizzare l’attenzione è se sia possibile trovare analiti-
camente le superfici di separazione. Come abbiamo già osservato la soluzione
92
al problema della determinazione della 4.16 è legata alla possibilità di ridurre
la complessità del problema tramite la procedura del features whitening per
ritornare alla più semplice 4.18. Nel nostro caso però ci sentiamo di escludere
la possibilità di applicazione di questa procedura; sebbene essa sia matem-
aticamente lecita non ci troveremmo più di fronte alle gaussiane relative ai
nostri cluster e quindi perderemmo il riferimento con la proiezione PCA da
cui siamo partiti. Date le difficoltà dell’approccio analitico, una possibilità di
implementare un classificatore probabilistico è offerta da algortimi numerici;
diamo quindi una descrizione dell’algoritmo che abbiamo implementato in
linguaggio Matlab. La struttura dati che viene usata per rappresentare le
gaussiane binormali nello spazio delle probabilità è una matrice bidimension-
ale. Gli elementi di tale matrice sono i valori della funzione 4.11 calcolati su
un insieme discreto di valori di x e y. Le guassiane si intersecano tra loro
nello spazio e la proiezione sul piano XY delle intersezioni forniscono le curve
che separano le regioni. L’algoritmo che ci consente di trovare le N regioni
Ri corrispondenti alle N classi si articola in questo modo:
• Calcolo delle matrici di sovrapposizione: per ciascuna delle i gaussiane
troviamo le N-1 matrici di sovrapposizione Sij:
Sij = Ai > Aj ∀j = 1, ..., N i 6= j (4.20)
dove l’operatore ’>’ è un operatore logico che restituisce una matrice
i cui ingressi hanno solo due valori: uno se l’elemento alk della prima
matrice è maggiore del corrispondente elemento della seconda e zero al-
trimenti. Ciascuna matrice di sovrapposizione definisce una regione del
93
piano XY che corrisponde al caso in cui la gaussiana corrente è maggiore
di una delle altre gaussiane (principio di massima verosimiglianza).
• Dall’intersezione logica di tutte le matrici di sovrapposizione relative
all’ i-esima gaussiana si ottiene la regione di classificazione dell’ i-esima
classe:
Ri = S1 ∧ S2 ∧ ........ ∧ SN−1 (4.21)
−6 −4 −2 0 2 4 6 8−4
−3
−2
−1
0
1
2
3
b−flat−clarinet
Grafico dei cluster
Prima componente PCA
Sec
onda
com
pone
nte
PC
A
bassoon
c−trumpet
e−flat−clarinet marimba
oboe
vibraphone
violin2
Bach−trumpet
Figura 4.7: Proiezione tramite PCA di nove timbri
Le figure 4.7, 4.8, 4.9 e 4.10 illustrano un caso di applicazione del classi-
ficatore gaussiano. Il database di timbri da cui generiamo il classificatore è
94
composto da nove timbri acustici: clarinetto in si bemolle, clarinetto in mi
bemolle, tromba in do, tromba barocca (Bach trumpet), fagotto (bassoon),
oboe, vibrafono, marimba e violino. Il gruppo di strumenti è stato scelto in
modo da poter osservare il comportamento di evoluzioni timbriche diverse;
abbiamo infatti messo 3 coppie di strumenti dal timbro simile: una coppia
di ance (i due clarinetti), una coppia di ottoni con bocchino (le trombe) e
una coppia di percussioni cromatiche (marimba e vibrafono); queste ultime
evidenziano il comportamento timbrico laddove manca la fase di sustain.
Abbiamo inserito il fagotto che è uno degli strumenti che presentano minore
evoluzione timbrica dato che non c’è decay e viene di solito suonato a volume
costante e senza vibrato. Infine in rappresentanza degli archi c’è il violino che
viene suonato in questo caso con un sensibile vibrato. In figura 4.7 si possono
osservare i cluster ottenuti dalla proizione bidimensionale PCA dei coefficien-
ti MFCC dei nove timbri; rimangono valide le osservazioni fatte nel paragrafo
4.2 a proposito della dispersione dei cluster e delle loro reciproche distanze.
Le figure 4.8 e 4.9 ci forniscono da due diverse prospettive delle gaussiane bi-
normali ottenute dai nove timbri. Anche in questo caso si possono ripetere le
osservazioni precedentemente fatte rispetto all’intersezione di gaussiane con
timbri simili.
Infine la figura 4.10 mostra le regioni di classificazione ottenute con l’al-
goritmo numerico sintetizzato nelle formule 4.20 e 4.21. Le nove regioni Ri
sono rappresentate dai diversi colori. Osservando la figura emergono sia i
limiti dell’approccio di classificazione gaussiana in generale sia la sua imple-
mentazione numerica: notiamo che l’estensione della regione del vibrafono è
sproziornata rispetto a quella della marimba; in effetti osservando lo spazio
95
delle gaussiane si vede che la coppia marimba/vibrafono si trova in una re-
gione dello spazio distante da tutte le altre gaussiane e questo comporta che
la regione che compete alla coppia sarà con ogni probabilità piuttosto este-
sa; tra la marimba e il vibrafono tenderà ad occupare maggior superficie la
regione corrispondente alla gaussiana più estesa, o in altri termini, la meno
piccata. Dato che esiste una differenza notevole nell’altezza delle due gaus-
siane viene conseguentemente privilegiato il timbro cui corrisponde una Σ
maggiore che nella fattispecie è il vibrafono. Nel caso delle trombe si nota
che ad una situazione più equilibrata nelle incertezze tra i due strumenti cor-
rispondono delle regioni di dimensioni confrontabili. Sia per la tromba in do
che per il violino ci troviamo di fronte a regioni non connesse.
Tutti questi effetti si possono parzialmente limitare introducendo una pic-
cola modifica alla precisione con cui lavora l’algoritmo: se infatti approssimi-
amo a zero i valori delle gaussiane inferiori ad una certa soglia otteniamo
delle regioni più piccole che meglio rispecchiano l’andamento delle gaussiane
e contemporaneamente si riduce il numero di regioni non connesse; l’effetto
negativo che subentra è che se le gaussiane che compongono il database non
sono uniformemente distribuite in modo da occupare l’intero spazio, com-
pariranno delle regioni spurie nel nostro classificatore, cioè delle regioni che
non siamo in grado di attribuire a nessun timbro. Nella figura 4.10 si può
osservare questo effetto nelle regioni poste negli angoli in basso a sinistra e
in alto a sinistra.
96
4.3.2 Approccio Data Mining
Introduzione all’algoritmo K-means
Nel paragrafo 4.3.1 abbiamo visto che date le P (ωi)p(x|ωi) il criterio di mas-
sima verosimiglianza ci consente di progettare un classificatore. La classifi-
cazione che abbiamo operato è di tipo supervisionato in quanto conosciamo
a priori le classi di appartenenza dei singoli punti sullo spazio dei dati. In
altri termini dato l’insieme N di tutti i punti del set di addestramento sap-
piamo a priori quali sono gli n punti appartenenti al primo timbro, gli n
punti appartenenti al secondo e così via. Inoltre abbiamo ipotizzato che il
tipo di distribuzione che descrive le nostre classi sia noto. Nella fattispecie
abbiamo supposto che i punti all’interno di ciascuna classe si distribuiscano
secondo una funzione gaussiana. Si parla allora di classificatore parametrico
in quanto è noto il modello di distribuzione p(x|ωi). I metodi supervision-
ati non parametrici sono stati inizialmente introdotti perchè consentivano
di avere una prima stima della distribuzione sottostante ai dati, da usare
successivamente come ipotesi di partenza per l’applicazione di un metodo
parametrico. I classificatori parametrici supervisionati non sono però gli uni-
ci tipi di classificatori che abbiamo a disposizione anche se sono quelli più
noti e sopratutto più utilizzati fino a tempi recenti. Nel periodo precedente
l’era informatica e telematica, le tecniche statistiche erano prevalentemente
usate per l’analisi dei dati provenienti dalla sperimentazione scientifica, in
cui generalmente si hanno a disposizione informazioni sui dati e sulle clas-
si tali da consentire proficuamente l’uso di classificazioni supervisionate e
parametriche; con la nascita dell’informatica ci si è trovati a dover gestire
97
moli molto più grandi di dati che sono peraltro di provenienza eterogenea e
di cui spesso non si conosce la struttura. Lo sviluppo delle applicazioni di
ricerca e ordinamento dell’informazione hanno pertanto dato un consistente
impulso alla nascita di vere e proprie discipline autonome come il data min-
ing che hanno ampliato e per certi versi superato il dominio della statistica
tradizionale. In questo contesto sono nati i metodi non supervisionati e non
parametrici, cioè quei metodi che partono esclusivamente dal set di dati di
partenza D senza fare delle ipotesi iniziali né sulle classi di cui è composto
né sulla distribuzione sottostante. L’efficienza computazionale e la semplicità
formale di questi metodi hanno poi ulteriormente contribuito ad aumentarne
la popolarità e ad incoraggiarne l’uso in svariate discipline. L’idea alla base
dei metodi non parametrici è quella di focalizzare l’attenzione sullo scopo che
ci siamo prefissi, cioè sulla classificazione di gruppi di dati, piuttosto che sulle
ipotesi che possono essere fatte sui dati. Ripercorrendo il ragionamento che
abbiamo seguito nel paragrafo 4.3.1 osserviamo che abbiamo prima stabilito
il tipo di distribuzione, quindi in base a questa abbiamo ricavato le funzioni
discriminanti e infine abbiamo ottenuto le regioni di classificazioni come spazi
delimitati dalle funzioni discriminanti. Un altro approccio possibile è quel-
lo di determinare le regioni facendo direttamente delle ipotesi sulle funzioni
discriminanti anzichè sulle distribuzione sottostante alle classi; un approccio
ancora diverso consiste invece nel clustering, cioè nel raggruppamento dei
dati. Le tecniche di clustering poggiano su algoritmi che cercano dei gruppi
naturali nell’insieme dei dati senza nessuna ipotesi di partenza. Si tenta quin-
di di scoprire, cioè di far emergere, un’organizzazione dell’informazione insita
nei dati stessi. In sintesi possiamo affermare che gli algoritmi di clustering
98
trattano ciascuna osservazione come un oggetto avente una locazione nello
spazio e trovano una partizione in cui ciascun oggetto sia abbastanza vicino
agli altri elementi dello stesso cluster e abbastanza lontano dagli elementi
appartenenti agli altri cluster. Ciascun cluster è definito dal numero dei suoi
oggetti e dal suo centroide. Il risultato ottimale dovrebbe essere un insieme di
cluster compatti e per quanto possibile, ben separati. Diamo ora una breve
introduzione formale all’algoritmo di clustering noto come K-means utiliz-
zando la notazione statistica introdotta nei paragrafi 4.3.1. Indichiamo con
c il numero di classi (o meglio di cluster) del nostro insieme di dati e siano
θ = {θ1, .., θc} i valori incogniti dei parametri della densità di probabilità
espressa da:
p(x|θ) =c∑
j=1
p(x|ωj, θj)P (ωj) (4.22)
La p(x|θ) è denominata Mixture Density mentre∑c
j=1 p(x|ωj, θj) è
la Component Density e la P (ωj) rappresenta i Mixing Parameters.
Se esiste un unico valore di θ che produce i valori di p(x|θ) allora possiamo
determinare il valore di θ e in questo caso la p(x|θ) viene detta identificabile;
in caso contrario verrà detta non identificabile.
Siano D = {x1, ...,xn} un insieme di n pattern non etichettati, collezionati
in accordo con la 4.22 dove il vettore dei paramtri θ = {θ1, ..., θc} è non noto.
La verosimiglianza è3:
p(D|θ) =n∏
k=1
p(xk|θ) (4.23)
Indichiamo con θ la stima della massima verosimiglianza di θ, cioè quel val-
3cifranj [Rol03]
99
ore di θ che massimizza la 4.23. La stima della massima verosimiglianza di
P (ωi|xk, θ) è data da:
P (ωi|xk, θ) =p(xk|ωi, θi)P (ωi)∑cj=1 p(xk|ωj, θj)P (ωj)
(4.24)
dove P (ωi) è la stima di massima verosimiglianza per P (ωi). Indicando con
µi la media dei pattern si può verificare che:
µi =
∑nk=1 P (ωi|xk, θ)xk∑nk=1 P (ωi|xk, θ)
(4.25)
Come abbiamo visto nel paragrafo 4.3.1 la 4.24 cresce al diminuire della
distanza di Mahalanobis, che in questo caso si scrive (xk− µj)tΣ−1
i (xk− µj).
A questo punto invece di usare la distanza di Mahalanobis decidiamo di usare
la semplice distanza euclidea ||xk − µi|| per trovare il valore µm più vicino a
xk e approssimare
P (ωi|xk, θ) ≈{
1 se i=m0 altrimenti (4.26)
A questo punto un’applicazione iterativa della 4.25 ci consente di trovare
sia i µ1, ...., µc che rappresentano i centroidi dei nostri cluster sia i punti da
associare a ciascun cluster.
Implementazione dell’algoritmo K-means
Il K-means è un’algortimo iterativo il cui schema è:
• Inizializzazione dei parametri:
100
– N (numero totale di punti, cioè l’intero set di dati prodotti dopo
la riduzione tramite PCA).
– n (numero totale di pattern).
– c (numero di cluster cercati, cioè il numero di classi su cui si basa
il nostro classificatore).
– {µ1, ...., µn} (stime iniziali dei centroidi geometrici dei cluster).
• Classificazione degli n pattern in accordo con la µi più vicina e ricalcolo
delle µi. Questo passo avviene minimizzando la 4.27 rispetto a µi:
J =c∑
j=1
∑
k∈Sj
|xk − µj|2 (4.27)
dove Sj sono c sottoinsiemi disgiunti.
• Ripetizione del ciclo finchè le variazioni delle µi diventano trascurabili.
In generale il numero c di cluster non è noto a priori perchè per il K-means
i punti da analizzare sono tutti equivalenti ed il numero di cluster deve essere
il risultato del processo di minimizzazione. L’inizializzazione di c deve essere
pertanto guidata da altre considerazioni legate allo scopo del classificatore; ad
esempio se vogliamo classificare le lettere dell’alfabeto è ragionevole scegliere
c = 26, ma questo non significa che al termine del processo di minimizzazione
otterremo effettivamente 26 cluster perchè il risultato finale dipende dai dati
da elaborare. Inoltre il numero n di pattern ed il numero c di cluster sono in
generale diversi; infatti un determinato pattern (ad esempio uno dei timbri in
ingresso) potrebbe sovrapporsi ad altri pattern data la reciproca somiglianza
101
e non dare origine ad un cluster dopo l’elaborazione con K-means. Per una
discussione rigorosa sulla convergenza dell’algortimo K-means rimandiamo
il lettore ai testi specifici sull’argomento [WI99], ma sottolineamo in questa
sede alcuni punti fondamentali. In generale l’algoritmo non trova il minimo
globale di J ; infatti, l’algoritmo trova generalmente un minimo locale dato che
opera con valori discreti invece di un set di paramteri continuo. Per lo stesso
motivo, nei casi più sfortunati, K-means potrebbe non convergere affatto se
durante il processo iterativo si innesca un’oscillazione tra due valori di µi
per uno stesso cluster. Come succede in molti algoritmi iterativi di ricerca
numerica, i dati iniziali, cioè le µi che forniamo in fase di inizializzazione del
programma, giocano un ruolo essenziale nella convergenza dell’algoritmo. In
ogni caso nelle implementazioni avanzate di K-means presenti nelle librerie
software scientifiche come il Matlab vengono offerte una serie di opzioni che
consentono al programmatore di controllare il comportamento dell’algoritmo
e verificare l’insorgere di situazioni anomale.
Nella nostra implementazione le inizializzazioni vengono fatte in modo
da porre c pari al numero di timbri che compongono il database e il valore
delle µi viene inizializzato con la media dei valori corrispondenti a ciascun
pattern; queste scelte sono ragionevoli dato che ci aspettiamo un numero di
cluster pari al numero di timbri e dei centroidi che si avvicinano (anche se
non coincidono) con la media. In Matlab K-means partiziona le osservazioni
presenti nei dati in c cluster mutuamente esclusivi e restituisce un vettore di
indici che indica a quali dei c cluster è stata assegnata ciascuna osservazione.
102
Discussione dei risultati
La logica di funzionamento alla base di un classificatore gaussiano è diversa
da quella sottostante ad un classificatore basato su K-means. Nel primo caso
infatti una volta fornito il database di addestramento, cioè l’insieme iniziale
di timbri, creiamo le regioni che verranno poi usate per classificare qualsiasi
timbro4. Nel caso del K-means invece la clusterizzazione viene fatta sulla
base dei dati stessi e quindi viene in un certo senso a cadere la differenza tra
database di addestramento e database di test dato che il suono da classificare
deve subire il processo di clusterizzazione insieme al gruppo di addestramen-
to. Questo vuol dire che anche i cluster relativi al database di addestramento
si configureranno in cluster diversi al variare del timbro da classificare. Le
figure che illustrano i risultati dei test sono rappresentazioni ottenute dalle
proiezioni PCA in cui le x rappresentano i frame, le stelle rappresentano
le medie aritmetiche delle coordinate dei frame di ciascun timbro mentre i
triangoli rappresentano i centroidi di ciascun cluster generato dall’algoritmo
K-means; si noti che le medie e i centroidi sono generalmente vicini ma non
sempre coincidono.
Abbiamo osservato quindi il comportamento del sistema utilizzando un
database di addestramento di 20 timbri e osservando i risultati in undici casi
suddivisi in tre gruppi. Nel primo gruppo sono stati usati campioni di test con
stesso timbro e stesso pitch dei timbri già presenti nel database ma tratti da
registrazioni diverse, cioè utilizzando modelli diversi degli strumenti suonati
da altri musicisti. Gli strumenti considerati sono la marimba e la tromba ed
4ovviamente maggiore è il numero di regioni e maggiore sarà la generalità del nostroclassificatore
103
entrambi gli strumenti sono stati correttamente riconosciuti; i risultati sono
visibili nelle figure 4.11 e 4.12.
Nel secondo gruppo di test sono presenti strumenti già presenti nel database
ma suonati ad un pitch diverso. Abbiamo testato per due volte la tromba
con due pitch diversi: rispettivamente ad un tono e una quinta sopra l’al-
tezza della tromba presente nel database. Come mostrato nelle figure 4.13
e 4.14 otteniamo un risultato soddisfacente in quanto il timbro viene cor-
rettamente riconosciuto. Abbiamo ripetuto l’esperimento altre quattro volte
utilizzando il timbro di fagotto (bassoon) che risulta essere situato in una
regione meno periferica della tromba nel nostro spazio bidimensionale. Il test
è stato effettuato utilizzando dei campioni con pitch inferiori al tono originale
rispettivamente di un semitono, un tono, una quinta e un’ottava e i risultati
vengono illustrati nelle figure 4.15, 4.16, 4.17, 4.18. Osserviamo che il test
ha dato risultati positivi in tre casi e negativo in un caso che è quello della
quinta; come abbiamo visto nel paragrafo 2.4 il timbro e il pitch non sono
scorrelati tra di loro e ci si aspetta che maggiore sia la distanza in termini di
pitch tra due suoni e maggiore sarà la differenza timbrica. Nel test operato
sul fagotto questa previsione sembra parzialmente smentita in quanto il cam-
pione distante un’ottava risulta essere più simile al timbro originale rispetto
al campione che dista una quinta. A questo proposito però osserviamo che
la composizione spettrale di due suoni che distano un’ottava (emessi dallo
stesso strumento) sono molto simili ad eccezione della fondamentale (cioè
della frequenza più bassa). Come ultimo caso di riconoscimento con timbri di
diverso pitch abbiamo scelto il vibrafono illustrato in figura 4.19 che è stato
testato con un campione ad un’ottava superiore; il test ha dato risultato neg-
104
ativo riconoscendo il campione proposto come pianoforte. Un peggioramento
delle capacità di riconoscimento dell’algoritmo era abbastanza prevedibile in
questo caso in quanto abbiamo scelto un timbro che si trova in una zona
piuttosto affollata del nostro spazio; osserviamo comunque come il vibrafono
sia ben raggruppato tra i timbri relativi agli strumenti percussivi e pizzicati,
caratterizzati da una fase di decay preponderante.
L’ultimo gruppo di test riguarda timbri di strumenti non presenti nel
database di addestramento e i risultati si possono osservare nelle figure 4.20
e 4.21. Il primo test, piuttosto semplice, riguardava il riconoscimento della
tromba barocca ed il risultato è stato soddisfacente in quanto il campione di
test è stato riconosciuto come tromba. Il secondo caso era invece più inter-
essante in quanto il campione sottoposto era un timbro di chitarra classica
(con corde di nylon) molto diverso dal timbro di chitarra acustica (con corde
di metallo) presente nel database di addestramento. Il campione di chitarra è
stato riconosciuto come piano che è uno strumento a corda; ricordiamo che la
chitarra è uno strumento a corda pizzicata mentre il piano è uno strumento a
corde percosse ma osserviamo che nel front-end del nostro classificatore viene
presa in considerazione solo la parte stazionaria del suono (cioè viene escluso
l’attacco).
105
Figura 4.8: Nove timbri rappresentati da altrettante gaussiane binormali.Vista uno
106
Figura 4.9: Nove timbri rappresentati da altrettante gaussiane binormali.Vista due
107
Regioni di classificazione
20 40 60 80 100 120 140 160 180 200
20
40
60
80
100
120
140
160
180
200
vibraphone Tromba barocca
Violino
Violino
oboe
Marimba
Clarinetto inmi bemolle
Tromba in do
Tromba in do
Fagotto
CL
CL=Clarinetto in si bemolle
Figura 4.10: Regioni di classificazione relative a nove timbri
108
−8 −6 −4 −2 0 2 4 6 8−6
−4
−2
0
2
4
6
English−horn
Grafico dei cluster
Prima componente PCA
Sec
onda
com
pone
nte
PC
A
HARPSI
b−flat−clarinetbass−clarinet
bassoon
c−trumpet
cellodouble bass
e−flat−clarinet
french−horn
guitar web
marimba
oboepiano
sax tenor
tenor−trombone
tuba
vibraphone
viola2
violin2
test−MARIMBAC4−Akai
Strumento di test:MarimbaStrumento riconosciutoMarimba
Figura 4.11: Test 1: riconoscimento del timbro di Marimba
109
−6 −4 −2 0 2 4 6 8−6
−4
−2
0
2
4
6
English−horn
Grafico dei cluster
Prima componente PCA
Sec
onda
com
pone
nte
PC
A
HARPSI
b−flat−clarinet bass−clarinet
bassoon
c−trumpet
cellodouble bass
e−flat−clarinet
french−horn
guitar web
marimba
oboe
piano
sax tenor
tenor−trombone
tuba
vibraphone
viola2
violin2
test−TRLGFF−C3−Akai
Strumento di test:TrombaStrumento riconosciuto:Tromba
Figura 4.12: Test 2: riconoscimento del timbro di Tromba
110
−6 −4 −2 0 2 4 6 8−6
−4
−2
0
2
4
6
English−horn
Grafico dei cluster
Prima componente PCA
Sec
onda
com
pone
nte
PC
A
HARPSI
b−flat−clarinetbass−clarinet
bassoonc−trumpet
cello double bass
e−flat−clarinet
french−horn
guitar web marimba
oboe
piano
sax tenor
tenor−trombone
tuba
vibraphone
viola2
violin2
test−c−trumpet−re
Strumento di test:Tromba + 1 tonoStrumento riconosciuto:Tromba
Figura 4.13: Test 3: riconoscimento del timbro di Tromba con pitch modificato(un tono)
111
−6 −4 −2 0 2 4 6 8−6
−4
−2
0
2
4
6
English−horn
Grafico dei cluster
Prima componente PCA
Sec
onda
com
pone
nte
PC
A
HARPSI
b−flat−clarinet bass−clarinet
bassoon
c−trumpet
cellodouble bass
e−flat−clarinet
french−horn
guitar web
marimba
oboe
piano
sax tenor
tenor−trombone
tuba
vibraphone
viola2
violin2
test−c−trumpet−sol
Timbro di test:Tromba + 1 quintaTimbro riconosciuto:Tromba
Figura 4.14: Test 4: riconoscimento del timbro di Tromba con pitch modificato(una quinta)
112
−6 −4 −2 0 2 4 6 8−6
−4
−2
0
2
4
6
English−horn
Grafico dei cluster
Prima componente PCA
Sec
onda
com
pone
nte
PC
A
HARPSI
b−flat−clarinet
bass−clarinet
bassoon
c−trumpet
cello double bass
e−flat−clarinet
french−horn
guitar web marimba
oboe
piano
sax tenor
tenor−trombone
tuba
vibraphone
viola2
violin2
test−bassoon−1semitono
Strumento di test:Fagotto −1 semitonoStrumento riconosciutoFagotto
Figura 4.15: Test 5: riconoscimento del timbro di Fagotto con pitch modificato(un semitono)
113
−6 −4 −2 0 2 4 6 8−6
−4
−2
0
2
4
6
English−horn
Grafico dei cluster
Prima componente PCA
Sec
onda
com
pone
nte
PC
A HARPSI
b−flat−clarinetbass−clarinet
bassoonc−trumpet
cello double bass
e−flat−clarinet
french−horn
guitar web marimba
oboe
piano
sax tenor
tenor−trombone
tuba
vibraphone
viola2violin2
bassoon−1tono
Strumento di test:Fagotto −1 tonoStrumento riconosciuto:Fagotto
Figura 4.16: Test 6: riconoscimento del timbro di Fagotto con pitch modificato(un tono inferiore)
114
−6 −4 −2 0 2 4 6 8−8
−6
−4
−2
0
2
4
6
8
English−horn
Grafico dei cluster
Prima componente PCA
Sec
onda
com
pone
nte
PC
A
HARPSI
b−flat−clarinet
bass−clarinet
bassoon
c−trumpet
cellodouble bass
e−flat−clarinet
french−horn
guitar web
marimba
oboe pianosax tenor
tenor−trombone
tuba
vibraphoneviola2
violin2
test−bassoon−1quintaStrumento di test: Fagotto + una quintaStrumento riconosciutoMarimba
Il fagotto del set di training è qui
Figura 4.17: Test 7: riconoscimento del timbro di Fagotto con pitch modificato(una quinta inferiore)
115
−6 −4 −2 0 2 4 6 8−6
−4
−2
0
2
4
6
English−horn
Grafico dei cluster
Prima componente PCA
Sec
onda
com
pone
nte
PC
A
HARPSI
b−flat−clarinetbass−clarinet
bassoonc−trumpet
cello double bass
e−flat−clarinet
french−horn
guitar web marimba
oboe
piano
sax tenor
tenor−trombone
tuba
vibraphone
viola2violin2 test−bassoon−1ottava
Strumento di test:Fagotto − 1 ottavaStrumento riconosciuto:Fagotto
Figura 4.18: Test 8: riconoscimento del timbro di Fagotto con pitch modificato(un’ottava inferiore)
116
−6 −4 −2 0 2 4 6 8−6
−4
−2
0
2
4
6
English−horn
Grafico dei cluster
Prima componente PCA
Sec
onda
com
pone
nte
PC
A
HARPSI
b−flat−clarinetbass−clarinet
bassoon
c−trumpet
cellodouble bass
e−flat−clarinet
french−horn
guitar web
marimba
oboe
piano
sax tenor
tenor−trombone
tuba
vibraphone
viola2
violin2
test−vibraphoneC4−Akai
Strumento di test:Vibrafono+ 1 ottavaStrumento riconosciutoPiano
Figura 4.19: Test 9: riconoscimento del timbro di Vibrafono con pitchmodificato (un’ottava inferiore) e diversa fonte di registrazione
117
−6 −4 −2 0 2 4 6 8−6
−4
−2
0
2
4
6
English−horn
Grafico dei cluster
Prima componente PCA
Sec
onda
com
pone
nte
PC
A
HARPSI
b−flat−clarinet bass−clarinet
bassoon
c−trumpet
cellodouble bass
e−flat−clarinet
french−horn
guitar web
marimba
oboe
piano
sax tenor
tenor−trombone
tuba
vibraphone
viola2violin2
Bach−trumpet
Strumento di test:Tromba BaroccaStrumento riconosciuto:Tromba
Figura 4.20: Test10: riconoscimento del timbro di Tromba barocca
118
−6 −4 −2 0 2 4 6 8−6
−4
−2
0
2
4
6
English−horn
Grafico dei cluster
Prima componente PCA
Sec
onda
com
pone
nte
PC
A
HARPSI
b−flat−clarinet bass−clarinet
bassoonc−trumpet
cello
double bass
e−flat−clarinet
french−horn
guitar web
marimba
oboe
piano
sax tenor
tenor−trombone
tuba
vibraphone
viola2violin2
NYLONc3
Strumento di test:chitarra classicaStrumento riconosciuto:Piano
Figura 4.21: Test11: riconoscimento del timbro di Chitarra classica
119
Capitolo 5
Conclusioni e sviluppi futuri
5.1 Estensione del Database di addestramento
Il primo problema che si presenta in questo tipo di esperienze è il database
di addestramento da utilizzare; un database ottimale dovrà avere:
• Un gran numero di strumenti diversi
• Ciascuno strumento dovrà essere suonato in tutta la sua estensione
• Per ciascun timbro si dovrà avere una collezione di campioni tratti da
modelli differenti dello strumento e suonati da musicisti diversi
• Per ciascun timbro bisognerà avere una collezione di campioni suonati
con le tecniche più comuni per quel determinato strumento: vibrato,
tremolo, vari tipi di dinamica, etc..
Attualmente non abbiamo a disposizione un database che abbia tutte queste
caratteristiche ma dato lo sviluppo di queste ricerche riteniamo probabile
120
che in ambito commerciale o accademico possa nascere un progetto dalle
caratteristiche che abbiamo elencato.
5.2 Quantità delle Features
Sia gli esperimenti condotti sulla creazione dello spazio timbrico che sui due
classificatori si sono basati sulle stesse features cioè i coefficienti MFCC.
Sebbene molto efficaci nella descrizione dei suoni quasi stazionari hanno
mostrato diversi limiti come una forte dipendenza dal pitch. E’ necessario
quindi pensare un front-end in cui siano presenti più features che compren-
dano anche dei parametri utili all’analisi dell’attacco. Un set di features
aggiuntive potrebbe essere:
• Inviluppo dell’energia ottenibile tramite l’evoluzione dell’ampiezza del
suono nel tempo utilizzando lo schema ADSR introdotto nel paragrafo.
2.3.1.
• Durata dell’attacco. Utile per stabilire il tipo di eccitazione dello stru-
mento (ance, doppie ance, pizzicati, etc.)
• Autocorrelazione del segnale: utile per avere una misura della regolarità
del segnale.
• Estrazione del pitch e dell’ampiezza delle parziali.
121
Appendice A
Il sistema uditivo
A.1 Struttura dell’orecchio
L’orecchio umano (Figura A.1) si può schematizzare dividendolo in tre parti
di cui diamo una breve descrizione:
• orecchio esterno. Questa parte è composta dal padiglione auricolare e
dal condotto uditivo. Il primo ha la funzione di raccogliere il suono da
un’area sufficientemente ampia e la sua forma è essenziale per deter-
minare la direzionalità del suono. Infatti, le onde riflesse dai vari punti
del padiglione verso l’imboccatura del condotto uditivo, presentano tra
loro piccoli sfasamenti perchè hanno percorso cammini non uguali; tali
sfasamenti congiuntamente allo sfasamento dovuto alla binauralità ven-
gono decodificati dal cervello che li sfrutta per stabilire la direzionalità
del suono. Il condotto uditivo ha la funzione di trasportare le vibrazioni
sonore fino al timpano.
122
Figura A.1: Schema dell’orecchio
• orecchio medio. E’ composto dal timpano, dagli ossicini e dalla finestra
ovale. Il timpano entra in vibrazione quando si trova sollecitato da os-
cillazioni di pressione nell’aria interna al condotto. Anche oscillazioni di
pressione molto piccole possono mettere in funzione il timpano; infatti il
range dinamico del nostro orecchio è straordinariamente grande: esso è
di circa 120 dB calcolati a partire dai 10−12W/m2 a 1000 Hz corrispon-
denti alla soglia di percettibilità fino ad 1W/m2 corrispondente alla
soglia del dolore. Un uomo giovane senza problemi di salute percepisce
complessivamente una banda di frequenze che vanno da 20 ai 20.000
Hz. Dobbiamo però osservare che tale valore teorico si riduce drasti-
123
camente con l’avanzare dell’età e con l’esposizione continua a sorgenti
sonore intense come quelle a cui siamo sottoposti in una metropoli.
Condotto uditivo e timpano costituiscono una canna aperta ad una
estremità ed in quanto tali risuonano con una risposta che abbraccia
la gamma di frequenze che vanno dai 2000 ai 5000 Hz. Questa osser-
vazione introduce uno dei problemi da affrontare con la modellizzazione
dell’orecchio: la nostra sensibilità uditiva infatti non è costante al vari-
are delle frequenze. Il primo ad occuparsi del problema è stato Fletcher
che disegnò le curve dette curve di Fletcher-Munson o curve di isofo-
nia (Figura A.2). Tali curve mettono in evidenza che il volume sonoro
percepito (loudness) varia in funzione della pressione efficace dell’onda
sonora sull’orecchio e della frequenza. Gli ossicini trasmettono le vi-
brazioni alla finestra ovale tramite un gioco simile a quello delle leve
meccaniche che ha il compito di amplificare il segnale. Se però la pres-
sione sul timpano è troppo forte il muscolo timpanico si può irrigidire
per attenuare il segnale prima di trasmetterlo. Possiamo quindi dire
che questa parte dell’orecchio si comporta come un compressore o un
expander di dinamica del segnale (vedi Fig A.3).
124
Figura A.2: Grafico delle curve di Fletcher
125
Figura A.3: Caratteristiche di ingresso-uscita di un compressore e di unexpander di dinamica
126
• orecchio interno. E’ composto dalla coclea, dai canali circolari e dalle
terminazioni nervose. La coclea è l’organo nel quale avviene la trasfor-
mazione degli impulsi meccanici dovuti alle variazioni di pressione in
impulsi elettrici diretti al cervello che li interpreterà come suoni. L’in-
terno della coclea è riempito di fluidi e nella parte centrale è presente la
membrana basilare su cui si appoggia l’organo di Corti, contenente circa
20.000 cellule munite di ciglia connesse con le fibre nervose. Il piega-
mento delle ciglia spinge le relative cellule a produrre segnali elettrici
sotto forma di treni di impulsi i quali vengono raccolti dalle termi-
nazioni del nervo uditivo e convogliati al cervello. La membrana basi-
lare distingue tra le diverse frequenze presenti in un suono complesso
effettuando una trasduzione frequenza-posizione lungo la membrana. Il
diverso spessore e rigidità dalla base all’apice determinano la posizione
sulla membrana che risuona maggiormente per ogni frequenza udibile.
Quindi, per un suono complesso, le frequenze si distribuiscono ordinata-
mente da un’estremità all’altra della membrana: le alte frequenze alla
base, le basse frequenze all’apice. La membrana agisce come un banco
di filtri passabanda: ciascun filtro è accordato su una ristretta banda
di frequenze. L’idea del funzionamento tonotopico della membrana fu
introdotta già da Helmholtz nel XVII secolo ma solo negli anni ’60 si
è compreso l’esatto meccanismo di funzionamento di questo organo ad
opera di von Bekesi; questi associò le frequenze alla varietà strutturale
della membrana che, a partire dalla base, aumenta in massa, larghezza
e flessibilità. E’ per questo che le regioni più vicine all’apice vibrano
in risonanza con le basse frequenze (come avviene per le corde di un
127
contrabbasso) mentre le regioni più vicine alla base vibrano in risonan-
za con le alte frequenze (come le corde di un violino). La regione che
vibra in modo più vigoroso in corrispondenza di un suono stimola un
alto numero di cellule cigliate in una determinata area dell’organo di
Corti, e questa area manderà il maggior numero di impulsi al cervello.
Per le basse frequenze, fino a circa 3 KHz, anche la frequenza dello sti-
molo, oltre al posto di provenienza, è un indicatore dell’altezza. Quindi
il nervo uditivo trasporta sia informazione di tipo temporale (la tempo-
rizzazione degli impulsi) che di tipo spaziale (l’area più stimolata della
membrana basilare). Per le alte frequenze solo la localizzazione sulla
membrana sembra essere determinante.
A.2 Discriminazione delle frequenze
Dato che frequenze diverse stimolano diversi gruppi di terminazioni nervose
possiamo effettivamente pensare che in presenza di un suono complesso, cioè
composto da più suoni sinusoidali, il nostro orecchio operi un’analisi in fre-
quenza. Ci si chiede quindi quale sia la sua capacità di discriminazione delle
frequenze o in altri termini la sua sensibilità. Nella schematizzazione della
membrana come banco di filtri passabanda accordati su frequenze diverse, la
capacità di discriminazione del banco è legata al fattore di merito Q dei fil-
tri. Il problema si può riassumere nel modo seguente: se due suoni elementari
hanno frequenze abbastanza diverse tra loro, ecciteranno gruppi di termi-
nazioni nervose ben distinte e quindi il cervello sarà in grado di operare una
distinzione netta tra i due suoni; se avviciniamo le due frequenze inizieranno
128
a sovrapporsi anche i gruppi di terminazioni nervose stimolate e quindi il
cervello avrà una crescente difficoltà nel distinguerli. Oltre un certo livello
di sovrapposizione la capacità di discriminazione viene completamente persa
e due suoni sovrapposti pur avendo frequenze diverse non saranno discrim-
inati. Si introduce quindi il concetto di banda critica cioè quella banda di
frequenze all’interno della quale l’orecchio non è in grado di operare la dis-
criminazione. Il fenomeno psicoacustico che ci consente di rilevare l’ampiezza
di banda dei filtri uditivi lungo la membrana basilare è detto mascheramento.
Il mascheramento è quel fenomeno per cui un segnale forte maschera un seg-
nale debole. L’ampiezza di banda delle bande critiche è proprio quella con cui
lavorano i filtri uditivi. La banda critica rappresenta la gamma di frequen-
ze all’interno della quale si verificano i fenomeni di mascheramento: l’idea
generale è che i suoni possono essere discriminati perfettamente dal nostro
apparato uditivo solo quando ricadono in differenti bande critiche; quando
ricadono nella stessa banda critica, la discriminazione diventa più difficile, ed
è possibile solo in determinate condizioni. Nel caso di un suono complesso,
lo stesso discorso vale per le componenti parziali, che possono essere udite
tutte senza problemi solo se in bande critiche differenti; nel caso in cui due
parziali ricadano nella stessa banda, una potrebbe mascherare l’altra. Inoltre,
la presenza di rumore con un’ampiezza di banda che copre una banda critica
contribuisce al mascheramento dei toni presenti in quella banda. L’ampiez-
za delle bande critiche è costante solo per le basse frequenze mentre ha un
andamento esponenziale per le frequenze più alte. Diversi esperimenti han-
no portato a risultati leggermenti diversi rispetto al numero e all’ampiezza
delle bande critiche e quindi alla costruzione di diverse scale percettive. Un
129
esempio di scala percettiva è la scala mel che è quella da noi utilizzata per
l’algoritmo di front-end (paragrafo 3.2.2). Osserviamo infine che il fenomeno
del mascheramento può presentarsi non solo nel caso in cui due suoni siano
sovrapposti temporalmente ma anche quando sono in rapida successione.
130
Appendice B
Schema delle Trasformate di
Fourier
La necessità di uno schema riassuntivo della famiglia delle trasformate di
Fourier si presenta ogni volta che una pubblicazione che si basa su tecniche
di Digital Signal Processing si rivolge ad un pubblico scientificamente compe-
tente ma non esperto del ramo. La necessità è dovuta ad una denominizione
ambigua delle varie applicazioni della trasformata che spesso traggono in in-
ganno chi è abituato ad usare la trasformata di Fourier in domini continui (ad
esempio per la soluzione di equazioni differenziali). Nello schema che segue
verranno sottolineate le diverse possibili trasformazioni e i loro differenti do-
mini di applicazione; vogliamo ricordare comunque che sebbene formalmente
diverse le varie trasformazioni si basano tutte sull’intuizione del matematico
Jean Baptiste Fourier (1768-1830) secondo cui è possibile esprimere una vas-
ta classe di funzioni in termini di sovrapposizione di funzioni trigonometriche
elementari. La famiglia delle trasformate di Fourier si può suddividere in base
131
alla periodicità del segnale e in base al tipo di dominio (continuo o discreto).
Segnali Continui
Vi sono due tipi di trasformazione per i segnali continui:
• Segnali aperiodici:
Dato un segnale x(t) non periodico in cui t ∈ [−∞,∞] è una variabile
continua, si definisce Trasformata di Fourier di x(t) la quantità:
X(ω) =
∫ +∞
−∞
x(t)e−jωtdt (B.1)
che è chiamata anche analisi del segnale, mentre la Trasformata inversa
o Antitrasformata è definita come:
x(t) =1
2π
∫ +∞
−∞
X(ω)ejωtdω (B.2)
ed è chiamata anche sintesi del segnale. Affinchè le definizioni di x(t) e
X(ω) siano sensate è necessario che l’integrale nella B.1 sia finito. Una
condizione sufficiente per garantire la trasformabilità di una funzione è
che risulti: ∫ +∞
−∞
|x(t)|dt <∞ (B.3)
ma in realtà la classe di funzioni trasformabili è molto più ampia se
si considerano criteri di convergenza (cioè di sommabilità) più ampi.
Esempi notevoli di funzioni trasformabili sono gli esponenziali nega-
tivi e le gaussiane mentre la funzione costante è la tipica funzione
132
non trasformabile. Occorre anche precisare che il tipo di uguaglianza
in B.2 dipende anche dalla classe di segnali considerata (per esempio
eguaglianza nella norma di L2)
• Segnali periodici:
Un segnale periodico non è trasformabile secondo la B.1 in quanto
l’integrale presente al secondo membro non converge neanche secondo
criteri più ampi della B.3 . In questi casi, indicando con T0 il periodo e
con ω0 = 2π/T0 la pulsazione, si definisce la Serie di Fourier o FS i
cui coefficienti
ak =1
T0
∫
T0
x(t)ejω0ktdt (B.4)
rappresentano l’analisi, cioè l’analogo della B.1 per i segnali periodici.
La sintesi è invece data dallo sviluppo in Serie di Fourier:
x(t) =∞∑
−∞
akejkω0t (B.5)
che è l’analogo della B.2 per segnali periodici. Anche in questo caso il
rigore imporrebbe di specificare che non tutti i segnali periodici ammet-
tono sviluppo in serie di Fourier, anzi, solo i segnali continui che non
abbiano improvvise variazioni di pendenza possono essere sicuramente
trasformati. In realtà la classe di segnali a cui viene applicata la B.5 è
molto più vasta dato che viene interpretata in senso generalizzato; ciò
vuol dire che la sommatoria al secondo membro converge ad un segnale
x(t) che approssima molto bene x(t). In questo senso possiamo consid-
erare lo sviluppo in serie di Fourier di segnali molto importanti come
133
le onde quadre o quelle triangolari.
Segnali Discreti
Anche per i segnali discreti si danno due formulazioni:
• Segnali aperiodici
Data una sequenza discreta x[n] con n ∈ [−∞,∞] si definisce la Trasfor-
mata di Fourier a Tempo Discreto o DTFT:
X(ω) =∞∑
n=−∞
x[n]e−jωn (B.6)
mentre la Trasformata inversa in questo caso è:
x[n] =1
2π
∫ π
−π
X(ω)ejωn (B.7)
La DTFT di un segnale è una funzione periodica della pulsazione di
periodo 2π.
• Segnali periodici
Data una sequenza discreta periodica x[n] di periodoN con n ∈ [−∞,∞]
si definisce la Serie di Fourier Discreta o DFS:
X[k] =N−1∑
n=0
x[n]e−j2πnk
N (B.8)
dove X[k] è una sequenza periodica di periodo N . La trasformazione
inversa è data da
134
x[n] =1
N
N−1∑
k=0
X[k]ej2πnk
N (B.9)
Trasformata di Fourier Discreta (DFT)
Le ultime due trasformazioni che abbiamo presentato coprono una vasta
classe di segnali discreti che sono appunto i segnali su cui operiamo; il prob-
lema è che sia la DTFT che la FS si applicano a sequenze discrete infinite
mentre le uniche sequenze che un computer può trattare sono quelle finite e i
nostri campioni audio sono appunto codificati all’interno del computer come
sequenze finite. Per trattare questo caso si introduce quindi la Trasformata
di Fourier Discreta o DFT che è rappresentata dalla coppia:
X[k] =N−1∑
n=0
x[n]e−j2πnk
N (B.10)
x[n] =1
N
N−1∑
k=0
X[k]ej2πnk
N (B.11)
dove N è il numero campioni di cui è composto il suono immagazzinato nel
computer. In effetti un’introduzione rigorosa della DFT dovrebbe includere
una dimostrazione delle sue proprietà, ma un modo molto semplice per ri-
cavarle consiste nel pensare la DFT come un’applicazione particolare della
DFS; in pratica supponiamo di applicare la DFS ad un prolungamento peri-
odico della nostra sequenza; il risultato della trasformazione sarà anch’essa
una sequenza periodica e di questa viene preso un solo periodo. La DFT
eredita quindi tutte le proprietà della DFS.
135
L’algoritmo FFT
Per completezza (e per eliminare la confusione generata dai nomi) citiamo la
Trasformata Veloce di Fourier o FFT. A dispetto del nome non si tratta
di un’ulteriore forma di trasformazione ma di un algortimo di calcolo della
DFT estremamente efficiente la complessità computazionale è O(N lgN).
L’algoritmo della FFT è una pietra miliare dell’elaborazione dei segnali.
136
Bibliografia
[BB63] Tukeyy J.W. Bogert B.P., Healy M.J. The quefrency alanysis of
time series for echoes: Cepstrum, pseudo-autocovariance, cross-
cepstrum and saphe cracking. In Proceeding Symposium Time
Series Analysis, pages 209–243, 1963.
[Ber64] Berger. Some factors in the recognition of timbre. J. Acoust. Soc.
Am., 30:394–406, 1964.
[Bro99] J. Brown. Computer identification of musical instruments using
pattern recognition with cepastral coefficient as features. J. Acoust.
Soc. Am., 105(3), 1999.
[Bro01] McAdams Brown, Houix. Feature dependence in the automatic
identification of musical woodwind instruments. J. Acoust. Soc.
Am., 109(3), 2001.
[Cam78] Heller Campbell. The contribution of the legato transient to instru-
ment identification. In Proceeding Research Symposium on the Psi-
cology and Acoustics of music, pages 30–34. University of Kansas,
1978.
137
[Cla64] Milner Clark. Dependence of timbre on the tonal loudness pro-
duced by musical instrument. J. Audio. Eng. Soc., 12:28–31,
1964.
[Eag47] Eagleson W. Eagleson, H. Identification of musical instruments
when heard directly and over a public address system. J. Acoust.
Soc. Am., 19:338–342, 1947.
[Ero01] Antti Eronen. Automatic musical instrument recognition. Master’s
thesis, Tampere University Of Technology, 2001.
[Gre75] John M. Grey. An exploration of musical timbre report stan-m-2.
Technical report, Stanford University, 1975.
[Ken86] Kendall. The role of acoustic signal partitions in listner cat-
egorization of musical phrase. Music Perception, 4:185–214,
1986.
[Koh90a] T. Kohonen. Self-organization and associative memory. Springer
Verlag, 1990.
[Koh90b] T. Kohonen. The self-organizing map. IEEE, 78(9):1464–1480,
1990.
[Mar99] Keith D. Martin. Sound source recognition: A theory and com-
putational model. Technical report, Massachusetts Institute of
Technology, 1999.
[McA93] Stephen McAdams. Recognition of auditory sound sources and
events. Technical report, Oxford University, Oxford, 1993.
138
[Opo87] Wapnik Opolko. McGill University Master Samples-compact disk.
McGill University, 1987.
[Rol03] F. Roli. Corso di riconoscimento forme. 2003.
[Sal64] Corso Saldanha. Timbre cues and the identification of musical
instruments. J. Acoust. Soc. Am., 36:2021–2026, 1964.
[Str67] C. Strong. Perturbations of synthetic orchestral wind instruments
tone. J. Acoust. Soc. Am., 41:277–285, 1967.
[WI99] Frank E. Witten I. Data Mining: Practical Machine Learning Tools
and Techniques with Java Implementations. Morgan Kaufmann,
1999.
139