基于像素-目标级共生关系学习的多标签航拍图像分类方法
2021-03-25方志文刘青山
方志文,刘青山,周 峰
(江苏省大数据分析技术重点实验室,南京信息工程大学自动化学院,南京,210044)
近年来,由于航拍技术取得了巨大的进展,基于航拍图像分析的应用也得到了广泛的关注,例如城市制图[1]、生态监测[2]、地貌分析[3]与交通管理[4]等.为了更准确地分析理解一幅航拍图像,需要将图像中出现的所有不同类别的目标物体都标注出来.由于多类目标的分割和检测对标注的要求精细,标注成本高,因此基于图像级别的多标签分类成为航拍图像分析应用上的一个重要研究方向,其主要任务就是对航拍图像中出现的所有不同类别的目标物体进行预测.如何对这些不同类别的目标物体之间的共生关系进行建模是决定多标签分类模型性能的关键因素[5].
随着深度学习技术的快速发展,计算机视觉领域借助该技术取得了质的突破,随后,深度学习也成功应用于多标签图像分类任务.Karalas et al[6]将多标签分类问题转化为多个单标签分类问题的组合.Yang et al[7]采用类似目标检测中目标生成网络的形式来定位特定类别的物体,并判断该类物体是否出现在图像中.然而这两类模型都忽视了不同类别物体之间固有的共生关系,因此分类的性能不能令人满意.为了解决这个问题,Li et al[8]将概率图模型应用到多标签图像分类中,以此来对不同类别物体之间的共生关系进行建模,取得了不错的分类效果.此外,有一些工作将多标签图像中的标签预测看成是一个序列学习问题.例如,Wang et al[9]先将标签转化为词向量,然后将其输入循环神经网络(Recurrent Neural Network,RNN)来学习标签之间的共生关系,并与卷积神经网络(Convolutional Neural Network,CNN)提取的特征结合得到分类结果;Wang et al[10]则是在RNN中引入空间转换层来进一步捕捉不同类别物体之间的共生关系.另外,最近也有一些工作尝试利用图模型来对标签之间的关系进行学习.例如,Chen et al[11]将图卷积神经网络引入多标签图像分类任务中,取得了不错的效果.图模型从标签入手,而注意力机制是从特征入手,将不同类别的物体区分开来进一步学习它们之间的关系.Mou et al[12]使用基于空间注意力机制的关系增强网络,进一步完成对不同类别物体的共生关系的建模.Hua et al[5]引入类别注意力机制,也达到了令人满意的结果.
上述工作大都从决策级来考虑不同类别物体之间的共生关系,忽略了中间特征隐含的物体之间的共生关系.为了能够充分利用这种共生关系,本文提出一个像素级共生关系模块,通过计算不同位置像素点之间的特征相似度来间接度量两两像素点之间的共生性.但单个像素点表征一个物体的能力有限[13],所以该模块学习到的共生关系可能无法准确地为像素点判断其所属类别提供有效的信息.为了解决这个问题,进一步设计了一种目标级共生关系模块,使用物体的目标级特征来对不同物体间的共生关系进行学习.基于这两个模块,设计了一个端到端的像素⁃目标级共生关系学习网络.在UCM和DFC15两个多标签航拍数据集上的实验结果表明,本文的方法取得了非常好的分类效果.
1 相关工作
已有的多标签分类模型主要关注如何学习物体之间的共生关系,它们大致可以分为三类:
第一类方法使用图模型来对共生关系进行学习,这类方法将类别或者特征向量当作节点,并构建图模型来学习共生关系.比如Ghamraw and McCallum[14]使用条件随机场来对标签之间的共生关系进行参数表示.Guo and Gu[15]提出条件依赖网络模型来直观表示多个标签之间关系,以便使用二分类器和Gibbs抽样推断的标签预测.Chen et al[16]将CNN提取的深度特征输入到马尔可夫随机场来学习类别之间的共生关系.Li et al[8]提出条件图形套索来为基于图像特征的结构和参数学习提供一个统一的贝叶斯框架,以此来学习物体之间的共生关系.除了传统的概率图模型,最近提出的图卷积模型也被广泛应用到多标签分类任务中.比如,Chen et al[11]先使用图卷积神经网络得到每个类别物体的权重,再和卷积特征结合得到最终的预测情况.Chen et al[17]提出特定语义的图表示学习框架用以结合类别的语义信息学习其特定表示,并通过图卷积网络来对它们之间的共生关系进行建模.
第二类方法是基于RNN框架,这类方法将多标签任务看作序列化的标注任务,使用RNN的循环连接对不同类别物体之间的共生关系建模.比如,Wang et al[9]将标签转化为词向量之后输入RNN学习其共生关系,再与CNN提取的特征结合得到分类结果.Jin and Nakayama[18]先使用CNN对输入图片进行特征提取,然后将每一类物体特征输入RNN得到分类结果.Liu et al[19]也使用类似的结构,设计一个静态的正则化嵌入层来作为CNN与RNN之间的接口,以增强学习到的物体间的共生关系.Chen et al[20]通过约束RNN输出的置信向量和标签向量之间的差异,提出适用于多标签分类任务的交叉熵损失函数.Chen et al[21]通过设计一个强化学习网络来定位特定物体,然后将其特征输入RNN得到分类结果.
第三类方法是使用注意力机制对共生关系进行学习,这类方法通过注意力机制获得每一类物体的特征,再通过后续的操作对这些物体的特征进行共生关系学习.比如,Wang et al[10]设计了空间转换层来自适应搜索特定物体所在区域,进而得到其分类结果.Zhu et al[22]提出一种基于加权注意力图的空间正则化网络来捕获不同类别物体之间的语义和空间关系.Chen et al[23]利用类别感知图将CNN提取的特征自适应地解耦成各个类别的物体特征,再与原始特征结合来学习共生关系.Hua et al[5]使用卷积操作定位特定物体所在区域,然后将不同类别的物体特征输入循环网络中学习其共生关系.
2 多标签航拍图像分类网络结构
本文提出的像素⁃目标级共生关系学习网络的结构如图1所示,其中没有中文标注的都是特征图.具体地,先将航拍图像输入CNN得到对应的卷积特征,再经过像素级共生关系模块计算不同位置像素点之间的特征相似度,之后使用目标级共生关系模块对物体的目标级特征之间的共生关系进行学习,最终输出每一类物体存在于输入图像中的概率.接下来详细介绍这两种共生关系学习模块.
图1 本文提出的模型框架Fig.1 Framework of the proposed network
2.1 像素级共生关系模块He et al[24]提出的ResNet50被广泛应用到图像处理任务[12,25]中并取得了不错的效果,本研究尝试使用它作为基础网络,但ResNet50没有提取特征中隐含的共生关系,直接将它应用到多标签分类任务中无法获得令人满意的结果.受Zhang et al[26]的启发,本文将特征图不同像素点之间的共生关系看作其对应特征向量之间的相似性,设计了如图1所示的像素级共生关系模块.它使用自注意力机制获得特征图中每一个目标像素点与对应的共生像素点的相似关系,借助该相似关系进一步融合不同位置像素点的特征.
具体地,输入的特征图可以被认为是N个特征集合X={}x1,x2,…,xN,其中N为通道数目,而xi则是在位置i(i∈{1,2,…,N})的输入特征.类似自注意力机制,目标像素点xm和共生像素点xn先分别经过三层网络实现非线性映射得到对应的特征该网络由两层全连接层和修正线性单元(Rectified Linear Unit,ReLU)构成,以此将xm和xn的维度设置成与类别数一致.对于给定的目标像素点,共生像素点与它同时出现的概率定义为:
2.2 目标级共生关系模块某些特殊场景中像素级特征表征物体的能力有限,比如某些建筑物的边缘和中心区域的颜色不同导致它们的像素级特征存在差异,因此同一类物体不同位置的像素点与目标像素点可能存在不同的共生关系.本文提出对目标级共生关系进行建模来解决这个问题.
最近Yazici et al[27]发现RNN在无序的结构化标注任务(例如多标签分类[28])中也有很好的表现,但RNN很难捕获相隔较远的元素之间的依赖性[29],因而性能有限.长短时记忆网络(Long Short⁃Term Memory,LSTM)[30]通过门机制来学习相隔较远元素之间的依赖性,研究者们将它应用到多标签分类任务中[5].本文使用LSTM来学习目标级特征之间的共生关系.然而,单向的LSTM不足以全面地描述这种共生关系,因为它存在方向性.比如,当车辆出现在场景中时,与之具有共生关系的道路出现的概率非常大;但当道路出现在场景中时,车辆出现的概率并不是很大.因此,本文用LSTM构建双向循环网络(Bi⁃directional Long Short⁃Term Memory,BiLSTM)作为最终的目标级共生关系学习模块.如图1所示,该模块由两层结构相同方向相反的LSTM以及一层全连接层构成.先将像素级共生关系模块的输出拆分,得到每一类物体的目标级特征,再输入BiLSTM中得到包含两个方向共生关系的输出特征;最终,将这两个输出特征串联,经过一个全连接层得到每一类物体出现的概率值.值得注意的是,由于BiLSTM输入的是一个序列,所以需要确定多标签之间的顺序关系.根据Jin and Nakayama[18]的研究,一般情况下多标签序列存在三种排序方式:字母顺序、频率优先顺序和稀有优先顺序.为了找到多标签航拍图像分类任务的最优顺序,在下文的消融实验中对这三种排序方式进行了详细的对比.
3 实验数据集
在UCM和DFC15两个数据集上进行实验,并展示实验结果.
3.1 UCM数据集UCM数据集来源于美国地质调查局(United States Geological Survey,USGS)提供的航空影像,并经由Yang and News⁃am[31]手工裁剪标注.该数据集包含2100张像素大小为256×256的航拍图像,每一张都被赋予一个17个类别的语义标签,依次是飞机、裸露土壤、建筑物、车辆、灌木丛、沙地、道路、庭院、树林、码头、集装箱、湖泊、草地、移动房屋、船舶、海洋和田地.其中部分图像如图2所示,本实验随机选择其中80%作为训练集,剩下的为测试集.
3.2 DFC15数据集DFC15多标签航拍图像数据集来源于DFC数据集,它是利用离地300 m的机载传感器获得的,其空间分辨率为5 cm,像素大小为10000×10000.为了适用于多标签分类任务,将其裁剪为600×600,并赋予每个图像八个类别的图像级标签,分别是不透水的表面、水域、杂波、植被、建筑物、树木、船只和车辆,其中部分图像如图3所示.和UCM数据集一样,本实验也随机选择其中80% 作为训练集,剩下的为测试集.
图2 UCM数据集样例图像Fig.2 Sample images in UCM dataset
图3 DFC15数据集样例图像Fig.3 Sample images in DFC15 dataset
4 实验评价标准
实验采用六个指标作为结果的评价标准,分别是整体精确率(OP)、整体召回率(OR)、整体F1值(OF1),类别精确率(CP)、类别召回率(CR)和类别F1值(CF1).其计算式如下:
其中,c是类别的数目是第i个类别中预测正确的图像数目是预测的属于类别i的图像数目是真正属于类别i的图像数目.
5 实验环境
本文提出的多标签分类网络是基于Pytorch框架实现的,使用NVIDIA Titan X显卡作为加速训练的硬件.由于显存的限制,实验使用的所有图像的大小都调整为240×240.采用随机梯度下降算法(Stochastic Gradient Descent,SGD)作为优化器,其动量(momentum)设置为0.9,权重衰减为10-4.初始的学习率为0.001,在迭代40轮后衰减为0.0001.
6 实验结果及分析
在UCM和DFC15两个多标签航拍数据集上进行了两个模块的消融实验以及与最新的多标签分类模型的对比实验.
6.1 消融实验为了验证两个模块的有效性,在两个数据集上都做了消融实验.先以ResNet50作为基础网络测试其性能,再依次添加两个模块进行实验,结果如表1和表2所示.
表1 UCM数据集上的消融实验结果(单位:%)Table 1 Experimental results of ablation study on UCM dataset(unit:%)
表2 DFC15数据集上的消融实验(单位:%)Table 2 Experimental results of ablation study on DFC15 dataset(unit:%)
可以看出,加入像素级共生关系模块时指标得到很大的提升,说明像素级共生关系模块确实能够学到特征中的共生关系;加入目标级共生关系模块时OF1和CF1得到进一步的提升,说明它弥补了像素级共生关系模块的不足.具体地,在UCM数据集上,OF1从87.54%提升到91.27%,而CF1从92.11%提升到94.48%;在DFC15数据集上,OF1从96.10%提升到97.30%,CF1从94.07%提升到95.95%.
数据集中三张图像的测试结果(表3)可以更好地说明目标级共生关系模块的作用.
表3 测试实验Table 3 Testing experiments
从表3的第一行可以看到,仅使用像素级共生关系模块时本应预测出草地但实际上没有,这主要是因为草地和树木的像素级特征非常相似,同时草地和场景中的道路又有一定的共生关系[5],因而造成错分.而使用目标级共生关系模块则能避免这种情况,说明物体目标级的特征确实能弥补像素级共生关系的不足.同样地,从第二行和第三行可以看到,由于车辆和飞机的像素级特征非常相似,仅使用像素级共生关系模块时容易漏分车辆,而使用物体的目标级特征进行共生关系学习时则能很好地解决这一问题.同时,为了说明像素⁃目标级共生关系学习网络确实是对物体目标级的特征进行共生关系学习,表4给出目标级共生关系模块的输入可视化结果,可以看到该方法精确定位到每类物体的位置.
针对多标签排序问题测试了三种顺序,分别是字母顺序(即按类别名称的首字母排序)、稀有优先顺序(即按类别出现频次排序,频次低的排在前面)和频率优先顺序(即按类别出现频次排序,频次高的排在前面),结果见表5和表6.从OF1和CF1两个指标来看,频率优先顺序的效果最好,所以本文采用该种排序方式.
表4 中间结果可视化Table 4 Visualization of intermediate results
表5 UCM数据集上不同顺序的测试实验结果(单位:%)Table 5 Results of testing experiments in different order on UCM dataset (unit:%)
表6 DFC15数据集上不同顺序的测试实验结果(单位:%)Table 6 Testing experiments in different order on DFC15 dataset (unit:%)
6.2 对比实验为了验证本文方法的有效性,在UCM和DFC15两个数据集上进行对比实验.对比方法包括:卷积⁃循环神经网络(CNN⁃RNN)[9]、基于注意力机制的循环神经网络(RNN⁃Atten⁃tion)[10]、空间正则网络(SRN)[22]、残差网络(ResNet)[13]、类别感知图(CADM)[23]、图卷积网络(GCN)[11]、类别注意力网络(CA⁃Conv)[5].实验结果如表7和表8所示.可以看到,仅仅引入RNN和注意力机制的效果比较一般(如CNN⁃RNN,RNN⁃Attention和SRN),因为它们无法有效地学习共生关系,而CADM和GCN取得了更好的结果.其中,CADM设计一个感知图来尽可能地区分出不同的类别,便于共生关系的学习;GCN则使用图模型来从标签的角度对共生关系进行建模.但这些模型非常依赖数据量,而航拍图像这种小样本数据集很难让这些方法达到最优的效果,限制了它们的性能.与之相比,CA⁃Conv使用相对简单的模型来缓解航拍图像的小样本问题,进一步地提升了分类性能.具体地,它仅使用一层卷积直接获得每一类相关的特征,再经过BiLSTM提取不同类别物体之间的共生关系;但该方法只关注决策级的共生关系,并没有挖掘隐藏在中间特征的共生关系.本文提出像素⁃目标级共生关系学习网络来从像素和目标两个角度充分学习共生关系.与CA⁃Conv模型相比,本文的方法在两个数据集上将OF1分别从87.92%和95.91%提升到91.27%和97.30%,CF1分别从92.56%和93.65%提升到94.48%和95.95%.
表7 UCM数据集上的实验结果(单位:%)Table 7 Experimental results on UCM dataset (unit:%)
表8 DFC15数据集上的实验结果Table 8 Experimental results on DFC15 dataset(unit:%)
7 结论
本文针对多标签航拍图像,提出一个像素⁃目标级共生关系学习网络,使用像素级共生关系模块对中间特征隐含的共生关系进行学习,并使用目标级共生关系模块来缓解像素级特征无法充分表征物体的问题.与最新的多标签分类方法相比,本文提出的方法在两个数据集上的指标均达到最高水平.尽管如此,该模型仍然存在一些不足.例如,深度学习算法的性能非常依赖于数据,而航拍数据集的获取成本又非常高.今后的工作将尝试使用生成模型(例如生成对抗网络(Gener⁃ative Adversarial Network,GAN))来生成航拍图像,并利用它们预训练模型,再将其迁移到多标签航拍图像分类数据集上.