SIFT et SURF

Mise en correspondance de points d'intérêts SIFT - image Wikipédia

La détection de points d’intérêt dans les images est de plus en plus utilisé afin de facilité de nombreuses tâches : reconnaissance d’objet, assemblage d’images, modélisation 3D, la recherche d’image par le contenu, le tracking video, etc. Les points clés extraits d’une image permettent de caractériser cette image. En comparant les points clés d’une image et ceux d’une autre image, on peut alors déduire si des informations communes sont présentes dans ces deux images.

Création d'un panorama en assemblant 2 à 2 des images à l'aide de SIFT - image Wikipédia

Paru en 1999, le descripteur SIFT [1] est le plus couramment utilisé pour l’extraction de points clés. Ce qui a fait le succès de ce descripteur, c’est qu’il est peu sensible au changement d’intensité, de mise à l’échelle et de rotation, ce qui fait de lui un descripteur très robuste. Il est basé sur les différences de gaussiennes. L’article Wikipédia est très bien détaillé d’un point de vue scientifique.

Un peu plus récemment (2006 et 2008), une variante appelé SURF [2] est apparue. Le principal avantage de cette technique est que l’extraction des points d’intérêts se fait plus rapidement, notamment grâce à l’utilisation d’images intégrales. Les points d’intérêt ne sont pas extraits exactement de la même manière que SIFT et ne sont pas non plus caractérisé de la même manière. Une étude comparative [3] met en évidence les avantages et inconvénient de SIFT, PCA-SIFT et SURF grâce au tableau suivant :

Méthode Temps échelle Rotation Flou Illumination Affine
SIFT normal meilleur meilleur meilleur normal bon
PCA-SIFT bon normal bon normal bon bon
SURF meilleur bon normal bon meilleur bon

J’utilise actuellement dans mes travaux de thèse l’implémentation OpenCV de SURF pour faire de la détection de logo, de carte d’identité et plus généralement de sous-images dans les images.

Références :

[1] David G. Lowe, « Object recognition from local scale-invariant features »,  Proceedings of the International Conference on Computer Vision, vol. 2, 1999, p. 1150–1157.

[2] Herbert Bay, Tinne Tuytelaars et Luc Van Gool, « SURF: Speeded Up Robust Features », Proceedings of the European Conference on Computer Vision, 2006, p. 404-417.

[3] Juan L., Gwun O., « A comparison of sift, pca-sift and surf », International Journal of Image Processing (IJIP), 2010.

9 réflexions au sujet de « SIFT et SURF »

  1. Ping : Pixel shaker » Un nouveau blog en analyse et traitement d’image, par Olivier Augereau:

  2. slt
    pouvez-vous m’envoyer des exemples ou des tutoriels sur la reconnaissance des objets on utilisant SIFT dans c# ,car je suis nouveau dans ce domaine.
    merci d’avance

    • Chaque point est décrit par un vecteur à 128 dimensions.
      L’ensemble des points d’une image est souvent exprimé sous forme de matrice à 128 colonne où chaque ligne est un point et chaque une des 128 dimensions du descripteur.

  3. En quoi consiste exactement la «méthode de surf »?
    quelqu’un peut-il m’aider à comprendre la méthode de surf ..
    Je ne comprends pas la fonction  » feature detection » pour extraire les points d’intérêt (de la matrice de Hesse,filtre Laplacian of Gaussian, ect)

  4. Salut;
    Je veux savoir comment faire pour exécuter cette méthode en C#, j’ai fais la configuration de EmguCV et j’ai créé la classe de Sift mais comment faire pour l’appeler autrement dit le programme main va contenir quoi???
    Merci pour votre aide .

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *


− quatre = 4

Vous pouvez utiliser ces balises et attributs HTML : <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>