经典目标检测神经网络 - RCNN、SSD、YOLO

文章目录

    • 1. 目标检测算法分类
    • 2. 区域卷积神经网络
      • 2.1 R-CNN
      • 2.2 Fast R-CNN
      • 2.3 Faster R-CNN
      • 2.4 Mask R-CNN
      • 2.5 速度和精度比较
    • 3. 单发多框检测(SSD)
    • 4. YOLO

1. 目标检测算法分类

目标检测算法主要分两类:One-Stage与Two-Stage。One-Stage与Two-Stage是两种不同的思路,其各有各的优缺点。

One-Stage
    主要思路:直接通过卷积神经网络提取特征,预测目标的分类与定位;

Two-Stage
    主要思路:先进行区域生成,即生成候选区域(Region Proposal),在通过卷积神经网络预测目标的分类与定位;

优缺点

优缺点One-StageTwo-Stage
优点速度快;避免背景错误产生false positives; 学到物体的泛化特征精度高(定位、检出率);Anchor机制;共享计算量
缺点精度低(定位、检出率);小物体的检测效果不好速度慢;训练时间长;误报相对高

从目前看,在移动端一般使用 One-Stage算法。现在很难说,精度和准确率的问题,因为影响因素不仅仅取决于算法,还跟数据集大小、图像标注质量、训练参数等有很大的关系。

主要算法

One-Stage:YOLO系列(v1-v8),SSD系列(R-SSD、DSSD、FSSD等),Retina-Net,DetectNet,SqueezeDet。

Two-Stage:RCNN系列(Fast-RCNN、Faster-RCNN、Mask-RCNN),SPPNet,R-FCN。


2. 区域卷积神经网络

2.1 R-CNN

在这里插入图片描述

使用启发式搜索算法来选择锚框。

使用预训练模型来对每个锚框抽取特征。

训练一个SVM来对类别分类。

训练一个线性回归模型来预测边缘偏移框。

当锚框每次选择的大小不同,我们如何使这些锚框称为一个batch呢?

兴趣区域(ROI)池化层

ROI Pooling

  • 给定一个锚框,均匀分割成 n × m \ n\times\ m  n× m块,输出每块里的最大值
  • 不管锚框多大,总是输出 n m nm nm个值

在这里插入图片描述

2.2 Fast R-CNN

对图片整体抽取特征。

  • 不再对每一个锚框做CNN的特征抽取,而是对图片整体使用CNN进行特征抽取
  • 使用RoI池化层对每个锚框生成固定长度特征

在这里插入图片描述

2.3 Faster R-CNN

  • 使用一个区域提议网络来代替启发式搜索,来获得更好的锚框。
    在这里插入图片描述

2.4 Mask R-CNN

  • 如果有像素级别的标号,使用FCN来利用这些信息
  • 在无人车领域运用较多

在这里插入图片描述

在做像素级别预测时,边界位置不要发生太多的错位。

2.5 速度和精度比较

在这里插入图片描述

总结:

  • R-CNN是最早、也是最有名的一类基于锚框和CNN的目标检测算法
  • Fast/Faster R-CNN持续提升性能
  • Faster R-CNN和Mask R-CNN是在最求高精度场景下的常用算法

3. 单发多框检测(SSD)

SSD全称Single Shot Multibox Detector,是一种单阶段目标检测器。其优点是原始的YOLO和Faster R-CNN在推理速度和精度之间取得了更好的平衡。SSD模型是由Wei Liu等人在使用卷积神经网络(CNN)进行目标检测的研究中,提出的一种改进思路。

SSD用于图像分类、物体检测和语义分割等各种深度学习任务。相对于其他目标检测算法,SSD模型有更高的精度,而且速度也是非常快的。其主要思路是通过在CNN的最后几层添加多个预测层实现多尺度的目标检测,然后通过一个过滤策略对每个检测框进行筛选,最后输出最终的检测结果。

在这里插入图片描述

生成锚框

在这里插入图片描述

  • 对每个像素,生成多个以它为中心的锚框
  • 给定n个大小为 s 1 , s 2 , . . . , s n s_1,s_2,...,s_n s1,s2,...,sn m m m个高宽比,那么生成 n + m − 1 n+m-1 n+m1锚框,其大小和高宽比分别为:

( s 1 , r 1 ) , ( s 2 , r 1 ) , . . . , ( s n , r 1 ) , ( s 1 , r 2 ) , . . . , ( s 1 , r m ) (s_1,r_1),(s_2,r_1),...,(s_n,r_1),(s_1,r_2),...,(s_1,r_m) (s1,r1),(s2,r1),...,(sn,r1),(s1,r2),...,(s1,rm)

SSD模型

  • 一个基础网络来抽取特征,然后多个卷积层块来减半高宽
  • 在每段都生成锚框
    • 底部段来拟合小物体,顶部短来集合大物体
  • 对每个锚框预测类别和边缘框

总结:

  • SSD通过单神经网络来检测模型
  • 以每个像素为中心的产生多个锚框
  • 在多个段段输出上进行多尺度的检测

4. YOLO

You Only Look Once

YOLO系列算法是一类典型的one-stage目标检测算法,其利用anchor box将分类与目标定位的回归问题结合起来,从而做到了高效、灵活和泛化性能好,所以在工业界也十分受欢迎。

Yolo算法采用一个单独的CNN模型实现end-to-end的目标检测,核心思想就是利用整张图作为网络的输入,直接在输出层回归 bounding box(边界框) 的位置及其所属的类别。

在这里插入图片描述

yolo尽量让锚框不重叠。

  • SSD中锚框大量重叠,因此浪费了很多计算
  • yolo将图片均匀分成 S × S S\times S S×S个锚框
  • 每个锚框预测 B B B个边缘框
  • 后续版本(V2,V3,V4…)有持续改进

YOLO家族进化史(V1-V8)

  • YOLOv1
  • YOLOv2:对YOLOv1进行改进
  • YOLOv3:对YOLOv2进行改进
  • YOLOv4:对YOLOv3进行改进
  • YOLOv5:对YOLOv4进行改进
  • YOLOx:以YOLOv3作为基础网络进行改进
  • YOLOv6:由美团推出,更加适应GPU设备,算法思路类似YOLOv5(backbone+neck)+YOLOX(head)
  • YOLOv7:是YOLOv4团队的续作,检测算法与YOLOv4,v5类似
  • YOLOv8:是YOLOv5团队进一步开发的

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

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

相关文章

虚拟机Ubuntu下运行vue-element-admin项目

一.环境搭建 1.安装nodejs sudo apt install nodejs 安装完成后,查看对应的版本号 nodejs -v没有问题,会输出对应版本号,我这里是10.19.0 v10.19.0 2.安装npm sudo apt install npm安装完成查看对应的版本号,确认OK npm -…

linux中nginx配置https

一、版本适配 版本一定要适配,否则会报错各种参数定位不到不识别的错误,以下是版本适配信息,各位观客自行按照以下信息匹配版本。 Nginx 1.11.5及以上版本与OpenSSL 1.0.2及以上版本兼容。Nginx 1.15.2及以上版本与OpenSSL 1.1.1及以上版本兼…

JavaScript_Pig Game保存当前分数

上个文章我们基本上完成了摇色子和切换当前玩家的功能。 现在我们开始写用户选择不再摇骰子的话,我们将用户的当前分数存入到持有分数中! ● 首先我们应该利用一个数组去存储两个用户的分数 const scores [0, 0];● 接着我们利用数组来对分数进行累…

用户登录前后端开发(一个简单完整的小项目)——SpringBoot与session验证(带前后端源码)全方位全流程超详细教程

🧸注:不要看我的文件多,那是我的其他项目,这个项目所用的文件我会全部用红框框起来,没框的部分不用管,前端两个文件,后端一个文件 📜 目录 首先,定义前后端交互接口 然…

Oracle (7)Online Redo Log Files

目录 一、Oracle Online Redo Log Files及其相关内容介绍 1、Online Redo Log Files简介 2、Online Redo Log Files特点 3、Online Redo Log Files文件组 4、多路复用文件 5、联机重做日志文件工作方式 6、LGWR什么时候写重做 7、LS和LSN 8、删除Redo文件成员 9、删除…

ZYNQ连载07-PIN设备

ZYNQ连载07-PIN设备 1. 简述 RT-Thread PIN设备 这里参看RT-Thread提供的PIN设备管理接口,简单封装了几个接口函数。 2. 实现 #include "include/drv_gpio.h" #define LOG_TAG "drv_gpio" static XGpioPs xgpiops;void rt_pin_mode(rt_…

目标检测算法改进系列之嵌入Deformable ConvNets v2 (DCNv2)

Deformable ConvNets v2 简介:由于构造卷积神经网络所用的模块中几何结构是固定的,其几何变换建模的能力本质上是有限的。在DCN v1中引入了两种新的模块来提高卷积神经网络对变换的建模能力,即可变形卷积 (deformable convolution) 和可变形…

JVM虚拟机:从结构到指令让你对栈有足够的认识

本文重点 在前面的课程中,我们学习了运行时数据区的大概情况,从本文开始,我们将对一些组件进行详细的介绍,本文我们将学习栈。栈内存主管java的运行,是在线程创建时创建的,它是线程私有的,它的生命周期是跟随线程的生命期,也就是说线程结束栈内存就释放了,对于栈来说…

HarmonyOS鸿蒙原生应用开发设计- 图标库

HarmonyOS设计文档中,为大家提供了独特的图标库,开发者可以根据需要直接引用。 图标库可以分为双色图标、填充图标、线性图标。具体分为 键盘、箭头、连接状态、媒体、人、设备、索引、通信、文件、物体与工具等。 整体分类 开发者直接使用官方提供的图标…

【影刀演示_发送邮件的格式化HTML留存】

发送邮件的格式化HTML留存 纯文本: 亲爱的小张: 端午节将至,公司为了感谢大家一年以来的辛勤工作和付出,特别为大家准备了京客隆超市福利卡,希望为大家带来些许便利和节日的喜悦。 以下是您的福利卡卡号和密码,请您…

故障诊断模型 | Maltab实现LSTM长短期记忆神经网络故障诊断

文章目录 效果一览文章概述模型描述源码设计参考资料效果一览 文章概述 故障诊断模型 | Maltab实现LSTM长短期记忆神经网络故障诊断 模型描述 长短记忆神经网络——通常称作LSTM,是一种特殊的RNN,能够学习长的依赖关系。 他们由Hochreiter&Schmidhuber引入,并被许多人进行了…

springboot--基本特性--自定义 Banner

SpringApplication的使用 前言效果1.1 自定义banner1.2 自定义SpringApplication配置文件优先级高于程序化调整的优先级启动自定义banner关闭自定义banner 1.3 FluentBuilder API 前言 修改启动时候的修改banner 效果 1.1 自定义banner banner制定官网链接 在配置文件中设置…

【java学习—十】HashSet集合(4)

文章目录 1. Java集合概述2. HashSet3. 泛型 1. Java集合概述 Java 集合类存放于 java.util 包中,是一个用来存放对象的容器。 ① 集合只能存放对象。比如你存一个 int 型数据 1 放入集合中,其实它是自动转换成 Integer类后存入的, Java 中每…

如何选择适合企业需求的企业知识库管理软件

随着信息技术的不断发展,知识管理软件在企业中扮演着越来越重要的角色。它们帮助企业有效地组织、存储和共享大量的知识资源,提高团队之间的协作效率,并为决策提供有力支持。那企业该如何才能选到合适的企业知识库管理软件呢? 一、…

css列表样式

html文件如下&#xff1a; <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>Title</title> <link href"css/style.css" rel"stylesheet" type"text/css">&…

修改svc的LoadBalancer的IP引发的惨案

文章目录 背景修改externalIPs的操作api-server报错日志挽救教训 背景 k8s集群没有接外部负载均衡&#xff0c;部署istio的时候ingressgateway一直pending。 于是手动修改了这个lb svc的externalIP&#xff0c;于是k8s就崩了&#xff0c;如何崩的&#xff0c;且听我还道来。 …

状态模式-对象状态及其转换

某信用卡业务系统&#xff0c;银行账户存在3种状态&#xff0c;且在不同状态下存在不同的行为&#xff1a; 1&#xff09;正常状态&#xff08;余额大等于0&#xff09;&#xff0c;用户可以存款也可以取款&#xff1b; 2&#xff09;透支状态&#xff08;余额小于0且大于-20…

【数据结构】选择排序

⭐ 作者&#xff1a;小胡_不糊涂 &#x1f331; 作者主页&#xff1a;小胡_不糊涂的个人主页 &#x1f4c0; 收录专栏&#xff1a;浅谈数据结构 &#x1f496; 持续更文&#xff0c;关注博主少走弯路&#xff0c;谢谢大家支持 &#x1f496; 直接选择、堆排序 1. 直接选择排序2…

IconWorkshop 6软件官方下载:制作ICO/ICON图标、编辑、转换图标

我们都知道在这个版本中&#xff0c;你甚至能够打开 Macintosh(R) 图标并将其转换为 Win(R) 格式。我们必须承认加强的与 Adobe(R) 和 Jasc(R) 色彩文件相兼容的色板和调色板管理系统。可以说这些功能随时都方便易用&#xff1a;内置的浏览器能够用缩略图的形式浏览文件&#x…

【PC】2023年10月商店更新-闲游盒

亲爱的玩家朋友们&#xff0c;大家好&#xff01; 欢迎大家来到2023年第十次商店更新&#xff01; 万圣节即将到来&#xff0c;为了让大家可以在万圣节盛装出席&#xff0c;我们在10月商店更新中准备了邪恶诅咒&#xff0c;PGC 2023的专属宝物&#xff0c;以及RASH悲喜强势回归…