JPEG | filformat som används för att komprimera digitala bilder
Inom datateknik är JPEG-filformatet ett filformat som används för att komprimera digitala bilder. Komprimeringsgraden kan ändras beroende på önskad kvalitet. Om en bild är av hög kvalitet tar den upp en stor mängd lagringsutrymme. Om den är av låg kvalitet kommer den att ta upp en liten mängd lagringsutrymme. JPEG-filformatet är vanligt förekommande på World Wide Web. Ordet JPEG är en förkortning för Joint Photographic Experts Group som skapade formatet. JPEG-filtillägg inkluderar .jpg
, .jpeg
, .jpe
och andra.
Ett fotografi av en wildcat med minskande kompression från vänster till höger.
Hur det fungerar
YPb Pr
Det första anmärkningsvärda med JPEG-komprimering är det sätt på vilket färgen på varje pixel lagras. Varje pixel i bilden tilldelas 3 bytes för att definiera dess färg. Alla tre bytes kan ha ett värde mellan 0 och 255 och varje möjlig kombination av de tre bytes står för en annan färg. I de flesta filformat används RGB-formatet för att definiera färgen. RGB står för rödgrönblått. Det kallas så eftersom det första av de tre bytena talar om hur mycket rött det finns i pixelns färg. Den andra byte talar om hur mycket grönt det finns i färgen och den tredje byte om hur mycket blått. Ju högre värde den första byten har, desto rödare ser pixeln ut.
JPEG använder också tre bytes för varje pixel, men använder formatet YPb Pr (även känt som YCb Cr ). Här talar den första byte om hur ljus pixeln är. Den andra byte talar om hur blå pixeln är. Den tredje byte talar om hur röd pixeln är. Med detta färgformat lagras ljusstyrkan separat från färgen. Detta är användbart eftersom vi ska komprimera en bild. Eftersom det mänskliga ögat är bättre på att se ljusstyrka än att se färg kan vi tillämpa en större komprimering på färgbytesen (Pb -byte och Pr -byte). Eftersom vi ser ljusstyrka bättre använder vi mindre komprimering på Y-byte, för att bilden ska se bättre ut efter komprimering.
Eftersom bilder oftast lagras i RGB-format är det första steget i JPEG-komprimeringen vanligtvis att ändra RGB-formatet korrekt till YPb Pr -formatet.
Diskret kosintransformation
JPEG använder cosinusfunktioner för att representera en bild. Därför ska vi tala lite om cosinusfunktioner. Så här kan en cosinusfunktion se ut:
För att cosinusfunktionen ska representera färgen på en pixel säger vi att ju högre värde på cosinusfunktionen, desto ljusare är pixeln. Om vi hade en uppsättning pixlar som går från ljust till mörkt och ljust kan vi använda funktionen ovan för att definiera dem.
Funktionen kan också ha en högre frekvens. Till exempel så här:
Men det är här det blir intressant. Vi kan också skapa olika funktioner genom att ta medelvärdet av olika cosinusfunktioner. Så här skulle det se ut om vi tog medelvärdet av de två ovanstående funktionerna:
I JPEG tillämpas DCT på block med 8 × 8 pixlar.
Kvantifiering
Hittills har ingen information gått förlorad under komprimeringen av bilden. I det här steget filtrerar vi bort information. Därför är detta det steg som sänker bildens kvalitet. För varje block av 8 × 8 pixlar sätts cosinusfunktionerna med höga frekvenser till 0. Det innebär att dessa inte längre kan ha någon inverkan på hur bilden ser ut när du dekomprimerar den.
Många värden kommer nu att vara 0, vilket innebär att detta kan komprimeras mycket lätt. Detta görs med hjälp av Huffman-kodning. Huffman-kodning är det sista steget i JPEG-komprimeringen. Det är också det enda steg där data faktiskt komprimeras.
(cos(x) + cos(2x)) / 2
cos(x)
cos(2x)
Struktur
En JPEG-fil är en datafil och består av flera bytes. En byte i hexadecimal form kan se ut som 0x01. De allra första bytena i en JPEG-fil är 0xFF, 0xD8 ("FF D8"); dessa byten kallas Start Of Image (SOI). Den första sektionen av bytes i en JPEG är rubriken; denna är från FF D8 till precis före de sista 0xFF, 0xDA ("FF DA") bytes. Huvudet innehåller data om data och andra användbara data. Nästa sektion av bytes i en JPEG är bilddata; detta är från FF DA till 0xFF, 0xD9 ("FF D9"). Bytes FF DA kallas SOS (Start Of Scan) och FF D9-bytes kallas EOI (End Of Image).
Frågor och svar
F: Vad är filformatet JPEG?
S: JPEG-filformatet är ett filformat som används för att komprimera digitala bilder.
F: Hur kan komprimeringsgraden ändras?
S: Komprimeringsgraden kan ändras beroende på önskad kvalitet.
F: Vad händer om en bild har hög kvalitet?
S: Om en bild har hög kvalitet kommer den att ta upp en stor mängd lagringsutrymme.
F: Var är JPEG-filformatet vanligt förekommande?
S: JPEG-filformatet är vanligt förekommande på World Wide Web.
F: Vad står ordet "JPEG" för?
S: Ordet "JPEG" står för Joint Photographic Experts Group, som skapade formatet.
F: Vilka är några vanliga tillägg för JPEG-filer?
S: Vanliga tillägg för JPEG-filer är bland annat .jpg, .jpeg och .jpe.