Self-calibration and multi-view geometry Class 10

46
Self-calibration and multi-view geometry Class 10 Read Chapter 6 and 3.2

description

Self-calibration and multi-view geometry Class 10. Read Chapter 6 and 3.2. 3D photography course schedule (tentative). Self-calibration. Introduction Self-calibration Dual Absolute Quadric Critical Motion Sequences. Motivation. Avoid explicit calibration procedure Complex procedure - PowerPoint PPT Presentation

Transcript of Self-calibration and multi-view geometry Class 10

Page 1: Self-calibration and  multi-view geometry Class 10

Self-calibration and multi-view geometry

Class 10

Read Chapter 6 and 3.2

Page 2: Self-calibration and  multi-view geometry Class 10

3D photography course schedule(tentative)

Lecture ExerciseSept 26 Introduction -Oct. 3 Geometry & Camera model Camera calibrationOct. 10 Single View Metrology Measuring in imagesOct. 17 Feature Tracking/matching

(Friedrich Fraundorfer) Correspondence computation

Oct. 24 Epipolar Geometry F-matrix computationOct. 31 Shape-from-Silhouettes

(Li Guan)Visual-hull computation

Nov. 7 Stereo matching Project proposalsNov. 14 Structured light and

active range sensingPapers

Nov. 21 Structure from motion PapersNov. 28 Multi-view geometry

and self-calibrationPapers

Dec. 5 Shape-from-X PapersDec. 12 3D modeling and registration PapersDec. 19 Appearance modeling and

image-based renderingFinal project presentations

Page 3: Self-calibration and  multi-view geometry Class 10

Self-calibration• Introduction• Self-calibration• Dual Absolute Quadric• Critical Motion Sequences

Page 4: Self-calibration and  multi-view geometry Class 10

Motivation

• Avoid explicit calibration procedure• Complex procedure• Need for calibration object • Need to maintain calibration

Page 5: Self-calibration and  multi-view geometry Class 10

Motivation

• Allow flexible acquisition• No prior calibration necessary• Possibility to vary intrinsics• Use archive footage

Page 6: Self-calibration and  multi-view geometry Class 10

Projective ambiguity

Reconstruction from uncalibrated images

projective ambiguity on reconstruction ´M´M))((Mm 1 PTPTP

Page 7: Self-calibration and  multi-view geometry Class 10

Stratification of geometry

15 DOF 12 DOFplane at infinity

parallelism

More general

More structure

Projective Affine Metric

7 DOFabsolute conicangles, rel.dist.

Page 8: Self-calibration and  multi-view geometry Class 10

Constraints ?

Scene constraints• Parallellism, vanishing points,

horizon, ...• Distances, positions, angles, ...Unknown scene no constraints

Camera extrinsics constraints–Pose, orientation, ...

Unknown camera motion no constraints Camera intrinsics constraints

–Focal length, principal point, aspect ratio & skew

Perspective camera model too general some constraints

Page 9: Self-calibration and  multi-view geometry Class 10

Euclidean projection matrix

tRRKP TT

1yy

xx

ufusf

K

Factorization of Euclidean projection matrix

Intrinsics:

Extrinsics: t,RNote: every projection matrix can be factorized, but only meaningful for euclidean projection matrices

(camera geometry)

(camera motion)

Page 10: Self-calibration and  multi-view geometry Class 10

Constraints on intrinsic parameters

Constant e.g. fixed camera:

Knowne.g. rectangular pixels:

square pixels: principal point known:

21 KK

0s

1yy

xx

ufusf

K

0, sff yx

2,

2, hwuu yx

Page 11: Self-calibration and  multi-view geometry Class 10

Self-calibration

Upgrade from projective structure to metric structure using constraints on intrinsic camera parameters• Constant intrinsics

• Some known intrinsics, others varying

• Constraints on intrincs and restricted motion

(e.g. pure translation, pure rotation, planar motion)

(Faugeras et al. ECCV´92, Hartley´93,Triggs´97, Pollefeys et al. PAMI´99, ...)

(Heyden&Astrom CVPR´97, Pollefeys et al. ICCV´98,...)

(Moons et al.´94, Hartley ´94, Armstrong ECCV´96, ...)

Page 12: Self-calibration and  multi-view geometry Class 10

A counting argument

• To go from projective (15DOF) to metric (7DOF) at least 8 constraints are needed

• Minimal sequence length should satisfy

• Independent of algorithm• Assumes general motion (i.e. not critical)

8#1# fixedmknownm

Page 13: Self-calibration and  multi-view geometry Class 10

Outline• Introduction• Self-calibration• Dual Absolute Quadric• Critical Motion Sequences

Page 14: Self-calibration and  multi-view geometry Class 10

The Dual Absolute Quadric

00

0I*T

The absolute dual quadric Ω*∞ is a fixed conic under

the projective transformation H iff H is a similarity

1. 8 dof2. plane at infinity π∞ is the nullvector of Ω∞

3. Angles:

2*

21*

1

2*

1

ππππππcos

TT

T

Page 15: Self-calibration and  multi-view geometry Class 10

Absolute Dual Quadric and Self-calibration

Eliminate extrinsics from equation

TT KKPP *

tRRK TT TKR TRK TKK

)1110(diag*

Equivalent to projection of Dual Abs.Quadric

))(Ω)((Ω *1* TTTTT PTTTPTPPKK

Dual Abs.Quadric also exists in projective world

T´Ω´´ * PP Transforming world so thatreduces ambiguity to similarity

** ΩΩ´

Page 16: Self-calibration and  multi-view geometry Class 10

**

projection

constraints

Absolute conic = calibration object which is always present but can only be observed through constraints on the intrinsics

Tii

Tiii Ωω KKPP

Absolute Dual Quadric and Self-calibration

Projection equation:

Translate constraints on K through projection equation to constraints on *

Page 17: Self-calibration and  multi-view geometry Class 10

Constraints on *

1ω 22

222

*

yx

yyyyxy

xyxyxx

ccccfccsfcccsfcsf

Zero skew quadratic m

Principal point linear 2m

Zero skew (& p.p.)

linear m

Fixed aspect ratio (& p.p.& Skew)

quadratic m-1

Known aspect ratio (& p.p.& Skew)

linear m

Focal length (& p.p. & Skew)

linear m

*23

*13

*33

*12 ωωωω

0ωω *23

*13

0ω*12

*11

*22

*22

*11 ω'ωω'ω

*22

*11 ωω

*11

*33 ωω

condition constraint type #constraints

Page 18: Self-calibration and  multi-view geometry Class 10

Linear algorithm

Assume everything known, except focal length

0Ω0Ω

0ΩΩ

23T

13T

12T

22T

11T

PPPPPP

PPPP

(Pollefeys et al.,ICCV´98/IJCV´99)

TPP *2

2

*

1000ˆ000ˆ

ω

ff

Yields 4 constraint per imageNote that rank-3 constraint is not enforced

Page 19: Self-calibration and  multi-view geometry Class 10

Linear algorithm revisited

0Ω0Ω

0ΩΩ

23T

13T

12T

22T

11T

PPPPPP

PPPP

1000ˆ000ˆ

2

2

ff

TKK

91

91

)3log()1log()ˆlog( f)1.1log()1log()log( ˆ

ˆ

y

x

ff

1.00xc1.00yc

0s

1ˆ f 0ΩΩ

0ΩΩ

33T

22T

33T

11T

PPPPPPPP

(Pollefeys et al., ECCV‘02)

1.011.0

101.01

2.01

assumptions

Weighted linear equations

Page 20: Self-calibration and  multi-view geometry Class 10

Projective to metric

Compute T from

using eigenvalue decomposition of and then obtain metric

reconstruction as

00

0 ~ withΩ~or Ω~ **

TT-1-T I

ITITTTI

M and TPT-1

Ω*

Page 21: Self-calibration and  multi-view geometry Class 10

Alternatives: (Dual) image of absolute conic• Equivalent to Absolute Dual Quadric

• Practical when H can be computed first• Pure rotation (Hartley’94, Agapito et

al.’98,’99)• Vanishing points, pure translations,

modulus constraint, …

T** ωω HH ea)( HH

TPP ** Ωω

Page 22: Self-calibration and  multi-view geometry Class 10

1ω 22

22

*

yx

yyyyx

xyxxx

ccccfccccccf

22222222

22

22

22 00

yxxyyxyxxy

yxx

xyy

yx cfcfffcfcfcffcff

ff

Note that in the absence of skew the IAC can be more practical than the DIAC!

Page 23: Self-calibration and  multi-view geometry Class 10

Kruppa equations

Limit equations to epipolar geometryOnly 2 independent equations per pairBut independent of plane at infinity

T*TT*T* ωe'ωe'e'ωe' FFHH

Page 24: Self-calibration and  multi-view geometry Class 10

Refinement

• Metric bundle adjustment

2

1 1M,M,mminarg

m

k

n

iikkiD

ik

PP

Enforce constraints or priors on intrinsics during minimization(this is „self-calibration“ for photogrammetrist)

Page 25: Self-calibration and  multi-view geometry Class 10

Outline• Introduction• Self-calibration• Dual Absolute Quadric• Critical Motion Sequences

Page 26: Self-calibration and  multi-view geometry Class 10

Critical motion sequences

• Self-calibration depends on camera motion

• Motion sequence is not always general enough

• Critical Motion Sequences have more than one potential absolute conic satisfying all constraints

• Possible to derive classification of CMS

(Sturm, CVPR´97, Kahl, ICCV´99, Pollefeys,PhD´99)

Page 27: Self-calibration and  multi-view geometry Class 10

Critical motion sequences:constant intrinsic parameters

Most important cases for constant intrinsicsCritical motion

typeambiguity

pure translation affine transformation (5DOF)pure rotation arbitrary position for (3DOF)orbital motion proj.distortion along rot. axis

(2DOF)planar motion scaling axis plane (1DOF)

Note relation between critical motion sequences and restricted motion algorithms

Page 28: Self-calibration and  multi-view geometry Class 10

Critical motion sequences:varying focal length

Most important cases for varying focal length (other parameters known)Critical motion type

ambiguity

pure rotation arbitrary position for (3DOF)forward motion proj.distortion along opt. axis

(2DOF)translation and rot. about opt. axis

scaling optical axis (1DOF)

hyperbolic and/or elliptic motion

one extra solution

Page 29: Self-calibration and  multi-view geometry Class 10

Critical motion sequences:algorithm dependent

Additional critical motion sequences can exist for some specific algorithms• when not all constraints are enforced

(e.g. not imposing rank 3 constraint)• Kruppa equations/linear algorithm: fixating

a pointSome spheres also project to circles located in the image and hence satisfy all the linear/kruppa self-calibration constraints

Page 30: Self-calibration and  multi-view geometry Class 10

Non-ambiguous new views for CMS

• restrict motion of virtual camera to CMS• use (wrong) computed camera parameters

(Pollefeys,ICCV´01)

Page 31: Self-calibration and  multi-view geometry Class 10

Multi-view geometry

Page 32: Self-calibration and  multi-view geometry Class 10

Backprojection• Represent point as intersection of row and column

Useful presentation for deriving and understanding multiple view geometry

(notice 3D planes are linear in 2D point coordinates)

• Condition for solution?

Page 33: Self-calibration and  multi-view geometry Class 10

Multi-view geometry(intersection

constraint)

(multi-linearity of determinants)

(= epipolar constraint!)(counting argument: 11x2-

15=7)

Page 34: Self-calibration and  multi-view geometry Class 10

Multi-view geometry

(multi-linearity of determinants)

(= trifocal constraint!)

(3x3x3=27 coefficients)

(counting argument: 11x3-15=18)

Page 35: Self-calibration and  multi-view geometry Class 10

Multi-view geometry

(multi-linearity of determinants)

(= quadrifocal constraint!)

(3x3x3x3=81 coefficients)

(counting argument: 11x4-15=29)

Page 36: Self-calibration and  multi-view geometry Class 10

36

from perspective to omnidirectional cameras

perspective camera(2 constraints / feature)

radial camera (uncalibrated)(1 constraints / feature)

3 constraints allow to reconstruct 3D point

more constraints also tell something about cameras

multilinear constraints known as epipolar, trifocal and quadrifocal constraints

(0,0)

l=(y,-x)

(x,y)

Page 37: Self-calibration and  multi-view geometry Class 10

37

Quadrifocal constraint

Page 38: Self-calibration and  multi-view geometry Class 10

38

Radial quadrifocal tensor

• Linearly compute radial quadrifocal tensor Qijkl from 15 pts in 4 views

• Reconstruct 3D scene and use it for calibration(2x2x2x2 tensor)

(2x2x2 tensor)

Not easy for real data, hard to avoid degenerate cases (e.g. 3 optical axes intersect in single point). However, degenerate case leads to simpler 3 view algorithm for pure rotation

• Radial trifocal tensor Tijk from 7 points in 3 views

• Reconstruct 2D panorama and use it for calibration

(x,y)

Page 39: Self-calibration and  multi-view geometry Class 10

39

Dealing with Wide FOV Camera• Two-step linear approach to compute

radial distortion• Estimates distortion polynomial of

arbitrary degree

(Thirthala and Pollefeys CVPR05)

undistorted image

estimated distortion(4-8 coefficients)

Page 40: Self-calibration and  multi-view geometry Class 10

40

Dealing with Wide FOV Camera• Two-step linear approach to compute

radial distortion• Estimates distortion polynomial of

arbitrary degree

(Thirthala and Pollefeys CVPR05)

unfolded cubemapestimated distortion

(4-8 coefficients)

Page 41: Self-calibration and  multi-view geometry Class 10

41

Non-parametric distortion calibration

• Models fish-eye lenses, cata-dioptric systems, etc.

(Thirthala and Pollefeys, ICCV’05)

normalized radiusan

gle

Page 42: Self-calibration and  multi-view geometry Class 10

42

Non-parametric distortion calibration

• Models fish-eye lenses, cata-dioptric systems, etc.

• results

(Thirthala and Pollefeys, ICCV’05)

normalized radiusan

gle

90o

Page 43: Self-calibration and  multi-view geometry Class 10

43

Synthetic quadrifocal tensor example

• Perspective• Fish-eye• Spherical mirror• Hyperbolic mirror

Page 44: Self-calibration and  multi-view geometry Class 10

44

Perspective Fish-eye

Page 45: Self-calibration and  multi-view geometry Class 10

45

Spherical mirror Hyperbolic mirror

Page 46: Self-calibration and  multi-view geometry Class 10

Next class: shape-from-X

Photometric stereo

Shape from texture

Shape from focus/defocus