《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設(shè)計應(yīng)用 > 含噪點(diǎn)云預(yù)處理技術(shù)研究
含噪點(diǎn)云預(yù)處理技術(shù)研究
來源:微型機(jī)與應(yīng)用2012年第12期
郝慧麗,劉先勇
(西南科技大學(xué) 信息工程學(xué)院,四川 綿陽621000)
摘要: 用三維光學(xué)測量系統(tǒng)進(jìn)行測量時,由于周圍環(huán)境、人、設(shè)備等各方面的影響,測量數(shù)據(jù)中常常會摻入噪聲。針對體外飛點(diǎn)和離群成簇噪聲分別采取基于K_近鄰搜索的平均距離去噪算法和改進(jìn)的基于近鄰點(diǎn)距傳播的去噪算法進(jìn)行處理,取得了較好的去噪效果。針對直接測量或者多次測量拼接獲取的點(diǎn)云存在“粗糙毛刺”和點(diǎn)云多層重疊的狀況,采用基于MLS的擬合平面投影光順?biāo)惴ㄟM(jìn)行光滑處理,去除“粗糙毛刺”和打薄重疊區(qū)域。該光順去噪預(yù)處理算法已經(jīng)成功運(yùn)用到三維測量系統(tǒng)的點(diǎn)云處理模塊中。
Abstract:
Key words :

摘  要: 用三維光學(xué)測量系統(tǒng)進(jìn)行測量時,由于周圍環(huán)境、人、設(shè)備等各方面的影響,測量數(shù)據(jù)中常常會摻入噪聲。針對體外飛點(diǎn)和離群成簇噪聲分別采取基于K_近鄰搜索的平均距離去噪算法和改進(jìn)的基于近鄰點(diǎn)距傳播的去噪算法進(jìn)行處理,取得了較好的去噪效果。針對直接測量或者多次測量拼接獲取的點(diǎn)云存在“粗糙毛刺”和點(diǎn)云多層重疊的狀況,采用基于MLS的擬合平面投影光順算法進(jìn)行光滑處理,去除“粗糙毛刺”和打薄重疊區(qū)域。該光順去噪預(yù)處理算法已經(jīng)成功運(yùn)用到三維測量系統(tǒng)的點(diǎn)云處理模塊中。
關(guān)鍵詞: 去噪;光順;MLS;點(diǎn)云數(shù)據(jù);K_近鄰

    逆向工程是將現(xiàn)有實(shí)物產(chǎn)品利用數(shù)據(jù)采集設(shè)備獲取物體外表面三維信息,再將數(shù)據(jù)進(jìn)行處理及分析,最后實(shí)現(xiàn)產(chǎn)品的三維信息數(shù)字化,重建三維模型,對產(chǎn)品模型進(jìn)行二次設(shè)計、修改及優(yōu)化。物體三維數(shù)據(jù)采集設(shè)備從采集方式上可以分為兩種類型:接觸式和非接觸式。其中,基于結(jié)構(gòu)光的非接觸式測量是當(dāng)前及今后優(yōu)先發(fā)展的重點(diǎn),它具有快速、全面獲取物體三維外形數(shù)據(jù)且對物體無損傷、對自然環(huán)境無污染的優(yōu)點(diǎn)。但是由于測量環(huán)境、人、設(shè)備等因素的影響,采集到的點(diǎn)云中往往含有大量的噪聲,難以被直接應(yīng)用于物體三維模型的重建。為了使點(diǎn)云數(shù)據(jù)能夠運(yùn)用到后期的處理過程,滿足曲面擬合及造型設(shè)計等對數(shù)據(jù)高質(zhì)量的要求,必須先對原始數(shù)據(jù)進(jìn)行去噪、光順方面的預(yù)處理。逆向工程與三維測量技術(shù)的迅速發(fā)展也推動了去噪光順研究的進(jìn)展,國內(nèi)外許多研究學(xué)者在這方面做了深入的研究,如基于局部曲面擬合的MLS方法[1],基于Scale-Space理論的拉普拉斯方法[2]等。近年來,傳統(tǒng)的網(wǎng)格模型去噪和光順?biāo)惴ǖ玫搅碎L足的發(fā)展。其中很多網(wǎng)格模型的去噪和光順?biāo)惴梢灾苯訑U(kuò)展到點(diǎn)模型上,比較經(jīng)典的有Fleishman的雙邊濾波去噪算法[3]。
    本文針對點(diǎn)云數(shù)據(jù)所含噪聲以及點(diǎn)云特點(diǎn)進(jìn)行分析,然后采用不同的算法進(jìn)行去噪和光順處理。
1 去噪光順?biāo)惴?/strong>
    三維測量系統(tǒng)獲取的點(diǎn)云數(shù)據(jù)中混雜的噪聲大致可以分為3種:(1)體外飛點(diǎn),偏離實(shí)測數(shù)據(jù)較遠(yuǎn),懸浮在主體點(diǎn)云外圍的孤立、稀疏點(diǎn);(2)離群成簇噪聲,偏離主體點(diǎn)云較遠(yuǎn),小而密集的噪聲簇;(3)混雜噪點(diǎn),噪聲點(diǎn)和真實(shí)點(diǎn)混雜在一起,該種點(diǎn)云的形態(tài)與實(shí)體中心點(diǎn)云成分層狀,直觀表現(xiàn)為點(diǎn)云表面很多“粗糙毛刺”。
1.1 體外飛點(diǎn)去除算法
    針對體外飛點(diǎn)無序、散亂的特性,本文采用空間單元柵格法[4]建立點(diǎn)云數(shù)據(jù)點(diǎn)之間的空間拓?fù)潢P(guān)系進(jìn)而搜索每個點(diǎn)的K_近鄰。首先讀入測量數(shù)據(jù)點(diǎn),將三維坐標(biāo)點(diǎn)存入一個一維數(shù)組Array[],同時得到其X、Y、Z坐標(biāo)的最大、最小值,這樣可以做一個與各個坐標(biāo)軸平行的大長方體柵格,包圍所有的三維點(diǎn)。根據(jù)數(shù)據(jù)點(diǎn)的密度將長方體柵格劃分為多個小立方體柵格,并判斷每個數(shù)據(jù)點(diǎn)所在的小立方體柵格,將數(shù)據(jù)點(diǎn)的序號追加到該立方體柵格對應(yīng)的線性鏈表中。

    確定好當(dāng)前點(diǎn)所在小立方體柵格的索引號后,對其所在小立方體及相鄰的上、下、左、右、前、后共27個小立方體柵格中查找K個最近鄰的點(diǎn),求取pi的K_近鄰。實(shí)驗(yàn)時K取20。
    建立好散亂點(diǎn)之間的拓?fù)潢P(guān)系,搜索到每個點(diǎn)的K_近鄰之后,采用平均距離法進(jìn)行噪聲點(diǎn)去除。算法如下:
    (1)讀入三維散亂點(diǎn)云數(shù)據(jù)P;
    (2)利用空間單元柵格法建立點(diǎn)云拓?fù)潢P(guān)系;
    (3)搜索點(diǎn)云中任意一點(diǎn)pi∈P的K_鄰域NB(pi);
    (4)計算當(dāng)前pi與其K_鄰域內(nèi)K個點(diǎn)之間的距離,取其平均值M(pi);
    (5)判斷該平均距離M(pi)是否超過設(shè)定的閾值M?滓,若超過,則認(rèn)為該點(diǎn)是離群噪聲點(diǎn),將其刪除;
    (6)重復(fù)步驟(3)~步驟(5),直到處理完整體點(diǎn)云中所有的數(shù)據(jù)點(diǎn)。
1.2 離群成簇噪點(diǎn)的去除
    有些測量數(shù)據(jù)中會出現(xiàn)一部分離主體點(diǎn)云(即被測物體點(diǎn)云)較遠(yuǎn)的小片點(diǎn)云和離散點(diǎn),它們稱之為“離群點(diǎn)簇”。含有成簇噪聲的點(diǎn)云數(shù)據(jù),由于主體點(diǎn)云數(shù)據(jù)點(diǎn)的數(shù)量比離群點(diǎn)的數(shù)量大得多,所以計算每一片點(diǎn)云中數(shù)據(jù)點(diǎn)的數(shù)目,認(rèn)定數(shù)目最多的點(diǎn)云為主體點(diǎn)云,其余均為離群點(diǎn),可以進(jìn)行刪除處理。
    本文采用改進(jìn)的近鄰點(diǎn)距離傳播算法去除離群成簇噪聲。近鄰點(diǎn)距離傳播算法[5]主要用來計算每片點(diǎn)云的數(shù)量,其主要思想是:設(shè)定點(diǎn)與其近鄰點(diǎn)的距離閾值,并假設(shè)某一點(diǎn)為種子點(diǎn),向其K_近鄰中以點(diǎn)與點(diǎn)之間距離小于閾值的約束進(jìn)行傳播,獲取相對應(yīng)的K_近鄰的點(diǎn);接著以傳播得到的點(diǎn)作為新的種子點(diǎn),再向各自K_近鄰中距離小于設(shè)定閾值的點(diǎn)做傳播。注意,每個點(diǎn)只能被傳播一次,傳播的同時記錄點(diǎn)云數(shù)據(jù)中點(diǎn)的個數(shù)。當(dāng)傳播不能繼續(xù)時,說明此片點(diǎn)云數(shù)據(jù)已經(jīng)被傳播完畢,且點(diǎn)的數(shù)目計算完畢。再次重新尋求未被傳播到的點(diǎn)作為新的種子點(diǎn),繼續(xù)傳播。這樣一直到計算完每片點(diǎn)云點(diǎn)的數(shù)目。最后,點(diǎn)數(shù)多的即是主體點(diǎn)云,剩余的為離群點(diǎn),將要被刪除。具體算法流程如下:
    (1)創(chuàng)建一維數(shù)組mark[i]=-1,{i=1,2,3,…,N},記錄含點(diǎn)的柵格屬于哪片點(diǎn)云。其中N為全部點(diǎn)云中點(diǎn)的總個數(shù);
    創(chuàng)建兩個動態(tài)存儲容器vec_1、vec_2分別記錄每個數(shù)據(jù)點(diǎn)對應(yīng)的序號;
    創(chuàng)建int類型number,并賦初始值為0;
    設(shè)定點(diǎn)距離閾值為threshold_dist;
    設(shè)定K的取值,建立各點(diǎn)的K_近鄰;
    完成初始化。
    (2)依次檢查并記錄mark[i],如果mark[i]=-1,則number=number+1,mark[i]=number,然后把對應(yīng)的i值追加到vec_1并轉(zhuǎn)到步驟(3)執(zhí)行;對每個i值遍歷完以后,轉(zhuǎn)到步驟(4)。
    (3)分別以vec_1中的每個序號對應(yīng)的數(shù)據(jù)點(diǎn)作為種子點(diǎn),順序查看其K_近鄰數(shù)據(jù)點(diǎn),如果數(shù)據(jù)點(diǎn)與種子點(diǎn)的幾何距離dist<threshold_dist,并且該數(shù)據(jù)點(diǎn)對應(yīng)的mark[i]=-1,則使mark[j]=number,并把此數(shù)據(jù)點(diǎn)的序號j追加到vec_2,否則繼續(xù)查看K_近鄰的下一個數(shù)據(jù)點(diǎn)。當(dāng)vec_1中的序號對應(yīng)的數(shù)據(jù)點(diǎn)都做過了種子點(diǎn)后,刪除vec_1中的所有元素。然后,如果vec_2為空,轉(zhuǎn)到步驟(2);否則,以vec_2中的每個序號對應(yīng)的數(shù)據(jù)點(diǎn)為種子點(diǎn),順序查看其K_近鄰點(diǎn),如果數(shù)據(jù)點(diǎn)與種子點(diǎn)的幾何距離dist<threshold_dist,并且該數(shù)據(jù)點(diǎn)對應(yīng)的mark[i]=-1,則使mark[j]=number,并把此數(shù)據(jù)點(diǎn)的序號j追加到 vec_1,否則繼續(xù)查看K_鄰近的下一個數(shù)據(jù)點(diǎn)。當(dāng)vec_2中的序號對應(yīng)的數(shù)據(jù)點(diǎn)都做過了種子點(diǎn)后,刪除vec_2中的所有元素。如果vec_1為空,轉(zhuǎn)步驟(2),否則繼續(xù)步驟(4)。

1.3 光順?biāo)惴?/strong>
    在三維光學(xué)測量過程中,由于人為、環(huán)境等因素干擾,會出現(xiàn)“粗糙”點(diǎn)云數(shù)據(jù),再者多次測量結(jié)果拼接后會出現(xiàn)點(diǎn)云疊層的情況。為了減少“粗糙毛刺”和疊層對測量數(shù)據(jù)后期處理和造型造成影響,本文采用基于移動最小二乘擬合平面投影法對測量數(shù)據(jù)中的“粗糙毛刺”和重疊層進(jìn)行光滑處理。

 

 

    隨著逆向工程的廣泛應(yīng)用和三維測量技術(shù)的發(fā)展,人們對曲面造型設(shè)計的技術(shù)要求越來越高,對點(diǎn)云數(shù)據(jù)預(yù)處理效果的要求也越來越高。本文對三維光學(xué)測量系統(tǒng)獲取的含噪點(diǎn)云進(jìn)行分析,對不同的噪聲類型采取不同的去噪光順預(yù)處理方法來獲取高質(zhì)量的點(diǎn)云。實(shí)驗(yàn)結(jié)果表明,本文的算法去噪光順?biāo)俣雀摺⒎€(wěn)健性強(qiáng),具有較高的實(shí)用價值。
參考文獻(xiàn)
[1] ALEXA M,BEHR J,F(xiàn)LEISHMAN S,et al.Point set surfaces[C].Processing of IEEE Visualization 2001,San Diego,California,21-26 October 2001,IEEE,Piscataway,New Jersey,2001:21-28,537.
[2] LANCASTER P,SALKAUSKAS K.Surfaces generated by  moving least squares methods[J].Mathematics of Computation,1981,37(155):141-159.
[3] FLEISHMAN S,DRORI I,COHEN-Or D.Bilateral mesh denoising[J].ACM Transactions on Graphics(TOG),2003,22(3):950-953.
[4] 張毅,劉旭敏,隋穎,等.基于K-近鄰點(diǎn)云去噪算法的研究與改進(jìn)[J].計算機(jī)應(yīng)用,2009,29(4):1011-1014.
[5] 王雪英.離群點(diǎn)預(yù)處理及檢測算法研究[D].成都:西南交通大學(xué),2009.

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。