1、深度相机使用

驱动深度相机前,需要在宿主机能够识别出astra相机设备;进入docker容器时候,需要挂载这个astra设备才能在docker容器中,识别到相机。配套的宿主机已经搭建好的环境,不需要额外配置,如果在新的宿主机上,则需要添加规则文件。添加方法很简单,把宿主机下的/etc/udev.rules.d/56-orbbec-usb.rules文件复制到新环境的/etc/udev.rules.d目录下,然后重启一次即可。

1、程序功能说明

程序运行后,驱动Astra相机,可以获取到彩色RGB、深度Depth、红外IR的图像信息以及深度点云信息。

2、程序代码参考路径

进入docker容器后,该功能源码的位置位于,

3、程序启动

launch启动命令,

launch文件相机型号
ros2 launch astra_camera astra_pro.launch.xmlAstrapro
ros2 launch astra_camera astro_pro_plus.launch.xmlAstraproplus
ros2 launch astra_camera astra.launch.xmlAstramini

以启动Astrapro相机为例,进入docker容器后,终端输入,

这一步是检查Docker中是否能够识别到Astra相机设备,出现以下内容则表示Astra相机成功挂载到Docker容器中,

image-20230424150715943

在Docker终端中输入,

image-20230424151037829

可以使用以下命令查看话题,Docker终端中输入,

image-20230424151330581

主要的几个话题如下,

话题名字话题内容
/camera/color/image_rawRGB彩色图像数据
/camera/depth/image_rawDepth深度图像数据
/camera/depth/pointsDepth深度点云数据
/camera/ir/image_rawIR红外图像数据

使用rqt_image_view工具查看图像数据,Docker终端中输入,

然后在左上角选择相对应需要显示的图像话题,这里以显示RGB图像为例,

image-20230424152126462

使用rviz2显示深度点云,Docker终端中输入,

然后在rviz中添加深度点云信息,

image-20230424152706695

最后把Fixed Frame修改成camera_link即可查看点云信息,

image-20230424152932393

如果是只需要深度信息的话,Astrapro与Astraproplus只需要启动以下命令即可,

网页查看图像数据,

然后打开浏览器,电脑与宿主机网络须在同一个局域网下,输入网址:你的宿主机ip+8080,比如,我的宿主机网络IP是192.168.2.53,我的docke容器也是用了宿主机的网络,因此两者的网络ip是一致的,所以在浏览器输入网址:

image-20230424160242827

然后,选择其中的一个图像话题数据,例如显示rgb图像,那就选择/camera/color/下的image_raw,

image-20230424160730733