Camera models and calibration#
Camera models#
A set of classes that model the projective geometry of cameras.

Create central camera projection model |
|
Create fisheye camera projection model |
|
Create catadioptric camera projection model |
|
Create spherical camera projection model |
Calibration#
Intrinsic calibration of camera from multiple images#
- class CentralCamera(f: float | int | list[float | int] | tuple[float | int, ...] | ndarray = 1, distortion: ndarray | None = None, **kwargs)[source]
Create central camera projection model

- Parameters:
f (float, optional) – focal length, defaults to 8mm
distortion (array_like(5), optional) – camera distortion parameters, defaults to
Nonekwargs – arguments passed to
CameraBaseconstructor
A camera object contains methods for projecting 3D points and lines to the image plane, as well as supporting a virtual image plane onto which 3D points and lines can be drawn.
- References:
- Seealso:
CameraBaseFishEyeCameraSphericalCamera
- classmethod images2C(images, gridshape: tuple[int, int] = (7, 6), squaresize: float = 0.025) tuple[ndarray, ndarray, list] | None[source]
Calibrate camera from checkerboard images
- Parameters:
images (
ImageSource) – an iterator that returnsImageobjectsgridshape (tuple, optional) – number of grid squares in each dimension, defaults to (7,6)
squaresize (float, optional) – size of the grid squares in units of length, defaults to 0.025
- Returns:
camera calibration matrix, distortion parameters, image frames
- Return type:
ndarray(3,4), ndarray(5), list of named tuples
The distortion coefficients are in the order \((k_1, k_2, p_1, p_2, k_3)\) where \(k_i\) are radial distortion coefficients and \(p_i\) are tangential distortion coefficients.
Image frames that were successfully processed are returned as a list of named tuples
CalibrationFramewith elements:element
type
description
image
Imagecalibration image with overlaid annotation
pose
SE3instancepose of the camera with respect to the origin of this image
id
int
sequence number of this image in
imagesNote
The units used for
squaresizemust match the units used for defining 3D points in space.- References:
- Seealso:
Cpoints2CdecomposeCSE3