【技术实现步骤摘要】
一种基于深度卷积自编码器的视觉同时定位与地图构建方法
本专利技术属于图像处理
;具体涉及一种基于深度卷积自编码器的视觉同时定位与地图构建方法。
技术介绍
同时定位与地图构建技术是指搭载特定传感器的移动机器人在没有后环境先验条件下,于运动过程中利用传感器恢复场景的三维信息,同时定位自身位姿的关键技术,是实现机器人路径规划、自主导航以及完成其他复杂任务的基础要求。一个完整的视觉同时定位与地图构建(Visual-SLAM)系统理论上可以分成两个部分:前端和后端,其关系图如图1所示。前端部分主要包含视觉里程计、局部地图构建和回环检测。视觉里程计主要考虑连续数据帧间的匹配及相对姿态估计问题,利用位姿信息可以构建当前帧的局部地图,而回环检测主要是根据观测数据判断机器人是否处在之前已访问区域。后端部分主要包含位姿图优化和全局地图构建。由于观测噪声以及配准误差的存在,通过观测信息配准得到的位姿参数往往不具备一致性。为获得较小的位姿估计误差需要进行相应的最优化操作,优化过程等价于计算位姿后验概率的最大似然估计(maximum-a-posteriori,MAP)问题。与位姿优化相似,全局地图构建将所有的局部地图点与位姿同时进行优化,获得最优的全局地图。在视觉里程计方面,目前的主流方法大多基于多视图几何,包含特征点法、直接法和半直接法。尽管这些传统算法在精度和鲁棒性方面都取得了很好的结果,但这类方法或多或少都存在着一定的缺点。特征点法依赖特征描述子来建立相邻帧之间同一关键点的联系,在缺乏纹理信息、图像模糊等场景下会出 ...
【技术保护点】
1.一种基于深度卷积自编码器的视觉同时定位与地图构建方法,其特征在于,所述方法包括以下步骤:/n步骤1:根据需求选择不同的训练数据进行数据预处理;/n步骤2:建立基于深度卷积自编码器的多任务学习网络;/n步骤3:将图像序列中相邻的三帧双目图像作为网络输入,其中,中间帧为目标帧图像I
【技术特征摘要】
1.一种基于深度卷积自编码器的视觉同时定位与地图构建方法,其特征在于,所述方法包括以下步骤:
步骤1:根据需求选择不同的训练数据进行数据预处理;
步骤2:建立基于深度卷积自编码器的多任务学习网络;
步骤3:将图像序列中相邻的三帧双目图像作为网络输入,其中,中间帧为目标帧图像Io,相邻的前后两帧为参考帧图像Is,将目标帧与参考帧图像输入多任务学习网络,获得目标帧图像的深度图、目标帧与参考帧之间的相机位姿和光流图、目标帧图像的语义分割图;
步骤4:构建损失函数;
步骤5:多任务网络的训练、验证和测试;
步骤6:多任务网络的训练结束后,利用网络编码器的作为图像表征向量的特征提取器,选择合适的特征图构建图像表征,用于回环检测;
步骤7:上述六个步骤构造了一个新的Visual-SLAM系统前端,利用位姿图优化或因子图优化来构造Visual-SLAM系统的后端,进而搭建一个完整的Visual-SLAM系统,
步骤8:验证搭建的Visual-SLAM系统的定位准确性和鲁棒性。
2.根据权利要求1所述一种基于深度卷积自编码器的视觉同时定位与地图构建方法,其特征在于,所述步骤1:训练数据包含两部分:通用的公开数据集和移动机器人平台采集的室内外多传感器数据集;
数据预处理包含数据增强和改变图像尺寸,所述数据增强包括图像旋转、翻转、色彩调整、局部裁剪和加入噪声。
3.根据权利要求2所述一种基于深度卷积自编码器的视觉同时定位与地图构建方法,其特征在于,所述通用的公开数据集包含KITTI数据集、Cityscape数据集和Synthia数据集,其中KITTI与Cityscape数据集是在真实场景下采集到的城市内街道数据,而Synthia数据集则是虚拟场景下的仿真城市街道数据集。
4.根据权利要求1所述一种基于深度卷积自编码器的视觉同时定位与地图构建方法,其特征在于,所述步骤2,建立基于深度卷积自编码器的多任务学习网络有多种实施方案具体为:方案一:该方案中使用四个单独的网络,分别为深度估计网络、光流估计网络、相机位姿估计网络和语义分割网络;
方案二:该方案中使用与方案一中相同的深度估计网络,语义分割网络与深度估计网络共享编码器网络,二者具有独立的解码器网络,光流估计网络和相机位姿估计网络为两个独立的网络;
方案三:该方案中使用与方案一中相同的深度估计网络,语义分割、光流估计网络与深度估计网络共享编码器网络,三者具有独立的解码器网络,相机位姿估计网络为独立的网络;
方案四:该方案中使用与方案一中相同的深度估计网络,语义分割、光流估计、相机位姿估计网络与深度估计网络共享编码器网络,四者具有独立的解码器网络。
5.根据权利要求1所述一种基于深度卷积自编码器的视觉同时定位与地图构建方法,其特征在于,所述步骤3多任务网络的训练的输出包含四个部分:输入图像对应的左右深度图、目标帧与参考帧之间的相机位姿、目标帧与参考帧之间的光流图、输入图像的语义分割图;其中,深度预测网络同时预测输入图像的左深度图和右深度图,因此相邻三帧图像输出6幅深度图;相机位姿预测网络按照参考帧的数目共输出前后2个相机位姿参数;光流预测网络同时输出前向光流和反向光流,按照参考帧的数目共输出四幅光流图像;语义分割网络的输出与输入图像一一对应,共输出三幅语义分割图像。
6.根据权利要求1所述一种基于深度卷积自编码器的视觉同时定位与地图构建方法,其特征在于,所述步骤4构建多任务学习网络的损失函数,利用输入图像和网络预测出的视差图和位姿向量,通过空间反向映射inversewarping的方式重构目标图像,并构建相应的损失函数,实现深度预测、光流预测和位姿预测三个任务的无监督学习,语义分割任务的损失函数则利用网络预测出的语义分割图与真值标签相比较的有监督学习方式,构建二者的交叉熵损失函数,搭建的多任务损失函数由四部分组成:
Lmulti=Ld+Lp+Lf+Ls+Lwc(1)
其中Ld是视差图的损失函数,Lp是位姿的损失函数,Lp是位姿的损失函数,Ls是语义分割的损失函数,Lcw是循环重构图像光度一致性的损失函数。
7.根据权利要求6所述一种基于深度卷积自编码器的视觉同时定位与地图构建方法,其特征在于,
步骤4.1:视差图损失函数:
所述视差图损失函数由三部分组成:
其中Lsp是空间图像光度重构误差,用于评估重构图像与输入图像之间的相似度;Lds是视差图平滑度误差,保证预测出视差图的平滑性;Ldc是视差图的左右一致性误差,保证预测出的左右视差图的一致性,每一组训练数据包含前后两帧的左右图像,共计四幅图像,但在训练的过程中只有两幅左图被输入网络;
步骤4.1.1:空间图像光度重构误差:
在训练网络时,使用的输入数据来自一个标定好的双目相机在同一时刻采集到的左右两幅图像和
评估重构图像与原图像之间的差异性,从而构造空间图像光度重构误差损失函数
其中是输入图像,为的重构图像,N是图像中像素的个数,W和H分别为图像的宽和高,SSIM的权重为λSSIM=0.85;
步骤4.1.2:视差图平滑度误差;
利用视差图梯度的L1范数来构造损失函数,因为深度图的局部不连续经常发生在图像梯度比较大的地方,使用图像的梯度作为损失函数中各项的权重因子,使用视差图的一阶导数和二阶导数的L1范数共同构造视差图平滑度误差损失函数,
其中为视差图的一阶导数,为视差图的二阶偏导数,为原图像的一阶导数,为原图像的二阶偏导数,
步骤4.1.3:视差图的左右一致性误差;
为了获得更准确的视差图,在训练时仅将左视角的图像输入网络,但网络的输出为左右两幅视差图,为保证两幅视差图的一致性,额外增加了一个L1penalty损失函数来限制左右视差图的一致性,对于左视差图而言,通过右视差图向左视差图投影,即在右视差图上利用左视差图的灰度值进行坐标运算,左视角的视差图与投影的右视角视差图相等,反之亦然,
在获得了视差图之后,利用已知的相机基线b和焦距f,可以将视差图变换为深度图
步骤4.2:相邻帧图像的位姿误差:
与构造视差图的损失函数相似,在构造相机位姿的损失函数时,也使用几何约束条件构造的合成图像作为监督信号,进而实现无监督的学习方式,与视差图的预测问题不同,位姿预测需要使用前后两幅图像作为训练数据的输入,而输出是相机的位姿参数,的多任务网络输出一个六自由度的向量T=(tx,tt,tz,α,β,γ)来表示两帧图像的相机相对位姿,利用原图像,深度图和相对位姿参数构建连续图像的位姿损失函数,该损失函数由两部分组成:时间图像光度重构误差Ltp和三维几何配准误差Lgr,即Lp=Ltp+Lgr,
步骤4.2.1:时间图像光度重构误差:
令输入的两帧图像分别为参考帧图像和目标帧图像根据多视图几何原理,采用反向映射的方式来构造图像,利用预测深度图和相对位姿To→s,将中的各个像素po投影到所在的坐标系下,
其中,ps表示投影到后的齐次坐标homogeneouscoordinates,po表示某像素在图像中的齐次坐标,K是相机的内参矩阵,与正常的图像映射方式不同,在获得目标帧图像的重构图时不是直接由参考帧图像进行映射,而是采取反方向的方式,先将目标帧图像坐标投影project到参考帧图像上,然后再将投影后图像对应坐标的灰度值映射回warp原始目标帧图像作为最终的重构图像,如公式(6)所述,为将目标帧的图像坐标系变换为相机坐标系,To→sDo...
【专利技术属性】
技术研发人员:叶东,吕旭冬,王硕,
申请(专利权)人:哈尔滨工业大学,
类型:发明
国别省市:黑龙;23
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。