我试图实现与统一和统一Oculus集成包的Oculus探索手手势识别。
我在Oculus developer网站上读过“手在统一中的跟踪”文档,但他们只谈论得到当前的手指,这不是我想要的:
https://developer.oculus.com/documentation/unity/unity-handtracking/
我考虑让每个手指的手指弯曲(例如,值在0到1之间),然后训练一个具有5个特征的k-NN模型,以便能够识别最近的手势。但是我已经找了好几个小时了,没有找到任何关于手指位置的东西,我唯一找到的就是捏。
通过查看OVRSkeleton.cs文件(来自),我已经能够得到每个骨头的当前转换(因此作为向量的位置和四元数的旋转),但我不知道如何计算或得到手指屈伸的估计值(或任何有助于进行手势识别的方法)。
OVRSkeleton skeleton = GetComponent<OVRSkeleton>();
skeleton.Bones[(int) OVRPlugin.BoneId.Hand_Index1].Transform.position
skeleton.Bones[(int) OVRPlugin.BoneId.Hand_Index1].Transform.rotation骨头is的列表在“手工跟踪在统一”文档页面中。
事实上,我想要实现的看起来就像这个包:https://assetstore.unity.com/packages/tools/integration/vr-hand-gesture-recognizer-oculus-quest-hand-tracking-168685
任何帮助,想法或评论如何计算手指弯曲,或任何其他解决方案,以实现手势识别将不胜感激!
谢谢
到目前为止,我已经探索了一些事情/链接:
发布于 2021-02-20 02:55:50
https://github.com/jorgejgnz/HandTrackingGestureRecorder是我目前正在尝试的东西,医生们并没有说它有依赖性,但是很明显,它确实存在,而且我还没有让它工作。您可以在运行时访问骨旋转,并将其与记录的手势进行比较。我认为它更接近于“模板匹配”,而不是机器学习,测量两种姿势之间的误差。
https://stackoverflow.com/questions/66232411
复制相似问题