LeapMotion教程之手勢識別_第1頁
LeapMotion教程之手勢識別_第2頁
LeapMotion教程之手勢識別_第3頁
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、關(guān)于 Leap Motion 的預(yù)覽 概括預(yù)覽: 坐標(biāo)系統(tǒng) 動作捕捉數(shù)據(jù) 幀 綁定數(shù)據(jù)列表 幀動畫 手模型 手屬性 手的動畫 手指和工具列表 手指和工具模型 手勢 畫圈 劃過 點(diǎn)擊 按鍵類型點(diǎn)擊 屏幕類型點(diǎn)擊 3.手模型 這個 手模型 提供了被綁定的手的位置信息、特點(diǎn)以及運(yùn)動方式。并且還包括了手指或者手上的工具的所有和手關(guān)聯(lián)的東西的信息。 LeapAPI 盡可能多的提供關(guān)于手的信息。但是,Leap 不能夠確定每一幀所有屬性。比如當(dāng)你的手突然攥成了拳頭,這個時候,它上面的所有的手指是不能用了,手指的 list 就成了空。所以你的程序需要對這種情況最一個檢測。 Leap 設(shè)備不能確定某一個手是左手

2、還是右手,多于兩個手出現(xiàn)都可以放到 list 里面去,如果不止一個人將手放進(jìn)來, 或者有一個像手的物體。然而還是建議最多兩個手來保證動作步驟的質(zhì)量。 3.1 Hand 類屬性 Hand 對象提供了幾個屬性來反映綁定后的手的物理特性: PalmPosition The center of the palm measured in millimeters from the Leap origin. PlamPosition手掌中心到 Leap 設(shè)備原點(diǎn)以毫米測量的距離 PalmVelocity The speed of the palm in millimeters per second. Pal

3、mVelocity以 毫米每秒為單位的手掌移動的速度。 PalmNormal一個向量,這個向量是垂直于手掌所形成的平面的。并且向量從手掌出來指向下。 Direction一個向量,從手掌指向手指的方向。 SphereCenter適合手彎曲后曲率的一個球的中心(就像用手握住一個球一樣) SphereRadius The radius of a sphere fit to the curvature of the hand. The radius changes with the shape of the hand. SphereRadius適合手彎曲后曲率的一個球的半徑,這個半徑隨著手的形狀而變化

4、。 direction 和 PalmNormal 是一個單位向量,描述了手相對于 Leap 設(shè)備的坐標(biāo)系統(tǒng)。 PalmNormal 向量指向了手掌的垂直向外的方向。Direction 向量指向前。 我們手握住的時候,就好象有一個球在手里,SphereCenter 和 SphereRadius 就描述了這樣一個球的中心和半徑,這個球的曲率隨著我們的手變化。 3.2 手的動作 Hand 對象也提供了一些屬性來反映綁定的手在 frames 中的動作。Leap 設(shè)備分析手的動作就像分析手指和工具的并且代表了移動、旋轉(zhuǎn)、縮放等因素。在 Leap 設(shè)備的可視范圍內(nèi)移動手指表示移動,旋轉(zhuǎn)、彎曲或者傾斜你的手

5、表示旋轉(zhuǎn),是手指或者工具相對或者相對的移動表示縮放。 手的動作是通過比較手在當(dāng)前 frame 的屬性和較早的 frame 相比較產(chǎn)生的,手動作的屬性包括: RotationAxis A direction vector expressing the axis of rotation. RotationAxis一個方向向量來表示旋轉(zhuǎn)的軸 RotationAngle The angle of rotation clockwise around the rotation axis using the right-hand rule. RotationAngle沿著旋轉(zhuǎn)軸順時針?biāo)D(zhuǎn)動的角度(使用右手定

6、則) RotationMatrix A transform matrix expressing the rotation. RotationMatrix一個表達(dá)旋轉(zhuǎn)的變化矩陣 ScaleFactor A factor expressing expansion or contraction. ScaleFactor一個表達(dá)收縮或者放大的因素 Translation A vector expressing the linear movement. Translation一個表達(dá)線型移動的向量3.3 手指和工具列表 你可以使用下面三個當(dāng)中的一個來訪問 fingers 或者 tools: Pointa

7、bles Both fingers and tools as Pointable objects. Pointablesfinger 和 tools 都是 Pointable 對象(下面兩個繼承于它) Fingers Just the fingers. Fingers僅僅是 fingers Tools Just the tools. Tools僅僅是 tools”樂之者體感開發(fā)” 你 也 可 以 使 用 從 前 一 幀 獲 取 的 ID 值 來 訪 問 fingers 或 者 tools , 使 用Hand.finger Hand.tool或者如果你不需要區(qū)分這兩者的話可是使用 Hand.po

8、inttable方法。 4. 手指和工具的模型 在 Leap 設(shè)備可視區(qū)域里面可以識別并綁定手指和類似手指的工具。Leap 設(shè)備將像手指的對象通過形狀歸為 tools。工具對手指來說更長、更瘦、更值。 In the Leap model the physical characteristics of fingers and tools are abstracted into a Pointable object. Fingers and tools are types of pointable objects. The physical characteristics of pointable

9、 objects include: 在 Leap 模型里面。手指或者工具的物理特性被抽象問 Pointable 對象。并且 fingers 和 tools 是 pointable 對象類型的。Pointable 對象的物理特性包括: Length The length of the visible portion of the object from where it extends out of thehand to the tip. Length這個可以被看見的物體的長度(從手里陳出來到指尖) Width The average width of the visible portion o

10、f the object. Width可是物體的平均寬度 Direction A unit direction vector pointing in the same direction as the object i.e. from base to tip. Direction一個和物體所指的方向一樣的單位方向向量 TipPosition The position of the tip in millimeters from the Leap origin. TipPosition末梢的位置距離 Leap 設(shè)備多少毫米 TipVelocity The speed of the tip in

11、millimeters per second. TipVelocity末梢以毫米每秒的移動速度 手指的 TipPosition and Direction 向量為我們提供了手指末梢的位置和手指所指的方向。 Leap 設(shè)備將所綁定的物體分為手指或者工具。使用 Pointable.isTool 屬性就可以判斷這個綁定的物體是手指還是工具了。 工具跟手比起來更長、更細(xì)、更直。5. 手勢 Leap 設(shè)備作為手勢分析某一個運(yùn)動模式,這個運(yùn)動模式里面可能包含了用戶的想法或者命令。設(shè)備響應(yīng)在 frame 中觀察到的手勢和相應(yīng)手指綁定數(shù)據(jù)和手是一樣的。對于每一個觀察到的手勢,設(shè)備就會在 frame 中放置一個

12、 Grsture 對象。你可以從 Frame gestures 列表中獲取這個對象。 以下運(yùn)動模式能夠被 Leap 所識別。 Circle A single finger tracing a circle. Circle單一的手指被或者旋轉(zhuǎn)一周 Swipe A linear movement of the hand. Swipe一個手的直線運(yùn)動 點(diǎn)擊 Leap 設(shè)備能夠分析兩種類型的點(diǎn)擊:向下的 KeyTap 和向前的 ScreenTapKey Tap A tapping movement by a finger as if tapping a keyboard key. KeyTap 一種就

13、像點(diǎn)擊鍵盤的點(diǎn)擊運(yùn)動Screen Tap A tapping movement by the finger as if tapping a vertical computer screen. ScreenTap一種點(diǎn)擊運(yùn)動就像點(diǎn)擊一個虛擬的電腦屏幕 當(dāng) Leap 設(shè)備首先將一個運(yùn)動模式分類為手勢的時候,首先對 Frame 里面添加了一個Gesture 對象。如果這個手勢持續(xù)到結(jié)束時間。Leap 就對在隨后的 Frame 里面更新這個Gestures 對象。手勢 Circle 和 Swipe 是連續(xù)的,設(shè)備在每一幀都更新手勢的進(jìn)度。點(diǎn)擊是分離的手勢。設(shè)備響應(yīng)點(diǎn)擊是使用了一個單獨(dú)的 Gesture

14、 對象。 重要的是:在在你的應(yīng)用程序使用手勢之前,你需要開啟每一個你需要用的手勢。在Controller 類中有一個方法 EnableGesture 你可以使用它來開啟你需要用到的手勢。 Circle 畫圈 設(shè)備識別一個手指頭畫一個圈作為 Circle 手勢。 手指畫圈動作 你可以使用手指或者工具畫圈。Cirlce 手勢是一個連續(xù)性的手勢,一旦手勢開始,設(shè)備就開始更新進(jìn)度知道手勢結(jié)束。Circle 手勢在畫完或者背離圓弧軌跡或者畫的太慢。 滑動 設(shè)備認(rèn)為一個手指線性移動是 Swipe 手勢?!睒分唧w感開發(fā)” 一個水平滑動的手勢 你可以使用任何一個手指在任何方向上做一個平滑的手勢。平滑的手勢也是連續(xù)性的手勢。一旦手勢開始,Leap 設(shè)備就會一直更新這個手勢的進(jìn)度直到結(jié)束。一個平滑移動的手勢的結(jié)束包括改變了移動方向或者移動的太慢。 點(diǎn)擊 設(shè)備識別兩種類型的點(diǎn)擊:向下點(diǎn)擊和向前點(diǎn)擊(KeyTap 和 ScreenTap) 鍵盤點(diǎn)擊 設(shè)備識別一種快速的向下的手指或者工具的移動作為 KeyTap。

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論