之前在任天堂推出這一代的遊戲主機 Wii 的時候,他的 Wii Remote 體感操作把手,可以說是造成了大轟動!不但徹底顛覆了遊戲的操作方式,帶入了更進一步的互動機制外,Wii Remote 也由於可以輕易地透過藍芽和電腦連結、接收訊號,所以也出現了相當多利用 Wii Remote 裡面的感應器,來做到各種互動操作的衍生應用。
而之後呢?雖然還有 Wii Fit、PS3 Move 等等其他的體感操作裝置,但是在 Heresy 來看,都不算多有突破。真正有突破性的,應該還是要屬微軟為自己的 XBox 360 追加的 Kinect(官方網站)了!
Kinect 基本上就是右圖中的裝置,他有什麼特色呢?他基本上就是一個攝影機、再加上麥克風,而另外,再加上一組深度感應器!(另外在底座還有一個馬達,可以在必要時左右選轉攝影機的角度)
而下圖就是他的架構(圖片來源:PrimeSense):
它的深度感應技術,基本上是採用 PrimeSense 這家公司的紅外線系統,由一個紅外線訊號發射器發射加上了標記的紅外線、讓整個場景中都充滿這些不同的標記,接著再由一個紅外線攝影機把資料抓回來,藉此分析出場景的深度。詳細的原理和硬體設計,Heresy 在此不打算多提,有興趣的人可以參考 T 客邦的《身體就是控制器,微軟Kinect是怎麼做到的?》和《Kinect 也逃不過被 ifixit 拆解的命運》這兩篇文章。
有深度有什麼用?聽起來好像沒什麼,不過實際上,以往的攝影機都只能擷取到平面的資料,也因此要在畫面中抓到人、並分析人的姿勢,是相對困難、而且很容易有錯的。而有了深度的資訊後,某種程度上就相當於有了空間中的 3D 資訊,可以做的事也就更多了!基本上,由於有了深度的資訊,在畫面中的人和東西,都可以更容易地區分出來,同時可以更簡單、準確地判斷出他們在空間中的相對位置;再進一步,要判斷出人的姿勢,也就更為簡單的了!
也因此,微軟的 Kinect 就是主打:丟下你的遊戲把手,直接用你本身的動作,來進行遊戲吧!像下面的影片,就是微軟宣傳 Kinect 遊戲的影片:
看起來不錯吧?Heresy 自己也曾經在賣場稍微玩過一下,雖然在判斷的精準度上應該還有改善的空間,但是感覺的確是一個比 Wii 更有趣的遊戲方式了!而在 AnandTech,也有一篇《Microsoft Kinect: The AnandTech Review》,是在評論這套系統的,有興趣的話,可以參考看看(不過是英文就是了)。
不過,基本上 Heresy 自己的理念是不買家用遊戲主機的,所以其實這倒是其次。Heresy 對於 Kinect,看上的是它可以接到電腦上,來做其他方面的應用!因為他既然可以抓到深度資訊了,理論上不管是整個人,還是手部的動作,都有更多的變化,可以更直接地輸進電腦裡了∼
實際上,在正式上市前,根據各種資料,就知道它其實走的訊號就是一般的 USB,所以很自然地就覺得應該會可以接到電腦上使用;而果不其然,在上市沒幾天後,就已經有各式各樣的方法,可以把 Kinect 接到電腦上使用(例如:libfreenect,或是 OpenNI SensorKinect )。
而當然了,各式各樣有趣的應用,也就如雨後春筍般冒出來了∼這邊就來列幾個 Heresy 覺得比較有趣的例子吧∼
MIT CSAIL 的非接觸式多點操作介面
這個算是 Heresy 這邊應該會做的東西了∼基本上,就是去抓到人的手,進而透過直覺的手勢、動作,來做操作。這點在立體、虛擬實際的環境裡,應該會是相當有實用價值的!
原文為《CSAIL Brings ‘Minority Report’ Technology Alive》,也可以參考《用 Kinect 做關鍵報告,好像沒那麼難》,裡面有不少其他類似應用的介紹。
 
自動駕駛設備
可以參考《Kinect,最新一代的直升機障礙迴避雷達?》和《Kinect gets own set of wheels, drives a car, nothing can stop it now (video)》這兩篇文章。這樣的應用,主要就是透過它的深度感應器來判斷障礙物,進一步來進行自動操作的判斷了∼
 
遊戲輸入設備
這類的應用目的,其實應該就算是比較單純的由 XBox 360 的遊戲來延伸了。其中,比較有趣的,大概就是用來玩瑪莉兄弟和色情遊戲吧(笑)。有興趣的人,可以參考《Kinect 最神奇之應用:超級瑪利!》和《Kinect 轉大人啦!》這兩篇文章。
 
動作捕捉(Motion Capture)
這部分主要是看到有人用 Kinect 來讓初音跳舞而想到的(介紹可以參考《日本玩家用 Kinect 扮 初音未來 跳舞》,Heresy 之後應該會針對這個寫些東西),他的影片如下:
基本上,MikuMikuDance 這套軟體是用來讓初音跳舞、產生影片用的。但是傳統的動作編輯方式,其實相當地繁瑣、麻煩,而專業的動作捕捉設備一般人基本上也不可能有;所以搭配了 Kinect 的動作判斷後,基本上就可以簡單地產生動作、並且錄製下來了!Heresy 個人是相信,這樣的概念其實還有很多地方,都會有用的∼(其實,之後工作上搞不好就得要用了…)
 
3D 模型重建(3D Model Reconstruction)
這種概念的基本發想,應該是基於 Kinect 同時有彩色影像,和深度資訊了∼實際上,在某種程度上,有了對應的這兩種資料,其實的確是可以在某種程度上,完整地建構出場景裡的 3D 環境模型了!像在《有了Kinect,你也可以在家自己拍3D影片》和《Two Kinects join forces to make 3D telepresence, enable virtual light saber battles (video)》兩篇文章內的應用,其實都是類似這樣的想法。
他們除了像上面提到的,有去抓人本身的動作外,更進一步的,他們還可以把自己的真實影像,也帶入到虛擬的廠警了∼像下面這段影片,就是透過兩台 Kinect,和 3D 電視,來做到更擬真的遠距虛擬會議效果∼和一般的視訊會議不同的是,這樣的架構下,還可以在不動到設備位置的情況下,自由地控制視角,看到自己想看的角度!
當然,在這影片裡可以看到,其時不管是精細度或是準確性,都還有改善的空間,但是這的確會是個有趣的概念∼
而另外這樣的概念,就是把自己帶到遊戲裡了∼像下面影片裡的這兩位老兄,就是把自己放到虛擬環境裡,玩起光劍大戰和 ooxx 了∼
 
基本上,Heresy 個人是這樣想的。其實不管是當初的 Wii Remote 或是現在的 Kinect,其實單就技術原理面來說,都不是什麼新東西。像是 Wii Remote 的加速度感應器、陀螺儀等等,其實在很久以前的 VR 裝置就有在用了,任天堂絕對不是第一個做出來的;但是任天堂做的,則是成功地把它普及化,讓大家可以用便宜的價格、方便地買到一個這樣個感應裝置。
同樣的,微軟的 Kinect 也是類似的狀況。深度感應器其實一直都有人在用,但是這種東西基本上 Heresy 連要到哪買都不曉得了,更不用說這類的東西不但價位不便宜,而且開發工具也相對少了…所以 Kinect 的上市,真的是一個取得深度攝影機的便宜解決方案!他的解析度或許不夠,但是相對的,它的價位低廉、容易取得,再加上由於不少社群也已經投入這一塊進行開發,所以相關資料會相對地多;這幾點對於 Heresy 這類非專業的使用者來說,真的是一個福音啊!
像是以 motion capture 來說,一套完整的設備基本上價位都是破十萬以上的,這點對於一般人來說,覺得是不可能負擔的;但是如果使用 Kinect 的話,雖然精確度是不夠,但是對於業餘用戶、或是只是偶爾想玩看看的話,就可以用相當低廉的價錢,就可以獲得初步的成果了!而在 3D 模型重建的部分,也是類似的狀況的。
Heresy 目前手邊已經有一台 Kinect 了(沒有 XBox 360…),而今天花了一個下午,也成功地可以用 MikuMiku Dance 來跳舞了∼接下來,應該就是看看明年有沒有時間,來認真地看看要怎麼用它了。
MIT CSAIL 的非接觸式多點操作介面這介面就可以取代現在的滑鼠吧,但要如那影片的demo那樣的設定而不使用libfreenect,openNI中有這套功能嗎?感覺很困難呢 @@”
雖然沒認真研究過,但是 libfreenect 應該也沒有提供這麼多功能,讀取資料以外的功能,基本上應該都是要額外處理的(或是找額外的函式庫)。