Recovering camera intrinsics without a calibration target. The absolute dual quadric, Kruppa equations, stratified self-calibration, and special cases like rotating cameras and planar motion.
Traditional camera calibration requires a known calibration target (a checkerboard, a grid of control points). But what if you have only images of an unknown scene, taken by an unknown camera? Can you still recover the camera's intrinsic parameters?
Yes. Auto-calibration (or self-calibration) recovers the camera calibration matrix K from multiple views of an arbitrary scene, without any calibration target. The only requirement is some constraint on the cameras — typically that they share the same K, or that certain parameters (zero skew, known aspect ratio) are constant.
Start with a projective reconstruction (Pi, {Xj}) from multiple views. The goal is to find the 4×4 upgrading homography H that transforms this into a metric reconstruction:
H has 15 DOF (a general 4×4 projective transformation). If all cameras share the same K (5 unknowns), then the constraints from m cameras give 5m equations for 15 + 5 = 20 unknowns. With m ≥ 3 cameras, this is (over)determined.
The absolute dual quadric Q*∞ is a 4×4 symmetric matrix that encodes both the plane at infinity and the absolute conic. In a metric frame:
In an arbitrary projective frame, Q*∞ = H [I 0 ; 0T 0] HT. The key property linking Q*∞ to calibration is:
So the projection of Q*∞ through camera Pi gives the dual IAC ω*i = KiKiT.
An older approach to auto-calibration uses the Kruppa equations, which relate the dual IAC ω* directly to the fundamental matrix F between two views:
Each pair of views provides 2 independent Kruppa equations (the constraint has 3 equations but only 2 are independent because of the scale ambiguity).
For a camera with constant K and zero skew, the Kruppa equations from 3 pairs of views give enough constraints to determine ω* and hence K.
The stratified approach performs auto-calibration in two steps:
| Step | What | How |
|---|---|---|
| 1. Projective → Affine | Find π∞ | Modulus constraint: ω* = K KT is independent of camera pose. The plane at infinity is determined by the constraint that all ω*i are consistent. |
| 2. Affine → Metric | Find Ω∞ | Given the affine reconstruction, determine the absolute conic from the known structure of K. |
When the camera rotates about its centre (no translation), there is no baseline, F is undefined, and standard reconstruction fails. But auto-calibration becomes easier!
Two views related by pure rotation are connected by a homography H = K R K−1. From H and the constraint that K is the same:
Zhang's method: image a planar pattern (not a full 3D calibration object) from multiple viewpoints. The homography between the model plane and each image provides constraints on K.
Each view of a known metric plane provides 2 constraints on ω (from the circular points of the plane). With ω having 5 DOF for a general K, three views of the plane suffice. With zero skew assumed, two views suffice.
When a camera moves in a plane (translation in one plane + rotation about an axis perpendicular to it), additional constraints on F and hence on K arise. The symmetric part of F has rank 2, giving an extra constraint per view pair.
Turntable motion (rotation about a fixed axis) is a special case where the rotation angle between views can be computed, and K can be determined from the constraint that the rotation axis maps to a known vanishing point.
| Issue | Guidance |
|---|---|
| Degeneracies | Pure rotation or planar scene causes F degeneracy; use homography-based methods instead |
| Varying K | Allow focal length to vary (zoom); keep skew=0 and aspect ratio=1 as constants |
| Critical motions | Some camera motions do not provide enough constraints (e.g., pure translation with constant K gives only an affine reconstruction) |
| Initialization | Auto-calibration is sensitive to initialization. Use the linear Q*∞ or Kruppa solution as starting point, then refine with bundle adjustment |
| The practical approach | Assume zero skew, square pixels, principal point at image centre. This leaves only focal length unknown per camera. Very robust with 3+ views. |
| Link | Connection |
|---|---|
| Ch 8 → Ch 19 | The IAC ω from single-view geometry is the same ω used in auto-calibration constraints |
| Ch 10 → Ch 19 | Stratified reconstruction upgrades projective → affine → metric; auto-calibration provides the metric upgrade |
| Ch 13 → Ch 19 | H∞ = KRK−1 and rotating-camera homographies are key tools |
| Ch 18 → Ch 19 | Auto-calibration constraints integrate into bundle adjustment for joint optimization |