曹 爽 岳建平 馬 文,2
(1河海大學(xué)地球科學(xué)與工程學(xué)院,南京 210098)(2南京信息工程大學(xué)遙感學(xué)院,南京 210044)(3江西省數(shù)字國(guó)土重點(diǎn)實(shí)驗(yàn)室,撫州 344000)
基于特征選擇的雙邊濾波點(diǎn)云去噪算法
曹 爽1,2,3岳建平1馬 文1,2
(1河海大學(xué)地球科學(xué)與工程學(xué)院,南京 210098)
(2南京信息工程大學(xué)遙感學(xué)院,南京 210044)
(3江西省數(shù)字國(guó)土重點(diǎn)實(shí)驗(yàn)室,撫州 344000)
摘 要:為了去除與真實(shí)點(diǎn)混合在一起的噪聲并更好地保留特征,將點(diǎn)云噪聲分為3類,將其中與真實(shí)點(diǎn)混合在一起的數(shù)據(jù)點(diǎn)稱為第3類噪聲點(diǎn),利用改進(jìn)的雙邊濾波算法去除該類噪聲點(diǎn).首先,利用鄰域點(diǎn)判斷該點(diǎn)屬于特征點(diǎn)還是非特征點(diǎn);然后,根據(jù)不同范圍的點(diǎn)云來計(jì)算特征點(diǎn)和非特征點(diǎn)的雙邊濾波因子,實(shí)現(xiàn)基于特征選擇的雙邊濾波點(diǎn)云去噪.利用該算法對(duì)手持三維激光掃描儀獲得的盒子及工業(yè)構(gòu)件的激光點(diǎn)云數(shù)據(jù)進(jìn)行平滑去噪處理.結(jié)果表明,所提算法在去除噪聲的同時(shí)可以有效保持被掃描物體的特征,避免出現(xiàn)因雙邊濾波不能兼顧?quán)徲螯c(diǎn)特征而產(chǎn)生的過度光順現(xiàn)象.
關(guān)鍵詞:點(diǎn)云去噪;雙邊濾波;特征選擇;曲率
一些工業(yè)構(gòu)件構(gòu)型復(fù)雜,在掃描過程中容易受到被測(cè)對(duì)象構(gòu)型、表面的粗糙度、缺陷、紋理等因素的影響,因此需要在獲取點(diǎn)云數(shù)據(jù)后的數(shù)據(jù)預(yù)處理階段進(jìn)行點(diǎn)云去噪處理.其目的是在去除噪聲數(shù)據(jù)、獲得曲面更高階平滑性的同時(shí),盡可能保持目標(biāo)物體的幾何特征,防止其產(chǎn)生收縮變形或過光順.
三維點(diǎn)云數(shù)據(jù)分為有序點(diǎn)云、部分有序點(diǎn)云以及無序無組織點(diǎn)云數(shù)據(jù).對(duì)于不同類型的點(diǎn)云數(shù)據(jù)有著相對(duì)應(yīng)合適的去噪方法.對(duì)于有序或者部分有序的點(diǎn)云數(shù)據(jù),可以采用的去噪算法包括最小二乘濾波、卡爾曼濾波和平滑濾波等.針對(duì)于無序無結(jié)構(gòu)的散亂點(diǎn)云數(shù)據(jù),許多相關(guān)學(xué)者也進(jìn)行了深入研究,提出了拉普拉斯算子、平均曲率流、移動(dòng)最小二次曲面等方法[1-5].
實(shí)際上,噪聲往往無規(guī)律地分布在目標(biāo)物體周圍,難以用統(tǒng)一數(shù)學(xué)模型區(qū)分.散亂點(diǎn)云的噪聲分3類:①偏離點(diǎn)云且懸浮在點(diǎn)云上方的稀疏點(diǎn),這類點(diǎn)與點(diǎn)云主體關(guān)聯(lián)性小,基本可認(rèn)為是錯(cuò)誤點(diǎn);②距離大片點(diǎn)云中心較遠(yuǎn)、小而密集的點(diǎn)云,即第2類噪聲點(diǎn);③ 與真實(shí)點(diǎn)混合在一起的點(diǎn),即第3類噪聲點(diǎn).因此,3類噪聲應(yīng)該區(qū)別對(duì)待,不能用一種方法完全去除.
本文提出了一種基于特征選擇的雙邊濾波去噪算法.將噪聲點(diǎn)分為3類,將點(diǎn)云進(jìn)行格網(wǎng)化,通過判斷散格里的點(diǎn)云個(gè)數(shù)來去除第1類與第2類噪聲點(diǎn),利用本文算法去除第3類噪聲點(diǎn).針對(duì)特征點(diǎn)云和非特征點(diǎn)云,采用不同范圍的點(diǎn)云計(jì)算雙邊濾波因子,再利用雙邊濾波點(diǎn)云去噪,可以防止出現(xiàn)因雙邊濾波不能兼顧?quán)徲螯c(diǎn)特征而產(chǎn)生的過度光順現(xiàn)象.實(shí)驗(yàn)結(jié)果表明,利用本文算法去除噪聲的同時(shí)可以有效保持被掃描物體的特征.
通過三維散亂點(diǎn)云的空間劃分確定散亂點(diǎn)云的空間位置,將點(diǎn)云數(shù)據(jù)按 x,y,z劃分成 M,N,T個(gè)部分.散亂點(diǎn)云空間柵格化,不但可以求出每個(gè)點(diǎn)所在的柵格位置,也可確定每個(gè)柵格中點(diǎn)云的個(gè)數(shù).
首先,讀入點(diǎn)云數(shù)據(jù),將三維坐標(biāo)點(diǎn)存入一個(gè)一維數(shù)組中,同時(shí)得到其x,y,z坐標(biāo)的最小值和最大值,形成一個(gè)與坐標(biāo)軸平行的長(zhǎng)方體包圍盒(包圍所有的數(shù)據(jù)點(diǎn)),并根據(jù)數(shù)據(jù)點(diǎn)的密度將長(zhǎng)方體包圍盒劃分成小立方體柵格.
設(shè)空間長(zhǎng)方體包圍盒的最小坐標(biāo)為 xmin,ymin,zmin,長(zhǎng)方體包圍盒的最大坐標(biāo)為 xmax,ymax,zmax,立方體柵格的長(zhǎng)度為L(zhǎng),則小立方體柵格在x,y,z三個(gè)方向的個(gè)數(shù)分別為


設(shè)某確定點(diǎn)的三維坐標(biāo)值為 Px,Py,Pz,則其所在小立方體柵格的哈希函數(shù)為

式中,I,J,K 分別為該點(diǎn)所在立方體的 x,y,z軸 3個(gè)方向立方體柵格的索引號(hào).由一個(gè)一維存貯指針的數(shù)組來記錄每一個(gè)柵格中所有數(shù)據(jù)點(diǎn)的序號(hào),數(shù)組中元素個(gè)數(shù)則為M×N×T.
當(dāng)前柵格搜索點(diǎn)P的最近k鄰點(diǎn)按距離增序排列.如果當(dāng)前柵格內(nèi)候選點(diǎn)的k鄰點(diǎn)已找到,并且距離都小于點(diǎn)P到柵格6個(gè)面的最短距離,則候選點(diǎn)的k個(gè)最近鄰域搜索結(jié)束;否則柵格向外擴(kuò)張一圈,繼續(xù)按此規(guī)則搜索,k取10~20為宜.
第1類噪聲點(diǎn)是偏離點(diǎn)云且懸浮在點(diǎn)云上方的稀疏點(diǎn),第2類噪聲點(diǎn)是距離大片點(diǎn)云中心較遠(yuǎn)、小而密集的點(diǎn)云.散亂點(diǎn)云網(wǎng)格化后,首先判斷每個(gè)小立體柵格中的數(shù)據(jù)點(diǎn)點(diǎn)數(shù),如果數(shù)目小于2,則刪除該柵格中所有數(shù)據(jù)點(diǎn).這樣做的目的是找到并且可以刪除掉三維空間中懸浮在點(diǎn)云上空的、散亂稀疏的數(shù)據(jù)點(diǎn),即第1類噪聲點(diǎn).
柵格中的點(diǎn)云數(shù)大于閾值,則以此柵格為中心利用區(qū)域增長(zhǎng)思想,在劃分空間柵格的基礎(chǔ)上,順序查看三維空間中小立方體柵格有無數(shù)據(jù)點(diǎn),如果某個(gè)柵格中有數(shù)據(jù)點(diǎn),則以該柵格為中心,查看其周圍柵格中是否有數(shù)據(jù)點(diǎn).繼續(xù)依次把周圍有點(diǎn)柵格作為中心,查看其周圍柵格,直到查看完所有柵格.將與該柵格屬同一片點(diǎn)云的相鄰柵格尋找出來,通過判斷每一片點(diǎn)云中有點(diǎn)柵格的柵格數(shù)目,可知哪一片點(diǎn)云含有的有點(diǎn)柵格的數(shù)量最多.當(dāng)點(diǎn)云所屬片的點(diǎn)云個(gè)數(shù)不是最多時(shí),即為第2類噪聲,需將其刪除掉.
3 類噪聲中最難處理的是和真實(shí)點(diǎn)混合在一起的噪聲,許多學(xué)者對(duì)這類點(diǎn)云去噪方法進(jìn)行了深入研究.Fleishman等[6-7]將圖像處理中雙邊濾波器的思想推廣到三維網(wǎng)格模型,設(shè)計(jì)了基于雙邊濾波的各向異性光順去噪算法,這種方法簡(jiǎn)單快速,但它不能處理大尺度噪聲,且容易產(chǎn)生特征被過度光順的問題[8-10].針對(duì)第3類點(diǎn)云噪聲,本文提出了一種基于特征選擇的雙邊濾波點(diǎn)云去噪算法.雙邊濾波方法定義為p'=p-αn,其中p為原點(diǎn)云點(diǎn),p'為去噪后的點(diǎn),n為法矢的方向,α為雙邊濾波因子,且


下面對(duì)式(1)進(jìn)行改進(jìn).首先,計(jì)算柵格的點(diǎn)云的平均歐氏距離和某點(diǎn)云k鄰域內(nèi)平均歐氏距離,其中M 為柵格中點(diǎn)云個(gè)數(shù).設(shè)定閾值T0,當(dāng)T>T0時(shí)認(rèn)為該點(diǎn)是特征點(diǎn)云,否則為非特征點(diǎn)云.當(dāng)T>T0時(shí),計(jì)算雙邊濾波因子α僅采用k鄰域范圍內(nèi)的點(diǎn)云;當(dāng)T<T0時(shí)則采用整個(gè)柵格內(nèi)的點(diǎn)云.針對(duì)特征點(diǎn)云和非特征點(diǎn)云,采用不同范圍的點(diǎn)云計(jì)算雙邊濾波因子.利用基于特征選擇的雙邊濾波方法進(jìn)行點(diǎn)云去噪時(shí),由于考慮到點(diǎn)鄰域的特征,可以防止出現(xiàn)雙邊濾波不能兼顧?quán)徲螯c(diǎn)特征而產(chǎn)生的過度光順現(xiàn)象.
點(diǎn)云去噪流程如圖1所示.
對(duì)一盒子的三維激光點(diǎn)云數(shù)據(jù)進(jìn)行去噪處理,原始數(shù)據(jù)如圖2(a)所示.在盒子邊緣存在著第3類噪聲,利用本文算法進(jìn)行處理,結(jié)果見圖2(b).由圖可見,盒子邊緣處的噪聲已經(jīng)去除,特征也得到保持.對(duì)手持三維激光掃描儀獲得工業(yè)構(gòu)件激光點(diǎn)云數(shù)據(jù)進(jìn)行平滑去噪,三維掃描儀的分辨率為0.4 mm ×0.5 mm ×0.4 mm,獲得約15 ×105個(gè)點(diǎn)的高密度點(diǎn)云數(shù)據(jù).圖3(a)為含有第2類噪聲(右上角圓圈所示)與第3類噪聲(箭頭所示)的工業(yè)構(gòu)件三維激光點(diǎn)云圖.利用本文算法將第2,3類噪聲點(diǎn)去除后的結(jié)果見圖3(b).由圖可知,利用本文算法可以實(shí)現(xiàn)點(diǎn)云第2,3類噪聲點(diǎn)的去除,同時(shí)很好了保持了構(gòu)件的特征.

圖1 點(diǎn)云去噪算法流程圖

圖2 含噪聲盒子點(diǎn)云數(shù)據(jù)

圖3 有噪聲點(diǎn)的工業(yè)構(gòu)件點(diǎn)云圖
本文提出了一種基于特征選擇的雙邊濾波去噪算法.該算法主要針對(duì)第3類噪聲點(diǎn),通過鄰域點(diǎn)判斷該點(diǎn)屬于特征點(diǎn)還是非特征點(diǎn),采用不同范圍的點(diǎn)云計(jì)算特征點(diǎn)和非特征點(diǎn)的雙邊濾波因子,再進(jìn)行雙邊濾波去噪,完成第3類噪聲的去除.利用該算法進(jìn)行點(diǎn)云去噪,可以防止出現(xiàn)因雙邊濾波不能兼顧?quán)徲螯c(diǎn)特征而產(chǎn)生的過度光順現(xiàn)象.實(shí)驗(yàn)結(jié)果表明,利用該算法去除噪聲的同時(shí)有效地保持了被掃描物體的特征.
[1]趙燦,董剛,程俊廷.利用噪聲特點(diǎn)與曲面擬合的點(diǎn)云去噪及光順?biāo)惴ㄑ芯浚跩].現(xiàn)代制造工程,2008(6):90-93.
Zhao Can,Dong Gang,Cheng Junting.Research on denoising and smoothing of points cloud based on features of noise and surface fitting[J].Modern Manufacturing Engineering,2008(6):90-93.(in Chinese)
[2]張麗艷,周儒榮,蔡煒斌.海量測(cè)量數(shù)據(jù)簡(jiǎn)化技術(shù)研究[J].計(jì)算機(jī)輔助設(shè)計(jì)與圖形學(xué)學(xué)報(bào),2001,13(11):1019-1023.
Zhang Liyan,Zhou Rurong,Cai Weibin.Research on cloud data simplification[J].Journal of Computer Aided Design and Graphics,2001,13(11):1019-1023.(in Chinese)
[3]Lange C,Polthier K.Anisotropic smoothing of point sets[J].Geometric Modelling and Differential Geometry,2005,22(7):680-692.
[4]Sun X,Rosin L,Martin R,et al.Fast and effective feature-preserving mesh denoising[J].IEEE Transactions on Visualization and Computer Graphics,2007,13(5):925-938.
[5]賀美芳,周來水,神會(huì)存.散亂點(diǎn)云數(shù)據(jù)的曲率估算及應(yīng)用[J].南京航空航天大學(xué)學(xué)報(bào),2005,37(4):515-519.
He Meifang,Zhou Laishui,Shen Huicun.Curvature estimation of scattered-point cloud data and its application[J].Journal of Nanjing University of Aeronautics &Astronautics,2005,37(4):515-519.(in Chinese)
[6]Fleishman S,Drori I,Cohen-Or D.Bilateral mesh denoising[J].ACM Transactions on Graphics,2003,22(3):950-953.
[7]Jones T R,Durand F,Desbrun M.Non-iterative featurepreserving mesh smoothing[J].ACM Transactions on Graphics,2003,22(3):943-949.
[8]Piegl L A,Tiller W.Algorithm for finding all k-nearest neighbors[J].Computer-Aided Design,2002,34(2):167-172.
[9]聶建輝,胡英,馬孜.散亂點(diǎn)云離群點(diǎn)的分類識(shí)別算法[J].計(jì)算機(jī)輔助設(shè)計(jì)與圖形學(xué)學(xué)報(bào),2011,23(9):1526-1532.
Nie Jianhui,Hu Ying,Ma Zi.Outlier detection of scattered point cloud by classification[J].Journal of Computer-Aided Design & Computer Graphics,2011,23(9):1526-1532.(in Chinese)
[10]Xiao Chunxia,Li Hui,Miao Yongwei.A non-local signal processing approach for filtering point set surface[J].Journal of Software,2006,22(12):110-119.
Bilateral filtering denoise algorithm for point cloud based on feature selection
Cao Shuang1,2,3Yue Jianping1Ma Wen1,2
(1School of Earth Sciences and Engineering,Hohai University,Nanjing 210098,China)
(2School of Remote Sensing,Nanjing University of Information Science and Technology,Nanjing 210044,China)
(3Jiangxi Province Key Laboratory for Digital Land,F(xiàn)uzhou 344000,China)
Abstract:In order to remove the noise mixed with the real points and retain characteristics,the noise points are divided into three categories,among which the ones mixed with the real points are called as the third category noise points.By using the improved bilateral filtering algorithm,this kind of points can be removed.First,the points are judged to be feature points or non-feature points according to adjacent points.Then,the bilateral filtering factors of the feature points and non-feature points are calculated according to the point cloud in different scale.Finally,bilateral filtering denoise for point cloud based on feature selection is realized.This algorithm is used to remove the noise in the point cloud data of a box and an industrial component obtained by a handheld three-dimensional laser scanner.The results show that this algorithm can effectively remove noise and reserve the characteristics of scanned objects.It can also prevent the excessive smoothing phenomenon caused by the reason that bilateral filtering does not take the characteristics of adjacent points into account.
Key words:point cloud denoise;bilateral filtering;feature selection;curvature
中圖分類號(hào):P208
A
1001-0505(2013)S2-0351-04
doi:10.3969/j.issn.1001 -0505.2013.S2.029
收稿日期:2013-08-20.
曹爽(1977—),女,博士生,講師;岳建平(聯(lián)系人),男,博士,教授,博士生導(dǎo)師,jpyue@163.com.
基金項(xiàng)目:江西省數(shù)字國(guó)土重點(diǎn)實(shí)驗(yàn)室開放基金資助項(xiàng)目(DLLJ201315).
引文格式:曹爽,岳建平,馬文.基于特征選擇的雙邊濾波點(diǎn)云去噪算法[J].東南大學(xué)學(xué)報(bào):自然科學(xué)版,2013,43(S2):351-354.[doi:10.3969/j.issn.1001 -0505.2013.S2.029]