多點「不觸」控 : Leap Motion 開箱文

leapmotion

圖片來源:IMdb

相信<關鍵報告>裡,湯姆克魯斯使用手指控制螢幕的畫面,讓許多人印象深刻。但在今天看來,任何人都可以透過 Leap Motion 做到。

Leap Motion 是一個隨身碟大小、能讓使用者跟電腦溝通的硬體。聲稱比滑鼠準確、比鍵盤可靠,而且使用的流暢度更甚於觸控螢幕。使用者只需要變換手勢,不需要額外感測器,就能在三維空間操控電腦,包括圖片的縮放、移動、旋轉、指令操作隔空書寫感應等。此文作者是居住於新加坡的一名工程師,不久前因為參加了 Leap Motion 的開發者計畫,而收到Leap Motion 的硬體和 SDK ,並分享其開箱文於自家部落格中:

因為參加了 Leap Motion 的開發者計畫,我很幸運的收到 e-mail 通知我將會收到 Leap Motion 的硬體和 SDK。幾週後,他們寄了一個黑色的卡片盒給我,裡面裝著Leap Motion 的設備、接線,還有一張卡片,上面寫著創辦人寫的話。

第一印象

w680

那是個很小很輕的盒子,一面刻著 Leap Motion 的商標,另一面放著感應器。打開電源,三盞燈就亮了,但是必須先安裝軟體才行使用,SDK 支援 Mac 和 Windows 系統,並附上一些案例和檔案來幫助你上手。連接好設備、安裝好軟體,就可以開使用了!

你可以玩玩廠商提供的樣品應用程式,不過都是些簡單像是 Hello world 的應用程式,來告訴你如何呼叫 API 出來,暫時沒有切水果這類遊戲可以玩。Leap Motion 團隊開發了一個輸入模擬器,可以對接類似 Fruit Ninja 等遊戲,廠商承諾未來會將其開源。SDK 支持Java、C++、C#、Object-C、Python 和 Javascript,也許未來還會支持更多。API 還非常原始,你可以直接調整原始數據,例如每個指針的具體位置、方向或動作,暫時還沒有手勢或者其他抽象的 API。

開發者體驗

就像剛拿到玩具的小男孩,我迫不及待的想要試玩它,我選擇先試 Javascript 的 API。我試圖複製 D3.js particles,我必須先解決識別手勢的問題。後來我使用S1 unisrtoke 識別器,但也還無法做到完美。

原因如下:定義一個手勢,必須有開始和結束。在我的手勢實驗中,我定義了 2 種狀態:拳頭和點狀態。拳頭狀態的字面意思,是將手緊握成拳頭,作為一個空白的狀態,我使用它來定義的手勢的終點,而點狀態是指手指的延伸。在這種狀態下,手的動作會被記錄下來。雖然我的實驗能夠識別手勢,但還不夠清楚。因為在手勢改變的過程中,有一些波動是不可避免的,要形成一個清楚的形狀,是非常困難的,應該有更好的方式來定義手勢的終止。

Leap Motion Visualizer from Graham Gaylor on Vimeo.

終結滑鼠和鍵盤

我把自己的開發的結果,拿到附近的 Javascript 社群聚會上展示,每個人都對 Leap Motion 感到驚艷。遊戲自然會是一個應用,而類似《關鍵報告》中的手勢操控界面是另一個。試玩 Leap Motion 之後,我確認了一點,那就是滑鼠和鍵盤的時代真的要過去了,Leap Motion會是下一個時代的開端。

想試試看 Leap Motion 的魅力嗎?只要提出一個可以驚豔 Leap Motion 官方的構想,就有機會拿到一套免費的開發套件。點這裡前往官方網站申請。

參考來源:Leap Motion reveals super-accurate motion control tech, $70 device to change the UI game
                      First Impression of Leap Motion