学自autoware1.14安装相机和激光雷达联合标定工具
git clone git://github.com/stevengj/nlopt.git
cd nlopt
mkdir build
cd build
cmake ..
make
sudo make install
mkdir -p ~/calibration/src
cd ~/calibration/src
git clone https://github.com/XidianLemon/calibration_camera_lidar.git
需要修改~/calibration/src/calibration_camera_lidar/ls_calibration/calibration_camera_lidar 目录下的CMakeLists.txt文件
sudo gedit ~/calibration/src/calibration_camera_lidar/ls_calibration/calibration_camera_lidar/CMakeLists.txt
将文件中所有的if ("${ROS_VERSION}" MATCHES "(indigo|jade|kinetic)")
修改为if ("${ROS_VERSION}" MATCHES "(indigo|jade|kinetic|melodic)")
,因为默认的是不支持melodic的。
cd ~/calibration
catkin_make
source devel/setup.bash
rosrun calibration_camera_lidar calibration_toolkit
如果报错是
/home/willingham/calibration/devel/lib/calibration_camera_lidar/calibration_toolkit: error while loading shared libraries: libnlopt.so.0: cannot open shared object file: No such file or directory
是libnlopt.so.0链接位置问题
运行
cd /etc/ld.so.conf.d
sudo touch libnlopt.conf
sudo gedit libnlopt.conf
加入/usr/local/lib
配置生效
sudo ldconfig
重新运行
rosrun calibration_camera_lidar calibration_toolkit
成功打开
请下载雷达驱动,这个是我上次用rpladir时弄过的,思岚A2 运行cartographer
然后启动雷达
source ~/rplidar/devel/setup.bash
roslaunch rplidar_ros view_rplidar.launch
请下载相机驱动,相机驱动我在之前标定zed2时做过了,ubuntu18.04 ZED2相机标定
启动相机
source ~/zed_ws/devel/setup.bash
roslaunch zed_wrapper zed2.launch
我使用的相机时zed2(双目相机),因此我只启动了左摄像头的可视化界面,因为我后面也只用它的topic
rosrun image_view image_view image:=/zed2/zed_node/left/image_rect_color
可以查看一下topic
rostopic list
在里面可以看到/scan
和/zed2/zed_node/left/image_rect_color
启动录制bag
rosbag record -O Calibra_data.bag /zed2/zed_node/left/image_rect_color /scan
播放bag,并在开始一瞬间按空格暂停
roscore
#新终端
rosbag play Calibra_data.bag
打开工具
rosrun calibration_camera_lidar calibration_toolkit
选择自己的图像topic
选择模式camera->2d LIDAR
修改参数,自己测量一下标定板
关闭后重新打开界面使参数得到修改,并在重新打开后将整体界面调整至下图样式,方便后面使用。
接下来的标定步骤为
重复上述步骤,捕获次数越多越好
因为是在测试,所以只是在寝室里搞一搞,雷达周围有一大片空白是因为我的雷达和相机固定在了一个平面,并且这个平面上还有另一个雷达离rplidar很近,而且桌子上有电脑和键盘,雷达线短只能放在桌子上,所以有很大一片空白,不过后面安在车上实验的时候就会好了。