基于像素点测量的瓶盖检测算法

张超 贺霖龄

摘 要:采用基于像素点的饮料瓶瓶盖检测算法,可以很好地提高瓶盖的检测效率、降低成本。算法按照找出中垂线、左右边缘线、上边缘线和突出瓶颈4个步骤来判断瓶盖的4种情况。在实际操作过程中,系统监测的准确率超过了99%。实验证明,该算法有很强的实用性。

关键词:瓶盖;检测;像素点

在现代化的流水线中,一条罐装饮料生产线每小时可以生产上万瓶饮料,期间会出现一些不合格产品,而不合格则主要体现为瓶盖不合格。为了不影响产品质量,需要对瓶子进行全方位的检测。如今,对不合格瓶子的检测主要通过人工分选完成,工作量大且稳定性差。

针对瓶盖图像的特点,本研究提出了一种基于像素点测量的瓶盖检测方法,可以检测瓶盖的无盖情况、高盖情况、歪盖情况。提出的瓶盖检测算法可应用于饮料生产线PET瓶的检测系统中,经实际测试,检测精度达到99%。

1 算法实现

1.1  瓶盖外形检测算法

根据实验环境条件的不同,瓶盖检测算法也有所差异,在每张瓶盖的图像中,瓶身的基本位置應保持稳定。瓶盖顶部图像的投影轮廓也应该是平直的。如果投影中的顶部轮廓线不平直,就可以判定瓶盖异常。

最下乘拟合方法假定:n个点的组合(xi,yi)(i=1,2,…,n),在取定的函数类Φ中,式为:

就集合而言,给定n个点,所求的函数就是与给定点之间距离的平方和曲线y=f(x)。函数f(x)被称为最小二乘解。求拟合函数f(x)的方法被称为曲线拟合的最小二乘法。

本方法所求的是直线的最小二乘拟合,对应的函数表达式为:

进而可以得到:

可以求得对应的直线方程:

当已知直线方程时,瓶盖在直线上的位置通过以下步骤得到。以灰度图像作为输入图像,通过二值化的方法对图像进行预处理。二值化有助于减少图像数据量,加快处理速度。

在生产过程中,瓶盖轮廓检测算法也存在一些问题,例如在图像的采集过程中,若瓶盖出现微弱振动,就可以通过数理统计的方法对其参数进行估计;但当瓶子出现较大幅度的倾斜时,瓶盖顶部直线会发生较大的倾斜,导致正常瓶盖被判定为斜盖,出现误检。在此基础上,本研究提出了基于像素点测量的瓶盖检测算法。

1.2  基于像素点测量的瓶盖检测算法

首先,检测中垂线、左右边缘线、上边缘线和突出瓶颈部分;其次,根据获得的直线坐标来判断无盖、歪盖、高盖、正常盖4种情况。

1.2.1  检测是否有盖

打开图像,采用大津阈值二值化方法对瓶盖图像进行二值化。图像经过二值化之后,瓶盖部分为白色,非瓶盖部分为黑色,计算白色像素和黑色像素的个数,如果白色像素的个数和黑色像素的个数比例大于某个阈值Th1,本研究中的Th1取1.4,则说明瓶盖图像是无盖的,需要剔除;反之,则继续检测。

1.2.2  有盖检测

如果瓶盖图像是有盖的,下面继续检测瓶盖是高低盖、歪盖还是合格的瓶盖。

在检测瓶盖之前,首先,画出瓶盖的中垂线和上边缘部分,瓶盖部分是黑色。找出的中垂线是指近似的中垂线,以一条水平线从上到下遍历,每一行都有一个目标颜色,即黑色的坐标均值,将所有的均值相加,再除以有目标颜色的行数,求得的值作为近似中垂线的横坐标,即middlecol。

找出上边缘部分,利用一条水平直线从上到下遍历,当满足一条线上的目标颜色数大于某个阈值(即100)时,则认为这条水平直线是上边缘,且上边缘的纵坐标为toprow。

除了画出瓶盖的中垂线和上边缘位置,还要检测饮料瓶颈部的突出部分位置和饮料瓶盖的左右边缘位置。检测饮料瓶颈部的突出部分位置是利用了中垂线的信息,中垂线上连续白色点数目多的一段是在突出下面的部分,以这个部分为底线,在底线到瓶盖的上边缘之间依次从左边寻找一条列线,当该列线上的目标像素点数满足连续的3个像素点时,停止寻找,而且以3个连续像素点的中间像素点的纵坐标即outrow画一条水平线,这条水平线被认为是突出部分位置。

检测饮料瓶盖的左右边缘位置,通过已经找出的瓶盖上边缘和瓶颈突出部分的位置,在这两部分之间的区域分别从左边和右边以列为单位遍历,有3个同色点在一条列线上分别认为是左边缘和右边缘,左边缘和右边缘的横坐标分别为leftcol和rightcol。

从上边缘和中垂线的交点A开始,沿着中垂线向下,至中垂线和瓶盖的交点B,如果AB之间点的个数多于某个阈值Th2,本研究中的Th2取5.0,则说明瓶盖是歪盖,反之则不是。

求出盖的宽度,即gaiwidth=rightcol-leftcol;再求出瓶盖广义的高度;瓶盖的上边缘到瓶颈部突出部分的距离,即gaiheight=outrow-toprow;瓶盖广义高度和瓶盖宽度的比例rate=gaiheight/gaiwidth,当rate大于阈值Th3,本研究中的Th3取0.7,则瓶盖为高低盖;如果rate小于某个阈值Th3,则说明瓶盖是合格的。

2 实验结果

实验结果如图1~4所示。在以上左右边、上边以及支撑环检测算法的思想和方法的基础上,具体设计并实现了该算法,并针对各种情况的瓶盖图像进行了实验和系统检测。

实验中,采用基于瓶盖轮廓线的瓶盖检测算法,检测出瓶盖所在位置的直线方程,该方法误差较大,误差率较高。利用瓶盖轮廓线检测算法对瓶盖进行在线测试,测试结果的准确性如表1所示。

对基于像素点测量的瓶盖检测算法进行在线实验,得到表2的检测结果,可知检测算法的准确率可以达到99.40%。

基于像素点测量的瓶盖检测算法与基于瓶盖轮廓线的瓶盖检测算法相比,在检测准确率方面有了明显提高,达到了99.00%以上的水平。

3 结语

提出一种瓶盖检测算法,主要通过对瓶盖支撑环直线和顶直线的检测,鉴别哪些是异常盖,克服了实际检测过程中因振动的影响而产生的偏差。在实际应用中,还可以根据具体的检测环境和条件调整检测参数,改变检测算法,并与生产线上的硬件系统共同进行系统的调试和优化。

猜你喜欢 瓶盖检测 二年级下册期末质量检测(一)作文周刊·小学二年级版(2021年20期)2021-08-10巧开瓶盖动漫界·幼教365(中班)(2021年2期)2021-04-06巧开瓶盖阅读(科学探秘)(2019年10期)2019-12-09必修二 Modules 1—6综合检测题时代英语·高一(2016年6期)2017-02-27“整式的加减”检测题中学生数理化·七年级数学人教版(2016年10期)2016-12-22“整式”检测题中学生数理化·七年级数学人教版(2016年10期)2016-12-22水瓶盖药丸小盒发明与创新·大科技(2016年11期)2016-11-19物理必修1、必修2第一轮复习检测题中学生数理化·高三版(2016年9期)2016-05-14多功能四合一开罐器现代营销·经营版(2016年9期)2016-05-14省力阀门瓶盖中学科技(2014年11期)2014-12-25

推荐访问:瓶盖 算法 像素