基于整体最小二乘的空间直线拟合算法

2019-04-10 06:13崔立鲁钱江宇张惠妹陈科洁
关键词:迭代法计算结果直线

崔立鲁,杨 蓉,钱江宇,张惠妹,陈科洁

(1.成都大学 建筑与土木工程学院,四川 成都 610106; 2.武汉大学 测绘学院,湖北 武汉 430079)

0 引 言

关于利用测量数据如何对物体进行拟合的研究已成为工业测量系统发展的难题,其中常遇到的就是三维空间直线拟合问题[1].通常二维平面直线拟合可以直接利用最小二乘方法(Least squares,LS)和整体最小二乘方法(Total least squares,TLS)进行参数计算,但对于三维空间直线拟合由于其方程并不是一个简单的线性关系,因此无法直接采用LS方法和TLS方法[2],而需要对该方程进行一定的转换.目前,常用的空间直线拟合方法有LS方法、牛顿—梯度最优化算法、无迭代算法、特征分解和选权迭代算法和结构总体最小二乘拟合等[3-7].本研究通过一定方式将空间直线方程转变为TLS方法中的系数矩阵含有误差(Error-in variable,EIV)模型,从而可以直接利用TLS方法进行参数拟合,且在计算过程中充分考虑了X、Y和Z坐标分量的测量误差,最后利用工程测量中的大型构件的实际测量数据对上述方法进行参数拟合处理,并与其他几种方法的结果进行了比较.

1 拟合算法

1.1 模型转换

假设空间上的一条直线经过点P0(x0,y0,z0),其方向向量为(D,E,F),则其空间直线标准方程为,

(1)

可改写为,

(2)

式中,k=A/C,g=x0-A/Cz0,h=B/C,e=y0-B/Cz0.

将式(2)写成矩阵形式,即,

(3)

(4)

即为间接平差模型的形式.

1.2 LS方法

对式(2)的方程组进行改写,其改正值如下,

(5)

当Vx和Vy取最小时,k、g、h与e即为方程的系数.因此,对式(5)中2个方程式分别求偏导数,其值等于0.经整理可得,

(6)

(7)

X=[x1…xn]T,B=[he]T,

Y=[y1…y2]T,

则改写式(6)和式(7)成矩阵形式为,

(8)

对式(8)求解得到矩阵A、B的值,即为k、g、h与e的值.

1.3 TLS方法

1.3.1 基本思路.

TLS方法不仅考虑了观测值的误差,而且还顾及了系数矩阵的误差,因此在理论上比LS方法更加严谨,其参数估值是最优的.建立顾及系数矩阵和观测值误差的EIV模型,即,

(9)

目前,针对EIV模型的求解,主要有SVD法、QR法和迭代法[10-11].其中,SVD法是认为系数矩阵B中的所有元素都是带有误差的,但是只有元素z才具有误差,其他元素都是0或者1,因此从理论上来说没有考虑完整而不够严密.而迭代法计算简单,又适用于编程计算,因此本研究采用迭代法来求解空间直线参数拟合中的EIV模型[12].

1.3.2 TLS的迭代法求解.

本研究提出的方法在式(6)的基础上引入了平差准则,

(10)

将式(6)代入上式并对系数矩阵B和参数向量X中的各个元素求导,得到迭代法的方程式为,

(11)

迭代法的计算流程如图1所示.

2 拟合精度评定

衡量空间直线拟合精度的指标主要是直线度和点到直线的距离和.直线度是指实际直线与理论直线之间的变动量,即点到直线的距离最大差值,是最基本也是比较重要的评价指标.

图1迭代法流程图

(12)

(13)

式中,(x0,y0,z0)是所有空间直线拟合点(xi,yi,zi)的平均值;(α,β,γ)为空间直线的方向向量,即式(1)中的(D,E,F).

3 算例分析

为了验证本研究所提出的算法的正确性,采用工业测量中大型构件的测量数据进行计算,共计10个点,实际测量数据如表1所示[1].

表1 空间直线实测数据

根据TLS方法和LS方法的基本原理,分别利用此2种方法对上述实测数据进行处理,得到计算结果如表2所示.

表2 空间直线参数拟合结果

由表2可知,TLS方法和LS方法拟合得到的4个参数基本一致,其中第3个参数完全一样.将上述结果代入式(2)可得到关于4个参数的方程组分别为,

(14)

(15)

由于空间直线标准方程式的表达不是惟一的,所以同一组数据得到的参数形式是多样的.根据式(1)和式(2)得到相应的空间直线标准方程式为,

(16)

(17)

表3 2种方法计算结果的Δi统计

表4 2种方法的直线度比较

表3将文献[3]方法、TLS方法和LS方法计算结果中每个点的点到直线距离误差进行了比较.从表3可知,文献[3]方法和本研究提出的TLS方法计算结果基本一致,这是因为本研究采用的是文献[3]中的方法.因此,表3的计算结果从侧面验证了本研究编程计算结果的正确性,同时也证明了TLS方法精度高于LS方法.而表4的结果表明TLS方法的各项精度指标均优于LS方法,与表3结果得到的结论完全一致.

表5将文献[1]、[3]、[5]和[7]的结果和本研究的计算结果进行了比较.从表5可知,本研究的结果精度高于文献[1],与文献[5]和[7]基本一致,略低于文献[3],同时,本研究方法计算出来的方向向量和此4个文献里计算得到的方向向量都非常接近(1∶2∶3).因此,表5的比较结果也充分证明了本文算法的正确性、可行性和有效性.

表5 各种方法计算结果的比较

4 结 语

鉴于TLS方法和LS方法不能直接应用于空间直线拟合计算,因此,本研究采用参数变换的方式将三维问题转化为二维问题,构建出TLS方法中的EIV模型,并利用迭代法对EIV模型的结果进行求解[13-14],然后分别利用TLS方法和LS方法对工业测量中的大型构件的实际测量数据进行参数拟合处理,并对2种方法的计算结果进行比较,以及本研究方法的结果与文献中的结果进行详细对比,充分验证了本研究所提方法的正确性、可行性和有效性.

猜你喜欢
迭代法计算结果直线
求解大型广义绝对值方程的Picard-SS迭代法
迭代法求解一类函数方程的再研究
求解复对称线性系统的CRI变型迭代法
画直线
多种迭代法适用范围的思考与新型迭代法
画直线
趣味选路
扇面等式
你喜欢直线吗?
超压测试方法对炸药TNT当量计算结果的影响