2016视觉目标跟踪总结

2023-11-19

最近学习视觉目标跟踪算法,主要了解了几个主流的跟踪算法,kcf,stc,dsst,算法原理网上很多,这里就不再赘述,只对跟踪效果做了测试记录。

Kcf

全名Kernelized Correlation Filters

其中hog特征用的fhog(Felzenszwalb’s hog,是DPM的作者提出的一种改进的hog)

效果比较好的,题目叫KCF-DSST实际上是kcf,下载地址:

https://github.com/liliumao/KCF-DSST

测试了一下,达到100fps,经过改进后,能达到250fps,算法速度挺快,但是目标快速移动容易跟丢,适合跟踪慢速移动的目标。


Stc

时空上下文跟踪算法,是最近几年出来比较新的跟踪,基友opencv和c++编写,配置好后可以直接运行,跟踪效果理想,对于跟踪一块理解非常好

博文地址:

http://blog.csdn.net/zouxy09/article/details/16889905

文中提出stc一种简单却非常有效的视觉跟踪方法。更迷人的一点是,它速度很快,原作者实现的Matlab代码在i7的电脑上达到350fps

 

下载地址:

http://download.csdn.net/detail/qq_23274769/9531181

我自己在pc上测试了一下,opencv版,一帧需要20ms,也就是50fps,目标快速移动也容易跟丢,但是比kcf效果好一点点。

 

 dsst算法

VOT(视觉目标跟踪大赛)2014竞赛的冠军

DSST(Accurate Scale Estimation for Robust Visual Tracking)在2014年VOT上夺得了第一名,算法简洁,性能优异

源码下载地址:

windows+opencv环境:

http://download.csdn.net/detail/jaoo_f/9311931

跨平台+opencv环境:

https://github.com/klahaag/cf_tracking

这个需要opencv3.0以上版本。

测试了一下,30帧的相机,达到100fps左右。跟踪效果最好,目标快速移动不容易跟丢;跟丢了还可以找回来;目标框越大,匹配速度越快,能到115fps左右

这里重点介绍一下qt配置:

头文件需要添加内部目录:


QMAKE_CXXFLAGS += -std=c++11


INCLUDEPATH += .
INCLUDEPATH += ./main
INCLUDEPATH += ./3rdparty/tclap
INCLUDEPATH += ./3rdparty/cv_ext
INCLUDEPATH += ./3rdparty/piotr
INCLUDEPATH += ./3rdparty/piotr/src
INCLUDEPATH += ./cf_libs/common
INCLUDEPATH += ./cf_libs/dsst
INCLUDEPATH += ./cf_libs/kcf


INCLUDEPATH += /usr/local/include
INCLUDEPATH += /usr/local/include/opencv
INCLUDEPATH += /usr/local/include/opencv2
INCLUDEPATH += /usr/local/include/opencv2/core
INCLUDEPATH += /usr/local/include/opencv2/highgui
INCLUDEPATH += /usr/local/include/opencv2/imgproc
INCLUDEPATH += /usr/local/include/opencv2/imgcodecs
INCLUDEPATH += /usr/local/include/opencv2/flann
INCLUDEPATH += /usr/local/include/opencv2/photo
INCLUDEPATH += /usr/local/include/opencv2/video
INCLUDEPATH += /usr/local/include/opencv2/features2d
INCLUDEPATH += /usr/local/include/opencv2/objdetect
INCLUDEPATH += /usr/local/include/opencv2/calib3d
INCLUDEPATH += /usr/local/include/opencv2/ml
INCLUDEPATH += /usr/local/include/opencv2/contrib
#LIBS += `pkg-config opencv --cflags --libs`
#INCLUDEPATH += /usr/local/include //usr/local/include/opencv //usr/local/include/opencv2
LIBS += /usr/local/lib/libopencv_calib3d.so \
/usr/local/lib/libopencv_core.so.3.0 \
/usr/local/lib/libopencv_features2d.so \
/usr/local/lib/libopencv_flann.so \
/usr/local/lib/libopencv_highgui.so \
/usr/local/lib/libopencv_imgcodecs.so \
/usr/local/lib/libopencv_imgproc.so \
/usr/local/lib/libopencv_ml.so \
/usr/local/lib/libopencv_objdetect.so \
/usr/local/lib/libopencv_photo.so \
/usr/local/lib/libopencv_shape.so \
/usr/local/lib/libopencv_stitching.so \
/usr/local/lib/libopencv_superres.so \
/usr/local/lib/libopencv_videoio.so \
/usr/local/lib/libopencv_video.so \
/usr/local/lib/libopencv_videostab.so
#LIBS += -L/usr/local/lib/ -lopencv_highgui -lopencv_core -lopencv_imgcodecs -lopencv_imgproc -lopencv_objdetect


还有这个:https://github.com/gnebehay/DSST


vs版本的,可以没有sse。

https://github.com/ferzik85/dsst

python 版本的:https://github.com/ugv-tracking/dsst_tracking

备注:程序中使用到HOG特征,因此需要用到Piotr's Toolbox工具箱。

        下载地址可以参考:http://vision.ucsd.edu/~pdollar/toolbox/doc/index.html

        对于32位的机器运行KCF程序需要使用gradientMex.mexw32(作者提供的是64位的),可在这里下载到能在32位机上运行的程序。

这几个项目都用了sse汇编指令加速,如果再arm系统上,就不支持__128浮点运算了。

我们知道,在C/C++代码中,可以插入汇编代码提高性能。现在的指令集有了很多的高级指令,如果我们希望使用这些高级指令来实现一些高效的算法,就可以在代码中嵌入汇编,使用SSE等高级指令,这是可行的,但是如果对汇编不太熟悉,不愿意使用汇编的人来说,其实也是可以的,这就是Compiler Intrinsics(http://msdn.microsoft.com/zh-cn/site/26td21ds)。

MDNet算法

视觉目标跟踪VOT2015竞赛的冠军,学习多域卷积神经网络的视觉跟踪(Learning Multi-Domain Convolutional Neural Networks for Visual Tracking)。代码https://github.com/HyeonseobNam/MDNet

 

这个适合在高端pc或者服务器上跑,不适合在移动端arm上跑。

目前效果好的主要两大类吧,一种基于CNN,一种基于correlation filter,的确效果很不错,但是前者受硬件限制,也受速度限制,后者更轻量级,效果和速度也很赞。
tracking坑快一年了,大牛们速度惊人,这两年发展很迅速。

 


本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

2016视觉目标跟踪总结 的相关文章

  • 目标跟踪2020

    cvpr2022 23 TCTrack Temporal Contexts for Aerial Tracking 空中跟踪的时间上下文 paper code 模型87M cvpr2020大盘点 CVPR 2020 论文大盘点 目标跟踪篇
  • 你应该掌握的七种回归技术

    摘要 本文解释了回归分析及其优势 重点总结了应该掌握的线性回归 逻辑回归 多项式回归 逐步回归 岭回归 套索回归 ElasticNet回归等七种最常用的回归技术及其关键要素 最后介绍了选择正确的回归模型的关键因素 编者按 回归分析是建模和分
  • 多目标跟踪2021总结

    11年it研发经验 从一个会计转行为算法工程师 学过C c java android php go js python CNN神经网络 四千多篇博文 三千多篇原创 只为与你分享 共同成长 一起进步 关注我 给你分享更多干货知识 目录 SOT
  • kcf跟踪算法实例整理

    http blog csdn NET shenxiaolu1984 article details 50905283 本文的跟踪方法效果甚好 速度奇高 思想和实现均十分简洁 其中利用循环矩阵进行快速计算的方法尤其值得学习 另外 作者在主页上
  • Staple 跟踪: Complementary Learners for Real-Time Tracking

    目标跟踪算法 Staple Complementary Learners for Real Time Tracking 小小菜鸟一只 2017 03 25 09 26 42 15110 收藏 14 分类专栏 目标跟踪 版权 文章下载链接 文
  • centertrack

    模型70多m 有torch版dla 此外 CenterTrack 很容易扩展到单目 3D 跟踪 只需恢复额外的 3D 属性即可 以单目视频作为输入 以 28 FPS 运行 CenterTrack 在新发布的 nuScenes 3D 跟踪基准
  • KCF目标跟踪方法分析与总结

    KCF目标跟踪方法分析与总结 两个竖杠是什么数学符号 就是这个 这个符号叫做范数 它事实上是由线性赋范空间到非负实数的映射 在线性赋范空间中 它可以表示空间中的点与原点间的距离 两点间的距离也是用两点之差的范数来表示的 范数所满足的条件有
  • ByteTrack 多目标跟踪 测试笔记

    目录 多目标跟踪2022个人汇总知识 Results on MOT challenge test set ByteTrack 简介 转自知乎 1 Motivation 2 byte原理
  • 相关滤波跟踪(MOSSE)

    相关滤波跟踪 MOSSE 在信号处理中 有这么一个概念 相关性 correlation 用来描述两个因素之间的联系 而相关性又分为cross correlation 互相关 两个信号之间的联系 和auto correlation 自相关 本
  • 基于全连接孪生网络的目标跟踪(siamese-fc)

    Fully Convolutional Siamese Networks for Object Tracking 这两年可以说deeplearning已经占领了visual object tracking这个领域 但是对于跟踪问题来说 这些
  • 目标跟踪算法三:Modeling and Propagating CNNs in a Tree Structure for Visual Tracking (VOT2016冠军)

    目标跟踪算法三 Modeling and Propagating CNNs in a Tree Structure for Visual Tracking VOT2016冠军 文章链接 https arxiv org pdf 1608 07
  • fhog资料整理

    fast hog资料整理 https github com joaofaro FHOG https github com ppaanngggg fhog 这个有两种 1 DPM的 Mat tmp image image convertTo
  • CTracker

    https github com pjl1995 CTracker 本机可以跑 jacke121 CTracker master 可视化 demo show py 效果不是特别好 论文地址 https arxiv org pdf 2007
  • openTLD算法在opencv3的PatchGenerator

    由于opencv3的各种版本相对于opencv2的版本已经改变了很多内容 openTLD跟踪算法所依赖的一些函数在opencv3中已经消失了 为此需要对openTLD进行适当修改才能使之在opencv3的各种版本中运行 加入如下文件 并在对
  • 百度飞浆行人多目标跟踪笔记

    开源地址 PaddleDetection configs mot at release 2 3 PaddlePaddle PaddleDetection GitHub 百度飞浆集成了多目标跟踪的多种算法 地址 PaddleDetection
  • GOTURN——Learning to Track at 100 FPS with Deep Regression Networks

    文章的题目叫 Learning to Track at 100 FPS with Deep Regression Networks 算法简称 GOTURN Generic Object Tracking Using Regression N
  • 检测跟踪分割网络笔记

    模型247 97m GitHub SysCV pcan Prototypical Cross Attention Networks for Multiple Object Tracking and Segmentation NeurIPS
  • SiamMask 测试程序分析

    之前分析了 DaSiamRPN 的测试代码 侧重于执行细节 到了 SiamMask 似乎主题应该有所升华 故事的明线为跟踪器构成 暗线为训练流图 相比于 DaSiamRPN SiamMask 不仅网络结构是现代化的 系统设计也更具匠心 这便
  • ubuntu 使用FFTW快速计算离散傅里叶变换

    FFTW the Faster Fourier Transform in the West 是一个快速计算离散傅里叶变换的标准C语言程序集 其由MIT的M Frigo 和S Johnson 开发 可计算一维或多维实和复数据以及任意规模的DF
  • KCF高速跟踪详解

    思想 一般化的跟踪问题可以分解成如下几步 1 在 It 帧中 在当前位置 pt 附近采样 训练一个回归器 这个回归器能计算一个小窗口采样的响应 2 在 It 1 帧中 在前一帧位置 pt 附近采样 用前述回归器判断每个采样的响应 3 响应最

随机推荐

  • C移植到Java中,byte[]与其他数据类型的转换

    最近在把C代码移植到Java Android 中 C中一般的数据都会使用byte unsigned char 来存储 且位操作特别频繁 我要把这些数据转换成在Java存储 或把byte转换成本语言的其他类型 掉进不少坑 这里 总结下这段时间
  • < 开源项目框架:推荐几个开箱即用的开源管理系统 - 让开发不再复杂 >

    文章目录 SCUI Admin 中后台前端解决方案 Vue NetCore 前后端分离的快速发开框架 next admin 适配移动端 pc的后台模板 django vue admin pro 快速开发平台 Admin NET 通用管理平台
  • copy to clipboard

    export function copyToClipboard textToCopy string if navigator clipboard window isSecureContext secure return navigator
  • ajax调用fastreport,使用Ajax更新ASP.Net MVC项目中的报表对象

    使用Ajax更新ASP Net MVC项目中的报表对象 Ajax技术显著加快了Web应用程序的速度 另外 视觉效果方面也有提升 大家都同意 每次点击按钮时整个页面都会被刷新这一点不太友好 如果你的网速不是很快 那么这个过程会很烦人 因为所有
  • 使用MicroPython开发ESP32(02):库介绍

    文章目录 目的 库基础说明 库列表 Python基础库 嵌入式设备相关库 ESP32特有库 总结 目的 对于Python来说丰富的库是其使用快速简易的关键 这点对于MicroPython也一样 这篇文章就对MicroPython的库做个罗列
  • Python-模块与包(通俗易懂)

    1 模块 1 模块的理解 模块就是一个包含了Python定义和声明的 py 文件 python导入模块默认是从当前目录当前文件查找模块 注意 自定义的python文件的文件名一定不要和已有模块名冲突 定义一个hello py文件 我们可以在
  • 14个SpringBoot优化小妙招,看完后同事说写代码像写诗!

    大家好 我是东哥 每次聊到代码优化 都会有很多人说理论 架构 核心思路 其实我觉得代码优化这事说简单了很简单 说复杂了吧它也有一定的难度 但是我觉得有一个良好的编码习惯很重要 下面分享一下14个springboot项目中优化代码的小技巧 让
  • Python - 我写代码时如果有一行过长该怎么处理?

    Python的编码规范要求每行的长度不超过80 那就就有一个问题 如果我真的需要在一行写80个字符以上的代码怎么办 Python语句都可以很简单的实现把一行分为多行 比如下面这两种写法是等价的 l 1 2 3 4 5 6 l 1 2 3 4
  • 逻辑电平及其相关知识的学习

    最近开始学习通信方面的知识 以问题的形式学习 也以问题的方式展示在这里 由于现在也没有具体的目标 学习深度随缘 任何一个知识点要深究都是一门学科 欢迎批评指正交流 目录 什么是逻辑电平 CMOS是什么意思 TTL是什么意思 逻辑电平的5个基
  • Angular4.0_页面搭建

    开发页面布局 app component hrml
  • 系统架构设计师之软件架构风格

    系统架构设计师之软件架构风格
  • C# Math.Round()四舍五入、四舍六入五成双

    开发者为了实现小数点后 2 位的四舍五入 编写了如下代码 var num Math Round 12 125 2 代码非常的简单 开发者实际得到的结果是12 12 这与其所预期的四舍五入结果12 13相悖 其实产生这个结果的原因是由于Mat
  • 什么是 T-Kernel

    本文译至 http www t engine org what is t kernel 什么 T Kernel T Kernel 实时操作系统是由T Engine论坛开发的用以满足下一代普适计算环境设备性能要求的OS T Engine 是一
  • web designer设计器编译问题

    web designer设计器编译问题 下载地址 https github com xiaoai7904 web designer 开发工具 Visual Studio Code 执行npm install 初次安装编译过程中会出现 dll
  • word工具栏菜单栏隐藏打开的办法

    windows中打开 开始 运行 键入 winword a 然后 确定 即可恢复默认工具栏 重新打开文档
  • [基本功]辛普森悖论

    辛普森悖论是指什么现象 当人们尝试探究两种变量 比如新生录取率与性别 是否具有相关性时 会分别对之进行分组研究 然而 在分组比较中都占优势的一方 在总评中有时反而是失势的一方 上表中 商学院女生录取率为49 lt 男生录取率75 法学院女生
  • 我做了10年的测试,由衷的建议年轻人别入这行了

    两天前 有个做功能测试7年的同事被裁员了 这位老哥已经做到了团队中的骨干了 人又踏实 结果没想到刚刚踏入互联网 老龄化 大关 就被公司给无情优化了 现在他想找同类型的工作 薪资也一直被压 考虑转行转型的话 上升空间又窄 昨天还在指点江山 今
  • 【计算机视觉

    文章目录 一 PASCAL Context 二 DAVIS 2017 三 COCO Stuff Common Objects in COntext stuff 四 RefCOCO 五 CamVid Cambridge driving Lab
  • 7.Xaml Image控件

    1 运行图片 2 运行源码 a xaml源码
  • 2016视觉目标跟踪总结

    最近学习视觉目标跟踪算法 主要了解了几个主流的跟踪算法 kcf stc dsst 算法原理网上很多 这里就不再赘述 只对跟踪效果做了测试记录 Kcf 全名Kernelized Correlation Filters 其中hog特征用的fho