L'interpolation bicubique

Pour une interpolation polynômiale d'ordre encore supérieur, on trouve la méthode dite bicarrée. Elle impose cependant des conditions dissymétriques dans les champs qui lui font préférer un ordre trois : l'interpolation bicubique.

Elle consiste à attribuer à chaque point cible une combinaison polynômiale cubique des douze (parfois seize) points sources les plus proches de son antécédent par la transformation inverse.

Comme en bilinéaire, on tient non seulement directement compte de l'intensité des quatre points les plus proches, mais également du gradient.

Les détails mathématiques de cette interpolation sont expliqués dans le cas monodimensionnel dans la section 3.1 consacrée au spline cubique.

En définissant $\alpha$ et $\beta$ comme dans la section précédente (section 2.1.3), la fonction $f$ au point $P$ peut être approximée par :


$\displaystyle f_P$ $\textstyle =$ $\displaystyle (1-\beta^2(3-2\beta))(1-\alpha^2(3-2\alpha)) f(i,j)$  
  $\textstyle +$ $\displaystyle (1-\beta^2(3-2\beta))\alpha^2(3-2\alpha) f(i+1,j)$  
  $\textstyle +$ $\displaystyle \beta^2(3-2\beta)\alpha^2(3-2\alpha) f(i+1,j+1)$  
  $\textstyle +$ $\displaystyle \beta^2(3-2\beta)(1-\alpha^2(3-2\alpha)) f(i,j+1)$  
  $\textstyle +$ $\displaystyle (1-\beta^2(3-2\beta))\alpha(\alpha-1)^2 \frac{\partial f}{\partial i}(i,j)$  
  $\textstyle +$ $\displaystyle (1-\beta^2(3-2\beta))\alpha^2(\alpha-1) \frac{\partial f}{\partial i}(i+1,j)$  
  $\textstyle +$ $\displaystyle \beta^2(3-2\beta)\alpha^2(\alpha-1) \frac{\partial f}{\partial i}(i+1,j+1)$  
  $\textstyle +$ $\displaystyle \beta^2(3-2\beta)\alpha(\alpha-1)^2 \frac{\partial f}{\partial i}(i,j+1)$  
  $\textstyle +$ $\displaystyle \beta(\beta-1)^2(1-\alpha^2(3-2\alpha)) \frac{\partial f}{\partial j}(i,j)$  
  $\textstyle +$ $\displaystyle \beta(\beta-1)^2\alpha^2(3-2\alpha) \frac{\partial f}{\partial j}(i+1,j)$  
  $\textstyle +$ $\displaystyle \beta^2(\beta-1)\alpha^2(3-2\alpha) \frac{\partial f}{\partial j}(i+1,j+1)$  
  $\textstyle +$ $\displaystyle \beta^2(\beta-1)(1-\alpha^2(3-2\alpha)) \frac{\partial f}{\partial j}(i,j+1)$  
  $\textstyle +$ $\displaystyle \alpha(\alpha-1)^2\beta(\beta-1)^2 \frac{\partial^2f}{\partial i \partial j}(i,j)$  
  $\textstyle +$ $\displaystyle \alpha^2(\alpha-1)\beta(\beta-1)^2 \frac{\partial^2f}{\partial i \partial j}(i+1,j)$  
  $\textstyle +$ $\displaystyle \alpha^2(\alpha-1)\beta^2(\beta-1) \frac{\partial^2f}{\partial i \partial j}(i+1,j+1)$  
  $\textstyle +$ $\displaystyle \alpha(\alpha-1)^2\beta^2(\beta-1) \frac{\partial^2f}{\partial i \partial j}(i,j+1)$ (2.9)

De la même manière que pour l'interpolation bilinéaire, en différanciant et en itérant autour de la solution, le système peut être approximé. À la différence notable qu'il faut connaître les dérivées secondes de la fonction $f$. Ce qui est expliqué dans le cas monodimensionnel du spline cubique dans la section 3.1.

Figure 2.4: Représentation en élévation du champs de la figure 2.1 reéchantillonnée à 45x45 par la méthode du bicubique.
\includegraphics[width=0.8\textwidth]{figure24.eps.gz}

Avec l'interpolaiton bicubique, on étend les propriétés intéressantes de l'interpolation bilinéaire en y ajoutant la continuité du gradient. La prise en compte des tangentes permet en effet de conserver une grande régularité d'un bloc de quatre points à un autre bloc contigu. Cependant, non seulement des niveaux intermédiaires peuvent être créés comme en bilinéaire, mais encore, la dynamique du champs est augmentée : ce phénomène est justement dû à la prise en compte des tangentes. Elle donne une certaine inertie dans la variation des niveaux, d'où un dépassement de la dynamique originale aux valeurs limites.

Nicolas Daget 2006-03-21