比微软kinect更强的视频跟踪算法--TLD跟踪算法介绍

转自:http://blog.csdn.net/carson2005/article/details/7647500

TLD(Tracking-Learning-Detection)是英国萨里大学的一个捷克籍博士生在其攻读博士学位期间提出的一种新的单目标长时间(long term tracking)跟踪算法。该算法与传统跟踪算法的显著区别在于将传统的跟踪算法和传统的检测算法相结合来解决被跟踪目标在被跟踪过程中发生的形变、部分遮挡等问题。同时,通过一种改进的在线学习机制不断更新跟踪模块的“显著特征点”和检测模块的目标模型及相关参数,从而使得跟踪效果更加稳定、鲁棒、可靠。

对于长时间跟踪而言,一个关键的问题是:当目标重新出现在相机视野中时,系统应该能重新检测到它,并开始重新跟踪。但是,长时间跟踪过程中,被跟踪目标将不可避免的发生形状变化、光照条件变化、尺度变化、遮挡等情况。传统的跟踪算法,前端需要跟检测模块相互配合,当检测到被跟踪目标之后,就开始进入跟踪模块,而此后,检测模块就不会介入到跟踪过程中。但这种方法有一个致命的缺陷:即,当被跟踪目标存在形状变化或遮挡时,跟踪就很容易失败;因此,对于长时间跟踪,或者被跟踪目标存在形状变化情况下的跟踪,很多人采用检测的方法来代替跟踪。该方法虽然在某些情况下可以改进跟踪效果,但它需要一个离线的学习过程。即:在检测之前,需要挑选大量的被跟踪目标的样本来进行学习和训练。这也就意味着,训练样本要涵盖被跟踪目标可能发生的各种形变和各种尺度、姿态变化和光照变化的情况。换言之,利用检测的方法来达到长时间跟踪的目的,对于训练样本的选择至关重要,否则,跟踪的鲁棒性就难以保证。

考虑到单纯的跟踪或者单纯的检测算法都无法在长时间跟踪过程中达到理想的效果,所以,TLD方法就考虑将两者予以结合,并加入一种改进的在线学习机制,从而使得整体的目标跟踪更加稳定、有效。

简单来说,TLD算法由三部分组成:跟踪模块、检测模块、学习模块;如下图所示

其运行机制为:检测模块和跟踪模块互补干涉的并行进行处理。首先,跟踪模块假设相邻视频帧之间物体的运动是有限的,且被跟踪目标是可见的,以此来估计目标的运动。如果目标在相机视野中消失,将造成跟踪失败。检测模块假设每一个视帧都是彼此独立的,并且根据以往检测和学习到的目标模型,对每一帧图片进行全图搜索以定位目标可能出现的区域。同其它目标检测方法一样,TLD中的检测模块也有可能出现错误,且错误无非是错误的负样例和错误的正样例这两种情况。而学习模块则根据跟踪模块的结果对检测模块的这两种错误进行评估,并根据评估结果生成训练样本对检测模块的目标模型进行更新,同时对跟踪模块的“关键特征点”进行更新,以此来避免以后出现类似的错误。TLD模块的详细;流程框图如下所示:

在详细介绍TLD的流程之前,有一些基本知识和基本概念需要予以澄清:

基本知识:

PN学习:http://blog.csdn.net/carson2005/article/details/7483027

在任意时刻,被跟踪目标都可以用其状态属性来表示。该状态属性可以是一个表示目标所在位置、尺度大小的跟踪框,也可以是一个标识被跟踪目标是否可见的标记。两个跟踪框的空间域相似度是用重叠度(overlap)来度量,其计算方法是两个跟踪框的交集与两者并集的商。目标的形状采用图像片(image patch,个人认为,可以理解为滑动窗口)p来表示,每一个图像片都是从跟踪框内部采样得到的,并被归一化到15*15的大小。两个图相片,

from: http://blog.csdn.net/yangtrees/article/details/7680904

时间: 2024-10-05 19:20:45

比微软kinect更强的视频跟踪算法--TLD跟踪算法介绍的相关文章

创建功能更强的类型

抽象的过程 *计算机的工作是建立在抽象的基础上. -机器语言和汇编语言是对机器硬件的抽象 -高级语言是对汇编语言和机器语言的抽象 *现有抽象的问题: -要求程序员按计算机的结构去思考,而不是按要解决的问题的结构去思考. -当程序员要解决一个问题时,必须要在机器模型和实际要解决的问题模型之间建立联系. -而计算机的结构本质上还是为了支持计算,当要解决一些非计算问题时,这个联系的建立是很困难的 面向对象的程序设计 *为程序员提供了创建工具的功能 *解决一个问题时 -程序员首先考虑的是需要哪些工具 -

STM32的Cortex-M3核与ARM7有何区别?哪个性能更强?

STM32的Cortex-M3核与ARM7有何区别?哪个性能更强?,布布扣,bubuko.com

JcJc对政府网站公文错别字识别的能力更强了

JcJc对政府网站公文错别字识别的能力更强了 最近一直在忙着改进JcJc错别字检查软件的识别准确度, 特别是应客户的要求添加了对政府网站公文内容的检查. 说实话,做错别字检查这么长时间,深刻体会到文章中被查出错别字的苦衷. 拼音输入法,五笔输入法都会产生错别字.大家平常工作都很忙,如果不是有任务在头上,谁也不会,对着文章看好几遍. 报社.杂志因为有专业的岗位负责校对,所以从流程上会降低错别字出现的概率. 可是政府网站你总不能设立类似的岗位吧? 今天太晚了, 先上个图吧,大家看看效果:   htt

利用pyinotify监控文件内容,像tailf命令但比它更强

Linux的tail/tailf命令使用了内核提供的inotify功能,下面的Python例子也使用inotify实现比tail/tailf更强的监控文件功能. watchfile.py #!/usr/bin/python import sys, os, pyinotify notifier = None monfile = None lastsize = 0 wm = None wd = 0 def roll_file(filename): global lastsize fd = os.op

马云最新发言:让员工、客户、合作伙伴比自己更强

在10月25日举行的第三届世界浙商大会在浙江举行,阿里巴巴董事局主席.浙商总会首任会长马云做主旨演讲表示,从强我变成利他思想,是21世纪企业必须要有的素质,你要让你的员工比你聪明.比你更了解信息和数据.让你的员工有更强的能力,让你的客户.合作伙伴更强. 等到30年后,你再回头看看.我的好处在于,我们公司其他人在干活,而我是在胡思乱想. 第三届世界浙商大会_马云 以下为演讲内容: 感谢大家的信任,当了“官”(浙商总会会长),我上一次当官是1985年,杭州师范学院的学生会主席.这两个“官”,在我看来

面对失败与困境保持更强的韧性

1 曾经我的字很丑,而且是那种"天下谁人能识君"的丑. 初中的时候,老师提名班里写字最"狂野"的四个人,并给他们颁奖"四大草书大王".我遗憾落选,因为老师觉得我的字已经脱离了文字的范畴,仓颉再生都无法作出评判,做到了真正意义上的"鬼斧神工". 同学们经常拿这个和我开玩笑,老师也屡次劝我改"写"归正. 当然,最为光火的便是我老爸,他始终认为字如其人,一个人的字迹完全可以代表他的精神气质与生活态度.我觉得这压根

【特别推荐】   女人的欲望比男人更强这就是婚姻 情家缘——有缘有情共爱一个家 一起脱单吧

男人不需要能力很强,但必须有保护妻儿的本事3,一个女强人的老公,必定是个普通人.[推荐文章]爱情的期待与不安[推荐文章]男人未从心里接受女人的11个表现[特别推荐]20条驭夫心经让老公服服帖帖 2,一个泼妇型的女人,她背后的男人,也许就那种不善言语的老实人.后来会离婚,说是「看走眼」.沧桑的女人,日夜为生计奔波,为了儿女的学费,为了老人的养老费而省吃俭用,更舍不得为自已买几件象样的衣裳.日子过的清苦和辛酸.[特别推荐]21个你不懂的床上秘密[推荐文章]八个妙招助夫妻房事更加激情4,一个为钱奔命的

想让无线覆盖信号更强吗?

如今,无线网络技术已经蔓延到人们生活的方方面面.各行各业都与无线覆盖带来的便利密不可分.甚至许多家庭使用无线网卡和无线路由器来建立家庭局域网.但是,使用无线路由器建立网络将极大地影响数据传输信号.如果信号强度不够大,所使用的无线网络的数据传输效率将不可避免地变慢,尽管上述提示将使无线网络信号强度有一定程度.改进,但路由器本身的实际发射功率是决定性因素.因此,在无线AP部署时,很容易出现一些常见故障,那么如何避免和解决这些故障,是否要使无线覆盖信号更强?我们必须掌握一些最基本的无线AP部署问题.

更强的 JsonPath 兼容性及性能测试

更强的 JsonPath 兼容性及性能测试 最近给自己的json框架snack3添加了json path支持.搞好之后,找了两个市面上流行框架比较性测试,以助自己改进框架的性能和兼容性. 测了一圈之后,发现snack3兼容性良好,性能更是最好的.晚上要喝点小酒庆祝一下!!! 免责声明:我也是个java新手,可能测试得方式不对而造成不科学的结果,可以留言指出来.以下测试数值只对我的电脑有效(配置:Macbook pro 13 2018款 i7+16G+512G). Snack3 借签了 Javas