定位初始化方法和相关装置、设备、存储介质与流程

文档序号:25590625发布日期:2021-06-22 17:07阅读:65来源:国知局
定位初始化方法和相关装置、设备、存储介质与流程

本申请涉及定位技术领域,特别是涉及一种定位初始化方法和相关装置、设备、存储介质。



背景技术:

目前,视觉跟踪定位方法在计算机视觉、机器人、无人机、三维重建一级增强现实等领域中起着重要的作用。一般情况下,对视觉跟踪定位所需参数的初始化之后,直接利用初始化得到的结果对设备进行跟踪定位,这种做法仍有问题存在,例如,当设备的运动幅度不大的情况下,在进行初始化的过程中求解的参数可能误差较大,例如,尺度等参数,若直接使用这些参数对设备进行跟踪定位,会使得最终对设备进行跟踪定位的准确度较低。



技术实现要素:

本申请至少提供一种定位初始化方法和相关装置、设备、存储介质。

本申请第一方面提供了一种定位初始化方法,包括:在对待定位的设备的定位参数进行初始化之后,获取设备的运动信息;基于运动信息,确定设备的当前运动状态;利用设备的当前运动状态,对定位参数进行优化,得到优化后的定位参数。

因此,通过在对定位参数进行初始化之后,仍进一步获取设备的运动状态,然后根据运动状态对定位参数进行优化,使得能够根据优化之后的参数对设备后续的移动进行定位,提高了定位的准确度。

其中,定位参数分为第一定位参数和第二定位参数;根据设备的当前运动状态,对定位参数进行优化,得到优化后的定位参数,包括:在当前运动状态属于非静止状态的情况下,利用第一优化方式对第一定位参数进行优化,其中,第一定位参数包括尺度;或,在当前运动状态属于静止状态的情况下,利用第二优化方式对第二定位参数进行优化,其中,第二定位参数不同于第一定位参数。

因此,通过设备处于静止状态或非静止状态时采用不同优化方式,对定位参数进行优化,能够适用不同的运动场景。

其中,非静止状态包括第一非静止状态和第二非静止状态;在当前运动状态属于非静止状态的情况下,利用第一优化方式对第一定位参数进行优化,包括:在当前运动状态属于第一非静止状态的情况下,利用各三维点在当前图像帧及若干历史图像帧上的重投影误差,对所第一定位参数进行优化;其中,当前图像帧和历史图像帧为设备拍摄得到的,当前图像帧未用于对设备的跟踪定位,历史图像帧已用于对设备的跟踪定位;或,在当前运动状态属于第二非静止状态的情况下,利用预设运动学方程组对第一定位参数进行优化。

因此,将非静止状态又细分为多种非静止状态,使得设备处于非静止状态下时又可根据具体的运动情况选择合适的优化方式,提高对参数的优化效果。

其中,基于运动信息,确定设备的当前运动状态,包括以下至少一个步骤:以其中一历史图像帧作为运动开始帧;在运动开始帧至当前图像帧之间的特征不满足预设条件的情况下,确定当前运动状态为第一非静止状态;其中,特征包括图像帧数量、时差、视差和传感数据中的一个或多个;在运动开始帧至当前图像帧之间的特征满足预设条件的情况下,确定当前运动状态为第二非静止状态。

因此,通过运动开始帧及以后的历史图像帧以及当前图像帧对设备的运动状态进行确定,减小了运动开始帧以前的静止图像帧造成的干扰使得设备的运动状态的确定更准确。

其中,预设条件包括以下至少一个:运动开始帧与当前图像帧之间的第一时间差大于或等于第一时间阈值;运动开始帧至当前图像帧之间的历史图像帧数量大于或等于第一数量阈值;运动开始帧与当前图像帧中的预设二维点对的数量大于或等于第二数量阈值,其中,预设二维点对的视差大于或等于第一视差阈值;运动开始帧至当前图像帧之间的加速度计传感数据的离散程度大于或等于预设程度阈值。

因此,视差和传感数据的离散程度越大,则说明设备的运动幅度越大,历史图像帧的数量越多以及时差越大,说明有足够的传感数据用于优化定位参数,使得定位参数的优化结果更准确。

其中,利用预设运动学方程组对第一定位参数进行优化,包括:以其中一历史图像帧作为运动开始帧,并获取运动开始帧至当前图像帧之间的相邻图像帧的位置关系以及预积分信息;将位置关系以及预积分信息代入预设运动学方程组,求解得到尺度以及设备的速度;将求解得到的尺度以及设备的速度作为优化后的第一定位参数。

因此,在固定其余与尺度耦合不大的定位参数的情况下,求解尺度与速度,降低了对尺度以及速度的求解难度。

其中,求解得到的尺度以及速度为使得预设运动学方程组误差最小的一组解。

因此,通过将使得预设运动学方程组误差最小的一组解作为求解得到的尺度与速度,使得求解得到的尺度与速度相对其他解而言更准确,后续跟踪定位的结果更准确。

其中,在将求解得到的尺度以及设备的速度作为优化后的第一定位参数之前,方法还包括:将求解得到的尺度以及速度代入预设运动学方程组,得到预设运动学方程组中各运动学方程的误差;若各运动学方程的误差均小于或等于预设误差阈值,则确定尺度以及速度求解成功,并执行将求解得到的尺度以及设备的速度作为优化后的第一定位参数。

因此,只有在所有的运动学方程的误差均小于或等于预设误差阈值的情况下,才认为尺度和速度求解成功,使得尺度和速度的求解过程严格,从而求解得到的尺度以及速度更准确。

其中,以其中一历史图像帧作为运动开始帧,包括:按照历史图像帧与当前图像帧之间的第二时间差从少到多进行排序,并依序判断每相邻两历史图像帧之间的第三时间差是否大于第二时间阈值;在判断相邻两历史图像帧之间的第三时间差大于第二时间阈值的情况下,将相邻两历史图像帧中第二时间差更小的历史图像帧作为运动开始帧。

因此,根据相邻两历史图像帧之间的时间差确定运动开始帧,使得对运动开始帧的认定过程简便。

其中,在利用预设运动学方程组对第一定位参数进行优化之后,方法还包括:对尺度优化后的各历史图像帧的位置和/或各三维点的深度进行优化。

因此,通过将尺度优化后的各历史图像帧和三维点的深度进行优化,使得在后续跟踪定位过程中,能够有更准确的先验信息,从而跟踪定位的结果更准确。

其中,对尺度优化后的各历史图像帧的位置进行优化,包括:选择其中一历史图像帧作为第一参考帧;利用优化后的尺度,确定第一参考帧与其相邻历史图像帧之间的距离;按照距离,初步调整第一参考帧的相邻历史图像帧的位置;以初步调整后的相邻历史图像帧作为新的第一参考帧,并重新执行利用优化后的尺度,确定第一参考帧与其相邻历史图像帧之间的距离及其后续步骤,直至预设时间段内的历史图像帧均已初步调整完成。

因此,将历史图像帧之间的距离关系根据计算得到的尺度进行调整,优化各历史图像帧之间的位置关系,使得后续对设备跟踪定位的结果更准确。

其中,在预设时间段内的历史图像帧均已初步调整完成之后,方法还包括:以预设时间段内与所当前图像帧之间的时间差最少的历史图像帧作为第二参考帧;将第二参考帧的位置最终调整为初步调整之前所在的位置;基于第二参考帧在最终调整过程中的位置变化,调整预设时间段内除第二参考帧以外的其余历史图像帧的位置。

因此,在初步调整完成之后,各历史图像帧在初步调整前后的位置变化太大,即初步调整前后历史图像帧之间出现不连贯的现象,通过将与当前图像帧之间时间差最小的历史图像帧的初步调整后的位置移动至初步调整前的位置能够缓和这种不连贯的现象,使得后续跟踪定位的效果更佳。

其中,对尺度优化后的各三维点的深度进行优化,包括:对于各三维点,以首次观测到三维点的历史图像帧为基准,按照尺度调整三维点的深度。

因此,通过计算得到的尺度对三维点的深度进行优化使得后续能够使用更准确的三维点的坐标对设备进行跟踪定位,提高跟踪定位的准确度。

其中,在对尺度优化后的各历史图像帧的位置和/或各三维点的深度进行优化之前,方法还包括:删除预设时间段内位于运动开始帧之前的历史图像帧;和/或,在对尺度优化后的各历史图像帧的位置和/或各三维点的深度进行优化之后,包括:提高设备的位置、速度以及加速度计偏置量中的至少一者的不确定度。

因此,通过删除运动开始帧以前的历史图像帧能够减少拍摄时间过长的历史图像帧对优化结果的影响。提高设备的位置、速度以及加速度计偏置量的不确定度能够减少因为收敛过度,导致后期定位结果不准确的结果出现。

其中,基于运动信息,确定设备的当前运动状态,包括:在若干历史图像帧与当前图像帧之间的视差均小于第二视差阈值,和/或至少一个传感数据的离散程度小于对应的预设程度值的情况下,确定设备的当前运动状态为静止状态;其中,第二视差阈值是固定的或基于历史图像帧与当前图像帧之间的时间差动态调整的;至少一个传感数据是在当前运动状态之前的第一时间段内采集的,包括陀螺仪传感数据和/或加速度计传感数据。

因此,通过视差和传感数据的结合对静止状态的认定,较于单一视差或传感数据的认定而言,前者的认定结果更准确。

其中,利用第二优化方式对第二定位参数进行优化,包括:以速度为零作为约束,对第二定位参数进行约束。

因此,在静止状态下无法通过三维点的重投影误差对定位参数进行优化,通过增加速度为零的约束,使得当前图像帧的位姿较上一历史图像帧的位姿不会发生较大变化,提高定位参数的稳定性。

其中,方法还包括:判断当前图像帧之前的若干历史图像帧中是否有预设数量三维点;在若干历史图像帧中没有预设数量三维点的情况下,提高速度为零的约束权重;和/或,在若干历史图像帧中有预设数量三维点的情况下,降低速度为零的约束权重。

因此,通过根据三维点的数量降低或提高速度为零的权重,使得能够在各种状态下都能够很好地对定位参数进行优化。

本申请第二方面提供了一种定位初始化装置,包括:获取模块,用于在对待定位的设备的定位参数进行初始化之后,获取设备的运动信息;确定模块,用于基于运动信息,确定设备的当前运动状态;优化模块,用于根据设备的当前运动状态,对定位参数进行优化,得到优化后的定位参数。

本申请第三方面提供了一种电子设备,包括存储器和处理器,处理器用于执行存储器中存储的程序指令,以实现上述定位初始化方法。

本申请第四方面提供了一种计算机可读存储介质,其上存储有程序指令,程序指令被处理器执行时实现上述定位初始化方法。

上述方案,通过在对定位参数进行初始化之后,仍进一步获取设备的运动状态,然后根据运动状态对定位参数进行优化,使得能够根据优化之后的定位参数对设备后续的移动进行定位,提高了定位的准确度。

应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,而非限制本申请。

附图说明

此处的附图被并入说明书中并构成本说明书的一部分,这些附图示出了符合本申请的实施例,并与说明书一起用于说明本申请的技术方案。

图1是本申请定位初始化方法一实施例的第一流程示意图;

图2是本申请定位初始化方法一实施例中的第二流程示意图;

图3是本申请定位初始化装置一实施例的结构示意图;

图4是本申请电子设备一实施例的结构示意图;

图5是本申请计算机可读存储介质一实施例的结构示意图。

具体实施方式

下面结合说明书附图,对本申请实施例的方案进行详细说明。

以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、接口、技术之类的具体细节,以便透彻理解本申请。

本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。此外,本文中的“多”表示两个或者多于两个。另外,本文中术语“至少一种”表示多种中的任意一种或多种中的至少两种的任意组合,例如,包括a、b、c中的至少一种,可以表示包括从a、b和c构成的集合中选择的任意一个或多个元素。

请参阅图1,图1是本申请定位初始化方法一实施例的第一流程示意图。具体而言,可以包括如下步骤:

步骤s11:在对待定位的设备的定位参数进行初始化之后,获取设备的运动信息。

其中,对待定位的设备的定位参数进行初始化的方式可以包括运动初始化和静止初始化。运动初始化的方式可以是将视觉初始化与惯性传感器初始化分开,即先进行视觉初始化,在视觉初始化完成之后,再将初始化结果与惯性传感器初始化结果对齐,从而完成对定位参数的初始化。静止初始化所适用的情况是,设备处于相对静止状态时。因为设备处于相对静止状态,无法通过三角化等方式从各帧图像观测到的二维点得到对应的三维点坐标,也就无法得到准确的尺度信息,一般的做法就是假定一个尺度,继而根据假定的尺度确定其他定位参数。

获取设备的运动信息的方式可以是设备拍摄得到的图像帧之间的视差、时差等,也可以是各图像帧之间的传感数据等。对设备进行跟踪定位过程中采集的图像帧可以是任意具有摄像组件的设备拍摄得到,当然还可以是从其他设备中获取到的图像,也可以是经过选帧、调整亮度、分辨率等的图像。设备可以是采集图像帧的设备本身。其中,其他设备指的是分别利用不同中央处理器才能进行操作的设备。例如,在无人机驾驶过程中,无人机即为本公开实施例所述的设备。或者扫地机器人在工作中,扫地机器人也是本公开实施例所述的设备。即设备在一环境中,实现对自己在环境中的位置进行定位和/或导航。

步骤s12:基于运动信息,确定设备的当前运动状态。

其中,运动状态可以是静止状态,也可以是非静止状态。确定运动状态的方式可以是根据设备的运动幅度进行判断,例如根据前后拍摄得到各图像帧中二维点对之间的视差进行判断,当然,也可以根据传感数据进行判断。例如,当两图像帧之间的视差大于一个预设值时,则确定设备的当前运动状态为非静止状态。

步骤s13:根据设备的当前运动状态,对定位参数进行优化,得到优化后的定位参数。

其中,若预设的设备的运动状态为多种,则每种运动状态可以对应有相应的优化方式对定位参数进行优化,例如预设的设备的运动状态包括静止状态和非静止状态,则可以使用与静止状态或非静止状态对应的优化方式对定位参数进行优化。其中,优化之后的参数可以直接进行跟踪定位,当然,也可以在进行一次或多次优化之后,再使用其对设备进行跟踪定位。

上述方案,通过在对定位参数进行初始化之后,仍进一步获取设备的运动状态,然后根据运动状态对定位参数进行优化,使得能够根据优化之后的参数对设备后续的移动进行定位,提高了定位的准确度。

一些公开实施例中,定位参数分为第一定位参数和第二定位参数。其中,第一定位参数包括尺度,第二定位参数不同于第一定位参数。其中,第二定位参数不同于第一定位参数,可以理解为第二定位参数与第一定位参数所包含的参数不完全相同,例如,第二定位参数可以不包括尺度。同时参见图2,图2是本申请定位初始化方法一实施例中的第二流程示意图。如图2所示:步骤s13包括步骤s131和步骤s132。其中,步骤s131:在当前运动状态属于静止状态的情况下,利用第二优化方式对第二定位参数进行优化,步骤s132:在当前运动状态属于非静止状态的情况下,利用第一优化方式对第一定位参数进行优化,其中,第一优化方式与第二优化方式不同。通过设备处于静止状态或非静止状态时采用不同优化方式,对定位参数进行优化,能够适用不同的运动场景。即,根据设备的运动状态确定是执行步骤s131还是执行步骤s132。

具体确定设备处于静止状态和非静止状态的方式包括,在若干历史图像帧与当前图像帧之间的视差均小于第二视差阈值,和/或至少一个传感数据的离散程度小于对应的预设程度值的情况下,确定设备的当前运动状态为静止状态。其中,静止状态判定中使用的历史图像帧可以是当前图像帧以前第一时间段内所有拍摄的图像帧。进一步地,当前图像帧和历史图像帧为设备拍摄得到,当前图像帧未用于设备的跟踪定位,而历史图像帧已用于对设备的跟踪定位。即,当前图像帧仅进行过图像处理,即特征提取和匹配,暂未进行过跟踪定位,而历史图像帧不仅经过图像处理,还进行过跟踪定位。其中,这里的跟踪定位包括利用其确定过设备在世界坐标系下的位置。其中,第一时间段可以根据需求自行设定,不做限制。将第一时间段内的所有历史图像帧分别与当前图像帧进行视差的判断,若存在某一历史图像帧与当前图像帧的视差大于第二视差阈值,则认定设备的当前运动状态不属于静止状态。可选地,第一时间段内的历史图像帧的数量大于或等于2帧。本公开实施例中,历史图像帧的数量为3帧即以上。通过设置多帧历史图像帧进行视差的判断可以减小因为历史图像帧的数量过少带来的误判,即提高了静止状态判断的准确度。同时,第一时间段也不可过长,若第一时间段过长则会导致拍摄时间过长的历史图像帧对应的信息给当前运动状态的确定带来误差。其中,第一时间段是否过长可采用是否超过一时间阈值来确定,如若第一时间段超过时间阈值则确定为过长。该时间阈值可根据设备拍摄图像的频率确定,例如,设备在1s内能够拍摄200张图像的情况下,当第一时间段为1s以上,则可能导致200张以上的历史图像帧之间的信息不太准确,给当前运动状态的确定带来误差,故时间阈值可以为1s,第一时间段则为1秒以内,例如200ms等等。即,在拍摄当前图像帧以前1秒内拍摄的所有历史图像帧皆用于静止状态的判断。当然,一些公开实施例中,还可对第一时间段内拍摄的历史图像帧的质量进行选择,若历史图像帧的质量过低,则不参与静止状态的判断。例如,历史图像帧中无法提取到二维点的情况下,则认为历史图像帧的质量过低。

可选地,第二视差阈值可以是固定的,也可以是基于历史图像帧与当前图像帧之间的时间差动态调整的。其中,基于历史图像与当前图像帧之间的时间差动态调整可以是根据预设时间段内与当前图像帧相隔最远的历史图像帧与当前图像帧之间的时间差大小进行调整。例如,时间差越大,则第二视差阈值将调高,若时间差越小,则将第二视差阈值调低。其中,这里的预设时间段长于第一时间段。这里的预设时间段内的所有历史图像帧是从设备拍摄得到的所有历史图像帧中选出的部分帧。即,第一时间段内的部分历史图像帧可能同时位于预设时间段内。具体的选择方式可以是根据历史图像帧中提取得到的二维点数目大于某一阈值或者与其上一历史图像帧之间的视差大于对应的阈值等等,具体从所有的历史图像中选择预设时间段内的历史图像帧的方式,此处不做具体规定。需要说明的是,除了在静止状态判断中使用的历史图像帧为第一时间段内的历史图像帧,其余步骤中的历史图像帧均为预设时间段内的历史图像帧,因此,以下不对每个出现的历史图像帧进行过多解释。当然,在其他实施例中,静止状态判断中使用的历史图像帧也可以是预设时间段内的历史图像帧。在一些实施例中,本文所述的预设时间段也可以称为滑窗。

可选地,至少一个传感数据是在当前运动状态之前的第一时间段内采集的。传感数据包括陀螺仪传感数据和/或加速度计传感数据。也就是,传感数据指的是第一时间段内各历史图像帧之间的传感数据。其中,传感数据的离散程度可以是陀螺仪传感数据和/或加速度计传感数据在预设时间段内的标准差。当然,在其他实施例中,还可使用其他的参数用于表征传感数据的离散程度,例如方差等等,此处对于离散程度的具体确定方式不做具体规定。

本公开实施例中,若陀螺仪传感数据与加速度计传感数据的其中一个标准差大于其对应的预设程度值,则认定设备的当前运动状态不属于静止状态。进一步地,只有在上述视差判定中均小于第二视差阈值且离散程度均小于对应的预设程度值的情况下,才确定设备的当前运动状态为静止状态。

通过视差和传感数据的结合对静止状态的认定,较于单用视差或传感数据的认定而言,前者的认定结果更准确。

在当前运动状态属于静止状态的情况下,利用第二优化方式对第二定位参数进行优化,其中,第二定位参数不包括尺度。其中,第二定位参数与第一定位参数的区别包括,第一定位参数需要对初始化得到的尺度进行优化,而第二参数中不需要对初始化得到的尺度进行优化。第二定位参数中包括除尺度以外的其他第一定位参数。因为当设备属于静止状态时,无法根据三角化得到三维点的坐标,仅能确定三维点相对于设备的朝向,并不知道其深度信息。因此,无法通过重投影误差等方式对定位参数进行优化。因此,采用第二优化方式对定位参数进行优化,即以速度为零作为约束,对第二定位参数进行约束。在这种情况下,预设时间段内的历史图像帧不会发生变化。当然,本公开实施例所述的以速度为零作为约束并不是说仅用速度为零去优化定位参数,而是在一般的视觉优化过程中另外再加入当前图像帧速度为零的约束。

在静止状态下无法通过三维点的重投影误差对定位参数进行优化,通过增加速度为零的约束,使得当前图像帧的位姿较上一历史图像帧的位姿不会发生较大变化,提高定位参数的稳定性。

可选地,在使用第二优化方式对第二定位参数进行优化的过程中,判断当前图像帧之前的若干历史图像帧中是否有预设数量三维点,在若干历史图像帧中没有预设数量三维点的情况下,提高速度为零的约束权重;和/或,在若干历史图像帧中有预设数量三维点的情况下,降低速度为零的约束权重。其中,权重越高,则说明其置信度越高,其对设备跟踪定位的影响更大,若权重越低,则说明其置信度越低,其对设备跟踪定位的影响更小。即,如果当前图像帧之前的若干历史图像帧中具有预设数量三维点,则可以直接使用三维点在各帧上的重投影误差对定位参数进行优化,提高对定位参数的优化效果,也就是降低速度为零的权重,而在当前图像帧之前的若干历史图像帧中不具有预设数量的三维点时,无法很好地通过重投影误差对定位参数进行优化,此时反而可以提高速度为零对定位参数的约束。

通过根据三维点的数量降低或提高速度为零的权重,使得能够在各种状态下都能够很好地对定位参数进行优化。

利用设备的当前运动状态,对定位参数进行优化的方式可以是在当前运动状态属于非静止状态的情况下,利用第一优化方式对第一定位参数进行优化,其中,第一定位参数包括尺度。第一定位参数还可包括设备的速度、惯性传感器的偏置量、设备的速度、位置等等。其中,本公开实施例中,非静止状态包括第一非静止状态和第二非静止状态。其中,设备在第一非静止状态和第二非静止状态下的运动幅度不同。可选地,根据设备的运动幅度等因素,将非静止状态细分为第一非静止状态和第二非静止状态。例如,设备的运动幅度够大,则认定设备属于第二非静止状态,若运动幅度太小,则可以认为设备属于第一非静止状态。其中,设备分别处于第一非静止状态、第二非静止状态以及静止状态下的运动幅度之间的关系如下:静止状态下设备的运动幅度<第一非静止状态下设备的运动幅度<第二非静止状态下设备的运动幅度。

确定设备的运动状态属于第一或第二非静止运动状态的方式包括:

以其中一历史图像帧作为运动开始帧。在运动开始帧至当前图像帧之间的特征不满足预设条件的情况下,确定当前运动状态为第一非静止状态。在运动开始帧至当前图像帧之间的特征满足预设条件的情况下,确定当前运动状态为第二非静止状态。其中,在非静止状态的判定中,使用的历史图像帧可以是预设时间段内的历史图像帧。其中,特征包括图像帧数量、时差、视差和传感数据中的一个或多个。其中,这里的第二非静止状态指的是设备的运动幅度较大的状态,而第一非静止状态则是位于静止状态和第二非静止状态之间的运动状态。因为运动开始帧以前的历史图像帧中无法获知三维点的深度信息,因此对于尺度的求解没有任何帮助,反而可能因为拍摄的时间过长而引起求解尺度等定位参数的过程中引起误差,因此,本公开实施例仅考虑运动开始帧以后的历史图像帧。

通过运动开始帧及以后的历史图像帧以及当前图像帧对设备的运动状态进行确定,减小了运动开始帧以前的静止图像帧造成的干扰使得设备的运动状态的确定更准确。

其中,运动开始帧的确定方式包括:按照历史图像帧与当前图像帧之间的第二时间差从少到多排序,并依序判断每相邻两历史图像帧之间的第三时间差是否大于第二时间阈值。在判断相邻两历史图像帧之间的第三时间差大于第二时间阈值的情况下,将相邻两历史图像帧中第二时间差更小的历史图像帧作为运动开始帧。即,第二时间差是各历史图像帧分别与当前图像帧之间的时间差,而第三时间差指的是每相邻两个历史图像帧之间的时间差。此时,第三时间差中不包含当前图像帧与其相邻历史图像帧之间的时间差。

其中,运动开始帧的确定中历史图像帧为预设时间段内的历史图像帧。本公开实施例中,若设备处于静止状态下,预设时间段内的历史图像帧满足后进先出原则,后进先出原则指的是在后拍摄的历史图像帧会先从预设时间段内移除,当然从预设时间段内移除并不意味着将该历史图像帧会从存储空间中删除,存储空间中仍然会保留该关键帧的位姿以及与前一历史图像帧之间的传感数据。当设备处于非静止状态下,若最后拍摄的两历史图像帧之间的视差大于某一阈值,则将预设时间段内与最早拍摄的一历史图像帧从预设时间段内移除,若其视差小于或等于该阈值,则将预设时间段内倒数第二拍摄的历史图像帧从预设时间段内移除。通过这种方式,预设时间段内运动开始帧与运动开始帧相邻且先于运动开始帧拍摄的历史图像帧之间会有一明显时差,由此,本公开实施例通过相邻图像帧之间的时差确定运动开始帧。根据相邻两历史图像帧之间的时间差确定运动开始帧,使得对运动开始帧的认定过程简便。

其中,预设条件具体包括以下至少一个:一、运动开始帧与当前图像帧之间的第一时间差大于或等于第一时间差阈值。通过保证运动开始帧与当前图像帧之间有足够的时差,使得有足够的传感数据可以用于积分,提高对定位参数优化的准确度。二、运动开始帧至当前图像帧之间的历史图像帧数量大于或等于第一数量阈值。其中,保障运动开始帧至当前图像帧之间有足够的历史图像帧使得有足够的传感数据能够参与积分使得优化之后的定位参数更加准确。三、运动开始帧与当前图像帧中的预设二维点对的数量大于或等于第二数量阈值。其中,预设二维点对指的是从各历史图像帧中提取出的二维点经过不同历史图像帧之间的二维点匹配得到的二维点对。进行二维点匹配的方式有多种,例如特征匹配,也就是计算提取得到的二维点即关键点的描述子之间的距离,若距离小于某一阈值,则认定匹配成功,还有二维点匹配的方式可以是通过光流法进行块的匹配等等,关于预设二维点对的获得方式此处不做具体规定。其中,预设二维点对的视差大于或等于第一视差阈值。也就是判断视差大于或等于第一视差阈值的预设二维点对的数量是否大于或等于第二数量阈值。当然,在其他实施例中,还可以根据运动开始帧与当前图像帧之间的任一历史图像帧与当前图像帧中的预设二维点对的数量大于或等于第二数量阈值,此处不做具体规定。四、运动开始帧至当前图像帧之间的加速度计传感数据的离散程度大于或等于预设程度阈值。当然,若根据实际需求若需要严格设置预设条件,则还可加上第五个判断条件,即运动开始帧至当前图像帧之间的陀螺仪传感数据的离散程度大于或等于与其对应的预设程度阈值。本公开实施例中,若特征同时满足前四个条件,则认定设备的当前运动状态为第二非静止状态,即若特征不满足前四个中的任一个条件,则认定设备的当前运动状态不属于第二非静止状态。其中,本公开实施例中,对设备的运动状态是属于静止状态还是非静止状态的确定可以同时进行。若认为设备的运动状态不属于静止状态,也不满足上述前四个预设条件中的任一个,则认为设备的运动状态为第一非静止状态。

视差和传感数据的离散程度越大,则说明设备的运动幅度越大,历史图像帧的数量越多以及时差越大,说明有足够的传感数据用于优化定位参数,使得定位参数的优化结果更准确。

可选地,在当前运动状态属于第一非静止状态的情况下,可利用各三维点在当前图像帧及历史图像帧上的重投影误差,对第一定位参数进行优化。即,当设备处于非静止状态,则根据设备的运动,可以将设备拍摄的当前图像帧和各历史图像帧中观测到的二维点经过三角化得到三维点的坐标,然后将得到的三维点重新投影到当前图像帧以及各历史图像帧上得到投影点,其中,各图像帧中三维点对应的投影点与该三维点对应的观测到的二维点之间距离即为重投影误差。一般地,重投影误差可以对三维点以及各图像帧的位姿同时优化。通过改变相机的位姿,使得重投影误差最小化,从而达到优化相机位姿以及优化三维点的坐标的效果。因为三维点的坐标确定,相机的位姿也确定,即相邻帧之间的距离和角度确定,结合相邻图像帧之间的传感数据可以确定其他的定位参数。

通过将非静止状态又细分为多种非静止状态,使得设备处于非静止状态下时又可根据具体的运动情况选择合适的优化方式,提高对参数的优化效果。

其中,在当前运动状态属于第二非静止状态的情况下,利用预设运动学方程组对第一定位参数进行优化。其中,以其中一历史图像帧作为运动开始帧,并获取运动开始帧至当前图像帧之间的相邻图像帧的位置关系以及预积分信息。其中,确定运动开始帧的方式如上所述,若在运动状态的确定过程中已经确定了运动开始帧,则此处可以不再执行确定运动开始帧的步骤。其中,此处所述的运动开始帧至当前图像帧之间的相邻图像帧为预设时间段内的历史图像帧。其中位置关系包括距离关系和角度关系。预积分信息包括陀螺仪测量得到的数据的预积分以及加速度计测量得到的数据的预积分。将位置关系以及预积分信息代入预设运动学方程组,求解得到尺度以及设备的速度。其中,关于定位参数中的角度、传感器中陀螺仪偏置量以及加速度计偏置量依旧采用初始化得到的结果,并将该结果与上述位置关系和预积分信息一并代入运动学方程组,求解尺度与速度。一般地,在检测到设备处于非静止状态时,定位参数包括其中xk表示在k时刻的所有定位参数,xc表示当前使用的定位参数,xs表示预设时间段内各历史关键帧对应的定位参数。其中,其中,g表示世界坐标系,c表示相机坐标系,表示从世界坐标系到k时刻相机坐标系的旋转矩阵,表示k时刻相机在世界坐标系下的位置,表示k时刻在世界坐标系下的运动速度,bwk表示k时刻陀螺仪的偏置量,bak表示在k时刻加速度计的偏置量,t表示转置。其中,假设预设时间段中共有n帧历史图像帧,则即预设时间段内保留了历史图像帧在世界坐标系下的位置、角度以及速度。

首先,定义一组需要求解的定位参数,其中s表示尺度,g表示重力方向,表示在k时刻设备在世界坐标系下的运动速度。

其中,预设运动学方程如下:

其中,rii,j表示从i帧到j帧预积分值与先验值之间的误差。表示对应的预积分的协方差矩阵。其中,预设运动学方程组由若干个上述预设运动学方程组成。

一些公开实施例中,求解尺度和速度的方式可以采用传感数据的预积分信息与初始化的定位参数线性求解,其中,初始化的定位参数包括三维点及其重投影误差,还可以采用这两类信息的非线性优化。因此,预设运动学方程的构建方式并不限于上述运动学方程。在固定其余与尺度耦合不大的定位参数的情况下,求解尺度与速度,降低了对尺度以及速度的求解难度。

其中,求解得到的尺度和速度为使得上述预设运动学方程组误差最小的一组解。也就是将各个预设运动学方程的误差求和最小的一组解。通过将使得预设运动学方程组误差最小的一组解作为求解得到的尺度与速度,使得求解得到的尺度与速度相对其他解而言更准确,后续跟踪定位的结果更准确。进一步地,将求解得到的尺度以及速度代入预设运动学方程组,得到预设运动学方程组中各运动学方程的误差。若其中一个方程的误差大于预设误差阈值,则认定尺度和速度求解失败。在尺度和速度求解失败之后,按照初始化的定位参数对当前图像帧进行跟踪定位,若进行跟踪定位之后,当前图像帧满足预设时间段内历史图像帧的选择要求,则当前图像帧可以进入预设时间段,作为预设时间段内最新的历史图像帧。然后获取新的图像帧,对设备的运动状态进行确定,接着执行后续的步骤。若各运动学方程组的误差均小于或等于预设误差阈值,则确定尺度和速度求解成功。并执行将求解到的尺度以及设备的速度作为优化后的第一定位参数。也就是用求解得到的尺度与速度更新原初始化得到的尺度和速度。其中,其余定位参数包括角度、陀螺仪和加速度计偏置量可以直接使用之前初始化的收敛值,当然,可以使用预设值,例如出厂标定值或上一次跟踪定位使用的值。当然,可以是将计算得到的尺度、速度以及陀螺仪偏置量的值代入传感数据的预积分方程,找到使得预积分方程误差最小的一组解。

通过在所有的运动学方程的误差均小于或等于预设误差阈值的情况下,才认为尺度和速度求解成功,使得尺度和速度的求解过程严格,从而求解得到的尺度以及速度更准确。

对尺度优化后的各历史图像帧的位置进行优化。可选地,在尺度和速度求解成功之后,选择其中一历史图像帧作为第一参考帧。例如,选择预设时间段内与当前图像帧之间的时间差最大的历史图像帧为参考帧。利用优化后的尺度,确定第一参考帧与其相邻历史图像帧之间的距离。即利用优化后的尺度代替原尺度求解相邻两历史图像帧之间的距离。按照该距离,初步调整第一参考帧的相邻图像帧的位置。例如,按照原尺度求解得到的第一参考帧与其相邻图像帧之间的距离为1米,而按照优化之后的尺度求解得到的第一参考帧与其相邻历史图像帧之间的距离为2米,则移动第一参考帧的相邻图像帧,使得第一参考帧与其相邻帧之间的距离为2米,当然,整个过程中仅移动距离不改变第一参考帧与其相邻帧之间的角度。接着,以初步调整后的该相邻图像帧作为新的第一参考帧,并重新执行利用优化后的尺度,确定第一参考帧与其相邻历史图像帧之间的距离及其后续步骤。直至预设时间段内的历史图像帧均已初步调整完成。当然,这里将该相邻图像帧作为新的第一参考帧之后,可以不用继续调整与该新的第一参考帧相邻的上一第一参考帧的位置,继续调整未经初步调整的其余历史图像帧的位置。

在预设时间段内的历史图像帧均已初步调整完成之后,以预设时间段内与当前图像帧之间的时间差最小的历史图像帧作为第二参考帧。也就是当前图像帧的前一历史图像帧。将第二参考帧的位置最终调整为初步调整之前其所在位置。即,对于第二参考帧而言,经过初步调整以及最终调整之后的位置相对于初步调整之前的位置并未发生变动。然后,基于第二参考帧在最终调整过程中的位置变化,调整预设时间段内除第二参考帧以外的其余历史图像帧的位置。其中,最终调整过程中,相邻历史图像帧之间的尺度不会发生变化,简单而言就是预设时间段内历史图像帧整体的一个平移过程。通过在初步调整完成之后,各历史图像帧在初步调整前后的位置变化太大,即初步调整前后历史图像帧之间出现不连贯的现象,通过将与当前图像帧之间时间差最小的历史图像帧的初步调整后的位置移动至初步调整前的位置能够缓和这种不连贯的现象,使得后续跟踪定位的效果更佳。

其中,对尺度优化后的各三维点的深度进行优化。当然,对于尺度优化之后,各历史图像帧的位置和各三维点的深度可以都进行优化。其中对三维点深度的优化方式可以有多种,例如利用位置优化后的各历史图像帧重新对各帧中匹配的二维点对进行三角化得到新的三维点的坐标,并利用新的三维点对原来对应的三维点进行更新,从而实现对各三维点的更新。当然,对三维点深度的优化方式还可以是以首次观测到三维点的历史图像帧为基准,按照尺度调整三维点的深度。因为三维点相对于首次观测到该三维点的朝向是已知的,深度是按照优化前的尺度求解得到,那么可以根据该原三维点与首次观测到该三维点的历史图像帧的朝向关系求解最终调整之后首次观测到该三维点的历史图像帧之间的朝向关系并按照新的尺度求解三维点的深度以得到新三维点的坐标,由此更新各三维点的坐标。

通过将尺度优化后的各历史图像帧和三维点的深度进行优化,使得在后续跟踪定位过程中,能够有更准确的先验信息,从而跟踪定位的结果更准确。

其中,在对尺度优化后的各历史图像帧的位置和/或各三维点的深度进行优化之前,删除预设时间段内位于运动开始帧之前的历史图像帧。删除的意思是将运动开始帧之前的历史图像帧从第二预设时间段内移除,但是还可以将被移除的历史图像帧的位姿以及传感数据保存在存储单元中。

一些公开实施例中,在对尺度优化后的各历史图像帧的位置和/或各三维点的深度进行优化之后,提高设备的位置、速度以及加速度计偏置量中的至少一者的不确定度。因为设备的位置、速度以及加速度计偏置量在之前初始化过程中可能会收敛过度自信,即位置、速度以及加速度计偏置量的误差也许较大,因此,需要增加他们的不确定度以降低后续在跟踪定位过程中的影响力,然后根据后续跟踪定位中获取到的运动信息不断对位置、速度以及加速度计进行更新。

上述方案,通过在对定位参数进行初始化之后,仍进一步获取设备的运动状态,然后根据运动状态对定位参数进行优化,使得能够根据优化之后的参数对设备后续的移动进行定位,提高了定位的准确度。

其中,定位初始化方法的执行主体可以是定位初始化装置,例如,定位初始化方法可以由终端设备或服务器或其它处理设备执行,其中,终端设备可以为:虚拟现实头盔,增强现实眼镜、无人车、移动机器人、扫地机器人、飞行设备、用户设备(userequipment,ue)、移动设备、用户终端、终端、蜂窝电话、无绳电话、个人数字处理(personaldigitalassistant,pda)、手持设备、计算设备、车载设备、可穿戴设备等同时具有图像传感器和惯性传感器的设备。在一些可能的实现方式中,该定位初始化方法可以通过处理器调用存储器中存储的计算机可读指令的方式来实现。

请参阅图3,图3是本申请定位初始化装置一实施例的结构示意图。定位初始化装置30包括:获取模块31、确定模块32以及优化模块33。获取模块31用于在对待定位的设备的定位参数进行初始化之后,获取设备的运动信息;确定模块32用于基于运动信息,确定设备的当前运动状态;优化模块33用于根据设备的当前运动状态,对定位参数进行优化,得到优化后的定位参数。

上述方案,通过在对定位参数进行初始化之后,仍进一步获取设备的运动状态,然后根据运动状态对定位参数进行优化,使得能够根据优化之后的参数对设备后续的移动进行定位,提高了定位的准确度。

一些公开实施例中,定位参数分为第一定位参数和第二定位参数;优化模块33利用设备的当前运动状态,对定位参数进行优化,得到优化后的定位参数,包括:在当前运动状态属于非静止状态的情况下,利用第一优化方式对第一定位参数进行优化,其中,第一定位参数包括尺度;或,在当前运动状态属于静止状态的情况下,利用第二优化方式对第二定位参数进行优化,其中,第二定位参数不同于第一定位参数。

上述方案,通过设备处于静止状态或非静止状态时采用不同优化方式,对定位参数进行优化,能够适用不同的运动场景。

一些公开实施例中,非静止状态包括第一非静止状态和第二非静止状态;优化模块33在当前运动状态属于非静止状态的情况下,利用第一优化方式对第一定位参数进行优化,包括:在当前运动状态属于第一非静止状态的情况下,利用各三维点在当前图像帧及若干历史图像帧上的重投影误差,对所第一定位参数进行优化;其中,当前图像帧和历史图像帧为设备拍摄得到的,当前图像帧未用于对设备的跟踪定位,历史图像帧已用于对设备的跟踪定位;或,在当前运动状态属于第二非静止状态的情况下,利用预设运动学方程组对第一定位参数进行优化。

上述方案,将非静止状态又细分为多种非静止状态,使得设备处于非静止状态下时又可根据具体的运动情况选择合适的优化方式,提高对参数的优化效果。

一些公开实施例中,确定模块32基于运动信息,确定设备的当前运动状态,包括以下至少一个步骤:以其中一历史图像帧作为运动开始帧;在运动开始帧至当前图像帧之间的特征不满足预设条件的情况下,确定当前运动状态为第一非静止状态;其中,特征包括图像帧数量、时差、视差和传感数据中的一个或多个;在运动开始帧至当前图像帧之间的特征满足预设条件的情况下,确定当前运动状态为第二非静止状态。

上述方案,通过运动开始帧及以后的历史图像帧以及当前图像帧对设备的运动状态进行确定,减小了运动开始帧以前的静止图像帧造成的干扰使得设备的运动状态的确定更准确。

一些公开实施例中,预设条件包括以下至少一个:运动开始帧与当前图像帧之间的第一时间差大于或等于第一时间阈值;运动开始帧至当前图像帧之间的历史图像帧数量大于或等于第一数量阈值;运动开始帧与当前图像帧中的预设二维点对的数量大于或等于第二数量阈值,其中,预设二维点对的视差大于或等于第一视差阈值;运动开始帧至当前图像帧之间的加速度计传感数据的离散程度大于或等于预设程度阈值。

上述方案,视差和传感数据的离散程度越大,则说明设备的运动幅度越大,历史图像帧的数量越多以及时差越大,说明有足够的传感数据用于优化定位参数,使得定位参数的优化结果更准确。

一些公开实施例中,优化模块33利用预设运动学方程组对第一定位参数进行优化,包括:以其中一历史图像帧作为运动开始帧,并获取运动开始帧至当前图像帧之间的相邻图像帧的位置关系以及预积分信息;将位置关系以及预积分信息代入预设运动学方程组,求解得到尺度以及设备的速度;将求解得到的尺度以及设备的速度作为优化后的第一定位参数。

上述方案,在固定其余与尺度耦合不大的定位参数的情况下,求解尺度与速度,降低了对尺度以及速度的求解难度。

一些公开实施例中,求解得到的尺度以及速度为使得预设运动学方程组误差最小的一组解。

上述方案,通过将使得预设运动学方程组误差最小的一组解作为求解得到的尺度与速度,使得求解得到的尺度与速度相对其他解而言更准确,后续跟踪定位的结果更准确。

一些公开实施例中,在将求解得到的尺度以及设备的速度作为优化后的第一定位参数之前,优化模块33还用于:将求解得到的尺度以及速度代入预设运动学方程组,得到预设运动学方程组中各运动学方程的误差;若各运动学方程的误差均小于或等于预设误差阈值,则确定尺度以及速度求解成功,并执行将求解得到的尺度以及设备的速度作为优化后的第一定位参数。

上述方案,只有在所有的运动学方程的误差均小于或等于预设误差阈值的情况下,才认为尺度和速度求解成功,使得尺度和速度的求解过程严格,从而求解得到的尺度以及速度更准确。

一些公开实施例中,以其中一历史图像帧作为运动开始帧,包括:确定模块32按照历史图像帧与当前图像帧之间的第二时间差从少到多进行排序,并依序判断每相邻两历史图像帧之间的第三时间差是否大于第二时间阈值;在判断相邻两历史图像帧之间的第三时间差大于第二时间阈值的情况下,将相邻两历史图像帧中第二时间差更小的历史图像帧作为运动开始帧。

上述方案,根据相邻两历史图像帧之间的时间差确定运动开始帧,使得对运动开始帧的认定过程更简便。

一些公开实施例中,在利用预设运动学方程组对第一定位参数进行优化之后,优化模块33还用于:对尺度优化后的各历史图像帧的位置和/或各三维点的深度进行优化。

上述方案,通过将尺度优化后的各历史图像帧和三维点的深度进行优化,使得在后续跟踪定位过程中,能够有更准确的先验信息,从而跟踪定位的结果更准确。

一些公开实施例中,优化模块33对尺度优化后的各历史图像帧的位置进行优化,包括:选择其中一历史图像帧作为第一参考帧;利用优化后的尺度,确定第一参考帧与其相邻历史图像帧之间的距离;按照距离,初步调整第一参考帧的相邻历史图像帧的位置;以初步调整后的相邻历史图像帧作为新的第一参考帧,并重新执行利用优化后的尺度,确定第一参考帧与其相邻历史图像帧之间的距离及其后续步骤,直至预设时间段内的历史图像帧均已初步调整完成。

上述方案,将历史图像帧之间的距离关系根据计算得到的尺度进行调整,优化各历史图像帧之间的位置关系,使得后续对设备跟踪定位的结果更准确。

一些公开实施例中,在预设时间段内的历史图像帧均已初步调整完成之后,优化模块33还用于:以预设时间段内与所当前图像帧之间的时间差最少的历史图像帧作为第二参考帧;将第二参考帧的位置最终调整为初步调整之前所在的位置;基于第二参考帧在最终调整过程中的位置变化,调整预设时间段内除第二参考帧以外的其余历史图像帧的位置。

上述方案,在初步调整完成之后,各历史图像帧在初步调整前后的位置变化太大,即初步调整前后历史图像帧之间出现不连贯的现象,通过将与当前图像帧之间时间差最小的历史图像帧的初步调整后的位置移动至初步调整前的位置能够缓和这种不连贯的现象,使得后续跟踪定位的效果更佳。

一些公开实施例中,优化模块33对尺度优化后的各三维点的深度进行优化,包括:对于各三维点,以首次观测到三维点的历史图像帧为基准,按照尺度调整三维点的深度。

上述方案,通过计算得到的尺度对三维点的深度进行优化使得后续能够使用更准确的三维点的坐标对设备进行跟踪定位,提高跟踪定位的准确度。

一些公开实施例中,在对尺度优化后的各历史图像帧的位置和/或各三维点的深度进行优化之前,优化模块33还用于:删除预设时间段内位于运动开始帧之前的历史图像帧;和/或,在对尺度优化后的各历史图像帧的位置和/或各三维点的深度进行优化之后,包括:提高设备的位置、速度以及加速度计偏置量中的至少一者的不确定度。

上述方案,通过删除运动开始帧以前的历史图像帧能够减少拍摄时间过长的历史图像帧对优化结果的影响。提高设备的位置、速度以及加速度计偏置量的不确定度能够减少因为收敛过度,导致后期定位结果不准确的结果出现。

一些公开实施例中,确定模块32基于运动信息,确定设备的当前运动状态,包括:在若干历史图像帧与当前图像帧之间的视差均小于第二视差阈值,和/或至少一个传感数据的离散程度均小于对应的预设程度值的情况下,确定设备的当前运动状态为静止状态;其中,第二视差阈值是固定的或基于历史图像帧与当前图像帧之间的时间差动态调整的;至少一个传感数据是在当前运动状态之前的第一时间段内采集的,包括陀螺仪传感数据和/或加速度计传感数据。

上述方案,通过视差和传感数据的结合对静止状态的认定,较于单一视差或传感数据的认定而言,前者的认定结果更准确。

一些公开实施例中,优化模块33利用第二优化方式对第二定位参数进行优化,包括:以速度为零作为约束,对第二定位参数进行约束。

上述方案,在静止状态下无法通过三维点的重投影误差对定位参数进行优化,通过增加速度为零的约束,使得当前图像帧的位姿较上一历史图像帧的位姿不会发生较大变化,提高定位参数的稳定性。

一些公开实施例中,优化模块33还用于:判断当前图像帧之前的若干历史图像帧中是否有预设数量三维点;在若干历史图像帧中没有预设数量三维点的情况下,提高速度为零的约束权重;和/或,在若干历史图像帧中有预设数量三维点的情况下,降低速度为零的约束权重。

上述方案,通过根据三维点的数量降低或提高速度为零的权重,使得能够在各种状态下都能够很好地对定位参数进行优化。

上述方案,通过在对定位参数进行初始化之后,仍进一步获取设备的运动状态,然后根据运动状态对定位参数进行优化,使得能够根据优化之后的参数对设备后续的移动进行定位,提高了定位的准确度。

请参阅图4,图4是本申请电子设备一实施例的结构示意图。电子设备40包括存储器41和处理器42,处理器42用于执行存储器41中存储的程序指令,以实现上述任一定位初始化方法实施例中的步骤。在一个具体的实施场景中,电子设备40可以包括但不限于:移动机器人、手持移动设备、扫地机器人、无人车、虚拟现实头盔、增强现实眼镜飞行设备、微型计算机、台式电脑、服务器等其他同时具有图像传感器和惯性传感器模组的设备,此外,电子设备40还可以包括笔记本电脑、平板电脑等移动设备,在此不做限定。

具体而言,处理器42用于控制其自身以及存储器41以实现上述任一定位初始化方法实施例中的步骤。处理器42还可以称为cpu(centralprocessingunit,中央处理单元)。处理器42可能是一种集成电路芯片,具有信号的处理能力。处理器42还可以是通用处理器、数字信号处理器(digitalsignalprocessor,dsp)、专用集成电路(applicationspecificintegratedcircuit,asic)、现场可编程门阵列(field-programmablegatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。另外,处理器42可以由集成电路芯片共同实现。

上述方案,通过在对定位参数进行初始化之后,仍进一步获取设备的运动状态,然后根据运动状态对定位参数进行优化,使得能够根据优化之后的参数对设备后续的移动进行定位,提高了定位的准确度。

请参阅图5,图5是本申请计算机可读存储介质一实施例的结构示意图。计算机可读存储介质50存储有能够被处理器运行的程序指令51,程序指令51用于实现上述任一定位初始化方法实施例中的步骤。

上述方案,通过在对定位参数进行初始化之后,仍进一步获取设备的运动状态,然后根据运动状态对定位参数进行优化,使得能够根据优化之后的参数对设备后续的移动进行定位,提高了定位的准确度。

在一些实施例中,本公开实施例提供的装置具有的功能或包含的模块可以用于执行上文方法实施例描述的方法,其具体实现可以参照上文方法实施例的描述,为了简洁,这里不再赘述。

上文对各个实施例的描述倾向于强调各个实施例之间的不同之处,其相同或相似之处可以互相参考,为了简洁,本文不再赘述。

在本申请所提供的几个实施例中,应该理解到,所揭露的方法和装置,可以通过其它的方式实现。例如,以上所描述的装置实施方式仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性、机械或其它的形式。

另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本申请各个实施方式方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

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