一种VR头戴显示设备中视觉惯性里程计的在线标定方法与流程

文档序号:21187413发布日期:2020-06-20 18:13阅读:188来源:国知局
一种VR头戴显示设备中视觉惯性里程计的在线标定方法与流程

本发明涉及一种vr头戴显示设备中视觉惯性里程计的在线标定方法,属于计算机视觉、虚拟现实(vr)技术领域。



背景技术:

近年来,随着vr技术的发展,消费级的vr头显设备越来越普遍。在vr应用中,对头戴显示设备运动状态的准确追踪,能够增加vr内容带来的沉浸感,提升消费级vr产品的用户体验。基于视觉的、视觉惯性融合的内向外定位追踪技术方案,可使用成本低廉的相机传感器和惯性传感器获取丰富的应用场景环境信息,提供较为准确的vr头显设备位姿,在目前的消费级vr头显设备中取得了广泛应用。

廉价的相机传感器和惯性传感器存在较大的畸变、噪声等问题。部分传感器内外参数会受外界环境诸如温度、震动等变化的影响。



技术实现要素:

本发明提供一种vr头戴显示设备中视觉惯性里程计的在线标定方法,通过其对应的内外参数修正,可使传感器提供更优质的测量值,提升定位追踪系统的准确度。采用随vr应用一并运行的视觉惯性传感器在线标定系统,可以保证消费级vr头显设备的追踪精度。

本发明采取的技术方案是,一种vr头戴显示设备中视觉惯性里程计的在线标定方法,包括以下步骤:1)处理设备获取相机的外部参数初值、惯性测量单元200的外部参数初值;2)处理设备获取vr头显设备的历史位姿;3)在处理设备中对相机的外部参数、惯性测量单元200的外部参数进行在线更新;4)利用处理设备获得的vr头显设备的历史位姿对惯性测量单元200的内部参数进行在线优化更新;所述惯性测量单元200包括加速度计和陀螺仪;所述相机包括首个相机(101)和额外相机(102);

所述相机的外部参数初值、惯性测量单元200的外部参数包括:首个相机与惯性测量单元200的相对位姿、额外相机(102)与首个相机(101)的相对位姿、相机与惯性测量单元200输出采样数据的时差;

所述惯性测量单元200的内部参数包括:加速度计的三轴倾斜、刻度因子、零点偏移,陀螺仪的三轴倾斜、刻度因子、零点偏移。

优化的,上述vr头戴显示设备中视觉惯性里程计的在线标定方法,所述处理设备包括视觉惯性里程计、视觉里程计;或者处理设备为处理器(300),处理器(300)内集成有视觉惯性里程计、视觉里程计;在vr头显设备初始化阶段,处理设备获取相机的外部参数初值、惯性测量单元200的外部参数初值,此时获取的相机的外部参数初值、惯性测量单元200的外部参数初值包括:通过视觉里程计获取所述相机的多个位姿;通过所述惯性测量单元200测量数据进行姿态解算获取其多个位姿;利用同时间戳的相机和惯性测量单元200的多个位姿优化获得额外相机(102)与首个相机(101)之间、惯性测量单元200与额外相机(102)之间、惯性测量单元200与首个相机(101)之间的外部参数初值。

优化的,上述vr头戴显示设备中视觉惯性里程计的在线标定方法,获得所述额外相机(102)与首个相机(101)之间外部参数初值的过程包括如下步骤:

5)定义额外相机(102)的坐标系到首个相机(101)的坐标系的变换矩阵;

6)利用步骤5)得到的变换矩阵将首个相机(101)的位姿转换到额外相机(102)的坐标系下;

获得所述首个相机(101)与惯性测量单元200外部参数初值、额外相机(102)与惯性测量单元200外部参数初值包括如下过程:

7)定义额外相机(102)坐标系到惯性测量单元200坐标系的变换矩阵;

8)利用额外相机(102)坐标系到惯性测量单元200坐标系的变换矩阵将额外相机(102)的位姿转换到惯性测量单元200的坐标系下。

优化的,上述vr头戴显示设备中视觉惯性里程计的在线标定方法,获得所述额外相机(102)与首个相机(101)之间外部参数初值的过程中还包含以下步骤:

9)统计多组额外相机(102)位姿与首个相机(101)位姿的绝对误差,并获得额外相机(102)位姿与首个相机(101)位姿的最小化位姿误差;统计的额外相机(102)位姿与首个相机(101)位姿的绝对误差包括旋转误差和平移误差;

10)以步骤7)获得的最小化位姿误差为优化目标,利用数值计算方法解算获得外部参数变换矩阵的最优值;

获得所述首个相机(101)与惯性测量单元200外部参数初值、额外相机(102)与惯性测量单元200外部参数初值的过程中还包含以下步骤:

统计额外相机(102)位姿与惯性测量单元200位姿的绝对误差,其中包括统计额外相机(102)位姿与惯性测量单元200位姿的旋转误差、平移误差;

12)定义首个相机(101)与惯性测量单元200输出数据的时差,定义额外相机(102)与惯性测量单元200输出数据的时差;

13)将惯性测量单元200测量数据姿态解算所得速度与时差乘积,参与构建首个相机(101)、额外相机(102)图像的重投影误差;

14)以步骤11)、步骤12)、步骤13)获得的最小化位姿误差与重投影误差之和为优化目标,利用数值计算方法解算获得外部参数的最优值。

优化的,上述vr头戴显示设备中视觉惯性里程计的在线标定方法,所述视觉里程计是基于最小化重投影误差或最小化光度误差对首个相机(101)和额外相机(102)的位姿进行优化的。

优化的,上述vr头戴显示设备中视觉惯性里程计的在线标定方法,所述视觉惯性里程计是基于扩展卡尔曼滤波、无迹卡尔曼滤波或基于最小化误差函数对所述首个相机(101)、额外相机(102)和惯性测量单元200的外部参数进行迭代更新的;所述外部参数作为视觉惯性里程计的系统状态。

优化的,上述vr头戴显示设备中视觉惯性里程计的在线标定方法,在步骤4)中利用处理设备获得的vr头显设备的历史位姿对惯性测量单元200的内部参数进行在线优化更新,包括通过惯性测量单元200测量数据进行姿态解算获得位姿变化;将通过惯性测量单元200测量数据进行姿态解算获得的位姿变化进行最小化,并通过最小化的该位姿变化、视觉惯性里程计输出值间的绝对误差对惯性测量单元200的内部参数进行迭代优化。

优化的,上述vr头戴显示设备中视觉惯性里程计的在线标定方法,通过最小化的该位姿变化、视觉惯性里程计输出值间的绝对误差对惯性测量单元200的内部参数进行迭代优化包括如下过程:

15)定义惯性测量单元200内部参数更新矩阵;

16)选择惯性测量单元200测量数据,利用更新矩阵表示的惯性测量单元200测量数据解算所得惯性测量单元200位姿;

17)选择惯性测量单元200位姿对应时间戳的视觉惯性里程计输出位姿;

18)将惯性测量单元200位姿通过外部参数转换到视觉惯性里程计同一坐标系下,以惯性测量单元200坐标系作为视觉惯性里程计坐标系的情况可以省略该步骤;

19)统计惯性测量单元200位姿与视觉惯性里程计输出位姿的绝对误差,包含旋转误差和平移误差;

20)以最小化位姿绝对误差为优化目标,利用数值方法解算获得内部参数更新矩阵的最优值。

优化的,上述vr头戴显示设备中视觉惯性里程计的在线标定方法,利用处理设备获得的vr头显设备的历史位姿对惯性测量单元200的内部参数进行在线优化更新,还包括:选择触发惯性测量单元200内部参数更新的频率,选择参与每次惯性测量单元200内部参数更新的惯性测量单元200测量样本数量。

本申请的技术方案中,针对廉价的相机传感器和惯性传感器存在较大的畸变、噪声等问题,通过其对应的内外参数修正,可使传感器提供更优质的测量值,提升定位追踪系统的准确度。部分传感器内外参数会受外界环境诸如温度、震动等变化的影响,采用随vr应用一并运行的视觉惯性传感器在线标定系统,可以保证消费级vr头显设备的追踪精度。

附图说明

图1示出本发明中vr头显设备中相关硬件配置与相关坐标系示意图;

图2示出本发明中各个相机与惯性测量单元外部参数初始值流程示意图;

图3示出本发明中各个相机与惯性测量单元外部参数更新流程示意图;

图4示出本发明中惯性测量单元内部参数优化更新流程示意图。

具体实施方式

下面结合附图与具体实施例进一步阐述本发明的技术特点。

图1给出本实施例的vr头显设备中相关的传感器、处理器硬件配置关系,以及传感器测量数据坐标系间的转换关系。vr头显设备中的相关硬件包括:首个相机101、额外相机102、惯性测量单元200、处理器300,视觉惯性里程计、视觉里程计集成于处理器300内,惯性测量单元200包括加速度计和陀螺仪。

首个相机101、额外相机102为vr头显设备获取外部视觉信息的传感器,首个相机101、额外相机102获取的视觉信息分别通过信道p1、p2传入处理器300,参与视觉里程计、视觉惯性里程计的信息处理过程。惯性测量单元200为vr头显设备获取自身加速度、角速度的传感器,惯性信息通过信道p3传入处理器300,参与位姿解算、视觉惯性里程计的信息处理过程。本实施例中信息处理过程,包括计算首个相机101、额外相机102与惯性测量单元200的外部参数初始值、计算首个相机101、额外相机102与惯性测量单元200的外部参数更新、计算惯性测量单元200内部参数更新,这些都是在处理器300中进行的。

首个相机101与额外相机102的原始测量数据均处于自身坐标系,变换过程l1将相机101的测量数据转换到相机102的坐标系下,变换过程以变换矩阵tcc描述。首个相机101、额外相机102与惯性测量单元200的原始测量数据均处于自身坐标系,变换过程l2将相机的测量数据转换到惯性测量单元200坐标系下,变换过程以变换矩阵tci描述;首个相机101、额外相机102可以通过相同的快门触发使测量数据时间同步,相机测量数据与惯性测量单元200测量数据的时间延迟以时差δt描述。

图2中显示出本实施例中首个相机101与额外相机102的变换矩阵推算流程。

步骤201、步骤202中相机(包括首个相机101和额外相机102)采集的视觉图像传输至处理器中,使用视觉里程计算法如ptam、svo等解算相机位姿。对于步骤201中获取的首个相机101的位姿s1,在步骤203中使用预定义的坐标系变换矩阵tci将s1变换到额外相机102的坐标系下;对于步骤202中获取的额外相机102的位姿s2,直接使用。上述步骤获取的多组位姿数据会参与步骤204中的位姿绝对误差统计:

利用统计误差构建优化问题,其优化变量为变换矩阵tci,优化目标为最小化位姿绝对误差。形式为:

步骤205使用数值方法如高斯牛顿法、列文伯格-马夸尔特法迭代求得较优的变换矩阵tcc。此时如步骤206中所述,利用该变换矩阵将首个相机101和额外相机102位姿统一为sc,步骤207使用预定义的额外相机102到惯性测量单元200坐标系的变换矩阵tci将相机位姿sc转换到惯性测量单元200坐标系下。

步骤208使用惯性测量单元200姿态解算获取惯性测量单元200位姿数据si,该数据与上述首个相机101和额外相机102统一的位姿sc存在采样时间延迟。步骤209中定义该采样时间延迟为初始时差t0,该步骤中的误差函数既包含步骤204中的位姿绝对误差eci(tci),也包含由时差导致的重投影误差er(t0)。优化问题的优化变量为变换矩阵tci和初始时差t0,优化目标为最小化位姿绝对误差与重投影误差之和。形式为:

步骤210使用数值方法解算得较优的变换矩阵tci和初始时差t0。该阶段所得tcc,tci,t0将作为各个相机与惯性测量单元200间外部参数的初始值参与视觉惯性里程计。

图3展示了本实施例中外部参数在视觉惯性里程计中的更新流程。

在本流程中使用的视觉惯性里程计,可以是基于扩展卡尔曼滤波、无迹卡尔曼滤波或基于最小化误差函数等方法。在视觉惯性里程计的系统状态向量表示中,必须包含首个相机101和额外相机102之间、首个相机101与惯性测量单元200之间、额外相机102与惯性测量单元200之间的外部参数。步骤301中,首个相机101和额外相机102之间、首个相机101与惯性测量单元200之间、额外相机102与惯性测量单元200之间的外部参数初始值参与视觉惯性里程计系统状态向量的初始阶段;步骤302,视觉惯性里程计通过滤波或优化方法完成单次迭代,迭代过程会同时产生新的外部参数;步骤303,获取新的外部参数;步骤304,使用新的外部参数覆盖视觉惯性里程计系统状态向量中旧的外部参数值,使用更新后的系统状态向量进行下一次滤波或优化迭代步骤。

图4展示了本实施例中惯性测量单元200内部参数优化更新流程。

步骤401,预定义变量惯性测量单元200内部参数的更新矩阵uα,ug;步骤402,利用内部参数的更新矩阵,表示多个惯性测量单元200测量数据,加速度计测量值修正为uαkα(αs-bα),陀螺仪测量值修正为ugkg(ωs-bω)其中kα,kg分别为加速度计和陀螺仪的内部参数矩阵,bα,bω分别为加速度和陀螺仪的零点偏移,bα,bω会作为视觉惯性里程计中系统状态向量的一部分,在每次视觉惯性里程计迭代后发生更新,因此这里不做修改。

步骤403,利用更新矩阵表示下的惯性测量单元200测量值解算位姿[p1,v1,q1]。解算方法为龙格库塔数值积分,形式为:

步骤404,视觉惯性里程计中获取与上述步骤中惯性测量单元200解算位姿对应时间戳的历史位姿[p0,v0,q0]。步骤405,统计多组两种位姿的绝对误差值,使用该误差累积构建优化问题,优化变量为uα,ug,形式为:

步骤406,使用数值方法求解上述优化问题得到惯性测量单元200内部参数的更新矩阵uα,ug;步骤407,将更新矩阵uα,ug更新的imu的内部参数矩阵,新的惯性测量单元200内部参数将参与视觉惯性里程计的后续步骤。

当然,上述说明并非是对本发明的限制,本发明也并不限于上述举例,本技术领域的普通技术人员,在本发明的实质范围内,作出的变化、改型、添加或替换,都应属于本发明的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1