工业视觉图像处理与检测模型训练实战 - 第1节
1.1 机器视觉到底是什么?
先问个问题:你让机器「看」见东西,它真的能「看懂」吗?
其实,机器视觉不是让机器长眼睛。它是用相机拍下图像,再用算法从图像里提取信息,最后做出判断或控制。说白了,就是把光信号变成数字信号,再变成决策信号。
我入行那会儿,有个老工程师跟我说过一句话,我一直记着:「视觉系统就是给工业设备装上一双不会累的眼睛。」后来做了十几年项目,我越来越觉得,这双眼睛不光不会累,还能看到人眼看不到的东西——比如微米级的划痕、高速运动中的位置偏差。
- 成像——用合适的光源和相机,把目标「拍清楚」
- 处理——用算法从图像里提取特征
- 决策——根据特征输出结果(OK/NG、坐标、角度等)
1.2 工业4.0背景下,视觉需求为什么爆发?
工业4.0这个概念,说白了就是「让工厂自己会思考」。你想想看,一条产线如果连产品好坏都靠人眼去盯,那还谈什么智能化?
我经历过一个典型的案例:某3C代工厂,一条手机中框检测线,原来用了12个质检员,每人每天要看3000多个产品。结果呢?漏检率一直在3%左右下不来。后来上了视觉系统,4台相机+1套算法,漏检率直接降到0.1%以下。这不是个例,这是趋势。
工业4.0对视觉的需求,主要集中在三个层面:
| 需求层面 | 具体内容 | 我的体会 |
|---|---|---|
| 数据采集 | 产线每个工位的产品图像需要实时上传 | 数据量比你想象的大得多,一条产线一天能产生几个TB |
| 实时决策 | 检测结果必须在几十毫秒内反馈给执行机构 | 我曾经因为算法慢了20ms,整条线被客户投诉 |
| 柔性换产 | 换产品型号时,视觉系统能快速切换检测逻辑 | 传统规则算法换产要改代码,深度学习模型换产只要换权重 |
1.3 典型应用场景:缺陷检测
缺陷检测是工业视觉里最「卷」的领域。为什么?因为缺陷的种类太多了——划痕、脏污、凹陷、气泡、毛刺、缺料……而且同一个产品,不同批次的缺陷形态可能完全不一样。
我记得有一次做锂电池极片检测项目。极片表面的涂层缺陷,有些是针尖大小的黑点,有些是几毫米长的划痕。用传统算法做,你得给每种缺陷写一套特征提取规则,调参调到怀疑人生。后来换了深度学习,用几百张缺陷图训练了一个分割模型,效果反而更好。
目前主流的缺陷检测方案对比:
| 方案类型 | 适用场景 | 优点 | 缺点 |
|---|---|---|---|
| 传统图像处理 | 缺陷形态固定、对比度高 | 速度快、可解释性强 | 对复杂缺陷泛化能力差 |
| 深度学习分类 | 缺陷种类多、形态变化大 | 泛化能力强、开发周期短 | 需要大量标注数据 |
| 深度学习分割 | 需要精确缺陷轮廓 | 定位精度高、可量化缺陷面积 | 计算量大、模型部署复杂 |
1.4 典型应用场景:尺寸测量
尺寸测量是工业视觉的「基本功」。精度要求从毫米级到微米级都有。你想想看,一个手机摄像头模组的装配间隙,要求控制在±5μm以内。人眼加显微镜都测不准,但视觉系统可以。
尺寸测量的核心难点不在算法,而在标定。我踩过最大的坑就是:算法算出来尺寸是准的,但实际产品就是不合格。后来查了半天,发现是相机标定矩阵算错了——一个像素对应的物理尺寸偏了0.01mm,累积到几十个毫米的测量范围上,误差就大了。
尺寸测量的典型流程:
- 相机标定——确定像素当量(每个像素对应多少毫米)
- 图像预处理——去噪、增强对比度、边缘锐化
- 边缘提取——用Canny、Sobel或亚像素算法找到边缘
- 几何拟合——拟合直线、圆、圆弧等基本几何元素
- 尺寸计算——计算距离、角度、直径、圆度等
1.5 典型应用场景:定位引导
定位引导,说白了就是让机器知道「东西在哪儿」,然后告诉机器人去抓、去放、去焊、去贴。
这个场景在3C组装、汽车零部件装配、食品包装等行业特别常见。我做过一个项目:机器人要从料盘里抓取不同姿态的螺丝,然后放到指定位置。如果没有视觉引导,你得用振动盘加机械定位,换一种螺丝就得换一套工装。有了视觉引导,相机一拍,算法算出螺丝的位置和角度,机器人直接抓取——柔性化程度高了一个量级。
定位引导的关键技术指标:
| 指标 | 典型要求 | 影响因素 |
|---|---|---|
| 定位精度 | ±0.1mm ~ ±0.5mm | 相机分辨率、标定精度、机械重复精度 |
| 处理速度 | 20ms ~ 100ms | 算法复杂度、硬件算力、图像大小 |
| 鲁棒性 | 光照变化、遮挡、反光不影响定位 | 特征选择、模板匹配策略、数据增强 |
1.6 本章知识体系总览
下面这张图,把本章的核心知识点串起来了。你可以把它当作整个课程的「地图」——后面每一章,都会在这张图上展开。
这张图你看懂了吗?从上到下,其实是「系统定义 → 驱动因素 → 应用场景 → 技术细节」的层层展开。后面29章,我们会把「处理」这个环节拆开揉碎,从图像预处理讲到模型训练,再到最后的工程部署。
嗯,第一章就到这里。内容不多,但都是基础。基础打牢了,后面学起来才不费劲。