Sensor Calibration
To assist in explaining the calibration process presented in this section, the hardware measurements and schematic of the coordinate system transformations are provided below.
Calibration datasets
The following datasets provide the raw data used to compute the extrinsic and intrinsic parameters for the Bell 412 seqences.
Dataset Type |
Download Link |
|---|---|
Down-facing Camera (Intrinsics) |
|
Front-facing Camera (Intrinsics) |
|
IMU + Down-facing Camera (Extrinsics) |
|
IMU + Front-facing Camera (Extrinsics) |
|
LiDAR + Down-facing Camera (Extrinsics) |
|
LiDAR + Front-facing Camera (Extrinsics) |
Note
Calibration data for DJI M600 sequences are not available.
Methodology & Tools
LiDAR + Camera: These datasets include time-synchronized
.pcdpoint clouds and.jpgimages.IMU + Camera: Calibration was performed using Kalibr with Aprilgrid 6x6 0.8x0.8m (A0 page). The Aprilgrid parameters are listed here.
Camera Intrinsics: The checkerboard used was a 70mm square-size checkerboard of 8x11. However, the input target size for the VINS-Fusion Camera Calibration Tool was 6x8.
Camera Intrinsic Calibration
The intrinsic parameters of the cameras, such as the camera model, camera matrix [K], and distortion parameters, were obtained using the camera calibration tool that is included in the VINS-Fusion package. The values obtained are presented below.
For Bell412 Datasets:
model_type: KANNALA_BRANDT
camera_name: camera
image_width: 1440
image_height: 1080
projection_parameters:
k2: -0.0764245
k3: 0.0322856
k4: -0.0445168
k5: 0.0163317
mu: 829.224
mv: 829.454
u0: 833.937
v0: 562.509
For DJI M600 Datasets:
model_type: KANNALA_BRANDT
camera_name: camera
image_width: 1440
image_height: 1080
projection_parameters:
k2: -0.07937700
k3: 0.02228435
k4: -0.03852023
k5: 0.01346873
mu: 854.383024
mv: 853.285954
u0: 780.324522
v0: 520.690672
IMU Intrinsic Calibration
The IMU parameters for both Bell412 and DJI M600 datasets are given below.
#IMU Parameters
acc_n: 0.08 # accelerometer measurement noise standard deviation.
gyr_n: 0.004 # gyroscope measurement noise standard deviation.
acc_w: 0.00004 # accelerometer bias random work noise standard deviation.
gyr_w: 0.0001 # gyroscope bias random work noise standard deviation.
g_norm: 9.803 # gravity magnitude
Camera-IMU Extrinsic Calibration
The camera-IMU transformation was found using Kalibr package.
For Bell412 Datasets:
The down camera
and front camera 
body_T_camDown: !!opencv-matrix
rows: 4
cols: 4
dt: d
data: [ -0.01039363, 0.99994595, 0.00027614, -0.27939175,
-0.99982944, -0.01038820, -0.01527021, 0.00394073,
-0.01526652, -0.00043481, 0.99988337, -0.00039529,
0.0, 0.0, 0.0, 1.0]
body_T_camFront: !!opencv-matrix
rows: 4
cols: 4
dt: d
data: [ -0.04200713, -0.01166497, 0.99904921, 0.17666233,
0.99899047, 0.01544242, 0.04218496, -0.05171531,
-0.01591983, 0.99981271, 0.01100451, -0.04656282,
0.0, 0.0, 0.0, 1.0]
For DJI M600 Datasets:
The down camera
and front camera 
body_T_camDown: !!opencv-matrix rows: 4 cols: 4 dt: d data: [ 0.00235643, 0.99997843, -0.00613037, -0.25805624, -0.99960218, 0.00218315, -0.02811962, -0.01138283, -0.02810563, 0.0061942, 0.99958577, 0.09243762, 0.0, 0.0, 0.0, 1.0] body_T_camFront: !!opencv-matrix rows: 4 cols: 4 dt: d data: [ -0.04200713, -0.01166497, 0.99904921, 0.17666233, 0.99899047, 0.01544242, 0.04218496, -0.05171531, -0.01591983, 0.99981271, 0.01100451, -0.04656282, 0.0, 0.0, 0.0, 1.0]
Camera-LiDAR Extrinsic Calibration
Down camera to LiDAR transfromation
was found using Matlab LiDAR calibrator toolbox
and fine-tuned using manual realignment.
For Bell412 datasets:
camDown_T_lidar: !!opencv-matrix
rows: 4
cols: 4
dt: d
data: [ 0.1201, 0.9927, -0.0042, -0.27939175,
-0.0165, 0.0062, 0.9998, 0.00394073,
0.9926, -0.1200, 0.0171, -0.00039529,
0.0, 0.0, 0.0, 1.0 ]
For DJI M600 datasets:
camDown_T_lidar: !!opencv-matrix
rows: 4
cols: 4
dt: d
data: [ -0.030011, 0.999548, 0.0013029, -0.0566,
0.007985, -0.001063, 0.9999675, 0.3829,
0.999517, 0.030020, -0.0079502, -0.0374,
0.0, 0.0, 0.0, 1.0 ]
IMU-GNSS Extrinsic Calibration
IMU to GNSS transformation
for both Bell412 and DJI M600 datasets are given here.
body_T_gnss: !!opencv-matrix
rows: 4
cols: 4
dt: d
data: [ 1.0, 0.0, 0.0,-0.14440000,
0.0, 1.0, 0.0, 0.05530000,
0.0, 0.0, 1.0,-0.53470000,
0.0, 0.0, 0.0, 1.0]