Hartley & Zisserman, Chapter 3

Projective Geometry
& Transformations of 3D

Planes, lines, quadrics in three-space — the plane at infinity, the absolute conic, and everything you need before cameras enter the picture.

Prerequisites: Chapter 2 (Projective 2D). Every idea here generalizes from 2D.
10
Chapters
5+
Simulations

Chapter 0: Why 3D Projective Geometry?

Chapter 2 gave us the geometry of the image plane — a 2D projective world. But cameras live in 3D space, and so do the scenes they photograph. To understand how a camera projects 3D reality onto a 2D image, we need the geometry of three-dimensional projective space, IP3.

The good news: almost everything from 2D generalizes cleanly. Points become 4-vectors. Lines (which were dual to points in 2D) become more interesting — they now have 4 degrees of freedom and need special representations. The line at infinity becomes the plane at infinity. The circular points become the absolute conic.

The extra dimension also introduces genuinely new objects: quadric surfaces (the 3D analog of conics), twisted cubics, and Plucker coordinates for lines.

The big picture: 2D projective geometry describes the image. 3D projective geometry describes the world. The camera is the bridge between them — a 3×4 matrix that maps 4-vectors (3D points) to 3-vectors (image points).
Points and Planes in 3D

A set of points in 3D space and the planes they define. Rotate the view with the slider.

Rotate30
In IP3, what are points represented by?

Chapter 1: Points & Planes

A point in IP3 is a homogeneous 4-vector X = (X1, X2, X3, X4)T. When X4 ≠ 0, it represents the Euclidean point (X1/X4, X2/X4, X3/X4). When X4 = 0, it is a point at infinity encoding a direction.

A plane is also a 4-vector π = (π1, π2, π3, π4)T. A point X lies on plane π if and only if πTX = 0. This is exactly the same incidence relation as points and lines in 2D, but now in 4D homogeneous space.

Duality in 3D: Points and planes are dual in IP3. Three points in general position define a unique plane. Three planes in general position meet at a unique point. Lines are self-dual — they sit between points and planes.
πTX = 0   (incidence)   |   3 points → 1 plane   |   3 planes → 1 point
EntityRepresentationDOF
Point4-vector X3
Plane4-vector π3
LinePlucker matrix or 6-vector4
Quadric4×4 symmetric matrix Q9
How many points in general position are needed to define a unique plane in IP3?

Chapter 2: Lines in 3D

Lines in IP3 are more complex than in IP2. A line has 4 degrees of freedom (pick two points on it: 3 + 3 = 6 DOF for two points, minus 2 for position along the line). There is no single 4-vector representation that works.

Instead, we use Plucker coordinates. Given two points A and B on the line, the Plucker matrix is the 4×4 skew-symmetric matrix L = ABT − BAT. Its six independent entries form the Plucker vector (l12, l13, l14, l23, l42, l34).

The Plucker constraint: Not every 6-vector is a valid line. A Plucker vector must satisfy the quadratic constraint l12l34 + l13l42 + l14l23 = 0. This single equation cuts the 5-dimensional space of 6-vectors-up-to-scale down to the 4-dimensional space of lines.
L = ABT − BAT   (4×4 skew-symmetric, rank 2)

A plane π contains the line L if and only if Lπ = 0. Two lines L and L' intersect if and only if their Plucker vectors satisfy a bilinear condition. The dual Plucker matrix L* represents the same line but in terms of the two planes that define it.

How many degrees of freedom does a line in IP3 have?

Chapter 3: Quadrics

A quadric surface in IP3 is the 3D analog of a conic. It is defined by a 4×4 symmetric matrix Q. A point X lies on the quadric if XTQX = 0. Quadrics include ellipsoids, hyperboloids, paraboloids, cylinders, and cones.

A quadric has 9 degrees of freedom (10 independent entries in a 4×4 symmetric matrix, minus 1 for scale). Therefore 9 points in general position determine a unique quadric.

Tangent planes: The tangent plane to quadric Q at point X is π = QX. The dual quadric Q* = adj(Q) satisfies πTQ*π = 0 for all tangent planes π. This duality between point-quadrics and plane-quadrics is the 3D analog of the conic/dual-conic duality.
Quadric Surfaces

Toggle between different quadric types. All are described by XTQX = 0 for different matrices Q.

Quadric TypeSignature of QExample
Ellipsoid(+,+,+,−)x²+y²+z²=1
Hyperboloid (1 sheet)(+,+,−,−)x²+y²−z²=1
Cone(+,+,−,0)x²+y²−z²=0
How many points in general position determine a quadric?

Chapter 4: The Transformation Hierarchy in 3D

Just as in 2D, 3D transformations form a hierarchy. A projective transformation of IP3 is a 4×4 non-singular matrix H with 15 DOF. Specializing H step by step gives affine, similarity, and Euclidean transformations.

Projective (15 DOF)
x' = Hx. Preserves incidence, cross-ratio. Most general.
↓ fix plane at infinity
Affine (12 DOF)
Last row = (0,0,0,1). Preserves parallelism, volume ratios.
↓ fix absolute conic
Similarity (7 DOF)
A = sR. Preserves angles, length ratios.
↓ fix scale
Euclidean (6 DOF)
A = R. Preserves distances.
The pattern is identical to 2D: Moving from projective to affine means identifying the plane at infinity. Moving from affine to metric means identifying the absolute conic on that plane. Each step pins down more geometric structure.
How many degrees of freedom does a 3D projective transformation have?

Chapter 5: The Plane at Infinity

The plane at infinity, π, is the set of all points at infinity in IP3. In canonical coordinates it is π = (0, 0, 0, 1)T. Every direction in 3D corresponds to a unique point on π, and parallel lines meet on it.

Two planes are parallel if and only if their intersection line lies on π. An affine transformation is precisely a projective transformation that fixes π. This is the 3D analog of fixing l in 2D.

Why it matters for vision: When you take a photograph, parallel lines converge to a vanishing point. That vanishing point is the image of a point on π. Vanishing lines are images of lines on π. Identifying these in images lets us recover the plane at infinity and hence affine structure.
π = (0, 0, 0, 1)T   |   Points at infinity: X4 = 0   |   Direction (d1, d2, d3, 0)T
What is the 3D analog of the line at infinity l?

Chapter 6: The Absolute Conic

In 2D, the circular points (1, ±i, 0)T encode metric structure on the line at infinity. In 3D, their analog is the absolute conic Ω — a conic on the plane at infinity that encodes the full Euclidean structure of 3D space.

The absolute conic is defined by the equations X12 + X22 + X32 = 0, X4 = 0. It consists entirely of complex points (no real point satisfies x2+y2+z2=0). Despite being "imaginary," it is the most important geometric object in metric vision.

Key properties:
1. Ω is fixed under a projective transformation H if and only if H is a similarity.
2. Every sphere intersects π in Ω (just as every circle passes through the circular points in 2D).
3. Two directions are orthogonal iff the corresponding points at infinity are conjugate with respect to Ω.
Ω:   X12 + X22 + X32 = 0,   X4 = 0

The image of the absolute conic (IAC) will play a starring role in camera calibration (Chapter 8). When a camera photographs Ω, it projects to a conic ω in the image that encodes the calibration matrix K: specifically, ω = (KKT)−1.

The absolute conic is fixed under which class of transformations?

Chapter 7: The Absolute Dual Quadric

Working with Ω directly is awkward because it lives on π, which we may not know. The absolute dual quadric Q* provides a more convenient representation that lives in the full 3D space.

Q* is a degenerate dual quadric (a 4×4 matrix of rank 3) defined in canonical coordinates as:

Q* = [I3×3 0 ; 0T 0]

It has three key properties that make it the workhorse of auto-calibration:

Properties of Q*:
1. Q* is fixed under H iff H is a similarity.
2. The null-vector of Q* is π (so π is encoded in Q*).
3. The angle between two planes π1, π2 can be computed from Q*.

In auto-calibration (Chapter 19), we estimate Q* from multiple images without any calibration pattern, then extract both the plane at infinity and the absolute conic from it. This gives us the full metric structure of the scene.

What is the null-vector of the absolute dual quadric Q*?

Chapter 8: Twisted Cubics & Other Curves

A twisted cubic is a curve in IP3 that is the 3D analog of a conic in IP2. Parametrically it is (θ3, θ2, θ, 1)T — a degree-3 curve that twists through space without lying in any plane.

Twisted cubics are determined by 6 points in general position. Any projective transformation maps a twisted cubic to another twisted cubic. They arise naturally in structure-from-motion: the set of camera centres consistent with 6 image correspondences traces a twisted cubic.

Why this matters for reconstruction: The twisted cubic is the critical curve for certain degeneracies in multi-view geometry. When camera centres lie on a twisted cubic together with the 3D points, standard reconstruction algorithms fail. Understanding this curve helps diagnose when things go wrong.
How many points in general position determine a twisted cubic?

Chapter 9: Connections

This chapter extended every 2D projective concept to 3D. The key new objects and their 2D analogs are:

2D (Chapter 2)3D (Chapter 3)Role
Point (3-vector)Point (4-vector)Basic element
Line (3-vector)Plane (4-vector)Dual element
Line (Plucker, 4 DOF)Self-dual element
Conic (3×3 sym)Quadric (4×4 sym)Degree-2 surface
lπAffine ↔ projective boundary
Circular pointsAbsolute conic ΩMetric structure
Absolute dual quadric Q*Auto-calibration target
"In IP3 Euclidean 3-space is augmented with a set of ideal points which are on a plane at infinity. Parallel lines, and now parallel planes, intersect on π."
— Hartley & Zisserman, Chapter 3
What is the 3D analog of conics?
← Chapter 2 Chapter 4: Estimation →