Deprecated in Current Release
Requirements
Software operation
Defining Calibration Tasks
Definitions and Theory
Standard output from the Geometric Calibrator, either from Imatest Master or Imatest IT, comes in the form of a JSON-encoded structure.
This structure has the general structure, with objects in bold and arrays indicated by square brackets:
Top-level object
<info about module run>
devices [
<info about device>
intrinsics
cam_to_cam
]
captures [
relative_to_target_origin
images [
<info about image file, image points>
]
]
JSON Output Description
Top level Object | ||
Field | Data Type | Description |
Timestamp | String | Date time string of when the calibration was run |
Version | String | Imatest version number |
Build | String | Imatest build |
Runtime | Number | |
reference_device | String | UUID of the reference device |
distanceUnits | String | Distance units |
devices | Object or Array of Objects | Description of each device |
captures | Object or Array of Object | Description of the test capture positions |
coordinate_settings | Object | A description of the camera settings |
devices sub-Objects (array) | ||
Field | Data Type | Description |
uuid | String | Unique identifier of device |
name | String | User-provided name of device |
serialNumber | String | User-provided serial number of device |
sensorSize | Array | Number of pixels in the array [xSize, ySize] |
pixelPitch | Number | The pixel pitch of the sensor |
pixelPitchUnits | String | The units of the pixel pitch |
intrinsics | Object | The intrinsic properties of the device |
cam_to_cam | Object | The position of the device relative to the reference device |
distortion_fit | Object | The distortion optimization results |
intrinsics sub-Object | ||
Field | Data Type | Description |
f | Number | The focal length of the device |
f_units | String | The units of the focal length |
pp | Array of Numbers | The principle point of the device [PPx, PPy] |
skew | Number | The skew of the device |
alpha | Number | The focal length ratio of the device |
distortion | Object | The distortion of the device |
distortion sub-Object | ||
Field | Data Type | Description |
type | String | The distortion model type: rad_div_poly_packed |
form | String | The polynomial form: All, Even, Odd |
coeffs | Array of Numbers | The distortion coefficients [K1, K2, …] |
center | Array of Numbers | The center of distortion [CODx, CODy] |
cam_to_cam sub-Object | ||
Field | Data Type | Description |
direction | String | |
R | Array of Array of Numbers | The rotation matrix [[r11, r12, r13], [r21, r22, r23], [r31, r32, r33]] |
coeffs | Array of Numbers | The translation to the reference device [tx, ty, tz] |
center | String | The units of the translation |
distortion_fit sub-Object | ||
Field | Data Type | Description |
opt_converged | Boolean | Indication if the optimization converged |
nIters | Array of Array of Numbers | Number of iterations for the optimization |
num_points | Array of Numbers | Number of image points used in the optimization |
max_radius_used | Number | Maximum (distorted) radius used in the optimization |
fit_mean_err | Number |
Captures sub-Object (array) | ||
Field | Data Type | Description |
uuid | String | Unique identifier for the test capture |
relative_to_target_origin | Object | Rotation and translation to the origin of the target |
images | Object or Array of Objects | Description of the images used for calibration at this test position |
relative_to_target_origin sub-Object | ||
Field | Data Type | Description |
R | Array of Array of Numbers | The rotation matrix [[r11, r12, r13], [r21, r22, r23], [r31, r32, r33]] |
coeffs | Array of Numbers | The translation to the reference device [tx, ty, tz] |
center | String | The units of the translation |
images sub-Object | ||
Field | Data Type | Description |
filename | String | The filename of the image |
uuid | String | The unique identifier of the image |
device_uuid | String | The unique identifier of the device that captured the image |
reprojection_err_norm_stats | Object | The reprojection stats for the image |
detectedPoints | Array of Array of Numbers | The detected saddle points in the image [[x1, x2, …], [y1, y2, …]] |
reprojectedPoints | Array of Array of Numbers | The reprojected points that correspond to the detected points [[x1, x2, …], [y1, y2, …]] |
worldPoints | Array of Array of Numbers | The corresponding world (target) points [[X1, X2, …], [Y1, Y2, …], [Z1, Z2, …]] |
reprojection_err_norm_stats sub-Object | ||
Field | Data Type | Description |
min | Number | The minimum reprojection error |
mean | Number | The mean reprojection error |
max | Number | The maximum reprojection error |
percentile_95 | Number | The 95th percentile of the reprojection error |
coordinate_settings sub-Object | ||
Field | Data Type | Description |
count_from_one | Number | 0 if array indexing begins at 0, 1 if array indexing begins at 1 |
origin_loc | String | Origin of the array: ul (upper left), ur (upper right), ll (lower left), lr (lower right) |
flip_world_axis | Array of Numbers | Array signifying flipped (from right-handed) world coordinate system in each axis [X, Y, Z]. 0 is not flipped, 1 is flipped. |
flip_image_axis | Array of Numbers | Array signifying the flipped image coordinates [x, y] from positive downward and rightward. 0 is not flipped, 1 is flipped. |