Transmisión de Video en ATM Marta Barría M.

Download Report

Transcript Transmisión de Video en ATM Marta Barría M.

Transmisión de Video en ATM
Marta Barría M.
Introducción
La transmisión digital de señales de vídeo sobre redes es uno de los campos
mas activos de investigación en la actualidad.
El proceso empieza con la codificación de la señal de video en el nodo
emisor, esta información es paquetizada para su posterior transmisión por la
red. Enel receptor, la señal es despaquetizada y decodificada para su
utilización.
Compresión de video
La compresión de video surge de la necesidad de transmitir imágenes a través de
un canal que contenga un ancho de banda aceptable.
Las secuencias altas sin comprimir de la televisión requieren alrededor 1
Gbps para la salida apropiada.
Por ejemplo:
Standart HDTV :1920 x1080 a 30 fps, con 8 bits por cada color primario,
necesitamos 1,5 Gb/s de datos.
Se definen dos tipos de compresión :
Lossles - Compresión sin perdida.
Lossy - Compresión con perdida.
Para lograr el envio de video a través de la red necesitamos una compresión con
pérdidas, debido a que logra una mayor tasa de compresión.
Compresión de video
Para comprimir y luego transmitir las señales de video, se utilizan algoritmos
denominados CODEC, los cuales reducen la información a una tasa de datos
menor que la usual.
Algunos Codec son:
• Jpeg , para imágenes fijas.
• Mpeg-1 , almacenamiento de video.
• Mpeg-2 , televisión digital
• H.261, video conferencia en ISDN
• H.263
Compresión de video
Los métodos de compresión, recurren a los procedimientos generales de
compresión de datos, como son la eliminación de la redundancia espacial,
redundancia temporal, la correlación entre puntos cercanos, y aprovechando
la menor sensibilidad de ojo a los detalles finos de las imágenes.
Redundancia Espacial (Intraframe)
A menudo las imágenes contienen considerables áreas en donde existen
pixeles con un mismo valor espacial.
Redundancia Espacial
Los pasos para eliminar la redundancia espacial es la siguiente:
Primero la imagen inicial se
divide en bloques de 8x8 pixeles y
estos se cuantizan en 256 niveles.
Redundancia Espacial
A cada valor de la matriz 8x8 se le aplica la función de la Transformada
discreta del coseno (DCT). Obteniendo de esta forma el peso que tiene cada
coeficiente en la imagen final.
Función DCT
Coeficientes resultante de la DCT
Redundancia Espacial
La matriz DCT es sometida a funciones de cuantizacion que reducen aun mas
los coeficientes, logrando que gran numero de estos sean ceros.
Redundancia Espacial
Esta matriz de 8x8 es transformada en un vector de 1x64 (VLC), mediante una
lectura en ziz-zag, con el objetivo que los valores parecidos queden adyacentes.
Redundancia Espacial
Este vector de 64 valores se puede escribir de la siguiente manera:
8, 4, 4, 2, 2, 2, 1, 1, 1, 1, (12 ceros), 1, (41 ceros).
Con lo cual hemos reducido en gran magnitud el numero de bits a ser
enviados, esto se llama codificación por largo variable (VLC).
Redundancia Espacial
Resumen
Redundancia Temporal
Redundancia temporal (interframe)
Ahora debemos eliminar la redundancia temporal.
Esta codificación aprovecha la ventaja que existe cuando las imágenes
sucesivas son similares. En lugar de enviar la información de cada imagen
por separado, el codificador envía la diferencia existente entre la imagen
previa y la actual en forma de codificación diferencial.
El codificador necesita de una imagen, la cual fue almacenada con
anterioridad para luego ser comparada entre imágenes sucesivas y de
forma similar se requiere de una imagen previamente almacenada para que
el decodificador desarrolle las imágenes siguientes.
Redundancia Temporal
. Cuadros I
Debemos comenzar una secuencia de cuadros con un cuadro I, este no tiene
ninguna referencia hacia otro cuadro y son estos quienes nos proveerán de un
punto de partida para buscar redundancias en el tiempo.
Cuadros P
Comenzando con un cuadro I, el Codec puede predecir un cuadro futuro mediante
una técnica conocida como predicción compensada de movimiento basada en
bloques, a esto se le conoce como cuadro P, y puede ser predicho de otros cuadros
P pero sólo hacia delante en tiempo. Por ejemplo podríamos tener el caso del
siguiente grupo de cuadros:
Redundancia Temporal
Cada cuadro P de la secuencia es predicho del cuadro inmediatamente precedente, no
importando si es uno I o uno P.
Redundancia Temporal
Cuadros B
El Codec también puede usar una predicción hacia atrás y hacia delante, o predicción
Bi-direccional, esta puede tener su origen en cuadros I o P. Como compromiso entre
calidad y velocidad en general se usan 2 cuadros B por cada cuadro P:
La ventaja que otorgan los cuadros B es la reducción en la tasa de bits a enviar, a costo
de tener que mantener la secuencia de imágenes en buffer mientras se codifican los
cuadros B.
Redundancia Temporal
Para generar los cuadros P, el
Codec busca en el cuadro
objetivo una coincidencia de
bloques de 16x16 bits llamados
macrobloques (MB) con el
cuadro
referencia,
al
encontrarla sólo debe mandar
el vector de movimiento, es
decir la dirección y magnitud
del movimiento del MB
Redundancia Temporal
Pero además de enviar el vector movimiento en muchos casos debemos enviar
también el error residual, ya que el MB que se mueve en la pantalla no queda
limpio.
Cuadro original
Error residual
Cuadro predictivo
Cuadro objetivo
Redundancia Temporal
Para generar los cuadros B, el Codec busca coincidencias en cuadros pasados y
futuros, con lo que se logra definir una gran parte de la imagen con sólo pocos
vectores de movimiento.
Redundancia Temporal
Con la ayuda de los cuadros P y B logramos que las tasas de datos enviados sean
cada vez menores lo que permite el envío de vídeo a través de medios de bajo
ancho de banda
Tipo
I
P
B
Tamaño
18 KB
6 KB
2.5 KB
Compresión
7:1
20:1
50:1
Estructura de MPEG
informacion de
sequencia, info.
del video, tasa
de bits,
cuantización
tipo de cuadro
enviado,
parametros de
buffer y de
codificación
# de MB que
salta, tipo del
MB,
cuantización,
bloques
codificados
codigo de tiempo,
parametros
en que linea
parte el slice
Transmisión de señales de video
En el proceso de transmisión de la señal de vídeo sobre la red ATM, las células
ATM están inevitablemente expuesta a retrasos, errores y pérdidas que afectan
de una manera directa a la calidad de la señal de vídeo recibida, pudiendo
llegar a degradarla en exceso.Se hace necesario tomar medidas para hacer mas
robusta la transmisión de vídeo sobre ATM, para poder garantizar bajo
situaciones de congestión de la red una aceptable calidad en la transmisión.
Por ejemplo: la pérdida de celulas, en una codificación de vídeo que utiliza
codificación interframe (r. temporal), los errores en un frame se propagan en
el tiempo durante varios frames, afectando la pérdida de una célula a la calidad
de la imagen de varios frames. Los errores y pérdidas también se propagan en
el espacio dentro de un frame, ya que la perdida de un macrobloque en un slice,
hace desechar la información restante en el slice.
Transmisión de señales de video
Comúnmente estas perdidas en la imagen se reparan usando técnicas de ocultación
las cuales regeneran la información que se perdió, de la manera mas acertada
posible, utilizando la información de pixeles próximos en el espacio y en el tiempo
de la área perdida.
Unas de las técnicas mas utilizadas en los últimos años para dar robustez al sistema
de transmisión, y facilitar la posterior ocultación de la información perdida, es la
codificación jerárquica de la señal de vídeo para su posterior transmisión sobre
redes que manejan diferentes niveles de prioridad como ATM. Esta técnica como
muchas otras se basan en idea de explotar la insensibilidad del sistema visual
humano a las componentes de alta frecuencia de las señales de vídeo.
Transmisión de señales de video
Esta técnica divide el flujo de información ( bitstreams), en dos capas:
capa base y capa de mejora.
Capa base
La información que pertenece a la capa base se transmite a un nivel de
prioridad alta, para así asegurar su llegada al receptor, de esta forma
tener asegurada un cierta calidad de video.
Generalmente la información contenida en esta capa son los coeficientes
de baja frecuencia, vectores de movimiento, modos de codificación, tipo
de macrobloque.
Transmisión de señales de video
Capa de mejora
La información que pertenece a la capa de mejora se transmite a un
nivel de prioridad baja, esta será la que proporcionara un mejoramiento
de la calidad del video entregada por la capa base.
Esta capa contiene cabeceras de secuencia, GOP (Group Of Pictures),
picture, slice, fin de secuencia y algunos coeficientes.
Transmisión de señales de video
El modulo PC (Priority Control) se encarga de tomar las decisiones sobre
que información del bitstream irá a la capa base con prioridad alta y cual
irá a la capa de mejora con prioridad baja. Se define un punto de ruptura
del bitstream denominado “breakpoint” para definir el punto en el cual se
dividirá la información entre las dos capas.
Transmisión de señales de video
Calidad completa
Con perdidas de coeficientes
Transmisión de señales de video
Si un error o pérdida de información ocurre en la capa de mejora, el
descodificador utiliza sólo la información de la capa base, para reconstruir la
señal de vídeo. Si el error o pérdida de información se produce en la capa
base, entonces el descodificador tiene que descartar toda la información
recibida hasta que encuentra la siguiente cabecera de slice. Esto es debido a
que la sincronización en el algoritmo de compresión es a nivel de slice, los
macrobloques que están dentro de un slice se codifican referencialmente, por
eso la pérdida de uno de ellos imposibilita la descodificación de los que le
siguen en el slice y deben de ser descartados aunque sean recibidos.
Efecto de
propagación espacial
(perdida de slice)
Esquema de paquetización de la señal
de video en celulas ATM
La señal de salida que proporciona un codificador, debe ser posteriormente
paquetizada en células ATM para su transmisión por la red hacia el receptor de la
señal de vídeo. La robustez de la señal de video dependerá fuertemente de como
sea el esquema de paquetización de esta señal.
Los macrobloques son codificados con referencia al anterior macrobloque para
aumentar el grado de compresión.
Un esquema de paquetización robusto frente a errores, debe ser tal , que cada
célula lleve la información suficiente para que los macrobloques que transporta
puedan ser descodificados en el descodificador, sin necesidad de tener que utilizar
información perteneciente a otras células.
Esquema de paquetización de la señal
de video en celulas ATM
En este esquema, para la paquetización del bitstream de prioridad alta(PH) se
añaden dos campos, uno de 9 bits y otro de 7 bits a cada célula, para proporcionar
la información necesaria a los macrobloques que transporta, para que puedan ser
descodificados en el receptor.
Esquema de paquetización de la señal
de video en celulas ATM
El campo de 9 bits contiene la posición en la carga útil de la célula , del primer
macrobloque completo en la célula. La carga útil tendrá una longitud de 360 bits
y por eso son necesarios 9 bits para codificar cualquier posición en la carga útil.
El campo de 7 bits contiene la dirección absoluta en el slice, del macrobloque
anterior al primer macrobloque completo en la célula, es decir, la dirección
absoluta del macrobloque que empezó a escribirse en la anterior célula y que ha
terminado de escribirse en la actual célula. Para que la célula sea autocontenida, y
no dependa de información contenida en otras celulas.
Esquema de paquetización de la señal
de video en celulas ATM
Para la paquetización del bitstream de prioridad baja(PL) se utiliza un método
directo, es decir, el bitstream es particionado en segmentos de 47 bytes y son
insertados en la carga útil de la célula ATM.
Esquema de paquetización de la señal
de video en celulas ATM
Cuando una célula es perdida en el bitstream de prioridad alta, la célula siguiente
que es recibida, desecha la información contenida en la carga útil de la célula hasta
donde indique el campo de 9 bits, y calcula la dirección absoluta en el slice del
primer macrobloque de la célula con el campo de 7 bits, de esta forma el primer
macrobloque en la célula dispone de la información necesaria para poder ser
descodificado, y los macrobloques restantes en la célula podrán ser descodificados
en referencia a este. Con este esquema se elimina la propagación espacial de la
perdida de información, limitando la degradación de la calidad de la imagen.
Esquema de paquetización de la señal
de video en celulas ATM
La pérdida de células se detecta en el descodificador por el número de secuencia
que contienen las células ATM especificado en la capa AAL-1 para transmisión de
video a caudal constante(CBR) y AAL-2 para caudal variable(VBR).
Bibliografía
www.fuac.edu.co/autonoma/pregrado/ingenieria/ingelec/proyectosgrado/compresvideo/doc_b.htm
http://raap.info-ab.uclm.es/pubs/pub08.pdf
www.rad.com/networks/1994/atm/videoatm.htm
wwwam.hhi.de/mpeg-video/papers/sikora/mpeg1_2/mpeg-tables2.htm
www.cs.sfu.ca/undergrad/CourseMaterials/CMPT479/material/notes/Chap4/Chap4.2/Chap4.2.html
Presentaciones “Codec de video” - Rodrigo Villagran
“Video sobre ATM” - Victor borquez