128 191 232 tiedostoa
4,6 Trustpilot
koska 2013

Kaikista PBM tiedostoista

0.0/5(0 ääntä)

PBM on luultavasti maailman yksinkertaisin kuvamuoto. Se koostuu pelkästään numeroista 0 ja 1, ja jokainen numero vastaa yhtä pikseliä. Tekstin rivi ja sarake määrittävät sijainnin kuvassa. Näin kuvia voi luoda jopa tekstieditorilla. Se on melkein sama kuin piirtäisi lyijykynällä ruutupaperille. PBM ei tue pakkausta, alfa-kanavia eikä värejä. Ei edes harmaasävyjä. Se voi vain piirtää pikselin (1) tai jättää sen piirtämättä (0).

TLDR:

PBM-tiedostot ovat osa suurempaa tiedostomuotojen perhettä. Tätä muotoa ja sen sisarformaatteja käytetään edelleen, mutta ne eivät sovellu erityisen hyvin jakamiseen tai pitkäaikaiseen arkistointiin. Ne ovat suuria, ja vain harvat ohjelmistot tukevat niitä, mutta ne ovat erittäin joustavia ja suorituskykyisiä. Jos löydät PBM-tiedoston, kyseessä on todennäköisesti välituote tai opetustarkoituksiin luotu kuva. PBM-muoto sopii nimittäin erittäin hyvin havainnollistamiseen, sillä se on käytännössä itsestään selvä.

PBM-tiedostojen historia

PBM:n keksi 1980-luvulla Jef Poskanzer, berkeleyläinen ohjelmoija, joka halusi ratkaista yksinkertaisen ongelman: kuvien lähettämisen sähköpostitse. 1980-luvulla sähköposti ei ollut vielä niin kehittynyt kuin nykyään. Vain ASCII-merkkejä voitiin lähettää luotettavasti, binääritiedostot, kuten kuvat, menivät usein rikki matkalla. Poskanzer suunnitteli siis PBM:n, kuvamuodon, joka ratkaisi juuri tämän ongelman.

Tekninen rakenne

PBM-kuva koostuu Plain-versiossaan (P1) tarkalleen kolmesta osasta: magic numberista, mitoista ja varsinaisista pikselitiedoista. Valinnaisesti voidaan käyttää kommentteja, esimerkiksi sisällön kuvaamiseen.

Osa Esimerkki Merkitys
Magic Number P1 Plain PBM (ASCII-versio)
Kommentti # mein bild Valinnainen, aloitetaan # aloitetaan
Leveys Korkeus 24 7 Mitat pikseleinä
Rasteritiedot 0 1 1 0 ... 1 = musta, 0 = valkoinen

Seuraava esimerkki näyttää täydellisen kuvan dokumentaatiosta:

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

(0:t on esitetty hieman tummempina vain paremman visualisoinnin vuoksi)

Nollien ja ykkösten välistä erottuu selvästi teksti FEEP. PBM vastaa siis binääristä ASCII-merkistöä ;).

Plain vs. Raw: P1 ja P4

Poskanzer otti myöhemmin käyttöön binäärisen version ja teki siitä Netpbm-työkalujen oletusmuodon. Plain-versio (P1) tuli historiallisesti ensin, mutta se korvattiin, koska se vaati paljon enemmän tilaa ("lavishly wasteful" – "äärimmäisen tuhlaava").

Ominaisuus Plain PBM (P1) Raw PBM (P4)
Pikselitiedot ASCII-merkit 0 ja 1 bittejä, 8 per tavu pakattuna
Ihmisen luettavissa Kyllä, kokonaan Vain otsikko
Tallennustilaa per pikseli ~2 tavua (merkki + välilyönti) 1/8 tavua (1 bitti)
Maks. rivin pituus Suositellaan 70 merkkiä Ei rajoitusta
Kuvia tiedostoa kohti Täsmälleen 1 Useita mahdollisia (heinäkuusta 2000 lähtien)

Nykyään koko PBM-perhettä, erityisesti PPM:ää, käytetään usein välimuodossa. Yksinkertaisimmassa ja lyhimmässä käyttötapauksessa se elää vain kahden ohjelman välisessä putkessa, eli vain itse suoritusajan ajan. Tämä tuo meidät myös formaatin vahvuuksiin:

PBM-tiedostojen vahvuudet

  • Ei riippuvuuksia: ei dekooderia, ei kirjastoa. Muutama rivi C-, Python- tai Shell-koodia riittää lukemiseen ja kirjoittamiseen.
  • Unix-filosofia: PBM-työkalut ovat suodattimia. Ne yhdistetään toisiinsa putkilla: cat bild.pbm | pbmtopgm | ppmtojpeg > out.JPG. Yli 330 ohjelmaa Netpbm-paketissa toimii tällä tavalla.
  • Pedagogiikka: Jos haluaa ymmärtää kuvankäsittelyä (ei kuvankorjausta), on ihanteellista aloittaa PBM:llä.
  • Vankka: Ei rikkoutuneita otsikoita, ei vioittuneita palasia. Sisältö on niin vähäistä, että tuskin mikään voi mennä pieleen. Ja jos jokin bitti menee pieleen, kuva pysyy luettavissa.

PBM-perhe

PBM ei ole ainoa. Vuoden 1988 lopussa Poskanzer laajensi perhettä PGM:llä (Portable Gray Map, harmaasävyt, Magic Number P2/P5) ja PPM:n (Portable Pixel Map, RGB-värit, P3/P6). Yhdessä ne muodostavat PNM:n: Portable Any Map. Myöhemmin tuli vielä PAM (P7) yleisenä laajennuksena.

PBM on perheen perusta ja myös sen "radikaalein" edustaja, ja se tarjoaa vain kaksi vaihtoehtoa: valo päällä tai valo pois – pikseli olemassa tai ei. Ei väriä, ei läpinäkyvyyttä, ei harmaasävyjä. Vain suoraan lähdekoodista luettavissa oleva mustavalkoinen kuva.

Pbmplus ja Netpbm

Poskanzer ylläpiti Pbmplus-ohjelmaa sen viimeiseen julkaisuun asti vuoden 1991 lopussa. Sen jälkeen projektia ei enää ylläpidetty. Vuonna 1993 syntyi Netpbm yhteisön haaraksi, joka oli pohjimmiltaan Pbmplus-ohjelman uudelleenpakkaus, johon oli lisätty bugikorjauksia ja laajennuksia kehittäjiltä ympäri maailmaa. Vuodesta 1999 lähtien Netpbm:ää on ylläpitänyt Bryan Henderson, ja se sisältyy nykyään käytännössä jokaiseen Linux-jakeluun.

PBM sinänsä on jäänyt ajasta jälkeen. Sähköpostipalvelimet pystyvät käsittelemään ongelmitta JPG-, PNG– ja jopa videotiedostoja. Sen "värikästä" versiota ppm:ää käytetään kuitenkin päivittäin, putkistoissa ja Linux-järjestelmissä. PBM:lle jää opettavainen rooli: se on helppo selittää, helppo ymmärtää ja – niin yksinkertainen PBM on – selittää ruutupaperille.

Lähteet

Netpbm PBM-formaattispesifikaatio
Netpbm Historia – erittäin lukemisen arvoinen artikkeli pbm:n historiasta
Wiki: Jef Poskanzer

0.0/5(0 ääntä)

Muunna, avaa ja muokkaa PBM tiedostoja

Tietoja PBM-tiedostoista

Ohjelmisto PBM-tiedostojen avaamiseen
Ohjelmisto PBM-tiedostojen muokkaamiseen
MIME-tyyppi PBM: lle

Kaikki tiedostomuuntajat PBM- tai PBM-muodossa

Ei kommentteja

Vastaa

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *


Pudota tiedostot tähän...