Skip to content

Lezione (2025-11-19)

Dalla codificazione nasce un nuovo problema, ovvero ridurre il numero di bit emessi per rappresentare il segnale, senza diminuirne la qualità.

Esistono 2 tecniche che si basano sulla variazione differenziale del segnale e non sul suo valore assoluto:

Con la modulazione delta, si codificano le variazioni (positive o negative) tra un campione e l’altro invece che i loro singoli valori.

Il passo Δ\Delta è la quantità fissa da aggiungere o sottrarre al campione corrente rispetto al precedente. Quindi dato che ci sono solo 2 possibili valori si possono codificare come 0 e 1.

Il primo tipo di errore avviene quando ci sono variazioni brusche nel segnale, infatti la il segnale codificato non può scendere o salire a velocità maggiore di un Δ\Delta per campione.

Il secondo invece avviene nelle zone piatte, dato che il segnale deve continuare ad oscillare tra ±Δ\pm \Delta.

Visualizzazione degli errori

Il valore del campione successivo si basa sulla codifica dell’errore fatto su una predizione (che deriva da 1 o più campioni precedenti).

Quindi se l’errore di predizione sarà piccolo (succede quando il segnale predetto è molto correlato), serviranno pochi bit (codifica entropia).

D’ora in poi non parleremo più di segnali continui nel tempo (x(t)x(t)), ma useremo delle sequenze di campioni x[n]=xq(n Tc)x[n] = x_q(n\ T_c).

  • simmetria:
    • pari: x(t)=x(t)    x[n]=x[n]x(t) = x(-t) \implies x[n] = x[-n];
    • dispari: x(t)=x(t)    x[n]=x[n]x(t) = - x(-t) \implies x[n] = - x[-n];
  • guadagno: a x(t)    a x[n]a\ x(t) \implies a\ x[n];
  • ritardo: x(tΔt)    x[nk]x(t - \Delta t) \implies x[n - k] (segnale traslato di kk campioni);
  • fattore di scala: corrisponde a ricampionamenti del segnale, ovvero la compressione riduce il numero di campioni (e può introdurre aliasing, risolvibile con filtraggio LPF o interpolazione) e l’espansione fa aumentare il numero di campioni (per interpolazione o replica).
  • integrazione: l’integrazione diventa una somma dei valori del segnale;
  • derivazione: diventa una differenza finita tra il campione e il precedente: 1Tc(x[n]x[n1])\frac{1}{T_c} (x[n] - x[n - 1]);
  • valor medio: limK1Kk=K2K2x[k]\displaystyle \lim_{K \to \infty} \frac{1}{K} \sum_{k = - \frac{K}{2}}^\frac{K}{2} x[k]
  • varianza: limK1Kk=K2K2(x[k]x)2\displaystyle \lim_{K \to \infty} \frac{1}{K} \sum_{k = - \frac{K}{2}}^\frac{K}{2} (x[k] - \overline{x})^2
  • energia: k=+(x[k])2\displaystyle \sum_{k = -\infty}^{+\infty} (x[k])^2
  • potenza: limK1Kk=K2K2(x[k])2\displaystyle \lim_{K \to \infty} \frac{1}{K} \sum_{k = -\frac{K}{2}}^\frac{K}{2} (x[k])^2
  • cross-correlazione:
    • segnali di energia: Rxy(k)=n=+x[n] y[n+k]\displaystyle \mathcal{R}_{xy}(k) = \sum_{n = -\infty}^{+\infty} x[n]\ y[n + k]
    • segnali di potenza: Rxy(k)=limK1Kn=K2K2x[n] y[n+k]\displaystyle \mathcal{R}_{xy}(k) = \lim_{K \to \infty} \frac{1}{K} \sum_{n = - \frac{K}{2}}^\frac{K}{2} x[n]\ y[n + k]

Dato un segnale discreto, è possibile calcolare al densità di probabilità dei livelli assunti dal segnale.

La PDF di un segnale di NN campioni e LL valori v(l)v(l) è:

h[l]=1Nn=1N{x[n]=v(l)    1altrimenti    0h[l] = \frac{1}{N} \sum_{n = 1}^N \begin{cases} x[n] = v(l) \implies 1 \\ \text{altrimenti} \implies 0 \end{cases}

L’elaborazione dei segnali digitali prevede l’utilizzo di sistemi numerici, che a loro volta producono altri segnali digitali.

Il segnale in uscita può avere caratteristiche diverse rispetto a quello in ingresso (dimensionalità, rappresentazione dei campioni, etc…).

I sistemi numerici possono essere sia LTI che non-LTI.

  • linearità: f(a x1[n]+b x2[n])=a f(x1[n])+b f(x2[n])f(a\ x_1[n] + b\ x_2[n]) = a\ f(x_1[n]) + b\ f(x_2[n]);
  • tempo invarianza: f(x[n])=y[n]    f(x[nk])=y[nk]f(x[n]) = y[n] \implies f(x[n - k]) = y[n - k];

Per capire come definire la convoluzione nel caso discreto, dobbiamo prima dare una definizione di impulso (dato che non è possibile campionare un impulso).

δ[n]={n=0    1n0    0\delta[n] = \begin{cases} n = 0 \implies 1 \\ n \neq 0 \implies 0 \end{cases}

Questa definizione mantiene tutte le proprietà della delta di Dirac:

  • il suo integrale vale 1;
  • è una funzione simmetrica;
  • un impulso δ[nk]\delta[n - k] moltiplicato per un segnale discreto, ritorna il valore del segnale x[n]x[n] in posizione kk: x[k]x[k].

Dando in ingresso ad un sistema numerico LTI un impulso di Kronecker, otterremo la risposta impulsiva discreta.

In generale l’effetto è un allargamento dell’impulso su una certa sequenza di campioni. Per questo motivo questa operazione viene spesso chiamata Point Spread Function (PSF).

La convoluzione tra segnali discreti diventa:

y[n]=x[n]h[n]=k=+x[k] h[nk]y[n] = x[n] * h[n] = \sum_{k = -\infty}^{+\infty} x[k]\ h[n - k]