CN114608558A - 基于特征匹配网络的slam方法、系统、设备及存储介质 - Google Patents
基于特征匹配网络的slam方法、系统、设备及存储介质 Download PDFInfo
- Publication number
- CN114608558A CN114608558A CN202210228298.6A CN202210228298A CN114608558A CN 114608558 A CN114608558 A CN 114608558A CN 202210228298 A CN202210228298 A CN 202210228298A CN 114608558 A CN114608558 A CN 114608558A
- Authority
- CN
- China
- Prior art keywords
- matching
- image
- point
- slam
- coordinate system
- 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.)
- Pending
Links
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/38—Electronic maps specially adapted for navigation; Updating thereof
- G01C21/3804—Creation or updating of map data
-
- 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
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/38—Electronic maps specially adapted for navigation; Updating thereof
- G01C21/3804—Creation or updating of map data
- G01C21/3833—Creation or updating of map data characterised by the source of data
- G01C21/3837—Data obtained from a single source
-
- 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
- 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
- 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/10—Image acquisition modality
- G06T2207/10024—Color image
-
- 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/10028—Range image; Depth image; 3D point clouds
-
- 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]
Landscapes
- Engineering & Computer Science (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Theoretical Computer Science (AREA)
- Biophysics (AREA)
- General Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Image Analysis (AREA)
Abstract
本发明公开了一种基于特征匹配网络的SLAM方法、系统、设备及存储介质,通过SLAM的运行模式训练原本针对匹配任务的特征提取网络,将训练完毕的基于匹配任务的特征提取网络嵌入到SLAM系统框架中,优化原有SLAM系统框架,提高了所设计的SLAM系统的鲁棒性,使其能够很好的应对各类SLAM场景的挑战,保证了定位和建图精度;此外,利用训练完毕的基于匹配任务的特征提取网络从单目相机采集的图像中进行特征点提取,由于只需要单目相机即可完成,从而降低智能车的成本。上述方案整体成本低,不需要对环境及车辆自身进行改造,可移植性强。
Description
技术领域
本发明涉及智能驾驶技术以及车辆领域,尤其涉及一种基于特征匹配网络的SLAM方法、系统、设备及存储介质。
背景技术
随着科技的发展,车辆、机器人等科技产品与人们生活的关系越来越密切。自动驾驶技术也愈发成熟,现如今,自动驾驶的主要挑战来源于复杂场景,如光照变换、快速旋转时,如何使车辆保证良好的定位和导航性能。因而,复杂场景下的SLAM(SimultaneousLocalization And Mapping,即时定位与地图构建)系统成为了SLAM领域的重要研究方向。而此基础就是设计更加鲁棒和稳定的特征。常用的手工特征在某些特定场景下具有优势,但仍存在不足之处。ORB(Oriented FAST and Rotated BEIEF)特征运行速度极快,但缺乏旋转和尺度不变性。SIFT(Scale Invariant Feature Transform)特征对各种复杂场景表现出令人满意的能力,但很难满足实时性要求。近年来出现了大量性能优于手工特征的特征提取网络,但这些网络大多针对图像匹配任务而设计,简单地将这些特征提取网络应用于SLAM系统通常表现出一般的性能。具体来说,与针对2D-2D匹配的匹配任务不同,SLAM系统需要同时完成建图工作,SLAM系统通常使用地图点(3D点)和图像点(2D点)的匹配,然后通过优化重投影误差来估计姿态。所以,基于特征的SLAM系统的需求与匹配任务有着本质区别,导致一些基于深度学习的视觉特征不能完全有效地适应SLAM系统。因而,设计基于特征匹配网络的SLAM方法可以有效运用深度学习领域的先进成果,大幅度助力自动驾驶技术的发展。另一方面,如果自动驾驶技术可以使用成本更低的单目相机完成,将极大程度上缩减技术成本。然而,随之带来的问题是图像质量下降,导致特征提取困难。
目前主要存在如下相关的技术方案:
1)专利《基于光流跟踪和特征匹配的回环检测及视觉SLAM方法》(公开号:CN113888603A)利用双目相机,使用光流法采集点特征,LSD算法提取线特征,取得了比ORB-SLAM2更好的效果。但是,双目相机成本较高。
2)专利《一种基于RGBD相机的弱纹理及动态场景视觉SLAM定位方法》(公开号:CN113379842A)通过RGBD相机来感知环境,在弱纹理及动态场景中获得了很好的效果,但是RGB-D相机普遍成本较高,并且该方案没有涉及大视野变换等挑战场景。
3)专利《一种基于单目视觉实现SLAM定位的方法及相关装置》(公开号:CN111928842A)通过brisk算子提取至少两帧图片中每一帧图片的特征点,然后对相邻图片做特征点匹配,进一步实现后续的定位及建图工作,但brisk算子缺乏良好的旋转不变性和尺度不变性,在复杂场景下容易出现前后两帧图像无法匹配,致使跟踪失败的情况。
综上,目前方案主要存在的问题如下:
1)如何在降低传感器成本的同时保证高质量的定位精度。
2)复杂场景下特征点匹配困难,容易出现跟踪失败的现象。
3)如何有效的应用特征提取网络来保证高质量的定位精度。
发明内容
本发明的目的是提供一种基于特征匹配网络的SLAM方法、系统、设备及存储介质,充分考虑成本与精度的要求,具有鲁棒性强、成本低、精度高的优点。
本发明的目的是通过以下技术方案实现的:
一种基于特征匹配网络的SLAM方法,包括:
利用深度学习方法,针对基于匹配任务的特征提取网络,通过SLAM的运行模式进行训练;
将训练得到的基于匹配任务的特征提取网络嵌入至SLAM系统框架中;
通过训练得到的基于匹配任务的特征提取网络对单目相机拍摄的图像进行特征点的提取,并对提取的相邻两帧图像的对应的特征点进行匹配,对匹配的特征点对求解相应的旋转矩阵和平移向量,用于对车辆的定位,并通过三角化求得物体点在世界坐标系下的位置,完成建图任务。
一种基于特征匹配网络的SLAM系统,该系统包括:
网络训练单元,用于利用深度学习方法,针对基于匹配任务的特征提取网络,通过SLAM的运行模式进行训练;
SLAM系统框架更新单元,用于将训练得到的基于匹配任务的特征提取网络嵌入至SLAM系统框架中;
定位与建图单元,用于通过训练得到的基于匹配任务的特征提取网络对单目相机拍摄的图像进行特征点的提取,并对提取的相邻两帧图像的对应的特征点进行匹配,对匹配的特征点对求解相应的旋转矩阵和平移向量,用于对车辆的定位,并通过三角化求得物体点在世界坐标系下的位置,完成建图任务。
一种处理设备,包括:一个或多个处理器;存储器,用于存储一个或多个程序;
其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现前述的方法。
一种可读存储介质,存储有计算机程序,当计算机程序被处理器执行时实现前述的方法。
由上述本发明提供的技术方案可以看出,通过SLAM的运行模式训练原本针对匹配任务的特征提取网络,将训练完毕的基于匹配任务的特征提取网络嵌入到SLAM系统框架中,优化原有SLAM系统框架,提高了所设计的SLAM系统的鲁棒性,使其能够很好的应对各类SLAM场景的挑战,保证了定位和建图精度;此外,利用训练完毕的基于匹配任务的特征提取网络从单目相机采集的图像中进行特征点提取,由于只需要单目相机即可完成,从而降低智能车的成本。上述方案整体成本低,不需要对环境及车辆自身进行改造,可移植性强。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他附图。
图1为本发明实施例提供的一种基于特征匹配网络的SLAM方法的流程图;
图2为本发明实施例提供的基于匹配任务的特征提取网络的训练流程图;
图3为本发明实施例提供的SLAM系统框架的工作流程图;
图4为本发明实施例提供的在匹配任务数据集Hptaches数据集上的测试结果示意图;
图5为本发明实施例提供的在室外数据集KITTI数据集上的测试结果示意图;
图6为本发明实施例提供的在室内数据集Euroc数据集上的测试结果示意图;
图7为本发明实施例提供的一种基于特征匹配网络的SLAM系统的示意图
图8为本发明实施例提供的一种处理设备的示意图。
具体实施方式
下面结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明的保护范围。
首先对本文中可能使用的术语进行如下说明:
术语“包括”、“包含”、“含有”、“具有”或其它类似语义的描述,应被解释为非排它性的包括。例如:包括某技术特征要素(如原料、组分、成分、载体、剂型、材料、尺寸、零件、部件、机构、装置、步骤、工序、方法、反应条件、加工条件、参数、算法、信号、数据、产品或制品等),应被解释为不仅包括明确列出的某技术特征要素,还可以包括未明确列出的本领域公知的其它技术特征要素。
下面对本发明所提供的一种基于特征匹配网络的SLAM方法、系统、设备及存储介质进行详细描述。本发明实施例中未作详细描述的内容属于本领域专业技术人员公知的现有技术。本发明实施例中未注明具体条件者,按照本领域常规条件或制造商建议的条件进行。
实施例一
由于图像匹配任务和基于特征的SLAM系统均依靠特征点完成像素关联和相机位姿估计,为无人驾驶车辆的感知和融合提供了重要的支持和基础。为克服特征跟踪失败问题、减小匹配任务和SLAM系统之间的差距,本发明实施例提供一种基于特征匹配网络的SLAM方法,通过参考SLAM系统的运行模式涉及了一种有效的训练策略来训练基于匹配任务的特征提取网络,使得训练后的基于匹配任务的特征提取网络能够更好地适应SLAM系统,从而助力自动驾驶技术。如图1所示,为本发明实施例提供的一种基于特征匹配网络的SLAM方法的流程图,其主要包括如下步骤:
步骤1、利用深度学习方法,针对基于匹配任务的特征提取网络,通过SLAM的运行模式进行训练。
如图2所示,本步骤的优选实施方式如下:
1)构建基于匹配任务的特征提取网络,并选取包含RGB图像与对应深度图像的训练数据集。
示例性的,本发明实施例中,基于匹配任务的特征提取网络可以采用孪生网络,具体可以使用SuperPoint网络,训练完毕后称为Rein-SuperPoint网路。
示例性的,可以利用TUM数据集中的fr2_pioneer_slam序列作为训练数据。
2)对于训练数据集中的每一帧RGB图像,随机利用相邻图像构成一个图像匹配对;一个图像匹配对中的两个图像称为第一图像与第二图像。
本发明实施例中,对于训练数据集中的第k帧RGB图像,随机从之后的三帧中选取第v帧RGB图像,构成一个图像匹配对;其中,v∈{k+1,k+2,k+3};将第k帧RGB图像称为第一图像,将第v帧RGB图像称为第二图像。
示例性的,可以选取1500个图像匹配对,并且打乱这些图像匹配对的顺序。
3)对于每一个图像匹配对,输入至基于匹配任务的特征提取网络后获得热图对,记为H1与H2;在热图H1与H2上分别随机选取n个关键点;对热图H1和H2上的关键点进行最近邻匹配得到初步点匹配结果M,并按照设定比例随机在初步匹配结果M选取点匹配对,所选取的点匹配对集合记为Ms。
如图2所示,采用孪生网络结构,每一个图像匹配对中的单幅图像分别输入至一个基于匹配任务的特征提取网络;两个基于匹配任务的特征提取网络共享网络参数。
示例性的,可以设置n=1000,设定比例可以为50%,即选择一半的点匹配对。
4)对点匹配对集合Ms中的每个点匹配对(pi,p′j),其中pi∈H1,p′j∈H2,pi=(xi,yi),p′j=(x′j,y′j),表示pi与p′j分别为热图H1与H2上的关键点,(xi,yi)表示关键点pi在图像坐标系下的位置坐标,(x′j,y′j)表示关键点p′j在图像坐标系下的位置坐标;按照第一图像的帧数从相应深度图像中获取关键点pi的深度dpi,然后借助训练数据集中包含的相机的内参矩阵K,得到关键点pi位置坐标(xi,yi)对应于第一图像在相机坐标系下的位置点Pi的3D坐标(Xi,Yi,Zi),并结合训练数据集中的标注信息确定第一图像与第二图像的真实位姿,获得位置点Pi对应的第二图像在相机坐标系下的位置点Pj的3D坐标(Xj,Yj,Zj);之后,通过相机的内参矩阵K,将位置点Pj的3D坐标(Xj,Yj,Zj)投影至第二图像的图像坐标系下得到相应的位置点pj在图像坐标系下的位置坐标(xj,yj)。
本领域技术人员可以理解,数据集包含RGB图像与对应深度图像,则表示数据集使用RGB-D相机采集,数据集中包含了RGB-D相机的内参矩阵K。
本阶段是针对单个点匹配对(pi,p′j)进行的介绍,其余所有点匹配都需要执行上述介绍中的步骤流程;主要步骤流程描述为:
首先,按照帧数的序号(此处将第一图像与第二图像的序号记为k与v),可以从对应序号的深度图中得到关键点pi的深度dpi,再借助相机的内参矩阵K,得到关键点pi位置坐标(xi,yi)对应于第一图像在相机坐标系下的位置点Pi的3D坐标(Xi,Yi,Zi)表示为:
其中,(cx,cy)是光轴对于投影平面坐标中心的偏移量,(fx,fy)是相机在x和y方向上的焦距。
然后,通过TUM数据集的groundtruth(标注信息)中可以获得第一图像与第二图像的真实位姿Twk和Twv,从而计算它们之间的变换矩阵Tvk:
再利用变换矩阵Tvk,可以计算位置点Pi对应的第二图像在相机坐标系下的位置点Pj的3D坐标(Xj,Yj,Zj):
Pj=TvkPi。
最后,通过相机的内参矩阵K,将位置点Pj的3D坐标(Xj,Yj,Zj)投影至第二图像的图像坐标系下得到相应的位置点pj在图像坐标系下的位置坐标(xj,yj),表示为:
5)计算图像坐标系下的位置坐标(xj,yj)与(x′j,y′j)的距离,作为点匹配对(pi,p′j)的匹配误差,综合点匹配对集合Ms中所有点匹配对的匹配误差构建损失函数,训练所述基于匹配任务的特征提取网络。
通过前述方式可以得到通过真值投影得到的匹配点位置坐标(xj,yj),它往往与最近邻匹配得到的匹配点位置坐标(x′j,y′j)不一致。通过下式计算两个位置坐标的距离,作为点匹配对(pi,p′j)的匹配误差;
对点匹配对集合Ms中所有点匹配对的匹配误差进行计算,构建如下损失函数:
基于上述损失函数,通过反向传播更新基于匹配任务的特征提取网络的网络参数,此部分所涉及的流程可参照常规技术实现,故不做赘述。
以上介绍的是针对batch尺寸为1时的损失函数计算方案,实际应用中会根据计算资源来设计batch尺寸大小(例如,1,2,4,8等等);以前文提供的1500个图像匹配对为例,按照设计的batch尺寸大小从中取出相应数量的图像匹配对计算损失函数,直至满足停止调整(比如迭代次数达到设定的最大次数或者损失函数收敛)。
本发明实施例提供的上述训练方法的灵感来自于SLAM的运行模式,通过优化地图点(3D点)到图像点(2D)的投影误差训练网络。在SLAM系统的位姿跟踪过程中,SLAM系统一般通过匀速假设估计一个初始位姿变换Tvk,然后按照上述操作,pi可以得到它在H2中的对应点pj,然后SLAM系统根据pj和p′j(pi根据最近邻匹配得到的匹配对)之间的距离优化Tvk,得到最终的位姿估计。
步骤2、将训练得到的基于匹配任务的特征提取网络嵌入至SLAM系统框架中。
本发明实施例中,对于单目相机,利用棋盘格标定法对相机进行内部参数标定,获取相机的内参矩阵和畸变系数向量d,其中K为3×3矩阵,d为4×1向量,并存储相机的标定参数;单目相机安装在车辆上,由于自动驾驶技术以车身坐标系为准,因此,对相机坐标系到车身坐标的变换进行标定求解,之后的流程均是以相机坐标系为准展开。
本发明实施例中,SLAM系统框架可以使用ORB SLAM2框架,利用前述步骤训练得到的基于匹配任务的特征提取网络嵌入至SLAM系统框架中。
步骤3、通过训练得到的基于匹配任务的特征提取网络对单目相机拍摄的图像进行特征点的提取,并对提取的相邻两帧图像的对应的特征点进行匹配,对匹配的特征点对求解相应的旋转矩阵和平移向量,用于对车辆的定位,并通过三角化求得物体点在世界坐标系下的位置,完成建图任务。
本发明实施例中,利用基于匹配任务的特征提取网络对单目相机拍摄的图像做特征点(关键点和描述子)的提取,替换原始SLAM系统框架中使用的ORB特征点。之后的特点匹配时使用欧氏距离计算匹配误差,其余定位和建图方案与现有流程基本一致。
如之前所述,SLAM系统框架可以使用ORB SLAM2框架,ORB-SLAM2主要包含跟踪、局部建图和闭环检测三个线程,分别负责位姿估计与定位,构建稀疏环境地图,检测闭环并优化轨迹功能。以上三个线程所实现的具体方式可参照常规技术。
图3展示了SLAM系统框架的主要流程;通过训练得到的基于匹配任务的特征提取网络对单目相机拍摄的图像进行特征点的提取并对相邻两帧图像的对应的特征点进行匹配。如果SLAM处于初始化阶段,对匹配的2D特征进行三角测量,得到其对应的地图(3D)点,并与关键帧建立连接,优化位姿(旋转矩阵和平移矩阵)估计;如果SLAM处于位姿跟踪状态,则将前一帧特征对应的地图点与后一帧进行匹配,并与关键帧建立连接以优化位姿估计,从而获取车辆的位置信息,完成车辆定位。局部建图线程同时运行构建稀疏地图。闭环检测线程负责优化闭环轨迹和系统位姿,具体的通过闭环检测以及全局BA(BundleAjustment),减少定位和建图的累计误差,进一步提高SLAM系统的准确性;
本发明实施例提供的上述方案,通过SLAM的运行模式训练原本针对匹配任务的特征提取网络,提高了所设计的SLAM系统的鲁棒性,使其能够很好的应对各类SLAM场景的挑战;进一步优化SLAM中的定位及建图框架,设计了性能更加优异的SLAM系统(即原有特征提取网络替换为前述步骤训练的基于匹配任务的特征提取网络);上述方案整体成本低,不需要对环境及车辆自身进行改造,可移植性强。
为了说明本发明实施例上述方案的效果,还通过实验进行了验证。
在匹配任务数据集Hptaches数据集上的测试结果如图4所示,左侧为原始SuperPoint对于三组图像中特征点的匹配结果,右侧为Rein-SuperPoint对于三组图像中特征点的匹配结果;每一组图像中,深色线条连接的两个匹配点表示错误匹配,浅色线条连接的两个匹配点表示正确匹配。可以很明显的发现Rein-SuperPoint在光照变换以及大视野变换的情况下,获得了更好的匹配效果。
在室外数据集KITTI数据集上的测试结果如图5所示。如图5左侧部分所示,在KITTT01序列上,SP-SLAM(使用原始SuperPoint集成的SLAM系统)会在序列的最后部分跟丢,而Rein-SLAM(使用Rein-SuperPoint集成的SLAM系统框架)可以完成整个序列的定位和建图。如图5右侧部分所示,在KITTI09序列上,Rein-SLAM取得了明显比SP-SLAM更优的结果。
在室内数据集Euroc数据集上的测试结果如图6所示,左侧部分与右侧部分分别表示在MH_01序列和MH_04序列上的测试结果。通过图6展示的测试结果可知,无论在在MH_01序列还是在MH_04序列上,Rein-SLAM取得了明显比SP-SLAM更优的结果。
需要说明的是,上述文字描述以及相关附图中所提供的具体网络类型(SuperPoint)仅为示例,并非构成限制,在实际应用于中,用户可以根据实际情况或者需求选择其他类型的特征匹配网络。
实施例二
本发明还提供一种基于特征匹配网络的SLAM系统,其主要基于前述实施例一提供的方法实现,如图7所示,该系统主要包括:
网络训练单元,用于利用深度学习方法,针对基于匹配任务的特征提取网络,通过SLAM的运行模式进行训练;
SLAM系统框架更新单元,用于将训练得到的基于匹配任务的特征提取网络嵌入至SLAM系统框架中;
定位与建图单元,用于通过训练得到的基于匹配任务的特征提取网络对单目相机拍摄的图像进行特征点的提取,并对提取的相邻两帧图像的对应的特征点进行匹配,对匹配的特征点对求解相应的旋转矩阵和平移向量,用于对车辆的定位,并通过三角化求得物体点在世界坐标系下的位置,完成建图任务。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将系统的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。
需要说明的是,上述系统中各单元所涉及的相关技术细节在之前的实施例一中已经做了详细的介绍,故不再赘述。
实施例三
本发明还提供一种处理设备,如图8所示,其主要包括:一个或多个处理器;存储器,用于存储一个或多个程序;其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现前述实施例提供的方法。
进一步的,所述处理设备还包括至少一个输入设备与至少一个输出设备;在所述处理设备中,处理器、存储器、输入设备、输出设备之间通过总线连接。
本发明实施例中,所述存储器、输入设备与输出设备的具体类型不做限定;例如:
输入设备可以为触摸屏、图像采集设备、物理按键或者鼠标等;
输出设备可以为显示终端;
存储器可以为随机存取存储器(Random Access Memory,RAM),也可为非不稳定的存储器(non-volatile memory),例如磁盘存储器。
实施例四
本发明还提供一种可读存储介质,存储有计算机程序,当计算机程序被处理器执行时实现前述实施例提供的方法。
本发明实施例中可读存储介质作为计算机可读存储介质,可以设置于前述处理设备中,例如,作为处理设备中的存储器。此外,所述可读存储介质也可以是U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明披露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求书的保护范围为准。
Claims (10)
1.一种基于特征匹配网络的SLAM方法,其特征在于,包括:
利用深度学习方法,针对基于匹配任务的特征提取网络,通过SLAM的运行模式进行训练;
将训练得到的基于匹配任务的特征提取网络嵌入至SLAM系统框架中;
通过训练得到的基于匹配任务的特征提取网络对单目相机拍摄的图像进行特征点的提取,并对提取的相邻两帧图像的对应的特征点进行匹配,对匹配的特征点对求解相应的旋转矩阵和平移向量,用于对车辆的定位,并通过三角化求得物体点在世界坐标系下的位置,完成建图任务。
2.根据权利要求1所述的一种基于特征匹配网络的SLAM方法,其特征在于,所述利用深度学习方法,基于针对匹配任务的特征提取网络,通过SLAM的运行模式进行训练的步骤包括:
构建基于匹配任务的特征提取网络,并选取包含RGB图像与对应深度图像的训练数据集;
对于训练数据集中的每一帧RGB图像,随机利用相邻图像构成一个图像匹配对;一个图像匹配对中的两个图像称为第一图像与第二图像;
对于每一个图像匹配对,输入至基于匹配任务的特征提取网络后获得热图对,记为H1与H2;在热图H1与H2上分别随机选取n个关键点;对热图H1和H2上的关键点进行最近邻匹配得到初步点匹配结果M,并按照设定比例随机在初步点匹配结果M选取点匹配对,所选取的点匹配对集合记为Ms;
对点匹配对集合Ms中的单个点匹配对(pi,p′j),其中pi∈H1,p′j∈H2,pi=(xi,yi),p′j=(x′j,y′j),表示pi与p′j分别为热图H1与H2上的关键点,(xi,yi)表示关键点pi在图像坐标系下的位置坐标,(x′j,y′j)表示关键点p′j在图像坐标系下的位置坐标;按照第一图像的帧数从相应深度图像中获取关键点pi的深度然后借助训练数据集中包含的相机的内参矩阵K,得到关键点pi位置坐标(xi,yi)对应于第一图像在相机坐标系下的位置点Pi的3D坐标(Xi,Yi,Zi),并结合训练数据集中的标注信息确定第一图像与第二图像的真实位姿,获得位置点Pi对应的第二图像在相机坐标系下的位置点Pj的3D坐标(Xj,Yj,Zj);之后,通过相机的内参矩阵K,将位置点Pj的3D坐标(Xj,Yj,Zj)投影至第二图像的图像坐标系下得到相应的位置点pj在图像坐标系下的位置坐标(xj,yj);
计算图像坐标系下的位置坐标(xj,yj)与(x′j,y′j)的距离,作为点匹配对(pi,p′j)的匹配误差,综合匹配对集合Ms中所有点匹配对的匹配误差构建损失函数,训练所述基于匹配任务的特征提取网络。
3.根据权利要求2所述的一种基于特征匹配网络的SLAM方法,其特征在于,所述对于训练数据集中的每一帧RGB图像,随机利用相邻图像构成一个图像匹配对包括:
对于训练数据集中的第k帧RGB图像,随机从之后的三帧中选取第v帧RGB图像,构成一个图像匹配对;其中,v∈{k+1,k+2,k+3};将第k帧RGB图像称为第一图像,将第v帧RGB图像称为第二图像。
8.一种基于特征匹配网络的SLAM系统,其特征在于,基于权利要求1~7任一项所述的方法实现,该系统包括:
网络训练单元,用于利用深度学习方法,针对基于匹配任务的特征提取网络,通过SLAM的运行模式进行训练;
SLAM系统框架更新单元,用于将训练得到的基于匹配任务的特征提取网络嵌入至SLAM系统框架中;
定位与建图单元,用于通过训练得到的基于匹配任务的特征提取网络对单目相机拍摄的图像进行特征点的提取,并对提取的相邻两帧图像的对应的特征点进行匹配,对匹配的特征点对求解相应的旋转矩阵和平移向量,用于对车辆的定位,并通过三角化求得物体点在世界坐标系下的位置,完成建图任务。
9.一种处理设备,其特征在于,包括:一个或多个处理器;存储器,用于存储一个或多个程序;
其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如权利要求1~7任一项所述的方法。
10.一种可读存储介质,存储有计算机程序,其特征在于,当计算机程序被处理器执行时实现如权利要求1~7任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210228298.6A CN114608558A (zh) | 2022-03-08 | 2022-03-08 | 基于特征匹配网络的slam方法、系统、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210228298.6A CN114608558A (zh) | 2022-03-08 | 2022-03-08 | 基于特征匹配网络的slam方法、系统、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114608558A true CN114608558A (zh) | 2022-06-10 |
Family
ID=81860366
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210228298.6A Pending CN114608558A (zh) | 2022-03-08 | 2022-03-08 | 基于特征匹配网络的slam方法、系统、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114608558A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117671022A (zh) * | 2023-11-02 | 2024-03-08 | 武汉大学 | 一种室内弱纹理环境的移动机器人视觉定位系统及方法 |
-
2022
- 2022-03-08 CN CN202210228298.6A patent/CN114608558A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117671022A (zh) * | 2023-11-02 | 2024-03-08 | 武汉大学 | 一种室内弱纹理环境的移动机器人视觉定位系统及方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109166149B (zh) | 一种融合双目相机与imu的定位与三维线框结构重建方法与系统 | |
Melekhov et al. | Dgc-net: Dense geometric correspondence network | |
Zhao et al. | Alike: Accurate and lightweight keypoint detection and descriptor extraction | |
CN111553939B (zh) | 一种多目摄像机的图像配准算法 | |
CN108776989B (zh) | 基于稀疏slam框架的低纹理平面场景重建方法 | |
Liu et al. | Direct visual odometry for a fisheye-stereo camera | |
CN112734839B (zh) | 一种提高鲁棒性的单目视觉slam初始化方法 | |
CN108519102B (zh) | 一种基于二次投影的双目视觉里程计算方法 | |
CN115205489A (zh) | 一种大场景下的三维重建方法、系统及装置 | |
CN111127522B (zh) | 基于单目相机的深度光流预测方法、装置、设备及介质 | |
CN111709980A (zh) | 基于深度学习的多尺度图像配准方法和装置 | |
CN113108771A (zh) | 一种基于闭环直接稀疏视觉里程计的移动位姿估计方法 | |
CN111797688A (zh) | 一种基于光流和语义分割的视觉slam方法 | |
CN113744315B (zh) | 一种基于双目视觉的半直接视觉里程计 | |
CN105894443A (zh) | 一种基于改进的surf算法的实时视频拼接方法 | |
WO2021035627A1 (zh) | 获取深度图的方法、装置及计算机存储介质 | |
CN113538569A (zh) | 一种弱纹理物体位姿估计方法和系统 | |
CN111105460A (zh) | 一种室内场景三维重建的rgb-d相机位姿估计方法 | |
CN112150518B (zh) | 一种基于注意力机制的图像立体匹配方法及双目设备 | |
CN113393524A (zh) | 一种结合深度学习和轮廓点云重建的目标位姿估计方法 | |
CN112907573A (zh) | 一种基于3d卷积的深度补全方法 | |
CN114608558A (zh) | 基于特征匹配网络的slam方法、系统、设备及存储介质 | |
CN113096016A (zh) | 一种低空航拍图像拼接方法和系统 | |
CN117726747A (zh) | 补全弱纹理场景的三维重建方法、装置、存储介质和设备 | |
CN116843754A (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 |