1. 什么是三維激光點云
首先,我們需要先理解三維點云(point cloud)的概念。三維點云(Point Cloud)是三維空間中離散點的集合,其中每一個點至少需要包含一組三維坐標(X, Y, Z),用于精確描述這個點在特定坐標系下的具體位置。當然,除了位置信息以外,每個點還可以附加有顏色、法線向量、強度值等其他更多的信息。基于多年在三維空間技術上的研發,眾趣科技已經能夠通過激光雷達、結構光深度相機,全景圖像預測等多種技術手段,獲得在某個點位環繞的三維點云數據。
其次,本文提到的都是剛體點云,下面來理解下剛體(Rigid)的概念 。剛體(Rigid),是指物體在變換過程中形狀和大小保持不變,任意兩點間的距離恒定不變,也就是說,其空間變換僅限于平移和旋轉(即剛體運動),不涉及形變或縮放。打個比方,一個房間無論經過什么樣的剛體變換,它的大小,面積,天花板和地面的距離,墻面與墻面的距離都是不會發生變化的,只是它在三維空間中呈現的具體位置發生了變化。眾趣科技面對三維空間的采集數據,大都是靜止的地面,墻面,家具,室外空間等形態,因此,這些數據大都符合剛體的性質。
以下則是眾趣科技通過自己研發的三維激光掃描儀X3 Pro,在某個掃描點位獲得的三維剛體點云數據。


2. 三維激光點云為什么需要配準
目前眾趣科技的采集設備,大都是基于架站式的采集方式,也就是說,通過每個站點的掃描過程,眾趣科技能夠獲得以這個站點為中心的三維剛體點云數據。但是緊接著的問題就是,這些三維剛體點云數據是一堆離散的,以各自的掃描點為坐標系的,互相之間沒有關聯的數據,僅僅擁有這些數據是無法給出一個三維空間的全貌的。因此,我們需要將這些離散的三維點云數據擺放到一個共同的坐標系里,讓他們能找到給自己在這個共同坐標系的真實位置,也就是要解決一個統一坐標系的需求:即通過計算剛體變換(旋轉矩陣和平移向量),實現各個三維剛體點云數據的空間對齊。兩個掃描點獲得的空間數據,如果不做坐標系的統一,結果如下圖

比較容易想到的,我們可以指定空間當中的某個三維剛體點云數據的坐標系為共同坐標系(實踐中比較常見的,是第一個獲得的三維剛體點云數據的坐標系未共同坐標系),根據掃描時的位置關系,挨個計算具有匹配關系的兩個三維剛體點云數據之間的位置,獲得它們兩兩之間的剛體變換(旋轉矩陣和平移向量),這種尋找兩個三維剛體點云數據之間的剛體變換的計算過程,也就是計算求解旋轉矩陣和平移向量的計算過程,就是配準。
不難想象,通過配準,就可以將每個架站采集到的數據逐個的連接,逐個的進行“拼接”,從而得到整個三維空間的全貌。所以配準工作,也是后續處理(如三維重建、場景理解)的基礎。
3. 三維激光點云配準工作的挑戰
常見的幾種影響到配準精度的挑戰有:
(1)點云數據噪聲與離群點:實際采集的點云數據常受傳感器誤差、環境干擾等影響,包含有噪聲和離群值,這些異常數據會降低配準精度。例如,不同的激光掃描儀單點掃描的數據波動范圍在幾厘米不等,這是采集設備自身就帶有的問題。
(2)點云數據不完整與遮擋:因采集設備視角限制,或現場實際環境的影響,點云數據有時存在局部缺失或遮擋。比如,針對房屋數據采集的場景,基于結構光原理的三維采集設備會收到太陽光線的影響,所以在靠近窗戶陽臺等存在太陽光源環境時,就會無法計算出準確數據信息而造成數據的部分缺失;再比如在一些凌亂的狹小的房間里,能夠供采集設備擺放的空間很有限,而室內的物品又凌亂,就會造成物品之間的遮擋而產生數據確實。
(3)準確性與效率的平衡:在使用掃描儀現場采集作業的過程中,希望采集過程耗時短一直是一個剛性需求。因此,對配準算法的計算效率要求也較高,要求配準算法能在一定的計算時間內得到較好的結果。
4.三維激光點云配準的方法有哪些
(1)手動選點配準
手動選點的方法,是通過人工選擇兩個三維剛體點云中能夠看到的共同的特征點點云,比如同一張桌子的桌角點云,同一個門框的角點點云等,然后通過SVD算法計算讓這些彼此對應的點云具有最優匹配關系的剛體變換(旋轉矩陣和平移向量)。比如同一批特征物體的特征點,在三維剛體點云1中的位置坐標為(X1, Y1,Z1)(X2, Y2,Z2)……(Xn, Yn,Zn),在三維剛體點云2中的位置坐標為(X1’, Y1’,Z1’)(X2’, Y2’,Z2’)……(Xn’, Yn’,Zn’),SVD方法即能求得符合這個匹配的最優解。示例如下圖:

手動選點方法的優點有:
1. 計算速度快
2. 可以避開某些移動雜點(比如行走中的人)對配準計算造成的影響
3.準確度較高
相應的,缺點有:
1.需要開發專門的交互界面
2.需要人工投入選點,消耗人力。
(2)基于傳統迭代方法的自動化配準
基于迭代方式的成熟算法,能夠在符合一定假設的前提下,自動化的進行配準工作。一般而言,比較成熟的主流算法有ICP算法和NDT算法。
--- ICP(Iterative Closest Point)算法
核心目標是迭代尋找源點云與目標點云中每個點的最近鄰對應點對,基于這些點對計算最優的空間變換參數(R和T),并應用變換更新源點云位置,重復此過程直至誤差收斂。
關鍵步驟:
1.尋找對應點:對源點云的每個點,在目標點云中搜索其最近鄰點作為匹配點對 。
2.計算變換矩陣:通過最小二乘法求解最優的R和T,常用SVD分解質心化后的對應點坐標矩陣實現 。
3.應用變換更新:將變換作用于源點云,使其向目標點云靠攏 。
4.誤差評估與迭代:計算變換后的均方距離誤差,若未達閾值則重復上述步驟
---NDT(Normal Distribution Transform)算法
核心目標是將目標點云劃分為網格并計算每個網格內點的正態分布概率密度函數(PDF),通過優化變換參數(旋轉和平移)使源點云變換后在目標點云中的概率密度之和最大化。
關鍵步驟:
1.將目標點云劃分為網格(2D為平面網格,3D為立方體網格),要求每個網格至少包含6個點。
2.計算每個網格的均值與協方差矩陣,構建多維正態分布模型。
3.通過迭代優化(如牛頓法)調整變換矩陣,最大化源點云在目標分布中的概率。
這些傳統迭代方法的優點有:
1.無需人工參與,自動化程序較高
相應的,缺點有:
1. 對位置的初始關系敏感,不同的初始關系可能會導致計算失敗。
2. 迭代計算較為耗時,需要設置合適的收斂條件或者終止計算條件。
(3)基于AI神經網絡方法的自動化配準
近年來,針對神經網絡的研究方興未艾。在配準領域,也有不少基于神經網絡訓練的配準算法的嘗試。大體而言,基于神經網路的配準方法大體分為兩類
---基于特征的方法
1.PointNetLK:結合PointNet提取點云全局特征,利用Lucas-Kanade算法迭代優化變換參數。
2.Deep Closest Point (DCP) :通過DGCNN提取局部特征,計算軟對應關系后使用Kabsch算法估計變換矩陣。
3.PRNet:基于PointNet++,將點云投影到球面計算卷積特征以學習配準關系。
4.D3Feat/3D Smooth Net:學習局部特征后結合RANSAC框架進行匹配,在室內數據集表現優異。
---基于全局優化的方法
1.端到端學習方法:直接通過神經網絡回歸變換矩陣(如DeepICP),但易受噪聲影響。
2.MS-SVConv + UDGE:結合多尺度描述符網絡與無監督遷移學習,在真實場景數據集(如3DMatch)達到先進水平。
基于神經網絡的配準方法的優點有:
1.泛化性較好,在某些場景下可以提高配準的準確性。
相應的,缺點有:
1.有訓練數據的積累過程
2.需要準備訓練數據和進行神經網絡模型訓練,開發周期較長。
5.總結
經過配準工作以后,兩個具有匹配關系的三維剛體點云數據找到了針對彼此的正確位置,上圖那個疊在一起的數據,配準后的效果如下圖
經過一系列的配準工作,每個掃描點位獲得的三維剛體數據就被擺放到了同一坐標系下的合理位置,最終拼成了一個完整的三維模型,如下圖:

720°全景
