?

三維重建中先驗概率重加權點云配準算法

2021-10-14 10:22孫志亮張榮國李富萍
太原科技大學學報 2021年5期
關鍵詞:點數誤差距離

孫志亮,張榮國,趙 建,李富萍,胡 靜

(太原科技大學 計算機科學與技術學院,太原 030024)

三維重建的目標是高質量地捕捉物體和場景的三維形狀和外觀[1],在景物深度信息已知的條件下,只需要經過點云數據的配準及融合,即可實現景物的三維重建。點云配準的目標是將一個點云與另一個點云對齊來估計最佳的相對變換,是計算機視覺、計算機圖形學和移動機器人學中的一項基礎性工作。在大多數情況下,點云是通過掃描設備從不同的視角捕捉到的,所得到的點云不可避免地會有噪聲和外點。同時由于部分重疊和遮擋,點云之間也存在對應位置缺失。因此,點云配準在許多實際應用中仍然是一個具有挑戰性的問題。

解決配準問題的經典解決方案是迭代最近點(Iterative Closest Point,ICP)算法及其變體。ICP假設一對一的對應關系,并通過最小化對應點距離,迭代地建立最近鄰對應關系。由于ICP算法概念簡單,在實際應用中性能良好,出現了大量基于ICP的改進和應用[2]。然而,ICP算法在面對大量外點、噪聲和對應位置缺失時,通常會陷入局部最優。因此,大量的工作使用概率模型處理噪聲和外點,并通過建立一對多的對應提高算法的魯棒性和配準精度[3-9]。

大多數概率配準方法使用高斯混合模型GMM(Gaussian Mixture Mode),關鍵在于其概念簡單并且對噪聲魯棒?;贕MM的配準方法通常將兩個點云的配準問題看作概率密度估計問題,將一個點云視為GMM質心,然后通過估計目標函數的最大似然實現配準,如CPD、HGM和FilterReg.最近BCPD針對CPD中的收斂性和效率問題做出改進,在變分貝葉斯推理下實現配準。此外,最小化兩個概率分布之間的距離也能實現配準,如SVR[10]和MLMD[11]。

另一種用于配準的概率模型稱為學生-t混合模型(Student’s t Mixture Model,SMM),SMM與GMM相比,對外點更加魯棒。為了解決非剛性點云配準的對應位置缺失和大量外點,DSMM[12]基于SMM在貝葉斯框架下尋找對應,并引入Dirichlet分布處理對應位置缺失。與此相關的工作是TLMM[13],其提出了一種分層貝葉斯網絡點云配準方法。盡管基于SMM的方法顯示出更好的魯棒性,但是在目標函數優化過程中,精度和效率之間的權衡仍然是一個具有挑戰性的問題。

此外,解決點云配準問題的新趨勢是基于學習的配準方法,如DeepGMR[9]借鑒基于GMM的配準方法,使用神經網絡估計GMM的參數。然而這類方法需要龐大的數據集進行訓練,泛化性比較差。

上述方法的著眼點均在尋找更準確的位置對應關系,在存在大量的外點和對應位置缺失時配準結果不理想,并且對平面結構較多的點云表現不佳。為此,本文提出了一種結合點到面距離和先驗概率加權的點云配準方法。首先,點云之間的位置對應關系通過高斯混合模型和均勻分布來建立;其次,對應位置缺失通過重新加權GMM的混合比例來處理,潛在外點及其比率通過后驗概率推測;然后,向誤差函數中添加目標點的法線,用點到面距離衡量點云之間相似性,從而更好地處理平面結構較多的點云。最后,本文算法與期望最大化(Expectation-Maximization,EM)算法融合,并在求解GMM參數時移除潛在的外點來提高算法準確性。實驗結果表明本文配準方法對點云中的外點、對應位置缺失和平面結構均具有較好的表現。

1 相關研究

1.1 基于GMM的點云配準

對兩片維度為D的點云,一片點云表示目標點云Y=(y1,…,yN)∈RN×D,另一片表示源點云X=(x1,…,xM)∈RM×D,其中M和N分別是源點云和目標點云中點的個數。目標點云Y可以構造為GMM并作為GMM的質心,源點云X看作GMM產生的觀測數據,并通過估計GMM的最大似然實現配準。在配準期間目標點云的位置不變,源點云的位置由變換參數θ控制,即:

xi(θ)=Ti(θ)xi=Rixi+ti

(1)

其中Ti(θ)∈SE(3)是僅依賴于點xi的剛體變換;Ri∈R3×3xi是旋轉矩陣;ti∈R3是平移向量。GMM具有以下形式:

p(xi)=

(2)

通過假設源點云獨立同分布,目標點yj對應的后驗概率為P(yj|xi)=αjp(xi|yj)/p(xi).變換參數θ和協方差σ2通過最小化下面的負對數似然函數來計算:

(3)

1.2 EM算法

EM算法用來查找GMM中變換參數θ和協方差σ2閉式解。在E步,根據估計的θ和σ2,使用貝葉斯(Bayes)定理計算GMM質心的后驗概率P(yj|xi),進而得到對應關系;在M步固定P(yj|xi),通過最小化公式(3)重新計算θ和σ2,然后更新源點云位置。EM算法通過E步和M步交替進行,直至收斂。由公式(3)得到目標函數:

(4)

式中,后驗概率P(yj|xi)的值為:

(5)

忽略掉公式(4)中獨立于θ和σ2的常量,將PDFp(xi|yj)的值代入,得到關于參數θ和σ2的目標函數:

(6)

(7)

(8)

2 本文配準策略

2.1 先驗概率重加權

在現有的基于GMM的配準方法中[3,5,6],GMM分量被指定相同的成員概率1/N,這不能夠解釋缺失的對應位置關系[12]。目標點云中屬于對應位置缺失的點,產生的觀測數據與源點云無關,在進行最大似然估計時影響GMM參數的計算精度。因此在每次EM迭代,有必要重新估計GMM成分的混合比例。

(9)

其中νj=∑xkN(xk(θ);yj,σ2).得到的先驗概率向量α用于重新調整GMM分量的混合比例,并以此解決點云配準時的對應位置缺失。

2.2 潛在外點推測

外點是源點云中與目標點云不匹配的點,外點的存在影響GMM參數的計算精度。大多數以前的工作[3-5]需要根據點云之間的匹配程度手動調整外點比率ω,并且在計算GMM參數時沒有處理外點,因此本文對源點云中的潛在外點進行處理。

(10)

此外,矩陣P中每一列的和可以解釋為每個目標點與源點匹配的概率,矩陣P所有元素的和可以解釋為匹配數。因此,外點比率可以計算為:

(11)

2.3 點到面距離

Nxi=∑ykαkN(xi(θ);yk,σ2)

(12)

其中Nyk是點yk的法向,并通過修改公式(7)得到以下點到面形式的誤差函數:

(13)

3 算法求解及步驟

3.1 算法求解

本文配準策略融入到EM算法框架下,E步驟具有以下高斯變換形式:

(14)

(15)

從而變換參數θ的改變量為Δθ=-A-1b.

3.2 算法步驟

算法名稱:點云配準算法

輸入:源點云X∈RM×D,目標點云Y∈RN×D

輸出:配準后的點云X和Y

Step 1.輸入源點云X和目標點云Y;

Step 3.獲得GMM變換參數θ和協方差σ2以及先驗概率向量α;

Step 5.對每個目標點yk,通過PDF計算其產生源點云的概率νj;

Step 6.根據式(9)計算先驗概率向量α并重新加權GMM成分,解決對應位置缺失問題;

Step 8.根據式(11)計算外點比率ω;

Step 9.移除潛在外點并通過式(15)求解θ;

Step 10.通過式(1)更新源點云位置xi(θ);

Step 11.通過式(8)計算σ2;

Step 12.重復Step 3-11,獲得最優變換參數θ;

Step 13.根據θ輸出配準后的點云X和Y.

4 實驗和結果

本文實驗環境為 Intel i5-10400 CPU和16 GB RAM,并用Python實現提出的算法。此外,本文用到了Open3D庫中的配準評估函數,給定自定義的最大對應距離,該函數返回擬合度和RMSE兩個指標。擬合度定義為對應點數C與目標點數N的比值,RMSE定義為對應點之間的均方根誤差,即

因此,RMSE越低且擬合度越高,配準結果越好。

4.1 合成數據實驗

以斯坦福大學3D掃描庫中的Bunny,Happy Buddha,Dragon和Armadillo為目標,測試本文算法。首先使用Bunny中的bun000和bun045進行定性分析,其原始點數分別為40 097和40 256,經過0.003體素下采樣后分別降低到3 331和3 459.圖1(a)和圖1(b)顯示了本文方法的初始對齊和最終對齊,其中源點云和目標點云分別被標記為紅色和藍色。

圖1 bun000和bun045的配準結果

本文的方法與以下三個算法進行比較:CPD,一種具有代表性的基于GMM的點云配準算法;HGMR,一種用于剛性配準的魯棒分層隨機模型;FilterReg,一種使用參數化旋轉和高斯濾波器的高效配準算法。圖2(a)和圖2(b)是各種算法在不同的最大對應距離下的擬合度和RMSE.本文的方法與其余算法相比,具有更低的RMSE和更高的擬合度,并且在最大對應距離為0.8 mm時已具有較高的準確性。

圖2 擬合度和RMSE比較

根據上述實驗,另外選擇四個具有不同特征的對象來測試配準性能,分別是Armadillo_60/30,Armadillo_60/0,Dragon_48/0和Buddha_48/0.各目標的原始點數和體素下采樣后的點數如表1所示。不同算法的擬合度在最大對應距離為1 mm時的結果如圖3所示,本文方法在較多的對應位置缺失時,均優于其他比較的方法。

表1 配準目標的點數

圖3 不同算法擬合度比較

4.2 真實數據評估

用A、B、C和D表示Livingroom1的前五片點云組成的四對配準目標,用E、F和G表示Office2的前四片點云組成的三對配準目標。表2列出了各配準目標的原始點數和下采樣后的點數,以及本文算法推測出的對應位置缺失比率M和外點比率ω.圖4(a)展示了配準目標A、D和G 的初始對齊,其中源點云和目標點云分別被標記為紅色和藍色;圖4(b)是用本文方法得到的最終對齊,可見本文方法有較好的配準結果。

表2 配準目標的數據描述

圖4 A、D和G的配準結果

CPD和HGMR不適合在CPU上處理點數過萬的點云,因此本文與點到面FilterReg[5]和Open3D中的點到面ICP進行比較。表3和表4分別是不同方法在不同配準目標上的旋轉誤差和平移誤差。本文方法在A、B、C和D上旋轉誤差較低,在A和D上平移誤差較低。FilterReg在E、F和 G上變換誤差較低,在A上配準失敗。ICP算法配準結果不理想且在 A、 B和G上配準失敗??梢钥闯霰疚乃惴ㄔ贏、B、C和D上的變換誤差相對較低,在E、F和 G上的變換誤差高于FilterReg,主要原因是配準目標E、F和 G的對應位置缺失比率和外點比率較大,本文算法產生退化。

表3 不同算法的旋轉誤差(°)

表4 不同算法的平移誤差(mm)

圖5是不同配準目標在最大對應距離設置為10 mm時,不同算法的擬合度。本文方法與其他方法相比,具有較高的擬合度,配準精度較高的,更好的應對了不同程度的對應位置缺失和外點。

圖5 不同算法擬合度比較

5 結論

本文提出了一種結合點到面距離和先驗概率加權的點云配準方法。首先,使用先驗概率重新加權GMM各分量并以此處理對應位置缺失;其次,使用后驗概率推測潛在外點及其比率;然后,用點到面距離衡量點云之間相似性,更好地配準了平面結構較多的點云;最后,在求解GMM參數時刪除潛在外點提高算法準確性。實驗和評估結果表明,本文配準方法能有效處理點云中的外點、對應位置缺失和平面結構。

猜你喜歡
點數誤差距離
北斗導航種蘿卜百米誤差僅2厘米
算距離
距離美
隧道橫向貫通誤差估算與應用
隧道橫向貫通誤差估算與應用
畫點數
精確與誤差
破解心靈感應
愛的距離
巧猜骰子
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合