文章目录
- 前言
- 一、pysot-toolkit准备工作
- 1.所需环境要求
- 2.文件配置
- 3.运行配置(对比算法)
- 二、安装latex软件(win10系统)
- 1.安装MiKTeX
- 2.安装TexMaker
- 3.配置TexMaker
- 4.配置MiKTeX
- 三、运行eval.py画图
- 1. 修改eval.py参数,运行
- 2. 常见问题解决
前言
pysot-toolkit是基于PySOT的工具,此存储库的目的是提供当前单个对象跟踪数据集的评估API,包括:
VOT2016VOT2018VOT2018-LTOTB100(OTB2015)UAV123NFSLaSOTTrackingNet (Evaluation on Server)GOT-10k (Evaluation on Server)
关于PySOT的配置和使用,请参考:学习 PySOT(1)(介绍、配置、使用),下面的操作都是在PySOT的基础上做的。
一、pysot-toolkit准备工作
1.所需环境要求
tqdm
numpy
glob
opencv-python
colorama
numba
对应的安装命令:(在Anaconda Prompt 命令窗口下)
pip install tqdm
conda install numpy
pip install glob2
pip install opencv-python
pip install colorama
pip3 install --user numba
建议安装完,重启一下电脑。
2.文件配置
第一步,配置数据集,以OTB100为例。
参考官方pysot-toolkit
- 将CVRP13.json,OTB100.json,OTB50.json放在OTB100数据集目录中(您需要将Jogging复制到Jogging-1和Jogging-2,并将Skating2复制到Skating2-1和Skating2-2或使用软链接)
注:Jogging和Skating2都是两个目标,在OTB Benchmark
学习(下载链接、评价指标、配置)中有专门说明。
目录应采用以下格式:
| -- OTB100/ | -- Basketball | ...... | -- Woman | -- OTB100.json | -- OTB50.json | -- CVPR13.json
2. 如1一样,将所有其他json放入数据集目录中。
为什么将Jogging复制到Jogging-1和Jogging-2 ?
其实,打开OTB100.json文件可以看到有Jogging-1和Jogging-2两个目录,但是实际的OTB100数据集中Jogging和Skating2有两个groundtruth_rect.txt,所以需要上述操作。
在VOT2016和VOT2018数据集也需要类似的操作,将VOT2016.json和VOT2018.json文件打开后,分别对照数据集看看,需要复制文件夹的复制,需要改名的直接改名即可。
第二步,配置算法运行结果,以OTB100数据集为例。
OTB100的txt跟踪结果,百度云,提取码:t713
解压配置,路径:
3.运行配置(对比算法)
运行,该配置前,我们先看看官方要求。
git clone https://github.com/StrangerZhang/pysot-toolkit
pip install -r requirements.txt
cd pysot/utils/
python setup.py build_ext --inplace
# if you need to draw graph, you need latex installed on your system
1.git clone https://github.com/StrangerZhang/pysot-toolkit
下载pysot-toolkit,已完成。
2.pip install -r requirements.txt
安装包,已完成。
3.cd pysot/utils/
python setup.py build_ext --inplace
运行setup.py,生成build。
4.# if you need to draw graph, you need latex installed on your system
#如果需要绘制图形,则需要在系统上安装latex
这一步,我们先不安装latex ,后续再安装。安装比较麻烦。这也影响画图。
第一步,运行setup.py,生成build文件夹
可以直接在pycharm环境下setup.py运行。
运行的配置如下:
注意,工作目录。
运行完,结果:
第二步,配置eval.py参数
我们先看看,官方要求:以OTB100为例
cd /path/to/pysot-toolkit
python bin/eval.py \--dataset_dir /path/to/dataset/root \ # dataset path--dataset OTB100 \ # dataset name(OTB100, UAV123, NFS, LaSOT)--tracker_result_dir /path/to/tracker/dir \ # tracker dir--trackers SiamRPN++ C-COT DaSiamRPN ECO \ # tracker names --num 4 \ # evaluation thread--show_video_level \ # wether to show video results--vis # draw graph
其中:
–dataset_dir /path/to/dataset/root
为数据集的路径。
–tracker_result_dir /path/to/tracker/dir
为算法测试结果路径
–num 4
评估线程
–show_video_level
显示视频结果的方式
–vis
绘制图形,注意,这个是画图的,没安装latex ,一定要去掉。不然会出现:
RuntimeError: Failed to process string with tex because latex could not be found
根据实际情况,打开菜单栏Run(运行)–>Edit configurations(编辑配置)
在参数中,添加代码:
--dataset_dir
../pysot/datasets/OTB100
--dataset
OTB100
--tracker_result_dir
../results/OTB100
--trackers
SiamRPN
DaSiamRPN
SiamFC
--num
3
--show_video_level
点击OK(确定),运行eval.py
如何加上–vis ,运行结果呢?
二、安装latex软件(win10系统)
一开始,在网上寻找使用conda或者pip安装latex包都没有用,不清楚为什么,后续查询需要额外安装软件 (win10系统)。
找了好久,在,RuntimeError: Failed to process string with tex because latex could not be found,网址,有相关介绍。
Ubuntu安装,建议参考,其他人的博客,安装方式类似,配置环境略有不同。
1.安装MiKTeX
官网下载地址:https://miktex.org/download
一步一步点击安装即可。
2.安装TexMaker
官网下载地址:https://www.xm1math.net/texmaker/download.html
一步一步点击安装即可。安装后,需要配置TexMaker软件。
下载TexMaker软件很慢,还容易失败,我自己都下载了一晚上。
附上百度云链接吧。
百度云,提取码:n84c
3.配置TexMaker
选项——>配置TexMaker
配置命令:
配置编辑器
4.配置MiKTeX
需要配置MiKTeX,如不配置,运行可能出现如下错误:出现后,手动点击Install,也能解决问题,就是太慢了。
第一步,打开MiKTeX,如下图选择
第二步,手动安装软件包。单击Settings以导航到设置页面,单击General选项卡,选择change:
如下图选择:
如下图选择:
第三步,更新MiKTeX安装包:
单击Updates以导航到更新页面,单击Check for Updates以搜索可更新的程序包。如下图所示:
几秒钟后,您将看到一个类似于以下的窗口,单击Update now以开始安装更新。
配置完,必须重启电脑
三、运行eval.py画图
1. 修改eval.py参数,运行
根据实际情况,打开菜单栏Run(运行)–>Edit configurations(编辑配置)
在参数中,添加代码:
--dataset_dir
../pysot/datasets/OTB100
--dataset
OTB100
--tracker_result_dir
../results/OTB100
--trackers
SiamRPN
DaSiamRPN
SiamFC
SiamDWfc
--num
3
--show_video_level
--vis
点击OK(确定),运行eval.py
2. 常见问题解决
1.若出现,如下图所示,可能MiKTeX没有安装好,或者配置好。
2.若出现以下问题:
TimeoutError: Lock error: Matplotlib failed to acquire the following lock file:
C:\Users\Administrator.matplotlib\tex.cache\1f182d9bede4c9cd7c73d0968523a788.tex.matplotlib-lock
This maybe due to another process holding this lock file. If you are sure no
other Matplotlib process is running, remove this file and try again.
解决方法:
第一步,在Anaconda Prompt 命令窗口下,终端python 的环境下,
输入:
import matplotlib
print(matplotlib.matplotlib_fname())
如下图所示:
获得matplotlibrc文件的路径:D:\Anaconda3\Lib\site-packages\matplotlib\mpl-data\matplotlibrc
第二步,安装SimHei.tff
百度上很多下载链接,下载后,并前往指定目录:D:\Anaconda3\envs\pytorch12gpu\Lib\site-packages\matplotlib\mpl-data\fonts\ttf,将下载好的SimHei移动到该目录下。
第三步,删除matplotlib的缓冲目录
先找到,matplotlib的缓冲目录
输入:
import matplotlib
matplotlib.get_cachedir()
目录在C:\Users\Administrator中,
清空缓冲目录里面的文件, 删除 C:\Users\Administrato.matplotlib文件
第四步,修改matplotlibrc文件
修改D:\ProgramData\Anaconda3\lib\site-packages\matplotlib\mpl-data 里面的matplotlibrc文件,修改如下:
font.family : sans-serif
font.sans-serif : SimHei, Bitstream Vera Sans, Lucida Grande, Verdana, Geneva, Lucid, Arial, Helvetica, Avant Garde, sans-serif
axes.unicode_minus,将True改为False,作用就是解决负号'-'显示为方块的问题
实际修改,如下图:
重启电脑。
运行eval.py。
出现结果:
整理不易,喜欢点赞。
上一篇:学习 PySOT(1)(介绍、配置、使用)