La normalisation est fondamentalement un préconditionnement pour diminuer le nombre de conditions de la matrice (plus le nombre de conditions est grand, plus la matrice est proche de la matrice singulière).UNE
La transformée de normalisation est également représentée par une matrice dans le cas de l'estimation d'homographie, ce qui peut être utilisé comme une bonne matrice de préconditionneur. La raison en est plus élaborée et est expliquée brièvement dans le livre H&Z (4.4.4, p. 107: Pourquoi la normalisation est-elle essentielle? ) Ou plus en détail dans l'article " En défense de l'algorithme à huit points" ".
En termes simples, la matrice est constituée de produits de coordonnées d'image qui peuvent avoir des échelles différentes. Si l'échelle diffère d'un facteur , les produits diffèrent d'un facteur .UNEdixdix2
Les données de coordonnées source et cible sont généralement bruyantes . Sans normalisation, les données de la source pourraient avoir une variance de deux ordres de grandeur plus grande que celle de la cible (ou vice versa).
L'estimation d'homographie trouve généralement des paramètres dans le sens des moindres carrés - par conséquent, la meilleure estimation statistique n'est trouvée que si les variances des paramètres sont les mêmes (ou connues à l'avance, mais il est plus pratique de normaliser simplement l'entrée).
Les solveurs directs n'aiment pas les problèmes mal mis à l'échelle car des instabilités numériques apparaissent (par exemple, la division d'un très grand nombre par un très petit nombre conduit facilement à un débordement numérique).
Les solveurs itératifs luttent avec des matrices mal conditionnées en nécessitant plus d'itérations.
La normalisation est donc essentielle non seulement pour la stabilité numérique, mais aussi pour une estimation plus précise en présence de bruit et une solution plus rapide (en cas de solveur itératif).