位姿更新方法、装置、输入设备及存储介质与流程

文档序号:33034247发布日期:2023-01-24 18:37阅读:28来源:国知局
位姿更新方法、装置、输入设备及存储介质与流程

1.本发明涉及虚拟现实领域,尤其涉及一种位姿更新方法、位姿更新装置、输入设备及计算机可读存储介质。


背景技术:

2.随着虚拟现实技术的发展,越来越多的人们开始使用虚拟现实设备。其中输入设备如手柄或者hmd(head mounted displays,头戴式显示器)作为目前vr(virtual reality,虚拟现实)设备主流的交互工具,而定位的主流实现方案还是基于光学追踪进行手柄或者hmd的位姿更新,用户在vr场景交互体验过程中,光学追踪方案存在手柄或者hmd位置抖动的情况。


技术实现要素:

3.本发明的主要目的在于提供一种位姿更新方法、位姿更新装置、输入设备及计算机可读存储介质,旨在解决现有技术中如何降低基于光学追踪的输入设备在使用过程中的抖动的技术问题。
4.为实现上述目的,本发明提供一种位姿更新方法,所述位姿更新方法应用于基于光学追踪的输入设备;所述位姿更新方法包括:
5.获取所述输入设备的像素坐标和三维坐标;
6.在所述像素坐标和所述三维坐标不匹配时,对当前帧的所述输入设备的位姿进行更新,得到位姿更新后的位姿,并基于更新后的位姿在虚拟现实画面中显示虚拟输入设备。
7.可选地,所述对当前帧的所述输入设备的位姿进行更新的步骤,包括:
8.获取与所述输入设备配套的虚拟现实显示设备的屏幕刷新率;
9.根据所述屏幕刷新率对当前帧的所述输入设备的位姿进行更新。
10.可选地,所述根据所述屏幕刷新率对当前帧的所述输入设备的位姿进行更新的步骤,包括:
11.确定更新权重和相邻两帧之间待更新的单位距离,并基于所述屏幕刷新率确定更新速度;
12.基于所述更新权重、单位距离和所述更新速度确定当前帧更新后的输入设备位姿。
13.可选地,所述更新权重包括光学相关的第一权重、传输相关的第二权重和计算相关的第三权重,所述确定更新权重的步骤,包括:
14.确定光学权重,并根据所述光学权重和所述光学权重对应的光学系数确定得到所述第一权重;
15.确定传输权重,并根据所述传输权重和所述传输权重对应的传输系数确定得到所述第二权重;
16.确定计算权重,并根据所述计算权重和所述计算权重对应的计算系数确定得到所
述第三权重;
17.基于所述第一权重、所述第二权重和所述第三权重确定得到所述更新权重。
18.可选地,所述确定光学权重的步骤,包括:
19.基于光源数量、重投影误差、光源置信度以及各自对应的光源数量系数、重投影误差系数、光源置信度系数,确定得到所述光学权重。
20.可选地,所述确定传输权重的步骤,包括:
21.基于丢包率、相邻两帧之间的时间间隔以及各自对应的丢包率系数、时间间隔系数,确定得到所述传输权重。
22.可选地,所述确定计算权重的步骤,包括:
23.基于相邻两帧之间的数据量,确定得到所述计算权重;
24.若所述数据量大于预设数据量阈值,则确定所述计算权重为预设值;
25.若所述数据量不大于预设数据量阈值,则基于预设线性相关关系确定得到所述计算权重。
26.此外,为实现上述目的,本发明还提供一种位姿更新装置,所述位姿更新装置,包括:
27.获取模块,用于获取输入设备的像素坐标和三维坐标;
28.更新模块,用于在所述像素坐标和所述三维坐标不匹配时,对当前帧的所述输入设备的位姿进行更新,得到位姿更新后的位姿,并基于更新后的位姿在虚拟现实画面中显示虚拟输入设备。
29.此外,为实现上述目的,本发明还提供一种输入设备,所述输入设备包括:采集所述输入设备的像素坐标的相机、采集所述输入设备的三维坐标的惯性测量单元、存储器、处理器、及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如上任一项所述的位姿更新方法的步骤。
30.此外,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上任一项所述的位姿更新方法的步骤。
31.本发明实施例提出的一种位姿更新方法、位姿更新装置、输入设备及计算机可读存储介质,所述位姿更新方法应用于基于光学追踪的输入设备;所述位姿更新方法包括:获取所述输入设备的像素坐标和三维坐标;在所述像素坐标和所述三维坐标不匹配时,对当前帧的所述输入设备的位姿进行更新,得到位姿更新后的位姿,并基于更新后的位姿在虚拟现实画面中显示虚拟输入设备。
32.在输入设备的像素坐标和三维坐标不匹配时,在输入设备的抖动严重影响到用户的正常使用时,通过对当前帧的输入设备的位姿进行更新,基于更新后的位姿在虚拟现实中展示虚拟输入设备,从而根据实时数据计算的结果,保证最后输入设备稳定效果的呈现。从而可以使输入设备的位姿更新在场景中更流畅和更稳定,满足用户在虚拟世界中的交互操作,提升用户的虚拟现实体验。
附图说明
33.图1是本发明实施例方案涉及的硬件运行环境的终端结构示意图;
34.图2为本发明位姿更新方法一实施例的流程示意图;
35.图3为本发明位姿更新方法一实施例的位姿更新的数据流程图;
36.图4为本发明位姿更新方法一实施例的相关性示意图;
37.图5为本发明位姿更新装置一实施例的装置示意图。
38.本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
39.应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
40.参照图1,图1为本发明实施例方案涉及的硬件运行环境的运行设备的结构示意图。
41.如图1所示,该运行设备可以包括:处理器1001,例如中央处理器(central processing unit,cpu),通信总线1002、用户接口1003,网络接口1004,存储器1005。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(display)、输入单元比如键盘(keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如无线保真(wlreless-fldelity,wi-fi)接口)。存储器1005可以是高速的随机存取存储器(random access memory,ram)存储器,也可以是稳定的非易失性存储器(non-volatile memory,nvm),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
42.本领域技术人员可以理解,图1中示出的结构并不构成对运行设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
43.如图1所示,作为一种存储介质的存储器1005中可以包括操作系统、数据存储模块、网络通信模块、用户接口模块以及计算机程序。
44.在图1所示的运行设备中,网络接口1004主要用于与其他设备进行数据通信;用户接口1003主要用于与用户进行数据交互;本发明运行设备中的处理器1001、存储器1005可以设置在运行设备中,所述运行设备通过处理器1001调用存储器1005中存储的计算机程序,并执行以下操作:
45.获取所述输入设备的像素坐标和三维坐标;
46.在所述像素坐标和所述三维坐标不匹配时,对当前帧的所述输入设备的位姿进行更新,得到位姿更新后的位姿,并基于更新后的位姿在虚拟现实画面中显示虚拟输入设备。
47.进一步地,处理器1001可以调用存储器1005中存储的计算机程序,还执行以下操作:
48.所述对当前帧的所述输入设备的位姿进行更新的步骤,包括:
49.获取与所述输入设备配套的虚拟现实显示设备的屏幕刷新率;
50.根据所述屏幕刷新率对当前帧的所述输入设备的位姿进行更新。
51.进一步地,处理器1001可以调用存储器1005中存储的计算机程序,还执行以下操作:
52.所述根据所述屏幕刷新率对当前帧的所述输入设备的位姿进行更新的步骤,包括:
53.确定更新权重和相邻两帧之间待更新的单位距离,并基于所述屏幕刷新率确定更
新速度;
54.基于所述更新权重、单位距离和所述更新速度确定当前帧更新后的输入设备位姿。
55.进一步地,处理器1001可以调用存储器1005中存储的计算机程序,还执行以下操作:
56.所述更新权重包括光学相关的第一权重、传输相关的第二权重和计算相关的第三权重,所述确定更新权重的步骤,包括:
57.确定光学权重,并根据所述光学权重和所述光学权重对应的光学系数确定得到所述第一权重;
58.确定传输权重,并根据所述传输权重和所述传输权重对应的传输系数确定得到所述第二权重;
59.确定计算权重,并根据所述计算权重和所述计算权重对应的计算系数确定得到所述第三权重;
60.基于所述第一权重、所述第二权重和所述第三权重确定得到所述更新权重。
61.进一步地,处理器1001可以调用存储器1005中存储的计算机程序,还执行以下操作:
62.所述确定光学权重的步骤,包括:
63.基于光源数量、重投影误差、光源置信度以及各自对应的光源数量系数、重投影误差系数、光源置信度系数,确定得到所述光学权重。
64.进一步地,处理器1001可以调用存储器1005中存储的计算机程序,还执行以下操作:
65.所述确定传输权重的步骤,包括:
66.基于丢包率、相邻两帧之间的时间间隔以及各自对应的丢包率系数、时间间隔系数,确定得到所述传输权重。
67.进一步地,处理器1001可以调用存储器1005中存储的计算机程序,还执行以下操作:
68.所述确定计算权重的步骤,包括:
69.基于相邻两帧之间的数据量,确定得到所述计算权重;
70.若所述数据量大于预设数据量阈值,则确定所述计算权重为预设值;
71.若所述数据量不大于预设数据量阈值,则基于预设线性相关关系确定得到所述计算权重。
72.参照图2,本发明提供一种位姿更新方法,所述位姿更新方法应用于基于光学追踪的输入设备;所述位姿更新方法包括:
73.步骤s10,获取所述输入设备的像素坐标和三维坐标。
74.进一步的,获取所述输入设备的像素坐标的步骤,包括:基于tof相机采集所述输入设备的像素坐标。其中,采用led驱动初始化之后,使led灯进行发光,相机采集光线反射图像得到特征点集合,并经过高斯滤波、二值化、roi(region of interest,感兴趣区域)提取、连通域特征提取等操作之后,计算得到led中心坐标,也就是计算得到所述输入设备的像素坐标。
75.进一步的,获取所述输入设备的三维坐标的步骤,包括:采用用于测量物体三轴姿态角或角速率以及加速度的imu(inertial measurement unit,惯性测量单元)初始化之后,采集imu数据并进行离线校正,并通过互补滤波、数据打包处理之后进行无线传输。其中,所述输入设备在接收到无线传输的imu数据之后对其进行解析并进行位姿解算,并计算得到位姿增量。将其中的某一时刻的位姿或者某一时间段的位姿增量作为三维坐标,并将所述输入设备的三维坐标和像素坐标进行匹配。
76.进一步的,在所述像素坐标和所述三维坐标匹配时,根据像素坐标和所述三维坐标进行pnp计算,得到最终的所述输入设备的位姿。其中,pnp(perspective-n-points)计算是指3d(三维)到2d(二维)点对的物体运动定位问题,即已知物体在世界坐标系下的坐标,以及物体在相机的图像平面的像素坐标,求解相机的位姿(六个自由度,位置坐标和三个方向角)。在所述像素坐标和所述三维坐标匹配时,所述输入设备的抖动处于正常范围,就不需要根据所述像素坐标对所述三维坐标进行补偿,可以直接计算得到最终的所述输入设备的的位姿并输出给虚拟现实设备的上层应用。
77.步骤s20,在所述像素坐标和所述三维坐标不匹配时,对当前帧的所述输入设备的位姿进行更新,得到位姿更新后的位姿,并基于更新后的位姿在虚拟现实画面中显示虚拟输入设备。
78.在所述像素坐标和所述三维坐标不匹配时,无法直接根据像素坐标和所述三维坐标进行pnp计算,得到最终的所述输入设备的位姿,或者说pnp计算得到的最终的所述输入设备的位姿是不准确的,也说明输入设备的抖动严重影响到用户的正常使用,此时便需要通过对当前帧的输入设备的位姿进行更新,需要根据所述像素坐标对所述三维坐标进行补偿。从而可以基于更新后的位姿在虚拟现实中展示虚拟输入设备,进而根据实时数据计算的结果,保证最后输入设备稳定效果的呈现。
79.在本实施例中,获取所述输入设备的像素坐标和三维坐标;在所述像素坐标和所述三维坐标不匹配时,对当前帧的所述输入设备的位姿进行更新,得到位姿更新后的位姿,并基于更新后的位姿在虚拟现实画面中显示虚拟输入设备。
80.在输入设备的像素坐标和三维坐标不匹配时,在输入设备的抖动严重影响到用户的正常使用时,通过对当前帧的输入设备的位姿进行更新,基于更新后的位姿在虚拟现实中展示虚拟输入设备,从而根据实时数据计算的结果,保证最后输入设备稳定效果的呈现。从而可以使输入设备的位姿更新在场景中更流畅和更稳定,满足用户在虚拟世界中的交互操作,提升用户的虚拟现实体验。
81.可选地,所述对当前帧的所述输入设备的位姿进行更新的步骤,包括:
82.获取与所述输入设备配套的虚拟现实显示设备的屏幕刷新率;
83.根据所述屏幕刷新率对当前帧的所述输入设备的位姿进行更新。
84.进一步的,参照图3,影响所述输入设备的稳定性的关键因素是单位时间内位姿欧式距离更新的阈值以及频率。其中,图3中hmd进行“led匹配”的计算输出影响的是位姿欧式距离,图3中控制器controller的“无线传输”的丢包率影响的是单位时间内更新的距离插值数量,如果二者不匹配、存在误差,则上层应用需要根据各阶段的影响,进行场景位姿刷新的呈现控制,最终得到经过位姿更新优化后的位姿数据。其中,控制方法主要是依据与所述输入设备配套的虚拟现实显示设备的屏幕刷新率进行插值补充,减少led和无线传输的
影响,从而达到保证所述输入设备的位姿稳定性的效果。
85.可选地,所述根据所述屏幕刷新率对当前帧的所述输入设备的位姿进行更新的步骤,包括:
86.确定更新权重和相邻两帧之间待更新的单位距离,并基于所述屏幕刷新率确定更新速度;
87.基于所述更新权重、单位距离和所述更新速度确定当前帧更新后的输入设备位姿。
88.虚拟现实设备的上层应用根据以下公式,进行相邻两帧之间所述输入设备的位姿更新:p
c,fps
=v*wr*d
欧拉
。其中,p
c,fps
是当前帧的输入设备位姿,为求解目标,v是基于所述屏幕刷新率确定的更新速度,wr是表示所述输入设备的位姿精度和稳定性的更新权重,d
欧拉
表示相邻两帧之间待更新的单位距离。
89.可选地,所述更新权重包括光学相关的第一权重、传输相关的第二权重和计算相关的第三权重,所述确定更新权重的步骤,包括:
90.确定光学权重,并根据所述光学权重和所述光学权重对应的光学系数确定得到所述第一权重;
91.确定传输权重,并根据所述传输权重和所述传输权重对应的传输系数确定得到所述第二权重;
92.确定计算权重,并根据所述计算权重和所述计算权重对应的计算系数确定得到所述第三权重;
93.基于所述第一权重、所述第二权重和所述第三权重确定得到所述更新权重。
94.在确定更新权重时,根据如下公式wr=x1*w
led
+x2*w
wireless
+x3*w
6dof cal
进行计算,其中,x1*w
led
表示第一权重,w
led
表示光学权重,x1表示光学权重对应的光学系数;x2*w
wireless
表示第二权重,w
wireless
表示传输权重,x2表示传输权重对应的传输系数;x3*w
6dof cal
表示第二权重,w
6dof cal
表示计算权重,x3计算权重对应的计算系数。基于第一权重x1*w
led
、第二权重x2*w
wireless
和第三权重x3*w
6dof cal
确定得到更新权重wr。
95.其中,0《x1、x2、x3《=1,x1+x2+x3《=3,且x1、x2、x3的取值受对应的权重w
led
、w
wireless
、w
6dof cal
的值的影响,而w
led
、w
wireless
、w
6dof cal
的值根据每个过程进行自动计算得到,计算结果在模式匹配中越高,则对应的x1、x2、x3的值越大。
96.可选地,所述确定光学权重的步骤,包括:
97.基于光源数量、重投影误差、光源置信度以及各自对应的光源数量系数、重投影误差系数、光源置信度系数,确定得到所述光学权重。
98.在确定光学权重w
led
时,根据如下公式w
led
=0.5*y1+0.3*y2+0.2*y3进行计算。其中,当y1=识别的led灯数量》4;y2=重投影误差《1mm;y3=灯珠置信度排名》90%,对应的y1y2y3均等于1,否则按照既定预设的取值表进行y值的选择和取值。
99.进一步的,各自对应的光源数量系数、重投影误差系数、光源置信度系数不是固定的,是基于当前系统测试得到的稳定经验值,y1y2y3是影响因素,对应的系数是根据线性相关关系计算得到的线性相关系数。
100.进一步的,所述线性相关关系如下:
[0101][0102]
,其中,表示平均值,xi、yi表示不同时刻的采集值,所述线性相关关系为计算相关性的一般公式。
[0103]
进一步的,所述根据线性相关关系计算得到的线性相关系数的步骤,包括:根据所述线性相关关系计算得到相关性,根据所述相关性和预设对照表确定得到所述线性相关系数。其中,参照如图4所示的预设对照表,
[0104][0105]
在根据上述线性相关关系计算得到相关性等级之后,根据不同的相关性等级在上述预设对照表中确定相关系数y的取值范围,在确定的取值范围内确定一个最终的系数。在本实施例中,对从取值范围中确定一个最终的系数的方式不做限定,可以是基于当前系统测试得到的稳定经验值。
[0106]
可选地,所述确定传输权重的步骤,包括:
[0107]
基于丢包率、相邻两帧之间的时间间隔以及各自对应的丢包率系数、时间间隔系数,确定得到所述传输权重。
[0108]
在确定传输权重w
wireless
时,根据如下公式w
wireless
=0.5*y1+0.5*y2进行计算。其中,当y1=丢包率《5%;y2=两帧之间的时间间隔《2ms;对应的y1y2等于1,否则按照既定的y取值表进行y值的选择,具体的取值选择方式与上述光学权重w
led
的取值选择方式类似,在此不做赘述。
[0109]
可选地,所述确定计算权重的步骤,包括:
[0110]
基于相邻两帧之间的数据量,确定得到所述计算权重;
[0111]
若所述数据量大于预设数据量阈值,则确定所述计算权重为预设值;
[0112]
若所述数据量不大于预设数据量阈值,则基于预设线性相关关系确定得到所述计算权重。
[0113]
在确定计算权重w
6dof cal
时,根据如下公式w
6dof cal
=y1进行计算。其中,y=前后两帧led计算结果之间imu的数据量,即相邻两帧之间的imu数据的个数,如果y1》30,则对应的y1=1,否则按照既定的y取值表进行y值的选择,具体的取值选择方式与上述光学权重w
led
的取值选择方式类似,在此不做赘述。
[0114]
此外,参照图5,本发明实施例还提供一种位姿更新装置,所述位姿更新装置,包括:
[0115]
获取模块m1,用于获取输入设备的像素坐标和三维坐标;
[0116]
更新模块m2,用于在所述像素坐标和所述三维坐标不匹配时,对当前帧的所述输入设备的位姿进行更新,得到位姿更新后的位姿,并基于更新后的位姿在虚拟现实画面中
显示虚拟输入设备。
[0117]
可选的,更新模块,还用于获取与所述输入设备配套的虚拟现实显示设备的屏幕刷新率;
[0118]
根据所述屏幕刷新率对当前帧的所述输入设备的位姿进行更新。
[0119]
可选的,更新模块,还用于确定更新权重和相邻两帧之间待更新的单位距离,并基于所述屏幕刷新率确定更新速度;
[0120]
基于所述更新权重、单位距离和所述更新速度确定当前帧更新后的输入设备位姿。
[0121]
可选的,更新模块,还用于确定光学权重,并根据所述光学权重和所述光学权重对应的光学系数确定得到所述第一权重;
[0122]
确定传输权重,并根据所述传输权重和所述传输权重对应的传输系数确定得到所述第二权重;
[0123]
确定计算权重,并根据所述计算权重和所述计算权重对应的计算系数确定得到所述第三权重;
[0124]
基于所述第一权重、所述第二权重和所述第三权重确定得到所述更新权重。
[0125]
可选的,更新模块,还用于基于光源数量、重投影误差、光源置信度以及各自对应的光源数量系数、重投影误差系数、光源置信度系数,确定得到所述光学权重。
[0126]
可选的,更新模块,还用于基于丢包率、相邻两帧之间的时间间隔以及各自对应的丢包率系数、时间间隔系数,确定得到所述传输权重。
[0127]
可选的,更新模块,还用于基于相邻两帧之间的数据量,确定得到所述计算权重;
[0128]
若所述数据量大于预设数据量阈值,则确定所述计算权重为预设值;
[0129]
若所述数据量不大于预设数据量阈值,则基于预设线性相关关系确定得到所述计算权重。
[0130]
本发明提供的位姿更新装置,采用上述实施例中的位姿更新方法,解决现有技术中如何降低基于光学追踪的输入设备在使用过程中的抖动的技术问题。与现有技术相比,本发明实施例提供的位姿更新装置的有益效果与上述实施例提供的位姿更新方法的有益效果相同,且该位姿更新装置中的其他技术特征与上述实施例方法公开的特征相同,在此不做赘述。
[0131]
此外,本发明实施例还提供一种输入设备,所述输入设备包括:采集所述输入设备的像素坐标的相机、采集所述输入设备的三维坐标的惯性测量单元、存储器、处理器、及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如上任一项所述的位姿更新方法的步骤。
[0132]
此外,本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上任一项所述的位姿更新方法的步骤。
[0133]
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括该
要素的过程、方法、物品或者系统中还存在另外的相同要素。
[0134]
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
[0135]
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
[0136]
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1