If you're seeing this message, it means we're having trouble loading external resources on our website.

Si estás detrás de un filtro de páginas web, por favor asegúrate de que los dominios *.kastatic.org y *.kasandbox.org estén desbloqueados.

Contenido principal

Compresión con pérdida

Los algoritmo de compresión con pérdida son técnicas que reducen el tamaño de archivo al descartar la información menos importante.
A nadie le gusta perder información, pero algunos tipos de archivos son tan grandes que no hay suficiente espacio para guardar todos los datos originales; y además no necesitamos todos esos datos en primer lugar. Esto es a menudo el caso con fotos, videos y grabaciones de audio: archivos que intentan capturar la hermosa complejidad del mundo en el que vivimos.
Las computadoras pueden capturar una cantidad increíble de detalle en una foto, pero ¿cuánto de ese detalle pueden realmente percibir los humanos? Resulta que hay muchos detalles que podemos eliminar. Los algoritmos de compresión con pérdida tratan de buscar maneras inteligentes de eliminar detalles sin que los humanos lo noten (demasiado).
Por ejemplo, aquí hay una foto de un gato en un sombrero:
Foto de un gato gris con ojos verdes sentado en un sombrero azul sobre un sofá gris.
Fuente de la imagen: admiller, Flickr
Aquí está esa misma foto, pero comprimida a la mitad del tamaño:
¿Puedes notar la diferencia? Con un vistazo rápido no puedo, e incluso si pudiera con más esfuerzo, todavía vale la pena ahorrar la mitad del espacio de disco.
Exploremos algunas de las maneras inteligentes con que los algoritmos de compresión con pérdida eliminan detalles para reducir el tamaño del archivo.

Imágenes: mantener el brillo, promediar el color

El ojo humano percibe mejor diferencias en brillo que en color. Un algoritmo de compresión puede aprovechar ese hecho manteniendo el brillo al tiempo que reduce la cantidad de información de color; un proceso conocido como submuestreo cromático.
Intentemos con la foto del gato en el sombrero. El primer paso es separar la información de brillo de la cromática (color).
Esta es la versión de la foto con brillo solamente:
Está es la versión solo cromática:
Esta foto es interesante porque el gato y la silla no tienen mucho color; el azul del sombrero es lo que destaca en la versión cromática (¿quizá todos deberíamos tener gatos blancos y negros, para ahorrar espacio en disco? hmm...)
Hagamos un acercarniento a un bloque cromático de 8x2 del ojo izquierdo:
Cada uno de esos píxeles tiene valores cromáticos ligeramente diferentes, así que hay 16 valores en total. Podemos promediar cada bloque de 2x2 y ajustar su color al promedio, y así solo hay 4 valores:
El resultado se ve muy similar al original, pero tiene una cuarta parte de la información original de color. Si aplicamos esto a toda la imagen, podemos ahorrar mucho espacio sin afectar demasiado su percepción.
El submuestreo cromático es un proceso utilizado en muchos algoritmos de compresión para imágenes, incluyendo los populares formatos de archivo JPEG y MPEG.
Esos algoritmos también usan un proceso llamado transformación discreta de coseno (DCT) para simplificar los detalles en la capa de brillo. Si quieres saber más, aquí hay un bonito recorrido.

Audio: descartar los sonidos inaudibles

El oído humano tiene limitaciones a lo que puede oír. Los algoritmos de compresión de audio pueden analizar un archivo de audio y descartar los sonidos que están fuera de nuestra capacidad auditiva, un proceso conocido como codificación de audio perceptual.
Una limitación interesante de nuestros oídos se conoce como máscara temporal. Es cuando un sonido repentino puede enmascarar (ocultar) otros sonidos durante un período después de que ocurre, ¡e incluso un poco antes!
Por ejemplo, imagina una canción con un fuerte redoble de tambor. La máscara de redoble oculta sonidos durante unos 20 milisegundos antes de que ocurra, y hasta 200 milisegundos después. Esta imagen ilustra el efecto de máscara:
Una gráfica con tiempo en milisegundos en el eje x, y la intensidad en decibeles en el eje y. Un redoble de tambor ocurre de 140-200ms. El efecto de pre-máscara es una curva pronunciada de 100-140ms que conduce hasta el redoble. El efecto post-máscara es una curva menos pronunciada de 200-350ms.
Las áreas grises sombreadas muestran los periodos de pre y post enmascaramiento.
La computadora ve esos sonidos ocultos en el archivo de audio grabado, pero nuestros oídos no pueden escucharlos, así que los algoritmos de compresión de audio pueden descartar de forma segura esa información o representarla con menos bits.
Los algoritmos de compresión también pueden utilizar otras limitaciones de nuestro proceso auditivo natural, como el límite de alta frecuencia y máscara simultánea. Si quieres aprender más, puedes investigar el fascinante campo de psico-acústica.

Calidad de compresión

Cuando utilizamos algoritmos de compresión sin pérdida, siempre podemos reconstruir 100% de los datos originales. Con algoritmos de compresión con pérdida, perdemos un porcentaje de los datos originales; puede ser 5%, o 10%, o tal vez el 70%. ¿Cuánto perdemos? Podemos decidir eso según en nuestro caso de uso de los datos.
Considera la foto anterior del gato en el sombrero. Si el plan es usar esa foto en una presentación sobre modas de gatos y proyectarla en una pantalla grande, probablemente queremos mantener el máximo detalle posible. En ese caso, podemos usar un algoritmo de compresión sin pérdida (como PNG), o podemos usar un algoritmo de compresión con pérdida (como JPEG) y especificar calidad alta (como 100%). Las aplicaciones de edición de fotos a menudo dan esas opciones.
Captura de pantalla de la configuración de Archivo en el menú Exportar de Adobe Photoshop. Para la opción "Formato" se selecciona "JPG". Para la opción "Calidad", el deslizador está configurado a "100%".
A 100% de calidad, la foto de 400x300 ocupa 169 KB:
Foto de un gato gris con ojos verdes sentado en un sombrero azul sobre un sofá gris.
¿Qué pasa si queremos usar esa foto en un sitio web, y nuestros usuarios objetivo están en otro país, con conexiones de ancho de banda bajo? Cuanto más pequeño sea el archivo, más rápido se descarga. Queremos que vean la foto, pero para este caso de uso la calidad alta no es tan importante como la velocidad de descarga. Definitivamente queremos usar un algoritmo de compresión con pérdida, y podemos especificar una calidad menor al exportar. El algoritmo puede modificar sus parámetros internos para simplificar aún más detalles.
Captura de pantalla de la configuración de Archivo en el menú Exportar de Adobe Photoshop. Para la opción "Formato" se selecciona "JPG". Para la opción "Calidad", el deslizador está configurado a "60%".
A 60% de calidad, la foto ocupa 48 KB:
Foto de un gato gris con ojos verdes sentado en un sombrero azul sobre un sofá gris.
Esto todavía se ve bastante bien, definitivamente utilizable para un sitio web con ancho de banda bajo. ¿Qué tan abajo podemos llegar? Aquí está la foto a un 1% de calidad:
Foto de un gato gris con ojos verdes sentado en un sombrero azul sobre un sofá gris.
Definitivamente no es perfecta, el verde de los ojos parece estar fundido con el pelaje, y hay artefactos donde el sombrero toca la silla. Pero también es de solo 12 KB, menos de una décima parte del tamaño original. Es impresionante la información que podemos perder, y todavía comunicar tanto detalle.
También podemos especificar la calidad en algoritmos de compresión con pérdida que transforman archivos de audio y video. Probablemente hayas visto en el web videos de baja calidad, muy comprimidos; los videos son los que más se comprimen, pues de por sí son muy grandes.
Siempre que utilizamos compresión con pérdida hay un balance entre calidad y tamaño, y nos corresponde encontrar la configuración que mejor funcione para nuestro caso de uso.

🙋🏽🙋🏻‍♀️🙋🏿‍♂️¿Tienes alguna pregunta sobre este tópico? Nos encantaría contestarte; ¡simplemente pregunta en el area de preguntas abajo!

¿Quieres unirte a la conversación?

  • Avatar starky ultimate style para el usuario J.C.S.R.
    Nota: Al comprimir datos con perdidas podemos encontrar 2 compresiones, las de imágenes; que utilizan el sub-muestreo cromático que reduce los colores pero mantiene el brillo; y con los audios, en estos casos el ordenador elimina la mascara de los sonidos para ahorrar espacio.
    (3 votos)
    Avatar Default Khan Academy avatar para el usuario
¿Sabes inglés? Haz clic aquí para ver más discusiones en el sitio en inglés de Khan Academy.