目录
(3) IMU(Inertial Measurement Unit)惯性测量单元测试
1.1 安装环境
- Ubuntu20.04
- ROSnoetic
- CUDA11.4
- GPU:NVIDIA Tegra Xavier(nvgpu)/integrated
1.2 安装CUDA
关于CUDA的配置可参考相关博客
1.3 下载SDK
下载 CUDA11.4、Ubuntu20.04、NVIDIA Tegra Xavier(nvgpu)/integrated对应的SDK,文件要与自己的环境匹配。
下载地址:Developer Center | Stereolabs
本环境下载的文件:ZED_SDK_Tegra_L4T35.1_v3.8.2.zstd.run
给文件权限:
chmod +x ZED_SDK_Tegra_L4T35.1_v3.8.2.zstd.run
运行:
./ZED_SDK_Tegra_L4T35.1_v3.8.2.zstd.run
一路Enter,等待安装完成,安装过程较为漫长。
1.4 编译运行ZED ros驱动
上述测试仅能说明双目相机是好的、传感器也没有故障,真正的测试才刚刚开始。下载zed-ros-wrapper和zed-ros-interfaces
zed-ros-wrapper:GitHub - stereolabs/zed-ros-wrapper: ROS wrapper for the ZED SDK
zed-ros-interfaces: https://github.com/stereolabs/zed-ros-interfaces
源码编译:
$ mkdir -p zed_ws/src
$ git clone https://github.com/stereolabs/zed-ros-wrapper
$ git clone https://github.com/stereolabs/zed-ros-interfaces
$ cd ..
$ catkin_make
$ source ./devel/setup.bash
报错:‘DETECTION_MODEL’ in namespace ‘sl’ does not name a type
解决办法1:SDK与ROS包依赖冲突,重新安装最新的SDK,重新编译
解决办法2:同样的思路降低zed-ros-wrapper的版本,重新编译,本人将文件降为zed-ros-wrapper-v.3.7.x后成功,建议先用方法2,因为重新安装SDK文件时间过长。
1.5 测试
(1) ROS ZED Package测试
zed_ws目录下,打开终端,输入以下命令
source ./devel/setup.bash
roslaunch zed_wrapper zed2.launch
(2) ZED_Depth_Viewer测试
// 进入工具目录下
cd /usr/local/zed/tools
// 执行命令
./ZED_Depth_Viewer
(3) IMU(Inertial Measurement Unit)惯性测量单元测试
// 进入工具目录下
cd /usr/local/zed/tools
// 执行命令
./ZED_Sensor_Viewer
(4) 其他测试
其他测试更详细的使用过程请参考官方说明文档:Quick Start guide | Stereolabs
1.6 ZED相机使用
(1) 标定参数文件说明
参考文章:https://blog.csdn.net/HHB791829200/article/details/129150045
在/usr/local/zed/tools/下的./ZED_Calibration根据教程可以实现标定校准
在/usr/local/zed/setting下有校准后的参数
- cat一下发现里面有很多内参:
- 2K:2K大小图像(2048*1024)
- HD:1080p大小图片
- FHD:720P
- VGA:672*376大小其实就是对应内参的缩放计算
官方解释:https://support.stereolabs.com/hc/en-us/articles/360007497173-What-is-the-calibration-file-
(2) ros启动相机修改相机模式
我的路径:~/zed_ws/src/zed-ros-wrapper/zed_wrapper/params 下有common.yaml可以修改相机模式。
(3) 发布话题含义
左摄像头
- rgb/image_rect_color:颜色校正后的图像(默认左RGB图像)
- rgb/image_rect_gray:灰度校正图像(默认左RGB图像)
- rgb_raw/image_raw_color:彩色未校正图像(默认左RGB图像)
- rgb_raw/image_raw_gray:灰度未校正图像(默认左RGB图像)
- rgb/camera_info:彩色相机校准数据
- rgb_raw/camera_info:彩色未校正相机校准数据
- left/image_rect_color:左相机彩色校正图像
- left/image_rect_gray: 左相机灰度校正图像
- left_raw/image_raw_color: 左相机颜色未校正图像
- left_raw/image_raw_gray: 左相机灰度未校正图像
- left/camera_info:左相机校准数据
- left_raw/camera_info: 留下未校正的相机校准数据
右摄像头
- right/image_rect_color: 颜色校正右图像
- right_raw/image_raw_color: 彩色未校正右图
- right/image_rect_gray:灰度校正右图像
- right_raw/image_raw_gray: 灰度未校正右图
- right/camera_info:右相机标定数据
- right_raw/camera_info: 右未校正相机标定数据
立体声对
- stereo/image_rect_color:并排立体校正对图像
- stereo_raw/image_raw_color:并排的立体未校正对图像