YOLO-Quality-Control:基于 YOLOv11 的目标检测与质量控制
项目概述
本项目旨在利用 YOLOv11(You Only Look Once 第 11 版)实现制造业生产线中的实时目标检测。其核心目标是通过识别物体、将其分类为“损坏”或“正常”并高效计数,从而自动化质量控制流程。该系统可集成到生产线中,提升生产效率和产品质量。
项目目录
- 概述
- 数据集
- 方法论
- 结果
- 使用说明
- 演示
- 致谢
概述
制造业需要高效的质量控制系统以确保产品一致性并减少浪费。本项目采用 YOLOv11,一种先进的目标检测模型,实现以下功能:
• 检测生产线上的物体。
• 将其分类为“损坏”或“正常”。
• 统计每类物体的数量。
该解决方案设计为快速、准确且可扩展,适用于工业应用。
数据集
本项目使用的数据集来自 Kaggle,包含在不同条件下拍摄的物体图像。每个物体均标注了边界框,并分类为以下两类:
• 损坏:存在可见缺陷的物体。
• 正常:符合质量标准的物体。
关键信息:
• 数据集名称
• 图像数量:700
• 标注:边界框和标签(损坏/正常)或波斯语。
方法论
模型架构
使用 YOLO11l 和 YOLO11s,这是一种以速度和准确性著称的实时目标检测模型。其关键特性包括:
• 单次检测以实现高速推理。
• 支持多类别(本例中为“损坏”和“正常”)。
训练过程
- 预处理:
• 将图像调整为固定分辨率(如 512x512)。
• 将数据划分为训练集(80%)、验证集(10%)和测试集(10%)。 - 训练:
• 在自定义数据集上微调 YOLO11。
• 使用迁移学习以利用预训练权重。 - 评估:
• 指标:精确率(Precision)、召回率(Recall)、平均精度(mAP)和 F1 分数。
• 在测试集上实现了 0.95% 的 mAP。
部署
训练后的模型通过 Python 和 OpenCV 部署到生产线模拟器中,用于实时推理。
结果
性能指标
指标 | 值 |
---|---|
精确率 | 95.55% |
召回率 | 95.65% |
mAP@0.5 | 95.10% |
损失 | 0.17 |
示例输出
以下是一个测试图像上的模型输出示例视频:下载链接。
使用说明
环境要求
• Python 3.10.16
• 安装依赖项:
pip install torch torchvision opencv-python ultralytics
总结
本项目展示了 YOLOv11 在制造业质量控制中的强大能力,通过实时目标检测和分类,显著提升了生产效率和产品质量。未来,随着模型的进一步优化,其应用范围将更加广泛。