4. 图像采集与预处理基础
在 KEYENCE XG-X 系列视觉系统中,图像采集与预处理是缺陷检测流程的第一道关口。相机输出的原始图像质量,直接决定了后续边缘提取、灰度阈值分割、斑点分析等算法的稳定性。很多现场调试中出现的“检测不稳定”,根源并不在算法参数,而在于采集阶段曝光、增益、白平衡或 ROI 设置不合理。本节围绕采集链路的六个关键环节展开,并给出可操作的图像质量评估方法。
曝光与增益:先定亮度,再控噪声
曝光时间决定传感器感光时长,增益决定信号放大倍数。两者都能提升图像亮度,但代价不同:延长曝光会引入运动模糊,提高增益会放大噪声。XG-X 的相机设置中,曝光时间通常以微秒(μs)为单位,增益以分贝(dB)为单位。调试原则是优先用曝光满足亮度,增益只做小幅补偿。
以一个示例场景说明:检测金属表面 0.2 mm 划痕,使用环形低角度光源,工件静止。初始曝光 500 μs 时背景灰度约 60,划痕与背景对比度不足。逐步提升曝光至 1200 μs,背景灰度升至约 150,划痕灰度约 95,对比度明显改善;此时若继续提升曝光,背景接近饱和(255),划痕反而被淹没。因此曝光应停在“背景灰度处于 120~180、目标特征未饱和”的区间。若亮度仍不足,再以 3~6 dB 增益微调,并观察噪声是否可接受。
白平衡:彩色检测的前提
XG-X 支持彩色相机时,白平衡决定 R、G、B 三通道的增益配比。若白平衡偏移,同一颜色的工件在不同位置会呈现不同色相,导致颜色阈值分割失效。白平衡校准的常规做法是:在与实际检测相同的光源、相同的曝光和增益条件下,将一张白色或中性灰标准板放入视野,执行一次白平衡,使标准板区域的 R、G、B 均值接近相等。校准后不要随意改动光源亮度或曝光,否则白平衡需要重新执行。
滤波:抑制噪声与保留边缘的权衡
滤波是预处理中最需要“对症下药”的环节。XG-X 常用的滤波包括平滑滤波、中值滤波和边缘保留滤波。选择依据是噪声类型与目标尺寸:
- 高斯平滑:适合抑制随机噪声,但会模糊细小划痕,核尺寸一般不超过 3×3 或 5×5。
- 中值滤波:对椒盐噪声效果好,能较好保留边缘,适合表面有孤立亮点的场景。
- 边缘保留滤波:在去噪同时保持缺陷轮廓,适合微小缺陷检测,但处理时间略长。
示例参数:检测 0.1 mm 针孔缺陷,图像存在传感器热噪声。若使用 5×5 高斯滤波,针孔边缘被明显削弱;改用 3×3 中值滤波后,针孔仍可分辨,背景噪声下降。这说明滤波核尺寸必须小于目标缺陷尺寸,通常建议核尺寸不超过缺陷宽度的三分之一。
灰度变换:拉开缺陷与背景的差距
灰度变换用于调整图像的整体或局部对比度。XG-X 提供线性拉伸、伽马校正和分段线性变换。线性拉伸将原始灰度区间映射到 0~255,适合整体偏暗或偏亮的图像;伽马校正通过幂函数调整中间调,γ<1 提亮暗部,γ>1 压暗亮部;分段线性变换可针对特定灰度区间增强对比度,例如只增强 80~160 区间,使缺陷与背景差异更明显。
实际操作中,可先采集一张含缺陷的图像,查看缺陷与背景的灰度差。若差值仅 15 个灰度级,直接阈值分割容易受噪声干扰;通过分段线性变换将该区间拉伸到 60 个灰度级以上,再配合阈值分割,稳定性会显著提升。变换后的图像应重新检查直方图,避免出现截断或过度拉伸。
ROI 设置:缩小处理范围,提升节拍与稳定性
ROI(感兴趣区域)设置是 XG-X 调试中容易被忽视却收益明显的环节。将处理区域限制在缺陷可能出现的范围内,可以减少计算量、提高帧率,同时避免无关区域干扰检测。ROI 设置应遵循“覆盖缺陷可能出现的全部位置,但不包含明显无关的背景”原则。例如检测工件边缘缺口时,ROI 可沿边缘设置一条宽约 30~50 像素的带状区域,而不是整幅图像。若工件存在定位偏差,ROI 需预留 5~10 像素的余量,或配合位置补偿使用。
图像质量评估:用数据判断“能不能检”
预处理完成后,不能仅凭肉眼判断图像是否可用。XG-X 提供直方图、灰度剖面和统计功能,建议按以下顺序评估:
- 看直方图:确认灰度分布是否覆盖合理区间,右端是否饱和,左端是否欠曝。
- 测对比度:在缺陷位置和相邻背景各取一个小区域,读取平均灰度,计算差值。示例中若缺陷灰度 95、背景 150,对比度为 55,通常可稳定分割;若低于 30,需回到曝光或灰度变换环节调整。
- 估噪声:在无缺陷的均匀背景区域读取灰度标准差。若标准差大于 5,说明噪声偏高,应检查增益是否过大或滤波是否不足。
- 验重复性:连续采集 10 帧,观察同一位置灰度波动。若波动超过 ±5 个灰度级,需排查光源稳定性或工件定位。
一套可复用的采集参数检查表
| 检查项 | 推荐范围/做法 | 不满足时的处理 |
|---|---|---|
| 背景灰度 | 120~180 | 调整曝光,必要时补增益 |
| 饱和像素占比 | < 1% | 降低曝光或调整光源角度 |
| 缺陷/背景对比度 | ≥ 40 灰度级 | 灰度变换或更换光源 |
| 背景噪声标准差 | ≤ 3 | 降低增益,增加中值滤波 |
| 白平衡偏差 | R/G/B 均值差 ≤ 5 | 重新执行白平衡 |
| ROI 覆盖 | 含全部缺陷位置 + 余量 | 扩大 ROI 或加位置补偿 |
| 连续 10 帧灰度波动 | ≤ ±5 | 检查光源与工件定位 |
以上参数属于示例性参考,实际阈值需根据工件材质、光源类型和缺陷尺寸调整。核心思路是:先让图像“亮得合适、颜色正确、噪声可控”,再让缺陷“看得清、分得开”,最后用 ROI 把处理范围收窄到必要区域。完成这一链路后,后续的阈值分割、边缘提取和缺陷判定才有稳定的输入基础。