這個工作來自于浙江大學和DAMO academy。在點云配準領域,盡管已經有很多方法被提出來,但是無論是傳統方法,還是近年來蓬勃發展的基于深度學習的三維點云配置方法,其實在真正應用到真實的LiDAR掃描點云幀時都會出現一些問題。造成這種困窘的一個主要的原因在于LiDAR掃描到的點云分布極不均勻。
具體而言,相較于RGBD相機,LiDAR的有效掃描深度要大很多。隨著深度的增大,其激光發射出去的扇面將會變得稀疏。因此,即使是掃描同一目標或場景的點云幀之間,其尺度并不一致。導致想要研究的關鍵點周圍的鄰域點分布也存在較大不同,難以通過這些3D點的特征描述關聯起點云幀。
這個問題一直以來都十分棘手。這個工作獨辟蹊徑,提出對于這種點云數據,不再通過3D點來構建關聯以實現點云配準,而是研究點云數據中的高層次的幾何原語。這種做法直觀來說是有道理的,因為這些高層次的幾何原語通常會有較大的支撐點集,換句話說,其對于點云掃描和采樣具有較大的魯棒性,通常不會因為某個點沒有被記錄而影響相應幾何原語的提取。
同時,幾何原語通常具有更具體的特征和幾何結構,例如一條直線、一個平面等,其更容易構建不同幀間的關聯,避免誤匹配。但是,這種研究思路通常難度較大,原因在于缺乏足夠的有標簽的數據集。在這種情況下,這個工作顯得極其重要,它不僅僅提供了一個數據集自動標注模型,同樣也是少數真正開始探索幾何原語用于點云配準任務的先河性的工作。
摘要:交通桿和建筑物邊緣是城市道路上經??梢杂^察到的物體,為各種計算機視覺任務傳達了可靠的提示。為了重復提取它們作為特征并在離散的LiDAR幀之間進行關聯以進行配準,我們提出了第一個基于學習的LiDAR點云3D線特征分割和描述模型。
為了在沒有耗時和繁瑣的數據標記過程的情況下訓練我們的模型,我們首先為目標線的基本外觀生成合成原語,并構建一個迭代線自動標注過程以逐漸調整真實LiDAR掃描的線標簽。我們的分割模型可以在任意尺度擾動下提取線,并且我們使用共享的EdgeConv編碼器層來聯合訓練兩個分割和描述符提取頭。
基于該模型,我們可以在沒有初始變換提示的情況下構建一個用于點云配準的高可用性全局配準模塊。實驗表明,我們的基于線的配準方法與最先進的基于點的方法相比具有很強的競爭力。
主要貢獻:
1.據我們所知,我們提出了第一個基于學習的激光雷達掃描線分割和描述網絡,為全局配準提出了一個適用的特征類別。
2.我們提出了一種用于點云線標注方法,該方法可以將從合成數據中學習的模型遷移到真實的LiDAR掃描點云以進行自動標注。
3.我們探索了點云特征的尺度不變性,并通過消除Sim(3)變換中的尺度因子,為改善點云上基于學習的任務在尺度擾動下的泛化提供了可行的思路
Fig1:整體網絡框架。a):我們在合成數據上訓練尺度不變的分割,并在多次幾何自適應迭代后得到精確的線標簽。b):我們同時在標注的LiDAR掃描點云上訓練分割和描述符提取網絡,其中紅色、紫色和綠色層分別代表編碼器、分割網絡頭和描述符提取網絡頭。
方法介紹: 考慮到缺乏可用的LiDAR掃描點云的有標簽線數據集,我們遵循SuperPoint的自監督思想來訓練我們的線分割模型,首先構建一個簡單的合成數據來初始化一個基礎模型,然后使用幾何自適應的自動標記真實LiDAR掃描點云進行迭代來調整模型。之后我們收集不同LiDAR掃描點云幀之間的線對應關系,并以端到端的方法聯合訓練線分割和描述符提取網絡。
一、線分割模型
1)合成數據生成.
兩種類型的可靠線段可以檢測:
1)平面之間的交線,以及2)交通桿。因此,我們選擇使用圖2(a)所示的以下兩個網格原語分別模擬它們的局部外觀。這兩個網格模型首先被均勻采樣成4000個點,如圖 2(b) 所示,每個點添加5%的相對3自由度位置擾動。然后,為了模擬附近可能的背景點,我們隨機裁剪了40 個基本原語,每個原語包含1000個來自真實掃描點云的點,并將它們放在一起組成最終的合成數據。我們總共生成了5000個合成點云,每個點云有5000個點。
?2)尺度不變線分割.
我們將線檢測視為點云分割問題,主要挑戰是原語尺度縮放問題:在真實的LiDAR點云幀中,點的密度隨著掃描距離的增加而降低,而當目標特征遠離傳感器時,體素網格下采樣不能完全歸一化密度。此外,我們的合成數據生成也沒有考慮線的尺度(如圖 2(e)放在一起時所示)。如果不處理這個問題,當訓練和測試數據在不同的尺度上時,模型將不會產生合理的預測。 我們的網絡通過消除Sim(3)變換的尺度因子s和使用相對距離來解決這個問題,如:
在上式中,我們搜索點p的k=20個最近點,并計算尺度不變的局部特征f(p與其近鄰點之間的曼哈頓距離與歐幾里得距離之比)。這種特征定義的損失在于f不能反映原點在歐幾里德空間中的位置,因此此變換存在信息損失。 3)模型結構. 我們選擇DGCNN作為我們的主干,因為它直接對點及其最近的近鄰點進行編碼而無需復雜的操作。下式展示了其被稱為EdgeConv的局部特征編碼函數,其中是第j個特征,是特征空間 S中 的鄰居, h是學習的模型。 在第一個EdgeConv層中,x表示歐氏空間中的點坐標。在我們的實現中,我們收集每個點的k=20個最近鄰點并計算尺度不變特征f。然后我們把第一個EdgeConv層變成: 它用尺度不變的特征f代替了歐氏空間中的坐標,但仍然是歐氏空間中第i個鄰居點的特征,而不是在特征空間中的鄰居。由于在生成尺度不變特征時,原始歐氏空間中的部分信息已經丟失,保留原始歐氏空間中的鄰域關系可以減少進一步的信息丟失。
Fig2:合成數據生成步驟。我們通過對原始網格模型進行采樣并將真實掃描散點作為噪聲來增強生成合成數據。
4)自動線標注.
當前沒有可用的 LiDAR點云有標簽線數據集,并且難以對點云進行手動標記。因此,我們構建了一個自動線標注框架(圖 3)。受SuperPoint啟發,我們對LiDAR掃描點云執行幾何自適應。首先,我們僅在合成數據上訓練一個尺度不變的分割模型,并將XOY中20m和偏航 360°的均勻分布的2D變換應用于LiDAR掃描點云。
然后,我們使用經過訓練的模型來預測擾動數據上的標簽,聚合來自所有擾動幀的結果,并將超過80%預測屬于線的點作為候選點。為了將點聚類成線,我們使用區域增長算法。點之間的連通性通過0.5m搜索半徑的KD-Tree定義。我們使用標注點作為種子,生長到附近的標注點,并擬合線。
一旦提取了此類線,我們將繼續在獲得的有標簽LiDAR掃描點云上調整分割模型。我們重復幾何自適應3次以在KITTI里程計序列上生成12989個自動標注的 LiDAR幀。
Fig3:自動標注框架。我們使用幾何自適應和線擬合來減少網絡預測噪聲,并通過迭代訓練提高真實LiDAR掃描點云的模型精度。
二、聯系訓練線分割和描述符提取網絡
1)線描述符的定義.
不同于只需要線段兩個端點的幾何定義,每條線的描述符應通過其所有所屬點傳達局部外觀,因為觀察到的端點可能由于可能的遮擋而在幀之間變化。因此,我們將描述符定義為其所有所屬點的平均值。
Fig4: 網絡架構。該網絡使用EdgeConv模塊來提取特征。分割網絡頭和描述符提取頭分別用于預測每個點的標簽和描述符。
2)網絡結構.
我們的網絡結構(圖4)由堆疊的三個EdgeConv層組成,用于特征編碼,兩個解碼器分別用于線分割和描述。每個EdgeConv層輸出一個張量,在max-pooling層之后用于3層的分割和描述。我們使用ReLU進行激活。分割網絡頭將特征向量卷積后變成一個大小的張量(N為輸入點數),然后通過softmax層得到每個點的布爾坐標,預測是否屬于一條線。描述符提取網絡頭輸出一個大小為的張量,然后進行L2歸一化得到一個d維的描述符。 3)損失函數.我們的分割損失是一個標準的交叉熵損失,對于描述符損失,我們首先使用線段標簽得到每條線段的均值描述符u,然后使用將點描述符拉向u。的提出是為了讓不同行的描述符相互排斥。此外,對于點云對,我們計算匹配損失和非匹配線之間的損失。每一個損失項都可以寫成如下形式:
其中N是檢測到的線數,代表兩條線的所有對。i和j是兩個迭代器,分別用于直線和直線上的點。是一條線的平均描述符,是其相關點j的描述符。和是另一個關聯點云的平均描述符,和分別為正負邊緣。, 且表示L1距離。最后,我們使用來平衡最終的損失:
3)基于線的配準.
我們的網絡為每個點輸出標簽和描述符。我們首先提取線,然后我們執行描述符匹配以獲得行對應。匹配描述符的閾值設置為0.1。用于將源云注冊到目標點云的變換通過最小化所有線匹配代價中的點到線距離進行優化: 其中是源點云中的線上的點,和是線i的匹配線的端點。
審核編輯:劉清
-
編碼器
+關注
關注
44文章
3529瀏覽量
133296 -
激光雷達
+關注
關注
967文章
3863瀏覽量
188744 -
RGBD數據
+關注
關注
0文章
3瀏覽量
1020
原文標題:SuperLine3D:從3D點到3D線
文章出處:【微信號:3D視覺工坊,微信公眾號:3D視覺工坊】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論