88
A Software for Complete Calibration of Multicamera Systems Tom´ s Svoboda with contributions from D. Martinec, T. Pajdla, O. Chum, T. Werner, and J. Bouguet Czech Technical University, Faculty of Electrical Engineering Center for Machine Perception, Prague, Czech Republic http://cmp.felk.cvut.cz/~svoboda Computer Vision Lab, ETH Z¨ urich

A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser

  • Upload
    others

  • View
    8

  • Download
    0

Embed Size (px)

Citation preview

Page 1: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser

A Software for Complete Calibration ofMulticamera Systems

Tomas Svobodawith contributions from D. Martinec, T. Pajdla, O. Chum, T. Werner,

and J. Bouguet

Czech Technical University, Faculty of Electrical Engineering

Center for Machine Perception, Prague, Czech Republic

http://cmp.felk.cvut.cz/~svoboda

Computer Vision Lab, ETH Zurich

Page 2: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser

2/45Outline

Motivation

Problem definition

Proposed solution

Results

Applications

Page 3: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser

3/45Motivation

multiple cameras became common

they can be found in . . .

Page 4: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser

4/45Virtual reality room

Page 5: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser

5/45Telepresence setup

Page 6: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser

6/45Calibration

many tasks can be accomplished without knowing

anything about the cameras

however, many more when we know . . .

Page 7: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser

7/45camera positions, and . . .

Page 8: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser

8/45. . . camera orientations, and . . .

Page 9: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser

9/45

. . . camera internal parametersfrom geometry to pixels

y xy xz

v uNormalized image plane

Image planef1

Xu

xC

Page 10: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser

10/45. . . nonlinear parameters included

Page 11: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser

11/45Camera calibration is an old problem

for photogrammetrists (even older problem)

in computer vision

many methods exist

Page 12: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser

12/45Classical approaches — known 3D points

Page 13: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser

13/45

Classical approaches — plate at severalpositions

http://www.vision.caltech.edu/bouguetj/calib doc/

Page 14: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser

14/45Classical methods — revisited

Pros:

many methods (and free codes)

precise, even for complicated camera models

Page 15: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser

14/45Classical methods — revisited

Pros:

many methods (and free codes)

precise, even for complicated camera models

Cons (for multicamera systems):

many cameras → hand work is not an option

large working volume to fill → big calibration

objects/plates

Page 16: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser

15/45Our solution — overview

We assume at least approximately synchronized multicamera

(N ≥ 3) setup.

use 1-point calibration object easily detectable in images

wave the calibration point through the working volume

freely

this will create a virtual calibration object (but the 3D

position unknown!)

apply theoretical results from self-calibration field

estimate as complicated camera model as reasonable

validate the results

Page 17: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser

16/45Multiple cameras — Geometry

C1

C2

C3

C4

Xj

u1

ju2

j

u3

j

u4

j

P1

P2

P3

P4

Problem definition:

From uij points, for which λ

iju

ij = P

iXj holds

estimate Euclidean projection matrices Pi

and coordinates of the 3D points Xj

Page 18: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser

17/45Pinhole camera model

λij

uij

vij

1

= λiju

ij = PiXj , λi

j ∈ R+

j index points

i index camera

λij projective depths

uij point projections (we find them in images)

Xj 3D points (we do not know the positions!)

Pi camera matrices

Page 19: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser

18/45Multicamera linear model

Ws =

λ11

u11

v11

1

· · · λ1n

u1n

v1n

1

... ... ...

λm1

um1

vm1

1

· · · λmn

umn

vmn

1

=

P1

...

Pm

3m×4︸ ︷︷ ︸

P

[X1 · · ·Xn]4×n︸ ︷︷ ︸X

Self-calibration (Euclidean stratification)

Ws = PX = PH︸︷︷︸ H−1X︸︷︷︸ = PX ,

Page 20: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser

19/45What the software does:

1. Finds the projections uij of the laser pointer in the images.

Page 21: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser

19/45What the software does:

1. Finds the projections uij of the laser pointer in the images.

2. Discards misdetected points by pairwise RANSAC analysis.

Page 22: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser

19/45What the software does:

1. Finds the projections uij of the laser pointer in the images.

2. Discards misdetected points by pairwise RANSAC analysis.

3. Estimates projective depths λij and fills the missing points to

make scaled measurement matrix Ws complete.

Page 23: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser

19/45What the software does:

1. Finds the projections uij of the laser pointer in the images.

2. Discards misdetected points by pairwise RANSAC analysis.

3. Estimates projective depths λij and fills the missing points to

make scaled measurement matrix Ws complete.

4. Performs the rank 4 factorization of the matrix Ws to get

projective shape and motion and upgrades them to

Euclidean ones.

Page 24: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser

19/45What the software does:

1. Finds the projections uij of the laser pointer in the images.

2. Discards misdetected points by pairwise RANSAC analysis.

3. Estimates projective depths λij and fills the missing points to

make scaled measurement matrix Ws complete.

4. Performs the rank 4 factorization of the matrix Ws to get

projective shape and motion and upgrades them to

Euclidean ones.

5. Estimates the parameters of the non-linear distortion

Page 25: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser

19/45What the software does:

1. Finds the projections uij of the laser pointer in the images.

2. Discards misdetected points by pairwise RANSAC analysis.

3. Estimates projective depths λij and fills the missing points to

make scaled measurement matrix Ws complete.

4. Performs the rank 4 factorization of the matrix Ws to get

projective shape and motion and upgrades them to

Euclidean ones.

5. Estimates the parameters of the non-linear distortion

6. Optionally, if some true 3D information is known, aligns the

computed Euclidean structures with a world system.

Page 26: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser

19/45What the software does:

1. Finds the projections uij of the laser pointer in the images.

2. Discards misdetected points by pairwise RANSAC analysis.

3. Estimates projective depths λij and fills the missing points to

make scaled measurement matrix Ws complete.

4. Performs the rank 4 factorization of the matrix Ws to get

projective shape and motion and upgrades them to

Euclidean ones.

5. Estimates the parameters of the non-linear distortion

6. Optionally, if some true 3D information is known, aligns the

computed Euclidean structures with a world system.

Many cross-validation steps inside.

Page 27: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser

20/45Calibration object

A very standard laser pointer with a piece of transparent

plastic attached.

Page 28: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser

21/45Finding points

Needs to be a bit more clever than a simple thresholding

Statistical analysis of the images (almost) solves it.

Page 29: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser

22/45Finding points

Sub-pixel accuracy is desirable

Interpolated ROI

20 40 60

10

20

30

40

50

60

050

100

0

50

1000

0.02

0.04

Correlation coeffs

020

40

0

20

40100

150

200

250

Active ROI

020

40

0

20

400

0.5

1

1.5

x 10−3PSF approx by 2D Gaussian

/local/MultiCam/Data/20030615H

oengg/arctic1/arctic1.pvi.0001.jpg original

312 314 316 318 320 322 324 326 328

294

296

298

300

302

304

306

308

310

Around 100ms per image.

Page 30: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser

23/45Calibration input

Video

Page 31: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser

24/45We know

Ws =

λ11

u11

v11

1

· · · λ1n

u1n

v1n

1

... ... ...

λm1

um1

vm1

1

· · · λmn

umn

vmn

1

=

P1

...

Pm

3m×4

[X1 · · ·Xn]4×n

Ws = PX = PHH−1X = PX ,

However, some [uij, v

ij]> may be missing!

Page 32: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser

25/45

Estimation of λij

(Sturm & Triggs ECCV96)

uses the epipolar geometry

C1 C2

Xu1 u2l1 l2e1 e2

λij =

(eik × uij) · (Fikuk

j)‖eik × ui

j‖2 λkj

Page 33: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser

26/45We know

Ws =

λ11

u11

v11

1

· · · λ1n

u1n

v1n

1

... ... ...

λm1

um1

vm1

1

· · · λmn

umn

vmn

1

=

P1

...

Pm

3m×4

[X1 · · ·Xn]4×n

Ws = PX = PHH−1X = PX ,

However, some [uij, v

ij]> and λi

j may be missing!

Page 34: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser

27/45

Filling missing points(Martinec and Pajdla ECCV2002)

Page 35: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser

28/45We know

Ws =

λ11

u11

v11

1

· · · λ1n

u1n

v1n

1

... ... ...

λm1

um1

vm1

1

· · · λmn

umn

vmn

1

=

P1

...

Pm

3m×4

[X1 · · ·Xn]4×n

Ws = PX = PHH−1X = PX ,

Page 36: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser

29/45Rank–4 factorization

Ws =

P1

...

Pm

3m×4

[X1 · · ·Xn]4×n

So, matrix Ws should have rank at most 4

Ws = USV> P1

...

Pm

3m×4

[X1 · · ·Xn]4×n = (U√S4)(

√S4V

>)

where S4 is the S with only 4 biggest diagonal values, rest is

zeroed.

Page 37: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser

30/45We know

Ws = PX = PHH−1X = PX ,

We must find a 4× 4 matrix H which upgrades the projective

structures P, X to metric ones, P, X.

Page 38: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser

31/45

Euclidean stratification(Pollefeys et al, Hartley, . . . )

based on the idea of absolute quadric (conic)

Pi = µi

[KiRi Kiti

]

PiΩ∞Pi> ∼ KiKi>

where

Ω∞ =

1 0 0 00 1 0 00 0 1 00 0 0 0

Page 39: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser

32/45Euclidean stratification cont.

absolute conic exists also in the projective world!

KiKi> ∼ (PiH−1)(HΩ∞H>)(H−>Pi>)

KiKi> ∼ PiΩ∞Pi>

We know the projective Pi. The projective Ω∞ is 4× 4symmetric.

Once Ω∞ is known, then we can compute H from

Ω∞ = HΩ∞H>

by eigenvalue decomposition and get the sought Euclidean

structures Pi = PiH and Xj = H−1Xj.

Page 40: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser

33/45

Euclidean stratification — Example ofsolution

assume everything is known except focal lenghts

Ki =

f i 0 ui0

0 αif i vi0

0 0 1

→ KiKi> =

f i2 0 00 f i2 00 0 1

Remember that KiKi> ∼ PiΩ∞Pi>

(PiΩ∞Pi>)11 − (PiΩ∞Pi>)22 = 0

(PiΩ∞Pi>)12 = 0

(PiΩ∞Pi>)13 = 0

(PiΩ∞Pi>)23 = 0

Each camera contributes by 4 contraints.

Page 41: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser

34/45We have the metric linear model

Ws = PX

Estimation of non-linear distortion starts from

Xj ↔ uij

correspondences. We use the CalTech package

http://www.vision.caltech.edu/bouguetj/calib doc/

Then it goes back, adapt parameters and . . .

Page 42: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser

35/45Aligning the results with the world

−2

0

2

−6

−4

−2

0

2

−6

−4

−2

0

2

4

10

11

13

1

9

2

8

12

reconstructed points/camera setup only inliers are used

3

16

15

14

7

4

6

5

−3−2

−10

12

3

−2

−1

0

1

2

3

4

10

9

8

7

6

11

16

Graphical Output Validation: View from the top camera

12

13

15

14

1

2

3

4

5

User provides some 3D information. Example: “Cameras No.

11,13,15 define the xy plane”.

Page 43: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser

36/45Results — Filling points

0 100 200 300 400 500 600 700

0

100

200

300

400

500

measured, o, vs reprojected, +, 2D points (camera: 4)

−400 −200 0 200 400 600 800 1000 1200 1400 1600−500

0

500

1000

measured, o, vs reprojected, +, 2D points (camera: 40)

The calibration “point” needs not to be visible in all cameras!

Page 44: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser

37/45Results — Calibrated setups

−3 −2 −1 0 1 2 3

−2

−1

0

1

2

3

10

9

8

7

6

11

16

Graphical Output Validation: View from the top camera

12

15

13

14

5

3

4

2

1−1 0 1

−2

−1

0

1

2

3 71

70

80

Graphical Output Validation: Aligned data

72

81

82

Page 45: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser

38/45Results — Linear model

0 100 200 300 400 500 600

0

100

200

300

400

500measured, o, vs reprojected, +, 2D points (camera: 12)

0 2 4 6 8 10 12 14 16 180

1

2

3

4

5

6

7

Id of the camera

2D error: mean (blue), std (red)

pixe

ls

Page 46: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser

39/45Results — Complete model

0 100 200 300 400 500 600 700

0

100

200

300

400

500

measured, o, vs reprojected, +, 2D points (camera: 12)

0 2 4 6 8 10 12 14 16 180

0.05

0.1

0.15

0.2

0.25

0.3

0.35

0.4

Id of the camera

2D error: mean (blue), std (red)

pixe

ls

Very fine results from (almost) nothing!

Page 47: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser

40/45Results — Simple setup

−3−2−101

−1

0

1

2

3

4

5

6

4

reconstructed points/camera setup only inliers are used 3

2

2 3 40

0.05

0.1

0.15

0.2

0.25

0.3

0.35

Id of the camera

2D error: mean (blue), std (red)

pixe

ls

Page 48: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser

41/45

Application example — volumetricreconstruction

I know, it is just toy example. Still, it shows that the metric is

OK.

Page 49: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser

42/45

Application example — mobilemulticamera setup

Video

Page 50: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser

43/45

Mobile multicamera setup - worker 3Dtracking

Video

Page 51: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser

44/45

Mobile multicamera setup - worker 3Dtracking

Page 52: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser

45/45Summary

waving the point object is the only hand work required

no user interaction

complete calibration of 16 camera setup may be done in

60-90 minutes (95% computation)

Codes, sample data, papers, etc. downloadable from

http://cmp.felk.cvut.cz/˜svoboda/SelfCal

Page 53: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser
Page 54: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser
Page 55: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser
Page 56: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser
Page 57: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser

y xy xz

v uNormalized image plane

Image planef1

Xu

xC

Page 58: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser
Page 59: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser

Page 60: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser
Page 61: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser
Page 62: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser

C1

C2

C3

C4

Xj

u1

ju2

j

u3

j

u4

j

P1

P2

P3

P4

Problem definition:

From uij points, for which λ

iju

ij = P

iXj holds

estimate Euclidean projection matrices Pi

and coordinates of the 3D points Xj

Page 63: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser
Page 64: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser
Page 65: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser
Page 66: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser

Interpolated ROI

20 40 60

10

20

30

40

50

60

050

100

0

50

1000

0.02

0.04

Correlation coeffs

020

40

0

20

40100

150

200

250

Active ROI

020

40

0

20

400

0.5

1

1.5

x 10−3PSF approx by 2D Gaussian

Page 67: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser

/local/MultiCam/Data/20030615H

oengg/arctic1/arctic1.pvi.0001.jpg original

312 314 316 318 320 322 324 326 328

294

296

298

300

302

304

306

308

310

Page 68: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser
Page 69: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser

C1 C2

Xu1 u2l1 l2e1 e2

Page 70: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser
Page 71: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser

−2

0

2

−6

−4

−2

0

2

−6

−4

−2

0

2

4

10

11

13

1

9

2

8

12

reconstructed points/camera setup only inliers are used

3

16

15

14

7

4

6

5

Page 72: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser

−3−2

−10

12

3

−2

−1

0

1

2

3

4

10

9

8

7

6

11

16

Graphical Output Validation: View from the top camera

12

13

15

14

1

2

3

4

5

Page 73: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser

0 100 200 300 400 500 600 700

0

100

200

300

400

500

measured, o, vs reprojected, +, 2D points (camera: 4)

Page 74: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser

−400 −200 0 200 400 600 800 1000 1200 1400 1600−500

0

500

1000

measured, o, vs reprojected, +, 2D points (camera: 40)

Page 75: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser

−3 −2 −1 0 1 2 3

−2

−1

0

1

2

3

10

9

8

7

6

11

16

Graphical Output Validation: View from the top camera

12

15

13

14

5

3

4

2

1

Page 76: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser

−1 0 1

−2

−1

0

1

2

3 71

70

80

Graphical Output Validation: Aligned data

72

81

82

Page 77: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser

0 100 200 300 400 500 600

0

100

200

300

400

500measured, o, vs reprojected, +, 2D points (camera: 12)

Page 78: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser

0 2 4 6 8 10 12 14 16 180

1

2

3

4

5

6

7

Id of the camera

2D error: mean (blue), std (red)

pixe

ls

Page 79: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser

0 100 200 300 400 500 600 700

0

100

200

300

400

500

measured, o, vs reprojected, +, 2D points (camera: 12)

Page 80: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser

0 2 4 6 8 10 12 14 16 180

0.05

0.1

0.15

0.2

0.25

0.3

0.35

0.4

Id of the camera

2D error: mean (blue), std (red)

pixe

ls

Page 81: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser

−3−2−101

−1

0

1

2

3

4

5

6

4

reconstructed points/camera setup only inliers are used 3

2

Page 82: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser

2 3 40

0.05

0.1

0.15

0.2

0.25

0.3

0.35

Id of the camera

2D error: mean (blue), std (red)

pixe

ls

Page 83: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser
Page 84: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser
Page 85: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser
Page 86: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser
Page 87: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser
Page 88: A Software for Complete Calibration of Multicamera Systemscmp.felk.cvut.cz/~svoboda/SelfCal/Publ/talk.pdf · 19/45 What the software does: 1. Finds the projections ui j of the laser