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
33
33
2 La
2.1
2.2
2.3
2.4
2.5
2.6
2.7
2.8
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
INDICE
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 . . . . .
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
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
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 . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
165
165
167
177
178
179
179
182
184
186
187
190
191
.
.
.
.
.
.
195
195
196
200
203
204
205
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
209
209
212
214
215
216
218
221
222
224
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
227
227
229
232
237
viii
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
INDICE
11.4
11.5
11.6
11.7
11.8
INDICE
.
.
.
.
.
.
.
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
INDICE
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
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
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
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
Prefazione
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
1.1 INTRODUZIONE
CAPITOLO 1 IL CAMPIONAMENTO
+
X
n=
(t nT T0 ) =
+
X
n=
x(nT )(t nT T0 )
(1.3)
+
1 X j2mfc T0
(t nT T0 )
e
( 2mfc );
T m=
n=
(1.4)
+
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
1.1 INTRODUZIONE
X(f)
xc(t)
Segnale campionato
Xc(f)
fn fc
2fc
CAPITOLO 1 IL CAMPIONAMENTO
1.2
Ricostruzione di un segnale
-fn
fn
1.3
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
CAPITOLO 1 IL CAMPIONAMENTO
fmin f fmax ;
fmax + fmin
f0 =
2
fmax fmin = B;
(1.8)
0f B
(1.9)
B
B
f
2
2
(1.10)
1.4
Il filtro antialias
sin(t/T )
t/T
H() = T ; || < /T
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
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
N1
X
xn ej2f nT
(2.1)
n=0
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)
+
X
xn ej2f nT
(2.3)
n=
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)
WN
2
= exp j
N
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
2.2
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
(2.7)
(2.8)
la convoluzione circolare:
N1
1 X
xm ynm X(k)Y (k)
N n=0
(2.9)
2.3
(2.10)
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
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
Qualora, come spesso accade, la sequenza originaria di lunghezza illimitata, per procedere alla convoluzione con un filtro di lunghezza M
15
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
Risultato della
convoluzione
Primo pezzo del segnale da
convolvere
N-M+1
M-1
M-1
N-M+1
Risultato della
convoluzione
segnale da convolvere
M-1
M-1
N
N
2.4
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 ;
18
h (t)
2.4.1
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)
Figura 2.4: a) Risposta impulsiva di un ritardatore filtrata passabasso b) Campionamento nei tempi c) Campionamento nelle frequenze
(Periodicizzazione nei tempi)
N
' 100 T = .0314 ;
> 3 N > 95
T
100
21
(2.13)
2.5
2.5.1
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;
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
M sin(nN/MN)
1 sin(n/M)
=
MN tan(n/MN)
N tan(n/MN)
23
(2.15)
sin(n/M )
n/M
fn =
1 sin(n/M)
N sin(n/MN)
2.6
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.
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)
(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.1
Le farfalle
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)
In scrittura matriciale:
X(k)
1 1
G(k)
k
X(k + N/2)
1 1
WN H(k)
(2.22)
inoltre:
k+N/2
WN
= WNk
G(k)
H(k)
-K
X (k)
X (k + N 2)
-1
2.6.2
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
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
(2.23)
(2.24)
i = 0, 1;
Pertanto:
2j i Si () = S() + (1)i S ();
2.7.2
i = 0, 1
(2.25)
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
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
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)
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)
32
Capitolo 3
Ricostruzione di segnali
continui
3.1
+
X
n=
xn
)
sin (tnT
T
(tnT )
T
+
X
n=
xn sinc
t nT
T
(3.1)
sin(x)
x
(3.2)
h(t)
-T/2
T/2
t
Filtro interpolatore che rispetta i dati
ma non le rette
h(t)
2T
2T
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)
+
X
n=
xn hk (t nT )
xk (nT ) = xn ; hk (0) = 1;
hk (nT ) = 0;
(3.4)
n 6= 0
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)
3.3
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
h2 (t) =
38
1
(h1 (t) h0 (t))
T
(3.9)
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.
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
39
3.3.1
0x=
t
1
T
1x2
(3.11)
(3.12)
3.3.2
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
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
= log
1
;
1x
|x| < 1
(3.13)
3.5
3.5.1
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
(3.15)
0
(x2 + x3 )
+yi0 (x 2x2 + x3 ) + yi+1
(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
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
3.5.3
(3.20)
3j sin
;
2 + cos
= T
(3.21)
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)
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
s(nT ) ;
Il segnale disponibile sia invece :
tn nT = n << T
s(tn );
ds(t)
ct=tn
dt
2
ds
dt
3.6.2
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
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
N
X
a1,n z n
(4.1)
n=M
CAPITOLO 4 LA TRASFORMATA Z
ank bk
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)
!
!
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)
e posto:
n=k+l
si verifica che:
C(z) =
X X
n
ank bk
z n =
cn z n
N
X
an z n
n=0
N
X
an z
= a0
n=0
N
Y
(1 zn z 1 );
(4.4)
n=1
(4.5)
CAPITOLO 4 LA TRASFORMATA Z
4.2
yn =
xnk hnk,k =
k=Mnk
nN
Xl
xl hl,nl
l=n+Ml
N
X
k=M
xnk hk =
nN
X
xl hnl ;
l=n+M
4.3
(4.6)
(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)
CAPITOLO 4 LA TRASFORMATA Z
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
4.4.1
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
4.4 IL PIANO Z
4.4.2
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
T
T
jT /2
=
sign ()
j sin
= ] 2e
2
2
2
4.4 IL PIANO Z
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
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
A(z)
= z N A (1/z);
|A(z)|z=ejT = |A(z)|
z=ejT
(4.9)
4.4.4
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
CAPITOLO 4 LA TRASFORMATA Z
fase di A(z)A(z)
sar quella corrispondente ad un ritardo pari a NT e
cio:
[A(z)A(z)]|
z=ejT = NT
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
N1
X
xn z n
n=0
N1
X
xn ej2f nT
n=0
N1
X
n=0
64
2nk
N
4.4 IL PIANO Z
4.4.6
(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)
X
d
d X
n
z X (z) = z
xn z =
nxn z n
dz
dz n=
n=
4.4.7
(4.14)
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
uR
u + dA() 2
u d d
= t R +
|A()|2 d
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)
4.5
Poli
1
1
;
=
B(z)
1 z0 z 1
B(z) = 1 z0 z 1 ;
66
(4.19)
4.5 POLI
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)
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
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
X(z)
1 z0 z 1
(4.26)
(4.27)
1
(yn xn )
z0
(4.28)
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
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)
(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)
CAPITOLO 4 LA TRASFORMATA Z
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
4.7
1
1
z 1 (1
)ej0
; 0 = 0 T
1
: = 0 + ; || << 1
1 (1 )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).
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
hanno modulo sempre unitario (sul cerchio unitario, ovviamente) e rappresentano sfasatori puri, causali e convergenti se il polinomio A(z) a
minima fase.
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
;
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
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
CAPITOLO 4 LA TRASFORMATA Z
X(z)
1
2z 1 cos
+ 2 z 2
= 0T
(4.36)
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)
f0
(k1 + 2k2 ) (z + z 1 )k2
(4.40)
CAPITOLO 4 LA TRASFORMATA Z
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
80
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)
4.8
(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
CAPITOLO 4 LA TRASFORMATA 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
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
4.9
CAPITOLO 4 LA TRASFORMATA Z
(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
a|n|
1 a2
(4.52)
(4.53)
(n + 1) (n + 2) n
a ; n>0
2
84
(4.54)
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)
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
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
20 log 10 H ( )
B anda di
transizione
1+ 1
1 1
B anda
passante
B anda
oscura
5.2
WR () = NT sinc(fNT )
(5.2)
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
NT
2|t|
; |t|
NT
2
WT () =
fNT
NT
sin c2
;
2
2
(5.3)
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
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.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
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
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
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
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
N
X
2hn cos(nT )
(5.11)
n=1
Vogliamo che
W ()|H() D()|
(5.12)
= (1)i (0) ;
(0)
(0)
i = 1, . . . N + 2; i = 2fi
5.6
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
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
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
sin t/T
;
t/T
per
D( )
D( )
/2
/
/
/2
h(n)
(5.14)
2
T -j 2
sin
e
2
T
D 0 ( )
2 /T
D 0 ( )
/2
/
/2
h 0 (n )
1 /T
-1 /T
(5.15)
(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)
(1 ejT )
1 + ejT
1 + ejT
= aY ()
+ bX()
T
2
2
Y ()
2 (1 ejT )
= aY () + bX()
T (1 + ejT )
(5.19)
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)
vn =
a=
2
T
a1
1
vn1 +
(en + en1 )
a+1
1+a
101
(5.24)
(5.25)
2
T
tan
2
T
D r ( )
j
/
D
( )
/2
/
/2
h r(n)
4/T
2/T
0
-4/T
a1
< 1 se > 0
a+1
(5.26)
2 1 z 1
T 1 + z 1
(5.27)
E()
Vr()
= RC
a = 2/T
5.7.2
La trasformazione bilineare
T
2 1 z 1
2
tan
=
j
T 1 + z 1
T
2
(5.28)
2
T
a r c tg a
2
T
2d T 2
] + ...
12
(5.31)
2
T
tan
2
T
M ( )
1+1
11
s
p
2
T
2
sT
1+1
11
s =
ta n
H a( )
H d( )
2
T
tan
2
T
105
a1
a+1
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
.
5.8
2
T
106
T nT /
e
; n = 0, 1, ....
e quindi la trasformata z
H (z) =
1
T
1 eT / z 1
T 1 + eT / z 1
2 1 eT / z 1
5.9
5.9.1
AN (z) |H (z)|
107
2
T
= 20)
108
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
N
X
ah,N xnh + wn
(5.34)
h=1
W (z)
AN (z)
E[xn xnm ]
N
X
= E[
ah,N xnh xnm ] + E[wn xnm ] =
h=1
(5.35)
rm =
N
X
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
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.2
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
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
5.9.3
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)
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
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
(5.41)
(5.42)
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
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 2w,N1
115
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
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)
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)
(5.49)
da cui risulta :
ah,N 1 =
ah,N cN aNh,N
1 c2N
(5.50)
5.9.6
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, ...
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
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
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)
|N() + N()|
|N() N()|
(5.60)
5.11
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)
(n + 1 + 2k);
2n
120
0k n1
(5.62)
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
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]
122
Capitolo 6
Campionamento in frequenza
6.1
Introduzione
+
-
Oscillatore
(k cicli in N campioni)
Ritardatore di
N campioni
Figura 6.1:
frequenza
(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
impulso 2
NT
risposta delloscillatore
all impulso 1
t
risposta delloscillatore
allimpulso 2
t
risposta complessiva
delloscillatore ai due
impulsi
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 )
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
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
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
1 1 ejN T
1 ejNT /2 sin(NT /2)
=
=
2
N 1 ej( N kT )
N ejT /2 sin(T /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
=
1 n = 0, 1, ..., N 1
W () wn =
0
altrove
2fk =
130
!
1 z N Re (Hk ) z 1 Re Hk WNk
H(z) = 2
N
1 + z 2 2z 1 Re WNk
6.3
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)
6.4
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
}
|
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
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:
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
0.5
Imaginary part
Imaginary part
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
6.5
1
1+
az 1
+ z 2
; |a| 2
(6.5)
(6.6)
2k
a = 2 cos(2k/N)
N
a
2T sin
(6.7)
yr,n = 2 sin
(6.10)
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
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
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
sin (N 1)
sin
139
Capitolo 7
Strutture canoniche e
riverberanti
7.1
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
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
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
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)
xn
b0
z-1
a1
a2
z-1
z-1
b3
b2
a3
b1
yn
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)
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
D(z)
D(z)
(7.8)
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)
146
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)
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 )
7.3
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
Ai + cAi = tAi ;
1+c=t
(7.9)
Ai
tAi
cdAi
Y1
Y2
c , t
Ai
tAi
cAi
Y1
Y2
c,t
(7.10)
(7.11)
Y2 Y1
Y2 + Y1
149
(7.12)
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
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
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
c1 , t1
c2 , t2
t1 c2 t01 z 1
c1 + c2 z 1
=
1 + c1 c2 z 1
1 + c1 c2 z 1
151
(7.15)
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
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).
Sn0 (z)
Sn+1 (z)
tn c0n
(7.16)
0
0
Dn+1 (z)
Dn (z)
cn tn
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)
n+1
n
n-1
D'n
Dn+1
Dn
Sn
Sn+1
S'n
c'n , t'n
cn , tn
7.6
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
Sn
1/Q n
S n+1
-c n
cn
D n+1
z -1
Qn
Dn
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
Sn+1 (z)
1 cn z 1
Sn (z)
(7.19)
1
Dn+1 (z)
Dn (z)
cn z
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
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
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)
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)
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)
eN (z)
A
AN (z)
1
AN (z)
Q
2
z N N
n=1 (1 cn )
DN+1 (z) = I(z)
AN (z)
(7.22)
(7.23)
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)
7.7.1
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)
(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
(7.28)
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
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
164
Capitolo 8
Filtri polifase
8.1
8.2
Decimazione e interpolazione
xn
h(n)
yn
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
xn
yn
M
T
h1
M
T
h2
M
T
hN-1
M
xn
h(n)
yn
xn
h0
yn
T
h1
T
h2
T
hN-1
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)
171
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
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
174
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
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.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
fN/3
fN
fc
fc = 1/(3T)
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
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
8.4.1
Banchi di filtri
La matrice di modulazione
M1
X
m=0
mr
WM
Em (z = 1) = 0 se r 6= 0
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
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
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
183
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
XH () = X()HH ()
184
(8.8)
HL()
XL
R1
FL()
X()
Y()
HH()
XH
R2
FH()
(8.9)
R2 () = XH () + XH ( 0 )
(8.10)
X()
= R1 ()FL () + R2 ()FH () =
(8.11)
(8.12)
(8.13)
8.5.2
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.3
(8.18)
(8.19)
(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)
Figura 8.17:
equivocate)
(8.22)
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
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
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
Figura 8.18:
193
Capitolo 9
Quantizzazione dei segnali
9.1
9.1.1
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
Vpp 2 -B
-B-1
Vpp 2
q = x- xq
q = x- xq
Vpp
-B-1
2
1
1 2 cos z 1 + 2 z 2
(9.4)
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)
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
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
201
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
h=1
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
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
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
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)
9.3
I cicli limite
(9.10)
yn1
= Alim
2
2
205
Vpp
2Bs
(9.11)
xn
yn
[(1-)y n-1 ] q
y n-1
z -1
(1-)
206
Figura 9.7: Risposta impulsiva con e senza leetto del ciclo limite
207
Capitolo 10
Le trasformate di Hilbert e
chirp z
10.1
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
xi
xi {xi} = X( )
xp,i
x p, i {xp, i} = Re{ X( )}
xd,i
210
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)
(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)
i=0
H( ) = {sign(i)}
2/
2/
10.2
Sfasatori puri di /2
-j
hi = -1 { H( )} =
1 (1)
iT
i
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
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
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)
X(k)
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
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
10.4
(10.16)
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
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)
(10.20)
219
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.
220
10.6
La trasformata chirp z
N1
X
n=0
xn zkn ; k = 0, ...K 1
(10.21)
dove ora
zk = P Qk
(10.22)
2
; K=N
N
(10.23)
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)
e ponendo:
n2
(10.26)
xn
; Dk = Ck hk
P n hn
risulta:
Dk =
N1
X
yn Q
(kn)2
2
n=0
= yn hn
(10.27)
10.7
Il segnale chirp
N
N
n2
hn = exp j
; <n< ;
N
2
2
222
0.5
0
-2.5
-1.25
1.25
2.5
x
-0.5
-1
0.5
0
-2.5
-1.25
1.25
2.5
x
-0.5
-1
exp t2 exp f 2
223
jk
1
f2
2
c (t) = exp jkt C (f ) = exp j j
k
4
k
> 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
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
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)
gn = x1,n wn e
T1 2
n
2T2
T1 2
n
2T2
; hn = e
(10.31)
N1
X
x1,n wn e
T1 2
n
2T2
T1
(nk)2
2T2
(10.32)
n=0
K1
T1 2
T1 X
j
k
fk k e 2T2 ejkm
2 T2 k=0
(10.33)
226
Capitolo 11
Processi casuali: generalit
11.1
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)
E[xm xmi ] = 2x i
la matrice di covarianza Rx diagonale:
Rx = 2x I
227
(11.4)
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
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
Consideriamo una sequenza di campioni {y1 , y2 ....yN } ordinata in un vettore y . La sequenza {y1 , y2 ....yN } generata dalla convoluzione tra una
229
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
(11.8)
1
|F ()|
rf ( ) |F ()|2 ; rg ( ) |G ()|2 =
1
|F ()|2
rf ( ) rg ( ) ( )
(11.9)
Mp 2m ..., 2 , , 1, , 2 ..
2 2
Mp = m
..
..
..
..
.. ..
..
..
.. 2
(11.10)
1
2
,
,
0,
0,
0..
;
...0,
0,
0,
0,
,
1
+
2m (1 2 )
231
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)
11.2.1
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
N1
X
xn W nk
(11.15)
n=0
(11.18)
N 2
[1 + (k) + (k N/2)]
2 x
(11.19)
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) =
(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)
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)
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
|H0 |2
2
= N x ...
...
...
...
...
...
...
... |HN2 |2
...
|H1 |
235
0
|HN1 |2
(11.28)
Ry = E[y y ]
r0
r1
0
Ry =
...
r1
r1 0
(11.29)
. . . r1
r0
r1 . . .
r1
r0
...
...
...
...
r1
r0
(11.30)
11.3
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)
1 0 ... 0
0
0 2 ... 0
0
0 0 ... N1 0
0 0 ... 0 N
237
h
i
E = e1 e2 ... eN1 eN
(11.33)
(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.1
(11.35)
(11.36)
1
R
1
1
1
W RY W = W Y W
N
N
N
N
N
(11.37)
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
11.3.2
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)
N
1
X
Yk 2
1
)
exp (
p(y) =
F
(2)N/2 |N
|F
|
|
k
k
k=0
k=0
(11.42)
11.3.3
Un esempio numerico
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
per la ciclicit
0
A=
1 0 0
1 1 0
0 1 1
0 0 1
2 1 0 1
1 2 1 0
Ry = E y y = A Rx A =
0 1 2 1
1 0 1 2
241
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
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
di Nyquist.
1
1
Ry
=0
1
1
1
1
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 |
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
[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
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
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
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
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
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)
246
11.5
11.6
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
N
N
P {xi }i=1 | = LD | {xi }i=1
248
(11.48)
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
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 :
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
E
b =
N
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.2
X xi
N
; E [b
p] =
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
11.6.3
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
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
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
(11.58)
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
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
2Sb
M1
2
1 X
2
b
b
= E[S ] E[S] = 2
E[x2n x2m ] 4
M n,m=0
=
M2
M
dove abbiamo utilizzato la relazione:
(11.60)
(11.61)
(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
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)
E |Y |2 =
E |X|2
(1 z 1 ) (1 z)
Lautocorrelazione delluscita :
E[ym ym+k ] = |k| 2 ;
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
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
(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)
11.7.1
sin m
;
c
um = km
(11.69)
11.8 APPENDICI
11.8
Appendici
11.8.1
r( ) = r ( )
x(t)e
dt;
X () =
x (t)ejt dt
X() =
Ttot /2
2
|X()| =
Ponendo t = ;
2
|X()| =
Ttot /2
Ttot /2
Ttot /2
Ttot /2
Ttot /2
Ttot /2
Ttot /2
Ttot /2
x( + ) x ()ej
Ttot /2
259
Ttot /2
r( )ej d '
Ttot /2
Ttot /2
Z Ttot /2
' S()
Ttot /2
d = S() Ttot
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
11.8 APPENDICI
N
1
X
n=0
xn WNnk [V ]
n=0
|X()|2
V 2T 2
[
] = [V 2 T ]
Ttot
Ttot
11.8.3
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
N
X
i=1
X
xi ; E a2 = N
E x2i = 1; E [xi xj ] = 0; i 6= j
u
N
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
262
Capitolo 12
Analisi spettrale non
parametrica
12.1
Introduzione
12.2
yn,1
f
f1 ,B1
H2(f)
yn,2
f2 ,B2
xn
H3(f)
yn,3
f3 ,B3
12.3
12.3.1
M
2BTtot
BTtot
E(S)
266
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
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
12.4
Il periodogramma
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
(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
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
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;
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
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
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-
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
12.6
Errori da evitare
xn+ 6= 0;
274
n+ >N
12.7
12.7.1
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
risulta invece:
r
r
qX
SbB
2P
4 P
=
p2k '
=
3N
3 2N
E[SbB ]
(12.12)
1
|l|
ql = (1 );
N
P
P
X
P
ql ' ;
N
l=P
l=P
ql2 '
2P
;
3N 2
p2k
=N
P
X
l=P
ql2 '
2P
3N
(12.13)
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
12.7.2
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.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
12.8
Sommario
12.9 UN ESEMPIO
12.9
Un esempio
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.8
1.0
0.5 + 0.7i
5.2
(12.15)
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)
|Xk |2
Pk =
= 135; 0.15; 0.25;
4
|Xk0 |2
= 50; 0.49; 0.30
Pk0 =
4
(12.17)
(12.18)
!
1 |Xk0 |2 |Xk0 |2
m
Pk =
+
= 92; 0.33; 0.28
2
4
4
(12.19)
Il periodogramma a 8 campioni :
(12.20)
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
3.9 15. 8
0.4 0.6i
3.5
i 1 i
1 1 1
i 1 i
0.9
3.5
3 12. 1
0.5 0.2i
2.7
282
(12.21)
(12.22)
12.9 UN ESEMPIO
!
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
B()
A()
(13.1)
(13.2)
(13.3)
wn
H (z) =
B (z )
A( z )
xn
13.2
H
X
bh z h
(13.4)
h=0
bn
xn
wn
0
h=0
(13.6)
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
Figura 13.4: Esempi di assegnazione degli zeri della R(z) alla B(z) (zeri
anneriti)
13.2.1
13.3
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
E[xn xnm ]
N
X
= E[
ah,N xnh xnm ] + E[wn xnm ] =
(13.9)
h=1
N
X
h=1
(13.10)
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)
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
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)
13.5 UN ESEMPIO
13.5
Un esempio
13.5.1
I sequenza:
La stima polarizzata dei primi tre campioni della funzione di autocorrelazione :
13.5.2
Stima MA
b0 b1 = 10
2
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)
y
125
100
75
50
25
0
0.5
1.5
2.5
3
x
13.5.3
Stima AR
2w
1
23.4 20.1 17
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
(13.28)
(13.29)
b0 b1 = 5.5
(13.30)
(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)
y
20
15
10
0.5
1.5
2.5
3
x
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
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
xi =
N
X
an,N xin
n=1
301
(14.1)
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
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
N
X
n=1
302
an,N z n
(14.6)
(14.7)
wi
A N (z )
xi
xi
1
A N 0 (z )
A N (z )
14.1
Lerrore di predizione
Indichiamo con:
2,N = E[(i,N )2 ]
(14.8)
E[|i,N | ] =
E[i,N xi ]
= r0 +
N
X
n=1
303
an,N rn
(14.9)
14.2
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
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
(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)
E[ i,N i,N ]
E[( i,N )2 ]
(14.14)
(14.15)
Infatti
E[( i,N )2 ] = E[(i,N )2 ]
(14.16)
(14.17)
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
(14.22)
(14.23)
(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.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
(14.26)
moltiplicatore
i,N
i,N+1
cN+1
c N+1
i,N
xi
c1
xi-1
i,1= x i + c1xi-1
c1
z -1
i,N+1
z -1
z -1
14.5
xi
312
c1
c1
z -1
i,1
i,1
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
xi
z -1
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
N
X
an,N z n
n=1
14.6
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.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
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
N
X
an,N xin
(14.33)
n=1
(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
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
(14.35)
Lerrore di stima :
N
X
(14.36)
bn,N yin
n=1
i,N = xi xi
(14.37)
(14.38)
k = 1, . . . , N
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)
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
! #
n=1
2x
xi +
N
X
!#
n=1
2 = 2x + E
1
bn,N rn = 2x rTN R + 2z I
rN
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
h=0
0kN
(14.44)
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
14.8.2
Il caso 2z 6= 0
14.8.3
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
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)
N
X
cn,N yin
n=0
324
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
...
"
wi +
N
X
n=0
N
X
bn,N yin
n=1
E (xi x
bi,N ) yim
=E
"
xi +
N
X
=0
bn,N yin yim
n=1
325
m = 1, ....N
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
"
xi +
N
X
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
= 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
E [(xi xbi ) xi ] = r0 N R1 N
N = R1 N
N/2
X
n=N/2
327
win hn + zi
(14.47)
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( )
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
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
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
Operando nel dominio delle frequenze, non appare immediatamente possibile stabilire il supporto del filtro, cio definire i campioni per i quali
330
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
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)
14.10
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)
a + =
e la stima ai minimi quadrati della variabile a :
b
a =
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)
334
(14.64)
335
Capitolo 15
Stima lineare ottima
15.1
(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
b = E [sz ] E [zz ]1
1
b = 2s 2n M + 2s cc
c
=I
I + pp
pp
1 + p p
(15.2)
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
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
1
c M1 c
(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
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
N
X
Bk ek ; c =
k=1
Ck ek
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)
(15.7)
340
(15.8)
15.1.2
1
|A|2 N
15.1.3
Mp 2m ..., 2 , , 1, , 2 ..
2 2
Mp = m
..
..
..
..
.. ..
..
..
.. 2
(15.9)
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)
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)|
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
2m
(1 )2
(15.16)
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)
2m (1 )2
1
c Mz,inv c
N (1 + 2 )
343
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)
15.1.4
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
2L 2n
32n
2n + 2L N/3
N
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
15.2.1
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.3
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
E[|wi |2 ] = 2w ; E[|ni |2 ] = 2n ;
(15.20)
(15.21)
= T ;
(15.22)
(15.23)
(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
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.4
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
= arg ej +
+
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
15.3
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
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
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
!
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
15.3.1
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
xi = A si + ni ; E ni ni+k = 2n (i k)I
352
(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)
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)
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)
(15.39)
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
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
yi= si+ni
_i
d
i,N
fn,N
i = si + ni n
i = yi
N
X
fi.n din+1
(16.1)
n=1
n = 1, . . . , N
(16.2)
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
n = 1, . . . , N
di = {din+1 }
n = 1, . . . , N
(16.3)
(16.4)
N
X
n=1
fi,n din+1 = yi f i di
(16.5)
Osserviamo anzitutto che f i un vettore casuale, di cui cerchiamo di determinare levoluzione nel tempo. Dimostreremo ora che, purch
e sia un
359
(16.7)
(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)
(16.11)
(16.12)
r = E[yi di ]
(16.14)
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
16.2
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
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
16.3
16.3.1
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
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)
(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
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)
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
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
(16.24)
(16.25)
i 6= j
(16.26)
= (I R)E[gi ] = (I R)i+1 g0
(16.27)
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)
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
E [d4k ]
4d
(16.29)
2s
2
(16.31)
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
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
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
h
i
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
(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
1.82 0
6 0 ; 0.7376 0 0.6753
0.4775 0.7 0.5215
0 13.17
(16.35)
0.7376 0 0.6753
0.166 67
0.332 57
0.0
0.666 67
0.624 04
0.166 67
n
2
1 i
21
374
(16.37)
(16.38)
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
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
|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
(17.4)
k =
d
c
=
2 cos Ltot
Ltot cos
(17.5)
17.2
sin m
; m = 1, . . . , M
c
(17.6)
E[xi xin ] = rn = rn
= 2A ejk1 n + 2w (n); 0 n N
(17.7)
17.2.1
ejk1
2w
2
jk1
=
(1
)
e
;
; k =
2
2
2
1 + w / A
A
(17.8)
2 cos
2 2w
1 2w
2A
cos 2A
(17.9)
17.2.2
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)
2A
ejk1 n
2w + N 2A
(17.15)
N
X
an,N z n ; z = ejk
n=1
382
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
(17.17)
(17.18)
E[|i,N | ] =
( 2A
2w )
N
Y
(1 |cn |2 )
(17.19)
n=1
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
)
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
1
4 2w
2
N A (N + 1)
(17.21)
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
384
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
17.3
(17.23)
(17.24)
22
<< 1
21
(17.25)
i = 1, . . . , N ;
(17.26)
(17.27)
21 ejk1 i + 22 ejk2 i
=
21 + 22
(17.28)
i =
i =
=
ejk1 i + ejk2 i
1+
388
i = 1, . . . , N ;
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
1
a (k0 ) R1 a (k0 )
jk
a (k0 ) =
....
j(N1)k0
e
389
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
N
X
n=1
390
(17.31)
R1 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)
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
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.
Frequenza
Frequenza
Frequenza
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
18.1
18.2
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
sn
s$n
Contatore up-down
(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
sn
s$n
a
T
t
sn
s$n
(18.2)
D2
1
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
sn
n,q
s$n
Predittore
+
+
18.2.3
Una tecnica molto usata per al codifica del segnale vocale quella della
codifica lineare predittiva; il segnale campionato a 8 KHz viene seg401
18.3
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
18.4
406
Capitolo 19
Segnali bidimensionali
19.1
Le singolarit a 2D
(19.1)
+
X
i=0
ai (x) bi (y)
(19.2)
(19.3)
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
(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 |
19.1 LE SINGOLARIT A 2D
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
p
x2 + y 2
dxdy dd
f (x, y)dxdy =
f (, ) || dd
|Jpc | = x y
x
y
x
y
1
1
x2 +y2
x2 +y2
|Jpc | =
=
=
x
|| |Jcp |
y
x2 +y2
x2 +y2
(, )
= | sin(0 1 )|
dd = |J| dxdy; |J| =
(x, y)
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
g(x, y) =
h(x, y; x0 , y0 ) = h(x x0 , y y0 )
(19.10)
(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
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)
+ 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
(19.16)
y
v
= u2 + v 2 ; = tan1
= x2 + y 2 ; = tan1
x
u
s(x, y) = ej(ux+vy) ;
s0 (, ) = ej cos ()
(19.17)
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).
19.4
Lantitrasformazione di Fourier 2D
414
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
19.4.1
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
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
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
0.75
0.5
0.25
0
0
10
15
20
x
-0.25
0.5
0.375
0.25
0.125
0
0
10
15
20
x
2
m
cos x
|x|
2
4
19.5
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 (, + )
(19.28)
(19.29)
19.5.1
(19.30)
x
F {h(x,y)} = H(u)(v)
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:
19.7
Filtri a ventaglio
H(u,v) =1
H(u,v) =0
H(u,v) =0
H(u,v) =1
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
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
(20.1)
z
z=z0
z=0
x
=0
=1
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)
(20.4)
(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
(20.6)
(20.7)
(20.8)
Vogliamo
E [(H(u, v)Fm (u, v, z0 ) F (u, v, 0)) Fm (u, v, z0 )] = 0
425
(20.9)
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
426
20.2
La propagazione di onde
(20.13)
(20.14)
1 d2 F (u, v, t)
= 0; F (u, v, t) f (x, y, t) (20.15)
c2
dt2
(20.16)
x2 + y 2 c2 t2
(20.18)
20.2.1
2
d2 F (u, y, )
)F
(u,
y,
)
+
= 0;
c2
dy 2
(20.19)
F (u, y, ) = A(u, )e
2
u2
c2
jy
+ B(u, )e
2
u2
c2
(20.20)
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
Basta cio convolvere la funzione f (x, y, t) con un filtro opportuno, dipendente dalla variabile y.
S2
S1
x
schiera di sensori
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)
r
k2 c2
kc
sin = ; cos = 1 2
430
(20.23)
2
|k| > =
(20.24)
c
(20.25)
j y
cos
c
=e
j y
c
=e
2 c2
2
1 k
(20.26)
2
k2
c2
431
(20.27)
2/v
cT
2/u
x
T= 1/f = 2/
Z Z
jy
F (k, y = 0, )e
432
2
k2 +jkx+jt
c2
dkd
(2)2
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)
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
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
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)
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)
20.4
t2
4
435
exp(j (x2 + y 2 ) /4 2 )
exp(jx2 /4 2 ) exp(jy 2 /4 2 )
(20.38)
=
2 2
2
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)
notiamo che:
1
=
f
c c1
c1
1
1
R1 R2
!#
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
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
20.5
(20.44)
dT (, t)
dt
T (u, v, t) = T (u, v, 0) e
(20.45)
2 t
c
(20.46)
2 t
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
d2 T (u, y, )
dy 2
(20.48)
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)
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
21.1
Lequivocazione a 2D
21.1 LEQUIVOCAZIONE A 2D
v
v0
u0
21.1.1
Eetti di moir
2
2
u0 + p , v0 + q
S(u, v) = A
p,q=
445
CAPITOLO 21 SEQUENZE 2D
uN
uN
(21.5)
|u0 , v0 | <
(21.6)
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
f0 D
' f0 se d << D
D+d
D
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
H(u, v) = [e
ux0
vy
+ 40 )
4
u0 =
j(
+e
ux0
vy
+ 40 )
4
2
2
;
=
x0
a
v0 =
+
X
h,l=
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)
21.1 LEQUIVOCAZIONE A 2D
u0
v
v0
l+m pari
v
v0
u
2/3u0
Sagoma del dominio base nelle frequenze
CAPITOLO 21 SEQUENZE 2D
21.2
9
8
7
6
5
5
20 msec
20 msec
t
3
2
1
1
0
21.2.1
CAPITOLO 21 SEQUENZE 2D
21.2.2
1/2d
B
B
A
25
f (Hz)
-2/d
fc =50Hz;
fq =25Hz;
CAPITOLO 21 SEQUENZE 2D
21.3
Ricostruzione 2D
21.3 RICOSTRUZIONE 2D
|x|
|y|
bilin(x, y) = 1
1
; |x| , |y| <
CAPITOLO 21 SEQUENZE 2D
21.3 RICOSTRUZIONE 2D
0.25
0
1
0.25
CAPITOLO 21 SEQUENZE 2D
21.4
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
MN
MN
MN
log2 N +
log2 M =
log2 NM
2
2
2
(21.15)
1 + log2 N
)
2
(21.16)
21.6
Filtri 2D
CAPITOLO 21 SEQUENZE 2D
K
X
uk,m vk,n
(21.17)
k=1
21.6.1
La trasformazione di Mc Clellan
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)
(21.22)
CAPITOLO 21 SEQUENZE 2D
21.6.2
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)
exp jz
!
2
2 ; = u2 + v 2
c2
462
(21.24)
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
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) =
"
F (u, v, z, )
1
1
exp jz
F2D
[exp ( || z)] , F2D
2
2
c2
!#
(21.30)
21.7
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
(21.31)
(21.32)
N/2
X
wmk,nl hk,l
(21.33)
k,l=N/2
0
rk,l
2w
N/2
X
(21.34)
i,j=N/2
21.7.2
Spettri di potenza a 2D
M1
X N1
X
mk
rn,m WNnh WM
= 2x ;
(21.35)
m=0 n=0
(21.36)
(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
sb(x, y) =
(21.38)
n,m=H/2
|n, m| H/2
(21.39)
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)
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
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)
21.7.4
(21.44)
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
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.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
21.9 IL CAMPIONAMENTO A 3D
(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
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
22.2
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)
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)
v
(22.6)
= u2 + v 2 ; = tan1
u
475
CAPITOLO 22 LA TOMOGRAFIA
[ F (, )]
= { s( r , )}
[ F (, )]
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
||
(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
22.3 IL SINOGRAMMA
22.3
Il sinogramma
CAPITOLO 22 LA TOMOGRAFIA
dB
dD
dC
C
r=0
B
A
C
dC
D
dD
dB
480
22.4 LA RETROPROIEZIONE
(22.11)
(22.12)
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
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
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
(r)
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.
CAPITOLO 22 LA TOMOGRAFIA
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)
(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.2
CAPITOLO 22 LA TOMOGRAFIA
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
1
=
2
1
2
j cos()
F (, )e
d d
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)
r
1
2 r
e
(r) = 2 sinc( ) sinc ( ) ;
(22.21)
L
L
2
2L
CAPITOLO 22 LA TOMOGRAFIA
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.3
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
1
2 xy
(22.22)
(22.23)
(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
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
2
;
D
||max =
2L
L
D
(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
(22.26)
(22.27)
(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
(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
(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
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
E [(Bd m) d ] = 0
Ma:
CAPITOLO 22 LA TOMOGRAFIA
da cui
B 2m AA + 2n IM = 2m A
1
2n
B = A AA + 2 IM
m
(22.31)
si ha:
1
DA1
(BCD + A)1 = A1 A1 B C1 +DA1 B
1
2n
A
B = A A + 2 IN
m
(22.32)
22.7.4
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)
499
Capitolo 23
Tecniche di ottimizzazione
23.1
Il gradiente
(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)
(23.3)
R a0 = R(a + f 0 ) = b + f 0
(23.4)
(23.5)
(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)
(23.13)
23.2
Il gradiente coniugato
23.2.1
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
(23.14)
(23.15)
(23.16)
n ai,n aj,n = 0
(23.17)
n=1
ai,n aj,n = 0;
n = cost
(23.18)
n=1
(23.22)
(23.23)
(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)
23.2.2
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
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)
(23.27)
a1 = a0 + 0 D0
(23.28)
Il nuovo stimatore a1 :
(23.29)
(23.30)
(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)
23.3
510