Encuentro de Investigación en Ingeniería Eléctrica Zacatecas, Zac, Abril 5 — 7, 2006
Sistema de Compresión de imágenes bajo
el dominio de la TCD.
José Félix Serrano Talamantes, Rodolfo Romero Herrera. Jesús Yaljá Montiel Pérez
Escuela Superior de Cómputo, IPN Departamento de Sistemas Electrónicos
UPLM – Zacatenco, Av. Batiz y Mendizábal s/n Col. Lindavista 07738 México, D. F. Tel. (01-55)-57296000 ext. 52022 Fax: 52003
[email protected] , [email protected], [email protected] Resumen — En el presente trabajo se presenta una
técnica para la compresión y descompresión de imágenes digitales usando como base un método predictivo que consiste básicamente en usar la correlación entre la vecindad de cada valor de pixel para una predicción de cada pixel, la cual se resta del valor del pixel actual para formar una imagen diferencial que está menos correlacionada dentro de la misma imagen La imagen diferencial es después cuantificada y posteriormente codificada. El proceso de cuantificación determina la tasa de bits que depende de la calidad de la imagen. Para mejorar la predicción se propone hacer uso de la Transformada Discreta Coseno (TDC). Esta propuesta consiste en hacer la predicción entre coeficientes en el dominio TCD aprovechando la correlación de los bloques vecinos que son de tamaño 8X8, posteriormente se cuantifican y se codifican mediante el código entrópico de Huffman. Gracias a la TDC se disminuye el impacto visual de la imagen (error de la imagen) provocado por la diferencia entre la imagen original y la imagen de predicción. Este algoritmo se programó en lenguaje C, y se visualiza en una PC, las imágenes tratadas son de tamaño 256X256 pixeles con 256 niveles de gris.
Abstract.-This work presents a technique for the compression and decompression of digital images based in a predictive method that consists basically on using the correlation among the neighborhood of each pixel value to predict each pixel. Difference between the value of the current pixel and its prediction permits to construct a differential image with less correlated pixels. The differential image is then quantified and coded. The quantification process determines the bit-rate and defines the quality of the image.
To improve the prediction method, we applied our approach in the Discrete Cosine Transform (TCD) domain. This approach consists on making the
prediction among coefficients in the DCT domain, because the correlation of the neighboring 8x8 blocks. Predicted blocks are then coded using an entropy-based code like Huffman. The use of predictive method in the DCT domain diminishes the visual impact of the coded image (visual error) caused by the difference between the original image and the predicted image.
This algorithm was programmed in C language, and it is visualized in a PC, the source images are 256X256 pixels with 256 levels of gray.
Palabras clave —Transformada Coseno discrte (TCD), Modulación de pulsos Codificada Diferencial (MDPC), Relación señal a ruido (RSR), Tamaño en el bloque en una imagen (NXN).
I. INTRODUCCIÓN
En años recientes se ha incrementado dramáticamente la necesidad de comprimir la información, dado que se desea transmitir la mayor cantidad de información en el menor tiempo posible, en este caso, de una imagen. La digitalización de una señal imagen nos conlleva a un aumento considerable de la información simbólica; por lo que la compresión de imágenes se presenta como una alternativa para buscar y eliminar las redundancias de la señal y así reducir la cantidad de información.
Una regla fundamental de la compresión es que no se debe degradar perceptiblemente su calidad visual, es decir, que la calidad de la imagen no se vea deteriorada.
La compresión es posible gracias al alto grado de correlación en las imágenes, es decir bloques adyacentes de la imagen que tienen intensidades similares.
La correlación de divide en:
1) Correlación espacial (intra-imagen): hace referencia a la redundancia espacial, es decir, a la semejanza que existe entre los pixeles adyacentes.
2) Correlación temporal (inter-imagen): hace referencia a la semejanza que existe entre imágenes sucesivas, es decir, es la recurrencia de los valores de los pixeles de una imagen a otra dentro de una secuencia.
Figura 1.-- Correlación Espacial.
La correlación intra o inter-imagen se puede interpretar de dos formas:
• información redundante.
• información irrelevante.
La redundancia de la información visual se puede medir utilizando las técnicas de la teoría de la información [1].
La información irrelevante no se puede medir matemáticamente, por lo que su medición resulta un tanto subjetiva, pues la historia de estímulos visuales de quien está observando la imagen es factor determinante en la percepción visual.
A partir de estos conceptos, podemos definir un esquema a bloques de un sistema de compresión de imágenes, el cual se muestra en la figura 2.
Figura.- 2. Esquema básico de compresión. El esquema básico comprende 3 etapas:
1. La Transformación (T) permite obtener una representación menos redundante de la señal imagen (extracción de las características específicas tales como frecuencias, estadísticas, etc). Es la detección de información relevante e irrelevante.
2. La Cuantificación (Q) permite generar un número finito de símbolos que representen la información imagen. Es la eliminación de la información irrelevante.
3. La Codificación (C) es el proceso que permite asignar un código binario específico a cada símbolo cuantificado. Aquí el proceso de transformación no es destructivo o “lossless”, es decir, no produce pérdida, pues busca utilizar transformaciones reversibles para mantener calidad visual, en cambio,
La compresión efectiva de la información se realiza en las etapas de la cuantificación y la codificación puesto que buscan minimizar el flujo de datos, por lo tanto son procesos destructivos o “lossy”produciendo pérdida de información.
La eliminación de la redundancia en la fuente de información se lleva a cabo mediante un análisis estadístico de la fuente, mientras que la eliminación de información irrelevante se realiza con un análisis psicovisual de la fuente de información. La mayor parte de los sistemas de compresión se basan en la eliminación de redundancia espacial mediante la transformación de datos (TCD, ondículas, Transformada Haar, etc), la eliminación de redundancia temporal, utilizando un esquema MDPC (MODULACIÓN DIFERENCIAL DE PULSOS CODIFICADOS), en el dominio espacial y codificación entrópica [9]. Para mejorar las limitaciones que tiene actualmente dicha técnica tanto, se requiere un desarrollo de una nueva técnica implementada en software con lenguaje C y obtener mejores índices de compresión de imágenes; dicha técnica no comprime mucho, por lo que tenemos que auxiliarnos de otras técnicas para tener un alto índice de compresión de imágenes por lo que se optó por seleccionar a la Técnica llamada “ TRANSFORMADA DISCRETA COSENO” (TCD), razón por la cual se pretende hacer de las 2 técnicas una sola, aplicando las propiedades y características de cada una y así lograr mejores índices de compresión.
I
III.. DDEESSAARRRROOLLLLOOEEIIMMPPLLEEMMEENNTTAACCIIÓÓNN
La técnica desarrollada en el presente trabajo para lograr la compresión de una imagen es el método MDPC (MODULACIÓN DIFERENCIAL POR CODIFICACIÓN DE PULSOS); este método pertenece al grupo de los códigos predictivos. Es un método simple, elegante y originalmente desarrollado para este propósito que es la COMPRESIÓN DE
IMÁGENES. Además no hace suposiciones muy sofisticadas en el tratamiento de la imagen excepto cuando se trata de aislar el ruido que hay en una imagen [4].
El principio básico de operación de un código predictivo es: Un número de elementos previos se usa para estimar el valor de la muestra actual; y la diferencia entre el valor actual y el valor estimado forma la señal que se va a transmitir. El sistema codificador y decodificador del MDPC se implementa de la siguiente manera la cual se muestra en la figura 3 y 4 respectivamente:
Figura 3: Diagrama a bloques del codificador de un sistema MDPC
Figura 4.-Diagrama a bloques del decodificador de un sistema MDPC.
La Transformada Coseno Discreta (TCD).
Definida en 1974, sus ventajas son las siguientes:
• Simplicidad de Cálculo. La señal de entrada es proyectada sobre un plano generado por una base de funciones ortogonales.
• Existe una transformación reversible usando la misma base ortogonal [9].
La TCD se aplica bloques de información de MxN elementos (normalmente M=N).
La TCD directa [1] se define por:
)) 2 ) 1 2 ( cos( ) 2 ) 1 2 ( cos( ) , ( )( ( ) ( ) , ( 1 0 1 0 N v y M u x y x f v u a v u F M x N y + + =
∑∑
− = − = π π α ………(1 ) para: u=0. M-1 y v=0...N-1 1 ) ( ⎩ ⎨ ⎧ = N u αpara u=0
(2) 2 ) ( ⎩ ⎨ ⎧ = N u α
para u=1,2,...N-1 (3)
En la ecuación (1) “x” representa el desplazamiento entre las muestras de la fila (una unidad por muestra), “y” representa el desplazamiento entre las muestras de la columna (una unidad por muestra), “u” representa un índice que determina la frecuencia espacial. El término α(u) es simplemente un factor de normalización. La constante aditiva (2x+1) ó (2y+1) se usan para cambiar los puntos de muestreo ya que ellos son simétricos alrededor del centro del Intervalo de N puntos. La descomposición de las muestras dentro del conjunto de los coeficientes TCD es comúnmente llamada Transformada Coseno Discreta Directa (TCDD) [2].
La TCD Inversa [1] está definida por: )) 2 ) 1 2 ( cos( ) 2 ) 1 2 ( cos( ) , ( ) ( ) ( ( ) , ( 1 0 1 0 N v y M u x v u F v u y x f M u N v + + =
∑∑
− = − = π π α α ………(4)para x=0. M-1, y=0...N-1. Para la ecuación (4) también se hace uso de las ecuaciones (2) y (3). La distribución promedio de la energía en el espacio transformado se encuentra en los elementos cercanos a F(0,0). La amplitud de los coeficientes F(u,v) decrece a medida que u y v aumentan (se alejan de F(0.0).
Los coeficientes representan la distribución de la luminosidad de los pixeles de un bloque de imagen, esto quiere decir que hay una distribución de las frecuencias espaciales. Hay cambios progresivos de luminosidad representados por los coeficientes de baja frecuencia, que son los coeficientes cercanos a F(0,0). Hay cambios abruptos representados por los coeficientes de alta frecuencia, que son los coeficientes alejados de F(0,0). El coeficiente F(0,0) representa el promedio de luminosidad del bloque multiplicado por un factor constante, que depende a su vez del tamaño del bloque. Cabe hacer notar que la eliminación o alteración de algunos coeficientes transformados no modifican de manera considerable el contenido visual de un bloque imagen y el error se reparte de manera uniforme. La compresión de imágenes por medio de la TCD se efectúa mediante la cuantificación escalar de los coeficientes transformados. Hay disminución de la dinámica de los valores de cada coeficiente, se eliminan los menos relevantes. La cuantificación se efectúa de manera fina en las bajas frecuencias y burdamente en las altas frecuencias [9].
Como se mencionó anteriormente, se propone implementar un sistema de Compresión de imágenes usando codificación MDPC adaptable en 2 dimensiones bajo el dominio TCD. Dicha implementación fue hecha en lenguaje C cuyo diagrama a bloques se muestra en la figura 5, 6, y 7 respectivamente
Figura 5.- Diagrama a bloques del sistema (compresión-descompresión), que se programó en lenguaje C.
Figura 6.- Diagrama a bloques del codificador del sistema MDPC bajo el dominio de la TCD.
Figura 7.- Diagrama a bloques del decodificador del sistema MDPC bajo el dominio de la TCD.
La TCD no reduce los datos, solo se busca la transformación en una forma menos redundante con un esquema íntegramente reversible que mantiene la calidad visual original.
III. RESULTADOS OBTENIDOS.
Veamos la serie de compresión y descompresión de la imagen “CLAIRE” la cual se presenta en las figuras 8 a la figura 11 respectivamente.
Figura 8.- Imagen original e imagen descomprimida usando 2 niveles de cuantificación.
Figura 9.- Imágenes descomprimidas usando 4 y 8 niveles de cuantificación respectivamente.
Figura 10.-Imágenes descomprimidas usando 16 y 32 niveles de cuantificación respectivamente.
Figura 13- Imágenes descomprimidas usando 4 y 8
niveles de cuantificación respectivamente.
Figura 11.- Imágenes descomprimidas usando 64 y 128 niveles de cuantificación respectivamente.
De las figuras 8 a 11 se obtiene la siguiente tabla:
Tabla1.- Resultados obtenidos de la serie de imágenes Claire (ver figuras 8 a la 11).
Veamos otros resultados obtenidos en la serie de imágenes “LENA”, la cual se presenta en las figuras 12 a la 15 respectivamente.
Figura 12.- Imagen original e imagen descomprimida usando 2 niveles de cuantificación.
Figura 14.- Imágenes descomprimidas usando 16 y 32 niveles de cuantificación respectivamente.
Figura 15.- Imágenes descomprimidas usando 64 y
128 niveles de cuantificación respectivamente. De las figuras 12 a la 15 se obtiene la tabla 2:
Tabla 2.- Resultados obtenidos de la serie de imágenes “LENA” (ver figuras 12 a la 15).
IV.-CONCLUSIONES.
El estándar JPEG define 3 sistemas diferentes de codificación :
1. Un sistema de codificación básico, con pérdidas que se basa en la TCD y es apropiado para todos los sistemas de compresión.
2. Un sistema de codificación extendida, para aplicaciones de mayor compresión, mayor precisión o de reconstrucción progresiva.
3. Un sistema de codificación independiente sin pérdidas para la compresión reversible.
Para poder ser compatible con el estándar JPEG, un producto o sistema debe admitir el sistema básico (ver figura 2).
Se puede considerar el presente trabajo como una propuesta para la codificación inter-imagen para la evolución del formato M-PEG2 y este formato tiene como base la compresión de cada cuadro por segundo usando la Transformada Coseno Discreta (TCD). Por esta razón se recomienda el empleo de esta transformada para futuros trabajos de investigación en esta rama, además de que se podrá en tiempo real ver videos y películas en formato M-PEG2.
A continuación se observa una figura con resultados de otros trabajos similares basados en le MDPC y haciendo una comparación con un criterio de calidad subjetiva según nuestro sistema visual Humano (SVH) son muy semejantes y se pueden considerar como buenos o aceptables.
Un gran número de algoritmos nuevos para codificación usando transformadas se han desarrollado desde hace 15 años, los cuales se han estudiado y examinado para obtener la compresión de imágenes, pero se debe tomar en cuenta el papel que implica el Sistema Visual Humano (SVH) quien después de todo es el usuario final en los esquemas de compresión de imágenes. La eliminación psicovisual conlleva a una pérdida real o cuantitativa de información visual. Debido a que la información puede eliminarse, es, muy conveniente el desarrollo de un método que nos permita tener a nuestro alcance la naturaleza y el nivel de pérdida de información, por lo que se utilizan 2 clases de criterios generales para esta valoración que son:
• Criterios de fidelidad objetiva
• Criterios de fidelidad subjetiva
Cuando se puede expresar el nivel de pérdida de información como una función de la imagen original, o de entrada a un sistema, y de imagen de salida, la que posteriormente se descomprime, se dice que nos basamos en un criterio de fidelidad objetiva. Un ejemplo de esto puede ser el cálculo de la relación señal a ruido (RSR).
IV.- REFERENCIAS BIBLIOGRÁFICAS [1] C. González R
“Tratamiento digital de imágenes”. Ed. Adisson-Wesley Ibero-americana. pp.109 -118, 1992.
[2] J. Clarke R.
“Digital Compression of Still images and Video”. Ed. Academic Press,
pp 21-51 ; 53-86, 1995. [3] A Murat Tekalp.
” Digital Video Processing”
Ed. Prentice Hall pp. 368-385. 1995 [4] Anil K. Jain,
“Fundamentals of Digital Image Processing”. Ed. Prentice Hall.
pp 476-570, 1989. [5] Sid- Ahimed.
” Image Processing. Theory“ Ed. Mc. Graw Hill.
pp 277-293, 1991 [6] M. Gray R.
“Vector Quantization and Signal Compression. Ed. Klewer Academic Publishers pp 83-125, 203-214, 1991
[7] Stephen H.Y. Hung,
“A generalization of DPCM for image Compression IEEE transactions on Pattern analysis and machine Intelligence, vol. Pam- No.1 January 1979,
pp 100-109. [8] García E.
“Notas de la ponencia: Compresión de Imágenes”
Instituto Politécnico Nacional ESIME 1996
[9] García E.
“Notas del Curso: Procesamiento Digital de Imágenes”
Instituto Tecnológico de Estudios Superiores de Monterrey. Campus Estado de México 1998