无人机拥有庞大的市场,在多个应用场景下发挥着重要的作用.无论是第一产业中的精准农业[1],还是第二产业中的遥感监测[2],亦或是第三产业中的观赏娱乐,都有无人机存在的身影.在这些应用中,如何确定无人机的位置是一个基础性问题.一般在室外场景中,全球导航卫星系统(GNSS)已经成为无人机的标配,然而由于GNSS系统依赖于电磁信号,容易受到干扰导致其失效,因此在很多场合并不能保证GNSS系统所获得的无人机位置的正确性,有必要通过其他手段获得无人机的位置信息.基于视觉的无人机定位方法是目前比较流行的辅助定位方法.采用同时定位与建图(SLAM)的方法可以确定无人机的位置,如文献[3-6]所提出的SLAM算法,然而这种方法只能获得无人机相对于初始位置的相对位置,并不能像GNSS那样获取无人机的绝对位置,并且该方法本质上是一种里程计技术,持续运行会存在累积误差;因此,图像匹配,即将无人机拍摄的图像(航拍图像)与基准图像进行匹配而确定无人机绝对位置的方法得到了广泛应用.此类方法可以利用基于视觉的方法而不通过GNSS系统确定无人机的位置,在无GNSS或弱GNSS环境下有良好的效果.采用特征匹配方法进行图像匹配是目前最广泛应用的方法,常用的特征描述符包括尺度不变特征变换(SIFT)[7]、加速稳健特征(SURF)[8]、定向快速和旋转描述子(ORB)[9]等点特征描述符,线带描述符(LBD)[10]等线特征描述符,以及几何不变矩等区域特征描述符.例如文献[11]在光流跟踪的基础上,利用梯度方向直方图(HOG)实现航拍图像和谷歌地图(Google Map)的匹配,通过粒子滤波获得无人机的位置.文献[12]通过卷积神经网络提取深度特征,实现航拍图像与带有地理信息与数字高程模型信息的卫星图像的匹配,实现无人机的定位.但是利用特征匹配方法进行图像匹配仍然存在不够鲁棒、容易失败、精度和鲁棒性较低等缺点,尺度和旋转等差异很容易影响特征匹配的正确性.随着深度学习的热度兴起,将深度学习与图像匹配结合的方法研究与日俱增.文献[13]将不同季节、光照及天气下的卫星图像作为训练集,训练出一个可以将航拍图像和卫星图像进行匹配的卷积神经网络(CNN),并将其与视觉里程计(VO)结合,使用光束平差法(BA)消除误差.文献[14]提出一种在VO的基础上使用神经网络对图像进行语义分割,获得建筑的语义特征,基于形状匹配确定无人机位置的方法.但是上述方法均须要已知初始无人机的GNSS位置.针对上述方法存在的问题,本研究提出一种在城市无GNSS或弱GNSS环境中采用图像匹配方式获得无人机的绝对位置的方法.本方法只需高度计和相机两种传感器,不依赖于精确的无人机初始位置,仅须保证无人机在参考卫星图像所包含的区域内即可.以VO为框架,利用CNN处理航拍图像和参考卫星图像,通过语义分割提取其中的建筑区域,根据生成的建筑语义二值图中整体建筑物的排列特征,实现无人机的初始化,并基于最近点迭代(ICP)点云配准[15]实现定位.若无人机出现位置丢失的情况,则可以直接利用初始化算法重新计算其位置.1 基于语义分割图像匹配定位框架本研究所提出方法的整体框架如图1所示.假设相机位置即代表无人机位置,整体算法的输入为参考卫星图像、航拍图像及无人机的飞行高度.在初始化阶段,将初始航拍图像和参考卫星图像进行语义分割之后,通过初始化算法估计无人机的初始绝对位置和航向,此过程在图1中以虚线表示,即对初始航拍图像的操作.以初始化算法计算的无人机位置为起点,利用视觉里程计估计无人机每个图像帧之间的相对位置和航向.每隔一段时间利用U-Net语义分割算法提取航拍图像中的建筑信息,获得仅有建筑特征的二值图.将二值图中的每个建筑表示为二维点从而形成二维点云,利用高度计提供的高度,将航拍图像的二维点云变换到与参考卫星图像中建筑构成的二维点云相同的尺度.以视觉里程计获得的局部位置作为初值,采用ICP点云配准算法实现无人机绝对位置和航向的估计,获得的绝对位置作为视觉里程计局部位置的参照.此过程在图1中以实线表示.下面对框架中的每个部分进行介绍.10.13245/j.hust.221108.F001图1基于语义分割的城市航怕图像匹配定位方法框架1.1 系统输入两种不同源图像的配准是解决航拍图像定位的关键.算法的输入端存在两种不同源的图像,即航拍图像(U)和参考卫星图像(R),航拍图像匹配定位方法的关键即为实现航拍图像和参考卫星图像之间的配准.将航拍图像的每一帧图像用Ui表示,本研究假设Ui为完全俯拍图像且完全在参考卫星图像的范围之内.对于参考卫星图像,每个像素的经纬度坐标均为已知量.在图像匹配成功之后,可以确定航拍图像的中心像素在参考卫星图像中的位置,即为无人机在世界坐标系下的经纬度坐标.无人机的高度计可以测量无人机的高度.在无人机飞行过程中,无人机高度h和拍摄图像分辨率G之间的关系为h=f G/a,式中:f为相机焦距;a为感光元件尺寸大小.在已知相机各项参数和无人机飞行高度的条件下,计算得到航拍图像的分辨率.根据已知的参考卫星图像分辨率计算参考卫星图像和航拍图像之间的尺度因子为σ=GU/GR,其中:GU为航拍图像分辨率;GR为参考卫星图像分辨率.1.2 视觉里程计相邻帧Ui和Ui+1之间的位姿变换须要通过视觉里程计进行计算.由于连续两帧的图像一般不会发生显著变化,因此两幅图像可以进行特征点的提取和匹配.不同特征描述符(如SIFT,SURF,ORB等)都有自身的特点,由于ORB特征具有一定的旋转和尺度不变性,计算速度较快,并且应用较为广泛、使用较为便捷,因此对两幅图像提取ORB特征点且计算其描述子,根据描述子的距离进行暴力匹配,之后对匹配点对通过k近邻(kNN)方法进行筛选,以去除外点.图2展示了两幅相邻图像采用ORB特征进行提取和匹配的结果.10.13245/j.hust.221108.F002图2相邻帧的特征点提取和匹配结果对于相机高度,虽然有地面建筑的影响,但是其拍摄场景依然可以近似为平面,因此可以使用单应性矩阵描述处于共同平面上的一些点在两张图像之间的变换关系.具体来说,对于相邻帧Ui和Ui+1的某对匹配好的特征点像素坐标p1和p2,可以用单应矩阵Η表示两者的关系,即p2=Ηp1.利用匹配成功的特征点通过直接线性变换法可以计算单应矩阵H,之后可通过数值法或解析法对H进行分解,得到两帧之间相机运动相应的旋转矩阵R及平移向量t.尽管无人机在进行3D运动,然而在其飞行高度已知且相机光轴垂直地面的条件下,单应矩阵会出现过参数的情况,所以采用sRt模型来表示特征点对之间的关系,包括尺度因子s、二维平移量t2d和二维旋转矩阵R2d(代表围绕光轴的旋转).因此对于相邻帧Ui和Ui+1的某对匹配好的特征点像素坐标p1和p2,使用sRt模型可表示为p2=sR2dp1+t2d.根据点与点之间的对应关系计算的二维旋转矩阵和二维平移量可以恢复两帧之间的相机运动.相比单应矩阵,sRt模型更加简洁,减少了计算量,适用于本研究的场景应用.1.3 图像语义分割在无人机飞行过程中,每隔几帧取出一帧航拍图像通过U-Net进行语义分割,同样提前将参考卫星图像进行语义分割并预置在系统中.考虑到参考卫星图像为已知信息,也可以对其直接进行人工语义分割.U-Net最初在生物医学图像分割中的表现优异,之后也被应用于遥感图像分割等任务中.U-Net可以利用较小的数据集通过数据增强获得较好语义分割结果,并且可以对每个像素点进行分割,实现更高的分割准确率.图3展示了航拍图像及对其进行语义分割后的图像.10.13245/j.hust.221108.F003图3航拍图像及其语义分割后的结果在进行图像语义分割后获得航拍图像Ui的建筑语义二值图Ti,对其进行形态学处理以消除噪声分割.同样将此操作应用于参考卫星图像的建筑语义二值图T.1.4 参考区域确定无人机的飞行过程中须要和参考卫星图像进行匹配,对于采用的二维点云ICP配准方法,需要较为合理的初值设置,可以根据之前的定位结果,确定航拍图像在参考卫星图像上匹配的参考区域,以缩小搜索范围,减少计算量.在系统进行VO的过程中,可以确定参考区域r为r=R(xi,σUh+a,σUw+b),式中:R为参考卫星图像;xi为经过VO计算后相机在参考卫星图像中的像素位置;σ为尺度因子;Uh为航拍图像高度;Uw为航拍图像宽度;a和b为阈值.该式表示在参考卫星图像中选择一个以xi为中心,长、宽与参考卫星图像的长、宽平行,长度为Uw和Uh的矩形区域作为参考区域.1.5 初始化建筑语义二值图T和Ti的建筑物区域的灰度为非0值,其他区域为0值.对于航拍图像和参考卫星图像形成的建筑语义二值图上的每个建筑区域,提取质心,由此形成两个不同大小的点集Q=q1,q2,…,qn和Q'=q1',q2',…,qm'.在提取质心的过程中,去除建筑面积较小的建筑区域的质心,进一步去除噪声.对于Ti中n个点中的每一个点qk,找到其最近的点qk',建立向量关系qkk'=qkqk'⃗,并根据尺度因子σ将其放缩为与参考卫星图像同一尺度,那么对于某张二值图Ti,可以使用Ei表示其中的建筑分布特征信息,即Ei=σq11',q22',…,qnn'T.同样,使用E表示参考卫星图像的建筑语义二值图T的建筑分布特征信息,即E=q11'',q22'',…,qmm''T,式中m为T中提取的点集的大小.根据sRt模型的思想,对于Ei中每个元素σqkk',寻找到E中某个元素qkk''满足σqkk'-qkk''δ构成一个向量对,其中δ为阈值.在得到h(h≤n)个向量对之后,可以根据每个向量对之间的关系,计算航拍图像和参考卫星图像在像素坐标系下以sRt模型表示的关系为Mi(i=1,2,…,h),Mi中包含二维平移量t2d,i和二维旋转矩阵R2d,i.为获得最优的M,寻找Ti中每个点qk通过Mi变换到T中后距离其最近的点ql',计算两者距离并求和,其中最小的值对应的关系M*即为航拍图像和参考卫星图像之间的关系,可表示为M*=arg minM∑k,lM(σqk)-ql',式中k和l为前述满足Ti中点通过M变换到T中后得到的距离最近点的点对标号.因此,根据两张图像中建筑表现出的排列规律,可以实现两张不同源图像的配准.这种方式可以在初始无人机悬停阶段对其绝对位置和航向进行估计,获得无人机的初始绝对位置和航向,为后续的定位过程做好准备;同时,此方法理论上也可以应用于无人机在飞行过程中无法确定自身位置和航向的情况中,实现无人机的重定位.1.6 ICP配准定位由于视觉里程计在运行一段时间后会产生漂移,因此每隔几帧可以利用航拍图像和参考卫星图像配准消除视觉里程计的影响,并且提供此时无人机的绝对位置.根据以上所述,航拍图像和参考卫星图像在经过语义分割形成建筑语义二值图后,其建筑信息可以表示为两个点集Q和Q'.对于两个点集的配准,可以采用二维ICP算法实现.尽管ICP算法对于初值较为敏感,然而短时间内视觉里程计提供的位置完全可以作为ICP算法的配准初值.利用上述参考区域确定的方法,可以在参考卫星图像中划定匹配范围,减少总体点云匹配的数量,提升效率并提升匹配精度.在ICP配准过程中,以Q中的点为源点云,以Q'中位于参考区域r中点r1,r2,…,rrT(r≥n)为目标点云,定义经过变换后的所有最邻近点对之间欧式距离的和为误差函数E(R2d,t2d),可以将两个点集配准定位问题描述为{R2d*,t2d*}=arg minR2d,t2dE(R2d,t2d)=arg minR2d,t2d∑i=1nri-σ(R2d∙qi+t2d)2,式中ri为qi经过变换后在r中的最近邻点.那么可以选取适当的阈值计算两个点集之间的位置关系,从而恢复无人机此刻的绝对位置和航向.2 实验与分析由于图像匹配定位问题并没有统一的数据集,因此须要构建一个无人机搭载单目相机进行俯视拍摄,同时须要制备基准图并获取真实的绝对位置作为参考的数据集.本研究所提出的方法直接使用卫星图像作为基准图,省去了基准图的制备过程,在实验过程中利用谷歌地球的3D飞行模拟器功能.选择美国德克萨斯州奥斯汀市中心城区俯视拍摄飞行3 min,飞行高度200 m,飞行距离1 600 m.解析的每张航拍图像的像素为1 280×720,均具有具体的真实经纬度信息,从而对算法结果进行评估.U-Net的训练集选取自Inria aerial image labeling dataset for buildings[16],其中包括180张5 000×5 000像素的带有建筑标签的遥感图像.从中选择除去奥斯汀地区图像的其他144张图像作为训练集.在每张原始遥感图像中提取5 000张320×320像素的图片,随机进行旋转和亮度改变,以使结果具有更好的鲁棒性.训练时使用的优化器为RMSprop(均方根传播),初始学习率为1×10-4,学习率衰减为0.98.训练直到准确率达到0.95,存储此时的网络权重.将航拍图像同样分割为320×320像素的图片,并放入网络中进行预测,之后拼接为完整的图像.参考卫星图像选用Inria aerial image labeling dataset for buildings中奥斯汀地区的遥感图像.2.1 初始化在Google Earth中采集多张飞行高度为300 m与200 m的图像,利用初始化算法在给定的参考卫星图像中确定航拍图像的所处位置.图4为初始化的结果示意图,图中:上方图像为航拍图像的原图;下方图像中红色框为通过初始化算法获得的航拍图像位置;红色点为初始化算法中对应最优关系M的向量端点;蓝色点为航拍图像中其余建筑.10.13245/j.hust.221108.F004图4初始化结果示意图在同一地点采用不同高度拍摄的图像进行测试,部分结果如图5所示.图5(a)和(b)所用的航拍图像为在同一地点拍摄,图5(c)和(d)分别为另外的不同地点,图5(a)的拍摄高度为200 m,图5(b)~(d)的拍摄高度为300 m.10.13245/j.hust.221108.F005图5不同地点与高度拍摄图像的初始化结果对共计五对同一地点不同高度的航拍图像进行初始化测试,结果均初始化成功,即初始化计算位置与真实位置的距离不超过15 m,角度差不超过10°,说明算法具有一定的鲁棒性.2.2 无人机定位以一个简单的基于ORB特征的VO为框架,通过sRt模型确定相邻帧之间的位置和航向,每隔5帧,将航拍图像和参考卫星图像的建筑信息点集进行ICP配准定位,获得无人机的绝对位置和航向.不同方法计算的轨迹及真实轨迹如图6所示,图中:红色线为仅使用VO获得的无人机位置轨迹;绿色线为利用ICP配准定位方法获得的无人机位置轨迹;黑色点划线为无人机真实飞行轨迹.由于语义分割不能完全提取所有建筑物,且图像经过形态学处理,两个点云在匹配过程中存在一定误差,不一定完全重合,因此出现了如图6所示的锯齿状轨迹.如果仅使用VO进行无人机定位,那么结果会出现较大漂移,完全发散.而在加入ICP配准算法后,可以降低无人机位置的估计值与真实值之间的误差,计算得到此算法绝对轨迹误差(ATE)的平均误差为12.75 m.10.13245/j.hust.221108.F006图6不同方法计算的轨迹及真实轨迹的对比3 结语本研究提出一种在城市中利用航拍图像和参考卫星图像进行匹配定位的方法.通过语义分割方法将图像匹配转化为二维点云匹配,在无人机仅搭载相机和高度计的条件下,可实现在无GNSS或弱GNSS条件下的绝对定位,获得绝对位置.在由谷歌地球制作的数据集上展示了此方法的有效性.在未来的工作中,可以考虑增加更多的语义分割类,以实现更鲁棒的无人机定位效果.
使用Chrome浏览器效果最佳,继续浏览,你可能不会看到最佳的展示效果,
确定继续浏览么?
复制成功,请在其他浏览器进行阅读