128 656 853 plików
4,7
od 2013

Informacje o plikach PBM

prosty format dla zdjęć czarno-białych

Sören RamspeckOstatnia aktualizacja: 6 kwietnia 2026 przez Sören Ramspeck z doświadczeniem ponad 128 656 665 przekonwertowanych plików od 2013 roku.

PBM to prawdopodobnie najprostszy format obrazu na świecie. Składa się wyłącznie z cyfr 0 i 1, a każda z nich odpowiada jednemu pikselowi. Wiersz i kolumna w tekście określają pozycję na obrazie. Dzięki temu obrazy można tworzyć nawet za pomocą edytora tekstu. To prawie tak, jakby malować ołówkiem na papierze w kratkę. PBM nie obsługuje kompresji, kanałów alfa ani kolorów. Nie obsługuje nawet skali szarości. Może po prostu narysować piksel (1) albo nie (0).

TLDR:

Pliki PBM są częścią większej rodziny formatów. Ten format i jego „rodzeństwo” są nadal w użyciu, ale nie nadają się zbyt dobrze do udostępniania i długoterminowej archiwizacji. Są duże, obsługuje je niewiele programów, ale są bardzo elastyczne i wydajne. Kto znajdzie plik PBM, prawdopodobnie ma w rękach produkt pośredni lub obraz stworzony do celów dydaktycznych. Format PBM bardzo dobrze nadaje się bowiem do prezentacji, jest praktycznie oczywisty.

Historia plików PBM

PBM został wymyślony w latach 80. przez Jefa Poskanzera, programistę z Berkeley, który chciał rozwiązać prosty problem: wysyłanie obrazów pocztą elektroniczną. W latach 80. poczta elektroniczna nie była jeszcze tak rozwinięta jak dzisiaj. Niezawodnie można było wysyłać tylko znaki ASCII, a pliki binarne, takie jak obrazy, często ulegały uszkodzeniu podczas przesyłania. Poskanzer zaprojektował więc PBM, format obrazu, który rozwiązał właśnie ten problem.

Budowa techniczna

Obraz PBM w wersji zwykłej (P1) składa się dokładnie z trzech części: liczby magicznej, wymiarów i samych danych pikseli. Opcjonalnie można używać komentarzy, np. dotyczących treści.

Składnik Przykład Znaczenie
Liczba magiczna P1 Plain PBM (wersja ASCII)
Komentarz # mein bild Opcjonalnie, z # wstępem
Szerokość Wysokość 24 7 Wymiary w pikselach
Dane rastrowe 0 1 1 0 ... 1 = czarny, 0 = biały

Poniższy przykład przedstawia kompletny obraz z dokumentacji:

P1
# feep.pbm
24 7
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 1 1 1 1 0 0 1 1 1 1 0 0 1 1 1 1 0 0 1 1 1 1 0
0 1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 1 0
0 1 1 1 0 0 0 1 1 1 0 0 0 1 1 1 0 0 0 1 1 1 1 0
0 1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0
0 1 0 0 0 0 0 1 1 1 1 0 0 1 1 1 1 0 0 1 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

(cyfry 0 są nieco ciemniejsze wyłącznie w celu lepszej wizualizacji)

Pomiędzy zerami i jedynkami wyraźnie widać tekst FEEP. PBM odpowiada zatem binarnemu kodowi ASCII ;).

Plain vs. Raw: P1 i P4

Poskanzer wprowadził później wersję binarną i uczynił ją standardowym formatem wyjściowym narzędzi Netpbm. Wersja zwykła (P1) pojawiła się jako pierwsza, ale została wycofana ze względu na znacznie większe zapotrzebowanie na miejsce („lavishly wasteful” – „niezwykle marnotrawna”).

Właściwości Plain PBM (P1) Raw PBM (P4)
Dane pikselowe Znaki ASCII 0 i 1 bity, 8 na bajt
Czytelne dla człowieka Tak, w całości Tylko nagłówek
Miejsce na dysku na piksel ~2 bajty (znak + spacja) 1/8 bajta (1 bit)
Maks. długość wiersza Zalecane 70 znaków Bez ograniczeń
Obrazy na plik Dokładnie 1 Możliwe jest więcej (od lipca 2000 r.)

Obecnie cała rodzina PBM, a w szczególności PPM, jest często wykorzystywana jako format pośredni. W najprostszym i najkrótszym ze wszystkich przypadków zastosowań plik ten istnieje jedynie w potoku między dwoma programami, a więc tylko na czas samego wykonywania. To prowadzi nas do mocnych stron tego formatu:

Zalety plików PBM

  • Brak zależności: brak dekodera, brak biblioteki. Kilka linii kodu w języku C, Python lub shell wystarczy do odczytu i zapisu.
  • Filozofia Uniksa: narzędzia PBM to filtry. Łączy się je ze sobą za pomocą potoku: cat bild.pbm | pbmtopgm | ppmtojpeg > out.JPG. Ponad 330 programów w pakiecie Netpbm działa w ten sposób.
  • Dydaktyka: Kto chce zrozumieć przetwarzanie obrazu (nie edycję obrazu), powinien idealnie zacząć od PBM.
  • Solidność: brak uszkodzonego nagłówka, brak uszkodzonego fragmentu. Zawartość pliku jest tak niewielka, że prawie nic nie może pójść nie tak. A jeśli jednak coś się zepsuje, obraz pozostaje czytelny.

Rodzina PBM

PBM nie jest jedynym formatem. Pod koniec 1988 roku Poskanzer rozszerzył rodzinę o PGM (Portable Gray Map, skala szarości, liczba magiczna P2/P5) oraz PPM (Portable Pixel Map, kolory RGB, P3/P6). Razem tworzą one PNM: Portable Any Map. Później pojawił się jeszcze PAM (P7) jako uniwersalne rozszerzenie.

PBM jest fundamentem, a także „najbardziej radykalnym” przedstawicielem rodziny i oferuje tylko dwie możliwości: światło włączone lub wyłączone – piksel obecny lub nieobecny. Bez kolorów, bez przezroczystości, bez odcieni szarości. Tylko czarno-biały obraz, który można odczytać bezpośrednio w kodzie źródłowym.

Pbmplus i Netpbm

Poskanzer zajmował się Pbmplus aż do jego ostatniej publikacji pod koniec 1991 roku. Potem projekt przestał być rozwijany. W 1993 roku powstał Netpbm jako fork społecznościowy, w zasadzie przepakowanie Pbmplus z poprawkami błędów i rozszerzeniami od programistów z całego świata. Od 1999 roku Netpbm jest utrzymywany przez Bryana Hendersona i obecnie znajduje się praktycznie w każdej dystrybucji Linuksa.

PBM jako takie odeszło do lamusa. Serwery pocztowe bez problemu radzą sobie z plikami JPG, PNG, a nawet filmami. Jednak „kolorowa” wersja ppm jest używana na co dzień, w potokach, na systemach Linux. PBM pozostaje w sferze edukacyjnej: można je świetnie wyjaśnić, świetnie zrozumieć i – tak proste jest PBM – narysować na papierze w kratkę.

Źródła

Netpbm Specyfikacja formatu PBM
Netpbm Historia – bardzo warty przeczytania artykuł o historii pbm
Wiki: Jef Poskanzer

0.0/5(0 głosy)

Konwertuj, otwieraj i edytuj pliki PBM

Szczegółowe informacje o plikach PBM

Oprogramowanie do otwierania plików PBM
IrfanView
XnView
GIMP
ImageMagick
Oprogramowanie do edycji plików PBM
GIMP
ImageMagick
Paint.NET
Typ MIME dla PBM
image/x-portable-bitmap

Powiązane formaty plików

Wszystkie konwertery od lub do PBM

Brak komentarzy

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *


Umieść pliki tutaj...