一種散亂點雲的保特徵濾波方法與流程
2023-10-10 05:07:24

本發明涉及計算機視覺技術領域,具體涉及一種散亂點雲的保特徵濾波方法。
背景技術:
隨著計算機視覺技術的快速發展,點雲數據的研究得到了越來越廣泛的關注。然而,儘管三維掃描設備的精度不斷提高,但是由於設備自身的不足,人為誤差及各種外部環境等因素造成掃描得到的數據中不可避免的含有噪聲。因此,一種有效的點雲去噪濾波算法對於後續的模型重建、優化等過程具有重要作用。
傳統的採樣模型去噪方法大致分為網格去噪算法和散亂點雲去噪算法,然而由於掃描獲取的數據不包含採樣點間的連接結構,因此,散亂點雲數據去噪算法應用更方便、廣泛。傳統的濾波方法只是基於採樣點與鄰域點間距離及其在法向上的投影對採樣數據濾波,且沒有對鄰域點進行有效選取,不能在濾波的同時有效保持模型的細節。
技術實現要素:
本發明目的在於提供一種濾波精度高、去燥效果好的散亂點雲的保特徵濾波方法。
為實現上述目的,採用了以下技術方案:本發明方法是獲取採樣點的k個鄰域點中的有效鄰域,根據採樣點與其鄰域點的曲率差異,設定閾值T,當曲率差異小於T時,該點為有效鄰域點,否則為無效鄰域點;該採樣點所有有效鄰域點構成有效鄰域;採樣點、鄰域點及鄰域點在採樣點切平面的投影點構成的三角形的面積,與法向特徵差異相結合作為濾波因子對散亂點雲數據去噪。
所述方法的具體步驟如下:
步驟1,輸入噪聲點雲集V={vi,i=1,2,…n},通過kdtree算法對鄰域進行搜索並設定鄰域點個數k,定義矩陣
其中,c為鄰域中心;vij為採樣點vi的第j個鄰域點;對矩陣R進行特徵分解,0≤λ1≤λ2≤λ3為矩陣R的三個非負特徵值,e1,e2,e3為相應的特徵向量,最小特徵值λ1所對應的特徵向量e1為該點的法向Ni,最大特徵值λ3所對應的特徵向量e3近似為該採樣點的切向Ti,採樣點的曲率
步驟2,根據採樣點曲率ρi與鄰域點曲率ρij的差異判斷有效鄰域,計算ρi-ρij,並設定閾值H,當ρi-ρij的值小於H時,該鄰域點為有效鄰域點,否則為無效鄰域點,即定義二值函數η表示該點是否為有效鄰域點;
步驟3,計算採樣點vi與鄰域點vij之間的位置差異||vij-vi||,qj為鄰域點vij在採樣點vi的切平面的投影點,計算鄰域點vij與投影點qj間的距離,採樣點vi與投影點qj間的距離,採樣點vi、鄰域點vij以及投影點qj構成的三角形的面積
步驟4,根據下式計算位置權重函數Wc和特徵權重函數Ws
其中,σc為位置影響因子,σs為特徵影響因子,Ni為採樣點vi的法向,Nij為鄰域點vij的法向;
步驟5,將Wc和Ws代入雙邊濾波因子h
其中,N(v)為採樣點的鄰域點集;
步驟6,將h代入下式中
vout=vi+Ni·h (6)
其中,vout為輸出採樣點;Ni為vi的法向;vi為原始待處理採樣點;h為濾波因子;
步驟7,對於所有採樣點重複以上步驟,得到去噪後的點雲模型。
與現有技術相比,本發明具有如下優點:本發明對採樣點的k個鄰域點進行有效選取,避免了差異大的鄰域點或不在同一面上的鄰域點對採樣點的影響。在有效鄰域下,結合面積與法向特徵差異作為濾波因子對點雲數據去噪,使得,對於平面上的點,權重主要與距離呈反比,對於稜上的點,同一稜上的鄰域點的權重更大,對於角點,各鄰域點的權重都很小,因此,該方法能夠兼顧平坦區域的光順與高頻區域細節特徵的保持。
附圖說明
圖1是本發明方法的流程圖。
圖2為構造濾波因子過程示意圖。
圖3(a)為加噪聲的fandisk模型圖。
圖3(b)為雙邊濾波算法去噪效果圖。
圖3(c)為本發明方法的去噪效果圖。
具體實施方式
下面結合附圖對本發明做進一步說明:
本發明方法是獲取採樣點的k個鄰域點中的有效鄰域,根據採樣點與其鄰域點的曲率差異,設定閾值H,當曲率差異小於H時,該點為有效鄰域點,否則為無效鄰域點;該採樣點所有有效鄰域點構成有效鄰域;採樣點、鄰域點及鄰域點在採樣點切平面的投影點構成的三角形的面積,與法向特徵差異相結合作為濾波因子對散亂點雲數據去噪。
實施例一:
如圖1所示,本發明方法的具體步驟如下:
步驟1,圖3(a)為輸入fandisk模型噪聲點雲集V={vi,i=1,2,…n},通過kdtree算法對鄰域進行搜索並設定鄰域點個數k,定義矩陣
其中,c為鄰域中心;vij為採樣點vi的第j個鄰域點;對矩陣R進行特徵分解,0≤λ1≤λ2≤λ3為矩陣R的三個非負特徵值,e1,e2,e3為相應的特徵向量,最小特徵值λ1所對應的特徵向量e1為該點的法向Ni,最大特徵值λ3所對應的特徵向量e3近似為該採樣點的切向Ti,採樣點的曲率
步驟2,在搜索到點vi的k個鄰域中,根據採樣點與鄰域點間的曲率差異判斷有效鄰域,即計算ρi-ρij,其值越小,採樣點與鄰域點間的特徵差異越小,設定閾值H,當ρi-ρji的值小於H時,該鄰域點為有效鄰域點,否則為無效鄰域點,定義二值函數η表示該點是否為有效鄰域點
由此,η=1的鄰域點構成了點pi的有效鄰域。
步驟3,計算採樣點與鄰域點之間的位置差異||vij-vi||,如圖2,設qj為鄰域點vij在採樣點vi的切平面的投影點,計算鄰域點與投影點間的距離<Ni,vij-vi>,也就是鄰域點到採樣點切平面的距離;採樣點與投影點間的距離<Ti,vij-vi>,也就是採樣點vi到過鄰域點vij且以採樣點的切向Ti為法向的平面的距離;採樣點、鄰域點以及投影點構成的三角形的面積
步驟4,根據下式計算位置權重函數Wc和特徵權重函數Ws
其中,Ni為採樣點vi的法向,Nij為鄰域點vij的法向;σc為位置影響因子,它的值越大,平滑效果越好,但特徵可能被過度平滑,σs為特徵影響因子,其值越大,特徵保持的越好,但可能使平坦區域不光滑。
步驟5,將Wc和Ws代入雙邊濾波因子h
其中,N(v)為採樣點的鄰域點集;
步驟6,將h代入下式中
vout=vi+Ni·h (6)
其中,vout為輸出採樣點;Ni為vi的法向;vi為原始待處理採樣點;h為濾波因子。
步驟7,對於所有採樣點重複以上步驟,得到去噪後的點雲模型。
對fandisk加噪模型進行仿真實驗,如圖3,圖3(a)為含噪聲的fandisk模型圖,圖3(b)為雙邊濾波法去噪後的效果圖,圖3(c)為本發明去噪後的效果圖,對比圖3(b)和3(c)可以發現,在長方形內區域,圖3(c)的稜線更為明顯,實驗表明,在同等條件下,本發明比雙邊濾波算法能夠更好地保持模型的細節特徵。
以上所述的實施例僅僅是對本發明的優選實施方式進行描述,並非對本發明的範圍進行限定,在不脫離本發明設計精神的前提下,本領域普通技術人員對本發明的技術方案做出的各種變形和改進,均應落入本發明權利要求書確定的保護範圍內。