<sub id="bz1nl"></sub><sub id="bz1nl"></sub>
        <sub id="bz1nl"></sub>

        <sub id="bz1nl"></sub><sub id="bz1nl"></sub>

          2.793

          2018影响因子

          (CJCR)

          • 中文核心
          • EI
          • 中国科技核心
          • Scopus
          • CSCD
          • 英国科学文摘

          留言板

          尊敬的读者、作者、审稿人, 关于本刊的投稿、审稿、编辑和出版的任何问题, 您可以本页添加留言。我们将尽快给您答复。谢谢您的支持!

          姓名
          邮箱
          手机号码
          标题
          留言内容
          验证码

          基于轻量化重构网络的表面缺陷视觉检测

          余文勇 张阳 姚海明 石绘

          余文勇, 张阳, 姚海明, 石绘. 基于轻量化重构网络的表面缺陷视觉检测. 自动化学报, 2020, 41(x): 1?12. doi: 10.16383/j.aas.c200535
          引用本文: 余文勇, 张阳, 姚海明, 石绘. 基于轻量化重构网络的表面缺陷视觉检测. 自动化学报, 2020, 41(x): 1?12. doi: 10.16383/j.aas.c200535
          Yu Wen-Yong, Zhang Yang, Yao Hai-Ming, Shi Hui. Visual inspection of surface defects based on lightweight reconstruction network. Acta Automatica Sinica, 2020, 41(x): 1?12. doi: 10.16383/j.aas.c200535
          Citation: Yu Wen-Yong, Zhang Yang, Yao Hai-Ming, Shi Hui. Visual inspection of surface defects based on lightweight reconstruction network. Acta Automatica Sinica, 2020, 41(x): 1?12. doi: 10.16383/j.aas.c200535

          基于轻量化重构网络的表面缺陷视觉检测


          DOI: 10.16383/j.aas.c200535
          详细信息
            作者简介:

            华中科技大学机械科学与工程学院副教授. 2004 年获得华中科技大学博士学位. 主要研究方向为机器视觉, 智能机器人和缺陷检测. E-mail: ywy@hust.edu.cn

            2020年获华中科技大学硕士学位. 主要研究方向为机器视觉和缺陷检测. E-mail: ywy20052006@126.com

            主要研究方向为机器视觉和缺陷检测. E-mail: weyoung@hust.edu.cn

            武汉理工大学博士研究生, 2001年获华中科技大学硕士学位. 主要研究方向为机器视觉和缺陷检测. 本文通信作者. E-mail: clove_shi@163.com

          • 基金项目:  国家自然科学基金 (51775214)资助

          Visual Inspection of Surface Defects Based on Lightweight Reconstruction Network

          More Information
          • Fund Project:  Supported by National Natural Science Foundation of China (51775214)
          • 摘要: 基于深度学习的方法在某些工业产品的表面缺陷识别和分类方面表现出优异的性能, 然而大多数工业产品缺陷样本稀缺, 而且特征差异大, 导致这类需要大量缺陷样本训练的检测方法难以适用. 本文提出一种基于重构网络的无监督缺陷检测算法(Reconstruction network for defects detection, ReNet-D), 仅使用容易大量获得的无缺陷样本数据实现对异常缺陷的检测. 本文提出的算法包括两个阶段: 图像重构网络训练阶段和表面缺陷区域检测阶段. 训练阶段通过一种轻量化结构的全卷积自编码器设计重构网络, 仅使用少量正常样本进行训练, 使得重构网络能够生成无缺陷重构图像, 进一步提出一种结合结构性损失和L1损失的函数作为重构网络的损失函数, 解决自编码器检测算法对不规则纹理表面缺陷检测效果较差的问题; 缺陷检测阶段以重构图像与待测图像的残差作为缺陷的可能区域, 通过常规图像操作即可实现缺陷的定位. 本文对所提出的ReNet-D方法的网络结构、训练像素块(patch)大小、损失函数系数等影响因素进行了详细的实验分析, 并在多个缺陷图像样本集上与其他同类算法做了对比, 结果表明ReNet-D有较强的鲁棒性和准确性. 由于ReNet-D的轻量化结构, 检测1024x1024像素大小的图像仅仅耗时2.82 ms, 适合工业在线检测.
          • 图  1  各种表面缺陷. (a) 暗缺陷. (b) 明缺陷. (c) 覆盖图像的大尺度缺陷. (d) 微小缺陷. (e) 色差小的缺陷. (f)~(g) 与纹理相似的缺陷. (h) 模糊缺陷

            Fig.  1  Various surface defects. (a) Dark defects. (b) Bright defects. (c) Large-scale defects covering the image. (d) Minor defects. (e) Defects with small color difference. (f)~(g) Defects similar to texture. (h) Fuzzy defects.

            图  2  ReNet-D算法模型

            Fig.  2  ReNet-D algorithm model

            图  3  ReNet-D网络结构

            Fig.  3  ReNet-D network structure

            图  4  残差图处理流程. (a) 输入模型的原图. (b) ReNet-D重构图. (c) 由公式(9)得到的残差图. (d) 残差图滤波. (e) 缺陷定位(红色区域)

            Fig.  4  The residual graph processing flow. (a) The original input image of the model. (b) Reconstruction map by ReNet-D. (c) The residual image obtained by formula (9). (d) Filtered residual map. (e) Defect location (red area).

            图  5  实验采用的表面缺陷数据集. (a) AITEX数据集. (b)~(e) DAGM2007数据集. (f) Kylberg Sintorn数据集

            Fig.  5  Surface defect data set used in the experiment. (a) AITEX data set. (b)~(e) DAGM2007 data set. (f) Kylberg Sintorn data set.

            图  6  不同损失函数下ReNet-D的检测结果. (a) 不规则纹理样本. (b) 规则纹理样本. (c) 样本(a)在不同损失函数下的收敛测试. (d) 样本(b)在不同损失函数下的收敛测试

            Fig.  6  ReNet-D detection results under different loss functions. (a) Irregular texture samples. (b) Regular texture samples. (c) Convergence test under loss function of sample(a). (d) Convergence test under loss function of sample(b).

            图  7  不同权重系数下ReNet-D性能比较. (a) 残差热力图对比. (b)训练LOSS曲线比较

            Fig.  7  Comparison of ReNet-D performance under different weight coefficients. (a) Comparison of residual heat maps. (b) Comparison of training LOSS curves

            图  8  不同特征提取网络下ReNet-D的残差图对比

            Fig.  8  Comparison of residual maps of ReNet-D under different feature extraction networks

            图  9  不同Patch size下ReNet-D的残差图和检测结果对比. (a) 不规则纹理样本. (b) 规则纹理样本. (c)不规则纹理收敛趋势比较. (d)规则纹理收敛趋势比较

            Fig.  9  Comparison of the residual image and detection results of ReNet-D under different patch sizes. (a) Irregular texture samples. (b) Regular texture samples. (c) Comparison of irregular texture convergence trends. (d) Comparison of regular texture convergence trends

            图  10  无监督样本的测试结果

            Fig.  10  Test results of unsupervised samples

            图  11  多种算法测试效果对比

            Fig.  11  Comparison of test results of multiple algorithms.

            表  1  计算机系统配置

            Table  1  Computer system configuration

            系统Ubantu16.04
            内存128G
            GPUNVIDIA GTX-1080Ti
            CPUIntel E5-2650v4@2.2GHz
            深度学习框架Pytorch, CUDA 9.0, CUDNN 5.1
            下载: 导出CSV

            表  2  默认网络参数

            Table  2  Default network parameters

            Patch size32x32
            Batch size256
            迭代步数1000
            损失函数权重α0.15
            下载: 导出CSV

            表  3  不同损失函数下检测结果的比较. (A-不规则纹理样本, B-规则纹理样本)

            Table  3  Comparison of test results under different loss functions. (A-irregular texture sample, B-regular texture sample)

            损失函数
            指标, 样本
            L1MSEMSE+SSIML1+SSIMSSIM
            RecallA0.510.380.50.750.59
            B0.760.700.670.710.59
            PrecisionA0.930.350.520.890.93
            B0.840.650.700.870.96
            F1-MeasureA0.660.360.510.820.72
            B0.800.670.690.780.73
            下载: 导出CSV

            表  4  不同权重系数下的检测结果比较

            Table  4  Comparison of test results under different weight coefficients

            权重系数
            指标
            00.150.250.350.450.550.650.750.851
            Recall0.720.790.620.730.650.670.520.550.720.45
            Precision0.710.690.580.280.460.530.230.890.540.62
            F1-Measure0.710.730.600.410.540.600.320.680.620.52
            下载: 导出CSV

            表  5  不同Patch size下的检测结果比较. (A-不规则纹理样本, B-规则纹理样本)

            Table  5  Comparison of test results under different patch sizes. (A-irregular texture sample, B-regular texture sample)

            Patch size
            指标,样本
            16×1632×3264×64
            RecallA0.820.670.40
            B0.830.640.53
            PrecisionA0.640.860.77
            B0.530.890.74
            F1-MeasureA0.720.760.52
            B0.640.750.62
            下载: 导出CSV

            表  6  无监督样本的测试结果

            Table  6  Test results of unsupervised samples

            指标
            样本
            RecallPrecisionF1-Measure
            油污0.710.940.80
            破损0.660.480.55
            磨痕0.630.890.70
            涂抹0.270.470.32
            胶带0.160.350.20
            下载: 导出CSV

            表  7  不同算法的检测效果比较

            Table  7  Comparison of detection effects of different algorithms

            算法
            指标, 样本
            LCAPHOTMSCDAEReNet-D
            RecallA0.6630.1550.5620.772
            B0.1170.3410.9660.707
            C0.4780.1330.2030.799
            D0.5610.6100.3580.659
            E0.6120.3180.3590.946
            F0.6410.4140.8810.948
            PrecisionA0.4360.3240.4630.884
            B0.0020.4780.4440.793
            C0.0240.1120.1430.855
            D0.6390.2990.6420.940
            E0.4120.3670.6960.824
            F0.8990.0060.9200.935
            F1-MeasureA0.5260.2100.5080.824
            B0.0040.3980.6080.732
            C0.0450.1220.1680.822
            D0.5970.4010.4600.771
            E0.4920.3410.6620.881
            F0.7480.0120.9000.941
            下载: 导出CSV

            表  8  处理耗时的比较

            Table  8  Comparison of processing time

            检测方法PhotLCAMSCDAEReNet-D
            耗时(ms)4504309746.592.82
            下载: 导出CSV
            七星彩规则
          • [1] Deng S, Cai W, Xu Q, Liang B. Defect detection of bearing surfaces based on machine vision technique. In: 2010 International Conference on Computer Application and System Modeling (ICCASM 2010), USA: IEEE Press, Vol. 4, pp. V4−548
            [2] Jian C, Gao J, Ao Y. Automatic surface defect detection for mobile phone screen glass based on machine vision. Applied Soft Computing, 2017, 52: 348?358 doi:  10.1016/j.asoc.2016.10.030
            [3] Bulnes F G, Usamentiaga R, Garcia D F, Molleda J. An efficient method for defect detection during the manufacturing of web materials. Journal of Intelligent Manufacturing, 2016, 27(2): 431?445 doi:  10.1007/s10845-014-0876-9
            [4] 金侠挺, 王耀南, 张辉, 刘理, 钟杭, 贺振东. 基于贝叶斯 CNN 和注意力网络的钢轨表面缺陷检测系统. 自动化学报, 2019, 45(12): 2312?2327

            Jin XiaTing, Wang YaoNan, Zhang Hui, Liu Li, Zhong Hang, He ZhenDong. DeepRail: automatic visual detection system for railway surface defect using Bayesian CNN and attention network. Acta Automatica Sinica, 2019, 45(12): 2312?2327
            [5] 李良福, 马卫飞, 李丽, 陆铖. 基于深度学习的桥梁裂缝检测算法研究. 自动化学报, 2019, 45(9): 1727?1742

            Li Liang-Fu, Ma Wei-Fei, Li Li, Lu Cheng. Research on detection algorithm for bridge cracks based on deep learning. Acta Automatica Sinica, 2019, 45(9): 1727?1742
            [6] Chen S, Hu T, Liu G, Pu Z, Li M, Du L. (2008, May). Defect classification algorithm for IC photomask based on PCA and SVM. In: 2008 Congress on Image and Signal Processing, USA: IEEE Press, Vol. 1, pp. 491?496.
            [7] Jiexian H, Di L, Feng, Y. Detection of surface of solder on flexible circuit. Optics and Precision Engineering, 2010, 18(11): 2443?2453
            [8] Krizhevsky A, Sutskever I, Hinton, G. E. Imagenet classification with deep convolutional neural networks. In: Advances in neural information processing systems 2012, pp. 1097?1105.
            [9] Napoletano P, Piccoli F, Schettini, R. Anomaly detection in nanofibrous materials by CNN-based self-similarity. Sensors, 2018, 18(1): 209 doi:  10.1109/JSEN.2017.2771313
            [10] Cha Y J, Choi W, Suh G, Mahmoudkhani S, Büyük?ztürk O. Autonomous structural visual inspection using region‐based deep learning for detecting multiple damage types. Computer‐Aided Civil and Infrastructure Engineering, 2018, 33(9): 731?747 doi:  10.1111/mice.12334
            [11] Gao Y, Gao L, Li X, Yan X. A semi-supervised convolutional neural network-based method for steel surface defect recognition. Robotics and Computer-Integrated Manufacturing, 2020, 61: 101825 doi:  10.1016/j.rcim.2019.101825
            [12] Zhao Z, Xu G, Qi Y, Liu N, Zhang T. Multi-patch deep features for power line insulator status classification from aerial images. In: International Joint Conference on Neural Networks (IJCNN) IEEE Press, 2016.pp. 3187?3194
            [13] Wang T, Chen Y, Qiao M, Snoussi H. A fast and robust convolutional neural network-based defect detection model in product quality control. The International Journal of Advanced Manufacturing Technology, 2018, 94(9-12): 3465?3471 doi:  10.1007/s00170-017-0882-0
            [14] Xu X, Zheng H, Guo Z, Wu X, Zheng Z. SDD-CNN: Small Data-Driven Convolution Neural Networks for Subtle Roller Defect Inspection. Applied Sciences, 2019, 9(7): 1364 doi:  10.3390/app9071364
            [15] Paolo N, Flavio P, Raimondo S. Anomaly Detection in Nanofibrous Materials by CNN-Based Self-Similarity. Sensors, 2018, 18(2): 209?216 doi:  10.3390/s18010209
            [16] Weimer D, Scholz-Reiter B, Shpitalni M. Design of deep convolutional neural network architectures for automated feature extraction in industrial inspection. CIRP Annals. Manufacturing Technology, 2016, 65(1): 417?420 doi:  10.1016/j.cirp.2016.04.072
            [17] Girshick R, Donahue J, Darrell T, et al. Rich Feature Hierarchies for Accurate Object Detection and Semantic Segmentation[C]. v, 2014: 580?587.
            [18] Liu W, Anguelov D, Erhan D, et al. SSD: Single Shot MultiBox Detector[C].In: European Conference on Computer Vision. Springer International Publishing, 2016: pp 21?37.
            [19] J. Redmon, S. Divvala, R. Girshick, and A. Farhadi, “You only look once: Unified, real-time object detection, ” in Proc. In: IEEE Conf. Comput. Vis. Pattern Recognit. Jun. 2016, pp. 779?788
            [20] Chen J, Liu Z, Wang H, Nú?ez A, Han, Z. Automatic defect detection of fasteners on the catenary support device using deep convolutional neural network. IEEE Transactions on Instrumentation and Measurement, 2017, 67(2): 257?269
            [21] Cha Y J, Choi W, Suh G, et al. Autonomous Structural Visual Inspection Using Region-Based Deep Learning for Detecting Multiple Damage Types. Computer Aided Civil & Infrastructure Engineering, 2017, 00(4): 1?17
            [22] Huang Y, Qiu C, Guo Y, Wang X, Yuan, K. (2018, August). Surface defect saliency of magnetic tile. In: 2018 IEEE 14th International Conference on Automation Science and Engineering (CASE).IEEE Press: pp. 612?617.
            [23] Lingteng, Qiu, Xiaojun, et al. A High-Efficiency Fully Convolutional Networks for Pixel-Wise Surface Defect Detection. IEEE Access, 2019: 15884?15893
            [24] Yu W, Zhang Y, Shi H. Surface Defect Inspection Under a Small Training Set Condition. In: International Conference on Intelligent Robotics and Applications. Springer, Cham. 2019, August. pp. 517?528.
            [25] Masci J, Meier U, Cire?an D, Schmidhuber J. Stacked convolutional auto-encoders for hierarchical feature extraction. In International Conference on Artificial Neural Networks. Berlin, Heidelberg. Springer, 2011, June. pp. 52?59
            [26] Li Y, Zhao W, Pan J. Deformable patterned fabric defect detection with fisher criterion-based deep learning. IEEE Transactions on Automation Science and Engineering, 2016, 14(2): 1256?1264
            [27] Chalapathy R, Menon A K, Chawla S. Robust, Deep and Inductive Anomaly Detection.In: Joint European Conference on Machine Learning and Knowledge Discovery in Databases: Springer, 2017.36?51.
            [28] 袁静, 章毓晋. 融合梯度差信息的稀疏去噪自编码网络在异常行为检测中的应用. 自动化学报, 2017, 43(4): 604?610

            Yuan Jing, Zhang YuJin. Application of sparse denoising autoencoder network with gradient difference information for abnormal action detection. Acta Automatica Sinica, 2017, 43(4): 604?610
            [29] Mei S, Yang H, Yin Z. An Unsupervised-Learning-Based Approach for Automated Defect Inspection on Textured Surfaces. IEEE Transactions on Instrumentation and Measurement, 2018: 1?12
            [30] D. Aiger and H. Talbot, “The phase only transform for unsupervised surface defect detection, ”.In Proc. IEEE Conf. Comput. Vis. Pattern Recognit., IEEE press, Jun. 2010, pp. 295?302.
            [31] H.-D. Lin. Tiny surface defect inspection of electronic passive components using discrete cosine transform decomposition and cumulative sum techniques. Image Vis. Comput, 2008, 26(5): 603?621 doi:  10.1016/j.imavis.2007.07.009
            [32] Yang H, Chen Y, Song K, Yin Z. Multiscale Feature-Clustering-Based Fully Convolutional Autoencoder for Fast Accurate Visual Inspection of Texture Surface Defects. IEEE Transactions on Automation Science and Engineering. 2019, 1?18.
            [33] Makhzani A, Shlens J, Jaitly N, Goodfellow I, Frey B. (2015). Adversarial autoencoders. arXiv preprint arXiv: 1511.05644.
            [34] Zhao Z, Li B, Dong R, et al. A Surface Defect Detection Method Based on Positive Samples[C]. International Conference on Artificial Intelligence, Pacific Rim, Springer, Cham, 2018: 473?481.
            [35] Di He, et al. "Surface defect classification of steels with a new semi-supervised learning method." Optics and Lasers in Engineering, 2019, 117: 40?48.
            [36] Schlegl T, Seeb?ck P, Waldstein, S M, Schmidt-Erfurth U, Langs, G. Unsupervised anomaly detection with generative adversarial networks to guide marker discovery. In International Conference on Information Processing in Medical Imaging, Springer, Cham. 2017, June.pp. 146?157.
            [37] Paul Bergmann, Michael Fauser, David Sattlegger, Carsten Steger; A Comprehensive Real-World Dataset for Unsupervised Anomaly Detection. In: The IEEE Conference on Computer Vision and Pattern Recognition (CVPR), USA: IEEE Press: 2019.pp. 9592?9600
            [38] Ioffe S, Szegedy C. Batch normalization: Accelerating deep network training by reducing internal covariate shift. arXiv preprint arXiv: 1502.03167. 2015.
            [39] Zhao H, Gallo O, Frosio I, Kautz J. Loss functions for image restoration with neural networks. IEEE Transactions on Computational Imaging, 2016, 3(1): 47?57
            [40] Bergmann P, L?we S, Fauser M, et al. Improving unsupervised defect segmentation by applying structural similarity to autoencoders[J]. arXiv preprint arXiv: 1807.02011
            [41] Lv C, Zhang Z, Shen F, et al. A Fast Surface Defect Detection Method Based on Background Reconstruction[J].In: International Journal of Precision Engineering and Manufacturing, 2019: 1?13.
            [42] Wang Z, Bovik A C, Sheikh H R, Simoncelli E P. Image quality assessment: from error visibility to structural similarity. IEEE transactions on image processing, 2004, 13(4): 600?612 doi:  10.1109/TIP.2003.819861
            [43] Silvestre-Blanes J, Albero-Albero T, Miralles I, Pérez-Llorens R, Moreno J. A Public Fabric Database for Defect Detection Methods and Results. Autex Research Journal, 2019, 19(4): 363?374 doi:  10.2478/aut-2019-0035
            [44] Jager M, Knoll C, Hamprecht F A. Weakly supervised learning of a classifier for unusual event detection. IEEE Transactions on Image Processing, 2019, 17(9): 1700?1708
            [45] G. Kylberg and I. Sintorn. (2013). Kylberg Sintorn RotationDataset.[Online]. Available: http://www.cb.uu.se/~gustaf/KylbergSintornRotation/
            [46] Long J, Shelhamer E, Darrell T. Fully convolutional networks for semantic segmentation. In: Proceedings of the IEEE conference on computer vision and pattern recognition, 2015. pp. 3431?3440.
            [47] Ronneberger O, Fischer P, Brox T. U-net: Convolutional networks for biomedical image segmentation. In: International Conference on Medical image computing and computer-assisted intervention Springer, Cham. 2015, October. pp. 234?241.
            [48] He K, Zhang X, Ren S, Sun J. Deep residual learning for image recognition. In: Proceedings of the IEEE conference on computer vision and pattern recognition. USA: IEEE Press, 2016.pp. 770?778.
            [49] Shi W, Caballero J, Huszár F, Totz J, Aitken A P, Bishop R, ... Wang, Z. Real-time single image and video super-resolution using an efficient sub-pixel convolutional neural network. In: Proceedings of the IEEE conference on computer vision and pattern recognition USA: IEEE Press, 2016. pp. 1874?1883.
            [50] Huang G, Liu Z, Van Der Maaten L, Weinberger, K. Q.Densely connected convolutional networks. In: Proceedings of the IEEE conference on computer vision and pattern recognition. USA: IEEE Press, 2017. pp. 4700?4708.
            [51] Tsai D M, Huang T Y. Automated surface inspection for statistical textures. Image and Vision computing, 2003, 21(4): 307?323 doi:  10.1016/S0262-8856(03)00007-6
          • [1] 周波, 李俊峰. 结合目标检测的人体行为识别[J]. 自动化学报, doi: 10.16383/j.aas.c180848
            [2] 陈泓佑, 陈帆, 和红杰, 朱翌明. 基于样本特征解码约束的GANs[J]. 自动化学报, doi: 10.16383/j.aas.c190496
            [3] 许玉格, 钟铭, 吴宗泽, 任志刚, 刘伟生. 基于深度学习的纹理布匹瑕疵检测方法[J]. 自动化学报, doi: 10.16383/j.aas.c200148
            [4] 李少波, 杨静, 王铮, 朱书德, 杨观赐. 缺陷检测技术的发展与应用研究综述[J]. 自动化学报, doi: 10.16383/j.aas.c180538
            [5] 罗浩, 姜伟, 范星, 张思朋. 基于深度学习的行人重识别研究进展[J]. 自动化学报, doi: 10.16383/j.aas.c180154
            [6] 李良福, 马卫飞, 李丽, 陆铖. 基于深度学习的桥梁裂缝检测算法研究[J]. 自动化学报, doi: 10.16383/j.aas.2018.c170052
            [7] 田娟秀, 刘国才, 谷珊珊, 鞠忠建, 刘劲光, 顾冬冬. 医学图像分析深度学习方法研究与挑战[J]. 自动化学报, doi: 10.16383/j.aas.2018.c170153
            [8] 陈伟宏, 安吉尧, 李仁发, 李万里. 深度学习认知计算综述[J]. 自动化学报, doi: 10.16383/j.aas.2017.c160690
            [9] 罗建豪, 吴建鑫. 基于深度卷积特征的细粒度图像分类研究综述[J]. 自动化学报, doi: 10.16383/j.aas.2017.c160425
            [10] 张慧, 王坤峰, 王飞跃. 深度学习在目标视觉检测中的应用进展与展望[J]. 自动化学报, doi: 10.16383/j.aas.2017.c160822
            [11] 贺昱曜, 李宝奇. 一种组合型的深度学习模型学习率策略[J]. 自动化学报, doi: 10.16383/j.aas.2016.c150681
            [12] 奚雪峰, 周国栋. 面向自然语言处理的深度学习研究[J]. 自动化学报, doi: 10.16383/j.aas.2016.c150682
            [13] 朱煜, 赵江坤, 王逸宁, 郑兵兵. 基于深度学习的人体行为识别算法综述[J]. 自动化学报, doi: 10.16383/j.aas.2016.c150710
            [14] 段艳杰, 吕宜生, 张杰, 赵学亮, 王飞跃. 深度学习在控制领域的研究现状与展望[J]. 自动化学报, doi: 10.16383/j.aas.2016.c160019
            [15] 郭潇逍, 李程, 梅俏竹. 深度学习在游戏中的应用[J]. 自动化学报, doi: 10.16383/j.aas.2016.y000002
            [16] 耿杰, 范剑超, 初佳兰, 王洪玉. 基于深度协同稀疏编码网络的海洋浮筏SAR图像目标识别[J]. 自动化学报, doi: 10.16383/j.aas.2016.c150425
            [17] 随婷婷, 王晓峰. 一种基于CLMF的深度卷积神经网络模型[J]. 自动化学报, doi: 10.16383/j.aas.2016.c150741
            [18] 唐朝辉, 朱清新, 洪朝群, 祝峰. 基于自编码器及超图学习的多标签特征提取[J]. 自动化学报, doi: 10.16383/j.aas.2016.c150736
            [19] 周金柱, 黄进. 集成先验知识的多核线性规划支持向量回归[J]. 自动化学报, doi: 10.3724/SP.J.1004.2011.00360
            [20] 林玉娥, 顾国昌, 刘海波, 沈晶, 赵靖. 适用于小样本问题的具有类内保持的正交特征提取算法[J]. 自动化学报, doi: 10.3724/SP.J.1004.2010.00644
          • 加载中
          计量
          • 文章访问数:  51
          • HTML全文浏览量:  16
          • 被引次数: 0
          出版历程

          基于轻量化重构网络的表面缺陷视觉检测

          doi: 10.16383/j.aas.c200535
            基金项目:  国家自然科学基金 (51775214)资助
            作者简介:

            华中科技大学机械科学与工程学院副教授. 2004 年获得华中科技大学博士学位. 主要研究方向为机器视觉, 智能机器人和缺陷检测. E-mail: ywy@hust.edu.cn

            2020年获华中科技大学硕士学位. 主要研究方向为机器视觉和缺陷检测. E-mail: ywy20052006@126.com

            主要研究方向为机器视觉和缺陷检测. E-mail: weyoung@hust.edu.cn

            武汉理工大学博士研究生, 2001年获华中科技大学硕士学位. 主要研究方向为机器视觉和缺陷检测. 本文通信作者. E-mail: clove_shi@163.com

          摘要: 基于深度学习的方法在某些工业产品的表面缺陷识别和分类方面表现出优异的性能, 然而大多数工业产品缺陷样本稀缺, 而且特征差异大, 导致这类需要大量缺陷样本训练的检测方法难以适用. 本文提出一种基于重构网络的无监督缺陷检测算法(Reconstruction network for defects detection, ReNet-D), 仅使用容易大量获得的无缺陷样本数据实现对异常缺陷的检测. 本文提出的算法包括两个阶段: 图像重构网络训练阶段和表面缺陷区域检测阶段. 训练阶段通过一种轻量化结构的全卷积自编码器设计重构网络, 仅使用少量正常样本进行训练, 使得重构网络能够生成无缺陷重构图像, 进一步提出一种结合结构性损失和L1损失的函数作为重构网络的损失函数, 解决自编码器检测算法对不规则纹理表面缺陷检测效果较差的问题; 缺陷检测阶段以重构图像与待测图像的残差作为缺陷的可能区域, 通过常规图像操作即可实现缺陷的定位. 本文对所提出的ReNet-D方法的网络结构、训练像素块(patch)大小、损失函数系数等影响因素进行了详细的实验分析, 并在多个缺陷图像样本集上与其他同类算法做了对比, 结果表明ReNet-D有较强的鲁棒性和准确性. 由于ReNet-D的轻量化结构, 检测1024x1024像素大小的图像仅仅耗时2.82 ms, 适合工业在线检测.

          English Abstract

          余文勇, 张阳, 姚海明, 石绘. 基于轻量化重构网络的表面缺陷视觉检测. 自动化学报, 2020, 41(x): 1?12. doi: 10.16383/j.aas.c200535
          引用本文: 余文勇, 张阳, 姚海明, 石绘. 基于轻量化重构网络的表面缺陷视觉检测. 自动化学报, 2020, 41(x): 1?12. doi: 10.16383/j.aas.c200535
          Yu Wen-Yong, Zhang Yang, Yao Hai-Ming, Shi Hui. Visual inspection of surface defects based on lightweight reconstruction network. Acta Automatica Sinica, 2020, 41(x): 1?12. doi: 10.16383/j.aas.c200535
          Citation: Yu Wen-Yong, Zhang Yang, Yao Hai-Ming, Shi Hui. Visual inspection of surface defects based on lightweight reconstruction network. Acta Automatica Sinica, 2020, 41(x): 1?12. doi: 10.16383/j.aas.c200535
            • 传统的机器学习方法可以有效的解决多种工业产品质量检测问题, 比如轴承[1]、手机屏[2]、卷材[3]、钢轨[4]、钢梁[5]等, 这类方法通过人为设计特征提取器来适应特定产品图像样本数据集, 将特征输入分类器如SVM(Support Vector Machines)[6]、NN(Neural Network)[7]来判别产品是否有缺陷. 但当被检测产品的表面缺陷出现诸如复杂背景纹理(包括规则的和非规则的)、缺陷特征尺度变化大, 缺陷区域特征和背景特征相似等问题时(如图1所示), 传统的机器学习方法依赖人工特征对产品图像样本的表示能力, 不适应这类复杂的检测需求.

              图  1  各种表面缺陷. (a) 暗缺陷. (b) 明缺陷. (c) 覆盖图像的大尺度缺陷. (d) 微小缺陷. (e) 色差小的缺陷. (f)~(g) 与纹理相似的缺陷. (h) 模糊缺陷

              Figure 1.  Various surface defects. (a) Dark defects. (b) Bright defects. (c) Large-scale defects covering the image. (d) Minor defects. (e) Defects with small color difference. (f)~(g) Defects similar to texture. (h) Fuzzy defects.

              自从AlexNet[8]被提出后, 以卷积网络(Convolutional Neural Network, CNN)为基础的深度学习方法成为表面缺陷检测领域的主流方法[9]- [12]. 卷积神经网络不仅可以自动学习图像特征, 而且通过多个卷积层的叠加, 可以抽取更抽象的图像特征, 相对人工设计的特征提取算法具有更好的特征表示能力. 根据网络输出的结果, 以深度学习方法做缺陷检测的算法可以分为缺陷分类方法、缺陷识别方法和缺陷分割方法.

              基于缺陷分类的算法通常使用一些经典的分类网络算法对待检测样本进行训练, 学习后的模型可以对缺陷和非缺陷类别进行分类. Tian Wang[13]提出使用两个CNN网络对六类图像进行缺陷检测; Xu[14]提出一种融合VGG(Visual geometry group)和残差网络(ResNet)的CNN分类网络, 用来检测和分类轧辊的表面缺陷; Paolo N[15]和Weimer D[16]亦借助CNN的图像特征表示能力来判别缺陷. 这类方法通常不涉及缺陷区域的定位.

              为了实现对缺陷区域的准确定位, 一些研究者将计算机视觉目标识别任务中表现优异的网络改进并应用于表面缺陷检测, 这类算法多基于R-CNN[17]、SSD(Single Shot MultiBox Detector)[18]、YOLO(You Only Look Once)[19]等网络. Junwen Chen[20]将深度卷积神经网络(Deep Convolutional Neural Network, DCNN)应用于紧固件缺陷检测. Cha Y J[21]在建筑领域中使用R-CNN做结构视觉检测.

              为了实现像素级检测精度, 一些研究者使用了分割网络, 例如Huang[22]用U-Net构建的检测网络将缺陷检测任务转化为语义分割任务, 提高了磁瓦表面检测的准确率. Lingteng[23]采用全卷积网络FCN(Full Convolutional network)对缺陷区域进行检测.

              这类方法都依赖一定数量的训练数据. 在许多工业场合中, 产品缺陷类型是不可预测的, 并且只发生在生产过程中, 很难收集到大量的缺陷样本. 针对这些问题, 研究者开始关注小样本或无监督学习方法, 如Yu[24]利用Yolo V3网络在少量缺陷样本训练条件下, 实现较高准确率的检测结果. 在自编码器(Autoencoder, AE)的基础上进行改进的多种方法被用到表面缺陷检测, 例如卷积自编码器(Convolutional Autoencoder, CAE)[25], 基于Fisher准则的堆叠式降噪自编码器(FCSDA)[26], 鲁棒自编码器(RCAE)[27], 融合梯度差信息的稀疏去噪自编码网络[28]等. Mei[29]提出多尺度卷积去噪自编码器网络(MSCDAE)重构图像, 利用重构残差生成检测结果, 相比较于传统的无监督算法如PHOT(Phase Only Transform)[30]、DCT(Discrete Cosine Transformation)[31], MSCDAE在模型评价指标上有较大的提升. YangH[32]在MSCDAE基础上使用特征聚类提升了纹理背景的重构精度. 以上重构网络均采用加入正则项的MSE损失函数, 数据样本多为规则表面纹理.

              除自编码器外, 生成对抗网络(Generative Adversarial Network, GAN)[33]也应用于无监督缺陷检测. GAN通过学习大量正常图像样本, 让网络中的生成器能够学习出正常样本图像的数据分布. Zhao[34]结合GAN和自编码器, 对无缺陷样本制作缺陷, 训练GAN网络使之具有恢复图像的能力. He[35]使用SGAN和自编码器训练未标记的钢材表面缺陷数据, 抽取图像细粒度特征并进行分类. Schlegl[36]提出AnoGAN网络解决无监督条件下的病变图像的异常检测. 在实际应用中, GAN亦存在性能不稳定、难以训练等问题[37].

              考虑到工业应用场景缺陷样本的复杂性和稀缺性, 本文提出一种基于重构网络的缺陷检测方法ReNet-D, 该方法以少量无缺陷样本作为网络模型学习的对象, 对样本图像进行重构训练, 使得网络具备对正样本的重构能力, 当输入异常样本时, 训练后的网络模型可以检测出样本图像的异常区域. 本文对ReNet-D方法的网络结构、训练patch大小、损失函数系数等影响因素进行详细的实验分析和评价, 以同时适应规则纹理和不规则纹理的检测需求, 并与其他经典算法进行对比实验.

            • 在实际的工业应用中, 存在缺陷样本稀缺、特征差异大和未知缺陷偶然出现等因素, 导致以大量数据样本驱动的监督算法难以适用. 本文提出的无监督算法, 解决无缺陷样本数据可供模型学习的问题. 算法分为两个阶段, 图像重构网络训练阶段和表面缺陷区域检测阶段. 训练阶段通过全卷积自编码器设计重构网络, 仅使用少量正常样本进行训练, 使得重构网络能够生成无缺陷重构图像; 缺陷检测阶段以重构图像与待测图像的残差作为缺陷的可能区域, 通过常规图像操作获得最终检测结果. ReNet-D算法模型如图2所示.

              图  2  ReNet-D算法模型

              Figure 2.  ReNet-D algorithm model

            • 工业产品表面缺陷存在多尺度、与背景纹理相似、形状复杂等特性, 对检测算法的准确率和运行耗时要求较高. 因此重构网络设计有3个要求: (1) 网络能够适应不同尺度大小的缺陷区域, (2) 网络需要辨识出样本区域是否存在缺陷特征, (3) 重构网络模型的参数量尽可能少.

              重构过程通常分解为编码变换φ和解码变换γ, 定义如下:

              $$ \varphi : I\to F$$
              $$\gamma :F \to I$$
              $$ (\varphi ,\gamma ) = {\mathop{\rm argmin}\nolimits} {\left\| {I - \gamma (\varphi (F))} \right\|^2} $$ (1)

              其中IRW×H表示图像样本的空间域, 通过函数φ映射到隐层空间, F表示隐层空间中对应的图像样本特征, 函数φ由编码模块实现. 函数γ将隐层空间对应的图像样本特征F再映射回原图像样本的空间域, 该函数由解码模块实现.

              z = φ(I) ∈ F, 编码和解码过程分别描述为:

              $$z = \sigma (W \circ I + b)$$
              $$I' = \sigma (W' \circ z + b')$$ (2)

              I'表示重构图像, $ \circ $表示卷积, σ表示激活函数, WW'分别表示编码卷积核和解码卷积核, bb'分别表示编码偏差和解码偏差.

              ReNet-D的网络结构如图3所示, 为适应较大图像, 将原图划分成若干像素块(patch, 通常大小为16x16, 32x32, 64x64)作为网络的输入. ReNet-D利用1×1, 3×3以及5×5三种卷积核来获得多尺度特征, 并将多尺度特征输入编码模块, 解码模块输出的结果再输入三个不同尺度的反卷积层, 获得最终的重构图像, 相比于MSCDAE[29]的高斯金字塔采样模型, 同样可以得到多尺度特征, 但降低了计算成本. ReNet-D的CAE模块包含4个卷积模块和4个反卷积模块. 每一个卷积模块包含一个卷积层、一个BN层[38]和非线性激活层, 前三个卷积模块还包含能够改变图像尺度的池化层. 激活函数采用Relu. 前3个卷积层使用5x5卷积核, 最后一层使用3x3卷积核.

              图  3  ReNet-D网络结构

              Figure 3.  ReNet-D network structure

              自编码器用于缺陷检测的机理在于: 基于对无缺陷背景的高敏感性完成对无缺陷背景的重建, 以及对有缺陷区域的低敏感性完成不完善的重建, 以此实现对缺陷的检测. 自编码器是一个输入和学习目标相同的神经网络, 网络层次的深浅也决定了自编码器对输入图像的复现能力, 若采用网络结构复杂的模型, 可以提高对样本特征复现能力, 但是同时也造成了对于缺陷区域复现能力的提高, 进行残差操作时, 会导致因缺陷部位差异不够明显而检测失败. ReNet-D采用轻量化的结构设计, 轻量的模型重建能力有限, 但通过多尺度特征和损失函数的设计, 既能使网络能充分学习到正常纹理的特征, 又能对缺陷区域不完善的重建获取缺陷部位的信息.

            • 在ReNet-D的训练阶段, 以原始图像和重构图像之间的重构误差作为损失函数, 促进网络收敛. 以下分析并改进现有的评估重构误差的损失函数.

              1)MSE(Mean Square Error) Loss

              MSE loss(又称L2 loss)是评估算法模型的重构图像和原图之间差异的常用损失函数, 定义如下:

              $$ L({I_{src}},{I_{rec}}) = {\left\| {{I_{src}} - {I_{rec}}} \right\|^2} + \lambda {\left\| \omega \right\|_F} $$ (3)

              其中Isrc表示输入的原图, Irec表示模型重构的图像, ω表示重构网络中的权重矩阵集, λ表示正则化项的惩罚因子, $0 < \lambda < 1$. 以MSE为损失函数的重构算法模型适用于规则纹理背景的图像样本, 比如纺织品[29] [32].

              2)L1 Loss

              大多数工业产品的纹理背景并不规则, 异常特征易融入纹理背景, 且异常特征和正常纹理背景特征差异较小. 定义L1 loss为:

              $$ L({I_{src}},{I_{rec}}) = \left\| {{I_{src}} - {I_{rec}}} \right\| + \lambda {\left\| \omega \right\|_F} $$ (4)

              L1 loss相比, MSE loss对异常值更敏感, 会过度惩罚较大的损失误差, 如MSCDAE[29]方法, 因而ReNet-D引入L1函数来优化网络训练.

              3)结构损失(Structural Loss)

              在评价重构网络模型的效果时, L1 loss和L2 loss采用逐像素比较差异方式, 并没有考虑图像的区域结构等特征. 对于一些非规则纹理图像样本的检测, ReNet-D引入SSIM(Structural Similarity Index)[39][40]构建损失函数, 使网络能适用复杂多变的纹理背景样本, 重构出更好的效果. SSIM 损失函数从亮度 (Luminance)、对比度 (Contrast) 和结构 (Structure)三个指标对模型进行优化[41], 结果比L1或MSE损失函数更能反映图像细节. 对于模型输入和输出的图像对$(x,y)$, SSIM定义为:

              $$ SSIM(x,y) = l{(x,y)^\alpha }c{(x,y)^\beta }s{(x,y)^\gamma } $$
              $$l(x,y) = \frac{{2{\mu _x}{\mu _y} + {C_1}}}{{\mu _x^2 + \mu _y^{\rm{2}}{\rm{ + }}{C_1}}}$$
              $$c(x,y) = \frac{{2{\sigma _x}_y + {C_{\rm{2}}}}}{{\sigma _x^2 + \sigma _y^{\rm{2}}{\rm{ + }}{C_2}}}$$
              $$s(x,y) = \frac{{{\sigma _x}_y + {C_3}}}{{{\sigma _x}{\sigma _y}{\rm{ + }}{C_3}}}$$ (5)

              其中α > 0, β > 0, γ > 0, l(x, y)表示亮度比较, c(x, y)表示对比度比较, s(x, y)表示结构比较. μxμy分别是$ x $, $ y $的平均值, σxσyxy的标准差. σxyxy的协方差. C1, C2, C3是非0常数, 通常α = β= γ = 1, C3 = C2/2.

              SSIM的损失函数定义为:

              $$ {L}^{SSIM}(x,y)=1-SSIM(x,y) $$ (6)

              重构网络用SSIM损失函数评价最后一层的输出结果和原图的差异, 还可以抽取多个不同尺度的反卷积层结果与对应的卷积层结果同时使用SSIM损失函数, 从而构建多尺度SSIM[42] (MS-SSIM). 对于M个尺度, MS-SSIM损失函数定义为:

              $$ \begin{split} L^{MS-SSIM}(x,y)=&1-MS-SSIM(x,y)=\\ &1-{\displaystyle {\prod }_{j=1}^{M}SSIM(x,y)}\end{split} $$ (7)

              4)ReNet-D使用的损失函数

              L1 loss与MSE loss相比, 对像素级误差的惩罚更弱, 适合不规则纹理样本, 而LSSIM可以训练重构网络去关注样本图像的亮度改变和颜色偏差, 从而保留图像的高频信息即图像边缘和细节. 为同时解决规则和无规则纹理图像样本缺陷的检测问题, 本文设计L1 loss和LSSIM结合的损失函数作为ReNet-D网络模型的损失函数, 如式(8)所示.

              $$ {L}_{ReNet-D}=\alpha {L}_{1}+(1-\alpha ){L}^{SSIM} $$ (8)

              其中$\alpha $是权重因子, 取值范围为(0, 1), 用来平衡L1 loss和${L^{SSIM}}$的比重, 本文将通过实验比较不同权重因子和损失函数对ReNet-D检测结果的影响.

            • 在检测阶段, 缺陷图像输入训练好的重构网络后, 网络会输出近似无缺陷图像, 即重构网络将有缺陷的区域“修复”成正常区域, 而保持无缺陷的区域, 根据这一特性, 对输出图像与输入图像的像素级差异, 经过常规图像处理技术, 便能精确的定位缺陷区域, 处理流程如下:

              a. 残差图获取

              将输入图像(如图4(a)所示)与ReNet-D重构图像(如图4(b)所示)利用公式(9)做差影, 得到重构网络对缺陷区域的重构误差, 获得的残差图如图4(c)所示, 图中包含了异常区域的位置信息.

              图  4  残差图处理流程. (a) 输入模型的原图. (b) ReNet-D重构图. (c) 由公式(9)得到的残差图. (d) 残差图滤波. (e) 缺陷定位(红色区域)

              Figure 4.  The residual graph processing flow. (a) The original input image of the model. (b) Reconstruction map by ReNet-D. (c) The residual image obtained by formula (9). (d) Filtered residual map. (e) Defect location (red area).

              $$ \upsilon (i,j)=({I}_{src}(i,j)-{\widehat{I}}_{rec}(i,j){)}^{2}$$ (9)

              b. 去噪处理

              残差图图4(c)呈现出很多噪点, 形成伪缺陷, 影响对真实缺陷区域的判断, 使用均值滤波做去噪处理得到图4(d).

              c. 阈值化分割与缺陷定位

              使用自适应阈值法得到最终结果图4(e).

            • 本文对提出的检测算法ReNet-D在工业产品的表面数据上进行广泛的评价. 首先介绍实验所用的数据集, 其次介绍模型评估的关键指标, 然后通过对ReNet-D算法检测效果的影响因素包括损失函数、网络结构、Patch size, 以及对于同类材料的不同类型缺陷的检测效果等方面做了详细的实验分析. 最后, 对提出的检测算法和其他同类无监督算法做比较.

            • 为了客观评估所提出的检测算法, 本实验建立了由多种材料的纹理样本组成的验证数据集, 如图5所示. 图5(a)来源于AITEX[43], 该数据集来源于纺织业, 样本为规则纹理, 正负样本数149/5, 图5(b), 图5(c), 图5(d), 图5(e)样本来源于DAGM2007[44], 该数据集有两个特点: 一是纹理不规则, 二是缺陷区域与图片尺度对比大, 缺陷隐藏在纹理中并且结构与纹理很相似; 其中图5(b)的正负样本数100/29, 图5(c)的正负样本数100/6, 图5(d)的正负样本数101/6. 图5(f)样本来源于Kylberg Sintorn数据集[45], 正负样本数50/5. 除图5所示的数据集外, 还增加了MVtech无监督数据集[37]的样本做比较实验.

              图  5  实验采用的表面缺陷数据集. (a) AITEX数据集. (b)~(e) DAGM2007数据集. (f) Kylberg Sintorn数据集

              Figure 5.  Surface defect data set used in the experiment. (a) AITEX data set. (b)~(e) DAGM2007 data set. (f) Kylberg Sintorn data set.

            • 本文通过像素级度量来评估算法的性能, 采用了三个评价指标: 召回率(Recall)、精确率(Precision)和二者的加权调和平均(F1-Measure), 定义如下:

              $$ {\rm{Re}}call=\frac{T{P}_{p}}{T{P}_{p}+F{N}_{p}}\times 100\% $$
              $$ {\rm{Pr}}ecision=\frac{T{P}_{p}}{T{P}_{p}+F{P}_{p}}\times 100\% $$
              $$ F1 - Measure = \frac{{2 \times \Pr ecision \times {\rm{Re}} call}}{{\Pr ecision + {\rm{Re} }call}} $$ (10)

              其中TPp为前景中分割正确的缺陷区域比例, FPp为背景中分割错误的缺陷区域比例, FNp表示缺陷区域中未检测到的缺陷区域的比例. F1-Measure评估召回率和精确率. 所有测试都在一台配备GPU(Graphic Processing Unit)的计算机上进行的, 具体配置如表1所示.

              表 1  计算机系统配置

              Table 1.  Computer system configuration

              系统Ubantu16.04
              内存128G
              GPUNVIDIA GTX-1080Ti
              CPUIntel E5-2650v4@2.2GHz
              深度学习框架Pytorch, CUDA 9.0, CUDNN 5.1
            • ReNet-D分别选取损失函数MSE、L1、SSIM以及三者的组合做对比实验, 以评估式(8)所提出的损失函数在缺陷检测任务中的性能. 该实验中, ReNet-D网络参数设置如表2所示.

              表 2  默认网络参数

              Table 2.  Default network parameters

              Patch size32x32
              Batch size256
              迭代步数1000
              损失函数权重α0.15

              图6(a)图6(b)是两类不同的产品表面缺陷样本在多种损失函数下的实验结果. 图6(a)采用不规则表面纹理的缺陷图像样本, 从残差结果对比可以看出, MSE作为算法损失函数得到的残差结果除真实缺陷区域外, 其他区域噪声点较多, 形成伪缺陷; 而单独使用SSIM作为损失函数, 检测出的缺陷区域略小于真实缺陷区域; 相比于其他损失函数, 结构损失函数SSIM和L1损失函数的组合获得了较好的效果.

              图  6  不同损失函数下ReNet-D的检测结果. (a) 不规则纹理样本. (b) 规则纹理样本. (c) 样本(a)在不同损失函数下的收敛测试. (d) 样本(b)在不同损失函数下的收敛测试

              Figure 6.  ReNet-D detection results under different loss functions. (a) Irregular texture samples. (b) Regular texture samples. (c) Convergence test under loss function of sample(a). (d) Convergence test under loss function of sample(b).

              图6(b)采用规则表面纹理的缺陷图像样本, 从残差结果对比可以看出, 使用MSE损失函数得到的缺陷区域的完整性较差, 与MSE+SSIM组合的检测结果相似. 结构损失函数SSIM和L1损失函数的组合获得了较好的效果, 而且检测结果与仅使用L1损失函数相似. 图6(c)(d)位不同损失函数下ReNet-D的收敛趋势比较.

              表3中对比结果可以看出, 对图6(a)中的不规则表面纹理的缺陷样本, 结构损失函数SSIM和L1损失函数的组合在召回率以及F1-Measure获得了较好的效果, 在精确率上略次于损失函数SSIM; 对图6(b)所示的规则表面纹理的缺陷样本, 仅使用L1损失函数达到的召回率最高, SSIM和L1损失函数的组合其次; 仅使用结构损失函数SSIM达到的精确率最高, SSIM和L1损失函数的组合略次之; 对于F1-Measure, L1损失函数表现最好.

              表 3  不同损失函数下检测结果的比较. (A-不规则纹理样本, B-规则纹理样本)

              Table 3.  Comparison of test results under different loss functions. (A-irregular texture sample, B-regular texture sample)

              损失函数
              指标, 样本
              L1MSEMSE+SSIML1+SSIMSSIM
              RecallA0.510.380.50.750.59
              B0.760.700.670.710.59
              PrecisionA0.930.350.520.890.93
              B0.840.650.700.870.96
              F1-MeasureA0.660.360.510.820.72
              B0.800.670.690.780.73

              进一步的, 通过对本研究采用的样本库的检测效果对比, 损失函数有如下规律:

              1、对于规则表面纹理样本, 采用以上四种损失函数都能检出缺陷, 其中仅用MSE和MSE+SSIM损失函数的结果相对较差, 其他两种损失函数结果差别细微.

              2、对于不规则表面纹理样本, 采用SSIM+L1的组合损失函数获得的检测结果较好.

            • 上述实验表明, ReNet-D模型使用SSIM+L1组合损失函数, 能同时适用规则和不规则表面纹理的缺陷检测. 对于规则纹理样本, 仅使用L1损失, 即权重系数α = 1, 便可得到较理想的检测结果; 而对于非规则纹理样本, 不同的权重系数会产生不同的检测效果. 本实验使用图6(a)中不规则纹理样本, 权重系数α的范围从0到1, 步长设为0.1, 用于调节SSIM损失和L1损失的比重, 对比实验如图7所示.

              图  7  不同权重系数下ReNet-D性能比较. (a) 残差热力图对比. (b)训练LOSS曲线比较

              Figure 7.  Comparison of ReNet-D performance under different weight coefficients. (a) Comparison of residual heat maps. (b) Comparison of training LOSS curves

              根据式(8), 当α增大时, 结构性损失SSIM影响逐步减小, 从图7以及表4中可以看出, 残差图发生明显变化, 其中当α = 0.15时, 缺陷检测效果较好, 信噪比最低, Recall与F1-Measure表现最好. 通过多个样本的实验, 本文给出的经验建议是: 对于规则纹理样本, 设置权重α = 1, 即只用L1损失作为训练模型的损失函数; 对于不规则纹理样本, 设置α=0.15, 使结构损失影响权重偏大, 以获得最佳的结果.

              表 4  不同权重系数下的检测结果比较

              Table 4.  Comparison of test results under different weight coefficients

              权重系数
              指标
              00.150.250.350.450.550.650.750.851
              Recall0.720.790.620.730.650.670.520.550.720.45
              Precision0.710.690.580.280.460.530.230.890.540.62
              F1-Measure0.710.730.600.410.540.600.320.680.620.52
            • 网络层的深度和类型影响重构网络的训练结果, 本研究将ReNet-D的特征提取网络CAE与经典网络如FCN[46], U-Net[47]做对比实验, 实验结果如图8所示.

              图  8  不同特征提取网络下ReNet-D的残差图对比

              Figure 8.  Comparison of residual maps of ReNet-D under different feature extraction networks

              基于CAE网络的缺陷检测任务不同于其他低层像素视觉任务如图像超分、降噪, 后者一般要求很深的网络如FCN和U-Net, 然而这类网络特征提取能力很强, 容易将缺陷区域仍重建为缺陷区域, 导致重构图和原图的残差几乎等于0, 无法检测缺陷. 采用轻量化结构设计重构网络时, 既能充分学习到正样本的纹理特征, 又能将缺陷区域重构为近似正常纹理, 形成明显的重构误差. 因此, ReNet-D无须过多的网络层数, 也无须使用构建网络的技巧, 比如全局残差学习[48]、亚像素层[49]、残差连接[50].

            • 输入图像的尺寸通常会对重建结果有较大影响. 在ReNet-D网络的训练阶段, 考虑到处理器的内存和处理速度, 将较大的图像训练样本划分为若干patch, 本实验中, patch尺寸分别设置为16×16像素, 32×32像素, 64×64像素, 图9给出三种不同patch大小下的检测结果.

              图  9  不同Patch size下ReNet-D的残差图和检测结果对比. (a) 不规则纹理样本. (b) 规则纹理样本. (c)不规则纹理收敛趋势比较. (d)规则纹理收敛趋势比较

              Figure 9.  Comparison of the residual image and detection results of ReNet-D under different patch sizes. (a) Irregular texture samples. (b) Regular texture samples. (c) Comparison of irregular texture convergence trends. (d) Comparison of regular texture convergence trends

              对于如图9(a)所示的不规则背景纹理图像, 样本尺寸为512x512, 当patch size等于16x16时, 虽然缺陷区域检测效果较好, 但会产非缺陷噪点, 此时的召回率最好, 但精确率最低; 当patch size较大时取64x64时, 缺陷区域的有效检出尺寸变小, 缺陷检测的精确率会降低.

              对于如图9(b)所示的规则背景纹理图像, 样本尺寸为256x256, 当patch size等于16x16时, 缺陷区域呈现块状化, 与ground truth差别较大, 此时的召回率最高, 但是准确率很低; 而当patch size等于64x64时, 检测结果出现明显漏检现象, 检测的精确率下降.

              表5所示, 当patch size设置为32x32时,对于图9(a)图9(b)对应的两种不同种类背景纹理的图像精确率Precision与F1-Measure均达到最高. 进一步的, 对数据集中多种规则和不规则纹理缺陷样本, 图像尺寸从256x256到1024x1024, 经测试, ReNet-D的patch size设置为32x32时检测结果最好.

              表 5  不同Patch size下的检测结果比较. (A-不规则纹理样本, B-规则纹理样本)

              Table 5.  Comparison of test results under different patch sizes. (A-irregular texture sample, B-regular texture sample)

              Patch size
              指标,样本
              16×1632×3264×64
              RecallA0.820.670.40
              B0.830.640.53
              PrecisionA0.640.860.77
              B0.530.890.74
              F1-MeasureA0.720.760.52
              B0.640.750.62
            • 无监督数据集[37]中的表面纹理缺陷类包括皮革(leather), 木材(wood), 地毯(carpet), 网格(grid)和瓷砖(tile), 其中tile类纹理最为杂乱,其训练集包括了230张无缺陷的不规则纹理正常类型图像; 测试集包括了5类缺陷, 其中有17张破损类缺陷, 18张胶带类缺陷, 16张灰色涂抹类缺陷, 18张油污类缺陷, 15张磨痕类缺陷. 本实验中, 采用默认的网络参数对tile数据集进行了训练, 并得到了5类缺陷的检测结果如图10所示:

              图  10  无监督样本的测试结果

              Figure 10.  Test results of unsupervised samples

              表6所示, ReNet-D方法能适应在tile数据集中的不同种类的缺陷的检测, 其中油污、破损与磨痕类缺陷表现较好, 其检测精确率与召回率与F1-Measure均较好, 但在检测涂抹和胶带类缺陷时, 能检出颜色及纹理与背景有差异的缺陷区域, 但生成的缺陷总体形状与Ground Truth有差异, 导致像素级的评价指标较低.

              表 6  无监督样本的测试结果

              Table 6.  Test results of unsupervised samples

              指标
              样本
              RecallPrecisionF1-Measure
              油污0.710.940.80
              破损0.660.480.55
              磨痕0.630.890.70
              涂抹0.270.470.32
              胶带0.160.350.20

              ReNet-D的特性在于, 网络对于与背景相似的成分有较好的重建效果, 与背景不相似的成分则重建效果较差, 从而利用这种特性来检出与背景有差异的缺陷. 对涂抹与胶带缺陷的特征分析发现, 缺陷局部区域的颜色与纹理和背景非常接近, 甚至与之重合, 后果是这类区域重建效果较好, 造成了差影不明显, 但缺陷局部与背景差异较明显的区域的检测效果则不受影响. 虽然在Recall等指标上不甚理想, 但在工业检测中, 局部检出可视为缺陷检出.

            • 本实验将ReNet-D方法的性能与传统无监督方法(LCA[51]、PHOT[30])和基于自编码方法的无监督方法(MSCDAE[29])进行了比较, MSCDAE在文献中已证明其性能优于其他自编码方法如ACAE[9], RCAE[27]. 实验采用了6类纹理样本, 包含1类规则纹理和5类不规则纹理, 每类纹理使用50张无缺陷样本进行训练, 并在相同数量的缺陷图像样本上进行测试. ReNet-D的网络参数对六类样本基本一样, 差别仅在损失函数的权重系数, 规则纹理取α = 1; 非规则纹理取α = 0.15. 检测结果如图10所示.

              六类样本在图11中按列从左到右依次为A~F类, 第一行为待测的样本图像, 第二行为理想检测结果(Ground Truth).

              图  11  多种算法测试效果对比

              Figure 11.  Comparison of test results of multiple algorithms.

              LCA(Low pass Filtering with Curvature Analysis)[51]方法(第三行所示)能消除代表背景的高频部分, 同时保留代表缺陷的低频部分, 在简单纹理上获得了良好的检测效果, 如样本A和F. 但LCA方法不适合检测频域较复杂的不规则纹理, 如样本B、C、D.

              对于PHOT[30]方法(第四行所示), 只有样本B检测的效果较好, 其他样本中和缺陷区域相似的背景区域被当做噪点处理.

              MSCDAE[29]方法(第五行所示)能检测图11中所有样本的缺陷区域, 但是同时也把部分无缺陷区域当成疑似缺陷检出, 如样本A、B、C、D.

              本文所提出的ReNet-D方法(最后一行所示), 无论在大尺度缺陷样本D, 小尺度缺陷样本E和F, 以及复杂纹理样本C和不规则纹理样本B, 在A~F所有类型的缺陷和纹理上获得较好的检测结果.

              此外, Recall, Precision, F1-Measure这三个指标用于定量分析以上4种方法的检测效果, 如表7所示.

              表 7  不同算法的检测效果比较

              Table 7.  Comparison of detection effects of different algorithms

              算法
              指标, 样本
              LCAPHOTMSCDAEReNet-D
              RecallA0.6630.1550.5620.772
              B0.1170.3410.9660.707
              C0.4780.1330.2030.799
              D0.5610.6100.3580.659
              E0.6120.3180.3590.946
              F0.6410.4140.8810.948
              PrecisionA0.4360.3240.4630.884
              B0.0020.4780.4440.793
              C0.0240.1120.1430.855
              D0.6390.2990.6420.940
              E0.4120.3670.6960.824
              F0.8990.0060.9200.935
              F1-MeasureA0.5260.2100.5080.824
              B0.0040.3980.6080.732
              C0.0450.1220.1680.822
              D0.5970.4010.4600.771
              E0.4920.3410.6620.881
              F0.7480.0120.9000.941

              表7可以看出, 本文提出的ReNet-D算法模型的三个指标, 几乎在所有类型样本上均优于其他算法模型, 适合规则纹理和非规则纹理样本的检测. 仅在样本B上的召回率稍逊于MSCDAE方法, 但从检测结果来看, MSCDAE方法会同时检出非缺陷区域, 产生伪缺陷.

              本研究还对算法效率进行比较. 实验采用1024x1024像素样本图像, 在相同的计算性能下, 对4种方法的处理耗时进行比较, 如表8所示. ReNet-D算法模型经过训练后的大小不到1M字节, 检测耗时平均为2.82 ms, 可以满足工业实时检测的要求. 其他方法耗时较大, 限制了其实际应用.

              表 8  处理耗时的比较

              Table 8.  Comparison of processing time

              检测方法PhotLCAMSCDAEReNet-D
              耗时(ms)4504309746.592.82
            • 本文提出了一种利用重构网络进行表面缺陷视觉检测的方法ReNet-D, 该方法采用轻量化结构的全卷积自编码器设计重构网络, 在训练阶段, 仅采用无缺陷样本进行训练, 可以解决工业环境中缺陷样本获取困难的问题; 在检测阶段, 利用训练好的模型对输入的缺陷样本做重构, 并通过常规图像处理算法即可实现缺陷区域的精确检测. 本文讨论了无监督算法中网络结构、损失函数、patch尺寸等因素对表面缺陷检测任务的影响, 并且提出结合L1损失和结构损失的组合损失函数用于表面缺陷检测, 以同时适应规则纹理和非规则纹理样本的检测问题. 本文在多类样本数据上对提出的ReNet-D方法和其他无监督算法做了对比实验, 结果证明本文所提出的检测算法取得了较好的效果, 并适合移植到工业检测环境. 由于网络的轻量化特性, ReNet-D对于一些与背景纹理相似且颜色接近的缺陷的重构性能较好, 导致差影结果不明显, 生成的缺陷区域与Ground Truth相比有差异, 可以从成像角度做适当改进, 使缺陷对比度较为明显, 进而达到更好的检测效果.

          WeChat 关注分享

          返回顶部

          目录

            /

            返回文章
            返回