本发明属于空间测量数据处理领域,具体涉及一种空间直角坐标转换参数计算方法。
背景技术:
随着卫星导航定位、三维激光扫描等空间测量技术方法和硬件设备的不断发展和普及,各种不同空间直角坐标系下的三维坐标成果应运而生。为了将各种不同空间直角坐标系下的三维坐标成果进行统一表达和使用,需要进行空间直角坐标转换。
空间直角坐标转换需要首先利用公共点在原坐标系和新坐标系下的两套三维坐标计算转换参数。大角度空间直角坐标转换参数的计算通常采用非线性最小二乘法,包括高斯-牛顿法、最速下降法、离散牛顿法或拟牛顿法等。非线性最小二乘解法需要足够准确的初值,且误差方程较复杂。小角度空间直角坐标转换参数计算时可采用简化的旋转矩阵,公式简单、易于实现,但不适用于大角度的情况。综上所述,空间直角坐标转换参数计算方法应能够适用于任意大小旋转角的情况,若能避免对初值的严重依赖则更好。
技术实现要素:
本发明的目的是提供一种空间直角坐标转换参数计算方法,能够计算任意角度的空间直角坐标转换参数,且不需要依赖准确的初值,解决了任意角度空间直角坐标转换参数的计算问题,以及空间直角坐标转换参数计算时对初值的严重依赖问题。
本发明所采用的技术方案为:
空间直角坐标转换参数计算方法,其特征在于:
该方法通过将任意角度的空间直角坐标转换参数计算分解成若干个微小角度的空间直角坐标转换参数计算和组合得以实现。
具体包括以下步骤:
第一步:将空间直角坐标转换模型中的旋转矩阵简化为以下形式:
式中,ω、
此时,空间直角坐标转换模型如下式:
式中,i、ii分别表示两个不同的空间直角坐标系,称为原坐标系和新坐标系;(δx,δy,δz)为三个坐标轴方向的平移参数;m为尺度缩放参数;
第二步:开列误差方程如下:
式中,平差参数a1=ω·m;
以上误差方程的矩阵形式如下:
式中:
残差v=[vxvyvz]t;
系数阵
平差参数
常数项
第三步:根据最小二乘原则,列出法方程并计算转换参数
c1=(btb)-1·btl(5)
其中,三个euler角的估值为:
第四步:将转化参数c1回代到空间直角坐标转换模型中,将i坐标系下的三维坐标转换到一个过渡的空间直角坐标系cs1中,得到公共点的一套新坐标
第五步:将公共点在过渡坐标系下的坐标
第六步:利用已求出的转换参数c1和c2计算由i坐标系到过渡坐标系cs2的转换参数c′=[δxδyδzmr]′,计算公式如下:
第七步:令c1=c′并重复第四步到第六步,直到第u=1,2,3l个过渡坐标系下的三维坐标
经过上述步骤,由i坐标系到ii坐标系的转换参数c为:
c=c1=c′(9)。
本发明具有以下优点:
1、本发明提出的空间直角坐标转换参数计算方法适用于任意角度的空间直角坐标转换参数计算,过程简单、便于实施,为空间直角坐标转换参数求解提供了新方法。
2、本发明提出的空间直角坐标转换参数计算方法不需要依赖准确的初值,减少了初值解算过程。
3、本发明提出的空间直角坐标转换参数计算方法具有较简单的误差方程,易于编程实现,且具有较快的收敛速度。
附图说明
图1为两种方法迭代次数对比图。
具体实施方式
下面结合具体实施方式对本发明进行详细的说明。
本发明涉及一种空间直角坐标转换参数计算方法,将任意角度的空间直角坐标转换参数计算分解成若干个微小角度的空间直角坐标转换参数计算和组合,实现了任意角度的空间直角坐标转换参数计算。此外,本发明提出的空间直角坐标转换参数计算方法只需要将各转换参数的初值均设为零,不需要计算准确的初值。该方法具体包括以下步骤:
第一步:将空间直角坐标转换模型中的旋转矩阵简化为以下形式:
式中,ω、
此时,空间直角坐标转换模型如下式:
式中,i、ii分别表示两个不同的空间直角坐标系(称为原坐标系和新坐标系);(δx,δy,δz)为三个坐标轴方向的平移参数;m为尺度缩放参数。
第二步:开列误差方程如下:
式中,平差参数a1=ω·m;
以上误差方程的矩阵形式如下:
式中:
残差v=[vxvyvz]t;
系数阵
平差参数
常数项
第三步:根据最小二乘原则,列出法方程并计算转换参数
c1=(btb)-1·btl(5)
其中,三个euler角的估值为:
第四步:将转化参数c1回代到空间直角坐标转换模型中,将i坐标系下的三维坐标转换到一个过渡的空间直角坐标系cs1中,得到公共点的一套新坐标
第五步:将公共点在过渡坐标系下的坐标
第六步:利用已求出的转换参数c1和c2计算由i坐标系到过渡坐标系cs2的转换参数c′=[δxδyδzmr]′,计算公式如下:
第七步:令c1=c′并重复第四步到第六步,直到第u=1,2,3l个过渡坐标系下的三维坐标
经过上述步骤,由i坐标系到ii坐标系的转换参数c为:
c=c1=c′(9)
由上述计算过程可知,本发明提出的空间直角坐标转换参数计算方法是一种迭代计算方法。每一次迭代过程都是一个小euler角的空间直角坐标参数计算过程,其实质是通过旋转、缩放和平移将原空间直角坐标系下的三维坐标转换到一个过渡的空间直角坐标系中。每增加一次迭代,过渡坐标系就会更加接近新坐标系。经过若干次迭代,过渡坐标系将与新坐标系完全重合。由上述原理可知,本发明提出的空间直角坐标转换参数计算方法是一种适用于任意euler角的空间直角坐标转换参数计算方法,且不需要计算准确的参数初值。
为验证本发明专利的正确性和可行性,作者编程实现了本发明提出的空间直角坐标转换参数计算方法。利用本发明提出的方法计算了多组模拟公共点的转换参数(平移、缩放和旋转角度数值均随机设置),计算结果与真值完全一样。
另外,将本发明提出的计算方法与高斯-牛顿法再同等条件下的迭代次数进行对比。以转换参数与真值之差小于1.0×10-9为迭代终止条件,两种方法迭代次数的对比情况如图1,图中,method1代表本发明提出的空间直角坐标转换参数计算方法;method2代表空间直角坐标转换参数的高斯-牛顿解法。横坐标表示试验编号,纵坐标表示迭代次数。
由图1可知,本发明提出的空间直角坐标转换参数计算方法较高斯-牛顿法具有更快的收敛速度。
实验结果表明,本发明提出的空间直角坐标转换参数计算方法是完全正确的、可行的,且具有较高的收敛速度。
本发明的内容不限于实施例所列举,本领域普通技术人员通过阅读本发明说明书而对本发明技术方案采取的任何等效的变换,均为本发明的权利要求所涵盖。