APP下载

基于递归层聚合结构的全景分割网络

2023-05-29贾博慧雷海卫李鸣野

中北大学学报(自然科学版) 2023年3期
关键词:全景实例语义

贾博慧, 雷海卫, 李鸣野,2, 吴 倩

(1.中北大学 大数据学院, 山西 太原 030051; 2.中国辐射防护研究院, 山西 太原 030006)

0 引 言

全景分割[1]是分割领域近几年新兴起的一个研究方向, 已经成为计算机视觉中的研究热点。全景分割综合了语义分割和实例分割, 前者按每个像素点赋予某种类别的方式对图像进行分割, 后者从图像中分割出感兴趣的目标并区分不同个体。全景分割的任务是对图像中每个像素点分配语义类别标签和实例ID, 从而将图像内容划分为不可数语义类Stuff类和可数实例类Things类。全景分割能够获取更加丰富的场景信息, 从而提供更多的语义知识。全景分割的研究将有助于推动视频监控、无人驾驶、人机交互等计算机视觉应用的发展, 具有重要的意义。

作为语义分割和实例分割的综合, 现有的全景分割模型大多采用主干网络提取特征供语义分割头和实例分割头分割预测, 再融合两个分支的输出得到最终分割结果的模式。例如, Panoptic FPN[2]网络使用残差网络[3]和FPN提取特征, 在构架层面将语义分割和实例分割合成到单个网络中, 该网络也成为了后续网络模型设计的一个基准方法。UPSNet[4]中设计了全景分割头融合语义分支和实例分支的结果来进行全景预测。SOGNet[5]网络则在整体结构中添加了关系嵌入模块, 从而将实例重叠问题转换为场景交叠图以解决目标重叠时的像素分配问题, 改善了分割效果。EfficientPS[6]网络则进一步优化了分割质量, 该网络以改进的EfficientNet和双向FPN为主干, 使用可分离卷积[7]设计语义分割头, 更好地捕获精细特征和上下文信息以便于高效地编码和融合语义丰富的多尺度特征; 实例分割头基于Mask R-CNN[8]采用可分离卷积和iABN同步层[9]进行增强; 无参数的全景融合头可基于语义头和实例头得到的置信度自适应动态调整实例的融合。该网络在Cityscapes数据集上取得了当时最好的分割效果, 但目前来看分割效果依旧有提升的空间。

本文提出的基于递归层聚合结构的全景分割网络是在EfficientPS网络的基础上进行了改进。在特征提取主干网络中, 通过每层卷积神经网络(CNN)和隐藏状态之间的信息交换更新来实现重用前面层的特征增强当前层特征的层聚合机制, 使得特征信息更加丰富, 增强了模型学习结构信息的能力; 在双向FPN结尾, 通道多样化模块的引入使模型能够学习更多样化更显著的特征; 在语义分割头中, 全局注意力模块增强了语义分割效果, 总体提升了全景分割的质量。本文的主要改进点为:

1)将特征提取主干网络中的EfficientNet网络替换为递归层聚合结构的ResNet网络, 提高了分类网络的精度, 在双向FPN结构后增加了通道多样化模块, 防止卷积层过多模型只关注少数通道, 增强了主干网络提取特征的能力;

2)在语义分割头中增加跳跃连接与全局注意力模块组成的分支, 增强了语义分支的全局上下文信息。

1 相关工作

现有的全景分割方法大都采用语义分割、实例分割同时进行, 并将两部分结果在后处理中融合的策略。由于语义分割和实例分割两个任务的预测结果存在互相重合的部分, 这种全景分割策略具有计算开销较大、信息冗余、精度不足的问题。

文献[6]提出的EfficientPS网络的设计理念就是在保证计算效率的同时, 提升模型精度。因此, EfficientPS对全景分割的主干网络、语义头、实例头、全景头4个子部分进行了根据其特性进行的改进, 包括: 1)改进的EfficientNet以及双路FPN构成的特征提取主干网络, 2)使用可分离卷积设计的语义分割头, 3)可分离卷积和iABN同步层增强的实例分割头, 4)全新的全景融合模块四部分, 并取得了不俗的分割效果。

目前的全景分割算法在CityScapes数据集上的分割结果仍存在实例结果分割不准确的问题。为此, 本文对EfficientPS网络的特征提取主干和语义分割头进行了优化。

特征提取主干网络的性能将直接影响后续分割工作的效果。特征提取主干网络一般由分类网络和FPN结构组成, 残差网络是分割算法中经常使用的分类网络。一些表现很好的模型, 如Panoptic FCN选用ResNet101或ResNetXt-101分类网络结合FPN结构作为模型主干。EfficientPS文献中指出这样的结构尽管效果好但模型参数量大, 出于效率和质量的权衡, 该文献中使用了分类精度与速度兼顾的EfficientNet并加以改进。EfficientNet网络的分类效果确实优于残差网络, 从2016年ResNet结构被提出到2019年EfficientNet结构出现, 这之间有不少新的训练技巧被提出, 而EfficentNet确实使用了最新的训练策略并实现了对残差网络的超越。回看残差网络, 该网络自提出之后, 就受到了学者的广泛关注, 文献[10-12]都针对该网络进行了详细的分析探讨, 并且随着分类精度更高的网络如GoogLeNet[13]、MobileNet[14]陆续被提出, 残差网络也在不断改进增强, 例如Inception与ResNet结合体的ResNeXt[15], 以及在ResNet中引入注意力机制的SENet, 因此, 残差网络仍广泛应用于很多目标检测、分割网络中。同时, 文献[16]对残差网络在训练策略和网络结构上进行了现代化更新, 使两个网络能在训练策略和技术水平相当的条件下较量。实验证明更新后的ResNet完全不输EfficientNet, 这也是我们修改主干网络的动力, 对主干网络的两处修改将在2.2节和2.3节中介绍。

语义头分割头中不能仅考虑单个像素点的分类情况, 借助周围像素点信息综合判断, 可以提升模型的分类能力, 进而提升分割效果。

2 基于递归层聚合结构的全景分割网络

2.1 网络结构

本文的网络结构沿用EfficientPS网络的结构, 如图1 所示, 整体结构包括特征提取主干网络、语义分割头、实例分割头、全景融合头 四部分。

图1 基于递归层聚合结构的全景分割网络结构图

特征提取主干网络部分使用了递归层聚合的ResNet结构和双向FPN结构, 且FPN结构之后接有通道多样化模块。递归层聚合ResNet结构采用了循环网络结构, 在避免模型参数冗余的同时融合了不同层之间的信息用于当前层的特征提取。双向FPN结构使特征信息双向流动, 避免了标准FPN结构信息从浅层到深层单向流动对聚合多尺度特征的局限。通道多样化模块(Channel Diversification Block, CDB)[17]以双向FPN结构的输出为输入, 通过建立全局层面的通道注意力关系增强全局上下文信息, 同时考虑了每个通道信息的重要性, 使网络更关注显著特征。

语义分割头提取精细特征和上下文特征, 并将二者进行失配矫正以融合不同尺寸的特征。精细特征和上下文特征分别由大规模特征提取器(Large Scale Feature Extractor, LSFE)和密集预测单元(Dense Prediction Cell, DPC)[18]提取, 而后使用失配矫正(Mismatch Correction, MC)模块融合特征。主干网络提取得到{P4,P8,P16,P32}, 其中{P4,P8}用于提取精细特征, {P16,P32}用于提取上下文信息, 在输入到DPC中提取上下文信息之前, 先经过跳跃连接和全局注意力模块组合的分支进行处理。

实例分割头沿用了EfficientPS网络中的结构, 即将Mask R-CNN中的卷积、BN操作和ReLU激活函数替换为深度可分离卷积、iABN同步层和Leaky ReLU激活函数。

全景融合头同样遵循EfficientPS网络, 先通过置信度阈值筛选排序和实例重叠检查来减少实例对象的数量, 然后结合实例头和语义头的置信度自适应调整其融合。

2.2 递归层聚合ResNet结构

EfficientPS网络在Cityscapes数据集上已经取得了不错的分割效果, 要在该网络基础上提升分割效果, 提升特征提取主干网络的性能则是策略之一。

特征提取主干网络的性能将直接影响后续分割工作的效果。本文选用递归层聚合结构的ResNet50-D分类网络。残差网络的核心为残差模块, 残差模块给模型带来的性能提升引出了DenseNet网络的层聚合机制, 即通过重用前面层的信息来更好地提取当前层的特征。该网络从特征矩阵入手, 在保证网络中层与层之间最大程度特征信息传输的前提下, 直接将所有层连接, 通过对特征矩阵中信息的充分利用, 加强了特征的传递, 减轻了梯度消失现象。但是, DenseNet网络的密集连接过重, 会导致特征冗余, 而递归层聚合结构(Recurrent Layer Aggregation, RLA)[19]使用循环连接实现层聚合机制可以达到提升网络性能的目的。RLA结构使用隐藏层与CNN之间的循环连接代替密集连接, 保留了层聚合功能, 并且隐藏状态参数共享, 在充分利用浅层网络信息帮助深层网络梯度反向传播的同时, 避免了模型参数的冗余。

RLA结构中的循环连接为隐藏状态与CNN卷积层特征的交互, 可看作是展开的RNN结构, 其借助时间序列的分析方法, 实现层与层之间信息的传递, 如图2 所示。其中, input为输入模型的图片, output为输入经过卷积层提取到的特征矩阵。如果将卷积网络卷积得到特征图的过程看作是生成一个序列的过程, 则卷积网络中的卷积层x0,x1,…,x1就是序列信息, 作为RNN结构的输入,h是隐层状态。

图2 RLA结构

如果一个卷积网络结构能够聚合前层的特征, 则第t层卷积层得到的特征xt可表示为

xt=ft(At-1,xt-1),

(1)

At=gt(xt,xt-1,…,x0),

(2)

式中:At为前t-1层的聚合信息, 对于普通卷积,At=0;ft(·)为第t层的卷积操作;gt(·)为第t层的聚合函数。

对于递归层聚合结构, 隐层状态实现了对前面层的聚合, 设ht为第t层的隐层状态, 则有

xt=ft(ht-1,xt-1),

(3)

ht=gt(ht-1,xt-1)。

(4)

递归层聚合结构利用卷积网络的顺序结构, 构建循环连接分支, 聚合浅层特征矩阵信息。使用ResNet50-D网络为主干对递归层聚合结构进行解释。ResNet50-D结构包含stage 1~stage 5共5层卷积层, 其中stage 2~stage 5中分别包含3, 4, 6, 3个残差块。循环连接分支在stage 2~stage 5中构建, 如图2(c), 并且分支中隐层状态h参数共享, 参数初始为零。卷积网络与隐藏状态的信息交互方式如图2(b)所示, 首先将卷积特征矩阵Xi与隐藏状态hi拼接, 再将拼接结果经过该层的卷积操作进行处理, 其输出结果分别与特征矩阵和隐藏状态相结合。图2 中虚线方框中的操作为可选操作, 在block层之间特征矩阵的尺寸发生变化时, 使用这两个可选操作对特征矩阵和隐藏状态进行处理可以保证二者的拼接融合。

此外, 为增加模型效率, 在模型结构方面, 卷积特征矩阵和隐藏状态交互结构中, 还可增加ECA(Efficient Channel Attention)[20]模块并将BN层替换为iABN同步层。

2.3 通道多样化模块

精度更高分类网络的结合能够充分融合多尺度特征的双向FPN结构, 从而增强了模型提取特征的能力。但是, 卷积神经网络的一个自然趋势是关注少数类指定的主导通道。因此, 丰富模型特征以使模型关注重要和多样化的通道, 是性能提升的一种策略。

本文在双向FPN之后增加通道多样化模块来扩展模型的关注点。作为通道注意力机制的一种模型, 通道多样化模块可看作简化的SE模块[21]和非局部模块(Non-Local Module)[22]的结合。通道注意力机制自2017年在ImangeNet比赛的冠军SENet(Squeeze and Excitation Networks)网络中出现之后就开始受到学者的关注, 并且由于该机制在处理各种计算机视觉任务时的显著效果, 使得它被广泛应用于各种卷积神经网络中。然而, 大部分通道注意力机制网络结构是通过计算通道间的成对关系来实现全局信息的获取, 却忽略了单一通道信息的重要性。单个通道信息的提取可以更好地利用通道的全局信息, 使模型关注到最具区别性的特征, 并且不需要增加太多参数。

通道多样化模块以特征提取主干网络最后一层的特征图作为输入特征, 利用全局平均池化生成表示每个通道特定意义的c维特征向量, 同时生成一个通道关系矩阵, 用于区别指定通道和其他通道。将通道关系矩阵和c维特征向量叠加在一起, 使用卷积操作得到每个通道的加权得分。

通道多样化模块结合了通道间关系和通道的总体重要性, 结构图如图3 所示。其中,H,W,C分别为输入特征矩阵input的宽、高、通道数, Conv表示卷积操作,(-1)*T表示转置操作, ‖表示拼接操作,·表示数组元素依次相乘, ×表示矩阵乘法。C×C×1通道间关系由non-local模块中的全局注意力池提供, 即不进行空间关系的计算只计算通道关系, 则通道i和通道j的通道关系aij可表示为

图3 通道多样化模块

(5)

式中:C为通道数。通道关系的计算公式可给最相关的通道更小的权重, 而给不同的通道以更大的权重, 从而实现单个通道信息的关注。

每个通道的重要性由SE模块的全局平均池化部分提取, 则每个通道的重要性可表示为

(6)

对于输入特征矩阵X∈RC×H×W, 先经过SE模块的全局平均池化部分, 得到C×1维的特征向量, 并使用softmax操作对特征向量进行归一化操作, 即

(7)

同时, 对输入特征矩阵使用简化的non-local模块来计算通道之间的关系, 得到C×C维的通道关系矩阵, 再使用softmax基于通道进行归一化, 即

J=softmax(-X·XT)。

(8)

然后, 将全局平均池和通道关系矩阵的归一化特征拼接在一起, 得到特征矩阵Y∈RC×(C+1)。

Y=concate(A,J)。

(9)

经过卷积操作加强全局上下文之间的关系, 得到注意力向量, 再与原始输入特征相乘后添加到原始输入特征矩阵中, 即

Z=X⊗Conv(Y)+X。

(10)

2.4 全局注意力模块

上下文信息在分割中起着重要作用。经典的ASPP模块通过空间金字塔模块丰富模型的上下文信息, EfficientPS网络的语义分割头也设置了DPC模块分支来提取远程上下文信息。为了进一步细化模型的分割效果, 可以尝试去修改语义分割中用于获取远程上下文信息的分支。对该分支的修改既要保证增强上下文信息, 又要限制对模型效率的影响。

鉴于DPC模块表现出的良好性能, 本文选择保留DPC模块并额外增加与跳跃连接组合的全局注意力模块(Global Attention Module, GAM)[23]。

GAM模块通过深度卷积和仿射变换对全局注意进行编码。深度卷积对输入特征的每个通道独立进行卷积运算, 而不是所有通道对应同一个卷积运算, 由于没有利用通道在相同空间位置上的特征信息, 所以减少了参数量。同时, 单个卷积核只需要对相邻位置特征进行编码而非对整个特征矩阵, 对特征矩阵进行仿射变换则可以使相邻位置特征关联到全局信息。另外, 在语义头中添加GAM模块增加了模型深度, 跳跃连接与GAM组合可防止模型退化。实验结果证明了以上设计的有效性。

GAM的整体结构如图4 所示。对输入特征矩阵X∈RC×H×W(取batch size=1)进行旋转操作, 分别得到XR1∈RW×C×H和XR2∈RH×W×C。对于XR1, 在C-H视图上, 进行卷积操作, 获取通道方向的关注得到特征向量QC=RW×1×H, 在H的水平位置得到特征向量QH∈RW×C×1。同样, 对于XR2, 有通道编码向量KC∈RH×W×1和垂直位置编码向量KC∈RH×1×W。分别将QCQV和KCKV做矩阵乘法, 再分别旋转回RC×H×W的原始维度, 使两特征向量维度相同后进行拼接操作, 并做非线性变换激活操作, 最后与原始输入矩阵X对应元素相乘。模型最终的输出可表示为

图4 全局注意力模块

Z=f(concate(rot(QCQH),rot(KCKV)))⊗X,

(11)

式中: rot(·)为旋转操作;f(·)操作使用1×1卷积将特征矩阵的channel由2C调整为C, 并使用BN层归一化以及非线性激活函数。

3 实验结果分析

3.1 数据集

实验数据集采用公共数据集城市街道场景Cityscapes[24]。该数据集中的图片为无人驾驶环境下50个城市、分辨率为1 024像素×2 048像素的街道交通场景。该数据集包含5 000张像素级精细标注图片和20 000张粗糙标注图片, 其中可用于全景分割的像素级精细标注图片包含8种前景实例类别和11种背景填充类别。实验中将带有像素级标注的5 000张图片划分成2 975张图片的训练集、1 525张图片的测试集和500张图片的验证集。

3.2 评价指标

全景分割的性能采用全景质量PQ(Panoptic Quality)、平均精度AP(Average Precision)以及平均交并比mIoU(mean Intersection over Union)进行衡量。

PQ对所有匹配上的分割求平均IoU, 并惩罚匹配错误的像素点, 在数值上可看作是分割质量SQ(Segmentation Quality)和识别质量RQ(Recognition Quality)的乘积; SQ为预测和标注的mIoU, 衡量分割的准确程度; RQ为匹配正确的分割占所有分割的比例, 衡量实例识别的准确度。相关定义如下:

(12)

(13)

(14)

(15)

式中:nTP表示预测正确的正样本数;nFN表示漏报的正样本数;nFP表示误报的负样本数;k为类别总数;p,g分别为预测值和真值。另外, PQTh和PQst分别表示在thing类和stuff类上的全景质量。

3.3 实验结果

实验环境基于Ubuntu 20.04操作系统、Pytorch 1.9.0框架、英伟达 GeForce RTX 3090显卡、24G显存。训练过程中, 输入图片尺寸为1 024×2 048, 图片批尺寸为2, 使用SGD优化器, 学习率为0.007, 动量为0.9, 迭代次数为80 000。

为验证模型的分割效果, 将其与其他模型方法在Cityscapes数据集上进行实验对比, 结果如表1 所示。由 表1 可以看出, 基于递归层聚合结构的全景分割网络的PQ指标相较于EfficientPS网络提升了0.9%, 前景实例目标和背景填充区域的分割指标PQth和PQst分别提升了0.5%和1.3%, AP与mIoU提升了0.8%和0.2%。与Panoptic FCN和Panoptic-DeepLab网络相比, PQ指标分别提升了3.4%和1.8%。

表1 Cityscapes 验证集全景分割结果比较

本文模型在提升分割质量的同时, 效率也得到了保证。相较于EfficientPS网络, 模型参数仅增加了0.22×106, FLOPs增加了6.37×109, 并且其参数量和FLOPs指标均优于单阶段的Panoptic-DeepLab[25]网络。本文模型是在EfficientPS网络基础上改进得到的, 因此对两个模型的参数情况进行了比较。详细的模型参数变化分析见表2。由于实例头和全景头这两部分的参数量并未发生变化, 所以没有将这两部分列在表中。

表2 模型参数变化比较

图5 所示的可视化结果图直观地展示了模型的分割效果。本文模型在第一行图片中左侧的X型信号牌以及列车头的轮廓分割得更好, 右侧水平方向街道的分割轮廓更整齐; 第二行图片中最右侧汽车的分割更接近于标注图; 第三行分割结果中街道和围墙的线条更加平滑。

图5 Cityscapes验证集上的可视化分割结果

3.4 消融实验

为验证本文网络模型各模块的贡献效果, 在Cityscapes数据集上进行消融实验, 实验结果如表3 所示, 其中, CM为通道多样化模块, GM为全局注意力模块, “-”为网络结构中未使用, “√”为已使用。

表3 Cityscapes数据集消融实验结果

由表3 可以看出, RLA结构的层递归聚合机制提升了主干网络提取特征信息的能力, 使PQ指标上提升了0.3%; 通道多样化模块将模型注意力从单一通道转移到最具区别性的通道, 丰富了网络特征, 提升了分割的准确度, SQ指标提升了0.7%; 全局注意力模块引入上下文信息, 增强了语义分割效果, 与EfficientPS和未添加模块的本文模型相比, PQth分别提升了0.4%和0.6%。

4 结束语

本文在EfficientPS网络的基础上提出了基于递归层聚合结构的全景分割网络。首先, 递归层聚合结构的ResNet网络与结尾带有通道多样化模块的双向FPN组成特征提取主干, 丰富了特征信息, 增强了模型的特征提取能力; 其次, 语义头中增加的跳跃连接与全局注意力模块构成的分支, 改善了卷积通过局部性提升效果而丢失远程上下文信息的问题, 同时避免了模型退化, 整体上提升了前景和背景的分割效果。实验结果表明, 本文的模型相较于EfficientPS有更好的分割效果。本文模型分割的整体性能有所提升, 但有些分割区域的边缘还不够平滑, 因此还需研究更好的融合策略。

猜你喜欢

全景实例语义
戴上耳机,享受全景声 JVC EXOFIELD XP-EXT1
语言与语义
全景敞视主义与侦探小说中的“看”
从5.1到全景声就这么简单 FOCAL SIB EVO DOLBY ATMOS
全景搜索
“上”与“下”语义的不对称性及其认知阐释
认知范畴模糊与语义模糊
完形填空Ⅱ
完形填空Ⅰ
语义分析与汉俄副名组合