thumb|Exemplu de interpolare biliniară în pătratul unitate cu valorile și . Valorile interpolate între ele sunt reprezentate prin culori. În matematică interpolarea biliniară este o metodă de interpolare a funcțiilor de două variabile (de exemplu x și y) folosind interpolarea liniară repetată. Se aplică de obicei funcțiilor eșantionate dintr-o grilă rectilinie plană, deși poate fi generalizată la funcții definite pe vârfurile unei rețele de patrulatere convexe oarecare.

Interpolarea biliniară se efectuează folosind interpolarea liniară mai întâi într-o direcție, apoi din nou în cealaltă direcție. Deși fiecare pas este liniar față de valorile eșantionate și în poziție, interpolarea în ansamblu nu este liniară, ci mai degrabă pătratică în poziția interpolării.

Interpolarea biliniară este una dintre tehnicile de bază pentru scalarea imaginilor în grafica digitală și , unde este numită și filtrare biliniară.Anca Morar, Recapitulare EGC (laborator), Universitatea Politehnica din București, accesat 2026-03-11

Calcul thumb|Cele patru puncte roșii sunt punctele cunoscute, iar punctul verde este punctul în care se dorește interpolarea Se dorește valoarea funcției necunoscute în punctul cunoscând valoarea lui în patru puncte și

Interpolare liniară repetată Se face interpolarea liniară în direcția . Aceasta dă

Se continuă cu interpolarea în direcția . Se obține valoarea dorită:

Se obține același rezultat dacă interpolarea se face mai întâi de-a lungul direcției și apoi de-a lungul direcției .

Interpolare polinomială O metodă alternativă este de a scrie soluția problemei de interpolare ca

unde coeficienții se obțin rezolvând sistemul de ecuații liniare:

obținându-se:

Medie ponderată thumb|O vizualizare geometrică a interpolării biliniare. Produsul valorii din punctul dorit (negru) și întreaga suprafață este egal cu suma produselor valorilor din fiecare colț și suprafața parțială opusă colțului (cu aceeași culoare). Soluția poate fi scrisă și ca o a :

unde suma este ponderată la 1 și satisface sistemul liniar transpus:

obținându-se rezultatul:

care se simplifică la:

în acord cu rezultatul obținut prin interpolare liniară repetată. Mulțimea de ponderi poate fi interpretată și ca o mulțime de coordonate baricentrice generalizate pentru un dreptunghi.

Forma alternativă matricială Combinând cele de mai sus, se obține:

În pătratul unitate Dacă se ia un sistem de coordonate în care cele patru puncte în care este cunoscută sunt și atunci formula de interpolare se simplifică la:

sau, echivalent, matricial:

Aici se recunosc ponderările:

Alternativ, funcția de interpolare în pătratul unitate poate fi scrisă ca:

unde

În ambele cazuri, numărul de constante (patru) corespunde numărului de puncte date în care este cunoscută

Proprietăți thumb|upright=1.5|Interpolări uni- și bidimensionale. Punctele și /// corespund punctului interpolat, respectiv celor învecinate. Înălțimile lor față de planul de bază corespund valorilor lor. Așa cum sugerează și numele, interpolarea biliniară nu este una liniară. Însă este liniară de-a lungul direcțiilor paralele fie cu direcția fie cu direcția când respectiv sunt menținute constante. De-a lungul oricărei alte drepte, interpolarea este pătratică. Chiar dacă interpolarea nu este liniară în poziția într-un punct fix este liniară față de valorile interpolate, așa cum se poate observa în ecuațiile matriciale de mai sus.

Rezultatul interpolării biliniare este independent de care direcție a axelor este interpolată prima și care a doua. Dacă s-ar fi efectuat mai întâi interpolarea liniară în direcția și apoi cea în direcția rezultatul ar fi fost același.

Funcția de interpolare este un , care este și o funcție armonică care satisface ecuația lui Laplace. Graficul său este o zonă biliniară de tip .

Inversă și generalizare În general, funcția de interpolare va presupune orice valoare (în anvelopa convexă a valorilor vârfurilor) într-un număr infinit de puncte (formând ramuri ale hiperbolelor ), astfel că interpolarea nu este inversabilă.

Totuși, atunci când interpolarea biliniară este aplicată simultan la două funcții, cum ar fi interpolarea unui câmp vectorial, atunci, în anumite condiții, interpolarea este inversabilă. În special, această inversă poate fi utilizată pentru a găsi „coordonatele pătratului unitate” ale unui punct din interiorul oricărui patrulater convex (considerând coordonatele patrulaterului ca un câmp vectorial care este interpolat biliniar în pătratul unitate). Folosind această procedură, interpolarea biliniară poate fi extinsă la orice patrulater convex, deși calculul este semnificativ mai complicat dacă nu este un paralelogram. Aplicația rezultată între patrulatere este cunoscută sub numele de „transformare biliniară”.

Alternativ, se poate utiliza o între un patrulater și pătratul unitate, dar funcția de interpolare rezultată nu va fi biliniară.

În cazul particular în care patrulaterul este un paralelogram, există o aplicație liniară la pătratul unitate, iar generalizarea rezultă cu ușurință.

Extinderea evidentă a interpolării biliniare la trei dimensiuni se numește interpolare triliniară.

Fie un câmp vectorial interpolat biliniar pe pătratul unitate parametrizat prin . Inversarea interpolării necesită rezolvarea unui sistem de două ecuații polinomiale biliniare:

unde

Calcularea unui produs vectorial bidimensional (vezi produsul Grassmann) al sistemului cu vectori aleși cu atenție permite eliminarea termenilor:

care se dezvoltă la

unde

Ecuațiile de gradul doi pot fi rezolvate folosind formula pătratică. Discriminanții sunt:

iar soluțiile sunt:

Cazurile în care sau se tratează separat. În condițiile potrivite, una dintre cele două soluții ar trebui să fie în pătratul unitate.

Aplicații în prelucrarea imaginilor În și , interpolarea biliniară este utilizată pentru reeșantionarea imaginilor și a texturilor. Aplicarea în poziția unui pixel de pe ecran a unui punct corespunzător din se face cu un algoritm. Pixelului i se atribuie o medie ponderată a atributelor (culoare, transparență etc.) celor patru înconjurători. Acest procedeu se repetă pentru fiecare pixel care formează obiectul texturat. Bilinear interpolation, accesat 2026-03-14

Când o imagine trebuie mărită, fiecare pixel al imaginii originale trebuie mutat într-o anumită direcție pe baza constantei de scalare. Totuși, atunci când se mărește o imagine cu un factor de scară care nu este un număr întreg, există pixeli (adică „găuri”) cărora nu li se atribuie valori corespunzătoare. În acest caz, acelor „găuri” ar trebui să li se atribuie valori RGB sau tonuri de gri corespunzătoare, astfel încât imaginea rezultată să nu aibă pixeli lipsă.

Acolo unde transformarea perfectă a imaginii cu potrivirea pixelilor este imposibilă poate fi utilizată interpolarea biliniară, astfel încât să se poată calcula și atribui valori adecvate pixelilor. Spre deosebire de alte tehnici de interpolare, cum ar fi interpolarea la cel mai apropiat vecin și interpolarea bicubică, pentru a găsi valorile adecvate ale intensității culorii acelui pixel interpolarea biliniară utilizează doar valorile celor mai apropiați 4 pixeli, situați în direcții diagonale față de un pixelul respectiv.

Interpolarea biliniară ia în considerare cea mai apropiată vecinătate 2 × 2 a valorilor cunoscute ale pixelilor din jurul poziției calculate a pixelului necunoscut. Apoi, calculează o medie ponderată a acestor 4 pixeli pentru a ajunge la valoarea interpolată. "Web tutorial: Digital Image Interpolation", accesat 2026-03-14

thumb|right|alt=Bilinear interpolation|Example of bilinear interpolation in grayscale values Exemplu După cum se vede în exemplul din dreapta, valoarea intensității în pixelul calculat ca fiind situat în rândul 20,2 și coloana 14,5 poate fi calculată prin interpolarea liniară între valorile de la coloanele 14 și 15 pentru rândurile 20 și 21, rezultând:

iar apoi interpolând liniar între aceste valori, rezultă:

Acest algoritm reduce o parte din distorsiunea vizuală cauzată de redimensionarea unei imagini la un factor de scalare care nu este un întreg, spre deosebire de interpolarea la cel mai apropiat vecin, care va face ca unii pixeli să pară mai mari decât alții în imaginea redimensionată.

Simplificări prealabile Simplificarea expresiilor matematice poate reduce cerințele de putere de calcul. De exemplu, fie tabelul următor, care conține datele tabelare privind presiunea (pe coloane) și temperatura (pe rânduri), la o căutare în funcție de o anumită variabilă, :

Următorul calcul standard are 27 de operații:

Calculul de mai sus are mai multe operații repetitive, de exemplu, precum și unele rapoarte. Pentru interpolare, expresiile care se repetă pot fi calculate o singură dată și stocate în variabile temporare, ceea ce va reduce numărul de operații la 19.

Cele 19 operații individuale de mai sus pot fi reduse la 17 operații individuale folosind forma:

Note

Vezi și Interpolare bicubică Interpolare spline Interpolare triliniară

biliniară Categorie:Geometrie plană