奥比中光Orbbec Astra Pro RGBD 3D视觉传感器在ROS(indigo和kinetic)使用说明 rgb depth同时显示
Orbbec Astra Pro传感器在ROS(indigo和kinetic)使用说明 rgb depth同时显示
这款摄像头使用uvc输入彩色信息,需要libuvc和libuvc_ros这样才能在ROS正常使用彩色功能。
请在下面网址,分别下载对应包:
1 https://github.com/ktossell
2 https://orbbec3d.com/develop/
也可以直接下载打包好的资源:
http://download.csdn.net/detail/zhangrelay/9705366
首先安装驱动,依据版本选择下载驱动中合适的版本:
依据下列文档说明进行安装:特别注意标出部分
#############Note###################
# For user with ARM based development board:
# With CPU Structure older than Cortex A17, use OpenNI-Linux-Arm-2.3 Nofilter.tar for better performance
####################################
# There are two zip files, one is for 32bit machine, the other one is for 64bit
# We choose 64bit(x64) and make the example as follows:
这里应为系统是Ubuntu 16.04 64bit PC选择对应64bit版本
# To run visual samples(e.g., SimpleViewer), you will need freeglut3 header and libaries, please install:
$ sudo apt-get install build-essential freeglut3 freeglut3-dev
#check udev version, Orbbec Driver need libudev.so.1, if can't find it, can make symbolic link from libudev.so.x.x,
#which usually locate in /lib/x86_64-linux-gnu or /lib/i386-linux-gnu
$ldconfig -p | grep libudev.so.1
$cd /lib/x86_64-linux-gnu
$sudo ln -s libudev.so.x.x.x libudev.so.1
# copy tgz file to any place you want(e.g., Home)
# unzip tgz file
拷贝到对应文件夹并解压缩:
$ tar zxvf OpenNI-Linux-x64-2.2-0118.tgz
$ cd OpenNI-Linux-x64-2.2
# run install.sh to generate OpenNIDevEnvironment, which contains OpenNI development environment
$ sudo ./install.sh
# please replug in the device for usb-register
# add environment variables
$ source OpenNIDevEnvironment
# build sample(e.g., SimpleViewer)
$ cd Samples/SimpleViewer
$ make
# run sample
# connect sensor
$ cd Bin/x64-Release
$ ./SimpleViewer
# now you should be able to see a GUI window showing the depth stream video
# If the Debian Jessie Lite is used for testing, it may require the following installation for properly start the viewer.
$ sudo apt-get install libgl1-mesa-dri
安装完毕后,进行功能测试:
~/tools/OpenNI-Linux-x64-2.3/Samples/Bin$ ls
ClosestPointViewer MultiDepthViewer org.openni.jar
EventBasedRead MultipleStreamRead org.openni.Samples.SimpleViewer
libMWClosestPoint.so MWClosestPointApp org.openni.Samples.SimpleViewer.jar
libOpenNI2.jni.so OpenNI2 SimpleRead
libOpenNI2.so OpenNI.ini SimpleViewer
使用./SimpleViewer和./ClosestPointViewer,注意传感器特性,深度视觉0.4-8.0米,如下:
安装ROS功能包,以kinetic为例,indigo类似:
~$ sudo apt-get install ros-kinetic-astra-camera ros-kinetic-astra-launch
完毕后,使用:
relaybotbox@relaybotbox-desktop:~$ roslaunch astra_launch
astra.launch device.launch pointclouds.launch
astra_tf_prefix.launch ir.launch processing.launch
color.launch kinect_frames.launch
depth.launch manager.launch
relaybotbox@relaybotbox-desktop:~$ roslaunch astra_launch astra.launch
工作正常的话可以看到:
~$ roslaunch astra_launch astra.launch
... logging to /home/relaybotbox/.ros/log/26bcfad8-bcf9-11e6-bc52-00e0b4159b09/roslaunch-relaybotbox-desktop-6834.log
Checking log directory for disk usage. This may take awhile.
Press Ctrl-C to interrupt
Done checking log file disk usage. Usage is <1GB.started roslaunch server http://relaybotbox-desktop:33177/SUMMARY
========PARAMETERS* /camera/camera_nodelet_manager/num_worker_threads: 4* /camera/depth_rectify_depth/interpolation: 0* /camera/driver/auto_exposure: True* /camera/driver/auto_white_balance: True* /camera/driver/color_depth_synchronization: False* /camera/driver/depth_camera_info_url: * /camera/driver/depth_frame_id: camera_depth_opti...* /camera/driver/depth_registration: False* /camera/driver/device_id: #1* /camera/driver/rgb_camera_info_url: * /camera/driver/rgb_frame_id: camera_rgb_optica...* /rosdistro: kinetic* /rosversion: 1.12.6NODES/camera/camera_nodelet_manager (nodelet/nodelet)depth_metric (nodelet/nodelet)depth_metric_rect (nodelet/nodelet)depth_points (nodelet/nodelet)depth_rectify_depth (nodelet/nodelet)depth_registered_sw_metric_rect (nodelet/nodelet)driver (nodelet/nodelet)points_xyzrgb_sw_registered (nodelet/nodelet)register_depth_rgb (nodelet/nodelet)rgb_rectify_color (nodelet/nodelet)/camera_base_link (tf2_ros/static_transform_publisher)camera_base_link1 (tf2_ros/static_transform_publisher)camera_base_link2 (tf2_ros/static_transform_publisher)camera_base_link3 (tf2_ros/static_transform_publisher)auto-starting new master
process[master]: started with pid [6848]
ROS_MASTER_URI=http://localhost:11311setting /run_id to 26bcfad8-bcf9-11e6-bc52-00e0b4159b09
process[rosout-1]: started with pid [6861]
started core service [/rosout]
process[camera/camera_nodelet_manager-2]: started with pid [6864]
process[camera/driver-3]: started with pid [6865]
process[camera/rgb_rectify_color-4]: started with pid [6867]
process[camera/depth_rectify_depth-5]: started with pid [6878]
process[camera/depth_metric_rect-6]: started with pid [6896]
process[camera/depth_metric-7]: started with pid [6912]
process[camera/depth_points-8]: started with pid [6920]
process[camera/register_depth_rgb-9]: started with pid [6938]
process[camera/points_xyzrgb_sw_registered-10]: started with pid [6949]
process[camera_base_link-12]: started with pid [6970]
process[camera_base_link1-13]: started with pid [6986]
process[camera_base_link2-14]: started with pid [6997]
process[camera_base_link3-15]: started with pid [7008]
[ INFO] [1481168899.738014182]: Initializing nodelet with 4 worker threads.
[ INFO] [1481168900.562120390]: Device "2bc5/0403@2/5" found.
Warning: USB events thread - failed to set priority. This might cause loss of data...
使用rqt_image_view:
发现rgb并没有正确显示??需要UVC支持。
编译libuvc过程如下:注意红色部分
`libuvc` is a cross-platform library for USB video devices, built atop `libusb`.
It enables fine-grained control over USB video devices exporting the standard USB Video Class
(UVC) interface, enabling developers to write drivers for previously unsupported devices,
or just access UVC devices in a generic fashion.
## Getting and Building libuvc
Prerequisites: You will need `libusb` and [CMake](http://www.cmake.org/) installed.
To build, you can just run these shell commands:
git clone https://github.com/ktossell/libuvc
cd libuvc
mkdir build
cd build
cmake ..
make && sudo make install
and you're set! If you want to change the build configuration, you can edit `CMakeCache.txt`
in the build directory, or use a CMake GUI to make the desired changes.
## Developing with libuvc
The documentation for `libuvc` can currently be found at https://int80k.com/libuvc/doc/.
然后编译libuvc_ros:注意红色部分
`libuvc_camera` is a ROS driver that supports webcams and other UVC-standards-compliant video devices.
It's a cross-platform replacement for `uvc_camera`, a Linux-only webcam driver.
Documentation is available on the ROS wiki: [libuvc_camera](http://wiki.ros.org/libuvc_camera).
使用catkin_make,如果报错,注意libusb.h的位置。使用locate libusb.h,并将其放到合适位置:
~$ sudo cp /usr/include/libusb-1.0/libusb.h /usr/local/include/libuvc/
修改下libuvc.h中include中的路径。
在启动roscore后,使用:
~$ rosrun libuvc_camera camera_node
查看rgb。
~$ rosrun libuvc_camera camera_node
[ INFO] [1481169521.460856223]: Opening camera with vendor=0x0, product=0x0, serial="", index=0
[ERROR] [1481169521.461465837]: Permission denied opening /dev/bus/usb/002/004
出现报错,修改端口权限,重试。
[ERROR] [1481169521.461465837]: Permission denied opening /dev/bus/usb/002/004
relaybotbox@relaybotbox-desktop:~$ sudo chmod 777 /dev/bus/usb/002/004
[sudo] relaybotbox 的密码:
relaybotbox@relaybotbox-desktop:~$ rosrun libuvc_camera camera_node
[ INFO] [1481169588.328108966]: Opening camera with vendor=0x0, product=0x0, serial="", index=0
unsupported descriptor subtype: 13
unsupported descriptor subtype: 13
[ WARN] [1481169589.131025001]: Unable to set scanning_mode to 0
[ WARN] [1481169589.132290563]: Unable to set auto_exposure to 8
[ WARN] [1481169589.133330942]: Unable to set auto_exposure_priority to 0
[ WARN] [1481169589.135009273]: Unable to set exposure_absolute to 1
[ WARN] [1481169589.136271211]: Unable to set auto_focus to 1
[ WARN] [1481169589.137170759]: Unable to set focus_absolute to 0
[ WARN] [1481169589.138442322]: Unable to set gain to 0
[ WARN] [1481169589.140162069]: Unable to set iris_absolute to 0
[ WARN] [1481169589.141553880]: Unable to set pantilt to 0, 0
[ INFO] [1481169589.273060465]: using default calibration URL
[ INFO] [1481169589.273198871]: camera calibration URL: file:///home/relaybotbox/.ros/camera_info/camera.yaml
[ INFO] [1481169589.273354822]: Unable to open camera calibration file [/home/relaybotbox/.ros/camera_info/camera.yaml]
[ WARN] [1481169589.273418390]: Camera calibration file /home/relaybotbox/.ros/camera_info/camera.yaml not found.
使用 rqt_image_view ,查看rgb如下:
同时使用也是可以的。
安装配置完毕,可以开始使用这款视觉传感器了。
奥比中光Orbbec Astra Pro RGBD 3D视觉传感器在ROS(indigo和kinetic)使用说明 rgb depth同时显示相关推荐
- 奥比中光Orbbec Astra Pro RGBD 3D视觉传感器 之 前言
这是一个新的方向,但是我还是理好思路再深入比较好,可以写的东西更多是汇总,但写出来第一个目的是利己的.理解透彻之后再利他. 接触这个的需求就是实现测试物体尺寸. Orbbec的资料比较分散,有业务人员 ...
- 奥比中光深度摄像头_ros与深度相机入门教程-在ROS使用奥比中光Orbbec Astra Pro
ros与深度相机入门教程-在ROS使用奥比中光Orbbec Astra Pro 说明: 介绍如何在ros安装和使用奥比中光Orbbec Astra Pro OrbbecAstra介绍 astra_ca ...
- 奥比中光Orbbec Astra Pro体感摄像头“标定全过程”
1.前期准备工作 在ROS中配置奥比中光Orbbec Astra Pro,保证可以正常显示RGB.深度.IR.彩色图像. 2.安装标定功能包 终端中输入命令 sudo apt install ros- ...
- 在ROS使用奥比中光Orbbec Astra Pro
一.相机驱动的安装 1.安装依赖 $ sudo apt-get install build-essential freeglut3 freeglut3-dev 2.检查udev版本,需要libudev ...
- 使用奥比中光Orbbec Astra Pro在ROS下跑orb_slam2
使用奥比中光Orbbec Astra Pro在ROS下跑orb_slam2 一.奥比中光摄像头驱动 1. Install ROS 1) Create a ROS Workspace(if you do ...
- 全网最详细 Opencv + OpenNi + 奥比中光(Orbbec) Astra Pro /乐视三合一体感摄像头LeTMC-520 + linux 环境搭建
本文参考 Using Orbbec Astra 3D cameras C++20学习:基于Ubuntu系统编译gcc10.2.0 linux下编译安装opencv生成opencv.pc 摄像头方案 / ...
- 最全“乐视三合一奥比中光Orbbec Astra Pro体感摄像头”标定全过程(1)
1.前期准备工作 在ROS中配置乐视三合一奥比中光Orbbec Astra Pro,保证可以正常显示RGB.深度.IR.彩色图像. 2.安装标定功能包 终端中输入命令 sudo apt install ...
- 在ROS中使用奥比中光Orbbec Astra Pro深度相机(二)
在之前外面已经介绍过Orbbec Astra Pro深度相机,同学们可以点击☞☞☞了解详情,接着再来介绍介绍. 有兴趣的可以看一下ROS Wiki上的介绍: Orbbec Astra Pro介绍 as ...
- 在ROS中使用奥比中光Orbbec Astra Pro
一.相机驱动的安装 1.安装依赖: $ sudo apt-get install build-essential freeglut3 freeglut3-dev 2.检查udev版本,需要libude ...
最新文章
- C#和Unity游戏开发者大师班2021 (2D,3D和FPS)
- python基于tpot训练模型并抑制输出stackingestimator、而是输出单模型例如xgboost设置
- 12个有趣的C语言面试题及答案
- anaconda如何保存python文件_想在Jupyter Notebook(Anaconda)中保存并运行Python脚本
- 自动化机器学习(AutoML)之自动贝叶斯调参
- 如何让多端口网站用一个nginx进行反向代理实际场景分析
- 【摄影测量原理】第二章:单幅影像解析基础
- 线程间的协作(3)——管道输入/输出流
- Qt工作笔记-qmake和uic(对Qt底层的进一步认识)
- STM32工作笔记0084---UCOSIII软件定时器
- XenDesktop 5之痛---Database Transaction Log速增
- eclipse(window平台)快捷键总结
- rpc调用 java_RPC调用的简单实现
- atto软件测试速度,基于ATTO的传输速度VS文件大小测试
- 魔兽世界个人插件、宏、WA 使用记录
- Java-实现飞机躲子弹游戏
- 重症医学数据库MIMIC-IV简介
- 《血族》全民模式火热开启 南北之战一触即发
- Asp.net 获取泛微OA个人信息并生成二维码名片vCard
- Excel文件无法保存