图像与激光数据融合的机器人导航三维语义地图生成方法

文档序号:25588761发布日期:2021-06-22 17:04阅读:105来源:国知局
图像与激光数据融合的机器人导航三维语义地图生成方法

本发明涉及计算机视觉和机器人智能驾驶技术领域,更具体地说,它涉及一种图像与激光数据融合的机器人导航三维语义地图生成方法。



背景技术:

移动机器人在未知复杂的环境中自主定位和地图构建(slam)技术是完成环境感知、路径规划、人机交互等复杂任务的基础。移动机器人slam技术主要应用在无人驾驶车、无人机、搬运机器人、送餐机器人、导览机器人、扫地机器人等领域。由于在实际应用的室内和户外环境中,移动机器人容易遇到动态物体干扰、复杂等等运行环境问题,所以需要对动态环境下移动机器人定位和建图进行研究。

目前大多数视觉slam方案中所采用的图像特征的语义级别太低,可区别性弱,构建的点云地图不能区分不同的物体。这样的点云地图包含信息量少,再利用性非常有限。传统的点云地图中,移动机器人不能识别出一块块的点云是什么物体,但语义地图能够很好的表示出移动机器人所在的场景,能够识别出街道中的交通标志、车行道、人行道等。语义地图的构建对移动机器人的环境理解和后续的路径规划有着重要作用。



技术实现要素:

为解决上述技术问题,本发明提供一种图像与激光数据融合的机器人导航三维语义地图生成方法,采用视觉与激光融合的方法对环境进行三维重建,然后基于maskr-cnn来对二维场景图像进行语义识别,采用识别的语义信息和视觉与激光恢复的深度图对场景进行三维语义重建。三维语义地图能够很好的表示出移动机器人所在的场景,识别出街道中的交通标志,车行道、人行道等,对移动机器人的环境理解和后续的路径规划有着重要作用,并能有效解决复杂动态环境对slam技术的困扰。

本发明的上述技术目的是通过以下技术方案得以实现的:

图像与激光数据融合的机器人导航三维语义地图生成方法,包括以下步骤:

s1:获取图像数据序列和激光雷达数据序列;

s2:读取图像序列中的一帧rgb图像,读取同一时刻激光帧数据;s3:通过双边滤波后进行上采样处理,将激光数据与rgb图像深度补全得到深度图(depthimage);

s4:对rgb图像信息进行orb(orientedbrief)特征点提取;

s5:将s4提取的特征点与s3得到的深度图结合,根据深度值z的有效范围判断是否存在好的特征点,若有,执行s6;若没有,继续读取下一帧rgb图像并重复s2至s5步骤;

s6:判定s5有对应深度值的当前帧图像是否为关键帧,若是,则恢复关键帧深度图,并执行s7;若不是,则计算当前帧的位姿,并重复s2至s6步骤;

s7:将关键帧的位姿和深度图对应,恢复当前关键帧的三维点云;s8:对s7获取的三维点云进行滤波过滤噪声点的操作;

s9:判定是否存在下一帧rgb图像,若存在,重复s2至s9步骤;若不存在,执行s10;

s10:将当前点云与历史点云叠加,并对最终得到的点云进行滤波操作减少点云数量;

s11:生成当前时刻的三维点云;

s12:利用maskr-cnn算法将二维图像帧进行语义分割,将结果与关键帧的位姿结合,进行坐标投影转换,得到三维点云图;

s13:将三维语义点云以八叉树格式保存为语义地图。

最终生成语义地图,方便无人车的定位导航使用。

作为一种优选方案,s4过程中,通过orb提取图像的特征点。

作为一种优选方案,s6过程中,通过orb-slam2判断当前帧图像是否为关键帧;采用视觉和激光融合的深度恢复算法恢复关键帧深度图。

作为一种优选方案,s8过程中,采用统计学滤波过滤噪声点,具体包括以下步骤:

s801:计算每个点与其最近的k个邻点之间的平均距离;

s802:计算估计的平均距离μ与标准差σ,此时距离阈值dmax表示为dmax=μ+α×σ,其中α是比例系数,为一个常数;

s803:剔除与k个邻居点的平均距离大于dmax的点。

在本申请优选方案中,用于计算平均距离估计时用的邻域点k的数量为50,标准差倍数域值α设为0.8。

作为一种优选方案,s10过程中,通过体素格滤波操作减少点云数量。

作为一种优选方案,s11过程中,具体包括以下步骤:使用体素格滤波方法实现下采样,在保持点云的形状特征的同时减少点云数量,每个体素内用体素中所有点的重心来近似表示体素中其他点,最终该体素内所有点都用一个重心点表示,遍历所有体素得到过滤后的点云。

综上所述,本发明具有以下有益效果:

(1)本发明提供的图像与激光数据融合的机器人导航三维语义地图生成方法能够提高机器人定位精度和三维点云重建的质量;

(2)本发明提供的图像与激光数据融合的机器人导航三维语义地图生成方法能够提供更加完整准确的环境信息,为机器人的无人/智能驾驶提供高质量的三维地图。

附图说明

图1是本发明的实施例中的图像与激光数据融合的机器人导航三维语义地图生成方法的流程示意图。

具体实施方式

本说明书及权利要求并不以名称的差异来作为区分组件的方式,而是以组件在功能上的差异来作为区分的准则。如在通篇说明书及权利要求当中所提及的“包括”为一开放式用语,故应解释成“包括但不限定于”。“大致”是指在可接受的误差范围内,本领域技术人员能够在一定误差范围内解决所述技术问题,基本达到所述技术效果。

本说明书及权利要求的上下左右等方向名词,是结合附图以便于进一步说明,使得本申请更加方便理解,并不对本申请做出限定,在不同的场景中,上下、左右、里外均是相对而言。

以下结合附图对本发明作进一步详细说明。

为了充分利用视觉的颜色信息和激光的深度信息,避免单一传感器性能不足,针对移动机器人室外大环境下三维重建问题,使用orb-slam2和激光与单目恢复的深度图来对环境进行三维重建。为了更好的对环境进行三维重建,本专利使用更加精确的位姿信息和更加稠密的深度信息,采用视觉激光融合算法用于实时计算当前车辆的位姿,激光与单目恢复的深度图作为当前帧的距离信息。在三维重建过程中,因为当前帧是不断的增多的,如果每一帧都计算恢复深度图就非常耗时,所以采用对关键帧的进行深度恢复,这样会减小计算量且三维重建点云图不会有太多的噪声点。具体实现流程如下:(具体实现流程图见图1)

1.读取一帧的rgb图像,读取激光数据,激光与rgb深度补全得到深度图,该深度图与orb提取的特征点结合,并判断是否有对应的深度值,若有,执行下一步;否则继续读取下一帧rgb图像。

2.采用orb-slam2判断是否为关键帧,如果当前帧为关键帧就采用视觉和激光融合的深度恢复算法恢复关键帧深度图;否则计算当前帧的位姿,读取下一帧rgb图像。

3.将关键帧的位姿和深度图对应,恢复当前关键帧的三维点云。

4.使用统计学滤波遍历点云,首先计算每个点与其最近的k个邻点之间的平均距离;然后计算估计的平均距离μ与标准差σ,此时距离阈值dmax表示为dmax=μ+α×σ,其中α是比例系数,为一个常数;最后剔除与k个邻居点的平均距离大于dmax的点,本专利中用于计算平均距离估计时用的邻域点k的数量为50,标准差倍数域值α设为0.8。

5.将当前点云与历史点云叠加。并对最终的点云进行体素格滤波操作减少点云数量。

6.使用体素格滤波方法实现下采样,在保持点云的形状特征的同时减少点云数量,该算法在曲面重建、提高配准和形状识别等算法中有着广泛的应用。pcl(pointcloudlibrary)的体素格滤波是通过输入的点云数据创建一个三维体素栅格,每个体素内用体素中所有点的重心来近似表示体素中其他点,最终该体素内所有点都用一个重心点表示,遍历所有体素得到过滤后的点云。

本具体实施例仅仅是对本发明的解释,其并不是对本发明的限制,本领域技术人员在阅读完本说明书后可以根据需要对本实施例做出没有创造性贡献的修改,但只要在本发明的权利要求范围内都受到专利法的保护。

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