其他分享
首页 > 其他分享> > FairMOT复现

FairMOT复现

作者:互联网

FairMOT复现

根据https://www.bilibili.com/video/BV1RD4y1S7ws这位UP主的教程将代码跑通,在此记录一下。

环境

3060cuda配置可以参考这篇文章https://blog.csdn.net/sinat_37151390/article/details/123305448?spm=1001.2014.3001.5501

直接贴上安装pytorch和对应cuda版本命令

pip --no-cache-dir install torch==1.9.0+cu111 torchvision==0.10.0+cu111 torchaudio==0.9.0 -f https://download.pytorch.org/whl/torch_stable.html

步骤

  1. 先下载上面链接B站教程中公众号提供的FairMOT压缩包

  1. 下载这个版本的DCNv2_latest: https://github.com/jinfagang/DCNv2_latest 下载下来将其命名为DCNv2 将up主提供的FairMOT中的DCNv2 替换掉

  2. 然后创建环境:

第三句命令其实可以使用自己的版本,up主说的使用非10.0的kit可能会有编译错误,但是使用原来up主提供的DCN文件夹我也没编译成功

conda create -n FairMOT python=3.7
conda activate FairMOT
!!!(conda install pytorch==1.2.0 torchvision==0.4.0 cudatoolkit=10.0 -c pytorch)
pip install -r requirements.txt   
  1. !!! 等报错了再覆盖,这一步可以先不做,等最后出错了在覆盖最保险。覆盖的时候先把原flat_hash_map.h备份好,我是直接把原flat_hash_map.h压缩包了

    D:\ProgramData\Anaconda3\envs\FairMOT\Lib\site-packages\torch\include\c10\util
    覆盖flat_hash_map.h

  2. 进入文件夹编译DCNv2

    cd E:\PytorchPro\FairMOT-master\src\lib\models\networks\DCNv2
    输入命令:python setup.py build develop

  3. 进入文件夹编译DCNv2_new

    cd E:\PytorchPro\FairMOT-master\src\lib\models\networks\DCNv2_new

    ​ 输入命令:python setup.py build develop

  4. 进入文件夹编译bbox

    cd E:\PytorchPro\FairMOT-master\cython_bbox-0.1.3
    输入命令:python setup.py build develop

  5. dla34-ba72cf86.pth复制到

    C:\Users\Trust\.cache\torch\checkpoints 在项目这个位置

    如果没有checkpoints这个文件夹,自己新建一个,在我的torch文件夹下面只有一个Hub里面有一个checkpoints文件夹,我在两个文件夹都放了。

  6. 如果和我一样是在pycharm里面跑的,将lib设置一下,不然找不到包。

  1. 最后启动项目,进入src目录输入:python demo.py mot --load_model ../models/all_dla34.pth --input-video ../videos/MOT16-03.mp4 --output-root ../videos --conf_thres 0.4


到后面平均FPS9-10的样子。

完结!

标签:python,DCNv2,torch,--,文件夹,复现,FairMOT
来源: https://blog.csdn.net/sinat_37151390/article/details/123593193