Pràctica 11 PDF

Title Pràctica 11
Course Comunicacions Audiovisuals
Institution Universitat Politècnica de Catalunya
Pages 14
File Size 1.4 MB
File Type PDF
Total Downloads 98
Total Views 121

Summary

Download Pràctica 11 PDF


Description

Nombre alumnos: Abel Romero y Anna Castán Número de grupo de prácticas asignado por el profesor: -2Objetivos: Durante la realización de esta práctica revisaremos algunas de las técnicas analizadas previamente en las clases de teoría y profundizaremos en algunos aspectos de la codificación de imágenes estáticas. La práctica se apoya en el software VCDemo. Este programa ha sido desarrollado por el grupo ICT (Image Compression Technologies) de la Universidad de Delft (Holanda) bajo la supervisión del profesor Inald Lagendijk. Se trata de un paquete de software educativo y de libre distribución que ilustra diferentes técnicas para la compresión de vídeo e imágenes estáticas. Utilizaremos esta aplicación para ilustrar las técnicas de codificación en JPEG y, sobre todo, MPEG. El software también puede utilizarse para disponer de un control prácticamente total sobre los parámetros de compresión, posibilidad que habitualmente está desactivada en otros programas comerciales. El programa puede descargarse desde

http://ict.ewi.tudelft.nl/index.php?Itemid=124 o bien desde Atenea. Use la versión que se encuentra en Atenea-Campus Digital. La práctica sigue la misma tónica que otras prácticas anteriores. Este documento word describe los ejercicios que deben realizarse con la aplicación VCDemo e incluye diversas cuestiones que el usuario debe responder durante su realización. Deberá entregarse el documento word con las respuestas una vez finalizada cada sesión práctica.

Codificación de imágenes estáticas. Comparativa entre JPEG y JPEG2000. Abra el programa VCDemo y seleccione la imagen Lenna512C.bmp. Aunque los resultados se representen en blanco y negro la información que procesaremos tiene en cuenta las tres componentes de color. Seleccione el menú JPEG y codifique la imagen con diferentes factores de calidad. Recuerde que el factor de calidad incide directamente sobre el paso de cuantificación con el que se codifican los coeficientes. En el siguiente párrafo se proporcionan algunos detalles adicionales sobre cómo están relacionados el factor de calidad y el paso de cuantificación. La lectura de este apartado es complementaria y sirve para comprender la relación entre el paso de cuantificación (normalizado por el estándar) y el factor de calidad que a menudo se presenta al usuario. El factor de calidad y el paso de cuantificación (Contenido complementario) La pestaña de JPEG presenta al usuario la tabla de cuantificación que está utilizando el algoritmo. Recuerde que los resultados de cada uno de los bloques de 8x8 píxeles de la transformada coseno se dividen por la tabla de cuantificación y el paso de cuantificación, según la relación:

 DCTuv   round     Quv  De este modo, los coeficientes que realmente se almacenan en el fichero son el resultado de la DCT pero recuantificados teniendo en cuenta tanto la tabla de cuantificación (Quv) como el paso de cuantificación a. En la mayoria de aplicaciones comerciales el usuario sólo puede controlar de forma indirecta el paso de cuantificación. El paso de cuantificación está relacionado con el factor de calidad que introduce el usuario. El factor de calidad o compresión del estándar JPEG puede controlarse directamente actuando sobre el proceso de cuantificación. Para ello se define un factor de calidad q_JPEG que se expresa en tanto por ciento y que puede ser introducido directamente por el usuario durante la compresión de una imagen. El factor de calidad puede tomar valores entre el 1% y el 100%.

A partir del factor de calidad especificado por el usuario se calcula una constante  que actúa directamente sobre las tablas de cuantificación. El valor de la constante  se determina a partir del factor de calidad de acuerdo con las siguientes ecuaciones:

50 si 1  q _ JPEG  50 _ q JPEG 2  q_ JPEG si 50  q_ JPEG  99  2  100



La constante  toma el valor unidad cuando el factor de calidad es igual al 50%. Para factores de calidad inferiores al 50 % la constante  aumenta de forma paulatina tomando un valor igual a 2 para una calidad del 25 % y de 50 para una calidad del 1% (límite inferior del parámetro de calidad). Cuando el factor de calidad calidad supera el 50% la constante  disminuye. Para una calidad del 75% toma el valor de 0,5 que disminuye hasta 0,02 para una calidad del 99%. La constante  se utiliza para ajustar, de manera directamente proporcional, los valores de las tablas de cuantificación. Cuando la calidad es del 50% ( es igual a la unidad) las matrices de cuantificación se utilizan tal y como hemos descrito en los apartados anteriores. Sin embargo, cuando la calidad es distinta del 50% las matrices de cuantificación se corrigen multiplicándolas previamente por el factor  y aproximándolas al entero más próximo. De este modo, cuando el factor de calidad es superior al 50% los valores de las matrices de cuantificación se corrigen y los coeficientes transformados se dividirán por números más pequeños, mejorando la calidad de la aproximación. Evidentemente, el factor de calidad con el que ha sido codificada una imagen se almacena junto con la cabecera de la imagen de forma que el decodificador siempre puede determinar la tabla de cuantificación exacta que ha sido utilizada durante el proceso de compresión. Cuando el factor de calidad es exactamente igual al 100% todos los coeficientes de las matrices de cuantificación toman el valor unidad. Esto significa que para una calidad del 100% no se realizan aproximaciones de los coeficientes transformados y se almacenan (o transmiten) directamente los resultados obtenidos por la DCT. Seleccione distintos factores de calidad hasta que empiece a observar algunos defectos visibles en la imagen ( denominados - ‘artifacts’). Cuestión: Anote los valores de calidad, bits por píxel, error cuadrático y PSNR (peak signal to noise ratio) obtenidos. Respuesta:

Hemos mantenido el bit rate cambiando solo el factor de calidad, y hemos observado que a partir de un factor de calidad de 20 para abajo la calidad empeora considerablemente.

El programa también permite seleccionar una tasa de bits por píxel (botón Bitrate en la pestaña bitrate). Cuando el usuario especifica el bitrate, el codificador intenta ajustar el paso de cuantificación (o equivalentemente la calidad) de forma dinámica para intentar obtener una tasa de bits por píxel como la que ha pedido el usuario. Esto significa que el factor de calidad puede cambiar de bloque a bloque para adaptarse a la tasa de bits especificada. Seleccione distintos valores de bits por píxel hasta obtener una imagen en la que empiecen a apreciarse ligeros defectos. Cuestión: Anote los valores de calidad, bits por píxel, error cuadrático y PSNR obtenidos. Respuesta:

A partir de un valor de bitrate de 0.3 se empieza a notar el “artifact”, el error perceptible al ojo. Cierre la pestaña JPEG, sin cerrar la imagen codificada que había obtenido y abra la JPG2 (JPEG2000). En la pestaña de Encode (la que aparece por defecto) puede seleccionar la tasa de bits por píxel con la que desea que el JPEG2000 codifique la imagen. Seleccione el mismo valor de bits por píxel que el que ha obtenido en la cuestión anterior y compare las calidades. Reduzca los bits por píxel del codificador hasta que empiecen a observarse artifacts.

Cuestión: Anote los valores de calidad, bits por píxel, error cuadrático y PSNR obtenidos. Respuesta:

Esta comparativa nos muestra, como ya vimos, que el JPEG2000 puede obtener factores de compresión considerablemente superiores al JPEG convencional. En el resto de la práctica analizaremos con cierto detalle algunas de las características del JPEG basado en la transformada coseno.

Las tablas de cuantificación del JPEG. Cierre todas las ventanas (excepto la imagen original) y abra de nuevo la carpeta del codificador JPEG. Seleccione una calidad del 30% y realice la codificación de la imagen (con este factor de calidad estamos en la zona en la que empiezan a notarse, ligeramente, los artifacts de la codificación). La codificación anterior se ha realizado utilizando las tablas de Losheller que proporciona el estándar por defecto. Recuerde que estas tablas intentan tener en cuenta la sensibilidad del sistema visual humano a las distintas componentes frecuenciales de la transformada coseno. Por ello, las regiones de alta frecuencia tienen un paso de cuantificación mayor que las de baja frecuencia (La tabla de Losheller utilizada se proporciona en la pestaña de Bitrate). Vamos a comprobar el efecto de la tabla de Losheller. Para ello, sitúese en la pestaña Quant y seleccione la tabla flat. Para esta tabla todos los coeficientes se cuantifican con el mismo paso de cuantificación. Manteniendo una calidad del 30% realice la codificación de la imagen. Comprobará que la calidad de la imagen ha disminuido considerablemente.

Cuestión: Sitúe el cursor sobre una de las dos imágenes que debería tener en pantalla (la codificada con Losheller y la codificada con una tabla uniforme) y pulse el botón derecho del mouse. Entre en Image Information y anote los valores de bpp, calidad, PSNR y error cuadrático para cada una de las dos imágenes. Respuesta:

La tabla flat(tabla uniforme), al codificar la imagen proporciona más artifacts que la tabla por defecto. Como se observa en las especificaciones, tiene peor relación señal a ruido y una probabilidad de error mayor que la tabla Losheller.

Cuestión: Observe que aunque las calidades objetivo son iguales para las dos imágenes la comparación de calidad no debería considerarse justa. ¿Por que?. Respuesta: Es debido a que la tabla uniforme, la Flat, para la codificación de la imagen se hace con una matriz donde todos los coeficientes son tratados de la misma manera. Independientemente de la importancia que tenga de cara al ojo humano. Por el contrario la otra tabla los coeficientes con mayor importancia son tratados de forma diferente que los de menor importancia.

Este resultado nos indica que la especificación de la calidad es un parámetro poco científico y que simplemente se utiliza para permitir que el usuario nos dé un indicativo de cuál es la calidad que está dispuesto a aceptar. Cuestión: Describa un procedimiento para realizar una comparación más justa entre el uso de las tablas de Losheller y la tabla uniforme. Recuerde que el la pestaña bitrate podíamos especificar el bitrate de la imagen

Para realizar un buen procedimiento para comparar el uso de las tablas Losheller y la tabla uniforme, pondremos el mismo Bitrate a los dos, como podemos ver en la imagen anterior, asi podiendo comparar mejor sin que “intervenga” el bit rate.

Cuestión: Seleccione un bitrate de 0.4 utilizando las tablas de Losheller y un bitrate de 0.4 utilizando la tabla uniforme. Anote los resultados de calidad, bitrate, PSN y error cuadrático obtenidos para cada una de las imágenes. Respuesta:

Con el mismo bitrate de 0.4. Seleccione en la pestaña ‘Quant’ el botón de High-Enphasis y realice la codificación de la imagen. Esta tabla es intencionadamente errónea ya que da mayor importancia a los coeficientes de alta frecuencia que a los coeficientes de baja frecuencia. Se utiliza únicamente con propósitos didácticos para ver los efectos y la importancia de definir correctamente las tablas de cuantificación.

Cuestión: ¿Qué está haciendo esta tabla de cuantificación?. Puede explicar por qué los resultados son tan nefastos mientras la tasa de bits por píxel se mantiene inalterada. Reflexione sobre la siguiente frase: “Se están dedicando bits a zonas espectrales donde la sensibilidad visual es baja” Respuesta: Da más importancia a las altas frecuencias por este motivo podemos apreciar desde el ojo humano que la imagen se ve distorsionada. Ese botón de High-Enphasis hace que enfatiza más la imagen y en las zonas de gran sensibilidad visual apenas enfatiza. Debería ser al revés.

La importancia de los códigos de Huffman. Cierre de nuevo todas las ventanas, exceptuando la de la imagen principal y vuelva a abrir la ventana del codificador JPEG. Seleccione un bitrate de 0.5. Compruebe que está seleccionada la tabla de cuantificación estándar para la luminancia (Losheller) y entre en la pestaña de Huffman. Realice la codificación de la imagen con las tres opciones posibles: FLC (Fixed Lenght Coding), Standard VLC (Códigos de Huffman definidos por defecto en el estándar) y Optimal VLC (se calculan los códigos de Huffman que serían óptimos para esta imagen). Cuestión: Compare los resultados obtenidos (anote los resultados de error cuadrático, bpp, calidad, PSNR y estime la calidad subjetiva de la imagen). Observa diferencias importantes entre los códigos por defecto y los óptimos. Respuesta:

Cuestión: Suba el bitrate hasta un valor más razonable (1bpp -1.5bpp) y repita la experiencia anterior. ¿Por qué los resultados comparativos no son tan espectaculares? Respuesta:

Si el bit rate va sobrat, tanto da que el codificador sea malo o no. Si la calidad con el bit rate es suficiente no se notará si el codificador es mejor o no.

Cuestión: Ahora vamos a poner en un ‘apuro’ al codificador. Baje el bitrate hasta 0.1 bpp y repita la experiencia anterior. Observe los resultados. A partir de esta experiencia. En que casos cree que puede resultar conveniente recalcular los códigos de Huffman óptimos al codificar imágenes con el JPEG (pocos codificadores comerciales lo hacen) Respuesta:

Smoothing El programa VCDemo dispone de una pestaña para activar el Smoothing. El smoothing es un filtro paso bajo que se aplica a la imagen después de su codificación. Active este filtro y compruebe que a tasas bajas (cuando los artifacts son ligeramente apreciables) se produce una cierta mejora en la calidad de la imagen.

Control de errores y resincronización. Finalmente, vamos a ver el comportamiento del algoritmo ante la presencia de errores en la transmisión o recuperación de los datos. También veremos cómo la introducción de elementos de resincronización permite atenuar los efectos de estos errores. Cierre todas las ventanas activas. Abra la imagen lenna512C.bmp y active la interficie de JPEG. Acepte todos los parámetros por defecto y sitúese en la última ventana (Errors). Esta ventana nos permite simular la presencia de errores en el canal (los errores son muy frecuentes en sistemas de telefonía móvil y poco frecuentes para sistemas de transmisión de datos por cable). Tome inicialmente el valor más bajo posible y vaya aumentando la probabilidad de error. Observe los efectos sobre la calidad de la imagen. Note que en algunos casos, los errores se producen en la propia cabecera del fichero por lo que no es posible recuperar ninguna información de la imagen asociada. Ahora vamos a poner marcadores (pestaña markers) en diferentes regiones de la imagen. Pruebe de simular la presencia de errores con el marcador “Each Row”.

Cuestión: Desactive la simulación de errores y compare las tasas de bits por píxel que se obtienen al codificar la imagen sin marcadores, o con marcadores “Each Row”. Justifique los resultados obtenidos. ¿Cuál es el coste de la introducción de marcadores si es que es medible?. Respuesta:

Deducimos: al introducir los markers no nos implica un coste adicional o es tan pequeño que no podemos observarlo....


Similar Free PDFs