陳 展
基于NURBS技術(shù)的點(diǎn)云數(shù)據(jù)曲面重建研究
陳展
(海軍駐中國航天科工集團(tuán)第三研究院軍事代表室,北京 100074)
在反求工程中,點(diǎn)云數(shù)據(jù)的曲面重建質(zhì)量直接關(guān)系到結(jié)果的精確性和實(shí)用性。本文基于NURBS技術(shù)對點(diǎn)云數(shù)據(jù)的曲面重建過程進(jìn)行了研究,建立了點(diǎn)云數(shù)據(jù)預(yù)處理和曲面重建的算法,通過實(shí)驗驗證了文中算法的正確性。
曲面重建;NURBS;點(diǎn)云;反求工程
反求工程要依次經(jīng)過數(shù)據(jù)采集、點(diǎn)云數(shù)據(jù)處理和曲面重建三個過程。常用的曲面模型有貝賽爾曲面、B樣條曲面、非均勻有理B樣條(Non-Uniform Rational B-Spline,NURBS)曲面[1]等。其中NURBS方法具有可以精確表示二次規(guī)則曲線曲面的特點(diǎn),研究基于該技術(shù)的點(diǎn)云數(shù)據(jù)曲面重建方法,具有重要的學(xué)術(shù)及應(yīng)用意義。
通常把三維空間內(nèi)點(diǎn)的集合稱為點(diǎn)云,點(diǎn)云的數(shù)據(jù)個數(shù)從幾百、幾千到幾萬個不等,排列方式也有散亂點(diǎn)云、掃描線點(diǎn)云、網(wǎng)格化點(diǎn)云等。不同數(shù)據(jù)采集裝備所產(chǎn)生的點(diǎn)云是不同的,所采用的處理方法也是不同的。
1.1數(shù)據(jù)采集與精簡
反求工程采用的測量方法主要有兩種:一是傳統(tǒng)的接觸測量法,二是無接觸測量法[2]。本文的數(shù)據(jù)采集裝置是激光掃描儀,通過規(guī)劃路徑,可以獲得一系列點(diǎn)的Z坐標(biāo)值,進(jìn)而進(jìn)行后續(xù)的點(diǎn)云數(shù)據(jù)處理與對比分析。采用均勻網(wǎng)格法可以減少數(shù)據(jù)量,其原理是:首先把所得的數(shù)據(jù)點(diǎn)進(jìn)行均勻網(wǎng)格劃分(通常由用戶指定),然后從每個網(wǎng)絡(luò)中提取點(diǎn)根據(jù)Z值排序,如果某個點(diǎn)位于各個點(diǎn)中間,那么這個點(diǎn)被選中保留,其他點(diǎn)濾除[3]。
1.2數(shù)據(jù)平滑
經(jīng)過數(shù)據(jù)精簡的點(diǎn)云數(shù)據(jù)若直接進(jìn)行曲面重建,可能出現(xiàn)局部曲率過大的情況,容易增加后期曲面重建時運(yùn)算負(fù)擔(dān),所以要進(jìn)行平滑處理。高斯濾波法以高斯濾波器在指定域內(nèi)的權(quán)重為高斯分布(正態(tài)分布),其平均效果較小,在數(shù)據(jù)平滑的同時,能較好地保持原數(shù)據(jù)形貌,因而常被使用。高斯濾波算法按式(1)計算。
1.3邊緣識別與分割
采集裝置采集得到的點(diǎn)云數(shù)據(jù)不僅包括被測零件點(diǎn)云數(shù)據(jù),還包括零件周圍臺面及臺面上其他物體的點(diǎn)云數(shù)據(jù)。必須進(jìn)行邊緣識別與分割,將被測零件從臺面中區(qū)分出來。被測零件與臺面間的邊界主要屬于褶皺邊界(切矢不連續(xù)),可以通過檢查曲率半徑的方式來判定是否為邊界點(diǎn)。
NURBS曲面可采用有理分式方法表示為:
在x方向上每隔跨距S取一點(diǎn)的坐標(biāo)值作為控制點(diǎn)的坐標(biāo),從而生成m×n的均勻矩形控制網(wǎng)格。要確定一個NURBS曲面的形狀,不光要知道控制點(diǎn)信息,還要知道節(jié)點(diǎn)向量和權(quán)值。為使NURBS曲面邊界與點(diǎn)云數(shù)據(jù)邊界具有更高的重合度,k階NURBS曲面節(jié)點(diǎn)向量的前k+1個參數(shù)為0,最后k+1個參數(shù)為1。由于點(diǎn)云數(shù)據(jù)基本均勻分布,權(quán)值可以都設(shè)為1。在確定控制點(diǎn)網(wǎng)格、節(jié)點(diǎn)向量和權(quán)值后,就可以通過插值生成NURBS曲面。
采用上述方法,對如圖1所示的點(diǎn)云進(jìn)行了曲面重建實(shí)驗,邊緣分割結(jié)果和曲面重建結(jié)果分別如圖2和圖3所示。在數(shù)據(jù)平滑過程中,如果一次平滑的效果不理想,可以進(jìn)行多次數(shù)據(jù)平滑。對于一個m×n的控制網(wǎng)格,m由掃描路徑條數(shù)決定,在參數(shù)輸入?yún)^(qū)輸入n的值,就能根據(jù)這個m×n的控制網(wǎng)格分段NURBS曲面,n值的大小決定了重建曲面的精度。從實(shí)驗結(jié)果可以看出,本文算法成功地實(shí)現(xiàn)了數(shù)據(jù)的預(yù)處理、分割以及NURBS曲面重建。
圖1 初始點(diǎn)云Fig.1 Initial point cloud
圖2 點(diǎn)云預(yù)處理結(jié)果Fig.2 Pretreatment result of the point cloud
圖3 NURBS曲面重建結(jié)果Fig.3 NURBS surface reconstruction result
在點(diǎn)云數(shù)據(jù)曲面重建過程中,原始點(diǎn)云數(shù)據(jù)不能直接用來重建曲面,需要通過數(shù)據(jù)精簡、數(shù)據(jù)平滑、邊緣識別與分割才能生成適于重建曲面的點(diǎn)云數(shù)據(jù)。從該點(diǎn)云數(shù)據(jù)中選取適當(dāng)點(diǎn)作為NURBS曲面的控制點(diǎn),并賦予適當(dāng)?shù)臋?quán)值和節(jié)點(diǎn)向量,就能生成NURBS曲面。
[1] WEIYIN MA,PEIREN HE.B-spline surface local updating with unorganized points[J].Computer-Aided Design,1998,(11):853-862.
[2] 蘇海.反求工程在工業(yè)設(shè)計中的應(yīng)用研究[D].昆明:昆明理工大學(xué),2000.
[3]邱開強(qiáng),李芳.基于C程序冒泡排序算法的研究與改進(jìn)[J].電腦知識與技術(shù),2010,(08):198-200,209.
Research on surface reconstruction of point cloud data based on NURBS technology
CHENZhan
(MilitaryRepresentative Office ofNavyin the Third Research Institute ofCASIC,Beijing100074,China)
In reverse engineering,the surface reconstruction quality of point cloud has an important effect on the accuracy and applicability of result.This paper researches the surface reconstruction for point cloud based on NURBS technology,the algorithms for point cloud pretreatment and surface reconstruction are built,and the algorithms are verified byan experiment.
Surface reconstruction;NURBS;Point cloud;Reverse engineering
TP391.7
A
1674-8646(2015)04-0050-02
2015-04-13
陳展(1985-),男,陜西西安人,碩士,助理工程師,從事機(jī)電一體化、數(shù)字化制造、計算機(jī)仿真研究。