Leap Motion颠覆操控体验的超精致手势追踪技术【转】
转自:http://www.cnblogs.com/emouse/archive/2013/02/28/2936689.html
先来看两段简介视频:
看了介绍视频后,对如此次超高精度的手势追踪非常好奇,下面为整理的一些相关资料。
以下为来自Engadget的新闻介绍:
自微软推出 Kinect 以来就掀起了一股手势控制的旋风,同样作为科技巨头的三星和苹果自然也不甘落于人后,纷纷拿出了自己的产品或专利。而最近一家名为 Leap Motion 的公司横空出世,推出了一款名为 Leap 的新产品,据称它比现有技术精准 200 倍,能为手势控制技术带来巨大的发展(看来不是只有大公司才能有大作为哦)。
这款设备只有一包口香糖大小,在通过
USB 连接电脑后,它会创造出一个 4 立方英尺的工作空间。在这个空间里你 10 个手指的动作都会被即时追踪,误差在 1 / 100
毫米以内。这样的精准程度就能保证用户顺利完成像 pinch-to-zoom 或控制 3D 渲染物体等操作。关于这项技术所采用的原理 Leap
Motion
并没有透露(不意外),不过他们表示任何有运算能力的设备,大到冰箱小到电话,都可以加入他们的软件。用户也可以根据自己的需要来设定手势及灵敏度,而且通过连接几台
Leap 设备还能造出一个更大的工作区域。另外,Leap Motion 也为开发者们准备了 SDK,希望他们能开发出 Leap
适用的应用,同时建立起一个应用搜索平台以便用户查找。这样的话未来的 Leap
就会有更多的可能性,无论是简单的电脑控制,还是游戏、设计等复杂一些的操作。而最令人兴奋的一点是部份用户现在就可以开始预购,售价仅有 69.99
美元(约合人民币 440 元),到冬季时将会向所有消费者发售。
摘自知乎的来自于 @大华电子 的原理分析:
从API的角度大概说一下。Leap Motion传感器的结构:大体上,Leap传感器根据内置的两个摄像头从不同角度捕捉的画面,重建出手掌在真实世界三维空间的运动信息。

检测的范围大体在传感器上方25毫米到600毫米之间,检测的空间大体是一个倒四棱锥体。首先,Leap
Motion传感器会建立一个直角座标系,座标的原点是传感器的中心,座标的X轴平行于传感器,指向屏幕右方。Y轴指向上方。Z轴指向背离屏幕的方向。单位为真实世界的毫米。如图:在使用过程中,
Leap Motion传感器会定期的发送关于手的运动信息,每份这样的信息称为「帧」( frame )。每一个这样的帧包含检测到的:

- 所有手掌的列表及信息;
- 所有手指的列表及信息;
- 手持工具(细的、笔直的、比手指长的东西,例如一枝笔)的列表及信息;
- 所有可指向对象(Pointable Object),即所有手指和工具的列表及信息;
Leap传感器会给所有这些分配一个唯一标识(ID),在手掌、手指、工具保持在视野范围内时,是不会改变的。根据这些ID,可以通过Frame::hand(
) , Frame::finger(
)等函数来查询每个运动对象的信息。Leap可以根据每帧和前帧检测到的数据,生成运动信息。例如,若检测到两只手,并且两只手都超一个方向移动,就认为是平移;若是像握着球一样转动,则记为旋转。若两只手靠近或分开,则记为缩放。所生成的数据包含:
- 旋转的轴向向量;
- 旋转的角度(顺时针为正);
- 描述旋转的矩阵;
- 缩放因子;
- 平移向量;
对于每只手,可以检测到如下信息:
- 手掌中心的位置(三维向量,相对于传感器座标原点,毫米为单位);
- 手掌移动的速度(毫米每秒);
- 手掌的法向量(垂直于手掌平面,从手心指向外);
- 手掌朝向的方向;
- 根据手掌弯曲的弧度确定的虚拟球体的中心;
- 根据手掌弯曲的弧度确定的虚拟球体的半径;
其中,手掌的法向量和方向如下图所示:「手掌球」的圆心和半径:对于每个手掌,亦可检测出平移、旋转(如转动手腕带动手掌转动)、缩放(如手指分开、聚合)的信息。检测的数据如全局变换一样,包括:
- 旋转的轴向向量;
- 旋转的角度(顺时针为正);
- 描述旋转的矩阵;
- 缩放因子;
- 平移向量;

Leap除了可以检测手指外,也可以检测手持的工具。像上文所说的,就是细的、笔直的、比手指长的物件:对于手指和工具,会统一地称为可指向对象(Pointable Object,抱歉不太会翻译),每个Pointable Object包含了这些信息:
- 长度;
- 宽度;
- 方向;
- 指尖位置;
- 指尖速度;

方向和指尖位置如下图:根据全局的信息、运动变换,手掌、手指和工具的信息和变换,开发者就可以靠这些来制作游戏、程序了。大概就是这样了~ 参考:Leap Motion的开发者文档 Leap Motion | Developers
最后的好消息就是,这货3月份在国内就可以出货了,淘宝上已经有多家可以预定了,国内价格应该在600元左右,用来做二次开发还是非常不错的,比Kinect便宜的价格,小巧的造型,超高的精确度,还是非常值得尝试的。

原创文章转载请注明:http://emouse.cnblogs.com
Leap Motion颠覆操控体验的超精致手势追踪技术【转】的更多相关文章
- 十大最佳Leap Motion体感控制器应用
十大最佳Leap Motion体感控制器应用 Leap Motion Controller也许还没有准备好大规模的发售,但是毫无疑问,这款小巧的动作捕捉器是我们见过的最酷的设备之一.这款设备的硬件 ...
- Unity3D中使用Leap Motion进行手势控制
Leap Motion作为一款手势识别设备,相比于Kniect,长处在于准确度. 在我的毕业设计<场景漫游器>的开发中.Leap Motion的手势控制作为重要的一个环节.以此,谈谈开发中 ...
- Leap Motion 上手体验
很早之前就关注了Leap Motion这个颠覆性的体感操作设备,如今7月22日上市至今已经一个月左右,淘宝的价格也已经降到650元,虽说相对国外还是偏贵,但是已经忍不住尝尝鲜了. Leap Motio ...
- Leap Motion发布新平台,直击下一代移动端VR/AR手部追踪
2013年,动作捕捉技术公司Leap Motion发布了面向PC的体感控制器,不过销量并不乐观.随着2014年虚拟现实技术的再一次兴起,它发布一款用于Oculus Rift的附加设备,从而正式登上VR ...
- leap motion
体感控制器: 识别:手,手指和工具,获取位置,手势,动作 范围:倒金字塔,塔尖在设备中心,2.5cm~0.6米 坐标系统:采用右手笛卡尔积坐标系,返回的数值:毫米 摆放:绿灯朝向自己,z轴距离屏幕越来 ...
- Leap Motion 开发笔记
Leap Motion 体系架构 Leap Motion支持所有主流操作系统,leap motion在Windows系统下是作为一个服务运行的,在Mac和Linux是后台守护进程.软件通过USB线连接 ...
- 基于unity3d和leap motion的拼图游戏
近期用unity3d引擎做了一个拼图游戏,会分几次写完,以此作为总结. 本文基本查找了网上能查到的全部资料作为參考.也算是大家节省了时间. 眼下仅仅完毕了拼图部分,leap motion手势控制部分会 ...
- Qt 加载Leap motion 手势识别软件 二次开发 hello world
研发需要对收拾是被进行精确定位,实现收拾的识别,和在虚拟现实中精确的显示手势在实际世界中的位置. 开始使用的Qt mingw的版本开发,总是函数没有定义,最后发现是leap sdk中需要代育vs的库文 ...
- HTC Vive 与Leap Motion 出现位置错误的问题
Leap Motion已经支持VR, 但是官方没有支持HTC Vive的例子. 按照官方的文档, 其实是有问题的: https://developer.leapmotion.com/documenta ...
随机推荐
- 绿盟python测试实习面试
1.简历问题 低级错误:时间写错 最近好像越来越马大哈了,总是犯低级错误. 上次的开题报告首页,这次的时间,每次都有小问题,确是大毛病 到底哪里出错了 2 RHCE证书好像没有用 面试官根本就不懂这个 ...
- android IPC 进程间通讯
参考资料: http://blog.csdn.net/birdsaction/article/details/39451849 在这里我说一下学习技术的方法,别人的博客,别人的东西,再简单,自己没有写 ...
- 《Cracking the Coding Interview》——第4章:树和图——题目6
2014-03-19 04:16 题目:找出一棵二叉搜索树中的中序遍历后继节点,每个节点都有指针指向其父节点. 解法1:分两种情况:向下走时,先右后左:向上走时,先左后右.如果目标节点有右子树,就向右 ...
- 【Gradient Boosted Decision Tree】林轩田机器学习技术
GBDT之前实习的时候就听说应用很广,现在终于有机会系统的了解一下. 首先对比上节课讲的Random Forest模型,引出AdaBoost-DTree(D) AdaBoost-DTree可以类比Ad ...
- python-成员修饰符
python的面相对象中,拥有3个成员,字段.方法.属性 class Foo: def __init__(self,name): #公有字段name在类中与类外均能调用 self.name = nam ...
- Codeforces 1088E 树形dp+思维
比赛的时候看到题意没多想就放弃了.结果最后D也没做出来,还掉分了,所以还是题目做的太少,人太菜. 回到正题: 题意:一棵树,点带权值,然后求k个子连通块,使得k个连通块内所有的点权值相加作为分子除以k ...
- lo口环路问题分析
流程如下,collecter抓取网卡lo和wlan0数据,其中lo口无数据,wlan0是笔记本上网网口,然后按自定义协议把数据包通过lo口发给后端dispatch进行分发! 这种模式下,抓包程序每经过 ...
- 团队项目-第六次Scrum 会议
时间:11.1 时长:30分钟 地点:F楼2层沙发休息处 工作情况 团队成员 已完成任务 待完成任务 解小锐 完成员工信息的简单初始化 学习cocos creator样例 陈鑫 完成CurrentPr ...
- WMware给centos6.8虚拟机添加硬盘
背景 用WMware运行系统经常遇见系统磁盘不够用的情况,通常解决这个问题有两种方式: 1) 给现有磁盘扩容: 2) 给虚拟机添加一块虚拟硬盘: 磁盘扩容我还没试验成功,这里我先把给虚拟机添加一块硬盘 ...
- c#中获得MD5字符串方法
在用户登录的过程中,我们会遇到要查询对比用户名密码的是否存在或者是否正确,但是数据库中存放的是通过MD5加密的字符串,所有我们可以先把用户输入的用户名或者是密码先转为DM5字符串再跟数据库查出的MD5 ...