分享我们战队算法组同学的任务规划

学习任务总览:定位与目标

一、学习任务总览:定位与目标

RobotMaster算法组的核心目标是构建竞技机器人的“自主感知 - 决策 - 控制”能力,支持机器人在比赛场景中实现“环境探索(SLAM)→ 目标锁定(自动瞄准)→ 精准移动(导航)”闭环。

学习任务以“理论筑基→技术攻坚→系统集成”为递进逻辑,六大模块分工与关联如下:

  • 基础层:机器学习(数据驱动决策基础)、深度学习(复杂任务建模核心);
  • 感知层:计算机视觉(目标与环境信息提取)、SLAM导航(自身定位与环境建模);
  • 控制层:自动瞄准(目标精确对准);
  • 集成层:ROS2(全模块数据流转与功能集成平台)。

二、分模块学习任务详解

模块1:机器学习(基础理论层)

1. 学习目标

掌握数据驱动的决策方法,能利用传统机器学习算法解决机器人场景中的“分类、回归、聚类”问题,为复杂任务(如目标识别、传感器数据降噪)提供基础模型支撑。

2. 核心学习内容

  • 数据预处理:特征归一化/标准化、缺失值处理、异常值检测。
  • 经典算法:
    • 分类:SVM、随机森林、逻辑回归(目标类别判断,如“敌方机器人/障碍物”分类);
    • 回归:线性回归、梯度提升树(传感器数据拟合,如“电机转速-力矩”关系建模);
    • 聚类:K-Means、DBSCAN(无标签场景分组,如比赛场地区域划分)。

模块2:深度学习(进阶建模层)

4. 学习目标

掌握深度神经网络的建模逻辑,能利用CNN、Transformer等模型解决机器人“高维数据处理”问题(如复杂场景目标检测、SLAM特征提取),为感知层任务提供高精度算法支撑。

5. 核心学习内容

  • 网络基础:CNN(卷积/池化层、Backbone架构如ResNet)、损失函数(交叉熵、MSE)、优化器(Adam、SGD)。
  • 核心任务模型:
    • 目标检测:YOLOv8(实时性优先)、Faster R-CNN(高精度优先);
    • 语义分割:U-Net(场景像素级分类,如“比赛场地/障碍物/目标区域”分割);
    • SLAM优化:深度学习回环检测(如基于CNN的特征匹配)。

模块3:计算机视觉(感知层核心)

7. 学习目标

掌握“从图像/点云数据中提取环境与目标信息”的技术,为SLAM导航提供环境特征、为自动瞄准提供目标位置,是连接“数据”与“决策”的关键环节。

8. 核心学习内容

  • 传统视觉技术:图像滤波(高斯滤波、中值滤波)、特征提取(SIFT、ORB)、相机标定(张正友法)。
  • 3D视觉技术:RGB-D相机深度数据处理(如深度补全)、激光点云分割(PCL库欧式聚类、RANSAC平面提取)。
  • 多传感器融合:图像与激光点云配准(如ICP算法)、数据时间同步(ROS2时间戳对齐)。

模块4:ROS2(系统集成层)

10. 学习目标

掌握ROS2作为“算法集成平台”的核心能力,实现机器学习、SLAM、自动瞄准等模块的“数据流转与功能调用”,是机器人系统的“技术中枢”。

11. 核心学习内容

  • 基础架构:节点/话题/服务通信、QoS策略(可靠性/实时性配置)、参数服务器。
  • 功能包开发:Colcon构建工具、Launch文件编写、自定义消息(如目标3D坐标消息)。
  • 常用功能栈:Navigation2(导航栈)、AMCL定位、A*规划、rviz2可视化、rosbag数据录制。

模块5:SLAM导航(运动决策层)

13. 学习目标

掌握机器人“未知环境建图”与“基于地图自主移动”能力,支撑比赛中机器人“探索场地→到达目标区域→避障绕行”核心需求。

14. 核心学习内容

  • SLAM核心模块:
    • 前端:激光SLAM(GMapping快速建图、Cartographer高精度建图)、视觉SLAM(ORB-SLAM3抗动态场景);
    • 后端:图优化(g2o/Ceres Solver)、回环检测(词袋模型/深度学习匹配);
    • 地图表示:栅格地图(导航用)、点云地图(精细场景用)。
  • 导航核心模块:
    • 定位:AMCL(自适应蒙特卡洛定位,匹配地图与当前位姿);
    • 规划:全局规划(A*、Dijkstra,从起点到终点)、局部规划实现1秒内避障;
    • PID控制。

模块6:自动瞄准(核心控制层)

16. 学习目标

掌握机器人“目标实时锁定→精准对准”能力,支撑比赛中“瞄准敌方机器人/关键部位”的核心需求,实现“检测→跟踪→控制”闭环。

17. 核心学习内容

  • 瞄准全流程技术:
    • 目标检测:YOLOv8(快速锁定)、激光点云检测(抗光照干扰);
    • 目标跟踪:DeepSORT(遮挡后重关联)、卡尔曼滤波(预测目标运动);
    • 姿态控制:PID(云台/机械臂角度调节)、弹道补偿(远距离重力/风速补偿)。
  • 抗干扰优化:
    • 多目标优先级排序(如“敌方核心部位>普通部位”)、动态阈值(避免误触发)。

三、模块间技术关联与集成目标

19. 核心技术链路

20. 阶段集成目标

  • 基础阶段(第4周):完成“ROS2 + 计算机视觉”集成,实现目标检测与可视化,检测帧率≥30fps,rviz2实时显示目标框。
  • 进阶阶段(第8周):完成“SLAM + 导航”集成,实现自主建图与避障,建图误差≤5%,导航避障成功率≥90%。
  • 终阶阶段(第12周):完成“SLAM + 导航 + 自动瞄准”全系统集成,机器人从建图→导航到目标区域→瞄准,全流程成功率≥80%。

四、学习资源与产出要求

21. 核心资源

  • 理论:《概率机器人》(SLAM)、《深度学习》(Goodfellow)、《ROS2实战》;
  • 工具:PyTorch/TensorFlow(深度学习)、OpenCV/PCL(视觉)、Navigation2/SLAM Toolbox(ROS2功能栈);
  • 实战:RobotMaster比赛数据集(自定义标注)、TurtleBot3/比赛机器人底盘(硬件测试)。

22. 产出要求

  • 每个模块:提交“学习笔记 + 代码仓库(含注释)+ 测试报告”;
  • 集成阶段:提交“系统设计文档 + 演示视频 + 问题复盘报告”;
  • 最终:形成可复用的“RobotMaster算法工具箱”(含SLAM、瞄准、导航核心代码与配置)。

2d slam 现在无脑cartographer就行;
后面定位也不用amcl,直接莽carto的pure localization;
精度高,稳定度好.
nav2也开箱即用,换换规划器,都是中等偏上可用的水平.

好的谢谢指点,目前还在改善中