论文下载链接:链接
简单介绍:大多数在线多目标跟踪器在神经网络中独立执行目标检测,无需任何跟踪输入。在本文中提出了一种新的在线联合检测和跟踪模型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中:
后续将制作自己的数据集,应用到该框架中。