基于深度学习的连铸坯表面缺陷检测

2019-09-20 07:36胡嘉成王向阳
关键词:连铸特征提取纹理

胡嘉成, 王向阳,刘 晗

(1. 上海大学通信与信息工程学院, 上海200444;2.上海金艺检测技术有限公司, 上海201900)

连铸的质量好坏很大程度上决定着钢材成品的质量. 为了保证炼钢、连铸和轧钢能按照生产计划进行, 研发连铸热坯缺陷检测, 可以省略连铸坯冷却再检测的步骤. 这样不仅可以降低钢材的生产成本、提高装置的生产效率, 还可以减少因生产过程中高温钢材与空气接触而导致的产品被氧化, 提高产品的合格率. 连铸坯的表面缺陷主要表现为表面裂纹、凹陷、夹杂物、气孔、划痕等. 结晶器上下运动的结果是在铸坯表面形成了周期性的沿整个周边的横纹模样的痕迹, 称之为划痕. 发生纵裂是由于初生坯壳厚度不均匀, 在坯壳薄的地方应力集中. 当应力超过其抗拉强度时, 产生裂纹. 夹渣主要由被卷入钢水中未熔化的渣粉或上浮的夹杂物产生的.

图1 是上海宝钢公司所提供的连铸坯的缺陷图像, 其中第一列为无缺陷, 第二列为裂纹;由于凹陷、夹杂物、气孔、划痕等缺陷数据较少, 所以将其总和归为第三列其他缺陷.裂纹缺陷作为主要缺陷,数据较多,但有些裂纹比较细微,传统的涡流检测[1-2]、红外检测[3-4]、Adaboost算法[5]、特征提取后用支持向量机(support vector machine, SVM)分类的方法所获得的效果都不能达到工业检测要求. 凹陷、夹杂物、气孔这类缺陷在铸坯中大小不一, 有的缺陷位置比较集中, 有的位置比较分散, 且缺陷在铸坯表面的深浅也不同, 给检测带来了较大的难度.

图1 连铸坯样本Fig.1 Continuous casting samples

近年来, 卷积神经网络(convolutional neural network, CNN)[6-7]在机器学习和计算机视觉方面取得了巨大的成功, 特别是在图像分类领域, 如使用CNN 手写数字识别率高达99%. 对大规模图像分类数据集, 如imageNet[8], CNN 已经转移到其他视觉任务, 如对象检测[9]、语义分割[10]和边缘检测[11]等. 2012年, AlexNet 获得imageNet 图像分类冠军[12]. 此外, 研究人员还提出了其他改进方法, 如VGGNet[13]、GoogleNet、网络中的网络(network in network,NIN)[14]和ResNet[15]等.

传统的连铸坯检测方法都不能达到工业检测的要求, 而深度学习在图像分类上具有强大优势, 所以本工作将采用深度学习方法对连铸坯缺陷进行检测、识别.

1 SVM

SVM 在解决小样本、非线性及高维模式识别中表现出许多特有的优势. 对于连铸坯缺陷样本, 本工作采用中值滤波、灰度共生矩阵、纹理、Hu 不变矩、纹理-Hu 不变矩组合对图像进行特征提取, 再通过SVM 对样本进行分类. SVM 的核函数为线性核函数、多项式核函数、径向基函数(RBF 核函数)、二层神经网络核函数(sigmoid 核函数)四类.

实验表明, SVM 选取RBF 核函数时, 分类效果较好. 通过纹理-Hu 不变矩组合对图像进行特征提取, 再使用SVM 分类的效果更好.

2 深度学习

2.1 AlexNet

AlexNet网络[12]结构如图2 所示, 图3 为图2 中卷积模型的具体层类型和参数. AlexNet包含5 个卷积层和3 个全连接层. 前5 个是卷积层, 后3 个是全连接层. 最后1 个全连接层输出一个3 维的Softmax 来表达对3 个类别的预测. 在卷积层中用不饱和非线性的神经元作为线性整流函数(rectified linear unit, ReLU), 其不饱和非线性函数为f(x) = max(0,x), 连接归一化层(norm)增强泛化能力, 响应归一化的表示为?

式中, a 表示第i 个核在位置(x,y)运用ReLU 非线性化神经元输出, n 是在同一位置上临近的Kernel map 的数目,N 是Kernal map 的总数. 本工作参数设定为K =2,n=5,α=1×10-4,β =0.75.

第1 个卷积层的输入是128×28×3 的连铸坯图像, 然后用96 个11×11×3 的步长为4像素的卷积核去过滤(步长是相邻神经元感知区域中心之间的距离). 第2 个卷积层将第1 个卷积层的输出作为输入, 然后用256 个5×5×48 的卷积核进行过滤. 第3 ~5 个卷积层前后相连, 之间没有归一化层和池化层. 第3 个卷积层有384 个3×3×256 的卷积核, 连接着第2 个卷积层的输出(归一化层+池化层). 第4 个卷积层有384 个3×3×192 的卷积核, 第5 个卷积层有256 个3×3×192 的卷积核. 前2 个全连接层各有4 096 个神经元, 最后1 个全连接层有3个输出神经元. 实验学习率为0.000 1, 迭代20 000 次, 训练为50, 测试Batchsize为40.

图2 AlexNet 结构示意图Fig.2 Structural diagram of AlexNet

图3 卷积模型的具体层类型和参数Fig.3 Layer types and parameters of the convolution model

2.2 NIN

连铸坯凹陷、夹杂物、气孔、划痕等缺陷数据较少, 所以将这些缺陷统一归为第三类. 第三类数据的缺陷种类不同, 缺陷在图像中的分布情况也不一, 特征的非线性度较高. 在CNN中, 卷积层是一个广义线性模型, 在NIN[14]中, 广义线性模型被一个微网络结构代替, 这个结构是一个广义的非线性函数近似器, 被称为Mlpconv 层. 因为卷积层是线性的, 抽象级别较低, 而Mlpconv 层是非线性的, 用更有效的非线性函数近似器代替GLM 可以提高局部模型的抽象能力, 泛化能力更强. 图4 为CNN 中的线性卷积层和Mlpconv 层比较. 线性卷积层包含一个线性滤波器, 而Mlpconv 层中有一个微网络.

图4 线性卷积层和Mlpconv 层Fig.4 Linear convolution layer and Mlpconv layer

用Mlpconv 层进行的计算如下:

NIN 还有一个特点是不采用传统的全连接层进行CNN 分类. 全连接层容易过拟合, NIN通过全局平均池化层直接输出来自最后一个Mlpconv 层的特征图的空间平均值作为类别的置信度, 然后将所得到的向量送入Softmax 层. 而且全局平均池化层强制了特征图和类别之间的对应关系, 提高了识别率.

如图5 所示, NIN 有4 个Mlpconv 层, 在每个Mlpconv 层内, 有3 层感知器, 其顶部是全局平均池化层和目标成本层(objective cost layer). 下采样层可以添加在Mlpconv 层之间.NIN 的层数和微网络中的层数是灵活的, 可以针对特定任务进行调整.

图5 NIN 总体结构Fig.5 Overall structure of NIN

由于第三类缺陷图片的非线性度较大, 采用非线性层Mlpconv 层可以提高图片的检测和识别率, 采用全局平均池化层可以降低过拟合, 从而进一步提高检测和识别的准确率. 实验学

3 实验结果及分析

上海宝钢公司的炼钢技术是全国乃至全球的领先者, 生产的连铸坯质量较高, 可提供带有缺陷的连铸坯图片数量较少, 其中中裂纹为67 张, 其他凹陷、夹杂物、气孔、划痕等缺陷59 张, 且各类缺陷占大图(990×1 080)中的比例也较小, 数据量不能满足训练深度学习的要求.本工作通过128×128 的矩形框在连铸坯大图上对缺陷进行截图, 每隔4 个像素移动矩形框, 进行数据扩充. 裂纹作为主要检测的缺陷, 为Bad 类, 无缺陷的为Good 类, 其他缺陷(如凹陷、夹杂物、气孔、划痕等)为Other 类. 从每类数据中独立随机抽取相应的训练数据进行训练, 其中表1 为SVM 的训练、测试数据集分布情况, 表2 为深度学习的训练、验证、测试数据集分布情况.

表1 SVM 的训练、测试数据集分布Table 1 Training, test dataset distribution of SVM

表2 深度学习的训练、验证和测试数据集分布Table 2 Train, validate and test dataset distributions of deep learning

表3 为RBF 核函数对图像灰度值的分类准确率, 可知在选取g =0.1, c=1 时RBF 核函数的效果最好, 准确率达到80%, 在之后特征选取后的训练模型时也会使用该核函数.

表3 RBF 核函数对样本的分类准确率Table 3 Classification accuracy of RBF kernel function for defects %

选取RBF 为核函数后, 表4 为通过Hu 不变矩对图像进行特征提取, 再用SVM 进行分类的结果. 表5 为通过纹理-Hu 不变矩组合对图像进行特征提取, 再用SVM 进行分类的结果.

表4 Hu不变矩特征提取后SVM 进行分类的结果Table 4 SVM classification results after Hu moment invariants feature extraction %

表5 纹理-Hu 不变矩组合特征提取后SVM 进行分类的结果Table 5 SVM classification results after textured-Hu moment invariants feature extraction %

由表4 和5 的结果可以看到, 纹理-Hu 不变矩组合特征提取后通过SVM 进行分类的结果优于Hu不变矩特征提取后的结果. 由于大部分图片的缺陷具有纹理特征, 所以加上纹理特征提取后的准确率有所提升, 当g =1, c=10 时效果达到最好, 准确率为83%. 但是漏检、误检的比例仍然较高, 还不能达到上海宝钢公司的检测要求.

AlexNet 和NIN 的训练实验结果如图6 所示, 采用深度学习对连铸坯缺陷的检测优于SVM 检测方法. AlexNet 在迭代12 000 次之后趋于收敛, 准确率约为90%. NIN 学习的效果最好, 在迭代7 500 次之后趋于收敛, 收敛速度比较快, 而且收敛也更加稳定, 最终准确率达93%,比AlexNet 高2%,比纹理-Hu 不变矩组合特征提取后通过SVM 进行分类的结果高10%.

图6 AlexNet 和NIN 的训练结果比较Fig.6 Comparisons of AlexNet and NIN training results

AlexNet 和NIN 的测试结果分别用表6 的7 和混淆矩阵表示, 总体准确率分别为89.3%和92.1%, NIN 的准确率最高. 两个混淆矩阵中第一类裂纹的检测效果最好, 均可以达到92%以上; 第二类无缺陷的图片在这两个模型中的误检率约为8%; 第三类缺陷由于种类多, 每种缺陷的数据较少, 所以准确率相对于前两类较低, 在AlexNet 上的漏检率为20.4%, 在NIN 上的漏检率为12.0%, 漏检率降低了8%.

表6 AlexNet 的测试混淆矩阵Table 6 AlexNet test confusion matrix

表7 NIN 的测试混淆矩阵Table 7 NIN test confusion matrix

4 结束语

本工作提出了一种基于深度学习的连铸坯表面缺陷检测方法. 对比传统的SVM 分类方法, 使用深度学习算法有更好的分类效果, 总体检测准确率比SVM 高9.9%. 此方法对裂纹的检测准确率为95%, 对第三类缺陷的检测准确率为88%, 对无缺陷的误检率为6.8%. 连铸热坯缺陷检测的研发, 可以省略连铸坯冷却再检测的步骤, 降低钢材的生产成本, 提高装置的生产效率, 还可以减少生产过程中因高温钢材与空气的接触而导致的产品被氧化, 提高产品的合格率.

但是目前的检测、识别率还不能完全达到上海宝钢公司所提出的漏检率为0、误检率尽可能低的要求, 可以进一步设计结合此类数据的深度学习方法来降低漏检率和误检率. 目前训练样本和测试样本较少, 第三类缺陷种类细分不够, 后期可将新检测到的缺陷图添加到样本中,细化缺陷种类, 从而提高检测、识别的准确率.

猜你喜欢
连铸特征提取纹理
连铸连轧生产25CrMo4齿轮钢带状组织的控制实践
转炉冶炼- 连铸- 高速轧制工艺的改进研究
基于BM3D的复杂纹理区域图像去噪
基于Gazebo仿真环境的ORB特征提取与比对的研究
使用纹理叠加添加艺术画特效
基于Daubechies(dbN)的飞行器音频特征提取
TEXTURE ON TEXTURE质地上的纹理
Bagging RCSP脑电特征提取算法
开工时间延迟下的炼钢-连铸生产重调度方法
消除凹凸纹理有妙招!