Core Fijo - Diplomatura en Telecomunicaciones Multimedia - Unidad 4.2

56
Diplomatura en Telecomunicaciones Multimedia Módulo Core Fijo - Unidad 4.2 Ariel Roel

Transcript of Core Fijo - Diplomatura en Telecomunicaciones Multimedia - Unidad 4.2

Diplomatura en

Telecomunicaciones Multimedia Módulo Core Fijo - Unidad 4.2

Ariel Roel

Ariel Roel – [email protected]

Unidad Temática 4 – Parte 2

Ariel Roel – [email protected]

AGENDA – Unidad 4

• Introducción a la Voz sobre IP

• Introducción al Video sobre IP

• Protocolos de transporte de medios de tiempo real.

• Calidad de Servicio.

Voz y Video Sobre IP

Ariel Roel – [email protected]

Información básica transmitida

• ¿Cuánta información se transmita en un símbolo?

• Intuitivamente, cuanto más impredecible y sorprendente es, más información se transmite.

• Por el contrario, si se esperaba algo fuertemente, y ocurre que, no hemos aprendido mucho

Ariel Roel – [email protected]

Teoría de la Información Elemental

• Si p es la probabilidad de que un simbolo puede ocurrir

• Entonces, la cantidad de información, transmitida, es I:

• La información I es medida en bits

• Es el largo óptimo para el símbolo

pI

1log 2

Ariel Roel – [email protected]

• La entropia, H, es el promedio de información por símbolo

• Esta fórmula provee el limite mas bajo de compresión que puede ser alcanzado

Teoría de la Información Elemental

))(

1(log)( 2

spspH

s

Ariel Roel – [email protected]

Teoría de la Información Elemental

• Un ejemplo sencillo. Supongamos que tenemos que transmitir cuatro condiciones climáticas posibles:

1. Soleado

2. Nublado

3. Lluvioso

4. Nevando

• Si todas las condiciones tienen la misma probabilidad de ocurrir, p(s)=0.25, y H=2

▫ i.e. necesitamos un mínimo de 2 bits por símbolo

))(

1(log)( 2

spspH

s

Ariel Roel – [email protected]

• Supongamos ahora que:

1. Soleado ocurre 0.5 del tiempo

2. Nublado 0.25 del tiempo

3. Lluvioso 0.125 del tiempo

4. Nieva 0.125 del tiempo

• Entonces la entropia es:

Teoría de la Información Elemental

75.175.05.05.0

3125.02225.015.0

125.0

1log125.02

25.0

1log25.0

5.0

1log5.0 222

H

H

H

Ariel Roel – [email protected]

Teoría de la Información Elemental

• Codewords de largo Variable

• Huffman code – códigos de largo entero

• Códigos aritméticos – códigos de largo no fraccional

Ariel Roel – [email protected]

Teoría de la Información Elemental

• Huffman code

Tiempo Probabilidad Información Código Entero

Soleado 0.5 1 0

Nublado 0.25 2 10

Lluvioso 0.125 3 110

Nevando 0.125 3 111

Ariel Roel – [email protected]

Teoría de la Información Elemental

• Este es un ejemplo de un código sin pérdidas

▫ Podemos recuperar la información exactamente

• Es importante recalcar que asumimos que cada símbolo es independiente de otros símbolos

▫ Cada símbolo no provee información sobre el símbolo siguiente

Ariel Roel – [email protected]

• La Cuantización es el proceso de aproximar valores continuos a través de un rango mucho mas pequeño de valores

• Donde el Redondeo(y) redondea al entero mas cercano

• es el paso de cuantización

Cuantizacion

5.0R),(

xedondeoxQ

Ariel Roel – [email protected]

• Ejemplo: =2

Cuantizacion

0 1 -3 -2 -1 2 3 4 5 -5 -4

0 -1 1 2 -2

0 -2 2 4 -4

• La cuantizacion juega un rol importante en la compresión con pérdidas

▫ Es donde la compresión ocurre

Ariel Roel – [email protected]

Conceptos básicos de imagen

• Una imagen se compone de píxeles (elementos de imagen)

• Cada pixel representa luminancia (y color)

▫ Típicamente, 8-bits por pixel

Ariel Roel – [email protected]

15

Conceptos básicos de imagen

• Color

▫ Espacios de color(representacion)

RGB (red-green-blue)

CMY (cyan-magenta-yellow)

YUV

Y = 0.3R+0.6G+0.1B (luminancia)

U=R-Y

V=B-Y

• Escala de grises

• Binario

Ariel Roel – [email protected]

16

Conceptos básicos de imagen

• Un cuadro de TV es de aproximadamente 640x480 pixels

• Si cada pixel es representado por 8-bits para cada color, entonces el tamaño total de imagen es

▫ 640×480*3=921,600 bytes o 7.4Mbits

• A 30 cuadros por segundo (NTSC), obtenemos

▫ 220Mbits/segundo

Ariel Roel – [email protected]

Conceptos básicos de imagen

• Imagen representada con 8-bits por pixel

Ariel Roel – [email protected]

Conceptos básicos de imagen

• La misma imagen con 7-bits por pixel

Ariel Roel – [email protected]

Conceptos básicos de imagen

• Y 6-bits por pixel

Ariel Roel – [email protected]

Conceptos básicos de imagen

• Y 5-bits por pixel

Ariel Roel – [email protected]

Conceptos básicos de imagen

• Y 4-bits por pixel

Ariel Roel – [email protected]

Conceptos básicos de imagen

• ¿Necesitamos todos esos bits?

▫ ¡No!

• El ejemplo anterior ilustra la sensibilidad del ojo a la luminancia

• Podemos crear un modelo de percepción

▫ Solo codificar lo que es importante para el sistema visual humano - human visual system (HVS)

Usualmente una función de la frecuencia espacial

Ariel Roel – [email protected]

23

Conceptos básicos de imagen

• Así como de audio tiene frecuencias temporales

• Las imágenes tienen frecuencias espaciales

• Transformadas

▫ Fourier

▫ Discrete cosine transform (Transformada del Coseno)

▫ Wavelet

Ariel Roel – [email protected]

• Forward DCT (directa)

• Inverse DCT (Inversa)

Discrete Cosine Transform (DCT)

1

0

)5.0(8

cos)(2

)()(

N

n

nu

nsuC

uS

)5.0(8

cos)(2

)()(

1

0

nu

uSuC

nsN

u

Ariel Roel – [email protected]

Ejemplo

• Señal

Ariel Roel – [email protected]

Ejemplo

• Los coeficientes de la DCT son:

▫ 4.2426

▫ 0

▫ -3.1543

▫ 0

▫ 0

▫ 0

▫ -0.2242

▫ 0

Ariel Roel – [email protected]

Ejemplo: Descomposición de la DCT

• Continua

Ariel Roel – [email protected]

Ejemplo: Descomposición de la DCT

• 2da armónica

Ariel Roel – [email protected]

Ejemplo: Descomposición de la DCT

• 6ta armónica

Ariel Roel – [email protected]

Ejemplo: Descomposición de la DCT

• Primeros dos coeficientes que no valen cero

Ariel Roel – [email protected]

Ejemplo: Descomposición de la DCT

• Todos los 3 coeficientes que no valen cero

Ariel Roel – [email protected]

Ejemplo

• ¿Que pasa si cuantificamos los coeficientes? ▫ =1

• Los coeficientes cuantificados de la DCT son: ▫ 4

▫ 0

▫ -3

▫ 0

▫ 0

▫ 0

▫ 0

▫ 0

Ariel Roel – [email protected]

Ejemplo

• Reconstrucción aproximada vs. exacta

Ariel Roel – [email protected]

• Si i(x,y) representa una imagen con N filas y M columnas

• Su DCT I(u,v) esta dada por

• donde

DCT 2-D

M

x

N

y

vyuxyxivCuCvuI

1 1 16

)12(cos

16

)12(cos),()()(

4

1),(

2

1)0( C 1)( uC

Ariel Roel – [email protected]

Conceptos básicos de imagen

• Discrete cosine transform

▫ Los coeficientes estan aproximadamente incorrelacionados

Excepto la armonica de continua

Se toma bloques de 8×8 pixel

▫ Concentra mas potencia en los coeficientes de baja frecuencia

▫ Eficiente a nivel computacional

• DCT basada en bloques

▫ Se calcula la DCT en bloques de 8×8

Ariel Roel – [email protected]

Conceptos básicos de imagen

• Armónicas de una DCT de 8×8 DCT

Ariel Roel – [email protected]

Conceptos básicos de JPEG

DCT Cuantificador Codificador de Entropia

IDCT Decuantificador Decodificador de Entropía

Datos Comprimidos

Codificador

Decodificador

Ariel Roel – [email protected]

Conceptos básicos de JPEG

• JPEG usa bloques de 8×8 • Extrae bloques de 8×8 pixel • Los convierte al dominio DCT • Cuantifica cada coeficiente

▫ Diferente tamaño de paso para cada coeficiente Basado en la sensibilidad del sistema visual humano

• Ordena los coeficientes en zig-zag • La entropia codifica los valores cuantizados

Ariel Roel – [email protected]

Motion PEG

• El sistema JPEG para la compresión de imágenes estáticas podría ser aplicado a una secuencia de imágenes, comprimiendo cada uno individualmente. A esto se llama motion JPEG

• Motion JPEG no toma ventaja de cualquier correlación entre imágenes sucesivas

• En una escena típica habrá una gran similitud entre las imágenes cercanas de la misma secuencia.

Ariel Roel – [email protected]

En un video generalmente hay una gran similitud entre

un cuadro y otro.

Ariel Roel – [email protected]

Motion Compensation

Idea básica de la Motion Compensation:

▫ Muchos imágenes “en movimiento” o secuencias de imágenes consisten en un fondo estático con uno o más objetos de primer plano en movimiento. Podemos obtener una ventaja en esto.

▫ Codificamos el primer cuadro como línea de base JPEG y utilizamos este marco como imagen de referencia.

▫ Tratar la segunda imagen bloque por bloque y comparar cada bloque con el mismo bloque en la imagen de referencia.

▫ Para los bloques que son idénticos a la imagen de referencia, sólo se envía un código especial en lugar del código en su totalidad.

▫ Para otros bloques, sólo los codificará como de costumbre.

Ariel Roel – [email protected]

Motion Compensation

Motion Vectors

▫ Un fondo estatico es un caso muy especial, debemos tener en cuenta el desplazamiento del bloque.

▫ El Vector de Movimiento se utiliza para informar al decodificador exactamente de donde obtener los datos en la imagen anterior

▫ El Vector de Movimiento sería cero para un fondo estático.

Ariel Roel – [email protected]

Motion Compensation

¿Cómo encontrar el bloque que coincide?

▫ Criterio

En la práctica no podemos esperar encontrar el bloque exacto correspondiente, en cambio, buscamos el mas cercano.

La mayoria de los esquemas de estimacion buscan el minimo error cuadratico medio entre bloques.

▫ Tamaño de bloque:

Cuanto mas grande sea el bloque mas se afectara la eficiencia de codificación

Se utilizan bloques de: 16×16

N

n

nn yxIyxIN

MSE1

2' )),(),((1

Ariel Roel – [email protected]

Motion Compensation

Rango de búsqueda:

▫ Es razonable pensar en un desplazamiento de 360 pixles/s o 60pixels/imagen en SD-TV (standard-definition television).

▫ En escenas del mundo real el movimiento es generalmente mas rápido horizontalmente que verticalmente, generalmente el ancho del area de búsqueda debe ser el doble que el alto.

▫ Se sugiere un rango de búsqueda de: ±60 pixles × 30 pixles

Ariel Roel – [email protected]

Conceptos básicos de MPEG

• Secuencia de imágenes 2D

• Correlación temporal y espacial

• TV

▫ Cuadros

▫ Campos

Ariel Roel – [email protected]

MPEG

• Moving Picture Experts Group

• Standard de compresión de video

• Similar a JPEG

Ariel Roel – [email protected]

MPEG

• El diseño es un compromiso entre

▫ Bit rate

▫ Complejidad del Codificador / Decodificador

▫ Posibilidad de acceso aleatorio

Ariel Roel – [email protected]

MPEG

• Imagenes

▫ Redundancia espacial

▫ Redundancia de percepción

• Video

▫ Redundancia espacial

Codificacion Intraframe

▫ Redundancia temporal

Codificacion Interframe

▫ Redundancia de percepción

Ariel Roel – [email protected]

Motion Compensation

Residuos

▫ Las diferencias entre el bloque que se está codificadndo y su mejor match es lo que se conoce como residuos.

▫ Los residuos pueden ser codificados y transmitidos junto con el vector de movimiento, por lo que el decodificador será capaz de reconstruir el bloque.

▫ Debemos comparar los bits de transmisión del vector de movimiento, mas los residuos con los bits de transmisión del propio bloque y utilizar el mecanismo más eficiente.

Ariel Roel – [email protected]

Jerarquía MPEG

Las seis capas de un stream de video MPEG son • Sequence Layer: video clip, o programa completo.

• Group of Pictures Layer(GOP): incluye tres tipos de coficación diferentes

• Frame Layer

• Slice Layer: en caso de que los datos se pierdan o se corrompan

• Macroblock Layer: bloque de luminancia de 16×16

• Block Layer(DCT unit)

Ariel Roel – [email protected]

Tipos de cuadros MPEG

• Intra frames (I-frames) ▫ Un I-frame es codificado usando únicamente la

información dentro del mismo cuadro (intra coded) – no se realiza compresión temporal(inter coded).

• Non-intra frames (P-frames y B-frames) ▫ Información “motion compensated” es usada para

codificar. ▫ P frame (predicted frame) usa el cuadro anterior como

imagen de referencia ▫ B frame (bidirectional frame) usa ambos cuadros, el

predecesor y el siguiente como imágenes de referencia

Ariel Roel – [email protected]

Estimación de movimiento

X Z

Y

Disponible desde un

cuadro anterior (X)

Disponible de un cuadro posterior(Z)

Ariel Roel – [email protected]

I B B B P B B B P B B B P

• Una sequencia de un cuadro I seguido por cuadros P y B se conoce como GOP ▫ Group of Pictures ▫ Por ejemplo: IBBPBBPBBPBBP

Ariel Roel – [email protected]

H.264

• Ultimo estandar de video desarrollado

• Mejora la eficiencia de codificacion con respecto a los estandares existentes

• Considera cuatro perfiles

▫ Baseline

▫ Main

▫ Extended

▫ High

Ariel Roel – [email protected]

Puntos sobresalientes del H.264

• Bloque de compensación de movimiento con tamaños de bloque variables

• Mayor precisión de muestra de compensación de movimiento

• Bloques de tamaño pequeño

Ariel Roel – [email protected]