小小Xtion开箱测评!!2012年03月12日 19:52:55

原文:http://page.renren.com/601107241/note/811764499

ASUS Xtion Pro Live 開箱文

給個評價吧~

基本上,雖然應該大部分的人在使用 OpenNI 時,應該都是以微軟的 Kinect(for Xbox 360)為主,但是實際上,OpenNI 並不是原生支援 Microsoft Kinect 的!要在 OpenNI 的環境下使用 Kinect,並不能使用官方的驅動程式,而是要使用修改過的驅動程式,才能正常使用的。

而相較之下,華碩的 Xtion Pro 以及 Xtion Pro Live 這兩款感應器,就是真正對應 OpenNI 的設備!他不需要使用特殊版本的驅動程式,而可以直接以 OpenNI 的公版驅動程式,就可以在 OpenNI 的環境下使用;相較於 Kinect 還需要等修改版推出,如果是要使用 OpenNI 來開發的話,Xtion Pro 應該算是一個比較方便的選擇。

Heresy 自己之前在「體感技術研討會」(參加感想)時,是已經有看過 Xtion Pro 和 Xtion Pro Live 的實物了,不過由於各種因素,自己在開發上還是以 Microsoft Kinect 為主要硬體;不過這次,算是終於借到了一台 ASUS 的 Xtion Pro Live、可以來玩一下了!

接下來,就是開箱聞了!下面左邊的照片,就是 ASUS Xtion Pro Live 的外盒了~基本上,盒子本身很小,而盒子上的說明,都是以英文為主,只有側邊的簡易規格說明有多國語言(下方右圖),包含了他的主要硬體參數;而盒子的背面,則是印了一些簡單的應用說明、以及 ASUS、PrimeSense 和 OpenNI 的 Logo。

這邊所列的規格,基本上如下:

  • 有效距離:0.8 公尺 – 3.5 公尺
  • 有效角度:58° H、45° V、70° D
  • 介面/電源:USB 2.0
  • 感測器:RGB & 深度
  • 支援平台:Intel x86 & AMD
  • 支援作業系統:
    • Win 32/64: XP、Vista、Win7
    • Linux Ubuntu 10.10: x86 32/64bit
  • 程式語言:C++/C#(Windows)、C++(Linux)
  • 音效:內建兩組麥克風

基本上,在支援的語言和作業系統的部分,因為 Xtion Pro 就是使用 OpenNI 這個開發平台,所以目前實際上能支援的是比外盒上列的更多一些啦~

而內容物的部分,也很單純,所有的東西就是下面左邊照片裡的這三項;包含了 Xtion Pro Live 的本體(下右圖)、軟體光碟、以及簡易的安裝說明(多國語言)。其中,軟體光碟裡面所附的,基本上也就是 OpenNI 的東西了~所以建議可以直接到 OpenNI 官方網站下載最新版,而不用使用光碟裡的版本。

在感應器的部分,Xtion Pro Live 由於同樣也是使用 PrimeSense 的方案,所以在成品上其實也算是大同小異;在正面有三個圈,最左邊的是紅外線發射器,和最右邊的紅外線接收器是一組的、用來感應深度,中間的則是 RGB 感應器,可以用來擷取一般的彩色影像。

在感應器的左右兩側的邊緣,各有一個小洞,是用來收音的麥克風(上右圖);和 Kinect 使用四個單元的麥克風陣列比起來,Xtion Pro Live 在這方面算是稍弱了一些。

基本上,Heresy 對 Xtion Pro Live 的第一個印象,是「好小」。和 Kinect 相比,Xtion Pro 不但小了整整一圈、而且也輕了不少!下面幾張照片,就是 ASUS Xtion Pro Live 和 Microsoft Kinect for Xbox360 的對比了~

   

除了大小差異很大外,另一個很大的差異,就是由於 Xtion Pro Live 沒有像 Kinect 一樣有配置可以旋轉的馬達,所以耗電量相對低了不少,也因此他只有一條標準 USB 線需要電腦、而不像 Kinect 一樣還要另外接電~這點也算是在使用上比較方便的地方了。

由於沒有馬達,所以 Xtion Pro Live 如果要調整角度的話,就必須手動了。而他基本上的設計是能夠無段式地調整上下的傾角,可動的範圍還滿大的,下面兩張圖就是往下和往上的極限。

硬體大概介紹完了,接下來是實際使用的部分了。基本上,要在 PC 上使用 Xtion Pro Live、和要使用 Kinect 差不多,都是要到 OpenNI 的下載頁面,下載 OpenNI Biinary、OpenNI Compliant Middleware Binary(NITE)來安裝;和 Kinect 不同的是,Xtion Pro Live 可以直接使用官方的 Compliant Hardware Binary、而不需要去另外使用修改過的 SensorKinect。

而在 Windows 下,抓到硬體會是名為「PrimeSense PS1080」的裝置(如右圖),只要有正確抓到,理論上就可以在 OpenNI 的環境下使用了~

不過,官方驅動程式預設是把解析度設定成為 320 x 240(QVGA)的模式,所以如果沒有在程式裡面特別做設定(設定 map output mode)的話,預設的畫面解析度都會是這個大小。而如果想要把預設解析度改掉的話,也可以透過修改「C:\Program Files\PrimeSense\Sensor\Data\GlobalDefaults.ini」這個設定檔裡面的參數,來讓預設解析度變成和 Kinect 一樣的 640×480。

而之後呢,基本上使用就都沒有什麼不一樣了~不過由於兩者的硬體配置上還是有些差異,所以畫面捕捉到的內容,也會有些不同。

像是 Xtion Pro Live 的 FOV 是水平 58°、垂直 45°,就比 Kinect 的 57°/43° 來的大一些些。另外在深度和彩色影像的對應位置關係的部分,也有些不同;下圖左邊就是 Kinect 抓到的畫面、右邊則是 Xtion Pro Live 抓到的畫面,可以發現,Kinect 的深度相較於彩色影像比較偏低、而 Xtion Pro Live 的畫面則比較靠中間。

而在抓到的深度值的分布上,Heresy 還沒做過詳細的驗證,不過大致上看來是和 Kinect 的結果(參考)差不多的~所以以得到的資料來說,除了深度的相對視角比較不一樣外,Xtion Pro Live 和 Kinect 基本上應該是沒有差異的。


接下來,來整理一下 Xtion Pro Live 和 Microsoft Kinect for Xbox 360 的優缺點吧~

首先,Heresy 覺得 Xtion Pro Live 他一個很大的優勢,就是它的體積小很多、輕很多,而且不用額外供電、只要一條 USB 線就夠了!相較於此,Kinect 其實算是有點笨重了。另外,在 Heresy 這邊使用上,感覺 Xtion Pro Live 似乎不像 Kinect 一樣,會挑 USB port;在 Heresy 的工作機上,Kinect 接在 USB 3.0 的控制器上是無法運作的,但是相對的,Xtion Pro Live 則沒有這個問題!

转自TW网友blog

而在硬體功能面,在一般開發者最常用到彩色、深度感應器的部分,兩者應該算是具備同等級的硬體(其實搞不好應該算是一樣的硬體?),所以這部分應該算是平手。

但是在聲音的部分,Kinect 的四單元麥克風陣列在規格上應該是完全獲勝的!不過目前的驅動程式,應該還是無法正確地透過 OpenNI 來取得聲音的資料的,所以雖然有比較好的硬體,但是還是沒有用…而 Kinect 的馬達也是一樣的狀況,雖然他有可以控制的硬體,但是卻沒有辦法透過軟體來控制,所以也算是相當可惜的。

不過,如果仔細看 OpenNI 的介面的話,可以發現 OpenNI 應該是有打算透過 xn::GeneralIntCapability 來做一些特殊的控制;像是現在在 xn::MapGenerator 就多了不少這類型的 capability,例如XN_CAPABILITY_ZOOM、XN_CAPABILITY_ROLL、XN_CAPABILITY_BRIGHTNESS…等等。這些功能目前都還沒有支援,不過也算是為了之後預留空間了~或許哪一天,Kinect 的驅動程式改得夠好了,就可以透過這些 capability 來做馬達的控制了!

也因此,雖然在硬體規格上,Kinect 算是比 ASUS Xtion Pro Live 來的強,可是以目前來說,實際上要在 OpenNI 使用的話,Xtion Pro Live 反而會有比較完整的功能(尤其是聲音)。而如果要發揮 Kinect 全部的功能,可能還是得放棄跨平台的 OpenNI、而改用 Microsoft Kinect for Windows SDK 了(不過授權的問題…以微軟的說法,以後可能還得重新買新的 for Windows 專用硬體才行)。

除了上面提到的比較之外,另外必須要說的,Xtion Pro / Xtion Pro Live 最大的優勢,就是他是直接由 OpenNI 來支援的,所以驅動程式的支援會是最快、最完整的!像是以往 OpenNI 推出新版、Sensor 模組有更新的時候,Kinect 的使用者都要再多等個幾天、才會有對應的驅動程式可以用,而如果是使用 ASUS 的 Xtion Pro 或 Xtion Pro Live 的話,就不會有這個空檔了~

另外,Kinect 目前在使用上,其實還是有些問題。像是現在在 OpenNI 裡使用 Kinect 時,除了 QVGA 模式似乎無法正常使用(會抓不到東西)之外,在使用 device 的 Device Identification Capability 時,也是無法正確抓到硬體的序號的;相較於此,ASUS Xtion Pro Live 就沒有這樣的問題了。

所以,結論?Heresy 是覺得,如果真的是要開發 OpenNI 的程式的話,華碩的 Xtion Pro Live 應該還是會是比較好的選擇!畢竟在支援上,是比較完整的。但是如果同時想要開發 OpenNI 和 Kinect for Windows 的程式、甚至還想玩 Xbox 360 的話,那 Kinect for Xbox 360 的通用性應該還是更高些;不過等到之後微軟更新了 Kinect for Windows 的 SDK 後…Heresy 就不確定怎麼樣了。


最後附帶一提,比較討厭的是…現階段來看,給 Kinect 用的 SensorKinect 和官方的 Sensor 模組雖然可以同時安裝,但是卻沒辦法讓 Kinect 和 Xtion Pro Live 這兩種裝置同時正確的驅動…單獨使用都沒問題,但是想要同時使用兩者的話,就掛了。

如果先裝了 Xtion Pro Live 的話,Kinect 接上去後,Kinect Camera 這個裝置就會無法正常地驅動(上左圖);而如果先接了 Kinect 的話,再接上 Xtion Pro Live,PrimeSense PS1080 這個裝置會有問題的(上右圖)…這個問題,只能希望之後有辦法修正了。

另一篇xtion、kinect选择比较(openni下)的更多相关文章

  1. ffmpeg第7篇:数据流选择神器-map指令

    自动选择规则 ffmpeg在处理视频时,如果只提供了输入和输出参数,ffmpeg会自动地去选择相应的视频流和音频流来合成文件 自动选择的方式根据如下规则: 视频流:选分辨率最高的,比如有两个视频,一个 ...

  2. python3 selenium 随机选择同一类型下的某一个元素

    使用场景: 如上图所示,有时候,我们测试的时候,不会每个方向都选择一遍,也不能每次都选择一个方向,这个时候就需要每次运行用例的时候,随机选择一个方向来测试 使用方法: random.randint() ...

  3. ssh 公钥 下载选择的时候 下拉选择 ssh 然后 git clone

    ssh 公钥 下载选择的时候 下拉选择 ssh 然后 git clone

  4. v80.01 鸿蒙内核源码分析(内核态锁篇) | 如何实现快锁Futex(下) | 百篇博客分析OpenHarmony源码

    百篇博客分析|本篇为:(内核态锁篇) | 如何实现快锁Futex(下) 进程通讯相关篇为: v26.08 鸿蒙内核源码分析(自旋锁) | 当立贞节牌坊的好同志 v27.05 鸿蒙内核源码分析(互斥锁) ...

  5. Django基础篇之数据库选择及相关操作

    在djanjo框架中我们最常用的框架分别就是mysql和sqlit了,下面我们将分别讲述一下这俩种数据库的基础必备知识 mysql 一.利用命令创建(在终端上执行) 1.首先创建一个project项目 ...

  6. Cesium应用篇:2影像服务(下)

    文章中相关范例下载路径:https://yunpan.cn/cByQqkANWN7Pu 访问密码 823d 上篇主要介绍了Cesium自带的影像Provider ,在本篇中,我们主要涉及到如何扩展这些 ...

  7. hbase源码系列(十五)终结篇&Scan续集-->如何查询出来下一个KeyValue

    这是这个系列的最后一篇了,实在没精力写了,本来还想写一下hbck的,这个东西很常用,当hbase的Meta表出现错误的时候,它能够帮助我们进行修复,无奈看到3000多行的代码时,退却了,原谅我这点自私 ...

  8. Kinect 开发 —— 语音识别(下)

    使用定向麦克风进行波束追踪 (Beam Tracking for a Directional Microphone) 可以使用这4个麦克风来模拟定向麦克风产生的效果,这个过程称之为波束追踪(beam ...

  9. html点击按钮 弹出 多选择窗口级联下拉复选

    参考代码 代码示例1: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http:/ ...

随机推荐

  1. POI转换word doc文件为(html,xml,txt)

    在POI中还存在有针对于word doc文件进行格式转换的功能.我们可以将word的内容转换为对应的Html文件,也可以把它转换为底层用来描述doc文档的xml文件,还可以把它转换为底层用来描述doc ...

  2. graphviz layer 教程(非布局)

    官方 pdf 上讲解的很少,没有图片. http://www.graphviz.org/wiki/how-use-drawing-layers-overlays 这里有图片,但是又没有说如何生成. 直 ...

  3. Java多线程大合集

    1) 什么是线程? 线程是操作系统能够进行运算调度的最小单位,它被包含在进程之中,是进程中的实际运作单位.程序员可以通过它进行多处理器编程,你可以使用多线程对运算密集型任务提速.比如,如果一个线程完成 ...

  4. mysql查询数据包太大:max_allowed_packet

    查询大小: show variables like '%max_allowed_packet%'; 修改大小: set global max_allowed_packet = 1024 * 1024 ...

  5. Python可变与不可变类型及垃圾回收机制

    1. 可变与不可变类型 1.1  可变类型 在id不变的情况下,value可以改变,则称之为可变类型.列表.字典与集合是可变的. l1 = [,,,,] print(id(l1)) l1[] = #改 ...

  6. 解决windows管理员已阻止你运行此应用问题

    按WIN+R键,打开“运行”,然后输入“gpedit.msc",就是打开组策略,这个在控制面板中也可以打开. 在组策略里找到“计算机配置”-“Windows设置”-“安全设置”-“本地策略” ...

  7. JavaScript正则表达式-或字符

    或字符是一个单竖线“|”,表示字符串只要匹配“|”连接的多个表达式中的任意一个. /ab|ac|bc/表示字符串匹配ab,或者匹配ac,或者bc

  8. PAT Basic 1045

    1045 快速排序 著名的快速排序算法里有一个经典的划分过程:我们通常采用某种方法取一个元素作为主元,通过交换,把比主元小的元素放到它的左边,比主元大的元素放到它的右边. 给定划分后的 N 个互不相同 ...

  9. git 打补丁,即git review之后需要二次修改并提交代码

    假如代码已经push上去了,可是当review时,发现有地方需要修改,你可以继续在本地修改你的文件,之后git status查看修改的文件,然后git add修改的文件,此时不能直接git commi ...

  10. Python 输出命令行进度条

    在使用 pip 安装时,你会发现有下载进度条,我们也可以借助开源的第三方库来实现这个功能,在项目输出时增加一些可视化效果. 一个简单易用的第三方库是:progress 作者提供了动图很直观地展现了实现 ...