Przenośna mapa pikseli (.ppm)

Netpbm Standardní

Portable Pixmap Format (PPM) je plnobarevný RGB standard rodiny grafických formátů Netpbm, který poskytuje nejjednodušší možnou nekomprimovanou reprezentaci Truecolor digitálních obrázků.

Zkontrolovat a metadata

Operační systémy a analyzátory souborů identifikují soubory PPM kontrolou počáteční binární sekvence bajtů:

Vyberte nebo přetáhněte soubory sem

100% soukromá konverze v prohlížeči - soubory nikdy neopustí vaše zařízení

nebo vložte Ctrl+V
Záruka ochrany soukromí s nulovým přenosem po síti: 0 bajtů odesláno na externí servery. Veškeré zpracování probíhalo lokálně v sandboxu vašeho prohlížeče.

Podpis hlavičky na úrovni bajtů (Magic Bytes)

Operační systémy a analyzátory souborů identifikují soubory PPM kontrolou počáteční binární sekvence bajtů:

HEXADECIMÁLNÍ PODPIS (OFFSET 0):

50 33 / 50 36

ASCII REPREZENTACE: P3 / P6

Standardizace: Netpbm Library Standard

Technické specifikace

Architektura kontejneruASCII (P3) or binary (P6) Netpbm format with width, height, maximum color value, and RGB triplet stream
KompreseUncompressed raw binary bytes or human-readable ASCII text triplets
Endiantita bajtůBig-Endian (for 48-bit 16-bit/channel samples in P6 mode)
Barevné prostoryLinear RGB or standard sRGB
Kanály a struktura3 channels RGB (24-bit or 48-bit Truecolor)
Max. rozměryPractically unlimited (supports arbitrary 64-bit coordinate space)
PrůhlednostNone (standard PPM is strictly opaque RGB)
Streamování a progresivní načítáníSequential row-by-row streaming playback

Technická srovnávací matice: PPM vs konkurence

Technický atributPPM (Aktuální)BMPPNGTIFF
Barevná hloubka24bitový / 48bitový RGB Truecolor1bitový až 32bitový RGBA24bitový / 48bitový RGBA8bitový až 64bitový RGBA
Příbuzný v NetpbmPPM (Portable Pixmap)Formát mimo NetpbmFormát W3C mimo NetpbmFormát Adobe mimo Netpbm
Magické bajtyP3 (ASCII) / P6 (Binární)BM (0x42 0x4D)‰PNG....II*\0 nebo MM\0*
KompreseNekomprimovánoNekomprimováno / RLEBezztrátová komprese Deflate (~o 70 % menší)LZW / Deflate / Zip

Běžné režimy poškození a příručka pro obnovení v hex

Obrázek se vykresluje s diagonálním zkosením barevných kanálů.

Hlavní příčina: Oříznutý bajt v proudu RGB trojic, který způsobuje rozladění následujících červených, zelených a modrých bajtů.

Obnovení: Znovu zarovnejte posuny RGB trojic nebo proveďte konverzi pomocí nástroje File2File Netpbm Converter.

Bezpečnostní analýza a vektory útoků na parser

Dekodéry PPM se musí chránit před přetečením celého čísla při výpočtu velikostí vyrovnávací paměti pro 3bajtové RGB trojice.

Známé vektory útoků

  • Přetečení celého čísla během alokace vyrovnávací paměti šířka * výška * 3.
  • Čtení za hranicemi vyrovnávací paměti při čtení chybně formátovaných tokenů ASCII v režimu P3.
  • Odepření služby (DoS) prostřednictvím nadměrných deklarací alokace paměti.

Doporučené bezpečnostní postupy:

Historický vývoj a milníky

2000Do specifikace Netpbm P6 byla přidána 48bitová barevná hloubka (16 bitů na kanál).
1993Stává se univerzální lingus francou pro unikátní grafické konverzní pipelines v sadě nástrojů Netpbm.
1989Jef Poskanzer dokončuje triumvirát Netpbm (PBM, PGM, PPM) s plnobarevným formátem PPM.

Klíčové výhody a přednosti

  • Naprostá architektonická jednoduchost: pro čtení, zápis nebo manipulaci nevyžaduje žádné kompresní knihovny.
  • Režim ASCII (P3) umožňuje programátorům prohlížet, kopírovat a upravovat surové hodnoty barev RGB přímo v textovém editoru.
  • Standardní mezilehlý formát používaný v univerzitních kurzech počítačové grafiky a projektech raytracerů.

Technická omezení a nevýhody

  • Obrovské velikosti souborů kvůli absenci komprese (fotografie v rozlišení 4K zabírá přibližně 25 megabajtů).
  • Neefektivní pro webovou distribuci nebo přenos po síti.
  • Žádná podpora pro alfa průhlednost nebo vložené barevné profily.

Zajímavé technické drobnosti

  • Prakticky každý student informatiky, který píše softwarový raytracer, exportuje své první rendery ve formátu PPM.
  • V ASCII PPM ('P3') je obrázek doslova textovým souborem čísel: '255 0 0' pro červenou, '0 255 0' pro zelenou, '0 0 255' pro modrou.
  • Sada Netpbm byla původně distribuována na páskách 4.3BSD Unix koncem 80. let.

Často kladené technické otázky

Proč kurzy informatiky používají formát PPM?

Protože formát PPM nevyžaduje žádné externí knihovny ani složité kompresní algoritmy, cožstudentům umožňuje osvojit si principy počítačové grafiky pomocí čisté matematiky pixelů.

Jaký je rozdíl mezi formáty PPM typu P3 a P6?

P3 ukládá trojice RGB jako prostá textová čísla ASCII, zatímco P6 ukládá trojice RGB jako surové binární bajty.

Jak mohu převést soubor PPM do formátu JPG nebo PNG?

Soubory PPM můžete převést do formátu PNG nebo JPG přímo ve svém prohlížeči pomocí aplikace File2File.app, aniž by vaše zařízení opustila jakákoliv data.