一、安装依赖nlopt包
根据上面的链接下载nlopt源码进行安装。
git clone https://github.com/stevengj/nlopt.git
cd nlopt
mkdir build
cd build
cmake ..
make -j8
sudo make install
据网上看的ubuntu20.04使用以下命令安装可能会报错。
sudo apt-get install libnlopt-dev
所以还是选择了上面那种方法
二、下载并编译lidar-align。
1、创建一个新的工作空间
mkdir -p align_ws/src
cd align_ws/src
2、下载lidar-align
①源码链接:
解压并放到src/
②修改后代码链接:
git clone https://github.com/wwtx/lidar_align_wwtx.git
区别在于是否需要在loader.cpp 文件中改写imu接口:
源码中src 文件夹下面的 loader.cpp 文件, 需要找到里程计部分注释掉,然后用Lidar-Imu联合标定工具lidar_align的数据接口改写 - osc_mbqdr3w5的个人空间 - OSCHINA - 中文开源技术交流社区
中的代码替换;
修改后代码中已经改完了,不需要自己再修改。
3、在lidar-align-master/src/下的CMakeLists.txt文件中加入以下两行:
list(APPEND CMAKE_FIND_ROOT_PATH ${PROJECT_SOURCE_DIR})
set (CMAKE_PREFIX_PATH "/usr/local/lib/cmake/nlopt")
我是ubuntu20.04,所以还需要将第四行的
add_definitions(-std=c++11 -ofast)
修改为
add_definitions(-std=c++14 -ofast)
4、编译
cd ~/align_ws
catkin_make
编译成功:
参考博客:
激光雷达和IMU联合标定并运行LIOSAM_liosam imu标定_岁暮&C的博客-CSDN博客ORB-SLAM2稠密建图编译/运行,遇到的坑(已解决!)_名字真的难想的博客-CSDN博客雷达+ IMU标定 运行LIO-SAM ---(2)_liosam lidar imu标定_米先森的博客-CSDN博客