食用油激光喷码视觉检测分拣系统
编者按:当前食用油激光喷码检测方法仍是传统的人工灯检法,存在成本高、不稳定、精度低、人员调动等问题,已经不能满足生产商和消费者的要求,为此设计一种基于机器视觉和自动化控制技术的食用油激光喷码检测分拣系统。借助Matlab Script节点,采用LabVIEW和MATLAB软件混合编程的方法实现喷码字符检测,LabVIEW软件实现图像采集、人机界面制作和数据分析功能,MATLAB软件实现图像处理和字符识别功能,充分发挥各软件优势,降低编程开发难度。LabVIEW通过VISA串口将喷码质量信息传输至PLC(Progr
作者 张培恒1 董浩2 王博1 孙瑞轩2
1.燕山大学 电气工程学院(河北 秦皇岛 066004)2.河北省科学院 自动化研究所(河北 石家庄 050000)
*基金项目:河北省科学院科技计划项目(编号:17401)
张培恒(1989-),男,硕士,研究方向:机器视觉。
摘要:当前食用油激光喷码检测方法仍是传统的人工灯检法,存在成本高、不稳定、精度低、人员调动等问题,已经不能满足生产商和消费者的要求,为此设计一种基于机器视觉和自动化控制技术的食用油激光喷码检测分拣系统。借助Matlab Script节点,采用LabVIEW和MATLAB软件混合编程的方法实现喷码字符检测,LabVIEW软件实现图像采集、人机界面制作和数据分析功能,MATLAB软件实现图像处理和字符识别功能,充分发挥各软件优势,降低编程开发难度。LabVIEW通过VISA串口将喷码质量信息传输至PLC(Programmable Logic Controller,可编程逻辑控制器),控制自动分拣机构将喷码不合格的食用油剔除,从而保证和提高产品质量。实验结果表明,系统正确检测和分拣率可稳定达到90%以上。
0 引言
食品安全问题一直是人们最关心的,而食用油是生活中不可或缺的日常消耗品,随着生活水平和安全意识的不断提高,人们对食用油品质的要求屡日增高,食用油桶体上标记激光喷码作为油品保障的必要手段[1],为每一桶食用油标注其规格、生产日期、批号等不同的信息,已成为食用油质量标准,其相当于食用油的身份证件,以其不可涂改、无耗材、无污染、高效、长效等特点,被广泛用于标识领域,但在工厂食用油生产过程中,由于环境、设备、技术等原因,激光喷码难免会出现错印、漏印、污损、重叠等缺陷,此时就需要对其进行质量检测,保证有缺陷的产品不会流入市场,以免造成对消费者健康权益和企业品牌形象的负面影响。传统的食用油激光喷码检测主要是依靠人工岗位来完成,然而人眼的主观检测有其固有的局限性,己经越来越不能适用于现代制造业的标准,因此食用油生产工序的质量检测水平必须提高,食用油激光喷码视觉检测分拣系统运用先进的机器视觉和自动化控制技术完全可以替代人工检测,使用BP神经网络算法不断提高检测速度、效率和精度,完全满足现代制造业的标准。
机器视觉是一门多学科交叉的综合性技术,它包括了数字图像处理、光学、模式识别、计算机应用科学、人工智能等一系列学科领域的知识[2],通过计算机和工业相机非接触式地对目标图像进行获取和处理,最终获取目标信息和实现智能自动化控制。
神经网络启发于生物学神经系统,通过并行处理和改变神经元连接权重来训练出能实现特定功能的神经网络,其具有很强的自学习和泛化能力[3]。BP(Back Propagation,反向传播)神经网络是多层前馈误差反向传播的神经网络,是目前应用得最为广泛的神经网络预测模型。
自动控制技术是指在极少或无人参与下,通过使用各种控制器、继电器、接触器、执行器、传感器等装置自行实现工艺或过程的一门技术。它是以控制理论为基础,利用反馈原理来自动地调节动态系统[4],使得系统达到人们的预想。自动控制系统的大量应用,不仅提高了工作效率,也提高了工作质量,改善了人员的工作环境。
食用油激光喷码视觉检测分拣系统灵活运用各种技术和方法,研究和分析BP神经网络算法,快速准确地检测出喷码信息,并与激光喷码机中的应刻灼信息相比对,如果出现错印、漏印、污损、重叠、歪斜等情况,系统将自动报警,提醒用户,并可按预先设定的自动控制程序执行相关动作,剔除不合格产品。
1 机器视觉
机器视觉是指利用相机代替人眼功能,图像处理及算法功能代替人脑功能,对目标进行特征提取和分析,进而做出判断来控制生产过程的一种人工智能技术[5],包括光源、图像获取、图像处理、算法等模块。
1.1 光源照明模块
光源与照明方案是系统中重要组成部分,应尽可能地突出目标特征,将要检测的区域尽可能大地与背景区域进行区分,提高对比度,降低图像处理、分割和识别难度,使系统的可靠性和综合性能得到提高。
食用油桶体是半透明且带有一定弧度的,激光喷码机在桶体表面刻灼凹字符,其与非字符区域的材料相同,故没有颜色信息且反光严重,这大大增加了光源和照明方案的难度。
依据检测对象,尝试不同类型光源,经过多次不同实验,最终设计了一种照明方案:选择条形LED红色光源组合成边长约10 cm的正方形,并在正方形光源后添加红色同轴光源,同时配有亮度控制器,可独立微调和粗调每组对边位置的灯亮度和同轴光源亮度,协调配合使用同轴光源和组合条形光源,在足够亮度情况下消除反光和保证足够的对比度、清晰度,实物光源如图1所示,在特制光源照明下获取的喷码图像质量明显提高,清晰度、对比度明显增强,大大降低喷码图像处理和检测、识别难度,同时加快系统运行处理速度和提高系统鲁棒性。
1.2 图像采集模块
图像采集模块是系统的输入端,对整个系统的运行速度和效率有重要影响,包括光电传感器、工业相机、镜头、相机支架、链板等设备。
1.2.1 光电传感器
光电传感器输出为继电器信号,用于硬件触发工业相机拍照,即链板运送食用油至特定位置后,光电传感器动作,触发处于准备状态的工业相机抓拍喷码。
本系统选用欧姆龙E3Z-T61A-L型光电传感器,为透过性红色光源传感器,设计有感度调节按钮和动作切换开关,动作和复位各为1 ms一下,响应速度快,同时具有简易、耐振动、稳定、寿命长等优点,可满足系统精度、触发模式、链板速度的要求。
1.2.2 工业相机及镜头
根据所需的分辨率、芯片和像素大小确定合适的相机,链板一直处于高速运转状态,同时为提高系统图像处理速度不必要获取图像颜色信息,因此选用BASLER acA1920-155 μm 黑白工业相机,帧速率可达164 fps,选用通讯标准统一、传输速率快、成本低廉的USB 3.0图像传输方式,相机配有Sony IMX174 CMOS感光芯片,230万像素分辨率,足以满足系统要求。
镜头的选择除了要与相机的接口、传感器尺寸、分辨率相适应,还要充分考虑工作距离、视场大小、崎变等因素选择具有合适焦距的镜头[6],本系统选用BASLER C-125-1218-5M型号镜头,分辨率为500万像素,光圈范围为F1.8~F22.0,工作距离为200 mm,固定焦距为12.0 mm,原装C口镜头,与已选相机和光源配合使用能够获得高质量喷码图像,为接下来图像处理环节奠定基础。
1.3 图像处理模块
图像处理是机器视觉的核心部分,对系统处理速度和高识别率起到决定作用,包括对图像预处理,喷码字符的检测、定位和分割,特征选择、提取及运用相关算法识别字符等操作。
1.3.1 图像预处理
由于环境、设备等固有因素使图像含有一定的干扰性噪声,为了使这种影响降到最低,需要对目标图像进行必要的预处理,降低图像噪声、提高图像对比度及清晰度,通过图像增强技术将图像本身容易被忽略的细节部分显现出来,提取出图像的特征,方便后续处理。因缺乏判定图像增强质量客观的统一标准,从严格的理论上来说还没有被广泛认可的理论。不同程序在处理图像增强时,都有自己的针对性,增强的结果利于下一步图像处理,即是图像增强合适与否的标准,由实验结果对比所得,本系统选择中值滤波器去除噪音影响,如图2所示,从图像二值化结果中也能判断出中值滤波器更适合图像后续处理,如图3所示。
1.3.2 字符分割
字符分割是整个图像处理中最重要、最困难的一步,是字符识别的基础,只有将字符完整正确地分割开来,才能保证字符识别的效果和正确率。
首先对图像进行二值化,其目的是将图像分为两个部分,即背景和前景,本系统选择大津法得到阈值进行二值化;另外消除面积小于25个像素的孤立的点,然后填充孔洞并膨胀图像;接着运用一种基于投影和字符宽度相组合的方法来完成字符分割,详细步骤如下:
1)水平投影。由左到右、由上到下扫描图像每一行像素并累加每一行像素值,设定水平投影的累加值阈值为9,记录累加值大于和小于阈值的起始位置,分别为每行字符由上到下的起始位置和结束位置,从而将整个字符图像粗分割为两行字符。
2)垂直投影及字符间距判断。由上到下、由左到右扫描粗分割字符图像每一列的像素并累加每一列的像素值,设定垂直投影的累加值阈值为4,记录累加值大于和小于阈值的起始位置且相邻位置间距应大于35个像素,分别为字符由左到右的起始位置和结束位置,从而将整个目标图像细分割为22个单字符。
3)对每个字符图像分别再进行一次水平投影,累加阈值为4,除去每个字符上下边界多余区域,并归一化为16×16大小的字符图像保存到本地,作为训练和测试BP神经网络的样本。
2 LabVIEW和MATLAB平台混合编程
LabVIEW是NI公司推出的一种基于图形化编程G语言的高效开发软件,图形界面丰富,容易制作各种界面,并包括大量用于数据采集、分析以及表达、储存的各种库函数,编程简单。但在图像处理、神经网络、模式识别等各种算法的支持方面是LabVIEW的短板,其相关工具箱及编程灵活性非常有限。
MATLAB是以矩阵运算为基础、拥有强大计算功能的一种数学软件,针对不同专业领域的应用,具有信号处理、图像处理、神经网络等多个专用工具箱,但在人机界面设计和开发方面能力非常有限,并且在硬件输入、通信和控制等方面都比较繁琐。
本系统借助Matlab Script节点实现LabVIEW和MATLAB混合编程,通过此节点LabVIEW直接调用编写、调试后的MATLAB程序,可以达到两者扬长避短、优势互补的效果,降低了开发难度,缩短了开发周期,提高了工作效率。
2.1 LabVIEW软件编程
LabVIEW软件主要实现图像采集、人机界面制作、数据分析等功能,充分发挥其优势。
LabVIEW软件内置的IMAQdx通过NI MAX可以直接连接和设置工业相机。在LabVIEW程序框图中调用子VI并连线编写图像采集程序,分别是打开和配置相机,拍照获取图像等。在LabVIEW前面板中调整、拖拽和设置图标,制作人机界面,界面左方为状态信号指示灯,显示系统各个工序运行状态,界面中间实时显示图像和识别出的字符串,界面左方为系统设置和操作按钮,界面下方显示喷码所表示的食用油信息,如图4所示。
同时系统有查询食用油喷码历史数据的功能,点击人机界面中“查询”按钮,弹出数据查询窗口,可根据产地、批号、开始和结束时间、合格与否等条件查询食用油喷码历史信息,并能导出数据保存至本地。
2.2 MATLAB软件编程
MATLAB软件主要实现图像处理、BP神经网络算法、字符识别等功能,借助MATLAB图像处理工具箱和神经网络工具箱加快了编程速度和开发进程。
2.2.1 图像处理
首先进行图像滤波来除去噪音和提高图像对比度、清晰度,尝试均值、中值、高斯、拉普拉斯等滤波器并比较得中值滤波器效果最佳。
接着对图像进行二值化处理,该过程关键是根据图像灰度特性对阈值的选取,大津法是错分概率最小、自适应的阈值确定方法,相比于迭代法、最小误差法等效果最好。
其次做二值图像形态学处理,除去零散的点、填充孔洞、膨胀连接字符边缘。
最终进行图像分割和归一化处理,因为喷码字符有规律地分行排列且间距相近,故选择一种基于投影和字符宽度相组合的方法来完成字符分割,最后每个字符图像归一化保存至本地。
2.2.2 BP神经网络算法
BP神经网络由输入层、隐含层、输出层构成,如图5所示。它是基于梯度下降的最小均方差算法,它采用误差反向传播的方式不断调整神经元连接权值,最终BP神经网络实际输出和目标输出之间均方差满足系统要求,训练出满意的预测模型。
借助MATLAB神经网络工具箱实现BP神经网络算法的详细过程如下:
1)确定输入矩阵P和目标矩阵T。因实验条件有限,样本集仅有3800个元素,包括10个数字、26个字母及斜线、冒号共38个类别,每个类别含100个不同条件下获取的样本。选取像素特征作为BP神经网络的输入,因为每个字符归一化为大小16×16,故输入矩阵P大小为256×3800,每一列表示一个字符样本,目标矩阵T大小为1×3800。
2)确定各层神经元数目。在神经网络工具箱中,输入层和输出层的神经元数目会根据输入矩阵P和目标矩阵T自行确定;因样本量有限,以及为降低网络训练时间和出现“过拟合”的倾向,只设定1层隐含层,该层神经元数目根据经验公式和实验所得最终设定为98个。
3)设定网络参数。网络的输入层和隐含层、隐含层和输出层的传输函数分别为双曲正切S型函数和纯线性函数,选用梯度下降训练方法,初始设置网络的目标误差为0.001,显示中间结果的周期为10 ms、最大迭代次数为30000,学习率为0.05。
4)训练网络。针对不同形式的字符,不断调整网络参数进行训练,并测试网络满足要求后保存至本地,供Matlab Script节点调用来识别新样本中的字符。
3 自动分拣机构
为了解决食用油分拣环节人力成本高、劳动强度大、生产效率低等问题,设计了一个简单有效的小型自动控制机构,采用上下位机的主从控制方式[7],上位机通过USB转接RS232串口实现与下位机之间的数据传输,运用PLC、变频器、光电传感器、气动控制等现代工业控制技术,具有工作效率高、运行可靠、节省成本等优点。
3.1 机构组成及工作过程
该机构主要由链板传送装置、光电传感器、变频器、PLC、上位PC机、电磁阀、气动执行装置等设备组成,如图6所示。链板传送装置用于食用油的传送,由三相交流异步电机拖动,采用变频器进行调速,PLC控制调速信号。光电传感器安装于链板进料口,检测是否有食用油进入。电磁阀直接控制气动执行装置的伸缩,将不合格食用油推至回收仓链板上。
具体工作过程:低压配电柜和控制柜上电后,当链板上没有食用油时,变频器输出20 Hz的频率控制链板以低速运行;当进料口的光电传感器检测到有食用油进入系统后,则将位置触发信号上传至PLC,控制变频器输出40 Hz调速信号,加快链板速度;当食用油至拍照位置,上位机获取图像并快速判断出喷码质量信息,界面相应指示灯亮或灭,质量信息通过串口下传至PLC;若质量合格则食用油继续进入下一工序,若质量不合格,PLC则控制电磁阀动作气缸快速伸出,将食用油推至回收仓链板并快速缩回,同时伴有持续2 s的报警灯闪烁和警铃响起;若进料口没有新的食用油进入,则链板恢复低速运行,若有食用油进入则重复上述工作过程。
3.2 设备选型及设置
设备选型的基本原则是在满足现场环境和工艺要求的前提下,并能保证系统可靠性和维护方便,追求最佳的性价比。
上位PC机最低硬件要求:英特尔酷睿i3-7100处理器,4 GB 2133 MHz内存,256 G硬盘,1 G集成显卡,32位真彩显示器,64位Windows7操作系统。下位机选用西门子S7-200小型PLC,足以满足系统的要求,是控制机构的核心模块,使用STEP7 MicroWIN V4.0 SP9软件编写梯形图控制程序;系统仍选用欧姆龙E3Z-T61A-L型光电传感器;选用AKS 4V110-06型电磁阀及SMC MGQM25-175型气动执行装置。系统选用性能稳定、维护方便的西门子G120系列变频器,由控制单元、功率模块、操作面板组成,是一个高度模块化的变频器,各模块型号分别为CU240B-2、PM240和BOP-2,变频器设置为多段速控制,链板空载时以第一段速20Hz运行,否则以第二段速40 Hz运行,加速时间和减速时间分别0.5 s,同时设置变频器启动方式、最大和最小频率、电流保护等参数。
4 结论
借助机器视觉和自动化技术攻克难关,运用高效的LabVIEW和MATLAB混合编程方式,实现食用油激光喷码视觉检测、自动分拣功能,代替人工分拣,进一步解放劳动力,降低生产成本,提高生产率和智能自动化水平。但本系统的样本集还不足够大,需要在实验和生产过程中不断扩充样本,继续训练和调整BP神经网络预测模型,进一步提升系统分拣率。同时,若在之后的生产过程中,遇到透视形变以及桶面弯曲过大的情况,需增加图像矫正功能。
参考文献:
[1]王洋洋.喷码技术的发展革新[J].中国食品工业,2010,1(3): 28-29.
[2]刘金桥,吴金强.机器视觉系统发展及其应用[J].机械工程与自动化,2010,28(1):215-216.
[3]杨淑莹.模式识别与智能计算[M].第三版.北京:电子工业出版社, 2015.
[4]王啸东.综合自动化控制系统设计[J].电气时代, 2011, 1(6): 118-120.
[5]S Carsten,Markus Ulrich.Machine Vision Algorithms and Applications[M].第一版.北京:清华大学出版社,2008.
[6]彭琼.基于纹理特征的瓷器图像分类[D]. 湖南:中南大学, 2014.
[7]陶跃珍,王东.啤酒瓶自动检测系统设计[J].机械,2010,37(10): 59-61.
本文来源于必威娱乐平台 2018年第6期第31页,欢迎您写论文时引用,并注明出处。
加入微信
获取电子行业最新资讯
搜索微信公众号:EEPW
或用微信扫描左侧二维码