系统环境
ubuntu18,melodic
opencv3.2.0(ros默认安装的版本)
安装nlopt
因为下载了nlopt的2.7.1版本,但是cmake要求的版本有点高,然后我就下载的nlopt的2.7.0版本解压并且安装。在解压的位置安装即可。
cd nlopt
mkdir build
cd build
cmake ..
make
sudo make install
安装完还有一步,安装ros的匹配库
sudo apt-get install ros-melodic-nlopt
安装完这个,后面的程序cmakelist能直接找到nlopt库,而不需要findpackage去找
安装autoware的相机雷达标定包
可以直接安装这个github链接的包:https://github.com/JunzWu/Autoware_Calibration_Camera_Lidar。这个主要是针对ubuntu18的包
git clone https://github.com/JunzWu/Autoware_Calibration_Camera_Lidar.git
cd Autoware_Calibration_Camera_Lidar
mkdir build
mkdir devel
catkin_make
直接catkin_make还可能会报一个错误:
catkin_make(Could not find the required component 'jsk_recognition_msgs')
这个就是缺一个信息,直接安装即可:
sudo apt-get install ros-melodic-jsk-recognition-msgs
然后就继续编译,通过。
测试是否可以运行
新开一个终端:
roscore
然后在原来编译的目录:
rosrun calibration_camera_lidar calibration_toolkit
出现这个界面就证明编译完成
总结
一开始想着在ubuntu20去编译的,但是ubuntu20的opencv是4.2,会报opencv的错误,重新装一个opencv还更麻烦,详情可以参考一篇博客。所以还是在推荐的ubuntu系统下运行是较好的。