ubuntu18.04安装Realsense D435i相机SDK及realsense-ros记录,为后期运行yolo v5作准备

写在前面:一定要注意各个版本之间的匹配问题,否则会报各种错误。例如ROS版本和librealsense SDK版本之间的对应关系,以及realsense-ros(Wrapper)与librealsense SDK之间的对应关系
系统:ubuntu18.04
ros: melodic

一、安装测试librealsense SDK

附上Intel® RealSense github网站:https://github.com/IntelRealSense
以及安装教程:https://github.com/IntelRealSense/librealsense/blob/master/doc/distribution_linux.md

1、下载安装包

可以直接下载zip格式解压到home目录下,也可以通过终端命令下载
注意:因为最新的SDK可能有bug,我选择下载以前的版本,通过tags标签选择历史版本,我下载的是v2.50.0版本

git clone https://github.com/IntelRealSense/librealsense.git
cd librealsense

在这里插入图片描述

2.更新依赖库

sudo apt-get update && sudo apt-get upgrade && sudo apt-get dist-upgrade

这里可以仅执行前两个指令,第三个可能会升级操作系统,可不执行。

3.安装依赖库

安装一些编译所需的依赖,不同版本系统安装依赖不同,以ubuntu18.04为例需要安装的是:

sudo apt-get install libudev-dev pkg-config libgtk-3-dev
sudo apt-get install libusb-1.0-0-dev pkg-config
sudo apt-get install libglfw3-dev
sudo apt-get install libssl-dev

4.运行脚本

进入到librealsense文件夹目录下,运行Intel Realsense 的许可脚本

./scripts/setup_udev_rules.sh

5.下载并编译内核模块

这一步会非常慢,我笔记本1W+,都运行了大概一个小时。

./scripts/patch-realsense-ubuntu-lts.sh

6.编译SDK2.0

cd librealsense
mkdir build
cd build
cmake ../ -DBUILD_EXAMPLES=true
make
sudo make install

make这一步也会非常慢,大概需要半个小时

7.测试

测试SDK2.0是否成功安装,使用usb3.0接口连上相机,进入到build/examples/capture文件夹中,执行

cd examples/capture
./rs-capture

或者直接在终端运行:

realsense-viewer

在这里插入图片描述

特别注意:根据上述步骤安装完librealsense SDK后,我兴致勃勃的使用USB连接好realsenseD435i相机,然后打开realsense-viewer。可是一打开Stereo Module模块就卡死,然后右边提示Current SW version: 2.50.0.0 Recommended SW version: 2.54.1.5216。心想刚装好2.50版本的SDK,不是要卸载重新安装吧,安装过程具漫长,简直要崩溃。后来仔细想了想,可能是硬件接触不好,我是把相机插在USB拓展坞上,随后拔了重新插在笔记本USB3.0的接口,瞬间好了,realsense-viewer运行半小时也不会卡死。 总之,淘宝上买的USB3.0拓展坞不靠谱。

二、安装realsense-ros

此时一定要注意版本问题:
官方网址为:https://github.com/IntelRealSense/realsense-ros
官网首页是针对ROS2的,所以我们要选择ROS1的分支,一定仔细阅读README,不然在工作空间的src文件夹下gitclone下载完成realsense-ros后,编译会出错,切记!我这里安装的是realsense-ros的2.3.2版本,在tag分支里。
在这里插入图片描述
1、创建工作空间(就三步)

mkdir -p ~/catkin_ws/src
cd ~/catkin_ws/src/
catkin_init_workspace 
cd ..
catkin_make

第一步:创建工作空间及src
第二步:初始化工作空间
第三步:编译工作空间

2、在catkin_ws/src/下载源程序
我喜欢下载官网的zip格式,然后解压到src,但也可以直接git clone命令下载
这时一定选择ros1版本的realsense-ros
再附一遍官网连接:https://github.com/IntelRealSense/realsense-ros

注意:GitHub - IntelRealSense/realsense-ros at ros1-legacy仓库描述说需要安装ddynamic_reconfigure,并提供了仓库地址。但在实际实践中发现,若是在安装ros系统时选择了 ros-melodic-desktop-full 包, 其中就已预装了ros-melodic-dynamic-reconfigure 包,如果再编译安装ddynamic_reconfigure源码,则在后续启动realsense d435i时便会失败。因此这里推荐先搜索下计算机是否已经安装dynamic-reconfigure,如果没有就使用apt安装即可。
此注意事项来自:Linux Ubuntu环境下 Intel Realsense D435I 驱动+ROS驱动安装配置

3、编译工作空间

cd ~/catkin_ws
catkin_make

截至到目前,安装完成,测试一下:

roslaunch realsense2_camera demo_pointcloud.launch 

成功!!!

在这里插入图片描述

三、librealsense与realsense-ros卸载

1.删除所有实感™有关的程序包,如librealsense SDK

dpkg -l | grep "realsense" | cut -d " " -f 3 | xargs sudo dpkg --purge

2.删除librealsense文件夹

3.删除realsense-ros,直接在src下,delete就可以

在这里插入图片描述

吐槽:我知道librealsense与realsense-ros的版本需要一一对应,而且已经安装好了librealsense 2.50版本,因此在安装realsense-ros时,特意看了Readme里的版本支持字眼,LibRealSense2 supported version: v2.**.*(或者是realsense2_camera—CMakeLists里第44行realsense2的版本要求)。。。。但是ros1-legacy里明明写了支持LibRealSense2 supported version: v2.50.0,但是安装完成后,运行roslaunch realsense2_camera demo_pointcloud.launch ,却提示和librealsense版本不一致,如下所示:

API version mismatch: librealsense.so was compiled with API version 2.50.0 but the application was compiled with 2.53.1! Make sure correct version of the library is installed (make install)

只好重新寻找其他版本的realsense-ros,最后选择了2.3.2版本,同样支持 librealsensev2.50.0,最后完美运行!!!

Intel 的realsense相机这么成熟,且这么多人使用,为什么装驱动和对应ros包这么费尽呢,官方就不能完善下,写个详细准确的步骤!!!!

参考文献:
https://blog.csdn.net/qq_38364548/article/details/124784454?spm=1001.2014.3001.5506
https://blog.csdn.net/Lynn_mg/article/details/103149489?spm=1001.2014.3001.5506

  • 13
    点赞
  • 125
    收藏
    觉得还不错? 一键收藏
  • 12
    评论
评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值