如何使用多个自定义数据集训练 Detectron2 模型

Posted

技术标签:

【中文标题】如何使用多个自定义数据集训练 Detectron2 模型【英文标题】:How to train Detectron2 model with multiple custom dataset 【发布时间】:2021-07-07 17:08:46 【问题描述】:

我想通过注册多个数据集来训练detectron2模型

我已经从不同的任务中提取了我的注释,现在我有多个需要一起训练的数据集。

Datasets Folder
Task1 -- annotations.json
      -- image dir
Task2 -- annotations.json
      -- image dir
Task3 -- annotations.json
      -- image dir
Task4 -- annotations.json
      -- image dir

我的问题是我们是否可以使用多个数据集来训练模型。 我们可以注册多个 coco 实例进行训练吗? 我想在 Task1 Task2 Task3 上训练我的模型并在 task4 上进行测试

from detectron2.data.datasets import register_coco_instances
register_coco_instances("train", ," ./Task1/annotations.json", "./Task1/imagedir")
register_coco_instances("Test", , "./Task4/annotations.json", "./Task4/imagedir")

或者我是否需要合并所有的 coco 实例!

请提供您的意见

【问题讨论】:

【参考方案1】:

回答我自己的问题。显然,没有这样的方法可以尝试多个数据集。如果您想组合不同的数据集,请使用 COCO Assitant 库。

安装的简单步骤是:

!pip install coco-assistant

【讨论】:

您最终使用了coco-assistant 吗?它解决了您的多数据集问题吗? 您是否需要披露与该创作者的任何隶属关系? @DV82XL 是的,我最终使用了 coco-assistant。它解决了我的多数据集问题 @Yunnosch,因为 coco-assistant 是开源的。我对创作者没有任何问题。如果您有具体问题,您可以随时联系创建者

以上是关于如何使用多个自定义数据集训练 Detectron2 模型的主要内容,如果未能解决你的问题,请参考以下文章

Detectron2:预测中没有实例

如何注册要与detectron2 一起使用的数据集?我们有 COCO JSON 格式的图像及其注释

使用自定义的Dataloader做数据增强格式统一等操作/像使用pytorch一样进行训练。

如何使用 Detectron2 的 tensorboard 获得测试准确性?

使用自定义数据集训练 SpaCy NER

使用翻译模型训练自定义数据集