经过数小时的研究,我找不到任何关于使用对象检测 API 进行多标签预测的示例。基本上我想预测图像中每个实例的多个标签。如下图所示:
我想预测服装类别,还要预测颜色和图案等属性。
根据我的理解,我需要将每个属性的更多分类头附加到第二阶段 ROI 特征图,并对每个属性的损失求和?但是,我无法在对象检测代码中实现这一点。有人可以给我一些关于我应该开始修改哪些功能的提示吗?谢谢你。
经过数小时的研究,我找不到任何关于使用对象检测 API 进行多标签预测的示例。基本上我想预测图像中每个实例的多个标签。如下图所示:
我想预测服装类别,还要预测颜色和图案等属性。
根据我的理解,我需要将每个属性的更多分类头附加到第二阶段 ROI 特征图,并对每个属性的损失求和?但是,我无法在对象检测代码中实现这一点。有人可以给我一些关于我应该开始修改哪些功能的提示吗?谢谢你。
根据性能要求和平台,一种方法可能是通过在管道中使用多个分类器来简化问题。例如,您可以使用多类对象检测器(在您的示例中为“tee”和“pant”)来捕获感兴趣的区域;然后根据边界框裁剪这些区域,并将这些裁剪区域输入另一个模型,在这种情况下,它没有位置要求(“颜色”和“图案”)。
对于多类对象检测指南,我可能会推荐来自Tensorflow Git repo的Eager Few Shot Object Detection Colab。在“为训练准备数据”单元格注释中:
num_classes = 1
category_index = {duck_class_id: {'id': duck_class_id, 'name': 'rubber_ducky'}}
更新它可以在不改变模型的情况下启用多类检测。例如,以下将创建两个类:
num_classes = 2
category_index = {
1: {'id': 1,
'name': 'tee'},
2: {'id': 2,
'name': 'pant'}
}
然后根据这个输出,将这些裁剪区域输入另一个分类器。