视频跟踪学习——TLD

2024-01-12 12:18
文章标签 视频 学习 跟踪 tld

本文主要是介绍视频跟踪学习——TLD,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

原文地址:http://blog.sina.com.cn/s/blog_5eeed69d01018wdq.html          作者:扁豆笑了

点击打开链接


再看了好多对tld研究的文章之后我总算把文章的全貌弄懂了。至于代码我还没有完全弄懂由于自己的matlab基础比较薄弱,matlab与C++混合编程不是特别精通,所以,在别人理解的基础之上,看了好多遍原文,总算能清楚文正的结构了。当然理解只是自己的,肯定存在遗漏和不准确的地方,还望牛人指导。

 

TLD主要就是三个部分的内容,跟踪,学习,检测。三者在TLD工作的时候同时交替进行。 

 

1. 跟踪部分

作者采用的算法是基于Median_Flow的跟踪失败检测算法。所谓Median_Flow就是采用Lucas-Kanade光流跟踪,文中作者选取10个点使用两层金字塔光流发跟踪,然后用对应的10*10的点表示10*10的patches,对跟踪结果采用Forward-Background做反馈,求FBerror的结果与原始结果位置的欧氏距离。把距离大于50%的结果舍弃。

光流法的跟踪前提是目标是可见的,并且不会消失在镜头之中。为了防止目标过快移动或者物体遮挡而引起的目标跟踪失败,作者定义了跟踪失败的检测算法:令di地表中值流跟踪中的某一特征点的位移,dm为所有特重点的位移的中值,残差|di-dm|>10pixes,这认为该跟踪是失败的。10pixes的选取也是经验值,没有严格界定。

 

2. 检测部分

检测部分作者也是分为三个部分检图像区方差检测模块、分类器集合显示模块、最邻近分类器。这三个部分是按着先后顺序来的。

  • 方差检测模块。

在整个TLD的模块中作者把方差看作是一个常数,即该模块中凡是灰度值变化小于50%就可以用到下一步的集合分类检测器。变化大于50%的部分就可以完全拒绝检测(比如天空、大地等)。

  • 集合分类器

集合分类器的基础是Random-fern。计算每一个fern的后验概率的均值,若均值大于0.5,则进行到下一步的检测,即NN检测。

  • NN检测

在经过前两步的处理之后,还存在一些不能判断的像素边框。NN检测中Sr大于θNN

Sr =S+/S++S-,θNN=0.6,事实上,θNN的取值只是一个经验值,取值在0.5~0.7之间的效果是一样的。

 

3. 学习部分

参考论文:P-N Learning: Bootstrapping Binary Classifiers by Structural Constraints

学习主要初始化第一帧,并且在检测过程同通过P-N learning方法对检测器进行更新

要弄懂TLD,还必须弄懂作者的P-N Learning,我是反复多了好多遍,中间还有好多没有弄懂,还望高手指导。



这篇关于视频跟踪学习——TLD的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/597841

相关文章

Unity新手入门学习殿堂级知识详细讲解(图文)

《Unity新手入门学习殿堂级知识详细讲解(图文)》Unity是一款跨平台游戏引擎,支持2D/3D及VR/AR开发,核心功能模块包括图形、音频、物理等,通过可视化编辑器与脚本扩展实现开发,项目结构含A... 目录入门概述什么是 UnityUnity引擎基础认知编辑器核心操作Unity 编辑器项目模式分类工程

Python学习笔记之getattr和hasattr用法示例详解

《Python学习笔记之getattr和hasattr用法示例详解》在Python中,hasattr()、getattr()和setattr()是一组内置函数,用于对对象的属性进行操作和查询,这篇文章... 目录1.getattr用法详解1.1 基本作用1.2 示例1.3 原理2.hasattr用法详解2.

SQL Server跟踪自动统计信息更新实战指南

《SQLServer跟踪自动统计信息更新实战指南》本文详解SQLServer自动统计信息更新的跟踪方法,推荐使用扩展事件实时捕获更新操作及详细信息,同时结合系统视图快速检查统计信息状态,重点强调修... 目录SQL Server 如何跟踪自动统计信息更新:深入解析与实战指南 核心跟踪方法1️⃣ 利用系统目录

Python使用OpenCV实现获取视频时长的小工具

《Python使用OpenCV实现获取视频时长的小工具》在处理视频数据时,获取视频的时长是一项常见且基础的需求,本文将详细介绍如何使用Python和OpenCV获取视频时长,并对每一行代码进行深入解析... 目录一、代码实现二、代码解析1. 导入 OpenCV 库2. 定义获取视频时长的函数3. 打开视频文

Go学习记录之runtime包深入解析

《Go学习记录之runtime包深入解析》Go语言runtime包管理运行时环境,涵盖goroutine调度、内存分配、垃圾回收、类型信息等核心功能,:本文主要介绍Go学习记录之runtime包的... 目录前言:一、runtime包内容学习1、作用:① Goroutine和并发控制:② 垃圾回收:③ 栈和

Android学习总结之Java和kotlin区别超详细分析

《Android学习总结之Java和kotlin区别超详细分析》Java和Kotlin都是用于Android开发的编程语言,它们各自具有独特的特点和优势,:本文主要介绍Android学习总结之Ja... 目录一、空安全机制真题 1:Kotlin 如何解决 Java 的 NullPointerExceptio

重新对Java的类加载器的学习方式

《重新对Java的类加载器的学习方式》:本文主要介绍重新对Java的类加载器的学习方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1、介绍1.1、简介1.2、符号引用和直接引用1、符号引用2、直接引用3、符号转直接的过程2、加载流程3、类加载的分类3.1、显示

Java学习手册之Filter和Listener使用方法

《Java学习手册之Filter和Listener使用方法》:本文主要介绍Java学习手册之Filter和Listener使用方法的相关资料,Filter是一种拦截器,可以在请求到达Servl... 目录一、Filter(过滤器)1. Filter 的工作原理2. Filter 的配置与使用二、Listen

基于Python和MoviePy实现照片管理和视频合成工具

《基于Python和MoviePy实现照片管理和视频合成工具》在这篇博客中,我们将详细剖析一个基于Python的图形界面应用程序,该程序使用wxPython构建用户界面,并结合MoviePy、Pill... 目录引言项目概述代码结构分析1. 导入和依赖2. 主类:PhotoManager初始化方法:__in

用js控制视频播放进度基本示例代码

《用js控制视频播放进度基本示例代码》写前端的时候,很多的时候是需要支持要网页视频播放的功能,下面这篇文章主要给大家介绍了关于用js控制视频播放进度的相关资料,文中通过代码介绍的非常详细,需要的朋友可... 目录前言html部分:JavaScript部分:注意:总结前言在javascript中控制视频播放