给定一张目标图像,图像定位(Image-based Localization)技术旨在不借助GPS等额外信息的情况下估计出图像所在的地理位置,该技术被广泛应用于SLAM、AR/VR、手机拍照定位等场景。经过搜索发现图像定位有几个方向。
1.基于图像检索的
2.基于2D-3D匹配的
3.Cross-view geo-localization(交叉视角地理定位)
Image-based localization必须基于某位置确定的比对数据库,比如带有地理位置标签的街景照片库,已知位置的地标3D模型、卫星地图(与上述三个方向对应)。其中1和3分别可以看作是ground-to-ground的geolocalization方法和Ground-to-Aerial Geolocalization方法
1.其中基于图像检索(Image Retrieval)属于Visual Localization(视觉定位)范畴,常借助于谷歌街景(Google Streat View,GSV)(相近视角)与谷歌卫星地图(跨视角,Cross-view image geo-localization)。
这种技术存在的原因在于卫星定位最少需要四个可见卫星,而在高层建筑很多的城市中卫星信号会出现问题,导致卫星定位精度不够(论文原句是手机GPS不超过百米误差)。因此基于图像的精确定位便被提出。
刚开始的工作基本上基于谷歌街景,通过摄像机照片与谷歌街景进行特征匹配(常用SIFT特征、SURF特征),一般用相近视角,待匹配数据库为带有GPS、位姿信息的图像库,该数据库数量庞大,检索工作量巨大。因此有各种缩小匹配范围的方法被提及,如[1][2]等.这些方法使用传统的点特征匹配技术,使用BOF(Bag of Feature,类似于词袋Bag)。也有一些特殊的方法,比如[3]针对地标建筑,利用地标建筑的图像进行三维重建,将重建后的三维模型进行投影得到2d图像特征,再与查询图像进行匹配,或者[4]在定位的时候顺带重建一下。
上述方法都是用传统图像匹配,后续也有很多基于深度学习的图像匹配,如基于NetVLAD[5]的各种方法
2.基于2D-3D匹配的方法,是对地标进行建模,然后把模型投影到标准的视角照片上,再根据这些进行图像检索或匹配。
而2D-3D匹配,在基于点云地图的SLAM定位中也有很多论文,这些论文都可以看作是基于点云的视觉重定位方法,基本都使用深度学习方法,有的[6]是通过相机图像与Lidar映射到的Range image进行匹配,基本的实验都是在建立点云地图的路径上重新跑一遍,将点云映射到某位姿的视角上,从而映射为深度图(2D);有的是直接对点云与相机图像进行数据关联,如[7]设计triplet - like网络,分别提取图像SIFT特征与点云ISS特征,再取特征周围的图像、点云子图送入网络,进行训练或识别匹配。这样基于点云地图的是另一个范畴的:基于地图的视觉定位。
3.基于Cross-view的方法,在深度学习流行起来之后变得越来越有效果,因为普通的使用人造特征点(SIFT特征)进行匹配的方法无法在aerial和ground图像之间建立联系,而深度学习可以,比如利用Transformer进行匹配的[8]等,常用的数据集为CVUSA、CVACT,空中地图基本来源于谷歌卫星地图。
[1]Salarian, Mahdi. “Accurate Localization in Dense Urban Area Using Google Street View Image.” arXiv: Computer Vision and Pattern Recognition, Dec. 2014.
[2]Salarian, Mahdi, et al. “Improved Image Retrieval for Efficient Localization in Urban Areas Using Location Uncertainty Data.” World Academy of Science, Engineering and Technology, International Journal of Computer and Information Engineering, Oct. 2016.
[3] Mobile Landmark Search with 3D Models
[4]
[5]NetVLAD: CNN architecture for weakly supervised place recognition
[6]i3dLoc: Image-to-range Cross-domain Localization Robust to Inconsistent Environmental Conditions
[7]2D3D-Matchnet: Learning To Match Keypoints Across 2D Image And 3D Point Cloud