Skip to content
Menu
Saayarelo
Saayarelo

DIGITAL BILDINTERPOLERING

Posted on januari 24, 2022

Bildinterpolering förekommer i alla digitala foton i något skede – oavsett om det är i bayer-demosaikering eller vid bildförstoring. Det sker närhelst du ändrar storlek eller omformar (förvränger) din bild från ett pixelraster till ett annat. Bildstorlek är nödvändig när du behöver öka eller minska det totala antalet pixlar, medan remappning kan förekomma i ett större antal scenarier: korrigering av objektivförvrängning, ändring av perspektiv och rotation av en bild.

Bildinterpolering - exempel på storleksändring och förvrängning

Även om samma bildstorlek eller remapning utförs kan resultaten variera avsevärt beroende på interpoleringsalgoritmen. Det är bara en approximation, därför kommer en bild alltid att förlora lite kvalitet varje gång interpolering utförs. Den här handledningen syftar till att ge en bättre förståelse för hur resultaten kan variera – vilket hjälper dig att minimera eventuella interpolationsinducerade förluster av bildkvalitet.

  • KONCEPT
  • Bildstorleksexempel
  • Bildrotationsexempel
  • TYPER AV INTERPOLATIONSALGORITMER
  • Närmaste granne-interpolering
  • BILINEÄR INTERPOLATION
  • BICUBIC INTERPOLATION
  • Högre interpolering: SPLINE & SINC
  • INTERPOLERINGSARTIFAKTER ATT VAKTA MED
  • ANTI-ALYSERING
  • NOTAT OM OPTISK vs. DIGITAL ZOOM

KONCEPT

Interpolering fungerar genom att använda kända data för att uppskatta värden vid okända punkter. Om du till exempel vill veta temperaturen vid middagstid, men bara har mätt den klockan 11 och 13, kan du uppskatta värdet genom att utföra en linjär interpolation:

linjär interpolationsgraf

Om du hade ytterligare en mätning klockan 11:30:00 kunde du se att huvuddelen av temperaturökningen skedde före middagstid, och du kunde använda denna ytterligare datapunkt för att utföra en kvadratisk interpolation:

Kurvad interpolationsgraf

Ju fler temperaturmätningar som ligger nära middagstid, desto mer sofistikerad (och förhoppningsvis mer exakt) kan din interpolationsalgoritm vara.

Bildstorleksexempel

Bildinterpolering fungerar i två riktningar och försöker uppnå en bästa approximation av en pixels färg och intensitet baserat på värdena i omgivande pixlar. Följande exempel illustrerar hur storleksändring/förstoring fungerar:

Förstora 183%
→

Under skillnad från lufttemperaturens svängningar och den ideala gradienten ovan, kan pixelvärdena förändras mycket mer abrupt från en plats till en annan. Precis som i exemplet med temperaturen blir interpolationen bättre ju mer du vet om de omgivande pixlarna. Därför försämras resultaten snabbt ju mer du sträcker en bild, och interpolering kan aldrig lägga till detaljer till din bild som inte redan finns där.

Bildrotationsexempel

Interpolering sker också varje gång du roterar eller förvränger en bild. Det föregående exemplet var missvisande eftersom det är ett exempel som interpolatorer är särskilt bra på. Nästa exempel visar hur bilddetaljer kan gå förlorade ganska snabbt:

Original
Rotation
→
45°. Rotation

90° Rotation
(förlustfri)
2 X 45°
Rotationer
6 X 15°
Rotationer

Den 90°-rotationen är förlustfri eftersom ingen pixel någonsin behöver omplaceras på gränsen mellan två pixlar (och därmed delas). Observera hur de flesta detaljerna går förlorade redan vid den första rotationen, även om bilden fortsätter att försämras med successiva rotationer. Man bör därför undvika att rotera sina foton när det är möjligt; om ett ojämnt foto kräver det, rotera inte mer än en gång.

Ovanstående resultat använder en så kallad ”bikubisk” algoritm, och visar en betydande försämring. Lägg märke till den övergripande minskningen av kontrasten som framgår av att färgen blir mindre intensiv, och hur mörka halos skapas runt det ljusblå. Ovanstående resultat skulle kunna förbättras avsevärt, beroende på interpolationsalgoritmen och ämnet.

TYPER AV INTERPOLATIONSALGORITMER

Gängse interpolationsalgoritmer kan delas in i två kategorier: adaptiva och icke-adaptiva. Adaptiva metoder ändras beroende på vad de interpolerar (skarpa kanter kontra slät textur), medan icke-adaptiva metoder behandlar alla pixlar lika.

Nej adaptiva algoritmer omfattar: närmaste granne, bilinear, bikubisk, spline, sinc, lanczos och andra. Beroende på deras komplexitet använder de mellan 0 och 256 (eller fler) intilliggande pixlar när de interpolerar. Ju fler intilliggande pixlar de inkluderar, desto noggrannare kan de bli, men detta sker på bekostnad av en mycket längre bearbetningstid. Dessa algoritmer kan användas för att både förvränga och ändra storleken på ett foto.

Original
Uppförstorad 250%

Adaptiva algoritmer inkluderar många egenutvecklade algoritmer i licensierade programvaror som t.ex: Qimage, PhotoZoom Pro, Genuine Fractals och andra. Många av dessa tillämpar en annan version av sin algoritm (pixel för pixel) när de upptäcker förekomsten av en kant – i syfte att minimera fula interpolationsartefakter i områden där de är mest uppenbara. Dessa algoritmer är främst utformade för att maximera artefaktfria detaljer i förstorade foton, så vissa kan inte användas för att förvränga eller rotera en bild.

Närmaste granne-interpolering

Närmaste granne är den mest grundläggande och kräver minst bearbetningstid av alla interpoleringsalgoritmer eftersom den bara tar hänsyn till en pixel – den som är närmast den interpolerade punkten. Detta har effekten att varje pixel helt enkelt blir större.

BILINEÄR INTERPOLATION

Bilinjär interpolationsdiagram

Bilinjär interpolation tar hänsyn till det närmaste 2×2 grannskapet av kända pixelvärden som omger den okända pixeln. Den tar sedan ett viktat medelvärde av dessa 4 pixlar för att komma fram till det slutliga interpolerade värdet. Detta resulterar i mycket jämnare bilder än närmsta granne.

Diagrammet till vänster är för ett fall där alla kända pixelavstånd är lika stora, så det interpolerade värdet är helt enkelt deras summa dividerad med fyra.

BICUBIC INTERPOLATION

Bicubisk interpolationsdiagram

Bicubic går ett steg längre än bilinear genom att ta hänsyn till det närmaste 4×4 grannskapet av kända pixlar – för totalt 16 pixlar. Eftersom dessa ligger på olika avstånd från den okända pixeln får de närmare pixlarna högre vikt i beräkningen. Bicubic ger märkbart skarpare bilder än de två föregående metoderna och är kanske den idealiska kombinationen av bearbetningstid och utskriftskvalitet. Därför är det en standard i många bildredigeringsprogram (inklusive Adobe Photoshop), skrivardrivrutiner och interpolering i kameran.

Högre interpolering: SPLINE & SINC

Det finns många andra interpolatorer som tar hänsyn till fler omgivande pixlar, och som därför också är mycket mer beräkningskrävande. Dessa algoritmer inkluderar spline och sinc, och behåller mest bildinformation efter en interpolation. De är därför mycket användbara när bilden kräver flera rotationer/förvrängningar i separata steg. För förstoringar eller rotationer i ett enda steg ger dock dessa algoritmer av högre ordning en minskande visuell förbättring i takt med att bearbetningstiden ökar.

INTERPOLERINGSARTIFAKTER ATT VAKTA MED

Alla icke-adaptiva interpolatorer försöker hitta en optimal balans mellan tre oönskade artefakter: kanthalos, oskärpa och aliasing.

Original
Uppförstorad
400%
→
Aliasing
Blurring
Edge Halo

Även de mest avancerade icke-adaptiva interpolatorer måste alltid öka eller minska en av ovanstående artefakter på bekostnad av de andra två – därför kommer minst en att vara synlig. Observera också hur kanthalo liknar den artefakt som uppstår vid överdriven skärpning med en oskarp mask, och förbättrar utseendet på skärpa genom att öka akutansen.

Adaptiva interpolatorer kan eller kan inte producera ovanstående artefakter, men de kan också framkalla icke-bildtexturer eller konstiga pixlar i små skalor:

Adaptiv interpolation exempelOriginal
Enlarged
220%
→
Adaptiv interpolation

Å andra sidan, kan vissa av dessa ”artefakter” från adaptiva interpolatorer också ses som fördelar. Eftersom ögat förväntar sig att se detaljer ner till de minsta skalorna i områden med fin textur, t.ex. bladverk, har det hävdats att dessa mönster lurar ögat på avstånd (för vissa motiv).

ANTI-ALYSERING

Anti-aliasering är en process som försöker minimera uppkomsten av aliaserade eller hackiga diagonala kanter, så kallade ”jaggies”. Dessa ger text eller bilder ett grovt digitalt utseende:


förstorad 300%
(Med Aliasing)

anti-aliased text 300% enlargedEnlarged 300%
(Without Aliasing)

Anti-aliasing tar bort dessa ojämnheter och ger ett utseende av jämnare kanter och högre upplösning. Det fungerar genom att ta hänsyn till hur mycket en idealisk kant överlappar intilliggande pixlar. Den aliaserade kanten avrundas helt enkelt uppåt eller nedåt utan något mellanliggande värde, medan den antialiaserade kanten ger ett värde som är proportionellt mot hur mycket av kanten som fanns inom varje pixel:

&nbsp &nbsp
Perfekt diagonal

Välj: Aliased Anti-Aliased
Resampled to Low Resolution

Ett stort hinder när man förstorar en bild är att förhindra att interpolatorn framkallar eller förvärrar aliasing. Många adaptiva interpolatorer upptäcker närvaron av kanter och justerar för att minimera aliasing samtidigt som de behåller kantskärpan. Eftersom en kant med antialias innehåller information om den kantens placering i högre upplösningar är det också tänkbart att en kraftfull adaptiv (kantdetekterande) interpolator åtminstone delvis skulle kunna rekonstruera denna kant vid förstoring.

NOTAT OM OPTISK vs. DIGITAL ZOOM

Många kompakta digitalkameror kan utföra både en optisk och en digital zoom. En kamera utför en optisk zoom genom att flytta zoomobjektivet så att det ökar förstoringen av ljuset innan det ens når den digitala sensorn. Däremot försämrar en digital zoom kvaliteten genom att helt enkelt interpolera bilden – efter det att den har förvärvats vid sensorn.

optisk zoom10X optisk zoom
digitalzoom10X digitalzoom

Även om fotot med digitalzoom innehåller samma antal pixlar är detaljrikedomen klart mycket sämre än med optisk zoom. Digital zoom bör nästan helt undvikas, om det inte hjälper till att visualisera ett avlägset objekt på kamerans LCD-förhandsgranskningsskärm. Alternativt, om du regelbundet fotograferar i JPEG och planerar att beskära och förstora fotot efteråt, har digital zoom åtminstone fördelen att interpolationen utförs innan komprimeringsartefakter uppstår. Om du upptäcker att du behöver digital zoom för ofta kan du köpa en telekonverter, eller ännu bättre: ett objektiv med längre brännvidd.

För vidare läsning kan du besöka mer specifika handledningar om:
Digital fotoutvidgning
Bildstorlek för webben och e-post

Lämna ett svar Avbryt svar

Din e-postadress kommer inte publiceras. Obligatoriska fält är märkta *

Senaste inläggen

  • Vad gör labyrintfisken annorlunda?
  • Systemiska kortikosteroider förskrivs ofta vid psoriasis
  • 5 frågor med … Melissa McGurren | RSN
  • Bibelns böcker i Nya testamentet
  • Tilapia Almondine
  • Typer av manshår: Hur man underhåller + 12 stylingidéer
  • 15 citat och slagord som påminner dig om att hålla dig borta från telefonen
  • 101 bästa konsttexter för Instagram
  • Tandvård
  • Vad är snömögel? (Och hur man blir av med den)

Arkiv

  • februari 2022
  • januari 2022
  • december 2021
  • november 2021
  • oktober 2021
  • Deutsch
  • Nederlands
  • Svenska
  • Dansk
  • Español
  • Français
  • Português
  • Italiano
  • Română
  • Polski
  • Čeština
  • Magyar
  • Suomi
  • 日本語
©2022 Saayarelo | WordPress Theme: EcoCoded