Quantizzazione e rumore di quantizzazione
In questa pagina 7
La quantizzazione è il blocco che trasforma i campioni, numeri reali, in valori scelti in un insieme finito (Campionamento e conversione analogico-digitalePer trasmettere un segnale analogico $a(t)$ con un sistema digitale lo si trasforma in bit: filtro anti-aliasing, campionatore ($T_s=\frac1{F_s}$, $F_s\ge2B$), quantizzatore su $L=2^b$ livelli, mappa livello $\to$ $b$ bit, serializzatore. Il bit-rate nominale è $R_b=bF_s$. Campionare è reversibile (con un filtro interpolatore, in pratica un holder) se $F_s\ge2B$; quantizzare invece perde informazione in modo irreversibile. Al ricevitore si ripercorre la catena al contrario (D/A).Campionamento e conversione analogico-digitale → ne mostra il posto nella catena A/D). È l'unica operazione della conversione che perde informazione in modo irreversibile, quindi bisogna saper misurare quanto errore introduce e quanti bit servono per tenerlo sotto un valore dato.
1. Il quantizzatore
Definizione (quantizzatore). Un quantizzatore è una funzione che a ogni campione associa un livello . Si divide in regioni disgiunte separate da soglie ; il campione in diventa . Si prende con bit per campione.
Esempio. Le soglie dividono in quattro regioni , , , ; con i livelli il campione diventa e il campione diventa . Si lavora con , quindi bit.
Definizione (quantizzatore uniforme e mid-riser). Il quantizzatore uniforme (PCM, pulse code modulation) ha tutte le regioni interne di ampiezza uguale (il passo di quantizzazione). Si sceglie il range dinamico ( è la tensione di saturazione) e si divide in passi: Nel tipo mid-riser ("la scala sale in zero") le soglie sono i multipli di (che sono i multipli pari di ) e i livelli sono i punti centrali delle regioni, cioè i multipli dispari di : Nel mid-tread invece il valore è un livello e i livelli sono . Negli esercizi si usa il mid-riser.
Le due regioni esterne (sopra l'ultima soglia e sotto la prima) si estendono all'infinito: lì il quantizzatore satura, cioè restituisce sempre l'ultimo livello .
Esempio. () e V: V; livelli V; soglie V. L'ingresso V cade tra le soglie e e diventa V (errore V); l'ingresso V è oltre la soglia V, quindi satura nel livello V (errore V). Non si trova mai il livello .
Grafico interattivo: Caratteristica del quantizzatore uniforme mid-riser con L = 8 livelli e v_sat = 4 V (Δ = 1 V): 8 gradini larghi 1 V con livelli ±0,5, ±1,5, ±2,5, ±3,5 V; oltre ±3 V l'uscita non cresce più (saturazione). La retta a_q = a sarebbe il caso ideale
2. L'errore di quantizzazione
Definizione (errore e rumore di quantizzazione). , quindi : all'uscita c'è il segnale più un "rumore" additivo, come se l'errore fosse introdotto dal canale.
Come funzione di , l'errore ha l'andamento a dente di sega: nella zona granulare () cade sempre in , perché il livello è il punto di mezzo della regione; nella zona di saturazione cresce linearmente con la distanza da e non ha limite.
Grafico interattivo: Errore e_q = a_q − a del quantizzatore mid-riser con Δ = 1 V e v_sat = 4 V: dente di sega di ampiezza ±0,5 V (errore granulare) per |a| < 4 V, poi una retta che cresce senza limite (errore di saturazione)
Per misurare quanto è grave si usa la potenza statistica dell'errore, calcolata con la densità del campione. Si scompone l'asse reale nelle tre zone: È un conto pesante: si semplifica con due ipotesi.
(A) La probabilità di saturazione è piccola. La probabilità di saturazione è Se è piccola l'errore di saturazione pesa poco e lo si trascura. Alcuni casi (per il calcolo si usa la funzione della gaussiana, , Distribuzione gaussiana (normale)N(μ, σ²) ha densità e^(−(x−μ)²/(2σ²)) / √(2πσ²), a campana centrata in μ con larghezza σ; media μ, varianza σ²; si standardizza con Z = (X − μ)/σ ~ N(0, 1) e si calcola P(X ≤ x) = Φ((x − μ)/σ), con Φ(−z) = 1 − Φ(z); aX + b è ancora gaussiana, N(aμ + b, a²σ²).Distribuzione gaussiana (normale) →, approfondita in Probabilità d'errore e funzione QPer due segnali di energie $E_1,E_2$ con coefficiente di correlazione $\rho=\frac{\langle s_1,s_2\rangle}{\sqrt{E_1E_2}}$ la distanza è $d_{12}=\sqrt{E_1+E_2-2\rho\sqrt{E_1E_2}}$ e, con rumore AWGN, simboli equiprobabili e criterio MD, $P[E]=Q\left(\frac{d_{12}}{2\sigma_I}\right)=Q\left(\sqrt{\frac{E_s(1-\rho)}{N_0}}\right)$ con $\sigma_I^2=\frac{N_0}2$ e $Q$ la coda della gaussiana. Il caso antipodale ($\rho=-1$) dà $Q\left(\sqrt{\frac{2E_s}{N_0}}\right)$, l'ortogonale ($\rho=0$) $Q\left(\sqrt{\frac{E_s}{N_0}}\right)$: 3 dB peggio. Con $M>2$ segnali si usano limiti: $\frac{N^*}M Q\left(\frac{d_{min}}{2\sigma_I}\right)\le P[E]\le(M-1)Q\left(\frac{d_{min}}{2\sigma_I}\right)$ (union bound); la probabilità dipende solo da $\frac{E_s}{N_0}$, cioè dall'SNR.Probabilità d'errore e funzione Q →):
| densità del segnale | |
|---|---|
| gaussiana a media nulla, varianza | |
| uniforme in | se |
| laplaciana di parametro , | |
| esponenziale (, range ) |
Per la gaussiana il fattore conta le due code, a destra e a sinistra.
Se il segnale è certamente limitato, , si sceglie e esattamente; altrimenti in pratica si richiede molto piccola (un valore tipico è ) e si sceglie di conseguenza.
(B) è grande (il passo è piccolo rispetto a come varia la densità). Dentro ogni regione è quasi costante, quindi l'errore granulare, che dentro una regione è uguale a "livello meno campione", è uniforme in : . Ne seguono: (l'integrale di è , calcolato tra e dà , diviso ).
Si assume inoltre che l'errore sia incorrelato con il segnale, , e che campioni diversi dell'errore siano incorrelati, per : il rumore di quantizzazione è quindi bianco (spettro piatto). Sono ipotesi, non teoremi: funzionano bene per grande.
Esempio. Con V (esempio sopra) V, errore efficace V, che è e non (l'errore massimo): la media del quadrato è minore del quadrato del massimo.
3. Il rapporto segnale-rumore di quantizzazione
Definizione (SNR di quantizzazione). Con segnale a media nulla (varianza); in generale . Più è alto, più il segnale quantizzato è fedele.
Esempio. Segnale con V e rumore V: , cioè dB.
Con (A) e (B) si sostituisce con , quindi : Prendendo (con e ): Il rapporto si chiama load factor (fattore di carico del quantizzatore). Conseguenze:
- ogni bit in più (il doppio dei livelli, dimezzato, potenza dell'errore divisa per 4) dà dB;
- allargare il range peggiora l'SNR: con si perdono dB ( dB per , dB per , dB per ) perché a fisso il passo cresce.
Grafico interattivo: SNR di quantizzazione in dB in funzione dei bit b per un segnale gaussiano con v_sat = 4σ (P_sat = 6,3·10⁻⁵): 6,02·b + 4,77 − 12,04, una retta di pendenza 6 dB per bit
Esempio (tabella, segnale gaussiano, ).
| dB | |||||
Per esempio , : dB.
Verifica numerica. Per un gaussiano con , , l'integrazione numerica dell'errore (granulare più saturazione) dà contro (): dB, uguale alla formula; con si trova dB contro dB della formula: già lì la saturazione toglie dB.
4. Il compromesso su e e la saturazione non trascurabile
- Per ridurre serve grande (gaussiano: , ).
- Ma a fissato cresce con e con esso l'errore granulare .
- Se è molto grande, diventa minuscolo mentre l'errore di saturazione non dipende da (dipende da e da ): a un certo punto domina e l'SNR smette di crescere: la regola dei dB per bit cade.
Quando la saturazione conta, si pesano le due zone, con come probabilità di essere nella zona di saturazione: dove l'ultimo livello è a distanza dal bordo. Per un segnale gaussiano con e piccolo il contributo di saturazione è , con (si ottiene integrando per parti ).
Esempio. Gaussiano a media nulla con V e V (, ); integrazione numerica:
| SNR solo granulare | SNR totale | ||||
|---|---|---|---|---|---|
| V | dB | dB | |||
| V | dB | dB |
Con la saturazione non conta; con è quasi alla pari con l'errore granulare e toglie dB. Per V e V () il tetto di SNR dovuto alla sola saturazione è dB: nessun numero di bit lo supera (Esercizio - quantizzazione di segnali uniformi e gaussiani).
5. Progetto di un quantizzatore
I dati tipici: la densità del segnale con il suo parametro, una probabilità di saturazione massima e/o un SNR minimo.
- dalla probabilità di saturazione (si inverte la tabella del §2):
- gaussiano: ;
- laplaciano: ;
- esponenziale (solo valori positivi): range , e passo (non ha senso sprecare metà dei livelli sui valori negativi che non esistono);
- segnale limitato : e .
- Bit dall'SNR richiesto: si inverte la formula, e si arrotonda per eccesso all'intero (con meno bit l'SNR sarebbe sotto la soglia).
- Risultati: , , SNR effettivo (con intero è un po' maggiore del richiesto), bit-rate .
Esempio (gaussiano). V, , SNR dB. Passo 1: , V. Passo 2: dB, . Passo 3: , V, dB (calcolo esatto: dB). Con sarebbe dB, insufficiente.
Esempio (laplaciano). V (varianza V), , SNR dB. V; dB; , , mV, dB.
Segnali a media non nulla. Se un quantizzatore simmetrico spreca il range. Si trasmette (si sottrae la media, e si riaggiunge al ricevitore): la potenza da coprire è . Nell'SNR conta la potenza del segnale che si vuole trasmettere: se si quantizza senza centrarlo, se si quantizza . Per l'esponenziale la potenza statistica è (media , varianza ).
6. Quantizzatori non uniformi
Se la densità non è uniforme (voce: molti campioni vicino a zero e pochi grandi) conviene avere gradini piccoli dove i campioni cadono spesso e grandi dove sono rari. Il metodo classico è il compander (compressore + espansore): un blocco non lineare comprime la scala, un quantizzatore uniforme lavora sul segnale compresso e un blocco inverso espande al ricevitore. Equivale a una scala di livelli concentrati attorno allo zero. Si può anche scegliere soglie e livelli ottimi per la densità data (si veda l'approfondimento in Esercizio - progetto di un quantizzatore non uniforme).
Errori comuni
- (manca il 2 se il range è simmetrico ; con è giusto).
- Mettere il livello nel mid-riser: i livelli sono .
- con una coda sola per un segnale simmetrico: sono due code, , e in inversione .
- Dimenticare di arrotondare per eccesso, e di dare poi l'SNR effettivo.
- Usare la varianza al posto della potenza statistica per segnali a media non nulla.
- Credere che l'SNR cresca di dB per bit sempre: vale finché la saturazione è trascurabile.
Versione ripasso
Quantizzatore uniforme mid-riser
- Livelli: con bit per campione. Range e passo
- Soglie nei multipli di (); livelli nei multipli dispari di : . Il livello non esiste.
- Oltre le soglie estreme il quantizzatore satura: restituisce sempre .
- Esempio: e V danno V, livelli V. L'ingresso V diventa V (errore V); l'ingresso V satura a V (errore V).
Errore di quantizzazione
- , quindi : il rumore è additivo.
- Zona granulare (): , a dente di sega. Zona di saturazione: cresce senza limite.
- Potenza: , somma dei contributi di saturazione (a sinistra e a destra) e granulare.
- Ipotesi (A): la probabilità di saturazione è piccola, così la saturazione si trascura. Valori: gaussiano a media nulla (due code, Distribuzione gaussiana (normale)N(μ, σ²) ha densità e^(−(x−μ)²/(2σ²)) / √(2πσ²), a campana centrata in μ con larghezza σ; media μ, varianza σ²; si standardizza con Z = (X − μ)/σ ~ N(0, 1) e si calcola P(X ≤ x) = Φ((x − μ)/σ), con Φ(−z) = 1 − Φ(z); aX + b è ancora gaussiana, N(aμ + b, a²σ²).Distribuzione gaussiana (normale) →, Probabilità d'errore e funzione QPer due segnali di energie $E_1,E_2$ con coefficiente di correlazione $\rho=\frac{\langle s_1,s_2\rangle}{\sqrt{E_1E_2}}$ la distanza è $d_{12}=\sqrt{E_1+E_2-2\rho\sqrt{E_1E_2}}$ e, con rumore AWGN, simboli equiprobabili e criterio MD, $P[E]=Q\left(\frac{d_{12}}{2\sigma_I}\right)=Q\left(\sqrt{\frac{E_s(1-\rho)}{N_0}}\right)$ con $\sigma_I^2=\frac{N_0}2$ e $Q$ la coda della gaussiana. Il caso antipodale ($\rho=-1$) dà $Q\left(\sqrt{\frac{2E_s}{N_0}}\right)$, l'ortogonale ($\rho=0$) $Q\left(\sqrt{\frac{E_s}{N_0}}\right)$: 3 dB peggio. Con $M>2$ segnali si usano limiti: $\frac{N^*}M Q\left(\frac{d_{min}}{2\sigma_I}\right)\le P[E]\le(M-1)Q\left(\frac{d_{min}}{2\sigma_I}\right)$ (union bound); la probabilità dipende solo da $\frac{E_s}{N_0}$, cioè dall'SNR.Probabilità d'errore e funzione Q →); uniforme in : se ; laplaciana di parametro : .
- Ipotesi (B): grande, quindi l'errore granulare è uniforme in e
- Si assume che sia incorrelato con e con sé stesso a istanti diversi: il rumore è bianco. Sono ipotesi, valide per grande.
- Esempio: con V, V e l'errore efficace è V, non .
SNR di quantizzazione
- Esempio: V e V danno , cioè dB.
- Con e : (, ). Il rapporto è il load factor.
- Ogni bit in più dà dB. Allargare il range costa dB se : dB per , dB per .
- Esempio: gaussiano con e : dB. Verifica numerica con , , : (integrazione), dB come nella formula.
Saturazione non trascurabile
- Per ridurre serve grande (: ; : ), ma a fisso cresce con .
- L'errore di saturazione non dipende da : per grande domina e l'SNR smette di crescere. Con il tetto è circa dB.
- Esempio: V, V. Con la saturazione non conta ( dB); con toglie dB ( dB contro dB) (Esercizio - quantizzazione di segnali uniformi e gaussiani).
Progetto di un quantizzatore
- Da si ricava : gaussiano ; laplaciano ; segnale limitato : .
- Dall'SNR richiesto: , con arrotondamento per eccesso.
- Si ottengono , , l'SNR effettivo (maggiore del richiesto) e il bit-rate .
- Esempio gaussiano: V, , SNR dB. , quindi V. , quindi , , V, dB. Con si avrebbe dB: insufficiente.
- Esempio laplaciano: V, , SNR dB. V, , quindi , , mV, dB.
Casi particolari
- Media non nulla : si quantizza e si riaggiunge al ricevitore. Conta la potenza da coprire, , non se si quantizza senza centrarlo.
- Quantizzatori non uniformi (voce): compander, cioè compressore non lineare, quantizzatore uniforme, espansore inverso. Gradini piccoli dove i campioni sono frequenti (Esercizio - progetto di un quantizzatore non uniforme).
Errori tipici:
- : manca il con range simmetrico .
- Mettere il livello nel mid-riser.
- Contare una sola coda di per un segnale simmetrico: sono due, .
- Arrotondare per difetto invece che per eccesso, e non dare poi l'SNR effettivo.
- Usare la varianza al posto della potenza statistica per segnali a media non nulla.
- Credere che l'SNR cresca di dB per bit sempre: vale solo se la saturazione è trascurabile.
Esercizi su questo argomento
- Esercizio - progetto di un quantizzatore non uniforme
- Esercizio - quantizzazione di segnali uniformi e gaussiani
- Esercizio - Quattro domande brevi su entropia, informazione, M-M-3 e quantizzazione (simulazione d'esame 2012)
- Esercizio - Sensore vulcanico, quantizzazione e radio a 4 livelli (simulazione d'esame 2013)
- Esercizio - sfigmomanometro digitale, bit del quantizzatore e probabilità d'errore del canale