源码:
https://github.com/ifzhang/FairMOT
论文(A类期刊:IJCV2021,含金量杠杠滴):
https://arxiv.org/abs/2004.01888
什么?没conda,请安装,这一步完成,已经完成30%了,接下来就是傻瓜式操作了。
很快、简单啊,我求你安装一个吧,栓Q。
先把源码下载下来,之后开始搭建环境
源码的作者建议: python=3.8 and pytorch >= 1.7.0
conda create -n FairMOT python=3.8 #-n 代表环境名字
conda activate FairMOT #激活这个叫FairMOT的环境
conda install pytorch==1.7.0 torchvision==0.8.0 cudatoolkit=10.2 -c pytorch #这里安装torch等工具包
cd ${FAIRMOT_ROOT} #进入你git下的源码
pip install cython
pip install -r requirements.txt #安装其它依赖库
简单说说:
opts.py——操作输入的参数的(就是你英雄配置什么装备,不能乱搞,不然就是盖伦出蓝水晶。)
demo.py——简单运行个网络看看效果
track.py——追踪功能的代码(这个就是英雄的QWER说明)
train.py——训练网络的入口
快速出演示效果
主要3个地方(demo.py+opts.py+模型)
https://drive.google.com/file/d/1iqRQjsG9BawIl8SlFomMg5iwkb6nqSpi/view?usp=sharing
--load_model 设置上一步下载好的模型权重位置
在opts.py的19行
–gpus写-1是用cpu,写0代表第一个gpu
–input-video要测试视频的位置
–output-root测试完视频的输出位置
例子:
python demo.py mot --load_model …/models/fairmot_dla34.pth --conf_thres 0.4 --input-video ./video 001.mp4 --output-root ./result
例子解读:
代表我用…/models/fairmot_dla34.pth这个位置的模型,
阈值0.4(这个不懂的先不管),
测试./video 001.mp4这个视频,
并把视频效果输出到./result这个文件夹。
效果演示:
我要训练
主要3个地方(train.py+opts.py+数据集)
crowdhuman下载地址:https://www.crowdhuman.org/记得下载后文件目录格式如下
crowdhuman
|——————images
| └——————train
| └——————val
└——————labels_with_ids
| └——————train(empty)
| └——————val(empty)
└------annotation_train.odgt
└------annotation_val.odgt
设置好红框里crowdhuman路径参数,然后执行gen_labels_crowd_det.py代码,就会生成train.val
例子:
python train.py mot --exp_id all_yolov5s --data_cfg src/lib/cfg/crowdhuman.json
–batch_size 8 --arch yolo
例子解读:
代表我用yolov5s这个检测网络训练这个mot模型,数据集用的是crowdhuman。
训练演示:
还有很多学习率、模型保存位置等参数、超参数,后面有机会再说。。。
有兴趣的同学朋友相互讨论技术