关于SiameseFC代码运行后跟踪性能很差的问题及解决方案

本人运行环境:Matlab2018a + VS2015 + cuda9.1 + cudnn7 + matconvnet-1.0-beta25

花了一天时间配环境,主要卡在使用GPU编译matconvnet上了。由于之前我用的是VS2017,所以一直编译失败, 换成VS2015就成功了。

简单修改代码中的路径后开始跑SiameseFC代码,发现了一个问题:跟踪性能特别差,基本上过了前几帧之后跟踪框就已经飘的看不见了...后来看了Github上一位大佬的评论才知道原因是原代码执行imresize()函数使用的是CPU,正确的方法是使用GPU。所以应该略微修改代码,具体如下:

需要修改/tracking/tracker_eval.m中第21行,原代码为:

responseMapsUP(:,:,s) = imresize(responseMaps(:,:,s), p.responseUp, 'bicubic');

需要改为:

responseMapsUP(:,:,s) = gpuArray(imresize(gather(responseMaps(:,:,s)), p.responseUp, 'bicubic'));

再次运行代码,就会发现能够较好地跟踪了。

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值