劉舜+++柳新強(qiáng)
摘 要:在獲取物體表面數(shù)據(jù)過(guò)程中,由于物體過(guò)大或者單幅不能實(shí)現(xiàn)完全測(cè)量時(shí),需要對(duì)測(cè)量點(diǎn)云進(jìn)行拼接處理。文章通過(guò)簡(jiǎn)化的ICP算法(Iterative Closet Point Algorithm)實(shí)現(xiàn)多幅掃描點(diǎn)云的快速拼接,該方法不僅能夠解決復(fù)雜的拼接問(wèn)題,而且提高了運(yùn)算速度,達(dá)到實(shí)際應(yīng)用的要求。
關(guān)鍵詞:逆向工程;光學(xué)測(cè)量;三維拼接
引言
三維光學(xué)測(cè)量技術(shù)[1]是一種通過(guò)光學(xué)手段獲取物體三維空間信息(主要是物體表面三維形狀信息)的方法和技術(shù)。隨著生產(chǎn)水平的提高,制造出的產(chǎn)品零件大多采用復(fù)雜不規(guī)則的曲面,在其生產(chǎn)的各個(gè)環(huán)節(jié)中都需要三維測(cè)量和數(shù)字化,因此三維測(cè)量技術(shù)和反求逆向設(shè)計(jì)技術(shù)就顯得尤為重要。XJTUOM型三維光學(xué)點(diǎn)云測(cè)量系統(tǒng)能夠?qū)崿F(xiàn)不規(guī)則復(fù)雜曲面產(chǎn)品零件的移動(dòng)便攜式三維測(cè)量和逆向設(shè)計(jì),它是利用三維掃描儀采用非接觸式測(cè)量方法進(jìn)行掃描,從而獲得被掃描對(duì)象表面的三維位置數(shù)據(jù),然后采用一定的處理方法得到對(duì)象的模型,優(yōu)點(diǎn)是速度快,而且精度高。
用于建模的數(shù)據(jù)質(zhì)量的好壞很大程度上是取決于點(diǎn)云數(shù)據(jù)的精度以及是否能夠完整。如果要獲得完整的數(shù)據(jù)模型,那么就需要多幅的點(diǎn)云進(jìn)行拼接以及處理,最終得到的模型精度主要是和點(diǎn)云拼接的處理有關(guān)。三維點(diǎn)云拼接和處理既是承上啟下的作用,又是模型構(gòu)建成功的決定性因素,因此,在逆向工程里,點(diǎn)云的拼接和處理就是非常關(guān)鍵的一部分。
1 數(shù)據(jù)采集
對(duì)于面掃描工程研究,首要工作是將所研究對(duì)象的表面三維坐標(biāo)提取出來(lái),獲取其幾何特征信息。這種獲取幾何信息的方式稱之為數(shù)據(jù)點(diǎn)云的采集,即利用一定的設(shè)備和方法測(cè)出研究對(duì)象其表明上若干特征點(diǎn)的三維坐標(biāo)[2]。
1.1 標(biāo)定掃描儀
為了能夠準(zhǔn)確獲得掃描點(diǎn)的三維坐標(biāo),需要對(duì)掃描儀進(jìn)行標(biāo)定,即采用標(biāo)定裝置,根據(jù)一定的算法得出掃描頭的內(nèi)外部結(jié)構(gòu)參數(shù)。當(dāng)掃描頭重新安裝,或者任意一個(gè)攝像頭鏡頭調(diào)整后均需要重新標(biāo)定儀器。標(biāo)定完成后,計(jì)算機(jī)在數(shù)秒內(nèi)會(huì)在屏幕上顯示出標(biāo)定極差,極差越小,表示標(biāo)定結(jié)果越準(zhǔn)確,如果標(biāo)定結(jié)果太大,系統(tǒng)會(huì)提示標(biāo)定失敗,即偏差較大,必須重新進(jìn)行標(biāo)定。
1.2 布設(shè)拼接點(diǎn)
人體模型作為不規(guī)則的幾何體,它非常復(fù)雜,研究起來(lái)比較困難,由于掃描儀的掃描范圍有限,如果不進(jìn)行重復(fù)掃描,就很難獲取準(zhǔn)確、完整的信息?;诖吮緦?shí)驗(yàn)從多個(gè)角度進(jìn)行掃描,從而提取完整的人體模型信息。為了保證數(shù)據(jù)的精度定位和實(shí)現(xiàn)良好的拼接效果,采用在掃描物體表面布設(shè)非編碼點(diǎn)。對(duì)于布設(shè)的標(biāo)志點(diǎn),在掃描時(shí),要求能夠很好地對(duì)掃描儀實(shí)現(xiàn)反射,從而使掃描儀更準(zhǔn)確的識(shí)別標(biāo)志點(diǎn),獲取其三維坐標(biāo)。
參考點(diǎn)的布設(shè)應(yīng)遵循以下原則:
(1)為保證模型的拼合,在進(jìn)行測(cè)量時(shí),相鄰的兩次之間應(yīng)不少于三個(gè)參考點(diǎn)重合。
(2)參考點(diǎn)位置選取時(shí)應(yīng)保證位于相鄰區(qū)域邊界上。
(3)參考點(diǎn)的位置避免處于同一條直線上。
(4)參考點(diǎn)的分布盡量避免成規(guī)則點(diǎn)陣,而且點(diǎn)與點(diǎn)之間的距離不能相同。
(5)高低要有層次。
1.3 主要測(cè)量設(shè)備
本文實(shí)驗(yàn)采用的是XJTUOM型三維光學(xué)密集點(diǎn)云測(cè)量系統(tǒng),測(cè)量時(shí)采用非接觸式方法獲取人體模特的表面點(diǎn)位的空間位置。
XJTUOM-II的基本原理是:測(cè)量時(shí)光柵投影裝置投影多幅多頻光柵到待測(cè)物體上,成一定夾角的兩個(gè)攝像頭同步采得相應(yīng)圖象,然后對(duì)圖象進(jìn)行解碼和相位計(jì)算,并利用立體匹配技術(shù)、三角形測(cè)量原理,解算出兩個(gè)攝像機(jī)公共視區(qū)內(nèi)像素點(diǎn)的三維坐標(biāo)。
XJTUOM-II便攜性好,在現(xiàn)場(chǎng)根據(jù)工作位置要求可以任意搬動(dòng),而且儀器的角度可根據(jù)實(shí)際情況做任意調(diào)整,從而實(shí)現(xiàn)了全方位的測(cè)量。與傳統(tǒng)的三坐標(biāo)測(cè)量?jī)x和激光三維掃描儀相比具有速度快、精度高、易操作、可移動(dòng)等特點(diǎn),并且XJTUOM-II輸出點(diǎn)云文件,可用Surfacer、Geomagic等專業(yè)點(diǎn)云處理軟件進(jìn)行進(jìn)一步處理。
2 粗差剔除
在實(shí)際測(cè)量時(shí),無(wú)論是接觸式還是非接觸式的測(cè)量,由于振動(dòng)、溫度變化和被測(cè)物體表面粗糙度等原因,都不可避免地在真實(shí)數(shù)據(jù)點(diǎn)中混入不合理的噪聲點(diǎn)(毛刺或偏離點(diǎn)),產(chǎn)生這些粗差的原因很多,但一般都是由于不可抗拒的隨機(jī)原因產(chǎn)生的。粗差剔除,是指對(duì)測(cè)量過(guò)程中由于系統(tǒng)設(shè)備或測(cè)量外部環(huán)境等因素造成的噪聲點(diǎn)進(jìn)行識(shí)別及消除其對(duì)測(cè)量成果數(shù)據(jù)質(zhì)量的影響。
2.1 粗差分類
按照粗差產(chǎn)生的原因劃分,可分為兩類:
(1)非參考噪聲點(diǎn):物體表面、模型架及周圍物體上存在圓形或近似圓形圖案且符合參考點(diǎn)的構(gòu)圖條件的白色斑跡、小孔等,就可能在圖像檢測(cè)中產(chǎn)生這類參考點(diǎn)粗差,由于參考點(diǎn)是自動(dòng)編號(hào)的,這類粗差的存在,對(duì)后續(xù)的非編碼點(diǎn)匹配,有很大的影響。
(2)同一參考噪聲點(diǎn):這類粗差點(diǎn)產(chǎn)生于模型表面粘貼的參考點(diǎn)處,從XJTUDP系統(tǒng)測(cè)量原理可知,參考點(diǎn)的三維坐標(biāo)是拍攝的多幅圖像上同一參考點(diǎn)基于交會(huì)原理優(yōu)化解算出來(lái)的,當(dāng)一個(gè)參考點(diǎn)在多幅圖像上都被識(shí)別,在其重投影過(guò)程中如果誤差較大,同一個(gè)參考點(diǎn)處就會(huì)重復(fù)出現(xiàn)兩個(gè)或兩個(gè)以上的參考點(diǎn),而且這些點(diǎn)間的距離不會(huì)超過(guò)設(shè)計(jì)的參考點(diǎn)的半徑,在XJTUDP系統(tǒng)軟件的三維點(diǎn)云區(qū),使用肉眼根本就無(wú)法看見(jiàn)。同樣,這類粗差的存在,對(duì)后續(xù)的參考點(diǎn)匹配存在很大的影響。
另外,XJTUOM系統(tǒng)在對(duì)人體模型進(jìn)行面掃描過(guò)程中,由于測(cè)量環(huán)境的限制,除了得到所需要的模型本身的點(diǎn)云數(shù)據(jù)外,還不可避免會(huì)掃描到模型架及其周圍物體,這些數(shù)據(jù)是無(wú)用的數(shù)據(jù)信息,為了提高數(shù)據(jù)質(zhì)量、便于數(shù)據(jù)存儲(chǔ)管理和點(diǎn)云數(shù)據(jù)建模等后續(xù)處理,應(yīng)該把這類無(wú)用數(shù)據(jù)剔除。
2.2 粗差剔除
(1)非參考噪聲點(diǎn):從本次實(shí)驗(yàn)的目的和布點(diǎn)原則可知,這類粗差根據(jù)出現(xiàn)在模型的范圍不同可分成兩類:人體模型外和模型表面上的參考點(diǎn)。在該實(shí)驗(yàn)中,參考點(diǎn)布設(shè)在模型表面,組成觀測(cè)線,用來(lái)測(cè)量模型變形關(guān)鍵部分的三維坐標(biāo)。參考點(diǎn)的布設(shè)有一定的規(guī)律,而且模型表面經(jīng)過(guò)處理,模型表面的這類噪聲點(diǎn)很少,模型外的這類噪聲點(diǎn)因?yàn)椴辉谀P蜕虾芎脜^(qū)別剔除,因此,這類噪聲點(diǎn)可以手動(dòng)剔除。
(2)同一參考噪聲點(diǎn):從這類粗差點(diǎn)產(chǎn)生的原因可知,同一個(gè)參考點(diǎn)處重復(fù)出現(xiàn)兩個(gè)或兩個(gè)以上的非編碼噪聲點(diǎn)的點(diǎn)間距離不會(huì)超過(guò)設(shè)計(jì)的參考點(diǎn)的半徑,而且在系統(tǒng)軟件的三維點(diǎn)云區(qū),肉眼根本就無(wú)法看見(jiàn),這類粗差點(diǎn)就采用中值濾波剔除,其基本原理是用判斷點(diǎn)的一個(gè)鄰域中各點(diǎn)值的中值來(lái)代替這個(gè)判斷點(diǎn),中值濾波容易去除孤立噪聲點(diǎn)。也就是說(shuō),預(yù)設(shè)參考點(diǎn)的直徑為閥值,判斷一個(gè)參考點(diǎn)與其周圍一定范圍內(nèi)的參考點(diǎn)間的距離,如果點(diǎn)間距離小于閥值,就取這幾個(gè)點(diǎn)的坐標(biāo)平均值來(lái)代替這個(gè)參考點(diǎn)的位置。
3 數(shù)據(jù)拼接
3.1 拼接算法研究現(xiàn)狀[3-6]
通過(guò)多角度采集的點(diǎn)云數(shù)據(jù),直接通過(guò)點(diǎn)集配準(zhǔn)的方法進(jìn)行拼接,其方法是在待測(cè)物體相對(duì)平坦的表面以及標(biāo)定平板上貼一些大小合適的測(cè)量專用參考標(biāo)志點(diǎn),然后根據(jù)每個(gè)測(cè)量位置至少可以看見(jiàn)三個(gè)及以上不共線的參考標(biāo)志點(diǎn)為原則進(jìn)行數(shù)據(jù)采集,獲取的多個(gè)視圖可以通過(guò)這些重疊位置區(qū)域的公共點(diǎn)進(jìn)行拼接計(jì)算坐標(biāo)轉(zhuǎn)換定位。目前很多方法是采用三點(diǎn)定位組合變換。ICP方法可以多次迭代求取,進(jìn)一步滿足精度的坐標(biāo)轉(zhuǎn)換。傳統(tǒng)的ICP算法[7]是首先對(duì)對(duì)象點(diǎn)集中的每一個(gè)點(diǎn)在參考點(diǎn)集中找到一個(gè)與之距離最近的點(diǎn),建立點(diǎn)對(duì)點(diǎn)的映射關(guān)系,然后通過(guò)最小二乘計(jì)算最優(yōu)坐標(biāo)變換。實(shí)際應(yīng)用中,在缺乏明確對(duì)應(yīng)關(guān)系的情況下尋找點(diǎn)集每個(gè)點(diǎn)對(duì)點(diǎn)的映射關(guān)系比較困難,計(jì)算速度也慢,不能真正解決實(shí)際應(yīng)用問(wèn)題。
3.2 簡(jiǎn)化的ICP拼接算法
本文從實(shí)際應(yīng)用的角度出發(fā),參考ICP算法思想并對(duì)其進(jìn)行簡(jiǎn)化。通過(guò)將特征點(diǎn)集定為三個(gè)或者三個(gè)以上的參考標(biāo)志點(diǎn)的集合,建立參考標(biāo)志點(diǎn)集匹配的最小二乘目標(biāo)函數(shù)求解,這樣可以提高運(yùn)算的速度,以達(dá)到實(shí)際應(yīng)用的要求。
通過(guò)在待測(cè)物體表面布設(shè)參考點(diǎn),其中參考點(diǎn)應(yīng)選擇精度較高的標(biāo)志較為明顯的圓點(diǎn),一般為黑底白色,那么標(biāo)定的特征點(diǎn)群就可以選取這些參考點(diǎn),然后導(dǎo)入測(cè)得的數(shù)據(jù),根據(jù)各個(gè)小部分的不同坐標(biāo)系的點(diǎn)云集拼接按照對(duì)應(yīng)的特征點(diǎn)群拼接轉(zhuǎn)換成目標(biāo)整體點(diǎn)云。多視特征點(diǎn)拼接方法預(yù)先標(biāo)出區(qū)域中特征定位點(diǎn),可以有效控制整個(gè)重構(gòu)點(diǎn)云的拓?fù)浣Y(jié)構(gòu),并能及時(shí)調(diào)整的拼接結(jié)果。
模型上布設(shè)的圓形參考點(diǎn)掃描后會(huì)以橢圓形狀融入測(cè)量數(shù)據(jù)中,首先針對(duì)每幅點(diǎn)云中3個(gè)非編碼點(diǎn)點(diǎn)云進(jìn)行擬合橢圓,獲取3個(gè)非編碼點(diǎn)橢圓圓心坐標(biāo);再將相鄰角度下掃描得到的點(diǎn)云,獲取其三個(gè)對(duì)應(yīng)的非編碼點(diǎn)擬合橢圓中心點(diǎn)坐標(biāo),經(jīng)過(guò)坐標(biāo)轉(zhuǎn)換,將點(diǎn)位進(jìn)行拼接,得到較為完整的點(diǎn)云數(shù)據(jù)。
標(biāo)志點(diǎn)的邊緣數(shù)學(xué)模型為橢圓方程。
(1)直接求解x0、y0的橢圓中心點(diǎn)坐標(biāo)
設(shè)橢圓的一般方程為:
直接應(yīng)用上述方程對(duì)得到的標(biāo)志點(diǎn)的邊界離散點(diǎn)求取點(diǎn)心
其均方差和為
上式中依次對(duì)B,C,D,E,F(xiàn)求偏導(dǎo),并令每個(gè)式子為零,可以得到一個(gè)包含5個(gè)方程和5個(gè)未知數(shù)的方程組:
因?yàn)閽呙钑r(shí),其在z軸為垂直于掃描方向,其標(biāo)志點(diǎn)表面經(jīng)過(guò)掃描后,其數(shù)值變化較小,故通過(guò)求解z值得平均值來(lái)確定其數(shù)值。
通過(guò)上述方法,依次對(duì)獲得的三對(duì)標(biāo)志點(diǎn)的邊緣點(diǎn)依次作相應(yīng)的操作,故可以依次獲得相應(yīng)的標(biāo)志點(diǎn)的中心點(diǎn)的坐標(biāo)值x,y,z。對(duì)標(biāo)志點(diǎn)的中心點(diǎn)進(jìn)行數(shù)據(jù)存儲(chǔ),獲得的三對(duì)進(jìn)行拼接的三個(gè)點(diǎn)的坐標(biāo),為后續(xù)處理準(zhǔn)備。
不過(guò)鑒于點(diǎn)云較多且挨在一起,很容易引起混亂,拼接擬合前需注意標(biāo)記清楚擬合的順序,根據(jù)掃描的順序來(lái)拼接。選取參考點(diǎn)進(jìn)行拼接時(shí)應(yīng)盡量選取掃描數(shù)據(jù)較好的參考點(diǎn)進(jìn)行拼接,可以舍棄效果不佳的參考點(diǎn)。
(2)七參數(shù)法進(jìn)行坐標(biāo)轉(zhuǎn)換
七參數(shù)法進(jìn)行坐標(biāo)轉(zhuǎn)換能獲得較高精度的轉(zhuǎn)換結(jié)果,實(shí)際應(yīng)用中可將不顯著的參數(shù)舍去。求解這七個(gè)轉(zhuǎn)換參數(shù)時(shí)是通過(guò)在若干公共點(diǎn)上進(jìn)行聯(lián)測(cè)得到的。聯(lián)測(cè)后就可以求得公共點(diǎn)在這兩個(gè)不同坐標(biāo)系中的坐標(biāo)值,進(jìn)而依據(jù)前述公式將七個(gè)轉(zhuǎn)換參數(shù)求解出來(lái)。而在本次掃描中,標(biāo)志點(diǎn)的中心點(diǎn)為其公共點(diǎn),通過(guò)其進(jìn)行相應(yīng)計(jì)算。
七參數(shù)公式的一般形式:
X2=X0+(1+m)X1+£zY1-£YZ1
Y2=Y0+(1+m)Y1+£zX1-£YZ1
Z2=Z0+(1+m)Z1+£zX1-£YY1
通過(guò)上述公式求解3個(gè)旋轉(zhuǎn)參數(shù)、3個(gè)平移參數(shù)、1個(gè)尺度變化參數(shù)共7個(gè)參數(shù),來(lái)進(jìn)行坐標(biāo)轉(zhuǎn)換,獲得需要轉(zhuǎn)換點(diǎn)的轉(zhuǎn)換后點(diǎn)云的坐標(biāo)。
3.3 拼接結(jié)果顯示
采用上述方法實(shí)現(xiàn)快速拼接后,拼接結(jié)果如圖5所示:
由圖5可見(jiàn),經(jīng)過(guò)拼接后,人體模特的手部輪廓清晰可見(jiàn),將其導(dǎo)入到逆向工程軟件進(jìn)行精度分析評(píng)價(jià),拼接效果良好。
4 結(jié)束語(yǔ)
本文針對(duì)三維光學(xué)面掃描過(guò)程中粗差的產(chǎn)生原因,給出了粗差的識(shí)別和剔除方法。在多幅點(diǎn)云拼接過(guò)程中,參考ICP拼接算法,提出一種簡(jiǎn)化的ICP拼接算法,在掃描物體表面布設(shè)參考標(biāo)志點(diǎn),利用最小二乘原理,通過(guò)參考點(diǎn)集之間的坐標(biāo)轉(zhuǎn)換實(shí)現(xiàn)點(diǎn)云的配準(zhǔn),計(jì)算量小,計(jì)算速度快,更有利于實(shí)際的應(yīng)用。
參考文獻(xiàn)
[1]王宵,等.Geomagic studio逆向工程技術(shù)及應(yīng)用[M].化學(xué)工業(yè)出版社,2004.
[2]XJTUDP三維光學(xué)點(diǎn)測(cè)量系統(tǒng)V6.1用戶手冊(cè)[D].西安:西安交通大學(xué)信息機(jī)電研究所,2008,4.
[3]Paul J, Besl,Neil D.McKay. A Method for Registration of 3-D Shapes[J]. IEEE Transactions on Patten Analysis and Machine Intelliegence, NO2,1992,Page(s):239-256.
[4]孫世為,王耕耘,等.逆向工程中多視點(diǎn)云的拼合方法[J].計(jì)算機(jī)輔助工程,200,23(1):8-12.
[5]Yang Chen and Gerard Medioni.Object Modeling by Registration of Multiple Range Image[J].Proceedings of IEEE International Conference on Robotics and Automation,1991,Page(s):2724-2729.
[6]Michael Postmesil. Generating Models for Solid Objects by Matching 3D Surface Segments. In Proceedings of the International Joint Conference on Artificial[J]. Karlsruche, West Germany August, 1983,Page(s):1089-1093.
[7]David A. Forsyth, Jean Ponce.計(jì)算機(jī)視覺(jué)(一種現(xiàn)代方法)[M]. 王宏,等譯.電子工業(yè)出版社,2004,6.
作者簡(jiǎn)介:劉舜(1981,10-),男,山東菏澤人,碩士,講師,主要從事工程測(cè)量方面的研究。