Portable Bitmap (.pbm)

Netpbm Standard

Portable Bitmap Format (PBM) er det grundlæggende 1-bit sort-hvide grafikformat i Netpbm-pakken, designet til maksimal enkelhed, menneskelig læsbarhed og programmatisk generering.

Undersøgelse og metadata

Operativsystemer og filanalysatorer identificerer PBM-filer ved at inspicere den indledende binære bytesekvens:

Vælg eller træk filer hertil

Privat - filer forlader aldrig din enhed

eller indsæt Ctrl+V
Privatlivsgaranti uden netværksoverførsel: 0 byte overført til eksterne servere. Al behandling foregik lokalt i browserens sandkasse.

Byte-niveau Header-signatur (Magic Bytes)

Operativsystemer og filanalysatorer identificerer PBM-filer ved at inspicere den indledende binære bytesekvens:

HEX-SIGNATUR (OFFSET 0):

50 31 / 50 34

ASCII-REPRÆSENTATION: P1 / P4

Standardisering: Netpbm Library Standard

Tekniske specifikationer

ContainerarkitekturASCII-Netpbm-format (P1) eller binært Netpbm-format (P4) med bredde, højde og 1-bit-pixelarray
KomprimeringUkomprimeret rå binær repræsentation eller ASCII-tegnrepræsentation
Byte-rækkefølgeBig-Endian-bitpakning (i binær P4-tilstand)
FarverumMonokrom (1-bit sort og hvid)
Kanaler og struktur1 kanal i 1-bit monokrom (0 = hvid, 1 = sort)
Maks. dimensionerPraktisk talt ubegrænset (ASCII-streng med numeriske dimensioner)
GennemsigtighedIngen
Streaming og progressivSekventiel streamingafspilning række for række

Teknisk sammenligningsmatrix: PBM sammenlignet med konkurrenterne

Teknisk attributPBM (Aktuel)PGMPPMBMP
Farvedybde1-bits monokrom (kun S/H)8-bit til 16-bit gråtoner24-bit til 48-bit RGB-farve1-bit til 32-bit RGBA
Netpbm-søskendePBM (Portable Bitmap)PGM (Portable Graymap)PPM (Portable Pixmap)Ikke-Netpbm-format
Magiske bytesP1 (ASCII) / P4 (Binær)P2 (ASCII) / P5 (Binær)P3 (ASCII) / P6 (Binær)BM (0x42 0x4D)
Primær anvendelseOCR- og fax-dokumentbehandlingMedicinsk billedbehandling og gråtonerUddannelse i computergrafikWindows-skrivebordsgrafik

Almindelige korruptionstilstande og hex-gendannelsesvejledning

Billedet gengives med skæve vandrette rækker eller manglende pixler.

Grundlæggende årsag: En fejlformet kommentar eller en manglende mellemrumseparator i ASCII-headeren.

Gendannelse: Valider formatering af hovedet og linjeskift ved hjælp af File2File.app Netpbm Converter.

Sikkerhedsanalyse og parser-angrebsvektorer

PBM-parsere, der læser ASCII-dimensionsstrenge, er sårbare over for heltalsoverløb, hvis dimensionerne overskrider platformens grænser.

Kendte angrebsvektorer

  • Heltalsoverløb under allokering af en bitbuffer på bredde * højde.
  • Bufferoverlæsning ved læsning af fejlformaterede ASCII-mellemrumstegn.
  • Nægtelse af tjeneste (DoS) gennem overdrevent store dimensionserklæringer i små filer.

Defensive bedste praksisser: Sæt loft over maksimalt tilladte PBM-dimensioner og valider bit-buffergrænser før afkodning.

Historisk oprindelse og milepæle

1993Netpbm samlede PBM, PGM og PPM som bærbare billedværktøjer, der bruges på Unix og andre systemer.
1991PBM-binærtilstand (magisk byte 'P4') introduceres for at forbedre lagringseffektiviteten.
1988Jef Poskanzer opfinder PBM (magisk byte 'P1') til overførsel af bitmaps over e-mail-netværk.

Vigtige fordele og styrker

  • Den kompakte struktur kan gøre det ligetil at implementere grundlæggende PBM-læsere og -skrivere, men kodelængden afhænger af sprog og krav.
  • ASCII-tilstand (P1) er 100 % læsbar for mennesker og kan oprettes eller redigeres i almindelige teksteditorer som Notesblok.
  • PBM kan bruges i visse arbejdsgange inden for billedbehandling, computervision og OCR, især når et enkelt monokromt bitmap er nyttigt.

Tekniske begrænsninger og ulemper

  • Strengt begrænset til 1-bit monokrom (ingen gråtoner eller farver).
  • ASCII-tilstand er yderst ineffektiv og bruger en byte ASCII-tekst ('0' eller '1') pr. enkelt bit af billeddata.
  • Mangler metadata, farveprofiler eller lagunderstøttelse.

Interessante tekniske fakta

  • I ASCII PBM ('P1') repræsenteres en hvid pixel af '0' og en sort pixel af '1' (hvilket er kontraintuitivt i forhold til moderne RGB-konventioner).
  • Du kan bogstaveligt talt oprette et gyldigt PBM-billede ved at skrive 'P1 2 2 1 0 0 1' ind i en tekstfil og gemme den.
  • Formatet blev opfundet, så dataloger kunne dele scannede dokumenter over Usenet-diskussionsgrupper.

Ofte stillede tekniske spørgsmål

Hvad er forskellen mellem PBM, PGM og PPM?

PBM er 1-bit monokrom (kun sort & hvid), PGM er gråtoner (nuancer af grå), og PPM er fuld 24-bit RGB-farve.

Hvad betyder P1 og P4 i PBM-filer?

'P1' angiver, at billedet er gemt i ren ASCII-tekst, mens 'P4' angiver, at billedet er gemt som kompakte binære bytes.

Hvordan kan jeg konvertere en PBM-fil til PNG?

Du kan konvertere PBM-filer til moderne PNG- eller JPG-billeder direkte i din browser ved hjælp af File2File.app uden at uploade data til nogen server.