Skip to main content

Module camera_models

Module camera_models 

Source

Modules§

bal_pinhole
BAL (Bundle Adjustment in the Large) pinhole camera model.
double_sphere
Double Sphere camera model.
eucm
Extended Unified Camera Model (EUCM).
fov
Field-of-View (FOV) camera model.
ftheta
NVIDIA f-theta fisheye camera model.
kannala_brandt
Kannala-Brandt fisheye camera model.
pinhole
Pinhole camera model.
rad_tan
Radial-Tangential (Brown-Conrady) camera model.
ucm
Unified Camera Model (UCM).

Structs§

BALPinholeCameraStrict
Strict BAL camera model matching Snavely’s Bundler convention.
DoubleSphereCamera
Double Sphere camera model with 6 parameters.
EucmCamera
Extended Unified Camera Model with 6 parameters.
FThetaCamera
NVIDIA f-theta fisheye camera with 6 intrinsic parameters.
FovCamera
FOV camera model with 5 parameters.
KannalaBrandtCamera
Kannala-Brandt fisheye camera model with 8 parameters.
PinholeCamera
Pinhole camera model with 4 intrinsic parameters.
PinholeParams
Linear intrinsic parameters shared by every model except F-Theta.
RadTanCamera
A Radial-Tangential camera model with 9 intrinsic parameters.
UcmCamera
Unified Camera Model with 5 parameters.

Enums§

CameraModelError
Camera model errors.
DistortionModel
Lens distortion models. The exact parameter ranges are enforced by DistortionModel::validate.

Constants§

CONVERGENCE_THRESHOLD
Convergence threshold for iterative unprojection (e.g. Kannala-Brandt).
GEOMETRIC_PRECISION
Threshold for geometric validity checks (e.g. point in front of camera).
JACOBIAN_TEST_TOLERANCE
Allowed difference between analytic and numerical Jacobians in tests.
MIN_DEPTH
Minimum depth (meters) for a 3D point to be projectable.
NUMERICAL_DERIVATIVE_EPS
Step size for numerical differentiation of Jacobians.
PROJECTION_TEST_TOLERANCE
Allowed projection error in projection tests.

Traits§

CameraModel
Trait for camera projection models.

Functions§

validate_point_in_front
Returns Ok(()) if z >= GEOMETRIC_PRECISION (1e-6) and Err(PointAtCameraCenter) otherwise. Used to reject points too close to the optical axis that would cause numerical instability in the perspective division.