使用docker部署livox_camera_calib环境

ROS系统安装

使用fishros的一键安装脚本,选择ros1kinetic版本。具体安装以及连接容器过程可查看视频Docker版ROS安装
注意:启动容器时应从命令行启动,不要在vscode中连接容器。否则在启动rviz时,程序会找不到显示输出设备,rviz会直接die。

环境配置

安装完Docker版本ROS后需要的再次依赖库极少,仅需编译安装ceres-solver 1.14.x即可,此时仍需要再安装编译所需部分依赖库。

# 依赖库安装
sudo apt-get update
sudo apt-get install liblapack-dev libsuitesparse-dev libgflags-dev 
sudo apt-get install libgoogle-glog-dev libgtest-dev

# 编译ceres
git clone https://github.com/ceres-solver/ceres-solver --branch 1.14.x
cd ceres-solver
mkdir build
cd build
cmake ..
make -j6
# Docker中默认root用户
make install

运行livox_camera_calib

在启动标定程序之前应该修改config目录下的calib.yaml文件

mkdir -p ~/workspace/livox_camera_calib_ws/src
cd ~/workspace/livox_camera_calib_ws/src
git clone https://gitcode.com/hku-mars/livox_camera_calib.git
cd ..
catkin_make -j6

source devel/setup.bash
roslaunch livox_camera_calib calib.launch

接着可以看到rviz启动绘制图像棱角


程序先进行Rough Optimization

接着进行Optimization进行迭代拟合

最后程序给出Result Optimization

总结

可以看到程序可以正常运行,但拟合结果并不太理想,这与收集点云干扰和参照物有很大关系。可以考虑更换参照物或者多次拟合。在Docker容器下运行该标定程序较快但在笔者电脑上仍需要4分钟左右时间。

posted @ 2024-04-25 22:45  啃骨头不吃饭啊  阅读(228)  评论(0)    收藏  举报