日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Apollo自动驾驶入门课程第⑤讲 — 感知(下)

發布時間:2023/12/10 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Apollo自动驾驶入门课程第⑤讲 — 感知(下) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

目錄

1. 卷積神經網絡

2. 檢測與分類

3. 跟蹤

4. 分割

5. Apollo感知

6. 傳感器數據比較

7. 感知融合策略


本文轉自微信公眾號:Apollo開發者社區?原創:?阿波君?Apollo開發者社區?8月29日

上一篇文章中,我們發布了無人駕駛技術的?感知篇 (上)。從感知的概述介紹到反向傳播算法。也有很多開發者對于往期內容做了筆記,希望更多的同學能多多學習,勤做筆記。

本期將會繼續介紹感知的相關知識,深度學習無人駕駛感知的剩余內容。希望各位開發者在學習的同時能夠做好筆記,在Apollo交流社群中與大家交流探討,共同進步。


視頻鏈接為:Apollo自動駕駛入門課程Sebastran感知_騰訊視頻

1. 卷積神經網絡

卷積神經網絡CNN?是一種人工神經網絡,它對感知問題特別有效,CNN接受多維輸入包括定義大多數傳感器數據的二維和三維形狀。如果使用標準神經網絡對圖像進行分類,則需要通過一種方法將圖像連接到網絡的第一層,這屬于一維。標準做法是通過將圖像矩陣重塑為一個矢量,并在一個大行中連接所有列,將圖像“展開”為一維像素陣列。

然而這種方法打破了圖像中所嵌入的空間信息,如果圖像中有車輪,則車輪中的所有像素將散布在整個像素陣列中。如果將其散布在一個維度上,神經網絡很難從圖像中提取車輪。CNN通過維持輸入像素之間的空間關系來解決這個問題,CNN通過將過濾器連續滑過圖像來收集信息,每次收集信息時,只對整個圖像的一小部分區域進行分析,稱為卷積

當在整個輸入圖像上對一個過濾器進行卷積時,將該信息與下一個卷積層相關聯。例如CNN識別第一個卷積層中的基本邊緣和顏色信息,然后通過在第一層上卷積新過濾器,CNN使用邊緣和顏色信息來歸納更復雜的結構如車輪、車門、擋風玻璃;而另一個卷積可使用車輪、車門、擋風玻璃識別整個車輛;最后神經網絡可使用這一高階信息對車輛進行分類。

CNN根據其任務查找真正需要的特征,任務可能是圖像檢測、分類、分割、其他類型的目標。

2. 檢測與分類

感知任務中,首先是障礙物檢測和分類,在駕駛過程中會遇到許多障礙物,靜態障礙物包括墻壁、樹木、桿子、建筑物;動態障礙物包括行人、自行車、汽車。計算機首先需要知道障礙物的位置,然后進行分類。在路中行駛的無人駕駛車可能會探測到許多不同的物體,汽車根據所感知的物體類型來確定路徑和速度。如果感知到前方有一輛自行車,汽車可能會決定減速和變道,以便安全駛過自行車。但是如果感知到前方有另一輛車,并預測到前方車輛也將以接近限速的速度行駛,可能會保持其速度和車道。

將另一個示例為交通信號燈檢測分類,首先將使用計算機視覺對圖像中的交通信號燈進行定位,然后根據燈光顯示顏色對交通信號燈進行分類。

無人駕駛中,使用什么算法來對障礙物進行檢測和分類?可以先使用檢測CNN來查找圖像中的對象的位置,在對圖像中的對象進行定位后,可以將圖像發送給另一個CNN進行分類。也可以使用單一CNN體系結構對對象進行檢測和分類,一種通常的做法為在單個網絡體系結構的末端附加幾個不同的“頭”,一個頭可能執行檢測,另一個則可能執行分類。經典體系結構為 R-CNN、Fast R-CNN、Faster R-CNN、YOLO、SSD等。

3. 跟蹤

檢測完對象后,需要追蹤它們追蹤的意義是什么?如果我們對每個幀中的每個對象進行檢測并用邊界框對每個對象進行標識,那么跨幀追蹤對象會帶來哪些好處?

首先追蹤在檢測失敗時是至關重要的,如果你在運行檢測算法時,對象被其他對象遮擋一部分,則檢測算法可能會失敗,但追蹤可以解決遮擋問題。另一個原因在于追蹤可以保留身份,障礙物檢測的輸出為包含對象的邊界框,但是對象沒有與任何身份關聯,單獨使用對象檢測時,計算機不知道一個幀中的哪些對象與下一幀中的哪些對象相對應,該任務對人類來說很簡單,但對汽車來說很困難。

追蹤的第一步為確認身份,通過查找特征相似度最高的對象,將在之前的幀中檢測到的所有對象與在當前的幀中檢測到的對象進行匹配。對象具有各種特征,可能基于顏色、基于形狀,計算機視覺算法可以計算出復雜的圖像特征,如局部二值模式和方向梯度直方圖。當然也需要考慮連續視頻幀中,兩個障礙物之間的位置和速度,由于兩幀之間的對象位置和速度沒有太大變化,該信息也可以幫助快速找到匹配的對象。

在確定身份后,可以使用對象的位置并結合預測算法以估計在下一個時間步的速度和位置,該預測可幫助識別下一幀中的相應對象。

4. 分割

語義分割涉及對圖像的每個像素進行分類,用于盡可能詳細地了解環境并確定車輛可駕駛區域。

語義分割依賴于一種特殊類型的CNN,被稱為全卷積網絡FCN。FCN用卷積層來替代傳統CNN體系結構末端的平坦層,現在網絡中的每一層都是卷積層,因此名稱為全卷積網絡”。

FCN提供了可在原始輸入圖像之上疊加的逐像素輸出,必須考慮的一個復雜因素是大小。在典型的CNN中經過多次卷積之后所產生的輸出比原始輸入圖像小得多。然而為了分割像素,輸出尺寸必須與原始圖像的尺寸相匹配。為了完成,可以對中間輸出進行上采樣處理,直到最終輸出的大小與原始輸出圖像的大小相匹配。網絡的前半部分通常被稱為編碼器,因為這部分網絡對輸入圖像的特征進行了提取和編碼。網絡的后半部分通常被稱為解碼器,因為它對這些特征進行了解碼并將其應用于輸出。

激光雷達數據提供了用于構建世界視覺表征的足夠空間信息,計算機視覺技術不僅可以使用攝像頭圖像進行對象分類,還可以使用點云和其他類型的空間相關數據進行對象分類。

5. Apollo感知

Apollo?開放式軟件棧可感知障礙物、交通信號燈、車道。對于三維對象檢測,Apollo 在高精度地圖上使用感興趣區域ROI來重點關注相關對象。Apollo將ROI過濾器應用于點云和圖像數據,以縮小搜索范圍并加快感知。

然后通過檢測網絡饋送已過濾的點云,輸出用于構建圍繞對象的三維邊界框。

最后使用被稱為檢測跟蹤關聯的算法來跨時間步識別單個對象,該算法先保留在每個時間步要跟蹤的對象列表,然后在下一個時間步中找到每個對象的最佳匹配。

對于交通信號燈的分類,Apollo先使用高精度地圖來確定前方是否存在交通信號燈。如果前方有交通信號燈,則高精度地圖會返回燈的位置。后續根據位置,攝像頭搜索范圍,在攝像頭捕獲到交通信號燈圖像后。Apollo使用檢測網絡對圖像中的燈進行定位,然后從較大的圖像中提取交通信號燈。將裁剪的交通燈圖像提供給分類網絡以確定燈顏色,如果有許多燈則系統需要選擇哪些燈與其車道相關。

Apollo使用?YOLO 網絡來檢測車道線、動態物體其中包括車輛、卡車、騎自行車的人、行人。在經過YOLO網絡檢測后,在線檢測模塊會并入來自其他傳感器的數據對車道線預測進行調整,車道線最終被并入名為“虛擬車道”的單一數據結構中。同樣也通過其他傳感器的數據對YOLO網絡所檢測到的動態對象進行調整,以獲得每個對象的類型、位置、速度、前進方向。虛擬通道和動態對象均被傳遞到規劃與控制模塊。

6. 傳感器數據比較

感知通常依賴于攝像頭、激光雷達、雷達,如圖顯示了這三種傳感器的優缺點。攝像頭非常適用于分類,在Apollo中攝像頭主要用于交通信號燈分類、車道檢測。激光雷達的優勢在于障礙物檢測,即使在夜間仍能準確地檢測障礙物。雷達在探測范圍和應對惡劣天氣方面占優勢,通過融合這三種傳感器的數據可實現最佳聚合性能,被稱為“傳感器融合

雷達已經在汽車上使用很多年,在各種系統中都需要雷達,如自適應巡航控制、盲點警告、碰撞警告和碰撞預防系統等。盡管雷達技術已經成熟,它仍在不斷進步,作用不斷提升。其他傳感器測量速度的方法是計算兩次讀數之間的差距,而雷達則通過多普勒效應來直接測量速度。多普勒效應根據對象在遠離還是接近你,測量出雷達的頻率變化。就像消防車警報器一樣,當車輛正在遠離你和駛向你時,聽起來聲是不一樣的。多普勒效應對傳感器融合至關重要。因為它可以把速度作為獨立的測量參數,從而提升了融合算法的收斂速度。雷達還可以生成環境的雷達地圖,進而實現定位。因為雷達波在堅硬表面會回彈。因此,它可以直接測量對象距離,無需在視線范圍內也可以。雷達可以看到其他車輛底部。并發現可能會被阻擋的建筑物和對象。在車上的所有傳感器中,雷達是不容易受雨霧影響的。而且視野寬闊,可達 150 度,距離可達 200 多米。與激光雷達和攝像頭相比,雷達分辨率較低,尤其是在垂直方向,分辨率非常有限。分辨率低意味著來自靜態物體的反射可能產生問題。例如,街道上檢修孔蓋或汽水罐,可能產生很高的雷達反射率,但他們并不大。我們將其稱為雷達雜波。因此,當前的車載雷達通常會忽視靜態物體。

激光雷達是激光探測與測量的簡稱,而雷達則是無線電探測與測量的簡稱。雷達使用無線電波,而激光雷達則使用紅激光束來確定傳感器和附近對象的距離。目前的激光雷達大多使用 900 納米光波長度的光源。但部分激光雷達使用的光波長度更長,在雨霧中性能更好。當前的激光雷達使用旋轉座架發射激光,掃描周邊環境。激光室脈沖式的,脈沖被對象反射,然后返回一個點云,來代表這些物體。激光雷達的空間分辨率遠遠高于雷達。因為激光束越聚焦,垂直方向的掃描層數量就越多,因此每層的激光雷達的密度也越高。目前,激光雷達還不能直接測量對象的速度,必須使用兩次或多次掃描之間的位置差來確定。激光雷達受天氣和傳感器清潔程度影響也很大,因此需要保持清潔。它們塊頭也比其他傳感器更大,因此也很難安裝,除非你只想在車頂安裝一個大的激光掃描器。

7. 感知融合策略

Apollo使用激光雷達和雷達來檢測障礙物,用于融合輸出的主要算法為卡爾曼濾波。卡爾曼濾波有兩個步驟:第一步為預測狀態,第二步是更新測量結果。設想正在跟蹤一名行人,這里的狀態表示行人的位置和速度,從已經掌握的行人狀態開始,使用這些信息來執行卡爾曼濾波的第一步,即預測行人在將來的狀態;下一步為誤差結果更新,使用新的傳感器來更新所認為的行人狀態,卡爾曼濾波算法是預測和更新步驟的無限循環。

實際上有兩種測量結果更新步驟:同步和異步。同步融合同時更新來自不同傳感器的測量結果,而異步融合則逐個更新所收到的傳感器測量結果。傳感器融合可提高感知性能,因為各傳感器相輔相成,融合也可以減少跟蹤誤差。

更多詳細課程內容,大家可以登陸官網繼續學習!

也可以添加社區小助手(Apollodev)為好友,回復“課程學習”進群與其他開發者共同交流學習。 ?

自課程上線以來,瀏覽量已超10萬,已幫助全球97個國家約 7000 名學員入門自動駕駛與 Apollo 開源平臺,其中37%為海外學員,本門課程已成為優達學城 (Udacity) 近期獲得關注度最高的免費課程之一。

總結

以上是生活随笔為你收集整理的Apollo自动驾驶入门课程第⑤讲 — 感知(下)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。