当前位置: 首页 > news >正文

基于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、一般而言,数据集数量太少,专栏的魔改没啥效果。

http://www.dtcms.com/a/100030.html

相关文章:

  • [C++面试] 智能指针面试点(重点)续3
  • 【视觉提示学习】3.28阅读随想
  • 11. STL的使用
  • springBoot统一响应类型3.4版本
  • LlamaIndex实现(基于PDF|CSV文件)RAG检索增强生成:NaiveRAG
  • 量子计算:未来计算技术的革命性突破
  • 【奶茶经济学的符号暴力本质】
  • 【软件开发】可复用的数据库导入工具类
  • J2EE框架技术 第五章 Spring注入与作用域
  • 【C++】STL库_stack_queue 的模拟实现
  • 【leetcode】通过两种遍历方式构造二叉树
  • 前端页面缓存问题
  • opencv之指纹验证
  • spring-security原理与应用系列:securityFilterChainBuilders
  • 职测-言语理解与表达
  • SD-WAN组网方案
  • pycharm相对路径引用方法
  • C++ 多态:面向对象编程的核心概念(一)
  • Android Product Flavors 深度解析与最佳实践:构建多版本应用的全方位指南
  • Redis的补充和RESP
  • 【工具】BioPred一个用于精准医疗中生物标志物分析的 R 软件包
  • C# StreamReader/StreamWriter 使用详解
  • 什么是 RBAC 权限模型?
  • jmeter web压力测试 压测
  • Android学习总结之算法篇三(打家劫舍)
  • 蓝桥杯—最小公倍数
  • Linux系统之dump命令的基本使用
  • Linux系统禁用swap
  • Xenium | 细胞邻域(Cellular Neighborhood)分析(fixed radius)
  • Spring AI MCP Server + Cline 快速搭建一个数据库 ChatBi 助手