点击上方“小白学视觉”,选择加"星标"或“置顶

重磅干货,第一时间送达

原提问:

目前学什么专业的人在搞SLAM?如需要哪些专业知识,或者找什么专业的人合作?

李雅不诺夫

一些比较牛掰的论文后面都有作者简介的,他们大都是计算机/电子信息专业出身;其实到现在觉得搞SLAM最需要的是数学和编程。

本科机械专业,跨专业跨了几条街转到SLAM里头,目前直博第一年,科研弱鸡一枚,还没什么成果,正在论文→程序→教材无限循环中,想在这儿吐槽一下最近的感受。同时也希望能能够被各路大佬吐槽,批评指正。

本科学过的各种三维建模和机械制图和设计什么的已经彻底用不上了,机械专业也没有太多关于编程的课程,好在自己参加过机器人比赛,写过一点点STM32的程序,至少现在上手编程的时候没那么痛苦。刚刚入学的时候白白浪费了一个学期,硕士阶段的课多到爆炸而且水的一批,根本就没有和自己研究方向相关的课程(除了数学课)。我们组每一届的人的研究方向都不一样,好在网上有不少资源。

编程方面:一开始进课题组的时候,看到有两台turtlebot2,就决定了做移动机器人方向,而且SLAM在移动机器人已经得到很重要的应用。有个硬件平台,更加容易上手。于是从零开始学ubuntu和ROS,在这儿强行安利中科院在慕课网上的ROS教程,跟着做一遍至少能懂得基本的操作了。roslaunch和rosrun别人的程序发现能运行,挺dei啊。可是当自己写起来发现啥都不会,就比如launch文件和.cpp文件之间的变量是怎么关联的,编译不过常常不是因为C++语法的问题而是因为CmakeLists.txt文件,等等。

总之对编程方面的感受就是:现在的ROS教程无非就是给package教你怎么敲命令行,看别人的程序不代表一定真的理解了,一定要亲自动手自己写程序实现一些功能。很多细节和工程技巧是书本上不会写的,需要自己各种百度谷歌慢慢解决,熟能生巧。

去年年底开始看《十四讲》,花一个多月过了一遍。秉承实践出真知的学习方式,从这学期开始用了将近两个月在ROS里写了一个前端,借鉴了第九章 的project,并在rviz里进行可视化,实现了点云的实时显示和里程计信息的可视化。只有一个前端,一点都不鲁棒,很飘。现在确实有了很多很好的开源代码,比如ORB-SLAM,VINS,运行过ORB-SLAM,真的稳得一批。但我觉得自己还是应该尝试着写一个,要不然搬运别人的代码也会有点无从下手,而且总有一天需要自己动手写一个工程。

相关的知识学习方面,除了《十四讲》,还买了《概率机器人》、《机器人学中的状态估计》、《Factor Graphs for Robot Perception》等等,我觉得把那些书都过一遍不现实,都是当工具书来看的。记得导师说过“读PhD不只是学习”;也在看最近两年的论文,还有一些经典的文章和review,不只是SLAM,还有导航和路径规划、人机交互、机器学习在机器人上的应用等等。现在觉得学习和科研就像控制系统有反馈环节,也像SLAM系统有回环检测,需要不停地返回来从教材和论文里寻找答案。我的课题是移动机器人,SLAM是其中一个重要的部分。

目前个人认为,单纯的SLAM,个人在前端(视觉里程计或者tracking thread)方面没找到可以灌水的坑,想基于一些比较稳定的前端进行进一步的研究,比如后端、回环,或者建图之后怎么进行导航、规划;怎么让机器人自动探索环境自主建图;移动机器人上如果装有机械手怎么配合SLAM进行抓取;因子图、强化学习和凸优化等等数学工具能解决什么样的问题...还有好多。但我想还是需要看一些文章再开干。

最后真的机器感激,在SLAM的科普和教学方面,无偿写博客,无私开源的大佬们,还有泡泡机器人公众号(编者注:还有计算机视觉life 公众号哦),等等

计算机视觉life

可以说各个专业都有吧,当然大部分是理工科的。我们从零开始学习slam知识星球里做过大家的背景调查:

我选择了几个放出来,大家先看图

因为我们也有一个实名交流群。所以对成员背景比较了解,机械,自动化,通信,计算机的最多,也有其他偏门专业(比如核物理,土木,化学)跨行学的,所以学习slam底线差不多就是理工科专业,有一定c/c++语言编程基础,学过基本的大学数学,计算机知识就可以。

至于优势,

数学专业优势在于理论推导,因为slam李群李代数,优化部分还是需要一点数学基础,当然现在很多库都写好了,只是应用不需要深究。

计算机软件专业优势在于编程能力强,slam是应用科学,好的编程能力能够快速读懂,编写代码。

机械自动化专业优势在涉及到机器人相关硬件时有较好的动手能力,快速解决硬件问题。

当然这些优势并不是绝对的,我认识偏门专业自学slam还学的很透的大佬。

下载1:OpenCV-Contrib扩展模块中文版教程

在「小白学视觉」公众号后台回复:扩展模块中文教程即可下载全网第一份OpenCV扩展模块教程中文版,涵盖扩展模块安装、SFM算法、立体视觉、目标跟踪、生物视觉、超分辨率处理等二十多章内容。

下载2:Python视觉实战项目52讲

在「小白学视觉」公众号后台回复:Python视觉实战项目即可下载包括图像分割、口罩检测、车道线检测、车辆计数、添加眼线、车牌识别、字符识别、情绪检测、文本内容提取、面部识别等31个视觉实战项目,助力快速学校计算机视觉。

下载3:OpenCV实战项目20讲

在「小白学视觉」公众号后台回复:OpenCV实战项目20讲即可下载含有20个基于OpenCV实现20个实战项目,实现OpenCV学习进阶。

交流群

欢迎加入公众号读者群一起和同行交流,目前有SLAM、三维视觉、传感器、自动驾驶、计算摄影、检测、分割、识别、医学影像、GAN、算法竞赛等微信群(以后会逐渐细分),请扫描下面微信号加群,备注:”昵称+学校/公司+研究方向“,例如:”张三 + 上海交大 + 视觉SLAM“。请按照格式备注,否则不予通过。添加成功后会根据研究方向邀请进入相关微信群。请勿在群内发送广告,否则会请出群,谢谢理解~

目前学什么专业的人在搞SLAM?各有什么优势?相关推荐

  1. 学计算机专业的人,如何让别人明白“学习或从事计算机专业的人不一定会修电脑”,只是会秃头!...

    近日 小编在网上看到了 这样的一则信息 Emmm- 小编还真的是 有很认真的思考过呢? 可是这题超纲了,小编也不会啊!! 也许你下次可以反问回去: "您觉得学法学的会变身吗?" ( ...

  2. 用计算机专业怼人,专业示范,教你如何用所学专业知识“怼人”

    原标题:专业示范,教你如何用所学专业知识"怼人" 用自己所学的专业怼人是一种什么体验? 微博上有一个很好玩的话题: #用你学的专业留一句怼人的话 其他人用自己的专业回怼# 终于发现 ...

  3. 什么专业的人适合学嵌入式?

    近些年,随着智能硬件的火热,嵌入式开发逐渐成为IT行业从业者择业的新宠儿.然而大家都知道,嵌入式开发是一个高门槛行业,并不是所有人都适合从事这项工作.这也是为什么经常有网友咨询:到底什么专业的人适合学 ...

  4. 非计算机专业的人要如何学python?

    对于零基础的初学者来说,python是一门十分友好的语言,所以越来越多的人想要学python.那么非计算机专业的人要如何学python?下面,千锋给大家分享几个学习方法,希望大家在学习python的路 ...

  5. 新闻学应该掌握哪些计算机技能,哪些人适合学新闻学专业 要掌握哪些技能

    原标题:哪些人适合学新闻学专业 要掌握哪些技能 一.报考新闻学专业的要求 一般来说新闻学专业文理兼收,但是文笔好.善于表达.性格外向.具备一定的人际交往能力和沟通能力的学生更适合新闻学专业. 从科目上 ...

  6. 内向女生适合学计算机吗,性格内向的人适合学计算机专业吗

    技校网专门为您推荐的类似问题答案 问题1: 学计算机专业的想从事别的行业,性格内向,适合什么啊 你要忘记自己学过电脑,然后学习一个技能,现在工作不是看能力,是看关系,能对口的工作,社会上也只有8%不到 ...

  7. 计算机学的好的人性格,适合“性格内向”的人选择的几大专业,工作稳定,薪资可观!...

    原标题:适合"性格内向"的人选择的几大专业,工作稳定,薪资可观! 文/晓宁说教育 我们在上大学之前都会比较谨慎的来选择专业,生怕在选择专业的时候,选到自己不喜欢或者不适合的专业.所 ...

  8. 【DBA100人】Payso张耀辉:学材料专业出身的他转身做了“码农”

    编者按: 人生很多事情并不是刻意规划出来的,而是一步一步走出来的.一个原本该穿着白大褂.出入实验室的技术员变成了身穿格子衫.出入写字楼的"码农",张耀辉是如何完成这一职业角色转变的 ...

  9. 既然报个培训班就可以成为码农,那学计算机专业有什么用?

    阅读本文大概需要6分钟. 前两天逛知乎发现一个很火热的问题,阅读量高达55万: 既然报个培训班就可以成为码农,那学计算机专业有什么用? 洋哥是科班出身,但读书期间的确也没好好学,大部分都是靠自学,所以 ...

最新文章

  1. 轻量函数式 JavaScript:八、列表操作
  2. 通过Matrix进行二维图形仿射变换
  3. Scikit-learn环境的搭建
  4. SQl 根据某列去重 partition by
  5. SA 分析专家认证名单出炉!这一期学员太牛了
  6. VTK修炼之道49:图形基本操作进阶_网格平滑(点云的曲面重建技术)
  7. 『安卓』安卓开发基础--基本控件
  8. 学习笔记(2):uni-app实战社区交友类app开发-引入css动画库
  9. 消息中间件Rabbitmq核心概念讲解
  10. 对比学习视角:重新审视推荐系统的召回粗排模型
  11. (一)UDPSocket 服务端编写(超详细)
  12. python结巴分词_Python中文分词工具之结巴分词用法实例总结【经典案例】
  13. 微信公众号之免登陆快速入门
  14. POI设置导出的EXCEL锁定指定的单元格
  15. CODESYS 控制虚拟单轴运动
  16. 非北京户口的驾照到期换证小攻略(仅供参考)
  17. httpclient封装工具类
  18. 邱天计算机,华北电力大学控制与计算机工程学院导师教师师资介绍简介-邱天...
  19. Rasa课程、Rasa培训、Rasa面试、Rasa实战系列之UnexpecTED Intent Policy
  20. Oracle 按日期分组

热门文章

  1. 给初学者的深度学习入门指南
  2. 倒计时2天 | 专属技术人的盛会,为你而来!
  3. 可视化深入理解损失函数与梯度下降 | 技术头条
  4. 谷歌Waymo自建车厂,L4级无人车量产指日可待
  5. 资源 | 深度学习图像标注工具汇总
  6. 一些防止 Java 代码被反编译的方法
  7. 自从上了 SkyWalking,睡觉真香!!
  8. 自己动手在 Linux 系统实现一个 everything 程序
  9. 面试官:你说你精通 Docker,那你来详细说说 Dockerfile 吧
  10. 百度 71 个炸天的开源项目!你知道几个?