Title: T
1Tema 6 Compresión de imagen
Lab. Procesado de Imagen, ETSI Telecomunicación
2Contenidos
- 1.- Introducción
- Clasificación
- 2.- Codificación de pixel
- 3.- Cuantificación
- Escalar
- Vectorial
- Algoritmos de entrenamiento VQ
- 4.- Codificación de forma de onda
- Codificadores de resolución variable
- 5.- Codificación mediante transformada
- 6.- Codificadores basados en modelos
31.- Introducción
- El objetivo de la compresión de imagen
- Reducción del número de bits que requieren para
- Almacenamiento
- Transmisión
- A ser posible con la menor pérdida de calidad
41.- Introducción (II)
51.- Introducción (III)
- La compresión de imagen puede tener tres etapas
- Transformación de la imagen
- Se elimina información redundante
- Reducción de su rango dinámico
- La información debe compactarse en pocos
coeficientes - Cuantificación
- Reducción en la precisión de los coeficientes
- Implica siempre pérdida de calidad
- Codificación
- Se aumenta la compresión sin introducir pérdidas
- Se busca la codificación óptima con el menor
número de bits - Estas tres etapas están enormemente relacionadas
61.- Introducción. Clasificación (I)
- Tres grandes tipos de técnicas de compresión
- De forma de onda
- La cuantificación se realiza directamente en los
niveles de gris - Se suele procesar los niveles de gris para
eliminar correlación - De transformada
- Se hace una transformación para eliminar la
dependencia entre pixels - Los coeficientes se cuantifican escalarmente y se
codifican - La transformación representa un cambio de base
- Basados en modelo
- Se trata de modelar la generación de la imagen
- Lo que se cuantifica y codifica son los
parámetros del modelo - La imagen se divide en regiones homogéneas
- Se modela cada región de la imagen de forma
independiente
71.- Introducción. Clasificación (II)
- Otra clasificación de las técnicas de compresión
- Sin pérdidas
- La imagen original puede recuperarse de forma
exacta - No incluyen ninguna fase de cuantificación
- Suelen dar lugar a tasas de compresión pequeñas
- Con pérdidas
- Se realiza un procesado irreversible de la imagen
- Se emplea algún tipo de cuantificación
- Las tasas de compresión suelen ser grandes
- Visualmente sin pérdidas
- La imagen reconstruida es distinta de la original
- Las pérdidas de la imagen no son detectables por
el ojo humano - Las tasas de compresión toman valores intermedios
82.- Codificación de pixel (I)
- Información asociada al símbolo i-ésimo (fuente
de L símbolos) - Información media de la fuente entropía de la
fuente - (medida en bits/símbolo)
- Entropía de fuente de mensajes equiprobables
92.- Codificación de pixel (II)
- Código de longitud fija
- L posibles valores ai, i0,...,L-1
- El método más sencillo es un código de longitud
fija - Se representa cada nivel con nlog2 L bits
- El código corresponde al índice i en base 2 con n
bits
102.- Codificación de pixel (III)
- Código de longitud variable código Huffman
- Aproxima la entropía
113.- Cuantificación escalar (I)
- Transformación de un conjunto de valores de
entrada - Finito o infinito
- Continuo o discreto
- En un conjunto de valores de salida siempre
- Finito
- Discreto
- Se divide el rango de entrada en un número finito
de intervalos - Se asigna a todos los valores de cada intervalo
un valor representativo - El número de intervalos o niveles es L2n
- n es el número de bits asignados a cada nivel
123.- Cuantificación escalar (II)
- Los intervalos y los valores representativos se
deben elegir para que minimicen la distorsión
media
- El cuantificador más sencillo es el uniforme
- Los intervalos son todos del mismo tamaño
- El nivel de cuantificación está a mitad de cada
intervalo - Es óptimo exclusivamente cuando la distribución
de la entrada es uniforme
133.- Cuantificación escalar (III)
143.- Cuantificación escalar (IV)
- Si la distribución de los valores de entrada no
es uniforme cuantificación no uniforme - Se utiliza la técnica de compansión. Varios
pasos - 1.- Transformación no lineal
- Uniformiza la estadística de la señal de entrada
- 2.- Cuantificación uniforme
- 3.- Transformación no lineal inversa
- El efecto conjunto es asignar más niveles a los
valores más frecuentes - El ojo tiene características logarítmicas de
intensidad - Es lógico que la transformación sea logarítmica
153.- Cuantificación multiescalar
- Agrupación de múltiples cuantificadores escalares
- Cada cuantificador se diseña de forma diferente
- Se suele utilizar tras una fase de
transformación - Los coeficientes tienen características
estadísticas distintas - Esta variación suele ser función de la frecuencia
espacial - Se aplica una cuantificación diferente adaptada a
cada caso - Es la que vamos a ver en el caso del estándar
JPEG.
163.- Cuantificación vectorial Motivación
x2
fx(x1,x2)
fx2(x2)
x1
fx1(x1)
x2
x1
173.- Cuantificación vectorial Motivación
x2
fx(x1,x2)
fx2(x2)
x1
fx1(x1)
x2
x1
183.- Cuantificación vectorial (VQ) (I)
- Se agrupan k muestras de la señal de entrada
- En una imagen ello significa dividir a ésta en
subbloques de tamaño k pixels - En suma, se parte de vectores k-dimensionales
- Y se debe particionar el espacio k-dimensional
- Cada partición tiene un representante centroide
- La complejidad ahora aumenta
- Determinación de la partición
- Determinación de los representantes o centroides
193.- Cuantificación vectorial (VQ) (II)
- Es la versión multidimensional de la escalar
- Las componentes de un vector
- Yy1,y2,...,yk
- se cuantifican de forma conjunta.
- El espacio está dividido en regiones Ci
- Cada región viene representada por su centroide
- Es un mapeo en uno de los NC centroides según
203.- Cuantificación vectorial (VQ) (III)
- Al conjunto de los NC centroides se denomina
librería de centroides - Lo codificado es el índice i del centroide
- Con el índice el decodificador reconstruye el
centroide - El tamaño de la librería es NC 2b
- Cada índice i se puede representar con b bits (o
aplicar Huffman sobre los índices) - La complejidad aumenta
- Linealmente con el número de centroides NC
- Exponencialmente con la dimensión k (tamaño
subbloques) - Normalmente, la dimensión es k 16 (subbloques 4
x 4)
213.- Cuantificación vectorial (VQ) (IV)
- La distorsión introducida cobra importancia en
- La fase de entrenamiento
- Se deben elegir los centroides para minimizar la
distorsión en Ci - En la fase de codificación
- Para cada vector de entrada se elige el centroide
con distorsión mínima - La medida de distorsión es
- Se pretende encontrar la partición que minimice
esta medida.
223.- Cuantificación. Algoritmos de entrenamiento
VQ (I)
- Es el elemento que diferencia los algoritmos VQ
- No se emplean las distribuciones k-dimensionales
para determinar los centroides y particiones - Se emplean métodos de entrenamiento que usen el
criterio de mínima distorsión
233.- Cuantificación. Algoritmos de entrenamiento
VQ (II)
- El algoritmo más clásico es el LBG
- Se parte de un conjunto de centroides
- Para cada vector del conjunto de entrenamiento
Yt, t 1,...,T se elige el miembro más cercano
obteniéndose la partición óptima
- Se vuelven a calcular los centroides
- ti es el número de vectores de entrenamiento de
Si(n)
243.- Cuantificación. Algoritmos de entrenamiento
VQ (III)
- El criterio de parada viene dado por
- D(n) es la distorsión media dada por
- Dt(n) es la distorsión de cada vector de
entrenamiento
253.- Cuantificación. Algoritmos de entrenamiento
VQ (IV)
- El algoritmo garantiza llegar a un mínimo local
de la función de distorsión. - Es interesante ejecutar el algoritmo varias veces
a partir de diferentes puntos de partida
(diferentes posiciones de los centroides
iniciales)
263.- Cuantificación vectorial. LBG
273.- Cuantificación vectorial. LBG
283.- Cuantificación vectorial. LBG
293.- Cuantificación vectorial. LBG
303.- Cuantificación vectorial. LBG
313.- Cuantificación vectorial. LBG
324.- Codificadores de forma de onda (I)
- Se codifica directamente los niveles de gris
- Son métodos muy sencillos
- Se puede utilizar en un rango muy amplio de
señales - Voz
- Imagen
- Las tasas de compresión suelen ser menores
- Se emplea a continuación cuantificación escalar y
codificación de longitud fija
334.- Codificadores de forma de onda (II)
- PCM
- La forma más sencilla
- La imagen se pasa a través de un cuantificador
- Se puede mejorar utilizando un cuantificador no
uniforme
344.- Codificadores de forma de onda (III)
- DM
- En PCM no se explota la correlación entre pixels
- Se cuantifica con 2 niveles (1 bit) la diferencia
entre dos pixels consecutivos - El rango dinámico aumenta al doble
- La varianza disminuye considerablemente
- El parámetro del DM es el tamaño del escalón ?
- Dos tipos de errores
- Error granular para señales lentas
- Error de sobrecarga de pendiente para señales
rápidas
354.- Codificadores de forma de onda (IV)
364.- Codificadores de forma de onda (V)
- DPCM
- Es un método predictivo que generaliza el método
DM - Se utiliza más de un pixel para predecir el
actual - Se utiliza más de un bit para cuantificar la
diferencia - Se elimina gran parte de la correlación existente
entre pixels - La señal error tiene una varianza mucho menor
- Los coeficientes del predictor se pueden mediante
algún algoritmo de optimización (aunque el JPEG
parte de coeficientes fijos) - El método se puede diseñar adaptativo ADPCM
374.- Codificadores de forma de onda (VI)
384.- Codificadores de resolución variable (I)
- La imagen se regenera progresivamente
- Codificación piramidal
- Se parte de una imagen a baja resolución S0
- Se generan sucesivamente versiones a mayor
resolución mediante interpolación - Primero se codifica la imagen S0 a baja
resolución - Se calcula la imagen diferencia entre S0
interpolada un nivel y la imagen original a ese
nivel - Se codifica la imagen diferencia
- Se procede con el siguiente nivel
394.- Codificadores de resolución variable
Codificación piramidal
Creación de la pirámide
S2m,n
Error de predicción
S1m,n
Información a transmitir SJm,n
Som,n
404.- Codificadores de resolución variable. Plano
de bits
- Plano de bits
- A partir de una imagen con P bits se generan P
imágenes de 1 bit - Los planos MSB contienen la información
estructural - Los planos LSB son más ruidosos y contienen menos
información pero no se pueden eliminar - Se transmiten los planos de más a menos
significativo - Cada plano de bit hay que codificarlo por
separado - Se puede utilizar el método RLE y después Huffman
- Es un método sin pérdidas si se transmiten los P
planos
414.- Codificadores de resolución variable. Plano
de bits (II)
424.- Codificadores de resolución variable. Plano
de bits (II)
435.- Codificadores de transformada (I)
- Se pretende alterar la distribución de los
valores - Se logra independencia
- Muchos coeficientes toman un valor muy pequeño
- La transformación se realiza sobre bloques de la
imagen 8 x 8 ó 16 x 16 - Es un cambio de base de forma que se tengan
- Pocas componentes con valor grande
- Muchas componentes con valor muy pequeño
445.- Codificadores de transformada (II)
- yn1,n2 se representa en la base ak1,k2 n1,n2
- Transformada unitaria con coeficientes TUk1,k2
455.- Codificadores de transformada (III)
466.- Codificadores basados en modelos (I)
- La imagen o una parte de esta se representa con
un modelo - Se codifican los parámetros del modelo
- La tasa binaria es muy pequeña
- En fase de desarrollo
- Necesaria una segmentación previa de la imagen
- Se utilizan para cada región
- Modelos de texturas determinísticos y campos
aleatorios - Modelos de contornos
476.- Codificadores basados en modelos (II)