什么是物体检测“头”?

时间:2018-10-26 16:27:29

标签: machine-learning neural-network computer-vision conv-neural-network object-detection-api

我目前正在阅读SSD Single Shot Detector,我很难理解一个术语。该术语是“头”。当我听到这个词时,就像起初一样,我想到了网络的负责人。

我查看了由Google创建的object detection API,发现"heads" folder具有不同的头部类型,一种用于框编码,另一种用于类别预测。

抽象“ head”类的文档并没有启发性:

  

不同模型中的所有不同种类的预测头都将继承   从这个班。所有头等舱之间的共同点是   predict函数将features作为其第一个参数。

我想我对它们有较高的了解,但是我没有具体的定义。有人可以定义一个“头”并解释一个人如何拥有“盒预测头”或“分类头”吗?

1 个答案:

答案 0 :(得分:2)

在某些领域,“头”是某个事物的开始或开始的术语。 在这个领域是不同的。 在计算机视觉的许多任务中,通常使用“骨干”,通常在ImageNet上对其进行预训练。这样,将主干用作特征提取器,即可为输入提供特征图表示。 现在您已经有了这样的特征图,您需要执行实际的任务,例如检测,分割等。 完成此操作的方法通常是在特征地图上应用“检测头”,因此就像连接到主干的头一样。

对于对象检测,您需要两种输出类型:分类置信度和边界框。它们可以是两个不同的解耦磁头(例如RetinaNet),也可以是计算两个输出的单个磁头(例如SSD)。在这两种情况下,您都需要指出解释输出的确切方法。例如,边界框回归输出,它们是否相对于锚?还是相对于整个图像?分类置信度-您是否在输出上使用softmax来接收置信度?等