CN110335337B - 一种基于端到端半监督生成对抗网络的视觉里程计的方法 - Google Patents
一种基于端到端半监督生成对抗网络的视觉里程计的方法 Download PDFInfo
- Publication number
- CN110335337B CN110335337B CN201910349634.0A CN201910349634A CN110335337B CN 110335337 B CN110335337 B CN 110335337B CN 201910349634 A CN201910349634 A CN 201910349634A CN 110335337 B CN110335337 B CN 110335337B
- Authority
- CN
- China
- Prior art keywords
- feature
- network
- semantic
- matrix
- data
- 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 45
- 230000000007 visual effect Effects 0.000 title claims abstract description 26
- 230000003042 antagnostic effect Effects 0.000 title claims abstract description 6
- 238000012549 training Methods 0.000 claims abstract description 35
- 239000011159 matrix material Substances 0.000 claims abstract description 31
- 238000004364 calculation method Methods 0.000 claims abstract description 14
- 230000006870 function Effects 0.000 claims description 33
- 238000011176 pooling Methods 0.000 claims description 10
- 238000001514 detection method Methods 0.000 claims description 9
- 230000004927 fusion Effects 0.000 claims description 4
- 230000009466 transformation Effects 0.000 claims description 4
- 238000013519 translation Methods 0.000 claims description 4
- 241000208340 Araliaceae Species 0.000 claims description 2
- 235000005035 Panax pseudoginseng ssp. pseudoginseng Nutrition 0.000 claims description 2
- 235000003140 Panax quinquefolius Nutrition 0.000 claims description 2
- 238000010276 construction Methods 0.000 claims description 2
- 235000008434 ginseng Nutrition 0.000 claims description 2
- 230000008447 perception Effects 0.000 claims 1
- 230000001568 sexual effect Effects 0.000 claims 1
- 238000013461 design Methods 0.000 abstract description 2
- 238000000605 extraction Methods 0.000 description 8
- 238000005457 optimization Methods 0.000 description 6
- 238000013507 mapping Methods 0.000 description 5
- 238000013459 approach Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 4
- 238000009826 distribution Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 238000005286 illumination Methods 0.000 description 4
- 230000003068 static effect Effects 0.000 description 4
- 238000013135 deep learning Methods 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 241000282414 Homo sapiens Species 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000000691 measurement method Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000005096 rolling process Methods 0.000 description 1
- ZFMRLFXUPVQYAU-UHFFFAOYSA-N sodium 5-[[4-[4-[(7-amino-1-hydroxy-3-sulfonaphthalen-2-yl)diazenyl]phenyl]phenyl]diazenyl]-2-hydroxybenzoic acid Chemical compound C1=CC(=CC=C1C2=CC=C(C=C2)N=NC3=C(C=C4C=CC(=CC4=C3O)N)S(=O)(=O)O)N=NC5=CC(=C(C=C5)O)C(=O)O.[Na+] ZFMRLFXUPVQYAU-UHFFFAOYSA-N 0.000 description 1
- 238000003860 storage Methods 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 238000013526 transfer learning Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/20—Instruments for performing navigational calculations
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C22/00—Measuring distance traversed on the ground by vehicles, persons, animals or other moving solid bodies, e.g. using odometers, using pedometers
-
- 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
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
- G06T7/246—Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Software Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Computer Graphics (AREA)
- Multimedia (AREA)
- Automation & Control Theory (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Geometry (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Image Analysis (AREA)
Abstract
一种基于端到端半监督生成对抗网络的视觉里程计的方法,涉及视觉里程计算法。构建特征生成网络;构建判别网络;对抗训练;解决动态场景问题。通过SIFT特征算法标注点位置信息和提取特征描述子,再利用随机生成单应性矩阵获得相关帧以及匹配特征点以便生成相应的训练标签。生成网络能够输入原图生成对应的特征点位置和相应的深度描述。判别网络结合语义‑几何一致性损失函数,特征点交叉熵损失函数和判别损失函数与生成网络形成对抗。通过GAN的训练,生成网络能够生成使判别网络无法区分的点位置信息和深度描述,从而避免了手动设计局部特征。
Description
技术领域
本发明涉及视觉里程计算法,尤其是涉及一种基于端到端半监督生成对抗网络的视觉里程计的方法。
背景技术
在过去的几十年中,移动机器人和自动驾驶技术领域引起了全世界研究人员的广泛关注,取得了重大进展和突破。目前,移动机器人能够自主执行复杂的任务,比如波士顿动力学工程公司研发的机器狗已经能模仿人类做出后空翻、开门等动作。自动驾驶技术也取得了重大突破,两年内自动驾驶汽车预计实现量产。不管是移动机器人还是自动驾驶技术都需要在复杂而动态的室内或室外环境中自动导航。为了能够自主导航,导航载体须要在自身周边环境中定位并同时搭建导航地图,研究人员将这种任务称为同时定位与地图构建(SLAM)。近几年,SLAM算法已应用军事、医疗、娱乐和物联网电器等领域。
自主导航中最主要的任务就是定位。最简单的定位方法是使用转速感应器来测量车轮的滚动次数,通过运动模型推测当前时刻的位置,这种方法叫做轮编码器里程计[1]。轮编码器里程计虽然能够结合运动模型和车轮转速感应器估计载体在参考坐标系中的坐标,但是这种测距方法有一定限制。首先,它仅限于能测轮距的地面机器人;其次,由于定位是基于之前估计位置的增量式算法,测量偏差随时间累积并导致载体姿态脱离实际位置;最后,车轮测距方法中有许多误差源,比如车轮在不平坦的地形或光滑的地板上滑动产生的物理误差。
为了克服轮编码器里程计的限制,一些其他定位策略被相继提出,例如使用惯性测量单元(IMU)、GPS、激光测距法和视觉里程计法(VO)。VO是仅使用单个或多个的视觉图像输入来估计本体(例如,装有相机的车辆,人或者机器人)的运动过程。尽管VO不能解决漂移问题,但VO方法的表现明显优于轮编码器里程计技术,而且相机的成本远低于IMU和LASER传感器。VO相比于SLAM主要关注局部一致性,并且旨在递增地估计相机姿态,并且尽可能执行局部优化。图1左部分和右部分分别显示了VO和SLAM的大体系统流程。对于输入的图像序列,VO首先采用特征检测算法对图像进行特征点检测并计算特征描述子,然后利用特征描述匹配特征点,从而对帧间的相机运动进行估计,同时采用后端算法对计算出的相机运动进行局部优化,最后对三维世界进行建图。而视觉SLAM算法则基于VO,通过回环检测技术消除VO的累积漂移误差,并进一步实现全局优化,在此过程中,几何一致性为VO和全局优化算法提供约束信息,从而优化建图的结果。
不管是视觉里程计还是SLAM算法,都可以大体分为如下几个方向:
基于视觉特征的算法:该方法利用RGB颜色或者RGB-D信息等作为输入,通过特征检测提取,特征匹配,几何一致性约束下的对极几何方法恢复相机运动和相机姿态,再通过重投影误差最小化优化几何估量。目前为止,基于视觉特征的方法在VO中占据主流地位。
基于直接法:基于特征点的方法在计算关键点上非常耗时,其次,关键点只有几百个,忽略了大部分像素点,并且在某些低纹理甚至纹理缺失的场景下性能不佳。直接法则可以不需要提取特征点和描述子,直接通过计算图像强度值(如颜色信息)的差异来估算相机运动,使用局部强度梯度和方向来优化。由于直接法直接对图像的强度值进行操作,因此可以节省在特征点检测和描述子提取上的时间复杂度。
基于监督学习的方法:前面两种方法都是通过几何或图像信息来估计相机运动,基于有监督的视觉里程计算法随着深度学习的发展也逐渐流行起来。这种方法能够直接通过有监督学习的方式直接估计相机姿态,但是大多数基于有监督的姿态估计方法受限于训练数据,使之更类似于图像检索而非视觉里程计。目前解决上述问题的做法是直接学习几何特性,如学习深度描述子和特征点,结合几何一致性来估计相机姿态。
无论是何种视觉里程计算法,其最终目的都是利用有限的存储空间和计算资源完成定位和建图等工作。基于特征点法和直接法在算法上已经日益成熟,但两者的缺点也很明显,那就是算法受到人工导向,使用的特征描述子都是人为设计的,难免在计算速度和精度上都有所受限。特别是一些高精度的手工描述子,不能达到实时效果以至于无法在实时系统中使用。基于上述原因,基于有监督学习VO系统的研究越来越受到重视。目前这种有监督学习的方式有以下几个难点:首先,带有大量几何信息标注的数据极难获取,例如想要标注一张图像的关键点,一张图像标注三百个点,那么几十万张图像就是几千万甚至上亿个点,这么耗费人力的标注难度很大。所以,有些研究人员,如Kendall等人[2]利用迁移学习的方法使用Visual SFM[3]对图像位姿进行标注,时间人力成本得到不少的节省,但是精度也受限于Visual SFM算法。其次,如果仅仅只是学习单张图像对应当前参考坐标系下的姿态,那么使用场景将会受到极大的限制。近期,一些研究人员提出了一些解决上述两个缺点的方法。如,利用自监督方式学习深度特征点[4],通过学习几何一致性的方法避免训练数据带来的限制[5]。随着计算机视觉的发展,深度学习和自动导航系统的结合逐渐紧密,基于深度学习的自动导航成为一个值得探索的方向。
参考文献:
[1]Helmick,D.,Cheng,Y.,Clouse,D.,Matthies,L.,Roumeliotis,S.:Pathfollowing using visual odometry for a Mars Rover in high-slipenvironments.In:Proceedings of 2004 IEEE Aerospace.
[2]Kendall A,Grimes M,Cipolla R.PoseNet:A Convolutional Network forReal-Time 6-DOF Camera Relocalization[J].2015,31:2938-2946.
[3]Wu C.Towards Linear-Time Incremental Structure from Motion[C]//International Conference on 3d Vision.IEEE Computer Society,2013:127-134.
[4]Detone D,Malisiewicz T,Rabinovich A.SuperPoint:Self-SupervisedInterest Point Detection and Description[J].2017.7.
[5]Zhou T,Brown M,Snavely N,et al.Unsupervised Learning of Depth andEgo-Motion from Video[J].2017:6612-6619.
发明内容
本发明的目的在于提供一种基于端到端半监督生成对抗网络的视觉里程计的方法。
本发明包括以下步骤:
1)构建特征生成网络;
在步骤1)中,所述构建特征生成网络的具体方法可为:在深度特征点检测和描述子提取方法中,将特征点和描述子分开考虑,利用生成网络同时生成特征点和深度描述子,并能在速度上优于SIFT算子,特征生成网络分为特征点检测器和深度特征描述子提取两个功能,将RGB图像作为输入,通过编码器和解码器产生像素级别的特征点概率图和深度特征描述子;所述特征点检测器设计时,考虑计算效率和实时性,因此网络前向计算可以在复杂的SLAM系统上运行,特别是对于在特征提取和匹配上计算资源受限的系统;所述特征点检测器是基于最大化像素级别特征点的概率,与Sift特征描述子相同,特征生成网络会同时生成128维度的深度特征。
2)构建判别网络;
在步骤2)中,所述构建判别网络的具体方法可为:原始的判别网络不需要人工设计复杂的损失函数就能生成与训练数据分布一致的数据,为了适用于复杂的视觉里程计任务,本发明在传统的对抗网络之外,加入特征点位置损失函数和语义几何一致性损失函数,另外加入的特征点位置损失函数和语义几何一致性损失函数有不同的作用,特征点位置损失函数为了使生成网络拟合特征点分布,而语义几何一致性损失函数是为了使得估计的描述图不仅符合语义限制而且遵循基本的几何变换。
3)对抗训练;
在步骤3)中,所述对抗训练的具体方法可为:虽然GAN能够拟合语义几何一致性,但是其在实际训练中较为困难,这就需要设置好训练参数和科学的损失函数,对抗训练主要通过优化多任务损失函数进行,所述损失函数是优化判别网络的多分类交叉熵损失函数、判别网络的语义几何一致性约束以及判别虚假和真实数据的二元交叉熵损失三项损失的加权和损失,通过基于动量的小批量梯度下降进行,批量大小设置为10,初始学习率设置为10-4,训练在30K迭代75个周期后停止。
4)解决动态场景问题。
在步骤4)中,所述解决动态场景问题的具体方法可为:传统的即时定位和地图构建(SLAM)系统是假设相机或处于静态环境,所以通过相邻帧之间的静态几何关系可以求出相机相对于当前场景的运动,动态场景包括移动的物体(Moving Objects)、环境中的光照变化(Illumination Change)和相机被遮挡(Occlusion)等,考虑怎样解决动态真实场景下的SLAM系统,所述动态真实场景包括高速公路和校园等,若在训练过程中存在动态因素,则运动物体的点云在估计相机姿态时作为噪点,解决动态场景运动估计的方法包括通过RANSAC算法对少量的动态物体点云剔除、利用动态物体跟踪算法判别图像中的动态区域以便剔除运动物体的三维点、利用多传感器融合信息减少运动物体带来的运动估计误差。
本发明将生成对抗网络引入视觉里程计的任务中,通过半监督学习的方式同时生成轻量级的深度特征描述子和特征点,并在几何一致性匹配中加入语义信息,是一种半监督的端到端语义几何一致性生成对抗网络在视觉里程计中的应用。首先,将生成对抗网络引入视觉里程计中并提取深度特征点和深度特征描述子,同时加入语义信息约束语义几何一致性,该方法相比于快速的二值特征,不仅在特征的重复率和特征点匹配精确度上有所提升,同时速度也与二值特征方法相当;其次,与以往的全监督和无监督的深度特征不同,本方法是第一个利用半监督方式同时学习深度特征描述子和特征点的语义几何一致性视觉里程计,简称为sGAN-VO。
本发明通过SIFT特征算法标注点位置信息和提取特征描述子,再利用随机生成单应性矩阵获得相关帧以及匹配特征点以便生成相应的训练标签。生成网络能够输入原图生成对应的特征点位置(特征图)和相应的深度描述。判别网络结合语义-几何一致性损失函数,特征点交叉熵损失函数和判别损失函数与生成网络形成对抗。通过GAN的训练,生成网络能够生成使判别网络无法区分的点位置信息和深度描述,从而避免了手动设计局部特征。
附图说明
图1为现有的VO(左)与SLAM算法(右)的系统框架。
图2为本发明的系统概述。
图3为本发明中特征生成网络前向结构(包括编码器与解码器两部分)。
图4为本发明的判别网络的前向结构。
具体实施方式
以下实施例将结合附图对本发明作进一步的说明。
本发明实施例包括以下步骤:
1)构建特征生成网络,具体方法为:在深度特征点检测和描述子提取方法中,将特征点和描述子分开考虑,利用生成网络同时生成特征点和深度描述子,并能在速度上优于SIFT算子,特征生成网络分为特征点检测器和深度特征描述子提取两个功能,将RGB图像作为输入,通过编码器和解码器产生像素级别的特征点概率图和深度特征描述子;所述特征点检测器设计时,考虑计算效率和实时性,因此网络前向计算可以在复杂的SLAM系统上运行,特别是对于在特征提取和匹配上计算资源受限的系统;所述特征点检测器是基于最大化像素级别特征点的概率,与Sift特征描述子相同,特征生成网络会同时生成128维度的深度特征。
2)构建判别网络,具体方法为:原始的判别网络不需要人工设计复杂的损失函数就能生成与训练数据分布一致的数据,为了适用于复杂的视觉里程计任务,本发明在传统的对抗网络之外,加入特征点位置损失函数和语义几何一致性损失函数,另外加入的特征点位置损失函数和语义几何一致性损失函数有不同的作用,特征点位置损失函数为了使生成网络拟合特征点分布,而语义几何一致性损失函数是为了使得估计的描述图不仅符合语义限制而且遵循基本的几何变换。
3)对抗训练,具体方法为:虽然GAN能够拟合语义几何一致性,但是其在实际训练中较为困难,这就需要设置好训练参数和科学的损失函数,对抗训练主要通过优化多任务损失函数进行,所述损失函数是优化判别网络的多分类交叉熵损失函数、判别网络的语义几何一致性约束以及判别虚假和真实数据的二元交叉熵损失三项损失的加权和损失,通过基于动量的小批量梯度下降进行,批量大小设置为10,初始学习率设置为10-4,训练在30K迭代75个周期后停止。
4)解决动态场景问题,具体方法为:传统的即时定位和地图构建(SLAM)系统是假设相机或处于静态环境,所以通过相邻帧之间的静态几何关系可以求出相机相对于当前场景的运动,动态场景包括移动的物体(Moving Objects)、环境中的光照变化(IlluminationChange)和相机被遮挡(Occlusion)等,考虑怎样解决动态真实场景下的SLAM系统,所述动态真实场景包括高速公路和校园等,若在训练过程中存在动态因素,则运动物体的点云在估计相机姿态时作为噪点,解决动态场景运动估计的方法包括通过RANSAC算法对少量的动态物体点云剔除、利用动态物体跟踪算法判别图像中的动态区域以便剔除运动物体的三维点、利用多传感器融合信息减少运动物体带来的运动估计误差。
以下给出具体实施例。
一、特征生成网络
图3显示了特征生成网络的结构,特征检测器网络涉及类似VGG的编码器-解码器对,其中空间分辨率通过池化层(2×2)或跨步卷积获得小尺度分辨率,然后使用解码器进行上采样,生成类似SIFT描述子的128维通道的中间特征描述图。在中间特征描述图之后,网络分裂为两个任务:一个用于通过卷积层和Softmax层进行特征点拟合计算,另一个通过卷积层生成深度特征描述图。编码器网络一共有6层卷积,输出大小分别为64-64-128-128-128-128。解码器分为特征点检测器和描述子提取器。其中,特征点检测器通过3×3卷积和反池化层解码深度特征,输出大小分别为128-128-64-64,之后将特征图reshape为原图大小。描述子提取器也是通过3×3卷积和反池化层解码,输出大小为128-128-128-128,最后通过插值方法将特征图升维到原图大小。特征生成网络的参数更新来自判别网络的反向传播而不是直接来自训练数据,且大部分网络参数在两项任务之间共享。在预测时,使用FLANN(Fast Library for Approximate Nearest Neighbors,快速最近邻搜索包)[42]和sGAN特征描述子计算匹配点。FLANN是一个对大数据集和高维特征进行最近邻搜索的算法集合,相比于其他近邻搜索,其速度上的优势较为明显,它优化了高维特征和大数据量之间近邻搜索的复杂度。单应性矩阵H是通过直接线性变换来估计的,该直接线性变换是用于求解涉及如下等式所示的尺度的最小二乘问题的算法结构:
其中,P'和P是匹配点,是叉乘操作。相机标定矩阵由KITTI数据集提供,K和K'分别表示参考相机中心C和C'的相机内参矩阵。相关图像的相机中心点C和C'的平移和旋转由和表示。假定I是3×3的单位矩阵。投影矩阵变成:
P=K[I|0]
最终单应性矩阵变为:
其中,0是3×1零矢量,h是摄像机的高度。为了得到可以提交给KITTI平台的结果,对得到的单应性矩阵进行分解,得到相应的旋转矩阵R和平移矩阵t。
二、判别网络的构建
使用RefineNet提取的语义信息作为判别语义一致性的标签。真实数据的特征描述子是由归一化后的Sift特征描述子生成的128×h×w维矩阵,用r表示,其中h和w是输入图像的度高和宽度,并且r中非特征点的通道被置为零。Sift特征点在输入图像上的坐标作为真实数据,记为y。通过使用OpenCV的开源算法利用Sift特征匹配计算单应性矩阵标签H'。OpenCV是一个基于BSD许可(开源)发行的跨平台计算机视觉库,可以在多种操作系统上运行,轻量且高效地实现了图像处理和计算机视觉方面的很多通用算法。
给定真实数据或虚假数据,判别网络能以有效的方式将梯度传播回所有层。判别网络的训练如图2左上角所示,将判别网络分为两个判别器,判别器D1的结构如图2的标号3所示,它的主要任务是区分特征检测器网络的输出(虚假数据)与真实数据。为了促进几何-语义一致性,在D1的网络结构中,不仅将图像特征图与深度描述相结合,而且在判别网络中增加语义特征图。几何语义一致性从狭义角度来说,是语义点的某个投影在参考图像中具有相同的语义。从广义角度来看,语义图,图像深度特征和深度特征描述子也是具有这种一致性。如图4,将介绍判别网络中对抗部分的网络结构。判别网络中将原始图像、语义图以及特征描述子(真实数据或者虚假数据)作为输入。其中,每个语义图有23个类别,即语义输入的维度为23×w×h。语义特征映射的空间分辨率通过卷积和池化层来降低,输出大小为46-46-46-46-23-23。原始图像和特征描述子(维度为128×w×h)也将通过卷积层和池化层降维,得到的输出维度都为128×60×80。然后将语义特征图,图像深度特征图及其深度特征描述连接成一个279×w×h的合成特征图,通过全卷积后成为1×279维度的特征。最终,Softmax层输出为真实数据的概率。这样,当真实数据(由Sift生成的输入数据)或虚假数据输入到判别网络时,强调虚拟数据应该与原始图像深度特征图及其语义映射正确配对,否则判别网络很容易判断它是假数据。
三、对抗训练的实现
将损失定义为:
ΕAdv(r,x)=λ1Ε(LOG(D(r1))+LOG(D(r2)))
+λ2Ε(LOG(1-D(G(x1)))+LOG(1-D(G(x2)))).
其中,G和D分别表示特征生成网络和判别网络的参数。假定作为生成的特征点,其中x表示特征检测器网络的输入,G(x)表示生成的深度特征描述,即虚假数据。第一个损失项是判别器D2中的多类别的交叉熵损失函数,它鼓励特征检测器模型预测每个特征点所在的真正位置,其中表示由特征检测器网络生成的虚假特征点。第二个损失项vh(S,H)是判别器D2中的语义几何一致性标准,p是第一帧的特征点,Hp是第二帧中的相应投影点。同样,是通过单应性标签投影的对应点。N是第一帧中的特征点的数量。公式如下:
其中,S()是像素级别的语义标签,在第三个损失项中,LOG()是一个二元交叉熵函数,它被用作判别虚假和真实数据的依据,参考真实特征描述是r1和r2,虚假深度特征描述是x1,x2。λ1和λ2是折衷判别器D1和判别器D2的超参。EAdv(r,x)判别器D1中的对抗损失函数,该对象函数应用于特征检测器和判别器的极小极大对抗训练。
对于特征生成器模型的训练,给定虚假数据,相关的特征探测器模型的训练使融合判别模型的二元交叉熵损失最小化,同时降低深度特征描述的多类交叉熵合损失和语义几何损失,鼓励特征检测器模型产生类似SIFT-的深度特征点描述,易于混淆判别模型的判断,公式如下:
对于判别模型的训练,等价于最大化如下方程中的二元分类损失。换句话说,判别网络经过训练可以轻松区分虚拟数据和真实数据。
这种半监督的学习方法不仅仅是训练一种低配版的SIFT深度特征,而是通过加入语义监督信息和动态权重监督信息对几何关系进一步约束,在SIFT之上增加了语义以及动态区域预测得性能。换句话说,sGAN-VO是一种轻量级的鲁棒性语义感知深度特征。
四、解决动态场景问题
几何一致性公式更新为:
Claims (1)
1.一种基于端到端半监督生成对抗网络的视觉里程计的方法,其特征在于包括以下步骤:
1)特征生成网络:
特征检测器网络涉及编码器-解码器对,其中空间分辨率通过池化层2×2或跨步卷积获得小尺度分辨率,使用解码器进行上采样,生成128维通道的中间特征描述图;在中间特征描述图之后,网络分裂为两个任务:一个用于通过卷积层和Softmax层进行特征点拟合计算,另一个通过卷积层生成深度特征描述图;编码器网络一共有6层卷积,输出大小分别为64-64-128-128-128-128;解码器分为特征点检测器和描述子提取器;其中,特征点检测器通过3×3卷积和反池化层解码深度特征,输出大小分别为128-128-64-64,之后将特征图reshape为原图大小;描述子提取器也是通过3×3卷积和反池化层解码,输出大小为128-128-128-128,最后通过插值方法将特征图升维到原图大小;特征生成网络的参数更新来自判别网络的反向传播而不是直接来自训练数据,且网络参数在两项任务之间共享;在预测时,使用FLANN和sGAN特征描述子计算匹配点;单应性矩阵H是通过直接线性变换来计算的,该直接线性变换是用于求解涉及如下等式所示的尺度的最小二乘问题的算法结构:
其中,P'和P是匹配点,是叉乘操作;相机标定矩阵由KITTI数据集提供,K和K'分别表示参考相机中心C和C'的相机内参矩阵;相关图像的相机中心点C和C'的平移和旋转由和表示;假定I是3×3的单位矩阵,投影矩阵变成:
P=K[I|o]
最终单应性矩阵变为:
其中,o是3×1零矢量,h是摄像机的高度;为了得到提交给KITTI平台的结果,对得到的单应性矩阵进行分解,得到相应的旋转矩阵R和平移矩阵t;
2)判别网络的构建:
使用RefineNet提取的语义信息作为判别语义一致性的标签,真实数据的特征描述子是由归一化后的Sift特征描述子生成的128×h×w维矩阵,用r表示,其中h和w是输入图像的度高和宽度,并且r中非特征点的通道被置为零,Sift特征点在输入图像上的坐标作为真实数据,记为y,通过使用OpenCV的开源算法利用Sift特征匹配计算单应性矩阵标签H';
给定真实数据或虚假数据,判别网络能将梯度传播回所有层;将判别网络分为两个判别器,判别器D1的主要任务是区分特征检测器网络的输出虚假数据与真实数据;为了促进几何-语义一致性,在D1的网络结构中,不仅将图像特征图与深度描述相结合,而且在判别网络中增加语义特征图;判别网络中将原始图像、语义图以及特征描述子作为输入;其中,每个语义图有23个类别,即语义输入的维度为23×w×h;语义特征映射的空间分辨率通过卷积和池化层来降低,输出大小为46-46-46-46-23-23;原始图像和特征描述子也将通过卷积层和池化层降维,得到的输出维度都为128×60×80;然后将语义特征图,图像深度特征图及其深度特征描述连接成一个279×w×h的合成特征图,通过全卷积后成为1×279维度的特征;最终,Softmax层输出为真实数据的概率;
3)对抗训练的实现:
将损失定义为:
EAdv(r,x)=λ1E(LOG(D(r1))+LOG(D(r2)))+λ2E(LOG(1-D(G(x1)))+LOG(1-D(G(x2))))
其中,G和D分别表示特征生成网络和判别网络的参数;假定作为生成的特征点,其中x表示特征检测器网络的输入,G(x)表示生成的深度特征描述,即虚假数据;第一个损失项是判别器D2中的多类别的交叉熵损失函数,它鼓励特征检测器模型预测每个特征点所在的真正位置,其中表示由特征检测器网络生成的虚假特征点;第二个损失项vh(S,H)是判别器D2中的语义几何一致性标准,p是第一帧的特征点,Hp是第二帧中的相应投影点;同样,是通过单应性标签投影的对应点,N是第一帧中的特征点的数量,公式如下:
其中,S()是像素级别的语义标签,在第三个损失项中,LOG()是一个二元交叉熵函数,它被用作判别虚假和真实数据的依据,参考真实特征描述是r1和r2,虚假深度特征描述是x1,x2;λ1和λ2是折衷判别器D1和判别器D2的超参;EAdv(r,x)判别器D1中的对抗损失函数,该对象函数应用于特征检测器和判别器的极小极大对抗训练;
对于特征生成器模型的训练,给定虚假数据,特征探测器模型的训练使融合判别模型的二元交叉熵损失最小化,同时降低深度特征描述的多类交叉熵合损失和语义几何损失,鼓励特征检测器模型产生类似SIFT-的深度特征点描述,易于混淆判别模型的判断,公式如下:
对于判别模型的训练,等价于最大化如下方程中的二元分类损失;判别网络经过训练轻松区分虚拟数据和真实数据;
通过加入语义监督信息和动态权重监督信息对几何关系进一步约束,在SIFT之上增加语义以及动态区域预测得性能,sGAN-VO是一种轻量级的鲁棒性语义感知深度特征;
4)解决动态场景问题:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910349634.0A CN110335337B (zh) | 2019-04-28 | 2019-04-28 | 一种基于端到端半监督生成对抗网络的视觉里程计的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910349634.0A CN110335337B (zh) | 2019-04-28 | 2019-04-28 | 一种基于端到端半监督生成对抗网络的视觉里程计的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110335337A CN110335337A (zh) | 2019-10-15 |
CN110335337B true CN110335337B (zh) | 2021-11-05 |
Family
ID=68139902
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910349634.0A Active CN110335337B (zh) | 2019-04-28 | 2019-04-28 | 一种基于端到端半监督生成对抗网络的视觉里程计的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110335337B (zh) |
Families Citing this family (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111368624A (zh) * | 2019-10-28 | 2020-07-03 | 北京影谱科技股份有限公司 | 基于生成对抗网络的回环检测方法和装置 |
CN110910447B (zh) * | 2019-10-31 | 2023-06-06 | 北京工业大学 | 一种基于动静态场景分离的视觉里程计方法 |
US11900626B2 (en) | 2020-01-31 | 2024-02-13 | Toyota Research Institute, Inc. | Self-supervised 3D keypoint learning for ego-motion estimation |
CN111325794B (zh) * | 2020-02-23 | 2023-05-26 | 哈尔滨工业大学 | 一种基于深度卷积自编码器的视觉同时定位与地图构建方法 |
CN111311588B (zh) * | 2020-02-28 | 2024-01-05 | 浙江商汤科技开发有限公司 | 重定位方法及装置、电子设备和存储介质 |
CN111462137B (zh) * | 2020-04-02 | 2023-08-08 | 中科人工智能创新技术研究院(青岛)有限公司 | 一种基于知识蒸馏和语义融合的点云场景分割方法 |
US11830253B2 (en) | 2020-04-14 | 2023-11-28 | Toyota Research Institute, Inc. | Semantically aware keypoint matching |
CN111523422B (zh) * | 2020-04-15 | 2023-10-10 | 北京华捷艾米科技有限公司 | 一种关键点检测模型训练方法、关键点检测方法和装置 |
CN111862289B (zh) * | 2020-08-04 | 2022-04-19 | 天津大学 | 一种基于gan网络的点云上采样方法 |
CN112102399B (zh) * | 2020-09-11 | 2022-07-19 | 成都理工大学 | 一种基于生成式对抗网络的视觉里程计算法 |
CN112164100B (zh) * | 2020-09-25 | 2023-12-12 | 闽江学院 | 一种基于图卷积神经网络的图像配准方法 |
CN112150531B (zh) * | 2020-09-29 | 2022-12-09 | 西北工业大学 | 一种鲁棒的自监督学习单帧图像深度估计方法 |
CN112418395B (zh) * | 2020-11-17 | 2022-08-26 | 吉林大学 | 一种基于生成对抗网络的气体传感器阵列漂移补偿方法 |
CN112365582B (zh) * | 2020-11-17 | 2022-08-16 | 电子科技大学 | 一种对抗点云生成方法、存储介质和终端 |
CN112967379B (zh) * | 2021-03-03 | 2022-04-22 | 西北工业大学深圳研究院 | 一种基于感知一致生成对抗网络的三维医学图像重建方法 |
CN113156957B (zh) * | 2021-04-27 | 2024-06-04 | 东莞理工学院 | 自主移动机器人自监督学习及导航方法 |
CN113379839B (zh) * | 2021-05-25 | 2022-04-29 | 武汉大学 | 一种基于事件相机系统的地面视角单目视觉里程计方法 |
CN113223007A (zh) * | 2021-06-28 | 2021-08-06 | 浙江华睿科技股份有限公司 | 视觉里程计的实现方法、装置及电子设备 |
CN113313771B (zh) * | 2021-07-19 | 2021-10-12 | 山东捷瑞数字科技股份有限公司 | 一种工业复杂设备的全方位测量方法 |
CN113688842B (zh) * | 2021-08-05 | 2022-04-29 | 北京科技大学 | 一种基于解耦合的局部图像特征提取方法 |
CN115018056B (zh) * | 2022-06-17 | 2024-09-06 | 华中科技大学 | 一种用于自然场景图像匹配的局部描述子网络的训练方法 |
CN116703895B (zh) * | 2023-08-02 | 2023-11-21 | 杭州灵西机器人智能科技有限公司 | 基于生成对抗网络的小样本3d视觉检测方法及其系统 |
CN117455994B (zh) * | 2023-11-07 | 2024-06-14 | 暨南大学 | 一种相机位姿估计方法、系统、电子设备及可读介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106658023A (zh) * | 2016-12-21 | 2017-05-10 | 山东大学 | 一种基于深度学习的端到端视觉里程计及方法 |
CN109559287A (zh) * | 2018-11-20 | 2019-04-02 | 北京工业大学 | 一种基于DenseNet生成对抗网络的语义图像修复方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104850541B (zh) * | 2015-06-04 | 2016-10-26 | 武汉大学 | 一种基于位置语义网的语义位置转换方法 |
US20190079536A1 (en) * | 2017-09-13 | 2019-03-14 | TuSimple | Training and testing of a neural network system for deep odometry assisted by static scene optical flow |
-
2019
- 2019-04-28 CN CN201910349634.0A patent/CN110335337B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106658023A (zh) * | 2016-12-21 | 2017-05-10 | 山东大学 | 一种基于深度学习的端到端视觉里程计及方法 |
CN109559287A (zh) * | 2018-11-20 | 2019-04-02 | 北京工业大学 | 一种基于DenseNet生成对抗网络的语义图像修复方法 |
Also Published As
Publication number | Publication date |
---|---|
CN110335337A (zh) | 2019-10-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110335337B (zh) | 一种基于端到端半监督生成对抗网络的视觉里程计的方法 | |
Sarlin et al. | Back to the feature: Learning robust camera localization from pixels to pose | |
Zhou et al. | To learn or not to learn: Visual localization from essential matrices | |
Behl et al. | Pointflownet: Learning representations for rigid motion estimation from point clouds | |
Dong et al. | Towards real-time monocular depth estimation for robotics: A survey | |
Chen et al. | Milestones in autonomous driving and intelligent vehicles—part ii: Perception and planning | |
Ranft et al. | The role of machine vision for intelligent vehicles | |
Henry et al. | RGB-D mapping: Using Kinect-style depth cameras for dense 3D modeling of indoor environments | |
Li et al. | Dual-view 3d object recognition and detection via lidar point cloud and camera image | |
Cui et al. | 3D semantic map construction using improved ORB-SLAM2 for mobile robot in edge computing environment | |
CN102722697B (zh) | 一种无人飞行器视觉自主导引着陆的目标跟踪方法 | |
Chen et al. | 3d point cloud processing and learning for autonomous driving | |
US12008762B2 (en) | Systems and methods for generating a road surface semantic segmentation map from a sequence of point clouds | |
Vaquero et al. | Dual-branch CNNs for vehicle detection and tracking on LiDAR data | |
Yin et al. | Automerge: A framework for map assembling and smoothing in city-scale environments | |
Yu et al. | Accurate and robust visual localization system in large-scale appearance-changing environments | |
US12079970B2 (en) | Methods and systems for semantic scene completion for sparse 3D data | |
Alcantarilla et al. | Visibility learning in large-scale urban environment | |
Wang et al. | LiDAR-SLAM loop closure detection based on multi-scale point cloud feature transformer | |
CN117689887A (zh) | 基于点云分割的工件抓取方法、装置、设备及存储介质 | |
CN113160315A (zh) | 一种基于对偶二次曲面数学模型的语义环境地图表征方法 | |
CN116883961A (zh) | 一种目标感知方法以及装置 | |
Chen et al. | Towards bio-inspired place recognition over multiple spatial scales | |
Cadena et al. | Recursive inference for prediction of objects in urban environments | |
Tang et al. | TransCNNLoc: End-to-end pixel-level learning for 2D-to-3D pose estimation in dynamic indoor scenes |
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 |