introduction : tenseur trifocale - igm.univ-mlv.frigm.univ-mlv.fr/~vnozick/teaching/slides/ensg/07...
Post on 14-Sep-2018
225 Views
Preview:
TRANSCRIPT
Tenseur Tenseur trifocal Calcul Transfert Normalisation
Tenseur trifocale
Vincent Nozick
Vincent Nozick Tenseur trifocale 1 / 25
Tenseur Tenseur trifocal Calcul Transfert Normalisation
Tenseur
Introduction :
• un tenseur T est une sorte de matrice a 3 dimension.
• T ijk represente l’element i, j, k de T .
Vincent Nozick Tenseur trifocale 2 / 25
Tenseur Tenseur trifocal Calcul Transfert Normalisation
Tenseur
Convention de sommation d’Einstein :
Vincent Nozick Tenseur trifocale 3 / 25
Tenseur Tenseur trifocal Calcul Transfert Normalisation
Tenseur
Notation tensorielle :convention de repetition : les indices constituent eux-meme l’indicationde la repetition.
xiyi ↔n∑
i=1
xiyi
ou n est la taille des vecteurs x et y.
Vincent Nozick Tenseur trifocale 4 / 25
Tenseur Tenseur trifocal Calcul Transfert Normalisation
Tenseur
Notation tensorielle :
• exemple 1 :
y = cixi ↔ y =
3∑i=1
cixi ↔ y = c1x
1 + c2x2 + c3x
3
• exemple 2 :
Aiixj ↔ A11x
j +A22xj + · · ·+Annx
j
l’indice j n’etant pas repete, il s’agit d’un indice sur lequel iln’y a pas de repetition a effectuer.
Vincent Nozick Tenseur trifocale 5 / 25
Tenseur Tenseur trifocal Calcul Transfert Normalisation
Tenseur
Notation tensorielle :
aijxj = bi
avec n = 3 represente le systeme d’equation :a11x
1 + a12x2 + a13x
3 = b1
a21x1 + a22x
2 + a23x3 = b2
a31x1 + a32x
2 + a33x3 = b3
Vincent Nozick Tenseur trifocale 6 / 25
Tenseur Tenseur trifocal Calcul Transfert Normalisation
Tenseur
Notation tensorielle :En resume, toute expression qui comporte plusieurs occurrences d’unindice represente une repetition sur toutes les valeurs possibles del’indice en question.
Vincent Nozick Tenseur trifocale 7 / 25
Tenseur Tenseur trifocal Calcul Transfert Normalisation
Tenseur trifocal
Introduction :
• il s’agit d’un tenseur 3× 3× 3.
• il etablit une relation geometrique entre 3 images.(cf. geometrie epipolaire pour 2 images)
Vincent Nozick Tenseur trifocale 8 / 25
Tenseur Tenseur trifocal Calcul Transfert Normalisation
Tenseur trifocal
Trois images :
Vincent Nozick Tenseur trifocale 9 / 25
Tenseur Tenseur trifocal Calcul Transfert Normalisation
Tenseur trifocal
Au moins 7 points de correspondance :
Vincent Nozick Tenseur trifocale 10 / 25
Tenseur Tenseur trifocal Calcul Transfert Normalisation
Tenseur trifocal
Transfert :
Vincent Nozick Tenseur trifocale 11 / 25
Tenseur Tenseur trifocal Calcul Transfert Normalisation
Tenseur trifocal
Interpretation geometrique :
Vincent Nozick Tenseur trifocale 12 / 25
Tenseur Tenseur trifocal Calcul Transfert Normalisation
Tenseur trifocal
Relation tensorielle :Soient un ensemble de points de correspondances x ↔ x′ ↔ x′′,le tenseur trifocal T satisfait la relation :
xix′jx′′kεjqsεkrtTqri = 0st
εrst est defini pour r, s, t = 1, ..., 3 :
εrst =
0 sauf si r, s et t sont differents+1 si rst est une permutation impaire de 123−1 si rst est une permutation paire de 123
Vincent Nozick Tenseur trifocale 13 / 25
Tenseur Tenseur trifocal Calcul Transfert Normalisation
Tenseur trifocal
Relation tensorielle :
xix′jx′′kεjqsεkrtTqri = 0st
En developpant εjqs et εkrt, on obtient :
xk(x′ix′′mT jlk − x
′jx′′mT ilk − x′ix′′lT
jmk + x′jx′′lT im
k ) = 0ijlm
Vincent Nozick Tenseur trifocale 14 / 25
Tenseur Tenseur trifocal Calcul Transfert Normalisation
Tenseur trifocal
xk(x′ix′′mT jlk − x
′jx′′mT ilk − x′ix′′lT
jmk + x′jx′′lT im
k ) = 0ijlm
Remarques :
• la notation 0ijlm renseigne sur quelles variables il faut faire unerepetition d’equation.
• k n’en fait pas parti ⇒ la boucle des k est doit s’effectuer surune equation alors que les autres variables generent de nouvellesequations.
Vincent Nozick Tenseur trifocale 15 / 25
Tenseur Tenseur trifocal Calcul Transfert Normalisation
Tenseur trifocal
xk(x′ix′′mT jlk − x
′jx′′mT ilk − x′ix′′lT
jmk + x′jx′′lT im
k ) = 0ijlm
Remarques :
• pour i = j ou l = m, on obtient les memes equations.
• permuter i et j (ou l et m) : seulement changement de signe.
⇒ on fixe j = m = 3
⇒ on fait varier i et l de 1 a 2.
⇒ la variable k varie de 1 a 3 (sans generer de nouvelles equations).
→ xk(x′ix′′3T 3lk − x′3x′′3T il
k − x′ix′′lT 33k + x′3x′′lT i3
k ) = 0il
Vincent Nozick Tenseur trifocale 16 / 25
Tenseur Tenseur trifocal Calcul Transfert Normalisation
Tenseur trifocal
xk(x′ix′′3T 3lk − x′3x′′3T il
k − x′ix′′lT 33k + x′3x′′lT i3
k ) = 0il
Nombre d’equations :
• tenseur : 27 elements ⇒ 26 dof apparents
• en pratique, le tenseur n’a que 18 dof
• si on defini 18 parametres, on trouve les 27 elements.• un tenseur est defini par les 18 elements necessaires pour
parametrer les 3 cameras qu’il represente.
• + quelques simplifications de notation tensorielles
⇒ au minimum 7 points de correspondance
Vincent Nozick Tenseur trifocale 17 / 25
Tenseur Tenseur trifocal Calcul Transfert Normalisation
Tenseur trifocal
Equations :
xk(x′ix′′3T 3lk − x′3x′′3T il
k − x′ix′′lT 33k + x′3x′′lT i3
k ) = 0il
p i l1 1 11 1 21 2 11 2 2
.
.
.
.
.
.
.
.
.n 2 2
−x′31 x′′3
1 0 x′31 x′′1
1 · · · · · · −x31x
′11 x′′1
1
0 −x′31 x′′3
1 0 · · · · · · −x31x
′11 x′′2
1
0 0 0 · · · · · · −x31x
′21 x′′l
1
0 0 0 · · · · · · −x31x
′21 x′′3
1
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
0 0 0 · · · · · · −x3nx′2
n x′′2n
T111
T121
T131
T211
T221
.
.
.
.
.
.
.
.
.
T333
=
0
0
0
.
.
.
.
.
.
0
→ on resout avec la SVD.
Vincent Nozick Tenseur trifocale 18 / 25
Tenseur Tenseur trifocal Calcul Transfert Normalisation
Transfert
Transfert :
xk(x′ix′′3T 3lk − x′3x′′3T il
k − x′ix′′lT 33k + x′3x′′lT i3
k ) = 0il
Maintenant, les inconnues sont :
• les x connaissant les x′ et les x′′ et T
• les x′ connaissant les x et les x′′ et T
• les x′′ connaissant les x et les x′ et T
Vincent Nozick Tenseur trifocale 19 / 25
Tenseur Tenseur trifocal Calcul Transfert Normalisation
Transfert
Resolution :
xk(x′ix′′3T 3lk − x′3x′′3T il
k − x′ix′′lT 33k + x′3x′′lT i3
k ) = 0il
En faisant varier i et l de 1 a 2 et k de 1 a 3→ 4 equations a 3 inconnues.→ on resout avec la SVD.
Vincent Nozick Tenseur trifocale 20 / 25
Tenseur Tenseur trifocal Calcul Transfert Normalisation
Normalisation
Conditionnement des donnees :
• donnees centrees et normees
• calcul du tenseur
• transformation du tenseur↪→ compatibilite avec les donnees de depart
Vincent Nozick Tenseur trifocale 21 / 25
Tenseur Tenseur trifocal Calcul Transfert Normalisation
Normalisation
Normalisation des donnees :on cherche pour chaque image les homographies H, H ′ et H ′′ per-mettant de centrer et de normer les points de correspondance xi,x′i et x′′i .
On cherche H tel que xi 7→ xi = Hxi avec :
• les xi soient centres en (0, 0, 1)>
• la distance moyenne des points a l’origine soit√
2
Le but etant que “le point moyen” soit (1, 1, 1)>.
Vincent Nozick Tenseur trifocale 22 / 25
Tenseur Tenseur trifocal Calcul Transfert Normalisation
Normalisation
Homographies : xi 7→ xi = Hxi
H = HdHc
avec
Hd =
√2d 0 0
0√2d 0
0 0 1
et Hc =
1 0 −(xi)x
0 1 −(xi)y
0 0 1
• (xi)x : valeurs moyennes des xi
• (xi)y : valeurs moyennes des yi
• d = 1n
∑ni
√(xi − xi)2 + (yi − yi)2
Vincent Nozick Tenseur trifocale 23 / 25
Tenseur Tenseur trifocal Calcul Transfert Normalisation
Normalisation
Calcul du tenseur :
• on centre et norme les xi, x′i et x′′i avec les H, H ′ et H ′′
• on calcul le tenseur T avec la methode standard
• on denormalise le tenseur avec :
T jki = HirH
′−1js H ′′−1kt T st
r
Vincent Nozick Tenseur trifocale 24 / 25
Tenseur Tenseur trifocal Calcul Transfert Normalisation
Normalisation
Algorithm 1: Algorithme lineaire normalise
input: n ≥ 7 points de correspondance xi, x′i et x′′i entre 3 vues.
trouver les homographies H, H ′ et H ′′
transformer les points selon :xi 7→ xi = Hxi
x′i 7→ x′i = H ′x′ix′′i 7→ x′′i = H ′′x′′i
calculer le tenseur T avec les points xi, x′i et x′′i
calculer T avec l’equation T jki = HirH
′−1js H ′′−1kt T st
r
return T
Vincent Nozick Tenseur trifocale 25 / 25
top related