admin管理员组文章数量:1608628
点击上方“3D视觉工坊”,选择“星标”
干货第一时间送达
https://www.zhihu/question/396119527/answer/1256819922
本文仅作为学术分享,如果有侵权,会删文处理
硕士研究生阶段如何学习slam机器人?
作者:矮脚兽
https://www.zhihu/question/396119527/answer/1256819922
实验室的师兄刚毕业,都找的是slam方向的工作,自己也正在往这个方向努力.所以在这里总结以下学习经验吧.
个人认为看视频的效率较低,更倾向于看书,以下的推荐的英文书籍大都可以在Library Genesis(需富强上网)上找到,都是个人已经看完或者正在看的书,相信会对你有所帮助.
1. 基础篇
1.1 C++
C++是slam所有知识的基础,它的作用和地位怎么强调都不为过,在学习其他所有知识之前一定要先过这一关.否则你的接下来的路会很难走.
在这里推荐两本书:C++ Prime Plus和Effective C++,特别是第一本,它将陪伴你整个slam的学习生涯.我当时大概花了两个月左右每天练习上面的例子,后面发现C/C++的使用贯穿了所有学习环节,所以每次遇到不会的都会重新来读这两本书.
C++四大组成部分,每一个都要懂其用法,至少做到遇到问题时能快速定位到书里相应的部分:
以C语言为载体的面向过程的编程(Procedure Oriented Programming)
面向对象的编程(Object-Oriented Programming):类,多态,继承,虚函数
为了解决代码重用问题而出现的泛型编程(Generic Programming)以及对应的标准模板库(STL)
1.2 OpenCV
有了C++的基础,你就可以来学习一些图像处理的内容了.图像处理很多算法原理上会比较难以理解,不过没关系,我们有强大的图像处理的函数库可以调用,那就是OpenCV.
学习OpenCV最最推荐的教材是官方的Tutorial.最开始看完Introduction to OpenCV和The Core Functionality(core modeule)这两个就行,剩余的可以以后用到再回来查找.
如果你英文水平不够好的话,可以看看《OpenCV3编程入门》.个人更加推荐看英文的入门文档,毕竟翻译过程会有信息丢失,不利于理解学习.
1.3 Linux & ROS
Linux是slam常用的搭载环境,它其实有很多的发行商,但是只推荐使用Ubuntu,原因很简单,只有机器人操作系统ROS是基于它开发的.
关于Linux的学习,推荐两本书《鸟哥的Linux私房菜》和The Linux Command Line.前者是基于CentOS写的,但是这并不影响使用,后者是基于Ubuntu写的,但是是英文书,
自己学着安装Ubuntu的双系统(虚拟机和Windows直接安装都不推荐,会出各种意想不到的Bug).然后拿着The Linux Command Line,将里面常见的命令自己敲一遍看看效果.
个人认为比较重要的几个点:
终端的使用
Linux文件目录结构
怎么安装软件
怎么新建和删除文件/文件夹
文件打包及解压
至于ROS的学习,目前只推荐官方的Wiki文档.
1.4 机器人学数学基础
这里涉及到了三维旋转矩阵,四元数,李群李代数的知识.由于在学校选了相应的课(听老师说现在全国只有北航开设了相关课程?),所以在课外没怎么学习.不过最近倒是在Github上发现了一个很好的项目,主要是讲三维旋转和四元数的,可以去下载下来看.
我自己也有开了相关的专栏,感兴趣的可以去看看(随缘佛性更新):
机器人学数学基础专栏地址:
https://zhuanlan.zhihu/c_1244623606790995968
2. 实践篇
2.1《视觉slam十四讲》
之所以把这本书放在第二部分讲,主要有三个原因:
这本书提供了大量的源码,具有很强的实践意义.
如果你没有上面的基础知识作为支撑,看这本书可能会有些吃力
从找工作的角度讲,个人认为基础知识的意义大于slam知识本身
关于这本书,其他回答说的很多了,不再赘述.值得强调的是,里面的程序最好自己写一遍,修改修改部分代码看看会出来什么样的效果.
2.2 相机 & 激光雷达
在学习好理论知识后,家庭条件允许的话,,可以自己设计组装一个机器人来玩玩.上淘宝购买相应的零部件.把它们架设到能移动的机器人上,自己编程实现建图啥的.
零部件网购地址:
1、https://item.taobao/item.htm?spm=a230r.1.14.30.57113f68i6DW3D&id=579103092794&ns=1&abbucket=4#detail
2、https://item.taobao/item.htm?spm=a1z0k.7386009.0.d4919233.3dca5014N5GgWp&id=574115048099&_u=t2dmg8j26111
2.3 TurtleBot
TurtleBot是一款搭载ROS的移动机器人,上面自带了激光雷达或者双目视觉系统.
TurtleBot
学校开设了移动机器人的课程,去年(2019)刚刚购买了一批TurtleBot2,所以很有幸使用了一段时间.原本还想着自己买一台玩玩,但是看了一下淘宝将近6000元的价格,只能说一句"打扰了,再见!".
你可以打听打听学校有没有实验室有这个玩意儿,如果有的话可以去蹭一蹭,这将会对你的实践能力的提升有很大的帮助.
3. 进阶篇
基础有了,实践有了,接下来就是理论水平的提高了.
主要从两个方向努力,一个是看相关论文,还有一个是看两本书:
《概率机器人》对应的英文书名叫Probabilistic Robotics,还有一个多视觉几何的书籍Multiple View Geometry in computer vision
这两本书不知道各位大佬感觉如何,我最近正在啃,觉得还是比较吃力的.近期准备把这两本书看完然后去看《视觉slam十四讲》后面罗列的一些论文.
4. 就业篇
这个是上面答主都都忽略的一点,这个可能要泼一些冷水了.前两年随着百度宣布搞无人车,带动了一大批的slam就业岗位,但是现在风口渐渐平息,最近在媒体上也少有看到相应的报道.虽然slam现在看起来还是一个比较火的方向.但是很多单位已经开始减少招收的人数.至于工资,年薪大概在25w左右,还算是可以的.
不过,既然选择了这条路就勇敢向前走吧,一起加油!
作者:郑纯然
https://www.zhihu/question/396119527/answer/1235876702
首先是代码环境问题:标配Ubuntu+ROS,因为绝大部分源码是C++,所以CMake的基本模板要会用
浙江大学视觉slam公开课-从视频标定到SLAM视频地址:
https://www.bilibili/video/BV1ax411R7Hd
必看入门书籍:视觉SLAM十四讲 稍微进阶:机器人学的状态估计,多视图几何
视频地址:https://www.bilibili/video/BV1YW411P7AU
SLAM相关非常易懂快速上手的课程:
1.这位浙大教授讲得非常非常清晰,虽然不如高博视觉SLAM的课有配套习题和课件那样系统,但可能谭平教授更会去用学生能理解的方式阐述SLAM的概念,表达也更清晰一些
视频地址:
https://www.bilibili/video/BV1ax411R7Hd
2. 经典的高博的视觉SLAM
视频地址:
https://www.bilibili/video/BV16t411g7FR?from=search&seid=14811571160409762901
3. 曾书格老师的激光SLAM或者某象的无人驾驶
视频地址:
https://www.bilibili/video/BV11a4y1v79G
4. 波恩大学《传感器及状态估计》SLAM,这是2020年最新的课程
视频地址:https://www.bilibili/video/BV1aK4y1k7FQ
5. Coursera 自动驾驶教程,主要是讲相机模型,多视几何方面的内容,对3D视觉标定方面非常有帮助
视频地址:
https://www.bilibili/video/BV1PE411D72p?p=2
6. 宾大的vslam,我没听过,但据说听完收获很大
视频地址:
https://www.bilibili/video/BV1Y4411m7aG?from=search&seid=18344384925427038262
SLAM方面的论文
论文地址:
https://blog.csdn/heyijia0327/article/details/82855443
贺博在这里总结得特别好,有分类,有文章作者名,有下载链接,而且貌似还在维护更新...
因为毕竟学习时间和精力毕竟有限,初学者看起来比较慢,所以我一会儿重点推荐一两篇
如何借助这些资源开展SLAM学习
我接下来只是讲得我自己的学习方法,希望能帮助到你。
1.首先看一遍视觉SLAM十四讲这本书,从三维空间的表示方法,李群李代数的数学原理这些关键的基础概念,到视觉SLAM的前端,后端,回环整个流程的经典算法实现原理。大致过一遍,不需要把每一个公式都推导一遍,比较难的雅各比可以放一放,一些简单的随手就推了,比如针孔相机模型。
2.之后可以撸一遍视觉SLAM十四讲的视频,抱着之前对SLAM的印象,也可以说是带着疑问吧,在高博的耐心讲解中再回顾一下,视频也不会看得很慢(比如因为看不懂看一下停一下),还可能会对以前理解比较粗糙的地方突然领悟...###此处致敬高博,并没有勇气 @Ta
3.这时候可以看一些经典且写得很规范的代码啦,比如ORB-SLAM2!!
辅助可以看一下这篇论文:ORB-SLAM2: an Open-Source SLAM System for Monocular, Stereo and RGB-D Cameras
4. 可以自己模仿写一个视觉里程计
5. 对于激光SLAM其实我也推荐先看视觉SLAM十四讲,因为SLAM间结构和原理相似,且视觉SLAM有这样好的入门教材没有不看的理由。同时由于相机的观测模型相比激光雷达会更复杂一些,所以互相转换起来会比较快。我之前一个回答,可以借鉴一下~
网址:
https://www.zhihu/question/52634751/answer/1233033108
一些其他主要方向
语义SLAM
网址:
https://zhuanlan.zhihu/p/58648284
我觉得高博讲得太好了,流泪ing,几分钟时间让我这个语义小白都懂了是什么,为什么,要怎么做...深度学习提取路标啊,建立物体级别的地图去进行地图复用等等等,文章还举例了几篇论文,都挺好,可以看看~
2. VIO视觉惯性里程计 or VINS视觉惯性导航系统
这边深蓝有出了一套课,讲得蛮好的,主讲是贺博高博崔大神,里面IMU的预积分,以及对应残差雅各比,初始化等讲得蛮详细。最棒的是基于目前非常强的沈老师组的VINS-mono的代码架构讲解的。此处强推一篇论文:VINS-Mono: A Robust and Versatile Monocular Visual-Inertial State Estimator
前几天本科毕设要求英文文献翻译,我自己翻译了一份重新排了版,传了一份Word版本的,大家自取吧~
链接:https://pan.baidu/s/1t_bDIiWOdyxnJYuqGrMSwA
提取码:um34
3. 与深度学习结合,估计位姿,用来做闭环检测(场景的再识别)
4. 水下SLAM
5. 仿生SLAM
6. ......
作者:wjonuee
https://www.zhihu/question/396119527/answer/1235688565
1、看书:高翔的《视觉SLAM十四讲》、《概率机器人》、《机器人学中的状态估计》、《计算机视觉中的多视图几何》;
2、学习ROS、OpenCV、Eigen、sophus、Ceres、g2o等开源软件使用;
3、看SLAM开源项目,激光经典的cartography、gMapping、Hector等;视觉的ORB-SLAM、RGBD-SLAM,LSD-SLAM等;
4、关注优秀的SLAM公众号,计算机视觉life、泡泡机器人SLAM等;
附一篇计算机视觉life的一篇推荐给SLAM小白入门的文章:https://mp.weixin.qq/s/GYcO7m9oBfJK4h2ZWRq0mw
其中有一张思维脑图不错:
https://weixin.qq/cgi-bin/readtemplate?check=false&t=w_indexn73&uin=&stype=10037102&promote=1003799&fr=&
推荐阅读:
专辑|相机标定
专辑|3D点云
专辑|SLAM
专辑|深度学习与自动驾驶
专辑|结构光
专辑|事件相机
专辑|OpenCV学习
专辑|学习资源汇总
专辑|招聘与项目对接
专辑|读书笔记
重磅!3DCVer-学术论文写作投稿 交流群已成立
扫码添加小助手微信,可申请加入3D视觉工坊-学术论文写作与投稿 微信交流群,旨在交流顶会、顶刊、SCI、EI等写作与投稿事宜。
同时也可申请加入我们的细分方向交流群,目前主要有3D视觉、CV&深度学习、SLAM、三维重建、点云后处理、自动驾驶、CV入门、三维测量、VR/AR、3D人脸识别、医疗影像、缺陷检测、行人重识别、目标跟踪、视觉产品落地、视觉竞赛、车牌识别、硬件选型、学术交流、求职交流等微信群,请扫描下面微信号加群,备注:”研究方向+学校/公司+昵称“,例如:”3D视觉 + 上海交大 + 静静“。请按照格式备注,否则不予通过。添加成功后会根据研究方向邀请进去相关微信群。原创投稿也请联系。
▲长按加微信群或投稿
▲长按关注公众号
3D视觉从入门到精通知识星球:针对3D视觉领域的知识点汇总、入门进阶学习路线、最新paper分享、疑问解答四个方面进行深耕,更有各类大厂的算法工程人员进行技术指导。与此同时,星球将联合知名企业发布3D视觉相关算法开发岗位以及项目对接信息,打造成集技术与就业为一体的铁杆粉丝聚集区,近1000+星球成员为创造更好的AI世界共同进步,知识星球入口:
学习3D视觉核心技术,扫描查看介绍,3天内无条件退款
圈里有高质量教程资料、可答疑解惑、助你高效解决问题
版权声明:本文标题:硕士研究生阶段如何学习slam机器人? 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://www.elefans.com/dongtai/1728552163a1163481.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论