Está en la página 1de 8

COMPRESION Y DESCOMPRESION

Edwin Delgado Huaynalaya Universidad Nacional Jorge Basadre Grohmann Tacna, Per e-mail edychrist@gmail.com

ABSTRACT

This article presents information about COMPRESSION AND DECOMPRESSION algorithm which are used in the computer science field by diverse reasons and will be explained. Keywords: LZW, String, Character

RESUMEN Este artculo presenta informacin sobre algoritmos de COMPRESIN Y DESCOMPRESIN los cuales son usados en el campo de la informtica por diversos motivos y sern explicados. Palabras Claves: LZW, Cadena, Caracter,

UNIVERSIDAD NACIONAL JORGE BASADRE GROHMANN FACULTAD DE CIENCIAS ESCUELA DE INGENIERIA EN INFORMTICA Y SISTEMAS

INTRODUCCION Existen diferentes algoritmos que permiten la compresin y descompresin de datos. Uno de ellos es el LZW y con la ayuda de un ejemplo estudiaremos su mecnica tanto para la compresin y la descompresin de una cadena de informacin. A la vez, se mostrar en forma resumida los principales algoritmos que se utilizan en Internet tanto para la compresin de Imgenes, Texto, Sonidos y Videos.

OBJETIVO Analizar y Comprender el funcionamiento del Algoritmo de Compresin de Datos LZW Conocer los algoritmos que se utilizan actualmente en Internet

REDES COMPUTACIONALES Y TELEMTICA QUINTO AO

UNIVERSIDAD NACIONAL JORGE BASADRE GROHMANN FACULTAD DE CIENCIAS ESCUELA DE INGENIERIA EN INFORMTICA Y SISTEMAS

ALGORITMO DE COMPRESIN DE DATOS LZW Desarrollado por J. Ziv y A. Lempel (1977), y refinado por T. Welch (1984). Usado en los ficheros de formato grfico GIF y TIFF. Estos algoritmos (compresin y descompresin) son sorprendentemente simples. LZW utiliza una tabla de cadenas y reemplaza cadenas de caracteres por cdigos nicos. Es suficiente con aadir el ltimo carcter que ha entrado a una cadena existente en la tabla para aadir esta nueva cadena a dicha tabla entonces se crea un nuevo ndice para esa cadena. Esto se ver claramente ms adelante con un sencillo ejemplo. "En los datos comprimidos no est cargada la tabla de cadenas. Slo se carga la tabla de caracteres individuales y los cdigos que se han obtenido como salida." Proceso de Compresin. Cada vez que un nuevo cdigo es obtenido, una nueva cadena es aadida a la tabla de cadenas de caracteres. Inicialmente, en la tabla se encuentra los caracteres individuales que se pueden encontrar en el fichero. Lo normal es que los ndices de la tabla de 0-255 sean asignados a los caracteres ASCII, y los restantes, sean asignados a las cadenas que se van aadiendo a la tabla. El algoritmo de compresin sera:

INICIO INICIALIZAR EL DICCIONARIO

0
HAY ALGUN SIMBOLO EN EL TEXTO?

1
LEER EL SIGUIENTE SMBOLO Y METERLO EN EL BUFFER

0
COINCIDENCIA ENTRE EL BUFFER Y EL DICCIONARIO

ENVIAR EL CDIGO CORRESPONDIENTE A LA CADENA DEL BUFFER MENOS EL LTIMO SMBOLO AADIR EL CONTENIDO DEL BUFFER AL DICCIONARIO LIMPIAR EL BUFFER EXCEPTO EL LTIMO SIMBOLO

ENVIAR EL CODIGO CORRESPONDIENTE A LA CADENA EN EL BUFFER

FIN REDES COMPUTACIONALES Y TELEMTICA QUINTO AO

UNIVERSIDAD NACIONAL JORGE BASADRE GROHMANN FACULTAD DE CIENCIAS ESCUELA DE INGENIERIA EN INFORMTICA Y SISTEMAS

Proceso de descompresin. Necesita poder coger la lista de cdigos de salida del algoritmo de compresin y la tabla inicial de los ndices de caracteres individuales. A partir de estos datos, el algoritmo de descompresin es capaz de reconstruir completamente la tabla de cadenas, necesaria para poder obtener la entrada. El algoritmo de descompresin es el siguiente:
INICIO INICIALIZAR EL DICCIONARIO

0
HAY MS CDIGOS RECIBIDOS?

1
DECODIFICAR EL SIGUIENTE CODIGO Y ENVIAR LOS SIMBOLOS CORRESPONDIENTES AL BUFFER TEMPORAL

HAY MAS SMBOLOS EN EL BUFFER TEMPORAL?

1
TRANSFERIR EL SIGUIENTE SMBOLO DEL BUFFER TEMPORAL AL BUFFER

HAY ALGUNA COINCIDENCIA ENTRE EL BUFFER Y EL DICCIONARIO?

IMPRIMIR LOS SIMBOLOS DEL BUFFER MENOS EL LTIMO AADIR EL CONTENIDO COMPLETO DEL BUFFER AL DICCIONARIO LIMPIAR EL BUFFER EXCEPTO EL LTIMO SIMBOLO

IMPRIMIR EL CONTENIDO DEL BUFFER

FIN

REDES COMPUTACIONALES Y TELEMTICA QUINTO AO

UNIVERSIDAD NACIONAL JORGE BASADRE GROHMANN FACULTAD DE CIENCIAS ESCUELA DE INGENIERIA EN INFORMTICA Y SISTEMAS

Ejemplo de Compresin y Descompresin LWZ La cadena de entrada estar formada solamente por A, B y C: ABBABABAC La tabla inicial est formada por los ndices de estos caracteres: A=1, B=2, C=3. Cadena
A B B A AB A AB ABA C

Carcter
B B A B A B A C

Cadena + Carcter
AB BB BA AB ABA AB ABA ABAC

ndice
4 5 6 4 7 4 7 8

Cdigo
1 2 2 --4 ----7 3

Fig. 1 Compresin de Datos

Cdigos obtenidos en la compresin (1, 2, 2, 4, 7, 3) Viejo (cadena)


1 2 2 4 7 A B B AB ABA

Nuevo (cadena)
2 2 4 7 3 B B AB ABA C

Cadena
A B B AB ABA

Carcter
B B A A C

Cadena +
Caracter AB BB BA ABA ABAC

ndice
4 5 6 7 8

Fig. 2 Descompresin de Datos

REDES COMPUTACIONALES Y TELEMTICA QUINTO AO

UNIVERSIDAD NACIONAL JORGE BASADRE GROHMANN FACULTAD DE CIENCIAS ESCUELA DE INGENIERIA EN INFORMTICA Y SISTEMAS

ALGORITMOS DE COMPRESION CON Y SIN PRDIDA

ALGORITMO DE COMPRESIN CON PRDIDA Se llama as a cualquier procedimiento de codificacin que tenga como objetivo representar cierta cantidad de informacin utilizando una menor cantidad de la misma, siendo imposible una reconstruccin exacta de los datos originales. La compresin con prdida solo es til cuando la reconstruccin exacta no es indispensable para que la informacin tenga sentido. La informacin reconstruida es solo una aproximacin de la informacin original. Suele restringirse a informacin analgica que ha sido digitalizada (imgenes, audio, video, etc...), donde la informacin puede ser parecida, y al mismo tiempo, ser subjetivamente la misma. Su mayor ventaja reside en las altas razones de compresin que ofrece en contraposicin a un algoritmo de compresin sin prdida.

Mtodos de Compresin con Prdida: 1. Compresin de imagen Compresin Fractal JPEG Compresin Wavelet DjVu 2. Compresin de vdeo Flash (tambin soporta sprites JPEG) H.261 H.263 H.264/MPEG-4 AVC MNG (soporta sprites JPEG) Motion JPEG MPEG-1 MPEG-2 MPEG-4 Ogg Theora Sorenson video codec VC-1 3. Compresin de audio 3.1 Msica AAC - usado, por ejemplo, por Apple Computer ADPCM
REDES COMPUTACIONALES Y TELEMTICA QUINTO AO

UNIVERSIDAD NACIONAL JORGE BASADRE GROHMANN FACULTAD DE CIENCIAS ESCUELA DE INGENIERIA EN INFORMTICA Y SISTEMAS

ATRAC Dolby AC-3 DTS MP2 MP3 Musepack Ogg Vorbis WMA 3.2 Habla/Dilogo CELP G.711 G.726 HILN Speex ALGORITMO DE COMPRESIN SIN PRDIDA Se llama as a cualquier procedimiento de codificacin que tenga como objetivo representar cierta cantidad de informacin utilizando una menor cantidad de la misma, siendo posible una reconstruccin exacta de los datos originales. Este tipo de compresin se vuelve necesaria cuando se requiere conservar ntegramente la informacin original, en contraposicin a lo que sucedera con un algoritmo de compresin con prdida. Este sistema de compresin se usa en Compresores de archivo (RAR, Gzip, Bzip, zip, 7z, arj) y disco, tambin en imagenes (PNG, RLE) y en algn formato de audio (FLAC), en video es muy raro, suele ser utilizado para captura, como huffyuv. Podemos aadir en esta clasificacin al Algoritmo de Compresin de Datos LZW explicado al inicio de este artculo, debido a que nos permite recuperar la informacin original sin prdida.

REDES COMPUTACIONALES Y TELEMTICA QUINTO AO

UNIVERSIDAD NACIONAL JORGE BASADRE GROHMANN FACULTAD DE CIENCIAS ESCUELA DE INGENIERIA EN INFORMTICA Y SISTEMAS

CONCLUSIONES Se comprendi el funcionamiento del Algoritmo LZW y el cul es til para la recuperacin exacta de la informacin comprimida. En el ejemplo se pudo ver que fue necesario el uso de una tabla inicial, para dar inicio al proceso y lgicamente para realizar la descompresin se utiliz los datos del resultado de la compresin. Los algoritmos que se utilizan en Internet son muchos pero los ms conocidos son: para Imagen (JPEG, PNG), para sonido (MP3) y para video (MPEG-4) y para archivos (RAR).

REFERENCIAS

Universidad de las Palmas de Gran Canaria, http://seritel.teleco.ulpgc.es/trabajos/cables/grupo8.htm [2] Behrouz A. Forouzan, Tranmisin de Datos y Redes de Comunicaciones McGRAW-HILL / INTERAMERICANA DE ESPAA, S.A.U. 2002 [3] Wikipedia, La enciclopedia libre
http://es.wikipedia.org/wiki/Algoritmo_de_compresi%C3%B3n_con_p%C3%A9rdida http://es.wikipedia.org/wiki/Algoritmo_de_compresi%C3%B3n_sin_p%C3%A9rdida

[1]

REDES COMPUTACIONALES Y TELEMTICA QUINTO AO

También podría gustarte