Tema 6: Codificación y compresión de vídeo. - grc.upv.es · resolución de imagen que se deben...
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: 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
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