yolo系列概述

yolov1:2015年提出的one-stage目标检测算法,与当时的Fater RCNN(two-stage)共同称为当时最受欢迎的检测模 型。特点为anchor-free:没有anchor的概念,每个cell直接输出bbox。每个cell仅输出2个bbox,每个cell输出向量为 (20+ (4+1)*2),20为20个类,1为bbox概率,4为bbox信息,一张图片最终变为7×7的特征图,一个cell只能预测1个 类,因此定位粗糙,小目标不友好,对重叠物体检测能力差。

yolov2:针对yolov1定位不精准问题,借鉴faster rcnn的anchor-base的概念,并且引入k-means实现anchor的自动配置。

yolov3:划时代意义的目标检测算法,也奠定了目标检测之后的范式,backone+neck+多尺度。yolov3网路结构简单,并且采用多尺度特征图实现不同尺寸目标的检测,速度与精度在当时都是优于其他模型。yolov3采用的是手动配置的 33=9种anchor,anchor的参数设置是通过k-means对标签进行聚类发现的,*3种尺寸,3种长宽比。

yolov4:yolov4发布前有个小插曲,那就是YOLO之父Jeseph Redmon,由于“无法忽视工作带来的负面影响”,公开宣布 隐退。好在有大神接了他的大旗,在yolov3推出快2年的时间,yolov3的改进版v4终于在2020年来了,yolov4开始,可以 认为是一个分割点,更准确地说yolov3是后续模型的分割点。借助paperswithcode的一个精度图,可以看到yolov3在 coco的map是30-40之间,而往后v4-v8已经来到50-60的区间,已经不在一个档次。

        对于yolov4,它对当时深度学习的多种tricks进行了实验,集成到yolov3上进行改进,精度和速度都得到大幅度提升。它 使用了大量tricks,包括WRC、CSP、CmBN、SAT、 Mish activation、Mosaic data augmentation、CutMix、 CmBN、DropBlock regularization 和 CIoU loss、GIoU loss。    

yolov5:在yolov4发布后短短2个月,yolov5横空出世,并且带来了多种大小的模型, nano/s/m/l/x等尺寸,可适用于多 种场景,同时配备高质量的开源代码仓库,短时间内就受到了广泛关注。yolov5数据增强上使用了Mosaic数据增强、自 适应锚框计算、自适应图片缩放(推理时采用最小填充原则,加速推理)、融合新网络模块Focus、CSP结、 FPN+PAN,GIOU_Loss,以及预测框筛选的DIOU_nms。

yolov6:2022年由美团提出的速度更快的检测模型,主打是速度,因此模型特点是backbone与neck的设计都为了适应硬 件的运算,使用了Rep-Pan和EfficientRep块,head部分用了解耦的形式,在训练策略方面采用了anchor-free、 SimOTA标记策略、SIoU盒回归的损失。 

yolov7:在yolov6推出不到半个月,yolov7也发布了,yolov7团队与yolov4团队一致,属于官方YOLO团队(yolov4团队 接过yolo之父Jeseph Redmon的大旗)。yolov7同样从速度方面做了许多优化,例如内存访问成本、I / O比率、 element-wise、激活函数等,以及模型重参数化(re-parameterization)。

yolov8:yolov5的团队——ultralytics打造的集成图像分类、图像分割、目标检测于一体的结构,目前github地址并为采用yolov8而是采用ultralytics。发布2个多月后,论文仍旧未发布,具体优化内容请关注官方github,从代码中观察吧。

yolov9:2024年初,yolov9发布,yolov9从可逆函数角度理论上分析了现有的CNN架构,基于这种分析,YOLOv9作者还设计了PGI和辅助可逆分支,并取得了优秀的结果;YOLOv9用到的PGI解决了深度监督只能用于极深的神经网络架构的问题,因此使得新的轻量级架构才更适合落地;YOLOv9中设计的GELAN仅使用传统卷积,就能实现比基于最先进技术的深度可分卷积设计更高的参数使用率,同时展现出轻量级、快速和精确的巨大优势;基于所提出的PGI和GELAN,YOLOv9在MS COCO数据集上的性能在所有方面都大大超过了现有的实时目标检测器。

yolov10:yolov9发布两个月后,yolov10发布,为了实现整体效率 - 准确率驱动的模型设计,研究团队从效率、准确率两方面分别提出改进方法。为了提高效率,该研究提出了轻量级分类 head、空间通道(spatial-channel)解耦下采样和排序指导的块设计,以减少明显的计算冗余并实现更高效的架构。为了提高准确率,研究团队探索了大核卷积并提出了有效的部分自注意力(partial self-attention,PSA)模块来增强模型能力,在低成本下挖掘性能改进的潜力。基于这些方法,该团队成功实现了一系列不同规模的实时端到端检测器,即 YOLOv10-N / S / M / B / L / X。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【代码+详解】算法题 : 骨头收集者

❗❗❗必看: 下列题我全部都使用 Java 语言写的,并且均可以提交成功,获得Accepted 结果的. 如果代码和详解看了之后,对答案有任何疑问,都可以在评论区提出来,我都会一个一个回答. ❗❗❗感谢大家的支持,如果喜欢我的博客,关注 点赞 收藏 评论一波,非常感谢!!! 文章目录 题目:…

uniapp地图导航

我们只需要给图标加一个点击事件 我这里的数据都是动态的,想测试的朋友可以写固定值 然后跳转之后首先会调到选择软件导航 点击导航之后会显示使用哪个app 最后我们选择之后将会直接跳转到app进行导航

深入理解 EulerDiscreteScheduler 在扩散模型中的应用与实现

在扩散模型中,我们有一个前向过程(逐步向数据添加噪声)和一个反向过程(逐步去除噪声以恢复原始数据)。EulerDiscreteScheduler 使用欧拉方法来近似计算这个反向过程的每一步。 具体来说,假设我们从一个完全…

2024.06.12【读书笔记】丨生物信息学与功能基因组学(第十四章 细菌和古细菌基因组 第二部分)【AI测试版】

读书笔记:《生物信息学与功能基因组学》第十四章 - 第二部分 摘要 第二部分深入讨论了基于不同标准的细菌和古细菌的分类方法,包括形态学、基因组大小和排列、生活方式以及与人类疾病的关系。此外,还探讨了基于核糖体RNA序列的分类方法&…

027、工具_redis-benchmark

redis-benchmark可以为Redis做基准性能测试 1.-c -c(clients)选项代表客户端的并发数量(默认是50)。 2.-n -n(num)选项代表客户端请求总量(默认是100000)。 例如redis-benchmark-c100-n20000代表100各个客户端同时请求Redis,一 共执行20000次。 redis-benchmark会…

使用Java获取图片MD5编码的方法详解

在网络应用程序开发中,经常会遇到需要对图片进行处理和管理的情况,其中一项常见的需求是获取图片的MD5编码。MD5编码是一种常用的哈希算法,通过对图片内容进行哈希计算,可以生成唯一的MD5编码,用于校验图片的完整性和唯…

LMDeploy 量化部署

LMDeploy简介 LMDeploy是一个由MMDeploy和MMRazor团队联合开发的工具包,旨在为大型语言模型(LLM)提供全套的轻量化、部署和服务解决方案。以下是对LMDeploy的简介,采用分点表示和归纳的方式: 核心功能: 高…

Stable Diffusion: ControlNet 插件安装

前面介绍了一些通过代码实现ControlNet进行控制的案例。现在通过Stable Diffusion体验一下更便捷的操作。 Stable Diffusion插件安装办法大致相同。启动Stable Diffusion后,点击最右边的“扩展”,点击“可下载”,点击“加载扩展列表”。 视网…

正大国际期货:小小的钱如何在期货市场翻身?

小小的钱 ,莫名喜感→在小小的花园里面哇呀哇呀挖 有可能性,因为有杠杆所以收益大,同时风险亏损起来也快,,所以必须用小亏损换大收益,,比如跌过这个位置就止损退出(永远在低点附近买…

【递归、搜索与回溯】综合练习一

综合练习一 1.找出所有子集的异或总和再求和2.全排列 II3.电话号码的字母组合4.括号生成 点赞👍👍收藏🌟🌟关注💖💖 你的支持是对我最大的鼓励,我们一起努力吧!😃😃 1.找…

OpenStack是什么?

OpenStack是一个开源的云计算管理平台项目,它是一系列软件开源项目的组合。该项目由美国国家航空航天局(NASA)和Rackspace合作研发并发起,旨在提供实施简单、可大规模扩展、丰富、标准统一的云计算管理平台。OpenStack不仅是一个软…

【stable diffusion】ComfyUI扩展安装以及”127.0.0.1拒绝了我们的连接请求“解决记录

扩展安装 虽然大家都推荐将扩展包直接放到extension文件夹的方式&#xff0c;但我还是推荐直接在sd webui的扩展处下载&#xff0c;酱紫比较好维护一点&#xff0c;我个人感觉。 按照上图顺序点击会出现”URLError: <urlopen error [Errno 11004] getaddrinfo failed>”…

2024 Java 异常—面试常见问题

目录 一、异常的分类 二、throw和throws都是异常处理的关键字&#xff0c;二者区别。 三、try-catch-finally 中&#xff0c;如果 catch 中 return 了&#xff0c;finally 还会执行吗&#xff1f; 四、try-catch-finally 中哪个部分可以省略&#xff1f; 五、常见的 Runti…

反悔贪心,LeetCode 2813. 子序列最大优雅度

一、题目 1、题目描述 给你一个长度为 n 的二维整数数组 items 和一个整数 k 。 items[i] [profiti, categoryi]&#xff0c;其中 profiti 和 categoryi 分别表示第 i 个项目的利润和类别。 现定义 items 的 子序列 的 优雅度 可以用 total_profit distinct_categories2 计算…

.pkl文件保存和读取

#save sim sim.save(G:/simulation.pkl) print()#read sim import pickle with open(G:/simulation.pkl, rb) as f:sim pickle.load(f)

BarTender软件下载附加详细安装教程

BarTender是美国海鸥科技推出的一款优秀的条码打印软件&#xff0c;应用于 WINDOWS95 、 98 、 NT 、 XP 、 2000 、 2003 和 3.1 版本&#xff0c; 产品支持广泛的条形码码制和条形码打印机&#xff0c; 不但支持条形码打印机而且支持激光打印机&#xff0c;还为世界知名品牌条…

C脚本实现用键盘按键控制Wincc某按钮动作

文章目录 前言一、创建Wincc画面并添加变量及按钮二、在“事件”-“键盘”下&#xff0c;编写“按下”和“释放”的C脚本 前言 在某些特定场景下&#xff0c;需要通过电脑键盘控制上位机界面上按钮按下或释放&#xff0c;本文给出了基于C脚本的解决方案。 一、创建Wincc画面并…

Python中Numpy的np.arange

np.arange 是用于创建等差整数序列的函数。其语法如下&#xff1a; np.arange(start, stop, step, dtypeNone) start&#xff1a;序列的起始值&#xff0c;默认为0。 stop&#xff1a;序列的终止值&#xff0c;生成的数组不包括此值。 step&#xff1a;序列中的值之间的步长&a…

Tailwind CSS 响应式设计实战指南

title: Tailwind CSS 响应式设计实战指南 date: 2024/6/13 updated: 2024/6/13 author: cmdragon excerpt: 这篇文章介绍了如何运用Tailwind CSS框架创建响应式网页设计&#xff0c;涵盖博客、电商网站及企业官网的布局实例&#xff0c;包括头部导航、内容区域、侧边栏、页脚…

从零开始手把手Vue3+TypeScript+ElementPlus管理后台项目实战十一(整体布局04之Header及用户注销)

新增Hearder 新增 src/layout/components/PageHeader.vue <template><div class"header-cont"><div><h1><router-link to"/">RealWorld</router-link></h1></div><div><template v-if"is…