倘若能有一场时空对话,我将告诉曾经的我如何做vslam

作者 | forward 编辑 | 3D视觉之心

原文链接:https://www.zhihu.com/question/392988118/answer/22816791544

作者主页:https://www.zhihu.com/people/51-46-64-19-92

点击下方卡片,关注“自动驾驶之心”公众号

戳我-> 领取自动驾驶近15个方向学习路线

>>点击进入→自动驾驶之心SLAM技术交流群

本文只做学术分享,如有侵权,联系删文

短短4年的时间,vslam就犹如过气网红般声量渐失。曾经这个话题,还能引来各路大佬欢聚一堂好不热闹,如今曲终人散,门前冷落鞍马稀。今日赶个晚集,借这个话题做个我这几年开发的几个vslam项目总结,倘若能有一场时空对话,我将告诉曾经的我如何做这个事情。

衣带渐宽终不悔,为伊消得人憔悴。

SLAM 技术会是一场泡沫吗?

1.知彼

当被安排某个陌生的工作的时候,想必大家心情是这样的:

081b757092baeb6df479cb11ad91b6b4.png

学习两年多,感觉SLAM太难了,大家对此有什么想法?

自己,队友,老大都是小白也没关系,都没思路也没关系,可以去搜搜别人工作先。每一个好厨子都肯定先是一个好吃货。当我从别处知道一个新概念的时候,那至少说明第一个螃蟹已经有人吃了,我可以去搜搜他的“小x书”看看那些“网红博主”的心得。

算法领域的“小x书”大家都懂:github,在里面搜搜高流量(star)帖子就好了。在这个“知播间”里我已经替家人们汇总好了:

请问是否有开源的实时视觉里程计?

通过上述总结,以特征点为例,可以发现框架性工作为vins,msckf,orbslam,kimera,这几篇给我们提供了优秀的ceres,滤波,g2o,gtsam的pipeline和学习手册,堪称vslam领域的基础设施。大量后来者在白嫖..啊不,致敬这些作品后进行二创。

vslam要干哪些事情呢?有特征提取和匹配,状态优化,深度解算,回环检测/VPR,全局BA/PGO。

在扫过大量二创后,发现他们都比较关注特征提取和匹配这个环节,尤其超爱线面特征。配合深度学习食用后又交叉到感知去了。

坚守SLAM还是拥抱大模型?

我对3dgs/nerf和事件相机的slam方向一直不感冒,可能是在企业里呆惯了也没读过博的缘故吧,在我有限的认知里,我看不到这几个方向落地的可能性,更像是学术圈闭门造车的自嗨。算法工程师算是相对比较贵的岗位,若只顾着发论文玩demo讲故事而不靠产品持续造血,当资本的浪潮褪去时,还是会略显尴尬吧。

方向错误是最可怕的事情,你越努力,朝错误的方向走得越远,沉没成本越高,就越难回头,也越跟不上。

这样的例子有很多,苏联和美国在计算机领域本在同一起跑线,甚至他们的数学更强,但是他们发展晶体管而不是集成电路,他们玩三进制而不是二进制,走错了路就再也追不上了;还有日本新能源科技树点到了氢上,已经彻底跟不上中美对步伐了,甚至他们的铁杆盟友乌克兰把他们的氢能源车拿去做炸弹刷给榜一大哥俄罗斯,这谁敢开他们的车?

对错误路线的判断取决于认知,认知局限导致走错路很可怕,明知故走就更可怕了。

2.知己

知己知彼,百战不殆。知彼,是为了知道别人在想什么干什么,知己,是为了知道自己啥条件啥需求。

啥需求?

为什么目前落地的主流SLAM技术很少用神经网络进行特征提取?

室内还是室外,地上跑的天上飞的还是水里游的,静态还是动态环境,里程计还是建图,等等..

还有一个容易被忽略的点:初始化。初始化分为静态初始化和动态初始化,静态初始化只适用于带imu的。

vins的单目动态初始化让我格外印象深刻,得瞅着一个地方剧烈的动弹几下才行;而msckf,kimera就更显佛系,在那呆着不动把imu初始状态维护好就行了。至于哪种初始化更好就是仁者见仁智者见智,萝卜白菜各有所爱,一千个读者有一千个哈姆雷特的事情了。

啥条件?

数据频率,传感器数量质量类型(钞能力),标定,时间对齐等等。没条件也呆胶布,不是还有那么多数据集嘛。

3.没事走两步

把心仪的方案下载下来,编译配置,跑个demo。实践是检验吹牛的唯一标准。

1db990abeadbee6c78ca3b43ff23e2d1.png

那些经过普遍检验过的方法如果没跑出来,要么数据有问题,要么标定有问题,要么镜子里的吴彦祖有问题。

a65ddef51b924ea29254fb06c2ebb0d8.png

经过这一步之后,想必各位彦祖心里已经有信心了,就可以确定原型代码是哪篇了。

4.读论文和代码

先看代码后看论文。论文有时候像渣男口里的情话,让人脸上不禁激荡起一抹少女般的红晕;有时候像孔乙己讨论“茴”有多少种写法,高深莫测,回味无穷。代码里10行搞定的事情,他再配上高端晦涩的公式若干和滔滔不绝的长篇大论,令无数信徒迫不及待地一键三连,献上虔诚的膝盖,竞相折腰。原本木讷呆板的理工生,此时竟也学会了花言巧语,一口一个大佬大佬的叫嚷着,让人心里暖暖的。而冷酷无情的代码却化身最后的轻语,让人沉默又破防。

好在,代码是论文的照妖镜。就算看不懂代码里的公式,但是他干什么用的一定能测出来,而论文则可能会因为先验知识的缺乏而令人摸不着头脑。正如阅人无数的海王,情场得意的高手,早已品尝过人生百态,世态炎凉,在轻易看透了对方那点小心思后,一切便尽在把握。毕竟比起他说的什么,我更相信他做的什么。

为什么自学编程那么难?

看完代码后再看论文,此时论文里的内容,像久别重逢的挚友,失而复得的旧爱,回头是岸的浪子,沸羊羊的美羊羊,柳暗花明,豁然开朗。

168f2f63eaec02297872f89d14d94c79.png

原作的心思就像少年的女神一样深不可测,捉摸不透,令人浮想联翩。不说原作,很多人可能甚至连上个星期自己写的代码都看不懂,蓦然回首,chatgpt竟比我更懂我。因此先不要死磕,能run就行,慢慢理解。如果前方有一堵墙,老实人会拿头撞得头破血流,皮开肉绽,而小机灵鬼,会避其锋芒,另辟蹊径。小心思我读不懂,但身体是诚实的。

先模块化调试,理解数据流在不同函数之间流转过程的产出,假以时日,黑箱变白箱。

5.开始二创

想必到这一步时,脑子里肯定已经有很多idea了。如果还没有,可以继续看别人的二创,现在2024年出来的vio还是有点线特征这个思路的。因此,可以走别人的路,让别人无路可走。说不定你会化身芳心狙击手,你写的论文如蜜罐里的甜言蜜语,让审稿人小鹿乱撞,心神不宁,坐立不安,如痴如醉,辗转反侧,坠入爱河,仿佛回到那年夏天,看着十指相扣的TA。不知是一不小心还是欲拒还迎,被轻而易举的击中软肋,highlight和best paper就半推半就的献给了你。而你,我素未谋面的老熟人,翻身做了大佬,春风得意,容光焕发,便可在朋友圈里昭告天下,衣锦还乡。而企业里牛马们的二创基本是数据适配,框架重构,性能优化,基于自有场景corner case堆if,年会上鲜艳的大红花,说不定就能别在你笔挺的胸前,一想到刚满18岁的hr小姐姐的回眸一笑,是不是还有点小激动。

8875111e67447ced92b8d210e575e3bb.png

6.知识迁移

slam领域就像家一样,里面个个都是人才,说话又好听,想必各位和我一样,超喜欢呆在里面的。

ce861b52a998ad956050af3e87e3d478.png

曾经的slam犹如正襟危坐的高冷女神,但在知识的传播中不断去魅,现在逐渐成为了平易近人的邻家小妹。这一篇换一下语言风格,转载搬运请私信,近期周更,家人们点点关注不迷路。

『自动驾驶之心知识星球』欢迎加入交流!重磅,自动驾驶之心科研论文辅导来啦,申博、CCF系列、SCI、EI、毕业论文、比赛辅导等多个方向,欢迎联系我们!

3dad359efef09f81af60451938c4e7cd.png

① 全网独家视频课程

端到端自动驾驶、仿真测试、自动驾驶C++、BEV感知、BEV模型部署、BEV目标跟踪、毫米波雷达视觉融合多传感器标定多传感器融合多模态3D目标检测车道线检测轨迹预测在线高精地图世界模型点云3D目标检测目标跟踪Occupancy、CUDA与TensorRT模型部署大模型与自动驾驶NeRF语义分割自动驾驶仿真、传感器部署、决策规划、轨迹预测等多个方向学习视频(扫码即可学习

b919f993bcde5ab6e53c48904205b216.png

网页端官网:www.zdjszx.com

② 国内首个自动驾驶学习社区

国内外最大最专业,近4000人的交流社区,已得到大多数自动驾驶公司的认可!涉及30+自动驾驶技术栈学习路线,从0到一带你入门自动驾驶感知端到端自动驾驶世界模型仿真闭环2D/3D检测、语义分割、车道线、BEV感知、Occupancy、多传感器融合、多传感器标定、目标跟踪)、自动驾驶定位建图SLAM、高精地图、局部在线地图)、自动驾驶规划控制/轨迹预测等领域技术方案大模型,更有行业动态和岗位发布!欢迎扫描下方二维码,加入自动驾驶之心知识星球,这是一个真正有干货的地方,与领域大佬交流入门、学习、工作、跳槽上的各类难题,日常分享论文+代码+视频

61e74a9700d003a947e3c385fb70ddbe.png

③【自动驾驶之心】技术交流群

自动驾驶之心是首个自动驾驶开发者社区,聚焦感知、定位、融合、规控、标定、端到端、仿真、产品经理、自动驾驶开发、自动标注与数据闭环多个方向,目前近60+技术交流群,欢迎加入!扫码添加汽车人助理微信邀请入群,备注:学校/公司+方向+昵称(快速入群方式)

a1f2de4894a64b0503ac6c8d6adb4736.jpeg

④【自动驾驶之心】全平台矩阵

1dced1ec0f5fd0af43dbb29d16335b0e.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值