双目立体视觉Jetson Xavier NX 嵌入式设备部署ZED2
Posted Techblog of HaoWANG
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了双目立体视觉Jetson Xavier NX 嵌入式设备部署ZED2相关的知识,希望对你有一定的参考价值。
基于英伟达NX开发板进行zed2 双目相机的开发环境配置
一、环境配置:
系统:Ubuntu18.04+ROS
CUDA: 10.2
nvcc -V查看CUDA版本:10.2
二、 安装SDK
因为NVIDIA Jetson Xavier NX 自带CUDA 10.2 版本,所以此处便不再安装CUDA,如果你的系统中没有安装CUDA,请务必自行安装。
下载zed2 sdk
官方地址:https://www.stereolabs.com/developers/release/ ,一定要选择对应版本的SDK
安装 sdk
chmod a+x ZED_SDK_Tegra_JP44_v3.5.0.run
./ZED_SDK_Tegra_JP44_v3.5.0.run
一路默认安装即可,安装完成之后进入路径 cd /usr/local/zed/tools ,执行命令: ./ZED_Explorer,可以正常展示,即:SDK可以正常使用。
注:执行命令:./ZED_Depth_Viewer,sdk3.4版本正常运行,sdk3.5版本会报错“Segmentation fault (core dumped)”,但是不影响后面通过ros调用相机。
安装ZED2 ROS工具
cd ~
mkdir -p ZED_WS/src
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
roslaunch zed_wrapper zed2.launch #通过ros打开相机,可以看到发布的主题内容
如图:
遇到的问题
(1)安装sdk 3.4版本
在安装zed2 sdk3.5版本之前,zed2 官网一直打不开,下载不了sdk包,所以去找朋友要了3.4版本包,安装完了之后,执行 ./ZED_Depth_Viewer 命令是正常运行的。
(2)执行命令:rosdep install --from-paths src --ignore-src -r -y 提示先执行rosdep update, 但是rosdep update一直报错’time out’,解决办法请看上一篇文章:link
(3)catkin_make 编译报错:
/home/bdlf/ZED_WS/src/zed-ros-wrapper/zed_nodelets/src/zed_nodelet/src/zed_wrapper_nodelet.cpp: In member function ‘void zed_nodelets::ZEDWrapperNodelet::readParameters()’:
/home/bdlf/ZED_WS/src/zed-ros-wrapper/zed_nodelets/src/zed_nodelet/src/zed_wrapper_nodelet.cpp:674:35: error: ‘ZED2i’ is not a member of ‘sl::MODEL’
mZedUserCamModel = sl::MODEL::ZED2i;
^~~~~
zed-ros-wrapper/zed_nodelets/CMakeFiles/ZEDNodelets.dir/build.make:86: recipe for target 'zed-ros-wrapper/zed_nodelets/CMakeFiles/ZEDNodelets.dir/src/zed_nodelet/src/zed_wrapper_nodelet.cpp.o' failed
make[2]: *** [zed-ros-wrapper/zed_nodelets/CMakeFiles/ZEDNodelets.dir/src/zed_nodelet/src/zed_wrapper_nodelet.cpp.o] Error 1
CMakeFiles/Makefile2:2394: recipe for target 'zed-ros-wrapper/zed_nodelets/CMakeFiles/ZEDNodelets.dir/all' failed
make[1]: *** [zed-ros-wrapper/zed_nodelets/CMakeFiles/ZEDNodelets.dir/all] Error 2
Makefile:140: recipe for target 'all' failed
make: *** [all] Error 2
Invoking "make -j6 -l6" failed
原因: 这个问题是SDK版本较低,所以需要将sdk 版本升级到3.5,重复安装SDK操作即可。
以上是关于双目立体视觉Jetson Xavier NX 嵌入式设备部署ZED2的主要内容,如果未能解决你的问题,请参考以下文章
Jetson-Xavier-NX刷机+pytorch环境配置+yolov5运行
Jetson Xavier NX在图像识别与智能诊断中的应用测评
Jetson Xavier NX (15) -- Jetson.GPIO
Jetson Xavier NX (15) -- Jetson.GPIO