Tesi Robotica Analisi, progettazione e implementazione... | Page 44

i i “LP_Tesi” — 2013/10/17 — 18:27 — page 44 — #44 i 44 i 1. APPROCCIO CLASSICO quadrati degli elementi della matrice sia pari a uno. Al fine di trovare una buona soluzione è importante la scelta della soluzione iniziale. Una buona soluzione iniziale è data passando alle coordinate omogenee e calcolando una soluzione minimizzando l’errore algebrico. Chiaramente non si sta ottimizzando la vera funzione obiettivo, ma questa soluzione è utilizzata come punto iniziale per ottimizzare iterativamente la vera funzione obiettivo. Passando in coordinate omogenee la trasformazione diventa lineare      xi φ1,1 φ1,2 φ1,3 ui λ  yi  = φ2,1 φ2,2 φ2,3   vi  1 φ3,1 φ3,2 φ3,3 1 Considerando che punti bidimensionali rappresentati in coordinate omogenee corrispondono a delle direzioni l’equazione precedente ci dice che le direzioni ˜ ˜ xi e Ωwi devono essere parallele, il che corrisponde a richiedere che il loro ˜ ˜ prodotto vettoriale sia pari al vettore nullo xi × Ωwi = 0. Esplicitando i vincoli si ottengono tre equazioni   y (φ3,1 u + φ3,2 v + φ3,3 ) − (φ2,1 u + φ2,2 v + φ2,3 )  (φ1,1 u + φ1,2 v + φ1,3 ) − x (φ3,1 u + φ3,2 v + φ3,3 )  = 0 x (φ2,1 u + φ2,2 v + φ2,3 ) − y (φ1,1 u + φ1,2 v + φ1,3 ) solo due delle quali sono linearmente indipendenti. La terza equazione di conseguenza viene scartata ed in seguito viene costruito un grande sistema prendendo in modo simile i primi due vincoli per ogni coppia di osservazioni. Il sistema può essere riscritto come     φ1,1 0 0 0 −u1 −v1 −1 y1 u1 y1 v1 y1 φ1,2     u1 v1 1 0 0 0 −x1 u1 −x1 v1 −x1  φ1,3      0 0 0 −u2 −v2 −1 y2 u2 y2 v2 y2  φ2,1      u2 v2 1 0 0 0 −x2 u2 −x2 v2 −x2  φ2,2  = 0    . . . . . . . . .  φ  . . . . . . . .   2,3   . . . . . . . . . .       0 0 0 −uN −vN −1 yN uN y N vN yN  φ3,1  φ3,2  uN vN 1 0 0 0 −xN uN −xN vN −xN φ3,3 che ha la forma di Aφ = 0. Questo sistema può essere risolto nel senso dei minimi quadrati soggetto al vincolo che φT φ = 1 calcolando la SVD A = i i i i