El algoritmo fue publicado por primera vez por David Lowe en 1999[1] pero lo describió completamente[2] y patentó[3] en Estados Unidos en 2004.
Esto último garantiza que dichos puntos se puedan detectar de forma confiable y con mucha exactitud al realizar esta tarea de forma repetitiva.
La primera etapa es aplicar la differencia gaussiana con distintos tamaños de región
y buscar máximos locales a lo largo tanto del espacio —determinado por las coordenadas
dada la diferencia gaussiana da una fuerte respuesta para esquinas de tamaño tal que encaja con dicha escala.
Además la diferencia gaussiana también da un fuerte respuesta en los bordes, por lo que éstos deben ser eliminados.
Entonces se hace un histograma de dichas direcciones ponderado por la magnitud del gradiente.
El mayor pico en el histograma indica la orientación del punto de interés.
Por eso se calcula la razón entre la distancia al más cercano y al segundo más cercano y si ésta está por encima de cierto umbral, los puntos son descartados