朱蕾蕾
(河南省科学技术交流中心,河南 郑州 450002)
图像分割是图像理解的基石,也是计算机视觉研究的关键。传统图像分割方法大多是基于手工特征提取和概率图模型,如随机森林(Random For⁃est)、条件随机场(CRF)、马尔科夫随机场(MRF)等,这些方法很难产生准确的分割结果。
图像语义分割是通过像素水平理解来识别图片内容,通过对图像中的每个像素点进行分类标注,并分割出语义相同的像素区域。2014年,Hari⁃haran等[1]提出SDS语义分割方法,该模型对目标监测和语义分割进行协同,导致训练时间长、内存消耗大。为进一步降低内存开销,提升语义分割的精度,2015年,Long等[2]提出全卷积网络FCN,该模型采用卷积神经网络来实现图像像素到像素类别的变换,开启图像语义分割算法的新时代。之后国内外学者又相继提出了Deeplab[3]、GroupViT[4]等基于卷积神经网络的图像语义分割算法。
上述图像语义分割方法大多是基于卷积神经网络建构的,这类模型仅能学习到图像的局部特征信息,很难对全局上下文的依赖关系进行建模,导致分割结果不理想。此外,现有的图像语义分割研究大多是基于大样本数据,有关小样本数据的研究较少。基于此,本研究提出基于深度残差网络(Deep Residual Network,ResNet)和双向门限递归 单 元(Bi−directionalGated Recurrent Unit,Bi⁃GRU)的图像语义分割模型ResNet−BiGRU。该模型利用深度卷积网络来获取局部特征信息,利用双向GRU网络对全局上下文特征信息进行建模,利用改进的空间金字塔池化方法(ASPP)来解决物体的多尺度问题。试验结果表明,本研究提出的语义分割模型能产生分辨率高、边界清晰的语义分割结果。
本研究在Deeplabv2图像语义分割模型的基础上进行改进,提出适用于对全局上下文特征信息进行建模的图像语义分割模型ResNet−BiGRU模型。ResNet−BiGRU语义分割模型由级联的深度残差网络、基于双向GRU的循环网络、改进的ASPP模块组成(见图1)。
深度卷积网络的层数越深,可抽取到的特征信息也就越丰富,但在实际应用中可能会出现网络退化、梯度消失的现象。因此,本研究选取ResNet101为基准网络来构建级联深度残差网络。其中,Dee⁃plabv2模型中的ResNet101网络由5个卷积组构成,第一卷积组Conv1在完成卷积操作和第一次池化Pool1操作后,输出步长为4的特征图,空间分辨率降低1/4;第三卷积组Conv3在进行特征提取后,特征图的空间分辨率降低1/2,输出步长为8;其他卷积组没有降采样操作,最终得到降采样8倍的特征图。在ResNet101第五卷积组Conv5后增加第六卷积组Conv6,从而构成级联的深度残差网络,Conv6和Conv5具有相同的网络结构。以此类推,在ResNet101网络后可增加多个卷积组,试验发现,在增加第七卷积组后,模型的语义分割精度不再继续提高。6个卷积组构成级联的深度残差网络如图2所示。其中,第四卷积组Conv4、第五卷积组Conv5、第六卷积组Conv6使用空洞卷积,空洞率分别为2、4、4。
CNN网络受限于自身拓扑结构,导致层与层之间在面对建模序列问题时只能利用当前局部特征信息,很难获取图像的全局特征信息。而循环神经网络(Recurrent Neural Network,RNN)能很好地处理特征信息的长依赖关系,还能有效捕捉长时记忆特征。因此,考虑将RNN网络堆叠在CNN网络上进行建模学习,获取全局上下文特征信息。
常见的循环神经网络有长短时记忆网络LSTM、门限递归单元GRU。GRU是LSTM的一种变体,其比LSTM网络参数更少、网络结构更简单,且更易收敛。而双向RNN网络比单向RNN网络多一组反向传播的循环神经网络,这使得双向RNN网络比单向RNN网络能获取更多的特征信息。因此,本研究选取双向GRU来构建循环网络来对全局上下文信息的长依赖关系进行建模。
借鉴Visin等[5]提出的ReNet网络建模思想,构建由2个双向GRU组成的循环网络,该循环网络包含4个独立的GRU,能从4个方向进行水平、垂直扫描特征图,建模学习像素的依赖关系,获取全局特征信息。首先,将输入图像或前一层的特征图X划分成M×N个不重叠的像素区域块;然后,对划分的像素区域块按列进行垂直扫描,得到2个序列(一个自上向下扫描,一个自下向上扫描),并将2个序列输入到2个门限递归单元中;每个GRU通过建模来获取非重叠像素区域块的特征信息,并将2个GRU输出的隐层状态值按坐标索引进行连接,得到新的特征图。同样对新特征图进行自左向右、自右向左的水平扫描计算,并得到新的特征图,其具有来自整个图像的全局上下文信息。为保证循环网络输出特征图的空间分辨率与输入保持一致,将循环网络划分的像素区域块的大小设置为1×1。为平衡计算能力和内存使用,循环网络中每个GRU的隐层记忆单元个数设置为130。
Deeplabv2模型中改进的空间金字塔池化(ASPP)模块通过不同空洞率的4个并行空洞卷积来获取图像的多尺度特征,空洞率设置的越大,相应卷积操作的卷积核就越小,导致边缘像素分割的效果很差。为整合更多的特征信息,提升像素边缘分割精度,本研究对Deeplabv2模型中的原始ASPP方法进行改进。
改进的ASPP模块借鉴“Network in Network”方法中的1×1卷积降维思想,设置一个1×1标准卷积分支来保留前一层的原始特征信息,并去掉原始ASPP方法中空洞率为24的卷积分支。
为了验证ResNet−BiGRU语义分割算法的性能,选取Weizmann Horse数据集进行试验。该数据集由尺寸不同的328幅图像组成,包含马和背景2个类别,且分割目标受色彩、背景、光照等信息的干扰,使语义分割任务更具挑战性。从中随机选取200张作为训练图像,并通过数据增强操作将训练图像增加至12 000张,其余128张作测试图像。
图像语义分割算法性能的评价标准一般为平均交并比(Miou),见式(1)。
式中:Miou为计算真实值与预测结果的交集和并集之比;k为标记类别;k+1为包含背景的总标记类别;pij为属于i类但被识别为j类的像素点的个数;pii为被正确预测为i类的像素数量;pji为属于j类但被识别为i类的像素数量。
ResNet−BiGRU网络模型是基于深度学习框架Pytorch编写的。级联的深度残差网络初始化参数与Deeplabv2模型中ResNet101网络预训练模型参数相同。在进行模型训练时,将输入的图片统一裁剪为(320,320)固定尺寸,模型训练仍采用ploy学习策略,初始学习率设为0.003,批大小设为10,动量项系数设为0.9,总迭代次数为13 000次,power设为0.9,权重衰减系数设为0.000 1。
为了验证ResNet−BiGRU算法的性能,在Weiz⁃mann Horse数据集中进行试验分析,一是对ResNet−BiGRU模型和ResNet−BiLSTM模型语义分割结果进行对比,二是对ResNet−BiGRU模型与其他语义分割模型的算法性能进行对比。
将Weizmann Horse数据集分别在ResNet−BiGRU模型和ResNet−BiLSTM模型中进行试验,二者的初始参数设置相同。2个网络模型在测试图像上的语义分割结果如图3所示,分别为RGB原图像、Groundtruth标签图像、ResNet−BiGRU模型的语义分割图、ResNet−BiLSTM模型的语义分割图。对试验结果分析发现,在ResNet−BiGRU语义分割结果中,马的姿态分割的清晰完整,且错分情况较少,可知ResNet−BiGRU模型的分割性能优于ResNet−BiLSTM模型。
为进一步验证ResNet−BiGRU模型算法的性能,以Miou为评价标准,对PatchCut、CRF learning、CD−FFD+CRF等方法在Weizmann Horse数据集上的语义分割准确率进行对比(见表1)。
表1 不同方法在Weizmann Horse数据集上的语义分割准确率
由表1可知,本研究提出的ResNet−BiGRU方法与基于深度学习的分割方法或传统分割方法相比,语义分割的准确率有所提升。与PatchCut、CRF learning相 比,ResNet−BiGRU的Miou提高 了8.8%;与CD−FFD+CRF相比,ResNet−BiGRU的Miou提高了2.7%;与ResNet−BiLSTM相比,ResNet−BiGRU的Miou提高了1.5%。
CNN网络受自身拓扑结构的限制,很难建模学习全局上下文特征信息。针对该问题,本研究提出基于深度残差网络和双向GRU的语义分割方法ResNet−BiGRU,该方法充分利用CNN和双向GRU的特征学习优势,通过算法建模来获取更多的局部和全局特征信息,产生边界清晰、分辨率高的语义分割结果。然而,本研究构建的网络模型存在时间复杂度较高的问题,如何进一步优化算法性能、提升模型的泛化能力和对小目标物体的分割能力是下一步要进行探索的方向。