本发明属于图像处理技术领域,特别涉及一种基于机器视觉的pe瓶充装率的检测方法。
背景技术:
传统的灌装瓶质量检测是通过人工灯光检验,员工在流水线上利用肉眼查看。但是这种方式从效率到精度以及人工视觉疲劳各方面都达不到检测标准,尤其在大批量生产检测的情况下,往往导致遗漏和误判的情况,导致部分不合格的瓶装饮料流入市场,影响企业形象。
随着计算机领域的水平提高,图像处理技术的不断成熟,机器视觉技术已经被广泛应用到流水线上的产品质量检测与分拣中。机器人搭配视觉系统使得系统柔性化程度更高,机器人代替传动的分拣机构,减少了机械设计的难度,便于维修,可以作为独立单元,移植到任意的流水线或者其他工位。而视觉系统具有图像处理功能,可以针对不同规格和不同要求的产品检测和识别。但由于国内机器视觉检测设备研发较晚,主要依赖进口,而进口设备价格昂贵,后期维护费用高,且大多数设备不具有在线检测并完成分拣的工艺要求。
技术实现要素:
为了克服已有pe瓶充装率检测采用人工方式的精度较低、工作效率较低的不足,本发明提供一种精度较高、工作效率较高的基于机器视觉的pe瓶充装率检测方法。
本发明解决其技术问题所采用的技术方案是:
一种基于机器视觉的pe瓶充装率的检测方法,所述检测方法包括如下步骤:
步骤1、采集pe瓶图像,完成pe瓶图像预处理;
步骤2、对预处理后的图像进行阈值分割,提取液面轮廓特征;
步骤3、计算pe瓶二值图的竖直积分投影图;
步骤4、寻找pe瓶二值图的液面最低点及其纵坐标;
步骤5、根据瓶口到该点的距离与瓶身高度的比值,计算pe瓶充装率。
进一步,所述的步骤1中,采用中值滤波和拉普拉斯锐化对采集到的pe瓶图像预处理。
再进一步,所述的步骤2中,选择迭代最佳阈值法对预处理后的pe瓶图像进行阈值分割,得到pe瓶的液面轮廓特征。
更进一步,所述的步骤3中,提取图像的每个像素f(x,y)点的值,然后对y求得图像的水平投影,得到pe瓶的竖直积分投影图。竖直投影是将原图像二值图投影到水平xoy,x轴与图像像素坐标系的横坐标u一致,纵坐标y为任意一个u所在竖直直线上图像的像素值之和。
所述的步骤4中,任意取n条y方向的水平线,该直线与竖直投影图上的两个交点的横坐标可以定义为xfi,xdi,以得到原二值图像在竖直投影图上的中心横坐标xm为:
在得到瓶身中心线横坐标xm.的位置后,需要寻找液面最低点,在二值图上以横坐标为xm,遍历该坐标所在竖直直线,当像素值第一次由0变为1,时即可判断该点为xm所在竖直方向的液面最低点,当像素值第二次由0变为1时,该点为瓶口的中心点。
所述的步骤5中,通过两点分别作水平方向的直线,根据两条直线的间距即可确定液面在像素坐标系下的距离,通过像素坐标系下的两点坐标差可得到的两直线在像素坐标系下的间距d1,瓶身在像素坐标系下的高度定为d2,瓶身的实际高度为d3,合格液面高度为dh,b%为测量液面高度与合格液面高度比;
b%=[d3-(d1/d2)×d3-dn/dn]
设定液面高度检测可允许的波动范围为a%,通过判断下式是否成立,如果成立则判断pe瓶内液面高度达标:
b%≤a%。
本发明的有益效果主要表现在:(1)可检测非直线液面线状态下的pe瓶充装率。(2)检测准确率高,算法鲁棒性强。
附图说明
图1是pe瓶充装情况的局部图像。
图2是本发明基于机器视觉的pe瓶充装率的检测方法的流程图。
图3是pe瓶预处理图像。
图4是pe瓶二值化图像。
图5是pe瓶竖直积分投影图。
图6是pe瓶充装率检测效果图。
具体实施方式
下面结合附图对本发明作进一步描述。
参照图1~图6,一种基于机器视觉的pe瓶充装率的检测方法,用于准确检测出如图1所示的pe瓶内灌装液体的充装率。
步骤1、采集pe瓶瓶身图像,并对采集到的pe瓶图像进行中值滤波处理,然后进行拉普拉斯锐化,完成pe瓶图像的预处理,具体方法如下:
采用外部触发相机拍照,由相机从侧面采集pe瓶图像,将图像传输给处理器进行中值滤波和拉普拉斯锐化,完成pe瓶图像的预处理如图3(a)和3(b)所示。
步骤2、选择迭代最佳阈值法对预处理后的pe瓶图像进行阈值分割,得到pe瓶的二值图,如图4所示。
步骤3、提取图像的每个像素f(x,y)点的值,然后对y求得图像的水平投影,得到pe瓶的竖直积分投影图。竖直投影图可以清楚的表示出二值图像在竖直方向的像素之和,由于瓶身为圆柱体,所以可以任取n条y方向的水平直线,该直线与竖直投影图上的两个交点的横坐标可以定义为xfi,xdi,如图5所示,因此根据以下公式可以得到原二值图像在竖直投影图上的中心横坐标xm为:
步骤4、在得到瓶身中心线横坐标xm.的位置后,需要寻找液面最低点,在二值图上以横坐标为xm,遍历该坐标所在竖直直线,当像素值第一次由0变为1,时即可判断该点为xm所在竖直方向的液面最低点,当像素值第二次由0变为1时,该点为瓶口的中心点。
步骤5、如图6所示,通过两点分别作水平方向的直线,根据两条直线的间距即可确定液面在像素坐标系下的距离。
步骤6、通过像素坐标系下的两点坐标差可得到的两直线在像素坐标系下的间距d1,瓶身在像素坐标系下的高度定为d2,瓶身的实际高度为d3,合格液面高度为dh,b%为测量液面高度与合格液面高度比;
b%=[d3-(d1/d2)×d3-dn/dn]
设定液面高度检测可允许的波动范围为a%,波动范围a%可根据生产要求适当取值;通过判断下式是否成立,如果成立则判断pe瓶内液面高度达标:
b%≤a%。
按上述方法建立实验平台,取5个合格的pe灌装瓶和20个液面各不同的不合格pe灌装瓶进行测试,瓶身实际高度为170mm,合格液面高度为150mm。波动范围定为2%,部分检测结果如表1所示。
表1
通过上表数据可知,对瓶身整体高度检测的像素基本保持在一个定值,对液面高度的检测误差精度小于1%,因此基于竖直投影的液面高度检测适用于本系统对pe瓶奶灌装牛奶的充装率检测。
综上所述,本发明针对pe瓶液面特征,分析出基于机器视觉检测的pe瓶充装率检测方法,检测准确性高,算法鲁棒性强。