Bilinear interpolering: Återuppsöka bildens cellstorlek med 4 närmaste grannar
Vad är bilinjär interpolation?
När du samplar om eller projicerar om data kan du behöva interpolera dina data.
De vanligaste operatörerna för sampling är bilinjär interpolation, kubisk konvolution och närmaste granne.
I dag fokuserar vi på bilinjär interpolation, som uppskattar en utdatayta med fyra kända värden.
Hur skiljer den sig från de andra interpolationsteknikerna? Låt oss ta en titt.
När använder du bilinjär interpolation?
Innan vi gör en djupgående förklaring av bilinjär interpolation är det viktigt att veta varför du skulle använda den i första hand.
Temperaturgradienter raster, digitala höjdmodeller, årliga nederbördsgaller, bulleravståndsraster – dessa är alla potentiella exempel på när interpolation kan användas för att sampla om bilder. Varje exempel har värden som varierar kontinuerligt från cell till cell för att bilda en yta.
Här är ett par exempel på när du kan använda bilinjär interpolation:
- När du samplar om dina data från en cellstorlek till en annan ändrar du cellstorleken och skulle behöva interpolation.
- När du projicerar dina rasterdata till ett annat koordinatsystem ändrar du konfigurationen och återskapar dina data
I båda dessa fall skulle du använda en återskapningsteknik. För när du har ett inmatningsraster, hur vet utmatningsrastret vilka celler det ska basera utmatningen på om inmatningscellerna inte stämmer överens?
Du måste välja en återskapningsteknik som t.ex. bilinjär interpolation, kubisk konvolution eller närmaste granne.
Hur bilinjär interpolation fungerar
Bilinjär interpolation är en teknik för att beräkna värden för en rutnätsplats baserat på närliggande rutnätceller. Den viktigaste skillnaden är att den använder de FYRA närmsta cellcentrumen.
Med hjälp av de fyra närmsta granncellerna tilldelar bilinjär interpolation värdet på utgångscellen genom att ta det viktade medelvärdet. Den tillämpar vikter baserat på avståndet mellan de fyra närmsta cellcentren och jämnar ut det utgående rastergallret.
Det rekommenderas att använda bilinjär interpolation för kontinuerliga datamängder utan distinkta gränser. Ytan måste vara kontinuerlig och de närmaste punkterna måste vara relaterade.
När du kör processen genererar den en jämnare yta, men inte lika allvarlig som kubisk konvolution som använder 16 grannceller. Utgångsrastret tar bara fyra närmaste cellcentra och tillämpar ett medelvärde med hjälp av avstånd.
Varför använda bilinjär interpolation?
Den viktigaste skillnaden i bilinjär interpolation är att den använder 4 närmaste grannar för att generera en utgångsyta.
Å andra sidan använder kubisk konvolution 16 närmaste grannar, vilket slätar ut ytan mer så.
Bilinjär interpolation förutsätter att indata är kontinuerlig.
Denna resamplingmetod använder ett avståndsgenomsnitt för att skatta där närmare celler ges högre vikt.