基于YOLO和大语言模型的PCB智能缺陷检测系统

PCB Intelligent Defect Detection System based on YOLO & LLM

基于 YOLOv8 + LLaVA 的PCB智能缺陷检测系统

📖 项目简介 (Introduction)

本系统是一款针对PCB缺陷检测的系统。该系统旨在解决传统人工目检效率低、漏检率高的问题,通过结合YOLOv8 高速目标检测LLaVA 多模态大模型分析技术,实现对印刷电路板 (PCB) 缺陷的毫秒级精准识别与深度语义分析。

本项目已针对 PCB 常见缺陷进行了深度定制,支持单张精细检测批量流水线处理历史数据追踪 以及一键生成质检报告等核心功能,完全适配工业现场部署需求。


项目地址:https://mbd.pub/o/bread/YZWZmptqZw==









🔥 核心功能 (Key Features)

1. 🔍 单张检测

  • 多源数据输入 :支持本地文件上传、剪贴板粘贴以及 USB/Webcam 工业相机实时识别。
  • 动态可视化:采用高对比度、动态缩放的标注系统,专为工业大屏优化,确保在复杂背景下缺陷清晰可见。
  • 双模检测引擎
    • 高速模式 (High-Speed):仅运行 YOLOv8,实现 <50ms 的实时检测。
    • 深度分析 (Deep Analysis):开启 LLaVA 大模型,生成关于缺陷成因与处理建议的详细自然语言报告。
  • 专业质检报告:一键生成 HTML 格式的标准化质检报告,包含缺陷图像、统计数据与 AI 分析结论。

2. 📦 批量检测

  • 高并发处理:支持一次性导入数百张 PCB 图像进行全自动检测。
  • 画廊式预览:实时生成检测结果画廊,快速复核生产质量。
  • 数据归档:自动打包所有标记图像与 CSV 统计明细,方便对接 MES 系统。

3. 📜 历史数据

  • 数字化看板:实时显示生产总数、缺陷率 (Defect Rate) 等关键 KPI 指标。
  • 全生命周期管理 :支持历史记录的查询、CSV 导出以及数据库的一键归档清理。

4. ⚙️ 模型训练

  • 低代码训练:无需编写代码,通过图形化界面即可调整 Epochs、Batch Size 等超参数并启动训练。
  • 可视化监控:实时同步训练日志与进度条,掌控模型收敛情况。

🧩 支持的缺陷类型 (Defect Classes)

系统针对以下 6 种标准 PCB 缺陷进行了针对性训练:

缺陷名称 (Code) 中文名称 描述
missing_hole 缺孔 应有钻孔的位置缺失
mouse_bite 鼠咬 边缘呈现不规则的缺口
open_circuit 开路 导线断裂,导致电气连接中断
short 短路 两条导线意外连接
spur 毛刺 导线边缘突出的细小铜刺
spurious_copper 残铜 不应存在的额外铜箔残留

🛠️ 技术栈 (Tech Stack)

  • 核心算法: YOLOv8 (Ultralytics), LLaVA (Ollama)
  • 后端框架: Python 3, PyTorch, SQLite
  • 前端交互: Gradio (WebUI), HTML/CSS/JS (Standard)
  • 图像处理: OpenCV, Pillow, Numpy
  • 数据分析: Pandas

🚀 快速开始 (Quick Start)

1. 环境准备

确保已安装 Python 3.8+ 及 NVIDIA GPU 驱动(推荐)。

bash 复制代码
# 安装依赖
pip install -r requirements.txt

2. 下载/准备模型

  • YOLOv8 : 系统会自动下载预训练权重,建议使用 finetune 后的 best.pt 放置于 runs/detect/train/weights/

  • LLaVA : 需安装 Ollama 并拉取模型:

    bash 复制代码
    ollama pull llava

3. 启动系统

在项目根目录下运行:

bash 复制代码
python run_web_advanced.py

4. 访问界面

浏览器打开:http://localhost:7860


📂 项目结构 (Structure)

text 复制代码
.
├── config.yaml              # 系统核心配置文件
├── pcb.yaml                 # YOLO 数据集配置
├── requirements.txt         # 依赖列表
├── run_web_advanced.py      # 启动入口脚本
├── src/
│   ├── history_manager.py   # 数据库与历史记录管理
│   ├── llava_analyzer.py    # LLaVA 大模型接口
│   ├── pcb_defect_system.py # 系统主控制器
│   ├── web_interface_advanced.py # Gradio 前端界面 (含 CSS 样式)
│   ├── yolo_detector.py     # YOLO 检测核心
│   └── verify_system.py     # 系统自检脚本
└── data/                    # 数据存储 (Reports, CSVs, Temp Images)

相关推荐
扫地的小何尚17 小时前
NVIDIA RTX PC开源AI工具升级:加速LLM和扩散模型的性能革命
人工智能·python·算法·开源·nvidia·1024程序员节
人工智能AI技术17 小时前
多智能体开发实战:从需求拆解到落地部署,这套工程化方案直接复用
人工智能
我的offer在哪里17 小时前
Hugging Face 生态全景图:从数据到部署的全链路 AI 工厂
人工智能
田井中律.17 小时前
多模态RAG实战指南
人工智能
DX_水位流量监测18 小时前
大坝安全监测之渗流渗压位移监测设备技术解析
大数据·运维·服务器·网络·人工智能·安全
昵称已被吞噬~‘(*@﹏@*)’~18 小时前
【RL+空战】学习记录03:基于JSBSim构造简易空空导弹模型,并结合python接口调用测试
开发语言·人工智能·python·学习·深度强化学习·jsbsim·空战
Yeats_Liao18 小时前
MindSpore开发之路(二十四):MindSpore Hub:快速复用预训练模型
人工智能·分布式·神经网络·机器学习·个人开发
老周聊架构18 小时前
基于YOLOv8-OBB旋转目标检测数据集与模型训练
人工智能·yolo·目标检测
AKAMAI18 小时前
基准测试:Akamai云上的NVIDIA RTX Pro 6000 Blackwell
人工智能·云计算·测试
寂寞恋上夜19 小时前
异步任务怎么设计:轮询/WebSocket/回调(附PRD写法)
网络·人工智能·websocket·网络协议·markdown转xmind·deepseek思维导图