Imagen JPEG (.jpg)

ISO/IEC Estándar

JPEG es el estándar de compresión con pérdida más utilizado para fotografías digitales e imágenes web. Aprovecha que el ojo humano es más sensible a la luminancia que a la crominancia.

Convertir de PNG a JPG

Convertidor gratuito de PNG a JPG en el navegador. Convierte archivos al instante en tu dispositivo.

Comprimir JPG en línea

Privado - los archivos nunca salen de tu dispositivo

Inspección y metadatos

Los sistemas operativos y analizadores de archivos identifican los archivos de JPG inspeccionando la secuencia de bytes binarios inicial:

Selecciona o arrastra archivos aquí

Privado - los archivos nunca salen de tu dispositivo

o pega Ctrl+V
Garantía de privacidad sin transmisión de red: 0 bytes subidos a servidores externos. Todo el procesamiento se realizó de forma local en el entorno seguro de tu navegador.

Firma de cabecera a nivel de bytes (bytes mágicos)

Los sistemas operativos y analizadores de archivos identifican los archivos de JPG inspeccionando la secuencia de bytes binarios inicial:

FIRMA HEXADECIMAL (DESPLAZAMIENTO 0):

FF D8 FF

REPRESENTACIÓN ASCII: ÿØÿ

Estandarización: ISO/IEC 10918-1 / ITU-T T.81

Especificaciones técnicas

Arquitectura del contenedorFlujo binario delimitado por marcadores (prefijo 0xFF), dentro de una cabecera JFIF o EXIF
CompresiónTransformada discreta del coseno (DCT) con pérdida, seguida de codificación de entropía por longitud de secuencia y Huffman
Orden de bytes (Endianness)Big-endian para las longitudes de marcadores y las tablas de cuantización; Exif puede usar little-endian (II) o big-endian (MM)
Espacios de colorsRGB, Adobe RGB, CMYK, Y'CbCr, Grayscale
Canales y estructura8 bits por canal (color verdadero de 24 bits) o escala de grises de 8 bits
Dimensiones máximas65,535 x 65,535 píxeles (enteros sin signo de 2 bytes)
TransparenciaNinguna: solo admite imágenes opacas, sin canal alfa.
Streaming y progresivoLa codificación JPEG progresiva almacena varias pasadas espectrales, de menor a mayor resolución.

Matriz de comparación técnica: JPG frente a la competencia

Atributo técnicoJPG (Actual)WebPAVIFPNG
Paradigma de compresiónDCT con pérdida y codificación HuffmanCon pérdida (VP8) y sin pérdidaCon pérdida (AV1) y sin pérdidaDeflate sin pérdida
Transparencia alfaNo admite canal alfa (siempre opaco)Transparencia alfa de 8 bitsAlfa de 8 bits / 10 bits / 12 bitsAlfa completo de 8 o 16 bits
Decodificación por hardwareLa decodificación JPEG por hardware dedicado varía según el chip y el dispositivo.Descodificación por hardware generalizada en los SoC modernosLa descodificación por hardware se extiende rápidamente a las GPU modernasDecodificación rápida basada en CPU
Eficiencia de compresiónBuena base para fotografíasPuede ocupar menos que JPEG; el resultado varía según la imagen y el codificador.Puede ocupar menos que JPEG; el resultado varía según la imagen y el codificador.Ineficiente para contenido fotográfico
Profundidad de bits de colorEstándar de 8 bits por canal (color verdadero de 24 bits)8 bits por canalGama cromática amplia HDR de 10 y 12 bits8 o 16 bits por canal

Modos de corrupción comunes y guía de recuperación hexadecimal

El visor de imágenes muestra «Fin prematuro del archivo JPEG» o la parte inferior de la foto aparece en gris uniforme o con bandas de colores.

Causa raíz: La descarga o la escritura en el almacenamiento quedó incompleta; faltan el marcador de cierre 0xFFD9 (EOI) y los datos de la imagen.

Recuperación: Añade el marcador 0xFFD9 al final del flujo truncado para que los descodificadores puedan mostrar la parte intacta de la fotografía.

Los colores de la imagen aparecen muy alterados, invertidos o psicodélicos.

Causa raíz: La cabecera del espacio de color CMYK está invertida o el perfil ICC incrustado no es válido.

Recuperación: Convierte el espacio de color de CMYK a sRGB con ImageMagick («magick broken.jpg -colorspace sRGB fixed.jpg»).

El archivo no se abre y aparece el mensaje «Se ha encontrado un marcador no válido».

Causa raíz: Hay bits dañados en las cabeceras de la tabla de cuantización (DQT 0xFFDB) o de la tabla Huffman (DHT 0xFFC4).

Recuperación: Sustituya los marcadores de cabecera dañados por tablas Huffman y de cuantización JFIF estándar de línea base extraídas de un JPEG intacto.

Análisis de seguridad y vectores de ataque al analizador

La seguridad de JPEG implica principalmente fugas de privacidad de metadatos (EXIF) y desbordamientos de búfer en decodificadores C heredados (libjpeg).

Vectores de ataque conocidos

  • Divulgación de metadatos sensibles: cabeceras EXIF sin eliminar que contienen coordenadas GPS, números de serie de la cámara y vistas previas en miniatura.
  • Lecturas fuera de los límites del búfer y desbordamientos de enteros al analizar archivos con libjpeg antiguo; pueden corromper los marcadores de reinicio (RST) o las secuencias de escaneo progresivo.
  • Archivos políglotas que combinan cabeceras JPEG con archivos ejecutables ZIP o RAR.

Mejores prácticas defensivas: Al publicar fotos de usuarios, elimina siempre los metadatos EXIF y de geolocalización GPS para proteger su privacidad. Usa descodificadores modernos con gestión segura de memoria (como image-rs en Rust) o descodificadores WebAssembly aislados.

Orígenes históricos e hitos

1998Los estándares de contenedor JFIF y EXIF consolidan el dominio de las cámaras digitales.
1992La especificación JPEG se ratifica como norma ISO/IEC 10918-1.
1986Se funda el Grupo Conjunto de Expertos en Fotografía (JPEG) bajo los auspicios de ISO y CCITT.

Ventajas principales

  • La decodificación JPEG está muy extendida en programas y dispositivos de imagen, aunque la compatibilidad varía según el dispositivo y la aplicación.
  • Excelente relación de compresión (de 10:1 a 20:1) para tonos continuos fotográficos.
  • Archivos ligeros y posibilidad de mostrar la imagen de forma progresiva.

Limitaciones técnicas

  • La compresión con pérdida genera artefactos (halos y bloques) alrededor de los bordes nítidos.
  • No admite canales de transparencia.
  • La calidad se degrada cada vez que el archivo se descomprime, edita y vuelve a guardar.

Curiosidades técnicas interesantes

  • La clásica imagen de prueba «Lenna», usada para desarrollar la compresión JPEG, se digitalizó de un número de noviembre de 1972 de la revista Playboy.
  • El submuestreo JPEG 4:2:0 reduce a la mitad la resolución de crominancia tanto horizontal como verticalmente, con una pérdida perceptible casi nula.
  • Cada JPEG estándar comienza con el marcador 0xFFD8 (Inicio de imagen) y termina con 0xFFD9 (Fin de imagen).

Preguntas técnicas frecuentes

¿Por qué guardar un archivo JPEG varias veces reduce la calidad de la imagen?

JPEG es un formato de compresión con pérdida irreversible. Cada vez que se descomprime y se vuelve a guardar una imagen JPEG, la cuantización DCT descarta detalles espaciales de alta frecuencia y vuelve a aproximar bloques de 8 x 8 píxeles. Esto acumula artefactos de pérdida generacional.

¿Qué es el JPEG progresivo y por qué es útil?

Un JPEG de línea base se descodifica línea a línea, de arriba abajo. El JPEG progresivo codifica los datos de la imagen en varias pasadas espectrales, de modo que los navegadores muestran enseguida una versión borrosa y de baja resolución de toda la imagen, que va ganando nitidez a medida que se descargan los datos.

¿Qué es el submuestreo de croma (4:2:0 vs 4:4:4)?

La retina humana tiene más bastones (sensibles a la luminancia o el brillo) que conos (sensibles al color). JPEG aprovecha esta diferencia: conserva toda la resolución de brillo (Y) y reduce a la mitad, en horizontal y vertical, la resolución del color (Cb, Cr; 4:2:0). Así elimina el 50 % de los datos originales antes de comprimirlos, con una pérdida imperceptible.

¿Puede una imagen JPEG tener un fondo transparente?

No. La especificación estándar de JPEG no contempla un canal alfa. Si necesitas transparencia, convierte la imagen a WebP, AVIF o PNG.