RVL(relative visual localization)
即帧到帧的匹配。包括VO和slam.
- VO、VIO: 光流法
- slam: 相比VO,增加了闭环检测和全局BA的特性,没有闭环的情况下就退化成了VO
RVL的主要问题是累计漂移,长距离航行需要漂移误差有界,而RVL解决不了这个问题。
AVL(absolute visual localization)
AVL的主要目标是根据无人机当前的观测,在地图中进行匹配,从而在地图中对自身位置进行定位。
现有的地图有两种:包括卫星地图和自行采集的地图
AVL的主要难点有两个:
- 如何减少在全局地图中匹配时的搜索空间
- 如何克服相机型号变化、四季变化导致的外观不一致问题
图象配准:
四种,包括:
- template matching(PC, NCC,MI)
- feature points matching(SURF ,SIFT,HOG, ORB, BRIEF)
- deep learning matching(DEEP-LK, VGG, UNET,cGAN,MSMT)
- visual odometry matching
template matching:
较早的工作,即密集匹配或者直接匹配,将无人机的观测作为模板在地图中进行匹配。
-
《Absolute localization usingimage alignment and particle filtering 2016》
NCC: normalized cross-correlation, 需要已知RGB相机的高度信息来指导模板尺寸
雅马哈直升机上测试,90 m×100 m, 误差 average 3.6 m ,maximum 12.5 m.
-
《Vision-basedabsolute localization for unmanned aerial vehicles, 2014》
相似性度量使用mutual information (MI), 误差RMSE: 经纬度:6.56 m / 8.02 m ,高度 7.44
-
《Illumination-invariant imagematching for autonomous UAV localisation based on optical sensing 2016》
基于光度不变的相位相关(illumination invariant Phase Correlation)的定位方案。
PC: Phase Correlation 是一种基于傅立叶变换特性的模板匹配或图像对齐方法
两幅相似图像之间的变换变换会在频域内产生线性相位差, 该算法对太阳位置引起的光照变化基本不敏感。基于此,作者提出了一个基于卫星图像模板匹配的AVL方案。
关于PC,NCC,MI的性能对比:1.31 m for PC, 2.19 m for NCC and 3.08 m for MI.
-
《Visual Localization for UAVs in Outdoor GPS-denied Environments 2019》
基于标准化信息距离(normalized information distanc, NID),这是从MI 中获得的。与MI不同的是,NID不依赖于图像之间的重叠量,因此对于定位应用来说更为健壮。该方法与网格搜索的结果相似,但计算量要少得多。
这项工作的主要限制是,其假设查询frame和参考图像之间的旋转变化为0。该定位方案在室外1132米的飞行轨迹上进行了测试,测试高度介于36米和42米之间,有六种不同的光照水平, 平均RMSE 1.6 m/0.88 m /1.17 m longitude/latitude/altitude
feature points matching:
是模板匹配的有效替代方式。根据性能并考虑其成熟度,这些方法似乎是无人机绝对视觉定位的SOTA。
特征点检测(角点、显著点检测) + 描述子提取(gradient histograms from SIFT and the binary tests from BRIEF),
大多数工作使用特征点匹配和统计滤波的组合来实现定位。
-
《Application of vision based techniques for UAV position estimation 2014》&& 《Geo-registration of aerial images using RANSAC algorithm 2016》
基于NCC的模板匹配方法 与 基于RANSAC的特征匹配(surf)的方法的对比。
NCC模板匹配方法首先对查询图像和地图做边缘检测,然后以查询图像为模板进行滑动窗口匹配。
RANSAC特征匹配方法使用surf特征点进行特征点匹配然后解算。实验结果表明定位精度很高,因为UAV的查询图像是从googlemap中随机选取然后经过旋转加噪声等模拟的。同时结果表明实NCC执行速度比RANSAC更快。然而,NCC对尺度变化、旋转、噪声和模糊非常敏感,而基于RANSAC的特征匹配算法则很鲁棒,接近作者得出结论,NCC更适合于旋转和尺度可以从其他来源获得的情况。
综上,NCC更适合于 旋转和尺度已知 的情况
-
《Google map aidedvisual navigation for UAVs in GPS-denied environmen 2015》 HOG+粒子滤波+光流
在40 m×225 m环境中运行的无人机的真实飞行数据进行了实验。 作者将他们的粒子过滤器解决方案与仅使用OF的解决方案进行了比较。 使用粒子滤波器获得的RMSE为6.77 m,使用仅光流获得的RMSE为169.19 m。
-
《Precise vision-aided aerial navigation 2014》
第一次飞行时长38.9公里,包括森林和城市地区。
第二次飞行时长26.5公里,仅在市区范围内。
仅使用2D-3D联络点方法,作者就每个飞行分别获得了13.98 m和10.52 m的RMSE。 通过添加geo-registered的特征跟踪,RMSE分别降至9.83 md和9.35 m
-
《A novel measurement model based on abBRIEF for global localization of a UAV over satellite images 2019》
作者基于Brief提出了abBrief描述子,在整个图像上随机选择了固定数量的像素对(跳过了关键点检测),而不是在特征点周围的区域中选择了像素对。 这将为每个图像生成一个全局描述符,并跳过了关键点检测以减少计算时间。
粒子滤波器,用于估计无人机在状态空间中的位置。距离模型仅由 粒子描述符和当前UAV图像描述符 之间的汉明距离组成。
本文还对现有定位方法的性能进行了对比
1.1km×1.1km地图, 最长轨迹(2.4KM)的平均误差为17.78m
-
《Localization of unmanned aerial vehiclesusing terrain classification from aerial images 2016》
基于地形分类的粒子滤波定位方法。地形包括:草、灌木、道路和建筑物。
没有用分割的方法,而是提取ORB描述子然后使用随机森林模型将orb描述子分类到4类别中的一个。地图和UAV查询图像都是用该方法进行地形分类。然后使用粒子滤波方法进行定位。该方法没有用到IMU数据,仅依赖于视觉方法。60m×100m,error: 9.5m
-
《Relative visual localization (RVL) for UAVnavigation 2018》
自己采集数据构建稀疏的特征点地图,用于和查询图像的特征子进行匹配,实现了二自由度的定位(x,y)。
在此架构下对多种特征点进行了实验(SIFT [89], SURF [93], KAZE [109], AKAZE [110], BRISK [111] , ORB),
ORB最佳,error of 68 m on a 4 km trajectory
-
《UAV navigation in GPS-denied environmentusing particle filtered RVL 2019》
上文的续集, 通过引入带有IMU的运动模型的粒子滤波器和使用基于投票的特征点匹配的衡量机制,进一步完善了之前的方法。
粒子过滤器允许将数据库的搜索空间减少到平均10张图像,从而大大减少了计算时间和假阳性率。这消除了计算时间对环境大小的依赖性,并实现了有限的执行时间。average error of 34 m on a 4 km linear trajectory with typical IMU noise.
-
《Conditional Probabilistic Relative Visual Localization for Unmanned Aerial Vehicles 2020》
上文的续集,提出了粒子滤波的条件判据,用于粒子过滤器的测量更新步骤中,以便考虑特征点的匹配质量。通过消除大多数剩余的假阳性特征点匹配,这种优化可以更快,更准确和更稳定地找到定位解。然后在此框架下重新对各种特征点进行了评估:
SURF最佳,error of 24.97 m on a 4 km trajectory
deep learning matching:
基于深度学习的定位研究还在初始起步阶段,主要原因是很难实现一个端到端的定位架构。RVL任务需要一个参考地图,而其查询地图是动态变化的,CNN在线训练速度(拟合速度)是不能满足要求的。对AVL任务来说,参考地图的尺寸太大,现有GPU的显存不能满足要求。此外,缺乏相关公开数据集。
-
《Convolutional neural network-based deep urban signatures with application to drone localization 2017》
提出了深度城市标志(deep urban signatures )的概念,CNN根据视觉外观来计算不同城市区域的独特特征。
该工作的目的是通过分类方法来探索不同城市区域或地区的结构与组织之间的差异(不同地区的城市发展规划(或缺乏规划)、发展速度、建筑材料等都可能存在显著差异。)
采用了分层定位机制,district-level localization , neighborhood-level localization.
- district-level localization:训练网络对七个区之一中的查询图像进行分类,以减少搜索空间
- neighborhood-level localization: 使用来自同一CNN的特征图执行最近邻搜索,用于查询图像和参考图像之间进行比较的特征图来自14th卷积层的输出。最接近查询图像的参考图像的位置被用作UAV位置估计。
对来自埃及开罗的七个不同区域的图像进行了实验。平均 区域分类精度为91.2%,平 均位置估计误差为200.75 m
该方法主要缺点是在使用重定位之前需要在特定区域的数据集上训练网络
-
《 deep cnn-based frame-work for enhanced aerial imagery registration with applications to uav geo localization 2018》& 《Aerial Imagery Registration Using Deep Learning for UAV Geolocalization 2020》
将传统计算机视觉(sift + orb)与CNN结合。基于卫星地图。
UAV的位姿追踪:每3帧进行一次UAV到地图的校准(sift特征+ransac),每帧计算前后序列帧之间的里程计,使用ORB + RANSAC
基于语义分割的后优化: 将查询图像和匹配到的地图区域进行语义分割(u-Net),得到建筑和道路区域,计算Hu moments 进行暴力匹配,选择最好的匹配用于优化单应矩阵。
两次实验:1.2 km and 0.5 km ,
基于特征点的匹配:误差 10.4 m / 6.3 m
加入了语义分割的后优化之后: 5.1 m / 3.6 m
-
《A multi-stage multi-taskneural network for aerial scene interpretation and geolocalization 2018》
用一个神经网络同时完成三个任务:经纬度坐标回归 , 道路分割,以及 UAV在观测图中的位置估计。
得到UAV位置后使用ICP进行后优化,将道路网络进行对齐。
地图70 KM * 70 KM,匹配视野100m * 100 m
问题:道路分割网络的使用将解决方案限制在城市地区;纬度度回归器必须在飞行前用飞行区域的图像进行训练。
实验结果:
Without alignment:96.84% of test locations had an error of less than 20 m.
With alignment : 94.56% of the test locations are within 2.5 m of the ground truth location,97.58% are within 5m.
-
《GPS-denied UAV localization using pre-existing satellite imagery, 2019》仅该方法有源码!
使用deep-lk算法,将AVL任务结合到VO中进行优化。依赖于VO因此只能减少漂移不能消除漂移。
实验: 1. 850m (高度200m) 2. 610m (高度220m)
x–y平均误差分别为7.06 m和25 m, 海拔高度的平均误差分别为7.01 m和7.70 m。
-
《Translating aerial images into street-map representationsfor visual self-localization of uavs, 2019》
基于条件生成对抗网络, cGAN以及模板匹配方法。作者有意避免将VO的任何概念嵌入其解决方案中,以便获得单纯的AVL方法
- 第一步:将当前UAV观测从图像转换为类似于地理地图(geographic maps)表示,即map-like image,而无需卫星图像覆盖。通过cGAN对图像分割为三类: 道路,建筑以及背景。
- 地图是预先生成好的,也是map-like image形式,然后和UAV的观测进行模板匹配,模板匹配技术使用归一化平方差(SSD)的方法。匹配阶段假定rotate和scale已知,因此需要根据ratate和scale将模板对齐后做匹配。
地图560m×680m,
实验: 1.61 km , 从地图中删除没有足够特征的图像,x-y的平均误差为22.7 m。 但是当考虑整个地图时,平均误差为40 m。
visual odometry matching:
VO不仅限于RVL方法,而且可以通过使用先前飞行中的数据扩展为构建AVL系统。
-
《GPS-denied UAV localization using pre-existing satellite imagery, 2019》
在上文deep learning matching中提到
-
《There’s no place like home: Visual teach and repeat for emergency return ofmultirotor UAVs during GPS failure, 2019》
提供了一种GPS失效后可以返回出发点的方法
可能的研究趋势;
- 航空影像专用的特征点(BRM):研究尚不多见,有待进一步探索
- 集成AVL的VO:即最后一种方法
- 深度学习方法具有局限性,AVL任务的固有特点使得泛化性很难保证
- 公开数据集和代码
- 嵌入式GPU的实现
- 超光谱AVL