Вы находитесь на странице: 1из 15

Tema 1: Introduccin a la compresin de datos

Rafael Molina Depto. de Ciencias de la Computacin e Inteligencia Artificial Universidad de Granada


Rafael Molina Tema 1: Introduccin 1

Contenidos
Compresin por qu?. Algunos modelos. Tcnicas de compresin
Compresin sin prdida Compresin con prdida Medidas de calidad

Modelizacin y codificacin Resumen Bibliografa Material sobre compresin


Libros Cursos Referencia histrica Material didctico Sitios en Internet
Tema 1: Introduccin 2

Rafael Molina

0. Compresin por qu?. Algunos modelos.


En los ltimos aos hemos visto una transformacin (o revolucin) en la forma que utilizamos para comunicarnos. Esta transformacin incluye: Internet, mviles y sin lugar a duda vdeo. comunicaciones

La compresin de datos es una de las llamadas tecnologas posibilitadoras (enabling technologies) para estos tres elementos que son parte de la revolucin multimedia. Sin compresin no tendra sentido poner imgenes, audio o vdeo en Internet, la calidad de las comunicaciones celulares no sera la misma y desde luego la TV digital no sera posible.
Rafael Molina Tema 1: Introduccin 3

Podra decirse que la compresin de datos es El arte o la ciencia de representar informacin de una forma compacta [Sayood, 2000 pgina 1]. Por qu no nos centramos en el desarrollo de mejores tcnicas de transmisin y almacenamiento?. Mientras que podemos afirmar que la capacidad de transmisin y almacenamiento crece constantemente un corolario de la Primera Ley de Parkinson es que las

necesidades de transmisin y almacemamiento crecen a una velocidad que es el doble de la mejora en capacidad de transmisin y almacenamiento.
Primera Ley de Parkinson: el trabajo crece para llenar todo el tiempo disponible [Sayood, 2000, pgina 2]
Rafael Molina Tema 1: Introduccin 4

Un poco de Historia: Uno de los primeros ejemplos de compresin de datos es el desarrollado por Samuel Morse a mediados del sigo XIX, (ver tambin el cdigo Braille) en el que las letras enviadas por el telgrafo son codificadas utilizando puntos (.) y rayas (-) siendo la secuencia de smbolos ms corta para las letras ms frecuentes. Este tipo de modelos para la compresin son llamados modelos estadsticos.

Existen adems modelos que tienen en cuenta el proceso fsico de formacin del dato (voz) o modelos que analizan la capacidad de percepcin del receptor (imgenes).
Rafael Molina Tema 1: Introduccin 5

I. Tcnicas de compresin
Cualquier algoritmo o tcnica de compresin tiene dos partes: Un algoritmo de compresin que toma una entrada X y genera una representacin Xc que necesita menos bits. Un algoritmo de reconstruccin que trabaja en la representacin comprimida Xc y genera la reconstruccin Y.
Representacin comprimida

Original

Xc

Reconstruccin

X
Rafael Molina Tema 1: Introduccin

Y
6

Un esquema de compresin consta tanto de la parte de compresin como de la de reconstruccin. Normalmente se utiliza el trmino algoritmo de compresin para denotar el esquema completo de compresin. Los algoritmos de compresin se dividen en dos grandes clases: Algoritmos sin prdida, en los que la entrada al codificador, X, y la salida del decodificador, Y, coinciden. Algoritmos con prdida, que suelen proporcionar mayor compresin que los sin prdida, pero en los que X e Y no coinciden, aunque se parecen (concepto a definir).
Rafael Molina Tema 1: Introduccin 7

I.1. Compresin sin prdida


Como indica su nombre, no hay prdida de informacin. Se utiliza en aplicaciones donde no se permite ninguna diferencia entre los datos originales y los reconstruidos. Son campos de aplicacin, entre muchos otros: Compresin Compresin Compresin Compresin Compresin de de de de de texto datos bancarios datos empresariales/financieros binarios/ejecutables imgenes mdicas

Rafael Molina

Tema 1: Introduccin

Tcnicas estadsticas 1. Cdigo de Huffman. 2. Codigos aritmticos. 3. Cdigo de Golomb. Tcnicas basadas en diccionarios 1. LZW, LZ77. Tcnicas predictivas 1. PPM, Mtodo de Burrows-Wheeler. Estndares: Morse, Braille, Unix compress, gzip, zip, bzip, gif, bmp, jbig, jpeg sin prdida,

Rafael Molina

Tema 1: Introduccin

I.2. Compresin con prdida


Estas tcnicas llevan asociadas una prdida de informacin, los datos originales no pueden, normalmente, ser recuperados exactamente. Voz e imgenes (vdeo) son ejemplos claros de campos que toleran prdida en la compresin. Incluye tcnicas como: 1. 2. 3. 4. Cuantificacin escalar y de vectores. Wavelets. Transformaciones por bloques. Estndares: JPEG, JPEG 2000, MPEG (1, 2, 4).
Tema 1: Introduccin 10

Rafael Molina

I.3. Medidas de Calidad


Cmo evaluamos compresin?: la calidad de un algoritmo de

1. Complejidad del algoritmo, 2. Necesidades de memoria, 3. Tiempo de ejecucin en una determinada plataforma, 4. Cantidad de compresin, 5. Cuanto se parece la reconstruccin a los datos originales En este curso utilizaremos fundamentalmente los dos ltimos criterios.
Rafael Molina Tema 1: Introduccin 11

Razn de compresin = cociente entre el nmero de bits necesarios para representar los datos antes de la compresin y el nmero de bits necesarios para representar los datos despus de la compresin. Ejemplo: dada una imagen de tamao 256x256 con un byte de informacin por pxel, si tras la compresin ocupa 16.384 bytes su compresin ser 65.536: 16.384=4:1. Tambin podramos medir la compresin utilizando la reduccin en la cantidad de datos expresada como porcentaje del tamao de los datos originales. En nuestro ejemplo sera una reduccin del 75%. Tambin podemos usar el nmero medio de bits necesarios para representar cada dato. En nuestro ejemplo: 2 bits/pxel.
Rafael Molina Tema 1: Introduccin 12

Cuando la compresin es con prdida tenemos que utilizar, adems de la cantidad de compresin obtenida, una medida para determinar la diferencia entre los datos originales y reconstruidos. Esta diferencia recibe el nombre de distorsin. Las medidas de distorsin podran ser a su vez basadas en criterios matemticos o perceptuales. Lo discutiremos cuando veamos la compresin con prdida.

Rafael Molina

Tema 1: Introduccin

13

II. Modelizacin y Codificacin


Uno de los aspectos ms importantes de la compresin es la caracterizacin (modelizacin) de los datos a comprimir. Cualquier algoritmo de compresin podra dividirse en dos fases: Modelizacin, donde extraemos informacin sobre la redundancia en los datos y describimos la redundancia como un modelo y Codificacin de la descripcin del modelo y como los datos difieren del modelo.
Rafael Molina Tema 1: Introduccin 14

Ejemplo II.1 Consideremos la secuencia (x1,x2, 9 11 11 11 14 13 15 17 16 17 20 21 Si usamos la representacin binaria de estos datos necesitaramos 5 bits por dato. Observando al grfico un modelo aproximado para los datos sera
^

xn n  8
Si consideramos los residuos
^

n 1,2,...

en

x  xn : 0 1 0 1 1 1 0 1 1 1 1 1

Podemos transmitir o almacenar el modelo y los residuos que pueden codificarse usando por ejemplo 00 para el -1, 01 para el 0 y el 10 para el 1. Observemos que si enviamos o almacenamos slo el modelo y los residuos los consideramos nulos tendramos una codificacin con prdida.
Rafael Molina Tema 1: Introduccin 15

Ejemplo II.2 Consideremos la secuencia (x1,x2, 27 28 29 28 26 27 29 28 30 32 34 36 38 La sucesin no parece seguir una ley sencilla como en el ejemplo anterior. Consideremos el modelo

xn 1

xn  d n 1

n 1,2,...

Podemos transmitir o almacenar x1 y todas las diferencias, es decir:

27 1 1  1  2 1 2  1 2 2 2 2 2
Discutiremos este tipo de tcnicas que reciben el nombre de esquemas de codificacin predictiva en el tema 6 para compresin sin prdida y con posterioridad para compresin con prdida.
Rafael Molina Tema 1: Introduccin 16

Ejemplo II.3 Consideremos la sentencia siguiente: a barayaran array ran far faar faaar away donde denota espaco en blanco. Podemos usar tres bits por smbolo para codificarla. Tambin podemos usar la siguiente tabla para codificarla con longitud variable: a 1 001 b f n r w y 01100 0100 0111 000 01101 0101 Si usamos estos cdigos la secuencia ser codificada usando 106 bits. Puesto que tenemos 41 smbolos el modelo utiliza 2.58 bits por smbolo. La razn de compresin es 3:2.56=1.16:1. Estos modelos que se basan en la redundancia estadstica sern estudiados en los temas 3 y 4. Usando texto hay palabras que se repiten frecuentemente, podemos construir una lista con ellas y representarlas por su posicin en la lista. Estamos ante los esquemas de compresin basados en diccionarios que veremos en el tema 5.
Tema 1: Introduccin 17

Rafael Molina

A veces la redundancia es ms evidente cuando miramos a grupos de smbolos. Estos modelos sern discutidos en el captulo 4. Por ltimo, en determinadas situaciones ser ms conveniente descomponer los datos en un conjunto de componentes, podemos estudiar cada componente separadamente y usar un modelo para cada una de las componentes. Aparecern los mtodos basados en transformadas: wavelets, transformada coseno discreta, etc que estudiaremos al final del curso.

Rafael Molina

Tema 1: Introduccin

18

III. Resumen del tema


1. Introduccin al problema de la compresin de datos y su necesidad, 2. Algo de terminologa, 3. Distincin entre compresin sin prdida y con prdida, 4. Hemos definido la razn de compresin y comentado la existencia de criterios de similitud matemticos y perceptuales, 5. Por ltimo, hemos descrito algunos modelos que se utilizarn para comprimir los datos: estadsticos, diccionarios y predictivos.

Rafael Molina

Tema 1: Introduccin

19

IV Bibliografa
K. Sayood, Introduction to Data Compression, Morgan and Kaufmann, 2005.

Material Complementario
Tema 1 del curso de compresin de datos impartido en Chalmers University of Technology (Suecia), curso 2003-2004. (tema1_chalmers.pdf) Tema 1 del curso de compresin de datos impartido en Stony Brook University (NY, USA), 2002-2003. (tema1_stony_univ.pdf). Tema 1 del curso de compresin de la informacin impartido en la Universidad de Murcia, curso 2006-2007. (tema1_chalmers.pdf) C. E. Shannon, A mathematical theory of communication,'' Bell System Technical Journal, vol. 27, pp. 379-423 and 623-656, July and October, 1948.
Rafael Molina Tema 1: Introduccin 20

V. Material sobre compresin


LIBROS
El material bsico del curso ser el libro: Introduction to Data Compression, tercera edicin, by Khalid Sayood. ISBN 1-55860-558-4. En la pgina web http://www.mkp.com buscar el libro (usando el nombre del autor) y seleccionar el ttulo del libro. El companion site en la pgina del libro ser utilizado frecuentemente en las prcticas del curso.
Rafael Molina Tema 1: Introduccin 21

Data Compression: The Complete Reference 4th Edition By David Salomon. Published by Springer (2006). ISBN 0-387-40697-2. LCCN QA76.9 D33S25 2004. xx+899 pages.

Informacin sobre el autor puede encontrarse en http://www.ecs.csun.edu/~dsalomon/ sobre el libro en http://www.davidsalomon.name/DC4advertis/DComp4Ad.html


Rafael Molina Tema 1: Introduccin 22

The Data Compression Book 2nd edition by Mark Nelson and Jean-loup Gailly, M&T Books, New York, NY 1995 ISBN 155851-434-1 541 pages .

Informacin sobre los autores y el libro puede encontrarse en http://www.marknelson.us/index.html http://gailly.net

Rafael Molina

Tema 1: Introduccin

23

CURSOS
(La lista no es, en absoluto, exhaustiva. Realiza tus aportaciones)

Curso de compresin de datos impartido en Chalmers University of Technology (Suecia): material 2003-2004
http://www.s2.chalmers.se/undergraduate/courses0304/ess155/

Curso de compresin de datos impartido en Stony Brook University (NY, USA): http://mnl.cs.stonybrook.edu/class/cse391/2003-spring/ Curso compresin de la informacin.Universidad de Murcia: 2006-2007 http://perseo.dif.um.es/~roque/ci/index.html#Programa
Rafael Molina Tema 1: Introduccin 24

REFERENCIA HISTORICA
Sin lugar a duda el trabajo de Shanon C. E. Shannon, A mathematical theory of communication,'' Bell System Technical Journal, vol. 27, pp. 379-423 and 623-656, July and October, 1948. debe estar presente en el material de la asignatura http://cm.bell-labs.com/cm/ms/what/shannonday/paper.html Ver http://cm.bell-labs.com/cm/ms/what/shannonday/work.html sobre la importancia del trabajo de Shannon
Rafael Molina Tema 1: Introduccin 25

MATERIAL DIDACTICO (La lista no es exhaustiva)


'Interactive Data Compression Tutor' es una ayuda para aprender compresin de datos basada en la web. Contiene informacin sobre los principios fundamentales y los metodos de la compresin de datos y algunos ejemplos de estos mtodos. Esta desarrollado por el departamento de ingeniera electrnica, elctrica y de los computadores de la Universidad de Birmingham. http://www.eee.bham.ac.uk/woolleysi/All7/body0.htm

Rafael Molina

Tema 1: Introduccin

26

Squeeze Page es una pgina diseada para aprender algoritmos de compresin sin prdida utilizando textos con grficos y Java Applets. http://www.cs.sfu.ca/cs/CC/365/li/squeeze/ ha sido desarrollada en La Universidad Simon Fraser http://www.cs.sfu.ca Image and Video Compression Learning Tool VcDemo. Universidad de Delft. http://ict.ewi.tudelft.nl/index.php?Itemid=124

Rafael Molina

Tema 1: Introduccin

27

Informacin proporcionada por el alumno: Alejandro Arco Aguila (curso 2006-2007)


http://www.maximumcompression.com/index.html -- Benchmark y comparacin de los distintos algoritmos donde se pueden descargar incluso, adems de distinta informacin referente a la compresin. http://trappist.elis.ugent.be/~wheirman/compression/ -- Pgina donde se comparan distinos mtodos de compresin como bzip2, gzip, rar, zip, 7-zip, lzop y Zoo en los que tambin es posible su descarga. http://www.c10n.info/newsletter/ -- Revista totalmente actualizada de las diferentes noticias relacionadas con la compresin, avances de las empresas, ltimas versiones de programas, etc. Para acceder a los documentos es necesario subscribirse. http://www.sfu.ca/~cjenning/toybox/hjpeg/index.html -- Applet para la demonstracion de la compresion JPEG-89. http://www.cs.sfu.ca/CC/365/li/squeeze/LZW.html -- Applet para la demonstracin de la compresin LZW http://www-mm.informatik.uni-mannheim.de/veranstaltungen/animation/multimedia/Schmid_2002/ -Parecida a los anteriores enlaces para Hc (Huffman), LZW y AC (Codificacin aritmtica) http://www.applet.dk/#old%20name=oldback -- Igual que las anteriores para gzip
Rafael Molina Tema 1: Introduccin 28

Informacin adicional proporcinada por el alumno: Luis Quesada Torres (curso 2006-2007) Compresin por Wavelet (estandar o no estandar): http://www.tilman.de/uni/ws05/scivis/wavelet-compression-applet.html Image compression using the Wavelet Decomposition: http://brain.cc.kogakuin.ac.jp/~kanamaru/WaveletJava/Compress/Compresse.html

Rafael Molina

Tema 1: Introduccin

29

SITIOS EN INTERNET
http://www.datacompression.info/

El portal de la asignatura: contendr los apuntes de teora, las prcticas y el material complementario, as como toda la informacin sobre la asignatura. http://decsai.ugr.es/ccd/
Rafael Molina Tema 1: Introduccin 30

Вам также может понравиться