景庄伟,管海燕,彭代峰,于永涛
(1.南京信息工程大学 a.地理科学学院; b.遥感与测绘工程学院,南京 210044;2.淮阴工学院 计算机与软件工程学院,江苏 淮安 223003)
近年来,计算机视觉、模式识别、测绘与遥感以及地理信息科学等领域取得了较多研究成果,语义分割作为上述领域的研究重点,引起了学者们的广泛关注,具有广阔的应用前景。语义分割是一种典型的计算机视觉问题,其将一些原始数据,如平面图像和三维点云等作为输入,并通过一系列技术操作将像素或点按照原始数据表达语义的不同进行分组[1]。其中,图像语义分割是将图像中不同类型的对象进行语义信息标注分割,其目标是将场景图像分割解析为与语义类别相关的不同图像区域,包括背景(如道路、草地、天空等)和离散对象(如人、建筑、汽车等)。语义分割任务需要在复杂多变的背景中正确地识别不同的离散对象并标记出语义信息,然而,物体对象常受到遮挡、割裂和照明等环境的影响,使得语义分割的难度增大。
传统的图像分割方法根据图像的颜色、空间结构和纹理信息等特征进行处理分析,如基于像素级的聚类分割法[2]、基于像素级的阈值分割法[3]、基于像素级的决策树分类法[4]以及基于“图割”的图像分割法[5]等。由于计算机能力有限以及没有数据训练阶段,这一时期的方法只能处理一些灰度图,通过提取图像的低级特征进行分割,无法达到语义分割[6]。随着GPU的飞速发展,深度学习(Deep Learning,DL)技术广泛应用于图像处理、计算机视觉、医学成像、机器人控制等领域,为语义分割技术的发展提供了有效支撑。研究人员使用深度神经网络(Deep Neural Network,DNN)从带有大量标注的数据中提取出语义信息和图像特征,再依据这些信息学习推理出原始图像中像素的标签,通过端到端训练的方式挖掘出每个像素的高阶语义并实现图像对象的分类。与梯度方向直方图(Histogram of Oriented Gradient,HOG)、尺度不变特征变换(Scale Invariant Feature Transform,SIFT)、局部二值模式(Local Binary Patterns,LBP)等传统手工设计的特征相比,DNN学习的特征更加丰富、表达能力更强,其成为图像语义分割领域的主流方法。
目前,已有一些综述性论文[7-9]对基于深度学习的图像语义分割研究进行了总结和分析。然而,文献[7]主要对基于监督学习的图像语义分割的网络架构进行总结,仅列举部分算法,文献[8]虽然列举了100多种分割算法,但部分算法仅归类为其他类别,并未对他们的优势和贡献进行对比分析,文献[9]所做的综述工作由于涉及的范围较为广泛,对于每一类方法并不能做到详细的描述。本文在上述研究成果的基础上进行补充完善。在算法规模方面,添加最近提出的新算法,总结80余种语义分割算法,根据标注类型和学习方式的不同,将他们分为全监督学习的图像语义分割方法和弱监督学习的图像语义分割方法两类。全监督学习的图像语义分割方法使用人工高精度加工的像素级标注作为训练样本,弱监督学习的图像语义分割方法则使用弱标注数据作为训练样本,这两类方法按照研究内容和改进特点的不同又可分为若干类子方法,本文对其进行具体的阐述和分析。在数据集内容方面,本文在新增最新公共数据集的同时增加常用的图像语义分割遥感数据集,以进行较全面的图像语义分割研究。
人工标注的样本能够提供大量细节信息和局部特征,有利于提高网络训练效率和分割精确度。因此,目前主流的语义分割网络模型大多是全监督学习类型。针对传统分类神经网络有固定尺寸的输入、产生非空间输出以及全连接层有固定维度等问题,文献[10]提出一种可以接受任意尺寸图像输入的全卷积网络(Fully Convolutional Network,FCN),如图1所示,FCN将CNN模型中的全连接层替换为全卷积层以进行像素级的稠密估计,利用增大数据尺寸的反卷积层对特征图进行上采样,对每个像素都产生一个预测,并保留原始输入图像中的空间信息,将粗糙的分割结果转换为精细的分割结果,在此基础上,采用结合不同深度层的跳跃结构,融合深层粗糙特征(全局语义信息)和浅层精细特征(局部位置信息),从而将图像分类网络转变为图像分割网络。
图1 FCN网络框架Fig.1 Network framework of FCN
FCN解决了传统分割网络由于使用像素块而带来的重复存储和计算卷积问题,从而推动了图像语义分割的快速发展。但其仍存在一些缺陷:1)反卷积过程粗糙,对图像细节不敏感;2)没有考虑像素之间的联系,缺乏空间一致性;3)未有效考虑图像上下文特征信息,无法充分利用空间位置信息,导致局部特征和全局特征的利用率失衡;4)训练复杂,计算量大,不能实现实时分割;5)固定网络的感受野不能自适应物体尺寸。因此,研究人员在FCN的基础上,提出一系列图像语义分割方法。如图2所示,本文根据改进思路的不同,又将其分成8个小类:DeepLab系列方法,基于编解码器方法,基于注意力机制方法,基于概率图模型方法,基于图像金字塔方法,基于生成对抗网络方法,基于优化卷积方法,基于循环神经网络方法。
图2 基于全监督学习的图像语义分割方法Fig.2 Image semantic segmentation methods based on fully supervised learning
针对FCN未考虑全局信息、缺乏空间一致性而导致分割结果不够精细的问题,文献[11]提出了DeepLab网络,如图3所示,该网络结合深度卷积神经网络(DCNN)进行粗分割,利用全连接条件随机场(Fully Connected Conditional Random Field,FCCRF)优化粗分割图像提高深度网络的定位准确性,最终实现图像语义分割。CHEN等人[12]在DeepLab模型的基础上提出DeepLab V2网络。DeepLab V2在以下2个方面进行了改进:1)扩张卷积解决了DCNN下采样导致特征分辨率降低的问题;2)空洞空间金字塔池化(Atrous Spatial Pyramid Pooling,ASPP)方法整合了多尺度特征。随后,CHEN等人[13]借鉴了文献[14-15]的思想提出了Deeplab V3网络,该网络改进了DeepLab V2网络的扩张卷积和ASPP模块,去除了FCCRF模块并在ASPP中使用批量归一化(Batch Normalization,BN)层。针对DeepLab V3池化和带步长卷积造成一些物体边界细节信息丢失且扩张卷积计算代价过高的问题,该团队又提出了DeepLab V3+网络[16],其将DeepLab V3作为网络的编码器,并在此基础上增加了解码器模块用于恢复目标边界细节信息。同时,将深度可分离卷积添加到ASPP和解码器模块中,提高编码器-解码器网络的运行速率和鲁棒性,实现了图像语义分割精度和速度的均衡。
图3 DeepLab的基本框架Fig.3 General framework of DeepLab
DeepLab系列方法对FCN进行优化改进,增大了感受野,提取到稠密的图像特征。其次使用条件随机场进行结构预测,并通过扩张卷积、多孔空间金字塔池化、深度可分离卷积等技术获得多尺度图像信息,对空间变换具有较高的不变性,从而提高了分割结果的空间精度。
由于池化操作降低了特征图分辨率,因此,RONNEBERGER等人[17]提出了一种编码-解码结构的网络模型U-Net。U-Net由收缩路径和扩展路径2个部分组成。收缩路径是一个编码器,利用下采样操作捕捉图片中的上下文信息,逐层提取影像特征。扩展路径是一个解码器,利用上采样操作还原影像的位置信息,逐步恢复物体细节和图像分辨率。U-Net解决了图像语义分割对大量样本和计算资源的需求问题,适用于样本较少的影像分割任务。随后,改进的UNet++[18]模型通过短连接填充、叠加不同层次特征等操作,既提升了分割精度又大幅缩减了参数数量。
BADRINARAYANAN等人[19]针对自动驾驶汽车存在的语义分割问题,提出了SegNet网络,如图4所示(彩色效果见《计算机工程》官网HTML版)。SegNet网络基于先验概率计算每个像素点的分类,是一种编码器-解码器的深层体系结构网络,编码器由全卷积网络构成并通过卷积池化等操作进行下采样,解码器由反卷积构成并根据编码器的传输索引对其输入进行上采样。随后,文献[20]在SegNet网络的基础上提出了Bayesian SegNet网络,其引入贝叶斯网络和高斯过程,解决了先验概率无法给出分类结果置信度的问题,提升了网络的学习能力。NOH等人[21]基于FCN提出了一个完全对称的DeconvNet网络,该网络利用FCN与反卷积网络进行互补,使用FCN提取总体形状,利用反卷积网络提取精细边界,既能应对不同尺度大小的物体,又能更好地识别物体的细节,提高了分割效率。
图4 SegNet网络框架Fig.4 Network framework of SegNet
针对编码-解码结构,有学者从以下方面对模型进行了改进:1)提高模型语义分割速度,比如ENet[22]、深度特征聚合网络DFANet[23]、LEDNet[24]等实时语义分割网络模型;2)融合不同分辨率特征,比如可学习的“上采样”模块——UpsamPling[25];3)增大感受野,提高定位精度,比如全局卷积网络(Global Convolutional Network,GCN)[26];4)捕获多尺度上下文信息,保证目标位置信息的精细恢复,如层叠反卷积网络(Stacked Deconvolutional Network,SDN)[27]。
基于编解码器的方法通过上池化或反卷积等操作组成的解码器对低分辨率特征图进行上采样处理,避免了池化操作后特征图分辨率降低的问题,还原了图像的空间维度和像素的位置信息。
注意力机制的基本思想是在运算过程中忽略无关信息而关注重点信息。注意力机制通过神经网络计算出梯度并通过前向传播和后向反馈来学习获得注意力权重。基于FCN的语义分割框架的固定卷积核结构只能接受短距离的上下文信息,为了捕获长距离依赖信息,学者们提出了扩张卷积、空间金字塔等方法,然而这些方法并不能生成密集的上下文信息。为此,ZHAO等人[28]将注意机制引入到语义分割任务中,提出了PSANet网络,通过预测注意力图来学习聚合每个位置的上下文信息。但是,这些基于注意力机制的方法需要生成巨大的注意力图来计算每个像素之间的关系,具有高计算复杂度并占据大量的GPU内存。为了提高语义分割效率,一系列网络结构相继被提出,如十字交叉注意力(Criss-Cross attention Network,CCNet)模块[29]、BiSeNet网络[30]、ACNet网络[31]、HMANet网络[32]等。CCNet模块可以插入任意完全卷积的神经网络,实现端到端的高效分割;BiSeNet网络无需任何上采样操作即可整合全局语境信息,大幅降低了运算时的计算成本,提高了分割速度;ACNet网络利用集成注意力机制的三平行分支架构和注意力辅助模块平衡了RGB-D图像中RGB图像特征和深度图像特征;HMANet是一个用于航空图像语义分割的混合多注意力网络。
近年来,自注意力机制[33]在图像语义分割任务中取得了显著效果[34-36]。WANG等人[34]较早将自注意力机制引入到语义分割任务中,通过非局部操作算子减少堆叠层,保持输入和输出尺度不变,从而将自注意力机制嵌入到分割网络架构中。随后,双重注意网络(Dual Attention Network,DANet)[35]、期望最大化注意力机制网络(Expectation-Maximization Attention mechanism networks,EMA)[36]等方法相继被提出,降低了空间复杂度和时间复杂度。
将注意力机制引入语义分割任务中,通过注意力机制模块学习上下文信息,并对注意力机制进行优化得到十字交叉注意力模块或自注意力机制模块,通过捕获全局的信息来获得更大的感受野,可以减少对外部信息的依赖,从而更容易捕获数据或特征的内部相关性。
概率图模型(PGM)在CNN的基础上,以像素点为节点、像素点之间的概率相关关系为边,有效捕获像素点之间的依赖关系,获取图像全局信息和像素级语义信息,进而为语义分割过程提供丰富的图像上下文内容。常用的PGM包括条件随机场(Conditional Random Field,CRF)、马尔可夫随机场(Markov Random Field,MRF)、贝叶斯网络(Bayesian Network)等。
CRF模型是最常纳入到深度学习框架的概率图模型之一。LIN等人[37]综合利用CRF与CNN进行结构化预测,在信息的传递推理过程中预测信息,避免了额外的学习或信息评估的计算,从而提升了速度并减少了运算量,在大数据量的图像语义分割情况下更具有拓展性。尽管上述方法取得了较丰富的上下文信息,但它们仅将图像输入到CRF一元项和成对项中进行结构化预测,而忽略了对CRF中高阶势能项(Higher Order Potential,HOP)进行充分利用,导致图像语义分割的效果粗糙。于是,ARNAB等人[38]提出将2种类型的HOP嵌入到CNN中进行端到端训练,提高了分割性能。随后,VEMULAPALLI等人[39]尝试使用高斯条件随机场(Gaussian Conditional Random Field,GCRF)代替CRF对分割结果进行优化。另外,部分学者提出了FCN与CRF相结合的模型SegModel[40]和DFCN-DCRF[41]。SegModel模型利用FCN的识别特征与CRF的结构化预测能力,将细分特征、高阶上下文和边界指导相结合,实现语义分割。DFCN-DCRF模型结合RGB-D全卷积神经网络(DFCN)与深度敏感的全连接条件随机场(DCRF),将深度信息添加至DFCN和DCRF中,以提高语义分割的准确率。
MFR模型能够提供先验知识与不确定性描述间相联系的纽带。对于图像边缘的几何特征、图像表面的局部内在特征及灰度变化率等信息,使用MRF模型描述待分割图像的先验分布效果较好。因此,一些学者将标签上下文信息和高阶关系融合到MRF中,并利用平均场(MF)算法在图形处理单元进行并行加速处理,从而减少了计算量,提高了分割效率[42]。另外,还有学者利用MRF来加强网络中空间标记的连续性[43]。
概率图模型以结构化预测的方式优化粗分割物体边界,捕获上下文信息,并充分利用不同位置的局部特征来逐步提高分割精度。
使用概率图模型扩展CNN架构,虽然能有效捕获图像的上下文特征,但是概率图模型在网络学习过程中增加了计算量和计算时间,分割速度较慢。因此,有些学者基于多尺度、多层级的金字塔结构,通过融合不同尺度、不同层次的特征来捕获图像中隐含的上下文信息,从而避免过多损耗,提高了语义分割的速率与性能。
金字塔结构中产生的特征的每一层(包括高分辨率的低层)都是语义信息加强的,LIN等人[44]提出特征金字塔网络(Feature Pyramid Network,FPN),该网络将低分辨率、高语义信息的高层特征和高分辨率、低语义信息的低层特征进行自上而下的侧边连接,使得所有尺度下的特征都有丰富的语义信息。DeepLab V2[12]提出空洞空间金字塔池化(ASPP)来增加多尺度的感受域。YANG等人[45]结合DeepLab的ASPP方法和DenseNet的密集连接,构成了DenseASPP网络。该网络以更密集的方式连接一组扩张卷积,获得更大的接收野和更密集的采样点,完成街景分类任务。HE等人[46]认为ASPP虽然能在一定程度上处理尺度变化问题,但很难在扩张率和尺度变化范围之间取得平衡,因此,其提出动态多尺度网络(Dynamic Multi-scale Network,DMNet),通过动态卷积模块中的上下文感知过滤器估计特定规模的语义表示。如图5所示,ZHAO等人[15]提出的金字塔场景解析网络(Pyramid Scene Parsing Network,PSPNet),通过对不同区域的上下文进行聚合,提升了整体网络运用全局上下文信息的能力。随后ZHAO等人[47]从压缩PSPNet的角度出发,提出了实时分割的图像级联网络(Image Cascade Network,ICNet)。HE等人[48]发现全局导向的局部亲和力(Global-guided Local Affinity,GLA)在构建有效的语境特征中起着至关重要的作用,并在此基础上提出了自适应金字塔上下文网络(APCNet),使用多个自适应上下文模块(Adaptive Context Modules,ACM)自适应地构建多尺度上下文表示。WU等人[49]提出了联合金字塔上采样(Joint Pyramid Upsampling,JPU)模块代替扩张卷积,对低分辨率特征映射上采样生成高分辨率特征映射,该方法在不损失精度的情况下可大幅降低计算复杂度和内存占用。
图5 PSPNet网络框架Fig.5 Network framework of PSPNet
除金字塔结构外,生成对抗网络(Generative Adversarial Network,GAN)也可代替CRF捕获图像上下文信息,在不增加模型训练时间和复杂度的情况下增加长距离空间标签的连续性,具有较强的空间一致性。
LUC等人[50]首次将GAN引入语义分割领域,使用判别器识别真实标签与分割图像,缩小标签与分割图像之间的高阶不一致性。HOFFMAN等人[51]结合GAN与领域适应性,使源域与目标域共享标记空间,并通过最优化目标损失函数来减少特定偏移和全局偏移的影响,提出用于语义分割的领域适应性框架。在医学图像分割领域,XUE等人[52]针对U-Net[17]网络无法有效解决图像中像素类别不平衡的问题,基于GAN思想提出了一种具有多尺度L1损失函数的对抗网络,使用判别器和分割器学习分割对象的全局特征和局部特征,以捕获像素之间的长距离和短距离的空间关系。
GAN模型拥有不断生成数据和辨别数据真假的能力,考虑到特征学习的相关性,将对抗学习应用到半监督或弱监督的学习任务中成为解决小样本特征学习问题的关键。目前已有较多基于GAN的方法应用于弱监督标注数据以进行图像的语义分割,如基于GAN的细胞图像分割[53]、堆叠生成对抗网络方法[54]以及文献[55]所提方法。但是,GAN模型的优化过程不稳定,在处理大规模图像数据时,其可延展性和解释性仍有待提高。
由于FCN采取了反卷积方式对图像上采样输出预测结果,从而造成特征图分辨率降低、部分像素的空间位置信息丢失等问题。因此,研究人员对普通卷积操作采取了各种优化方法。YU等人[56]利用扩张卷积聚合多尺度上下文信息,可以在不损失分辨率、不改变参数数量的情况下增加感受野,在获得图像多尺度局部特征的同时保留大部分像素的空间位置信息,从而提升分割准确率。但是,扩张卷积操作易造成局部信息丢失等问题,WANG等人[57]利用混合扩张卷积(Hybrid Dilated Convolution,HDC)框架优化扩张卷积,扩大感受野聚合全局信息。同时,针对解码过程中使用双线性插值方法带来的细节信息丢失问题,WANG等人[57]设计密集上采样卷积(Dense Upsampling Convolution,DUC)用来捕获在双线性上采样过程中丢失的细节信息。另外,MEHTA等人[58]提出了ESPNet方法,将标准卷积分解为减少计算量的逐点卷积和扩大感受野的空间金字塔型扩张卷积2个步骤,解决了资源或者样本数据受限的问题。针对卷积层的固定卷积对建模不同空间分布视觉元素低效的问题,HU等人[59]提出一种常规卷积替代层——局部关系层,自适应地确定聚合权重,有效组合视觉元素为高级别特征,从而有助于语义分割。TAKIKAWA等人[60]认为直接将数据集的所有信息输入至网络并不能获得最佳结果,因此,提出一种双流CNN架构(形状流和经典流),形状流处理边界相关的信息,与经典流并行地处理信息,同时利用一个新型门控制两路信息交互。该模型在较小和较薄物体上的性能表现较好,在Cityscapes数据集上表现优于DeepLab V3+。
优化神经网络中的卷积结构,进行不同方面的优化或者移除传统的卷积、池化等操作,可以增大感受野,获取像素的空间位置信息,有效减缓特征图分辨率下降的问题,并降低计算复杂度和内存占用。
循环神经网络(Recurrent Neural Network,RNN)是目前深度学习中的另一种主流模型,其不仅可以学习当前时刻的信息,还可以依赖先前的序列信息,有利于建模全局内容和保留历史信息,促进图像上下文信息的利用。
借鉴RNN的思想,VISIN等人[61]利用CNN提取的局部特征和RNN检索的全局空间的依赖关系,基于图像分割模型ReNet提出了ReSeg网络。同样受ReNet的启发,LI等人[62]提出了LSTM-CF(Long Short-Term Memorized Context Fusion)网络,可同时输入光度和深度图像。LSTM-CF模型利用基于长短时间记忆(LSTM)的融合层整合竖直方向上的光度和深度通道的上下文信息,完成网络端到端的训练和测试。但是,仅利用LSTM进行图像处理时需要将图像切成固定大小的块,灵活性差。为解决该问题,LIANG等人[63]提出Graph-LSTM网络,将每个任意形状的超像素作为节点,并自适应地为图像构造无向图,通过建立基于距离的超像素图并应用LSTM传播邻域信息来模拟长期依赖关系和空间连接。随后,该团队从编码分层信息的角度对Graph-LSTM进行改进[64]。针对文献[13-14]仅单纯地将FCCRF加在FCN的末梢分别训练FCN和FCCRF造成它们之间的交互联系缺乏的问题,ZHENG等人[65]提出CRFasRNN网络,其将CRF的学习、推理和求解过程迭代建模为RNN的相关运算过程,通过迭代平均场算法将该过程嵌入CNN模型中。
RNN具有保留先前信息的能力,可递归处理历史信息和建模历史记忆,易于提取图像中的像素序列信息,并且可以通过对图像的长期语义依赖关系进行建模来捕获上下文信息。另外,可以通过将RNN与卷积层相结合嵌入到深度神经网络中,一方面可利用卷积层提取局部空间特征,另一方面可利用RNN层提取像素序列特征。
基于深度神经网络进行全监督学习的分割模型已成为图像语义分割的主流方法,在分割效果上不断取得突破。然而这些方法需要大量人工标签数据进行训练,不仅耗时耗力,且很难大批量获取标签数据。因此,研究人员将目标转向轻量级标注数据,提出一系列弱监督学习的图像语义分割方法,进一步提高语义分割性能。本文根据不同类型的弱监督标注数据,将弱监督学习的图像语义分割方法分为6类:基于边界框标注方法,基于涂鸦级标注方法,基于点级标注方法,基于图像级标注方法,基于混合标注方法,基于附加数据源方法。图6所示为弱监督学习的图像语义分割方法的时间发展轴。
图6 基于弱监督学习的图像语义分割方法Fig.6 Image semantic segmentation methods based on weakly supervised learning
基于边界框标注方法利用包括整个物体的矩形区域作为训练样本,提供标注信息。边界框标注数据不仅包含了丰富的监督信息和物体位置,同时还减少了标签工作,并且可以利用大量可用的边界框注释来改善掩码监督的结果。
DAI等人[66]基于FCN,利用候选区域方法提出BoxSup网络。以边界框标注的图像作为训练样本,运用MCG(Multiscale Combinatorial Grouping)算法得到初步的候选区域,将其作为监督信息输入到FCN中进行优化和更新;然后,利用训练网络对候选区域进行预测,FCN再对网络实现优化更新,如此重复迭代直到准确率收敛到给定阈值。DeepCut[67]将分类问题视为在稠密连接的条件随机场下的能量最小化问题,并通过不断迭代地更新训练目标以实现分割,逐步提高图像的分割精度。
早期多数弱监督学习方法由于使用简单迭代来训练模型,得到的结果和真实标签存在明显差距。SONG等人[68]利用边界框驱动分类区域掩蔽模型(Box-driven Class-wise masking Model,BCM)删除每个类的不相关区域,建立边界框监督生成的像素级细分建议和每个类别的填充率,再利用填充率引导的自适应损失(Filling Rate guided adaptive loss,FR-loss)帮助模型忽略提案中错误标记的像素。该方法从边界框标注数据中获取全局统计信息以调整模型学习,减少了错误标签像素引起的负面影响。
涂鸦(scribble)在交互式图像分割中有着广泛的应用,其被认为是最方便用户的交互方式之一。涂鸦级标注是通过对图像进行涂写得到任意形式的线段,可用于标注没有明确形状的物体,提供其位置和范围信息。
LIN等人[69]提出ScribbleSup模型的涂鸦图像标注方式。该模型的自动标注阶段是将语义标签从涂鸦线条传播给其他像素,用GraphCut算法自动完成对所有训练图像的标记。然后将通过涂鸦方式进行标记的图像输入FCN模型进行图像训练,获得图像语义分割结果。TANG等人[70]将标记像素的部分交叉熵和未标记像素的归一化切割相结合,提出并评估一种在涂鸦级数据标注下归一化切割损失的方法,其显著提高了弱监督训练质量。文献[71]提出的门控全连接条件随机场损失(Gated CRF Loss)方法,关注涂鸦级标注数据,在训练过程中对有标注像素点使用交叉熵损失函数,对于无标注像素点使用门控CRF损失函数,无需额外预处理或后处理,能够实现端到端的训练。
实例点是一种简单提供物体位置信息的稀疏弱标注方式,能够粗略标注物体的中间位置。在相同注释预算的情况下,点级监督可以更有效地利用注释时间,生成更有效的模型。
BEARMAN等人[72]将点级监督信息与CNN模型中的损失函数相结合,在可忽略的额外时间内加强对语义分割的监督,取得了较好的分割效果。MANINIS等人[73]根据分割对象的4个极端点(最左侧、最右侧、顶部、底部像素),提出一种半自动分割的CNN架构Deep Extreme Cut(DEXTR)。首先创建热图并在极值点区域激活,连接热图和输入图像的RGB 3个通道形成4个通道数据输入至CNN中,实现图像或者视频的对象分割。该方法在5个不同数据集上分别进行语义、实例、视频和交互式分割实验,均获得了较好的分割结果。
与其他类型的标注相比,图像级标注无需进行像素标注,使用类别标签作为训练标注,制作简单,工作量小,因而成为弱监督学习图像语义分割的主流方法。部分图像级标注方法将DNN中的卷积层输出视为像素级标签的潜在置信度分数,全局池化操作融合所有像素的输出概率得分以生成图像级的类别得分,作为已标注训练数据来训练分割网络。在此框架内,PINHEIRO等人[74]采用多实例学习机制构建图像标签与像素语义之间的关联,使用超像素和MCG算法等平滑每个像素级的类标签。PAPANDREOU等人[75]采用期望最大化递归预测潜在的像素级标签,并作为新的训练数据来更新模型,以实现期望最大化。DURAND等人[76]将FCN提取的特征图分解为多通道特征,每个通道对应一个显著局部特征,聚合池化后的多通道特征图,最后使用图像级真实标签信息进行学习。
图像级标注的监督信息相较于像素级标注过于粗糙,在图像语义分割任务中难以获得令人满意的分割效果。通过融合的新思想,扩展目标对象区域,深度挖掘监督信息,能有效地提高图像级标注的分割精度。KOLESNIKOV等人[77]融合多种复合损失函数,提出SEC(Seed,Expand,and Constrain)算法。受SEC算法的启发,HUANG等人[78]利用经典种子区域增长(classical Seeded Region Growing,SRG)方法逐步增加种子区域的像素级监督,最终生成准确、完整的像素级标签。WEI等人[79]研究空洞卷积并提出MDC(Multi-Dilated Convolutional)模块,将已标注区域的知识推广到相邻、不确定区域生成密集目标定位预测结果。AHN等人[80]利用AffinityNet网络生成分割标签,在无需外部数据或额外的监督信息的情况下,来补偿物体形状的缺失信息。ZHOU等人[81]使用图像级的类别标注监督信息,通过探索类别响应峰值使分类网络能够很好地提取实例分割掩膜。该方法不仅计算成本小,并且仅用分类标注就能完成有效的分割任务,从而提高了弱监督的逐点定位结果以及语义分割的性能。
WEI等人[82]将显著性作为图像额外先验知识进行信息提取,提出一种STC方法,通过自下而上地检测图像显著性区域,利用显著性区域图和图片标签信息构建像素间的语义关系,并结合图像级注释推断出复杂图像的像素级分割掩码作为监督信息进行学习,从而逐渐提升分割性能。
虽然上述4种标注方法可以有效减少标注成本和标注时间,降低对大量训练数据的需求,但是由于弱标注图像数据的局限性,仅使用某一种弱标注数据的训练效果并不理想。如果混合多种标注数据,取长补短,则可能取得较好的分割结果。XU等人[83]构建了一个统一的标注框架,该框架结合像素级标注、图像级标注、边界框标注和其他部分标注(如涂鸦级标注)等各种不同类型的标注,生成像素级标注数据。
基于半监督学习的图像语义分割方法大多综合使用少量像素级标注图像和大量弱标注图像。例如,PAPANDREOU等人[75]提出的随机梯度下降(Stochastic Gradient Descent,SGD)将少量像素级注释图像与大量弱注释图像组合在一起时获得了优异的性能,几乎达到全监督学习图像语义分割方法的效果。HONG等人[84]提出基于解耦深层编码器-解码器的DecoupledNet半监督分割架构,将分割与分类任务分离,分类网络使用丰富的图像级注释数据进行模型学习,然后,少量带有强注释的训练示例共同优化连接层和分割网络。该方法没有循环迭代步骤,所以具有较好的扩展性。
HUNG等人[55]基于GAN基本框架,将分割网络作为生成器,采用全卷积方式的鉴别器。全卷积鉴别器不仅提供像素级的鉴别,还可以为无标签数据生成置信图,从而提供额外的监督信号,以实现半监督学习。IBRAHIM等人[85]使用一组完全监督的图像和一组边界框标注的图像作为训练样本,通过辅助模型和自校正模块来训练主分割模型,训练性能接近全监督学习模型,但其标注工作大幅减少。
上述点级标注和涂鸦级标注等标注数据难以直接获得,需要一定的人工交互操作。尽管这些类型的标注数据比像素级标注数据更容易获得,但是弱监督学习的主要目标是减少所需的人工交互操作。因此,一些研究人员使用附加数据源,在没有额外人工标注的情况下加入更强的监督信息[86]。
相比于单张图像,视频数据更易获取,且视频也逐渐成为信息传播的主要媒介。文献[87]将视频作为附加数据源进行语义分割,为了从网络存储库(例如YouTube)中自动收集相关的视频剪辑,HONG等人[87]利用全自动视频检索算法,使用类标签作为搜索关键词从Web存储库爬取视频,并利用由弱标签学习的DCNN分类器从视频中选择相关区间来优化搜索结果。另外,HONG等人[88]使用基于注意力模型的新型编解码器架构,将不相关类别的分割知识迁移到弱监督的语义分割任务中。同样,文献[89]提出了一种通用半监督语义分割方法,利用每个领域的少数标注样本和大量未标注数据来训练联合模型。
本章首先梳理常用公开图像数据集和遥感图像数据集,然后对当前语义分割算法的实验性能评估指标进行归纳,在此基础上,对现有语义分割算法的性能进行综合对比和分析。
自语义分割发展以来,图像一直是该领域的关注重点,因此,二维图像数据集的数据量丰富,涉及范围广。本节列举语义分割领域中常见的公共图像数据集和遥感图像数据集,分别如表1、表2所示,其中,“—”表示该方法未提供相应的结果。
表1 常用的图像语义分割公共数据集Table 1 Common image semantic segmentation public datasets
表2 常用的图像语义分割遥感数据集Table 2 Common image semantic segmentation remote sensing datasets
本节将按照图1和图2所示语义分割模型的实验结果分别进行分析与对比。随着语义分割技术的发展和数据处理能力的提高,该技术的应用范围更加广泛,除了运用复杂的网络提高算法的分割准确率外,现实中的应用程序(如自动驾驶、行人检测等)更需要实时高效的分割网络。因此,本节在对比分割准确率的同时,从参数数量和运行速率2个方面分析部分轻量级网络的实时性。
目前已经提出许多用于评估语义分割准确率的评价指标,语义分割算法的性能评价标准主要分为精确度、时间复杂度和内存损耗3个方面。其中,精确度是最关键的指标,虽然现有的文献对语义分割成果采用了许多不同的精度衡量方法,如平均准确率(Mean Accuracy,MA)、总体准确率(Overall Accuracy,OA)、平均交并比(mean Intersection over Union,mIoU)和带权交并比(Frequency Weighted Intersection over Union,FWIoU),但本质上他们都是准确率及交并比(IoU)的变体。在精确度结果评价时,一般选择OA和mIoU这2种评价指标进行综合分析。其中,mIoU表示数据分割的预测值与真实值之间的交集和并集之比,是目前语义分割领域使用频率最高和最常见的标准评价指标,具体计算方法如式(1)所示。其中,假设共有k+1个类别(包括一个背景类),Pij是将i类预测为j类的点数,Pii表示真实值为i、预测值为i的点数,Pij表示真实值为i、预测值为j的点数,Pji表示真实值为j、预测值为i的点数。
(1)
表3所示为全监督学习的图像语义分割方法的mIoU实验结果对比,主要的比较因素有基础网络、是否使用PGM方法以及5类二维公共数据集的评价指标结果,“×”表示未使用PGM方法。
表3 基于全监督学习的图像语义分割方法mIoU结果对比Table 3 Comparison of mIoU results of image semantic segmentation method based on fully supervised learning %
从表3可以看出,目前对静态图像进行语义分割时,大部分算法选用PASCAL VOC 2012 作为测试数据集,当对动态场景进行解析或实时图像语义分割时,很多算法选用CityScapes作为测试数据集。
基于PASCAL VOC 2012测试数据集,DeepLab V3、DeepLab V3+、DUC+HDC、GCN+、Upsampling、PSPNet、PSANet、DANet和EMANet等算法的mIoU值都超过了80%,对图像数据中不同尺度物体有较好的识别率,目标分割结果的边界比较接近真实分割边界。这些算法均是在2017年以后提出,说明基于深度学习的图像语义分割方法正稳步发展。其中,DeepLab V3+分割效果最好,主要是由于该算法吸取DeepLab系列方法的优点,并结合深度可分离卷积来简化模型和提高分割效率,从而实现图像语义分割精度和速度的均衡。
基于CityScapes数据集,DeepLab V3+、DenseASPP、DUC+HDC、GSCNN、PSPNet、PSANet、CCNet和DANet等算法的mIoU值均超过了80%,分割精度基本满足街道场景图像语义分割的要求,然而这些算法的实时性存在不足。ENet、ESPNet、ICNet和BiSeNet这4种算法虽然分割准确率不如上述算法,但这些算法模型尺寸小,计算成本低,能够实时响应。
针对算法参数数量和运行速率2个方面,本文从全监督学习的图像语义分割方法中选择代表性较强、实时性较高的算法进行分析对比。实验均在CityScapes测试数据集中进行,速度分析结果如表4所示,主要的比较参数有参数数量、运行时间和每秒帧数,其中,运行时间代表分割一张图像所消耗的时间,每秒帧数代表每秒能够分割的图像总数量。
表4 CityScapes测试数据集中的算法速度对比Table 4 Comparison of algorithms speed in CityScapes test dataset
从表4可以看出,各类算法的分割速度有较大差异,其中,Enet、ICNet、BiSeNet和DFANet这4种分割算法速度较快,实时性较强,适用于实时图像语义分割。ENet算法的思路启发来自于文献[119],其集成了几个加速因子,包括多分支模块、下采样、较小的解码器、滤波器张量分解等。ICNet网络利用其处理低分辨率图像时的效率和处理高分辨率图像时的高推理质量的优势,在提高分割精确度的同时加快了分割速率。BiSeNet提出了用于高分辨率图像的浅层网络过程和快速下采样的深度网络,以在分类能力和感受野之间取得平衡,其为目前在分割效率和准确性之间取得均衡效果最优的算法之一。
表5列举了在最具代表性的数据集上基于深度学习的弱监督学习图像语义分割方法的实验结果,主要的比较因素有基础网络、是否使用PGM方法、监督信息、实验数据集和评价指标。从表5可以看出,基于边框标注和基于涂鸦标注算法在PASCAL VOC 2012数据集上的mIoU均超过了70%,分割准确率较高。在其他的弱监督网络算法中,一些网络直接利用这些标注作为输入,也有一些网络是在这些标注的基础上生成部分像素点标注数据,再进行全监督训练,其分割效果不明显,分割边界粗糙且不连续,mIoU均普遍较低,分割性能与全监督的语义分割算法相差较大。
表5 基于弱监督学习的图像语义分割方法mIoU结果对比Table 5 Comparison of mIoU results of image semantic segmentation methods based on weakly supervised learning
近年来,随着自动驾驶、安防监控等应用的不断发展,用户对模型尺寸、计算成本、分割精度等方面提出了更高的要求。因此,研究人员通过限制输入图像大小或修剪网络中冗余通道等方法来提高推理和预测速度,从而降低计算复杂度。尽管这些方法在一定程度上提升了语义分割的效果,但它们容易丢失目标边界和小物体周围邻域的空间细节,并且浅层网络易降低特征辨别能力。大型深度学习网络模型在参数优化过程中会消耗大量资源,为减小内存需求,避免维度灾难问题,学者们常采取主成分分析、池化、下采样等操作减小计算量、降低维度,但这些操作容易漏检含有重要语义信息的小尺度区域。另一方面,模型泛化能力弱是目前语义分割领域急需解决的问题,大部分深度神经网络模型只对特定数据集具有较高的分割效果。深度神经网络模型在模型迁移学习时,算法不能获得令人满意的语义分割效果,从而限制了其应用范围。本章在上述深度神经网络语义分割技术评述分析的基础上,对语义分割领域未来的研究方向进行展望。
1)三维点云数据的语义分割
深度神经网络框架已广泛应用于图像处理领域,并取得了较好的性能表现。因此,很多学者将一些深度学习算法拓展到三维点云领域。然而,三维点云自身存在的无序性、密度不一致性、非结构性、信息的不完整性等为点云语义分割带来了难度。另外,三维点云语义分割过于依赖大量数据集,如何大规模地获取三维数据并建立相关公共数据集也是需要解决的问题。在二维图像中,无/弱监督方法可减少标注成本和标注时间,如果将其应用到三维点云语义分割中,不仅能解决大数据量的需求问题,而且可在提高网络模型精度的同时提升分割速率,因此,三维点云语义分割技术在未来具有很大的应用前景。
2)训练数据库和应用场景
基于深度学习的语义分割方法需要海量数据库作为支撑,目前已有的数据集并不能满足语义分割发展的需求,构建丰富、有效且全面的数据集是目前进行语义分割的首要条件。另外,像素级标注等工作都需要消耗大量的人力、财力以及时间,标注成本高。因此,如何快速、高精度地实现自动标注也是未来的一个研究热点。
3)视频序列数据集
目前可用的视频序列数据集较少,导致针对视频数据的语义分割方法研究进展缓慢。带有时间序列的视频数据在语义分割过程中可利用其时空序列信息提供高阶特征,从而提高分割准确性和效率。如何获取更多高质量的视频数据,并充分利用视频中丰富的时空序列特征进行分析,将是语义分割领域的重要研究方向之一。
4)全景图像分割技术
全景图像分割技术对目标区域(前景对象)和背景区域分别利用不同的模型实现语义分割[120]。2019年,KIRILLOV等人[121]结合语义分割FCN和实例分割R-CNN模型,设计Panoptic FPN模型,提高了语义分割的稳健性和准确性。鉴于全景图像分割技术的语义分割有效性和概念的简单性,该方法的前景有待进一步挖掘与探索。
5)网络架构轻量化
随着自动驾驶、行人检测和环境感知等应用领域的发展,人们对语义分割实时性的要求也越来越高。目前,基于网络轻量化的实时分割研究方向主要分为2类:网络压缩和卷积操作分解。第1类通过不同的压缩技术(如参数剪枝[18]、散列法[122]、量化[123]等)减小网络的训练预测规模,从而减少推断所需的计算资源;第2类根据卷积分解原理(Convolution Factorization Principle,CFP)构建实时运行的模型架构,如Enet[24]采用ResNet、ICNet[47]的级联网络等。轻量化的网络架构在保持高精度语义分割的同时可降低模型复杂度,缩短响应时间,实现实时分割,是未来的重要研究方向之一。
本文从语义分割的应用和深度学习的发展角度出发,在算法特点以及模型结构方面分析归纳一些性能较为突出的图像语义分割方法,并进行分类、梳理和评估,对比其在常用数据集上的分割效果。分析结果表明,全监督学习图像语义分割方法的分割效果普遍优于弱监督学习图像语义分割方法,但前者分割速率较低,后续研究将在保持全监督学习方法高分割精度的同时缩短其分割时长或有效提升弱监督学习方法的分割效果。面对未来应用需求更加丰富、性能要求更加严苛的形势,语义分割技术的发展也将面临更多的挑战。因此,下一步将对基于深度神经网络的图像语义分割进行深入探索和研究。