三維掃描點雲中基於神經網絡的標誌點孔洞的填補方法
2023-10-09 09:17:24
專利名稱:三維掃描點雲中基於神經網絡的標誌點孔洞的填補方法
技術領域:
本發明涉及一種對三維圖形的修補方法,尤其涉及一種三維掃描點雲中基於神經網絡的標誌點孔洞的填補方法。
背景技術:
逆向工程(Reverse Engineering,RE)技術是20世紀80年代後期出現在先進位造領域裡的新技術,其一般包括四個基本環節三維形體檢測與轉換(物理數據的獲得)、數據預處理(點雲處理、識別、多視拼接),CAD模型的建立(曲面重構)、CAM製件成型,其基本流程圖如圖1所示。在三維形體檢測與轉換的過程中,通過三維數位化掃描儀對實物模型表面進行三維快速掃描測量,在滿足離散採樣速度和數據質量的前提下,獲取產品的三維離散數據,在多視拼接中,很多算法用到基於標誌點的拼接,而在物體表面粘貼標誌點,必然導致被覆蓋的區域的數據的丟失,產生孔洞,此類孔洞有其自身的特點必然產生、位置大小可以確定、數量較多,點雲孔洞的出現造成了這些數據的不完整,因此對孔洞進行補償即對數據進行預處理是逆向工程中非常關鍵的承上啟下的一環,直接影響重構成功與否和CAD模型的質量,對其後續環節起著非常關鍵的制約作用。本發明主要是涉及到在逆向工程的數位化過程中,用三維掃描系統(圖2)獲取產品點雲模型出現的標誌點孔洞的一種自動填補方法。
近年來,點雲孔洞的填補算法在國內外均取得了很大的進展,已發表了相當數量的文獻,其中一些算法獲得了較為廣泛的應用,如基於能量優化和細分、曲面擬合、三角網格模型的各種孔洞填補的算法。這些算法需先對三維掃描直接獲得的點雲模型做一定的前期處理或者對點雲孔洞進行邊界識別,實時性不強,複雜度也比較高。在實際的工程應用中,對出現的問題應能及時解決。
文獻「Minimal energy surfaces using parametric splines.」(Gregory E.Fasshauer,LarryL.Schumarker.ComputerAided Geometric Design,1996,1345~79)通過求解以「變形能量函數」為基礎的優化目標函數,實現對孔洞的填補,保證了一定的光順性,然而這類方法大多需要細分曲面,並且對多個子曲面片進行拼接,因此對曲面邊界的連續性要求較高,通常很難達到曲面間的二階連續。由於現有的三角網格模型的相關算法比較成熟,現有的算法大多都是基於此模型的,例如文獻「Filling holes in meshes using a mechanical model to simulate thecurvature variation minimization.」(Jean-Philippe Pemot,George Moraru,Philippe Veron.Computer&Graphics,2006,30892~902)將孔洞填補歸結為一個空間多邊形的三角剖分問題。通過三角化後,尋找三角網絡的邊界,來自動檢測孔洞,在補孔之前,首先對邊界三角形進行處理,去除方向不好和退化的三角形,最後用三角網絡補孔,但是此方法只能修補閉合的孔洞,並且這類算法對於複雜的點雲數據編程建立三角網格模型運算量較大,在填補孔洞的過程中還需要改變三角網格的拓撲結構,因此具有對三角網格模型修改和再設計能力不足的缺點,複雜度高,這些缺點都限制了它在實踐中的應用。對一類多邊形孔洞的填充算法不適用於一般的點雲模型。
對於一般曲面網格的填充算法均需要準確的獲得孔洞邊界信息,難度大,不易實現。通過對點雲孔洞周圍散亂點集進行曲面擬合補償孔洞的算法過程中,散亂點的參數化必不可少。通常有均勻參數化、向心參數化和累積弦長參數化方法,而這些方法主要針對呈拓撲矩形陣列的數據點,對無規則分布的點雲數據,需要對其排序,難度也比較大。
基於神經網絡補孔的算法現在也得到了較為廣泛的應用,同時也獲得了較好的效果。例如文獻「基於神經網絡的點雲殘缺數據修補方法」(劉俊,何建英.機械工程師,2007(2)32~34)中提出了一種三維殘缺數據的BP數據網絡修補方法,框選出殘缺數據邊界附近的樣本點集,並加以訓練,把訓練後的BP網絡用於殘缺區域數據點的預測,完成數據的修補。這類方法適應範圍比較廣,對於非線性數據、有噪聲的數據、模式特徵不明確的數據都有比較好的效果,但有不足的地方操作多,每個孔洞,都要人為框選邊界樣本點集;修補區域點的密度與周圍不一致;對於一些曲率變化大的特徵區域,特徵表現的不夠好。
在實際的應用過程中,在三維掃描系統中為了點雲的多視拼接而引入標誌點,此時就不可避免的存在孔洞現象,對這些孔洞進行及時的填補是關鍵。為此,本發明中使用一種新算法對標誌點孔洞進行填補。如何保證填補的孔洞數據與周圍數據連續以及特徵表示的更好是此類算法的難點。本發明中提出的根據周圍點雲數據密度選擇重採樣密度的方法以及對於修補的點雲按曲率進行調整能達到對孔洞的光滑填充。
發明內容
本發明提供一種能夠保證填補的孔洞數據與周圍數據連續並且點雲特徵表示更好的基於神經網絡的三維掃描的點雲孔洞填補方法,本發明具有方法簡單的優點。
本發明採用如下技術方案 一種三維掃描點雲中基於神經網絡的標誌點孔洞的填補方法 第一步對於物體表面粘貼的標誌點形成的孔洞,在三維掃描點雲中,獲取孔洞周圍的樣本點集時,根據標誌點的三維坐標(xb,yb,zb),將以標誌點為中心的立方體內的數據點作為補孔的樣本點Ps(s=0,1,…,t),立方體的8個頂點分別是(xb-r,yb-r,zb-r),(xb-r,yb-r,zb+r),(xb-r,yb+r,zb-r),(xb-r,yb+r,zb+r),(xb+r,yb-r,zb-r),(xb+r,yb-r,zb+r),(xb+r,yb+r,zb-r),(xb+r,yb+r,zb+r),其中r是所取的域值,為了獲取合適的樣本點集,取標誌點的半徑的1.2~1.5倍; 第二步根據樣本點數據Ps,訓練補孔的神經網絡,用於填補孔洞的神經網絡為三層的反向傳播神經網絡,其輸入層為2個神經元,分別對應樣本數據的x坐標值和y坐標值,隱層為m個神經元,輸出層為1個神經元且對應樣本數據的z坐標值,隱層和輸出層的激勵函數分別是雙曲正切S形函數和線性函數g(x)=x,並應用Levenberg-Marquardt算法訓練反向傳播網絡,隱層神經元數目m選取20,通過訓練得到補孔的神經網絡net; 第三步在得到神經網絡net後,沿x和y方向等步長選取重採樣點,為了使殘缺區域重採的密度與其周圍數據保持一致,計算所有樣本點Ps,其中s=0,1,…,t,在xoy平面投影的點與周圍點的最小距離的平均距離作為重採樣的步長L,重採樣的範圍是區間(xmin,xmax),(ymin,ymax),其中xmin、xmax是樣本點的坐標x的最小值和最大值,ymin、ymax是樣本點的坐標y的最小值和最大值,重採點的總數為
其中
表示向下取整,重採樣點的x坐標值從xmin開始以步長L等距增加直至
重採樣點的y坐標值從ymin開始以步長L等距增加直至
將重採樣的點的x坐標值和y坐標值作為神經網絡的輸入,就可以得到重採樣點z坐標值,進而得到所有重採樣點; 第四步根據重採樣點的曲率添加採樣點,求取離散空間點曲率的時候,將所有重採樣點投影到xoy平面,由第三步可知,所有投影點沿x和y方向以間距L,等間距分布,取所求點在xoy平面上的5×5鄰域內的點作為鄰域點,除去本身共24個點,作為所求點的k鄰域,根據已有方法求出所有重採樣點的曲率ρs(s=0,1,…,n-1),根據給定的曲率域值ρτ,ρτ取0.1,取曲率大於ρτ的重採樣點,得到大曲率點,然後在大曲率點的四周增加採樣點,採取的策略是,將所有重採樣點投影到xoy平面上,假設有大曲率點在xoy平面上投影點的坐標是(xρ,yρ),查看它沿x和y方向相鄰的四的投影點(xρ-L,yρ),(xρ+L,yρ),(xρ,yρ-L),(xρ,yρ+L),若其中也有大曲率點,則在大曲率點之間等距增加兩個重採樣點,不失一般性,假設投影到(xρ+L,yρ)坐標的點為大曲率點,則增加
兩點,其餘不是大曲率點的方向上,增加一點,如上面所述的投影到(xρ-L,yρ),(xρ,yρ-L),(xρ,yρ+L)的三點不是大曲率點,則增加
三點,針對所有大曲率點採用以上策略補點,最後將所有補的點的x和y坐標值輸入第二步得到的神經網絡net中,求的z坐標值,這樣就得到了根據曲率增加的所有的重採樣點,連同第三步中得到的重採樣點,得到最終的重採樣點; 第五步將最終的重採樣點中與三維掃描點雲中最近點的距離小於0.5d3D的重採樣點捨棄,把剩餘的採樣點加到三維掃描點雲中,完成標誌點孔洞的填補,其中d3D為三維掃描點雲的密度,d3D設置為點雲的各點與周圍點的最小距離的平均值。
本發明主要用於對三維掃描系統中由標誌點產生的各種複雜曲面形狀的孔洞進行填補的應用場合。利用本發明中的神經網絡方法,可以得到填補孔洞的網絡,隨後根據孔洞邊界點的密度,在孔洞區域取採樣點,並根據點的曲率進一步調整補孔的點,達到對孔洞的光滑填充。該方法主要有以下優點 (1)相比較多數算法中的網格化處理,本發明主要針對三維掃描系統得到的原始點雲模型,不需要任何的網格化處理,適用性廣,速度快。
(2)由於標誌點貼在物體的各個不同的位置,因此形成的孔洞也是各種不同的形狀,因此在用參數曲面擬合填補方法的時候,就無法選擇能適合所有孔洞的參數曲面,而神經網絡具有很強的泛函逼近能力,三層網絡能以任意精度逼近任意連續函數以及其各階導數,因此與基於各種參數曲面擬合的方法相比,基於神經網絡的方法對標誌點形成的各種複雜曲面形狀的孔洞,能取得更好的填補精度。
(3)三角網絡補孔時,所補的孔洞必須要求是閉合的,本方法對於標誌點形成的任意形狀的孔洞都能進行填補,適應性廣。
(4)對於標誌點形成的孔洞,由於標誌點的三維坐標值和大小是已知的,因此孔洞根據標誌點位置自動識別,孔洞周圍樣本點的獲取也是自動完成的,無需任何人為操作,在得到三維掃描點雲後,就能自動完成所有標誌點孔洞的填補。
(5)可以根據實際需要,在網絡訓練的時候可以人為控制訓練的次數及精度,避免了不必要的計算冗餘。
(6)在面上取點時,本方法根據孔洞邊界點的密度對孔洞區域進行重採樣,保證了孔洞填補區域與邊界的連續性。
(7)本方法對孔洞初步重採樣點,根據重採樣點的曲率,在曲率大的點附近添加採樣點,使得孔洞在曲率變化大的地方,填補的點更多,相比較一般的均勻填補算法,更能表現出點雲的特徵,所填補的孔洞更光滑。
圖1是逆向工程流程圖。
圖2是光柵式三維掃描系統組成圖。
圖3是算法整體流程圖。
圖4是含有標誌點孔洞的實物圖。
圖5是選取標誌點周圍樣本點集的立方體示意圖。
圖6是選取k鄰域點集示意圖。
圖7是曲率函數求解圖。
圖8是根據曲率增加採樣點示意圖。
圖9是根據曲率增加採樣點的算法流程圖。
圖10是最終補孔的正面效果圖。
圖11是最終補孔的另一個角度的效果圖。
具體實施例方式 一種三維掃描點雲中基於神經網絡的標誌點孔洞的填補方法 第一步對於維納斯頭像表面粘貼的標誌點形成的孔洞,在三維掃描點雲中,獲取孔洞周圍的樣本點集時,根據標誌點的三維坐標(xb,yb,zb),將以標誌點為中心的立方體內的數據點作為補孔的樣本點Ps(s=0,1,…,t),立方體的8個頂點分別是(xb-r,yb-r,zb-r),(xb-r,yb-r,zb+r),(xb-r,yb+r,zb-r),(xb-r,yb+r,zb+r),(xb+r,yb-r,zb-r),(xb+r,yb-r,zb+r),(xb+r,yb+r,zb-r),(xb+r,yb+r,zb+r),其中r是所取的域值,為了獲取合適的樣本點集,取標誌點的半徑的1.2~1.5倍; 第二步根據樣本點數據Ps,訓練補孔的神經網絡,用於填補孔洞的神經網絡為三層的反向傳播神經網絡,其輸入層為2個神經元,分別對應樣本數據的x坐標值和y坐標值,隱層為m個神經元,輸出層為1個神經元且對應樣本數據的z坐標值,隱層和輸出層的激勵函數分別是雙曲正切S形函數和線性函數g(x)=x,並應用Levenberg-Marquardt算法訓練反向傳播網絡,隱層神經元數目m選取20,網絡訓練的步長取2000,訓練精度取0.001,通過訓練得到補孔的神經網絡net; 第三步在得到神經網絡net後,沿x和y方向等步長選取重採樣點,為了使殘缺區域重採的密度與其周圍數據保持一致,先計算每個樣本點在xoy平面投影的點與其餘點在xoy平面投影的點的最小距離di,再用所有最近距離的均值作為重採步長L,重採樣的範圍是區間(xmin, xmax),(ymin,ymax),其中xmin、xmax是樣本點的坐標x的最小值和最大值,ymin、ymax是樣本點的坐標y的最小值和最大值,重採點的總數為
其中
表示向下取整,重採樣點的x坐標值從xmin開始以步長L等距增加直至
重採樣點的y坐標值從ymin開始以步長L等距增加直至
將重採樣的點的x坐標值和y坐標值作為神經網絡的輸入,就可以得到重採樣點z坐標值,進而得到所有重採樣點Qs(s=0,1,…n-1); 第四步根據重採樣點Qs(s=0,1,…n-1)的曲率添加採樣點,求取離散空間點曲率的時候,將所有重採樣點投影到xoy平面,由第三步可知,所有投影點沿x和y方向以間距L等間距分布,取所求點在xoy平面上的5×5鄰域內的點作為鄰域點,除去本身共24個點,作為所求點的k鄰域K(Qs),S(Qs)為重採樣點Qs的k個鄰近點最小二乘擬合平面,令
為重採樣點Qs的k個鄰近點集合K(Qs)的形心,稱為重採樣點Qs的中心點,該中心點為 設重採樣點Qs的第j個鄰近點到最小二乘平面S(Qs)的距離為dj,到
的距離為λj,那麼對重採樣點Qs的第j個點存在函數fj(Qs),該函數fj(Qs)為 那麼重採樣點Qs的曲率函數可以表示為 根據曲率函數f(Qs)求出所有重採樣點的曲率ρs(s=0,1,…,n-1),根據給定的曲率域值ρτ,ρτ取0.1,取曲率大於ρτ的重採樣點,得到大曲率點,然後在大曲率點的四周增加採樣點,採取的策略是,將所有重採樣點投影到xoy平面上,假設有大曲率點在xoy平面上投影點的坐標是(xρ,yρ),查看它沿x和y方向相鄰的四的投影點(xρ-L,yρ),(xρ+L,yρ),(xρ,yρ-L),(xρ,yρ+L),若其中也有大曲率點,則在大曲率點之間等距增加兩個重採樣點,不失一般性,假設投影到(xρ+L,yρ)坐標的點為大曲率點,則增加
兩點,其餘不是大曲率點的方向上,增加一點,如上面所述的投影到(xρ-L,yρ),(xρ,yρ-L),(xρ,yρ+L)的三點不是大曲率點,則增加
三點,針對所有大曲率點採用以上策略補點,最後將所有補的點的x和y坐標值輸入第二步得到的神經網絡net中,求的z坐標值,這樣就得到了根據曲率增加的所有的重採樣點,連同第三步中得到的重採樣點,得到最終的重採樣點Qs′(s=0,1,…,n-1,…,n+l-1); 第五步將最終的重採樣點中與三維掃描點雲中最近點的距離小於0.5d3D的重採樣點捨棄,把剩餘的採樣點加到三維掃描點雲中,完成標誌點孔洞的填補,其中d3D為三維掃描點雲的密度,d3D設置為點雲的各點與周圍點的最小距離的平均值。
下面參照附圖,對本發明加以詳細描述 在逆向工程中,考慮到測量數據量大而散亂,含噪聲非線性強的特點和神經網絡技術對這類數據處理上的優勢,對於標誌點形成的各種複雜曲面形狀的孔洞,我們引入神經網絡(neural network)技術對測量中的孔洞進行修補,神經網絡具有很強的泛函數逼近能力,三層前向網絡能以任意精度逼近任意連續函數及其各階導數。採用神經網絡代替傳統的基於樣條基函數的曲面擬合方法,將表示曲面的映射關係存儲於神經網絡的連接權值和閾值中,這種全息式的信息存儲模式,使得模型具有較強的容錯性能和聯想能力,不會因為部分神經元受損而嚴重影響其總體性能;也不會因為輸入信號受到一定程度噪聲的汙染而嚴重歪曲輸出,具有魯棒性。總體算法流程見圖3。
本發明主要涉及以下四方面的內容 1)標誌點孔洞周圍的樣本點集的獲取及神經網絡的訓練 對於維納斯頭像表面粘貼的標誌點形成的孔洞,見圖4,在三維掃描點雲中,獲取孔洞周圍的樣本點集時,根據標誌點的三維坐標(xb,yb,zb),將以標誌點為中心的立方體內的數據點作為補孔的樣本點Ps,其中s=0,1,…,t,立方體的8個頂點的三維坐標分別是(xb-r,yb-r,zb-r),(xb-r,yb-r,zb+r),(xb-r,yb+r,zb-r),(xb-r,yb+r,zb+r),(xb+r,yb-r,zb-r),(xb+r,yb-r,zb+r),(xb+r,yb+r,zb-r),(xb+r,yb+r,zb+r),其中r是所取的域值,取標誌點的半徑的1.2~1.5倍,見圖5。
根據樣本點集Ps,訓練補孔的神經網絡,運用matlab的神經網絡工具箱建立BP神經網絡,網絡為三層,輸入層為2個神經元,分別對應樣本數據的x坐標值和y坐標值,隱層為m個神經元,輸出層為1個神經元,對應樣本數據的z坐標值,隱層和輸出層的激勵函數分別是雙曲正切S形函數和線性函數g(x)=x,並應用Levenberg-Marquardt算法訓練BP網絡,隱層神經元數目m取20,網絡訓練的步長取2000,訓練精度取0.001,通過訓練得到補孔的神經網絡net。
2)補孔數據的重採樣以及按曲率調整 重採樣的策略是在得到神經網絡net後,沿x和y方向等步長選取重採樣點,為了使殘缺區域重採樣的密度與其周圍數據保持一致,按照以下方法計算重採樣步長先計算每個樣本點在xoy平面投影的點與其餘點在xoy平面投影的點的最小距離di,再用所有最近距離的均值作為重採步長L, 重採樣的範圍是區間(xmin,xmax),(ymin,ymax),其中xmin、xmax是樣本點的坐標x的最小值和最大值,ymin、ymax是樣本點的坐標y的最小值和最大值,根據重採樣範圍和重採樣步長,得重採樣點的總數為
其中
表示向下取整,重採樣點的x坐標值從xmin開始以步長L等距增加直至
重採樣點的y坐標值從ymin開始以步長L等距增加直至
將重採樣的點的x坐標值和y坐標值作為神經網絡的輸入,就可以得到重採樣點z坐標值,進而得到所有重採樣點Qs(s=0,1,…n-1)。
對初步的重採樣點,按照曲率進行調整,在曲率變化比較大的地方,增加一些採樣點,更光滑的填補孔洞。
重採樣點Qs曲率的計算,應用求空間離散點曲率的方法,先求點的k鄰域K(Qs),由於重採樣的時候是沿x和y方向等距採樣的,因此所有重採樣點的投影點沿x和y方向以間距L等間距分布,取所求點在xoy平面上的5×5鄰域內的點作為鄰域點,見圖6,除去自身共24個點,作為所求點的k個鄰近點集合K(Qs),再擬合重採樣點Qs的k鄰域最小二乘擬合平面S(Qs),令
為重採樣點Qs的k個鄰近點集合K(Qs)的形心,稱為重採樣點Qs的中心點,該中心點為 設重採樣點Qs的第j個鄰近點到最小二乘平面S(Qs)的距離為dj,到
的距離為λj,見圖7,那麼對重採樣點Qs的第j個點存在函數fj(Qs),該函數fj(Qs)為 那麼重採樣點Qs的曲率函數可以表示為 根據曲率函數f(Qs)求出所有重採樣點的曲率ρs(s=0,1,…,n-1)。
得到所有採樣點的曲率後,根據給定的曲率域值ρτ,ρτ取0.1,取曲率大於ρτ的重採樣點,得到大曲率點,然後在大曲率點的四周增加採樣點,採取的策略是,將所有重採樣點投影到xoy平面上,假設有大曲率點在xoy平面上投影點的坐標是(xρ,yρ),查看它沿x和y方向相鄰的四的投影點(xρ-L,yρ),(xρ+L,yρ),(xρ,yρ-L),(xρ,yρ+L),若其中也有大曲率點,則在大曲率點之間等距增加兩個重採樣點,不失一般性,假設投影到(xρ+L,yρ)坐標的點為大曲率點,則增加
兩點,其餘不是大曲率點的方向上,增加一點,如上面所述的投影到(xρ-L,yρ),(xρ,yρ-L),(xρ,yρ+L)的三點不是大曲率點,則增加
三點,見圖8,針對所有大曲率點採用以上策略補點,最後將所有補的點的x和y坐標值輸入已經訓練好的神經網絡net中,求得z坐標值,這樣就得到了根據曲率增加的所有的重採樣點,加上開始求得的重採樣點集Qs,得到最終的重採樣點集Qs′(s=0,1,…,n-1,…,n+l-1),(其中前n個點即為初步的重採樣點集Qs,後面l個點為根據曲率自適應增加的採樣點)。根據曲率增加點的算法流程圖見圖9。
3)最終填補孔洞點的確定 由於重採樣的範圍是由樣本點集確定的,因此如果直接將最終的重採樣點加入原始的點雲,在孔洞的邊界區域會有重疊區,為了避免加入冗餘點,將最終的重採樣點中與三維掃描點雲中最近點的距離小於0.5d3D的重採樣點捨棄,把剩餘的重採樣點加到三維掃描點雲中,完成標誌點孔洞的填補,其中d3D為三維掃描點雲的密度,d3D設置為點雲的各點與周圍點的最小距離的平均值。最終補孔後的點雲,圖10為正面效果圖,圖11為另一個角度的效果圖,兩副圖中的矩形框區域為補孔的區域。
權利要求
1.一種三維掃描點雲中基於神經網絡的標誌點孔洞的填補方法,其特徵在於
第一步對於物體表面粘貼的標誌點形成的孔洞,在三維掃描點雲中,獲取孔洞周圍的樣本點集時,根據標誌點的三維坐標(xb,yb,zb),將以標誌點為中心的立方體內的數據點作為補孔的樣本點Ps,其中s=0,1,…,t,立方體的8個頂點的三維坐標分別是(xb-r,yb-r,zb-r),(xb-r,yb-r,zb+r),(xb-r,yb+r,zb-r),(xb-r,yb+r,zb+r),(xb+r,yb-r,zb-r),(xb+r,yb-r,zb+r),(xb+r,yb+r,zb-r),(xb+r,yb+r,zb+r),其中r是所取的域值,取標誌點的半徑的1.2~1.5倍
第二步根據樣本點數據Ps,訓練補孔的神經網絡,用於填補孔洞的神經網絡為三層的反向傳播神經網絡,其輸入層為2個神經元,分別對應樣本數據的x坐標值和y坐標值,隱層為m個神經元,輸出層為1個神經元且對應樣本數據的z坐標值,隱層和輸出層的激勵函數分別是雙曲正切S形函數和線性函數g(x)=x,並應用Levenberg-Marquardt算法訓練反向傳播網絡,隱層神經元數目m選取20,通過訓練得到補孔的神經網絡net;
第三步在得到神經網絡net後,沿x和y方向等步長選取重採樣點,為了使殘缺區域重採的密度與其周圍數據保持一致,計算所有樣本點Ps,其中s=0,1,…,t,在xoy平面投影的點與周圍點的最小距離的平均距離作為重採樣的步長L,重採樣的範圍是區間(xmin,xmax),(ymin,ymax),其中xmin、xmax是樣本點的坐標x的最小值和最大值,ymin、ymax是樣本點的坐標y的最小值和最大值,重採點的總數為
其中「·
表示向下取整,重採樣點的x坐標值從xmin開始以步長L等距增加直至
重採樣點的y坐標值從ymin開始以步長L等距增加直至
將重採樣的點的x坐標值和y,坐標值作為神經網絡的輸入,就可以得到重採樣點z坐標值,進而得到所有重採樣點;
第四步根據重採樣點的曲率添加採樣點,求取離散空間點曲率的時候,將所有重採樣點投影到xoy平面,由第三步可知,所有投影點沿x和y方向以間距L,等間距分布,取所求點在xoy平面上的5×5鄰域內的點作為鄰域點,除去本身共24個點,作為所求點的k鄰域,根據已有方法求出所有重採樣點的曲率ρs,其中s=0,1,…,n-1,根據給定的曲率域值ρτ,ρτ取0.1,取曲率大於ρτ的重採樣點,得到大曲率點,然後在大曲率點的四周增加採樣點,採取的策略是,將所有重採樣點投影到xoy平面上,假設有大曲率點在xoy平面上投影點的坐標是(xρ,yρ),查看它沿x和y方向相鄰的四個投影點(xρ-L,yρ),(xρ+L,yρ),(xρ,yρ-L),(xρ,yρ+L),若其中也有大曲率點,則在大曲率點之間等距增加兩個重採樣點,不失一般性,假設投影到(xρ+L,yρ)坐標的點為大曲率點,則增加
兩點,其餘不是大曲率點的方向上,增加一點,如上面所述的投影到(xρ-L,yρ),(xρ,yρ-L),(xρ,yρ+L)的三點不是大曲率點,則增加
三點,針對所有大曲率點採用以上策略補點,最後將所有補的點的x和y坐標值輸入第二步得到的神經網絡net中,求的z坐標值,這樣就得到了根據曲率增加的所有的重採樣點,連同第三步中得到的重採樣點,得到最終的重採樣點;
第五步將最終的重採樣點中與三維掃描點雲中最近點的距離小於0.5d3D的重採樣點捨棄,把剩餘的重採樣點加到三維掃描點雲中,完成標誌點孔洞的填補,其中d3D為三維掃描點雲的密度,d3D設置為點雲的各點與周圍點的最小距離的平均值。
全文摘要
本發明提供一種能夠保證填補的孔洞數據與周圍數據連續並且點雲特徵表示更好的基於神經網絡的三維掃描的點雲孔洞填補方法,本發明具有方法簡單的優點。本發明主要用於對三維掃描系統中由標誌點產生的各種複雜曲面形狀的孔洞進行填補的應用場合。利用本發明中的神經網絡方法,可以得到填補孔洞的網絡,隨後根據孔洞邊界點的密度,在孔洞區域取採樣點,並根據點的曲率進一步調整補孔的點,達到對孔洞的光滑填充。
文檔編號G06N3/02GK101127123SQ20071013211
公開日2008年2月20日 申請日期2007年9月11日 優先權日2007年9月11日
發明者達飛鵬, 谷繼兵, 蓋紹彥, 朱正鍵, 楊偉光 申請人:東南大學