训练独立的对象检测模型

时间:2020-06-27 10:22:51

标签: python tensorflow deep-learning object-detection image-segmentation

我正在研究一个项目,用于在给定材料的输入图像的情况下检测和分割材料中的两个不同缺陷。

我从关注一个缺陷开始,因为它是训练集中的主要缺陷。我实现了MaskRCNN (Matterport)模型并适用于PNG注释蒙版。在花了一些时间对其进行微调之后,它确实运行良好。

对大多数人来说,这可能很幼稚/轻松,但是我的问题是:

  • 如果计算时间/功率不受限制,则为每类对象训练独立模型(两个模型,每个缺陷每个模型)是否是优选/有利的?我将图像并行地馈送到两个模型,一个将返回缺陷1的实例,而另一个将返回缺陷2的实例。

这个问题的原因是,我觉得如果您训练一个模型进行多类别检测,则可能会发生这样的情况:在尝试最小化损失时,由于您正在优化总体损失,因此您正在优化工作权重对于这两个类别都可以,但是您并没有针对每个类别分别优化权重和损失,因此可能会丢失一些检测/分段精度。

一种常见的方法是尝试两种替代方法:1.两个类都使用单个模型,并且2.两个类都使用两个独立模型。

我最终将实现这两​​种选择并进行比较。但是,我想知道第二种替代方法是否已经过测试,如果从这项研究中得出论文,那么有什么经验可以正确证明该替代方法。

1 个答案:

答案 0 :(得分:0)

在大多数情况下,如果为每个类训练一个单独的模型,则当您拥有许多类并且计算资源不成问题时,它将提高性能。但据我所知,您只有两个班级,因此通过训练两个不同的模型,您不会看到准确性有太大提高。您可以尝试两种方法,但是当要检测许多类时,将是有益的。