专栏名称: 3D视觉工坊
1、OpenCV的技术传播; 2、3D点云与重建技术; 3、Vslam技术; 4、深度学习; 5、技术干货分享。
目录
相关文章推荐
英国大家谈  ·  重磅!英国政府更新入籍要求 ·  18 小时前  
英国大家谈  ·  英国大家谈商务合作及转载须知 ·  2 天前  
印象笔记  ·  低能量自救指南:如何快速提升能量? ·  3 天前  
51好读  ›  专栏  ›  3D视觉工坊

作为一个SLAMer,会编写CMakeLists,到底有多重要?

3D视觉工坊  · 公众号  ·  · 2024-08-07 07:00

正文

目前的三维视觉算法基本上都是用C++语言编写的,比如SLAM算法。既然这些算法都是C++编写的,必然有其自身原因。主要是因为, SLAM系统是一个实时性要求很强的系统,运行速度与精度都很重要 。Python也有加速手段,但总体上C++比较接近底层,在执行效率和资源占用上要好很多。而且很多语言都是在C++或者C语言的基础上进行封装的。

C++一直都被称作是最难学的计算机语言,笔者从业多年,也认为确实如此。相比于其他几种语言,单纯从语法结构来说,C++都是比较困难的。何况很多同学并不是计算机专业出身,基础不是很扎实。SLAM算法都会集成了C++中的很多模块,还有大量的第三方库,对于初学者而言,想读懂这些算法源码肯定更是难上加难。然而, 这些源码并不是无迹可寻,许多算法的编写都有比较固定的套路。

下图是某个SLAM算法中的部分源码。

本次课程,我们首先会用几讲的时间带大家过一遍C++的基础知识,然后对三维视觉中常用的几个C++模块进行重点讲解,主要有指针、引用、类和对象、宏和模板、STL编程、栈和队列、智能指针,多线程,CMakeList这几个章节, 另外会附上足够多的实践案例 ,也会在课程中给大家讲解面试技巧和面试题。力求通过本次课程的学习,彻底搞懂C++较难的一些模块,掌握SLAM等算法的编写套路,学会C++相关岗位的面试技巧。







请到「今天看啥」查看全文