L'interpolation bilinéaire utilisée est un schéma itératif qui implique de mapper une cellule quadrilatère sur une cellule carrée de coordonnées (0,0), (1,0), (0,1) et (1,1).
Les coordonnées longitudinales et latitudinales du point 1 sont
, celles du point 2
, etc.
Définissons
et
les coordonnées locales continues telles que les coordonnées du point 1 sont (0,0), du point 2 (1,0), du point 3 (1,1) et du point 4 (0,1).
Si le point
est dans la cellule formée par les quatre points précédents, la fonction
au point
peut être approximée par :
Déterminer les poids revient donc à calculer
et
au point
.
Les coordonnées longitudinales et latitudinales
du point
sont connues et peuvent être approximées par :
Comme ce système (2.4) est non linéaire en
et
, il faut linéariser
et itérer autour de la solution.
En différenciant (2.4), le système suivant (2.5) est obtenu.
avec
En inversant le sytème,
et
En démarrant avec une condition initiale pour
et
(par exemple
),
les équations (2.7) et (2.8) peuvent être résoluent par itérations
jusqu'à ce que
et
soient suffisament petits.
Les poids peuvent alors être calculés à partir de l'équation (2.3).
À noter que pour une grille simple en longitude-latitude, le système converge à la première itération.
![]() |
La mise en oeuvre est bien entendue un peu plus lourde que pour le plus proche voisin, mais il ne se crée plus de paliers lors du sur-échantillonnage. Le passage d'un niveau à un autre est dans ce cas linéaire, mais les discontinuités d'ordre 1 (gradient) sont conservées sous la forme d'arêtes. En contrepartie, des niveaux intermédiaires sont ajoutés dans la dynamique. Néanmoins, dans le cas du sous-échantillonnage, la prise en compte des quatre voisins rend la méthode moins sensible au bruit qu'avec le plus proche voisin.
Nicolas Daget 2006-03-21