VR/AR相关的各种硬软件技术直至目前还存在诸多问题,不过令人欣慰的是有一项在最近可以说是取得了比较大的突破,这就是由前微软员工组建的创业公司Perceptive.IO带来的手势追踪技术。该团队带来的技术可以以每秒1000帧识别高速运动的手部运动,对于同时出现两只手时的复杂动作识别也能准确完成。
2016年微软的HoloLens团队多名成员离职,其中7名研究人员组建了一家名为Perceptive.IO的初创公司
当时他们对外宣称将“实时感知和交互世界”、有“与众不同的硬件和软件”,尝试改变用户与计算机的交互方式,结合了计算机视觉、应用机器学习、屏幕技术、感知技术和人机交互。在SIGGRAPH Asia 2017中展示的超快速双手追踪技术视频在最近发布在youtube,论文也一并公开,从实现的效果来说也许是目前能看到的最好方案。
早在2016年3月,微软就展示了Holoportation,这是一款基于HoloLens眼镜的全息通话演示。在这里微软运用了一种用深度相机实时扫描物体,以纹理化并将其压缩,以便让全息通话的另一头的用户实时地接受并观看。
由微软前员工组件的perceptive.io所运用的技术与上述有着密切联系。
总的来说,perceptive.io系统首先生成追踪目标的手部模型,通过模型和深度数据相匹配的混合办法,利用时间性和区分预测的起始姿势,极大的提高了关节式手部追踪技术的水平。
太过详细的手部模型而导致的巨大运算量,而为了尽可能地实现高帧率的手部动作识别,他们使用四面体蒙皮网格,创建一个有关符号(即手的内部还是外部)的距离场,在图中以蓝色或红色表示。接下来对于任何的手部姿态,产生一个到详细曲面几何体的距离并执行基于梯度优化导数的封闭形式计算。
下面的运算就交给GPU,他们的系统可以以1000fps的帧速运行。
由于手是非常复杂的关节对象,通常使用基于颜色的探索法或者依据骨骼追踪器来进行手部检测。其中基于颜色的检测器通常检测手部上的有色物体,并且假设场景中只有一直单手,故而没办法区分左右手。骨骼追踪器可以实现粗略的多只手位置估计。
为了实现更复杂以及更快的手部追踪,他们采用了基于神经卷积网络(CNN)的办法。
上图一些将左右手分割的示例,其中蓝色表示左手,绿色表示右手,黑色不太确定。通过混合基于学习的手势估计办法和显式手部运动学以及表面几何生成模型,产生最终的手部追踪系统。
双手交叠也不会对追踪效果产生影响
视频中他们还将Perceptive.IO的手部追踪系统和Leap Motion进行比较,可以看到动图中的骨骼式关节追踪方案在处理双手时出现了明显的问题,而Perceptive.IO则不会。
对Perceptive.IO感兴趣的同学可以在youtube查找视频“Articulated Distance Fields for Ultra-Fast Tracking of Hands Interacting”
论文链接
http://library.usc.edu.ph/ACM/TOG%2036/content/papers/244-0275-taylor.pdf
阅读推荐