[发明专利]一种基于深度卷积自编码器的视觉同时定位与地图构建方法有效

专利信息
申请号: 202010109809.3 申请日: 2020-02-23
公开(公告)号: CN111325794B 公开(公告)日: 2023-05-26
发明(设计)人: 叶东;吕旭冬;王硕 申请(专利权)人: 哈尔滨工业大学
主分类号: G06T7/73 分类号: G06T7/73;G06T7/80;G06T9/00
代理公司: 哈尔滨市阳光惠远知识产权代理有限公司 23211 代理人: 刘景祥
地址: 150001 黑龙*** 国省代码: 黑龙江;23
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 基于 深度 卷积 编码器 视觉 同时 定位 地图 构建 方法
【权利要求书】:

1.一种基于深度卷积自编码器的视觉同时定位与地图构建方法,其特征在于,所述方法包括以下步骤:

步骤1:根据需求选择不同的训练数据进行数据预处理;

步骤2:建立基于深度卷积自编码器的多任务学习网络;

步骤3:将图像序列中相邻的三帧双目图像作为网络输入,其中,中间帧为目标帧图像Io,相邻的前后两帧为参考帧图像Is,将目标帧与参考帧图像输入多任务学习网络,获得目标帧图像的深度图、目标帧与参考帧之间的相机位姿和光流图、目标帧图像的语义分割图;

步骤4:构建损失函数;

步骤5:多任务网络的训练、验证和测试;

步骤6:多任务网络的训练结束后,利用网络编码器的作为图像表征向量的特征提取器,选择合适的特征图构建图像表征,用于回环检测;

步骤7:上述六个步骤构造了一个新的视觉同时定位与地图构建系统前端,利用位姿图优化或因子图优化来构造视觉同时定位与地图构建系统的后端,进而搭建一个完整的视觉同时定位与地图构建系统,

步骤8:验证搭建的视觉同时定位与地图构建系统的定位准确性和鲁棒性;

所述步骤4构建多任务学习网络的损失函数,利用输入图像和网络预测出的视差图和位姿向量,通过空间反向映射的方式重构目标图像,并构建相应的损失函数,实现深度预测、光流预测和位姿预测三个任务的无监督学习,语义分割任务的损失函数则利用网络预测出的语义分割图与真值标签相比较的有监督学习方式,构建二者的交叉熵损失函数,搭建的多任务损失函数由五部分组成:

Lmulti=Ld+Lp+Lf+Ls+Lwc(1)

其中Ld是视差图的损失函数,Lp是位姿的损失函数,Ls是语义分割的损失函数;Lwc为循环重构图像光度一致性的损失函数;

步骤4.1:视差图损失函数:

所述视差图损失函数由三部分组成:

其中Lsp是空间图像光度重构误差,用于评估重构图像与输入图像之间的相似度;Lds是视差图平滑度误差,保证预测出视差图的平滑性;Ldc是视差图的左右一致性误差,保证预测出的左右视差图的一致性,每一组训练数据包含前后两帧的左右图像,共计四幅图像,但在训练的过程中只有两幅左图被输入网络;

步骤4.1.1:空间图像光度重构误差:

在训练网络时,使用的输入数据来自一个标定好的双目相机在同一时刻采集到的左右两幅图像和

评估重构图像与原图像之间的差异性,从而构造空间图像光度重构误差损失函数

其中是输入图像,为的重构图像,N是图像中像素的个数,W和H分别为图像的宽和高,SSIM的权重为λSSIM=0.85;

步骤4.1.2:视差图平滑度误差;

利用视差图梯度的L1范数来构造损失函数,因为深度图的局部不连续经常发生在图像梯度比较大的地方,使用图像的梯度作为损失函数中各项的权重因子,使用视差图的一阶导数和二阶导数的L1范数共同构造视差图平滑度误差损失函数,

其中为视差图的一阶导数,为视差图的二阶偏导数,为原图像的一阶导数,为原图像的二阶偏导数,

步骤4.1.3:视差图的左右一致性误差;

为了获得更准确的视差图,在训练时仅将左视角的图像输入网络,但网络的输出为左右两幅视差图,为保证两幅视差图的一致性,额外增加了一个L1 penalty损失函数来限制左右视差图的一致性,对于左视差图而言,通过右视差图向左视差图投影,即在右视差图上利用左视差图的灰度值进行坐标运算,左视角的视差图与投影的右视角视差图相等,反之亦然,

在获得了视差图之后,利用已知的相机基线b和焦距f,可以将视差图变换为深度图

步骤4.2:相邻帧图像的位姿误差:

与构造视差图的损失函数相似,在构造相机位姿的损失函数时,也使用几何约束条件构造的合成图像作为监督信号,进而实现无监督的学习方式,与视差图的预测问题不同,位姿预测需要使用前后两幅图像作为训练数据的输入,而输出是相机的位姿参数,的多任务网络输出一个六自由度的向量T=(tx,tt,tz,α,β,γ)来表示两帧图像的相机相对位姿,利用原图像,深度图和相对位姿参数构建连续图像的位姿损失函数,该损失函数由两部分组成:时间图像光度重构误差Ltp和三维几何配准误差Lgr,即Lp=Ltp+Lgr

步骤4.2.1:时间图像光度重构误差:

令输入的两帧图像分别为参考帧图像和目标帧图像根据多视图几何原理,采用反向映射的方式来构造图像,利用预测深度图和相对位姿To→s,将中的各个像素po投影到所在的坐标系下,

其中,ps表示投影到后的齐次坐标,po表示某像素在图像中的齐次坐标,K是相机的内参矩阵,与正常的图像映射方式不同,在获得目标帧图像的重构图时不是直接由参考帧图像进行映射,而是采取反方向的方式,先将目标帧图像坐标投影到参考帧图像上,然后再将投影后图像对应坐标的灰度值映射回原始目标帧图像作为最终的重构图像,如公式(6)所述,为将目标帧的图像坐标系变换为相机坐标系,To→sDo(po)K-1po为将目标帧的相机坐标系再变换为参考帧的相机坐标系,最后再利用相机内参矩阵K变换为参考帧的图像坐标系,经过投影之后的po坐标值是连续的,因此需要使用可微的双线性插值方法来获得近似的整数坐标,

其中po是图像中的某个像素点,K是相机的内参矩阵,为目标帧图像对应的深度图,To→s是从目标帧图像到参考帧图像的相机坐标变换矩阵,fbs代表双线性差值,若将t时刻的图像作为t-1和t+1时刻的图像作为可以利用公式(7),分别从图像和中合成图像和三幅连续图像序列的时间图像光度重构误差可以表示为其中,

其中SSIM的权重因子为

步骤4.2.2:三维几何配准误差:

也使用3D几何匹配误差来评估预测出的相机参数,假设Pt(X,Y,Z)是在第t帧图像在其相机坐标系下的三维坐标,利用Tt→t+1很容易的将该点变换到第t+1帧图像所在的相机坐标系下Pt′(X,Y,Z),把Pt+1(X,Y,Z)投影到第t帧图像所在的相机坐标系下Pt+1(X,Y,Z),因此,两幅连续图像序列之间的三维几何匹配误差表示为:

步骤4.3:光流图损失函数:

构造光流图的损失函数与构造相机为位姿损失函数相似,使用几何约束条件构造的合成图像作为监督信号,进而实现光流图的无监督学习,光流图的预测也使用前后两幅图像作为训练数据的输入,输出为前向光流图wf和反向光流图wb两幅图像,利用原图像和两幅光流图构建连续图像的光流图损失函数,该损失函数由三部分组成:光流图光度重构误差Lfd,光流图平滑度误差Lfs和光流一致性误差Lfc,即Lf=LfdfsLfsfcLfc

步骤4.3.1:光流图光度重构误差:

光流图光度重构误差是利用光流图将第一幅图像映射到第二幅图像之后,映射图与原始图像之间的差值构成了的无监督损失函数,但是,遮挡区域的像素在相邻图像中的对应像素上是无法被观察到的,因此在这类遮挡区域上,需要去除遮挡对于损失函数的影响,从而避免网络学习到错误的光流信息,遮挡区域的检测是基于前向和反正光流图的一致性检测,即对于非遮挡区域像素,前向光流应该是第二幅图像对应像素点反向光流的相反数,当二者之间的差异性很大时,认为该区域是遮挡区域,反之为非遮挡区域,进而构造光流图的掩码图像,因此,对于前向方向的遮挡,当前向光流和反向光流满足下述条件时,定义掩码图像of的像素为1,反之,则为0:

|Ff(x)+Fb(x+Ff(x))|2<α1(|Ff(x)|2+|Fb(x+Ff(x))|2)+α2(11)

其中,前向光流为Ff,反向光流为Fb,前向光流掩码图像为of,反向光流掩码图像为ob,常数参数α1=0.01,α2=0.5,对于反向光流掩码图像ob,只需要将公式(11)中的前向光流为Ff和反向光流Fb交换位置即可,

利用原始图像、生成的光流图和光流掩码图来构造光流的抗遮挡损失函数:

其中fD(I1(x),I2(x′))=I1(x)-I2(x)表示两幅图像对应像素光度误差,ρ(x)=(x22)γ是标准化Charbonnier惩罚函数,γ=0.45,λp为一个惩罚常数,在所有的遮挡像素上增加该参数,可以有效地避免所有的像素都变成遮挡像素,并且惩罚所有未遮挡像素光度误差;

步骤4.3.2:光流图平滑度误差:

希望最终获得的光流图是局部平滑的,因此利用光流场的二阶平滑约束来鼓励相邻流的共线性,从而实现更有效的正则化:

其中,N(x)由图像的水平、垂直和x的两个对角线邻域共四个部分组成,ρ(x)=(x22)γ是标准化Charbonnier惩罚函数,γ=0.40;

步骤4.3.3:光流一致性误差:

对于非遮挡区域的像素,增加了一个前向-反向一致性惩罚损失函数:

步骤4.4:语义分割误差:

在语义分割任务中,使用交叉熵损失函数作为多任务目标函数的一部分用于训练基于深度卷积自编码器的视觉同时定位与地图构建系统,语义分割交叉熵损失函数计算方式是,在一个小批次中将所有的像素的损失值相加起来;

步骤4.5:循环重构图像光度一致性误差:

为了提高视差图估计和光流估计的准确性,引入了一个新的损失函数:循环重构图像光度一致性误差,利用视差图和光流图进行两次重构,遮挡掩码图只在光流图重构时使用,而视差图重构则不使用,从图像经过图像重构图像重构出的图像和遮挡掩码图分别为:

其中,图像为图像对应的重构图像,or,t→l,t+1为相邻帧与之间的前向光流图,W为投影函数,为t时刻预测出的左视差图,为t+1时刻的前向光路图,通过比较从图像经过图像重构出的对应图像与直接从重构的对应图像之间的差值来构造抗遮挡的循环重构图像光度损失函数:

SSIM的权重因子为

最后,把所有上述的误差进行加和,获得提出的多任务网络的总的损失函数,提出的方法与其他方法相比,只使用一个网络来同时完成四个任务,而不是一个任务一个网络,提出的方法是第一个将多任务网络的思想用于SLAM系统的前端模块中,并且在构造损失函数时,同时考虑了视差重构误差、视差图平滑度误差、视差图左右一致性误差、光流重构误差、光流图平滑度误差以及三维匹配误差,并结合了语义分割的交叉熵损失函数,在训练网络时,对多种损失函数进行联合优化;

所述步骤6利用训练完成后的多任务网络的编码器作为图像表征向量的特征提取器,选择合适的特征图构建图像表征,用于回环检测;

所述回环检测的具体方法,包括的步骤如下:

步骤6.1:利用训练好的多任务学习网络的编码器网络作为输入图像的特征提取器,选取网络合适层的特征图作为图像的原始全局表征张量:

其中Fil为第i个特征图,h和w分别为特征图的长和宽,l表示选取网络的第l层作为图像表征,将所有的特征图展平为特征向量,并将所有的特征向量进行拼接:

其中Fl为拼接之后的图像表征向量,为将第i个特征图Fil展开后的特征向量,c为原始全局表征张量的深度,即特征图的个数,

步骤6.2:将所有输入图像的表征向量组合成一个表征矩阵,并对矩阵进行去中心化:

其中X为去中心化后的表征矩阵,m为输入图像的数目,n=h×w×c为表征向量的长度,为表征矩阵的平均值向量:

步骤6.3:对去中心化的表征矩阵X先进行二范数规范化,然后进行自适应的主成分分析压缩:

其中cov为表征矩阵X的协方差矩阵,Σ和U分别为对协方差矩阵X进行奇异值分解后获得的特征值矩阵和特征向量矩阵,利用特征向量矩阵对原始图像表征矩阵进行压缩:

其中Y为压缩后的图像表征矩阵,k为压缩之后表征向量长度,Uk=[u1 u2...uk]为前k个特征值对应的特征向量矩阵,不直接设置k值,而是通过信息压缩比来自适应的设置该值:

其中γ为信息压缩比,λi为协方差矩阵的第i个特征值,

步骤6.4:对压缩后的图像表征矩阵Y进行白化操作,减小特征之间的相关性:

其中ε∈(0,1)是一个很小的常数,用于防止除数为0,

基于深度卷积自编码器构建一个多任务学习网络视觉里程计和回环检测模块之后,利用位姿图优化或因子图优化来构造视觉同时定位与地图构建系统的后端,进而搭建一个完整的视觉同时定位与地图构建系统。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于哈尔滨工业大学,未经哈尔滨工业大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/202010109809.3/1.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top