在ROS2中使用奥比中光(ORBBEC)的AstraPro深度相机

news/2024/11/29 22:54:15/

0.效果演示

在这里插入图片描述

1.下载SDK

到官网下载OpenNI2_SDK
记得是下载这个OpenNI2_SDK,而不是下载那个Orbbec_SDK.
在这里插入图片描述

2.拷贝至自定义目录

拷贝到你的ubuntu的一个文件夹中,并解压得到 ros2_astra_camera 文件夹
在这里插入图片描述
然后新建一个ros2_ws文件夹,再在ros2_ws文件夹中新建src文件夹,然后复制 ros2_astra_camera文件夹里面的astra_camera、astra_camera_msg两个文件夹到src里面
在这里插入图片描述

3.安装各种库

然后根据 ros2_astra_camera里面的README.MD,来安装好各种库:
在这里插入图片描述

● Install dependencies
● Install glog
● Install magic_enum
● Install libuvc
在安装过程中,假如git clone或者wget 失败。可以自己搭梯子下载好源码然后再放到一个文件夹中再编译安装

4.编译项目

安装好上面的库之后,在orbbec中打开终端,并执行以下命令:

cd ros2_ws/src/astra_camera/scripts
sudo bash install.sh
sudo udevadm control --reload-rules && sudo udevadm trigger
cd ../../../
colcon build --event-handlers  console_direct+  --cmake-args  -DCMAKE_BUILD_TYPE=Release

在这里插入图片描述
在编译过程中,可能会出现 LibUVC::UVCShared 的问题。
参考这里修正
在这里插入图片描述

5.启动相机节点

执行以下命令,启动相机节点

source install/setup.bash 
ros2 launch astra_camera astra_mini.launch.py

在这里插入图片描述

6.启动rviz2

在一个新的控制台中启动rviz2

rviz2

在这里插入图片描述

6.1显示深度图

添加一个图像控件
在这里插入图片描述选择好话题,并设置好qos的参数。
在这里插入图片描述
然后就可以看到深度图了
在这里插入图片描述
选择红外图(/camera/ir/image_raw)也是可以的,但是彩色图就不行,不知道为啥。

6.2显示点云

再看看点云
在这里插入图片描述同样也要设置好各个参数
在这里插入图片描述

7.结语

既然可以得到深度图或者点云了,接下来就可以按照【ROS2中将octomap发布到Moveit中作为碰撞物体】中提到的办法,将他们转成octomap导入moveit进行路径规划了。完美(其实还有个手眼标定的问题…)。


http://www.ppmy.cn/news/47597.html

相关文章

Oracle函数记录

一、各个函数介绍 1.OVER(PARTITION BY… ORDER BY…)--开窗函数 1.开窗函数用于为行定义一个窗口(这里的窗口是指运算将要操作的行的集合),它对一组 值进行操作,不需要使用GROUP BY子句对数据进行分组,能够在同一…

用机器学习sklearn+opencv-python过计算型验证码

目录 生成计算型验证码图片 用opencv-python处理图片 制作训练数据集 训练模型 识别验证码 总结与提高 源码下载 在本节我们将使用sklearn和opencv-python这两个库过掉计算型验证码,图片示例如下。 生成计算型验证码图片 要识别验证码,我们就需要…

The 2021 China Collegiate Programming Contest (Harbin) D. Math master

题目链接 题解 2 63 2^{63} 263大概是 1 0 19 10^{19} 1019那么一共有19位需要讨论, 每一个位数各有保留和删除两种状态, 全部状态就是 2 18 2^{18} 218种 因为每一位数都有两种状态, 使用二进制数表示每个状态, 正好能全部表示, 在二进制位数下1表示保留, 0表示删除(反过来也…

GFD233A 3BHE022294R0103

GFD233A 3BHE022294R0103 ABB KUC321AE PLC模块 HIEE300698R0001 KU C321 AE01 ABB KUC711 3BHB004661R0001 高压变频模块 KUC711AE ABB KUC755AE105 3BHB005243R0105 驱动控制系统模块 KUC755 ABB KUC755AE106 3BH005243R006 控制系统模块 KU C755 AE 106 ABB LDGRB-01 3BSE01…

自动插入匹配与标题相关的百度图片或者搜狗图片软件-批量插入txt文档-Chatgpt批量写文章配图神器

1、我们用《Chatgpt 3.5-turbo软件》批量生成txt文档,但是这样txt文档里不带图片,直接发布到网站上,光有文字没有图片,效果也不是很理想,就需要一款配图软件。 2、该软件根据txt标题自动匹配百度图片或者搜狗图片里的…

236. 二叉树的最近公共祖先 ——【Leetcode每日一题】

236. 二叉树的最近公共祖先 给定一个二叉树, 找到该树中两个指定节点的最近公共祖先。 百度百科中最近公共祖先的定义为:“对于有根树 T 的两个节点 p、q,最近公共祖先表示为一个节点 x,满足 x 是 p、q 的祖先且 x 的深度尽可能大&#xff…

[网络工程师]-网络规划与设计-逻辑网络设计(四)

7、网络管理设计 为了成功地管理一个网络,要考虑如何选择合适的网络管理系统并集成到管理策略中。 7.1网络管理策略 制定网络管理策略的工作是十分重要的,因为网络管理策略详细描述了应从每台设备上采集哪些信息以及如何分析这些信息。在策略制定过程中,可以从前面介绍的协…

追梦之旅【数据结构篇】——详解小白如何使用C语言实现堆数据结构

详解小白如何使用C语言实现堆数据结构 “痛”撕堆排序~😎 前言🙌什么是堆?堆的概念及结构 堆的性质:堆的实现堆向下调整算法画图分析:堆向下调整算法源代码分享:向下调整建小堆向下调整建大堆 堆向上调整算…