论文复现:Track to Detect and Segment: An Online Multi-Object Tracker

        论文下载链接:链接  

        简单介绍:大多数在线多目标跟踪器在神经网络中独立执行目标检测,无需任何跟踪输入。在本文中提出了一种新的在线联合检测和跟踪模型TraDeS(TRAck to DEtect and Segment),利用跟踪线索来辅助端到端的检测。TraDeS 将目标跟踪偏移量推断为成本量,该成本量用于传播先前的对象特征,以改进当前对象检测和分割。TraDeS 的有效性和优越性体现在 4 个数据集上,包括 MOT(2D 跟踪)、nuScenes(3D 跟踪)、MOTS 和 Youtube-VIS(实例分割跟踪)。

        本文的方法遵循联合检测和跟踪(JDT)范式。与大多数JDT方法不同,所提出的TraDeS跟踪器在一个端到端的统一框架中深度耦合跟踪和检测,其中利用跟踪的运动线索来增强检测或分割。不同在线MOT流水线的比较如下:

        TraDeS 概述如下所示,TraDeS 可以传播来自多个先前帧的特征以增强对象特征:

安装环境(基于Linux服务器)

①创建新的 conda 环境(不是3.6后面会出错)

conda create --name trades python=3.6

②激活环境

conda activate trades

③安装 PyTorch

conda install pytorch=1.3.1 torchvision=0.4.2 cudatoolkit=10.0.130 -c pytorch

④安装 COCOAPI

pip install cython; pip install -U 'git+https://github.com/cocodataset/cocoapi.git#subdirectory=PythonAPI'

⑤克隆此存储库

git clone https://github.com/JialianW/TraDeS.git

⑥安装requirements.txt

cd $TraDeS_ROOT
pip install -r requirements.txt

⑦编译可变形卷积(使用 gcc v5.4.0 和 v8.4.0 编译成功,gcc 版本应高于 v4.8)

cd $TraDeS_ROOT/src/lib/model/networks/DCNv2
. make.sh

数据集准备

切换到tools文件夹下,里面有一个脚本(get_mot_17.sh),执行它,这个脚本的作用是:

        ①从MOT数据集官网下载并解压缩数据集

        ②将其转换为 COCO 格式

        ③创建论文中描述的训练和验证集

在终端中运行:

cd $TraDeS_ROOT/src/tools/
sh get_mot_17.sh

执行中:

数据集准备成功:

数据格式如下:

${TraDeS_ROOT}
|-- data
`-- |-- mot17`-- |--- train|   |--- MOT17-02-FRCNN|   |    |--- img1|   |    |--- gt|   |    |   |--- gt.txt|   |    |   |--- gt_train_half.txt|   |    |   |--- gt_val_half.txt|   |    |--- det|   |    |   |--- det.txt|   |    |   |--- det_train_half.txt|   |    |   |--- det_val_half.txt|   |--- ...|--- test|   |--- MOT17-01-FRCNN|---|--- ...`---| annotations|--- train_half.json|--- val_half.json|--- train.json`--- test.json
训练

①将预训练权重放入到models文件夹下

②执行训练脚本

脚本如下:

cd src
# train
CUDA_VISIBLE_DEVICES=0,1,2,3 python main.py tracking --exp_id mot17_half --dataset mot --dataset_version 17halftrain --pre_hm --ltrb_amodal --same_aug --hm_disturb 0.05 --lost_disturb 0.4 --fp_disturb 0.1 --gpus 0,1,2,3 --load_model ../models/crowdhuman.pth  --save_point 40,50,60 --max_frame_dist 10  --batch_size 32 --clip_len 3 --trades
cd ..

开始执行:

sh experiments/mot17_train.sh

训练中:

结果保存成功:

使用测试视频进行测试:

python demo.py tracking --dataset mot --load_model ../models/mot_half.pth --demo ../videos/mot_mini.mp4 --pre_hm --ltrb_amodal --pre_thresh 0.5 --track_thresh 0.4 --inference --clip_len 3 --trades --save_video --resize_video --input_h 544 --input_w 960

测试结果保存results中:

后续将制作自己的数据集,应用到该框架中。

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

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

相关文章

一个例子了解c++的指针数组和数组指针

c的指针数组和数组指针容易混淆,所以我们加个字: 指针的数组和数组的指针 所谓指针数组,就是指针的数组,就是由指针组成的数组。重点在后面的两个字:数组 所谓数组指针,就是数组的指针,就是指向…

基于协调过滤算法商品推荐系统的设计#计算机毕业设计

基于协调过滤算法商品推荐系统的设计#计算机毕业设计 管理员账户功能包括:系统首页,个人中心,商品管理,论坛管理,商品资讯管理 前台账户功能包括:系统首页,个人中心,论坛&#xf…

MySQL-二进制部署-配置systemctl管理脚本(一)

一 二进制部署MySQL 参考二进制部署mysql 二 MySQL启动&关闭命令 mysqld_sqfe 是 mysqld 父进程,用那个启动都可以 ##启动命令 /usr/local/mysql/bin/mysqld_safe --defaults-file/data/mysql/conf/my.cnf & /usr/local/mysql/bin/mysqld --defaults-fil…

数字校园的优势有哪些

数字化时代下,数字校园已成为教育领域一股显著趋势。数字校园旨在借助信息技术工具对传统校园进行改造,提供全新的教学、管理和服务方式。那么,数字校园究竟具备何种优势?现从三个方面为您详细介绍。 首先,数字校园为教…

STM32项目分享:智能家居(机智云)系统

目录 一、前言 二、项目简介 1.功能详解 2.主要器件 三、原理图设计 四、PCB硬件设计 1.PCB图 2.PCB板及元器件图 五、程序设计 六、实验效果 七、资料内容 项目分享 一、前言 项目成品图片: 哔哩哔哩视频链接: https://www.bilibili.c…

如何使用ERC-20与Sui Coin标准创建Token

区块链使用tokens作为传递价值的基本手段。它们可以是区块链的原生交换单位,也可以是应用中的交换单位,甚至可以在游戏世界中用作货币。tokens还支持Sui和其他区块链上的强大DeFi活动。 以太坊使用ERC-20标准来创建tokens,借用智能合约&…

步态控制之ZMP

零力矩点(Zero Moment Point,ZMP)概述 ZMP步态控制是人形机器人步态控制中的一个关键概念,旨在确保机器人在行走或站立过程中保持平衡。ZMP是指机器人接触面上力矩为零的点,确保在该点上机器人不会倾倒。这个示例展示了ZMP步态控制的基本原理和实现方法。实际应用中,机器…

Redisson 源码分析 —— 调试环境搭建

本文基于 Redisson 3.11.4-SNAPSHOT 版本 依赖工具 MavenGitJDKIntelliJIDEA 源码拉取 从官方仓库 https://github.com/redisson/redisson Fork 出属于自己的仓库。 为什么要 Fork ?既然开始阅读、调试源码,我们可能会写一些注释,有了自…

【Spring Cloud】Ribbon详细介绍及底层原理分析

目录 核心功能 Ribbon 的工作原理 底层原理及代码详解 1. ServerList 2. IRule 3. IPing 4. ServerListUpdater 使用场景 实际使用示例 1. 使用 RestTemplate 与 Ribbon 集成 2. 使用 Feign 与 Ribbon 集成 Ribbon 是 Netflix 开源的一款客户端负载均衡器&#xff0…

算法训练营day04

一、24. 两两交换链表中的节点 题目链接:https://leetcode.cn/problems/swap-nodes-in-pairs/description/ 文章讲解:https://programmercarl.com/0024.%E4%B8%A4%E4%B8%A4%E4%BA%A4%E6%8D%A2%E9%93%BE%E8%A1%A8%E4%B8%AD%E7%9A%84%E8%8A%82%E7%82%B9.h…

国产操作系统上Vim的详解03--使用Vundle插件管理器来安装和使用插件 _ 统信 _ 麒麟 _ 中科方德

原文链接:国产操作系统上Vim的详解03–使用Vundle插件管理器来安装和使用插件 | 统信 | 麒麟 | 中科方德 Hello,大家好啊!今天给大家带来一篇在国产操作系统上使用Vundle插件管理器来安装和使用Vim插件的详解文章。Vundle是Vim的一款强大的插…

【数据可视化系列】使用Python和Seaborn绘制相关性热力图

热力图(Heatmap)是一种数据可视化工具,它通过使用颜色的深浅来展示数据矩阵中数值的大小或密度。在热力图中,每种颜色的深浅代表数据的一个特定值或值的范围,通常使用红色、黄色和绿色等颜色渐变来表示数据的热度&…

frida timed out

从Android Q(10)开始,Google引入了一种新的机制,加快了app的启动时间 Android USAP 进程启动流程 adb shell su ps -A | grep usaproot 9917 1032 6577052 13676 __skb_wait_for_more_packets 0 S usap64 root 9928 1032 6577052…

1、项目介绍:为什么要做此项目。

项目介绍:为什么要做此项目。 全栈开发博客实战项目:前后端开发流程以及项目部署 随着互联网的蓬勃发展,全栈开发成为了越来越受欢迎的趋势。前端开发和后端开发之间的紧密合作和协同工作已经成为了现代软件开发中的重要组成部分。然而&…

【TB作品】MSP430F5529 单片机,数字时钟设计与实现,整点时通过蜂鸣器播放音乐进行报时

基于单片机的数字时钟设计与实现 作品名称 基于MSP430单片机的OLED显示数字时钟 作品功能 本作品实现了一个具有时间显示和整点报时功能的数字时钟。通过OLED屏幕显示当前时间,用户可以通过按键设置时间,并在整点时通过蜂鸣器播放音乐进行报时。 作…

Emacs Verilog mode 简单使用指南

Emacs 是一个强大的文本编辑器,以其高度可定制和扩展能力著称。在硬件描述语言(HDL)的开发中,Verilog 是一种广泛使用的语言,而 Emacs 的 Verilog mode 为 Verilog 开发提供了强有力的支持。本文将详细介绍如何使用 Emacs Verilog mode 来高效编写 Verilog 代码,帮助读者…

MySQL JDBC编程

前言👀~ 上一章我们介绍了数据库的索引与事务,本章节我们介绍JDBC编程,使用java代码和数据库打交道 如果各位对文章的内容感兴趣的话,请点点小赞,关注一手不迷路,如果内容有什么问题的话,欢迎各…

双指针算法题笔记

1、移动零 class Solution {public void moveZeroes(int[] nums) {int left0;int right0;for(right0;right<nums.length;right){if(nums[right]!0){if(nums[left]0){int tempnums[left];nums[left]nums[right];nums[right]temp;}left;}}} } 两个指针将一个数组划分三个部分&…

使用OpenPCDet训练与测试多传感器融合模型BEVFusion,OPenPCdet代码架构介绍

引言 在自动驾驶领域&#xff0c;多传感器融合技术是一种常见的方法&#xff0c;用于提高感知系统的准确性和鲁棒性。其中&#xff0c;BevFusion是一种流行的融合方法&#xff0c;可以将来自不同传感器的数据进行融合&#xff0c;生成具有丰富信息的鸟瞰图&#xff08;BEV&…

探索800G数据中心的高速布线解决方案

随着技术的快速进步&#xff0c;数据中心正以前所未有的速度迅速发展。虽然100G和400G数据中心已经普及&#xff0c;但800G数据中心正逐渐流行并展现出增长趋势。由于对高速数据传输的需求呈指数级增长&#xff0c;因此需要高效、可靠的线缆连接解决方案。本文将介绍800G数据中…