OTB官方评估代码python版本

可参考:OTB官方评估代码python版本--评估自己跟踪器,对比其他跟踪器

博主写的很好,按照步骤可以运行

 

以下有几点注意的地方

1、我是用ubuntu系统,创建虚拟环境安装的python=2.7.13

2、数据集是直接下载的博主整理好的

      如果要自己整理的话,按照博主教程整理即可,特别注意这一个步骤:

      在matlab版本的benchmark_v1.0.zip(matlab版本的OTB官方评估代码)里面有个initOmit文件夹,里面对应27个序列中不能作为初始化帧的记录,只要把他们都复制到对应序列下,并且全部重命名成init_omit.txt

3、自己的跟踪器结果

      我是用的MDnet结果(目前开源的一些跟踪器结果网上可以找到),100个txt格式文件,没有times文件夹,所以save_to_json.py第27行可以注释掉或删掉,不然会报错

      然后save_to_json.py中修改这两个地方

tracker = 'MDNet'
# replace your own path
txt_Results = 'your own path/MDNet'

注意自己跟踪器结果txt文件命名要与data/tb_100.txt文件中跟踪器命名一致,不然会报错

(例如我的文件Faceocc1.txt实际应该改为:FaceOcc1.txt)

      还有就是博主的SiamFC文件夹中几个特殊序列的命名为Human4、Jogging.1、Jogging.2、Skating2.1、Skating2.2,而我的就是Human4-2、Jogging-1、Jogging-2、Skating2-1、Skating2-2,所以我对util.py修改了下,修改结果为:

def _convert_name(oldname):
    newname = None
    if oldname == 'Human4-2':
        newname = 'Human4-2'
    elif oldname == 'Jogging-1':
        newname = 'Jogging-1'
    elif oldname == 'Jogging-2':
        newname = 'Jogging-2'
    elif oldname == 'Skating2-1':
        newname = 'Skating2-1'
    elif oldname == 'Skating2-2':
        newname = 'Skating2-2'

就是遇见这几个序列也不改变文件名。

      这两个py文件,util.py只是被save_to_json.py调用的。

4、我的实验结果就是JSON格式,要不要创建save_to_json.pyutil.py这两个文件

      虽然自己的结果也是JSON格式,但是自己的JSON格式不一定符合这个代码的格式,如果可以保证,则不需要这两个py文件,可以得到结果。

      自己可以跑完实验结果试一下,看可以吗。

5、通过运行run_trackers.py产生的是各个属性的json文件,最后画图只是调用了ALL.json文件画的。

      在draw_graph.py中修改两个地方可以画出MB等各属性的曲线(个人猜测,尝试了下应该是对的

      def get_overlap_graph 和 def get_precision_graph中的两句话:

        tracker = result[0].tracker
        attr = result[0]

 因为最后获得了12个json文件, result[0] 应该就是调用的第一个ALL.json,那么result[1]应该就是第二个 BC.json,自己可以试试。那两句代码的具体位置例如下面红色部分:

def get_overlap_graph(scoreList, fignum, evalType, testname):
    fig = plt.figure(num=fignum, figsize=(9,6), dpi=70)
    rankList = sorted(scoreList,
        key=lambda o: sum(o[0].successRateList), reverse=True)
    for i in range(len(rankList)):
        result = rankList[i]
        tracker = result[0].tracker   
        attr = result[0]

我按照本方法跑了下MDNet实验结果(后面又将官方的.mat结果转成.txt结果重新跑了下,发现和我收集的MDNet结果一样,故收集的MDNet实验结果是对的),

发现和论文中提供的有一点点小的差距,不过非常接近,论文中给的结果是matlab中.mat格式,不知道是不是这个原因。

除了MDNet方法,别的官方给出的跟踪器结果和博主跑出的结果一致,例如:CSK、MUSTer等。

结果如下:

 

  • 5
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 8
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值