Taking the FLIR BFLY-U3-23S3C camera used in the driving scene as an example, intrinsics calibration is performed using the Kalibr toolbox.
Record the topic corresponding to the required calibration camera as a rosbag package, and the following image shows the visualization of the calibration package。
Go to Kalibr's official website to install according to the tutorial, link to: https://github.com/ethz-asl/kalibr
The configuration files for traditional camera internal calibration mainly include target parameters, which are filled in based on the calibration board parameters used in the recording calibration package, The checkerboard should pay attention to the different parameters of horizontal and vertical placement. When recording ROSBAG, it is vertical, so the parameters are shown below.
target_type: 'checkerboard'
targetCols: 6
targetRows: 8
rowSpacingMeters: 0.105
colSpacingMeters: 0.105
Enter the Kalibr workspace and run the following instructions (You may need to first source dev/setup. bash)
rosrun kalibr kalibr_calibrate_cameras --bag out.bag --topics /image --models pinhole-radtan --target checkerboard.yaml
--bag rosbag package
--topics image topic
--models image model
--target checkerboard parameters
results:
cam0:
cam_overlaps: []
camera_model: pinhole
distortion_coeffs: [-0.16224835632285683, 0.08652833589756073, 0.00017154098782927365, -0.0028237681161006186]
distortion_model: radtan
intrinsics: [1118.843402630531, 1117.42013115746, 1004.4308335224291, 593.9267515276289]
resolution: [1920, 1200]
rostopic: /camera_right/image_raw
Detailed process can be found in Event_ Camera_ Intrinsics, only the calibration results and reprojection errors are listed here
cam0:
cam_overlaps: []
camera_model: pinhole
distortion_coeffs: [-0.151037205816726, 0.0903438899916861, 0, 0]
distortion_model: radtan
intrinsics: [1080.32383527149, 1076.51917189926, 985.521195497639, 593.210064278479]
resolution: [1920, 1200]
rostopic: /camera_right/image_raw
Compared to low resolution cameras (such as dvs346), cameras with higher resolutions have significantly smaller reprojection errors compared to those calibrated using kalibr. Additionally, using MATLAB allows for manual calibration Choosing images from different perspectives can better cover the entire field of view. In addition, during the calibration process of event cameras without images, due to blurring, interference, and other issues in e2vid reconstructed images, So there is a significant error when using the rosbag package converted from the reconstructed image for Kalibr calibration of the event camera (detailed process can be found in Event_Camera_Intrinsics). Based on this, all The camera calibration results are all calibrated using MATLAB, and the Kalibr results are used for cross validation.