YOLO系列改进

yolo核心思想:把目标检测转变成一个回归问题。将整个图像作为网络的输入,仅仅经过一个神经网络,得到边界框的位置及其所属的类别。

YOLOv1 CVPR2016
请添加图片描述

输出7×7×30的张量表示2个框的5个参数和20个种类。leaky ReLU,leaky并不会让负数直接为0,而是乘以一个很小的系数(恒定),保留负数输出,但衰减负数输出。y=x,x>0;0.1x,otherwise;分而治之;端到端训练,损失函数的传播贯穿整个网络。第一个全连接层,把输入图像的所有卷积特征整合到一起;第二个全连接层,将所有神经元得到的卷积特征进行维度转换,最后得到与目标检测网络输出维度相同的维度。

YOLOv2 CVPR2017

(1)yolov2借鉴了Faster R-CNN的思想,引入Anchor机制,并利用K-means聚类的方法在训练集中聚类计算出更好的Anchor模板,大大提高了算法的召回率;
(2)同时结合图像细粒度特征,将浅层特征与深层特征相连,有助于对小尺寸目标的检测。

特点:折中,可以自己平衡速度和准确率

改进:batch normalize(BN):加速收敛,正则化模型,可以去掉dropout,map提升2%

Convolutional with Anchor Boxs:相比于v1每张图预测98个预测框,anchor boxes可以预测1000个

Dimension Clusters:anchor遇到的第一个问题 需要动手设定模板框prior 使用k-means聚类折中取得k=5

Direct location prediction:第二个问题 box预测(x,y)位置时,模型不稳定。直接预测对于网格单元的相对位置。w和h通过bbox prior调整 。模型提高5%

Fine-Grained Features:添加passthough层,从26×26的分辨率得到特征

multi-scale training:用多种分辨率的输入图片进行训练

darknet-19:backbone使用darknet-19搭配BN加速收敛

YOLOv3结构框图
请添加图片描述

CBL:最小组件Conv+BN+Leaky Relu激活函数组成

Res unit:借鉴Resnet残差结构,网络更深

ResX:CBL+n个Res unit,CBL用来下采样 608–>304–>152–>76–>38–>19 1/32

Concat:张量拼接;

add:张量相加,纬度不变=shortcut

Backbone:每个ResX包含1+2*X个卷积层,Darknet=1+(1+2×2)+(1+2×8)+(1+2×8)+(1+2×4)+FC全连接层(不包含)=53

改进点:predictions across scales:输出三种不同尺度的 feature map。深度255原因:coco80个类别,每个单元需要3个box,每个box还需要五个位置参数,3×(5+80)=255

v3对bbox预测时采用logistic regression可以去掉不必要anchor。

YOLOv4结构框图

请添加图片描述

组件

CBM:最小组件Conv+Bn+Mish激活函数

CBL:Conv+Bn+Leaky_relu

Res_unit:Resnet网络中的残差结构

CSPX:借鉴CSPNet网络,由卷积层和X个Res_unit模块Concate组成

SPP:采用1×1,5×5,9×9,13×13的最大池化方式,多尺度融合。通过最大池化将不同尺寸的输入图像变得尺寸一致,使得输入图像不再限制于固定尺寸,增大感受野。

Backbone:每个CSPX包含5+2*X个卷积层,1+(5+2×1)+(5+2×2)+(5+2×8)+(5+2×8)+(5+2×4)=72

创新点

输入端:Mosaic数据增强、cmBN、SAT自对抗训练

BackBone主干网络:CSPDarknet53、Mish激活函数、Dropblock缓解过拟合

Neck:SPP模块(有效的增加主干特征的接收范围,显著的分离了最重要的上下文特征)、FPN+PAN结构

Prediction:训练时的损失函数CIOU_Loss、预测框筛选的nms变为DIOU_nms

**IOU_Loss:**主要考虑检测框和目标框重叠面积。

**GIOU_Loss:**在IOU的基础上,解决边界框不重合时的问题。

**DIOU_Loss:**在IOU和GIOU的基础上,考虑边界框中心点距离的信息。

**CIOU_Loss:**YOLOv4采用CIOU_Loss,在DIOU的基础上,考虑边界框宽高比的尺度信息。

Mosaic数剧增强:随机缩放、随机裁剪、随机排布的方式进行拼接。均衡小中大三类目标

BackBone:608->304->152->76->38->19 CSPNet将基础层的特征映射划分为两部分,通过跨阶段层次结构将其合并,减少计算量保证准确率。

FPN层自顶向下传达强语义特征,而特征金字塔则自底向上传达强定位特征

深度学习backbone汇总

非轻量化:

LeNet5:(1998)
AlexNet:(2012)
VGG:(2014)
GoogLeNet(InceptionNet)系列:Inception-v1(GoogleNet): (2015)、Inception-v2 (2015,BN-inception)、Inception-v3 (2015)、Inception-v4: (2017)、Inception-resnet-v2: (2017)
Resnet: (2016)
ResNet变种:ResNeXt (2016)、ResNeSt(2020)、Res2Net(2019)、DenseNet (2017)
DPNet:(2017)
NasNet:(2018)
SENet及其变体SKNet:SENet(2017)、SKNet(2019)
EfficientNet 系列:EfficientNet-V1(2019)、EfficientNet-V2(2021)
Darknet系列:Darknet-19 (2016, YOLO v2 的 backbone)、Darknet-53 (2018, YOLOv3的 backbone)
DLA (2018, Deep Layer Aggregation)

轻量化:

SqueezeNet:(2016)
MobileNet-v1:(2017)
XCeption:(2017, 极致的 Inception)
MobileNet V2:(2018)
ShuffleNet-v1:(2018)
ShuffleNet-v2:(2018)
MnasNet:(2019)
MobileNet V3 (2019)
CondenseNet(2017)
ESPNet系列:ESPNet (2018)、ESPNetv2 (2018)
ChannelNets
PeleeNet
IGC系列:IGCV1、IGCV2、IGCV3
FBNet系列:FBNet、FBNetV2、FBNetV3
GhostNet
WeightNet
MicroNet

ViT(Vision Transformer )Backbone结构

ViT-H/14 和 ViT-L/16(2020)(Vision Transformer,ViT)
Swin Transformer(2021)
PVT(2021, Pyramid Vision Transformer)
MPViT (CVPR 2022,Multi-path Vision Transformer, 多路径 Vision Transformer)
EdgeViTs (CVPR 2022,轻量级视觉Transformer)

(CNNs+Transformer / Attention)Backbone结构

CoAtNet(2021)

BoTNet(2021)

YOLOv5结构框图

请添加图片描述

输入端:Mosaic数据增强(随机缩放随机裁剪随机排布的方式进行拼接)、自适应锚框计算(初始设定长宽的锚框)、自适应图片缩放 trick(datasets.py的letterbox函数)对原始图像添加最少的黑边减少冗余 结果显著,训练未采用,预测采用

Backbone:Focus结构:切片操作,将608×608×3–>304×304×12

CSP结构:YOLOv4借鉴CSPNet网络,YOLOv5的CSP2应用在Neck上加强网络特征融合能力

CSP是由n和gd控制的,n = n_ = max(round(n * gd), 1) if n > 1 else n

Neck:FPN+PAN结构

Prediction:GIOU_Loss DIOU_nms对重叠框有所改进

YOLOv7

请添加图片描述

改进点:

RepVGG(2021):RepVGG无论是在精度还是速度上都已经超过了 ResNet、EffcientNet 以及 ResNeXt 等网络。采用结构重参数化,(1)训练时,使用ResNet-style的多分支模型(特点:增加模型的表征能力)(2)测试时,转化成VGG-style的单线路模型(特点:速度更快、更省内存并且更加的灵活)

将BN和3x3卷积进行融合,转换成3x3卷积:将BN公式拆解为 一元二次方程(y1 = k1* x1 + b1);然后与损失函数(y2 = k2* x2 + b2)进行合并得到新的方程(y3 = k3* x3 + b3)。

多分支融合:将1x1卷积 + BN全部转换为3x3卷积,然后与3x3卷积进行合并,得到一个3x3卷积。

YOLOv8
请添加图片描述

Backbone:轻量化C2f替换了C3

PAN-FPN:删除YOLOv5上采样阶段中的卷积结构,C2f替换了C3

Decoupled—Head

Anchor-Free

损失函数:VFL Loss作为分类损失,DFL Loss+CIOU Loss

样本匹配:Task-Aligned Assigner

Backbone:轻量化C2f替换了C3

PAN-FPN:删除YOLOv5上采样阶段中的卷积结构,C2f替换了C3

Decoupled—Head

Anchor-Free

损失函数:VFL Loss作为分类损失,DFL Loss+CIOU Loss

样本匹配:Task-Aligned Assigner

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/746221.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【笔记】备份VScode代码至GitHub

目录 不小心把代码删掉了,还没备份备份步骤创建新工作区和测试文件还有GitHub项目初始化git注意 最后一步 不小心把代码删掉了,还没备份 试着安装了一下GitHub Pull Requests,不会用 备份步骤 创建新工作区和测试文件还有GitHub项目 首先…

RT-Thread Studio实现动态线程

1创建项目 我的板子为STM32F03ZET6 点击RT-Thread项目 2选择板子(根据自己的板子选择) 3找到主函数 4编写代码 4-1创建函数入口 // 线程入口函数 static void thread_entry(void *parameter) {rt_uint32_t count 0;while (1){// 线程执行的代码rt_k…

图书馆书籍管理系统

项目名称与项目简介 图书馆书籍管理系统 本项目是一个计算机管理系统,也就是将传统手工的管理方式转变为智能化、标准化、规范化的管理管理模式,对图书馆中所有的图书、文献资料、音像资料、报刊、期刊等各种类型的资料实现采编、收集图书信息、检索、归…

Docker系列之安全

Docker的安全前言一、Docker 容器与虚拟机的区别 1. 隔离与共享 2. 性能与损耗二、Docker 存在的安全问题 1.Docker 自身漏洞 2.Docker 源码问题三、 Docker 架构缺陷与安全机制 1. 容器之间的局域网攻击 2. DDoS 攻击耗尽资源 3. 有漏…

Python22 Pandas库

Pandas 是一个Python数据分析库,它提供了高性能、易于使用的数据结构和数据分析工具。这个库适用于处理和分析输入数据,常见于统计分析、金融分析、社会科学研究等领域。 1.Pandas的核心功能 Pandas 库的核心功能包括: 1.数据结构&#xff…

游戏AI的创造思路-技术基础-深度学习(6)

让人工智障具备信念吧,依莫拉萨~~~串频道暴露年龄。。。不过深度信念和信念真的没啥关系,不知道为啥这样起名 目录 3.6. 深度信念网络(DBN) 3.6.1. 定义 3.6.2. 发展历史 3.6.3. 算法公式 3.6.4. 运行原理 3.6.4.1. 基本原理 3.6.4.2. Python实现…

人大金仓×深信服:打造高性能、高可靠教育信创数据库一体机解决方案

信息技术应用创新是数字经济发展的关键支撑和重要基石,近年来,国家高度重视信息技术应用创新产业发展。教育行业作为我国人才培养的发动机,发展教育信创是保持信创创新力、是提升信创人才质量的重要举措、是保障信创产业可持续发展的关键环节…

某平台小程序逆向思路整理

一、下载软件 devtools 二、强制打开控制台 根据返回的数据我们得知数据被加密了 找到这个加密的js 发现加密的位置 打断点进入这个加密的方法 之后自定义js。python调用解密即可。

web渗透-SSRF漏洞及discuz论坛网站测试

一、简介 ssrf(server-side request forgery:服务器端请求伪造)是一种由攻击者构造形成由服务端发起请求的一个安全漏洞。一般情况下,ssrf是要目标网站的内部系统。(因为他是从内部系统访问的,所有可以通过它攻击外网无法访问的内部系统&…

js+php 上传文件到服务器

https://andi.cn/page/621473.html

Navicat Premium Lite绿色免费版

版权声明 本文原创作者:谷哥的小弟作者博客地址:http://blog.csdn.net/lfdfhl Navicat Premium Lite概述 Navicat 最近推出了一款名为 Navicat Premium Lite 的免费数据库管理开发工具,专为入门级用户设计。这款工具虽然在功能上与 Navicat…

转让北京资产评估公司变更需要什么条件和要求

北京资产评估公司是有限责任公司。因为有限责任公司具有人合属性,股东的个人信用及相互关系直接影响到公司的风格甚至信誉,所以各国公司法对有限责任公司股东向公司外第三人的转让股权,多有限制性规定。大致可分为法定限制和约定限制两类。公…

Centos7虚拟机

Centos 7 安装 1 镜像下载1.1 官网下载1.2 阿里云镜像下载 2 环境的安装2.1 打开我们的虚拟机,点击文件进行新建2.2 选择典型之后,下一步2.3 选择稍会安装操作系统2.4 勾选Linux,并且选择CentOS 7的版本2.5 设定我们虚拟机的名称和安装位置2.…

python实现可视化大屏(django+pyechars)

1.实现效果图 2.对数据库进行迁移 python manage.py makemigrations python manage.py migrate 3.登录页面 {% load static%} <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta name"viewport"…

文件管理器加载缓慢-禁用文件类型自动发现功能

文件管理器加载缓慢-禁用文件类型自动发现功能 右键“Shell”项&#xff0c;选择新建“字符串值” “FolderType”&#xff0c;数值为 NotSpecified。

文字实录|Checkout.com大中华区总经理项尧:品牌全球化发展中的支付运营策略

大家好&#xff0c;很高兴在此次【品牌全球化营销增长峰会】与大家一起分享和交流。 我叫项尧&#xff0c;是 Checkout.com 大中华区的总经理&#xff0c;在支付领域有将近15年的经验。 我们 Checkout.com 是一家总部位于英国的支付公司&#xff0c;专注于线上收单&#xff0…

旧衣回收小程序开发:回收市场的新机遇

当下&#xff0c;旧衣服回收已经成为了一种流行趋势&#xff0c;居民都将闲置的衣物进行回收&#xff0c;旧衣回收市场规模在不断增加。随着市场规模的扩大&#xff0c;为了让居民更加便利地进行回收&#xff0c;线上回收小程序也应运而生&#xff0c;为大众打造了一个线上回收…

程序员学长 | 快速学会一个算法,RNN

本文来源公众号“程序员学长”&#xff0c;仅用于学术分享&#xff0c;侵权删&#xff0c;干货满满。 原文链接&#xff1a;快速学会一个算法&#xff0c;RNN 今天给大家分享一个超强的算法模型&#xff0c;RNN 循环神经网络&#xff08;Recurrent Neural Network, RNN&…

新改进!LSTM与注意力机制结合,性能一整个拿捏住

众所周知&#xff0c;LSTM并不能很好地处理长序列和重要信息的突出&#xff0c;这导致在某些情况下性能不佳。而注意力机制模拟人类视觉注意力机制的特点可以很好地解决这个问题。 说具体点就是&#xff0c;注意力机制通过权重分布来决定应该关注输入序列中的哪些部分&#xf…

完整代码Python爬取豆瓣电影详情数据

完整代码Python爬取豆瓣电影详情数据 引言 在数据科学和网络爬虫的世界里&#xff0c;豆瓣电影是一个丰富的数据源。在本文中&#xff0c;我们将探讨如何使用Python语言&#xff0c;结合requests和pyquery库来爬取豆瓣电影的详情页面数据。我们将通过一个具体的电影详情页面作…