基于云端的轨迹地图生成方法、装置、设备及应用程序与流程

文档序号:14845747发布日期:2018-06-30 14:57阅读:361来源:国知局
基于云端的轨迹地图生成方法、装置、设备及应用程序与流程

本申请涉及地图优化处理技术领域,可以应用于云端机器人领域,还可以应用于机器人、无人机避障、导盲领域。特别涉及一种基于云端的轨迹地图生成方法、装置、设备及应用程序。



背景技术:

云端机器人是将认知系统放在云里,身体、驱动、传感器放在机器人本体上,通过移动通信将二者连接起来的智能机器人;云端机器人是智能仿人机器人发展的方向。

SLAM(simultaneous localization and mapping,即时定位与地图构建)是这样一种技术:使得机器人和自动驾驶汽车等设备能在未知环境(没有先验知识的前提下)建立地图,或者在已知环境(已给出该地图的先验知识)中能更新地图,并保证这些设备能在同时追踪它们的当前位置。

随着高性能处理器以及多线程架构的发展,基于视觉的实时定位与建图技术又一次在国际学术前沿崭露头角。在基于视觉的SLAM领域,从视觉前端来分,通常分为基于特征的方案和基于直接法的方案,从后端优化来分,又分为基于滤波器的方案和基于优化的方案,从所用的传感器来分,还可以分为单目SLAM、双目SLAM、VIO(Visual-Inertial Odometry,视觉惯性里程计)等等。其中,单目SLAM方案由于没有固定的尺度,不能得到真实尺度的地图,且容易出现尺度漂移的问题。双目SLAM方案由于基线长度的限制,很难在室外大景深的场景中得到高精度的地图。

为了得到具有真实尺度的高精度地图,较容易想到的方案是使用多种SLAM方案获得同一个区域的轨迹地图或者多次运行同一个SLAM方案得到同一个区域的轨迹地图,再利用相应的算法去减少误差得到更高精度的地图。但由于特征点和关键帧的随机性以及时间戳系统的差异,最终得到的地图只能是在大致轮廓上相似,很难实现所有细节上的数据同步。

现有的方案都可以得到轨迹地图,但是由于各类方法的特点和局限,通过这些方案得到的轨迹地图又存在诸多的不足。



技术实现要素:

本申请针对现有轨迹地图生成方案的不足,提出了一种基于云端的轨迹地图生成方法、装置、设备及应用程序。

本申请实施例第一方面提供了一种基于云端的轨迹地图生成的方法,包括如下步骤:

获取第一轨迹地图数据和第二轨迹地图数据;所述第一轨迹地图数据和第二轨迹地图数据是采用两种不同的建图方案分别对同一区域的同一运动轨迹采集的轨迹地图数据,或者,是采用相同的建图方案对同一区域两次相同的运动轨迹采集的轨迹地图数据;

对所述第一轨迹地图数据和第二轨迹地图数据进行地图初始化对齐处理,得到所述第一轨迹地图数据和第二轨迹地图数据相互之间的变换关系初值;

对所述第一轨迹地图数据和第二轨迹地图数据进行插值处理,得到所述第一轨迹地图数据和第二轨迹地图数据预设的相对应的插值点数据;

根据所述相对应的插值点数据及所述变换关系初值确定残差方程并根据所述残差方程得到所述变换关系的最优解;

根据所述变换关系的最优解生成轨迹地图。

本申请实施例第二方面提供了一种基于云端的轨迹地图生成的装置,包括:

获取模块,用于获取第一轨迹地图数据和第二轨迹地图数据;所述第一轨迹地图数据和第二轨迹地图数据是采用两种不同的建图方案分别对同一区域的同一运动轨迹采集的轨迹地图数据,或者,是采用相同的建图方案对同一区域两次相同的运动轨迹采集的轨迹地图数据;

初始化模块,用于对所述第一轨迹地图数据和第二轨迹地图数据进行地图初始化对齐处理,得到所述第一轨迹地图数据和第二轨迹地图数据相互之间的变换关系初值;

插值模块,用于对所述第一轨迹地图数据和第二轨迹地图数据进行插值处理,得到所述第一轨迹地图数据和第二轨迹地图数据预设的相对应的插值点数据;

优化模块,用于根据所述相对应的插值点数据及所述变换关系初值确定残差方程并根据所述残差方程得到所述变换关系的最优解;

生成模块,用于根据所述变换关系的最优解生成轨迹地图。

本申请实施例第三方面提供了一种基于云端的电子设备,包括:通信模块,存储器,一个或多个处理器;以及一个或多个模块,所述一个或多个模块被存储在所述存储器中,并被配置成由所述一个或多个处理器执行,所述一个或多个模块包括用于执行上述第一方面提供的方法中各个步骤的指令。

本申请实施例第四方面提供了与上述的基于云端的电子设备结合使用的应用程序,所述应用程序包括内嵌于计算机可读的存储介质中的计算机程序,所述计算机程序包括用于使所述基于云端的电子设备执行上述第一方面提供的方法中各个步骤的指令。

有益效果如下:

针对现有轨迹地图生成方案的不足,本申请实施例所提供的基于云端的轨迹地图生成的方案,通过获取第一轨迹地图数据和第二轨迹地图数据;所述第一轨迹地图数据和第二轨迹地图数据是采用两种不同的建图方案分别对同一区域的同一运动轨迹采集的轨迹地图数据,或者,是采用相同的建图方案对同一区域两次相同的运动轨迹采集的轨迹地图数据;对所述第一轨迹地图数据和第二轨迹地图数据进行地图初始化对齐处理,得到所述第一轨迹地图数据和第二轨迹地图数据相互之间的变换关系初值;对所述第一轨迹地图数据和第二轨迹地图数据进行插值处理,得到所述第一轨迹地图数据和第二轨迹地图数据预设的相对应的插值点数据;根据所述相对应的插值点数据及所述变换关系初值确定残差方程并根据所述残差方程得到所述变换关系的最优解;根据所述变换关系的最优解生成轨迹地图,可以基于不同建图方案分别对同一区域的同一运动轨迹采集的轨迹地图数据或相同建图方案对同一区域两次相同的运动轨迹采集的轨迹地图数据进行优化得到高精度的轨迹地图。

附图说明

图1为本申请实施例中提供的基于云端的轨迹地图生成的方法的流程示意图;

图2为本申请实施例中提供的基于云端的轨迹地图生成的装置的结构示意图;

图3为本申请实施例中提供的基于云端的电子设备的结构示意图;

图4为本申请实施例中提供的基于云端的轨迹地图生成的方法的实施例示意图一;

图5为本申请实施例中提供的基于云端的轨迹地图生成的方法的实施例示意图二;

图6为本申请实施例中提供的基于云端的轨迹地图生成的方法的实施例示意图三。

具体实施方式

为了使本申请的技术方案及优点更加清楚明白,以下结合附图对本申请的示例性实施例进行进一步详细的说明,显然,所描述的实施例仅是本申请的一部分实施例,而不是所有实施例的穷举。并且在不冲突的情况下,本说明中的实施例及实施例中的特征可以互相结合。

图1为本申请实施例中提供的基于云端的轨迹地图生成的方法的流程示意图,如图1所示,该基于云端的轨迹地图生成的方法可以包括如下步骤:

步骤101、获取第一轨迹地图数据和第二轨迹地图数据;所述第一轨迹地图数据和第二轨迹地图数据是采用两种不同的建图方案分别对同一区域的同一运动轨迹采集的轨迹地图数据,或者,是采用相同的建图方案对同一区域两次相同的运动轨迹采集的轨迹地图数据;

步骤102、对所述第一轨迹地图数据和第二轨迹地图数据进行地图初始化对齐处理,得到所述第一轨迹地图数据和第二轨迹地图数据相互之间的变换关系初值;

步骤103、对所述第一轨迹地图数据和第二轨迹地图数据进行插值处理,得到所述第一轨迹地图数据和第二轨迹地图数据预设的相对应的插值点数据;

步骤104、根据所述相对应的插值点数据及所述变换关系初值确定残差方程并根据所述残差方程得到所述变换关系的最优解;

步骤105、根据所述变换关系的最优解生成轨迹地图。

具体实施中,该方法的实施可以采用云端机器人(也可以是其他的设备)的数据采集设备采集轨迹地图数据,然后将上述采集到的轨迹地图数据上传至相应的云端服务器进行后续的轨迹地图数据的处理,最终生成高精度的轨迹地图;当采集轨迹地图数据的设备或终端具有一定的数据处理能力时,也可以由该设备或终端进行后续的数据处理并生成轨迹地图。

通过单目SLAM、双目SLAM、鱼眼、VIO等视觉处理方案或其他轨迹地图处理方案中的任意两种不同的建图方案分别对同一区域的同一运动轨迹采集的轨迹地图数据,或者,采用相同的建图方案对同一区域两次相同的运动轨迹采集的轨迹地图数据得到的第一轨迹地图数据和第二轨迹地图数据。对第一轨迹地图数据和第二轨迹地图数据进行初始化对齐,得到二者的变换关系初值。

为了保证后续数据处理中第一轨迹地图数据和第二轨迹地图数据能够很好地对应,还需要对第一轨迹地图数据和第二轨迹地图数据进行插值处理,得到第一轨迹地图数据和第二轨迹地图数据预设的相对应的插值点数据。第一轨迹地图数据和第二轨迹地图数据预设的相对应的插值点数据可以是指二者在同一时刻对应的插值点数据。具体的插值处理中二者最终插值处理后的插值点个数不一定要相同,只需要保证二者具有一定数量的时刻相同的插值点数据即可。

根据上述得到的第一轨迹地图数据和第二轨迹地图数据相对应的(相同时刻)插值点数据及变换关系初值确定残差方程并根据所述残差方程进行变换关系最优解的计算,得到第一轨迹地图数据和第二轨迹地图数据变换关系的最优解,然后,基于第一轨迹地图数据和第二轨迹地图数据,根据变换关系的最优解生成轨迹地图,生成轨迹地图的优选方案会在后续相应部分进行详细说明。

具体实施中,为了更为充分的优化轨迹地图的生成,可以通过更多的轨迹地图数据参与到基于云端的轨迹地图生成的优化中,后续会在相应部分进行详细说明。

其中,步骤102和步骤103的执行不分先后顺序,也可以同时执行。

针对现有轨迹地图生成方案的不足,本申请实施例所提供的基于云端的轨迹地图生成方法,通过获取第一轨迹地图数据和第二轨迹地图数据;所述第一轨迹地图数据和第二轨迹地图数据是采用两种不同的建图方案分别对同一区域的同一运动轨迹采集的轨迹地图数据,或者,是采用相同的建图方案对同一区域两次相同的运动轨迹采集的轨迹地图数据;对所述第一轨迹地图数据和第二轨迹地图数据进行地图初始化对齐处理,得到所述第一轨迹地图数据和第二轨迹地图数据相互之间的变换关系初值;对所述第一轨迹地图数据和第二轨迹地图数据进行插值处理,得到所述第一轨迹地图数据和第二轨迹地图数据预设的相对应的插值点数据;根据所述相对应的插值点数据及所述变换关系初值确定残差方程并根据所述残差方程得到所述变换关系的最优解;根据所述变换关系的最优解生成轨迹地图,可以基于不同建图方案分别对同一区域的同一运动轨迹采集的轨迹地图数据或相同建图方案对同一区域两次相同的运动轨迹采集的轨迹地图数据进行优化得到高精度的轨迹地图。

实施中,所述对所述第一轨迹地图数据和第二轨迹地图数据进行地图初始化对齐处理,得到所述第一轨迹地图数据和第二轨迹地图数据相互之间的变换关系初值,可以具体包括:

获取所述第一轨迹地图数据和第二轨迹地图数据预设的相对应的至少两个位置点的数据;

根据所述至少两个位置点中的任意一个位置点得到所述第一轨迹地图数据和第二轨迹地图数据的相对初始平移向量;

将所述至少两个位置点中的两个位置点连线;

根据所述连线之间的长度比值得到所述第一轨迹地图数据和第二轨迹地图数据的相对缩放因子;

根据所述连线之间的夹角得到所述第一轨迹地图数据和第二轨迹地图数据的相似变换矩阵;

所述变换关系包括:相对缩放因子、相对初始平移向量或相似变换矩阵。

图4为本申请实施例中提供的基于云端的轨迹地图生成的方法的实施例示意图一,如图4所示,由实线线条构成的轨迹地图数据为第一轨迹地图数据,由点横线组成的线条构成的轨迹地图数据为第二轨迹地图数据,二者的原点O重合,二者的质心点分别为P1o和P2o。

如图4所示,将第一轨迹地图数据和第二轨迹地图数据初始化对齐后,二者的原点重合,这里第一轨迹地图数据和第二轨迹地图数据预设的相对应的至少两个位置点的数据的选取上,选了两个位置点的数据,分别为二者的原点和质心(P1o和P2o),具体实施中,只要选择两对二者相对应的位置点即可,为了更为准确的得到二者变换关系初值,也可以选择多对位置点。也可以选择原点和质心之外的其他位置点,这里不做具体限定。

初始化对齐过程中,将二者的原点(也可以是原点之外的其他位置点)重合的相对平移向量为二者的相对初始平移向量。

将第一轨迹地图数据和第二轨迹地图数据各自的原点和质心连线分别得到线段l1和l2,计算出的l1和l2长度的比值即为第一轨迹地图数据和第二轨迹地图数据的相对缩放因子So,So的计算公式可以具体如下:

根据连线l1和l2之间的夹角θo即可得到第一轨迹地图数据和第二轨迹地图数据的相似变换矩阵Ro,Ro的计算公式可以具体如下:

其中θo的计算公式具体如下:

相对初始平移向量为to,to=[00]T

实施中,所述对所述第一轨迹地图数据和第二轨迹地图数据进行插值处理,得到所述第一轨迹地图数据和第二轨迹地图数据预设的相对应的插值点数据,可以具体包括:

构建滑动窗;

根据所述滑动窗对所述第一轨迹地图数据和第二轨迹地图数据进行插值处理,得到所述第一轨迹地图数据和第二轨迹地图数据预设的相对应的插值点数据。

具体实施中,为了加快数据处理的速度,提高效率,可以构建滑动窗,例如可以根据实际情况选择一个固定时间跨度ΔT的滑动窗,根据时间跨度为ΔT的滑动窗对所述第一轨迹地图数据和第二轨迹地图数据进行插值处理,得到相对应的插值点数据。

实施中,所述对所述第一轨迹地图数据和第二轨迹地图数据进行插值处理,得到所述第一轨迹地图数据和第二轨迹地图数据预设的相对应的插值点数据,可以具体包括:

分别计算所述第一轨迹地图数据和第二轨迹地图数据的平均方差;

根据所述平均方差及预设的概率查询卡方分布表得到相对应的自由度;

确定所述第一轨迹地图数据的数据个数、所述第二轨迹地图数据的数据个数及所述自由度中的最大值作为插值点的目标个数;

根据所述插值点的目标个数采用插值函数对所述第一轨迹地图数据和第二轨迹地图数据分别进行插值处理,得到所述第一轨迹地图数据和第二轨迹地图数据预设的相对应的相同时刻的插值点数据。

图5为本申请实施例中提供的基于云端的轨迹地图生成的方法的实施例示意图二,如图5所示,Alg1为第一轨迹地图数据,Alg2为第二轨迹地图数据,这里选取的固定滑窗的时间跨度为ΔT,滑动窗ΔT内Alg1的位姿数据有m个,Alg2的位姿数据有n个,分别计算上述Alg1的m个位姿数据的平均方差和Alg2的n个位姿数据的平均方差。根据预设的概率,例如0.75或0.9,根据卡方分布查表得到自由度δ,选择m、n和δ中的最大值为插值处理的插值点个数N,即:N=max(m,n,δ)。

上述步骤在具体实施中,可以如下:

a.固定滑动窗的时间跨度ΔT,ΔT内Alg1的位姿数据有m个,Alg2的位姿数据有n个,分别计算Alg1和Alg2的x、y坐标方向的二阶矩μ1x2、μ1y2、μ2x2和μ2y2,从而得到二者最终的μ2,具体如下:

μ1x2=E[(x1-E(x1))2]

μ1y2=E[(y1-E(y1))2]

μ2x2=E[(x2-E(x2))2]

μ2y2=E[(y2-E(y2))2]

μ2=max(μ12,μ22)

μ2服从卡方分布,根据预设的概率,例如0.75或0.9,根据卡方分布查表得到自由度δ,选择m、n和δ中的最大值为插值处理的插值点个数N,即:N=max(m,n,δ),从而确定每两个相邻插值点之间的时间间隔Δt为

根据Δt对第一轨迹地图数据和第二轨迹地图数据分别进行插值处理,得到第一轨迹地图数据和第二轨迹地图数据预设的相对应的相同时刻的插值点数据。

实施中,根据所述相对应的插值点数据及所述变换关系初值确定残差方程并根据所述残差方程得到所述变换关系的最优解,可以具体包括:

根据所述相对应的插值点数据中的位于所述第一轨迹地图数据中的插值点数据及所述变换关系初值确定所述第一轨迹地图数据中的插值点数据变换至所述第二轨迹地图数据中的插值点数据估值;所述估值与真实差值之间存在偏置误差,所述偏置误差服从高斯分布;

根据所述第二轨迹地图数据中的插值点数据估值与所述第二轨迹地图数据中与之对应的插值点数据,得到二者的残差方程;

根据所述残差方程计算所述变换关系的最优解;

或者,

根据所述相对应的插值点数据中的位于所述第二轨迹地图数据中的插值点数据及所述变换关系初值确定所述第二轨迹地图数据中的插值点数据变换至所述第一轨迹地图数据中的插值点数据估值;所述估值与真实差值之间存在偏置误差,所述偏置误差服从高斯分布;

根据所述第一轨迹地图数据中的插值点数据估值与所述第一轨迹地图数据中与之对应的插值点数据,得到二者的残差方程;

根据所述残差方程计算所述变换关系的最优解。

残差在数理统计中是指实际观察值与估计值(拟合值)之间的差。具体实施中,地图变换是一种带有偏置误差的相似变换,偏置误差B服从高斯分布,其中Tv表示Alg1中的位姿数据,To表示Alg2中的位姿数据,Tv,tk和To,tk是对Alg1和Alg2分别进行插值处理后得到的,插值后二者的时间轴tk是同步对应的,即,每一个时刻tk能找到Alg1和Alg2两条轨迹上的各自姿态数据Tv,tk和To,tk。其中,Tv,tk和To,tk以及B的计算分别如下所示:

其中,t1b和t2b服从零均值的高斯分布。

滑动窗内第一轨迹地图数据和第二轨迹地图数据待优化计算的变换关系To2v具体如下:

根据To2v可以得到滑动窗内第一轨迹地图数据和第二轨迹地图数据相对应插值点数据之间的对应关系,具体如下:

Tv,tk=To2v·To,tk+B

根据上述公式建立残差方程,具体如下:

Residual=Tv,tk-(To2v·To,tk+B)

Residual是最优化理论中的代价值,这个代价值越小表示待求解的参数To2v越准确。继而,可以求得To2v的最优解。

对于有着明显起伏的区域,比如轨迹地图中存在上下楼梯的情况,2D轨迹地图就会存在局限,此时需要用到3D轨迹地图。对于3D轨迹地图的融合优化,同样需要经过上述介绍的方法步骤,不同的地方在于旋转矩阵和平移向量的自由度从2D到3D会增加,因此轨迹地图初始化对齐时需要做适当的改进,但插值和优化的步骤和方法是类似的,只需要增加对应的自由度即可,这里不再赘述。

实施中,根据所述变换关系的最优解生成轨迹地图,可以具体包括:

根据所述变换关系的最优解及所述相对应的插值点数据中的位于所述第一轨迹地图数据中的插值点数据,得到所述第一轨迹地图数据中的插值点数据变换至所述第二轨迹地图数据中的最优插值点数据估值;

对所述第二轨迹地图数据中的最优插值点数据估值及与之对应的所述第二轨迹地图数据中的插值点数据进行拟合,生成轨迹地图;

或者,

根据所述变换关系的最优解及所述相对应的插值点数据中的位于所述第二轨迹地图数据中的插值点数据,得到所述第二轨迹地图数据中的插值点数据变换至所述第一轨迹地图数据中的最优插值点数据估值;

对所述第一轨迹地图数据中的最优插值点数据估值及与之对应的所述第一轨迹地图数据中的插值点数据进行拟合,生成轨迹地图。

具体实施中,如图4所示,得到To2v的最优解后,可以根据该变换关系的最优解及第一轨迹地图数据中的插值点数据,得到第一轨迹地图数据中的这个插值点数据变换至第二轨迹地图数据中的最优插值点数据估值,再对第二轨迹地图数据中的最优插值点数据估值及与之对应的所述第二轨迹地图数据中真实的插值点数据进行拟合,完成对一定数量的拟合后,就可以生成轨迹地图。

其中,具体的拟合算法,这里不作具体限定,本领域技术人员可以根据实际情况灵活选择。

相似地,也可以根据该变换关系的最优解及第二轨迹地图数据中的插值点数据,得到第二轨迹地图数据中的这个插值点数据变换至第一轨迹地图数据中的最优插值点数据估值,再对第一轨迹地图数据中的最优插值点数据估值及与之对应的所述第一轨迹地图数据中真实的插值点数据进行拟合,完成对一定数量的拟合后,就可以生成轨迹地图。

实施中,所述基于云端的轨迹地图生成的方法还可以包括:根据所述变换关系的最优解生成轨迹地图之后,将所述生成的轨迹地图作为第三轨迹地图数据;

获取第四轨迹地图数据;

对所述第三轨迹地图数据和第四轨迹地图数据进行地图初始化对齐处理,得到所述第三轨迹地图数据和第四轨迹地图数据相互之间的变换关系初值;

对所述第三轨迹地图数据和第四轨迹地图数据进行插值处理,得到所述第三轨迹地图数据和第四轨迹地图数据预设的相对应的插值点数据;

根据所述相对应的插值点数据及所述变换关系初值确定残差方程并根据所述残差方程得到所述变换关系的最优解;

根据所述变换关系的最优解生成轨迹地图。

具体实施中,所述第四轨迹地图数据可以是采集的原始的轨迹地图数据,也可以是与第三轨迹地图数据类似的,是采用上述基于云端的轨迹地图生成的方案基于两个或两个以上原始采集的轨迹地图数据拟合后得到的轨迹地图数据。

基于同一发明构思,本申请实施例中还提供了一种基于云端的轨迹地图生成的装置,由于这些设备解决问题的原理与上述基于云端的轨迹地图生成的方法相似,因此这些设备的实施可以参见方法的实施,重复之处不再赘述。

图2为本申请实施例中提供的基于云端的轨迹地图生成的装置的结构示意图,如图2所示,该基于云端的轨迹地图生成的装置可以包括:

获取模块201,用于获取第一轨迹地图数据和第二轨迹地图数据;所述第一轨迹地图数据和第二轨迹地图数据是采用两种不同的建图方案分别对同一区域的同一运动轨迹采集的轨迹地图数据,或者,是采用相同的建图方案对同一区域两次相同的运动轨迹采集的轨迹地图数据;

初始化模块202,用于对所述第一轨迹地图数据和第二轨迹地图数据进行地图初始化对齐处理,得到所述第一轨迹地图数据和第二轨迹地图数据相互之间的变换关系初值;

插值模块203,用于对所述第一轨迹地图数据和第二轨迹地图数据进行插值处理,得到所述第一轨迹地图数据和第二轨迹地图数据预设的相对应的插值点数据;

优化模块204,用于根据所述相对应的插值点数据及所述变换关系初值确定残差方程并根据所述残差方程得到所述变换关系的最优解;

生成模块205,用于根据所述变换关系的最优解生成轨迹地图。

实施中,所述初始化模块202可以具体用于获取所述第一轨迹地图数据和第二轨迹地图数据预设的相对应的至少两个位置点的数据;根据所述至少两个位置点中的任意一个位置点得到所述第一轨迹地图数据和第二轨迹地图数据的相对初始平移向量;将所述至少两个位置点中的两个位置点连线;根据所述连线之间的长度比值得到所述第一轨迹地图数据和第二轨迹地图数据的相对缩放因子;根据所述连线之间的夹角得到所述第一轨迹地图数据和第二轨迹地图数据的相似变换矩阵;所述变换关系包括:相对缩放因子、相对初始平移向量或相似变换矩阵。

实施中,所述插值模块203可以具体用于构建滑动窗;根据所述滑动窗对所述第一轨迹地图数据和第二轨迹地图数据进行插值处理,得到所述第一轨迹地图数据和第二轨迹地图数据预设的相对应的插值点数据。

实施中,所述插值模块203可以具体用于分别计算所述第一轨迹地图数据和第二轨迹地图数据的平均方差;根据所述平均方差及预设的概率查询卡方分布表得到相对应的自由度;确定所述第一轨迹地图数据的数据个数、所述第二轨迹地图数据的数据个数及所述自由度中的最大值作为插值点的目标个数;根据所述插值点的目标个数采用插值函数对所述第一轨迹地图数据和第二轨迹地图数据分别进行插值处理,得到所述第一轨迹地图数据和第二轨迹地图数据预设的相对应的相同时刻的插值点数据。

实施中,所述优化模块204可以具体用于根据所述相对应的插值点数据中的位于所述第一轨迹地图数据中的插值点数据及所述变换关系初值确定所述第一轨迹地图数据中的插值点数据变换至所述第二轨迹地图数据中的插值点数据估值;所述估值与真实差值之间存在偏置误差,所述偏置误差服从高斯分布;根据所述第二轨迹地图数据中的插值点数据估值与所述第二轨迹地图数据中与之对应的插值点数据,得到二者的残差方程;根据所述残差方程计算所述变换关系的最优解;

或者,

根据所述相对应的插值点数据中的位于所述第二轨迹地图数据中的插值点数据及所述变换关系初值确定所述第二轨迹地图数据中的插值点数据变换至所述第一轨迹地图数据中的插值点数据估值;所述估值与真实差值之间存在偏置误差,所述偏置误差服从高斯分布;根据所述第一轨迹地图数据中的插值点数据估值与所述第一轨迹地图数据中与之对应的插值点数据,得到二者的残差方程;根据所述残差方程计算所述变换关系的最优解。

实施中,所述生成模块205可以具体用于根据所述变换关系的最优解及所述相对应的插值点数据中的位于所述第一轨迹地图数据中的插值点数据,得到所述第一轨迹地图数据中的插值点数据变换至所述第二轨迹地图数据中的最优插值点数据估值;对所述第二轨迹地图数据中的最优插值点数据估值及与之对应的所述第二轨迹地图数据中的插值点数据进行拟合,生成轨迹地图;

或者,

根据所述变换关系的最优解及所述相对应的插值点数据中的位于所述第二轨迹地图数据中的插值点数据,得到所述第二轨迹地图数据中的插值点数据变换至所述第一轨迹地图数据中的最优插值点数据估值;对所述第一轨迹地图数据中的最优插值点数据估值及与之对应的所述第一轨迹地图数据中的插值点数据进行拟合,生成轨迹地图。

实施中,所述基于云端的轨迹地图生成的装置还可以包括:数据模块,用于根据所述变换关系的最优解生成轨迹地图之后,将所述生成的轨迹地图作为第三轨迹地图数据;

所述获取模块进一步用于获取第四轨迹地图数据;

所述初始化模块进一步用于对所述第三轨迹地图数据和第四轨迹地图数据进行地图初始化对齐处理,得到所述第三轨迹地图数据和第四轨迹地图数据相互之间的变换关系初值;

所述插值模块进一步用于对所述第三轨迹地图数据和第四轨迹地图数据进行插值处理,得到所述第三轨迹地图数据和第四轨迹地图数据预设的相对应的插值点数据;

所述优化模块进一步用于根据所述相对应的插值点数据及所述变换关系初值确定残差方程并根据所述残差方程得到所述变换关系的最优解;

所述生成模块进一步用于根据所述变换关系的最优解生成轨迹地图。

基于同一发明构思,本申请实施例中还提供了一种基于云端的电子设备,图3为本申请实施例中提供的基于云端的电子设备的结构示意图,如图3所示,该种基于云端的电子设备300可以包括:通信模块301,存储器302,一个或多个处理器303;以及一个或多个模块,所述一个或多个模块被存储在所述存储器中,并被配置成由所述一个或多个处理器执行,所述一个或多个模块包括用于执行上述基于云端的轨迹地图生成的方法中各个步骤的指令。

基于同一发明构思,本申请实施例中还提供了一种与上述基于云端的电子设备结合使用的应用程序,所述应用程序包括内嵌于计算机可读的存储介质中的计算机程序,所述计算机程序包括用于使所述基于云端的电子设备执行上述基于云端的轨迹地图生成的方法中的各个步骤的指令。

实施例1

图6为本申请实施例中提供的基于云端的轨迹地图生成的方法的实施例示意图三,如图6所示,本方案的实施,首先获取两个或多个轨迹地图数据,轨迹地图数据的样本数量越多最终优化生成的轨迹地图精度越高。轨迹地图数据两两之间进行初始化对齐,基于滑动窗进行插值处理,按照上述优化求解方案进行求解,对所有轨迹地图数据处理完毕后,输出最终拟合生成的轨迹地图,否则继续处理。下面举例说明。

1)单目SLAM地图与VIO地图的融合:单目SLAM无实际尺度,而VIO由于引入了IMU而具有真实尺度,两者的轨迹地图数据是相似关系,相差一个比例,使用本申请可以将单目地图校正到真实尺度下,并减少两者的误差,减少IMU漂移或者激励不足对结果的影响。

由于VIO地图与双目SLAM地图都具有真实尺度,这种应用场景下的具体算法与上面的相同。

2)双目SLAM地图与双目SLAM地图的融合:对于双目SLAM地图的融合,由于它们都具有真实的尺度,存在的问题主要是基线距离引起的误差和随机噪声的影响,可以使用本申请降低噪声的干扰。

这种应用场景下的具体算法与上面的相同,区别仅在于地图初始化对齐时得到的校正比例非常小而已。

3)双目SLAM地图与VIO地图的融合:双目SLAM地图和VIO地图都具有真实的尺度,存在的问题主要是IMU漂移和某些轴激励不足引起的误差以及双目基线引起的误差,使用本申请可以补偿IMU引起的误差,达到减少误差的作用。

这种应用场景下的具体算法与上面的相同,区别仅在于地图初始化对齐时得到的校正比例非常小而已。

本申请实施例提供的基于云端的轨迹地图生成方法,能够基于多个轨迹地图数据进行优化处理以生成更加准确的地图。

本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或应用程序。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的应用程序的形式。

本申请是参照根据本申请实施例的方法、设备(系统)、和应用程序的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。

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