VOT Toolkit工具使用说明(Python版)

一、 工具链接

vot-toolkit python版 github链:

https://github.com/votchallenge/toolkit

vot-toolkit 调试用基本跟踪器NCC

https://github.com/votchallenge/integration

二、工具启动

  1. 按照工具的简单文档,pip 按照完毕以后,在终端使用 vot xxxx进行使用。(简单文档链接:https://www.votchallenge.net/howto/tutorial_python.html)
  2. 如果需要对工具代码进行增添修改(修改指标,添加自定义数据集等),git clone代码以后,使用Pycharm打开工程。

三、工具使用

工具提供5种行为

usage: vot [-h] [--debug] [--registry REGISTRY]{test,initialize,evaluate,analysis,pack} ...VOT Toolkit Command Line Utilityoptional arguments:-h, --help            show this help message and exit--debug, -d           Backup backend--registry REGISTRY   Tracker registry pathsCommands:{test,initialize,evaluate,analysis,pack}commandstest                Test a tracker integration on a synthetic sequenceinitialize          Setup a new workspace and download dataevaluate            Evaluate one or more trackers in a given workspaceanalysis            Run analysis of resultspack                Package results for submission

由于上面简单文档,官方更新较慢,导致接口有所发生变化。所以需要根据当前使用的工具提示,执行对应的指令(譬如这里初始化工作空间,在本版本使用initialize,但是官网使用workspace 指令)。

对于Pycharm打开的工程,文件目录如下

├── MANIFEST.in
├── README.md
├── requirements.txt
├── setup.py
└── vot├── analysis├── dataset├── document├── experiment├── __init__.py├── __main__.py├── region├── stack├── tracker├── utilities├── version.py└── workspace

其中,执行文件为__main__.py,这时候,main文件会引导代码到vot/utilities/cli.py

因此,如果需要详细查看命令行参数,修改默认值的,请移步cli.py中进行查看。

四、使用流程

说在前面,使用工具时,pip方式是

vot {test,initialize,evaluate,analysis,pack} 额外参数

而在Pycharm里面,则是运行main.py文件,后面的参数项都填写到Pycharm代码运行设置(Run/Debug Configurations)的Parameters里面。

为了简洁起见,后文直接用vot xxxx进行书写。

0.配置说明

Stack,就是配置项(多个实验定义)的概念。在目录vot/stack存放了vot工具设置好的配置项。每一个配置项,指定了这个配置用到的数据集,实验的方式(baseline, realtime等,以及这个实验需要用到的评价指标)。如下面这段配置文件,【dataset: vot:vot-st2018】是指定了当前是vot的实验,使用vot-st2018这个数据集。然后需要跑三个实验(baseline, realtime, unsupervised)。这个配置项会在后续eval与analysis的时候起作用。

vot/stack/vot2018.yaml
title: VOT-ST2018 challenge
dataset: vot:vot-st2018
url: http://www.votchallenge.net/vot2018/
experiments:baseline:type: supervisedrepetitions: 15skip_initialize: 5analyses:- type: supervised_average_arsensitivity: 30- type: supervised_eao_scorelow: 100high: 356- type: supervised_eao_curverealtime:type: supervisedrealtime:grace: 3repetitions: 1skip_initialize: 5analyses:- type: supervised_average_arsensitivity: 30- type: supervised_eao_scorelow: 100high: 356- type: supervised_eao_curveunsupervised:type: unsupervisedrepetitions: 1analyses:- type: average_accuracy

1.创建工作空间

vot initialize Stack名称 --workspace 实验存放目录

这个命令会根据你Stack里面的配置,自动给你创建指定的存放目录,创建所需的配置文件,并下载数据集。

如果是自定义的数据集,则需要增加–nodownload参数,然后初始化完数据集目录以后,自行将数据放入创建的Sequence文件夹中。

2.设置跟踪器

打开实验存放目录内的trackers.ini文件。

写入如下内容:

[NCCPython]  # <tracker-name>
label = PyNCC
protocol = traxpythoncommand = python_ncc# Specify a path to trax python wrapper if it is not visible (separate by ; if using multiple paths)
paths = $文件目录# Additional environment paths
env_PATH = ${PATH}

需要修改的地方是,

tracker-name(中括号那个),label,根据自己跟踪器情况而定。

paths:运行文件所在目录

command:运行跟踪器的启动文件(需要在上面的paths下有command.py这个文件。在上面这个例子就是需要在 文件目录 下面有python_ncc.py这个文件。

然后参照官方调试用跟踪器的示例文件,修改自己的跟踪器的启动文件,添加trax等通信代码。

vot-toolkit 调试用基本跟踪器NCC

https://github.com/votchallenge/integration

若需添加多个跟踪器,可以将上面那段,在trackers.ini中添加多个

3.进行实验

运行

vot evaluate --workspace 实验存放目录 NCCPython(跟踪器名称,即上面中括号的名称)

跟踪器可以填写多个,用空格相隔。这时候,工具会安装Stack的配置文件,对你指定的多个跟踪器依次进行实验。省心省力,等它跑完回来收结果。

如果需要调整验证时候的参数。如重复次数等,需要自行移步修改stack文件(xxxx.yaml)。

4.计算指标

运行

vot analysis --workspace 实验存放目录 NCCPython(跟踪器名称,即上面中括号的名称) --format {html,json等}

工具安装Stack配置文件,执行计算指标的操作,然后安装输出格式,写到对应文件格式中。

VOT Toolkit工具使用说明(Python版)相关推荐

  1. python四级成绩_四六级准考证号模糊查询工具下载-英语四六级准考证号模糊查询小工具下载Python版-西西软件下载...

    想查自己的四六级成绩缺忘了准考证号码?试试英语四六级准考证号模糊查询小工具呗!这是一款由Python爬虫语音编写成的小软件,只需要输入身份号或者准考证前十位数,它可以帮你快速的查询出你的四六级成绩和准 ...

  2. 双色球彩票查询号码和生成随机号工具(python版)

    首先双色球查询号码必须要调用一个网站的数据,python作为爬虫类比较好的选择. 我这里爬取的是猫手网下的数据,获取到红球5位和一位篮球,用red和blue隔开 红球范围是1-33,蓝球范围是1-16 ...

  3. Manning大神牵头,斯坦福开源Python版NLP库Stanza:涵盖66种语言

    点击上方"AI遇见机器学习",选择"星标"公众号 重磅干货,第一时间送达 转自:机器之心 对于斯坦福 NLP 库,我们一定不会陌生,但是这一库主要基于 Java ...

  4. 【重磅来袭】斯坦福开源Python版NLP库Stanza:涵盖66种语言!

    关注上方"深度学习技术前沿",选择"星标公众号", 资源干货,第一时间送达! 对于斯坦福 NLP 库,我们一定不会陌生,但是这一库主要基于 Java.近日,Ch ...

  5. pyDes 实现 Python 版的 DES 对称加密/解密--转

    https://my.oschina.net/leejun2005/blog/586451 手头有个 Java 版的 DES 加密/解密程序,最近想着将其 Python 重构下,方便后续脚本解析,捣鼓 ...

  6. 【人脸识别】人脸验证算法Joint Bayesian详解及实现(Python版)

    人脸验证算法Joint Bayesian详解及实现(Python版) Tags: JointBayesian DeepLearning Python 本博客仅为作者记录笔记之用,不免有很多细节不对之处 ...

  7. python栈应用_栈应用之 后缀表达式计算 (python 版)

    栈应用之 后缀表达式计算 (python 版) 后缀表达式特别适合计算机处理 1.  中缀表达式.前缀表达式.后缀表达式区别 中缀表达式:(3 - 5) * (6 + 17 * 4) / 3 17 * ...

  8. 发明者本地回测平台python版[博]

    原创博客地址:发明者本地回测平台python版[博] 网页版策略开发问题 1,没有自动提示 2,tab自动4个空格,问题是编译器无法识别4个空格,只能再把自动填充4空格改成tab 另一方面,官方提供安 ...

  9. [转载] Python版简易计算器的实现

    参考链接: Python | 使用Tkinter的简单GUI计算器 学了一周的Python,这篇文章算是为这段时间自学做的小总结. 一.Python简介 Python是一门十分优美的脚本语言,如果学过 ...

最新文章

  1. MyEclipse快捷键
  2. 从零開始学androidlt;SeekBar滑动组件.二十二.gt;
  3. qt 中转化图片格式与大小的方法
  4. EF Core For MySql查询中使用DateTime.Now作为查询条件的一个小问题
  5. 二维粗糙海面matlab,三维随机粗糙海面的Monte-Carlo仿真
  6. ulimit常用参数介绍
  7. python socket接收图像 数据_python中socket接受数据的三种方法 | 学步园
  8. Spring Boot集成RabbitMQ发送接收JSON
  9. [转载] python中sort()与sorted()
  10. 网络编程基础概念-网络协议
  11. 降水小波分析matlab程序,小波分析MATLAB程序
  12. 交互设计——超越人机交互
  13. 电脑右下角,电脑右下角的小喇叭不见了怎么办【解决方法】
  14. 用scribefire写blog
  15. python 简单点餐系统
  16. jvm的类加载和运行时数据区和垃圾回收
  17. Android 4.4 系统如何恢复出厂设置
  18. Java高并发三部曲
  19. 计算机术语什么叫袜子,大电脑织袜机部分功能操作与说明
  20. 汇编语言中PTR的含义及作用

热门文章

  1. 智能家居 打造一间乐享智能生活的“聪明屋”
  2. 【模板】最小费用最大流
  3. 【PCB专题】PCB 阻焊层(solder mask)与助焊层(paste mask)有什么区别
  4. C#操作TreeView组件中的一些常用方法
  5. Dilworth定理的简单应用(导弹拦截题解)
  6. 人工智能 知识总结
  7. 【干货】MySQL底层架构设计,你了解多少?
  8. 物理信息神经网络PINNs : Physics Informed Neural Networks 详解
  9. 云计算平台建设总体技术方案
  10. Windows11右键菜单修改为Win10模式的方法