基于YOLOv8的PCB缺陷检测--补充实验

主要内容如下:

1、数据集介绍

2、下载PCB数据集

3、模型训练及可视化

运行环境 :Python=3.8(要求>=3.8),torch1.12.0+cu113(要求>=1.8)
YOLO格式下载链接【直接拿来训练】 :https://aistudio.baidu.com/datasetdetail/297149

往期内容:

【超详细】跑通YOLOv8之深度学习环境配置1-Anaconda安装
【超详细】跑通YOLOv8之深度学习环境配置2-CUDA安装
【超详细】跑通YOLOv8之深度学习环境配置3-YOLOv8安装
【超详细】基于YOLOv8的PCB缺陷检测
【超详细】基于YOLOv11的PCB缺陷检测

注意:文中仅简单训练测试,不能作为其他对照实验依据,同时数据集划分可能存在差异,结果存在不一致!

1 数据集介绍

1.1 简介

印刷电路板(PCB)瑕疵数据集:是一个公共的合成PCB数据集,由北京大学发布,其中包含1386张图像以及6种缺陷(缺失孔,鼠标咬伤,开路,短路,杂散,伪铜),用于检测,分类和配准任务。本文我们选取了其中适用与检测任务的693张图像,随机选择593张图像作为训练集,100张图像作为验证集。

1.2 示例

2 下载数据集

官方链接 :https://robotics.pkusz.edu.cn/resources/dataset/
注意 :百度网盘下载,速度很慢,不推荐!推荐去百度AI stduio数据集下载,速度快!

百度AI stduio下载链接【直接拿来训练】 :https://aistudio.baidu.com/datasetdetail/297149

3 训练记录

3.1 不同模型大小训练结果

训练参数设置:epoch=100,batchsize=8,cache=False,imagez=640

3.1.1 yolov8n-0.886
3.1.2 yolov8s-0.948
3.1.3 yolov8m-0.961
3.1.4 yolov8l-0.959

3.2 不同分辨率

训练参数设置:epoch=100,batchsize=8,cache=False,imagez=640-1536

3.2 yolov8s-960-0.966

3.2 yolov8s-1280-0.973

3.2 yolov8s-1536-0.980

3.2 yolov8m-960-0.970

3.2 yolov8m-1280-0.980

3.2 yolov8m-1536-0.981

3.3 不同损失

训练参数设置:epoch=100,batchsize=8,cache=False,imagez=960

3.3.1 yolov8m-960-slidloss-0.977
3.3.2 yolov8m-960-focalloss-0.963
3.3.3 yolov8m-960-wiseiou-0.976
3.3.4 yolov8m-960-shapeiou-0.969
3.3.5 yolov8m-960-eiou-0.968
3.3.6 yolov8m-960-ciou-0.970【默认】

3.4 se注意力和cga,及asff模块

训练参数设置 :epoch=100,batchsize=8,cache=False,imagez=960
模块加的位置:neck与head三路径中间。

3.4.1 yolov8m-960-cga-0.975
3.4.2 yolov8m-960-asff-0.972
3.4.3 yolov8m-960-se-0.978
3.4.4 yolov8s-640-cga-0.932
3.4.5 yolov8s-640-asff-0.938
3.4.6 yolov8s-640-se-0.94

结论

1、参数更大的模型如m、l等检测效果要优于n、s小模型,但是会带来更多资源消耗以及降低检测速度;

2、针对小目标检测,提升分辨率带来效果更显著,但较大的分辨率也会降低检测速度,以及带来更多的资源消耗;

3、一般而言,数据集数量太少,专栏的魔改没啥效果。

相关推荐
sali-tec16 小时前
C# 基于OpenCv的视觉工作流-章110-YOLO 实例分割
图像处理·人工智能·opencv·算法·yolo·计算机视觉
richard_yuu1 天前
动态规划:强化学习的「数学基础」,从 MDP 到值迭代
深度学习·神经网络·算法·yolo·机器学习·动态规划
初学大模型1 天前
先剔后识:OpenCV三维预处理与YOLO语义检测协同的机器人视觉系统可行性分析
人工智能·opencv·yolo·计算机视觉·机器人
Python图像识别2 天前
18-【2027毕设】YOLO11烟雾检测识别系统 - Python完整源码+PyQt5界面+训练模型+数据集
python·深度学习·yolo·毕业设计·毕设
Python图像识别2 天前
17-【2027毕设】YOLO11水稻病害检测识别系统 - Python完整源码+PyQt5界面+训练模型+数据集
python·深度学习·yolo·毕业设计·毕设
YOLO数据集集合2 天前
睡岗检测数据集 | 睡岗检测 行为识别 岗位监督 安全管理9114期
深度学习·yolo·目标检测·数据集·安全管理·行为识别·睡岗检测
羊羊小栈8 天前
基于「YOLO目标检测 + 多模态AI分析」的水稻病害智能检测分析预警系统(LangChain框架)
人工智能·yolo·目标检测·毕业设计·创业创新·大作业
YOLO_DATA9 天前
遥感滑坡检测的数据集 2299 张 1类 yolo格式 遥感滑坡检测数据集
人工智能·深度学习·yolo·计算机视觉·无人机·yolo数据集·ai数据集
计算机编程-吉哥9 天前
YOLO26 vs YOLO11 vs YOLOv8:深度学习咖啡果实成熟度分割系统【计算机毕业设计选题推荐】
人工智能·python·深度学习·yolo·django·毕业设计
西西弗Sisyphus10 天前
YOLO26 图像分割 - 训练的数据加载:取图、在线增强与标签缓存
yolo·yolo26