32
Parameter estimation class 5 Multiple View Geometry Comp 290-089 Marc Pollefeys

Parameter estimation class 5 Multiple View Geometry Comp 290-089 Marc Pollefeys

  • View
    216

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Parameter estimation class 5 Multiple View Geometry Comp 290-089 Marc Pollefeys

Parameter estimationclass 5

Multiple View GeometryComp 290-089Marc Pollefeys

Page 2: Parameter estimation class 5 Multiple View Geometry Comp 290-089 Marc Pollefeys

Content

• Background: Projective geometry (2D, 3D), Parameter estimation, Algorithm evaluation.

• Single View: Camera model, Calibration, Single View Geometry.

• Two Views: Epipolar Geometry, 3D reconstruction, Computing F, Computing structure, Plane and homographies.

• Three Views: Trifocal Tensor, Computing T.• More Views: N-Linearities, Multiple view

reconstruction, Bundle adjustment, auto-calibration, Dynamic SfM, Cheirality, Duality

Page 3: Parameter estimation class 5 Multiple View Geometry Comp 290-089 Marc Pollefeys

Multiple View Geometry course schedule(subject to change)

Jan. 7, 9 Intro & motivation Projective 2D Geometry

Jan. 14, 16

(no class) Projective 2D Geometry

Jan. 21, 23

Projective 3D Geometry (no class)

Jan. 28, 30

Parameter Estimation Parameter Estimation

Feb. 4, 6 Algorithm Evaluation Camera Models

Feb. 11, 13

Camera Calibration Single View Geometry

Feb. 18, 20

Epipolar Geometry 3D reconstruction

Feb. 25, 27

Fund. Matrix Comp. Structure Comp.

Mar. 4, 6 Planes & Homographies Trifocal Tensor

Mar. 18, 20

Three View Reconstruction

Multiple View Geometry

Mar. 25, 27

MultipleView Reconstruction

Bundle adjustment

Apr. 1, 3 Auto-Calibration Papers

Apr. 8, 10

Dynamic SfM Papers

Apr. 15, 17

Cheirality Papers

Apr. 22, 24

Duality Project Demos

Page 4: Parameter estimation class 5 Multiple View Geometry Comp 290-089 Marc Pollefeys

Projective 3D Geometry

• Points, lines, planes and quadrics

• Transformations

• П∞, ω∞ and Ω ∞

Page 5: Parameter estimation class 5 Multiple View Geometry Comp 290-089 Marc Pollefeys

Singular Value Decomposition

XXVT XVΣ T XVUΣ T

Homogeneous least-squares

TVUΣA

1X AXmin subject to nVX solution

Page 6: Parameter estimation class 5 Multiple View Geometry Comp 290-089 Marc Pollefeys

Parameter estimation

• 2D homographyGiven a set of (xi,xi’), compute H (xi’=Hxi)

• 3D to 2D camera projectionGiven a set of (Xi,xi), compute P (xi=PXi)

• Fundamental matrixGiven a set of (xi,xi’), compute F (xi’TFxi=0)

• Trifocal tensor Given a set of (xi,xi’,xi”), compute T

Page 7: Parameter estimation class 5 Multiple View Geometry Comp 290-089 Marc Pollefeys

Number of measurements required

• At least as many independent equations as degrees of freedom required

• Example:

Hxx'

11

λ

333231

232221

131211

y

x

hhh

hhh

hhh

y

x

2 independent equations / point8 degrees of freedom

4x2≥8

Page 8: Parameter estimation class 5 Multiple View Geometry Comp 290-089 Marc Pollefeys

Approximate solutions

• Minimal solution4 points yield an exact solution for H

• More points• No exact solution, because

measurements are inexact (“noise”)• Search for “best” according to some

cost function• Algebraic or geometric/statistical cost

Page 9: Parameter estimation class 5 Multiple View Geometry Comp 290-089 Marc Pollefeys

Gold Standard algorithm

• Cost function that is optimal for some assumptions

• Computational algorithm that minimizes it is called “Gold Standard” algorithm

• Other algorithms can then be compared to it

Page 10: Parameter estimation class 5 Multiple View Geometry Comp 290-089 Marc Pollefeys

Direct Linear Transformation(DLT)

ii Hxx 0Hxx ii

i

i

i

i

xh

xh

xh

Hx3

2

1

T

T

T

iiii

iiii

iiii

ii

yx

xw

wy

xhxh

xhxh

xhxh

Hxx12

31

23

TT

TT

TT

0

h

h

h

0xx

x0x

xx0

3

2

1

TTT

TTT

TTT

iiii

iiii

iiii

xy

xw

yw

Tiiii wyx ,,x

0hA i

Page 11: Parameter estimation class 5 Multiple View Geometry Comp 290-089 Marc Pollefeys

Direct Linear Transformation(DLT)

• Equations are linear in h

0

h

h

h

0xx

x0x

xx0

3

2

1

TTT

TTT

TTT

iiii

iiii

iiii

xy

xw

yw

0AAA 321 iiiiii wyx

0hA i• Only 2 out of 3 are linearly independent

(indeed, 2 eq/pt)

0

h

h

h

x0x

xx0

3

2

1

TTT

TTT

iiii

iiii

xw

yw

(only drop third row if wi’≠0)• Holds for any homogeneous

representation, e.g. (xi’,yi’,1)

Page 12: Parameter estimation class 5 Multiple View Geometry Comp 290-089 Marc Pollefeys

Direct Linear Transformation(DLT)

• Solving for H

0Ah 0h

A

A

A

A

4

3

2

1

size A is 8x9 or 12x9, but rank 8

Trivial solution is h=09T is not interesting

1-D null-space yields solution of interestpick for example the one with 1h

Page 13: Parameter estimation class 5 Multiple View Geometry Comp 290-089 Marc Pollefeys

Direct Linear Transformation(DLT)

• Over-determined solution

No exact solution because of inexact measurementi.e. “noise”

0Ah 0h

A

A

A

n

2

1

Find approximate solution- Additional constraint needed to avoid 0, e.g.

- not possible, so minimize

1h Ah0Ah

Page 14: Parameter estimation class 5 Multiple View Geometry Comp 290-089 Marc Pollefeys

DLT algorithmObjective

Given n≥4 2D to 2D point correspondences {xi↔xi’}, determine the 2D homography matrix H such that xi’=Hxi

Algorithm

(i) For each correspondence xi ↔xi’ compute Ai. Usually only two first rows needed.

(ii) Assemble n 2x9 matrices Ai into a single 2nx9 matrix A

(iii) Obtain SVD of A. Solution for h is last column of V

(iv) Determine H from h

Page 15: Parameter estimation class 5 Multiple View Geometry Comp 290-089 Marc Pollefeys

Inhomogeneous solution

'

'h~

''000'''

'''''000

ii

ii

iiiiiiiiii

iiiiiiiiii

xw

yw

xyxxwwwywx

yyyxwwwywx

Since h can only be computed up to scale, pick hj=1, e.g. h9=1, and solve for 8-vector

h~

Solve using Gaussian elimination (4 points) or using linear least-squares (more than 4 points)

However, if h9=0 this approach fails also poor results if h9 close to zeroTherefore, not recommendedNote h9=H33=0 if origin is mapped to infinity

0

1

0

0

H100Hxl 0

T

Page 16: Parameter estimation class 5 Multiple View Geometry Comp 290-089 Marc Pollefeys

Degenerate configurations

x4

x1

x3

x2

x4

x1

x3

x2H? H’?

x1

x3

x2

x4

0Hxx iiConstraints: i=1,2,3,4

TlxH 4* Define:

4444* xxlxxH kT

3,2,1 ,0xlxxH 4* iii

TThen,

H* is rank-1 matrix and thus not a homography

(case A) (case B)

If H* is unique solution, then no homography mapping xi→xi’(case B)

If further solution H exist, then also αH*+βH (case A) (2-D null-space in stead of 1-D null-space)

Page 17: Parameter estimation class 5 Multiple View Geometry Comp 290-089 Marc Pollefeys

Solutions from lines, etc.

ii lHl T 0Ah

2D homographies from 2D lines

Minimum of 4 lines

Minimum of 5 points or 5 planes

3D Homographies (15 dof)

2D affinities (6 dof)

Minimum of 3 points or lines

Conic provides 5 constraints

Mixed configurations?

Page 18: Parameter estimation class 5 Multiple View Geometry Comp 290-089 Marc Pollefeys

Cost functions

• Algebraic distance• Geometric distance• Reprojection error

• Comparison• Geometric interpretation• Sampson error

Page 19: Parameter estimation class 5 Multiple View Geometry Comp 290-089 Marc Pollefeys

Algebraic distanceAhDLT minimizes

Ahe residual vector

ie partial vector for each (xi↔xi’)algebraic error vector

2

22alg h

x0x

xx0Hx,x

TTT

TTT

iiii

iiiiiii

xw

ywed

algebraic distance

22

21

221alg x,x aad where 21

T321 xx,,a aaa

2222alg AhHx,x eed

ii

iii

Not geometrically/statistically meaningfull, but given good normalization it works fine and is very fast (use for initialization)

Page 20: Parameter estimation class 5 Multiple View Geometry Comp 290-089 Marc Pollefeys

Geometric distancemeasured coordinatesestimated coordinatestrue coordinates

xxx

2

HxH,xargminH ii

i

d Error in one image

e.g. calibration pattern

221-

HHx,xxH,xargminH iiii

i

dd Symmetric transfer error

d(.,.) Euclidean distance (in image)

ii

iiiii

ii ddii

xHx subject to

x,xx,xargminx,x,H 22

x,xH,

Reprojection error

Page 21: Parameter estimation class 5 Multiple View Geometry Comp 290-089 Marc Pollefeys

Reprojection error

221- Hx,xxHx, dd

22 x,xxx, dd

Page 22: Parameter estimation class 5 Multiple View Geometry Comp 290-089 Marc Pollefeys

Comparison of geometric and algebraic distances

iiii

iiiiii wxxw

ywwye

ˆˆ

ˆˆhA

Error in one image

Tiiii wyx ,,x xHˆ,ˆ,ˆx Tiiii wyx

3

2

1

h

h

h

x0x

xx0TTT

TTT

iiii

iiii

xw

yw

222iialg ˆˆˆˆx,x iiiiiiii wxxwywwyd

ii

iiiiiiii

wwd

wxwxwywyd

ˆ/x,x

/ˆ/ˆˆ/ˆ/x,x

iialg

2/1222ii

typical, but not , except for affinities 1iw i3xhˆ iw

For affinities DLT can minimize geometric distance

Possibility for iterative algorithm

Page 23: Parameter estimation class 5 Multiple View Geometry Comp 290-089 Marc Pollefeys

represents 2 quadrics in 4 (quadratic in X)

Geometric interpretation of reprojection error

Estimating homography~fit surface to points X=(x,y,x’,y’)T in 4

0Hxx ii

22

22222

ii

x,xx,x

ˆˆˆˆXX

iiii

iiiiiiii

dd

yyxxyyxx

2H

22 ,Xx,xx,x iiiii ddd

Analog to conic fitting

CxxC,x T2alg d

2C,xd

Page 24: Parameter estimation class 5 Multiple View Geometry Comp 290-089 Marc Pollefeys

Sampson error

2XX

HνVector that minimizes the geometric error is the closest point on the variety to the measurement

XX

between algebraic and geometric error

XSampson error: 1st order approximation of 0XAh H C

XH

HXH δX

XδX

C

CC XXδX 0XH C

0δX

X XH

H

C

C eXJδ

Find the vector that minimizes subject to

Xδ eXJδXδ

XJ Hwith

C

Page 25: Parameter estimation class 5 Multiple View Geometry Comp 290-089 Marc Pollefeys

Find the vector that minimizes subject to

Xδ eXJδXδ

Use Lagrange multipliers:

minimize

derivatives

0Jδ2λ-δδ XXX eT

TT 0J2λ-δ2 X 0Jδ2 X e

λJδ XT

0λJJ T e

e1TJJλ

e1TT

X JJJδ

XδXX ee1TT

XTX

2

X JJδδδ

Page 26: Parameter estimation class 5 Multiple View Geometry Comp 290-089 Marc Pollefeys

Sampson error

2XX

HνVector that minimizes the geometric error is the closest point on the variety to the measurement

XX

between algebraic and geometric error

XSampson error: 1st order approximation of 0XAh H C

XH

HXH δX

XδX

C

CC XXδX 0XH C

0δX

X XH

H

C

C eXJδ

Find the vector that minimizes subject to

Xδ eXJδXδ

ee1TT

XTX

2

X JJδδδ

(Sampson error)

Page 27: Parameter estimation class 5 Multiple View Geometry Comp 290-089 Marc Pollefeys

Sampson approximation

A few points

(i) For a 2D homography X=(x,y,x’,y’) (ii) is the algebraic error vector(iii) is a 2x4 matrix,

e.g.

(iv) Similar to algebraic error in fact, same as Mahalanobis distance

(v) Sampson error independent of linear reparametrization (cancels out in between e and J)

(vi) Must be summed for all points(vii) Close to geometric error, but much fewer

unknowns

ee1TT2

X JJδ

eee T2

2

JJT e

31213T2T

11 /hxhx hyhwxywJ iiiiii XJ H

C XHCe

ee

1TT JJ

Page 28: Parameter estimation class 5 Multiple View Geometry Comp 290-089 Marc Pollefeys

Statistical cost function and Maximum Likelihood

Estimation• Optimal cost function related to noise

model• Assume zero-mean isotropic Gaussian

noise (assume outliers removed) 22 2/xx,2πσ2

1xPr de

22i 2xH,x /

2iπσ2

1H|xPr ide

i

constantxH,xH|xPrlog 2i2i

σ2

1id

Error in one image

Maximum Likelihood Estimate

2i xH,x id

Page 29: Parameter estimation class 5 Multiple View Geometry Comp 290-089 Marc Pollefeys

Statistical cost function and Maximum Likelihood

Estimation• Optimal cost function related to noise

model• Assume zero-mean isotropic Gaussian

noise (assume outliers removed) 22 2/xx,2πσ2

1xPr de

22i

2i 2xH,xx,x /

2iπσ2

1H|xPr

ii dd

ei

Error in both images

Maximum Likelihood Estimate

2i

2i x,xx,x ii dd

Page 30: Parameter estimation class 5 Multiple View Geometry Comp 290-089 Marc Pollefeys

Mahalanobis distance

• General Gaussian caseMeasurement X with covariance

matrix Σ

XXXXXX 1T2

22XXXX

Error in two images (independent)

22XXXX

iiii

iii

Varying covariances

Page 31: Parameter estimation class 5 Multiple View Geometry Comp 290-089 Marc Pollefeys

Next class:Parameter estimation

(continued)Transformation invarianceand normalization

Iterative minimization

Robust estimation

Page 32: Parameter estimation class 5 Multiple View Geometry Comp 290-089 Marc Pollefeys

Upcoming assignment

• Take two or more photographs taken from a single viewpoint

• Compute panorama• Use different measures DLT, MLE

• Use Matlab • Due Feb. 13