Compresión de datos: ¿qué es?, tipos de compresión, formatos…

Seguro que sabes que en la informática y en el mundo digital la información ocupa espacio, en forma de bits, bytes, kilobytes, megabytes… Si la información ocupa espacio, alguien se planteó una vez: ¿sería posible hacer que determinada cantidad de información ocupe menos espacio?.

Eso es la compresión de datos, hacer que éstos ocupen menos espacio. El proceso contrario es la descompresión.

¿Por qué es importante y para que se usa principalmente?.

Basta explicarlo con 2 ejemplos muy sencillos:

  1. Para ahorrar espacio.
    Una imagen digital sin comprimir podría ocupar 20 o 30 veces más que un fichero de imagen comprimida. De esta forma se puede almacenar más datos e información en un soporte, compartirla, etc.
  2. Para aumentar las velocidades de transmisión de información.
    Para transmitir información de un sitio a otro puedes emplear diversos medios, un cable de red, un cable USB, wifi… sea cual sea el medio todos tienen unos límites en la transferencia de información, un caudal máximo. Es como una autopista que puede asumir determinado número de coches por hora sin colapsar. La transferencia de información es igual, los cables o la wifi es como una autopista por la que puede circular como máximo determinada cantidad de información por segundo. Pues bien, si se comprime la información antes de enviarla por ese medio, y se descomprime justo después, se ha conseguiro “aumentar” la velocidad, puesto que la cantidad de información que se consigue enviar de esta forma es mayor, puesto que recuerda, la información comprimida ocupa menos espacio.

¿Cómo funciona la compresión de información?

Hay algoritmos de compresión muy sofisticados, pero para comprenderlo de forma fácil, pongamos algunas técnicas muy sencillas a modo de ejemplo:

  • Acortando secuencias por otras más cortas. Supongamos que tenemos la siguiente secuencia de información: “ERRRRRTOEJAAAAAAA”. Podría acortarse a: “E5RTOE7A”. Hemos reemplazado “RRRRR” por “5R” y “AAAAAAA” por “7A”. La secuencia resultante es mucho más corta, por lo que ocupa menos espacio.
  • Analizar las palabras o cadenas información que más se repitan y sustituirlas por otra más pequeña. Por ejemplo, analizamos el texto del cuento Caperucita Roja y vemos que “Caperucita” se repite mucho, podemos reemplazar cada aparición de “Caperucita” por algo como “|1”. Así, con cada aparición de “Caperucita” en el texto original hemos ahorrado 8 caracteres en el fichero comprimido (10 que ocupa “Caperucita”, menos 2 que ocupa la cadena “|1”).

Estos son ejemplos muy básicos para entender como podemos “ahorrar” a la hora de expresar y almacenar la información, pero hay técnicas mucho más avanzadas que hacen uso de las matemáticas para conseguir ahorros y compresiones mucho mejores. Por ello hay diferentes formatos, ficheros comprimidos. Los más populares son los ficheros ZIP y los RAR, aunque hay muchos otros.

¿Puede perderse información a la hora de comprimirla?

Si, y es que hay dos tipos de compresión: con pérdida o sin pérdida.

En la del primer tipo, como su nombre indica, podemos descomprimir un fichero y obtendremos los datos originales, los mismos que teníamos antes de comprimirlos, no ha habido ningún tipo de pérdida en la información.

Pero hay otro tipo de compresión en la que, para poder ahorrar espacio/tamaño, se renuncia a cierta parte de la información, la menos apreciable. Al haber pérdida, nunca podrá por tanto recuperarse toda la información original. Este tipo de compresión se utiliza principalmente en ficheros multimedia: imágenes, video y audio.

Compresión de ficheros multimedia (imagen, video y audio)

Las dimensiones de una imagen se mide en pixeles (puntos). Hay formatos de ficheros de imágenes que guardan la información de cada pixel, se mantiene toda la información de la imagen y por tanto es un formato de fichero sin compresión. Hablamos por ejemplo de ficheros BMP, o los populares RAW en los que se puede obtener las fotografías en cámaras digitales Reflex (o cámaras más avanzadas). Pero estos ficheros son muy pesados, ocupan muchos MB, por lo que no es práctico subir imágenes en este formato a páginas web, blogs, redes sociales, compartirla por email, etc.

Por ello están los formatos de compresión de imágenes. El más popupar para fotografías e imágenes realistas es el formato JPG, que es un tipo de fichero que tiene compresión con pérdida. Este formato lo que hace es examinar los pixeles de la imagen, cogiendo pixeles adyacentes que tengan un color, brillo y tonalidad similar, agrupándolos es un único pixel. Es decir, si tengo este grupo de pixeles que son muy similares, no voy a guardar la información de todos ellos, voy a coger uno cualquiera y guardar la información de uno, así se ahorra información.

Es por esta forma de comprimir o ahorrar información por la que hay pérdida de datos, nunca podrá saberse o reestablecerse la información original de cada uno de los pixeles.

Como se intuye, a la hora de comprimir un BMP o RAW en JPG se puede establecer la calidad con la que queramos hacerlo, se le puede pasar un parámetro al algoritmo para que afine más o menos a la hora de determinar o buscar esos pixeles similares. Cuando más comprimamos la imagen peor se verá y ocupará menos espacio, y cuanto menos comprimamos ocupará más espacio, pero obtendremos una calidad mucho mejor, cercana a la original y en muchos casos con diferencias nada apreciables entre la imagen original sin comprimir y el JPG comprimido.

Esto mismo es aplicable a los formatos de video. Existen formatos de video sin compresión, que ocupan una barbaridad, y diversos formatos y algoritmos de compresión de video, unos más efectivos que otros, y que disponen de varios parámetros para ajustar el nivel de compresión y la calidad del video resultante.

Respecto al audio, el formato WAV es un formato de fichero de audio sin compresión. El popular MP3 es un formato de fichero de audio con compresión (con pérdida), que lo que hace es eliminar o desechar aquellas frecuencias de sonido que son poco apreciables por el oido humano. Según la calidad con la que comprimamos, el MP3 resultante puede ser muy fiel al fichero de audio original, o ir eliminando frecuencias y sonidos cada vez más perceptibles para obtener un fichero de mucho menor tamaño.

Concluyendo…

La compresión de información es un tema muy estudiado desde hace décadas. Es un área que da para mucho y que es en realidad mucho más complicado de lo expuesto aquí. Hoy en día es imprescindible, y se usa a todos los niveles, a menudo de forma transperente para nosotros, por ejemplo al navegar por internet.

Seguro que has tomado fotos en JPG, escuchado música en MP3, visto video en WMV o MP4, te han hecho llegar documentos en un ZIP… estás usando la compresión de datos contínuamente también de forma activa.

En artículos posteriores seguramente trataré algo más sobre como comprimir ficheros, tipos de formato, como optimizar imágenes… Pero para entender los conceptos básicos de este tema creo que es suficiente por ahora, hemos visto que es la compresión, por qué es indispensable hoy en día, alguna idea de como se hace, los tipos de compresión que hay…

Si te ha quedado alguna duda, puedes plantearla en los comentarios de este artículo, o a través del formulario de contacto de la página.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *