Download - Projective Geometry and Camera Models - University Of Illinoisdhoiem.cs.illinois.edu/courses/vision_spring10/lectures/Lecture2... · Projective Geometry and Camera Models Computer

Transcript
Page 1: Projective Geometry and Camera Models - University Of Illinoisdhoiem.cs.illinois.edu/courses/vision_spring10/lectures/Lecture2... · Projective Geometry and Camera Models Computer

Projective Geometry and Camera Models

Computer VisionCS 543 / ECE 549 

University of Illinois

Derek Hoiem

01/21/10

Page 2: Projective Geometry and Camera Models - University Of Illinoisdhoiem.cs.illinois.edu/courses/vision_spring10/lectures/Lecture2... · Projective Geometry and Camera Models Computer

Note about HW1

• Out before next Tues

• Prob1: covered today, Tues

• Prob2: covered next Thurs

• Prob3: covered following week

Page 3: Projective Geometry and Camera Models - University Of Illinoisdhoiem.cs.illinois.edu/courses/vision_spring10/lectures/Lecture2... · Projective Geometry and Camera Models Computer

Last class: intro

• Overview of vision, examples of state of art

• Logistics

Page 4: Projective Geometry and Camera Models - University Of Illinoisdhoiem.cs.illinois.edu/courses/vision_spring10/lectures/Lecture2... · Projective Geometry and Camera Models Computer

Next two classes: Single‐view Geometry

How tall is this woman?

Which ball is closer?

How high is the camera?

What is the camera rotation?

What is the focal length of the camera?

Page 5: Projective Geometry and Camera Models - University Of Illinoisdhoiem.cs.illinois.edu/courses/vision_spring10/lectures/Lecture2... · Projective Geometry and Camera Models Computer

Today’s class

Mapping between image and world coordinates

– Pinhole camera model

– Projective geometry• homogeneous coordinates and vanishing lines

– Camera matrix

– Other camera parameters

Page 6: Projective Geometry and Camera Models - University Of Illinoisdhoiem.cs.illinois.edu/courses/vision_spring10/lectures/Lecture2... · Projective Geometry and Camera Models Computer

Image formation

Let’s design a camera– Idea 1:  put a piece of film in front of an object– Do we get a reasonable image?

Slide source: Seitz

Page 7: Projective Geometry and Camera Models - University Of Illinoisdhoiem.cs.illinois.edu/courses/vision_spring10/lectures/Lecture2... · Projective Geometry and Camera Models Computer

Pinhole camera

Idea 2: add a barrier to block off most of the rays– This reduces blurring

– The opening known as the aperture

Slide source: Seitz

Page 8: Projective Geometry and Camera Models - University Of Illinoisdhoiem.cs.illinois.edu/courses/vision_spring10/lectures/Lecture2... · Projective Geometry and Camera Models Computer

Pinhole camera

Figure from Forsyth

f

f = focal lengthc = center of the camera

c

Page 9: Projective Geometry and Camera Models - University Of Illinoisdhoiem.cs.illinois.edu/courses/vision_spring10/lectures/Lecture2... · Projective Geometry and Camera Models Computer

Camera obscura: the pre‐camera

• First idea: Mo‐Ti, China (470BC to 390BC)

• First built: Alhacen, Iraq/Egypt (965 to 1039AD)

Illustration of Camera Obscura Freestanding camera obscura at UNC Chapel Hill

Photo by Seth Ilys

Page 10: Projective Geometry and Camera Models - University Of Illinoisdhoiem.cs.illinois.edu/courses/vision_spring10/lectures/Lecture2... · Projective Geometry and Camera Models Computer

First Photograph

First photograph– Took 8 hours on pewter plate

Joseph Niepce, 1826

Photograph of the first photograph

Stored at UT Austin

Page 11: Projective Geometry and Camera Models - University Of Illinoisdhoiem.cs.illinois.edu/courses/vision_spring10/lectures/Lecture2... · Projective Geometry and Camera Models Computer

Point of observation

Figures © Stephen E. Palmer, 2002

Dimensionality Reduction Machine (3D to 2D)

3D world 2D image

Page 12: Projective Geometry and Camera Models - University Of Illinoisdhoiem.cs.illinois.edu/courses/vision_spring10/lectures/Lecture2... · Projective Geometry and Camera Models Computer

Projection can be tricky…Slide source: Seitz

Page 13: Projective Geometry and Camera Models - University Of Illinoisdhoiem.cs.illinois.edu/courses/vision_spring10/lectures/Lecture2... · Projective Geometry and Camera Models Computer

Projection can be tricky…Slide source: Seitz

Page 14: Projective Geometry and Camera Models - University Of Illinoisdhoiem.cs.illinois.edu/courses/vision_spring10/lectures/Lecture2... · Projective Geometry and Camera Models Computer

Projective Geometry

What is lost?• Length

Which is closer?

Who is taller?

Page 15: Projective Geometry and Camera Models - University Of Illinoisdhoiem.cs.illinois.edu/courses/vision_spring10/lectures/Lecture2... · Projective Geometry and Camera Models Computer

Length is not preserved

Figure by David Forsyth

B’

C’

A’

Page 16: Projective Geometry and Camera Models - University Of Illinoisdhoiem.cs.illinois.edu/courses/vision_spring10/lectures/Lecture2... · Projective Geometry and Camera Models Computer

Projective Geometry

What is lost?• Length

• Angles

Perpendicular?

Parallel?

Page 17: Projective Geometry and Camera Models - University Of Illinoisdhoiem.cs.illinois.edu/courses/vision_spring10/lectures/Lecture2... · Projective Geometry and Camera Models Computer

Projective Geometry

What is preserved?• Straight lines are still straight

Page 18: Projective Geometry and Camera Models - University Of Illinoisdhoiem.cs.illinois.edu/courses/vision_spring10/lectures/Lecture2... · Projective Geometry and Camera Models Computer

Vanishing points and lines

Parallel lines in the world intersect in the image at a “vanishing point”

Page 19: Projective Geometry and Camera Models - University Of Illinoisdhoiem.cs.illinois.edu/courses/vision_spring10/lectures/Lecture2... · Projective Geometry and Camera Models Computer

Vanishing points and lines

oVanishing Point oVanishing Point

Vanishing Line

Page 20: Projective Geometry and Camera Models - University Of Illinoisdhoiem.cs.illinois.edu/courses/vision_spring10/lectures/Lecture2... · Projective Geometry and Camera Models Computer

Vanishing points and lines

Vanishingpoint

Vanishingline

Vanishingpoint

Vertical vanishingpoint

(at infinity)

Slide from Efros, Photo from Criminisi

Page 21: Projective Geometry and Camera Models - University Of Illinoisdhoiem.cs.illinois.edu/courses/vision_spring10/lectures/Lecture2... · Projective Geometry and Camera Models Computer

Vanishing points and lines

Photo from online Tate collection

Page 22: Projective Geometry and Camera Models - University Of Illinoisdhoiem.cs.illinois.edu/courses/vision_spring10/lectures/Lecture2... · Projective Geometry and Camera Models Computer

Note on estimating vanishing points

Use multiple lines for better accuracy… but lines will not intersect at exactly the same point in practice

One solution: take mean of intersecting pairs… bad idea!

Instead, minimize angular differences

Page 23: Projective Geometry and Camera Models - University Of Illinoisdhoiem.cs.illinois.edu/courses/vision_spring10/lectures/Lecture2... · Projective Geometry and Camera Models Computer

(more vanishing points on board)

Page 24: Projective Geometry and Camera Models - University Of Illinoisdhoiem.cs.illinois.edu/courses/vision_spring10/lectures/Lecture2... · Projective Geometry and Camera Models Computer

Vanishing objects

Page 25: Projective Geometry and Camera Models - University Of Illinoisdhoiem.cs.illinois.edu/courses/vision_spring10/lectures/Lecture2... · Projective Geometry and Camera Models Computer

Projection: world coordinates image coordinates

(work on board)

Page 26: Projective Geometry and Camera Models - University Of Illinoisdhoiem.cs.illinois.edu/courses/vision_spring10/lectures/Lecture2... · Projective Geometry and Camera Models Computer

Homogeneous coordinates

Conversion

Converting to homogeneous coordinates

homogeneous image coordinates

homogeneous scene coordinates

Converting from homogeneous coordinates

Page 27: Projective Geometry and Camera Models - University Of Illinoisdhoiem.cs.illinois.edu/courses/vision_spring10/lectures/Lecture2... · Projective Geometry and Camera Models Computer

Homogeneous coordinates

Invariant to scaling

Point in Euclidean is ray in Homogeneous

⎥⎦

⎤⎢⎣

⎡=⎥

⎤⎢⎣

⎡⇒

⎥⎥⎥

⎢⎢⎢

⎡=

⎥⎥⎥

⎢⎢⎢

wywx

kwkykwkx

kwkykx

wyx

k

Homogeneous Coordinates

Euclidean Coordinates

Page 28: Projective Geometry and Camera Models - University Of Illinoisdhoiem.cs.illinois.edu/courses/vision_spring10/lectures/Lecture2... · Projective Geometry and Camera Models Computer

Basic geometry in homogeneous coordinates

• Line equation:  ax + by + c = 0

• Append 1 to pixel coordinate to get homogeneous coordinate

• Line given by cross product of two points

• Intersection of two lines given by cross product of the lines

⎥⎥⎥

⎢⎢⎢

⎡=1i

i

i vu

p

jiij ppline ×=

jiij linelineq ×=

⎥⎥⎥

⎢⎢⎢

⎡=

i

i

i

i

cba

line

Page 29: Projective Geometry and Camera Models - University Of Illinoisdhoiem.cs.illinois.edu/courses/vision_spring10/lectures/Lecture2... · Projective Geometry and Camera Models Computer

Another problem solved by homogeneous coordinates

Euclidean: (Inf, Inf)Homogeneous: (1, 1, 0)

Intersection of parallel linesEuclidean: (Inf, Inf) Homogeneous: (1, 2, 0)

Page 30: Projective Geometry and Camera Models - University Of Illinoisdhoiem.cs.illinois.edu/courses/vision_spring10/lectures/Lecture2... · Projective Geometry and Camera Models Computer

Slide Credit: Saverese

Projection matrix

[ ]XtRKx = x: Image Coordinates: (u,v,1)K: Intrinsic Matrix (3x3)R: Rotation (3x3) t: Translation (3x1)X: World Coordinates: (X,Y,Z,1)

Ow

iw

kw

jwR,T

Page 31: Projective Geometry and Camera Models - University Of Illinoisdhoiem.cs.illinois.edu/courses/vision_spring10/lectures/Lecture2... · Projective Geometry and Camera Models Computer

Interlude: when have I used this stuff?

Page 32: Projective Geometry and Camera Models - University Of Illinoisdhoiem.cs.illinois.edu/courses/vision_spring10/lectures/Lecture2... · Projective Geometry and Camera Models Computer

When have I used this stuff?

Object Recognition (CVPR 2006)

Page 33: Projective Geometry and Camera Models - University Of Illinoisdhoiem.cs.illinois.edu/courses/vision_spring10/lectures/Lecture2... · Projective Geometry and Camera Models Computer

When have I used this stuff?

Single‐view reconstruction (SIGGRAPH 2005)

Page 34: Projective Geometry and Camera Models - University Of Illinoisdhoiem.cs.illinois.edu/courses/vision_spring10/lectures/Lecture2... · Projective Geometry and Camera Models Computer

When have I used this stuff?

Getting spatial layout in indoor scenes (ICCV 2009)

Page 35: Projective Geometry and Camera Models - University Of Illinoisdhoiem.cs.illinois.edu/courses/vision_spring10/lectures/Lecture2... · Projective Geometry and Camera Models Computer

When have I used this stuff?

Inserting photographed objects into images (SIGGRAPH 2007)

Original Created

Page 36: Projective Geometry and Camera Models - University Of Illinoisdhoiem.cs.illinois.edu/courses/vision_spring10/lectures/Lecture2... · Projective Geometry and Camera Models Computer

When have I used this stuff?

Inserting synthetic objects into images (submitted)

Page 37: Projective Geometry and Camera Models - University Of Illinoisdhoiem.cs.illinois.edu/courses/vision_spring10/lectures/Lecture2... · Projective Geometry and Camera Models Computer

[ ]X0IKx =⎥⎥⎥⎥

⎢⎢⎢⎢

⎥⎥⎥

⎢⎢⎢

⎡=

⎥⎥⎥

⎢⎢⎢

10100000000

1zyx

ff

vu

k

K

Slide Credit: Saverese

Projection matrix

Intrinsic Assumptions• Unit aspect ratio• Optical center at (0,0)• No skew

Extrinsic Assumptions• No rotation• Camera at (0,0,0)

Page 38: Projective Geometry and Camera Models - University Of Illinoisdhoiem.cs.illinois.edu/courses/vision_spring10/lectures/Lecture2... · Projective Geometry and Camera Models Computer

Remove assumption: known optical center

[ ]X0IKx =⎥⎥⎥⎥

⎢⎢⎢⎢

⎥⎥⎥

⎢⎢⎢

⎡=

⎥⎥⎥

⎢⎢⎢

101000000

10

0

zyx

vfuf

vu

k

Intrinsic Assumptions• Unit aspect ratio• No skew

Extrinsic Assumptions• No rotation• Camera at (0,0,0)

Page 39: Projective Geometry and Camera Models - University Of Illinoisdhoiem.cs.illinois.edu/courses/vision_spring10/lectures/Lecture2... · Projective Geometry and Camera Models Computer

Remove assumption: square pixels

[ ]X0IKx =⎥⎥⎥⎥

⎢⎢⎢⎢

⎥⎥⎥

⎢⎢⎢

⎡=

⎥⎥⎥

⎢⎢⎢

101000000

10

0

zyx

vu

vu

k βα

Intrinsic Assumptions• No skew

Extrinsic Assumptions• No rotation• Camera at (0,0,0)

Page 40: Projective Geometry and Camera Models - University Of Illinoisdhoiem.cs.illinois.edu/courses/vision_spring10/lectures/Lecture2... · Projective Geometry and Camera Models Computer

Remove assumption: non‐skewed pixels

[ ]X0IKx =⎥⎥⎥⎥

⎢⎢⎢⎢

⎥⎥⎥

⎢⎢⎢

⎡=

⎥⎥⎥

⎢⎢⎢

10100000

10

0

zyx

vus

vu

k βα

Intrinsic Assumptions Extrinsic Assumptions• No rotation• Camera at (0,0,0)

Note: different books use different notation for parameters

Page 41: Projective Geometry and Camera Models - University Of Illinoisdhoiem.cs.illinois.edu/courses/vision_spring10/lectures/Lecture2... · Projective Geometry and Camera Models Computer

Oriented and Translated Camera

Ow

iw

kw

jw

t

R

Page 42: Projective Geometry and Camera Models - University Of Illinoisdhoiem.cs.illinois.edu/courses/vision_spring10/lectures/Lecture2... · Projective Geometry and Camera Models Computer

Allow camera translation

[ ]XtIKx =⎥⎥⎥⎥

⎢⎢⎢⎢

⎥⎥⎥

⎢⎢⎢

⎥⎥⎥

⎢⎢⎢

⎡=

⎥⎥⎥

⎢⎢⎢

1100010001

1000

0

10

0

zyx

ttt

vu

vu

z

y

x

βα

Intrinsic Assumptions Extrinsic Assumptions• No rotation

Page 43: Projective Geometry and Camera Models - University Of Illinoisdhoiem.cs.illinois.edu/courses/vision_spring10/lectures/Lecture2... · Projective Geometry and Camera Models Computer

3D Rotation of Points

Rotation around the coordinate axes, counter-clockwise:

⎥⎥⎥

⎢⎢⎢

⎡ −=

⎥⎥⎥

⎢⎢⎢

−=

⎥⎥⎥

⎢⎢⎢

⎡−=

1000cossin0sincos

)(

cos0sin010

sin0cos)(

cossin0sincos0001

)(

γγγγ

γ

ββ

βββ

ααααα

z

y

x

R

R

R

p

p’

γ

y

z

Slide Credit: Saverese

Page 44: Projective Geometry and Camera Models - University Of Illinoisdhoiem.cs.illinois.edu/courses/vision_spring10/lectures/Lecture2... · Projective Geometry and Camera Models Computer

Allow camera rotation

[ ]XtRKx =

⎥⎥⎥⎥

⎢⎢⎢⎢

⎥⎥⎥

⎢⎢⎢

⎥⎥⎥

⎢⎢⎢

⎡=

⎥⎥⎥

⎢⎢⎢

1100

01 333231

232221

131211

0

0

zyx

trrrtrrrtrrr

vus

vu

z

y

x

βα

Page 45: Projective Geometry and Camera Models - University Of Illinoisdhoiem.cs.illinois.edu/courses/vision_spring10/lectures/Lecture2... · Projective Geometry and Camera Models Computer

Degrees of freedom

[ ]XtRKx =

⎥⎥⎥⎥

⎢⎢⎢⎢

⎥⎥⎥

⎢⎢⎢

⎥⎥⎥

⎢⎢⎢

⎡=

⎥⎥⎥

⎢⎢⎢

1100

01 333231

232221

131211

0

0

zyx

trrrtrrrtrrr

vus

vu

k

z

y

x

βα

5 6

Page 46: Projective Geometry and Camera Models - University Of Illinoisdhoiem.cs.illinois.edu/courses/vision_spring10/lectures/Lecture2... · Projective Geometry and Camera Models Computer

Scaled Orthographic Projection

• Special case of perspective projection– Distance from the COP to the PP is infinite

– Also called “parallel projection”

– What’s the projection matrix?

Image World

Slide by Steve Seitz

⎥⎥⎥⎥

⎢⎢⎢⎢

⎥⎥⎥

⎢⎢⎢

⎡=

⎥⎥⎥

⎢⎢⎢

1100000100001

zyx

wvu

Page 47: Projective Geometry and Camera Models - University Of Illinoisdhoiem.cs.illinois.edu/courses/vision_spring10/lectures/Lecture2... · Projective Geometry and Camera Models Computer

Other things to be aware of

Page 48: Projective Geometry and Camera Models - University Of Illinoisdhoiem.cs.illinois.edu/courses/vision_spring10/lectures/Lecture2... · Projective Geometry and Camera Models Computer

Radial Distortion

Image from Martin Habbecke

Corrected Barrel Distortion

Page 49: Projective Geometry and Camera Models - University Of Illinoisdhoiem.cs.illinois.edu/courses/vision_spring10/lectures/Lecture2... · Projective Geometry and Camera Models Computer

Focal length, aperture, depth of field

A lens focuses parallel rays onto a single focal point– focal point at a distance f beyond the plane of the lens

– Aperture of diameter D restricts the range of rays

focal point

F

optical center(Center Of Projection)

Slide source: Seitz

Page 50: Projective Geometry and Camera Models - University Of Illinoisdhoiem.cs.illinois.edu/courses/vision_spring10/lectures/Lecture2... · Projective Geometry and Camera Models Computer

Depth of field

Changing the aperture size or focal length affects depth of field

f / 5.6

f / 32

Flower images from Wikipedia   http://en.wikipedia.org/wiki/Depth_of_field

Slide source: Seitz

Page 51: Projective Geometry and Camera Models - University Of Illinoisdhoiem.cs.illinois.edu/courses/vision_spring10/lectures/Lecture2... · Projective Geometry and Camera Models Computer

Varying the aperture 

Large apeture = small DOF Small apeture = large DOF

Slide from Efros

Page 52: Projective Geometry and Camera Models - University Of Illinoisdhoiem.cs.illinois.edu/courses/vision_spring10/lectures/Lecture2... · Projective Geometry and Camera Models Computer

Shrinking the aperture

• Why not make the aperture as small as possible?– Less light gets through– Diffraction effects

Slide by Steve Seitz

Page 53: Projective Geometry and Camera Models - University Of Illinoisdhoiem.cs.illinois.edu/courses/vision_spring10/lectures/Lecture2... · Projective Geometry and Camera Models Computer

Shrinking the aperture

Slide by Steve Seitz

Page 54: Projective Geometry and Camera Models - University Of Illinoisdhoiem.cs.illinois.edu/courses/vision_spring10/lectures/Lecture2... · Projective Geometry and Camera Models Computer

Relation between field of view and focal length

Dolly zoom (or “Vertigo effect”)http://www.youtube.com/watch?v=Y48R6‐iIYHs

Field of view (angle width) Film/Sensor Width

Focal lengthfdfov 2tan 1−=

Page 55: Projective Geometry and Camera Models - University Of Illinoisdhoiem.cs.illinois.edu/courses/vision_spring10/lectures/Lecture2... · Projective Geometry and Camera Models Computer

Things to remember

• Vanishing points and vanishing lines

• Pinhole camera model and camera projection matrix

• Homogeneous coordinates

Vanishingpoint

Vanishingline

Vanishingpoint

Vertical vanishingpoint

(at infinity)

[ ]XtRKx =

Page 56: Projective Geometry and Camera Models - University Of Illinoisdhoiem.cs.illinois.edu/courses/vision_spring10/lectures/Lecture2... · Projective Geometry and Camera Models Computer

Next class

• Applications of camera model and projective geometry– Recovering the camera intrinsic and extrinsic parameters from an image

– Recovering size in the world

– Projecting from one plane to another (if time allows)

Page 57: Projective Geometry and Camera Models - University Of Illinoisdhoiem.cs.illinois.edu/courses/vision_spring10/lectures/Lecture2... · Projective Geometry and Camera Models Computer

Questions