位姿确定方法和装置与流程

文档序号:16054451发布日期:2018-11-24 11:33阅读:167来源:国知局

本发明涉及电子设备技术领域,特别是涉及位姿确定方法和装置。

背景技术

随着信息时代的到来,电子设备成为了生活中必不可少的工具,电子设备的增强现实(augmentedreality,ar)技术的需求也越来越大。ar技术的核心技术是即时定位与地图构建(simultaneouslocalizationandmapping,slam)技术,即通过slam技术实现电子设备的实时姿态估计。

目前电子设备的slam技术主要有apple的arkit和google的arcore,但是,arkit所采用的定位算法不能用于android系统的电子设备,而arcore所采用的定位算法不能用于ios系统的电子设备,即arkit和arcore不能跨平台使用。



技术实现要素:

基于此,有必要针对arkit和arcore不能跨平台使用的问题,提供一种位姿确定方法和装置。

第一方面,本发明实施例提供一种位姿确定方法,包括:

获取电子设备的第一硬件参数信息;

将第一硬件参数信息与定位算法进行匹配,得到第一硬件参数信息所匹配的目标定位算法;

利用目标定位算法实时获取电子设备的实时姿态估计。

在其中一个实施例中,利用目标定位算法实时获取电子设备的实时姿态估计,包括:

通过电子设备的视觉传感器实时获取图像;

提取图像中关键点的位置;

使用与第一硬件参数信息匹配的描述子提取方式,提取关键点的描述子;

根据图像中关键点的位置和每个关键点的描述子,确定电子设备的实时姿态估计。

在其中一个实施例中,根据图像中关键点位置和每个关键点的描述子,确定电子设备的实时姿态估计,包括:

将实时获取到的图像的图像特征与前一帧图像的图像特征相关联,图像特征包括图像中的关键点的位置和每个关键点的描述子;

至少将相关联的图像特征作为观测量,通过目标定位算法最小化观测误差,得到电子设备的实时姿态估计。

在其中一个实施例中,将实时获取到的图像的图像特征与前一帧图像的图像特征相关联,包括:

使用与第一硬件参数信息匹配的图像特征关联算法,将实时获取到的图像的图像特征与前一帧图像的图像特征相关联。

在其中一个实施例中,根据图像中关键点位置和每个关键点的描述子,确定电子设备的实时姿态估计,包括:

将实时获取到的图像的图像特征与前一帧图像的图像特征相关联,图像特征包括图像中的关键点的位置和每个关键点的描述子;

至少将相关联的图像特征作为观测量,得到观测误差;

获取前一帧图像的三维平移量和三维旋转量;

通过前一帧图像的三维平移量和三维旋转量投影与实时获取到的图像估计得到前一帧图像与实时获取到的图像的第一估计二维平移量;

通过图像跟踪算法估计得到实时获取到的图像与前一帧图像的第二估计二维平移量;

根据第一估计二维平移量与第二估计二维平移量确定第一误差;

根据目标定位算法,通过第一误差与观测误差,得到电子设备的实时姿态估计。

在其中一个实施例中,还包括:

实时通过电子设备的惯性测量单元获取加速度信息和角速度信息,将加速度信息和角速度信息与视觉传感器获取的图像的图像特征进行时间同步;

至少将相关联的图像特征作为观测量,通过目标定位算法最小化观测误差,得到电子设备的实时姿态估计,包括:

将时间同步后的图像特征、加速度信息和角速度信息组合作为观测量,通过目标定位算法最小化观测误差,得到电子设备的实时姿态估计。

在其中一个实施例中,至少将相关联的图像特征作为观测量,通过目标定位算法最小化观测误差,得到电子设备的实时姿态估计包括:

将惯性测量单元数据信息中的偏置和噪声幅值、惯性测量单元数据信息的时间戳与图像的时间戳之间的动态延迟时间、电子设备的外参、第二硬件参数信息中至少一个作为目标定位算法的估计量,最小化观测误差,得到电子设备的实时姿态估计;其中,电子设备的外参包括视觉传感器与惯性测量单元的相对姿态。

在其中一个实施例中,通过目标定位算法最小化观测误差,得到电子设备的实时姿态估计包括:

将电子设备的视觉传感器的内参作为目标定位算法的随机变量,计算观测误差的分布,将观测误差的分布中最小值所对应的姿态作为电子设备的实时姿态估计;其中,电子设备的视觉传感器的内参包括电子设备的视觉传感器的焦距、光心位置中的至少一个;其中,随机变量服从高斯分布。

第二方面,本发明实施例提供一种位姿确定装置,包括:

第一获取模块,用于获取电子设备的第一硬件参数信息;

匹配模块,用于将第一硬件参数信息与定位算法进行匹配,得到第一硬件参数信息所匹配的目标定位算法;

第二获取模块,用于利用目标定位算法实时获取电子设备的实时姿态估计。

第三方面,本发明实施例提供的一种电子设备,包括存储器和处理器,存储器存储有计算机程序,处理器执行计算机程序时实现上述任一实施例中方法的步骤。

第四方面,本发明实施例提供的一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述任一实施例中方法的步骤。

本发明提供的位姿确定方法和装置,通过获取到的电子设备的第一硬件参数信息与定位算法进行匹配,得到第一硬件参数信息所匹配的目标定位算法,然后利用上述匹配到的目标定位算法实时获取电子设备的实时姿态估计。本实施例提供的位姿确定方法中所采用的目标定位算法是根据电子设备的第一硬件参数信息所匹配得到的,而与电子设备所采用的是android系统还是ios系统无关,也就是本实施例提供的位姿确定方法可以跨平台使用,而且目标定位算法只需要与电子设备的第一硬件参数信息相匹配即可,即能够自动的适应不同的机型,而且无需对适配的每一种机型进行精细地校准测量。

附图说明

图1为一个实施例提供的位姿确定方法的流程示意图;

图2为一个实施例提供的位姿确定方法中目标定位算法执行步骤的流程示意图;

图3为一个实施例提供的位姿确定方法中确定电子设备的实时姿态估计的流程示意图;

图4为另一个实施例提供的位姿确定方法中确定电子设备的实时姿态估计的流程示意图;

图5为一个实施例提供的位姿确定装置的结构示意图;

图6为另一个实施例提供的位姿确定装置的结构示意图;

图7为一个实施例中电子设备的内部结构图。

具体实施方式

随着信息技术的不断发展,越来越多的应用程序应用在电子设备上,比如增强现实(augmentedreality,ar)技术应用在手机端,而ar技术的核心技术是即时定位与地图构建(simultaneouslocalizationandmapping,slam)技术,即通过slam技术实现电子设备的实时姿态估计。slam技术通过利用视觉传感器和惯性测量单元(inertialmeasurementunit,imu)的输入,来获取电子设备在真实世界中的定位,并对真实世界进行建模。目前电子设备的slam技术主要有apple的arkit和google的arcore,但是,arkit所采用的定位算法不能用于android系统的电子设备,而arcore所采用的定位算法不能用于ios系统的电子设备,即arkit和arcore不能跨平台使用。另外,arcore需要对适配的每一种机型进行精细地校准测量,而不能自动地适应不同的机型。本申请提供的位姿确定方法和装置旨在解决传统技术的如上技术问题。

为了使本发明的目的、技术方案及优点更加清楚明白,通过下述实施例并结合附图,对本发明实施例中的技术方案的进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。

图1为一个实施例提供的位姿确定方法的流程示意图。本实施例涉及的是根据第一硬件参数信息所匹配的目标定位算法实时获取电子设备的实时姿态估计的具体过程。如图1所示,该方法包括:

s101、获取电子设备的第一硬件参数信息。

可选的,上述电子设备可以但不限于是各种智能手机、平板电脑和便携式可穿戴设备。可选的,上述电子设备的第一硬件参数信息可以包括:电子设备的cpu的计算能力、电子设备是否包含惯性测量单元(如加速度计和陀螺仪),其中,电子设备中有预置的cpu计算能力分数,根据cpu计算能力分数对电子设备的cpu的计算能力进行划分等级。如果电子设备包含惯性测量单元时,第一硬件参数信息还可以包括:惯性测量单元的厂商信息及惯性测量单元中加速度计和陀螺仪的硬件参数、加速度计和陀螺仪的品牌等。

可选的,还可以基于位姿确定的应用程序开启后,再获取电子设备的第一硬件参数信息。可选的,上述基于位姿确定的应用程序如ar应用程序。

s102、将第一硬件参数信息与定位算法进行匹配,得到第一硬件参数信息所匹配的目标定位算法。

具体的,上述定位算法可以包括:非线性卡尔曼滤波算法(计算量较小,精度不够)、非线性最优化算法(需要多次迭代,精度更好,但运算量更高),非线性最优化算法如高斯牛顿法、莱文贝格-马夸特法等。可选的,上述定位算法可以预置在电子设备中,也可以预置在云端,还可以预置在其他可以使第一硬件参数信息匹配到的其他位置,本实施例中对定位算法预置位置不进行限定。一般情况,在电子设备或者云端或其他位置的定位算法会预置多个,这样便于电子设备从多个定位算法中选出与第一硬件参数信息所匹配的定位算法。

在电子设备的第一硬件参数信息中电子设备的cpu的计算能力权重最高,即根据第一硬件参数信息与电子设备中预置的多个算法进行匹配时,主要根据cpu的计算能力进行匹配。例如,根据上述获取到的电子设备的第一硬件参数信息,如果cpu的计算能力强,即电子设备的cpu的计算能力的等级比较高,再配合其他第一硬件参数信息,将匹配非线性最优化算法,如高斯牛顿法。

s103、利用目标定位算法实时获取电子设备的实时姿态估计。

具体的,上述电子设备的实时姿态估计包括电子设备的实时平移量和实时旋转量。根据上述匹配到的目标定位算法,对电子设备的实时平移量和实时旋转量进行实时计算。

本实施例提供的位姿确定方法,通过获取到的电子设备的第一硬件参数信息与定位算法进行匹配,得到第一硬件参数信息所匹配的目标定位算法,然后利用上述匹配到的目标定位算法实时获取电子设备的实时姿态估计。本实施例提供的位姿确定方法中所采用的目标定位算法是根据电子设备的第一硬件参数信息所匹配得到的,而与电子设备所采用的是android系统还是ios系统无关,也就是本实施例提供的位姿确定方法可以跨平台使用,而且目标定位算法只需要与电子设备的第一硬件参数信息相匹配即可,即能够自动的适应不同的机型,而且无需对适配的每一种机型进行精细地校准测量。

图2为一个实施例提供的位姿确定方法中目标定位算法执行步骤的流程示意图。本实施例涉及的是如何利用目标定位算法实时获取电子设备的实时姿态估计的具体过程。在上述实施例的基础上,可选的,上述s103可以包括:

s201、通过电子设备的视觉传感器实时获取图像。

具体的,视觉传感器可以为前置摄像头,也可以为后置摄像头,需要说明的是,本实施例对视觉传感器的类型不做限定,只需要能实时获取到图像即可。

s202、提取图像中关键点的位置。

可选的,可以采用加速分割测试特征(featuresfromacceleratedsegmenttest,fast)算法提取实时获取的图像中关键点的位置,也可以采用高斯函数的差分(differenceofgaussian,dog)算法提取实时获取的图像中关键点的位置,也可以采用自适应通用加速分割检测(adaptiveandgenericacceleratedsegmenttest,agast)算法提取实时获取的图像中关键点的位置,还可以采用快速二值鲁棒不变性可尺缩关键点(binaryrobustinvariantscalablekeypoints,brisk)算法等算法提取实时获取的图像中关键点的位置,还可以采用其他算法提取实时获取的图像中关键点的位置,需要说明的是,本实施例中对采用哪种算法提取实时获取的图像中关键点的位置不做限制。下述以采用fast算法提取实时获取的图像中的关键点的位置为例进行说明。

可选的,根据第一硬件参数信息(主要参考cpu的计算能力)的不同,fast算法中函数的参数会随之改变,当然,第一硬件参数信息不同时,fast算法中函数的参数可以采用固定不变的数值。例如,当cpu的计算能力较强时,可以相对多的提取一些图像中关键点的位置,反正,相对少的提取一些图像中关键点的位置。

上述根据第一硬件参数信息的不同,fast算法中函数的参数随之改变时,提取实时获取的图像中的关键点的位置数量不同,提取的关键点的位置越多,位姿确定会越精准。

s203、使用与第一硬件参数信息匹配的描述子提取方式,提取关键点的描述子。

具体的,根据第一硬件参数信息(主要参考cpu的计算能力),可以选择与第一硬件参数信息匹配的描述子提取方式。可选的,描述子提取方式可以为采用orb算法提取orb描述子(该提取方式较慢),将org描述子作为关键点的描述子;描述子提取方式还可以为提取关键点位置预设范围内的原始像素值(该提取方式较快,但效果较差),将关键点位置预设范围内的原始像素值作为关键点的描述子,无需进行计算,本实施例中对描述子提取方式不做限定。例如,当cpu的计算能力弱时,选择提取关键点位置预设范围内的原始像素值作为关键点描述子,当cpu的计算能力强时,选择采用org算法提取org描述子作为关键点的描述子。需要说明的是,本实施例对描述子的提取方法不做限制。

上述根据第一硬件参数信息的不同,选择不同的关键点描述子提取方式,使得在第一硬件参数信息不同时,提取关键点描述子的方式更灵活。

s204、根据图像中关键点的位置和每个关键点的描述子,确定电子设备的实时姿态估计。

该s204可以通过以下几种可能的实时方式来实现:

第一种可能的实时方式:参见图3,该可能的实时方式包括如下步骤:

s301、将实时获取的图像的图像特征与前一帧图像的图像特征相关联,图像特征包括图像中关键点的位置和每个关键点的描述子。

具体的,实时获取到的图像与前一帧的图像发生了位移和旋转,即实时获取到的图像中关键点的位置与前一帧的图像中的同一关键点的位置不同,但是,不同时刻的图像中同一关键点的位置是相关联的。

在上述实施例的基础上,可选的,上述s301具体包括:

使用与第一硬件参数信息匹配的图像特征关联算法,将实时获取到的图像的图像特征与前一帧图像的图像特征相关联。

具体的,根据上述电子设备的第一硬件参数信息(主要参考cpu的计算能力),可以选择与第一硬件参数信息匹配的图像特征关联算法。可选的,图像特征关联算法可以为基于光流跟踪算法直接从前一帧的图像中的关键点的位置得到对应的实时的图像中的关键点的位置(速度相对较快),图像特征关联算法还可以为基于局部匹配算法获得与实时的图像中的关键点匹配的前一帧图像中的关键点(速度相对较慢但比较准确)。具体的,将前一帧图像、前一帧图像的其中任意一个关键点的位置及实时获取到的图像作为光流跟踪算法的输入,利用光流跟踪算法计算得到上述任意一个关键点在实时获取到的图像中对应的关键点的位置,使得实时获取到的图像的图像特征与前一帧图像的图像特征相关联。另外,将前一帧图像的所有图像特征、实时获取到的图像的其中任意一个关键点的位置及任意一个关键点对应的描述子作为局部匹配算法的输入,利用局部匹配算法输出前一帧图像中与上述任意一个关键点匹配的关键点,如果没有输出相匹配的关键点,把实时获取到的图像中的该关键点舍弃。例如,当cpu的计算能力弱时,可以选择基于光流跟踪算法将实时获取到的图像的图像特征与前一帧图像的图像特征相关联,而当cpu的计算能力较强时,可以选择基于局部匹配算法将实时获取到的图像的图像特征与前一帧图像的图像特征相关联,而当cpu的计算能力更强时,可以同时选择上述两种算法将实时获取到的图像的图像特征与前一帧图像的图像特征相关联。

上述根据第一硬件参数信息的不同,选择不同的图像特征关联算法,使得实时获取到的图像的图像特征的关键点与前一帧图像的图像特征中的关键点进行匹配,而cpu的计算能力足够强时,两种图像特征关联算法同时操作,使得实时获取到的图像的图像特征与前一帧图像的图像特征中匹配更多的关键点,使实时获取到的图像的图像特征与前一帧图像的图像特征匹配效果更好,即实时获取到的图像的图像特征与前一帧图像的图像特征关联性更好。

s302、至少将相关联的图像特征作为观测量,通过目标定位算法最小化观测误差,得到电子设备的实时姿态估计。

具体的,上述观测量为measurement的直译。

上述观测误差为在观测过程中,相关联的图像特征作为观测量所引起的误差。

本实施例中采用相关联的图像特征作为观测量,通过与电子设备的第一硬件参数信息匹配的目标定位算法最小化观测误差,使得本实施例提供的位姿确定方法可以跨平台使用。

第二种可能的实时方式:参见图4,该可能的实时方式包括如下步骤:

s401、将实时获取到的图像的图像特征与前一帧图像的图像特征相关联,图像特征包括图像中的关键点的位置和每个关键点的描述子。

如何将实时获取到的图像的图像特征与前一帧图像的图像特征相关联的具体过程参照上述s301的陈述,这里不再赘述。

s402、至少将相关联的图像特征作为观测量,得到观测误差。

具体的,观测误差的陈述参见上述s302,这里不再赘述。

s403、获取前一帧图像的三维平移量和三维旋转量。

可选的,可以采用比例正交投影迭代变换(posefromorthographyandscalingwithiterations,posit)算法来获取前一帧图像的三维平移量和三维旋转量,当然,还可以采用其他算法来获取前一帧图像的三维平移量和三维旋转量。需要说明的是,本实施例对采用什么算法获取前一帧图像的三维平移量和三维旋转量不做限定。

s404、通过前一帧图像的三维平移量和三维旋转量投影与实时获取到的图像估计得到前一帧图像与实时获取到的图像的第一估计二维平移量。

可选的,第一估计二维平移量的获取方式包括但不限于:通过前一帧图像的三维平移量和三维旋转量投影与实时获取到的图像估计得到前一帧图像与实时获取到的图像的第一估计二维平移量。

s405、通过图像跟踪算法估计得到实时获取到的图像与前一帧图像的第二估计二维平移量。

可选的,第二估计二维平移量的获取方式包括但不限于:通过图像跟踪算法估计得到实时获取到的图像与前一帧图像的第二估计二维平移量。

s406、根据第一估计二维平移量与第二估计二维平移量确定第一误差。

具体的,可以将第一估计二维平移量和第二估计二维平移量的平方差作为第一误差。

s407、根据目标定位算法,通过第一误差与观测误差,得到电子设备的实时姿态估计。

具体的,电子设备可以根据目标定位算法,将第一误差与观测误差之和最小化,第一误差与观测误差之和最小时对应的姿态估计即为得到的电子设备的实时姿态估计。

本实施例提供的位姿确定方法,通过前一帧图像的三维平移量和三维旋转量投影与实时获取到的图像估计得到第一估计二维平移量,以及通过图像跟踪算法估计得到第二估计二维平移量,然后将第一估计二维平移量与第二估计二维平移量的平方差作为第一误差,第一误差与观测误差的和最小时对应的姿态估计即为电子设备的实时姿态估计。本实施例中为观测误差增加一个误差项,即作为观测误差的一个约束项,使得得到的电子设备的实时姿态估计更加精准,提升了实时定位的稳定性。

在上述实施例的基础上,该方法还可以通过实时电子设备的惯性测量单元获取加速度信息和角速度信息,将加速度信息和角速度信息与视觉传感器获取的图像的图像特征进行时间同步;相应的,上述至少将相关联的图像特征作为观测量,通过目标定位算法最小化观测误差,得到电子设备的实时姿态估计的具体实现方式可以是:将时间同步后的图像特征、加速度信息和角速度信息组合作为观测量,通过目标定位算法最小化观测误差,得到电子设备的实时姿态估计。

具体的,惯性测量单元(inertialmeasurementunit,imu)可以为用于测量物体三轴姿态角(或角速度)以及加速度的装置。其中,imu可以包括三个单轴的加速度计和三个单轴的陀螺计,加速度计检测物体在载体坐标系统独立三轴的加速度信息,而陀螺计检测载体相对于导航坐标系的角速度信息,即测量物体在三维空间中的角速度和加速度。

将加速度信息和角速度信息与图像特征进行时间同步,具体为,加速度信息、角速度信息与图像特征均为实时进行采集的,将相同时间段内采集到的加速度信息、角速度信息与图像特征进行打包。例如,1s提取30帧图像的图像特征,而1s采集60个加速度信息和角速度信息,那么将同一个时间段内的1帧图像的图像特征和2个加速度信息和角速度信息打包。将时间同步后的图像特征及加速度信息和角速度信息组合作为观测量,即为将打包好的同一时间段内的图像特征及加速度信息和角速度信息作为观测量。本实施例中,观测误差包括图像特征误差和imu误差,图像特征误差包括历史时刻中至少一个时刻得到的图像中关键点的位置与当前时刻图像中相应关键点的实际位置的距离,其中,历史时刻中至少一个时刻是指当前时刻之前的任意时刻中的至少一个时刻。imu误差包括电子设备的实时平移量与通过imu获得的平移量的差值、及电子设备的实时旋转量与通过imu获得的旋转量的差值。

本实施例提供的位姿确定方法,将imu的加速度信息和角速度信息与图像特征同步后组合作为观测量,然后通过目标定位算法最小化观测误差,得到电子设备的实时姿态估计。本实施例中将imu的加速度信息和角速度信息与图像特征同步后组合作为观测量,采用imu误差和图像特征误差获得电子设备的实时姿态估计,使得得到的电子设备的实时姿态估计更加精准,提升了实时定位的稳定性。

在上述实施例的基础上,可选的,至少将相关联的图像特征作为观测量,通过目标定位算法最小化观测误差,得到电子设备的实时姿态估计包括:

将惯性测量单元数据信息中的偏置和噪声幅值、惯性测量单元数据信息的时间戳与图像的时间戳之间的动态延迟时间、电子设备的外参、第二硬件参数信息中至少一个作为目标定位算法的估计量,最小化观测误差,得到电子设备的实时姿态估计;其中,电子设备的外参包括视觉传感器与惯性测量单元的相对姿态。

具体的,目标定位算法的估计量为目标定位算法中目标函数的因变量。

具体的,对于不同型号的电子设备,imu数据信息中的偏置和噪声幅值是不同的,这会影响目标定位算法的定位效果,因此,目标定位算法在初始化时需要将电子设备静止预设时长(如1s),用于估计imu的偏置和噪声幅值的初始值,这样使得imu的偏置和噪声幅值作为目标定位算法的估计量时,能够更加精确的得到电子设备的实时姿态估计。

具体的,由于电子设备的数据为通过硬件获取的原因,电子设备的imu数据信息的时间戳(imu的加速度计数据信息和陀螺仪数据信息的时间戳相同)与图像的时间戳之间存在有动态延迟时间,将惯性测量单元数据信息的时间戳与图像的时间戳之间的动态延迟时间作为目标定位算法的估计量时,能够更加精确的得到电子设备的实时姿态估计。

可选的,电子设备的外参可以包括电子设备的视觉传感器与imu的相对姿态。将电子设备的视觉传感器与imu的相对姿态作为目标定位算法的估计量时,能够更加精确的得到电子设备的实时姿态估计。

具体的,第二硬件参数信息可以包括硬件参数数值未知的硬件参数信息。可选的,第二硬件参数信息可以包括卷帘时间。将卷帘时间作为目标定位算法的估计量时,能够更加精确的得到电子设备的实时姿态估计。

本实施例提供的位姿确定方法,将惯性测量单元数据信息中的偏置和噪声幅值、惯性测量单元的时间戳与图像的时间戳之间的动态延迟时间、电子设备的外参、第二硬件参数信息中至少一个作为目标定位算法的估计量,每一个估计量均可以使得得到的电子设备的实时姿态估计更加精确,多个估计量结合可以进一步提高电子设备的实时姿态估计的精确度。

在上述实施例的基础上,可选的,通过目标定位算法最小化观测误差,得到电子设备的实时姿态估计包括:

将电子设备的视觉传感器的内参作为目标定位算法的随机变量,计算观测误差的分布,将观测误差的分布中最小值所对应的姿态作为电子设备的实时姿态估计;其中,电子设备的视觉传感器的内参包括电子设备的视觉传感器的焦距、光心位置中的至少一个;其中,随机变量服从高斯分布。

具体的,将电子设备的视觉传感器的内参作为目标定位算法的随机变量,随机变量服从高斯分布,通过电子设备的视觉传感器的内参服从的高斯分布计算观测误差的分布,然后从得到的观测误差的分布中挑选最小值,最小值所对应的姿态即为电子设备的实时姿态估计。

本实施例提供的位姿确定方法,通过电子设备的视觉传感器的内参的分布得到观测误差的分布,从观测误差的分布中挑选最小值,最小值所对应的姿态即为电子设备的实时姿态估计。由电子设备的视觉传感器的内参的分布得到电子设备的实时姿态估计更加精确。

应该理解的是,虽然图1-4的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图1-4中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。

图5为一个实施例提供的位姿确定装置的结构示意图。如图5所示,该装置包括:第一获取模块11、匹配模块12、第二获取模块13。

具体的,第一获取模块11,用于获取电子设备的第一硬件参数信息;

匹配模块12,用于将第一硬件参数信息与定位算法进行匹配,得到第一硬件参数信息所匹配的目标定位算法;

第二获取模块13,用于利用目标定位算法实时获取电子设备的实时姿态估计。

本实施例提供的位姿确定装置,可以执行上述方法实施例,其实现原理和技术效果类似,在此不再赘述。

图6为另一个实施例提供的位姿确定装置的结构示意图。在上述图5所示实施例的基础上,如图6所示,上述第二获取模块13包括:获取单元131、第一提取单元132、第二提取单元133、确定单元134。

具体的,获取单元131,用于通过电子设备的视觉传感器实时获取图像;

第一提取单元132,用于提取图像中关键点的位置;

第二提取单元133,用于使用与第一硬件参数信息匹配的描述子提取方式,提取关键点的描述子;

确定单元134,用于根据图像中关键点的位置和每个关键点的描述子,确定电子设备的实时姿态估计。

本实施例提供的位姿确定装置,可以执行上述方法实施例,其实现原理和技术效果类似,在此不再赘述。

在上述实施例的基础上,上述确定单元134还用于将实时获取到的图像的图像特征与前一帧图像的图像特征相关联,图像特征包括图像中关键点的位置和每个关键点的描述子;至少将相关联的图像特征作为观测量,通过目标定位算法最小化观测误差,得到电子设备的实时姿态估计。

本实施例提供的位姿确定装置,可以执行上述方法实施例,其实现原理和技术效果类似,在此不再赘述。

可选的,上述确定单元134还用于使用与第一硬件参数信息匹配的图像特征关联算法,将实时获取到的图像的图像特征与前一帧图像的图像特征相关联。

本实施例提供的位姿确定装置,可以执行上述方法实施例,其实现原理和技术效果类似,在此不再赘述。

在上述实施例的基础上,上述确定单元134还用于将实时获取到的图像的图像特征与前一帧图像的图像特征相关联,图像特征包括图像中的关键点的位置和每个关键点的描述子;至少将相关联的图像特征作为观测量,得到观测误差;获取前一帧图像的三维平移量和三维旋转量;通过前一帧图像的三维平移量和三维旋转量投影与实时获取到的图像估计得到前一帧图像与实时获取到的图像的第一估计二维平移量;通过图像跟踪算法估计得到实时获取到的图像与前一帧图像的第二估计二维平移量;根据第一估计二维平移量与第二估计二维平移量确定第一误差;根据目标定位算法,通过第一误差与观测误差,得到电子设备的实时姿态估计。

本实施例提供的位姿确定装置,可以执行上述方法实施例,其实现原理和技术效果类似,在此不再赘述。

在上述实施例的基础上,该装置还包括:同步模块。

具体的,同步模块,用于实时通过电子设备的惯性测量单元获取加速度信息和角速度信息,将加速度信息和角速度信息与视觉传感器获取的图像的图像特征进行时间同步;

相应的,上述确定单元134还用于将时间同步后的图像特征、加速度信息和角速度信息组合作为观测量,通过目标定位算法最小化观测误差,得到电子设备的实时姿态估计。

本实施例提供的位姿确定装置,可以执行上述方法实施例,其实现原理和技术效果类似,在此不再赘述。

可选的,上述确定单元134还用于将惯性测量单元数据信息中的偏置和噪声幅值、惯性测量单元的时间戳与图像的时间戳之间的动态延迟时间、电子设备的外参、第二硬件参数信息中至少一个作为目标定位算法的估计量,最小化观测误差,得到电子设备的实时姿态估计;其中,电子设备的外参包括视觉传感器与惯性测量单元的相对姿态。

本实施例提供的位姿确定装置,可以执行上述方法实施例,其实现原理和技术效果类似,在此不再赘述。

可选的,上述确定单元134还用于将电子设备的视觉传感器的内参作为目标定位算法的随机变量,计算观测误差的分布,将观测误差的分布中最小值所对应的姿态作为电子设备的实时姿态估计;其中,电子设备的视觉传感器的内参包括电子设备的视觉传感器的焦距、光心位置中的至少一个;其中,随机变量服从高斯分布。

本实施例提供的位姿确定装置,可以执行上述方法实施例,其实现原理和技术效果类似,在此不再赘述。

关于位姿确定装置的具体限定可以参见上文中对于位姿确定方法的限定,在此不再赘述。上述位姿确定装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于电子设备中的处理器中,也可以以软件形式存储于电子设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。

在一个实施例中,提供了一种电子设备,其内部结构图可以如图7所示。该电子设备包括通过系统总线连接的处理器、存储器、网络接口、显示屏和输入装置。其中,该电子设备的处理器用于提供计算和控制能力。该电子设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该电子设备的网络接口用于与外部的电子设备通过网络连接通信。该电子设备被处理器执行时以实现一种位姿确定方法。该电子设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该电子设备的输入装置可以是显示屏上覆盖的触摸层,也可以是电子设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。

本领域技术人员可以理解,图7中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的电子设备的限定,具体的电子设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。

在一个实施例中,提供了一种电子设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:

获取电子设备的第一硬件参数信息;将第一硬件参数信息与定位算法进行匹配,得到第一硬件参数信息所匹配的目标定位算法;利用目标定位算法实时获取电子设备的实时姿态估计。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:

通过电子设备的视觉传感器实时获取图像;提取图像中关键点的位置;使用与第一硬件参数信息匹配的描述子提取方式,提取关键点的描述子;根据图像中关键点的位置和每个关键点的描述子,确定电子设备的实时姿态估计。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:

将实时获取到的图像的图像特征与前一帧图像的图像特征相关联,图像特征包括图像中关键点的位置和每个关键点的描述子;至少将相关联的图像特征作为观测量,通过目标定位算法最小化观测误差,得到电子设备的实时姿态估计。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:

使用与第一硬件参数信息匹配的图像特征关联算法,采用选择的图像特征关联算法将实时获取到的图像的图像特征与前一帧图像的图像特征相关联。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:

将实时获取到的图像的图像特征与前一帧图像的图像特征相关联,图像特征包括图像中的关键点的位置和每个关键点的描述子;至少将相关联的图像特征作为观测量,得到观测误差;获取前一帧图像的三维平移量和三维旋转量;通过前一帧图像的三维平移量和三维旋转量投影与实时获取到的图像估计得到前一帧图像与实时获取到的图像的第一估计二维平移量;通过图像跟踪算法估计得到实时获取到的图像与前一帧图像的第二估计二维平移量;根据第一估计二维平移量与第二估计二维平移量确定第一误差;根据目标定位算法,通过第一误差与观测误差,得到电子设备的实时姿态估计。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:

实时通过电子设备的惯性测量单元获取加速度信息和角速度信息,将加速度信息和角速度信息与视觉传感器获取的图像的图像特征进行时间同步;将时间同步后的图像特征、加速度信息和角速度信息组合作为观测量,通过目标定位算法最小化观测误差,得到电子设备的实时姿态估计。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:

将惯性测量单元数据信息中的偏置和噪声幅值、惯性测量单元数据信息的时间戳与图像的时间戳之间的动态延迟时间、电子设备的外参、第二硬件参数信息中至少一个作为目标定位算法的估计量,最小化观测误差,得到电子设备的实时姿态估计;其中,电子设备的外参包括视觉传感器与惯性测量单元的相对姿态。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:

将电子设备的视觉传感器的内参作为目标定位算法的随机变量,计算观测误差的分布,将观测误差的分布中最小值所对应的姿态作为电子设备的实时姿态估计;其中,电子设备的视觉传感器的内参包括电子设备的视觉传感器的焦距、光心位置中的至少一个;其中,随机变量服从高斯分布。

在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:

获取电子设备的第一硬件参数信息;将第一硬件参数信息与定位算法进行匹配,得到第一硬件参数信息所匹配的目标定位算法;利用目标定位算法实时获取电子设备的实时姿态估计。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:

通过电子设备的视觉传感器实时获取图像;提取图像中关键点的位置;使用与第一硬件参数信息匹配的描述子提取方式,提取关键点的描述子;根据图像中关键点的位置和每个关键点的描述子,确定电子设备的实时姿态估计。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:

将实时获取到的图像的图像特征与前一帧图像的图像特征相关联,图像特征包括图像中关键点的位置和每个关键点的描述子;至少将相关联的图像特征作为观测量,通过目标定位算法最小化观测误差,得到电子设备的实时姿态估计。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:

使用与第一硬件参数信息匹配的图像特征关联算法,采用选择的图像特征关联算法将实时获取到的图像的图像特征与前一帧图像的图像特征相关联。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:

将实时获取到的图像的图像特征与前一帧图像的图像特征相关联,图像特征包括图像中的关键点的位置和每个关键点的描述子;至少将相关联的图像特征作为观测量,得到观测误差;获取前一帧图像的三维平移量和三维旋转量;通过前一帧图像的三维平移量和三维旋转量投影与实时获取到的图像估计得到前一帧图像与实时获取到的图像的第一估计二维平移量;通过图像跟踪算法估计得到实时获取到的图像与前一帧图像的第二估计二维平移量;根据第一估计二维平移量与第二估计二维平移量确定第一误差;根据目标定位算法,通过第一误差与观测误差,得到电子设备的实时姿态估计。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:

实时通过电子设备的惯性测量单元获取加速度信息和角速度信息,将加速度信息和角速度信息与视觉传感器获取的图像的图像特征进行时间同步;将时间同步后的图像特征、加速度信息和角速度信息组合作为观测量,通过目标定位算法最小化观测误差,得到电子设备的实时姿态估计。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:

将惯性测量单元数据信息中的偏置和噪声幅值、惯性测量单元数据信息的时间戳与图像的时间戳之间的动态延迟时间、电子设备的外参、第二硬件参数信息中至少一个作为目标定位算法的估计量,最小化观测误差,得到电子设备的实时姿态估计;其中,电子设备的外参包括视觉传感器与惯性测量单元的相对姿态。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:

将电子设备的视觉传感器的内参作为目标定位算法的随机变量,计算观测误差的分布,将观测误差的分布中最小值所对应的姿态作为电子设备的实时姿态估计;其中,电子设备的视觉传感器的内参包括电子设备的视觉传感器的焦距、光心位置中的至少一个;其中,随机变量服从高斯分布。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram)或者外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双数据率sdram(ddrsdram)、增强型sdram(esdram)、同步链路(synchlink)dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)等。

以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

以上实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

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