Calibrated camera format

This format defines the calibrated cameras (output of calibration).

Definitions

  • Sensor: A sensor is a model of a physical imaging sensor, typically a combination of a sensing chip (like a CCD or CMOS) and a lens. It is described by its type and internal parameters. It contains both the initial and the optimized internal parameters, as well as rig relatives if applicable.

  • Camera: A camera represents an instance of a shot taken by a sensor, with a given pose. It contains geolocation (an initial pose estimate from GPS and IMU) if applicable, the optimized pose, and the optimized rolling shutter parameters if applicable.

Coordinate system specification

Same as the projected camera coordinate system specification

Format specification

Specification format

Version

“application/opf-calibrated-cameras+json”

“1.0”


Calibrated cameras

Definition of Calibrated Camera Parameters

Calibrated cameras Properties

Type

Description

Required

format

string

For calibrated cameras it must be "application/opf-calibrated-cameras+json"

✓ Yes

version

string

The version of this schema as MAJOR.MINOR. Breaking changes are reflected by a change in MAJOR version. Can optionally include a pre-release tag MAJOR.MINOR-tag. Examples: 0.1, 1.0, 1.0-draft1

✓ Yes

sensors

sensor []

Calibrated sensor parameters.

✓ Yes

cameras

camera []

Calibrated camera parameters.

✓ Yes

extensions

object

JSON object with extension-specific objects. Extensions follow the naming convention VENDOR[_(team❘product)]_extname

No


Calibrated camera

Calibrated camera Properties

Type

Description

Required

id

integer

Unique ID of the camera, it must appear in the input cameras.

✓ Yes

sensor_id

integer

Unique ID of the sensor used by this camera.

✓ Yes

position

number [3]

Calibrated coordinates in the processing CRS.

✓ Yes

orientation_deg

number [3]

Calibrated Omega-Phi-Kappa angles in degree representing a rotation R_x(ω)R_y(ϕ)R_z(κ) from the image CS to the processing CRS.

✓ Yes

rolling_shutter

number [3]

Refer to this document.

No

extensions

object

JSON object with extension-specific objects. Extensions follow the naming convention VENDOR[_(team❘product)]_extname

No


Calibrated rig relatives

Calibrated rig relatives contain the optimised relative translations and rotations in processing CRS units.

Calibrated rig relatives Properties

Type

Description

Required

translation

number [3]

Relative translation in processing CRS units

✓ Yes

rotation_angles_deg

number [3]

Euler angles in degree (see convention here)

✓ Yes

extensions

object

JSON object with extension-specific objects. Extensions follow the naming convention VENDOR[_(team❘product)]_extname

No


Calibrated sensor

Calibrated sensor Properties

Type

Description

Required

id

integer

Unique ID of the sensor, it must appear in the input cameras.

✓ Yes

internals

sensor_internals

Calibrated sensor internal parameters.

✓ Yes

rig_relatives

calibrated_rig_relatives

Calibrated rig relatives contain the optimised relative translations and rotations in processing CRS units.

No

extensions

object

JSON object with extension-specific objects. Extensions follow the naming convention VENDOR[_(team❘product)]_extname

No


Fisheye internals

Parameters of the fisheye camera model as described in Pix4D knowledge base.

Fisheye internals Properties

Type

Description

Required

type

string

Must be "fisheye".

✓ Yes

principal_point_px

principal_point

(x, y) location of the principal point in pixels with (0, 0) being at the top left corner of the top left pixel.

✓ Yes

is_symmetric_affine

boolean

If true, it is prior knowledge that the affine matrix is symmetric (that is, c=f and d=e=0) and should be kept symmetric.

✓ Yes

affine

number [4]

Affine transformation parameters as [ c d; e f ]

✓ Yes

polynomial

number []

The coefficients of the distortion polynomial.

✓ Yes

is_p0_zero

boolean

If true, it is prior knowledge that the first polynomial coefficient is equal to zero and should be kept zero.

✓ Yes

extensions

object

JSON object with extension-specific objects. Extensions follow the naming convention VENDOR[_(team❘product)]_extname

No


Internals

One of perspective, fisheye or spherical internal. Parameters of the camera models are described in Pix4D knowledge base.


Perspective internals

Parameters of the perspective camera model as described in Pix4D knowledge base.

Perspective internals Properties

Type

Description

Required

type

string

Must be "perspective".

✓ Yes

principal_point_px

principal_point

(x, y) location of the principal point in pixels with (0, 0) being at the top left corner of the top left pixel.

✓ Yes

focal_length_px

number

Focal length in pixels.

✓ Yes

radial_distortion

number [3]

The radial distortion coefficients (R1, R2, R3).

✓ Yes

tangential_distortion

number [2]

The tangential distortion coefficients (T1, T2).

✓ Yes

extensions

object

JSON object with extension-specific objects. Extensions follow the naming convention VENDOR[_(team❘product)]_extname

No


Principal point

(x, y) location of the principal point in pixels with (0, 0) being at the top left corner of the top left pixel.


Spherical internals

Spherical internals Properties

Type

Description

Required

type

string

Must be "spherical".

✓ Yes

principal_point_px

principal_point

(x, y) location of the principal point in pixels with (0, 0) being at the top left corner of the top left pixel.

✓ Yes

extensions

object

JSON object with extension-specific objects. Extensions follow the naming convention VENDOR[_(team❘product)]_extname

No

Example

{
    "format": "application/opf-calibrated-cameras+json",
    "version": "1.0",
    "cameras": [
        {
            "id": 47292894,
            "orientation_deg": [
                3.3432,
                -5.2849554,
                9.345113
            ],
            "position": [
                483.054,
                13.957,
                28.12
            ],
            "sensor_id": 18493134
        },
        {
            "id": 57282923,
            "orientation_deg": [
                2.35224,
                -4.4422,
                9.03452
            ],
            "position": [
                483.04,
                13.972,
                28.12
            ],
            "sensor_id": 21845677
        },
        {
            "id": 28493939,
            "orientation_deg": [
                1.4753,
                10.5839,
                -2.94832
            ],
            "position": [
                243.054,
                521.957,
                31.12
            ],
            "sensor_id": 57282113
        }
    ],
    "sensors": [
        {
            "id": 18493134,
            "internals": {
                "affine": [
                    1676.296432,
                    0.0,
                    0.0,
                    1676.296432
                ],
                "is_p0_zero": true,
                "is_symmetric_affine": true,
                "polynomial": [
                    0.0,
                    1.0,
                    0.0152646,
                    -0.161096
                ],
                "principal_point_px": [
                    634.45,
                    481.23
                ],
                "type": "fisheye"
            }
        },
        {
            "id": 21845677,
            "internals": {
                "affine": [
                    1637.34211,
                    0.0,
                    0.0,
                    1637.34211
                ],
                "is_p0_zero": true,
                "is_symmetric_affine": true,
                "polynomial": [
                    0.0,
                    1.0,
                    0.0152646,
                    -0.161096
                ],
                "principal_point_px": [
                    641.12,
                    479.65
                ],
                "type": "fisheye"
            },
            "rig_relatives": {
                "rotation_angles_deg": [
                    -0.456,
                    1.027483,
                    0.39229
                ],
                "translation": [
                    -0.015,
                    0.015,
                    0.0
                ]
            }
        },
        {
            "id": 57282113,
            "internals": {
                "principal_point_px": [
                    3001.23,
                    2011.2434
                ],
                "focal_length_px": 5312.353,
                "radial_distortion": [
                    -0.01444223,
                    0.012321123,
                    -2.13311e-05
                ],
                "tangential_distortion": [
                    0.001239402,
                    0.000432234
                ],
                "type": "perspective"
            }
        }
    ]
}