PrimeSense是Kinect一代的芯片供应商,位于以色列,也是开源体感开发包OpenNI 的维护者。自从被 Apple 收购后,销声匿迹,OpenNI 也停止更新。现在可以从网站http://structure.io/openni下载到OpenNI 2 SDK和文档。

  本人之前使用过华硕的Xtion Pro摄像头,不过由于其也使用了PrimeSense的技术,现在已经停产了,但是还可以在淘宝上面买到。

  目前一家位于中国深圳的企业奥比中光,成为继Primesense(苹果收购)、Microsoft、Intel后,全球第四家量产全自主知识产权3D传感器厂商。深圳奥比中光科技有限公司,成立于2013年,总部设立在深圳,在上海、广州、美国Seattle和Troy均设有分部。奥比中光3D传感在智能客厅、机器人、AR/VR、智能安防、辅助驾驶等不同领域都有超强应用。

  下面这款乐视3D体感摄像头就是使用的奥比中光的技术:

   其性能参数如下:

  可以看出,摄像头只能检测出0.4~8米范围内的物体的深度:

  在其英文网站https://orbbec3d.com/develop/上提供了Windows、Linux、MacOS等系统下的SDK。二次开发可以使用OpenNI 2或者奥比中光自己的Orbbec Astra SDK。如果有技术问题也可以在网站:https://3dclub.orbbec3d.com/上找到解答。下面简单记录一下在Windows 7和Ubuntu 14.04的64位系统下配置OpenNI 2开发环境的步骤。

  • Windows

  进入下载页面,下载Windows下的驱动和OpenNI 2

  下载后解压文件,安装Sensor Driver文件夹中的驱动安装程序

  然后就可以按照OpenNI 2的帮助文档配置Visual Studio项目属性:

  这里需要注意一点,在奥比中光英文网站下载的OpenNI 2文件夹中Redist\OpenNI2\Drivers下有两个文件:orbbec.dll和orbbec.ini

  而在structure.ioPCL等网站上下载的OpenNI的对应文件中没有这两个文件。如果要使用从别处下载的OpenNI,需要将上述两个文件复制到Redist\OpenNI2\Drivers文件夹中才能正常使用,否则会提示找不到摄像头。

  • Ubuntu

  我们可以在网址Universal Download Thread for Astra Series Cameras下载OpenNI 2 for Linux,这个网站在国外,下载链接可能打不开,可以科学上网进行下载...注意要根据你的系统信息选择合适的驱动,我的电脑是64位Ubuntu 14.04系统,因此选择OpenNI-Linux-x64-2.3.zip。注意这里有一个Readme.txt文件,这个文件提供了Linux系统下的安装使用说明。

  如果不理解英文说明,可以参考CSDN上的文章:turtlebot3D传感器的配置,或 奥比中光Orbbec Astra Pro RGBD 3D视觉传感器在ROS使用说明

  下面就记录下容易出错的地方:

  1. 要运行带图形界面的示例程序(比如SimpeViewer),需要额外安装freeGLUT库。如果只是运行命令行程序(如SimpleRead),则不必安装

  # 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

  2. 要给安装文件install.sh加上可执行权限。运行安装脚本,可以产生OpenNIDevEnvironment,其中包含了OpenNI的开发环境

# run install.sh to generate OpenNIDevEnvironment, which contains OpenNI development environment
#(sudo chmod a+x install.sh)
$ sudo ./install.sh

  3. 添加环境变量,OpenNI要依据一些环境变量来定位文件。

# add environment variables
$ source OpenNIDevEnvironment

  4. 可以在Samples的对应文件夹中使用make生成示例程序,或者直接运行Samples/Bin中已有的示例程序,注意要添加可执行权限。另外我是在VMware虚拟机上的Ubuntu系统中执行的上述操作,运行时显示错误信息:无法找到摄像头。后来发现需要在虚拟机软件中连接到可移动设备才能正常使用。注意,摄像头连接到虚拟机中的Ubuntu后会与Win7系统断开:

  将可移动设备与虚拟机断开后,虚拟机右下角状态栏中的设备图标会变灰色:

# run sample
# connect sensor
$ ./SimpleViewer # now you should be able to see a GUI window showing the depth stream video

参考:

turtlebot3D传感器的配置

Develop——Orbbec

https://github.com/orbbec

Universal Download Thread for Astra Series Cameras

市售体感设备横评

体感设备:因特尔 Intel RealSense R200,乐视LeTV Pro Xtion和Orb奥比中光bec Astra比较

奥比中光3D视觉传感器--OpenNI 2配置的更多相关文章

  1. 奥比中光Orbbec Astra Pro RGBD 3D视觉传感器在ROS(indigo和kinetic)使用说明 rgb depth同时显示

    Orbbec Astra Pro传感器在ROS(indigo和kinetic)使用说明 rgb depth同时显示 这款摄像头使用uvc输入彩色信息,需要libuvc和libuvc_ros这样才能在R ...

  2. 3D视觉基础(基本原理及3D传感器基本参数)

    本人所在行业属于3D视觉方向,因此最近也是学习了很多3D视觉的知识,这次专门总结一下. 传统工业机器视觉中,2D指的是X方向加Y方向,那么3D视觉自然就是加了一个Z方向.目前我接触到的公司产品是3D激 ...

  3. V-rep学习笔记:视觉传感器2

    视觉传感器的属性设置栏中还有如下几个选项: Ignore RGB info (faster): if selected, the RGB information of the sensor (i.e. ...

  4. V-rep学习笔记:视觉传感器1

    Vision sensors, which can detect renderable entities(Renderable objects are objects that can be seen ...

  5. 奥比中光Astra Pro在ROS系统中的使用

    奥比中光Astra Pro在ROS系统中的使用 上一次介绍了Astra Pro在ubuntu中的使用,由于Astra Pro使用uvc传输彩色图像,所以当用rqt_image_view窗口 时,看不到 ...

  6. 3D视觉 之 线激光3D相机

    1  3D 视觉 常见的三维视觉技术,包含双目.ToF.激光三角.结构光等,如下图:     1)毫米级 双目.ToF.结构光(散斑)的精度为 mm 级,多见于消费领域,如:导航避障,VR/AR,刷脸 ...

  7. 体感设备:因特尔 Intel RealSense R200,乐视LeTV Pro Xtion和Orb奥比中光bec Astra比较

    最近调试三个个厂家的体感设备,第一个是Intel的RealSense R200(参数规格:分辨率:1080p,深度有效距离:0.51-4,USB3.0),第二个是乐视LeTV Pro Xtion(参数 ...

  8. [3d跑酷] Xcode5 打包 发布配置

    主题 Unity导出Xcode项目,使用Xocde打包ipa并提交到AppStore xcode发布配置 1.设置发布相关参数,比如 包名,版本,证书,ios设备版本 2.设置体系结构,支持的平台(I ...

  9. 奥比中光Astra Pro的使用(1)

    在ubuntu上的使用 首先下载SDK以及OpenNI安装包,下载地址: 解压两个安装包 切换目录到AstraSDK-Linux下的install目录,并输入命令:sudo sh ./install. ...

随机推荐

  1. [Android Security] APK自我保护 - DEX/APK校验

    cp : https://segmentfault.com/a/1190000005105973 DEX校验 classes.dex 是 Android 虚拟机的可执行文件,我们所写的 java 代码 ...

  2. Prometheus 初体验

    本文环境 Redhat Linux 6.7, Prometheus 2.2.1,node_exporter 1.5.2 介绍 Prometheus 是2012年由 SoundCloud 开源的系统监控 ...

  3. Linux文本行倒序排列6种方法

    Linux文本行倒序排列6种方法 1. 命令方法: nl filename | sort -nr | cut -f2 这个方法很unix风格,使用多命令组合完成某种功能是典型的unix特点 单命令: ...

  4. .NetCore中EFCore for MySql整理

    一.MySql官方提供了Ef Core对MySql的支持,但现在还处于预览版 Install-Package MySql.Data.EntityFrameworkCore -Pre Install-P ...

  5. Grizzly HTTP CoDec ThreadCache 浅析

    Grizzly 的 HTTP CoDec 实现方法更 Netty 的 CoDec 完全不同, 他们思想上的差异主要在于: 1. 解码方式 Grizzly 使用流式解码, 它的HttpHeader对象内 ...

  6. String hashCode 方法为什么选择数字31作为乘子

    1. 背景 某天,我在写代码的时候,无意中点开了 String hashCode 方法.然后大致看了一下 hashCode 的实现,发现并不是很复杂.但是我从源码中发现了一个奇怪的数字,也就是本文的主 ...

  7. scrapy框架系列 (2) 一个简单案例

    学习目标 创建一个Scrapy项目 定义提取的结构化数据(Item) 编写爬取网站的 Spider 并提取出结构化数据(Item) 编写 Item Pipelines 来存储提取到的Item(即结构化 ...

  8. 会动的文字Marquee应用(转)

    想要做个滚动公告,看了网上的教程,无一不是很恐怖的场频啊java语言编制的JS,或者就是各种复杂,无意中发现了Marquee这东西,用了一下,很简单,只需两行代码,即可以实现很好的效果,特此分享一下. ...

  9. Android -- View流程

    在自定义view中打log,view的显示共有三种,visible.invisible和gone,分别看一下log: gone onVisibilityChanged construct 2 para ...

  10. 推文《阿里凑单算法首次公开!基于Graph Embedding的打包购商品挖掘系统解析》笔记

    推文<阿里凑单算法首次公开!基于Graph Embedding的打包购商品挖掘系统解析>笔记 从17年5月份开始接触Graph Embedding,学术论文读了很多,但是一直不清楚这技术是 ...