0% found this document useful (0 votes)
32 views

Computer Vision - Camera Geometry

1. The document discusses camera geometry and the pinhole camera model. It describes how the pinhole camera projects 3D points in the world onto 2D image points using a focal length and camera center. 2. Homogeneous coordinates are introduced as a way to represent points and lines using the same framework in the projective plane. Properties like collinearity of points and coincidence of lines can be tested using determinants in homogeneous coordinates. 3. Camera calibration involves estimating the intrinsic parameters of the camera from images of a calibration pattern. The fundamental matrix and essential matrix describe the epipolar geometry between two views.

Uploaded by

Ricoenrico wida
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
32 views

Computer Vision - Camera Geometry

1. The document discusses camera geometry and the pinhole camera model. It describes how the pinhole camera projects 3D points in the world onto 2D image points using a focal length and camera center. 2. Homogeneous coordinates are introduced as a way to represent points and lines using the same framework in the projective plane. Properties like collinearity of points and coincidence of lines can be tested using determinants in homogeneous coordinates. 3. Camera calibration involves estimating the intrinsic parameters of the camera from images of a calibration pattern. The fundamental matrix and essential matrix describe the epipolar geometry between two views.

Uploaded by

Ricoenrico wida
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 35

CS664 Computer Vision

9. Camera Geometry

Dan Huttenlocher
Pinhole Camera
ƒ Geometric model of camera projection
– Image plane I, which rays intersect
– Camera center C, through which all rays pass
– Focal length f, distance from I to C

2
Pinhole Camera Projection
ƒ Point (X,Y,Z) in space and image (x,y) in I
– Simplified case
• C at origin in space
• I perpendicular to Z axis
x=fX/Z (x/f=X/Z) y=fY/Z (y/f=Y/Z)

3
Homogeneous Coordinates
ƒ Geometric intuition useful but not well
suited to calculation
– Projection not linear in Euclidean plane but is
in projective plane (homogeneous coords)
ƒ For a point (x,y) in the plane
– Homogeneous coordinates are (αx, αy, α) for
any nonzero α (generally use α=1)
• Overall scaling unimportant
(X,Y,W) = (αX, αY, αW)
– Convert back to Euclidean plane
(x,y) = (X/W,Y/W)
4
Lines in Homogeneous Coordinates
ƒ Consider line in Euclidean plane
ax+by+c = 0
ƒ Equation unaffected by scaling so
aX+bY+cW = 0
uTp = pTu = 0 (point on line test, dot product)
– Where u = (a,b,c)T is the line
– And p = (X,Y,W)T is a point on the line u
– So points and lines have same representation in
projective plane (i.e., in homog. coords.)
– Parameters of line
• Slope –a/b, x-intercept –c/a, y-intercept –c/b

5
Lines and Points
ƒ Consider two lines
a1x+b1y+c1 = 0 and a2x+b2y+c2 = 0
– Can calculate their intersection as
(b1c2-b2c1/a1b2-a2b1, a2c1-a1c2/a1b2-a2b1)
ƒ In homogeneous coordinates
u1=(a1,b1,c1) and u2=(a2,b2,c2)
– Simply cross product p = u1×u2
• Parallel lines yield point not in Euclidean plane
ƒ Similarly given two points
p1=(X1,Y1,W1) and p2=(X2,Y2,W2)
– Line through the points is simply u = p1×p2
6
Collinearity and Coincidence
ƒ Three points collinear (lie on same line)
– Line through first two is p1×p2
– Third point lies on this line if p3T(p1×p2)=0
– Equivalently if det[p1 p2 p3]=0
ƒ Three lines coincident (intersect at one
point)
– Similarly det[u1 u2 u3]=0
– Note relation of determinant to cross product
u1 ×u2 = (b1c2-b2c1, a2c1-a1c2, a1b2-a2b1)
ƒ Compare to geometric calculations
7
Back to Simplified Pinhole Camera
ƒ Geometrically saw x=fX/Z, y=fY/Z
⎛X ⎞
⎛ fX ⎞ ⎡ f 0 ⎤⎜ ⎟ 3x4
⎜ ⎟ ⎢ ⎥ ⎜Y ⎟
⎜ fY ⎟ = ⎢ f 0 ⎥⎜ ⎟ Projection
⎜Z ⎟ ⎢ ⎜ Z⎟ Matrix
⎝ ⎠ ⎣ ⎥
1 0 ⎦⎜ ⎟
⎝1 ⎠

8
Principal Point Calibration
ƒ Intersection of principal axis with image
plane often not at image origin
⎛X ⎞
⎛ fX+Zpx ⎞ ⎡ f px 0 ⎤⎜ ⎟
⎜ ⎟ ⎢ ⎥ ⎜Y ⎟
⎜ fY+Zpy ⎟ = ⎢ f py 0 ⎥⎜ ⎟
⎜ ⎟ ⎜ Z⎟
⎝ Z ⎠ ⎣ ⎢ ⎥
1 0 ⎦⎜ ⎟
⎝1 ⎠

⎡f px ⎤
⎢ ⎥ (Intrinsic)
K= ⎢ f py ⎥ Calibration
⎢⎣ 1 ⎥⎦ matrix

9
CCD Camera Calibration
ƒ Spacing of grid points
– Effectively separate scale factors along each
axis composing focal length and pixel spacing

⎡ mx f px ⎤
⎢ ⎥
K= ⎢ myf py ⎥
⎢⎣ 1 ⎥⎦

⎡α px ⎤
= ⎢ ⎥
⎢ β py ⎥
⎢⎣ 1 ⎥⎦
10
Camera Rigid Motion
ƒ Projection P=K[R|t]
– Camera motion: alignment of 3D coordinate
systems
– Full extrinsic parameters beyond scope of this
course, see “Multiple View Geometry” by
Hartley and Zisserman

11
Two View Geometry
ƒ Point X in world and two camera centers
C, C’ define the epipolar plane
– Images x,x’ of X in
two image planes
lie on this plane
– Intersection of
line CC’ with
image planes
define special
points called e e′
epipoles, e,e’

12
Epipolar Lines
ƒ Set of points that project to x in I define
line l’ in I’
– Called epipolar line
– Goes through
epipole e’
– A point x in I
thus maps to a
point on l’ in I’
• Rather than
to a point
anywhere in I

13
Epipolar Geometry
ƒ Two-camera system defines one
parameter family (pencil) of planes
through baseline CC’
– Each such plane
defines matching
epipolar lines in
two image planes
– One parameter
family of lines
through each epipole
– Correspondence between images
14
Converging Stereo Cameras

Corresponding
points lie on
corresponding
epipolar lines

Known camera
geometry so
1D not 2D
search!

15
Motion Examples
ƒ Epipoles in direction of motion

Parallel to
Image
Plane

Forward

16
Fundamental and Essential Matrix
ƒ Linear algebra formulation of the epipolar
geometry
ƒ Fundamental matrix, F, maps point x in I
to corresponding epipolar line l’ in I’
l’=Fx
– Determined for particular camera geometry
• For stereo cameras only changes if cameras
move with respect to one another
ƒ Essential matrix, E, when camera
calibration (intrinsic parameters) known
– See slides 9 and 10
17
Fundamental Matrix
ƒ Epipolar constraint
x’TFx=x’Tl’=0
– Thus from enough corresponding pairs of
points in the two images can solve for F
• However not as simple as least squares
minimization because F not fully general matrix
ƒ Consider form of F in more detail

L A A
x → l → l’

F=AL l
18
Form of Fundamental Matrix
ƒ L: x → l
– Epipolar line l goes through x and epipole e
– Epipole determines L
l=x×e
l = Lx (rewriting cross product)
– If e=(u,v,w)
⎡ 0 w -v⎤

L = -w 0 u

⎢ ⎥
⎢⎣ v -u 0 ⎥⎦
– L is rank 2 and has 2 d.o.f. l
19
Form of Fundamental Matrix
ƒ A: l → l’
– Constrained by 3 pairs of epipolar lines
l’i = A li
– Note only 5 d.o.f.
• First two line correspondences each provide two
constraints
• Third provides only one constraint as lines must
go through intersection of first two
ƒ F=AL rank 2 matrix with 7 d.o.f.
– As opposed to 8 d.o.f. in 3x3 homogeneous
system

20
Properties of F
ƒ Unique 3x3 rank 2 matrix satisfying
x’TFx=0 for all pairs x,x’
– Constrained minimization techniques can be
used to solve for F given point pairs
ƒ F has 7 d.o.f.
– 3x3 homogeneous (9-1=8), rank 2 (8-1=7)
ƒ Epipolar lines l’=Fx and reverse map l=FTx’
– Because also (Fx)Tx’=0 but then xT(FTx’)=0
ƒ Epipoles e’TF=0 and Fe=0
– Because e’Tl’=0 for any l’; Le=0 by construction

21
Stereo (Epipolar) Rectification
ƒ Given F, simplify stereo matching problem
by warping images
– Shared image plane for two cameras
– Epipolar lines parallel to x-axis
• Epipole at (1,0,0)
• Corresponding scan lines of two images
e

– OpenCV: calibration and rectification


22
Planar Rectification
ƒ Move epipoles to infinity
– Poor when epipoles near image

23
Stereo Matching
ƒ Seek corresponding pixels in I, I’
– Only along epipolar lines
ƒ Rectified imaging geometry so just
horizontal disparity D at each pixel
I’(x’,y’)=I(x+D(x,y),y)
ƒ Best methods minimize energy based on
matching (data) and discontinuity costs

Stereo

24
Plane Homography
ƒ Projective transformation mapping points
in one plane to points in another
ƒ In homogeneous coordinates

⎛ aX+bY+cW ⎞ ⎡a b c⎤ ⎛X ⎞
⎜ ⎟ ⎢ ⎜ ⎟
⎜ dX+eY+fW ⎟ = ⎢d e f⎥ ⎜Y ⎟

⎜ gX+hY+iW ⎟ ⎢g h i⎥ ⎜W ⎟
⎝ ⎠ ⎣ ⎦ ⎝ ⎠
ƒ Maps four (coplanar) points to any four
– Quadrilateral to quadrilateral
– Does not preserve parallelism
25
Contrast with Affine
ƒ Can represent in Euclidean plane x’=Lx+t
– Arbitrary 2x2 matrix L and 2-vector t
– In homogeneous coordinates
⎛ aX+bY+cW ⎞ ⎡a b c⎤ ⎛X ⎞
⎜ ⎟ ⎢ ⎜ ⎟
⎜ dX+eY+fW ⎟ = ⎢d e f⎥ ⎜Y ⎟

⎜ W ⎟ ⎢0 0 i⎥ ⎜W ⎟
⎝ ⎠ ⎣ ⎦ ⎝ ⎠
ƒ Maps three points to any three
– Maps triangles to triangles
– Preserves parallelism

26
Homography Example
ƒ Changing viewpoint of single view
– Correspondences in observed and desired views
– E.g., from 45 degree to frontal view
• Quadrilaterals to rectangles
– Variable resolution and non-planar artifacts

27
Homography and Epipolar Geometry
ƒ Plane in space π induces homography H
between image planes
x’=Hπx for point X on π, x on I, x’ on I’

28
Obeys Epipolar Geometry
ƒ Given F,Hπ no search for x’ (points on π)

ƒ Maps epipoles, e’= Hπe

29
Computing Homography
ƒ Correspondences of four points that are
coplanar in world (no need for F)
– Substantial error if not coplanar
ƒ Fundamental matrix F and 3 point
correspondences
– Can think of pair e,e’ as providing fourth
correspondence
ƒ Fundamental matrix plus point and line
correspondences
ƒ Improvements
– More correspondences and least squares
– Correspondences farther apart
30
Plane Induced Parallax
ƒ Determine homography of a plane
– Remaining differences reflect depth from plane
– Flat surfaces like in sporting events

31
Plane + Parallax Correspondences

l’ = x’ × Hx

32
Plane + Parallax

Vaish et al CVPR04
33
Projective Depth
ƒ Distance between Hπx and x’ (along l’)
proportional to distance of X from plane π
– Sign governs which side of plane

34
Multiple Cameras
ƒ Similarly extensive geometry for three
cameras
– Known as tri-focal tensor
• Beyond scope of this course

• Three lines
• Three points
• Line and 2 points
• Point and 2 lines

35

You might also like