目前的三维视觉算法基本上都是用C++语言编写的,比如SLAM算法。既然这些算法都是C++编写的,必然有其自身原因。主要是因为,SLAM系统是一个实时性要求很强的系统,运行速度与精度都很重要。Python也有加速手段,但总体上C++比较接近底层,在执行效率和资源占用上要好很多。而且很多语言都是在C++或者C语言的基础上进行封装的。
C++一直都被称作是最难学的计算机语言,笔者从业多年,也认为确实如此。相比于其他几种语言,单纯从语法结构来说,C++都是比较困难的。何况很多同学并不是计算机专业出身,基础不是很扎实。SLAM算法都会集成了C++中的很多模块,还有大量的第三方库,对于初学者而言,想读懂这些算法源码肯定更是难上加难。然而,这些源码并不是无迹可寻,许多算法的编写都有比较固定的套路。
下图是某个SLAM算法中的部分源码。
本次课程,我们首先会用几讲的时间带大家过一遍C++的基础知识,然后对三维视觉中常用的几个C++模块进行重点讲解,主要有指针、引用、类和对象、宏和模板、STL编程、栈和队列、智能指针,多线程,CMakeList这几个章节,另外会附上足够多的实践案例,也会在课程中给大家讲解面试技巧和面试题。力求通过本次课程的学习,彻底搞懂C++较难的一些模块,掌握SLAM等算法的编写套路,学会C++相关岗位的面试技巧。
全部0条评论
快来发表一下你的评论吧 !