

RM 教程列表
伴随着事务的繁忙以及时间的紧张,RoboMaster 视觉组的教程已经再难亲力亲为,在这里汇总一条正确的路线,充分引用、复用已有内容,并给出一些建议。
前言#
本教程作为西安交通大学 RoboMaster 视觉组教程的个人列表,旨在为视觉组的新生提供一个正确的学习路线,并给出一些建议。
本教程面向完全零基础的视觉组新生,如果你已经对计算机视觉以及教程中提及的计算机知识具有部分的了解,那么可以跳过对应的部分。尽管计算机视觉并非计算机知识的初级内容,然而 RoboMaster 作为具有一定深度但是同样面向 Junior 的竞赛,其内容对于初学者来说保持在具有一定的难度但并非不可接受的程度,在经过系统的若干月的学习之后,你将能够掌握视觉组所需要的知识。
不过有必要提及的是,RoboMaster 比赛的性质绝非其他正常「水赛」,需要你花费你学期中的大量时间,甚至耗费你的假期以及课内时间,尽管带来的成长也是毋庸置疑的,但是还是要做好心理准备。
本教程仅给出最小完全掌握知识所需要的内容。
基础知识#
基础知识部分可以 Follow 致新生的你 博客,读者需要掌握基本的技能,包括:
- 基础计算机知识(参考 你缺失的那门计算机课 ↗)
- 基础数学知识,包括高等数学与线性代数,可以使用课内教材自学
- Markdown 语法,参考 Markdown 语法 ↗
- C++,参考视觉组相关教程,文字版于 C++ 教程博客,视频版见 Bilibili ↗
这些内容不会在线下的培训中涉及,但是是视觉组学习的基础,需要读者自行学习。
Linux#
视觉组需要基于 Linux 系统进行开发,因此你需要掌握基本的 Linux 知识,可以参考 安装 Ubuntu 双系统 安装双系统,或者在 Windows 之中一键安装 WSL。
更多的 Linux 以及进阶的计算机相关知识可以参考 The Missing Semester of Your CS Education ↗,同时 Linux 101 ↗ 可以作为拓展阅读。
在安装了 Linux 之后,读者可以尝试配置 CMake 以及对应的 CPP 开发环境,可以参考 CMake 教程。
ChatGPT#
使用 GPT 在内的大模型服务可以帮助读者快速学习新知识,并且完成视觉组相关任务。读者如果可以直接订阅海外服务,建议直接使用 Gemini 或者 ChatGPT 的服务,同时在访问或者支付受限的情况下,可以选择 使用转发站,国内模型更次之。
计算机视觉#
计算机视觉是视觉组的核心内容,需要读者掌握基本的计算机视觉知识,主要为 OpenCV 相关内容,并且完成视觉组相关任务。OpenCV 的绝大多数内容均可以使用 ChatGPT 进行辅导。
ROS#
ROS,即 Robot Operating System,是机器人领域的通用框架之一,主要提供了 TF、rviz 以及 ROS 通信等链路,可以通用接口,教程后续补上。