基于云计算的同步定位与地图构建方法、系统、交互系统与流程

文档序号:14120570阅读:460来源:国知局
基于云计算的同步定位与地图构建方法、系统、交互系统与流程

本发明涉及云计算与同步定位与地图构建技术领域,特别涉及一种基于云计算实现同步定位与地图构建的方法、一种基于云计算实现同步定位与地图构建的系统和一种基于云计算实现同步定位与地图构建的交互系统。



背景技术:

目前,slam(simultaneouslocalizationandmapping,同步定位与地图构建)技术是机器人学中一个基础但是具有挑战性的学科,指的是机器人在自身位置不确定的条件下,在完全未知的环境中创建地图,同时利用地图进行定位。vslam(visualslam)是基于视觉的slam技术。视觉传感器获取的信息比较丰富,采样速度快和其他传感器之间不容易发生相互干扰,此外随着技术的发展视觉传感器质量越来越轻,体积越来越小,与此同时价格变得越来越低。常见的vslam算法主要包括如下几个模块:初始化(initialization)、建图(mapping)、跟踪(tracking)、重定位(relocation)、回环检测(loopclosing)。

但是,目前大部分vslam算法在pc端且在运动场景简单的情况下可以达到实时,但是对于计算资源有限,能耗比较敏感的移动端,比如手机,平板等,远远达不到实时。特别是在复杂的运动场景中,上述的建模建图模块和回环检测模块等需要进行大量的计算,这会对移动终端带来巨大的压力,造成功耗增大,且降低用户体验。

因此,如何设计出一种新型的同步定位与地图构建的方法成为本领域亟需解决的技术问题。



技术实现要素:

本发明旨在至少解决现有技术中存在的技术问题之一,提出了一种一种基于云计算实现同步定位与地图构建的方法、一种基于云计算实现同步定位与地图构建的系统和一种基于云计算实现同步定位与地图构建的交互系统。

为了实现上述目的,本发明的第一方面,提供了一种基于云计算实现同步定位与地图构建方法,所述方法包括:

s110、初始化相机位姿、初始化预设环境地图以及定义全局坐标系;

所述方法还包括执行至少一次以下各步骤:

s120、接收相机获取的当前环境的当前帧图像;

s130、对所述当前帧图像进行处理,以提取能够表征所述当前帧图像的图像特征信息;

s140、基于所述图像特征信息和所述预设环境地图,判定是否跟踪到相机的当前位姿,当判定跟踪到所述相机的当前位姿时,转入步骤s150;

s150、根据所述图像特征信息判定当前帧图像是否为关键帧图像,当判定为关键帧图像时,转入步骤s160;

s160、发送所述关键帧图像的图像特征信息和更新预设环境地图请求至云端服务器;

s170、接收云端服务器返回的更新后的预设环境地图,以实现同步定位与地图构建。

优选地,所述步骤s140还包括当判定未跟踪到所述相机的当前位姿时,重复执行步骤s120至步骤s140。

优选地,所述步骤s150还包括当判定不是关键帧图像时,重复执行步骤s120至步骤s150。

本发明的第二方面,提供了另一种基于云计算实现同步定位与地图构建的方法,所述方法包括:

s110’、初始化相机位姿、初始化预设环境地图以及定义全局坐标系;

s120’、云端服务器接收移动终端发送的关键帧图像的图像特征信息和更新预设环境地图请求;

s150’、云端服务器将所述关键帧图像的图像特征信息插入所述预设环境地图,以更新所述预设环境地图;

s160’、云端服务器将更新后的预设环境地图发送至所述移动终端,以实现同步定位与地图构建。

优选地,所述方法还包括在所述步骤s120’和所述步骤s130’之间进行的:

s130’、云端服务器根据所述关键帧图像的特征信息,判定相机是否存在回环,当判定不存在回环时,转入步骤s150’;当判定存在回环时,转入步骤s140’;

s140’、根据所述关键帧图像的特征信息,通过多次迭代校正多个地图点云。

优选地,所述步骤s140’包括:

对所述多个地图点云进行分组,其中,所述多个地图点云的组数与所述关键帧图像的数目之间具有预设关系;

利用云计算的多个线程池并行对每组地图点云进行当前次迭代校正;

对当前次迭代校正后的地图点云进行合并,以获得当前次迭代的输出结果;

将当前次迭代的输出结果作为下一次迭代的输入,进入下一次迭代过程,直至迭代结束。

优选地,所述关键帧图像的数目与所述多个地图点云的组数与之比为4:1。

本发明的第三方面,提供了一种基于云计算实现同步定位与地图构建的系统,所述系统包括移动终端;所述移动终端包括初始化模块、图像获取模块、图像提取模块、跟踪模块、判断模块和第一发送模块和第一接收模块;

所述初始化模块用于,初始化相机位姿、初始化预设环境地图以及定义全局坐标系;

所述图像获取模块用于,接收相机获取的当前环境的当前帧图像;

所述图像提取模块用于,对所述当前帧图像进行处理,以提取能够表征所述当前帧图像的图像特征信息;

所述跟踪模块用于,基于所述图像特征信息和所述预设环境地图,判定是否跟踪到相机的当前位姿;当判定跟踪到相机的当前位姿时,向所述判断模块发送关键帧图像判断信号;

所述判断模块用于接收所述关键帧图像判断信号,并根据所述图像特征信息判定当前帧图像是否为关键帧图像;当判定为关键帧图像时,向所述第一发送模块发送构建地图信号;

所述第一发送模块用于接收所述构建地图信号,并发送所述关键帧图像的图像特征信息和更新预设环境地图请求至云端服务器;

所述第一接收模块用于,接收所述云端服务器返回的更新后的预设环境地图,以实现同步定位与地图构建。

本发明的第四方面,提供了另一种基于云计算实现同步定位与地图构建的系统,所述系统包括云端服务器,所述云端服务器包括第二接收模块、建图模块和第二发送模块;

所述第二接收模块用于,接收移动终端发送的关键帧图像的图像特征信息和更新预设环境地图请求;

所述建图模块用于,将所述关键帧图像的图像特征信息插入预设环境地图,以更新所述预设环境地图;

所述第二发送模块用于,将更新后的预设环境地图发送至所述移动终端,以实现同步定位与地图构建。

优选地,所述云端服务器还包括回环检测模块和地图点云校正模块;

所述回环检测模块用于,根据所述关键帧图像的特征信息,判定相机是否存在回环;当存在回环时,向所述地图点云校正模块发送地图点云校正信号;

所述地图点云校正模块用于接收所述地图点云校正信号;

所述地图点云校正模块还用于:

对所述多个地图点云进行分组,其中,所述多个地图点云的组数与所述关键帧图像的数目之间具有预设关系;

利用云计算的多个线程池并行对每组地图点云进行当前次迭代校正;

对当前次迭代校正后的地图点云进行合并,以获得当前次迭代的输出结果;

将当前次迭代的输出结果作为下一次迭代的输入,进入下一次迭代过程,直至迭代结束。

本发明的第五方面,提供了一种基于云计算实现同步定位与地图构建的交互系统,所述交互系统包括移动终端和云端服务器;所述移动终端包括初始化模块、图像获取模块、图像提取模块、跟踪模块、判断模块和第一发送模块和第一接收模块;所述云端服务器包括第二接收模块、建图模块和第二发送模块;

所述初始化模块用于,初始化相机位姿、初始化预设环境地图以及定义全局坐标系;

所述图像获取模块用于,接收相机获取的当前环境的当前帧图像;

所述图像提取模块用于,对所述当前帧图像进行处理,以提取能够表征所述当前帧图像的图像特征信息;

所述跟踪模块用于,基于所述图像特征信息和所述预设环境地图,判定是否跟踪到相机的当前位姿;当判定跟踪到相机的当前位姿时,向所述判断模块发送关键帧图像判断信号;

所述判断模块用于接收所述关键帧图像判断信号,并根据所述图像特征信息判定当前帧图像是否为关键帧图像;当判定为关键帧图像时,向所述第一发送模块发送构建地图信号;

所述第一发送模块用于接收所述构建地图信号,并发送所述关键帧图像的图像特征信息和更新预设环境地图请求至所述云端服务器;

所述第二接收模块用于,接收移动终端发送的所述关键帧图像的图像特征信息和所述更新预设环境地图请求;

所述建图模块用于,将所述关键帧图像的图像特征信息插入预设环境地图,以更新所述预设环境地图;

所述第二发送模块用于,将更新后的预设环境地图发送至所述移动终端;

所述第一接收模块用于,接收所述云端服务器返回的更新后的预设环境地图,以实现同步定位与地图构建。

优选地,所述云端服务器还包括回环检测模块和地图点云校正模块;

所述回环检测模块用于,根据所述关键帧图像的特征信息,判定相机是否存在回环;当存在回环时,向所述地图点云校正模块发送地图点云校正信号;

所述地图点云校正模块用于接收所述地图点云校正信号;

所述地图点云校正模块还用于:

对所述多个地图点云进行分组,其中,所述多个地图点云的组数与所述关键帧图像的数目之间具有预设关系;

利用云计算的多个线程池并行对每组地图点云进行当前次迭代校正;

对当前次迭代校正后的地图点云进行合并,以获得当前次迭代的输出结果;

将当前次迭代的输出结果作为下一次迭代的输入,进入下一次迭代过程,直至迭代结束。

本发明的基于云计算实现同步定位与地图构建的方法中,将计算量小且实时性要求较高的步骤可以放在本地终端(例如,移动终端)中进行,但是,对于计算量大且实时性要求不高的步骤,则可以放到云端服务器进行,因此,可以降低移动终端的功耗,节省成本。也就是说,相当于引入“前端移动终端+后台云”的架构,将计算及存储需求量大,且实时性要求不高的模块放到云端服务器进行处理,将实时性要求高且计算量小的功能块放在移动终端运行,移动终端与云端服务器可以通过网络进行通讯,实现数据的传输与共享,从而可以实现对当前环境的同步定位与地图构建,提高用户体验。

本发明的基于云计算实现同步定位与地图构建的系统中,将计算量小且实时性要求较高的模块可以放在移动终端中进行。例如,可以设置初始化模块、图像获取模块、图像提取模块、跟踪模块、判断模块和第一发送模块和第一接收模块,这些模块所完成的功能实时性要求较高,且计算量较小,因此,移动终端中可以满足要求。但是,对于计算量大且实时性要求不高的模块,例如建图模块,则可以放到云端服务器进行,因此,可以降低移动终端的功耗,节省成本。本发明的基于云计算实现同步定位与地图构建的系统,相当于引入“前端移动终端+后台云”的架构,将计算及存储需求量大,且实时性要求不高的模块放到云端服务器进行处理,将实时性要求高且计算量小的功能块放在移动终端运行,移动终端与云端服务器可以通过网络进行通讯,实现数据的传输与共享,从而可以实现对当前环境的同步定位与地图构建,提高用户体验。

本发明的基于云计算实现同步定位与地图构建的交互系统中,将计算量小且实时性要求较高的步骤可以放在移动终端中进行。例如,可以设置初始化模块、图像获取模块、图像提取模块、跟踪模块、判断模块和第一发送模块和第一接收模块,这些模块所完成的功能实时性要求较高,且计算量较小,因此,移动终端中可以满足要求。但是,对于计算量大且实时性要求不高的模块,例如建图模块,则可以放到云端服务器进行,因此,可以降低移动终端的功耗,节省成本。本发明的基于云计算实现同步定位与地图构建的交互系统,相当于引入“前端移动终端+后台云”的架构,将计算及存储需求量大,且实时性要求不高的模块放到云端服务器进行处理,将实时性要求高且计算量小的功能块放在移动终端运行,移动终端与云端服务器可以通过网络进行通讯,实现数据的传输与共享,从而可以实现对当前环境的同步定位与地图构建,提高用户体验。

附图说明

附图是用来提供对本发明的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本发明,但并不构成对本发明的限制。在附图中:

图1为本发明第一实施例中基于云计算实现同步定位与地图构建的方法的流程图;

图2为本发明第二实施例中基于云计算实现同步定位与地图构建的方法的流程图;

图3为本发明第三实施例中基于云计算实现同步定位与地图构建的系统的结构示意图;

图4为本发明第四实施例中基于云计算实现同步定位与地图构建的系统的结构示意图;

图5为本发明第五实施例中基于云计算实现同步定位与地图构建的交互系统的结构示意图。

附图标记说明

300:基于云计算实现同步定位与地图构建的系统;

100:移动终端;

110:初始化模块;

120:图像获取模块;

130:图像提取模块;

140:跟踪模块;

150:判断模块;

160:第一发送模块;

170:第一接收模块;

200:云端服务器;

210:第二接收模块;

220:建图模块;

230:第二发送模块;

240:回环检测模块;

250:地图点云校正模块;

400:基于云计算实现同步定位与地图构建的交互系统。

具体实施方式

以下结合附图对本发明的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本发明,并不用于限制本发明。

如图1所示,为本发明第一实施例中基于云计算实现同步定位与地图构建的方法的流程图s100。其中,所述方法s100包括:

s110、初始化相机位姿、初始化预设环境地图以及定义全局坐标系。

这样,可以使得相机位姿和预设环境地图均恢复为初始状态,同时,为了方便后续的构建地图,在初始化的过程中,还包括定义全局坐标系的步骤。

所述方法还包括执行至少一次以下各步骤:

s120、接收相机获取的当前环境的当前帧图像。

s130、对所述当前帧图像进行处理,以提取能够表征所述当前帧图像的图像特征信息。

s140、基于所述图像特征信息和所述预设环境地图,判定是否跟踪到相机的当前位姿,当判定跟踪到所述相机的当前位姿时,转入步骤s150。

s150、根据所述图像特征信息判定当前帧图像是否为关键帧图像,当判定为关键帧图像时,转入步骤s160。

s160、发送所述关键帧图像的图像特征信息和更新预设环境地图请求至云端服务器。

在步骤中,选择利用关键帧图像的图像特征信息进行更新地图,该地图需要尽可能精确实现未知环境的重建。因此,地图中需要包含未知环境的特征点或者每一个位置点,因此随着运动场景的变大,如果构建地图需要处理每一帧图像的话,计算量巨大,此外相邻图像帧中会存在较多的相似性,所以建图只需要根据关键帧图像的图像特征信息即可完成。这样可以在尽量不丢失信息的情况下较大程度的降低了计算量。

s170、接收云端服务器返回的更新后的预设环境地图,以实现同步定位与地图构建。

正如上述所述,建图的步骤需要较大的计算量,尤其随着运动场景变大,地图也随着增大的情况下,需要较大的计算能力来保证建图,但是,建图的步骤对实时性要求比较低,所以建图的步骤可以利用云端服务器进行处理。

也就是说,本实施例的基于云计算实现同步定位与地图构建的方法中,将计算量小且实时性要求较高的步骤可以放在本地终端(例如,移动终端)中进行,例如,可以在该移动终端中设置各个不同的模块,以分别执行上述步骤s110至步骤s150和步骤s170。但是,对于计算量大且实时性要求不高的步骤,例如上述步骤s160,则可以放到云端服务器进行,因此,可以降低移动终端的功耗,节省成本。本实施例的基于云计算实现同步定位与地图构建的方法,相当于引入“前端移动终端+后台云”的架构,将计算及存储需求量大,且实时性要求不高的模块放到云端服务器进行处理,将实时性要求高且计算量小的功能块放在移动终端运行,移动终端与云端服务器可以通过网络进行通讯,实现数据的传输与共享,从而可以实现对当前环境的同步定位与地图构建,提高用户体验。

优选地,所述步骤s140还包括当判定未跟踪到所述相机的当前位姿时,重复执行步骤s120至步骤s140。

也就是说,当移动终端在运动过程中,可能会出现运动过快的情况,此外在未知环境中极有可能出现遮挡以及场景平坦没有明显特征的情况。在这种情况下,很容易发生跟踪失败的情况,在跟踪失败的情况下必须进行重定位(relocation),由于重定位需要较高的实时性,因为如果不能迅速的实现重定位,重定位过程中移动终端可能已经离开丢失点较远,出现再次丢失。因此重定位需要在移动终端进行,利用移动终端的计算能力完成重定位以保证重定位的实时性。

优选地,所述步骤s150还包括当判定不是关键帧图像时,重复执行步骤s120至步骤s150。

如图2所示,为本发明第二实施例中基于云计算实现同步定位与地图构建的方法的流程图s100’。所述方法s100’包括:

s110’、初始化相机位姿、初始化预设环境地图以及定义全局坐标系。

s120’、云端服务器接收移动终端发送的关键帧图像的图像特征信息和更新预设环境地图请求。

s150’、云端服务器将所述关键帧图像的图像特征信息插入所述预设环境地图,以更新所述预设环境地图。

s160’、云端服务器将更新后的预设环境地图发送至所述移动终端,以实现同步定位与地图构建。

也就是说,本实施例的基于云计算实现同步定位与地图构建的方法中,将计算量小且实时性要求较高的步骤可以放在本地终端(例如,移动终端)中进行。但是,对于计算量大且实时性要求不高的步骤,例如上述步骤s150’,则可以放到云端服务器进行,因此,可以降低移动终端的功耗,节省成本。本实施例的基于云计算实现同步定位与地图构建的方法,相当于引入“前端移动终端+后台云”的架构,将计算及存储需求量大,且实时性要求不高的模块放到云端服务器进行处理,将实时性要求高且计算量小的功能块放在移动终端运行,移动终端与云端服务器可以通过网络进行通讯,实现数据的传输与共享,从而可以实现对当前环境的同步定位与地图构建,提高用户体验。

优选地,所述方法还包括在所述步骤s120’和所述步骤s130’之间进行的:

s130’、云端服务器根据所述关键帧图像的特征信息,判定相机是否存在回环,当判定不存在回环时,转入步骤s150’;当判定存在回环时,转入步骤s140’。

所谓的回环,即在未知环境中运动过程中,设备(例如移动终端)来到之前曾经到过的场景。以便在该场景中,结合下述步骤s140’对当前相机的位姿进行修正,可以实现更加精准的同步定位与地图构建。

同样,该步骤也可以仅仅对关键帧进行检测,如果检测到存在回环则需要进行地图校正。由于在回环检测时,面对的是数量巨大的地图,因此需要较高的计算能力,但是对实时性要求较低,所以回环检测可以放在云端服务器进行,利用云计算的优势来完成回环检测。

s140’、根据所述关键帧图像的特征信息,通过多次迭代校正多个地图点云。

具体地,对所述多个地图点云进行分组,其中,所述多个地图点云的组数与所述关键帧图像的数目之间具有预设关系;

利用云计算的多个线程池并行对每组地图点云进行当前次迭代校正;

对当前次迭代校正后的地图点云进行合并,以获得当前次迭代的输出结果;

将当前次迭代的输出结果作为下一次迭代的输入,进入下一次迭代过程,直至迭代结束。

校正此环节中,通过多次迭代校正地图点云,地图点云的数量会随着关键帧图像的插入而增加,在移动终端运动一段时间后,地图点云的数据量会巨大。点云校正环节中涉及矩阵求解问题,此运算量巨大且多为浮点数运算。是局部建图的热点计算,考虑到每个迭代过程中每个点云操作是相互独立的,无耦合关系,因此可以将此部分工作划分多个子任务,让云端服务器的多个资源池进行并行计算。迭代结束后将处理结果进行合并,合并的结果作为下一次迭代的输入。此思想与云计算中的map-reduce(分解任务+合并结果)的思想吻合,符合目前典型云计算的架构,可以加快计算。

优选地,所述关键帧图像的数目与所述多个地图点云的组数与之比为4∶1。当然,所述关键帧图像的数目与所述多个地图点云的组数还可以满足其他的关系。

如图3所示,为本发明的第三实施例中一种基于云计算实现同步定位与地图构建的系统的结构示意图。所述基于云计算实现同步定位与地图构建的系统300包括移动终端100;所述移动终端100包括初始化模块110、图像获取模块120、图像提取模块130、跟踪模块140、判断模块150和第一发送模块160和第一接收模块170。

所述初始化模块110用于,初始化相机位姿、初始化预设环境地图以及定义全局坐标系。

所述图像获取模块120用于,接收相机获取的当前环境的当前帧图像。

所述图像提取模块130用于,对所述当前帧图像进行处理,以提取能够表征所述当前帧图像的图像特征信息。

所述跟踪模块140用于,基于所述图像特征信息和所述预设环境地图,判定是否跟踪到相机的当前位姿;当判定跟踪到相机的当前位姿时,向所述判断模块150发送关键帧图像判断信号。

所述判断模块150用于接收所述关键帧图像判断信号,并根据所述图像特征信息判定当前帧图像是否为关键帧图像;当判定为关键帧图像时,向所述第一发送模块160发送构建地图信号。

所述第一发送模块160用于接收所述构建地图信号,并发送所述关键帧图像的图像特征信息和更新预设环境地图请求至云端服务器200。

所述第一接收模块170用于,接收所述云端服务器200返回的更新后的预设环境地图,以实现同步定位与地图构建。

本实施例的基于云计算实现同步定位与地图构建的系统300中,将计算量小且实时性要求较高的模块可以放在移动终端100中进行。例如,可以设置初始化模块110、图像获取模块120、图像提取模块130、跟踪模块140、判断模块150和第一发送模块160和第一接收模块170,这些模块所完成的功能实时性要求较高,且计算量较小,因此,移动终端100中可以满足要求。但是,对于计算量大且实时性要求不高的模块,例如建图模块,则可以放到云端服务器200进行,因此,可以降低移动终端100的功耗,节省成本。本实施例的基于云计算实现同步定位与地图构建的系统300,相当于引入“前端移动终端+后台云”的架构,将计算及存储需求量大,且实时性要求不高的模块放到云端服务器200进行处理,将实时性要求高且计算量小的功能块放在移动终端100运行,移动终端100与云端服务器200可以通过网络进行通讯,实现数据的传输与共享,从而可以实现对当前环境的同步定位与地图构建,提高用户体验。

如图4所示,为本发明的第四实施例中一种基于云计算实现同步定位与地图构建的系统的结构示意图。所述基于云计算实现同步定位与地图构建的系统300包括云端服务器200,所述云端服务器200包括第二接收模块210、建图模块220和第二发送模块230。

所述第二接收模块210用于,接收移动终端100发送的关键帧图像的图像特征信息和更新预设环境地图请求。

所述建图模块220用于,将所述关键帧图像的图像特征信息插入预设环境地图,以更新所述预设环境地图。

所述第二发送模块230用于,将更新后的预设环境地图发送至所述移动终端100,以实现同步定位与地图构建。

本实施例的基于云计算实现同步定位与地图构建的系统300中,将计算量小且实时性要求较高的模块可以放在移动终端100中进行。但是,对于计算量大且实时性要求不高的模块,例如建图模块220,则可以放到云端服务器200进行,因此,可以降低移动终端100的功耗,节省成本。本实施例的基于云计算实现同步定位与地图构建的系统300,相当于引入“前端移动终端+后台云”的架构,将计算及存储需求量大,且实时性要求不高的模块放到云端服务器200进行处理,将实时性要求高且计算量小的功能块放在移动终端100运行,移动终端100与云端服务器200可以通过网络进行通讯,实现数据的传输与共享,从而可以实现对当前环境的同步定位与地图构建,提高用户体验。

优选地,所述云端服务器200还包括回环检测模块240和地图点云校正模块250。

所述回环检测模块240用于,根据所述关键帧图像的特征信息,判定相机是否存在回环;当存在回环时,向所述地图点云校正模块250发送地图点云校正信号。

所述地图点云校正模块250用于接收所述地图点云校正信号。

所述地图点云校正模块250还用于:

对所述多个地图点云进行分组,其中,所述多个地图点云的组数与所述关键帧图像的数目之间具有预设关系;

利用云计算的多个线程池并行对每组地图点云进行当前次迭代校正;

对当前次迭代校正后的地图点云进行合并,以获得当前次迭代的输出结果;

将当前次迭代的输出结果作为下一次迭代的输入,进入下一次迭代过程,直至迭代结束。

校正此环节中,通过多次迭代校正地图点云,地图点云的数量会随着关键帧图像的插入而增加,在移动终端运动一段时间后,地图点云的数据量会巨大。点云校正环节中涉及矩阵求解问题,此运算量巨大且多为浮点数运算。是局部建图的热点计算,考虑到每个迭代过程中每个点云操作是相互独立的,无耦合关系,因此可以将此部分工作划分多个子任务,让云端服务器的多个资源池进行并行计算。迭代结束后将处理结果进行合并,合并的结果作为下一次迭代的输入。此思想与云计算中的map-reduce(分解任务+合并结果)的思想吻合,符合目前典型云计算的架构,可以加快计算。

如图5所示,为本发明的第五实施例中一种基于云计算实现同步定位与地图构建的交互系统的结构示意图。所述基于云计算实现同步定位与地图构建的交互系统400包括移动终端100和云端服务器200;所述移动终端100包括初始化模块110、图像获取模块120、图像提取模块130、跟踪模块140、判断模块150和第一发送模块160和第一接收模块170。所述云端服务器200包括第二接收模块210、建图模块220和第二发送模块230。

所述初始化模块110用于,初始化相机位姿、初始化预设环境地图以及定义全局坐标系。

所述图像获取模块120用于,接收相机获取的当前环境的当前帧图像。

所述图像提取模块130用于,对所述当前帧图像进行处理,以提取能够表征所述当前帧图像的图像特征信息。

所述跟踪模块140用于,基于所述图像特征信息和所述预设环境地图,判定是否跟踪到相机的当前位姿;当判定跟踪到相机的当前位姿时,向所述判断模块150发送关键帧图像判断信号。

所述判断模块150用于接收所述关键帧图像判断信号,并根据所述图像特征信息判定当前帧图像是否为关键帧图像;当判定为关键帧图像时,向所述第一发送模块160发送构建地图信号。

所述第一发送模块160用于接收所述构建地图信号,并发送所述关键帧图像的图像特征信息和更新预设环境地图请求至云端服务器200。

所述第二接收模块210用于,接收移动终端100发送的关键帧图像的图像特征信息和更新预设环境地图请求。

所述建图模块220用于,将所述关键帧图像的图像特征信息插入预设环境地图,以更新所述预设环境地图。

所述第二发送模块230用于,将更新后的预设环境地图发送至所述移动终端100。

所述第一接收模块170用于,接收所述云端服务器200返回的更新后的预设环境地图,以实现同步定位与地图构建。

本实施例的基于云计算实现同步定位与地图构建的交互系统400中,将计算量小且实时性要求较高的步骤可以放在移动终端100中进行。例如,可以设置初始化模块110、图像获取模块120、图像提取模块130、跟踪模块140、判断模块150和第一发送模块160和第一接收模块170,这些模块所完成的功能实时性要求较高,且计算量较小,因此,移动终端100中可以满足要求。但是,对于计算量大且实时性要求不高的模块,例如建图模块220,则可以放到云端服务器200进行,因此,可以降低移动终端100的功耗,节省成本。本实施例的基于云计算实现同步定位与地图构建的交互系统400,相当于引入“前端移动终端+后台云”的架构,将计算及存储需求量大,且实时性要求不高的模块放到云端服务器200进行处理,将实时性要求高且计算量小的功能块放在移动终端100运行,移动终端100与云端服务器200可以通过网络进行通讯,实现数据的传输与共享,从而可以实现对当前环境的同步定位与地图构建,提高用户体验。

优选地,所述云端服务器200还包括回环检测模块240和地图点云校正模块250。

所述回环检测模块240用于,根据所述关键帧图像的特征信息,判定相机是否存在回环;当存在回环时,向所述地图点云校正模块250发送地图点云校正信号。

所述地图点云校正模块250用于接收所述地图点云校正信号。

所述地图点云校正模块250还用于:

对所述多个地图点云进行分组,其中,所述多个地图点云的组数与所述关键帧图像的数目之间具有预设关系;

利用云计算的多个线程池并行对每组地图点云进行当前次迭代校正;

对当前次迭代校正后的地图点云进行合并,以获得当前次迭代的输出结果;

将当前次迭代的输出结果作为下一次迭代的输入,进入下一次迭代过程,直至迭代结束。

校正此环节中,通过多次迭代校正地图点云,地图点云的数量会随着关键帧图像的插入而增加,在移动终端运动一段时间后,地图点云的数据量会巨大。点云校正环节中涉及矩阵求解问题,此运算量巨大且多为浮点数运算。是局部建图的热点计算,考虑到每个迭代过程中每个点云操作是相互独立的,无耦合关系,因此可以将此部分工作划分多个子任务,让云端服务器的多个资源池进行并行计算。迭代结束后将处理结果进行合并,合并的结果作为下一次迭代的输入。此思想与云计算中的map-reduce(分解任务+合并结果)的思想吻合,符合目前典型云计算的架构,可以加快计算。

可以理解的是,以上实施方式仅仅是为了说明本发明的原理而采用的示例性实施方式,然而本发明并不局限于此。对于本领域内的普通技术人员而言,在不脱离本发明的精神和实质的情况下,可以做出各种变型和改进,这些变型和改进也视为本发明的保护范围。

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