2022年年底,素為帶著這個(gè)項(xiàng)目,參加了NVIDIA舉辦的Jetson Edge AI開(kāi)發(fā)者大賽,榮獲特別獎(jiǎng)。
賈志剛便是其中一員,他的另外一個(gè)身份是 “OpenCV學(xué)堂” 的創(chuàng)辦人。同時(shí),作為CSDN博客專(zhuān)家以及51CTO視頻學(xué)院認(rèn)證講師,賈志剛在圖像特征提取匹配、識(shí)別等方面有較深入的研究,擁有10年以上圖像處理項(xiàng)目實(shí)踐經(jīng)驗(yàn)和教學(xué)經(jīng)驗(yàn)。
現(xiàn)在,NVIDIA面向所有Jetson開(kāi)發(fā)者發(fā)起有獎(jiǎng)?wù)骷顒?dòng)!說(shuō)出您與Jetson的故事,無(wú)論是開(kāi)發(fā)創(chuàng)造的經(jīng)典案例,還是學(xué)習(xí)構(gòu)建的心得體驗(yàn),都?xì)g迎您暢所欲言。
NVIDIA Jetson是面向邊緣計(jì)算的人工智能平臺(tái),適用于自主機(jī)器和其他嵌入式應(yīng)用程序。而NVIDIA Jetson Nano是一款面向嵌入式和邊緣人工智能市場(chǎng)的低成本入門(mén)級(jí)人工智能計(jì)算機(jī)。
前面安裝Jetson Orin開(kāi)發(fā)套件的開(kāi)發(fā)環(huán)境過(guò)程,并沒(méi)有將DeepStream智能分析套件安裝進(jìn)去,因此需要獨(dú)立的安裝過(guò)程,這里提供三種安裝方式給使用者參考。
過(guò)去的AGX Xavier開(kāi)發(fā)套件是需要透過(guò)headless(USB線(xiàn))方式與PC進(jìn)行連線(xiàn),然后在PC上執(zhí)行SDK Manager為Jetson設(shè)備安裝開(kāi)發(fā)環(huán)境,執(zhí)行步驟相對(duì)繁瑣。
前面我們花了很多力氣在TAO上面訓(xùn)練模型,其最終目的就是要部署到推理設(shè)備上發(fā)揮功能。除了將模型訓(xùn)練過(guò)程進(jìn)行非常大幅度的簡(jiǎn)化,以及整合遷移學(xué)習(xí)等功能之外,TAO還有一個(gè)非常重要的任務(wù),就是讓我們更輕松獲得TensorRT加速引擎。
前面的系列文章里提過(guò),TAO工具將模型訓(xùn)練的絕大部分技術(shù)難題都進(jìn)行抽象化處理,大幅度減輕開(kāi)發(fā)人員的負(fù)擔(dān),唯獨(dú)數(shù)據(jù)集的收集與整理仍須由人工自行處理,這幾乎是留個(gè)操作人員的最后工作了。
NVIDIA Jetson開(kāi)發(fā)者日是一個(gè)面向所有開(kāi)發(fā)者開(kāi)放的特別活動(dòng)。現(xiàn)在免費(fèi)注冊(cè),您將看到Jetson平臺(tái)專(zhuān)家進(jìn)行深入探討,通過(guò)多場(chǎng)講座展示自主機(jī)器和邊緣AI的最新創(chuàng)新。
前一篇從Jetson Projects所挑選的“TRANSFER LEARNING WITH JETBOT & TRAFFIC CONES”項(xiàng)目,是延續(xù)避撞應(yīng)用使用深度學(xué)習(xí)的圖像分類(lèi)技術(shù),讓Jetbot實(shí)現(xiàn)循路的功能,這種“定速”類(lèi)型的操作基本上比較偏向于“找路”或“走迷宮”的應(yīng)用。
Jetbot使用深度學(xué)習(xí)最基礎(chǔ)的圖像分類(lèi)功能,模擬人類(lèi)真實(shí)的視覺(jué)感知能力來(lái)實(shí)現(xiàn)避撞的應(yīng)用,基本的原理在前一篇文章里已經(jīng)詳細(xì)說(shuō)明,原廠提供的best_model.pth模型文件所采用的數(shù)據(jù)集。
避撞功能是智能車(chē)的最基本保護(hù)能力,Jetbot使用深度學(xué)習(xí)的圖像分類(lèi)技術(shù)來(lái)模擬人眼習(xí)慣實(shí)現(xiàn)這個(gè)功能,但這只是智能車(chē)所展現(xiàn)的最入門(mén)應(yīng)用而已,接下去就要提升到“循路”的功能,跟著指定路線(xiàn)去前進(jìn),才是真正進(jìn)入有實(shí)用價(jià)值的應(yīng)用。
避撞功能是Jetbot一開(kāi)始最令人矚目的功能,因?yàn)檫@是所有小車(chē)都必須具備的最基本“自我保護(hù)”的能力,而Jetbot沒(méi)有任何距離傳感,只憑著一個(gè)CSI攝像頭就能完成這項(xiàng)任務(wù),對(duì)很多人來(lái)說(shuō)是一件蠻神奇的事情。
如果已經(jīng)將Jetbot智能小車(chē)組裝好的話(huà),現(xiàn)在就可以開(kāi)始執(zhí)行Jetbot提供的實(shí)驗(yàn),在接下來(lái)的操作都在以下環(huán)境中執(zhí)行。
假如您的Jetbot小車(chē)是從外面采購(gòu)第三方套件的話(huà),可以跳過(guò)本文的內(nèi)容。如果您是按照jetbot.org原廠的自行組裝方式,那么本文所提供的一些細(xì)節(jié)點(diǎn),會(huì)讓您節(jié)省很多摸索的時(shí)間。
機(jī)電控制是智能車(chē)最重要的輸出功能,假如您使用Jetbot官方的自行打印車(chē)體并用組裝方式來(lái)搭建智能小車(chē)的話(huà),就需要搭配下圖這個(gè) ”DC-Stepper-Motor” 控制板,因?yàn)?D打印車(chē)體是根據(jù)這個(gè)控制板所設(shè)計(jì)的。
在“Jetbot實(shí)戰(zhàn)系列05-Jetson的40針引腳”一文,已經(jīng)將SFIO與GPIO之間的關(guān)系分析清楚,接下來(lái)就是帶著大家更深入了解I2C引腳與開(kāi)發(fā)庫(kù)的使用,以及調(diào)整PiOLED顯示內(nèi)容的方法。
在最開(kāi)始介紹Jetbot的時(shí)候有提到,這套智能小車(chē)只使用一個(gè)CSI攝像頭作為全部輸入的設(shè)備,因?yàn)檫@種設(shè)備的體積輕巧、功耗較低。
嵌入式設(shè)備有個(gè)天生賦予的重點(diǎn)任務(wù),就是要成為自動(dòng)控制整體方案中的一員。早期市場(chǎng)對(duì)自動(dòng)控制的需求主要集中在單純的“機(jī)電控制”上,而具備智能計(jì)算的Jetson系列產(chǎn)品相對(duì)與幾十元的這類(lèi)控制板來(lái)說(shuō),成本是高出一個(gè)階位。
無(wú)線(xiàn)網(wǎng)絡(luò)是操控?zé)o人車(chē)的必要設(shè)備,因?yàn)槲覀儾豢赡茏専o(wú)人車(chē)拖著一條網(wǎng)路線(xiàn)去進(jìn)行操作。要為Jetson Nano(含2GB)裝上一片無(wú)線(xiàn)網(wǎng)卡是非常簡(jiǎn)單的事情,但是最復(fù)雜的問(wèn)題是“設(shè)置”的細(xì)節(jié),必須兼顧更多可能的使用場(chǎng)景。