marco cagnazzo elaborazione dei segnali multimediali 28 ...unina.stidue.net/elaborazione di segnali...
TRANSCRIPT
Gli standard di Gli standard di Gli standard di Gli standard di codifica videocodifica video
Marco CagnazzoMarco Cagnazzo
Elaborazione dei Segnali MultimedialiElaborazione dei Segnali Multimediali
28 28 maggio maggio 2010201028 28 maggio maggio 20102010
SommarioSommario• MPEG-1MPEG 1
Tipi di frameME/MC a precisione frazionariaME/MC a precisione frazionaria
• MPEG-2 e scalabilità• MPEG-4 e codifica a oggetti• H.264/AVC (Advanced video coding)H.264/AVC (Advanced video coding)
Tecniche avanzate di codifica videoControllo operazionale tasso/distorsioneControllo operazionale tasso/distorsione
• H.264/SVC (Scalable video coding)
ESM – Codifica Video 222 maggio 2009
Lo standard MPEG 1Lo standard MPEG-1• Tasso ≤ 1 5 Mbps (qualità video CD)• Tasso ≤ 1.5 Mbps (qualità video CD)
• Codificatore ibrido con MC
• Tipi di frame• Tipi di frame
• ME/MC a precisione frazionaria
ESM – Codifica Video 322 maggio 2009
Lo standard MPEG-1: tipi di f ametipi di frame
• Frame I Intra coded } anchor frame (AF)
• Frame P Predictive} (AF)
• Frame B Bidirectional• Frame B Bidirectional
• Frame D DC coded
ESM – Codifica Video 422 maggio 2009
Lo standa d MPEG 1 st tt a del GoPLo standard MPEG-1: struttura del GoP
• Frame organizzate in Groups of Pictures• La prima è sempre una ILa prima è sempre una I• Struttura
N i t ll t d I 8 i t N: intervallo tra due I, 8 in questo casoM: intervallo tra due AF, 2 in questo caso
I B PB B PB BB I B PB
Gop n Gop n+1
…I B PB B PB BB I B PB
ESM – Codifica Video 522 maggio 2009
Lo standard MPEG-1: F ame Int aFrame Intra
• Codificate con JPEG: indipendenti• Codificate con JPEG: indipendenti
• Tutti i MB sono codificati in modo Intra
l• Utili per:Fast Forward
Accesso casuale
Recupero da errori
I B PB B PB BB I B PB
Gop n Gop n+1
…I B PB B PB BB I B PB
ESM – Codifica Video 622 maggio 2009
Lo standard MPEG-1: F ame P edicti eFrame Predictive
• I MB possono essere Intra o InterI MB possono essere Intra o Inter
• Predizione unicamente dalla AF precedente
M i i• Maggiore compressione
• Necessità di ME e MC (maggiore complessità)
I B PB B PB BB I B PB
Gop n Gop n+1
…I B PB B PB BB I B PB
ESM – Codifica Video 722 maggio 2009
Lo standard MPEG-1: F ame Bidi ectionalFrame Bidirectional
• È possibile predire un MB dalla AF precedente o • È possibile predire un MB dalla AF precedente o dalla AF successive
• I MB possono essere anche IntraI MB possono essere anche Intra• Più compresse delle P (doppia predizione)• Doppia ME e MC (massima complessità)• Doppia ME e MC (massima complessità)
I B PB B PB BB I B PB
Gop n Gop n+1
…I B PB B PB BB I B PB
ESM – Codifica Video 822 maggio 2009
Lo standard MPEG-1: ME a p ecisione f a iona iaME a precisione frazionaria
• Non è detto che il movimento di un • Non è detto che il movimento di un oggetto corrisponda ad un numero intero di pixelintero di pixel
• Si effettua la ME “a mezzo pixel” interpolando la frame di riferimento interpolando la frame di riferimento
• Aumento notevole della complessità e delle prestazionip
ESM – Codifica Video 922 maggio 2009
Lo standard MPEG-1: ME a p ecisione f a iona iaME a precisione frazionaria
V=(2,3) V=(1.5,2.5)
ESM – Codifica Video 1022 maggio 2009
Lo standard MPEG 1: parametriLo standard MPEG-1: parametri
• Molti parametri dell’algoritmo non sono • Molti parametri dell algoritmo non sono predefiniti
Diametro finestra MEDiametro finestra ME
Criterio di ME
Frequenza di I-frame e di B-frame
• Compatibilità
• Concorrenza tra le implementazioni
ESM – Codifica Video 1122 maggio 2009
Lo standard MPEG 2Lo standard MPEG-2• Algoritmo di codifica immutato• Algoritmo di codifica immutato
• Bit-rate fino a 15Mbps con qualità HDTV
• Profili e livelli
• Il supporto alla scalablità• Il supporto alla scalablità
ESM – Codifica Video 1222 maggio 2009
La scalabilitàLa scalabilità• Codifica a tasso prossimo a quello • Codifica a tasso prossimo a quello
disponibile sul canale R• Decodifica di tutti i dati ricevuti
• Ottimizzazione della codifica per il Ottimizzazione della codifica per il tasso R
ESM – Codifica Video 1322 maggio 2009
La scalabilitàLa scalabilità• Tasso disponibile e velocità del • Tasso disponibile e velocità del
decodificatore sul canale sconosciuti i bilio variabili
• Ottimizzazione della codifica per l’intervallo di tassi [R1,R2]
ESM – Codifica Video 1422 maggio 2009
La scalabilitàLa scalabilità• Un bitstream scalabile è strutturato • Un bitstream scalabile è strutturato
in strati o “layer”• Anche avendo solo alcuni layer, è
possibile ricostruire il segnale possibile ricostruire il segnale (seppure con qualità o risoluzione ridotte)ridotte)
• Queste ricostruzioni sono efficienti Qin termini RD
ESM – Codifica Video 1522 maggio 2009
La scalabilitàLa scalabilità
Bitstream non scalabile Ricezione parziale
ESM – Codifica Video 1722 maggio 2009
La scalabilitàLa scalabilità
Bitstream scalabile Ricezione parziale
ESM – Codifica Video 1922 maggio 2009
La scalabilità: esempioLa scalabilità: esempio
Risoluzione
Quualità
ESM – Codifica Video 2022 maggio 2009
La scalabilitàLa scalabilitàCodifica scalabile due layer a 400 e 800 kbps
Codifica non scalabile, un layer 200 kbps
Codifica scalabile desiderata
Codifica scalabile, due layer a 400 e 800 kbps
C difi l bil l 900 kbQualità
Curva limite
Codifica non scalabile, un layer 900 kbps
sequenza decodifica
Banda disponibilesul canale
ata
ESM – Codifica Video 2322 maggio 2009
La scalabilità: esempioLa scalabilità: esempio
Server RouterClient 1
Server
Client 3
Router
Router
Client 2
Senza scalabilità…
ESM – Codifica Video 2422 maggio 2009
La scalabilità: esempioLa scalabilità: esempio
Server RouterClient 1
Server
Client 3
Router
Router
Client 2
Con scalabilità…
ESM – Codifica Video 2522 maggio 2009
Lo standard MPEG-2:la scalabilitàla scalabilità
MPEG-2 fornisce scalabilità in:MPEG-2 fornisce scalabilità in:
• risoluzione
• qualità• qualità
• frame-rate
ESM – Codifica Video 2622 maggio 2009
Lo standard MPEG-2:la scalabilità in q alitàla scalabilità in qualità
MPEG(Q1)Input video
LivelloBase
MPEG(Q2)LivelloEnhanced
ESM – Codifica Video 2722 maggio 2009
Lo standard MPEG-2:la scalabilità in isol ionela scalabilità in risoluzione
MPEG(Q1)Input video
LivelloBase
2
2
MPEG(Q2)LivelloEnhanced
ESM – Codifica Video 2822 maggio 2009
Lo standard MPEG-2:la scalabilità in f ame atela scalabilità in frame-rate
• Ricevere solo le anchor frame t tt• oppure tutte
B BB BBB
enhancement
B BB BBB
P P II
Gop nbase
ESM – Codifica Video 2922 maggio 2009
Lo standard MPEG 4Lo standard MPEG-4• Lo standard MPEG-4 fornisce un • Lo standard MPEG-4 fornisce un
insieme di tecnologie orientate a ddi f l i di soddisfare le esigenze di: chi produce il segnale video (autori);p g ( );
chi lo distribuisce (provider di servizi di rete); rete);
e chi ne usufruisce (utenti).
ESM – Codifica Video 3022 maggio 2009
Lo standard MPEG 4Lo standard MPEG-4• Autori
la produzione di contenuti con una elevata riusabilità maggiore flessibilità gggrafici animati interazione con pagine WWW migliore gestione dei diritti d'autore
• Fornitori di serviziinformazioni di trasporto più complete e flessibilidescrittori di qualità di servizio (QoS)
• Utentielevato livello d'interazione con il contenutotecniche di codifica ad elevata efficienza
ESM – Codifica Video 3122 maggio 2009
Lo standa d MPEG 4 codifica a oggettiLo standard MPEG-4: codifica a oggetti
• Rappresentazione oggetti/sfondo• Rappresentazione oggetti/sfondo• Modelli complessi di movimentop• Codifica di:
Sfondo (Sprite)
Contorno (Punti di controllo)Contorno (Punti di controllo)
Texture (EZW adattato alla forma)
• Segmentazione?
ESM – Codifica Video 3222 maggio 2009
Lo standa d MPEG 4 codifca pe sp iteLo standard MPEG-4: codifca per sprite
ESM – Codifica Video 3322 maggio 2009
Lo standard H 264Lo standard H.264• Nuovi strumenti di codificaNuovi strumenti di codifica
Filtro di deblockingCodifica aritmetica adattativa contestualeCodifica aritmetica adattativa contestualeTrasformata intera
• Nuovi modi di codificaIntra con predizione, Inter con blocchi di dimensione variabile
• Ottimizzazione RDStima del movimento ottimizzataScelta dei modi ottimizzataScelta dei modi ottimizzata
ESM – Codifica Video 3422 maggio 2009
Lo standard H 264Lo standard H.264• E’ un codificatore ibrido
• La codifica è fatto macroblocco per • La codifica è fatto macroblocco per macroblocco
• Esistono molti modi di codifica per ogni macrobloccomacroblocco
L l d l d è d di• La scelta del modo non è standardizzataottimizzazione tasso-distorsione della scelta
ESM – Codifica Video 3522 maggio 2009
Schema del codificatore H 264Schema del codificatore H.264Control
Input
Control
DCT Mod4x4 Q CABAC/
CAVLCChannelBuffer
x e4x4 CAVLC Buffer
xpQ*
MEIDCT Mod
4x4I t /I t
MV
Inter/Intra
DeblockingFilter
IntraPrediction
MC FrameBuffer
xqeq
xp
ESM – Codifica Video 3622 maggio 2009
xp
Modi di codifica in H 264Modi di codifica in H.264• Skipped• Skipped• Modi Inter
16x16 16x8 8x16 8x8 8x4 4x8
• Modi Intra16x16 4x4 (anche 8x8 nell’estensione)16x16 4x4 (anche 8x8 nell estensione)
• IPCMLossless (valori di luminanza e crominanza senza compressione)crominanza senza compressione)
ESM – Codifica Video 3722 maggio 2009
Modo skippedModo skipped• Si usa la compensazione del • Si usa la compensazione del
movimento• Il vettore è ricavato dai vicini
Non si trasmette l’errore di • Non si trasmette l’errore di predizione
• Costo di codifica basso, distorsione alta
ESM – Codifica Video 3822 maggio 2009
Modi InterModi Inter
• Stima e compensazione del movimento mono e bi-direzionale
• Precisione al quarto di pixel• Blocchi di dimensione variabile
16x168x1616x88x84x88x44x4
ESM – Codifica Video 3922 maggio 2009
Modi InterModi Inter
• B-frame generalizzateMedia pesata delle due predizioniMedia pesata delle due predizioniScelta relativamente libera delle frame di riferimento (liste)di riferimento (liste)
• Stima del movimento con precisione al quarto di pixel
Prima interpolazione: filtro a 6 Prima interpolazione: filtro a 6 coefficientiSeconda interpolazione: bilineareSeconda interpolazione: bilineare
ESM – Codifica Video 4022 maggio 2009
Modi IntraModi Intra
• Predizione spaziale più trasformata a coefficienti interi
• Predizione su zone omogeneeBlocchi 16x16Predizione lungo 2 direzioni, media, g , ,planare
ESM – Codifica Video 4122 maggio 2009
Modi IntraModi Intra
• Predizione spaziale più trasformata a coefficienti interi
• Predizione su zone omogeneeBlocchi 16x16Predizione lungo 2 direzioni, media, g , ,planare
Predizione orizzontale
ESM – Codifica Video 4222 maggio 2009
Modi IntraModi Intra
• Predizione spaziale più trasformata a coefficienti interi
• Predizione su zone omogeneeBlocchi 16x16Predizione lungo 2 direzioni, media, g , ,planare
Predizione verticale
ESM – Codifica Video 4322 maggio 2009
Modi IntraModi Intra
• Predizione spaziale più trasformata a coefficienti interi
• Predizione su zone omogeneeBlocchi 16x16Predizione lungo 2 direzioni, media, g , ,planare
Predizione media
ESM – Codifica Video 4422 maggio 2009
Modi IntraModi Intra
• Predizione spaziale più trasformata a coefficienti interi
• Predizione su zone omogeneeBlocchi 16x16Predizione lungo 2 direzioni, media, g , ,planare
Predizione planare
ESM – Codifica Video 4522 maggio 2009
Modi IntraModi Intra• Predizione dei dettagli• Predizione dei dettagli
Blocchi 4x4
Predizione lungo 8 direzioni, media
E t i bl hi 8 8 di i • Estensione: blocchi 8x8, predizione come nel caso 4x4
• Si trasmette un simbolo che individua il tipo di predizioneindividua il tipo di predizione
ESM – Codifica Video 4622 maggio 2009
Confronto modiConfronto modi
9
x 104 foreman 1 - All MB - Quarter pixel - QP = 37
SkipInter16x16
6
7
8D
Intra4x4Intra16x16IPCM
4
5
6
isto
rtion
-S
SD
2
3
Di
101 102 1030
1
ESM – Codifica Video 4722 maggio 2009
Rate - bits
Scelta del modoScelta del modo
• La scelta del modo è fatta in modo da minimizzare la distorsione per un da minimizzare la distorsione per un bit-rate assegnato
• Si confrontano i modi per un certo passo di quantizzazione Qp q Q
D = DREC(m|Q)R = RREC(m|Q)J( λ|Q) D ( |Q) λR ( |Q)J(m,λ|Q) =DREC(m|Q) + λRREC(m|Q)
ESM – Codifica Video 4822 maggio 2009
Scelta del modoScelta del modo
Skip
Distorsione
Intra
InterD+λ1R = J Intra
Tasso
D λ1R J
ESM – Codifica Video 4922 maggio 2009
Scelta del modoScelta del modo
J( λ|Q) D ( |Q) + λR ( |Q)J(m,λ|Q) =DREC(m|Q) + λRREC(m|Q)• Come si sceglie λ per un certo Q?Come si sceglie λ per un certo Q?• Relazione sperimentale:
Q/3 4λOPT=0.85·2Q/3-4
ESM – Codifica Video 5022 maggio 2009
Stima del movimentoStima del movimento• Anche la stima del movimento è • Anche la stima del movimento è
realizzata con un criterio ottimizzato
J (v λ) D (v) + λ R (v)JME(v,λ) =DDFD(v) + λMERME(v)
Relazione sperimentale tra λME e λ
ESM – Codifica Video 5122 maggio 2009
Lo standard SVCLo standard SVC• Scalable Video Coding (SVC) • Scalable Video Coding (SVC) • Estensione scalabile di H.264• Scalabilità temporale simile a MPEG• Scalabilità in qualità con codifica per
bit-planebit plane• Scalabilità in risoluzione con
predizione (schema piramidale)
ESM – Codifica Video 5222 maggio 2009