如何做到行业领先的VR手柄定位技术
自去年年底YVR1发布以来,玩出梦想集团公布了产品的多项规格参数和技术性能指标。其中就包括定位追踪技术相关。定位追踪效果是目前衡量VR产品好坏的最核心技术表现之一。对此,YVR团队一直不断探索其精度和稳定性,致力于能为用户带来一个更好的定位追踪系统。基于产品手柄定位追踪准确的角度,YVR从算法及软件方向给予了深度探讨。
YVR1的手柄使用了基于红外光的主动式光学定位追踪方案,主要是通过头显的摄像头在短曝光图像上观测到手柄上红外光电发射的红外光,通过检测光点并根据多视图几何原理计算初步的位姿,然后融合产生于手柄IMU(Inertial Measurement Unit)的关键数据对手柄进行的定位跟踪。该方案无需像电磁定位或者超声波定位那样需要专门的传感器模组,具有低成本,低功耗的优势。同时不直接受家庭用户常见的空气扰动,复杂电磁环境的干扰,可以提供极高的定位精度,日益成为消费级VR产品手柄定位方案的首选。
1. 定位跟踪框架
基于算法层面,手柄和头显通过无线通讯的方式进行数据交互。手柄定位跟踪框架根据使用IMU数据的不同可以分为“集中式计算”和“分布式计算”两种。集中式计算是直接将IMU的原始数据传输到头显,通过经典的多传感器融合方式进行状态估计,达到手柄定位跟踪的目的,但是不能够直接传输高频的IMU数据。分布式计算是在手柄的寄存器中将IMU的原始数据进行计算,将中间结果传输到头显中融合视觉观测进行状态估计。这种框架能够有效利用高频的原始数据,减少数据传输的功耗,提升手柄定位跟踪的稳定性能,但是需要更加精妙的状态估计算法。YVR1将两种算法的优点进行了吸收,使手柄定位跟踪的精度和稳定性都有了进一步提升。
2. 红外光学定位
家用环境下,光学定位方案易受两方面影响:1)无线信道干扰导致手柄IMU数据传输高延迟或丢失;2)环境干扰光斑会导致手柄红外灯组光斑检测低效或失败。针对无线信道干扰,YVR1在软件层面设计了一套支持自动跳频、高吞吐量的私有2.4G无线通信协议,保证了手柄在复杂电磁环境下,也能稳定传输高采样的IMU数据。YVR1设计了一套环境光斑和红外灯光斑区分出来的方法提升了光斑检测的精度,效果如图所示。
同时,为降低红外灯在高亮度下的功耗,红外灯开启必须和摄像头曝光同步。这对系统提出了两大高精度挑战:1)头显四个摄像头同步曝光精度;2)红外灯和摄像头组曝光同步精度。对此,YVR团队也给出了相应的解决方案:
1)摄像头同步曝光:XR2摄像头驱动默认使用软同步方式,同步精度只能保证亚毫秒级,而YVR1采用硬同步方式,四个摄像头的曝光统一由外部控制线触发,同步误差趋近于0。如图:
2)红外灯和摄像头组曝光同步:红外灯和摄像头组曝光的同步有两个特点,一是两者分属不同设备,接着不同的时钟源,随着时间推移,时钟的误差会不断积累扩大。二是两者控制路径太长,并且其中部分阶段耗时受到的干扰因素较多。
为实现红外灯和摄像头组曝光的高精度同步,YVR1设计了一套高精度的时钟同步协议,
通过实时操作系统方式和动态时钟漂移矫正算法提高了时间同步的精度。
用户在体验中,经常会有手柄频繁的移出视野然后回到视野范围内的情况,这种会造成光点不能持续的进行跟踪。YVR1采用了一种“热启动”的方法提高手柄定位精度。
3. 长尾跟踪
用户在体验中经常有手柄移出视野的情况,这种情况下手柄的跟踪称为“长尾跟踪”。为提升长尾跟踪的精度和稳定性,YVR算法团队采用了多种方法,1)在没有视觉观测的情况下只根据IMU数据进行长时间持续估计的新算法,2)基于深度学习的6DOF融合定位方法。
(长尾跟踪如所示,手柄在头显的背面)
第一种方法需要IMU的零偏需要估计的非常精准,并且能够快速的收敛。YVR1的定位框架能够在极短时间内快速收敛IMU的零偏,在IMU温漂补偿技术的加持下使手柄进行持续稳定跟踪。如图:
(IMU 陀螺仪零偏的收敛曲线)
基于深度学习的6DOF融合定位方法,1)能够有效提升手柄在静止情况下的稳定性能;2)提升手柄光点不在视野范围内跟踪的稳定性,增加有效跟踪时间;3)基于深度学习的自适应算法能够有效降低IMU的零偏受到温度、湿度、电流、震动和应力的影响,提高定位精度。
通过了解算法及软件层面的技术问题及YVR团队在解决方案上的不断研究,使我们对YVR1的手柄定位准确技术有了更深刻的认识。好的产品并不是一蹴而就,而是通过不断探索推动产品的发展与进步。关于YVR的更多说明,敬请期待。