技术共享

相机-雷达联合标定direct_visual_lidar_calibration开源算法编译踩坑记录

2024-07-12

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

基于场景的相机-雷达联合标定编译记录direct_visual_lidar_calibration

编译

1.本机环境Ubuntu18.04 + Melodic

  • 相关依赖版本:Cmake-3.18.0 gcc-8.4.0 pcl-1.13.0

2.相关依赖

   # 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  需要cmake3.16以上
   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  需要gcc 8以上
   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
   
   # ROS1  需要pcl1.10以上
   cd ~/calibration_ws/src
   git clone https://github.com/koide3/direct_visual_lidar_calibration.git --recursive
   cd .. && catkin_make
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33

3.踩坑记录

  • 1.安装编译ceres,需要CMake 3.16以上
  • 2.安装iridescence,需要gcc 8以上,不然filesystem会报错。且需要在CMakelist的target_link_libraries中添加stdc++fs。
  • 3.编译最终的direct_visual_lidar_calibration工具时,需要pcl1.10以上版本,不然代码中pcl::make_shared报错。
  • 4.当然在更换CMake,g++,pcl版本时,别忘记修改环境变量
  • 总结:还是本机各种依赖版本太低了。