傳感器融合是自動(dòng)駕駛汽車的關(guān)鍵技術(shù)之一。這是自動(dòng)駕駛汽車工程師都必須具備的技能。原因很簡(jiǎn)單:感知無處不在,無時(shí)無刻不在使用。
自動(dòng)駕駛汽車通過4個(gè)關(guān)鍵技術(shù)工作:感知、定位、規(guī)劃和控制。
傳感器融合是感知模塊的一部分。我們希望融合來自視覺傳感器的數(shù)據(jù),以增加冗余、確定性或利用多個(gè)傳感器的優(yōu)勢(shì)。
傳感器數(shù)據(jù)和融合
在感知步驟中,使用激光雷達(dá)、雷達(dá)和攝像頭的組合來理解環(huán)境是很常見的。這3個(gè)傳感器各有優(yōu)缺點(diǎn),使用它們可以幫助您擁有所有優(yōu)點(diǎn)。
如上圖所示:
攝像頭擅長(zhǎng)處理對(duì)象分類及理解場(chǎng)景。
作為一種飛行時(shí)間傳感器,激光雷達(dá)非常適合估計(jì)距離。
雷達(dá)可以直接測(cè)量障礙物的速度。
在本文中,我們將學(xué)習(xí)融合激光雷達(dá)和攝像頭,從而利用攝像頭的分辨率、理解上下文和對(duì)物體進(jìn)行分類的能力以及激光雷達(dá)技術(shù)來估計(jì)距離并查看3D世界。
攝像頭:2d傳感器
相機(jī)是一種眾所周知的傳感器,用于輸出邊界框、車道線位置、交通燈顏色、交通標(biāo)志和許多其他東西。在任何自動(dòng)駕駛汽車中,攝像頭從來都不是問題。
如何使用這種2D傳感器,并將其與3D傳感器(如:激光雷達(dá))一起應(yīng)用于3D世界?
激光雷達(dá):3d傳感器
激光雷達(dá)代表光檢測(cè)和測(cè)距。它是一個(gè)3D傳感器,輸出一組點(diǎn)云;每個(gè)都有一個(gè)(X,Y,Z)坐標(biāo)??梢栽?D數(shù)據(jù)上執(zhí)行許多應(yīng)用:包括運(yùn)行機(jī)器學(xué)習(xí)模型和神經(jīng)網(wǎng)絡(luò)。下面是一個(gè)輸出示例。
如何將此3D傳感器與相機(jī)等2D傳感器配合使用?
今天,我們介紹融合激光雷達(dá)和相機(jī)之間的數(shù)據(jù)。
傳感器融合算法
傳感器融合算法非常多。許多不同的方法都是可能的?!拔覀兿胍姆N類型的融合?”至關(guān)重要。
如 文章所屬,有3種方式來對(duì)融合算法分類:
按抽象級(jí)別:“何時(shí)”進(jìn)行融合?when
按中心化級(jí)別:在“哪里”進(jìn)行融合?where
按競(jìng)爭(zhēng)級(jí)別:融合“什么”?what
“什么”很清楚:我們的目標(biāo)是競(jìng)爭(zhēng)和冗余?!霸谀睦铩辈⒉恢匾?,很多解決方案都可以解決。剩下“何時(shí)”...
在傳感器融合中,有兩種可能的過程:
早期融合:融合原始數(shù)據(jù)--像素和點(diǎn)云。
后期融合:融合結(jié)果--來自激光雷達(dá)和相機(jī)的邊界框。
在本文中,我們將研究這兩種方法。
We then check whether or not the point clouds belong to 2D bounding boxes detected with the camera.
This 3-step process looks like this:
我們從早期融合開始。
早期傳感器融合:融合原始數(shù)據(jù)
早期融合是融合來自傳感器的原始數(shù)據(jù)的。因此,一旦插入傳感器,該過程就會(huì)很快的發(fā)生。
最簡(jiǎn)單和最常見的方法是將點(diǎn)云(3D)投影到2D圖像上。然后檢查點(diǎn)云和相機(jī)檢測(cè)到的2D邊界框的重合度。
這個(gè)3步過程如下所示:
此過程已在 此文中歸類為低級(jí)別傳感器融合。
1.點(diǎn)云投影到2D
第一個(gè)想法是將激光雷達(dá)幀中的3D點(diǎn)云轉(zhuǎn)換為相機(jī)幀中的2D投影。為此,需要應(yīng)用幾何原理如下:
(輸入點(diǎn)云在激光雷達(dá)幀/歐幾里得坐標(biāo)中。)
將每個(gè)3D激光雷達(dá)點(diǎn)轉(zhuǎn)換為齊次坐標(biāo)。
輸出:激光雷達(dá)幀/齊次坐標(biāo)
應(yīng)用該轉(zhuǎn)換點(diǎn)的投影方程(平移和旋轉(zhuǎn))將該點(diǎn)從激光雷達(dá)幀轉(zhuǎn)換為相機(jī)幀。
輸出:相機(jī)幀/齊次坐標(biāo)
最后,將點(diǎn)轉(zhuǎn)換回歐幾里得坐標(biāo)。
輸出:相機(jī)幀/歐幾里得坐標(biāo)
如果不熟悉投影、旋轉(zhuǎn)和齊次坐標(biāo),可以學(xué)習(xí) 立體視覺課程。
這是第1步的結(jié)果。
2.2D對(duì)象檢測(cè)
下一部分是用相機(jī)檢測(cè)物體。這部分不過多描述,像YOLOv4這樣的算法可以執(zhí)行對(duì)象檢測(cè)。有關(guān)它的更多信息,可以閱讀 YOLOv4研究評(píng)論。
3.ROI匹配
最后一部分稱為感興趣區(qū)域匹配。我們將簡(jiǎn)單地融合每個(gè)邊界框內(nèi)的數(shù)據(jù)。
輸出是什么?
對(duì)于每個(gè)邊界框,相機(jī)給出分類結(jié)果。
對(duì)于每個(gè)激光雷達(dá)投影點(diǎn),都有一個(gè)非常準(zhǔn)確的距離。
因此,我們得到了準(zhǔn)確測(cè)量和分類的物體。
可能會(huì)出現(xiàn)一個(gè)問題:我們選擇哪一點(diǎn)作為距離?
每個(gè)點(diǎn)的平均值?
中位數(shù)?
中心點(diǎn)?
最近的?
使用2D障礙物檢測(cè)時(shí),會(huì)遇到如下問題。如果我們選擇的點(diǎn)屬于另一個(gè)邊界框怎么辦?或者屬于背景?這是一個(gè)棘手的過程。 分割方法可能會(huì)更好,因?yàn)閷Ⅻc(diǎn)與像素精確匹配。
下面是結(jié)果的樣子,箭頭顯示融合可能失敗的點(diǎn)。
后期傳感器融合:融合結(jié)果
后期融合是在獨(dú)立檢測(cè)后融合結(jié)果。
我們可以想到的一種方法是運(yùn)行獨(dú)立檢測(cè),在兩端獲得3D邊界框,然后融合結(jié)果。
另一種方法是運(yùn)行獨(dú)立檢測(cè),得到兩端的2D邊界框,然后融合結(jié)果。
因此我們有兩種可能;在2D或3D中進(jìn)行融合。
下面是一個(gè)2D示例:
在本文中,我將介紹3D過程,因?yàn)樗y。相同的原則適用于2D。
過程如下所示:
1.3D障礙物檢測(cè)(激光雷達(dá))
使用激光雷達(dá)在3D中尋找障礙物的過程是眾所周知的。有兩種方法:
樸素的方法,使用無監(jiān)督的3D機(jī)器學(xué)習(xí)。
深度學(xué)習(xí)方法,使用RANDLA-NET等算法。
激光雷達(dá)課程這兩種方法都有講。
2.3D障礙物檢測(cè)(相機(jī))
這個(gè)過程要困難得多,尤其是在使用單目相機(jī)時(shí)。在3D中尋找障礙物需要我們準(zhǔn)確地知道我們的投影值(內(nèi)在和外在校準(zhǔn))并使用深度學(xué)習(xí)。如果我們想獲得正確的邊界框,了解車輛的大小和方向也至關(guān)重要。
本文是關(guān)于融合的文章,不介紹檢測(cè)部分。可以查看 文章。
最后,關(guān)注一下匹配。
Here's an example coming from the paper 3D Iou-Net (2020) .
3.IOU匹配空間中的IOU匹配
匹配背后的過程非常簡(jiǎn)單:如果來自攝像頭和激光雷達(dá)的邊界框在2D或3D中重疊,我們認(rèn)為障礙是相同的。
下面是來自論文3D Iou-Net(2020)的示例。
利用這個(gè)想法,我們可以將空間中的物體關(guān)聯(lián)起來,從而在不同的傳感器之間進(jìn)行關(guān)聯(lián)。
此過程在 文章中歸類為中級(jí)別傳感器融合。
中級(jí)傳感器融合和高級(jí)傳感器融合的區(qū)別在于高級(jí)傳感器的融合包括跟蹤。
要添加時(shí)間跟蹤,我們需要一個(gè)稱為時(shí)間關(guān)聯(lián)的類似過程。
時(shí)間上的IOU匹配
在 障礙物追蹤課程中,講了一種使用卡爾曼濾波器和匈牙利算法從幀到幀在時(shí)間上關(guān)聯(lián)對(duì)象的技術(shù)。結(jié)果使我們能夠在幀之間跟蹤對(duì)象,甚至預(yù)測(cè)它們的下一個(gè)位置。
如下所示:
IOU匹配的原理完全一樣:如果從第一幀到第二幀的邊界框重疊,我們認(rèn)為這個(gè)障礙物是相同的。
此處,我們跟蹤邊界框位置并使用IOU(Intersection Over Union)作為指標(biāo)。我們還可以使用深度卷積特征來確保邊界框中的對(duì)象是相同的--我們將此過程稱為SORT(簡(jiǎn)單在線實(shí)時(shí)跟蹤),如果使用卷積特征,則稱為深度SORT。
由于我們可以在空間和時(shí)間中跟蹤對(duì)象,因此我們還可以在這種方法中使用完全相同的算法進(jìn)行高級(jí)傳感器融合。
總結(jié)
我們現(xiàn)在已經(jīng)研究了激光雷達(dá)和相機(jī)融合的兩種方法。
讓我們總結(jié)一下我們學(xué)到的東西:
傳感器融合過程是關(guān)于融合來自不同傳感器的數(shù)據(jù),此處是激光雷達(dá)和攝像頭。
可以有早期或后期融合--早期融合(低級(jí)傳感器融合)是關(guān)于融合原始數(shù)據(jù)。后期融合是關(guān)于融合對(duì)象(中級(jí)傳感器融合)或軌跡(高級(jí)傳感器融合)
在做早期傳感器融合時(shí),要做點(diǎn)云和像素或者框的關(guān)聯(lián)。
在進(jìn)行后期傳感器融合時(shí),我們想要做結(jié)果(邊界框)之間的關(guān)聯(lián),因此有諸如匈牙利算法和卡爾曼濾波器之類的算法來解決它。
文章來源:汽車電子與軟件 丨版權(quán)聲明:本文所有圖片文字源于網(wǎng)絡(luò),版權(quán)歸原作者所有,向原作者致敬!如涉及作品版權(quán)問題,請(qǐng)聯(lián)系我們刪除或做相關(guān)處理!