Points d'intérêts
Cours
Comment décrire les points d'intérêts ?
- Descripteur de type patch (liste des intensités) autour du point d'intérêt. Mais, un patch n'est pas robuste à la rotation, au changement d'échelle, d'illumination ou de point de vue. Sauf si on l'impose.
- Rotation : tourner le patch dans l'axe d'orientation principale
- Échelle : trouver la bonne échelle grâce à la pyramide LoG et remettre le patch dans une taille nomralisée
- Illumination : normaliser le patch
- Point de vue : considérer que le patch a suffit une transformation affine, trouver les orientations et transformer le patch
Descripteur à base d'histogrammes
Calculer l'histogramme des orientations des gradients d'intensités. Le pic dans l'histogramme donne l'orientation princiaple. Ramener le patch vers l'orientation principale, compensation de l'orientation.
Appariement de points
On a les points d'intérêts, les descripteurs associés : comment les matcher ? Nous pouvons utiliser la méthode d'appariement des points. Soit un descripteur dans , trouver le meilleur correspondant .
- Définir la distance
- Tester tous les (ou dans un voisinage) et sélecttionner celui qui minimisent ou , un seuil.
Cependant une bonne distance peut donner un mauvais appariement. Une autre approche est de
- calculer où est le second plus proche
- des valeurs faibles de signifie des matchs ambiguës donc à rejeter
Estimation d'homographie avec RANSAC
Soit avec Ĥ^la matrice de transformation (projective)
Utiliser RANSAC : choisir un nombre d'itérations tant que :
- sélectionner 4 points appariés aléatoirement
- calculer la matrice de transformation entre ces points
- construire l'ensemble de inliers tel que
- si l'erreur commise est inférieur aux autres trouvés
- stocker les inliers
Le max des inliers est la solution du problème.
La transformée de Hough
- Soit différentes droites peuvent passer par . Ceci est équivalent à avoir différents couples
- La transformée de Hough permet de trouver les lignes qui intersectent le plus de points possibles.
L'algorithme de Hough est le suivant : initialiser à zéro
- pour tout point de contour dans
- pour tout , calculer et
- Trouver les où est un maximum local
- La ligne détectée est donnée par
Détecteur de Harris
avec
est symétrique donc décomposable en vecteur / valeur propres