奥比中光Orbbec Astra pro 深度相机在ROS Melodic的使用

  • Post author:
  • Post category:其他


一、虚拟机中使用OPENNI显示相机图像

下载openni的linux安装包。下载地址


https://dl.orbbec3d.com/dist/openni2/OpenNI_2.3.0.66.zip

将文件夹中的该文件拷贝到虚拟机中

首先安装依赖包

sudo apt-get install build-essential freeglut3 freeglut3-dev

然后解压压缩包,并进入解压后的压缩包

unzip OpenNI-Linux-x64-2.3.0.66.zip

解压后执行以下语句

chmod 777 install.sh
sudo ./install.sh

重新拔插设备 初始化OpenNI环境

source OpenNIDevEnvironment

编译运行

cd Samples/SimpleViewer
make
cd Bin/x64-Release
./SimpleViewer

二,在ROS环境中使用Orbbec Astra

1)安装依赖包

sudo apt install ros-$ROS_DISTRO-rgbd-launch ros-$ROS_DISTRO-libuvc ros-$ROS_DISTRO-libuvc-camera ros-$ROS_DISTRO-libuvc-ros

2)将ros_astra_camera包,放在已经创建好的ros工作区间的SRC文件夹下:

使用命令的方法

cd ~/catkin_ws/src
git clone https://github.com/orbbec/ros_astra_camera

执行该句,很难下载到装包,使用以下链接,直接在windows下环境下,下载好,拷贝到工作空间




mirrors / orbbec / ros_astra_camera · GitCode


ROS wrapper for Astra camera 🚀 Github 镜像仓库 🚀 源项目地址 ⬇



https://gitcode.net/mirrors/orbbec/ros_astra_camera?utm_source=csdn_github_accelerator



3)在工作区下进行编译astra_camera

cd ~/catkin_ws
catkin_make --pkg astra_camera

编译成功的结果为:

4)创建 astra udev 规则

roscd astra_camera
./scripts/create_udev_rules

5)运行astra_camera



注意:搞清楚自己相机的型号,是否是pro版本的

roslaunch astra_camera astrapro.launch

如果上面的编译没有什么问题,执行上面一句话后,结果如图所示:

如果想看相机的ros包中,具备的话题有哪些,可以使用以下命令查看

其实,这里面我们最感兴趣的只有三个:深度图像、彩色图像、红外图像


/camera/depth/image_raw

是深度图像


/camera/depth_registered/image_raw

是和彩色图像配准之后的深度图像


/camera/ir/image_raw

是红外图像


/camera/rgb/image_raw

是彩色图像

6)使用rviz显示相机

在终端输入:rviz

随后在左侧打开选项卡

image

,在

image Topic

中选择自己订阅的节点即可。

三,测试相机自带的所有例程

1.彩色相机标定

第一个终端启动命令
roslaunch astra_camera astrapro.launch

重启一个终端输入命令
# 彩色图
rosrun camera_calibration cameracalibrator.py image:=/camera/rgb/image_raw camera:=/camera/rgb --size 9x6 --square 0.02

标定的结果到什么程度算是合格,最好的情况是【X】、【Y】、【Size】、【Skew】下面的线条变为绿色后就成功了;

当认为当前标定图像的数目已经够了,(六七十张就差不多了,太多容易卡死),点击


【CALIBRATE】


计算相机内参。

计算完内参后,进行保存

标定结束后,标定结果存在【/tmp/calibrationdata.tar.gz】,可以移动出来看看内容

sudo mv /tmp/calibrationdata.tar.gz ~
解压后,里面有刚刚标定的图片,一个ost.txt文件和一个ost.yaml文件。yaml文件是我们需要的,不过还需要修改才可以使用。
  • 将ost.yaml改为head_camera.yaml
  • 将camera_name:后面的名称改为head_camera
  • 将文件移动到~/.ros/camera_info文件夹下

    【这个文件夹是针对小车下的文件夹的。虚拟机只是用来做标定获得该文件夹即可】




版权声明:本文为YOULANSHENGMENG原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。