Introducción general a la compresión de datos multimedia.

25
Introducción general a la compresión de datos multimedia

Transcript of Introducción general a la compresión de datos multimedia.

Page 1: Introducción general a la compresión de datos multimedia.

Introducción general a la compresión de datos

multimedia

Page 2: Introducción general a la compresión de datos multimedia.

Necesidad de la compresión

• La mayoría de las aplicaciones multimedia requieren volúmenes importantes de almacenamiento y transmisión.– CD-ROM 640 Mb– Una película de 90 min. 120 Gb– Un canal HDTV requiere 2 Gb/seg

• Por esta razón se hace imprescindible el uso de técnicas de compresión de las señales audiovisuales que permitan reducir considerablemente el volumen de información necesario para representarlas.

Page 3: Introducción general a la compresión de datos multimedia.

Introducción• La compresión es un proceso que intenta

alcanzar una representación mas compacta de la señal digital, mediante la eliminación de la redundancia existente en dicha señal.

• El objetivo es minimizar el caudal de bits necesario para su transmisión o almacenamiento, preservando la calidad de la señal.

• Las señales de audio y vídeo son interesantes desde el punto de vista de la compresión, debido a que contienen gran cantidad de información redundante que en gran parte puede eliminarse antes de su transmisión o almacenamiento.

Page 4: Introducción general a la compresión de datos multimedia.

Redundancia de la señal

• Redundancia espacial:– Dentro de una imagen o de un cuadro de vídeo,

existe una correlación significativa entre muestras vecinas.

• Redundancia temporal – En secuencias de vídeo, hay también una correlación

significativa entre muestras vecinas temporalmente.

• Hay una considerable información en la señal que es irrelevante desde un punto de vista perceptivo.

Page 5: Introducción general a la compresión de datos multimedia.

Aspectos básicos• Un sistema de compresión consta de:

– Codificador– Descodificador

• Codificador y descodificador pueden ser:– Asimétricos

• El codificador es mucho mas complejo y lento que el descodificador (p.e. vídeo sobre demanda)

– Simétricos• Coste computacional similar (p.e. videoconferencia)

– Con pérdidas o irreversible• Adecuada para medios continuos (audio y vídeo)• Mayores tasas de compresión

– Sin pérdidas o reversible• Adecuada para ficheros de datos, imágenes, etc.• Tasas de compresión muy moderadas.

Page 6: Introducción general a la compresión de datos multimedia.

Clasificación de la técnicas

• Sin pérdidas: – de reproducción exacta, donde el audio, la imagen o

secuencia de vídeo después del proceso de codificación y descodificación sigue siendo una copia fiel de la imagen original.

• Con pérdidas: – donde parte de la información se pierde, y por tanto el

audio, la imagen o secuencia de vídeo recuperada tras el proceso de codificación y descodificación no es una copia exacta de la original.

Page 7: Introducción general a la compresión de datos multimedia.

Clasificación de la técnicas• Codificación de muestras:

– en la codificación de nuestras, se utiliza únicamente información de los píxeles o muestras individuales para comprimir la señal digital.

• Codificación perceptiva: – estas técnicas tienen como base el conocimiento de

la percepción psico-visual del ojo humano y de la percepción psico-acústica del oído humano.

• Codificación por transformada: – las técnicas de codificación por transformada,

transforman la información a otro dominio donde los datos están mucho mas de-correlados que en el dominio espacial, y la información se acumula en un pequeño número de muestras.

Page 8: Introducción general a la compresión de datos multimedia.

Clasificación de la técnicas

• Codificación predictiva: – explotan la correlación temporal y espacial de las

señales de audio, imágenes y vídeo para codificar eficientemente la información.

• Codificación sub-banda: – se basa en dividir la señal en varias bandas de

frecuencia y efectuar una compresión en cada una de las bandas de acuerdo a su importancia.

• Cuantificación vectorial: – se utiliza en dispositivos de bajos recursos (PCs) y se

basa en codificar un conjunto de muestras (vector) en base a una lista de vectores pre-establecidos. La asignación se realiza de forma que se minimice el error introducido.

Page 9: Introducción general a la compresión de datos multimedia.

Codificación de muestrasPCM: Modulación de impulsos codificados

• Es una técnica muy común, en la cual se muestrea, cuantifica y codifica con un código apropiado de longitud fija.

• Normalmente 8 bits son suficientes para imágenes de emisión monocroma o videoconferencia, mientras que en imágenes médicas o señales de vídeo en color puede requerir de 10 a 12 bits por píxel.

• Para señales de audio, se utilizan entre 8 y 16 bits según la calidad deseada.

Page 10: Introducción general a la compresión de datos multimedia.

Codificación de muestrasCuantificación lineal

• En un cuantificador lineal, la relación entre la señal de entrada y la señal de salida es lineal.

• Es decir, el salto en cada paso del cuantificador es el mismo a lo largo de todo el rango.

• Cuantificadores lineales se utilizan con frecuencia en audio.

Page 11: Introducción general a la compresión de datos multimedia.

Codificación de muestrasCuantificación no lineal

• En un cuantificador no lineal, la relación entre la señal de entrada y la señal de salida no es lineal.

• Es decir, el salto en cada paso del cuantificador no es el mismo a lo largo de todo el rango.

• La cuantificación no lineal puede aplicarse a una señal PCM de cuantificación lineal.

• Se da mas resolución a las muestras de valor mas pequeño y menos resolución a las muestras de mayor valor.

Page 12: Introducción general a la compresión de datos multimedia.

Ejemplo de cuantificación no lineal

Page 13: Introducción general a la compresión de datos multimedia.

Codificación de muestrascuantificación logarítmica

• Se utilizan en telecomunicaciones con anchos de banda limitados (300 a 3100 Hz)

• Se pueden asignar mas bits a la parte de la señal de entrada que sea mas importante y así aumentar su resolución.

• A las partes menos importantes se le asignan menos bits, y por lo tanto tienen menos resolución. Esto no afecta en exceso a la calidad de la señal.

Page 14: Introducción general a la compresión de datos multimedia.

Ejemplo de cuantificación logarítmica

Codificación europeaCodificación USA

Page 15: Introducción general a la compresión de datos multimedia.

Codificación de muestrasRun length encoding (RLE)

• Útil cuando se esperan largas sucesiones de un mismo valor (usualmente cero) entre cualquier otro par de valores.

• Estos patrones son frecuentes en multimedia. P. E. En audio (los silencios), en vídeo e imagen (fondos de un mismo color).

• Se codifica la longitud entre los dos valores diferentes.

• Es una compresión sin pérdidas.

Page 16: Introducción general a la compresión de datos multimedia.

Codificación de muestrasCodificación de entropía I

• Según el teorema de Shanon, la entropía de una fuentes S, donde pi es la probabilidad de que el símbolo si ocurra en dicha fuente, es definida por la siguiente expresión:

• Por teoría de la información, si los símbolos son distintos, entonces el número medio de bits necesitados para codificarlos está siempre limitado por el valor de su entropía.

• En una señal codificada en n bits, hay 2n posibles valores para cada muestra (si la probabilidad de las muestras es igual, su entropía es n).

Page 17: Introducción general a la compresión de datos multimedia.

Codificación de muestrasCodificación de entropía II

• Los codificadores de entropía se basan en asignar palabras de código de longitud variable a cada muestra.

• Asignan palabras cortas a los valores de muestras mas probables, y palabras largas a los valores de muestras menos probables.

• El modelo de probabilidad para la asignación de palabras de código, pueden obtenerse o directamente de los valores de entrada o de suposiciones previas sobre dichos valores.

• Los dos mecanismos más utilizados son la codificación Huffman, y la codificación Aritmética.

Page 18: Introducción general a la compresión de datos multimedia.

Codificación perceptivaImágenes y vídeo

• Tiene como base el conocimiento de la percepción psico-visual del ojo humano.

• Una aplicación de la codificación perceptiva sería la generación de las señales de diferencia de color (YUV) a partir de RGB.

• El ojo humano no aprecia ningún cambio en la calidad de la señal.

Page 19: Introducción general a la compresión de datos multimedia.

Codificación perceptivaAudio

• Tienen como base el conocimiento de la percepción psico-acústica del oído humano.

• En la señal de audio está presente el fenómeno de enmascaramiento.

• Debido a este fenómeno, una señal fuerte hace imperceptibles otras señales más débiles.

Page 20: Introducción general a la compresión de datos multimedia.

Codificación por transformada

• Se utiliza para reducir la redundancia espacial de las señales.

• Se transforma la señal a otro dominio, en el cual, sólo unos pocos de los coeficientes contengan la mayor parte de la información, siendo el resto de coeficientes despreciables.

• En el nuevo dominio, la señal tendrá una representación mucho mas completa, y podrá ser representada por unos pocos coeficientes de la transformada.

• Presenta pérdidas despreciables.

Page 21: Introducción general a la compresión de datos multimedia.

Transformadas mas comunes

• Se utilizan las versiones rápidas siguientes basándose en su buen comportamiento en la compactación de la información:– Karhunen Loeve (KLT)– Fourier Discreta (DFT)– Discreta del Coseno (DCT) (la mas común)– Walsh Hadamard (WHT)

• Son costosas computacionalmente. El número de operaciones requeridas para su cálculo es del orden de n · log (n) para las transformadas rápidas y del n2 para las otras, siendo n el número de datos de la matriz (imágenes)

Page 22: Introducción general a la compresión de datos multimedia.

Codificación predictiva

• Eliminan la redundancia que existe en el dominio espacio-temporal en el que se representan las muestras.

• Se realiza prediciendo el valor de una muestra a través de su vecindad espacial o temporal, y codificando sólo la diferencia entre los valores predichos y los valores actuales de las muestras.

• El rango de las diferencias de las muestras es normalmente menor que el rango de las muestras individuales, y por lo tanto se necesitará un menor número de bits para codificar dicho rango.

• Los valores de las muestras de las señales (audio, vídeo e imágenes) tienden a no cambiar mucho entre dos muestras consecutivas.

Page 23: Introducción general a la compresión de datos multimedia.

Codificación Sub-banda

• Basada en transformada.• La transformación entre dominios se realiza

mediante un conjunto de filtros.• La señal es dividida en múltiples bandas de

frecuencia utilizando una combinación de filtros paso-bajo y paso-alto.

• La codificación sub-banda se basa en dividir la señal (unidimensional o bidimensional) en varias bandas de frecuencia y efectuar una compresión en cada una de las bandas de acuerdo a su importancia.

Page 24: Introducción general a la compresión de datos multimedia.

Cuantificación vectorial I• Se utiliza cuando algunas aplicaciones

requieren una descodificación en tiempo real.• Procesa los bloques de datos directamente en el

dominio espacial.• Se basa en realizar un matching (búsqueda y

comparación) entre cada vector real de entrada y una serie de vectores pre-establecidos y almacenados en una biblioteca de vectores. La compresión se alcanza al transmitir únicamente el índice.

• Durante el matching se busca en la biblioteca aquel vector que mas se asemeje al real y que minimice la distorsión producida entre el vector real y el encontrado.

Page 25: Introducción general a la compresión de datos multimedia.

Cuantificación vectorial II

• La biblioteca de vectores se crea a priori teniendo en cuenta un conjunto de imágenes representativas para que contenga la mayoría de vectores posibles.

• Las medidas de distorsión mas utilizadas son el Error cuadrático medio y el Error medio absoluto, por orden de complejidad y calidad creciente.

• Los algoritmos de búsqueda se basan en árboles binarios, por orden de complejidad y calidad decreciente.