本文内容来源于《测绘通报》2023年第2期,审图号:GS京(2023)0297号
李子彧, 周维勋, 耿万轩
南京信息工程大学遥感与测绘工程学院, 江苏 南京 210044基金项目:国家自然科学基金(42001285);江苏省自然科学基金(BK20200813);2021年江苏省大学生创新训练项目(202110300053)
关键词:卷积神经网络, 地理定位, 特征相似度, 类别筛选, 重排序
引文格式:李子彧, 周维勋, 耿万轩. 联合类别筛选与重排序的交叉视角图像地理定位. 测绘通报,2023(2):40-45. DOI: 10.13474/j.cnki.11-2246.2023.0038.摘要 :针对交叉视角图像视角差异大导致地理定位精度较低的问题,本文以孪生网络为基本结构,提出了一种基于相似度学习并联合场景类别筛选与重排序的定位方法。首先,对交叉视角图像进行相似度学习,并根据相似度大小对参考遥感图像进行排序;然后,通过训练SVM分类器获取地面图像与遥感图像的场景类别;最后,基于特征相似度并利用场景类别信息与重排序实现地理定位。试验结果表明,相比传统的基于特征匹配的地理定位方法,本文方法可有效提高交叉视角图像地理定位的精度,且类别筛选与重排序对于地理定位具有有效性。
基于图像的地理定位在自动驾驶、目标搜寻等领域具有重要的应用价值与前景。传统的地理定位方法一般是针对地面视角的图像,其弊端在于收集足够的图像数据并手工标注图像的位置信息需要耗费大量的人力、物力,且不同区域间的图像规模差异较大[1-2]。文献[3]首次提出采用交叉视角图像进行地理定位,其优势在于借助自带地理位置信息的遥感图像辅助地理定位,更易获取大范围的图像数据。
交叉视角图像地理定位大多是采用特征匹配的方式进行的,其流程如图 1所示。首先分别提取待定位地面图像和参考遥感图像库中所有图像的特征;然后依次计算地面图像特征与所有遥感图像特征的距离,并根据距离大小对遥感图像进行升序排列;最后选取前K%(0 < K≤100)的遥感图像得到候选图像库。其中,若与地面图像处于同一位置的遥感图像存在于候选图像库,则认为定位结果准确。
上述基于图像特征匹配的地理定位的关键在于如何获取有效的图像特征。卷积神经网络(convolutional neural network,CNN)相比传统的图像特征提取方法,能够提取图像的深层语义特征,具有良好的迁移性[4-6],因此越来越多地被应用于图像地理定位中。文献[7]利用CNN提取图像的全局和局部特征,并将两者融合,在提升局部特征关联性的同时,保留不同局部特征间的差异性,从而提高了定位精度;文献[8]通过训练深层网络提取图像的方位不变性特征,能够精确预测地面图像与航空图像的相对方位;文献[9]通过一种数据增加的方法训练孪生神经网络,使网络能够发现地面图像中不可视的目标,提高了定位精度。然而,由于地面图像和遥感图像拍摄时的视角差异较大[10],简单通过距离函数计算两者特征向量之间的距离难以准确衡量图像的相似性,从而导致基于图像特征匹配的地理定位方法精度较低。
针对以上问题,本文采用孪生神经网络对交叉视角图像进行特征相似度学习,并通过对地面图像和遥感图像进行类别筛选缩小定位范围,最终结合重排序方法提高定位精度。
本文图像地理定位方法主要包括3部分:交叉视角图像特征相似度学习、图像场景类别筛选及图像地理定位,具体流程如图 2所示。交叉视角图像特征相似度学习是以孪生神经网络作为基本结构,如图 3所示。该模型的输入为正(负)交叉视角图像对,其中正图像对表示两幅图像地理位置相同,负图像对反之。模型主干是两个网络结构相同但权值不同的CNN,分别用于提取遥感、地面图像的特征。对两幅图像的特征进行差值运算后输入至只包含一个神经元的全连接层中,对交叉视角图像特征间的差异进行相似度学习,最终通过Sigmoid函数输出图像对的相似度。本文采用组合对比损失函数L1和交叉熵损失函数L2进行训练,公式为式中,DW为图像特征向量之间的欧式距离;Y与y均为标签,若输入的是正像对,其值为1,否则为0;m为设置的阈值参数;为两幅图像的相似度。组合使用两个损失函数对模型进行训练,使模型能够更好地识别同一位置但不同视角的图像,同时区分不同位置的图像。对于交叉视角的定位而言,若地面图像和遥感图像来自同一位置,则两者对应的场景类别应保持一致。因此,通过特征相似度排序得到的定位结果中,实际上只有与地面图像同一类别的遥感图像,才可能是正确的定位结果。为了保证最终的定位结果中存在尽可能多的与输入地面图像代表同一地物类别的遥感图像,以提高定位精度,本文针对不同视角的图像特征,分别训练具有线性核的支持向量机(support vector machine,SVM)分类器,用于不同视角图像的分类。其具体流程为,首先采用图 3中的网络,对遥感、地面图像进行特征提取;然后利用这些特征分别训练针对不同视角图像的SVM分类器,如图 2中第②部分所示,在进行图像场景类别筛选时,对于不同视角的图像分别采用不同的SVM分类器进行分类,并只将与地面图像场景类别一致的遥感图像纳入感兴趣图像集合中;最后将感兴趣图像集合用于后续的重排序。对于一幅地面图像,首先采用图 3中的网络提取其与所有遥感图像的相似度序列,并进行降序排列得到遥感图像的排序结果;然后使用场景类别筛选的方法按顺序对排序结果进行验证,将场景类别匹配的结果作为感兴趣图像用于重排序,最终得到图像地理定位的结果,其流程如图 2中第③部分所示。重排序为图像检索领域常用的技巧[11],可有效提升感兴趣图像在检索序列中的排名,进而提高检索精度。相似的,若提升正确定位图像在排序结果中的位置,则可以提高模型的定位精度。借鉴这一思想,本文将重排序应用到交叉视角图像地理定位中。拓展查询(query expansion,QE)是一种常用的重排序方法。设置参数n,对于检索得到的前n个结果及输入的查询样本,计算所有样本的平均特征向量fQE,并利用平均特征再进行一次查询,公式为式中,q为查询样本的特征;fi为前n个检索结果的特征。对于交叉视角图像地理定位,考虑到不同视角图像特征间存在一定的差异性,使用不同视角图像的特征计算平均特征,会导致特征对地面、遥感图像的特征表达能力同时下降。因此,本文在求取平均特征时未代入地面图像特征进行计算,即令式(3)中的变量q为零向量;然后以平均特征作为输入,采用传统特征匹配的方式进行交叉视角图像地理定位试验,得到最终的定位结果。本文采用AiRound与CV-BrCT[12]两组图像库进行相关试验。AiRound图像库由分布在11个类别中的11 753幅图像组成,图像类别包括飞机场、桥梁、教堂、森林、湖泊、河流、摩天大楼、体育场、雕像、塔楼和城市公园。每个样本由1个三元组构成,代表同一地点的3个不同视角的图像,即地面拍摄的街景图像、航空图像及Sentinel-2卫星拍摄的多光谱影像。本文只选用地面图像和航空图像进行图像地理定位试验。CV-BrCT图像库由约24 000组图像对构成,分为公寓、医院、住宅、工业区、停车场、修道院、学校、店铺及空地,共9个城市地物类别,且主要分布在城市地区。一组像对由同一地点的鸟瞰视角图像和街景视角图像组成。本文采用前K%平均召回率(mean recall at top K%)作为图像地理定位的精度评价指标[8],该指标代表遥感图像序列前K%范围内能够正确定位的比例。对于参数K,本文设置为1、5、10、15、20。对于图 3中的交叉视角图像特征相似度学习网络,分别采用AlexNet[13]和VGG16[14]作为网络分支。将AiRound和CV-BrCT数据集按8∶2的比例划分训练集和测试集,其中训练集用于网络和SVM分类器的训练,测试集用于地理定位方法精度评价。训练时,对比损失函数的梯度权重为0.001,参数m为0.3,交叉熵损失函数的梯度权重为1,批量大小为64。网络训练结束后,基于分支网络分别提取两个视角图像的特征,再利用这些特征训练遥感、地面图像的SVM分类器,将线性函数作为SVM的核函数。场景类别筛选与重排序需要设置感兴趣图像数量n,对于数据量较小的AiRound数据集,设置参数n为1~8,而对于数据量较大的CV-BrCT数据集,设置参数n为1到64。计算平均特征向量时,遍历n的所有取值,并将每组试验所取得的最高定位精度作为最终结果。联合类别筛选与重排序方法取得的定位精度见表 1。该方法相比基于特征匹配方法的优势主要包含以下几点:首先,通过一个额外的全连接层对交叉视角图像特征进行相似度学习,敏感地捕获了特征差异中利于区分不同位置图像的细节信息,而基于特征匹配的定位方法只是简单比较了交叉视角图像特征间的距离;然后,采用场景类别筛选方法得到的感兴趣图像特征,为后续的重排序起到了较好的指示性作用;最后,采用拓展查询的重排序方法,保证模型在进行图像地理定位时,更偏向于先输出与地面图像场景类别匹配的遥感图像,从而提高定位精度。另外,将VGG16作为分支CNN提取交叉视角图像特征可获得更高的图像地理定位精度。为了验证类别筛选与重排序方法对于定位精度的提升,表 2—表 4分别给出了仅基于相似度学习、基于相似度学习和类别筛选、基于相似度学习和重排序方法的定位精度。表 3 基于相似度学习和类别筛选的定位精度
表 4 基于相似度学习和重排序方法的定位精度
由表 2和表 3可知,当参数K取值较小时,基于相似度学习和类别筛选方法取得的定位精度较高,这是因为该方法只能输出与地面图像类别一致的遥感图像作为定位结果,有效地提升了正确定位图像在排序结果中的位置。然而该方法的定位结果同时受遥感和地面图像分类精度的影响,当K变大时,定位精度提升幅度迅速降低。由表 2和表 4可知,在AiRound数据集上,基于相似度学习和重排序方法的定位精度较高;而在CV-BrCT数据集上,基于相似度学习方法的定位精度较高。分析原因可知,CV-BrCT数据集中代表公寓、住宅、学校、空地4种地物类别的遥感图像极为相似,因此排序结果中位置靠前的遥感图像可能只是与输入地面图像间的相似度较高,但与地面图像的类别并不一致,从而导致拓展查询方法计算的平均特征向量混入了多个场景类别的特征,造成精度的降低。结合表 1—表 4的结果可知,与基于相似度学习、基于相似度学习和重排序方法相比,联合类别筛选与重排序在参数K取值较小时,定位精度优于前两者,考虑到交叉视角图像地理定位的目的为尽量先输出与地面图像具有相同地理位置信息的遥感图像,本文认为联合类别筛选与重排序的定位方法更优。与基于相似度学习和类别筛选方法相比,联合类别筛选与重排序有效地改善了当K的取值变大时定位精度提升幅度迅速降低的问题。综上,可验证本文方法对于定位精度提升的有效性。表 5比较了本文方法与传统基于特征匹配方法在前1%平均召回率指标下取得的定位精度。其中方法1为采用本文训练的CNN进行交叉视角图像特征提取与匹配的方法,方法2为采用预训练的CNN进行交叉视角图像特征提取与匹配的方法。可以看出相比于预训练的CNN,将训练后的CNN用于图像地理定位可较大提升定位精度,而在此基础上,联合类别筛选与重排序的定位方法(即本文方法)可极大提升定位精度。表 5 联合类别筛选与重排序方法和传统定位方法的对比结果采用本文方法进行交叉视角图像地理定位的部分结果如图 4所示,自上而下采用的数据集与特征提取网络分别为AiRound-AlexNet、AiRound-VGG16、CV-BrCT-AlexNet、CV-BrCT-VGG16。可以看出本文方法能够在排序靠前的位置定位到同位置的遥感图像。为了提高传统交叉视角图像地理定位的精度,本文提出基于相似度学习并联合场景类别筛选与重排序的定位方法。相比传统的基于特征匹配的定位方法,本文方法在AiRound和CV-BrCT两个公开数据集上均取得了更高的定位精度。原因在于,本文方法通过CNN网络学习地面图像与遥感图像的相似度,一定程度上降低了视角差异的影响,从而能够更加准确地描述两者的相似性。此外,通过类别筛选与重排序,定位过程中能够确保同一位置的遥感图像尽可能排在前面,最终提高了定位精度。然而该方法还存在一定局限,对于没有类别信息的图像库不能进行类别筛选。下一步将研究如何降低视角差异的影响,进一步提升定位精度。
作者简介:李子彧(2000-),男,主要研究方向为遥感图像检索。E-mail:2839887949@qq.com通信作者:周维勋。E-mail:zhouwx@nuist.edu.cn