Yolo系列-yolov1
YOLO-V1
经典的one-stage方法
YouOnlyLookOnce,名字就已经说明了一切!把检测问题转化成回归问题,一个CNN就搞定了!可以对视频进行实时检测,应用领域非常广!
核心思想:
Yolov1的核心思想是将对象检测问题转化为一个回归问题,通过单个神经网络直接在输入图像上预测边界框和类别。这个网络被划分为多个网格,每个网格负责检测特定区域内的对象。每个网格预测多个边界框和每个边界框的置信度,以及每个边界框所属的类别。整个网络采用全连接层将所有预测值聚合在一起,并利用非极大值抑制过滤出最终的检测结果。这种方法减少了检测过程中的计算量,提高了检测速度,同时保持了较高的准确率。
网络架构

YOLOv1(You Only Look Once Version 1)是一种基于卷积神经网络的目标检测算法,由Joseph Redmon于2015年提出。相较于之前的目标检测算法,YOLOv1在速度上有很大的优势,可以实现实时目标检测。
YOLOv1的网络架构可以分为两个阶段:特征提取和目标检测。特征提取使用了一个24层的卷积神经网络,将输入图像经过多次卷积层和池化层处理后,得到一张特征图。目标检测则在这张特征图上完成,将图像分成7x7个网格,并对每个网格预测目标的类别和位置。
YOLOv1的网络架构如下图所示:
yolov1-network-arch
输入图像首先会经过一个卷积层,该卷积层使用Sobel边缘检测滤波器,可以提取图像中的边缘信息。接着经过多个卷积层和池化层处理,最后得到一张7x7x1024的特征图。这张特征图被分为7x7个网格,每个网格预测两个边界框(bounding box),每个边界框包含5个预测值:x、y、w、h和置信度(confidence)。x和y表示边界框中心在网格中的位置,w和h表示边界框的宽度和高度,置信度表示该边界框包含目标的概率。
YOLOv1的训练过程使用了交叉熵损失函数,并且将不同类别的损失进行了加权,使得小目标和大目标的权重相等,避免了某些类别在预测时过度占据了损失函数。此外,YOLOv1的训练过程采用了多尺度输入图像,以更好地处理不同大小的目标。
虽然YOLOv1在速度上有很大的优势,但是在检测精度方面并不是最优的。随后的YOLOv2、YOLOv3和YOLOv4等版本不断推出,对YOLOv1的网络架构进行了改进和优化,提高了检测精度和速度。
每个数字的含义

损失函数


NMS(非极大值抑制)
NMS (Non-maximum suppression,非极大值抑制)是一种在计算机视觉中常用的技术,主要用于目标检测、边缘检测等领域中的局部最大值的筛选。
在目标检测中,经常会使用滑动窗口或者锚框来搜索可能包含目标的区域。这个过程中,往往会产生很多重叠的检测结果,不同的检测结果可能都认为自己是目标。这时候,需要使用NMS来筛选掉其中的冗余检测结果,只保留最准确的那一个。
NMS的基本思想很简单,对于一组检测结果,首先会按照其得分(比如分类概率)从高到低排序,然后从得分最高的检测结果开始,遍历其余所有检测结果。对于任意两个重叠度(IoU)大于一定阈值的检测结果,只保留得分较高的那个,将得分较低的检测结果删除。重复这个过程,直到所有检测结果被遍历完。
NMS算法的核心就是对检测框进行排序和遍历并删除冗余的检测框,然后返回排好序的检测框列表。NMS算法是目标检测的重要组成部分,也是多个目标检测算法共有的一个优化手段。
YOLO-V1的优缺点
优点:快速,简单!
问题1:每个Cell只预测一个类别,如果重叠无法解决问题2:小物体检测效果一般,长宽比可选的但单一
相关文章:
Yolo系列-yolov1
YOLO-V1 经典的one-stage方法 YouOnlyLookOnce,名字就已经说明了一切!把检测问题转化成回归问题,一个CNN就搞定了!可以对视频进行实时检测,应用领域非常广! 核心思想: Yolov1的核心思想是将对象…...
单片机TVS/ESD二极管防护
TVS 瞬态电压抑制二极管Transient Voltage Suppressor ESD 静电释放二极管 Electro-Static discharge 这两种本质上都是二极管。都是利用了二极管正向导通、反向截止的特性。二极管在反向截止截止条件下,如果电压继续增大,将会引发雪崩,使得…...
TCP协议的重点知识点
TCP协议的重点知识点 TCP(传输控制协议)是一种面向连接、可靠的数据传输协议,工作在传输层,提供可靠的字节流服务。它是互联网协议栈中最重要、最复杂的协议之一,也是面试中常被问到的知识点。本文将详细介绍TCP协议的各个重要概念。 TCP基本特性 TCP主要具有以下基本特性: …...
大数据——一文熟悉HBase
1、HBase是什么 HBase是基于HDFS的数据存储,它建立在HDFS文件系统上面,利用了HDFS的容错能力,内部还有哈希表并利用索引,可以快速对HDFS上的数据进行随时读写功能。 Hadoop在已经有一个HiveMapReduce结构的数据读写功能&#x…...
如何有效进行RLHF的数据标注?
编者按:随着大语言模型在自然语言处理领域的广泛应用,如何从人类反馈进行强化学习(RLHF)已成为一个重要的技术挑战。并且RLHF需要大量高质量的人工数据标注,这是一个非常费力的过程。 本文作者在数据标注领域具有丰富经…...
2023年8月22日OpenAI推出了革命性更新:ChatGPT-3.5 Turbo微调和API更新,为您的业务量身打造AI模型
🌷🍁 博主猫头虎 带您 Go to New World.✨🍁 🦄 博客首页——猫头虎的博客🎐 🐳《面试题大全专栏》 文章图文并茂🦕生动形象🦖简单易学!欢迎大家来踩踩~🌺 &a…...
windows配置wsl,Unbuntu启动GPU加速
wsl全称Windows Subsystem for Linux,windows电脑下的linux子系统,对于想用Linux的Windows用户来说wsl是一个不错的选择。 安装wsl 两种方法可以安装wsl,这个默认安装在C盘。 方法一运行命令安装 wsl --install方法二,在windo…...
Postman测WebSocket接口
01、WebSocket 简介 WebSocket是一种在单个TCP连接上进行全双工通信的协议。 WebSocket使得客户端和服务器之间的数据交换变得更加简单,允许服务端主动向客户端推送数据。在WebSocket API中,浏览器和服务器只需要完成一次握手,两者之间就直…...
【内网穿透】搭建我的世界Java版服务器,公网远程联机
目录 前言 1. 搭建我的世界服务器 1.1 服务器安装java环境 1.2 配置服务端 2. 测试局域网联机 3. 公网远程联机 3.1 安装cpolar内网穿透 3.1.1 windows系统 3.1.2 linux系统(支持一键自动安装脚本) 3.2 创建隧道映射内网端口 3.3 测试公网远程…...
Unable to Locate package python2| Linux Ubuntu系统下python2的安装
Linux Ubuntu系统下python2的安装 FSL的安装脚本是用Python2写的,新版本的Ubuntu (16以后)在默认情况下没有安装Python2。在终端输入 python2,若提示没有相应的命令,则需要先安装Python2,如下指令…...
从上帝视角俯瞰vue2路由(简单易懂)
文章目录 路由原理(hash)路由安装和使用(vue2)路由跳转路由的传参和取值嵌套路由路由守卫完整代码 路由原理(hash) 单页应用的路由模式有两种 哈希模式(利用hashchange 事件监听 url的hash 的…...
STL-空间配置器的了解
前言 空间配置器,顾名思义就是为了各个容器高效的管理空间(空间的申请与回收)的,在默默的工作的。虽然在常规上使用STL时,可能用不上它,但是站在学习研究的角度,学习它的实现原理对我们有很大的…...
哔哩哔哩 B站 bilibili 视频视频音效调节 清澈人声
视频音效调节方式:直接视频播放内容界面内鼠标右键点击视频音效调节 注意:需要使用的是谷歌浏览器,我的火狐浏览器试了不行,都没选项,火狐的出来的界面是这样的: 目录 具体操作如下: 1、谷歌…...
下一代存储解决方案:湖仓一体
文章首发地址 湖仓一体是将数据湖和数据仓库相结合的一种数据架构,它可以同时满足大数据存储和传统数据仓库的需求。具体来说,湖仓一体可以实现以下几个方面的功能: 数据集成: 湖仓一体可以集成多个数据源,包括结构…...
IntelliJ IDEA 2023.2.1 修复版本日志
我们刚刚发布了 v2023.2 的第一个错误修复更新。 您可以从 IDE 内部、使用工具箱应用程序或通过快照(如果您使用的是 Ubuntu)更新到此版本。您也可以直接从我们的网站下载。 以下是最新版本中包含的最值得注意的改进和修复的列表: 我们已经解…...
算法通关村十三关 | 数组字符串加法专题
1. 数组实现整数加法 题目:LeetCode66,66. 加一 - 力扣(LeetCode) 思路 我们只需要从头到尾依次运算,用常量标记是否进位,需要考虑的特殊情况是digits [9,9,9]的时候进位,我们组要创建长度加1…...
k8s--基本概念理解
必填字段 在要创建的 Kubernetes 对象的文件中.yaml,您需要设置以下字段的值: apiVersion- 您使用哪个版本的 Kubernetes API 创建此对象 kind- 你想创建什么样的对象 metadata- 有助于唯一标识对象的数据,包括name字符串、UID和可选namesp…...
流媒体开发千问【持续更新】
H.264中IDR帧和I帧区别 H.264/AVC编码标准中,IDR帧和I帧都是关键帧,即它们都不依赖于其他帧进行解码。但是,它们之间存在明确的区别: 定义与功能: I帧(Intra-frame):I帧是一个内部编…...
全球各国官方语言大盘点,英语不得不学哇。。。
因国家和地区范围界定不同,官方语言只是个相对概念。具体而言是一个国家通用的正式语言或认定的正式语言。它是为适应管理国家事务的需要,在国家机关、正式文件、法律裁决及国际交往等官方场合中规定一种或几种语言为有效语言的现象。官方语言也是一个国…...
【mq】如何保证消息可靠性
文章目录 mq由哪几部分组成rocketmqkafka 为什么需要这几部分nameserver/zookeeper可靠性 broker可靠性 生产者消费者 mq由哪几部分组成 rocketmq kafka 这里先不讨论Kafka Raft模式 比较一下,kafka的结构和rocketmq的机构基本上一样,都需要一个注册…...
UE5 学习系列(二)用户操作界面及介绍
这篇博客是 UE5 学习系列博客的第二篇,在第一篇的基础上展开这篇内容。博客参考的 B 站视频资料和第一篇的链接如下: 【Note】:如果你已经完成安装等操作,可以只执行第一篇博客中 2. 新建一个空白游戏项目 章节操作,重…...
超短脉冲激光自聚焦效应
前言与目录 强激光引起自聚焦效应机理 超短脉冲激光在脆性材料内部加工时引起的自聚焦效应,这是一种非线性光学现象,主要涉及光学克尔效应和材料的非线性光学特性。 自聚焦效应可以产生局部的强光场,对材料产生非线性响应,可能…...
MySQL 隔离级别:脏读、幻读及不可重复读的原理与示例
一、MySQL 隔离级别 MySQL 提供了四种隔离级别,用于控制事务之间的并发访问以及数据的可见性,不同隔离级别对脏读、幻读、不可重复读这几种并发数据问题有着不同的处理方式,具体如下: 隔离级别脏读不可重复读幻读性能特点及锁机制读未提交(READ UNCOMMITTED)允许出现允许…...
Python爬虫实战:研究feedparser库相关技术
1. 引言 1.1 研究背景与意义 在当今信息爆炸的时代,互联网上存在着海量的信息资源。RSS(Really Simple Syndication)作为一种标准化的信息聚合技术,被广泛用于网站内容的发布和订阅。通过 RSS,用户可以方便地获取网站更新的内容,而无需频繁访问各个网站。 然而,互联网…...
spring:实例工厂方法获取bean
spring处理使用静态工厂方法获取bean实例,也可以通过实例工厂方法获取bean实例。 实例工厂方法步骤如下: 定义实例工厂类(Java代码),定义实例工厂(xml),定义调用实例工厂ÿ…...
C++中string流知识详解和示例
一、概览与类体系 C 提供三种基于内存字符串的流,定义在 <sstream> 中: std::istringstream:输入流,从已有字符串中读取并解析。std::ostringstream:输出流,向内部缓冲区写入内容,最终取…...
AI编程--插件对比分析:CodeRider、GitHub Copilot及其他
AI编程插件对比分析:CodeRider、GitHub Copilot及其他 随着人工智能技术的快速发展,AI编程插件已成为提升开发者生产力的重要工具。CodeRider和GitHub Copilot作为市场上的领先者,分别以其独特的特性和生态系统吸引了大量开发者。本文将从功…...
自然语言处理——Transformer
自然语言处理——Transformer 自注意力机制多头注意力机制Transformer 虽然循环神经网络可以对具有序列特性的数据非常有效,它能挖掘数据中的时序信息以及语义信息,但是它有一个很大的缺陷——很难并行化。 我们可以考虑用CNN来替代RNN,但是…...
【JavaSE】绘图与事件入门学习笔记
-Java绘图坐标体系 坐标体系-介绍 坐标原点位于左上角,以像素为单位。 在Java坐标系中,第一个是x坐标,表示当前位置为水平方向,距离坐标原点x个像素;第二个是y坐标,表示当前位置为垂直方向,距离坐标原点y个像素。 坐标体系-像素 …...
ArcGIS Pro制作水平横向图例+多级标注
今天介绍下载ArcGIS Pro中如何设置水平横向图例。 之前我们介绍了ArcGIS的横向图例制作:ArcGIS横向、多列图例、顺序重排、符号居中、批量更改图例符号等等(ArcGIS出图图例8大技巧),那这次我们看看ArcGIS Pro如何更加快捷的操作。…...
