复现Multi-Adapter RGBT Tracking(一)——pretrain

这里简单谈一下复现这篇文章所遇到的几个问题:
①在我将run_tracker.py里的文件路径全部改完并运行之后,报了这个错误:

cannot import name ‘imresize’ from ‘scipy.misc’

然后我百度发现scipy版本问题。scipy>=1.0.0不再包含函数imresize,官网给出的解释及解决办法如下:

from scipy.misc import imresize
imresize()

改为:

from PIL import Image
numpy.array(Image.fromarray(arr).resize())

参考文献:官网
cannot import name ‘imresize’ from ‘scipy.misc’
而这里具体是改为:

from PIL import Image
......
# scaled = imresize(cropped, (img_size, img_size))
scaled=np.array(Image.fromarray(cropped).resize(img_size, img_size))

②文章中的print语法貌似是高版本不适用,所以也要改,以下我用一个例子来说明:

#如train.py中的:
print "Cycle %2d, K %2d (%2d), Loss %.3f, Prec %.3f, Time %.3f" % \
                    (i, j, k, loss.data[0], prec[k], toc)

改为:

print ("Cycle %2d, K %2d (%2d), Loss %.3f, Prec %.3f, Time %.3f" % \
                    (i, j, k, loss.data[0], prec[k], toc))

例子:

# print "Save model to %s" % opts['model_path']

改为:

 print ("Save model to %s" % opts['model_path'])

③在执行train.py中又遇到这个错误:

AttributeError: ‘dict’ object has no attribute ‘iteritems’

原因:python3中iteritems()被items()代替了

解决办法:将××.iteritems()改成××.items()
参考文献:AttributeError: ‘dict‘ object has no attribute ‘iteritems‘

④继续执行train.py遇到错误:

ValueError: Unknown resampling filter (107). Use Image.NEAREST (0), Image.LANCZOS (1), Image.BILINEAR (2), Image.BICUBIC (3), Image.BOX (4) or Image.HAMMING (5)

解决办法:
在这里插入图片描述
参考文献:
解决“ValueError: Unknown resampling filter (107). Use Image.NEAREST (0), Image.LANCZOS (1), Image.BIL”

⑤继续执行train.py遇到错误:

IndexError: invalid index of a 0-dim tensor. Use tensor.item() in Python or tensor.item<T>() in C++ to convert a 0-dim tensor to a number

该问题的解决办法:
第一种:
如果不想更改代码,则需要安装低版本的pytorch。
但不推荐这种做法。因为低版本的在现在很多开源新算法中已经被抛弃了。
第二种:
将代码中的

 return prec.data[0]

修改为:

 return prec.item()

参考博客:高版本pytorch出现IndexError: invalid index of a 0-dim tensor.问题解决办法

最终跑出来了:在这里插入图片描述

  • 3
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值