刘 洋,王耀南,周雨蓉
湖南大学 电气与信息工程学院,长沙 410082
基于简化SIFT的口服液杂质检测防抖方法
刘 洋,王耀南,周雨蓉
湖南大学 电气与信息工程学院,长沙 410082
近年来,为了提高口服液杂质检测效率,并进一步用机械自动化代替传统意义上的灯检女工操作,灯检机[1-3]应运而生。灯检机主要采用工业高速照相机对高速旋转后急停的口服液瓶体进行多帧图像跟拍,获得图像后经千兆网网线传入PC机,使用差分能量累积算法得出结果,口服液灯检机如图1。本文主要研究的是差分能量累积之前的图像预处理,预处理的目的主要是消除由于旋转后急停带来的机械抖动,机械抖动带来的是前后两幅图像口服液瓶体的位置不一致。对于精度要求不高的灯检机系统,可以采取经验值进行补偿,然而,对高精度的口服液灯检机系统,尤其是口服液这样的药用液体,更要注重其品质,此法不可行。因此,本文采取了位置配准的方式对瓶体位置进行校正。配准的应用场合[4]很多,粗略的可以分成四种类型,分别是:不同观测点采集图像进行配准;不同时间或不同条件下采集图像进行配准,又称作时间序列配准;不同传感器采集图像进行配准;场景到模型的配准。口服液杂质检测中高速拍摄的图像符合第二种配准类型,配准过程需要容忍图像中部分内容的差异。图像配准的方式分为两大类,有基于灰度的,有基于特征的,由于灯检机系统要求实时性和鲁棒性比较高,基于灰度的配准鲁棒性较低并且会带来大量的计算时间,不能满足灯检机实时性要求,所以使用基于特征配对的方式。基于特征的特征点配对的方式很多,如Harris[5]角点提取方式,PCNN重心点提取的方式[6-7],SURF[8]提取方式,本文对SIFT[9]算法作一些简化改进,作为特征提取和配对的方式。在特征配对后,采用最小二乘法拟合出最后的配准参数。系统的抖动主要是小参数仿射变换,在特征提取过程中这一因素可以剔除很多假配对点。
图1 口服液灯检机外观
2.1 灯检机图像时间序列
在口服液灯检机系统中,口服液瓶体随着旋转履带绕中心轴公转,并且随着搓瓶履带自转,当口服液瓶体到达摄像机的一个工位,搓瓶履带迅速停止,这时摄像机与旋转履带同步运行,拍摄瓶体。搓瓶会使瓶体轻微摇晃,带来小参数旋转仿射变换,肉眼无法分辨;而旋转履带同步运行带来的是小参数平移仿射变换。瓶体序列图片如图2所示,在这组图片中,为了实验效果,加入了较大的玻璃屑杂质,在实际中,杂质的颗粒都在微米级别[10-12]。
图2 序列瓶体图片
2.2 仿射变换模型参数
3.1 尺度空间最值检测
图像的尺度空间是通过输入图像I(x,y)与一个多尺度高斯函数G(x,y,σ)的卷积获得的,公式如下:
其中高斯函数G(x,y,σ)的表达式是:
为了更稳定地确定最值点,SIFT采用了差分高斯函数(Difference of Guassian,DOG)与输入图像卷积的方式,也就是用尺度接近的两个高斯函数分别与输入图像进行卷积后再做差分,公式如下:
通过不断的卷积差分,最后生成DOG金字塔。对于金字塔的每一层,输入图像不断地与不同尺度的高斯函数进行卷积得出尺度空间组图。相邻高斯卷积尺度空间图做差分得出DOG组图,当一层DOG完成后,对输入图片模糊化并降采样后重复以上描述,即可产生DOG金字塔图(PYR图)。在这里降采样之后再做卷积可以大大减少计算量,这与口服液杂质检测灯检机系统实时性要求是契合的。工业采集的图片像素数比较大,不做降采样与做降采样相比,时间效率大约差两个数量级,图3是图2的序列瓶体图片中第一个瓶体(参考图片)的PYR图。
在产生PYR图之后,为了确定该像素是否为最值点,将该像素的PYR值与其周围8个像素的PYR值以及前后相邻尺度DOG图中的各9个像素的PYR值相比较,一共需与26个像素的PYR值相比较,若该像素的PYR值最大或者最小,那么确定其为最值点,也可以称作粗略关键点(Coarse Key Point,CKP),相对于CKP,下面一节介绍精确关键点(Accurate Key Point,AKP)的确定,由于前面做了降采样,因此每一层的比较计算量都会不断减少。
图3 参考图片PYR图
3.2 关键点二次筛选与方向分配
在CKP点选取后,需要确定AKP点,下面介绍精确定位关键的方法。SIFT采用了Brown[13]等人提出的方法,首先计算出DOG(下面用D代替)的泰勒展开式(保留到二次项):
其中x=x(x,y,σ)是相对于CKP点的偏移量。根据Brown的理论,令式(6)等于零得出偏移量ε(x),将此偏移量加上CKP点坐标,就可以得出AKP点的坐标,ε(x)的计算公式如下:
式(8)可以用于去除对比度较小的一些CKP点,其数值如果小于设定的值,这些CKP点将不会进入AKP点中,在SIFT原文中,作者给出的参考值为0.03,这里为了提高运算速度,满足实时性,取出尽量少的特征点,本文采用的值为0.05。在获取AKP点之后,需要使用AKP点的主曲率来排除边缘的不稳定点,边缘的不稳定点的主曲率通常会比较大,而角点的主曲率相对比较小。最后可以得到真正意义上的AKP点,SIFT原文中是使用了4×4×8的特征向量(AKPD)来描述特征点,同样是为了提高效率,本文采用了2×2×8的AKPD,实验证明这样的AKPD完全满足系统的要求,利用AKPD可以确定AKP点的主方向,图4是参考图片与后续一幅图中AKP点与其主方向的标示图。
4.1 特征点配对方法
图4 AKP点与主方向标示图
SIFT进行特征点配对的方式比较简单,灯检机系统需要配准的两幅图前后相邻,以图2中第二个瓶体为参考图,与其配准的就是第三个瓶体。假设参考图中的AKP点集合为A1i(i=1,2,…,m),第三个瓶体的AKP点集合为 A2j(j=1,2,…,n),在 A2j中找出两个与 A1i中待配准的点AKPD最接近的两个点,计算方法是计算两对AKPD之间的欧式距离,分别为D1,D2。由于欧式距离涉及到乘法,计算量较大,本文改用街区距离以满足实时性的要求。实验证明D<D,当<0.45时,配
12对点错误率最低,能达到95%以上的正确率。
4.2 特征点搜索方式
由于一幅图中的特征点比较多,少则上百,多则上千,与每一幅图的复杂程度有关系,SIFT使用了BBF算法查找,实验证明对于AKP点为100 000的图来说,查找效率比单纯的暴力搜索要高两个数量级。但是,口服液瓶体图片结构比较简单,每一幅图的AKP点大约只有几十个,使用暴力搜索的方式计算速度加快,因此本文将采用简单快捷暴力搜索。
4.3 配对区域改进
SIFT中找配对点的方式是全局搜索,全局搜索的方式适合于大的仿射变换参数,相对于微小参数仿射变换就显得很多余了。而且全局搜索有一个很大的缺点,就是在非相似区域找出两个配对点,如图4中用黑色箭头标出的两个点,这两个点AKPD极为相似。本文采取的方式是局部搜索,仅在AKP点一个小的领域内寻找,这样做的依据是,瓶体骤停带来的旋转度数一般在2°以内,瓶体随履带同步运行带来的平移仿射变换一般在20像素以内,所以可以采用20×20的一个掩模做局部搜索。也就是说,假设 A1i待配准点的位置为(x1,y1),那么 A2j中位置坐标(x2,y2)满足下面表达式的点作为候选点。
其他点不予考虑,全部舍去,这同时可以节约大量比较计算时间。
基于上述方法可以进一步减少伪特征配对点的个数,在本系统中,可以找出大约10到20对特征配对点,图5和图6是序列图片中两组瓶体的特征配对图,下面一章将介绍基于这些配对点的坐标,并结合最小二乘法,计算精确的仿射变换位置配准参数。
图5 特征配对图1
图6 特征配对图2
图6中黑色向下箭头所指向的配对连线是一个伪特征配对点,不过这不会对后续最小二乘法贡献太多影响。
5.1 最小二乘法介绍
对于给定数据(Xi,yi)(i=1,2,…,m),Xi为多维向量,在本文提出的问题中为两维,对于给定的函数F(X),使误差ϵi=F(Xi)-yi的平方和最小,即目标函数(TF)最小:
假设F(X)为线性函数(与本文相符),函数参数为P=(p1,p2,…,ps),令TF对P求导并使之分别等于零,求解得到方程组就可以得到给定函数的参数:
5.2 应用最小二乘法计算配准参数
在大部分的论文中都忽略了这个环节,本文简要介绍求解配准参数,参数计算可以归结到求解超定方程组,而求解超定方程组常规的方法就是最小二乘法。
首先以实例介绍最小二乘法求解超定方程组,比如说有一个超定方程组如下:
利用式(12)可以解出下列适定方程组:
求解可得x=2.977 4,y=1.225 9。
图6中的配对坐标点如表1所示,将这些点的坐标带入式(1),即可得到一个15×2个方程组成的方程组,这个方程组参数为6个。由于式(2)的关系存在,实际参数为3个。
表1 配对坐标
本文以口服液杂质检测灯检机系统为背景,利用改进型SIFT的精确稳定定位与快速计算的特性,解决了由于机械抖动带来的序列图像配准问题。实验采用工控机对接千兆网相机采集图像数据,由PLC控制杂质瓶体的剔除信号。软件方面,主要使用了基于OPENCV和MFC的GUI软件架构,经过对接近1 000瓶注入各种杂质的口服液进行杂质检测,由于机械抖动带来的误检率由原来的2%降到了0.5%以下。
[1]葛继,王耀南,张辉,等.基于改进型PCNN的智能灯检机研究[J].仪器仪表学报,2009(9):1866-1873.
[2]Carmona E J,Martinez-Cantos J,Mira J.A new video segmentation method of moving objects based on blob-level knowledge[J].Pattern Recognition Letters,2008,29(3):272-285.
[3]张耀,王耀南,周博文.异型瓶药液中可见异物的智能视觉检测机器人[J].仪器仪表学报,2010(5):1058-1063.
[4]Brown L G.A survey of image registration techniques[J]. ACM Computing Surveys,1992,24(4):325-376.
[5]Harris C G,Stephens M J.A combined corner and edge detector[C]//Proceedings of the 4th Alvey Vision Conference.Manchester,England:IEEE Computer Society,1988:147-151.
[6]Johnson J L.Pulse-coupled neural nets:translation,rotation,scale,distortion,and intensity signal invariance for images[J].Applied Optics,1994,26(23):4972-4978.
[7]Johnson J L,Padgett M L.PCNN models and applications[J].IEEE Transactions on Neural Networks,1999,10(3):480-498.
[8]Bay H,Ess A,Tuytelaars T.Speeded-Up Robust Features(SURF)[J].Computer Vision and Image Understanding,2008,110(3):346-359.
[9]Lowe D.Distinctive image features from scale-invariant key points[J].International Journal of Computer Vision,2004,60(2):91-110.
[10]Lampropoulos G A,Boulter J F.Filtering of moving targets using SBIR sequential frames[J].IEEE Transactions on Aerospace and Electronic Systems,1995,31(4):1255-1267.
[11]Blostein S D,Huang T S.Detecting small moving objects in image sequences using sequential hypothesis testing[J]. IEEE Transactions on Signal Processing,1991,39(7):1611-1629.
[12]Blostein S D,Richardson H S.A sequential detection approach to target tracking[J].IEEE Transactions on Aerospace and Electronic Systems,1994,30(1):197-212.
[13]Brown M,Lowe D G.Invariant features from interest point groups[C]//Proceedings of 13th British Machine Vision Conference.Cardiff,Wales:University of British Columbia,2002:656-665.
LIU Yang,WANG Yaonan,ZHOU Yurong
College of Electrical and Information Engineering,Hunan University,Changsha 410082,China
In the light inspection machine system for oral liquid impurity detection,due to slight vibration of oral liquid bottle caused by sudden halt of crawler belt used for bottle spinning,in the sequential two pictures of oral liquid bottle captured from high-speed industry camera,pixels sharing the same partial positions cannot be overlapped,which may lead to incorrect result after differential operation of the two pictures.For impurity in oral liquid is very small about micrometer level,mechanical dithering or dirt on the bottle of oral liquid shall pose influence on inspection accuracy because of aforementioned reason.This paper will harness SIFT algorithm to register the sequential two pictures.SIFT algorithm is suitable for high accuracy oral liquid impurity detection system on account of its stability.It improves SITF a little in the aim of adapting to slight vibration range which will generate satisfactory result.In the real process of detection,the algorithm is of high stability and high accuracy.
light inspection machine for oral liquid;high-accuracy impurity detection;Scale Invariant Feature Transform(SIFT);position registration
在口服液灯检机杂质检测系统中,口服液瓶体由于履带搓瓶的急停会有轻微的抖动,造成高速工业摄像机拍摄的前后两帧口服液瓶体图像中位于相同空间位置的像素无法重合在一起,导致前后两帧图像做差分结果出现错误。由于口服液中的杂质很小,一般会达到微米级别,因此机械的扰动以及口服液瓶体上的污点都有可能因位置偏差对检测结果造成影响。采用尺度不变特征检测(SIFT)对系统采集的前后两帧图像进行位置配准。SIFT算法稳定性精度很高,适用于高精度口服液杂质检测系统。基于抖动幅度微弱,对该算法进行了一定的改进与简化,以获得最佳配准结果。在实际检测过程中算法稳定,检测结果准确率很高。
口服液灯检机;高精度杂质检测;尺度不变特征检测(SIFT);位置配准
A
TP391
10.3778/j.issn.1002-8331.1302-0204
LIU Yang,WANG Yaonan,ZHOU Yurong.Anti-shaking method for impurity detection in oral liquid using simplified SIFT.Computer Engineering and Applications,2014,50(24):255-258.
国家自然科学基金(No.60835004)。
刘洋(1989—),男,硕士研究生,主要研究方向为机器视觉与图像识别应用。E-mail:ly267888608@sina.com
2013-02-28
2013-05-20
1002-8331(2014)24-0255-04
CNKI网络优先出版:2013-05-29,http∶//www.cnki.net/kcms/detail/11.2127.TP.20130529.1519.005.html