Gli standard di codifica video Marco Cagnazzo Elaborazione dei Segnali Multimediali 28 maggio 2010
Sommario MPEG-1 Tipi di frame ME/MC a precisione frazionaria MPEG-2 e scalabilità MPEG-4 e codifica a oggetti H.264/AVC (Advanced video coding) Tecniche avanzate di codifica video Controllo operazionale tasso/distorsione H.264/SVC (Scalable video coding) ESM Codifica Video 2
Lo standard MPEG-1 Tasso 1.5 Mbps (qualità video CD) Codificatore ibrido con MC Tipi di frame ME/MC a precisione frazionaria ESM Codifica Video 3
Lo standard MPEG-1: tipi di frame Frame I Intra coded Frame P Predictive } anchor frame (AF) Frame B Bidirectional Frame D DC coded ESM Codifica Video 4
Lo standard d MPEG-1: struttura tt del GoP Frame organizzate in Groups of Pictures La prima è sempre una I Struttura N: intervallo tra due I, 8 in questo caso M: intervallo tra due AF, 2 in questo caso Gop n Gop n+1 I B B P B B P B B I B B P ESM Codifica Video 5
Lo standard MPEG-1: Fame Frame Intra Inta Codificate con JPEG: indipendenti Tutti i MB sono codificati in modo Intra Utili per: Fast Forward Accesso casuale Recupero da errori Gop n Gop n+1 I B B P B B P B B I B B P ESM Codifica Video 6
Lo standard MPEG-1: Fame Frame Predictive Pedicti e I MB possono essere Intra o Inter Predizione unicamente dalla AF precedente Maggiore compressione Necessità di ME e MC (maggiore complessità) Gop n Gop n+1 I B B P B B P B B I B B P ESM Codifica Video 7
Lo standard MPEG-1: Fame Frame Bidirectional Bidiectional È possibile predire un MB dalla AF precedente o dalla AF successive I MB possono essere anche Intra Più compresse delle P (doppia predizione) Doppia ME e MC (massima complessità) Gop n Gop n+1 I B B P B B P B B I B B P ESM Codifica Video 8
Lo standard MPEG-1: ME a precisione frazionaria ia Non è detto che il movimento di un oggetto corrisponda ad un numero intero di pixel Si effettua la ME a mezzo pixel interpolando la frame di riferimento Aumento notevole della complessità e delle prestazioni ESM Codifica Video 9
Lo standard MPEG-1: ME a precisione frazionaria ia V=(2,3) V=(1.5,2.5) ESM Codifica Video 10
Lo standard MPEG-1: parametri Molti parametri dell algoritmo non sono predefiniti Diametro finestra ME Criterio di ME Frequenza di I-frame e di B-frame Compatibilità Concorrenza tra le implementazioni ESM Codifica Video 11
Lo standard MPEG-2 Algoritmo di codifica immutato Bit-rate fino a 15Mbps con qualità HDTV Profili e livelli Il supporto alla scalablità ESM Codifica Video 12
La scalabilità Codifica a tasso prossimo a quello disponibile sul canale R Decodifica di tutti i dati ricevuti Ottimizzazione della codifica per il tasso R ESM Codifica Video 13
La scalabilità Tasso disponibile e velocità del decodificatore sul canale sconosciuti o variabili Ottimizzazione della codifica per l intervallo di tassi [R 1,R 2 ] ESM Codifica Video 14
La scalabilità Un bitstream scalabile è strutturato in strati o layer Anche avendo solo alcuni layer, è possibile ricostruire il segnale (seppure con qualità o risoluzione ridotte) Queste ricostruzioni sono efficienti in termini RD ESM Codifica Video 15
La scalabilità Bitstream non scalabile ESM Codifica Video 16
La scalabilità Bitstream non scalabile Ricezione parziale ESM Codifica Video 17
La scalabilità Bitstream scalabile ESM Codifica Video 18
La scalabilità Bitstream scalabile Ricezione parziale ESM Codifica Video 19
La scalabilità: esempio Risoluzione Qualità ESM Codifica Video 20
La scalabilità Risoluzione Qualità ESM Codifica Video 21
La scalabilità Risoluzione Qualità ESM Codifica Video 22
La scalabilità Qualità Codifica scalabile, due layer a 400 e 800 kbps Codifica scalabile desiderata Codifica non scalabile, un layer 200 kbps Codifica non scalabile, un layer 900 kbps Curva limite sequenza decodifica ata Banda disponibile sul canale ESM Codifica Video 23
La scalabilità: esempio Server Router Client 1 Client 3 Router Client 2 Senza scalabilità ESM Codifica Video 24
La scalabilità: esempio Server Router Client 1 Client 3 Router Client 2 Con scalabilità ESM Codifica Video 25
Lo standard MPEG-2: la scalabilità MPEG-2 fornisce scalabilità in: risoluzione qualità frame-rate ESM Codifica Video 26
Lo standard MPEG-2: la scalabilità in qualità Input video MPEG(Q 1 ) Livello Base MPEG(Q 2 ) Livello Enhanced ESM Codifica Video 27
Lo standard MPEG-2: la scalabilità in risoluzione ione Input video 2 MPEG(Q 1 ) Livello Base 2 MPEG(Q 2 ) Livello Enhanced ESM Codifica Video 28
Lo standard MPEG-2: la scalabilità in frame-rate ate Ricevere solo le anchor frame oppure tuttett enhancement B B B B B B I P P I Gop n base ESM Codifica Video 29
Lo standard MPEG-4 Lo standard MPEG-4 fornisce un insieme di tecnologie orientate a soddisfare le esigenze di: chi produce il segnale video (autori); chi lo distribuisce (provider di servizi di rete); e chi ne usufruisce (utenti). ESM Codifica Video 30
Lo standard MPEG-4 Autori la produzione di contenuti con una elevata riusabilità maggiore flessibilità grafici animati interazione con pagine WWW migliore gestione dei diritti d'autore Fornitori di servizi informazioni di trasporto più complete e flessibili descrittori di qualità di servizio (QoS) Utenti elevato livello d'interazione con il contenuto tecniche di codifica ad elevata efficienza ESM Codifica Video 31
Lo standard d MPEG-4: codifica a oggetti Rappresentazione oggetti/sfondo Modelli complessi di movimento Codifica di: Sfondo (Sprite) Contorno (Punti di controllo) Texture (EZW adattato alla forma) Segmentazione? ESM Codifica Video 32
Lo standard d MPEG-4: codifca per sprite ESM Codifica Video 33
Lo standard H.264 Nuovi strumenti di codifica Filtro di deblocking Codifica aritmetica adattativa contestuale Trasformata intera Nuovi modi di codifica Intra con predizione, Inter con blocchi di dimensione variabile Ottimizzazione RD Stima del movimento ottimizzata Scelta dei modi ottimizzata ESM Codifica Video 34
Lo standard H.264 E un codificatore ibrido La codifica è fatto macroblocco per macroblocco Esistono molti modi di codifica per ogni macroblocco La scelta del modo non è standardizzata di ottimizzazione tasso-distorsione della scelta ESM Codifica Video 35
Schema del codificatore H.264 Control Input x e DCT Mod CABAC/ Channel Q 4x4 CAVLC Buffer x p Q* ME Inter/Intra t IDCT Mod 4x4 MV Intra Prediction Deblocking Filter MC Frame Buffer x q e q x p ESM Codifica Video 36
Modi di codifica in H.264 Skipped Modi Inter 16x16 16x8 8x16 8x8 8x4 4x8 Modi Intra 16x16 4x4 (anche 8x8 nell estensione) estensione) IPCM Lossless (valori di luminanza e crominanza senza compressione) ESM Codifica Video 37
Modo skipped Si usa la compensazione del movimento Il vettore è ricavato dai vicini Non si trasmette l errore di predizione Costo di codifica basso, distorsione alta ESM Codifica Video 38
Modi Inter Stima e compensazione del movimento mono e bi-direzionale Precisione al quarto di pixel Blocchi di dimensione variabile 16x16 8x16 16x8 8x8 4x8 8x4 4x4 ESM Codifica Video 39
Modi Inter B-frame generalizzate Media pesata delle due predizioni Scelta relativamente libera delle frame di riferimento (liste) Stima del movimento con precisione al quarto di pixel Prima interpolazione: filtro a 6 coefficienti Seconda interpolazione: bilineare ESM Codifica Video 40
Modi Intra Predizione spaziale più trasformata a coefficienti interi Predizione su zone omogenee Blocchi 16x16 Predizione lungo 2 direzioni, media, planare ESM Codifica Video 41
Modi Intra Predizione spaziale più trasformata a coefficienti interi Predizione su zone omogenee Blocchi 16x16 Predizione lungo 2 direzioni, media, planare Predizione orizzontale ESM Codifica Video 42
Modi Intra Predizione spaziale più trasformata a coefficienti interi Predizione su zone omogenee Blocchi 16x16 Predizione lungo 2 direzioni, media, planare Predizione verticale ESM Codifica Video 43
Modi Intra Predizione spaziale più trasformata a coefficienti interi Predizione su zone omogenee Blocchi 16x16 Predizione lungo 2 direzioni, media, planare Predizione media ESM Codifica Video 44
Modi Intra Predizione spaziale più trasformata a coefficienti interi Predizione su zone omogenee Blocchi 16x16 Predizione lungo 2 direzioni, media, planare Predizione planare ESM Codifica Video 45
Modi Intra Predizione dei dettagli Blocchi 4x4 Predizione lungo 8 direzioni, media Estensione: blocchi 8x8, 8 predizione i come nel caso 4x4 Si trasmette un simbolo che individua il tipo di predizione ESM Codifica Video 46
Confronto modi x 10 4 foreman 1 - All MB - Quarter pixel - QP = 37 9 8 7 Skip Inter16x16 Intra4x4 Intra16x16 IPCM istortion - SSD Di 6 5 4 3 2 1 0 10 1 10 2 10 3 Rate - bits ESM Codifica Video 47
Scelta del modo La scelta del modo è fatta in modo da minimizzare la distorsione per un bit-rate assegnato Si confrontano i modi per un certo passo di quantizzazione Q D = D REC (m Q) R = R REC (m Q) J(m,λ Q) =D REC (m Q) + λr REC (m Q) ESM Codifica Video 48
Scelta del modo Skip Distorsione D+λ λ 1 R = J Inter Intra Tasso ESM Codifica Video 49
Scelta del modo J(m,λ Q) =D REC (m Q) + λr REC (m Q) Come si sceglie λ per un certo Q? Relazione sperimentale: λ OPT =0.85 2 Q/3-4 ESM Codifica Video 50
Stima del movimento Anche la stima del movimento è realizzata con un criterio ottimizzato J ME (v,λ) =D DFD (v) + λ ME R ME (v) Relazione sperimentale tra λ ME e λ ESM Codifica Video 51
Lo standard SVC Scalable Video Coding (SVC) Estensione scalabile di H.264 Scalabilità temporale simile a MPEG Scalabilità in qualità con codifica per bit-plane Scalabilità in risoluzione con predizione (schema piramidale) ESM Codifica Video 52
Lo standard MVC ESM Codifica Video 53