Tema 6: Codificación y compresión de vídeo. - grc.upv.es · resolución de imagen que se deben...

65
Tema 6: Codificación y compresión Tema 6: Codificación y compresión de vídeo. de vídeo. 1. Introducción. 2. Características del Bibliografía [FLU95] Understanding networked multimedia 2. Características del vídeo. 2.1 Captura de vídeo analógico. 2 2 Di it li multimedia [GIB98] Digital Compression for Multimedia [TSU99] Introduction to video coding standards for multimedia communication 2.2 Digitalizacn. 2.3 Codificación. 2.4 Tipos de vídeo (según su calidad). 2 5 Parámetros específicos de red standards for multimedia communication [H.264] Overview of the H.264 / AVC Video Coding Standard [MPEG4] MPEG-4 Overview [HiJa94] Compressing still and moving 2.5 Parámetros específicos de red. 3. Compresión de vídeo. 3.1 Redundancia temporal. [HiJa94] Compressing still and moving images with wavelets 3.2 Estimación de movimiento. 3.3 Estándares: MPEG y H.261. 4 Conclusiones Transmisión de Datos Multimedia – http://www.grc.upv.es/docencia/tdm – Master IC 2007/2008 4. Conclusiones.

Transcript of Tema 6: Codificación y compresión de vídeo. - grc.upv.es · resolución de imagen que se deben...

Tema 6: Codificación y compresión Tema 6: Codificación y compresión de vídeo.de vídeo.

1. Introducción.2. Características del

Bibliografía[FLU95] Understanding networked multimedia2. Características del

vídeo. 2.1 Captura de vídeo analógico.2 2 Di it li ió

multimedia[GIB98] Digital Compression for Multimedia[TSU99] Introduction to video coding standards for multimedia communication2.2 Digitalización.

2.3 Codificación.2.4 Tipos de vídeo (según su calidad).2 5 Parámetros específicos de red

standards for multimedia communication [H.264] Overview of the H.264 / AVC Video Coding Standard [MPEG4] MPEG-4 Overview[HiJa94] Compressing still and moving2.5 Parámetros específicos de red.

3. Compresión de vídeo.3.1 Redundancia temporal.

[HiJa94] Compressing still and moving images with wavelets

3.2 Estimación de movimiento.3.3 Estándares: MPEG y H.261.

4 Conclusiones

Transmisión de Datos Multimedia – http://www.grc.upv.es/docencia/tdm – Master IC 2007/2008

4. Conclusiones.

C 20

07/2

0081. Introducción

a -

Mas

ter

IC

Una secuencia de vídeo es una sucesión de imágenes que producen sensación de movimiento.

os M

ultim

edia

El proceso completo de transmisión de vídeo con compresión consiste en:

Adquisición del vídeo a transmitir

mis

ión

de D

ato Adquisición del vídeo a transmitir.

Captura analógica de la secuencia de imágenes.Digitalización del vídeo.

(R ) difi ió b li d l t

Tran

sm (Re)codificación y subsampling de las muestras.Típicamente se pasa de RGB a YCbCrSubsampling de la crominancia (de 4:4:4 a 4:2:0 ó 4:2:2)

Compresión del vídeo.Transmisión progresiva del vídeo comprimido (a ser posible usando protocolos con soporte multimedia)protocolos con soporte multimedia)

2

Tema 6: Codificación y compresión Tema 6: Codificación y compresión de vídeo.de vídeo.

1. Introducción.2. Características del vídeo.

í ó2.1 Captura de vídeo analógico.2.2 Digitalización.2.3 Codificación (de RGB a YCbCr con subsampling).2 4 Tipos de vídeo (según su calidad)2.4 Tipos de vídeo (según su calidad).2.5 Parámetros específicos de red.

3. Compresión de vídeo.3 1 Redundancia temporal3.1 Redundancia temporal.3.2 Estimación de movimiento: algoritmos.3.3 Estándares: MPEG y H.261.

4 Conclusiones4. Conclusiones.

Transmisión de Datos Multimedia – http://www.grc.upv.es/docencia/tdm – Master IC 2007/2008

C 20

07/2

008

2.1 Captura de vídeo analógico Ia

-M

aste

r IC

Las imágenes (dos dimensiones) son convertidas en una señal analógica.

os M

ultim

edia g

Se capturan las imágenes a intervalos regulares.Cada imagen (cuadro o frame) es barrida calculando la intensidad de cada punto (B&W).

mis

ión

de D

ato p ( )

Para reproducir la imagen se realiza el proceso inverso.

Tran

sm

Líneas debarrido

1

Líneas de barrido mostradas

3579

a

Placa debarrido

9

tLentes

4

483

C 20

07/2

008

2.1 Captura de vídeo analógico IIa

-M

aste

r IC

La captura (y reproducción) de imágenes en color es muy similar a la de blanco y negro.

E t tili t h d b id (RGB)

os M

ultim

edia En este caso se utilizan tres haces de barrido (RGB).

Conversión RGB a YUV (compatibilidad con señales B&W).

mis

ión

de D

ato

Y: Luminancia (intensidad).U y V: Diferencias de color.El ojo humano es más sensible a

Placa debarridoFiltros

a

Tran

sm El ojo humano es más sensible a la intensidad (brillo) que a la información de color (sub-sampling).

Lentes

a t

aR

G

sampling).t

Divisort

aB

TV ColorR

Y+C

Cámara

Demod.Conv.

CRTGB

Y+C

TV B&WGB

RYU

VC

5

Filtro CRTYY+CModuladorCodificador

C 20

07/2

008

2.1 Captura de vídeo analógico IIIa

-M

aste

r IC

Parámetros de barrido:Relación de aspecto (ancho:alto): 4:3

os M

ultim

edia e ac ó de aspecto (a c o a to) 3

Existen distintos estándares:NTSC (Usa y Japón): 525 líneas, 30 frames/sPAL/SECAM (Resto): 625 líneas 25 frames/s

mis

ión

de D

ato PAL/SECAM (Resto): 625 líneas, 25 frames/s.

Algunas líneas (superiores e inferiores) no son visibles.Durante el retorno vertical, se puede insertar información adicional

Tran

sm (teletexto).

Barrido entrelazado y progresivoBarrido entrelazado y progresivo.Entrelazado.

Cada cuadro se representa con dos campos sucesivos (uno con las lí l ) (60 / ó 0 / )líneas impares y otro con las pares) (60 c/s ó 50 c/s).

6

C 20

07/2

008

2.1 Captura de vídeo analógico IVa

-M

aste

r IC

Parpadeo de imagen (flicker)Efecto que aparece cuando la imagen no es refrescada con

os M

ultim

edia ecto que apa ece cua do a age o es e escada co

suficiente rapidez.La retina mantiene una imagen durante un tiempo antes de que desaparezca

mis

ión

de D

ato desaparezca.

Valor mínimo: 50 imágenes/segundo

Tran

sm Continuidad de movimiento.Viene determinada por el número de cuadros diferentes por segundosegundo.No se recomienda utilizar menos de 25 cuadros/s.

Ancho de banda de una señal de vídeo analógico: 6 MHz.

7

Tema 6: Codificación y compresión Tema 6: Codificación y compresión de vídeo.de vídeo.

1. Introducción.2. Características del vídeo.

í ó2.1 Captura de vídeo analógico.2.2 Digitalización.2.3 Codificación (de RGB a YCbCr con subsampling).2 4 Tipos de vídeo (según su calidad)2.4 Tipos de vídeo (según su calidad).2.5 Parámetros específicos de red.

3. Compresión de vídeo.3 1 R d d i t l3.1 Redundancia temporal.3.2 Estimación de movimiento: algoritmos.3.3 Estándares: MPEG y H.261.

4 Conclusiones4. Conclusiones.

Transmisión de Datos Multimedia – http://www.grc.upv.es/docencia/tdm – Master IC 2007/2008

C 20

07/2

008

2.2 Digitalización Ia

-M

aste

r IC

ITU-R (CCIR-601): Estándar para la digitalización de señales de TV.Define los parámetros de muestreo cuantificación barrido y

os M

ultim

edia Define los parámetros de muestreo, cuantificación, barrido y

resolución de imagen que se deben tomar para digitalizar una señal de TV analógica.

mis

ión

de D

ato

Parámetros de barrido:Dos formatos (NTSC y PAL/SECAM)

Tran

sm

os o atos ( SC y /S C )525 líneas y 858 muestras/línea - 30 frames/seg.625 líneas y 864 muestras/línea - 25 frames/seg.

Las muestras corresponden a la luminancia (Y): Intensidad de luz deLas muestras corresponden a la luminancia (Y): Intensidad de luz de cada pixel (cantidad de blanco).Las diferencias de color Cr (U) y Cb (V) se muestrean a la mitad (429/lí 432/lí ) S b li 4 2 2(429/línea, 432/línea): Sub-sampling 4:2:2.

9

C 20

07/2

008

2.2 Digitalización IIa

-M

aste

r IC

Cada línea tiene una zona visible (línea activa). Este estándar define una línea activa de 720 pixels.

ú í

os M

ultim

edia Se define un número de líneas visibles por cuadro:

480 (NTSC), 576 (PAL/SECAM).

Barrido entrelazado:

mis

ión

de D

ato

Un cuadro (frame) está formado por dos campos:El primero con las líneas impares y el segundo con las pares.

Línea

Tran

sm completa

Línea activa720 muestreos

Tiempo

Frecuencia de muestreo única.525x858x30* = 625x864x25 = 13,5 MHz.

10

C 20

07/2

008

2.2 Digitalización IIIa

-M

aste

r IC

Codificación y recodificación.Cada muestra RGB se codifica con 24 bits/color.La conversión de RGB a YCbCr (YUV) se realiza mediante una matriz

os M

ultim

edia La conversión de RGB a YCbCr (YUV) se realiza mediante una matriz

de conversión (aproximada):Y = 0.3R + 0.6G + 0.1BU B Y (Diferencia de color azul) (equiv Cb U/2+128)

mis

ión

de D

ato U = B - Y (Diferencia de color azul) (equiv. Cb=U/2+128)

V = R - Y (Diferencia de color rojo) (equiv. Cr=V/1.6+128)Cada uno de los componentes se codifica con 8 bits.

Y (8 bit ) 16 235

Tran

sm Y (8 bits): rango 16-235Cb (8 bits) y Cr (8 bits): rango 16-240

720

480

720 360

480

RG

B

480o

576

Y

480o

576 CbCr

480o

576

11

Subsampling 4:2:2

Tema 6: Codificación y compresión Tema 6: Codificación y compresión de vídeo.de vídeo.

1. Introducción.2. Características del vídeo.

í ó2.1 Captura de vídeo analógico.2.2 Digitalización.2.3 Codificación (de RGB a YCbCr con subsampling).2 4 Tipos de vídeo (según su calidad)2.4 Tipos de vídeo (según su calidad).2.5 Parámetros específicos de red.

3. Compresión de vídeo.3 1 R d d i t l3.1 Redundancia temporal.3.2 Estimación de movimiento: algoritmos.3.3 Estándares: MPEG y H.261.

4 Conclusiones4. Conclusiones.

Transmisión de Datos Multimedia – http://www.grc.upv.es/docencia/tdm – Master IC 2007/2008

C 20

07/2

008

2.3 Codificación: RGBa

-M

aste

r IC

os M

ultim

edia

mis

ión

de D

ato

Tran

sm

13

C 20

07/2

008

2.3 Codificación: YCbCra

-M

aste

r IC

os M

ultim

edia

mis

ión

de D

ato

Tran

sm

14

C 20

07/2

008

2.3 Codificación: Y Subsampling (I)a

-M

aste

r IC

os M

ultim

edia

mis

ión

de D

ato

Tran

sm

15

C 20

07/2

008

2.3 Codificación: Y Subsampling x2 (II)a

-M

aste

r IC

os M

ultim

edia

mis

ión

de D

ato

Tran

sm

16

C 20

07/2

008

2.3 Codificación: Y Subsampling x4 (III)a

-M

aste

r IC

os M

ultim

edia

mis

ión

de D

ato

Tran

sm

17

C 20

07/2

008

2.3 Codificación: Y Subsampling x8 (IV)a

-M

aste

r IC

os M

ultim

edia

mis

ión

de D

ato

Tran

sm

18

C 20

07/2

008

2.3 Codificación: CbCr Subsampling (V)a

-M

aste

r IC

os M

ultim

edia

mis

ión

de D

ato

Tran

sm

19

C 20

07/2

008

2.3 Codificación: CbCr Subsampling x2 (VI)a

-M

aste

r IC

os M

ultim

edia

mis

ión

de D

ato

Tran

sm

20

C 20

07/2

008

2.3 Codificación: CbCr Subsampling x4 (VII)a

-M

aste

r IC

os M

ultim

edia

mis

ión

de D

ato

Tran

sm

21

C 20

07/2

008

2.3 Codificación: CbCr Subsampling x8 (VIII)a

-M

aste

r IC

os M

ultim

edia

mis

ión

de D

ato

Tran

sm

22

Tema 6: Codificación y compresión Tema 6: Codificación y compresión de vídeo.de vídeo.

1. Introducción.2. Características del vídeo.

2.1 Captura de vídeo analógico.2.2 Digitalización.2.3 Codificación (de RGB a YCbCr con subsampling).

2.4 Tipos de vídeo (según su calidad).2.5 Parámetros específicos de red.

3 Compresión de vídeo3. Compresión de vídeo.3.1 Redundancia temporal.3.2 Estimación de movimiento: algoritmos.3 3 Estándares: MPEG y H 2613.3 Estándares: MPEG y H.261.

4. Conclusiones.

Transmisión de Datos Multimedia – http://www.grc.upv.es/docencia/tdm – Master IC 2007/2008

C 20

07/2

008

2.4 Tipos de vídeo (según su calidad) Ia

-M

aste

r IC

La percepción de calidad de una señal de vídeo se basa en tres parámetros:

L l ió d l i á

os M

ultim

edia La resolución de las imágenes.

La frecuencia de reproducción (cuadros/s.).El tipo de barrido (progresivo o entrelazado)

mis

ión

de D

ato El tipo de barrido (progresivo o entrelazado)

Televisión de alta definición (HDTV).

Tran

sm Existen diferentes variantes acerca HDTV.1920x1080/60, 1920x1080/30-24, 1280x720/30-24

Relación de aspecto 16:9Relación de aspecto 16:9

Vídeo digital profesional (studio-quality).Estándar ITU-R (CCIR-601) de vídeo digital.

24

C 20

07/2

008

2.4 Tipos de vídeo (según su calidad) IIa

-M

aste

r IC

Vídeo de difusión (TV broadcast).Difusión de señales de televisión analógicas.

os M

ultim

edia

Estándares NTSC y PAL/SECAM.

Reproductor de Vídeo (VCR quality)

mis

ión

de D

ato Reproductor de Vídeo (VCR-quality).

Grabación de vídeo analógico (en VHS)Menor resolución de imagen (la mitad de PAL/SECAM).

Tran

sm

g ( / )

Videoconferencia (Low-speed).T d bit ñ ( l d d d 128 Kb )Tasas de bits pequeñas (alrededor de 128 Kbps)Resolución de imagen 4 veces inferior al vídeo digital.

ITU-TS H.261: Common Intermediate Format (CIF) 352x288( )

La secuencia de cuadros/s se reduce entre 5 y 10.

25

Tema 6: Codificación y compresión Tema 6: Codificación y compresión de vídeo.de vídeo.

1. Introducción.2. Características del vídeo.

í ó2.1 Captura de vídeo analógico.2.2 Digitalización.2.3 Codificación (de RGB a YCbCr con subsampling).2 4 Tipos de vídeo (según su calidad)2.4 Tipos de vídeo (según su calidad).2.5 Parámetros específicos de red.

3. Compresión de vídeo.3 1 R d d i t l3.1 Redundancia temporal.3.2 Estimación de movimiento: algoritmos.3.3 Estándares: MPEG y H.261.

4 Conclusiones4. Conclusiones.

Transmisión de Datos Multimedia – http://www.grc.upv.es/docencia/tdm – Master IC 2007/2008

C 20

07/2

008

2.5 Parámetros específicos de red Ia

-M

aste

r IC

Lo que debe suministrar una red para el envío en tiempo real de una secuencia de vídeo.

os M

ultim

edia

Tasa de bits.

mis

ión

de D

ato

Calidad Estándar Sin comprimir Mbps

Comprimido Mbps

HDTV 1920x1080/60

Tran

sm

HDTV 1920x1080/60Sin comprimir Comprimido

MPEG-2

2000 25 a 34

ITU R di it l TVITU-R digital TV Sin comprimir Comprimido

ITU-R 601 MPEG-2

166 3 a 6

TV broadcast MPEG-2 2 a 4VCR MPEG-1 1,2 Videoconferencia H.261 0.1

27

C 20

07/2

008

2.5 Parámetros específicos de red IIa

-M

aste

r IC

Retardo y varianza del retardo.Normalmente se envían una secuencia de vídeo sincronizada con el audio correspondiente

os M

ultim

edia audio correspondiente.

La sincronización es muy importante y necesaria desde HDTV hasta VCR. En Videoconferencia no es tan importante ya que la imagen no es

mis

ión

de D

ato En Videoconferencia no es tan importante ya que la imagen no es

continua (pocos cuadros/s).En estos casos, los requerimientos para estos parámetros los impone el audio (más sensible).

Tran

sm

impone el audio (más sensible).Valores indicativos para la varianza del retardo:

HDTV: 50 ms.Vídeo difusión: 100 msVídeo difusión: 100 ms.Videconferencia: 400 ms.

28

C 20

07/2

008

2.5 Parámetros específicos de red IIIa

-M

aste

r IC

Tasa de error.El vídeo comprimido es más sensible a los errores.La degradación de la calidad de vídeo percibida depende:

os M

ultim

edia La degradación de la calidad de vídeo percibida depende:

BER de la redDel tipo de error (simple, ráfaga, bloque, etc.)Donde se produce ese error

mis

ión

de D

ato Donde se produce ese error.

El índice de compresión de vídeo.Mecanismos de recuperación ante errores:

Té i d t ió d l ñ l

Tran

sm Técnicas de protección de la señal.– FEC (Forward Correction Codes).– Marcas de resincronización.– Reversible VLC.

– Técnicas de paquetización.

Ocultación de errores (error concealment)– Cuando se pierden bloques o llegan demasiado tarde.

– Técnicas de extrapolación e interpolación de cuadros.

29

Tema 6: Codificación y compresión Tema 6: Codificación y compresión de vídeo.de vídeo.

1. Introducción.2. Características del vídeo.

í ó2.1 Captura de vídeo analógico.2.2 Digitalización.2.3 Codificación (de RGB a YCbCr con subsampling).2 4 Tipos de vídeo (según su calidad)2.4 Tipos de vídeo (según su calidad).2.5 Parámetros específicos de red.

3. Compresión de vídeo.p3.1 Redundancia temporal.3.2 Estimación de movimiento: algoritmos.3.3 Estándares: MPEG y H.261.

4. Conclusiones.

Transmisión de Datos Multimedia – http://www.grc.upv.es/docencia/tdm – Master IC 2007/2008

C 20

07/2

008

3.1 Redundancia temporal.a

-M

aste

r IC

Se basa en la similitud de cuadros sucesivos en una secuencia de vídeo.

os M

ultim

edia

Ej.: Secuencias de plano estático.Se utilizan técnicas de codificación diferencial o transformada 3D

Sól difi á l dif i t d i (DPCM)

mis

ión

de D

ato Sólo se codificarán las diferencias entre cuadros sucesivos (DPCM).

La reconstrucción de un cuadro puede estar basado en otro(s) anterior(es).

Tran

sm

( )Un algoritmo típico de eliminación de redundancia temporal (motion compensation) es el que emplea MPEG.

31

C 20

07/2

008

Redundancia temporal (MPEG-1)a

-M

aste

r IC

Cuadros de referencia y cuadros auto-contenidosSi F1 lo usamos para construir F2 se dice que F1 es un cuadro de

os M

ultim

edia Si F1 lo usamos para construir F2, se dice que F1 es un cuadro de

referencia (reference frame).Si un cuadro no se construye a partir de ningún otro, se dice que es

t t id (i t d d f )

mis

ión

de D

ato auto-contenido (intracoded frame)

Normalmente estos sirven de referencia para otros.

Macrobloques (macroblocks)

Tran

sm

q ( )16x16 pixels (6 bloques de 8x8: 4Y,1U y 1V).

F1 F2 F3

32

C 20

07/2

008

Redundancia temporal (MPEG-1)a

-M

aste

r IC

Vectores de movimiento (motion vector)Identifican el desplazamiento de un determinado macrobloque

os M

ultim

edia

en el cuadro actual respecto a la posición que tenía en el cuadro de referencia.Los vectores de movimiento se aplican cuando se identifica un

mis

ión

de D

ato p

macrobloque existente en el cuadro de referencia (matching blocks)

Tran

sm

Vector de movimiento∆x = -20, ∆y = 0Cuadro de referencia

Macrobloques idénticos

F1 F2

33

F1 F2

C 20

07/2

008

Redundancia temporal (MPEG-1)a

-M

aste

r IC

Búsqueda de macrobloques.

os M

ultim

edia

Se buscan los macrobloques del cuadro a codificar en el cuadro de referencia.Si se encuentra el mismo macrobloque, sólo se codifica el vector de

mis

ión

de D

ato q ,

movimiento correspondiente.Si no se encuentra exactamente el mismo se elige el más parecido (macrobloque INTER)

Tran

sm

(macrobloque INTER).Se codifica el vector de movimiento. Se calcula el macrobloque error (las diferencias) aplicándole codificación estilo JPEG (DCT quant RLE+VLC en zigzag)estilo JPEG (DCT, quant, RLE+VLC en zigzag).

Si no se encuentra ningún bloque similar (mb. INTRA)Se codifica dicho macrobloque con codificación estilo JPEG.

34

C 20

07/2

008

Redundancia temporal (MPEG-1)a

-M

aste

r IC

Tipos de cuadrosI (Intracoded frames): Cuadro codificado usando JPEG

os M

ultim

edia ( )

(autocontenido).P (Predictive frames): Cuadro basado en las diferencias respecto a un cuadro de referencia anterior (tipo I)

mis

ión

de D

ato respecto a un cuadro de referencia anterior (tipo I).

B (Bidirectional frames): Cuadros basados en la interpolación de un cuadro anterior y otro posterior en la secuencia (tipo I o P)

Tran

sm o P).

Cuadro de tipo Iautocontenido

Cuadro de tipo Bbasado en F1 y F3

Cuadro de tipo Pbasado en F1

35

F1 F2 F3Macrobloque encontrado!! Macrobloque

encontrado!!

C 20

07/2

008

Redundancia temporal (MPEG-1)a

-M

aste

r IC

Secuencias de cuadros (Group Of Pictures)Los cuadros de tipo I son los menos comprimidos, a continuación l d ti P últi l á ió bti l

os M

ultim

edia los de tipo P y por último los que más compresión obtiene son los

de tipo B.Secuencias típicas:

mis

ión

de D

ato

IBBBPBBBIIBBPBBPBBI (PAL)IBBPBBPBBPBBI (NTSC)

Tran

sm IBBPBBPBBPBBI (NTSC)

I B B P B B P B B I

36

C 20

07/2

008

Redundancia temporal (MPEG-1)a

-M

aste

r IC

La importancia de los cuadros de tipo I.En un sistema de vídeo es habitual el usar los controles de avance,

os M

ultim

edia u s ste a de deo es ab tua e usa os co t o es de a a ce,

retroceso, pausa, etc.Si queremos detener la secuencia de vídeo, necesitamos encontrar el último cuadro I para reconstruir el cuadro donde se ha detenido la

mis

ión

de D

ato último cuadro I para reconstruir el cuadro donde se ha detenido la

imagen.

Sirven como puntos de sincronización.Se estima que deben aparecer al menos un cuadro I cada 300 400

Tran

sm Se estima que deben aparecer al menos un cuadro I cada 300-400 ms.Si se está difundiendo una secuencia de vídeo comprimida (TV b d t id f i t )broadcast, videoconferencia, etc)

Permite “engancharse” rápidamente y recuperarse ante la recepción de algún cuadro dañado.

37

Tema 6: Codificación y compresión Tema 6: Codificación y compresión de vídeo.de vídeo.

1. Introducción.2. Características del vídeo.

í ó2.1 Captura de vídeo analógico.2.2 Digitalización.2.3 Codificación (de RGB a YCbCr con subsampling).2 4 Tipos de vídeo (según su calidad)2.4 Tipos de vídeo (según su calidad).2.5 Parámetros específicos de red.

3. Compresión de vídeo.3 1 Redundancia temporal3.1 Redundancia temporal.3.2 Estimación de movimiento: algoritmos.3.3 Estándares: MPEG y H.261.

4 Conclusiones4. Conclusiones.

Transmisión de Datos Multimedia – http://www.grc.upv.es/docencia/tdm – Master IC 2007/2008

C 20

07/2

008

3.2 Estimación de movimiento: Algoritmos.a

-M

aste

r IC

La parte más costosa de la estimación de movimiento corresponde a los algoritmos de búsqueda de macrobloques en el cuadro(s) de

f i

os M

ultim

edia referencia.

Provoca codificación asimétricaLos algoritmos más conocidos son los siguientes:

mis

ión

de D

ato Los algoritmos más conocidos son los siguientes:

Búsqueda completa (Full-Search).TTS (Three-Step Search)

Tran

sm Búsqueda logarítmica.Búsqueda en cruz (Cross-Search)OTS (One-at-a-Time Search)OTS (One-at-a-Time Search)Vecinos más próximos (Nearest Neighbours Search)Búsqueda jerárquica.

39

C 20

07/2

008

Estimación de movimiento.a

-M

aste

r IC

Se define una función de coste que calcula el error entre dos macrobloques, por ejemplo, SAE (Sum of Absolute Errors)* :

os M

ultim

edia

( ) ( ) ( )∑ −∑=−− 1

0

1

0,,,

M

j

N

ijiRjiCjiSAE

mis

ión

de D

ato

(i,j) está definido dentro del área de búsqueda(NxM) determina las dimensiones del macrobloque.

== 00 ji

Tran

sm C(i,j) y R(i,j) definen los pixels del macrobloque actual y referencia respectivamente.

Las coordenadas (i,j) que menor SAE exhiban determinarán elLas coordenadas (i,j) que menor SAE exhiban determinarán el vector de movimiento del macrobloque actual.

40 (*) Más conocido como SAD (Sum of Absolute Differences)

C 20

07/2

008

Algoritmos: Full Search.a

-M

aste

r IC

Examina todos los puntos del área de búsqueda (+/- p)Complejidad computacional por macrobloque:

Nú t t l d i i (2 1)2

os M

ultim

edia Número total de posiciones: (2p + 1)2

Cada posición (i,j), MxN pixels.Cada pixel requiere: 1 resta, 1 suma y 1 valor absoluto.

mis

ión

de D

ato Cada pixel requiere: 1 resta, 1 suma y 1 valor absoluto.

( ) ( ) MNpMBO 312 2+=

Tran

sm Complejidad (secuencia IxJ pixels @ F fps)

( ) ( )MBOIJFFSO =Ejemplo:

Broadcast TV (I=720, J=480, F=30, N=M=16)

( ) ( )MBOMN

FSO =

Coste de este algoritmo: 29.89 GOPS (p=15) ó 6.99 GOPS (p=7)

41

C 20

07/2

008

Algoritmos: Three-Step Search.a

-M

aste

r IC

MV: (7 3)

(-7,-7) (0,-7) (7,-7)

os M

ultim

edia MV: (7,-3)

1 1 1

23 3 3

33

mis

ión

de D

ato

1 11 2

22 2

2

33

33 3 1. Busca en la posición (0,0)

2. S=2N-1 (step size)3 B 8 i i +/ S

Tran

sm

1 11

2 2 23. Busca 8 posiciones a +/-S

píxeles alrededor de (0,0)4. De las nueva posiciones

elige aquella con el SAD

(-7,7) (0,7) (7,7)

g qmenor.

5. S=S/2 y el nuevo origen de búsqueda el punto obtenido

4

Coste: Examina puntos⎡ ⎤( ) 1log8 +p

( , ) en 4.6. Repetir pasos 3-5 hasta que

S=1.Examina puntos1.02 GOPS (p=15) ó 770 MOPS (p=7).

42

⎡ ⎤( ) 1log8 2 +p

C 20

07/2

008

Algoritmos: Búsqueda logarítmica.a

-M

aste

r IC

(-7,-7) (0,-7) (7,-7)MV: (5,-3)

os M

ultim

edia

1 2

3 4

45 55 5

5

mis

ión

de D

ato

1 1

1

1

2

2

3 45 55

5 51. Busca en la posición (0,0) y establece

S=N (step size)2. Selecciona 4 posiciones a S píxeles

d l i l j X Y

Tran

sm 1 2del origen en los ejes X e Y.

3. Calcula la posición que ofrece el menor SAD, fijándola como el nuevo origen de la búsqueda

(-7,7) (0,7) (7,7)

g q4. Si esta posición es la central de las 5

seleccionadas S=S/25. Si S=1 ir al paso 6, sino ir al paso 2.6 S l i l i t l l 8

Coste: Examina 20 puntos

( , ) 6. Selecciona el origen actual y las 8 posiciones de alrededor, y calcula aquella que minimiza el SAD

Examina 20 puntos616 MOPS (p=7 y N=2).

43

C 20

07/2

008

Algoritmos: Búsqueda en cruz (Cross Search)a

-M

aste

r IC

MV: (-3,-5)(-7,-7) (0,-7) (7,-7)

os M

ultim

edia

11 4

2 2

3 31. Establece el origen en la posición

(0 0) S 2N 1 ( t i )

mis

ión

de D

ato

1

42 23

3 3

3 (0,0). S=2N-1 (step size)2. Selecciona 4 posiciones a +/-S

píxeles del origen formando una cruz (X) y el propio origen.

Tran

sm

1 1

( ) y p p g3. Calcula la posición que ofrece el

menor SAE, fijándola como el nuevo origen de la búsqueda

4 Si (S>1) t S S/2 l

( 7 7) (0 7) (7 7)

1 1 4. Si (S>1) entonces S=S/2 y va al punto 2. Sino ir al punto 5.

5. Si la mejor posición está en el punto superior izquierda o inferior derecha

Coste: Examina puntos

(-7,7) (0,7) (7,7)

⎡ ⎤( ) 5log4 +p

p qde la X, evaluar 4 puntos más en forma de X a una distancia de +/-1 pixel. Sino hacer lo mismo pero con l 4 t di t ib id “+”Examina puntos

523 MOPS (p=7).44

⎡ ⎤( ) 5log4 2 +p los 4 puntos distribuidos en “+”.

C 20

07/2

008

Algoritmos: OTS (One-at-a-Time Search)a

-M

aste

r IC

MV: (-4,-3)(-7,-7) (0,-7) (7,-7)

os M

ultim

edia ( , )

89

mis

ión

de D

ato

11 12345

1. Establece el origen en (0,0).2. Selecciona el origen y las dos

posiciones vecinas en el eje X3 C l l l i ió

678

Tran

sm

3 3. Calcula la posición que menor SAD exhiba. Si es el origen ir al paso 5.

4. Establece el nuevo origen en la

6

(0 7) (7 7)

gposición que ha ofrecido el menor SAD. Ir al paso 2.

5. Repetir los pasos 2 al 4 l i d l i i

Coste: Examina 12 puntos

(-7,7) (0,7) (7,7) seleccionando las posiciones en el sentido vertical (eje Y).

Examina 12 puntos369 MOP.

45

Puede dar lugar a mínimos locales !

C 20

07/2

008

Algoritmos: Vecino más próximo.a

-M

aste

r IC

MV: (-3,-4)(-7,-7) (0,-7) (7,-7)

os M

ultim

edia

1. Calcula el SAD del (0,0).1

11 12

223

3

mis

ión

de D

ato

2. Establece el origen de búsqueda a la posición del vector supuesto (predicted vector)

3 Selecciona 4 posiciones alrededor0

1111

Tran

sm

3. Selecciona 4 posiciones alrededor del origen en forma de “+”.

4. Si el origen de búsqueda (o la posición 0,0 en la primera iteración) ofrece el menor SAD entonces “fin de búsqueda”.Sino establece el nuevo origen de búsqueda en la posición que menor(0 7) (7 7)

Coste: Examina 12 puntos

búsqueda en la posición que menor SAD ha ofrecido. (-7,7) (0,7) (7,7)

Examina 12 puntos369 MOP.

46

Propuesto para H.263 y MPEG-4.

C 20

07/2

008

Estimación de movimiento: Otras consideraciones.a

-M

aste

r IC

Estimación de movimiento con fracciones de pixelSe basa en realizar la estimación de movimiento con mayor precisión, ya que a veces el movimiento real no se ajusta a desplazamientos de

os M

ultim

edia ya que a veces el movimiento real no se ajusta a desplazamientos de

píxel enteros.Half-Pixel motion estimation

S b i i d l ió i l d d l

mis

ión

de D

ato

Se obtiene un imagen de mayor resolución interpolando un punto de la imagen entre cada dos píxeles.

A A Ab b

Tran

sm

c c cd dSe incrementan notablemente las prestaciones del algoritmo de estimación de movimiento a expensas

A A Ab b

c c cd d

estimación de movimiento a expensas de un mayor coste computacional.H.263 utiliza está técnica, incluso se propone utilizar ¼ y 1/8 de píxel para

A A Ab b

A: Píxeles reales (Enteros)

propone utilizar ¼ y 1/8 de píxel para el estándar H.264

47

( )b,c,d: Píxeles interpolados. Las flechas indican la dirección de interpolación.

C 20

07/2

008

Estimación de movimiento: Mejoras propuestas.a

-M

aste

r IC

Vectores de movimiento fuera del cuadro de referencia.Para estimar correctamente el movimiento que se produce en los b d d l d

os M

ultim

edia bordes del cuadro.

Tamaño de bloque variable.Para realizar estimación de movimiento más precisa.

mis

ión

de D

ato

Se utiliza en H.263 (Anexo F) y H.264.Tamaños: 16x16;8x8;4x4;8x16;16x8....

OBMC (Overlapped Block Motion Compensation)

Tran

sm

( pp p )Objetivo: Suavizar los efectos de “blocking” que aparecen en los bordes de los macrobloques.Incremento significativo del coste computacional. g p

H.263 recomiendo utilizar filtros de salida (deblocking filters) que realizan esta operación a un coste computacional muy inferior.

Modelos de estimación más complejos:Region-based, Picture Warping, Mesh-based, Object-based...

48

Tema 6: Codificación y compresión Tema 6: Codificación y compresión de vídeo.de vídeo.

1. Introducción.2. Características del vídeo.

í ó2.1 Captura de vídeo analógico.2.2 Digitalización.2.3 Codificación (de RGB a YCbCr con subsampling).2 4 Tipos de vídeo (según su calidad)2.4 Tipos de vídeo (según su calidad).2.5 Parámetros específicos de red.

3. Compresión de vídeo.3 1 Redundancia temporal3.1 Redundancia temporal.3.2 Estimación de movimiento: algoritmos.3.3 Estándares: MPEG y H.26x.

4 Conclusiones4. Conclusiones.

Transmisión de Datos Multimedia – http://www.grc.upv.es/docencia/tdm – Master IC 2007/2008

C 20

07/2

008

3.3 Estándar MPEG.a

-M

aste

r IC

Conjunto de estándares ISO para la grabación y transmisión digital de audio y vídeo.En su evolución se han desarrollado varias versiones del estándar

os M

ultim

edia En su evolución se han desarrollado varias versiones del estándar

MPEG:MPEG-1 (ISO 11172) (‘91):

CD ROM íd (1 5 Mb )

mis

ión

de D

ato CD-ROM vídeo (1,5 Mbps).

MPEG-2 (ISO 13818) (‘93): TV Broadcast (4-6 Mbps).

(2 3 b )

Tran

sm HDTV (25-34 Mbps).MPEG-4 (ISO 14496) (‘99):

Originalmente: Videoconferencia (4,8 a 64 Kbps).Enfoque universal de tratamiento de elementos multimedia.

MPEG-7 (00-?): Descripción de contenido multimedia (videodatabases)MPEG-21 (01-?): Uso transparente de contenido multimedia entre redes y usuarios heterogéneos.

50

C 20

07/2

008

Relación entre los estándares MPEG.a

-M

aste

r IC

os M

ultim

edia

mis

ión

de D

ato

Tran

sm

51

C 20

07/2

008

MPEG-1.a

-M

aste

r IC

MPEG-1 (ISO 11172) (‘91)MPEG-Vídeo (IS 11172-2)

os M

ultim

edia

MPEG-Audio (IS 11172-3)MPEG-System (IS 11172-1):

Multiplexado y sincronización.

mis

ión

de D

ato Multiplexado y sincronización.

MPEG-Conformance Testing (IS 11172-4)Patrones de prueba, medida de calidad, etc

MPEG S ft C di (IS 11172 5)

Tran

sm MPEG-Software Coding (IS 11172-5)Directrices para la codificación de los algoritmos.

Propósito de MPEG-1Almacenamiento en CD-ROM de audio (calidad CD) y vídeo (calidad VCR) sincronizado (1 5 Mbps)VCR) sincronizado (1,5 Mbps).

52

C 20

07/2

008

MPEG-1a

-M

aste

r IC

Características de MPEG-1:Resolución de imagen: 352x(288 ó 240) (PAL/NTSC).

os M

ultim

edia

Reducción de color (sub-sampling): 4:2:0.Barrido progresivo (no entrelazado).Tasa de cuadros: 25/30 (PAL/NTSC)

mis

ión

de D

ato Tasa de cuadros: 25/30 (PAL/NTSC).

Incluye cuadros de tipo D (DC-coded):Operaciones de avance rápido (Fast Forward).

Tran

sm Codificador/decodificador asimétrico.

A diT d ió 27 1 Audioencoder

SystemMux.

Reloj

SalidaMPEG-1

Tasa de compresión: 27:1.Los codificadores de audio y íd t b j d

Vídeoencoder

Mux.vídeo trabajan por separado. Utilizan un reloj común para establecer el tiempo de cada una

53

establecer el tiempo de cada una de sus capturas (system).

C 20

07/2

008

MPEG-2a

-M

aste

r IC

Conjunto de estándares ISO 13818 (‘93).Propósito:

os M

ultim

edia

Mejorar la calidad de imagen respecto al anterior sin incrementar excesivamente la tasa de bits requeridaCalidad de vídeo profesional (studio-quality) y HDTV

mis

ión

de D

ato Calidad de vídeo profesional (studio quality) y HDTV

Aplicación:Difusión de señales de TV, HDTV, VOD

Tran

sm La codificación/decodificación es muy similar a la de MPEG-1 salvo algunas diferencias:

No se incluyen cuadros de tipo D.No se incluyen cuadros de tipo D.Permite bloques de 16x8 para vídeo entrelazado.Otras mejoras (permite DC de hasta 10 bits, cuantización no lineal,

t bl VLC l bilid d SNR lti l ió )nuevas tablas VLC, escalabilidad SNR y multiresolución)

54

C 20

07/2

008

MPEG-2a

-M

aste

r IC

Características de MPEG-2.Soporta barrido entrelazado y progresivo.

os M

ultim

edia

Puede trabajar con distintas resoluciones (nivel):CIF: 352x288/240 (VCR quality) (Compatibilidad MPEG-1)Principal: 720x576/480 (studio-quality)

mis

ión

de D

ato Principal: 720x576/480 (studio quality)

High-1440: 1440x1152 (HDTV)High: 1920x1080 (HDTV)

D fi i fil d i l t ió

Tran

sm Define varios perfiles de implementaciónDetalles de los algoritmos de compresión y parámetros de imagen, barrido, etc.

El multiplexado y sincronización es más general y flexible que MPEG-1

Se pueden multiplexar/sincronizar varias fuentes de audio, vídeo y datos (ej.: subtítulos en varios idiomas).

55

C 20

07/2

008

MPEG-4a

-M

aste

r IC

Propósito:Diseño de aplicaciones multimedia interactivas distribuidas.

os M

ultim

edia

Aplicación:Televisión digital

mis

ión

de D

ato Televisión digital

Compatibilidad con MPEG-2 (backware compatibility)

Aplicaciones multimedia interactivas

Tran

sm El usuario puede interaccionar con los objetos multimedia de la sesión.

Distribución de información multimedia (tipo WWW)A través de una red, se permitirá el acceso y distribución a informaciónA través de una red, se permitirá el acceso y distribución a información multimedia, facilitando su diseño y presentación.

56

C 20

07/2

008

MPEG-4a

-M

aste

r IC

Características:Accesibilidad de la información de manera universal y robusta.

os M

ultim

edia

Alta interactividad con la información multimedia.Definición de escenarios virtuales compuestos por objetos independientes (AVOs).

mis

ión

de D

ato

El usuario puede modificar/configurar el escenario actual.

Codificación conjunta de datos sintéticos y reales.Codificación eficiente de la información

Tran

sm Codificación eficiente de la información.Mejoras en la compresión y multiplexación de la información.Codificación de objetos con forma irregular.

57

C 20

07/2

008

MPEG-4a

-M

aste

r IC

os M

ultim

edia

mis

ión

de D

ato

Tran

sm

58

C 20

07/2

008

3.3 Estándar H.261.a

-M

aste

r IC

Pertenece al conjunto de estándares H.320 del ITU dedicados a videoconferencia sobre RDSI.

H 320 D fi i ió d l f ili d á d

os M

ultim

edia H.320: Definición de la familia de estándares

H.221: Multiplexado, sincronización sobre uno o varios canales RDSI y empaquetamiento (framming).

mis

ión

de D

ato y p q ( g)

H.242/H.230: Establecimiento y control de sesión.H.224/H.281: Control remoto de cámaras.H 233 H 234 Cif d t ti ió d l d t

Tran

sm H.233 y H.234: Cifrado y autenticación de los datos.T.120: Soporte para aplicaciones (transferencia de imágenes, anotaciones compartidas, etc.)G.711, G.72x ...: Algoritmos de compresión de audio

H.261: Compresión de vídeo (conocido como px64).

59

C 20

07/2

008Estándar H.261.

a -

Mas

ter

IC

Características de H.261:Formato de imagen: YCbCr

os M

ultim

edia

CIF: 352x288 (opcional)QCIF: 176x144 (obligatorio)

Reducción de color: 4:2:0

mis

ión

de D

ato

Tasa de cuadros/seg: como máximo 30 max.

ó

Tran

sm Mecanismo de compresión similar a MPEG-1:Para la redundancia temporal se emplean mecanismos similares a MPEG, basados en macrobloques (16x16)., q ( )H.261 define el concepto de GOB (Group Of Blocks)

1 GOB = 3x11 macrobloques (QCIF: 3 GOBs)

60

C 20

07/2

008Estándar H.261.

a -

Mas

ter

IC

Sólo se definen dos tipos de cuadros: I y P.No existen secuencias predefinidas de cuadros.

os M

ultim

edia

Decisión de codificación I o P para cada cuadro.Estimación de movimiento (motion estimation):

Se realiza a nivel de macrobloque

mis

ión

de D

ato Se realiza a nivel de macrobloque

Búsqueda restringida en un área de +-15 pixels, usando sólo la información de luminancia (Y).

Tran

sm Resultado de la búsqueda: Macrobloque del cuadro de anterior que más se parece al actualCálculo de las diferencias (macrobloque error).( q )Si superan un cierto umbral se codifican (DCT), si no se elimina el macrobloque error, utilizando sólo el vector de movimiento.

Cuantificación lineal (menos costosa)Cuantificación lineal (menos costosa).Se siguen utilizando run-length y Huffman (VLC).

61

C 20

07/2

008Estándar H.261.

a -

Mas

ter

IC

Esquema del formato H 261

os M

ultim

edia Esquema del formato H.261

mis

ión

de D

ato

PSC TR PType GOB1 GOB2 .... GOBm

Tran

sm GOB Start Grp# Quant MB1 ... MBn

Addr Type Quant Vector CBP b0 b1 ... b5

DC Run, Valor ... Run, Valor EOB

62

C 20

07/2

008

Otros estándares H.26x.a

-M

aste

r IC

H.263: Mejora, amplía y sustituye el H.261De propósito general (no sólo para videoconf )

os M

ultim

edia De propósito general (no sólo para videoconf.)

Incluye compensación de movimiento de “medio-píxel”Soporta cinco resoluciones (SQCIF, QCIF, CIF, 4CIF y 16CIF)

mis

ión

de D

ato

Permite estimación de movimiento bidireccional y sin restricción en el tamaño de la ventana de búsqueda

H 263+: Añade nuevas características a H 263

Tran

sm

H.263+: Añade nuevas características a H.263Escalabilidad SNR, espacial y temporalPredicción de los valores de los coeficientes de la DCT

H.264: Mejora la eficiencia en codificaciónDCT con enteros y tam. bloque 4x4, compensación de movimiento con bloques de tamaño variable, etc.con bloques de tamaño variable, etc.

63

C 20

07/2

008

Otros estándares H.26x.a

-M

aste

r IC

Comparación subjetiva MPEG-4 - H.264

os M

ultim

edia

mis

ión

de D

ato

Tran

sm

64

C 20

07/2

0084. Conclusiones

a -

Mas

ter

IC

Las imágenes son captadas por cámaras de vídeo que proporcionan una señal analógica RGB.L di it li ió tá b d l tá d ITU R

os M

ultim

edia La digitalización está basada en el estándar ITU-R

En función de la calidad de vídeo deseada, existen diversos formatos de imagen, barrido, etc.

mis

ión

de D

ato g , ,

Se definen distintos parámetros de red de importancia para el transporte de vídeoAl it d ió d íd

Tran

sm Algoritmos de compresión de vídeoFundamentos: Redundancia temporalAlgoritmos de estimación de movimiento: Alto coste computacional.g pEstándares de compresión:

Familia MPEG: 1-2-4– Diseñados para procesar vídeo digital de calidad (Sector consumo).

Familia ITU: H.261-3-4– Diseñados para comunicaciones audiovisuales en distintos tipos de redes (RDSI, IP, telefonía,

etc.)

65