目标检测网络中的Backbone,Neck和Head - 以YOLOv4为例
目标检测网络中常见到的三个概念:
- Backbone:在不同图像细粒度上聚合并形成图像特征的卷积神经网络;
- Neck:一系列混合和组合图像特征的网络层,并将图像特征传递到预测层;
- Head:对图像特征进行预测,生成边界框和并预测类别;
以YOLOv4为例:
先观察YOLOv4框架:
其中,
- Backbone主要是CSPDarknet53组成,其主要是由五层残差网络resblock_body组成,其输入的图像像素是608*608,其中resblock_body有专门的卷积操作来降低分辨率,每一层的resblock_body将像素逐渐降低一倍,其主要功能是提取图像数据的特征信息。
- Neck主要是由SPP(左下部分Conv×3到Concat+Conv×3)和PANet组成。SPP主要功能是增加感受野作用,PANet主要功能是将提取的特征信息转换为坐标、类别等信息,其主要是由上采样和下采样组成。
- Head继续沿袭yolov3的检测头,其三个检测头主要功能是:得到输出之后,与真实数据标注相比较,计算出损失函数(其损失函数主要是由三部分组成:①定位损失②置信度损失③分类损失),然后根据需要对数据格式进行reshape,同时对原始格点坐标做相应的激活。