在基于激光的自動(dòng)駕駛或者移動(dòng)機(jī)器人的應(yīng)用中,在移動(dòng)場(chǎng)景中提取單個(gè)對(duì)象的能力是十分重要的。因?yàn)檫@樣的系統(tǒng)需要在動(dòng)態(tài)的感知環(huán)境中感知到周?chē)l(fā)生變化或者移動(dòng)的對(duì)象,在感知系統(tǒng)中,將圖像或者點(diǎn)云數(shù)據(jù)預(yù)處理成單個(gè)物體是進(jìn)行進(jìn)一步分析的第一個(gè)步驟。
在這篇文章中就提出了一種十分高效的分割方法。首先是將掃描到的點(diǎn)云移除平面處理,然后移除平面后一定范圍內(nèi)的點(diǎn)云數(shù)據(jù)分割成不同的對(duì)象。該論文的是集中解決了在很小的計(jì)算量的條件下,能夠在大多數(shù)系統(tǒng)上做到高效的分割。避免了直接對(duì)3D點(diǎn)云的計(jì)算,并直接在2.5D的深度圖像上進(jìn)行操作。此方案能夠很好的解決處理稀疏的3D點(diǎn)云數(shù)據(jù)。作者使用了新型Velodyne VLP-16掃描儀,并且代碼是在C++和ROS中實(shí)現(xiàn)了這種方法,并且代碼是開(kāi)源的,這種方法可以做到使用單核CPU以及高于傳感器的幀運(yùn)行速率運(yùn)行,能夠產(chǎn)生高質(zhì)量的分割結(jié)果。
左圖:使用Velodyne VLP-16掃描儀得到的稀疏3D點(diǎn)云數(shù)據(jù)分割后生成的對(duì)象(如人,車(chē)和樹(shù))。不同的顏色對(duì)應(yīng)不同的分割結(jié)果。 右:用于實(shí)驗(yàn)的Clearpath Husky機(jī)器人。
在3D激光點(diǎn)云數(shù)據(jù)中分離單個(gè)對(duì)象是移動(dòng)機(jī)器人或自動(dòng)駕駛車(chē)輛自主導(dǎo)航的重要任務(wù)。 在未知環(huán)境中航行的自動(dòng)駕駛車(chē)輛面臨著對(duì)其周?chē)h(huán)境進(jìn)行推理的復(fù)雜任務(wù)。,在擁有汽車(chē)和行人的繁忙街道上,地圖可能受到環(huán)境動(dòng)態(tài)性質(zhì)導(dǎo)致的錯(cuò)誤數(shù)據(jù)關(guān)聯(lián)的影響。 在掃描配準(zhǔn)和映射過(guò)程中,能夠更好地推理此類(lèi)對(duì)象并忽略可能的動(dòng)態(tài)對(duì)象的關(guān)鍵步驟是將3D點(diǎn)云數(shù)據(jù)分割為不同的對(duì)象,以便可以單獨(dú)跟蹤它們。
所以本論文很重要的貢獻(xiàn)是將實(shí)現(xiàn)快讀高效且穩(wěn)健的3D稀疏點(diǎn)云的分割。(本人親自測(cè)試,真的很快,我的電腦的配置真的很菜,但是運(yùn)行起來(lái)都超快)在移動(dòng)的CPU上都可以處理超過(guò)70HZ(64線)或者250HZ的(16線)的Velodyne傳感器。
地面去除
在進(jìn)行分割之前,需要從掃描的點(diǎn)云數(shù)據(jù)中移除地面。這種地面移除的方法,只是把低于車(chē)輛高度的3D點(diǎn)移除。這種方法在簡(jiǎn)單的場(chǎng)景中起作用,但是如果在車(chē)輛的俯仰或者側(cè)傾角不等于零或者地面不是完美的平面。則會(huì)失敗。但是可以使用RANSAC的平面擬合的方法改善情況。
激光雷達(dá)的會(huì)提供每個(gè)激光束的距離值,時(shí)間戳以及光束的方向作為原始數(shù)據(jù)。這使得我們可以直接將數(shù)據(jù)轉(zhuǎn)換為深度圖像。圖像中的行數(shù)由垂直方向上的光束的數(shù)量定義,比如對(duì)于Velodyne掃描儀,有16線,32線以及64線,而圖像的列數(shù)有激光每360度旋轉(zhuǎn)得到的距離值。這種虛像的每個(gè)像素存儲(chǔ)了傳感器到物體之間的距離,為了加速計(jì)算甚至可以考慮在需要時(shí)將水平方向上的多個(gè)讀數(shù)組合成一個(gè)像素。
左上角:深度圖像的一部分。左中:通過(guò)顯示α角度生成的圖像。左下:應(yīng)用Savitsky-Golay平滑后的角度。右上角:α角的圖示。右下圖:左圖中標(biāo)記的α角度列的平滑圖示。
使用上述生成的和成圖像來(lái)處理而不是直接處理計(jì)算3D點(diǎn)云,可以有效的加速處理速度,對(duì)于其他的不提供距離值的掃描儀也可以將3D點(diǎn)云投影到圓柱圖像上,計(jì)算每個(gè)像素的歐幾里得距離,仍然可以使用該論文提出的方法。
為了識(shí)別地面,這里面有三個(gè)假設(shè):
1, 假設(shè)傳感器是大致安裝在水平移動(dòng)基座上。
2, 假設(shè)地面的曲率很低。
3, 移動(dòng)機(jī)器人或者車(chē)輛至少在深度圖像上最低行的像素觀測(cè)地平面
在假設(shè)成立的條件下,首先將深度圖像的每一列(c)像素的距離值(R)轉(zhuǎn)化為角度值
這些角度表示了連接兩點(diǎn)的傾斜角度。
和
分別代表在該行相鄰的深度值。知道連續(xù)垂直的兩個(gè)單個(gè)激光束深度值,可以使用三角規(guī)則計(jì)算角度α,如下所示:
其中ξa和ξb是對(duì)應(yīng)于行r-1和r的激光束的垂直角,由于每個(gè)α計(jì)算需要兩個(gè)深度值,所以生成的角度圖大小比深度圖范圍的行數(shù)小1.這里假設(shè)吧這些所有的角度表示為,表示為在r行和c列(行和列)坐標(biāo)上的角度值。
地面識(shí)別算法
根據(jù)上述算法得出的地面,地面標(biāo)記為淺藍(lán)色。
但是由于激光雷達(dá)也是有誤差的,所以這里也是需要處理一些在深度范圍內(nèi)的離群點(diǎn),具體可查看論文。為了達(dá)到角度平滑的效果使用了Savitsky-Golay濾波算法對(duì)每一個(gè)列進(jìn)行處理。在得到濾波后的角度圖后,在這個(gè)基礎(chǔ)上開(kāi)始執(zhí)行地面識(shí)別,使用了廣度優(yōu)先搜索將相似的點(diǎn)標(biāo)記在一起,廣度優(yōu)先搜索(Breadth-first search BFS) 是一種流行的圖搜索遍歷算法,他從圖給定的點(diǎn)開(kāi)始遍歷,并在移動(dòng)到下一級(jí)令居之前首先開(kāi)始探索直接相鄰的節(jié)點(diǎn),在該論文中使用了網(wǎng)格上的N4領(lǐng)域值計(jì)算角度差值,以確定矩陣M的兩個(gè)相鄰元素是否滿足角度上的約束條件Δa,設(shè)置為5°。
使用激光深度圖像進(jìn)行快速有效的分割
傳感器的垂直分辨率對(duì)分割問(wèn)題的難度是有著十分重要的影響的,我們需要判斷對(duì)于相鄰點(diǎn),去判斷該激光束是否是被同一物體反射。為了解決激光是否是同一個(gè)物體反射的問(wèn)題,這里是基于角度測(cè)量的方法。這種方法的好處是文中反復(fù)提及多次這種方法的優(yōu)點(diǎn) :首先,我們可以直接在深度圖像中利用明確定義的鄰域關(guān)系,這使得分割問(wèn)題更容易。 其次,我們避免生成3D點(diǎn)云,這使得整體方法的計(jì)算速度更快。
在下圖中展示了分割的效果
這是使用該分割方案的結(jié)果,(A)圖是來(lái)自Velodynede 點(diǎn)云,(B)根據(jù)傳感器的原始值創(chuàng)建的深度圖像,并且已經(jīng)將地面點(diǎn)去除了。(C)圖是在生成的深度圖的基礎(chǔ)上執(zhí)行的分割結(jié)果。(D)將分割后的深度圖還原為點(diǎn)云,并以不同的顏色顯示。
這里詳細(xì)的解釋一下關(guān)于如果使用角度約束的方法實(shí)現(xiàn)分割的:
如下圖所示的一個(gè)示例場(chǎng)景,其中兩個(gè)人在騎自行車(chē)者前面彼此靠近地行走,騎自行車(chē)者在他們和停放的汽車(chē)之間經(jīng)過(guò)。 這里使用的Velodyne VLP-16掃描儀記錄了這個(gè)場(chǎng)景。 中間的圖像展示出了從位于O處的掃描儀測(cè)量的兩個(gè)任意點(diǎn)A和B的結(jié)果,表示出了激光束OA和OB。 在不失一般性的情況下,我們假設(shè)A和B的坐標(biāo)位于以O(shè)為中心的坐標(biāo)系中,y軸沿著兩個(gè)激光束中較長(zhǎng)的那一個(gè)。 我們將角度β定義為激光束與連接A和B的線之間的角度,該角度一般是遠(yuǎn)離掃描儀。 在實(shí)踐中,角度β證明是有價(jià)值的信息,可以用來(lái)確定點(diǎn)A和B是否位于同一物體上。
左:示例場(chǎng)景有兩個(gè)行人,一個(gè)騎自行車(chē)者和一輛汽車(chē)。 中間:假設(shè)傳感器在O點(diǎn)并且線OA和OB表示兩個(gè)激光束,則點(diǎn)A和B產(chǎn)生一條線,該線估計(jì)對(duì)象的表面,如果它們都屬于同一對(duì)象。 我們基于角度β做出是否為同一物體的判斷。 如果β>θ,其中θ是預(yù)定閾值,認(rèn)為這些點(diǎn)代表一個(gè)對(duì)象。 右圖:示例場(chǎng)景中行人的俯視圖。 綠線表示β>θ的點(diǎn),而紅線表示低于閾值的角度,因此將對(duì)象標(biāo)記為不同。
那么基于激光的測(cè)量值我們是知道第一次測(cè)量的距離值OA以及對(duì)應(yīng)的第二次測(cè)量值OB,分別將這兩次的測(cè)量結(jié)果標(biāo)記為d1和d2,那么利用以上信息既可以用下列公式測(cè)量角度:
圖中的右圖示出了從場(chǎng)景的俯視圖中在xy平面中的計(jì)算。 注意,我們可以計(jì)算在范圍圖像中在行或列方向上相鄰的點(diǎn)A和B對(duì)的角度β。 在第一種情況下,角度對(duì)應(yīng)于行方向上的角度增量,而另一種情況下對(duì)應(yīng)于列方向上的增量。
分割算法
基于閾值的β的分割方法在實(shí)驗(yàn)評(píng)估中進(jìn)行實(shí)驗(yàn),實(shí)際情況可以是被掃描物體是平面的情況,例如墻壁,并且?guī)缀跗叫杏诩す馐较?。在這種情況下,角度β將很小,因此物體可能被分成多個(gè)區(qū)段。這基本上意味著如果β小于θ,則難以確定兩個(gè)點(diǎn)是否源自兩個(gè)不同的物體,或者僅僅位于幾乎平行于波束方向的平面物體上。然而,盡管有這個(gè)缺點(diǎn),我們的實(shí)驗(yàn)表明該方法在實(shí)踐中仍然有用。上述行為很少發(fā)生,如果是這樣,它通常將會(huì)導(dǎo)致特別傾斜的平面物體的過(guò)度分割。
以上就是關(guān)于去地面后使用的分割算法??梢钥吹贸鲎钪匾囊粋€(gè)公式就是β角度值的求解
實(shí)驗(yàn)部分
該算法
(i)所有計(jì)算都可以快速執(zhí)行,即使在大約70 Hz的移動(dòng)CPU的單核上運(yùn)行,
(ii)可以 將移動(dòng)機(jī)器人獲得3D原始數(shù)據(jù)生成深度數(shù)據(jù)并分段為有意義的個(gè)體
(iii)該方法在稀疏數(shù)據(jù)上表現(xiàn)良好,例如從16光束Velodyne Puck掃描儀獲得的稀疏數(shù)據(jù)。 在實(shí)驗(yàn)中中,使用點(diǎn)云庫(kù)PCL中來(lái)實(shí)現(xiàn)的歐幾里德聚類(lèi)。 在所有實(shí)驗(yàn)中,我們使用默認(rèn)參數(shù)θ= 10°。
-
傳感器
+關(guān)注
關(guān)注
2573文章
53847瀏覽量
779719 -
移動(dòng)機(jī)器人
+關(guān)注
關(guān)注
2文章
795瀏覽量
34508 -
深度圖像
+關(guān)注
關(guān)注
0文章
19瀏覽量
3664
原文標(biāo)題:實(shí)時(shí)稀疏點(diǎn)云分割
文章出處:【微信號(hào):IV_Technology,微信公眾號(hào):智車(chē)科技】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
基于3D點(diǎn)云的多任務(wù)模型在板端實(shí)現(xiàn)高效部署

基于深度學(xué)習(xí)的方法在處理3D點(diǎn)云進(jìn)行缺陷分類(lèi)應(yīng)用

3D點(diǎn)云技術(shù)介紹及其與VR體驗(yàn)的關(guān)系
點(diǎn)云問(wèn)題的介紹及3D點(diǎn)云技術(shù)在VR中的應(yīng)用
谷歌AI發(fā)布3D物體數(shù)據(jù)集,附帶標(biāo)記邊界框、相機(jī)位姿、稀疏點(diǎn)云
基于層級(jí)圖網(wǎng)絡(luò)的圖卷積,用點(diǎn)云完成3D目標(biāo)檢測(cè)
關(guān)于3D點(diǎn)云針對(duì)失真的穩(wěn)健性的系統(tǒng)性研究
何為3D點(diǎn)云語(yǔ)義分割
首個(gè)無(wú)監(jiān)督3D點(diǎn)云物體實(shí)例分割算法
如何試用MediaPipe實(shí)現(xiàn)人臉3D點(diǎn)云數(shù)據(jù)提取
3D點(diǎn)云數(shù)據(jù)集在3D數(shù)字化技術(shù)中的應(yīng)用
自動(dòng)駕駛3D點(diǎn)云語(yǔ)義分割數(shù)據(jù)標(biāo)注

基于深度學(xué)習(xí)的3D點(diǎn)云實(shí)例分割方法

評(píng)論