Delen via


Typen bitmaps

Een bitmap is een matrix van bits die de kleur van elke pixel in een rechthoekige matrix van pixels aangeeft. Het aantal bits dat aan een afzonderlijke pixel is gewijd, bepaalt het aantal kleuren dat aan die pixel kan worden toegewezen. Als elke pixel bijvoorbeeld wordt vertegenwoordigd door 4 bits, kan aan een bepaalde pixel een van 16 verschillende kleuren worden toegewezen (2^4 = 16). In de volgende tabel ziet u enkele voorbeelden van het aantal kleuren dat kan worden toegewezen aan een pixel die wordt vertegenwoordigd door een bepaald aantal bits.

Bits per pixel Aantal kleuren dat aan een pixel kan worden toegewezen
1 2^1 = 2
2 2^2 = 4
4 2^4 = 16
8 2^8 = 256
16 2^16 = 65.536
24 2^24 = 16, 777, 216

 

Schijfbestanden waarin bitmaps worden opgeslagen, bevatten meestal een of meer informatieblokken waarin informatie wordt opgeslagen, zoals het aantal bits per pixel, het aantal pixels in elke rij en het aantal rijen in de matrix. Een dergelijk bestand kan ook een kleurentabel bevatten (ook wel een kleurenpalet genoemd). Een kleurentabel wijst getallen in de bitmap toe aan specifieke kleuren. In de volgende afbeelding ziet u een vergroote afbeelding, samen met de bitmap- en kleurentabel. Elke pixel wordt vertegenwoordigd door een 4-bits getal, dus er zijn 2^4 = 16 kleuren in de kleurentabel. Elke kleur in de tabel wordt vertegenwoordigd door een 24-bits getal: 8 bits voor rood, 8 bits voor groen en 8 bits voor blauw. De getallen worden weergegeven in hexadecimale vorm (grondtal 16): A = 10, B = 11, C = 12, D = 13, E = 14, F = 15.

afbeelding met een matrix met getallen, een afbeelding en een tabel die overeenkomt met de matrixnummers in kleuren

Bekijk de pixel in rij 3, kolom 5 van de afbeelding. Het bijbehorende getal in de bitmap is 1. De kleurentabel geeft aan dat 1 de kleur rood vertegenwoordigt, dus de pixel is rood. Alle vermeldingen in de bovenste rij van de bitmap zijn 3. De kleurentabel geeft aan dat 3 blauw vertegenwoordigt, dus alle pixels in de bovenste rij van de afbeelding zijn blauw.

Notitie

Sommige bitmaps worden opgeslagen in bottom-up-indeling; de getallen in de eerste rij van de bitmap komen overeen met de pixels in de onderste rij van de afbeelding.

 

Een bitmap waarin indexen in een kleurentabel worden opgeslagen, wordt een palet-geïndexeerde bitmap genoemd. Sommige bitmaps hebben geen kleurentabel nodig. Als een bitmap bijvoorbeeld 24 bits per pixel gebruikt, kan die bitmap de kleuren zelf opslaan in plaats van indexen in een kleurentabel. In de volgende afbeelding ziet u een bitmap waarin kleuren rechtstreeks (24 bits per pixel) worden opgeslagen in plaats van een kleurentabel te gebruiken. In de afbeelding ziet u ook een vergroot beeld van de bijbehorende afbeelding. In de bitmap vertegenwoordigt FFFFFF wit, FF0000 staat voor rood, 00FF000 groen en 0000FF staat voor blauw.

afbeelding van een matrix met hexadecimale waarden, gevolgd door de bitmapafbeelding waarin de getallen

 

Grafische bestandsindelingen

Er zijn veel standaardindelingen voor het opslaan van bitmaps in bestanden. Windows GDI+ ondersteunt de grafische bestandsindelingen die in de volgende alinea's worden beschreven.

Bitmap (BMP)

BMP is een standaardindeling die door Windows wordt gebruikt om apparaatonafhankelijke en toepassingsonafhankelijke installatiekopieën op te slaan. Het aantal bits per pixel (1, 4, 8, 15, 24, 32 of 64) voor een bepaald BMP-bestand wordt opgegeven in een bestandskoptekst. BMP-bestanden met 24 bits per pixel zijn gebruikelijk.

GIF-(Graphics Interchange Format)

GIF is een algemene indeling voor afbeeldingen die worden weergegeven op webpagina's. GIF's zijn geschikt voor lijntekeningen, afbeeldingen met effen kleuren en afbeeldingen met scherpe grenzen tussen kleuren. GIF's worden gecomprimeerd, maar er gaat geen informatie verloren in het compressieproces; een gedecomprimeerde afbeelding is precies hetzelfde als het origineel. Eén kleur in een GIF kan worden aangewezen als transparant, zodat de afbeelding de achtergrondkleur heeft van elke webpagina die deze weergeeft. Een reeks GIF-afbeeldingen kan in één bestand worden opgeslagen om een GIF-animatie te vormen. GIF's slaan maximaal 8 bits per pixel op, dus ze zijn beperkt tot 256 kleuren.

Joint Photographic Experts Group (JPEG)

JPEG is een compressieschema dat goed werkt voor natuurlijke scènes, zoals gescande foto's. Sommige informatie gaat verloren in het compressieproces, maar vaak is het verlies onmerkbaar voor het menselijk oog. Jpeg-kleurenafbeeldingen slaan 24 bits per pixel op, zodat ze meer dan 16 miljoen kleuren kunnen weergeven. Er is ook een JPEG-indeling met grijswaarden waarin 8 bits per pixel worden opgeslagen. JPEG's bieden geen ondersteuning voor transparantie of animatie.

Het compressieniveau in JPEG-afbeeldingen kan worden geconfigureerd, maar hogere compressieniveaus (kleinere bestanden) leiden tot meer informatieverlies. Een compressieverhouding van 20:1 produceert vaak een beeld dat het menselijk oog moeilijk te onderscheiden is van het origineel. In de volgende afbeelding ziet u een BMP-afbeelding en twee JPEG-afbeeldingen die zijn gecomprimeerd vanuit die BMP-afbeelding. De eerste JPEG heeft een compressieverhouding van 4:1 en de tweede JPEG heeft een compressieverhouding van ongeveer 8:1.

afbeelding met een bitmapafbeelding en twee jpeg-compressies van die afbeelding; de hoogste compressie meer variatie heeft van de oorspronkelijke

JPEG-compressie werkt niet goed voor lijntekeningen, blokken effen kleur en scherpe grenzen. In de volgende afbeelding ziet u een BMP, samen met twee JPEG's en een GIF. De JPEG's en de GIF zijn gecomprimeerd vanuit de BMP. De compressieverhouding is 4:1 voor de GIF, 4:1 voor de kleinere JPEG en 8:3 voor de grotere JPEG. Houd er rekening mee dat de GIF de scherpe grenzen langs de lijnen behoudt, maar de JPEG's hebben de neiging om de grenzen te vervagen.

illustratie die een bitmap van een lijntekening vergelijkt met twee jpeg-equivalenten en één GIF; het GIF behoudt de kleur- en lijnscherpte het best

JPEG is een compressieschema, geen bestandsindeling. JPEG File Interchange Format (JFIF) is een bestandsindeling die vaak wordt gebruikt voor het opslaan en overdragen van afbeeldingen die zijn gecomprimeerd volgens het JPEG-schema. JFIF-bestanden die door webbrowsers worden weergegeven, gebruiken de .jpg-extensie.

Exchangeable Image File (Exif)

Exif is een bestandsindeling die wordt gebruikt voor foto's die zijn vastgelegd door digitale camera's. Een Exif-bestand bevat een afbeelding die wordt gecomprimeerd volgens de JPEG-specificatie. Een Exif-bestand bevat ook informatie over de foto (datum genomen, sluitertijd, belichtingstijd, enzovoort) en informatie over de camera (fabrikant, model, enzovoort).

PNG- (Portable Network Graphics)

De PNG-indeling behoudt veel van de voordelen van de GIF-indeling, maar biedt ook mogelijkheden buiten gif. Net als GIF-bestanden worden PNG-bestanden gecomprimeerd zonder gegevensverlies. PNG-bestanden kunnen kleuren opslaan met 8, 24 of 48 bits per pixel en grijsschalen met 1, 2, 4, 8 of 16 bits per pixel. GIF-bestanden kunnen daarentegen slechts 1, 2, 4 of 8 bits per pixel gebruiken. Een PNG-bestand kan ook een alfawaarde voor elke pixel opslaan, waarmee wordt aangegeven in welke mate de kleur van die pixel wordt gemengd met de achtergrondkleur.

PNG verbetert het gebruik van GIF in de mogelijkheid om geleidelijk een afbeelding weer te geven; Dat wil gezegd, om betere en betere benaderingen van de afbeelding weer te geven wanneer deze via een netwerkverbinding aankomt. PNG-bestanden kunnen gammacorrectie- en kleurcorrectie-informatie bevatten, zodat de afbeeldingen nauwkeurig kunnen worden weergegeven op verschillende weergaveapparaten.

tag Image File Format (TIFF)

TIFF is een flexibele en uitbreidbare indeling die wordt ondersteund door een groot aantal platforms en toepassingen voor beeldverwerking. TIFF-bestanden kunnen afbeeldingen opslaan met een willekeurig aantal bits per pixel en kunnen verschillende compressiealgoritmen gebruiken. Verschillende afbeeldingen kunnen worden opgeslagen in één TIFF-bestand met meerdere pagina's. Informatie met betrekking tot de afbeelding (scanner maken, hostcomputer, type compressie, afdrukstand, steekproeven per pixel, enzovoort) kan worden opgeslagen in het bestand en gerangschikt via het gebruik van tags. De TIFF-indeling kan indien nodig worden uitgebreid door de goedkeuring en toevoeging van nieuwe tags.