无人机机载相机曝光时刻摄影中心三维坐标高精度插值算法研究
2020-01-08库新勃邓岩高晓唐新庄
库新勃,邓岩,高晓,唐新庄
(1.中国电力工程顾问集团西北电力设计院有限公司,陕西 西安 710032; 2.中水北方勘测设计研究有限责任公司,天津 300222)
0 引 言
随着测绘高新技术的快速发展,传统的测绘行业正迅速向地理信息产业转化[1],基础测绘的生产主体已发生革命性变革,卫星遥感测量与航空摄影测量将成为地理信息的主要获取方式[2-5].较之传统的遥感测量与大飞机航测,无人机具有成本低、灵敏度高、机动性好、运输方便等优点,已逐渐发展成为航空摄影测量的重要手段[6-7].无人机定位定向系统(POS)集相位差分全球卫星导航系统(GNSS)技术与惯性导航系统于一体,可高精度获取航摄像片的位置元素与角度元素[8],为无人机高精度测图提供了作业基础.
由于无人机常采用小像幅非量测相机,导致后期空中三角测量解算需要较多的地面像控点来保证精度[9],外业工作量显著增加,也不利于无人机摄影测量的应用推广.GPS辅助光束法平差是解决上述问题的有效途径[10],即通过机载POS系统高精度获取像片的定位定姿元素.需要说明的是,像片的位置信息主要指相机曝光时刻摄影中心的坐标信息,而曝光时刻的时间精度一般优于千分之一秒.由于无人机搭载的GNSS接收机的采样频率有限(一般为20~50 Hz),更高的采样频率将对GNSS接收机硬件与软件提出更高的需求,因此,曝光时刻的位置信息需通过数据插值的方式来获取.本文采用四种常用的数据插值算法,对GNSS无人机动态观测数据进行插值计算,并对结果进行对比分析,确定适用于无人机高精度动态定位的插值算法,并通过数理统计方法对该方法的有效性进行验证.
1 无人机轨迹插值算法
插值算法较多,但考虑无人机的运动特性,本文采用四种插值算法对无人机轨迹进行数据插值.
1.1 线性插值
线性插值法(Linear interpolation)本质上是利用两个已知点确定直线方程进而确定未知量的值,常用于通过已知函数f(x)在两点的值近似获得其他点的数值[11].根据罗尔定理,线性近似值的误差随着二阶导数的增大而增大,即函数曲率越大,简单线性插值近似的误差也就越大.
1.2 最邻近插值
最邻近插值(Nearest interpolation)本质上就是通过计算待定点与周边已知点的距离,直接选取距离最近点的数值赋予待定点[12],该方法计算量较小,插值速度最快. 当已知点分布较为均匀且间距较小时,该方法可以取得较好的效果.若数据发生突变或已知点分布不均匀时,该插值方法易出现不连续情况,导致数据细节严重失真.
1.3 分段三次样条插值
为方便研究,直接给出插值多项式余项公式:
(x-xn),ξ∈(a,b).
(1)
由式(1)可知,余项的大小既与插值节点个数有关,也与函数的高阶导数有关.换言之,适当提高插值多项式次数有利于提高插值精度,但并非多项式次数越高,插值效果越好.研究结果表明,高次多项式并不能保证非节点处的插值精度得到改善,节点处更易发生Runge现象.
为避免Runge现象,可采用分段插值的方法,即将插值区间分成若干子区间,依次对每个小区间进行插值.分段三次样条函数(Cubic Spline interpolation)就是满足在每个子区间都是三次多项式[13],用S(xi)表示在子区间的表达式:
S(xi)=ai0+ai1x+ai2x2+ai3x3,
(2)
式中,ai、ai1、ai2与ai3为多项式系数.确定4个系数后,即可确定该子区间多项式的表达式.
如果S(xi)是原始函数的三次样条插值函数,则其必满足以下条件:
S(xi)=yi,i=0,1,…,n,
(3)
S(xi-0)=S(xi+0),i=1,…,n-1,
(4)
S′(xi-0)=S′(xi+0),i=1,…,n-1,
(5)
S″(xi-0)=S″(xi+0),i=1,…,n-1.
(6)
其中,公式(3)为插值函数均需满足的插值条件,公式(4)~(6)则为三次样条函数需满足的连续性条件.三次样条插值函数的优点在于其函数值在整体上可很好地逼近已知数据,相应的导数值也收敛于被插值函数的导数,同时不会发生Runge现象,因此,在计算机辅助设计中有较为广泛的应用.
1.4 分段三次埃尔米特插值
若已知插值点的函数值和一阶导数值,则构造一个三次函数,使其在插值点的函数值与一阶导数值均与已知值相等[14],即为分段三次埃尔米特插值(Cubic Hermite interpolation)多项式:
(7)
2 实验数据与结果分析
采用飞马固定翼无人机(F200)于2018年9月6日在陕西省渭南市东北部进行航空摄影测量,飞控平台POS系统自动记录GNSS动态观测数据,基准站接收机于地面固定点采集GNSS静态观测数据,采样频率20 Hz,卫星截止高度角设定为10°,采用Trimble Business Center 4.0进行GNSS动态定位解算(总计45 420历元).为检验不同插值算法在无人机高动态定位领域的适用性,将GNSS动态定位解抽稀为1 Hz(总计2 272历元),采用不同插值方法对抽稀后的动态定位解进行数据插值(插值间隔0.05 s),通过对比原始观测数据动态定位解算结果与插值结果,分析比较不同插值方法的适用性.
(a)线性插值 (b)最邻近插值
(c)三次样条插值 (d)三次埃尔米特插值图1 不同插值算法平面方向插值结果
(a)线性插值 (b)最邻近插值
(c)三次样条插值 (d)三次埃尔米特插值图2 不同插值算法高程方向插值结果序列图
图1和图2分别为不同插值算法在平面与高程方向插值结果,由图可知,尽管不同方法插值算法有所差别,但由于横纵坐标轴间距较大,不同方法插值结果基本接近,无显著差别.为对比不同算法的细微差别,将四种插值结果分别与原始观测数据解算的真值进行同历元求差,误差序列如图3所示.
(a)线性插值 (b)最邻近插值
(c)三次样条插值 (d)三次埃尔米特插值图3 不同插值算法插值结果与真值结果三维对比图
尽管不同插值算法插值结果整体趋势与实际飞行轨迹基本一致,但由于插值算法自身的局限性,导致插值历元的插值结果与真值有所差异.由图可知,线性插值算法与最邻近插值算法插值结果与真值的差值较大,在三维方向均有米级偏差,个别历元甚至出现了大于2 m的偏差.而采用三次样条插值与三次Hermite插值算法得到的误差分布图明显更加集中,偏差量级一般为厘米级.对四种插值结果误差序列进行统计,结果如表1所示.
表1为不同插值方法在北、东、高程三方向误差统计结果.表中分别罗列了误差的极限值(极大值与极小值)和均方根误差(RMSE).由表可知,线性插值与最邻近插值部分历元的误差大于1 m,导致其RMSE值也明显增大.而三次样条插值与三次埃尔米特插值的误差序列,除极个别历元误差值大于0.5 m,大部分历元插值误差小于0.1 m,其在三维方向的RMSE值不大于5.5 cm,三次样条插值误差的RMSE值优于3.5 cm.
表1 不同插值方法误差结果统计表
分析原因可知,线性插值与最邻近插值尽管计算速度快,但忽略了无人机真实运动轨迹的细节,仅通过简单的插值方法获取插值点的数值,导致插值数值与实际真值存在较为明显的差异,无法满足高精度无人机动态定位的需要.三次样条与三次埃尔米特插值方法,采用分段插值的思想,可有效避免插值节点的Runge现象,插值精度显著提高.三次样条插值函数考虑了二阶导数的连续性,使插值曲线与运动轨迹更加符合,比三次埃尔米特插值方法,插值精度进一步提高.
3 结 论
本文基于固定翼无人机动态观测数据进行后处理解算,采用四种不同的插值算法对抽稀的动态定位结果进行数据插值,通过对比插值结果与实际动态解的误差序列分析不同插值算法的优劣.结果表明,简单线性插值与最邻近插值算法速度快,但插值精度低,无人机轨迹的细节无法获取.分段插值算法适用于无人机动态定位,较之分段三次埃尔米特插值,分段三次样条插值算法考虑了轨迹曲线的二次导数连续性,因此,其插值结果更符合真实轨迹,当原始数据采样频率高于1 Hz时,其插值精度优于5 cm,因此,三次样条插值函数更适用于无人机相机曝光时刻摄影中心三维坐标的高精度插值.