手把手教你atom追踪 --ATOM Tracker Installation under Linux

ATOM Tracker Installation under Linux [附赠 DiMP Tracker]

ATOM: Accurate Tracking by Overlap Maximization (atom_paper and code [后面有下载code的操作])
DiMP: Learning Discriminative Model Prediction for Tracking (dimp_paper and code [后有下载])

前期准备

Ubuntu 18.04 system, Anaconda, Nvidia及其驱动, Cuda

Note: Nvidia 驱动 和 Cuda 的版本兼容可参考此处。Me: Nvidia (440.33), Cuda (10.2)


1)最好开启VPN,有些资源需要在外网下载;
2)建议一条条的执行下列命令,并仔细阅读终端给出的反馈,以便及时调整操作。

配置追踪环境

1.创建并激活一个conda环境 。

conda create --name pytracking python=3.7 #环境名为pytracking, python为3.7版
source activate pytracking                #激活环境

Note:
1)创建结果见此处①②③,pytracking 被建在 ~/anaconda3/envs 目录下。若资源一次没有下载完(网不好时),终端会提醒再次执行这条命令,直至全部下载完毕,并出现 “Executing transacting: done”。
2)激活结果见此处④⑤。图⑤中的第三行最前面出现“(pytracking)”说明激活成功。(请参考上述的激活命令而不要借鉴我的实际操作)

2.安装 PyTorch,结果见⑤⑥⑦(有个包第一次没下载完整,补加后验证通过)。

conda install pytorch torchvision cudatoolkit=10.2 -c pytorch

Note: cudatoolkit 版本需要跟 cuda 的一致。上述命令可参考PyTorch官网。

3.安装 matplotlib 和 pandas ⑧⑨。

conda install matplotlib pandas

4.安装 opencv, visdom 和 tensorboad ⑩ ♬

pip install opencv-python visdom tb-nightly

5.安装 coco(数据集) 工具包 ♫♪

conda install cython
pip install pycocotools

6.安装 ninja-build 以编译精确的ROI合并模块 ♪

sudo apt-get install ninja-build

7.安装 jpeg4py 以加载图像 ♪ ♮♩

sudo apt-get install libturbojpeg
pip install jpeg4py 

下载追踪代码

1.安装 git (若有,跳过此步)◰

sudo apt-get install git

2.使用 git 克隆ATOM的GIT存储库 ◰

git clone https://github.com/visionml/pytracking.git

Note: 使用 “ls -l” 命令显示目录下的内容列表◱,确定文件pytracking已下载完成。使用“pwd”命令显示当前工作目录◱,并去该处将文件夹pytracking中的内容(pytracking, Itr, …)放到 上述第一步创建的pytracking环境 所在的目录下(Me: /home/zhangziyou/anaconda3/envs/pytracking ) [不在终端进行,去文件夹复制粘贴即可]。

3.设置环境(创建默认的环境设置文件,在pytracking环境目录下进行) ◲ [前两个“环境” 指文件间的地址关系,后一个“环境” 指深度学习框架的虚拟环境]

cd anaconda3/envs/pytracking  #跳转目录 

# 在 ~/anaconda3/envs/pytracking/pytracking/evaluation/ 目录下生成 local.py 文件
python -c "from pytracking.evaluation.environment import create_default_local_file; create_default_local_file()"

# 在 ~/anaconda3/envs/pytracking/ltr/admin/ 目录下生成 local.py 文件(不同与上一个)
python -c "from ltr.admin.environment import create_default_local_file; create_default_local_file()"

Note: 双击打开第一个local.py文件,可以看到文件中设置了追踪网络和运行结果的默认存放位置。据此创建文件夹“networks”和“tracking_results”◳。

4.下载预训练网络到文件夹networks中 ◴◵

# Network for ATOM  (114.0 MB)
bash pytracking/utils/gdrive_download 1VNyr-Ds0khjM0zaq6lU-xfY74-iWxBvU pytracking/networks/atom_default.pth

# Network for DiMP-50 (381.4 MB) and DiMP-18 (164.7 MB)
bash pytracking/utils/gdrive_download 1qgachgqks2UGjKx-GdO1qylBDdB1f9KN pytracking/networks/dimp50.pth
bash pytracking/utils/gdrive_download 1MAjrRJDCbL0DSjUKFyDkUuYS1-cYBNjk pytracking/networks/dimp18.pth

5.克隆ATOM的子模块 ◶


git submodule update --init   #克隆子模块

测试追踪代码
1.测试 atom tracker ◶

cd pytracking  #跳转到 run_webcam.py 所在的目录下
python run_webcam.py atom default  

Note:
1)使用摄像头输入来运行ATOM tracker。
2)若报错: PILLOW_VERSION…,则将 pillow 降到版本7以下◷,讨论见此处。

2.测试 dimp tracker ♘

python run_webcam.py dimp dimp50  

Note: 关闭终端后,下次再次运行这两个追踪算法时,需要先激活下环境。


NOTE

1)atom code 包含两个主要内容:pytracking-用于运行tracker ;ltr-用于训练tracker。

2)虽然 PyTorch 官网显示最高只兼容到10.1版的Cuda (见此处), 但实际上可以兼容到10.2版(见此处)。

3)第一次用Linux,笔记写的很细。 如果你也一直打算尝试,不妨借这次机会操作下 ^^。

4)欢迎交流,有用点赞哦!

你可能感兴趣的:(深度学习)