75.YOLOv5/v8 COCO128数据集配置,yaml文件直接用,训练不报错
摘要
YOLO(You Only Look Once)系列算法是目标检测领域最具代表性的单阶段检测框架,以其端到端的推理速度和精度平衡著称。
本文从YOLOv5/v8的工程化视角出发,系统梳理目标检测的核心原理,并提供一套完整可运行的代码案例,涵盖数据准备、模型训练、推理评估与部署优化全流程。
文章严格遵循理工科逻辑,所有代码均经过验证,可直接复制运行。通过本文,读者将掌握YOLO在实际项目中的落地方法,理解从理论到工程的关键环节,并规避常见错误。
核心原理
YOLO将目标检测视为回归问题,其核心思想是:将输入图像划分为S×S网格,每个网格负责预测B个边界框及C个类别概率。每个边界框包含5个参数:x, y, w, h, confidence。其中(x,y)是框中心相对于网格的偏移,w,h是相对于整张图像的宽高,confidence表示框内包含目标的置信度。
关键创新点包括:
端到端单阶段检测:与Faster R-CNN等两阶段方法不同,YOLO在单个网络中同时完成定位与分类,避免了区域提议网络(RPN)的额外计算。
多尺度预测:YOLOv3起引入FPN(特征金字塔网络),在不同尺度的特征图上预测小、中、大目标,解决尺度变化问题。
锚框机制:预定义一组先验框(Anchor Box),网络预测相对于锚框的偏移量,降低回归难度。YOLOv5使用K-means聚类从训练集中自动生成锚框。
损失函数:由三部分组成——边界框回归损失(CIoU Loss)、置信度损失(BCE Loss)
