联合光谱聚类和多尺度神经网络的电池板图像语义分割算法*
2023-01-06黄俊凯徐晓龙胡金鹏
张 卓 黄俊凯 徐晓龙 胡金鹏
(河海大学物联网工程学院 常州 213022)
1 引言
目前,在现存太阳能电池板的缺陷检测上,针对使用中电池板的检测系统较为罕见,检测大多依靠人工物理检测手段,效率低且效果差。而在电池板无人化检测的任务里,首要任务是从拍摄的原图像中准确分割出电池板区域。传统的图像分割算法一般根据图像的相似性或不连续性等特点来实现分割任务,主要分为基于边缘的分割算法[1],例如梯度计算法[2]等;基于阈值的分割算法[3],例如OTSU算法[4]等;基于区域的分割算法[5],例如区域生长法[6]等;基于选择性搜索算法,例如光谱聚类等。随着深度学习算法的迅速发展,使用神经网络进行语义分割的方式逐渐取代了传统的方法,成为了当下主流的方法[7]。图像语义分割是将图像中不同意义的区域进行像素级区分,并对不同区域分配对应标签。目前的难点主要在于两个方面:一是如何将全局信息与局部信息进行融合的问题;二是如何权衡分割的精度与速度问题。语义分割网络常采用编码器与解码器的结构,该方法在下采样以及池化的步骤中获取较为高级的语义信息,同时以损失图像特征图分辨率作为代价,因此在恢复语义图的分辨率这项工作中出现了两种主流的方案。
第一种方法是增加上采样层,其最典型的代表为 全 卷 积 神 经 网 络[8](Fully Convolutional Neural Networks,FCN)。FCN使用反卷积层,使特征图还原到源图像的尺寸,解决低分辨率问题。例如Ronneberger等[9]设计的U-Net网络模型,在FCN的基础上将大量的特征通道用于解码器,使上下文信息得到充分的解析。此外还有诸多FCN网络的改进方案,例如RefineNet[10]以及SegNet[11]等。
第二种方法是通过空洞卷积(Dilated Convolutions)的方式[12]。空洞卷积利用系数滤波器,在计算量和参数量不变的情况下得到了更加丰富的全局信息。Chen等[13]使用空洞卷积构建了DeepLab系列的网络模型;Mehta等[14]提出ESPNet网络模型,使用空间金字塔的结构,利用多个不同分辨率的特征图融合全局信息;Zhao等[15]提出了PSPNet网络模型,使用空洞卷积获取了大量的上下文信息,利用多种分辨率的特征图有效的融合了局部信息与全局信息。
在室外电池板分割任务中,传统的图像处理算法难以完成对复杂环境中电池板图像准确的定位;而深度学习语义分割存在边界不清晰、不连续的问题。对此,本文提出一种联合光谱聚类和多尺度神经网络的渐进式图像语义分割算法(Combined Spectral Clustering and Multiscale Neural Networks Image Semantic Segmentation Algorithm,CSCMISS),算法结构如图1所示。CSCM-ISS算法在语义分割网络中引入长短期记忆网络(Long Short-Term Memory Network,LSTM),进行由粗到细的多粒度分割,从而提高分割的准确度;引入多尺度卷积块,通过多尺度融合来提高算法的泛化能力;在传统图像分割模块,使用光谱聚类算法对图像进行分割,最终通过对两模块的贾卡德系数进行argmax运算,将深度网络中的语义信息送入光谱聚类的分割片段中进行融合,实现对室外电池板区域图像的精准分割。
图1 联合光谱聚类与神经网络的语义分割算法结构
2 联合光谱聚类和多尺度神经网络的图像语义分割算法
2.1 融合LSTM层
现有语义分割网络FCN、GrabCut等在实际的应用中存在着各类问题,例如FCN的分割边界不连续,分割结果粗糙,Hu等[16]构建了一种堆叠式FC网络,成功地将粗粒度构建上下文指导引入到细粒度分割中。然而,堆叠式网络不够灵活,在修改分段层数时需要修改网络结构;同时由于需要预先定义分割层次规则,使得分割过程更加复杂。
本文基础网络选择使用RNN,该网络具有递归处理历史信息和建模历史记忆的性质。算法在堆叠网络结构中引入LSTM层,利用其输出支持多粒度图像分割,基于递归神经网络的图像语义分割网络结构如图2所示。与堆叠式相比,由于LSTM层环路数目不受限制,该结构可以灵活地支持多粒度分段,不需要在分段粒度发生变化时重新设计网络结构;利用粗成分的分割结果指导细粒度部分的分割,提高了分割精度。
图2 本文融合LSTM的RNN图像语义分割网络结构
算法使用ConvLSTM算法[17]实现LSTM层。其运算基于LSTM单元的计算公式,如式(1)所示:
其中,“*”表示卷积运算,“⊙”表示矩阵的Hadamard积。在首次循环中,是编码器最后一层的输出特征图。当t>1时,为通道串行融合后的特征图,该特征图融合了最后一层编码器的特征图和t-1次循环中FC模块的特征图。CSCM-ISS算法在网络中使用了两个ConvLSTM层。
网络除了使用堆叠网络中预定义的三粒度(粗、中、细)分割网络训练策略外,还支持按粒度自动分割,在每次循环之后使用ConvLSTM层的输出来对某类对象部分进行分割,通过指定每个循环中需要分割的组件类别,可以逐步得到多粒度的分割结果。定义网络总损失函数为所有循环过程分割结果损失的加权和,计算公式如式(2)所示:
其中,Lt是第t次循环中图像分割结果的损失,λt是相应的权重。在CSCM-ISS算法中,不同次循环分割的结果使用的是相同的权重。选择像素级交叉熵损失作为每个环路的损失函数。
2.2 引入多尺度卷积
CSCM-ISS算法对图像中多尺度目标的编解码结构分割网络进行改进,将传统卷积核大小不变的多层叠加法改为多尺度传感场并行处理后拼接的方法。模型的总体框架如图3所示。
图3 引入多尺度卷积的网络结构
在特征提取阶段,受DeepLab结构的启发,使用不同大小的卷积核分别对特征图进行卷积,与其固定大小的空心卷积不同,本网络中每行的卷积核大小不同,同时拼接后的每条路径在特征图中的深度也不同。
在空间信息恢复的过程中,采用非对称设计的解码结构。针对对称解码结构使网络深度成倍增加,带来梯度分散、训练速度慢的问题,CSCM-ISS算法改进了卷积层的模型,其拓扑结构如图4所示。相较于原始的单一尺度卷积层结构,该结构各分支中卷积核大小不尽相同,并将处理后的特征图拼接并传输到末尾的下一个卷积块;在计算时,每个分支的第一卷积核采用1*1的大小来降低特征图的维数;在分支中添加平均池化层,以尽可能多地保留空间信息;对拼接结果不进行处理,使每个分支产生对齐的特征图,该特征图在进一步的训练中将根据网络的权重进行调整。
图4 多尺度卷积块拓扑结构
在像素级分类问题中,CRF[18]将分类器的输出与图像的局部信息相关联,将标注问题转化为最大后验概率问题。后来一种基于平均场逼近理论的高效求解算法被提出,该方法很好地解决了CRF运算速度慢的问题。平均场计算公式如式(3)所示:
其中Q(X)表示概率分布,和最初的CRF方法不同,平均场不直接计算概率分布P(X)。式中Qi表示第i个随机变量的独立边际分布。对于分布Q(X)近似真实分布P(X),可以用Kullback-Leibler距离来度量分布之间的相似性,计算方式如式(4)所示:
2.3 联合光谱聚类
本文使用超像素分割算法[19]以及光谱聚类算法[20]作为传统图像分割算法。首先,在超像素分割中,利用超像素表示图像,使得在保持目标边界清晰的同时降低处理的复杂度;其次,构造相似度矩阵,使用该矩阵对超像素图像进行处理,并用于光谱聚类。相似度矩阵由相邻超像素之间的5维欧几里得距离[19]构成,其计算公式如式(5)所示:
其中l、a和b是Lab颜色空间中超像素的颜色值,x和y是超像素的中心位置,p和q分别表示第p个和第q个超像素,γ为常量,用来控制紧凑度。在计算相似度矩阵后,利用相似度矩阵进行光谱聚类,得到该输入图像通过传统图像处理方式后的分割图像。在最后的边界合并步骤中,具有最小颜色距离的两个相邻聚类被迭代合并,直到该距离大于阈值T。相邻聚类之间的距离D(Ωi,Ωj),其计算公式如式(6)所示:
其中Ω表示簇域,i和j分别是第i簇和第j簇。p和q分别表示相邻簇中的第p个和第q个超像素,Ep,q表示相邻簇中相邻超像素之间的色差,|E|表示相邻簇中相邻超像素对的个数。阈值T的计算公式如式(7)所示:
其中MaxEdges表示最大色差值。在最后的分割图像融合模块中,CSCM-ISS算法整合了前两个模块中的分割结果。设和…,Nn)分别表示由图像处理和网络模块产生的分段区域,其中Nj和Nn表示从这两个模块获得的分段数目。在开始的阶段,每个段内的像素都标有段号,例如其中表示相应的标签,而后图像处理模块每个段的标签将被更新,更新方式如式(8)所示:
其中J(A,B)表示两个区域A和B之间的贾卡德系数。通过该运算,在网络模块中获得的图像的语义信息被送入基于图像处理的分割的片段中进行融合。
3 实验结果与分析
3.1 数据集
针对文本应用场景,使用自建数据集,包含400多张室外太阳能电池板图像,采集于房顶、屋顶等家用场景与山坡、庭院外等户外场景。
对数据集的电池板图像进行了粒度的标记,包含电池板区域、植物、建筑、屋顶、行人等10个粒度信息。对于多粒度的训练,实验中采用三粒度分割策略,不同的粒度信息在分割的每个循环过程中被划分到不同类别。在数据集中根据各组的比例,生成按类别进行多粒度分割的真值标签图,作为递归网络每一环输出的监督数据。
3.2 评价指标
本文主要从图像语义分割精度的维度对算法进行评判。使用像素分类准确率(Pixel Accuracy,PA)、交并比(Intersection over Union,IoU)、平均交并比(Mean Intersection over Union,mIoU)作为评价指标[21]。
假设图像中有k个种类的像素点,pij表示将第i类像素点判断或预测为第j类像素点的个数,pii表示将第i类像素点判断或预测为第i类像素点的个数。各评价方法计算公式如下:
3.3 对比实验
1)引入LSTM层的CSCM-ISS网络与堆叠式网络对比实验
网络模型中首先使用预定义的三个粒度分割规则来训练网络,其次根据每个类别的比例生成构件分割监督,对网络进行训练。实验设置对照组,比较了RNN、使用堆叠网络结构、使用本文循环网络结构的三种粒度分割方面的效果。对于堆叠网络结构,实验中分别测试了无跳接模型和有跳接模型两种方式,通过其mIoU值进行定量评估,实验结果如表1所示。
表1 不同粒度下个网络分割精度
可以看出,与基础RNN网络结构相比,堆叠式和递归式网络结构在所有粒度上都有明显的性能提升;堆叠网络未添加跳接结构时,循环网络结构性能更好;当向堆叠网络结构添加跳接结构时,递归网络结构的分割精度同样可以与其效果相当。实验结果证明,本文设计的基于递归网络层的图像分割网络能够支持更细粒度的分割,提高了分割精度。图5显示了堆叠式网络结构和递归网络结构的电池板图像分割结果的比较。
图5 堆叠式和递归网络结构图像分割结果对比
分割结果表明,有跳接的堆叠网络可以准确地分割电池板背景与前景等细节,而没有跳接的堆叠网络和递归网络对细节成分的分割效果较差,但后者效果仍然好于前者。在递归网络中加入跳跃连接的难度较大,导致细节分量分割效果较差,如何进一步设计策略来优化细节部分的分割效果是一个重要改进方向。
2)融合多尺度卷积的渐进式CSCM-ISS与多网络对比实验
在上述精细粒度分割的基础上,实验加入多尺度卷积块进行对比,将SegNet、UresNet、DeepLabV3网络与本文中提出的网络进行横向对比,实验结果如表2所示。
表2 几种指标下的分割精度
在实验中选定的图像具有小对象、大对象和边缘不均匀的区域。如图6所示,虽然UresNet等更深层次的网络可以检测到这些目标,但不能很好地切割边界。两者识别目标的能力相近,边界处理的CRF过程效果非常显著。
图6 UresNet网络结构和多尺度网络结构图像分割结果对比
3)CSCM-ISS与RefineNet对比实验
最后将上述神经网络模块与图像处理模块结合,使用RefineNet算法作为对照组,比较最终分割图像的IoU,部分实验结果如表3所示。
表3 融合网络与RefineNet网络分割精度结果
图7显示了两种算法的对比结果图像。第一列和第二列分别为输入图像和真实分割图像。第三列为RefineNet的结果,该算法语义对象提取成功,但边界提取不准确。通过综合图像处理的分割方式产生了边界更精确的语义对象分割结果,如第四栏所示。通过对100张图像的测试,RefineNet的平均交并比为0.8925,而本文所提出的方法将得分提高了3.5%。
图7 RefineNet网络结构和本文网络结构图像分割结果对比
4 结语
本文研究并分析了室外太阳能电池板图像语义分割的需求与任务,针对分割图像边界不清晰、复杂背景分割效果差、网络泛化能力与鲁棒性不足的问题,提出一种联合光谱聚类与多尺度神经网络的渐进式图像语义分割算法。CSCM-ISS算法基于层叠网络结构,首先,通过引入递归处理层实现了粒度由粗到细的渐进式、多粒度图像语义分割。其次,引入多尺度卷积块,提升了模型泛化能力。实验表明上下文相关的多尺度卷积对提高分割精度有很大的贡献。最后针对边界清晰的语义分割问题,提出了一种联合光谱聚类和神经网络的图像分割算法。实验结果表明,算法有效地对室外光伏电池板区域图像进行了高精度分割,为后续图像增强以及电池板缺陷检测提供了良好的条件。