Skip to main content
These docs are old and won't be updated. Go to docs.kognic.com for our latest documentation!

Standard Camera Calibrations

The Camera calibration format is based on OpenCVs format and this paper. The different camera types supported are: PINHOLE, FISHEYE, KANNALA, PRINCIPALPOINTDIST, and FUSEDCYLINDRICAL. If your calibration model is not supported, you can also provide a custom camera calibration where you provide the implementation in the form of a WebAssembly module.

Camera Calibrations commonality

Common

All camera calibrations have the following attributes

KeyValueParameters
rotation_quaternionA RotationQuaternion objectw, x, y, z
positionA Position objectx, y, z
camera_matrixA CameraMatrix objectfx, fy, cx, cy
image_widthIntegerNA
image_heightIntegerNA
field_of_viewFloatNA

Pinhole

The PINHOLE camera model expands the common model with:

KeyValueParameters
distortion_coefficientsA DistortionCoefficients objectk1, k2, p1, p2, k3
examples/calibration/create_pinhole_calibration.py
loading...

Fisheye

The Fisheye camera model expands the PINHOLE model with the following

KeyValueParameters
xiFloatNA
examples/calibration/create_fisheye_calibration.py
loading...

Kannala

The KANNALA camera model changes and expands the PINHOLE with the following

KeyValueParameters
distortion_coefficientsA KannalaDistortionCoefficients object. The distortion parameters k3, k4, if available, can be assigned to p1 and p2 respectively. That is p1=k3 and p2=k4.k1, k2, p1, p2
undistortion_coefficientsA UndistortionCoefficients object.l1, l2, l3, l4
examples/calibration/create_kannala_calibration.py
loading...

Principal point distortion

The principal point distortion model consists of the common attributes plus

KeyValueParameters
principal_point_distortion_coefficientsA PrincipalPointDistortionCoefficients objectk1, k2
lens_projection_coefficients (optional. Default to values for model SF806)A LensProjectionCoefficients objectc1, c2,c3, c4,c5, c6
distortion_centerA DistortionCenter objectx, y
principal_pointA PrincipalPoint objectx, y
examples/calibration/create_principal_point_distortion_calibration.py
loading...

Fused cylindrical

The fused cylindrical model consists of the common attributes plus

KeyValueParameters
cut_angles_degreeA CutAngles object. Note these angles should be expressed in degrees.upper, lower
vertical_fov_degree (optional. Default 72.5 degrees)Float. Note this angle should be expressed in degrees.NA
horizontal_fov_degree (optional. Default 93 degrees)Float. Note this angle should be expressed in degrees.NA
max_altitude_angle_degree (optional. Default 90 degrees)Float. Note this angle should be expressed in degrees.NA
examples/calibration/create_fused_cylindrical_calibration.py
loading...

Cylindrical

The cylindrical model consists only of the common attributes. There are no extra attributes to set for this model.

examples/calibration/create_cylindrical_calibration.py
loading...

Principal point fisheye

The principal point fisheye model consists of the common attributes plus

KeyValueParameters
principal_point_fisheye_coefficientsA PrincipalPointFisheyeCoefficients objectalpha_l, alpha_r, beta_u, beta_l
examples/calibration/create_principal_point_fisheye_calibration.py
loading...