返回博客
视觉多模态

SAM 2 在工业质检中的落地实践:从 Prompt Engineering 到产线部署

📅 2025.07.18 ⏱️ 14 min 👤 Eric Pan

引言

工业质检是计算机视觉技术最重要的落地场景之一。传统的缺陷检测方案通常需要为每种产品训练专门的模型,数据标注成本高、模型迭代周期长。Meta 发布的 SAM 2(Segment Anything Model 2)为这一领域带来了新的可能性——通过强大的零样本分割能力和灵活的 Prompt 机制,我们可以用更少的标注数据实现高精度的缺陷分割。

在参与视觉模型开发的实习项目中,我有幸深度参与了基于 SAM 2 的工业质检系统建设。本文将分享在电子元器件表面缺陷检测项目中落地 SAM 2 的完整经验,包括 Prompt Engineering 策略、模型微调方法和边缘设备部署优化。

SAM 2 的核心优势不在于它能替代所有专用模型,而在于它提供了一个强大的通用基座,大幅降低了新场景的适配成本。

SAM 2 架构解析

SAM 2 在原始 SAM 的基础上引入了时序建模能力,使其能够处理视频序列中的目标分割。其核心架构由三个模块组成:

对于工业质检场景,我们主要使用静态图像模式,重点利用 SAM 2 的 Prompt Encoder 和 Mask Decoder 的零样本泛化能力。

Prompt Engineering 策略

在工业质检场景中,Prompt 的设计直接决定了分割质量。经过大量实验,我们总结了以下 Prompt Engineering 策略:

关键发现:在工业场景中,框 Prompt + 中心点 Prompt 的组合策略效果最好,mIoU 达到 0.92,比单独使用点 Prompt 高 8 个百分点。

缺陷检测工作流

我们设计了一套两阶段的缺陷检测工作流,结合了传统检测模型的速度优势和 SAM 2 的分割精度优势:

这种两阶段方案在保证检测精度的同时,将单张图像的处理时间控制在 85ms 以内(YOLO 15ms + SAM 2 70ms),满足产线节拍要求。

Python 推理代码

以下是完整的缺陷检测推理代码,包括模型加载、Prompt 构造和后处理:

inspect_pipeline.py
import torch
import numpy as np
from sam2.build_sam import build_sam2
from sam2.sam2_image_predictor import SAM2ImagePredictor
# ---- 初始化模型 ----
sam2 = build_sam2("sam2_hiera_l.yaml", "sam2_hiera_large.pt")
predictor = SAM2ImagePredictor(sam2)
def detect_defects(image, yolo_boxes, threshold=0.7):
"""两阶段缺陷检测:YOLO 定位 + SAM2 分割"""
predictor.set_image(image)
defects = []
for box in yolo_boxes:
# 使用检测框作为 Prompt
masks, scores, _ = predictor.predict(
box=box,
multimask_output=True,
)
# 选择最高置信度的 mask
best_idx = np.argmax(scores)
if scores[best_idx] > threshold:
mask = masks[best_idx]
area = mask.sum()
defects.append({
"box": box,
"mask": mask,
"area": int(area),
"score": float(scores[best_idx]),
})
return defects

领域微调策略

虽然 SAM 2 的零样本能力已经相当出色,但在特定工业场景中进行轻量级微调可以进一步提升性能。我们的微调策略:

微调后的模型在我们的电子元器件缺陷数据集上,mIoU 从零样本的 0.78 提升到 0.91,缺陷召回率从 82% 提升到 95%。训练仅需 2 个 epoch,耗时约 30 分钟(单卡 A100)。

边缘设备部署优化

产线环境通常没有高性能服务器,需要将模型部署到边缘设备(如 NVIDIA Jetson Orin)。以下是我们的优化方案:

优化后,在 Jetson Orin NX 上实现了 45ms 的端到端推理延迟(YOLO 8ms + SAM 2 Decoder 37ms),满足产线 20 FPS 的节拍要求。GPU 利用率稳定在 65%,功耗约 25W。

边缘部署的核心原则:能预计算的不实时算,能蒸馏的不用大模型,能量化的不用浮点。每一个环节省下的几毫秒,在产线规模上都是巨大的价值。

实际产线效果

系统在某电子元器件工厂的 SMT 产线上线后,取得了显著的效果:

更重要的是,AI 系统的检测标准一致性远优于人工——它不会疲劳、不会走神、不会因为情绪波动而影响判断。这为工厂的质量管控提供了可靠的数字化基础。

总结与展望

SAM 2 为工业质检带来了范式转变:从 "为每种缺陷训练专用模型" 变为 "用通用基座模型 + 少量 Prompt 适配新场景"。这种方式大幅降低了 AI 质检的落地门槛,使得中小工厂也能快速部署 AI 检测系统。

未来我们计划探索以下方向:

AI 质检不是一个技术项目,而是一个持续运营的系统。技术只是起点,真正创造价值的是技术与产线流程的深度融合。