基于CNN的多尺寸航拍图像定位方法的研究与实现
2019-12-02潘海侠徐嘉璐李锦涛王赟豪王华锋
潘海侠, 徐嘉璐, 李锦涛, 王赟豪, 王华锋,2,*
(1. 北京航空航天大学软件学院, 北京 100083; 2. 北方工业大学信息学院, 北京 100144)
航拍图像定位大多利用航拍图像的绝对定位。匹配方法中基于特征点的匹配应用最为广泛,适合匹配的特征点有边缘特征[1-3]、点特征[4-6]和区域特征[7-9]等。根据特征空间的不同,基于特征点的匹配方法分为基于特征点局部灰度区域描述符的匹配方法和基于特征点空间结构信息的匹配方法。基于特征点局部灰度区域描述符的匹配方法是指在匹配时提取以特征点位置为中心的局部区域灰度信息的某类特征作为描述符进行相似性度量,如提取局部区域 128 维特征向量作为描述子进行匹配的SIFT 特征点匹配[7]等。基于特征点空间结构信息的匹配方法是指仅利用特征点的空间结构信息进行相似性度量,如基于边缘点集的 Hausdorff 距离匹配[10-13]、基于形状上下文特征匹配[14-15]等。
近年来,卷积神经网络(Convolutional Neural Network,CNN)[16]在图像领域有很好的表现。其中,OverFeat[17]获得了极具竞争力的结果,其运用卷积网络有效实现了一个多尺寸输入的滑动窗口方法,可用于图像分类、目标定位和检测任务。基于CNN善于学习图像高层次特征的特点,科研人员希望利用CNN将航拍图像定位问题转化为图像分类问题,利用飞行区域的全部信息训练卷积网络,对航拍图像直接进行分类。本文将航拍图像定位问题转化为了一种图像分类问题,基于AlexNet提出了一个融合显著性特征的全卷积网络模型,同时自行制作了航拍图像数据集,提出一种邻域显著性参照定位策略来筛选分类结果,从而实现多尺寸航拍图像的定位。实验结果表明,本文模型提取图像特征的能力好于传统方法。同时,多尺寸航拍图像定位实验验证了本文方法的准确率。
1 多通道全卷积网络模型
本文在AlexNet[12]的基础上进行网络结构的改进,设计了一种基于特征融合的多通道全卷积网络模型,称为multi-channel AlexNet-FCN,其是有效支持多尺寸输入的滑动窗口分类器。
1.1 AlexNet-FCN
AlexNet规定输入图像大小为224×224,当输入更大尺寸的图片时,网络会先将输入图片尺寸调整成规定大小。为了适应多尺寸输入,本文使用类似OverFeat[18]的方法,将AlexNet转换为全卷积形式的AlexNet,称为AlexNet-FCN,使其变为一个可以输入任意的不小于规定大小图像的滑动窗口分类器。
1.2 FCN的滑动窗口形式
全卷积网络在以滑动方式应用时本质上是高效的,因为窗口自然地共享重叠区域上共有的计算。对于AlexNet-FCN,滑动窗口大小为224×224,滑动窗口步长为32。
输入一张256×256大小的图像时,输出是一个N(类别个数)个通道的2×2大小的类别得分矩阵,如图1所示。相当于在图像的垂直方向和水平方向上各进行2次滑窗,每个窗口分别映射到输入图像中的一个224×224大小的区域。
图1 FCN滑动窗口形式Fig.1 FCN sliding window
1.3 显著性特征图突出稀疏的显著性区域
航拍图像含有大量的不显著特征,而不显著特征在不同航拍区域中可能差异很小,将稀疏的显著性区域突出为前景有助于提取可区别的特征。使用 Image Signature[14]来标记航拍图像中稀疏的显著性区域,并生成显著性特征图(见图2),用以进行后续的特征融合。
图2 航拍图像的显著性特征图Fig.2 Saliency feature map of aerial image
1.4 multi-channel AlexNet-FCN结构
基于特征融合的思想,本文提出了一种称为 multi-channel AlexNet-FCN的多通道特征融合CNN模型,结构如图3所示。原始RGB航拍图像与其单通道特征图(本文使用Image Signature[14]生成显著性特征图)组合为一个四通道的输入层,经过卷积核为1×1的卷积层进行降维,将降维后的三通道特征图输入AlexNet-FCN。
图3 Multi-channel AlexNet-FCN示意图Fig.3 Schematic diagram of multi-channel AlexNet-FCN
2 邻域显著性参照定位方法
针对包含多网格区域的航拍图像,本文提出了一种多尺寸图像定位方法,称为邻域显著性参照定位方法。
由于航拍图像中区域的连续性,一个正确预测的区域类别,其周围也应该存在正确预测的区域。基于邻域参照的思想,某个被预测区域的相邻区域的显著性越强,可以判断此区域越可能是正确的预测。因此本文提出了一种基于联通区域分析(connected-component analysis)和最大投票(majority vote)思想的邻域显著性参照定位方法,通过区域及其邻域信息来筛选分类结果,从而提高航拍图像定位的准确性,其主要包括4个步骤:类别得票数统计、区域显著性权重计算、预测概率邻域显著性参照加强和联通区域分析。
2.1 类别得票数统计
对于全卷积网络输出的类别得分图(class score map),将每个位置的所有通道中得分最高且大于阈值的类别作为一个预测分类结果。统计由类别得分图得到的所有分类结果,得到输入图像可能包含的若干个区域的类别及个数,并用一个表示网格区域类别间的真实位置关系的投票矩阵(vote map)来描述,投票矩阵中每个位置的值等于该位置所代表的区域类别的预测个数,未被预测的类别值为0。
2.2 区域显著性权重计算
为得到所有网格区域的显著性权重,先将恰好包含所有网格区域的航拍图像混合显著性特征图(Image Signature[14])输入训练好的multi-channel AlexNet-FCN,得到投票矩阵。由于越显著的区域越容易被识别,而投票矩阵描述了每个区域的判别个数,可以认为投票矩阵中每个位置的值表示了该区域的显著性高低,因此本文提出了一种区域显著性权重计算方法:
(1)
式中:∀(x,y,i,j)∈vote map代表网格区域中的一个位置;vi,j为区域判别个数;wi,j为计算显著性权重。
由此得到所有网格区域的显著性权重矩阵(saliency weight map),其大小与投票矩阵相同。一个如图4(a)所示的投票矩阵的三维曲面图,得到的显著性权重矩阵如图4(b)所示。其中,x、y代表相对位置,在投票矩阵中,z轴为投票矩阵中该位置所代表的区域类别的预测个数,显著性权重矩阵中z轴为显著性权重。
图4 三维曲面样例Fig.4 3D surface sample diagram
2.3 预测概率邻域显著性参照加强
测试时,将大于224×224的航拍图像混合显著性特征输入训练好的网络,得到输入类别得分图及投票矩阵,已知投票矩阵中每个位置代表一个区域,对于任意区域,其预测概率为
(2)
式中:Pi,j为预测概率。对每个位置(i,j)∈vote map(见图5),有8个邻域,组成邻域预测概率的集合为:Gi,j={Pi-1,j-1,Pi-1,j,Pi-1,j+1,Pi,j-1,Pi,j,Pi,j+1,Pi+1,j-1,Pi+1,j,Pi+1,j+1}。2.2节中得到的领域显著性权重:Si,j={Wi-1,j-1,Wi-1,j,Wi-1,j+1,Wi,j-1,Wi,j,Wi,j+1,Wi+1,j-1,Wi+1,j,Wi+1,j+1},其中不在投票矩阵中的邻域的概率和显著性权重均设置为0。
对∀(i,j)∈vote map,根据该位置及其8个邻域的预测概率,以及显著性权重,计算其加强概率为
(3)
标准化后得到
(4)
为加强概率。
图5 显著性权重示意图Fig.5 Schematic diagram of saliency weight
2.4 联通区域分析
已知概率矩阵中所有不为0的位置组成若干连通区域,由于航拍图像中区域相邻的特性,可以认为概率矩阵中拥有最大概率和的连通区域所包含位置的类别即为输入航拍图像的定位结果,并且按照联通区域中每个区域的概率高低排列定位结果的优先级,概率越高优先级越高。若不存在唯一的拥有最大概率和的连通区域,则对概率矩阵反复进行邻域显著性参照加强,直到得到唯一连通区域。
例如,一个概率矩阵的热力图如图6所示。其中,x、y轴表示相对位置,z轴表示热力值,热力值越高且越聚集的位置可判断为预测正确的区域,即拥有最大概率,可得按照概率降序的定位结
图6 概率矩阵热力图Fig.6 Heat map of probability matrix
果为{12×15,11×15,12×17,12×16,11×16,11×17,10×15}。
3 实验与结果分析
3.1 数据准备
本文从Google Earth 软件获取了黑龙江省哈尔滨市地区某2个不同时间下的卫星图像作为航拍数据,区域范围如图7所示。将图像划分为37×27(行×列)个大小相同的正方形网格区域,每个区域图片像素值为256×256。为了后续数据增强的需要,去掉最外层网格后共得到35×25张图片,作为要分类的875类区域,每一类图片用其所在行列号标记。
本文采用了一种填充周围真实区域的旋转方法对图像进行随机旋转,同时对图像进行一定范围内的随机颜色抖动,以及对图像进行一定范围内的高斯模糊和椒盐噪声,用以增强数据并模拟真实环境。
通过以上方法,将每类数据的数量增加到500张,得到875类区域的数据共437 500张,其中训练集、验证集、测试集比例为8∶1∶1。
图7 哈尔滨市的航拍图像Fig.7 Aerial image of Harbin
3.2 单尺寸训练与对比实验
采用3.1节中的数据集作为训练集,网络定义输入大小为224×224,当训练时输入大于定义的图片时,先将输入图片做224×224的随机裁剪。本文训练集大小为256×256,经过随机裁剪后进行训练,可以增强网络对局部图像信息的分类能力,提高准确率。本文在单尺寸下分别训练了AlexNet-FCN和multi-channel AlexNet-FCN,在训练multi-channel AlexNet-FCN时,分别混合Hog[19]和LBP[19]特征作为网络的输入。
为了验证第2节设计训练的卷积网络对单一网格图像的分类能力,并与传统方法进行对比,本文从Google Earth上再次获取了3.1节中地区的另一时间的卫星图像,并划分为同样的875个网格图像,将每个网格图像进行一次随机旋转来模拟某时间下无人机飞行时的航拍图像。将旋转后的875张图像作为查询图像集,将3.1节中875类内部数据的原始网格图像作为标准图像集,这样每张查询图像都与某两张标准图像所属类别相同。分别将查询图像集输入训练好的AlexNet-FCN 和 multi-channel AlexNet-FCN,得到每张查询图像输出的类别得分图,其中数值越大的类别越可能是该查询图像的所属类别。对每张标准图像和查询图像分别用具有旋转不变性的SIFT[7]、SURF[8]、ORB[9]提取特征,并计算每张查询图像与标准图像的相似度,相似度越高代表两张图像越相近,越可能是同一类别。统计得到查询图像集的准确率如表1所示,可知使用CNN对单一网格图像进行分类的效果远好于传统特征,且 CNN对每张航拍图像的平均处理速度远快于传统方法;在CNN模型中,混合显著性特征的multi-channel AlexNet-FCN具有最好的分类效果,其准确率达到了95.4%。
在查询图像集中随机选取10类区域,并分别旋转50个角度来模拟飞行时采集的航拍图像,作为表1中4种全卷积网络的输入,4个全卷积网络模型的ROC曲线如图8所示。分类器越靠近左上方,性能越好,可以看出multi-channel AlexNet-FCN效果最好。
表1 查询图像集准确率Table 1 Query image set accuracy
图8 ROC曲线Fig.8 ROC curves
3.3 多尺寸航拍图像定位实验
为了验证本文方法对多尺寸航拍图像的定位能力,对使用邻域显著性参照定位策略和不使用邻域显著性参照定位策略2种方法进行了对比实验。
召回率和准确率是2种常用的精度指标。准确率即正确的正例的数量与被归类为正例的数量的比,其值越高则代表定位识别率越精准。召回率也称查全率,是真正例数与真正例、假反例数之和的比值,该值越高则代表识别结果查全效果越好。二者共同反映了识别的效果。
本文从Google Earth上获取了图7所示区域的另一时间的卫星图像,通过第2节的方法得到投票矩阵。使用邻域显著性参照定位策略得到概率矩阵,对概率矩阵进行基于最大投票的连通区域分析。分别取每张测试图像定位结果中优先级最高的k个类别作为识别结果,对于图像所包含的占整个网格区域某个比例范围的若干区域,分别计算其准确率与召回率,其中k的最大值为测试图像能包含的完整网格区域的最大个数。分别截取512×512大小和768×768大小的测试集,当阈值为0.99时,2种方法得到的top-k下的平均准确率如表2和表3所示,平均召回率如表4和表5所示。
从实验结果可知,在多尺寸航拍图像定位中,使用邻域显著性参照定位时效果更好,即对于航拍图像,本文方法可以准确识别出其包含的大部分区域的类别,且图像包含的上下文信息越多,定位准确率越高。
表2 航拍图像为512×512大小时top-k下的准确率Table 2 Accuracy at top-k when aerial image size is 512×512
表3 航拍图像为768×768大小时top-k下的准确率Table 3 Accuracy at top-k when aerial image size is 768×768
表4 航拍图像为512×512大小时top-k下的召回率Table 4 Recall rate at top-k when aerial image size is 512×512
表5 航拍图像为768×768大小时top-k下的召回率Table 5 Recall rate at top-k when aerial image size is 768×768
4 结 论
本文利用飞行区域的全部信息将航拍图像定位问题转化为了图像分类问题,通过使用飞行区域内带有位置标记的网格图像制作训练集。基于AlexNet提出了一种融合显著性特征的多通道全卷积网络模型(multi-channel AlexNet-FCN),实现了一个支持多尺寸输入的滑动窗口分类器,并提出了一种邻域显著性参照定位策略来筛选分类结果,从而实现多尺寸航拍图像的定位。实验证明,本文方法训练的卷积网络对单一网格图像分类准确率可以达到95.4%,实现了多尺寸航拍图像包含的大部分网格的准确定位,很好地适应了航拍图像的旋转特性。后续可以通过扩充更多时间和尺度的数据集,来提高卷积特征对航拍图像的适应能力。