褚建春 張澤峰
(蘇州市測(cè)繪院有限責(zé)任公司,江蘇 蘇州 215000)
空間任意方向圓柱面擬合方法
褚建春 張澤峰
(蘇州市測(cè)繪院有限責(zé)任公司,江蘇 蘇州 215000)
提出了一種新的簡(jiǎn)便可行的圓柱面擬合算法,利用兩臺(tái)無(wú)棱鏡全站儀架設(shè)在圓柱面的不同方向,分別獲取圓柱面上均勻分布的若干坐標(biāo)點(diǎn),再利用三維坐標(biāo)轉(zhuǎn)換原理將這些坐標(biāo)點(diǎn)轉(zhuǎn)換到統(tǒng)一坐標(biāo)系統(tǒng)內(nèi)。根據(jù)圓柱面的幾何原理,通過(guò)對(duì)圓柱面的位置和方向等幾何參數(shù)賦予任意值,利用最小二乘原理求出參數(shù)值來(lái)確定圓柱面,并評(píng)定圓柱面的圓度值。同時(shí),將本方法的計(jì)算結(jié)果與其他方法進(jìn)行對(duì)比分析,發(fā)現(xiàn)計(jì)算結(jié)果差異不大,精度大致相同,這也就驗(yàn)證了本方法的可行性和正確性。
圓柱面擬合,三維坐標(biāo)轉(zhuǎn)換,圓度,最小二乘原理
在工業(yè)檢測(cè)和逆向工程中,曲面擬合是一個(gè)經(jīng)常涉及到的實(shí)際問(wèn)題。實(shí)物的形狀通常用數(shù)學(xué)公式描述,通過(guò)對(duì)其表面點(diǎn)進(jìn)行三維坐標(biāo)采樣,再根據(jù)數(shù)學(xué)模型擬合出實(shí)物表面在空間坐標(biāo)系中的幾何方程[1,2]。在曲面擬合中,圓柱面的擬合比較常見(jiàn),該過(guò)程要確定圓柱面的幾何參數(shù),主要方法有高斯圖、遺傳算法、特征值法以及幾何法。
本文提出一種快速簡(jiǎn)便的圓柱面擬合方法,并與文獻(xiàn)[6]中的方法進(jìn)行比較分析,驗(yàn)證該方法的可行性。該方法來(lái)擬合圓柱面時(shí),在對(duì)誤差方程進(jìn)行適當(dāng)?shù)淖儞Q后,可任意選取平差過(guò)程中參數(shù)的初始值。
1.1 坐標(biāo)測(cè)量
利用全站儀無(wú)棱鏡模式采集圓柱面上點(diǎn)的三維坐標(biāo)。由于圓柱面為三維立體表面,利用一臺(tái)全站儀不能夠從一個(gè)測(cè)站測(cè)出整個(gè)圓柱面,所以至少需要兩臺(tái)全站儀對(duì)其圓柱面進(jìn)行觀測(cè)。然而,利用多臺(tái)全站儀測(cè)得的坐標(biāo)點(diǎn)的數(shù)據(jù)不屬于同一套坐標(biāo)系,為了使兩個(gè)測(cè)站上點(diǎn)的坐標(biāo)統(tǒng)一,需要至少布設(shè)3個(gè)公共點(diǎn)在圓柱面的周?chē)?。將全站儀分別架設(shè)在兩個(gè)不同的測(cè)站上觀測(cè)這些公共點(diǎn),求得兩套坐標(biāo)系之間的轉(zhuǎn)換參數(shù),以便將兩套坐標(biāo)系上的坐標(biāo)點(diǎn)歸算到同一套坐標(biāo)系中。為了提高坐標(biāo)之間的轉(zhuǎn)換精度,布設(shè)的公共點(diǎn)之間的距離相對(duì)于圓柱面應(yīng)盡量遠(yuǎn)。
為了擬合蘇州市文廟大成殿某根圓柱形支柱,首先在支柱前后兩邊分別選擇一個(gè)點(diǎn)作為測(cè)站點(diǎn),且在支柱周?chē)鶆虻卦O(shè)定4個(gè)點(diǎn),放置小棱鏡,作為坐標(biāo)轉(zhuǎn)換的公共點(diǎn)。測(cè)得4個(gè)公共點(diǎn)坐標(biāo)見(jiàn)表1。
表1 不同測(cè)站測(cè)得公共點(diǎn)坐標(biāo) m
1.2 三維坐標(biāo)轉(zhuǎn)換
由于任意架設(shè)測(cè)站測(cè)得的公共點(diǎn)屬于不同的坐標(biāo)系,為了便于圓柱面的擬合,需要進(jìn)行三維坐標(biāo)轉(zhuǎn)換,本文是將測(cè)站2的坐標(biāo)歸算到測(cè)站1的坐標(biāo)系中。由于這兩套坐標(biāo)系又是全站儀任意確定的,因此該坐標(biāo)轉(zhuǎn)換屬于大旋轉(zhuǎn)角的三維坐標(biāo)轉(zhuǎn)換。文獻(xiàn)[3]中提出一種適合于大旋轉(zhuǎn)角的三維基準(zhǔn)轉(zhuǎn)換的簡(jiǎn)便模型,但是該方法相對(duì)于文獻(xiàn)[4]的方法列式和計(jì)算要復(fù)雜些,所以本文采用文獻(xiàn)[4]的方法,同樣可以進(jìn)行大旋轉(zhuǎn)角的三維坐標(biāo)轉(zhuǎn)換。
一般三維坐標(biāo)轉(zhuǎn)換需要求解7個(gè)轉(zhuǎn)換參數(shù),而在這里采用同一臺(tái)全站儀來(lái)獲取公共點(diǎn)的坐標(biāo),所以不必考慮尺度參數(shù),只需要求出三個(gè)平移參數(shù)(x0,y0,h0)和三個(gè)角度參數(shù)(α,β,γ)就可以了。
公共點(diǎn)之間的坐標(biāo)關(guān)系可以表示為:
(1)
其中,(x0,y0,h0)為平移量;α,β,γ均為旋轉(zhuǎn)角;R1(α),R2(β),R3(γ)均為旋轉(zhuǎn)矩陣,其中:
當(dāng)公共點(diǎn)個(gè)數(shù)大于3個(gè)時(shí),可以按最小二乘求解以上6個(gè)參數(shù)。對(duì)每個(gè)公共點(diǎn),列出誤差方程為:
(2)
對(duì)式(2)進(jìn)行線性化,得:
(3)
其中,偏導(dǎo)數(shù)和常數(shù)項(xiàng)見(jiàn)文獻(xiàn)[4]。
利用式(3),經(jīng)過(guò)平差處理后求解6個(gè)轉(zhuǎn)換參數(shù),分別為x0=-199.800 1 m,y0=608.517 8 m,z0=97.907 1 m,α=-001′6.117 8″,β=003′5.667 4″,γ=-100016′38.840 7″。
將求得的6個(gè)轉(zhuǎn)換參數(shù)代入式(1)中,可將不同坐標(biāo)系的點(diǎn)坐標(biāo)歸算到相同坐標(biāo)系,得到的圓柱面的坐標(biāo)點(diǎn)的數(shù)據(jù)作為本文擬合圓柱面的實(shí)驗(yàn)數(shù)據(jù)。
根據(jù)圓柱面的幾何特征可知,圓柱面可以看做為到一條定向的中心軸線距離等于某一常數(shù)的點(diǎn)的集合,要想唯一確定一個(gè)圓柱,需要7個(gè)參數(shù),分別是該圓柱中心軸線的方向向量(a,b,c)和直線上的某一點(diǎn)坐標(biāo)(x0,y0,z0),以及圓柱的半徑r。由此,可得該圓柱的中心軸線的參數(shù)式方程為:
(4)
其中,t為參數(shù)變量。
根據(jù)由二維平面圓擴(kuò)展得到三維空間圓柱面的定義[1],空間圓柱面的方程可以表示為:
(5)
其中,(x,y,z)為空間圓柱面上的點(diǎn);(a,b,c)為單位向量。
將式(5)進(jìn)行展開(kāi)并進(jìn)一步整理,得式(6):
(6)
則,誤差方程可列為:
V=r-R
(7)
由于誤差方程式(7)為非線性,需要對(duì)上式進(jìn)行線性化。在線性化的過(guò)程中,由于上式各參數(shù)之間的相關(guān)性比較大,舍去了高次項(xiàng)對(duì)參數(shù)的計(jì)算結(jié)果影響比較大,而且需要對(duì)參數(shù)的初始值要求比較高,否則,可能導(dǎo)致迭代不收斂或者收斂到錯(cuò)誤的結(jié)果。
為了在保證最優(yōu)參數(shù)解的前提下,可任意選取平差過(guò)程中參數(shù)的初始值,因此對(duì)誤差方程進(jìn)行相應(yīng)的變換,并顧及條件a2+b2+c2=1。令誤差方程為:
v=r2-R2=T-R2=[a(zi-z0)-c(xi-x0)]2+[b(xi-x0)-a(yi-y0)]2+[c(yi-y0)-b(zi-z0)]2-R2
(8)
對(duì)式(8)進(jìn)行線性化,得:
?vi=BX-L
(9)
X=(δx0,δy0,δz0,δa,δb,δc,δR)T;
其中,?./?.是對(duì)7個(gè)參數(shù)求偏導(dǎo)數(shù);r0,R0均為代入?yún)?shù)近似值后的圓柱半徑。
由于x0,y0,z0這3個(gè)參數(shù)相關(guān),a,b,c這3個(gè)參數(shù)也是相關(guān)的。為了保證參數(shù)結(jié)果的唯一性,需要對(duì)參數(shù)進(jìn)行約束。又由于圓柱的中心軸線的確定需要指明方向和大小,為此規(guī)定中心軸線的方向向量是一個(gè)單位向量并指向正方向。即滿足條件a2+b2+c2=1,并規(guī)定a>0,若a=0,則b>0;若a=0且b=0,則c>0(a,b,c不能同時(shí)為0)。
顧及兩個(gè)約束條件和式(9)的誤差方程,按附有約束條件的間接平差求解各參數(shù)的估值。然而,在每次迭代求解過(guò)程中,均需對(duì)a,b,c作單位化修正,以便收斂得到最佳的近似參數(shù)估值。
本文是以無(wú)棱鏡全站儀測(cè)得蘇州市文廟大成殿某根圓柱形支柱的實(shí)際坐標(biāo)數(shù)據(jù)為例,將測(cè)站2測(cè)的點(diǎn)位坐標(biāo)利用式(1)全部轉(zhuǎn)換到測(cè)站1所在的坐標(biāo)系中,然后按照本文提出的方法進(jìn)行平差,求得確定圓柱面的7個(gè)參數(shù)。為了驗(yàn)證這種方法的正確性,筆者采用文獻(xiàn)[1]和文獻(xiàn)[6]中圓柱擬合算法和數(shù)據(jù)進(jìn)行驗(yàn)算,將算得結(jié)果進(jìn)行比較分析,如表2所示。
由表2可知,三種方法求得的圓柱中心軸線方向和半徑的結(jié)果十分接近。本方法與文獻(xiàn)[6]方法中初始值選取方法相同,都選取所有觀測(cè)點(diǎn)的x0坐標(biāo)的平均值作為參數(shù)近似值,并將其設(shè)定為常數(shù)x0。本方法和文獻(xiàn)[1]方法的坐標(biāo)平移量不同是由于選取的坐標(biāo)初始值不同,為了進(jìn)一步比較本方法和文獻(xiàn)[1]方法,可以將兩方法的初始值都設(shè)為x0=10.000 00,然后繼續(xù)按照上式進(jìn)行平差計(jì)算,則起始點(diǎn)平移后的坐標(biāo)為(10.000 00,20.384 86,4.035 87),與文獻(xiàn)[1]中的計(jì)算結(jié)果相差很小,這就驗(yàn)證了本方法的正確性。
表2 三種方法結(jié)果比較
從表2的結(jié)果可以看出本方法的正確性和可行性。所以,可以利用本方法來(lái)擬合測(cè)得的實(shí)際圓柱面坐標(biāo)點(diǎn)的數(shù)據(jù),求得圓柱的7個(gè)參數(shù)。同時(shí),也利用文獻(xiàn)[6]中的方法擬合求得圓柱參數(shù),并與本方法計(jì)算的結(jié)果進(jìn)行比較分析,計(jì)算結(jié)果見(jiàn)表3。
表3 兩種不同方法的圓柱參數(shù)平差結(jié)果
由表3的圓柱的參數(shù)平差結(jié)果,可知這兩種方法都能用于圓柱面的擬合,而且求得的參數(shù)結(jié)果和精度結(jié)果相差不是很大,這也同時(shí)驗(yàn)證了該方法的可行性。為了進(jìn)一步說(shuō)明該方法的有效性,利用本方法和文獻(xiàn)[6]方法求得圓柱面上點(diǎn)至圓柱中心軸線的距離與圓柱半徑之差[4],即為圓柱的圓度,其計(jì)算結(jié)果見(jiàn)圖1。
由圖1可知,兩種方法計(jì)算的圓柱面的圓度值差異不大,驗(yàn)證了該方法確實(shí)可以用于圓柱擬合的參數(shù)求解,且精度也符合要求。
本文介紹了圓柱面擬合的一個(gè)快速簡(jiǎn)便的方法,該方法是利用圓柱的幾何特征,列出空間圓柱面的方程,并顧及確定圓柱面參數(shù)之間的相關(guān)性,規(guī)定約束條件,再對(duì)誤差方程進(jìn)行適當(dāng)?shù)淖儞Q,降低對(duì)參數(shù)近似值的要求,最終求出圓柱幾何參數(shù)的最佳近似估值。
通過(guò)本方法實(shí)例計(jì)算結(jié)果與文獻(xiàn)[1]和文獻(xiàn)[6]的方法比較分析,驗(yàn)證了該方法的可行性。該方法與圓柱擬合的其他方法相比,形式簡(jiǎn)單、易于理解、精度較高,是一種可以運(yùn)用的圓柱面擬合方法。
[1] 潘國(guó)榮,谷 川.改進(jìn)的遺傳算法用于工業(yè)測(cè)量數(shù)據(jù)處理[J].大地測(cè)量與地球動(dòng)力學(xué),2008,28(1):55.
[2] 王麗華,谷 川,萬(wàn) 軍.基于改進(jìn)遺傳算法的雷達(dá)天線曲面擬合參數(shù)辨識(shí)[J].機(jī)電一體化,2008,14(4):54.
[3] 陳 義,沈云中,劉大杰.適用于大旋轉(zhuǎn)角的三維基準(zhǔn)轉(zhuǎn)換的一種簡(jiǎn)便模型[J].武漢大學(xué)學(xué)報(bào)(信息科學(xué)版),2004,29(12):1101-1104.
[4] 王解先,季凱敏.工業(yè)測(cè)量擬合[M].北京:測(cè)繪出版社,2008:31-33.
[5] 秦世偉,潘國(guó)榮,谷 川,等.基于遺傳算法的三維空間柱面擬合[J].同濟(jì)大學(xué)學(xué)報(bào)(自然科學(xué)版),2010,38(4):604.
[6] 張益澤,王解先.初值任意選取的圓柱面擬合方法[J].工程勘察,2012(1):77-80.
Cylindersurfacefittinginarbitrarydirectionofspace
ChuJianchunZhangZefeng
(SuzhouSurveyingandMappingInstituteCo.,Ltd,Suzhou215000,China)
This paper presents a new simple and feasible cylinder surface fitting algorithm. The coordinates of the points on the cylinder surface are measured by the reflectorless total station and transformed into the same coordinate system. The geometric cylinder parameters can be determined by least squares method with arbitrary initial values and the circularity of each point is assessed at the same time. Compared with other methods, the results are similar and the accuracy is equal, which verifies the feasibility and correctness of the method.
cylinder surface fitting, 3D coordinates transformation, circularity, least squares method
1009-6825(2017)23-0190-03
2017-06-07
褚建春(1963- ),男,高級(jí)工程師; 張澤峰(1991- ),男,助理工程師
TU198
:A