目前的三維視覺算法基本上都是用C++語(yǔ)言編寫的,比如SLAM算法。既然這些算法都是C++編寫的,必然有其自身原因。主要是因?yàn)?,SLAM系統(tǒng)是一個(gè)實(shí)時(shí)性要求很強(qiáng)的系統(tǒng),運(yùn)行速度與精度都很重要。Python也有加速手段,但總體上C++比較接近底層,在執(zhí)行效率和資源占用上要好很多。而且很多語(yǔ)言都是在C++或者C語(yǔ)言的基礎(chǔ)上進(jìn)行封裝的。
C++一直都被稱作是最難學(xué)的計(jì)算機(jī)語(yǔ)言,筆者從業(yè)多年,也認(rèn)為確實(shí)如此。相比于其他幾種語(yǔ)言,單純從語(yǔ)法結(jié)構(gòu)來(lái)說(shuō),C++都是比較困難的。何況很多同學(xué)并不是計(jì)算機(jī)專業(yè)出身,基礎(chǔ)不是很扎實(shí)。SLAM算法都會(huì)集成了C++中的很多模塊,還有大量的第三方庫(kù),對(duì)于初學(xué)者而言,想讀懂這些算法源碼肯定更是難上加難。然而,這些源碼并不是無(wú)跡可尋,許多算法的編寫都有比較固定的套路。
下圖是某個(gè)SLAM算法中的部分源碼。
本次課程,我們首先會(huì)用幾講的時(shí)間帶大家過(guò)一遍C++的基礎(chǔ)知識(shí),然后對(duì)三維視覺中常用的幾個(gè)C++模塊進(jìn)行重點(diǎn)講解,主要有指針、引用、類和對(duì)象、宏和模板、STL編程、棧和隊(duì)列、智能指針,多線程,CMakeList這幾個(gè)章節(jié),另外會(huì)附上足夠多的實(shí)踐案例,也會(huì)在課程中給大家講解面試技巧和面試題。力求通過(guò)本次課程的學(xué)習(xí),徹底搞懂C++較難的一些模塊,掌握SLAM等算法的編寫套路,學(xué)會(huì)C++相關(guān)崗位的面試技巧。
-
模塊
+關(guān)注
關(guān)注
7文章
2773瀏覽量
49133 -
算法
+關(guān)注
關(guān)注
23文章
4686瀏覽量
94397 -
C++
+關(guān)注
關(guān)注
22文章
2116瀏覽量
74612
原文標(biāo)題:對(duì)于三維視覺,C++為何如此重要?
文章出處:【微信號(hào):3D視覺工坊,微信公眾號(hào):3D視覺工坊】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
藍(lán)牙4.0 BLE 技術(shù)為何如此受青睞?
三維視覺測(cè)量技術(shù)知識(shí)科普

三維逆向工程的成果及應(yīng)用案例
三維設(shè)計(jì)應(yīng)用案例
導(dǎo)磁材料的影響為何如此重要
Linux是什么?這種操作系統(tǒng)為何如此流行?
三維立體視覺技術(shù)的應(yīng)用及其三維恢復(fù)方法介紹
基于雙目立體視覺的三維拼接和融合方法

BLE低功耗藍(lán)牙模塊為何如此受歡迎?
EMI為何如此重要_emi的原理

評(píng)論