身體就是控制器,微軟Kinect是怎麼做到的?

身體就是控制器,微軟Kinect是怎麼做到的?

這次E3展中,三大遊戲主機中的Microsoft和Sony終於都正式推出了體感裝置,最令人驚艷的莫過於不需要任何控制器的Kinect,之前我們票選的「三大遊戲新星你選哪一個?」也印證了這一點。最令人好奇的是,Kinect到底如何偵測全身體感?搭載了什麼特殊功能?各個鏡頭的用途是什麼?

大家應該都知道Kinect是靠攝影機鏡頭捕捉使用者的動作,但對於細節或許不是很清楚,近日隨著國外遊戲網站play.com公佈了Kinect的詳細規格,也讓我們可以間接了解更多細節。

先由Kinect的運作原理開始吧,Kinect一次可擷取三種東西,分別是彩色影像、3D深度影像、以及聲音訊號。首先是Kinect機身上有3顆鏡頭,中間的鏡頭是一般常見的RGB彩色攝影機,左右兩邊鏡頭則分別為紅外線發射器和紅外線CMOS攝影機所構成的3D深度感應器,Kinect主要就是靠3D深度感應器偵測玩家的動作。

中間視訊鏡頭則是用來辨識玩家身分(靠著人臉辨識和身體特徵)、以及辨識基本的臉部表情,此外也能應用在擴增實境遊戲、以及視訊通話時;同時Kinect還搭配了追焦技術,底座馬達會隨著對焦物體移動跟著轉動。

都用上了不用遙控器的體感裝置,哪裡還要玩家頭上掛個耳麥的道理,因此Kinect也內建了麥克風系統,用的還是陣列式麥克風。它的好處是藉由多組麥克風同時收音,比對後消除掉雜音,等於提供了降噪功能,讓玩家的聲音能更清楚的傳遞出去。

身體就是控制器,微軟Kinect是怎麼做到的?

▲Kinect中間的鏡頭是攝影機、左右兩顆鏡頭則是3D深度感應器;同時具有追焦功能,底座馬達可左右旋轉27度。此外還有陣列式麥克風。(圖片來源:Games Blog

身體就是控制器,微軟Kinect是怎麼做到的?

▲Kinect可同時獲取彩色影像、3D深度影像、以及聲音訊號(引用PrimeSensor解說圖)。(圖片來源:PrimeSense

身體就是控制器,微軟Kinect是怎麼做到的?

▲Kinect的架構圖(引用PrimeSensor解說圖)。(圖片來源:PrimeSense

使用這麼新穎的偵測技術,Kinect是用了什麼特殊規格的設備?事實上並沒有我們想的那麼特別,從規格表裡看到的,都是相當普通的內容,例如視訊攝影機的影像規格為640×480 30FPS、紅外線攝影機則為320×240 30FPS,關鍵其實是在Kinect所使用的偵測技術。也因為如此,Kinect才能開出149.99美元的售價,而不是買不起的天價。

Kinect到底怎麼偵測3D影像?

關於Kinect所使用的辨識技術,網路上有許多以訛傳訛的說法。例如用兩顆攝影鏡頭拍攝成3D影像、並以紅外線探測Z軸深度做感應;也有許多人以為Kinect是利用紅外線紀錄體溫的方式,來找出人體的影像,這些當然都不是正確答案。

微軟在去年(2009年)初收購了一家以色列籍的3DV Systems公司(來源:reuters),包含公司員工以及所有專利技術都歸微軟所有。該公司擁有名為ZCam的動作感測系統,採用TOF(Time of Flight)技術,讓許多人認為Project Natal誕生計畫(Kinect前身)就是採用TOF技術,但......最後證實大家還是猜錯了。

這裡簡單介紹一下TOF技術,大家應該可以從字面猜到含意,Time of Flight就是去計算光線飛行的時間。首先讓裝置發出脈衝光,並且在發射處接收目標物的反射光,藉由測量時間差算出目標物的距離;ZCam就是使用TOF技術,使用紅外線以及Accelerometers加速度計感應器,感測立體空間的相對位置變化,建構灰階距離影像的深度感應器。3DV Systems公司研發該技術已經長達10年,並取得許多專利技術,所以受到了微軟的矚目。

不過就在今年(2010年)年初時,微軟的開發人員卻大爆Project Natal誕生計畫並不是如外界傳言採用3DV Systems公司的TOF技術(來源:engadget)。微軟先進技術研究院副總裁Moshe Lichtman,於去年接受媒體訪問時,就表示併購3DV Systems公司目的不在於使用他們的技術,而是作為保障自家感測技術的後盾。因為專利技術認定上有時較為模糊,稍有不慎就會被對手告侵犯專利權;3DV Systems擁有許多相關專利,因此藉由併購3DV Systems快速取得專利,也能避免被其他對手併購,阻撓微軟的產品研發。

身體就是控制器,微軟Kinect是怎麼做到的?

▲關於Kinect偵測方式網路上眾說云云,其實它與PrimeSense合作採用Light Coding技術。

微軟在今年4月時,正式公佈與另一家以色列公司PrimeSense合作(來源:gossipgamers),這下才讓Kinect使用的3D偵測技術有了著落。他們也是提供動作感測系統的公司,擁有體感偵測裝置PrimeSensor,以及感測晶片PS1080。PrimeSense用的並不是採用3DV Systems的TOF技術、而是Light Coding技術。

Light Coding技術理論是利用連續光(近紅外線)對測量空間進行編碼,經感應器讀取編碼的光線,交由晶片運算進行解碼後,產生成一張具有深度的圖像。Light Coding技術的關鍵是Laser Speckle雷射光散斑,當雷射光照射到粗糙物體、或是穿透毛玻璃後,會形成隨機的反射斑點,稱之為散斑。散斑具有高度隨機性,也會隨著距離而變換圖案,空間中任何兩處的散斑都會是不同的圖案,等於是將整個空間加上了標記,所以任何物體進入該空間、以及移動時,都可確切紀錄物體的位置。Light Coding發出雷射光對測量空間進行編碼,就是指產生散斑。

Kinect就是以紅外線發出人眼看不見的class 1雷射光,透過鏡頭前的diffuser(光柵、擴散片)將雷射光均勻分佈投射在測量空間中,再透過紅外線攝影機記錄下空間中的每個散斑,擷取原始資料後,再透過晶片計算成具有3D深度的圖像。

身體就是控制器,微軟Kinect是怎麼做到的?

▲Light Coding是以發射紅外線產生散斑,透過感應器紀錄訊號後,交由晶片運算出深度圖像。(圖片來源:PrimeSense

PrimeSence公司用的Light Coding技術,說穿了與微軟先前買下3DV公司所使用的TOF技術根本就毫不相關,只是產生的結果類似。這點更加印證了微軟收購3DV Systems,只是為了動作感測相關的專利權、取得領先地位。

由於微軟並沒有買斷PrimeSense公司的技術,因此PrimeSensor裝置未來也有可能出現在電視、電腦等消費性產品上,例如CyberLink訊連科技也與PrimsSense合作開發3D互動體驗介面(來源:PrimeSense)。面對將來有可能出現同質性產品,微軟則是強調Kinect的追焦旋轉功能是他們的專利,這點別人不能模仿。

▲PrimeSence公司展示應用Light Coding技術的體感偵測系統。該技術並未被微軟買斷,未來將有機會應用在其他裝置上。

另一關鍵:骨架追蹤系統

了解Kinect如何獲得影像後,接下來就是進行辨識的工作。透過Light Coding技術所獲得的只是基本的影像資料,重點還是要辨識影像,轉換為動作指令。據說Prime Sense公司並沒有提供辨識技術,所以辨識部份得靠微軟自己搞定。

微軟會將偵測到的3D深度圖像,轉換到骨架追蹤系統。該系統最多可同時偵測到6個人,包含同時辨識2個人的動作;每個人共可記錄20組細節,包含軀幹、四肢以及手指等都是追蹤的範圍,達成全身體感操作。為了看懂使用者的動作,微軟也用上機器學習技術(machine learning),建立出龐大的圖像資料庫,形成智慧辨識能力,盡可能理解使用者的肢體動作所代表的涵義。

Kinect偵測的最佳距離為1.2公尺到3.5公尺間,水平視野則是57度,偵測範圍似乎比原本想像的還要小,看來還是不能站的太隨意;Kinec也配備了追焦系統,如果玩家超出影像範圍,底座馬達可驅動Kinect左右旋轉27度。整體看來Kinect對操作空間的限制,似乎比其他體感裝置更嚴格些。

身體就是控制器,微軟Kinect是怎麼做到的?

▲Prime Sense公司似乎只提供影像偵測,後面的辨識技術還是靠微軟自己來。(圖片來源:PrimeSense

身體就是控制器,微軟Kinect是怎麼做到的?

▲Kinect一次可追蹤2人的動態,每人能追蹤高達20組細節。(圖片來源:Gamespot

延遲讓Kinect不精準?

由於Kinect攝影機的影像更新頻率為30FPS,代表動作傳遞將會有33ms(1/30秒)的延遲,CrunchGear也在文中質疑這會不會造成動作偵測上的延遲,為何不使用60FPS以上的錄影規格拍攝?這其實是PrimeSense公司提供的處理晶片能耐,它就只能處理VGA畫質、30FPS的影像。

30FPS影像更新頻率造成的延遲應該有限,因為人類對事物的反應速度幾乎都超過100ms,已經大於30FPS所帶來的33ms延遲,所以該怪的應該是你的反應太慢吧。比起偵測延遲,更該擔心的是辨識需要的時間、以及辨識的精準度。由於Kinect是透過辨識圖像再轉化為指令的方式,大量的影像處理、以及事後的辨識動作,恐怕才是讓Kinect使用者感受到延遲的原因。聽說支援Kinect的遊戲都有針對延遲做最佳化,盡可能讓使用者減少延遲的感受。

身體就是控制器,微軟Kinect是怎麼做到的?

▲影像更新頻率並不是Kinect延遲的主因,反倒是晶片處理速度、軟體辨識的影響比較大。(圖片來源:Gamespot

另外一點備受質疑的,就是在精準度方面的問題,國外調查Kinect的判斷精準度為4mm,的確是輸給了PlayStation Move的1mm。但論精準度,可能每種體感裝置都還比不上實體搖桿。但Kinect帶來的全身體感優勢,所能做的事情鐵定比PlayStation Move和Wii多更多,例如Ubisoft推出的健身遊戲《Your Shape Fitness Evolved》,類似Wii平台上的《Wii Fit》,但是透過骨架追蹤系統來玩瑜珈、武術等遊戲時,對姿勢的要求絕對高於Wii Remote+Wii Fit;舞蹈遊戲《Dance Central》也是相同的道理。

身體就是控制器,微軟Kinect是怎麼做到的?

▲雖然Kinect在精準度上遭受到質疑,但全身體感的優勢大幅超越Wii和PlayStation Move。圖為遊戲《Your Shape Fitness Evolved》畫面。(圖片來源:Gamespot

身體就是控制器,微軟Kinect是怎麼做到的?

▲Kinect對姿勢的要求上,鐵定會比對手們來的嚴格許多,躺在沙發上玩體感遊戲這種事就別想了。圖為遊戲《Dance Central》畫面。(圖片來源:joystiq

Kinect規格表:

感應器:

  • 彩色和深度感應鏡頭
  • 陣列式麥克風
  • 輔助感應傾斜驅動馬達
  • 完全相容所有的Xbox 360裝置

視野角度:

  • 水平視野:57度
  • 垂直視野:43度
  • 實體傾斜範圍:± 27度
  • 深度感應器範圍:1.2m – 3.5m

資料串流:

  • 深度感應器:320×240 16-bit @ 30 frames/sec
  • 彩色攝影機:640×480 32-bit @ 30 frames/sec
  • 聲音規格:16-bit @ 16 kHz

骨架追蹤系統:

  • 同時辨識6人,包含2人的動作追蹤
  • 每人能追蹤20個點
  • 能讓Xbox LIVE Avatars虛擬人物與使用者動作同步

聲音系統:

  • 支援遊戲語音交談以及XBOX Live派對語音交談,需要金會員
  • 具回音消除功能的聲音輸入
  • 支援多國語言

延伸閱讀:

微軟Kinect,我的身體就是控制器

小編不怕苦!微軟Kinect全身體感實際體驗 

Kinect 11月20到台灣,包你買得到

Kinect 也逃不過被 ifixit 拆解的命運

 

資料來源:PrimeSenseimage sensors worldJoystiqPixel Well

氣象部落客勞倫斯
作者

有一個都市傳說,只要勞倫斯猴買了新東西,就會下雨。

使用 Facebook 留言
165ea3ff5f4d177a6c7c37ce71560d49?size=48&default=wavatar
1.  Raven (發表於 2010年7月06日 17:53)
Kinect拿來玩格鬥遊戲應該會出現很多好玩的狀況
D6914e46a5eaeecbba63e640673069b5?size=48&default=wavatar
2.  給你100分 (發表於 2010年7月06日 21:48)
好有意義的文章
好詳盡的內容
好新奇的技術
好有清晰的解說
國內的編輯竟然能在一般性的報導中,收集這麼多資料並且完整的解說,真是很了不起
沒想到這樣先進t的技術,在商業市場上竟然是率先用給電玩用
A62f18d0f1eb254b27125c233faedd72?size=48&default=wavatar
3.  sonin (發表於 2010年7月07日 04:14)
沒辦法阿...新技術不是先給軍事就是先給遊戲阿
玩格鬥遊戲...雙人場外真人PK?
還好Kinect沒有遙控器不然像PlayStation Move應該還是會瞄準電視射出巴
E3403e47d69951e71dff66fb7cd68d7f?size=48&default=wavatar
4.  kk (發表於 2010年7月07日 21:11)
如果kincet 接受度起來有市場
相信解決延遲只是遲早得是,個人相信那種東西用錢砸的出來的科技,而是如果微軟不可慮成本相信會跟接近1:1
但相對你要買得起
0c1a5ca5f2449fd422ae5aaffd9772cc?size=48&default=wavatar
5.  qq (發表於 2010年7月13日 16:31)
不好意思,想請問版主 kinect 用了幾顆紅外線雷射光
1b04756e450bacc71b323c914674a0bd?size=48&default=wavatar
9.  yy (發表於 2010年7月22日 17:23)
請問版主是否知道 新鉅科是負責哪幾顆鏡頭呢?很多報導都說他們負責兩顆
若是兩顆 有是哪兩顆呢
謝謝~
Fafabae023c1cb043fc745efbc0a1c16?size=48&default=wavatar
10.  lorenz (發表於 2010年8月27日 08:09)
請問版主大大知道現在哪裡可以買到嗎?能否用在一般PC上使用呢?太佩服你了!能找到這麼詳細的資料
Ecdfab1a8aa5115f6e77d3af6b941aa3?size=48&default=wavatar
12.  陈宏兼 (發表於 2010年9月14日 14:54)
{想請問版主 kinect }Kinect拿來玩online game会如何。
fauzty
13.  fauzty (發表於 2010年11月13日 23:53)
149.99 已經是天價了吧,畢竟相似功能,對手的售價是直接把前面的1去掉。╮(╯_╰)╭
245f3d3c434f954aa26838e4f0e0f574?size=48&default=wavatar
1人給推

14.  qq (發表於 2010年11月24日 12:19)
1.Kinect目前只是面scan, 而必需等明後年第二代Kinect才具有真3D且模擬作戰
2.Kinect能辨識黑人玩家嗎?好像有問題
3.但家中亮度低到某程度, Kinect可能告訴你無法辨識且FPS會下降
4.MS XBOX team有沒有告訴大伙,要在什麼色温及Lux下才能玩Kinect?
路人假
16.  路人假 (發表於 2010年11月29日 15:39)
※ 引述《qq》的留言:
> 2.Kinect能辨識黑人玩家嗎?好像有問題

可以告微軟歧視黑人嗎(≧▽≦)
95852af9e3defd11b73208d47bac6e86?size=48&default=wavatar
17.  Diego (發表於 2011年5月22日 23:14)
你好,你的文章整理得非常詳細
其中一個段落能夠轉載到我的部落格嗎,我會附上引用來源的
LIS
18.  LIS (發表於 2011年5月23日 06:55)
※ 引述《Diego》的留言:
> 你好,你的文章整理得非常詳細
> 其中一個段落能夠轉載到我的部落格嗎,我會附上引用來源的
>
Deigo 你好
基本上我們並不排斥引用或轉載,不過有幾個原則,1、不做全文引用,2、注明出處,3、不要改變作者名稱,讓貴站的訪客和T客邦可以互相導流。轉載完成後麻煩留言知會我們一聲,並留下轉載的連結即可。
455b23ae3c88291c303402b7a9cbe988?size=48&default=wavatar
19.  fox (發表於 2011年6月13日 21:25)
你好,你的文章整理得非常詳細
能夠用於我的報告嗎,我會附上引用來源的
發表回應
謹慎發言,尊重彼此。按此展開留言規則