【达摩院OpenVI】视频目标渐进式Transformer跟踪器ProContEXT

news2024/11/16 19:39:31

论文&代码

  • 论文链接:[arxiv]
  • 代码&应用:
    • 开源代码:[github code]
    • 开源应用:[modelscope]

背景介绍

视频目标跟踪(Video Object Tracking, VOT)任务以一段视频和第一帧中待跟踪目标的位置信息(矩形框)作为输入,在后续视频帧中预测该跟踪目标的精确位置。该任务对跟踪目标的类别没有限制,目的在于跟踪感兴趣的目标实例。该算法在学术界和工业界都是非常重要的一个研究课题,在自动驾驶、人机交互、视频监控领域都有广泛应用。

由于输入视频的多样性,目标跟踪算法需要适应诸如尺度变化、形状变化、光照变化、遮挡等诸多挑战。特别是在待跟踪目标外观变化剧烈、周围存在相似物体干扰的情况下,跟踪算法的精度往往急剧下降,甚至出现跟踪失败的情况。如图1所示,对于一个输入视频,待跟踪跟踪物体(红色虚线圆)会随着时间而产生剧烈变化,相比于初始帧中的目标外观,待跟踪帧中的目标外观会与中间帧的目标外观更相似,因此中间帧的目标外观形态是一个非常好的时域上下文信息。另外,对于跟踪过程中目标物体周围的空域上下文信息对算法鉴别相似物体和干扰背景有很大的帮助。

图1 上下文信息在跟踪过程中发挥着重要作用

方法介绍

最近,一些基于Transformer网络的视频目标跟踪算法,比如OSTrack[1], MixFormer[2], STARK[3]等,展现了较高的算法精度,基于之前的研究工作,本文提出了ProContEXT(Progressive Context Encoding Transformer Tracker),把时域上下文信息和空域上下文信息共同引入到Transformer网络中。

ProContEXT的整体结构如图2所示,该方法具有如下的特点:

图2 ProContEXT的整体结构
  1. ProContEXT是一种渐进式上下文感知的Transformer跟踪器,在Transfomer跟踪器中利用了动态的时域信息和多样的空域信息进行特征提取,从而能获得更加鲁邦的跟踪特征。
  2. ProContEXT通过改进ViT主干网络,在输入中增加了多尺度静态模板(static templates)和多尺度动态模板(dynamic templates),并通过上下文感知的自注意力机制模块充分利用视频跟踪过程中目标的时域上下文和空域上下文信息。通过渐进式的模板优化和更新机制,跟踪器能快速适应目标的外观变化。
  3. ProContEXT在多个公开数据集中(TrackingNet和GOT-10k)获得SOTA性能,并且运行效率完全达到实时要求,速度为54.3FPS.

实验结果

本文基于TrackingNet和GOT-10k数据集进行算法实验,完全遵守各数据集的使用准则。

SOTA对比

首先,与目前SOTA方法的对比如下表所示,ProContEXT在TrackingNet数据集和在GOT-10K数据集均超过对比的算法,达到SOTA精度。

表1 与SOTA对比

消融实验

本文对静态模板数目进行了消融实验,结果如下表所示,当使用2个静态模板时,效果最佳。表中实验数据说明当使用更多静态模板数目时,会引入冗余信息,导致跟踪效果下降。

表2 静态模板数目消融实验

另外,对动态模板的数目和尺度也进行了消融实验,结果如下表所示,当加入动态模板时,跟踪算法精度均有提升,并且使用两个尺度的动态模板比只使用单个尺度算法精度有进一步提升。

表3 动态模板消融实验

最后,对于算法中使用到的令牌修剪模块中的超参也进行了探索,实验结果如下表所示,当参数为0.7时达到算法精度和效率的最加平衡。

表4 令牌修剪模块消融实验

模型传送门

视频跟踪模型:

  • 视频单目标跟踪ProContEXT:https://modelscope.cn/models/damo/cv_vitb_video-single-object-tracking_procontext/summary
  • 视频单目标跟踪OSTrack:https://modelscope.cn/models/damo/cv_vitb_video-single-object-tracking_ostrack/summary
  • 视频多目标跟踪FairMOT:https://modelscope.cn/models/damo/cv_yolov5_video-multi-object-tracking_fairmot/summary

检测相关模型:

  • 实时目标检测模型YOLOX:https://modelscope.cn/models/damo/cv_cspnet_image-object-detection_yolox/summary
  • 高精度目标检测模型DINO:https://modelscope.cn/models/damo/cv_swinl_image-object-detection_dino/summary
  • 实时目标检测模型DAMO-YOLO:https://modelscope.cn/models/damo/cv_tinynas_object-detection_damoyolo/summary
  • 垂直行业目标检测模型:https://modelscope.cn/models?page=1&tasks=vision-detection-tracking%3Adomain-specific-object-detection&type=cv

关键点相关模型:

  • 2D人体关键点检测模型-HRNet: https://modelscope.cn/models/damo/cv_hrnetv2w32_body-2d-keypoints_image/summary
  • 2D人脸关键点检测模型-MobileNet:https://modelscope.cn/models/damo/cv_mobilenet_face-2d-keypoints_alignment/summary
  • 2D手部关键点检测模型-HRNet:https://modelscope.cn/models/damo/cv_hrnetw18_hand-pose-keypoints_coco-wholebody/summary
  • 3D人体关键点检测模型-HDFormer:https://modelscope.cn/models/damo/cv_hdformer_body-3d-keypoints_video/summary
  • 3D人体关键点检测模型-TPNet:https://modelscope.cn/models/damo/cv_canonical_body-3d-keypoints_video/summary

智能通行模型:

  • https://modelscope.cn/models/damo/cv_ddsar_face-detection_iclr23-damofd/summary
  • https://modelscope.cn/models/damo/cv_resnet50_face-detection_retinaface/summary
  • https://modelscope.cn/models/damo/cv_resnet101_face-detection_cvpr22papermogface/summary
  • https://modelscope.cn/models/damo/cv_manual_face-detection_tinymog/summary
  • https://modelscope.cn/models/damo/cv_manual_face-detection_ulfd/summary
  • https://modelscope.cn/models/damo/cv_manual_face-detection_mtcnn/summary
  • https://modelscope.cn/models/damo/cv_resnet_face-recognition_facemask/summary
  • https://modelscope.cn/models/damo/cv_ir50_face-recognition_arcface/summary
  • https://modelscope.cn/models/damo/cv_manual_face-liveness_flir/summary
  • https://modelscope.cn/models/damo/cv_manual_face-liveness_flrgb/summary
  • https://modelscope.cn/models/damo/cv_manual_facial-landmark-confidence_flcm/summary
  • https://modelscope.cn/models/damo/cv_vgg19_facial-expression-recognition_fer/summary
  • https://modelscope.cn/models/damo/cv_resnet34_face-attribute-recognition_fairface/summary

更多模型详见 ModelScope 主页。

检测套件开发工具

ModelScope社区视觉检测开发套件AdaDet已发布。

参考文献

  • [1] Ye B, Chang H, Ma B, et al., “Joint feature learning and relation modeling for tracking: A one-stream framework”, in ECCV 2022, pp. 341-357.
  • [2] Cui Y, Jiang C, Wang L, et al., “Mixformer: End-to-end tracking with iterative mixed attention”, in CVPR 2022, pp. 13608-13618.
  • [3] Yan B, Peng H, Fu J, et al., “Learning spatio-temporal transformer for visual tracking”, in ICCV 2021, pp. 10448-10457.

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/452288.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

为什么使用了索引,查询还是慢?

🏆今日学习目标: 🍀为什么使用了索引,查询还是慢? ✅创作者:林在闪闪发光 ⏰预计时间:30分钟 🎉个人主页:林在闪闪发光的个人主页 🍁林在闪闪发光的个人社区&…

一、适配各大数据库之前言

一、适配各大数据库之前言 简介 本系列主要记录基于【用户权限服务】(一个SpringBoot服务的名称,不重要,只要是web项目都可以,为了方便描述,以下就简称 “用户中心”),适配各大数据库的过程,其中包括SQL Server、Oracle、PostgreSql、达梦、金仓、MYSQL等等,其次还记…

Docker容器---docker-compose

docker容器---compose容器集群的快速编排 一、Docker-compose简介二、yml文件格式及编写注意事项1、yml文件格式2、yml文件格式注意事项 三、编写docker-compose( nginxtomcat 实例)1、dockerfile撰写 nginx 镜像2、dockerfile撰写 tomcat 镜像3、将所需…

基于html+css的图片展示32

准备项目 项目开发工具 Visual Studio Code 1.44.2 版本: 1.44.2 提交: ff915844119ce9485abfe8aa9076ec76b5300ddd 日期: 2020-04-16T16:36:23.138Z Electron: 7.1.11 Chrome: 78.0.3904.130 Node.js: 12.8.1 V8: 7.8.279.23-electron.0 OS: Windows_NT x64 10.0.19044 项目…

java 7大设计原则

一、设计模式七大原则 设计模式的目的 代码重用性 (即:相同功能的代码,不用多次编写)可读性 (即:编程规范性, 便于其他程序员的阅读和理解)可扩展性 (即:当需要增加新的功能时,非常的方便,称为可维护)可靠…

关于今年五一调休。。

作者主页:爱笑的男孩。的博客_CSDN博客-深度学习,YOLO,活动领域博主爱笑的男孩。擅长深度学习,YOLO,活动,等方面的知识,爱笑的男孩。关注算法,python,计算机视觉,图像处理,深度学习,pytorch,神经网络,opencv领域.https://blog.csdn.net/Code_and516?typecollect个人…

Spring5学习总结(三)JdbcTemplate实现数据库增删改查操作JdbcTemplate实现批量增删改操作

Spring5学习总结(三)JdbcTemplate实现数据库增删改查操作/JdbcTemplate实现批量增删改操作 一、JdbcTemplate概述 什么是 JdbcTemplate? JdbcTemplate是Spring 框架对 JDBC 进行的封装,使用它可以更方便实现对数据库的操作。 二…

Redis序列化设置以及jetcache连接Redis序列化的设置

1、问题 问题:我在使用jetchche进行连接redis的时候,存入redis的value一直使用的是redis默认的序列化方式,是使用的jdk序列化。当我使用jetcache向redis存入一个对象 存入redis的结果: 这是使用jdk序列化的结果。 但是我记得使用redis的时候…

密码学期末复习(按考点整理,超详细!!!)

复习目录) 题型第一章密码算法的安全性分类密码分析的难易程度凯撒密码加密原理古典密码中仿射变换的解密变换 第二章流密码的组成和特点流密码的基本思想 第三章分组密码的CBC工作模式,以及该模式的加密示意图AES中字节求逆雪崩效应分组密码的安全设计原…

让HR眼前一亮:30个APP项目软件测试经验,点燃你的简历

在求职过程中,我们都希望自己的简历能够吸引面试官的眼球,从而获得更多的面试机会。作为一名软件测试人员,丰富的实战经验是让自己脱颖而出的关键之一。 在我多年从事APP项目软件测试的工作中,我积累了大量的实践经验&#xff0c…

Java 之 String、StringBuffer与StringBuilder 区别

String String 是被 final 修饰的类,不能被继承;String实现了 Serializable 和Comparable接口,表示String支持序列化和可以比较大小;String底层是通过char类型的数据实现的,并且被final修饰,所以字符串的值…

大数据5--spark

1.Spark 定义:Apache Spark是用于大规模数据(large-scala data)处理的统一(unified)分析引擎。 Spark 是什么 Spark 最早源于一篇论文 Resilient Distributed Datasets: A Fault-Tolerant Abstraction for In-Memory Cluster Computing, 该论文是由加州大学柏克莱…

vue3中其他的变化

1.全局API的转移 Vue 2.x 有许多全局 API 和配置。 - 例如&#xff1a;注册全局组件、注册全局指令等。 //注册全局组件 Vue.component(MyButton, {data: () > ({count: 0}),template: <button click"count">Clicked {{ count }} times.</button> …

微信小程序+wx.connectSocket客服问答

项目需求&#xff0c;记录一下&#xff1a; 1.要求websocket实时返回会话结果 我项目这边是后端一次返回一个字&#xff0c;–finish–结束&#xff0c;所以实现方法是每获取到数据时就setData一次&#xff0c;直到获取到的数据为finish&#xff0c;停止setData 后端返回结果…

Banana Pi BPI-Centi-S3 使用MicroPython编程显示JPG图片

BPI-Centi-S3是我们新推出的一款板载1.9英寸彩屏的小尺寸ESP32-S3开发板&#xff01; BPI-Centi-S3 banana-pi wiki BPI-Centi-S3 bpi-steam wiki 1 关键特性 ESP32-S3&#xff0c;Xtensa 32 bit LX72M PSRAM , 8M FLASH2.4G WIFI &#xff0c;Bluetooth 5 &#xff0c;Blue…

Windows下安装使用Kafka(使用Kafka内置的ZooKeeper)

Windows下安装使用Kafka(使用Kafka内置的ZooKeeper) Kafka2.8版本才开始自带了Zookeeper&#xff0c;所以注意下版本 kafka官网&#xff1a;https://kafka.apache.org kafka配置快速入门&#xff1a;https://kafka.apache.org/quickstart kafka下载页面&#xff1a;https:/…

找出1-1000中的所有完美数

再次练习查找完美数&#xff0c;找出 1-1000 中的所有完美数。 【学习的细节是欢悦的历程】 Python 官网&#xff1a;https://www.python.org/ Free&#xff1a;大咖免费“圣经”教程《 python 完全自学教程》&#xff0c;不仅仅是基础那么简单…… 地址&#xff1a;https://l…

【LeetCode】剑指 Offer 62. 圆圈中最后剩下的数字(约瑟夫环问题) p300 -- Java Version

题目链接&#xff1a;https://leetcode.cn/problems/yuan-quan-zhong-zui-hou-sheng-xia-de-shu-zi-lcof/ 1. 题目介绍&#xff08;62. 圆圈中最后剩下的数字&#xff09; 0,1,,n-1 这n个数字排成一个圆圈&#xff0c;从数字0开始&#xff0c;每次从这个圆圈里删除第m个数字&a…

人工标注或成过去式?SSA语义分割框架、SSA-engine自动类别标注引擎,大幅提升细粒度语义标注效率

推荐语 4月5日&#xff0c;Meta发布 Segment Anything 模型和 SA-1B 数据集&#xff0c;引发CV届“地震”&#xff0c;其凭借一己之力&#xff0c;成功改写了物体检测、数据标注、图像分割等任务的游戏规则。 复旦大学ZVG实验室团队基于此最新开源了SSA语义分割框架和SSA-engin…

javaEE初阶 — Servlet API 详解

文章目录 HttpServlet1 Servlet 的生命周期2 代码示例3 使用 postman 构造请求4 使用 ajax 构造请求 HttpServletRequest1 代码示例 前端如何给后端传参1 通过 GET 里的 query string 传参2 通过 POST 借助 form 表单传参3 通过 json 格式传参 HttpServletResponse1 代码示例1.…