一种新的边界跟踪算法

一种新的边界跟踪算法
一种新的边界跟踪算法

8-邻域边界跟踪算法

利用点的八邻域信息,选择下一个点作为边界点,这个算法需要选择一个开始点,可以选择图像上是目标点,在最上,最左的点。然后查看它的八邻域的点,从右下方45°的位置开始寻找,如果是目标点,将沿顺时针90°作为下一次寻找的方向,如果不是,则逆时针45°继续寻找,一旦找到重复上面的过程。 void VessDibTrack(HDIB hdib,vector& pt) //八邻域 { unsigned char *lpSrc; LPSTR lpDIB = (LPSTR) ::GlobalLock((HGLOBAL)hdib); int cxDIB = (int) ::DIBWidth(lpDIB); // Size of DIB - x int cyDIB = (int) ::DIBHeight(lpDIB); // Size of DIB - y LPSTR lpDIBBits=::FindDIBBits (lpDIB); long lLineBytes = WIDTHBYTES(cxDIB * 8); // 计算图像每行的字节数 //寻找开始点,最右,最下 //先行,后列 int i,j; POINT startPt,currPt; for (i = 0;i

图像定位及跟踪技术大解析

图像定位及跟踪技术大解析 在科学技术日新月异的今天,人们对机器设备的智能性、自主性要求也越来越高,希望其完全替代人的角色,把人们从繁重、危险的工作任务中解脱出来,而能否像人一样具有感知周围环境的能力已成为设备实现智能化自主化的关键。 广义的“图像跟踪”技术,是指通过某种方式(如图像识别、红外、超声波等)将摄像头中拍摄到的物体进行定位,并指挥摄像头对该物体进行跟踪,让该物体一直被保持在摄像头视野范围内。狭义的“图像跟踪”技术就是我们日常所常谈到的,通过“图像识别”的方式来进行跟踪和拍摄。 因为红外、超声波等方式,都受环境的影响,而且要专门的识别辅助设备,在实际应用中已经逐步被“图像识别”技术所替代。“图像识别”是直接利用了摄像头拍摄到的图像,进行NCAST图像差分及聚类运算,识别到目标物体的位置,并指挥摄像头对该物体进行跟踪。 图像跟踪系统采用特有的NCAST目标外形特征检测方法,被跟踪者无需任何辅助设备,只要进入跟踪区域,系统便可对目标进行锁定跟踪,使摄像机画面以锁定的目标为中心,并控制摄像机进行相应策略的缩放。系统支持多种自定义策略,支持多级特写模式,适应性强,不受强光、声音、电磁等环境影响。 目标物体的边缘检测 物体的形状特征在大多数情况下变化不多,基于目标形状轮廓的跟踪方法与基于区域的匹配方法相比,可以更精确的分割目标。 边缘是运动目标的最基本特征,表现在图像中就是指目标周围图像灰度有阶跃变化或屋顶变化的那些像素集合,它是图像中局部亮度变化最显著的部分。 边缘检测就是采用某种算法来定位灰度不连续变化的位置,从而图像中目标与背景的交界线。图像的灰度变化可以用灰度梯度来表示。

约束满足与邻域搜索结合的混合算法及应用

约束满足与邻域搜索结合的混合算法及应用[摘要] 总结约束满足求解技术和邻域搜索算法,分析约束满足与邻域搜索 单一算法的优劣,以及两者结合的优势,提出约束满足与邻域搜索相结合的混合算法的一般框架,并以Job Shop 调度优化问题为例对该算法框架进行实例说明。 [关键词] 约束满足;邻域搜索;混合算法 ddoi : 10 . 3969 / j . issn . 1673 - 0194 . 2009 . 21 . 017 1引言 约束满足技术集成了运筹学、人工智能、逻辑编程和图论中的方法和思想,是解决组合优化问题的一门新兴技术。约束满足建模能力较强,在约束求解中,能够充分利用问题的结构信息和约束关系,采用约束传播、回溯等技术对求解空间快速缩减,提高问题的求解效率。邻域搜索算法是一种非常有效的解决组合优化问题的方法,在搜索空间内利用局部指导规则探索优良解,搜索效率高,具有可衡量性。约束满足与邻域搜索法均存在自身的优势和局限性,相互结合可以有效利用算法的互补性。 目前对约束满足与邻域搜索相结合的混合算法的研究成果比较少。文献[1]将邻域搜索和向前看(Look Ahead)技术结合,在搜索过程中遇到死点时要么回溯,要么应用邻域搜索继续新的空间搜索。文献[2]中提出的“Decision-Repair”方法集成了禁忌搜索、一致性技术和基于冲突的启发式方法来引导搜索过程。文献[3]在系统搜索过程中,使用变量排序和值排序法,进行不完全搜索,用N皇后问题进行算法测试。文献[4]用约束规划算法产生一个可行解,作为禁忌搜索算法的初始解。文献[5]对NEH算法加以扩展,得到高质量的初始解,提出跳出局部极值方法,改进约束满足修复算法。 本文首先介绍约束满足技术和邻域搜索技术,然后总结两者相结合的混合算法的框架,最后以Job Shop 调度为例,给出混合算法实现步骤。 2约束满足技术和邻域搜索技术 2.1 约束满足技术

TLD目标跟踪算法

TLD目标跟踪算法 一、算法的背景 TLD(Tracking-Learning-Detection)是英国萨里大学的一个捷克籍博士生Zdenek 出的一种新的单目标长时间(long term tracking)跟踪算法。该算法与传统跟踪算法的显著区别在于将传统的跟踪算法和传统的检测算法相结合来解决被跟踪目标在被跟踪过程中发生的形变、部分遮挡等问题。同时,通过一种改进的在线学习机制不断更新跟踪模块的“显著特征点”和检测模块的目标模型及相关参数,从而使得跟踪效果更加稳定、鲁棒、可靠。 对于长时间跟踪而言,一个关键的问题是:当目标重新出现在相机视野中时,系统应该能重新检测到它,并开始重新跟踪。但是,长时间跟踪过程中,被跟踪目标将不可避免的发生形状变化、光照条件变化、尺度变化、遮挡等情况。传统的跟踪算法,前端需要跟检测模块相互配合,当检测到被跟踪目标之后,就开始进入跟踪模块,而此后,检测模块就不会介入到跟踪过程中。但这种方法有一个致命的缺陷:即,当被跟踪目标存在形状变化或遮挡时,跟踪就很容易失败;因此,对于长时间跟踪,或者被跟踪目标存在形状变化情况下的跟踪,很多人采用检测的方法来代替跟踪。该方法虽然在某些情况下可以改进跟踪效果,但它需要一个离线的学习过程。即:在检测之前,需要挑选大量的被跟踪目标的样本来进行学习和训练。这也就意味着,训练样本要涵盖被跟踪目标可能发生的各种形变和各种尺度、姿态变化和光照变化的情况。换言之,利用检测的方法来达到长时间跟踪的目的,对于训练样本的选择至关重要,否则,跟踪的鲁棒性就难以保证。 考虑到单纯的跟踪或者单纯的检测算法都无法在长时间跟踪过程中达到理想的效果,所以,TLD方法就考虑将两者予以结合,并加入一种改进的在线学习机制,从而使得整体的目标跟踪更加稳定、有效。 简单来说,TLD算法由三部分组成:跟踪模块、检测模块、学习模块;如下图所示 其运行机制为:检测模块和跟踪模块互补干涉的并行进行处理。首先,跟踪模块假设相邻视频帧之间物体的运动是有限的,且被跟踪目标是可见的,以此来估计目标的运动。 如果目标在相机视野中消失,将造成跟踪失败。检测模块假设每一个视帧都是彼此独立的,并且根据以往检测和学习到的目标模型,对每一帧图片进行全图搜索以定位目标可能出现的区域。同其它目标检测方法一样,TLD中的检测模块也有可能出现错误,且错误无非是错误的负样例和错误的正样例这两种情况。而学习模块则根据跟踪模块的结果对检测模块的这两种错误进行评估,并根据评估结果生成训练样本对检测模块的目标模型进行更新,同时对跟踪模块的“关键特征点”进行更新,以此来避免以后出现类似的

数字图像边缘检测的研究与实现

任务书

主要分析几种应用于数字图像处理中的边缘检测算子,根据它们在实践中的应用结果进行研究,主要包括:Robert 边缘算子、Prewitt 边缘算子、Sobel 边缘算子、Kirsch 边缘算子以及Laplacian 算子等对图像及噪声图像的边缘检测,根据实验处理结果讨论了几种检测方法的优劣. 关键词:数字图像处理;边缘检测;算子

图像的边缘是图像的重要特征之一, 数字图像的边缘检测是图像分割、目标区域识别、区域形状提取等图像分析领域十分重要的基础, 其目的是精确定位边缘, 同时较好地抑制噪声, 因此边缘检测是机器视觉系统中必不可少的重要环节。然而, 由于实际图像中的边缘是多种边缘类型的组合, 再加上外界环境噪声的干扰, 边缘检测又是数字图像处理中的一个难题。

目录 第一章边缘的概念 (3) 第二章边缘检测 (4) 第三章边缘检测算子的应用 (8) 第四章边缘检测方法性能比较 (12) 参考文献料 (15)

第1章:边缘检测 1.1 边缘的介绍 图像边缘是图像最基本的特征,边缘在图像分析中起着重要的作用。所谓边缘是指图像局部特性的不连续性。灰度或结构等信息的突变处称为边缘,例如:灰度级的突变,颜色的突变,纹理结构的突变等。边缘是一个区域的结束,也是另一个区域的开始,利用该特征可以分割图像。 边缘(edge)是指图像局部强度变化最显著的部分.边缘主要存在于目标与目标、目标与背景、区域与区域(包括不同色彩)之间,是图像分割、纹理特征和形状特征等图像分析的重要基础.图像分析和理解的第一步常常是边缘检测(edge detection).由于边缘检测十分重要,因此成为机器视觉研究领域最活跃的课题之一.本章主要讨论边缘检测和定位的基本概念,并使用几种常用的边缘检测器来说明边缘检测的基本问题. 在讨论边缘算子之前,首先给出一些术语的定义: 边缘点:图像中具有坐标],[j i 且处在强度显著变化的位置上的点. 边缘段:对应于边缘点坐标],[j i 及其方位 ,边缘的方位可能是梯度角. 边缘检测器:从图像中抽取边缘(边缘点和边缘段)集合的算法. 轮廓:边缘列表,或是一条表示边缘列表的拟合曲线. 边缘连接:从无序边缘表形成有序边缘表的过程.习惯上边缘的表示采用顺时针方向序. 边缘跟踪:一个用来确定轮廊的图像(指滤波后的图像)搜索过程. 边缘点的坐标可以是边缘位置像素点的行、列整数标号,也可以在子像素分辨率水平上表示.边缘坐标可以在原始图像坐标系上表示,但大多数情况下是在边缘检测滤波器的输出图像的坐标系上表示,因为滤波过程可能导致图像坐标平移或缩放.边缘段可以用像素点尺寸大小的小线段定义,或用具有方位属性的一个点定义.请注意,在实际中,边缘点和边缘段都被称为边缘. 边缘连接和边缘跟踪之间的区别在于:边缘连接是把边缘检测器产生的无序边缘集作为输入,输出一个有序边缘集;边缘跟踪则是将一幅图像作为输入,输出一个有序边缘集.另外,边缘检测使用局部信息来决定边缘,而边缘跟踪使用整个图像信息来决定一个像素点是不是边缘. 1.2 边缘检测算子 边缘检测是图像特征提取的重要技术之一, 边缘常常意味着一个区域的终结和另一个区域的开始. 图像的边缘包含了物体形状的重要信息,它不仅在分析图像时大幅度地减少了要处理的信息量,而且还保护了目标的边界结构. 因此,边缘检测可以看做是处理许多复杂问题的关键. 边缘检测的实质是采用某种算法来提取出图像中对对象与背景间的交界线。图像灰度的变化情况可以用图像灰度分布的梯度来反映,因此可以用局部图像微分技术来获取边缘检测算子。经典的 边缘检测方法是对原始图像中的像素的某个邻域来构造边缘检测算子。以下是对几种经典的边缘检测算子进行理论分析,并对各自的性能特点做出比较和评价。

目标跟踪算法的分类

目标跟踪算法的分类

主要基于两种思路: a)不依赖于先验知识,直接从图像序列中检测到运动目标,并进行目标识别,最终跟踪感兴趣的运动目标; b)依赖于目标的先验知识,首先为运动目标建模,然后在图像序列中实时找到相匹配的运动目标。 一.运动目标检测 对于不依赖先验知识的目标跟踪来讲,运动检测是实现跟踪的第一步。运动检测即为从序列图像中将变化区域从背景图像中提取出来。运动目标检测的算法依照目标与摄像机之间的关系可以分为静态背景下运动检测和动态背景下运动检测 (一)静态背景 1.背景差 2.帧差 3.GMM 4.光流 背景减算法可以对背景的光照变化、噪声干扰以及周期性运动等进行建模,在各种不同情况下它都可以准确地检测出运动目标。因此对于固定

个关键技术: a)匹配法则,如最大相关、最小误差等 b)搜索方法,如三步搜索法、交叉搜索法等。 c) 块大小的确定,如分级、自适应等。 光流法 光流估计的方法都是基于以下假设:图像灰度分布的变化完全是目标或者场景的运动引起的,也就是说,目标与场景的灰度不随时间变化。这使得光流方法抗噪声能力较差,其应用范围一般局限于目标与场景的灰度保持不变这个假设条件下。另外,大多数的光流计算方法相当复杂,如果没有特别的硬件装置,其处理速度相当慢,达不到实时处理的要求。 二.目标跟踪 运动目标的跟踪,即通过目标的有效表达,在图像序列中寻找与目标模板最相似候选目标区位置的过程。简单说,就是在序列图像中为目标定位。运动目标的有效表达除了对运动目标建模外,目标跟踪中常用到的目标特性表达主要包括视觉特征 (图像边缘、轮廓、形状、纹理、区域)、统计特征 (直方图、各种矩特征)、变换系数特

基于meanshift的目标跟踪算法——完整版

基于Mean Shift的目标跟踪算法研究 指导教师:

摘要:该文把Itti视觉注意力模型融入到Mean Shift跟踪方法,提出了一种基于视觉显著图的Mean Shift跟踪方法。首先利用Itti视觉注意力模型,提取多种特征,得到显著图,在此基础上建立目标模型的直方图,然后运用Mean Shift方法进行跟踪。实验证明,该方法可适用于复杂背景目标的跟踪,跟踪结果稳定。 关键词:显著图目标跟踪Mean Shift Mean Shift Tracking Based on Saliency Map Abstract:In this paper, an improved Mean Shift tracking algorithm based on saliency map is proposed. Firstly, Itti visual attention model is used to extract multiple features, then to generate a saliency map,The histogram of the target based on the saliency map, can have a better description of objectives, and then use Mean Shift algorithm to tracking. Experimental results show that improved Mean Shift algorithm is able to be applied in complex background to tracking target and tracking results are stability. 1 引言 Mean Shift方法采用核概率密度来描述目标的特征,然后利用Mean Shift搜寻目标位置。这种方法具有很高的稳定行,能够适应目标的形状、大小的连续变化,而且计算速度很快,抗干扰能力强,能够保证系统的实时性和稳定性[1]。近年来在目标跟踪领域得到了广泛应用[2-3]。但是,核函数直方图对目标特征的描述比较弱,在目标周围存在与目标颜色分布相似的物体时,跟踪算法容易跟丢目标。目前对目标特征描述的改进只限于选择单一的特征,如文献[4]通过选择跟踪区域中表示目标主要特征的Harris点建立目标模型;文献[5]将初始帧的目标模型和前一帧的模型即两者的直方图分布都考虑进来,建立混合模型;文献[6]提出了以代表图像的梯度方向信息的方向直方图为目标模型;文献[7-8]提出二阶直方图,是对颜色直方图一种改进,是以颜色直方图为基础,颜色直方图只包含了颜色分布信息,二阶直方图在包含颜色信息的前提下包含了像素的均值向量和协方差。文献[9]提出目标中心加权距离,为离目标中心近的点赋予较大的权值,离目标中心远的点赋予较小的权值。文献[4-9]都是关注于目标和目标的某一种特征。但是使用单一特征的目标模型不能适应光线及背景的变化,而且当有遮挡和相似物体靠近时,容易丢失目标;若只是考虑改进目标模型,不考虑减弱背景的干扰,得到的效果毕竟是有限的。 针对上述问题,文本结合Itti 提出的视觉注意模型[5],将自底向上的视觉注意机制引入到Mean Shift跟踪中,提出了基于视觉显著图的Mean Shift跟踪方法。此方法在显著图基础上建立目标模型,由此得到的目标模型是用多种特征来描述的,同时可以降低背景对目标的干扰。 2 基于视觉显著图的Mean Shift跟踪方法

目标跟踪算法的分类

目标跟踪算法的分类主要基于 两种思路: a)不依赖于先验知识,直接从图像序列中检测到运动目标,并进行目标识别,最终跟踪感兴趣的运动目标; b)依赖于目标的先验知识,首先为运动目标建模然后在图像序列中实时找到相匹配的运动目标。 一.运动目标检测 对于不依赖先验知识的目标跟踪来讲,运动检测是实现跟踪的第一步。运动检测即为从序列图像中将变化区域从背景图像中提取出来。运动目标检测的算法依照目标与摄像机之间的关系可以分为静态背景下运动检测和动态背景下运动检测(一)静态背景

2.帧差 3.GMM 4.光流 背景减算法可以对背景的光照变化、噪声干扰以及周期性运动等进行建模,在各种不同情况下它都可以准确地检测出运动目标。因此对于固定摄像头的情形,目前大多数的跟踪算法中都采用背景减算法来进行目标检测。背景减算法的局限性在于它需要一个静态的固定摄像头。 (二)运动场通常情况下,摄像机的运动形式可以分为两种:a)摄像机的支架固定,但摄像机可以偏转、俯仰以及缩放;b)将摄像机装在某个移动的载体上。由于以上两种情况下的背景及前景图像都在做全局运动,要准确检测运动目标的首要任务是进行图像的全局运动估计与补偿。 考虑到图像帧上各点的全局运动矢量虽不尽相同(摄像机做平移运动除外),但它们均是在同一摄像机模型下的运动,因而应遵循相同的运动模型,可以用同一模型参数来表示。 全局运动的估计问题就被归结为全局运动模型参数的估计问题,通常使用块匹配法或光流估计法

来进行运动参数的估计。 块匹配 基于块的运动估算和补偿可算是最通用的算法。可以将图像分割成不同的图像块,假定同一图像小块上的运动矢量是相同的,通过像素域搜索得到最佳的运动矢量估算。块匹配法主要有如下三个关键技术: a)匹配法则,如最大相关、最小误差等 b)搜索方法,如三步搜索法、交叉搜索法等。 c)块大小的确定,如分级、自适应等。 光流法 光流估计的方法都是基于以下假设:图像灰度分布的变化完全是目标或者场景的运动引起的,也就是说,目标与场景的灰度不随时间变化。这使得光流方法抗噪声能力较差,其应用范围一般局限于目标与场景的灰度保持不变这个假设条件下。另外,大多数的光流计算方法相当复杂,如果没有特别的硬件装置,其处理速度相当慢,达不到实时处理的要求。 二.目标跟踪 运动目标的跟踪,即通过目标的有效表达,在图像序列中寻找与目标模板最相似候选目标区位置

禁忌搜索算法

禁忌搜索算法 2009210042 李同玲运筹学与控制论 搜索是人工智能的一个基本问题,一个问题的求解过程就是搜索。人工智能在各应用领域中,被广泛的使用。现在,搜索技术渗透在各种人工智能系统中,可以说没有哪一种人工智能的应用不用搜索方法。 禁忌搜索算法(Tabu Search或Taboo Search,简称TS)的思想最早由Glover (美国工程院院士,科罗拉多大学教授)在1977年提出,它是对局部邻域搜索的一种扩展,是一种全局邻域搜索算法,是人工智能的一种体现,是一种全局逐步寻优算法,是对人类智力过程的一种模拟。TS算法通过引入一个灵活的存储结构和相应的禁忌准则来避免迂回搜索,并通过藐视准则来赦免一些被禁忌的优良状态,进而保证多样化的有效探索以最终实现全局优化。迄今为止,TS算法在组合优化、生产调度、机器学习、电路设计和神经网络等领域取得了很大的成功,近年来又在函数全局优化方面得到较多的研究,并大有发展的趋势。 1.1引言 1.1.1局部邻域搜索 局部邻域搜索是基于贪婪思想持续地在当前的邻域中进行搜索,虽然算法通用易实现,且容易理解,但其搜索性能完全依赖于邻域结构和初始解,尤其容易陷入局部极小而无法保证全局优化性。 局部搜索的算法可以描述为:

1、 选定一个初始可行解:0x ; 记录当前最优解0best x x =,()best T N x =; 2、 当\best T x =?时,或满足其他停止运算准则时,输出计算结果, 停止运算;否则,从T 中选一集合S ,得到S 中的最好解now x ;若()()now best f x f x <,则b e s t n o w x x =,()best T N x =;否则,\T T S =;重复2,继续搜索 这种邻域搜索方法容易实现理解,容易实现,而且具有很好的通用性,但是搜索结果完全依赖于初始解和邻域的结构,而且只能搜索到局部最优解。为了实现全局搜索,禁忌搜索采用允许接受劣解来逃离局部最优解。针对局部领域搜索,为了实现全局优化,可尝试的途径有:以可控性概率接受劣解来逃逸局部极小,如模拟退火算法;扩大领域搜索结构,如TSP 的2-opt 扩展到k-opt ;多点并行搜索,如进化计算;变结构领域搜索( Mladenovic et al,1997);另外,就是采用TS 的禁忌策略尽量避免迂回搜索,它是一种确定性的局部极小突跳策略。 1.1.2禁忌搜索算法的基本思想 禁忌搜索算法的基本思想就是在搜索过程中将近期的历史上的搜索过程存放在禁忌表(Tabu List )中,阻止算法重复进入,这样就有效地防止了搜索过程的循环。禁忌表模仿了人类的记忆功能,禁忌搜索因此得名,所以称它是一种智能优化算法。 具体的思路如下:禁忌搜索算法采用了邻域选优的搜索方法,为了能逃离局部最优解,算法必须能够接受劣解,也就是每一次迭代得到的解不必一定优于原来的解。但是。一旦接受了劣解,迭代就可能

目标跟踪算法的研究毕业论文

目录 摘要 (1) ABSTRACT (2) 第一章绪论 (4) 1.1课题研究背景和意义 (4) 1.2国外研究现状 (5) 1.3本文的具体结构安排 (7) 第二章运动目标检测 (8) 2.1检测算法及概述 (8) 2.1.1连续帧间差分法 (9) 2.1.2背景去除法 (11) 2.1.3光流法 (13) 第三章运动目标跟踪方法 (16) 3.1引言 (16) 3.2运动目标跟踪方法 (16) 3.2.1基于特征匹配的跟踪方法 (16) 3.2.2基于区域匹配的跟踪方法 (17) 3.2.3基于模型匹配的跟踪方法 (18) 3.3运动目标搜索算法 (18) 3.3.1绝对平衡搜索法 (18) 3.4绝对平衡搜索法实验结果 (19) 3.4.1归一化互相关搜索法 (21)

3.5归一化互相关搜索法实验结果及分析 (22) 第四章模板更新与轨迹预测 (26) 4.1模板更新简述及策略 (26) 4.2轨迹预测 (28) 4.2.1线性预测 (29) 4.2.2平方预测器 (30) 4.3实验结果及分析: (31) 致 (36) 参考文献 (37) 毕业设计小结 (38)

摘要 图像序列目标跟踪是计算机视觉中的经典问题,它是指在一组图像序列中,根据所需目标模型,实时确定图像中目标所在位置的过程。它最初吸引了军方的关注,逐渐被应用于电视制导炸弹、火控系统等军用备中。序列图像运动目标跟踪是通过对传感器拍摄到的图像序列进行分析,计算出目标在每帧图像上的位置。它是计算机视觉系统的核心,是一项融合了图像处理、模式识别、人工只能和自动控制等领域先进成果的高技术课题,在航天、监控、生物医学和机器人技术等多种领域都有广泛应用。因此,非常有必要研究运动目标的跟踪。 本论文就图像的单目标跟踪问题,本文重点研究了帧间差分法和背景去除法等目标检测方法,研究了模板相关匹配跟踪算法主要是:最小均方误差函数(MES),最小平均绝对差值函数(MAD)和最大匹配像素统计(MPC)的跟踪算法。在跟踪过程中,由于跟踪设备与目标的相对运动, 视野中的目标可能出现大小、形状、姿态等变化, 加上外界环境中的各种干扰, 所要跟踪的目标和目标所在的场景都发生了变化, 有可能丢失跟踪目标。为了保证跟踪的稳定性和正确性, 需要对模板图像进行自适应更新。由于目标运动有一定得规律,可以采取轨迹预测以提高跟踪精度,本文采用了线性预测法。 对比分析了相关匹配算法的跟踪精度和跟踪速度;对比不采用模板更新和模板跟新的跟踪进度和差别,实验表明,跟踪算法加上轨迹预测及模板跟新在很大程度上提高了跟踪帧数,提高了跟踪精度,具有一定的抗噪声性能。

视频目标检测与跟踪算法综述

视频目标检测与跟踪算法综述 1、引言 运动目标的检测与跟踪是机器视觉领域的核心课题之一,目前被广泛应用在 视频编码、智能交通、监控、图像检测等众多领域中。本文针对视频监控图像的运动目标检测与跟踪方法,分析了近些年来国内外的研究工作及最新进展。 2、视频监控图像的运动目标检测方法 运动目标检测的目的是把运动目标从背景图像中分割出来。运动目标的有效分割对于目标分类、跟踪和行为理解等后期处理非常重要。目前运动目标检测算法的难点主要体现在背景的复杂性和目标的复杂性两方面。背景的复杂性主要体现在背景中一些噪声对目标的干扰,目标的复杂性主要体现在目标的运动性、突变性以及所提取目标的非单一性等等。所有这些特点使得运动目标的检测成为一项相当困难的事情。目前常用的运动目标检测算法主要有光流法、帧差法、背景相减法,其中背景减除法是目前最常用的方法。 2.1 帧差法 帧差法主要是利用视频序列中连续两帧间的变化来检测静态场景下的运动目标,假设(,)k f x y 和(1)(,)k f x y +分别为图像序列中的第k 帧和第k+1帧中象素点(x ,y)的象素值,则这两帧图像的差值图像就如公式2-1 所示: 1(1)(,)(,)k k k Diff f x y f x y ++=- (2-1) 2-1式中差值不为0的图像区域代表了由运动目标的运动所经过的区域(背景象素值不变),又因为相邻视频帧间时间间隔很小,目标位置变化也很小,所以运动目标的运动所经过的区域也就代表了当前帧中运动目标所在的区域。利用此原理便可以提取出目标。下图给出了帧差法的基本流程:1、首先利用2-1 式得到第k 帧和第k+1帧的差值图像1k Diff +;2、对所得到的差值图像1k Diff +二值化(如式子2-2 示)得到Qk+1;3、为消除微小噪声的干扰,使得到的运动目标更准确,对1k Q +进行必要的滤波和去噪处理,后处理结果为1k M +。 111255,,(,)0,,(,)k k k if Diff x y T Q if Diff x y T +++>?=?≤? (T 为阈值) (2-2)

matlab练习程序(二值图像内外边界跟踪)

matlab练习程序(二值图像内外边界跟踪) 目标内边界的像素全都在目标里面,目标外边界的像素全都不在目标上,是包围着目标的。 二值图像内外边界的计算都是有两种方法的,所以一共是4种算法,不过实际用到跟踪的只有一个而已。 首先是内边界跟踪: 第一种方法不是跟踪方法。步骤是先对原图像腐蚀,然后用原图像减去腐蚀后的图像就得到边界了。 第二种方法是跟踪方法。步骤如下: 1.遍历图像。 2.标记第一个遇见像素块的前景像素(i,j)。 3.对这个像素周围八邻域逆时针搜索,如果搜索到周围有前景像素,那么更新坐标(i,j)为(i',j'),并标记。 4.不断执行第3步直到再次遇见此像素块第一次标记的像素。 5.继续执行第1步。 然后是外边界跟踪: 第一种方法和求内边界第一种方法类似。先对原图像进行膨胀,然后用膨胀后的图像减去原图像即可。 第二种也不算跟踪方法,只是标记算法而已。就是将图像中前景像素周围的非前景像素标记一下就行了。 效果如下: 原图:

内边界: 外边界: matlab程序如下: 内边界: 复制代码 clear all; close all; clc; img=imread('rice.png'); img=img>128; imshow(img); [m n]=size(img); imgn=zeros(m,n); %边界标记图像 ed=[-1 -1;0 -1;1 -1;1 0;1 1;0 1;-1 1;-1 0]; %从左上角像素,逆时针搜索 for i=2:m-1 for j=2:n-1 if img(i,j)==1 && imgn(i,j)==0 %当前是没标记的白色像素 if sum(sum(img(i-1:i+1,j-1:j+1)))~=9 %块内部的白像素不标记 ii=i; %像素块内部搜寻使用的坐标 jj=j; imgn(i,j)=2; %本像素块第一个标记的边界,第一个边界像素为2 while imgn(ii,jj)~=2 %是否沿着像素块搜寻一圈了。 for k=1:8 %逆时针八邻域搜索 tmpi=ii+ed(k,1); %八邻域临时坐标 tmpj=jj+ed(k,2); if img(tmpi,tmpj)==1 && imgn(tmpi,tmpj)~=2 %搜索到新边界,并且没有搜索一圈 ii=tmpi; %更新内部搜寻坐标,继续搜索 jj=tmpj; imgn(ii,jj)=1; %边界标记图像该像素标记,普通边界为1 break; end

图像边界跟踪算法程序

Matlab程序.光栅扫描跟踪程序 I=imread(' circles.png '); [m,n]=size(I); %计算图像的大小 imshow(I); R=I(1,1); %图像第一个像素点的值 I0=zeros(m+2,n+2)+R; %图像周围增加一个与原图像第一个像素值相同的像素I0(2:(m+1),2:(n+1))=I; x0=0;y0=0; fsp=0; %是否找到起始点 for i=1:m for j=1:n if (I0(i,j)~=R) x0=i; %记录起始点的纵坐标i y0=j; %记录起始点的横坐标j fsp=1; break; end end if fsp==1 break; end end row=x0; col=y0; A=[]; %存储边界点坐标的矩阵 B=zeros(m,n); %边界跟踪的图像矩阵 ended=0;direction=4; %由起始点的左边开始查找 while(ended==0) found_next=0; b=[row,col]; A=[A;b]; B(row,col)=255; while(found_next==0) switch mod(direction,8) case 0 if (I0(row, col+1)~=R) row=row; %记录当前坐标 col=col+1; direction=5; %下一点由方向5开始查找 found_next=1; %找到边界点 end; case 1 if (I0(row-1, col+1)~=R) row=row-1; %记录当前坐标

col=col+1; direction=6; %下一点由方向6开始查找found_next=1; %找到边界点 end; case 2 if (I0(row-1, col)~=R) row=row-1; %记录当前坐标 col=col; direction=7; %下一点由方向7开始查找found_next=1; %找到边界点 end; case 3 if (I0(row-1, col-1)~=R) row=row-1; %记录当前坐标 col=col-1; direction=0; %下一点由方向0开始查找found_next=1; %找到边界点 end; case 4 if (I0(row, col-1)~=R) row=row; %记录当前坐标 col=col-1; direction=1; %下一点由方向1开始查找found_next=1; %找到边界点 end; case 5 if (I0(row+1, col-1)~=R) row=row+1; %记录当前坐标 col=col-1; direction=2; %下一点由方向2开始查找found_next=1; %找到边界点 end; case 6 if (I0(row+1, col)~=R) row=row+1; %记录当前坐标 col=col; direction=3; %下一点由方向3开始查找found_next=1; %找到边界点 end; case 7 if (I0(row+1, col+1)~=R) row=row+1; %记录当前坐标 col=col+1; direction=4; %下一点由方向4开始查找

目标跟踪算法

clc; clear; x=[0 16 25 33 50 65 75 82 100]; y=[0 172.5 227.5 324.2 330.7 286.1 237.7 201.7 0]; plot(xx,yy); 的图为 xx = 0:.01:100; yy = spline(x,y,xx); plot(xx,yy)

Matlab画平滑曲线的两种方法(拟合或插值后再用plot即可) 分类:MATLAB2012-12-02 11:15 25540人阅读评论(4) 收藏举报自然状态下,用plot画的是折线,而不是平滑曲线。 有两种方法可以画平滑曲线,第一种是拟合的方法,第二种是用spcrv,其实原理应该都一样就是插值。下面是源程序,大家可以根据需要自行选择,更改拟合的参数。 clc,clear; a = 1:1:6; %横坐标 b = [8.0 9.0 10.0 15.0 35.0 40.0]; %纵坐标

plot(a, b, 'b'); %自然状态的画图效果 hold on; %第一种,画平滑曲线的方法 c = polyfit(a, b, 2); %进行拟合,c为2次拟合后的系数 d = polyval(c, a, 1); %拟合后,每一个横坐标对应的值即为d plot(a, d, 'r'); %拟合后的曲线 plot(a, b, '*'); %将每个点用*画出来 hold on; %第二种,画平滑曲线的方法 values = spcrv([[a(1) a a(end)];[b(1) b b(end)]],3); plot(values(1,:),values(2,:), 'g');

多目标跟踪方法研究综述

经过近40多年的深入研究和发展,多目标跟踪技术在许多方面都有着广泛应用和发展前景,如军事视觉制导、机器人视觉导航、交通管 制、 医疗诊断等[1-2]。目前,虽然基于视频的多运动目标跟踪技术已取得了很大的成就,但由于视频中图像的变化和物体运动的复杂性,使得对多运动目标的检测与跟踪变得异常困难,如多目标在运动过程中互遮挡、监控场景的复杂性等问题,解决上述难题一直是该领域所面临的一个巨大挑战,因此,对视频中多目标跟踪技术研究仍然是近年来一个热门的研究课题[3-5]。 1、多目标跟踪的一般步骤 基于视频的多目标跟踪技术融合了图像处理、模式识别、人工智能、 自动控制以及计算机视觉等众多领域中的先进技术和核心思想。不同的多目标跟踪方法其实现步骤有一定的差异,但多目标跟踪的主要 流程是相同的,如图1所示,其主要包括图像预处理、 运动目标检测、多目标标记与分离、多目标跟踪四个步骤。 图1多目标跟踪基本流程图 2、多目标跟踪方法 多目标跟踪方法可以根据处理图像或视频获取视点的多少分为两大类,一类是单视点的多目标跟踪,另一类就是多视点的多目标跟踪。 2.1单视点的方法 单视点方法是针对单一相机获取的图像进行多目标的检测和跟踪。该方法好处在于简单且易于开发,但由于有限的视觉信息的获取,很难处理几个目标被遮挡的情况。 块跟踪(Blob-tracking)是一种流行的低成本的跟踪方法[6-7]。这种方法需要首先在每一帧中提取块,然后逐帧寻找相关联的块,从而实现跟 踪。 例如BraMBLe系统[8]就是一个基于已知的背景模型和被跟踪的人的外表模型计算出块的似然性的多块跟踪器。这种方法最大的不足之处在于:当由于相似性或者遮挡,多个目标合并在一起时,跟踪将导致失败。因此,可以取而代之的方法是通过位置、外观和形状保留清晰目标的状态。文献[9]利用组合椭圆模拟人的形状,用颜色直方图模拟不同人的外观,用一个增强高斯分布模拟背景以便分割目标,一旦场景中发现对应于运动头部的像素,一个MCMC方法就被用于获取多个人的轮廓的最大后验概率,在单相机的多人跟踪应用中取得了非常有意义的结果。Okuma等人提出了一种将Adaboost算法和粒子滤波相结合的方法[10]。该方法由于充分利用了两种方法的优点,相比于单独使用这两种方法本身,大大降低了跟踪失败的情形,同时也解决了在同一框架下检测和一致跟踪的问题。Brostow等人提出了一个用于在人群中检测单个行人的特征点轨迹聚类的概率框架[11]。这个框架有一个基本假设是一起运动的点对可能是同一个个体的一部分,并且把它用于检测和最终的跟踪。对于完全和部分遮挡目标以及外观变化,这些方法和另外一些相似的方法都有很大的局限性。 为了解决遮挡问题,一系列单视点跟踪技术应运而生。典型的方法 是利用块合并来检测遮挡的发生[12]。当被跟踪的点消失, 跟踪特征点的方法就简单的将其作为一个被遮挡特征点。近年来,基于目标轮廓和外观的跟踪技术利用隐含的目标到相机的深度变化来表示和估计目标间的遮挡关系。但大多数方法都只能解决部分遮挡,不能解决完全被遮挡 的情况。 另外,小的一致运动被假设为是可以从遮挡视点中可以预测运动模式的,这些给没有预测运动的较长时间的遮挡的处理带来问题。尽管这些单视点的方法有较长的研究历史,但这些方法由于不能明锐的 观察目标的隐藏部分,因此不能很好地解决有2或3个目标的遮挡问题。 2.2多视点的方法 随着复杂环境中对检测和跟踪多个被遮挡的人和计算他们的精确 位置的需要,多视点的方法成为研究的热点。 多视点跟踪技术的目的就是利用不同视点的冗余信息,减少被遮挡的区域,并提供目标和场景的3D信息。尽管通过相机不能很好地解决目标跟踪问题,但却提出了一些很好的想法,如选择最佳视点,但这些方法都以实际环境模型和相机校正为特征。 90年代后半期,在很多文献中给出了多视点相关的多目标跟踪方法。 比如利用一个或多个相机与观察区域相连的状态变化映射,同时给出一系列的行为规则去整合不同相机间的信息。利用颜色在多个视点中进行多目标的跟踪的方法,该方法模拟了从基于颜色直方图技术的 背景提取中获得的连接块并应用其去匹配和跟踪目标。 除此之外,也有在原来的单视点跟踪系统进行扩展的多视点跟踪方法。该方法主要是通过一个预测,当预测当前的相机不在有一个好的视点时,跟踪就从原来凯斯的那个单相机视点的跟踪转换到另外一个相机,从而实现多视点的跟踪。基于点与它对应的极线的欧氏距离的空间匹配方法、贝叶斯网络和立体相对合并的方法都是多目标多视点跟踪的常见方法。尽管这些方法都试图去解决遮挡问题,但由于遮挡的存在,基于特征的方法都不能根本解决,其次,这些方法中的遮挡关系的推理一般都是根据运动模型,卡尔曼滤波或者更普遍的马尔科夫模型的时间一致性来进行的。因此,当这个过程开始发散,这些方法也不能恢复遮挡关系。 最近一种基于几何结构融合多个视点信息的Homegraphicoccupancyconsrraint(HOC)[12]方法,可以通过在多场景平台对人的定位来解决遮挡问题。仅采用随时间变化的外表信息用于从背景中检测前景,这使得在拥挤人流的场景中的外表遮挡的解决更健壮。利用多视点中的前景信息,主要是试图找到被人遮挡的场景点的图像位置,然后这些被遮挡的信息用于解决场景中多个人的的遮挡和跟踪问题。在这种思想指导下,Mittal,Leibe,Franco等的研究工作和机器人导航中基于遮挡网格的距离传感器的并行工作是相似的,这些方法在融合3D空间信息的时候需要进行校正相机。但HOC方法是完全基于图像的,仅需要2D结构信息进行图像平面的融合。当然也有另外一些不需要进行相机校正的算法被提出,但需要学习一个与相机最小相关的信息。在目标跟踪过程中,由于这些方法依赖于单个相机的场景,对于拥挤场景中目标分布密度增加九无能为力了。在HOC的多视点的目标跟踪中,对于任何单一相机的场景,或者相机对的场景,都不需要进行定位和跟踪目标,而是从所有相机的场景中收集证据,形成一个统一的框架,由于该方法能够从多个时间帧的场景中进行场景被遮挡概率的全局轨迹优化,因此可以同时进行检测和跟踪。 3、总结 动态目标检测与跟踪是智能监控系统的重要组成部分,它融合了图像处理、模式识别、自动控制及计算机应用等相关领域的先进技术和研究成果,是计算机视觉和图像编码研究领域的一个重要课题,在军事武器、工业监控、交通管理等领域都有广泛的应用。尤其是对于多目标检测与跟踪中的遮挡与被遮挡的处理,对提高智能监控中目标的行为分析有着重要的意义。随着监控设备的发展和设施的铺设,多视点的场景图像是很容易得到的,因此借助信息融合的思想,充分利用不同角度对目标的描述信息,可以很大地改进目前基于单视点的多目标检测和跟踪的精度,能够很好地解决单视点方法中不能很好解决的遮挡问题。参考文献 [1]胡斌,何克忠.计算机视觉在室外移动机器人中的应用.自动化学报,2006,32(5):774-784. [2]A.Ottlik,H.-H.Nagel.InitializationofModel-BasedVehicleTrackinginVideoSequencesofInner-CityIntersections.InternationalJournalofComputerVision,2008,80(2):211-225.多目标跟踪方法研究综述 苏州联讯图创软件有限责任公司 陈宁强 [摘要]文章对目前现有的多目标跟踪方法从信息获取的不同角度进行了综述。主要分析比较了目前单视点和多视点目标跟踪方 法对于目标遮挡问题的处理性能,并指出多视点的基于多源信息融合的思想,可以较好地解决场景中目标的遮挡问题。[关键词]单视点多视点目标跟踪信息融合基金项目:本文系江苏省自然科学基金(BK2009593)。 作者简介:陈宁强(1973-),男,江苏苏州人,工程师,主要研究方向:GIS、模式识别和图像处理与分析。 目标跟踪多目标标记与分离 匹配 目标模型 运动检测当前帧图像 背景提取 去噪 ROI 预处理 视频序列 (下转第26页)

常见图像边缘检测算法检测

不同图像灰度不同,边界处一般会有明显的边缘,利用此特征可以分割图像。需要说明的是:边缘和物体间的边界并不等同,边缘指的是图像中像素的值有突变的地方,而物体间的边界指的是现实场景中的存在于物体之间的边界。有可能有边缘的地方并非边界,也有可能边界的地方并无边缘,因为现实世界中的物体是三维的,而图像只具有二维信息,从三维到二维的投影成像不可避免的会丢失一部分信息;另外,成像过程中的光照和噪声也是不可避免的重要因素。正是因为这些原因,基于边缘的图像分割仍然是当前图像研究中的世界级难题,目前研究者正在试图在边缘提取中加入高层的语义信息。 在实际的图像分割中,往往只用到一阶和二阶导数,虽然,原理上,可以用更高阶的导数,但是,因为噪声的影响,在纯粹二阶的导数操作中就会出现对噪声的敏感现象,三阶以上的导数信息往往失去了应用价值。二阶导数还可以说明灰度突变的类型。在有些情况下,如灰度变化均匀的图像,只利用一阶导数可能找不到边界,此时二阶导数就能提供很有用的信息。二阶导数对噪声也比较敏感,解决的方法是先对图像进行平滑滤波,消除部分噪声,再进行边缘检测。不过,利用二阶导数信息的算法是基于过零检测的,因此得到的边缘点数比较少,有利于后继的处理和识别工作。 各种算子的存在就是对这种导数分割原理进行的实例化计算,是为了在计算过程中直接使用的一种计算单位 1.Sobel算子 其主要用于边缘检测,在技术上它是以离散型的差分算子,用来运算图像亮度函数的梯度的近似值, Sobel算子是典型的基于一阶导数的边缘检测算子,由于该算子中引入了类似局部平均的运算,因此对噪声具有平滑作用,能很好的消除噪声的影响。Sobel算子对于象素的位置的影响做了加权,与Prewitt算子、Roberts算子相比因此效果更好。 Sobel算子包含两组3x3的矩阵,分别为横向及纵向模板,将之与图像作平面卷积,即可分别得出横向及纵向的亮度差分近似值。实际使用中,常用如下两个模板来检测图像边缘。

相关文档
最新文档