Data Collection for Camera-Lidar Calibration

Data for camera intrinsic and distortion calibration

Take checkerboard shots so that the image's entire field of view is covered by checkerboards. These checkerboards should be placed roughly at 1.5 - 2m away from the camera (these checkerboards does not have to be placed on the ground). You do not have to achieve this in a single shot. You can take multiple shots with different checkerboard locations. As long as any pixel in the field of view is covered by at least one checkerboard in some shot, it is enough. In addition, the checkerboards should be tilted slightly in different directions for each image.

This set is to estimate camera matrix and distortion parameters, so there is no need to record the lidar data. The boards and camera should be static while taking the images. Do not move the boards or camera while taking the images. Also, do not hold the checkerboard by hand to minimize blur due to shaking.

You can also use a computer monitor instead of a physical checkerboard for intrinsic calibration. Monitors are very accurate and flat. You can show this PDF file on the monitor for calibration.

For example, please take images like the following.

Data for camera-to-lidar extrinsic calibration

Place the checkerboards at roughly 3m - 10m from the camera. For the closest checkerboard, the closer, the better but it should be far enough so that all the edges of the board are visible from the camera and lidar. All the checkerboards should stand on the ground which is as flat as possible. So, it is highly recommended to do this capture inside a building rather than outside. No checkerboard should be occluded by other boards in the camera or lidar view.

The size of the checkerboard squares should be about 10cm. The side of the squares must be parallel to the edge of the checkerboard.

All the checkerboards should be identical. Note that the distance from the edge of the checkerboard to the closest checkerboard corner should be identical too.

For example, please take images like the following.

The boards and all sensors should be static while collecting the data. In order to avoid time-synchronization problems, please keep the boards and the sensors stationary for at least 10 seconds while collecting each set of calibration data.

For example, these are the steps to collect one set of calibration data:

  1. Orient the camera toward the checkerboards. Start recording. Wait for 10 seconds (Don't move/rotate your car/robot/sensors). Stop recording. You must have a recording of images and lidar data for 10 seconds. Extract one image from the camera and one frame of lidar data captured 5 seconds after recording has started (e.g. if you start recording at 3:00:00, you stop recording at 3:00:10. We need a frame captured at 3:00:05) and save them. (Dataset front_1)

  2. Change the check boards' location and orientation. Start recording. Wait for 10 seconds (Don't move/rotate your car/robot). Stop recording. Again, you must have a recording of images and lidar data for 10 seconds. Extract one image from the camera and one frame of lidar data captured 5 seconds after recording has started and save them. (Dataset front_2)

  3. In the same manner, save Dataset front_3, front_4, and front_5.

If you have other cameras, repeat the above procedure 1-3 for each camera. Suppose you have n cameras, then you will have 5n datasets, each of which is a pair of image and lidar data. More specifically, you should have 5n lidar files + 5n png images (5 images for each of n cameras).