CN111325797B - 一种基于自监督学习的位姿估计方法 - Google Patents
一种基于自监督学习的位姿估计方法 Download PDFInfo
- Publication number
- CN111325797B CN111325797B CN202010139862.8A CN202010139862A CN111325797B CN 111325797 B CN111325797 B CN 111325797B CN 202010139862 A CN202010139862 A CN 202010139862A CN 111325797 B CN111325797 B CN 111325797B
- Authority
- CN
- China
- Prior art keywords
- pose
- network
- pose estimation
- self
- estimation network
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 69
- 238000012549 training Methods 0.000 claims abstract description 38
- 230000007246 mechanism Effects 0.000 claims abstract description 21
- 238000007781 pre-processing Methods 0.000 claims abstract description 4
- 230000006870 function Effects 0.000 claims description 27
- 238000004422 calculation algorithm Methods 0.000 claims description 19
- 238000013135 deep learning Methods 0.000 claims description 13
- 238000013507 mapping Methods 0.000 claims description 10
- 239000011159 matrix material Substances 0.000 claims description 9
- 239000000284 extract Substances 0.000 claims description 6
- 230000004913 activation Effects 0.000 claims description 5
- 230000008859 change Effects 0.000 claims description 4
- 238000011176 pooling Methods 0.000 claims description 4
- 238000012546 transfer Methods 0.000 claims description 3
- 230000009466 transformation Effects 0.000 abstract description 3
- 238000013473 artificial intelligence Methods 0.000 abstract description 2
- 230000004927 fusion Effects 0.000 abstract description 2
- 238000012360 testing method Methods 0.000 description 21
- 238000005516 engineering process Methods 0.000 description 13
- 230000008569 process Effects 0.000 description 13
- 238000000605 extraction Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 9
- 230000008901 benefit Effects 0.000 description 4
- 230000006872 improvement Effects 0.000 description 4
- 230000033001 locomotion Effects 0.000 description 4
- 238000010801 machine learning Methods 0.000 description 3
- 230000008447 perception Effects 0.000 description 3
- ORILYTVJVMAKLC-UHFFFAOYSA-N Adamantane Natural products C1C(C2)CC3CC1CC2C3 ORILYTVJVMAKLC-UHFFFAOYSA-N 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000013527 convolutional neural network Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000018109 developmental process Effects 0.000 description 2
- 238000006073 displacement reaction Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000009499 grossing Methods 0.000 description 2
- 230000004807 localization Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 238000003909 pattern recognition Methods 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 241001270131 Agaricus moelleri Species 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000013100 final test Methods 0.000 description 1
- 230000012010 growth Effects 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 230000000452 restraining effect Effects 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
- G06T7/73—Determining position or orientation of objects or cameras using feature-based methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10016—Video; Image sequence
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20016—Hierarchical, coarse-to-fine, multiscale or multiresolution image processing; Pyramid transform
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20081—Training; Learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20084—Artificial neural networks [ANN]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30241—Trajectory
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02T—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
- Y02T10/00—Road transport of goods or passengers
- Y02T10/10—Internal combustion engine [ICE] based vehicles
- Y02T10/40—Engine management systems
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Biomedical Technology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Life Sciences & Earth Sciences (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Image Analysis (AREA)
Abstract
本发明涉及计算机视觉与人工智能领域的交叉融合领域,更具体的说,涉及一种基于自监督学习的位姿估计方法。本发明包括以下步骤:S1、获取图像;S2、进行图像预处理;S3、将当前帧和前一帧图像一同送入至位姿估计网络并求得两帧之间的位姿估计,所述位姿估计网络通过和深度估计网络联合以自监督学习方式进行训练得到;S4、根据前一帧的全局位姿以及当前帧与前一帧之间的位姿估计,求得当前帧的全局位姿。本发明利用位姿估计网络和深度估计网络联合训练的方式实现自监督学习,在位姿估计网络和深度估计网络中加入注意力机制,最终实现长序列帧间位姿变换的一致性尺度估计,所生成的完整轨迹精度更高。
Description
技术领域
本发明涉及计算机视觉与人工智能领域的交叉融合领域,更具体的说,涉及一种基于自监督学习的位姿估计方法。
背景技术
自主无人设备如无人机、无人车等实现自主能力主要依赖于感知、决策和控制,其中感知是一切的基础。感知,即赋予无人设备像人一样的观察和感受的能力,人类的信息获取主要是依靠视觉。无人设备同样希望能够利用摄像头像人类利用双眼一样感知周围的环境,知道自己当前所处的位置和方向。
因此,计算机视觉在近年来得到了迅速发展。当前对设备的位置以及方向的估计方式主要有人造指引,航位推算和GPS导航定位等,但这些技术也都有着很大的应用限制。
人造指引是指,通过人工标记一些先验位置信息,比如粘贴一些二维码标识,使得设备在识别到特定的信息后找到对应特定的位置,但这需要人工设置和标订大量的位置信息,尤其是对于复杂多变的环境,该方法无法实现适应性以及有效的推广。
航位推算技术是指,利用搭载的传感器如IMU(Inertial measurement unit,惯性测量单元)以及编码器等,通过对传感器信息的积分处理,得到位置信息,该方法的不足之处在于,其漂移会随着时间的增加而越来越大,并不满足实际应用的需求。
GPS全球定位系统的优点在于技术比较成熟,而且能够在全球范围内实现较高精度的定位水平,但是其定位精度依赖于接收卫星信号的强度,这导致该技术也有一定的缺陷,比如在室内环境下,无法提供有效的GPS定位。
因此,基于视觉的VO(Visual Odometry,视觉里程计)技术相比于上述技术能够提供一个更为准确、有效且鲁棒的位置及方向估计。
基于视觉的VO技术,包括基于特征点法的VO技术和基于直接法的VO技术。
基于特征点法的VO技术,主要包括以下步骤:特征提取,特征匹配以及位姿求解。
常用的特征提取方法包括:SIFT(Scale-invariant feature transform,尺度不变特征变换)特征提取、SURF(Speeded Up Robust Features,加速稳健特征)特征提取。
相机位姿求解通常是根据匹配的点对来计算的:
对于多组2D像素点,可以利用对极几何来估计;
对于多组3D空间点,可以采用ICP(Iterative Closest Point,迭代最近点)算法来解决;
对于3D空间点和2D像素点,可以采用PNP(Pespective-N-Point,N点透视)算法来求解。
基于特征点法的VO技术的代表作是PTAM(Parallel Tracking And Mapping,并行跟踪与映射)算法和ORB-SLAM2(Oriented FAST and Rotated BRIEF-SimultaneousLocalization and Mapping 2,第二代快速导向与简要旋转的即时定位与地图构建)算法。
基于直接法的VO技术,根据像素灰度的差异直接计算相机运动,并根据像素点之间的光度误差来优化位姿。
基于直接法的VO技术,既避免了特征的提取以及描述子计算时间,也避免了特征缺失的情况,只要场景中存在着明暗变化,就能工作。
但是,基于直接法的VO技术也存在着以下几个缺陷:
1)非凸性:由于图像是强烈非凸的函数,使得优化算法容易陷入极小值,在运动很小时直接法效果更好;
2)单个像素没有区分度;
3)灰度值不变是很强的假设。
基于直接法的VO技术的代表作为DSO(Direct Sparse Odometry,直接稀疏测距)算法。
随着深度学习的不断发展,尤其是卷积神经网络的提出,基于深度学习技术的图像处理方法有着更强大的性能,且目前在检测识别和语义分割等领域都已经有了广泛应用。
在状态估计领域,2015年提出的PoseNet(姿态网络)算法模型是首次将卷积神经网络用于相机的6自由度位姿预测。
目前主流的位姿网络的训练方式主要分为两种,基于监督的网络训练方法和基于自监督的网络训练方法。
基于监督的网络训练方法,是指利用帧间的真实位姿和网络输出的位姿进行对比,通过最小化这两者之间的差异实现网络参数的迭代优化,从而使得网络得以学习到图像对与6自由度位姿之间的非线性映射关系。
基于监督的网络训练方法由于需要大量的帧间位姿真值作为网络的监督信号,而这些真值的获取往往十分的费时费力以及昂贵,因此当前发展的主流方向还是基于自监督的网络训练方法。
基于自监督的网络训练方法主要是利用帧间的投影关系建立帧间像素点的对应关系,通过最小化两帧投影对应像素点光度差异,实现网络的训练过程。
现有的基于无监督训练的位姿估计网络大多数是基于2017年发表于CVPR(IEEEConference on Computer Vision and Pattern Recognition,IEEE国际计算机视觉与模式识别会议)的SfMLearner(Structure from motion Learner,运动恢复结构学习)网络,其改进的方法主要是通过添加额外的网络模块以及对应的损失函数,耦合训练,从而实现网络整体的性能提升。
例如发表于2018年CVPR的GeoNet(Geometric Network,几何网络)算法模型,其在SfMLearner技术的基础上添加了额外的光流估计网络以及光流网络的一致性损失约束,使得其位姿网络的估计精度得到了很大的提升。
但是,上述方法的不足之处在于,其训练过程未考虑不同相邻帧之间位姿估计结果的尺度一致性,这导致这些位姿估计网络无法直接用于生成完整的位姿轨迹,更无法实际使用。
针对这一问题,Zhan et al.发表于2018年CVPR的文献《Unsupervised learningof monocular depth estimation and visual odometry with deep featurereconstruction》中提到,DFR(Deep Feature Reconstruction,深度特征重构)算法模型的位姿深度训练框架中,采用双向一致性的训练方式和损失函数来约束网络输出的尺度一致性,并得到了不错的结果,但是该方法采用与尺度一致性有关的损失约束,生成的完整轨迹精度不高。
发明内容
本发明的目的是提供一种基于自监督学习的尺度一致性位姿估计方法,解决现有技术中位姿估计网络生成完整轨迹的精度低的技术问题。
为了实现上述目的,本发明提供了一种基于自监督学习的位姿估计方法,包括以下步骤:
S1、获取图像;
S2、进行图像预处理;
S3、判断当前帧是否为首帧图像,如果是首帧图像,则初始化当前帧的全局位姿为单位矩阵;
S4、如果不是首帧图像,将当前帧和前一帧图像一同送入至位姿估计网络并求得两帧之间的位姿估计,所述位姿估计网络通过和深度估计网络联合以自监督学习方式进行训练得到;
S5、根据前一帧的全局位姿以及当前帧与前一帧之间的位姿估计,求得当前帧的全局位姿。
在一实施例中,所述自监督学习方式训练,包括以下步骤:
输入图像视频序列的相邻两帧视图It,It-1;
利用深度估计网络求解视图It的深度图;
利用位姿估计网络求解相邻视图之间的位姿;
利用深度图和位姿之间的几何关系,借助视图投影函数以及视图重构算法,从It-1和It中重构视图
在一实施例中,所述位姿估计网络,通过卷积层的卷积操作将图像由粗到细的特征提取出来;
所述卷积层的数量为7个,卷积层的卷积核的大小包括7*7,5*5,3*3和2*2。
在一实施例中,所述位姿估计网络,还采用全连接层和自注意力机制,提高位姿估计网络在特征与位姿之间的映射;
所述自注意力机制,通过全连接和深度学习激活函数对上一层提取的特征进行相对重要程度计算,计算出每一个提取的特征的权重,并对特征进行重新加权,加权处理后的特征通过全连接层预测位姿。
在一实施例中,所述深度估计网络,为全卷积网络,包括编码器和解码器:
所述编码器,通过卷积层将高维特征提取并压缩成低维特征,所述卷积层的数量为7个,卷积层的卷积核的大小包括7*7,5*5,3*3和2*2;
所述解码器,将低维特征解压缩并生成对应高纬度图像的深度图,采用反卷积层实现由提取特征到深度图之间的映射变化,反卷积层的卷积核尺寸为3*3。
在一实施例中,所述深度估计网络,通过注意力机制实现编码器和解码器间的信息传递,根据解码器层的反卷积层的高维特征,利用全局池化及卷积操作生成一个权值向量,对编码器的卷积层的低维特征进行加权。
在一实施例中,所述自监督学习方式,约束网络训练的损失函数包括视图重构损失/>和深度图平滑性损失/>满足以下关系:
其中,s为金字塔图像的尺度,α为平滑性损失函数的权重。
在一实施例中,所述视图重构损失通过对比原视图It以及重构视图/>之间的差异所得到损失值,满足以下关系:
其中,SSIM为恒量两图像之间相似度的相关指标,β为两项指标之间的相对权重。
在一实施例中,所述深度图平滑性损失通过以下公式得到:
其中,△为微分算子,pt为当前帧的像素,D为网络估计的深度图,T为矩阵转置算子。
在一实施例中,所述重构视图利用投影函数通过相邻帧间像素pt,pt-1的对应关系得到,满足以下关系:
其中,是位姿估计网络输出的帧间位姿估计,/>是深度估计网络输出的当前帧的深度图,K-1为相机内参矩阵。
本发明提出的一种基于自监督学习的尺度一致性位姿估计方法,利用位姿估计网络和深度估计网络联合训练的方式实现自监督学习,在位姿估计网络和深度估计网络中加入注意力机制,从而增强网络的高水平特征提取能力和对所提取特征的操作能力,利用注意力机制对相邻帧中的相同几何特征尺度进行学习和对齐,最终实现长序列帧间位姿变换的一致性尺度估计,与现有技术相比较,本发明所提出的位姿估计网络所生成的完整轨迹精度更高。
附图说明
本发明上述的以及其他的特征、性质和优势将通过下面结合附图和实施例的描述而变的更加明显,在附图中相同的附图标记始终表示相同的特征,其中:
图1揭示了根据本发明一实施例的位姿估计方法流程图;
图2揭示了根据本发明一实施例的位姿估计网络和深度估计网络联合自监督学习训练流程图;
图3揭示了根据本发明一实施例的位姿估计网络示意图;
图4揭示了根据本发明一实施例的深度估计网络示意图;
图5揭示了根据本发明一实施例的深度估计网络的注意力机制的示意图;
图6揭示了根据本发明一实施例的重构视图生成示意图;
图7a揭示了现有技术的深度学习位姿估计方法的第一测试输出完整轨迹图;
图7b揭示了现有技术的深度学习位姿估计方法的第二测试输出完整轨迹图;
图8a揭示了根据本发明一实施例的第一测试输出完整轨迹图;
图8b揭示了根据本发明一实施例的第二测试输出完整轨迹图;
图9a揭示了根据本发明一实施例与现有技术的第一测试输出完整轨迹对比图;
图9b揭示了根据本发明一实施例与现有技术的第二测试输出完整轨迹对比图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释发明,并不用于限定发明。
针对现有位姿估计网络存在的问题以及不足之处,本发明提出基于自监督学习的尺度一致性位姿估计方法,利用位姿估计网络和深度估计网络联合训练的方式实现自监督学习。
图1揭示了根据本发明一实施例的位姿估计方法流程图,在图1所示的实施例中,本发明提出的一种基于自监督学习的位姿估计方法,包括以下步骤:
S1、获取图像,在一实施例中,由RGB相机获取三通道场景图像。
S2、进行图像预处理,处理图像分辨率。在一实施例中,图像分辨率处理为128*416。
S3、判断当前帧是否为首帧图像,如果是首帧图像,则初始化当前帧的全局位姿为单位矩阵;
S4、提取当前帧和前一帧,将当前帧和前一帧图像一同送入至位姿估计网络并求得两帧之间的位姿估计,所述位姿估计网络通过和深度估计网络联合以自监督学习方式进行训练得到;
S5、根据前一帧的全局位姿以及当前帧与前一帧之间的位姿估计,求得当前帧的全局位姿。
本发明中,位姿估计网络通过和深度估计网络联合以自监督学习方式进行训练,自监督学习(self-supervised learning)可以被看作是机器学习的一种“理想状态”,模型直接从无标签数据中自行学习,无需标注数据。
图2揭示了根据本发明一实施例的位姿估计网络和深度估计网络联合自监督学习训练流程图,在图2所示的实施例中,自监督学习方式训练,包括以下步骤:
输入图像视频序列的相邻两帧视图It,It-1;
利用深度估计网络求解视图It的深度图;
利用位姿估计网络求解相邻视图之间的位姿;
利用深度图和位姿之间的几何关系,借助视图投影函数以及视图重构算法,从It-1和It中重构视图
图3揭示了根据本发明一实施例的位姿估计网络示意图,如图3所示,本发明提出的位姿估计网络,由7个卷积层,2个全连接层组成。
本发明提出的位姿估计网络进行位姿估计,首先进行特征提取步骤,通过卷积层的卷积操作将图像的特征提取。
参照SFMLearner网络模型,本发明提出的位姿估计网络采取全卷积的操作进行特征提取。
考虑神经网络对各种尺度特征的提取能力,作为进一步的改进,本发明的位姿估计网络采用不同的卷积核大小,通过7个卷积层的卷积操作将图像的由粗到细的特征提取出来。
本发明的位姿估计网络卷积层的卷积核的大小包括7*7,5*5,3*3,2*2等四种。
如图3所示,位姿估计网络的7个卷积层中,1个卷积层的卷积核的大小为7*7,数据长度为32位;2个卷积层的卷积核的大小为5*5,数据长度分别为64位和128位;3个卷积层的卷积核的大小为3*3,数据长度均为256位;1个卷积层的卷积核的大小为2*2,数据长度为512位。
更进一步的,在特征提取步骤之后,位姿估计网络还采用全连接层和自注意力机制,对图像的特征进一步操作和位姿估计,提高网络在特征与位姿之间的映射。
与现有技术的SfMLeaner网络模型以及GeoNet网络模型的位姿网络全卷积设计不同,为了提升网络对卷积层所提取特征的操作以及对6自由度位姿的回归能力,本发明在位姿估计网络中运用了全连接层以及自注意力机制。
所述全连接层,是深度学习的一种网络结构,全连接层的每一个结点都与上一层的所有结点相连,用来把前边提取到的特征综合起来。如图3所示,全连接层的数据长度为512位。
所述自注意力机制,相当于对提取的特征进行重新加权,从而挑选出更有用的特征,通过全连接以及深度学习激活函数对上一层提取的特征进行相对重要程度计算,计算出每一个提取的特征的权重,并对特征进行重新加权,加权处理后的特征又通过全连接层预测6自由度位姿。
所述深度学习激活函数为Sigmoid函数,Sigmoid函数是一个在生物学中常见的S型函数,也称为S型生长曲线。在信息科学中,由于其单增以及反函数单增等性质,Sigmoid函数被用作深度学习激活函数,将变量映射到0,1之间,提升网络非线性拟合能力。
本发明的位姿估计网络和深度估计网络联合自监督学习训练过程,这一过程需要一个额外的深度估计网络辅助,通过与一个深度估计网络联合训练的方式实现自监督训练过程。虽然位姿估计网络和深度估计网络两个网络是联合训练的,但是在实际使用时两个网络是可以独立使用的。
由于位姿估计网络和深度估计网络是联合以自监督方式进行训练,所以深度估计网络性能的好坏也直接影响着位姿估计网络的性能。
本发明对深度估计网络也做了进一步的改进和提升,图4揭示了根据本发明一实施例的深度估计网络示意图,如图4所示,本发明的深度估计网络,为全卷积网络,采用了传统的自编码结构,包括编码器和解码器,利用编码器对输入图像进行高维特征提取和压缩,然后利用解码器对特征进行解压缩并生成对应图像的深度图。
编码器,将高维原视图压缩成一个低维度特征向量。
解码器,将低维度的特征向量解压缩为高纬度的视图,如恢复原视图或生成原视图的深度图,采用反卷积层实现由提取特征到深度图之间的映射变化。
与位姿估计网络类似,深度估计网络的卷积层的数量为7个,卷积层的卷积核尺寸包括7*7,5*5,3*3,2*2等,以提升编码器的特征提取能力。
在图4所示的实施例中,深度估计网络的7个卷积层中,1个卷积层的卷积核的大小为7*7,数据长度为32位;1个卷积层的卷积核的大小为5*5,数据长度分别为64位;1个卷积层的卷积核的大小为3*3,数据长度为128位;另外3个卷积层的卷积核的大小为3*3,数据长度均为256位;1个卷积层的卷积核的大小为2*2,数据长度为512位。
所有反卷积层的卷积核尺寸为3*3,其中,3个反卷积层的卷积核的数据长度为256位,1个反卷积层的卷积核的数据长度为128位,1个反卷积层的卷积核的数据长度为64位,1个反卷积层的卷积核的数据长度为32位。
现有技术的SfMLeaner以及GeoNet等深度估计网络中,编码器和解码器之间的信息传递是通过跳连接(skip connect)实现的,直接将编码器层(convi)的特征与解码器层(upconvi)特征直接串接起来,即将对应编码器的所有信息均送至解码器中,这会导致信息的冗余,其中重要的信息和无用的信息被无差别的传递,降低了网络的效率。
为了解决这一问题,本发明在深度估计网络中也引入了注意力机制增强网络对特征的操作和提取能力。
图5揭示了根据本发明一实施例的深度估计网络的注意力机制的示意图,如图5所示,所述注意力机制,是指将编码器层的特征根据解码器所需施加不同的权值。
更进一步的说,所述深度估计网络,通过注意力机制实现编码器和解码器间的信息传递,根据解码器upconvi的反卷积层的高维特征,利用全局池化及卷积操作生成一个权值向量A,对编码器convi的卷积层的低维特征进行加权。
更进一步的说,如图5所示,所述权值向量A,通过解码器的相邻帧特征upconv(i-1)进行全局池化和1*1卷积得到的权重值weight。
与位姿估计网络中的注意力机制不同,深度估计网络中的注意力机制直接对图像的不同通道进行重新加权。
由于位姿估计网络和深度估计网络是联合以自监督方式进行训练,在图2所示的实施例中,采用视图重构损失和深度平滑损失两项损失函数约束网络的训练。自监督训练是指训练过程未用到深度原图和位姿真值对网络输出进行约束。
网络所使用的总的损失函数包括视图重构损失/>和深度图平滑性损失满足以下关系:
其中,s表示金字塔图像的尺度,α表示平滑性损失函数的权重。
视图重构损失,主要约束位姿和深度估计网络的训练过程,深度平滑损失主要为了约束生成的深度图的平滑性。
视图重构损失通过对比原视图It以及重构视图/>之间的差异所得到,满足以下关系:
其中,SSIM为恒量两图像之间相似度的相关指标,β为两项指标之间的相对权重。
重构视图利用投影函数通过相邻帧间像素pt,pt-1的对应关系得到,相邻帧间像素pt,pt-1满足以下关系:
其中,是位姿估计网络输出的帧间位姿估计,/>是深度估计网络输出的当前帧的深度图,K-1为相机内参矩阵。
图6揭示了根据本发明一实施例的重构视图生成示意图,如图6所示,重构视图通过相邻帧间像素pt,pt-1满足以下关系建立起来:
视图重构包括:投影(Project)过程和变形过程(Warp)。
在图6所示的实施例中,投影过程为:例如原视图It上的像素pt,其坐标为(2,2),经过投影关系计算出其在It-1上的投影位置为pt-1,其坐标为(2.5,2.3),因为计算的结果包含着各种误差,所以得到的结果不是一个整数坐标。
在图6所示的实施例中,变形过程为:由于求取出来的不是整数坐标,而只有整数坐标位置才有像素值,利用双线性差值算法,通过利用距离pt-1最近的四个坐标点的像素值差值出来一个像素值作为该pt-1点的像素m。将求取的像素m用于替换替换掉It上原位置pt的像素值。
最后It上的大部分像素点的像素值都被以上形式进行替换,最终形成了所谓的重构视图
由于实际场景中存在许多光滑的平面,如马路,建筑物表面等,这些平面上的深度值应该是平滑的、梯度变化的,所以本发明中采用深度图平滑性损失来进一步对这些场景结构的细节之处进行调整。
现有技术的SfMLearner和GeoNet等网络模型均是对深度图的一阶梯度进行约束,从而促使同一平面其深度趋于一致。但是实际图像中的平面多是倾斜的,如摄像头拍摄出的马路等,其深度变化平滑性应该利用深度图的二阶导数进行约束,因此,本发明对深度平滑性损失函数做进一步的改进。
一实施例中,本发明的深度图平滑性损失通过以下公式得到:
其中,△表示微分算子,pt为当前帧的像素,D为网络估计的深度图,T为矩阵转置算子。
通过训练的损失函数可以看出,本发明的网络在训练过程中并未采用任何约束尺度一致性的相关损失,生成完整轨迹的精度更高。
下面通过一个实际的测试进一步说明本发明提出的基于自监督学习的位姿估计方法与现有技术相比的技术效果
图7a和图7b分别揭示了现有技术的深度学习位姿估计方法的第一和第二测试输出完整轨迹图,参与测试的现有技术模型包括:SfMLearner、GeoNet算法模型,GroundTruth曲线为真实地面轨迹,从图中所示现有技术模型无法生成完整的位姿轨迹。
图8a和图8b分别揭示了根据本发明一实施例的第一和第二测试输出完整轨迹图,图9a和图9b分别揭示了根据本发明一实施例与现有技术的第一和第二测试输出完整轨迹对比图。
参与测试的现有技术模型包括:SfMLearner、GeoNet和DFR算法模型。
与现有技术的网络模型采用相同框架与参数,本发明中的自监督学习方式训练和使用,基于TensorFlow深度学习框架,在NVIDIA RTX 2080TiGPU上进行训练。
所述TensorFlow是一个基于数据流编程(Dataflow Programming)的符号数学系统,被广泛应用于各类机器学习(Machine Learning)算法的编程实现。
相关参数设置为:
总损失函数中,平滑性损失的权重α=0.5;
视图重构损失项中相对权重β=0.85;
网络的训练选用的是ADAM优化器,其参数设置β1=0.85,学习率初始化为0.0002,网络输入的图像分辨率调整为128*416,设置位姿网络输入序列长度为5。
所述ADAM(自适应矩估计)优化器是广泛用于TensorFlow深度学习框架中用于计算每个参数的自适应学习率的方法。
与现有技术的网络模型相同,本网络利用KITTI Odometry数据集的第00-08序列进行训练,并在第09-10序列上进行测试。
KITTI Odometry是机器学习中一个普遍使用的公有数据集。图8a和图9a对应于在第09序列测试的结果,图8b和图9b对应于在第10序列测试的结果。
图8a中seq09_GT曲线为测试用的09序列,另一曲线是本发明测试结果,图8b中seq10_GT曲线为测试用的10序列,另一曲线是本发明测试结果。图9a中GroundTruth曲线为测试用的09序列,图9b中GroundTruth曲线为测试用的10序列。最终的测试结果如图8a-图9b以及表1所示。
表1为当前现有技术中最优的算法模型在KITTI Odometry 09-10序列上测试得到的所生成的完整轨迹的位移和方向误差与本发明的对比,其中T_err为平移位姿误差,R_err为旋转方向误差。
表1
由上述两个误差参数可以看出,本发明所提出的网络所生成的完整轨迹与其他方法相比有着更高的精度
与SfMLearner和GeoNet算法模型相比,我们的网络具有生成完整轨迹的能力,且精度更高。
与DFR算法模型相比,即使我们的网络在训练过程中无约束尺度一致性的相关损失项,生成的完整轨迹仍然优于该方法。
本发明提出的一种基于自监督学习的尺度一致性位姿估计方法,利用位姿估计网络和深度估计网络联合训练的方式实现自监督学习,在位姿估计网络和深度估计网络中加入注意力机制,从而增强网络的高水平特征提取能力和对所提取特征的操作能力,利用注意力机制对相邻帧中的相同几何特征尺度进行学习和对齐,最终实现长序列帧间位姿变换的一致性尺度估计,与现有技术相比较,本发明所提出的位姿估计网络所生成的完整轨迹精度更高。
尽管为使解释简单化将上述方法图示并描述为一系列动作,但是应理解并领会,这些方法不受动作的次序所限,因为根据一个或多个实施例,一些动作可按不同次序发生和/或与来自本文中图示和描述或本文中未图示和描述但本领域技术人员可以理解的其他动作并发地发生。
如本申请和权利要求书中所示,除非上下文明确提示例外情形,“一”、“一个”、“一种”和/或“该”等词并非特指单数,也可包括复数。一般说来,术语“包括”与“包含”仅提示包括已明确标识的步骤和元素,而这些步骤和元素不构成一个排它性的罗列,方法或者设备也可能包含其他的步骤或元素。
上述实施例是提供给熟悉本领域内的人员来实现或使用本发明的,熟悉本领域的人员可在不脱离本发明的发明思想的情况下,对上述实施例做出种种修改或变化,因而本发明的保护范围并不被上述实施例所限,而应该是符合权利要求书提到的创新性特征的最大范围。
Claims (7)
1.一种基于自监督学习的位姿估计方法,其特征在于,包括以下步骤:
S1、获取图像;
S2、进行图像预处理;
S3、判断当前帧是否为首帧图像,如果是首帧图像,则初始化当前帧的全局位姿为单位矩阵;
S4、如果不是首帧图像,将当前帧和前一帧图像一同送入至位姿估计网络并求得两帧之间的位姿估计,所述位姿估计网络通过和深度估计网络联合以自监督学习方式进行训练得到;
S5、根据前一帧的全局位姿以及当前帧与前一帧之间的位姿估计,求得当前帧的全局位姿;
其中,所述自监督学习方式训练,包括以下步骤:
输入图像视频序列的相邻两帧视图It,It-1;
利用深度估计网络求解视图It的深度图;
利用位姿估计网络求解相邻视图之间的位姿;
利用深度图和位姿之间的几何关系,借助视图投影函数以及视图重构算法,从It-1和It中重构视图
所述位姿估计网络,通过卷积层的卷积操作将图像由粗到细的特征提取出来;
所述位姿估计网络,还采用全连接层和自注意力机制,提高位姿估计网络在特征与位姿之间的映射;
所述自注意力机制,通过全连接和深度学习激活函数对上一层提取的特征进行相对重要程度计算,计算出每一个提取的特征的权重,并对特征进行重新加权,加权处理后的特征通过全连接层预测位姿;
所述深度估计网络,为全卷积网络,包括编码器和解码器:
所述编码器,通过卷积层将高维特征提取并压缩成低维特征;
所述解码器,将低维特征解压缩并生成对应高纬度图像的深度图,采用反卷积层实现由提取特征到深度图之间的映射变化;
所述深度估计网络,通过注意力机制实现编码器和解码器间的信息传递,根据解码器层的反卷积层的高维特征,利用全局池化及卷积操作生成一个权值向量,对编码器的卷积层的低维特征进行加权。
2.根据权利要求1所述的基于自监督学习的位姿估计方法,其特征在于:
所述卷积层的数量为7个,卷积层的卷积核的大小包括7*7,5*5,3*3和2*2。
3.根据权利要求1所述的基于自监督学习的位姿估计方法,其特征在于,所述反卷积层的卷积核尺寸为3*3。
4.根据权利要求1所述的基于自监督学习的位姿估计方法,其特征在于,所述自监督学习方式,约束网络训练的损失函数包括视图重构损失/>和深度图平滑性损失/>满足以下关系:
其中,s为金字塔图像的尺度,α为平滑性损失函数的权重。
5.根据权利要求4所述的基于自监督学习的位姿估计方法,其特征在于,所述视图重构损失通过对比原视图It以及重构视图/>之间的差异所得到,满足以下关系:
其中,SSIM为恒量两图像之间相似度的相关指标,β为两项指标之间的相对权重。
6.根据权利要求4所述的基于自监督学习的位姿估计方法,其特征在于,所述深度图平滑性损失通过以下公式得到:
其中,△为微分算子,pt为当前帧的像素,D为网络估计的深度图,T为矩阵转置算子。
7.根据权利要求5所述的基于自监督学习的位姿估计方法,其特征在于,所述重构视图利用投影函数通过相邻帧间像素pt,pt-1的对应关系得到,相邻帧间像素pt,pt-1满足以下关系:
其中,是位姿估计网络输出的帧间位姿估计,/>是深度估计网络输出的当前帧的深度图,K-1为相机内参矩阵。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010139862.8A CN111325797B (zh) | 2020-03-03 | 2020-03-03 | 一种基于自监督学习的位姿估计方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010139862.8A CN111325797B (zh) | 2020-03-03 | 2020-03-03 | 一种基于自监督学习的位姿估计方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111325797A CN111325797A (zh) | 2020-06-23 |
CN111325797B true CN111325797B (zh) | 2023-07-25 |
Family
ID=71165484
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010139862.8A Active CN111325797B (zh) | 2020-03-03 | 2020-03-03 | 一种基于自监督学习的位姿估计方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111325797B (zh) |
Families Citing this family (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111797740A (zh) * | 2020-06-24 | 2020-10-20 | 北京三快在线科技有限公司 | 一种模型训练以及视觉定位方法及装置 |
CN112150531B (zh) * | 2020-09-29 | 2022-12-09 | 西北工业大学 | 一种鲁棒的自监督学习单帧图像深度估计方法 |
CN112308918B (zh) * | 2020-10-26 | 2024-03-29 | 杭州电子科技大学 | 一种基于位姿解耦估计的无监督单目视觉里程计方法 |
CN112767467B (zh) * | 2021-01-25 | 2022-11-11 | 郑健青 | 一种基于自监督深度学习的双图深度估计方法 |
CN113034563A (zh) * | 2021-02-22 | 2021-06-25 | 苏州易航远智智能科技有限公司 | 基于特征共享的自监督式单目深度估计方法 |
CN113065546B (zh) * | 2021-02-25 | 2022-08-12 | 湖南大学 | 一种基于注意力机制和霍夫投票的目标位姿估计方法及系统 |
CN115118950B (zh) * | 2021-03-22 | 2024-01-30 | 北京小米移动软件有限公司 | 图像处理方法及装置 |
CN113205043B (zh) * | 2021-04-30 | 2022-06-07 | 武汉大学 | 一种基于强化学习的视频序列二维姿态估计方法 |
CN113392743B (zh) * | 2021-06-04 | 2023-04-07 | 北京格灵深瞳信息技术股份有限公司 | 异常动作检测方法、装置、电子设备和计算机存储介质 |
CN113723163B (zh) * | 2021-06-07 | 2024-04-16 | 东南大学 | 利用离散姿态学习物理约束的手部运动自监督重建方法 |
CN113450410B (zh) * | 2021-06-29 | 2022-07-26 | 浙江大学 | 一种基于对极几何的单目深度和位姿联合估计方法 |
CN113744301B (zh) * | 2021-08-05 | 2024-09-24 | 深圳供电局有限公司 | 移动机器人的运动轨迹估计方法、装置和存储介质 |
CN113793472B (zh) * | 2021-09-15 | 2023-01-20 | 应急管理部沈阳消防研究所 | 基于特征深度聚合网络的图像型火灾探测器位姿估计方法 |
CN114332639B (zh) * | 2021-11-30 | 2023-12-22 | 中国人民解放军战略支援部队航天工程大学 | 一种非线性残差自注意力机制的卫星姿态视觉测量方法 |
CN114526728B (zh) * | 2022-01-14 | 2023-12-05 | 浙江大学 | 一种基于自监督深度学习的单目视觉惯导定位方法 |
CN114677412B (zh) * | 2022-03-18 | 2023-05-12 | 苏州大学 | 一种光流估计的方法、装置以及设备 |
CN114663509B (zh) * | 2022-03-23 | 2022-09-27 | 北京科技大学 | 一种关键点热力图引导的自监督单目视觉里程计方法 |
TWI823416B (zh) * | 2022-06-08 | 2023-11-21 | 鴻海精密工業股份有限公司 | 深度估計網路之訓練方法、裝置、電子設備及存儲介質 |
CN117710279A (zh) * | 2022-09-06 | 2024-03-15 | 中国科学院自动化研究所 | 内窥镜定位方法、电子设备和非暂态计算机可读存储介质 |
CN116245927B (zh) * | 2023-02-09 | 2024-01-16 | 湖北工业大学 | 一种基于ConvDepth的自监督单目深度估计方法及系统 |
CN116091786B (zh) * | 2023-04-11 | 2023-06-20 | 厦门农芯数字科技有限公司 | 猪只估重的全息体尺自编码方法、系统、设备及存储介质 |
CN116681759B (zh) * | 2023-04-19 | 2024-02-23 | 中国科学院上海微系统与信息技术研究所 | 一种基于自监督视觉惯性里程计的相机位姿估计方法 |
CN117671397B (zh) * | 2023-12-08 | 2024-06-04 | 广东技术师范大学 | 基于双任务学习和位姿图优化的视觉重定位方法及系统 |
CN117392228A (zh) * | 2023-12-12 | 2024-01-12 | 华润数字科技有限公司 | 视觉里程计算方法、装置、电子设备及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018119807A1 (zh) * | 2016-12-29 | 2018-07-05 | 浙江工商大学 | 一种基于卷积神经网络的时空一致性深度图序列的生成方法 |
CN110188598A (zh) * | 2019-04-13 | 2019-08-30 | 大连理工大学 | 一种基于MobileNet-v2的实时手部姿态估计方法 |
CN110490928A (zh) * | 2019-07-05 | 2019-11-22 | 天津大学 | 一种基于深度神经网络的相机姿态估计方法 |
-
2020
- 2020-03-03 CN CN202010139862.8A patent/CN111325797B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018119807A1 (zh) * | 2016-12-29 | 2018-07-05 | 浙江工商大学 | 一种基于卷积神经网络的时空一致性深度图序列的生成方法 |
CN110188598A (zh) * | 2019-04-13 | 2019-08-30 | 大连理工大学 | 一种基于MobileNet-v2的实时手部姿态估计方法 |
CN110490928A (zh) * | 2019-07-05 | 2019-11-22 | 天津大学 | 一种基于深度神经网络的相机姿态估计方法 |
Non-Patent Citations (1)
Title |
---|
基于深度学习的动态场景相机姿态估计方法;路昊等;《高技术通讯》;20200115(第01期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN111325797A (zh) | 2020-06-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111325797B (zh) | 一种基于自监督学习的位姿估计方法 | |
Li et al. | DeepSLAM: A robust monocular SLAM system with unsupervised deep learning | |
US11210803B2 (en) | Method for 3D scene dense reconstruction based on monocular visual slam | |
CN111862126B (zh) | 深度学习与几何算法结合的非合作目标相对位姿估计方法 | |
CN110009674B (zh) | 基于无监督深度学习的单目图像景深实时计算方法 | |
CN113160375B (zh) | 一种基于多任务学习算法的三维重建及相机位姿估计方法 | |
CN110689008A (zh) | 一种面向单目图像的基于三维重建的三维物体检测方法 | |
CN111325794A (zh) | 一种基于深度卷积自编码器的视觉同时定位与地图构建方法 | |
CN102722697B (zh) | 一种无人飞行器视觉自主导引着陆的目标跟踪方法 | |
JP7439153B2 (ja) | 全方位場所認識のためのリフトされたセマンティックグラフ埋め込み | |
CN110298884A (zh) | 一种适于动态环境中单目视觉相机的位姿估计方法 | |
CN113313732A (zh) | 一种基于自监督学习的前视场景深度估计方法 | |
CN111145255B (zh) | 一种结合深度学习和几何优化的位姿计算方法和系统 | |
CN111860651B (zh) | 一种基于单目视觉的移动机器人半稠密地图构建方法 | |
CN112767467B (zh) | 一种基于自监督深度学习的双图深度估计方法 | |
Cao | Applying image registration algorithm combined with CNN model to video image stitching | |
CN115376024A (zh) | 一种输电线路电力配件语义分割方法 | |
CN111553845A (zh) | 一种基于优化的三维重建的快速图像拼接方法 | |
CN114707611B (zh) | 基于图神经网络特征提取与匹配的移动机器人地图构建方法、存储介质及设备 | |
Li et al. | Monocular 3-D Object Detection Based on Depth-Guided Local Convolution for Smart Payment in D2D Systems | |
CN117079072A (zh) | 一种基于深度学习的图像鲁棒构建视觉里程计的方法 | |
CN115272450A (zh) | 一种基于全景分割的目标定位方法 | |
Hirose et al. | Depth360: Self-supervised Learning for Monocular Depth Estimation using Learnable Camera Distortion Model | |
Su et al. | Omnidirectional depth estimation with hierarchical deep network for multi-fisheye navigation systems | |
CN117095033B (zh) | 一种基于图像与几何信息引导的多模态点云配准方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |