唐瑞尹,范乃德,史 濤,王長偉
(華北理工大學電氣工程學院,河北 唐山 063210)
近年來,隨著計算機技術(shù)、機器視覺以及3D打印技術(shù)的發(fā)展,在進行物體三維重建時經(jīng)常要用到激光掃描這種非接觸式的測量方式。該方法使用起來比較簡單方便,避免了直接接觸物體,不受物體形狀的限制,有效降低了測量過程中因物體接觸而帶來的隨機誤差,提高了測量精確度。另外,采用線結(jié)構(gòu)光掃描的方式使得測量的速度更快、效率更高[1]。
但是,在利用掃描數(shù)據(jù)進行曲面重構(gòu)時,由于諸多原因,比如說激光散斑,測量裝置的震動,環(huán)境干擾以及掃描裝置本身的缺陷等,在數(shù)據(jù)的獲取過程中不可避免的會混入不合理噪聲點,這樣會導致重構(gòu)的曲面不光滑。所以說需要對掃描得到的數(shù)據(jù)進行去噪處理。國內(nèi)外的許多學者都對由隨機誤差而產(chǎn)生的噪聲點進行了研究,因此對噪聲點的處理可以采用很多不同的方法。
人機交互的方法是逆向工程中比較簡單的點云數(shù)據(jù)去噪方法,它的工作原理是簡單的通過圖形顯示來識別較為明顯的噪聲點,然后在點云數(shù)據(jù)中將這些噪聲點去除[2]。在面對大數(shù)據(jù)量時,顯而易見這種方法具有很大局限性,是不適合這種情況的。掃描后點云數(shù)據(jù)的排列方式直接影響著去噪所需采用的方法。常見的點云數(shù)據(jù)排列方式為行乘列,通常叫做陣列數(shù)據(jù)。通過線結(jié)構(gòu)光掃描得到的點云數(shù)據(jù),數(shù)據(jù)點通常在同一層的截面線上,可以分為無組織數(shù)據(jù),部分散亂數(shù)據(jù)和完全散亂數(shù)據(jù)這三類[3]。對于前兩種數(shù)據(jù)噪聲點一般采用平滑濾波的方法對掃描線逐條進行去噪處理,但是這種方法并不適用于完全散亂數(shù)據(jù)的噪聲點處理,因為該數(shù)據(jù)并沒有點與點之間的拓撲關(guān)系。目前并沒有哪種合適方法來用于對完全散亂數(shù)據(jù)的去噪處理[4]。這里采用了似然估計函數(shù)和隨機濾波結(jié)合的方法對掃描數(shù)據(jù)進行了有效的去噪處理。
本研究是基于win7平臺利用HALCON軟件開發(fā)的,選用德國映美精生產(chǎn)的型號為DFK23G274的GIGE接口CCD相機,像素分辨率為1600×1200,鏡頭型號為computar的m1614-mp2。激光器采用型號為sK53-515瀚光的紅光線結(jié)構(gòu)光激光器,波長為650nm輸出功率為30mW。平面靶標是打印的7×7的圓點形標靶模型,規(guī)格為(100×100)mm。實驗平臺,如圖1所示。
圖1 實驗平臺Fig.1 Experimental Platform
在應用算法進行分析時,首先要得到物體的三維點云數(shù)據(jù),三維點云數(shù)據(jù)的獲取是通過線結(jié)構(gòu)光三維掃描技術(shù)來實現(xiàn)的[5]。在線結(jié)構(gòu)光的測量中,激光器發(fā)出的激光投射在被測物體的表面上,由相機獲取打在物體表面的光條圖像,當被測物體在光平面下移動時,物體上的光條會隨著物體的移動而發(fā)生相應的形變,在相機上所成的像也會發(fā)生相應的變化。通過解調(diào)光條的形變,提取光條中心并計算相應的解析幾何關(guān)系,最后得到被測物體的三維點云數(shù)據(jù)[6]。
線結(jié)構(gòu)光采用非接觸式視覺檢測的方式,具有精度高、測量簡單等優(yōu)點,通過對物體上光條的測量來替代傳統(tǒng)的直接測量方式。運用此方法需要對系統(tǒng)做精確標定和精確的光條中心提取,系統(tǒng)標定包括攝像機位姿的標定,光平面位姿的確定和移動位姿的標定;光條中心提取采用傳統(tǒng)的灰度重心法,提取的精度能達到亞像素級別[7]。這主要是為了確保被測物體的實際坐標對應于計算機的像素坐標,隨后對圖像進行信息的采集,把提取的光條中心坐標當作是物體實際坐標,最后獲得被測物體的三維點云數(shù)據(jù)。
本研究系統(tǒng)標定采用張正友三步標定法使得物體的實際坐標與計算機像素坐標逐一對應。三步標定法即攝像機位姿標定,光平面位姿標定和移動位姿的標定。其中攝像機位姿參數(shù)如表1所示,光平面位姿,如表2所示。運動位姿,如表3所示。
表1 s攝像機位姿參數(shù)Tab.1 Camera Pose Parameters
表2 光平面位姿參數(shù)Tab.2 Optical Plane Pose Parameters
表3 運動位姿參數(shù)Tab.3 Sports Pose Parameters
采用灰度重心法的方式對激光條中心進行提取。在獲得圖像時,把激光條整體的近似方向當作坐標軸ov方向。根據(jù)ov的方向來獲得以單像素為單位的ou方向上激光條的灰度重心點,利用式(1),可以得到每一行像素的激光條中心點坐標[8]。
式中:u,vi—光條在第i行灰度值;uic,vic—第i行的光條中心坐標。
經(jīng)歷過I里面的所有像素點,就可以得到全部光條的中心點坐標。提取的光條中心,如圖2所示。從而得到所需的三維點云數(shù)據(jù)。
圖2 光條中心圖像Fig.2 Central Image of the Light Ba
在對點云數(shù)據(jù)進行去噪處理時,可以先采用似然估計函數(shù)的方法,定義一個光順似然函數(shù)L,該函數(shù)代表了點云數(shù)據(jù)中任意一點X∈R3在采樣表面的概率。在處理過程中把散亂點云數(shù)據(jù)中的每一個采樣點沿著似然函數(shù)L的梯度方向移動到局部最大似然值點。為每一個采樣點定義一個局部似然函數(shù)L1,L2,該函數(shù)由點P所在的鄰域{Pi}中任意點X到該鄰域的最小二乘擬合平面距離的平方所確定。根據(jù)點X到最小二乘擬合平面距離的平方確定局部似然估計函數(shù)L1(x)如下:
根據(jù)不同的點到最小二乘平面的距離有所不同,可以知道距離平面越近似然性越高。為了降低每一個L1的影響,這里使用單調(diào)遞減的加權(quán)函數(shù)φi,因為任何一個點Pi在相應位置X的似然值會隨著距離的加大而減小[9]。在確定了似然函數(shù)后,需要把得到的采樣點向似然值的最大處平移,平移過后的落點很大程度上接近了物體表面的真實位置。
隨機濾波發(fā)法的原理是:假設測量的所有點云數(shù)據(jù)構(gòu)成了掃描物體的表面,對表面進行分割使其變成一條條線,j表示結(jié)構(gòu)光掃描線數(shù),i表示掃描線上的點;設任何一條掃描線上第i個點與第(i+1)個點的距離為d1,第(i+1)個點與第(i+2)個點的距離為d2,第i個點與第(i+3)個點的距離為d3。因此:
假設x=d3-d1,H=|d2-d1|,給定閾值X,P(i+1,j)和P(i+2,j)與P(i,j)連線的夾角為θ1,P(i+3,j)和P(i+2,j)與P(i,j)連線的夾角為θ2,P(i+3,j)和P(i+4,j)與P(i,j)連線的夾角為θ3。這三個夾角具有方向,規(guī)定順時針為反方向,逆時針為正方向。
如果x<0,或0<x≤X1,分別計算θ1、θ2,如果θ2與θ1的旋轉(zhuǎn)方向相反,則P(i+1,j)這個點為噪聲點,在點云數(shù)據(jù)中把該點去除;如果θ2與θ1的旋轉(zhuǎn)方向相同,再計算θ3,如果θ3與θ1的旋轉(zhuǎn)方向相反,則P(i+1,j)這個點為噪聲點,在點云數(shù)據(jù)中把該點去除;如果θ3與θ1的旋轉(zhuǎn)方向相同,但0≤H≤X2,則認為P(i+1,j)點是噪聲點,在點云數(shù)據(jù)中把該點去除;否則要把P(i+1,j)這個點予以保留,并且這時可初步判定P(i+1,j)這個點為區(qū)域分割特征點。這種方法主要應用于由強干擾信號產(chǎn)生的隨機誤差的處理,可以去掉點云數(shù)據(jù)中比較明顯的噪聲點。
如果X1<△,但0≤H≤X2,分別計算θ1、θ2,如果θ2與θ1的旋轉(zhuǎn)方向相反,則P(i+1,j)這個點為噪聲點,在點云數(shù)據(jù)中把該點去除。如果θ2與θ1的旋轉(zhuǎn)方向相同,再計算θ3,如果θ3與θ1的旋轉(zhuǎn)方向相反,則P(i+1,j)這個點為噪聲點,在點云數(shù)據(jù)中把該點去除;如果θ3與θ1的旋轉(zhuǎn)方向相同,則P(i+1,j)點予以保留[10]。
(1)根據(jù)似然估計函數(shù)L1(x),平移采樣點使其接近物體表面的真實位置。
(2)對任意一條掃描線上的數(shù)據(jù)點,計算d1、d2、d3;給定閾值X1、X2。經(jīng)實驗X1=1*10-5,X2=1*10-5。
(3)根據(jù)隨機濾波法判斷準則進行判斷。
(4)重復步驟(2)和步驟(3),直到一條掃描線上的點處理完畢。
(5)按上述步驟處理所有的掃描線。
這里以一個普通的硬盤殼來進行實驗,根據(jù)前面的步驟得到硬盤的三維點云圖,如圖3所示??梢钥吹?jīng)]有經(jīng)過處理的點云圖具有很多的噪聲點。為了方便觀察去噪?yún)^(qū)別,利用似然函數(shù)法進行去噪處理得到點云圖,如圖4所示。利用隨機濾波法進行去噪處理得到點云圖,如圖5所示。然后利用這里提出的兩種方法結(jié)合的方式進行去噪處理得到點云圖,如圖6所示。通過對比可以看到經(jīng)過兩種方法結(jié)合處理過后,點云圖的噪聲點去除了絕大部分。
圖3 原始點云圖Fig.3 Original Point Cloud Map
圖4 似然函數(shù)去噪圖Fig.4 Likelihood Function De-Noise Figure
圖5 隨機濾波去噪圖Fig.5 Random Filter De-Noise Figure
圖6 這里方法去噪圖Fig.6 Method Denoising Graph in this Pape
為了更加方便地檢驗這里方法的有效性,在進行去噪處理時記錄了似然估計函數(shù)、隨機濾波法以及這里方法分別對噪聲點的去除情況,如表4所示。這樣可以清楚地看到采用不同方法進行去噪處理的差異性。通過上面的點云圖以及去噪結(jié)果對比可以清晰地看到這里方法的優(yōu)越性,利用文中提到的方法可以有效地去除點云數(shù)據(jù)中的噪聲點,不僅使點云數(shù)據(jù)得到了簡化,同時提高了曲面重構(gòu)的準確性,使得曲面重構(gòu)有了更高的精度。
表4 三種方法點云去噪結(jié)果對比Tab.4 Comparison of Three Methods of Point Cloud Denoising
通過線結(jié)構(gòu)光掃描得到的點云數(shù)據(jù)不可避免的含有噪聲點,因此對點云數(shù)據(jù)的去噪處理是十分重要的,因為點云數(shù)據(jù)的精確度直接影響了曲面重構(gòu)的準確性,這里提出的方法可以有效的去除點云數(shù)據(jù)中的噪聲點,通過實驗可以清晰地看到去噪效果明顯,且計算簡單,速度快。大大的提高了曲面重構(gòu)的準確性,為曲面重構(gòu)帶來了便利。但是對于點云去噪的處理仍存在一些問題需要進一步的改進。比如說在完成去噪后,數(shù)據(jù)能達到什么樣的準度,這是一個難點,也是下一步需要研究的工作。