direct visual lidar calibration环境搭建
Publication
Koide et al., General, Single-shot, Target-less, and Automatic LiDAR-Camera Extrinsic Calibration Toolbox, ICRA2023, PDF
这个工具箱的环境搭建,虚拟机用主机的梯子可以进入github的话,会顺利很多。因为是在新的ubuntu虚拟机上搭建的环境,所以没有库的版本冲突问题。跟着作者Installation的指引基本就可以完成。
虚拟机系统: Ubuntu22.04
网络设置
参考这篇文章,文章中第三步ping主机ip地址:win+R输入cmd进入命令行→输入ipconfig查看ip配置
Dependencies
安装ROS
选择安装ROS2 Iron版本。ROS2 Humble版本安装之后,在后面安装其他库的时候出现了“if given arguments: “EQUAL” “1” Unknown arguments specified”的报错。

选择ubuntu版本的ROS安装,根据system setup的指示安装即可。

在这里有个小插曲
这里在Ubuntu里面没有办法直接下载下来。我的解决办法是在主机里面把ros.key下来下来,然后手动放到虚拟机里。具体步骤如下
-
在主机浏览器输入
https://raw.githubusercontent.com/ros/rosdistro/master/ros.key 手动下载 ros.key -
把ros.key放到主机与虚拟机的共享文件夹里面去,共享文件夹设置参考这篇文章,
-
打开Ubuntu终端,用
mv命令挪动文件,命令格式为mv 文件名1 文件名2,在终端输入sudo mv /mnt/hgfs/downloads/ros.key /usr/share/keyrings/ros-archive-keyring.gpg
- 设置完成后,手动创建一个ROS的工作空间
mkdir ~/ros2_ws/src - 由于ros每次打开终端时都需要手动配置一边环境
source /opt/ros/iron/setup.bash,比较麻烦,于是可以选择在.bashrc文件中添加命令让系统自动刷新,参考文章
安装PCL
$ sudo apt install libpcl-dev
安装OpenCV 4.7.0
参考文章
其中libdc1394-22-dev无法正常安装,改为sudo apt-get install libdc1394-dev即可
其他依赖项
其他依赖项按照作者的指令即可,下面直接附作者安装过程
Install Common denpendencies
# Install dependencies
sudo apt install libomp-dev libboost-all-dev libglm-dev libglfw3-dev libpng-dev libjpeg-dev
# Install GTSAM
git clone https://github.com/borglab/gtsam
cd gtsam && git checkout 4.2a9
mkdir build && cd build
# For Ubuntu 22.04, add -DGTSAM_USE_SYSTEM_EIGEN=ON
cmake .. -DGTSAM_BUILD_EXAMPLES_ALWAYS=OFF \
-DGTSAM_BUILD_TESTS=OFF \
-DGTSAM_WITH_TBB=OFF \
-DGTSAM_BUILD_WITH_MARCH_NATIVE=OFF
make -j$(nproc)
sudo make install
# Install Ceres
git clone https://github.com/ceres-solver/ceres-solver
mkdir ceres-solver/build && cd ceres-solver/build
cmake .. -DBUILD_EXAMPLES=OFF -DBUILD_TESTING=OFF -DUSE_CUDA=OFF
make -j$(nproc)
sudo make install
# Install Iridescence for visualization
git clone https://github.com/koide3/iridescence --recursive
mkdir iridescence/build && cd iridescence/build
cmake .. -DCMAKE_BUILD_TYPE=Release
make -j$(nproc)
sudo make install
Install SuperGlue (Optional)
pip3 install numpy opencv-python torch matplotlib
git clone https://github.com/magicleap/SuperGluePretrainedNetwork.git
echo 'export PYTHONPATH=$PYTHONPATH:/path/to/SuperGluePretrainedNetwork' >> ~/.bashrc
source ~/.bashrc
Build direct_visual_lidar_calibration
最后一步,安装工具箱,由于我们安装的是ROS2 Iron版本,我们选择ROS2的安装方式,

# ROS2
cd ~/ros2_ws/src
git clone https://github.com/koide3/direct_visual_lidar_calibration.git --recursive
cd .. && colcon build
到现在环境就已经搭完了。
