Camera Intrinsics
- Also called: intrinsic parameters, intrinsic matrix
- Category: Foundations & spatial maths › Frames & transforms
- Tags: camera-calibration, computer-vision, projective-geometry, sensors, 3d-perception
The internal parameters of a camera, focal lengths, principal point and lens distortion, that map 3D points in the camera frame to pixel coordinates.
Definition
Camera intrinsics are the parameters that describe how a camera turns light from 3D points in its own coordinate frame into pixel positions. In the pinhole model they are collected in a 3×3 matrix K, containing the focal lengths fx and fy expressed in pixels, the principal point (cx, cy) where the optical axis meets the image, and sometimes a skew term that is zero for almost all modern sensors. A point (X, Y, Z) in the camera frame projects to pixel u = fx·X/Z + cx and v = fy·Y/Z + cy. Real lenses add distortion, usually modeled with radial and tangential coefficients in the Brown-Conrady model, or with dedicated fisheye models for wide-angle lenses.
Intrinsics are estimated by calibration. The common method, introduced by Zhang (2000), photographs a planar target such as a checkerboard from many orientations and solves for K and the distortion coefficients by minimizing reprojection error; OpenCV, MATLAB and ROS camera calibration tools all follow this approach. Factory calibrations stored in depth cameras are often good enough to use directly, but they should be read from the device, not guessed. Intrinsics change with resolution, cropping, zoom and sometimes focus, so a calibration is valid only for the image mode it was done in.
Intrinsics differ from extrinsics, which describe where the camera sits relative to the robot or the world. Together they give the full projection from world points to pixels. Robots use intrinsics everywhere: back-projecting depth pixels into point clouds, recovering object pose from image keypoints with Perspective-n-Point, undistorting images before feature matching, and rendering synthetic training images that match a real camera. Keeping intrinsics out of a learned model, and applying them in a geometric step afterwards, lets the same network work with a different camera.
Why it matters
Any measurement that links pixels to real-world geometry depends on intrinsics. Errors in them distort point clouds, bias pose estimates and break the match between simulated and real images, so correct intrinsics are a prerequisite for most robot vision.
Key applications
- Back-projecting depth images into point clouds
- Object and camera pose estimation with PnP
- Image undistortion before feature tracking and visual odometry
- Rendering synthetic training data that matches a real camera
- Stereo rectification and depth estimation
In practice
A team switches their grasping system from one RGB-D camera to another with a different resolution. Their keypoint detector outputs pixel coordinates, and pose is recovered with PnP using the camera matrix. Instead of retraining, they read the new camera's intrinsics from its driver for the exact stream resolution in use, pass the undistorted images to the detector, and update K in the PnP step. A quick check reprojects the 3D model of a known object into the image at the estimated pose; edges line up within a pixel or two, confirming that the parameters are right. When they later downscale images by half for speed, they also halve fx, fy, cx and cy.
Common misconceptions
- Focal length in K is the lens focal length in millimeters — it is expressed in pixels and depends on sensor pixel size and image resolution
- Intrinsics stay the same when images are resized or cropped — scaling changes focal lengths and principal point, and cropping shifts the principal point
- The principal point is always the exact image center — it is usually close but can be off by several pixels or more
- Lens distortion can be ignored for robotics — it matters most near image edges and for wide-angle lenses, where uncorrected errors can be large
Who should know this
- Robot vision and perception engineers
- Developers using RGB-D cameras for manipulation
- Researchers generating synthetic training data
- Robotics students learning projective geometry
Related technologies
- OpenCV calibrateCamera
- ROS camera_calibration
- Pinhole Camera Model
- Brown-Conrady Distortion Model
- Kannala-Brandt Fisheye Model
Related terms
Related projects
- pySLAM: Hybrid Python/C++ visual SLAM pipeline with classic and deep-learning front-ends
- AprilTag: The standard visual fiducial marker system for robot localization and pose estimation
- MRPT: Comprehensive C++ toolkit for mobile robotics, SLAM, and sensor-based navigation
- Gazebo: Industry-standard open-source robotics simulator with multi-physics and ROS integration
- PULP-Dronet: Visual navigation for nano-drones with CNN inference onboard a PULP processor.
- OpenWeedLocator: Low-cost Raspberry Pi weed detector that uses computer vision for precision spot spraying
Videos
- Intrinsic and Extrinsic Matrices | Camera Calibration: First Principles of Computer Vision
- Linear Camera Model | Camera Calibration: First Principles of Computer Vision