【Yolact训练自己的数据从实战到调参】

100%完美运行,期间踩过许多坑,数据集的坑、代码的坑都有。现在做一下总结,也希望后来者能快速上手,避免浪费不必要的时间。


写在前面,读者们就不要偷懒了,按照我这边的步骤一步一步操作是肯定能够成功的。鄙人踩过的大多数坑皆是因为耍小聪明。coco数据集的准备我在【Yolact数据集制作-labelme使用与转coco详解】已有详细介绍,按步骤操作即可

【Yolact数据集制作-labelme使用与转coco详解】


一、训练自己的数据与预测

1、训练自己的数据train.py

1.1准备权重文件

准备数据集和权重文件,数据集在第一章已经配置好,这里介绍权重文件
进入https://github.com/dbolya/yolact下载权重文件到根目录./weights文件夹下(weights文件夹自己创建)

对应权重文件如下:
For Resnet101, download resnet101_reducedfc.pth from here.
For Resnet50, download resnet50-19c8e357.pth from here.
For Darknet53, download darknet53.pth from here.

1.2 修改默认配置文件config.py

进入data文件夹下找到config.py打开,按自己的需求修改下面的内容
在这里插入图片描述

1.2训练数据

#使用默认基础配置yolact_base_config训练,batch_size=8 (报错就改小一点)
python train.py --config=yolact_base_config


#使用默认基础配置yolact_base_config训练,指定batch_size=5
accordingly. python train.py --config=yolact_base_config --batch_size=5


#使用吗,默认基础配置yolact_base_config训练,指定权重文件
train.py --config=yolact_base_config --resume=weights/yolact_base_10_32100.pth --start_iter=-1


#使用帮助查看各参数的作用
python train.py --help

1.3训练结果

  • 开始训练后,模型每10000次迭代保存一次模型到weights文件夹;也可以通过Ctrl + c 中断训练并保存模型到weights文件夹
  • 训练完成后会在weights文件夹生成权重模型,用于后续的预测。

2、预测eval.py

数据准备好以后后面的其实没太多好说的,直接看下面
–trained_model:选择权重模型
–image/images/video :选择是对单张图像预测还是一些图像或者视频文件
后面的是指定输入文件(夹)和输出文件夹,以 “ :”分隔

python eval.py --trained_model=weights/yolact_base_54_800000.pth --score_threshold=0.15 --top_k=15 --images=path/to/input/folder:path/to/output/folder

在这里插入图片描述

二、Yolact模型各代码部分解读

划 ############################################
是我修改的地方

1、data\config.py

1.1训练自己数据必修改的文件

config.py 比较重要的几个部分:
1) COCO_CLASSES :按labels.txt文件里的标签类型对应填好就行了
2) COCO_LABEL_MAP : 键值对数量与上面标签类型数量对应
3) DATASETS:主要包括 训练数据地址、验证数据地址指定class_name(COCO_CLASSES),指定label_map(COCO_LABEL_MAP)等

  • dataset_base = Config({ }):默认基础设置,如果train.py和eval.py中不指定config的话就使用当前配置

4) YOLACT v1.0 CONFIGS :自定义数据集必修改的部分,最高级的参数配置部分。

  • yolact_base_config = coco_base_config.copy({ }) : config 默认配置,他调用了上一部分的coco_base_config、DATASETS
    DATASETS
    YOLACT v1.0 CONFIGS

2、train.py

2.1 训练时可指定的参数

  • –batch_size:大小取决于你的显卡,报错就调小一点
  • –num_workers:线程数,一般都是需要设置为 “0”
  • –lr:学习率
  • –save_folder:训练完后模型保存的路径
  • –config:config配置文件选择,none为默认配置
  • –save_interval:每10000次迭代保存模型权重
  • –validation_epoch:每2个epoch进行一次验证计算
  • –dataset:数据集路径
parser.add_argument('--batch_size'
评论 15
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值