侯建行,陈 颖,李 翔,李铖昊
(上海应用技术大学 计算机科学与信息工程学院,上海 201418)
遥感图像配准就是将不同环境(时间、角度、传感器的变化)下的两幅或多幅图像几何对齐的过程。这是一项重要的任务,因为该技术在处理自然灾害、追踪地球表面环境变化、预估长时间跨度气候变化等方面是非常重要的。配准方法主要有传统的经典算法和端到端深度学习算法。
近年来,卷积神经网络[1]的发展,在遥感图像配准领域取得了重大进展。Yang等[2]提出使用VGG(visual geo-metry group)网络作为图像的特征提取网络,通过增加可靠特征点数量来限制错误匹配。Kim等[3]提供了一种预训练的残差网络,从遥感图像中提取特征,并利用皮尔逊相关法改进匹配关系来适应时间和天气对图像的影响,取得了不错的配准效果。Rocco等[4]提出的领域一致性网络采用一系列4D卷积核来细化相关图,这些核被训练以捕获两个不同图像之间的匹配模式,并且在过滤不正确匹配时非常有效。4D卷积消耗大量内存,执行时间长。为了解决这些问题,Rocco等[5]提出稀疏领域一致性网络创建了稀疏4D匹配张量,并使用子流形稀疏卷积进行处理。卷积神经网络通过卷积核提取图像特征,然而传统卷积核感受野很小,难以提取全局上下文信息,采用堆叠卷积层来增加感受野的方式很低效。在2020年,自然语言处理领域见证了变压器(Transformer)在强大语言建模架构[6]中的兴起,该架构以可扩展的方式触发远程交互。自注意力模块可以有效捕捉全局上下文信息,获得到更大的感受野。受此引导,提出残差网络与Transformer模块集成的新颖特征提取架构,并提出四重注意力机制融入该架构,该方法验证了对于具有复杂背景杂波和较大类内变化的遥感图像,其具有强大的鲁棒性。
卷积神经网络架构设计是基于离散卷积算子(例如,3×3或5×5卷积),这有效地施加了空间局部性和平移等方差。然而,有限的卷积感受野阻碍了全局依赖的建模。Transformer自注意力机制已经在各种自然语言处理任务中取得了令人印象的成绩[6]。研究界开始关注视觉中Transformer,卷积神经网络和Transformer模块相结合不断取得突破[7-10],推动了视觉任务的发展。Dosovitskiy等[11]提出视觉Transformers(visual transformers,ViT),证明了Transformer架构在计算机视觉任务中的有效性。然而,训练一个好的ViT模型需要大量的训练数据集,其计算复杂性太大。Liu等[12]提出Swin Transformer,使用移动窗口和局部窗口的自注意力方法,降低了计算复杂性。
近年来,注意力机制已广泛应用于许多计算机视觉任务,注意力模块有助于保留上下文信息,并且可以精炼感知信息。Woo等[13]提出的卷积注意力模块(convolutional block attention module,CBAM)组合通道注意力和空间注意力,以自适应地捕获上下文信息,使得网络更加关注感兴趣的区域,从而提高了网络的性能。Cao等[14]提出了全局上下文网络,一种与压缩和激励网络[14]结构集成的新型非局部模块,使用一组复杂的基于置换的操作来减少特征映射。Misra等[15]引入了三重注意模块(convolution triple attention module,CTAM),旨在捕捉维度依赖关系来计算注意权重。它通过旋转操作和残差变换建立跨纬度交互信息,能够以可忽略的计算成本来提供显著的性能增益。
提出的遥感图像配准算法结构如图1所示,主要包括特征提取、特征匹配、参数回归和经过仿射变换得到的配准结果。
图1 算法结构
2.2.1 混合网络结构
结合Transformer和预训练残差网络(Resnet101)用来遥感图像特征提取。自注意力机制有效抓捕全局上下文信息,预训练残差网络丰富了特征提取。
传统的Transformer在计算自注意力机制时,所有成对查询键都是独立学习的(包括独立的查询点(queries)和所有键(keys)),没有探索相邻键之间的丰富上下文,严重限制了基于自注意力在2D特征图的视觉学习能力。Li等[16]提出上下文Transformer(contextual transformer,CoT),充分利用了相邻键之间的丰富上下文关系。受此启发,提出了一种新颖混合网络结构,即卷积和遥感上下文Transformer(convolution and remote sensing contextual Transformer,CRCoT),CRCoT替换Resnet101残差块,可以提取遥感图像全局和邻近上下文信息。混合网络结构块如图2所示。它可以利用卷积和Transformer来更有效提取遥感图像信息,高效应用在遥感图像配准的任务中。提出的混合网络结构是由卷积分支和Transformer分支拼接融合构成。卷积分支和Resnet101残差块结构一致,专注于提取遥感图像的局部特征。Transformer分支由两个1×1卷积核和CoT块进行跳跃连接,专注于提取遥感图像局部静态和全局动态上下文信息。上下文Transformer结构如图3所示。
图2 CRCoT混合结构
图3 上下文Transformer(CoT)结构
CoT是对传统的多头自注意力机制进行了改进。出发点是利用相邻键之间丰富的上下文信息,给定大小为H×W×C的2D输入特征图X,keys、queries和values分别定义为K=X,Q=X,V=XWv。 首先在空间上对k×k网格内的所有相邻键进行上下文编码以获得上下文键K1∈RH×W×C, 接着将K1作为输入特征图X局部邻近键之间的静 态上下文表示,最后将上下文键K1与Q拼接,通过两个连续1×1卷积得到注意力矩阵A如式(1)
A=(([K1,Q]Convθ)Convδ)
(1)
ConvθConvδ表示两个1×1卷积。
对于每个头部,A矩阵的每个空间位置的局部注意力矩阵是基于查询特征和局部上下文信息交互得到。接着,通过聚合上下文注意矩阵A, 与V(value)相乘获得加权后的特征图K2如式(2)
K2=V⊗A
(2)
将K2作为输入特征图X全局邻近键之间的动态上下文表示,接下来将局部静态上下文K1和全局动态上下文K2融合得到CoT块的输出。最后,将卷积分支和上下文Transformer分支的输出拼接融合,作为CRCoT块的最终输出。
2.2.2 注意力机制
当涉及多种类型且结构复杂的遥感图像时,注意力模块可以有效获取图像重要信息,提取图像关键特征点。CBAM[13]提出了通道注意力和空间注意力来改进特征表示,但是它们被分离并相互独立计算,忽略了通道维度和空间维度之间跨纬度交互[15]的重要性。CTAM[15]捕捉了跨纬度交互,却忽视了通道注意力[17]的信息。针对这些问题,提出四重注意力模块(convolutional quaternary attention mo-dule,CQAM),它既可以有效捕获通道维度和空间维度之间的跨纬度交互,还能以较少的参数建模通道注意力和空间注意力。CQAM融入特征提取网络,在提取遥感图像的重要区域信息的同时,为特征匹配提供更丰富和更有区别的上下文信息。CQAM由4个分支组成如图4所示。
图4 CQAM结构
图4上面两个分支负责捕获通道维度和空间维度 ((C,W),(H,C)) 之间的跨纬度交互,它通过旋转操作和残差变换建立了维度间的相关性。下面两个分支负责建模通道注意力和空间注意力。给定输入特征映射x∈RC×H×W, 实现过程如下:
(3)
Z-pool:Z-pool层负责将输入特征映射x∈RC×H×W零维转化成两维,具体方法是将MaxPool和AvgPool串联起来,使得该层能够保留实际张量的丰富表示,同时缩小其深度,使计算变得轻量级。从数学角度来说,可以由以下等式(4)表示
Z-pool(x)=[MaxPool0d(x),AvgPool0d(x)]
(4)
0d是经过最大池化层和平均池化层操作的第0个维度。例如输入特征映射x∈RC×H×W形状为 (C×H×W) 经过Z-pool变成 (2×H×W)。
特征匹配是通过匹配函数来获得两幅遥感图像之间的相似度,Rocco等[4]设计的互相关匹配算法是利用余弦相似度来计算两幅图像的相关性,根据目标图像所有特征坐标位置语义信息逐个与源图像的特征坐标位置语义信息进行相关映射,从而计算两幅特征图之间形成的相关关系。得到的匹配函数如式(5)所示
Csrc·trg(i,j,z)=ftrg(i,j)Tfsrc(iz,jz)
(5)
式中:Csrc·trg∈RH×W×C表示高度H宽度W和通道数C的两幅遥感图像之间映射的相关关系;ftrg(i,j) 表示在 (i,j) 坐标处的目标特征向量描述符;fsrc(iz,jz) 表示在 (iz,jz) 位置处的源图像特征向量描述符。
Park等[18]提出航拍图像匹配的不对称问题,只考虑从源图像到目标图像的单向匹配,导致匹配的效果并不理想。因此,进行了遥感源图像和目标图像的双向匹配(bidirectional matching),并且使用皮尔逊相关一致性改进了互相关匹配算法,提高了匹配的鲁棒性。源图像到目标图像稠密特征图之间的皮尔逊互相关匹配如式(6)所示
(6)
(7)
以上参数性质与式(5)相同。
2.4.1 回归网络
经过双向匹配得到稠密对应图,接着通过参数回归网络来传递,回归网络直接估计两幅遥感图像之间的几何变换参数,从而得到两个方向的参数。参数回归网络由两个卷积核大小为7×7和5×5的卷积层和3个全连接层构成。
2.4.2 损失函数
采用网格距离函数Lgrid(θ,θδt) 作为损失函数,用来计算网络损失值如式(8)
(8)
θδt为标签真实情况参数,θ为变换后输出参数,网格中点总数量为N,i,j∈N,d为图像上真实情况点Tθδt(xi,yi)与变换后输出图像上的点Tθ(xi,yi) 之间距离的平方差。
2.4.3 参数加权合成
双向匹配是将两个方向上的遥感特征图输入到回归网络中,从而得到两个方向仿射变换参数,分别为θs→t和θt→s,θs→t代表源图像到目标图像经参数回归网络得到的回归参数,θt→s代表目标图像到源图像经参数回归网络得到的回归参数。目标图像到源图像方向参数θt→s旨在与源图像到目标图像θs→t加权合成,从而减少错误的特征匹配点对,能够进一步提升匹配准确度。两个相反方向上的参数需保持一致才能够进行加权合成,故取逆 (θt→s)-1, 从而得到源图像到目标图像上的参数θs→t。 求逆过程可由以下数学式(9)、式(10)、式(11)表示
A·θT=θs
(9)
A-1A·θT=A-1·θs
(10)
θT=A-1·θs
(11)
式(9)为目标图像到源图像的变换过程,θs表示源图像,θT表示目标图像,A表示变换关系矩阵,即矩阵参数θt→s。 式(10)对式(9)左边同乘一个A-1,A-1表示变换关系矩阵的逆矩阵,得到式(11),该过程表示若要得到θs→t的变换,求A-1即可,即求 (θt→s)-1。θt→s含有变换需要的6个参数,将其转换为齐次坐标的形式,如式(12)所示
(12)
式中:β1-β6为仿射变换的参数,将θt→s进行逆变换后,再与正向参数θs→t进行加权合成,过程如式(13)所示
θ=∂1·(θs→t)+∂2·(θt→s)-1
(13)
∂1表示源图像到目标图像上的权重,∂2表示目标图像到源图像上的权重。式子中θ是加权合成后的参数,利用参数θ对源图像进行仿射变换得到最终的配准结果。
训练所使用的数据集Aerial Image Dataset,取自谷歌地球(Google Erath Pro,开启3D地形模式),使用Park等提出随机仿射变换的方法[18],生成训练遥感图像配准输入图像对。训练集共18 000组,验证集为625对图像。
训练网络的参数学习率调整为0.0004,动量设置为0.9,批次大小设置为4,训练总轮数设置为200。我们使用500对图像进行测试集评估,来验证网络的配准效果,测试集图片包括河流、土地、海岸、山川、城市等真实遥感图像。实验使用Python编译数据,环境为Python3.6,使用Pytorch作为深度学习框架,硬件环境是RTX 3080显卡、具有Intelcorei5(2.3 GHz)的处理器和10 GB的内存。
采用棋盘格图作为定性指标来评估配准效果。并采用正确点概率度量(percentage of correct points,PCK)、均方误差(mean square error,MSE)、平均绝对误差(mean absolute error,MAE)和均方根误差(root mean square error,RMSE)4种定量指标来衡量配准的效果。
棋盘格图:从细节上观察图像的局部配准,将目标图像和配准结果图像分为若干个方块,每个方块交替出现重新拼接图像。然后,观察相邻方块连接对齐情况。如果可以对齐,则认为配准效果良好。
PCK:评估两幅遥感图像之间匹配正确关键点概率。式(14)如下
(14)
分子部分表示检测正确关键点的数量,N为真实总关键点数量,Tfini代表最终的变换参数,psi是第i个图像对经过参数变换获得的源图像关键点,pti是第i个图像对真实标记的关键点。α·max(h,w) 表示高h宽w图片的最大阈值范围,系数(α不超过1),一般来说α取值0.1较合适,α取值越大,越能测量全局匹配情况。
均方误差、平均绝对误差和均方根误差由式(15)、式(16)、式(17)表示
(15)
(16)
(17)
在Google Erath数据集测试结果如图5所示。选取了城市、农田、带雾复杂城市等多个类型图像测试,分析不同场景(城市外貌、农村丛林、复杂道路)和不同拍摄条件下(多时相、多视角、多源和复杂情况)的遥感图像对配准结果。
图5 算法配准结果
第一组(如图5(a))是不同视角的城市图,配准主要以道路为主,配准后图像中城市建筑和道路方向基本与目标图像对齐。第二组(如图5(b))是不同时间的农田图,配准后田间道路与树林区域与目标图像对齐,重点区域匹配效果较好。第三组(如图5(c))是源图像带雾的城市图,即使在遮挡条件下,配准结果依旧准确,效果较好。
为了说明提出算法的有效性,选取经典的传统算法和近几年提出的端到端深度学习的方法与此算法进行对比。传统算法包括SIFT[19],深度学习算法包括CNNGeo[20]、A2net[21]、RMNet[3]和Two-stream[18]4种。
3.4.1 定性实验
如图6所示,选取4组不同场景(城市外貌、港口、农村丛林、复杂道路)不同拍摄条件下(多时相、多视角、多源和复杂情况)的图片来进行定性实验分析。将4组遥感图像配准结果用棋盘格图展示,棋盘格图上局部偏差的位置使用方框突出,方框越大越多代表局部配准偏差较大且偏差较多,图中如果只有一个大方框代表该配准结果错误。将该算法与传统经典算法和近几年端到端深度学习算法进行对比,可以观察到该算法(图6(h))偏差框数量较少且方框较小,重点区域的边缘细节处线条都能够对齐,错位现象极少。而经典传统算法(如图6(c)SIFT)和部分深度学习算法(如图6(d)CNNGeo、图6(f)RMnet)出现大面积配准错误现象,其它深度学习算法(如图6(e)A2net、图6(g)Two-stream)在重点区域的边缘配准细节偏差较多,可见该算法效果较好。对于该算法在复杂条件下拍摄的城市道路图片(图6复杂情况),可以看出多条交错道路都能配齐,且只有一个偏差框,然而其它算法有多个不同大小的偏差框。由此可见,该方法有效提升了不同场景不同拍摄条件下遥感图像的配准准确度,展现出了该算法面对种类多、情况复杂的遥感图像强大的鲁棒性。
图6 对比实验在真实多视角遥感图像上的配准结果
3.4.2 定量实验
将上述提到的4种定量指标(PCK、MSE、MAE、RMSE)对此算法性能进行定量评估。PCK评估选用Aerial Image Dataset500对遥感图像测试集来计算6种方法的正确关键点匹配比率。根据比率高低来推断这6种方法配准的精度。PCK评估结果见表1。
表1 不同算法的PCK评估结果
表1可以看出PCK值在0.1和0.05下该算法比传统算法高30%以上,该算法在α为0.1情况下PCK值达到98.0%,远超过近几年其它端到端深度学习的方法,验证了此算法能够有效提高正确匹配点比率。
通过Aerial Image Dataset数据集随机采取4组(10对、50对、100对、500对)遥感图像测试集来进行定量结果分析测试,分别采用平均绝对误差(MAE)、均方根误差(RMSE)、均方误差(MSE)这3种基本测量指标来评估此算法在遥感图像配准总体性能,以上3种测量指标越小越能代表配准效果越好。如表2所示,此方法在4组不同数量的测试集上结果3组达到最优,一组与最优结果相近,而经典传统算法(如SIFT)和部分深度学习(如CNNGeo、A2 Net、RMnet)算法3种测量指标远高于此算法,可见该算法准确度较高。此算法随着测试集数量增大3种测量指标无限接近于0,看出此算法模型误差极小,鲁棒性较强。
表2 4组测试集图像在6种方法下定量分析结果
(注:数据加粗为当前指标最优结果,其中“—”表示配准后的结果图像失真或者采样点特征扭曲,差距过大不纳入计算。)
提出的贡献主要分为3部分:①提出混合网络结构(CRCoT)替换残差块用来提取图像局部和全局上下文信息;②提出四重注意力(CQAM)融入特征提取网络,增强匹配的区分性表示;③提出双向匹配,并采用皮尔逊(Pearson)改进相关算法,提升匹配的精确性。消融实验验证了此算法的有效性。选取CNNGeo基础网络框架,预训练Resnet101为特征提取网络。将3部分内容分别添加到基础网络框架中,计算PCK值变化。网络模型均使用Aerial Image Dataset18000对遥感图像训练,使用500对测试集进行PCK值测试。实验结果见表3。
由表3可知,PCK值在α为0.1和0.05的情况下,提出的CRCoT替换原Resnet101残差块用来特征提取分别提高了9.3%和10.5%。提出的四重注意力融入预训练Resnet101分别提高了9.1%和11.8%。提出的皮尔逊双向相关匹配替换单向匹配方法分别提高了12%和23.3%。3部分创新点融合后,PCK值达到最佳。仿真实验结果表明3部分创新点均能够提升配准精度,验证了提出的创新点是有效的。
针对卷积神经网络在遥感图像配准上的精度低,鲁棒性弱的问题,提出一种结合残差网络和Transformer并融入四重注意力的配准模型。混合网络结构替换Resnet101残差块,可以获得遥感图像全局和邻近上下文信息。提出四重注意力机制融入特征提取网络,保留通道和空间注意力提取信息的同时,还可以捕获通道维度和空间维度之间的跨纬度交互信息。设计双向匹配网络,并采用皮尔逊相关算法建立遥感图像之间的对应关系。实验结果表明,在Aerial Image Dataset数据集上,使用“正确点概率度量”α为0.1和0.05情况下准确率高达98.0%和92.7%,验证了其对挑战具有复杂背景杂波以及类内变化的遥感图像强大鲁棒性。