一.对比介绍:
1. OpenCV:开源跨平台,OpenCV于1999年由Intel建立,如今由Willow Garage提供支持。
2. OpenNI:OpenNI组织创建于2010年11月。主要成员之一是PrimeSense公司(以色列一家公司,被苹果收购(2013年11月25),Kinect1核心芯片,华 硕Xtion)。其他成员还有开发ROS的机器人公司Willow Garage,以及游戏公司Side-Kick。(因此OpenNI完全支持华硕,而不完全支持kinect2)
3. PCL:构成现在PCL算法基础的第一个算法,是由Dr. Radu Bogdan Rusu在德国慕尼黑工业大学读博士期间开发的,后来在2009年底由Willow Garage公司进一步开发完成。
二. 华硕Xtion和微软kinect比较:原文网址:http://blog.sina.com.cn/s/blog_7e6503990100utgx.html
华硕Xtion PRO(For Developers Only)体感设备使用评测(与Kinect对比),2011-05-23
1. 产品外观
2. 参数规格
以下参数摘自华硕Xtion Pro外包装盒:
l 有效距离:3.5米~0.8米
l 有效角度:70◦
l 电源/接口:USB 2.0
l 传感器:深度探测
l 支持平台:Intel X86 & AMD
l 操作系统:Win 32/64:XP,Vista,Win7
Linux Unubtu 10.10:X86,32/64 bit
l 程序语言:C++/C#(Windows), C/C++
以下参数为实际测量参数(实际测量参数有部分误差):
l 设备长:18cm
l 设备宽:3.6cm
l 设备高(连底座):5cm
l 镜头部分高:2.6cm
3. 驱动支持
安装测试在Windows 7 32位系统下进行。
设备包装中包含的驱动就是Prime Sense的驱动,安装过程中,观察了下,发现光盘中程序的版本如下:
l OpenNI版本为 1.0.0.1
l Sensor版本为 5.0.0
l NITE版本为 1.3.0
安装完成后,在设备管理器里面的PrimeSense目录下,出现“PrimeSense PS1080”
安装后能够正常使用,打开NiViewer.exe,能够正常采集深度图像
图3.1 NiViewer采集的深度图
然后尝试使用OpenNI发布的新版本驱动,使用了如下版本:
l OpenNI版本 1.1.0.41
l Sensor版本 5.0.0.1.32
l NITE版本 1.3.1.5
安装完成后,在设备管理器,同样看到了该设备,但是在运行NiViewer.exe的时候,出现如下错误:
One or more of the following nodes could not be enumerated:
Device: PrimeSense/SensorKinect/5.0.1.32: The device is not connected! |
据错误信息推断应该是Sensor驱动的问题,因此目前使用Xtion的话就还是使用老版本的驱动。
4. 开发
使用老版本的驱动,运行之前开发的程序(没有使用RGB图像),能够正常运行。
图4.1 之前开发的程序能正常运行
使用SetMapOutputMode函数调整不同的分辨率和FPS,发现只有分辨率为640*480,FPS为30时能够正常运行,其他参数下,要么就是黑屏,要么就是程序停止响应,要么就是如下图所示状态:
图4.2 调整参数带来的问题
参数设置带来的问题,还需要进一步研究下。深度图的使用和原来的使用差别不大。
5. 华硕Xtion Pro与微软Kinect对比
图5.1 华硕Xtion与手对比图
图5.2 Xtion与Kinect对比图
下表整理了两个设备之间的差别:
属性 |
华硕Xtion Pro |
微软 Kinect |
长 |
18cm |
28cm |
宽 |
3.6cm |
6cm |
高(带底座) |
5cm |
7.5cm |
镜头部分高 |
2.6cm |
4cm |
景深摄像头感应距离 |
0.8m~3.5m |
1.2m~3.5m |
有效视角 |
70◦ |
水平:57◦ 垂直:43◦ |
电源/ 接口 |
USB2.0 |
外接电源+ USB2.0 |
传感器 |
深度摄像头 |
深度摄像头+RGB摄像头 |
能否控制马达 |
否 |
机动底座,倾斜范围:±27度 |
音频系统 |
无 |
语音麦克风阵列 |
6. 使用感受
从购买上来看,华硕Xtion目前价格为1399,目前大陆地区只能从华硕销售部门进行订购;而Kinect目前看到的价格已经降到一千元以下了,实体店和网上都能订购比较方便。
从功能上来看,华硕Xtion只有深度摄像头;而Kinect深度摄像头和RGB摄像头都有,RGB摄像头虽然像素不高,也能用其在游戏中照相什么的,还有一些用处。目前测试发现华硕的深度摄像头采集的数据并不比Kinect高,深度图像都会抖动。
总体来说,感觉华硕Xtion的价格有点贵,不提供RGB摄像头,没有音频系统,没有控制马达。目前,其他方面的性能还没有测试出有比Kinect提高和改进的。华硕Xtion比Kinect好用的一点是,Xtion只需要USB口就能驱动了,不像Kinect还需要外接电源;Xtion耗热较小,Kinect用一会儿就开始发烫了;Xtion的外观比较小巧,比较容易安置。
三、Microsoft Kinect SDK 和 PrimeSense OpenNI 的区别(2011年07月),原文地址:http://blog.csdn.net/leowangzi/article/details/6604512
After playing with both the Microsoft Kinect SDK and the PrimeSense OpenNI SDK here are some of my thoughts,Note that the Microsoft’s SDK version is the Beta version, so things may change when the final one is released)
Microsoft’s Kinect SDK (Beta)pro: 优点
con: 缺点
PrimeSense OpenNI/NITEpro: 优点
con: 缺点
(Personal) conclusion:Microsoft seems to have the edge when working with skeletons and/or audio.
微软在骨骼识别和音频方面有优势。(翻者:本人非常认同,微软的音频识别将会在未来的体感游戏里发挥重要的作用!)
OpenNI seems to be best suited when working on colored pointclouds, on non-Win7 platforms and/or for commercial projects.
OpenNI似乎更适合做一些带颜色的点云的工作,和在非Win7平台来开发商业项目。
When working with gestures in specific: 手势识别
平台上比较:
Kinect for Windows SDK 仅支持Windows 7/Windows 8 操作系统(PC平台为主,电视机,机顶盒等嵌入式平台为0)
OpenNI 支持大多数操作系统
OpenNI各版本之间的比较:
OpenNI 1.X 版本 支持大多数操作系统,支持Kinect/Xtion独立驱动
OpenNI 2.X 版本 支持大多数操作系统,支持Xtion独立驱动,Kinect则要靠Kinect for Windows SDK自带的驱动做桥接。
简单的说:
Kinect for Winows SDK 不允许非Kinect的摄像头使用。
OpenNI 2.X 不允许Kinect在非Windows操作系统上运行,其他体感摄像头支持良好。