位置: IT常识 - 正文

【目标检测】YOLOV1详解(目标检测yolov5)

编辑:rootadmin
【目标检测】YOLOV1详解 前言

推荐整理分享【目标检测】YOLOV1详解(目标检测yolov5),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:目标检测算法yolo,目标检测算法yolo,目标检测tricks,目标检测 yolov3,目标检测怎么入门,目标检测yolov5,目标检测yolo,目标检测 yolov3,内容如对您有帮助,希望把文章链接给更多的朋友!

最近在公司实习,看到其实很多落地的模型都是基于yolo来改进的。在闲暇之余又重新温故了一下yolo系列,并想着将它们进行一个总结。今天就从V1下手,接下来的几个系列也会分别进行详解。

相比起Faster R-CNN的两阶段算法,2015年诞生的YOLOv1创造性地使用端到端(end to end)结构完成了物体检测任务。直接预测物体的类别和位置,没有RPN网络,也没有Anchor的预选框,因此速度很快。 YOLOv1是YOLO系列的基准,虽然后面在工程上面大家都是直接使用YOLOV5的开源代码,但是还得需要直到这些原理,而不是像黑盒一样进行调用。后续的YOLOv3、YOLOv5都是在原来的基础上做的改进,因此完全掌握和理解YOLOv1是学好YOLO系列的关键。

1、实现方式

YOLOV1的思想就是将图像分成S*S的小网格,如果物体的中心点落在了某一个网格内,那么就由这个网格来进行预测这个物体。

 每一个网格预测B个bounding boxes,以及这些bounding boxes的得分:confidence score。confidence score反映了模型对于网格中预测是否含有物体,以及是这个物体的可能性是多少。confidence定义为:

 在这里需要区分开confidence score和confidence。上面公式的定义就是如果网格中不含有物体,则置信度为0,否则就是predicted box与ground truth之间的IOU。每一个bounding box由5个预测值组成:x,y,w,h,confidence。坐标(x,y)代表了bounding box的中心与grid cell边界的相对值。width,height则是相对于整幅图像的预测值(边框的宽和高),confidence就是预测框和真实框的IOU。每一个网格还要预测C个conditional class probability(条件类别概率):Pr(Class|Object),即在一个网格包含Object的前提下,它属于某个类的概率,只为每个网格预测一组(C个)类概率,而不考虑框B的数量,也就是说一个网格只能预测一个物体这也是YOLOV1的缺点之一。如果一个物体的中心点落在了某个网格内,具体是该网格的两个bounding box与真实物体框进行匹配,IoU更大的bounding box负责回归该真实物体。

【目标检测】YOLOV1详解(目标检测yolov5)

 对于PASCAL VOC数据集,图像输入为448×448,取S=7(即在经过神经网络之后的最终输出特征图大小为7*7),B=2(即每个grid cell中有两个bounding box负责预测落在这个gird cell中的物体),C=20(即一共有20个类别)。则输入图片经过网络的最终输出为一个7×7x30的tensor,如下图所示。且一张图片最多可以检测出49个对象,一共生成7×7×2=98个bounding box。

 以上是训练的时候需要的实现方式,在进行测试的时候,就涉及到了confidence score这个概念,具体来说在测试阶段,每个网格预测的class信息和bounding box预测的confidence信息相乘,就得到每个bounding box的class-specific confidence score:

得到每个bbox的confidence score以后,设置阈值,滤掉的得分低的bboxes,对保留的bboxes进行NMS处理,就得到最终的检测结果。 

2、backbone

YOLO的网络结构由24个卷积层和2个全连接层组成,网络结构借鉴了GoogLeNet分类网络结构,但是没有使用Inception module,使用的1×1卷积(交替的1×1卷积用来减少前几层的特征空间)和3×3卷积简单替代。网络输入的图片大小为448×448,最终输出为7×7×30的张量(在PASCAL VOC数据集上)。

在这里需要注意的是因为最后用到了两层全连接层,这就使得对网络的输入有一定的要求,不可以变换其余大小的输入。

3、训练预训练

YOLOV1会现在imagnet上面进行预训练一个分类网络,预训练的网络即为整个网络结构的前20个卷积层+池化层+全连接层。然后再去进行训练检测网络,在预训练网络的基础上添加4个卷积层和2个全连接层,随机初始化权重。最后一层预测类概率和bounding box坐标。通过图像宽度和高度对bounding box的宽度和高度进行归一化,使它们下降到[0,1]之间,同时将(x,y)坐标参数化为特定网格单元位置的偏移,因此它们也在[0,1]之间。

损失函数

YOLOV1的损失函数算是比较经典的了,后面的也是基于这个损失函数进行梯度下降的。 YOLOv1的Loss一共由5个部分组成,均使用均方误差(sum-square error,MSE)损失,如下图所示:

 在这里需要注意的是第三点的值是0.5,而不是5。

4、优劣

YOLOV1是采用回归的思想,并没有提前设计好锚框,使用轻量型的网络对物体进行定位和分类,处理速度很快。但是不足也很明显: ● 由于每一个区域默认只有两个bounding box做预测,并且只有一个类别,因此YOLOv1有这天然的检测限制。这种限制会导致模型对于小物体,以及靠得特别近的物体检测效果不好(一个网格只能预测一个物体)。 ● 由于没有类似于Anchor的先验框,模型对于新的或者不常见宽高比例的物体检测效果不好。另外,由于下采样率较大,边框的检测精度不高。

参考:【目标检测】单阶段算法--YOLOv1详解

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

上一篇:小程序和H5页面的相互跳转(小程序和h5页面的区别)

下一篇:Angular快速入门(angular 初学者快速上手教程)

  • 你该知道的短信营销知识(你该知道的短信是什么)

    你该知道的短信营销知识(你该知道的短信是什么)

  • word文档底色怎么改成白色(word文档底色怎么变成白色)

    word文档底色怎么改成白色(word文档底色怎么变成白色)

  • 苹果13pro怎么关闭相机声音(苹果13pro怎么关闭横屏)

    苹果13pro怎么关闭相机声音(苹果13pro怎么关闭横屏)

  • 远程连接怎么连不上(远程连接怎么连接微软账户)

    远程连接怎么连不上(远程连接怎么连接微软账户)

  • 淘宝怎么微信零钱支付(淘宝如何用微信零钱支付)

    淘宝怎么微信零钱支付(淘宝如何用微信零钱支付)

  • 苹果11自带浏览器打不开(苹果11自带浏览器怎么扫一扫)

    苹果11自带浏览器打不开(苹果11自带浏览器怎么扫一扫)

  • 爱奇艺会员怎么一起用(爱奇艺会员怎么取消)

    爱奇艺会员怎么一起用(爱奇艺会员怎么取消)

  • qq.cm怎么打出来(qq可怎么打出来)

    qq.cm怎么打出来(qq可怎么打出来)

  • 联想笔记本保修期是多久(联想笔记本保修范围)

    联想笔记本保修期是多久(联想笔记本保修范围)

  • 手机号码挂失后别人还能用吗(手机号码挂失后号码还可以用吗)

    手机号码挂失后别人还能用吗(手机号码挂失后号码还可以用吗)

  • 华为有没有红外线遥控器(华为有没有红外遥控器)

    华为有没有红外线遥控器(华为有没有红外遥控器)

  • 打印机警告指示灯一直闪烁怎么解决(打印机警告指示灯一直闪烁)

    打印机警告指示灯一直闪烁怎么解决(打印机警告指示灯一直闪烁)

  • 手机信号差是手机问题还是卡的问题(手机信号差是手机哪里坏了)

    手机信号差是手机问题还是卡的问题(手机信号差是手机哪里坏了)

  • 抖音怎么做合集视频(抖音怎么做合集1集2集)

    抖音怎么做合集视频(抖音怎么做合集1集2集)

  • x无面容是怎么回事(无面容的x怎么用面容支付)

    x无面容是怎么回事(无面容的x怎么用面容支付)

  • 苹果手机还有20电量自动关机(苹果手机还有20%电量自动关机)

    苹果手机还有20电量自动关机(苹果手机还有20%电量自动关机)

  • iphone淘气值怎么增加(淘气值界面在哪)

    iphone淘气值怎么增加(淘气值界面在哪)

  • 为什么爱奇艺没有字幕(为什么爱奇艺没有声音)

    为什么爱奇艺没有字幕(为什么爱奇艺没有声音)

  • 如何下载淘宝主图视频(如何下载淘宝主图到电脑桌面)

    如何下载淘宝主图视频(如何下载淘宝主图到电脑桌面)

  • 手机默认播放器怎么设置(手机默认播放器在哪里调整?)

    手机默认播放器怎么设置(手机默认播放器在哪里调整?)

  • 手机hd有必要开着吗(手机开着hd要钱吗?)

    手机hd有必要开着吗(手机开着hd要钱吗?)

  • 商务通怎么收费(商务通怎么收费的)

    商务通怎么收费(商务通怎么收费的)

  • 天猫最长几天确认收货(天猫最多几天确认收货)

    天猫最长几天确认收货(天猫最多几天确认收货)

  • 两个手机怎么互相定位(两个手机怎么互传所有东西)

    两个手机怎么互相定位(两个手机怎么互传所有东西)

  • 华为折叠手机何时上市(华为折叠手机ⅹ2)

    华为折叠手机何时上市(华为折叠手机ⅹ2)

  • day30-注解(注解@entity)

    day30-注解(注解@entity)

  • 收到个人开票会计分录怎么做
  • 已缴纳车船税的车船在同一年度
  • 印花税滞纳金应计入什么
  • 统一企业员工
  • 新会计准则 预付房租怎么做账
  • 合伙企业对外长期股权投资收到分红 怎么处理
  • 工业企业会计怎么结转成本
  • 购入材料过程中支付运费
  • 购入包装物
  • 会计档案的概念和内容
  • 进项税额一直大于销项税额
  • 企业间借款利息涉税处理
  • 税务局拍卖资产
  • 工会经费的计税依据怎么算
  • 一般纳税人认定标准500万是什么时候开始执行
  • 哪些人可以享受4050社保补贴
  • 小规模企业增值税税率是多少
  • 财政资金安排促进高质量发展
  • 短期投资损失
  • 利息支出怎么结转
  • win7系统打开软件就停止工作
  • win10重置此电脑的密码是什么
  • 月末一次加权平均法是什么意思
  • 财务预算业务制度有哪些
  • 调增应纳税所得额季度申报表怎么填
  • thinkphp 路由
  • php最新动态
  • php 字符串 数组
  • win7纯净版系统 9代
  • PHP:jdtojewish()的用法_日历函数
  • 池塘里的水结冰了
  • PHP:imagecolorset()的用法_GD库图像处理函数
  • wordpress用什么语言编写
  • 非营利组织免税范围
  • 有关五险一金的知识
  • 房地产企业预售期间广告费
  • 存货核算方法可以变更吗
  • 前端yck
  • 损失函数是什么
  • 机器学习中的数学原理——模型评估与交叉验证
  • windows history命令
  • 汇兑损益计算方法有哪些
  • 电子税务局没有开票业务
  • 查账征收利润50万交多少税
  • 个体工商户开税户
  • 增值税申报系统登录密码
  • 低值易耗品摊销计入什么科目
  • 税盘连接服务器失败
  • 研发支出资本化计入什么科目
  • 旅客运输服务进项税抵扣文件
  • 自产的产品用于管理部门
  • 支付技术转让费所得税处理
  • 记账凭证的基本要素包括
  • 打官司产生的费用开成什么发票
  • 营业费用包括哪些?
  • 一般什么是差旅费呢
  • 税票是什么意思
  • 备抵法核算坏账损失
  • 明细账建账的步骤
  • sql server 存储过程 超时
  • 什么叫脚本错误
  • windows7不能使用的文件名
  • win8打开运行的快捷键是什么
  • windows10x预览版
  • 如何配置centos7的ip地址
  • win10系统虚拟内存
  • win8怎样设置禁止弹出广告
  • android viewpager嵌套viewpager
  • 编写自己的linux系统
  • unity3d有什么用
  • node 多线程
  • androidcontext传值
  • jquery里面的$是什么意思
  • 个人所得税申诉有什么后果
  • 开票软件重置密码去哪里
  • 沈阳市房产契税查询
  • 发票如何验真伪?
  • 内蒙古城镇土地使用税税率表
  • 广西国家税务局于红林
  • 新市税务所电话
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设