You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Detectron2训练自定义分割数据集遇文件找不到错误求助

问题原因及解决办法

核心问题1:配置合并顺序错误

你先设置了自定义数据集,再执行merge_from_file,而官方COCO配置文件会覆盖你之前设置的DATASETS.TRAIN和DATASETS.TEST,导致程序仍去寻找COCO的标注文件,这就是报错的根本原因。

核心问题2:权重路径设置错误

cfg.MODEL.WEIGHTS需要指向预训练权重文件(.pth格式),而非配置文件(.yaml),你当前填写的yaml路径会导致后续权重加载失败。


修正后的完整配置代码

cfg = get_cfg()
# 先合并官方配置文件
cfg.merge_from_file(model_zoo.get_config_file("COCO-InstanceSegmentation/mask_rcnn_R_50_FPN_3x.yaml"))
# 再覆盖自定义配置项
cfg.MODEL.DEVICE = "cpu"
cfg.DATASETS.TRAIN = ("category_train",)
cfg.DATASETS.TEST = ()

# 修正权重路径:使用官方预训练权重的下载链接
cfg.MODEL.WEIGHTS = model_zoo.get_checkpoint_url("COCO-InstanceSegmentation/mask_rcnn_R_50_FPN_3x.yaml")

cfg.DATALOADER.NUM_WORKERS = 0
cfg.SOLVER.IMS_PER_BATCH = 8
cfg.SOLVER.BASE_LR = 0.00025  # pick a good LR

cfg.SOLVER.MAX_ITER = 25000
cfg.SOLVER.STEPS = []
cfg.MODEL.ROI_HEADS.BATCH_SIZE_PER_IMAGE = 512
cfg.MODEL.ROI_HEADS.NUM_CLASSES = 6

额外注意事项

  • 确保自定义数据集category_train已正确注册到Detectron2,标注格式符合框架要求(如COCO格式)。
  • 若本地已下载预训练权重,可直接填写本地.pth文件的绝对路径,替代model_zoo.get_checkpoint_url。

内容的提问来源于stack exchange,提问作者Kamran Gasimov

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.17 00:15:43