You are on page 1of 11

Sistemi Multimediali

Codifica video

Il video digitale
La definizione di video digitale corrisponde
alla codifica numerica di un segnale video.

Esso eredita numerosissimi concetti dal


video analogico, e li trasporta in digitale.
Marco Gribaudo

marcog@di.unito.it,
gribaudo@elet.polimi.it

Il video digitale

Il video digitale

Un video viene codificato con una sequenza di


immagini che si susseguono ad una velocita' costante
nel tempo.

Per un fenomeno chiamato "persistenza della visione"


il cervello umano interpreta una sequenza di immagini
che si succedono come un flusso in movimento.

Il video digitale

Il video digitale

La velocita' a cui si susseguono i


fotogrammi e' misurata in fotogrammi al
secondo (FPS).
Questa' velocita' e' chiamata frame rate.

Alcune frame rate comuni sono:

24 FPS :
25 FPS :
30 FPS :

Cinema
Televisione PAL
Televisione NTSC

Il video digitale
Il segnale televisivo e' codificato mandando "meta'"
fotogramma al doppio della frequenza.

Il video digitale
Un video che segue lo standard
televisivo e' detto interlacciato.

Il video digitale
Questo puo' dare origine ad immagini che viste
singolarmente hanno un aspetto suddiviso a righe. Tale
fenomeno viene detto combing.

Il video digitale
Un video digitale che invia i fotogrammi in modo
completo e' detto progressivo.

Il video digitale
E' importante considerare il fatto che un video sia
interlacciato, poiche' in molte riprese questo viene
utilizzato per "raddoppiare" la framerate.

Il video digitale
Alcune dimensioni comuni sono:

720 x 576 : PAL


720 x 480 : NTSC
1920 x 1020 : HD-TV

Il video digitale
Questo porta a necessita' di memorizzazione motlo
elevate:

Es: 1 minuto PAL:


60 x 25 x 720 x 576 =
= 622.080.000
pixel al minuto

Il video digitale

Il video digitale
Le tecniche di compressione si dividono in:

Intra-frame
Inter-frame

Il video digitale

Le codifiche Intra-frame sfruttano


solamente le similitudini all'interno di un
fotogramma.

Le codifiche Iner-frame, sfruttano anche le


similitudini presenti in sequenze di
fotogrammi successivi.

Forniscono un fattore di compressione


inferiore, ma richeidono un minor numero
di risorse per effettuare le operazioni di
compressione e decompressione.

Questo permette fattori di compressioni


notevoli, anche se richiede un numero di
risorse notevole.

Compressione intra-frame Compressione intra-frame


Due codifiche intra-frame estremamente
popolari sono:
DV
M-JPEG

Il formato DV e' uno dei formati video digitali piu' diffusi in


ambiente professionale.

Compressione intra-frame Compressione intra-frame


Utilizza come supporto apposite cassette, e effettua
una compressione 1:5 rispetto al segnale originale.

Il colore per il segnale NTSC viene codificato in 4:1:1,


mentre invece quello PAL 4:2:0

Compressione intra-frame Compressione intra-frame


Il formato effettua una trasformata DCT dei
fotogrammi, dopo averli suddivisi in blocchi 8x8. La
codifica finale pero' e' meno complessa rispetto al
JPEG.

Prevede anche
una seconda
strategia di
formazione dei
blocchi (applicata
prima della
trasformata) per
considerare
fotogrammi
interlacciati.

Compressione intra-frame Compressione intra-frame


Il Motion JPEG (M-JPEG) e' un formato
che codifica i fotogrammi di un filmato
utilizzando lo standrd JPEG.

Lo standard M-JPEG e' usato in alcune


applicazioni particolari, come la codifica
dei filmati nella Playstation (1).

Questo consente una discreta qualita' ed


una quantita' ridotta di risorse per la
codifica e la decodifica.

M-JPEG non va confuso con lo standard


MPEG, capace di supportare anche
compressioni inter-frame.

Compressione inter-frame Compressione inter-frame


In un filmato, solamente si muovono
soltanto gli elementi in primo piano,
mentre invece lo sfondo rimane costante.

Invece che codificare interamente un fotogramma,


questo viene solitamente codificato come differenza
rispetto al precedente.

Le compressioni interframe cercano di


sfruttare questa caratteristica per ridurre la
quantita' di dati necessari alla codifica di
un fotogramma.

Compressione inter-frame Compressione inter-frame


Anche in questo caso si cerca di rendere
la differenza piu' efficiente adottando una
funzione di predizione.

A seconda dei fotogrammi che si considerano,


l'efficacia della predizione puo' essere diversa.
Consideriamo ad esempio il fotogramma al centro.

In un filmato la predizione si implementa


cercando di identificare i movimenti: per
questo viene solitamente definita come
compensazione del movimento.

Compressione inter-frame Compressione inter-frame


Esso puo' essere costruito per differenza rispetto al
precedente (le differenze sono indicate in nero).

Rispetto al successivo.

Compressione inter-frame
Oppure puo' cercare di recuperare il massimo delle
informazioni da entrambe i fotogrammi.

Lo standard MPEG
Lo standard MPEG e' lo standard di
comperssione video attualmente piu'
diffuso.
Esistono numerose varianti ed estensioni
che lo rendono applicabile in moltissimi
contesti.

Lo standard MPEG
Lo standard MPEG-1 e' quello utilizzato dai
Video CD e supporta un numero ristretto di
dimensioni e di velocita' di trasmissione.
Lo standard MPEG-2 e' quello usato nei DVD e
nelle trasmissioni digitali terrestri e satelliatri.
Esso estende MPEG-1 per velocita' di
trasmissione e caratteristiche supportate.
MPEG-4 e' uno standard invece destinato a
fornire compressioni superiori e a lavorare a
velocita' di trasmissione ridotte.

Lo standard MPEG
Lo standard MPEG prevede una codifica
del colore 4:2:0.
Presenta anche esso numerose
caratteristiche per considerare immagini
interlacciate.

Lo standard MPEG
Anche se i tre fomrati presentano notevoli
differenze, essi si basano sugli stessi
prinicpi.
Esistono altri standard sotto il nome di
MPEG (MPEG-7 ed MPEG-21), ma non
sono standard di compressione video,
bensi' di raccolta di contenuti multimediali.

Lo standard MPEG
Cosi come nel DV e nel JPEG, l'immagine viene
suddivisa in blocchi da 8x8 pixel.

Lo standard MPEG
Essendo 4:2:0, i blocchi da 8x8 pixel sono raggruppati
in blocchi da 16x16 (4 Y + 1 CR + CB) chiamati
Macroblocchi.

I tipi di fotogrammi
MPEG supporta la predizione del
movimento sia in avanti che in modalita'
bidirezionale.
Lo standard classifica i fotogrammi in
modo diverso a seconda di come la
predizione viene effettuata.

I tipi di fotogrammi
I fotogrammi che non vengono calcolati in
modo predittivo vengono chiamati IFrame. (I = Intra-coded)

I tipi di fotogrammi
I fotogrammi codificati per differenza rispetto ai
precedenti sono chiamati P-frame (P = predictivecoded).

Essi consistono in immagini codificate in


modo molto simile alle fotografie JPEG.

I tipi di fotogrammi
Ogni macroblocco ha associato un vettore di distanza,
utilizzato per effettuare la predizione.

I tipi di fotogrammi
Per ottenere
predizioni piu'
accurate, i
vettori hanno
una risluzione
di mezzo
pixel.

I tipi di fotogrammi
I vettori,
essendo
molto simili,
vengono
codificati per
differenza
rispetto a
quelli vicini.

I tipi di fotogrammi
I B-frame (B = Bidirectional) utilizzano un predittore
che e' una combinazione lineare di due predizioni,
provenienti da un fotogramma precedente e da uno
successivo.

I tipi di fotogrammi
I valori
intermedi
vengono
calcolati per
interpolazione.

I tipi di fotogrammi
In questo caso ci sono due vettori di predizione per
macroblocco.

I tipi di fotogrammi

I tipi di fotogrammi

Vi sono inoltre differenti modalita' con cui effettuare le


predizioni per tenere conto dei segnali interlacciati.

Solitamente si inserisce un I-frame ed un P-frame ogni


6, e si utilizzano 4 B-frame nel mezzo.

I tipi di fotogrammi
Un insieme di fotogrammi posizionato tra due I-frame
prende il nome di GOP (Group of Pictures).

I tipi di fotogrammi
L'ordine in cui i fotogrammi vengono codificati deve
tenere conto del loro tipo, ed anticipare alcuni
fotogrammi per permettere la decodifica di quelli
intermedi.

I tipi di fotogrammi

I tipi di fotogrammi

Per poter gesitere la predizione


bidirezionale occorre abbastanza memoria
per memorizzare 3 frames.

Inoltre, l'ordine dei frame impone un certo delay


nella trasmissione: un fotogramma B puo'
essere mandato solo dopo aver acquisito il
fotogramma P o I successivo.

Questo e' uno degli aspetti che rende le


richieste di risorse di computazione per
decodificare l'MPEG superioiri a quelle
necessarie per l' M-JPEG.

A 25 FPs, nel caso dei GOP presentati prima,


questo si traduce in un ritardo minimo di 4/25 di
secondo (0,16 sec) - quattro volte superiore a
quello dell' M-JPEG.
Questo problema e' particolarmente sentito in
applicazioni di videoconferenza.

La codifica

La codifica

Dopo aver effetuto la predizione, la


differenza rispetto a questo e' codificata
utilizzando una tecnica pressoche'
identica a quella impiegata nelle immagini
JPEG.

Anche la decodifica e' molto simile a quella utilizzata


nel JPEG, con la sola aggiunta della compensazione
del moto (somma della predizione).

In particolare, anche MPEG sfrutta una


codifica lossy basata su DCT.

La codifica
MPEG puo' tenere in conto le caratteristiche dovute al
video interlacciato. Se tra due fotogrammi non vi e'
movimento (assenaza di combing), la codifica segue il
fotogramma in ingresso.

La codifica
Se e' presente un effetto di combing, i fotogrammi
possono essere ordinati a linee alternate.

La codifica

La codifica

Come accennato, la differenza e' codificata utilizzando


una DCT. La tipologia di trasformata usata e' la stessa
impiegata nel JPEG.

Anche in questo caso i coefficienti vengono codificati


attraverso apposite tabelle.

La codifica

La codifica

Cosi come per il JPEG, le tabelle di


quantizzazione possono essere definite
nel filmato.
Lo standard permette di differenziare non
solo le tabelle utilizzate per la luminanza e
per la crominanza, ma anche tra quelle
usate per gli I-frame (quelli interi) ed i Pframe o B-frame (quelli codificati in modo
differenziale).

Cosi come per il JPEG, il termine DC e' codificato


come differenza rispetto al precedente.

La codifica
Ed i coefficienti AC sono memorizzati secondo lo
stesso percorso a zig-zag.

La codifica
Infine, tutti i valori che
identificano un fotogramma,
vengono codificati attraverso un
codice di Huffman modificato. In
questo caso i valori
comprendono non solo il
coefficente DC ed i coefficienti
AC, ma anche i vettori per la
compensazione.

La bit-rate

La bit-rate

Dal momento che i filmati possono essere


estramamente pesanti, e' importante poter
stimare la quantita di memoria necessaria
in base alla lora lunghezza.

A differenza del JPEG, nell'MPEG si ha il


problema di dover garantire una bit-rate
costante.

Viene chiamata bit-rate la quantita' media


di bit richiesta per codificare un secondo
di filmato.

La qualita' del filmato viene quindi


dinamicamente alterata in modo da
conservare la bit-rate: piu' questo valore e'
alto, migliore e' la resa del filmato.

La bit-rate

La bit-rate

La bit-rate viene determinata in funzione della


complessita' della scena e delle tabelle di
quantizzazione usate.

Il codificatore sceglie la tabella piu' opportuna per


mantenere la bit-rate piu' o meno costante.

You might also like