DAT(NIPS 2018)视频目标跟踪源码运行笔记

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/discoverer100/article/details/87701802

1. 论文基本信息


2. 运行环境介绍

  • NVIDIA GTX 1070
  • Ubuntu 16.04 x64
  • CUDA 8.0.61 for Ubuntu 16.04
  • cuDNN 5.1 for CUDA 8.0
  • Python 2.7
  • PyTorch 0.2.0

3. 准备

S1. 下载官方源代码并解压。

S2. 下载imagenet-vgg-m.mat文件,链接:http://www.vlfeat.org/matconvnet/models/imagenet-vgg-m.mat

S3. 在源码中的DAT目录下,创建一个文件夹models,将S2中下载的imagenet-vgg-m.mat文件移动到这个models文件夹中。


4. 配置

S1. 新建终端窗口,运行命令sudo nvidia-settings,输入密码后在弹出的NVIDIA窗口中查看并记下自己的显卡编号,如下图所示:
在这里插入图片描述
S2. 打开源码DAT/tracking目录中的run_tracker.py文件,修改第5行代码,将右边的数字改为上述查看的显卡编号,如下图所示:
在这里插入图片描述

S3. 打开源码DAT/tracking目录中的demo.py文件,修改第15行,将其更改为自己Python 2.7的Python命令文件,如下所示:

 os.system("/home/dodge/anaconda3/envs/py27_for_pytorch020/bin/python2 run_tracker.py -s "+name)

注: 前面的Python路径要结合自己实际情况来配置。

S4. 打开源码DAT/tracking目录中的run_tracker.py文件,修改第511行代码,将args.display的值修改为True,这样可以在跟踪过程中显示图像。


5. 运行

进入到源码的DAT/tracking目录中,在终端中运行如下命令即可运行DAT跟踪算法(请确保当前的Python版本为2.7):

python demo.py

大约等待几分钟,算法会开始跟踪,默认跟踪的是源码自带的视频football,如下图所示(绿色矩形框表示ground-truth,红色矩形框表示算法result):
在这里插入图片描述


6. 可能出现的问题及解决方法

问题 1: 找不到scipy模块,ImportError: No module named 'scipy'
解决: 在自己的Python 2.7环境中安装scipy库,可以用命令conda install scipy进行安装。

问题 2: 找不到PIL模块,ImportError: No module named 'PIL'
解决: 在自己的Python 2.7环境中安装Pillow库,可以用命令pip install Pillow进行安装。

扫描二维码关注公众号,回复: 5392023 查看本文章

问题 3: 找不到matplotlib模块,ImportError: No module named matplotlib
解决: 在自己的Python 2.7环境中安装matplotlib库,可以用命令conda install matplotlib进行安装。

问题 4: 找不到sklearn模块,ImportError: No module named sklearn.linear_model
解决: 在自己的Python 2.7环境中安装scikit-learn库,可以用命令conda install scikit-learn进行安装。

问题 5: 运行时进行了显示配置,但跟踪时没有图像显示。
解决: 代码默认会将跟踪结果图像保存为图片文件存储在源码的result_fig_labgpu_test目录中,如果能够接受运行完查看截图的方式,也可以不修复此问题。若希望修复,请继续阅读下面的内容。

matplotlib不显示画面的问题容易出现在虚拟Python环境中,首先确认自己的Python 2.7环境是不是设置为agg类型的后端,逐行运行如下代码进行查看:

Python
import matplotlib
matplotlib.get_backend()

若为形如agg类型的后端,则需要将其改为TkAgg类型的后端,方法如下:

S1. 在自己的Python 2.7环境中,首先卸载已经安装的matplotlib库,可以用命令conda uninstall matplotlib来卸载。

S2. 新建终端窗口,运行命令sudo apt-get install tcl-dev tk-dev python-tk安装Tk GUI。

S3. 在自己的Python 2.7环境中,重新安装matplotlib库,可以用命令conda install matplotlib进行安装。

S4. 打开源码DAT/tracking目录中的run_tracker.py文件,修改第14行代码,将里面默认的Agg修改为TkAgg,修改后的代码如下所示:

matplotlib.use('TkAgg')

S5. 重新运行跟踪源码即可。

猜你喜欢

转载自blog.csdn.net/discoverer100/article/details/87701802