La quantizzazione `e il processo che permette di trasformare un segnale a valori continui in un segnale che assume un numero finito di valori. Un modo semplice di quantizzare consiste nel prefissare un un insieme finito di l valori numerici {x1, . . . , xl} e di associare ad ogni numero x il valore numerico xk che `e pi`u vicino a x.
Se i segnali che prendiamo in considerazione hanno ampiezze comprese tra −V
2 e V
2, questo pu`o essere ottenuto dividendo l’insieme £−V2,V2¤ in l intervalli, detti livelli, ed attribuendo ad un punto x ∈£−V
2,V
2
¤
il centro del livello in cui x cade. Detti {x1, . . . , xl} i centri dei vari livelli, l’operazione di quantizzazione pu`o essere allora descritta dalla funzione Q che ad ogni x associa il centro pi`u vicino:
Q(x) = arg min
xi∈{x1,...,xl}
|x − xi|.
Il sistema che realizza l’operazione di quantizzazione `e detto quantizzatore. Poich`e {x1, . . . , xl} non `e uno spazio vettoriale, il quantizzatore non `e in generale un sistema lineare, pur essendo tempo-invariante.
La quantizzazione Q `e una funzione molti-uno, quindi essa introduce un errore irre-versible: dato il segnale quantizzato Q(f (t)), non `e possibile ricostruire in modo esatto il segnale d’origine f (t). Ogni tentativo di ricostruire il segnale comporter`a quindi un errore; l’idea intuitiva `e che si possa diminuire l’errore aumentando il numero di livelli. Nel prossimo paragrafo accenniamo ad un’analisi quantitativa di questo fenomeno.
4.2.1 Quantizzatore Uniforme e Rumore di Quantizzazione
Un quantizzatore in cui l’intervallo £−V2,V2¤`e suddiviso in l livelli di uguale ampiezza Vl `e detto quantizzatore uniforme; il valore V `e detto range del quantizzatore e il numero ∆ = Vl `e chiamato passo di quantizzazione.
Se l = 2m, gli elementi {x1, . . . , xl} possono essere codificati con le 2m parole di m bit: xi = bi1· · · bim, con bik ∈ {0, 1} (1 ≤ i ≤ l).
Il sistema in questo caso `e detto quantizzatore uniforme a m bit.
La Figura 4.9 mostra il risultato del campionamento (pallino bianco) e campionamento pi`u quantizzazione uniforme a quattro livelli (pallino nero) di un segnale f (t).
∆ V/2
-V/2
t f(t)
Figura 4.9 Campionamento pi`u quantizzazione uniforme a quattro livelli di un segnale
f (t).
Come ben evidenziato dalla Figura, la quantizzazione Q `e una funzione molti-uno che introduce un errore irreversible nel segnale quantizzato. Poich`e il numero x viene approssimato dal quantizzatore con Q(x), una naturale misura dell’errore sul numero x `e la seguente:
e(x) = Q(x) − x.
La funzione e(x) viene detta errore di quantizzazione; la Figura 4.10 mostra il grafico dell’errore di quantizzazione e(x) per un quantizzatore uniforme di sei livelli.
e
x
−V/2 V/2
∆/2
−∆/2
L’errore di quantizzazione ha un comportamento ben differenziato in due zone:
1. Se x < −V
2 oppure x > V
2, l’errore pu`o essere arbitrariamente grande: in questo caso l’errore `e detto distorsione da overload e lo si controlla cercando di garan-tire che i valori del segnale f (t) in ingresso al quantizzatore rientrino nel range del quantizzatore, richiedendo cio`e che −V2 ≤ f (t) ≤ V2.
2. Se x `e invece interno all’intervallo −V2 ≤ x ≤ V2, l’errore e(x) si mantiene in valore assoluto minore o uguale a ∆2, cio`e la met`a del passo di quantizzazione; tale errore `e detto rumore granulare e non pu`o essere eliminato.
In seguito considereremo segnali f (t) per cui −V2 ≤ f (t) ≤ V2, in modo che l’unica sorgente di errore sia il rumore granulare. Supporremo inoltre che i nostri segnali oscillino intorno a 0, in modo che la media dei valori sia 0, valga cio`e limT →∞
RT
−T f (t)dt
2T = 0.
Una naturale misura della dispersione, o potenza, di un segnale f(t) `e la sua varianza var < f >, data da:
var < f >= lim T →∞ RT −T f2(t)dt 2T = 0 Esempio 4.2.1
Consideriamo il segnale sinusoidale di ampiezza V
2 dato da V
2 sin t. La media di tale segnale `e 0, poich´e: lim T →∞ RT −Tsin tdt 2T = 0.
La varianza σ2 di tale segnale `e invece V2
8 . Infatti: σ2= lim T →∞ RT −T(V 2 sin t − 0)2dt 2T = limT →∞ RT −T V 2 4 ¡1−cos 2t 2 ¢ dt 2T = V2 8 . Esempio 4.2.2
Consideriamo la risposta Q(f (t)) di un quantizzatore al segnale f (t), in modo che l’errore tra il segnale quantizzato e il segnale sia e(f (t)) = Q(f (t)) − f (t). Sappiamo che, se ∆ `e il passo di quantizzazione, risulta −∆
2 ≤ e(f (t)) ≤ ∆ 2.
Per molti segnali deterministici l’errore `e uniformemente distribuito tra −∆ 2 e ∆
2. Questo significa che la probabilit`a che l’errore sia compreso fra e ed e + de `e de
∆. La varianza dell’errore `e allora:
var < e(f ) >= Z ∆ 2 −∆ 2 e2de ∆ = ∆2 12.
Allo scopo di definire una misura di prestazione di un quantizzatore, ricordiamo che il quantizzatore, ricevendo in ingresso un segnale f (t), d`a in uscita il segnale Q(f (t)) diverso dall’originale, con un errore pari a e(f (t)) = Q(f (t)) − f (t). La potenza del segnale `e var < f >, quella dell’errore (o rumore) di quantizzazione `e var < e(f ) >; un indice di quanto la potenza del segnale superi quella dell’errore `e dato dal rapporto var<e(f )>var<f > , o, passando al logaritmo di tale rapporto, dal rapporto segnale-rumore di quantizzazione SQNR (Signal Quantization to Noise Ratio), misurato in deciBell (dB):
SQNR = 10 log10 var < f > var < e(f ) > dB,
Ci si pu`o chiedere perch`e, nella definizione che abbiamo dato di SQNR, non si `e preso direttamente in considerazione il rapporto segnale/rumore, bens`ı il suo logaritmo.
Senza voler essere minimamente esaurienti, osserviamo che spesso la percezione I che abbiamo di una grandezza fisica G non `e, neanche approssimativamente, proporzionale alla grandezza stessa, bens`ı a loga G
G0, dove G0 `e il pi`u piccolo valore di G che riusciamo a percepire (legge di Weber-Fechner). Spesso viene fissata a 10 la base del logaritmo (a = 10), ottenendo la percezione della grandezza pari a log10GG
0 Bell, o, utilizzando il sottomultiplo deciBell del Bell (abbreviato in dB), pari a 10 log10G dB.
Esempio 4.2.3
Dato un segnale acustico p(t), la pressione sonora efficace pef f`e la radice della varianza di p(t), cio`e:
pef f =√var < p >
La nostra percezione dell’intensit`a di un suono non `e tuttavia proporzionale a pef f, ma pu`o essere approssimativamente descritta dal livello sonoro Lp, dove:
Lp= 10 log10 var < p > var < p0>dB Con p0 denotiamo qui la pressione sonora della soglia uditiva.
La misura SQNR di prestazione di un quantizzatore con range V `e data dal rappor-to segnale-rumore di quantizzazione SQNR (Signal Quantization rappor-to Noise Ratio) di un segnale in ingresso sinusoidale del tipo V2 sin t, ipotizzando che l’errore sia uniformemente distribuito tra −∆2 e ∆2. Vale il seguente importante:
Teorema 4.3 Se un segnale sfrutta tutto il range V di un quantizzatore a m bit, allora SQNR ≈ 6.02m + 1.76 dB. In particolare, ogni bit aggiunto ad un quantizzatore comporta un incremento di 6.02 dB al rapporto segnale rumore.
Dimostrazione. Dagli esempi 4.2.1, 4.2.2 precedentemente studiati, sappiamo che il segnale f (t) = V2 sin t ha varianza var < f >= V82 e il corrispondente errore di quantizzazione e(f), uniformemente distribuito, ha varianza var < e(f ) >= ∆122. Segue:
SQN R = 10 log10 var < f >
var < e(f ) > = 10 log10 V2/8 ∆2/12
Osserviamo che ∆V22/12/8 = (V∆)2·128 = l2·128 , dove l = 2m `e il numero di livelli. Applicando le propriet`a della funzione log, si ottiene infine:
SQN R = 20 log10l + 10 log1012
8 = (20 log102) · m + 1.76 = 6.02m + 1.76
Esempio 4.2.4
Determinare il numero di bit da aggiungere a un quantizzatore per migliorare il rapporto segnale-rumore da 40 dB a 68 dB.
Osservando che la differenza tra le prestazioni richieste `e di 18 dB e che ogni bit ag-giunto al quantizzatore migliora SQNR di 6.02 dB, concludiamo che basta aggiungere 3 ≈ 18
6.02 bit.
Esempio 4.2.5
Determinare lo SQNR di un quantizzatore tipico usato in telefonia digitale, sapendo che il numero di livelli `e 256.
Poich`e 256 livelli possono essere codificati con 8 bit, il rapporto segnale-rumore `e 6.02 · 8 + 1.76 ≈ 49.76 dB.
4.2.2 Quantizzatore Non Uniforme
Spesso per segnali reali la probabilit`a che un segnale abbia valore tra y e y + dy viene a dipendere da y. La Figura 4.11 mostra come in un classico segnale del parlato ampiezze elevate siano meno probabili di ampiezze piccole:
`
E intuitivo che in questo caso una quantizzazione pi`u fine per ampiezze piccole migliori la qualit`a del segnale quantizzato, diminuendo l’errore quadratico medio.
Questo risultato pu`o essere ottenuto come segue:
1. Si applica al segnale (che per semplicit`a consideriamo normalizzato a valori in [0, 1]) un funzione F invertibile che comprime le ampiezze vicine a 1 (vedi Figura 4.12).
2. Si applica al segnale “compresso” un quantizzatore uniforme.
3. Il segnale quantizzato viene “decompresso” applicando la funzione F−1inversa di F . Questo processo, detto companding (COMPressing and exPANDING) permette di realizzare un quantizzatore non uniforme, come schematizzato nella Figura 4.13.
t Ampiezza
Figura 4.11 Probabilit`a di varie ampiezze (in grigio). Esempio 4.2.6
Nelle applicazioni in telefonia viene usata la famiglia di funzioni µ-law: Fµ(f ) = ln(1 + µ|f |)
ln(1 + µ) sgn(f ), con − 1 ≤ f ≤ 1,
dove f `e il segnale normalizzato e µ `e un parametro opportuno (usualmente posto a 100 o pi`u recentemente a 255). La funzione µ-law inversa F−1
µ (y) `e data da: F−1
µ (y) = 1 µ
³
(1 + µ)|y|− 1´sgn(y).