基于视觉分析的PVC皮革缺陷检测系统设计与实现
2021-05-07罗泽建王美林肖文邱海桓
罗泽建 王美林 肖文 邱海桓
摘 要:皮革表面缺陷检测是PVC人造皮革行业生产过程中保障皮革质量的重要环节。针对PVC人造皮革生产企业存在人工检测皮革效率低、漏检率高的问题,结合计算机视觉技术和视觉分析目标检测算法,设计一套PVC皮革表面缺陷检测系统,对系统组成、工作原理和关键技术进行详细阐述。经测试,系统稳定运行,在工业传送带的速度为60 m/min的情况下,系统对缺陷的检出率能满足工业生产要求。
关键词:PVC皮革;缺陷检测系统;计算机视觉
中图分类号:TP311 文献标识码:A文章编号:2096-4706(2021)23-0145-06
Design and Implementation of PVC Leather Defect Detection System Based on Visual Analysis
LUO Zejian, WANG Meilin, XIAO Wen, QIU Haihuan
(Guangdong University of Technology, Guangzhou 510006, China)
Abstract: The detection of Leather surface defect is an important link to ensure leather quality in the production process of PVC artificial leather industry. Aiming at the problems of low efficiency and high missed detection rate of manual leather detection in PVC artificial leather production enterprises, combined with computer vision technology and visual analysis target detection algorithm, a set of PVC leather surface defect detection system is designed, and the system composition, working principle and key technologies are described in detail. After testing, the system operates stably. When the speed of industrial conveyor belt is 60 m/min, the detection rate of defects of system can meet the requirements of industrial production.
Keywords: PVC leather; defect detection system; computer vision
0 引 言
隨着人工智能时代的到来和人工智能技术的不断普及,越来越多的智能技术运用到了现代化生产中。而PVC制革作为我国优势传统产业,现有的自动化、智能化程度还处于起步阶段[1],在皮革表面的缺陷检测的研究中,也广泛应用了计算机视觉技术和视觉检测技术[2]。然而对于皮革缺陷检测方法仍处于理论研究阶段,并没有应用到实际生产环节当中,在实际的PVC皮革生产领域中,皮革表面缺陷检测大多数采用的是产后人工检测方式。这种人工检测的方式一方面会存在人为主观判断不准确的问题,另一方面产后检测会存在生产浪费的问题。本文针对以上问题,采用深度学习的目标检测算法和C++编程语言,研究并开发了一个基于视觉分析的PVC皮革表面瑕疵检测系统。
1 系统设计
1.1 系统需求
基于视觉分析的PVC皮革缺陷检测系统为了能够在工业环境下完成生产要求,通过对现场勘测和与厂家沟通,得到以下系统需求:
(1)系统操作员分为不同角色,每种角色有不同的操作权限。
(2)检测缺陷要求具有时效性,对于一条PVC皮革生产线而言,产中的PVC皮革滚动速度是变动的,且速度在20~60 m/min之间(最快1 m/s),这需要对长和宽为1 m的PVC皮革表面图片的检测频率至少要达到1 Hz。此外,需要尽可能检出率高,误检率低。对于指定类别的缺陷,可以通过设置即时输出报警。
(3)系统需要对缺陷检测模型具有灵活的管理,根据检测环境、PVC皮革产品类型的不同,需要配置多个缺陷检测模型,在检测作业开始前根据针对不同的环境和PVC皮革产品选择最匹配的缺陷检测模型,以达到检测的最佳效果。
(4)系统需要能加载不同的工业相机,能够灵活调整相机参数,能够控制和调试工业相机采集PVC皮革图片。
(5)系统对检测作业信息能够进行详细的统计,保存和检索作业信息、日志信息等。
1.2 系统架构
根据系统需求分析搭建的系统结构如图1所示。
首先是UI交互模块,包含在线检测界面、作业统计界面、产品管理界面和相机管理界面,在线检测界面给用户呈现当前作业检测状态,包括缺陷检出分布和统计、当前产品线传动带移动速度、作业操作日志等等。作业统计界面提供给用户方便查询历史作业信息。产品管理页面用来管理产品信息的修改、增加、删除操作,包括为产品配置缺陷检测模型。相机管理页面用来管理和操作相机,生成相机设置模板供产品管理选择。
相机控制模块,此模块分成相机配置和相机调试两部分,相机配置包括加载相机驱动,扫描本地相机,加载相机等操作,相机调试包括设置相机参数,启动和关闭相机采集图像等操作。
视觉分析模块,此模块分为驱动管理、模型加载、检测缺陷三部分,驱动管理用来加载多个视觉分析模块驱动,模型加载即通过驱动加载不同的视觉分析模型,缺陷检测即使用已加载的视觉分析模型进行PVC皮革表面缺陷检测。
报警模块,此模块用来控制报警器输出报警,通过网络传输协议给下位机PLC模块输出固定格式指令,执行启动/关闭报警器操作。
系统管理模块,包括系统设置、用户管理和操作日志信息管理,主要配置系统的运行环境以及管理用户和对系统的运行日志进行记录。
2 系统实现
2.1 平面扫描平台
本文所述系统接入的是一个基于Dalsa线阵相机的平面采集平台,平台展示如图2所示。
平台由三路线阵相机、编码器、白色线性光源,传送带和平台固定支架组成。平台的传动带带动编码器旋转产生脉冲,根据单位时间内编码器产生的脉冲数量计算出传送带的滚动速度。软件接入该平台,通过GigE接口控制多个相机采集图像。
2.2 缺陷检测控制软件
下面对系统主要模块进行介绍。
2.2.1 UI交互模块
本文设计多个UI界面,通过DirectUI界面库实现的主要UI界面如图3所示,包含在线检测、作业统计、产品管理、相机管理四个主要界面。
2.2.2 相机控制模块
相机控制模块在进入主系统时初始化,完成相机驱动加载,扫描本地已连接的相机。以DALSA千兆网(Gige)工业相机为例,该种相机与PC通过千兆网线连接,连接后使用局域网配置工具为相机配置一次IP即可通过本系统的相机控制模块识别和加载。本文为相机定义了一個C++公共接口ICamera,接口成员函数如表1所示。
通过加载DALSA相机驱动模块,使用模块的createCamera()函数创建一个ICamera对象,在ICamera初始化成一个对象后,可以直接用对象操作DALSA系列的相机,比如执行startWork()将启动相机采图操作,执行setParam()将修改相机当前参数设置。
2.2.3 视觉分析模块
视觉分析模块执行两种操作:
一是加载模型驱动,在进入主系统后,根据预先设置好的路径加载该路径下所有的模型驱动。本文使用的模型驱动有两种,一种基于Fast RCNN算法,另一种基于YOLOv5算法,这两种驱动都以动态链接库(.dll后缀文件)的方式存放在本地磁盘上。
二是加载模型,初始化模型驱动后,可以加载指定类型的模型进行缺陷目标检测。以YOLOv5算法为例,通过深度学习训练得到一个YOLOv5算法的模型文件,转换成统一格式后一般以.onnx为后缀的文件格式存放在本地磁盘,系统加载该算法的驱动,寻找本地磁盘上该类对应的算法模型,将该模型初始化成一个缺陷检测对象即可完成模型加载。
为了便于灵活加载不同的缺陷检测模型,本文定义了统一的C++公共接口IDetetor,接口函数成员如表2所示。
IOutput是一个封装了缺陷信息的类,成员包括缺陷类别Class,缺陷置信度Conf和缺陷坐标Rect(x,y,w,h)。执行Detect()函数,如果有缺陷信息,将返回一个不为空的Vector<IOutput>数组,通过遍历该数组即可访问PVC皮革图像的缺陷信息。
2.2.4 系统在线检测流程
在线检测是将系统使用到的资源的综合利用,在线检测步骤为:
(1)在线检测任务开始前,配置产品参数,配置相机参数和配置模型参数。
(2)开始在线检测任务,加载相机控制模块的采集图像功能和视觉分析模块的缺陷检测功能。
(3)采集到一帧图片,对该图片进行缺陷检测,当检测到缺陷时,执行步骤(4),未检测到缺陷时,跳过步骤(4)直接执行步骤(5)。
(4)获取图片的所有缺陷信息,将存在缺陷的图片和缺陷信息保存到本地,存在需要报警的缺陷类别则输出报警。
(5)将当前检测任务信息记录成一条日志信息保存到本地,在线检测任务还在继续时重复步骤(3)~(5)。
系统的在线检测任务流程如图4所示。
3 关键技术
3.1 DirectUI界面库
DirectUI界面库取名自微软的一个窗口类名“DirectUIHWND”,该界面库创建的子窗口不以窗口句柄的形式创建,只是逻辑上的窗口,绘制在父窗口之上,易于二次开发,是一张广泛的应用Windows系统的开源界面库[3]。本文使用DirectUI界面库开发了2个主窗口和5个子窗口,各个窗口的设计和功能描述如表3所示。
主窗口继承的类是WindowImplBase,重写了该类的初始化函数。主窗口本质上是一个真实的窗口,每一个主窗口都有一个窗口句柄,而子窗口继承的类是CNotifyPump,本质上是一个虚拟窗口,隶属于主窗口的子窗口可以共享主窗口的资源,利用这一机制可以实现多种复杂的操作,比如截获发送到主窗口的消息,当相机采集到一帧图像时,将给主窗口发送一条消息,而在线检测窗口可以截获该消息对图像进行缺陷检测。此外本文还利用DirectUI的绘图机制自定义了多个复杂控件,以满足系统需求。
3.2 图像处理
本文在设计系统初始阶段对视觉分析算法做过测试,包括但不限于对图像进行灰度化、拼接、裁剪、缩放等进行操作以达到最佳检测效果,图像处理基本流程如图5所示。
3.2.1 图像拼接
图像拼接是指将拍摄到的具有重叠区域的若干图像拼接成一张无缝全景图的技术[4]。本文所述系统需要用到一个或者多个相机采集高分辨率图像,当相机水平按顺序排列摆放时,需要用到水平图像拼接技术,将重叠部分拼缝,得到一张更宽的图像。
3.2.2 图像灰度化
图像灰度化的原理是将图像的通道数由多通道变为单通道。本文通过实验比较得出对于PVC皮革的图像,对其灰度图像的检测速度快于彩色图像的检测速度,而检测精度变化不大,因此对PVC皮革图像进行了灰度化。
3.2.3 图像裁剪
工业图像采集的图像裁剪技术即通过裁剪,去掉由于环境等因素引入的图像边界空洞。本文中图像裁剪的作用就是对一帧图像的边缘裁剪,去掉非PVC皮革的部分,只对PVC皮革区域进行瑕疵目标检测,以提高检测效率和检测精度。
3.2.4 图像缩放
图像缩放是对图像进行分辨率放大或缩小操作,本文使用图像缩放技术对图像进行处理,对于缺陷检测的精度、速度具有较大影响,且对图像进行缩小再存储至磁盘,可以有效减少磁盘占用量,本文权衡缺陷检测效果和磁盘占用量,将图像缩放特定的比例。
对于上述四中图像处理技术,本文使用的是OpenCV开源库进行操作,对于上述图像处理方法,本文通过封装OpenCV库函数实现如表4所示。
3.3 瑕疵目标检测
本文使用由团队其他学习小组训练得到的YOLOv5[5]模型做测试,该模型将瑕疵类型分为hole(孔洞)、ribbon(色线)、dirt(脏污)、bubble(气泡)、stripe(条纹)五个类别,经过测试,本次训练出来的模型对各个类别的检测效果,如表5所示。
工业PVC皮革生产过程中对检出的不同缺陷类别各有侧重,在本文所展示的类别中,侧重的缺陷类别bubble>hole>dirt>ribbon>stripe,可以看出对于主要类别bubble和hole均能达到80%以上,因此使用YOLOv5算法进行缺陷检测,检测精度能满足工业生产要求。
本文对视觉分析技术——YOLOv5深度学习算法进行了推理加速机制做了相关研究,为了能在大分辨率图像下检测小目标,本文在基于YOLOv5x模型,通过不断地测试和反馈,对模型本身进行模型剪枝、参数量化以减小模型体积。对于推理过程,使用TensorRT工具对推理层进行加速,最终达到在不同分辨率下的检测速度,如表6所示。
在工业相机的加持下采集图像来到的分辨率达到了8 k,8 k×8 k分辨率的图像所表示的PVC皮革实际面积是1 m²(1 m×1 m),因此,8 k×8 k分辨率下,理论上能够进行实时检测的PVC皮革产线最大线速度是230 m/min,能满足线速度60 m/min的PVC皮革产线需求。
4 结 论
在PVC皮革生产过程中,最重要的是避免对PVC皮革缺陷检出的不及时而造成生产浪费。本文研究一种基于视觉分析的PVC皮革检测系统。该系统使用DirectUI界面库技术开发人机交互界面,使用C++编程语言开发相机控制模块、视觉分析模块和报警模块。经测试,本文所设计的系统完全能够满足PVC皮革生产过程中表面缺陷检测需求,有利于PVC皮革表面缺陷检测向智能化发展。
参考文獻:
[1] 林炜,张龙,刘晓虎,等.我国皮革产业信息化、数字化建设现状调研与分析 [J].皮革科学与工程,2021,31(5):28-32.
[2] 冉诗雅,赵义红,王巍,等.数字化技术在皮革行业的应用现状及展望 [J].中国皮革,2021,50(4):29-33.
[3] 赵文强,景建恩,杨杰,等.基于Duilib库的海洋可控源电磁数据预处理软件开发 [J].物探化探计算技术,2021,43(2):261-268.
[4] 王浪.全景图像拼接算法的研究与实现 [D].北京:北京邮电大学,2020.
[5] REDMON J,DIVVALA S,GIRSHICK R,et al. You Only Look Once:Unified,Real-Time Object Detection [C]//2016 IEEE Conference on Computer Vision and Pattern Recognition(CVPR).Las Vegas:IEEE,2016:779-788.
作者简介:罗泽建(1996—),男,汉族,广西北海人,硕士研究生在读,研究方向:计算机应用、深度学习;王美林(1975—),男,汉族,湖南安化人,副教授,博士,研究方向:物联网技术、制造执行系统及应用、面向新工科教育的智慧学习工场技术;肖文(1997—),男,汉族,湖南株洲人,硕士研究生在读,研究方向:计算机应用、深度学习;邱海桓(1999—),男,汉族,广东惠州人,硕士研究生在读,研究方向:计算机应用、深度学习。