Understanding how images are formed through geometric transformations, camera projections, the physics of light interaction with surfaces, and how digital cameras capture the visual world.
How does a 3D world become a 2D image? This fundamental question is at the heart of computer vision.
What is this chapter about? We study the complete image formation pipeline—from geometric transformations that describe how objects move in space, to camera models that project 3D points onto 2D images, to the physics of how light interacts with surfaces.
Why does this matter? Understanding image formation is essential for:
How the topics connect: We start with geometric transformations in 2D and 3D—the mathematics of position and motion. Then we model cameras as projection systems that map 3D to 2D. We explore how light and color form the actual pixel values. Finally, we understand how digital sensors sample this continuous signal into discrete pixels.
Click any topic to jump in
Homogeneous coordinates, rotation matrices, and composition — geometric transformations in 2D and 3D.
Projection and distortion
Camera intrinsics, extrinsics, perspective vs orthographic — how 3D worlds become 2D images.
Radial and tangential distortion, undistortion — correcting real camera imperfections.
Light and color
Lambertian, specular, Phong, and BRDF models — how light interacts with surfaces.
Bayer patterns, color spaces, white balance, gamma — how cameras capture color.
Nyquist theorem, aliasing, anti-aliasing, and image pyramids — the signal processing foundation of CV.
Everything in computer vision involves transformations—moving cameras, rotating objects, warping images. This topic builds your fluency with the mathematical language of geometric transformations.
We'll see how homogeneous coordinates unify all transformations into matrix multiplications, making it elegant to compose multiple operations. This foundation is used throughout CV for camera models, image warping, and 3D reconstruction.
Geometric transformations map points from one coordinate system to another. In computer vision, these transformations are fundamental for modeling camera motion, object pose, image warping, and augmented reality applications.
The key transformations are:
Standard 2D transformations like rotation and scaling can be represented as 2×2 matrix multiplications. However, translation cannot—it requires addition. Homogeneous coordinates solve this by adding an extra dimension:
The extra coordinate is typically 1. To convert back:
Points at Infinity: When , we get points at infinity—useful for representing directions and vanishing points in perspective geometry.
Transformation Hierarchy:
Appending a coordinate turns the Euclidean group into a matrix group: in lets translations become linear. The projective equivalence is what makes perspective projection a matrix multiply — dividing by the third coordinate recovers pixel positions from homogeneous vectors.
Translate point by using a homogeneous transformation matrix.
A 2D rotation by angle (counterclockwise) is represented by an orthogonal matrix with determinant 1. Key properties:
The Special Orthogonal Group SO(2): All 2D rotation matrices form a mathematical group called SO(2). This has important implications for interpolating between rotations and understanding motion.
Small Angle Approximation: For small (radians): Useful for linearizing rotation in optimization.
Rotation matrices live in SO(2): orthogonal () with . The orthogonality constraint means , so inverting a rotation is free — just transpose. The single-parameter family forms a group: composing two rotations is adding angles, .
Rotate the unit vector by counterclockwise.
In 3D, rotations are more complex and form the group SO(3) (3 degrees of freedom despite 9 matrix elements). Common representations:
Rotation Matrices: 3×3 orthogonal matrices with det=1. Easy to compose but have 9 params for 3 DOF.
Euler Angles: Three sequential rotations (e.g., roll-pitch-yaw). Intuitive but suffer from gimbal lock where you lose a degree of freedom.
Axis-Angle: Rotation by angle around unit axis . Rodrigues' formula converts to matrix: where is the skew-symmetric matrix of .
Quaternions: 4D unit vectors with . Best for interpolation (SLERP) and avoids gimbal lock. Standard in robotics and 3D vision.
Lie Algebra: The tangent space of SO(3) at identity, denoted , is the space of skew-symmetric matrices. This is key for optimization on rotations.
3D rotations live in SO(3), a 3-dimensional manifold parameterized by 3 angles but embedded in with 6 constraints (). Unlike 2D rotations, 3D rotations do not commute: . This non-commutativity is why rotation order matters and why Euler angles suffer from gimbal lock.
What rotation matrix rotates around the z-axis (yaw)?
Multiple transformations can be combined by matrix multiplication. The order matters—transformations are applied right-to-left:
means: first Scale, then Rotate, then Translate
Rotating Around a Point P:
Combined:
Inverse Transformations: To undo :
Camera Transforms: World → Camera uses extrinsics , then Camera → Image uses intrinsics .
Composition is matrix multiplication: applying transform then gives (right-to-left). This associativity means you can precompute once and apply it to millions of points — the cost is one matrix multiply per point regardless of how many transforms were composed.
To rotate around point by , what sequence of transforms is needed?
A robot arm needs to:
Write the combined transformation matrix in homogeneous coordinates. Then apply it to the point (2, 0) and find the final position.