位置: IT常识 - 正文

yolov5从V1.0到V6.2网络变化梳理(yolov5使用教程)

编辑:rootadmin
yolov5从V1.0到V6.2网络变化梳理

推荐整理分享yolov5从V1.0到V6.2网络变化梳理(yolov5使用教程),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:yolov5版本,yolov5 5.0,yolov5m,yolov5版本,yolov5版本,yolov5版本,yolov5版本,yolov5 5.0,内容如对您有帮助,希望把文章链接给更多的朋友!

最近在学yolov5的网络结构,发现不同的人描述yolov5的网络结构并不同,有的说是C3模块有的说是BottleneckCSP,这给我一个小白带来了很大困扰。查询了很多文章终于在一篇文章中有博主提到,yolov5新版本用C3代替了BottleneckCSP。所以为了搞清楚yolov5的具体网络结构,在这里把所有的版本结构记录下来,以便之后的学习理解与查看。

v1.0版本如下: backbone主要模块:Focus、Conv、BottleneckCSP、SPP head主要模块:BottleneckCSP、Conv、nn.Upsample、Concat、nn.Conv2d

# YOLOv5 backbonebackbone: # [from, number, module, args] [[-1, 1, Focus, [64, 3]], # 0-P1/2 [-1, 1, Conv, [128, 3, 2]], # 1-P2/4 [-1, 3, BottleneckCSP, [128]], [-1, 1, Conv, [256, 3, 2]], # 3-P3/8 [-1, 9, BottleneckCSP, [256]], [-1, 1, Conv, [512, 3, 2]], # 5-P4/16 [-1, 9, BottleneckCSP, [512]], [-1, 1, Conv, [1024, 3, 2]], # 7-P5/32 [-1, 1, SPP, [1024, [5, 9, 13]]], ]# YOLOv5 headhead: [[-1, 3, BottleneckCSP, [1024, False]], # 9 [-1, 1, Conv, [512, 1, 1]], [-1, 1, nn.Upsample, [None, 2, 'nearest']], [[-1, 6], 1, Concat, [1]], # cat backbone P4 [-1, 3, BottleneckCSP, [512, False]], # 13 [-1, 1, Conv, [256, 1, 1]], [-1, 1, nn.Upsample, [None, 2, 'nearest']], [[-1, 4], 1, Concat, [1]], # cat backbone P3 [-1, 3, BottleneckCSP, [256, False]], [-1, 1, nn.Conv2d, [na * (nc + 5), 1, 1]], # 18 (P3/8-small) [-2, 1, Conv, [256, 3, 2]], [[-1, 14], 1, Concat, [1]], # cat head P4 [-1, 3, BottleneckCSP, [512, False]], [-1, 1, nn.Conv2d, [na * (nc + 5), 1, 1]], # 22 (P4/16-medium) [-2, 1, Conv, [512, 3, 2]], [[-1, 10], 1, Concat, [1]], # cat head P5 [-1, 3, BottleneckCSP, [1024, False]], [-1, 1, nn.Conv2d, [na * (nc + 5), 1, 1]], # 26 (P5/32-large) [[], 1, Detect, [nc, anchors]], # Detect(P5, P4, P3) ]yolov5从V1.0到V6.2网络变化梳理(yolov5使用教程)

v2.0版本如下: backbone主要模块:Focus、Conv、BottleneckCSP、SPP head主要模块:BottleneckCSP、Conv、nn.Upsample、Concat v2.0与V1.0相比最大的区别就是少了nn.Conv2d模块,并且Detect指定为17, 20, 23层输出

# YOLOv5 backbonebackbone: # [from, number, module, args] [[-1, 1, Focus, [64, 3]], # 0-P1/2 [-1, 1, Conv, [128, 3, 2]], # 1-P2/4 [-1, 3, BottleneckCSP, [128]], [-1, 1, Conv, [256, 3, 2]], # 3-P3/8 [-1, 9, BottleneckCSP, [256]], [-1, 1, Conv, [512, 3, 2]], # 5-P4/16 [-1, 9, BottleneckCSP, [512]], [-1, 1, Conv, [1024, 3, 2]], # 7-P5/32 [-1, 1, SPP, [1024, [5, 9, 13]]], [-1, 3, BottleneckCSP, [1024, False]], # 9 ]# YOLOv5 headhead: [[-1, 1, Conv, [512, 1, 1]], [-1, 1, nn.Upsample, [None, 2, 'nearest']], [[-1, 6], 1, Concat, [1]], # cat backbone P4 [-1, 3, BottleneckCSP, [512, False]], # 13 [-1, 1, Conv, [256, 1, 1]], [-1, 1, nn.Upsample, [None, 2, 'nearest']], [[-1, 4], 1, Concat, [1]], # cat backbone P3 [-1, 3, BottleneckCSP, [256, False]], # 17 [-1, 1, Conv, [256, 3, 2]], [[-1, 14], 1, Concat, [1]], # cat head P4 [-1, 3, BottleneckCSP, [512, False]], # 20 [-1, 1, Conv, [512, 3, 2]], [[-1, 10], 1, Concat, [1]], # cat head P5 [-1, 3, BottleneckCSP, [1024, False]], # 23 [[17, 20, 23], 1, Detect, [nc, anchors]], # Detect(P3, P4, P5) ]

V3.0与V3.1和V2.0相同,这里不放代码;

从V4.0版本开始,作者开始用C3代替了BottleneckCSP,而其他的结构不变。C3结构作用基本相同均为BottleneckCSP架构,只是在修正单元的选择上有所不同,其包含了3个标准卷积层以及多个Bottleneck模块(数量由配置文件.yaml的n和depth_multiple参数乘积决定)

# YOLOv5 backbonebackbone: # [from, number, module, args] [[-1, 1, Focus, [64, 3]], # 0-P1/2 [-1, 1, Conv, [128, 3, 2]], # 1-P2/4 [-1, 3, C3, [128]], [-1, 1, Conv, [256, 3, 2]], # 3-P3/8 [-1, 9, C3, [256]], [-1, 1, Conv, [512, 3, 2]], # 5-P4/16 [-1, 9, C3, [512]], [-1, 1, Conv, [1024, 3, 2]], # 7-P5/32 [-1, 1, SPP, [1024, [5, 9, 13]]], [-1, 3, C3, [1024, False]], # 9 ]# YOLOv5 headhead: [[-1, 1, Conv, [512, 1, 1]], [-1, 1, nn.Upsample, [None, 2, 'nearest']], [[-1, 6], 1, Concat, [1]], # cat backbone P4 [-1, 3, C3, [512, False]], # 13 [-1, 1, Conv, [256, 1, 1]], [-1, 1, nn.Upsample, [None, 2, 'nearest']], [[-1, 4], 1, Concat, [1]], # cat backbone P3 [-1, 3, C3, [256, False]], # 17 (P3/8-small) [-1, 1, Conv, [256, 3, 2]], [[-1, 14], 1, Concat, [1]], # cat head P4 [-1, 3, C3, [512, False]], # 20 (P4/16-medium) [-1, 1, Conv, [512, 3, 2]], [[-1, 10], 1, Concat, [1]], # cat head P5 [-1, 3, C3, [1024, False]], # 23 (P5/32-large) [[17, 20, 23], 1, Detect, [nc, anchors]], # Detect(P3, P4, P5) ]

一张图快速了解C3与BottleneckCSP区别(从别人那扒的,嘘): V5.0版本也没有改变网络结构,这里不放代码;

v6.0版本将第0层的Focus替换成Conv,将SPP替换成SPPF; ps:SPPF比SPP快了一倍时间yolov5 github上有代码验证,这里只放结果。

# YOLOv5 v6.0 backbonebackbone: # [from, number, module, args] [[-1, 1, Conv, [64, 6, 2, 2]], # 0-P1/2 [-1, 1, Conv, [128, 3, 2]], # 1-P2/4 [-1, 3, C3, [128]], [-1, 1, Conv, [256, 3, 2]], # 3-P3/8 [-1, 6, C3, [256]], [-1, 1, Conv, [512, 3, 2]], # 5-P4/16 [-1, 9, C3, [512]], [-1, 1, Conv, [1024, 3, 2]], # 7-P5/32 [-1, 3, C3, [1024]], [-1, 1, SPPF, [1024, 5]], # 9 ]# YOLOv5 v6.0 headhead: [[-1, 1, Conv, [512, 1, 1]], [-1, 1, nn.Upsample, [None, 2, 'nearest']], [[-1, 6], 1, Concat, [1]], # cat backbone P4 [-1, 3, C3, [512, False]], # 13 [-1, 1, Conv, [256, 1, 1]], [-1, 1, nn.Upsample, [None, 2, 'nearest']], [[-1, 4], 1, Concat, [1]], # cat backbone P3 [-1, 3, C3, [256, False]], # 17 (P3/8-small) [-1, 1, Conv, [256, 3, 2]], [[-1, 14], 1, Concat, [1]], # cat head P4 [-1, 3, C3, [512, False]], # 20 (P4/16-medium) [-1, 1, Conv, [512, 3, 2]], [[-1, 10], 1, Concat, [1]], # cat head P5 [-1, 3, C3, [1024, False]], # 23 (P5/32-large) [[17, 20, 23], 1, Detect, [nc, anchors]], # Detect(P3, P4, P5) ]

V6.1和V6.2版本与V6.0相同,这里不放代码;

总结: V1.0版本backbone主要模块:Focus、Conv、BottleneckCSP、SPP;head主要模块:BottleneckCSP、Conv、nn.Upsample、Concat、nn.Conv2d。 V2.0版本在V1.0版本基础上删去nn.Conv2d,并且Detect指定为17, 20, 23层输出。 V4.0版本用C3代替了BottleneckCSP,而其他的结构不变。 V6.0版本将第0层的Focus替换成Conv,将SPP替换成SPPF;

最后放一张V6.1版本网络结构图:(来自github官方)

本文链接地址:https://www.jiuchutong.com/zhishi/287068.html 转载请保留说明!

上一篇:对象存储OSS之ossbrowser的使用(oss对象储存的副本储存原则)

下一篇:是谁不断叫醒正在睡眠的电脑?这么一查就知道(是谁唤醒你)

  • 先实名认证还是先域名注册?

    先实名认证还是先域名注册?

  • 网店宝贝是“千里马”你是伯乐吗(网店宝这个软件怎么样)

    网店宝贝是“千里马”你是伯乐吗(网店宝这个软件怎么样)

  • 支付宝禁止陌生人转账在哪(支付宝禁止陌生人发消息)

    支付宝禁止陌生人转账在哪(支付宝禁止陌生人发消息)

  • 荣耀30pro+防水级别是多少(荣耀30pro防水等级多少)

    荣耀30pro+防水级别是多少(荣耀30pro防水等级多少)

  • 为什么qq空间没有查看权限(为什么qq空间没人点赞)

    为什么qq空间没有查看权限(为什么qq空间没人点赞)

  • 微信怎么设置腾讯翻译(微信怎么设置腾讯小红花动态)

    微信怎么设置腾讯翻译(微信怎么设置腾讯小红花动态)

  • 华为Mate30 RS保时捷设计手机几时上市

    华为Mate30 RS保时捷设计手机几时上市

  • 嘀嗒平台收多少手续费(嘀嗒平台收多少押金)

    嘀嗒平台收多少手续费(嘀嗒平台收多少押金)

  • 机器智能的种类包括哪些(机器智能的种类有哪些)

    机器智能的种类包括哪些(机器智能的种类有哪些)

  • 语音通话中断是怎么回事(语音通话中断原因)

    语音通话中断是怎么回事(语音通话中断原因)

  • 微信怎么双向清除聊天记录(微信怎么双向清除照片记录)

    微信怎么双向清除聊天记录(微信怎么双向清除照片记录)

  • 飞利浦手机恢复出厂设置密码(飞利浦手机恢复出厂密码多少)

    飞利浦手机恢复出厂设置密码(飞利浦手机恢复出厂密码多少)

  • 陌陌实名认证当前身份信息无法使用怎么办(陌陌上实名认证)

    陌陌实名认证当前身份信息无法使用怎么办(陌陌上实名认证)

  • 苹果6splus的小圆点在哪里设置(苹果6splus的小圆点中怎么又多出了一个小圆点)

    苹果6splus的小圆点在哪里设置(苹果6splus的小圆点中怎么又多出了一个小圆点)

  • 小爱语音引擎有啥用(小爱语音引擎有哪些功能)

    小爱语音引擎有啥用(小爱语音引擎有哪些功能)

  • oppo桌面图标怎么设置(oppo桌面图标怎么弄到下面)

    oppo桌面图标怎么设置(oppo桌面图标怎么弄到下面)

  • 备份数据的方法(备份数据方法 专利)

    备份数据的方法(备份数据方法 专利)

  • 钉钉在哪里查工资信息(钉钉在哪里查工作证)

    钉钉在哪里查工资信息(钉钉在哪里查工作证)

  • 荣耀v20联名版区别(荣耀v20联名款与普通款)

    荣耀v20联名版区别(荣耀v20联名款与普通款)

  • 华为nove5耳机孔在哪里(华为nova5ipro耳机孔)

    华为nove5耳机孔在哪里(华为nova5ipro耳机孔)

  • 微信卡是什么原因(微信卡的厉害什么原因)

    微信卡是什么原因(微信卡的厉害什么原因)

  • 拼多多怎么清空收藏(拼多多怎么清空购买记录)

    拼多多怎么清空收藏(拼多多怎么清空购买记录)

  • 笔记本电池红叉修复(笔记本电池红叉号)

    笔记本电池红叉修复(笔记本电池红叉号)

  • 腾讯视频如何关闭自动续费(腾讯视频如何关掉自动续费)

    腾讯视频如何关闭自动续费(腾讯视频如何关掉自动续费)

  • Mac中通过Dictionary翻译不同意思的单词(通过mac地址查找ip的协议)

    Mac中通过Dictionary翻译不同意思的单词(通过mac地址查找ip的协议)

  • 购买财务软件的会计分录怎么做
  • 顺流交易为什么调整被投资方
  • 500以下的收据可以入账吗
  • 税费误差财务怎么调整
  • 税务局查账需要几天
  • 长期负债平均余额怎么算
  • 私车公用产生的过路费开个人发票还是公司发票
  • 已认证的进项税额转出如何操作
  • 资产负债表的资产方能够提供的信息包括
  • 关于预计负债应付退货款明细科目
  • 境外企业分红怎么交税
  • 税务局代开票流程是怎样的?
  • 代收代付给个人
  • 住宿费可以抵扣吗?
  • 差旅费补贴需要缴纳个人所得税吗需要发票
  • 监控维护需要什么经营范围
  • 非住宅过户税费标准最新
  • 销售蔬菜水果需要什么证件
  • 企业的停车违章怎么查
  • 代理国库税收收缴怎么做账
  • 小规模所得税表格模板
  • 个人如何开专票
  • 质量扣款入什么科目
  • 苹果静音模式siri
  • 员工报销差旅费并归还借款会计分录
  • 联想e430安装win7
  • 系统搜索力
  • php的注释可以使用什么开头
  • 期初留存收益是什么科目
  • 委托银行收款属于什么科目
  • 支付投资款怎么做账
  • 保险中介市场现状和基本特点
  • 资产盘盈盘亏处理
  • 赤狐,荷兰 (© Wim Weenink/Minden Pictures)
  • 微信小程序web-view 添加悬浮按钮
  • openai创始人阿尔特曼 取向
  • 申请个人所得税
  • php如何安装配置
  • php自定义变量的方法是
  • 场外期权怎么交税
  • 装修费摊销的分录是什么
  • python用途
  • 企业官网用什么系统
  • 织梦怎么样
  • 织梦怎么改首页背景
  • python怎么用
  • etc如何取票据
  • 关联方占用资金应对措施
  • SQL Server Native Client下载 SQL Server Native Client安装方法
  • 营改增后运输企业税收政策
  • 息税前利润的计算公式EBIT
  • 服务业 费用可以暂估吗?
  • 购货单位暂欠货款违法吗
  • 固定资产的折余价值和账面价值如何确定
  • 收到费用发票分录
  • 收到进项税发票
  • 主营业务成本工资计提吗
  • 以前年度损益调整在报表哪里体现
  • 现金零星金额多少
  • 租房开的发票收的税如何做账?
  • 会计借贷帐
  • sql优化的一般步骤
  • 关于mysql数据库服务登录下列描述正确的是
  • linux开机启动过程图解
  • 系统 启动速度慢怎么办
  • 虚拟机下安装操作软件
  • centos6.5双网卡绑定
  • linux使用curl进行接口测试
  • linux如何限制指定ip访问
  • JavaScript数组删除元素
  • python打开命令行
  • Jquery EasyUI Datagrid右键菜单实现方法
  • ja开发
  • vue@cli
  • threejs入门教程
  • 北京顶点b128怎么样
  • 陕西国家税务
  • 北京通州国税局进面分数2022
  • 2020年砂石
  • 临时税务登记有效期怎么填
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设