programvara

Google Guetzli minskar JPG-filstorleken med 35 procent

Vi har testat nya bildkompressorn Guetzli från Google Research som minskar filstorleken hos bildfiler och förbättrar tonövergångar i exempelvis en himmel.

Google Research har släppt källkoden till sin bildkompressor Guetzli som följer JPG-standarden och därmed kan komprimera bildfiler extra smart men samtidigt användas som en helt vanlig JPG-bild på webben och i bildprogram utan något extra plugin. Alternativt kan högre bildkvalitet bibehållas vid samma filstorlek.

Komprimeringsgraden beror helt på bilden, men över lag levererar den enligt Google själva runt 35 procents minskning av filstorleken, även om filstorlekar ned till 70 procent av originalet med bibehållen bildkvalitet har rapporterats av testare.

En JPG-bild komprimeras i olika nivåer, och Google har med Guetzli riktat in sig på kvantifieringen – den del av komprimeringen som är mest visuellt synlig.

Detta exempel på 16x16 pixlar av en telefonledning i luften visar ett exempel på artefakter. Det okomprimerade originalet visas till vänster, en vanlig JPG-komprimering i mitten, samt Google Guetzlis komprimering till höger.

Däremot är komprimeringen rätt krävande, med ett behov av upp till 300 megabyte RAM-minne och runt en minuts processorarbete, för varje megapixel av den bild du matar in. Algoritmen tar heller inte hänsyn till färgrymd, utan utgår från att bilden som matas in är i sRGB och med ett gamma-värde på 2,2.

Ger bra resultat

Vi har provat komprimeringen och kan konstatera att det både tar tid och blir ett riktigt bra resultat. När vi matade in en 1,6 megapixelsbild i kompressorn tog det runt två minuter innan vi fick den nya filen.

Ursprungsbild i vanlig JPG.
Google Guetzli-komprimerad JPG.

Ursprungsbilden var 1,45 megabyte och den Guetzli-komprimerade bilden blev 0,6 megabyte (598 KB), vilket innebär att bildfilen blev 41 procent av ursprungsbildens filstorlek. Fördelen med komprimeringen är att den klarar av att komprimera detaljer i just detaljrika bilder mycket bättre, samt bilder som innehåller brus, som vanligtvis är mycket svårt att komprimera för JPG-algoritmen.

Det går inte att se någon skillnad på de filer vi testat med. Nackdelen är så klart den tid det tar att komprimera, men å andra sidan öppnar det upp för möjligheten att få bättre tonövergångar i färgnyanser och gradienter som annars är mycket känsliga för JPG-komprimering.

För arkiv-verksamhet eller webbservrar är bättre bildkomprimering värt mycket, eftersom det då handlar om konstnad för utrymme och tid för dataöverföring.

På samma tema hittar vi Google RAISR som vi skrivit om tidigare i år, där man genom maskininlärning kan lära algoritmen att förstora lågupplösta bilder.

Google Guetzli finns tillgänglig på Github för nedladdning för den som vill prova eller använda algoritmen själv, men notera att man då själv måste kompilera koden och att det hela körs via kommandon.