Sei sulla pagina 1di 523

Elaborazione numerica dei

segnali
Fabio Rocca
Dipartimento di Ingegneria Elettronica
e Informazione
Politecnico di Milano

Milano, 2010

Indice
Prefazione

xiii

1 Il Campionamento
1.1 Introduzione . . . . . . . . . .
1.2 Ricostruzione di un segnale . .
1.3 Campionamento passa banda
1.4 Il filtro antialias . . . . . . . .

.
.
.
.

1
1
6
7
8

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

11
11
13
14
15
15
18
20
22
22
25
27
28
29
29
30
31

3 Ricostruzione di segnali continui


3.1 Introduzione: sequenze limitate . . . . . . . . . . . . . .

33
33

2 La
2.1
2.2
2.3

2.4
2.5
2.6

2.7

2.8

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

trasformata di Fourier discreta


Campionare in tempo e in frequenza . . . . . . . . .
Propriet della DFT . . . . . . . . . . . . . . . . . .
Filtraggi con la DFT . . . . . . . . . . . . . . . . . .
2.3.1 Convoluzioni aperiodiche: sequenze limitate .
2.3.2 Sequenze illimitate: overlap-save; overlap-add
Antitrasformazione di Fourier discreta . . . . . . . .
2.4.1 Il derivatore e la costante di tempo . . . . . .
Interpolazione con la DFT . . . . . . . . . . . . . . .
2.5.1 Inserzione di zeri e repliche spettrali . . . . .
Il calcolo della DFT: la FFT . . . . . . . . . . . . . .
2.6.1 Le farfalle . . . . . . . . . . . . . . . . . . . .
2.6.2 Occupazione di memoria e bit reversal . . . .
Filtraggio di sequenze illimitate . . . . . . . . . . . .
2.7.1 Costo computazionale della FFT . . . . . . .
2.7.2 Segmentazione di sequenze illimitate . . . . .
Trasformata di Fourier in base 4 . . . . . . . . . . . .

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

INDICE

3.2 Ricostruzione di polinomi . . . . . . . . . . . . . .


3.3 Interpolatori derivati dal mantenitore . . . . . . . .
3.3.1 Interpolatore cubico troncato . . . . . . . .
3.3.2 Interpolatori con filtro ideale troncato . . . .
3.4 Rigidit e sovraelongazioni . . . . . . . . . . . . . .
3.5 La linea elastica o 00 spline00 . . . . . . . . . . . . . .
3.5.1 Analisi dello spline . . . . . . . . . . . . .
3.5.2 Lequazione dello spline . . . . . . . . . . .
3.5.3 La risposta allimpulso dello spline . . . . .
3.6 Il campionamento irregolare . . . . . . . . . . . . .
3.6.1 Conversione di frequenze di campionamento
3.6.2 Interpolazione irregolare con la funzione sinc
4 La
4.1
4.2
4.3
4.4

4.5
4.6
4.7

4.8
4.9

trasformata z
Introduzione: sequenze e polinomi . . . . . . . . .
Sistemi lineari discreti . . . . . . . . . . . . . . .
Sinusoidi campionate; zeri . . . . . . . . . . . . .
Il piano z . . . . . . . . . . . . . . . . . . . . . .
4.4.1 Le sequenze nel piano z . . . . . . . . . .
4.4.2 Zeri a fase minima e fase massima . . . . .

4.4.3 Sequenze ribaltate: A(z)


. . . . . . . . . .
4.4.4 Sequenze a fase minima, massima o mista
4.4.5 Trasformata di Fourier e trasformata z . .
4.4.6 Propriet della trasformata zeta . . . . . .
4.4.7 Durata di sequenze con varia caratteristica
Poli . . . . . . . . . . . . . . . . . . . . . . . . . .
Equazioni alle dierenze finite . . . . . . . . . . .
Filtri passa banda . . . . . . . . . . . . . . . . . .
4.7.1 Sfasatori puri . . . . . . . . . . . . . . . .
4.7.2 Oscillatori, divani, splines . . . . . . . . .
Serie geometriche troncate . . . . . . . . . . . . .
Appendice: Il calcolo dei residui . . . . . . . . . .

5 Filtri numerici
5.1 Introduzione . . . . . . . . . . . .
5.2 Finestre rettangolari e triangolari
5.3 Finestre cosinusoidali . . . . . . .
5.4 Altri tipi di finestre . . . . . . . .
vi

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

37
38
40
40
40
42
43
44
46
48
48
50

. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
di fase
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .

51
51
54
54
56
57
59
62
63
64
65
65
66
70
72
74
77
81
83

.
.
.
.

87
87
88
90
92

.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.

.
.
.
.

INDICE

5.5 Progetto con la tecnica MINIMAX . . . . . . . . . .


5.6 Lunghezza dei filtri FIR passa - basso . . . . . . . . .
5.7 Filtri IIR . . . . . . . . . . . . . . . . . . . . . . . . .
5.7.1 Derivazione numerica . . . . . . . . . . . . . .
5.7.2 La trasformazione bilineare . . . . . . . . . .
5.8 Linvarianza della risposta impulsiva . . . . . . . . .
5.9 Sintesi di filtri IIR dallautocorrelazione . . . . . . . .
5.9.1 Le equazioni di Yule Walker . . . . . . . . . .
5.9.2 Lautocorrelazione dai coecienti del filtro . .
5.9.3 Equazioni di Yule Walker in forma matriciale
5.9.4 La ricorsione di Levinson . . . . . . . . . . . .
5.9.5 Calcolo dei cn dagli ah,N ; la verifica di Schur .
5.9.6 La sintesi del filtro . . . . . . . . . . . . . . .
5.10 Filtri da combinazione di sfasatori puri . . . . . . . .
5.11 Filtri di Butterworth, Chebyshev, ellittici . . . . . . .
6 Campionamento in frequenza
6.1 Introduzione . . . . . . . . . . . . . . . . .
6.2 Progetto . . . . . . . . . . . . . . . . . . .
6.3 Campionamento in frequenza e finestratura
6.4 Eetti del ritardo . . . . . . . . . . . . . .
6.5 Quantizzazione dei coecienti . . . . . . .
6.6 Generalizzazioni . . . . . . . . . . . . . . .
7 Strutture canoniche e riverberanti
7.1 Strutture canoniche di filtri numerici
7.2 Quantizzazione dei coecienti . . . .
7.2.1 Sfasatori puri . . . . . . . . .
7.3 Strutture riverberanti: introduzione .
7.4 Relazione con i sistemi numerici . . .
7.5 Cascata di tronchi di linea . . . . . .
7.6 Il filtro a traliccio ricorsivo . . . . . .
7.7 La ricorsione di Levinson . . . . . . .
7.7.1 Aggiunta di tronchi di linea .
7.8 Calcolo dei coecienti di riflessione .
vii

.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

93
95
97
97
103
106
107
107
111
112
114
116
117
118
120

.
.
.
.
.
.

123
123
128
131
131
135
137

.
.
.
.
.
.
.
.
.
.

141
141
142
145
147
150
152
153
156
160
161

INDICE

8 Filtri polifase
8.1 Filtri per decimazione o interpolazione . . . .
8.2 Decimazione e interpolazione . . . . . . . . . .
8.2.1 I filtri polifase . . . . . . . . . . . . . .
8.3 Cascata di interpolazione e decimazione . . . .
8.4 Banchi di filtri . . . . . . . . . . . . . . . . . .
8.4.1 La matrice di modulazione . . . . . . .
8.5 La ricostruzione perfetta . . . . . . . . . . . .
8.5.1 Banchi di due filtri . . . . . . . . . . .
8.5.2 I filtri in quadratura a specchio (QMF)
8.5.3 Equivocazione e ricostruzione perfetta
8.6 Banchi di M filtri . . . . . . . . . . . . . . . .
8.7 Le trasformate lapped: la MDCT . . . . . . .

.
.
.
.
.
.
.
.
.
.
.
.

9 Quantizzazione dei segnali


9.1 La quantizzazione dei segnali . . . . . . . . . . .
9.1.1 Rumore di quantizzazione dei segnali . .
9.1.2 Retroazione dellerrore di quantizzazione
9.1.3 Eetti di trabocco (overflow) . . . . . . .
9.2 Quantizzazione e DFT . . . . . . . . . . . . . .
9.3 I cicli limite . . . . . . . . . . . . . . . . . . . .

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

165
165
167
177
178
179
179
182
184
186
187
190
191

.
.
.
.
.
.

195
195
196
200
203
204
205

10 Le trasformate di Hilbert e chirp z


10.1 Trasformate di sequenze causali . . . . . . . . . .
10.2 Sfasatori puri di /2 . . . . . . . . . . . . . . . .
10.3 Sequenze periodiche e segnali continui . . . . . . .
10.3.1 Singolarit nella trasformazione di Hilbert
10.4 Funzioni a fase minima . . . . . . . . . . . . . . .
10.5 Il segnale analitico . . . . . . . . . . . . . . . . .
10.6 La trasformata chirp z . . . . . . . . . . . . . .
10.7 Il segnale chirp . . . . . . . . . . . . . . . . . . .
10.8 Interpolazione con fattore qualsiasi . . . . . . . .

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

209
209
212
214
215
216
218
221
222
224

11 Processi casuali: generalit


11.1 Processi casuali discreti . . . . . . . . . . .
11.2 Matrici di covarianza di sequenze filtrate .
11.2.1 Matrici di covarianza di trasformate
11.3 Matrici di Toeplitz: autovalori . . . . . . .

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

227
227
229
232
237

viii

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

INDICE

11.4
11.5
11.6

11.7
11.8

11.3.1 Autovettori ed autovalori di matrici di covarianza


circolanti . . . . . . . . . . . . . . . . . . . . . . . 239
11.3.2 Ancora la densit di probabilit di un vettore casuale240
11.3.3 Un esempio numerico . . . . . . . . . . . . . . . . 241
Stime di autovalori di matrici di covarianza . . . . . . . . 244
Fluttuazione dei corsi dei titoli di borsa . . . . . . . . . . 247
Stima a massima verosimiglianza (Wikipedia) . . . . . . 248
11.6.1 Il metodo . . . . . . . . . . . . . . . . . . . . . . 248
11.6.2 Dicolt del metodo; stima di una media . . . . 251
11.6.3 La stima lineare MMSE . . . . . . . . . . . . . . 252
11.6.4 Stima della potenza di segnali . . . . . . . . . . . 253
Le direzioni di arrivo . . . . . . . . . . . . . . . . . . . . 257
11.7.1 Autocorrelazione di una sequenza spaziale . . . . 258
Appendici . . . . . . . . . . . . . . . . . . . . . . . . . . 259
11.8.1 Autocorrelazione e spettri per variabili continue . 259
11.8.2 Dimensione di variabili continue e discrete . . . . 260
11.8.3 Teorema del limite centrale . . . . . . . . . . . . 261

12 Analisi spettrale non parametrica


263
12.1 Introduzione . . . . . . . . . . . . . . . . . . . . . . . . . 263
12.2 Analisi spettrale non parametrica . . . . . . . . . . . . . 264
12.3 Risoluzione spettrale e dispersione . . . . . . . . . . . . . 266
12.3.1 La dispersione della stima spettrale . . . . . . . . 266
12.3.2 Polarizzazione della stima spettrale dovuta al troncamento dei dati . . . . . . . . . . . . . . . . . . 267
12.4 Il periodogramma . . . . . . . . . . . . . . . . . . . . . . 268
12.5 La stima dellautocorrelazione . . . . . . . . . . . . . . . 270
12.6 Errori da evitare . . . . . . . . . . . . . . . . . . . . . . 274
12.7 Modifiche del periodogramma . . . . . . . . . . . . . . . 275
12.7.1 Smussamento dello spettro . . . . . . . . . . . . . 275
12.7.2 Media di periodogrammi di sottosequenze . . . . 278
12.7.3 La tecnica WOSA . . . . . . . . . . . . . . . . . . 279
12.8 Sommario . . . . . . . . . . . . . . . . . . . . . . . . . . 280
12.9 Un esempio . . . . . . . . . . . . . . . . . . . . . . . . . 281
13 Analisi Spettrale Parametrica
285
13.1 Introduzione . . . . . . . . . . . . . . . . . . . . . . . . . 285
13.2 Analisi tutti zeri (MA) . . . . . . . . . . . . . . . . . . . 286
ix

INDICE

13.2.1 Troncamento della funzione di autocorrelazione


13.3 Analisi tutti poli (AR) . . . . . . . . . . . . . . . . . .
13.4 La stima spettrale AR . . . . . . . . . . . . . . . . . .
13.5 Un esempio . . . . . . . . . . . . . . . . . . . . . . . .
13.5.1 La stima della funzione di autocorrelazione . . .
13.5.2 Stima MA . . . . . . . . . . . . . . . . . . . . .
13.5.3 Stima AR . . . . . . . . . . . . . . . . . . . . .
14 La predizione lineare
14.1 Lerrore di predizione . . . . . . . . . . . . . . . . . . .
14.2 Predizione lineare e analisi AR . . . . . . . . . . . . . .
14.2.1 Allungamento del predittore . . . . . . . . . . .
14.3 La ricorsione di Levinson . . . . . . . . . . . . . . . . .
14.3.1 Vantaggi computazionali . . . . . . . . . . . . .
14.4 Il filtro a traliccio non ricorsivo . . . . . . . . . . . . .
14.5 Descrizioni alternative dellautocorrelazione . . . . . .
14.6 Ordine del predittore . . . . . . . . . . . . . . . . . . .
14.6.1 Risoluzione spettrale . . . . . . . . . . . . . . .
14.6.2 Lunghezza dei dati e criterio di Akaike . . . . .
14.7 Condizionamento di R . . . . . . . . . . . . . . . . .
14.8 Stima con rumore . . . . . . . . . . . . . . . . . . . . .
14.8.1 Il caso 2z = 0 . . . . . . . . . . . . . . . . . . .
14.8.2 Il caso 2z 6= 0 . . . . . . . . . . . . . . . . . . .
14.8.3 Predizione, stima e sbiancamento: un riassunto
14.9 La deconvoluzione nel dominio delle frequenze . . . . .
14.9.1 Deconvoluzione predittiva nelle frequenze . . . .
14.10Le equazioni Y - W nel dominio degli autovettori . . .

.
.
.
.
.
.
.

289
291
294
295
295
295
296

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

301
303
304
305
307
310
310
311
314
314
316
317
318
322
323
323
327
330
333

15 Stima lineare ottima


337
15.1 Fattore di scala di un vettore noto . . . . . . . . . . . . . 337
15.1.1 Eetti del rumore colorato . . . . . . . . . . . . . 339
15.1.2 Stima di una costante in rumore bianco . . . . . . 341
15.1.3 Stima di una costante in rumore colorato . . . . . 341
15.1.4 Stima di una pendenza in rumore bianco . . . . . 344
15.2 Stime di una frequenza . . . . . . . . . . . . . . . . . . . 345
15.2.1 Stima lineare di una rampa di fase . . . . . . . . 345
15.2.2 Discussione . . . . . . . . . . . . . . . . . . . . . 346
15.2.3 Stima non lineare di una frequenza in rumore colorato347
x

INDICE

15.2.4 Eetti della lunghezza limitata dei dati . . . . . . 349


15.3 Stima di processi multidimensionali . . . . . . . . . . . . 350
15.3.1 Stima simultanea di una costante e di una pendenza352
15.4 La separazione di sorgenti . . . . . . . . . . . . . . . . . 352
16 Filtraggio adattativo
16.1 La tecnica di Widrow e Ho . . . . . . . . . . .
16.2 Dispersione degli autovalori . . . . . . . . . . .
16.3 Rapidit della convergenza . . . . . . . . . . . .
16.3.1 Dispersione del filtro errore gi . . . . . .
16.4 Ottimizzazione del passo di aggiornamento . . .
16.4.1 Genesi e collasso delle societ idrauliche
16.5 Un esempio di filtro adattativo . . . . . . . . . .

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

17 Le direzioni di arrivo
17.1 DOA con il periodogramma . . . . . . . . . . . . . .
17.2 Stima AR: la risoluzione angolare . . . . . . . . . . .
17.2.1 2 sensori, una sorgente . . . . . . . . . . . . .
17.2.2 N+1 sensori, una sorgente . . . . . . . . . . .
17.2.3 Numero dei sensori della schiera . . . . . . . .
17.3 Reiezione direzionale del disturbo . . . . . . . . . . .
17.4 Stima spettrale di Capon (minimamente polarizzata)

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

357
359
362
364
364
371
372
373

.
.
.
.
.
.
.

377
379
380
381
381
385
387
389

18 Il segnale vocale
18.1 Tecniche di codifica del segnale vocale .
18.2 Codifica delle forme donda . . . . . .
18.2.1 La Modulazione Delta . . . . .
18.2.2 LADPCM . . . . . . . . . . . .
18.2.3 La codifica lineare predittiva . .
18.3 La codifica del segnale musicale (MP3)
18.4 Cenni al riconoscimento del parlato . .

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

393
396
396
397
400
401
403
405

19 Segnali bidimensionali
19.1 Le singolarit a 2D . . . . . . . . .
19.2 Sistemi lineari 2D . . . . . . . . . .
19.2.1 Le funzioni cilindriche . . .
19.3 Le sinusoidi 2D . . . . . . . . . . .
19.4 Lantitrasformazione di Fourier 2D

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

407
407
410
412
413
414

xi

.
.
.
.
.

.
.
.
.
.

INDICE

19.4.1 Funzioni a simmetria circolare


19.5 Propriet della trasformazione . . . . .
19.5.1 Funzioni cilindriche e separabili
19.6 Filtri ideali 2D . . . . . . . . . . . . .
19.7 Filtri a ventaglio . . . . . . . . . . . .

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

20 Filtri 2D di natura fisica


20.1 Lequazione dei potenziali . . . . . . . . . . .
20.1.1 Continuazione in basso e stima lineare
20.2 La propagazione di onde . . . . . . . . . . . .
20.2.1 Il problema del telerilevamento . . . .
20.2.2 Le onde piane . . . . . . . . . . . . . .
20.3 Il principio della fase stazionaria . . . . . . . .
20.4 Il chirp, la lente sottile e lottica di Fourier . .
20.5 Lequazione della diusione . . . . . . . . . .

.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.

.
.
.
.
.
.
.
.

21 Sequenze 2D
21.1 Lequivocazione a 2D . . . . . . . . . . . . . . . . .
21.1.1 Eetti di moir . . . . . . . . . . . . . . . .
21.1.2 Il campionamento esagonale . . . . . . . . .
21.2 Il campionamento del segnale televisivo . . . . . . .
21.2.1 Equivocazione spazio - temporale . . . . . .
21.2.2 Lo spettro del segnale televisivo campionato
21.3 Ricostruzione 2D . . . . . . . . . . . . . . . . . . .
21.4 Trasformata di Fourier discreta a 2D . . . . . . . .
21.5 Filtraggi con prodotto di trasformate . . . . . . . .
21.6 Filtri 2D . . . . . . . . . . . . . . . . . . . . . . . .
21.6.1 La trasformazione di Mc Clellan . . . . . .
21.6.2 Filtri per la continuazione di campo . . . . .
21.7 Interpolazione mediante stima lineare . . . . . . . .
21.7.1 Processi casuali a 2D . . . . . . . . . . . . .
21.7.2 Spettri di potenza a 2D . . . . . . . . . . .
21.7.3 Stima lineare a 2D . . . . . . . . . . . . . .
21.7.4 Stima lineare ed interpolazione . . . . . . .
21.8 Poligoni di Voronoi e triangoli di Delaunay . . . . .
21.9 Il campionamento a 3D . . . . . . . . . . . . . . . .
xii

.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.

415
418
418
420
421

.
.
.
.
.
.
.
.

423
423
425
427
429
430
434
435
440

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

443
444
445
447
450
451
453
454
458
459
459
460
462
463
464
464
465
467
468
470

INDICE

22 La Tomografia
473
22.1 Introduzione . . . . . . . . . . . . . . . . . . . . . . . . . 473
22.2 Trattamento nei numeri donda . . . . . . . . . . . . . . 474
22.3 Il sinogramma . . . . . . . . . . . . . . . . . . . . . . . . 479
22.4 La retroproiezione . . . . . . . . . . . . . . . . . . . . . . 481
22.5 La retroproiezione filtrata . . . . . . . . . . . . . . . . . 483
22.5.1 Equivocazione angolare . . . . . . . . . . . . . . . 486
22.5.2 Retroproiezioni e numeri donda . . . . . . . . . . 487
22.5.3 Proiezioni incomplete o mosse . . . . . . . . . . . 491
22.6 Tomografia 3D . . . . . . . . . . . . . . . . . . . . . . . 492
22.7 Tecniche iterative . . . . . . . . . . . . . . . . . . . . . . 494
22.7.1 Retroproiezione e gradiente . . . . . . . . . . . . 494
22.7.2 Retroproiezione e trasposizione . . . . . . . . . . 495
22.7.3 Interpretazione stocastica della pseudo inversione 497
22.7.4 Interpretazione tomografica del gradiente . . . . . 498
23 Tecniche di ottimizzazione
23.1 Il gradiente . . . . . . . . . . . . . . . . . . . . .
23.2 Il gradiente coniugato . . . . . . . . . . . . . . . .
23.2.1 Ortogonalit coniugata e incorrelazione . .
23.2.2 Connessione con la ricorsione di Levinson .
23.3 Gradiente e gradiente coniugato . . . . . . . . .

xiii

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

501
501
503
503
506
509

Prefazione

Il corso di Elaborazione numerica dei segnali viene tenuto per gli


allievi del corso di laurea in Ingegneria delle Telecomunicazioni al Politecnico di Milano dal 1985. Gli allievi hanno seguito in precedenza un corso
sui segnali, in cui vengono studiati i sistemi lineari, la trasformazione
di Fourier continua e discreta, i principi di teoria delle probabilit ed i
processi stocastici. Inoltre, nel successivo biennio della laurea specialistica in Telecomunicazioni sono disponibili molti altri corsi dove vengono
sviluppate con maggiore respiro le possibili applicazioni, siano esse dedicate alle immagini ed al segnale audio, al telerilevamento radar, ai segnali
geofisici. La verifica viene fatta con un esame scritto; il compitino a met
semestre copre il programma fino alla stima spettrale esclusa.
Nel testo, ho cercato per quanto possibile di partire da considerazioni
elementari dando immagini intuitive (spesso scritte in corsivo) di molti
tra gli argomenti trattati. Certamente la trattazione analitica una
guida pi sicura e la via intuitiva non sempre la pi semplice, ma poi
pi facile da memorizzare. Mi auguro poi che lo studente possa avere
strumenti di tipo ingegneristico pi che matematico per comprendere
le relazioni intercorrenti tra le ipotesi presunte ed i risultati ottenuti e
possa valutare cosa pu accadere nei frequenti casi in cui queste ipotesi
non sono pi attendibili.
Il corso di prevalente natura metodologica, anche se vengono sempre
proposte delle applicazioni.
Questo testo stato fatto per essere un ausilio alla didattica in aula,
piuttosto che uno strumento per lautodidattica. In questo caso, consiglio di cominciare con i libri di McClellan o di Mitra, inseriti tra i riferxiii

Prefazione

imenti bibliografici, ricchi di esempi MAT LAB T M . Il testo di Proakis


e Manolakis pi completo, ma pu risultare pi dicile ad una prima
lettura.
In questo testo non si troveranno esercizi perch questi, insieme a
complementi e a numerosi testi desame sono disponibili sul sito
http : //www.elet.polimi.it/dsp/courses/ens_l1/index.htm
.
Qu, gli studenti troveranno indirizzi di posta elettronica per semplificare linterazione docenti/studente, esercizi vari con i relativi codici
MATLABT M , data e luogo degli esami, esiti, soluzioni dei compiti, e
materiale utile in generale.
Aggiungo in fine una breve bibliografia commentata perch lo studente possa trovare riferimenti completi per ogni argomento del corso.

Bibliografia.
Mitra, S., 1998, Digital Signal Processing, a computer - based approach, McGraw-Hill, pp 864. Libro elementare, ricco di esempi basati
su MATLABT M .
Mc Clellan, J., Schafer, R., Yoder, M., 1998, DSP first, A Multimedia Approach, Prentice Hall, pp.514. Libro molto elementare, con esempi
basati su MATLABT M .
Proakis J., Manolakis D., 1995: Digital Signal Processing, Prentice
Hall, 947 pp. e quattro appendici. Libro introduttivo didattico, semplice
ma molto diuso.
Mitra S., Kaiser J., 1993: Handbook for Digital Signal Processing,
Wiley Interscience, 1168 pp. Completo manuale che copre ampiamente
il testo.
Fliege, N., 1994, Multirate Digital Signal Processing, J. Wiley &
Sons, pp. 340. Un buon libro sui filtri polifase e sui problemi di decimazione e interpolazione.
Ingle, V., Proakis, J., Digital Signal Processing Using MATLABT M ,
Thomson, 2007: Un libro sulla prima parte del corso, con un gran numero
di esercizi.

xiv

Capitolo 1
Il Campionamento
1.1

Introduzione

I segnali naturali sono definiti per valori continui della variabile tempo
o spazio: possibile misurare il loro valore in ogni istante o posizione,
in un intervallo assegnato. Volendo fare unelaborazione necessario
eettuare un campionamento e cio passare da una funzione definita
su un asse (ad esempio spaziale) continuo, ad una sequenza di numeri
corrispondenti alle misure del segnale in posizioni assegnate (il segnale
campionato). Loperazione di campionamento corretta se possibile
ricostruire il segnale continuo a partire dai campioni misurati. E ovvio
che in generale ci impossibile.
Per fissare le idee, si consideri un sistema di allarme antincendio
(le dimensioni possono essere qualsiasi: una foresta, un edificio, un sistema elettronico); necessario campionare e controllare le temperature
ovunque per lanciare lallarme quando necessario. Se avessimo a disposizione un solo ambiente, illimitato, sarebbe ragionevole spaziare i sensori di temperatura ad intervallo regolare, dipendente dalle dimensioni
dei focolai di incendio che si vogliono poter rivelare (lordine di grandezza dellintervallo di campionamento sar il chilometro per le foreste, il
decimetro per i sistemi elettronici).
Usualmente, si suppone di dover campionare un segnale definito su
un dominio spaziale (o temporale) illimitato e di essere in condizioni di
stazionariet, e cio in una situazione in cui le caratteristiche statistiche
del segnale studiato non cambino con lo spazio (o con il tempo). Sia
1

CAPITOLO 1 IL CAMPIONAMENTO

x(t) il segnale da campionare (nel caso precedente, la temperatura x,


funzione della posizione t del sensore); il segnale sia reale e supponiamo
di volerne fare misure ad intervallo T ; cio si supponga nota la sequenza
xn ; 0 n N 1:
(1.1)
xn = x(nT + To )
Il segnale continuo x(t) ricostruito a partire dalla sequenza dipender in
generale da To e cio dalla fase del reticolo di campionamento (nel caso del
sistema antincendio, i sensori di temperatura siano disposti a distanza
regolare T , e sia T0 lascissa del primo sensore). Il campionamento
corretto quando la ricostruzione non dipende da To (vogliamo valutare
correttamente la consistenza di un incendio anche se il focolaio capita tra
due sensori).
Gli errori della ricostruzione sono chiamati equivocazione (aliasing)
e intuitivamente si possono dividere in due categorie: errori dovuti alla
mancata registrazione di un evento, che caduto tra due misure (lincendio non osservato) o viceversa misure di eventi che, pur essendo di
durata molto limitata, vengono interpretati come eventi lunghi circa T
(vedi fig. 1.1) (si pensi al detto popolare prendere lucciole per lanterne
e cio credere grande (una lanterna) una cosa piccola (la lucciola)). Un
modo ovvio per controllare il corretto campionamento di un segnale
nel verificare che il segnale continuo ricostruito non dipende dalla fase
(listante iniziale) della trama del campionamento. Se si vogliono evitare
fenomeni di equivocazione sar opportuno che anche gli eventi di durata
minima siano campionati almeno due volte perch siano delimitati (nel
tempo o nello spazio) e ne venga evitata sia la perdita che lesagerazione.
Diventa quindi essenziale garantire che nel segnale misurato ad intervallo
T siano assenti eventi brevi che creerebbero equivocazione. Questo si ottiene mediando (smussando) il segnale prima del campionamento e cio
prefiltrando il segnale da campionare (filtraggio antiequivocazione
o antialias); in altre parole, lo strumento la cui misura destinata ad
essere campionata ad intervallo T deve essere sensibile non al valore
locale del segnale, bens al valore medio del segnale in quellintervallo.
In questo modo lerrore di equivocazione viene eliminato sistematicamente. Non sempre ci facile o possibile. Ad esempio, sarebbe facile
far equivocare il sistema dallarme antiincendio considerato precedentemente, anche se questo fosse complesso; basterebbe accostare un fiammifero ad un sensore. Infatti in questo caso il campione di temperatura
2

1.1 INTRODUZIONE

Figura 1.1: Errori di ricostruzione di un segnale dovuti ad un


campionamento insuciente

misurato dal sensore avrebbe valore elevato e molto dierente da quello


medio dellambiente; tuttavia, se vi un solo sensore per intervallo, il
sistema ricostruisce da quella misura la temperatura di tutto lintervallo,
equivoca e lancia lallarme.
Nel caso in cui si operi su segnali funzione del tempo, il filtraggio anti
equivocazione (antialias) facile. Infatti implicita la disponibilit di
tutti i valori del segnale, per qualsivoglia istante di misura. Non aatto
cos se si considerano variabili funzione dello spazio: in questo caso ogni
campione del segnale comporta il costo di una postazione di misura. Il
filtraggio anti equivocazione deve essere fatto usando strumenti opportuni che fanno a basso costo la media del segnale nellintervallo; non
deve essere fatto campionando fittamente (il che sarebbe costosissimo)
facendo seguire eventualmente loperazione di media e il successivo cam3

CAPITOLO 1 IL CAMPIONAMENTO

pionamento a frequenza inferiore (sottocampionamento). Una misura


in genere ben pi costosa che non la sua memorizzazione.
Passando ad unanalisi quantitativa, se si campiona un segnale ad
intervallo T a partire da un istante qualsiasi T0 , sar necessario, per evitarne lequivocazione, rimuovere tutte le componenti a frequenza superiore alla frequenza di Nyquist fN , met della frequenza di campionamento
fc ,
fc
fN =
(1.2)
2
con un filtro opportuno. Infatti il segnale campionato equivalente ad
una sequenza di impulsi ideali con ampiezze proporzionali a quelle dei
campioni {xn }, equispaziati nel tempo (fig.1.2):
xc (t) = x(t)

+
X

n=

(t nT T0 ) =

+
X

n=

x(nT )(t nT T0 )

(1.3)

Moltiplicare nel dominio del tempo il segnale originario per il pettine


di impulsi equivale a fare la convoluzione delle trasformate nel dominio
delle frequenze; la trasformata del pettine di impulsi spaziati di T un
pettine di impulsi nelle frequenze, spaziati di fc = 1/T . In formule
si ha, indicando con la freccia il passaggio nel dominio coniugato delle
frequenze:
+
X

+
1 X j2mfc T0
(t nT T0 )
e
( 2mfc );
T m=
n=

(1.4)

La trasformata di Fourier di xc (t) quindi:


Xc () =

+
1 X j2mfc T0
xc (t)e
dt = X()
e
( 2mfc ) =
T m=
(1.5)
+
1 X j2mfc T0
=
e
X( 2mfc )
(1.6)
T m=
jt

Con X(), Xc () sono rispettivamente indicate le trasformate di Fourier


di x(t), xc (t) e con il prodotto di convoluzione. Le repliche si sommano
con sfasamenti proporzionali a T0 .
4

1.1 INTRODUZIONE
X(f)

Trasformata del segnale analogico x(t)

xc(t)

Segnale campionato
Xc(f)

fn fc

2fc

Trasformata del segnale campionato

Figura 1.2: Relazione tra trasformata del segnale continuo e trasformata


del segnale campionato
Rimuovendo da x(t) tutte le componenti a frequenza superiore a quella di Nyquist, si impedisce la sovrapposizione, nel dominio delle frequenze
dello spettro originale con le sue repliche centrate a mfc ; m 6= 0 e quindi
si permette la ricostruzione.
Un altro tipico eetto dellequivocazione il fenomeno per cui una
sinusoide di frequenza f qualsiasi, se campionata ad intervallo T qualsiasi, pu essere ricostruita (equivocando) come una sinusoide della stessa
ampiezza ma a frequenza feq , inferiore alla frequenza di Nyquist.
m
(1.7)
0 feq fN
feq = f ;
T
Per rendersi conto del fenomeno, basta pensare di illuminare con una luce
5

CAPITOLO 1 IL CAMPIONAMENTO

regolarmente intermittente un disco met bianco e met nero che ruoti


a velocit angolare costante. Se due lampi di luce successivi mostrano
il disco nella stessa posizione, langolo di rotazione pu essere stato nullo o un qualsiasi numero intero di giri m; quindi si ha incertezza sulla
velocit angolare eettiva del disco, a meno che non si abbiano delle
informazioni in pi, ad esempio sullintervallo in cui si prevede sia la velocit di rotazione; questo punto sar discusso tra poco nel paragrafo sul
campionamento passa banda.

1.2

Ricostruzione di un segnale

Loperazione di ricostruzione di un segnale continuo dalla sequenza dei


suoi campioni (interpolazione) verr analizzata nel prossimo capitolo;
per ora suciente osservare che dallo spettro Xc () sembra semplice

ottenere lo spettro del segnale ricostruito X()


rimuovendo con un filtro ideale passa basso tutte le repliche di Xc () centrate alle frequenze
mfc ; m 6= 0 (fig. 1.3). Che la cosa non sia poi cos facile lo si vedr in
$
X(f)

-fn

fn

Figura 1.3: Spettro del segnale ricostruito, ottenuto rimuovendo le


repliche dello spettro X(f) con un filtro ideale
seguito; qui basti osservare che il filtro ideale ha una risposta allimpulso
6

1.3 CAMPIONAMENTO PASSA BANDA

di durata illimitata; se la sequenza a disposizione di lunghezza limitata,


come sempre accade, dovremo risolvere il problema delle condizioni ai
limiti e cio cosa ipotizzare al di fuori dellintervallo in cui la funzione
nota, per eettuare una ricostruzione corretta.

1.3

Campionamento passa banda

Nel paragrafo precedente non stata fatta alcuna ipotesi sullo spettro
di x(t) tranne che esso occupi frequenze inferiori a fN , condizione necessaria per ottenere una corretta ricostruzione; inoltre, si supposto x(t)
reale. Generalizzando invece il caso precedentemente introdotto (il disco
rotante) del campionamento di una sinusoide a frequenza maggiore della
X(f)

fmin

fmaxf

X(f)

Xr(f)

-B

Figura 1.4: Spettri relativi al campionamento passa-banda


frequenza di Nyquist che ruota di un angolo > tra un campione ed
7

CAPITOLO 1 IL CAMPIONAMENTO

il successivo, supponiamo che x(t) sia un segnale complesso che occupi


una banda B compresa tra le frequenze B << fmin fmax = fmin + B;
(lo spettro non occupi le frequenze negative).
X(f ) 6= 0;

fmin f fmax ;
fmax + fmin
f0 =
2

fmax fmin = B;

(1.8)

E ovvio che usare come frequenza di campionamento 2fmax sarebbe uno


spreco; possiamo operare in vario modo. Se conosciamo fmin e moltiplichiamo il segnale x(t) per la sinusoide complessa ej2fmin t otteniamo
un segnale complesso x0 (t) il cui spettro contenuto tra 0 e B e non ha
componenti a frequenze negative, come gi osservato.
X 0 (f ) 6= 0;

0f B

(1.9)

Lo spettro della parte reale di questo segnale occupa le frequenze da


B B; lo spettro della parte immaginaria occupa lo stesso intervallo
di frequenza; sommato a quello della parte reale, risultano eliminate le
componenti spettrali a frequenze negative.
Campionando ad intervallo 1/2B la parte reale e cio usando 2B
campioni per secondo, otterremo una sequenza da cui potremmo fare la
ricostruzione del segnale originale (fig. 1.4).
Similmente, potremmo centrare lo spettro del segnale convertito sullorigine e cio moltiplicare il segnale x(t) per la sinusoide complessa
ej2f0 t e ottenere un segnale complesso x00 (t) di banda B/2
X 00 (f ) 6= 0;

B
B
f
2
2

(1.10)

Questo segnale da campionare con B campioni complessi al secondo;


in un modo o nellaltro, si vede che un segnale di banda B si traduce in
2B numeri reali al secondo. E tuttavia necessario, per potere fare correttamente il campionamento passabanda, conoscere a priori lintervallo
fmin fmax .

1.4

Il filtro antialias

In questa sezione, discuteremo brevemente del dimensionamento di un


filtro antiequivocazione. Supponiamo di avere un segnale sinusoidale a
8

1.4 IL FILTRO ANTIALIAS

pulsazione , da campionare ad intervallo T .


x(t) = ejt ; xn = ejnT
Ovviamente, il filtro antiequivocazione ideale :
h(t) =

sin(t/T )
t/T

H() = T ; || < /T

di lunghezza illimitata ma di dicile adozione nella pratica; infatti, per


determinare un campione del segnale, si dovrebbe conoscerne landamento per tutti i valori del tempo. Il pi semplice filtro antialias il
mantenitore, che ha bisogno dei dati solo nellintervallo di durata T, :
|t| < T /2

h0 (t) = 1;

sin(f T )
f T
questo filtro tuttavia attenua bene solo le componenti del segnale a frequenza 1/T e multiple e non, come sarebbe necessario, tutte le componenti a frequenze al di sopra della frequenza di Nyquist, 1/2T . Un filtro
pi accettabile un filtro gaussiano
H0 () = T

hg (t) = et /2

2 2
Hg () = 2 e /2

di lunghezza limitata e di banda limitata. Per avere un dimensionamento, si pu pensare di imporre unattenuazione di 40dB alla frequenza di
campionamento:
e

2 2 /2

= e4,6 ; =

2
= .48T
T

Nei tempi si vede che:


hg (T ) = .11
e cio che il filtro si estende fino ai campioni adiacenti. Volendo invece
unattenuazione di 40 dB alla frequenza di Nyquist, la banda si dimezza,
la durata raddoppia e si ha:
hg (T ) = .58;

hg (2T ) = .11;
9

CAPITOLO 1 IL CAMPIONAMENTO

In altre parole, un filtro antialias che sopprima abbastanza bene le componenti alla frequenza di Nyquist, ha approssimativamente una forma triangolare e una durata di circa 4 campioni. Peraltro, un filtro triangolare
di base 4 campioni ha funzione di trasferimento:
2

sin(4fT )
16T 2
H() =
4fT
e alla frequenza di Nyquist vale:

H( ) = .025H(0)
T
e cio circa -32dB rispetto al valore a frequenza 0.

10

Capitolo 2
La trasformata di Fourier
discreta
2.1

Campionare in tempo e in frequenza

Consideriamo una sequenza di N impulsi di ampiezze xn , 0 n N 1,


e la loro trasformata di Fourier:
X(f ) =

N1
X

xn ej2f nT

(2.1)

n=0

Poich la X(f ) trasformata di una sequenza di impulsi e quindi di un


segnale campionato, funzione periodica della frequenza, con periodo
1/T . Se campioniamo anche X(f ) nelle frequenze ad intervallo f la
sequenza di impulsi si replicher nei tempi ad intervallo 1/f . Scegliendo
f = 1/NT le repliche della sequenza di impulsi non si sovrappongono,
ed il campionamento anche nel dominio della frequenza non crea equivocazione. Tuttavia, linfinita ampiezza degli impulsi, sia nel dominio delle
frequenze che nel dominio dei tempi, correlativa dellillimitata periodicit delle funzioni nellaltro dominio e pertanto di unenergia illimitata,
complica inutilmente il problema. E peraltro intuitivo che debba esistere
una relazione tra le N ampiezze dei campioni nel dominio dei tempi
che quelle dei campioni nel dominio trasformato delle frequenze.
Definiremo ora una trasformazione lineare, la trasformazione discreta di Fourier (in inglese: Discrete Fourier Transform DFT); essa lega
una sequenza di N campioni complessi (non pi impulsi ma numeri)
11

CAPITOLO 2 LA TRASFORMATA DI FOURIER DISCRETA

ad unaltra sequenza di N numeri complessi. Questa seconda sequenza corrisponde peraltro alle ampiezze degli impulsi di cui costituita
la trasformata di Fourier della sequenza di impulsi originaria; gli uni
(nel dominio dei tempi) sono distanti tra loro dellintervallo T e gli altri
(nel dominio delle frequenze) dellintervallo 1/NT . Dimostreremo che
la trasformazione cos definita invertibile; peraltro, la cosa intuibile,
visto che le due operazioni di campionamento non provocano equivocazione. Quindi, la trasformata di Fourier discreta di una sequenza di N
numeri complessi costituita da altrettanti numeri complessi che danno
una rappresentazione alternativa della sequenza data nel dominio delle
frequenze, come somma di altrettante sinusoidi.
La coppia di relazioni che legano una sequenza alla sua trasformata
di Fourier discreta possono essere derivate sia direttamente, sia dalla
trasformata di Fourier consueta sostituendo alle variabili continue t, f le
variabili discretizzate nT, kf . La trasformata di Fourier consueta :
Z
X(f ) =
x(t)ej2f t dt
(2.2)

Lintegrale diventa una sommatoria, se la x(t) una somma di impulsi ai


tempi nT : il fattore T servirebbe poi anche a ricordare la dimensionalit
dell integrale di Fourier.
X(f ) = T

+
X

xn ej2f nT

(2.3)

n=

Tuttavia, nel testo useremo sempre la definizione di formula (2.1). Inoltre


in questo caso la X(f ) periodica di periodo 1/T ; infatti:
(2.4)

X(f + m/T ) = X(f )

Se poi la funzione X(f ) campionata a intervallo f = 1/NT la sequenza di impulsi di ampiezze {xn } replicata con periodo NT . Definiamo
allora come Trasformata di Fourier Discreta di una sequenza di N numeri
complessi, la sequenza di N numeri complessi:
X(kf ) = Xk =

N
1
X

j2kf nT

xn e

n=0

N1
X
n=0

12

xn WNnk ;

(2.5)

2.2 PROPRIET DELLA DFT

WN

2
= exp j
N

Si verifica che la Trasformazione discreta di Fourier invertibile e la


antitrasformata :
N 1
1 X
xn =
X(k)WNnk
(2.6)
N k=0

Per convincersene, basta applicare il principio della sovrapposizione degli


eetti e quindi limitarsi a supporre che la sequenza da trasformare {
xn }sia
costituita da un solo impulso ad un istante qualsiasi:
xn = 1; n = n0 ; xn = 0; n 6= n0
Allora:
ek =
X

N1
X

xn WNnk = WNn0 k

n=0

N 1
N1
N1
1 X e nk
1 X n0 k nk
1 X (nn0 )k
Xk WN =
WN
WN =
W
= xn
N k=0
N k=0
N k=0 N

Infatti, il versore WN corrisponde ad una rotazione di un angolo pari a


2/N; se n 6= n0 questo versore fa un numero intero di giri e la somma
genera un poligono chiuso e quindi a somma zero. Se invece n = n0 il
versore non si sposta dal valore unitario ed il risultato ovvio.

2.2

Propriet della DFT

La discretizzazione dellintegrale di Fourier comporta un fattore di dimensione [T ] che per si omette nella definizione consueta della trasformata di
Fourier discreta (DFT). Nel seguito cercheremo per di ricordare sempre
lorigine fisica della trasformazione e quindi ci riferiremo alle dimensionalit originali degli assi di frequenze e tempi, per permettere un pi ecace
uso dellintuizione. Nel dominio trasformato (che continuiamo pertanto
ad indicare come dominio delle delle frequenze), vista la periodicit della
trasformata, si osserva che i valori dellindice 0 k N/2 1 corrispondono alle frequenze positive; i valori N/2 k N 1 corrispondono alle
frequenze negative; in particolare, k = N 1 corrisponde alla frequenza
13

CAPITOLO 2 LA TRASFORMATA DI FOURIER DISCRETA

f = 1/NT ; la frequenza di Nyquist corrisponde al valore dellindice


N/2 se N pari.
Similmente a quanto accade per la trasformata di Fourier continua si
hanno diverse relazioni utili, tra cui la relazione di Parseval:
N1
N1
X
1 X
2
|X(k)| =
|xn |2
N k=0
n=0

(2.7)

il ritardo (circolarizzato: x(n + N) = xn ):


xn+m X(k)WNmk

(2.8)

la convoluzione circolare:
N1
1 X
xm ynm X(k)Y (k)
N n=0

(2.9)

il coniugio e linversione dellasse temporale:


xn X (k)

2.3

(2.10)

Filtraggi con la DFT

Abbiamo visto che la trasformazione di Fourier discreta corrisponde alla


decomposizione di una sequenza di N campioni complessi nella somma
di N sinusoidi complesse di frequenze k/NT ; 0 k N 1; possibile
convolvere due sequenze entrambe di N campioni moltiplicando le
loro trasformate di Fourier.
Bisogna per ricordare (o verificare, se non si vuole sempre risalire alle
origine fisiche della trasformazione) che cos si realizza una convoluzione
periodica delle due sequenze; infatti, essendo gli spettri campionati nelle
frequenze, le sequenze di impulsi sono replicate nel tempo. Inoltre, il
prodotto degli spettri campionati ha significato solo se i campioni nel
dominio delle frequenze sono rilevati alle stesse frequenze, e pertanto le
due sequenze (nei tempi e nelle frequenze) devono avere eguale numero
di campioni, perch loperazione di prodotto abbia senso fisico.
Poi, il prodotto dei due spettri corrisponde alla convoluzione delle
due sequenze originali, periodicizzate e cio replicate dopo N campioni;
14

2.3 FILTRAGGI CON LA DFT

la sequenza risultante sar ancora una sequenza periodica su N campioni, diversa dalla sequenza di 2N 1 campioni corrispondente alla
convoluzione aperiodica delle due sequenze. Tutto passa quindi come
se lasse temporale fosse circolare e il risultato della convoluzione periodica inquinato dal mescolamento dei primi e degli ultimi campioni della
sequenza, come se fossero vicini tra di loro.
Anche se in alcuni casi (sistemi in coordinate polari) lasse circolare
pu essere utile, in generale interessano solo convoluzioni aperiodiche;
anchesse sono possibili con la trasformata di Fourier discreta a patto di
usare accortezze opportune o di accettare delle approssimazioni.

2.3.1

Convoluzioni aperiodiche: sequenze limitate

Si voglia eettuare la convoluzione di una sequenza {xn } lunga kN campioni, (si pensi a kN grande, dellordine di migliaia di campioni) con un
filtro {hm } di lunghezza M campioni, con M dellordine delle centinaia.
Come prima cosa, abbiamo osservato che prima della trasformata di
Fourier si devono portare le due sequenze ad avere eguale lunghezza,
perch le due trasformate siano campionate agli stessi valori della frequenza. Per fare ci aggiungiamo M 1 campioni nulli (che indicheremo
con zeri, sperando che non vi sia confusione con gli zeri della trasformata
z che non hanno nulla a che vedere) alla sequenza lunga N ed N 1 zeri
alla sequenza lunga M. Dopo questa operazione di allungamento con
zeri (zero padding, in inglese) le due sequenze hanno eguale lunghezza
N + M 1 e si procede alle loro trasformate di Fourier (fig. 2.1).
Poi si moltiplicano le trasformate (che noi indicheremo spesso come
gli spettri) e si antitrasforma; il risultato la convoluzione periodica delle
due sequenze allungate con zeri e quindi esattamente la convoluzione
aperiodica delle due sequenze originali. Infatti aggiungendo zeri abbiamo
creato lo spazio, per fare s che la convoluzione non si riavvolgesse sulla
parte iniziale dei dati.

2.3.2

Sequenze illimitate: overlap-save; overlapadd

Qualora, come spesso accade, la sequenza originaria di lunghezza illimitata, per procedere alla convoluzione con un filtro di lunghezza M
15

CAPITOLO 2 LA TRASFORMATA DI FOURIER DISCRETA


xn

z eri ag g iu n ti

N
M -1
hn

z eri ag g iu n ti

M
N -1
y n= x n h n

M + N -1

Figura 2.1: Convoluzione aperiodica con la DFT


dobbiamo scegliere tra due metodi simili ma alternativi per eettuare
la convoluzione aperiodica dellintero segnale. I metodi sono chiamati
Overlap and add e Overlap and save. In sostanza in entrambi i casi
si deve:
a) segmentare il segnale di lunghezza illimitata in sottosequenze lunghe
N campioni,
b) tenere conto degli eetti della convoluzione periodica, nel moltiplicare le trasformate di segnale e filtro.
Supponendo che il filtro occupi i primi M campioni della sequenza, si
pu:
Overlap and add: azzerare gli ultimi M 1 campioni della sequenza
lunga N, moltiplicare gli spettri ed antitrasformare. Lantitrasforma16

2.3 FILTRAGGI CON LA DFT


Metodo Overlap and Add

Secondo pezzo del segnale


da convolvere

Risultato della
convoluzione
Primo pezzo del segnale da
convolvere

N-M+1
M-1

M-1
N-M+1

OVERLAP and ADD

Metodo Overlap and Save

Risultato della
convoluzione

segnale da convolvere

M-1

M-1

N
N

= porzione da scartare per ogni sequenza filtrata

Figura 2.2: Filtraggio di sequenze illimitate con la DFT


ta contiene la convoluzione corretta del segnale parzializzato; nei primi
M 1 campioni per manca la coda dei campioni della sottosequenza
precedente dove il segnale di ingresso era stato azzerato. Per arrivare al
risultato corretto, si deve quindi riprendere il segnale originale dal campione di posizione N M + 1, prenderne altri N M + 1 campioni,
allungarli con M 1 zeri e cosi via. Il risultato finale si ottiene dai
risultati parziali sommando le sequenze sovrapposte (overlap and add).
Overlap and save: in questo caso non si azzerano gli ultimi M 1
campioni della sequenza lunga N campioni e ne risulta la creazione di
M 1 campioni errati allinizio della sequenza convoluta che risulta
dalla antitrasformazione di Fourier del prodotto degli spettri. Questi
campioni del risultato finale, errati perch inquinati dagli ultimi campioni
17

CAPITOLO 2 LA TRASFORMATA DI FOURIER DISCRETA

per eetto della circolarit della convoluzione, vengono annullati. Ogni


sottosequenza deve quindi iniziare con M 1 campioni di anticipo come
nel caso overlap - add discusso prima. Le sottosequenze successive, che
contribuiscono ognuna N M + 1 campioni validi (gli ultimi), vanno
giustapposte e non sommate.

2.4

Antitrasformazione di Fourier discreta

Nella sezione precedente si discusso come convolvere tra loro sequenze di N campioni, create nel dominio dei tempi. Spesso accade per di
avere dei segnali da antitrasformare, definiti nel dominio delle frequenze; nel decidere la lunghezza N bisogna stare attenti che sia rispettata,
almeno approssimativamente, la condizione di non sovrapposizione delle
repliche nei tempi (assenza di equivocazione temporale). Se si ha a che
fare con risposte allimpulso illimitate (ad esempio come capita con filtraggi ideali), questo non possibile e pertanto necessario convivere con
lequivocazione ed accettare approssimazioni. Per fare un esempio semplicissimo, si voglia ritardare di la sequenza (fig. 2.3); in altre parole, si
vuole la sequenza corrispondente al segnale continuo originario ricampionato con un pettine ritardato di rispetto al pettine di campionamento
originale: per fare ci basta moltiplicare la trasformata della sequenza
per ej . Anzitutto, i campioni della trasformata vanno collocati nella
posizione corretta (N sia un numero pari):
R(2kf ) = Rk = exp(j

2k
);
NT

(2.11)

NT
Inoltre, non si deve dimenticare leetto del campionamento dellasse
delle frequenze; lantitrasformata della sequenza nel dominio delle frequenze la sequenza nel dominio dei tempi che si ottiene come segue;
a) si considera limpulso ideale, lo si ritarda di e lo si filtra passa
basso con un filtro ideale di banda B = 1/2T ; questo filtraggio realizzato implicitamente dal limitare i valori della trasformata alla pulsazione
di Nyquist || /T (fig. 2.4).
b) si campiona questo segnale con intervallo T (la periodicit nel
dominio delle frequenze implicita nella trasformata di Fourier discreta).
RN k = Rk ;

0 k < N/2 ; RN/2 = RNN/2


= cos

18

2.4 ANTITRASFORMAZIONE DI FOURIER DISCRETA

h (t)

Figura 2.3: Risposta allimpulso ideale di un ritardatore


c) si periodicizza ad intervallo NT (si ritarda di mN T la sequenza di
lunghezza infinita e si sommano tutte le repliche). Questeetto dovuto
al campionamento nelle frequenze.
Si osservi ora che la risposta nei tempi del ritardatore, non periodicizzata, ha durata infinita, e converge a zero con landamento del sinc e
cio come 1/n; gli errori potrebbero non essere trascurabili.
Cosa si deve fare per evitare lerrore di equivocazione, temporale questa volta? Si deve smussare la trasformata nel dominio delle frequenze,
prima di procedere al campionamento.
Ad esempio, nel caso del ritardatore indicato, prima di campionare, si
pu convolvere la trasformata, prima del campionamento con un triangolo di durata significativa, in modo che la risposta allimpulso, prima
della replica, decada come 1/n3 . La convoluzione va fatta in via analitica oppure numerica, partendo da un campionamento della funzione
exp(j2f ) pi fitto che f = 1/NT . Ci corrisponde a considerare
la sequenza corrispondente al ritardatore su un intervallo molto lungo,
moltiplicarla per una funzione decrescente con n, e poi replicarla, per
eetto del campionamento.
Sarebbe utile poter fare gli smussamenti nel dominio delle frequenze
convolvendo con dei sinc, per fare veri e propri troncamenti nel dominio
dei tempi, ma ovviamente la cosa molto dicile numericamente; quindi
il tutto equivale a trasferire il problema del ripiegamento dal dominio dei
tempi dove avviene, a quello delle frequenze dove dovrebbe essere evitato
con un filtraggio ideale, altrettanto dicile da eettuare, se non di pi.
19

CAPITOLO 2 LA TRASFORMATA DI FOURIER DISCRETA

Vedremo ora questi eetti con due esempi semplici.

2.4.1

Il derivatore e la costante di tempo

Nella sezione precedente abbiamo visto come sia semplice realizzare un ritardatore di ma anche che inevitabile accettare delle approssimazioni.
Vedremo in questa sezione come realizzare un derivatore; basterebbe
moltiplicare la trasformata per j. Cos facendo, si devono ripetere le osservazioni fatte nella sezione precedente. Pertanto: derivare operando nel
dominio delle frequenze con la DFT equivale (operando nel dominio dei
tempi) a convolvere il segnale con la versione campionata e replicata
del derivatore ideale filtrato passa basso df (t). Questultimo ottenuto
campionando la derivata della risposta allimpulso del filtro ideale passa
basso (fig. 2.5).

d sin t/T
1

df (t) =
= 2 t cos t T sin t ;
dt t/T
t
T
T

1
(1)n
(cos n) =
; n 6= 0; df (0) = 0
nT
nT
Per prefiltrare prima del campionamento in frequenza dobbiamo smussare nelle frequenze loperatore di derivazione, che peraltro molto liscio
tranne che nellorigine e alla frequenza di Nyquist. In particolare il punto
angoloso nellorigine fortemente influenzato dagli eetti di troncamento
o di ripiegamento nei tempi.
Consideriamo ad esempio leetto del troncamento sulla componente
continua e cio il valore medio delloperatore nei tempi; essendo i campioni successivi delloperatore a segni alterni nei tempi, qualsiasi troncamento comporta un valor medio non nullo e quindi la perdita dello
zero alla frequenza zero. Per riportare a zero la funzione di trasferimento
in continua si deve fare qualcosa che comunque deforma loperatore di
derivazione; il ripiegamento invece non perturba il valor medio delloperatore, ma ha altri eetti dannosi. In conclusione, lunica cosa fattibile
semplicemente scegliere N sucientemente grande cos che linevitabile
eetto di ripiegamento nei tempi comporti conseguenze accettabili.
Come ultimo esempio consideriamo lantitrasformata di Fourier dellesponenziale, che ha funzione di trasferimento:
df (nT ) =

A() =

1
1 + j

20

(2.12)

2.4 ANTITRASFORMAZIONE DI FOURIER DISCRETA

Figura 2.4: a) Risposta impulsiva di un ritardatore filtrata passabasso b) Campionamento nei tempi c) Campionamento nelle frequenze
(Periodicizzazione nei tempi)

campionando nelle frequenze si replica lesponenziale nei tempi; quindi


la durata totale NT deve essere ad esempio almeno NT > 3 (fig. 2.6).
Ancora dobbiamo fissare il valore di T e questo verr fatto in base alla
necessit di evitare equivocazione nelle frequenze e cio per campionare
correttamente nei tempi: alla frequenza di Nyquist, dove sar sovrapposta la replica proveniente dal campionamento, necessario che lo spettro
sia gi molto ridotto; p. e. ad un 1/100 del valore assunto a frequenza
0; si ricava allora

N
' 100 T = .0314 ;
> 3 N > 95
T
100
21

(2.13)

CAPITOLO 2 LA TRASFORMATA DI FOURIER DISCRETA

Figura 2.5: Derivatore ideale a banda limitata, non causale, campionato

2.5
2.5.1

Interpolazione con la DFT


Inserzione di zeri e repliche spettrali

Linterpolazione di sequenze per ottenere un segnale ad intervallo di campionamento pi piccolo pu essere fatta in un modo molto semplice mediante la DFT. Sia assegnata una sequenza {xn ; n = 0, ...., N 1} campionata ad intervallo T ; per fare un esempio di duplicazione della frequenza
di campionamento e quindi di interpolazione su un intervallo di durata
met, consideriamo la sequenza di lunghezza doppia ma di eguale durata {x0m ; m = 0, ..., 2N 1}che si ottiene dalla sequenza precedente
inserendo campioni di ampiezza nulla ad intervallo T /2. Si ha allora:
x02n = xn ;

x02n+1 = 0;

La DFT della nuova sequenza {x0m } :


Xk0 =

2N1
X

mk
x0m W2N
=

m=0

N1
X

xn ej

2nk
N

n=0

= Xk ; k = 0, ..., 2N 1 (2.14)

Ma si ha anche:
0
= Xk ;
Xk+N

k = 0, ..., N 1
22

2.5 INTERPOLAZIONE CON LA DFT

Quindi, {Xk0 },trasformata della sequenza di 2N campioni {x0m } coincide


con la sequenza Xk DFT della {xn }, per replicata 2 volte nel dominio
delle frequenze. In generale, se in una sequenza vengono inseriti M 1
campioni nulli tra un campione ed il successivo (e quindi la lunghezza
totale della sequenza viene moltiplicata per M ), la DFT risulta replicata
M volte.
Soppressione delle repliche spettrali con filtraggio ideale
Sopprimiamo ora tutte le repliche spettrali moltiplicando la sequenza Xk0
per degli zeri disposti in modo opportuno ed anche per un opportuno
fattore di scala M (supponiamo N pari: per conservare la simmetria
della componente alla frequenza di Nyquist originale 1/2T si adotta il
fattore M/2):
0

Xk00 = MXk ; k = 0, ....N/2 1; k = MN N/2 + 1, ....., MN 1


0

Xk00 = MXk /2; k = N/2; k = MN N/2


Xk00 = 0; k 6= 0, ...., N/2; k 6= MN N/2, ....., MN 1
allora la sequenza antitrasformata {x00m } una sequenza della stessa durata ma di MN campioni, e sar linterpolata della sequenza originale
su un intervallo di campionamento pari a T /M. Linterpolazione avviene
mediante la convoluzione della sequenza inframmezzata con zeri per il
filtro ideale campionato e periodicizzato la cui DFT appunto:
Fk = M; k = 0, ....N/2 1; k = MN N/2 + 1, ....., MN 1
Fk = M/2; k = N/2; k = MN N/2
Fk = 0; k 6= 0, ....N/2; k 6= MN N/2, ....., MN 1
I campioni della sequenza che costituisce la risposta allimpulso del filtro interpolatore, antitrasformata della {Fk }, sono facilmente calcolabili dalla solita espressione della serie geometrica troncata (N pari) con
laggiunta delleetto del termine di ampiezza M/2:
fn =

M sin(nN/MN)
1 sin(n/M)
=
MN tan(n/MN)
N tan(n/MN)
23

(2.15)

CAPITOLO 2 LA TRASFORMATA DI FOURIER DISCRETA

Il fattore di scala M nasce dal fatto che si desidera uninterpolazione e


pertanto si vuole che:
f0 = 1
Quindi, la componente continua della DFT non si conserva con linterpolazione ma viene accresciuta di un fattore M. Si osservi che se la sequenza
di partenza avesse avuto una durata illimitata, il filtro da utilizzare come
interpolatore sarebbe stato il filtro ideale passa basso con frequenza di
taglio 1/2T campionato con intervallo di campionamento 1/MT e cio:
fn0 =

sin(n/M )
n/M

Leetto della periodicizzazione modesto se MN grande; peraltro,


se M = N = 2 si ha {fi } = {1, .5, 0, .5} e si trova un interpolatore a
triangolo.
Nel caso in cui N dispari si ha la consueta espressione del sinc
discreto, antitrasformata di uno spettro rettangolare centrato intorno
a frequenza 0:
Fk = M; k = 0, ....(N 1)/2; k = MN (N 1)/2, ....., MN 1
Fk = 0; k 6= 0, ....(N 1)/2; k 6= MN (N 1)/2, ....., MN 1

e risulta infine (N dispari):

fn =

1 sin(n/M)
N sin(n/MN)

Linterpolazione con aggiunta di zeri (zero padding)


In conclusione, la tecnica per interpolare con la DFT una sequenza
di lunghezza N (pari) per farne una sequenza di lunghezza MN la
seguente:
- si calcola la DFT della sequenza di lunghezza N;
- si allunga lo spettro aggiungendo (M 1)N 1 campioni nulli,
inseriti tra i campioni di posto N/2 e N/2 + 1;
- si moltiplica per M e, per mantenere le simmetrie, si suddivide il
valore del campione di posto N/2 tra i campioni di posto N/2 e MN
N/2, e infine si antitrasforma.
Il risultato sar la sequenza di partenza, interpolata con la funzione
sinc periodicizzata descritta nella formula (2.15).
24

2.6 IL CALCOLO DELLA DFT: LA FFT

2.6

Il calcolo della DFT: la FFT

Per calcolare la sequenza {Xk } a partire dalla sequenza {xn , 0 n


N 1} dobbiamo applicare la matrice WN di dimensioni [N N]:
Xk =

N
1
X

xn WNnk ; WN = ej2/N

(2.16)

n=0

X = W x

(2.17)

dove con x, X abbiamo indicato due vettori colonna contenenti rispettivamente la sequenza e la sua trasformata discreta di Fourier.

Figura 2.6: a) Antitrasformata discreta di una F.d.T con un polo reale;


b) dierenza tra antitrasformata discreta e antitrasformata continua
La matrice W appare trasposta (o coniugata essendo Hermitiana),
25

CAPITOLO 2 LA TRASFORMATA DI FOURIER DISCRETA

per i segni negativi negli esponenti della trasformazione diretta.

X(0)

1
X(1)

1
X(2)
=

...
...

X(N 2) 1

X(N 1)
1

WN1

WN2

... 1

x0

...
WN x1

2
4
4
2
WN
WN . . . WN WN x2

...
... ... ... ...
...

(N 2)
4
2
4
WN
WN . . . WN WN xN2

WN
WN2 . . . WN2 WN1
xN1
(2.18)
I campioni della riga n-esima corrispondono alle successive posizioni di
un versore (una sinusoide complessa) che fa n 1 giri in N campioni.
La seconda riga una sinusoide complessa che fa un ciclo in senso
orario in N campioni (frequenza f = 1/NT ) e cos via fino allultima
riga che corrisponde ad una sinusoide complessa che fa N 1 giri in
N campioni; in altre parole, ruota in senso antiorario di un giro in N
campioni (frequenza f = 1/NT ). Se N pari, la frequenza di Nyquist
alla riga N/2 + 1; necessario ricordare come la frequenza 0 sia nella
prima riga. La matrice W non una matrice ortogonale vera e propria
perch in quel caso dovrebbe essere:
A1 = A

WN2

(2.19)

Invece si ha, combinando trasformazione ed antitrasformazione di Fourier:


1
1
WW = I;
W = W1

(2.20)
N
N
Per calcolare X necessario applicare questa matrice e la cosa sarebbe
numericamente assai costosa (circa N 2 moltiplicazioni) se non fosse stata
scoperta la trasformata di Fourier veloce (FFT: Fast Fourier Transform)
che permette di fare questo calcolo con un numero assai limitato di operazioni, crescente solo logaritmicamente con N. Alla base della FFT
c lidea che una qualsiasi rotazione di k/N giri si pu ottenere come
combinazione di m = log2 N rotazioni di 1/2 giro, 1/4 di giro ecc. fino
ad 1/N giro, sempre che N sia una potenza di 2 e cio N = 2m .
26

2.6 IL CALCOLO DELLA DFT: LA FFT

2.6.1

Le farfalle

Il meccanismo che porta alla FFT pu essere analizzato in breve: si


consideri la trasformata di Fourier discreta (DFT) di una sequenza di N
campioni e per semplicit si supponga N potenza di 2. Si decomponga
la sommatoria in due sommatorie che si riferiscono la prima ai termini
di posto pari della sequenza, e la seconda a quelli di posto dispari. Si
osserva che le due sommatorie che compaiono sono ancora delle DFT, che
si riferiscono questa volta a sequenze di N/2 campioni luna. Indichiamo
con G(k), H(k) queste due trasformate; risulta:
N/21

X(k) =

N/21

x2n WN2nk

n=0

n=0

(2.21)

n=0

N/21

(2n+1)k

x2n+1 WN

N/21
nk
x2n WN/2

WNk

X
n=0

nk
x2n+1 WN/2
= G(k) + WNk H(k)

X(k + N/2) = G(k) WNk H(k)

In scrittura matriciale:



X(k)
1 1
G(k)

k
X(k + N/2)
1 1
WN H(k)

(2.22)

dove si fatto uso della propriet delle trasformate di sequenze di N/2


campioni di essere periodiche di periodo N/2 e quindi:
H(k + N/2) = H(k);

G(k + N/2) = G(k)

inoltre:
k+N/2

WN

= WNk

Nasce cos il grafo di flusso che d gli elementi di una trasformata di


Fourier di N campioni, combinando quelli di due trasformate di Fourier di
N/2 campioni luna; in particolare viene indicato con il nome di farfalla,
(butterfly) (fig. 2.7) il grafo che connette X(k), X(k+N/2) a G(k), H(k).
La decomposizione si pu ripetere fino ad avere sequenze di 2 campioni.
Allo stesso risultato si pu arrivare ripetendo le considerazioni fatte
in precedenza per linterpolazione di una sequenza 2:1 eseguita inserendo
27

CAPITOLO 2 LA TRASFORMATA DI FOURIER DISCRETA

una sequenza di zeri in posizioni alterne e poi sopprimendo la replica


spettrale. In questo caso, invece, la sequenza originale la somma di
due sequenze che hanno campioni nulli in posizioni alterne, e cio:
- la sequenza dei campioni pari (con campioni nulli in posizioni dispari) che ha trasformata discreta di Fourier Gk , periodica di periodo
N/2;
- la sequenza dei campioni dispari, ritardata di T rispetto alla sequenza dei campioni pari, con campioni nulli in corrispondenza delle
posizioni pari, che ha trasformata discreta di Fourier Hk WNk , periodica
di periodo N/2. Infatti, nel dominio trasformato, il ritardo di un campione tra le due sequenze ottenuto moltiplicando la Hk per il termine exp (j2kfT ) e poich f = 1/NT questo ritardo corrisponde
appunto al termine WNk .

G(k)

H(k)

-K

X (k)

X (k + N 2)

-1

Figura 2.7: Grafo a farfalla

2.6.2

Occupazione di memoria e bit reversal

La trasformazione di Fourier veloce ha il vantaggio di potere essere fatta sul posto: in altre parole, non c bisogno di ulteriore memoria per
eettuare la trasformazione. Una volta memorizzata la sequenza di N
campioni, si possono realizzare i primi grafi a farfalla 2 2 e successivamente gli altri scambiando i campioni memorizzati con quelli via via
calcolati. Alla fine, ci si trover con la trasformata memorizzata l dove
era prima memorizzata la sequenza. Supponiamo ora che N = 2m , e che
quindi lindice del campione sia un numero binario. Si verifica che, per
avere i dati della trasformata (antitrasformata) memorizzati in ordine
28

2.7 FILTRAGGIO DI SEQUENZE ILLIMITATE

progressivo, i dati originali vanno ordinati disponendo prima i campioni di posto pari (ultimo bit 0), e tra quelli, prima quelli di posto pari
(penultimo bit 0) e poi ancora tra quelli, quelli di posto pari (terzultimo
bit 0) ecc. e cos per tutti gli stadi del calcolo. Quindi, per avere la
trasformata nellordine naturale, i dati vanno scritti nellordine inverso
dei bit del loro indice e cio bit reversed. Se i dati sono trascritti nellordine bit reversed , partendo da dati in ordine naturale, lordinamento
della trasformata risulter progressivo. Similmente, se i dati sono scritti
in ordine naturale, sar la trasformata ad essere disposta in ordine bit
reversed. Ad esempio, con m = 3, lordine dei campioni del segnale bit
reversed :
000, 100, 010, 110, 001, 101, 011, 111
Come osservato, si pu ottenere questordine da quello naturale senza
ulteriore occupazione di memoria, a parte due registri per ogni coppia di
numeri complessi da scambiare di posizione.

2.7
2.7.1

Filtraggio di sequenze illimitate


Costo computazionale della FFT

Determiniamo anzitutto il costo computazionale di una trasformata di


Fourier veloce (trascurando il costo computazionale delle somme). Ad
ogni stadio della trasformazione devono essere calcolati N/2 grafi a farfalla che costano una moltiplicazione complessa luno.(fig.2.8) Sono da
calcolare log2 N stadi e quindi un totale di (N log2 N)/2 moltiplicazioni
complesse ognuna corrispondente a 4 moltiplicazioni reali luna. Se poi
si considera che con una trasformata di Fourier veloce si possono fare 2
trasformate di Fourier di due sequenze reali di N campioni luna, disponendo una delle due sequenze sullasse reale e la seconda sullasse immaginario, e poi combinando in modo opportuno le parti reale ed immaginaria
della trasformata, si conclude che il costo computazionale di una trasformata di Fourier di una sequenza reale di log2 N moltiplicazioni per
campione. Infatti, assegnate le funzioni reali si (t); i = 0, 1, consideriamo
il segnale complesso:
s(t) = s0 (t) + js1 (t) S() = S0 () + jS1 ()
29

(2.23)

CAPITOLO 2 LA TRASFORMATA DI FOURIER DISCRETA

Figura 2.8: Grafi corrispondenti a trasformazioni di Fourier veloci


per le simmetrie delle trasformate delle funzioni reali:
Si () = Si ();

(2.24)

i = 0, 1;

Pertanto:
2j i Si () = S() + (1)i S ();

2.7.2

i = 0, 1

(2.25)

Segmentazione di sequenze illimitate

Supponiamo di volere filtrare una sequenza di lunghezza illimitata con


un filtro di M campioni; come scegliere N, lunghezza delle trasformate di
Fourier? Se N troppo piccolo, sar eccessivo il numero dei campioni da
eliminare o ricalcolare a causa del meccanismo overlap save o overlap add.
Peraltro, se N troppo grande, sprecheremo calcoli per fare trasformate
di Fourier troppo lunghe.
30

2.8 TRASFORMATA DI FOURIER IN BASE 4

Lottimo si calcola subito: il numero di campioni utili per trasformata


pari a: N 0 = N M + 1; il costo di ogni trasformata N log2 N
moltiplicazioni reali; il costo eettivo per campione sar quindi
N log2 N
N M +1

c=

(2.26)

che ha un valore minimo per N ' 10M. Tenendo conto del costo computazionale di trasformata, antitrasformata e prodotto di spettri, luso
della trasformata di Fourier risulta quindi preferibile non appena il filtro
pi lungo di una ventina di campioni; tuttavia ci comporta una latenza (ritardo della disponibilit) di N campioni (invece che M), ritardo che
inaccettabile in alcuni casi.

2.8

Trasformata di Fourier in base 4

Nella sezione precedente abbiamo visto come si eettuano trasformate


di Fourier veloci con N potenza di 2. Lo stesso ragionamento si estende
al caso in cui N decomponibile in fattori primi piccoli (2, 3, 5); allora
non avremo pi farfalle ma strutture di calcolo un po pi complesse: un
caso particolare si ha per la base 4, per cui ora faremo i conti per esteso.
Suddividendo la sequenza in quattro sottosequenze, il calcolo della FFT
procede cosi:
N/41

X(k) =

N/41

x4n WN4nk

n=0

N/41
(4n+2)k
x4n+2 WN

n=0

N/41
nk
x4n WN/4

WNk

n=0

nk
x4n+1 WN/4
+

n=0

N/41

+WN2k

(4n+3)k

x4n+3 WN

n=0

N/41

(2.27)

n=0

N/41

(4n+1)k

x4n+1 WN

N/41
nk
x4n+2 WN/4

n=0

WN3k

X
n=0

31

nk
x4n+3 WN/4

CAPITOLO 2 LA TRASFORMATA DI FOURIER DISCRETA


N/4

Inoltre, poich WN

=j

N/41

X(k + mN/4) =

N/41
nk
x4n WN/4

+j

WNk

n=0

+(1)

WN2k

nk
x4n+1 WN/4
+

(2.28)

n=0

N/41
m

N/41
nk
x4n+2 WN/4
+(j)m WN3k

n=0

nk
x4n+3 WN/4
; m = 0, 1, 2, 3

n=0

In forma matriciale:

G(k)
1 1 1 1
X(k)

X(k + N/4) 1 j 1 j WNk H(k)

2k
X(k + N/2) 1 1 1 1 WN L(k)

3k
1 j 1 j
X(k + 3N/4)
WN M(k)

(2.29)

dove con G, H, L, M sono state indicate le trasformate delle quattro sottosequenze, ciascuna di lunghezza N/4. Moltiplicare per j non costa
numericamente, e quindi si osserva che la FFT in base 4 ha 3 moltiplicazioni complesse per farfalla, N/4 farfalle per stadio, log4 N stadi: in
totale il numero di moltiplicazioni complesse
n00 = 3

N log2 N
N
= 0.75 log2 N
4 2
2

(2.30)

con un risparmio, rispetto alla trasformata di Fourier veloce in base 2,


del 25%, che significativo .

32

Capitolo 3
Ricostruzione di segnali
continui
3.1

Introduzione: sequenze limitate

Nel trattamento del segnale numerico, vi sono numerosissime occasioni


per eettuare delle interpolazioni: il caso ovvio quello in cui abbiamo
un segnale che noto in certe posizioni e che deve essere valutato in altre,
dove non disponibile una misura diretta. anche utile mescolare sequenze numeriche campionate con diverse frequenze di campionamento,
oppure sequenze campionate con orologi imperfetti: si pensi ad esempio
ad una registrazione numerica di un segnale musicale, a cui si voglia sommare un segnale audio di commento, raccolto con un altro registratore,
magari dotato di una mediocre temporizzazione. Operando su segnali
analogici, basta un nodo sommatore ed il problema banale: non cos
nel caso di segnali campionati, in cui si deve trasformare un segnale campionato su un pettine di campionamento in un segnale campionato su
un altro pettine. In pi i due pettini di campionamento possono essere
entrambi irregolari a causa di imperfezioni negli orologi. chiaro che le
regole del campionamento vanno rispettate, e pertanto i segnali vanno
filtrati ognuno nella propria banda di Nyquist; uno dei due sar quindi
sovracampionato e cio non occuper tutta la banda disponibile. Si vedr
che la precisione con cui va fatta loperazione di interpolazione deve essere molto elevata, se si desidera conservare unelevata qualit del segnale
campionato. In questo capitolo, analizzeremo loperazione di interpo33

CAPITOLO 3 RICOSTRUZIONE DI SEGNALI CONTINUI

lazione intesa come ricostruzione di un segnale continuo, eventualmente


ricampionabile con le regole esposte nel capitolo 1. Invece, nel capitolo
7, discuteremo di tecniche che trasformano direttamente una sequenza in unaltra campionata ad altra frequenza senza passare, nemmeno
concettualmente, per il momento in cui il segnale continuo.
La ricostruzione di un segnale continuo a partire da una sequenza di
campioni posizionati regolarmente lungo un asse possibile inserendo un
filtro ideale passa basso che opera sulla sequenza di impulsi ideali corrispondenti ai campioni, che opera come interpolatore. Tuttavia, nascono
problemi con il ritardo infinito apportato da questo filtro; in altre parole, per fare la ricostruzione ad un dato tempo servono infiniti campioni
del segnale sia prima che dopo quellistante. Il segnale continuo x(t)
ottenuto dalla sequenza dei campioni come:
x(t) =

+
X

n=

xn

)
sin (tnT
T
(tnT )
T

+
X

n=

xn sinc

t nT
T

(3.1)

Abbiamo adottato la definizione


sinc(x) =

sin(x)
x

(3.2)

E ora opportuno determinare tecniche di ricostruzione di un segnale


continuo che siano pi semplici ed in particolare diano un risultato anche
con sequenze corte; quali sono i requisiti da imporre, visto che non sar
comunque possibile garantire di ottenere di nuovo la x(t) iniziale? Infatti
questa corrisponderebbe al risultato dellinterpolazione fatta con un filtro
ideale, disponendo di un illimitato numero di campioni prima e dopo
listante di interesse. Se i campioni disponibili sono limitati, e quindi
pochi, come accadr in genere, cosa opportuno fare?
Un interpolatore quindi un filtro definito su un asse temporale o
spaziale continuo che, alimentato da una sequenza limitata di impulsi
ideali di ampiezza proporzionale a quella dei campioni della sequenza
numerica, permette di ricostruire un segnale x(t) quanto possibile simile
al segnale originario x(t). In sostanza sar un buon filtro passabasso, in
grado di rimuovere al meglio le repliche dello spettro del segnale generate
dal campionamento (fig. 3.1). Diremo che un interpolatore rispetta (to
honor, in inglese) il dato, se il segnale continuo ricampionato restituisce
34

3.1 INTRODUZIONE: SEQUENZE LIMITATE

Figura 3.1: Rimozione delle repliche spettrali di un segnale campionato


con un filtro ricostruttore triangolare
il campione assegnato. Non sempre gli interpolatori rispettano i dati; a
volte, specialmente quando si pu supporre che alla sequenza di ingresso
sia sovrapposto del disturbo, pu essere preferibile che il segnale continuo
in uscita, ricampionato, restituisca una sequenza non identica a quella
originale, ma smussata, proprio per ridurre leetto del disturbo. Si
suppone cio che sui campioni da interpolare sia sommata una sequenza
indipendente che va rimossa.
Ancora, per descrivere un interpolatore, si pu aermare che rispetta
la costante, la retta, la parabola ecc, quando si ha che, se la sequenza di
ingresso ottenuta campionando una costante, una retta, una parabola
ecc, il segnale continuo di uscita appunto lo stesso segnale di partenza;
si osservi che un interpolatore pu rispettare le rette ma non i dati o
viceversa (fig. 3.2).
Rispettare la costante significa che la funzione interpolata costante,
se tutti i campioni della sequenza sono eguali tra loro; pi in generale,
se la funzione campionata fosse un polinomio di grado k, la funzione ricostruita dallinterpolatore, di comoplessit crescente con k, dovr essere
identica al polinomio di partenza.
Indichiamo con ordine dellinterpolatore il grado dei polinomi utilizzati per eettuare linterpolazione. Linterpolatore di ordine k = 0
detto mantenitore: quello che conserva le costanti (e solo quelle). Possi35

CAPITOLO 3 RICOSTRUZIONE DI SEGNALI CONTINUI

h(t)

-T/2
T/2
t
Filtro interpolatore che rispetta i dati
ma non le rette

h(t)

2T

2T

Filtro interpolatore che rispetta le rette


ma non i dati

Figura 3.2:
amo poi considerare linterpolatore lineare (ordine k = 1) che conserva le
rette e tra queste quella con coeciente angolare nullo e cio la costante.
Linterpolatore quadratico (ordine k = 2), conserver le parabole, e cio,
quando i dati di ingresso sono disposti su una parabola campionata, il
risultato dellinterpolazione sara proprio la stessa parabola continua nel
tempo. Si considera anche linterpolatore cubico (ordine k = 3); gli interpolatori utilizzati in pratica poi sono il mantenitore, linterpolatore lineare e un particolare interpolatore cubico detto anche bacchetta elastica
o spline.
Per caratterizzare un interpolatore, utilizzeremo la risposta allimpulso, e cio la funzione tempo continua hk (t), uscita dellinterpolatore,
quando allingresso vi la sequenza corrispondente allimpulso unitario
xn = n :
n = 0; n 6= 0; 0 = 1

(3.3)

La risposta allimpulso hk (t) di una classe di interpolatori di ordine k,


che ora considereremo, ha la durata (k + 1)T ed costituita da k + 1
archi di polinomi di grado k-esimo. Indicheremo con Hk () la trasformata di Fourier di hk (t). Indicata con xk (t) la funzione interpolata con
36

3.2 RICOSTRUZIONE DI POLINOMI

linterpolatore di ordine k si ha, se la funzione ricostruita rispetta il dato:


xk (t) =

+
X

n=

xn hk (t nT )

xk (nT ) = xn ; hk (0) = 1;

hk (nT ) = 0;

(3.4)
n 6= 0

Si noti che in genere xk (t) 6= x(t) e cio la funzione interpolata non


eguale alla funzione originale, a meno che questa non fosse polinomiale
del grado k.

3.2

Ricostruzione di polinomi

E facile trovare le condizioni che devono essere soddisfatte dalla risposta allimpulso di un interpolatore perch un polinomio di grado k sia
ricostruito correttamente. Partiamo da k = 0; basta applicare la sovrapposizione degli eetti: se tutti i campioni della sequenza sono eguali tra
loro (xn = x0 ), la funzione interpolata sar la sovrapposizione di tante
repliche eguali della risposta allimpulso hk (t), sfalsate di T luna rispetto allaltra. Ma replicare con passo T nel dominio del tempo implica
campionare a passo fc = 1/T nel dominio delle frequenze e quindi la
trasformata della funzione interpolata sar eguale alla trasformata della
risposta allimpulso campionata alle frequenze m/T ; perch poi questa
funzione campionata si riduca ad un impulso a fc = 0 e quindi sia la
trasformata di una costante, bisogna che:
Hk (m c ) = 0; c =

2
; m 6= 0
T

(3.5)

Quindi per rispettare le costanti basta che la trasformata della risposta


allimpulso dellinterpolatore si annulli in corrispondenza della frequenza di campionamento e delle sue armoniche. Tra tutti gli interpolatori
che rispettano la costante, ce ne e uno, pi semplice di tutti, chiamato
mantenitore.
Se il segnale x(t) ha uno spettro che non occupa solo la frequenza zero
come una costante, ma concentrato alle basse frequenze come una rampa, non baster che la trasformata della risposta allimpulso dellinterpolatore sia nulla solo alle frequenze mfc per ottenerne una interpolazione
corretta. Essa deve essere nulla in tutto un intorno di queste frequenze,
37

CAPITOLO 3 RICOSTRUZIONE DI SEGNALI CONTINUI

in modo da azzerare le repliche dello spettro. Si verifica che non solo


Hk () deve essere nulla alle frequenze mfc ma devono anche essere nulle
almeno le prime k derivate rispetto alla pulsazione . Parimenti, in un
intorno dellorigine, k derivate rispetto a della Hk () devono essere
nulle, e cio la Hk () deve essere quanto pi costante possibile, intorno
a frequenza zero. Se k tende ad infinito, si ottiene il filtro ideale.
Nel caso dellinterpolatore a bacchetta elastica, accade appunto che le
derivate della funzione di trasferimento (fino alla derivata terza compresa)
sono nulle alle armoniche della frequenza di campionamento; a frequenza
zero, la funzione costante fino a termini di quarto ordine. Quindi la
bacchetta elastica onora i polinomi di terzo grado.

3.3

Interpolatori derivati dal mantenitore

Linterpolatore pi semplice che onora la costante il mantenitore cui


corrisponde la risposta allimpulso (fig. 3.3,a):
|t|

h0 (t) = 1;

T
2

H0 () = T

sin fT
= T sinc(f T )
f T
(3.6)

Infatti,
sin m
2
= 0; c =
; m 6= 0
m
T
Immediatamente pi complesso, ma ancora molto semplice linterpolatore lineare che ha risposta allimpulso e funzione di trasferimento (fig.
3.3,b):
H0 (m c ) = T

h1 (t) = 1

|t|
;
T

|t| T ;

h1 (t) =

1
(h0 (t) h0 (t))
T

H1 () = T sinc(f T )2
Si vede subito che
H1 (mc ) = T

sin m
m

= 0;

(3.7)
(3.8)

dH1
2
(mc ) = 0 c =
; m 6= 0
d
T

In entrambi i casi la risposta allimpulso molto corta (T o 2T); poi


possono essere interessanti gli interpolatori
H2 () = T sinc(fT )3 ;

h2 (t) =
38

1
(h1 (t) h0 (t))
T

(3.9)

3.3 INTERPOLATORI DERIVATI DAL MANTENITORE

H3 () = T sinc(fT )4 ;

h3 (t) =

1
(h2 (t) h0 (t))
T

(3.10)

(il valore della costante si trova imponendo pari a T il guadagno a frequenza zero). Il problema di questi ultimi due interpolatori (fig. 3.3 c,d)
che rispettano polinomi di grado k ma non sequenze qualsiasi di dati;
infatti le risposte allimpulso h2 (t) e h3 (t) non si annullano per t = T
(vedi fig 3.3); infatti la funzione di trasferimento decade per valori bassi
della frequenza e quindi la sequenza risultato del ricampionamento del
segnale interpolato una versione smussata della sequenza assegnata.

Interpolatori di ordine k derivati dal mantenitore


h0(t)
A=1

Mantenitore

h1(t)
A

1
0.8

0.8

0.8

0.6

0.6

0.4

0.4

0.6
0.4
0.2

-T/2

0.2

0
-2.5 -2 -1.5 -1 -0.5

T/2
0

0.5

0.2

0
-2.5

-2 -1.5 -1 -0.5

0
-2.5 2-2 -1.5 -1 -0.5
1.5

h2(t)

0.75A

0.8

0.8

0.6

0.6

0.4

-T

t
0

0.5

1.5

0.5

T1

1.5

h3(t)

0.2

0.4

0.125A

0
-2.5

0.2

T 1.5T
0
-2.5 -2 -1.5 -1 -0.5 0 0.5 1 1.5 2

-2 -1.5 -1 -0.5

-2T

0.5

1.5

2T t

Figura 3.3: Interpolatori di ordine k derivati dalla convoluzione con se


stesso del mantenitore: a) k = 0 mantenitore; b) k = 1 lineare; c) k = 2
parabolico; d) k = 3 cubico

39

CAPITOLO 3 RICOSTRUZIONE DI SEGNALI CONTINUI

3.3.1

Interpolatore cubico troncato

Un interpolatore interessante per la sua semplicit ed accuratezza il


seguente interpolatore cubico, che ha durata 4T . Le equazioni sono:
y(x) = y(x) = 1 (1 + a)x2 + ax3 ;

0x=

y(x) = y(x) = (a 2)(x3 5x2 + 8x 4);

t
1
T

1x2

(3.11)
(3.12)

Il passaggio per lo 0 a T garantisce che i dati sono onorati. inoltre, per


tutti i valori del parametro a la derivata prima continua; la derivata
seconda discontinua agli estremi e pertanto inutile imporne la continuit allinterno. Per a = 3/2 la funzione di trasferimento massimamente
piatta (fino al 40 ordine) nellorigine e gli zeri alle frequenze multiple di
1/T sono di secondo ordine; questo quindi il valore consigliato per a.

3.3.2

Interpolatori con filtro ideale troncato

Altri interpolatori si possono trovare ricorrendo al filtro ideale, e limitandone la durata troncandolo con una finestratura p.e. a coseno rialzato
come si vedra nel capitolo 5.

3.4

Rigidit e sovraelongazioni

Consideriamo ora vari interpolatori, dal mantenitore o dallinterpolatore


lineare, che non hanno memoria da un campione al successivo, al filtro
ideale, dove linfluenza di un campione si estende allinfinito. Nel caso
pi semplice (il mantenitore) non garantita nemmeno la continuit
della funzione; poi, via via, si accresce la rigidit dellinterpolatore e
cio si impone la continuit della funzione (interpolatore lineare) e poi di
un crescente numero di derivate. Nel caso estremo del filtro ideale, vi
continuit di tutte le derivate in corrispondenza dei campioni; quindi non
vi pi possibilit di ritrovare la posizione del reticolo di campionamento
dal segnale ricostruito, e di fatto il segnale ricostruito quello di partenza,
indipendente dalla posizione del reticolo di campionamento.
Le condizioni agli estremi sono tanto pi influenti quanto pi linterpolatore rigido. Nel caso del mantenitore e dellinterpolatore lineare,
40

3.4 RIGIDIT E SOVRAELONGAZIONI

non sono rilevanti; nel caso del filtro ideale invece, se la sequenza da interpolare limitata, si possono arbitrariamente assegnare tutte le derivate
del segnale da interpolare in corrispondenza del primo e dellultino campione. Ci influenza landamento del segnale allinterno dellintervallo, pur
senza alterare i valori dei campioni, allinterno dellintervallo. Pertanto,
arbitrario usare interpolatori rigidi (come il filtro ideale) con
sequenze corte. ragionevole utilizzare interpolatori con lunghezza
della risposta allimpulso molto pi breve della lunghezza della sequenza
da interpolare. In questo modo, gli eetti di bordo sono limitati.
Nel caso dellinterpolatore lineare, i valori minimi e massimi del segnale interpolato sono quelli dei campioni; interpolando invece i dati come
con una bacchetta flessibile lescursione dei valori maggiore. Utilizzando il filtro ideale, imponendo la continuit di tutte le derivate e quindi una risposta allimpulso dellinterpolatore di lunghezza infinita, pu
addirittura accadere che luscita sia illimitata per alcune sequenze di dati.
Per fare un caso evidente, consideriamo una sequenza alla frequenza di
Nyquist, che moltiplichiamo per la funzione sign(n) = n/|n|; sign(0) = 0
(fig. 3.4). Il segnale interpolato con il filtro ideale tende allinfinito in
corrispondenza del cambio di segno. Poich la singolarit nasce dalla
somma dei sinc (una serie armonica) che si combinano con segni eguali,
lampiezza cresce con il logaritmo del numero di campioni della sequenza
interpolata. In proposito, si ricordi che
N
X

N
t
t X 1
|sinc( n)| = |sinc( )|
T
T n=1 1 + n Tt
n=1

e poi che la serie logaritmica :


+ n
X
x
n=1

= log

1
;
1x

|x| < 1

(3.13)

Al limite, per x = 1, si trova la serie armonica. Si vedr poi in un


capitolo successivo quando si discuter della trasformazione di Hilbert,
che linviluppo di un segnale interpolato dipende dalla trasformata di
Hilbert del segnale stesso; la trasformata di Hilbert della funzione sign
ed in generale di ogni gradino ha una singolarit di tipo logaritmico che
si ritrova sia nellinviluppo che nel segnale interpolato.
41

CAPITOLO 3 RICOSTRUZIONE DI SEGNALI CONTINUI

Figura 3.4: Esempio di sovraelongazioni dovute alleccessiva rigidit del


filtro ideale usato come interpolatore

3.5

La linea elastica o 00spline00

Esiste un altro interpolatore cubico, diverso da H3 () e dallinterpolatore


cubico troncato visto in precedenza che non solo rispetta rette, parabole e
cubiche ma rispetta anche i dati, cosa che non accade per H3 (). Questo
interpolatore, noto come linea o bacchetta elastica (inglese: spline =
bacchetta elastica), molto utilizzato sia in sistemi monodimensionali
che multidimensionali.
Intuitivamente, si pu pensare di tracciare su un foglio di carta le
posizioni dei campioni del segnale e puntarvi degli spilli. Per costruire
una curva continua che li congiunga, si pu usare un filo teso tra uno
spillo e laltro (ed allora risulta linterpolazione lineare) oppure usare
come curvilineo una bacchetta flessibile (un filo di acciaio, p.e.) la cui
posizione di equilibrio rappresenta il segnale interpolato (fig. 3.5), o
magari ancora una via di mezzo come una bacchetta elastica sottoposta
a tensione.
Linterpolazione eettuata con la bacchetta elastica (la linea elastica)
onora costanti e rette (ma anche parabole e cubiche) ed anche il dato.
Peraltro, il risultato dellinterpolazione dipende anche da come la bac42

3.5 LA LINEA ELASTICA O 00 SP LIN E 00

Figura 3.5: Interpolazione di un impulso rettangolare: lineare (a); con


bacchetta elastica (b).
chetta fissata agli estremi dellintervallo. Lasciando liberi gli estremi,
la posizione di equilibrio della bacchetta corrisponde al minimo dellenergia elastica immagazzinata e pertanto la curvatura media della linea
minima; il segnale interpolato allora, pur sempre onorando i dati, il pi
liscio possibile. La bacchetta proseguir fuori dellintervallo in cui nota
la sequenza fornendo una particolare estrapolazione dei dati. Altrimenti,
si pu incastrare agli estremi la bacchetta fissando cos la derivata prima
del segnale interpolato agli estremi dellintervallo (non necessariamente
a zero). Ancora, si pu pensare di sottoporre a tensione gli estremi della bacchetta. Si ha quindi un parametro libero in pi: se la tensione
fortissima, siamo di nuovo nel caso dellinterpolazione lineare. Se la tensione nulla, siamo nel caso esposto di seguito. In sostanza, si dispone
di una grande libert nello scegliere tra uninterpolazione a tratti di rette
(interpolazione lineare) fino ad uninterpolazione con archi di cubica a
derivata seconda continua nei nodi (splines).

3.5.1

Analisi dello spline

Passando ad unanalisi quantitativa della posizione di equilibrio della


bacchetta, osserviamo che la sua curvatura proporzionale al momento
43

CAPITOLO 3 RICOSTRUZIONE DI SEGNALI CONTINUI

flettente in quel punto; le reazioni vincolari dei nodi sono forze che la inflettono: il momento flettente dovuto alinsieme delle reazioni vincolari,
ha un andamento lineare a tratti, cambiando pendenza in corrispondenza di ogni nodo e di ogni nuova reazione vincolare. In conclusione, la
posizione di equilibrio della bacchetta e pertanto la curva interpolante
ha una curvatura che varia linearmente tra un nodo e laltro, ma in modo continuo. Se si fa lipotesi addizionale che gli scostamenti y(x) della
bacchetta dallasse delle ascisse siano molto piccoli, si pu dire che la sua
curvatura proporzionale alla derivata seconda della curva, che quindi
lineare a tratti. Infatti si ha che la curvatura di una linea, inverso del
raggio di curvatura r(x) :
1
y 00 (x)
=
' y 00 (x);
3/2
0
2
r(x)
[1 + y (x) ]

|y 0 (x)| < 1

(3.14)

In ogni tratto tra due campioni, la curva ricostruita sar pertanto una
cubica, definita cio con quattro parametri, ad esempio i valori della
funzione e delle derivate in corrispondenza dei campioni. Le derivate
sono incognite e vanno determinate utilizzando le condizioni di continuit
delle derivate prime e seconde da un tratto di curva al successivo.

3.5.2

Lequazione dello spline

Indichiamo con yi , yi0 i valori della funzione da interpolare e della sua


derivata in corrispondenza del campione i-esimo. La funzione interpolante cercata un polinomio di terzo grado (e cio con una derivata
seconda che varia linearmente con la variabile x). Nellintervallo i, i + 1
la funzione interpolante f (x) descritta dalla seguente equazione:
f (x) = yi (1 3x2 + 2x3 ) + yi+1 (3x2 2x3 )+

(3.15)

0
(x2 + x3 )
+yi0 (x 2x2 + x3 ) + yi+1

Per verificare lequazione precedente, si supponga diverso da zero solo


0
uno dei quattro parametri yi , yi+1 , yi0 , yi+1
, e si suppongano nulli gli
altri tre. I polinomi che risultano, hanno appunto valore nullo in loro
corrispondenza: ad esempio, nel caso di yi , il polinomio 1 3x2 + 2x3
ha valore 1 in x = 0 nullo per x = 1 e le sue derivate sono nulle in
44

3.5 LA LINEA ELASTICA O 00 SP LIN E 00


0
x = 0, 1. Nel caso di yi+1
, il polinomio x2 + x3 ha valore 0 in x = 0; 1
ha derivate prime nulle in 0 ed unitaria in 1. Pertanto la f (x) descritta
dallequazione precedente il pi generale polinomio di terzo grado che
abbia assegnati i valori della funzione e delle derivate agli estremi in 0, 1.
E possibile calcolare la derivata seconda del polinomio ed imporre
che al nodo iesimo le derivate seconde calcolate per lintervallo i, i + 1
e i 1, i coincidano. Ne risulta la seguente equazione alle dierenze
finite, che ci permette di calcolare i valori delle derivate della funzione
da interpolare in corrispondenza dei nodi:
0
0
yi1
+ 4yi0 + yi+1
= 3(yi+1 yi1 )

(3.16)

Questa equazione alle dierenze finite sar studiata con le tecniche della
trasformata z nel capitolo 4. Qui osserviamo anche che imponendo che
la derivata seconda sia nulla ai nodi terminali per imporre la condizione
di immagazzinamento della minima energia elastica, si ottiene:
y00

y10 + 3(y1 y0 )
=
2

(3.17)

0
yN1
+ 3(yN1 yN )
(3.18)
2
Abbiamo quindi un sistema di N equazioni nelle N incognite (le yi0 ) che
risolvibile facilmente essendo tridiagonale (e cio avendo nella matrice
dei coecienti solo la diagonale e le due subdiagonali adiacenti diverse
da zero). La soluzione viene fatta per sostituzione, a partire dalla prima
equazione.

0
y
2 1 0 ... 0 0 0
0

1 4 1 . . . 0 0 0 y1

0 1 4 . . . 0 0 0 y20

(3.19)
... ... ... ... ... ... ... ... =

0 0 0 . . . 4 1 0 yN 2

0 0 0 . . . 1 4 1 yN

0
0 0 0 ... 0 1 2
yN
0
=
yN

45

CAPITOLO 3 RICOSTRUZIONE DI SEGNALI CONTINUI

0 ...

y0

3 0 3 . . . 0 0 0 y1

0 3 0 . . . 0 0 0 y2

= ... ... ... ... ... ... ... ...

0 0 0 . . . 0 3 0 yN 2

0 0 0 . . . 3 0 3 yN 1

0 0 0 . . . 0 3 3
yN

Una volta trovate le N incognite yi0 esse vanno sostituite nellequazione


(13.8) e quindi si determinano i vari archi di polinomi di terzo grado.
Si osservi anche che il concetto di bacchetta elastica si estende con
facilit al caso di campioni non equidistanti; in questo caso, i coecienti
lungo la diagonale e le subdiagonali non sono costanti.

3.5.3

La risposta allimpulso dello spline

Vogliamo ora determinare la risposta allimpulso dello spline s0 (t) cio la


funzione che si ottiene quando solo y0 = 1 e tutti gli altri yi = 0; <
i < .
Lo spettro di s0 (t) si pu calcolare con il seguente metodo. Anzitutto,
dallequazione alle dierenze finite (13.8) si trova la trasformata di Fourier della sequenza delle derivate della s0 (t) in corrispondenza dei campioni; infatti indicando rispettivamente con Yc0 (), Yc () le trasformate di
Fourier delle sequenze delle derivate e dei campioni.
0
0
+ 4yi0 + yi+1
= 3(yi+1 yi1 )
yi1

(3.20)

Yc0 ()[ejT + 4 + ejT ] = 3Yc ()[ejT ejT ]


Yc0 () = Yc ()

3j sin
;
2 + cos

= T

(3.21)

Nel caso particolare in cui Yc () = 1, e cio per la risposta allimpulso


si ha:
3j sin
Yc0 () =
' j;
(3.22)
2 + cos
46

3.5 LA LINEA ELASTICA O 00 SP LIN E 00


0

Si osservi che la sequenza di campioni yn con trasformata Yc0 () corrispondente ad un derivatore numerico. Questa funzione di trasferimento
somiglia molto alla funzione di trasferimento desiderata per un derivatore senza avere valori infiniti, come accadr per il derivatore ricorsivo.
Infatti

1 4 4
0
Yc () ' jYc () = jT Yc () 1
T ... ;
|T | < 1 (3.23)
180
Vedremo poi nel seguito altre tecniche per trovare le derivate di una

Figura 3.6: Risposta allimpulso (a) e trasformata (b) dello spline; in (c)
ingrandita la trasformata per vederne i valori in corrispondenza delle
frequenze nfc .
sequenza numericamente e cio trovare, agli istanti di campionamento, la sequenza delle derivate del segnale continuo ottenuto filtrando la
sequenza iniziale con un filtro ideale.
Utilizzando poi le equazioni che danno la funzione a partire dai valori
ai nodi dei campioni e delle derivate, si trova la trasformata della risposta
allimpulso cercata. Risulta che la risposta allimpulso della bacchetta
elastica ha trasformata S0 () (fig. 4.40) con equazione:
S0 () =

3 sinc4 (fT )
1 + 2 cos2 fT

(3.24)

In particolare S0 () ha zeri di quarto ordine alle frequenze multiple di


1/T ed costante fino al quarto ordine nellorigine.
47

CAPITOLO 3 RICOSTRUZIONE DI SEGNALI CONTINUI

3.6
3.6.1

Il campionamento irregolare
Conversione di frequenze di campionamento

In molte occasioni pu essere utile convertire un segnale da una frequenza di campionamento ad unaltra: p.e. inserire un segnale audio da un
CD in una linea telefonica numerica e quindi passare da circa 44KHz
a 8KHz di frequenza di campionamento; a parte il necessario filtraggio
per sopprimere lalias, sar anche necessario interpolare il segnale su un
altro pettine di campionamento, totalmente indipendente; ovviamente,
sarebbe possibile ritornare ad un segnale analogico e ricampionare, ma
ci comporta delle perdite di rapporto segnale rumore. Ancora, utile
mescolare sorgenti numeriche di origini diverse, anche se nominalmente
alla stessa frequenza di campionamento; per esempio, si vogliono mescolare segnali audio registrati da varie posizioni in un teatro, durante lo
stesso concerto, da diversi registratori numerici. I vari clock usati per le
registrazioni possono essere imperfetti e le loro frequenze possono pendolare rispetto alla frequenza nominale: i segnali audio devono essere
allineati temporalmente e poi i segnali numerici corrispondenti devono
essere ricampionati in modo simultaneo. I vari campioni devono essere
interpolati. Un ulteriore caso la tecnica analogica varispeed in cui lasse
temporale viene accelerato o ritardato per ottenere degli eetti audio;
opportuno realizzare la stessa funzione con tecniche numeriche.
Inoltre, vi sono variazioni casuale della frequenza di orologio dovute
a imperfezioni del sistema di trasmissione numerico indicate con il nome
di jitter. approssimativamente possibile rimuovere il jitter di trasmissione da una sequenza; non quello di registrazione, tuttavia, a meno di
non disporre di altre fonti di sincronizzazione come ad esempio i segnali
stessi. La sequenza ricevuta viene memorizzata su una memoria FIFO
(First In First Out), e quindi questa memoria viene riletta al ritmo opportuno. Questo ritmo deve essere un p pi veloce se la memoria va svuotata, pi lento se la memoria tende a riempirsi. I tempi di restituzione
sono confrontati con i tempi dellorologio di campionamento, registrati,
ed i campioni ai tempi necessari sono interpolati.
In ogni modo, la conversione della freqenza di campionamento va
fatta in due passi: per prima cosa si ottiene una sequenza, approssimativamente campionata al ritmo desiderato, ma che conserva le eventuali
imprecisioni del ritmo di campionamento iniziale. Ad esempio la si sovra48

3.6 IL CAMPIONAMENTO IRREGOLARE

campiona di un fattore M per poi sottocampionarla di un fattore N. Per


fare ci, si adottano le tecniche di interpolazione e decimazione discusse
nel capitolo 7. Quindi, si fa unoperazione di precisione, calcolando i
campioni di una sequenza esattamente temporizzata.
In sostanza, si dispone di una sequenza registrata a tempi errati ed
irregolari ma noti; vogliamo ricostruire la sequenza in modo corretto.
sorprendente la precisione dellinterpolazione necessaria per garantire un
buon rapporto segnale - rumore p.e. 100 dB, corrispondente ai 16 bit con
cui i campioni sono registrati su un CD. Il segnale desiderato :
< n <

s(nT ) ;
Il segnale disponibile sia invece :

tn nT = n << T

s(tn );

s(nT ) = s(tn n ) s(tn ) n

ds(t)
ct=tn
dt

Lerrore quadratico medio pertanto:


2

2
ds

dt

Nel caso di sequenze a spettro uniforme, utilizzando il teorema di Parseval


si ottiene, indicando con 2 il valore quadratico medio del segnale:
s
2
2
2
2
2
2
ds
= 2 SNR1 = 1010 = = = .55105
dt
3T 2
2
3 T2
T2
Lerrore di temporizzazione nellinterpolazione deve essere dellordine del
milionesimo di campione se i successivi errrori temporali sono perfettamente casuali e quindi creano un disturbo casuale. Se invece supponiamo che i successivi valori n siano tutti eguali tra loro (o lentamente variabili) allora lerrore diventa praticamente inosservabile perch
equivale ad avere un errore nella funzione di trasferimento pari a:
() = ej
Tuttavia questo ritardo (o anticipo) indesiderato va ridotto a valori accettabili (ben maggiori del milionesimo di campione) se si vogliono temporizzare pi segnali assieme.
49

CAPITOLO 3 RICOSTRUZIONE DI SEGNALI CONTINUI

3.6.2

Interpolazione irregolare con la funzione sinc

Rimane da discutere il problema dellinterpolazione di funzioni campionate irregolarmente e cio ad intervalli ineguali di tempo o spazio. In
linea teorica, per N tanto grande da poter applicare in pratica un filtro
ideale, se si hanno a disposizione N campioni nellintervallo NT , anche
se non equispaziati, tuttora possibile determinare gli N campioni equispaziati originali e di qui linterpolazione con un fitro ideale; basta scrivere
un sistema di N equazioni in N incognite dove i termini noti sono gli N
valori assunti dalla funzione xn nei tempi assegnati (tn irregolari) e le
incognite i valori dei campioni an ai tempi nT . Il sistema:
+N/21

x(t) =

n=N/2

an sinc(

t nT
);
T

x(tn ) = xn ; n = N/2, . . . , N/2 1


(3.25)

ha tante equazioni quante incognite. In termini matriciali si ha:


G a=x
dove x , a sono i vettori di componenti {xn }, {an } rispettivamente e la
matrice G ha componenti
gi,j = sinc(

ti tj
)
T

Il sistema diventa mal condizionato non appena il campionamento diventa fortemente irregolare; se vi sono due campioni molto vicini, due righe
della matrice G saranno molto simili tra loro ed un autovalore almeno
della matrice G sar molto basso, ecc. Quindi, questa tecnica di interpolazione, apparentemente infallibile, destinata a dare risultati poco
utili.

50

Capitolo 4
La trasformata z
4.1

Introduzione: sequenze e polinomi

Nellelaborazione numerica dei segnali viene fatto continuo uso della


Trasformata z, e cio di una corrispondenza che viene stabilita tra sequenze di campioni (complessi o reali) e polinomi in una variabile complessa
che verr indicata con z. In questo capitolo cercheremo di riassumere le
caratteristiche della trasformata z usando solo concetti elementari. Anzitutto ricordiamo che la trasformata z di una sequenza di lunghezza finita
{a1,n } contenuta tra le posizioni indicizzate con M, ...N il polinomio
(con esponenti sia positivi che negativi) nella variabile complessa z:
A1 (z) =

N
X

a1,n z n

(4.1)

n=M

Ad esempio, la sequenza costituita da un campione di ampiezza 2 al posto


caratterizzato dallindice n = 18 e di un altro campione di ampiezza -3
al posto caratterizzato dallindice n = 1 il polinomio:
A1 (z) = 3 z + 2 z 18

Quindi la trasformata z di una sequenza {a1,n } di lunghezza finita a meno


del fattore z M il polinomio nella variabile complessa z 1 :
A1 (z) = z M P (z 1 )
dove P (z) un polinomio vero e proprio (contenente solo potenze positive
cio) di ordine M +N. Ritardare di K campioni una sequenza corrisponde
51

CAPITOLO 4 LA TRASFORMATA Z

a moltiplicarne la trasformata z per z K e viceversa anticiparla di H


campioni corrisponde a moltiplicarne la trasformata per z H .
Vediamo ora perch la trasformata z serve: consideriamo la sequenza
{cn } convoluzione di due sequenze {an }, {bn }. Si abbia cio:
{cn } = {an } {bn }
cn =

ank bk

La trasformata z della sequenza {cn } il prodotto delle trasformate z


delle sequenze {an }, {bn }. Ci immediatamente verificabile mediante la
sovrapposizione degli eetti, p.e. rappresentando la sequenza {bn } come
somma di impulsi ritardati di k campioni, con k variabile. La sequenza
{cn } la somma delle repliche della sequenza {an } progressivamente
sfalsate di k campioni e moltiplicate per bk . Dette infatti:
X
al z l
A(z) =
l

B(z) =

bk z k

C(z) =

cn z n

si ha:
C(z) =

bk z k

!
X

al z l

= B (z) A(z)

Poi, anche vero che moltiplicando due polinomi se ne ottiene un


terzo che ha per sequenza dei coecienti la convoluzione delle sequenze
dei coecienti dei primi due. A prodotti di convoluzione di sequenze
(indicati con ), estremamente utili da calcolare, corrispondono quindi i
prodotti delle rispettive trasformate z.

!
!
X
X
C(z) =
(4.2)
bk z k
al z l =
k

= B (z) A(z) =
52

XX
k

al bk z (k+l)

(4.3)

4.1 INTRODUZIONE: SEQUENZE E POLINOMI

e posto:
n=k+l
si verifica che:
C(z) =

X X
n

ank bk

z n =

cn z n

Per semplicit supporremo che le sequenze studiate abbiano sempre il


primo campione nellorigine (M = 0) e pertanto le loro trasformate z
siano polinomi che contengono il termine di grado zero.
Per il teorema fondamentale dellalgebra ogni polinomio di ordine N
a coecienti complessi ha N radici nel campo complesso z1 , z2 , ....zN ;
quindi ogni sequenza di N + 1 campioni complessi che inizia a
partire dallorigine dei tempi (il primo campione posto nella posizione di indice 0) si pu decomporre nella convoluzione
di N sequenze elementari costituite da 2 campioni complessi
di cui il primo di ampiezza unitaria ed posizionato nellorigine ed il secondo, posizionato al posto di indice 1, ha valore
zn , n = 1, ....N . Infatti una qualsiasi sequenza di N campioni che inizia
nellorigine ha trasformata z pari a:
A(z) =

N
X

an z n

n=0

Ma, per il teorema fondamentale dellalgebra possiamo scrivere:


A(z) =

N
X

an z

= a0

n=0

N
Y

(1 zn z 1 );

(4.4)

n=1

Abbiamo mostrato che la sequenza di N+1 campioni {an ; n = 0, 1, 2, .....N }


perci decomponibile nel prodotto di convoluzione che segue:
{an } = a0 {1, z1 } {1, z2 } {1, . . . } {1, zN }

(4.5)

Questo fatto, che non si estende a due o pi dimensioni, ci porta a grandi


semplificazioni; infatti, qualsiasi sequenza di lunghezza finita potr essere
vista come la convoluzione di sequenze elementari di due campioni, che
chiameremo zeri per il motivo indicato nella sezione 3.
53

CAPITOLO 4 LA TRASFORMATA Z

4.2

Sistemi lineari discreti

Un sistema lineare, a cui si applica la sovrapposizione degli eetti,


caratterizzato da un ingresso ed unuscita; la linearit permette di calcolare luscita supponendo che lingresso sia costituito da una successione di
segnali impulsivi, che possono essere considerati uno per volta; nel caso
discreto, che quello di interesse nel seguito, il sistema ha per ingresso
la sequenza illimitata di campioni {xn } e per uscita la sequenza {yn };
lintervallo di campionamento in ingresso ed uscita identico.
La risposta del sistema ad un impulso nella posizione iesima sar
una sequenza hi,k con lindice k compreso tra i valori Mi e Ni ; la sequenza hi,k pu cambiare al variare dellindice i. Sempre per la sovrapposizione
degli eetti, luscita sar
Nnk

yn =

xnk hnk,k =

k=Mnk

nN
Xl

xl hl,nl

l=n+Ml

Ora, supponiamo che la risposta allimpulso del sistema non dipenda


dallindice ma sia tempo (spazio) invariante. Luscita
yn =

N
X

k=M

xnk hk =

nN
X

xl hnl ;

l=n+M

{yn } = {xn } {hn }

e cio la convoluzione tra le due sequenze {xn } e {hn }.


Nel caso che la sequenza di ingresso ad un sistema tempo (spazio)
invariante sia una sinusoide campionata noto (ma lo dimostreremo di
nuovo nella prossima sezione) che la risposta ancora una sinusoide campionata della stessa frequenza di quella di ingresso ma di diversa ampiezza
e fase, dovute al transito per il sistema; le caratteristiche di ampiezza e
di fase del sistema lineare (al variare della frequenza della sinusoide di
ingresso) ne corrispondono alla funzione di trasferimento.

4.3

Sinusoidi campionate; zeri

Abbiamo visto come ogni sequenza si pu decomporre in una convoluzione


di tante sequenze elementari di due campioni; per trovare la funzione di
trasferimento di una sequenza di N + 1 campioni e quindi cosa accade
54

4.3 SINUSOIDI CAMPIONATE; ZERI

quando convolviamo una sinusoide (campionata) con una sequenza di


N + 1 campioni, basta convolvere questa sinusoide successivamente con
tutte le N sequenze elementari componenti (la funzione di trasferimento
della sequenza quindi il prodotto delle funzioni di trasferimento delle
sequenze elementari). Ci riferiremo a sinusoidi generalizzate, e cio esponenziali complessi il cui modulo pu crescere o decrescere geometricamente con lindice n. Queste sinusoidi generalizzate sono delle sequenze
{xn } illimitate descritte dalla formula:
xn = Bn exp(j2fnT ) ;

(4.6)

dove B un numero complesso e la frequenza f pu avere un valore


qualsiasi; peraltro inutile fare uscire f dallintervallo fN < f < fN
dove fN = 1/2T la frequenza di Nyquist, e ci per evitare equivocazione.
Nel caso = 1 si ritrovano le sinusoidi complesse; le consuete sinusoidi e
cosinusoidi ne costituiscono le parti reali ed immaginaria: si ha cio:
q
BI
j
B = BR + jBI = |B|e ;
|B| = BR2 + BI2 ; tan =
BR
Bej2f nT = |B| [cos(2fnT + ) + j sin (2fnT + )] ;
Indichiamo ora con z1 la variabile complessa
z1 = ej2f T
Una sinusoide generalizzata quindi la sequenza:
{xn } = {Bz1n };

(4.7)

Se si convolve una sinusoide generalizzata con la sequenza di due campioni 1, z0 posizionati nellorigine e nel campione successivo, si osserva
che il segnale in uscita :
{Bz1n } {1, z0 } = {Bz1n Bz0 z1n1 } = {B(1 z0 z11 )z1n }

(4.8)

e cio ancora la stessa sinusoide generalizzata, moltiplicata per il fattore


complesso 1 z0 z11 , nullo quando
z1 = z0
55

CAPITOLO 4 LA TRASFORMATA Z

Pi in generale, utilizzando la formula (4.4) si verifica che la convoluzione


di una sinusoide generalizzata con una sequenza qualsiasi pu essere ottenuta come la cascata delle convoluzioni con le sequenze elementari di
due campioni in cui la sequenza stata decomposta.
Pertanto, il risultato della convoluzione di una sinusoide generalizzata
campionata ed una sequenza qualsiasi {an } ancora la stessa sinusoide
generalizzata moltiplicata per una fattore complesso che definito come
la funzione di trasferimento della sequenza; questo fattore A(z1 )
e cio il valore che assume la trasformata z della sequenza, assegnando
allargomento il valore z1 della frequenza generalizzata della sinusoide
z1 = ej2f T .
Abbiamo quindi trovato un significato fisico alla variabile z. Peraltro,
il significato ovvio della variabile z lanticipo di un campione. Con
ci si intende che se una trasformata di una sequenza moltiplicata
per z, i campioni corrispondenti alla nuova trasformata sono quelli di
prima, ma anticipati di un intervallo T. Un qualsiasi valore di z pu
rappresentare largomento di una sinusoide generalizzata; il valore A(z1 )
della trasformata z di una sequenza {an } calcolata per il valore z1
il fattore per cui deve essere moltiplicata la sinusoide generalizzata di
argomento z1 quando viene convoluta con la sequenza {an }.
Si comprende perch una sequenza di due campioni viene indicata
come uno zero: infatti la radice (lo zero) del polinomio di primo grado corrispondente alla sua trasformata z largomento della sinusoide
generalizzata che, convoluta con la sequenza elementare, viene annullata.

4.4

Il piano z

Largomento delle sinusoidi generalizzate rappresentabile come un punto di un piano complesso (figura 4.2) detto piano z; la distanza dallorigine corrisponde a ; langolo formato con lasse delle ascisse T = 2f T .
In questo piano, viene tracciato un cerchio di raggio unitario, che il
luogo degli argomenti corrispondenti a sinusoidi campionate vere e proprie. La sinusoide a frequenza 0, ( il segnale costante) corrisponde al
punto z1 = 1 + j 0; la sinusoide alla frequenza di Nyquist invece
corrispondente al punto z2 = 1 + j 0.
56

4.4 IL PIANO Z

Figura 4.1: Esempi di sinusoidi generalizzate campionate xn = An ejn ;


= 2f /fc : a) =1, f /fc =0; b) =1, f/fc =0.5; c) =0.95, f /fc =2/5;
d) =1.05, f /fc =2/5; e) =0.95 f/fc =1/4.

4.4.1

Le sequenze nel piano z

Una qualsiasi sequenza di N + 1 campioni rappresentabile nel piano


z con la disposizione degli N zeri del polinomio corrispondente alla sua
trasformata z; compare anche una singolarit (un polo di ordine N nellorigine del piano z) che per non ha un vero e proprio significato fisico
e nasce dalla scelta dellesponente negativo per rappresentare i ritardi
nella trasformata z.
Come gi osservato, immediato trovare la funzione di trasferimento corrispondente ad una sequenza qualsiasi; infatti, basta calcolare il
valore della trasformata z della sequenza sul punto del cerchio unitario
corrispondente alla frequenza desiderata. Procedendo per via geometrica, si vede che nel caso di una sequenza di due campioni, la funzione di
57

CAPITOLO 4 LA TRASFORMATA Z
Im
2fT

z0

z1
e j2fT

z2

Re

Figura 4.2: Calcolo della F.d.T. di una sequenza relativa ad uno zero per
via geometrica
trasferimento (fig. 4.2):
A(z) = 1 z0 z 1 =

(z z0 )
z

e quindi corrisponde al rapporto tra i due vettori complessi che congiungono il punto rappresentativo della sinusoide sul cerchio unitario e lo zero
e lorigine del piano z rispettivamente. Le caratteristiche di ampiezza e
di fase sono:
|z z0 |
|A(z)|z=exp(jT ) =
= |z z0 |
|z|
]A(z)z=exp(jT ) = ] (z z0 ) ]z

E quindi possibile tracciare semplicemente la caratteristica di ampiezza


corrispondente a zeri variamente posizionati nel piano z ed a sequenze
pi complesse; ovviamente, la funzione di trasferimento di una sequenza il prodotto delle funzioni di trasferimento delle sequenze elemen58

4.4 IL PIANO Z

Figura 4.3: Caratteristiche di ampiezza e fase dello zero complesso della


figura 4.2
tari cos come la sequenza convoluzione delle sequenze elementari. Sequenze reali hanno zeri reali o complessi coniugati, come ovvio visto che
corrispondono a radici di polinomi a coecienti reali.

4.4.2

Zeri a fase minima e fase massima

Si possono avere zeri sia sul cerchio unitario (ed allora annullano sinusoidi
vere e proprie) che fuori (annullano sinusoidi generalizzate crescenti con
lindice) che infine dentro (annullano sinusoidi generalizzate decrescenti
con lindice).
Gli zeri posizionati dentro il cerchio unitario sono chiamati zeri a
fase minima e zeri a fase massima quelli allesterno (fig. 4.4,4.5). Il
motivo si evince dalle caratteristiche di fase delle rispettive funzioni di
59

CAPITOLO 4 LA TRASFORMATA Z

Figura 4.4: Caratteristiche di fase ed ampiezza di una F.d.T a fase


minima
trasferimento. Calcoliamo anzitutto la caratteristica di fase di uno zero
a frequenza zero, posto sul cerchio unitario. Si abbia cio:
A (z) = 1 z 1
La caratteristica di fase e cio lo sfasamento apportato a sinusoidi di
pulsazione :

] A (z) |z=exp(jT ) = ] 1 ejT =


T
T
jT /2

=
sign ()
j sin
= ] 2e
2
2
2

discontinua nellorigine. Si consideri ora uno zero sempre a frequenza


zero, ma non sul cerchio unitario. Sia quindi:
A (z) = 1 z 1
60

4.4 IL PIANO Z

Figura 4.5: Caratteristiche di fase ed ampiezza di una F.d.T a fase


massima

] A (z) |z=exp(jT ) = ] 1 ejT ;

Se < 1 e quindi lo zero interno al cerchio unitario, la fase a frequenza 0


0 (vedi figura 4.6) e la caratteristica di fase a frequenza zero continua.
Se lo zero fuori del cerchio unitario e cio se > 1, la fase a frequenza
zero . Infatti, la somma dei campioni della sequenza negativa, e
infatti si osserva in figura una discontinuit di fase nell0 origine pari a 2 .
Finora abbiamo implicitamente supposto reale. Se invece si ha
= || ejT
la frequenza dello zero , e lintero grafico di figura 4.6 , periodico di
periodo 2, rimane immutato a parte una traslazione di un angolo T .
Il motivo della discontinuit della caratteristica di fase di 2 , nel
caso di zero a fase massima, pu essere anche compreso con la seguente
considerazione. Quando costruiamo una caratteristica di fase, il punto
61

CAPITOLO 4 LA TRASFORMATA Z

Figura 4.6: Caratteristiche di fase di uno zero a frequenza zero sia a fase
minima che a fase massima ( = 0, 9; 1, 1.1). Nel caso dello zero a fase
massima, la fase a frequenza zero . Quando lo zero assai prossimo al
cerchio unitario, variazioni minime dei valori dei campioni della sequenza
possono portare a variazioni molto forti della caratteristica di fase.
rappresentativo della frequenza della sinusoide fa un intero giro lungo
il cerchio unitario, dalla frequenza di Nyquist negativa a quella positiva
( ). Nel caso di uno zero interno al cerchio unitario e quindi
a fase minima, la fase della funzione di trasferimento parte e ritorna
al valore iniziale: infatti, sia il vettore z che il vettore z z0 fanno
entrambi un intero giro intorno allorigine. Nel caso di uno zero a fase
massima, la fase ritorna si al valore iniziale ma deve avere fatto un salto
di 2. Infatti in questo secondo caso, il vettore z fa un intero giro intorno
allorigine mentre il vettore z z0 no. Nel caso di uno zero a fase massima
pertanto vi sar sempre una discontinuit di 2 della fase della funzione
di trasferimento.

4.4.3

Sequenze ribaltate: A(z)

E interessante osservare che due zeri reciproci e coniugati (ossia due


sequenze di 2 campioni le cui trasformate z sono caratterizzate da zeri
z0 , 1/z0 in posizione reciproca e coniugata, e cio in posizione opposta
rispetto al cerchio unitario) hanno eguale andamento della caratteristica
di ampiezza (ma solo sul cerchio unitario) e diversa caratteristica di
62

4.4 IL PIANO Z

fase. Ponendo z = ej
|A(z)|2 = |1 z0 ej |2 = 1 + |z0 |2 2Re(z0 ej );
la sequenza con lo zero ribaltato Ar (z), ha la seguente caratteristica di
ampiezza (immutata, a meno di un fattore):
|Ar (z)|2 =

|z0 ej |2
1 + |z0 |2 2Re(z0 ej )
|A(z)|2
=
=
|z0 |2
|z0 |2
|z0 |2

Consideriamo una sequenza causale {an }; 0 n N, e quindi an =


0; n < 0 la cui trasformata z un polinomio A(z) a coecienti com
plessi di grado N. Indicheremo con A(z)
lo stesso polinomio A(z) ma
con i coecienti coniugati e nellordine inverso; esso trasformata z della
sequenza {
an } che si ottiene dalla sequenza {an }, coniugandola e ribaltandola rispetto allistante 0 e ritardandola in modo da riavere una sequenza
causale. Risulta che, se la sequenza corrisponde ad un polinomio A(z) di
grado N ed quindi lunga N + 1 campioni, si ha:

A(z)
= z N A (1/z);

|A(z)|z=ejT = |A(z)|
z=ejT

(4.9)

Bisogna rammentare che il campione di posto 0 della sequenza {an }


a
0 = aN 6= 1.

4.4.4

Sequenze a fase minima, massima o mista

Una sequenza A(z) la cui trasformata z ha tutti gli zeri dentro il cerchio
unitario detta una sequenza a fase minima. Se tutti gli zeri sono fuori

del cerchio unitario, la sequenza detta a fase massima; ad esempio, A(z)


a fase massima, se A(z) a fase minima. La sequenza detta a fase
mista nei casi in cui parte degli zeri sono dentro e parte sono fuori del
cerchio.
Convolvendo una sequenza {an } di N + 1 campioni con la sequenza {
an } (quella che si ottiene ribaltando e ritardando la sequenza {an }
come visto al paragrafo precedente) si ottiene una sequenza lunga 2N +1
campioni, simmetrica rispetto al campione di posto N ; ci si pu verificare con una sequenza corrispondente ad uno zero e poi osservando che
convoluzioni di sequenze simmetriche sono sequenze simmetriche. Nel do
minio delle trasformate, si passa da A(z) ad A(z)
ribaltando tutti gli N
63

CAPITOLO 4 LA TRASFORMATA Z

zeri della trasformata nella posizione reciproca rispetto al cerchio unitario


(e coniugata se si tratta di zero complesso). Pertanto la caratteristica di

fase di A(z)A(z)
sar quella corrispondente ad un ritardo pari a NT e
cio:

[A(z)A(z)]|
z=ejT = NT

Quindi la caratteristica di fase della trasformata z di una sequenza a

fase massima A(z)


si deduce facilmente da quella della sequenza a fase
minima A(z) corrispondente.

A(z)|
z=ejT = A(z)|z=ejT NT
Ribaltando gli zeri rispetto al cerchio unitario, non cambia la caratteristica di ampiezza, come si visto, ma si ribalta (e si ritarda) la sequenza
nel tempo.

4.4.5

Trasformata di Fourier e trasformata z

E evidente che la trasformata z di una sequenza di N campioni e cio:


X(z) =

N1
X

xn z n

n=0

e la trasformata di Fourier della stessa sequenza:


XF (f ) =

N1
X

xn ej2f nT

n=0

sono legate tra loro ed in particolare:


XF (f ) = X(z = ej2f nT )
e cio i valori assunti dalla trasformata z lungo il cerchio unitario sono
appunto i valori della trasformata di Fourier della sequenza stessa. I
valori della trasformata di Fourier discreta si otterranno poi campionando
lungo il cerchio unitario, ad angoli crescenti multipli di 2/N, i valori
della trasformata z.
Xk =

N1
X

xn ej2kf nT = X(z = ej2nkf T ) = X(z = ej

n=0

64

2nk
N

4.4 IL PIANO Z

4.4.6

Propriet della trasformata zeta

Si verifica che la trasformata z, tra le altre, ha le seguenti proprieta:


Linearit
Z (a {xn } + b {yn }) = aX (z) + bY (z)

(4.10)

Spostamento temporale
Z ({xnm }) = z m X (z) ;
infatti

X
X
xnm z n = z m
xk z k = z m X (z)

n=

(4.11)
(4.12)

k=

Scalamento in z
X

z
a

{an xn }

(4.13)

ed in particolare se a = ej0 T , la moltiplicazione per una sinusoide


complessa nei tempi, comporta la rotazione della trasformata z di un angolo corrsipondente alla rotazione di fase della sinusoide in un campione.
Dierenziazione in z
d
X (z) {nxn }
infatti
dz

X
d
d X
n
z X (z) = z
xn z =
nxn z n
dz
dz n=
n=

4.4.7

(4.14)

Durata di sequenze con varia caratteristica di


fase

Una sequenza la cui trasformata z sia a fase zero sul cerchio unitario (abbiamo appena visto che la trasformata z sul cerchio unitario coincide con
la trasformata di Fourier) simmetrica rispetto allorigine dei tempi e
quindi non causale; tra tutte le sequenze con unassegnata caratteristica di ampiezza quella che ha la durata minima nel senso che vedremo
tra breve. Inoltre, sempre a pari caratteristica di ampiezza, tra le sequenze causali la sequenza a fase minima quella che ha ritardo minimo
e cio ha lenergia massimamente concentrata presso lorigine dei tempi,
ma solo per n 0. La dimostrazione elementare e verr fatta per
65

CAPITOLO 4 LA TRASFORMATA Z

segnali continui, ma valida anche per segnali campionati. Utilizziamo


come misura della durata di una funzione del tempo a(t) lespressione:
vR
u + 2 2
u
t a (t)dt
=
(4.15)
= t R
+ 2
a (t)dt

uR
u + dA() 2
u d d
= t R +
|A()|2 d

Lequazione precedente risulta dal teorema di Parseval applicato alle


trasformate di ta(t) e a(t). Ponendo poi:

si vede che:

A() = |A()|ej()

dA()
d|A()|
d
j()
=e
+ j|A()|
d
d
d
v
u R + h
i
d|A()| 2
u
2 d 2 d
+
|A()|
u
d
d
=t
R +
2
|A()| d

(4.16)
(4.17)

(4.18)

A pari caratteristica di ampiezza, il valore minimo di si raggiunge per


fase zero, quando il secondo addendo (positivo o nullo) nellintegrale
nullo. Ancora, quando la fase non nulla, la fase totale sar la somma
delle fasi contribuite da ogni zero (si ricorda che la dimostrazione valida
anche per segnali campionati). Portando uno zero da fase minima a fase
massima la caratteristica di ampiezza non cambia ma il termine |d/d|
cresce, come facile verificare nel caso semplice di uno zero reale. Quindi,
la condizione di fase minima porta anche a ridurre al minimo il secondo
addendo dellintegrale e infine .

4.5

Poli

E interessante studiare sequenze aventi trasformata z inversa di quella


corrispondenti agli zeri, e cio del tipo
C(z) =

1
1
;
=
B(z)
1 z0 z 1

B(z) = 1 z0 z 1 ;
66

(4.19)

4.5 POLI

Convolvere una sequenza qualsiasi prima con la sequenza di trasformata


B(z) (lo zero) e poi con quella di trasformata C(z) come non fare nulla
o fare una convoluzione con un impulso nellorigine, o moltiplicarne la
trasformata per una trasformata z unitaria. Abbiamo quindi introdotto
una sequenza {cn } [lantitrasformata di C(z) ] inversa alla sequenza
{bn } = {1, z0 } corrispondente allo zero B(z); infatti convolvere per {cn }
compensa le modifiche apportate alla funzione di trasferimento dalla
convoluzione con la sequenza {bn } [corrispondente a B(z)] . Le sequenze
inverse delle sequenze elementari di due campioni (zeri) sono indicate
con il nome di poli.
Poich per la funzione C(z) non un polinomio di grado
finito, la sequenza {cn } non univocamente determinata.
Infatti vedremo ora che loperazione di antitrasformazione di C(z)
non immediata; questa operazione univoca solo se la funzione un
polinomio di ordine finito nella variabile z 1 o magari z se vi sono anticipi
invece che ritardi; in questo caso, basta la diretta identificazione del
coeciente del termini di grado iesimo per trovare il termine iesimo
della sequenza.
Il problema sostanziale e non solo formale: infatti esistono infinite
sequenze, di durata illimitata, che convolute con una sequenza di due
campioni danno come risultato limpulso unitario nellorigine e cio hanno
una trasformata z inversa di quella di uno zero. La verifica semplice:
si consideri la sequenza di due campioni b0 = 1; b1 = z0 e si cerchi la
sequenza {cn } tale che:
{bn } {cn } = (n);
(n) = 1;

n = 0;

(4.20)
n 6= 0

(n) = 0;

cn z0 cn1 = (n)

(4.21)

Questa unequazione alle dierenze finite che si pu risolvere per sostituzione. Supponiamo ora che z0 sia uno zero a minima fase e cio |z0 | < 1.
Poniamo c1 = 0 e risolviamo per indici diversi da 1; risulta:
cn = 0;

cn = z0n ;

n < 0;

n0

(4.22)

Peraltro, se avessimo posto c1 = 0 avremmo trovato:


cn = 0;

cn = z0n ;

n 0;
67

n<0

(4.23)

CAPITOLO 4 LA TRASFORMATA Z

Quindi abbiamo trovato per la sequenza {cn } almeno due diverse soluzioni,
ed anzi infinite perch infinite combinazioni lineari di queste due soluzioni
sono ancora soluzioni del problema. Nel caso quindi di uno zero a minima
fase, la sequenza causale (quella nulla per n < 0) convergente e quella
anticausale divergente. Si osserva invece che con |z0 | > 1 e cio con
uno zero a massima fase, vero il contrario e cio la sequenza anticausale
convergente e quella causale divergente.Allo stesso risultato si arriva

hn

an= z0-n

H(z)= (1-z0z-1)

a1n

a2n

Figura 4.7: Rappresentazione delle sequenze inverse degli zeri


dal dominio delle trasformate utilizzando la serie geometrica; possibile
68

4.5 POLI

scrivere che:
1
2
3
= 1 + (z0 z 1 ) + (z0 z 1 ) + (z0 z 1 ) + 1, z0 , z02 , z03 , . . .
1
1 z0 z
(4.24)
sequenza causale e convergente se lo zero a minima fase; ma anche
1
z
1
=
(4.25)
=
1
1 z0 z
z0 1 z01 z

z
z 2
z 3
z
1+
+ ( ) + ( ) + ...

z0
z0
z0
z0
sequenza anticausale e convergente se lo zero a massima fase.
Da un altro punto di vista, si pu osservare che lo zero a fase minima o
a fase massima annulla una sinusoide generalizzata che decresce o cresce
con lindice. Si divida ora la sinusoide generalizzata in due sottosequenze
in corrispondenza dellorigine, e cio {z0n ; n 0} e {z0n ; n < 0}; il
risultato della convoluzione di ognuno dei due tronconi con lo zero sar
sempre nullo tranne che nellorigine. Ancora, poich sommando i due
tronconi si ritrova la sinusoide generalizzata, si conclude che i due impulsi
che si trovano convolvendo i due tronconi destro o sinistro sono di segno
opposto (fig. 4.7).
La sequenza corrispondente ad un polo pu essere sia luno che laltro
dei due tronconi (a meno del segno); pi in generale una qualsiasi combinazione lineare dei due tronconi; in un modo o nellaltro si trova una
sequenza che convoluta con uno zero d un impulso; importante osservare che sempre solo uno dei due tronconi convergente; laltro tende ad
infinito.
Da quanto osservato, si conclude che vi sono infiniti modi per compensare leetto di uno zero. Quindi, ad un polo corrispondono infinite
sequenze; il grado di libert che ne consegue pu essere utilizzato in vario
modo: ad esempio imponendo che la sequenza inversa assuma un valore
assegnato ad un certo istante. Peraltro, tra tutte le sequenze inverse possibili, una sola sar convergente, ed in particolare sar
causale nel caso di poli a fase minima (inversi di zeri a fase minima) e
anticausale nel caso di poli a fase massima.
La sequenza inversa unica qualora il problema esige la convergenza
(valore assegnato pari a zero a tempo infinito), o qualora esige la causalit
(valore assegnato pari a zero per n = 1), o infine se si impone che la
risposta allimpulso abbia ad un tempo qualsiasi un valore qualsiasi.
69

CAPITOLO 4 LA TRASFORMATA Z

4.6

Equazioni alle dierenze finite

Si pu fare la convoluzione di una sequenza causale corrispondente ad un


polo (di lunghezza infinita), con un segnale numerico qualsiasi al costo
molto basso di una sola moltiplicazione ed una addizione per campione,
come se si trattasse di uno zero. Infatti sia
Y (z) =

X(z)
1 z0 z 1

(4.26)

Antitrasformando, se ne ricava lequazione alle dierenze finite


yn = xn + z0 yn1

(4.27)

da cui si calcola la sequenza in uscita e pertanto il risultato della convoluzione cercato.


La condizione di causalit applicata implicitamente se si fa il calcolo
per indici crescenti iniziando p.e. da y0 assegnando ad y1 un valore
qualsiasi; il risultato sar convergente se il polo a minima fase.
Se invece il polo fosse a massima fase, per avere un risultato ancora
convergente, si dovrebbe risolvere allincontrario lequazione di cui sopra andando verso indici decrescenti, assegnando cio ad y1 un valore
qualsiasi e quindi risolvendo a ritroso:
yn1 =

1
(yn xn )
z0

(4.28)

Ovviamente in questo secondo caso, si ha convergenza per z0 > 1.


Sia ora in generale:
Y (z) = X(z)

A(z)
B(z)

(4.29)

dove X(z) la trasformata della sequenza {xn } e A(z), B(z) sono polinomi qualsiasi.
Un sistema di questo tipo ha poli posizionati sia fuori sia dentro il
cerchio unitario e anche zeri. In questo caso necessario prima capire se
la soluzione convergente quella cercata: in questo caso, si deve:
trovare tutte le radici del denominatore (poli) e decomporre il denominatore B(z) nel prodotto di due polinomi, luno Bmax (z) con le radici
70

4.6 EQUAZIONI ALLE DIFFERENZE FINITE

tutte fuori dal cerchio unitario (poli a fase massima), laltro Bmin (z) con
le radici tutte dentro il cerchio unitario (poli a fase minima);

Y (z) = X(z)

A(z)
1
A(z)
= X(z)

Bmin (z)Bmax (z)


Bmin (z) Bmax (z)

(4.30)

convolvere con la parte causale e convergente della risposta allimpulso del sistema, e cio quella corrispondente ai poli a fase minima e agli
zeri; ci si attua utilizzando lingresso {xn } come termine forzante dellequazione alle dierenze finite corrispondente a questa parte del sistema.
In sostanza si considera il sistema:
Y1 (z) = X(z)

A(z)
Bmin (z)

(4.31)

Sia ora la sequenza {y1,n } luscita della parte causale del sistema.
Infine, si deve convolvere la sequenza {y1,n } con la risposta allimpulso corrispondente ai poli a fase massima, che convergente e quindi
anticausale.
Y1 (z)
Y (z) =
(4.32)
Bmax (z)
Per fare ci in modo semplice ed a basso costo computazionale si deve
invertire lasse temporale. Formalmente, si pu scrivere:
Y (1/z) =

Y1 (1/z)
Bmax (1/z)

Y1 (1/z) {y1,n }

(4.33)

Infatti la sequenza Y1 (1/z) la trasformata della sequenza {y1,n }, dopo


che sia stata ribaltata nei tempi.
A sua volta, il polinomio Bmax (1/z) ha le radici reciproche di quelle
del polinomio Bmax (z) e che quindi sono allinterno del cerchio unitario;
lequazione alle dierenze finite descritta dalla precedente equazione
quindi corrispondente ad un sistema causale e convergente che pu essere
risolto come nel caso precedente. Infine, la sequenza Y (1/z) deve venire
ancora ribaltata nel tempo per avere il risultato finale e cio la sequenza
Y (z).
Si osservi che per ribaltare lasse temporale di una sequenza, ne devono essere disponibili tutti i campioni, presenti e futuri. La cosa non
pu essere fatta in tempo reale con sistemi fisici che si evolvono nel tempo
(sistemi causali).
71

CAPITOLO 4 LA TRASFORMATA Z

Tuttavia, anche nel caso in cui non si hanno a disposizione tutti i


dati, ma si deve operare con un ritardo finito, lequazione con i poli fuori
del cerchio unitario pu essere risolta approssimativamente con la tecnica
discussa nel paragrafo sulle sequenze geometriche troncate.
Im

p1

j 0 T

1=1
1=0

Re

2= 1
2=1

p2

T= coordinata angolare
=larghezza di banda del filtro
0=pulsazione centrale del filtro

p1

In prossimit di p1 il cerchio
unitario approssimabile ad un
segmento rettilineo

Figura 4.8: Tecnica vettoriale per il progetto di un filtro passa-banda


realizzato con due poli complessi coniugati p1 e p2 molto vicini al cerchio
di raggio unitario

4.7

Filtri passa banda

I poli si prestano per realizzare a basso costo computazionale funzioni


di trasferimento a banda molto stretta; infatti le sequenze rappresentate
da poli sono lunghe, qualora il polo sia prossimo al cerchio unitario. Ad
esempio, supponiamo che il polo sia in z = (1 )ej0 con << 1 (figg.
72

4.7 FILTRI PASSA BANDA

Figura 4.9: Caratteristiche di un filtro passa-banda avente una banda


passsante di 40kHz attorno alla frequenza di 300kHz; fc = 2MHz
4.84.9).
A (z) =

1
1

z 1 (1

)ej0

; 0 = 0 T

Calcoliamo ora la funzione di trasferimento per valori di prossimi a 0


e quindi per:
z = ej ; = 0 + ; || << 1
A (z) |z=ej =

1
: = 0 + ; || << 1
1 (1 )ej

e sviluppando in serie lesponenziale


A (z) |z=ej =

1
1

1 (1 ) (1 j)
+ j

Usando la tecnica vettoriale per il calcolo della funzione di trasferimento, si osserva che essaha un valore massimo di 1/ per = 0 e cala
di 3 dB (un fattore pari a 2) fuori dellintervallo || = |( 0 ) T | 2.
Basta scegliere piccolo, e risultano filtri a banda molto stretta.
Come vedremo poi, discutendo della quantizzazione dei coecienti, questi
73

CAPITOLO 4 LA TRASFORMATA Z

filtri sono molto sensibili alle variazioni dei coecienti causate dalla loro
rappresentazione con un limitato numero di cifre binarie.
Di notevole interesse la realizzazione di filtri arresta banda fatta
con una coppia di un polo posto presso il cerchio unitario ed uno zero sul
cerchio unitario, isofrequenziale. La funzione di trasferimento si annulla
alla frequenza 0 ma ritorna 3 dB al di sotto del valore unitario appena
fuori dellintervallo T ' 2 (fig. 4.10).

Figura 4.10: Caratteristiche di un filtro arresta banda avente una banda


soppressa di 20kHz attorno alla frequenza di 400kHz; fc = 2MHz

4.7.1

Sfasatori puri

Altro caso interessante quello dello sfasatore puro; qui abbiamo un polo
ed uno zero messi in posizione reciproca coniugata rispetto al cerchio
unitario; pertanto il modulo della funzione di trasferimento costante,
ma non cos la fase che avr una rapida variazione allinterno del solito
intervallo di frequenza T ' 2 (fig. 4.10). Si osservi che trasformate
z del tipo

A(z)
(4.34)
= Q(z);
|Q(z)|z=ejT = 1
A(z)
74

4.7 FILTRI PASSA BANDA

hanno modulo sempre unitario (sul cerchio unitario, ovviamente) e rappresentano sfasatori puri, causali e convergenti se il polinomio A(z) a
minima fase.

Figura 4.11: Caratteristiche di uno sfasatore puro con sfasamento intorno


ai 600kHz in un intervallo di 50kHz; fc = 2MHz
La caratteristica di fase di uno sfasatore puro causale e convergente
sempre monotona decrescente; per dimostrarlo basta considerare il caso
di un sistema con un solo zero ed un solo polo reali; casi di maggiore
complessit si riporteranno a cascata di sistemi come questo, centrati a
dierenti frequenze e quindi ruotati intorno al cerchio unitario in vario
modo:
e (z)
a + z 1
A
H(z) =
;
=
1 a z 1
A (z)
La caratteristica di fase :
e (z) = T 2A (z)
H(z) = () = A (z) + A

a sin T
1 a cos T
Il ritardo di gruppo dello sfasatore puro () , che corrisponderebbe al
ritardo di un segnale passabanda centrato a pulsazione , viene ottenuto
() = T 2 tan1

75

CAPITOLO 4 LA TRASFORMATA Z

Figura 4.12: Andamento del ritardo di gruppo di uno sfasatore puro


(a=0.8; T=1).
dierenziando la fase dello sfasatore puro () rispetto a e cambiando
segno: esso necessariamente positivo per i sistemi causali. Infatti:
1 a2
d
=T
> 0 se a = 1 < 1
(4.35)
d
1 + a2 2a cos T
Pertanto la fase di uno sfasatore puro causale e stabile sempre decrescente. Posto poi:
2T
(1 + a) T

;
max =
(1 a)

si vede che il grafico del ritardo di gruppo in funzione della frequenza (fig.
4.12) una campana di ampiezza max e banda 2/T centrata
a frequenza 0. Inoltre, max pu crescere quanto si desidera. In teoria, per un segnale a banda stretta e cio di banda = 2/T, uno
sfasatore puro potrebbe essere utilizzato al posto di una memoria di durata 2T / . Invece, con a > 1, la fase monotonamente crescente e lo
sfasatore puro, per essere stabile, deve essere anticausale.
Nel caso di polo e zero complessi, sostituendo aej ad a :

1 j
e zej
e (z)
A

a
+
z
e
A
aej + z 1
H1 (z) =
= ej
= ej
=
;
A (z)
1 aej z 1
1 aej z 1
A (zej )
() =

76

4.7 FILTRI PASSA BANDA

xn-1

xn

T
+
-

xn-2

+
-

yn-2

yn

yn-1

a1

a2

Figura 4.13: Schema a blocchi di uno sfasatore puro con due poli e due
zeri realizzato con due moltiplicazioni per campione di ingresso.
e quindi il ritardo di gruppo ancora quello della (4.35), purch si sposti
la pulsazione centrale della campana di = /T. In figura 4.13,
presentato lo schema a blocchi di uno sfasatore puro
H (z) =

e (z)
A
; A (z) = 1 + a1 z 1 + a2 z 2
A (z)

caratterizzato da due poli reali e due zeri nella posizione reciproca; esso
viene realizzato con due sole moltiplicazioni reali per ogni campione che
si presenti allingresso. Si osservi che mantiene la sua caratteristica di
sfasatore puro e quindi avere caratteristica di ampiezza unitaria, qualsiasi
siano i valori di a1 , a2 . Naturalmente, per avere stabilit, A (z) deve essere
a minima fase.

4.7.2

Oscillatori, divani, splines

Anzitutto consideriamo un esempio di equazione alle dierenze finite che


si riferisce ad un sistema che si evolve nel tempo e pertanto soggetto
alla relazione di causalit. Questo il caso del sistema con due poli in
equazione (4.36); il sistema viene qui indicato come oscillatore numerico
77

CAPITOLO 4 LA TRASFORMATA Z

poich, per opportuni valori dei parametri, la sua risposta allimpulso


pu essere una sinusoide campionata; al sistema corrisponde la seguente
equazione alle dierenze finite:
Y (z) =

X(z)
1

2z 1 cos

+ 2 z 2

= 0T

(4.36)

corrispondente ad un sistema causale perch riferita ad un oggetto fisico


che opera nel tempo e non risponde prima della sua eccitazione. Qualora
X(z) = 1 la risposta del sistema si riduce alla combinazione delle risposte
ai due poli complessi coniugati (posti vicino o sul cerchio unitario se
1) e quindi a due sequenze causali complesse coniugate la cui somma
:
sin[(n + 1)]
yn = n
;
n 0;
(4.37)
sin
Si osservi come il primo campione sempre 1, e al decrescere di loscillazione ha ampiezze crescenti. Se poi 1 loscillazione diverge ed il sistema andr incontro a fenomeni di saturazione. Se vogliamo che luscita
delloscillatore sia una cosinusoide esponenzialmente decrescente, a fase
preassegnata, si dovr aggiungere uno zero per ottenere lo sfasamento
desiderato alla pulsazione della sinusoide; p.e. ponendo:

cos z 1 cos( )
1
ej
ej
Y1 (z) =
=
+
2 1 ej z 1 1 ej z 1
1 2z 1 cos + 2 z 2
La risposta nei tempi ottenuta sviluppando le due frazioni in serie
geometriche e poi sommando i valori coniugati:
y1n = n cos(n + )
e si ritrova il caso precedente (a meno di un fattore) ponendo = /2.
Vediamo ora unapplicazione ad un sistema non causale: un divano
a molle. Si supponga di avere un sistema meccanico formato da nodi
collegati da molle; il nodo i-esimo collegato al suolo da una molla
verticale di rigidit (rapporto tra forza e deformazione) k1 ed collegato
ai nodi adiacenti i 1, i + 1 da molle di rigidit k2 ; ogni nodo poi
soggetto alla forza verticale fi . Lequazione di equilibrio del nodo i-esimo
, indicando con xi lo spostamento elastico verticale del nodo i:
k2 (xi xi1 ) + k2 (xi xi+1 ) + k1 xi = fi
78

(4.38)

4.7 FILTRI PASSA BANDA

Figura 4.14: Caratteristiche relative alla sequenza delle derivate della


risposta impulsiva dello spline in corrispondenza dei campioni
Passando alle trasformate z delle sequenze degli spostamenti X(z) e delle
forze F (z) si ha:

X(z) (k1 + 2k2 ) (z + z 1 )k2 = F (z)


(4.39)
e quindi la risposta allimpulso (F (z) = f0 e cio una sola forza posizionata sul campione di posto 0) :
X(z) =

f0
(k1 + 2k2 ) (z + z 1 )k2

(4.40)

La trasformata z della risposta di nuovo una funzione di trasferimento


simile a quella del caso precedente: inoltre, i poli del sistema sono reali,
positivi e posti in posizioni reciproche rispetto al cerchio unitario, in
quanto il prodotto delle radici del denominatore 1 ed il discriminante
positivo.
La risposta da attendersi non per quella causale, come nel caso
precedente, e cio non ci attendiamo spostamento nullo per indici inferiori
a 0, e vogliamo una risposta convergente. Sappiamo che il divano non
si deforma p.e. solo a sinistra di chi si siede e non esplode: peraltro,
79

CAPITOLO 4 LA TRASFORMATA Z

la deformazione corrispondente alla trazione violenta verso il sotto di


una molla nella parte p.e. sinistra di un divano, potrebbe essere bilanciata
da un carico opportuno, annullando cos ogni deformazione nel divano,
a destra del carico. Si pensi infatti ad un lenzuolo elastico piuttosto
che un divano a molle. Si possono avere due situazioni: in un caso
p.e. un ragazzo che disteso sul lenzuolo e lo deforma simmetricamente.
Per capire invece laltra situazione, si pensi ad una mamma che voglia
svegliare il figlio addormentato e che tiri verso lalto il lenzuolo su cui
il figlio dorme. P.e. a sinistra del ragazzo, il lenzuolo tirato verso
lalto con una curva diciamo esponenziale; a destra invece il lenzuolo
orizzontale. quindi possibile sia una soluzione simmetrica, che una
soluzione causale00 in cui il fenomeno si sviluppa solamente da un lato.
In assenza di causali esterne, sceglieremo la soluzione causale per il polo
interno al cerchio e quella anticausale per il polo esterno; sostanzialmente
cercando una soluzione che sia simmetrica negli spazi.
Posto:
p
2k2 + k1 k12 + 4k1 k2
q=
;
0q1
(4.41)
2k2

1 + q2
1
1
+
X(z) = f0
1
(4.42)
(k1 + 2k2 )(1 q2 ) 1 qz 1 qz 1
avremo:
1 + q2
q|n|
(4.43)
xn = f0
(k1 + 2k2 )(1 q 2 )
In sostanza, se le molle orizzontali sono molto flessibili, il divano si infossa
solo localmente (q ' 0); se sono rigide, il divano si abbassa quasi senza
deformarsi (q 1).
Come ultimo caso consideriamo lequazione alle dierenze finite che,
per una bacchetta elastica, lega le pendenze ai nodi yi0 e gli spostamenti
dei nodi yi ; con la solita convenzione per le trasformate z rispettive, si
ha, ricordando quanto osservato nel capitolo II:

z z 1
(4.44)
z + 4 + z 1

I poli del sistema sono reali e negativi in 2 + 3, 2 3 dentro e fuori


il cerchio unitario in posizioni reciproche (infatti il prodotto delle radici
del denominatore unitario) (fig. 4.13).
(z) = 3Y (z)

80

4.8 SERIE GEOMETRICHE TRONCATE

Dobbiamo ancora separare il polo dentro da quello fuori del cerchio e


scrivere:

1
1
0
(4.45)
Y (z) = Y (z)

1 + .268z 1 + .268z 1
nel caso di Y (z) = 1 (ingresso impulsivo, solo il campione di posto 0
non nullo) allora Y 0 (z) dierenza di due sequenze, luna causale e laltra
anticausale, simmetriche.
yn0 = (.268)|n| sign(n);

y00 = 0

(4.46)

Infatti la soluzione da scegliere in questo caso ancora quella convergente;


una bacchetta elastica la cui deflessione nulla ad intervalli regolari, se
abbassata o sollevata in corrispondenza del campione centrale, converger
a zero con spostamenti a segni alterni; le derivate nei nodi sono anchesse
decrescenti esponenzialmente a segni alterni.

4.8

Serie geometriche troncate

E utile conoscere a quale distribuzione di zeri corrisponda la sequenza


relativa ad un polo, troncata, e quindi divenuta di lunghezza finita. Allo
scopo serve il prodotto notevole:
N1
X
1 xN
=
H1 (x) =
xh
1x
h=0

(4.47)

Ponendo x = az 1 ,
H(z) =

N1
X
h=0

ah z h =

1 aN z N
= H1 (az 1 );
1 az 1

H(zk ) = 0 zk = ae2jk/N ;

(4.48)

0<k N 1

Lo zero in z = a (k = 0) si cancella con lo zero del denominatore e


rimangono pertanto N 1 zeri (i campioni della sequenza la cui trasformata z H(z) sono N) in posizione regolare attorno al cerchio di raggio
a, tranne che in corrispondenza del polo della sequenza originaria. In
conclusione, una sequenza corrispondente ad un polo, troncata dopo N
campioni, corrisponde a N 1 zeri disposti regolarmente tranne quello
81

CAPITOLO 4 LA TRASFORMATA Z

Figura 4.15: Caratteristiche della FdT H1 (z) caratterizzata da N = 19


zeri
cancellato dal polo. Per N ne emerge lequivalenza tra un polo ed
infiniti zeri messi ovunque lungo il cerchio che passa per il polo, tranne
che sul polo stesso.
Tuttavia, volendo approssimare un polo con un filtro FIR di ordine N,
non sono necessari N moltiplicatori, ma ne bastano circa log2 N; infatti
vale il seguente sviluppo in prodotto infinito:
Y
1
i
i
1
2 2
4 4
=
(1+z
)(1+
z
)(1+
z
)

=
(1+2 z 2 ); (4.49)
1
1 z
i=0

Si vede allora che con la prima moltiplicazione si realizza uno zero, con
la seconda due, con la terza quattro e cos via.
82

4.9 APPENDICE: IL CALCOLO DEI RESIDUI

Uninteressante applicazione di questo sviluppo pu essere la realizzazione con un filtro FIR a massima fase di un polo anticausale troncato
ad N campioni. Nella formula precedente, possiamo sostituire z al posto
di z 1 e poi aggiungere un ritardo z N per rendere il tutto causale. Ne
risulta la formula che segue:
z N
' (z 1 + )(z 2 + 2 )(z 4 + 4 ) . . .
1 z

(4.50)

e la conseguente generazione di N zeri a fase massima con log2 N moltiplicazioni (fig. ??).

16

Realizzazione di un polo anticausale stabile ritardato e troncato


mediante la convoluzione di zeri a fase massima

4.9

Appendice: Il calcolo dei residui

Esiste un modo semplice per decomporre un rapporto di polinomi in una


somma di fratti semplici, utilizzando il calcolo dei residui. Rinviando
per la teoria a un qualsiasi libro di analisi complessa o a Wikipedia, qui
daremo solo la ricetta per il calcolo dei residui nel caso di poli semplici.
Questo calcolo risulta utile per lantitrasformata z p.e. di funzioni di
autocorrelazione ecc.
83

CAPITOLO 4 LA TRASFORMATA Z

utilizzabile la formula che segue, dove zn ; n = 1..N, sono le N radici


del denominatore A (z) ; indichiamo poi con A0 (z) la derivata rispetto a
z del polinomio A (z):
N
X
B (z)
Rn
B (z)
B (zn )
; R0 = lim
= R0 +
; Rn = 0
z A (z)
A (z)
z zn
A (zn )
n=1

(4.51)

Per dare un esempio semplice, nel caso del calcolo dellautocorrelazione di una risposta allimpulso caratterizzata da un polo solo:
H (z) =

R (z) =

1
; R (z) = H (z) H (1/z)
1 az 1

z
z
z
B (z)
=
= 0
+ 0
A (z)
(z a) (1 az)
A (a) (z a) A (1/a) (z 1/a)

ma poich:
A0 (z) = 1 + a2 2az
1
R (z) =
1 a2

az 1
1
+
1 az 1 1 az

e infatti nel dominio dei tempi, i campioni dellautocorrelazione sono:


rn =

a|n|
1 a2

(4.52)

Un risultato equivalente sarebbe stato trovato per la risposta allimpulso


dello spline, di cui alla formula 4.40.
Il caso di poli doppi o multipli decisamente pi complesso: anzitutto
si osservi che convolvendo con se stessa una sequenza an ; n > 0 si ottiene
la sequenza (n + 1) an . Infatti:
an an = (n + 1) an ; n > 0

(4.53)

Un polo triplo invece porta alla convoluzione tripla che :


an an an =

(n + 1) (n + 2) n
a ; n>0
2
84

(4.54)

4.9 APPENDICE: IL CALCOLO DEI RESIDUI

Passando alle trasformate z, consideriamo il caso di due poli appena


dierenti posti in a1 a2 :
1
z2
=
(1 a1 z 1 ) (1 a2 z 1 )
(z a1 ) (z a2 )

z
z
z
=

a1 a2 z a1 z a2

H (z) =

Ma:

Quindi:

z
z
d

(a1 a2 )
z a1 z a2
da
d
H (z) z
da

Ma se:

z
za

z
za

X
z
=
an z n
z a n=0

(4.55)
(4.56)

(4.57)

(4.58)

(4.59)

scambiando la derivata e la somma ritroviamo la convoluzione gi vista:

d
z
d X n n
H (z) z
=z
a z =
(4.60)
da z a
da n=0
=

n1 n+1

na

n=1

(n + 1) an z n

(4.61)

n=0

Quindi, nei casi di poli doppi ed in generale n-upli compaiono le derivate


n-esime del denominatore della trasformata z rispetto al polo. Ne conseguono formule complicate che non utile considerare qui.
Comunque, gli stessi risultati si poteva trovare in modo veloce osservando che:
2

1
d
1
(4.62)
=
za
dz z a
Poi, sfruttando la propriet della trasformata z della dierenziazione in
z:
d
z X (z) {nxn } ; n > 0
(4.63)
dz
risulta:

2
1
{(n + 1) an }
(4.64)
za
85

Capitolo 5
Filtri numerici
5.1

Introduzione

In questo capitolo discuteremo delle tecniche di progetto di filtri numerici:


essi possono essere di due categorie e cio FIR (Finite Impulse Response)
o IIR (Infinite Impulse response) a seconda che la loro trasformata z
consista di soli zeri o di poli e zeri. Una buona progettazione di un
filtro numerico deve tendere ad ottenere il massimo risultato e cio la
massima aderenza alle specifiche progettuali; queste sono assegnate nel
dominio delle frequenze mediante una maschera allinterno della quale
deve essere contenuta la funzione di trasferimento del filtro sintetizzato
(fig. 5.1). Inoltre, si deve minimizzare il costo e cio minimizzare il
numero di operazioni per campione; come vedremo ci non corrisponde
necessariamente al minor numero di moltiplicazioni; strutture di filtri pi
complesse possono essere convenienti se usano moltiplicazioni per numeri
con pochi bit diversi da zero (potenze di due, ad esempio) o in genere se
sono meno sensibili alla quantizzazione dei coecienti e quindi operano
correttamente con moltiplicazioni meno costose.
Tuttavia, per comprendere le basi delle tecniche di sintesi dei filtri FIR
opportuno discutere anzitutto delle tecniche di finestramento (windowing) e cio gli eetti del troncamento nel tempo delle risposte allimpulso
desiderate con finestre (rastremazioni a zero) di vario tipo. Per semplicit lanalisi degli eetti del finestramento verr fatta per
segnali tempo continui, invece che campionati. Questo semplifica
molto le formule e le rende pi leggibili.
87

CAPITOLO 5 FILTRI NUMERICI

20 log 10 H ( )

B anda di
transizione

1+ 1
1 1

B anda
passante

B anda
oscura

Figura 5.1: Maschera di un filtro passa-basso

5.2

Finestre rettangolari e triangolari

Indichiamo con D() la risposta allimpulso desiderata per il filtro che si


deve sintetizzare. La antitrasformata di Fourier verr indicata con d(t)
ed in generale sar illimitata nei tempi. Vogliamo vedere cosa accade
troncando il segnale d(t) con una finestra rettangolare di lunghezza NT.
Nel caso discreto, considereremo la sequenza troncata dopo N campioni
(fig. 5.2).
d0 (t) = d(t) wR (t)
(5.1)
NT
NT
wR (t) = 1; |t|
; wR (t) = 0; |t|
2
2
Moltiplicare nei tempi equivale a convolvere nelle frequenze e cio a
considerare la
D0 () = D() WR ();

WR () = NT sinc(fNT )

(5.2)

La WR () tende ad un impulso ideale se N diventa molto grande e questo


corrisponde allovvia considerazione che finestrare con finestre lunghe
88

5.2 FINESTRE RETTANGOLARI E TRIANGOLARI

Figura 5.2: a) Finestra rettangolare b) Trasformata di Fourier della finestra rettangolare in dB c) Finestra triangolare d) Trasformata di Fourier
della finestra triangolare in dB
porta a piccole distorsioni. Quello che interessa per sono appunto le
distorsioni della risposta allimpulso dovute al finestramento: esse sono
di due tipi diversi: quelle dovute alla convoluzione per il lobo principale del sinc che ha i primi zeri in f = 1/NT e quelle dovute alla convoluzione per i lobi laterali, che come noto decrescono come
1/f NT dove con f abbiamo indicato lintervallo in frequenza tra la
posizione del lobo principale e quella del lobo secondario considerato. La
convoluzione per il lobo principale smussa landamento in frequenza del
filtro, e lo rende meno selettivo. I fronti di salita e di discesa, nel dominio
della frequenza, non potranno essere pi brevi di ' 2/NT ; questa una
diretta conseguenza delle limitazione della lunghezza del filtro.
Il brusco troncamento della risposta d(t) porta alla creazione di componenti ad alta frequenza che sarebbero altrimenti state assenti dalla
risposta desiderata; questo fatto viene osservato, nel dominio delle fre89

CAPITOLO 5 FILTRI NUMERICI

quenze, con la formazione di componenti ad alta frequenza dovute alla


convoluzione con i lobi laterali della finestra. Siamo quindi di fronte a
due fenomeni diversi che per interagiscono: consideriamo infatti ora una
finestra triangolare della durata ancora di N campioni;
wT (t) = 1

NT
2|t|
; |t|
NT
2

WT () =

fNT
NT
sin c2
;
2
2

(5.3)

Come si vede, per la finestra triangolare, i lobi laterali decrescono come


1/(f NT )2 ma il lobo principale ha larghezza doppia. In generale
se W () e {wn } sono legate da una trasformata di Fourier, allora la
larghezza di banda equivalente Beq la durata equivalente Teq sono cos
legate:
Z
1
(5.4)
W ()ejt d = W (0) Beq = w(0) = 1;
2
Z
w(t)dt = 1 Teq = W (0); Beq Teq = 1

Pertanto, se per ridurre leetto dei lobi laterali si addolciscono le transizioni temporali (si apre e chiude la finestra in modo graduale e quindi si
decresce Teq a pari durata NT ) nello stesso tempo si allarga larea sottesa
dalla W () perch ne allarga il lobo centrale di banda Beq .

5.3

Finestre cosinusoidali

Una forma di finestre particolarmente eciente quella delle finestre


cosinusoidali (coseno rialzato, Hann, Hamming) che danno un miglior
compromesso lobi laterali - lobo principale che non la finestra triangolare.
La finestra di Hann, o cosinusoidale cos costituita:

t
NT
wC (t) = cos
; |t| <
(5.5)
NT
2
La sua trasformata deducibile in modo sintetico con il seguente ragionamento: poich la wC (t) il prodotto, nei tempi, di una cosinusoide di
periodo 2NT e di una finestra rettangolare di durata N T , la sua trasformata sar la convoluzione con il sinc della trasformata della cosinusoide
e cio due impulsi di eguale segno in f = 1/2NT . Ma allora, i lobi laterali dei due sinc si sommano dopo una traslazione di frequenza
90

5.3 FINESTRE COSINUSOIDALI

Figura 5.3: a) Finestra cosinusoidale b) Trasformata di Fourier della


finestra cosinusoidale in dB c) Finestra a coseno rialzato d) Trasformata
di Fourier della finestra a coseno rialzato in dB
pari a 1/NT e quindi le loro ampiezze si sottraggono, avendo i due lobi
successivi segni opposti.
Pertanto, ln-esimo lobo laterale, di larghezza 1/NT come tutti gli
altri lobi laterali, decrescer con una legge del tipo (fig. 5.3):
1
1
1
=
n 1 n n(n 1)

(5.6)

e quindi quadraticamente con n. Peraltro, la larghezza del lobo principale 3/NT e cio il 25% meno del lobo principale della finestra triangolare. Quindi, la finestra cosinusoidale meglio della finestra triangolare,
per queste applicazioni: il vero vantaggio della finestra triangolare sta
nel fatto che lo spettro sempre positivo, cosa non vera per la finestra
cosinusoidale; ma questo vantaggio sar utile per la stima spettrale. Si
possono studiare finestre pi complesse, ma fondate sullo stesso principio:
91

CAPITOLO 5 FILTRI NUMERICI

ad esempio la finestra a coseno rialzato (fig. 5.3):

2t
NT
1
1 + cos
; |t| <
(5.7)
wR (t) =
2
NT
2
Qui, la trasformata si trova come convoluzione del sinc e della somma di
un impulso di ampiezza .5 nellorigine e due impulsi di ampiezza .25 alle
frequenze f 1/NT . In questo caso, i lobi laterali decrescono con legge
cubica come risulta da
1
1
1
1

=
(5.8)
4(n 1) 2n 4(n + 1)
2n(n2 1)
Il lobo centrale ha larghezza 4/NT come nel caso della finestra triangolare: anche questa finestra pi eciente della finestra triangolare,
perch a pari lobo centrale, i lobi laterali decrescono con legge cubica
invece che quadratica.

5.4

Altri tipi di finestre

In generale, si pu pensare di costruire tanti tipi diversi di finestra, che


ottimizzano diverse quantit; p.e. il raggio di girazione della risposta
allimpulso, e cio larea incrementale moltiplicata per il quadrato della
distanza dallorigine. Esistono anche famiglie di finestre (Finestre di
Kaiser) che assomigliano a delle gaussiane e quindi tendono ad avere
eguale aspetto nelle frequenze e nei tempi. La finestra di Kaiser :
q

2t 2
I0 k 1 NT
NT
wK (t) =
; |t|
(5.9)
I0 (k)
2
La funzione I0 la funzione di Bessel modificata del primo tipo, di ordine 0; Il parametro k serve ad ottenere il compromesso desiderato tra
ampiezza dei lobi laterali e larghezza del lobo principale. Una finestra
interessante la finestra di Hamming (fig. 5.4),

NT
2t
wH (t) = .54 + .46 cos
; |t| <
(5.10)
NT
2
Questa strana finestra ha un piccolo gradino agli estremi: essa quindi ha
lobi che discendono come 1/N ma con piccola ampiezza perch lo sbilanciamento dei tre lobi che vengono mediati nella convoluzione piccolo.
Il merito sta nel fatto che il primo lobo laterale ha ampiezza minima.
92

5.5 PROGETTO CON LA TECNICA MINIMAX

Figura 5.4: a)Finestra di Hamming b)Trasformata della finestra di Hamming in dB c)Trasformata della finestra di Hamming d)Particolare della
trasformata della finestra di Hamming

5.5

Progetto con la tecnica MINIMAX

Nei casi studiati finora, per un dato lobo centrale, e quindi per un dato
smussamento della risposta in frequenza, i lobi laterali decrescono con la
dierenza di frequenza; quindi le zone della funzione di trasferimento pi
lontane dalle transizioni ripide sono meno disturbate dalla finestratura.
Pu essere utile progettare un filtro in modo che tutti i lobi laterali abbiano la stessa ampiezza e cio in modo da minimizzare lerrore
massimo dovunque capiti. Questo tipo di progetto, detto MINIMAX,
eettuato in modo iterativo. In questo caso, essenziale che il numero
dei parametri che caratterizza il filtro sia limitato e ci si riferir ad un
segnale a fase zero, cio simmetrico nei tempi: si dimostra infatti che, a
parit di lunghezza del filtro, i filtri a fase zero hanno le transizioni di
ampiezza pi ripide, nel dominio delle frequenze. Sia {hn }; |n| N la
sequenza corrispondente al filtro, lungo quindi 2N + 1 campioni, di cui
93

CAPITOLO 5 FILTRI NUMERICI

per solo N + 1 sono diversi tra loro. La sua trasformata :


H() = h0 +

N
X

2hn cos(nT )

(5.11)

n=1

Vogliamo che
W ()|H() D()|

(5.12)

dove W () una funzione peso, positiva e la D() la funzione di


trasferimento desiderata.

Figura 5.5: Progetto di un filtro FIR passa basso con la tecnica


MINIMAX; progressive iterazioni
Esiste un teorema, dovuto a Chebyshev, che aerma che quando un
polinomio trigonometrico di ordine N deve approssimare una funzione
qualsiasi minimizzando lerrore massimo allora la dierenza tra la funzione approssimata e quella approssimante ha N + 2 massimi e minimi
successivi, di modulo eguale e segno alterno. Tuttavia, non sappiamo
a quali frequenze la dierenza sia massima; nasce allora una procedura
iterativa.
94

5.6 LUNGHEZZA DEI FILTRI FIR PASSA - BASSO


(0)

Supponiamo di partire da un insieme di N + 2 frequenze fi ; i =


1, . . . N + 2 e imponiamo che a queste frequenze le dierenze tra funzioni approssimante ed approssimata siano tutte eguali ad un valore
incognito. Inoltre, in corrispondenza delle discontinuit della maschera la
dierenza tra la funzione di trasferimento sintetizzata e quella desiderata
raggiunger un minimo od un massimo; pertanto, due frequenze estremali
vanno anche posizionate in corrispondenza delle frequenze limite della
banda passante e della banda attenuata dove appunto la caratteristica
desiderata risulta essere discontinua. Scriveremo poi:
"
#
N
X
(0)
(0)
(0)
(0)
W (i ) D(i ) [h0 +
2h(0)
(5.13)
n cos(n i T )] =
n=1

= (1)i (0) ;

(0)

(0)

i = 1, . . . N + 2; i = 2fi

Questo un sistema lineare di N + 2 equazioni nelle N + 2 incognite


(0)
hn , n = 0, ..N; (0) , che d sempre una soluzione. Tuttavia, in gen(0)
erale non sar vero che le frequenze fi scelte allinizio risultino essere
le frequenze estremali, e cio le frequenze alle quali la dierenza (approssimante - approssimata) raggiunge i massimi e minimi: le frequenze
estremali che risultano in questa prima approssimazione saranno invece
(1)
altre, che indicheremo con fi ; pertanto alle frequenze estremali la differenza non risulta essere costante, come sarebbe richiesto. E necessario
iterare con il secondo insieme di frequenze; si risolve di nuovo il sistema di
(k)
(k+1)
equazioni (5.13) e cos via fino a che fi ' fi
. A questo punto siamo
alla convergenza ed accade appunto che a queste frequenze le dierenze tra funzione approssimante ed approssimata hanno i valori (estremi)
tutti eguali a (k+1) . A questo punto si verifica se (k+1) . Se s, il
problema risolto. Altrimenti si deve ricominciare con N pi grande.
Naturalmente, se troppo piccolo rispetto a quello richiesto, si pu
ricominciare con un valore di N minore (fig. 5.5).

5.6

Lunghezza dei filtri FIR passa - basso

opportuno disporre di una stima del numero N di campioni da cui


costituito un filtro FIR, passa - basso; a priori, chiaro che N non
dipende tanto dalla frequenza di taglio del filtro quanto dalla larghezza
f della banda di transizione del comportamento del filtro tra passaggio
95

CAPITOLO 5 FILTRI NUMERICI

e attenuazione; con fc indichiamo la frequenza di casmpionamento. La


lunghezza illimitata del filtro corrispondente alla risposta allimpulso del
tipo sinc va delimitata con una finestra {wn } e quindi la risposta in frequenza convoluta con la trasformata della finestra W (z). La larghezza del
lobo principale della finestra determina quindi la larghezza della banda di
transizione f . Utilizzando la tecnica MINIMAX per il calcolo del filtro,
disponibile una formula approssimata che d la lunghezza del filtro in
funzione dellondulazione (ripple) ( 1 ) della funzione di trasferimento in
banda passante e delllattenuazione ( 2 ) nella banda oscura.

fc
1
N .66
log10
f
10 1 2
Ad esempio, per 1 = 2 = 104 , N 4.6 fc /f. Poich poi la
larghezza della banda di transizione va commisurata con la larghezza
di banda del filtro (ad esempio, il 20%) ne deriva una relazione tra la
frequenza di taglio del filtro fmax e la sua durata:
Se:

f = .2fmax

allora N 20fc /fmax

chiaro che filtri passa basso molto selettivi sono molto costosi in
termini di numero di moltiplicazioni; diventa interessante allora la tecnica
di procedere per stadi e cio:
- a) filtrare passa basso la sequenza iniziale riducendone la frequenza
massima di un fattore ragionevole;
- b) sottocampionare p.e. dello stesso fattore la sequenza cos ottenuta;
- c) iterare filtraggio passa basso e sottocampionamento.
In questo modo il risparmio pu essere notevole, visto che la frequenza
di taglio relativa dei filtri di ognuno degli stadi della sequenza ben maggiore di quella finale, desiderata. In altre parole, per costruire un filtro a
frequenza di taglio fc /1000, si possono utilizzare 3 stadi di riduzione di
un fattore 10, in cascata. La lunghezza del filtro necessario per ottenere il
valore di f desiderato ottenuta con un segnale fortemente sottocampionato e perci a basso costo computazionale. Infatti, i filtri degli stadi
successivi al primo operano su sequenze sottocampionate e pertanto hanno un costo ridotto di un fattore pari al fattore di sottocampionamento
(10, nel caso considerato). Ulteriori analisi di questi filtri verranno fatte
al capitolo dedicato a decimazione e interpolazione.
96

5.7 FILTRI IIR

5.7

Filtri IIR

Abbiamo visto che per realizzare filtri molto selettivi, necessario utilizzare sequenze lunghe: ci corrisponde a costi computazionali elevati a
meno che non si ricorra alluso di poli, e cio costruire filtri con equazioni
alle dierenze finite recursive in cui il termine forzante il segnale di ingresso e luscita la soluzione. Come gi visto, se i filtri sono causali, per
assicurare la convergenza, sar necessario garantire che i poli siano contenuti nel cerchio unitario. Tuttavia, ci non necessario se si opera in
tempo dierito, quando cio tutti i dati di ingresso sono disponibili prima
del trattamento e pertanto si pu invertire lasse temporale per ribaltare
allinterno del cerchio unitario i poli esterni. Nel seguito, per semplicit
ci riferiremo a filtri causali e pertanto avremo necessit di verificare la
convergenza.
In generale, anche a scopo didattico, la progettazione di filtri IIR viene
fatta trasponendo nel discreto i filtri analogici realizzati con sistemi di
equazioni dierenziali a coecienti costanti. Un sistema lineare elettrico,
meccanico, ecc. rappresentato da un sistema di equazioni dierenziali
lineari, tempo continue; si desidera trasformare questi sistemi in sistemi
alle dierenze finite. Per fare ci necessario anzitutto definire loperatore di derivazione per segnali numerici, e poi farne combinazioni lineari
per ottenere lequivalente di operatori di derivazione di ordine superiore.

5.7.1

Derivazione numerica

Se i dati fossero noti tutti, dal primo allultimo, e se potessimo operare


in tempo dierito, ed inoltre se le sequenze a disposizione fossero molto
lunghe, non vi sarebbero problemi nel calcolo del derivatore. Infatti,
come gi visto nel capitolo sulla trasformazione di Fourier discreta, basta trasformare la sequenza, per poi moltiplicarla per j2k/NT . Si ha
cos la trasformata della sequenza delle derivate, periodicizzata. Per
comodit, ricalcoliamo la risposta allimpulso del derivatore campionato.
La risposta del filtro ideale :
x (t) = x =
97

sin t/T
;
t/T

CAPITOLO 5 FILTRI NUMERICI


D( ) = j

per

D( )

D( )

/2
/
/

/2

h(n)

Figura 5.6: Derivatore ideale campionato


La derivata, campionata agli istanti t = nT , :
(1)n
cos n
dx
|t=nT =
=
; n 6= 0; = 0; n = 0
dt
nT
nT
Se la sequenza lunga, la periodicizzazione non d problemi, tranne che
agli estremi (fig. 5.6). Per non possibile operare in tempo reale,
perch abbiamo bisogno di sequenze lunghe e quindi verranno introdotti
notevoli ritardi per attuare lelaborazione nel dominio delle frequenze.
Abbiamo pertanto necessit di tecniche che operino in tempo reale, e
quindi dovremo determinare un operatore di derivazione causale; inoltre,
vorremo che loperatore di derivazione sia a fase minima perch anche il
suo inverso sia causale e stabile. Si consideri il sistema caratterizzato da
98

5.7 FILTRI IIR

unequazione dierenziale di primo ordine:


dy(t)
= ay(t) + bx(t)
dt

(5.14)

e trasformiamolo in un sistema discreto. La discretizzazione desiderD 0 ( ) = j

2
T -j 2
sin
e
2
T

D 0 ( )
2 /T

D 0 ( )
/2
/

/2

h 0 (n )
1 /T

-1 /T

Figura 5.7: Derivatore non ricorsivo


abile corrisponderebbe al derivatore ideale discreto, che come visto in
precedenza:
(1)n
df (nT ) =
; df (0) = 0
nT
Questa soluzione per antisimmetrica, e quindi non causale e quindi
inaccettabile, perche non la si potrebbe realizzare in pratica con filtri
99

CAPITOLO 5 FILTRI NUMERICI

senza ritardo. La soluzione causale pi semplice :


yn yn1
= ayn + bxn
T

(5.15)

in cui si rappresentata la derivata con la dierenza tra il campione


attuale e quello precedente, divisa per T ; trasformiamo nelle frequenze
per vedere la validit della scelta fatta:
D()Y () = Y ()

(1 ejT )
= aY () + bX()
T

(5.16)

(1 ejT )
2j
T jT /2
=
sin(
)e
' j;
T << 2 (5.17)
T
T
2
Loperatore di derivazione D() considerato va abbastanza bene, purch
la frequenza sia piccola rispetto alla frequenza di Nyquist; sia la caratteristica di ampiezza che quella di fase dieriscono per da quella di un
derivatore esatto fino alla frequenza di Nyquist.
La caratteristica di ampiezza di D() (fig. 5.7) ha alla frequenza di
Nyquist valore 2/T invece che /T ; inoltre nella caratteristica di fase,
si osserva un ritardo pari a T /2, che fa s che loperatore non sia a fase
minima, se non al limite; infatti, ha uno zero sul cerchio unitario. Il
ritardo di mezzo campione comprensibile perch la derivata riferita
allistante (n1/2)T . E ragionevole quindi fare come proposto da Crank
e Nicholson e cio riferire anche il secondo membro dellequazione (5.15)
allo stesso istante.
D() =

yn yn1
(yn + yn1 )
xn + xn1
=a
+b
T
2
2

(5.18)

Nel dominio delle frequenze questo diventa:


Y ()

(1 ejT )
1 + ejT
1 + ejT
= aY ()
+ bX()
T
2
2
Y ()

2 (1 ejT )
= aY () + bX()
T (1 + ejT )

(5.19)

Loperatore di derivazione perci rappresentato dalloperatore di derivazione


ricorsiva:
2 (1 ejT )
2
T
= j tan
(5.20)
Dr () =
jT
T (1 + e
)
T
2
100

5.7 FILTRI IIR

La caratteristica di fase quella giusta e cio un anticipo costante di /2;


la caratteristica di ampiezza, invece, tocca valore infinito alla frequenza
di Nyquist. Peraltro, dalla figura 5.8 evidente come il derivatore Dr ()
sia pi preciso delloperatore D() fino a frequenze pi elevate. Abbiamo
quindi una tecnica per trasformare un sistema dierenziale continuo in
un sistema discreto: baster sostituire alla variabile a (la frequenza
analogica) la variabile n (la frequenza numerica):

aT
2
1
n = tan
(5.21)
T
2
Rappresentando ora la sequenza corrispondente alla Dr () con la trasformata z, scriveremo la seguente corrispondenza:
j Dr (z) =

2 1 z 1
T 1 + z 1

(5.22)

Di nuovo abbiamo un sistema che ha uno zero sul cerchio unitario e quindi
rimane da dimostrare che un sistema dierenziale stabile viene trasformato in un sistema discreto stabile e cio poli nel semipiano sinistro nel
caso di sistemi tempo continui vengono trasformati in poli allinterno del
cerchio unitario con la corrispondenza dellequazione (5.21). Piuttosto
che fare una dimostrazione, faremo una verifica con il sistema RC della
fig. 5.9:
La tensione Vr () :
Vr () =

E()
1 + j

= RC

(5.23)

Nel caso discreto, il segnale e(t)si trasforma in una sequenza {en }, e


lequazione si trasforma in unequazione alle dierenze finite di cui presentiamo la trasformata
V (z)
2 1 z 1
= 1/(1 +
)
E(z)
T 1 + z 1
1 + z 1
;
1 + a + (1 a)z 1
Antitrasformando, si ha:
=

vn =

a=

2
T

a1
1
vn1 +
(en + en1 )
a+1
1+a
101

(5.24)

(5.25)

CAPITOLO 5 FILTRI NUMERICI


D r ( ) = j

2
T
tan

2
T
D r ( )
j

/
D

( )

/2
/
/2
h r(n)
4/T
2/T
0

-4/T

Figura 5.8: Derivatore ricorsivo


Il polo nel cerchio unitario e cio:
1 <

a1
< 1 se > 0
a+1

(5.26)

e cio se e solo se la resistenza R positiva e quindi se il sistema che opera


nel tempo continuo stabile. In conclusione, la derivazione recursiva
determinata con loperatore
Dr (z) =

2 1 z 1
T 1 + z 1

(5.27)

trasforma sistemi continui stabili in sistemi discreti stabili: inoltre la


trasformazione non altera sostanzialmente lasse delle frequenze fino a
circa 1/3 della frequenza di Nyquist, come vedremo al prossimo paragrafo.
102

5.7 FILTRI IIR


R

E()

Vr()

= RC
a = 2/T

Figura 5.9: Filtro passa - basso RC

5.7.2

La trasformazione bilineare

La corrispondenza tra sistemi tempo continui causali e tempo discreti


causali indotta dallequazione (5.21)
j Dr (z) =

T
2 1 z 1
2
tan
=
j
T 1 + z 1
T
2

(5.28)

pu essere vista come una corrispondenza tra lasse delle frequenze di un


sistema continuo e quello di un sistema discreto (fig. 5.10). Infatti se
alla variabile j si sostituisce la variabile Dr (w) si ottiene un sistema
discreto al posto di un sistema continuo, come si visto. Se Hc ( a )
il valore della funzione di trasferimento del sistema tempo continuo ad
una pulsazione analogica a assegnata, la funzione di trasferimento del
sistema tempo discreto corrispondente Hd () avr lo stesso valore alla
pulsazione d dove
2
aT
)
(5.29)
d = tan1 (
T
2
2
dT
a = tan(
)
(5.30)
T
2
Quindi avviene che i valori assunti dalla funzione di trasferimento analogica nellintervallo 0 sono assunti dalla funzione di trasferimento
numerica corrispondente nellintervallo 0 fN . I filtri passa basso perci
vanno a zero alla frequenza di Nyquist. Ogni tecnica per il progetto di
filtri analogici, p.e. i filtri di Butterworth o di Chebyshev pu essere
103

CAPITOLO 5 FILTRI NUMERICI


d
/

2
T
a r c tg a
2
T

Figura 5.10: Trasformazione bilineare: relazione tra frequenza analogica


e frequenza numerica
trasposta in campo numerico facilmente con la trasformazione bilineare,
appunto. Si devono per poi applicare delle predistorsioni in maniera da
compensare la distorsione non uniforme dellasse delle frequenze indotta
dalla trasformazione bilineare. Ad esempio, si verifica che:
a ' d [1 +

2d T 2
] + ...
12

(5.31)

Lerrore di frequenza commesso pertanto inferiore al 10% per frequenze


f <' .35fN . Se il filtro da progettare fortemente selettivo, la caratteristica di frequenza va predistorta. Per esempio, si voglia progettare un
filtro passa banda tra .8fN .998fN ; baster cercare sulle tabelle il filtro
analogico passabanda tra le frequenze:
1
1
tan .4
tan .499
T
T
Quindi si applica la trasformazione bilineare per passare dal filtro analogico al filtro numerico, e il risultato ottenuto. Ritornando allesempio
del circuito RC del paragrafo precedente, si pu osservare che il sistema
analogico ha come risposta allimpulso un esponenziale con costante di
tempo ; il sistema numerico corrispondente ha un polo posizionato in
a 1/a + 1 ed uno zero alla frequenza di Nyquist. La risposta allimpulso
104

5.7 FILTRI IIR

2
T
tan

2
T

M ( )
1+1
11

M asch era del filtro d igitale


che si vuo le realizzare

s
p

M asch era del filtro an alogico corrispond ente al


filtro digitale che si v uole realizzare:
2
pT
p =
tan

2
T
2
sT

1+1
11

s =

ta n

H a( )

F iltro analogico relativo alla m aschera d iseg nata sopra


sintetizzato m ediante le op portune tab elle.

H d( )

Filtro digitale derivante dal filtro analo gico p recedentem ente


sintetizzato e legato ad esso dalla relazio ne:
=

2
T
tan

2
T

Figura 5.11: Esempio di progettazione di un filtro digitale mediante


trasformazione bilineare

105

CAPITOLO 5 FILTRI NUMERICI

del sistema numerico :


1
2a
; hn = 2
hn = 0; n < 0; h0 =
1+a
a 1

a1
a+1

Il termine esponenziale approssimabile poi come:

n
2a
a1
T
T
' enlog(a1/ a+1) ' enT / ;
2
a 1 a+1

(5.32)

log(1 + x) ' x

(5.33)
e quindi approssima (a parte il solito fattore T ) la risposta allimpulso del
sistema analogico, campionata, ma ne diversa soprattutto in corrispondenza del primo campione, come vedremo meglio al prossimo paragrafo
.

Figura 5.12: Risposta allimpulso del sistema numerico (RC); a =


20

5.8

2
T

Linvarianza della risposta impulsiva

Una diversa corrispondenza tra sistemi analogici e sistemi numerici pu


essere stabilita imponendo che la risposta allimpulso dei secondi sia
ottenuta dal campionamento della risposta allimpulso dei primi. Ad
esempio alla funzione di trasferimento
1
1
H () =
h (t) = et/
1 + j

106

5.9 SINTESI DI FILTRI IIR DALLAUTOCORRELAZIONE

si farebbe corrispondere la sequenza:


hn =

T nT /
e
; n = 0, 1, ....

e quindi la trasformata z
H (z) =

1
T
1 eT / z 1

Di nuovo, a sistemi stabili corrisponderebbero sistemi stabili; le risposte


allimpulso si somiglierebbero, ma le risposte in frequenza sarebbero piuttosto diverse tranne ovviamente che per frequenze molto basse e per
T << . Infatti, il campionamento, qualsiasi sia lintervallo T, eettuato senza prefiltraggio e quindi comporta equivocazione. In particolare, alla frequenza di Nyquist, dove vi il ripiegamento, la funzione
di trasferimento desiderata sarebbe sempre riprodotta con un errore del
100%. Nel caso della funzione di trasferimento discussa prima, risultati
migliori si avrebbero imponendo (per continuit) che il valore assunto al
tempo 0 sia T /2 invece che T / ; cos si aggiunge uno zero (non proprio
alla frequenza di Nyquist come nel caso della trasformazione bilineare,
ma molto vicino se T << ), riducendo il fenomeno dellequivocazione.
Infatti in questo caso risulta:
H 0 (z) =

T 1 + eT / z 1
2 1 eT / z 1

Peraltro, con la tecnica dellinvarianza impulsiva, sarebbe pi dicile


fare delle trasposizioni da un sistema analogico ad un sistema numerico
che non con la trasformazione bilineare (fig. 5.12).
.

5.9
5.9.1

Sintesi di filtri IIR dallautocorrelazione


Le equazioni di Yule Walker

Si desideri determinare un filtro tutti poli di ordine N, 1/AN (z) , la


cui caratteristica di ampiezza approssimi la caratteristica di ampiezza
desiderata, |H (z)| :

AN (z) |H (z)|
107

CAPITOLO 5 FILTRI NUMERICI

Figura 5.13: Modulo della fdt del sistema RC numerico (a =

2
T

= 20)

Figura 5.14: Corrispondenza tra frequenze analogiche e numeriche nei


casi di trasformazione bilineare e invarianza impulsiva (fc = 1000Hz).

108

5.9 SINTESI DI FILTRI IIR DALLAUTOCORRELAZIONE

Il filtro ottenuto dovr essere stabile e quindi a minima fase. Per trovare
AN (z), utilizzeremo la tecnica di Yule Walker. Si osservi anzitutto che
assegnare la funzione |H (z)| implica anche il rendere disponibile lautocorrelazione della risposta alimpulso {hn } del filtro H (z) . Infatti, lantitrasformata di |H (z)|2 non altro che lautocorrelazione {rm } di {hn }.
Infatti, lautocorrelazione la convoluzione tra una sequenza e la stessa
sequenza ribaltata nei tempi e coniugata. La trasformata dellautocorrelazione quindi il prodotto di H (z) e H (1/z). Sul cerchio unitario,
H (1/z) = (H (z)) e quindi
rm =

X
n=0

hn hnm H (z) H (1/z) = |H (z)|2

Utilizzeremo ora i primi N tra i valori assegnati di {rm } per costruire il


filtro AN (z) .
Sia {xn } la sequenza in uscita del filtro IIR di ordine N, 1/AN (z)
quando questo viene alimentato da una sequenza bianca {wn }, e cio da
una sequenza di campioni indipendenti. Senza ledere la generalit, AN (z)
rappresentato da un polinomio monico, e cio con il primo coeciente
pari ad 1. Quindi,
N
X
ah,N z h
AN (z) = 1 +
h=1

descritto da N coecienti ah,N , h = 1, ..N. La sequenza {xn } , uscita


del filtro, si ottiene pertanto dallequazione alle dierenze finite:
xn =

N
X

ah,N xnh + wn

(5.34)

h=1

e passando alle trasformate z


X(z) =

W (z)
AN (z)

Lautocorrelazione rm della sequenza {xn } che, se appunto il filtro


AN alimentato da una sequenza bianca, ancora proporzionale allautocorrelazione della risposta allimpulso del filtro, pu essere dedotta moltiplicando la equazione (5.34) per il campione della sequenza xnm (anticipato
109

CAPITOLO 5 FILTRI NUMERICI

di m campioni e coniugato) e poi considerando il valore atteso del prodotto:


rx (m) = rm =

E[xn xnm ]

N
X
= E[
ah,N xnh xnm ] + E[wn xnm ] =
h=1

(5.35)

rm =

N
X

ah,N rmh + 2w (m);

h=1

(5.36)

Infatti ogni campione della sequenza {wn } , costituita da campioni indipendenti tra loro, incorrelato con i campioni delluscita generati in
precedenza xnm ; m > 0.

"

E[wn xnm ] = E wn

N
X

ah,N xnhm + wnm

h=1

! #

= 0; m > 0

Per m = 0, si ha invece:
E[wn xn ] = E [wn wn ] = 2w
e quindi
E[wn xnm ] = 2w (m)
Le equazioni (5.36) sono note come le equazioni di Yule - Walker e
forniscono:
- gli N coecienti del filtro AN (z) a partire dai primi N valori della
funzione di autocorrelazione {rm } , a parte r0 , ottenuti con l antitrasformazione del filtro desiderato |H (z)|2 .
- tutti i campioni dellautocorrelazione delluscita del filtro, dati i
coecienti del filtro AN (z) ed il valore quadratico medio del segnale
dingresso 2w . I primi N campioni saranno eguali a quelli desiderati,
per costruzione. Non cos i successivi, a meno che il filtro H (z) non sia
stato ricostruito perfettamente e cio se H (z) un filtro a N1 poli, e
N1 < N.
Ancora, con la tecnica che sar vista nel capitolo sulle strutture riverberanti, da AN (z) si possono determinare gli N coecienti di riflessione
c1 , c2 , ...cN che caratterizzano la struttura riverberante che consta di
N celle e che approssima la funzione di trasferimento H (z). Si osservi
110

5.9 SINTESI DI FILTRI IIR DALLAUTOCORRELAZIONE

anche che nel caso di segnale e o coecienti ah,N complessi, le equazione

(5.36) vanno scritte tenendo conto che rm = rm


.
Per motivi mnemonici, pu essere utile osservare che la formula (5.36)
assomiglia ad una convoluzione tra le sequenze rm ed ah,N ; non una
convoluzione, per la limitazione degli indici. Lequazione corrispondente
a m = 0 contiene anche la varianza del segnale di ingresso 2w ; peraltro, il
filtro non dipende da questo fattore di scala e si pu sempre riscalare la
funzione di autocorrelazione ponendo r0 = 1 risolvendo poi le equazioni
(Y-W) per m = 1, . . . , N .

5.9.2

Lautocorrelazione dai coecienti del filtro

possibile determinare la funzione di autocorrelazione dai coecienti del


filtro utilizzando le equazioni di Yule Walker. Infatti, ponendo a0,N = 1,
eliminando per semplicit il secondo indice e supponendo lautocorrelazione reale, le equazioni diventano, ordinando il vettore delle attuali
incognite r0 ...rN :

N
X

ah rmh =

n=0

amn rn +

amn rn =

n=m

h=0

m
X

mN
X

Nm
X
n=1

am+n rn =

0
X

amn rn +

n=m

m
X
n=1

amn rn +

mN
X

amn rn =

n=1

N
m
X

am+n rn = 2w (m)

n=0

Queste formule si possono scrivere in modo molto semplice in forma matriciale (le matrici sono di Toeplitz entrambe, ma la prima lungo la diagonale principale e la seconda lungo la diagonale secondaria, a parte la
111

CAPITOLO 5 FILTRI NUMERICI

prima colonna di zeri nella seconda matrice).


1
0
0 .. 0 0

a1
1
0 .. 0 0

a2
a1
1 0 .. 0
+

..
r0
2w
..
.. .. .. ..

r1 0
aN1 aN2 aN 3 .. 1 0


r2 0

aN aN1 aN 2 .. a1 1

0 a1 a2 a3 .. aN
..
..

rN1 0

0 a2 a3 .. aN 0

0 a3 .. aN 0 0
0
rN

.. .. .. .. .. ..

0 aN 0 0 0 0

0 0 0 0 0 0

Trovati i primi N valori r1 ..rN o in generale assegnata qualsiasi Npla


consecutiva di valori di rn , poi possiamo determinare AN (z) e quindi i
valori di rn per qualsiasi altro valore di n.

5.9.3

Equazioni di Yule Walker in forma matriciale

Le equazioni di Yule Walker si possono scrivere in forma matriciale


indicando i seguenti vettori con i corrispondenti simboli:


r1
a1,N
xn1
rx (1)


a2,N
xn2
rx (2) r2


aN = a3,N ; N = xn3 ; rN = rx (3) = r3


...
...
...
...

rx (N)
aN,N
xnN
rN

Allora si ha:

xn = N aN + wn
112

(5.37)

5.9 SINTESI DI FILTRI IIR DALLAUTOCORRELAZIONE

Moltiplicando a sinistra per N e considerando il valore atteso, visto che


h
i
E N wn = 0 :
h
i
i
h
i
h
E N xn = rN = E N N aN + wn = E N N aN = RaN

La matrice dei coecienti delle equazioni (Y-W) una matrice di Toeplitz;


cio simmetrica (o Hermitiana, per sequenze complesse) e tutti gli elementi appartenenti alla stessa diagonale o subdiagonale sono eguali tra
loro. La matrice R [N N] pertanto caratterizzata da N numeri. Il
vettore dei termini noti rN anchesso formato dai campioni della
funzione di autocorrelazione, rm ; m = 1, . . . , N , col segno cambiato.
Riscrivendo in forma matriciale le equazioni di Yule Walker si ottiene:

r
a
r r
r2 . . . rN
1
0 1
1,N

r2
r1 r0
r1 . . . rN+1 a2,N

(5.38)

r2 r1

r0 . . . ..
a
r
3

3,N

...
. . . . . . . . . . . . r1 . . .

aN,N
rN
rN rN1 .. r1 r0
ed in equazione vettoriale:

RN aN = rN

(5.39)

Per completezza, si aggiunge una formulazione completa, facilmente verificabile, in cui compare anche la prima equazione che contiene la varianza
della sequenza bianca di ingresso 2w,N .

2
1

r r
r2 . . . rN
w,N

0 1

r1 r0
r1 . . . rN+1 a1,N

(5.40)
=

r2 r1
0
r0 . . . ..
a

2,N

...
. . . . . . . . . . . . r1 . . .

0
aN,N
rN rN1 .. r1 r0

Si ricorda infine che in queste equazioni non sempre le incognite sono


contenute nel vettore aN ; a volte la funzione di autocorrelazione a non
essere nota, oppure il valore di 2w,N , ecc.
113

CAPITOLO 5 FILTRI NUMERICI

5.9.4

La ricorsione di Levinson

Nel calcolo di AN (z), si pu utilizzare la stessa recursione di Levinson, che incontreremo nello studio delle strutture riverberanti. Infatti,
si pu risolvere lequazione (5.39) a partire da N = 1, per poi crescere
progressivamente. Indicando con:

rN
aN,N

e
rN+1
..
RN rN

aN =
RN +1 =
; e
rN =
;e

..
a2,N
e
rN r0

r1
a1,N
i vettori colonna e
rN , e
aN sono i vettori colonna rN , aN coniugati, ribaltati negli indici e ritardati per avere indici tutti positivi, con lusuale
e (z) ed A (z) :
convenzione che abbiamo visto legare le due sequenze A
eN (z) = z N AN (1/z)
A

Il vettore riga e
rN il trasposto Hermitiano (e quindi ancora coniugato)
del vettore colonna e
rN .

r
R e
r
N N aN+1 = N
e
rN r0
rN+1
Si verifica che la soluzione :

e quindi:

aN+1 =
RN
e
rN

aN
0

+ cN +1

e
aN
1

e
e
r
a
rN
a

N + cN+1 N = N
0
r0
1
rN+1

Difatti le prime N righe corrispondono alle N equazioni :


aN + e
rN 0 + cN+1 (RN e
rN 1) = rN
RN aN + e
114

(5.41)

5.9 SINTESI DI FILTRI IIR DALLAUTOCORRELAZIONE

che sono verificate poich:


aN = e
rN
RN aN = rN ; RN e

(5.42)

Lultima equazione serve per determinare cN +1 ed :

da cui:

e
aN ) + cN+1 r0 = rN+1
rN (aN + cN +1 e
cN+1 =

Quindi:

aN+1

e ricordando che

a1,N

a2,N

= ...

aN,N

rN+1 + e
rN aN
aN
r0 + e
rN e

aN,N

(5.43)

..

+ cN+1 a2,N

a1,N

AN (z) = 1 +

N
X

ah,N z h

(5.44)

h=1

ne consegue la tecnica detta di Levinson per la soluzione ricorsiva delle


equazioni di Yule e Walker. Si ha cio:
eN (z) = z N AN (1/z) (5.45)
eN (z) ; A
AN+1 (z) = AN (z) + cN+1 z 1 A

dove cN risulter essere il coeciente di riflessione N esimo della struttura riverberante che realizza la funzione di trasferimento 1/AN (z) e
sar ottenuto dai valori della funzione di autocorrelazione e dal polinomio
AN1 (z) nel modo osservato in (5.43) e come verr di nuovo dimostrato
nel capitolo della predizione lineare. Si dimostra anche che:

2w,N = r0 1 |c1 |2 1 |c2 |2 .. 1 |cN |2


e quindi:

2w,N 2w,N1
115

CAPITOLO 5 FILTRI NUMERICI

Questo modo di risolvere le equazioni di Yule e Walker computazionalmente eciente. Infatti, per risolvere un sistema di N equazioni in N
incognite servono un ordine di grandezza di N 3 moltiplicazioni; usando la
ricorsione di Levinson, invece, il costo computazionale di un incremento
di indice corrisponde, a parte le somme, al costo di calcolo della (5.43) e
quindi 2N moltiplicazioni ed una divisione. Il costo totale diventa quindi
circa:
N
X
N2
2n 2
= N2
2
n=1

5.9.5

Calcolo dei cn dagli ah,N ; la verifica di Schur

Siamo ora in grado di determinare i coecienti di riflessione cn ; n =


1, ...N a partire dal polinomio AN (z): basta applicare la ricorsione di
Levinson allincontrario, partendo da N per arrivare ad 1, p.e. supponendo c0 = 1. Si pu poi dimostrare (come proposto da Schur e Cohn)
che un polinomio qualsiasi, il cui primo coeciente 1 come accade per il
polinomio AN (z), a minima fase se tutti i coecienti di riflessione sono
in modulo minori di 1 (ci verr dimostrato nel capitolo sulla predizione
lineare).
Si pu verificare facilmente se tutti i coecienti di riflessione ci sono
in modulo minori di 1. Per fare ci utile scrivere i coecienti dei
polinomi AN (z) ed AN 1 (z) in termini di vettori colonna. La ricorsione
di Levinson (5.45) diventa:

1
0
1

a1,N1
aN1,N1
a1,N

a2,N1
a
a2,N
+ cN N2,N1
=

(5.46)

...
...
...

a1,N 1
aN 1,N aN1,N1

aN,N
0
1
Anzitutto si osserva (5.45) che:
cN = aN,N
116

(5.47)

5.9 SINTESI DI FILTRI IIR DALLAUTOCORRELAZIONE

e cio che lultimo coeciente del polinomio un coeciente di riflessione e pertanto deve essere in modulo inferiore ad 1. Per calcolare cN1
dovremo calcolare AN1 (z). Per calcolare i coecienti di AN1 (z), ad
esempio ah.N 1 dovremo risolvere il sistema:
ah,N = ah,N 1 + cN aNh,N 1

(5.48)

aNh,N = aNh,N1 + cN ah,N 1

(5.49)

da cui risulta :
ah,N 1 =

ah,N cN aNh,N
1 c2N

(5.50)

Troveremo cos cN1 = aN1,N1 e poi progressivamente tutti gli altri


coecienti di riflessione; se qualcuno di essi ha modulo maggiore di 1, il
polinomio di partenza AN (z) non a minima fase (la verifica di Schur Cohn). I coecienti di riflessione troveranno un uso diretto nel capitolo
sulle strutture riverberanti; in particolare, serviranno per costruire dei
filtri numerici poco sensibili alla quantizzazione dei coecienti.

5.9.6

La sintesi del filtro

Riassumendo, se viene assegnata la caratteristica di ampiezza di un filtro da approssimare con una funzione trasferimento tutti poli di ordine N, AN (z), per eettuarne la sintesi e quindi per determinarne il
denominatore:
1
|H (z)|
|AN (z)|

si operer cos:
1) Si calcola |H ()|2 e, facendone lantitrasformata z, si trova la
funzione di autocorrelazione:
r (n) ; n = 0, 1, ....N, ...

2) Utilizzando le equazioni di Yule Walker, si trova, per ogni valore


desiderato di N, il vettore aN ;
3) Si determina la funzione di trasferimento del filtro:
1
H (z)
AN (z)
117

CAPITOLO 5 FILTRI NUMERICI

necessario garantire che il filtro 1/AN (z) sia stabile e pertanto che il
polinomio AN (z) sia a minima fase; si dimostrer che ci accade se e solo
se i campioni r (n) che si utilizzano nelle equazioni di Yule Walker sono
campioni di una funzione di autocorrelazione (a spettro positivo). Ci
automaticamente ottenuto se r (n) antitrasformata di una funzione
tutta positiva come |H ()|2 . Poich, per ottenere il filtro di ordine N,
non serve tutta la funzione di autocorrelazione, ma ne bastano i primi N
campioni, lo spettro |H ()|2 pu essere smussato, purch sia convoluto
con una funzione tutta positiva come p.e. un sinc2 .

5.10

Filtri da combinazione di sfasatori puri

Da una semplice costruzione vettoriale ricaveremo ora un interessante


classe di filtri, poi molto utilizzati nella pratica. Si considerino due
sfasatori puri, e cio filtri caratterizzati da poli allinterno del cerchio
unitario (i denominatori sono funzioni a fase minima) e zeri nelle posizioni reciproche coniugate (i numeratori sono delle funzioni a fase massima) cos da avere caratteristica di ampiezza unitaria. Si ricordi che uno
sfasatore puro di ordine M comporta solo M moltiplicazioni per campione; inoltre, rimane sempre tale, anche al variare della quantizzazione dei
coecienti. Ad esempio, siano gli sfasatori puri A0 (z), A1 (z) di ordine
N0 , N1 anche diverso:
PN0
n
n=0 a0,N0 n z
;
|A0 (z)| = 1, z = ejT
(5.51)
A0 (z) = P
N0
n
a
z
n=0 0,n
PN1
n
n=0 a1,N1 n z
;
|A1 (z)| = 1, z = ejT
(5.52)
A1 (z) = P
N1
n
a
z
1,n
n=0
H0 (z) =

A0 (z) + A1 (z)
2

(5.53)

A0 (z) A1 (z)
(5.54)
2
Con la costruzione vettoriale di fig. 5.15 si vede che H0 (), H1 ()
sono semidiagonali di un rombo che ha per lati |A0 ()| = |A1 ()| = 1;
pertanto:
|H0 (z)|2 + |H1 (z)|2 = 1;
z = ejT
(5.55)
H1 (z) =

118

5.10 FILTRI DA COMBINAZIONE DI SFASATORI PURI


2H 0

2H 1
A1
A0

Figura 5.15: Filtri IIR ottenuti come somma e dierenza di due sfasatori
puri
e cio i due filtri H0 (), H1 () sono complementari in potenza; alle
frequenze a cui passa basso luno sar passa alto laltro e viceversa.
Inoltre i due filtri sono anche complementari in ampiezza in quanto la
loro somma di ampiezza costante:
|H0 (z) + H1 (z)| = |A0 (z)| = 1;

z = ejT

(5.56)

I due filtri H0 (), H1 () sono pertanto detti doppiamente complementari, in potenza ed ampiezza cio. Ancora vi unaltra utile caratteristica
dei due filtri H0 (), H1 (); le sequenze causali corrispondenti ai numeratori delle due funzioni di trasferimento sono luna simmetrica e laltra
antisimmetrica. Infatti:
A0 () =

H0,1 () =

0 ()
1 ()
D
D
, A1 () =
;
D0 ()
D1 ()

1 ()D0 ()

0 ()D1 () D
N() N()
D
=
2D0 ()D1 ()
2D0 ()D1 ()

(5.57)

(5.58)

ma anche:

1 ()D0 ()
N()
=D

0 ()D1 ();
N() = D

(5.59)

Si verifica che le famiglie di filtri di Butterworth, Chebyshev, ellittici sono


appunto decomponibili nella semisomma o semidierenza di due sfasatori
puri.
119

CAPITOLO 5 FILTRI NUMERICI

Come trovare i due sfasatori puri date le funzioni di trasferimento ?


Nel caso interessante dei filtri ellittici (nonch Butterworth e Chebyshev,
che ne sono casi limite), la cosa semplice perch si verifica che i poli di
A0 (), A1 () che sono anche poli di H0 (), H1 () sono alternati nelle
frequenze; in altre parole i poli di uno sfasatore puro si alternano con
quelli dellaltro. Pertanto per fare la decomposizione, basta assegnare i
poli a frequenze crescenti alternativamente ai due sfasatori. Gli zeri degli
sfasatori sono dedotti dai poli. Nel caso di funzioni di trasferimento di
ordine pari, losservazione tuttora valida, ma i coecienti degli sfasatori
puri sono complessi [Vedi: Vaidyanathan, P. P., Multirate Systems and
Filter Banks, Prentice Hall, 1993].
Elemento chiave per la progettazione dei filtri il rapporto tra |H0 ()|,
|H1 ()| e cio la funzione
K() =

|N() + N()|

|N() N()|

(5.60)

che ripartisce la potenza tra i due filtri, al variare della frequenza.

5.11

Filtri di Butterworth, Chebyshev, ellittici

Queste famiglie di filtri numerici, derivano dalle famiglie omologhe di filtri utilizzati per segnali analogici attraverso la trasformazione bilineare.
Pertanto ne faremo solo un brevissimo cenno, limitato ai filtri di Butterworth, rinviando gli interessati alla letteratura specializzata ed inoltre al
software MAT LAB T M .
Ad esempio, il filtro passabasso di Butterworth di ordine n e frequenza
di taglio 0 ha la funzione di trasferimento
|Bn ()|2 =

1
1 + ( 0 )2n

(5.61)

I poli della funzione di trasferimento analogica sono su di un semicerchio


del piano s di raggio 0 e di fasi:

(n + 1 + 2k);
2n
120

0k n1

(5.62)

5.11 FILTRI DI BUTTERWORTH, CHEBYSHEV, ELLITTICI

Dalla posizione dei poli del filtro analogico, si ricava la funzione di trasferimento del filtro analogico e poi di quello numerico, usando sempre la
relazione:
2 1 z 1
j
(5.63)
T 1 + z 1
La funzione di ripartizione della potenza in questo caso
2n

2 |1 z 1 |
2
(5.64)
K() = |Bn ( d )| =
0 T |1 + z 1 |
Se K() , la potenza del segnale deviata attraverso H0 ; attraverso
H1 , se invece K() = 0.
Nella fig.5.16 sono mostrate funzioni di trasferimento, risposte allimpulso e disposizione di poli e zeri di quattro filtri passa basso IIR di ordine
10. Si osservi come il filtro ellittico ha la massima ripidit di transizione e
quindi transitorio di lunghezza maggiore mentre il filtro di Butterworth
ha il transitorio pi breve. Si osservi come lottimizzazione della distribuzione delle singolarit (calcolando la funzione di trasferimento con il
metodo grafico si comprende che le singolarit devono raggrupparsi vicino
al cerchio unitario in corrispondenza delle transizioni ripide) conduca a
funzioni di trasferimento pi vicine alla maschera di progetto. Dalla figura poi facile comprendere la posizione delle singolarit dei due sfasatori
puri in cui si potrebbe decomporre il filtro.
Dai grafici in figura si comprende come lottimizzazione della posizione di poli e zeri, possibile sistematicamente nei casi semplici di filtri
che approssimino i filtri ideali, dia risultati incomparabilmente migliori
di quelli che si ottengono sia dai filtri FIR ottenuti con la tecnica delle
finestre, sia dai filtri IIR ottenuti con la tecnica di Yule Walker. Infatti,
in entrambi questi casi, si fa tutto il possibile per riprodurre la funzione
di autocorrelazione del filtro desiderato nei primi N campioni, non considerando aatto quelli successivi. Infatti questi sono nulli nel caso FIR
e derivati con le equazioni di Yule Walker dai primi N, nel caso IIR. Invece, nei casi di filtri di Butterworth, Chebyshev, ecc. lapprossimazione
distribuita lungo tutto lasse dei tempi.

121

CAPITOLO 5 FILTRI NUMERICI

Butterworth

Im[z]

|H( )| [dB]

-50

-100

0.2

0.4

Chebyshev tipo I

0.2

0.4

Chebyshev tipo II

0.2

0.4

Ellittico

Re[z]

Im[z]

|H( )| [dB]

-50

-100

Re[z]

Im[z]

|H( )| [dB]

-50

-100

Re[z]
1
Im[z]

|H( )| [dB]

-50

-100

0
-1

0.2
f/f

0.4

50
t/T

100

-1

0
Re[z]

Figura 5.16: Filtri passa-basso IIR di ordine 10 [specifiche progetto: fp =


fc /4, 1 = 0.5dB, 2 = 40dB]. La caratteristica della risposta in
frequenza nella banda passante amplificata (zona tratteggiata).

122

Capitolo 6
Campionamento in frequenza
6.1

Introduzione

Una classe di filtri molto utilizzata e di facile progettazione quella dei


filtri a campionamento in frequenza. Si tratta di filtri che sono teoricamente dei filtri FIR, anche se con dei poli, in quanto questi poli sono
cancellati da opportuni zeri. Nei fatti, visto che la cancellazione solo
parziale, risultano essere dei filtri IIR.
Si consideri un oscillatore numerico, come quello studiato al capitolo
3. Se questo oscillatore eccitato da un impulso, la sua risposta una
sinusoide, di ampiezza proporzionale a quella dellimpulso. Se si applicano pi impulsi nel tempo, la risposta sar la somma delle risposte.
Supponiamo ora che la sinusoide generata compia un numero intero k di
cicli, nellintervallo di tempo NT . Se allora inviamo alloscillatore due
impulsi di eguale ampiezza e segno opposto a distanza di NT la risposta
globale sar una sinusoide di frequenza k/NT troncata dopo k periodi
(fig. 6.1).Quindi la risposta allimpulso del filtro finita ed il filtro FIR,
anche se realizzato con oscillatori numerici e cio con strutture IIR. La
realizzazione presentata in fig. 6.4.
Essa ottenuta combinando un oscillatore numerico ed un blocco
di ritardo di N campioni realizzato con una memoria di N elementi,
per creare sistematicamente limpulso di spegnimento N campioni dopo
limpulso di attivazione delloscillatore. In linea di principio, il costo
computazionale basso, visto che si richiede una moltiplicazione per
campione nelloscillatore ed unaltra per stabilire il guadagno.
123

CAPITOLO 6 CAMPIONAMENTO IN FREQUENZA

+
-

Oscillatore
(k cicli in N campioni)

Ritardatore di
N campioni

Figura 6.1:
frequenza

Funzionamento di un oscillatore a campionamento di

La risposta in frequenza quella di una sinusoide a frequenza f0


finestrata con una finestra rettangolare di durata NT ; quindi del tipo
Hc () = sinc[(f f0 )NT ]

(6.1)

A parte le repliche spettrali dovute al campionamento nei tempi, lo spettro corrisponde ad un sinc con il primo zero ad un intervallo di frequenza
pari a 1/NT centrato sulla frequenza delloscillatore. Quindi, la selettivit non legata al costo computazionale, ma solo alla dimensione della
memoria, che determina la durata della risposta allimpulso.
Poli e zeri
Il sistema di fig. 6.4 caratterizzato da N zeri dovuti al blocco di ritardo e
i poli dovuti alloscillatore (uno se corripondono a esponenziali complessi
o due se a frequenze reali); la trasformata z della risposta in questo
caso (fig. 6.2):
H(z) =

1 z N
; k 6= 0, N/2
1 2 cos(2k/N)z 1 + z 2

(6.2)

1 z N
k = 0, N/2.
1 z1

(6.3)

H(z) =

124

6.1 INTRODUZIONE

Figura 6.2: a) Risposta impulsiva delloscillatore b) Risposta impulsiva del ritardatore c) Risposta allimpulso del filtro a campionamento di
frequenza
Gli zeri del primo blocco corrispondono alle N radici N-esime dellunit
e quindi sono disposti regolarmente lungo il cerchio unitario a distanza
angolare pari a 2/N con il primo zero nel punto z = 1 (la componente continua soppressa dal primo blocco). I poli sono posizionati in
corrispondenza di qualche zero e ne sono cancellati, se la frequenza
delloscillatore esatta. Quindi il sistema tutti zeri, FIR.
In generale, come rappresentato in figura 6.6 il blocco di ritardo pu
alimentare fino a N/2 + 1 oscillatori, alle frequenze fk = k/NT ; k =
0..N/2; in questo modo si potrebbero costruire complesse caratteristiche
di ampiezza senza per avere vantaggi computazionali, perch con N/2 +
1 oscillatori il numero di moltiplicazioni per campione diventa pari a
N come con un qualsiasi filtro FIR di pari lunghezza. Quindi i filtri
a campionamento in frequenza hanno interesse dal punto di vista del
costo computazionale solo se il numero di oscillatori alimentati piccolo
rispetto ad N e quindi se hanno delle caratteristiche di tipo passa banda
piuttosto pronunciate.
Un altro motivo per cui i filtri a campionamento in frequenza sono
interessanti, a parte quello computazionale visto in precedenza, sta nella
125

CAPITOLO 6 CAMPIONAMENTO IN FREQUENZA


impulso 1
Uscita del blocco
ritardatore
t

impulso 2

NT

risposta delloscillatore
all impulso 1
t

risposta delloscillatore
allimpulso 2
t

risposta complessiva
delloscillatore ai due
impulsi

Figura 6.3: Modo alternativo per vedere il funzionamento di un filtro a


campionamento di frequenza
modalit di progetto, assai semplice.
Infatti si consideri la caratteristica del filtro desiderato D(); ( attenzione : se il filtro approssimante causale, anche il filtro
approssimando deve essere causale! Quindi D() deve tenere conto
di un ritardo pari circa a N/2 campioni) si campioni questa caratteristica alle N/2 + 1 pulsazioni k = 2k/NT ; k = 0, ..N/2 e siano Dk
i valori (in generale complessi) di questi campioni. Ora, si interpolino
questi campioni lungo lasse delle frequenze con una funzione sinc che
ha appunto il primo zero a intervallo 1/NT ; la funzione risultante H()
appunto quella del sistema a campionamento in frequenza presentato
nella figura 6.5, purch i guadagni Hk siano pari a Dk . Per ritrovare
valori reali dei guadagni, si ricordi di accoppiare i rami corrispondenti
alle frequenza positive con quelli delle frequenze negative.
La dimostrazione di quanto osservato segue dal fatto che stiamo facendo uninterpolazione (con un filtro ideale nel dominio delle frequenze) di
un segnale costituito da una sequenza di impulsi (le sinusoidi alle frequen126

6.1 INTRODUZIONE
a)
xi

yi

u
-2 c o s( 0)

z -N

z -1

z -2

b)

H (f)

f0
B

B = 2 /(N T )
f 0 = k /(N T )

Figura 6.4: Schema a blocchi (a) e funzione di trasferimento (b) di un


filtro a campionamento in frequenza

ze fk = k/NT ); nel capitolo 2 uninterpolazione simile era stata fatta nel


dominio dei tempi. La convoluzione con il sinc nel dominio delle frequenze corrisponde alla finestratura rettangolare fatta nel dominio dei tempi.
Peraltro si ricordi che sia ha a che fare con segnali campionati e pertanto
periodici nel dominio delle frequenze; la trasformata del sinc discreto
presentata nel Capitolo 4.
Al crescere di N, cresce la qualit dellinterpolazione e quindi decresce
la dierenza tra approssimante ed approssimata. Per filtri passa banda,
come si detto, c poi anche un vantaggio computazionale.
Si osservi che la somma in parallelo dei vari rami nel sistema di figura
6.6 comporta la formazione di nuovi zeri accanto alla cancellazione dei
poli. Altrimenti si arriverebbe al paradosso che la risposta finale ha solo
un campione.
127

CAPITOLO 6 CAMPIONAMENTO IN FREQUENZA

Figura 6.5: a) Campionamento della F.d.T. da sintetizzare b)


Interpolazione con funzioni sinc c) Risultato dell interpolazione

6.2

Progetto

Il progetto di filtri FIR utilizzando i campioni della trasformata di Fourier desiderata presi ad intervallo regolare 1/NT pu essere ricondotto
alla progettazione di filtri assegnando i valori dei campioni della DFT
{Hk }N1
k=0 . Lunica accortezza che il filtro ricavato per questa via ha
una risposta temporale periodica che deve essere troncata su un periodo per ottenere un filtro a risposta temporale limitata (FIR). Orbene,
il troncamento non pu essere arbitrario. Vengono presentati di
seguito i passi principali:
a) Antitrasformazione discreta di Fourier:
N 1
{Hk }N1
k=0 {hn }n=0
n = h
n+N ).
.Si ricordi che la sequenza periodica (ovvero h
b) Troncamento su 1 periodo della sequenza periodica (sequenza a n per n = 0, ..., N 1 e zero altrove.
periodica): hn = h
128

6.2 PROGETTO

H(f0)
+

xn

z-N

oscillatore a
frequenza f0

H(f1)

oscillatore a
frequenza f1

H(fi)

S
O
M
M
A
T
O
R
E

un

oscillatore a
frequenza fi

Figura 6.6: Schema a blocchi di un filtro a campionamento in frequenza


i cui campioni assegnati siano H(fi )
c) Trasformata z della sequenza troncata:
#
N
1
X
1
H(z) =
hn z n =
Hk WNkn z n =
N
n=0
n=0
| k=0{z
}
IDFT
"N1
#
N1
X
1 X
kn n
=
=
Hk
WN z
N k=0
n=0
N1
X

N
1
X

"

"N1
#
N1
X

1 X
k 1 n
=
Hk
WN z
N k=0
n=0

N1
1 X
1 WNkN z N
Hk
=
=
N k=0
1 WNk z 1

129

CAPITOLO 6 CAMPIONAMENTO IN FREQUENZA


N 1
Hk
1 z N X
=
=
k 1
N
1

W
z
N
k=0

N 1
1 z N X
Hk
N
1 exp(j 2
k)z 1
N
k=0

ovvero la risposta allimpulso del filtro pu essere realizzata da un insieme di oscillatori che generano sinusoidi complesse di ampiezza |Hk | e
fase Hk . Gli oscillatori sono spenti dopo N campioni e avere quindi
compiuto un numero intero k di cicli.
d) Trasformata di Fourier della sequenza di durata limitata {hn }:
N1
Hk
1 ejNT X
H(z = exp(jT )) =
2
j(
kT )
N
N
k=0 1 e

e indicando con W () la trasformata di una finestra rettangolare causale


(ritardata in tempi di (N 1)/2 campioni):
W () =

1 1 ejN T
1 ejNT /2 sin(NT /2)
=
=
2
N 1 ej( N kT )
N ejT /2 sin(T /2)

exp(jT (N 1)/2) sin(NT /2)

N
sin(T /2)
sostituendo in ciascuno dei termini nella sommatoria la trasformata diventa:
N1
X
2
H(z = exp(jT )) =
Hk W (T k)
N
k=0
=

dove la W () compare ancora modulata (spostata lungo lasse delle


frequenze o ruotata attorno al cerchio unitario) di una pulsazione
2k
NT
La trasformata di Fourier della sequenza hn pu essere quindi ricavata da Hk per (convoluzione) interpolazione con la funzione W () (nota
che H(2k/N) = Hk ), oppure osservando che la sequenza periodica
troncata da una finestra rettangolare (causale) di N campioni:

1 n = 0, 1, ..., N 1
W () wn =
0
altrove
2fk =

130

6.3 CAMPIONAMENTO IN FREQUENZA E FINESTRATURA

Si osservi infine che anche se solo una coppia degli Hk , Hk diversa


da zero, pur tuttavia, per avere il valore desiderato della funzione di
trasferimento, si forma uno zero reale. Se infatti Hk = Hk , WN =
exp (j2/N) :

!
1 z N Re (Hk ) z 1 Re Hk WNk

H(z) = 2
N
1 + z 2 2z 1 Re WNk

6.3

Campionamento in frequenza e finestratura

Si pu comprendere la dierenza tra campionamento in frequenza e finestratura: in entrambi i casi, la sequenza {hd,n } ; n = , ... , antitrasformata della funzione desiderata Hd () viene limitata ad N campioni. Nel caso della finestratura, la limitazione avviene con un troncamento e quindi la funzione desiderata Hd () viene filtrata passa basso nel
dominio delle frequenze con la convoluzione la trasformata della finestra,
p.e. un sinc.
{hn } ; n = N/2, ...N/2 H () = Hd ()

sin NT
2
NT
2

(6.4)

Nel caso del campionamento in frequenza, la limitazione temporale


viene ottenuta con la replicazione nei tempi a distanza di N campioni, e
pertanto con un campionamento in frequenza seguito dalla convoluzione
con lo stesso sinc.
Nel secondo caso abbiamo anche degli errori di equivocazione, dovuti
al campionamento non preceduto dal filtraggio, che non avremmo avuto
nel primo caso. In conclusione, il campionamento in frequenza peggio
che non la finestratura; in compenso, nel caso di filtri passa banda a
banda stretta, realizzare un filtro lungo N, pu costare molto meno di N
moltiplicazioni per campione.

6.4

Eetti del ritardo

Il controllo della funzione di trasferimento del filtro a campionamento


in frequenza limitato poich essa progettata solo sulla base dei cam131

CAPITOLO 6 CAMPIONAMENTO IN FREQUENZA

pioni in frequenza Hk . Landamento eettivo della funzione di trasferimento tra i campioni controllato dalla funzione W (). Il termine
di ritardo exp(jT (N 1)/2 introduce una oscillazione nella risposta in frequenza del filtro che pu essere eliminata solo se si introduce
una traslazione antitetica opportuna (o ritardo) della risposta allimpulso
periodica. Riscrivendo la H() :
H() = exp(jT (N 1)/2)

N1
X

Hk

k=0

(N 1)T
2
k
)
exp(j
NT
2
{z
}
|

anticipo seq. periodica di (N1)/2 campioni

k)N/2)
sin((T 2
N
C=
N sin((T 2
k)/2)
N

si evidenziano tre contributi (nellordine): il ritardo di (N 1)/2 campioni necessario per avere un filtro causale, i coecienti del filtro con uno
sfasamento corrispondente ad un anticipo (il termine exp(j 2
k (N1)
)) e
N
2
il seno cardinale periodicizzato che eettua linterpolazione. Per ovviare
ai termini indesiderati indotti dallinterpolazione necessario scegliere
i coecenti del filtro Hk in modo che questi contengano un ritardo di
(N 1)/2 campioni tale da compensare lanticipo visto prima. In al n il troncamento da applicare
tri termini, a causa della periodicit di h
per ottenere hn non arbitrario. In pratica sempre necessario ritardare di (N 1)/2 campioni la sequenza per ovviare ad un troncamento
troppo brusco allinizio e alla fine della risposta hn . Questo troncamento altrimenti introdurrebbe termini ad alta frequenza indesiderati e zeri
in posizioni dicilmente prevedibili. In fase di progetto il ritardo di
(N 1)/2 campioni si realizza sfasando opportunamente i campioni in
k,
frequenza ovvero scegliendo opportunamente i campioni in frequenza H
che sono:
k exp(jk N 1 ) = [per N grande] ' (1)k H
k,
Hk = H
N
per segnali reali : Hk = HN k
Questo giustifica linversione di segno necessaria quando si vuole realizzare un filtro passa banda combinando due risposte allimpulso a frequenze adiacenti. A titolo di esempio in figura si mostra la risposta allimpulso
132

6.4 EFFETTI DEL RITARDO


F. camp. freq. (senza ritardo)

F. camp. freq. (ritardo N/2 campioni)


0.4

0.3

0.3

0.2

{h }

{h }

N- 1
n n=0

N- 1
n n=0

0.4

0.1

0.2

0.1

10

20

30

1
0.8

0.6

0.6

30

{H }

N- 1
k k=0

N- 1
k k=0

{H }

20
n

0.8

0.4
0.2
0
-0.5

10

0.4
0.2

0
f/f

0.5

0
-0.5

0
f/f

0.5

Figura 6.7: Risposta allimpulso (parte superiore) e trasformata di Fourier (parte inferiore) di un filtro passa basso a campionamento in frequenza
in cui sono assegnati i campioni della fdt {Hk }N1
k=0 (pallini vuoti).
e la fdt di un filtro passa basso a campionamento in frequenza senza applicazione di ritardo e con un ritardo di N/2 campioni (per semplicit qui
si e scelto di ritardare di N/2 campioni in quanto N = 32 1). In entrambi i casi la funzione di trasferimento coincide, per T = 2k/N, con
i campioni della risposta in frequenza del filtro definiti in fase di progetto.
Nel secondo caso la funzione di trasferimento appare pi ragionevole
per lassenza di termini indesiderati ad alta velocita di oscillazione (introdotti dal termine exp [jT (N 1)/2] nella W ()). La posizione
degli zeri per i due casi indicata nella figura.
Osservazioni:

1) Se la sequenza reale allora Hk = HNk


e quindi la trasformata
z diventa (separando il campione alla continua, k = 0, e al Nyquist,
k = N/2, quando questultimo presente e cio se N pari):

HN/2
1 z N
H0
H(z) =
+
+A
N
1 z 1 1 + z 1

N/21
X
Hk
Hk
+
A=
1 exp(j 2
k)z 1 1 exp(j 2
k)z 1
N
N
k=1
133

CAPITOLO 6 CAMPIONAMENTO IN FREQUENZA


F. camp. freq. (ritardo N/2 campioni)
1.5

0.5

Imaginary part

Imaginary part

F. camp. freq. (senza ritardo)


1.5

31

0
-0.5
-1

0.5
2

31

-0.5
-1

-1.5
-1.5

-1

-0.5

0
0.5
Real part

1.5

-1.5
-1.5

-1

-0.5

0
0.5
Real part

1.5

Figura 6.8: Poli/zeri filtro campionamento in frequenza senza e con ritardo di N/2 campioni. In entrambi i casi, i valori dei campioni in frequenza
sono eguali!

HN/2
1 z N
H0
=
+
+B
N
1 z 1 1 + z 1
N/21

B=2

X
k=1

1 !
k)
z
Re (Hk ) Re Hk exp(j 2
N
2
1 2 cos( N k)z 1 + z 2

Lultimo termine una somma di oscillazioni sinusoidali reali opportunamente


sfasate secondo
1il termine di fase indicato dallo zero ( Re (Hk )
2
Re Hk exp(j N k) z ). E opportuno osservare che per Hk reali la
risposta allimpulso di ogni oscillatore una cosinusoide.
2) Il ritardo di (N 1)/2 campioni rappresenta un numero intero di
campioni nel caso di N dispari mentre corrisponde ad uninterpolazione
nei tempi nel caso di N pari (vedi esempio in figura). In questultimo
caso si potrebbe adottare un ritardo di N/2 a meno di un piccolo errore
(lerrore e trascurabile solo per risposta allimpulso di durata limitata).
3) Ogni oscillatore ha (nel caso di risposta allimpulso reale) un costo di 3 moltiplicazioni/campione. Complessivamente ci sono N/2 1
oscillatori con un costo di (circa) 3N/2 moltiplicazioni/campione. Se
confrontato con unimplementazione diretta di un filtro FIR con risposta
hn (N moltiplicazioni/campione) il filtro a campionamento in frequenza ha un vantaggio computazionale solo se il numero di coeenti Hk
piccolo (se il numero di oscillatori limitato).
134

6.5 QUANTIZZAZIONE DEI COEFFICIENTI

6.5

Quantizzazione dei coecienti

Un importante problema realizzativo aigge i filtri a campionamento


in frequenza: mentre le posizioni degli zeri della funzione di trasferimento sono corrispondenti proprio alle radici dellunit, le posizioni
dei poli dipendono dalla precisione con cui vengono realizzati i fattori
2 cos(2k/N); se uno di questi fattori rappresentato con un numero
binario finito, e quindi imprecisamente, la perfetta cancellazione polo zero diventa impossibile. La sinusoide lanciata da un impulso non fa un
numero intero di cicli in N campioni, e limpulso di segno opposto che
arriva dopo N campioni lancia quindi una sinusoide che non sar in perfetta opposizione di fase con la precedente. La somma delle due sinusoidi
non si annulla e quindi rimane una sinusoide, residuo della cancellazione
imperfetta. La risposta allimpulso del filtro diventa IIR, non convergente
a zero; il sistema diventa quindi instabile, come vedremo. Un oscillatore
con funzione di trasferimento
H(z) =

1
1+

az 1

+ z 2

; |a| 2

(6.5)

genera una sinusoide campionata {yn } con pulsazione


a
T = = cos1 ( )
2

(6.6)

Noi desidereremmo avere esattamente:


=

2k
a = 2 cos(2k/N)
N

Ma le piccole variazioni di a dovute alla quantizzazione dei coecienti


portano ad una variazione della pulsazione :
=

a
2T sin

(6.7)

La dierenza tra la sinusoide desiderata e quella generata dopo N campioni :


1 2
1 + 2
sin
(6.8)
sin 1 sin 2 = 2 cos
2
2
2 = (2k/N T + )nT (6.9)
1 = (2k/NT + )(n + N)T ;
135

CAPITOLO 6 CAMPIONAMENTO IN FREQUENZA

Lampiezza della sinusoide residua (supponendo unitaria lampiezza


della sinusoide generata):
NT
NT
cos[( + )nT +
]'
2
2
Na
Na
cos(n +
)
4 sin
4 sin

yr,n = 2 sin

(6.10)

Come si vede, rimane una sinusoide residua di ampiezza anche piccola

Figura 6.9: Risposta impulsiva di un filtro a campionamento di frequenza


reale
se a piccolo, ma di durata illimitata. La situazione inaccettabile,
perch ogni campione in ingresso poi lascerebbe un residuo sinusoidale di
durata illimitata; dopo n campioni di ingresso casuali, di eguale varianza
ed incorrelati tra loro, la varianza del segnale residuo, somma
di n
sinusoidi di ampiezza e fase casuale, cresce proporzionalmente a n .
Quindi, dopo qualche tempo, il filtro sarebbe comunque totalmente inutilizzabile, per buona che fosse la quantizzazione. Il sistema diventato
instabile.
Per stabilizzarlo, non rimane che riportare i poli degli oscillatori allinterno del cerchio unitario ( < 1), in modo da limitare in pratica la
durata delle sinusoidi residue, che decadranno esponenzialmente a zero
(N << 1). Se la quantizzazione dei coecienti rozza (fatta con pochi
136

6.6 GENERALIZZAZIONI

bit), sar opportuno allontanare vieppi i poli dal cerchio unitario e quindi scegliere un minor valore per . Questo comporta un maggiore degrado
della caratteristica di ampiezza del filtro rispetto al caso ideale. Inoltre,
per mantenere la cancellazione approssimata, devono rientrare allinterno del cerchio unitario anche gli zeri; questo si ottiene in modo naturale
sottraendo dopo N campioni limpulso di ingresso moltiplicato per N .
In sostanza, la funzione di trasferimento di un filtro passa banda, robusto
rispetto al problema della quantizzazione dei coecienti, deve essere:
H(z) =

1 z N N .
; k 6= 0, N/2; < 1
1 2 cos(2k/N)z 1 + 2 z 2

dove tanto pi piccolo quanto pi la quantizzazione dei coecienti


rozza. Si osservi anche che il costo di questo filtro cresce da 1 a 3
moltiplicazioni per campione.
Si osservi che larretramento dei poli per evitare ondulazioni troppo
forti della caratteristica di ampiezza pu essere molto maggiore della
variazione della posizione del polo p dovuta alla quantizzazione. Per
esempio, per limitare londulazione a 0.01 dB si deve avere

p
< 1 100.01/10 = 0.002 > 500p
(6.11)

e quindi per avere arretramenti ragionevoli p.e. = 0.001 p <


2 106 e quindi quantizzazioni dei coecienti con almeno una ventina
di bit.

6.6

Generalizzazioni

I filtri che abbiamo visto nei paragrafi precedenti sono piuttosto semplici
e poco costosi; pu essere interessante renderli pi complicati se i benefici
superano i costi: ad esempio, per avere una struttura di lobi laterali pi
rapidamente decrescente a zero di quanto accada con il sinc, possibile
disporre in cascata due filtri a campionamento in frequenza identici o magari con due diversi valori per N : N1 , N2 . La caratteristica di ampiezza
sar il prodotto delle due e la decrescita dei lobi con la frequenza avverr
pi rapidamente; in sostanza, in questo caso, linviluppo della sinusoide
generata da ogni oscillatore diventa un trapezio (convoluzione di due
rettangoli di larghezze N1 , N2 ) invece che un rettangolo.
137

CAPITOLO 6 CAMPIONAMENTO IN FREQUENZA

interessante notare che nel caso di sinusoidi reali, i due sinc centrati alle frequenze k/NT hanno una struttura di lobi laterali tale che
i lobi positivi di un sinc si sovrappongono ai lobi negativi dellaltro comportando quindi una decrescita della funzione di trasferimento pi veloce
con la frequenza (1/n2 ; dove n il numero dei lobi del sinc); infatti,
il troncamento della sinusoide avviene in occasione di un passaggio per
lo zero e quindi viene conservata la continuit della funzione ma non
della sua pendenza.
Ancora, si pu incrementare la scelta delle frequenze degli oscillatori
considerando il caso in cui il secondo impulso ha segno positivo. Si abbia
quindi:
1 + z N
1
H (z) =
1
N
1 2z cos k + z 2
In questo caso gli zeri del numeratore sono zk = exp (jk ) :
k =

(2k + 1)
N

Essi sono N, distributi a distanza angolare 2/N attorno al cerchio unitario. Ora, lo zero a frequenza pi bassa cade a /N e quindi non vi sar
mai uno zero alla frequenza 0; ve ne sar uno alla frequenza di Nyquist
solo per N dispari. In sostanza, la sinusoide lanciata dal primo campione eettua nellintervallo di tempo NT un numero dispari (2k + 1)
di mezzi giri, cosicch il secondo impulso rilasciato dalla memoria dopo
N campioni, eguale al primo, lancia una sinusoide di segno opposto a
quella corrente e avviene la cancellazione. La struttura dei lobi laterali
ancora favorevole, visto che il troncamento avviene in corrispondenza di
un passaggio per lo zero della sinusoide.
Ancora, si pu generalizzare ulteriormente il comportamento dei filtri
a campionamento in frequenza al caso in cui la frequenza f generata dalloscillatore sia proprio qualsiasi. Allora, si possono spillare dalla memoria i campioni ritardati non solo N ma anche N 1 campioni. Si pu
alimentare loscillatore in modo tale da troncare le sinusoidi (eventualmente smorzate) che hanno frequenza f lanciando, dopo N campioni,
delle sinusoidi sfasate dellangolo opportuno, che pu essere qualsiasi. Il
polinomio a numeratore del filtro sar quindi:
H(z) =

B(z)
1 2 cos(2f )z 1 + 2 z 2
138

6.6 GENERALIZZAZIONI

B(z) = 1 + az (N1) + bz N invece che 1 z N


Indicando la pulsazione normalizzata della sinusoide con = 2f T ,
risulta:
sin N
a=
; = 2f T
sin
b=

sin (N 1)
sin

La frequenza centrale f del filtro passabanda quindi arbitraria e, per


costruzione, due degli N zeri di B(z) cancellano i due poli delloscillatore;
gli altri zeri di B(z) non saranno pi disposti regolarmente attorno al cerchio unitario, ma se ne distanzieranno in modo abbastanza casuale. Infatti, il troncamento della sinusoide non in corrispondenza di un passaggio per il valore 0, comporta necessariamente una decrescenza pi lenta
dei lobi laterali (la situazione peggiore si ha quando |N k| = /2).

139

Capitolo 7
Strutture canoniche e
riverberanti
7.1

Strutture canoniche di filtri numerici

La realizzazione pratica dei filtri con moltiplicatori e sommatori binari


con un numero limitato di cifre ha notevoli eetti sul loro comportamento,
come gi osservato alla fine del precedente capitolo nel caso di filtri a
campionamento in frequenza. In questo capitolo illustreremo anzitutto
le forme con cui si possono realizzare ecientemente dei filtri numerici.
Poi vedremo che la realizzazione eciente che minimizza il numero delle
moltiplicazioni non sempre la soluzione pi valida. Un qualsiasi filtro
FIR o IIR rappresentato dallequazione alle dierenze finite:
yi =

N
X

bn xin +

n=0

M
X

am yim

(7.1)

m=1

Una realizzazione pratica presentata nella fig. 7.1 dove il blocco che
realizza gli zeri viene prima del blocco che realizza i poli; se invece si
fa precedere il blocco dei poli, (fig. 7.2) si vede che il contenuto delle
memorie identico nei due blocchi; evitando la duplicazione, si arriva
allo schema di figura 7.3 che realizza lequazione (7.1) con il minimo di
blocchi di memoria, di moltiplicazioni e di interconnessioni. Non necessario fare precedere i poli; possibile fare precedere gli zeri ritardando
i segnali moltiplicati invece che moltiplicare i segnali ritardati (fig. 7.4).
In sostanza, possibile scambiare il senso delle frecce nella figura 7.3 e
141

CAPITOLO 7 STRUTTURE CANONICHE E RIVERBERANTI


b0

xn


z-1

a1

b1


z-1

z-1

b2

a2


z-1

yn

z-1

b3

a3

z-1

Figura 7.1: Realizzazione di un filtro FIR o IIR con zeri attuati prima
dei poli
si ritrova la stessa funzione di trasferimento purch si scambino i sensi di
propagazione nelle memorie e i coecienti ai con i bi .
Il sistema poi si semplifica quando il filtro FIR da realizzare ha fase
zero (simmetria dei coecienti rispetto al tempo 0) ma anche un ritardo per permetterne la realizzazione causale; esso ha quindi fase lineare e
pertanto c simmetria dei coecienti (fig. 7.5) rispetto ad un istante centrale.Se il numero dei campioni del filtro dispari, vi anche il campione
centrale (fig. 7.5b). E possibile ridurre il numero delle moltiplicazioni
alla met (o quasi, per N dispari) con la struttura di figura 7.5a in cui
si calcola prima la somma in parentesi e poi il prodotto.
N/21

yi0

bn (xin + xiN+1+n )

(7.2)

n=0

7.2

Quantizzazione dei coecienti

Se le moltiplicazioni che compaiono nello schema dei filtri canonici vengono realizzate con moltiplicatori binari con un numero finito di cifre la
posizione dei poli e degli zeri delle funzioni di trasferimento cambia. La
142

7.2 QUANTIZZAZIONE DEI COEFFICIENTI

xn

b0

a1

z-1

z-1

z-1

z-1

b2


a3

b1


a2

yn

z-1

z-1

b3

Figura 7.2: Realizzazione di un filtro FIR e IIR con poli attuati prima
degli zeri
dipendenza delle radici di un polinomio qualsiasi dalla variazione dei coecienti (sensitivit) calcolata come segue. Supponiamo per semplicit
di avere un polinomio nella variabile z e non z 1 :
A(z) = a0 +

N
X

m=1

aNm z = aN

N
Y

(z zn ); a0 = aN

n=1

N
Y

(zn )

(7.3)

n=1

e di alterarne i coecienti a causa della quantizzazione; vogliamo calcolare le sensitivit come derivate parziali zm /ak e cio la variazione della
posizione dello zero m esimo in funzione della variazione del coeciente
kesimo. Per fare ci, possiamo osservare che:
N
Y
A(z)
= aN
(z zn );
zh
n6=h

A(z)
= z Nk ;
ak

(7.4)

Inoltre,
N Y
N
N
X
X
zm
A(z) zm
A(z)
= z Nk =
= aN
(z zn )
ak
zm ak
ak
m=1
m=1 n6=m

143

(7.5)

CAPITOLO 7 STRUTTURE CANONICHE E RIVERBERANTI

xn

b0

z-1

a1

a2

z-1

z-1

b3

b2

a3

b1

yn

Figura 7.3: Realizzazione usuale dei filtri a struttura canonica


Ponendo z = zh , tutti i termini della sommatoria si annullano tranne
quello che non ha tra i fattori (z zh ),
zhNk
e quindi:

N
zh Y
= aN
(zh zn )
ak n6=h

Nk
zh

= Q zh

N
ak a

N
n6=h (zh zn )

(7.6)

(7.7)

Si vede pertanto che la sensitivit e cio il fattore di proporzionalit


che lega lo spostamento di una radice alla variazione di un coeciente
tanto maggiore quanto maggiore il grado del polinomio e quanto pi
vicine sono le altre radici alla radice considerata. Quindi, per avere la
minima sensitivit sar opportuno realizzare blocchi che contengano solo
polinomi di grado minimo e cio due per evitare di utilizzare aritmetica
complessa. Quindi sistemi complicati verranno realizzati come cascate
di forme biquadratiche e cio funzioni di trasferimento che realizzano
una coppia di poli ed una coppia di zeri. Inoltre, lalternanza poli zeri
144

7.2 QUANTIZZAZIONE DEI COEFFICIENTI

Figura 7.4: Struttura di filtro canonica con ritardo dei risultati dopo le
moltiplicazioni
impedisce di cadere in underflow o overflow visto che in generale i poli
amplificano e gli zeri attenuano il segnale.
Peraltro, come vedremo in un prossimo paragrafo, sar opportuno
trovare delle strutture filtranti dove sia possibile garantire che i poli
siano confinati allinterno del cerchio unitario, per rozza che sia la quantizzazione dei coecienti. Ci possibile, con filtri fondati su analogie
fisiche con le strutture riverberanti, per le quali si pu garantire una
stabilit intrinseca.

7.2.1

Sfasatori puri

E importante osservare che se si ha uno sfasatore puro, caratterizzato


cio da una funzione di trasferimento del tipo:
A(z) =

D(z)
D(z)

(7.8)

numeratore e denominatore sono eguali a parte lordine dei coecienti.


Anzitutto, facile identificare delle strutture con cui, per realizzare uno
145

CAPITOLO 7 STRUTTURE CANONICHE E RIVERBERANTI

xn
z-1

z-1

z-1

b0

z-1

z-1

b1

z-1

b2

bN2

bN1

yn

z-1

a)

xn
z-1

z-1

z-1

b0

z-1

z-1

b1

z-1

b2

bN3
2

yn

bN1
2

b)

Figura 7.5: a) Realizzazione di un filtro FIR di ordine pari con fase


lineare; b) Realizzazione di un filtro FIR di ordine dispari con fase lineare

146

7.3 STRUTTURE RIVERBERANTI: INTRODUZIONE

sfasatore puro con N zeri ed N poli, bastano N moltiplicazioni per campione, invece di 2N. Infatti, indicando con X(z), Y (z) le trasformate z
delle sequenze di ingresso e di uscita dello sfasatore puro, basta scriverne
lequazione alle dierenze finite (supponendo d0 = 1) :
Y (z) =

D(z)
X (z)
D (z)

D (z) Y (z) = D(z)X


(z)
N
X

m=0

dm ynm =

N
X

m=0

dN m xnm

yn = xnN

N
X

m=1

N
X

m=0

dm (ynm xnN +m ) = 0

dm (ynm xnN+m )

Inoltre, per qualsiasi quantizzazione dei coecienti, lo sfasatore puro

rimarr sempre tale, in quanto la sequenza a numeratore D(z)


comunque la ribaltata della sequenza a denominatore D (z); bisogna per
verificare che i poli non escano dal cerchio unitario. Se si ricorda che
abbiamo a suo tempo osservato come si possano ottenere filtri passa basso e passa alto complementari in potenza da somme e dierenze di due
sfasatori puri, si comprende che si possano cos ottenere strutture filtranti robuste rispetto alla quantizzazione dei coecienti. Nella sezione
sulle strutture riverberanti, vedremo sistemi per realizzare sfasatori puri
certamente stabili.

7.3

Strutture riverberanti: introduzione

Abbiamo visto nel paragrafo sulla quantizzazione dei coecienti come


piccole variazioni dei coecienti di filtri IIR anche stabili possano portare
ad instabilit; vedremo anche la possibilit di formazione di cicli limite
in filtri IIR con poli vicini al cerchio unitario. Entrambi questi fenomeni
sono poco naturali; non ci attendiamo che un sistema fisico possa, con
lievi alterazioni dei parametri, diventare da stabile instabile e generare
energia invece di assorbirne. La questione quindi che i filtri numerici,
quali studiati finora, non corrispondono direttamente a delle strutture
fisiche da cui possano mutuare pregevoli doti di stabilit.
147

CAPITOLO 7 STRUTTURE CANONICHE E RIVERBERANTI

Questa appunto la corrispondenza che vogliamo studiare ora: in particolare verranno introdotti i sistemi numerici chiamati filtri a traliccio
ricorsivi, derivanti da sistemi fisici indicati come strutture riverberanti; mediante questi sistemi posssibile realizzare qualsiasi filtro causale
IIR: i loro parametri per avranno un diretto significato fisico ed in particolare saranno i coecienti di riflessione per onde trasmesse su cascate
di tronchi di linee di trasmissione. Per motivi energetici, i coecienti di
riflessione saranno sempre inferiori allunit.
Consideriamo una linea di trasmissione illimitata, uniforme; questa
linea pu essere elettrica (p.e. un cavo coassiale), acustica (p.e. un trombone), o meccanica (p.e. una corda tesa). In questa linea si propagano
onde (di tensione e corrente nel caso della linea elettrica, di velocit e
pressione nel caso della linea acustica, di velocit e tensione nel caso della
corda tesa) nelle due direzioni che indicheremo con S (sinistra) e D (destra) (fig. 7.6). Supponiamo ora di avere due tronchi di linea illimitati,
D
S

i
v

Figura 7.6: Convenzione sulla propagazione delle onde in una linea


diversi, ma entrambi uniformi e collegati insieme (fig. 7.7):
londa Ai che arriva alla interfaccia da uno dei due tronchi viene
parzialmente riflessa ed in parte viene trasmessa nel secondo tronco; supponendo unitaria lampiezza dellonda incidente Ai indicheremo con c
e t le ampiezze delle onde rispettivamente riflesse e trasmesse. Per la
continuit delle grandezze fisiche allinterfaccia deve essere:

Ai + cAi = tAi ;

1+c=t

(7.9)

Se ora indichiamo con Yi ; i = 1, 2 le ammettenze dei due tronchi di linea


e cio dei parametri che legano lenergia trasportata dallonda al modulo
quadrato dellampiezza dellonda stessa (ammettenze vere e proprie se
148

7.3 STRUTTURE RIVERBERANTI: INTRODUZIONE

c = coefficiente di riflessione allinterfaccia


per onde che vanno verso destra.
t = coefficiente di trasmissione allinterfaccia
per onde che vanno verso destra.

Ai
tAi

cdAi
Y1

Y2
c , t

c = coefficiente di riflessione allinterfaccia


per onde che vanno verso sinistra.
t= coefficiente di trasmissione allinterfaccia
per onde che vanno verso sinistra.

Ai
tAi
cAi
Y1
Y2
c,t

Figura 7.7: Connessione tra tronchi di linee illimitati


si tratta di tensioni, impedenze se si tratta di correnti, altri parametri
meccanici in altri tipi di linee ecc.) risulta che lenergia trasportata da
unonda di ampiezza Ai Ei :
Ei = Yi A2i

(7.10)

Il bilancio energetico impone che la somma delle energie trasportate dalle


onde riflessa e trasmessa sia eguale allenergia dellonda incidente:
Y2 12 = Y2 c2 + Y1 t2

(7.11)

Sostituendo nella relazione 7.9 risulta:


c=

Y2 Y1
Y2 + Y1
149

(7.12)

CAPITOLO 7 STRUTTURE CANONICHE E RIVERBERANTI

Poich, per motivi energetici, Yi > 0, ne risulta che i coecienti di riflessione sono inferiori ad 1; |ci | < 1; inoltre il coeciente di trasmissione
0 < t < 2.
Ancora, scambiando i due mezzi, il coeciente di riflessione cambia
segno c0 = c; t0 = 1 + c0 = 1 c. Non deve stupire che il coeciente
di trasmissione possa essere maggiore di 1; basta pensare alle onde del
mare che, arrivando vicino alla spiaggia, diventano pi alte, senza che la
loro energia sia amplificata.

7.4

Relazione con i sistemi numerici

Fino ad ora, niente appare collegare i sistemi numerici e le strutture


riverberanti; pensiamo per ad una cascata di tronchi di linea, diversi
tra loro, e che terminano in tronchi di linea illimitati, dalle due parti.
Supponiamo anche che tutti i tronchi, sia pure diversi tra loro, abbiano
un eguale ritardo di propagazione pari a T /2.
Lanciamo ora su questa linea composita unonda impulsiva da uno dei
due tronchi illimitati; limpulso si propagher nei vari tronchi e lancer
altre onde impulsive nelle due direzioni. Tuttavia, sia londa che finalmente esce dalla struttura, sia londa riflessa saranno sequenze di infiniti
impulsi intervallati di T ; infatti ad ogni interfaccia sono generate nuove
e nuove onde che per si combinano in qualsiasi altra interfaccia sempre
dopo intervalli di tempo multipli di T , e cio dopo un numero intero di
percorsi avanti e indietro nelle varie celle.
Per rendersi conto della situazione consideriamo una cascata di tre
tronchi di linea (fig. 7.8); indichiamo con Yi ; i = 1, 2, 3 le tre ammettenze
dei tre tronchi e ci , i = 1, 2 i coecienti di riflessione alle due interfacce,
questa volte, attenzione, per onde che vadano verso destra (D); per le
onde S, che vanno verso sinistra, i coecienti di riflessione avranno segno
opposto.

Londa impulsiva di ampiezza unitaria arriva al tempo 0 alla prima interfaccia e si dipartono due onde impulsive nelle due direzioni di ampiezze
c1 e t1 ; londa riflessa nel primo mezzo si propaga allindietro indisturbata, dopo un tempo T /2 (ritardo che rappresenteremo con z 1/2 ); londa
trasmessa arriva alla seconda interfaccia e qui partono due nuove onde,
150

7.4 RELAZIONE CON I SISTEMI NUMERICI

1
t1
c1
t1z 1/ 2
t 2 t1 z 1/ 2

c2 t1t1z 1

c2 t1 z 1/ 2

c2 t1 z 1

c1c2 t1 z 1

c1c2 t1 z 3/ 2
c1c2 t1t 2 z 3/ 2
c1c22 t1z 3/ 2

c1c22 t1z 2

c1c22 t1t1z 2
c12 c22 t1z 2

c12 c22 t1z 5/ 2


c12 c22 t1t2 z 5/ 2
c12 c23t1z 5/ 2

c1 , t1

c2 , t2

Figura 7.8: Riverberazioni in una cascata di tre tronchi di linea


di ampiezza e ritardo c2 t1 z 1/2 t e t2 t1 z 1/2 ; poi, la prima si riflette ancora sulla prima interfaccia, parte rifluendo nel primo mezzo e parte nel
secondo, e cos via.
Londa trasmessa nel terzo mezzo :
2

T (z) = t1 t2 z 1/2 (1 c2 c1 z 1 + (c2 c1 z 1 ) (c2 c1 z 1 ) ... =


t1 t2 z 1/2
(7.13)
=
1 + c1 c2 z 1
Londa riflessa nel primo mezzo :
2

R(z) = c1 +(t1 c2 t01 z 1 )(1c2 c1 z 1 +(c2 c1 z 1 ) (c2 c1 z 1 ) +.. = (7.14)


= c1 +

t1 c2 t01 z 1
c1 + c2 z 1
=
1 + c1 c2 z 1
1 + c1 c2 z 1
151

(7.15)

CAPITOLO 7 STRUTTURE CANONICHE E RIVERBERANTI

La sequenza corrispondente allonda trasmessa un polo, a parte il ritardo inessenziale di 1/2 campione. Londa riflessa invece ha un polo
ed uno zero, e corrisponde ad uno sfasatore puro nel caso che |c2 | = 1:
infatti, in questo caso lenergia tutta riflessa e quindi ragionevole che,
sfasamenti a parte, la funzione di trasferimento abbia modulo unitario in
tutta la banda. Quando un coeciente di riflessione unitario, diremo
che la struttura totalmente disadattata ad un estremo.

7.5

Cascata di tronchi di linea

Consideriamo ora una cascata di tronchi di linea e determiniamo le relazioni tra i segnali ai due ingressi ed alle due uscite: consideramo le
due interfacce tra i tronchi n 1; n ed n, n + 1; indichiamo con cn , tn
e c0n = cn , t0n = 1 cn i coecienti di riflessione e trasmissione per i
segnali che si propagano verso sinistra (S) e destra (D) rispettivamente.
Indichiamo poi con Dn , Sn i segnali nel tronco n, che si propagano verso
destra e sinistra rispettivamente in corrispondenza dellinterfaccia verso
il blocco n 1 e Dn0 , Sn0 i segnali (sempre nel tronco n) in corrispondenza
dellinterfaccia verso il blocco n + 1 (vedi figura 7.9).

La relazione tra le ampiezze delle onde ai due lati dellinterfaccia


pertanto:

Sn0 (z)
Sn+1 (z)
tn c0n

(7.16)
0
0
Dn+1 (z)
Dn (z)
cn tn

Ancora possiamo scrivere che:

Sn (z) = z 1/2 Sn0 (z)


Dn (z) = z +1/2 Dn0 (z)
e combinando le precedenti equazioni troviamo che:

1
1/2
Sn+1 (z)
z
(z)
1
c
S
n

= z
n

1
t
n
Dn+1 (z)
Dn (z)
cn z
152

(7.17)

7.6 IL FILTRO A TRALICCIO RICORSIVO

n+1
n
n-1

D'n
Dn+1

Dn
Sn

Sn+1
S'n

c'n , t'n
cn , tn

Figura 7.9: Coeciente di riflessione e trasmissione all(n+1)-esima


interfaccia

7.6

Il filtro a traliccio ricorsivo

Le strutture riverberanti si trasformano in sistemi numerici in modo semplice: infatti basta costruire lo schema riportato in figura 7.10 corrispondente allequazione (7.17).
In questo schema compaiono i blocchi:
Qn =

z 1/2
;
tn

1
tn
= 1/2
Qn
z

(7.18)

che hanno funzioni di trasferimento reciproche e si possono elidere contemporaneamente, senza cambiare le funzioni di trasferimento esterne al
blocco. Aggiungendo altre celle ed anche una cella iniziale disadatta153

CAPITOLO 7 STRUTTURE CANONICHE E RIVERBERANTI

Sn

1/Q n

S n+1

-c n

cn

D n+1

z -1

Qn

Dn

Figura 7.10: Schema della struttura numerica equivalente ad un tronco


di linea
ta corrispondente al coeciente |c0 | = 1, (figura 7.11) vedremo che
possibile costruire:
- un filtro tutti poli di ordine N;
- unuscita ritardata di N campioni;
- uno sfasatore puro caratterizzato dagli stessi poli.
Si osservi infatti che i sistemi numerici di figura 7.12 o di figura 7.11
hanno due ingressi possibili: luno, I(z), dalla parte della cella a coeciente di riflessione unitario (e la sua funzione di trasferimento versoluscita in C(z) sar caratterizzata da N poli e un ritardo di N campioni).
Laltro ingresso possibile, E(z) si trova dalla parte adattata (e la sua
funzione di trasferimento verso S1 (z) non ha ritardo tra ingresso ed uscita). Due possibili uscite possono essere prelevate in C ed in S1 , ma
potremmo prelevare il segnale anche altrove. Quindi, disponibile tra le
altre anche la funzione di trasferimento tra lingresso E e luscita C, che
ha sempre gli stessi poli eguali per tutto il sistema, ma che ha anche gli
zeri corrispondenti ad uno sfasatore puro, per i motivi fisici gi discussi
in precedenza e che saranno rivisti ancora.
Le equazioni che governano una cella del sistema numerico senza i
154

7.6 IL FILTRO A TRALICCIO RICORSIVO


c1

c0 = 1

D 1 = I+c 0 T

D2

S 1= T

S2

c0
I

S 1= T

1/Q 1

S2

Q1

D2

-c 1
I+c 0 T = D 1
c1
D1

z -1

Figura 7.11: Cella iniziale corrispondente al disadattamento e suo


corrispondente schema numerico
blocchi Qn , 1/Qn sono facilmente deducibili dallo schema a blocchi di
figura 7.10:


Sn+1 (z)
1 cn z 1
Sn (z)

(7.19)
1
Dn+1 (z)
Dn (z)
cn z

Questi filtri vengono chiamati filtri a traliccio ricorsivi; se sono ad N


celle e quindi di ordine N, (pari a 3 in figura 7.12) sono necessarie 2N
moltiplicazioni e 2N addizioni per ogni campione in ingresso. Se da una
parte essi permettono di realizzare sfasatori puri e funzioni di trasfer155

CAPITOLO 7 STRUTTURE CANONICHE E RIVERBERANTI

imento tutti poli (con e senza ritardo), peraltro a pari ordine costano
di pi in termini di operazioni da compiere. Tuttavia, le moltiplicazioni
sono tutte per fattori inferiori ad 1 (i coecienti di riflessione cn ). La
natura fisica della struttura evita cos sia cicli limite che instabilit purch, anche per valori dei cn molto prossimi allunit, il segnale
riflesso sia sempre inferiore (in modulo) al segnale incidente.
In questo modo possibile garantire lincondizionata stabilit del sistema numerico, per rozza che sia la quantizzazione di coecienti e segnali. Ancora, potremo rendere questi sistemi tempo varianti e potremo
garantirne la stabilit in ogni istante, sempre che naturalmente |cn | 1.
Ancora sar possibile, imponendo cN = 1, ottenere filtri IIR (riverberazioni senza perdite di energia) che si comportano da oscillatori puri, non
divergenti se |cn | 1, n < N; si poi visto nel capitolo 5 che si possono
ottenere filtri IIR di tipo Butterworth, Chebyshev o ellittici come somme
e dierenze di sfasatori puri.

7.7

La ricorsione di Levinson

Nel paragrafo precedente, abbiamo visto un esempio di un filtro numerico derivante dalla cascata di pi celle corrispondenti a tronchi di linea,
chiuso da un lato con una cella corrispondente ad un coeciente di riflessione unitario (disadattamento da un lato). Le funzioni di trasferimento
di questo sistema numerico, a seconda dellingresso scelto, sono tutti poli
(con o senza un ritardo di N campioni) o uno sfasatore puro; esse sono
determinabili in modo semplice a partire dai coecienti di riflessione
delle varie celle, attraverso una formula ricorsiva nota come ricorsione
di Levinson. Questa formula verr poi riincontrata nello studio della
predizione lineare, a parte essere stata vista nel caso della soluzione delle
equazioni di Yule Walker per la sintesi di filtri IIR.
Consideriamo quindi il caso in figura 7.12 in cui la struttura riverberante chiusa da un lato da un coeciente di riflessione unitario:
numereremo i tronchi di linea a partire dal coeciente unitario, che diventa quindi il coeciente c0 = 1; in questo modo possiamo allungare
la struttura riverberante senza dovere rinumerare i coecienti. I sistemi
meccanici corrispondenti a questo sistema numerico sono molti: nel caso
acustico, questo sistema corrisponde ad uno strumento musicale a fiato.
La riflessione totale su c0 corrisponde a quella delle vibrazioni acustiche
156

7.7 LA RICORSIONE DI LEVINSON

sullancia o sulle labbra del suonatore che chiudono lo strumento (trombone, clarino, oboe, sassofono ecc.). La bocca dello strumento invece corrisponde alla cella adattata ed svasata appunto per creare adattamento
con la propagazione nellatmosfera. La variabilit delle riverberazioni
e quindi dei suoni generati ottenuta alterando i coecienti di riflessione (otturando i fori del flauto, allungando il trombone, ecc.). Nel caso
del tratto vocale che vedremo al capitolo 15, la struttura riverberante
aperta sullo spazio libero dal lato della bocca. E questa linterfaccia
caratterizzata da un coeciente di riflessione pressoch unitario, e quindi, nel caso del tratto vocale numereremo i coecienti di riflessione a
partire dalle labbra, andando verso la gola. Un terzo esempio quello delle onde sismiche che si propagano nel terreno; la superficie libera
del terreno costituisce praticamente un riflettore ideale per le onde che,
provenienti dal basso, sono riflesse di nuovo verso il basso.
Il segno del coeciente di riflessione della cella disadattata iniziale,
di modulo unitario, dipende dal tipo di onda che si riflette: nel caso del
tratto vocale, avremo un minimo di pressione e quindi le onde di pressione
vedono un coeciente di riflessione c0 = 1; avremo invece un massimo
di velocit e per queste onde il coeciente di riflessione sar +1.
Passando ora al sistema numerico corrispondente realizzato con una
cascata di celle senza i blocchi Qn , 1/Qn . Indichiamo con I(z) lingresso
dalla parte disadattata (fig. 7.11) e con E(z) e C(z) rispettivamente
lingresso e luscita dalla parte adattata. La funzione di trasferimento
tra ingresso dalla parte disadattata I(z) ed uscita dalla parte adattata
C(z) avr solo poli, a parte un ritardo di N campioni ed un fattore di
scala; la funzione di trasferimento tra E(z) (ingresso dalla parte adattata)
e C(z) invece uno sfasatore puro, perch tutta lenergia viene riflessa
allindietro dal coeciente di riflessione a modulo unitario della cella
iniziale; infine, la funzione di trasferimento tra lingresso E(z) e luscita
prelevata dalla parte disadattata in S1 (z) sempre con gli stessi N poli,
ma senza ritardo.
Sempre riferendosi alla figura 7.12 ed alle equazioni (7.19) supponiamo che c2 e c3 siano nulli. Le funzione di trasferimento S1 (z)/S2 (z),
D2 (z)/S2 (z), D2 (z)/I(z) sono rispettivamente:
D1 (z) = I(z) + c0 S1 (z)
157

CAPITOLO 7 STRUTTURE CANONICHE E RIVERBERANTI

Se S2 (z) = 0:
D2 (z) = I(z)

(1 c21 )z 1
A1 (z)

e se I(z) = 0 :
S1 (z) = S2 (z)

1
A1 (z)

D2 (z) = S2 (z)

e1 (z)
A
A1 (z)

dove

A1 (z) = 1 + c0 c1 z 1
e la sequenza
AN (z) = z N AN (z 1 )

(7.20)

la sequenza AN (z), ribaltata nei tempi e ritardata di N campioni; in


altre parole la sequenza che si ottiene scambiando lordine dei coefficienti. Inoltre, c0 = 1 il coeciente di riflessione corrispondente al
disadattamento allingresso. Supponiamo ora che c2 sia diverso da 0; si
verifica (utilizzando la (7.17)) che:
S3 (z) = S2 (z)

A2 (z)
A2 (z)
= S1 (z) A1 (z)
= S1 (z) A2 (z)
A1 (z)
A1 (z)
D3 (z) = S3 (z)

D3 (z) = I(z)

e2 (z)
A
A2 (z)

(1 c21 )(1 c22 )z 2


A2 (z)

a seconda che siano diversi da 0, I(z) oppure S3 (z). Inoltre,


e1 (z)
A2 (z) = A1 (z) + c0 c2 z 1 A

Proseguendo ricorsivamente si trova che se:


DN (z) = SN (z) c0

SN+1 (z)
DN+1 (z)

cN z

cN z

158

eN1 (z)
A
AN1 (z)

SN (z)
eN1 (z) / AN1 (z)
c0 SN (z) A

(7.21)

7.7 LA RICORSIONE DI LEVINSON

ed eliminando SN (z), si trova:


DN+1 (z) = SN+1 (z) c0
dove:

eN (z)
A
AN (z)

AN (z) = AN 1 (z) + z 1 c0 cN AN 1 (z) = 1 + .... + z N c0 cN


Inoltre:

1
AN (z)
Q
2
z N N
n=1 (1 cn )
DN+1 (z) = I(z)
AN (z)

(7.22)

S1 (z) = SN+1 (z)

(7.23)

Lequazione (7.22) gi nota come la ricorsione di Levinson e collega la


funzione di trasferimento di un sistema riverberante a N celle disadattato
da un lato con quello che si ottiene aggiungendo una cella con coeciente
di riflessione cN+1 (per le onde che vanno verso il disadattamento). Se
il segno di c0 negativo, nella formula compare il segno negativo. I
polinomi AN (z) sono a minima fase, per motivi fisici (le trombe non
esplodono); procedendo matematicamente si ha:
AN+1 (z) = AN (z)[1 + c0 cN+1 z 1

eN (z)
A
] = AN (z) [1 + N+1 (z)] (7.24)
AN (z)

Se AN (z) a minima fase dimostriamo che anche AN+1 (z) lo sar; infatti
prodotto di una funzione a minima fase per una funzione [1 + N+1 (z)]
anche essa a fase minima; infatti purch sia:
|N+1 (z)| = |cN+1 | 1

(7.25)

e la fase del vettore [1 + N+1 (z)], somma del vettore unitario e di un


vettore pi piccolo, compresa tra /2 e quindi non supera ed
minima.
Un modo semplice per ricordare la ricorsione di Levinson si ottiene
dallo schema a blocchi in figura 7.13. Questo schema descrive solo parzialmente le strutture riverberanti, in quanto unifilare e quindi mancano le
propagazioni nei due sensi che caratterizzano quelle. Tuttavia, la figura
utile per una ricostruzione mnemonica della ricorsione: entrando dal
159

CAPITOLO 7 STRUTTURE CANONICHE E RIVERBERANTI

punto A1 che rappresenta lingresso SN+1 , ed uscendo dal punto A2 che


rappresenta luscita DN+1 , la struttura riverberante viene vista come la
cascata di una funzione di trasferimento tutti poli 1/AN (z) con la funeN (z), in modo che la funzione totale DN+1 /SN+1
zione di trasferimento A
eN (z) /AN (z), che corrisponde appuncorrisponde allo sfasatore puro A
to alla funzione di trasferimento totale della struttura riverberante vista
dllingresso SN+1 guardando verso la cella disadattata di ingresso, per
uscire poi in DN+1 . Aggiungendo la cella N + 1 esima, luscita in A2 e
quindi DN+1 , si riflette allindietro entrando in SN+1 , dopo essere moltiplicata per cN+1 e ritardata di z 1 . La nuova funzione di trasferimento
globale, come riportato nella figura appunto 1/AN +1 (z) . Tuttavia, la
rappresentazione non perfetta, in quanto luscita in DN+1 non deriva
dallingresso I con un funzione di trasferimento tutti poli, ma avrebbe
anche un ritardo. Peraltro, lunica funzione di trasferimento tutti poli e
senza ritardo quella tra SN+1 (ingresso) e S1 (uscita) e non DN+1 . Quindi, non si pretenda di potere ricostruire tutti gli elementi della struttura
riverberante bifilare dalla figura 7.13.

7.7.1

Aggiunta di tronchi di linea

Lequazione (7.22) importante perch ci permette di capire che il comportamento passa basso o passa alto del sistema condizionato dal coefficiente di riflessione pi vicino al disadattamento (per generare un suono
pi basso (uuuu) o pi acuto (iiiiiii), si forma una cavit pi grande o
pi piccola vicino ai denti):
|AN +1 (z)|2 = |AN (z)|2 (1 + c2N +1 ) + 2Re[cN+1 z N+1 AN (z)2 ]

(7.26)

Aggiungendo il coeciente di riflessione cN+1 , a meno del fattore di scala


1 + c2N +1 , lo spettro rimane immutato, con laggiunta del termine:
2Re[cN+1 z N +1 AN (z)2 ]

(7.27)

che, a causa del fattore Re(z N+1 ...) ha circa (N + 1)/2 ondulazioni tra la
frequenza 0 e la frequenza di Nyquist fN . Quindi, il primo coeciente di
riflessione caratterizza landamento globale con la frequenza; i successivi
coecienti provocano una sempre maggiore ondulazione dellandamento
dello spettro.
160

7.8 CALCOLO DEI COEFFICIENTI DI RIFLESSIONE

7.8

Calcolo dei coecienti di riflessione

Siamo ora in grado di determinare i coecienti di riflessione cn ; n =


1, ...N di una struttura riverberante disadattata da un lato in modo che
i poli del sistema siano le radici di un polinomio AN (z): basta applicare
la ricorsione di Levinson allincontrario, partendo da N per arrivare ad
1, p.e. supponendo c0 = 1. Si pu quindi verificare (come proposto da
Schur e Cohn) se un polinomio qualsiasi, il cui primo coeciente 1
come accade per il polinomio AN (z), sia a minima fase. Infatti, basta
verificare che tutti i coecienti di riflessione ci siano in modulo minori
di 1. Anzitutto si osservi (7.22) che:
cN = aN,N

(7.28)

e cio che lultimo coeciente del polinomio un coeciente di riflessione


e pertanto deve essere in modulo inferiore ad 1.
Per calcolare cN1 dovremo calcolare AN 1 (z). Per fare ci conveniente scrivere i coecienti dei polinomi AN (z) ed AN1 (z) in termini di
vettori colonna. La ricorsione di Levinson (7.22) diventa:

1
1
0

a1,N
a1,N1
aN1,N1

a2,N
a2,N1
aN2,N1
+ cN

=
(7.29)

...
...
...

aN 1,N aN1,N1
a1,N 1

aN,N
0
1
Per calcolare i coecienti di AN1 (z), ad esempio ah.N 1 dovremo risolvere il sistema:
ah,N = ah,N 1 + cN aNh,N 1
(7.30)
aNh,N = aNh,N1 + cN ah,N 1
da cui risulta :

(7.31)

ah,N cN aNh,N
(7.32)
1 c2N
Troveremo cos cN 1 = aN1,N1 e poi progressivamente tutti i coecienti di riflessione; se qualcuno di essi ha modulo maggiore di 1, il
ah,N 1 =

161

CAPITOLO 7 STRUTTURE CANONICHE E RIVERBERANTI

polinomio di partenza AN (z) non a minima fase (la verifica di Schur Cohn).

162

D4= C
z-1
D1

S1= T

D2

S2

z-1

D3

z-1

S3

N=3

c3
c2
c1

-c3
-c2
-c1

S4= E

7.8 CALCOLO DEI COEFFICIENTI DI RIFLESSIONE

Figura 7.12: Realizzazione di filtri tutti poli con e senza ritardo e di


sfasatori puri come cascata di celle elementari
163

CAPITOLO 7 STRUTTURE CANONICHE E RIVERBERANTI

Figura 7.13: Aggiunta di una cella ad una struttura riverberante: schema


a blocchi

164

Capitolo 8
Filtri polifase
8.1

Filtri per decimazione o interpolazione

E spesso utile decomporre una sequenza di N campioni in un numero di


sottosequenze M N mediante un banco di M filtri passa banda le cui
frequenze centrali siano opportunamente sfalsate e le cui bande passanti
(dette sottobande) non siano necessariamente eguali tra loro. Le applicazioni di questa decomposizione sono numerose; anzitutto possibile
trattare in parallelo le varie sottobande, utilizzando eventualmente
tecniche di filtraggio adattativo, come si vedr nel prossimo capitolo.
La decomposizione in sottobande (subband decomposition) permette
di avvicinarsi alla situazione in cui lo spettro del segnale uniforme in
ogni sottobanda. Dal banco di filtri si ottengono infatti M sottosequenze
che occupano bande diverse; se queste sottosequenze sono convertite
a frequenza zero si ottengono M sottosequenze filtrate passabasso
ed occupanti 1 : Mesimo della banda iniziale. Se poi queste sottosequenze sono massimamente decimate e cio sono sottocampionate con
rapporto 1 : M il loro spettro si estender fino alla nuova frequenza di
Nyquist, 1 : Mesimo della frequenza di Nyquist iniziale. Le sottosequenze massimamente decimate tendono quindi ad essere bianche, anche
se la sequenza di partenza colorata, poich nel segnale originale
ricoprivano un intervallo di frequenza ridotto, in cui lo spettro pu essere
considerato costante.
Vi allora il vantaggio, che sar particolarmente apprezzabile dopo
lo studio dei filtri adattativi, che i campioni successivi delle sequenze
165

CAPITOLO 8 FILTRI POLIFASE

filtrate passa banda, convertite a frequenza zero, e infine massimamente


decimate, sono poco correlati.
Tra le varie applicazioni della decomposizione in sottobande annoveriamo:
a) la realizzazione di filtri passabanda per lestrazione di canali dallo
spettro a radio frequenza;
b) i cosiddetti transmultiplexer, e cio sistemi che trasformano un
segnale multiplo a diversit di frequenza in un segnale multiplo a diversit
di tempo o di spazio, e viceversa;
c) la divisione in sottobande del segnale musicale, utile perch le
componenti di un segnale musicale che occupano frequenze superiori a
quella di una componente forte, sono percepite con minore accuratezza. Questo eetto, detto mascheramento, pu essere sfruttato per
opportune tecniche di codifica;
d) la realizzazione numerica di circuiti utili per esempio in tecniche
audio numeriche, per separare i segnali da avviare agli altoparlanti di
bassa e di alta frequenza (woofer - tweeter), ecc.
Un requisito molto importante nella decomposizione in sottobande
quello della perfetta ricomposizione e cio che un sistema di decomposizione messo in cascata con un sistema di ricomposizione dia il segnale
di partenza:
i) senza buchi o picchi nella funzione di trasferimento;
ii) con la completa cancellazione del disturbo di equivocazione, generato dal sottocampionamento delle sottobande.
Infatti, la massima decimazione (sottocampionamento 1 : M dei segnali delle M sottobande) necessaria se si vuole che il segnale complessivo
delle M sottosequenze e cio i segnali delle M sottobande abbia ancora
lo stesso numero di campioni della sequenza iniziale.
La trasformazione di Fourier discreta un caso estremo di questa
decomposizione, in cui abbiamo il massimo numero di sottosequenze
(M = N, tante quante i campioni) e la minima durata delle sequenze
decimate (1 campione complesso per sottosequenza decimata, che poi
lampiezza di una sinusoide complessa). La tecnica della trasformazione
di Fourier discreta permette infatti la decomposizione di una sequenza
di N campioni complessi in altrettante sinusoidi complesse campionate e
cio segnali il cui spettro discreto impulsivo e che, quando siano decimate, si riducono ad un solo campione. Allestremo opposto, c il caso
in cui M = 2; la sequenza viene quindi divisa in due sottosequenze di
166

8.2 DECIMAZIONE E INTERPOLAZIONE

banda met (luna passa basso e laltra passa alto) da sottocampionare


1 : 2 e che quindi hanno N/2 campioni ognuna e cos via. Una tecnica per
operare quella denominata filtri in quadratura a specchio (Quadrature
Mirror Filters).
E importante determinare strutture ecienti per questa decomposizione (i filtri polifase) ed inoltre studiare il problema della equivocazione che si former nella decimazione; infatti le bande passanti dei
filtri devono sovrapporsi parzialmente, per evitare buchi spettrali dovuti alla non idealit della funzione di trasferimento; quindi, sembrerebbe
inevitabile avere dellequivocazione, a meno di sovracampionare e quindi
non avere massima decimazione. Si riesce invece a cancellare totalmente tale equivocazione e pertanto a decomporre e ricomporre
perfettamente il segnale. Purtroppo, tale cancellazione avviene solo se i
vari canali non sono modificati prima di ricombinare il segnale in uscita.
Altrimenti, perch la cancellazione poi avvenga eettivamente, il banco
deve essere riprogettato in modo opportuno.
Contribuir allecienza computazionale delle strutture filtranti il
tenere conto del fatto che le uscite dei filtri passabanda vanno decimate;
infatti, non devono essere calcolati tutti i campioni delle uscite
ma solo quelli che non sarebbero eliminati. Ancora, costruendo il segnale
multiplo corrispondente alla ricombinazione delle varie bande e quindi
interpolando ogni sottosequenza ad un intervallo di campionamento
inferiore, bisogner evitare di fare calcoli inutili nella costruzione del segnale multiplo. E inutile interpolare indipendentemente ogni sequenza e
poi sommarle; si deve invece costruire il segnale combinato usando solo i
campioni decimati.

8.2

Decimazione e interpolazione

Supponiamo di avere una sequenza reale campionata ad intervallo T , ma


che occupa solo una frazione 1/M della banda 0 fc e cio una delle r
sottobande r = 0, ....M 1 che hanno frequenze centrali rfc /M. Per semplicit considereremo r = 0 e quindi un segnale che occupa la banda base
fc /2M. Per sottocampionare questa sequenza, suciente prenderne
1 campione ogni M (fig. 8.1). Volendo invece partire da una sequenza
in una qualsiasi delle r sottobande, essa deve prima essere filtrata con
un filtro passa banda fc /2M (consideriamo la r-esima sottobanda con
167

CAPITOLO 8 FILTRI POLIFASE

xn

h(n)

yn

Figura 8.1: Decimazione di sequenze


r = 0) e quindi sottocampionata; alternativamente, si puo convertire a
frequenza zero tale segnale moltiplicando per la sinusoide complessa

2
nr
exp j rfc nT = WM
M
e poi operare come per la sequenza in banda base. Se il filtro lungo
L campioni, ineciente fare altrettante moltiplicazioni per campione di
ingresso, come in una convoluzione qualsiasi; infatti inutile calcolare anche i campioni del segnale che saranno soppressi. In sostanza basta fare
non pi di ' L/M moltiplicazioni per campione di ingresso, calcolando cio solo i contributi ai campioni di uscita (fig. 8.2 e fig.8.3). Nello
h0

xn
T

yn

h1

h2

hN-1

Figura 8.2: Decimazione di sequenze


schema a blocchi di figura, si traspongono le operazioni di moltiplicazione
per i coecienti {hi } e di decimazione per il fattore M, risparmiando cos
168

8.2 DECIMAZIONE E INTERPOLAZIONE


h0

xn

yn

M
T
h1
M
T
h2
M

T
hN-1
M

Figura 8.3: Schema eciente per decimazione


molte operazioni. Lo schema equivalente per linterpolazione riportato
in fig. 8.6.Si osservi anche che per avere un buon filtro di banda 1/MT

xn

h(n)

yn

Figura 8.4: Schema per linterpolazione


sono necessari ben pi di M campioni e pertanto il numero di moltiplicazioni per campione di ingresso pu essere di diverse unit.Vediamo
come questo risultato modifica le figure 8.9, 8.10. Indichiamo con {hi }
la risposta allimpulso del filtro campionata ad intervallo T ; supponiamo sia quella di un filtro FIR di L = KM coecienti, con K intero, per
fare in modo che ogni campione delluscita sia combinazione lineare di un
egual numero di campioni di ingresso. Il segnale filtrato (campionamento
169

CAPITOLO 8 FILTRI POLIFASE

xn

h0

yn

T
h1
T
h2

T
hN-1

Figura 8.5: Schema di interpolazione


pieno) :
yi =

L1
X
l=0

hl xil H(z)X(z)

(8.1)

Per fissare le idee, poniamo M = 2; supponiamo che il filtro {hl } sia lungo
L = 4 campioni e rimuoviamo dalluscita i campioni di indice dispari. Al
campione uscente di indice 2i contribuiscono i campioni di ingresso:
y2i = x2i h0 + x2i1 h1 + x2i2 h2 + x2i3 h3

(8.2)

Si vede subito che i campioni di ingresso pari sono convoluti con un


sottofiltro realizzato con i campioni di indice pari del filtro passa basso
iniziale, mentre i campioni di ingresso di indice dispari sono convoluti con
il sottofiltro realizzato con i campioni di indice dispari. In generale,
sottocampionando 1 : M, suddivideremo lingresso in M sottosequenze
ognuna delle quali convoluta con un sottofiltro diverso lungo K = L/M
campioni realizzato sottocampionando 1 : M il filtro passa basso iniziale,
con M pettini sfalsati tra loro di un campione. La situazione descritta
170

8.2 DECIMAZIONE E INTERPOLAZIONE

Figura 8.6: Interpolatore eciente: a sinistra presentata la soluzione


ineciente, dove ora, dierentemente dalla figura 8.5, le moltiplicazioni
precedono i ritardi e quindi sono aancate al blocco di inserzione di
zeri. A destra la soluzione eciente con la trasposizione (detta identit
nobile) tra blocco di interpolazione e moltiplicatori. La figura identica
alla figura 8.3, a parte il verso.

171

CAPITOLO 8 FILTRI POLIFASE


yn

xn

E0(z)

E1(z)

E2(z)

EM-1(z)

Figura 8.7: Schema eciente per linterpolazione con uso di filtri polifase. In sostanza, il segnale interpolato non altro che la sequenza
originaria del segnale, miscelata alla stessa sequenza, ma ritardata di
1/M, 2/M..M 1/M passi di campionamento.
dalla formula che segue:
H(z) =

L1
X

hl z

m=0

Indicando con:

z m

K1
X

hkM+m (z M )

(8.3)

K1
X

M1
X

z m Em (z M )

m=0

k=0

Em (z) =

hkM+m z (kM+m) =

k=0 m=0

l=0

M1
X

K1
X M1
X

ek,m z k ;

ek,m = hkM+m

(8.4)

k=0

In altre parole, con la risposta del filtro {hl }, che come si ricorder lunga
KM campioni, si formano M sottosequenze di K campioni, indicati come
{ek,m }, chiamati filtri polifase. Queste M sottosequenze sono ottenute
dai campioni del filtro passa basso, decimati 1 : M, con le M diverse
172

8.2 DECIMAZIONE E INTERPOLAZIONE

posizioni del pettine di sottocampionamento. In sostanza, se il filtro


fosse un sinc troncato passa basso di banda fc /2M si avrebbe:
hn =

sin n
M
n
M

KM
KM
n
2
2

(8.5)

Questo sinc troncato ha K lobi lunghi M campioni, ed i filtri sottocampionati prelevano un campione per ogni lobo. Qualcuno dei coecienti
potr quindi essere nullo. La struttura del filtro indicata in fig. 8.8
h0

xn

3
3T
h3
E0

T
3T
h6

h1
3
3T
h4
E1

T
3T
h7

h2

3
3T

h5
E2

3T
h8

Figura 8.8: Filtro polifase per decimazione; il numero dei blocchi di


memoria pari a L
173

CAPITOLO 8 FILTRI POLIFASE

(decimazione 1 : 3, filtro di lunghezza 9 campioni) e pu essere vista


come un commutatore a spazzola con M posizioni diverse, che alimenta
con ritardo progressivo gli M sottofiltri (a intervallo di campionamento MT ) indicati come Em (z). Luscita filtrata e decimata la somma
delle uscite degli M sottofiltri. Una struttura equivalente che minimizza
il numero dei blocchi di memoria presentata in fig. 8.9 (decimazione
1 : 2, filtro di lunghezza 6 campioni). In particolare si osserva che servono
M 1 blocchi di ritardo unitario (intervallo di campionamento del segnale da decimare) per realizzare il commutatore a spazzola di ingresso
e poi ancora K 1 ritardi di M campioni (se ci riferisce allintervallo
di tempo da decimare, ma in realt unitari se intesi come lintervallo di
campionamento del segnale decimato). Similmente, nella fig. 8.10 viene
riportata la struttura per il filtro per eettuare uninterpolazione 1 : 3.

174

8.2 DECIMAZIONE E INTERPOLAZIONE

xn

h0

yn

h1

2T

h2
h3

2T

h4
h5

Figura 8.9: Filtro polifase per decimazione 1:2 (filtro lungo 6 campioni);
ritardando i campioni dopo la moltiplicazione, il numero dei blocchi di
memoria si riduce da M 1 + M(K 1) = MK 1 come nel caso della
figura precedente, a M 1 + K 1.

175

CAPITOLO 8 FILTRI POLIFASE

h0

xn

yn
3

h3
h6
T
3T

h1

h4
3
h7
3T
T

h2

h5
3
h8

Figura 8.10: Interpolatore polifase a memoria minima; il segnale interpolando ha ritardi fino a K 1 = 2 campioni; il segnale interpolato ha
ritardi fino a M 1 = 2 campioni (il commutatore a spazzola).

176

8.2 DECIMAZIONE E INTERPOLAZIONE

8.2.1

I filtri polifase

Vediamo ora il perch del nome polifase, assegnato a questi filtri dallinventore, M. Bellanger. Se il filtro originale H(z) un filtro passabasso
di banda fN /M, il sottocampionamento 1 : M provoca una replicazione
della funzione di trasferimento fino ad ottenere in pratica, con le sovrapposizioni delle repliche, un ricoprimento con ampiezza pressoch uniforme
di tutto lintervallo di frequenze fino alla frequenza di Nyquist fN (fig.
8.11); quindi, i filtri sottocampionati Em (z M ) sono filtri passatutto, e
Filtro passabasso campionato a frequenza fc = 1/T

B = fN/3

fN

fc=1/T

Filtro sottocampionato 1:3 rispetto al filtro precedente


( fc =1/3T )

fN/3

fN

fc

fc = 1/(3T)

Figura 8.11: Sottocampionamento di un segnale


pertanto sfasatori puri. Ma anche i sottofiltri Em (z) hanno spettro circa
costante e sono quindi filtri passatutto, nella banda 0 2/MT . Si osservi che in questa ultima espressione di trasformata z compare z e non
z M ; le sequenze Em (z) corrispondono ai sottofiltri dopo la decimazione.
Se il filtro H(z) approssimativamente un filtro passa basso ideale,
leetto di uno dei filtri sottocampionati z m Em (z M ) , a parte il filtraggio passa basso seguito dalla decimazione, un ritardo della sequenza
da decimare di m campioni al ritmo originale sulla sequenza decimanda;
177

CAPITOLO 8 FILTRI POLIFASE

peraltro, a causa della decimazione, il filtro lascia anche passare le componenti spettrali al di fuori della banda 02/MT . Lo stesso sottofiltro,
dopo leliminazione dei campioni nulli, e quindi dopo il sottocampionamento, ha Em (z) come trasformata z e fa ancora la stessa operazione, e
quindi si comporta ancora come un ritardo temporale che ora, al ritmo
ridotto 1 : M, di una frazione di campioni m/M 1 ; in particolare,
si deduce che se lingresso e costante, il risultato del filtraggio con uno
qualsiasi dei filtri Em (z), ancora costante (per una costante, un ritardo
irrilevante).
Allo stesso risultato si pu arrivare in modo intuitivo considerando
il caso dellinterpolazione M : 1 di una sequenza. Infatti, la sequenza
interpolata pu essere ottenuta generando, a partire dalla sequenza di
partenza a bassa frequenza di campionamento fc = 1/T, M 1 sequenze
ad intervallo T, ritardate progressivamente di kT / (M 1) , con 0 <
k < M. La sequenza interpolata poi ottenuta dallinterallacciamento
delle M sequenze con i vari ritardi (lazione del commutatore a spazzola).
I filtri polifase sono pertanto dei ritardatori puri di kT / (M 1) , come
gi osservato.

8.3

Cascata di interpolazione e decimazione

Si osservi che si possono mettere in cascata un interpolatore ed un decimatore, senza dovere replicare il filtraggio. Per evitare equivocazione,
obbligatorio fare prima linterpolazione, p.e. 1 : L e solo dopo decimare luscita p.e. M : 1 come desiderato. In questo modo si possono
realizzare a basso costo ricampionamenti per un fattore razionale L/M
prima interpolando di un fattore L e poi decimando di un fattore M.
Il costo in termini di moltiplicazioni per campione sarebbe, usando un
filtro di durata KL, di KL moltiplicazioni per campione, alla frequenza
iniziale. Poich per serve solo 1 ogni M campioni generati, risparmiando il calcolo dei campioni da eliminare, le moltiplicazioni per campione
di ingresso sono pari a KL/M. Se quindi si vuole aggiustare con precisione la frequenza di campionamento ad un valore desiderato e pertanto
L, M sono numeri grandi e prossimi, il costo circa K moltiplicazioni
per campione.
Peraltro, se si usasse una tabella in cui sono trascritti i valori della funzione sinc con un piccolissimo intervallo di campionamento, sarebbe pos178

8.4 BANCHI DI FILTRI

sibile calcolare direttamente i campioni di uscita ad un istante qualsiasi,


appunto al costo di K moltiplicazioni per campione.

8.4
8.4.1

Banchi di filtri
La matrice di modulazione

Si pu capire ora come avviene la formazione di un intero banco di M


filtri; utilizzeremo la sovrapposizione degli eetti supponendo di avere un
segnale il cui spettro diverso da zero solo nella sottobanda r esima;
se esso viene filtrato con i vari filtri z m Em (z M ); m = 0, . . . , M 1,
luscita totale deve essere nulla, visto che il filtro complessivo H(z) passa
basso. Infatti accade proprio questo, e ce ne rendiamo conto nel seguente
modo: il segnale alla frequenza centrale dell r esima sottobanda la
sinusoide exp(j 2
nr); le m sottosequenze (gli m segnali provenienti dal
M
sottocampionamento 1 : M) sono delle costanti pari a exp(j 2
mr) =
M
mr
WM , utilizzando la notazione usata per lo studio della Trasformazione
Discreta di Fourier; nel dominio sottocampionato, luscita totale sar la
somma delle uscite dei sottofiltri Em (z) ai cui ingressi sono applicate le
mr
costanti WM
e cio:
U=

M1
X
m=0

mr
WM
Em (z = 1) = 0 se r 6= 0

Se per moltiplicassimo i coecienti dei vari sottofiltri Em (z) per il fatmr


mr
tore WM
compenseremmo le rotazioni WM
e la somma degli M sottofiltri ci darebbe una costante; in sostanza otterremmo la resima sottobanda, convertita a frequenza zero e decimata. Nasce allora la struttura
di fig. (8.12) combinazione di un filtro polifase e di una DFT di M
campioni, che viene realizzata ad ogni campione decimato. Le M uscite
della FFT sono le M sottobande, gi convertite a frequenza 0 e decimate
massimamente.
Un altro modo di vedere la stessa cosa il seguente: possiamo facilmente ottenere la conversione a frequenza zero della r-esima sottobanda;
basta moltiplicare il segnale xn per una sinusoide campionata posta alla
nr
frequenza centrale della sottobanda e cio per il fattore WM
ma anmr
dove lindice
che, tenendo conto delle periodicit, per il fattore WM
179

CAPITOLO 8 FILTRI POLIFASE

xn

3
M

Banda 0

E0(zM)

T
3
M

Banda 1

E1(zM)

3
M

E2(zM)

3
M

EM-1(zM)

DFT

T
Banda 2

DFT

T
Banda M

Figura 8.12: Banco di M filtri come combinazione di un filtro polifase e


FFT
Mr

m varia tra 0 a M 1 e poi ancora tra 0 a M 1 ecc. WM


= 1 ; per
ottenere tutte le sottobande, pertanto, si devono moltiplicare i campioni
della Mpla xnm ; m = 0, ...., M 1, per la matrice di Fourier che funge
da Matrice di Modulazione. C da osservare che con questo modo
di vedere, la conversione a frequenza zero dovrebbe essere fatta prima
del filtraggio; in realt, le due operazioni di conversione e filtraggio possono essere trasposte poich la sottosequenza mesima che auisce allo
stesso filtro polifase z m Em (z M ) per contribuire alla sottobanda r-esima
mr
deve venire moltiplicata sempre per lo stesso numero complesso WM
;
in altre parole, la posizione del commutatore a spazzola che alimenta il
filtro polifase m-esimo corrisponde sempre allo stesso fattore complesso
mr
WM
. La moltiplicazione pu quindi essere eseguita dopo il filtraggio e
pertanto si arriva di nuovo allo schema di fig. (8.12).
Procedendo analiticamente si pu partire dalla trasformata z delle M
sequenze periodiche di periodo M, CM, (n) costituite da un campione
unitario posizionato al campione , e da M 1 zeri. Esse possono essere
viste come antitrasformate di Fourier di un ritardo di campioni, per
180

8.4 BANCHI DI FILTRI

sequenze periodiche su M campioni, e cio:


M1
1 X m nm
CM, (n) =
W
WM
M m=0 M

La moltiplicazione di una sequenza x(n) per la sequenza CM, (n) (e quindi la decimazione di una sequenza ritardata di campioni) porta alla
seguente trasformata z:
x(n)CM, (n)

x(n)CM, (n)z

M1
1 X X r nr
=
W WM x(n)z n =
M n r=0 M

M1
M1
1 X r
1 X r X
r n
r
WM
x(n)(zWM
) =
WM X(zWM
)
M r=0
M
n
r=0

e quindi:
- la trasformata z di una sequenza decimata 1 : M la somma di M
repliche della trasformata z della sequenza originale;
- la r - esima replica della trasformata z ruotata nel piano z di un
r
angolo WM
e sfasata di un angolo 2r/M, dove il ritardo della
sequenza decimata. Un risultato corrispondente era stato ottenuto nel
capitolo 1, equazione 1.6. Adesso possiamo arrivare alla decomposizione
polifase di un banco di filtri, utilizzando lequazione dei filtri polifase che
riscriviamo per comodit:
H(z) =

L1
X

hn z n =

n=0

M1
X
m=0

K1
X M1
X

(8.6)

k=0 m=0

K1
X

M k

hkM+m (z )

K1
X

M1
X

z m Em (z M )

m=0

k=0

Em (z) =

hkM+m z (kM+m) =

ek,m z k ;

ek,m = hkM+m

(8.7)

k=0

Trasformare il filtro H (z) da passa basso in passa r esima sottobanda


coincide con il ruotare la trasformata z del filtro di un angolo 2r/M;
181

CAPITOLO 8 FILTRI POLIFASE


r
ruotiamo quindi H(z) di un angolo WM
nel piano z ; questo equivale
r
a sostituire z con zWM
, oppure a moltiplicare la risposta allimpulso
nr
del filtro per la sequenza WM
(una sinusoide campionata che attua la
conversione di frequenza). Il risultato un filtro passa banda che lascia
passare la sottobanda r - esima

r
Hr (z) = H(zWM
)=

M1
X

mr
rM
z m WM
Em (z M WM
)=

m=0

M1
X
m=0

r m
Em (z M )
zWM

rM
= 1 e cio che la sinusoide
dove abbiamo utilizzato il fatto che WM
modulante sottocampionata 1 : M diventa una costante complessa. In
conclusione, il filtro che passa la banda r - esima si ottiene combinando le
mr
uscite dei filtri polifase m = 1, .., M con i coecienti WM
. Per ottenere
tutte le bande assieme si utilizza la moltiplicazione per la matrice della
trasformazione di Fourier discreta in base M.
La realizzazione eciente della moltiplicazione per la matrice di Fourier (e pertanto la trasformazione di Fourier) attraverso la FFT, permette
poi di realizzare il banco di filtri in modo eciente con K moltiplicazioni
per campione di ingresso a cui vanno sommate 12 log2 M moltiplicazioni
per campione di uscita; questi, contando tutte le sottobande decimate,
sono tanti quanti i campioni di ingresso. In totale pertanto vanno eettuate K + 12 log2 M moltiplicazioni per campione della sequenza (decomposta o no in sottobande), dove M il numero delle sottobande. Per la
ricomposizione, vi una struttura perfettamente simmetrica (fig. 8.13).

8.5

La ricostruzione perfetta

Fino a questo momento, non abbiamo discusso della realizzazione del


filtro passabasso H(z), se non per dire che deve essere lungo KM campioni. Vogliamo ora definirne le regole di progetto. I requisiti sono di due
tipi diversi: da un lato si desidera un ottimo comportamento filtrante e
fase lineare, cosicch la decomposizione in sottobande sia accurata e non
vi siano sovrapposizioni o buchi spettrali; ancora per si desidera che le
componenti degli spettri di ingresso, equivocate da una sottobanda allaltra per la massima decimazione, siano poi ricostruite correttamente.
182

8.5 LA RICOSTRUZIONE PERFETTA

Figura 8.13: Interpolatore Polifase

183

CAPITOLO 8 FILTRI POLIFASE

In altre parole, pur con una buona separazione delle bande, si desidera
una ricombinazione corretta della sequenza di uscita e cio:
nessuna equivocazione pur con decimazione 1 : M;
guadagno globale costante;
fase lineare.
E ovvio che questi requisiti (la cosiddetta ricostruzione perfetta) sono
assai pesanti per il filtro ma possibile dimostrare che sono ottenibili,
sia pure a costi crescenti via via che si approssima la situazione ideale.
Si vedr che la ricostruzione perfetta corrisponde alla compensazione del
rumore di equivocazione dovuto alla decimazione 1 : M e lasciato passare
dal filtraggio, necessariamente non ideale, che viene eettuato prima della decimazione. Si osservi per che, non appena il contenuto p.e. della
banda resima viene modificato o magari semplicemente amplificato in
modo dierente da quello delle bande adiacenti, proprio per motivare in
qualche modo la decisione di eettuare la decomposizione, tale compensazione scompare e quindi la ricostruzione non pi perfetta. In altre
parole, non appena la decomposizione viene utilizzata per fare qualcosa
di utile, la propriet di ricostruzione perfetta scompare. Bisogner addirittura riprogettare il sistema multibanda in queste nuove condizioni
(rifare tutto daccapo). Se ne evince che piuttosto dicile (anche se
non impossibile) costruire filtri adattativi multibanda che garantiscono
la propriet della ricostruzione perfetta, sia pure in modo solo asintotico.
Su questo punto si ritorner nelle sezioni finali del capitolo.

8.5.1

Banchi di due filtri

Vediamo anzitutto come sia possibile realizzare un banco di due filtri,


HL () e HH () rispettivamente passa basso e passa alto che permetta
la ricostruzione corretta anche con la massima decimazione. Questi due
filtri sono chiamati filtri a specchio in quadratura (Quadrature Mirror
Filter QMF) per i motivi che vedremo. Lo schema a blocchi del sistema
presentato in figura8.14.Indichiamo rispettivamente con X(), XL (),
XH () le trasformate di Fourier del segnale e delle sue due componenti
passa basso e passa alto.
XL () = X()HL ();

XH () = X()HH ()
184

(8.8)

8.5 LA RICOSTRUZIONE PERFETTA

HL()

XL

R1

FL()

X()

Y()

HH()

XH

R2

FH()

Figura 8.14: Schema a blocchi di un filtro a specchio in quadratura


I segnali dopo decimazione ed interpolazione corrispondono alla replica
in frequenza di XL (), XH () a distanza 0 = 2c = /T :
R1 () = XL () + XL ( 0 )

(8.9)

R2 () = XH () + XH ( 0 )

(8.10)

X()
= R1 ()FL () + R2 ()FH () =

(8.11)

La replica in frequenza infatti dovuta al sottocampionamento 1 : 2 ed


allinserzione successiva di zeri. Il risultato della ricombinazione con due
filtri FL (), FH () :

= X()[HL ()FL () + HH ()FH ()]+


+X( 0 )[FL ()HL ( 0 ) + FH ()HH ( 0 )] =
X()T () + X( 0 )A()

Vorremmo pertanto che:

T () = HL ()FL () + HH ()FH () = ejkT

(8.12)

per avere guadagno costante e fase lineare; inoltre vorremmo:


A() = FL ()HL ( 0 ) + FH ()HH ( 0 ) = 0

(8.13)

per non avere equivocazione. In teoria, ad ogni frequenza, abbiamo solo


due equazioni per determinare quattro incognite (i valori delle funzioni
di trasferimento dei quattro filtri) e pertanto abbiamo ampie possibilit
di soluzione; tuttavia, si cerca una soluzione pratica.
185

CAPITOLO 8 FILTRI POLIFASE

8.5.2

I filtri in quadratura a specchio (QMF)

Imponiamo ora dei requisiti sui filtri HL (), HH (); anzitutto imponiamo che siano FIR, reali, lunghi N campioni e simmetrici e cio a fase
zero a parte un ritardo di (N 1)/2 campioni. Per ogni zero della funzione di trasferimento, vi sar sia lo zero coniugato perch la risposta
allimpulso reale, sia lo zero reciproco, perch essa simmetrica. Imponendo quindi la simmetria coniugata rispetto allasse reale del piano
z si ha:

HL (z) = HL (z );
HH (z) = HH
(z )
(8.14)
Imponiamo poi che i due filtri passa basso e passa alto siano ottenibili
luno dallaltro con una semplice traslazione lungo lasse delle frequenze
e cio:
(8.15)
HH () = HL ( 0 ); hH,n = (1)n hL,n
In termini di trasformata z si pu scrivere che:
HH (z) = HL (zej0 T ) = HL (z)

(8.16)

e quindi la trasformata z di HH (z) la riflessione speculare della trasformata z di HL (z) rispetto allasse immaginario del piano z (in fig. 8.14
8.15) sono riportate la caratteristica di ampiezza e gli zeri di un filtro
simmetrico di 32 campioni ottimizzato come indicato in [Chen, C. K.,
Signal Processing, Dicembre 1995, pp. 275]). Il nome di filtri a specchio
in quadratura (QMF) nasce appunto dalla doppia simmetria rispetto alle
rette del piano z: Re(z) = 0; Im(z) = 0. Per risparmiare sui coecienti
del filtro potremmo ancora imporre che ogni filtro sia specularmente
simmetrico rispetto alla frequenza fc /4;
HL () + HL ( 0 ) = HL (0); HH () + HH ( 0 ) = HH (0); (8.17)
Infatti, questo implica che la funzione di trasferimento sommata con la
sua replica spettrale una costante. Avevamo gi visto questa condizione
discutendo della ricostruibilit di costanti sovrapponendo le risposte allimpulso degli interpolatori di vario ordine; imporre che la somma della
trasformata e della sue n repliche spettrali sia costante implica che nel dominio coniugato (nei tempi in questo caso) lantitrasformata si annulli in
corrispondenza del pettine di campionamento relativo alla replicazione,
186

8.5 LA RICOSTRUZIONE PERFETTA

Figura 8.15: Filtri in quadratura a specchio


e quindi un campione ogni n. Se n = 2, circa met dei campioni della risposta allimpulso (i campioni di posto pari tranne quello nellorigine) sono nulli con vantaggi di costo notevoli. I filtri con questa simmetria sono anche chiamati filtri di Nyquist e sono spesso utilizzati per la
trasmissione numerica. Essi garantiscono infatti limitata o nulla interferenza intersimbolica, quando i simboli sono trasmessi in corrispondenza
dei regolari passaggi per lo zero della risposta allimpulso.

8.5.3

Equivocazione e ricostruzione perfetta

Vediamo ora le conseguenze delle scelte fatte nel paragrafo precedente


per quanto riguarda la perfetta ricostruzione; si decida inoltre che anche
per i filtri FL () , FH () valgano le stesse condizioni che per i filtri
HL (); HH (), con la dierenza che ora
FH () = FL ( 0 )

(8.18)

Scegliendo infine FL () = HL () si ha:


T () = HL2 () HL2 ( 0 ) = ejkT
A() = HL ( 0 )FL () + HH ( 0 )FH () =
187

(8.19)

CAPITOLO 8 FILTRI POLIFASE

Figura 8.16: Simmetria delle funzioni di trasferimento (lo specchio).


= HL ()HL ( 0 ) HL ( 0 )HL () = 0
Si vede cio che, sistematicamente, la ricostruzione non contiene rumore
di equivocazione. Bisognerebbe ancora imporre che la funzione di trasferimento T () sia unitaria, perch la ricostruzione sia perfetta; si dimostra
per che una soluzione esatta che assicuri valore perfettamente unitario
per |T ()|, porta a filtri HL () poco selettivi; il lettore, per esempio,
consideri il caso:
HL (z) = 0.5(1 + z 1 ) HH (z) = .5(1 z 1 ); T (z) = z 1 ; A(z) = 0
Nelle zone in cui HL () ' 1 HH () ' 0; |T (z)| quindi circa unitario
come desiderato; si tratta solo di ottenere un buon comportamento nella
banda di transizione e questo possibile con ottima approssimazione. Si
osserva poi che, poich HL () FIR, lungo N campioni, a fase lineare
HL () = T (N 1)/2 necessario che sia N pari per evitare che
T () sia sistematicamente nulla alla frequenza fN /2. Infatti, usando la
(8.14)e la (8.15):
T () = [|HL ()|2 (1)N 1 |HL ( 0 )|2 ]ejT (N1)

(8.20)

Si deve imporre quindi che N sia pari e poi si deve anche imporre che:
[|HL ()|2 + |HL ( 0 )|2 ] = |T ()| ' 1
188

(8.21)

8.5 LA RICOSTRUZIONE PERFETTA

Figura 8.17:
equivocate)

Ricostruzione perfetta (sottrazione delle componenti

Questultima condizione, insieme al requisito di una buona attenuazione


in banda oscura, che implica un buon comportamento in banda passante per le relazioni tra comportamento in banda passante e in banda oscura stabilite in precedenza, si realizza appunto con unopportuna
ottimizzazione dei coecienti dei filtri.
Si pu ora capire come si ottiene leliminazione del rumore di equiv
ocazione (alias) (fig. 8.17) nella ricostruzione di X(),
utilizzando i due
filtri FL (); FH (); gli spettri dei due segnali decimati e riportati al ritmo di campionamento iniziale con laggiunta di zeri, R1 (), R2 () sono
sempre visibili in fig. 8.17. Nella ricombinazione, ad esempio leetto
del filtro FH () su R2 () sar quello di lasciare passare ulteriore equivocazione che cancella lequivocazione lasciata in precedenza passare dal
filtro HL (). Infatti, a causa della rotazione di fase dovuta al ritardo, se
si somma luscita del canale passa alto con quella del canale passa basso,
si sottrae allo stesso tempo il segnale equivocato che ha viaggiato attraverso il filtro ad unaltra frequenza e quindi con un diverso sfasamento
189

CAPITOLO 8 FILTRI POLIFASE

dovuto al ritardo. Quindi, i rumori di equivocazione lasciati passare dal


filtro di ricostruzione, per le simmetrie, sono cancellati dai rumori di
equivocazione dellaltro canale lasciati passare dai filtri di decimazione,
ed alla fine risulta A() = 0. Si comprende meglio quanto osservato in
una sezione precedente, e cio che se poi i due canali fossero amplificati in
modo diseguale, tanto per motivare in qualche modo la decomposizione,
tale compensazione non avverrebbe pi.
La realizzazione polifase del filtro HL ()
Il filtro HL () ed anche il corrispondente filtro passa alto HH () possono
venire realizzati con la tecnica polifase. Avremo allora:
HL (z) = H0 (z 2 ) + z 1 H1 (z 2 )

(8.22)

dove Hi (z); i = 0, 1 sono i sottofiltri ottenuti dal sottocampionamento di


HL (z). Si osservi che, nel caso si faccia la scelta di un progetto di filtro
simmetrico rispetto a fc /4, a causa dei numerosi passaggi per lo zero
della forma donda dovuti alla simmetria appunto rispetto alla frequenza
fc /4, il filtro H1 (z 2 ) viene ad avere solo un campione diverso da zero.
Di nuovo, si trovano i campioni del filtro H0 (z 2 ) con una procedura di
ottimizzazione, imponendo un buon comportamento filtrante. Ancora,
lequivocazione viene cancellata sistematicamente per ladozione della
(8.19).

8.6

Banchi di M filtri

Abbiamo visto, nel caso di un banco di due filtri, che non solo possibile
ottenere sistematicamente la rimozione del rumore di equivocazione ma
anche si pu avere una funzione di trasferimento unitaria. Per estendere
queste propriet a banchi di pi filtri si pu operare in vario modo:
- formazione di alberi binari di filtri, ripetendo loperazione di divisione in due bande di ogni banda;
- tecniche approssimate (filtri a quasi perfetta ricostruzione);
- tecniche esatte di perfetta ricostruzione.
la prima soluzione di facile ottenimento; la sequenza iniziale prima divisa in due sottosequenze ma poi viene ulteriormente frazionata in
190

8.7 LE TRASFORMATE LAPPED: LA MDCT

quattro e cos via fino a raggiungere il numero desiderato di filtri, eventualmente anche con larghezze di banda diverse tra filtro e filtro. Questa
tecnica ha il difetto di mettere in cascata numerosi filtri FIR (quelli di
tutte le decomposizioni e ricomposizioni) e quindi pu portare a ritardi
globali inaccettabili; ovviamente il ritardo temporale maggiore quello
dovuto ai filtri di banda pi stretta, relativi alla massima decimazione
in assoluto; ma poi si deve tenere conto anche degli altri filtri in cascata
con risultati spesso inaccettabili.
Piuttosto, si utilizzano tecniche per sintetizzare banchi di filtri in cui
la rimozione del rumore di equivocazione solo approssimata; si suppone
cio che solo il rumore prodotto dalla decimazione delle bande adiacenti
sia significativo, mentre i segnali che transitano per filtri pi lontani in
frequenza non danno contributo di rumore. In questo modo il progetto
dei filtri si semplifica.
Infine, la tecnica di perfetta ricostruzione si pu estendere a banchi di
M filtri. Tuttavia, i filtri cos sintetizzati sono pi complessi, a parit di
selettivit. Se poi si tiene conto del fatto che a causa della quantizzazione
di coecienti e segnali si ha sempre del rumore dovuto al filtraggio, si
comprende come finora siano utilizzati preferenzialmente i filtri a quasi
perfetta ricostruzione. Si osservi poi che il meccanismo di ricostruzione
perfetta deve essere modificato in modo da tenere conto del fatto che il
rumore di equivocazione da cancellare cade in finestre adiacenti e quindi
non si pu utilizzare immediatamente la DFT.

8.7

Le trasformate lapped: la MDCT

La stessa metodologia che porta alla costruzione di banchi di filtri non


ideali, ma parzialmente sovrapposti in frequenza, pur senza creare equivocazione delle frequenze malgrado il campionamento, pu essere applicata dualmente nel dominio delle frequenze, scambiando gli assi di tempo
e frequenza. Nel caso del banco di filtri, si filtra il segnale p.e. passa
banda con filtri non ideali. Pertanto, si finestra (in frequenza) con delle
finestre che sono parzialmente sovrapposte (nelle frequenze: figure 8.16,
8.17). Quando si sottocampiona il segnale proveniente da una sottobanda
nasce del rumore di equivocazione dovuto appunto al fatto che le finestrature in frequenza non sono ideali, ma sono parzialmente sovrapposte.
I contenuti delle due bande di frequenza p.e. quelli al di qua ed al di l
191

CAPITOLO 8 FILTRI POLIFASE

dellascissa 0.25 nella figura 8.16 si ripiegano dopo il sottocampionamento e si sovrappongono. Abbiamo visto che, nella fase di ricostruzione del
segnale, questo rumore viene cancellato da un rumore di equivocazione
identico e di segno opposto.
La stessa cosa si pu fare scambiando gli assi di frequenza e di tempo.
Lequivocazione diventa ora nei tempi piuttosto che nelle frequenze. In
sostanza, si consideri un segnale lungo lasse dei tempi. Lo si segmenti con delle finestre temporali non rettangolari, e quindi parzialmente
sovrapposte (si veda p.e. la tecnica WOSA nel capitolo del periodogramma). In questo modo i lobi laterali delle trasformate delle finestre saranno
molto attenuati. Si facciano ora le trasformate p.e. simili alla Discrete
Fourier del contenuto di ognuna delle finestre temporali. La periodicit
in tempi creata dal campionamento in frequenza fa nascere dellequivocazione temporale (si ricordi lasse dei tempi circolare della DFT: il
segnale nei tempi si morde la coda). Questa equivocazione temporale
verr appunto rimossa nella ricostruzione da un rumore di equivocazione
eguale ed opposto. Si ottengono finestrature parzialmente sovrapposte
nei tempi (e quindi morbide) senza aggiungere i costi della duplicazione
del trattamento dei dati. Le tecniche di questo tipo sono note come
lapped transforms. Una di queste tecniche nota come Modified Discrete Cosine Transform (MDCT). In essa, si usa una particolare versione
della DFT tutta reale (la Discrete Cosine Transform), in cui si combinano le frequenze positive e quelle negative e il segnale invece di mordersi
la coda a causa del campionamento in frequenza, si ripiega dalla stessa
parte (Fig. 8.18, da Princen et al., Analysis/Synthesis Filter Bank Design Based on Time Domain Aliasing Cancellation, IEEE Trans. ASSP,
34, 5, Oct, 1986; Tran et al., Lapped Transform via Time-Domain Preand Post-Filtering, IEEE Trans. ASSP, 51, 6, June 2003). In particolare,
si usano blocchi lunghi 2N campioni, rastremati dolcemente a zero dalle
due parti, e che si susseguono ad intervalli di N campioni, e pertanto
sono parzialmente sovrapposti (vedi fig. 8.18). Quando se ne calcola lo
spettro, per farne la codifica eciente utilizzando leetto del mascheramento, si utilizzano trasformate solo su N campioni. Quindi, si genera
una sistematica equivocazione temporale, che per viene cancellata dalla
combinazione con i blocchi successivi. Questa tecnica usata nella codifica AAC, Advanced Audio Coding adottata nella Sony Play Station e
in Itunes.

192

8.7 LE TRASFORMATE LAPPED: LA MDCT

Figura 8.18:

193

Capitolo 9
Quantizzazione dei segnali
9.1

La quantizzazione dei segnali

Il risultato di una moltiplicazione tra due numeri rispettivamente di Bc


(il coeciente del filtro) e Bs (il segnale) cifre binarie, ha un numero
di cifre binarie pari a Bc + Bs ; ragionevole ricondurre a Bs il numero
di cifre binarie che rappresenta un segnale, o dopo il filtraggio, o, come
accade ben pi spesso, dopo ogni moltiplicazione di un segnale con un coeciente. Ci implica un arrotondamento od un troncamento della cifra
binaria, in funzione dellaritmetica usata; con arrotondamento, indichiamo loperazione di approssimazione con il numero quantizzato (maggiore
o minore) pi vicino al numero dato. Invece, si ha troncamento quando
il modulo del numero approssimante, quantizzato, sempre inferiore al
modulo del numero approssimato. Ancora, pu a volte essere necessario
saturare luscita per evitare trabocchi, se si supera il numero massimo
che pu essere rappresentato con laritmetica binaria utilizzata.
In questo paragrafo vogliamo identificare le implicazioni di questa
operazione di quantizzazione: sono da considerare due casi di natura
molto diversa tra loro:
a) il rumore dovuto alla quantizzazione piccolo rispetto al segnale e
pu essere modellato come un disturbo indipendente dal segnale stesso,
anche se questa indipendenza di per s falsa, visto che ad eguale segnale
corrisponder sempre eguale rumore di quantizzazione.
b) il rumore non pu essere considerato indipendente dal segnale.
Questo accade se il segnale periodico o costante, e quindi il rumore di
195

CAPITOLO 9 QUANTIZZAZIONE DEI SEGNALI

quantizzazione ha anchesso delle periodicit. Ancora, pu accadere che


il rumore di quantizzazione, circolando attraverso il filtro numerico, viene
amplificato, crea altro rumore ecc. fino alla formazione di un disturbo di
ampiezza anche grande che pu essere assai dannoso per il funzionamento
del filtro stesso (ciclo limite).

9.1.1

Rumore di quantizzazione dei segnali

Se il numero di cifre binarie con cui si rappresenta un segnale viene riportato a Bs dopo ogni moltiplicazione, si addiziona al segnale un disturbo
che, se il segnale casuale e con una dinamica grande rispetto al rumore,
sostanzialmente indipendente dal segnale stesso.
Se il segnale ha una variazione di ampiezza tra picco positivo e picco
negativo pari a Vpp , ed il rumore di quantizzazione nasce da un arrotondamento del segnale, esso ha una distribuzione di probabilit pressoch
uniforme; lescursione di ampiezza del rumore di quantizzazione, tra picco e picco, a = Vpp /2Bs ; il valore medio nullo (fig. 9.1).La varianza
:
1 Vpp2
a2
2
n =
(9.1)
=
12 22Bs
12
La situazione diversa se il disturbo di quantizzazione nasce da un troncamento; allora il valore medio nullo solo se il segnale ha valor medio
nullo, e la varianza quadruplica.E comune lipotesi che i campioni di
questo rumore siano indipendenti tra loro; ancora, ci non vero in ogni caso come vedremo tra poco, ma unipotesi valida nelle normali
condizioni di lavoro di un filtro numerico.
Quindi, si pu pensare che accanto ad ogni moltiplicatore (e sommatore) vi sia un iniettore di disturbo; il disturbo poi contribuisce alluscita,
dopo essere transitato per il filtro, attraverso una sua propria funzione di
trasferimento, che in generale diversa da quella del segnale. La potenza
totale di disturbo in uscita si otterr sommando le potenze di disturbo
dovute alle varie sorgenti. Bisogna stare assai attenti allamplificazione
del segnale dovuta ai poli, che amplifica poi anche il disturbo.
Lo spettro continuo di potenza bilatero del rumore di quantizzazione
iniettato, |Sq ()|2 , costante per lipotesi che i campioni successivi del
rumore siano indipendenti e quindi incorrelati e quindi la loro funzione
di autocorrelazione sia impulsiva (per una discussione di questi concetti,
si rinvia al capitolo sullanalisi spettrale). Il suo valore determinabile
196

9.1 LA QUANTIZZAZIONE DEI SEGNALI


x = valore del segnale non arrotondato
xq = valore del segnale arrotondato
q = x- xq
xq

Vpp 2 -B

-B-1
Vpp 2

q = x- xq

Figura 9.1: Rumore di quantizzazione: arrotondamento del segnale ed


escursione di ampiezza del rumore
con il teorema di Parseval; integrato fino alla frequenza di Nyquist, deve
dare il valore quadratico medio del rumore.
Z /T
d
a2
2
2
E[nq ] = n =
|Sq ()|2
= ;
2
12
/T
2
aT
;
(9.2)
|Sq ()|2 =
12
Se avessimo utilizzato la definizione di trasformazione discreta di Fourier
del Cap. 4 avremmo trovato un diverso fattore di scala, come risulta
nel capitolo dedicato al periodogramma. La sequenza dei campioni del
rumore in uscita nu e cio nu,i corrisponde al rumore generato, amplificato
dalla funzione di trasferimento H().
Z /T
d
2
2
(9.3)
|Sq ()|2 |H()|2
E[nu ] = u =
2
/T
197

CAPITOLO 9 QUANTIZZAZIONE DEI SEGNALI


x = valore del segnale non troncato
xq = valore del segnale troncato
q = x- xq
xq

q = x- xq
Vpp

-B-1
2

Figura 9.2: Rumore di troncamento: arrotondamento del segnale e


ampiezza dellerrore
A ulteriore titolo di esempio, per un filtro del secondo ordine, ricorsivo, riporteremo la potenza di disturbo in uscita 2o dovuta al rumore di
quantizzazione (fig. 9.3); le sorgenti di rumore sono due e possono essere
trasferite al nodo sommatore di ingresso. La funzione di trasferimento
tra ingresso ed uscita :
H(z) =

1
1 2 cos z 1 + 2 z 2

(9.4)

Per il teorema di Parseval:


E[n2o ]

2o

/T

a2 T
=2
=
|Sq ()| |H()|
2
12
/T
2

2 d

1
a2 1 + 2
2
2
6 1 1 2 cos 2 + 4
198

/T

/T

|H()|2

d
=
2
(9.5)
(9.6)

9.1 LA QUANTIZZAZIONE DEI SEGNALI

no
-2cos()

n1

z-1

z-2

n2

n2

no

n1

-2cos()

z-1

z-2

Figura 9.3: Filtro ricorsivo del secondo ordine: calcolo della potenza in
uscita del rumore dovuto allarrotondamento.
1
a2

0
6
4 sin2
Questultima formula facilmente ottenibile considerando i due poli
complessi coniugati distanti di dal cerchio unitario nel piano z; in
corrispondenza delle pulsazioni di guadagno massimo
Se = 1 ; lim 2o =

0 = /T
la funzione di trasferimento deducibile dai diagrammi vettoriali:
|H()| =

1
1
p
2
2 sin
+ ( 0 )2 T 2

Allora, tenendo conto dei due contributi alle pulsazioni 0 :


Z
Z
1
a2
a2 T /T
2
2 d
'
|H()|
dx =
o = 2
2
12 /T
2
24 sin 1 + x2
199

CAPITOLO 9 QUANTIZZAZIONE DEI SEGNALI

a2
T
2 ; x =

24 sin
In sostanza, la potenza di rumore dovuta allarrotondamento viene amplificata di un fattore proporzionale a 1/.
Si osserva infine che il rumore dovuto alla quantizzazione dei segnali
in una cella biquadratica cambia con il modo di realizzazione e cio
diverso se si usi la struttura di figura (9.3) o la struttura con i sensi
di propagazione e i coecienti scambiati. Nel paragrafo successivo troveremo una tecnica alternativa per il calcolo della potenza in uscita del
rumore di quantizzazione.
=

9.1.2

Retroazione dellerrore di quantizzazione

Sono di interesse delle strutture di filtri (considereremo solo sistemi di


primo ordine) in cui il prodotto fatto su B bit, ma in cui i B bit meno
significativi delle operazioni eettuate (il resto) vengono opportunamente
retroazionati, per cancellare al meglio leetto della quantizzazione. Si
consideri la figura 9.4. In essa vediamo un sistema di primo ordine in
cui il prodotto per il coeciente viene eettuato con B bit. Il prodotto
yi1 (che conta 2B bit) poi sommato sempre con la precisione di 2B
bit sia allingresso xi che con un numero wi1 che verr ora definito. Il
risultato zi della somma
yi1 + xi wi1 = zi = zi ,q +wi
viene ora quantizzato con B bit zi ,q , ma ne viene calcolato anche il resto
wi , e cio i B bit meno significativi della somma yi1 + xi wi1 calcolata con 2B bit. Questo numero, riiniettato nel sistema cambiato di
segno (vedi figura 9.4) e con un ritardo di 1 campione, d appunto wi1 .
Vediamo ora leetto di questa operazione, nel caso in cui = 1
vicino a 1. Se supponiamo che il rumore di quantizzazione wi sia indipendente dal segnale che lo ha generato, vediamo che iniettiamo nel sistema
wi wi1 , invece che wi . Luscita dovuta a questo ingresso supponendo
di:
- applicare la sovrapposizione degli eetti e di non considerare lingresso xi che pure ha causato lesistenza di wi
- non considerare di nuovo leetto della quantizzazione;
200

9.1 LA QUANTIZZAZIONE DEI SEGNALI

Figura 9.4: Riiniezione del rumore di quantizzazione in un sistema di


primo ordine. In alto: lo schema a blocchi del sistema utilizzato. In
basso: lo schema a blocchi per il calcolo della funzione di trasferimento
tra il rumore di quantizzazione generato wi e luscita.

201

CAPITOLO 9 QUANTIZZAZIONE DEI SEGNALI

rappresentata nella figura 9.4 in basso.


Si ha allora:
yi = wi wi1 + y1
Y (z) = W (z)

1 z 1
1 z 1

Lo zero a frequenza zero che stato inserito quasi cancella leetto del
polo; lo cancellerebbe perfettamente se si retroazionasse wi invece di
wi : ma questo costerebbe unaltra moltiplicazione e gli ulteriori vantaggi
(molto piccoli) non giustificano i maggiori costi. La potenza del rumore
in uscita sar ora calcolata dalla funzione di autocorrelazione del rumore
in uscita. La funzione di autocorrelazione di un sistema ad uno o pi poli
ottenibile dalle equazioni di Yule Walker viste nel capitolo 5; si ottiene
cos la formula presentata senza dimostrazione in equazione 9.6.
rm =

N
X

ah,N rmh + 2w (m)

h=1

Nel caso di un solo polo:


rm = rm1 + 2w (m) r1 = r0 ; r0 = r1 + 2w
r0 =
R (z) =

2w
; rm = r0 m
1 2

2w
1 + z + z 1 + 2 z 2 + z 2 + ...
2
1

Ora, per tenere conto dello zero, si deve convolvere la R (z) appena
trovata con la funzione di autocorrelazione dovuta allo zero:

Rzero (z) = 1 z 1 (1 z) = 2 z z 1
La funzione di autocorrelazione delluscita dovuta al disturbo di quantizzazione pertanto
Rtotale (z) = Rzero (z) R (z) =

2w

= 2 z z 1
1 + z + z 1 + 2 z 2 + z 2 + ...
2
1
202

9.1 LA QUANTIZZAZIONE DEI SEGNALI

A noi interessa il valore quadratico medio e cio:


Rtotale (z = 0) =
invece di

2w
2 2w
2w
2
(2

)
=
<<

w
1 2
1+
1 2
2w
1 2

come sarebbe accaduto se non avessimo reazionato il rumore di quantizzazione. In totale, un significativa riduzione (di un fattore 2). Nel
caso di sistemi di secondo ordine (vedi figura 9.5) si fanno entrambe le
moltiplicazioni a B bit con uscita quindi a 2B bit; si fa la somma a 2B
bit e si reaziona il rumore di quantizzazione con un ritardo unitario (con
un fattore 1 ) e con ritardo doppio (con un fattore 2 ). Volendo una
cancellazione perfetta si dovrebbe avere:
1 = 2 cos ; 1 = 2 ;
Di nuovo, per evitare delle moltiplicazioni, si usa per piccolo:
1 = 2; 1 = 1;
Per , invece si deve usare 1 = 2. La moltiplicazione della funzione
di trasferimento del rumore per un doppio zero in z = 1 attenua fortemente leetto di amplificazione del rumore dovuto ai poli, se questi sono
vicini.

9.1.3

Eetti di trabocco (overflow)

Si prenderanno ora in considerazione gli eetti di trabocco, dovuti al


fatto che i segnali descritti con cifre binarie (in virgola fissa) corrispondono a segnali a dinamica limitata (i valore massimi negativi e positivi
sono finiti). Il valore massimo del modulo del segnale non deve superare
troppo spesso la condizione di trabocco. Se il segnale a densit di probabilit gaussiana, la probabilit che il suo valore di picco sia p.e. 3 volte
superiore al valore ecace pari a 2.7 103 . Per rendere trascurabile
lulteriore contributo di rumore dovuto al trabocco, bisogner fare in modo che in tutti i punti del filtro il valore ecace del segnale sia almeno
12 dB al di sotto del valore di Vp , condizione di trabocco del filtro; da
203

CAPITOLO 9 QUANTIZZAZIONE DEI SEGNALI

Figura 9.5: Sistema di secondo ordine e riiniezione del rumore di


quantizzazione.

questa osservazione e dal numero di bit che rappresentano i segnali si pu


determinare il rapporto segnale - rumore di quantizzazione risultante. Se
poi si ricorda che i poli in generale tendono ad amplificare il segnale e gli
zeri ad attenuarlo, sara opportuno costruire i filtri numerici alternando
poli e zeri e realizzando assieme con coppie biquadratiche i poli e gli zeri
posizionati nelle stesse zone del piano z, cos da mantenere abbastanza
uniforme il livello del segnale.
Ancora, opportuno che il trabocco non generi segnali di segno opposto e ampiezza vicina alla massima, come potrebbe accadere con aritmetica binaria senza controlli; infatti, ne potrebbero nascere ulteriori
pericolose oscillazioni (cicli limite).

9.2

Quantizzazione e DFT

Una possibile fonte di disturbo nel trattamento dei segnali con la trasformazione di Fourier discreta deriva dalla quantizzazione dei coecienti
204

9.3 I CICLI LIMITE

della trasformazione e dei segnali. Indicando con:


X(k) =

N1
X

xn W nk ;

W = ej2/N

(9.7)

n=0

e supponendo che sia segnali che coecienti siano quantizzati con errori
di quantizzazione pari a n e wn rispettivamente:
0

X (k) = X(k) + k =

N1
X

(xn + n )(W nk + wn );

n=0

E[wn ] = E[ n ] = E[k ] = 0;
E[|k |2 ] = N(E[|wn |2 ] 2x + E[2n ] 1 + E[2n ] E[wn2 ]) ' 2kN 2x 22B
(9.8)
se:
k=

Vpp2
; E[wn2 ] = k22B 2W = 22B ; E[2n ] = k22B 2x
12 2

(9.9)

e quindi si determina il rumore che inevitabilmente sovrapposto alla


trasformata.

9.3

I cicli limite

Un altro tipo di disturbo dovuto ai cicli limite: per comprendere il


fenomeno, consideriamo un filtro ad un polo, situato assai vicino al cerchio unitario, ad esempio in z = 1 (fig. 9.6). Supponiamo di alimentare il filtro con un impulso di ampiezza A0 e di lasciare che il sistema
evolva; tuttavia luscita del moltiplicatore per z = 1 quantizzata
con Bs cifre binarie. La moltiplicazione per z = 1 seguita da una
quantizzazione lascia il campione immutato non appena:
yn = [(1 )yn1 ]quantizzato

(9.10)

coincide con yn1 e cio quando:


yn1

yn1
= Alim
2
2
205

Vpp
2Bs

(9.11)

CAPITOLO 9 QUANTIZZAZIONE DEI SEGNALI

xn

yn

[(1-)y n-1 ] q

y n-1

z -1

(1-)

Figura 9.6: Eetti di arrotondamento: il ciclo limite


da questo momento in poi, come se il polo si fosse portato sul cerchio
unitario, e ricircola il valore Alim senza decrescere pi. In altre parole,
il sistema diventato appiccicoso (sticky) e luscita non tende pi a
zero, ma rimane al valore Alim . Si osservi che se piccolo, Alim pu
essere anche notevole (fig. 9.7).
Una cura per questo semplice caso di ciclo limite pu essere un sistema simile a quello di scuotere una ciotola per fare scivolare sul fondo
una pallina rimasta attaccata alle pareti appiccicose. In questo caso, si
addiziona allingresso del sistema (per poi sottrarlo alluscita) una sequenza di dither (setaccio). Il dither una sequenza pseudo casuale e
cio una sequenza periodica, nota, e sucientemente ampia da spezzare
il ciclo limite; la presenza del dither riporta il sistema nelle condizioni
per cui il segnale casuale ed ha ampia dinamica. Alluscita del filtro,
si sottrae leetto del disturbo pseudo casuale, facilmente calcolabile nel
caso di sistema privo di rumore di quantizzazione.
Nel caso del semplice filtro di figura (fig. 9.6) stato assai facile
calcolare il ciclo limite; ci assai pi dicile nel caso di filtri numerici
complessi. Non esistono regole sicure allora, se non quella della simulazione, oppure il ricorrere a strutture intrinsecamente senza cicli limite
come le strutture riverberanti che vedremo in un prossimo capitolo.

206

9.3 I CICLI LIMITE

Figura 9.7: Risposta impulsiva con e senza leetto del ciclo limite

207

Capitolo 10
Le trasformate di Hilbert e
chirp z
10.1

Trasformate di sequenze causali

Esiste una relazione tra la parte reale e la parte immaginaria della trasformata di Fourier di una sequenza causale; la stessa relazione intercorre tra
modulo e fase della trasformata di una sequenza a fase minima; ancora,
la stessa relazione che vi tra una funzione e quella che si ottiene ruotando di /2 tutte le componenti della sua trasformata di Fourier: questa
relazione di tipo convolutivo e viene indicata come trasformazione di
Hilbert, H(.). In sostanza si tratta della convoluzione con una funzione
del tipo 1/(t). A causa di campionamenti sia nei tempi e/o nelle frequenze, la funzione con cui si fa la convoluzione assume forme diverse,
che vedremo. Tuttavia, la ripetuta applicazione della trasformazione di
Hilbert porter sempre alla funzione di partenza con il segno cambiato.
Consideriamo una sequenza reale e causale e cio sia:
xi = 0; i < 0

(10.1)

e si decomponga la sequenza nelle sue parti pari e dispari (fig. 10.1). Sia
cio:
(10.2)
xp,i = xi /2; xp,i = xi /2;
xd,i = xi /2; xd,i = xi /2;

(10.3)

xi = xp,i + xd,i

(10.4)

209

CAPITOLO 10 LE TRASFORMATE DI HILBERT E CHIRP Z

xi

xi {xi} = X( )

xp,i

x p, i {xp, i} = Re{ X( )}

xd, i {xd, i} = j Im{ X( )}

xd,i

xd, i = xp, i sign(i)


{xd, i} = {xp, i} {sign(i)}
j Im{ X( )} = Re{ X( )} {sign(i)}

Figura 10.1: Decomposizione di una sequenza nelle componenti pari xp,i


e dispari xd,i

210

10.1 TRASFORMATE DI SEQUENZE CAUSALI

Si ha cio che, definita la sequenza sign(i) in modo che:


sign(i) =

i
;
|i|

i 6= 0;

sign(0) = 0;

(10.5)

allora risulta :
xd,i = xp,i sign(i)

(10.6)

e quindi, dette R(), jIm() le parti reali ed immaginarie della trasformata di Fourier della sequenza xi , risulta che se:
X() = R() + jIm()

(10.7)

la parte immaginaria la Trasformata di Hilbert della parte reale:


jIm() = H[Re()] = Re() F (sign(i))

(10.8)

X
(z i z i ) =
F [sign(i)] =

1
1
z+1

=
= j cot(T /2)
1
1z
1z
z1
i=1
(10.9)
(sul cerchio unitario). Pertanto:
Im() = H{Re()} = Re() [ cot(T /2)]

(10.10)

Il risultato ottenuto facilmente ricordato se si pensa al fatto che la


derivata numerica della sequenza sign un impulso. Allora le trasformate di Fourier della sequenza sign e delloperatore derivata devono
essere luna proporzionale allinverso dellaltra.
Infatti richiamiamo lespressione delloperatore di derivazione causale,
recursiva:
2 1 z 1
2 z1
(10.11)
=
Dr (z) =
1
T 1+z
T z+1
Ora, vediamo che le due espressioni (Dr (z), F [sign(i)]) corrispondono
luna allinversa dellaltra. Tuttavia, non ci si stupisca se, convolvendo le
due risposte in tempi NON si ottiene un impulso: in un caso (derivatore
ricorsivo) il polo visto come causale; nel caso invece della funzione sign
il polo sia causale che anticausale.
Abbiamo dimostrato che le parti reale ed immaginaria della trasformata di una sequenza causale sono legate dalla convoluzione con la funzione periodica cot(T /2), che la trasformata di Fourier della sequenza sign(i); < i < ; essa rappresenta una versione discreta
del cosiddetto nocciolo di Hilbert (fig. 10.2).
211

CAPITOLO 10 LE TRASFORMATE DI HILBERT E CHIRP Z


sign(i)

i=0

H( ) = {sign(i)}

2/

2/

Figura 10.2: Nocciolo di Hilbert illimitato nel dominio coniugato


La trasformazione descritta dalle precedenti equazioni perci chiamata trasformazione di Hilbert discreta, e corrisponde al caso in cui
il segnale campionato ed illimitato in un dominio (in questo caso quello
dei tempi) e periodico e continuo nellaltro (in questo caso quello delle
frequenze).

10.2

Sfasatori puri di /2

Come osservato, esistono varie versioni del nocciolo di Hilbert, a seconda


che il segnale sia continuo nei due domini, campionato e illimitato nelluno e periodico e continuo nellaltro, o infine campionato e periodico in
entrambi.
Consideriamo il caso che il campionamento sia nel dominio coniugato
a quello dove si calcola la funzione sign(i) che quindi viene generalizzata
diventando una funzione continua e periodica, invece che discreta ed
illimitata.
Il problema di riferimento in questo caso il seguente: data una sequenza reale xi se ne consideri la trasformata di Fourier X() (si ricordi
212

10.2 SFASATORI PURI DI /2

che questa una funzione periodica!) e si ruotino di /2 tutte le sue


componenti di Fourier; in altre parole, si moltiplichi la trasformata per
la funzione jsign() periodicizzata sullintervallo /T /T . Lantitrasformata una nuova sequenza i = H{xi }, che anche viene identificata come la trasformata di Hilbert della sequenza xi . La situazione
per dierente da quella vista prima perch la sequenza equivalente al
nocciolo di Hilbert ha trasformata periodica e continua (fig. 10.3).
H()=Sfasatore di /2
j

-j

hi = -1 { H( )} =

1 (1)
iT
i

Figura 10.3: Nocciolo di Hilbert periodicizzato nel dominio coniugato


Si tratta quindi di calcolare lantitrasformata della funzione periodicizzata jsign(); || /T . Per fare ci senza fatica, basta calcolare
prima il segnale continuo antitrasformata della funzione jsign() annullata fuori del periodo principale e poi campionare la funzione del tempo
cos ottenuta. Il risultato :
h(t) =

1 cos t/T
1 (1)i
; h (iT ) = hi =
t/T
i

<i<

(10.12)
Esso assomiglia allandamento della cotangente con il segno cambiato, ma
con dierenze notevoli se si considera che la sequenza hi non un segnale
continuo, nulla a campioni alterni e non periodica. La sequenza i ,
convoluzione della xi e della hi , detta ancora trasformata di Hilbert
213

CAPITOLO 10 LE TRASFORMATE DI HILBERT E CHIRP Z

della sequenza xi .
i = H{xi } = xi hi

Si noti che se una sequenza una sinusoide (campionata), la sua trasformata di Hilbert una cosinusoide etc.

10.3

Sequenze periodiche e segnali continui

Una terza versione del nocciolo di Hilbert si ha quando la trasformata di


Fourier sia periodica e campionata e cio quando la sequenza di partenza
campionata e periodica. E evidente che in questo caso il concetto
di causalit va riformulato, accettando di definire causale una sequenza
nulla per la seconda met dei campioni. Allora se ne deduce una sequenza
sign periodicizzata di cui si cerca la trasformata.
X(k) =

N/2
X

xn W nk ;

n=N/2+1

W = exp(2j/N);
0 < n < N/2
xn = 1;
xn = 1; N/2 < n < 0;

x0 = xN/2 = 0

(10.13)

Risulta che:
X(k) = j[1 (1)k ] cot k/N

(10.14)

e perci si trova tanto leetto della discontinuit alla frequenza di Nyquist


(la nullit a elementi alterni della trasformata) quanto leetto della
periodicizzazione (la cotangente) (fig. 10.4).
Lultimo caso quello della continuit nei due domini: il nocciolo di
Hilbert allora:
1
h(t) =
(10.15)
t
Possiamo ora tabellare le varie forma assunte dalla funzione che appare
nella trasformazione di Hilbert; essa sempre la trasformata di Fourier della funzione sign, che per pu essere continua/discreta e illimitata/periodica, nel dominio dei tempi o delle frequenze ed inoltre, si faccia
attenzione, a volte compare con un segno positivo ed a volte con quello
negativo.
214

10.3 SEQUENZE PERIODICHE E SEGNALI CONTINUI


xn

X(k)

Figura 10.4: Sequenza sign(n) periodicizzata e sua trasformata

Funzione

continua

continua

discreta

discreta

Segnale

illimitato

periodico

illimitato

periodico
i
h
1 (1)k cot k
N

1
Espressione t

10.3.1

1(1)
i

cot T
2

Singolarit nella trasformazione di Hilbert

Apparentemente, la trasformazione di Hilbert non dovrebbe creare singolarit perch corrisponde a pure rotazioni di fase, senza amplificazioni
dello spettro. Quindi il teorema di Parseval ci dovrebbe permettere di
concludere che non sono da attendersi singolarit. Tuttavia, la trasformata di Hilbert della sequenza sign(i) ha una singolarit di tipo logaritmico,
che nasce dalla somma di una serie armonica (fig. 10.5).

215

CAPITOLO 10 LE TRASFORMATE DI HILBERT E CHIRP Z

Figura 10.5: Trasformata di Hilbert della sequenza sign(n).


Questo fatto connesso a quanto osservato nel capitolo sullinterpolazione di sequenze illimitate con il filtro ideale. I segnali continui che
interpolano sequenze con transitori bruschi e permanenti hanno picchi
che crescono con il logaritmo del numero dei campioni della sequenza e
quindi infiniti nel caso di sequenze per le quali il transitorio illimitato.

10.4

Funzioni a fase minima

Supponiamo di avere una funzione di trasferimento di cui nota solo la


caratteristica di ampiezza. E chiaro che possiamo assegnarne la caratteristica di fase con vari criteri: ad esempio possiamo imporre che la
funzione di trasferimento sia a fase zero, ed allora la risposta allimpulso
sar non causale e simmetrica nel tempo; ancora possiamo imporre che
la risposta allimpulso sia causale, aggiungendo un ritardo e quindi una
fase che cresce linearmente con la frequenza.
E importante il caso in cui vogliamo che la risposta sia s causale,
ma anche desideriamo che la sua durata sia minima e che cio il ritardo
della risposta sia il pi breve possibile. Similmente, si pu desiderare
che la funzione di trasferimento abbia una funzione di trasferimento inversa causale e quindi sia a fase minima, come visto nel capitolo sulla
Trasformata z. E perci un problema interessante quello di determinare
la caratteristica di fase minima che si accompagna ad una caratteristica
di ampiezza assegnata. Dimostreremo che vi un facile legame tra caratteristica di ampiezza e caratteristica di fase minima, che corrisponde ad
una trasformazione di Hilbert.
216

10.4 FUNZIONI A FASE MINIMA

Si abbia infatti una sequenza a fase minima e indichiamo la sua


trasformata z con F (z); dimostriamo anzitutto che G(z), logaritmo complesso di F (z), la trasformata z di una sequenza causale. Infatti, se
F (z) a fase minima:
G(z) = log F (z) = log(|F (z)|ejF (z) ) = log |F (z)| + jF (z)

(10.16)

La F (z), trasformata z di una sequenza a fase minima, ha poli e zeri


allinterno del cerchio unitario. Il suo logaritmo complesso G(z) ha tutti
i poli allinterno del cerchio unitario (i valori infiniti della funzione logaritmo sono raggiunti dove largomento del logaritmo ha valore zero o
infinito e quindi dove la F (z) ha zeri o poli). La funzione G(z) si pu

Figura 10.6: Poli e zeri del logaritmo della trasformata di una sequenza
a fase minima
annullare (in corrispondenza degli zeri della G(z)) in qualsiasi posto del
piano complesso, l dove F (z) = 1 (fig. 10.6)). Quindi la sequenza antitrasformata della G(z) una sequenza causale. Perci le parti reale
e parte immaginaria di G(z) lungo il cerchio unitario sono legate dalla
trasformazione di Hilbert e si pu ottenere luna dallaltra mediante la
convoluzione con la funzione cot(T /2).
Ricordando poi che la parte immaginaria di G(z) la fase di F (z)
risulta:
F (z) = Im[G(z)] = Im(log F (z))
(10.17)
F (z)|z=ejT = Im(log F (z)|z=ejT ) =
(10.18)
= H{Re(log F (z)|z=ejT )} = H{log |F (z)|z=ejT }.
217

CAPITOLO 10 LE TRASFORMATE DI HILBERT E CHIRP Z

In conclusione, per ottenere la caratteristica di fase di una funzione di


trasferimento a fase minima basta fare la trasformata di Hilbert del logaritmo naturale del modulo della sua caratteristica di ampiezza. Nel
capitolo sulla predizione lineare troveremo unimportante applicazione di
questo risultato.
Come esempio, si pu considerare un filtro ideale di banda inferiore
alla frequenza di Nyquist. La sequenza corrispondente un sinc che poi
deve essere opportunamente finestrato (p.e. con un coseno rialzato) per
limitarne la durata. Il sinc finestrato presentato in fig. 10.7;il logaritmo
della caratteristica di ampiezza presentato in fig. 10.8; la trasformata di Hilbert (la caratteristica di fase da associare alla caratteristica di
ampiezza per avere fase minima) in fig. 10.9. Infine la sequenza che ha
le caratteristiche di ampiezza e di fase mostrate presentata in fig. 10.10.
E evidente che la durata della sequenza in fig. 10.10 ben inferiore a
quella della sequenza in fig. 10.7.

10.5

Il segnale analitico

Consideriamo una sequenza reale xi e aggiungiamogli come parte immaginaria una sequenza j i , ottenuta dalla sequenza xi mediante trasformazione di Hilbert e moltiplicazione per j. La trasformata di Fourier
di questa nuova sequenza complessa:
yi = xi j i

(10.19)

che viene definita il segnale analitico corrispondente alla sequenza xi ha


la parte negativa dello spettro nulla. Infatti, la trasformata della sequenza j i identica a quella della sequenza xi a meno della moltiplicazione
per la funzione sign. Ancora, la trasformata della sequenza i eguale
a quella della sequenza xi a meno di una rotazione di /2 di tutte le
componenti. Infine, la trasformata della sequenza yi causale nelle
frequenze e pertanto ha spettro nullo per < 0. E utile osservare che:
q
|yi | = x2i + 2i
yi = arctan( i /xi )

(10.20)

Si ricordi che se la sequenza xi corrisponde ad una sinusoide, la sequenza


i corrisponde alla stessa sinusoide sfasata di /2 e pertanto |yi | e yi
218

10.5 IL SEGNALE ANALITICO

Figura 10.7: Sinc finestrato

Figura 10.8: Caratteristica d ampiezza

Figura 10.9: Caratteristica di fase

219

CAPITOLO 10 LE TRASFORMATE DI HILBERT E CHIRP Z

Figura 10.10: Sequenza a fase minima corrispondente ad un filtro passa


basso ideale

sono delle costanti e niente altro che lampiezza e la fase della sinusoide
stessa. Pertanto con il segnale analitico possibile ottenere unestensione
dei concetti di fase e di ampiezza di una sinusoide, e costruire inviluppo
e fase istantanea di un segnale qualsiasi (fig. 10.11); naturalmente,
anche possibile definire la frequenza istantanea di un segnale qualsiasi,
come derivata della fase istantanea, fatta rispetto al tempo.

Figura 10.11: a) Segnale modulato in ampiezza xi b) Trasformata


di Hilbert del segnale modulato in ampiezza c) Inviluppo del segnale
modulato

220

10.6 LA TRASFORMATA CHIRP Z

10.6

La trasformata chirp z

La trasformata di Fourier non altro che la valutazione della trasformata


z di una sequenza qualsiasi di N campioni in K punti disposti regolarmente lungo il cerchio unitario a partire dal punto z = 1. La chirp
transform (o chirp z transform) consiste nel calcolo della trasformata z
della sequenza in K punti non distribuiti uniformemente lungo il cerchio
unitario, ma disposti lungo un arco di spirale nel piano z. I campioni
della trasformata chirp z sono:
Ck =

N1
X
n=0

xn zkn ; k = 0, ...K 1

(10.21)

dove ora
zk = P Qk

(10.22)

e P, Q sono due numeri complessi qualsiasi. Ovviamente, non aatto


detto che la trasformata chirp abbia uninversa, e cio che si possa ritornare alla sequenza di partenza dai Ck . Si ritrova invece la trasformata
discreta di Fourier discreta qualora:
|P | = |Q| = 1; ]P = 0; ]Q =

2
; K=N
N

(10.23)

Tuttavia, al variare dei parametri, il luogo descritto dai punti zk pu


essere appunto un arco di cerchio o di spirale (se |Q| 6= 1) comunque
ruotati nel piano z. Il calcolo dei Ck reso poco costoso dalla seguente
osservazione (Bluestein):
nk =

n2 + k2 (k n)2
2

(10.24)

Allora,
Ck =

N1
X

xn P

nk

n=0

N1
X

xn P n Q

n2 +k2 (kn)2
2

n=0

k2

=Q

N1
X

n2

xn P n Q 2 Q

n=0

221

(kn)2
2

(10.25)

CAPITOLO 10 LE TRASFORMATE DI HILBERT E CHIRP Z

e ponendo:
n2

hn = Q 2 ; n = 0, ..., Max (K, N)


yn =

(10.26)

xn
; Dk = Ck hk
P n hn

risulta:
Dk =

N1
X

yn Q

(kn)2
2

n=0

= yn hn

(10.27)

Quindi, si ottiene la sequenza Dk come una convoluzione tra le sequenze


yn e hn , realizzabile con una trasformazione ed una antitrasformazione
di Fourier. Poi dalla sequenza Dk si trova la sequenza Ck = Dk /hk .
La sequenza hk chiamata sequenza chirp, perch, nel caso semplice in cui |Q| = 1 corrisponde ad una sinusoide la cui frequenza cresce
progressivamente nel tempo, come un cinguettio. Chirp significa in inglese appunto cinguettio duccello. Finora, non si comprende un motivo
che giustifichi la trasformata chirp; due applicazioni si vedranno nelle
prossime sezioni.

10.7

Il segnale chirp

Il segnale chirp trova applicazioni nel telerilevamento e nel trattamento


dei segnali radar. utile quando si desidera studiare la propagazione di
un segnale in un mezzo di trasmissione: si desidera trasmettere un segnale ad elevata energia, per ottenere un buon rapporto segnale rumore in
ricezione, ma con bassa potenza di picco per evitare di avere trasmettitori
troppo costosi. La sequenza hn ha questa propriet perch corrisponde
ad una sinusoide la cui frequenza istantanea cresce linearmente con il
tempo: perch lenergia in essa contenuta sia sucientemente elevata,
basta costruire una sequenza abbastanza lunga allungando cos anche il
tempo di permanenza in ogni intervallo spettrale. Per esempio, per avere
una sequenza campionata a T che spazzola lintero intervallo di frequenze
1
1
2T
2T
nellintervallo di tempo Ttot = NT basta porre:

N
N
n2
hn = exp j
; <n< ;
N
2
2
222

10.7 IL SEGNALE CHIRP

Infatti per n = N/2; ]hn ]hn1 = . La costante N prende anche


il nome di prodotto Banda tempo del chirp:
Ttot
= BTtot
N=
T
Se si vuole ridurre di un fattore lescursione di frequenza ( < 1 o si
cade nellequivocazione) basta porre .
y

0.5

0
-2.5

-1.25

1.25

2.5
x

-0.5

-1

Parte immaginaria di una sequenza chirp hn ; N = 1000; = 0.125


y

0.5

0
-2.5

-1.25

1.25

2.5
x

-0.5

-1

Parte reale della stessa sequenza hn


La sequenza {hn } ha ampiezza costante nel tempo e quindi lenergia totale proporzionale al prodotto banda tempo N. La sua funzione di autocorrelazione ha un modulo che assomiglia al sinc che ha banda corrispondente e infatti il suo spettro approssimativamente uniforme nellintervallo di frequenza spazzolato dalla sinusoide. La trasformata del segnale
chirp tempo continuo facile da ottenersi, ricordando che gaussiane nei
tempi corrispondono a gaussiane nelle frequenze e che:

exp t2 exp f 2
223

CAPITOLO 10 LE TRASFORMATE DI HILBERT E CHIRP Z

e scalando il tempo di un fattore

jk

1
f2
2
c (t) = exp jkt C (f ) = exp j j
k
4
k

La finestratura nei tempi del segnale chirp in un intervallo Ttot /2 ne


modifica lo spettro, a causa della convoluzione nelle frequenze con il
sinc :
Ttot
; zero altrove
cw (t) = c (t) ; |t| <
2
sin fTtot
Cw (f ) = C (f ) W (f ) ; W (f ) =
f Ttot
Si osservi che la convoluzione azzera lo spettro di Cw (f ) quando nel lobo
principale del sinc di durata 2/Ttot la funzione C (f ) ha una rotazione di
fase superiore a 2 :
2
f
2
d
kTtot

> 2 |f | >
Cw (f ) 0; se
df
k Ttot
2
Congruentemente, la frequenza istantanea del chirp :
kTtot
Ttot
1 d 2
kt = kt ; |t| <
; |f | <
f=
2 dt
2
2
Ha particolare interesse la decomposizione polifase di una sequenza chirp:
infatti se dividessimo la sequenza originaria lunga N campioni in M
sottobande, otterremmo M sottosequenze lunghe N/M campioni ognuna.
In realt queste sottosequenze sono M volte ancora pi corte, poich il
segnale nella sua spazzolata si trattiene in ogni sottobanda solo per un
M esimo del tempo totale. Quindi la convoluzione eettuata con il
filtro polifase coster solo N/M moltiplicazioni per campione di ingresso,
a parte il costo del banco di filtri. La cosa puo essere utile quando si
deve avere a che fare con segnali chirp tempo varianti quali si incontrano
nella focalizzazione dei radar ad apertura sintetica, quando non si riesce
ad adottare la tecnica della DFT.

10.8

Interpolazione con fattore qualsiasi

Nei casi visti nel capitolo sulla decimazione ed interpolazione, abbiamo


interpolato (o decimato) delle sequenze sempre usando fattori interi. Peraltro, usando una cascata di interpolazione e decimazione, si pu arrivare
224

10.8 INTERPOLAZIONE CON FATTORE QUALSIASI

ad un qualsiasi fattore razionale m/n di interpolazione. per possibile eettuare delle interpolazioni con fattori di scala anche non razionali,
e quindi con maggiore libert [Munson, D. C., Arikan, O., Interpolation
and the chirp transform: DSP meets optics, Proc. ICASSP 1999, pp.
2099 - 2102]. Allo scopo si utilizza la trasformata chirp z che abbiamo
visto nella precedente sezione. Iniziamo lanalisi supponendo di avere un
asse delle frequenze continuo. Interpolare in un dominio corrisponde ad
una scalatura inversa dellasse dellaltro dominio. Indichiamo con T1 , T2
i due intervalli di campionamento delle due sequenze {x1,n } , {x2,m } che
corrispondono allo stesso segnale continuo, una volta fatto un filtraggio ideale nella banda di frequenza normalizzata comune. Supponendo
di avere la sequenza {x1,n } e di volere calcolare la sequenza {x2,n } si
comprende che se:
T2 < T1
il segnale interpolato {x2,n } potr essere identico al vecchio perch la banda disponibile cresce. Quindi 2 , la banda normalizzata della sequenza
{x2,n } , sara inferiore a . In caso contrario, tutta la banda 2 sar occupata e la sequenza {x2,n } non potr descrivere perfettamente la sequenza
{x1,n } . Si ha quindi:

T2
2 = Min
,
T1
ed inoltre indicando con X1 () , X2 ():
X1 () =

N1
X

x1,n ejn

n=0

X2 () =

M1
X

x2,m ejm

n=0

risulta:

T1
T1
; || < 2
X2 () =
X1
(10.28)
T2
T2
Come calcolare facilmente {x2,m } da {x1,n } ? Intanto osserviamo che:
Z 2
Z 2 N1
X
T
d
T1
T1
j 1 n
jm d
X2 () e
x1,n e T2 ejm
=
x2,m =
T2 2
2
T2 2 n=0
2
(10.29)
225

CAPITOLO 10 LE TRASFORMATE DI HILBERT E CHIRP Z

Poi approssimiamo lintegrale con una sommatoria (sostituiamo alla variabile continua la variabile discreta k) per avere:
x2,m

K1 N1
T
T1 X X
jk T1 n jmk
2 e

x1,n e
2 T2 k=0 n=0

(10.30)

Il calcolo della {x2,m } apparirebbe molto costoso computazionalmente,


ma lo si far in modo eciente in due passi, usando appunto la trasformata chirp. Indicando con:
j

gn = x1,n wn e

T1 2
n
2T2

T1 2
n
2T2

; hn = e

(10.31)

e poi calcolando la sequenza:


fk = {gn } {hn } =

N1
X

x1,n wn e

T1 2
n
2T2

T1
(nk)2
2T2

(10.32)

n=0

si ottengono i campioni di uscita {x2,m } come:


x2,m

K1
T1 2
T1 X
j
k

fk k e 2T2 ejkm
2 T2 k=0

(10.33)

Sono state aggiunte due finestre k , wn rispettivamente nei domini delle


frequenze e dei tempi, per ridurre i lobi laterali provenienti dai troncamenti nei due domini. Per la verifica, basta sostituire nella 10.33 la 10.32,
utilizzando la 10.24 per trovare la 10.30. Abbiamo quindi una ricetta
poco costosa (due moltiplicazioni per campione ed una convoluzione) per
fare uninterpolazione con un fattore di scala qualsiasi.
Si osservi che questa tecnica di utilizzare la trasformata chirp per
fare uninterpolazione equivale in tutto e per tutto alluso di una lente
di ingrandimento. Infatti, una lente ottica eettua appunto una trasformazione chirp sul segnale elettromagnetico incidente, e funziona cos da
trasformatore di Fourier.

226

Capitolo 11
Processi casuali: generalit
11.1

Processi casuali discreti

Consideriamo una sequenza di variabili complesse {xn }, n = 0...N e supponiamo che la densit di probabilit congiunta delle variabili (parti reali
ed immaginarie) sia gaussiana. Indichiamo con x un vettore colonna le
cui N componenti sono gli elementi della sequenza {xn } e con R la matrice di covarianza, di dimensioni [N N], del vettore (e della sequenza)
e cio:
R = E[xx ]
(11.1)
Lasterisco indica la trasposizione e, nel caso di vettori complessi, anche
il coniugio. La matrice R ha simmetria hermitiana e cio, indicando con
asterisco la trasposizione ed il coniugio si ha:
R = R

(11.2)

Dimostriamo ora, in casi semplici, che la densit di probabilit del vettore


casuale x :
1
x R1 x
p(x) =
exp (
)
(11.3)
2
(2)N/2 |R|1/2

Se la sequenza {xn } bianca, e quindi

E[xm xmi ] = 2x i
la matrice di covarianza Rx diagonale:
Rx = 2x I
227

(11.4)

CAPITOLO 11 PROCESSI CASUALI: GENERALIT

dove con I abbiamo indicato la matrice identica e con 2x il valore q.m.


degli elementi della sequenza (dei moduli, se la sequenza complessa).
Se le variabili casuali sono a v. m. nullo, reali, gaussiane e i.i.d. e cio
indipendenti e identicamente distribuite, la 11.3 risulta immediatamente
poich la densit di probabilit di un vettore le cui componenti sono delle
variabili indipendenti il prodotto delle loro densit.
p(x) =

N
Y

p(xi ) =

i=1

1
(2)N/2 N
x

exp (

1 X 2
xi ) =
2 2x

(11.5)

x R1
x x
=
exp (
)
N/2
1/2
2
(2) |Rx |
1

Passiamo ora a un caso pi generale: facciamo una trasformazione di coordinate dal vettore x ad un vettore y e quindi moltiplichiamo il vettore x
per una matrice A quadrata ed invertibile (dimentichiamo le singolarit):
y = Ax x = A1 y
La matrice di covarianza di y :
E[yy ] = Ry = AE [xx ] A = 2x AA
ed anche vero che:
x R1
x x =

1 1 1
y A
A y = y R1
y y
2
x

e sostituendo nella 11.5 si ottiene la densit di probabilit 11.3. Per normalizzare ad 1 lintegrale della probabilit su tutto il volume infinito N dimensionale dopo la trasformazione di coordinate, si deve dividere per il
determinante della matrice Jacobiana di trasformazione delle coordinate
da x a y:
p
2N
2N
2N
|A|2 = |Ry |1/2
x |J| = x |A| = x
e quindi risulta la 11.3:

y R1
y y
p(y) = =
exp (
)
N/2
2
(2) |Ry |1/2
1

228

11.2 MATRICI DI COVARIANZA DI SEQUENZE FILTRATE

La dimostrazione del fatto che dopo una trasformazione di coordinate, gli elementi di volume sono scalati per il determinante della matrice di trasformazione, semplice in casi semplici. Partiamo dalla constatazione che una matrice A pu venire diagonalizzata con lo sviluppo
in autovettori - autovalori. Si ha cio:
A = UQU
dove U la matrice degli autovettori di A, ortogonale, e quindi con
determinante unitario. Quindi la trasformazione indotta da A decomponibile nella cascata di una rotazione N dimensionale (la matrice U),
uno scalamento di coordinate diverso da coordinata a coordinata (la matrice diagonale Q che ha come elementi della diagonale principale gli
autovalori di A, qi ) ed una rotazione di coordinate opposta alla precedente (la matrice U = U1 ). Lo scalamento dei volumi ovviamente
pari al prodotto dei moduli dei fattori di scala lungo le coordinate, e
quindi al prodotto dei moduli degli autovalori, che appunto il modulo
del determinante. Si osservi che nella formula compare appunto:
1/2

|Ry |

N
x

q
N
Y
2
N

|U| Q |U | = x
|qi |
n=1

Nel caso di autovalori nulli, la trasformazione singolare, la nuova densit di probabilit non occupa tutto lo spazio, e infatti lungo alcune
dimensioni corrisponder ad un impulso ideale posto sullo zero (uscita
sistematicamente nulla).
La generalizzazione della dimostrazione della 11.3 al caso di vettori
casuali complessi formalmente immediata, ma piuttosto laboriosa e
verr omessa. Nel paragrafo successivo si analizza il caso di vettori casuali
corrispondenti a sequenze stazionarie, troncate.

11.2

Matrici di covarianza di sequenze filtrate

Consideriamo una sequenza di campioni {y1 , y2 ....yN } ordinata in un vettore y . La sequenza {y1 , y2 ....yN } generata dalla convoluzione tra una
229

CAPITOLO 11 PROCESSI CASUALI: GENERALIT

sequenza bianca (ordinata in un vettore x ) ed un filtro che ha risposta allimpulso lunga M campioni, fm = {f1 , f2 ....fM }. La convoluzione tron
cata dopo N campioni e sia anche N >> M. Ponendo r = E[yn yn
], la
matrice di covarianza del vettore Ry sar:

r r1 r2 .. r1N
0

r1 r0 r1 .. ..

(11.6)
Ry = r2 r1 r0 .. ..

..
.. .. .. ..

rN1 .. .. .. r0
yn =

M
X

xnm fm ; r =

E[yn yn
]

m=1

2x

M
X

fm fm
= 2x rf ( ) (11.7)

m=1

In sostanza, tutte le righe di Ry sono eguali (a parte eetti di bordo) e


contengono la replica di r funzione di autocorrelazione della sequenza yn
sfalsata progressivamente di un passo ogni riga. Ry avr cio struttura
di Toeplitz, con gli elementi della diagonale principale tutti eguali tra
loro ed eguali ad r0 , gli elementi delle subdiagonali ancora eguali tra
loro ma eguali a r1 , r2 ecc. Si osservi, che nel caso di variabili casuali
complesse, rn = rn e quindi la matrice di covarianza risulta a simmetria
hermitiana. Ancora, se la correlazione si riduce a zero per = M ben
prima dellN esimo campione, e cio per:
rM = 0; M << N

(11.8)

gli elementi della matrice Ry saranno nulli al di fuori di una banda


di diametro 2M attorno alla diagonale principale (banded matrix, in
inglese).
utile avere un idea della struttura della matrice R1
y . Indichiamo
con rg ( ) lautocorrelazione di un filtro gm che sbianca il filtro fm . Si
abbia cio, indicando con la doppia freccia la corrispondenza indotta
dalla trasformazione di Fourier,
{fm } F () ; {gm } G () ;
|G ()| =
230

1
|F ()|

11.2 MATRICI DI COVARIANZA DI SEQUENZE FILTRATE

rf ( ) |F ()|2 ; rg ( ) |G ()|2 =

1
|F ()|2

rf ( ) rg ( ) ( )

(11.9)

Si osservi che la caratteristica di fase del filtro gm qualsiasi: basta che il


modulo della sua trasformata sia inverso del modulo della trasformata
di fm . La matrice R1
y ancora una matrice di Toeplitz, ma ogni sua
riga contiene rg ( ) / 2x invece che 2x rf ( ) . Infatti, facendo il prodotto
righe per colonne delle due matrici Ry R1
y , si ottiene una matrice
ancora di Toeplitz a banda che contiene in ogni riga la convoluzione di
rf ( ) e di rg ( ) che un impulso ideale, per costruzione (11.9). Quindi il
prodotto delle matrici una matrice identica, e questo conferma che R1
y
ha appunto la struttura che abbiamo visto, almeno approssimativamente.
Si trascuri il fatto che il filtro inverso (e quindi la sua autocorrelazione)
sar di lunghezza infinita.
Per fare un esempio, che verr riutilizzato pi avanti, consideriamo
due matrici [NN], Mp , Mz luna inversa dellaltra. La prima, Mp , corrisponde
allo spettro di un polo ed esattamente di Toeplitz. Una riga

Mp 2m ..., 2 , , 1, , 2 ..

2 2
Mp = m

..

..

..

..

.. ..

..

..

.. 2

(11.10)

La seconda matrice, Mp,inv , corrisponde allo spettro di uno zero, con


grande approssimazione ancora di Toeplitz, a parte la prima e lultima
riga: una riga centrale
Mp,inv

1
2
,
,
0,
0,
0..
;
...0,
0,
0,
0,
,
1
+

2m (1 2 )
231

CAPITOLO 11 PROCESSI CASUALI: GENERALIT

ma mp,inv,11 = mp,inv,NN = 1.

Mp.inv = 2
0
2
m (1 )

..

0
2

1+

..

1 + 2

..

..

..

Orbene:

0
..

..
..

(11.11)

(11.12)

Mp Mp,inv = I
Questa accade perch:

H (z) = 1 z 1 ; |H (z)|2 = 1 + 2 z + z 1 ;

(11.13)

ed anche:

1
1
1
=
2 =
2
1
1 + (z + z )
1 2
|H (z)|

1
1
+
1
1 z 1 1 z
(11.14)

da cui le righe centrali delle due matrici.

11.2.1

Matrici di covarianza di trasformate

Consideriamo ancora la sequenza di variabili indipendenti identicamente


distribuite (bianca) {xn } convoluta con un filtro {fm } in modo da risultare
colorata; come appena visto, la matrice di covarianza della sequenza
risultante {yn } = {xn } {fm } sar Ry .

r r r ... 0
0 1 2

r1 r0 r1 . . . 0

r2 r1 r0 . . . 0

Ry =

... ... ... ... ...

0 0 ... r0 r1

0 0 .. r1 r0
232

11.2 MATRICI DI COVARIANZA DI SEQUENZE FILTRATE

Calcoliamo ora la matrice di covarianza della trasformata di Fourier di


una sequenza reale e bianca {xn } e di lunghezza limitata N, e cio la
matrice di covarianza della sequenza {Xk } dove:
Xk =

N1
X

xn W nk

(11.15)

n=0

Indicando ora con X il vettore le cui componenti sono i campioni della


sequenza {Xk } si ha:
(11.16)
X=Wx
dove W una matrice che corrisponde alla trasformazione di Fourier
diretta (attenzione! non una matrice hermitiana!). La matrice di
covarianza relativa al vettore X :
RX = E[X X ] = E[W x x W ] = WE[x x ] W = W R W
(11.17)
Indicando con Ak e Bk la parte reale ed immaginaria di Xk , si pu
verificare che, poich la sequenza {xn } bianca e reale:
Xk = Ak + jBk ;
E[Ak Bh ] = 0; k, h;
E[A2k ] =

E[Ak Ah ] = E[Bk Bh ] = 0; |k| 6= |h|

(11.18)

N 2
[1 + (k) + (k N/2)]
2 x

(11.19)

E[Bk2 ] = E[A2k ]; k = 1, ....N/2 1


E[Bk2 ] = 0; k = 0, N/2
Infatti, le relazioni precedenti si possono dedurre dal fatto che:
E[Xk Xh ]

N1
X N1
X

E[xn xm ]W nk W mh =

n=0 m=0

2x

N
1 N1
X
X
n=0 m=0

(n m)W

nk

mh

2x

N
1
X
m=0

= N 2x (h k);
233

W m(hk) =

CAPITOLO 11 PROCESSI CASUALI: GENERALIT

Relazioni simili si possono scrivere per le parti reali ed immaginarie degli


Xk . Se invece la sequenza {xn } fosse bianca e complessa, si avrebbe:
E[Ak Bh ] = 0; E[Ak Ah ] = E[Bk Bh ] = 0; k 6= h

(11.20)

E[A2k ] = E[Bk2 ] = N 2x /2
Si possono ottenere gli stessi risultati in modo diretto, osservando che:
X = W x;

x=

1
1
W X = W W x
N
N

1
1
1
W W = W W = I (W )1 = W
N
N
N

2
RX = W Rx W = N x I

(11.21)

Quindi la trasformata di Fourier di una sequenza complessa i.i.d. (bianca)


bianca (i campioni sono incorrelati); se la sequenza di partenza reale,
vanno sempre tenute in conto le simmetrie.
Ora, convolviamo periodicamente la sequenza {xn } di lunghezza
limitata N, con un qualsiasi filtro {hn } di eguale lunghezza N (o diventato
tale dopo unaggiunta di zeri). La matrice di covarianza della sequenza
{yn } = {xn } {hn } proprio circolante e cio tutte le sue righe sono
esattamente eguali a meno di uno slittamento progressivo verso destra.

r r 0 . . . r1
0 1

r1 r0 r1 . . . 0

0 r1 r0 . . . 0

Ry =

... ... ... ... ...

0 0 0 . . . r1

r1 0 ... r1 r0

La trasformata di Fourier discreta della sequenza {xn }, {Xk } verr moltiplicata per {Hk }, Trasformata di Fourier discreta della sequenza {hn }.
Si ha cio, se:
{xn+N } = {xn }; {hn+N } = {hn };
(11.22)
{yn } = {hn } {xn } {yn+N } = {yn }
234

(11.23)

11.2 MATRICI DI COVARIANZA DI SEQUENZE FILTRATE

Xk =

N1
X

xn W nk ;

Hk =

n=0

N
1
X

hn W nk ;

(11.24)

n=0

Yk = Xk Hk ;

yn =

1
N

N1
X

Yk W nk

(11.25)

k=0

Indicando con vettori sia la sequenza {Xk } che la {Yk } e con una moltiplicazione matriciale leetto dellapplicazione della funzione di trasferimento {Hk } risulta:

X0
Y0
H
0 0
0
0

X1
Y1
0 H1 0
0
0

;
Y
;
H
=
=
X =

0 0 ..
0
0
..
..

0 0 0 HN2
..
..
0

XN1
YN1
0 0 0
.. HN1
Y=HX

Anzitutto,
RX = E [XX ] = N 2x I

(11.26)

Infatti,
N1
N1
X
X

2
nk
mk
E |Xk | =
E [xn xm ] W
W =
E |xm |2 = N 2x (11.27)
m,n=0

n=0

La matrice di covarianza della sequenza Y, RY sar anchessa diagonale,


ma gli elementi della diagonale principale avranno ora valore N 2x |Hk |2 .
RY = E [H X X H ] = H RX H =

|H0 |2

2
= N x ...

...

...

...

...

...

...

... |HN2 |2

...

|H1 |

235

0
|HN1 |2

(11.28)

CAPITOLO 11 PROCESSI CASUALI: GENERALIT

Questo implica che le componenti della Trasformata di Fourier discreta


di una qualsiasi sequenza colorata (filtrata) {yn } ottenuta convolvendo
periodicamente una sequenza bianca con una sequenza qualsiasi {hn }
di pari lunghezza, sono incorrelate, anche se di diversa varianza.
In altre parole, i campioni di una sequenza stazionaria colorata sono
correlati ed i campioni della loro Trasformata di Fourier discreta sono
incorrelati, ma la loro varianza cambia con la frequenza.
Vediamo di nuovo ora la struttura della matrice di covarianza della
sequenza {yn } convoluzione periodica delle due sequenze {xn } e {hn },
nel caso semplice in cui solo r0 , r1 siano diversi da 0;

Ry = E[y y ]
r0

r1

0
Ry =

...

r1

r1 0

(11.29)

. . . r1

r0

r1 . . .

r1

r0

...

... ... ...


0

...

...

...

r1

r0

(11.30)

Come gi visto, la matrice di covarianza di una sequenza stazionaria Ry


ha struttura hermitiana e cio simmetrica se reale o a simmetria
coniugata se complessa. Inoltre, ha struttura di Toeplitz e cio gli elementi lungo la diagonale e le subdiagonali sono costanti. Inoltre, a causa
del fatto che la convoluzione stata fatta in modo periodico, la matrice
Ry circolante e cio ogni riga ottenuta dalla precedente con lo slittamento di un posto e mettendo lultimo campione al posto del primo.
La m-esima riga della matrice Ry quindi lautocorrelazione circolare

del segnale {yn }, rmn = E[yh yh+mn


]; ricordiamo inoltre la periodicit N
delle sequenze {yn }, {hn }.
Se la sequenza {hn } ha appunto solo due campioni diversi da zero,
la Ry ha struttura tridiagonale, come mostrato nellequazione (11.30).
Si osserva pertanto che, se la sequenza {hn } corta rispetto ad N, la
periodicizzazione cambia solo pochi elementi della matrice di covarianza.
Questo fatto ci porta a concludere che in pratica, convolvendo sequenze lunghe di campioni indipendenti con filtri corti, la matrice di
236

11.3 MATRICI DI TOEPLITZ: AUTOVALORI

covarianza risultante dalla convoluzione periodica poco dierente da


quella risultante dalla convoluzione aperiodica: quindi gli elementi della
trasformata di Fourier di un sequenza ottenuta finestrando un segnale
complesso stazionario, bianco o colorato che sia, tendono ad essere indipendenti. Se il segnale reale, ci si deve ricordare delle relazioni di
parit e disparit delle parti reali ed immaginarie.

11.3

Matrici di Toeplitz: autovalori

Si consideri una matrice di covarianza Rx di Toeplitz (e cio con le diagonali parallele alla diagonale principale composte da elementi eguali).
La matrice Rx essendo di covarianza e cio
Rx =E[x x ]
simmetrica se la sequenza di partenza reale; altrimenti a simmetria
Hermitiana (la trasposta eguale alla coniugata). E intuitivamente attraente collegare gli autovalori e gli autovettori di matrici di questo tipo
allo spettro di potenza del processo cui appartiene il vettore casuale x che
ha appunto Rx come matrice di covarianza. Ricordiamo che una matrice
Rx ha autovalori i (che vedremo corrispondere alle energie spettrali) e
autovettori colonna ei (corrispondenti alle sinusoidi di varia frequenza)
tali che:
Rx ei = i ei
(11.31)
In forma matriciale si ha:
E Rx E = ;

E1 = E

(11.32)

dove la matrice ortogonale E corrisponde agli N autovettori colonna


ei , la matrice E agli autovettori riga ei ( sia linversa che la trasposta
della precedente, con coniugio se hermitiana) ed infine la matrice
diagonale, e contiene lo spettro degli autovalori della matrice Rx .

1 0 ... 0
0

0 2 ... 0
0

= ... ... ... ... ...

0 0 ... N1 0

0 0 ... 0 N
237

CAPITOLO 11 PROCESSI CASUALI: GENERALIT

h
i
E = e1 e2 ... eN1 eN

Dimostriamo ora che i 0 e quindi che la matrice R semidefinita


positiva. Infatti, sia a x una qualsiasi combinazione lineare degli elementi
del vettore x. Il suo valore quadratico medio maggiore od eguale a zero:
E[a x a x] = a E[x x ]a = a Rx a 0

(11.33)

Se a un autovettore della matrice Rx risulta:


ei Rx ei = i 0

(11.34)

e quindi tutti gli autovalori di una matrice di covarianza, come le componenti di uno spettro di potenza, sono maggiori o eguali a 0. Inoltre, per
la simmetria della matrice, due autovettori ei , ej corrispondenti a due
autovalori i ,j distinti, sono ortogonali, cos come due sinusoidi campionate di frequenza diversa, nel senso che la media del loro prodotto
nulla. Infatti:
ei Rx ej = j ei ej = i ei ej ei ej = 0
Ancora consideriamo due variabili casuali z1, z2 combinazione lineare
degli elementi della sequenza {xn }:
z1 = a1 x; z2 = a2 x
Risulta ora:
E[z1 z2 ] = a1 Rx a2
e le due variabili casuali z1, z2 sono incorrelate se E[z1 z2 ] = a1 Rx a2 = 0
e cio se i due vettori a1 , Rx a2 sono ortogonali; in questo caso i due
vettori a1 , a2 sono definiti come ortogonali coniugati e se ne discuter
nel capitolo 20.
Si ricorda ancora che la traccia di una matrice pari alla somma degli
autovalori, ed infine il determinante pari al loro prodotto.
Supponiamo ora che la funzione di autocorrelazione della sequenza
{xn } tenda a 0 per valori di << N ; la circolarizzazione della matrice
Rx non cambia la matrice di covarianza in modo significativo (la cambia
solo negli angoli).
238

11.3 MATRICI DI TOEPLITZ: AUTOVALORI

11.3.1

Autovettori ed autovalori di matrici di covarianza circolanti

Consideriamo ora la relazione tra una sequenza complessa filtrata con


una convoluzione periodica e la sua trasformata di Fourier discreta:
Y=Wy

(11.35)

dove con W abbiamo indicato la matrice della trasformazione di Fourier


diretta. Inoltre:
RY = E[Y Y ] = H RX H = WE[y y ]W = W Ry W

(11.36)

dove con RY abbiamo indicato la matrice diagonale che contiene le


ampiezze, moltiplicate per N, del periodogramma della sequenza {yn };
infatti abbiamo dimostrato in precedenza che E[Y Y ] diagonale. Possiamo anche scrivere che:
Ry =

1
R
1
1
1
W RY W = W Y W
N
N
N
N
N

(11.37)

e cio che la sequenza {yn }, ottenuta con una qualsiasi convoluzione


periodica di un filtro e di una sequenza a spettro bianco, ha una matrice
di covarianza circolante Ry che diagonalizzata dalla trasformazione di
Fourier; in altre parole, la sequenza {Yk } trasformata di Fourier della
sequenza {yn }, ha matrice di covarianza RY diagonale. In particolare, la
matrice
W

N
ortogonale, in quanto inversa della sua trasposta
e coniugata. Infatti,
le sinusoidi sono qui normalizzate per il fattore 1/ N in modo da avere
energia unitaria.
Quindi, gli autovettori della matrice di covarianza Ry di una sequenza
ottenuta da una convoluzione periodica di una sequenza bianca ed un
filtro qualsiasi sono
le sinusoidi discrete di frequenza k/NT ; 0 k N
1 ed ampiezza 1/ N; gli autovalori sono le ampiezze del periodogramma.
Nel caso di una matrice di covarianza di un segnale qualsiasi e non
di una matrice di covarianza circolante, gli autovalori sono comunque
non negativi e gli autovettori sono comunque ortogonali tra loro: non
saranno per sinusoidi vere e proprie, ma gli assomiglieranno abbastanza.
239

CAPITOLO 11 PROCESSI CASUALI: GENERALIT

Lordinamento dello spettro degli autovalori diverso per da quello dello


spettro di frequenza di una sequenza: lo spettro di frequenza di una
sequenza ordinato sulla base della frequenza degli autovettori (lindice
k); lo spettro degli autovalori di una matrice in genere ordinato per
autovalori decrescenti, visto che non possibile definire una vera e propria
frequenza per ogni autovettore.

11.3.2

Ancora la densit di probabilit di un vettore


casuale

Possiamo ora riconsiderare la formula 11.3, che riportiamo qui per comodit.
y R1
1
y y
)
(11.38)
exp (
p(y) =
N/2
2
(2) |Ry |1/2
Ora, nel caso di campionamento delle frequenze e periodicit nei empi, con sequenze filtrate periodicamente e quindi con autocorrelazioni
circolanti, utilizzando la rappresentazione di un vettore mediante le componenti con autovettori e cio ponendo:
X
y=
k ek ; k = y ek
(11.39)

si ha:

y R1
y y =

k ek R1
y ek k

(11.40)

Ora, gli autovettori sono le sinusoidi a frequenze discrete campionate, le


componenti k coincidono con le componenti di Fourier discrete Yk , gli
autovalori sono i valori assunti dal quadrato del modulo della funzione
di trasferimento |Fk |2 , risulta:
N1
X Yk 2 N1
X
1
=
|Xk |2
(11.41)
y Ry y =
Fk
k=0
k=0

N
1
X
Yk 2
1

)
exp (
p(y) =

F
(2)N/2 |N
|F
|
|
k
k
k=0
k=0

(11.42)

Quindi si evince da queste formule lovvia conseguenza che, alle frequenze


dove lo spettro del segnale basso, le componenti del segnale sono, con
grande probabilit, di assai piccola potenza: conseguenza banale di una
formula apparentemente arcana.
240

11.3 MATRICI DI TOEPLITZ: AUTOVALORI

11.3.3

Un esempio numerico

Si consideri una sequenza di N = 4 campioni casuali, a valor medio nullo


e varianza unitaria e si indichi con x il vettore corrispondente:

x
1 0 0 0

x1

0
1
0
0

=I
; E [xx ] = Rx =
x=

x2
0 0 1 0

0 0 0 1
x3
Convolviamo periodicamente x con il filtro:

1


1

f =

0

0

ed otteniamo il vettore y le cui componenti sono:


yi = xi + xi+1 ; i = 0, ...3; x4 = x0

per la ciclicit

In termini matriciali si ha:


y=Ax
dove

0
A=

1 0 0

1 1 0

0 1 1

0 0 1

Calcoliamo ora Ry , la matrice di autocovarianza di y, circolante per la


ciclicit della convoluzione:

2 1 0 1

1 2 1 0

Ry = E y y = A Rx A =

0 1 2 1

1 0 1 2
241

CAPITOLO 11 PROCESSI CASUALI: GENERALIT

come si potrebbe ottenere direttamente dalla funzione di autocorrelazione


della sequenza {yi }, [1 2 1] periodicizzata anchessa. Il filtraggio passa
- basso fatto con la convoluzione con il filtro f comporta uno zero alla
frequenza di Nyquist, visto che il numero dei campioni della sequenza
pari. Infatti il vettore F trasformata di Fourier di f, :

2
1
1 1 1 1

1 j 1 j 1 1 j

=
F=W f =

1 1 1 1 0 0

1+j
0
1 j 1 j

Il vettore Y , trasformata di Fourier di y si ottiene moltiplicando il


vettore X trasformata di Fourier di x per una matrice che ha lungo la
diagonale principale gli elementi di F. Si ha cio:

X0
2 0 0 0

0 1 j 0 0 X1

=Wx

Y=Wy=

0 0 0 0 X3

0 0 0 1+j
X4
Si ha ancora:

E [Y Y ] = E [X X ]
Peraltro:
E [X X ] = 4I
e quindi

4 0

0 2
E [Y Y ] = RY = 4

0 0

0 0

0 0

0 0

0 0

0 2

Da unanalisi diretta, peraltro evidente che la matrice Ry ha un autovalore nullo e lautovettore corrispondente la sinusoide alla frequenza
242

11.3 MATRICI DI TOEPLITZ: AUTOVALORI

di Nyquist.

1
1

Ry

=0
1
1

1
1

Per avere gli altri autovalori ed autovettori di Ry , si puo anche ricorrere


alla trasformazione di Fourier discreta che diagonalizza la matrice, come
gi osservato. Se
Y = Wy;

E [Y Y ] = W Ry W = RY

2
4 0 0 0
|F |
0
0
0

2
0 2 0 0
0 |F1 |
0
0
RY

=
=1

2
N

0
0 0 0 0
0 |F2 |
0

2
0 0 0 2
0
0
0 |F3 |

La matrice Ry diagonalizzata dalla trasformazione di Fourier poich:

1
1
W Y W1 = W
N
N
1
R
1
1
1
Ry = W RY W = W Y W
N
N
N
N
N
Gli autovettori normalizzati della matrice Ry sono appunto le sinusoidi

(le righe o le colonne della matrice W) la cui ampiezza 1/ N perch


la somma dei quadrati sia unitaria. Pertanto, gli autovalori della matrice Ry sono proprio gli elementi della diagonale principale della matrice
RY /N (il periodogramma) ed in questo caso:
y=

[4, 2, 0, 2]
Infatti:

1/2

2 1 0 1/2
=4

1 2 1 1/2

1/2
0 1 2
1 0 1

243

1/2

1/2

1/2

1/2

CAPITOLO 11 PROCESSI CASUALI: GENERALIT

2 1 0 1

j
1 2 1 0 j

=2

1
0 1 2 1 1

j
j
1 0 1 2

11.4

Stime di autovalori di matrici di covarianza

La matrice di covarianza si ottiene dallespressione teorica:


R = E [x x ]
Le dimensioni del vettore xi sono [1 N] e la matrice R ha quindi dimensioni [N N] . In realt poi non possibile disporre del valore atteso
E [] , ma se ne possono solo fare delle stime; in altre parole ci dobbiamo
b ottenuta combinando M
accontentare di una stima non polarizzata R
realizzazioni del vettore casuale xi ; i = 1...M. :
M
N
M
X
1 X
1 X

b
b
b
R=
n =
x x ; Tr R =
xx
M i=1 i i
M i=1 i i
n=1

(11.43)

h i M
h i
b =
b = R; E Tr R
N 2x = N 2x
E R
M
Tutto La stima ragionevole se:
=

N
<<< 1
M

Allora, le stime non sono molto disperse attorno ai valori attesi e il


risultato derivante dallequazione 11.43 accettabile. In particolare,
bn , n = 1..N, autovalori di R,
b sono delle ragionevoli stime dei n , n =

1..N, autovalori di R, e similmente per gli autovettori corrispondenti. Tuttavia, non sempre possibile essere in questa situazione e pu
accadere che invece addirittura sia:
>1
244

11.4 STIME DI AUTOVALORI DI MATRICI DI COVARIANZA

Cosa accade allora? evidente che N M > 0 autovalori della matrice


b somma di M diadi (prodotti
sono proprio nulli, perch la matrice R
xi xi ) e il suo rango non superiore a M. Peraltro, la traccia della matrice
b e quindi la somma dei suoi autovalori (contano solo quelli non nulli)
R
bn , ha sempre valore atteso N 2 e dispersione ridotta trattandosi di un

x
numero solo risultato della media di MN quadrati di numeri non tanto
b sono strizzati
dipendenti tra loro. Quindi, gli M autovalori non nulli di R
ed hanno cio un valore atteso medio anche molto pi grande in quanto
si devono spartire tra M valori la potenza totale di N campioni.
h i
bn = 2 ; n = 1..M ;
bn = 0; n = M + 1, .., N ;
E
x
In casi intermedi in cui M non grande come si desidererebbe, la matrice
b tende ad essere comunque deficiente in rango; quindi, gli autovalori
R
stimati pi piccoli sono pi piccoli del valore corrispondente, mentre il
valore atteso della stima dellautovalore pi grande diventa pi grande
del valore corretto.
i
i
h
h
b
b
E max > max ; E min < min

b della matrice R non polarizzata, le stime


Per cui, anche se la stima R
degli autovalori lo sono. disponibile il limite della densit di probabilit
b di una matrice di
degli autovalori di uno stimatore campionario R
covarianza di un vettore casuale di N dimensioni con M campioni (la
distribuzione di Pastur-Marchenko g (), vedi su Wikipedia, ed in figura
11.1); i risultati sono ottenuti nel caso in cui i campioni osservati sono
indipendenti a varianza 1/N e N, M tendono entrambe ad infinito, con
N/M = .

g ()
1
p () = 1
() +
; se > 1
(11.44)

p () = g () se < 1
q
1
g () =
4 [ (1 + )]2
2

(1 )2 < < (1 + )2

245

(11.45)
(11.46)
(11.47)

CAPITOLO 11 PROCESSI CASUALI: GENERALIT

Figura 11.1: Densit di probabilit degli autovalori di matrici casuali per


=0.01, 0.03, 0.1, 0.3,. 0.5. Se = 0.01, p.e., si hanno 100 realizzazioni
per ogni variabile casuale, e quindi ragionevole che la stima della potenza oscilli in un intervallo di circa il 10%. Il caso = 0.5 (2 realizzazioni
per ogni variabile casuale) corrisponde alla distribuzione delle potenze
delle componenti di un periodogramma di una sequenza casuale bianca,
con media pari a 1.

246

11.5 FLUTTUAZIONE DEI CORSI DEI TITOLI DI BORSA

11.5

Fluttuazione dei corsi dei titoli di borsa

Il problema della dispersione degli autovalori di matrici causali diventa di


notevole interesse nel caso dellanalisi delle fluttuazioni del corso di titoli
in borsa, p.e. per la costruzione di portafogli di titoli a rischio minimo. In
questi casi, si cerca di verificare se le fluttuazioni del corso di due titoli
siano anticorrelate o correlate o incorrelate. Il tipico esempio quello
delle azioni di compagnie di aerolinee e di compagnie petrolifere: se sale
il prezzo del petrolio, i titoli delle aerolinee scendono e quelli delle petrolifere salgono, e quindi le fluttuazioni dei corsi dei titoli rispettivi saranno
anticorrelate; infatti, ci si attende che i profitti delle une scendano e quelli
delle altre salgano. Allora, chi volesse rendersi indipendente dalle fluttuazioni del costo del petrolio, comprerebbe un giardinetto composto da
titoli sia delle une che delle altre, in modo da minimizzare quel rischio.
Gli autovettori della matrice di covarianza forniscono giardinetti di titoli
le cui fluttuazioni sono incorrelate. Poi ci saranno giardinetti a massima
fluttuazione (lautovettore corrispondente allautovalore massimo) ecc.
Il problema per che ci sono migliaia di titoli in borsa (N), e
pochissimi anni (M) su cui fare delle statistiche, peraltro tempo varianti. Quindi, non si avrebbe comunque nessuna utilit a risalire troppo
indietro nel tempo per arricchire le statistiche; ancora, non si ha molta
utilit a sovracampionare temporalmente (p.e. rilevando i corsi ogni ora
od ogni giorno), perch poi si ha a che fare con campioni correlati tra
loro e scarsamente utili per ridurre la varianza della stima. Gli analisti
finanziari sono praticamente sempre nella condizione M < N e quindi
devono ricordare bene che le loro stime della matrice di covarianza delle
fluttuazioni di migliaia di titoli sono matrici di rango sempre ridottissimo e le stime degli autovalori sono polarizzate. Una soluzione a questo
problema la parametrizzazione e quindi la riduzione della dimensionalit della matrice di covarianza. Si veda p.e. il lavoro: Ledoit, O. and
Wolf, M. , Honey, I Shrunk the Sample Covariance Matrix (June 2003),
UPF Economics and Business Working Paper No. 691). Si possono raggruppare i titoli in comparti (aziende di semiconduttori, supermercati,
aerolinee, assicurative, petrolifere, acciai, ecc.) e si studia la matrice di
covarianza di dimensioni molto pi ridotte che corrisponde alla covarianza delle fluttuazioni medie dei titoli di un comparto rispetto a quelle dei
247

CAPITOLO 11 PROCESSI CASUALI: GENERALIT

titoli di un altro comparto. Poi, allinterno di ogni comparto, si studiano


le caratteristiche rispettive delle varie aziende. Se va bene per una, ci si
aspetta che vada bene per tutte, e viceversa ... Quindi accade in borsa il
fenomeno apparentemente strano per cui se p.e. unazienda di semiconduttori o di farmaceutici dichiara profitti (o perdite) eccezionali, tutto il
comparto ne risente positivamente (o negativamente). Eppure, sarebbe
ragionevole indurre che per i meccanismi di concorrenza in un mercato
limitato, il valore di un comparto dovrebbe essere bilanciato, per cui se ad
unazienda va meglio, alle altre dovrebbe andare peggio. Ma non cos:
solo in momenti successivi sar compito degli analisti di borsa ricostruire
esattamente la posizione concorrenziale di unazienda rispetto alle altre
e ribilanciare i pesi delle aziende nel comparto, stabilendo se unazienda
sia meglio gestita di un altra, ecc. Peraltro, possono poi nascere compagnie diversificate che operano contemporaneamente in diversi comparti e
possono compensare, allinterno dei loro bilanci, profitti e perdite degli
uni e degli altri. Questi conglomerati sono essere meno trasparenti e pi
dicili da studiare e da categorizzare.

11.6

Stima a massima verosimiglianza (Wikipedia)

Il metodo della massima verosimiglianza (in inglese Maximum Likelihood, e in breve ML) in statistica un procedimento matematico per
determinare uno stimatore. Il metodo consiste nel massimizzare la funzione di verosimiglianza, definita in base alla probabilit di osservare una
data realizzazione campionaria, condizionatamente ai valori assunti dai
parametri oggetto di stima. Il metodo stato originariamente sviluppato
dal genetista e statistico Sir Ronald Fisher, tra il 1912 e il 1922.

11.6.1

Il metodo

Dato un paramentro , caratterizzato da una distribuzione di probabilit


D , con densit di probabilit LD , e dato un campione di dati osservati
{xi }N
i=1 di dimensione N funzione del parametro , si pu calcolare la
probabilit associata ai dati osservati.

N
N
P {xi }i=1 | = LD | {xi }i=1
248

(11.48)

11.6 STIMA A MASSIMA VEROSIMIGLIANZA (WIKIPEDIA)

Il parametro ignoto, sebbene sia noto che estratto dalla distribuzione D. Utilizziamo i dati a nostra disposizione, {xi }N
i=1 , per valutare . Il metodo della massima verosimiglianza ricerca il valore pi
verosimile di , ossia ricerca, tra tutti i possibili valori di , il valore del
parametro che massimizza la probabilit di aver ottenuto
il campione daN
to. Da un punto di vista matematico, LD | {xi }i=1 detta funzione
di verosimiglianza, e lo stimatore ML ottenuto come:
b
= arg max LD (|x1 , x2 , ..xN )

(11.49)

Esempio

Si consideri un campione {xi }N


i=1 di variabili casuali identicamente e indipendentemente distribuite, con distribuzione gaussiana a media e
varianza 2 , ignote. La funzione di verosimiglianza associata :

LD , 2 |x1 , x2 , ..xN =

N
Y

p(xi ) =

i=1

1
(2)N/2 N

exp

XN

i=1

(xi )

2 2

(11.50)
Massimizzare la funzione di verosimiglianza come massimizzarne il
logaritmo che a meno di costanti :

log (LD (|x1 , x2 , ..xN )) = N log

XN

i=1

(xi )2

2 2
Le stime dei parametri
b,
b sono determinate annullando le derivate
b,
b:
di log (LD (|x1 , x2 , ..xN )) rispetto a
XN

i=1

N
b

N
X
i=1

(xi
b)

= 0
b=

(xi
b)2 = 0
b=

X xi

v N
u XN
P xi 2
u
xi
t
N
i=1
N

Questo esempio illustra alcune propriet degli stimatori ML. Si osserva che
b uno stimatore non polarizzato e cio il suo valore atteso
249

CAPITOLO 11 PROCESSI CASUALI: GENERALIT

coincide con il valore vero.


E [b
] =
Invece,
b non gode di tale propriet. Si verifica che:
2 N 1 2

E
b =
N

Lo stimatore di massima verosimiglianza comunque uno stimatore


asintoticamente non polarizzato; infatti per N :
2
b = 2
lim E

In particolare, si dimostra che uno stimatore ML sempre asintoticamente (N ) non polarizzato e asintoticamente normalmente
distribuito.
Consideriamo ora il caso in cui i campioni della sequenza osservata,
indicati con yn , siano correlati, e cio ottenuti filtrando una sequenza i.i.d
xn con un filtro fm . La stima ML della loro varianza sarebbe da eettuarsi
usando non direttamente i campioni correlati yn , ma i campioni sbiancati
xn : infatti compare nella funzione di verosimiglianza la seguente funzione
dei dati:

(11.51)
y R1
y y x x
che abbiamo visto in un paragrafo precedente potersi ottenere filtrando
i dati yn con un filtro gm la cui caratteristica di ampiezza inversa a
quella del filtro fm . Incidentalmente, si osservi che la sequenza sbiancata
x coincide con quella originaria di ingresso al filtro fm , ma solo a meno
dell eetto di uno sfasatore puro qualsiasi, che altera la sequenza ma
non la sua autocorrelazione. Infine, questo sbiancamento ecace e
perfettamente possibile, ma solo in teoria: nei fatti, la presenza di rumore
additivo rende dannoso lo sbiancamento a quelle frequenze dove il livello
del segnale attenuato scende sotto il livello del rumore. Lo sbiancamento
perfetto possibile solo se il rumore assente.
Supponiamo ora che la coloratura del dato sia vista come il risultato
di un filtraggio ideale, con riduzione della banda di un fattore 1/L. Il
segnale colorato potr essere decimato 1 : L, senza perdere informazione,
e senza peggiorare la situazione nei riguardi del rumore, almeno in banda
passante. La sequenza decimata una sequenza i.i.d., ma questa volta
con N/L campioni, invece di N. Allora, il filtraggio ideale 1 : L comporta
250

11.6 STIMA A MASSIMA VEROSIMIGLIANZA (WIKIPEDIA)

la crescita della dispersione della stima di un fattore L, irrecuperabile. Un


risultato simile viene trovato nel paragrafo in cui si analizza la dispersione
della stima della potenza di una sequenza correlata.
Sarebbe invece molto complessa la trattazione completa ML della
stima di una varianza di un segnale, tenendo conto sia del rumore additivo che del filtraggio. Si avrebbero per risultati ottimali, pesando
opportunamente il segnale nelle varie bande in fuzione della potenza del
rumore.

11.6.2

Dicolt del metodo; stima di una media

Pu accadere che il valore dello stimatore ML non appartenga allo spazio


dei parametri; lo stimatore pu poi non essere unico. Ancora, loperazione di massimo pu essere dicile da eettuare: si pensi al caso di
variabili a distribuzione uniforme, o a masse impulsive. Per esempio, si
voglia stimare una percentuale di popolazione, p.e. i fumatori. Indicando con p la probabilit di appartenere a tale categoria, considerando
una variabile casuale xi che valga 1 se la persona i-esima fuma e zero
altrimenti, la densit di probabilit della variabile xi

p (x) = (1 p) (0) + p (1) ; E [x] = p; E x2 = p;
(11.52)
E [xi xj ] = p se i = j; E [xi xj ] = p2 se i 6= j;
Una stima non polarizzata di p facilmente ottenuta come:
pb =

X xi
N

; E [b
p] =

La varianza di questo stimatore :

X E [xi ]
N

=p

X E [xi xj ]

var (b
p) = E pb2 E [b
p2 =
p]2 =
2
N
i,j

1
p (1 p)
Np + (N 2 N)p2
<
p2 =
=
2
N
N
4N

(11.53)

Per avere con una significativa probabilit che lerrore commesso nella valutazione di p sia inferiore p.e. a 1%, si deve ragionevolmente
dimensionare N in modo che
1

<< 0.01 N >> 2500


4N
251

CAPITOLO 11 PROCESSI CASUALI: GENERALIT

Poi, si pu rendere pi precisa questa valutazione almeno dal punto di


vista statistico, imponendo la probabilit che lerrore sia inferiore ad una
certo valore, come fatto nella sezione 10.2.1. Arrivare a questo semplice risultato dalla stima a massima verosimiglianza sarebbe piuttosto
complesso.

11.6.3

La stima lineare MMSE

Un caso molto frequente cui si applicano bene i metodi probabilistici


quello di un modello lineare in presenza di una distribuzione di probabilit a priori dei parametri da stimare. Si abbia quindi che il dato osservato
sia il vettore:
y = Ax + n
(11.54)
dove x, n sono vettori incogniti gaussiani indipendenti (a valor medio
nullo, per semplicit) le cui densit di probabilit siano:
p(x) =

p(n) =

1
(2)N/2 |Rx |1/2
1
(2)N/2 |Rn |1/2

exp (

x R1
x x
)
2

exp (

n R1
n n
)
2

La densit di probabilit di x, dato y, usando il teorema di Bayes, :


p(x|y) =

p(x|y) =

p(y|x)p(x)
p(y)

(11.55)

1
1
N
p(y) (2) (|Rx ||Rn |)1/2
#
"

Ax
y
y Ax R1
R
x
x
n
x

(11.56)
exp
2
2

Cerchiamo la stima che minimizza lerrore di stima quadratico medio


(MMSE : Minimum Mean Square Error); si verifica che lo stimatore ottimo da questo punto di vista la media condizionata, E(x|y). Nel caso
252

11.6 STIMA A MASSIMA VEROSIMIGLIANZA (WIKIPEDIA)

di variabili congiuntamente gaussiane questo valore quello che massimizza la funzione di probabilit a posteriori p(x|y) e quindi troviamo,
osservando che p(y) non dipende da x:

b = arg min y Ax R1
x
y Ax +x R1
(11.57)
n
x x
x

Il minimo di questa forma quadratica nel vettore incognito x si trova


annullando le derivate vettoriali ed una funzione lineare di y:
b = Rx A (ARx A + Rn )1 y =
x
1
1 1
A Rn A + R1
A Rn y
x

(11.58)

Nel caso particolare in cui:

Rx = 2x I, Rn = 2n I
si ha:

1
2n

b = A AA + 2 I
y
(11.59)
x
x
congruentemente con quanto si vedr al capitolo sulle direzioni di arrivo e
con i metodi di minimo errore di predizione o di minimo errore quadratico
medio. Si osservi che il numero delle componenti del vettore x e del vettore osservato y possono essere diversi e quindi pu essere pi conveniente
luso delluna o dellaltra delle due formulazioni di 11.58. Quindi questa
soluzione si presta alla stima di una costante o di un comportamento
polinomiale sommati a rumore, o infiniti altri casi.

11.6.4

Stima della potenza di segnali

Campioni indipendenti
Per valutare ora la dispersione della stima del valore quadratico medio di
un segnale di cui sono disponibili solo un numero limitato di campioni,
eventualmenti correlati tra loro, supponiamo di avere una sequenza di
M campioni reali xm che sappiamo essere indipendenti e gaussiani,
a valor medio nullo e con eguale valore q.m. 2 ; la stima a massima
verosimiglianza del loro v.q.m :
M1
1 X 2
b
x
S=
M m=0 m

253

CAPITOLO 11 PROCESSI CASUALI: GENERALIT

b la stima della varianza della sequenza xm una variabile casuale, la cui


S,
distribuzione nota come 2 con M gradi di libert; Sb approssimativamente gaussiana, ha valor medio pari a 2 ; la dispersione verr indicata
con Sb . Sb non pu essere gaussiana se non in modo approssimato, perch sempre positiva.
Come verr mostrato dallequazione (11.64), Sb

decresce con M, e quindi lentamente. Calcoleremo ora Sb nellipotesi


che i campioni xm siano incorrelati;
M1
M1
X
1
1 X
2
b
E[S] =
xm ] =
E[x2m ] = 2
E[
M m=0
M m=0

2Sb

M1
2
1 X
2
b
b
= E[S ] E[S] = 2
E[x2n x2m ] 4
M n,m=0

ME[x4m ] + (M 2 M)En6=m [x2n x2m ]


4 =
M2
24
3M 4 + (M 2 M) 4
4

=
M2
M
dove abbiamo utilizzato la relazione:

(11.60)

(11.61)

E[x1 x2 x3 x4 ] = E[x1 x2 ]E[x3 x4 ] + E[x1 x3 ]E[x2 x4 ] + E[x1 x4 ]E[x2 x3 ]


(11.62)
valida per variabili gaussiane reali a v.m. nullo, come sono le {xm }. In
conclusione
E[x4m ] = 3 4 ; E[x2m x2n ] = 4 se (m 6= n) ;
e quindi abbiamo:

(11.63)

r
2 2
2
b
Sb =
=
E[S]
(11.64)
M
M
Supponiamo ora di voler calcolare il numero M di campioni indipendenti
che permette una stima Sb che, con una probabilit dell 85%, sia dierente dal valore vero 2 di una quantit inferiore a 0.05 2 . Una variabile
casuale gaussiana con varianza 2 contenuta entroun intervallo k
attorno al suo valor medio con
una probabilit erf(k/ 2); poich 0.85 =
erf(1.016), si ha k = 1.016 2 = 1.43. Inoltre perch sia
1.43 Sb = 0.05 2
254

11.6 STIMA A MASSIMA VEROSIMIGLIANZA (WIKIPEDIA)

necessario che:
Sb =

2 2
2
=
M ' 1635
M
28 .6

Campioni correlati
Quando i campioni del segnale sono correlati, a meno di sbiancarli, come
fatto nello stimatore ML (vedi Appendice 1)la dispersione della stima
del loro v.q.m. cresce, perch decresce il numero equivalente di campioni indipendenti che contribuiscono alla stima: se vogliamo stimare la
distribuzione delle et dei cittadini, non bene raccogliere dati in scuole
elementari o case di riposo. Fare valutazioni quantitative precise comporterebbe molti calcoli; cercheremo qui con un esempio di dare unidea
del problema.
Consideriamo due variabili casuali gaussiane a valor medio nullo ed
eguale varianza che siano tra loro correlate, e le indichiamo con x, y. In
generale possiamo supporre che sia:
y = x + w; E[x2 ] = E[y 2 ] = 2 ;

(11.65)

E[w2 ] = 2 (1 2 ); E[xw] = 0
dove w una variabile casuale incorrelata con x. Risulta poi, utilizzando
la solita relazione
E[x4 ] = 3 4
E[xy] = 2 ; E[x2 y 2 ] = (1 + 22 ) 4

(11.66)

Consideriamo ora una sequenza {xm } di campioni correlati tale che:


E[xn xm ] = 2 ; n 6= m; E[x2m ] = 2
Ritornando ora alla stima del v.q.m. della sequenza:
M1
1 X 2
b
x
S=
M m=0 m

congruentemente con lequazione (11.60) essa sar caratterizzato dalla


varianza
r
2
2
Sb =
(1 2 ) + 22
M
255

CAPITOLO 11 PROCESSI CASUALI: GENERALIT

e la varianza NON decresce a zero anche se M tende ad . Supponiamo


ora che i campioni corrispondano ad una sequenza bianca filtrata con
un filtro passabasso con un polo in z = = 1 , e quindi di banda
B /2T. Nel dominio z:

E |Y |2 =

E |X|2
(1 z 1 ) (1 z)

Lautocorrelazione delluscita :
E[ym ym+k ] = |k| 2 ;

La stima Sb del v.q.m. 2 della sequenza sempre ottenuta come:


M1
1 X 2
b
x
S=
M m=0 m

Dopo qualche calcolo si trova che:


b = 2;
E[S]

Sb ' 2

1 + 2
1 2

Avendo quindi da stimare la varianza di una serie di M campioni complessi non indipendenti, ma correlati con un decadimento esponenziale
della correlazione di ragione , quindi come avere a disposizione un
numero equivalente inferiore di campioni indipendenti, pari a:
Meq ' M

1 2
; se = 1 Meq M
1 + 2

coerentemente con il fatto che se campionassimo luscita del filtro a frequenza 2B = /T avremmo, dopo un tempo MT, 2M/ campioni
complessi approssimativamente indipendenti. NellAppendice 1 si considera il caso simile in cui i campioni sono filtrati da un filtro passabasso
ideale di banda fc /L e poi decimati 1 : L. In questa approssimazione:
Leq =

1
M
fc
2
=
=
;
= M piuttosto che M
2B
2BT
Leq

256

11.7 LE DIREZIONI DI ARRIVO

Figura 11.2: Schiera di sensori

11.7

Le direzioni di arrivo

Accanto a sequenze in cui lindice rappresenta lasse temporale, possiamo avere sequenze il cui indice si riferisce a posizioni nello spazio. Nel
problema delle Direzioni di Arrivo (Directions of Arrival: DOA), p.e. si
suppone che segnali temporalmente monofrequenziali (o a spettro molto
limitato) illuminano una schiera di N sensori.
Si dispongono N sensori p.e. lungo un cavo, e siano {xn,k }, n =
1, . . . , N , i segnali da essi misurati allistante k-esimo. La distanza tra
il sensore n-esimo e linizio del cavo sia dn = (n 1); supponiamo
che esistano M sorgenti di radiazioni, monofrequenziali o a banda stretta, a grande distanza dal cavo; langolo tra la direzione della sorgente
m; m = 1...M e la normale al cavo (vedi fig. 17.1 ) indicato con m ;
quindi la radiazione arriva al ricevitore xn con il ritardo n = (n 1)
sin m /c rispetto al ricevitore n = 1. Inoltre, indichiamo con Am ejkT
lampiezza sinusoidale della radiazione allistante k, e con c la velocit di
propagazione delle onde. Il segnale misurato dal sensore n allistante k
257

CAPITOLO 11 PROCESSI CASUALI: GENERALIT

quindi (per semplicit abbiamo posto M = 1):


xn,k = A exp(jkT +j

(n 1) sin m
) = AejkT ejkm (n1) = AejkT ejum (n1) ;
c
(11.67)

sin m
; um = km
c
Il segnale misurato nella stessa posizione al variare del tempo una sinusoide complessa di pulsazione ; il segnale misurato allo stesso istante
kT da tutta la schiera di sensori (al variare della posizione nello spazio)
una sinusoide complessa, nel dominio degli spazi, avente numero
donda km (per le sinusoidi spaziali, la grandezza corrispondente alla pulsazione delle sinusoidi temporali). Misurare la direzione di arrivo
equivale a misurare il numero donda della sinusoide complessa registrata.
La pulsazione normalizzata um = km la rotazione di fase del segnale
m-esimo al passare da un ricevitore della schiera al successivo.
Fare unanalisi dello spettro di frequenza (spaziale) della sequenza
{xn,k }, per un dato istante di tempo k, corrisponde quindi a determinare numero e direzione di arrivo delle radiazioni incidenti sul cavo.
La distanza massima tra i sensori per evitare equivocazione spaziale :
km =

|k| =

sin

kNyquist = ;
c

=
2f
2

(11.68)

Per esempio, con segnali a 20kHz, se c = 1500m/sec, allora


0.0375m. Scegliendo questo valore per avremo che alla direzione = 0
corrisponde k = 0; alle direzioni = /2 corrisponde k = kNyquist

11.7.1

Autocorrelazione di una sequenza spaziale

Il segnale in arrivo sia caratterizzato da un numero discreto M di fronti


donda, ognuno con la sua ben definita direzione di arrivo. La sequenza
{xi } sar somma di M sinusoidi complesse corrispondenti agli M fronti.
Le loro pulsazioni spaziali (i numeri donda) sono:
km =

sin m
;
c

um = km

(11.69)

Supponiamo che M = 2, lampiezza della radiazione Am una variabile


casuale complessa di varianza E[|Am |2 ] = 2m e che sui dati sovrapposto
258

11.8 APPENDICI

del rumore bianco wn , complesso, di varianza 2w . Si ha:

xn,k = ejkT A1 eju1 (n1) + A2 eju2 (n1) + wn

e i campioni della funzione di autocorrelazione spaziale della sequenza


{xn,k } sono indipendenti da k e sono:

= 21 eju1 h + 22 eju2 h + 2w (h); 0 h N (11.70)


E[xn xnh ] = rh = rh

Si osservi che possiamo stimare con precisione i campioni della funzione di


autocorrelazione facendo delle operazioni di media nel tempo; non abbiamo necessit di fare delle medie nello spazio. Il numero dei campioni
della funzione di autocorrelazione, misurati con la precisione desiderata,
corrisponde al numero dei sensori.

11.8

Appendici

11.8.1

Autocorrelazione e spettri per variabili continue

La definizione dellautocorrelazione nel dominio del tempo continuo per


segnali complessi :
r( ) = E[x(t)x (t )] = E[x (t)x(t + )];

r( ) = r ( )

Per definizione, lo spettro di potenza S() :


Z
r( )ej d
S() =

Infatti, considerando un intervallo di tempo di osservazione pari a Ttot :


Z Ttot /2
Z Ttot /2
jt

x(t)e
dt;
X () =
x (t)ejt dt
X() =
Ttot /2
2

|X()| =
Ponendo t = ;
2

|X()| =

Ttot /2

Ttot /2

Ttot /2

x(t) x ()ej ejt dt d

Ttot /2

Ttot /2

Ttot /2

Ttot /2

Ttot /2

x( + ) x ()ej

Ttot /2

259

CAPITOLO 11 PROCESSI CASUALI: GENERALIT

Passando alla media di insieme:


Z Ttot /2 Z
2
E[|X()| ] =
d

Ttot /2

r( )ej d '

Ttot /2
Ttot /2
Z Ttot /2

' S()

Ttot /2

d = S() Ttot

perch si pu pensare che r( ) si annulli gi per valori dellargomento


ben inferiori a Ttot . Volendo una maggiore precisione, si pu tenere conto
della finestratura in tempi (Ttot ) con una finestratura triangolare della
funzione di autocorrelazione (vedi eq. 10 .23). Passando al limite per
Ttot :
E[|X()|2 ]
= S()
lim
Ttot
Ttot
Lo spettro di energia per il teorema di Parseval e per un tempo Ttot
limitato:
Z
Z Ttot /2
2 d
|X()|
|x(t)|2 dt = Ttot Pm
=
2

Ttot /2
dove con Pm abbiamo indicato la potenza media (il valore quadratico
medio) del segnale x(t). Quindi
Z

|X()|2 d
=
Ttot 2

1
d
=
S()
2
Ttot

Ttot /2

Ttot /2

|x(t)|2 dt = Pm

e quindi S() corrisponde allo spettro di potenza del segnale e cio alla
ripartizione della potenza del segnale nelle varie bande spettrali. Si osservi che S() non necessariamente simmetrico rispetto ad in quanto
il segnale x(t) pu essere complesso.

11.8.2

Dimensione di variabili continue e discrete

Se i segnali x(t) sono delle tensioni, indicheremo tale dimensionalit con:


x(t) [V ];
Nel discreto
xn = x(nT ) [V ]
260

11.8 APPENDICI

Le trasformate continue hanno dimensionalit:


Z
x(t)ejt dt [V T ]
X() =

Le trasformate discrete hanno invece la stessa dimensionalit del segnale


Xk =

N
1
X
n=0

xn WNnk [V ]

e pertanto i campioni della trasformata continua si ottengono da quelli


della trasformata discreta moltiplicando per T , sempre se il campionamento corretto:
Z
N1
X
jk t
x(t)e
dt ' T
xn WNnk = Xk T
X( k ) =

n=0

La funzione di autocorrelazione ha dimensione [V 2 ] e cio una potenza


(trascuriamo il termine dovuto alla resistenza [1 ]). Infine lo spettro di
potenza di una variabile continua S()
S() =

|X()|2
V 2T 2
[
] = [V 2 T ]
Ttot
Ttot

Nel discreto, il periodogramma collegato allo spettro di potenza dalla


relazione:
T
E[|X( k )|2 ]
|Xk |2 T 2
= |Xk |2
'
S(k ) =
Ttot
NT
N

11.8.3

Teorema del limite centrale

Il teorema del limite centrale una conseguenza immediata del meccanismo delle convoluzioni ripetute; si consideri una variabile casuale
xi , caratterizzata da avere solo due valori possibili ed equiprobabili con
probabilit 0.5:

1
xi = ; px (xi = 1/ N) = px (xi = 1/ N) = .5
N
La trasformata di Fourier della densit di probabilit :

u
P (u) = cos
N
261

CAPITOLO 11 PROCESSI CASUALI: GENERALIT

La variabile casuale a, somma di N valori della xi , ha media nulla e


varianza unitaria; infatti:
a=

N
X
i=1

X

xi ; E a2 = N
E x2i = 1; E [xi xj ] = 0; i 6= j

La densit di probabilit di a approssimativamente gaussiana; essa


ottenuta convolvendo N volte con se stessa la densit di probabilit
px (x). La sua trasformata di Fourier quindi la potenza N-esima della
P (u):

u
N
N

Pa (u) = [P (u)] = cos


N

u2
u
2
' 1
cosN
' eu /2 ; u << N
2N
N
Lantitrasformata di Fourier, gaussiana a varianza unitaria quindi:
1
2
pa () = e /2
2
Poich la variabile x assume
solo due valori discreti, anche la variabile
a discreta, a passo 1/ N; infatti, la sua trasformata Pa (u), essendo

trasformata di una variabile campionata, periodica di periodo 2 N e


quindi
il periodo cresce con N. Peraltro, l0 approssimazione fatta ponendo
u << N , implica un filtraggio passa - basso e quindi lo smussamento
della distribuzione di a e quindi ci impone di
trascurare il fatto che essa
assuma solo dei valori discreti ad intervalli 1/ N.

262

Capitolo 12
Analisi spettrale non
parametrica
12.1

Introduzione

In questa seconda parte del testo, aronteremo il problema dellanalisi


spettrale dei segnali e cio la stima del loro spettro di potenza.
Il problema della stima spettrale molto vasto ed ha applicazioni
molto diverse tra loro. Per introdurre il problema, si pu pensare allo studio dello spettro delle radiofrequenze in una grande citt; luno
accanto allaltro si incontrano i vari canali radio e televisivi, i segnali
di telefonia cellulare, i segnali radar ecc. Gli intervalli di frequenza, se
considerati con suciente larghezza di banda, sono occupati da segnali
totalmente indipendenti tra loro, con diversa ampiezza e diverse caratteristiche statistiche. Per analizzare lo spettro, appare logico utilizzare un
ricevitore selettivo che misura il contenuto energetico in ogni intervallo
di frequenza. Cercheremo la stima pi precisa possibile di queste energie
nellintervallo di tempo disponibile senza fare alcuna ipotesi ulteriore,
non cercando modelli della generazione del segnale (analisi spettrale
non parametrica).
Un caso ben diverso si ha ad esempio considerando lo spettro di un
segnale acustico dovuto a vibrazioni o ad un segnale vocale. In questo
caso, tutto il segnale nel suo complesso ha origini uniche e quindi vi
saranno delle relazioni tra i contenuti delle varie bande spettrali. Un
caso estremo poi di analisi spettrale quello della ricerca della frequenza
263

CAPITOLO 12 ANALISI SPETTRALE NON PARAMETRICA

di un oscillatore o delle direzioni di arrivo di onde piane su una schiera di


sensori. In questi casi, si deve anzitutto scegliere un modello per la generazione del segnale e quindi determinare i parametri del modello stesso.
In questo modo, si d la descrizione dello spettro del segnale pi accurata
possibile. Ad esempio, si cercheranno i parametri di un filtro lineare che,
alimentato da un segnale a spettro uniforme (rumore bianco) produce
uno spettro di potenza simile allo spettro sotto analisi. Questa tecnica
(analisi spettrale parametrica) ha numerosissime applicazioni: studiare le vibrazioni di un sistema, studiare la stabilit di frequenza di un
oscillatore, stimare posizione e numero delle sorgenti di segnale in un
campo acustico, stimare i parametri del tratto vocale di un parlatore, e
in generale stimare e predire segnali nel tempo o nello spazio. Ovviamente, il successo della tecnica parametrica dipende dalla qualit e dalla
correttezza del modello scelto; modelli validi portano ad una descrizione
parsimoniosa del segnale, caratterizzata cio dal minimo numero di
parametri necessario; come vedremo, ci porter ad una migliore stima
di questi parametri e quindi a risultati ottimali. Infine, e questo poi
uno dei risultati pi importanti, lanalisi spettrale parametrica porta allidentificazione del modello e questo apre una successiva fase di studio
per comprendere e poi eventualmente controllare lo stato e levoluzione
del sistema sotto osservazione. Lanalisi spettrale non parametrica una
questione concettualmente semplice se si fa uso del concetto di media di
insieme: infatti, se si hanno abbastanza realizzazioni del segnale, basta calcolarne le trasformate discrete di Fourier e mediarne le potenze,
componente per componente. Tuttavia, raramente si hanno numerose
repliche del segnale; spesso, si ha a disposizione una sola replica, per
un intervallo di tempo assegnato la cui lunghezza indicheremo sistematicamente con Ttot = NT dove T lintervallo di campionamento. Per
determinare lo spettro di potenza, si dovr ricorrere ad ulteriori ipotesi
come stazionariet ed ergodicit che supporremo sempre valide, tranne
quando verranno discussi i sistemi adattativi, in cui la non stazionariet
delle statistiche verr considerata esplicitamente.

12.2

Analisi spettrale non parametrica

Volendo stimare lo spettro di una sequenza {xn }, n = 0, .., N 1 senza


fare alcuna ipotesi addizionale, necessario utilizzare un banco di K filtri
264

12.2 ANALISI SPETTRALE NON PARAMETRICA

passa banda con bande Bk ; k = 1, . . . , K e frequenze centrali fk ; k =


1, . . . , K attraverso i quali fare transitare il segnale; si stimano poi le
potenze medie delle uscite yn,k dei vari filtri del banco (fig. 10 .1). Emerge
il problema di determinare la dispersione della stima spettrale e cio la
dispersione della stima Sbk della potenza (il valore quadratico medio) 2k
dei segnali yn,k in uscita dei vari filtri.
H1(f)

yn,1
f

f1 ,B1

H2(f)

yn,2
f2 ,B2

xn
H3(f)

yn,3
f3 ,B3

Figura 12.1: Stima dello spettro di un segnale


Questa stima funzione sia del tempo totale di osservazione concesso
Ttot = NT sia delle larghezze di banda Bk dei vari filtri (risoluzione
spettrale), che non sono necessariamente eguali tra loro. Vedremo che
dispersione della stima e risoluzione spettrale sono entrambe limitate dal
valore di Ttot ed inoltre al migliorare della risoluzione spettrale peggiorer
(crescer) la dispersione di Sbk , Sbk . Infatti, se la banda passante Bk del
filtro kesimo molto stretta, i campioni (complessi) della sua uscita
sono correlati tra loro per un intervallo di tempo lungo Tk ' 1/Bk .
Quindi, il tempo totale necessario per misurare alluscita del filtro un
numero di campioni complessi indipendenti M abbastanza grande (per
avere una buona stima del loro valore quadratico medio e quindi della
densit spettrale media in quella banda) sar:
Ttot = NT = MTk = M/Bk
265

CAPITOLO 12 ANALISI SPETTRALE NON PARAMETRICA

e sar tanto maggiore per quanto pi ridotta Bk e per quanto maggiore


M. A pari Ttot invece, dovremo scegliere se fare grande M (stima
precisa) o Tk (elevata risoluzione spettrale).

12.3

Risoluzione spettrale e dispersione

12.3.1

La dispersione della stima spettrale

Consideriamo ora il necessario compromesso da raggiungere tra la risoluzione


spettrale e la dispersione della stima se la sequenza di cui facciamo la stima spettrale lunga N campioni e cio osservata in un intervallo di
tempo limitato Ttot = NT . Infatti sia B la risoluzione spettrale e quindi
B sia la banda passante di ogni filtro da utilizzare per la stima dello
spettro di potenza del segnale attorno ad una qualsiasi frequenza assegnata: in altre parole, la risoluzione spettrale non dipende dalla frequenza.
Ripetendo in modo leggermente diverso il ragionamento fatto alla fine del
paragrafo precedente, convertiamo in banda base il segnale passa banda
uscita del filtro kesimo. Centriamo quindi attorno alla frequenza 0 le
componenti alle frequenze positive del segnale reale di partenza, eliminando del tutto quelle alle frequenze negative. Otteniamo cos un segnale
complesso con frequenza massima B/2; se la banda B piccola, sar ragionevole ritenere uniforme lo spettro del segnale convertito in questa
banda. Campionando la parte reale e la parte immaginaria del segnale
complesso con lintervallo di tempo T = 1/B e quindi alla frequenza
B = 2 B/2, otteniamo due sequenze di campioni, tutti incorrelati tra
loro (lo spettro uniforme) e di pari v.q.m. Inoltre, poich il filtro passa
banda a banda stretta e quindi combina linearmente tra loro numerosi
campioni del segnale di ingresso campionati ad intervallo T << T ,
il segnale filtrato gaussiano per il teorema del limite centrale e pertanto lincorrelazione tra i campioni implica anche la loro indipendenza.
In ogni modo, abbiamo per ogni banda B, M = 2BTtot campioni
incorrelati.
Quindi, utilizzando sia le parti reali che quelle immaginarie per la
stima Sb , utilizzando il risultato del capitolo precedente per la dispersione
della stima, troviamo che:
r
r
Sb
Sb
2
2
1
=
=
(12.1)
= 2 =
b

M
2BTtot
BTtot
E(S)
266

12.3 RISOLUZIONE SPETTRALE E DISPERSIONE

Pertanto, se la risoluzione spettrale migliora (B decresce), aumenta anche la dispersione della stima; poich per dobbiamo finestrare i dati
nellintervallo Ttot la risoluzione spettrale non pu comunque essere maggiore di 1/Ttot a causa della finestratura rettangolare che comporta la
convoluzione con dei dati con Wr () = sinc(fTtot ).

12.3.2

Polarizzazione della stima spettrale dovuta


al troncamento dei dati

Ancora, il troncamento dei dati nellintervallo di osservazione e quindi la


convoluzione della trasformata con la trasformata della finestra comporta
la polarizzazione della stima. Con questo termine si indica il fatto
che:
E[Sbk ] 6= 2k = S( k )Bk
(12.2)

e cio che il valore medio del risultato dello stimatore diverso dal valore
medio della variabile casuale. Infatti, la presenza di componenti spettrali
al di fuori della banda osservata Bk (per esempio una sinusoide di grande
ampiezza ad unaltra frequenza), a causa del troncamento con la finestra
temporale adottata e quindi della convoluzione del segnale con la sua
trasformata Wr (), crea infiltrazioni spurie di energia (leaks) nella banda
Bk : risulta infatti che la trasformata di Fourier del segnale finestrato :
Xf () = X() Wr ()
Z Z
X() Wr ( )X () Wr ( )dd] =
E[| Xf |2 ] = E[
Z Z
=
Wr ( )Wr ( )E[X() X () ]dd =

e poich, come visto nel capitolo precedente nel caso di segnali campionati:
E[X() X () ] = E[|X()|2 ]( )
Z
2
E[| Xf ()| ] = |Wr ( )|2 E[|X()|2 ] d

risulta che lo spettro del segnale finestrato la convoluzione dello spettro


originale con il modulo quadro della trasformata della finestra
Sf () = S() |Wr ()|2
267

CAPITOLO 12 ANALISI SPETTRALE NON PARAMETRICA

e, nel caso discreto,

E[Sbk ] = Bk S() |Wr ()|2 =

La risoluzione spettrale peggiora se si usano finestre rastremate a zero,


p.e. triangolari o cosinusoidali cos da evitare che i lobi laterali della
|Wr ()|2 , a causa di componenti spettrali esterne allintervallo di frequenza Bk , vi iniettino energia spuria e creino troppa polarizzazione.
Queste finestre rastremate diminuiscono la polarizzazione (i lobi laterali di ampiezza inferiore che con la finestra rettangolare) ma riducono
la risoluzione spettrale. Il lobo centrale della trasformata della finestra
avr infatti larghezza maggiore che non quello corrispondente alla finestra rettangolare di eguale durata. Inoltre, la rastremazione della finestra
porta a pesare poco dei dati e quindi ad accrescere la dispersione della
stima.
Si osservi che la finestra che deve essere applicata ai dati per delimitarli temporalmente pu essere qualsiasi, purch abbia bassi lobi laterali.
Vedremo invece pi avanti che, quando finestreremo la funzione di autocorrelazione allo scopo di ridurre la dispersione della stima, avremo
bisogno di finestre la cui trasformata di Fourier sempre positiva.

12.4

Il periodogramma

Se abbiamo a disposizione solo un intervallo di osservazione dei dati di


durata Ttot , abbiamo visto che il pi piccolo intervallo di frequenza (che
nel seguito indicheremo anche come cella) su cui si pu avere una stima
spettrale :
1
2
= fN
Bmin =
Ttot
N
Questa risoluzione spettrale (la massima possibile) si ottiene utilizzando
una finestra rettangolare prima del filtraggio passa banda del segnale.
Dalla formula precedentemente vista, risulta che in questo caso:
r
Sb
1
=1
(12.3)
=
b
Bmin Ttot
E(S)

e cio la dispersione della stima non dipende dalla lunghezza dei dati; allungando la serie dei dati e volendo sempre la massima risoluzione
268

12.4 IL PERIODOGRAMMA

spettrale, la dispersione della stima non decresce perch contemporaneamente cresce la risoluzione spettrale. In questo caso,
infatti, il numero M di campioni indipendenti usato per la stima dello spettro in ogni intervallo di frequenza sempre 2. Supponiamo ora
che i filtri passa banda vengano realizzati con filtri a campionamento in
frequenza, complessi, con frequenze centrali appunto
fk =

k
;
Ttot

k=

N
N
+ 1, ...
2
2

La risposta allimpulso del filtro k-esimo, complesso, :


hk (n) = ej2knT /Ttot = ej2kn/N = WNnk ; n = 0, ....., N 1

(12.4)

WN = ej2/N
Lingresso del filtro la sequenza {xn }, n = 0, ...N 1; luscita del filtro,
complessa, utilizzabile solo allistante n = N 1 quando il transitorio
iniziale di caricamento dei dati nel filtro terminato, ma anche i dati sono
terminati. In sostanza, con la sequenza di dati lunga N, per ogni filtro
alla frequenza fk disponiamo di solo un campione in uscita, complesso.
Esso :
N1
X
Xk =
xn W nk
(12.5)
n=0

|Xk |2
(12.6)
Pk =
N
Abbiamo visto nel capitolo precedente che gli Xk , uscite dei vari filtri
passa banda che costituiscono il banco, sono sostanzialmente indipendenti tra loro, a garanzia che la risoluzione spettrale sia eettivamente
1/NT. Determinare le N uscite Xk del banco degli N filtri passa banda corrisponde poi al calcolo della trasformata di Fourier discreta della
sequenza.
Lunico campione a nostra disposizione delluscita del kesimo filtro
passa banda, il campione complesso Xk , ha potenza |Xk |2 ; questa, divisa
per N, la stima Pk della densit spettrale del segnale in quella banda;
questa stima spettrale viene indicata con il nome di periodogramma.
269

CAPITOLO 12 ANALISI SPETTRALE NON PARAMETRICA

Con il periodogramma abbiamo raggiunto la massima risoluzione possibile della stima spettrale e anche abbiamo rinunciato totalmente a
migliorarne la dispersione: infatti, per fare la stima di energia usiamo solo M = 2 dati indipendenti, e cio le parti reale ed immaginaria di X(k).
Il periodogramma perci ha massima risoluzione spettrale e massima dispersione della stima. Allungando Ttot , aumenta la risoluzione spettrale
ma non migliora la dispersione. Peraltro, calcolare il periodogramma
molto poco costoso.
In figura 10.4 sono presentati gli spettri di potenza, calcolati in vari
modi, corrispondenti ad un processo costituito da una sinusoide a frequenza 125 Hz (fc = 1000Hz) cui aggiunta una sequenza di campioni
indipendenti (rumore bianco) convoluti con la sequenza (-0.5, 0, 1, 0,
-0.5) e quindi caratterizzata dallo spettro:
S() = [1 cos(2T )]2
In figura 10.4a presentato il periodogramma calcolato su 2048 campioni. Si osservi il forte picco causato dalla sinusoide (tutta la potenza
cade in una sola cella spettrale) e la forte dispersione della stima alle
frequenza a cui lo spettro del segnale diverso da zero. Dove invece
lampiezza spettrale piccola, anche la dispersione piccola.

12.5

La stima dellautocorrelazione

Stimare la densit spettrale equivale a stimare la funzione di autocorrelazione del processo: infatti luna sar la trasformata di Fourier dellaltra.
Con autocorrelazione definiamo la seguente funzione,
r( ) = E[xn xn+ ]; r( ) = r ( )
indipendente dallindice n; il processo causale {xn } a media nulla e
pu essere complesso. La trasformata di Fourier dellautocorrelazione
quindi lo spettro di potenza:
N1
[X()X ()]
1 X
E
E[xn xn+ ]

N
N n=0

in quanto la trasformata del valore atteso della convoluzione tra la


sequenza e la stessa sequenza ribaltata nel tempo e coniugata.
270

12.5 LA STIMA DELLAUTOCORRELAZIONE

E quindi interessante individuare quale sia la stima dellautocorrelazione corrispondente al periodogramma. La risposta e semplice: per
definizione il periodogramma linsieme di variabili casuali:
! N 1
!
N1
X
1 X nk
|Xk |2
(12.7)
Pk =
=
x W
xn WNnk
N
N n=0 n N
n=0
esso quindi corrisponde, nel dominio della frequenza, alla convoluzione
circolare della sequenza {xn } con se stessa, ribaltata nei tempi e coniugata, se complessa (il coniugio della trasformata). Nel seguito, supporremo per semplicit che la sequenza {xn } sia reale, tranne quando specificato. Il periodogramma quindi la trasformata dellautocorrelazione della sequenza periodicizzata. Apparentemente, quindi la
periodicizzazione ci porterebbe a gravi imprecisioni. Ma, stranamente,
non cos: infatti si consideri la sequenza {xn } nellintervallo Ttot (la
sequenza sia lunga N campioni) e il ragionevole stimatore polarizzato
dellautocorrelazione che vedremo corrispondere al periodogramma:
N1
1 X
r( ) =
x xn+
N n=0 n

xn+ = 0;

n + > N; n + < 0;

Lo stimatore considerato polarizzato perch:


E[
r( )] =

N | |
r( ) 6= r( )
N

(12.8)

Ricordiamo qui che lindice dellautocorrelazione viene anche chiamato in inglese lag (ritardo). Questa stima dellautocorrelazione si ottiene bordando con N zeri la sequenza {xn } (fig. 10.5) e poi facendone la correlazione con se stessa, eliminando quindi qualsiasi errore di
periodicizzazione.
La Trasformata di Fourier Xk della sequenza xn di lunghezza N bordata con N zeri la Trasformata di Fourier della sequenza originale,
interpolata ad intervallo di frequenza met (e quindi pari a 1/2NT ) con
un sinc. Pertanto, i valori che assume alle frequenze fk = k/NT sono
eguali a quelli della Trasformata di Fourier della sequenza originale, non
bordata con zeri. Quindi a parte unirrilevante interpolazione su un
intervallo di frequenza met la Trasformata di Fourier della r. coincide
con il periodogramma, come si era detto; si deve ricordare tuttavia che
271

CAPITOLO 12 ANALISI SPETTRALE NON PARAMETRICA

Figura 12.2: a) Spettro di potenza calcolato utilizzando un solo periodogramma su tutti i 2048 campioni; b) periodogramma precedente
smussato c) Periodogramma ottenuto suddividendo i dati in 16 sottosequenze con finestre rettangolari e mediando le potenze; d) finestre triangolari e) finestre cosinusoidali f) finestre a coseno rialzato g) finestre a
coseno rialzato sovrapposte (WOSA)
272

12.5 LA STIMA DELLAUTOCORRELAZIONE

linterpolazione 2:1 deve essere fatta sulla trasformata Xk e non sul modulo quadrato |Xk2 | ; in altre parole, prima si fa linterpolazione e poi
il modulo quadrato e non viceversa. La periodicizzazione non ha
influenza sulla stima spettrale anche se lautocorrelazione periodicizzata
ben diversa da quella non periodicizzata. La polarizzazione nel do-

Figura 12.3: Sequenza di N campioni indipendenti bordata con N zeri e


sua funzione di autocorrelazione
minio dei tempi che risulta dalla (10 .23) corrisponde alla polarizzazione
del periodogramma trovata nel dominio delle frequenze; sono entrambe
dovute alla finestratura dei dati con una finestra rettangolare. Infatti,
sia {zn } una sequenza illimitata e {xn } la sequenza ottenuta finestrando
temporalmente la sequenza {zn } con una finestra rettangolare wr,n (fig.
10 .6):
xn = zn wr,n ;

E[
r( )] = E[

wr,n = 1;

0nN 1

(12.9)

N1
N1
1 X
1 X
zn wr,n zn+ wr,n+ ] =
wr,n wr,n+ E[zn zn+ ] =
N n=0
N n=0
(12.10)
N1
1 X
wr,n wr,n+ = rz, rw,
= rz,
N n=0

273

CAPITOLO 12 ANALISI SPETTRALE NON PARAMETRICA

dove con rw, e rz, sono state indicate rispettivamente le autocorrelazioni


della finestra e della sequenza di ingresso. Quindi, finestrare i dati comporta che il valore atteso della stima dellautocorrelazione trovato sia il
prodotto dellautocorrelazione della sequenza originale per quella della
finestra. Nel caso di finestra rettangolare, si ritrova il risultato che lautocorrelazione vera moltiplicata per una finestra triangolare che va a
zero dopo N campioni.

Figura 12.4: a) Sequenza illimitata zn b) Finestra rettangolare wn c)


Sequenza finestrata xn d) funzione di autocorrelazione della sequenza zn
e) funzione di autocorrelazione della finestra wn f) rz rw

12.6

Errori da evitare

Si potrebbe credere di potere fare meglio del periodogramma tentando


di rimuoverne la polarizzazione ad esempio:
a) depolarizzando la r. moltiplicandola per il fattore N/(N | |)
b) utilizzando altri campioni del processo eventualmente disponibili
e utilizzando come stimatore dellautocorrelazione la funzione:
N1
1 X
r. =
x xn+
N n=0 n

xn+ 6= 0;
274

n+ >N

12.7 MODIFICHE DEL PERIODOGRAMMA

Operare cos porta a gravi errori anche se apparentemente si fa una cosa


utile. Infatti, lautocorrelazione polarizzata dellequazione (12.8) ha spettro tutto positivo (il periodogramma appunto), come dovuto, ed il suo
valore nellorigine, somma di tutti i termini dello spettro, tutti positivi,
massimo (le due questioni sono evidentemente collegate). Le autocorrelazioni non polarizzate ottenute con gli stimatori a, b non hanno aatto
questa garanzia; sia nel caso a) che nel caso b) potrebbe benissimo accadere che r. > r0 per qualche valore del ritardo . Inoltre, nel caso a)
la crescente amplificazione della stima dellautocorrelazione per ritardi
crescenti (dovuta alla divisione per N | | numero sempre pi vicino
allo zero) peraltro necessaria per evitare la polarizzazione, comporta un
inaccettabile aumento della dispersione.

12.7

Modifiche del periodogramma

12.7.1

Smussamento dello spettro

Usando lo stimatore r( ) viene fornita una stima dellautocorrelazione


fino a ritardi N; chiaro tuttavia che per ritardi grandi, lautocorrelazione stimata utilizzando ben pochi campioni (un solo campione se
= N 1) e quindi la stima ha grande dispersione; ci risulta anche dal
periodogramma dove la risoluzione spettrale 1/NT e quindi corrisponde
ad unautocorrelazione stimata fino al ritardo NT. Ci porta allelevata dispersione che abbiamo visto nellequazione 12.3. Appare opportuno
modificare il periodogramma in modo da ridurre sia la dispersione che la
risoluzione spettrale.
Per ridurre la risoluzione spettrale basta p.e. mediare i valori assunti
dalla stima spettrale fornita dal periodogramma in L = 2N/P intervalli
di frequenza adiacenti; ci corrisponde a smussare il periodogramma stesso convolvendolo con un operatore di filtro. Cos facendo, si riduce anche
la dispersione della stima in quanto si mediano tra loro stime basate su
M = 2L variabili casuali indipendenti Sbk = |Xk |2 = A2k + Bk2 . Per effettuare poi questa riduzione della risoluzione spettrale si pu, nellaltro
dominio, moltiplicare la funzione di autocorrelazione per una finestra,
che lantitrasformata di Fourier del filtro che smussa il periodogramma (fig. 10 .7). Tuttavia, non tutte le finestre sono valide: dovremo
moltiplicare lautocorrelazione per finestre con Trasformata di Fourier
275

CAPITOLO 12 ANALISI SPETTRALE NON PARAMETRICA

Figura 12.5: Troncamento della funzione di autocorrelazione e


smussamento dello spettro
positiva per evitare di generare valori negativi dello spettro smussato,
e quindi, in qualche situazione, ridurre pericolosamente r0 . In genere,
si user una finestra triangolare nei tempi di durata corrispondente alla
riduzione di risoluzione spettrale desiderata. Ad esempio, se si moltiplica lautocorrelazione per una finestra triangolare che va a zero per
max = P T ' NT /10, come viene spesso consigliato (metodo di Blackman e Tukey), il lobo principale della trasformata della finestra va a zero
per f = 1/P T ' 10/NT e quindi combina insieme i contenuti Sbk di
almeno 20 celle spettrali ad intervallo f = 1/NT . Facendo i conti pi
precisamente risulta per che, agli eetti della varianza della stima della
locale densit spettrale, il numero equivalente di celle del periodogramma i cui contenuti sono combinati tra loro ' 15 invece che 20. Infatti,
indicando con SbB la stima spettrale secondo Blackman e Tukey, si ha,
posto che:
2 2
E[Sbk ] = S; E[Sbk2 ] E 2 [Sbk ] =
S = S2
M
276

12.7 MODIFICHE DEL PERIODOGRAMMA

SbB =

pk Sbk ;

E[SbB ] = S

pk = 1;

dove i pesi pk sono dati dalla formula (trasformata di un triangolo campionato di lunghezza di base pari a 2P periodicizzato su lunghezza N ; P
dispari, altrimenti non torna la periodicit su N campioni):
1
pk =
PN
pk =

N1
X

sin(kP/N)
sin(k/N)

ql WNkl ;

l=0

(12.11)

N1
1 X
ql =
pk WNkl ;
N k=0

Si osservi che i pesi pk hanno un lobo principale che comprende 2N/P


celle
p e quindi ci aspetteremmo una dispersione ridotta di un fattore
P/2N. Calcolando la dispersione come:
X
2 hX
i2
X
2
b
b
Sc = E
E
pk Sk
pk Sk
= S2
p2k
B

risulta invece:

r
r
qX
SbB
2P
4 P
=
p2k '
=
3N
3 2N
E[SbB ]

(12.12)

Infatti i pesi nel dominio delle frequenze pk sono trasformata di pesi


nel dominio del tempo ql decrescenti linearmente (a triangolo); si deve
imporre che il valore al tempo 0 sia q0 = 1/N perch la somma dei pesi
nel dominio trasformato pk sia unitaria.
P
X

1
|l|
ql = (1 );
N
P

P
X

P
ql ' ;
N
l=P

l=P

ql2 '

2P
;
3N 2

e, usando la relazione di Parseval:


X

p2k

=N

P
X

l=P

ql2 '

2P
3N

(12.13)

In conclusione troviamo che la varianza cresce di un fattore 4/3 appunto


perch lo spettro della finestra (e quindi i pesi pk ) molto basso per
277

CAPITOLO 12 ANALISI SPETTRALE NON PARAMETRICA

f ' B ; nel caso considerato di una finestra triangolare che va a zero per
= NT /10 si ha P = N/10 e il numero equivalente di stime spettrali
indipendenti Sbk combinate (15) minore di quello totale (20) originalmente contenuto nelle celle spettrali combinate dalla media fatta con i
pesi. Tenendo conto delle parti reali ed immaginarie della trasformata,
i campioni di potenza indipendenti contenuti nelle 20 celle spettrali adiacenti da cui si stima lo spettro di potenza nellintervallo cercato sono
appunto M ' 30; le stime indipendenti Sbk che sono state mediate si
susseguono nel dominio delle frequenze. Smussamenti maggiori si otterrebbero con finestre sullautocorrelazione che vanno a zero per tempi
inferiori ecc. Si osservino gli spettri in figura 10 .7.
Un altro risultato si sarebbe ottenuto con pesi tutti eguali, e cio
convolvendo il periodogramma con una finestra rettangolare. In questo
caso, con maggiore ecienza, la riduzione di risoluzione spettrale di un
fattore
20 avrebbecomportato la riduzione della dispersione di un fattore

20, invece che 15. Peraltro, sarebbe stato equivalente moltiplicare


lautocorrelazione per un finestra a seno cardinale, che non si annulla
nemmeno a tempi grandi. In pratica, si usa spesso la tecnica di Blackman
e Tukey, anche se leggermente ineciente.

12.7.2

Media di periodogrammi di sottosequenze

Un altro modo per diminuire la dispersione quello di suddividere lintervallo NT di osservazione dei dati in L sottointervalli disgiunti e quindi
dividere la sequenza totale in L sottosequenze. Poi vengono mediati tra
loro i periodogrammi delle sottosequenze ed il numero totale di campioni indipendenti combinati tra loro per ogni cella sar M = 2L. Se p.e.
L = 15, M = 30 e dal punto di vista della dispersione statistica i risultati sono equivalenti a quelli ottenibili con una finestratura triangolare
dellautocorrelazione che vada a zero per max ' NT /10. Quindi, con un
periodogramma unico si ottiene la desiderata dispersione statistica con
una risoluzione spettrale pari a circa B = 20/NT ; invece, segmentando
in sottosequenze, per avere la stessa dispersione statistica, basta porre
L = 15, la risoluzione spettrale del periodogramma di una sottosequenza diventa B 0 ' 15/NT e quindi un poco meglio rispetto al metodo
di Blackman: abbiamo trattato i dati in modo diverso che sembra pi
eciente e con risultati equivalenti a quelli che si avrebbero convolvendo
lo spettro di un unico periodogramma con un rettangolo di larghezza B 0 .
278

12.7 MODIFICHE DEL PERIODOGRAMMA

In realt succede di peggio; mediando gli L periodogrammi di


sequenze brevi ottenuti troncando i dati con una finestra corta,
la polarizzazione della stima peggiora a causa dei troncamenti
e delle periodicizzazioni pi fitte. Un disturbo monocromatico si ripercuote su tutto lo spettro con maggiore influenza. In presenza di disturbi
fortemente colorati, meglio smussare nel dominio delle frequenze il periodogramma della sequenza intera convolvendolo p.e. con un rettangolo
di larghezza B, come visto alla fine del paragrafo precedente. In questo
caso, gli eetti di un forte segnale monocromatico non si estendono al di
l della banda B ed come se avessimo rastremato a zero la funzione di
autocorrelazione moltiplicandola per una finestra a sinc, come peraltro
gi osservato.
Per contro, mediando periodogrammi fatti su sottosequenze loccupazione di memoria minore ed anche i calcoli sono meno impegnativi.
Nella figura 10 .4, si confrontino gli eetti dello smussamento del periodogramma (fig. 10 .4b) con quelli della media di periodogrammi fatti
su sottointervalli (figg. 10 .4c - d - e - f - g); la qualit della stima in
figura 10 .4b ottenuta approssimativemante solo con la tecnica WOSA
(fig. 10 .4g) di cui al prossimo paragrafo.

12.7.3

La tecnica WOSA

E necessario evitare polarizzazioni dovute a eccessive infiltrazioni spettrali (spectral leaks): queste sono dovute, ad esempio, al troncamento nei
tempi di una sinusoide eettuato con una finestra rettangolare. Ci corrisponde nelle frequenze alla convoluzione con un sinc e origina componenti spettrali a frequenze anche lontane dalla frequenza della sinusoide
di partenza. Quindi, per formare le sottosequenze, necessario finestrare i dati con finestre abbastanza dolci come ad esempio coseno
rialzato per evitare questo fenomeno, specialmente se il segnale disturbato da forti segnali monocromatici.Cos facendo, tuttavia, la risoluzione
spettrale si riduce e soprattutto si pesano poco alcuni dati; quindi, la
dispersione della stima spettrale maggiore del necessario perch non si
utilizzano in egual modo tutti i dati. Allora, non volendo o non potendo
fare la cosa ottimale e cio trattare tutti i dati con una finestra unica
per poi smussare lunico periodogramma ottenuto, la tecnica consigliata
quella di sovrapporre le finestre (Window Overlap) con le quali i dati
vengono sezionati (vedi figura 10 .8 ) in modo da trascurare il minor nu279

CAPITOLO 12 ANALISI SPETTRALE NON PARAMETRICA

Figura 12.6: Disposizione delle finestre nella tecnica WOSA.


mero di dati possibile. Ancora, possibile tenere conto, in media, della
finestra con cui sono stati sezionati i dati, al momento della stima dello
spettro medio. Infatti, per smussare questultimo spettro si moltiplica
la funzione di autocorrelazione per una seconda finestra, in generale pi
stretta della finestra utilizzata per limitare la lunghezza dei dati. Questa
seconda finestra pu essere sagomata in modo opportuno da compensare
la polarizzazione che in media la prima finestra ha generato sui dati.
Questa tecnica di analisi spettrale nota con il nome di Window Overlap Spectral Analysis (WOSA; Nuttall; Proc. IEEE 1982) e assomiglia
molto alla tecnica parametrica MA che vedremo al prossimo capitolo.

12.8

Sommario

Riassumiamo qui le principali propriet del periodogramma e delle metodologie derivate.


1) Il segnale viene troncato con una finestra p.e. rettangolare su un
intervallo NT = Ttot .
2) Ne viene fatto il modulo della trasformata di Fourier, e diviso
per N. Questo corrisponde al calcolo dellautocorrelazione campionaria,
polarizzata.
3) La risoluzione spettrale massima (1/Ttot ), ma la dispersione
anche massima.
280

12.9 UN ESEMPIO

4) La polarizzazione della stima dovuta al troncamento brusco del


segnale molto elevata.
Cosa fare per migliorare?
Per una minore polarizzazione: troncare con finestre pi dolci come
la Haming o la Hann. Questo migliora la polarizzazione ma peggiora la
risoluzione spettrale (lobo principale della trasormata della finestra pi
largo).
Per una minore dispersione: si smussa il periodogramma e cio si
finestra lautocorrelazione campionaria trovata.
Ancora, si pu suddividere la sequenza in L sottosequenze e mediare
gli L periodogrammi: questo migliora la dispersione cos come uno smussamento, ma peggiora la polarizzazione perch il troncamento fatto con
una finestra pi corta.

12.9

Un esempio

Si considerino 2 sequenze casuali reali di 8 campioni e se ne trovi lo spettro


con il periodogramma, usando o due periodogrammi da 4 campioni o uno
solo da 8.
sequenza 1 6.3078 5.8842 5.8076 5.2822 4.4676 3.3751 3.1054 3.1517
sequenza 2 4.2887 -4.1611 3.9408 -3.5029 3.5127 -2.9277 3.0263 -2.7812
I periodogrammi sono:

Xk =

3
X

xn W4nk ; W4

n=0

X
0

X1
=
Xk =

X2

X3

1 1

i2
= exp
4

1 i 1 i

1 1 1 1

1 i 1 i

281

(12.14)

=i

23. 2
6.3

5.9 0.5 0.7i

5.8
1.0

0.5 + 0.7i
5.2

(12.15)

CAPITOLO 12 ANALISI SPETTRALE NON PARAMETRICA

1 1

1 i 1 i
0

Xk =

1 1 1 1

1 i 1 i

4.5

14. 1

3.3 1. 4 0.1i

3.1
1. 1

1. 4 + 0.1i
3.2

(12.16)

I due periodogrammi hanno i seguenti valori

|Xk |2
Pk =
= 135; 0.15; 0.25;
4
|Xk0 |2
= 50; 0.49; 0.30
Pk0 =
4

(12.17)
(12.18)

Il periodogramma a quattro campioni mediato

!
1 |Xk0 |2 |Xk0 |2
m
Pk =
+
= 92; 0.33; 0.28
2
4
4

(12.19)

Il periodogramma a 8 campioni :
(12.20)

175; 5; 0.5; 0.3; 0.5; 0.3; 0.5; 5

Per la sequenza 2:

1 1 1

1 i 1
Xk =

1 1 1

1 i 1

1
X0k =

i
1

0.6
4.3

4.1 0.4 + 0.6i

3.9 15. 8

0.4 0.6i
3.5

i 1 i

1 1 1

i 1 i

0.9
3.5

2.9 0.5 + 0.2i

3 12. 1

0.5 0.2i
2.7
282

(12.21)

(12.22)

12.9 UN ESEMPIO

I due periodogrammi hanno i seguenti valori


|Xk |2
= 0.09; 0.13; 62;
4
|Xk |2
Pk0 =
= 0.2; 0.07; 36
4
Pk =

Il periodogramma a quattro campioni mediato

!
0 2
0 2
|
|
1
|X
|X
k
Pm
+ k
= 0.14; 0.1; 49
k =
2
4
4

(12.23)
(12.24)

(12.25)

Il periodogramma a 8 campioni :
0.24; 0.04; 0.16; 0.82; 98.; 0.82; 0.16; 0.04

283

(12.26)

Capitolo 13
Analisi Spettrale Parametrica
13.1

Introduzione

Si consideri una sequenza di campioni indipendenti {xn } e con essa si


alimenti un filtro H(); se la trasformata della sequenza {xn } indicata
con X(), quella delluscita sar:
Y () = X()H()
E[|Y ()|2 ] = E[|X()|2 ] |H()|2
H() =

B()
A()

(13.1)
(13.2)

La densit spettrale di potenza bilatera del processo bianco {xn } costante


perch per sequenze di campioni indipendenti di lunghezza N, le componenti della trasformata di Fourier discreta sono tutte di eguale valore
quadratico medio (assumendo T = 1):
E[|Xk2 |]
= 2x
N

(13.3)

Lanalisi spettrale parametrica consiste nel determinare i parametri del


filtro H() (fig. 14.1) in modo che lo spettro in uscita del filtro assomigli
quanto possibile allo spettro del segnale {yn } da analizzare, o similmente,
la sua autocorrelazione sia eguale allautocorrelazione misurata. Avremo
analisi spettrale Moving Average (MA) se il filtro ha una trasformata z
caratterizzata da tutti zeri; avremo il caso Auto Regressivo (AR) quando
285

CAPITOLO 13 ANALISI SPETTRALE PARAMETRICA

wn

H (z) =

B (z )
A( z )

xn

Figura 13.1: Filtro i cui parametri vengono calcolati nellanalisi spettrale


AR e MA
il filtro tutti poli e cio autoregressivo: infine avremo il caso misto
ARMA (Auto Regressive Moving average) nel caso pi generale di poli e
zeri.
Vedremo che lanalisi spettrale parametrica tutti zeri praticamente
coincide con le tecniche non parametriche modificate delle ultime sezioni
del capitolo precedente. Le tecniche spettrali AR invece sono di natura
ben diversa ed innovativa ed ad esse destineremo grande attenzione per
tutta una serie di motivi che chiariremo in seguito.
Lanalisi spettrale ARMA poi, di uso meno frequente anche perch
come noto, un qualsiasi filtro pu essere rappresentato con soli zeri o soli
poli e una rappresentazione mista serve solo per una descrizione della
stessa (o di una simile) funzione di trasferimento con un numero inferiore
di parametri.
La validit di una descrizione AR o MA o ARMA dipende comunque
dalla qualit del modello cos ottenuto.

13.2

Analisi tutti zeri (MA)

Si consideri un filtro FIR con risposta allimpulso {bh } la cui trasformata


z caratterizzata da tutti zeri (fig. 13.2):
B(z) =

H
X

bh z h

(13.4)

h=0

Sia {xn } la sequenza bianca allingresso del filtro ed {yn } la sequenza,


286

13.2 ANALISI TUTTI ZERI (MA)

bn
xn

wn
0

Figura 13.2: Filtro FIR con risposta impulsiva {bn }


spettralmente colorata, in uscita. La funzione di autocorrelazione della
sequenza {yn } lunga 2H + 1 campioni ed :
#
" H
H
X
X
2
bh bk xnh xn+mk = x
bh bm+h
(13.5)
ry,m = E
h,k=0

h=0

dove si utilizzato il fatto che:


E[xnh xn+mk ] = 2x (h + m k)

(13.6)

Ricordiamo che il nostro problema quello di determinare un filtro {bh }


o la sua trasformata B(z) (la soluzione non unica) a partire da una
stima dellautocorrelazione dei dati. Per ora supponiamo che la stima
disponibile sia molto buona, per cui praticamente possiamo supporre di
avere la funzione di autocorrelazione vera rm .
Passando alla trasformata z si vede che R(z), trasformata z della rm
(fig. 13.4):
R(z) = 2x B(z)B (1/z)
(13.7)
Si osservi che R(z) un polinomio nella variabile z 1 che insieme ad ogni
radice, ha anche la radice reciproca e coniugata. Se le radici sono sul
cerchio unitario. saranno a coppie. Quindi, un modo per determinare un
filtro B(z), assegnata la funzione di autocorrelazione R(z), quello di
trovare le radici di R(z) e per esempio assegnare a B(z) tutte le H radici
allesterno del cerchio unitario e a B (1/z) tutte le altre (allinterno). In
questo modo, B (1/z) risulta a fase minima; altrimenti possiamo scegliere
B (1/z) a fase massima o fase mista, in 2H modi diversi (fig. 13.4).
287

CAPITOLO 13 ANALISI SPETTRALE PARAMETRICA

Figura 13.3: Funzione di autocorrelazione del filtro di fig.13.2

Si osservi che non basta che la R(z) sia un qualsiasi polinomio simmetrico, perch si possa individuare un filtro B(z). Infatti si avrebbero
coppie di zeri reciproci ma si potrebbero avere anche zeri semplici sul
cerchio unitario (fig. 13.5); in questo caso non sarebbe possibile trovare
la B(z) perch non si potrebbe associare unaltra radice in posizione
reciproca. Ma in questo caso, il polinomio simmetrico R(z) non rappresenterebbe una funzione di autocorrelazione in quanto la trasformata
di Fourier della ry,m e cio i valori assunti dalla R(z) sul cerchio unitario,
conterrebbero cambi di segno al passaggio per gli zeri e quindi anche
valori negativi, mentre invece uno spettro di potenza, Trasformata di
Fourier di una funzione di autocorrelazione vera, non sar mai negativo.
In conclusione, se lo spettro di un polinomio simmetrico tutto
positivo,
- le radici sono sempre a coppie e non compaiono radici isolate,
- si pu trovare un filtro B(z) in 2H modi diversi, se H lordine del
filtro.
Una sequenza simmetrica invece, pu avere zeri semplici (e non doppi)
sul cerchio unitario e quindi non corrispondere ad una funzione di autocorrelazione.
288

13.2 ANALISI TUTTI ZERI (MA)

B(z) a fase minima

B(z) a fase massima

B(z) a fase mista

Figura 13.4: Esempi di assegnazione degli zeri della R(z) alla B(z) (zeri
anneriti)

13.2.1

Troncamento della funzione di autocorrelazione

Si vede pertanto che se si ha:


- una funzione di autocorrelazione (spettro positivo)
- nulla per m > H.
allora sempre possibile trovare 2H filtri di lunghezza H + 1 che
alimentati da sequenze bianche hanno in uscita quella autocorrelazione.
Tuttavia, sono disponibili solo stime delle funzioni di autocorrelazione:
se la stima fatta con la correlazione con se stessa della sequenza bordata di zeri, allora la sua trasformata di Fourier, il periodogramma,
sempre positivo. Tuttavia, in questo caso, la lunghezza del filtro risulta eccessiva perch, a causa della dispersione della stima, i campioni
289

CAPITOLO 13 ANALISI SPETTRALE PARAMETRICA

Figura 13.5: a) Zeri dellautocorrelazione di fig 13.3 troncata con finestra


rettangolare b) Spettro di potenza derivante dalla finestratura rettangolare; sovrapposto lo spettro vero. Lo spettro vicino a quello vero, ma
diventa negativo, cosa impossibile.

dellautocorrelazione stimata non saranno mai nulli.


Se si desidera limitare la lunghezza H del filtro, si deve rastremare a 0
la funzione di autocorrelazione in H campioni, finestrandola in modo che
lo spettro si mantenga positivo, e quindi moltiplicandola per una finestra
che in pratica sempre quella triangolare (fig. 13.6).Usando finestre
pi ecienti come il coseno rialzato, non si potrebbe garantire che la
correlazione finestrata sia a spettro positivo e pertanto che la ricerca del
filtro B(z) possa poi andare a buon fine.
In conclusione, per fare una stima parametrica tutti zeri, necessario finestrare la funzione di autocorrelazione con una finestra triangolare di lunghezza 2H; quanto maggiore H tanto maggiore sar la
risoluzione spettrale della stima parametrica. In sostanza, si vede che
questa tecnica di stima spettrale coincide con quella dello smussamento del periodogramma presa in esame nel precedente capitolo: lunica
dierenza sta nel fatto che ora possibile dare un significato fisico alla semilunghezza della finestra sullautocorrelazione (e cio la lunghezza
dellantitrasformata del filtro usato per lo smussamento dello spettro).
290

13.3 ANALISI TUTTI POLI (AR)

Figura 13.6: a) Zeri della autocorrelazione di fig. 13.3 troncata con


finestra triangolare b) Spettro di potenza derivante dalla finestratura
triangolare; sovrapposto lo spettro vero Lo spettro ora tutto positivo,
anche se pi lontano da quello vero.

13.3

Analisi tutti poli (AR)

Questa tecnica di stima spettrale molto importante per tutta una serie di motivi che emergeranno via via che proceder lo studio: per ora
si osservi che avendo i filtri IIR risposta allimpulso illimitata, possono
produrre spettri di grande risoluzione spettrale con un numero limitato
di parametri. Pertanto si prestano alla descrizione di fenomeni che hanno un lungo tempo di coerenza, in cui cio il processo si decorrela assai
lentamente.
Sia {xn } la sequenza in uscita di un filtro IIR di ordine N, 1/AN (z)
alimentato da una sequenza bianca {wn }.
xn =

N
X

ah,N xnh + wn ;

X(z) =

h=1

AN (z) = 1 +

N
X

W (z)
;
AN (z)

(13.8)

ah,N z h

h=1

Lautocorrelazione della sequenza di uscita, che calcoliamo moltiplicando lequazione (13.8) per il campione xnm anticipato di m campioni e
291

CAPITOLO 13 ANALISI SPETTRALE PARAMETRICA

coniugato e poi considerando il valore atteso, rm :


rm =

E[xn xnm ]

N
X
= E[
ah,N xnh xnm ] + E[wn xnm ] =

(13.9)

h=1

N
X

ah,N rmh + 2w (m);

h=1

(13.10)

Infatti la sequenza {wn } incorrelata con i campioni precedenti xnm ; m >


0. Le equazioni (13.10) sono note come le equazioni di Yule - Walker e
forniscono tutta lautocorrelazione delluscita, dati i coecienti del
filtro AN (z) ed il v.q.m. del segnale dingresso 2w . Si osservi che nel
caso di segnale e o coecienti ah,N complessi, le equazione (13.10) vanno

scritte tenendo conto che rm = rm


. Per motivi mnemonici, pu essere
utile osservare che la formula (13.10) assomiglia ad una convoluzione tra
le sequenze rm ed ah,N ; non una convoluzione per la limitazione degli
indici. Lequazione corrispondente a m = 0 contiene anche la varianza del segnale di ingresso 2w ; peraltro, il filtro non dipende da questo
fattore di scala e si pu sempre riscalare la funzione di autocorrelazione
ponendo r0 = 1 risolvendo poi le equazioni (Y-W) per m = 1, . . . , N . Il
fatto che lequazione (13.10) sia definita per tutti i valori di m, implica
che assegnata qualsiasi N pla consecutiva di valori di rm , poi possiamo
determinare i valori di rm per qualsiasi altro valore.
Ancora, le equazioni di Yule Walker si possono ottenere in forma
matriciale in modo assai semplice indicando i seguenti vettori con i corrispondenti simboli:

a
1,N

a2,N

aN = a3,N

...

aN,N

Allora si ha:

xn1

xn2

; N = xn3

...

xnN

r
r (1)
x


rx (2) r2


; rN = rx (3) = r3


...

...


rN
rx (N)

xn = N aN + wn
292

(13.11)

13.3 ANALISI TUTTI POLI (AR)

E moltiplicando a sinistra per N e considerando il valore atteso, visto


che E [xN wn ] = 0 :
h
i
i
h
i
h
E N xn = rN = E N N aN + wn = E N N aN = RaN
La matrice dei coecienti delle equazioni (Y-W) una matrice di
Toeplitz; infatti simmetrica (o Hermitiana, per sequenze complesse) e
tutti gli elementi appartenenti alla stessa diagonale o subdiagonale sono
eguali tra loro. La matrice pertanto caratterizzata da N numeri. Il
vettore dei termini noti anche esso formato da campioni della funzione
di autocorrelazione, rm ; m = 1, . . . , N col segno cambiato. Riscrivendo
in forma matriciale le equazioni di Yule Walker infatti si ottiene:

r
0

r1

r2

...

rN1

a
1,N

rN+2 a2,N

rN+3 a3,N

...
...

aN,N
r0

r1

r2 . . . rN+1

r0

r1

...

r1

r0

...

...

...

...

rN2 rN 3 . . .

r
1

r2

= RaN = rN = r3

...

rN
(13.12)

ed in termini vettoriali:

RaN = rN

(13.13)

Per completezza, si aggiunge la formulazione completa, facilmente verificabile, in cui compare anche la prima equazione che contiene la varianza
della sequenza bianca di ingresso 2w . Si stia attenti al fatto che in questa
equazione non sempre le incognite sono contenute nel vettore aN ; a volte
la funzione di autocorrelazione a non essere nota, oppure il valore di
2w , ecc.
293

CAPITOLO 13 ANALISI SPETTRALE PARAMETRICA

r0 r1

r1

r2

...

rN

13.4

r2

. . . rN

r0

r1

...

r1

r0

...

...

...

...

rN 1 rN2 . . .

rN+1 a1,N

rN+2 a2,N

...
...

aN,N
r0

2w

...

(13.14)

La stima spettrale AR

Una volta trovati gli ah,N a partire per esempio dai valori assunti dalla
funzione di autocorrelazione per m = 1, . . . , N immediato determinare
le componenti dello spettro continuo del segnale {xi }; infatti la funzione
di autocorelazione, che ne la trasformata, determinata per tutti i
valori dellindice temporale m; pari a quella assegnata per m = 1 : N e
poi desunta dalle equazioni di Yule Walker per tutti gli altri valori.
E[|X()|2 ] =

E[|W ()|2 ]
2w T
=
;
P
jhT |2
|A(ejT )|2
|1 + N
h=1 ah,N e

(13.15)

Per dare un significato fisico a questa stima necessario garantire che il


filtro 1/AN (z) sia stabile e pertanto che il polinomio AN (z) sia a minima
fase; si dimostrer nei prossimi capitoli che ci accade se e solo se i campioni rm che si utilizzano nelle equazioni di Yule Walker sono campioni
di una funzione di autocorrelazione (a spettro positivo).
Di nuovo, per avere la stima spettrale AR di ordine N, non serve
tutta la funzione di autocorrelazione ma ne bastano i primi N campioni; gli infiniti altri sono calcolabili ancora in base alle equazioni di Y W a partire dal polinomio AN (z). In altre parole, il troncamento della
funzione di autocorrelazione non comporta problemi; semplicemente, i
valori dellautocorrelazione predetti in base alle equazioni Y-W, non coincideranno con quelli eettivi, quando la stima spettrale fatta con un
ordine (il valore di N) troppo basso.
294

13.5 UN ESEMPIO

13.5

Un esempio

Si considerino due 4 sequenze casuali reali di 8 campioni


sequenza 1 6.3078 5.8842 5.8076 5.2822 4.4676 3.3751 3.1054 3.1517
sequenza 2 4.2887 -4.1611 3.9408 -3.5029 3.5127 -2.9277 3.0263 2.7812.
Si determina ora la densit spettrale di potenza delle sequenza con la
tecnica a media mobile e la tecnica autoregressiva di ordine 2.

13.5.1

La stima della funzione di autocorrelazione

I sequenza:
La stima polarizzata dei primi tre campioni della funzione di autocorrelazione :

13.5.2

Stima MA

rb0 = 23. 371


rb1 = 20. 114
rb2 = 16. 980

La stima MA di ordine 2 , applicando la finestra triangolare per troncare


la funzione di autocorrelazione stimata:

b0 + b1 z 1 (b0 + b1 z) = b20 + b21 + z + z 1 b0 b1


(13.16)
b20 + b21 = 23.3

b0 b1 = 10
2

b0 + b21 2b0 b1 = (b0 b1 )2 = 3.3 b0 b1 = 1.81

2
b0 + b21 + 2b0 b1 = (b0 + b1 )2 = 33.3 b0 + b1 = 5.77

(13.17)

(13.18)
(13.19)
(13.20)

b0 = 7.58; b1 = 3.96

(13.21)

b0 = 3.96; b1 = 7.58

(13.22)

Lo spettro MA quindi:

2
SMA = 7.58 + 3.96ei
295

(13.23)

CAPITOLO 13 ANALISI SPETTRALE PARAMETRICA

y
125

100

75

50

25
0

0.5

1.5

2.5

3
x

13.5.3

Stima AR

La stima AR di ordine 2 si trova con la tecnica di Yule Walker:

2w

1
23.4 20.1 17

20.1 23.4 20.1 a1,2 = 0

17 20.1 23.4
0
a2,2

a1,2
a2,2

=
h

23.4 20.1
20.1 23.4

20.1
17

0.896 13
0.043 26

2
23.4 20.1 17 0.896 13 = 6.12 = w

0.043 26

(13.24)

(13.25)

(13.26)

Lo spettro AR quindi:
SAR =

6.12
|1 0.896 13ei + 0.043 26e2i |2
296

(13.27)

13.5 UN ESEMPIO

y
250

200

150

100

50

0.5

1.5

2.5

3
x

Per la sequenza 2:
La stima polarizzata della funzione di autocorrelazione :
rb0 = 12.7
rb1 = 11
rb2 = 9.3

La stima MA di ordine 2 , applicando la finestra triangolare per


troncare la funzione di autocorrelazione stimata:

b0 + b1 z 1 (b0 + b1 z) = b20 + b21 + z + z 1 b0 b1

(13.28)

b20 + b21 = 12.7

(13.29)

b0 b1 = 5.5

(13.30)

b0 + b21 2b0 b1 = (b0 b1 )2 = 23.7 b0 b1 = 4.86


2

b0 + b21 + 2b0 b1 = (b0 + b1 )2 = 1.7 b0 + b1 = 1.3

(13.31)
(13.32)

b0 = 3.05; b1 = 1.7

(13.33)

b0 = 1.7; b1 = 3.05

(13.34)

Lo spettro MA quindi:

2
SMA = 3.05 1.7ei
297

(13.35)

CAPITOLO 13 ANALISI SPETTRALE PARAMETRICA

y
20

15

10

0.5

1.5

2.5

3
x

La stima AR di ordine 2 si trova con Yule Walker:

2w

1
12.7 11 9.3

11 12.7 11 a1,2 = 0

9.3 11 12.7
0
a2,2

a1,2
a2,2

12.7 11
11 12.7

11
9.3

(13.36)

0.928 27
2

7. 173 0 10

(13.37)

:
h

12.7 11 9.3

1
0.928 27
7. 173 0 102

= 3.16 = 2w

(13.38)

Lo spettro AR quindi:

SAR =

|1 +

3.16
+ 0.0717e2i |2

0.93ei

298

(13.39)

13.5 UN ESEMPIO

y
150
125
100
75
50
25

0.5

1.5

2.5

3
x

Si confrontino i risultati con qulli ottenuti con il periodogramma nel


capitolo precedente.

299

Capitolo 14
La predizione lineare
Si consideri una sequenza {xi } a spettro non uniforme; per fissare le idee,
si pensi a {xi } come ad una sequenza uscente da un filtro tutti poli con
funzione di trasferimento 1/AN0 (z), a sua volta alimentato da una sequenza a spettro bianco {wi } (fig14.1). Si voglia stimare li-esimo campione

wi
A

(z )

xi

Figura 14.1: Filtro tutti poli


della sequenza, una volta che ne siano noti tutti i campioni precedenti,
fino a quello di posto i 1. In particolare, si desidera che la predizione
sia combinazione lineare degli N campioni precedenti della sequenza con
coecienti che indicheremo con an,N ; n = 1, . . . , N ; indicando con xi il
valore predetto del campione i-esimo:

xi =

N
X

an,N xin

n=1

301

(14.1)

CAPITOLO 14 LA PREDIZIONE LINEARE

Indicheremo con i,N lerrore di predizione corrispondente ad un predittore di ordine N e cio realizzato con N coecienti:
i,N = xi xi = xi +

N
X

an,N xin

(14.2)

n=1

La determinazione dei coecienti an,N viene fatta in modo ottimo, minimizzando il valore atteso del quadrato dellerrore:
2

E[|i,N | ] = E[(xi +

N
X

an,N xin )(xi +

n=1

N
X

an,N xin ) ]

(14.3)

n=1

Per trovare gli an,N basta minimizzare rispetto ad essi il valore dellerrore
q.m. e quindi imporre che:
N
X
E[|i,N |2 ]
= 2E[(xi +
an,N xin )xik ] = 2E[i,N xik ] = 0; k = 1, . . . N.
ak,N
n=1
(14.4)
Queste equazioni corrispondono alla condizione di ortogonalit. Se
lerrore di predizione minimo, deve essere incorrelato con i dati utilizzati
per calcolarlo; infatti, se correlazione vi fosse, si potrebbero utilizzare i
dati ancora meglio per ridurre lerrore ancora di pi, contraddicendo
lipotesi che lerrore fosse minimo. Inoltre, le equazioni (14.4) non sono
altro che le equazioni di Yule Walker.

E[i,N xik ] = rk +

N
X

an,N rkn = 0; k = 1, . . . N.

(14.5)

n=1

Indichiamo ora con EN (z) la trasformata z dellerrore di predizione {i,N },


con X(z) la trasformata z della sequenza {xi }, e con AN (z) il filtro
causale tutti zeri lungo N + 1 campioni (e che ha quindi una trasformata
z costituita da un polinomio di N grado nella variabile z 1 ) corrispondente alla funzione di trasferimento tra la sequenza {xi } e lerrore di
predizione {i,N } abbiamo:
EN (z) = AN (z)X(z)
AN (z) = 1 +

N
X
n=1

302

an,N z n

(14.6)
(14.7)

14.1 LERRORE DI PREDIZIONE

wi

A N (z )

xi

xi

1
A N 0 (z )

A N (z )

Figura 14.2: Progressivo sbiancamento di uno segnale con spettro tutti


poli
Si osservi che a0,N unitario; AN (z) quindi un polinomio monico.
Per la coincidenza delle equazioni di Yule - Walker, il polinomio AN (z)
quello stesso che abbiamo trovato a denominatore della funzione di
trasferimento tutti poli che sagoma lo spettro bianco di un rumore nella
stima spettrale autoregressiva rendendolo al massimo simile allo spettro
della sequenza {xi }, E[X()X ()]. In quel caso, si colorava uno spettro
bianco; in questo caso invece si sbianca lo spettro della sequenza {xi }.
Quindi, al crescere dellordine N dello stimatore, lo spettro di EN (z)
tende ad essere tanto pi uniforme in frequenza (bianco) perch la stima
spettrale autoregressiva diventa sempre pi accurata.

14.1

Lerrore di predizione

Indichiamo con:
2,N = E[(i,N )2 ]

(14.8)

Usando ancora le equazioni di Yule Walker e lincorrelazione tra errore e


dati vediamo che
2

E[|i,N | ] =

E[i,N xi ]

= r0 +

N
X
n=1

303

an,N rn

CAPITOLO 14 LA PREDIZIONE LINEARE

Vista la stazionariet delle statistiche, si tralascer lindice i nelle medie.


Se il predittore di ordine 0, lerrore di predizione coincide con il segnale da predire, e il suo valore quadratico medio coincide con il valore
2x = E[x2i ]. Al crescere dellordine del predittore N, il valore quadratico medio dellerrore di predizione deve decrescere, o quantomeno non
crescere. Infatti, si usa sempre pi informazione per fare la predizione,
che deve quindi migliorare progressivamente.
2x 2,N 2,N +1

(14.9)

Questa propriet sar poi confermata dallequazione (14.18). Peraltro,


il valore quadratico medio dellerrore di predizione non potr diventare
nullo a meno che non sia possibile, per le caratteristiche statistiche della
sequenza {xi } osservata, prevederne i valori futuri in modo esatto. Comunque, il miglioramento deve progressivamente rallentare e quindi i dati
del passato sempre pi remoto saranno sempre meno utili per migliorare
la predizione. Se sono poco utili, sono incorrelati con il valore attuale
dellerrore di predizione. Infatti, si gi osservato che la sequenza degli
errori di predizione tende ad essere sempre pi bianca, al crescere di N.
Questo concetto, aermato in modo intuitivo ora, verr poi dimostrato analiticamente poi.

14.2

Predizione lineare e analisi AR

Lanalisi spettrale autoregressiva ci ha fornito un metodo per calcolare un


filtro tutti poli, 1/AN (z) che, applicato ad un rumore bianco, ne sagoma
lo spettro in modo da riprodurre lo spettro della sequenza osservata.
La predizione lineare ci fornisce un filtro tutti zeri AN (z) che tende a
sbiancare la sequenza {xn } osservata, sempre meglio al crescere di N.
Questi filtri sono entrambi derivati con le stesse equazioni e dagli stessi
parametri e cio i primi N valori della funzione di autocorrelazione della
sequenza {xn }, r0 , . . . , rN (r0 , in sostanza, funziona da fattore di scala);
quindi essi tendono ad essere luno il reciproco dellaltro, e lo saranno se
dello stesso ordine. Supponiamo infatti di avere un processo bianco, reale,
{wi } allingresso di un filtro tutti poli 1/AN0 (z) e ne sia {xi } luscita.
Se ora applichiamo alla sequenza {xi } un predittore lineare di ordine
N, N N0 lerrore di predizione i,N sar reale ma non perfettamente
bianco; lo sar perfettamente se N N0 . In quelle condizioni, i,N0 = wi .
304

14.2 PREDIZIONE LINEARE E ANALISI AR

Una sequenza {xn } prodotta colorando una sequenza bianca con un filtro
tutti poli di ordine N0 , sar perfettamente sbiancabile con un predittore
di ordine N > N0 .
Se lordine del predittore cresce ancora, non succede altro perch gli
ulteriori campioni utilizzati per la predizione sono incorrelati con il segnale da predire e quindi il predittore non cambia ulteriormente. Se invece
lordine N del predittore N < N0 lo sbiancamento non perfetto e la
sequenza i,N non avr uno spettro uniforme. Troveremo che il predittore
di ordine N corrisponde alla struttura riverberante costituita dai primi
N tronchi di linea della struttura eettiva (di ordine N0 ). Quindi, alla crescita di N, corrisponde la progressiva identificazione dei successivi
coecienti di riflessione della struttura riverberante, da c1 a cN0 .

14.2.1

Allungamento del predittore

Vogliamo trovare un criterio per determinare i coecienti del predittore


di ordine N +1 a partire da quelli del predittore di ordine N. In sostanza,
non dobbiamo fare altro che risolvere le equazioni di Yule Walker, per
lordine N + 1, data la soluzione di ordine N.
Accrescere N di 1 implica utilizzare anche xiN1 per stimare meglio
xi ; tuttavia, parte dellinformazione contenuta in xiN1 gi nota attraverso i campioni utilizzati per la predizione xik ; 1 k N. In
termini intuitivi, se devo prevedere un evento di domani xn , uso linformazione reperibile dal giornale di oggi xn1 e dalla copia arretrata di ieri
xn1 . Devo usare anche linformazione reperibile dalla copia ancora pi
arretrata, dellaltro ieri xn2 ? A cosa mi servirebbe? Lovvia risposta
che linformazione contenuta in una copia ancora pi arretrata utile se
a) non deducibile dal materiale gi in mio possesso (le copie pi recenti) e b) se questo materiale nuovo poi mi serve per davvero per prevedere
levento di domani.
Quindi, la prima operazione da fare separare quanto gi noto da
xiN 1 da e utilizzare solo quello che di nuovo (rispetto a prima) contenuto in questo campione. In questo modo, il processo di miglioramento
della predizione risulter pi comprensibile. Stimiamo quindi xiN1 utilizzando proprio quei campioni successivi xin ; n = 1, N che abbiamo
usato per la predizione di xi . Questa stima lineare ottima, fatta allindietro, per la stazionariet del processo, utilizza gli stessi coecienti di
predizione, ma applicati alla sequenza ribaltati nel tempo. In termini
305

CAPITOLO 14 LA PREDIZIONE LINEARE

intuitivi, cerco nel giornale dellaltro ieri le notizie che non sono prevedibili dai giornali di oggi e di ieri. Ma mi serviranno per prevedere degli
eventi di domani? La stima ottima allindietro di xiN1 xiN1 :
xiN1 =

N
X

an,N xiN1+n

(14.10)

n=1

Lerrore di predizione allindietro i,N (quello che non sapevo) :


i,N = xiN1 xiN1

(14.11)

Ora i,N incorrelato con xin ; n = 1, N per costruzione ed quindi linnovazione contribuita dal campione xiN1 ; (linformazione contribuita dal giornale dellaltro ieri, non deducibile dai contenuti dei giornali di oggi e di ieri). Il nuovo stimatore di {xi } che fa uso di questa
innovazione :
xi,N +1 = xi,N cN +1 i,N
(14.12)
i,N +1 = xi xi,N + cN+1 i,N = i,N + cN+1 i,N

(14.13)

dove cN+1 un numero da determinare minimizzando lerrore q.m.; questo


numero stato indicato con cN+1 proprio perch coincide con l N + 1
coeciente di riflessione della struttura riverberante corrispondente al
filtro che ha prodotto la sequenza {xi }. Calcoliamo cN +1 applicando il
principio di ortogonalit; il nuovo errore di predizione deve quindi essere
incorrelato con la nuova informazione i,N :
E[i,N +1 i,N ] = 0
cN+1 =

E[ i,N i,N ]
E[( i,N )2 ]

(14.14)
(14.15)

Infatti
E[( i,N )2 ] = E[(i,N )2 ]

(14.16)

e per la diseguaglianza di Schwartz, segue:


|cN +1 | 1

(14.17)

Si osservi che cN+1 proporzionale alla correlazione tra gli errori di


predizione in avanti e allindietro e cio tra lerrore che avrei fatto senza
306

14.3 LA RICORSIONE DI LEVINSON

la copia del giornale dellaltro ieri, e linformazione additiva che posso


ricavare da quel numero del giornale. Se i due errori di predizione (luno
noto perch dipende da dati in mio possesso, laltro ignoto) sono correlati,
posso usare luno per ridurre laltro, migliorando la predizione. Inoltre:
2

E[(i,N +1 ) ] = E[(i,N ) ] (1

c2N+1 )

2x

N+1
Y
n=1

1 c2n E[(i,N )2 ]

(14.18)
Abbiamo ora la possibilit di calcolare direttamente cN+1 dalla funzione
di autocorrelazione; infatti, profittando dellincorrelazione tra errore di
predizione e stima:
E[(i,N )2 ] = E[(xi xi,N )(xi xi,N )] =
= E[(xi xi,N )xi ] = r0 +
Similmente:
E[i,N i,N ] = rN+1 +

N
X

N
X

(14.19)

an,N rn

n=1

(14.20)

an,N rN+1n

n=1

cN+1
dove:

P
rN+1 + N
rN aN
rN+1 + e
n=1 an,N rN+1n
=
=
P

aN
r0 + e
rN e
r0 + N
n=1 an,N rn

rN

a1,N

..
a2,N .

e
aN =
rN = .. aN = .. ; e

r2
..

aN,N
r1

14.3

aN,N

(14.21)

..

.. ];

a2,N

a1,N

La ricorsione di Levinson

Come abbiamo visto nel paragrafo precedente, il predittore di ordine


N + 1 si deriva da quello di ordine N utilizzando lerrore di predizione
allindietro e cio linnovazione apportata dal campione di posto iN 1
307

CAPITOLO 14 LA PREDIZIONE LINEARE

rispetto agli altri campioni gi utilizzati per la predizione. Lerrore di


predizione quindi:
i,N +1 = xi xi,N + cN+1 i,N = i,N + cN+1 i,N

(14.22)

In termini di trasformata z, indicando con


EN (z) = AN (z)X(z)

(14.23)

EN+1 (z) = EN (z) + cN+1 BN (z)

(14.24)

dove abbiamo indicato con BN (z) la trasformata z dellerrore di predizione allindietro e cio:
BN (z) = z N 1 A(z 1 )X(z)
si ricava:
eN (z)
AN+1 (z) = AN (z) + cN+1 z N1 AN (z 1 ) = AN (z) + cN+1 z 1 A
(14.25)
Abbiamo riottenuto la ricorsione di Levinson. La progressiva identificazione di AN0 (z) avviene attraverso la progressiva identificazione dei coecienti di riflessione della struttura riverberante
corrispondente.
Infatti, per N > N0 le equazioni di Yule Walker ci garantiscono la corretta analisi spettrale ed un errore di predizione perfettamente bianco, se
la sequenza di partenza era luscita di una struttura riverberante di ordine
N0 alimentata da una sequenza bianca. Accrescendo progressivamente
lordine del predittore, a partire da N = 1, calcoliamo in successione i
coecienti di riflessione, che alla fine risultano essere quelli corretti, perch lo sbiancatore (la funzione di trasferimento tra la sequenza {xi } e la
sequenza errore di predizione {i }) diventa perfetto. Quindi, i coecienti di riflessione erano stati individuati correttamente sin dal momento in
cui erano stati calcolati.
Pertanto, se si utilizzano gli stessi campioni della funzione di autocorrelazione, i coecienti di riflessione che risultano dalla predizione lineare
sono gli stessi della struttura riverberante che ha colorato la sequenza
bianca {wi } iniziale. Ovviamente, se invece il processo nasce da meccanismo completamente diverso, possibile che questi coecienti non
abbiano gran significato; tuttavia, lesempio delle Direzioni di Arrivo che
308

14.3 LA RICORSIONE DI LEVINSON

verr proposto in un capitolo successivo dimostra che questa tecnica di


stima spettrale ha una validit che si estende a numerosissimi campi
applicativi.
Per avere una motivazione intuitiva di questo importante risultato,
si pensi ad una struttura riverberante disadattata da un lato, eccitata
da una sequenza bianca dalla parte disadattata. Si supponga poi che
il sistema sia eccitato da una successione di impulsi indipendenti, e che
un coeciente di riflessione c1 corrisponda alla riflessione di una frazione
c1 di questi impulsi, mentre invece il restante segnale viene trasmesso. E comprensibile che il primo campione della funzione di autocorrelazione delluscita dipenda solo dal primo coeciente di riflessione c1 ; una
frazione c1 dei campioni del segnale in ingresso si riflette e riemerge alluscita dopo un ritardo pari a T sovrapponendosi al campione successivo
(o alla sua parte che stata trasmessa direttamente attraverso la prima
interfaccia). Nasce cos la correlazione a ritardo T , r1 . Vediamo quale
frazione del segnale viene ritardata di 2T e cio contribuisce a formare
r2 : contribuiscono:
- i campioni dellingresso che hanno subito una riflessione alla seconda
interfaccia (una frazione pari a c2 );
- quella frazione dei campioni che dopo avere fatto una prima volta il
percorso ingresso - prima interfaccia, lo ripete. Questa frazione pari a
c21 .
Questa frazione di segnale per correlata anche con il segnale che
abbiamo trovato dopo solo un intervallo T , e quindi aveva fatto solo
una volta il percorso c1 c0 ; se pertanto cerchiamo di rimuovere questa
componente cercando quanto decorrelato con il campione precedente, la
componente di correlazione residua (il coeciente di correlazione parziale
o PARCOR come viene chiamato in alcune trattazioni) legato solo al
coeciente di riflessione c2 e cos via.
In altre parole, la correlazione tra gli errori di predizione in avanti
ed allindietro legata solo alla frazione di segnale che ha percorso il
tratto fino alla Nesima interfaccia senza subire riflessioni intermedie
ma venendo solo trasmesso; quindi la sua ampiezza proporzionale al
solo coeciente di riflessione cN . Un altro risultato importante che,
per la ricorsione di Levinson, ripetendo la dimostrazione fatta, i polinomi
AN (z) sono a fase minima, se i coecienti di riflessione sono minori di 1,
cosa peraltro dimostrata in precedenza.
309

CAPITOLO 14 LA PREDIZIONE LINEARE

14.3.1

Vantaggi computazionali

La ricorsione di Levinson comporta notevoli vantaggi computazionali nella soluzione delle equzioni di Yule - Walker: infatti la soluzione di un
sistema di N equazioni in N incognite comporta un numero di moltiplicazioni proporzionale a N 3 ; invece, se si utilizza la ricorsione il costo
diventa propozionale a N 2 . Infatti, allungando il predittore dobbiamo
calcolare lN + 1 esimo coeciente di riflessione utilizzando la formula
(14.15); questo comporta 2N moltiplicazioni ed una divisione; inoltre,
dobbiamo calcolare i nuovi {ah,N +1 } e questo comporta altre N moltiplicazioni; quindi, circa 3N moltiplicazioni per ogni passo e pertanto circa
un totale di 1.5N 2 moltiplicazioni invece di una proporzionalit ad N 3 ,
con indubbi vantaggi.

14.4

Il filtro a traliccio non ricorsivo

Possiamo ora costruire un sistema numerico per il calcolo degli errori di


predizione in avanti ed allindietro, basato appunto sulla ricorsione di
Levinson. Questo sistema sar poi utilizzabile come uno sbiancatore, a
minima fase, di sequenze colorate.
Supponiamo di disporre di i.N e i,N ; possiamo ottenere, tenendo conto del ritardo crescente del campione stimato allindietro, senza
contraddizione con la (14.22):
i,N +1 = i,N + cN+1 i,N

(14.26)

i,N +1 = i1,N + cN+1 i1,N


(14.27)
Ne nasce la struttura numerica di figura 14.3 nota come filtro a traliccio
non ricorsivo; evidente la somiglianza con il filtro a traliccio ricorsivo
corrispondente ad una struttura riverberante: le dierenze sono nei segni
dei collegamenti incrociati e nei sensi della propagazione del segnale nei
due rami. Il filtro a traliccio non ricorsivo serve non solo da sbiancatore
della sequenza, fornendo in uscita i,N , ma anche da predittore {
xi,N };
la predizione la dierenza tra ingresso ed uscita del filtro ed funzione
solo dei dati passati; essa disponibile prima dellarrivo del prossimo
campione della sequenza e quindi prima che sia disponibile i,N .
I coecienti di riflessione possono essere derivati dai valori della funzione di autocorrelazione, come gi visto; per possono anche essere ottenuti dalla correlazione mutua tra gli errori di predizione in avanti e
310

14.5 DESCRIZIONI ALTERNATIVE DELLAUTOCORRELAZIONE


cN+1

moltiplicatore
i,N

i,N+1

cN+1
c N+1

i,N

xi
c1

xi-1

i,1= x i + c1xi-1

i,1= xi-2 + c1xi-1

c1
z -1

i,N+1

z -1

z -1

Figura 14.3: Filtro a traliccio non ricorsivo: cella intermedia e cella


iniziale
allindietro, normalizzati. In questo modo il filtro a traliccio ricorsivo
assume la forma di figura 14.5: lelemento interessante di questa configurazione che il sistema pu essere reso adattativo, stimando la correlazione tra i,N , i,N con stimatori che p.e. utilizzano solo gli ultimi M
campioni, obliando quelli passati, con dei criteri di progressivit che
vedremo nel capitolo sui sistemi adattativi.
Il filtro a traliccio nella configurazione di figura 14.5 perci un sistema autonomo, che pu calcolare, al variare del tempo e delle statistiche
dellingresso, i coecienti di riflessione e pertanto lo spettro dellingresso, la predizione ottima ed infine lerrore di predizione e cio la sequenza
sbiancata.

14.5

Descrizioni alternative dellautocorrelazione

Nei paragrafi precedenti abbiamo visto come i primi N valori di una


funzione di autocorrelazione r0 ...rN di una qualsiasi sequenza colorata
{xn } siano esprimibili in funzione dei coecienti del polinomio AN (z)
311

xi

312

c1

c1

z -1

i,1

i,1

quindi: u= q1+ q2+ q3 = i,3 xi = x$ i,3

q3= i,3 i,2

q2=i,2 i,1

q1=i,1 xi

z -1

q1

q2

c2

c2

z -1

i,2

i,2

q3

c3

c3

z -1

i,3

i,3

x$ i,3

CAPITOLO 14 LA PREDIZIONE LINEARE

Figura 14.4: Filtro a traliccio non ricorsivo: uso come predittore

xi

z -1

Figura 14.5: Filtro a traliccio adattativo

313
i ,N

i,N

c1

c1

Dove:

z -1

i,1

cN + 1 =

i,1

E i, N

[( ) ]

E i, N i,N

c2

c2

z -1

i,2

i,2

c3

c3

z -1

i,3

i,3

14.5 DESCRIZIONI ALTERNATIVE DELLAUTOCORRELAZIONE

CAPITOLO 14 LA PREDIZIONE LINEARE

per la predizione an,N , n = 1, ...N :


AN (z) = 1 +

N
X

an,N z n

n=1

nonch al valore quadratico medio dellerrore di predizione residuo E 2n,N ;


ancora, sono esprimibili in funzione
degli N coecienti di riflessione
ci i = 1, ..N, ancora insieme a E 2n,N . Un terzo modo di descrivere lo spettro dato daglle posizioni degli zeri di AN (z) ed ancora altri
modi saranno visti nel capitolo 15, con le LSP (Line Spectral Pairs). Di
tutte queste descrizioni alternative di una funzione di autocorrelazione (o
di uno spettro) quella dei coecienti di riflessione la pi vicina ad una
descrizione fisica. Difatti, basta assicurarsi che |ci | < 1, i = 1, ...N perch
automaticamente risulti che la matrice di covarianza R sia semi definita positiva e cio che per tutti i suoi autovalori risulti i 0. Se poi
comunque sempre possibile passare da un modo di descrizione ad un
altro, anche vero che i coecienti d riflessione sono meno sensibili ad
eetti quantizzazione rispetto agli an,N , come visto nel capitolo 7. Infine,
il difetto della descrizione mediante gli ri la dicile verifica della positivit della matrice di covarianza R, e quindi le derivanti dicolt nel
troncamento di una serie di valori dellautocorrelazione (la finestratura
vista nel capitolo 10) che pu portare a valori negativi dello spettro e
quindi a qualche i < 0; abbiamo gi osservato che la soluzione a questo
problema, nel caso della stima spettrale AR, lestrapolazione della sequenza delle autocorrelazioni con le equazioni di Yule Walker, cosa che
poi consente di avere uno spettro positivo. Tutte queste dicolt sono
risolte dall0 uso dei coecienti di riflessione; infatti,con il metodo di stima
spettrale AR di Burg, molto usato e che sar visto nel prossimo paragrafo,
la stima spettrale avviene con la stima diretta dei ci .

14.6

Ordine del predittore

14.6.1

Risoluzione spettrale

Se i dati a disposizione hanno lunghezza infinita e vi stazionariet statistica, lanalisi spettrale non pone problemi: c modo di determinare la
funzione di autocorrelazione con la qualit desiderata. Il periodogramma
314

14.6 ORDINE DEL PREDITTORE

potr dare risultati con la risoluzione spettrale e la dispersione statistica


volute, senza dovere fare compromessi tra luna e laltra. Il problema
dellanalisi spettrale quindi sempre e solo collegato ad una limitata
disponibilit di dati. E interessante valutarne gli eetti nel caso dellanalisi spettrale parametrica. Ladabilit del modello da estrarre dai
dati diminuisce, se ne aumenta la complessit. Al crescere dellordine N
del predittore (o dello stimatore) tende a peggiorare il condizionamento della matrice R; inoltre, si dovranno stimare un numero crescente di
campioni dellautocorrelazione dei dati e leetto degli errori di questa
stima sar anchesso crescente. Similmente, nel caso del periodogramma,
ladabilit dei risultati decresce con il crescere del numero di parametri
da stimare; il numero di parametri qui coincide con il numero delle celle
in cui suddiviso lasse delle frequenze e pertanto vi una relazione
diretta tra adabilit della stima e risoluzione spettrale.
In questo, la stima AR ha una grande dierenza con il periodogramma, come si vedr nel caso delle direzioni di arrivo (DOA): la risoluzione
spettrale AR non dipende sostanzialmente dalla lunghezza del
predittore, ma piuttosto dalla vicinanza al cerchio unitario degli zeri del
polinomio AN (z). Questa vicinanza dipende sia dallentit del rumore
che accompagna i dati sia dalla larghezza di banda del segnale stimato;
inoltre la dispersione della stima dei campioni dellautocorrelazione utilizzati per costruire R porta alla dispersione delle posizioni degli zeri di
AN (z) e quindi ad errori di stima delle posizioni dei poli del modello AR
ma non necessariamente a picchi spettrali meno pronunciati.
Nel caso di un segnale sinusoidale di frequenza ignota (il caso dellorologiaio), se il rapporto segnale - disturbo buono, se il segnale corrisponde ad una sola sinusoide, e se inoltre la stima della funzione di
correlazione buona, basterebbero anche 2 soli campioni (ma ben stimati) della funzione di autocorrelazione, per avere una risoluzione spettrale al limite infinita. Qui la dierenza con la stima spettrale fatta con
il periodogramma veramente molto grande. Infatti, c lipotesi essenziale che vi sia una sola sinusoide: la stima spettrale si riduce alla
stima della frequenza di quella sinusoide. Se il numero di sinusoidi fosse
m > 1, avremmo invece bisogno almeno di m + 1 campioni della funzione
di autocorrelazione per stimare le m frequenze ed il valore q.m. del segnale. Infine, osserviamo ancora che questo il tipo di analisi spettrale
che potrebbe essere fatto per misurare la frequenza di un singolo oscillatore: lunica variabile da stimare la frequenza. Poi, si possono usare le
315

CAPITOLO 14 LA PREDIZIONE LINEARE

equazioni di Yule Walker per estrapolare la funzione di autocorrelazione


su tutto lasse dei tempi completando lanalisi.

14.6.2

Lunghezza dei dati e criterio di Akaike

Se sono disponibili M campioni dei dati, lordine N del predittore sar


necessariamente N < M. Volendo, per, N pu essere fatto crescere
fino ad M 1, senza rischi di instabilit, utilizzando la via della stima
diretta dei ci piuttosto che degli ri . Un metodo per accrescere senza rischi
lordine del predittore il metodo di Burg (o della massima entropia).
Invece di stimare i campioni della funzione di autocorrelazione, si stimano
appunto direttamente i coecienti di riflessione e per garantire che siano
sempre minori di 1, si usa la formula:
ch+1 = 2

E[i,h i,h ]
E[2i,h + 2i,h ]

(14.28)

dove, non potendo realizzare loperatore di valore atteso, E[.], lo si sostituisce con la media su tutti i dati:
PM
m,h m,h
(14.29)
ch+1 = P m=0(2 + 2 )
M
m=0

m,h

m,h

Poi si calcolano gli errori di predizione di ordine h+1 e cos via, eventualmente fino ad avere h = M 1; allora, ovviamente lerrore di predizione
diventa eguale a zero. Il metodo di Burg (ma sarebbe la stessa cosa per
la corrispondente stima spettrale AR) indicato come metodo a massima
entropia perch si verifica che:
- assegnati i primi N valori della funzione di autocorrelazione;
- determinando tutti gli altri valori della funzione di autocorrelazione
mediante le equazioni di Yule Walker;
- trasformando con Fourier la funzione di autocorrelazione e trovando
la densit spettrale;
- calcolando lentropia di questa densit spettrale (il valore medio del
logaritmo);
- si verifica che tale entropia massima tra tutte le densit
spettrali (tutte positive) caratterizzate dallavere i primi N valori dellautocorrelazione eguali a quelli assegnati.
316

14.7 CONDIZIONAMENTO DI R

In altre parole, nella stima AR lo spettro il pi frastagliato possibile, compatibilmente con i valori assegnati della funzione di autocorrelazione. Al contrario, nella stima MA, lo
spettro il pi liscio possibile (la funzione di autocorrelazione
viene troncata appena possibile, compatibilmente con i campioni dellautocorrelazione misurati e con lavere un spettro tutto
positivo).
Tuttavia, pur disponendo cos di un metodo che garantisce di poter
avere predittori di ordine elevatissimo, sbagliato accrescere troppo N
rispetto ad M; i coecienti di riflessione trovati sono solo una pessima
stima di quelli veri. Con unaltra realizzazione del processo, sarebbero
tuttaltri. Esiste un criterio per limitare lordine del predittore, noto come
criterio di Akaike: si studia landamento del cosiddetto Final Prediction
Error:
M
M +N 1 X 2
2
F =

(14.30)
M N 1 m=0 m,N

e si cerca il valore di N per cui lo FPE minimo; se N << M lo FPE


decrescer con N , come consueto; poi, se il numero di parametri del
modello diventa esagerato, e N si avvicina troppo ad M, lo FPE tende
a crescere di nuovo. Spesso prudente mantenere N alquanto inferiore a
quanto proposto da Akaike.

14.7

Condizionamento di R

Abbiamo visto come il predittore aN venga determinato risolvendo, eventualmente con la ricorsione di Levinson, il sistema:
RaN = rN

(14.31)

Abbiamo anche visto che, se gli elementi della matrice R derivano dai
campioni di una funzione di autocorrelazione, allora il polinomio
AN (z) = 1 +

N
X

an,N z n

(14.32)

n=1

a fase minima; infatti, denominatore della funzione di trasferimento


corrispondente alla struttura riverberante che ha sagomato spettralmente
317

CAPITOLO 14 LA PREDIZIONE LINEARE

il processo, troncata allennesimo coeciente di riflessione. Tuttavia R


pu essere singolare, anzi in generale dovrebbe proprio esserlo. Infatti,
se la sequenza {xn } che osserviamo proveniente da un campionamento
senza equivocazione di un segnale passa basso, il contenuto spettrale
alle frequenze vicine alla frequenza di Nyquist dovr essere praticamente
nullo; ora poich lerrore di predizione
i,N = xi +

N
X

an,N xin

(14.33)

n=1

ha spettro E[|E(z)|2 ] bianco, se N abbastanza grande, poich


E[|E(z)|2 ] = E[|X(z)|2 ]|AN (z)|2

(14.34)

allora |AN (z)|2 molto grande, almeno vicino alla frequenza di Nyquist,
dove E[|X(z)|2 ] molto piccolo. Ci implica che la matrice R prossima
alla singolarit perch il vettore che soluzione del sistema ha un modulo
grande, malgrado che sia termini noti che coecienti siano dello stesso
ordine di grandezza.
Pertanto, non possiamo risolvere le equazioni di Y-W senza
precauzioni.
Da un altro punto di vista, gli autovalori i della matrice R, se circolante, corrispondono alle energie delle componenti della Trasformata
Discreta di Fourier della sequenza. Anche se la matrice R non circolante, ci attendiamo che gli autovalori siano collegati alle ampiezze
dello spettro di potenza della sequenza {xn }. Se la sequenza passa
basso, alcuni dei valori spettrali saranno pressoch nulli, e cos saranno
alcuni tra gli autovalori. Ancora, ci attendiamo che la R sia singolare o
almeno mal condizionata.
Per risolvere il problema del cattivo condizionamento, ci comporteremo come se vi fosse un disturbo sovrapposto alla sequenza osservata
{xi }, come vedremo nel prossimo paragrafo.

14.8

Stima con rumore

Supponiamo che la sequenza osservata {xi } sia disturbata da un rumore


bianco {zi }; supponiamo inoltre che {xi } sia una sequenza colorata; ad
318

14.8 STIMA CON RUMORE

esempio potrebbe essere luscita di una struttura riverberante con funzione di trasferimento 1/A(z) alimentata da una sequenza bianca {wi };
per unidea intuitiva, si pensi a {wi } come al suono generato da un coro
di voci bianche (tanto per ricordare che si tratta di una sequenza bianca e
gaussiana) in una cattedrale che causa delle riverberazioni corrispondenti
alla funzione di trasferimento 1/A(z); (peraltro, una cattedrale vera corrisponde non ad una sola struttura riverberante ma al parallelo di tante
di queste strutture e pertanto la funzione di trasferimento che si potrebbe
misurare avrebbe non solo poli ma anche zeri; tuttavia, per proseguire
lesempio, supponiamo che la funzione di trasferimento sia costituita solo
da poli). Un ascoltatore rileva {yi }, e cio ascolta il coro {wi } riverberato attraverso la cattedrale 1/A(z) ma disturbato dal brusio dei vicini
{zi }; si pongono due problemi nuovi:
(i) ricostruire {xi } usando N campioni del segnale riverberato e disturbato (la sequenza {yi }), attenuando leetto del disturbo {zi }; si vuole
cio fare una stima ottima {b
xi,N } della sequenza {xi } combinando linearmente N valori della sequenza osservata {yi }; per mantenere lomogeneit con la trattazione precedente in cui si considera la predizione,
supponiamo per ora che i campioni utilizzati per la stima siano tutti
precedenti il campione yi e siano cio yi1 , ....yiN . Si potrebbe tuttavia
generalizzare il problema, utilizzando per la stima anche il campione yi
o addirittura i campioni successivi trasformando il problema da quello di
stima predittiva a quello di uninterpolazione.
(ii) stimare direttamente il segnale di ingresso {wi } (il coro) con uno
stimatore lungo N campioni, e cio determinare {w
bi,N }.
wi

1
A N0 ( z)

xi

B N (z)

$x i

zi

Figura 14.6: Somma di rumore bianco ad un processo colorato


Passando al calcolo, indichiamo con {yi } i campioni riverberati {xi }
disturbati dal rumore additivo {zi }:
yi = xi + zi
319

(14.35)

CAPITOLO 14 LA PREDIZIONE LINEARE

Vogliamo stimare la sequenza {xi }, combinando tra loro linearmente N


campioni della sequenza {yi }: questo problema immediatamente riconducibile a quanto fatto finora, minimizzando lerrore di stima quadratico
medio. Si applica quindi il principio di ortogonalit tra errore di stima
(piuttosto che lerrore di predizione, ma in sostanza la stessa cosa; cambia solo la posizione dei campioni assegnati rispetto a quella del campione
da stimare) e dati; sia {b
xi,N } il segnale stimato, funzione lineare dei vari
campioni della sequenza {yi }:
x
bi,N =

Lerrore di stima :

N
X

(14.36)

bn,N yin

n=1

i,N = xi xi

(14.37)

e se ne impone lincorrelazione con i dati, per garantirne lottimalit:


E[ i,N yik ] = 0;

(14.38)

k = 1, . . . , N

opportuno osservare che lerrore di stima { i,N } non disponibile,


poich la sequenza {xi } non nota; incidentalmente, si ricordi che lerrore
di predizione {i,N } della sequenza {yi } invece sempre disponibile, anche
se con il ritardo di un campione. Utilizzando lincorrelazione tra {xi } e
{zi }, lo stimatore
bN = {bi,N };
dato dal sistema:

r + 2z r1
0

r1
r0 + 2z

r2
r1

...
...

rN1
rN2

e cio

. . . rN+1

r1

...

...

...

rN3

...

b
1,N

rN+2 b2,N

rN+3 b3,N

...
...

2
bN,N
r0 + z

r2

r0 + 2z . . .

(14.39)

i = 1, ...N

1
bN = R + 2z I
rN
320

r
1

r2

r3 (14.40)

...

rN
(14.41)

14.8 STIMA CON RUMORE

Quindi, se al segnale da stimare sommato del rumore, alla matrice


R si somma la matrice identica, moltiplicata per la varianza del rumore
2z . Gli autovalori della matrice R + 2z I sono i + 2z ; se la matrice R
una matrice di covarianza, i 0; quindi i + 2z > 0.
In conclusione, il problema (i) della stima di una sequenza {xi }, disturbata da un rumore additivo {zi }, eettuata con uno stimatore di
lunghezza N, (la ricerca di {b
xi,N }) sempre ben condizionato; infatti, non si devono eettuare amplificazioni illimitate perch porterebbero
a segnali troppo influenzati dal disturbo. Si osservi che per risolvere il
problema (i) basta conoscere la matrice di covarianza R del segnale osservato {yi }, il valore quadratico medio del rumore aggiunto, ed il vettore
rN ; inoltre, non necessario che la stima sia riferita al campione attuale;
in altre parole, si pu decidere di stimare un campione precedente della
sequenza {xi }; ci altera il vettore dei termini noti rN senza alterare la
matrice R. In quel caso, la ricorsione di Levinson non sarebbe pi applicabile per la determinazione della soluzione, ma lerrore di stima sarebbe
pi piccolo, perch utilizzeremmo per fare la stima dati utili anche se
successivi al tempo di generazione del segnale.
Calcoliamo ora lerrore di stima quadratico medio risultante, profittando dellincorrelazione tra errore di predizione e dati yin ; n = 1 :
N:
N
X
i,N = xi xi = xi +
bn,N yin ;
n=1

E 2i,N = 2 = E
= E

"

"

xi +

xi +

N
X

bn,N yin

n=1

N
X

"N
X

N
X
n=1

bm,N yim

m=1

! #

bn,N (xin + zin ) xi

n=1

2x

xi +

N
X

!#

bn,N (xin + zin ) xi

n=1

2 = 2x + E

1
bn,N rn = 2x rTN R + 2z I
rN

Possiamo ora risolvere il problema (ii) e da quella via dare un ulteriore


significato anche allerrore di predizione; stimiamo con uno stimatore
321

CAPITOLO 14 LA PREDIZIONE LINEARE

lungo N campioni, la sequenza {wi } che alimenta il filtro tutti poli che
genera la sequenza {xi }; (ricostruiamo il coro di voci bianche, senza la
riverberazione della cattedrale e attenuando quanto possibile il brusio dei
vicini). Supponiamo che la stima questa volta venga fatta utilizzando
anche il campione corrente yi , e quindi la sommatoria corrispondente
allo stimatore inizi da n = 0 e non da n = 1. I coecienti dello stimatore
sono sempre ottenuti mediante il principio di ortogonalit tra errore di
stima e dati, per minimizzare lerrore quadratico medio.
yi = xi + zi ;

E[(wi +

N
X

xi =

w
bi,N =

N
X

N0
X

an,N0 xin + wi

(14.42)

n=1

cn,N yin ;

(14.43)

n=0

cn,N yin ) yik ] = 0;

h=0

0kN

(14.44)

Mentre la matrice del sistema sempre la matrice di autocorrelazione


della variabile {yi } e cio R + 2z I, il vettore dei termini noti r0 con
componenti rk0 = E[wi yik ] e pertanto ha tutte le componenti nulle
per la bianchezza della sequenza {wi } tranne la prima eguale a 2w .

c0,N
2w
r0 + 2z r1
r2
. . . rN

2
0
r1
r0 + z r1
. . . rN +1 c1,N

2
r2
r1
r0 + z . . . rN +2 c2,N = 0 (14.45)

...
...
...
...
... ...
...

2
0
rN
cN,N
rN1
rN2
. . . r0 + z
Vi sono due casi possibili.

14.8.1

Il caso 2z = 0

Si ritrovano esattamente le equazioni di Yule - Walker che, nel caso in cui


il termine noto sia eguale a 2. , o a meno di un fattore di scala, danno
come soluzione la sequenza 1, a1,N , . . . , aN,N la cui trasformata z il solito
322

14.8 STIMA CON RUMORE

polinomio AN (z). Pertanto, in questo caso, la sequenza stimata {w


bi,N }
coincide con {i,N } errore di predizione della sequenza {yi }; ne deduciamo
che {i,N } (a meno di un possibile fattore di scala pari a 2. / 2w ) una
stima della sequenza di ingresso della struttura tutti poli che ha generato
la sequenza {xi }; si comprender ancora meglio perch {i,N = w
bi,N }
tenda ad essere una sequenza bianca, non appena lo stimatore abbia una
lunghezza suciente. infatti la stima di una sequenza bianca. Inoltre,
si pu ancora applicare la ricorsione di Levinson.

14.8.2

Il caso 2z 6= 0

Se 2z 6= 0, allora, anche per N la sequenza {w


bi,N } non
diventa bianca a dierenza della sequenza {i,N }.
Quindi, per
2z 6= 0, {i,N 6= w
bi,N }; in particolare la sequenza {w
bi,N } tender ad
avere valori spettrali bassi alle frequenze per le quali la sequenza {xi }
ha spettro di potenza inferiore al livello del disturbo additivo {zi }. Per
capire ci, pensiamo al caso in cui il brusio dei vicini diventi assordante:
la sequenza {yi } praticamente coincidente con la sequenza {zi }; quindi
impredicibile e viene a coincidere con la sequenza {i,N }. Invece la sequenza {w
bi,N } tende a zero; infatti, il coro impercepibile ed opportuno
tapparsi le orecchie.
Per comprendere meglio questo eetto, opportuno ripetere lintera
analisi nel dominio delle frequenze, come faremo nel prossimo paragrafo,
o nel dominio degli autovettori, come verr fatto nel paragrafo ancora
successivo.

14.8.3

Predizione, stima e sbiancamento: un riassunto

Appare opportuno riassumere i vari casi di predizione o stima di una serie


temporale di autocorrelazione assegnata sia essa discendente da un processo AR, che da un processo AR + rumore, che qualsiasi. Le equazioni
che seguono corrispondono alla predizione del processo {yi }, consistente
in un processo AR {xi }, cui sovrapposto del rumore {zi }, a varianza
2z . Il valore q.m. dellerrore di predizione indicato con 2,N ; le incognite del sistema sono appunto 2,N e gli N coecienti an,N . Facendo la
predizione del campione attuale (i esimo) usando gli N precedenti si
323

CAPITOLO 14 LA PREDIZIONE LINEARE

ha un errore i,N :
yi = xi + zi

rn = E xi xin

ybi =

N
X

an,N yin

n=1

i,N = yi ybi = yi +

N
X

an,N yin

n=1

Le N equazioni per il calcolo degli an,N sono derivanti dallortogonalit:


!
#
"
N
X

E (yi ybi,N ) yim


= 0 m = 1, ....N
an,N yin yim
=E
yi +
n=1

Unaltra equazione (qui messa come la prima, come viene fatto spesso in
letteratura, ma con eetti a volte di confusione) invece d il valore q.m.
dellerrore di stima 2,N :
! #
"
N
X
E [(yi ybi,N ) yi ] = E
yi +
an,N yin yi = 2,N

n=1

r0 + 2z r1

r1

r2

...

rN

r0 +

2z

r2

. . . rN

r1

...

r1

r0 + 2z . . .

...

...

...

rN1

rN2

...

rN +1 a1,N

rN +2 a2,N

...
...

2
aN,N
r0 + z

2,N



0


=0


...

0

(14.46)

Al crescere di 2z , gli an,N tendono a 0 e 2,N diventa sempre pi prossimo


a 2z ; la predizione inutile, se il dato e0 coperto da rumore bianco.
Facciamo ora la stima della sequenza {wi } di varianza supposta nota 2w ,
modello di un possibile ingresso di un sistema autoregressivo di ordine N,
alla cui uscita {xi } sarebbe aggiunto rumore bianco di varianza supposta
nota 2z . Per questa stima usiamo anche il valore attuale della sequenza
osservata yi ; si noti il cambio di segno nellespressione dello stimatore:
w
bi,N =

N
X

cn,N yin

n=0

324

14.8 STIMA CON RUMORE

Questa volta le incognite sono i cn,N , in numero di N + 1. Lortogonalit ci d:

E (wi w
bi,N ) yim
=E

r +
0

r1

r2

...

rN 1

2z

r1
r0 +

2z

"

wi

N
X

=0
cn,N yin yim

n=0

. . . rN +1

r1

...

r0 + 2z . . .

...

...

...

rN2

rN3

...

c
0,N

rN +2 c1,N

rN +3 c2,N

...
...

cN,N
r0 + 2z

r2

r1

m = 0, ....N

2w


=0


...

Il valore q.m. dellerrore di stima 2,N :


E [(wi w
bi,N ) wi ] = E

"

wi +

N
X
n=0

cn,N yin wi = 2,N = 2w (1 c0,N )

Al crescere di z , tutti i cn,N tendono a 0; la stima diventa impossibile, il


processo stimato ha ampiezza tendente a 0 e la varianza dellerrore tende
a 2w . Invece se z = 0 i due sistemi di equazioni visti sono identici.
Facciamo ora la stima del campione attuale (iesimo) della sequenza
{xi } uscita del sistema autoregressivo usando gli N campioni precedenti
della sequenza {yi }. Attenzione al segno dello stimatore:
x
bi,N =

N
X

bn,N yin

n=1

Le N equazioni per il calcolo degli bn,N sono derivanti dallortogonalit:

E (xi x
bi,N ) yim
=E

"

xi +

N
X

=0
bn,N yin yim

n=1

325

m = 1, ....N

CAPITOLO 14 LA PREDIZIONE LINEARE

r0 + 2z r1

r1

r2

...

rN

r0 +

2z

r2

. . . rN

r1

...

r1

r0 + 2z . . .

...

...

...

rN1

rN2

...

b1,N

rN+1 b2,N

rN+2 b2,N

...
...

2
r0 + z
bN,N

r1

r2

= ..

...

rN

Unaltra equazione ci d il valore q.m. dellerrore di stima 2,N :


bi,N ) xi ] = E
E [(xi x

"

xi +

N
X

bn,N yin xi = 2,N

n=1

2,N = r0 +

N
X
n=1

bn,N rn

Facciamo infine la stima della sequenza {xi } uscita del sistema autoregressivo usando sia gli N campioni precedenti che il campione attuale
della sequenza {yi }. Al solito, si noti la convenzione di segno diversa se
si passa da predizione a stima,
xbi =

N
X

dn,N yin

n=0

Le N + 1 equazioni per il calcolo dei dn,N sono sempre derivanti dallortogonalit:


!
#
"
N
X

= 0 m = 0, ....N
dn,N yin yim
E (xi xbi ) yim
=E
xi
n=0

r0 + 2z r1

r1

r2

...

rN

r0 +

2z

r2

. . . rN

r1

...

r1

r0 + 2z . . .

...

...

...

rN1

rN2

...

d0,N

rN+1 d1,N

rN+2 d2,N

...
...

2
dN,N
r0 + z

326

r0

r1

= ..

...

rN

14.9 LA DECONVOLUZIONE NEL DOMINIO DELLE FREQUENZE

e di nuovo, per 2z crescente. i dn,N tendono a 0.


In generale, bene sottolineare che i problemi di stima (o predizione)
sono sempre caratterizzati dalla determinazione di un vettore di coecienti di predizione N mediante il prodotto dellinverso (se esiste) della
matrice di covarianza dei dati R (sempre la stessa!) per un opportuno
vettore di correlazioni N tra il segnale desiderato e i dati. Si ha quindi
sempre una relazione del tipo:
R N = N N = R1 N

ed il valore q.m. dellerrore di predizione o di stima :

14.9

E [(xi xbi ) xi ] = r0 N R1 N

La deconvoluzione nel dominio delle


frequenze

Il problema della stima di un processo pu essere risolto sia nel dominio


dei tempi che in quello delle frequenze. Il vantaggio di operare nel dominio delle frequenze, veramente grande, sta nel fatto che la matrice
di covarianza dei dati diagonale qualora si tratta di dati risultanti
dalla trasformazione di Fourier discreta di sequenze stazionarie colorate
o bianche. Certamente, come visto in precedenza, il filtraggio deve essere
fatto in modo periodicizzato nei tempi. Poi, operando nel dominio delle
frequenze, linversione della matrice di covarianza dei dati R di ordine
[N N] necessaria per ottenere il vettore dei coecienti N , a partire
dal vettore delle correlazioni N
R N = N ;

N = R1 N

diventa semplicissima, perch corrispondente a N equazioni ad una sola


incognita. In questo caso, tuttavia, non sar in generale possibile limitare
il dominio su cui definito il filtro, come possibile fare nel dominio dei
tempi, in cui si conoscono quali campioni vengono utilizzati per fare la
stima (ad esempio, gli N campioni che precedono il campione da stimare).
Ora lasse dei tempi si estende da ad . Passando allanalisi del
problema, sia data la sequenza:
yi = xi + zi =

N/2
X

n=N/2

327

win hn + zi

(14.47)

CAPITOLO 14 LA PREDIZIONE LINEARE

dove {xi } e {zi } sono due sequenze, luna, {xi } corrispondente al segnale
(le voci bianche wi riverberate da una cattedrale con risposta allimpulso
hn che ora pu essere qualsiasi e non necessariamente corrispondente ad
un sistema AR) e laltra {zi } corrispondente a rumore additivo che per
semplicit considereremo a spettro bianco (il brusio dei vicini). In quanto segue, la frequenza pu essere rappresentata sia da un indice continuo
(la solita pulsazione ) sia, pensando alle trasformazioni di Fourier discrete, da un indice discreto k. Per semplicit, useremo lindice continuo.
Supponiamo noti sia lo spettro di potenza della sequenza {wi }, e cio
E[|W ()|2 ] = 2w T , sia la funzione di trasferimento del filtro H()
che ha operato sulla sequenza (la riverberazione della cattedrale); nei casi
precedentemente discussi, bastava invece conoscere lautocorrelazione del
filtro e quindi |H()|2 . La sequenza {zi } (il brusio dei vicini) anche
ignota, e se ne conoscono solo le caratteristiche spettrali.Si vuole stimare
W ( )

H ( )

X( )

Y ( )

A( )

$ ( )
W

Z( )

Figura 14.7: Deconvoluzione nel dominio delle frequenze


{wi } da {yi }, nel dominio della frequenza. Pertanto, indicando con A()
la funzione di trasferimento del filtro che utilizzeremo per fare la stima
della sequenza {wi } e indicando con lettere maiuscole le trasformate delle
sequenze (fig. 14.7):
E[|W ()|2 ] = 2w ()T

Y () = W ()H() + Z();

(14.48)

E[|Z()|2 ] = 2z ()T

(14.49)

c() = A()Y ()
W

(14.50)

Il principio di ortogonalit (derivante dallottimalit del risultato desiderato) comporta che sia nulla la correlazione tra lerrore di stima ed il dato
(e quindi nelle frequenze sia nullo il valore atteso del prodotto tra la
328

14.9 LA DECONVOLUZIONE NEL DOMINIO DELLE FREQUENZE

trasformata dellerrore di predizione e la coniugata della trasformata del


dato); la pulsazione un parametro che non trascriveremo.
E[(W AY )Y ] = 0;
A=

2w H
E[W Y ]
H
=
;
=
E[Y Y ]
2w |H|2 + 2z
HH + Q

(14.51)
(14.52)

2z
2z ()
=
;
(14.53)
2w ()
2w
Si vede quindi che il risultato della stima nel dominio delle frequenze
un filtro A() = 1/H(), se Q << |H()|2 e cio se il disturbo
trascurabile. Quando invece il disturbo pi ampio del segnale (Q >>
|H()|2 ), il filtro tende a dare uscita nulla (alle frequenze in cui il segnale
coperto dal brusio, non ne tentiamo la ricostruzione).
Quindi, possiamo ritornare sulla questione discussa nel precedente
paragrafo e cio chiarire bene la dierenza tra {i,N } errore di predizione della sequenza {yi } e {w
bi,N } stima della sequenza bianca {wi } che
alimenta il sistema riverberante che crea {xi }. In assenza di rumore additivo {zi } non vi sono dierenze: invece, se 2z 6= 0 la stima {w
bi,N } del
segnale originario {wi } sar diversa dallerrore di predizione {i,N } ed
in particolare di ampiezza ridotta alle frequenze dove pi sensibile il
rumore.
Loperazione cos realizzata, e cio la stima della sequenza {wi }, si indica con il nome di deconvoluzione; infatti la sequenza {wi } viene osservata dopo la convoluzione con il filtro {hn } e laggiunta di rumore bianco;
scopo della stima quello di recuperare la sequenza {wi } rimuovendo leetto del filtro H() con loperazione appunto di deconvoluzione. Come
si visto, la cosa fattibile applicando un filtro inverso, purch il livello del segnale filtrato non scenda sotto il livello del rumore: a quelle
frequenze, la stima va a zero.
Infine, calcoliamo il valore qm dellerrore di predizione, usando il
fatto che lerrore di predizione incorrelato con i dati o con ogni loro
c:
combinazione lineare come W

c ] = E[(W W
c) W W
c)W ] =
E[(W W
Q() =

E[|W |2 ]E[|Z|2 ]
2
=
2
2
2 < E[|W | ]
E[|W | ] |H| + E[|Z| ]
329

CAPITOLO 14 LA PREDIZIONE LINEARE

Figura 14.8: Funzione di trasferimento del filtro inverso di cui alla formula
14.54, per Q=0,01; 0,03; 0,1. La figura riporta anche la funzione di
trasferimento complessiva, sempre pi prossima ad 1.
Come esempio, si supponga che H (z) sia un semplicissimo filtro passa
basso, con un solo zero a frequenza zero (z = 1):
H (z) = 1 z 1

T
|H|z=ejT = 1 ejT = 2 sin || ; =
2
Il filtro inverso ottimo A (z) :
A=

1z
1z
H
=
=
2
1
|H| + Q (1 z ) (1 z) + Q 2 + Q + (z + z 1 )

(14.54)

sin ||
; A = H
2 sin2 + Q/2
Si osservi che la sequenza {an } antitrasformata z di A (z) e corrispondente al filtro inverso, deve essere stabile e quindi non n causale, n
simmetrica nei tempi, in quanto i poli della trasformata nella formula
14.54 sono luno linverso dellaltro e qundi ve ne uno fuori del cerchio
unitario.
|A|z=ejT =

14.9.1

Deconvoluzione predittiva nelle frequenze

Operando nel dominio delle frequenze, non appare immediatamente possibile stabilire il supporto del filtro, cio definire i campioni per i quali
330

14.9 LA DECONVOLUZIONE NEL DOMINIO DELLE FREQUENZE

Figura 14.9: Risposta allimpulso del filtro inverso di cui alla formula
14.54, per Q=0,01; 0,03; 0,1. La soluzione, non causale, trovata o nel
dominio delle frequenze o in quello dei tempi, ma utilizzando dati sia
prima che dopo listante a cui si vuole stimare il segnale sorgente.

Figura 14.10: Risposta allimpulso del filtro inverso di cui alla formula
14.54, per Q=0,01; 0,03; 0,1. La soluzione trovata nel dominio dei
tempi utilizzando solo dati che precedono listante a cui si vuole stimare
il segnale sorgente. Quindi il filtro causale.

331

CAPITOLO 14 LA PREDIZIONE LINEARE

i coecienti del filtro sono diversi da zero: quindi non sarebbe possibile
trovare il filtro ottimo che determina lerrore di predizione, perch questo
implica che il filtro sia causale, cosa che appare dicile imporre. Esiste
peraltro la tecnica di fattorizzazione spettrale (Wiener, Kolmogorov) che
permette di risolvere il problema dellerrore di predizione anche nel dominio delle frequenze. Il principio semplice. Con un filtro di lunghezza
infinita, la sequenza degli errori di predizione deve:
(a) essere bianca;
(b) essere ottenuta dalla sequenza {yi } attraverso un filtro causale.
Ora, se lo spettro della sequenza {yi } E[|Y ()|2 ], il modulo della
funzione di trasferimento del filtro sbiancatore sar:
|A()|2 =

1
E[|Y ()|2

(14.55)

Ne conosciamo quindi la caratteristica di ampiezza e sappiamo anche,


dalle considerazioni fatte nel dominio dei tempi, che la sequenza di campioni che corrisponde al filtro predittore deve essere non solo causale (un
predittore utilizza solo i dati passati) ma anche a minima fase; in realt
avevamo dedotto la propriet di minima fase solo per N finito qualsiasi;
supponiamo ora che questa propriet di minima fase si mantenga anche
per N infinito. Pertanto, come visto nel capitolo 7, la caratteristica di
fase della funzione di trasferimento sar trasformata di Hilbert del logaritmo della caratteristica di ampiezza. In conclusione il predittore causale
ottenuto dallanalisi nel dominio delle frequenze e di lunghezza infinita
(in teoria) ha funzione di trasferimento, in fase ed ampiezza:
s
1
|A ()| =
(14.56)
E[|Y ()|2 ]
1
A () = H{log E[|Y ()|2 ]}
(14.57)
2
Questo risultato, scoperto negli anni della II guerra mondiale ed applicato alla predizione delle tracce radar per il pilotaggio delle batterie
contraeree, era stato tenuto gelosamente segreto.
Sono da evitare zeri dello spettro E[|Y ()|2 ], in particolare alla frequenza di Nyquist, per evitare singolarit del logaritmo e quindi problemi
con la trasformazione di Hilbert. Se poi gli zeri spettrali sono ineludibili
perch troppo significativi, non pi possibile fare una stima spettrale
332

14.10 LE EQUAZIONI Y - W NEL DOMINIO DEGLI AUTOVETTORI

AR che diventa troppo lunga ma si deve passare ad una stima spettrale


ARMA. In altre parole gli zeri vanno tenuti in conto separatamente, e
eventualmente sbiancati in precedenza con i poli opportuni (piuttosto che
con infiniti zeri). Per uno studio dellanalisi spettrale ARMA, si rimanda
ai testi nella bibliografia proposta nella prefazione.

14.10

Le equazioni Y - W nel dominio degli


autovettori

Ritornando ora nel dominio dei tempi, trasformeremo lanalisi fatta nel
dominio delle frequenze in unanalisi nel dominio degli autovettori della
matrice di covarianza R. Abbiamo visto che, se sulla diagonale principale
della matrice R addizionata luce bianca (white light, in inglese) 2z , il
sistema diventa ben condizionato, in quanto tutti gli autovalori di R diventano positivi; si comprende limportanza di garantire che la matrice R
sia semidefinita positiva; altrimenti, laggiunta di luce bianca, nel caso di
autovalori negativi, poteva portare allinstabilit invece che alla stabilit.
Quindi, una tecnica di garantire il condizionamento della matrice quindi
la soluzione delle equazioni di Y -W appunto quella di addizionare luce
bianca anche se poi non vi nessun rumore {zi } sovrapposto al segnale
{xi }. Sviluppando in autovalori ed autovettori di R sia R che N e N ,
si ha, partendo dallequazione di stima generica:
R N = N
R N =

N
X

n en en

N =

n=1

Indicando con

N
X

en en N = N

(14.58)

n=1

en N = an,N

en N = n,N

(14.59)

abbiamo che:
n an,N = n,N
n,N
an,N =
n
2
Addizionando z I ad R abbiamo
n,N
an,N =
n + 2z
333

(14.60)

(14.61)

CAPITOLO 14 LA PREDIZIONE LINEARE

Questa equazione corrisponde allequazione (14.52) tranne che luna


stata ottenuta nel dominio delle frequenze e laltra nel dominio dei tempi
(autovettori di R e correlazione tra segnale desiderato e dati). In altre
parole, di nuovo si trova che sono attenuate le componenti della soluzione
qn,N lungo gli autovettori en con autovalori n piccoli rispetto al disturbo
2z . Se ora 2z abbastanza piccola, ad esempio r0 /100 alteriamo, anche
se percentualmente di poco, tutte le componenti an,N comprese quelle
corrispondenti agli autovalori pi grandi di R, che non avevano motivo di essere alterate. In compenso, loperazione computazionalmente
facile, perch basta sommare una matrice identica alla matrice R. Una
soluzione diversa, che prevede per di conoscere tutti gli autovalori di R,
quella di sostituire a i max[i , 2z ] (la tecnica denominata water filling dalleetto di riempire i buchi spettrali sostituendoli con una
costante). In questo modo si alterano solo le componenti della soluzione
relative agli autovalori minori di 2z , lasciando immutate le altre.
Se ora supponiamo di non conoscere perfettamente la matrice di covarianza e quindi nemmeno i n , abbiamo una soluzione ancora diversa.
Infatti, nellequazione 14.60 deve comparire un termine di rumore n per
modellare questa incertezza. Omettendo i pedici in n, N per semplicit:
(14.62)

a + =
e la stima ai minimi quadrati della variabile a :
b
a =

Minimizzando l errore q.m. di stima si ha:

min E ( a)2 E [( a) ] = 0

2q
E [a]
=
E [ 2 ] 2 2q + 2.

b
an,N = n,N =

n
2n +

2.
2q

n,N

(14.63)

dove con 2. abbiamo indicato la varianza del disturbo n . In termini


matriciali, abbiamo:
2.
N = { R + 2 I }1 R N
q
2

334

(14.64)

14.10 LE EQUAZIONI Y - W NEL DOMINIO DEGLI AUTOVETTORI

I vantaggi di questa ultima soluzione per le equazioni di Yule Walker


sono che:
- il sistema non mai singolare;
- non abbiamo bisogno di determinare autovalori ed autovettori di R;
- le componenti della soluzione peggio condizionate e cio quelle corrispondenti agli autovalori pi piccoli tendono ad essere poco amplificate invece di essere amplificate al massimo come nel caso dellequazione
(14.52).

335

Capitolo 15
Stima lineare ottima
15.1

Fattore di scala di un vettore noto

Consideriamo il seguente processo:


z = sc + m

(15.1)

dove le componenti del vettore c formano una sequenza nota (il segnale),
ed s, la sua ampiezza, la grandezza da stimare. Questa corrisponde ad
uno scalare (magari complesso) casuale a valor medio nullo e varianza
2s .Infine, le componenti di m (il rumore) sono variabili casuali a valor
medio nullo e correlate tra loro mediante la matrice di covarianza M:
E [m] = 0; E [mm ] = M
Risulta:
E [zz ] = 2s cc + M
Se si desidera stimare s, lo stimatore ottimo (ai minimi quadrati) :
sb = b z

dove b un vettore da calcolare imponendo la minimizzazione dellerrore


q. m. di stima e quindi lortogonalit tra il vettore dei dati z e lerrore
di stima = s sb :
E [z ] = E [(s sb) z ] = E [(s b z) z ] = 0
337

CAPITOLO 15 STIMA LINEARE OTTIMA

b = E [sz ] E [zz ]1

1
b = 2s 2n M + 2s cc
c

Volendo utilizzare la formula di inversione di una matrice costituita dalla


combinazione lineare di una matrice identica ed una diade pp ,
1

=I
I + pp

pp
1 + p p

(15.2)

si deve innanzitutto riportarsi a tale caso sbiancando il rumore e cio


premoltiplicando la 15.1 per la matrice
R = M1/2
che non altro che la matrice M, con gli stessi autovettori, dove per gli
autovalori originari M,i sono sostituiti con linverso della loro radice:
1
R,i = p
M,i

Se la matrice M definita positiva, i R,i sono reali, positivi e finiti.


Lequazione 15.1 diventa:
y = Rz = M1/2 (sc + m) = sp + n
dove ora per:
p = M1/2 c
E [nn ] = M1/2 E [mm ] M1/2 = M1/2 M M1/2 = I
Risulta allora:

Usando la 15.2:
"
a=

2s

sb = a y

1
a = 2s I + 2s pp
p
#

2s
p=
M1/2 c

1
2

1 + s c M c
1 + s p p
4s p p

2s M1 c
b=
1 + 2s c M1 c
338

15.1 FATTORE DI SCALA DI UN VETTORE NOTO

C polarizzazione poich:

E sb2 =

2s c M1 c
1 + 2s c M1 c


E [(s sb)]2 = E 2 =

2s < 2s

2s
1 + 2s c M1 c

Si osservi infine che per 2s , la polarizzazione va a 0 e:


2
E
=
lim
2

1
c M1 c

Nel caso semplice che il rumore sia bianco


M = 2n I

(15.3)

si ha:
c M1 c =


c c
2s 2n c
;
b
=
; E 2 =
2
2
2

n
n + s c c

2s 2n
2n + 2s c c

Allo stesso risultato si poteva arrivare direttamente facendo uso del cosiddetto inversion lemma, che d la matrice inversa della matrice somma di
una matrice qualsiasi e di una diade:
1

(A + ss )

15.1.1

A1 ss A1
=A
1 + sA1 s
1

Eetti del rumore colorato

Nel caso di rumore colorato, la stima deve avvalersi dei diversi valori
della densit spettrale della sequenza di rumore mn ; n = 1, .., N in corrispondenza delle varie frequenze utilizzate dalla sequenza di segnale cn ,
che non deve essere monocromatica. In sostanza, con la solita approssimazione di supporre le matrici circolanti, la matrice di covarianza del rumore ha come autovettori delle sinusoidi normalizzate ek alle pulsazioni
k = 2k/NT e gli autovalori corrispondenti k sono proporzionali alla
densit spettrale del rumore a quelle pulsazioni, Sm ( k ) . Trasformando
339

CAPITOLO 15 STIMA LINEARE OTTIMA

in Fourier i vettori b, c, e cio usando come base di decomposizione di


questi vettori gli autovettori ek della matrice di covarianza M risulta:
b=

N
X

Bk ek ; c =

k=1

Ck ek

e utilizzando la ortonormalit degli autovettori:

c M c=

Ck ek

Ch eh =

2s M1 c
lim
b
=
lim
P |Ck |2 =
2s
2s 1 + 2
s
k
Bk =

X |Ck |2
k

M1 c
P |Ck |2 =
k

1 Ck
P |Ck |2
k

(15.4)

P Ck

e
k k
P |Ck |2
k

(15.5)


E 2 =
lim
2

c M1 c

=P

1
|Ck |2
Sm ( k )

(15.6)

Se il segnale monocromatico, se cio Ck 6= 0, per un solo valore di


k = k0 , allora
2
Sm ( k0 )
1
|Ck0 |2
2
2 =
lim E = k =
0
2s
k
Sm (k0 )
|Ck0 |2
0

(15.7)

conta solo la densit spettrale del rumore a quella frequenza. Se invece la


sequenza di segnale contiene molte componenti, a varie frequenze, e cio
Ck 6= 0, per molti valori di k, il sistema di stima ottimo del parametro
ovviamente cerca di usare (pesa di pi) le componenti alle frequenze con
il minimo livello di rumore, pur utilizzando anche le altre componenti.
Usando il concetto della media armonica (inverso = media della somma
degli inversi), si vede che linverso dellerrore di stima ottimo somma degli inversi degli errori di stima fatti sui vari sottocanali (le varie
frequenze):
X 1
X |Ck |2
1
=
=
=
lim2s E [2 ] 2
Sm (k )
2k
1

340

(15.8)

15.1 FATTORE DI SCALA DI UN VETTORE NOTO

Conta quindi la pi piccola delle 2k (il cosiddetto smoking gun; il


poliziotto si basa sullindizio pi significativo, mentre tutto il resto diventa
quasi irrilevante; ci equivalente al greco o, ho visto e dunque so, o
pi semplicemente a sbirciare dal buco della serratura).

15.1.2

Stima di una costante in rumore bianco

Nel caso semplice in cui il rumore bianco e il vettore c una costante


di ampiezza A:
2
E
=
c = A 1 c c = N |A|2 ; lim
2
s

1
|A|2 N

Si osservi di nuovo che lo stimatore polarizzato in quanto tende


sistematicamente a sottostimare:
E[(b
s)2 ] < 2s
Inoltre, per 2n , sb 0. A parole, se vi troppo rumore, la stima
tende a zero. Invece se 2s , la stima diventa non polarizzata.

15.1.3

Stima di una costante in rumore colorato

Possiamo considerare due casi facili di rumore colorato, profittando di due


matrici [NN], Mp , Mz luna inversa dellaltra. La prima, Mp , corrisponde
allo spettro di un polo ed esattamente di Toeplitz. Una riga

Mp 2m ..., 2 , , 1, , 2 ..

2 2
Mp = m

..

..

..

..

.. ..

..

..

.. 2

(15.9)

La seconda, Mp,inv , corrisponde allo spettro di uno zero, con grande


approssimazione ancora di Toeplitz, a parte la prima e lultima riga: una
341

CAPITOLO 15 STIMA LINEARE OTTIMA

riga centrale
Mp,inv

1
2
...0,
0,
0,
0,
,
1
+

,
,
0,
0,
0..
;
2m (1 2 )

ma mp,inv,11 = mp,inv,NN = 1.

Mp.inv = 2
0
2
m (1 )

..

0
2

1+

1 + 2

..

..

..

Mp Mp,inv = I

..

0
..

..
..

(15.10)

(15.11)

Questa accade perch se:

anche

H (z) = 1 z 1 ; |H (z)|2 = 1 + 2 z + z 1 ;

(15.12)

1
1
+
1
1 z 1 1 z
(15.13)
da cui le righe centrali delle due matrici. Allora, se il rumore colorato
da un polo con la funzione di trasferimento 1/H (z) , la sua matrice di
covarianza Mp e lerrore di stima della costante nel rumore cos colorato

2
2m (1 2 )
2m (1 + )
1
E

=
(15.14)
=
lim
2s
N (1 )
c M1
N (1 )2
p c
1
1
1
=
2 =
2
1
1 + (z + z )
1 2
|H (z)|

In sostanza, se il rumore colorato da un polo in , tutto passa come se


il numero di campioni utili per la stima fosse:
N0 N

1
1+

(15.15)

similmente con quanto visto in precedenza nel caso della stima delle
potenze di segnali colorati. Solo che in quel caso, trattandosi della stima
342

15.1 FATTORE DI SCALA DI UN VETTORE NOTO

non lineare di una potenza, il risultato era leggermente diverso perch


compare 2 invece di . Qui il segno di conta, invece, poich se p.e.
negativo, il rumore passa alto, i campioni del disturbo sono anticorrelati, e mediandoli per stimare una costante (a frequenza zero) tendono
a scomparire. Infatti la densit spettrale Spolo () a frequenza zero (che
quella che conta nel caso della stima di un segnale costante, e cio a
frequenza 0), pari a:
Spolo ( = 0) =

2m
(1 )2

(15.16)

Per fare un altro caso, si consideri la coloratura dovuta ad uno zero e


cio alla funzione di trasferimento H (z). La matrice di covarianza del
rumore ora , per fare in modo che la varianza del disturbo sia sempre
2m :

0
..
0

1 + 2
0
..

2
m

2
(15.17)
Mz =
0

1 + 0
2

1+

..
..
..
..
..

0
..
0
1

La matrice inversa :

Mz,inv


1 + 2
2
= 2

2
m (1 )

..

..
2

..

..

.. ..

..

..

.. 2

(15.18)

e quindi lerrore di stima di una costante cui sovrapposto del rumore


di potenza 2m , ma colorato da uno zero :
2
lim
E
=
2

2m (1 )2
1

c Mz,inv c
N (1 + 2 )
343

CAPITOLO 15 STIMA LINEARE OTTIMA

Infatti, se > 0, i campioni del disturbo sono anticorrelati, e mediandoli per trovare la costante, tendono a scomparire, come gi visto nel
caso della coloratura dovuta ad un polo. Infatti la densit spettrale alle
basse frequenze (che quella che conta nel caso della stima di un segnale
costante, e cio a frequenza 0, pari a:
2m (1 )2
Sz ( = 0) =
1 + 2

(15.19)

Se invece p.e. = 0.9, ; N 0 N/2, come ragionevole, visto il mediocre


filtraggio passa basso, che tende a correlare i campioni del rumore e
quindi a ridurre circa del 50% lecienza della media campionaria. La
dispersione della stima si riduce ed come se avessimo solo la met dei
campioni (se fossero indipendenti).

15.1.4

Stima di una pendenza in rumore bianco

Indicando ora con il vettore c il caso di una variazione lineare tra 1 e


1, e quindi supponendo che il segnale osservato sia compreso tra L, L,
dove L una variabile casuale
y = Ld + n
Le componenti del vettore d, {di } sono:
{di } =

2i
; i = N/2, ...N/2
N

N/2
2
N/2
X
2i
4 i3
4 N3
N
d d=
2
= 2
=
N
N 3 N/2 N 12
3

i=N/2

La varianza della stima della variabile L :


b
2Lb = E[(L L)L]
'

2L 2n
32n

2n + 2L N/3
N

e di nuovo si tende alla situazione di non polarizzazione se 2n 0.Si


osservi poi che se si vuole stimare la pendenza l ponendo:
z = lr + n
344

15.2 STIME DI UNA FREQUENZA

{ri } = i; i = N/2, ...N/2

r r=

N/2
X

i=N/2

i2

N3
12

12 2

N3 n
e quindi leetto del braccio di leva si vede nel fattore N 3 invece del
fattore N visto prima.
2m
b

15.2

Stime di una frequenza

15.2.1

Stima lineare di una rampa di fase

Si consideri un segnale sinusoidale in presenza di rumore additivo:


xi = A exp [ji ] + wi = A exp [j (iT + )] + wi ;
i = N/2...N/2
i = iT + ;
in cui la fase e la pulsazione sono parametri ignoti e il rumore
gaussiano, bianco, complesso:
E[wi wl ] = 2w (i l)
possibile calcolare sia che facendo una stima lineare della pendenza
con il tempo delle fasi dei campioni della sequenza {xi }. E semplice
verificare che, per |A|, le parti immaginarie dei campioni della
sequenza {xi }, normalizzate, sono rappresentate dal modello lineare con
rumore additivo:
x
w
2w
i
i
Im
2n =
' i + Im
= iT + + ni ;
A
A
2 |A|2
Diventa quindi possibile stimare la fase e la frequenza operando una stima lineare sulle parti immaginarie della sequenza complessa. Lapprossimazione delle fasi con le parti immaginarie accettabile se la rotazione
in tutto lintervallo, riferita al valore centrale + N T /2 e quindi pari a
NT /2 si mantiene inferiore a . Si osservi per che se si converte il
segnale a frequenza zero utilizzando la frequenza a cui il periodogramma
345

CAPITOLO 15 STIMA LINEARE OTTIMA

ha il massimo picco, si ottiene proprio un segnale la cui rotazione di fase


in tutto lintervallo di osservazione non supera . Ancora, lanalisi
valida se il rumore piccolo rispetto al segnale. In queste ipotesi,
la dispersione della stima della fase e della frequenza quindi:
b =

b T

w 1

|A| 2N

12 2w
w 6

N 3 2 |A|2
|A| N 3/2

trovando un fattore N 3/2 invece del fattore N 1 trovato per il periodogramma e N 1/2 per la tecnica AR quando si deve stimare lautocorrelazione dai dati avendo a disposizione solo N campioni, come vedremo
in un paragrafo successivo. Peraltro, se si volesse determinare una frequenza cercando la posizione del massimo locale in un periodogramma,
anche cercando la frazione di cella corrispondente al massimo usando una
tecnica di interpolazione, si troverebbe un risultato simile.

15.2.2

Discussione

Da quanto detto appare chiaro che per stimare una frequenza stabile nel
tempo, sono necessarie due azioni complementari:
I: filtrare passa banda attorno alla frequenza di interesse, per ridurre
il rumore irrilevante; il filtro sar tanto pi stretto quanto pi lungo
lintervallo di osservazione.
II: stimare la pendenza della rampa di fase residua, una volta che
siamo gi vicini al valore eettivo della frequenza; allora, se gli errori di
fase sono al di sotto di in tutto lintervallo di stima, si eettua una
stima lineare della pendenza residua di questi valori, come visto nella
sezione precedente.
E giusto domandarsi come mai questultimo metodo sia tanto migliore
della stima AR; con questa, si trova la frequenza come:
fb =

1
b
r1
2T

Per dare una risposta intuitiva, si pu dire che nel caso AR non si sfrutta
leetto di braccio di leva (un fattore N) dovuto alla progessiva rotazione
346

15.2 STIME DI UNA FREQUENZA

di fase. Essa proporzionale al tempo di osservazione NT , vista la


rigorosa costanza ipotizzata per la frequenza (coerenza del segnale). Con
il metodo AR invece, si cerca di stimare al meglio, con una media su
tutti i valori, lammontare della rotazione del segnale in un solo passo
di campionamento, e pertanto si valuta la frequenza su un intervallo
di tempo ristretto; poi si media. In sostanza, non si sfrutta appieno
la coerenza a lungo termine del segnale, ma si sfrutta il buon rapporto
segnale - rumore, quando c. Invece, si accetta che il segnale non sia
una riga perfetta, ma un polo, magari vicinissimo al cerchio unitario, ma
comunque con una banda di frequenza finita. Quindi, la rampa di fase
corrispondente al processo potrebbe avere pendenza variabile e la analisi
di questa pendenza non ci permetterebbe di migliorare la stima della
frequenza. Essa potrebbe essere variabile nel tempo, magari casualmente.
Per avvicinare i due tipi di stima, si pu sottocampionare p.e. di un
fattore M il processo filtrato passabanda, e quindi allungare lintervallo
di campionamento portandolo a MT ; questo avvicina le due tecniche,
perch da una parte ana la tecnica AR e dallaltra riduce il braccio di
leva che diventa N/M e quindi peggiora la stima della pendenza di fase.
Quando M = N, le due tecniche tendono a coincidere.

15.2.3

Stima non lineare di una frequenza in rumore


colorato

Si far ora unanalisi spettrale autoregressiva di uno segnale non perfettamente sinusoidale, ma costituito da uno spettro colorato, in presenza
di rumore colorato. Si consideri un rumore bianco wi che pilota un filtro
passabanda la cui risposta allimpulso una sinusoide complessa finestrata da una finestra rettangolare lunga N0 campioni; a questo segnale
fortemente colorato, (quasi monocromatico per N0 ) si aggiunga un
rumore lievemente colorato, p.e. passa - alto. Si abbia cio:
yi = A

N0
X
h=1

wih ejhT + ni ni1

E[|wi |2 ] = 2w ; E[|ni |2 ] = 2n ;

(15.20)
(15.21)

Si voglia ora fare la stima spettrale AR della sequenza yi ; supponiamo


per ora di avere la funzione di autocorrelazione esatta ry (n); sia lordine
347

CAPITOLO 15 STIMA LINEARE OTTIMA

dello stimatore pari ad uno. Calcoliamo quindi:


ry (0) = N0 |A|2 2w + 2 2n
ry (1) = (N0 1)|A|2 2w ej 2n ;

= T ;

(15.22)
(15.23)

Si vede anche che:


(N0 1)|A|2 2w ej 2n
N0 |A|2 2w + 2 2n

(15.24)

(N0 1)|A|2 2w ej 2n
=
N0 |A|2 2w + 2 2n

(15.25)

c1 =
Lo zero di A1 (z) in
z0 =

(N0 1)|A|2 2w j
2n
e

N0 |A|2 2w + 2 2n
N0 |A|2 2w + 2 2n

La polarizzazione della stima spettrale data dal vettore dierenza d tra


ej e z0 ; in prima approssimazione:

22n
1
2n
j
j
d = e z0
1+
e +
(15.26)
N0
|A|2 2w
|A|2 2w
d

ej
2n
+
N0 N0 |A|2 2w

Quindi, invece di essere in ej , lo zero dello stimatore (il polo dello spettro
ricostruito) viene richiamato verso il centro del cerchio ed anche spostato. La lunghezza finita della risposta allimpulso sinusoidale porta allallargamento della riga spettrale ricostruita; laggiunta del rumore colorato
sposta il picco dello spettro stimato verso le frequenze pi elevate.
Nel caso invece in cui N0 , e vi sia un rumore bianco additivo la
stima di frequenza non pi polarizzata:
yi = Aeji + ni ; ry (0) = 2A + 2n ; ry (1) = 2A ej
z0 =

2A
ej
2A + 2n
348

15.2 STIME DI UNA FREQUENZA

15.2.4

Eetti della lunghezza limitata dei dati

Nel paragrafo precedente abbiamo supposto che fosse disponibile lautocorrelazione esatta; invece, se sono disponibili solo M dati, si ha solo
una stima dellautocorrelazione e quindi il valore trovato per z0 (il valore
atteso) sar aetto da un disturbo casuale che vogliamo ora calcolare in
modo approssimato. La dispersione della frequenza e quindi dellargomento di zb0 pu essere stimata come segue, supponendo ora che il segnale
sia sinusoidale e il rumore additivo sia bianco:
yi = A ejiT + ni ; i = 1, ...N
rby (1) =

arg (b
r1 ) = arg

X yi yi1

(15.27)

(15.28)

X 2

|A| ej + |A| ni + ni1 + ni ni1 =

= arg ej +

|A| ni + ni1 + ni ni1


N |A|2

e considerando solo leetto dei termini in quadratura con ej :


p
q
b + |A| p + q

+
2
2 +
2N |A|
2N |A|
2N |A|
2N |A|2
2p = 2N 2n ; 2q = N 4n

2b

2N 2n
N 4n
2n
+

2N 2 |A|2 2N 2 |A|4
N |A|2

b
2n

2n
2
2fb =
fb =
=
f
c
2T
4 2 T 2 N |A|2
4 2 N |A|2

In sostanza, con dei ragionevoli rapporti segnale rumore, la maggiore


fonte di dispersione della posizione dello zero proprio la dispersione
della stima dellautocorrelazione.
349

CAPITOLO 15 STIMA LINEARE OTTIMA

15.3

Stima di processi multidimensionali

Si supponga di volere stimare un processo multidimensionale e cio un


insieme di N sequenze temporalmente allineate: in particolare si voglia
stimare la sequenza di vettori di N dimensioni p.e. incorrelati sia tra
loro che nel tempo:

s
1,i

s2,i

sj,i

; j = 1, ..N; i = 1, 2....;
si =

..

..

sN,i

E si si+k = 2s (i k)I
Il segnale osservato la sequenza xi , e sussiste la seguente relazione
matriciale:

xi = A si + ni ; E ni ni+k = 2n (i k)I

Quindi, il rumore additivo costituito da componenti incorrelate e tra


loro e nel tempo. La matrice A, qualsiasi e magari a coecienti complessi, ha dimensioni [N N] . Possiamo trovare subito la matrice R di
covarianza del vettore x :
R = E [(As + n) (As + n) ] = 2s A A + 2n I
Usando il principio di ortogonalit e sfruttando il formalismo matriciale troviamo subito la stima ottima del segnale s:
b
s = B x; E [(B x s) x ] = 0 B R = E [s x ] = 2s A

e la matrice B quindi:

B = 2s A R1

Lerrore di stima :
Q=

N
X
n=1

E (b
si,n si,n )2
350

15.3 STIMA DI PROCESSI MULTIDIMENSIONALI

Q = T r {E [(B x s) (B x s) ]} = T r {E [(s B x) s ]}
profittando dellincorrelazione tra errore di stima e dati per il principio
di ortogonalit. Ricordando poi che:
E [x s ] = 2s A
risulta che:

Q = 2s T r I A R1 A

Si osservi che dalla sequenza di vettori xi possibile ricavare la matrice


R e quindi, se 2n nota, si pu determinare la matrice A A ; non
possibile per ricavare A. Infatti, si pu osservare che
A T T A = A A
purch:
T T = I
e quindi se la matrice T ortogonale, eguale allinversa della sua trasposta. Allora, se nota la matrice R e quindi A A non potremo ricavarne
la matrice A, se non a meno di una matrice ortogonale T che rimane
incognita. Abbiamo visto un problema equivalente per la caratteristica di
fase di una funzione di trasferimento, irrecuperabile dallautocorrelazione
delluscita da cui otteniamo lo spettro di potenza e quindi le ampiezze.
Il problema solubile se si possono utilizzare informazioni a priori sulla
struttura della matrice A. Ad esempio, se A simmetrica (come dire
fase zero), allora la matrice
T = I; A = A
gli autovettori di R coincidono con quelli di A (le matrici A, A commutano)
e gli autovalori di R sono i quadrati di quelli di A cui va sommato 2n .
La formula che d lerrore quadratico medio si semplifica:

!
N
2
2
X

A,n s
1 2 2
Q = 2s T r I A R1 A = 2s
A,n s + 2n
n=1
Q=

N
X
n=1

2s 2n
2A,n 2s + 2n
351

CAPITOLO 15 STIMA LINEARE OTTIMA

profittando del fatto che la traccia di una matrice la somma degli


autovalori.
Allo stesso modo, nellanalisi fatta per la deconvoluzione di segnali nel
dominio delle frequenze, si visto che impossibile determinare la fase
della funzione di trasferimento a partire dallautocorrelazione delluscita
.

15.3.1

Stima simultanea di una costante e di una


pendenza

Se ora siamo nel caso di una stima simultanea sia di una costante A che
di una pendenza L:
y = Ld + Ac + n
profittando dellortogonalit tra c e d e cio del fatto che:
N
X

ci di = 0

i=0

si vede che le analisi fatte nei precedenti paragrafi sono ancora utilizzabili:
basta stimare il vettore [A L].

15.4

La separazione di sorgenti

Le considerazioni fatte nel paragrafo precedente hanno un interessante


conseguenza nel caso della ricezione acustica binaurale (con le due orecchie) di un segnale costituito da due sorgenti che emettano contemporaneamente. In altre parole, si pensi ad una persona che ascolti due
parlatori che parlino assieme. ben noto che possibile concentrare
lattenzione su uno dei due parlatori e praticamente cancellare la conversazione dellaltro (il cosiddetto eetto cocktail, che permette di seguire
una conversazione in mezzo a tante). Tuttavia, la separazione quasi impossibile se i due parlatori sono sovrapposti su un singolo canale fonico
(p.e. parlano contemporaneamente alla televisione).
Questo problema di stima analizzabile con le convenzioni stabilite
nel paragrafo precedente e risulta:

xi = A si + ni ; E ni ni+k = 2n (i k)I
352

15.4 LA SEPARAZIONE DI SORGENTI

dove ora i vettori xi , si , ni sono di rango [2 1] e la matrice A di


rango [2 2] . Rappresentiamo le due conversazioni con s, i due segnali
ricevuti (le due orecchie) con x e la matrice di confusione anchessa a
priori ignota con A. Se si conoscesse A sarebbe facile, a parte il disturbo,
ritrovare le due sorgenti usando le tecnche viste prima; per trovare A si
potrebbe p.e. correlare il segnale misurato con quello della sorgente (se
fosse nota, per), facendo:
A = E [x s ]

(15.29)

Ma s corrisponde alla conversazione che deve essere stimata inaccessibile. Certamente si dispone di x e qu indi si dispone della sua matrice
di covarianza R = E [xx ]: il problema diventa pi complesso. Si
visto infatti che dalla matrice di covarianza R non possibile ottenere
la matrice A se non a meno di una rotazione di coordinate T. In altre
parole, anche in assenza di rumore non possiamo ottenere di nuovo b
s (la
0
stima delle due sorgenti di segnale) da x ma solo un vettore b
s in cui le
componenti di s, sono mescolate tra loro:
0 0
b
s b
s0 = Tb
s; E [b
s ] = E b
s = 2s I
sb

T=

cos sin

sin cos

; TT = I

(15.30)

Peraltro, il fatto che si possano separare le due conversazioni dimostra


che esistono dei meccanismi pi ecienti della predizione lineare per fare
loperazioni di separazione delle sorgenti. Infatti, se invece di imporre
lincorrelazione tra gli elementi di b
s, possibile qualsiasi sia la matrice T
e quindi inutile per eettuare una separazione delle sorgenti, si impone
lindipendenza tra quelle componenti, il risultato non potrebbe essere
altro che quello corretto. In sostanza, si deve ricorrere a statistiche di
ordine superiore al secondo (deconvoluzione cieca).
Per fare un esempio, consideriamo due processi identici s1 , s2 ma indipendenti, non gaussiani, a curtosi k 6= 3; ricordiamo che la curtosi
:
E [s41 ]
E [s42 ]
k=
=
(15.31)
2
2
(E [s21 ])
(E [s22 ])
353

CAPITOLO 15 STIMA LINEARE OTTIMA

Dopo la stima lineare ottima, noi abbiamo sb01 , sb02


cos sin
sb
1
b
s0 = Tb
s=
sb2
sin cos
sb01 = sb1 cos + sb2 sin

sb02

= b
s1 sin + sb2 cos

(15.32)

(15.33)
(15.34)

che sono due combinazioni lineari di sb1 , sb2 , incorrelate ed a eguale


potenza, qualsiasi sia il valore di , peraltro ignoto. Quello che varia
con , invece, la curtosi di sb01 , sb02 che :

2
s21 ]) sin2 cos2
E [b
s41 ] cos4 + sin4 + 6 (E [b
km =
(15.35)
2
(E [b
s21 ])
3k + 3 k 3
+
cos 4
4
4
La curtosi misurata km oscilla tra due valori:
km () =

k < km <

k+3
k+3
oppure k > km >
2
2

(15.36)

(15.37)

a seconda che k sia maggiore o minore di 3. Si vede che, se k 6= 3, e quindi le due conversazioni sono rappresentate da segnali non gaussiani, la
curtosi misurata di sb01 , sb02 oscilla al variare di tra k e la media aritmetica
tra k e 3. I valori di per cui km arriva al valore massimo corrispondono
ad una separazione. Questi valori sono 4 e pari a:
m = m/2; m = 0..3;

(15.38)

nel caso in cui il valore originario di zero. Allora


km (m ) = k

(15.39)

Peraltro, per m = 1, 3 scambiamo le sorgenti tra loro e per m = 0, 2 ne


cambiamo i segni. In ogni modo, selezionando un qualsiasi massimo della
curtosi, abbiamo separato le conversazioni e risolto il problema. Invece
per
k+3
= /4 + m/2; m = 0..3; km =
(15.40)
2
354

15.4 LA SEPARAZIONE DI SORGENTI

Figura 15.1: Curtosi del segnale combinato, al variare dellangolo . Si


notano i quattro massimi (circa 3.53) e i quattro minimi (circa 3.26).

non c separazione. Infine, se i processi s1 , s2 sono gaussiani, anche le


loro somme lo saranno e la separazione sar impossibile.
Facciamo una semplice simulazione, utilizzando una sequenza di 10000
campioni indipendenti e gaussiani che, se azzerata con probabilit 1 p,
ha curtosi 3/p. Nella figura 15.1, si mostra landamento della curtosi del
segnale sb01 al variare dellangolo , nel caso in cui si abbia p = 0.85. Sono
perfettamente visibili i 4 minimi e massimi della curtosi, proprio ai valori
di corretti. Peraltro, a causa della lunghezza limitata della sequenza,
i valori di curtosi stimati sono leggermente dierenti da quelli attesi.
In conclusione, misurando la matrice di covarianza R del vettore x,
dopo avere eventualmente sottratto la parte dovuta al rumore, otteniamo la matrice A T T A e quindi, facendo la radice quadrata di questa
matrice, otteniamo la matrice A T che una matrice ancora simmetrica,
come la R. Per trovare finalmente la matrice T ed arrivare alleettiva separazione delle sorgenti, dovremo sfruttare la non gaussianit delle
355

CAPITOLO 15 STIMA LINEARE OTTIMA

sorgenti. Per fare un esempio numerico sia:

1 2
1
2
1
3
5
11
; quindi AA =

A =
3 4
3 4
2 4
11 25

AT =

5 11
11 25

1/2

1.2 1.89
1.89 4.63

Se conoscessimo A, troveremmo la rotazione come:

1
1.2
1.89
1
2
=

T = A1 AT =
1.89 4.63
3 4

0.51 0.85
sin cos
=

=
0.855 0.51
cos sin
= arccos 0.855 = 0.545

(15.41)

(15.42)

(15.43)

(15.44)
(15.45)

La rotazione di 0.54 radianti appunto quella che ci ridarebbe la matrice A originale invece di quella simmetrizzata. Questo valore di sar
appunto quello ottenibile dalla massimizzazione (o minimizzazione) della
curtosi.

356

Capitolo 16
Filtraggio adattativo
Uno dei numerosi motivi della diusione delle tecniche di trattamento
numerico dei segnali la possibilit di modificare i filtri utilizzati in
funzione delle caratteristiche spettrali del dato, variabili con il tempo e/o
con lo spazio. Un tipico esempio di sistema tempo variante il tratto
vocale, che sagoma lo spettro del segnale generato dalle corde vocali. La
stima spettrale di un segnale vocale dovr quindi essere adattativa nel
tempo.
Un esempio intuitivo di un sistema adattativo quello del cancellatore di disturbo: si pensi ad un pilota di elicottero, che ascolta un segnale
si ma disturbato dal rumore del rotore; possiamo pensare di aggiungere negli auricolari del pilota un segnale che compensi ed annulli questo
rumore esterno: per fare ci necessario ricostruire elettronicamente sia
in fase che in ampiezza il rumore disturbante, per poi applicarlo con il
segno cambiato. La struttura numerica che si pu adottare presentata in figura 13.1: anzitutto, viene prelevata una sequenza (indicata poi
come il disturbo {di }) quanto possibile correlata con il rumore del rotore ascoltato dal pilota {ni }, ma indipendente dalla sequenza di segnale
{si } che desideriamo arrivi indisturbata. Ad esempio, la sequenza {di })
potrebbe essere prelevata direttamente con un sensore posto vicino al
rotore; si indichi poi con {yi } il segnale disturbato che arriva allorecchio
del pilota. Si desidera rimuovere da {yi } tutta lenergia correlata con il
disturbo misurato {di }. Cos facendo, si decorrela il segnale ascoltato
dal pilota {yi } dal disturbo misurato {din+1 }, n = 1, . . . , N . In altre
parole, il residuo i,N che si ottiene sottraendo da {yi } il disturbo stimato {
ni } deve essere la sequenza {si } per quanto possibile incorrelata
357

CAPITOLO 16 FILTRAGGIO ADATTATIVO

yi= si+ni

_i
d

i,N

fn,N

Figura 16.1: Filtro adattativo


con la sequenza di vettori di aventi componenti {din+1 }, n = 1, . . . , N .
A sua volta, la sequenza {
ni } ottenuta filtrando il disturbo misurato
{din+1 , n = 1, . . . , N } con un filtro opportuno {fi,n }, n = 1, . . . , N ,
che sar tempo variante (ecco il perch dellindice i), ad esempio per
compensare i ritardi tempo - varianti dovuti ai movimenti della testa del
pilota.
yi = si + ni ;

i = si + ni n
i = yi

Quando si avr che


E[i din+1 ] = 0

N
X

fi.n din+1

(16.1)

n=1

n = 1, . . . , N

(16.2)

avremo fatto il possibile per levare il rumore del rotore dallauricolare.


Difatti, nel segnale residuo i = si non ci dovrebbe pi essere correlazione
con il disturbo {ni }, sempre che il filtro sia di durata suciente (N
abbastanza grande) e che il disturbo misurato {di } sia legato al disturbo
da rimuovere {ni } attraverso una funzione di trasferimento che non ha
zeri spettrali e senza che vi sia ulteriore disturbo sovrapposto; allora
infatti il disturbo stimato {nbi } assomiglia molto al disturbo vero {ni }.
Questo non che un possibile esempio: un altro quello di un elettrocardiogramma fetale; lelettrocardiogramma di un nascituro misurabile
358

16.1 LA TECNICA DI WIDROW E HOFF

solo se combinato con quello della madre; per isolare il primo, necessario misurare un segnale correlato soprattutto al secondo e poi sottrarlo,
sempre tenendo conto della variabilit delle condizioni dellesperimento.
Ancora, si pensi alla cancellazione di uneco che arriva ad un auricolare telefonico; in questo caso, leco nasce soprattutto dallaccoppiamento
fonico tra il telefono ed il microfono dellascoltatore lontano. Il segnale
generato localmente viene trasmesso allascoltatore, rientra nel microfono
lontano e ritorna come eco al parlatore. Per sopprimere questeco, basta
decorrelare il segnale in arrivo dal segnale in partenza. La funzione di
trasferimento tempo variante; cambier, ad esempio, se una barriera
(una mano) riflette le radiazioni acustiche dal telefono al microfono dellapparecchio lontano. Ma ancora, si pu pensare che anche un predittore
possa essere un sistema adattativo: in questo caso cercheremo di decorrelare il segnale attuale si da una sua versione ritardata di un campione
e cio porremo:
din+1 = sin ; n = 1, . . . , N

16.1

La tecnica di Widrow e Ho

Per presentare in modo sintetico levoluzione del filtro utilizzeremo la


notazione vettoriale (supponendo il segnale complesso, indichiamo con

le operazioni di trasposizione e coniugio, dove necessario); indichiamo


poi con i vettori f i , di gli N coecienti del filtro e gli ultimi N campioni
della sequenza {di } allistante iT :
f i = {fi,n };

n = 1, . . . , N

di = {din+1 }

n = 1, . . . , N

(16.3)
(16.4)

La sottrazione del disturbo stimato viene quindi presentata cos:


i = si + ni n
i = yi n
i = yi

N
X
n=1

fi,n din+1 = yi f i di

(16.5)

Inoltre aggiorniamo il filtro ad ogni istante con lequazione (Widrow e


Ho):
f i+1 = f i + e
i di
(16.6)

Osserviamo anzitutto che f i un vettore casuale, di cui cerchiamo di determinare levoluzione nel tempo. Dimostreremo ora che, purch
e sia un
359

CAPITOLO 16 FILTRAGGIO ADATTATIVO

fattore abbastanza piccolo, f i converger al filtro ottimo in qualche modo,


ancora da illustrare. Anzitutto, opportuno chiarire il perch si utilizza lequazione di Widrow e Ho. Indichiamo con Qi lerrore quadratico
medio (media di insieme), allistante i-esimo:
Qi = E[|i |2 ]

(16.7)

ed il suo gradiente rispetto al filtro f i ;


f Qi = 2E[i di ]

(16.8)

pertanto lequazione (16.6) corrisponde allaggiornamento del vettore filtro f i nella direzione della minimizzazione dellerrore quadratico medio.
Non essendo possibile ricorrere alloperatore di media dinsieme E[.],
bisogna accettarne una stima stocastica anche molto mediocre, e cio
i di . Per evitare fenomeni di instabilit, come vedremo meglio al prossimo paragrafo, necessario che il passo nella direzione del gradiente sia
piccolo. Questo implica che laggiornamento del filtro f i lento. Se
osserviamo laggiornamento ogni K istanti, invece che ad ogni istante,
trascurando la variazione del filtro in questo intervallo KT visto che
e
comunque piccolo, abbiamo:
f i+K = f i +

K1
1 X
d ;
K k=0 i+k i+k

=K
e

(16.9)

Quindi, se il sistema stazionario, o almeno lo durante laggiornamento del filtro, la stima stocastica del gradiente ragionevole, purch
laggiornamento sia lento. Se quindi approssimiamo con:
K1
1 X
i+k di+k ' E[i di ]
K k=0

(16.10)

possiamo ritenere valida lequazione (16.9) che riscriviamo, decidendo


anche di porre K = 1.
f i+1 = f i + E[i di ]

(16.11)

Possiamo ora studiare levoluzione del filtro, che divenuta deterministica


per lapprossimazione fatta in precedenza (16.10):
f i+1 = f i + E[di (yi di f i )]
360

(16.12)

16.1 LA TECNICA DI WIDROW E HOFF

Indicando con R la matrice di covarianza dei dati e con r il vettore della


correlazione tra segnale e dati:
R = E[di di ];

r = E[yi di ]

Sostituendo nellequazione (16.12):


f i+1 = f i + E[i di ]
f i+1 = (I R)f i + r
Per i , f i+1 = f i e quindi:
f = R1 r
Lerrore quadratico medio di predizione sar, al solito sfruttando lincorrelazione tra errore di stima e dati di :

E 2 = E [(yi f i di ) (yi f i di ) ]
(16.13)
= 2y f i E [di yi ] = 2y r R1 r
La dierenza tra la media di insieme del filtro corrente f i ed il filtro
desiderato f il filtro errore gi (media di insieme) che evolve nel tempo
con lequazione:
f i+1 f = gi+1 = (I R)gi = (I R)i+1 g0

(16.14)

Condizione necessaria perch la media di insieme del filtro errore converga


a zero che il modulo degli autovalori della matrice I R sia inferiore
ad uno, e cio |1 n | < 1 Questo implica:
0<<

2
max

pertanto imponendo:

2
max

2
> PN

n=1 n

2
2
=
T r [R] N 2d

2
2

2
N d
max

(16.15)

(16.16)

siamo convinti ??? di ottenere il risultato di stabilit richiesto. In realt, stiamo solo imponendo che il filtro errore medio converga a zero.
Se vogliamo che anche la sua dispersione converga a zero (vedi ad un
paragrafo successivo) il valore di deve essere almeno 10 volte pi basso.
361

CAPITOLO 16 FILTRAGGIO ADATTATIVO

Con T r [R] abbiamo indicato la traccia della matrice R e cio la


somma degli elementi della sua diagonale principale e quindi la somma
degli autovalori; ci corrisponde a N volte la varianza del disturbo stesso.
Il risultato ottimale e cio la convergenza pi veloce si otterr quando
tutti gli autovalori sono eguali, come si vedr nella prossima sezione, e
poi ponendo = 1/max .
Si osservi che lequazione di Widrow e Ho, nella sua grande semplicit, ha un significato notevole: in sostanza, il sistema fa la stima f i della
funzione di trasferimento e poi, per migliorarla, utilizza lesperienza e
quindi sia lerrore commesso i che lingresso di che ha condotto a quellerrore con quella stima. Questo un meccanismo di autocorrezione
valido per chiunque.

16.2

Dispersione degli autovalori

La convergenza a zero del filtro errore gi dipende dagli autovalori n e


quindi le componenti del filtro errore lungo le direzioni degli autovettori
di R con autovalori piccoli si aggiornano lentamente; peraltro, non possibile accrescere troppo , limitato dallautovalore pi grande. Infatti, indicando con gi,n la componente di gi lungo en , autovettore corrispondente
alln-esimo autovalore n della matrice R:
gi,n = en gi = (1 n )i+1 g0,n
Sia:
=

2
max

(16.17)

;0 < < 1

Ponendo = 1/2, la componente relativa allautovalore pi grande converge in un solo passo (in media). Quelle relative agli altri autovettori,
pi lentamente, e mai se n = 0.
gi,n max = en gi = (1 0.5

2max i+1
) g0,n = 0
max

n i+1
) g0,n = 0
max
Si ricordi che i i sono le potenze del disturbo misurato di p.e. alle
varie frequenze: il sistema si aggiorna solo alle frequenze a cui i i sono
gi,n = en gi = (1

362

16.2 DISPERSIONE DEGLI AUTOVALORI

elevati (si pensi al proverbio toscano: chi non piange non puppa). Il sistema risponde solo se ci si lamenta. Se ad esempio il disturbo stato
filtrato passa basso, come gi visto in precedenza, la matrice R sar mal
condizionata e qualcuno degli autovalori sar piccolo. La componente del
filtro errore verso quellautovettore e in sostanza alle frequenze corrispondenti ai minimi dello spettro, si aggiorneranno lentamente, visto che sono
poco eccitate dal disturbo di , nullo o quasi in quella banda. Peggio ancora, pu accadere che a causa di problemi numerici queste componenti
del filtro errore possano crescere oltre misura senza controllo. Il problema non appare grave, se il sistema si mantiene lineare, visto che queste
componenti del filtro errore agiscono su componenti di disturbo trascurabili, e quindi il loro eetto trascurabile. Tuttavia, pu accadere che i
campioni del filtro (le prese, o taps in inglese), crescendo senza controllo
nella banda poco controllata, si avvicinino ai valori di trabocco per i coefficienti, rendendo cos il problema non lineare e distruggendo la capacit
del filtro ad aggiornarsi. Il problema del cosiddetto tap wandering ossia
girovagare delle prese deve essere considerato con cura nel progetto di
qualsiasi filtro adattativo.
Per evitarlo, e quindi per fare in modo che tutte le componenti del
filtro errore si annullino alla stessa velocit si dovrebbe fare in modo
che la matrice R sia proporzionale alla matrice identica, e cio che la
sequenza {di } sia un processo a spettro bianco. Quindi, prima di utilizzare la sequenza {di } per fare la cancellazione, opportuno sbiancarla.
Questo implica stimare il suo spettro; alternativamente, si pu utilizzare
un filtro a traliccio adattativo per eettuare lo sbiancamento. Unaltra
tecnica ecace quella di decomporre il segnale in bande con un banco
di filtri, ad esempio polifase; per ogni banda, in cui si pu pensare che lo
spettro del segnale sia uniforme, si eettua un filtraggio adattativo, con
un coeciente di aggiornamento diverso.
Le operazioni di sbiancamento sono anchesse tempo varianti come
quelle di sottrazione ottima. E naturale porsi il problema di accelerare
al massimo tali procedure di stima per potere garantire in tutte le condizioni un rapido ritorno ad elevate reiezioni del disturbo. Peraltro, come
vedremo nel prossimo paragrafo, accelerare la convergenza implica una
maggiore sensibilit al rumore; se si troppo sensibili alla moda ... .
363

CAPITOLO 16 FILTRAGGIO ADATTATIVO

16.3

Rapidit della convergenza

In questo paragrafo analizzeremo le conseguenze dellapprossimazione


fatta con lequazione (16.10); in particolare, verr delineata la necessit
di un compromesso nella determinazione del passo di aggiornamento
del filtro da adattare: infatti vi sempre una sequenza di segnale {si },
sovrapposta ma indipendente dal disturbo che si vuole cancellare; questo
segnale influenza in modo casuale il filtro f i (in questo paragrafo indichiamo con f i il vettore casuale e non la sua media) e impedisce che esso
raggiunga stabilmente il valore desiderato f anche per i , anche
se le statistiche non cambiano (in assenza di fenomeni transitori, cio).
Ancora, si deve tenere conto della casualit del disturbo misurato di e
quindi dellaggiornamento del filtro stesso. Tuttavia, se fosse molto
piccolo, laggiornamento sarebbe molto lento e queste due diverse variabili casuali agirebbero solo attraverso la loro media, fatta su un numero
grande di campioni; gli eetti di dispersione avranno scarsa influenza,
decrescente con . A regime quindi, il filtro avr piccoli scostamenti
dal valore asintotico corrispondente alla media di insieme. Invece, se
non piccolo, anzi si avvicina al limite teorico, avremo che il filtro f i ,
pur convergendo pi velocemente in media di insieme al valore
di regime (16.14), avr a regime una dispersione maggiore, per
la grande sensibilit ai valori (casuali) sia della sequenza di segnale {si }
che del disturbo di ; per unidea intuitiva, si ricordino i detti popolari
ondeggiante come una banderuola ( grande) e laltro inerte come
un sasso ( piccolo).
In conclusione, si comprende come allinizio della convergenza il passo
debba essere grande; il passo si deve poi ridurre progressivamente fino ad
avere un valore modestissimo in condizioni di regime quasi - statico (lontananza dal transitorio iniziale) e convergenza praticamente raggiunta.
Naturalmente, se c un nuovo cambiamento e si ripropone la necessit
di un aggiornamento, il filtro deve riacquisire la sua capacit di adeguarsi
e quindi deve crescere di nuovo.

16.3.1

Dispersione del filtro errore gi

Lanalisi della dispersione del filtro errore porter per il passo di aggiornamento a risultati pi restrittivi di quelli ottenuti con lanalisi dellevoluzione della media di insieme del filtro errore. Un modo semplice
364

16.3 RAPIDIT DELLA CONVERGENZA

per analizzare il problema il seguente. Si consideri un sistema monodimensionale in cui, allinsaputa del filtro, il rumore n assente. Il filtro
ottimo ha come media di insieme:
E [f ] = 0

(16.18)

ma lequazione di aggiornamento sempre la stessa:


yi = si ; fi+1 = fi + i di ; i = yi fi di ;
in cui, al solito, si misura il disturbo di per poi valutare il filtro f. Si
suppongano s, d indipendenti per cui il filtro asintotico f = 0, situazione a cui si arriva a partire da una condizione iniziale f0 = g0 6= 0. La
dinamica eettiva del filtro errore la seguente:

(16.19)
gi+1 = gi + (si gi di ) di = gi 1 d2i + di si ;
Ora, a regime, quando il filtro errore ormai ridotto a zero in media,
levando gli indici temporali:
h
h

2 i
2 i

2g = E g 1 d2 + ds
= E g 2 1 d2
+ 2 E d2 s2
(16.20)
4
4
Qualora d sia gaussiana, E [d ] = 3 d e quindi:

2g = 2g 1 + 3 2 4d + 2 2d + 2 2d 2s

2g 2 3 2d = 2s
2g =

Ad esempio se

2s
2s

2 3 2d
2

1
2
2s
2
.
<< 2 g .
6 2d
d
1.5

(16.21)

(16.22)

e leetto delle sbandate del guadagno (il denominatore che va verso zero)
diventa piccolo rispetto al disturbo a regime. A regime infatti, il valore
atteso del filtro errore nullo, ma non il suo valore quadratico medio,
che cresce con . E possibile ora fare unanalisi di un modo sistematico
con cui si deve ridurre il passo di aggiornamento, a partire dallequazione
(16.19) in cui per approssimiamo d2i con il suo valore atteso:

gi+1 = gi 1 2d + di si = gi + i
365

CAPITOLO 16 FILTRAGGIO ADATTATIVO

Questa una semplice equazione alle dierenze finite che, sovrapponendo


gli eetti dellingresso i e della condizione iniziale g0 , variabili casuali
indipendenti, ci d che, se fisso, la dispersione 2g varier nel tempo
come:
2
2s
2
2i 2d
;

e
+
2g,i 2i 2g,0 +
g,0
1 2
2
2
2
2i = e2i log(1d ) e2id
2
2 2s 2d
2s
2 2s 2d

=
1 2
(1 ) (1 + )
2d (1 + )
2

(16.23)

Quindi, per valori crescenti di ,cresce sia la rapidit di convergenza che


lasintoto. Linviluppo inferiore di queste curve parametrizzate da si
trova annullando la derivata delle curve rispetto al parametro (lintersezione tra due curve caratterizzate da valori molto vicini del parametro)
e quindi eliminandolo.
2g,i
2
2
= 2i 2d 2g,0 e2id + s = 0

2
Ora funzione dellindice i :

2
d 2
1
4 i
ln
(i) =
2 2d i
2s g,0
e il risultato ottimizzato quindi:

2
1 2s
2
2 d
1 + ln 4i g,0 2
;
g,i
i 4 2d
s
Si comprende come, allinizio delladattamento, debba essere vicino
al limite massimo ma poi debba scendere a valori molto pi bassi non
appena il sistema si avvicina allequilibrio, proprio per ridurre 2g . Inoltre,
per avere stabilit del filtro errore oltre che in media (vedi 16.14) anche
in dispersione, il passo deve essere ben pi piccolo del valore trovato in
base allequazione di evoluzione delle medie. Infine, se il sistema parte
da condizioni iniziali ignote, ma poi stazionario, il valore quadratico
medio dellerrore con cui viene determinato il filtro deve potersi ridurre
con il tempo in modo approssimativamente iperbolico.
Aumentando il livello di complessit e passando ad unanalisi multidimensionale (N > 1), possiamo quindi analizzare il filtro errore gi
366

16.3 RAPIDIT DELLA CONVERGENZA

0
-2
-4

dB

-6
-8
-10
-12
-14
-16

10

20

30
Numero di passi

40

50

60

Figura 16.2: Dispersione del filtro errore in funzione del tempo, al variare
della lunghezza del passo . Al crescere di , la convergenza pi rapida,
ma lasintoto pi elevato. La curva inviluppo, ottenuta variando il
passo nel tempo, rappresentata con asterischi.

367

CAPITOLO 16 FILTRAGGIO ADATTATIVO

(e cio la dierenza tra il filtro eettivo f i (vettore casuale) ed il filtro


desiderato a regime, f , vettore deterministico) come un vettore casuale
di cui si cerca media e varianza, al variare del tempo. La situazione non
stazionaria, in quanto la media (di insieme) del filtro errore converger
a 0, sempre se < max . Non cos la sua dispersione statistica, come vedremo nel seguito. Anzitutto, riscriviamo lequazione di aggiornamento
del filtro f i , visto come un vettore casuale:
f i+1 = f i + i di = f i + (yi di f i )di

(16.24)

Lerrore di stima del disturbo i somma di due termini, luno dovuto al


segnale sovrapposto si e laltro al disturbo residuo dovuto allimperfetto
filtraggio, perch il filtro errore gi , anche esso casuale, non nullo:
i = si + ni n
i = yi di f i = yi di (gi + f ) =
= yi di f di gi ' si di gi

(16.25)

sempre che si supponga ni ' di f e cio che il filtro a regime f sia


ecace. Per ottenere dei risultati semplici, dobbiamo fare delle ipotesi
semplificative, che tuttavia non oscurano la fisica del problema. In particolare supponiamo che, da un istante al successivo, i vettori di siano
indipendenti tra loro e dal segnale si .
E[di dj ] = 0;

i 6= j

Inoltre, per semplificare le formule, supporremo che le componenti di di


siano indipendenti tra loro e con eguale varianza e pertanto che la matrice
R sia proporzionale alla matrice identica:
R = E[di di ] = 2d I
Calcoleremo la media di insieme del vettore gi+1 ,
gi+1 = (I di di )gi + di si

(16.26)

tenendo conto dellindipendenza tra il segnale si ed il disturbo di .


Prima per di passare a qualsiasi operazione di media, osserviamo
che
P
la matrice casuale di di o una sua media mobile a pesi positivi i pi di di
sempre semidefinita positiva in quanto per qualsiasi vettore a, di , si
ha
X
X
pi (a di di a) =
pi (di a)2 0 se pi 0
368

16.3 RAPIDIT DELLA CONVERGENZA

Questo un fatto importante perch non permette il cambio di segno del


nella proiezione su qualsiasi autovettore della matrice di di e quindi
possibili instabilit. Passando alle medie di insieme:
E[gi+1 ] = E[(I di di )gi ] + E[di si ] =

= (I R)E[gi ] = (I R)i+1 g0

(16.27)

In questultima equazione abbiamo utilizzato lipotesi che ogni nuovo


valore di di indipendente dai precedenti e quindi anche indipendente da
gi . Quindi la media del loro prodotto il prodotto delle medie. Ancora,
si supposto che il valore iniziale del filtro errore g0 non sia una variabile
casuale; esso peraltro sconosciuto.
La media di insieme del filtro errore pertanto si evolve e converge
a zero secondo lequazione determinata precedentemente (16.14) utilizzando lipotesi di lenta variazione del filtro ( piccolo) e stazionariet
delle statistiche del disturbo. Calcoliamo ora il valore quadratico medio
del filtro errore; di nuovo, per evitare complicazioni ulteriori, calcoliamo
questo v.q.m. a regime (i = ), e cio quando la media di insieme
del filtro errore ha raggiunto il valore nullo, desiderato. La varianza a
regime pertanto corrisponde al valore quadratico medio delle componenti, a regime. Utilizziamo quindi la formula (16.26) di cui calcoliamo il
valore quadratico medio di entrambi i membri, utilizzando lindipendenza
tra di , gi ,si e tralasciando lindice (i = ), per snellire. Inoltre, riscriviamo lequazione di aggiornamento non sostituendo immediatamente
allespressione di di la sua media di insieme e cio la matrice R, proprio
per tenere conto della casualit dellaggiornamento:

E g g = E g (I dd ) (I dd ) g + E[ 2 s2 d d] =
e quindi:



= E g I 2dd + 2 dd dd g + E[ 2 s2 d d]

N 2g = N 2g (1 2 2d + 2 (N + K 1) 4d ) + 2 N 2d 2s
Infatti,
E[dd ] = 2d I
369

(16.28)

CAPITOLO 16 FILTRAGGIO ADATTATIVO

e, per lindipendenza tra di , gi :

E g dd g = E g E [dd ]g = N 2g 2d

E[dd dd ] = E[d d dd ] = (N + K 1) 4d I
il kesimo elemento della diagonale principale dellultima matrice eguale
a:
N
X
d2i d2k ] = (N 1) 4d + K 4d
E[
i=1

Abbiamo indicato con K il rapporto tra il valore medio della quarta


potenza e il quadrato della varianza:
K=

E [d4k ]
4d

(16.29)

K la curtosi di una variabile casuale a valor medio nullo e per variabili


gaussiane K = 3. Quindi, in condizioni di regime, lontano dai transitori,
quando la varianza 2g del filtro errore dovuta solo alleetto della
varianza 2s del segnale {si } che provoca aggiornamenti casuali del filtro,
si ha:
2s
(16.30)
2g =
2 (N + K 1) 2d
Se piccolo,
2g '

2s
2

(16.31)

In sostanza, a regime, la varianza del filtro errore cresce con la


varianza del segnale s e con il passo di aggiornamento. Quindi,
una volta raggiunta in pratica la convergenza, va ridotto. Inoltre, la
dispersione del filtro errore pu essere illimitata ( 2g ), se non si
verifica che:
2
2
<

2
(N + K 1) d
N 2d
In sostanza, ci sono valori del passo di aggiornamento per cui il filtro errore convergerebbe (in media) a zero, ma poi ha una dispersione
enorme.
370

16.4 OTTIMIZZAZIONE DEL PASSO DI AGGIORNAMENTO

16.4

Ottimizzazione del passo di aggiornamento

Riassumendo, se il ritmo di aggiornamento del filtro veloce ( <= max ),


i parametri del filtro si aggiornano rapidamente, ma poi, a regime, i
parametri sono aetti da disturbo. Se invece il filtro si aggiorna lentamente, a regime sar poco disturbato. Ne risulta inoltre un altro limite
per il passo: infatti, come si visto:
2
< max =
(16.32)
(N + K 1) 2d
Se N >> 1, ci si potrebbe avvicinare alla condizione di massima velocit di aggiornamento del filtro media di insieme ( = max ); per,
la dispersione a regime del filtro errore tenderebbe ad infinito a causa
dellinevitabile presenza del segnale ( 2s 6= 0) che impedisce al filtro di
inseguire solo il disturbo. Se << max , il filtro si aggiorna molto
lentamente ma poi a regime la dispersione minore perch si meno
sensibili allinfluenza del segnale casuale mediata e rimossa a causa del
limitatissimo passo di aggiornamento.
Pertanto, allinizio dellaggiornamento, quando si lontani dalla situazione di regime (il filtro errore ha valori grandi), sar opportuno porre
' max /2 per accelerare la convergenza anche a costo di unelevata
dispersione a regime; appena il filtro errore si ridotto, bisogna ridurre
per evitare inutili dispersioni dei coecienti del filtro attorno ad un
valore medio vicino a valori gi buoni. Gergalmente, in inglese, questo
modo di operare chiamato gear shifting: scalare le marce; laggiornamento deve essere veloce allinizio del transitorio e lento alla fine, quando
si prossimi alla situazione asintotica. Si osservi che nei periodi iniziali
del transitorio (dopo una variazione delle statistiche), ci si attende un
cambiamento celere (rivoluzione). La media del filtro errore grande e
c grande dierenza tra il comportamento atteso e quello eettivo del filtro. Sono possibili variazioni repentine del filtro, apparentemente casuali
( ' max 2g ' ). Nelle situazioni lontane dai transitori (conservazione) il sistema si adegua ordinatamente ma forse troppo lentamente
( << max 2g ' 0).
Se poi le statistiche del sistema cambiano continuamente, ci sar un
valore ottimale di dipendente sia dalla velocit di variazione delle statistiche che dallampiezza del rumore. In generale, il valore ottimo per
371

CAPITOLO 16 FILTRAGGIO ADATTATIVO

sar quello che minimizza il valore atteso (quadratico medio) del filtro
errore: se il traco irregolare, bene rimanere in seconda ...
Si osservi che per N = 1 la situazione peggiore, e si deve mantenere << max /3 < max , nel caso di variabili gaussiane. Infatti, sono
possibili valori istantanei elevati del disturbo che mandano il sistema in
instabilit. Non appena N cresce e laggiornamento basato su stime
fatte su un numero maggiore di variabili casuali indipendenti, c minore dispersione della stima, la situazione si stabilizza immediatamente,
e pu essere accresciuto. Questo eetto di instabilit dipende dalla
possibilit di avere forti picchi istantanei in qualche componente di,n di
di ; si ricordi che il fattore (N + K 1)/N per le variabili gaussiane
vale (N + 2)/N e vale 3 per N = 1; la situazione peggiora ancora con
distribuzioni con curtosi pi elevata che non la gaussiana (e cio se vi
probabilit significativa di avere picchi elevati); infatti, sono possibili densit di probabilit con varianza finita e curtosi illimitata. La situazione
invece migliora per variabili casuali pi tranquille e cio caratterizzate
da distribuzioni con code limitate o addirittura assenti come accade per
la distribuzione rettangolare per la quale K = 9/5 < 3; il valore minimo
possibile per la curtosi, K = 1, raggiunto solo nel caso di una variabile
casuale che assume solo i valori q. In questo caso e solo in questo caso si pu mantenere 1 anche per N = 1; in altre parole, il segnale
di pilotaggio cos tranquillo che si pu rimanere sempre con le marce
alte; questultimo non un caso irrilevante in quanto corrisponde ad un
segnale di comunicazioni del tipo BPSK.

16.4.1

Genesi e collasso delle societ idrauliche

Un interessante caso di evoluzione sociale, congrua con quanto detto per


i sistemi adattativi, rappresentato dalle cosiddette societ idrauliche
(K. Wittfogel, Oriental Despotism: A Comparative Study of Total Power). Queste societ si sviluppano attorno a gigantesche opere di canalizzazione per irrigazione, ed a volte collassano. Ve ne sono numerosi
esempi in Eurasia (Cina del Nord, Egitto antico, Mesopotamia) ed in
America (Maya).
Queste societ si adattano sempre meglio al loro ambiente, costruendo dei sistemi di irrigazione indispensabili per nutrire laccresciuta popolazione, ma fragilissimi. Per garantire che ognuno svolga il lavoro assegnatogli, si rende necessaria una burocrazia sempre pi pesante e potente.
372

16.5 UN ESEMPIO DI FILTRO ADATTATIVO

Infatti, anche una modesta mancanza di qualcuno (p.e. lostruzione anche parziale di un canale irriguo) potrebbe poi causare danni gravissimi.
Gli onnipotenti burocrati, per i quali la principale virt lobbedienza,
diventano nemici di tutte le innovazioni, che sono viste come un rischio
per lo status quo e per lequilibrio ( piccolissimo).
Enormi ed inutili lavori pubblici, come le piramidi, i tipici monumenti di queste civilt, hanno anche lo scopo di mantenere coesa la societ.
Imprevedibili siccit possono per provocare dei collassi globali (J. Diamond: Collapse: How Societies Choose to Fail or Survive) mentre invece
altre societ pi primitive, ma pi resilienti, possono passare indenni
attraverso queste crisi climatiche.

16.5

Un esempio di filtro adattativo

Una sequenza disturbante xn ottenuta filtrando un processo bianco


un con un filtro FIR

un

h
i

xn = un + 2un1 + un2 = 1 2 1 un1 = a u

un2
Il segnale desiderato sn osservato dopo la somma del disturbo xn :
yn = sn + xn
Le sequenze un , sn sono bianche, indipendenti tra loro e gaussiane con
valore medio nullo e varianza unitaria. Ricostruiamo con il filtro adattativo f n i valori della sequenza sn a partire dai valori del vettore dn :

wn+1
xn+1

dn = xn + wn

xn1
wn1
mediante la relazione iterativa:

x
bn = f n dn

f n+1 = f n + [yn x
bn ] zn
373

CAPITOLO 16 FILTRAGGIO ADATTATIVO

La matrice di covarianza del vettore dei dati z e la correlazione tra i


dati ed lo scalare desiderato yn .

(16.33)

(16.34)

7 4 1
1 0 0
6 4 1


R = E [zz ] = 4 6 4 + 0 1 0 = 4 7 4


1 4 7
0 0 1
1 4 6

r = E [yn z ] = 6 ;

4

0.166 67

1
= R r = 0.666 67

0.166 67

:Gli autovalori e gli autovettori di R sono;

1.82 0

0.4775 0.7 0.5215


6 0 ; 0.7376 0 0.6753


0.4775 0.7 0.5215
0 13.17

(16.35)

Si osservi come lautovalore massimo corrisponde allautovettore passa


basso (la terza colonna della matrice di destra). Si ha che assolutamente:
2
= 0.09
(16.36)
21
Supponendo di partire dal filtro f0 = 0 ,le componenti lungo i 3
autovettori del filtro errore g0 sono
<

0.4775 0.7 0.5215

0.7376 0 0.6753

0.4775 0.7 0.5215

0.166 67

0.332 57

0.0
0.666 67

0.624 04
0.166 67

Queste convergeranno a zero con la legge

n
2
1 i

21
374

(16.37)

(16.38)

16.5 UN ESEMPIO DI FILTRO ADATTATIVO

Figura 16.3: Convergenza al valore asintotico delle 3 componenti del filtro


f n . Il valore di piccolo, e loscillazione a regime piuttosto ridotta.
= 0.002
Prendendo = 0.5 sembrerebbe che

n
1
1
13.82 0.91n ; 0.71n , 0.34n
21

(16.39)

In realt si deve prendere un molto minore ( = 0.002; 0.2) per garantire la stabilit (vedi figure).A transitorio esaurito la potenza dellerrore
, per lincorrelazione tra errore di stima e dati :

bn )2 = E [(yn x
bn ) yn ] = E [(sn + xn f dn ) (sn + xn )] =
E (yn x
(16.40)
2
2

= s + x r f = 1.66
(16.41)

375

CAPITOLO 16 FILTRAGGIO ADATTATIVO

Figura 16.4: Convergenza al valore asintotico delle 3 componenti del filtro


errore gn lungo i 3 autovettori della matrice R . Il valore di piccolo,
e loscillazione a regime piuttosto ridotta. Si osservi la diversa velocit
di convergenza. = 0.002

Figura 16.5: Convergenza al valore asintotico delle 3 componenti del


filtro f n . Il valore di molto maggiore, e loscillazione a regime
notevole. La densit di probabilit della sequenza {wn } uniforme, a
pari varianza. = 0.008

376

Capitolo 17
Le direzioni di arrivo
Fino ad ora abbiamo visto lanalisi spettrale di sequenze in cui lindice
rappresenta lasse temporale; studieremo ora situazioni in cui lindice si
riferisce a posizioni nello spazio. In particolare vogliamo arontare il
problema della misura delle Direzioni di Arrivo su una schiera di sensori
(Directions of Arrival: DOA) di segnali temporalmente monofrequenziali
(o a spettro molto limitato).
Si disponga di un cavo lungo il quale sono regolarmente disposti dei
sensori e siano {xi }, i = 1, . . . , N +1, i segnali da essi misurati. La distanza tra il sensore i-esimo e linizio del cavo sia di = (i 1); supponiamo
che esistano M sorgenti di radiazioni, monofrequenziali o a banda stretta,
a grande distanza dal cavo; langolo tra la direzione della sorgente m e
la normale al cavo (vedi fig. 17.1) indicato con m ; quindi la radiazione
arriva al ricevitore {xi } con il ritardo rispetto al ricevitore i = 1 pari
a i = (i 1) sin m /c. Inoltre, indichiamo con Am ejnT lampiezza sinusoidale della radiazione e la sua evoluzione nel tempo, e con c la
velocit di propagazione delle onde. Il segnale misurato dal sensore i
allistante n (per semplicit abbiamo posto M = 1):
xi,n = A exp(jnT + j

(i 1) sin m
) = AejnT ejkm (i1) ; (17.1)
c

sin m
c
Il segnale misurato nella stessa posizione al variare del tempo una sinusoide complessa di pulsazione ; il segnale misurato allo stesso istante
km =

377

CAPITOLO 17 LE DIREZIONI DI ARRIVO

Figura 17.1: Schiera di sensori


nT da tutta la schiera di sensori (al variare della posizione nello spazio)
una sinusoide complessa, nel dominio degli spazi, avente numero
donda km (per le sinusoidi spaziali, la grandezza corrispondente alla pulsazione delle sinusoidi temporali). Misurare la direzione di arrivo
equivale a misurare il numero donda della sinusoide complessa registrata.
Fare unanalisi spettrale della sequenza {xi }, per un dato istante di
tempo n, corrisponde quindi a determinare numero e direzione di arrivo
delle radiazioni incidenti sul cavo. Si osservi che se la radiazioni in arrivo
non sono monofrequenziali ma la loro banda sucientemente ampia,
possibile farne una decomposizione di Fourier lungo lasse dei tempi, sensore per sensore, e poi analizzare ogni singola componente isofrequenziale
nel dominio degli spazi. In questo modo si avranno pi misure (alle varie
frequenze temporali) della stessa direzione di arrivo, misure che potranno
essere opportunamente combinate.
Si osservi ancora che in questo caso, lipotesi di avere segnali sinusoidali (nello spazio) sostanzialmente corretta. Le tecniche che utilizzeremo per la misura della frequenza ed ampiezza di queste sinusoidi saranno
quella del periodogramma e quella AR. Ve ne sono altre (Pisarenko, etc.)
378

17.1 DOA CON IL PERIODOGRAMMA

che non verranno discusse.


La distanza massima tra i sensori per evitare equivocazione spaziale
:
sin
c

|k| =
kNyquist = ;

=
(17.2)
c

2f
2
Per esempio, con segnali a 20kHz, se c = 1500m/sec, allora
0.0375m. Scegliendo questo valore per avremo che alla direzione = 0
corrisponde k = 0; alle direzioni = /2 corrisponde k = kNyquist

17.1

DOA con il periodogramma

Determineremo ora laccuratezza della misura delle direzioni di arrivo,


utilizzando per lanalisi spettrale la tecnica del periodogramma. In questo
caso, indicando con Ltot = N la lunghezza del cavo la risoluzione
spettrale
2
k =
(17.3)
Ltot
A questa incertezza di numero donda k corrisponde unincertezza
angolare :
cos
2 cos
dk
=
=

(17.4)
k =
d
c

=
2 cos Ltot
Ltot cos

(17.5)

Questa la direttivit di unantenna lunga Ltot cos pari alla proiezione


della lunghezza del cavo nella direzione ortogonale alla radiazione. In
sostanza, utilizzare il periodogramma per fare lanalisi spettrale coincide
con il combinare assieme i segnali in unantenna sintetica lunga quanto il cavo. Si osservi che luso di questa tecnica corrisponde allipotesi
che radiazioni provenienti da direzioni diverse (potenze in celle disgiunte
del periodogramma) siano tra loro indipendenti. Se lanalisi fosse bidimensionale, questa tecnica produrrebbe quindi unimmagine dellenergia
illuminante suddivisa per direzioni angolari di arrivo: come un telescopio,
pertanto. Infatti, una lente sottile (o uno specchio ricurvo opportunamente) funziona come un trasformatore di Fourier (a 2 dimensioni): limmagine nel piano focale la trasformata di Fourier del segnale in arrivo
379

CAPITOLO 17 LE DIREZIONI DI ARRIVO

sulla lente. Quindi, per leggere un titolo di giornale (5cm di risoluzione)


da 300 km di distanza serve un telescopio di diametro almeno eguale a:
0.05

= ; Per il colore verde: = 0.5m D = 3m


300000 D
Ma la risoluzione pu crescere di molto se si possono imporre ipotesi
stringenti sul numero di sorgenti, come vedremo nella prossima sezione.

17.2

Stima AR: la risoluzione angolare

Lanalisi spettrale che si adatta bene al caso in cui si ha un numero


limitato di sorgenti lontane quella parametrica, tutti poli. Infatti il
segnale in arrivo caratterizzato da un numero discreto M di fronti
donda, ognuno con la sua ben definita direzione di arrivo. La sequenza
{xi } sar somma di M sinusoidi complesse corrispondenti agli M fronti.
Le loro pulsazioni spaziali (i numeri donda) sono:
km =

sin m
; m = 1, . . . , M
c

(17.6)

Supporremo M = 1, che lampiezza della radiazione A sia una variabile


casuale complessa di varianza E[AA ] = 2A e che sui dati sia sovrapposto
del rumore bianco wi , complesso, di varianza 2w . Non riportiamo il
fattore complesso ejnT avente modulo unitario, comune a tutti i dati.
Ponendo quindi:
xi = Aejk1 (i1) + wi
si vede che lanalisi spettrale AR si presta bene, anche se poi non esiste
una vera e propria corrispondenza fisica diretta e cio non siamo nel caso
di un segnale generato da un rumore bianco che pilota un filtro IIR.
Per determinare la direzione della sorgente con lanalisi spettrale AR
abbiamo bisogno dei campioni della funzione di autocorrelazione spaziale
della sequenza {xi } che sono:

E[xi xin ] = rn = rn
= 2A ejk1 n + 2w (n); 0 n N

(17.7)

Si osservi che possiamo stimare con precisione i campioni della funzione


di autocorrelazione facendo delle operazioni di media nel tempo; non
abbiamo necessit di fare delle medie nello spazio.
380

17.2 STIMA AR: LA RISOLUZIONE ANGOLARE

17.2.1

2 sensori, una sorgente

Nel caso semplice di due sensori, e quindi una stima AR di ordine 1, il


polo dello spettro stimato in
z1 =

ejk1
2w
2
jk1
=
(1

)
e
;

; k =
2
2
2
1 + w / A
A

(17.8)

La risoluzione angolare ben migliore che nel caso del periodogramma


fatto con la stessa schiera:
k =

2 cos
2 2w
1 2w

2A
cos 2A

(17.9)

Per N = 1, si migliora il risultato del periodogramma di un fattore


2w / ( 2A ) .

17.2.2

N+1 sensori, una sorgente

Nel caso di N + 1 sensori ed una sorgente, utilizzando le equazioni di


Yule Walker, si osserva che la matrice di covarianza R Hermitiana (la
trasposta coincide con la coniugata) ed in questo caso rappresentabile
come combinazione lineare di una matrice identica e di una diade, prodotto esterno di due vettori complessi. Si verifica che la matrice inversa
ancora combinazione lineare della matrice identica e della stessa diade.
Nel caso pi generale M > 1, e cio con M sorgenti indipendenti, la matrice R sarebbe somma di M diadi e la soluzione analitica del problema
richiederebbe la soluzione di una matrice M M. Ovviamente, il problema delle direzioni di arrivo solubile solo se M N, ed in generale
M <<< N. Lo spettro AR determinato dalle relazioni di Yule Walker. Per M = 1 la soluzione analitica semplice; si osservi che con poco
rumore, lordine N del sistema necessario per misurarne la frequenza
potrebbe essere limitato ad 1, (bastano due sensori, quindi) in quanto una sinusoide complessa corrisponde ad un sistema ad un solo polo.
Tuttavia, la presenza del disturbo {wi } fa s che lerrore di predizione
decresca progressivamente con N , come vedremo, rendendo utili schiere
di pi sensori. Sia quindi al solito:
RaN = rN
381

CAPITOLO 17 LE DIREZIONI DI ARRIVO

r0

r1

R = r2

...

rN1

r1

r2

. . . rN+1

r0

r1

...

r1

r0

...

...

...

...

rN2 rN 3 . . .

jk1
e

j2k1
e

c = ej3k1 ;

...

ejNk1
R1 =

rN+2

2
rN+3 = A cc + w I;

...

r0

r
1

r2

rN = r3 = 2A c

...

rN

I
2A cc

2w
2w ( 2w + 2A c c)

(17.10)

(17.11)

(17.12)

In un caso pi generale:
A1 ss A1
1 + sA1 s
Inoltre, indicando con aN il vettore incognito delle equazioni di Yule
Walker (vedi al Capitolo sullAnalisi spettrale parametrica) e cio lo
stimatore ottimo del segnale:

A
1
c
aN = R rN =
(17.13)
2w + N 2A
(A + ss )1 =A1

poich

c c = N

(17.14)

Risulta infine che la soluzione :


an,N =

2A
ejk1 n
2w + N 2A

(17.15)

Il denominatore della funzione di trasferimento che viene identificata con


il metodo autoregressivo :
A(z) = 1 +

N
X

an,N z n ; z = ejk

n=1

382

17.2 STIMA AR: LA RISOLUZIONE ANGOLARE

La stima dello spettro di potenza unilatero del segnale visto dalla schiera
dei sensori ottenuta dallo spettro dellerrore di predizione, di cui nota
la potenza ma non il colore e pertanto supposto bianco, spettro che
poi deve essere diviso per la funzione di trasferimento del predittore. La
potenza dellerrore di predizione quella del segnale di ingresso, ridotta
del fattore dipendente dagli N coecienti di riflessione cn ; n = 1 N
e, per 2A >> 2w :
cN = aN,N

si ha:

N = 1, . . .

(17.16)

2
2A
2 2w 2A + 4w
2 2w
=

1 |c1 | = 1
2
2w + 1 2A
2A
( 2w + 2A )
2

2A
1
2
Per N > 1; 1 |cN | = 1

2w + N 2A
N2
2

Poich:

2A
= 2
ejk1 N ;
2
w + N A


Y
1
1
1 2 =
i
2
i=2

1 |c1 |2 (1 |c2 |2 )(1 |c3 |2 )..



2 2w 3
8
2
...
A 4
9

(17.17)
(17.18)

Lerrore di predizione q.m. :


2

E[|i,N | ] =

( 2A

2w )

N
Y

(1 |cn |2 )

(17.19)

n=1

pari a circa 2 2w per N = 1 e si riduce a 2w per N crescenti. Lo spettro


stimato :
Q
2
2( 2A + 2w ) N
n=1 (1 |cn | )
b
S(k) =

PN

2
1 + n=1 an,N ejkn
Q
2
2( 2A + 2w ) N
n=1 (1 |cn | )
=
(17.20)
2
PN

2A
j(kk
)n
1
1 2w +N 2

n=1 e
A

383

CAPITOLO 17 LE DIREZIONI DI ARRIVO

Sb (k) ha un massimo al numero donda k1 dove vale:


QN
2
2
2
+

)
2(
w
A
n=1 (1 |cn | )
=
Sb (k1 ) =

N2A
1 2 +N 2
w

2( 2A + 2w )
=

QN

n=1 (1
2

2w
2
w +N2A

|cn |2 )

N 2 4A
2w

Il coeciente passa da 4 per N = 1 a 2 per N . Si osservi che


questo massimo cresce e con N 2 e con il rapporto segnale rumore; peraltro, nello spettro vero troveremmo un impulso ideale: quindi lampiezza
del massimo non corrisponde comunque allampiezza del segnale. La
qualit della stima deriva per dallelevata risoluzione spettrale che ora
calcoliamo. Infatti, lintervallo k di numeri donda intorno a k1 che
b
corrisponde ad una variazione di 3 dB dellampiezza S(k)
rispetto al
massimo della stima spettrale , per alto rapporto SNR:
k =

1
4 2w
2
N A (N + 1)

(17.21)

Ci si dimostra facilmente sviluppando attorno al suo minimo lo spettro


del predittore:
1+

N
X
n=1

an,N ej(kk1 )n = 1

2w
2A N (N + 1)

j
;
2w + N 2A
2 ( 2w + N 2A )
3dB =

N
X
n=1

2A
ejn
2w + N 2A

se || = |(k k1 ) | << 1

k
2 2
2 w2
2
N A

Peraltro la potenza totale nella banda a 3 dB proprio 2A : ricordando


che
Z
d
= r0
S ()
2
si ha:
4 2 1 N 2 4 1
2
Pest = 2 w2 2 A
= 2A
N A
w 2

384

17.2 STIMA AR: LA RISOLUZIONE ANGOLARE

a meno del fattore 2/ gi incontrato, dovuto allapprossimazione di


spettro uniforme (e non 1 polo) nella banda 3dB. La risoluzione angolare
(spettrale) quindi:

4 2w
c
=
'
2
cos
N (N + 1) A 2 cos

2
2w
=
; N >1

Ltot cos (N + 1) 2A

= k

(17.22)

tanto migliore rispetto a quanto ottenuto con il periodogramma per quanto pi elevato il rapporto Segnale - Rumore; inoltre cresce con il numero
N di sensori utilizzati. Praticamente, inutile fare crescere N oltre 2 o
3. In questo caso, la sinusoide ricostruita quasi perfettamente e lerrore
residuo solo il rumore additivo, impredicibile. Invece, per N = 1, la
sinusoide stimata in modo imperfetto e lerrore ha potenza doppia.

17.2.3

Numero dei sensori della schiera

Dallocchio del falco alla punta del cane da caccia


Da quanto abbiamo visto finora, si vede che, se disponiamo di una
schiera di N + 1 sensori e se utilizziamo il periodogramma, possiamo determinare contemporaneamente direzioni ed ampiezze di N sorgenti da
tutte le direzioni accessibili (i contenuti delle N celle del periodogramma). Come vedremmo nella sezione sulle lenti sottili nel capitolo sui filtri
2D di natura fisica, questo il modo di funzionamento dellocchio. Una
lente agisce come un filtro chirp (vedi il paragrafo in proposito) bidimensionale e opera una trasformazione di Fourier (a 2D nel caso dellocchio)
che focalizza su varie posizioni della retina le radiazioni che provengono
da varie direzioni. Linnervamento della retina porta poi alla valutazione
delle ampiezze (e dei colori) delle sorgenti. Cos, per fissare le idee in modo intuitivo, locchio del falco permette di osservare dallalto un intero
territorio e trovare la posizione delle prede. Siamo quindi nella condizione
di N molto grande, e scopo dellosservazione quello di determinare, tra
tante, posizioni e ampiezze delle sorgenti di interesse. La conoscenza a
priori delle posizioni nulla, perch siamo nella condizione di avvistamento. Se riduciamo N, ci mettiamo nella condizione di potere osservare solo
un numero minore di sorgenti simultanee, e quindi dobbiamo utilizzare
delle informazioni a priori sulla loro natura e posizione.
385

CAPITOLO 17 LE DIREZIONI DI ARRIVO

Laltro caso estremo si ha per N + 1 = 2; si pensi per esempio alla


punta di un cane da caccia. Questo drizza le orecchie per identificare
con la massima precisione la posizione in un cespuglio di una preda che
non vede. La schiera solo di due sensori, orientata in modo ortogonale
allunica direzione di arrivo di interesse (cos = 1). La precisione della
localizzazione, come abbiamo visto, dipende dal rapporto segnale rumore
(orecchie grandi e dispiegate). Visto che si tratta di un unica sorgente,
bastano due sensori, che devono essere massimamente sensibili ed alla
massima distanza possibile tra loro. Le risorse sono cos impiegate al
meglio.
In altre parole, il numero degli elementi di una schiera ha due possibili
motivazioni: il numero delle sorgenti da stimare contemporaneamente, e
lagilit con cui la direzione della schiera pu essere modificata. Se la
schiera agile e la sorgente una sola, la massima ecienza raggiunta
con solo due sensori massimamente sensibili, da disporre alla massima
distanza reciproca possibile per evitare lequivocazione, che dipende dalla frequenza usata. Per fare un esempio, i pipistrelli usano ultrasuoni, ma
hanno la testa piccola (vedi figura17.2). La distanza tra i due elementi
della schiera limitata solo dallincertezza a priori della posizione della
sorgente. Disporre in questo caso altri sensori posti tra gli estremi sarebbe
uno spreco: meglio usare le risorse per migliorare la sensibilit dei due
sensori estremali (solo due orecchie, ma grandi. Tre orecchi proporrebbero
due posizioni possibili di due prede, e lascerebbero il cane nellincertezza.
Un terzo orecchio centrale quindi inutile: i cani cercano una preda per
volta! ). Se invece lagilit della schiera limitata, si devono disporre i
sensori pi vicini tra loro, per poterla orientare elettronicamente in un
arco di direzioni pi vasto. La distanza tra i ricevitori si deve ridurre
per evitare lequivocazione dovuta ad arrivi laterali, e quidi servono pi
ricevitori per ottenere la risoluzione angolare voluta. In sostanza, il numero degli elementi della schiera riflette lincertezza a priori del numero
dei bersagli e la dispersione delle loro posizioni (locchio del falco). Come
vedremo in seguito, una schiera pu anche essere utile per separare (e
sopprimere) sorgenti disturbanti o indesiderate. Il caso anomalo di voler
inseguire sorgenti contemporanee con direzioni molto diverse porta ad un
eetto come di strabismo, ingegneristicamente costoso. In questo caso,
possono essere utilizzate delle schiere con pochi sensori ma a distanze
molto non uniformi tra loro (schiere logaritmiche).
Infine, si deve prolungare al massimo la durata dellosservazione per
386

17.3 REIEZIONE DIREZIONALE DEL DISTURBO

Figura 17.2: Massime e minime frequenze dellapparato uditivo di vari


animali. Da P Counter, Implantable hearing aids, Newcastle, UK
migliorare il rapporto segnale rumore e quindi la precisione della localizzazione. Ovviamente, necessario che in questo intervallo di tempo il
bersaglio non si muova o possa essere inseguito dalla schiera.
Per fare un ultimo esempio dal mondo animale, osserviamo che i delfini ascoltano ultrasuoni fino a circa 150KHz, con una lunghezza donda
di circa 1cm (c = 1500m/s). Possono sentire una sardina (20cm) a
100m di distanza. La schiera potrebbe essere costituita dalla mascella
ed i denti sarebbero i sensori: in questo caso probabile che il valore
di N sia elevato, riportandosi ad una situazione pi simile a quella del
periodogramma e dellocchio del falco.

17.3

Reiezione direzionale del disturbo

La tecnica della misura delle DOA pu avere varie applicazioni: p.e.


nella telefonia cellulare, le stazioni fisse possono localizzare le direzioni dei
chiamanti, per concentrare nella loro direzione la direttivit delle antenne
di ricezione e trasmissione; questo meccanismo potrebbe portare ad un
decremento delle interferenze quindi allaccrescimento del numero degli
utenti. Ancora, sono facilmente immaginabili applicazioni alla difesa: le
387

CAPITOLO 17 LE DIREZIONI DI ARRIVO

sorgenti possono essere sommergibili o aerei di cui si deve determinare


lazimuth.
In ogni caso, vi possono per essere forti sorgenti vicine che disturbano
il sensore. La presenza di queste sinusoidi spaziali molto ampie polarizza
la stima spettrale e la rende imprecisa, come gi visto quando abbiamo
studiato leetto delle finestre su dei segnali sinusoidali. Pu essere utile
rendere il sistema meno sensibile a queste sorgenti disturbanti; si adottano quindi tecniche per individuare la direzione da cui proviene il segnale
disturbante per cercare poi di annullare in quella direzione la direttivit
dellantenna sintetizzata con il sistema di sensori. (Le visiere dei cappelli
fanno da schermo alla luce solare). Nel caso specifico, si pu mettere un
ulteriore sensore x0 (vedi fig. 17.1) il cui scopo quello di registrare la
radiazione disturbante. Quindi, si cercher di decorrelare tutti i sensori
rispetto a x0 ; in altre parole, usando x0 cercheremo di stimare luscita
di ogni sensore; la nuova uscita del sensore sar costituita dall errore di
predizione. Cos facendo, si eliminer approssimativamente la radiazione
disturbante, raggiungendo lo scopo. Indichiamo il segnale misurato con:
xi = A1 ejki + A2 ejk2 i ; i = 0, . . . , N ;

(17.23)

E[|A1 |2 ] = 21 >> E[|A2 |2 ] = 22 ;

(17.24)

22
<< 1
21

(17.25)

Ampiezza e numero donda della radiazione disturbante sono indicati con


A1 , k1 ; quelle della radiazione disturbata con A2 , k2 . Indichiamo con:
yi = xi i x0 ;

i = 1, . . . , N ;

(17.26)

lerrore di predizione delluscita del sensore iesimo utilizzando come


predittore il sensore x0 ; perci, imponiamo lortogonalit tra yi e x0 :
E[xi x0 ]
E[|x0 |2 ]

(17.27)

21 ejk1 i + 22 ejk2 i
=
21 + 22

(17.28)

i =
i =
=

ejk1 i + ejk2 i
1+
388

i = 1, . . . , N ;

17.4 STIMA SPETTRALE DI CAPON (MINIMAMENTE POLARIZZATA)

Lerrore di predizione :

yi = B1 ejk1 i ejk2 i

(17.29)

A1 A2
1+
Pertanto, se prima delloperazione di predizione le ampiezze delle due radiazioni erano fortemente dierenti, dopo la predizione, le ampiezze dei
due residui sono eguali, e quindi la polarizzazione spettrale sar ridotta. Sostanzialmente abbiamo realizzato un sistema che ha un guadagno
direzionale con un minimo fortemente pronunciato nella direzione della
radiazione disturbante. Se il sistema adattativo, e quindi le operazioni
di media di insieme sono invece realizzate con delle medie temporali con
un opportuno fattore di oblio, anche se la direzione dellonda disturbante
varia, la direzione del minimo del guadagno dellantenna equivalente al
sistema si sposter opportunamente.
B1 =

17.4

Stima spettrale di Capon (minimamente


polarizzata)

Una generalizzazione del problema precedente viene ottenuta dalla stima


spettrale di Capon; con essa, si cerca il filtro che pur avendo funzione
di trasferimento unitaria al numero donda k0 , abbia in uscita la potenza minima. Quindi, si minimizza il disturbo e perci la polarizzazione
dovuta a tutte le altre sorgenti. La stima spettrale che ne risulta
minimamente polarizzata, ed ha andamento:
SbC (k0 ) =

1
a (k0 ) R1 a (k0 )

dove con a (k0 ) abbiamo indicato lo steering vector o vettore di direzione:

jk

a (k0 ) =

....

j(N1)k0
e
389

CAPITOLO 17 LE DIREZIONI DI ARRIVO

La dimostrazione semplice: si consideri un filtro, dipendente da k0

h0

h1

h (k0 ) =

....

hN
e il risultato {yn } della convoluzione di una sequenza {xn } con questo
filtro. Indicando con xn un vettore che contiene N elementi consecutivi
della sequenza {xn }

xn =

abbiamo

xn

xn1
....

xnN +1

yn = h (k0 ) xn
Indicando con R la matrice di covarianza di xn il valore q.m. di yn :

(17.30)
E yn2 = E [h xn x h] = h Rh

La risposta in frequenza del filtro h :


H (k, k0 ) =

N
X

hn (k0 ) ejkn = a (k) h (k0 )

n=1

La stima spettrale di Capon individua il filtro passabanda h (k0 ) che


minimizza la potenza in uscita (E [yn2 ]) pur rispettando il vincolo
h (k0 ) a (k0 ) = 1
Si ha cio:
h (k0 ) = arg min h Rh ; h (k0 ) a (k0 ) = 1
h

390

(17.31)

17.4 STIMA SPETTRALE DI CAPON (MINIMAMENTE POLARIZZATA)

La funzione di trasferimento del filtro h funzione della pulsazione k, del


numero donda k0 al quale si vuole eettuare la stima della densit spettrale del processo {xn } ed anche del contenuto spettrale della sequenza
alle altre frequenze. La soluzione della (17.31) , come visto nel capitolo
sulla stima lineare ottima nel caso di stima non polarizzata di una segnale
a immerso in un rumore colorato che ha matrice di covarianza R:
h=

R1 a
a R1 a

La risoluzione angolare di questo filtro si pu approssimare con linverso


della sua lunghezza (N) e quindi sostituendo nella (17.30) si ha:
1 1
2
]
R a
N
E
[y
R a
n
SbC (k) =
=
R
= N
1
1
1/N
a R a
a R a
a R1 a

Se il rumore fosse bianco saremmo in pratica di nuovo al caso della stima fatta con il periodogramma (per k0 pu essere qualsiasi e non solo
corrispondente ad un numero intero di cicli su N campioni).
Nel caso di rumore colorato, supponiamo che la matrice R sia circolante, e i suoi autovettori em e autovalori m siano al solito le sinusoidi
campionate che fanno un numero intero di cicli su N campioni e i campioni del periodogramma. Siano poi am,k0 , hm,k0 le componenti lungo gli
autovettori em dello steering vector a (k0 ) alla pulsazione k0 e del filtro
ottimo h (k0 ) per stimare lo spettro alla pulsazione k0 :
am,k0 = a (k0 ) em ;

hm,k0 = h (k0 ) em

(17.32)

Se k0 corrisponde ad un numero intero di cicli su N campioni, a (k0 ) coincide con ek0 ed allora am,k0 = A (m k0 ) . Altrimenti, gli am,k0 sono
diversi da zero, e corrispondono ai lobi laterali ed al lobo principale della
sinusoide dello steering vector a (k0 ), finestrata con una finestra rettangolare, se appunto la sua frequenza non corrisponde ad un numero intero
di cicli nellintervallo N. Il filtro h (k0 ) pesa tutti questi lobi con lo
spettro inverso del segnale:
P am,k0
hm,k0 =

P |am.k0 |2
m

391

(17.33)

CAPITOLO 17 LE DIREZIONI DI ARRIVO

In sostanza, la stima spettrale fatta utilizzando un banco di filtri diversi


per ogni k0 , ottimizzati tenendo conto dello spettro stimato, in modo da
minimizzare gli eetti di polarizzazione. La risoluzione spettrale intermedia tra quella, minima, del periodogramma e quella, massima, della
stima spettrale AR. Potrebbe accadere che un lobo laterale, se capita in
una zona dove lo spettro del segnale totale piccolo, sia pesato anche
di pi del lobo principale. Sarebbe proprio il caso in cui si osserva una
sinusoide finestrata dai lobi laterali e quindi dal buco della serratura!
La stima spettrale di Capon si applica anche al caso in cui la schiera
non regolare (campionamento non uniforme). In questo caso, la tecnica
del periodogramma incontra delle dicolt perch, nel caso di campionamento irregolare, la matrice di covarianza della trasformata di Fourier
non pi diagonale.

392

Capitolo 18
Il segnale vocale
Una delle principali applicazioni del trattamento numerico dei segnali
quella al segnale vocale e cio il segnale generato dalla voce umana. Dopo
una brevissima presentazione dei meccanismi di fonazione e delludito,
tratteremo sia la codifica che la sintesi del segnale vocale; infine si far
anche qualche cenno alla codifica del segnale musicale.
Il segnale vocale viene formato nel tratto vocale (figura 18.1) che va
dalle corde vocali alle labbra. E questo un sistema riverberante, disadattato alluscita (le labbra) ed abbastanza ben adattato allingresso
(le corde vocali). La sagoma del sistema riverberante dipende dalla posizione della bocca e della lingua; il segnale di ingresso generato dalle
corde vocali ed di due tipi: vocalizzato (quando le corde vocali generano
una sequenza di impulsi di energia acustica) e non vocalizzato (quando le
corde vocali generano un fruscio praticamente gaussiano a spettro abbastanza uniforme).La sequenza di impulsi generata durante la formazione
di segnale vocalizzato ha una frequenza di ripetizione che va da circa
100Hz (voce roca, maschi) fino a 250 300Hz (voce melodiosa, bambini). Ogni impulso ha una durata di qualche millisecondo e quindi uno
spettro che si estende fino a 8 10kHz. Il timbro, e cio la frequenza di
emissione di questi impulsi (in inglese, pitch) pu avere valori di significato, ad esempio interrogativo, (se crescente col tempo), o dichiarativo
(se decrescente, p.e. quando si desidera concludere una telefonata).
Gli impulsi traversano il tratto vocale e sono quindi sagomati spettralmente dalla funzione di trasferimento tutti poli corrispondente. Ovviamente, trattandosi di un sistema distribuito e non di una cascata di
tronchi di linea uniformi, non possibile determinare il numero dei poli
393

CAPITOLO 18 IL SEGNALE VOCALE

Figura 18.1: Apparato vocale umano


equivalente al sistema senza fare delle approssimazioni. Tuttavia, se si
osserva che la lunghezza del tratto vocale di circa 20cm e che la velocit
del suono circa 330m/s si deduce che il ritardo totale di propagazione
di circa .6msec. Se ora vogliamo approssimare il meccanismo del parlato
fino a 4kHz la frequenza di campionamento deve essere almeno 8kHz e
pertanto lintervallo di campionamento inferiore a 125 s; quindi il ritardo unitario di ogni cella deve essere inferiore a 62, 5 s ed il numero di
celle contenute nel tratto superiore a 10; infatti, in genere si sceglie di
rappresentare il tratto vocale con 10 celle e quindi con 10 poli.
Al massimo possiamo avere 5 picchi di risonanza, pertanto; in realt
se ne contano, per ogni vocale, da 3 a 4; queste frequenza di risonanza
sono chiamate formanti e la loro posizione caratterizza abbastanza le
394

vocali (vedi Tabella 1); si stia ben attenti a non pensare che distinguere le
vocali porti alla comprensione del parlato; gli inflessi dialettali e numerosi
giochi di societ insegnano il contrario. Infatti, lintelligibilit del parlato
soprattutto legata alle consonanti e cio a transitori tra una vocale (che
pu essere mantenuta per lungo tempo) ed unaltra. In sostanza, le vocali
corrispondono alla portante e le consonanti alla modulante del segnale
acustico corrispondente al parlato.

Tabella I: Frequenze delle formanti dei suoni


vocalici inglesi
Vocale

Frequenza

Frequenza

Frequenza

inglese I formante II formante III formante


but

520

1190

2380

bat

660

1720

2410

feet

270

2290

3010

hot

730

1090

2440

food

440

1020

2240

fought

570

840

2410

foot

300

870

2240

bird

490

1350

1690

bit

390

1990

2550

bet

530

1840

2480

I suoni non vocalizzati sono generati dal fruscio emesso dalle corde vocali quando non generano impulsi (si pensi al parlato sottovoce). Infine,
i suoni consonantici possono essere di vario tipo: le consonanti sibilanti
sono generate dal fruscio emesso dalle corde vocali; ma vi sono consonanti di carattere plosivo (ad esempio b, p, t), corrispondenti a bruschi
transitori del tratto vocale, ecc.
I tono nasali sono generati da interferenze tra emissioni acustiche
attraverso il tratto vocale ed attraverso il setto nasale: quindi non cor395

CAPITOLO 18 IL SEGNALE VOCALE

rispondono a funzioni di trasferimento di soli poli, ma anche con zeri


dovuti al parallelo di due reti tutti poli.

18.1

Tecniche di codifica del segnale vocale

Il segnale vocale pu essere codificato con tecniche di complessit molto


diversa; al limite, si pu pensare ad un sistema di riconoscimento del
segnale vocale, alla trasmissione alfanumerica del testo riconosciuto, e
quindi alla sintesi vocale del testo eettuata in ricezione: questa tecnica,
di massima riduzione di ridondanza, porterebbe ad un ritmo di trasmissione di circa 40 50bit/sec. Il risparmio massimo, senza tuttavia
perdere la riconoscibilit del testo; si perderebbe invece la possibilit di
individuare la personalit e lo stato danimo del parlatore; inoltre, il ritardo dovuto al tempo necessario al riconoscimento certamente maggiore
dei circa 10 msec in genere consentiti. Allestremo opposto, possiamo
pensare ad una codifica trasparente in cui la forma donda del segnale
trasmessa fedelmente al ricevitore : in questo caso, il ritmo di trasmissione pu arrivare a 40 KHz 16 bit/campione = 640 kbit/sec; quindi,
lo stesso segnale pu essere trasmesso con 10.000 volte meno bit, ma
naturalmente con delle perdite. Come vedremo, utilizzando sia i meccanismi di generazione del segnale, sia i meccanismi di percezione auditiva
che rendono impercepibili alcune modifiche al segnale, possibile avere
unottima qualit del segnale vocale con 7 8 kbit/sec ed unottima
percepibilit con 3 4 kbit/sec. Un segnale musicale, molto pi complesso e per cui opportuna una maggiore fedelt, ha bisogno di circa
150200 kbit/sec. Naturalmente, queste cifre sono variabili con il tempo
e con la tecnologia; tuttavia, il costo di trasmissione del timbro e delle
sue variazioni gi di qualche centinaia di bit/sec.

18.2

Codifica delle forme donda

I campioni di un segnale spettralmente colorato quale il segnale vocale


sono correlati tra loro; quindi sono almeno parzialmente predicibili ed
conveniente trasmettere non il segnale ma lerrore di predizione. La
convenienza non sta per nello sbiancamento, che non comporta alcuna riduzione della frequenza di campionamento. Essa nasce dal fatto
396

18.2 CODIFICA DELLE FORME DONDA

che nel caso pi frequente di segnale vocalizzato, lerrore di predizione


(approssimativamente il segnale di ingresso generato dalle corde vocali)
una forma donda costituita da impulsi ripetuti, con molti campioni
pressoch nulli, e che pu essere descritta e trasmessa parsimoniosamente
con un numero ridottissimo di parametri (ad esempio ampiezza, intervallo tra impulsi, e magari anche la forma donda dellimpulso, ripetitiva
ma lentamente variabile con il tempo).
La possibilit di una codifica eciente del segnale vocale nasce quindi
dalla non gaussianit del processo stocastico corrispondente al segnale
vocalizzato. Peraltro, i segnali non vocalizzati di durata abbastanza lunga corrispondono sostanzialmente a fruscii: essi sono abbastanza gaussiani, ma in compenso non serve una loro accurata descrizione, in quanto
basta trasmetterne lo spettro di potenza piuttosto che la forma donda.
In questo caso, la forma donda del segnale ricostruito non sar aatto
identica o simile a quella del segnale trasmesso, ma sar incorrelata con
esso avendo in comune solo densit di probabilit e spettro di potenza.
La tecnica di codifica del segnale pi diusa (LPC, Linear Predictive
Coding) si fonda appunto sulla trasmissione periodica dei parametri del
tratto vocale (ad esempio, i 10 coecienti di riflessione) ed inoltre dei
parametri degli impulsi generati dalle corde vocali del parlatore. Tuttavia, a titolo introduttivo, si discuteranno le due tecniche di codifica della forma donda pi semplici, la Modulazione Delta e lADPCM
(Adaptive Dierential Pulse Code Modulation).

18.2.1

La Modulazione Delta

Il modo pi elementare per sfruttare la dipendenza statistica dei successivi campioni di un segnale quello di codificarne le dierenze; nella
Modulazione Delta questa codifica viene fatta con un solo bit, che quindi
comunica se il campione successivo maggiore o minore di quello precedente. In conseguenza viene aggiornato un contatore per permettere il
successivo confronto (vedi figura 18.2). Il segnale di ingresso potrebbe
anche essere analogico: in questo caso il sistema funzionerebbe anche da
convertitore analogico - numerico. Il disturbo creato dalla Modulazione
Delta ridotto se i campioni successivi sono fortemente correlati e cio
se lo spettro del segnale passa - basso. Il disturbo di due tipi:
rumore di granularit (idle noise o rumore di inattivit);
rumore di inseguimento (slope overload).
397

CAPITOLO 18 IL SEGNALE VOCALE

sn

s$n

Contatore up-down

Figura 18.2: Modulatore delta


Supponiamo che il quanto a addizionato o sottratto al segnale per
larrivo di un nuovo bit sia piccolo. Negli intervalli di tempo in cui il segnale varia poco, la trasmissione fedele; tuttavia se c una variazione
a gradino di ampiezza Ma, il sistema avr bisogno di M passi per recuperare questa dierenza (fig. 18.3). La pendenza massima descrivibile
dal segnale ricostruito |a|/T ; se vi sono pendenze maggiori, siamo nella
condizione di inseguimento, il sistema va in sovraccarico di pendenza
(in inglese slope overload) e nascono delle dierenze anche grandi. Se
invece il quanto a abbastanza grande, la pendenza massima sar sufficiente, ma ne nascer una sorta di errore di quantizzazione (errore di
granularit). In funzione dello spettro del segnale e della frequenza di
campionamento vi un valore ottimale per il quanto; se il segnale non
stazionario, tuttavia, opportuno rendere la Modulazione Delta adattativa variando il quanto p.e. con la regola di accrescerlo di un fattore P
se due bit successivi hanno lo stesso segno (situazione di inseguimento)
e di ridurlo di un fattore Q se invece hanno segni opposti (situazione di
inattivit). Si riesce ad ottenere un sistema eciente se le permanenze di
segno sono probabili come le variazioni: dopo n passi, dovendo il quanto
avere circa lo stesso valore, ed essendo la variazione totale di ampiezza:
P n/2 Qn/2 = (P Q)n/2 = 1

(18.1)

risulta:
PQ = 1
Agendo in questo modo, si possono avere al limite quanti di ampiezza
troppo grande o troppo piccola; per limitare questa escursione si pu
398

18.2 CODIFICA DELLE FORME DONDA

sn

s$n
a

T
t

sn

s$n

Figura 18.3: Funzionamento della modulazione delta e risposta al gradino


adottare la tecnica nota come CVSD (Continuously Variable Slope Delta)
dove la regola di aggiornamento del quanto la seguente:
an = an1 + Di ; i = 1, 2 ; D1 >> D2 ; 0 < < 1

(18.2)

In condizione di inseguimento (bit successivi eguali) lindice i = 1, in


condizione di inattivit (bit successivi diversi) i = 2. Con un ingresso
costante, dopo un numero grande di campioni, si arriva ad avere un
quanto di ampiezza minima:
amin =

D2
1

Invece in situazioni di inseguimento prolungate, il quanto cresce fino al


valore massimo:
D1
amax =
1
Se ' 1 laggiornamento del quanto lento; per progettare il sistema,
si sceglie anzitutto il valore per e quindi D1 , D2 in funzione dei valori
399

CAPITOLO 18 IL SEGNALE VOCALE

desiderati per i quanti minimo e massimo. Si vede ora un problema che


pesa sui segnali codificati; essi sono molto vulnerabili agli errori di canale:
infatti, se per qualche motivo un bit viene decodificato in modo errato, da
quel momento in poi il ricevitore decodificherebbe in modo errato tutti
i segnali ricevuti; questo mostra che necessario prevedere dei periodici
riassestamenti, ad esempio trasmettendo alcuni campioni non in modo
dierenziale.

18.2.2

LADPCM

La modulazione Delta il caso pi semplice di tutta una serie di codificatori dierenziali: il sistema pu essere migliorato in vari modi:
predire meglio il prossimo campione, piuttosto che utilizzare un semplice mantenitore come nella Modulazione Delta;
usare un quantizzatore dierenziale pi duttile, con un numero di livelli di restituzione pari a 2m con m = 3, 4 ed inoltre con una caratteristica
di quantizzazione non uniforme;
rendere adattativo il sistema, con tecniche di predizione lineare adattativa, quali quelle viste al capitolo corrispondente. Lo schema a blocchi
del sistema DPCM (Dierential Pulse Code Modulator) presentato in
figura 18.4. La dierenza tra la migliore predizione lineare del prossimo
campione ed il campione eettivo viene quantizzata con un quantizzatore non uniforme; lerrore di predizione, quantizzato, aggiorna il segnale
predetto e aggiorna la base dati per le future predizioni. Un punto importante che il quantizzatore non uniforme ma ha una caratteristica di
quantizzazione come in figura 18.5. Quando lingresso del quantizzatore
grande (forte errore di predizione) lerrore di quantizzazione sar anche
grande; questo corrisponde per ad un momento di minore sensibilit
percettiva e pertanto lecacia buona. Il vantaggio di un quantizzatore
non uniforme soprattutto evidente per densit di probabilit non uniformi, quale quella dellerrore di predizione del DPCM, molto vicina ad
una Laplaciana, e cio del tipo:
x0
p(x) = e|x|/x0
(18.3)
2
Panter e Dite (1951) hanno dimostrato che lerrore quadratico medio
dovuto alla quantizzazione si minimizza se i quanti sono approssimativamente proporzionali allinverso della radice cubica della densit di probabilit: in questo caso risulta anche che i contributi di tutti i livelli al
400

18.2 CODIFICA DELLE FORME DONDA


Quantizzatore
n,q

sn

n,q

s$n

Predittore

+
+

Figura 18.4: Schema a blocchi del DPCM (Dierential Pulse Code


Modulator)
valore q.m. dellerrore di quantizzazione totale sono circa eguali. In altre
parole, i livelli esterni corrispondenti ai valori maggiori della variabile x,
sono s interessati pi di rado dal quantizzatore, ma contribuiscono con
errori maggiori allerrore totale, bilanciando la rarit. In conclusione,
nel caso del DPCM, gli intervalli di quantizzazione crescono in modo
approssimativamente esponenziale. Sia il predittore che il quantizzatore
possono essere resi adattativi ed in questo caso il sistema viene indicato
con il nome di ADPCM (Adaptive DPCM).
Codificatori ADPCM sono normalizzati ed utilizzati ad esempio con
ritmo di informazione di 32 kbits/sec con un risparmio di un fattore 2
rispetto al consueto 64 kbit/sec del PCM (Pulse Code Modulation). In
entrambi i casi la frequenza di campionamento 8 KHz; con il PCM, in
questo caso, i campioni vengono trasmessi indipendentemente, usando 8
bit/campione. La caratteristica di quantizzazione usuale del PCM di
tipo logaritmico, ed assegna 5 bit alla mantissa e 3 alla caratteristica.

18.2.3

La codifica lineare predittiva

Una tecnica molto usata per al codifica del segnale vocale quella della
codifica lineare predittiva; il segnale campionato a 8 KHz viene seg401

CAPITOLO 18 IL SEGNALE VOCALE

Figura 18.5: Quantizzatore non uniforme a passi crescenti. I livelli di


restituzione sono posizionati in modo da minimizzare lerrore massimo

mentato in spezzoni della durata di circa 100 campioni (12, 5msec, un


intervallo di tempo pari circa a quello del timbro). Per ognuno di questi
intervalli viene fatta unanalisi spettrale AR del segnale e vengono determinati 10 coecienti di riflessione, che vengono trasmessi al ricevitore.
Lerrore di predizione corrispondente alluscita del filtro tutti zeri caratterizzato da quei coecienti di riflessione viene poi anchesso codificato e
trasmesso. Esistono numerose versioni del codificatore e le metodologie
di codifica sia dei coecienti di riflessione che dellerrore di predizione
cambiano con il tipo di codificatore. Facciamo una breve valutazione del
ritmo di informazione necessario: assegnando 4 bit/coeciente di riflessione e 10 bit sia per lampiezza che per la frequenza del timbro, si arriva
ad un totale di 60 103 : 12.5 = 4800 bits/sec. Inoltre servono segnali
per comunicare la situazione vocalizzata/non vocalizzata ecc. Si vede
che anche per una versione semplificata del codificatore, sono richiesti
comunque circa 5 kbit/sec. Esistono numerose possibilit per codificare
i coecienti di riflessione; abbiamo gi fatto uso della loro resistenza al
rumore di quantizzazione indicando la scarsa sensitivit dei filtri a traliccio alla quantizzazione dei coecienti. Si pu fare meglio utilizzando le
LSP (Line Spectral Pairs) e cio le coppie di righe spettrali. Chiudendo
il sistema riverberante corrispondente al tratto vocale su un undicesimo
402

18.3 LA CODIFICA DEL SEGNALE MUSICALE (MP3)

coeciente di riflessione c11 = 1 abbiamo diversi eetti:


a) i poli del sistema si portano tutti sul cerchio unitario, visto che il
sistema disadattato dalle due parti, e non c perdita di energia;
b) i poli che risultano con il coeciente c11 = 1 si alternano con
quelli corrispondenti a c11 = 1.
E quindi possibile codificare le 10 distanze lungo il semicerchio unitario (e quindi dierenze di frequenze) che separano i poli delluno e
dellaltro tipo. In questa maniera si riesce ad ottenere il massimo dellecienza nella rappresentazione del tratto vocale. Inoltre, invece di
trasmettere ad ogni intervallo di tempo di circa 12, 5 msec questa informazione, si possono trasmettere solo le variazioni di queste posizioni,
quantizzate con tecniche ADP CM . Infine, lerrore di predizione relativo
a 100 campioni pu venire trasmesso scegliendo il pi adatto tra numerosi
vettori casuali, ancora di 100 campioni, memorizzati sia in trasmissione
che in ricezione. Usando tecniche di questo tipo (CELP; Codebook Excited Linear Prediction) e ritmi di trasmissione di circa 8 kbit/sec, la
qualit suciente.

18.3

La codifica del segnale musicale (MP3)

Il segnale musicale ha banda di circa 20 kHz e natura molto pi complessa del segnale vocale; se per questultimo sono i meccanismi di generazione a dare lo spunto alle tecniche di codifica, nel caso del segnale
musicale ci non possibile; si ricorre allora alle carattistiche del processo uditivo ed in particolare al fenomeno del mascheramento. Se in
un segnale presente un forte tono ad una frequenza f0 , il rumore che
disturba le componenti alle frequenze f > f0 molto poco percepibile
dallorecchio umano. In sostanza, se appare un tono ad una certa frequenza f0 , la banda di segnale che si estende per qualche centinaio di Hz
prima e per circa 1KHz poi percepita peggio. Le tecniche di codifica
ne profittano (Jayant, N. et al.; Signal compression based on models of
human perception, Proc. IEEE, Vol. 81, 10, Oct. 1993 1385 - 1422).
Descriveremo brevemente ora due famiglie di tecniche di codifica utilizzate per il segnale musicale. Con esse si riduce il ritmo di trasmissione
di un fattore fino a 8, ma solo con quasi impercepibili perdite di qualit.
In un primo gruppo di metodologie, il segnale viene suddiviso in frequenza in sottobande con un banco ad esempio di 32 filtri polifase di
403

CAPITOLO 18 IL SEGNALE VOCALE

Figura 18.6: Leetto di mascheramento (da Noll, P.; MPEG digital


audio coding, Signal Processing Magazine, IEEE Volume 14, 5, Sept.
1997 pp:59 - 81
larghezza di banda anche non uniforme (le sottobande possono avere
larghezza progressivamente crescente con la frequenza, da qualche centinaio di Hz a qualche KHz (fig. 18.6). I segnali in ogni sottobanda sono
campionati alla frequenza minima e le componenti che sono equivocate a
causa dellimperfezione dei filtri polifase utilizzati sono poi cancellate dalla ricostruzione, come visto a suo tempo. I filtri usati sono in quadratura
a specchio, lunghi 24 campioni, ed hanno unattenuazione di 60 dB in
banda oscura. Le sottobande possono poi essere ancora suddivise in 18 o
36 sotto sotto bande, per sfruttare al meglio il meccanismo di mascheramento. Se ci sono dei transitori (colpi di tamburo, uso del triangolo) si
usano filtri meno selettivi per evitare eco anticipatorie.
Dopo il sottocampionamento, i segnali sono quantizzati con tecniche
ADPCM. Il predittore usato per lADPCM pu avere 2 poli e 6 zeri
ed adattativo nel tempo, anche allindietro, visto che sono accettabili
ritardi fino a 3msec. Il numero di bit per campione (e quindi il ritmo
di trasmissione necessario per ogni sottobanda) determinato, per ogni
intervallo di tempo di durata di circa 10 msec, proprio sulla base della
percettibilit del rumore di quantizzazione. Viene fatta cio unanalisi
spettrale (non parametrica) del segnale, viene trovata la frequenza a cui
404

18.4 CENNI AL RICONOSCIMENTO DEL PARLATO

il segnale ha potenza massima e viene ridotto il numero di bit assegnato


a tutte le sottobande al di sopra di questa o per un certo intervallo di
frequenza. Poich lanalizzatore spettrale utilizzato ha una risoluzione in
frequenza ben maggiore di 32 (usa una sequenza di circa 1024 campioni)
pu accadere che la riduzione della quantizzazione preceda, nel tempo,
lattacco del suono che causa il mascheramento. Questo causa delle pre
- eco percepibili che vanno previste ed eliminate con metodi opportuni
(mascheramento temporale). (H. G. Musmann: Genesis of the MP3
Audio Coding Standard, Consumer Electronics, IEEE Tr. Volume 52, 3,
Aug. 2006 pp:1043 - 1049).
In questo modo si riesce a rendere molto meno percettibile il rumore di
codifica, malgrado il notevole risparmio di bit; una buona codifica riesce
ad avere dei risultati eccellenti con ritmi dellordine di 150 200kbit/sec,
molto al di sotto del ritmo corrispondente al Compact Disk (44KHz
16bit 2(Stereo) = 1, 408Mbit/sec). Si raggiungono pertanto fattori di
riduzione dellordine di 8, simili a quelli ottenuti per il segnale vocale.
Esistono poi delle tecniche alternative, perfettamente duali, basate
sulluso della MDCT (Modified Discrete Cosine Transform), vista brevemente nel capitolo dei filtri polifase. Il segnale viene segmentato nei tempi con finestre temporali parzialmente sovrapposte. Il contenuto di ogni
finestra viene poi trasformato con una trasformazione simile alla trasformazione di Fourier discreta (una versione tutta reale nota come Modified
Discrete Cosine Transform, MDCT). Le componenti della trasformata,
(alle varie frequenze), vengono quantizzate con un numero di bit variabile
da frequenza a frequenza in funzione del mascheramento e della sensibilit
percettiva. Il campionamento in frequenza della MDCT crea un rumore
di equivocazione temporale, che per viene cancellato nella fase di ricomposizione del segnale da un rumore eguale ed opposto proveniente dallo
stesso ripiegamento che avviene nella finestra successiva. Come si vede,
le tecniche sono duali e quindi anche equivalenti nei risultati.

18.4

Cenni al riconoscimento del parlato

Le tecniche di riconoscimento del parlato non sono ancora completamente


mature, ma comunque possibile fare un cenno.
Le prime tecniche utilizzate cercavano di analizzare levoluzione delle
formanti, per riconoscere in qualche modo le vocali pronunziate dal parla405

CAPITOLO 18 IL SEGNALE VOCALE

tore. Tuttavia, si visto come queste tecniche fossero abbastanza fragili;


si allora cercato di studiare levoluzione temporale dei coecienti di
riflessione ma per fare ci necessario:
individuare inizio e fine di ogni parola pronunciata;
infatti, il riconoscimento del parlato continuo molto pi dicile del
riconoscimento fatto parola per parola.
fare uno stiramento dinamico dellasse temporale per compensare effetti di variazione della velocit di fonazione da parlatore a parlatore;
ogni parola viene confrontata con ogni altra parola del vocabolario; le
due parole a confronto sono stirate in modo da avere unevoluzione temporale quanto possibile parallela. Infine, si cerca la parola pi simile
alla parola pronunciata. Successivamente, la storia del vettore di 10 elementi corrispondente alle LSP confrontata con quella di altre parole
imagazzinate in memoria, fino al riconoscimento.

406

Capitolo 19
Segnali bidimensionali
19.1

Le singolarit a 2D

Il passaggio da una a due dimensioni non comporta gravi dicolt per


il trattamento dei segnali, a parte i costi computazionali e la memoria
occupata, che cresce notevolmente. Dal punto di vista algoritmico, vi
sono alcuni elementi innovativi, che cercheremo di riassumere; tratteremo inizialmente i sistemi continui. La prima dierenza significativa tra i
sistemi 2D e quelli 1D nelle singolarit: mentre nei sistemi 1D lunica
singolarit era limpulso, ora troviamo sia spilli e cio impulsi bidimensionali veri e propri, sia lame e cio segnali impulsivi in una dimensione,
ma continui nellaltra. Evidentemente, le singolarit a lama non hanno corrispondenza a 1D. Consideriamo un generico segnale a 2D f (x, y):
esso pu essere separabile e cio
f (x, y) = a(x) b(y)

(19.1)

Si vedr poi che si pu sempre rappresentare un segnale qualsiasi come:


f (x, y) =

+
X
i=0

ai (x) bi (y)

(19.2)

e quindi la separabilit un caso particolare od unapprossimazione. Una


semplice singolarit a lama un caso particolare di segnale separabile:
f1 (x, y) = a1 (x) (y)
407

(19.3)

CAPITOLO 19 SEGNALI BIDIMENSIONALI

Questa una lama diretta lungo lasse delle x e di altezza variabile a1 (x);
similmente possiamo pensare a singolarit a lama disposte in altro modo
nel piano.
La grande dierenza tra i sistemi 2D e quelli 1D nasce dal fatto che in
2D la rapidit del transitorio pu dipendere dalla direzione del moto sulla
superficie; si trova sempre un sentiero per salire su una montagna anche
se si sfiorano degli abissi. Oppure, usando unespressione proverbiale,
solo se si va sul filo di un rasoio possibile evitare violenti e indesiderati
transitori. Una singolarit a spillo il prodotto di due singolarit a lama:
(x, y) = (x) (y)

(19.4)

Da queste definizioni si vede subito che moltiplicare per una lama e integrare a 2D equivale a fare un integrale di linea; invece moltiplicando per
uno spillo e ancora integrando a 2D, si preleva il valore della funzione,
come accade con le singolarit 1D:
Z + Z +
Z +
f (x, y)a1 (x)(y)dxdy =
f (x, 0)a1 (x)dx
(19.5)

+ Z

f (x, y)(x, y)dxdy = f (0, 0)

(19.6)

Bisogna stare attenti ai fattori di scala delle variabili di cui le (.) sono
funzione. Infatti con semplici sostituzioni di variabili, si vede che:
Z + Z +
f (0, 0)
f (x, y)(x, y)dxdy =
(19.7)

In 2D ancora, risulta che lo spillo che nasce dallincrocio di due singolarit a lama, dipende anche dallangolo che esse formano tra loro:
Z + Z +
f (x, y)[(x cos 0 +y sin 0 ), (x cos 1 +y sin 1 )]dxdy =
I=

(19.8)

f (0, 0)
f (, )(, )dd =
sin |1 0 |

La formula precedente ottenibile con un cambiamento di coordinate


2D, in cui lelemento darea del nuovo sistema e ottenuto da quello vecchio moltiplicando per lo Jacobiano J (determinante della matrice di
408

19.1 LE SINGOLARIT A 2D

trasformazione di coordinate, locale) della trasformazione di coordinate.


Ricordiamo qui che per un sistema di due funzioni in due variabili, come
nel caso di una trasformazione di coordinate a 2D
= (x, y)
= (x, y)
lo Jacobiano della trasformazione :

J = x y

x
y

(, )
=
(x, y)

La formula pu apparire poco comprensibile, ma basta pensare alla superfice (p.e. in m2 ) che viene coperta se le due nuove coordinate crescono
rispettivamente di , . Per esempio, nel caso di passaggio da trasformazione di coordinate da cartesiane a polari, la superficie coperta incrementando le nuove variabili (lontano dal centro le aree fabbricabili costano meno). Infatti, il valore dello Jacobiano dipendente dalle
coordinate:
x = cos ; y = sin
dx = d cos sin d; dy = d sin + cos d

x x

cos

sin

(x, y)

=
|Jcp | =
=

(, ) y y sin
cos

|Jcp | = (cos2 + sin2 ) = =

e pertanto gli elementi di area sono:

p
x2 + y 2

dxdy dd

f (x, y)dxdy =

f (, ) || dd

indicando in modo poco corretto ma intuibile:


f (, ) = f (x = cos , y = sin )
409

CAPITOLO 19 SEGNALI BIDIMENSIONALI

Nel caso della trasformazione inversa da coordinate cartesiane a polari si


ha:
p
= x2 + y 2
y
= arctan
x

|Jpc | = x y


x
y

x
y

1
1
x2 +y2
x2 +y2

|Jpc | =
=
=

x
|| |Jcp |
y
x2 +y2

x2 +y2

Nel caso dellincrocio di due lame, si ha invece che lo Jacobiano della


trasformazione di coordinate che porta gli assi coordinati sulle due lame
una costante:
= (x cos 0 + y sin 0 ); = (x cos 1 + y sin 1 );

(, )
= | sin(0 1 )|
dd = |J| dxdy; |J| =
(x, y)

La motivazione di questo fattore resa intuitiva pensando a due lame, di


spessore finito e di altezza h, che si intersecano; il volume del prisma di
base rombica, loro intersezione e quindi costruito sullarea coperta con l
incremento delle due variabili, pari a 2 h sin |1 0 | e cresce se le due
lame tendono ad essere parallele (fig. 19.1). Unimportante applicazione
delle singolarit impulsive 2D (a spillo), la decomposizione di un segnale
2D in somma di impulsi:
Z + Z +
f (x, y) =
f (, )(x , y )dd

19.2

Sistemi lineari 2D

Un sistema caratterizzato da un ingresso ed unuscita; se il sistema lineare, vale la sovrapposizione degli eetti e visto che possiamo decomporre
lingresso in somma di funzioni anche luscita sar decomponibile nella
410

19.2 SISTEMI LINEARI 2D


z
| 1 0 |

Figura 19.1: Intersezione di due lame di spessore finito


somma delle risposte a quelle funzioni. Consideriamo il caso dellimpulso, posizionato in x0 , y0 ; in generale, la risposta del sistema dipendente
dalla posizione dellimpulso di ingresso h(x, y; x0 , y0 ) Risulta allora, che
se allingresso di questo sistema vi la funzione f (x, y) luscita :
Z + Z +
f (, )h(x, y; , )dd
(19.9)
g(x, y) =

In generale i sistemi saranno spazio - varianti e cio la risposta allimpulso


dipender dalla posizione dellimpulso stesso; per fare un esempio banale,
il suono generato battendo una lastra metallica non uniforme dipende
dalla posizione del punto di percussione. Se invece il sistema spazio
invariante allora la formula precedente si semplifica perch:

g(x, y) =

h(x, y; x0 , y0 ) = h(x x0 , y y0 )

(19.10)

f (, )h(x , y )dd = f (x, y) h(x, y)

(19.11)
Questo lintegrale di convoluzione a 2D che indicheremo con il
segno .La convoluzione di una funzione ed uno spillo centrato nel punto
di coordinate x0 , y0 la stessa funzione traslata dallorigine nel punto
di coordinate x0 , y0 ; la convoluzione di due lame finite ortogonali un
411

CAPITOLO 19 SEGNALI BIDIMENSIONALI

prisma rettangolare (fig. 19.5); la convoluzione di due sinc un sinc2D


(fig. 19.2).

Figura 19.2: Risultato della convoluzione di due lame a forma di sinc.

19.2.1

Le funzioni cilindriche

Una funzione 2D che dipende solo da una variabile detta una funzione
cilindrica: ad esempio:
f2 (x, y) = b(x cos y sin )

f1 (x, y) = a(x);

(19.12)

La funzione f1 (x, y) costante nella direzione y, che definiamo come


direzione di cilindricit; similmente la funzione f2 (x, y) ha come direzione
di cilindricit la retta che forma langolo con lasse delle y. Convolvendo
una funzione qualsiasi con una funzione cilindrica si ottiene ancora una
funzione cilindrica, con la stessa direzione di cilindricit:
Z + Z +
g(x) =
f (, )h(x )dd =
(19.13)
=

+ Z

f (, )d

h(x )d =
412

p()h(x )d

19.3 LE SINUSOIDI 2D

Indicheremo con:

p() =

f (, )d

(19.14)

la proiezione della f (x, y) lungo lasse y, direzione di cilindricit della h(x). Ovviamente, pu essere qualsiasi lazimut di cilindricit (e
cio langolo con lasse x della direzione lungo cui la funzione f (x, y)
costante).

19.3

Le sinusoidi 2D

Nei sistemi 1D, convolvendo qualsiasi funzione per una sinusoide complessa, otteniamo ancora una sinusoide isofrequenziale, ma di diversa
ampiezza complessa. In 2D, avviene la stessa cosa con le funzioni complesse:
s(x, y) = ej(ux+vy)
(19.15)
Infatti:
g(x, y) =
j(ux+vy)

=e

+ Z +

F (u, v) =

f (, )ej[(u(x)+v(y)] dd =

f (, )ej(u)+v) dd = ej(ux+vy) F (u, v)


+

f (, )ej(u+v) dd

(19.16)

La funzione F (u, v) la trasformata di Fourier 2D della funzione f (x, y)


e d la nuova fase ed ampiezza della sinusoide 2D alluscita del sistema.
E interessante capire la forma di queste sinusoidi 2D: per fare questo
passiamo da coordinate cartesiane a coordinate polari:
x = cos ; y = sin ; u = cos ; v = sin
p

y
v
= u2 + v 2 ; = tan1
= x2 + y 2 ; = tan1
x
u
s(x, y) = ej(ux+vy) ;

s0 (, ) = ej cos ()

(19.17)

La funzione s0 (, ) un sinusoide di numero donda (pulsazione spaziale)


cos ( ) ed quindi costante nella direzione = +/2 (le sinusoidi
413

CAPITOLO 19 SEGNALI BIDIMENSIONALI

2D sono quindi funzioni separabili cilindriche, con direzione di cilindricit + /2) ed ha invece la pulsazione massima nella direzione ;
sostanzialmente come un cartone ondulato; uniforme nella direzione
+ /2, ondulata nella direzione (fig. 19.3).

Figura 19.3: Sinusoide 2D (tettoia ondulata).

19.4

Lantitrasformazione di Fourier 2D

Come un impulso ideale 1D somma delle sinusoidi a tutte le frequenze


di ampiezza unitaria e fase zero, cos un impulso 2D somma di tutte le
sinusoidi 2D a tutti i numeri donda, con fase nulla ed ampiezza costante.
Infatti:
Z +
Z +
1
1
jux
(x, y) = (x)(y) =
e du
ejvy dv =
(19.18)
2
2
Z + Z +
1
= 2
ej(ux+vy) dudv
4
Combinando la formula di composizione con la formula di trasformazione,
se ne deduce la formula di antitrasformazione a 2D:
Z + Z +
f (, )(x , y )dd =
(19.19)
f (x, y) =

414

19.4 LANTITRASFORMAZIONE DI FOURIER 2D

1
42

+ Z +

f (, )ej[u(x)+v(y)] dddudv =

+ Z +

1
F (u, v)ej(ux+vy) dudv
4 2
Le formule di trasformazione sono utili anche in coordinate polari:
Z + Z +
1
F (, )ej cos() dd
(19.20)
f (, ) = 2
4 0

dove stato inserito lo Jacobiano della trasformazione da coordinate


cartesiane a polari, . Nel caso dellimpulso ideale, esso lantitrasformata di una costante e pertanto si ha:
Z + Z +
1
() = 2
ej( cos() dd
(19.21)
4 0

Questultima formula pu anche essere interpretata osservando che per


comporre un impulso ideale, per ogni numero donda serve un certo numero di sinusoidi spaziali, componenti, che siano uniformemente
distribuite su tutti gli azimut ; questo numero di sinusoidi cresce proporzionalmente ad cos da garantire una densit uniforme delle sinusoidi nel piano.

19.4.1

Funzioni a simmetria circolare

Se la funzione da trasformare a simmetria circolare, lo sar anche la


trasformata, e viceversa. In questo caso la trasformazione si semplifica e
diventa:
Z + Z +
1
f () = 2
F ()ej( cos() dd =
(19.22)
4 0

Z +

Z +
1
1
j( cos()
F ()
e
d d =
2 0
2
Z +
1
=
F ()J0 ()d
2 0
dove la parentesi stata sostituita con il suo valore e cio la funzione di
Bessel di ordine 0, J0 (). La trasformazione 1D corrispondente allequazione precedente viene indicata come trasformata di Hankel. Segue
ora unutile tabella di trasformate a simmetria circolare.
415

CAPITOLO 19 SEGNALI BIDIMENSIONALI

Dominio spazi

F requenze spaziali

1
a2 +2

1 2a
e

1
(a2 +2 )3/2

2 2a
e
a

ea

2a
(a2 +42 2 )3/2

ea

2
a2 +4 2 2

()
2

2 e

2 f ()

d2 F

d2

2
2 e

1 dF
d

= O2 F

Da: Bracewell (1999) The Fourier Transform and its applications,


McGraw Hill.

La circonferenza ( 0 ) , ha per antitrasformata di Hankel la


funzione J0 (0 ) che pu apparire simile ad un impulso ideale filtrato
passa basso con un filtro ideale a simmetria circolare. Limpulso filtrato
passa basso ha trasformata:

1
2

J0 ()d =

0 J1 (0 )
2

(19.23)

Non ci si lasci ingannare: la convergenza a zero delle funzioni Jm (x) (vedi le figure che seguono)
416

19.4 LANTITRASFORMAZIONE DI FOURIER 2D

0.75

0.5

0.25

0
0

10

15

20
x

-0.25

La funzione di Bessel J0 (x) .


y

0.5

0.375

0.25

0.125

0
0

10

15

20
x

La funzione di Bessel J1 (x) /x


per x , m intero, solo come
Jm (x)

2
m
cos x

|x|
2
4

e quindi un qualsiasi reticolo regolare di impulsi convoluti con J0 (0 )


si impasta e sparisce o cambia drasticamente forma. Non cos nel caso
della 19.23. La cosa si pu vedere anche nel dominio delle frequenze:
convolvere con un un reticolo regolare di impulsi equivale (come vedremo
nel prossimo capitolo) a moltiplicare per un reticolo regolare di impulsi
nelle frequenze spaziali. Questo reticolo, se moltiplicato per la circonferenza ( 0 ), trasformata della J0 , si annulla ovunque, tranne al
pi in qualche posizione particolare.
417

CAPITOLO 19 SEGNALI BIDIMENSIONALI

19.5

Propriet della trasformazione

Riepiloghiamo alcune delle propriet della trasformata di Fourier 2D, estensioni di quella 1D; indichiamo rispettivamente con f (x, y) la funzione
nel dominio degli spazi e F (u, v) la sua trasformata:
f (x, y) F (u, v)

(19.24)

u v
1
F ( , );
(19.25)

f (x, y)
f (x, y)
juF (u, v);
jvF (u, v);
x
y
2 f (x, y)
uvF (u, v)
(19.26)
xy
Al solito, le relazioni di derivazione nascono da unintegrazione per parti.
Se f (x, y) reale:
F (u, v) = F (u, v)
(19.27)
f (x, y)

f (, + ) F (, + )

La relazione di Parseval diventa:


Z + Z +
Z + Z +
1
2
|f (x, y)| dxdy = 2
|F (u, v)|2 dudv
4

(19.28)

(19.29)

Se abbiamo unequazione dierenziale alle derivate parziali, definita su


tutto lo spazio (le condizioni al contorno sono allinfinito), essa corrisponde alla seguente equazione algebrica sulla trasformata:
I,H
I,H
X
X
i h f (x, y)

(ju)i (jv)h F (u, v)


i y h
x
i,h=0
i,h=0

19.5.1

(19.30)

Funzioni cilindriche e separabili

La trasformata di Fourier di un impulso 2D posizionato in x0 , y0 il piano


di fase:
(x x0 , y y0 ) ej(ux0 +vy0 )
(19.31)

Una cosinusoide ha invece trasformata:


1
cos(u0 x+v0 y+) [ej (uu0 , vv0 )+e+j (u+u0 , v+v0 )] (19.32)
2
418

19.5 PROPRIET DELLA TRASFORMAZIONE

h(x,y) = h(x) = rect(x)


y

x
F {h(x,y)} = H(u)(v)

Figura 19.4: Trasformata di Fourier di una funzione cilindrica


La trasformata di Fourier di una funzione cilindrica una lama nella variabile coniugata alla variabile lungo cui la funzione cilindrica uniforme:
ad esempio:
Z + Z +
h(x, y) = h(x)
h(x)ej(ux+vy) dxdy = H(u)(v) (19.33)

La superficie cilindrica h(x) costante nella direzione y e quindi nel


dominio coniugato troviamo una funzione impulsiva in quella direzione
(lama allungata lungo le u). Una lama uniforme, caso particolare di
funzione cilindrica, ha per trasformata unaltra lama uniforme disposta
lungo la coniugata della variabile ortogonale (una lama lungo le x ha
come trasformata una lama lungo le v). La trasformata di una somma di
due lame ortogonali quindi ancora una somma di due lame ortogonali.
Ancora, una stella di lame sar eguale alla sua trasformata (a meno di una
rotazione di /2). La somma di infinite lame, come si vedr al capitolo
sulla tomografia, una funzione del tipo 1/ ed ha come trasformata la
stessa funzione 1/.
419

CAPITOLO 19 SEGNALI BIDIMENSIONALI

Una funzione separabile, prodotto di due funzioni 1D, ha come trasformata 2D il prodotto delle due trasformate 1D.

19.6

Filtri ideali 2D

I filtri ideali a 2D hanno una funzione di trasferimento unitaria in alcune zone del dominio u, v e nulla altrove. A dierenza che ad 1D, la
forma del filtro potr cambiare. Il caso semplice quello del filtro a base
rettangolare e cio:

F (u, v) = 1; |u|, |v| <


(19.34)

F (u, v) = 0; |u|, |v| >

Questo un filtro separabile: infatti ottenibile come la cascata di due


filtri passa basso ideali cilindrici in u, v successivamente (fig. 19.5). Un

Figura 19.5: Trasformata 2D del sinc


filtro solo nelle u ha funzione di trasferimento a lama lungo le x e quindi
ritroviamo il risultato gi visto che:
1 sin(x/) sin(y/)
F (u, v) f (x, y) = 2
(19.35)
(x/) (y/)
Esiste per anche il filtro ideale circolare e cio:
J1 (0 )
H() = 1; < 0 ; h() = 0
(19.36)

Dove J1 (.) la funzione di Bessel di ordine 1 (fig. 19.6).


420

19.7 FILTRI A VENTAGLIO

Figura 19.6: Il cilindro, trasformata 2D della funzione di Bessel di ordine


1

19.7

Filtri a ventaglio

Un altro tipo di filtri ideali inesistenti a 1D sono i filtri a ventaglio (fig.


19.7) e cio filtri nulli in un settore angolare ed unitari altrove. Con
v

H(u,v) =1

H(u,v) =0

H(u,v) =0
H(u,v) =1

Figura 19.7: Funzione di trasferimento del filtro quadrantale


una cascata di rotazioni e scalamenti un qualsiasi filtro a ventaglio
trasformabile in un filtro quadrantale, nullo nel II e IV quadrante ed
unitario altrove. Infatti, basta prima ruotare il filtro a ventaglio in modo
che lasse della zona passa sia ad esempio lasse x. Poi, si scala lasse
y in modo che il settore angolare copra un angolo pari a /2 ed infine lo
si ruota di /4 per portare il filtro a coincidere con il I e III quadrante.
421

CAPITOLO 19 SEGNALI BIDIMENSIONALI

Questo filtro ha per funzione di trasferimento la somma di due funzioni


separabili (fig. 19.8:
H(u, v) = 1; uv > 0;

H(u, v) = 0;

uv < 0

1
H(u, v) = [1 + sign(u) sign(v)] h(x, y)
2

1
1
1
h(x, y) =
(0, 0)

2
x y

Figura 19.8: Risposta impulsiva del filtro quadrantale

422

(19.37)
(19.38)
(19.39)

Capitolo 20
Filtri 2D di natura fisica
Per formare unintuizione dei meccanismi del filtraggio 2D, mostreremo
ora come diversi fenomeni fisici possano essere interpretati come filtraggi lineari; in particolare ci riferiremo a delle equazioni dierenziali alle
derivate parziali ellittiche, iperboliche e paraboliche che origineranno funzioni di trasferimento a fase zero, di pura fase, e miste. Lo studente interessato invitato a osservare le antitrasformate dei vari filtri qui derivati
utilizzando ad esempio MAT LAB T M .

20.1

Lequazione dei potenziali

Si consideri il seguente problema fisico tridimensionale: nel sottosuolo (il


semispazio z < 0) vi siano dei corpi di densit dierente da quella del
materiale che li circonda. Inoltre il semispazio z > 0 vuoto (trascuriamo la densit delatmosfera; fig. 20.1). Per determinare la posizione e
grandezza dei corpi disomogenei, si vuole determinare landamento del
potenziale gravitazionale f (x, y, z) a livello del terreno, e cio per z = 0.
Se il terreno poco praticabile, perch vi sono boschi, paludi ecc. pi
agevole misurare il potenziale ad una certa quota z0 , per esempio con misure eliportate, o aeroportate. Poi, si cercher un algoritmo (un filtraggio
lineare) per calcolare f (x, y, z = 0) a partire da f (x, y, z0 ) (continuazione
in basso di un campo gravitazionale). La funzione potenziale f (x, y, z)
in zone prive di sorgenti soddisfa lequazione armonica e cio:
2f 2f 2f
+
+ 2 =0
x2 y 2
z
423

(20.1)

CAPITOLO 20 FILTRI 2D DI NATURA FISICA

z
z=z0

z=0

x
=0

=1

Figura 20.1: Modello di semispazio con materiali a densit diversi


Si desidera appunto, conosciuta f (x, y, z0 ); x, y trovare f (x, y, z = 0); x, y
e viceversa (continuazione in alto). Poich la funzione f (x, y, z0 ) conosciuta per tutti i valori della x e della y, possiamo trasformare gli elementi
dellequazione (20.1) secondo Fourier e ne risulta lequazione dierenziale
semplice, in cui le variabili u, v coniugate ad x, y, sono dei parametri:
(u2 + v2 )F (u, v, z) +

d2 F (u, v, z)
= 0;
dz 2

F (u, v, z) f (x, y, z)

(20.2)

Lequazione ha la soluzione:
F (u, v, z) = A(u, v)ez + B(u, v)ez

z = z z0 ; = u2 + v 2

(20.3)

Imponiamo B(u, v) = 0 per evitare che la soluzione diverga per z ,


e ne risulta A(u, v) = F (u, v, z0 ); la soluzione :
F (u, v, z) = F (u, v, z0 )ez =
= F (u, v, z0 ) H(u, v, z);

(20.4)

Decomponendo con la trasformazione di Fourier 2D il campo misurato a


quota 0 in sinusoidi 2D, possiamo ottenere il campo misurabile a quota
z0 purch lampiezza di ogni componente (appunto F (u, v, z0 )) sia scalata del fattore ez . In sostanza, la continuazione in basso o in alto
del campo ottenuta filtrando linearmente la funzione potenziale con
424

20.1 LEQUAZIONE DEI POTENZIALI

un filtro 2D a simmetria circolare H(, z) funzione della dierenza di


quote z. Si osservi che la funzione di trasferimento H() a fase zero, come dettato dalla natura del problema. Il filtro passa basso se la
continuazione verso lalto; se ci si allontana dalle sorgenti il potenziale
sempre pi smussato fino ad essere uniforme a distanze molto grandi
rispetto alle dimensioni dei corpi. Se invece ci si avvicina alle sorgenti, il
filtro passa alto e amplifica esponenzialmente le componenti ai numeri
donda pi elevati. Su questo punto torneremo nel prossimo paragrafo,
perch linevitabile presenza di rumore modifica la situazione. Il filtro
passa basso ha la sua antitrasformata:
H(u, v, z) = ez
ez

(x2

y2

u2 +v2

= ez

(20.5)

z
; z 0
+ z 2 )3/2

Non cos il filtro inverso z < 0 che divergente per numeri donda u, v
abbastanza grandi. Utilizziamo questo esempio per mostrare come la
tecnica di stima lineare viene in aiuto anche in questo caso per condurre
a soluzioni significative.

20.1.1

Continuazione in basso e stima lineare

Supponiamo che la misura fm (x, y, z0 ) del potenziale alla quota z0 sia


contaminata da rumore:
fm (x, y, z0 ) = f (x, y, z0 ) + n(x, y)

(20.6)

Vogliamo stimare in modo lineare ottimo f (x, y, z = 0) e sia f(x, y, z = 0)


questa stima. Facciamo la stima nel dominio dei numeri donda, per
semplicit. Trasformando lequazione precedente si ha:
Fm (u, v, z0 ) = F (u, v, 0)ez0 + N(u, v)

(20.7)

F (u, v, 0) = H(u, v)Fm (u, v, z0 )

(20.8)

Vogliamo
E [(H(u, v)Fm (u, v, z0 ) F (u, v, 0)) Fm (u, v, z0 )] = 0
425

(20.9)

CAPITOLO 20 FILTRI 2D DI NATURA FISICA

e cio incorrelazione tra errore di stima e dati.


H(u, v) =

E[F0 Fm ]
; 2N = 42 2N
E[|Fm |2 ] + 2N

(20.10)

dove lintervallo di campionamento spaziale, e 2N , 2N sono rispettivamente la densit spettrale monolatera del rumore ed il suo valore
quadratico medio.
E[|Fm |2 ] = E[|F0 |2 ]e2z0 + 2N ; E[F0 Fm ] = E[|F0 |2 ]ez0
H(u, v) =

ez0
;
e2z0 + Q

Q=

2N
E[|F0 |2 ]

(20.11)

(20.12)

Ai numeri donda per cui Qe2z0 << 1 il filtro operer come filtro inverso
e quindi passa alto; invece se Qe2z0 > 1 il filtro si comporter ancora
come passa basso (figura 20.2).
H( )
e z0

Q aumenta,
il rumore cresce

Figura 20.2: Filtri inversi per la continuazione in basso di potenziali

426

20.2 LA PROPAGAZIONE DI ONDE

20.2

La propagazione di onde

In questo paragrafo discuteremo di un altro problema fisico, che condurr


allo studio di una funzione di trasferimento a fase pura. Il problema
quello della propagazione di onde in spazio libero: ad esempio le onde
superficiali su un lago, oppure le onde acustiche nello spazio. Lequazione
che governa la propagazione
2 f (x, y, z) 2 f (x, y, z) 2 f (x, y, z)
1 2 f (x, y, z)
+
+
=
x2
y 2
z 2
c2
t2

(20.13)

dove c la velocit di propagazione delle onde. Anzitutto, eliminiamo la


variabile z supponendo che vi sia uniformit in quella direzione e pertanto
2 f (x, y, z)
=0
z 2

(20.14)

Si desidera ora, noto ad esempio f (x, y, t = 0); x, y trovare f (x, y, t); x, y


e quindi levoluzione temporale di un campo donde, in assenza di sorgenti, a partire da delle condizioni iniziali. Un altro problema che risolveremo
(al prossimo paragrafo) quello del telerilevamento e cio:
determinare f (x, y, t); x, y, t dato: f (x, y = 0, t); x, t
Come gi fatto nel caso precedente, trasformiamo lequazione nelle variabili note su tutto il dominio, da . Poich, nel primo caso dello
studio dellevoluzione temporale di un campo donde, la funzione nota
per tutti i valori della x e della y, possiamo trasformare in Fourier per
quelle variabili e risulta lequazione dierenziale semplice:
(u2 +v2 )F (u, v, t)+

1 d2 F (u, v, t)
= 0; F (u, v, t) f (x, y, t) (20.15)
c2
dt2

F (u, v, t) = A(u, v)ejct + B(u, v)ejct

(20.16)

La soluzione somma di due termini che corrispondono rispettivamente


alle onde che esplodono ed implodono. In particolare, la risposta allimpulso corrispondente alle onde che esplodono e cio si allontanano dalla
sorgente sar:
(20.17)
F0 (u, v, t) = ejct
427

CAPITOLO 20 FILTRI 2D DI NATURA FISICA

Figura 20.3: Sezione di unonda circolare bidimensionale (p.e. un cerchio


sullacqua)
la cui antitrasformata (figura 20.3):
ct
f (x, y, t) = p
3;
c2 t2 y 2 x2

x2 + y 2 c2 t2

(20.18)

Questa risposta allimpulso corrisponde p.e. a dei cerchi nellacqua


t secondi dopo avere lanciato un sasso in uno stagno; pi precisamente,
si pu pensare ad un tuono, dopo un lampo (una sorgente rettilinea di
perturbazione, di lunghezza praticamente illimitata in una direzione, che
indichiamo con z). La perturbazione generata contenuta in un cerchio
di raggio ct nel caso del sasso nello stagno o in un cilindro di raggio ct
diretto come z nel caso del lampo. Si osservi poi che vi e dierenza
nella risposta ad uneccitazione impulsiva nei casi 2D e 3D. Infatti, nel
caso 3D la propagazione dellonda generata da un impulso puntiforme
avviene lungo un fronte sferico, e la perturbazione non permane, dopo
che sia passato il primo fronte darrivo. Si pensi ora al caso 2D, nel
caso della sorgente di perturbazione rettilinea; il piano di osservazione
del fenomeno ottenuto sezionando lo spazio 3D ortogonalmente allasse
z, direzione della linea delle sorgenti. Disponendo un ricevitore in questo
piano, e applicando la sovrapposizione degli eetti, si comprende che
questo ricevitore misurer anzitutto larrivo delle perturbazione dovuta
428

20.2 LA PROPAGAZIONE DI ONDE

alla zona di sorgente situata nel piano. Successivamente, il ricevitore


misurer anche gli arrivi generati dalle zone della sorgente lineare situate
al difuori del piano che contiene il ricevitore (si pensi p.e. al brontolio
del tuono). Quindi la forma del segnale che corrisponde al transitorio
del passaggio dellonda impulsiva in un sistema 2D non una muraglia
cilindrica, anche se il segnale si concentra intorno ad essa.

20.2.1

Il problema del telerilevamento

Il problema che ora abbiamo il seguente: supponiamo p.e. di assistere


alla rappresentazione di unopera lirica; possiamo disporre dei microfoni
lungo il bordo del palcoscenico (lasse x, y = 0) e vogliamo combinare le loro uscite in modo da potere isolare la voce di qualsiasi cantante
(le sorgenti s1 , s2 ), come se disponessimo di un microfono in un punto qualsiasi della scena (x, y 6= 0) (fig. 20.4). Questo problema corrisponde al rilevamento e alla focalizzazione da lontano del segnale generato in un punto qualsiasi dello spazio. Supponendo che il campionamento
spaziale (lungo il palcoscenico) e temporale sia fittissimo, misuriamo la
funzione f (x, y = 0, t); x, t ; cerchiamo f (x, y, t); x, y, t. Lequazione
che utilizzeremo ancora quella della propagazione:
(u2

2
d2 F (u, y, )
)F
(u,
y,
)
+
= 0;
c2
dy 2

(20.19)

ma ora abbiamo trasformato le variabili x, t; le variabili coniugate sono


u, . Risolviamo lequazione dierenziale e troviamo il risultato desiderato e cio che:
jy

F (u, y, ) = A(u, )e

2
u2
c2

jy

+ B(u, )e

2
u2
c2

(20.20)

Di nuovo, le due soluzioni corrispondono ad onde che si avvicinano o si


allontanano dallasse y = 0 (il proscenio): per il problema che vogliamo
risolvere, scegliamo le onde che si avvicinano e quindi anticipi per y
crescenti.
q
2 2
j y
1 u 2c
c

F (u, y, ) = F (u, y = 0, )e
(20.21)
Trovata F (u, y, ), la funzione cercata f (x, y, t) sar ottenuta con una
antitrasformazione di Fourier 2D.

q
2 2
j y
1 u 2c
1
c

f (x, y, t) = f (x, y = 0, t) F T
e
429

CAPITOLO 20 FILTRI 2D DI NATURA FISICA

Basta cio convolvere la funzione f (x, y, t) con un filtro opportuno, dipendente dalla variabile y.
S2
S1
x

schiera di sensori

Figura 20.4: Disposizione di microfoni su un palcoscenico per isolare i


suoni emessi dai singoli cantanti

20.2.2

Le onde piane

Il filtro dellequazione precedente ha unespressione complicata, che tuttavia pu essere spiegata introducendo il concetto delle onde piane, gi
implicitamente utilizzato nel capitolo sulle Direzioni di Arrivo (DOA).
Nel dominio x, t le sinusoidi bidimensionali sono segnali del tipo:
s(x, t) = Aej(kx+t)

(20.22)

Come gi visto nel capitolo 12 questi segnali corrispondono ad onde


monocromatiche di ampiezza complessa A e di pulsazione , i cui fronti
donda sono delle rette nel piano x, y che formano un angolo con lasse
delle ascisse x. Infatti, due punti a distanza 2/k lungo lasse delle x,
oscillano in fase e pertanto sono separati da un tempo di propagazione
= 2/; si ha allora:
2
2
sin = c
= c ;
k

r
k2 c2
kc
sin = ; cos = 1 2

430

(20.23)

20.2 LA PROPAGAZIONE DI ONDE

Si osservi che se:

2

|k| > =
(20.24)
c

langolo diventa una variabile immaginaria; le onde non si propagano


pi, ma diventano evanescenti. Per capire questo fenomeno, basti pensare
a pi sorgenti puntiformi monocromatiche (a frequenza ) disposte lungo
lasse x a distanza e irradianti insieme; inoltre, la fase dellnesima
sorgente ruotata di ejkn . Se la diseguaglianza (20.24) rispettata, il
campo emesso non rappresentabile come unonda piana che fa un angolo
con lasse x; le varie sorgenti interferiscono tra loro in modo distruttivo
e il campo si riduce progressivamente (in modo esponenziale) via via che
ci si allontana dallasse x. Nel caso semplice in cui = 0, siamo di nuovo
al caso dellelettrostatica o della gravit. Infatti nellequazione 20.13 la
derivata rispetto al tempo nulla, non c propagazione, e siamo di nuovo
allequazione armonica.
Ritornando al problema del paragrafo precedente, per ricostruire il
campo donda f (x, y, t) in posizioni y 6= 0 a partire da f (x, y = 0, t) si
pu farne anzitutto una decomposizione in onde piane. Questa uninterpretazione della trasformazione di Fourier della f (x, y = 0, t); le ampiezze
delle onde piane a pulsazione k, sono appunto i valori F (k, y = 0, ).
Ogni onda piana si propaga in avanti o allindietro nello spazio senza variazioni di ampiezza, ma subendo solo uno sfasamento. Essa quindi pu
venire retropropagata nello spazio (e/o nel tempo) fino alla posizione della sorgente applicando una rotazione di fase che dipende dalla pulsazione
e dalla distanza y di cui deve essere retropropagata. La rotazione :
y cos
c

(20.25)

Quindi per ricostruire il campo allascissa y basta retropropagare le onde


sfasandole del fattore:
j

j y
cos
c

=e

j y
c

=e

2 c2
2

1 k

(20.26)

come risulta anche dalla figura 20.5; la combinazione di tutte le onde


piane dopo la loro retropropagazione ci d la distribuzione delle sorgenti
nello spazio e pertanto limmagine cercata.
Lantitrasformata della funzione
jy

2
k2
c2

431

(20.27)

CAPITOLO 20 FILTRI 2D DI NATURA FISICA


y

2/v

cT

2/u

x
T= 1/f = 2/

Figura 20.5: Retropropagazione di onde piane


ha la forma presentata in figura 20.6; essa corrisponde a quanto viene
osservato lungo la retta y = 0 in corrispondenza di un impulso (una
sorgente esplosiva) al tempo ed alla posizione x = 0, t = 0, y; il primo
arrivo dellonda allascissa x si ha al tempo:
p
x2 + y 2
t(x) =
(20.28)
c
Quindi, nel piano x, t questi arrivi sono disposti lungo uniperbole di
equazione:
(20.29)
x2 c2 t2 = y 2 = c2 t20
Disponendo ora della funzione f (x, y = 0, t) possiamo ora determinare
la funzione f (x, y, t = 0) e cio intuitivamente, determinare dalle onde
che arrivano alla spiaggia la distribuzione delle sorgenti in alto mare
oppure potere appendere un microfono al collo di Pavarotti, malgrado che tutti i microfoni siano sul proscenio. Per fare questo partiamo
dallequazione (20.21)
Z Z
F (k, y = 0, ) =
f (x, y = 0, t)ej(kx+t) dtdx
f (x, y, t) =

Z Z

jy

F (k, y = 0, )e
432

2
k2 +jkx+jt
c2

dkd
(2)2

20.2 LA PROPAGAZIONE DI ONDE

Figura 20.6: Liperbole corrispondente ai tempi di arrivo di un segnale impulsivo ai vari microfoni sul palcoscenico; sono visibili eetti di
periodicizzazione dellasse delle ascisse dovute alluso di DFT
(Il microfono al collo di Pavarotti). Ancora si ha:
Z Z
q
2
jy 2 k2 +jkx dkd
c
f (x, y, t = 0) =
F (k, y = 0, ) e
(2)2

(20.30)

(Questo corrisponderebbe alla distribuzione delle posizioni, al largo, dove


sono stati lanciati sassi al tempo 0, determinata sulla base delle onde che
arrivano sulla spiaggia). Per ottenere, invece dellespressione complessa
(20.30), una semplice antitrasformata di Fourier 2D, basta eettuare la
seguente trasformazione di coordinate:
r

2
2cvdv
2 = v = c k 2 + v 2 ; d =

k
2
c
k2 + v2
Z Z

2cv
dkdv
2
2
f (x, y, t = 0) =
F k, y = 0, = c k + v ej(vy+kx)
2
2
k + v (2)2
433

CAPITOLO 20 FILTRI 2D DI NATURA FISICA


y=0
x=0

y c re sc en te

Figura 20.7: Iperboli dei tempi di arrivo ottenute con il principio della
fase stazionaria
In altri termini, data la F (k, y = 0, ), la si interpola nei punti ki , l corrispondenti
ai valori di ki , vl richiesti dal campionamento eettuato in queste due
coordinate, e la si antitrasforma (Interpolazione di Stolt).

20.3

Il principio della fase stazionaria

Se si hanno delle complicate antitrasformazioni da compiere, utile il


principio della fase stazionaria. Consideriamo un integrale di Fourier del
tipo:
Z
A(x, )ejMG(x,) d
(20.31)
Q(x) =

dove M un numero grande; se la fase dellesponenziale scorre rapidamente lintegrale (una media) avr valore assai basso; gli unici valori
della variabile x per i quali lintegrale assume valori significativi si hanno
quando la fase stazionaria e cio quando:
G(x, )
=0

434

(20.32)

20.4 IL CHIRP, LA LENTE SOTTILE E LOTTICA DI FOURIER

Ovviamente, pu anche essere una variabile multideimensionale. Ad


esempio, nel caso dellantitrasformata di Fourier:
Z Z
q
u2 c2
1
j y
e c 1 2 +ux+t dud
(20.33)
2
4
risulta:
G = t0

u2 c2
+ ux + t
2

G(x, t; u, )
t0
=
+t=0

2 u2 c2

G(x, t; u, )
t0
uc2 + x = 0
= 2
2
2
u
u c
Da cui, eliminando , u:
x 2
t2 = t20
c

(20.34)
(20.35)
(20.36)

(20.37)

si trova appunto la (20.29). In sostanza, lantitrasformata nulla ovunque,


a parte dove la 20.37 verificata, e cio lungo liperbole. Il principio della
fase stazionaria si applica se t0 >> 1 e quindi se i raggi percorrono un
numero elevato di lunghezze donda e pertanto non siamo in condizione
di campo vicino.

20.4

Il chirp, la lente sottile e lottica di


Fourier

Un altro caso di interesse quello del chirp bidimensionale. Il nome chirp


viene dal cinguettio di un uccello in cui la frequenza del suono emesso
cresce progressivamente. Il chirp nel tempo quindi corrispondente ad
un segnale caratterizzato da una frequenza crescente linearmente con
il tempo e quindi da una fase crescente quadraticamente con il tempo.
La sua trasformata ancora un chirp; si ricorda infatti la coppia di
trasformate (vedi al capitolo 9):

t2

c (t) = exp j 2 C (f ) = exp j 2 f 2 j

4
435

CAPITOLO 20 FILTRI 2D DI NATURA FISICA

Il chirp spaziale bidimensionale corrisponde ad una frequenza spaziale


crescente linearmente con lo spazio e quindi ad una fase crescente quadraticamente con la distanza dallorigine.
h () =

exp(j (x2 + y 2 ) /4 2 )
exp(jx2 /4 2 ) exp(jy 2 /4 2 )

(20.38)
=
2 2
2
2

Si verifica subito che anche la funzione di trasferimento H () un chirp


bidimensionale. Infatti, la trasformata immediatamente trovata, visto
che le variabili sono in questo caso separabili, e si ritrova
un chirp questa

volta nello frequenza spaziale. Posto al solito = u2 + v2 , a parte una


costante complessa:

H () = exp j 2 u2 exp j 2 v 2 = exp(j 2 2 )


(20.39)
Linteresse per il chirp nasce dal fatto che la convoluzione con un chirp
approssima molto bene una trasformazione di Fourier. Infatti, operando
ad 1D per semplicit, si ha che il risultato della convoluzione con il chirp
di una funzione f (t) che ha per trasformata F () la funzione g (t) (che
ha trasformata G ()):
Z
2 2
d
g (t) = F () ej ( +t)
2

Calcoliamo g (t) con la tecnica della fase stazionaria. Poich si ha stazionariet della fase quando:
2 0 2 + t0 = 0 t0 = 2 0 2
si trova, a meno di un fattore di proporzionalit ,

t0
g (t0 ) ' F 0 = 2
2

(20.40)

In altre parole, la funzione g (t) circa proporzionale alla trasformata di


Fourier della f (t) .
Per una comprensione intuitiva di questo meccanismo, si pensi al chirp
come alla successiva trascrizione in ununica forma donda complessiva
delle N sinusoidi finestrate di una trasformazione di Fourier di sequenze lunghe N campioni, cominciando da quella a frequenza di Nyquist
436

20.4 IL CHIRP, LA LENTE SOTTILE E LOTTICA DI FOURIER

Figura 20.8: Lente sottile: nel piano focale si forma la traformata di


Fourier bidimensionale della funzione di illuminazione d () .
negativa, passando per quella a frequenza zero, per finire a quella a frequenza di Nyquist positiva. La lunghezza totale sarebbe di N 2 campioni.
Potremo individuare la frequenza di una nuova sinusoide convolvendola
con questo chirp lungo e poi trovando il tempo a cui la convoluzione
massima. Decimando il risultato della convoluzione di un fattore N, e
prendendone il modulo, si otterr circa il periodogramma, ma trascritto
in una sequenza di valori. La risoluzione in frequenza crescer con N.
Ovviamente, nel caso del chirp, la frequenza cambia con continuit invece
che a gradini, come nella trascrizione del periodogramma.
Vediamo ora come il caso del chirp si applica alla focalizzazione con
delle lenti sottili ed alla formazione delle immagini nel loro piano focale
(vedi figura 20.8). Indichiamo con d () la funzione di illuminazione e cio
lampiezza complessa dellonda elettromagnetica luminosa sullapertura
della lente. Leetto della lente quello di sfasare il segnale in arrivo di
una fase pari a:
2
exp j
;
c 2f
dove al solito la pulsazione dellonda, c la velocit della luce, f la
distanza focale della lente. Per chi non ricordasse lottica geometrica,
437

CAPITOLO 20 FILTRI 2D DI NATURA FISICA

notiamo che:

1
=
f

c c1
c1

1
1

R1 R2

dove R1 , R2 , sono i raggi di curvatura (con i segni relativi) delle due


facce della lente e c1 la velocit della luce nella lente (piu bassa). Il
segnale irraggiato dalla lente, misurato in un piano parallelo alla lente e
distante z da essa , per sovrapposizione degli eetti:
"

!#
Z
(x )2

jk 2
exp jk z +
d ; k =
d () exp
m (x) =
2f
2z
c
apertura
(20.41)
Lo sfasamento additivo:
"

!#
(x )2
exp jk z +
2z
tiene conto (con unapprossimazione del secondo ordine) dello sfasamento
dovuto alla propagazione dal punto di ascissa sulla lente a quello di
ascissa x a distanza z dalla lente. Quindi:

2
Z
2
1 1
x

j kxz jkz
m (x) = e

+
d
d () exp jk
2 f
z
z
apertura
(20.42)
e se z = f :

Z
2
x
j kx
jkf
f
m (x) = e
d
(20.43)
d () exp jk
f
apertura
Nel piano focale della lente quindi, troviamo la trasformata
del
di Fourier
kx2
la funzione di illuminazione a meno del fattore di fase exp j f jkf .
Se poi loggetto (la funzione di illuminazione) posizionato nellaltro fuoco della lente, questo fattore di fase si cancella. I due piani focali sono
gli unici tra cui la trasformazione di Fourier avviene avviene senza sfocamento. Ancora, ad ogni direzione di arrivo bidimensionale sulla lente
(ogni pulsazione spaziale delle onde piane in cui si decompone la funzione
di illuminazione sulla lente) corrisponde un preciso punto del piano focale (vedi figura 20.8) dove lenergia proveniente da questa direzione si
concentra. Limmagine che si forma nel piano focale corrisponde quindi
438

20.4 IL CHIRP, LA LENTE SOTTILE E LOTTICA DI FOURIER

Figura 20.9: Tecniche di filtraggio ottico: il segnale depositato sulla trasparenza nel primo fuoco della lente L1 ed il filtro su unaltra
trasparenza nel secondo fuoco della lente L1 che coincide con il primo
fuoco della lente L2. Il segnale filtrato appare nellimmagine nel secondo
fuoco della lente L2.
appunto alla distribuzione dellenergia che proviene dalle varie direzioni.
Se si osserva solo questa energia, come nel caso dellocchio o di un telescopio, lerrore di fase di cui nellequazione 20.43 irrilevante. In ogni
modo, la tecnica di analisi spettrale che viene implicitamente utilizzata nella visione quindi quella del periodogramma, come peraltro gi
osservato in occasione della discussione delle DOA.
La disponibilit di una trasformata di Fourier 2D (o anche 1D, basta mettere delle lenti cilindriche invece che sferiche) in tempo reale ha
portato a realizzare filtraggi spaziali con tecniche ottiche; basta mettere
limmagine da trasformare nel primo piano focale di una lente L1, la sagoma del filtro nellaltro piano focale della lente L1 che poi coincide con il
primo piano focale di una seconda lente L2 (fig. 20.9). Il segnale filtrato
osservabile nel secondo piano focale della lente L2. I primi sistemi radar
ad apertura sintetica utilizzavano proprio questo metodo per eettuare
una focalizzazione sia pure approssimativa, ma in tempo reale, del segnale registrato. Questa tecnica appare oggi obsoleta, vista lespansione
delle metodologie numeriche di trattamento, ma potrebbe rinascere in
qualsiasi momento, visto il continuo evolversi delle tecnologie e la grande
potenza di calcolo che potrebbe garantire.
439

CAPITOLO 20 FILTRI 2D DI NATURA FISICA

20.5

Lequazione della diusione

Il quarto caso che prenderemo in considerazione quello dellequazione


della diusione, ad esempio termica; essa governa levoluzione temporale
della temperatura T (x, y, t) di una piastra indefinita che ha conducibilit
termica uniforme c.
2 T (x, y, t) 2 T (x, y, t)
T (x, y, t)
+
=c
2
2
x
y
t

(20.44)

Supponiamo anzitutto di conoscere la temperatura della piastra al tempo


t = 0; x, y e di volerne determinare
levoluzione. Trasformiamo nelle
variabili x, y ponendo, al solito = u2 + v2 :
2 T (, T ) = c

dT (, t)
dt

T (u, v, t) = T (u, v, 0) e

(20.45)
2 t
c

(20.46)
2 t

Si osservi che il valore della funzione di trasferimento e c per = 0,


unitario ed indipendente dal tempo. Passando alle variabili x, y :
T (x, y, t) = T (x, y, 0)

c 2 c
e 4t
4t

(20.47)

La temperatura iniziale quindi convoluta per un filtro gaussiano di volume costante (la quantit di calore posseduta inizialmente
dalla piastra

rimane invariata) e invece diametro crescente con t: leetto della


diusione termica.
Un secondo problema quello dellosservazione della temperatura
lungo la linea y = 0, T (x, y = 0, t), t e poi la determinazione della
T (x, y, t); y > 0. Trasformando questa volta in x, t si ha:
(u2 + jc) T (u, y, ) =

d2 T (u, y, )
dy 2

(20.48)

Risolvendo lequazione dierenziale ed eliminando la soluzione divergente


per y abbiamo:
2
(20.49)
T (u, y, ) = T (u, y = 0, ) ey u +jc
440

20.5 LEQUAZIONE DELLA DIFFUSIONE

Nei tempi - spazi ci corrisponde a:


2
y
4tc
T (x, y, t) = T (x, y = 0, t)

e
2 (t/c)3/2

(20.50)

Si osservi che il flusso di calore dalla superficie verso linterno del corpo non nullo. E interessante anche osservare come lultima equazione
aermi che la temperatura possa variare per valori anche elevati di x, y
anche in tempi molto piccoli. Ci dovuto allimperfezione della descrizione fisica del processo fatta con lequazione (20.44) che trascura il
tempo finito di propagazione delle variazioni termiche.

441

Capitolo 21
Sequenze 2D
Un segnale bidimensionale pu essere campionato con le stesse regole del
campionamento a 1D; in particolare, campionare implica replicarne lo
spettro. Infatti la trasformata del reticolo bidimensionale di impulsi
un reticolo bidimensionale di impulsi nel dominio delle frequenze spaziali
(fig.21.1).
+
X

h,k=
+
X

l=

(x hx0 , y ky0 ) =

(u lu0 )

+
X

m=

+
X

h=

(x hx0 )

(v mv0 ) =

+
X

l,m=

+
X

k=

(y ky0 ) (21.1)

(u lu0 , v mv0 ) (21.2)

2
2
;
v0 =
;
(21.3)
x0
y0
Moltiplicare negli spazi per la funzione impulsiva ripetuta implica convolvere nelle frequenza per la sua trasformata e quindi lo spettro di una
sequenza a due dimensioni periodico sia lungo lasse delle u che delle v.
Per potere campionare pertanto suciente che il segnale sia contenuto
nel rettangolo:
|u0 |
|v0 |
|u| <
;
|v| <
(21.4)
2
2
In eetti basta che le repliche non si sovrappongano; pertanto non necessario che lo spettro stia in un rettangolo; basta che stia in una qualsiasi
figura che replicata su un reticolo rettangolare non si sovrapponga. Ad
esempio possiamo levare da un lato del rettangolo unarea per aggiungerla
u0 =

443

CAPITOLO 21 SEQUENZE 2D
Campionamento bidimensionale
y

x0
y0

v0
u

u0

Figura 21.1: Campionamento bidimensionale


al lato opposto ecc (vedi figura 21.2) In sostanza, a 2D si hanno maggiori
libert.

21.1

Lequivocazione a 2D

Se lo spettro bidimensionale dellimmagine che viene campionata non


contenuto nel dominio fondamentale, le sue repliche rientrano e formano
equivocazione. Nella figura 21.3 vediamo lo spettro relativo a una funzione cilindrica campionata (si pensi a dei filari di alberi); le repliche spettrali che escono ad esempio dal bordo destro della mattonella, rientrano
dal bordo sinistro, formando una configurazione complessa. In sostanza, vediamo i filari degli alberi allinearsi sia secondo le direzioni originali
444

21.1 LEQUIVOCAZIONE A 2D
v

v0

u0

Figura 21.2: Un altro possibile dominio fondamentale per la griglia di


campionamento
che secondo altre direzioni, equivocate, lungo cui appaiono allineamenti
fittizi.

21.1.1

Eetti di moir

Il campionamento 2D di segnali di tipo sinusoidale origina eetti di


equivocazione spaziale abbastanza complessi, cui viene dato in generale
il nome di moir, dal tessuto omonimo che ha un aspetto marezzato.
Consideriamo una sinusoide 2D, complessa:
s(x, y) = A exp (ju0 x + v0 y)
La sinusoide campionata nei punti:
xn = n; ym = m;
ha uno spettro replicato

2
2
u0 + p , v0 + q
S(u, v) = A

p,q=

445

CAPITOLO 21 SEQUENZE 2D

uN

uN

Figura 21.3: Lo spettro di una lama replicato per eetto del


campionamento (orizzontale).
Il dominio spettrale fondamentale
|u, v| <

(21.5)

limitato dalla pulsazione di Nyquist, contiene solo una sinusoide 2D che


coincide con la sinusoide non campionata quando il campionamento
corretto e cio se:

|u0 , v0 | <
(21.6)

Altrimenti, la sinusoide equivocata


ueq , veq = u0 + p

2
2
, v0 + q

dove p, q sono tali da garantire che la (21.6) sia soddisfatta. Si osservi in particolare che lazimut della sinusoide 2D equivocata pu essere
totalmente dierente da quello della sinusoide 2D originale.
Un esempio di moir si ottiene dalla sovrapposizione di due reticoli
leggermente diversi, che risulta p.e. se si guardano controluce due veli
eguali e sovrapposti, poco distanti tra loro. Per eetto della prospettiva,
la trama del velo pi lontano ci appare pi fitta di quella del velo pi
vicino di un fattore pari a D/ (D + d), dove d la distanza tra i veli e
446

21.1 LEQUIVOCAZIONE A 2D

D la distanza che ci separa dal velo pi vicino. Limmagine che vediamo


in trasparenza circa il prodotto dei due reticoli e pertanto lo spettro
del segnale osservato la convoluzione degli spettri. Quindi, se f0 la
frequenza corrispondente alla trama di un velo (supponiamo il processo
monodimensionale, per semplicit), e f0 D/ (D + d) laltra, il battimento
(il prodotto) avr una componente alla frequenza dierenza:
f = f0

d
f0 D
' f0 se d << D
D+d
D

Se il reticolo 2D, vedremo delle frange interferenziali da cui potremmo


ricostruire dei dettagli della struttura microscopica dei reticoli di partenza; p.e. conoscendo d, D, f potremmo determinare f0 anche se ci
fosse impossibile ad occhio nudo. Infine, si osservi che, allontanandosi
dai veli, aumenta il periodo della frangia del moir.

21.1.2

Il campionamento esagonale

Se il segnale da campionare ha spettro circolare, il reticolo di campionamento quadrato ineciente in quanto comporta un dominio fondamentale nelle frequenze spaziali anchesso quadrato, sostanzialmente. Pertanto, sinusoidi
2D nelle direzioni delle diagonali del quadrato possono avere
frequenza 2 volte maggiore che non nelle direzioni dei lati del quadrato stesso. Quindi, a seconda che il quadrato sia iscritto o circoscritto
alla circonferenza che delimita lo spettro, o si deve tagliare lo spettro o
si deve usare un campionamento troppo fitto. E utile cercare tecniche
di campionamento pi isotrope, e cio aventi un dominio fondamentale
pi assomigliante ad un cerchio. Ci si ottiene con il campionamento
esagonale che verr ora presentato. Si consideri un reticolo la cui base
sono dei triangoli equilateri (fig. 21.4); questo reticolo ha 3 direzioni di
simmetria a 120o e quindi pi simmetrico di quello rettangolare che ne
ha due a 90o . Si intuisce come questo reticolo di campionamento possa
essere pi eciente di quello quadrato, per funzioni a spettro circolare.
Indichiamo con a il lato del triangolo; il reticolo a base triangolare pu
essere visto come
la combinazione di due reticoli a base rettangolare di
lati x0 = a, y0 = a 3 rispettivamente; i due reticoli sono sfalsati di mezzo passo lungo le due direzioni. Nel dominio delle frequenze si ha che la
447

CAPITOLO 21 SEQUENZE 2D

a
x

y0

x0

Figura 21.4: Reticolo corrispondente al campionamento esagonale


(dominio degli spazi).
trasformata del doppio reticolo di impulsi :
j(

H(u, v) = [e

ux0
vy
+ 40 )
4

u0 =

j(

+e

ux0
vy
+ 40 )
4

2
2
;
=
x0
a

v0 =

+
X

h,l=

(u hu0 , v lv0 ); (21.7)

2
2
u0
= =
y0
a 3
3

+
X

(u hu0 , v lv0 );
H(u, v) = 2 cos[(h + l) ]
2
h,l=

(21.8)
(21.9)

La combinazione dei due reticoli elimina le repliche per le quali l + h


dispari, e raddoppia lampiezza di quelle per cui l + h pari. La
sagoma del dominio base nelle frequenze quindi un esagono regolare,
448

21.1 LEQUIVOCAZIONE A 2D
u0

v
v0

l+m pari
v
v0
u
2/3u0
Sagoma del dominio base nelle frequenze

Figura 21.5: Reticolo corrispondente al campionamento esagonale


(dominio delle frequenze).
come in figura 21.5. Il rapporto tra la massima frequenza spaziale che non
viene equivocata (nelle direzioni 00 , 600 , 1200 ) e la minima (nelle direzioni
300 , 900 , 1500 )
2
2
u0 : v0 = = 1, 154
(21.10)
3
3

mentre invece per il reticolo quadrato questo rapporto 2. Larea per


ogni
campione l2 nel caso del reticolo quadrato di base l; invece di

a2 3/2 nel caso di reticolo triangolare di


base a; la massima frequenza
non equivocabile 1/2l in un caso e 1/(a 3) nellaltro caso. Eguagliando
questi due valori, e quindi imponendo di non equivocare
questa frequenza
qualsiasi sia il suo azimut, e ponendo quindi a = 2l/ 3, si trova che,
passando da reticolo quadrato a reticolo
esagonale, il numero di campioni

necessario decresce del fattore 2/ 3 = 1, 154.


449

CAPITOLO 21 SEQUENZE 2D

21.2

Il campionamento del segnale televisivo

Nella trasmissione analogica di un segnale televisivo, il campionamento


del volume (x, y, t) che corrisponde alla successione di infinite immagini
a risoluzione spaziale e temporale illimitata avviene nel modo piuttosto
complesso che verr ora descritto.
Le immagini vengono scandite per righe su campi interallacciati. Il
segnale viene cio campionato verticalmente a distanza d; nel sistema
analogico PAL, un quadro formato da 625 linee di cui solo 573 sono
visibili. Le righe dispari, distanti perci tra di loro 2d, sono trasmesse
in successione (semiquadro dispari o campo dispari); poi, con un ritardo
di 20 msec, viene trasmesso il campo pari e quindi le linee di posizione
pari. Dopo ancora 20 msec, si trasmette il campo dispari del quadro 2 e
cos via al ritmo di 25 quadri al secondo (fig.21.6)Il campionamento del
numero riga
9

9
8

7
6
5

5
20 msec

20 msec

t
3

2
1

1
0

Figura 21.6: Campionamento interallacciato del segnale televisivo:


dominio dei tempi
volume perci di tipo esagonale sulla coppia di assi y, t in quanto il
reticolo della distribuzione delle righe (verticale) dei semiquadri dispari
sfalsato rispetto a quello dei semiquadri pari. Invece, lasse x (le righe
del segnale televisivo) non campionato ma viene trasmesso in continuit
nel tempo.
450

21.2 IL CAMPIONAMENTO DEL SEGNALE TELEVISIVO

21.2.1

Equivocazione spazio - temporale

Vediamo ora cosa accade se il segnale non opportunamento prefiltrato


prima del campionamento spazio - temporale menzionato ed anche cosa
accade se vogliamo una ricostruzione del volume x, y, t sopprimendo le
armoniche del pettine di campionamento. Lasse x non campionato ed
trasmesso con continuit; il filtraggio lungo questo asse eettuato automaticamente se non altro dal filtraggio passa basso dovuto alla limitata
banda disponibile a radiofrequenza e pertanto dai filtri che precedono la
modulazione per la trasmissione.
Il segnale lungo le direzioni sia verticale che temporale campionato e quindi dovrebbe subire un filtraggio anti equivocazione prima del
campionamento. Invece, il prefiltraggio lungo la direzione verticale non
avviene aatto se non per quanto dovuto alla dimensione finita del
pennello elettronico che esplora limmagine e che convolve quindi con
un filtro bidimensionale (la distribuzione delle ampiezze della sezione del
pennello) limmagine ripresa. Nel complesso questo filtraggio appare sufficiente, in quanto leetto di moir e cio di conversione in basso di
alte frequenze spaziali verticali abbastanza limitato. Questo eetto
visibile quando unimmagine a righe orizzontali fitte viene campionata
dalla scansione televisiva; per lequivocazione nascono delle inesistenti
striscie di bassa frequenza.
Problemi pi gravi insorgono invece per il campionamento temporale,
decisamente scarso come si vede dalle immagini riprese con la moviola
televisiva. Ad esempio, un calciatore ripreso in due quadri televisivi
successivi occupa posizioni distanti tra di loro di molto pi dellintervallo
tra le righe d. Infatti, se si muove a 10 m/sec in 40 msec ha percorso 40
cm; se la sua immagine occupa ad esempio una cinquantina di righe lungo
la verticale ed uno spazio proporzionale lungo lorizzontale, d corrisponde
a circa 4 cm di spazio (se alto 2 m) e perci si muove di circa 10 pixels
(picture elements) per quadro. La rotazione di fase per quadro delle
componenti alla frequenza corrispondente a quella di Nyquist /d circa
10 e quindi vi equivocazione temporale di tutti i segnali che hanno
una componente di frequenza spaziale maggiore di 1/10d nella direzione
del moto.
Nel fermo immagine non si possono quindi proiettare assieme i due
semiquadri perch corrispondono a due immagini spostate relativamente
di un intervallo ben maggiore della risoluzione spaziale. Si proietta un
451

CAPITOLO 21 SEQUENZE 2D

semiquadro solo, e da questo si interpola laltro semiquadro generando


unimmagine a risoluzione spaziale ridotta alla met nella direzione verticale. Inoltre, la telecamera non pu integrare la luminanza del segnale
televisivo per tutta la durata di un quadro, come si faceva nel passato
per migliorare il rapporto segnale - rumore, ma deve riprendere delle
istantanee per evitare di avere poi delle immagini mosse alla moviola.
Ovviamente, se le immagini fossero sempre proiettate in sequenza al loro
ritmo, il prefiltraggio temporale eettuato con lintegrazione della telecamera sarebbe utile. La possibilit di dovere usare la moviola costringe
ad introdurre del rumore di equivocazione. Peraltro losservatore umano,
che interpreta le immagini in base a dei modelli a priori e non accetta
lipotesi che il calciatore od il pallone cambino eccessivamente di forma tra unimmagine e la successiva, trova pi accettabile il rumore di
equivocazione al prefiltraggio, teoricamente corretto ma praticamente da
respingere.
Da quanto osservato, risulta che il segnale televisivo campionato temporalmente in modo da creare equivocazione e pertanto la ricostruzione dai campioni di un segnale continuo non pu essere fatta
senza commettere errori. Questo problema si pone quando volessimo
interpolare immagini intermedie tra pi quadri successivi per creare un
segnale rallentato o un segnale a frequenza di quadro superiore (ad esempio 100 Hz) per limitare leetto di sfarfallamento (leetto fastidioso dovuto allaccensione periodica di una luce a frequenza al di sotto
della frequenza di taglio del sistema visivo). Ad esempio, tecniche di
interpolazione lineare interpolerebbero il moto di un pallone con delle
dissolvenze tra unimmagine e la successiva che non potrebbero ricreare
limpressione del moto, che rimarrebbe a scatti; infatti nelle immagini
interpolate il pallone scomparirebbe progressivamente da una posizione
per riapparire nellaltra e non apparirebbe mai nelle posizioni intermedie.
Ci possibile solo utilizzando tecniche di interpolazione complesse (a
moto compensato) in cui:
a) si individuano i contorni delloggetto in moto confrontando le
immagini successive;
b) si misura il vettore di moto, si prevede la futura posizione delloggetto, e si ricostruisce limmagine.
Poich linterpolazione a moto compensato dipende dalle immagini
da cui rilevato il moto, si conclude che una tecnica di interpolazione
non lineare.
452

21.2 IL CAMPIONAMENTO DEL SEGNALE TELEVISIVO

21.2.2

Lo spettro del segnale televisivo campionato

Il campionamento spazio temporale sfalsato comporta una particolare


struttura dello spettro del segnale televisivo campionato, descritta in
figura 21.7. Allorigine delle coordinate e disegnato lo spettro spazio v
1/d
A

1/2d

B
B

A
25

f (Hz)

-2/d

fc =50Hz;
fq =25Hz;

Figura 21.7: Campionamento interallacciato del segnale televisivo:


dominio dei numeri donda.
temporale di una sequenza; gli assi sono i numeri donda verticali (asse
verticale) le frequenze temporali (asse orizzontale). I numeri donda orizzontali sarebbero riportati ortogonalmente allasse del foglio, ma non essendo questo asse campionato, non sono riportati aatto, semplificando
la figura. Si pu pensare pertanto che la figura corrisponda ad un segnale
uniforme lungo le righe, variabile da riga a riga e da quadro a quadro.
Anzitutto si osservi che a causa della replica degli spettri, un segnale
uniforme verticalmente (A) si replica (A0 ) alla frequenza fc , frequenza
di campo o o di semiquadro, pari a 2fq , cio il doppio della frequenza
di quadro. Questo eetto motiva linterallacciamento (la proiezione successiva di semiquadri corrispondenti alle righe pari e dispari). Infatti lo
spettro corrispondente ad unimmagine p.e. tutta bianca si replica alla
frequenza di 50 Hz, appena al di l della frequenza di taglio del sistema
visivo umano; leetto di sfarfallamento che sarebbe stato inaccettabile
se le successive immagini fossero state presentate alla frequenza di 25 Hz,
limitato. Similmente, nel cinema, le immagini si susseguono al ritmo di
24 fotogrammi al secondo, ma sono riproiettate due volte sullo schermo.
453

CAPITOLO 21 SEQUENZE 2D

Peraltro, si pu fare di meglio, e lo dimostra la commercializzazione


di sistemi in cui il segnale televisivo ripresentato sullo schermo al ritmo
di 100 Hz, interpolando le immagini intermedie. Linterpolazione viene
fatta preferenzialmente con algoritmi a moto compensato proprio per
evitare gli eetti di equivocazione menzionati in precedenza nel caso della
moviola e dei calciatori.
Un dettaglio verticale mobile (B) si replica, equivocato, nel punto
0
(B ), che circa a frequenza fc . Consideriamo infatti un segnale di alta
risoluzione verticale, una riga bianca in campo nero; se la riga in posizione fissa, non vi sono problemi. Ma se la riga scende di un intervallo di
riga per ogni quadro, sono possibili due casi, (a) viene riprodotta sempre
(in tutti i quadri, e quindi sara vista con energia doppia); (b) non sar
mai visibile; una riga suborizzontale in moto discendente (o ascendente)
sar vista apparire e scomparire in modo casuale (equivocazione spaziotemporale). Questo fenomeno si osserva direttamente, p. e. in occasione
di una partita di tennis, quando le righe del campo (suborizzontali) sono
viste a gradinate ed i gradini tremolano quando la telecamera si muove.
E il solito problema dellequivocazione, visto allinizio del testo per i
sistemi antincendio.
Dalla figura 21.7 si comprende anche come un filtro spazio temporale
per la soppressione degli spettri replicati dovuti al pettine di campionamento debba avere il contorno tratteggiato e quindi il filtro non pu essere
realizzato p.e. con la cascata separabile di filtri spaziali e temporali, che
porterebbe ad un filtraggio a base rettangolare.

21.3

Ricostruzione 2D

Per ricostruire un segnale continuo bidimensionale si deve convolvere la


sequenza dei campioni per la risposta allimpulso di un filtro opportuno;
ad esempio un mantenitore bidimensionale mant(x, y), la cui risposta allimpulso il prisma a base quadrata o linterpolatore bilineare; questultimo corrisponde ad interpolare linearmente il segnale prima lungo le
righe in corrispondenza dei campioni e poi lungo le colonne per tutti i
valori (continui, ora) delle ascisse. Si pu anche fare viceversa, il risultato
sar eguale. La risposta allimpulso dellinterpolatore bilineare quindi
costituita dalla convoluzione di due lame triangolari disposte lungo i due
assi coordinati e larghe 2; si osservi che questa superficie bilin(x, y)
454

21.3 RICOSTRUZIONE 2D

separabile e non una piramide a base quadrata; le superfici dei lati


appartengono infatti ad iperboloidi iperbolici (fig.21.8).
mant(x, y) = 1; |x| , |y| <

|x|
|y|
bilin(x, y) = 1
1
; |x| , |y| <

Le trasformate di Fourier del mantenitore e dellinterpolatore bilineare

Figura 21.8: Linterpolatore bilineare bilin(x, y): i lati della piramide


tenda sono lembi di iperboloidi iperbolici.
sono:
Hm (u, v) = sinc(u)sinc(v); Hl (u, v) = [sinc(u)sinc(v)]2 ;
(21.11)
La piramide egizia (fig 21.9) con la stessa base quadrata dellinterpolatore bilineare non un buon interpolatore perch interpola correttamente lungo le facce ma erratamente lungo gli spigoli; se la base fosse
ancora quadrata ma con i vertici a terra sui quattro campioni adiacenti al
campione assegnato lungo gli assi coordinati, la superficie interpolerebbe
bene lungo gli spigoli e male lungo le facce. Per convincersene, basta pensare che il volume di queste piramidi 42 H/3 o 22 H/3 invece di 2 H;
nel caso di tutti i campioni eguali il volume totale eccederebbe o sarebbe
inferiore a quello corretto. Un interpolatore con facce piane che rispetta i piani (e cio se i campioni sono disposti su un piano, la superficie
455

CAPITOLO 21 SEQUENZE 2D

Figura 21.9: La piramide egizia: un cattivo interpolatore a 2D.


interpolante coincide con il piano) invece la piramide a base esagonale
rappresentata in figura 21.10.Per convincersene basta tracciare una diag-

Figura 21.10: Piramide a base esagonale: un possibile interpolatore


lineare a 2D anisotropo.
onale del quadrato base del reticolo per dividerlo in due triangoli. Una
faccia della superficie interpolante il piano che passa per i tre campioni
posizionati nei vertici del triangolo cui appartiene il punto da interpolare.
Ovviamente, vi sono due possibilit di tracciare la diagonale e quindi due
superfici interpolanti che hanno diversa funzione di trasferimento lungo
le due diagonali.(fig.21.11). Il loro volume quello corretto (si veda per
ulteriori dettagli il paragrafo sulla triangolazione di Delaunay, alla fine
456

21.3 RICOSTRUZIONE 2D

del capitolo).Facendone la media per avere una soluzione pi isotropa,


d
0

Figura 21.11: Linterpolatore a base esagonale visto in pianta; il


comportamento dierente nelle due direzioni a 900 evidente.
si ottiene per la risposta allimpulso la figura 21.12, dove ancora la su-

0.25
0

1
0.25

Figura 21.12: Media di due interpolatori a base esagonale orientati


reciprocamente a 900 .
perficie interpolante ha facce piane, ma i tre punti che definiscono i vari
piani sono i due campioni pi vicini al punto da interpolare ed il campione supplementare posto al centro del quadrato base e la cui ampiezza
la media delle ampiezze dei quattro campioni ai vertici del quadrato
(0,25). Alla fine, abbiamo approssimato linterpolatore bilineare con un
poliedro a 16 facce piane di forma triangolare (fig. 21.13).Infine, una
457

CAPITOLO 21 SEQUENZE 2D

Figura 21.13: Approssimazione dellinterpolatore bilineare con un


interpolatore a facce piane.
tecnica molto usata quella degli splines bicubici: di nuovo si interpola
ad esempio prima lungo la direzione orizzontale, questa volta con un interpolatore a bacchetta elastica; quindi, si interpolano lungo la direzione
verticale, punto per punto, le funzioni gi interpolate, ormai continue
lungo la direzione orizzontale.

21.4

Trasformata di Fourier discreta a 2D

Lestensione a 2D della trasformazione di Fourier discreta semplice: la


periodicit tuttavia ora su due assi invece che su uno e pertanto le
sequenze antitrasformate sono definite su di una superficie torica piuttosto che su un circolo. Questo congruente con quanto osservato per le
trasformate di segnali campionati negli spazi; il campionamento ora sia
negli spazi che nelle frequenze spaziali (numeri d onda). Lespressione
della trasformazione discreta la seguente:
X(h, k) =

M1
X N1
X

mk
xn,m WNnh WM
;

WN = ej2/N

(21.12)

m=0 n=0

Lantitrasformata :
M1 N 1
1 XX
mk
Xh,k WNnh WM
;
x(n, m) =
MN h=0 k=0

458

WM = ej2/M

(21.13)

21.5 FILTRAGGI CON PRODOTTO DI TRASFORMATE

La trasformazione si pu fare in cascata, prima per righe e poi per


colonne:
N 1
!
M1
1 X nh X
mk
x(n, m) =
;
(21.14)
W
Xh,k WM
MN h=0 N
k=0

La quantit in parentesi lantitrasformata di Fourier eettuata per


righe; la trasformata di Fourier 2D avviene quindi prima facendo la
trasformazione per righe e poi per colonne (o viceversa). Il costo in
termini di moltiplicazioni :
C=

21.5

MN
MN
MN
log2 N +
log2 M =
log2 NM
2
2
2

(21.15)

Filtraggi con prodotto di trasformate

Con opportune aggiunte di zeri, in modo che le due funzioni abbiano


eguale supporto e cio siano definite sullo stesso dominio, possibile
farne la convoluzione facendo il prodotto delle trasformate. E opportuno
notare tuttavia che laggiunta di zeri pi costosa a 2D che a 1D; infatti
se un filtro ha un supporto M M ed il segnale N N , per eliminare
gli eetti della periodicit, si devono aggiungere circa 2NM + M 2 zeri,
e cio in proporzione circa il doppio che a 1D. In altre parole, il costo
del zero padding cresciuto con la dimensionalit dei dati. Il costo del
filtraggio di una sequenza N N sar
2N 2 (2

1 + log2 N
)
2

(21.16)

tenendo conto delle trasformate per righe e colonne, delle antitrasformate


e del prodotto tra le trasformate per il filtraggio.

21.6

Filtri 2D

Il teorema fondamentale dellalgebra non si estende a 2 dimensioni; vero


che il prodotto di due polinomi in 2 variabili la convoluzione bidimensionale dei loro coecienti, ma non vero che un polinomio in 2 variabili
sempre decomponibile nel prodotto di polinomi di grado minore.Quindi
lutilit della trasformata z a due dimensioni minore perch non si estende a 2D il concetto di zeri e quindi di poli e cio sequenze semplici
459

CAPITOLO 21 SEQUENZE 2D

in cui possono venire decomposte le sequenze pi complesse. Pertanto il


filtraggio 2D prevalentemente realizzato con tecniche di prodotto delle
trasformate di Fourier discrete oppure come convoluzione 2D con opportune sequenze, p.e. trovate finestrando le antitrasformate delle funzioni
di trasferimento desiderate. E invece utile ricorrere al concetto di separabilit per trasformare un problema 2D nella cascata di 2k problemi
1D, approssimando la sequenza 2D come:
hm,n =

K
X

uk,m vk,n

(21.17)

k=1

Aggiungendo zeri, si pu sempre far corrispondere la sequenza hm,n ad


una matrice quadrata; questa matrice a sua volta pu essere rappresentata in funzione dei suoi autovettori ed autovalori, come somma di
diadi;
N
X
R=
n en en
(21.18)
n=1

Pertanto K N se |m, n| N. Una convoluzione bidimensionale


per una funzione separabile pu essere realizzata come cascata di due
convoluzioni monodimensionali per le due funzioni che compaiono nel
prodotto con un costo computazionale totale pari a 2NK; questo modo
di operare spesso assai conveniente perch si ottiene una buona approssimazione della hm,n con K << N. Un esempio molto utile quello
della trasformazione di Mc Clellan, che serve a generare filtri a simmetria
circolare da filtri 1D.

21.6.1

La trasformazione di Mc Clellan

Si voglia realizzare un filtro con funzione di trasferimento a simmetria


circolare ed a fase nulla.

H(u, v) = H();
= u2 + v2
(21.19)
Visto che la funzione di trasferimento 1D H() anchessa a fase 0,
abbiamo:
N
X
an cos(n)
(21.20)
H() = a0 +
n=1

460

21.6 FILTRI 2D

La trasformazione la seguente:
1
cos 1 + (1 + cos u)(1 + cos v)
2

(21.21)

somma di un impulso e di una funzione separabile. Loperazione di


moltiplicazione (nelle frequenze) per cos u corrisponde alla convoluzione
(negli spazi) per la sequenza di due campioni di ampiezza 1/2 collocati
nei campioni di coordinate (1, 0); (1, 0); similmente per cos v. Quindi il costo per campione di una convoluzione (la moltiplicazione della
trasformata per cos ) (a parte la moltiplicazione per il coeciente)
pari a 7 somme. Se ora si vuole realizzare lintero filtro 2D e quindi convolvere per le antitrasformate di funzioni come cos n si pu operare
utilizzando la formula di prostaferesi:
cos n = 2 cos[(n 1)] cos cos[(n 2)]

(21.22)

In questo modo, le convoluzioni corrispondenti al termine nesimo dei


polinomi trigonometrici non devono essere calcolate direttamente ma
sono ottenute come combinazione dei risultati ottenuti per valori minori di n ripetendo poi la stessa operazione di convoluzione elementare
(la trasformazione lineare indicata come G(u, v) nella figura 21.15). Le
isolinee della trasformazione di Mc Clellan per n = 1 sono rappresentate
in fig.21.14; per n maggiori, la zona in cui lapprossimazione accettabile si riduce in proporzione. e lo schema a blocchi presentato in figura

Figura 21.14: Isolinee della trasformazione di Mc Clellan


21.15.
461

CAPITOLO 21 SEQUENZE 2D

Figura 21.15: Schema a blocchi per il calcolo della trasformazione di Mc


Clellan

21.6.2

Filtri per la continuazione di campo

Come si visto nel paragrafo sui filtri 2D derivanti dall equazione del
campo gravitazionale, il campo a quota z + z ottenuto da quello a
quota z, applicando la funzione di trasferimento:
exp ( || z)

(21.23)

Nel caso del telerilevamento, si visto che si pu rilevare la morfologia


del sottosuolo se p.e. si dispongono in superficie (z = 0) sorgenti impulsive in tutte le posizioni x, y e si registra ancora in tutte le posizioni il
campo riflesso f (x, y, z = 0, t) . In questo tipo di esperimento radar, la
posizione della sorgente coincide con la posizione del ricevitore. Come
avevamo osservato, il campo riflesso misurato coincide con quello che
sarebbe misurato in un mezzo a velocit di propagazione dimezzata se i
riflettori emettessero un impulso di energia acustica al tempo 0, avente
ampiezza proporzionale alla loro riflettivit. Lampiezza delle delle sorgenti fittizie (e quindi dei riflettori) a profondit z viene determinata
ricostruendo il campo a profondit z e trovandone il valore al tempo 0.
Il campo a profondit z viene ottenuto da quello in superficie, applicando
la funzione di trasferimento (questa volta a 3D, piuttosto che a 2D)
r

exp jz

!
2
2 ; = u2 + v 2
c2
462

(21.24)

21.7 INTERPOLAZIONE MEDIANTE STIMA LINEARE

oppure convolvendo con lantitrasformata di Fourier a 3D, indicata con


1
F3D
.
"
r
!#
2

1
exp jz
(21.25)
2
f (x, y, z, t) = f (x, y, z = 0, t) F3D
c2
e trovandone il valore al tempo 0. Nel dominio trasformato,
Z Z Z
F (u, v, z = 0, ) =
f (x, y, z = 0, t) exp [j (ux + vy + t)] dxdydt
r

F (u, v, z, ) = F (u, v, z = 0, ) exp jz


Z

2
c2

(21.26)

(21.27)

d
(21.28)
2
Invece di fare trasformazioni di Fourier a 3D, che implicherebbe la stazionariet spaziale e quindi la costanza ovunque della velocit di propagazione,
si pu semplicemente convolvere a 2D (e cio in x, y) la trasformata 1D
(nel tempo t) del campo riflesso, con il vantaggio non trascurabile di avere
uno strumento utilizzabile anche quando la velocit di propagazione
funzione di x, y, ed anche di z.
"
r
!#
2

1
f (x, y, z, ) = f (x, y, z = 0, ) F2D
exp jz
(21.29)
2
c2
f (x, y, z, t = 0) =

Filtri del tipo:

"

F (u, v, z, )

1
1
exp jz
F2D
[exp ( || z)] , F2D

2
2
c2

!#

(21.30)

sono appunto realizzabili con la trasformazione di McClellan, che pu


essere facilmente resa spazio variante.

21.7

Interpolazione mediante stima lineare

Una tecnica di interpolazione utile quella che fa uso della stima lineare; i valori della funzione al di fuori dei punti del reticolo vengono
stimati con uno stimatore lineare. Per discutere di questa tecnica opportuno fare seguire un breve riassunto delle propriet dei processi casuali
bidimensionali e della loro stima.
463

CAPITOLO 21 SEQUENZE 2D

21.7.1

Processi casuali a 2D

Supponiamo di avere un segnale 2D, s(x, y) realizzazione di un processo


stocastico, a valor medio nullo, campionato su un reticolo di lato ; si
pu supporre inoltre di non avere a disposizione sm,n ma una versione
disturbata da rumore bianco
s0m,n = s(m, n) + zm.n ; m, n;

(21.31)

La sequenza 2D, disturbante, costituita da campioni indipendenti zm,n


e risulta:
E[zm,n zh,k ] = 2z ; m = h; n = k;
E[zm,n zh,k ] = 0; m 6= h; n 6= k

(21.32)

La sequenza di segnale ottenuta p.e. convolvendo unaltra sequenza


bianca wm,n con un filtro hm,n e si ha:
sm,n = wm,n hm,n =

N/2
X

wmk,nl hk,l

(21.33)

k,l=N/2

La funzione di autocorrelazione della sequenza 2D s0m,n :


E[s0m,n s0m+k,n+l ]

0
rk,l

2w

N/2
X

hk,l hi+k,j+l + 2z (k, l)

(21.34)

i,j=N/2

21.7.2

Spettri di potenza a 2D

Similmente a quanto accade a 1D, lo spettro 2D di una sequenza si ottiene


per trasformazione di Fourier discreta della funzione di autocorrelazione.
Nel caso di rumore bianco a 2D si ha:
Sx (h, k) = F {rx (n, m)} =

M1
X N1
X

mk
rn,m WNnh WM
= 2x ;

(21.35)

m=0 n=0

Similmente ancora a quanto accade a 1D, se la sequenza x(i, j) con


trasformata di Fourier discreta X(h, k) convoluta con un filtro a risposta allimpulso h(i, j) e avente trasformata di Fourier discreta H(h, k),lo
spettro cambia come segue:
y(i, j) = x(i, j) h(i, j)
464

(21.36)

21.7 INTERPOLAZIONE MEDIANTE STIMA LINEARE

Y (h, k) = X(h, k) H(h, k)

E[|Y (h, k)|2 ] = E[|X(h, k)|2 ] |H(h, k)|2

(21.37)

In particolare, si possono considerare sequenze incorrelate in una direzione e correlate lungo la direzione ortogonale. In questo caso, la
funzione di correlazione a lama, e lo spettro cilindrico.

21.7.3

Stima lineare a 2D

Noti i valori di s0n,m sul reticolo di campionamento si vuole ora stimare


s(x, y) in tutti i punti del piano. Costruendo lo stimatore come combinazione lineare degli (H + 1)2 valori assunti dalla sequenza s0n,m in un
intorno H H del punto da stimare, risulta:
+H/2

sb(x, y) =

an,m (x, y)s0n,m

(21.38)

n,m=H/2

I coecienti an,m (x, y) sono funzione continua di x, y e sono determinabili


in base al principio di ortogonalit.
E[{s(x, y) sb(x, y)}s0n.m ] = 0;

|n, m| H/2

(21.39)

Questo sistema detto il sistema di equazioni normali o di Wiener Hopf ed :


+H/2
X
ap,q (x, y)r0 [(p n), (q m)) =
(21.40)
p.q=H/2

r(x n, y m); |n, m| H/2

r0 (p, q) = r(x = p, y = q) + 2w (p, q)


Generalizzando la stima al caso di reticolo irregolare, si possono indicare
con un solo indice i = 1, ...N gli N punti in cui la funzione s(x, y)
assegnata. Definiamo quindi il vettore dei dati come:

s(x1 , y1 )

s(x2 , y2 )

s =

..

s(xN , yN )
465

CAPITOLO 21 SEQUENZE 2D

La stima della superficie in un punto qualsiasi (x, y) combinazione lineare dei valori della funzione in tutti gli N punti dati con un vettore di
coecienti a(x, y), dipendente dalla posizione del punto da stimare:
sb(x, y) = s a(x, y)

Il vettore dei coecienti a(x, y) viene dal sistema di equazioni normali:


Ra(x, y) = r(x, y)
Gli elementi della matrice di covarianza R sono:
rm,n = r(xm xn , ym yn ) + 2w (m, n); m, n = 1, ...N
e il vettore r(x, y) la correlazione tra il valore della funzione nel punto
da stimare e quello nei punti dove assegnata:

r(x x1 , y y1 )

r(x x2 , y y2 )

r =

..

r(x xN , y yN )

Si verifica che linterpolatore non onora il dato, se non nel caso particolare in cui 2w = 0. Quindi, linterpolatore pu funzionare anche come
filtro passa basso, per smussare il segnale misurato qualora sia aetto
da rumore a spettro bianco. Il vantaggio dellinterpolazione realizzata
con la stima lineare appunto nel fatto che le formule possono essere
generalizzate a situazioni di campionamento irregolare ed a rumore con
spettro qualsiasi, p.e. pi uniforme in una direzione che in unaltra. Non
tutte le funzioni r(x, y) sono possibili funzioni di autocorrelazione; necessario che la loro trasformata sia tutta positiva. Solo in questo caso
possibile garantire che, aggiungendo luce bianca 2w non compaiano zeri
nello spettro degli autovalori di R e quindi il sistema delle equazioni normali sia ben condizionato. Ad esempio sono utilizzabili come funzioni di
autocorrelazione funzioni del tipo:
1 |x| | + ||y|
r1 (x, y) = 2 e |d0 | |d1 | ;
d0

1
x2
y2
r2 (x, y) =
exp( 2 2 ) (21.41)
2 2
2 x 2 y
466

21.7 INTERPOLAZIONE MEDIANTE STIMA LINEARE

rispettivamente separabile (la prima) e separabile ed a simmetria circolare (la seconda, se 2x = 2y ). I rispettivi spettri di potenza saranno:
1
1

2
1 + u2 d0 1 + v 2 d21

P2 (u, v) = exp u2 2x v2 2y

P1 (u, v) =

(21.42)
(21.43)

Non andrebbe bene un prisma; andrebbe bene la forma dellinterpolatore


bilineare.

21.7.4

Stima lineare ed interpolazione

Si osservi che la tecnica della stima lineare, nel caso di 2w = 0, viene


a coincidere con la tecnica di interpolazione discussa nel capitolo 2 in
cui la funzione interpolata combinazione lineare di tante funzioni lisce
g(t tj ) centrate agli istanti tj dove sono posizionati i campioni. I coecienti della combinazione lineare sono tali da fare s che la funzione
interpolata rispetti i dati. La stessa cosa accade in questo caso; invece
di un asse temporale, abbiamo due assi spaziali ed inoltre il ruolo della
g(t) ora sostenuto dalla funzione di autocorrelazione r(x, y). Infatti, si
pu verificare che la funzione interpolata somma di tante funzioni di
autocorrelazione centrate sui campioni e con coecienti tali che la loro
somma rispetti il dato; con scrittura vettoriale, abbiamo trovato:
R a(x, y) = r(x, y)

(21.44)

La matrice R non dipende dalle variabili continue x, y ma solo dalla


disposizione del reticolo di campionamento e ovviamente dalla forma della
funzione di autocorrelazione. Inoltre, avendo indicato con s il vettore dei
campioni da interpolare:
sb(x, y) = s a(x, y) = s R1 r(x, y) = q r(x, y) =

r(x x1 , y y1 )

i r(x x2 , y y2 )
h

= q1 q2 .. qN

..

r(x xN , y yN )
467

(21.45)

CAPITOLO 21 SEQUENZE 2D

Il vettore
q = R1 s
non dipende dalle variabili continue x, y ma solo dai dati, dalla R, e
dalla posizione reciproca dei punti di campionamento. Pertanto, come
gi detto, la stima sb(x, y) una combinazione lineare di funzioni di autocorrelazione centrate sugli N campioni, e moltiplicate per coecienti
q1 , ...qN tali da garantire il rispetto del dato, sempre che 2w = 0. In
questo caso, infatti, per x = xi , y = yi il vettore dei termini noti r(x, y)
eguale ad una riga della matrice R e il vettore a(x = xi , y = yi ) si riduce
ad un vettore tutto di zeri ed un solo 1 nella posizione i-esima. La
funzione stimata quindi eguale al campione situato in quella posizione.
In conclusione, abbiamo ora uno strumento per dare uninterpretazione
fisica alla funzione g(t) incontrata nel capitolo 2.

21.8

Poligoni di Voronoi e triangoli di Delaunay

Una distribuzione irregolare di campioni su un piano pu essere interpolata con una tecnica molto semplice, che poi una generalizzazione
immediata del mantenitore, nel caso di un reticolo regolare. Basta infatti associare ogni punto del piano al campione pi vicino: la zona di
influenza di ogni campione, poligonale, chiamata poligono di Voronoi
ed delimitata dagli assi dei segmenti che congiungono ogni campione
a quelli pi vicini, cio quelli con un lato di un poligono di Voronoi in
comune. Se poi si connette ogni campione ai campioni vicini (e cio quei
campioni che condividono un lato di un poligono di Voronoi) si ottiene
una suddivisione del piano in triangoli. Questa suddivisione chiamata
mosaico di Delaunay (Delaunay tessellation). La figura in basso illustra il
procedimento. La procedura di decomposizione in triangoli di Delaunay
identifica una tecnica di interpolazione semplicissima: basta imporre che
ad ogni triangolo corrisponda un piano che passa per i tre punti: ne risulta una superficie a facce piane che onora il dato. Nel caso di un reticolo
regolare ed una triangolazione di Delaunay uniforme ovunque (ne sono
ammesse due dierenti tra loro), la risposta allimpulso una delle due
piramidi a base esagonale viste in precedenza.
Nel caso di disposizioni casuali nel piano di N campioni, si pu osser468

21.8 POLIGONI DI VORONOI E TRIANGOLI DI DELAUNAY

Figura 21.16: A sinistra i poligoni di Voronoi e a destra la triangolazione


di Delaunay.
vare che il numero di poligoni di Voronoi ovviamente eguale al numero
N dei campioni. Quindi, la formula di Eulero
Facce+Vertici=Spigoli+2

(21.46)

applicata al poliedro costituito dai poligoni di Voronoi, ci dice che il numero medio di lati dei poligoni di Voronoi 6. In altre parole, disponendo
a caso dei campioni sul piano, ogni campione confina in media con altri
6. Infatti, i vertici dei poligoni di Voronoi sono sempre formati dallincontro di 3 spigoli (a parte casi degenere, come il reticolo regolare a base
rettangolare, la probabilit che esistano punti equidistanti da 4 campioni
o pi trascurabile) e quindi:
6N
3V
V 2N S
(21.47)
2
2
ricordando di non contare 2 volte gli spigoli. I triangoli di Delaunay sono
tanti quanti i vertici e quindi il doppio dei campioni. In una simulazione
su 2108 campioni distribuiti nel piano alla Poisson (e cio con una probabilit dA di avere un campione in un elemento di superficie dA; piccolo
a sucienza di rendere trascurabile la probabilit che in quellelemento
cadano due campioni, Brakke), le frequenze relative del numero dei lati
dei poligoni di Voronoi (da 3 a 11) sono state misurate cos: 0.01, 0.1,
0.26, 0.29, 0.19, 0.09, 0.03, 0.007, 0.0015. La probabilit di avere poligoni
con un numero ancora maggiore di lati trascurabile anche se mai nulla.
N +V

469

CAPITOLO 21 SEQUENZE 2D

21.9

Il campionamento a 3D

Linterpolazione lineare si generalizza semplicemente anche nel caso di


funzioni campionate in modo casuale in spazi a 3 dimensioni. Vediamo
anzitutto la generalizzazione del reticolo di campionamento ottimale. A
2D abbiamo visto che il reticolo a base esagonale pi funzionale di
quello a base quadrata. Un modo per spiegare questo fatto sta nellosservazione che, se dobbiamo impaccare sfere 2 D (e quindi cerchi) di eguale
diametro, la densit massima si ottiene quando i cerchi sono disposti su
un reticolo a base esagonale. Se vediamo questo risultato nel dominio
delle frequenze 2D, ne risulta che, a pari diametro del cerchio base e
quindi a pari frequenza spaziale massima che si pu riprodurre senza
equivocazione, le repliche sono pi vicine tra loro (pi dense) se si adotta
un reticolo esagonale. Ogni cerchio ne tocca altri sei, e peraltro anche con
una distribuzione casuale dei campioni sul piano, avevamo verificato che
il numero medio dei campioni vicini era sei. Reciprocamente, il reticolo
dei campioni nello spazio sar il pi rado possibile, e quindi limpaccamento fitto esagonale nelle frequenze porta al reticolo di campionamento
ottimo, e cio il pi rado possibile per una data frequenza di taglio.
Similmente a 3D, si di recente dimostrato quanto intuitivo e cio
che il massimo impaccamento di sfere si ottiene con una disposizione
quale quella di una piramide di palle di cannone; in sostanza, questa
disposizione corrisponde alla sovrapposizione di strati di sfere con i centri
su reticoli piani esagonali. Gli strati successivi hanno i centri sfalsati
in maniera da fare penetrare le sfere dello strato superiore nelle cavit
lasciate libere nello strato inferiore. Ogni sfera ne tocca altre 12.
Ancora, si possono estendere a 3D sia la triangolazione di Delaunay
che i poligoni (poliedri) di Voronoi. Questi ultimi corrispondono a tutti i punti che sono vicini ad un campione pi che a tutti gli altri. I
poliedri sono separati da tanti piani in asse tra un campione ed uno vicino. Ogni vertice di un poliedro di Voronoi ha 4 spigoli. Questo vertice
equidistante da quattro campioni ed il centro della sfera che li tocca.
Quindi i piani che si incontrano in un vertice di un poliedro di Voronoi
sono i quattro piani in asse tra i campioni equidistanti da quel vertice.
Queste quaterne di campioni vicini, e cio i vertici del tetraedro iscritto
nella sfera identificata dai quattro campioni equidistanti dal vertice del
poliedro in questione, formano un tetraedro di Delaunay, generalizzazione
di un triangolo di Delaunay nella triangolazione piana. Cos come si pu
470

21.9 IL CAMPIONAMENTO A 3D

disporre un piano per 3 punti, si pu disporre su quattro punti nello


spazio una funzione che varii linearmente in funzione delle tre coordinate. In questo modo, possibile definire una funzione continua in uno
spazio 3D che assume i valori desiderati in corrispondenza dei campioni
noti ed localmente sempre variabile linearmente con le tre coordinate.
In corrispondenza delle facce dei tetraedri di Delaunay, questa funzione
ha delle discontinuit delle derivate prime.
Per curiosit, il numero medio di campioni adiacenti in uno spazio
3D, e con una distribuzione casuale alla Poissson dei campioni, stato
calcolato da Meijering (1953) in:
482
+ 2 = 15, 53..
35

(21.48)

La relazione di Eulero, anche se generalizzata a 4D, non sarebbe suciente per trovare questo valore. invece necessario fare un complesso
studio di geometria aleatoria.

471

Capitolo 22
La Tomografia
22.1

Introduzione

Si pensi ad un bambino che osserva una torta con delle candeline; la torta
poggiata su di un tavolo ed il bimbo, che ha gli occhi allaltezza delle
candeline, non pu distinguere n il loro numero n la luminosit. Se
per il bambino fa un giro attorno al tavolo su cui poggiata la torta,
vedr le luci delle candeline allinearsi a volte lungo certe direzioni, a volte
lungo altre. A volte ancora vedr tutte le candeline distribuite lungo il
diametro della torta. Ora, la tomografia la tecnica con cui si riesce
a trovare posizione e luminosit delle candeline pur senza mai vedere la
torta dallalto.
Passando dal caso particolare della torta con le candeline al caso
generale della tomografia, abbiamo la seguente situazione. Si desidera
rilevare una grandezza (ad esempio lenergia luminosa emessa dalle candeline) il cui andamento nel piano descritto dalla funzione f (x, y); questa grandezza tuttavia non pu essere rilevata punto per punto; la cosa
sarebbe possibile se disponessimo di un misuratore nel punto di coordinate x, y ma questo invece inaccessibile. Stando allesterno del corpo,
invece, possibile misurare solo proiezioni e cio integrali della funzione
f (x, y) lungo le rette con direzione +/2 (fig. 22.1); nel caso della torta
possiamo misurare la somma di tutta lenergia luminosa generata dalle
candeline lungo delle linee che indicheremo con .
Indicheremo con r lasse lungo il quale sono situati i punti di rilevazione e con r le sue ascisse; lasse ortogonale alle linee ed quindi
473

CAPITOLO 22 LA TOMOGRAFIA

inclinato di rispetto allasse x. Lorigine delle coordinate dellasse r


posta nel punto O proiezione sulla retta r dellorigine delle coordinate
del piano x, y. Una proiezione quindi data dalla funzione
Z
f (, )d
s(r, ) =

Vedremo ora come fare il processo inverso e cio passare dalle proiezioni
s(r, ) ; 0 < < allimmagine originale. Questa operazione di inversione indicata con il nome di tomografia da = taglio in greco.
Per comprendere il meccanismo dellinversione tomografica, si rammenti
che il problema lineare e si pu procedere per sovrapposizione degli
eetti o utilizzare il dominio dei numeri donda.
y
l

x
r

f(x,y)
/2
O
s(r,)

O
D

D = dimensione massima delloggetto

Figura 22.1: Ripresa di proiezioni dallesterno di un corpo

22.2

Trattamento nei numeri donda

Utilizzeremo il teorema detto delle sezioni di proiezione (projection slices)


della trasformata di Fourier 2D e cio utilizzeremo il fatto che la trasfor474

22.2 TRATTAMENTO NEI NUMERI DONDA

mata di Fourier di una proiezione (ad assegnato angolo con lasse x),
la sezione della trasformata di Fourier bidimensionale F (u, v) della
f (x, y) che ha eguale angolo con lasse u. Determiniamo analiticamente lespressione di una proiezione s(r, ) e della sua trasformata di
Fourier:
Z
s(r, ) =
f (, )d
(22.1)
dove

la retta di coordinate:

cos( ) = r
le variabili , sono le coordinate polari nel piano x, y:
p
y
= x2 + y 2
= tan1
x

(22.2)

(22.3)

In coordinate cartesiane si avrebbe:

x cos + y sin = r
Nel caso di = 0 lespressione di una proiezione si semplifica in:
Z
s(r, 0) =
f (r, y)dy
r
(22.4)

e la variabile r coincide con la variabile x. Se la trasformata di Fourier


dellimmagine :
Z Z
f (x, y)ej(ux+vy) dxdy
F (u, v) =

la trasformata di Fourier della proiezione , indicando con la variabile


coniugata alla variabile r:
Z Z
Z
jr
s(r, 0)e
dr =
f (r, y)ejr drdy = F (, v = 0) (22.5)

Ruotando gli assi del piano x, y di un angolo ruotano di altrettanto


gli assi coordinati della trasformata F (u, v). Quindi la trasformata di
Fourier di una proiezione s(r, ) F (, ) se introduciamo le coordinate
polari nel dominio dei numeri donda u, v:

v
(22.6)
= u2 + v 2 ; = tan1
u
475

CAPITOLO 22 LA TOMOGRAFIA
[ F (, )]

= { s( r , )}

[ F (, )]

Figura 22.2: Una sezione di una trasformata di Fourier 2D, trasformata


di una proiezione
Si osservi che ora 0, e una sezione completa della trasformata di
Fourier viene ottenuta considerando i valori della F (, ) sia per langolo
0 che per langolo + .In conclusione abbiamo mostrato
come la trasformata di Fourier 1D della proiezione s(r, ) fatta lungo le
rette che fanno un angolo + /2 con lasse x eguale alla sezione
della trasformata di Fourier 2D F (u, v) dellimmagine f (x, y) lungo la
direzione che fa angolo con lasse u e cio F (, ), F (, + ) (fig.
22.2).
Z
1
s(r, ) =
F (, )ejr d
(22.7)
2
I valori di negativi sono riferiti allangolo + .
La cosa diventa ovvia se si pensa che una proiezione ottenuta convolvendo limmagine originale per una lama di altezza costante, parallela
allasse della proiezione stessa; convolvere con una lama corrisponde a
moltiplicare la trasformata di Fourier 2D per la lama ortogonale, trasformata della lama negli spazi. Pertanto, se sono note M proiezioni disposte
regolarmente lungo un arco di 180o sono note M sezioni della trasformata
476

22.2 TRATTAMENTO NEI NUMERI DONDA

di Fourier 2D,
F (, m ); m = 1, . . . , M ; F (, m + ); m = 1, . . . , M. || 0;
Da queste sezioni che suddividono uniformemente langolo giro, con una
interpolazione fatta nel dominio dei numeri donda, possibile trovare la
F (u, v) su di un reticolo cartesiano regolare; con una antitrasformazione
discreta si riottiene la f (x, y) (fig. 22.3). Si pu ora calcolare il numero di
proiezioni necessario per fare una corretta interpolazione nel dominio dei
numeri donda. I campioni della F (, m ) sono massimamente distanti
v

Figura 22.3: Passaggio da coordinate polari a cartesiane


tra loro per i valori massimi di ||; ora se indichiamo con L la larghezza del lobo principale di un filtro che delimita la risoluzione spaziale
dellimmagine, si ha

||
(22.8)
L
Se loggetto ha dimensione massima D, i campioni nel dominio spettrale
devono essere distanti meno di 2/D perch le repliche dovute al campionamento nei numeri donda non si sovrappongano negli spazi; quindi
477

CAPITOLO 22 LA TOMOGRAFIA

(fig. 22.4):

2
D

M
(22.9)
L M
D
2L
Dallanalisi fatta nel dominio dei numeri donda si conclude che possibile
v

L M
D

Figura 22.4: Condizione di corretto campionamento nel dominio dei


numeri donda
eettuare una inversione tomografica:
se la risoluzione spaziale dellimmagine stata limitata e lo spettro
dellimmagine sostanzialmente nullo oltre il numero donda || = /L;
se il numero delle proiezioni M suciente e cio M 1, 57D/L
dove D il diametro delloggetto da tomografare.
Ripeteremo ora lanalisi rimanendo nel dominio degli spazi, per comprendere i meccanismi che dominano la tomografia e cos avere gli strumenti concettuali per estendere la trattazione a situazioni di geometria
irregolare. Per ora limitiamoci ad osservare che servono apparentemente
pi equazioni di quante siano le incognite in quanto con una risoluzione
L ed un diametro D loggetto descritto da ' (D/2L)2 valori diversi di
ampiezza (la risoluzione spaziale corrispondente alle dierenti luminosit
di altrettante candeline). Le equazioni disponibili sono invece almeno
M D/L e cio il doppio. Ci implica che queste equazioni sono linearmente dipendenti tra loro; M relazioni sono trovate subito osservando
che larea di tutte le proiezioni (lenergia luminosa emessa da tutte le
candeline) costante e pari al volume racchiuso dalla funzione f (x, y).
478

22.3 IL SINOGRAMMA

Questo equivale a osservare che la componente a frequenza zero di


tutte le proiezioni costante e pari a F (0, 0). Similmente, si intuisce
che i campioni a bassa frequenza spaziale di tutte le proiezioni sono s
funzione di , ma dipendono dai pochi valori indipendenti assunti dalla
F (u, v) attorno allorigine delle coordinate, ecc.

22.3

Il sinogramma

Per comprendere il meccanismo della tomografia nel dominio degli spazi,


faremo uso del principio di sovrapposizione degli eetti e quindi supporremo che la funzione f (x, y) corrisponda ad un singolo impulso unitario
(la torta abbia una sola candelina). Ad esempio, se limpulso (la luce
emessa dalla candelina) occupa lorigine degli assi O, le proiezioni misurate dallosservatore avranno un picco allascissa O, proiezione sullasse
r del punto O, qualsiasi sia il valore di . Si riportino tali proiezioni in
unimmagine e cio un grafico tridimensionale (detto sinogramma per
i motivi che vedremo tra poco) che ha per ascissa r e per ordinata ;
lungo la terza dimensione (il livello di grigio dellimmagine), non riportata nella figura 22.5, dovrebbe comparire il valore dellintegrale di linea
della funzione f (x, y) fatto integrando lungo la linea come si vede nella
figura 19.1. Il risultato che si ottiene nel caso di una candelina nellorigine unimmagine con una linea verticale in corripondenza dellascissa
0 (la retta r = 0 nella fig. 22.5) il cui livello di grigio proporzionale
alla luminosit della candelina. Se invece sono presenti tre candeline,
nel sinogramma compaiono, oltre la traccia verticale vista prima, altre
due tracce di forma sinusoidale e di livello di grigio proporzionale alla
luminosit delle altre due candeline (nel caso di fig. 22.6, una delle tre
sorgenti (quella in B) ha segno negativo).
Supponiamo ora che le coordinate polari dellunico impulso che forma
la f (x, y) siano 0 e 0 . In ogni riga del sinogramma e cio per ogni
valore di lunico valore di r per cui il sinogramma ha valore diverso da
0 oscilla tra +0 , 0 con una traiettoria sinusoidale (ecco il perch del
nome sinogramma):
r = 0 cos(0 )
(22.10)
Naturalmente, se invece di un impulso (una candelina sulla torta) ve ne
sono molti, ad esempio in A, B, C, nella riga del sinogramma che corrisponde alla proiezione di angolo sar registrato landamento relativo
479

CAPITOLO 22 LA TOMOGRAFIA

dB

dD

dC
C

r=0
B

A
C

dC

D
dD

dB

Figura 22.5: Sinogramma

Figura 22.6: Sinogramma di 3 impulsi.

480

22.4 LA RETROPROIEZIONE

alla somma delle energie luminose di tutte le candeline posizionate ai


punti di coordinate polari , legate dalla relazione:
cos( ) = r
Risulta quindi che lampiezza del sinogramma :
Z
f (x, y)d
s(r, ) =

(22.11)

(22.12)

e cio lintegrale della f (x, y) (rappresentata in coordinate polari come


f (, )) lungo le linee .

22.4

La retroproiezione

Se si desidera ora passare dal sinogramma s(r, ) di nuovo allimmagine in coordinate polari f (, ), si deve eettuare loperazione di retroproiezione. Un modo elementare di vedere il meccanismo di retroproiezione, direttamente corrispondente al nome, il seguente. Si visualizzi limmagine f (x, y) come una distribuzione disuniforme di burro
su di una fetta di pane; la proiezione lungo una direzione + /2 d linformazione, ascissa per ascissa, di quanto burro sia disposto lungo quella
direzione. La ricostruzione pi ragionevole dellimmagine che si pu fare,
non disponendo di ulteriore informazione ma garantendo la congruenza
con la proiezione, corrisponde alloperazione di spalmare il burro sulla
fetta di pane. In altre parole, le ampiezze del segnale vengono prima
sommate tra loro lungo la direzione (formazione della proiezione) e poi
ridistribuite sullimmagine (spalmate) ancora lungo la stessa direzione (la
retroproiezione); si passa cos dallimmagine originale f (x, y) ad una funzione cilindrica uniforme nella direzione + /2, pur mantenendo eguale
proiezione s(r, ). Un impulso, riproiettato, diventa una lama, passante
per limpulso originario, ortogonale alla direzione di proiezione. Completata loperazione di retroproiezione relativa ad un direzione di proiezione
(un azimut), si devono adesso utilizzare tutti gli altri azimut.
Loperazione di retroproiezione viene quindi completata mediando tra
loro tutte le le retroproiezioni eettuate lungo i vari azimut; ci equivale a stimare la distribuzione originale del burro mediando tra loro le
quantit di burro rispalmate dalle varie direzioni. Le stesse operazioni di
481

CAPITOLO 22 LA TOMOGRAFIA

retroproiezione dai vari azimut possono essere ottenute in modo equivalente operando come segue. Tutte le informazioni relative allo stesso punto dellimmagine posizionato nel punto P di coordinate polari
(0 , 0 ), provenienti dalle proiezioni della f (x, y) lungo i vari azimut,
sono disposte nel sinogramma lungo la traiettoria sinusoidale descritta
dallequazione (22.10). Mediando i valori del sinogramma lungo questa
traiettoria, si trova una stima del valore della f (x, y), che indichiamo
con f(x, y). Questa operazione di media coincide con la retroproiezione
perch si attribuisce alla f (, ) il valore medio delle proiezioni fatte sui
punti di ascissa r = cos( ) al variare dellangolo . Mediando su
tutti gli azimut, la retroproiezione quindi definibile come:
Z
1 1 .

f (, ) =
s[r = cos( ), ]d
(22.13)
2 0
formula che vedremo sar utile nella derivazione formale della retroproiezione. La divisione per 2 una conseguenza del sistema di riferimento scelto (ovvero 0 < mentre pu essere sia positivo che
negativo e quindi la retroproiezione equivalente, in pratica, ad eettuare
loperazione di media su 2). Vediamo cosa accade con M proiezioni se
la f (x, y) costituita da un singolo impulso ad esempio nellorigine O.
Ogni retroproiezione una lama di ampiezza costante che passa per O;
la f(x, y) ottenuta dalla somma di M lame che passano tutte per 0.
Anche per M la f(x, y) non limpulso di partenza (x, y) ma la
funzione:
1
1
q(x, y) = p
=
(22.14)
2
2

x +y

la cui trasformata di Fourier 2D :

1
1
Q() =
=
||
u2 + v2

(22.15)

Infatti, basta pensare che le lame siano M e che ogni lama abbia uno
spessore ; il volume totale della media delle lame in una corona circolare di raggio e larghezza costante e pari a M/M (tale volume
deve essere nomalizzato rispetto al numero delle proiezioni da cui segue
la divisione per M ), quindi laltezza equivalente in grado di fornire il
medesimo volume delle M retroproiezioni M/2M e decresce con .
Ne consegue che la retroproiezione ottenuta ridistribuendo il valore della
482

22.5 LA RETROPROIEZIONE FILTRATA

Figura 22.7: Retroproiezione di 5 proiezioni di un impulso nellorigine.


proiezione su tutti i campioni dellimmagine NON restituisce limmagine di partenza bensi limmagine convoluta con un filtro la cui risposta
allimpulso q(x, y) = 1/. Per ottenere di nuovo un impulso ideale fino alla frequenza di Nyquist, si deve compensare (deconvolvere) la
risposta allimpulso q(x, y) e cio moltiplicare (nelle frequenze) per ||,
ovviamente ancora fino alla frequenza di Nyquist.Il motivo che ad ogni
lama nel dominio degli spazi (ad esempio (x)) corrisponde una lama
nel dominio dei numeri donda (in questo caso (v)), e le due funzioni
dellequazione precedente sono entrambe somma di infinite lame che si
incrociano nellorigine. Se il numero di proiezioni limitato, si comprende come la risposta allimpulso del sistema di retroproiezione non
sia un impulso ma piuttosto una stella di M raggi centrata l dove era
situato limpulso originario (fig.22.7, 22.8).

22.5

La retroproiezione filtrata

Abbiamo visto come in ogni punto del sinogramma si sommano i contributi relativi ai molti impulsi che compongono limmagine; facendo la
media del sinogramma lungo tutta la traiettoria relativa al punto di interesse P0 di coordinate polari (0 , 0 ), i contributi degli altri impulsi non
483

CAPITOLO 22 LA TOMOGRAFIA

Figura 22.8: Retroproiezione di 100 proiezioni di un impulso.


si elidono. Se per deconvolviamo per la q(x, y) (prima di sommare lungo le traiettorie sinusoidali nel sinogramma) e quindi convolviamo ogni
proiezione con una opportuna funzione e
(r) la cui trasformata 1D vedremo essere ||, possibile eliminare leetto dellinterferenza dei vari
impulsi tra di loro (fig. 22.9).Supponiamo ad esempio che e
(0) abbia
valore unitario; supponiamo inoltre che e
(r) abbia un lobo principale
di larghezza circa L e lobi laterali negativi e positivi di larghezza L e di
ampiezza decrescente in modo che il valor medio della e
(r) sia nullo (una
specie di sinc). Se la funzione f (x, y) costituita da un solo impulso (ad
1

(r)

Figura 22.9: Il filtro per le retroproiezioni e


(r)
484

22.5 LA RETROPROIEZIONE FILTRATA

esempio nellorigine), i valori del sinogramma lungo la traiettoria relativa alla posizione dellimpulso (la retta r = 0) non sono modificati dalla
convoluzione con e
(r). Vediamo ora che accade se valutiamo lampiezza dellimmagine in un altro punto, distante 1 dallorigine (1 >> L).
Per fare ci dobbiamo sommare i valori assunti dal sinogramma lungo
la traiettoria sinusoidale relativa a questo secondo impulso che traversa
la retta r = 0 secondo una linea obliqua. Nella somma, si incontrano
e si mediano successivamente tutti i lobi positivi e negativi della e
(r),
che hanno per ipotesi somma nulla. Se ne conclude che, filtrando le
proiezioni con la e
(r), linterferenza tra impulsi abbastanza lontani viene
soppressa (fig. 22.10, 22.11, 22.12, 22.13); ci conferma che la moltiplicazione per || eettua la deconvoluzione. Non cos se i due impulsi
sono pi vicini di L. Allora, sommando lungo la seconda traiettoria, non
si incontrano tutti i lobi sia positivi che negativi della funzione e
(r), ma
ci si trattiene sempre nel lobo principale e perci vi sar interferenza.
Da quanto visto fino ad ora, la risposta allimpulso del sistema tomografico con retroproiezione filtrata prossima a quella ideale, a parte la
limitazione a L della risoluzione spaziale, corrispondente alla limitazione
della banda alla frequenza di Nyquist. Le lame che formano la stella nel
caso della retroproiezione non filtrata hanno ora lobi positivi e negativi
che tendono ad elidersi tra loro; se vi sono molte proiezioni, limmagine
ricostruita ha pertanto un lobo centrale isolato largo circa L. Vedremo
ora leetto della limitazione del numero delle proiezioni e cio lequivocazione spaziale. Da quanto osservato finora si dedurrebbe che conviene
fare L il pi piccolo possibile; vedremo nella prossima sezione perch
questo non vero.

Figura 22.10: Sinogramma filtrato di 3 impulsi (Fig. 22.5).


485

CAPITOLO 22 LA TOMOGRAFIA

Figura 22.11: Il sinogramma filtrato

22.5.1

Equivocazione angolare

Se il campionamento angolare insuciente, vedremo ora che vi interferenza tra gli impulsi se questi sono lontani tra loro: avremo cio
un eetto di equivocazione angolare se la dierenza angolare tra due
proiezioni successive
> 2L/D

(22.16)

dove D la massima dimensione delloggetto osservato. Supponiamo


infatti di avere due impulsi distanti tra loro D; a partire dallazimut
0 per cui i due impulsi sono sovrapposti nella proiezione, le loro due
proiezioni si distanziano al crescere di di
D sin( 0 ) ' D( 0 )

(r)
Se ora n = n, passando da una proiezione alla successiva, la e
relativa al primo impulso viene campionata dalla traiettoria relativa al
secondo impulso per valori dellascissa pari a
nx = nD
Ma se la (22.16) vera, x > 2L, si saltano addirittura lobi della e
(r),
la media non sar pi a valore nullo e quindi appare linterferenza. In
conclusione, si verifica che la risposta allimpulso delloperazione di retroproiezione con campionamento angolare di intervallo sar caratterizzata da un lobo centrale di diametro L intorno a P0 , da una zona oscura
di diametro 2L/ dove i lobi positivi e negativi delle varie lame si elidono, e infine a distanza ancora maggiore da P0 , da una stella di tanti
raggi quante sono le proiezioni (fig.22.12).
486

22.5 LA RETROPROIEZIONE FILTRATA

Figura 22.12: Ricostruzione dellimpulso da 4,8,16,32 proiezioni filtrate


(particolare della ricostruzione).

22.5.2

Retroproiezioni e numeri donda

Possiamo ora interpretare loperazione di retroproiezione avvalendoci del


teorema delle projection slices e cio delle sezioni della trasformata di
Fourier 2D. Fare la retroproiezione, equivale a comporre limmagine con
tante funzioni cilindriche (le singole proiezioni retroproiettate) disposte
lungo i vari azimut di proiezione. Lo spettro 2D dellimmagine cos ricostruita la media di tante lame, di ampiezza proporzionale alla corrispondente sezione della trasformata di Fourier 2D. Finestrando negli
spazi, si smussa nel dominio dei numeri donda e quindi si ridistribuisce
lo spettro da una distribuzione a lame ad unaltra pi smussata che cor487

CAPITOLO 22 LA TOMOGRAFIA

Figura 22.13: Ricostruzione da 100 retroproiezioni filtrate (confrontare


con Fig.22.8).
risponde maggiormente al vero spettro 2D. Tuttavia, si deve evitare lequivocazione e da ci derivano le stesse condizioni gi viste in precedenza
sul numero delle proiezioni. Inoltre, le sezioni si aollano al centro delle
coordinate del piano u, v e sono rade alla periferia; necessario amplificare il risultato in proporzione alla distanza dal centro delle coordinate e quindi alla pulsazione spaziale ||. Una osservazione equivalente
era gi stata fatta prima, quando avevamo visto che la stella di lame
corrispondenti alla retroproiezione non filtrata ha spettro 1/.
Arriveremo ora a queste stesse conclusioni in modo pi formale. Definiamo la retroproiezione come:
Z .
1

f (, ) =
s[r = cos( ), ]d
(22.17)
2 0

Sostituendo lespressione della proiezione in funzione della antitrasformata di Fourier dellimmagine si ha:

Z . Z
1
1
j cos()

F (, )e
d d =
(22.18)
f (, ) =
2 0
2
488

22.5 LA RETROPROIEZIONE FILTRATA

1
=
2

1
2

j cos()

F (, )e

d d

Ma questa esattamente lespressione dellantitrasformata di Fourier


2D tranne il fattore ||, corrispondente allo Jacobiano della trasformazione delle coordinate da cartesiane a polari:
Z . Z
1
F (, ) j[ cos()]

f (, ) = 2
e
dd
(22.19)
4 0
||
La retroproiezione non filtrata lantitrasformata della F (, )/||; la
moltiplicazione per la funzione 1/|| corrisponde alla convoluzione bidimensionale per la sua antitrasformata 1/ che ha volume infinito; infatti 1/|| = , nellorigine. In altre parole, ricostruendo limmagine
con le retroproiezioni senza filtraggio con i cosiddetti -filtri, e cio senza la convoluzione con la e
(r), otteniamo unimmagine con uneccessiva
riduzione di ampiezza alle frequenze spaziali pi elevate. Per ottenere
unimmagine corretta si deve pertanto moltiplicare la trasformata della
proiezione per la funzione ||. Inoltre, il numero donda massimo contenuto nelle proiezioni deve essere inferiore a /L; si osservi infine che
invece di filtrare 2D limmagine con il filtro 1/||, basta filtrare le singole
proiezioni con un filtro passa alto la cui funzione di trasferimento (asse
delle pulsazioni bilatero):
Pe() = || = j jsign();

0 || /L;

(22.20)

per ottenere il risultato corretto (fig. 22.14). Computazionalmente ci


molto meno oneroso.Quindi, prima di fare la retroproiezione, nel caso
continuo ed a risoluzione spaziale limitata, si dovrebbe fare la derivata
delle proiezioni e poi fare seguire alla derivazione una trasformazione di
Hilbert; il risultato della retroproiezione sarebbe quello desiderato. Nel
dominio degli spazi, il -filtro descritto dalla seguente espressione:

r
1
2 r
e
(r) = 2 sinc( ) sinc ( ) ;
(22.21)
L
L
2
2L

Nel caso discreto, si osservi che se il numero delle proiezioni pari a M,


il filtro Pe() deve avere un guadagno non nullo a frequenza zero e
pari a 1/M.
489

CAPITOLO 22 LA TOMOGRAFIA

Figura 22.14: Filtro 2D passa alto equivalente al filtraggio delle


retroproiezioni.

La tecnica delle retroproiezioni filtrate computazionalmente pi conveniente di quella dellinterpolazione su di un reticolo cartesiano della trasformata di Fourier bidimensionale nota su un reticolo polare, in
quanto il mezzo di calcolo pu essere utilizzato con maggiore uniformit
temporale durante le acquisizioni. Nel caso delle retroproiezioni filtrate,
possibile fare la convoluzione con il filtro Pe() man mano che le proiezioni
sono acquisite; si pu anche fare immediatamente la retroproiezione della proiezione filtrata. Non appena viene acquisita e trattata lultima
proiezione, il risultato disponibile, senza che sia necessario un picco
di utilizzo del mezzo di calcolo. Nel caso dellinterpolazione su reticolo
cartesiano della trasformata di Fourier bidimensionale, invece necessario ritardare lantitrasformazione bidimensionale, e pertanto un forte
uso di potenza di calcolo, ma solo al momento in cui sono disponibili
tutte le proiezioni.
490

22.5 LA RETROPROIEZIONE FILTRATA

Figura 22.15: 5 retroproiezioni filtrate viste nel dominio dei numeri


donda

22.5.3

Proiezioni incomplete o mosse

E facile determinare cosa accade se non tutte le proiezioni vengono misurate, se cio per qualche motivo mancano le sezioni dello spettro 2D del
dato appartenenti ad un settore angolare . Il risultato che il segnale
viene filtrato da un filtro a ventaglio di larghezza che sopprime le
proiezioni appartenenti allangolo non misurato. Ancora, pu esere utile
calcolare leetto di un movimento del soggetto ripreso durante la tomografia; supponiamo che durante la prima met delle proiezioni il soggetto
si trovi in O e durante la seconda met delle proiezioni si trovi in O0 .
La risposta di nuovo semplice; basta pensare di filtrare con il filtro
a ventaglio corrispondente alle prime proiezioni limpulso posizionato in
O e poi con il filtro a ventaglio complementare limpulso spostato nella
seconda posizione O0 . Il risultato sar la combinazione delle due risposte
allimpulso. Se p.e. le proiezioni relative ad una posizione sono corrispondenti ad unapertura angolare di /2 usando un sistema di coordinate
491

CAPITOLO 22 LA TOMOGRAFIA

conveniente, i due filtri a ventaglio sono rappresentati dallespressione:


2 H1,2 (u, v) = [1 sign(u)sign(v)] (0, 0)

1
2 xy

(22.22)

Se le posizioni dei due impulsi sono corrispondenti a:


P1,2 (u, v) = ej(ux0 +vy0 )

(22.23)

H1 (u, v)P1 (u, v) + H2 (u, v)P2 (u, v)

(22.24)

il risultato :

1
2 (x x0 )(y y0 )
1
+(x + x0 , y + y0 ) 2
(x + x0 )(y + y0 )

(x x0 , y y0 ) +

Nel caso di segnale campionato e periodicizzato, le singolarit sono evitate; si utilizzi lespressione della trasformazione di Hilbert riportata nel
Capitolo 7.

22.6

Tomografia 3D

interessante analizzare cosa accade estendendo a tre dimensioni il concetto di tomografia, discussa in 2 dimensioni; infatti, si supposto che la
propagazione avvenga nel piano (della torta) (x, y) detto assiale (infatti
TAC: tomografia assiale computerizzata) e cio nel piano ortogonale alla
direzione z.
Anzitutto vediamo come nella trasformazione di Fourier a 3D, una retta coniugata al piano che ha la giacitura ortogonale. In altre parole, una
singolarit a bacchetta si trasforma in una singolarit a lamina; infatti il
comportamento uniforme nella direzione della bacchetta ed impulsivo
nelle due direzioni ad essa ortogonali; correlativamente, nel dominio coniugato, abbiamo un comportamento impulsivo andando nella direzione
della bacchetta, e troviamo una costante andando nelle due direzioni ortogonali. Indicando con u, v, w le variabili coniugate alle variabili x, y, z,
la trasformazione di Fourier in 3D :
492

22.6 TOMOGRAFIA 3D

F (u, v, w) =

1
f (x, y, z) =
(2)3

f (x, y, z)ej(ux+vy+wz) dxdydz

F (u, v, w)ej(ux+vy+wz) dudvdw

Se:
f (x, y, z) = (x)(y) F (u, v, w) =
e se
f (x, y, z) = (z) F (u, v, w) =

1
(w)
(2)3

1
(u)(v)
(2)3

Quindi, convolvendo con una bacchetta si moltiplica lo spettro per una


lamina; ancora, convolvendo con una lamina, si moltiplica lo spettro per
una bacchetta. Tutte le osservazioni fatte per la tomografia 2D si estendono facilmente a 3D e si possono derivare delle relazioni che fissano il
numero totale di proiezioni in funzione della risoluzione spaziale desiderata. Per esempio, nel caso di proiezioni lungo delle lamine (convolvendo la
funzione f (x, y, z) con delle lamine e cio mediando i valori della funzione
su interi piani) si ha che un volume di dati si proietta in una funzione 1D;
inoltre, se D il diametro delloggetto da tomografare (supposto sferico)
e langolo tra le normali a due lamine adiacenti,
||max

2
;
D

||max =

2L


L
D

Infatti, per non avere equivocazione, il campionamento dello spettro,


che avviene lungo una stella di rette, deve eettuarsi a intervalli di numeri donda inferiori a 2/D; il numero di proiezioni in una semisfera
pertanto almeno:
2||2max
D2
M3 =

(22.25)
()2 ||2max
2 L2
indicando con L la risoluzione spaziale (la larghezza del lobo). Poich ad
ogni proiezione corrispondono D/L equazioni, si hanno in totale D3 /2L3
equazioni contro D3 /6L3 incognite con una ridondanza maggiore che
non in 2D.
Un altro modo per intuire che la tomografia 3D pu essere fatta proiettando il dato di volume lungo piani (convolvendo il volume con delle
493

CAPITOLO 22 LA TOMOGRAFIA

lamine) nasce dallosservazione che nello spazio ci sono 3 piani ed altrettanti punti. Quindi, il numero di proiezioni sui piani ha lo stesso ordine
di infinit del numero dei punti dello spazio e conoscere le proiezioni ci
porta a conoscere i valori puntuali, a parte gli eetti di indeterminazione
considerati prima.
La situazione cambia facendo proiezioni su rette. Di queste, ce ne
4 e quindi inutile misurare le proiezioni su tutte le rette: avremmo
misure ridondanti rispetto ai dati. Facendo la convoluzione con tutte le
rette ortogonali ad un dato piano otteniamo una proiezione bidimensionale (loggetto schiacciato lungo la direzione della normale al piano). La
trasformata di Fourier 2D di questi dati schiacciati ci d una sezione
2D dello spettro 3D del dato (un cerchio massimo della sfera). Di queste
sezioni 2D ce ne sono 2 , ma ce ne bastano . Per esempio, basta
considerare solo le rette ortogonali ad un asse verticale z (che sono appunto 3 ). Facendo proiezioni secondo queste linee, si pu procedere
a 3D operando in coordinate cilindriche e quindi ricadere nelle tecniche
tomografiche 2D.
Peraltro, la proiezione lungo delle rette pi ricca di informazione
e quindi ci permette di recuperare degli ulteriori parametri locali, come
per esempio la variabilit angolare della riflettivit locale alle onde o
in generale parametri di variabilit angolare (azimut o elevazione) delle
propriet locali delloggetto sotto misura. Si pensi al caso di specchietti
piani sospesi in un mezzo trasparente (come in un acquario). Illuminando tale volume con dei raggi luminosi provenienti da tutte le direzioni,
riusciamo a trovare la distribuzione spaziale sia degli specchietti che dei
loro puntamenti.

22.7

Tecniche iterative

22.7.1

Retroproiezione e gradiente

Si consideri un problema di tipo tomografico: sono assegnate delle misure,


raccolte in un vettore p; si cerca un vettore di parametri m tale che
le misure fatte sul modello definito da questi parametri corrispondano
quanto pi possibile ai dati. In formula si ha:
Am = d
494

(22.26)

22.7 TECNICHE ITERATIVE

La matrice A in generale di dimensioni [M N]; i vettori m e d


sono di dimensione [N] ed [M] rispettivamente. Ad esempio, il modello
m potrebbe corrispondere alla distribuzione delle lentezze (inverse delle
velocit) di propagazione di un mezzo qualsiasi, e il vettore dei dati d corrispondere ai tempi di propagazione di raggi che hanno traversato questo
mezzo, nelle varie direzioni. Il tempo di propagazione proporzionale
allintegrale di linea delle lentezze lungo la direzione del raggio e quindi si ritrova il classico problema di tomografia. La limitata accessibilit
del mezzo fa s poi che non sono disponibili raggi in tutte le direzioni e
pertanto la matrice A pu essere praticamente qualsiasi. La situazione
molto pi semplice quando sono disponibili raggi in tutte le direzioni
ed allora la struttura della matrice assume forme particolari.La tecnica
consueta di risoluzione di questo sistema quella della pseudoinversione;
si cerca una soluzione ai minimi quadrati e cio tale che lenergia del
residuo 2 sia minima:
(Am d) (Am d) = 2

(22.27)

Come si vedr pi diusamente nel prossimo capitolo, Il minimo di questa


forma quadratica si raggiunge per
m = (A A)1 A d

(22.28)

e cio applicando al vettore d la matrice (A A)1 A detta appunto pseudo inversa della matrice A. Infatti, se la matrice A quadrata e non
singolare si ritorna al caso classico. Se poi la matrice A A troppo
vicina ad essere singolare, si pu sempre aggiungere della luce bianca e
cio accrescere la diagonale principale aggiungendo I dove I la matrice
identit e un parametro piccolo. Si verificher che questo coincide
con il minimizzare 2 +(m m)2 . Cerchiamo di capire tutto ci in termini
di tomografia.

22.7.2

Retroproiezione e trasposizione

Anzitutto, determiniamo il significato fisico delloperazione


m0 = A d

(22.29)

e cio di applicare al vettore dei dati la trasposta della matrice del modello. Questa operazione la retroproiezione. Per vederlo, si consideri uno
495

CAPITOLO 22 LA TOMOGRAFIA

spazio suddiviso in cellette rettangolari. Ogni componente del vettore dei


dati (le proiezioni d), {di }, ottenuta sommando i contenuti {mji } delle
cellette corrispondenti ad unoperazione di proiezione. La matrice A che
corrisponde alloperazione di proiezione, ha degli 1 negli elementi ai,ji che
corrispondono alle celle ji che si proiettano nellelemento i-esimo del vettore delle proiezioni. La matrice A , che corrisponde alloperazione di
retroproiezione, ha gli stessi 1 nelle celle aj,i relative agli elementi ij del
vettore delle proiezioni che sono alterati quando viene alterato il contenuto della cella mj . Gli elementi della matrice corrispondenti a celle
che non si proiettano in quellelemento della proiezione conterranno degli
zeri; se la proiezione solo parziale si avranno numeri compresi tra 1 e
0. Il valore corretto del modello (il vettore m) si ottiene dallequazione:
(A A)m = m0

(22.30)

Leggendo questa equazione si vede che, retroproiettando le proiezioni ottenute con il modello m, si deve ottenere il dato retroproiettato e cio
m0 . Si abbia un modello m con una sola cella contenente un valore non
nullo e cio si voglia determinare la risposta allimpulso del sistema; questa risposta sar spazio - variante tuttavia, e i risultati pertanto potranno
cambiare al variare della posizione dellimpulso. Il risultato dellapplicazione dellequazione (22.28) corrisponder ad una approssimazione del
modello m0 in cui avremo s un picco in corrispondenza dellimpulso di
ingresso (la cella a contenuto non nullo) ma non solo in quel punto; molti
altri elementi del modello saranno non nulli. Nel caso della tomografia
queste due operazioni in cascata corrispondono alla proiezione seguita
dalla retroproiezione non filtrata. La risposta allimpulso di questo sistema una struttura a stella, centrata sullimpulso di ingresso e con tanti
raggi quante sono le proiezioni.
Quindi, nel caso della tomografia, lapplicazione della matrice (A A)1
corrisponde alla focalizzazione di questa stella di raggi. Questa operazione si realizza filtrando le proiezioni con il filtro Pe() avente una
caratteristica di ampiezza proporzionale alla frequenza radiale . Si osservi che la semplicit di questultimo risultato dovuta alla regolarit
del rilevamento.
Il caso generale, quando cio le geometrie non sono controllate e quindi la matrice A completamente libera, ben pi complesso. Si osservi
poi che nel caso pi generale, la matrice A non fatta solo di uni e
496

22.7 TECNICHE ITERATIVE

zeri, ma la retroproiezione su una cella dovr tener conto della lunghezza (frazionaria) dellintersezione tra la cella e il raggio di retroproiezione
pesando la retroproiezione in funzione di questo dato. Inoltre, potrebbe
darsi che la tomografia che stiamo analizzando e una tomografia di tempi di percorso, in cui cio il modello ricercato la distribuzione della
lentezza di propagazione (inversa della velocit) dei raggi (acustici od
elettromagnetici) allinterno del corpo e le misure sono i tempi di percorso, per lappunto. In questo caso, i percorsi dei raggi dipendono, per
la legge di Snell, dalla distribuzione delle velocit, e pertanto il sistema
diventa non lineare, con complicazioni ancora maggiori.

22.7.3

Interpretazione stocastica della pseudo inversione

Il problema della determinazione di m a partire da d anche risolvibile


con le ben note tecniche di stima. Infatti, si supponga che siano note le
M misure degli N parametri, questa volta sommate a rumore:
d = Am + n
La stima di m a partire da d sar ottenuta in base al principio di
ortogonalit:
b = Bd
m

E [(Bd m) d ] = 0
Ma:

E [dd ] = AE [mm ] A + E [nn ]


e supponendo per semplicit
E [mm ] = 2m IN ; E [nn ] = 2n IM
dove con IN , IM stata indicata la matrice identica negli spazi a N ed
M dimensioni ripsettivamente,
E [dd ] = 2m AA + 2n IM
E [md ] = 2m A
497

CAPITOLO 22 LA TOMOGRAFIA

da cui

B 2m AA + 2n IM = 2m A

1
2n

B = A AA + 2 IM
m

(22.31)

Ora, usando il cosiddetto lemma di inversione delle matrici, verificabile


per sostituzione, per cui:

si ha:

1
DA1
(BCD + A)1 = A1 A1 B C1 +DA1 B
1

2n

A
B = A A + 2 IN
m

(22.32)

e, per un buon rapporto segnale rumore, si ottiene la (22.28). Si osservi


che la (22.32) prevede linversione di una matrice [N N] mentre invece
la (22.31) richiede linversione di una matrice [M M], di dimensioni
possibilmente ben maggiori.

22.7.4

Interpretazione tomografica del gradiente

Possiamo ora tentare di dare uninterpretazione tomografica delle tecniche di ottimizzazione con il metodo del gradiente e del gradiente coniugato.
Cerchiamo di risolvere lequazione (22.30) con il metodo del gradiente;
a partire da un modello iniziale, ad esempio m0 , calcoliamo il gradiente
della forma quadratica in (22.27) e procediamo lungo questa direzione
fino ad arrivare ad un minimo.
m1 = m0 + 0 g0 ;

g0 = A (Am0 d)

(22.33)

In sostanza il nuovo modello m1 ottenuto dal precedente aggiungendo


un vettore proporzionale al gradiente; questo non altro che la retroproiezione del residuo e cio la retroproiezione della dierenza tra la
proiezione del modello iniziale ed i dati; il valore di 0 determinato imponendo che il nuovo gradiente (quindi il nuovo residuo) A (Am1 d)
sia ortogonale al gradiente precedente (e cio il residuo precedente). Poi
si retroproietta il nuovo residuo e si calcola il nuovo gradiente, si determina il passo con la condizione di ortogonalit e cos via. In altre
498

22.7 TECNICHE ITERATIVE

parole abbiamo mostrato lequivalenza tra la retroproiezione del residuo


e il metodo del gradiente.
Il metodo del gradiente coniugato che si studier nel prossimo capitolo invece preveder la retroproiezione di qualcosa di diverso dal residuo,
e cio la parte del residuo corrispondente ad un modello ortogonale coniugato con il modello utilizzato sino a questo punto. Cos si decompone
lo spazio dei modelli secondo vettori ortogonali coniugati sotto la norma
indotta dalla matrice A A e cio tali che i modelli corrispondenti siano
ortogonali dopo il filtraggio con il -filtro. In questo modo, leetto di questo filtraggio pu venire tenuto in conto e la soluzione viene
determinata progressivamente.

499

Capitolo 23
Tecniche di ottimizzazione
23.1

Il gradiente

Supponiamo di volere risolvere il sistema di equazioni lineari:


Ra=b

(23.1)

dove R e a, b sono rispettivamente una matrice [N N] definita positiva e due vettori [N M] corrispondenti alla matrice del sistema ed ai
termini incogniti e noti rispettivamente. Nel seguito, come di consueto,
supporremo M = 1. Invece di risolvere il sistema, possiamo cercare il
minimo della forma quadratica:
1
a R a b a = Q(a)
2

(23.2)

Si pu minimizzare Q(a) con la tecnica del gradiente. Indicando con a0


il valore iniziale assegnato al vettore a e f 0 lerrore iniziale si ha:
a0 = a + R f 0

(23.3)

R a0 = R(a + f 0 ) = b + f 0

(23.4)

Levoluzione con le successive iterazioni della soluzione approssimata pu


essere rappresentata con la convergenza a 0 della sequenza dei vettori
(delle matrici) degli errori f 0 , f 1 , f N . Il gradiente della forma quadratica
nel punto di coordinate a0 (supponiamo M = 1):
0 = a Q(a0 ) = R a0 b = R f 0
501

(23.5)

CAPITOLO 23 TECNICHE DI OTTIMIZZAZIONE

Con la tecnica della massima pendenza (steepest descent) aggiorniamo


la soluzione alliterazione k-esima (ak ) aggiungendo un vettore la cui
direzione quella del gradiente k e la cui ampiezza determinata con
unottimizzazione della variabile k :
ak+1 = ak + k k ; k = R f k

(23.6)

ak = a + f k

(23.7)

f k+1 = f k + k R f k = (I + k R) f k

(23.8)

Ricordando che
risulta:
Volendo mantenere costante, risulta:
f k+1 = (I + R)k+1 f 0

(23.9)

Per avere stabilit nelle iterazioni, come gi visto per il filtraggio adattativo, si ha:
2
(23.10)
<
T rR
In questo modo, gli autovalori della matrice in parentesi nellequazione
(23.9) sono minori di 1 e quindi lerrore converge a 0, seppure con infiniti
passi. Di nuovo, si incontra il problema di una lenta convergenza nelle
componenti di f 0 dirette verso gli autovettori di R con autovalori piccoli;
il problema grave se gli autovalori di R sono di ampiezze assai dierenti
tra loro, anche se sono tutti positivi visto che R positiva definita per
ipotesi. Il valore ottimo di k determinato minimizzando ad ogni passo
la forma quadratica Q(a):

(f k + k R f k ) R(f k + k R f k ) = 0
k

(23.11)

e pertanto:
k =

f k R2 f k
k k
=

k R k
f k R3 f k

(23.12)

Si osservi che i vettori Rf k = k e Rf k+1 = k+1 sono ortogonali.


k = R f k R f k+1 = k+1
502

(23.13)

23.2 IL GRADIENTE CONIUGATO

In altre parole, con la tecnica della discesa lungo la linea di massima


pendenza e con passi di lunghezza ottimizzata, si prosegue lungo la direzione di partenza fino a che non si sia su un minimo e perci tangenti
ad una curva di livello. Pertanto, le direzioni successive sono ortogonali tra loro. Questo limita di molto lecienza nel caso di dispersione
degli autovalori, come verr meglio chiarito nel paragrafo successivo sul
gradiente coniugato.

Figura 23.1: Ottimizzazione con la tecnica del gradiente

23.2

Il gradiente coniugato

23.2.1

Ortogonalit coniugata e incorrelazione

Prima di discutere la tecnica del gradiente coniugato, opportuno introdurre una interpretazione di tipo stocastico per una maggiore comprensione. Si consideri x, un vettore casuale di N elementi, caratterizzato da
503

CAPITOLO 23 TECNICHE DI OTTIMIZZAZIONE

una matrice di covarianza R. Si abbia cioe


E[xx ] = R
La matrice R e di dimensioni [N N]. Si considerino ora delle combinazioni lineari delle N componenti {xn } del vettore x e cio
yi = ai x

(23.14)

ottenute facendo un prodotto scalare tra x ed un qualsiasi vettore ai di


N componenti. Risulta che:
E[yi yj ] = E[ai x x aj ] = ai R aj

(23.15)

Le variabili casuali yi , yj sono incorrelate se E[yi yj ] = 0 e cio se


ai R aj = 0

(23.16)

I due vettori ai , aj sono allora detti essere ortogonali coniugati tra di


loro sotto la norma della matrice R. Indicando con {ai,n } le componenti
del vettore ai , lungo gli autovettori en della matrice R, risulta:
N
X

n ai,n aj,n = 0

(23.17)

n=1

I due vettori sarebbero anche ortogonali tra loro se


N
X

ai,n aj,n = 0;

n = cost

(23.18)

n=1

e quindi se la matrice R fosse una matrice identica e il processo fosse


bianco. Si ricordi che R una matrice semi definita positiva visto che
E[yi2 ] 0 per qualsiasi vettore ai non nullo. Lonnipresenza del rumore
ci consente poi di trascurare il caso in cui la matrice R abbia autovalori
nulli. Abbiamo perci visto come allincorrelazione delle due variabili
casuali yi , yj corrisponda lortogonalit coniugata dei vettori deterministici ai , aj sotto la norma della matrice R. Vediamo ora come anche
le tecniche di stima lineare hanno una corrispondenza nel settore della
minimizzazione di forme quadratiche. Utilizzando il vettore casuale x, si
504

23.2 IL GRADIENTE CONIUGATO

cerchi di stimare in modo lineare ottimo una variabile casuale ; ci si


ottiene mediante:
(23.19)
= a. x
una combinazione lineare delle componenti di x ottenuta facendone il
prodotto scalare con un vettore az da determinare in modo ottimale.
Senza ledere la generalit si pu stimare anzich la variabile casuale
residuale:
(23.20)
z = a0 x
dove a0 un vettore qualsiasi, tipicamente unipotesi iniziale di stimatore,
da ranare poi con il calcolo successivo. Dobbiamo pertanto determinare
in modo ottimale az per calcolare az x stimatore ottimo della variabile
casuale z.
(23.21)
z = az x
Il vettore az si trova con la minimizzazione dellerrore quadratico medio,
oppure con il principio di ortogonalit:
E[2 ] = E[z az x]2 = E[z 2 ] + az R az 2az E[zx]

(23.22)

Il minimo si raggiunge per


R az = b = E[zx]

(23.23)

Le componenti di b e cio {bi } sono date da


bi = E[zxi ]

(23.24)

Lo scalare E[2 ], i vettori az , b e la matrice R hanno il ruolo che avevano rispettivamente nel paragrafo precedente Q(a), a, b e la matrice
R. Inoltre il vettore gradiente del paragrafo precedente corrisponde alla
correlazione tra errore di stima e vettore dati:
= R a b = E[x]

(23.25)

Quando il gradiente nullo, i dati sono incorrelati con lerrore di stima


e il problema risolto.
505

CAPITOLO 23 TECNICHE DI OTTIMIZZAZIONE

Figura 23.2: Ottimizzazione con la tecnica del gradiente coniugato

23.2.2

Connessione con la ricorsione di Levinson

Si voglia ora stimare la variabile casuale z con una tecnica corrispondente a quella ricorsiva di Levinson. In altre parole, si inizi a stimare z
usando solo la prima componente di x poi le prime due e cosi via, fino ad
utilizzare tutte le N componenti. Il punto chiave che, passando dallo
stimatore di lunghezza m a quello di lunghezza m + 1, utilizziamo, per
migliorare la stima, lerrore di predizione allindietro e cio la dierenza tra il valore eettivo della m + 1-esima componente di x e la sua stima
in base alle prime m componenti di x che gi sono state utilizzate per
stimare z. In questo modo arricchiamo la stima fatta in precedenza con
luso di una nuova variabile casuale che da un lato incorrelata con
tutti i dati utilizzati finora (e quindi porta nuova informazione) ma daltra parte pu essere correlata con la variabile casuale da stimare. Quindi,
lerrore di stima non pu che decrescere e la minimizzazione dellerrore
quadratico medio pu essere fatta progressivamente su di una variabile
506

23.2 IL GRADIENTE CONIUGATO

alla volta senza distruggere lottimizzazione fatta con le variabili precedenti. Inoltre, la determinazione dello stimatore ottimo termina in N
passi, perch terminer quando abbiamo utilizzato tutte le N variabili
casuali, tra loro incorrelate, con cui possiamo rappresentare il vettore
casuale x.
Nel caso generale del gradiente coniugato il ragionamento va come
segue: la ricerca dello stimatore ottimo az parte dalla determinazione
di un primo stimatore di prova a0 . La prima direzione D0 pu essere trovata con il criterio della massima pendenza e quindi calcolando il
gradiente dellerrore quadratico medio:
D0 = a(

a R a
b a)|a=a0 = R a0 b
2

(23.26)

Poi, si cerca la lunghezza del passo minimizzando lerrore quadratico


medio e quindi imponendo che la variabile casuale che corrisponde allerrore residuo sia incorrelata rispetto al dato e cio la variabile casuale
D0 x pertanto si calcola il numero 0 tale che:
(R a0 b) D0
0 =
D0 R D0

(23.27)

a1 = a0 + 0 D0

(23.28)

Il nuovo stimatore a1 :

Ora un altro passo; vogliamo minimizzare ancora lerrore quadratico


medio, muovendoci nella direzione D1 ; come nella ricorsione di Levinson, vogliamo che la variabile casuale D1 x sia incorrelata con la variabile
casuale che abbiamo usato prima, per utilizzare solamente dell informazione nuova. Per accelerare la minimizzazione dellerrore, la nuova
direzione D1 sar vicina al gradiente in a1 , e cio g1 = Ra1 b, per quanto possibile; deve anche per essere incorrelata (ortogonale coniugata)
rispetto alla prima direzione presa D0 . Quindi:
D1 = Ra1 b + 1 D0 = g1 + 1 D0

(23.29)

dove 1 si trova imponendo lortogonalit coniugata tra D1 e D0 .


g1 R D0
1 =
D0 R D0
507

(23.30)

CAPITOLO 23 TECNICHE DI OTTIMIZZAZIONE

Lalgoritmo procede aggiornando lo stimatore a1 spingendosi nella nuova


direzione D1 con lopportuna lunghezza del passo; ci avviene ortogonalizzando lerrore di stima residuo rispetto al nuovo dato e cio la variabile
casuale D1 x e quindi imponendo lortogonalit tra il gradiente g2 nella
nuova posizione a2 e D1 :
a2 = a1 + 1 D1

(23.31)

g1 D1
(23.32)
1 =
D1 R D1
A questo punto dobbiamo individuare unaltra direzione D2 e cio unaltra variabile casuale D2 x con cui fare unulteriore stima del residuo. Per
quanto detto scegliamo questa direzione con il solito criterio di stare
vicini al gradiente in a2 pur mantenendo lortogonalit coniugata con la
direzione D1 risulta allora:
D2 = R a2 b + 2 D1

(23.33)

La variabile 2 viene scelta con il criterio di imporre che la nuova variabile


casuale D2 x sia incorrelata con quella usata precedentemente e cio D1 x.
Quindi:
g2 R D1
2 =
(23.34)
D1 R D1
Se si desidera ancora decrescere il valore quadratico medio dellerrore di
stima, ci dobbiamo comunque muovere nella direzione del gradiente dellerrore rispetto al vettore a. Pur cos facendo, ci si muove verso una
direzione ortogonale coniugata rispetto a tutte le direzioni precedenti
(aggiungere una variabile casuale incorrelata con le variabili casuali finora utilizzate) altrimenti le minimizzazioni precedenti avrebbero potuto
essere migliorate portando ad errori inferiori. Il nuovo vettore perci non
pu puntare verso una delle direzioni gi utilizzate.
Il residuo incorrelato con le componenti per cui stata fatta la
minimizzazione e pertanto punta in direzione ortogonale coniugata ad
esse; lo spazio dei parametri si riduce di una dimensione ad ogni passo
fino a vuotarsi in N passi. Lalgoritmo quindi prosegue e termina in N
passi, con la determinazione dello stimatore ottimo az . Si osservi che gi
nei primi passi si era trovata una buona approssimazione dello stimatore;
ci tanto pi vero quanto maggiore la dispersione degli autovalori
della matrice R.
508

23.3 GRADIENTE E GRADIENTE CONIUGATO

23.3

Gradiente e gradiente coniugato

Sulla base delle osservazioni statistiche fatte nella sezione precedente si


comprende come mai il metodo del gradiente coniugato sia assai pi efficiente di quello della massima pendenza. Anzitutto, si ha convergenza
allottimo in N passi e non in infiniti come nella massima pendenza.
Infatti, lottimizzazione progressivamente fatta rispetto a variabili tra
loro incorrelate, fino a che tutte le componenti del vettore x siano perfettamente descritte. Ancora, la convergenza la pi veloce possibile, e cio
in pratica dopo pochi passi le componenti di az relative agli autovettori
della matrice R con autovalori pi elevati sono determinate con buona
cura. Successivamente sono determinate tutte le altre componenti, fino
alla soluzione completa cui si giunge in N passi, come detto.
Il paragone classico che viene fatto per spiegare la tecnica del gradiente coniugato quello relativo ad uno sciatore in un canalone. Con la
tecnica del gradiente, lo sciatore parte lontano dal fondo del canalone e
si avvia lungo la direzione della linea di massimo pendio; poi, prosegue
sempre diritto (traversando il canalone) fino a quasi risalire il pendio; si
ferma cio quando gli sci sono tangenti ad una curva di livello (Il punto
di partenza in alto a destra nella fig 23.1; attenzione, le curve di livello
non sono equispaziate). Poi riparte per il tratto successivo, riorientando
gli sci nella direzione di massimo pendio, e quindi in una direzione ortogonale a quella precedente. Ci lo porta a ritraversare il canalone fino
a portarsi un poco pi in basso sul versante opposto; in altre parole lo
sciatore fa numerosissimi passi brevi. Questa situazione corrisponde ad
una forma quadratica caratterizzata da un forte dispersione degli autovalori (piccolo nella direzione del canalone, grandi nelle direzioni normali
ad esso).
Con la tecnica del gradiente coniugato, lo sciatore forzato ad allontanarsi dalla direzione di massimo pendio procedendo verso una direzione
nuova rispetto allultima direzione presa ed anche a tutte le precedenti.
Pertanto, invece di disporre gli sci lungo la direzione di massimo pendio,
vi rinuncia e imbocca il canalone facendo passi pi lunghi, anche se in
una direzione in cui il pendio meno ripido. Nel caso della fig. 23.2, si
arriva al minimo di quota in due passi, coerentemente con il fatto che se
la minimizzazione fatta con il gradiente coniugato, si arriva al minimo
in N passi nel caso di una forma quadratica N - dimensionale). Il primo
passo lo stesso che per il metodo del gradiente. Con il gradiente co509

CAPITOLO 23 TECNICHE DI OTTIMIZZAZIONE

niugato, quindi, la direzione di discesa si allontana progressivamente da


quelle di massima concavit per esplorare le direzioni dove le concavit
sono minori. Peraltro, le successive ottimizzazioni non sono in contrasto tra loro e progressivamente portano alla soluzione. Negli ultimi
passi, lo sciatore nel campetto vicino al traguardo e anche se si ferma,
non accade nulla di grave. In altre parole, la presenza di errori di stima
della matrice di covarianza portano comunque a errori nel posizionamento del minimo globale (pozzanghera vicino al traguardo). Peraltro, anche
se lo sciatore non arriva esattamente al traguardo (il processo termina
prima di N passi), la perdita di livello minima.

510

Potrebbero piacerti anche