Mapa de bits portátil (.pbm)
Netpbm EstándarPortable Bitmap Format (PBM) es el formato de gráficos en blanco y negro de 1 bit de la suite Netpbm. Se diseñó para facilitar al máximo la lectura y la generación mediante programas.
Inspección y metadatos
Los sistemas operativos y analizadores de archivos identifican los archivos de PBM inspeccionando la secuencia de bytes binarios inicial:
Firma de cabecera a nivel de bytes (bytes mágicos)
Los sistemas operativos y analizadores de archivos identifican los archivos de PBM inspeccionando la secuencia de bytes binarios inicial:
FIRMA HEXADECIMAL (DESPLAZAMIENTO 0):
50 31 / 50 34REPRESENTACIÓN ASCII: P1 / P4
Estandarización: Netpbm Library Standard
Especificaciones técnicas
| Arquitectura del contenedor | Formato Netpbm ASCII (P1) o binario (P4) con el ancho, el alto y una matriz de píxeles de 1 bit |
| Compresión | Representación binaria sin comprimir o en caracteres ASCII |
| Orden de bytes (Endianness) | Empaquetado de bits big-endian (en modo binario P4) |
| Espacios de color | Monocromo (blanco y negro de 1 bit) |
| Canales y estructura | Un canal monocromo de 1 bit (0 = blanco, 1 = negro) |
| Dimensiones máximas | Prácticamente ilimitadas (cadena de dimensiones numérica en ASCII) |
| Transparencia | Ninguna |
| Streaming y progresivo | Reproducción secuencial en streaming, fila por fila |
Matriz de comparación técnica: PBM frente a la competencia
| Atributo técnico | PBM (Actual) | PGM | PPM | BMP |
|---|---|---|---|---|
| Profundidad de color | Monocromo de 1 bit (solo blanco y negro) | Escala de grises de 8 a 16 bits | Color RGB de 24 a 48 bits | RGBA de 1 a 32 bits |
| Formato relacionado de Netpbm | PBM (mapa de bits portátil) | PGM (mapa de grises portátil) | PPM (mapa de píxeles portátil) | Formato ajeno a Netpbm |
| Bytes identificadores | P1 (ASCII) / P4 (Binario) | P2 (ASCII)/P5 (binario) | P3 (ASCII)/P6 (binario) | BM (0x42 0x4D) |
| Uso principal | Procesamiento de fax y documentos con OCR | Imagen médica y escala de grises | Enseñanza de gráficos por ordenador | Gráficos de escritorio de Windows |
Modos de corrupción comunes y guía de recuperación hexadecimal
La imagen se renderiza con filas horizontales sesgadas o píxeles faltantes.
Causa raíz: Hay comentarios («#») sin escapar o faltan espacios en blanco separadores en la cabecera ASCII.
Recuperación: Comprueba el formato de la cabecera y los saltos de línea con el conversor Netpbm de File2File.app.
Análisis de seguridad y vectores de ataque al analizador
Los analizadores PBM que leen dimensiones expresadas como texto ASCII pueden sufrir desbordamientos de enteros si estas superan los límites de la plataforma.
Vectores de ataque conocidos
- Desbordamiento de enteros al asignar un búfer de bits para ancho x alto.
- Lectura fuera de los límites del búfer al procesar flujos mal formados con espacios en blanco ASCII.
- Denegación de servicio mediante dimensiones desmesuradas declaradas en archivos diminutos.
Mejores prácticas defensivas: Limita las dimensiones máximas permitidas para PBM y Comprueba los límites del búfer de bits antes de descodificar.
Orígenes históricos e hitos
Ventajas principales
- Su estructura compacta puede facilitar la implementación de lectores y escritores básicos de PBM, aunque la cantidad de código depende del lenguaje y de los requisitos.
- El modo ASCII (P1) es completamente legible y se puede crear o editar en cualquier editor de texto, como el Bloc de notas.
- PBM puede usarse en algunos flujos de procesamiento de imágenes, visión artificial y OCR, sobre todo cuando resulta útil un mapa de bits monocromo sencillo.
Limitaciones técnicas
- Está limitado al monocromo de 1 bit; no admite tonos de gris ni color.
- El modo ASCII es muy ineficiente: utiliza un byte de texto ASCII («0» o «1») para representar cada bit de la imagen.
- No admite metadatos, perfiles de color ni capas.
Curiosidades técnicas interesantes
- En PBM ASCII (P1), «0» representa un píxel blanco y «1» uno negro, al contrario de lo que sugieren las convenciones RGB modernas.
- Se puedes crear una imagen PBM válida escribiendo «P1 2 2 1 0 0 1» en un archivo de texto y guardándolo.
- El formato se inventó para que los informáticos pudieran compartir documentos escaneados en los grupos de noticias de Usenet.
Preguntas técnicas frecuentes
¿Cuál es la diferencia entre PBM, PGM y PPM?
PBM es monocromo de 1 bit (solo blanco y negro), PGM representa escala de grises y PPM admite color RGB completo de 24 bits.
¿Qué significan P1 y P4 en los archivos PBM?
«P1» indica que la imagen se guarda como texto ASCII sin comprimir; «P4» indica que se guarda como bytes binarios compactos.
¿Cómo puedo convertir un archivo PBM a PNG?
Puedes convertir archivos PBM a imágenes PNG o JPG modernas con File2File.app directamente en el navegador, sin subir datos a ningún servidor.