基于角点及局部特征的饮料瓶识别方法

2011-01-31 06:09黄东晋丁友东
关键词:子块瓶身饮料瓶

黄东晋, 张 倩, 吴 冏, 丁友东

(上海大学计算机工程与科学学院,上海200072)

由于废弃的饮料瓶不能随时随地分类回收,大多数饮料瓶处于用后即弃的状态.在铁路沿线、江河航线、旅游景点等地方大量的废弃饮料瓶让人触目惊心,并且对环境造成的污染和对能源造成的浪费日趋严重.因此,积极研究饮料瓶自动回收系统不仅是探索一种更加文明、规范的管理模式,而且对保护环境、资源再生具有重要意义.

目前,已出现的饮料瓶回收机大多是基于红外线扫描条形码来识别的,其严格要求瓶罐的条形码保持完整,且瓶身上端必须先投入机器回收口内.如果投入瓶罐上的条形码破损,或者瓶子里面有残液,机器将拒绝回收.这些问题限制了对饮料瓶的回收效率,降低了人们对饮料瓶回收机器的使用意愿.再者,条形码容易被仿造,基于条形码的识别方式会给一些居心不良的人带来可趁之机,这也是基于条形码的饮料瓶回收机不能广泛推广的潜在原因之一.

如果能够通过识别饮料瓶的几何外形来实现对饮料瓶的分类回收,就可以实现饮料瓶的精确识别,而且还可以避免一些恶意行为,从而有利于大力推广.基于此,本研究提出了一个基于机器视觉的饮料瓶自动回收系统.该系统通过对瓶子几何外形的检测、识别,实现对塑料瓶的分类回收.同时,该系统具有自我学习功能,可以根据市场动态,及时学习、调整自身模板库,提高匹配准确度.该系统的推出将对饮料瓶回收行业以及环保业的发展起到一定的促进作用.

物体几何外形的识别是计算机视觉和模式识别领域中的一个研究热点.目标物的几何形状信息表现为边界轮廓,而图像的边界轮廓一般表现为二维曲线.如何快速确定曲线特征以及有效匹配是识别算法研究的焦点.目前,国内外学者提出了许多算法.Freeman[1]利用位置坐标和链码方法来描述物体的边界,王涛等[2]提出了基于傅里叶描述子来识别物体的形状,郭克华等[3]提出利用微分几何的思想描述目标边界.除此之外,还有学者将几何相关函数方法[4-5]、自回归模型方法[6]、神经网络方法[7]等应用到物体形状的识别中.

饮料瓶具有对称性、半透明性(PET材质)、特征集中在瓶身等特点,因此,针对饮料瓶的特性,本研究基于局部特征以及几何不变性,定义了以角点为中心的左右曲线夹角及其符号作为瓶子的特征值,并提出了块匹配的快速识别算法,很好地实现了基于几何外形的饮料瓶识别.

1 求以角点为中心左右曲线夹角

1.1 相关定义

由于饮料瓶都是对称的,且关键特征都集中在瓶身,因此,只要关注瓶身一侧的曲线特征即可进行识别,这在很大程度上提高了识别速度.首先,定义瓶身曲线的起始点和结束点.

定义1 如图1所示,给定平面闭合曲线C:r=r(s)={x(s),y(s)},其中 s为弧长参数.令x0=min{x|(x,y)∈C},y0=min{y|x=x0,(x,y)∈C},则定义P0(x0,y0)为该瓶身曲线的起始点.起始点也是基准点,是特征点平移匹配的参照.?

图1 饮料瓶的边缘检测结果Fig.1 Edge detection result of bottle

定义2 如图1所示,给定平面闭合曲线C:r= r(s)={x(s),y(s)},其中s为弧长参数.令x1= max{x|(x,y)∈C},y1=min{y|x=x1,(x,y)∈C},则定义P1(x1,y1)为该瓶身曲线的结束点.

从起始点开始,沿着曲线顺时针运动到结束点为止,即为瓶身局部特征曲线链,如图2所示.

图2 瓶身局部特征曲线链Fig.2 Curve chain of bottle body

角点具有几何不变性,本研究定义以角点为中心的左右曲线夹角及其符号作为瓶子的特征值.该夹角表明角点左右两端附近的曲线变化趋势.夹角越大,说明曲线变化越缓和;夹角越小,说明曲线变化越剧烈.

定义3 如图3(a)所示,给定平面闭合曲线C:r=r(s)={x(s),y(s)}.令Pi(xi,yi)为曲线上的一个角点,与该点左右各相差u个曲线点的点,分别为Pi-u(xi-u,yi-u)和Pi+u(xi+u,yi+u).当 u较小时,曲线可以看作直线,则线段Pi-uPi与PiPi+u之间的夹角θ定义为“以Pi为中心的左右曲线夹角”.

当采用高精确对曲线C提取角点时,角点Pi可能不在曲线C上,如图3(b)所示.令曲线C上的Pj为距离Pi最近的点,与Pj左右各相差u个曲线点的点,分别为Pj-u(xj-u,yj-u)和 Pj+u(xj+u,yj+u),则线段Pj-uPi与PiPj+u之间的夹角θ定义为“以Pi为中心的左右曲线夹角”.

定义4 如图4所示,给定平面闭合曲线C:r= r(s)={x(s),y(s)}.令Pi(xi,yi)为曲线上的一个角点,与该点左右各相差u个曲线点的点,分别为Pi-u(xi-u,yi-u)和 Pi+u(xi+u,yi+u),则角点 Pi两侧弯曲变化方向由以下准则确定:

图3 以角点为中心的左右曲线夹角Fig.3 Curve angle around the central corner

图4 左右曲线夹角符号的确定Fig.4 Define the sign of the curve angle around the central corner

1.2 亚像素级精度提取角点

已有的角点检测算法很多,其中常见的有Harris角点检测算法[8]、KLT角点检测算法[9]及SUSAN角点检测算法[10]等.这些算法只能检测到像素级精度的角点特征.为了提高提取精度,本研究采用了一种亚像素级精度的角点提取方法.

首先,利用Harris算子提取角点.Harris算子定义为

利用式(1)提取角点时,若像素点的R值大于某阈值,则判定该点为角点;否则,该点为普通点.然后,对以角点为中心的一个小的领域进行插值,将精度提高到亚像素级.

如图5所示,在角点O附近点的灰度梯度均垂直于该点与角点的连线,即

图5 亚像素级精度的角点检测Fig.5 Corner detection in sub-pixel accuracy

对以角点为中心的某一领域内的所有点按式(4)进行计算,误差和

这样,求角点准确位置的问题转化为求误差和S最小点的问题,可以通过迭代的方法来求取更精确的坐标.

1.3 求以角点为中心左右曲线夹角

根据定义3,当得到角点Pi(xi,yi),以及与该点左右各相差 u个曲线点的点 Pi-u(xi-u,yi-u)和Pi+u(xi+u,yi+u)(u=5)时,求“以角点为中心的左右曲线夹角”就转换为“已知三角形三点坐标,求某一夹角”的问题.

令A=Pi-u,B=Pi,C=Pi+u,AB为线段Pi-uPi的长度,BC为线段 PiPi+u的长度,AC为线段Pi-uPi+u的长度,根据余弦定理

式中,∠B就是以角点Pi为中心的左右曲线夹角值.然后,根据定义4,确定该夹角的符号“±∠B”,即为该瓶子的特征值.

2 基于“块”的快速匹配

为了进行快速匹配识别,本研究提出基于“块”的匹配方法来求取目标饮料瓶与模板饮料瓶对应特征点的相似度.首先定义子块号.

定义5 如图1所示,给定平面闭合曲线C:r= r(s)={x(s),y(s)},其中s为弧长参数.令xi={x| x0≤xi≤x1,(x,y)∈C},yi={y|x=xi,(x,y)∈C},则S=(yi/n×m+xi%n)定义为Pi(xi,yi)所在的子块号,其中把整幅图像(640×480)划分为n×n子块,m=640/n.n的取值不能过大,也不能过小.n值过大,子块中包含多个角点,不易进行块匹配;n值过小,计算量大,不能体现子块作用.此处,n取值为5.

基于“块”的匹配算法就是以特征模板为匹配对象,统计相同子块号内特征值相似的个数.具体的流程如下:

(1)计算目标瓶身曲线的起始点和结束点,判断其归属组别(分为大瓶、中瓶和小瓶).

(2)按照特征提取算法提取该曲线的角点,并确定其符号.

(3)依次对比目标饮料瓶的起始点与该组特征模版的标准点坐标位置,对该目标瓶子的所有特征点坐标进行平移变换,并计算其对应的子块号;然后与特征模板中相同子块号内的特征值进行匹配,求出对应的相似度.

(4)目标饮料瓶与该组所有模板进行匹配,并求出最大相似度Max.

(5)设置阈值lim.若Max≥lim,则判断目标饮料瓶与最大相似度的模板饮料瓶相似;否则,不相似.

3 实验结果

饮料瓶自动回收系统通过自我学习功能模块,提取样本瓶子的特征并保存到数据库中;然后,通过与模板库的匹配,求取最大相似度,并确定是否回收.模板饮料瓶角点位置如图6所示.

图6 模板饮料瓶特征点示意图Fig.6 Feature points of template bottle

目标饮料瓶投进投瓶口,从拍照到特征提取的整个过程如图7所示.

图7 目标饮料瓶特征点示意图Fig.7 Feature points of target bottle

目标饮料瓶特征值与模板的实验比较结果如表1所示.

本研究共建立了30个饮料瓶的正反例样本数据库.通过100次的实验验证,结果表明,基于角点及局部特征的饮料瓶识别算法的识别率高达92%,而且计算速度快,具有较好的稳定性.

表1 目标饮料瓶特征值与模板的比较结果Table 1 Comparing result on eigenvalues between target and template bottle

4 结束语

将基于角点及局部特征的饮料瓶识别方法应用于饮料瓶自动回收系统具有广阔的实用前景.采用一种亚像素级精度的角点提取方法,可提高计算精度;以角点为中心的左右曲线夹角及左右变化趋势作为特征值来描述瓶子,可区分性好;基于“块”匹配的识别算法简单且识别速度快.实验证明,该方法能很好地满足饮料瓶自动识别回收的准确性和实时性要求.

[1] FREEMAN H.Computerprocessingofline-drawing images[J].Computing Surveys,1974,6(1):57-97.

[2] 王涛,刘文印,孙家广,等.傅立叶描述子识别物体的形状[J].计算机研究与发展,2002,39(12):1714-1719.

[3] 郭克华,刘广海,刘传才,等.微分几何编码识别物体的形状[J].计算机科学,2007,34(7):219-221.

[4] 王波涛,孙景鳌,蔡安妮.相对矩及在几何形状识别中的应用[J].中国图象图形学报,2001,6(3):296-300.

[5] 吕玉增,彭启民,黎湘.基于极值特征的不变性形状识[J].电子学报,2008,36(4):679-684.

[6] DUBOISS R,GLANZF H.An autoregressive model approach to two-dimensional shape classification[J].IEEE Transactions on Pattern Analysis and Machine Intelligence,1986,8(1):55-56.

[7] GUPTAL,SAYEHM R,TAMMANAR.A neural network approach to robust shape classification[J].Pattern Recognition,1990,23(6):563-568.

[8] HARRISC,SATEPHENSM J.A combined corner and edge detector[C]∥Proceedings of the 4th Alvey Vision Conference.1988:147-152.

[9] SHIJ,TOMASIC.Good feature to track[C]∥Proceedings of IEEE Conference on Computer Vision and Pattern Recognition.1994:593-600.

[10] SMITHS M,BRADYJ M.SUSAN:a new approach to low level image processing[J].International Journal of Computer Vision,1997,23(1):45-48.

猜你喜欢
子块瓶身饮料瓶
基于八叉树的地震数据分布式存储与计算
春日粉妆
基于特征值算法的图像Copy-Move篡改的被动取证方案
为什么饮料瓶一般都装不满?
百变瓶子
饮料瓶与变形金刚
基于波浪式矩阵置换的稀疏度均衡分块压缩感知算法
能干的饮料瓶
Alexander Wang操刀为Evian设计瓶身