• 基于MobileNet-Yolov4搭建轻量化目标检测


    网络替换实现思路

    1、网络结构解析与替换思路解析

    在这里插入图片描述
    对于YoloV4而言,其整个网络结构可以分为三个部分。
    分别是:

    • 1、主干特征提取网络Backbone,对应图像上的CSPdarknet53
    • 2、加强特征提取网络,对应图像上的SPPPANet
    • 3、预测网络YoloHead,利用获得到的特征进行预测

    其中:

    • 第一部分主干特征提取网络的功能是进行初步的特征提取,利用主干特征提取网络,我们可以获得三个初步的有效特征层。
    • 第二部分加强特征提取网络的功能是进行加强的特征提取,利用加强特征提取网络,我们可以对三个初步的有效特征层进行特征融合,提取出更好的特征,获得三个更有效的有效特征层。
    • 第三部分预测网络的功能是利用更有效的有效特整层获得预测结果。

    在这三部分中,第1部分和第2部分可以更容易去修改。第3部分可修改意义不大,毕竟本身也只是3x3卷积和1x1卷积的组合。

    mobilenet系列网络可用于进行分类,其主干部分的作用是进行特征提取,我们可以使用mobilenet系列网络代替yolov4当中的CSPdarknet53进行特征提取,将三个初步的有效特征层相同shape的特征层进行加强特征提取,便可以将mobilenet系列替换进yolov4当中了。

    3、将特征提取结果融入到yolov4网络当中

    在这里插入图片描述
    对于yolov4来讲,我们需要利用主干特征提取网络获得的三个有效特征进行加强特征金字塔的构建。

    利用上一步定义的MobilenetV1、MobilenetV2、MobilenetV3三个函数我们可以获得每个Mobilenet网络对应的三个有效特征层。

    我们可以利用这三个有效特征层替换原来yolov4主干网络CSPdarknet53的有效特征层。

    为了进一步减少参数量,我们可以使用深度可分离卷积代替yoloV4中用到的普通卷积。

    4、修改加强特征提取网络PAnet,减少网络参数量

    对于PAnet的参数量主要集中在3x3的卷积中,如果可以对3x3卷积进行修改的话,就可以大幅度减少参数量。利用深度可分离结构快替换3x3卷积

    5.修改卷积核倍率因子alpha

    卷积核倍率因子alpha,控制卷积核个数,修改该参数可以减少卷积核个数,从而减少网络的参数量

    详见博客:Tensorflow2 利用mobilenet系列(v1,v2,v3)搭建yolov4目标检测平台
    github源码:https://github.com/bubbliiiing/mobilenet-yolov4-tf2

    B站视频:Tensorflow2 搭建自己的Mobilenet-YoloV4目标检测平台

  • 相关阅读:
    CentOS部署Redis(详细)
    17【redux】
    TS 入门指南
    蓝桥杯嵌入式第12届真题(完成) STM32G431
    git修改文件名称提交
    SAP PO运维(二):XML消息归档和删除配置
    学会用命令行创建uni-app项目并用vscode开放项目
    卷积操作的不同类型
    中文编程开发语言工具开发案例:多种称重方式编程实际例子
    挖掘文本的奇妙力量:传统与深度方法探索匹配之道
  • 原文地址:https://blog.csdn.net/weixin_38346042/article/details/125472756