ROBOMASTER机甲大师赛视觉组学习方案2023更新第一版

news/2024/11/8 22:41:38/

ROBOMASTER机甲大师赛视觉学习方案

    • 技能更新
    • 硬件平台
    • 环境配置
    • 仓库地址

还在学校的时候我写 ROBOMASTER机甲大师赛视觉组学习方案这篇博客,没想到两年以后还有同学会来时不时的收藏,现在工作后回过头再来看发现有一些东西比较旧了所以更新这篇博客,后面我还会维护一个github仓库,里面放一些可能会用到的文件、链接或者PDF。

技能更新

  • C++/python程序语言学习
  1. c++推荐书籍 C++ Primer Plus ;
  • 网站 https://zh.cppreference.com/w/cpp/language
    这个网站可以用来查询很多C++的用法,是官方文档的中文版,当然也可以看英文版。打好C++基础对工作面试是大有好处的,提升自己对于语言实现细节的掌握。
  • 软件可以使用vscode + 拓展的方式,python、c++均可。之前Python的版本现在来看有点低,目前推荐python3.7/3.8,新版本有很多新的特性。
  1. Ubuntu操作系统
    ubuntu系统目前推荐主流18.04、20.04,工业界开发目前用的版本是这样。
    学习推荐鸟哥私房菜
  2. 机器学习与深度学习方面
  • 之前推荐了一些机器学习的课程也可以看但机器学习其实还是比较基础,目前最新的方向还是LLM,深度学习,多模态之类,slam方向也不错,要了解一些当下最新最热的方向。

  • 可以了解一些激光slam和视觉slam的开源算法,大模型就不要想了

  • 深度学习方面主要用到的应该还是yolo,不知道现在的队伍会不会上激光雷达吧。yolo系列现在yolov5,yolox,yolov6,yolov7,yolov8,算是很庞大了,有需求之前从github clone下来按网上教程应该都能跑通。但是我们之前的用法只是在工控机上再搭建一个虚拟环境去跑,但在工业应用上是需要专门有人对模型进行优化和部署的,如果你有使用TensorRT,那你的模型运行速度有可能会比在pc端运行快上数倍。

  • 学习推荐建议先学好numpy和pytorch的基础操作

  1. 操作软件
    anaconda、cmake、jupyter、vscode、teamviewer、向日葵

  2. 摄像头
    熟悉坐标变换、畸变矫正,面试会考

  3. ROS机器人操作系统
    ros做机器人会用到,但自动驾驶其实不会用。目前用ROS做一些建图定位导航的任务很多本科生都可以做。移动底盘加上机械臂能用ROS控制起来去完成任务就可以申请很多学生项目了,会用ROS应该已经是一项烂大街的技能了吧。不过ROS2还是可以了解一下的,封装节点,收发消息。重要的是了解ros实现这些功能的算法原理,运动学求解,slam定位算法怎么推,这些是有价值的。

  4. 要会写cmake,我会把学习文件上传到github仓库

硬件平台

之前的硬件推荐有些旧了,推荐一些主流的

  1. nvidia系列
    直接去nvidia官方看比较新的边缘设备有哪些吧,orin、nx、xavier、nano新设备算力都很强
  2. intel系列
    英特尔NUC是极为友好的计算平台,许多参赛队伍都有使用,可以安装黑苹果,windows,Ubuntu等系统。对于NUC它拥有强大的cpu,但是个人尝试在其上面运行yolov3模型纯CPU跑,视频帧率极低。并不了解其他参赛队的使用方式。但是NUC对于机甲大师来说其性能是绝对够用的,不够的很大原因可能来源于使用者自身。
    该链接为加州伯克利大学 Robomaster视频,使用设备为NUCI5
    加州伯克利大学 Robomaster

环境配置

在计算机视觉的学习和使用过程中最最麻烦和最应该担心的事情就是环境配置的问题,学习语言和程序编写相对于此则更为容易一下,环境配置难在他的不确定性太多。
目前建议:
纯ubuntu,工作以后是不会用到windows的

仓库地址

https://github.com/sxs505/Robomaster_Learning_world


http://www.ppmy.cn/news/40518.html

相关文章

企业IM即时通讯软件需要具备哪些功能?

随着互联网的普及,即时通讯软件也渗透到了人们的日常生活和工作当中,而市面上的即时通讯软件现在有分为两种,一种是个人社交沟通软件,另外一种则是企业即时通讯。企业即时通讯软件是为了让企业内部方便沟通、管理及办公&#xff0…

Linux运维进阶之路

前言 首先在我看来,不论你以后是做运维亦或者是做后端开发,云计算等。只要和后端搭边,Linux都是必会的基础知识。所以说Linux是伴随我们工作中一个特别重要的知识。 不过很多同学在初学Linux的时候,始终不得其法,发现…

【分布式版本控制系统Git】| 国内代码托管中心-Gitee、自建代码托管平台-GitLab

目录 一:国内代码托管中心-码云 1. 码云创建远程库 2. IDEA 集成码云 3. 码云复制 GitHub 项目 二:自建代码托管平台-GitLab 1. GitLab 安装 2. IDEA 集成 GitLab 一:国内代码托管中心-码云 众所周知,GitHub 服务器在国外&…

去年12月被无情辞退,三个月后我携手自动化测试神技王者归来

引言 不知不觉在软件测试行业工作了3年之久,虽然说我是主做的功能测试,但是我也一直是兢兢业业的呀,不曾想去年7月份无情被辞的消息让我感到一阵沉重。我曾经一直坚信自己的技能和经验足以支撑我在这个领域的未来,但现实却告诉我&…

【Linux入门篇】四种软件查看、安装、卸载方式

目录 🍁rpm方式 🍁yum方式 🍁源码编译方式 🍁二进制安装 🦐博客主页:大虾好吃吗的博客 🦐专栏地址:Linux从入门到精通 rpm方式 优点:无需网络安装软件 缺点&#xff1a…

【Emuelec】emmc刷写工具ceemmc原理分析

ceemmc是emuelec官方闭源的刷入emmc的工具,但在4.3以后就官方不提供了,好在旧版本的ceemmc是二进制程序,放到新系统上也能用,于是乎分析其工作原理,自己折腾,自己将4.5游戏系统刷入emmc的一点经验总结&…

Python json详解

一、抓取文本数据 结构化数据:json,xml(极其的稀少) 。直接转化为python类型 非结构化数据:HTML,字符串。正则表达式、xpath 二、JSON简介 JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式, 它使得人们…

C++模板类精讲:探索通用编程的魅力与实战应用

C模板类精讲:探索通用编程的魅力与实战应用1.引言1.1 C模板的概念与作用1.2 模板类在现代C编程中的重要性1.3 模板类在各领域的应用案例2.模板类基础2.1 模板类的定义与语法2.2 模板类的实例化2.3 模板类的特化与偏特化3.模板类与构造函数3.1 模板类中的构造函数3.2…