REF:面向动态场景的视觉 SLAM 算法研究
1. 基础概念
-
视觉SLAM:利用视觉传感器实现同时定位与建图,应用于机器人、自主驾驶和AR/VR等领域,核心由前端感知与后端优化协同构成,前端通过特征提取与匹配(ORB、SIFT)或直接方法(DSO)估算帧间相机位姿,生成初步的关键帧与稀疏特征点,后端利用位姿图优化和回环检测,基于非线性优化(BA)减少累计误差,确保轨迹和地图的一致性与精确性

-
三维重建:一项通过分析和处理从不同视角拍摄的二维图像来重建物体或场景三维结构,应用于计算机视觉、机器人学、医学成像、虚拟现实和增强现实等领域,核心基于多视角几何(Multi-view Geometry),常用方法包括立体视觉(Stereo Vision)、结构光(Structured Light)、激光扫描(Laser Scanning)以及基于图像序列重建(Structure from Motion):
-
参数优化阶段,结合神经网络与梯度下降法,端到端联合优化高斯分布的位置、协方差、颜色及透明度参数,同时引入自适应密度控制策略,根据场景复杂度动态增删高斯元素,实现计算资源与重建精度的均衡。
-
完成模型训练后,采用可微分光栅化技术将三维高斯分布投影至二维图像平面,通过视锥体层级筛选与基于分块的并行计算策略,高效实现高斯权重累加与像素混合。
-
后处理阶段,进一步通过各向异性滤波消除高频伪影,并采用动态分辨率分块技术对高细节区域进行超采样,最终生成具有景深模拟、动态模糊等高保真多视角渲染图像
-
立体视觉:模拟人类双眼的视差,利用两台摄像机从不同视角拍摄场景图像,并通过三角测量推算三维点的深度信息,成本较低但对光照和纹理条件要求较高

-
结构光:投射光栅图案并捕获其变形来计算三维结构,适用于高精度的静态场景重建,但不适合大规模或动态场景
-
激光扫描:激光测距原理提供高精度三维数据,广泛应用于建筑测绘和考古领域,设备成本较高且扫描速度较慢
-
基于图像序列重建(SfM):分析图像序列,估算摄像机运动参数和稀疏点云模型
-
融合SfM与MVS:首先SfM处理输入图像序列,完成摄像机姿态估计和稀疏点云构建,然后利用MVS技术对每幅图像进行像素级深度推断,并通过深度融合生成密集点云
-
3D Gaussian Splatting(3DGS):引入连续可微的高斯分布模型,分为多阶段协同优化的范式。首先,基于SfM从多视角图像序列中恢复稀疏点云,构建场景的初始几何骨架后,高斯化建模将离散点云转化为概率分布模型,每个高斯体的协方差矩阵由局部几何特征推导。
-
-
MobileSAM 模型:一种基于提示的视觉基础模型,旨在将感兴趣的目标从背景中分割出来。MobileSAM通过解耦蒸馏的方法,用轻量级的图像编码器替代原本SAM模型中的重量级图像编码器(ViT-H),并迁移到一个轻量化的编码器上,同时确保其与原始的掩码解码器保持高度兼容

-
BRIEF算法:ORB采用BRIEF算法计算一个特征点的描述子(通过FAST算法得到特征点后,需要描述这些特征点的属性,这些属性称之为该特征点的描述子),通过在关键点P的周围以一定模式选取N个点对,把这N个点对的比较结果组合起来作为描述子。

-
特征点检测算法:通过图像中的特征点进行位姿估计,包含特征提取、特征匹配、位姿估计和优化等步骤,通常通过算法(如SIFT、
SURF、ORB等)从图像中提取,接着通过匹配算法(如暴力匹配或FLANN)找到连续图像中的匹配特征点对,利用这些点来估计相机的位姿,并通过全局优化(如束调整)提升位姿估计的准确性。
-
FAST(Features from Accelerated Segment Test):通过像素强度比较的方法实现高效角点提取,找到那些在局部区域内(半径3)具有差异的点,具体就是将一个像素点与其周围的一组像素点进行比较,如果该点与其周围大部分像素点的特性差异明显,就将其判定为特征点。
-
SIFT(Scale-Invariant Feature Transform):采用高斯金字塔生成多尺度空间并进行特征点检测,具有较强的鲁棒性,可处理图像的缩放、旋转以及光照变化,适用于复杂环境下的特征匹配,如图像拼接和目标识别
-
SURF (Speeded-Up Robust Features):在SIFT的基础上进行了优化,利用积分图加速Hessian矩阵的计算,同时采用了快速的描述子计算方法,具备与SIFT相当的鲁棒性,但计算速度更快,适合实时特征检测和跟踪任务
-
ORB (Oriented FAST and Rotated BRIEF):综合了FAST和BRIEF(Binary Robust Independent Elementary Features),采用方向性处理增强旋转不变性,同时利用二进制描述子提高匹配效率,是一种轻量级的特征检测和描述算法,广泛应用于资源受限的场景,如移动机器人导航和增强现实
-
-
光束平差(BA)方法:通过调整特征点的投影误差,最小化重投影误差,从而优化摄像机的位姿和三维点的估计
2. 剔除动态物体
通过剔除动态物体,有效排除运动干扰因素,使系统在静态特征上获得更稳定的约束关系,从而显著提升了位姿估计的准确性,并减少了因误匹配导致的重定位误差

-
传统 YOLOv8 模型:设计目标是实现高效且准确的目标检测,尤其适用于实时处理任务,通过一个神经网络直接预测图像中的物体类别与位置
-
构建SE-DS Conv(Squeeze-and-Excite Depthwise Separable Convolution):结合深度可分离卷积(Depthwise Separable Convolution)和SE模块(Squeeze-and-Excitation),SE模块的加入可以动态调整特征图各通道的重要性,提高网络对关键特征的关注,提升模型的表达能力

-
构建Enhanced Triplet Attention:整合SE-DS Conv模块与Triplet Attention 机制,从图像的高度、宽度和通道三个维度分别应用注意力机制,捕获特征依赖关系,增强了模型对空间和通道之间的相关性更加敏感

-
构建C2f-ETriple:整合Enhanced Triplet Attention与C2f模块,C2f的原始结构没有发生改变,单纯将C2f模块与Enhanced Triplet Attention模块相加构建C2f-ETriple,并将其集成至YOLOv8的Backbone结构
-
引入CWAM模块(Channel-Wise Attention Modulator):CWAM模块用于特征增强的注意力机制网络模块,结合了通道注意力和空间注意力,通道注意力路径聚焦于重要特征通道,空间注意力路径捕获目标区域的空间分布信息,最终通过特征融合提升表达能力,将WAM注意力模块集成至Neck部分,最终形成优化版YOLOv8网络


3. 点云地图优化
基于ORB-SLAM3算法,结合上一节的动态物体剔除策略,实现在动态环境中的高精度静态地图构建,SLAM流程如下:


-
点云地图初始化:根据单应矩阵(本质矩阵)和基础矩阵得到相机的相对位姿,三角化技术处理得到 3D 地图点的构建,完成地图初始化任务。单应矩阵比本质矩阵更直观,直接用于两幅图像的几何变换,简化了匹配点之间的关系推导,但仅适用于场景中的所有点共面

-
重叠度检测:当前关键帧与局部地图中保存的关键帧进行比较,检测与已保存关键帧的重叠程度,如果当前关键帧与已保存关键帧有大量重叠,那么将当前关键帧标记为冗余关键帧。
-
深度信息检测:深度相机有一个有效的测量范围,如果当前关键帧中大量像素点的深度信息不在有效测量范围内,那么不使用当前关键帧生成点云(当被测物体的距离超出测量范围时,深度信息可能出现较大偏差)。
-
动态目标检测:针对场最中的非静态物体,利用动态检测模型(YOLOv8和MobileSAM)对动态物体进行标记,并通过动态权重因子调整动态物体对整体优化目标函数的影响,以便有效减少动态物体对位姿估计的干扰
-
动态点滤波优化:环境中存在大量动态物体,在YOLOv8和MobileSAM进行动态点去除后,仍可能残留部分动态点需要去除,,在地图构建的最后阶段,使用优化的K-means滤波算法,以进一步消除残余的动态点,提高SLAM系统的鲁棒性。
-
传统K-means算法:初始质心选择依赖于随机初始化,可能导致算法陷入局部最优解,默认使用标准欧氏距离,在动态物体检测中,不同特征可能在空间中重要性不一致
-
基于密度的初始化:在数据点分布较为集中的区域选择初始质心
-
加权欧式距离:使用加权欧氏距离作为新的距离度量方式,通过调整不同特征的权重,可以加强对重要特征的关注,提高聚类效果
-
增加提前停止:在每次迭代中,当质心变化的幅度小于设定的阈值时,算法将提前停止,避免了不必要的计算开销
-
多次初始化:通过多次初始化,选择最优的聚类结果作为最终结果,有效减少了聚类过程中的随机性,确保了较为稳定的聚类效果。
-