|
|
Ing. Adrián Zambrano 1 CAPÍTULO 4 Compresión de imágenes (JPEG)
Ing. Adrián Zambrano 2 4.1 Introducción Produce compresión con pérdidas. Es un algoritmo de compresión, no es un formato de archivo. El formato de archivo usado era JFIF pero ahora se usa SPIFF que también lo soporta. Tiene excelente tasa de compresión para imágenes a color.
Ing. Adrián Zambrano 3 4.2. Codificación JPEG (1) JPEG = Joint Photographic Expert = Grupo Asociado de Expertos en Fotografía. JPEG es un subcomité dela ISO/IEC. ISO = International Standards Organization. IEC = International Electrotechnical Commission. Fue aceptado como estándar internacional en 1992 aunque se inició en 1982.
Ing. Adrián Zambrano 4 4.2. Codificación JPEG (2) Es una técnica de compresión para imágenes a color o de escala de grises y usa una combinación de la transformada del coseno discreto, cuantificación, y codificación RLE y Huffman.
Ing. Adrián Zambrano 5 4.2. Codificación JPEG (3) Los principales pasos del algoritmo son: Bloques de datos. Codificación de fuente: donde se realiza la transformada del coseno discreto y la cuantificación. Codificación de entropía: donde se aplica RLE y Huffman.
Ing. Adrián Zambrano 6 4.2. Codificación JPEG (4) Es un proceso de compresión relativamente lento comparado con GIF, TIFF y PCX. En el proceso de compresión se pierde algo de información. Esta información perdida tiene poco efecto para el ojo humano.
Ing. Adrián Zambrano 7 4.2. Codificación JPEG (5) GIF toma la información de color de 24 bits, la convierte a una paleta de color de 8 bits y luego usa compresión LZW. JPEG almacena los cambios de color. El ojo es más sensible a los cambios de brillo antes que a los cambios de color. Si los cambios son similares a la de la imagen original el ojo no lo percibirá.
Ing. Adrián Zambrano 8 4.2.1 Conversión del color y submuestreo (1) En la primera parte de la compresión se convierten los colores RGB a YCbCr. JPEG permite más pérdidas en las crominancias que en las luminancias. En RGB todos los colores llevan información de brillo, pero la componente verde tiene mayor efecto en el brillo que las otras componentes.
Ing. Adrián Zambrano 9 4.2.1 Conversión del color y submuestreo (2) Y = 0.299 R + 0.587 G + 0.114 B Cb = 0.168 R – 0.3313 G + 0.5 B Cr = 0.5 R – 0.4187 G + 0.0813 B
Ing. Adrián Zambrano 10 4.2.1 Conversión del color y submuestreo (3) En el proceso de submuestreo la tasa de muestreo de Cb y Cr es menor que de Y. Típicamente se toman 4 muestras de Y por cada muestra de Cb y Cr (4:1:1). La tasa de muestreo es uno de los parámetros de compresión. La cabecera JPEG contiene toda la información para decodificar el dato JPEG.
Ing. Adrián Zambrano 11 4.2.2 Codificación DCT (1) La DCT convierte un dato de intensidad a un dato de frecuencia y sirve para indicar cuán rápido varía la intensidad. La imagen es segmentada en bloques de 8x8 píxeles. Cada componente en el espacio de color dado es procesada separadamente. No es necesario cambiar a YCbCr pero esto mejorará la compresión.
Ing. Adrián Zambrano 12 4.2.2 Codificación DCT (2) Por qué trabajar en el dominio de la frecuencia? Porque en áreas pequeñas de la imagen no se observan grandes variaciones en la intensidad de los píxeles vecinos, por lo tanto las componentes de baja frecuencia tienen más información que las de alta frecuencia. El humano es menos sensible a las pérdidas de componentes de alta frecuencia que de baja frecuencia.
Ing. Adrián Zambrano 13 4.2.2 Codificación DCT (3) Un punto (x, y) tiene el valor f(x, y). La DCT produce un bloque (u, v) de 8x8 usando: Donde : ó Para z = 0 Para z < > 0
Ing. Adrián Zambrano 14 4.2.2 Codificación DCT (4) Cada componente especifica el grado para el cual la imagen cambia sobre el bloque muestreado. F(0, 0) da el valor medio de los valores del bloque. También llamado coeficiente DC. El resto de valores son los coeficientes AC cuyos valores se aproximan más a cero cuanto más hacia la derecha y hacia abajo están, sobretodo en bloques donde no existe mucho contraste.
Ing. Adrián Zambrano 15 4.2.2 Codificación DCT (5) 144 139 149 155 153 155 155 155 151 151 151 159 156 156 156 158 151 156 160 162 159 151 151 151 158 163 161 160 160 160 160 161 158 160 161 162 160 155 155 156 161 161 161 161 160 157 157 157 162 162 161 160 161 157 157 157 162 162 161 160 163 157 158 154 Matriz de luminancias
Ing. Adrián Zambrano 16 4.2.2 Codificación DCT (6) 1257.9 2.3 -9.7 -4.1 3.9 0.6 -2.1 0.7 -21.0 -15.3 -4.3 -2.7 2.3 3.5 2.1 -3.1 -11.2 -7.6 -0.9 4.1 2.0 3.4 1.4 0.9 -4.9 -5.8 1.8 1.1 1.6 2.7 2.8 -0.7 0.1 -3.8 0.5 1.3 -1.4 0.7 1.0 0.9 0.9 -1.6 0.9 -0.3 -1.8 -0.3 1.4 0.8 -4.4 2.7 -4.4 -1.5 -0.1 1.1 0.4 1.9 -6.4 3.8 -5.0 -2.6 1.6 0.6 0.1 1.5 DCT de las luminancias
Ing. Adrián Zambrano 17 4.2.2 Codificación DCT (7) Los valores más significativos están en la esquina superior izquierda. Muchos valores son cercanos a 0 y efectivamente se vuelven 0 al ser cuantificados. Esos 0’s son comprimidos al usar RLE o Huffman.
Ing. Adrián Zambrano 18 4.2.3 Cuantificación (1) El sistema visual humano es menos sensitivo a la variación de coeficientes AC de alta frecuencia. La cuantificación beneficia las componentes de baja frecuencia. Cada coeficiente de la DCT es dividido por un factor de cuantificación y se redondea al entero más cercano.
Ing. Adrián Zambrano 19 4.2.3 Cuantificación (2) Puesto que hay 8*8 coeficientes DCT, se usa una tabla de 8*8 factores de cuantificación correspondientemente relacionados. Las imágenes a color con 3 componentes deberán tener tres tablas de factores. Las tablas son almacenadas en el archivo .jpg para uso del decodificador. Las componentes de mayor frecuencia generalmente tienen factores de mayor valor.
Ing. Adrián Zambrano 20 4.2.3 Cuantificación (3)
Ing. Adrián Zambrano 21 4.2.3 Cuantificación (4) La mayoría de componentes cuantificados de esta manera son cero, lo que permite comprimir el dato usando RLE. La mayoría de valores diferentes de 0 están en la esquina superior izquierda. Las componentes DC son almacenadas como la diferencia del valor DC de un bloque al siguiente ya que son similares.
Ing. Adrián Zambrano 22 4.2.3 Cuantificación (5) Las componentes AC son almacenadas en zigzag de tal manera que al final queden ceros en su mayoría.
Ing. Adrián Zambrano 23 4.2.3 Cuantificación (6)
Ing. Adrián Zambrano 24 4.2.3 Cuantificación (7) 251 0 -2 -1 0 0 0 0 -5 -3 0 0 0 0 0 0 -1 -1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Coeficientes DCT cuantificados
Ing. Adrián Zambrano 25 4.2.4 Compresión final (I) Después del barrido, el bloque anterior quedaría: 251, 0, -5, -1, -3, -2, -1, 0, -1, 0,…,0
Ing. Adrián Zambrano 26 4.2.5 Tablas de Cuantificación (1)
Ing. Adrián Zambrano 27 4.2.5 Tablas de Cuantificación (2)
Ing. Adrián Zambrano 28 4.3 Modos de Operación JPEG(I) JPEG tiene 4 modos de operación bajo los cuales se definen los procesos de codificación: Modo secuencial basado en la DCT (baseline). Modo progresivo basado en la DCT. Modo jerárquico. Modo sin pérdidas.
Ing. Adrián Zambrano 29 4.3 Modos de Operación JPEG(II) Codificador basado en la DCT
Ing. Adrián Zambrano 30 4.3 Modos de Operación JPEG(III) Modo progresivo: Aquí se permite ver los rasgos gruesos de la imagen mientras se decodifica el resto del archivo. Útil en canales de transferencia lentos. Se usan dos métodos: el modo de selección espectral y el modo de aproximación sucesiva.
Ing. Adrián Zambrano 31 4.3 Modos de Operación JPEG(IV)
Ing. Adrián Zambrano 32 4.3 Modos de Operación JPEG(V) Modo de selección espectral : Para cada bloque se envía primero los componentes espectrales de baja frecuencia y luego los de alta frecuencia. Modo de aproximación sucesiva: En este caso se envían primero los bis más significativos de cada dato codificado y luego los menos significativos.
Ing. Adrián Zambrano 33 4.3 Modos de Operación JPEG(VI) Modo jerárquico. En este modo la imagen se almacena en múltiples resoluciones. Cada una con un factor de 2 en cada dimensión. Ejemplo: 320*480 luego 640*480 . La mayoría de sistemas no implementan esta característica.
Ing. Adrián Zambrano 34 4.3 Modos de Operación JPEG(VII) Modo sin pérdidas: En este modo el dato almacenado es recuperado exactamente a la forma original. No emplea DCT o submuestreo.
Summary: El proceso JPEG parte 1 de la Materia de Introducción a la Multimedia
| URL: |
No comments posted yet
Comments