您的位置 首页 IC

Leap Motion运转原理介绍

Leap Motion运行原理介绍-定位与输入是VR技术的关键,leap Motion使用的是一种基于计算机视觉原理的识别技术。目前在业内比较有代表性的就是Leap Motion的手势识别技术,当然这

定位与输入是VR技能的要害,leap MoTIon运用的是一种依据计算机视觉原理的辨认技能。现在在业界比较有代表性的便是Leap MoTIon的手势辨认技能,当然这并非Leap MoTIon独有的技能,hololens上相同搭载该技能。从 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 包含了这些信息:

长度;

宽度;

方向;

指尖方位;

指尖速度;

方向和指尖方位如下图:

依据大局的信息、运动改换,手掌、手指和东西的信息和改换,开发者就能够靠这些来制造游戏、程序了。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/bandaoti/172401.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部