机器人入门路线及参考资料(机器人操作方向)

机器人(操作方向)入门路线及参考资料

  • 前言
  • 1 数理基础和编程
  • 2 机器人学理论
  • 3 计算机视觉
  • 4 机器人实操
  • 5 专攻方向
  • 总结
  • Reference:


前言

随着机器人和具身智能时代的到来,机器人越来越受到大家的重视,本文就介绍了机器人(机器人操作方向)的入门路线及重要参考资料,包括数理和编程基础,机器人操作,计算机视觉,机器人实操以及具体的方向突破。


1 数理基础和编程

首先需要具备的就是一定的数理基础和计算机编程能力,这两项也是工科生最先接触的知识。

数理基础包括高数,线代,概率论等。可能很多学生包括博主在内在学习这些数学课程时,并不知道这些数学知识到底和专业之间是什么关系。为了引起大家对数理基础的重视,这里简单举例说明数理知识的重要性。比如力学分析(理力,材力,流力)会用到高数,控制理论会用到高数和线代,计算机视觉会涉及矩阵和概率论,而机器人学则会涉及到以上所有技术。

在学习以上数学知识的同时,可以练习数理推导软件如Matlab,Mathematica等辅助计算,这些软件也可用于机器人的计算和仿真。

计算机编程的底层逻辑想通,按照大学培养方案,最先接触的语言是C语言,重点培养编程的逻辑和程序设计方法。在机器人工程中,用到较多的语言是C++和Python两种语言,一种语言学会之后,再学其他语言速度就会很快。

2 机器人学理论

对于机器人理论部分,首先需要具备机器人学的基础知识,如位姿表示与变换,欧拉角和RPY角,机器人的正逆运动学等。可参考的书籍为熊有伦的《机器人技术基础》。

掌握这些基本概念之后,可以针对专题进行深入研读,如规划or控制,操作or移动,工业机器人or服务机器人,不同专题涉及到的技术侧重点不同。

本文主要针对机器人操作方向,所以重点介绍一下机器人操作方向。该方向主要是研究机器人基于视觉或触觉利用末端执行器(刚性或柔性,仿人手或二指夹爪)与被操作对象进行交互(如抓取,放置,推,重定向等)的科学。
拾起盘子

人手操作(拾起)盘子的案例 [1]。

从力学角度分类可分为运动学操作,静态操作,准静态操作和动态操作,具体概念可以参考卡内基梅隆大学Mason的原著中译本书籍《机器人操作中的力学原理》。从被操作对象角度可分为刚性物体操作和柔性物体的操作,由于刚性物体操作的力锁合和形锁合假设不再适用于柔性物体的操作,所以柔性物体的操作也是当下的研究热点。

此处,也给出MIT的机器人操作课程的官方链接:Robotic Manipulation - Perception, Planning, and Control,供需要的小伙伴自学。

3 计算机视觉

计算机视觉于机器人而言就是机器人的眼睛,可用于机器人的抓取与操作,导航,人机交互等任务中。在机器人操作方面,计算机视觉主要用来识别物体的位姿和状态估计,抓取点检测等。

经典的计算机视觉任务包括图像预处理,图像的分割,图像的特征表述等。这些基本的概念需要了解,可以参考张岩等翻译的中译本书籍《计算机视觉基础》。然后在OpenCV上进行实践,OpenCV提供了丰富的C++和Python语言的API接口,可以直接调用,相关的书籍《学习OpenCV3》和其官方教程https://docs.opencv.org/4.x/d9/df8/tutorial_root.html。

接下来就是学习基于深度学习的计算机视觉,常用的套路如下 [2]:

1 学习吴恩达的《机器学习》和《深度学习》课程,了解一些机器学习的知识。
2 了解一些经典的CV模型,如Alexnet、R-CNN系列、YOLO等。
3 在github上找一些tensorflow、pytorch实现上述模型的开源代码。
4 下载VOC、ImageNet、COCO、kaggle等数据集。
5 按照开源代码中的Readme准备数据集,跑一下结果。

传统视觉和基于深度学习的视觉各有优缺点 [3, 4],在实际项目中,大多数情况下需要结合使用。

4 机器人实操

在了解以上基本概念之后,就可以上手真实机器人实践了,这里以基于ROS的机器人抓取系统为例,阐述需要掌握知识和要解决的问题。

首先,ROS(机器人操作系统)的一些基本概念要清楚,如节点,话题,功能包等基本概念,以及如何创建发布者和订阅者以及定义要发布的消息等,这些是机器人操作系统的基本通信的机制。

其次,学会使用ROS中的常用组件,如launch,rqt,rviz,rosbag等常用组件,这些组件是机器人调试时非常方便的工具。

最后,就是针对机器人类型进行建模和仿真,对于机械臂来说,ROS中已经集成了用于机械臂操作的开发平台——MoveIt,我们可以直接使用MoveIt来控制我们的机械臂。

ROS的参考资料可以参考古月居(胡春旭)的视频课程ROS入门21讲和书籍《ROS机器人开发实践》。

在掌握了ROS之后,就是在此基础上进行开发了,包括手眼标定,夹爪通信,机械臂规划等。下图所示为京东2017 JRC X机器人挑战赛上其中一个参赛队伍的机器人系统 [5],一个基于ROS开发的机器人移动操作系统。
京东机器人挑战赛

5 专攻方向

当具备基础知识和实操能力之后,就需要根据具体的专攻方向学习最新的论文,开展工程或者研究工作。如3D感知与操作,类人操作,移动操作,人机交互,柔性物体的操作等。

一般情况下,较新的方向是没有书籍的,可以先从综述开始,然后是方向密切相关文献的精读。关注专攻方向最新动态,如顶会的Workshop等,还有跟踪领域内的牛人的发文。

2024年是具身智能到来的时代,当然,具身智能也可以和机器人操作相结合,即将大模型或者Learning应用于机器人操作任务中去,具身智能的入门路线参考具身智能入门学习技术路线。

最后推荐一下机器人操作方向上的媒体号:
关于机器人操作方向,推荐公众号:机器人操作前沿动态,每周更新全球最新学术进展。
关于柔性物体的操作,推荐博客:机器人的柔性物体操作综述汇总(持续更新),汇总了近几年的柔物操作的综述文章。


总结

以上就是今天要讲的内容,本文介绍了机器人操作方向的入门路线,从数理基础和编程,到机器人学理论和计算机视觉,再到机器人的实操和方向突破,阐述了机器人操作方向所需要的知识体系并给出重要参考资料。当然,入门时,不一定要按照顺序学习,边学边应用效果更佳。

Reference:

[1] MIT机器人操作课程:Robotic Manipulation - Perception, Planning, and Control
[2] 知乎文章:计算机视觉学习路线
[3] CSDN博客:论文笔记:传统CV和深度学习方法的比较
[4] O’Mahony N, Campbell S, Carvalho A, et al. Deep learning vs. traditional computer vision[C]//Advances in Computer Vision: Proceedings of the 2019 Computer Vision Conference (CVC), Volume 1 1. Springer International Publishing, 2020: 128-144.
[5] CSDN博客:ROS下实现机器人序列任务的执行控制

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/39112.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于SpringBoot民宿管理系统设计和实现(源码+LW+调试文档+讲解等)

💗博主介绍:✌全网粉丝10W,CSDN作者、博客专家、全栈领域优质创作者,博客之星、平台优质作者、专注于Java、小程序技术领域和毕业项目实战✌💗 🌟文末获取源码数据库🌟 感兴趣的可以先收藏起来,…

13-4 GPT-5:博士级AI,人工智能的新时代

图片来源:AI Disruptive 人工智能世界正在迅速发展,新的创新和突破层出不穷。在本文中,我们将深入探讨最新的进展,从即将推出的 GPT-5 模型到 Apple 和 Meta 之间可能的合作。 GPT-5:博士级别的人工智能 虽然尚未正…

为何交易价格可能超出预期?

当你尝试执行订单时,如果收到“报价超出”的提示,这通常意味着交易无法按你的预期价格成交。对于某些交易者来说,这可能会带来一些困扰,但在外汇等流动性极高的市场中,这种情况是相当常见的。 外汇市场之所以吸引众多…

java 一键打包exe (GraalVM方式)

1.GraalVM 版本下载java地址 https://www.graalvm.org/downloads/ 这边我选择java17长期支持版本和window系统方式。 本次安装电脑window10专业版本。 2.下载好后,进行解压 tar -zxvf apache-maven-3.9.8-bin.tar.gz3.增加变量 名称:GRAALVM_HOME 路径…

Ubuntu20.04 有线网络图标消失解决方案

Ubuntu20.04 有线网络图标消失解决方案 问题描述: ubuntu20.04系统提示的software updater有软件包更新,按提示安装更新软件包,重启系统后,ubuntu系统的网络图标消失不见;无法正常上网;检查网口&#xff0…

Linux:ollama+Dify大模型本地化部署打造个人知识库 (2)

ollama大模型部署-CSDN博客文章浏览阅读26次。Ollama 是一个能在本地机器上轻松构建和运行大型语言模型的轻量级、可扩展框架,适用于多种场景,具有易于使用、资源占用少、可扩展性强等特点。https://blog.csdn.net/weixin_72819498/article/details/1400…

高效批量复制与覆盖:一键实现文件管理,轻松应对同名文件,简化工作流程

在数字时代,我们每天都在与海量的文件和数据打交道。你是否曾经遇到过这样的情况:需要批量复制文件到指定文件夹,但一遇到同名文件就头疼不已,要么手动一个个确认覆盖,要么冒着数据丢失的风险直接操作?别担…

OpenSearch的演进与语义检索技术革新

周末听了一场关于Open Search的技术分析,整理如下,供大家参考。OpenSearch,作为ElasticSearch的一个分支,不仅继承了其强大的搜索和分析能力,更在开源社区的驱动下,不断演进和创新。本文将介绍OpenSearch的…

Pythonnet能导入clr,但无法引入System模块?

【pythonnet详解】—— Python 和 .NET 互操作的库_pythonnet 详细使用-CSDN博客 Python中动态调用C#的dll动态链接库中方法_python 如何调用c# dll-CSDN博客 需求&#xff1a;Python调用并传List<float>类型参数给.Net 起初&#xff1a;直接 # 创建一个Python浮点数…

【Altium】如何处理PCB上所有焊盘被误盖油

【更多软件使用问题请点击亿道电子官方网站】 1、 文档目标 解决焊盘被误盖油的操作 2、 问题场景 所有焊盘都可以设置为盖油或不盖油&#xff0c;由于焊盘需要用来焊接元器件&#xff0c;所以都不会设置盖油。由于误操作或者创建封装时设置错误&#xff0c;造成一定数量的焊盘…

“论单元测试方法及应用”写作框架,软考高级论文,系统架构设计师论文

论文真题 1、概要叙述你参与管理和开发的软件项目,以吸你所担的主要工作。 2、结给你参与管理和开发的软件项目&#xff0c;简要叙述单元测试中静态测试和动态测试方法的基本内容。 3、结给你惨与管理和研发的软件项目,体阐述在玩测试过程中,如何确定白盒测试的覆盖标准,及如…

Hadoop权威指南-读书笔记-01-初识Hadoop

Hadoop权威指南-读书笔记 记录一下读这本书的时候觉得有意思或者重要的点~ 第一章—初识Hadoop Tips&#xff1a; 这个引例很有哲理嘻嘻&#x1f604;&#xff0c;道出了分布式的灵魂。 1.1 数据&#xff01;数据&#xff01; 这一小节主要介绍了进入大数据时代&#xff0c;面…

方正小标宋简体、仿宋GB2312、楷体GB2312字体

文章目录 下载地址所有的文件wps使用方正小标宋简体、仿宋GB2312、楷体GB2312 字体用途方正小标宋简体仿宋GB2312楷体GB2312 下载地址 【金山文档 | WPS云文档】 方正小标宋简体、仿宋GB2312、楷体GB2312 https://kdocs.cn/l/cksgHDLneqDk 所有的文件 wps使用 方正小标宋简体…

IoTDB Committer+Ratis PMC Member:“两全其美”的秘诀是?

IoTDB & Ratis 双向深耕&#xff01; 还记得一年前我们采访过拥有 IoTDB 核心研发 Ratis Committer “双重身份”的社区成员宋子阳吗&#xff1f;&#xff08;点此阅读&#xff09; 我们高兴地发现&#xff0c;一年后&#xff0c;他在两个项目都更进一步&#xff0c;已成为…

Vue 结合 Element-UI ,管理系统快速生成指南(一)

前言 Element UI 作为一个基于 Vue.js 的 UI 组件库,提供了丰富的界面元素和交互组件,大大提高了开发效率。结合这两大前端技术栈,开发者能够快速搭建出一个功能强大、界面优雅的管理系统。 由于管理系统实现流程还是相对较多&#xff0c;所以分几篇文章进行讲解 本章主要先…

TCP单进程循环服务器程序与单进程客户端程序

实验目的 理解并掌握以下内容: 网络进程标识(即套接字地址)在Linux中的数据结构与地址转换函数。网络字节序与主机字节序的定义、转换以及相关函数在网络编程中的应用。数据结构内存对齐的基本规则,以及基于数据结构构建PDU的基本方法。TCP单进程循环服务器与单进程客户端的…

电影交流平台小程序的设计

管理员账户功能包括&#xff1a;系统首页&#xff0c;个人中心&#xff0c;电影类型管理&#xff0c;留言反馈管理&#xff0c;电影中心管理&#xff0c;系统管理 微信端账号功能包括&#xff1a;系统首页&#xff0c;电影中心&#xff0c;留言反馈 开发系统&#xff1a;Window…

kvm虚拟机启用console登录

kvm虚拟机console登录&#xff0c;就是执行 virsh console 的时候&#xff0c;宿主机可以控制虚拟机。 一、centos7的kvm虚拟机开启console登录&#xff08;在虚拟中操作&#xff09; 1、备份文件 [roothadoop51 ~]# cp /etc/grub2.cfg /etc/grub2.cfg_back 2、用下面命令可…

Git 命令学习之推送本地项目到 Gitee 托管

引言 在软件开发中&#xff0c;版本控制是不可或缺的一环。Git 作为目前最流行的分布式版本控制系统&#xff0c;广泛应用于各种项目中。而 Gitee&#xff08;原名码云&#xff09;作为国内知名的代码托管平台&#xff0c;为开发者提供了稳定、安全的代码托管服务。下面将详细…

mysql mgr集群断电重启

一、前言 mysql mgr集群所有节点都断电重启时&#xff0c;就会面临一个问题&#xff0c;应该怎么重新构建mgr集群 二、操作 查询所有节点的master状态 show master status; 查看同步状态&#xff0c;可以通过uuid知道是通过哪个节点进行同步的数据 查看所有节点的uuid&#x…