4. MERLIC读码工具详解
在 MERLIC 的读码方案中,Read Code 工具是整条追溯链路的起点。它负责在图像中找到码、识别码、输出字符串与质量信息,后续的字符校验、数据库比对、结果归档都依赖它给出的数据。因此,理解 Read Code 的参数含义,比记住界面按钮位置更重要。本节围绕五个关键维度展开:码类型选择、ROI 设置、极性处理、参数配置以及多码读取策略。
一、码类型选择:先确定“找什么”
Read Code 工具支持一维码与二维码两大类。一维码常见的有 Code 128、Code 39、EAN-13、UPC-A、ITF-25 等;二维码常见的有 Data Matrix(ECC200)、QR Code、PDF417 等。选择码类型时,应遵循“能确定就精确指定,不能确定才用自动”的原则。
如果产线上只使用 Data Matrix,就应把码类型固定为 Data Matrix ECC200,而不是勾选“全部类型”。原因在于:每增加一种候选码制,工具内部就需要多跑一套定位与解码逻辑,既增加耗时,也提高误识别概率。例如在金属件表面,Code 128 的条纹纹理有时会被误判为 PDF417 的局部结构,导致输出乱码。精确指定码类型可以显著降低这类风险。
当同一工位需要兼容多种码制时,可以启用多码类型候选,但建议把最常用的码制排在前面,并配合最小/最大码长约束,缩小搜索空间。
二、ROI 设置:把算力用在刀刃上
ROI(Region of Interest,感兴趣区域)决定了工具在图像的哪个范围内搜索码。ROI 设置的核心目标是:完整包含码,同时尽量排除干扰背景。
在 MERLIC 中,ROI 通常以矩形或旋转矩形给出。对于固定工位、码位置稳定的场景,直接用一个略大于码外接框的矩形即可。对于码会随工件旋转的场景,应使用可旋转矩形,并让长边方向与码的排列方向一致。ROI 过大会引入背景纹理、反光、字符印刷等干扰;ROI 过小则可能切掉码的定位图案(如 QR 码的三个回字形定位符),导致无法解码。
一个实用的经验是:ROI 边界距离码边缘保留约 5~10 像素余量。若相机分辨率较高、码在图像中占比较大,余量可适当放大;若码本身很小,余量应压缩,避免 ROI 内混入过多无关区域。
三、极性处理:黑底白码与白底黑码
极性描述的是码与背景的明暗关系。正极性指深色码、浅色背景(常见的白底黑码);负极性指浅色码、深色背景(如激光雕刻在深色塑料上的白色 Data Matrix)。
Read Code 工具通常提供“自动”“仅正极性”“仅负极性”三种模式。自动模式会尝试两种极性,鲁棒性更好,但耗时略增。如果工艺稳定,建议明确指定极性,既提速又减少误判。例如,黑色 PCB 上的白色丝印二维码应设为负极性;白纸上的黑色条码应设为正极性。
需要注意的是,极性判断依赖图像的明暗对比。如果照明不均导致局部反光,同一张码可能在不同区域呈现不同极性特征,此时应先改善照明,而不是单纯依赖自动极性。
四、参数配置:影响解码成功率的关键项
除码类型与 ROI 外,Read Code 还有若干影响解码的参数。常见的有:
- 最小/最大码长:限制候选字符串长度,过滤明显不合理的解码结果。
- 超时时间:单次解码允许的最长耗时,超时则返回失败,避免拖慢整条流水线。
- 对比度阈值:决定码与背景的分离程度,低对比度图像可适当降低阈值。
- 解码尝试次数:对同一 ROI 内多个候选位置进行多次尝试,提高多码或倾斜码的命中率。
这些参数没有万能值,应结合具体图像调整。建议先用默认值跑通,再针对失败样本逐项微调,并记录每次调整后的成功率变化。
五、多码读取策略:一图多码怎么处理
当一幅图像中存在多个码时,Read Code 需要决定读取哪一个或全部。常见策略有三种:
- 单码模式:只返回置信度最高的一个码,适合每件产品只有一个追溯码的场景。
- 多码模式:返回 ROI 内所有成功解码的码,适合托盘、料箱上多个工件同时成像的场景。
- 按位置筛选:结合 ROI 分区或坐标排序,只取指定区域内的码,适合需要区分主码与辅码的场合。
多码模式下,输出结果通常以列表形式给出,每个码附带位置、角度、质量分等信息。后续处理时,应明确按什么规则选取目标码,例如“取面积最大的码”或“取位于图像左侧的码”,避免因顺序不确定导致追溯数据错位。
六、参数配置的实操建议
在实际项目中,建议按以下顺序配置 Read Code:
- 先固定码类型,只保留产线上真实使用的码制。
- 再画 ROI,确保码完整落入,且背景干扰尽量少。
- 然后设定极性,工艺稳定时不要用自动。
- 接着调整码长范围与超时,过滤异常结果。
- 最后根据失败样本微调对比度阈值和解码尝试次数。
Read Code 工具的参数配置并不复杂,但每一个参数都直接影响解码成功率与结果稳定性。码类型决定搜索空间,ROI 决定算力分配,极性决定对比方向,参数决定容错边界,多码策略决定结果如何被消费。把这五者配合好,才能为后续的质量追溯提供可靠、可复现的码数据。