假设一个 CNN 被训练来检测某种类型对象(人、汽车、房屋等)的边界框。
如果训练集中的每张图像只包含一个对象(及其对应的边界框),那么如果用于预测的输入包含多个对象,那么 CNN 能在多大程度上泛化以拾取所有对象?
为了让 CNN 在预测中挑选出多个对象,是否应该对训练图像进行下采样?
我没有具体的想法。我只是对一般行为感到好奇。
假设一个 CNN 被训练来检测某种类型对象(人、汽车、房屋等)的边界框。
如果训练集中的每张图像只包含一个对象(及其对应的边界框),那么如果用于预测的输入包含多个对象,那么 CNN 能在多大程度上泛化以拾取所有对象?
为了让 CNN 在预测中挑选出多个对象,是否应该对训练图像进行下采样?
我没有具体的想法。我只是对一般行为感到好奇。
我建议您阅读 r-cnn 论文或阅读有关它的教程。CNN 在最后一层将图像转换为高维向量,在分类的情况下,这个向量被发送到“softmax”层,在边界框回归的情况下,四个值:长度、宽度、一个点的位置bounding box ,从这个向量回归,所以如果你使用一个带有一个回归头的 cnn,你最终会得到一个边界框,而与训练集无关。
通常,物体边界框检测主要有三个步骤。
首先,模型或算法用于生成 ROI(感兴趣区域)或区域建议。这些区域建议是一组跨越整个图像的大型边界框。(即对象本地化组件)。
在第二步中,为每个边界框提取视觉特征(使用卷积的人脸、人物等),并对它们进行评估。基于视觉特征(即对象分类组件)确定感兴趣区域中是否存在以及哪些对象存在。
在最后的后处理步骤中,重叠的框被组合成一个单独的边界框(即非最大抑制)。