【精选】ZED2相机SDK安装使用及ROS下使用 您所在的位置:网站首页 话题怎么用 【精选】ZED2相机SDK安装使用及ROS下使用

【精选】ZED2相机SDK安装使用及ROS下使用

2023-11-03 10:52| 来源: 网络整理| 查看: 265

等了快半个月的ZED2相机今天拿到手啦,开始ZED2和VINS之旅吧。

本篇博客主要记录ZED2相机SDK 安装过程以及在ROS下的环境搭建、编译使用等,搭建后期开发环境。

ZED2相机实图

在这里插入图片描述 在这里插入图片描述

SDK安装

官网上选择与你的Ubuntu系统和CUDA版本对应的SDK版本下载安装。 SDK下载

chmod +x ZED_SDK_Ubuntu18_cuda10.2_v3.5.0.run ./ZED_SDK_Ubuntu18_cuda10.2_v3.5.0.run

报错:Python API 安装失败(有些同学这一步安装是没问题的)

主要原因应是stereolabs下行宽带不行。

解决:

git clone https://github.com/stereolabs/zed-python-api cd /zed-python-api/src pip3 install -r requirements.txt python3 setup.py build python3 setup.py install --user

执行之后,如果没有报错应该就没问题了,在python3下import pyzed,没报错就是安装完成了。

重新安装,安装提醒是否希望安装ZED Python API,选N即可以,安装完成。

ZED_Depth_Viewer、ZED_Sensor_Viewer测试

1)

cd /usr/local/zed/tools ./ZED_Depth_Viewer

错误,黑屏,不显示图像信息和深度信息

终端错误信息,显示CUDA错误: 在这里插入图片描述目前CUDA版本为11.4,但nvidia-smi错误,怀疑是CUDA版本与NVIDIA驱动版本不搭,所以卸载CUDA11.4,安装CUDA11.0,可参考博客:ubuntu20.04卸载cuda11.4重装cuda11.0。 解决NVIDIA-SMI has failed because it couldn‘t communicate with the NVIDIA driver

CUDA 更新为11.0后,重新执行:

./ZED_Depth_Viewer

在这里插入图片描述哭哭哭~,静下心来,分析这个问题,可能是nvidia驱动或是CUDA 的问题,经排查,发现是nvidia驱动没完全安装成功,opengl没有安装,解决: 之前安装nvidia驱动时

sudo ./NVIDIA-Linux-x86_64-470.82.00.run --no-x-check --no-nouveau-check --no-opengl-files

卸载nvidia驱动,重新安装

sudo ./NVIDIA-Linux-x86_64-470.82.00.run

重新测试,成功,yeah~: 在这里插入图片描述

cd /usr/local/zed/tools ./ZED_Sensor_Viewer

在这里插入图片描述这里可以看到加速度计、陀螺仪、四元数、气压计、磁力计及温度等传感器信息。

安装ZED2 ROS工具

安装命令:

$ cd ~/ZED_WS/src $ git clone https://github.com/stereolabs/zed-ros-wrapper.git $ cd ../ $ rosdep install --from-paths src --ignore-src -r -y $ catkin_make -DCMAKE_BUILD_TYPE=Release $ source ./devel/setup.bash

编译过程中,提示缺少什么包就安装什么包,其中错误

Make Error at /opt/ros/noetic/share/catkin/cmake/catkinConfig.cmake:83 (find_package): Could not find a package configuration file provided by "zed_interfaces" with any of the following names: zed_interfacesConfig.cmake zed_interfaces-config.cmake Add the installation prefix of "zed_interfaces" to CMAKE_PREFIX_PATH or set "zed_interfaces_DIR" to a directory containing one of the above files. If "zed_interfaces" provides a separate development package or SDK, be sure it has been installed. Call Stack (most recent call first): zed-ros-wrapper/zed_nodelets/CMakeLists.txt:41 (find_package)

只需要安装一个zed_interfaces再重新编译一下就可以了,注意安装路径/ZED_WS/src

git clone https://github.com/stereolabs/zed-ros-interfaces

编译成功后,便可在ROS 下打开相机,运行ZED2

roslaunch zed_wrapper zed2.launch

错误1:Resource not found: xacro 解决:sudo apt-get install ros-noetic-xacro

错误2:ERROR: cannot launch node of type [robot_state_publisher/robot_state_publisher]: robot_state_publisher 解决: 这是robot_state_publisher包缺失导致的问题

sudo apt-get install ros-kinetic-robot-state-publisher

如果显示无法定位此文件,则重新填一遍秘钥

sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list' sudo apt-key adv --keyserver hkp://ha.pool.sks-keyservers.net:80 --recv-key 421C365BD9FF1F717815A3895523BAEEB01FA116

之后更新一下软件包索引

sudo apt-get update

再次运行测试launch文件: 在这里插入图片描述可查看所有topic 在这里插入图片描述查看所有node 在这里插入图片描述查看topic具体信息: 查看/imu/data信息:三轴角度、角速度、加速度和相应的协方差矩阵(卡尔曼滤波中求取卡尔曼增益和状态转移矩阵) 在这里插入图片描述查看pose信息: 在这里插入图片描述可在该工作空间下安装zed-ros-examples

$ cd ~/ZED_WS/src $ git clone https://github.com/stereolabs/zed-ros-examples.git $ cd ../ $ rosdep install --from-paths src --ignore-src -r -y $ catkin_make -DCMAKE_BUILD_TYPE=Release $ source ./devel/setup.bash

运行几个自带的SDK看看效果:

1)roslaunch zed_display_rviz display_zed2.launch 2)roslaunch zed_rtabmap_example zed_rtabmap.launch

效果如下: 1) 在这里插入图片描述2) 在这里插入图片描述 在这里插入图片描述



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有