Transcript
Page 1: Marco Cagnazzo Elaborazione dei Segnali Multimediali 27 ...unina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Slides/2 - Codifica...• Risoluzione : 576 × 720 pppixels

La codifica videoLa codifica video

Marco CagnazzoMarco Cagnazzo

Elaborazione dei Segnali MultimedialiElaborazione dei Segnali Multimediali

27 27 maggio maggio 2010201027 27 maggio maggio 20102010

Page 2: Marco Cagnazzo Elaborazione dei Segnali Multimediali 27 ...unina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Slides/2 - Codifica...• Risoluzione : 576 × 720 pppixels

SommarioSommario• Il segnale video• Il segnale video• La codifica video

Principi di base

C i i lCompressione spaziale

Tecniche di predizione temporalep p

Stima e compensazione del movimento

• Il codificatore ibrido

ESM – Codifica Video 227 maggio 2010

Page 3: Marco Cagnazzo Elaborazione dei Segnali Multimediali 27 ...unina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Slides/2 - Codifica...• Risoluzione : 576 × 720 pppixels

Il segnale video: esempioIl segnale video: esempio

ESM – Codifica Video 327 maggio 2010

Page 4: Marco Cagnazzo Elaborazione dei Segnali Multimediali 27 ...unina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Slides/2 - Codifica...• Risoluzione : 576 × 720 pppixels

Il segnale video: formatiIl segnale video: formati

Righe Colonne

QCIF 144 176

CIF 288 352

SD 576 704

HD720p 720 1280

ESM – Codifica Video 427 maggio 2010

Page 5: Marco Cagnazzo Elaborazione dei Segnali Multimediali 27 ...unina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Slides/2 - Codifica...• Risoluzione : 576 × 720 pppixels

Il segnale video: caratteristicheIl segnale video: caratteristiche

• Frame rate: 25 al secondo• Risoluzione : 576 × 720 pixels per frame p p

(Standard definition)• Colore : 3 canali per pixelp p• Precisione : 1 byte = 8 bit per canale

Totale : 25 × 576 × 720 × 3 × 8 ≈ 250 Mbps

Compressione

ESM – Codifica Video 527 maggio 2010

Page 6: Marco Cagnazzo Elaborazione dei Segnali Multimediali 27 ...unina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Slides/2 - Codifica...• Risoluzione : 576 × 720 pppixels

Il segnale video: ridondanzaIl segnale video: ridondanza

• Ridondanza statisticaL t ll di d t ti ti d i i iLegata alla dipendenza statistica dei campioni

• Ridondanza psicofisicaLegata all’incapacità del sistema visuale umano di cogliere tutti i dettagliSensibilità ai dettagli spaziali alle basse frequenze temporaliInsensibilità al colore in condizioni di scarsa luminositàff i di h

ESM – Codifica Video 627 maggio 2010

Effetti di mascheramento

Page 7: Marco Cagnazzo Elaborazione dei Segnali Multimediali 27 ...unina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Slides/2 - Codifica...• Risoluzione : 576 × 720 pppixels

Il segnale video: ridondanza spazialespaziale

Ampie aree omogenee all’interno di una singola immagine

ESM – Codifica Video 727 maggio 2010

singola immagine

Page 8: Marco Cagnazzo Elaborazione dei Segnali Multimediali 27 ...unina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Slides/2 - Codifica...• Risoluzione : 576 × 720 pppixels

Il segnale video: ridondanza temporaletemporale

Ampie aree immutate da un’immagine all’altra

ESM – Codifica Video 827 maggio 2010

Page 9: Marco Cagnazzo Elaborazione dei Segnali Multimediali 27 ...unina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Slides/2 - Codifica...• Risoluzione : 576 × 720 pppixels

Criteri di valutazione di un codificatore videocodificatore video

• Tasso di codifica• Tasso di codifica• QualitàQ

Oggettiva: percettiva, non percettiva

S iSoggettiva

• ComplessitàComplessità• Ritardo• Robustezza agli errori

ESM – Codifica Video 927 maggio 2010

Page 10: Marco Cagnazzo Elaborazione dei Segnali Multimediali 27 ...unina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Slides/2 - Codifica...• Risoluzione : 576 × 720 pppixels

Schema generale di n codificato e ideodi un codificatore video

Sequenza difi t

Compressione Compressione codificatatemporale spaziale Buffer

Sequenza video

d’ingresso

Informazioni di movimento

ESM – Codifica Video 1027 maggio 2010

Page 11: Marco Cagnazzo Elaborazione dei Segnali Multimediali 27 ...unina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Slides/2 - Codifica...• Risoluzione : 576 × 720 pppixels

Compressione spazialeCompressione spaziale

• Compressione di immagini: JPEGO bl hi di i l• Opera su blocchi di pixel

• Tre stadi:Tre stadi:

Quantiz-zatore

Trasformata2d

Codificalossless

ESM – Codifica Video 1127 maggio 2010

Page 12: Marco Cagnazzo Elaborazione dei Segnali Multimediali 27 ...unina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Slides/2 - Codifica...• Risoluzione : 576 × 720 pppixels

Compressione spazialeCompressione spaziale

k k k

QDCT2d

Codificalossless

k1, k2, k3, …

0101011100000110101…

Q*IDCT2d

Decodificalossless

k1, k2, k3, …k1, k2, k3, …

ESM – Codifica Video 1227 maggio 2010

Page 13: Marco Cagnazzo Elaborazione dei Segnali Multimediali 27 ...unina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Slides/2 - Codifica...• Risoluzione : 576 × 720 pppixels

Compressione temporaleCompressione temporaleTecniche di predizioneTecniche di predizione

• Codifica differenziale (DPCM)• Conditional replenishment• Compensazione del movimento• Compensazione del movimento

ESM – Codifica Video 1327 maggio 2010

Page 14: Marco Cagnazzo Elaborazione dei Segnali Multimediali 27 ...unina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Slides/2 - Codifica...• Risoluzione : 576 × 720 pppixels

Famiglie di codificatoriFamiglie di codificatori

Spazio Tempo + e - Applic.

Motion picture Trasform – Semplice;

comprime poco

Fotoca-mere, webcamp p p webcam

Ibrido Trasform PredizioneCompressione ottima; poco

Distribuzione video Ibrido Trasform Predizione ottima; poco

scalabileone video supporti

Scalabile DistribuziTrasf. 3D Trasform Trasform

Scalabile, comprime meno bene dell’ibrido

Distribuzione video su rete

ESM – Codifica Video 1427 maggio 2010

Page 15: Marco Cagnazzo Elaborazione dei Segnali Multimediali 27 ...unina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Slides/2 - Codifica...• Risoluzione : 576 × 720 pppixels

Il codificatore ibrido: DPCMIl codificatore ibrido: DPCM

Il modo più semplice di predire il fotogramma corrente è usare il precedenteg p

Frame correnteCodificatore

Errore

JPEG

Frame precedente

ESM – Codifica Video 1527 maggio 2010

a e p ecede te

Page 16: Marco Cagnazzo Elaborazione dei Segnali Multimediali 27 ...unina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Slides/2 - Codifica...• Risoluzione : 576 × 720 pppixels

Il codificatore ibrido: DPCMIl codificatore ibrido: DPCM

Problema: sincronizzazione tra codifica e decodifica

Frame correnteCodificatore

Errore

JPEG

Buffer

Frame precedente

ESM – Codifica Video 1627 maggio 2010

a e p ecede te

Page 17: Marco Cagnazzo Elaborazione dei Segnali Multimediali 27 ...unina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Slides/2 - Codifica...• Risoluzione : 576 × 720 pppixels

Conditional ReplenishmentConditional Replenishment

Immagine divisa in macroblocchi

ESM – Codifica Video 1727 maggio 2010

Page 18: Marco Cagnazzo Elaborazione dei Segnali Multimediali 27 ...unina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Slides/2 - Codifica...• Risoluzione : 576 × 720 pppixels

Conditional ReplenishmentConditional Replenishment

Possiamo allora suddividere i MB di una frame in “statici” (marcati con 1) e “dinamici” (con 0)

1 1 1 1 1 1 1 1

1 1 0 1 1 1 1 1

1

11 1 0 1 1 1 1 1

1 1 1 1 1 1 1 1

1 1 1 1 0 0 1

0

1

1

1

1

1

1

1

1

1

1

0

0

0

1

0

1

0

0

1

01

1

ESM – Codifica Video 1827 maggio 2010

Page 19: Marco Cagnazzo Elaborazione dei Segnali Multimediali 27 ...unina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Slides/2 - Codifica...• Risoluzione : 576 × 720 pppixels

Conditional ReplenishmentConditional Replenishment

• Test

( ) γ<)()( , pphk BBd ( )

Blocco centrato nel pixel p nella frame k

Blocco centrato nel pixel p nella frame h

ESM – Codifica Video 1927 maggio 2010

Page 20: Marco Cagnazzo Elaborazione dei Segnali Multimediali 27 ...unina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Slides/2 - Codifica...• Risoluzione : 576 × 720 pppixels

Conditional ReplenishmentConditional Replenishment

• MB statici:refine: si trasmette ( ) refine: si trasmette l’errore di predizione

skip: non vengono per ( ) γ<)()( , pp

hk BBdskip: non vengono per niente trasmessi

• MB dinamici:( ) γ>)()( pp BBdnew: si trasmette il MB

( ) γ>)()( , pphk BBd

ESM – Codifica Video 2027 maggio 2010

Page 21: Marco Cagnazzo Elaborazione dei Segnali Multimediali 27 ...unina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Slides/2 - Codifica...• Risoluzione : 576 × 720 pppixels

Stima del movimentoStima del movimento

Bk(p) Bh

(p+v) d(v)=d(Bk(p), Bh

(p+v)) v* = arg min d(v)v

ESM – Codifica Video 2127 maggio 2010

v

Page 22: Marco Cagnazzo Elaborazione dei Segnali Multimediali 27 ...unina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Slides/2 - Codifica...• Risoluzione : 576 × 720 pppixels

Stima del movimentoStima del movimento

( )• Test ME ( ))()( ,)( vppv += hk BBdd

• Vettore scelto )(minarg* vv d=Vettore scelto )(minarg vvv

d

• Blocco trasmesso

)()( *vpp +− hk BBtrasmesso

ESM – Codifica Video 2227 maggio 2010

Page 23: Marco Cagnazzo Elaborazione dei Segnali Multimediali 27 ...unina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Slides/2 - Codifica...• Risoluzione : 576 × 720 pppixels

Stima del movimentoStima del movimento• Qual è il vettore “ottimo”?Qual è il vettore ottimo ?

• Compromesso tasso distorsione

)()(min arg* vvvv

rd λ+=

• Funzione di costo r(v)

v

Costo di codifica

C it i di l itàCriterio di regolaritàESM – Codifica Video 23

27 maggio 2010

Page 24: Marco Cagnazzo Elaborazione dei Segnali Multimediali 27 ...unina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Slides/2 - Codifica...• Risoluzione : 576 × 720 pppixels

Stima del movimento: esempioStima del movimento: esempio

ESM – Codifica Video24

27 maggio 2010

Page 25: Marco Cagnazzo Elaborazione dei Segnali Multimediali 27 ...unina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Slides/2 - Codifica...• Risoluzione : 576 × 720 pppixels

Stima del movimento: esempioStima del movimento: esempio

Entropia MVF: 1.675 Kbits PSNR errore predizione: 21.69 Entropia MVF: 1.430 Kbits PSNR errore predizione: 21.69

Minimizzazione SSD Minimizzazione D+λR

ESM – Codifica Video 2527 maggio 2010

Page 26: Marco Cagnazzo Elaborazione dei Segnali Multimediali 27 ...unina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Slides/2 - Codifica...• Risoluzione : 576 × 720 pppixels

Stima del movimento: esempioStima del movimento: esempioE i MVF 8 39 Kbi PSNR di i 22 82 E i MVF 642 Kbi PSNR di i 22 9Entropia MVF: 8.397 Kbits PSNR errore predizione: 22.82 Entropia MVF: 5.642 Kbits PSNR errore predizione: 22.79

Minimizzazione SSD Minimizzazione D+λR

ESM – Codifica Video 2627 maggio 2010

Page 27: Marco Cagnazzo Elaborazione dei Segnali Multimediali 27 ...unina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Slides/2 - Codifica...• Risoluzione : 576 × 720 pppixels

Stima del movimento: complessità vs efficienzacomplessità vs. efficienza

• Full search: n2 valutazioni del • Full search: n valutazioni del criterio

Cross search: ricerca prima in • Cross search: ricerca prima in orizzontale e poi in verticale

• Log search: raffinamenti successivi

ESM – Codifica Video 2727 maggio 2010

Page 28: Marco Cagnazzo Elaborazione dei Segnali Multimediali 27 ...unina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Slides/2 - Codifica...• Risoluzione : 576 × 720 pppixels

Stima del movimento: full searchStima del movimento: full search

n2 valutazionidel criterio

ESM – Codifica Video 2827 maggio 2010

Page 29: Marco Cagnazzo Elaborazione dei Segnali Multimediali 27 ...unina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Slides/2 - Codifica...• Risoluzione : 576 × 720 pppixels

Stima del movimento: cross searchStima del movimento: cross search

2n-1 valutazioni del criterio

ESM – Codifica Video 2927 maggio 2010

Page 30: Marco Cagnazzo Elaborazione dei Segnali Multimediali 27 ...unina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Slides/2 - Codifica...• Risoluzione : 576 × 720 pppixels

Stima del movimento: log searchStima del movimento: log search

≈ 9(log2n-1) 9(log2n 1) valutazionidel criterio

ESM – Codifica Video 3027 maggio 2010

Page 31: Marco Cagnazzo Elaborazione dei Segnali Multimediali 27 ...unina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Slides/2 - Codifica...• Risoluzione : 576 × 720 pppixels

Stima del movimento: classificazioneclassificazione

• Modello di movimento (traslazione • Modello di movimento (traslazione, rotazione, deformazione; basato su bl hi h )blocchi o su mesh, …)

• Criterio da minimizzare (SSD, SAD, Criterio da minimizzare (SSD, SAD, ottimizzato RD, psicovisuale, …)

• Strategia di ricerca (Full search, log search, …), )

ESM – Codifica Video 3127 maggio 2010

Page 32: Marco Cagnazzo Elaborazione dei Segnali Multimediali 27 ...unina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Slides/2 - Codifica...• Risoluzione : 576 × 720 pppixels

Compressione temporale: conclusioniconclusioni

• A valle dello stadio di compressione temporale troviamo:temporale troviamo:

Sequenza difi t

Compressione Compressione codificatatemporale spaziale Buffer

Sequenza video

d’ingresso

Informazioni di movimento

ESM – Codifica Video 3227 maggio 2010

Page 33: Marco Cagnazzo Elaborazione dei Segnali Multimediali 27 ...unina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Slides/2 - Codifica...• Risoluzione : 576 × 720 pppixels

Motion JPEG: il fotogramma originaleoriginale

ESM – Codifica Video 3327 maggio 2010

Page 34: Marco Cagnazzo Elaborazione dei Segnali Multimediali 27 ...unina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Slides/2 - Codifica...• Risoluzione : 576 × 720 pppixels

DPCM: la differenza tra frame consecutiveconsecutive

100

150

50

100

0

-50

-100

ESM – Codifica Video 3427 maggio 2010

Page 35: Marco Cagnazzo Elaborazione dei Segnali Multimediali 27 ...unina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Slides/2 - Codifica...• Risoluzione : 576 × 720 pppixels

CR: New & Refine blocksCR: New & Refine blocks

ESM – Codifica Video 3527 maggio 2010

Page 36: Marco Cagnazzo Elaborazione dei Segnali Multimediali 27 ...unina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Slides/2 - Codifica...• Risoluzione : 576 × 720 pppixels

MC: errore compensato in movimentomovimento

ESM – Codifica Video 3627 maggio 2010

Page 37: Marco Cagnazzo Elaborazione dei Segnali Multimediali 27 ...unina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Slides/2 - Codifica...• Risoluzione : 576 × 720 pppixels

Il codificatore video ibridoIl codificatore video ibrido• Codifica macroblocco per macroblocco• Codifica macroblocco per macroblocco

• Modi di codificaIntra: nessuna predizione temporale, trasformata spaziale p

Inter: ME/MC per la predizione temporale trasformata spazialetemporale, trasformata spaziale

Direct: vettore di movimento dedotto dai vicini; blocco copiato dal riferimentovicini; blocco copiato dal riferimento

Lossless: codifica senza perdite

ESM – Codifica Video 3727 maggio 2010

Page 38: Marco Cagnazzo Elaborazione dei Segnali Multimediali 27 ...unina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Slides/2 - Codifica...• Risoluzione : 576 × 720 pppixels

Codifica di un MB:compromesso R/Dcompromesso R/D

Direct mode

tors

ione

Dis

t

ME/MC, Inter 16x16

CR, blocchi 16x16

no ME

ME/MC, Inter 8x8

CR, blocchi8x8

no ME, Intra Lossless

T

ESM – Codifica Video 3827 maggio 2010

Tasso

Page 39: Marco Cagnazzo Elaborazione dei Segnali Multimediali 27 ...unina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Slides/2 - Codifica...• Risoluzione : 576 × 720 pppixels

Selezione del modo di codificaSelezione del modo di codifica• Minimizzare D per R totale assegnato• Minimizzare D per R totale assegnato

),( QiDD k

K

k∑= ),( QiRR k

K

k∑=• Il passo Q è prefissato

),(1

QiDD kk

k∑=

),(1

QiRR kk

k∑=

• Il passo Q è prefissato

• L’insieme dei modi i={ik}k deve essere scelto in modo da minimizzare

∑∑KK

QiRQiDQJ )()()( λλi ∑∑==

+=k

kkk

kk QiRQiDQJ11

),(),(),,( λλi

ESM – Codifica Video 3927 maggio 2010

Page 40: Marco Cagnazzo Elaborazione dei Segnali Multimediali 27 ...unina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Slides/2 - Codifica...• Risoluzione : 576 × 720 pppixels

Selezione del modo di codificaSelezione del modo di codifica• Invece di cercare congiuntamente il • Invece di cercare congiuntamente il

vettore i, si sceglie separatamente il modo di ogni macroblocco minimizzando:di ogni macroblocco, minimizzando:

),(),(),,( QiRQiDQiJ kkkkkk λλ +=• La scelta del modo dipende quindi da Q e

da λ

• Q è un parametro d’ingresso

è d l• λ è determinato sperimentalmente in funzione di Q

ESM – Codifica Video 4027 maggio 2010

Page 41: Marco Cagnazzo Elaborazione dei Segnali Multimediali 27 ...unina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Slides/2 - Codifica...• Risoluzione : 576 × 720 pppixels

Codifica di un MB:compromesso R/Dcompromesso R/D

Direct mode

tors

ione

Dis

t

ME/MC, Inter 16x16

CR, blocchi 16x16

no ME

ME/MC, Inter 8x8D+λ2R = J

CR, blocchi8x8

no ME, Intra Lossless

T

D+λ1R = J

ESM – Codifica Video 4127 maggio 2010

Tasso

Page 42: Marco Cagnazzo Elaborazione dei Segnali Multimediali 27 ...unina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Slides/2 - Codifica...• Risoluzione : 576 × 720 pppixels

Struttura del codificatore ibridoStruttura del codificatore ibrido

Control

Channelx e

JPEGcoder

Input DCT Q VLC ChannelBuffer

x

xp

e

ME

Q*Inter/Intra

Frame xqMV

IDCT

eq

MC FrameBuffer

xq q

xp

ESM – Codifica Video 4227 maggio 2010

Page 43: Marco Cagnazzo Elaborazione dei Segnali Multimediali 27 ...unina.stidue.net/Elaborazione di Segnali Multimediali/Materiale/Slides/2 - Codifica...• Risoluzione : 576 × 720 pppixels

Struttura del decodificatore ibridoStruttura del decodificatore ibrido

ChannelInput Channelbuffer VLD

MVQ*

IDCT

eqFrame xq qFrameBuffer

xq

xp

MC xq

ESM – Codifica Video 4327 maggio 2010


Top Related