孙志刚, 赵 毅, 刘传水, 于振宁,张恕孝, 蓝梦莹, 刘晶晶, 王艳云
(渤海装备华油钢管公司, 河北 青县062658)
金属管道可分为直缝焊接管道、 螺旋缝焊接管道、 球墨铸铁管和无缝管道, 其在制造、 加工及使用中通常出现一些缺陷, 如焊接缺陷[1]、 电弧烧伤、 划伤[2-3]、 管道分层缺陷[4]等, 这些缺陷存在于管道外部和内部。 对于管道内壁缺陷,最初的检测方法是人工检测, 检测速度慢, 劳动强度大, 检测过程容易出错。 对于一些狭窄的管道, 由于受检测空间限制, 作业人员难以进入管道内部。 随着技术的进步, 出现了运用管道机器人进行管道检测的方法, 管道机器人携带云台摄像机进入管道内部进行管道图像采集,专业人员对图像进行检查与统计, 得到检测结果。 这种检测方法仍然需要人工参与, 不能实现完全自动化检测。
近年来, 伴随着人工智能机器学习算法的迅速发展、 计算成本的下降以及移动互联积累的大数据和应用的不断普及, 人工智能被越来越多地应用在生产实践中。 通过机器视觉技术, 可以利用计算机模拟人的视觉功能, 识别图像中有用信息。 针对管道缺陷的检测, 研究人员利用图像处理技术对图像进行处理, 以缺陷为识别目标, 使用图像目标识别方法进行缺陷识别。 例如, 使用优化Faster RCNN 算法对排水管中存在的障碍物进行检测[5]; 使用改进的卷积神经网络算法对管道焊缝法兰组件进行识别[6]; 使用粒子群优化的K-means 聚类分析与统计, 对管道图像中存在的裂纹、 管接头、 孔形缺陷进行识别[7]; 使用改进的SSD 网络对管道漏磁缺陷进行检测[8]; 使用HOG 和SVM 对地面油气管道进行检测[9]。 其中, SSD 算法在小目标检测上存在特征提取不充分问题, SVM 算法在大规模样本训练上存在困难, 且分类精度不高。 针对金属焊接管道内壁的检测, 笔者分析了现有管道存在的缺陷问题以及管道内壁缺陷图像的特点, 提出了一种基于机器视觉的检测方法, 运用改进的Faster RCNN 算法对管道内壁进行缺陷自动检测。
卷积神经网络 (CNN) 是一种基于大脑视觉组织原理建立的深度学习模型, 其网络结构包括卷积层、 池化层和全连接层3 个网络层。CNN 最早用于手写数字识别, 之后不断进行改进优化, 目前, 基于卷积神经元网络的目标检测模型已经有了一些成果, 包括如R-CNN[10]、Faster RCNN[11]、 YOLO[12]、 Mask-RCNN[13]以 及SSD[14]等检测算法模型, 这些深度学习算法应用于人脸识别、 运动分析、 车辆识别等领域, 这些方法各有特点, 在速度和精度上取得了良好效果。
Faster RCNN 是基于VGG16 形成的网络结构, 其检测流程如图1 所示。 根据Faster RCNN的整体检测流程对框架进行拆分, 共分成4 层,第一层是卷积层, 通过多层卷积运算提取特征图; 第二层是区域建议网络 (RPN) 层, 可生成区域候选框; 第三层是候选区域 (region of interest, ROI ) 池化层, 对大小不同的区域候选框特征图进行池化运算, 以获取固定大小的区域候选框特征图; 第四层是对前一层的结果图进行全连接操作, 并进行分类和回归操作, 以获取目标物体在图像中的准确位置。
RPN 网络以任意大小的图像作为输入, 利用滑动窗口来扫描图像, 并寻找可能存在目标的区域, 输出一系列的矩形预测框。 RPN 扫描的区域被称为锚框anchor。 在RPN 网络训练时损失函数定义为
式中: Lcls——分类损失函数;
Lreg——回归损失函数;
λ、 μ——Lcls和Lreg的权重值, 调整Lcls和Lreg可加速网络训练。
式中: i——每个小批量中锚点的序号;
gi——锚点i 作为对象的预测概率;
gi*——该锚点处是否有目标对象, gi*=1 代表有, gi*=0 代表没有;
免疫组织化学标记 上皮膜抗原(部分+)、波形蛋白(+)、CD31/CD34(EC+)、神经元特异性烯醇化酶(局灶+)、CD68(组织细胞+)。
di——表示4 个参数化坐标和预测边界框的向量;
di*——是anchor 坐标回归的真实值;
R——采用SmoothL1函数计算损失值。
di为dx、 dy、 dw、 dh四 个 参 数, di*为d*x、d*y、 d*w、 d*h四个参数, 表达式为
其中x、 y、 w、 h 分别为RPN 网络预测框的中心位置坐标以及宽高; 变量x、 xa、 x*分别用于预测框、 锚定框和目标真实框的坐标; 对于y、 w、 h 同理。 此外, 由x、 y、 w、 h 可以求出预测框4 个角的坐标, 分别为
池化层原理是将前一层网络生成的具有候选框的特征图, 对每一个候选框的特征图按照水平和垂直方向分为若干区域, 每个区域进行最大池化处理, 使其得到固定尺寸的输出。
DenseNet[15]是2017 年提出的一种密集连接的卷积神经网络结构, 网络结构中层与层之间相互连接, 能够提高准确度以及缩减参数数量。DenseNet 的网络基本结构如图2 所示, 其结构包 括 密 集 连 接 块 (DenseBlock) 和 过 渡 层(Transition Layer) 两 种 模 块。 相 比 于ResNet,在DenseNet 中, 同一个DenseBlock 中的每一层都与之前所有层相关联, 由于每个层从前面的所有层接收特征映射, 所以网络可以更薄、 更紧凑, 即信道数可以更少。 若网络有L 层, 在DenseNet 网络结构中会有L (L+1) /2 连接, 每一层输出均为后面所有层的输入, 其非线性变换方程表示为
其中Hl为第l 层批量标准化 (BN) 与激活函数 (ReLU) 以及3×3 卷积 (Conv) 的组合,激活函数的表达式为
特征金字塔网络 (简称FPN), 其思路是将网络顶层的特征图像逐层采样并与前层的特征图进行融合, 此方法的特点在于解决了物体检测中的多尺度问题, 能够高效地提取图片中各维度的特征, 提高了小物体检测的精确性。
图2 DenseNet 网络基本结构示意图
本研究采用DenseNet-FPN 的网络结构, 包括特征提取模块和特征金字塔融合模块, 其网络架构如图3 所示。 其中的特征提取模块为DenseNet, 而特征金字塔融合模块包括4 个优化单元和1 个拼接单元, 以及4 倍的上采样和分类, 最后得到预测图。 基于Faster RCNN 原理,利用DenseNet 网络取代VGGNet 网络, 并与FPN 进行结合, 其整体结构如图4 所示。
图3 DenseNet-FPN 网络架构
图4 改进后的Faster RCNN 整体结构图
根据管道内壁缺陷图像特点, 运用机器视觉检测技术对管道内壁图像进行缺陷自动识别, 即运用改进后的Faster RCNN 算法对管道内壁进行缺陷识别, 并标记缺陷位置。
改进后的Faster RCNN 网络训练流程包括两个网络: ①基于DenseNet 与FPN 结合的Faster RCNN 网络; ②基于区域候选框的RPN 网络。RPN 网络和Faster RCNN 网络分别对预训练的ImageNet 网络进行初始化。 Faster RCNN 网络训练对输入图像经过卷积网络的特征提取, 得到预测的特征图, 而RPN 网络训练通过输入图像得到可能包含目标区域的若干提议框, 两个网络共享一组CNN 卷积层。
改进后的Faster RCNN 算法对金属焊接管道内壁检测流程可分为3 个步骤: ①将原始管道内壁图像输入DenseNet-FPN 网络, 从而获得包含预测区域的特征图, 同时与RPN 提取的具有候选区域的特征图进行结合, 得到更多可能候选区域;②将具有候选框的特征图输入池化层得到固定大小的候选识别区域图像; ③最后将可能具有目标区域的图像进行识别并分类与回归, 从而得到不同缺陷类型的目标图像。
试验数据源于管道机器人巡检图像。 管道机器人系统作业流程: 由移动平台带动机器人移动, 当触到管道断面时停止移动, 机器人从移动平台进入管道内部, 摄像机启动拍摄图像, 机器人通过云台转动从而拍摄到管道内壁不同角度图像, 机器人到达管道尾部, 停止移动, 回退到管道起始端, 确认移动平台在指定位置则返回移动平台。 图5 为机器人巡检管道系统模型及现场巡检照片。
本次试验共有3 000 张图像, 并按照管道缺陷类型对压坑、 划伤、 刺坑、 焊渣、 异物压入进行分类, 每个样本数据600 张左右。 同时, 将本次试验图像分为训练集图像、 验证集图像和测试集图像, 按照2∶1∶1 的比例进行分配并相互独立(训练图像不作为验证图像使用)。 由于试验数据充足, 可以有效支撑模型训练, 不会因数据较少而导致模型训练产生过拟合, 而且交叉验证会增加训练时间, 因此, 本试验采用深度学习验证方法, 而未使用交叉验证。
图5 管道机器人检测系统模型及巡检照片
运用改进后的Faster RCNN 模型对管道内壁缺陷进行识别并标记, 结果如图6 所示, 图中展示了不同缺陷类型的识别结果。
本试验运用不同的方法进行识别, 从正确率和召回率进行比较, 正确率是指正确标记目标类别的外围框数量与所有标记出的外围框数量的比值; 召回率是指正确标记目标类别的外围框数量与所有标准的外围框数量的比值。 根据管道缺陷类型不同, 分成压坑、 划伤、 刺坑、 焊渣、 异物压入5 大类, 从这5 类识别结果中最终得到平均正确率及平均召回率, 结果见表1。 从表1 可以看出, 改进后的Faster RCNN 的平均正确率高于以ZFNet 为卷积神经网络结构的Faster RCNN、以VGG 为卷积神经网络结构的Faster RCNN 以及SSD 算法的平均正确率。
图6 不同类型缺陷识别结果
表1 试验结果统计表
为了提高管道内壁的检测效率, 本研究提出的基于改进后的Faster RCNN 深度学习算法对金属焊接管道内壁图像进行识别, 为管道修复工作提供了可行性参考数据。 利用管道机器人进行管道内壁图像采集, 并运用深度学习算法识别图像目标代替人工识别, 为管道内壁缺陷检测提供了一种新的检测方法, 该方法既能提高检测精度, 又可减少成本。 试验结果表明, 运用改进后的Faster RCNN 深度学习算法进行管道缺陷识别具有识别精度高的优点。 通过试验发现该模型在小的缺陷目标检测识别中准确性优于目前主流模型。 因此, 本研究提出的方法具有较高应用价值。