论文复现: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中:

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

  • 5
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值