JPG komprimering

 

Hvorfor er det så vigtigt at kunne komprimere billedinformationerne, når vi ved, at en kompression næsten altid giver tab i en eller anden størrelsesorden?

Det tager tid at flytte data fra et medie til et andet, små datamængder kan flyttes hurtigere, og når vi taler video, kan flere informationer overføres på den samme tid, hvis de er komprimeret. Komprimering er essentiel for den måde vi udveksler billeddata på. Uden effektiv komprimering ville udbudet og kvaliteten inden for video og TV ikke have nået det nuværende høje stade.

Hvordan griber vi det an, når vi skal komprimere et billede? Det gøres nemlig ikke bare pixel for pixel! Et rent RGB signal kan i praksis ikke komprimeres nævneværdigt, så RGB farvemodellen skal nødvendigvis ændres til et noget mere hensigtsmæssigt farverum for at kunne komprimeres. Vi skal have adskilt luminans og farveinformationerne, fordi det primært er farveinformationerne vi kan ændre og reducere i forbindelse med en komprimering, som skal være uden synlige tab i billedkvalitet.

Y', Cb og Cr er de 3 komponenter vi omdanner RGB dataene til. Y' er den enkelte pixels lysstyrke (luminans). Cb og Cr er krominansen (farveinformationerne: Farvetone og farvemætning) repræsenteret ved en blå og rød akse.

Det første der sker efter at RGB billedet er konverteret til Y'CbCr er en downsampling af krominansen (også kaldet chroma subsamling). Lidt forenklet kan man sige at farveinformationernes opløsning reduceres i forhold til luminansens opløsning.

Hvis farveopløsningen reduceres horisontalt med en faktor 2 bruger vi udtrykket  4:2:2. Det betyder at 8 farvenuancer reduceres til 4 på en måde så det modsvarer øjets manglende evne til netop at skelne de små farveforskelle. Øjet er mere kritisk over for fravær af farver i rød/grøn spektret end for blå/gul og det udnyttes blandt andet.

En downsampling til 4:2:0, som bruges af JPG formatet, angiver at her er farveopløsningen reduceres med en faktor 2 både horisontalt og vertikalt.

Downsampling af krominansen  4:2:0 kan også forklares ved at se på hvordan pixelfordelingen er for  henholdsvis luminans og krominans.

Luminansen registreres for hver pixel, hvorimod krominansen er et filtreret gennemsnit af 4 pixel. Det svarer til at farveopløsning i  billedet er faldet til 1/4 del, sammenlignet med luminansens opløsning

Når man reducerer farveopløsningen, er der færre farver og den nødvendige datamængde er dermed tilsvarende mindre, men der skal meget mere til, hvis billedfilens størrelse skal reduceres markant!

I næste trin deles det downsamplet 4:2:0 billede op i blokke på 8 x 8 pixel. Hver pixel består forsat af 3 komponenter Y', Cb og Cr. Men ved hjælp af  DCT ( Discrete Cosine Transform) afrundes og grupperes værdierne i blokken på en måde, så blandt andet unødvendige gentagelser fjernes. Den samlede informationsmængde er derved yderligere blevet kraftig reduceret.

En kvantisering, som bygger på øjets begrænsning til at kunne se små forskellig i lysstyrke, især i detaljen, gør at værdierne i blokken på 8 x 8 pixel kan afrundes til nærmeste heltal og ofte endda reduceres til et 0. Det kræver langt færre bit at gemme heltal i forhold til decimaltal og især hvis man kan afrunde en værdi til et 0.

Til slut udføres der en tabsfri data kompression af det hele, som reducerer den samlede størrelse yderligere med typisk 5 -10 %.

Det er downsampling og kvantisering der giver den største kompression. Det er uheldigt, men ikke særlig overraskende, at de trin  som virkelig reducerer størrelsen, også fører til det største tab af billedkvalitet. Man kan komprimere et billede så meget, at især de 8 x 8 pixel blokke, som JPG billedet er opdelt i, træder frem og giver billedet et ”pixeleret” eller ”firkantet” udseende.

I Photoshop kan man visuelt  kontrollere hvor meget en given kompression påvirker billedkvaliteten, og skrue lidt op eller ned om nødvendigt. Har man brug for at billedet ikke fylder for meget, men samtidig ønsker en  passende kvalitet, så bør billedkvaliteten kontrolleres ved 100%. Kompressionens bivirkninger kommer tydeligst frem i små billeder.

En komprimering med en faktor 4 eller mindre giver en kvalitet, som er så tæt på det originale RGB billede, at der i praksis ikke vil være tale om en tydelig forskel.

For god ordens skyld skal det lige nævnes at når vi åbner den komprimerede JPG billedfil, skal vi for at komme tilbage til et RGB billede igen, igennem en del af processen endnu en gang, men nu i omvendt rækkefølge. Det er mindre kompliceret den modsatte vej, fordi der udelukkende er tale om en matematisk konvertering tilbage til RGB værdier.

Fordele ved JPG:

Filen fylder mindre. Der kan være flere billeder  på hukommelseskortet og harddisken.

Det er hurtigere at transmittere en lille billedfil kontra en stor.

JPG filen kommer fiks og færdig ud af kameraet. Minimal efterredigering. Sparer tid.

Ved moderat komprimering er billedkvaliteten tilstrækkelig til de fleste ting.

Formatet kan læses af alle programmer, også i fremtiden.

Ulemper ved JPG:

Der er altid tab af billedkvalitet ved komprimering.

8 bit farvedybde pr kanal og en gammakurve på 2.2. gør formatet mindre velegnet til efteredigering.

Hvidbalancen skal være præcist valgt ved eksponeringen. På grund af gammakurven kan hvidbalancen ikke efterfølgende ændres på en ordentlig måde.

Kameraets 4096 lysniveauer (ved 12 bit) ændres for altid til kun 256 bit pr. farvekanal.

Selv en mindre overeksponering fører til uigenkaldelig tab af billedinformationer.

De første blændetrin i skyggen indeholder kun få lysniveauer. ”Lukker” man skyggen op er der kun få detaljer og meget støj. Begrænset dynamikområde.

Ingen fortrydelsesret, når først billedkvaliteten er valgt.

Fordele ved Raw:

Det er det tætteste vi kan komme på det analoge negativ. Det er de rå og uforarbejdede data direkte fra sensoren. Alle kameraindstillinger er til orientering udelukkende vedhæftet filen som en information (tag).

Det er muligt at forbedre billedkvaliteten af eksisterende optagelser ved hjælp af nye og mere avancerede Raw konvertere engang i fremtiden.

Raw er det tabsfrie format, som fylder mindst af alle.

16 Bits farvedybde pr kanal, stor gamut og en lille ekstra eksponeringsreserve er en kæmpe fordel redigeringsmæssigt.

Ulemper ved Raw:

Rawfiler er proprietære og skal derfor kendes af redigeringsprogrammet for at kunne blive konverteret.

Filerne fylder relativt meget i forhold til JPG.

Der er altid en risiko for at et proprietært billedformat kan gå i den store ”glemmebog”

Skal altid konverteres til et RGB billede før redigering kan finde sted og skal efterfølgende gemmes i et nyt format.