APP下载

基于机器视觉的口杯酒瓶盖旋转角度测量方法

2019-10-25刘浩南1辉1吴成中王耀南

测控技术 2019年10期
关键词:水平线拉环杯酒

刘浩南1, 张 辉1,, 吴成中, 王耀南

(1.长沙理工大学 电气与信息工程学院,湖南 长沙 410114; 2.湖南大学 机器人视觉感知与控制国家工程实验室,湖南 长沙 410004)

激光打码是口杯酒生产线上非常重要的工序,用于打印位于口杯酒顶端的生产日期和销售地址。然而,实际生产中,口杯酒在压盖环节极易发生自旋,如图1(a)所示,从而导致打码字样与酒盖商标的角度不一致,无法满足激光打码的“口杯酒的旋转角度一致”要求。现阶段,为解决该问题主要采用人工手动调节瓶盖方向的方式,但这种人工旋瓶修正存在效率低下、可靠性差、劳动密集的缺陷,长时间执行单调乏味的工作造成操作人员心理和生理的高度疲劳,导致旋转角度无法达到精确一致。目前虽然出现了少数半自动旋盖器,但其旋盖效果不佳,在打码过程中容易出现打歪或者漏打。因此,现阶段迫切需要一种有效的自动化瓶盖角度旋转检测方法。

图1 口杯酒瓶盖旋转后与未旋转的对比图

目前,很多行业存在角度测量的问题,大量学者针对该问题提出了很多方法。生物医学方面,Cao Y等人[1]提出利用投影图像计算基于主血管和侧支中心检测的分叉角;社会运用方面,Roy N D等人[2]提出利用视网膜图像计算分叉角来保障电子护照安全;工程运用方面,Saxe C D等人[3]提出一种可行的利用视觉和模板匹配计算重型货车铰接角度的方法;图像恢复和测量方面, Chen C等人[4]提出利用二维频谱旋转图像的隐藏周期性进行操作来估计旋转角度。

本文的主要思想是基于机器视觉的旋转角度测量,寻找感兴趣区域对得到的区域进行二值化分析的方法,能够有效计算出口杯酒的旋转角度,并将角度发送给旋瓶机构,当瓶体到达旋瓶机构位置时,瓶体被精确旋转,保证激光打印时瓶体旋转角的一致性要求。在口杯酒高速生产线上达到实时视觉精确定位与位姿修正,该检测方法高速、准确、稳定,满足高速生产线的实时在线检测需求。口杯酒旋转角度测量算法流程如图2所示。

1 口杯酒瓶盖旋转角度测量与修正法

1.1 几何法测量口杯酒拉环与水平线的角度

几何法测量口杯酒拉环与水平线的角度的过程如图3所示。

图2 口杯酒旋转角度测量算法流程图

图3 几何法测量口杯酒拉环与水平线的角度

1.1.1 图像预处理与检测区域粗定位

高速生产线上的口杯酒高速移动,当口杯酒接近光电开关时,光电开关即刻触发工业CCD相机采集一帧图片,记作Image0,如图3(a)所示。

计算机对采集到的图像进行二值化操作,将口杯酒从背景图像中分割出来,T1为设定二值化分割阈值,Image0(x,y)为图像中(x,y)位置像素的灰度值,得到分割后的二值图像Image1,示意图如图3(b)所示。二值化操作公式为

(1)

搜寻Image1面积最大的连通域Blob,需提取的部位如图4(b)所示。由于口杯酒的瓶盖含有拉环、印字,且瓶盖因有字体而外形复杂,为保证瓶盖定位中心的准确性,采取孔洞填充,并用重心法对瓶盖位置进行粗定位。重心法计算过程如下:

(2)

(3)

式中,O(x0,y0)为圆形盖子的圆心;M为Blob像素点总数;RBlob为最大连通域Blob的半径。由此,得到了最大连通域的圆心和半径,接着粗定位口杯酒瓶盖的圆环感兴趣区域RegionDiff,如图3(e)所示。以O(x0,y0)为圆心,分别以R1、R2为半径绘制圆形区域C1、C2,其中R1>R2。将两圆形区域作差,获得圆环区域RegionDiff=C1-C2,其中R1∈(0.5RBlob,0.6RBlob),R2∈(0.35RBlob,0.45RBlob),取R1=0.56RBlob,R2=0.39RBlob,RegionDiff中包含了图4(a)所示的白色圆环。

图4 口杯酒瓶盖组成及检测区域粗定位示意图

1.1.2 高精度感兴趣区域定位

分析RegionDiff的特性,发现圆环被拉环截断,如图4(c)所示,根据拉环的弯曲方向,选出未覆盖的圆形区域,计算出瓶盖的竖直方向,即+90°或-90°方向。对RegionDiff进行二值化操作,得到白色圆环二值图像RegionDiff_Bin,如图3(g)所示。图像二值化过程如下。

(4)

式中,G(x,y)为RegionDiff中的(x,y)位置处像素点灰度值;T2为能够将白色圆环与背景分开的固定阈值。RegionDiff周边存在复杂外形的干扰,为消除这种干扰,搜寻白色圆环二值图像的连通域,得到连通域集合Blobs2,计算出每个连通域的面积大小,从Blobs2中将面积小于Sr的连通域移除,得到剩余连通域Blob2_ring,如图3(i)所示。其中,Sr为设定的连通域面积阈值。消除干扰后的Blobs2中剩余的连通域Blob2_ring均来自图形中的白色圆环Ring();对Blob2_ring进行空洞填充,得到非空洞连通域集合Blob2_fillup

(5)

对Blob2_fillup中所有连通域求或,得到高精度感兴趣连通域Blobs3。然后,通过最小二乘法计算Blob3的最小外接圆Circle_out,获得圆心Oc(x0,y0),半径为Rout。

1.1.3 基于特征的角度计算

以Oc(x0,y0)为圆心,0.85Rout为半径,绘制圆形连通域Circle_fit,并将Blob3与Circle_fit作差,得到新阈值Segment=Blob3-Circle_fit。其中,0.85Rout为根据具体分割要求获得的固定参数。至此,得到了特征增强后的连通区域。为计算出旋转角度,根据面积法,分析被分割圆环的特征,从特征增强感兴趣区域中找到面积最大的前两个区域Rout1′、Rout2′。区域Rout1′、Rout2′按照以下步骤获得。

① 从特征增强感兴趣区域中提取连通域。其中,连通域外弧角为钝角的区域作为拉环覆盖区域,连通域外弧角为锐角的区域作为未被拉环覆盖区域。

② 利用特征增强感兴趣区域中的圆环的内部圆依次与拉环覆盖区域和未被拉环覆盖区域作差,通过面积排序方法筛选出面积最大的两个连通域Rout1′、Rout2′。

主要特征提取原理如下。

① 白色Ring()被双侧拉盖覆盖,成像区域被分割成4个部分,如图5(a)所示,被覆盖区域命名为Rin,未被覆盖区域命名为Rout,而口杯酒的旋转角度与经过Rout1与Rout2中心的直线一致,因此,只要寻找出Rout1与Rout2区域即可。

②Rout1、Rout2、Rin1、Rin2这4个连通区域的面积大小、拟合圆心等相差不大,无法直接分辨出Rout1、Rout2,为此,利用分割区域的外弧角度不变这一特性来进行区分。具体为:拉环为椭圆形,故Rin1、Rin2被拉环覆盖,区域外弧角为钝角,而Rout1、Rout2未被拉环覆盖,外弧角为锐角。

③ 为进一步增强Rin1、Rin2与Rout1、Rout2之间的区分尺度,将Rin1、Rin2、Rout1、Rout2分别与图5(b)所示的拟合圆作差,得到图5(c)所示的Rin1′、Rin2′、Rout1′、Rout2′,其中,Rin1、Rin2外弧角为钝角,故区域差分以后,较大区域被消除,保留较小区域;反之,Rout1、Rout2较小部分被消除,保留较大区域。因此,仅需要根据连通域的面积大小,便可以判断出Rout1′、Rout2′。

图5 几何法测量口杯酒拉环与水平线的角度

得到Rout1′、Rout2′后,根据重心法寻找两者的重心分别为O1(x0,y0)′、O2(x0,y0)′,即

(6)

(7)

根据两重心坐标,计算出经过两点直线的倾斜角α为

(8)

至此,口杯酒旋转拉环与水平线之前的角度计算完毕。

1.2 模板匹配方法测量口杯酒文字与理想情况文字的角度

模板匹配方法测量口杯酒文字与理想情况文字的角度的过程如图6所示。

图6 模板匹配测量口杯酒文字与理想情况文字角度

1.2.1 文字轮廓模板

形状匹配[6-12]和检索是图像处理领域的基础课题。创建一个可供匹配的模板是匹配的前提,需要从参考图像中选取ROI,并定义选取的ROI,作为后续匹配的输入。

首先,采集一帧理想图像,如图6(a)所示。之后,观察口杯酒结构组成,如图7(a)所示。对图像进行二值化操作,其中,T2为设定二值化分割阈值,Image0(x,y)为图像中(x,y)位置像素的灰度值,得到二值图像Image1,如图6(b)所示。二值化操作公式为

(9)

对所得连通域组求或,得到一个新的连通域RegionUnion。之后,进行基于亚像素扩展线性描述操作,通过亚像素边缘提取,得到RegionUnion的亚像素轮廓Contours。对亚像素轮廓Contours采取椭圆或者圆形拟合,最小化轮廓点(xi,yi)和所得到的椭圆之间的代数距离:

(10)

式中,约束4ac-b2=1确保了所得到的多项式表征一个椭圆(而不是双曲线或抛物线)。

拟合之后,得到高精度亚像素轮廓Contours1。依据Contours1,创建适合匹配的形状模型——文字轮廓模板,生成形状模型ModelID。

图7 口杯酒文字匹配示意图

1.2.2 模板匹配

采集一帧与模板拍摄环境相同的图像,对新得到图像中查找形状模型ModelID的最佳数字匹配实例,将实例的位置和旋转以行、列和角度返回。每一个找到的实例的相似程度、得分会返回到Score中。将Score采用式(11)进行判断,最终得到图像与模板之间的角度,角度范围为0°~360°。

(11)

2 实验

本实验运用几何法测量口杯酒拉环与水平线的角度、基于模板匹配测量口杯酒文字与理想情况文字角度。其中,手动测量为打印图片之后手动测量出来的角度。

实验1:几何法测量口杯酒拉环与水平线的角度,实验中的具体结果如图3所示。实际角度是根据实际口杯酒人工手动测量得到。对45组样本图像测试口杯酒拉环与水平线的角度,得到的部分实验数据见表1。

表1 几何法测量口杯酒拉环与水平线的角度 单位:(°)

由表1中测量得到的数据与手动测量得到的数据可知,此测量方法的准确度达99%,满足高速流水线上实时测量角度的需求。

实验2:运用模板匹配测量口杯酒文字与理想情况文字的角度,实验操作具体如图6所示。实际角度根据实际口杯酒人工手动测量得到。对45组样本图像测试口杯酒文字与理想情况文字角度,由实验2得到的部分实验数据见表2。

表2 模板匹配测量口杯酒文字与理想情况文字角度 单位:(°)

由表2中测量得到的数据与手动测量得到的数据可知,此测量方法的准确度达99%,满足高速流水线上实时测量角度的需求。

将实验1测量出的口杯酒拉环与水平线的角度与2014年提出来的利用二维光谱对图像旋转中的隐藏周期进行操作得到旋转角度的方法[5]进行比较。

通过在不同的θ范围内对这种方法所得到的角度误差进行分析。在图片处理中,使用(f1,f2)来确定图像的最高峰的位置。利用函数θ=ψ(f1,f2)与文献[5]中所给出的误差分析的一系列公式可知,用这种方法所得到的角度在不同的θ范围,误差不同。综合所有角度误差分析和文献[5]的结论可知,文献[5]中所给的方法得到的角度的精度在73%~79%。

然而,所提出的方法是通过对单一特性图像的多次二值化操作得到最简图像,通过计算机测量并运用多次重心法得到重心坐标,从而计算得到两点直线的倾斜夹角。这种方法得到的误差控制在1%以内,远远小于文献[5]中所给方法,极大地提高了准确度,适合用于工业检测与生产。

实验2测量出的口杯酒文字与理想情况文字角度采用传统归一化互相关匹配(NCC)算法作为检测系统的图像匹配算法,利用积分图像思想优化算法结构并基于高斯核的金字塔分层匹配,提高了匹配准确度,有利于该方法在工业上的运用。

在实验中的口杯酒图片处理,若参照几何法测量文字旋转的角度,对重心的确立以及阈值分割时的要求很高,得到的角度相对不准确。但模板匹配测量口杯酒文字与理想情况文字角度法充分分析了理想情况下口杯酒的文字字样,得到口杯酒的文字轮廓,巧妙使用亚像素轮廓得到精确平滑的形状模型,作为图像处理中的形状模型。对相同拍摄环境下的多个不同的酒杯进行处理,精确度比几何法测量更高。

3 结束语

针对生产实际中口杯酒瓶盖激光打印不便的问题,提出了一种简单、快速、稳定性好的旋盖角度测量方法。该方法的关键在于对高速生产线上的口杯酒的图像采集和二值化瓶盖以及创建和寻找形状模型进行匹配。利用几何测量法对口杯酒拉环与水平线的角度进行测量,并且与以往的角度测量方法进行了比较,发现几何测量法精确有效。利用模板匹配法测量口杯酒文字与理想情况文字的角度,运用传统归一化互相关匹配(NCC)算法作为匹配算法,结合积分图像思想优化算法结构和基于高斯核的金字塔分层匹配,快速准确地得到角度。通过对实验结果的分析可知,模板匹配法更简便,计算出的角度准确率高。从工程应用的角度来看,所提出的模板匹配法能够有效应用于各种瓶盖激光打码生产线和生产生活中。

猜你喜欢

水平线拉环杯酒
黄袍与杯酒
五杯酒
五杯酒
杯酒见证开放
摄影小技巧,教你拍出不一样的大片
U盘报警器
拉环画
基于优先度的改进最低水平线排样算法
锁一夜光影