what does calibration give?

68
What does calibration give? x K d 1 0 d 0] | K[I x 2 1 - T - T 2 1 1 - T - T 1 2 -1 -T T 1 2 T 2 1 T 1 2 T 1 )x K (K x )x K (K x )x K (K x d d d d d d cos An image line l defines a plane through the camera center with normal n=K T l measured in the camera’s Euclidean frame. In fact the backprojection of l is P T l n=K T l

Upload: jalen

Post on 16-Jan-2016

37 views

Category:

Documents


0 download

DESCRIPTION

What does calibration give?. An image line l defines a plane through the camera center with normal n=K T l measured in the camera’s Euclidean frame. In fact the backprojection of l is P T l  n= K T l. The image of the absolute conic. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: What does calibration give?

What does calibration give?

xKd 1

0d0]|K[Ix

21-T-T

211-T-T

1

2-1-TT

1

2T

21T

1

2T

1

)xK(Kx)xK(Kx

)xK(Kx

dddd

ddcos

An image line l defines a plane through the camera center

with normal n=KTl measured in the camera’s Euclidean

frame. In fact the backprojection of l is PTl n=KTl

Page 2: What does calibration give?

The image of the absolute conic

KRd0

dO]|KR[IPXx

mapping between ∞ to an image is given by the planar

homogaphy x=Hd, with H=KR

absolute conic (IAC), represented by I3 within ∞ (w=0)

1-T-1T KKKKω 1TCHHC

(i) IAC depends only on intrinsics(ii) angle between two rays(iii) DIAC=*=KKT

(iv) K (Cholesky factorization)(v) image of circular points belong

to (image of absolute conic)

2T

21T

1

2T

1

ωxxωxx

ωxxcos

its image (IAC)

Page 3: What does calibration give?

A simple calibration device

(i) compute Hi for each square

(corners (0,0),(1,0),(0,1),(1,1))

(ii) compute the imaged circular points Hi [1,±i,0]T

(iii) fit a conic to 6 imaged circular points

(iv) compute K from K-T K-1 through Cholesky factorization (= Zhang’s calibration method)

Page 4: What does calibration give?
Page 5: What does calibration give?

Orthogonality relation

2T

21T

1

2T

1

ωvvωvv

ωvvcos

0ωvv 2T

1

0lωl 2*T

1

Page 6: What does calibration give?

Calibration from vanishing points and lines

Page 7: What does calibration give?

Calibration from vanishing points and lines

Page 8: What does calibration give?
Page 9: What does calibration give?

Two-view geometry

Epipolar geometry

F-matrix comp.

3D reconstruction

Structure comp.

Page 10: What does calibration give?

(i) Correspondence geometry: Given an image point x in the first view, how does this constrain the position of the

corresponding point x’ in the second image?

(ii) Camera geometry (motion): Given a set of corresponding image points {xi ↔x’i}, i=1,…,n, what are the cameras P and P’ for the two views?

(iii) Scene geometry (structure): Given corresponding image points xi ↔x’i and cameras P, P’, what is the position of (their pre-image) X in space?

Three questions:

Page 11: What does calibration give?

The epipolar geometry

C,C’,x,x’ and X are coplanar

Page 12: What does calibration give?

The epipolar geometry

What if only C,C’,x are known?

Page 13: What does calibration give?

The epipolar geometry

All points on project on l and l’

Page 14: What does calibration give?

The epipolar geometry

Family of planes and lines l and l’ Intersection in e and e’

Page 15: What does calibration give?

The epipolar geometry

epipoles e,e’= intersection of baseline with image plane = projection of projection center in other image= vanishing point of camera motion direction

an epipolar plane = plane containing baseline (1-D family)

an epipolar line = intersection of epipolar plane with image(always come in corresponding pairs)

Page 16: What does calibration give?

Example: converging cameras

Page 17: What does calibration give?

Example: motion parallel with image plane

Page 18: What does calibration give?

The fundamental matrix F

algebraic representation of epipolar geometry

l'x

we will see that mapping is (singular) correlation (i.e. projective mapping from points to lines) represented by the fundamental matrix F

Page 19: What does calibration give?

The fundamental matrix F

algebraic derivation

λC0

xMλX

-1

1MM'e'F

xMM'Cm'M'0

xMm''MC'm'Ml' 1

1

e’ is the image of C taken by the second camera

xP

λX0Fxx'0 l' x' l' x' T

Page 20: What does calibration give?

The fundamental matrix F

correspondence condition

0Fxx'T

The fundamental matrix satisfies the condition that for any pair of corresponding points x↔x’ in the two images 0l'x'T

Page 21: What does calibration give?

The fundamental matrix F

F is the unique 3x3 rank 2 matrix that satisfies x’TFx=0 for all x↔x’

(i) Transpose: if F is fundamental matrix for (P,P’), then FT is fundamental matrix for (P’,P)

(ii) Epipolar lines: l’=Fx & l=FTx’(iii) Epipoles: on all epipolar lines, thus e’TFx=0, x

e’TF=0, similarly Fe=0;( vi e’ is left null space of F(v) F has 7 d.o.f. , i.e. 3x3-1(homogeneous)-1(rank2)(vi) F is a correlation, projective mapping from a point x to

a line l’=Fx (not a proper correlation, i.e. not invertible)

Page 22: What does calibration give?

Projective transformation and invariance

-1-T FHH'F̂ x'H''x̂ Hx,x̂

Derivation based purely on projective concepts

X̂P̂XHPHPXx -1

F invariant to transformations of projective 3-space

X̂'P̂XHHP'XP'x' -1

FP'P,

P'P,F

unique

not unique

canonical form

m]|[MP'0]|[IP

MmF

Page 23: What does calibration give?

Projective ambiguity of cameras given Fprevious slide: at least projective ambiguitythis slide: not more!

Show that if F is same for (P,P’) and (P,P’), there exists a projective transformation H so that P=HP and P’=HP’

~ ~

~ ~

]a~|A~

['P~ 0]|[IP

~ a]|[AP' 0]|[IP

A~

a~AaF

T1 avAA~

kaa~ klemma:

kaa~Fa~0AaaaF2rank

TavA-A~

k0A-A~

kaA~

a~Aa

kkIkH T1

1

v0

'P~

]a|av-A[v

0a]|[AHP' T1T1

1

kk

kkIk

(22-15=7, ok)

Page 24: What does calibration give?

Canonical cameras given F

F matrix corresponds to P,P’ iff P’TFP is skew-symmetric

X0,FPXP'X TT

F matrix, S skew-symmetric matrix

]e'|[SFP' 0]|[IP

000FSF

0Fe'0FSF0]|F[I]e'|[SF

TT

T

TTT

(fund.matrix=F)

Possible choice:

]e'|F][[e'P' 0]|[IP

Canonical representation:

]λe'|ve'F][[e'P' 0]|[IP T

Page 25: What does calibration give?
Page 26: What does calibration give?

Triangulation of points in 3D

Ransac: - 8 point correspondence samples

Computation of F1i

-Compute viewing rays from cameras-Intersect viewing rays associated to corresponding points

Computation of canonical camerasfrom F1i

PROJECTIVE RECONSTRUCTION

Page 27: What does calibration give?

The essential matrix

~fundamental matrix for calibrated cameras (remove K)

t]R[RRtE T

0x̂E'x̂ T

FKK'E T

x'K'x̂ x;Kx̂ -1-1

5 d.o.f. (3 for R; 2 for t up to scale)

E is essential matrix if and only iftwo singularvalues are equal (and third=0)

T0)VUdiag(1,1,E SVD

Page 28: What does calibration give?

100

001

010

WGiven

Motion from E

TTVUWR'

TUWV'R'

and

3Ut'

3U't'

Four solutions

Page 29: What does calibration give?

Four possible reconstructions from E

(only one solution where points is in front of both cameras)

Page 30: What does calibration give?

Self-calibration

Page 31: What does calibration give?

Motivation

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

Page 32: What does calibration give?

Motivation

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

Page 33: What does calibration give?

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 34: What does calibration give?

Constraints on intrinsic parameters

Constant e.g. fixed camera:

Knowne.g. rectangular pixels:

square pixels:

principal point known:

21 KK

0s

1yy

xx

uf

usf

K

0, sff yx

2,

2,

hwuu yx

Page 35: What does calibration give?

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) (Moons et al.´94, Hartley ´94, Armstrong ECCV´96)

(Faugeras et al. ECCV´92, Hartley´93,

Triggs´97, Pollefeys et al. PAMI´98, ...)

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

Page 36: What does calibration give?

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# fixednknownn

Page 37: What does calibration give?

known internal parameters

-1-TKKω

0ωω 2112 0s

rectangular pixels

yx ff

square pixels

2211 ωω

Page 38: What does calibration give?

Same camera for all images

same intrinsics same image of the absolute conic

e.g. moving cameras

given sufficient images there is in general only oneconic that projects to the same image in all images,i.e. the absolute conic

This approach is called self-calibration, see later

ωHHω' Ttransfer of IAC:

Page 39: What does calibration give?

(a) Compute F from xi↔x‘i(b) Compute P,P‘ from F(c) Triangulate Xi from xi↔x‘i

Obtain projective reconstruction (P,P‘,{Xi})

0]|[IP1 ]a|[AP iii

e.g. ]e|veFe[P iT

ixii

Page 40: What does calibration give?

t]|[A1v

tA0]|[I0]H|[I0]|[KP T1M1

The metric reconstruction will be

t=0 1KA

Let the unknown plane at the infinity in the starting projective reconstruction be

1

pπ*

From1

pπH

1ππ *T*

0M

Page 41: What does calibration give?

1

vK-

110

vK-K-

1H

1

-T1

-T1

-T1T-*

00

thus

v-Kp -T1 and p-Kv T

1Therefore,

1Kp

0KH

1T

1

Page 42: What does calibration give?

iiiii1T

iiiiM tKRKa)Kpa-(AHaAPi

Now

8 unknowns:

Tiiii

Tii )R)(KR(KKK

TTii

T11

Tii

Tii )pa-(AK)Kpa-(AKK

Therefore, since

Self-calibration equation

1K and p

Page 43: What does calibration give?

Equations come from constraints on intrinsics:-known parameters (e.g. s=0 or square pixels)-fixed parameters (e.g. s, or aspect ratio)

8#1# fixednknownn

Solution: nonlinear algorithms (Cipolla)

needed views: n, with

Page 44: What does calibration give?
Page 45: What does calibration give?

Uncalibrated visual odometry Uncalibrated visual odometry for ground plane motionfor ground plane motion

(joint work with Simone Gasparini)

Page 46: What does calibration give?

Problem formulation

• Given:– an uncalibrateduncalibrated camera mounted on a robot– the camera is fixedfixed and aims at the floor– the robot moving on a planarplanar floor (ground

plane)

• Determine:– the estimate of robot motion from observed

features on the floor

Page 47: What does calibration give?

Technique involvedEstimate the ground plane transformation (homography) between images taken before and after robot displacement

Page 48: What does calibration give?

Motivations• Dead reckoning techniques are not reliable and diverge after few steps

[Borenstein96]

• Visual odometry techniques exploits cameras to recover motion

• We use a single uncalibrated camera– 3D reconstruction with uncalibrated camera usually require auto-calibration– Non-planar motion is required [Triggs98]

– Planar motion with different camera attitudes [Knight03]

– Special devices is required (e.g. PTZ cameras)

• Stereo cameras approaches [Nister04, Takaoka04, Agrawal06, Cheng06]

• Catadioptric cameras approaches [Bunschoten03, Corke04]

– Assume Single View Point (difficult setup)

• Our method similar in spirit to [Wang05] and [Benhimane06]

– We do not assume camera calibration

Page 49: What does calibration give?

Problem formulation

• Fixed uncalibrated camera mounted on a robot

• The pose of the camera w.r.t. the robot is unknown

• The projective transformation between ground plane and image plane is a homography T (3x3)

• T does not change with robot motion

• T is uknownT is uknown

Page 50: What does calibration give?

Image plane

Ground Plane

X

x x=TX

Page 51: What does calibration give?

Problem formulation

• Robot and camera undergo a planar motion– rotation of unknown angle about unknown

vertical axis– 2D rotation matrix R (3x3 with homogeneous

coordinates)

2x2ˆ ˆ orthogonal matrix

0 translation vector (3x1 )

R R

R tt

Page 52: What does calibration give?

Problem formulation

• Given 2 images before and after robot displacement determine:– Rotation centre C– Rotation angle – Determine unknown transformation T between

ground plane and image plane

Page 53: What does calibration give?

Ground reference frame

• We define a ground reference frame– O is the origin of the projected reference frame

• E.g. O is the backprojection of image point O’(0,0)

– The vector connecting the origin to a point A is the unit vector along the x-axis

• E.g. A is the backprojection of image point A’(100,0)

Page 54: What does calibration give?

Image plane

Ground Plane

O

A

O'

A’

Page 55: What does calibration give?

Estimation of robot displacement

• Transformation relating the two images is still a homography

• Eigenvectors of H:

1 ( unknown)H = TRT T

' associated to the eigval, C rotation center

' associated to the eigval, I and J circular points

'

C TC

eigvec I TI

J TJ

H =

Page 56: What does calibration give?

• Since eig(H)=eig(R)– Angle can be calculated through the ratio of

imaginary and real part of the complex eigenvalue of H

– E.g. the eigenvalue associated to I’ is e±i

Page 57: What does calibration give?

Estimation of robot displacement: degenerate motion

Pure translation: a frequent motion on planar floor

• Under pure translation, the whole line at the infinity is invariant

Page 58: What does calibration give?

ground plane can be only rectified modulo an affine transformation: e.g., orientation of translaton wrt ground reference

can not be determined

• In practice: – Use a motion including rotations to estimate

ground plane to image plane transformation T– Use knowledge of T while translating

Page 59: What does calibration give?

Estimation of the transformation T

• Estimating T allows to determine the shape

of observed features

• Four pairs of corresponding points are

needed

– The 2 circular points I and J

– The 2 points A and O used for ground reference

Page 60: What does calibration give?

where 1, ,0

where 1, ,0

where 0,0,1 and ' 0,0,1

where 1,0,1 and ' 100,0,1

T

T

T T

T T

i

i

I' = TI I

J' = TJ J

O' = TO O O

A' = TA A A

Page 61: What does calibration give?

Experimental set up

• Fixed perspective camera placed on turntable ( ground truth)

• Optical distortion is negligible

• Camera pointing towards the ground floor

• Camera viewpoint in a generic position wrt rotation axis

Page 62: What does calibration give?

• Basic algorithm:– Feature (corner) extraction from floor texture

[Harris88]– Feature tracking and matching in order to

determine correspondences– Corresponding features used to fit the

homography H– Eigendecomposition of matrix H

• Rotation angle• Image of circular points• Image of rotation centre• Ground plane to image plane transformation

Page 63: What does calibration give?

Experiments on sequences of images

Sequence of large displacements

• Image displacements of the order of 10°

• Features extracted and matched [Torr93]

Page 64: What does calibration give?

• Use best matching pairs to fit a homography using RANSAC [Fischler81]

• Good overall accuracy (error < 1°)

• Larger displacements affect matching

Page 65: What does calibration give?
Page 66: What does calibration give?

Experiments on sequences of images

Sequence of small displacements

• Image displacements of about 5°

• Small rotations may lead to numerical instability

• Track features over three images– H13 fitted with correspondences of 1 and 3

• Good overall accuracy (error < 1°)

Page 67: What does calibration give?

HH1313

1 2 3

Page 68: What does calibration give?

Experiments on a mobile platform

Feature extraction and matching between images

Rotation and relevant centre of rotation determination