3. 图像采集与预处理基础

在 VisionPro 深度学习检测项目中,图像采集与预处理决定了送入网络的数据质量。很多现场误检、漏检并非模型本身问题,而是相机选型、光照、格式或 ROI 设置不当造成的。本节围绕工业相机与采集卡选型、光照方案设计、图像格式转换、ROI 设置与图像增强五个环节展开,帮助建立从“物理成像”到“网络输入”的完整数据链认知。

一、工业相机与图像采集卡选型

选型的第一步是明确检测精度需求。假设某金属件表面缺陷最小尺寸约 0.1 mm,视场(FOV)为 100 mm × 80 mm,则所需分辨率约为:横向 100 / 0.1 = 1000 像素,考虑 3~5 像素冗余,实际应选 300 万~500 万像素相机。若缺陷对比度低,还需提高像素冗余或改用更高分辨率。

相机接口决定带宽与传输距离。GigE Vision 适合 100 m 以内、千兆带宽场景;USB3 Vision 带宽高但线缆一般不超过 5 m;Camera Link 需配采集卡,适合高速多相机同步;CoaXPress 则用于超高带宽与长距离。当相机为 Camera Link 或模拟信号时,必须配置采集卡,采集卡需与相机接口、通道数、触发方式匹配,并确认其支持 VisionPro 的采集驱动。

关键参数还包括:传感器类型(CMOS 全局快门适合运动物体,卷帘快门成本低但有畸变)、帧率(需满足节拍,如 30 fps 对应 33 ms/件)、黑白或彩色(缺陷检测优先黑白,可提升信噪比)、镜头焦距与工作距离。焦距估算可用 f = (靶面尺寸 × 工作距离) / FOV,例如 1/1.8" 靶面 8.8 mm、工作距离 300 mm、FOV 100 mm,则 f ≈ 26.4 mm,选 25 mm 定焦镜头。

二、光照方案设计

光照的目标是让缺陷与背景形成稳定对比,而非“照亮”。常见方案包括:环形光用于一般表面照明;条形光用于边缘或划痕;同轴光用于高反光平面,可消除镜面反射;背光用于轮廓、尺寸和孔洞检测,形成黑白剪影;穹顶光用于曲面或高反光件,提供均匀漫射。

以金属划痕检测为例,若用环形光,划痕与背景对比度可能不足;改用低角度条形光,划痕产生阴影,对比度显著提升。若检测透明件内部气泡,背光更合适。光源颜色也需考虑:单色光可增强特定颜色对比,如红色光照射红色背景会使其变暗。实际调试时,应固定相机曝光与增益,仅调整光源角度、距离和亮度,观察图像直方图是否覆盖完整动态范围且无过曝。

三、图像格式转换

相机输出格式多样,如 Mono8、Mono12、BayerRG8、RGB24 等。VisionPro 中常用 CogImage8Grey 表示 8 位灰度图,CogImage24PlanarColor 表示彩色图。若相机输出 Bayer 格式,需先做去马赛克转换为 RGB,再转灰度;若输出 16 位,可线性压缩到 8 位,但会损失暗部细节,建议先做自动对比度拉伸。

// 示例:将 16 位图线性映射到 8 位
// 输入像素范围 [0, 4095],输出 [0, 255]
out = (in * 255) / 4095;
// 若暗部重要,可改用 Gamma 或直方图均衡

格式转换的核心是保持信息不丢失。对于深度学习,通常统一为 8 位灰度或 24 位 RGB,并确保训练与推理使用相同格式,否则会出现分布偏移。

四、ROI 设置

ROI(感兴趣区域)用于限定处理范围,减少计算量并排除干扰。在 VisionPro 中可通过 CogRectangleAffine 定义矩形 ROI,或使用 CogPolygon 定义多边形 ROI。设置原则:ROI 应包含完整缺陷可能出现的区域,同时尽量小。例如 500 万像素图像中,若缺陷只出现在中央 1/4 区域,ROI 可缩小到 125 万像素,处理速度提升约 4 倍。

ROI 还需与标定一致。若后续要测量物理尺寸,ROI 坐标应基于标定后的坐标系。对于多相机系统,每个相机可独立设置 ROI,但需保证同一工件在各自 ROI 中的位置一致。

五、图像增强操作

增强的目的是提升缺陷可见性,常用方法包括:灰度变换(线性拉伸、Gamma 校正)、滤波(高斯滤波去噪、中值滤波去椒盐噪声、Sobel 边缘增强)、形态学(开运算去小亮点、闭运算填小孔)、直方图均衡化。例如,低对比度图像可先做直方图均衡化,再做 3×3 高斯滤波,最后用 Sobel 增强边缘。

但需注意:增强会改变像素分布,若训练集未做相同增强,推理时可能失效。因此建议在采集阶段通过光照和曝光解决对比度问题,增强仅作为辅助。若必须增强,应在训练与推理中保持一致。

图像采集与预处理数据链 工业相机 分辨率/帧率/接口 全局快门优先 采集卡 Camera Link/CXP 触发/通道匹配 光照方案 环形/条形/同轴 背光/穹顶光 格式转换 Bayer→RGB→灰度 16bit→8bit ROI 设置 矩形/多边形 缩小处理范围 图像增强 滤波/形态学 直方图均衡 深度学习网络输入 关键参数与判断依据 分辨率:缺陷尺寸 × 3~5 像素冗余 接口带宽:GigE/USB3/Camera Link/CoaXPress 光照:对比度优先,固定曝光仅调光源 格式:训练与推理必须一致 ROI:包含完整缺陷,尽量小 增强:辅助手段,优先光照解决 验证:直方图覆盖完整、无过曝、缺陷可辨 图 3-1 从相机到网络输入的采集与预处理链路
实操建议:调试时先固定相机曝光与增益,仅调整光源角度和亮度,观察直方图是否覆盖 0~255 且无溢出。若仍无法区分缺陷,再考虑更换光源类型或增加滤光片,最后才使用图像增强。ROI 设置后应保存为模板,确保批量检测时位置一致。
常见误区:训练时使用彩色图,推理时转灰度;或训练未做增强,推理时做了直方图均衡化。这两种情况都会导致输入分布不一致,使模型性能大幅下降。务必保证训练与推理的采集、格式、ROI 和增强流程完全一致。

综上,图像采集与预处理是一个系统工程:相机与采集卡决定原始数据上限,光照决定缺陷可见性,格式转换保证数据一致性,ROI 提升效率,增强作为补充手段。只有各环节协同,才能为后续深度学习模型提供稳定、可靠的输入。