The Eight-Point Algorithm
COMPSCI 527 — Computer Vision
COMPSCI 527 — Computer Vision The Eight-Point Algorithm 1 / 17
The Eight-Point Algorithm COMPSCI 527 Computer Vision COMPSCI 527 - - PowerPoint PPT Presentation
The Eight-Point Algorithm COMPSCI 527 Computer Vision COMPSCI 527 Computer Vision The Eight-Point Algorithm 1 / 17 Outline 1 Summary: The Epipolar Constraint 2 The Eight-Point Algorithm: t , R 3 Triangulation: P m 4 Bundle Adjustment
The Eight-Point Algorithm
COMPSCI 527 — Computer Vision
COMPSCI 527 — Computer Vision The Eight-Point Algorithm 1 / 17
Outline
1 Summary: The Epipolar Constraint 2 The Eight-Point Algorithm: t, R 3 Triangulation: Pm 4 Bundle Adjustment
COMPSCI 527 — Computer Vision The Eight-Point Algorithm 2 / 17
Summary: The Epipolar Constraint
Summary: The Epipolar Constraint
epipolar plane projection ray projection ray baseline e p i pThe two projection rays and the baseline are coplanar for corresponding points
, b = bpb , R = aRb , t = atb , e = aeb
where E = R [t]×
λTx = 0 with λT = bTE
COMPSCI 527 — Computer Vision The Eight-Point Algorithm 3 / 17
1 How tocompute E
2 How to break
up E into R E
O
O O
Summary: The Epipolar Constraint
The Structure of E
[t]×t = t ⇥ t = 0 t ⇥ v 6= 0 if v is not parallel to t
are the same
COMPSCI 527 — Computer Vision The Eight-Point Algorithm 4 / 17
TEe
E REE
Summary: The Epipolar Constraint
The Structure of E
(geometric definition of cross product)
mapped to a circle
COMPSCI 527 — Computer Vision The Eight-Point Algorithm 5 / 17
HIEIr E II
HEH
T
ft
UI VT
g
E R
T
Summary: The Epipolar Constraint
A Fundamental Ambiguity
specifics of the formulation
COMPSCI 527 — Computer Vision The Eight-Point Algorithm 6 / 17
Summary: The Epipolar Constraint
Switching Cameras
aT ET b = 0
and column space
b aEb ⇠ UΣV T =
⇥ u1 u2 u3 ⇤ diag(1, 1, 0) ⇥ v1 v2 v3 ⇤T
COMPSCI 527 — Computer Vision The Eight-Point Algorithm 7 / 17
be Eb
Summary: The Epipolar Constraint
Next Problem: How to Find E?
bT E a = 0
COMPSCI 527 — Computer Vision The Eight-Point Algorithm 8 / 17
The Eight-Point Algorithm: t, R
The Eight-Point Algorithm
1 E a1 = 0, . . ., bT n E an = 0 for E
COMPSCI 527 — Computer Vision The Eight-Point Algorithm 9 / 17
H
ein
BASELINE
The Eight-Point Algorithm: t, R
Rewriting the Epipolar Constraint
bT E a = 0 ⇥ b1 b2 b3 ⇤ 2 4 e11 e12 e13 e21 e22 e23 e31 e32 e33 3 5 2 4 a1 a2 a3 3 5 = 0 a1b1e11 + a1b2e21 + a1b3e31+ a2b1e12 + a2b2e22 + a2b3e32+ a3b1e13 + a3b2e23 + a3b3e33 = 0
⇥ a1b1 a1b2 a1b3 a2b1 a2b2 a2b3 a3b1 a3b2 a3b3 ⇤ 2 6 6 6 6 6 6 6 6 6 6 6 4 e11 e21 e31 e12 e22 e32 e13 e23 e33 3 7 7 7 7 7 7 7 7 7 7 7 5 = 0
cTη = 0
mη = 0 for m = 1, . . . , n
COMPSCI 527 — Computer Vision The Eight-Point Algorithm 10 / 17
up
8
The Eight-Point Algorithm: t, R
Solving for E
cT
mη = 0 for m = 1, . . . , n
Cη = 0 where C is n ⇥ 9
COMPSCI 527 — Computer Vision The Eight-Point Algorithm 11 / 17
i
vases
The Eight-Point Algorithm: t, R
Solving for t
E = R [t]×
(and also ±[t]×)
COMPSCI 527 — Computer Vision The Eight-Point Algorithm 12 / 17
E
VE I E VI
E
I Vefi 3
The Eight-Point Algorithm: t, R
Solving for R
E = R [t]×
and det(R) = 1
solutions, R1 and R2
COMPSCI 527 — Computer Vision The Eight-Point Algorithm 13 / 17
E
xT RT ET
TR
ET
Tri
E
O
NON INVERTIBLE
The Eight-Point Algorithm: t, R
The Fourfold Ambiguity
(t, R1) , (−t, R2) , (t, R2) , (−t, R1)
P XC ZC C XD ZD D P XC ZC C XD’ ZD’ D’ XD ZD D XC ZC C P XC ZC C XD’ ZD’ D’ PCOMPSCI 527 — Computer Vision The Eight-Point Algorithm 14 / 17
Triangulation: Pm
Triangulation
2 4 a0
1
a0
2
f 3 5 by f so that now a = 2 4 a1 a2 1 3 5
def
= a1 a2
α =
1 A3
A1 A2
1 B3
B1 B2
A1 A2
B1 B2
COMPSCI 527 — Computer Vision The Eight-Point Algorithm 15 / 17
FEET're
G A
4 3 34 4 1
ALEE.BEEllGAFH
Bundle Adjustment
Summary of Eight-Point Algorithm
m E am = 0 for E
with orthogonality constraint) to obtain R1, R2
four combinations of t and R (n separate problems, one per point pair)
in front of both cameras
COMPSCI 527 — Computer Vision The Eight-Point Algorithm 16 / 17
Bundle Adjustment
Bundle Adjustment
arg min
t,R,A1,...,An
1 n
n
X
m=1
⇥ (am − π(Am))2 + (bm − π(R(Am − t)))2⇤ | {z } reprojection error arg min
t,R,A1,...,An ρ(t, R, A1, . . . , An)
in multiple steps
search for an optimal solution to the full problem
COMPSCI 527 — Computer Vision The Eight-Point Algorithm 17 / 17