CN116817887B - 语义视觉slam地图构建方法、电子设备及存储介质 - Google Patents
语义视觉slam地图构建方法、电子设备及存储介质 Download PDFInfo
- Publication number
- CN116817887B CN116817887B CN202310773986.5A CN202310773986A CN116817887B CN 116817887 B CN116817887 B CN 116817887B CN 202310773986 A CN202310773986 A CN 202310773986A CN 116817887 B CN116817887 B CN 116817887B
- Authority
- CN
- China
- Prior art keywords
- camera
- image
- sub
- map
- 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.)
- Active
Links
- 230000000007 visual effect Effects 0.000 title claims abstract description 48
- 238000010276 construction Methods 0.000 title claims abstract description 23
- 238000003860 storage Methods 0.000 title claims abstract description 15
- 238000005457 optimization Methods 0.000 claims abstract description 31
- 238000001514 detection method Methods 0.000 claims abstract description 22
- 230000009466 transformation Effects 0.000 claims abstract description 20
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 15
- 238000013507 mapping Methods 0.000 claims abstract description 11
- 238000000605 extraction Methods 0.000 claims abstract description 8
- 230000004927 fusion Effects 0.000 claims abstract description 7
- 238000013528 artificial neural network Methods 0.000 claims abstract description 4
- 238000000034 method Methods 0.000 claims description 47
- 239000011159 matrix material Substances 0.000 claims description 27
- 238000004364 calculation method Methods 0.000 claims description 25
- 238000004590 computer program Methods 0.000 claims description 16
- 230000010354 integration Effects 0.000 claims description 8
- 238000003062 neural network model Methods 0.000 claims description 8
- 238000010586 diagram Methods 0.000 claims description 7
- 230000006870 function Effects 0.000 claims description 7
- 230000008569 process Effects 0.000 claims description 7
- 238000003384 imaging method Methods 0.000 claims description 6
- 238000007476 Maximum Likelihood Methods 0.000 claims description 4
- 230000003287 optical effect Effects 0.000 claims description 4
- 238000004519 manufacturing process Methods 0.000 claims description 3
- 238000005096 rolling process Methods 0.000 claims description 3
- 238000013519 translation Methods 0.000 claims description 3
- 238000002474 experimental method Methods 0.000 description 5
- 238000012549 training Methods 0.000 description 5
- 230000011218 segmentation Effects 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 101100295091 Arabidopsis thaliana NUDT14 gene Proteins 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 241000283070 Equus zebra Species 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013508 migration Methods 0.000 description 1
- 230000005012 migration Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Classifications
-
- 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
- Image Analysis (AREA)
Abstract
语义视觉SLAM地图构建方法、电子设备及存储介质,属于计算机视觉技术领域。为提高相机位姿的准确性和相机轨迹的完整性。本发明对相机进行内外参标定,然后采集子地图图像;对步骤S1采集的子地图图像进行逆透视变换,然后进行子地图图像融合拼接,得到环视子地图图像;对步骤S2得到的环视子地图图像输入到神经网络中进行特征提取,然后进行特征投影,得到世界坐标系下的子地图图像坐标;利用步骤S3得到的世界坐标系下的子地图图像坐标进行局部建图,回环检测,全局优化,得到语义视觉SLAM地图。本发明通过后端优化算法以及添加IMU传感器后,可以明显看出算法结果与真值之间已经没有了明显的轨迹漂移。
Description
技术领域
本发明属于计算机视觉技术领域,具体涉及语义视觉SLAM地图构建方法、电子设备及存储介质。
背景技术
目前的SLAM领域中,三维激光雷达+GNSS方案,成本高,在一些特殊情况(转弯位置雷达点云漂移和在建筑群密集情况下GPS信号丢失)下会发生定位丢失情况,而视觉语义SLAM所使用的相机传感器成本低,可以获取场景丰富的语义信息,拥有解决这些特殊情况的潜力,但目前的语义SLAM研究领域多针对于静态场景,需要假设场景是静止的,不适用于动态场景,需要提供物体的几何模型,提供物体数据库,只能检测在数据库中出现的物体,而且只能应对个位数级别的运动物体的跟踪和稠密重建。目前的视觉SLAM多是基于VI-SLAM***优化的,普遍存在由于缺少语义信息动态场景召回率低的问题,目前的图像目标检测与分割方面,deeplabv3+作为其中的佼佼者,利用ASPP来完成多尺度目标分割,但是无法获取全局特征的上下文关系,缺少多通道提取高级语义信息的能力。因此,把语义SLAM、视觉SLAM、图像目标检测与分割三个研究领域的前沿技术相融合,探索出一种高效的SLAM方案是非常有必要的。
发明内容
本发明要解决的问题是为了提高相机位姿的准确性和相机轨迹的完整性,提出语义视觉SLAM地图构建方法、电子设备及存储介质。
为实现上述目的,本发明通过以下技术方案实现:
一种语义视觉SLAM地图构建方法,包括如下步骤:
S1、对相机进行内外参标定,然后采集子地图图像;
S2、对步骤S1采集的子地图图像进行逆透视变换,然后进行子地图图像融合拼接,得到环视子地图图像;
S3、对步骤S2得到的环视子地图图像输入到神经网络中进行特征提取,然后进行特征投影,得到世界坐标系下的子地图图像坐标;
S4、利用步骤S3得到的世界坐标系下的子地图图像坐标进行局部建图,回环检测,全局优化,得到语义视觉SLAM地图。
进一步的,步骤S1对相机进行内外参标定的具体实现方法包括如下步骤:
S1.1、制作黑白棋盘格,贴在平面上作为标定物,用相机对黑白棋盘格进行不同角度的拍摄,拍摄黑白棋盘格图像为20张;
S1.2、从步骤S1.1拍摄的黑白棋盘格图像中标定黑白棋盘格的角点;
S1.3、求解步骤S1.1拍摄的每张图像对应的相机内参数和相机外参数;
首先建立相机成像模型为:
其中,u、v为物体投影到图像坐标系的横、纵坐标,s为比例因子,K为相机内参数,r1、r2为旋转矩阵转换的第一列向量、第二列向量,t为平移矩阵,XW、YW为物体在现实空间坐标系的x轴坐标、y轴坐标;
设置H为单应性矩阵,转换相机成像模型为:
H为3x3矩阵,H的计算表达式为:
H=A[r1 r2 t]
其中,A为相机外参数;
设置R为旋转矩阵,得到如下公式:
S1.4、对径向畸变下的畸变系数,应用最小二乘法对步骤S1.3得到的相机内参数和相机外参数进行估计;
S1.5、基于极大似然法对步骤S1.4得到的相机内参数和相机外参数进行优化,得的优化的相机内参数和优化的相机外参系数。
进一步的,步骤S1中相机的个数为6个,6个相机的视场覆盖360度。
进一步的,步骤S2的具体实现方法包括如下步骤:
S2.1、建立x轴、y轴交点重合于相机光心在地面上的正投影,建立相机存在俯仰角时的动态逆透视变换方程,对采集的子地图图像进行逆透视变换,计算表达式为:
其中,x(u,v)为逆透视变换俯视图的路面横坐标,y(u,v)为逆透视变换俯视图的路面纵坐标,u和v为子地图图像透视图在图像坐标系中的横坐标、纵坐标,Δz为相机的离地高度,α为相机航向角,β为相机翻滚角,θ为相机俯仰角;
S2.2、对步骤S2.1得到的逆透视变换的子地图图像进行子地图图像融合拼接得到环视子地图图像,计算表达式为:
其中,为将像素转换为空间点的反投影,[Rc,tc]为每个相机的外参,[u v]为图像坐标系下的像素位置,xv、yv为车辆坐标系下的特征点x轴坐标、y轴坐标,λ为标量,col为矩阵的列。
进一步的,步骤S3的具体实现方法包括如下步骤:
S3.1、对步骤S2得到的环视子地图图像输入到deeplabv3+神经网络模型进行语义信息特征提取,得到特征点后进行特征投影,计算表达式为:
其中,Kipm为环视子地图图像内参,[uipm,vipm]为环视子地图图像上的像素坐标;
S3.2、得到特征点后进行特征投影,将特征从图像坐标系投影到3D坐标系,计算表达式为:
从车辆坐标系到世界坐标系,以里程计转换出图像特征,计算表达式为:
其中,[Ro,t0]为里程计的位姿值。
进一步的,步骤S4的具体实现方法包括如下步骤:
S4.1、对步骤S3.2得到的特征投影的特征点进行局部建图,帧图分为两部分,左框图为局部图,右框图为全局图,局部建图由一系列迭代扫描结构构建,其中包含扫描位置和子卡信息的信息,得到局部子地图;
S4.2、使用ICP点云匹配算法对步骤S4.1得到的局部子地图进行要素点匹配,若帧是第一帧,则通过IMU进行初始化,然后进行IMU预积分,然后将相机的相对姿势内存***到内存中以进行回环检测和全局优化,回环检测的计算表达式为:
其中,为局部子地图的位姿,f为m中的任意一个,/>为相机的位姿,j为n中的任意一个,ξij为局部子地图坐标系下特征点的位姿,相应的协方差矩阵用∑ij表示,E为残差,ρ为优化系数;
残差E的计算公式如下:
局部子地图的位姿以及相机的位姿在前端取得,ξij由回环相机匹配取得;
全局优化根据共视点的3D坐标与相机内参矩阵,利用PnP计算位姿R、t,特征点在第二帧图像上的投影,通过R、t和摄像机的投影模型进行计算,通过投影建立函数对位姿进行优化,重投影误差是指在影像平面上真实三维空间点的投影与重投影之间的差值,将差值和最小化,得到相机参数的最佳化和三维空间点的坐标;
然后从车辆坐标系到世界坐标系,以里程计转换出图像特征,计算表达式为:
其中,[Ro,t0]为里程计的位姿值;
S4.3、步骤S4.2中的回环检测和全局优化作为滑动窗口的先验信息对滑动窗口进行优化,然后利用因子图优化IMU预积分生成位姿的IMU因子和视觉里程计因子得到最终的位姿,生成轨迹图。
进一步的,步骤S4.2的回环检测和全局优化过程构建词袋模型,具体实现方法包括如下步骤:
S4.2.1、使用K-means方法构建字典,在特征点的所有属性上创建一个字典,在根节点位置将全部节点设置成k类,根据k类创建所有特征点的第一层聚类,然后把第二层和后续的每一层进行聚类,得到叶子节点,组成单词,得到k叉树模型;
S4.2.2、以步骤S4.1构建的k叉树模型为基础,将所有对象划分为d层,每层有k个节点树,可以包含的最大dk个字数,当输入一个图像时,将图像的特征点与聚类层的每个聚类进行比较,最后将图像的所有点分类为单词;
S4.2.3、将步骤S4.2.2得到的构建字典的图像利用TF-IDF方法进行校正图像中对象点的权重,定义图片A中第i个特征点在字典中检查叶子节点的单词,记为a,以及图片A中出现的单词的次数为ni次,所有特征点在图像A中出现的总数为na次,定义字典中所有单词数量为n,单词的权重为ηi,其中的关系表达式如下:
ηi=TFi×IDFi
其中,IDFi为逆文本频率指数,TFi为单词在图像中在本帧图像中出现的次数;
S4.2.4、利用步骤S4.2.3得到的字典中存在共识点则其图片描述表示为相同向量,解算图片的相似度,计算公式为:
其中,b为对比图片,w为,s(a,b)为图片相似度;
电子设备,包括存储器和处理器,存储器存储有计算机程序,所述的处理器执行所述计算机程序时实现所述的一种语义视觉SLAM地图构建方法的步骤。
计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现所述的一种语义视觉SLAM地图构建方法。
本发明的有益效果:
本发明所述的一种语义视觉SLAM地图构建方法,具有较强的鲁棒性,召回率高,而且在某些特殊情况(转弯位置雷达点云漂移和在建筑群密集情况下GPS信号丢失),会比激光雷达+GNSS SLAM方案精度更高,整体稳定性更强。在一些转弯的道路情况下和一些动态的场景下,语义视觉SLAM更有优势。在激光雷达+GNSS原有的基础上,融合语义视觉SLAM,在建图和定位方面会起到更好的辅助作用。
附图说明
图1为本发明所述的一种语义视觉SLAM地图构建方法的流程图;
图2为本发明所述的一种语义视觉SLAM地图构建方法的偏航角和俯仰角对逆透视变换的影响示意图;
图3为本发明所述的一种语义视觉SLAM地图构建方法的视觉惯性里程计示意图;
图4为本发明所述的一种语义视觉SLAM地图构建方法的K叉树模型;
图5为本发明所述的一种语义视觉SLAM地图构建方法的语义视觉SLAM与真值的轨迹误差对比图;
图6为本发明所述的一种语义视觉SLAM地图构建方法的语义视觉SLAM与真值的位置误差对比图
图7为本发明所述的一种语义视觉SLAM地图构建方法的视觉惯性SLAM轨迹误差图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及具体实施方式,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施方式仅用以解释本发明,并不用于限定本发明,即所描述的具体实施方式仅仅是本发明一部分实施方式,而不是全部的具体实施方式。通常在此处附图中描述和展示的本发明具体实施方式的组件可以以各种不同的配置来布置和设计,本发明还可以具有其他实施方式。
因此,以下对在附图中提供的本发明的具体实施方式的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定具体实施方式。基于本发明的具体实施方式,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他具体实施方式,都属于本发明保护的范围。
为能进一步了解本发明的发明内容、特点及功效,兹例举以下具体实施方式,并配合附图1-附图7详细说明如下:
具体实施方式一:
一种语义视觉SLAM地图构建方法,包括如下步骤:
S1、对相机进行内外参标定,然后采集子地图图像;
进一步的,步骤S1对相机进行内外参标定的具体实现方法包括如下步骤:
S1.1、制作黑白棋盘格,贴在平面上作为标定物,用相机对黑白棋盘格进行不同角度的拍摄,拍摄黑白棋盘格图像为20张;
S1.2、从步骤S1.1拍摄的黑白棋盘格图像中标定黑白棋盘格的角点;
S1.3、求解步骤S1.1拍摄的每张图像对应的相机内参数和相机外参数;
首先建立相机成像模型为:
其中,u、v为物体投影到图像坐标系的横、纵坐标,s为比例因子,K为相机内参数,r1、r2为旋转矩阵转换的第一列向量、第二列向量,t为平移矩阵,XW、YW为物体在现实空间坐标系的x轴坐标、y轴坐标;
设置H为单应性矩阵,转换相机成像模型为:
H为3x3矩阵,H的计算表达式为:
H=A[r1 r2 t]
其中,A为相机外参数;
H为3x3矩阵,并且有一个元素作为齐次坐标,则有8个未知元素,一组坐标对应两个方程,则至少需要四组对应的点即可算出单应性矩阵H;
矩阵A包含5个元素,A的唯一封闭解需要3组H才能解出。相机畸变的影响在上述计算中是忽略的。将实际存在的径向畸变(忽略切向畸变)的畸变系数用最小二乘方法对内外参进行估计,最后通过极大似然法进行优化,从而得到较高精度的解;
设置R为旋转矩阵,得到如下公式:
S1.4、对径向畸变下的畸变系数,应用最小二乘法对步骤S1.3得到的相机内参数和相机外参数进行估计;
S1.5、基于极大似然法对步骤S1.4得到的相机内参数和相机外参数进行优化,得的优化的相机内参数和优化的相机外参系数;
进一步的,步骤S1中相机的个数为6个,6个相机的视场覆盖360度;
S2、对步骤S1采集的子地图图像进行逆透视变换,然后进行子地图图像融合拼接,得到环视子地图图像;
进一步的,步骤S2的具体实现方法包括如下步骤:
S2.1、建立x轴、y轴交点重合于相机光心在地面上的正投影,建立相机存在俯仰角时的动态逆透视变换方程,对采集的子地图图像进行逆透视变换,计算表达式为:
其中,x(u,v)为逆透视变换俯视图的路面横坐标,y(u,v)为逆透视变换俯视图的路面纵坐标,u和v为子地图图像透视图在图像坐标系中的横坐标、纵坐标,Δz为相机的离地高度,α为相机航向角,β为相机翻滚角,θ为相机俯仰角;
S2.2、对步骤S2.1得到的逆透视变换的子地图图像进行子地图图像融合拼接得到环视子地图图像,计算表达式为:
其中,为将像素转换为空间点的反投影,[Rc,tc]为每个相机的外参,[u v]为图像坐标系下的像素位置,xv、yv为车辆坐标系下的特征点x轴坐标、y轴坐标,λ为标量,col为矩阵的列;
S3、对步骤S2得到的环视子地图图像输入到神经网络中进行特征提取,然后进行特征投影,得到世界坐标系下的子地图图像坐标;
进一步的,步骤S3的具体实现方法包括如下步骤:
S3.1、对步骤S2得到的环视子地图图像输入到deeplabv3+神经网络模型进行语义信息特征提取,得到特征点后进行特征投影,计算表达式为:
其中,Kipm为环视子地图图像内参,[uipm,vipm]为环视子地图图像上的像素坐标;
S3.2、得到特征点后进行特征投影,将特征从图像坐标系投影到3D坐标系,计算表达式为:
从车辆坐标到世界坐标系,以里程计转换出图像特征,计算表达式为:
其中,[Ro,t0]为里程计的位姿值;
进一步的,利用deeplabv3+神经网络模型数据集进行训练学习,制作了封闭园区内地表信息专有数据集,该数据集共有5600张图像,共有5个类别,分别为道路边界线,引导线,减速带,斑马线,引导字,在deeplabv3+的基础上,在空洞空间金字塔池化并联了双注意力机制模块,DAMM和ASPP之间的并行连接,首先使用主干网络先对图像特征进行提取,再把模型拆分为两个分支网络,对主干网提取出来的特征图分别进行处理,然后合并两个分支特征图,并根据数据集的特殊情况,调整了空洞卷积的大小,使其更适应特定任务。使用自制数据集作为优化后的神经网络模型的训练验证数据集,为了使网络能够快速的收敛和稳定,先使用百度开源车道线数据集进行预训练,再利用该预训练模型对原deeplabv3+和加入自注意力机制的网络,以及更改了空洞卷积大小的网络进行迁移训练。实验证明,更改了空洞卷积大小的加入自注意力机制的神经网络模型语义分割的精度更高,对于边缘特征的效果更好,最终采用训练后的神经网络模型权重进行特征提取。
S4、利用步骤S3得到的世界坐标系下的子地图图像坐标进行局部建图,回环检测,全局优化,得到语义视觉SLAM地图;
进一步的,步骤S4的具体实现方法包括如下步骤:
S4.1、对步骤S3.2得到的特征投影的特征点进行局部建图,帧图分为两部分,左框图为局部图,右框图为全局图,局部建图由一系列迭代扫描结构构建,其中包含扫描位置和子卡信息的信息,得到局部子地图;
S4.2、使用ICP点云匹配算法对步骤S4.1得到的局部子地图进行要素点匹配,若帧是第一帧,则通过IMU进行初始化,然后进行IMU预积分,然后将相机的相对姿势内存***到内存中以进行回环检测和全局优化,回环检测的计算表达式为:
其中,为局部子地图的位姿,i为m中的任意一个,/>为相机的位姿,j为n中的任意一个,ξij为局部子地图坐标系下特征点的位姿,相应的协方差矩阵用∑ij表示,E为残差,ρ为优化系数;
残差E的计算公式如下:
局部子地图的位姿以及相机的位姿在前端取得,ξij由回环相机匹配取得;
全局优化根据共视点的3D坐标与相机内参矩阵,利用PnP计算位姿R、t,特征点在第二帧图像上的投影,通过R、t和摄像机的投影模型进行计算,通过投影建立函数对位姿进行优化,重投影误差是指在影像平面上真实三维空间点的投影与重投影之间的差值,将差值和最小化,得到相机参数的最佳化和三维空间点的坐标;
然后从车辆坐标系到世界坐标系,以里程计转换出图像特征,计算表达式为:
其中,[Ro,t0]为里程计的位姿值;
进一步的,步骤S4.2的回环检测和全局优化过程构建词袋模型,具体实现方法包括如下步骤:
S4.2.1、使用K-means方法构建字典,在特征点的所有属性上创建一个字典,在根节点位置将全部节点设置成k类,根据k类创建所有特征点的第一层聚类,然后把第二层和后续的每一层进行聚类,得到叶子节点,组成单词,得到k叉树模型;
S4.2.2、以步骤S4.1构建的k叉树模型为基础,将所有对象划分为d层,每层有k个节点树,可以包含的最大dk个字数,当输入一个图像时,将图像的特征点与聚类层的每个聚类进行比较,最后将图像的所有点分类为单词;
S4.2.3、将步骤S4.2.2得到的构建字典的图像利用TF-IDF方法进行校正图像中对象点的权重,定义图片A中第i个特征点在字典中检查叶子节点的单词,记为a,以及图片A中出现的单词的次数为ni次,所有特征点在图像A中出现的总数为na次,定义字典中所有单词数量为n,单词的权重为ηi,其中的关系表达式如下:
ηi=TFi×IDFi
其中,IDFi为逆文本频率指数,TFi为单词在图像中在本帧图像中出现的次数;
S4.2.4、利用步骤S4.2.3得到的字典中存在共识点则其图片描述表示为相同向量,解算图片的相似度,计算公式为:
其中,b为对比图片,w为,s(a,b)为图片相似度;
S4.3、步骤S4.2中的回环检测和全局优化作为滑动窗口的先验信息对滑动窗口进行优化,然后利用因子图优化IMU预积分生成位姿的IMU因子和视觉里程计因子得到最终的位姿,生成轨迹图。
把融合后的环视图像输入到神经网络模型进行特征提取,使用ICP点云匹配算法进行匹配,若帧是第一帧,则必须通过IMU一起进行初始化,得到帧间位姿后筛选一个固定大小的滑窗通过IMU预积分、回环检测约束等作为滑动窗口的先验信息对滑动窗口进行优化。进行大规模定位,通过滑动窗口对一定数量的帧间保持优化是有必要的,它解决了因地图面积过大而产生位姿和地图点过多的影响,最后将该滑动窗口输出的位姿作为视觉惯性里程计因子。
首先,环回检测主要用于解决移动机器人实际路径和预测路径之间的误差问题,因此创建的地图与实际地图之间存在误差,算法即使得到充分优化,部分地图与相机之间匹配过程的错误问题也是不可避免的。为了减少子地图与相机匹配度的查找范围从而降低运算量,提高检测效率,更好地完成回环检测的任务,本实施方式引入了里程计的数据。为确保当前照相机要素与构建该要素的子地图中的要素点匹配,必须将照相机的相对姿势内存***到内存中以进行环回优化。除了这些相对位姿外,由相机和子映射组成的所有其他对都被视为闭环,除非子映射发生更改。扫描匹配器在后台运行,如果找到匹配项,则相应的相对姿势将添加到优化问题中。
在Visual SLAM中,输入数据被视为点云特征。直接从两张图片中减去特征点不利于得到两张图片之间的差异并保存。前端必须贡献足够的帧才能实现匹配,从而创建更多的全局内存,并且匹配到达相同位置时的历史关键帧越多,匹配的数量就越多。而且直接在前端使用的功能点没有分类,很难找到。因此为了解决视觉SLAM中的回环检测问题,本实施方式采用词袋模型的方法。首先探讨词袋字典的结构,再讨论实现细节。词袋模型,本质上是一个分类图像上的各个特征点的模型。以全局优化为基础是回环检测的一大特点,因此,每个关键帧输入都使用BOW模型输出其特征向量(如果使用历史帧),如果没有历史帧匹配,则需要在字典中输入关键帧单词进行存储,这不会影响后续的匹配性能。
本实施方式用EVO工具对构建的语义地图和仿真真值进行了对比,由于其轨迹误差与在本实验中,通过EVO工具同时可以获得轨迹与位置误差如附图5和附图6所示,在纯视觉语义算法中加入IMU传感器数据进行第二次实验来解决视觉前端里程计造成偏移过大问题。相机是低频输入的,为10Hz,IMU数据是高频输入的,为100Hz。在加入基于滑动窗口优化的同时将IMU数据进行预积分,利用滑动窗口进行边缘化旧帧以减少累计错误。滑动窗口的初值参考IMU测量得到的位姿进行优化使整个***的初始化效率提高。最后利用因子图优化优化IMU预积分生成位姿的IMU因子和视觉里程计因子得到最终的位姿,生成轨迹图。其轨迹误差如附图7所示。通过后端优化算法以及添加IMU传感器后,可以明显看出算法结果与真值之间已经没有了明显的轨迹漂移。本文利用EVO算法计算出包括视觉语义惯性算法和纯视觉语义算法的平均误差、最小误差、均方根误差RMSE和最大误差的绝对位置误差实验结果表,如表1所示。在实验中,纯视觉语义算法的均方根误差为11.24,而本实施方式视觉语义惯性算法的均方根误差为2.014。
表1绝对位置误差实验结果表
具体实施方式二:
电子设备,包括存储器和处理器,存储器存储有计算机程序,所述的处理器执行所述计算机程序时实现所述的一种语义视觉SLAM地图构建方法的步骤。
本发明的计算机装置可以是包括有处理器以及存储器等装置,例如包含中央处理器的单片机等。并且,处理器用于执行存储器中存储的计算机程序时实现上述的一种语义视觉SLAM地图构建方法的步骤。
所称处理器可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作***、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)、至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
具体实施方式三:
计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现所述的一种语义视觉SLAM地图构建方法。
本发明的计算机可读存储介质可以是被计算机装置的处理器所读取的任何形式的存储介质,包括但不限于非易失性存储器、易失性存储器、铁电存储器等,计算机可读存储介质上存储有计算机程序,当计算机装置的处理器读取并执行存储器中所存储的计算机程序时,可以实现上述的一种语义视觉SLAM地图构建方法的步骤。
所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
需要说明的是,术语“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
虽然在上文中已经参考具体实施方式对本申请进行了描述,然而在不脱离本申请的范围的情况下,可以对其进行各种改进并且可以用等效物替换其中的部件。尤其是,只要不存在结构冲突,本申请所披露的具体实施方式中的各项特征均可通过任意方式相互结合起来使用,在本说明书中未对这些组合的情况进行穷举性的描述仅仅是出于省略篇幅和节约资源的考虑。因此,本申请并不局限于文中公开的特定具体实施方式,而是包括落入权利要求的范围内的所有技术方案。
Claims (7)
1.一种语义视觉SLAM地图构建方法,其特征在于,包括如下步骤:
S1、对相机进行内外参标定,然后采集子地图图像;
步骤S1对相机进行内外参标定的具体实现方法包括如下步骤:
S1.1、制作黑白棋盘格,贴在平面上作为标定物,用相机对黑白棋盘格进行不同角度的拍摄,拍摄黑白棋盘格图像为20张;
S1.2、从步骤S1.1拍摄的黑白棋盘格图像中标定黑白棋盘格的角点;
S1.3、求解步骤S1.1拍摄的每张图像对应的相机内参数和相机外参数;
首先建立相机成像模型为:
其中,u、v为物体投影到图像坐标系的横、纵坐标,s为比例因子,K为相机内参数,r1、r2为旋转矩阵转换的第一列向量、第二列向量,t为平移矩阵,XW、YW为物体在现实空间坐标系的x轴坐标、y轴坐标;
设置H为单应性矩阵,转换相机成像模型为:
H为3x3矩阵,H的计算表达式为:
H=A[r1 r2 t]
其中,A为相机外参数;
设置R为旋转矩阵,得到如下公式:
S1.4、对径向畸变下的畸变系数,应用最小二乘法对步骤S1.3得到的相机内参数和相机外参数进行估计;
S1.5、基于极大似然法对步骤S1.4得到的相机内参数和相机外参数进行优化,得的优化的相机内参数和优化的相机外参系数;
S2、对步骤S1采集的子地图图像进行逆透视变换,然后进行子地图图像融合拼接,得到环视子地图图像;
步骤S2的具体实现方法包括如下步骤:
S2.1、建立x轴、y轴交点重合于相机光心在地面上的正投影,建立相机存在俯仰角时的动态逆透视变换方程,对采集的子地图图像进行逆透视变换,计算表达式为:
其中,x(u,v)为逆透视变换俯视图的路面横坐标,y(u,v)为逆透视变换俯视图的路面纵坐标,u和v为子地图图像透视图在图像坐标系中的横坐标、纵坐标,Δz为相机的离地高度,α为相机航向角,β为相机翻滚角,θ为相机俯仰角;
S2.2、对步骤S2.1得到的逆透视变换的子地图图像进行子地图图像融合拼接得到环视子地图图像,计算表达式为:
其中,为将像素转换为空间点的反投影,[Rc,tc]为每个相机的外参,[u v]为图像坐标系下的像素位置,xv、yv为车辆坐标下的特征点x轴坐标、y轴坐标,λ为标量,col为矩阵的列;
S3、对步骤S2得到的环视子地图图像输入到神经网络中进行特征提取,然后进行特征投影,得到世界坐标系下的子地图图像坐标;
S4、利用步骤S3得到的世界坐标系下的子地图图像坐标进行局部建图,回环检测,全局优化,得到语义视觉SLAM地图。
2.根据权利要求1所述的一种语义视觉SLAM地图构建方法,其特征在于,步骤S1中相机的个数为6个,6个相机的视场覆盖360度。
3.根据权利要求2所述的一种语义视觉SLAM地图构建方法,其特征在于,步骤S3的具体实现方法包括如下步骤:
S3.1、对步骤S2得到的环视子地图图像输入到deeplabv3+神经网络模型进行语义信息特征提取,得到特征点后进行特征投影,计算表达式为:
其中,Kipm为环视子地图图像内参,[uipm,vipm]为环视子地图图像上的像素坐标;
S3.2、得到特征点后进行特征投影,将特征从图像坐标系投影到3D坐标系,计算表达式为:
从车辆坐标到世界坐标系,以里程计转换出图像特征,计算表达式为:
其中,[Ro,t0]为里程计的位姿值。
4.根据权利要求3所述的一种语义视觉SLAM地图构建方法,其特征在于,步骤S4的具体实现方法包括如下步骤:
S4.1、对步骤S3.2得到的特征投影的特征点进行局部建图,帧图分为两部分,左框图为局部图,右框图为全局图,局部建图由一系列迭代扫描结构构建,其中包含扫描位置和子卡信息的信息,得到局部子地图;
S4.2、使用ICP点云匹配算法对步骤S4.1得到的局部子地图进行要素点匹配,若帧是第一帧,则通过IMU进行初始化,然后进行IMU预积分,然后将相机的相对姿势内存***到内存中以进行回环检测和全局优化,回环检测的计算表达式为:
其中,为局部子地图的位姿,i为m中的任意一个,/>为相机的位姿,j为n中的任意一个,ξij为局部子地图坐标系下特征点的位姿,相应的协方差矩阵用∑ij表示,E为残差,ρ为优化系数;
残差E的计算公式如下:
局部子地图的位姿以及相机的位姿在前端取得,ξij由回环相机匹配取得;
全局优化根据共视点的3D坐标与相机内参矩阵,利用PnP计算位姿R、t,特征点在第二帧图像上的投影,通过R、t和摄像机的投影模型进行计算,通过投影建立函数对位姿进行优化,重投影误差是指在影像平面上真实三维空间点的投影与重投影之间的差值,将差值和最小化,得到相机参数的最佳化和三维空间点的坐标;
然后从车辆坐标到世界坐标系,以里程计转换出图像特征,计算表达式为:
其中,[Ro,t0]为里程计的位姿值;
S4.3、步骤S4.2中的回环检测和全局优化作为滑动窗口的先验信息对滑动窗口进行优化,然后利用因子图优化IMU预积分生成位姿的IMU因子和视觉里程计因子得到最终的位姿,生成轨迹图。
5.根据权利要求4所述的一种语义视觉SLAM地图构建方法,其特征在于,步骤S4.2的回环检测和全局优化过程构建词袋模型,具体实现方法包括如下步骤:
S4.2.1、使用K-means方法构建字典,在特征点的所有属性上创建一个字典,在根节点位置将全部节点设置成k类,根据k类创建所有特征点的第一层聚类,然后把第二层和后续的每一层进行聚类,得到叶子节点,组成单词,得到k叉树模型;
S4.2.2、以步骤S4.1构建的k叉树模型为基础,将所有对象划分为d层,每层有k个节点树,包含的最大dk个字数,当输入一个图像时,将图像的特征点与聚类层的每个聚类进行比较,最后将图像的所有点分类为单词;
S4.2.3、将步骤S4.2.2得到的构建字典的图像利用TF-IDF方法进行校正图像中对象点的权重,定义图片A中第i个特征点在字典中检查叶子节点的单词,记为a,以及图片A中出现的单词的次数为ni次,所有特征点在图像A中出现的总数为na次,定义字典中所有单词数量为n,单词的权重为ηi,其中的关系表达式如下:
ηi=TFi×IDFi
其中,IDFi为逆文本频率指数,TFi为单词在图像中在本帧图像中出现的次数;
S4.2.4、利用步骤S4.2.3得到的字典中存在共识点则其图片描述表示为相同向量,解算图片的相似度,计算公式为:
其中,b为对比图片,w为,S(a,b)为图片相似度。
6.一种电子设备,其特征在于,包括存储器和处理器,存储器存储有计算机程序,所述的处理器执行所述计算机程序时实现权利要求1-5任一项所述的一种语义视觉SLAM地图构建方法的步骤。
7.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1-5任一项所述的一种语义视觉SLAM地图构建方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310773986.5A CN116817887B (zh) | 2023-06-28 | 2023-06-28 | 语义视觉slam地图构建方法、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310773986.5A CN116817887B (zh) | 2023-06-28 | 2023-06-28 | 语义视觉slam地图构建方法、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116817887A CN116817887A (zh) | 2023-09-29 |
CN116817887B true CN116817887B (zh) | 2024-03-08 |
Family
ID=88127132
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310773986.5A Active CN116817887B (zh) | 2023-06-28 | 2023-06-28 | 语义视觉slam地图构建方法、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116817887B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117115414B (zh) * | 2023-10-23 | 2024-02-23 | 西安羚控电子科技有限公司 | 基于深度学习的无gps无人机定位方法及装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10282915B1 (en) * | 2017-12-27 | 2019-05-07 | Industrial Technology Research Institute | Superimposition device of virtual guiding indication and reality image and the superimposition method thereof |
CN111462135A (zh) * | 2020-03-31 | 2020-07-28 | 华东理工大学 | 基于视觉slam与二维语义分割的语义建图方法 |
CN114964236A (zh) * | 2022-05-25 | 2022-08-30 | 重庆长安汽车股份有限公司 | 一种针对地下停车场环境的建图与车辆定位***及方法 |
CN115774280A (zh) * | 2022-11-22 | 2023-03-10 | 哈尔滨师范大学 | 一种多源融合定位导航方法、电子设备及存储介质 |
CN116129386A (zh) * | 2023-03-03 | 2023-05-16 | 合众新能源汽车股份有限公司 | 可行驶区域检测方法、***及计算机可读介质 |
-
2023
- 2023-06-28 CN CN202310773986.5A patent/CN116817887B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10282915B1 (en) * | 2017-12-27 | 2019-05-07 | Industrial Technology Research Institute | Superimposition device of virtual guiding indication and reality image and the superimposition method thereof |
CN111462135A (zh) * | 2020-03-31 | 2020-07-28 | 华东理工大学 | 基于视觉slam与二维语义分割的语义建图方法 |
CN114964236A (zh) * | 2022-05-25 | 2022-08-30 | 重庆长安汽车股份有限公司 | 一种针对地下停车场环境的建图与车辆定位***及方法 |
CN115774280A (zh) * | 2022-11-22 | 2023-03-10 | 哈尔滨师范大学 | 一种多源融合定位导航方法、电子设备及存储介质 |
CN116129386A (zh) * | 2023-03-03 | 2023-05-16 | 合众新能源汽车股份有限公司 | 可行驶区域检测方法、***及计算机可读介质 |
Non-Patent Citations (1)
Title |
---|
逆透视映射公式的误差分析及准确度验证;曹毓等;《光子学报》;20111231;第40卷(第12期);第1833-1838页 * |
Also Published As
Publication number | Publication date |
---|---|
CN116817887A (zh) | 2023-09-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109631855B (zh) | 基于orb-slam的高精度车辆定位方法 | |
Lindenberger et al. | Pixel-perfect structure-from-motion with featuremetric refinement | |
CN111199564B (zh) | 智能移动终端的室内定位方法、装置与电子设备 | |
CN111028277B (zh) | 基于伪孪生卷积神经网络的sar和光学遥感图像配准方法 | |
Schonberger et al. | Structure-from-motion revisited | |
CN104200523B (zh) | 一种融合附加信息的大场景三维重建方法 | |
Sun et al. | A dataset for benchmarking image-based localization | |
KR20220053513A (ko) | 이미지 데이터 자동 라벨링 방법 및 장치 | |
CN104616247B (zh) | 一种用于基于超像素sift航拍地图拼接的方法 | |
CN111968177A (zh) | 一种基于固定摄像头视觉的移动机器人定位方法 | |
CN116817887B (zh) | 语义视觉slam地图构建方法、电子设备及存储介质 | |
CN114581887B (zh) | 车道线的检测方法、装置、设备和计算机可读存储介质 | |
CN110544202B (zh) | 一种基于模板匹配与特征聚类的视差图像拼接方法及*** | |
CN112198878A (zh) | 一种即时地图构建方法、装置、机器人及存储介质 | |
CN114140527A (zh) | 一种基于语义分割的动态环境双目视觉slam方法 | |
CN113936047A (zh) | 稠密深度图生成方法及*** | |
KR102249381B1 (ko) | 3차원 영상 정보를 이용한 모바일 디바이스의 공간 정보 생성 시스템 및 방법 | |
CN115346016A (zh) | 点云模型处理方法、装置及可读存储介质 | |
CN112148817B (zh) | 一种基于全景图的slam优化方法、装置和*** | |
CN117053779A (zh) | 一种基于冗余关键帧去除的紧耦合激光slam方法及装置 | |
CN116734834A (zh) | 应用于动态场景的定位建图方法、装置和智能设备 | |
CN114563000B (zh) | 一种基于改进型激光雷达里程计的室内外slam方法 | |
CN116129386A (zh) | 可行驶区域检测方法、***及计算机可读介质 | |
CN110135474A (zh) | 一种基于深度学习的倾斜航空影像匹配方法和*** | |
CN114170077A (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 |