聂晋峰,金绪良,殷爱鸣,张 丽,张 毅,陆相羽
(1.中国大唐集团科学技术研究总院有限公司 华北电力试验研究院,北京 100040;2.武汉科思特仪器股份有限公司,湖北 武汉 430074;3.华中科技大学 电子信息与通信学院,湖北 武汉 430074)
海上升压站各部件在出厂前均覆有防腐涂层以防止钢结构被腐蚀,从而延长升压站结构部件的使用寿命。由于海浪侵蚀等因素的影响,升压站的各部件防腐涂层会产生腐蚀、剥落等问题,极大降低了防腐涂层的保护作用,从而影响钢结构设备的强度,对安全生产带来隐患甚至是灾害。因此涂层钢结构缺陷的及时准确检测对于升压站的安全至关重要。海上升压站基础塔筒一般位于浪花飞溅区或海水潮差区,采用人工检测的方式判断涂层表面是否出现异常,人力成本较高,同时存在很大的安全风险。图像处理技术和目标检测技术的快速发展,使得它们在很多领域都得到了广泛应用,包括遥感影像目标检测[1]等。在缺陷检测领域中,图像处理技术和目标检测技术也发挥了重要作用[2],为智能巡检带来了新型有效的手段。相较于传统人工巡检,智能巡检具有成本低、操控方便等显著优势,且不受限于地形状况,可以到达人徒步无法抵达的区域。
针对海上升压站涂层缺陷检测问题,本文首先构建了一个缺陷数据集;其次设计了一种基于Faster-RCNN的缺陷检测算法,针对Faster-RCNN对升压站涂层缺陷检测的不足,对其进行了改进;再次,提出了一种涂层缺陷评估方法,实现了缺陷程度的自动化评估,提高了缺陷风险管控能力;最后,在构建的数据集上,验证了缺陷检测方法和缺陷评估方法的有效性。
根据检测思路的不同,检测框架主要包括2种:一种是基于回归的检测框架,这种检测框架也称为单步法;另一种是基于候选窗口的目标检测框架,也称为两步法。
相较于两步法,单步法不需要提取候选框,将目标检测看成是回归问题,将分类和定位一起完成,典型方法包括YOLO[3]和SSD[4]等。单步法具有检测速度快的特点,简单网络目标检测速率可达50帧/秒左右,但在检测精度方面,单步法的性能不如两步法高。两步法的典型方法包括Faster-RCNN[5]、Mask-RCNN[6]等,这类检测方法精度较高,但其检测速度可能不满足实时任务的要求。海上升压站涂层缺陷检测的研究目标是涂层表面缺陷检测与识别,涂层缺陷一般不会突然出现,缺陷严重程度也不会突然发生变化,因此缺陷检测的精度比缺陷检测的速度更为重要。因此,本文采用基于两步法目标检测框架Faster-RCNN,以在满足准实时要求的情况下,最大程度地提高缺陷检测精度,满足实际应用需求。
本文设计的基于Faster-RCNN的海上升压站涂层缺陷检测网络如图1所示。
图1 基于Faster-RCNN的涂层缺陷检测网络Fig.1 Coating defect detection network based on Faster-RCNN
图1所示的海上升压站缺陷检测网络由五部分组成:① 特征提取网络:主要用来提取图像的浅层视觉特征和深层语义特征;② 特征融合网络:对浅层特征和深层特征进行融合,将融合后的多尺度特征送入后面的网络中,有助于全面刻画缺陷特征; ③ 候选区域推荐网络:该网络能够对特征图进行处理,凸显缺陷所在的潜在区,候选区域推荐网络可以输出图像中疑似缺陷区域,并给出疑似区的位置和存在缺陷的概率,以便将候选区域送入到后面的检测头网络中进行进一步的回归和分类;④ 检测头网络:对候选区是否存在缺陷以及缺陷的类型进行判别,并给出更准确的位置信息;⑤ 目标检测结果后处理,利用非极大值抑制(Non-Maximum Suppression,NMS)算法,对冗余检测框进行精细化处理。
针对海上升压站涂层缺陷形状不规则、尺度变化大和定位难的特点,对Faster-RCNN进行了改进。首先,针对特征提取网络,在原始骨干网络Resnet50的基础上,引入形变卷积[7]增大网络对缺陷特征的提取能力;其次,使用多尺度特征融合对提取到的特征进行融合,有利于提升大面积点蚀缺陷的检测能力;再次,使用ROI Align结构[6]替换ROI Pooling[5],以减少候选区域提取过程中的定位误差;最后,在后续处理部分,改进Faster-RCNN原有的NMS算法,使用DIoU[8]替换IoU,进一步提高缺陷的定位精度。
缺陷具有形状多变且不规则的特点,使用3×3的普通卷积在采样的过程中会引入很多缺陷的背景,难以提取到缺陷的特征,因此采用形变卷积替换Faster-RCNN骨干网络Resnet50中3×3的普通卷积。形变卷积使用了数据驱动的方式,自主选择卷积过程中的采样位置,以动态改变卷积过程中的感受野。对于一个标准卷积运算,其采样位置可以采用网格R来表示,如对一个标准的3×3卷积,可以表示为R={(-1,-1),(-1,0),…,(1,1)},如图2(a)所示。输入特征Fin,对于输出Fout中位置po的值,卷积的计算过程如下:
(1)
式中:K表示卷积核,pn表示R中定义的所有位置。形变卷积在标准卷积的基础上增加了一个可以描述采样位置偏移量{Δpn|n=1,2,…,N},其中N=|R|,如图2(b)所示。形变卷积的计算过程可以表示为:
(2)
(a)普通卷积
(b)形变卷积
在对如图3所示的大面积点蚀进行检测时,往往因为腐蚀点比较分散且腐蚀面积比较大而不能检测出完整的缺陷区域。
图3 腐蚀检测结果Fig.3 Corrosion detection results
通过对Faster-RCNN的网络结构分析可知,骨干网络Resnet50通过池化操作进行下采样操作,可以使网络层从上到下逐层获得更大的感受野,获得更多的全局信息和语义信息。但是多次使用池化操作减小图像尺寸后,一方面会使原图像的位置信息丢失,定位精度会受到影响,并会造成弱小点状腐蚀的丢失。除此之外,在缺陷检测中,需要对全局有很好的感知才能实现对缺陷进行良好的定位。
因此在Faster-RCNN的基础上,提出了一个特征融合网络FPN-MDM,其结构如图1所示。首先为了避免信息丢失严重的情况,通过自顶向下的融合路径,将提取到的深层特征与浅层网络提取到的纹理和颜色等浅层特征相融合。在融合策略方面,针对感受野不足的问题,提出多尺度空洞卷积模块MDM,以达到在不增加全部参数的条件下,扩大神经元的感知范围的目的。多尺度空洞卷积模块MDM由不同空洞率的空洞卷积[9]构成,如图4所示。
图4 MDM网络结构Fig.4 MDM network structure
所谓空洞卷积就是在相应的卷积中不断填入0,这样既不会改变相应的计算量,也不会改变卷积网络的大小,但可以不断增加感受的视野,不仅可以提高信息提取的精准性,还可以加快信息提取的速度。空洞率指相邻卷积中插入0的个数。普通卷积和空洞卷积如图5所示。
(a)普通卷积
(b)空洞卷积
MDM模块首先经过1×1普通卷积进行特征融合,然后融合后的特征经过不同空洞率的3×3的空洞卷积对特征进行融合。在MDM中,随着模块深度的增加,空洞率增大,空洞率越大,感受野越大。将空洞率按照文献[10]分别设置为1、2、4、8和16。接下来,使用Concat的方法将不同空洞率得到的特征拼接在一起,随后,使用1×1普通卷积进行特征降维,调整特征输出通道数与输入通道数一致。
Faster-RCNN的方法采用候选区生成网络(Region Proposal Network,RPN)搜索缺陷潜在区。经过RPN网络处理后,会产生一系列候选框,由于不同的缺陷候选框大小不一,因此用于缺陷识别的特征图大小也不相同,给后续的缺陷分类器设计带来一定困扰。在传统的Faster-RCNN中,使用ROI Pooling固定特征图,但ROI Pooling的2次量化操作会造成检测框的定位误差,因此采用ROI Align来固定特征图的大小。ROI Align采用双线性插值的方法,利用特征图上距离采样点最近的4个像素得到像素值,通常这些采样点的坐标为浮点数,而使用插值的方式获得其像素值能够避免2次量化带来的误差。
Faster-RCNN中常使用NMS算法来移除一些网络模型预测时生成的多余检测框,该算法的核心思想是指搜索局部得分最大值预测框并移除与局部得分最大值预测框重叠度超过一定阈值的检测框。需要注意的是,NMS算法是对所有待检测目标类别分别执行的。
NMS算法的计算式为:
(3)
式中:M为当前得分最高框,bi为待处理框,si为待处理框对应类别得分值,Nt为IOU阈值。
NMS算法的具体执行步骤如下:
① 获取当前所有目标类别中的某一类别标签对应的所有检测框(Bounding box,Bbox)信息,每个Bbox信息包括边界框坐标和对应类别置信度。
② 对所有Bbox按照类别置信度从高到低进行排序,并记录当前置信度最高的Bbox序号。
③ 计算置信度最高的Bbox与剩下所有Bbox的IOU值,并移除所有大于IOU阈值的Bbox。
④ 对剩余的Bbox,循环执行步骤②和步骤③,直到所有Bbox都满足IOU阈值和置信度阈值要求,无需再重复操作。其他目标类别执行类似的操作。
NMS的原理是基于目标检测置信度产生检测框,其中置信度最高者会被选中,与被选中检测框有明显重叠的其他检测框将会被抑制。
在NMS过程中,采用DIOU替换IOU,原因是DIOU的计算考虑到了两框中心点位置的信息,可获得更好的NMS效果。基于DIOU的NMS计算过程如下:
(4)
由于钢结构表面涂层的同种缺陷之间不存在重叠现象,因此可将式(4)中的阈值Nt设为一个较低的数值,以便能更好地减少冗余框。
缺陷程度的评估通常通过手工测量的方式进行[11],这种方式既费时又费力。随着深度学习的发展,朱劲松等[12]设计了一种基于语义分割的病害评估方法,但该方法需要制备缺陷的逐像素标签,同样需要大量人力。因此,本文在缺陷检测结果的基础上,结合最大类间方差法(OTSU)[13]对缺陷区域进行分割,并根据缺陷分割结果,设计了一种缺陷严重程度评估方法。
直观上来看,涂层缺陷的面积大小直接反映了缺陷的严重程度,为此,需要将缺陷区域从检测框中分割开来。考虑缺陷区域与非缺陷区域在图像的灰度级上具有良好的可分性,采用OTSU算法对缺陷检测框进行缺陷区域的分割。图6给出了一个基于OTSU的缺陷检测框内缺陷区域分割的示例。图6(c)表示缺陷分割结果,黑色区域为缺陷区域。
(a)原图
(b)检测结果
(c)缺陷分割结果
缺陷的面积直接反映了缺陷的严重程度,因此可以从绝对缺陷面积和相对缺陷面积两方面来构造缺陷严重程度评价指标。
绝对缺陷面积指缺陷区域的面积,即在图像上占像素点的数量。对于剥落和腐蚀缺陷,在涂层表面会形成较大的块状缺陷区域,对这些区域通过图像分割和二值化处理后,可以获得缺陷连通域,对缺陷连通域的像素进行统计,作为缺陷面积的估计值。假设目标框i内区域大小为counti,则图像中每个检测框的缺陷面积为:
areai=counti。
(5)
相对缺陷面积指缺陷区域的面积areai占图片大小的比例,设目标检测框大小为M×N,即某一目标检测框的相对缺陷面积表示为:
(6)
设置加权系数为0<λ<1,则综合缺陷程度表示为:
Degree=λ×areai+(1-λ)×rel_areai。
(7)
构成海上升压站表面缺陷数据库的数据获取形式包括三方面:类似海上钢结构表面涂层缺陷图像数据、实地采集的海上升压站缺陷图像数据以及通过数据增强扩增现有样本。
3.1.1 类似海上升压站表面涂层缺陷图像数据
考虑到对于海上升压站场景实际采集的困难性,本文采集和海上升压站相似的陆上钢架结构涂层缺陷图像,作为海上升压站表面涂层缺陷图像的扩充,以增加样本的多样性。部分数据如图7所示。
(a)腐蚀
(b)剥落
3.1.2 实地采集的海上升压站缺陷图像数据
实地采集的海上升压站缺陷图像数据通过自主拍摄的方式获取。此部分数据作为数据集的主要数据,包括了阴天、晴天等各种情况。部分数据如图8所示。
(a)腐蚀
(b)剥落
3.1.3 通过数据增强扩增现有样本
考虑不同类别缺陷样本的数量可能存在不均衡现象,导致某些类型的缺陷检测效果不理想。采取对已有样本通过随机对比度增强、旋转、添加噪声、翻折和随机裁剪等方式,实现训练样本的扩充,扩充后的部分数据如图9所示。
(a)旋转
(b)对比度增强
(c)添加噪声
通过以上三个方面数据集的制备,构建的海上升压站数据集共包含5 266张图像,图像大小为 512 pixel×512 pixel。
将制备的样本集使用LabelImg标注矩形框。按8∶2的比例随机挑选数据划分为训练集和测试集。首先,为了验证本文改进方法的有效性,本节分别对基于形变卷积的特征提取网络、基于空洞卷积的特征融合网络和DIOU-NMS后处理进行消融实验。最后,将常见的缺陷检测算法与本文方法进行了测试,以验证本文方法的先进性。
3.2.1 特征提取网络有效性
为了验证特征提取网络的有效性,对比了对特征提取进行改进前后的检测结果,如表1所示。
表1 特征提取网络有效性Tab.1 Effectiveness of feature extraction network
从表1可以看出,使用形变卷积对特征提取网络进行改进后,能显著提高目标检测网络Faster-RCNN的检测性能。除此之外,使用热力图对网络输出特征进行可视化,可以用来显示输入的图像中哪个部分对图像最终的分类判断起到了作用。为了区分不同区域的作用权重,通过不同的颜色来显示,颜色越红,表示该区域对最终的分类判断起到了越重要的作用。如图10所示的剥落缺陷,分别使用普通卷积构成的神经网络和形变卷积构成的神经网络对其进行特征提取,并得到相应的热力图。可以看出,使用形变卷积后网络提取深度特征更加准确,能更好地提取到缺陷区域的特征。
(b)基于普通卷积 所得热力图
3.2.2 特征融合网络
为了验证特征融合网络的有效性,本小节在已对特征提取网络进行改进的基础上,对比了对特征融合网络进行改进前后的各项指标,如表2所示。除此之外,还将改进前后的检测结果进行了可视化,结果如图11所示。
表2 特征提取网络有效性Tab.2 Effectiveness of feature extraction network
(a)特征融合网络改进前结果
(b)特征融合网络改进后结果
从图11可以看出,对特征融合网络进行改进后,原本未被检测到的大面积腐蚀区域被成功检出,且没有影响小腐蚀缺陷检测。这说明特征融合网络融合多尺度特征以后,有利于不同尺度腐蚀缺陷的检测。
3.2.3 DIOU-NMS有效性
为了验证DIOU-NMS的有效性,本文在对特征提取网络和特征融合进行改进的基础上,对比了使用DIOU-NMS和IOU-NMS的检测结果,结果如表3所示,图12对二者的检测结果进行了可视化。
表3 DIOU-NMS有效性Tab.3 DIOU-NMS effectiveness
(a)IOU-NMS
(b)DIOU-NMS
3.2.4 同类方法对比实验
在对比实验中,将本文算法与CascadeR-CNN[14]、YOLOv5、CenterNet[15]、RetinaNet[16]、VarifocalNet[17]、PAA[18]与本文的基线网络Faster-RCNN进行了对比,使用单类目标剥落、腐蚀的平均精度(Average Precision,AP)和多类目标的平均精度均值(mean Average Precision,mAP)作为评价指标。结果如表4所示。
表4 不同方法的测试结果Tab.4 Test results of different methods
从表4可以看出,基于改进后的Faster-RCNN能够很好地对剥落、腐蚀进行定位与分类。同时为了检验本文的改进方法对于真实场景的适应能力,使用真实场景中拍摄得到的缺陷图片进行测试,测试结果示例如图13所示。可以看出,本文方法均能较好地检测出剥落和腐蚀的缺陷。
(a)剥落缺陷检测
(b)腐蚀缺陷检测
图14给出了剥落、腐蚀缺陷程度评估结果,评估结果显示在检测框的上方。可以看出,面积更大、更密集的缺陷区域,其评分更高,代表缺陷程度更严重,这反映了本文所构建的评价指标的客观性。
(a)剥落缺陷评估
(b)腐蚀缺陷评估
针对海上升压站缺陷检测问题,本文设计了一种基于改进Faster-RCNN的海上升压站缺陷自动检测方法,相对于原始的Faster-RCNN网络,剥落的平均精度提高了6%,腐蚀的平均精度提高了12%,平均精度均值提高了9%,通过实测及其扩充的数据,验证了本文所设计的缺陷检测方法具有较高的精度,实现了海上升压站缺陷自动化高精度的检测。设计了一种缺陷病害程度评估的指标,实现了海上升压站缺陷程度的定量化评估。