




已阅读5页,还剩11页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
LeapMotion文档Introducing the Skeletal Tracking Model:LeapMotion2.0API引入一个新的骨骼追踪模型,提供了关于手和手指额外信息并提高了整体的数据追踪水平。通过对人手掌的建模,LeapMotipn能够更好的预测视野中手和手指的位置。五根手指总是出现跟随手掌出现,两手交叉也同样能被追踪到。为了控制器也需要能够看到手指或手掌的以便能够追踪到它们精确的位置。骨模型:Frames:LeapJS通过运行在本地的Leap Service连接WebSocket Server工作,每隔10ms LeapService会通过WebSocket向打开的浏览器页面发送一个frame,frame是一串包含手和手指位置信息的json数据。使用LEAP LOOP是获取frame数据的简单的方式。Frames Objects:Leap Motion相对应的物理单位:距离:millimeters毫米时间:microseconds微秒速度:millimeters/second毫米/秒Angle: radiansLeap Motion可以追踪的数据:hands、arms、fingers、tools、gestures、Hands:Leap motion利用内部的人类手的模型支持预先的追踪手掌直至超出LeapMotion的可视范围。手模型可以提供五个手指的位置,当手、和手指的轮廓是清晰可见且最佳的追踪。Leapmotion软件利用手掌的可视部分、内部的模型以及以往的观测值去计算当前其他不可见部分的位置信息。记录下隐藏在手掌中或者远离LeapMotion传感器的不被检测到的手指细微的动作。Hand.confidence返回的值反映了观测到的数据与内部模型的匹配情况。Arms:hand.arm给出了手臂的方向、长度、宽度以及终点等数据。当肘部不在leap的视野内,LeapMotion控制器会根据过去的观测数据以及典型的人体比例估算其位置。Fingers:LeapMotion控制器提供手掌的每一根手指的信息。如果一个手指的部分或全部是不可见的,这根手指的特征会根据最近的观测值和手的解剖模型去估算。一个finger对象提供了一bone对象,描述了每一个结构上的手指骨头的位置和方向。所有的手指都包含四根骨头从指跟(base)到指尖(tip)。骨头的定义:Metacarpal (掌骨):手掌上连接手指和手腕的骨头(食指除外)Proximal Phalanx(近节指骨):手指的根部,连接手掌。Intermediate Phalanx(中间指骨)Distal Phalanx(外端指骨)这个模型的拇指不匹配标准解剖的命名系统,真实的拇指比其他的手指少一根骨头。然而,为了便于编程,LeapMotion的拇指模型包括一个零长度的掌骨,所以大拇指和其他手指有着四根骨头。结果是,大拇指的解剖掌骨被标记为近节指骨(Proximal Phalanx),而近节指骨被标记为中间指骨在LeapMotipn的手指骨模型中。Tools:工具可以是一个类似于铅笔的物体。Tool类描述了Tools。 一个工具要比手指更长,更纤细,更笔直。只有纤细的圆柱物体才能被当做工具追踪。Gestures:LeapMotion通过识别特定的运动模式作为手势来表明用户的意图和指令。每根手指或工具的姿势被单独的观测。LeapMotion通过一个frame告诉我们观测到的姿势以及其他的追踪到的手指和手掌的数据。Gesture类以及它的子类CircleGestures、KeyTapGesture、ScreenTapGesture、SwipeGesture描述了手势。Motions:估算一段时间内用户的手固有的基本运动类型的改变,包括大小、旋转、和移动。Motions是计算两个两个帧(frames)之间的动作。API Reference:l FrameAttribute:n frame.currentFrameRateType: float 帧数返回Leap Motion控制器产生frames的即时速率 用法:var fps = frame.currentFrameRate;n frame.id 帧的唯一编号n hands保存探测到手的信息n tools 保存侦测到的tools信息n fingers 五根手指信息的数组对象n pointables 保存侦测到的fingers和tools信息n gestures 保存手势信息 旋转(Circle)和猛击(swipe)在每一帧中更新,轻打(Tap)只存在单独的帧中Method:n dump() 返回json格式的字符串,包括hands、pointables、gestures信息n hand(id)同pointable()n finger(id) 同pointable()n tool(id) 同pointable()n pointable(id).valid 匹配对应的id是否存在,如果不存在返回falsen rotationAngle(sinceFrame)返回相对于sinceFrame的旋转角度numbern rotationAxis(sinceFrame)返回一个单位方向向量member 三个参数n rotationMatrix(sinceFrame) 返回旋转变换3*3矩阵number 九个参数n translation(sinceFrame) 返回相对与sinceFrame的移动的三维向量 单位millimetersn scaleFactor(sinceFrame) 规模因素来源于当前帧之间的整体运动和指定的帧。l HandAttribute:n 五根手指thumb、indexFinger、middleFinger、ringFinger、pinkyn pinchStrength 捏的力度值,范围0,1n grabStrength 抓的力度值,范围0,1n palmPosition 手掌的位置n SphereCenter、SphereCenter适合手掌抓的球的球心坐标和球的半径n palmNormal手掌的法向量,单位向量n palmWidth手掌的宽度,The average outer width of the hand (not including fingers or thumb) in millimeters.n timeVisible手掌在leap的可见范围内存在的时间n direction沿手掌指向手指方向的单位方向向量n fingers 保存fingers的信息n pointables保存fingers和tools信息的list,n tools保存tools的信息n palmVelocity改变手掌位置的速度,member三的参数的数组n confidence 内部的手模型和观测到的数据的匹配情况n valid 告诉我们是不是一个有效的对象 boolean型 Method:n finger(id)n rotationMatrix(sinceFrame)n rotationAxis(sinceFrame)n scaleFactor(sinceFrame)n translation(sinceFrame)n rotationMatrix(sinceFrame)n hand.toString() 返回的值和frame.hands属性的返回值一样n pitch() 返回倾斜(绕x轴)的角度(弧度单位),是向量在y-z平面上的的投影和-z轴方向之间的夹角,换句话说,展示的是绕x轴的旋转。Number类型n roll()返回绕z轴倾斜的角度,是向量在x-y平面上的投影和y轴n yaw() 返回向量在x-z平面的投影和-z轴方向之间的夹角。描述的是绕y轴的旋转。l Pointable 该类记录了探测到的手指和tools的物理特征n Attributes:u id 返回的是该pointable的id号u length估算的手指和tool的长度,单位毫米u width估算的手指和工具的宽度,单位毫米u direction 手指或tool的指向,类型:三维单位方向向量u touchZone 返回一个String,”touching”或”hovering”。手指向前触返回touching,缩回返回hovering。u touchDistance 返回手指或tool与触碰平面之间的相对应的值-1,1之间u tipPosition 手指或tool顶端相对leap坐标原点的位置u tipVelocity 顶端位置变化的速率 mm/sType:number , a 3-element array representing a vector.u stabilizedTipPosition 基于pointable速率的稳定更容易定位u timeVisible可视时间u tool 返回boolean类型,判断pointable是否被认为是一种工具u validl Finger 继承Pointablen Attributes:u bones u type u distal 远端指骨。Type:Bone()u medial 中间指骨。Type:Bone()u proximal 近节指骨。Type:Bone()u metacarpal手指的掌骨 。Type:Bone()u carpPosition掌骨的末端位置(接近手腕)。u mcpPosition掌骨(Metacarpals)和近节指骨(proximal phalanx)之间的关节位置u pipPosition 位置:近节指骨( proximal)和 中间指骨 (intermediate phalanges)之间的关节位置u dipPosition远端骨(distal phalanges)和中间骨(intermediate phalanges)之间的关节位置l Bone 该类描绘了追踪到的手指的骨头信息n Attributes:u basis类型:member一个二维数组,3*3数组,骨头的标准正交基向量basis0,x-basis basis1,y-basis basis2,z-basisu type integer -a code indicating the bone name0 = Metacarpal 掌骨 1 = Proximal phalanx 近节指骨2 = Intermediate phalanx 中间指骨3 = Distal phalanx 远端指骨4 = forearm 前臂u length 骨头的长度u width 骨头的宽度u nextJoint 下一个关节的位置(靠近指尖)The distal end of the bone closest to the finger tip. numberu prevJoint (前一个关节的位置靠近指根)The proximal end of the bone closest to the torson Functions:u center(): 在LeapMotion坐标系统中骨头的中心坐标。u left():判断骨头是否属于左手的 boolean。u matrix()u direction():沿着骨头纵轴的方向向量u lerp()l ControllerController()类是LeapMotion控制器的主接口。n AttributeframeEventName类型String返回“animationFrame”或“deviceFrame”eg:var loopType = controller.frameEventName;n Event事件有:blur、connect、deviceAttached、deviceConnected、deviceDisconnected、deviceRemoved、deviceStopped、deviceStreaming、disconnect、focus、frame、gesture、frameEnd、protocol、streamingStarted、streamingStoppedeg:var controller=new Leap.Controller();/当屏幕失去焦点时执行onBlur controller.connect(); controller.on(blur,onBlur); function onBlur(frame) console.log(blur event); n function:connect()、connected()、disconnect()、frame()on()、setBackground()、setOptimizeHMD()、streaming()用法:controller.connect()连接leapmotioncontroller.connected()判断是否连接,返回true或者falsecontroller.on(event,function() 事件触发l Gesture 识别用户的动作n Attributes:u duration 类型number返回用户动作持续时间,微秒级u id 类型number返回动作的idu state 动作姿势的状态 三种状态start、update、stopu handIds 完成姿势的手的idu pointableIds 完成手势的手指或tools的idu type 手势的类型 可能的类型:circle、swipe、screenTap、keyTapl CircleGesturen Attributes:u center 画圆的中心点 number数组u normal 所画圆 的单位法向量u state 状态 start、update、stopu duration 持续时间u pointableIds 手指或tools的idu type 手势类型在这里就是 “circle”u handIds 手的idu progress 作出画圆手势进行画圆的次数。numberu id 手势的idu radius 手势画出园的半径,mm级l SwipeGesturen Attributeu direction 平行于动作的单位方向向量u position 当前位置u speed 速度 mm/su startPosition 开始位置l ScreenTapGesturen Attribute 以下返回的值同其他手势u directionu durationu handIdsu idu pointableIdsu positionl KeyTapGesturen Attribute 以下返回的值同其他手势u directionu durationu handIdsu idu pointableIdsu positionu stateu typel InteractionBoxleapmotion视野内的一个盒装区域n Attributes
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 江苏差旅费用管理制度
- 公司年限奖激励管理制度
- 公司物品存放及管理制度
- 幼儿园班级行政管理制度
- 施工项目经理管理制度
- 危化品安全生产管理制度
- 子企业对外捐赠管理制度
- 强弱电施工现场管理制度
- 互联网公司客户管理制度
- 家庭托儿所设备管理制度
- 2025年高考河北卷物理真题(解析版)
- 2025春季学期国开电大本科《经济学(本)》一平台在线形考(形考任务1至6)试题及答案
- 三基考试试题及答案护士
- 2025年中考物理一轮复习知识清单专题14 电学基础(6大模块知识清单+5个易混易错+7种方法技巧+典例真题精析)(解析版)
- 2025年乡村振兴战略相关知识考试题及答案
- 哈尔滨市第九中学校2024-2025学年高二下学期期中地理试卷
- CJ/T 315-2009城市市政综合监管信息系统监管案件立案、处置与结案
- 辽宁邮政招聘笔试题库2025
- 中国多式联运发展报告2024-交通运输部规划研究院
- 二手房砸墙合同协议书
- 2025春国开《创业基础》形考任务1-4答案
评论
0/150
提交评论