多目标跟踪之(CTracker)Chained-Tracker: Chaining Paired Attentive Regression Results for End-to-End Joint Multiple-Object Detection and Tracking

  • 摘要
  • 引言
    • 论文地址:
    • 源码地址:
    • 声明
    • 环境搭建
    • 准备数据集
    • 训练
    • 测试
  • 相关说明

摘要

现有的多对象跟踪(MOT)方法要么遵循按检测跟踪的范式分别进行对象检测,特征提取和数据关联,要么将三个子任务中的两个集成在一起以形成部分端到端解决方案。除了这些次优框架之外,我们还提出了一个名为Chained-Tracker(CTracker)的简单在线模型,该模型自然将所有三个子任务集成到了端到端解决方案中(据我们所知,这是第一个)。它链接从重叠节点估计的成对的边界框回归结果,其中每个节点覆盖两个相邻的帧。通过对象注意(由检测模块带来)和身份注意(由ID验证模块确保)使成对的回归变得专心。两个主要的新颖性:链式结构和成对的注意力回归使CTracker变得简单,快速和有效,无需依赖任何额外的训练数据即可在MOT16和MOT17挑战数据集(分别为67.6和66.6)上设置新的MOTA记录
(此处为谷歌翻译)

引言

本文是针对该论文在github上代码的一个简单实现,主要介绍一下代码实现的具体步骤,希望能够对读者有一定的帮助。(由于本人刚开始接触,做的不好的请大家批评指正,欢迎交流!)

论文地址:

 https://github.com/pjl1995/CTracker

源码地址:

    https://arxiv.org/pdf/2007.14557.pdf

声明

文章来源: 腾讯优图实验室;复旦大学;NAIST
论文名称:Chained-Tracker Chaining Paired Attentive Regression Results for End-to-End Joint Multiple-Object Detection and Tracking
原文作者:Jinlong Peng

环境搭建

首先:安装所需的工具包(如若你的系统安装过了,就不需要安装了)

apt-get install tk-dev python-tk

第二:创建一个代码所需的虚拟环境

// 创建虚拟环境。
conda create -n CTracker Python=3.6.5//之后激活环境
conda activate CTracker

第三:安装环境所需的pytorch版本及相关的包(在激活后的环境中,按如下操作)

// 安装所需pytorch版本
conda install pytorch=0.4.1 cuda90 -c pytorch
// 接着进入到你代码所在文件夹下,进行相关包的安装
cd {你自己代码的所属路径}pip install -r requirements.txtsh lib/build.sh

注:如果pytorch下载缓慢,可以换成清华镜像源之后,再下载。

conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --setshow_channel_urls yes

准备数据集

下载MOT17数据集,建立文件夹MOT17_ROOT,之后将MOT17的训练集和测试集放在新建的文件夹下。具体格式如下图所示:(其中的两个CSV文件为CTracker代码文件夹下的data文件夹下的文件,复制过来即可)。

注:train_annots.csv文件的每一行的格式为:
path/to/image.jpg,id,x1,y1,x2,y2,class_name
当你进行训练时,要注意path/to/image.jpg是否跟你的文件夹的路径一致。

训练

注:如果只求能运行,则训练时原代码上的epoch为100,你可以将其设置为50,因为10个epoch运行时间大概1时45分,即在源代码文件夹下,train.py里边第51行,修改default=50即可。

CUDA_VISIBLE_DEVICES=0 python train.py --root_path MOT17_ROOT --model_dir ./ctracker/ --depth 50

默认情况下,训练结束后即可开始进行测试。

测试

你也可以下载训练好的模型进行相关测试。

CUDA_VISIBLE_DEVICES=0 python test.py --dataset_path MOT17_ROOT --model_dir ./trained_model/

相关说明

本篇文章引用自CTracker。

@inproceedings{peng2020ctracker,title={Chained-Tracker: Chaining Paired Attentive Regression Results for End-to-End Joint Multiple-Object Detection and Tracking},author={Peng, Jinlong and Wang, Changan and Wan, Fangbin and Wu, Yang and Wang, Yabiao and Tai, Ying and Wang, Chengjie and Li, Jilin and Huang, Feiyue and Fu, Yanwei},booktitle={Proceedings of the European Conference on Computer Vision},year={2020},
}

MOT-CTracker相关推荐

  1. 对于多目标跟踪论模型CTracker的解析

    CTracker 2020年ECCV的一篇论文提出了链式跟踪算法Chained-Tracker,在MOT领域首创了基于两帧输入的链式跟踪框架,实现了端到端的联合检测跟踪,且自称是第一个真正实现端到端的 ...

  2. 收藏 | 多目标跟踪(MOT)入门

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 在科学研究中,从方法论上来讲,都应"先见森林,再见树木& ...

  3. 多目标跟踪(MOT)入门

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 来源 | 知乎-Harlek 地址 | https://www.z ...

  4. 新代系统9服务器警报,新代系统OP、MOT警报一览表

    新代系统 OP 警报一览表 警报编码 警报内容 说明 OP-001 轴板设定错误,I/O功能无 法正常启动 OP-002 系统参数档存取失败,系统 无法运作 OP-003 加工资料档存取失败,系统 无 ...

  5. jde多目标_华科开源多目标跟踪(MOT)实时新SOTA:FairMOT

    加入极市专业CV交流群,与 10000+来自港科大.北大.清华.中科院.CMU.腾讯.百度 等名校名企视觉开发者互动交流! 同时提供每月大咖直播分享.真实项目需求对接.干货资讯汇总,行业技术交流.关注 ...

  6. 基于深度学习的多目标跟踪算法——ReID与MOT的联系

    ©PaperWeekly 原创 · 作者|黄飘 学校|华中科技大学硕士 研究方向|多目标跟踪 最近基于深度学习的多目标跟踪算法越来越多,有用于特征提取的,有改进单目标跟踪器的,也有提升数据关联的.如果 ...

  7. 基于深度学习的多目标跟踪:从UMA Tracker出发谈谈SOT类MOT算法

    ©PaperWeekly 原创 · 作者|黄飘 学校|华中科技大学硕士生 研究方向|多目标跟踪 之前的文章中我们介绍了联合检测和跟踪的多目标跟踪框架,这类框架最大优势在于可以利用优秀的检测器平衡不同观 ...

  8. 多目标跟踪(MOT)领域近期值得读的几篇论文

    ©PaperWeekly 原创 · 作者|黄飘 单位|华中科技大学硕士生 研究方向|多目标跟踪 Siamese Track-RCNN 论文题目:Multiple Object Tracking wit ...

  9. 联合检测和跟踪的MOT算法解析(含MOT17 No.1等多个榜前算法)

    ©PaperWeekly 原创 · 作者|黄飘 学校|华中科技大学硕士生 研究方向|多目标跟踪 最近一年里,随着 Tracktor++ 这类集成检测和多目标跟踪算法框架的出现,涌现了很多相关的多目标跟 ...

  10. 多目标跟踪(MOT)论文随笔-SIMPLE ONLINE AND REALTIME TRACKING (SORT)

    转载请标明链接:http://www.cnblogs.com/yanwei-li/p/8643336.html  网上已有很多关于MOT的文章,此系列仅为个人阅读随笔,便于初学者的共同成长.若希望详细 ...

最新文章

  1. C/C++中程序内存区域划分大总结
  2. 在enable mmu之前可以使用mmu了
  3. python案例教程黄蔚答案_Python编程案例教程
  4. [翻译]基于ASP.NET的NumericTextBox控件[Carol]
  5. 数组实例的find() 和 findIndex()方法
  6. php mysql 验证码代码_PHP_PHP 验证码的实现代码,checkcode.php 生成验证码图片, - phpStudy...
  7. python按键按下改变数值_「正点原子NANO STM32开发板资料连载」第十六章电容触摸按键实验...
  8. 基于javaweb的员工绩效考核系统
  9. 医药行业进销存软件 零售药店管理软件
  10. ABB变频器维修,ABB变频器,ABB变频器配件FS300R12KE3/AGDR-61C 驱动模块APOW-01C 电源板AINP-01C 可控硅触发板
  11. 无法打开coursera网站解决方案
  12. Kafka ~ 消息队列之推还是拉
  13. 京东广告受众基础属性预估
  14. .NET 开源项目推荐之 直播控制台解决方案 Macro Deck
  15. 轻松玩转树莓派Pico之三、Windows+Ubuntu虚拟机模式下VSCode C语言开发环境搭建
  16. 【已收到Offer】小米前端实习面经(一、二面)
  17. ctr多少正常_亚马逊ctr多少算正常?
  18. I love you not because of who you are, but because of who I am when I am with you.
  19. 【Mybatis】Mapper文件中sql不等于的写法
  20. 伯努利分布的最大似然估计

热门文章

  1. iOS逆向 非群主@所有人
  2. 将CSS用于PDF发布
  3. Vue app安卓端移动端实现微信支付和支付宝支付
  4. execution_character_set报warning: unknown pragma ignored
  5. 第三方(秒嘀)短信验证码登陆 demo
  6. Double TAG
  7. 揭秘史上最昂贵的一行Javascript代码
  8. Navicat安装mysql或是sqlserver驱动,报错2502和2503
  9. AI绘画(以后也叫AI视频)
  10. 【万物皆可微晶】不冻原鲜,微晶开启智能保鲜2.0时代