人工智能|YOLOv1的简单介绍

简介: YOLOv1将输入图像划分为7×7网格,每个网格单元预测2个边界框(BBOX)及对应置信度,并输出20类概率。通过中心点归属、相对坐标偏移与归一化,实现端到端实时目标检测。(239字)

 YOLO1是怎么进行目标识别的呐?

Grid = 整体整张网格(7×7 网格)

Grid cell = 网格单元(最标准)

BBOX(Bounding Box)= 边界框

        比如我们有一张448*448的图片,它会把这张图片划分成7*7的网格,每个网格都叫做一个

Grid cell(网格单元。YOLO会检测这张图片中有没有东西,比如这张图片中有一只小狗,一个

自行车,一辆汽车。比如YOLO识别到它们了,它们的中心点就会落在一个网格里。YOLO会根据

中心点再检测出一个边界框。这个边界框就叫做BBOX

image.gif


网络结构层

输入图片:448×448×3(RGB)

Backbone(骨干网络):就是多个卷积层的部分。

Neck(颈部网络):在YOLOV1里面可以把它理解成全连接网络。

head(检测头):就是最后7*7*30的输出就可以啦。

输出是:7*7*30的矩阵

    我们首先看一下最后的部分,最后是一个7*7*1024的输出,然后把它展平。进入只有两层的全

连接网络,然后把输出的1470的向量,变成为7*7*30的矩阵。S=7 就对应图片的7*749个网格

30就是每个网格都是30维的向量

image.gif

image.gif

   

     前 10 个数值分为两组,每组分别对应一个边界框的中心点坐标、以及宽高、用来表示检测

框的位置。每组末尾都有一个置信度,代表该边界框存在物体的概率。后面 20 个数值为 20 个类

别的概率,数据集一共包含 20 个目标类别。每个 Grid cell 预测2 个 BBOX可以同时检测同一个

格子里的两个物体,降低漏检率。

image.gif

     我们先来看标签数据的设定方式。当小狗的中心点落在某个网格单元中时,我们就需要为该网

格对应的 30 维向量打上对应的标签。其余不包含物体中心点的网格单元,全部置为负样本标签

以此实现 YOLOv1 中心点归属网格的检测规则。

image.gif


中心点和边界框的坐标数值

   YOLOv1 在数据集标注阶段,就是按原始图片的真实像素尺寸来标注物体位置(绝对坐标)

图片的左上角是定位原点(0,0),假设原始图片的大小是800 × 600。你标注工具

(LabelImg/VOC 格式)打的标签是:x_abs, y_abs, w_abs, h_abs。这是完全按 800×600 的像素

来的。

image.gif

YOLOv1 网络要求输入是 448×448 所以图片会被缩放到 448×448。坐标必须一起缩放!

不然位置就错位了。 所以要把像素坐标一起归一化到 0~1。直接除去图片的宽和高就可以啦。

image.gif

相对坐标到网络偏移

YOLOv1会在数据预处理阶段,会用相对位置算出中心点落在那个网格中。然后再计算中心点相对

于这个网络的偏移量。此时的下x,y是相对于该网格的偏移量。w,h是相对于整张图片的偏移量

image.gif

预测阶段

符号 含义
x^,y^ 网络预测输出:当前网格内部相对偏移量(0~1),就是你上一张图里训练标签的 、
gridx,gridy 物体中心点所在的网格编号(0~6),训练阶段提前确定
w^,h^ 网络预测输出:整张图全局相对宽高(0~1),训练阶段直接归一化得到
x_absolute,y_absolute 最终还原:448×448 输入图片上,物体中心点绝对像素坐标
w_absolute,h_absolute 最终还原:448×448 输入图片上,框的绝对像素宽高
YOLOv1 固定输入尺寸参数:448÷7=64

image.gif

推理阶段

实时推理 = 依然不是原图

实时摄像头原始大图(任意尺寸)
【缩放 Resize】
网络固定输入 448×448
【7×7 网格划分 + 网络前向推理】
输出网格内部相对偏移量 x^, y^, w^, h^
【推理解码公式计算】
448×448 缩放图上绝对像素框
【比例映射还原】
原始大图上最终检测显示框

image.gif

image.gif


目录
相关文章
|
2月前
|
人工智能 自然语言处理 计算机视觉
人工智能|大白话Meshed-Memory Transformer
M2Transformer是一种图像描述生成模型,由三部分构成:骨干编码器(Faster R-CNN)提取区域特征;记忆增强编码器(Transformer)对特征进行语义细化;网格解码器(Transformer)将增强特征转化为自然语言描述。结构清晰、层次分明,兼顾准确性与可解释性。(239字)
210 4
|
2月前
|
机器学习/深度学习 人工智能 应用服务中间件
别再被误导了!一文讲透 MCP 与 Function Calling 的真实关系
AI圈热议MCP能否取代Function Calling?实则二者定位迥异:Function Calling是大模型的“决策层”,负责选工具、生成参数;MCP是后端与工具间的“执行协议”,统一调用标准。二者分属不同链路环节,非替代关系,而是协同互补的“黄金搭档”。
|
2月前
|
人工智能 机器人 芯片
人工智能|YOLOv8实战
本内容为安全帽检测实战项目,基于YOLOv8模型,涵盖Kaggle数据获取、自定义yaml配置、模型训练(yolo_train.py)与测试(yolo_test.py),并提供服务器(FastAPI+Docker)、边缘(Jetson+TensorRT)及国产嵌入式(RK3588+RKNN)三类部署方案,支持工业场景实时智能识别。(239字)
500 1
|
2月前
|
人工智能 数据可视化 测试技术
【教程】阿里云轻量云服务器一键配置OpenClaw
如果你还没有部署自己的 OpenClaw,还可以通过购买腾讯的轻量云服务器,一键秒级部署指南一键秒级部署指南,一键即可在几秒内完成部署。
482 9
|
2月前
|
弹性计算 监控 Java
Maven 并行构建配置:-T 4C 提速 4 倍实战
本文深入讲解了 Maven 并行构建的核心原理和实战技巧,包含 -T 参数详解、模块并行化改造、性能监控与分析等企业级最佳实践。通过真实案例展示了如何将多模块项目的构建时间从 45 分钟缩短到 11 分钟(提升 4.1 倍),提供完整的性能测试脚本和优化检查清单。掌握这些技能,你将能够充分利用多核 CPU 加速 Maven 构建。适合 Java 开发者、架构师、DevOps 工程师阅读。
|
2月前
|
存储 人工智能 缓存
AI不稳定不是工程Bug,是一场系统性误读——意图共鸣科技行业洞察
过去三年AI狂卷参数与算力,却困于“Demo惊艳、上线翻车”。症结在于误读“AI稳定性”——它非传统软件不宕机,而是大模型在行为分寸、长期记忆、责任可溯、商业可持续四维的结构性缺失。意图共鸣科技正深耕此深水区。
273 6
|
2月前
|
人工智能 自然语言处理 数据挖掘
AI时代的个人知识管理:从知识库、SOP到OPC一人公司
本文探讨AI时代下的个人知识管理新范式——OPC一人公司:它并非法律意义的单人企业,而是以目标判断为核、AI为辅、知识库为基、SOP为纲、复盘为钥的可复用工作系统。强调经验沉淀、流程自动化与持续优化,助力个体实现部门级任务处理能力。
454 4
|
2月前
|
监控 固态存储 Java
Maven 本地仓库优化:SSD+ 目录结构调整最佳实践
本文深入讲解了 Maven 本地仓库优化的完整方案,包含 SSD 迁移、目录结构规划、清理策略、多版本管理等企业级最佳实践。通过真实案例展示了如何将 50GB 仓库优化到 20GB(减少 60%),构建时间从 12 分钟缩短到 2 分钟(提升 6 倍)。提供完整的迁移脚本、清理工具和监控方案,帮助开发者解决磁盘空间不足、I/O 性能瓶颈等问题。适合 Java 开发者、DevOps 工程师阅读。
|
2月前
|
人工智能 自然语言处理 数据挖掘
用ChatGPT和Codex搭建个人AI工作流:从一人部门到开源实践
本文探讨AI时代“一人部门”工作法:用ChatGPT拆解任务、构建知识库,用Codex将流程工具化,结合复盘与沉淀,打造可持续的个人AI工作系统(OPC)。非替代团队,而是以工具+流程+知识,提升单人可复用、可迭代的系统性产出能力。
1171 7
|
2月前
|
人工智能 运维 安全
Claude Code模型替换升级指南 接入DeepSeek V4-Pro实操与问题排查全解
当下终端AI编程工具Claude Code凭借轻量化、全流程代码处理、跨文件项目分析等优势,成为众多开发者日常编码、项目重构、漏洞修复、脚本编写的主流选择。原生状态下Claude Code绑定专属模型运行,虽然基础能力稳定,但在代码理解、长逻辑推理、中文场景适配、调用成本等方面仍存在优化空间。
1090 8