栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

py-MDNet代码运行过程记录

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

py-MDNet代码运行过程记录

MDNet代码链接:py-MDNet
云GPU:featurize

训练部分
  • 对于源代码有两个结果一个是在VOT2013-2015数据集上训练的结果一个是在imagenet-VID上训练的结果
  • 先在VOT2013-2015进行训练,数据集下载地址可以参考这个博客(27条消息) 常见目标跟踪数据集下载链接整理(更新中)_laizi_laizi的博客-CSDN博客_目标跟踪数据集下载
  1. 根据readme保存下载的数据集,因为我在云服务器上跑的(云服务器选择的是featurize这个平台,相对比较平价好用,显卡选用的是RTX 3060)所以数据集的存放地址和readme里面的不一样,在运行代码时需要对一些路径进行修改,改成自己的路径就可以
  2. 修改prepro_vot.py的路径,其他文件的路径也需要进行相应的修改
#seq_home = 'datasets/VOT'
seq_home='/home/featurize/data'
seqlist_path = '/home/featurize/work/py-MDNet-master/datasets/list/vot-otb.txt'
output_path = '/home/featurize/work/py-MDNet-master/pretrain/data/vot-otb.pkl'
  1. 然后运行prepro_vot.py文件
    运行中出现的问题

    出现这个问题的主要原因是vot2015的数据集的图片存放在color目录下,所以需要对代码进行修改
gt = np.loadtxt(os.path.join(seq_home, seq, 'groundtruth.txt'), delimiter=',')
    if seq[0:7] == 'vot2015':
        seq = seq + '/color'
        img_list = sorted([p for p in os.listdir(os.path.join(seq_home, seq)) if os.path.splitext(p)[1] == '.jpg'])
    else:
        img_list = sorted([p for p in os.listdir(os.path.join(seq_home, seq)) if os.path.splitext(p)[1] == '.jpg'])
成功运行prepro_vot.py后生成vot-otb.pkl文件
  1. 运行train_mdnet.py文件

    对main中的函数进行修改如下,将默认数据集修改为vot

#parser.add_argument('-d', '--dataset', default='imagenet', help='training dataset {vot, imagenet}')
parser.add_argument('-d', '--dataset', default='vot', help='training dataset {vot, imagenet}')

出现下面的错误

解决办法可以参考博客:解决“ImportError: cannot import name ‘imresize’”_越野者的博客-CSDN博客
修改如下:

from PIL import Image
import numpy as np

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

这里的路径也要进行修改

#opts = yaml.safe_load(open('pretrain/options_{}.yaml'.format(args.dataset), 'r'))
opts = yaml.safe_load(open('/home/featurize/work/Myproject/MDNet/pretrain/options_{}.yaml'.format(args.dataset), 'r'))

potions_vot.yaml中的路径也要进行修改

# data path
data_path: "/home/featurize/work/Myproject/MDNet/pretrain/data/vot-otb.pkl"

# model path
init_model_path: "/home/featurize/work/model_mdnet/imagenet-vgg-m.mat"
model_path: "/home/featurize/work/Myproject/MDNet/models/mdnet_vot-otb.pth"

运行结束后:得到model:mdnet_vot-otb.pth

运行run_tracker.py文件
然后运行报如下错误
修改model.py文件

if run:
      x = module(x)
      if name == 'conv3':
          #x = x.view(x.size(0), -1)
          x = x.contiguous().view(x.size(0), -1)
      if name == out_layer:
          return x

本文仅是自己的运行记录,欢迎批评指正!!

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/925631.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号