張 俐, 郭超朋, 劉京亮
(1. 北京航空航天大學(xué) 機械工程及自動化學(xué)院, 北京 100191; 2. 北京航空精密機械研究所, 北京 100076)
隨著制造業(yè)數(shù)字化、智能化發(fā)展, 機械制造對零部件特征高效、高精度檢測的要求逐步提高. 三坐標測量是精密檢測的一種重要方式, 廣泛應(yīng)用于機械零部件測量. 圓錐面作為機械零件表面常見的二次曲面, 相對于平面、球、圓柱等二次曲面擬合, 圓錐面擬合參數(shù)多, 距離函數(shù)復(fù)雜且擬合初值計算困難.
對于標準二次曲面, 多采用數(shù)值迭代優(yōu)化計算方法擬合. 在數(shù)值迭代優(yōu)化擬合中, 初值計算[1]、距離函數(shù)模型及優(yōu)化方法的選擇對擬合結(jié)果準確性影響較大. 研究人員利用不同初值計算方法獲取擬合初值并進行迭代優(yōu)化擬合. 李岸[2]、劉元朋[3]等利用錐面的單位法矢形成的高斯映像計算擬合初值, 需計算各數(shù)據(jù)點法矢,計算較復(fù)雜且精度有限. 梁爽[4]等利用待擬合標準二次曲面周圍的平面與其位置約束關(guān)系計算擬合初值, 該方法利用工件多表面位置約束關(guān)系, 但其計算受工件表面情況限制.
Lukács G[5]等提出利用“忠實距離”取代空間數(shù)據(jù)點到曲面“真實距離”的二次曲面擬合方法, 該方法具有代表性. 但Lukács G僅使用隨機選取的不超過4個點位置與法矢估算二次曲面的幾何參數(shù)初值, 可靠性很低, 易導(dǎo)致算法收斂慢, 或收斂于局部最小值[1].
幾何參數(shù)初值選取對非線性距離目標函數(shù)優(yōu)化能否收斂至全局最優(yōu)點是至關(guān)重要的. 三坐標測量采樣策略是確定工件尺寸是否符合既定設(shè)計標準和規(guī)格的關(guān)鍵, 采樣獲取信息量取決于采樣點數(shù)量和采樣數(shù)據(jù)波動[6]. 因此本文提出基于確定采樣策略的圓錐面擬合方法,根據(jù)確定的采樣策略可靠估計圓錐面幾何參數(shù)初值, 結(jié)合Benk″P[7]等提出的圓錐面距離函數(shù)模型逼近函數(shù)表達式, 精確計算圓錐面幾何參數(shù).
圖 1 圓錐面距離函數(shù)模型示意圖Fig.1 Cone distance function model
圖 1 中d(s,p)表示三維數(shù)據(jù)點Pi到圓錐面的距離,O表示坐標原點,Os表示坐標原點在圓錐面軸線上的投影點, 設(shè)Os到圓錐頂點A的距離為δ,Ps為空間點Pi在圓錐面軸線上的投影點,θ為圓錐面的錐頂半角,n為圓錐面單位軸向向量, 其它相關(guān)各點的位置關(guān)系為
PsPse∥PiPe∥AD,PsPs1⊥AD,P1Ps2⊥AD.
(1)
由圖 1 可知
d(s,pi)=|PiPs2|-|P2Ps1|=|PiPs|·cosθ-|APs|·sinθ,
(2)
即
d(s,pi)=(OsP-n〈OsPi,n〉)cosθ-(δ-〈OsPi,n〉)sinθ.
(3)
記:P=PiO,S=OsO則
d(s,pi)=(P-S-n〈P-S,n〉)cosθ-(δ-〈P-S.n〉)sinθ.
(4)
在文獻[7]中, Benk″ P得到該距離函數(shù)模型帶有約束條件的逼近函數(shù)表達式
d(s,p)=λp2-〈p,n′〉2+〈p,s′〉+A,
(5)
(6)
P=(x2,y2,z2,2xy,2xz,2yz,x,y,z,1)T,
(7)
即知距離函數(shù)表達式為:d(s,p)=STP, 則數(shù)值迭代優(yōu)化的目標函數(shù)為
(8)
本文提出基于確定采樣策略的圓錐面擬合方法. 由確定采樣策略獲取的數(shù)據(jù)點位置信息及數(shù)據(jù)點的空間幾何關(guān)系, 可靠準確地估算圓錐面幾何參數(shù)初值, 再利用非線性最小二乘法求解圓錐面幾何參數(shù)精確值, 算法穩(wěn)定可靠.
圖 2 圓錐面采樣示意圖Fig.2 Cone sampling diagram
采樣策略是影響測量精度、效率的主要因素. 三坐標測量機采樣策略內(nèi)容包含采樣點數(shù)量及分布. 大衛(wèi)·弗蘭克[8]在三坐標檢測策略中推薦圓錐面測量采樣點數(shù)為12個或15個. 在實際手動測量中常用采樣點分布確定方法有: 分層規(guī)則均勻采樣和隨機采樣. 文中采用分層規(guī)則均勻采樣方法確定采樣點分布, 保證采樣點在采樣區(qū)域上盡可能均勻分布[9], 采樣點數(shù)量選取15個, 具體采樣分布如圖 2 所示.
圖 2 表示圓錐面俯視圖, 其中不同直徑大小的圓表示圓錐面上垂直于圓錐軸向的空間圓, 空間圓上點表示三坐標測量機采樣數(shù)據(jù)點. 文中確定的采樣方案為: 在圓錐面上垂直于圓錐軸向的三個空間圓上采樣, 直徑最大空間圓上均勻采集6個數(shù)據(jù)點, 直徑最小空間圓上均勻采集4個數(shù)據(jù)點, 第3個空間圓上均勻采集5個數(shù)據(jù)點, 采樣點數(shù)共15個.
在實際手動采樣過程中, 數(shù)據(jù)點分布要求盡可能均勻且分布在與軸向垂直的錐面空間圓上, 這與實驗人員操作經(jīng)驗有關(guān)系.
依據(jù)確定的采樣策略, 構(gòu)建錐面與采樣點的空間幾何關(guān)系, 計算圓錐面幾何參數(shù), 即為錐面擬合初值, 錐面與空間圓的幾何關(guān)系如圖 3, 圖 4 所示.
圖 3 錐面與采樣空間幾何關(guān)系示意圖Fig.3 Spatial relation of Cone and sampling points
圖 4 錐面與采樣空間圓平面幾何關(guān)系示意圖Fig.4 Flat relation of Cone and sampling circles
本文初值計算方法的步驟為: 由離散數(shù)據(jù)點坐標, 分別擬合3個空間圓, 計算圓心坐標及半徑, 再根據(jù)三角幾何關(guān)系, 計算圓錐面頂點、錐頂半角以及圓錐面軸向向量.
2.2.1 空間圓擬合
在初值計算中, 空間圓擬合過程較為復(fù)雜, 空間圓擬合思路是利用坐標變換將空間圓轉(zhuǎn)換為平面圓進行擬合,計算平面圓半徑、圓心參數(shù),再利用坐標變換矩陣反求三維圓圓心坐標,最終得到空間圓參數(shù).
空間圓轉(zhuǎn)換為平面圓擬合的具體過程是: 由離散采樣數(shù)據(jù)點, 擬合出空間圓所在平面, 利用平面信息建立新坐標系, 再利用坐標變換將這些數(shù)據(jù)點坐標轉(zhuǎn)換到新的坐標系下, 即可將空間圓擬合轉(zhuǎn)化為平面圓擬合.
1) 平面擬合. 本文采用分層規(guī)則均勻采樣方法, 對圓錐面分3層采樣, 每層數(shù)據(jù)點可擬合出空間圓所在平面. 空間平面的一般方程為
Ax+By+Cz+D=0,
(9)
式中:C≠0. 將一般方程轉(zhuǎn)化為
ax+by+c-z=0.
(10)
利用最小二乘思想, 即
(11)
利用函數(shù)梯度求解該表達式最小值, 即可求得平面參數(shù)a,b,c值.
2) 坐標變換. 在空間圓所在平面上建立新的坐標系, 將擬合該平面的數(shù)據(jù)點通過坐標轉(zhuǎn)換, 轉(zhuǎn)換至新坐標系下. 坐標變換構(gòu)造的主要思路是: ① 構(gòu)造平移矩陣T, 平移原坐標系OXYZ, 使其坐標原點O與新坐標系原點O′重合; ② 構(gòu)造旋轉(zhuǎn)矩陣R, 利用旋轉(zhuǎn)變換使兩坐標系坐標軸重合. 坐標變換的構(gòu)造方法較多, 在此不予詳述. 數(shù)據(jù)點坐標在新坐標系O′X′Y′Z′中坐標值計算公式為
(x′,y′,z′,1)=(x,y,z,1)·T·R.
(12)
3)平面圓擬合. 新坐標系下空間數(shù)據(jù)點可視為平面坐標點, 即可以對平面圓進行擬合. 平面圓曲線上數(shù)據(jù)點滿足表達式
f(x,y)=x2+ux+y2+vy+w=0,
(13)
假設(shè)測量數(shù)據(jù)點數(shù)為n, 根據(jù)誤差理論[10], 由于測量數(shù)據(jù)點存在誤差, 數(shù)據(jù)點坐標(xi,yi)不滿足曲面方程, 將其變形可得單個觀測點誤差方程為
vi=uxi+vyi+w-(-x2-y2).
(14)
實際測量中, 為提高平面圓擬合精度, 觀測點數(shù)多于3個點, 形成多余觀測, 再進行平差運算, 多觀測點誤差方程組可整理為
V=AΔa-L,
(15)
式中:
(16)
根據(jù)最小二乘平差原理可得
Δa=(ATA)-1ATL.
(17)
計算求得Δa, 即可求得平面圓圓心及半徑.
(18)
式中:T為坐標變換中平移矩陣;R為坐標變換中旋轉(zhuǎn)矩陣.
2.2.2 參數(shù)計算
圓錐面幾何特征參數(shù)主要包括: 圓錐軸向向量, 圓錐面頂點坐標及錐頂角. 圖 4 表示1/4錐體平面示意圖, 其中:R1,R2,R3分別表示3個擬合空間圓半徑;C1,C2,C3分別表示3個空間圓的圓心;A表示圓錐面頂點, 直線AB表示圓錐面的軸線;θ表示錐頂半角.
1) 軸向向量. 假設(shè)已求得3個空間圓的圓心分別為C1,C2,C3, 空間圓半徑分別為:R1,R2,R3, 則圓錐面軸向向量可由3個空間圓圓心C1,C2,C3坐標擬合空間直線AB計算, 空間直線擬合方法在此不予詳述.
2) 錐頂點坐標. 錐頂點坐標根據(jù)圓心C1,C2,C3在軸線上的投影點之間距離, 利用三角形相似關(guān)系, 計算出錐頂點到已求投影點距離,即可求得頂點坐標.
3) 錐頂半角. 錐頂半角θ利用正切計算公式計算:
(19)
建立圓錐面幾何距離參數(shù)化方程后, 可知距離目標函數(shù)是非線性函數(shù), 因此利用Levenberg-Marquardt[11]方法對距離目標函數(shù)進行迭代優(yōu)化計算, 以初值計算求解的圓錐面參數(shù)作為迭代優(yōu)化的初始值.本文基于確定采樣策略的圓錐面擬合算法步驟如下:
1) 依據(jù)圓錐面距離函數(shù)模型,得到錐面距離逼近函數(shù)表達式;
2) 利用由確定采樣策略獲取的三維數(shù)據(jù)點分別計算空間圓的圓心及半徑, 并根據(jù)空間圓的幾何位置關(guān)系計算圓錐面頂點坐標, 錐頂半角及軸向向量;
3) 利用已計算的圓錐面幾何參數(shù)初值作為迭代初始值, 采用Levenberg-Marquardt方法進行優(yōu)化計算, 最終得到圓錐面精確參數(shù).
本節(jié)對圓錐面擬合算法進行實驗驗證. 依據(jù)確定的采樣策略, 利用三坐標測量機在兩個不同軸向位置上對兩個不同大小的圓錐體, 分別在1/4圓錐面, 1/2圓錐面, 3/4圓錐面及整個圓錐面區(qū)域進行多次采樣, 每組實驗獲取15個采樣數(shù)據(jù)點, 分別利用圓錐面擬合算法及經(jīng)PTB認證的Rational DMIS軟件對圓錐面參數(shù)進行計算, 對比計算結(jié)果并分析.
本文實驗數(shù)據(jù)較多, 故只列出1/2圓錐面采樣和整個圓錐面采樣計算結(jié)果表格, 如表 1, 表 2 所示, 表中初值計算表示本文初值計算的結(jié)果, 算法1數(shù)據(jù)表示本文算法擬合計算的結(jié)果, 算法2數(shù)據(jù)表示Rational DMIS軟件計算的結(jié)果, 差值表示兩算法擬合結(jié)果差值.
表 1 1/2圓錐面采樣計算結(jié)果
由表 1, 表 2 中數(shù)據(jù)可知, 本文圓錐面幾何參數(shù)初值計算結(jié)果與圓錐面擬合結(jié)果接近, 且本文擬合算法計算結(jié)果與Rational DMIS軟件計算結(jié)果的小數(shù)點后兩位數(shù)基本保持一致, 二者擬合結(jié)果的差值很小. 表3是本文算法對圓錐面擬合誤差的計算結(jié)果, 誤差計算方法為: 計算采樣點到擬合圓錐面的距離, 最大誤差表示采樣點到圓錐面的最大距離值, 平均誤差表示采樣點到圓錐面的平均距離. 由表 3 可知, 在實驗中采樣區(qū)域為1/2圓錐面時, 圓錐面擬合算法擬合最大誤差為0.014 104 mm; 采樣區(qū)域為整個圓錐面時, 擬合最大誤差為0.008 603 mm, 綜上可知, 本文算法擬合結(jié)果準確、精度高.
表 2 整圓錐面采樣計算結(jié)果
表 3 圓錐面擬合誤差計算結(jié)果
針對圓錐面擬合初值計算不理想而導(dǎo)致擬合結(jié)果不準確的問題, 本文提出基于確定采樣策略的圓錐面擬合方法. 該方法利用所有數(shù)據(jù)點位置信息及其空間幾何關(guān)系, 可以準確可靠地估算圓錐面幾何參數(shù)初值, 距離函數(shù)優(yōu)化過程收斂快, 能夠快速準確計算目標函數(shù)全局最優(yōu)點. 經(jīng)實驗證明: 本文算法擬合結(jié)果精度較高, 解決了擬合初值計算不理想導(dǎo)致擬合不準確甚至失敗的問題, 實現(xiàn)了圓錐面的精確擬合, 為三坐標測量軟件中標準二次曲面擬合提供了新方法.
[1] 曲學(xué)軍, 楊亞文, 韓志仁. 基于散亂數(shù)據(jù)表面法矢的二次曲面擬合[J]. 航空學(xué)報, 2007, 28(4): 1018-1024.
Qu Xuejun, Yang Yawen, Han Zhiren. Quadric surface direct fitting based on normal vectors of random data[J]. Acta Aeronautica et Astronautica Sinica, 2007, 28(4): 1018-1024. (in Chinese)
[2] 李岸, 管愛枝. 基于高斯映射的柱面與錐面點云擬合[J]. 組合機床與自動化加工技術(shù), 2007(8): 28-32.
Li An, Guan Aizhi. Fitting point cloud to cone and cylinder based on Gaussian image[J]. Combined Machine Tool and Automatic Machining, 2007(8): 28-32. (in Chinese)
[3] 劉元朋, 趙輝, 陳良驥,等. 基于有向點云數(shù)據(jù)的二次曲面擬合算法[J]. 機床與液壓, 2008(8): 27-29.
Liu Yuanpeng, Zhao Hui, Chen Liangji, et al. Algorithm of quadric surface fitting from oriented point cloud[J]. Machine Tool & Hydraulics, 2008(8): 27-29. (in Chinese)
[4] 梁爽, 李明, 楊恢,等. 工業(yè)測量中標準二次曲面的一種擬合方法[J]. 組合機床與自動化加工技術(shù), 2012(5): 49-53.
Liang Shuang, Li Ming, Yang Hui, et al. A method for standard quadric surface fitting in industrial metrology[J]. Combined machine tool and automatic machining, 2012(5): 49-53. (in Chinese)
[5] Lukács G, Martin R, Marshall D. Faithful least-squares fitting of spheres, cylinders, cones and tori for reliable segmentation[C]. European Conference on Computer Vision. Springer Berlin Heidelberg, 1998: 671-686.
[6] Lee G, Mou J, Shen Y. Sampling strategy design for dimensional measurement of geometric features using coordinate measuring machine[J]. International Journal of Machine Tools & Manufacture, 1997, 37(7): 917-934.
[7] Benk″ P, Kós G, Várady T, et al. Constrained fitting in reverse engineering[J]. Computer Aided Geometric Design, 2002, 19(3): 173-205.
[8] 大衛(wèi)·弗蘭克. 三坐標測量指南-測量機檢測策略[M]. 諸錫荊, 編譯. 2005.
[9] Wong T T, Luk W S, Heng P A. Sampling with Hammersley and Halton points[M]. A. K. Peters, Ltd. 1997.
[10] 武漢大學(xué)測繪學(xué)院測量平差學(xué)科組. 誤差理論與測量平差基礎(chǔ)[M]. 武漢: 武漢大學(xué)出版社, 2003.
[11] 陳寶林. 最優(yōu)化理論與算法[M]. 北京: 清華大學(xué)出版社, 2005.