3D LIDAR-Camera extrinsic calibration (maual)
3D LIDAR-Camera extrinsic calibration (maual)
extrinsic calibration이란?
💡
https://github.com/koide3/direct_visual_lidar_calibration?tab=readme-ov-file
카메라와 라이다의 상대적인 거리를 찾기 위한 변환 처리 과정이다.
- input : 카메라 image와 info, 3d lidar point가 담긴 rosbag file
- output : 카메라와 라이다의 변환관계가 담긴 yaml파일
진행방법
💡
installation
- 나는 도커를 통해 이미지를 다운받았다.
1
2
3
4
5
6
7
8
9
docker pull koide3/direct_visual_lidar_calibration:humble
# bag파일을 전처리 하기 위한 명령어
docker run --rm --net host --runtime=nvidia --gpus all --env DISPLAY=$DISPLAY --env XAUTHORITY=${XAUTHORITY:-$HOME/.Xauthority} -v /tmp/.X11-unix:/tmp/.X11-unix -v /home/loe/workspace/autoware_carla/data/rosbag_extrinsic_calib_left:/tmp/input_bags -v /home/loe/workspace/autoware_carla/data/result:/tmp/preprocessed koide3/direct_visual_lidar_calibration:humble ros2 run direct_visual_lidar_calibration preprocess -adv /tmp/input_bags /tmp/preprocessed
# 수작업으로 라이다와 카메라의 correspondence를 지정해주기 위한 명령어
docker run --rm --net host --runtime=nvidia --gpus all --env DISPLAY=$DISPLAY --env XAUTHORITY=${XAUTHORITY:-$HOME/.Xauthority} -v /tmp/.X11-unix:/tmp/.X11-unix -v /home/loe/workspace/autoware_carla/data/rosbag_extrinsic_calib_right:/tmp/input_bags -v /home/loe/workspace/autoware_carla/data/result:/tmp/preprocessed koide3/direct_visual_lidar_calibration:humble ros2 run direct_visual_lidar_calibration initial_guess_manual /tmp/preprocessed
data collection
- bag record를 통해 약 40초간 bag파일을 수집해줍니다. (16채널이므로 많이 따야한다)
- 이후 위의 preprocess command를 입력한다.
preprocess
1
2
3
4
5
6
docker run \
--rm \
-v /home/loe/workspace/autoware_carla/data/calibration_center:/tmp/input_bags \
-v /home/loe/workspace/autoware_carla/data/lidar_calibration:/tmp/preprocessed \
koide3/direct_visual_lidar_calibration:humble \
ros2 run direct_visual_lidar_calibration preprocess -a /tmp/input_bags /tmp/preprocessed
- 2~3분정도의 처리시간이 소요된다.
- 이후 내가 지정한 result파일에 ply파일과 png파일이 잘 저장되었는지 확인한다.
manual pointing
1
2
docker run --rm --net host --runtime=nvidia --gpus all --env DISPLAY=$DISPLAY --env XAUTHORITY=${XAUTHORITY:-$HOME/.Xauthority} -v /tmp/.X11-unix:/tmp/.X11-unix -v /home/loe/workspace/autoware_carla/data/rosbag_extrinsic_calib_right:/tmp/input_bags -v /home/loe/workspace/autoware_carla/data/result:/tmp/preprocessed koide3/direct_visual_lidar_calibration:humble ros2 run direct_visual_lidar_calibration initial_guess_manual /tmp/preprocessed
왼쪽 카메라가 잘 calibration된 모습이다.
이 기사는 저작권자의 CC BY 4.0 라이센스를 따릅니다.






