1. 简介

TLD目标跟踪算法是Tracking-Learning-Detection算法的简称。这个视频跟踪算法框架由英国萨里大学的一个捷克籍博士生Zdenek Kalal提出。TLD将传统的视频跟踪算法的跟踪模块(Tracker)与检测模块(Detector)结合起来,同时加入了学习(Learning)的过程,使得跟踪的效果更佳稳定、可靠。目前算法作者Zdenek Kalal已经拿着这个算法开了公司,最新的版本已经更新到TLD 2.1。在github上作者给出了TLD源码的1.0版本。作者的开源代码是基于matlab的,也有人给出了c++实现,但是运行速度非常慢。

什么是跟踪模块(Tracker)与检测模块(Detector)呢?说白了,Tracker就是根据目标物体在视频流前面的帧中的位置,来预测其在当前帧中的位置;Detector就是在当前帧中根据目标物体的先验信息(形状色彩/灰度、各种特征等),来检测目标物体在当前帧中的位置。作者在2011年发表的文章中Tracker使用的是median flow tracker,detector则是一个级联分类器。对于当前帧i,通过Integrator将tracker与detector的输出结果进行判断整合,最终输出一个目标物体的位置,或者目标物体在i中不存在。TLD算法的突破在于其Learning模块,在不断预测的过程中不断更新正、负样本库,用于后续帧中目标物体的位置检测。

Zdenek Kalal自己录制了TLD算法的演示视频,效果很赞。在成功编译TLD源码并在一些视频跟踪的数据库中运行后发现TLD的跟踪效果确实很不错,并实现了实时跟踪。

2. 源码编译

编译环境: win7 64 bit, matlab2014b, visual studio 2012 64bit compiler,  opencv2.4.11

编译过程参考作者源码的wiki

若遇到问题有可能是下面几种情况:

  a. opencv环境变量的设置问题

  --solution:系统环境变量PATH中添加 C:\opencv2.4.11\opencv\build\x64\vc12\bin (设置为自己opencv的安装路径,注销计算机使得环境变量生效)

  b. compile.m中libpath与include的配置问题

  --solution:配置参考下面的图片(注意libpath与include最后一定要添加反斜杠!)

  

  c. 提示没有FSPECIAL函数

  --solution:更改为fspecial

3. TLD算法流程图:

TLD目标跟踪算法的更多相关文章

  1. Video Target Tracking Based on Online Learning—TLD单目标跟踪算法详解

    视频目标跟踪问题分析         视频跟踪技术的主要目的是从复杂多变的的背景环境中准确提取相关的目标特征,准确地识别出跟踪目标,并且对目标的位置和姿态等信息精确地定位,为后续目标物体行为分析提供足 ...

  2. TLD视觉跟踪算法(转)

    源:TLD视觉跟踪算法 TLD算法好牛逼一个,这里有个视频,是作者展示算法的效果,http://www.56.com/u83/v_NTk3Mzc1NTI.html.下面这个csdn博客里有人做的相关总 ...

  3. 基于MeanShift的目标跟踪算法及实现

    这次将介绍基于MeanShift的目标跟踪算法,首先谈谈简介,然后给出算法实现流程,最后实现了一个单目标跟踪的MeanShift算法[matlab/c两个版本] csdn贴公式比较烦,原谅我直接截图了 ...

  4. paper 140:TLD视觉跟踪算法(超棒)

    我是看了这样的一个视频:http://www.56.com/u83/v_NTk3Mzc1NTI.html 然后在准备针对TLD视觉跟踪算法来个小的总结. 以下博文转自:http://blog.csdn ...

  5. 挑战目标跟踪算法极限,SiamRPN系列算法解读

    商汤科技智能视频团队首次开源其目标跟踪研究平台 PySOT.PySOT 包含了商汤科技 SiamRPN 系列算法,以及刚被 CVPR2019 收录为 Oral 的 SiamRPN++.此篇文章将解读目 ...

  6. TLD(Tracking-Learning-Detection)一种目标跟踪算法

    原文:http://blog.csdn.net/mysniper11/article/details/8726649 视频介绍网址:http://www.cvchina.info/2011/04/05 ...

  7. 目标跟踪算法meanshift优缺点

    原博主:http://blog.csdn.net/carson2005/article/details/7341051 meanShift算法用于视频目标跟踪时,采用目标的颜色直方图作为搜索特征,通过 ...

  8. TLD视觉跟踪算法

    TLD算法好牛逼一个,这里有个视频,是作者展示算法的效果,http://www.56.com/u83/v_NTk3Mzc1NTI.html.下面这个csdn博客里有人做的相关总结,感觉挺好的,收藏了! ...

  9. 视觉目标跟踪算法——SRDCF算法解读

    首先看下MD大神2015年ICCV论文:Martin Danelljan, Gustav Häger, Fahad Khan, Michael Felsberg. "Learning Spa ...

随机推荐

  1. Java 动态代理作用是什么?

    Java 动态代理作用是什么?   1 条评论 分享   默认排序按时间排序 19 个回答 133赞同反对,不会显示你的姓名 Intopass 程序员,近期沉迷于动漫ING 133 人赞同 ① 首先你 ...

  2. iOS 单例的销毁

    今天做项目的时候,对于不同的用户,需要创建不同的数据库.但是退出登录切换账号时,因为用单例创建数据,导致切换账号不会切换数据.所以,需要销毁单例.销毁单例时,调用以下的代码: 在创建单例的那个类中,调 ...

  3. linux启动时文件系统错误问题

    linux开机启动时,文件系统错误(磁盘有坏轨或文件系统出现错误)   原因:        1.系统运行时,突然断电或不正常关机,导致文件系统错误(文件系统错误并不是硬件错误,而是软件数据的问题)  ...

  4. 无限分页//////////////zz

    由于网页的执行都是单线程的,在JS执行的过程中,页面会呈现阻塞状态.因此,如果JS处理的数据量过大,过程复杂,可能会造成页面的卡顿.传统的数据展现都以分页的形式,但是分页的效果并不好,需要用户手动点击 ...

  5. Windows Phone 五、配置存储

    基本存储形式 本地设置:ApplicationData.Current.LocalSettings 漫游设置:ApplicationData.Current.RoamingSettings 支持的数据 ...

  6. 电脑安装Android4.0虚拟机的做法

    在开始教程之前,先给大家展示一下成功运行Android 4.0虚拟机的界面,经过笔者测试,体验很流畅,喜欢DIY和对开发感兴趣的朋友们可以猛击下一页,继续浏览教程. 准备工作 在体验前我们首先要下载J ...

  7. JNI ReferenceTable overflow

    今天在小米设备上遇到如下问题 10-15 17:04:36.899: W/dalvikvm(2767): ReferenceTable overflow (max=512) 10-15 17:04:3 ...

  8. spring " expected single matching bean but found 2" 问题一例。

    初入java,使用spring时遇到一个问题,左边是一个接口和实现.右边是service和实现. @Service@Transactional(rollbackFor = Exception.clas ...

  9. spring中用到哪些设计模式

    1.工厂模式,这个很明显,在各种BeanFactory以及ApplicationContext创建中都用到了: 2.模版模式,这个也很明显,在各种BeanFactory以及ApplicationCon ...

  10. 采用重写tostring方法使ComboBox显示对象属性

    当ComboBox中添加的是对象集合的时候,如果运行就会发现显示是的命令空间.类名,而如果我们想显示对象属性名的时候,我们就可以在对象类中重写object基类中的tostring方法.