一、工业缺陷检测概述:行业背景、常见缺陷类型、检测流程与挑战

大家好,我是老张。在工业视觉这行摸爬滚打了十几年,今天咱们聊聊缺陷检测的底子。

很多人一上来就问我:“老张,哪个模型最牛?” 其实啊,模型只是最后那一步。真正决定项目生死的,是你对“缺陷”本身的理解有多深。你想想看,连缺陷长什么样、怎么来的都没搞清楚,调参调出花来也没用。

1.1 行业背景:为什么现在大家都在搞这个?

说白了,就是三个字——降本增效。

以前工厂靠老师傅肉眼盯着产线看,一个人看8小时,能盯住70%的漏检就算高手了。而且老师傅会累、会跳槽、会退休。现在呢?一条产线每分钟跑几百个产品,人工根本跟不上。

我2018年去过一个3C电子厂,他们的PCB板检测线,20个质检员三班倒,一年光人力成本就300多万。后来上了两套AI检测设备,一年回本。老板笑得合不拢嘴。

目前主流的应用场景集中在以下几个领域:

行业 典型产品 检测痛点
3C电子 手机屏幕、PCB板、芯片引脚 尺寸小、精度要求高(微米级)
汽车制造 车身漆面、焊接点、零部件 反光表面、缺陷形态多变
锂电/光伏 电池极片、光伏电池片 表面纹理复杂、缺陷对比度低
钢铁/金属 钢板表面、管材内壁 高速运动、高温环境
食品/制药 包装密封、药片外观 卫生要求高、异物检测

核心观点:工业缺陷检测不是“能不能检测出来”的问题,而是“在产线节拍内,以可接受的误检率,稳定运行”的问题。

1.2 常见缺陷类型:你得知道敌人长什么样

我见过太多新手,拿到数据集就开始训练。结果模型在测试集上准确率99%,一上产线就崩。为什么?因为训练集里的缺陷类型太单一了。

工业缺陷,按形态和成因,大致可以分为以下几类:

  • 表面缺陷:划痕、压痕、凹坑、凸点、脏污、氧化、涂层不均。这是最常见的一类,占所有缺陷的60%以上。
  • 内部缺陷:气泡、裂纹、夹杂物、分层。这类缺陷肉眼看不见,需要X光或超声波成像。
  • 尺寸/形状缺陷:毛刺、变形、缺角、尺寸超差。通常需要配合标定和测量算法。
  • 颜色/纹理缺陷:色差、光泽度异常、纹理错乱。在纺织、印刷行业很常见。

避坑指南:我曾经在一个项目中,客户给的样本全是“划痕”类缺陷。模型训练得很好,上线第一天就漏检了一个“脏污”。后来我花了三周时间重新采集数据,把缺陷类型扩充到12类。记住:缺陷分类的粒度,决定了模型的上限。

1.3 检测流程:从产线到模型,中间隔了十道坎

一个完整的工业缺陷检测系统,不是“摄像头+模型”那么简单。我把它拆成六个环节,每个环节都可能翻车。

  1. 图像采集:光源、相机、镜头、触发信号。打光方式不对,后面全是白费。
  2. 图像预处理:去噪、增强、校正、ROI提取。产线环境复杂,图像质量参差不齐。
  3. 缺陷检测/分割:传统算法或深度学习模型。这是核心,但不是全部。
  4. 分类与判定:区分缺陷类型,判定NG/OK。需要结合工艺标准。
  5. 结果输出与联动:触发报警、控制机械臂剔除、记录MES系统。
  6. 模型迭代与维护:产线数据回流,持续训练。没有这一步,模型会越跑越差。

嗯,这里要注意:很多团队只盯着第3步,结果前两步没做好,后两步没对接,项目根本跑不起来。

下面这张图,是我自己总结的工业缺陷检测全流程框架,你一看就明白了。

工业缺陷检测全流程框架图 工业缺陷检测全流程框架 ① 图像采集 光源·相机·镜头·触发 ② 预处理 去噪·增强·ROI提取 ③ 缺陷检测 传统算法 / 深度学习 ④ 分类判定 NG/OK·缺陷类型 ⑤ 输出与联动 报警·剔除·MES对接 ⑥ 迭代维护 数据回流·持续训练 📌 关键说明: • ①~④ 是“检测链路”,决定了模型能不能“看得准”。 • ⑤~⑥ 是“工程链路”,决定了系统能不能“跑得稳”。 • 虚线箭头表示:产线数据需要回流到模型,形成闭环迭代。 • 我个人习惯:先花30%精力搞定①和②,再花30%搞定⑤和⑥,最后才碰模型。

1.4 核心挑战:为什么工业缺陷检测这么难?

说实话,学术界跑得飞快的模型,到了工厂里经常吃瘪。我总结了五个最常见的坑:

  • 小样本问题:缺陷样本太少,正负样本极度不均衡。有时候一个型号的产品,良品几万个,缺陷只有几十个。
  • 缺陷多样性:同一类缺陷,形态、大小、位置千变万化。模型很难泛化。
  • 实时性要求:产线节拍通常要求单张图像处理时间在50ms以内,甚至更低。
  • 环境干扰:光照变化、振动、灰尘、油污,都会影响图像质量。
  • 部署与运维:模型怎么打包?怎么在工控机上跑?怎么更新?很多团队死在这一步。

警告:千万不要以为在GPU服务器上跑通了,就万事大吉。工业现场大多是工控机,可能只有CPU,甚至是没有GPU的嵌入式设备。模型压缩、量化、推理加速,这些才是真正的硬骨头。后面的章节,我会带着大家一步步把这些坑填平。