图腾在用户交互系统中的融合姿势的基于未融合姿势的漂移校正的制作方法
未命名
10-08
阅读:74
评论:0

图腾在用户交互系统中的融合姿势的基于未融合姿势的漂移校正
1.本技术是申请日为2019年7月26日、pct国际申请号为pct/us2019/043751、中国国家阶段申请号为201980063642.7、发明名称为“图腾在用户交互系统中的融合姿势的基于未融合姿势的漂移校正”的申请的分案申请。
2.相关申请的交叉引用
3.本技术要求于2018年8月3日提交的美国临时专利申请no.62/714,609和2019年3月13日提交的美国临时专利申请no.62/818,032的优先权,其全部内容通过引用并入本文。
技术领域
4.本发明涉及一种具有图腾(totem)的用户交互系统,该图腾限定由用户感知到的虚拟对象的六自由度(“6dof”)姿势或姿势。
背景技术:
5.现代计算和显示技术已经促进了包括“增强现实”观看装置的用户交互系统的开发。这样的观看装置通常具有头部单元,该头部单元具有头部单元主体,该头部单元主体可安装到用户的头部并且经常包括两个波导,用户的每个眼睛前面各有一个。波导是透明的,使得来自真实世界对象的环境光可以传输通过波导,并且用户可以看到真实世界对象。每个波导还用于将来自投射器的投射光传输到用户的相应眼睛。投射光在眼睛的视网膜上形成图像。因此,眼睛的视网膜接收环境光和投射光。用户同时看到真实世界对象和由投射光创建的一个或多个虚拟对象。
6.这种用户交互系统通常包括图腾。例如,用户可以将图腾握在他们的右手中,并且在三维空间中以六个自由度来移动图腾。虚拟对象可以被用户感知为被附接到图腾并且在三维空间中随图腾移动,或者虚拟对象可以是对撞击壁或撞击用户在壁上移动的另一对象的光束的感知。
7.对于虚拟对象要保持在其相对于图腾的现实姿势上,这是重要的。例如,如果图腾表示球拍的手柄并且虚拟对象表示球拍的头部,则球拍的头部必须随时间的推移而保持“被附接到”球拍的手柄。
技术实现要素:
8.本发明提供了一种用户交互系统,包括:图腾,其具有图腾主体、在所述图腾主体上的电磁(em)发射器、以及位于所述图腾上的图腾惯性测量单元(imu),该图腾惯性测量单元用于生成由所述图腾的移动引起的图腾imu信号;头部单元,其具有头部单元主体、以及在所述头部单元主体上的em接收器,该em接收器用于接收由所述em发射器发射的em波,所述em波指示所述图腾的位置;处理器;被连接到所述处理器的存储装置;在所述存储装置上并且可由所述处理器执行的一组指令。该组指令包括:世界系;被连接到所述em接收器和所述图腾imu的融合例程,其用于基于所述em波、所述头部单元姿势和所述图腾imu数据的组
合来生成所述图腾在所述世界系中的融合姿势;未融合姿势确定建模器,其确定所述图腾相对于所述头部单元的姿势和所述头部单元相对于所述世界系的姿势,以建立所述图腾相对于所述世界系的未融合姿势;被连接到所述融合姿势确定建模器和所述未融合姿势确定建模器的比较器,其用于将所述融合姿势与所述未融合姿势进行比较;被连接到所述比较器的漂移声明器,其用于仅在所述融合姿势距所述未融合姿势大于预定距离的情况下声明漂移;被连接到所述漂移声明器的位置校正例程,其用于仅在所述漂移被声明的情况下重置所述图腾imu的姿势以与所述未融合位置匹配;数据源,其用于携带图像数据;以及被连接到所述数据源的显示系统,其用于使用所述图像数据向用户显示虚拟对象,所述虚拟对象的位置是基于所述图腾的所述融合位置。
9.本发明还提供了一种用户交互系统,包括:用图腾主体上的em发射器来发射电磁(em)波;用所述图腾主体上的图腾imu生成由所述图腾的移动引起的图腾惯性测量单元(imu)信号;将头部单元主体定位在用户的头部上;由所述头部单元主体上的em接收器接收由所述em发射器发射的所述em波,所述em波指示所述图腾的姿势;存储世界系;用处理器执行融合例程以基于所述em波、头部单元姿势和图腾imu数据的组合来生成所述图腾在所述世界系中的融合姿势;通过所述处理器执行未融合姿势确定建模器,所述未融合姿势确定建模器确定所述图腾相对于所述头部单元的姿势和所述头部单元相对于所述世界系的位置,以建立所述图腾相对于所述世界系的未融合姿势;通过所述处理器执行比较器,以将所述融合姿势与所述未融合姿势进行比较;通过所述处理器执行漂移声明器,以仅在所述融合姿势距所述未融合姿势大于预定姿势的情况下声明漂移;通过所述处理器执行姿势校正例程,以仅在所述漂移被声明的情况下重置所述图腾imu的姿势以与所述未融合姿势匹配;接收来自数据源的图像数据;以及利用被连接到所述数据源的显示系统并使用所述图像数据向用户显示虚拟对象,所述虚拟对象的位置是基于所述图腾的所述融合姿势。
附图说明
10.通过参考附图进一步描述本发明,其中:
11.图1是示出了根据本发明的实施例的用户交互系统的透视图;
12.图2是示出了用户交互系统的组件的框图,该用户交互系统涉及头部单元和用于头部单元的视觉算法;
13.图3是用户交互系统的框图,该用户交互系统涉及图腾和用于图腾的视觉算法;
14.图4是示出了用户如何看到并感知真实和虚拟对象的前视图;
15.图5是在虚拟对象已经在用户的视图内漂移之后的与图4类似的视图;
16.图6是示出了融合位置随时间的漂移的透视图;
17.图7是示出了如何使用距离计算来校正漂移的曲线图;
18.图8是示出了如何通过检测融合位置与未融合位置之间的差异来校正漂移的曲线图;
19.图9是示出了如何校正漂移的透视图;以及
20.图10是根据本发明的一个实施例的可以在本发明系统中找到应用的计算机形式的机器的框图。
具体实施方式
21.根据本发明的实施例,附图中的图1示出了用户10、用户交互系统12、桌子形式的真实世界对象14和虚拟对象16,但是该虚拟对象16从图的角度不可见,但对用户10可见。
22.用户交互系统12包括头部单元18、腰带包20、网络22和服务器24。
23.头部单元18包括头部单元主体26和显示系统28。头部单元主体26具有适合用户10的头部的形状。显示系统28固定在头部单元主体26上。
24.腰带包20具有处理器和连接到该处理器的存储装置。视觉算法被存储在存储装置上,并且可由处理器执行。腰带包20通过电缆连接30通信地连接到显示系统28。腰带包20还包括网络接口装置,该网络接口装置允许腰带包20通过链路32与网络22无线连接。服务器24连接到网络22。
25.在使用中,用户10将头部单元主体26固定到他们的头部。显示系统28包括透明的光波导(未示出),使得用户10可以通过波导看到真实世界的对象14。
26.腰带包20可以通过网络22和链路32从服务器24下载图像数据。腰带包20通过电缆连接30将图像数据提供给显示系统28。显示系统28具有基于图像数据产生光的一个或多个投射器。光通过一个或多个光波导传播到用户10的眼睛。每个波导在相应眼睛的视网膜上以特定焦距产生光,以使得眼睛看到在显示系统28后面一定距离处的虚拟对象16。因此,眼睛在三维空间中看到虚拟对象16。另外,为每只眼睛产生略有不同的图像,以使得用户10的大脑在三维空间中感知虚拟对象16。因此,用户10在三维空间中看到被虚拟对象16增强的真实世界对象14。
27.用户交互系统12还包括图腾34。在使用时,用户10将图腾34握在他们两只手中的一只手中。虚拟对象16基于图腾34的定位而被定位在三维空间中。作为示例,图腾34可以是球拍的手柄,以及虚拟对象16可以包括球拍的头部。用户10可以在三维空间中以六个自由度来移动图腾34。图腾34由此相对于真实世界对象14和头部单元主体26在三维空间中移动。头部单元18内的各种组件和腰带包20跟踪图腾34的移动并使虚拟对象16与图腾34一起移动。因此,在用户10的视图中,球拍的头部保持被附接到手柄。
28.图2更详细地示出了显示系统28和视觉算法38。视觉算法38主要位于图1中的腰带包20内。在其他实施例中,视觉算法38可以完全位于头部单元内或者可以在头部单元和腰带包之间拆分。
29.图2进一步包括数据源40。在本示例中,数据源40包括存储在腰带包20的存储装置上的图像数据。图像数据可以是例如三维图像数据,该三维图像数据可以用于渲染虚拟对象16。在替代实施例中,图像数据可以是允许创建视频的时间序列图像数据,该视频在二维或三维上移动并且可以将其有目的地附接到图腾并可以位于真实世界对象上或者当用户移动其头部时位于用户前面的固定位置。
30.视觉算法38包括渲染引擎42、立体分析器44、显示调整算法46和同时定位和地图构建(slam)系统48。
31.渲染引擎42连接到数据源40和显示调整算法46。渲染引擎42能够接收来自各种系统,在本示例中为显示调整算法46,的输入并基于显示调整算法46将图像数据定位在要被用户10观看的系中。显示调整算法46连接到slam系统48。slam系统48能够接收图像数据、出于确定图像数据的图像内的对象的目的来分析图像数据、并记录图像数据内的对象的位
置。
32.立体分析器44连接到渲染引擎42。立体分析器44能够从渲染引擎42提供的数据流中确定左和右图像数据集。
33.显示系统28包括左投射器48a和右投射器48b、左波导50a和右波导50b以及检测装置52。左投射器48a和右投射器48b连接到电源。每个投射器48a或48b具有用于要被提供给相应的投射器48a或48b的图像数据的相应的输入。相应的投射器48a或48b在通电时生成二维图案的光并从中发出光。左波导50a和右波导50b被定位成分别接收来自左投射器48a和右投射器48b的光。左波导50a和右波导50b是透明波导。
34.检测装置52包括头部单元惯性运动单元(imu)60和一个或多个头部单元相机62。头部单元imu 60包括一个或多个陀螺仪和一个或多个加速度计。陀螺仪和加速度计通常形成在半导体芯片中,并且能够检测头部单元imu 60和头部单元主体26的运动,包括沿三个正交轴的运动以及绕三个正交轴的旋转。
35.头部单元相机62连续地从头部单元主体26周围的环境捕获图像。可以将图像彼此比较以检测头部单元主体26和用户10的头部的运动。
36.slam系统48连接到头部单元相机62。显示调整算法46连接到头部单元imu 60。本领域普通技术人员将理解,检测装置52与视觉算法38之间的连接通过硬件、固件和软件的组合来实现。视觉算法38的组件通过子例程或调用而彼此链接。
37.在使用中,用户10将头部单元主体26安装到他们的头部上。头部单元主体26的组件可以例如包括缠绕在用户10的头部的后部的带子(未示出)。然后,左波导50a和右波导50b位于用户10的左眼120a和右眼120b的前面。
38.渲染引擎42从数据源40接收图像数据。渲染引擎42将图像数据输入到立体分析器44中。该图像数据是图1中的虚拟对象16的三维图像数据。立体分析器44分析图像数据,以基于图像数据确定左图像数据集和右图像数据集。左图像数据集和右图像数据集是表示二维图像的数据集,这些二维图像彼此略有不同,以使用户10感知三维渲染。在本实施例中,图像数据是不随时间变化的静态数据集。
39.立体分析器44将左图像数据集和右图像数据集输入到左投射器48a和右投射器48b。左投射器48a和右投射器48b然后产生左光图案和右光图案。显示系统28的组件以平面图示出,但是应当理解,当以正视图示出时,左图案和右图案是二维图案。每个光图案包括多个像素。为了说明的目的,示出了来自两个像素的光线124a和126a,光线124a和126a离开左投射器48a并进入左波导50a。光线124a和126a从左波导50a的侧面反射。示出了光线124a和126a通过内部反射在左波导50a内从左向右传播,但是应当理解,光线124a和126a也使用折射和反射系统以向纸面中的方向传播。
40.光线124a和126a通过光瞳128a离开左光波导50a,并且然后通过左眼120a的瞳孔130a进入左眼120a。然后,光线124a和126a落在左眼120a的视网膜132a上。以这种方式,左光图案落在左眼120a的视网膜132a上。给用户10的感知是,在视网膜132a上形成的像素是用户10感知到处于左波导50a的与左眼120a相对的一侧上的一定距离处的像素134a和136a。通过操纵光的焦距产生深度感知。
41.以类似的方式,立体分析器44将右图像数据集输入到右投射器48b中。右投射器48b透射右光图案,该右光图案由光线124b和126b的形式的像素表示。光线124b和126b在右
波导50b内反射并通过光瞳128b出射。光线124b和126b然后通过右眼120b的瞳孔130b进入并且落在右眼120b的视网膜132b上。光线124b和126b的像素被感知为右波导50b后面的像素134b和136b。
42.在视网膜132a和132b上产生的图案被分别感知为左图像和右图像。由于立体分析器44的功能,左图像和右图像彼此略有不同。左图像和右图像在用户10的脑海中被感知为三维渲染。
43.如所提及的,左波导50a和右波导50b是透明的。来自左波导50a和右波导50b的与眼睛120a和120b相对的一侧的真实声明对象的光可以通过左波导50a和右波导50b投射并落在视网膜132a和132b上。特别地,来自图1中的真实世界对象14的光落在视网膜132a和132b上,以使得用户10可以看到真实世界对象14。附加地,用户10可以看到图腾34,并且增强现实被创建了,其中,通过虚拟对象16的三维渲染增强了真实世界对象14和图腾34,由于左图像和右图像组合地被用户10感知,该虚拟对象16的三维渲染被用户10感知。
44.头部单元imu 60检测用户10的头部的每个运动。例如,如果用户10逆时针移动他们的头部并且同时将他们的身体与他们的头部一起向右移动,则该移动将被头部单元imu 60中的陀螺仪和加速度计检测到。头部单元imu 60将来自陀螺仪和加速度计的测量提供给显示调整算法46。显示调整算法46计算放置值并将该放置值提供给渲染引擎42。渲染引擎42修改从数据源40接收到的图像数据,以补偿用户10的头部的运动。渲染引擎42将修改后的图像数据提供给立体分析器44,以显示给用户10。
45.头部单元相机62在用户10移动他们的头部时连续捕获图像。slam系统48分析图像并识别图像内的对象的图像。slam系统48分析对象的运动以确定头部单元主体26的姿势位置。slam系统48将姿势位置提供给显示调整算法46。显示调整算法46使用姿势位置来进一步细化显示调整算法46提供给渲染引擎42的放置值。渲染引擎42因此基于头部单元imu 60中的运动传感器和头部单元相机62拍摄的图像的组合来修改从数据源40接收的图像数据。通过实际示例的方式,如果用户10将其头部向右旋转,则虚拟对象16的位置在用户10的视图内向左旋转,从而给用户10虚拟对象16相对于真实世界对象14和图腾34保持静止的印象。
46.图3示出了头部单元18、图腾34和视觉算法38的进一步细节。头部单元18还包括被固定到头部单元主体26的电磁(em)接收器150。显示系统28、头部单元相机62和em接收器150安装在相对于头部单元主体26的固定位置处。如果用户10移动其头部,则头部单元主体26与用户10的头部一起移动并且显示系统28、头部单元相机62和em接收器150与头部单元主体26一起移动。
47.图腾34具有图腾主体152、em发射器154和图腾imu 156。em发射器154和图腾imu 156安装在相对于图腾主体152的固定位置处。用户10握着图腾主体152,并且当用户10移动图腾主体152时,em发射器154和图腾imu 156与图腾主体152一起移动。em发射器154能够发射em波,em接收器150能够接收em波。图腾imu 156具有一个或多个陀螺仪和一个或多个加速度计。陀螺仪和加速度计通常形成在半导体芯片中并且能够检测图腾imu 156和图腾主体152的移动,包括沿着三个正交轴的移动和绕三个正交轴的旋转。
48.除了参考图2描述的数据源40、渲染引擎42、立体分析器44和slam系统48之外,视觉算法38还包括融合例程160、未融合姿势确定建模器162、比较器164、漂移声明器
(declarer)166、姿势校正例程168和定序器170。
49.头部单元相机62捕获真实世界对象14的图像。真实世界对象14的图像由slam系统48处理以建立世界系(frame)172,如参考图2所描述的。图3中未示出slam系统48如何建立世界系172的细节,以免使附图不清楚。
50.em发射器154发射由em接收器150接收到的em波。em接收器150接收到的em波指示em发射器154的姿势或姿势的变化。em接收器150将em波的数据输入到融合例程160中。
51.图腾imu 156连续地监视图腾主体152的移动。来自图腾imu 156的数据被输入到融合例程160中。
52.定序器170以250hz的频率执行融合例程160。融合例程160将来自em接收器150的数据与来自图腾imu 156和来自slam系统48的数据组合。由em接收器150接收到的em波包括数据,该数据相对准确地表示em发射器154相对于em接收器150在六个自由度(“6dof”)上的姿势。然而,由于em测量噪声,所测量的em波可能不准确地表示em发射器154相对于em接收器150的姿势。em测量噪声可能导致图1中的虚拟对象16的抖动。将来自图腾imu 156的数据结合的目的是减少抖动。融合例程160在世界系172内提供融合姿势174。渲染引擎42使用融合姿势174以便使用来自数据源40的图像数据来确定图1中的虚拟对象16的姿势。
53.如图4所示,虚拟对象16被示出为相对于图腾34处于正确的姿势。此外,如果用户10移动图腾34,则虚拟对象16以最小抖动量与图腾34一起移动。
54.图腾imu 156基本上测量六个自由度中的加速度和角速率。加速度和角速率被积分(integrate)以确定图腾imu 156的位置和取向。由于积分误差,融合姿势174可能随时间漂移。
55.图5示出了虚拟对象16已经从其相对于图腾34的正确姿势漂移。漂移可能由所谓的“模型失配”引起,即,描述物理量(例如,6dof、加速度和角速率)与实际测量信号(诸如em波测量和imu信号)之间的关系的不完美数学模型。并且这样的漂移针对高动态运动可能被放大,该高动态运动甚至可以导致融合算法发散(即,虚拟对象想要从实际对象“吹远”)。在本示例中,虚拟对象16已经相对于图腾34向右漂移。图3中的融合姿势174基于的是系统相信了图腾34位于比其实际所处的位置更向右远离。因此必须对融合数据进行校正,使得虚拟对象16再次被放置在如图4所示的相对于图腾34的正确位置处。
56.在图3中,定序器170以240hz的频率执行未融合姿势确定建模器162。未融合姿势确定建模器162因此相对于融合例程160异步地执行。在本示例中,未融合姿势确定建模器162利用slam系统48来确定图腾34的位置。其他系统可以使用其他技术来确定图腾34的位置。
57.头部单元相机62例行地将图腾34的图像与诸如真实世界对象14的真实世界对象的图像一起捕获。由头部单元相机62捕获的图像被输入到slam系统48中。除了确定诸如真实世界对象14的真实世界对象的位置之外,slam系统48还确定图腾34的位置。如此,slam系统48建立图腾34相对于头部单元18的关系180。slam系统48还依赖于来自em接收器150的数据以用于建立关系180。
58.slam系统48还建立头部单元相对于世界系172的关系182。如前所述,融合例程60接收来自slam系统48的输入。融合例程使用头部单元与世界系的关系182,即,头部姿势,以作为图腾34的姿势的融合模型的计算的一部分。
59.通过从em接收器150的测量解出(solve)em偶极模型来建立图腾34与头部单元18的相对姿势。因此,两个关系180和182建立了图腾34在世界系172内的姿势。图腾34与世界系172的关系被存储为世界系172内的未融合姿势184。
60.比较器164与未融合姿势确定建模器162一起同步地执行。比较器164将融合姿势174与未融合位置184进行比较。然后比较器164将融合姿势174与未融合姿势184之间的差异输入到漂移声明器166中。漂移声明器166仅在融合姿势174与未融合姿势184之间的差异大于存储在视觉算法38内的预定最大距离188的情况下声明漂移。预定最大距离188通常小于100mm,并且优选地在30mm、20mm或更优选10mm量级上,并且该预定最大距离通过传感器融合系统的数据分析而被确定或调整。如果融合姿势174与未融合姿势184之间的差异小于预定最大距离188,则漂移声明器166不声明漂移。
61.当漂移声明器166声明漂移时,漂移声明器166进入姿势重置例程168。姿势重置例程168使用未融合姿势184来重置融合例程160中的融合姿势174,因此漂移被停止并且融合例程160重新开始姿势跟踪,其中漂移被消除。
62.图6示出了绑定(rig)系196、世界系172和融合姿势174之间的关系。绑定系196是表示头部单元18的头部系的数学对象。绑定系196位于波导50a与50b之间。在高动态运动场景中,融合姿势174可能由于实际em接收器测量的不完美建模而随时间(t1;t2;t3;t4)漂移。融合姿势174最初表示图腾34的实际姿势,但是在这样的高动态运动场景中,该融合姿势逐渐地不能表示图腾34的实际姿势,因为图腾34随时间从图腾34的实际姿势更远离地漂移。
63.图7示出了校正漂移的一种方法。图7中所示的方法具有基于距离的用户漂移检测阈值。作为示例,如果图腾34距头部单元18多于2米,则用户10不可能以这样的距离握住图腾34并且声明漂移。如果用户10可以例如将他们的手臂延伸0.5米,则系统将仅在漂移已经达到另外1.5米时声明漂移。这种大的漂移是不期望的。更期望的是更快地声明漂移的系统。
64.图8示出了根据图3中的实施例声明漂移的方式。如参考图3所述,未融合姿势确定建模器162以240hz的频率计算未融合姿势184。如上所述,如果融合姿势174与未融合位置184之间的差异是如上所述的100mm或更小,则可以声明漂移。在t1处,达到例如100mm的系统误差检测阈值,并且声明漂移。在t2处,立即校正漂移。因此,可以针对图8系统中的比图7系统中更小的距离误差来校正漂移。此外,在t3处可以再次校正漂移。因此,在图8系统中可以比在图7系统更频繁地校正漂移。
65.图9示出了如何校正漂移。在a处,在世界系172与绑定系196之间建立关系。绑定系196不位于与em接收器150相同的位置。由于工厂校准,em接收器150相对于绑定系196的位置是已知的。在b处,进行调整以相对于em接收器150的位置来计算绑定系196。在c处,对em接收器150相对于em发射器154的位置进行估计。如上所述,这样的估计可以使用slam系统48来进行。由于工厂校准,em发射器154的位置相对于图腾imu 156的位置是已知的。在d处,进行调整以确定图腾imu 156相对于em发射器154的位置。因此,在a、b、c和d处进行的计算建立了图腾imu 156在世界系172中的位置。然后可以基于所计算的图腾imu 156在世界系172中的位置来重置图腾imu 156的姿势。
66.图10示出了根据一些实施例的以计算机系统900的示例性形式的机器的示意图,
在该计算机系统内,可以执行一组指令以使该机器执行本文所讨论的方法中的任何一个或多个。在替代实施例中,该机器作为独立的装置操作,或者可以连接(例如联网)到其他机器。此外,虽然仅示出了单个机器,但是术语“机器”也应被理解为包括机器的任何集合,这些机器单独地或共同地执行一组(或多组)指令以执行本文讨论的方法中的任何一个或多个。
67.示例性计算机系统900包括通过总线908彼此通信的处理器902(例如,中央处理单元(cpu)、图形处理单元(gpu)或两者);主存储器904(例如,只读存储器(rom)、闪存、诸如同步dram(sdram)或rambus dram(rdram)的动态随机存取存储器(dram)等);以及静态存储器906(例如,闪存、静态随机存取存储器(sram)等)。
68.计算机系统900还可以包括磁盘驱动单元916和网络接口装置920。
69.磁盘驱动单元916包括机器可读介质922,其上存储着体现本文所述的方法或功能中的任何一个或多个的一组或多组指令924(例如,软件)。在由计算机系统900执行期间,软件还可以全部或至少部分地驻留在主存储器904内和/或处理器902内,主存储器904和处理器902也构成机器可读介质。
70.软件还可以经由网络接口装置920在网络928上发送或接收。
71.计算机系统900包括激光驱动器芯片950,其用于驱动投射器以生成激光。激光驱动器芯片950包括其自身的数据存储器960和其自身的处理器962。
72.尽管在示例性实施例中将机器可读介质922示出为单个介质,但是术语“机器可读介质”应被认为包括存储一组或多组指令的单个介质或多个介质(例如,集中式或分布式数据库和/或相关联的缓存和服务器)。术语“机器可读介质”也应被认为包括能够存储、编码或携带一组指令以供机器执行并且使机器执行本发明的方法中的任意一个或多个的任何介质。因此,术语“机器可读介质”应被认为包括但不限于固态存储器、光学和磁性介质以及载波信号。
73.尽管已经描述并在附图中示出了某些示例性实施例,但是应当理解,这些实施例仅是说明性的,并且不限制本发明,并且本发明不限于所示出和所描述的特定构造和布置,因为本领域的普通技术人员可以进行修改。
技术特征:
1.一种用户交互系统,包括:图腾,其具有:图腾主体;以及位于所述图腾主体上的图腾惯性测量单元imu,其用于生成由所述图腾的移动引起的图腾imu信号;头部单元;处理器;被连接到所述处理器的存储装置;在所述存储装置上并且可由所述处理器执行的一组指令,包括:世界系;被连接到所述图腾imu的可执行例程,其用于基于所述图腾imu数据来生成所述图腾在所述世界系中的第一位置;位置确定建模器,其确定所述图腾相对于所述世界系的第二位置;被连接到所述第一位置和所述第二位置的位置校正例程,其用于重置所述图腾imu的传感器以与所述第二位置匹配;数据源,其用于携带图像数据;以及被连接到所述数据源的显示系统,其用于使用所述图像数据向用户显示虚拟对象,所述虚拟对象的位置是基于所述图腾的所述第一位置。2.根据权利要求1所述的用户交互系统,还包括:被连接到所述第一位置和所述第二位置的比较器;被连接到所述比较器的漂移声明器,其用于仅在所述第一位置距所述第二位置大于预定距离的情况下声明漂移;被连接到所述漂移声明器的位置校正例程,其用于仅在所述漂移被声明的情况下重置所述图腾imu的传感器以与所述第二位置匹配。3.根据权利要求1所述的用户交互系统,其中,所述位置确定建模器确定所述图腾相对于所述头部单元的位置和所述头部单元相对于所述世界系的位置,以建立所述图腾相对于所述世界系的第二位置。4.根据权利要求1所述的用户交互系统,还包括:渲染引擎,其具有被连接到数据通道以接收所述图像数据的输入和到所述显示系统的输出,所述渲染引擎向所述显示系统提供数据流,所述显示系统包括处于所述第一位置的所述虚拟对象。5.根据权利要求1所述的用户交互系统,其中,所述图腾imu减少所述虚拟对象的抖动。6.根据权利要求1所述的用户交互系统,其中,所述图腾imu包括陀螺仪和加速度计中的至少一种。7.根据权利要求1所述的用户交互系统,其中,所述图腾包括:在所述图腾主体上的电磁em发射器;其中,所述头部单元包括:头部单元主体;以及在所述头部单元主体上的em接收器,其用于接收由所述em发射器发射的em波,所述em
波指示所述图腾的位置;其中,所述可执行例程是融合例程,所述融合例程被连接到所述em接收器和所述图腾imu,以生成所述第一位置,所述第一位置是基于所述em波与所述图腾imu数据的组合的所述图腾在所述世界系中的融合位置;其中,所述位置确定建模器是未融合位置确定建模器,所述未融合位置确定建模器确定所述图腾相对于所述头部单元的位置和所述头部单元相对于所述世界系的位置,以建立所述第二位置,所述第二位置是所述图腾相对于所述世界系的未融合位置;以及其中,所述虚拟对象的位置是基于所述图腾的所述融合位置。8.根据权利要求7所述的用户交互系统,其中,所述融合例程以第一频率执行,以及所述未融合位置确定建模器以不同于所述第一频率的第二频率执行。9.根据权利要求7所述的用户交互系统,其中,所述em接收器检测所述em发射器相对于所述em接收器的六自由度(“6dof”)移动。10.根据权利要求7所述的用户交互系统,其中,所述预定距离小于100mm。
技术总结
本发明总体上涉及一种用户交互系统,其具有用于用户佩戴的头部单元和用户握在手中并且确定由用户看到的虚拟对象的位置的图腾。融合例程基于EM波和图腾IMU数据的组合来生成图腾在世界系中的融合位置。融合姿势可能由于传感器模型失配而随时间漂移。未融合姿势确定建模器例行地建立图腾相对于世界系的未融合姿势。当融合姿势与未融合姿势之间的差异大于预定最大距离时,声明漂移。声明漂移。声明漂移。
技术研发人员:万胜
受保护的技术使用者:奇跃公司
技术研发日:2019.07.26
技术公布日:2023/10/5
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
飞机超市 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/