如何比較市面上不同體感識別設備之間的優劣?

目前做一個project(北美,學校里的research project),需要進行精度較高的手勢跟蹤與識別。經過調研發現Intel RealSense和Kinect都還OK,似乎前者的精度更好,且SDK直接提供精細到手指的跟蹤借口,但是面世時間沒有Kinect長,社區和文檔可能沒有Kinect完善。LeapMotion貌似比較精確,但可用範圍較低。

請有體驗過的相關從業人員給一個體驗的比較。


好幾個月前挖的坑自己填上……當時需要做一個Gesture Recognition的項目,所以提了這個問題。現在項目的原型算是出來了,選擇了LeapMotion,可以稍微說一下原因。

首先說一下項目需求。我們希望提供一個用戶友好的手勢識別介面,可以讓劇場演員通過在舞台上的手勢控制四旋翼直升飛機為演出提供特殊效果從而提供更美妙的沉浸式體驗(腦洞超大對不對……)。這要求

  1. 識別必須精確到手指
  2. 必須能夠讓做手勢的人有隨便移動的自由。

第二點要求非常重要。如果不能直接在舞台四周都放一堆攝像頭的話,那就只能做成可穿戴式設備讓演員帶著走了。

接下來是正文。我們調研的對象分別是LeapMotion, Kinect和Intel RealSense 3D。直接一個個分析:

LeapMotion

Pros:

  1. 在識別範圍之內的準確度和精度都很高,能夠直接提供手指的位置、速度等非常精細的信息
  2. 面世時間較長,相關資源相當成熟(文檔、社區、stackoverflow),在很多不同系統上都有驅動(我主要指非主流操作系統,比如樹莓派)
  3. 足夠小巧,可以被打造成wearable device

Cons:

  1. 識別範圍太小……只能在感應器上方大概半米多的範圍內移動手。
  2. 如果把手背朝下就基本無法識別(LeapMotion永遠假設手心朝向感應器)

Kinect

Pros

  1. 提供整個人體的tracking,也能比較好地支持多人tracking。追蹤範圍較廣,一兩米的距離完全沒有問題。
  2. 提供完善的配套軟體,可以用於自己定製手勢/姿勢。

Cons

  1. 最細粒度只能支持整個手掌的追蹤。想追蹤手指必須使用第三方庫……沒有試驗不知道靠不靠譜
  2. 對機器有特別的要求……必須用USB 3.0介面。可想而知,如果想做成可穿戴設備的話只能背著一個筆記本周圍走了

Intel RealSense

Pros

  1. 識別精度可以和Kinect媲美,而且貌似官方SDK能直接給出手指的追蹤

Cons

  1. 相對比較新,文檔可能不是很全
  2. 獨立的攝像頭貌似在市面上不存在,都是和筆記本綁定賣的……現在Amazon上有賣的是上一代產品,買了試用後發現被坑了……
  3. 對機器要求也很挑剔……

綜上所述,為了滿足前面的的要求,我們就選擇了LeapMotion。具體設備的選擇和需要場景密切相關。我們項目組都覺得LeapMotion是老一代產品了可能命不久矣,並不代表未來方向,但它就是比較契合我們的需求,所以就選了。

其實,感覺Hololen才是王道呢……可惜還沒出……


市售體感設備橫評:微軟、Intel、蘋果、LeapMotion 哪家強! - 黑客與畫家 - 知乎專欄


最近任職的公司正在進行對應方向的開發,雖然不是主要的客戶端開發人員,但是對於體感的眾多設備也算是有了些體驗,並且正在這個方向上不停的探索。

——————————————————————————————————

Kinect:(使用過一代開發,二代體驗)

首先說一下這個微軟已經放棄的設備。

先說一下這個設備的結論,這是一條死路,但是也是路上坑最少的一條路。

整個社區趨於成熟,設備成本不高,開發成本不高,二代要強於一代太多,設備能穩定供貨。並且提供了太多有用的SDK和demo。

但是!設備體積太大,限制非常高,並沒有手部關節的檢測功能,發熱量大,用於PC端開發的話需要一個幾百塊的轉介面,順便誰能告訴我為什麼在Unity裡面使用Kinect和VR會佔用過高的CPU而導致卡頓體驗超級差呢?

但是,假如想要檢測全身的關節動作的話,Kinect是你最好也是唯一的選擇。

LeapMotion:(桌子上還放了兩個)

這是一個坑。

整個技術完完全全就是一個坑,技術根本就是不成熟的,只不過是demo看起來很美罷了。玩一段時間就會手酸死好嗎?有的時候手酸死也是不能檢測正確的好嗎?不過說真,做一兩個demo去忽悠人還是不錯的,畢竟賣相不錯,現在還炒雞便宜(淘寶上&<100rmb),買一個來玩玩不錯(~ ̄▽ ̄)~

RealSense:(柜子里SR300和R200)

已經踩了無數個坑但是現在還沒有放棄。

Intel的產品,原理其實和一代的Kinect差不多,採用紅外結構光投影,理論上來說, realsense 應當可以比kinect 的空間解析度高,穩定,幀頻會低。實際上對於有些應用的場合而言,是不錯的選擇。

但是,它對手掌的檢測甚至是不如LeapMotion精度高!對於單一關節的檢測還可以接受,唯一不錯的地方在於其的臉部建模與面部跟蹤一些和openCV有關的部分。

順便說一句,它的SDK……為什麼根本沒實現的部分要在SDK裡面寫出來呢?(╯‵□′)╯︵┻━┻

總之,產品不夠成熟,並且開發者不夠多,社區也只有Intel自己的論壇。

——————————————————————————————————

對於開發:K&>LM&>RS

對於玩:LM&>K&>RS


一個好的體感識別設備市場化需要攻克四個大關:價格是否經濟實惠、性能是否優良、外觀大小是否合適、功耗是否夠低。

價格是否經濟實惠涉及到成本問題,一般情況下,採用結構光演算法的成本比TOF低,大部分體感設備會採用這種方法,比如kinect一代、prime sense、華捷艾米的IMI體感攝像頭。

性能是否優良就涉及到反應靈敏度的問題,一般來說包含骨架識別演算法的體感攝像頭靈敏度高,採用骨架識別演算法需要企業有強大的財力和物力支持,華捷艾米公司在訓練可以用於骨架識別的模型時,使用了上百萬張深度圖,測試時使用了上萬張手動標記過的深度圖,正是這些數據,成為了巨大的技術分水嶺,將華捷艾米公司與「偽體感」技術公司區分開來。

至於外觀大小是否合適和功耗是否夠低,就涉及到演算法問題,演算法量大,晶元自然就不小,功耗也降不下來。


Kinect幾乎都已經成業界標準了,開發起來難度低,你要是項目的出貨量大的話,還是考慮Kinect吧。假定客戶讓你部署1000台,你採用intel的方案,那你去哪裡找那麼多貨呢,做項目,不要僅僅只考慮技術的因素哦。


剛收到RealSense F200和R200,看了一些社區的網文,好像realsense和kinect1代的技術比較接近,採用結構光的原理,Kinect v2是FOC。但是網上對兩種方法好壞沒有定論。

從sdk提供例子看上去,Kinect v2深度圖質量要好些。但是從API看,感覺RealSense好很多,最近的2015R5版本的sdk,提供了沒根手指的跟蹤,以及人臉人眼的跟蹤。另外從體積、單獨usb3供電上看,RealSense要好一些。

LeapMotion手上也有一隻,但是因為跟項目關係不大,就沒深入研究。

建議選型的時候,把SDK文檔下載下來,看提供哪些API可用。


Kincet 體積太大啊!!!Realsense硬體要求又太高。期待國產的產品趕快出來哦!!!


推薦閱讀:

微軟也靠收購DOS起家,那為什麼國產OS廠商為什麼還是沒有成功者?
為什麼微軟Xbox One的手柄右側上的按鍵和世嘉的Dreamcast一樣都是ABXY?
對於w8.1磁碟100%,你有哪些乾貨妙方?
如何評價遊戲《戰爭機器》(Gears of War)系列?
offer比較:蘇州微軟和杭州滴滴的offer如何選擇?

TAG:微軟Microsoft | Kinect | 英特爾Intel | 體感技術 |