视频课程 编程

视觉SLAM系统实战与自建 (英文课程中文字幕)

¥5.00 已售 0
✓ 自动发货 ✓ 永久有效 ✓ 售后保障

资源介绍

视频数量:29个 总时长:2小时13分 课程介绍: 视觉SLAM系统实战与自建 当你把相机交给计算机,它看到的不只是连续的图片,而是无数个关于位置、方向和距离的问题:机器人现在走到哪里?刚才看到的场景是否曾经出现过?画面突然丢帧后,系统还能不能找回原来的位置?这门课就从这些问题出发,带你真正运行、测量并改造视觉SLAM系统。 课程围绕ORB-SLAM3、RTAB-Map和自建流水线展开,共29个视频,总时长约2小时13分。它不是只演示软件按钮怎么点,而是把安装、数据处理、参数配置、运行日志、精度评估和系统扩展串成一条完整路径。学习者会先跑通两个真实系统,再理解它们各自的工作方式,最后动手写出自己的小型视觉SLAM程序,并用ROS 2把它接入更完整的机器人系统。 一、课程准备与环境搭建: 开篇先说明如何安排学习节奏,并介绍整套课程要完成的任务:运行ORB-SLAM3和RTAB-Map,在公开数据上比较它们的轨迹误差、跟踪速度和回环表现,然后编写自己的C++程序、ROS 2节点以及简化版SLAM流水线。 课程使用TUM RGB-D数据演示视觉里程计和SLAM。视频会解释数据目录中的彩色图像、深度图、相机参数和时间戳关系,介绍如何处理图像与深度数据之间的关联问题。这里讲的不是抽象概念,而是解决实际运行时经常出现的文件找不到、时间戳对不上、数据顺序混乱等问题。 同时,课程会介绍ATE,也就是绝对轨迹误差。运行结束后,怎样把估计轨迹和真实轨迹放在一起比较?误差数字代表什么?轨迹看起来重合,为什么仍然可能有明显偏差?掌握这些评估方法,才能判断系统是真的运行稳定,还是只是画面看起来没有崩溃。 环境准备部分强调逐条命令安装和验证,配套脚本会检查依赖、目录、数据和程序状态。课程内容可放在CPU上运行,不需要GPU、摄像头或实体机器人,适合希望先在电脑上复现实验的学习者。基础要求包括Python、C++基础、ROS 2话题,以及针孔投影、PnP、三角化和光束法平差的基本概念。 二、ORB-SLAM3实战: 第一部分从第一次运行ORB-SLAM3开始,讲解RGB-D数据如何输入、程序如何启动、输出文件应该放在哪里。初次跑通系统只是起点,接下来还要逐项阅读Settings YAML配置,理解相机参数、特征数量、跟踪阈值、深度比例和尺度设置分别会影响什么。 课程特别讲解ORB-SLAM3的三个主要线程:跟踪线程负责持续定位,局部建图线程维护局部地图, 回环和地图管理线程处理全局一致性与地图合并。通过分析阶段耗时,可以判断瓶颈究竟在图像处理、特征匹配、局部优化,还是全局优化,而不是遇到运行缓慢时只凭感觉修改参数。 单目运行部分会专门讨论尺度问题。没有深度信息时,相机运动可以相对准确地算出来,但绝对尺度往往无法直接确定。课程会把这一限制讲清楚,并说明RGB-D模式为什么更容易得到具有实际尺度的轨迹。 特征调优部分围绕ORB特征展开:提取数量太少会导致跟踪不稳,数量过多又会拖慢计算。通过观察匹配数量、跟踪状态和运行时间,逐步找到适合数据与硬件的平衡点。 后面的内容处理真实工程中经常遇到的异常情况。视频会从序列中人为移除连续帧,模拟遮挡、时间间隔和跟踪中断,然后阅读真实日志。日志中的“无法跟踪局部地图”“重新定位”和“检测到地图合并”等信息,对应ORB-SLAM3的状态变化。理解这些状态后,面对画面丢失、相机抖动或系统进入新地图时,就能知道问题发生在哪一层。 回环实验使用包含绕行路径的序列,展示系统识别重复场景、连接不同片段并修正轨迹的过程。课程还会讲解如何保存Atlas地图和轨迹文件,为后续评估、复现实验或接入其他模块准备数据。 三、RTAB-Map实战: RTAB-Map部分从图结构、内存管理和回环机制讲起,重点解释它如何把关键帧、节点、连接关系和地图数据组织起来。与ORB-SLAM3相比,它更强调长期地图、数据库以及多会话地图的保存与管理,这正是理解RTAB-Map工作方式的关键。 课程会完成第一次RTAB-Map运行,查看数据库的生成过程,并进入数据库内部观察关键帧、词袋表示、地图数据和回环相关信息。随后筛选真正影响结果与效率的参数,例如检测阈值、匹配策略、内存管理、地图优化和可视化选项,避免陷入逐项盲调。 RTAB-Map在ROS 2中的使用也会完整演示,包括数据录制、回放、节点启动和参数传递。课程还会介绍无界面导出地图的方法,让地图处理不再依赖特定图形界面,方便自动化实验、批处理和服务器部署。 最后,同一组TUM数据会分别交给ORB-SLAM3和RTAB-Map,比较轨迹质量、运行表现和回环行为。两种系统没有简单的“谁更好”,更合理的方式是结合硬件、实时性、地图需求和后续开发成本进行选择。 四、从零构建简化视觉SLAM: 自建流水线部分从Mini VSLAM架构开始,把系统拆成前端、视觉里程计、关键帧与局部地图、后端优化、地图存储和回环检测等模块,同时明确哪些复杂功能暂时被省略,以及省略后会对效果产生什么影响。 前端部分讲解ORB特征提取与匹配,并通过PnP求解相机位姿。关键帧模块负责选择重要画面、维护局部地图和相邻帧关系。局部BA,也就是局部光束法平差,会被用于同时优化相机位姿和地图点位置,降低相机移动与特征噪声带来的累计误差。 回环检测采用词袋模型,对当前场景的历史特征进行检索和匹配,识别相机是否回到了曾经访问过的位置。完成这条流水线后,再与ORB-SLAM3对照,能够更清楚地看到成熟系统还增加了哪些机制,也能把前面的工程经验转化为自己的代码结构。 五、开发、调试与扩展: 最后一部分进入真实开发场景。学习者会编写自己的C++程序链接ORB-SLAM3,通过CMakeLists.txt完成构建,并进一步创建一个围绕ORB-SLAM3的ROS 2节点,处理数据订阅、结果发布和节点配置。这两步能帮助你从“运行示例”跨到“开发功能”。 故障诊断部分不只给出一串报错,而是演示如何检查数据输入、时间戳、传感器配置、跟踪日志、地图状态和轨迹结果,从现象反推原因。课程收尾还会给出后续学习方向,帮助你继续补充C++、ROS 2、传感器融合、地图优化与机器人部署。 完成课程后,你将拥有三类实实在在的收获:能够独立部署并评估ORB-SLAM3和RTAB-Map,能够读懂跟踪、回环、重定位和地图管理等关键日志,能够基于现成系统开发自己的C++程序、ROS 2节点和简化SLAM流水线。对于计算机视觉、机器人导航、无人系统或边缘感知方向的学习者来说,这套课程把实验环境、测量方法和工程实现放在同一张清晰的地图上。