ELSR:一種高效的線云重建算法
標(biāo)題:ELSR: Efficient Line Segment Reconstruction with Planes and Points Guidance
作者:武漢大學(xué) 遙感信息工程學(xué)院 地像天圖課題組
來源:微信公眾號「3D視覺工坊」??
主要內(nèi)容:提出了一種高效的線云重建方法,稱為ELSR,其利用了城市場景中常見的場景平面和稀疏的3D點,對于兩視圖,ELSR可以找到局部場景平面來引導(dǎo)線匹配,并利用稀疏的3D點來加速和約束匹配。為了重建具有多個視圖的3D線段,ELSR利用了一種抽象方法,其基于有代表性的3D線的空間一致性來選擇它們。
實驗表明,其方法可以有效地重建包含數(shù)千張大尺寸圖像的大型復(fù)雜場景的3D線條。
總的來說,本文是一篇利用場景中的結(jié)構(gòu)化線條來構(gòu)建線云的算法。
其方法構(gòu)建的線云如下圖所示:

Contributions:
1、提出了一種從多個圖像中匹配線條和重建3D線條的有效方法,該方法易于使用,只需要SfM的結(jié)果作為先驗
2、利用二維線和稀疏三維點之間的幾何關(guān)系來找到局部單應(yīng)性。這也是第一個利用這種簡單而有效的幾何形狀進行線段匹配的工作。
3、在大型圖像數(shù)據(jù)集上進行評估時,ELSR在兩視圖匹配方面比現(xiàn)有算法快1000多倍;在多視圖重建中,ELSR比現(xiàn)有方法快4倍,3D線的數(shù)量增加了360%
Pipeline:
給定圖像序列,首先用SfM算法獲取相機姿態(tài)和稀疏的3D點;然后匹配兩視圖的線;最后從圖像序列中的所有匹配中提取代表性的3D線。
其包含三個組成部分:
1、單應(yīng)估計:使用具有兩條鄰域線的場景平面幾何來驗證單應(yīng),在此期間,粗糙點深度用于加速
2、引導(dǎo)匹配:將單條線與潛在的單應(yīng)性進行匹配,并使用粗略的點深度來約束匹配。
3、線抽象:對于多個視圖,首先找到圖像對之間的線匹配的連接,并對空間一致性進行評分;然后選擇具有代表性的匹配作為最終的3D線

兩視圖線匹配:
主要利用場景平面和點去引導(dǎo)兩視圖下的線段匹配。
成對線的單應(yīng)性:



當(dāng)Sang(H)小于給定的閾值時場景平面是正確的,并且H是有效的。
點引導(dǎo)的搜索單應(yīng):
算法1是通過點引導(dǎo)尋找單應(yīng)的方法。
搜索單應(yīng)以找到滿足給定閾值的的成對線匹配,如下圖所示,共面的成對線在一個確定點上相交。因此沿著對極線搜索第二視圖中的交叉點。


將第一個相機矩陣表示為P,這是一個3×4的矩陣,設(shè)M和c4分別為左邊的3×3的子矩陣和P的最后一列,如果x的深度可得,則可以直接計算x在目標(biāo)空間的位置:


單應(yīng)引導(dǎo)的匹配:
算法2說明了單應(yīng)引導(dǎo)的匹配策略,即尋找線li的第k個鄰域的單應(yīng)Hk,這可以通過建立KDtree來得到,用Hk表示線li的映射為:


如圖5所示:

之后可以使用深度約束來控制錯誤的匹配,設(shè)l的端點為x,讓3D點鄰域的深度范圍為dmin和dmax,深度范圍可以用來約束x,但是其需要擴展,因為x可能超出深度范圍,特別是當(dāng)局部場景不連續(xù)時,但是,不知道目標(biāo)空間的單位,這可以通過利用像素和物體距離之間的聯(lián)系來確定擴展,如下圖所示,將主點水平移動tpix個像素以獲得β,然后計算與像素偏移對應(yīng)的深度偏移,最后將dmin和dmax分別縮小并擴展以獲得深度范圍:

由此,線端點的深度為:


同一條線可能有多個單應(yīng),其中一些是不正確的,因此利用鄰域的單應(yīng)去引導(dǎo)線,通過位置相似性為匹配打分:

從多個視圖中提取線:
兩個視圖中的每個匹配都將重建一個3D線段;因此需要將與同一條線相關(guān)的3D線段合并為簇。然而這很容易失敗,原因有三:
1)固定的閾值很容易產(chǎn)生不正確的簇;
2)錯誤的匹配將導(dǎo)致糟糕的重建;
3)目前沒有魯棒的RANSAC方法來確認(rèn)線簇的inliers。
因此,ELSR從聚類中提取代表性的行,而不是合并它們,這可能更穩(wěn)健和高效。提取包含兩個步驟:
1)計算3D線之間的空間相似性;
2)基于其與其他線的空間相似度,在所有視圖中抽象出具有代表性的3D線
實驗:在五個數(shù)據(jù)集上與四種現(xiàn)有方法比較評估了其ELSR。
表1是用到的數(shù)據(jù)集:

這是通過VisualSFM獲得的相機位姿和稀疏點云:

在兩視圖線匹配上,與LPI、LJL、GLM進行了比較:


在線云重建上,與Line3D++進行了比較:
本文僅做學(xué)術(shù)分享,如有侵權(quán),請聯(lián)系刪文。
3D視覺工坊精品課程官網(wǎng):3dcver.com
1.面向自動駕駛領(lǐng)域的3D點云目標(biāo)檢測全棧學(xué)習(xí)路線!(單模態(tài)+多模態(tài)/數(shù)據(jù)+代碼)
2.徹底搞透視覺三維重建:原理剖析、代碼講解、及優(yōu)化改進
3.國內(nèi)首個面向工業(yè)級實戰(zhàn)的點云處理課程
4.激光-視覺-IMU-GPS融合SLAM算法梳理和代碼講解
5.徹底搞懂視覺-慣性SLAM:基于VINS-Fusion正式開課啦
6.徹底搞懂基于LOAM框架的3D激光SLAM: 源碼剖析到算法優(yōu)化
7.徹底剖析室內(nèi)、室外激光SLAM關(guān)鍵算法原理、代碼和實戰(zhàn)(cartographer+LOAM +LIO-SAM)
8.從零搭建一套結(jié)構(gòu)光3D重建系統(tǒng)[理論+源碼+實踐]
9.單目深度估計方法:算法梳理與代碼實現(xiàn)
10.自動駕駛中的深度學(xué)習(xí)模型部署實戰(zhàn)
11.相機模型與標(biāo)定(單目+雙目+魚眼)
12.重磅!四旋翼飛行器:算法與實戰(zhàn)
13.ROS2從入門到精通:理論與實戰(zhàn)
14.國內(nèi)首個3D缺陷檢測教程:理論、源碼與實戰(zhàn)
15.基于Open3D的點云處理入門與實戰(zhàn)教程
16.透徹理解視覺ORB-SLAM3:理論基礎(chǔ)+代碼解析+算法改進
17.不斷更新中......
重磅!粉絲學(xué)習(xí)交流群已成立
交流群主要有3D視覺、CV&深度學(xué)習(xí)、SLAM、三維重建、點云后處理、自動駕駛、多傳感器融合、CV入門、三維測量、VR/AR、3D人臉識別、醫(yī)療影像、缺陷檢測、行人重識別、目標(biāo)跟蹤、視覺產(chǎn)品落地、視覺競賽、車牌識別、硬件選型、ORB-SLAM系列源碼交流、深度估計、TOF、求職交流等方向。
添加小助理微信(dddvisiona),一定要備注:研究方向+學(xué)校/公司+昵稱,例如:”3D視覺 + 上海交大 + 靜靜“。請按照格式備注,可快速通過且邀請進群。? ? ?? ? ? ? ?? ?