YOLOV4网络结构解析
Darknet53
Darknet53是YOLOV3的骨干网络结构,因为网络有53层卷积层,所以名为Darknet53。
YOlOv4网络组成
YOLOV4原论文中对现有的目标检测网络结构进行了归纳,分为四部分:
- Input----网络的输入
- Backbone—用来从输入图形中提取特征
- Neck----对骨干网络提取的特征进行加工,多为特征融合等方式
- Dense/Sparse Prediction—用来对前面三部分的数据进行预测,即获得输入图形中objects的类别与边界框信息.
Input
YOLOV4的输入图形一般为416 X 416或608 X 608大小的RGB图像。
CSPDarknet
CSPDarkent是在YOLOV3的基础上进行的改进,主要的改进是在Darknet53的基础上加上了残差结构。
骨干网络的具体构建流程如下:
- CBM卷积模块:由一个传统的卷积层+BN层+Mish激活函数三个模块构成。
- CBL卷积模块:由普通卷积层+BN层+LeakyreLu激活函数等当个模块构成。
- Resunit:是两个CBM卷积构成的残差结构
- CSPX(X表示重复连接个数):如上图所示,由CBM,Resunit两个模块复合而成。
Neck
- 所谓Neck网络,更多的对Backbone提取的特征进行特征融合处理,YOLOV4输出四个特征层。
- 以416 x416大小的输入为例,输出特征层的带下分别我52 x 52、26 x 26及13 x 13。
-Neck的作用就是将三种不同的特征层进行特征融合,简单一点说就是将三层的特征进行上下采样扩展或缩小到相同的尺寸,进行特征融合。
Head
将处理好的数据展评处理,即得出输入图形中Objects的类别和边界框信息。
YOLOV4整体结构图和细节图
整体结构图:
各层细节图: