Wanneer een digitale afbeelding wordt geschaald, gedraaid of perspectivisch gecorrigeerd, vallen pixels in de output niet meer één-op-één samen met pixels in de bron. Interpolatie is het wiskundige proces waarmee wordt geschat welke kleur elke nieuwe pixel moet krijgen, op basis van de kleuren van zijn buren in de oorspronkelijke afbeelding. De keuze van algoritme heeft een grote invloed op het visuele resultaat.
Veelgebruikte algoritmen
Nearest-Neighbor
Elke outputpixel neemt exact de waarde over van de ene dichtstbijzijnde bronpixel. Er vindt geen blending plaats, dus er ontstaan geen nieuwe kleuren. Dit levert blokkerige, gealiaste resultaten op voor fotografische beelden, maar is ideaal voor pixel art — het behoudt de harde randen en exacte kleurenpalet die het medium definiëren. De Canvas API biedt dit via imageSmoothingEnabled = false, en CSS via image-rendering: pixelated.
Bilinear
Neemt het gemiddelde van de vier dichtstbijzijnde bronpixels, gewogen op basis van afstand. Levert vloeiende resultaten met een matige blur. De standaard voor de meeste Canvas 2D-scaling en CSS-transforms. Geschikt voor matige upscaling van fotografische content.
Bicubic
Bekijkt 16 omliggende pixels (4×4 raster) met behulp van kubische polynomiale weging. Levert scherpere resultaten dan bilinear met minder artefacten. De standaard in beeldbewerkingssoftware zoals Photoshop. Rekenkundig zwaarder, maar geeft de beste kwaliteit bij het verkleinen van fotografische beelden.
Lanczos
Gebruikt een windowed sinc-functie en samplet doorgaans uit een 6×6- of 8×8-omgeving. Levert de scherpste resultaten en behoudt de meeste fijne details bij het verkleinen. Wordt gebruikt in professionele beeldverwerking, maar is te rekenintensief voor real-time rendering in de browser.
Rol in beeldanalyse
De keuze van interpolatie beïnvloedt direct de nauwkeurigheid van palette-extractie. Wanneer een afbeelding wordt downsampled voor analyse, introduceert een smoothing-algoritme (bilinear/bicubic) tussentinten die niet in het origineel voorkomen — waardoor het aantal unieke kleuren kunstmatig kan toenemen. Daarom gebruikt onze analysepipeline nearest-neighbor-downsampling: zo bevat het geanalyseerde canvas alleen kleuren die in de bron aanwezig zijn, ook al is de ruimtelijke ordening iets minder precies.
