在智能手机制造和质检环节中,屏幕缺陷检测一直是个耗时费力的工序。传统人工目检不仅效率低下,且受主观因素影响大。我们基于YOLOv8目标检测算法,开发了一套自动化手机屏幕缺陷检测系统,能够识别划痕、坏点、色斑等常见屏幕缺陷。这套系统采用PyTorch框架实现,包含完整的训练代码、预训练模型和简洁实用的GUI界面,支持单张图像检测、视频流分析和摄像头实时检测三种工作模式。
提示:本项目已在真实产线测试环境中验证,对0.1mm以上的缺陷识别准确率达到92%以上,单张图像检测速度在RTX 3060显卡上可达45FPS。
系统核心优势在于:
选择YOLOv8作为基础模型主要基于以下考量:
python复制# 模型初始化示例代码
from ultralytics import YOLO
model = YOLO('yolov8n.yaml') # 使用nano版本保证速度
model.train(data='data.yaml', epochs=100, imgsz=640)
配套工具链选择:
系统数据处理流程分为三个关键阶段:
输入适配层:
检测核心引擎:
mermaid复制graph TD
A[输入图像] --> B(预处理)
B --> C{YOLOv8推理}
C --> D[后处理]
D --> E[结果渲染]
输出展示层:
我们收集了2000+张包含各类缺陷的手机屏幕图像,涵盖:
注意:采集时需保持相机与屏幕距离恒定(建议30cm),使用三脚架固定避免模糊。
采用YOLO格式标注,每个缺陷对应一行记录:
code复制<class_id> <x_center> <y_center> <width> <height>
具体规范:

训练时采用动态增强组合:
python复制# Albumentations增强配置示例
transform = A.Compose([
A.HorizontalFlip(p=0.5),
A.RandomBrightnessContrast(p=0.2),
A.GaussNoise(var_limit=(10, 50), p=0.3),
A.Cutout(max_h_size=20, max_w_size=20, p=0.5)
])
关键增强参数说明:
采用以下优化配置:
yaml复制# Hyperparameters
lr0: 0.01 # 初始学习率
lrf: 0.1 # 最终学习率衰减系数
momentum: 0.937
weight_decay: 0.0005
warmup_epochs: 3.0
warmup_momentum: 0.8
训练过程关键设置:
主要关注三个核心指标:

为提升部署效率,建议执行以下优化:
bash复制# 导出ONNX格式
python export.py --weights best.pt --include onnx --imgsz 640 --simplify
# FP16量化
python -m onnxruntime.tools.convert_onnx_models_to_ort --input best.onnx --float16
量化后模型:
采用PySide6构建的现代化界面包含:
python复制# 关键控件初始化代码
self.camera_btn = QPushButton("摄像头检测")
self.camera_btn.setStyleSheet("QPushButton{background:#3498db;}")
self.conf_slider = QSlider(Qt.Horizontal)
self.conf_slider.setRange(0, 100)
为避免界面冻结,采用生产者-消费者模式:
重要:必须使用QThread而非Python原生threading模块,否则会导致界面崩溃。
实测有效的优化手段:
python复制# GPU加速的颜色空间转换
def gpu_bgr2rgb(tensor):
return tensor[:, [2,1,0], ...]
典型部署架构:
code复制工业相机 → 工控机 → 检测系统 → 结果上传MES
↓
NG品分拣
硬件推荐配置:
在不同缺陷类型上的表现:
| 缺陷类型 | 检出率 | 误检率 | 平均耗时 |
|---|---|---|---|
| 划痕 | 94.2% | 3.1% | 22ms |
| 坏点 | 89.7% | 1.8% | 18ms |
| 色斑 | 91.5% | 2.4% | 25ms |
检测框抖动问题:
小缺陷漏检:
GPU利用率低:
通过以下步骤适配新机型:
bash复制python train.py --resume --data new_data.yaml --weights last.pt
推荐技术栈:
我在实际部署中发现,适当调整光照条件可以显著提升检测稳定性。建议产线环境保持500lux以上的均匀照明,避免反光干扰。对于特殊曲面屏,需要定制拍摄支架确保成像质量。