【每天一个知识点】YOLO算法

一、什么是 YOLO?

YOLOYou Only Look Once 的缩写,中文常译为 "你只看一次"

它是一类非常著名的 目标检测(Object Detection)算法,主要用来回答三个问题:

📸 这张图片里有什么?

📍 它们在哪里?

🏷 它们是什么类别?

例如:

在一张马路照片中,YOLO 可以同时检测出 人、汽车、自行车、红绿灯,并给出它们在图像中的具体位置。


二、目标检测到底在做什么?

在计算机视觉中,目标检测 ≠ 图像分类。

任务 能力
图像分类 判断整张图属于什么(如:猫 / 狗)
目标检测 找出图中 多个目标,并标出位置和类别
语义分割 给每一个像素打标签

目标检测的输出通常是一个个 "框" ,称为 边界框(Bounding Box)

复制代码
[类别 + 置信度 + 位置坐标]

三、YOLO 的核心思想:一次完成所有事

在 YOLO 出现之前,目标检测算法普遍采用 "两阶段"方法

  1. 先找"可能有目标的区域"

  2. 再对每个区域进行分类

📌 问题是:慢、复杂、计算量大


YOLO 的革命性思想 💡

把目标检测当成一个"回归问题",一次前向计算就完成所有预测。

YOLO 的工作流程可以理解为:

1️⃣ 把整张图片分成很多网格

2️⃣ 每个网格负责检测它"看到"的目标

3️⃣ 一次性输出:

  • 目标位置

  • 目标类别

  • 置信度

所以叫:You Only Look Once


四、YOLO 是如何"看图"的?

1️⃣ 网格划分思想

YOLO 会把输入图片划分成 S × S 的网格,例如:

复制代码
7 × 7 或 13 × 13 或 19 × 19

每个网格负责预测:

  • 是否有目标

  • 目标的边界框(x, y, w, h)

  • 目标类别概率


2️⃣ Anchor(锚框)机制(后续版本)

为了适应不同大小、不同形状的目标,YOLO 引入了 Anchor Box(锚框)

  • 事先定义几种常见的框形状

  • 网络只需预测"偏移量"

📌 这样可以更好地检测:

  • 小目标

  • 细长目标

  • 密集目标


五、YOLO 为什么这么快?

YOLO 的速度优势主要来自三点:

单阶段检测(One-stage)

全卷积神经网络(CNN)结构

端到端训练,无需复杂后处理

对比来看:

算法 速度 精度 适用场景
Faster R-CNN 医学、遥感
SSD 移动端
YOLO 较高 实时场景

六、YOLO 系列的发展历程(简要)

版本 特点
YOLOv1 首次提出"一次检测"思想
YOLOv2 引入 Anchor、多尺度训练
YOLOv3 多尺度预测,小目标更好
YOLOv4 工程优化,性能提升
YOLOv5 工程友好,应用广泛
YOLOv7 训练与推理效率提升
YOLOv8 结构更简洁,支持多任务

📌 实际教学和工程中,YOLOv5 / YOLOv8 使用比较多


七、YOLO 能用在哪些地方?

YOLO 的"快 + 准"特性,使其非常适合 实时智能场景

🚗 智能驾驶(行人、车辆检测)

📹 视频监控(异常行为识别)

🏭 工业质检(缺陷检测)

🤖 机器人视觉

🧑‍⚕ 医疗辅助(部分实时场景)

📱 移动端 / 边缘计算设备


八、YOLO 的不足在哪里?

虽然 YOLO 很强,但并非万能:

❌ 对极小目标 不如两阶段方法

❌ 高密度目标场景下可能漏检

❌ 精度极限略低于复杂模型

📌 实际应用中,常根据 "速度 vs 精度" 做权衡。


九、总结一句话理解 YOLO

YOLO 是一种把"找目标"这件事做得又快又直接的算法,
让机器像人一样,一眼就看懂整张图。


相关推荐
饼饼学习空间智能2 小时前
家庭服务机器人训练数据怎么积累?仿真、真实采集与持续学习的技术路线分析
人工智能·算法·机器学习
蛋先生DX3 小时前
你瘦不下来但大模型可以:量化原理了解一下
深度学习·算法·llm
leoZ2313 小时前
Vue3 还原一个企业级后台-08-API注册管理
目标检测·机器学习·分类·状态模式·迁移学习·集成学习·figma
牛阿大4 小时前
LQR算法
算法
(╹◡╹)4 小时前
18.剪枝
算法·机器学习·剪枝
Fa_Mian_Tuan6 小时前
图论基础|邻接矩阵超详细讲解(含无向/有向/带权图+完整可运行C语言代码)
c语言·数据结构·笔记·算法·图论
hanhahai6 小时前
指针与函数(函数指针与指针函数)
算法
ValhallaCoder6 小时前
Leetcode-hot100(2026.08.17)
python·算法·leetcode
泡沫冰@6 小时前
GO 语言基础
开发语言·算法·golang