Bitmap portable (.pbm)
Norme StandardLe format bitmap portable (PBM) est le format graphique fondamental en noir et blanc de 1 bit de la suite Netpbm, conçu pour une simplicité maximale, une lisibilité humaine et une génération programmatique.
Inspecter et métadonnées
Les systèmes d'exploitation et les analyseurs de fichiers identifient les fichiers PBM en inspectant la séquence d'octets binaires de tête :
Signature d'en-tête au niveau des octets (Magic Bytes)
Les systèmes d'exploitation et les analyseurs de fichiers identifient les fichiers PBM en inspectant la séquence d'octets binaires de tête :
SIGNATURE HEXADÉCIMALE (DÉCALAGE 0) :
50 31 / 50 34REPRÉSENTATION ASCII : P1 / P4
Normalisation : Norme de la bibliothèque Netpbm
Spécifications techniques
| Architecture de conteneur | Format Netpbm ASCII (P1) ou binaire (P4) spécifiant la largeur, la hauteur et un tableau de pixels de 1 bit |
| Compression | Binaire brut non compressé ou représentation de caractères ASCII |
| Boutisme des octets | Empaquetage de bits gros-boutiste (en mode binaire P4) |
| Espaces colorimétriques | Monochrome (noir et blanc 1 bit) |
| Canaux et structure | 1 canal monochrome 1 bit (0 = Blanc, 1 = Noir) |
| Dimensions maximales | Pratiquement illimitées (chaîne de dimensions numériques ASCII) |
| Transparence | Aucune |
| Streaming et progressif | Lecture en continu séquentielle ligne par ligne |
Matrice de comparaison technique : PBM vs Concurrents
| Attribut technique | PBM (Actuel) | PGM | PPM | BMP |
|---|---|---|---|---|
| Profondeur de couleur | Monochrome 1 bit (N&B uniquement) | Niveaux de gris de 8 bits à 16 bits | Couleur RVB 24 bits à 48 bits | RGBA de 1 bit à 32 bits |
| Format apparenté Netpbm | PBM (Bitmap portable) | PGM (Graymap portable) | PPM (Pixmap portable) | Format non Netpbm |
| Octets magiques | P1 (ASCII) / P4 (Binaire) | P2 (ASCII) / P5 (Binaire) | P3 (ASCII) / P6 (Binaire) | BM (0x42 0x4D) |
| Utilisation principale | ROC (OCR) et traitement de documents de fax | Imagerie médicale et niveaux de gris | Enseignement de l'infographie | Graphiques de bureau Windows |
Modes de corruption courants et guide de récupération hexadécimale
L'image s'affiche avec des lignes horizontales inclinées ou des pixels manquants.
Cause racine: Commentaires non échappés ('#') ou séparateurs d'espaces manquants dans l'en-tête ASCII.
Récupération: Validez le formatage de l'en-tête et les sauts de ligne à l'aide du convertisseur Netpbm File2File.
Analyse de sécurité et vecteurs d'attaque de l'analyseur
Les analyseurs PBM lisant des chaînes de dimensions ASCII sont sensibles aux dépassements d'entiers si les dimensions dépassent les limites de la plateforme.
Vecteurs d'attaque connus
- Dépassement d'entier lors de l'allocation du tampon de bits largeur * hauteur.
- Dépassement de lecture de tampon lors de la lecture de flux d'espaces blancs ASCII malformés.
- Déni de service via des déclarations de dimensions excessivement grandes dans de tout petits fichiers.
Bonnes pratiques de défense: Plafonnez les dimensions PBM maximales autorisées et validez les limites du tampon de bits avant le décodage.
Origines historiques et jalons
Principaux avantages
- Simplicité algorithmique ultime : peut être lu ou écrit en seulement 10 lignes de code dans n'importe quel langage de programmation.
- Le mode ASCII (P1) est 100 % lisible par l'homme et peut être créé ou modifié dans des éditeurs de texte standard comme le Bloc-notes.
- Référence d'interchange universelle dans la vision par ordinateur académique et les pipelines de ROC (OCR) de documents.
Limites techniques
- Strictement limité au monochrome 1 bit (pas de nuances de gris ni de couleur).
- Le mode ASCII est très inefficace, utilisant un octet de texte ASCII ('0' ou '1') par bit unique de données d'image.
- Absence de métadonnées, de profils de couleur ou de prise en charge des calques.
Anecdotes techniques
- Dans le PBM ASCII ('P1'), un pixel blanc est représenté par '0' et un pixel noir par '1' (ce qui va à l'encontre des conventions RVB modernes).
- Vous pouvez littéralement créer une image PBM valide en tapant 'P1 2 2 1 0 0 1' dans un fichier texte et en l'enregistrant.
- Le format a été inventé pour permettre aux informaticiens de partager des documents numérisés sur les groupes de discussion Usenet.
Foire aux questions techniques
Quelle est la différence entre PBM, PGM et PPM ?
Le PBM est monochrome 1 bit (noir et blanc uniquement), le PGM est en niveaux de gris (nuances de gris) et le PPM est en couleur RVB 24 bits complète.
Que signifient P1 et P4 dans les fichiers PBM ?
'P1' indique que l'image est stockée en texte ASCII brut, tandis que 'P4' indique que l'image est stockée sous forme d'octets binaires compacts.
Comment puis-je convertir un fichier PBM en PNG ?
Vous pouvez convertir des fichiers PBM en images PNG ou JPG modernes directement dans votre navigateur à l'aide de File2File.app sans télécharger de données sur aucun serveur.