Projected input camera format¶
This format defines the input cameras data in the processing CRS, which is a projected right-handed isometric CS.
Coordinate system specification¶
The processing CRS is a right-handed, isometric, Cartesian coordinate system chosen by the application, the calibration itself is coordinate system agnostic. The definition of the camera axes is the photogrammetrist’s definition: x from left to right in the image, y from bottom to top in the image, z from the scene towards the camera center.
The actual processing CRS comes from the top level scene reference frame definition.
Format specification¶
Specification format |
Version |
---|---|
“application/opf-projected-input-cameras+json” |
“1.0” |
Projected input camera¶
Definition of the input cameras data in the processing CRS, which is a projected right-handed isometric CS.
Projected input camera
Properties
Type |
Description |
Required |
|
---|---|---|---|
format |
|
For projected input cameras it must be |
✓ Yes |
version |
|
The version of this schema as |
✓ Yes |
sensors |
|
Sensors for which there are processing CRS dependent parameters, for example rigs. May contain fewer elements than the sensor list from the corresponding input cameras (or none if there are no rigs). |
✓ Yes |
captures |
|
Captures for which there are processing CRS dependent parameters. |
✓ Yes |
extensions |
|
JSON object with extension-specific objects. Extensions follow the naming convention VENDOR[_(team❘product)]_extname |
No |
Capture¶
Processing CRS dependent parameters of a capture sensor.
Capture
Properties
Type |
Description |
Required |
|
---|---|---|---|
id |
|
Unique identifier pointing to a capture element in the input cameras. |
✓ Yes |
geolocation |
Input geolocation in the processing CRS axes and units. |
No |
|
orientation |
Input orientation in the processing CRS axes. |
No |
|
extensions |
|
JSON object with extension-specific objects. Extensions follow the naming convention VENDOR[_(team❘product)]_extname |
No |
Projected geolocation¶
Input geolocation in the processing CRS axes and units.
Projected geolocation
Properties
Type |
Description |
Required |
|
---|---|---|---|
position |
|
Coordinates in the processing CRS. |
✓ Yes |
sigmas |
|
Standard deviation in the processing CRS units. |
✓ Yes |
extensions |
|
JSON object with extension-specific objects. Extensions follow the naming convention VENDOR[_(team❘product)]_extname |
No |
Projected orientation¶
Input orientation in the processing CRS axes.
Projected orientation
Properties
Type |
Description |
Required |
|
---|---|---|---|
angles_deg |
|
Omega-Phi-Kappa angles in degree representing a rotation R_x(ω)R_y(ϕ)R_z(κ) from the image CS to the processing CRS. |
✓ Yes |
sigmas_deg |
|
Standard deviation of Omega-Phi-Kappa angles in degree. |
✓ Yes |
extensions |
|
JSON object with extension-specific objects. Extensions follow the naming convention VENDOR[_(team❘product)]_extname |
No |
Projected rig translation¶
Projected rig relatives only contain the relative translation as the relative rotation stays the same as the input. The difference between the projected rig translation and input rig translation is that the projected translation uses units of the processing CRS.
Projected rig translation
Properties
Type |
Description |
Required |
|
---|---|---|---|
values |
|
Relative translation in processing CRS units. |
✓ Yes |
sigmas |
|
Measurement error (standard deviation) in processing CRS units. |
✓ Yes |
extensions |
|
JSON object with extension-specific objects. Extensions follow the naming convention VENDOR[_(team❘product)]_extname |
No |
Sensor¶
Processing CRS dependent parameters of an input sensor.
Sensor
Properties
Type |
Description |
Required |
|
---|---|---|---|
id |
|
Unique identifier pointing to a sensor element in the input cameras. |
✓ Yes |
rig_translation |
Projected rig relatives only contain the relative translation as the relative rotation stays the same as the input. The difference between the projected rig translation and input rig translation is that the projected translation uses units of the processing CRS. |
No |
|
extensions |
|
JSON object with extension-specific objects. Extensions follow the naming convention VENDOR[_(team❘product)]_extname |
No |
Example¶
{
"format": "application/opf-projected-input-cameras+json",
"version": "1.0",
"sensors": [
{
"id": 21845677,
"rig_translation": {
"values": [
-0.015,
0.015,
0.0
],
"sigmas": [
0.001,
0.001,
0.001
]
}
},
{
"id": 65728243,
"rig_translation": {
"values": [
0.0,
0.0,
0.0
],
"sigmas": [
0.001,
0.001,
0.001
]
}
}
],
"captures": [
{
"id": 94334,
"geolocation": {
"position": [
382.20304,
3.292843,
2.238429
],
"sigmas": [
1.69,
1.69,
2.4
]
},
"orientation": {
"angles_deg": [
3.3432,
-5.2849554,
9.345113
],
"sigmas_deg": [
0.0134,
0.08482,
0.016747
]
}
},
{
"id": 78291034,
"geolocation": {
"position": [
45.3949,
10.38429,
6.3892923
],
"sigmas": [
1.69,
1.69,
2.4
]
},
"orientation": {
"angles_deg": [
2.23443,
-5.2849554,
5.54335
],
"sigmas_deg": [
0.0134,
0.08482,
0.016747
]
}
},
{
"id": 92840,
"geolocation": {
"position": [
12.19394,
22.2048393,
11.193748
],
"sigmas": [
1.28947,
1.2331,
2.1923
]
},
"orientation": {
"angles_deg": [
-6.392785,
3.28575,
13.27483
],
"sigmas_deg": [
0.0134,
0.08482,
0.016747
]
}
}
]
}