Artikel
Varför bilder tappar kvalitet för varje sparning
Ett foto som såg skarpt ut i kamerarullen kommer ut kantigt efter att ha vidarebefordrats genom några gruppchattar och delats om ett par gånger. Ingen redigerade det med flit; det gick bara igenom flera omkodningar, och varje gång kastades lite mer detalj bort. Det här är generationsförlust, en gammal och väl förstådd egenskap hos förlustbehäftad komprimering, och den förklarar varför flitigt vidaredelade bilder tenderar att se stegvis sämre ut. Här är vad en förlustbehäftad omkodning faktiskt kastar bort, varför det ackumuleras, och hur du stoppar en fil från att försämras ytterligare.
Vad 'förlustbehäftad' faktiskt kastar bort
JPEG, formatet bakom de flesta foton som delas online, är förlustbehäftat med avsikt: standarden bakom det, ITU-T T.81, fungerar genom att omvandla block av pixlar till frekvensdata och sedan avrunda den datan mer eller mindre aggressivt beroende på kvalitetsinställningen, ett steg som kallas kvantisering. Avrundning kan inte göras ogjord exakt; den bortkastade detaljen är genuint borta, inte gömd någonstans i filen. En hög kvalitetsinställning avrundar milt och förlusten är svår att se, en låg avrundar hårt och filen blir märkbart kantig, men även en enda JPEG-sparning kastar alltid bort något.
Varje omkodning är en ny generation
Första gången ett foto sparas som JPEG kvantiseras kamerans pixeldata en gång. Att öppna den JPEG-filen igen och spara den igen, även helt utan redigeringar, avkodar de redan approximerade pixlarna och kvantiserar dem en andra gång, ovanpå den första avrundningen, inte i stället för den. Varje ytterligare sparning är en ny generation, och var och en förstärker den kantighet och färgbandning den föregående generationen redan introducerade. En enda genomgång med en rimlig kvalitetsinställning är nära osynlig; samma inställning applicerad fem eller sex gånger i rad på samma fil försämrar ett foto märkbart, eftersom felen från varje tidigare generation fortfarande finns kvar när nästa avrundar igen.

Varför flitigt vidaredelade bilder ser sämre ut
Ett foto som färdas genom flera chattar, flöden och nya uppladdningar plockar upp en ny generation vid nästan varje steg: en meddelandeapp komprimerar om det för chatten, en social plattform kodar om det igen för sin egen leveranspipeline, någon skärmdumpar resultatet och laddar upp den skärmdumpen igen, vilket är ännu en fullständig omkodning av en redan försämrad bild. Inget av dessa steg behöver vara slarvigt eller använda en ovanligt låg kvalitetsinställning för att effekten ska ackumuleras; den är kumulativ till sin natur, vilket är exakt varför en bild som cirkulerat brett under lång tid ofta visar märkbart mer kantighet och färgbandning än en färsk kopia av samma foto.
Förlustfria format har inte det här problemet
PNG och förlustfri WebP fungerar annorlunda: de komprimerar genom att hitta mönster i den exakta pixeldatan och packa den mer effektivt, utan att avrunda bort något, så att avkoda och koda om samma förlustfria fil, utan redigeringar, återger pixlarna exakt, generation efter generation. Den garantin är varför skärmdumpar och grafik med skarpa kanter eller text oftast sparas som PNG snarare än JPEG. Det har ett pris: en förlustfri fil av ett typiskt fotografi är mycket större än en JPEG vid rimlig kvalitet, eftersom det inte finns någon avrundning som krymper den.

Att hålla en fils kvalitet under kontroll
Generationsförlustkedjan ackumuleras bara när varje sparning utgår från föregående sparnings redan försämrade pixlar. Att behålla ett förlustfritt original, kamerans ursprungliga fil eller en PNG, och exportera en färsk JPEG från det originalet varje gång undviker att stapla ny avrundning ovanpå gammal. Vår bildkomprimerare låter dig välja en kvalitetsinställning och se den resulterande filstorleken innan du skickar något, och vårt bildjämförelseverktyg lägger originalet och den komprimerade kopian sida vid sida med ett skjutreglage, så du kan upptäcka en dålig inställning innan du skickar filen vidare och startar ännu en generation. Båda körs helt i din webbläsare: fotot lämnar aldrig din enhet för att kontrolleras.
Verktyg i den här artikeln
Vanliga frågor
Försämras en JPEG-fil av att kopieras eller flyttas?
Nej. Att kopiera en fil, bifoga den till ett e-postmeddelande eller flytta den mellan mappar kopierar exakt samma byte; inget avkodas eller kodas om, så inget kvantiseras igen. Generationsförlust sker bara när pixlarna faktiskt öppnas och sparas igen, inte när själva filen flyttas runt.
Kan jag ångra generationsförlust och återfå den förlorade detaljen?
Nej. Kvantisering är genuint förlustbehäftad: den avrundade frekvensdata en tidigare sparning kastade bort finns inte registrerad någonstans i filen, så inget filter eller algoritm kan återskapa den. Att skärpa eller brusreducera en försämrad JPEG kan göra artefakterna mindre synligt uppenbara, men det återställer inte den ursprungliga detaljen.
Löser det problemet att konvertera en försämrad JPEG till PNG?
Att konvertera efter att skadan redan skett bevarar hur JPEG-filen redan ser ut vid den tidpunkten, pixel för pixel, utan att lägga till ett nytt avrundningssteg, men det kan inte återställa detalj som förlorats i tidigare sparningar. Lösningen är att börja behålla ett förlustfritt original innan fler generationer sker, inte att konvertera ett foto sent i kedjan.