跳转至

质量检测 Agent

项目背景与目标

制造业产品质量检测是保障出厂质量的关键环节。传统人工目视检测存在效率低、标准不一、疲劳漏检等问题,且人工成本持续上升。基于计算机视觉与 AI Agent 的智能质量检测系统能实时识别产品缺陷、分类缺陷类型、生成检测报告,实现 7×24 小时稳定检测,准确率与一致性远超人工。

本项目目标是构建一个产品质量智能检测 Agent,支持多品类产品(电子元器件、注塑件、纺织品、食品包装),覆盖缺陷检测、分类定级、报告生成、异常预警闭环。

需求分析

核心能力: 1. 图像采集:对接工业相机/线阵相机实时采集产品图像 2. 缺陷检测:识别划痕、凹陷、污渍、缺损、变形等多种缺陷 3. 缺陷分类:按类型与严重程度分类定级 4. 结果判定:合格/不合格/返修决策 5. 报告生成:检测报告与缺陷标注图 6. 异常预警:缺陷率突升、新缺陷类型告警 7. 模型自学习:人工复核结果回流优化模型

性能要求:单张图像检测 < 200ms;漏检率 < 0.5%;误检率 < 2%。

技术选型说明

模块 技术方案 选型理由
Agent 框架 LangGraph 检测流程编排
缺陷检测 YOLOv8 + Segmentation 实时目标检测与分割
图像分类 ResNet/EfficientNet 缺陷类型分类
边缘部署 TensorRT + Jetson 产线低延迟推理
LLM Qwen-Max 报告生成与异常解读
数据管理 MLflow 模型版本管理
后端 FastAPI + MQTT 产线设备通信
数据库 PostgreSQL + MinIO 检测记录 + 图像存储

架构设计

flowchart TD
    CAM[工业相机] --> STREAM[图像流]
    STREAM --> EDGE[边缘推理节点]
    EDGE --> DET[YOLOv8 缺陷检测]
    DET --> CLS[缺陷分类]
    CLS --> JUDGE[结果判定]
    JUDGE -->|合格| PASS[放行]
    JUDGE -->|不合格| REJ[剔除/返修]
    JUDGE --> AGENT[检测 Agent]
    AGENT --> REP[报告生成]
    REP --> LLM[LLM 解读]
    AGENT --> ANOM[异常预警]
    ANOM --> DASH[质量看板]
    EDGE --> CLOUD[云端聚合]
    CLOUD --> ML[模型训练]
    REVIEW[人工复核] --> ML

关键模块实现思路

模块1:缺陷检测模型

缺陷检测采用 YOLOv8 实例分割:同时定位缺陷位置与勾勒缺陷轮廓。针对小目标缺陷(如电子元器件微小划痕),增加高分辨率分支与小目标检测头。模型在产线数据上微调,每种产品类型训练专用模型或使用多任务模型。

def detect_defects(image, model):
    results = model.predict(image, conf=0.5)  # 置信度阈值
    defects = []
    for box in results.boxes:
        defects.append({
            "type": model.names[box.cls],
            "bbox": box.xyxy,
            "confidence": box.conf,
            "area": calc_area(box.mask)  # 分割面积
        })
    return defects

数据增强应对样本不均衡:少数缺陷类型用生成对抗网络(GAN)或 Copy-Paste 增强扩充。

模块2:缺陷分类与定级

缺陷分类两阶段:先按类型(划痕/凹陷/污渍/缺损),再按严重程度(轻微/中等/严重)。严重程度基于缺陷尺寸、位置、数量综合判定。

def grade_defect(defect, product_spec):
    size_score = defect.area / product_spec.critical_area
    if size_score > 0.5 or defect.type == "crack":
        return "critical"  # 严重,不合格
    if size_score > 0.2 or defect.count > 3:
        return "moderate"  # 中等,返修
    return "minor"  # 轻微,合格

定级规则与质量标准挂钩,不同产品标准不同,规则可配置。

模块3:结果判定与执行

综合所有缺陷定级结果判定产品处置: - 无缺陷或仅轻微缺陷 → 合格放行 - 存在中等缺陷 → 返修 - 存在严重缺陷 → 不合格剔除

判定结果通过 PLC/IO 控制剔除机构执行,整个过程 < 200ms。边缘节点本地决策,避免网络延迟影响产线节拍。

模块4:检测报告与异常预警

每批产品生成检测报告:检测数量、合格率、缺陷分布、典型缺陷图像。LLM 解读缺陷趋势:哪些缺陷频发、可能原因(模具磨损、原料问题、工艺漂移)、改进建议。

REPORT_PROMPT = """质量检测报告解读:
批次:{batch}
合格率:{yield_rate}
缺陷分布:{defect_stats}
趋势变化:{trend}
要求:分析缺陷原因,给出工艺改进建议"""

异常预警:缺陷率突升(超过历史均值 3σ)、出现新缺陷类型、连续不合格产品超阈值时实时告警,通知质量工程师介入。

模块5:模型自学习闭环

边缘检测结果上传云端聚合,人工复核结果(确认/纠正)作为标注数据。定期用新数据重训模型,验证通过后下发到边缘节点更新。形成"检测→复核→标注→训练→部署"闭环,模型持续进化。

def model_update_pipeline():
    new_data = collect_reviewed_samples(since="last_train")
    if len(new_data) < MIN_SAMPLES:
        return  # 样本不足
    new_model = retrain(base_model, new_data)
    metrics = evaluate(new_model, test_set)
    if metrics.mAP > current_model.mAP * 1.02:  # 显著提升
        deploy_to_edge(new_model)

核心流程详解

在线检测流程: 1. 产品到达检测工位 → 相机采集图像 2. 边缘节点 YOLOv8 推理 → 缺陷检测与分类 3. 综合判定 → 合格/返修/剔除 4. 执行机构动作 → 产品分流 5. 检测结果与图像上传云端 6. 异常实时告警 → 工程师介入

离线分析流程: 1. 按批次/时段汇总检测数据 2. 缺陷分布分析 → LLM 生成改进建议 3. 质量看板更新 → 管理层查看 4. 人工复核样本 → 标注入库 5. 模型重训 → 验证部署

部署与优化建议

  • 边缘优先:检测在边缘完成,云端只做聚合分析,降低延迟与带宽
  • 模型量化:YOLOv8 转 TensorRT FP16,推理速度提升 2-3 倍
  • 冗余设计:双相机 + 双模型交叉验证,降低漏检率
  • 光照控制:稳定光照条件是视觉检测基础,产线需设计照明系统
  • 样本管理:建立缺陷样本库,持续扩充罕见缺陷样本
  • 可解释:缺陷标注图叠加在原图上,便于人工复核

常见问题与解决方案

问题 原因 解决方案
漏检率高 模型未覆盖缺陷类型 持续采样 + 模型迭代
误检率高 阈值过严 调整置信度 + 人工复核反馈
新产品适配慢 缺乏标注数据 迁移学习 + 少样本学习
光照影响 产线环境变化 标准光源 + 数据增强

扩展方向

  • 3D 检测:结构光/ToF 检测三维缺陷
  • 多模态融合:可见光 + 红外 + X 光
  • 工艺联动:检测结果反馈调整上游工艺参数
  • 预测性质量:基于工艺数据预测质量趋势