李白燕,张 健
(黄淮学院信息工程学院,河南驻马店 463000)
在现代工业自动化生产中,涉及到各种各样的产品在线检查、测量和识别应用,例如:产品外观缺陷检查、零配件加工精度检查、IC器件管脚和标识、电子装配线的元件自动定位等。通常这种带有高度重复性和智能性的工作只能靠人工检测来完成,这种靠人工的传统检测手段给工厂增加巨大的人工成本和管理成本,检测精度也易受检测人员技术的影响,且效率非常低。因此将基于图像处理的智能化机器视觉算法引入流水线产品检测,实现全自动在线检测将大大提高劳动生产率及产品质量,以适应现代化的大规模流水线生产。近年来,人们提出了许多方法用于检测和跟踪序列图像中的运动目标,在生产线上是固定摄像头,因此静态背景下运动目标检测算法受到广泛关注,常用的方法有帧差法[1]、光流法[2]、背景减除法[3]等。由于受到算法复杂度和计算机运算速度等限制,使得在检测和跟踪运动目标的实时性和稳健性等方面总是不太理想。本文将从边界边缘检测入手取得稳健的轮廓跟踪。
表示一个目标轮廓的方法可以分成两类:参数化的轮廓和非参数化的轮廓。前者的跟踪方法中使用参数表示轮廓,多数采用snake 模型[4]:卡尔曼snake[5]和吸收自适应运动snake[6]。后者的跟踪方法中,目标的轮廓用边界表示,轮廓被描绘成一系列像素。其中Paragios等的算法[7]及 Nguyen 等的算法[8]很受欢迎。Paragios和 Deriche提出了使用测量正向轮廓与水平集规划进行目标轮廓跟踪,该方法在静态的背景情况取得较好的结果。Fu等提出了一种使用阻塞自适应运动迂回模型的轮廓跟踪方法[6],该方案使用了正向轮廓模型[4],需要确定很多参数,而且分割轮廓存在困难。Nguyen等提出了一种在一个视频码流跟踪非参数化的目标轮廓的方法[8],该算法使用分水岭算法和一个加在能量最小化函数分水岭线平滑能量确定了新的追踪轮廓。然而,Nguyen等的方法会留下许多不相干的边缘阻碍了准确地轮廓跟踪。
为了解决这些问题,本文提出一个在跟踪的在线产品边界中仅选择适当边界的方法。首先利用边缘运动移除背景边缘。背景边缘去除后,在上一帧轮廓的正常方向上计算平均亮度梯度,这里仅考虑具有高梯度值的边缘作为跟踪目标的边界边缘。所以,即使一个产品边缘不清晰,有复杂纹理的背景和目标,上面的轮廓跟踪方法是稳健的。实验结果表明,该轮廓跟踪的方法是可靠。
边界边缘选择的过程包括两个步骤[9]:首先,利用边缘运动移除背景边缘;第二,采用轮廓法线方向上的梯度选择边界边缘像素。从边缘地图Θ(R)(t)上得到边界边缘地图Θ(B)(t)。
1.1.1 利用边缘运动移除背景边缘
通过比较目标的运动和背景的运动移除背景边缘,计算出跟踪目标的运动和背景边缘运动。使用来自坎尼边缘发生器产生的边缘地图的光流计算边缘运动。
计算跟踪目标运动矢量Vp(t),每一个边缘像素的运动矢量是相对Vp(t)的测试,如果两个向量之间的差额大于特定常数Te,被认为是一个背景边缘像素。假设Θ(I)(t)是在当前帧检测的边缘地图,矢量OEdge是在Θ(I)(t)的边缘像素计算出的光流。使用下式估计出主导平移矢量Vp(t)
式中:Ψ是速度空间;Ω(t-1)是属于在(t-1)帧的目标区域的像素。Θ(R)(t)是Θbackground(t)减去Θ(I)(t)的一个边缘,Θbackground(t)而是一个背景边缘地图。
利用边缘运动移除与跟踪目标运动不同的背景边缘,该方法不依赖边缘地图的复杂程度,能准确地去除所有不同运动的背景边缘像素。
1.1.2 边界边缘像素选择
首先进行图像的梯度的计算。
图1 参数轮廓中的轮廓正常方向的亮度计算
沿着轮廓上每个像素点r(si)的正常方向的平均彩色梯度D(r(si))用式(3)计算。r(si)是r(s)像素点之一。D(r(si))的计算过程如下:1)在方向r'⊥(s)和r'(s)的两个主要轴上画一个椭圆,尺度是适当可调的。2)将椭圆中的像素点分成两部分,用沿着r'(s)方向的一条线,如图1b所示。3)计算被r(s)分开的两个部分的像素平均亮度值,计算的结果就是(r(si)),图1c表示像素的轮廓正常方向,像素属于
下面介绍边界边缘像素选择的过程。
图2 预测轮廓
实验中的视频是从网站收集到的,用MATLAB进行仿真,跟踪结果为:在高速运转的月饼生产流水线上,产品快速移动,产品的轮廓尺寸随着人与相机的相对位置发生变化。同时,车间的背景存在一些复杂的纹理,也产生了一些复杂的边缘,使得轮廓的跟踪变得困难。采用本文的跟踪算法可以得到精确的跟踪,如图3所示。
图3 仿真结果
本文中,为了改进在流水线中用静态摄像机拍摄的视频流中的纹理目标的跟踪精度提出了一种新的轮廓复杂方法。该方法选择了跟踪目标边界周围的有效的边缘,边界边缘选择包括两步,首先,利用目标和背景边缘运动的不同移除背景边缘。有不同运动的边缘被认为是多余的背景边缘被移除掉。其次,采用计算从第一步输出跟踪轮廓的相同方向的产生物来选择边界边缘。
精确的选择轮廓边缘不会受噪声边缘的影响,为了表示这个更新的轮廓,用到了水蛇模型。尽管目标边缘是复杂的,边缘也能足够好的提取。实验结果表明,本文的方法进行的边界边缘检测并进行适当的选择是足够能处理在复杂的背景下目标形状的变化,基于边界边缘选择的跟踪是非常成功的。
产品流水线实时检测所涉及的相关技术很多,而且要取得有效的检测效果,往往要对不同的产品及检测要求采取特殊的技术手段。除了如何有效解决流水线上运动产品图像跟踪以外,在以后对工作中如何提高高速流水线的产品检测实时性、可靠性及智能化等问题作进一步研究。
:
[1]NERI A,COLONNESE S,RUSSO C,et al.Automatic moving object and background separation[J].Signal Processing,1998,66(2):219-232.
[2]BARRON J,FLEET D,BEAUCHEMIN S.Performance of optical flow techniques[J].International Journal of Computer Vision,1994,12(1):42-77.
[3]STAUFFER C,GRIMSON W E L.Adaptive background mixture models for real-time tracking[C]//Proc.IEEE Conference on Computer Vision and Pattern Recognition,1999.Fort Collins,CO,USA:IEEE Press,1999:246-252.
[4]KASS M,WITKIN A,TERZOPOULOS D.Snakes:active contour models[J].Int.J.Computer Vision,1987,1(4):321-331.
[5]PETERFREUND N.Robust tracking of position and velocity with Kalman snakes[J].IEEE Trans.Pattern Anal.Mach.Intell.,1999,21(6):564-569.
[6]FU Y,ERDEM A T,TEKALP A M.Tracking visible boundary of objects using occlusion adaptive motion snake[J].IEEE Trans.Image Process,2000,9(12):2051-2060.
[7]PARAGIOS N,DERICHE R.Geodesic active contours and level sets for the detection and tracking of moving objects[J],IEEE Trans.Pattern A-nal.Mach.Intell.,2000,22(3):266-280.
[8]NGUYEN H T,WORRING M,VAN DEN BOOMGAARD R,et al.Tracking nonparameterized object contours in video[J].IEEE Trans.Image Process,2002,11(9):1081-1091.
[9]ROH M,KIM T,PARK J,et al.Accurate object contour tracking based on boundary edge selection[J].Pattern Recognition,2007,40(3):931-943.