我们使用的lidar_align这个算法来进行标定。
1.下载源码
在ros工作空间下的src文件夹下运行这个命令。
git clone https://github.com/ethz-asl/lidar_align.git
sudo apt-get install libnlopt-dev
cd ..
catkin_make
这里编译的时候会爆一些错误。我遇到的是:
这是因为我们没有nlopt这个库。运行下面的命令安装。
git clone https://github.com/stevengj/nlopt.git
cd nlopt
mkdir build
cd build
cmake ..
make
sudo make install
make的时候会报版本的问题,需要把cmake版本升级,我不知道咋升级,就把路径下文件里需要的地方版本改低一点,就编译成功了。
安装完在 /usr/local/lib/cmake 目录下出现 nlopt 文件。在lidar_align-master文件夹中的CMakeLists.txt添加以下代码:
list(APPEND CMAKE_FIND_ROOT_PATH ${CMAKE_SOURCE_DIR})
set (CMAKE_PREFIX_PATH "/usr/local/lib/cmake/nlopt")
这样改完catkin_make应该就没问题了。如果还有报错,看这个博客。使用lidar_align进行激光雷达与IMU的外参标定(超详细教程)_lidar与imu外参标定_╰︶ ̄ 莫等闲۩۩۩的博客-CSDN博客
2.调整配置
修改lidar_align.launch里的配置。
主要是你数据集所在的路径: