Tesi Robotica Algoritmi ed architetture per la risoluzione di... | Page 42
2.1. SIFT
42
1
m(x, y) = [(L(x + 1, y) ≠ L(x ≠ 1, y))2 + (L(x, y + 1) ≠ L(x, y ≠ 1))2 ] 2
e
◊(x, y) = tan≠1 ((L(x, y + 1) ≠ L(x, y ≠ 1))/(L(x + 1, y) ≠ L(x ≠ 1, y)))
2.1.3
Keypoint descriptor
Il passo successivo, consiste nel determinare un descriptor per una regione dell’immagine. Quest’ultima deve essere abbastanza distinguibile e deve rimanere
invariante alle variazioni, quali il cambiamento di illuminazione e il punto di
vista.
Un’approccio canonico consiste nel campionare l’intensità dell’immagine attorno ad un keypoint rispetto ad un’opportuna scala e nel fare matching si adotta
una correlazione normalizzata. Per ottenere l’invarianza nella rotazione, le coordinate dei descriptor e le orientazioni dei gradienti sono state ruotate in accordo
con l’orientazione del keypoint. I gradienti sono rappresentati con piccole frecce in corrispondenza della locazione di ogni campione. Il motivo per cui viene
usata la gaussiana è quello di evitare improvvisi cambiamenti nel descrittore,
nel caso ci siano spostamenti anche modesti nella posizione della finestra e di
cercare di non considerare i gradienti lontani dal centro del descrittore.
Il descrittore è formato da un vettore contenente il valore di tutti gli istogrammi
orientati in ingresso. Per ridurre gli e etti che sono provocati dai cambiamenti
di illuminazione, si modifica il vettore delle features. Il vettore è stato normalizzato all’unità di lunghezza e tale normalizzazione serve a cancellare un
cambiamento nel contrasto dell’immagine, dove i pixel e i gradienti sono moltiplicati per la stessa costante. Invece un cambiamento nella luminosità, dove una
costante viene sommata a ciascun pixel dell’immagine, non cambierà i valori dei
gradienti. Si può quindi a ermare che il descriptor rimane invariante per piccoli
cambiamenti dell’illuminazione.