前言
对YOLO模型的简单理解,对其进行记录。
一、YOLO是什么?以及核心思想?
YOLO(You Only Look Once)模型是一种用于实时目标检测的深度学习模型,所以首先需了解目标检测的概念。
1、目标检测的本质与分类
1.目标检测本质:
- 目标在哪里:检测框具体位置
- 目标是什么:检测框检测的物品类别
以此可推断:需要AI实时目标检测,通过样例【如:数据集(人手动设置检测框和标签的图片集)】学习,知道目标在哪里,识别相应类型【使用相关方法通过检测框去进行图片特征提取、通过标签来分类识别】。
2.目标检测分类:
1、两阶段目标检测:先找出候选的一些区域,再对区域进行调整分类
2、单阶段目标检测:采用一个网络一步到位,输入图片,输出有哪些物体,并输出物体具体在什么位置
YoLo就是单阶段目标目标检测的一种
2、YOLO核心思想
将目标检测原始检测方法重构为回归问题,将目标图像像素预测为目标类别及其边界框属性,即目标检测框中心点(x,y),检测框宽高(w,h),置信度。
二 、为什么使用YOLO,优势是什么?
YOLO系列模型优势:
- 速度优势:YOLO的核心设计是单阶段检测,直接从图像中预测目标的类别和位置,无需复杂的候选区域生成步骤,因此速度极快,适合实时应用。
- 轻量化设计:YOLO的网络结构相对简单,计算量小,适合在资源受限的设备(如嵌入式系统、智能手机)上运行。
- 精度与速度的平衡:尽管YOLO以速度著称,但其检测精度也相当高。YOLOv3、YOLOv4、YOLOv5等版本通过改进网络结构和训练方法,进一步提升了检测精度。
- 易于部署:YOLO的代码开源,社区活跃,有大量的教程和资源可供参考。它支持多种操作系统和硬件平台,易于部署。
- 灵活性和可扩展性:YOLO的网络结构和训练流程具有较高的可定制性,开发者可以根据具体需求调整模型的超参数、网络结构和损失函数。
- 对小目标的检测能力:YOLOv3引入了多尺度预测,YOLOv8采用无锚点设计,进一步提升了对小目标的检测能力。
- 对复杂场景的适应性:YOLO在复杂背景和遮挡情况下表现出较强的抗干扰性,能够准确检测被部分遮挡的目标。
三、怎么使用YOLO模型?
YOLO模型使用方法:
1、准备代码和环境
- 下载YOLO模型的代码库
- 安装必要依赖
- 将预训练权重文件拷贝到工程目录下
2、准备数据集
3、模型训练(创建训练脚本,并指定训练参数)
4、模型预测(创建预测脚本,加载训练好的权重文件,并指定要检测的图像路径)
具体操作可参考:YoLo运用学习1
总结
目前对YOLO模型理论知道的简单了解,知道了YOLO模型是什么?为什么?怎么用?。