【mmsegmentaion训练自己数据集】

本文详细介绍了如何使用mmsegmentation对自定义VOC数据集进行训练,包括准备数据集、选择模型、修改配置文件、加载预训练权重,以及解决常见问题如代码生效、加载模型和模型兼容性等。
摘要由CSDN通过智能技术生成

1. 准备VOC数据集

就按照deeplabv3的转换
在这里插入图片描述

2. 如何训练

2.1 选择模型【配置文件,用什么模型】

  1. 以deeplabv3为例, 配置文件名包含所用的数据集类型,选择VOC,不要带aug增强数据集的,带aug的后面还需要转换数据集。
  2. 可以看到voc格式的文件名,都带aug,那么,先选择一个VOC的配置文件,复制一份,重命名,删除文件名中的aug

在这里插入图片描述

  1. 打开刚才复制的配置文件,可以看到里面导入的dataset也是带aug的,找到这个文件的位置
    在这里插入图片描述
    可以看到上面这个voc数据集文件是不带增强
    在这里插入图片描述
    所以,复制pascal_voc12.py使用,重命名成想使用的名字
    在这里插入图片描述
    修改模型配置文件中,为刚刚重命名的那个
    在这里插入图片描述

2.2 修改数据集根目录和num_classes

2.2.1 修改模型需要使用的configs/base/datasets/XXX_pascal_voc12.py文件里的数据集根目录
注意:data是在tools文件夹下的
在这里插入图片描述
2.2.2 修改模型需要使用的configs/base/models/XXX.py文件里的2处num_classes
**注意:如果配置文件里面有num_classes也要改,子孙文件会覆盖前面继承的文件参数

在这里插入图片描述
在这里插入图片描述

2.3 class_names.py中修改两处

在这里插入图片描述
在这里插入图片描述

2.4 修改mmseg/datasets/voc.py中数据集属性类中的class和palette

在这里插入图片描述

2.5 为什么要改mmseg/datasets/voc.py这个文件?如何找到这个文件?

因为使用的数据集格式不同,修改的文件也不相同,在最开始使用的配置文件中,改根目录前一行代码,就确定了
在这里插入图片描述

3. 官网下载预训练权重

https://github.com/open-mmlab/mmcv/tree/master/mmcv/model_zoo
在这里插入图片描述

4. 修改训练次数和权重

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

5. 总结

要改哪些地方

  1. 选定的configs文件中,base/models
    在这里插入图片描述
  2. base/datastes
    在这里插入图片描述
  3. schedule
    在这里插入图片描述

6. QA

1. 当发现修改过的代码没生效时

  1. 查查代码有没有上传服务器
  2. 修改完代码有没有pip install -e.

2. 加载预训练模型的命令行

不是直接load_from,是–cfg-options load_from=“/.pth”
在这里插入图片描述

3. 模型不匹配时

去官网看看,是不是下载错了预训练模型,因为很多模型不支持voc的数据集格式

7.环境

代码版本是V1.2.2
在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值