4. VisionPro工具链与验收对象映射
在VisionPro项目验收中,一个最常见的争议是:视觉工程师说“工具跑通了”,而验收方说“指标没达标”。问题往往不在工具本身,而在于没有把每个工具的输出量,明确映射到验收指标上。VisionPro的工具链是“各司其职”的:PatMax/PatQuick负责定位,Blob负责区域统计,Caliper负责边缘测量,IDMax负责读码。它们输出的分数、坐标、面积、宽度、字符串,必须被翻译成验收方关心的“定位精度、漏检率、误检率、重复性、读取率”等指标,验收才有共同语言。
一、先建立“工具输出 → 中间量 → 验收指标”的三层映射
验收指标通常不是工具直接吐出的数字。例如验收要求“定位重复性≤0.05像素”,而PatMax输出的是Score、Angle、X/Y。中间必须经过“多次采图统计”这一步,才能把单次输出变成重复性指标。因此映射关系应写成三层:
- 工具原始输出:Score、Found、X/Y、Angle、Scale、Area、Perimeter、EdgePair、Width、ReadString、Grade等。
- 中间统计量:均值、极差、标准差、命中率、误报数、置信度分布。
- 验收指标:定位精度、重复性、漏检率、误检率、测量GRR、读取率、误读率。
下面这张图给出了主要工具与验收对象之间的映射关系,是本节的核心视图:
二、PatMax/PatQuick:定位输出如何变成精度与重复性指标
PatMax与PatQuick的输出字段基本一致,差别在于算法策略:PatMax对旋转、缩放、遮挡更稳健,PatQuick速度更快但对形变敏感。验收时不能只看“Score=0.85”就判定合格,因为Score是匹配相似度,不是定位精度。
把定位输出映射为验收指标,需要做两件事。第一,固定基准:在标定板上取一个基准点,记录PatMax输出的X/Y作为参考值。第二,连续采图N次(工程上常用30次),统计X/Y的极差和标准差。例如某项目验收要求“重复性≤0.05像素”,实测30次X方向极差0.12像素、σ=0.021像素,则重复性不达标,需要检查光源稳定性或模板质量。角度指标同理:Angle的极差应换算为实际角度偏差,若验收要求≤0.1°,而实测极差0.15°,则需优化模板或提高图像对比度。
此外,Score本身也应设阈值。通常验收会规定“Score≥0.7且Found=True”才算有效定位,低于该值的图像计入漏检。这样,Score就从“工具输出”变成了“漏检率”的判据。
三、Blob:面积与计数输出如何对应漏检、误检
Blob工具输出Area、Perimeter、Centroid和BoundingBox。验收中最关心的是“该有的有没有、不该有的有没有”。映射方法是:先确定合格品的面积区间,例如某零件胶路面积合格范围为1200~1600像素²。然后对一批样本运行Blob,统计:
- 面积落在区间内且数量正确的样本数 → 命中数;
- 面积低于下限或高于上限的样本数 → 误检数;
- 应检出但Blob未返回任何区域的样本数 → 漏检数。
漏检率=漏检数/总样本数,误检率=误检数/总样本数。若验收要求漏检≤0.1%、误检≤0.3%,而实测漏检0.4%,则需调整阈值或增加预处理。注意:Blob的Area受阈值影响极大,验收前必须锁定阈值并写入验收基线,否则同一工具在不同阈值下会给出不同结论。
四、Caliper:边缘对输出如何对应尺寸测量GRR
Caliper输出EdgePair、Width、Position和Contrast。验收尺寸测量时,核心指标是GRR(量具重复性与再现性)。做法是:选10个样本,由2~3名操作员各测3次,记录Caliper的Width值,计算GRR百分比。若验收要求GRR≤10%,而实测15%,说明测量系统不稳定,需检查边缘对比度、卡尺方向或光源均匀性。
Contrast是常被忽略的输出,但它直接决定边缘是否可靠。工程上可设“Contrast≥20”作为有效边缘判据,低于该值的测量结果不计入GRR统计,否则会把噪声当成真实波动。Width的公差判定则直接对应验收的“尺寸合格率”:若图纸要求10.00±0.05mm,Caliper输出9.96mm,则判定超差,计入不合格。
五、IDMax:读取输出如何对应读取率与误读率
IDMax输出ReadString、Grade和DecodeTime。验收读码工位时,读取率=成功读取数/总样本数,误读率=读错数/总样本数。误读比漏读更危险,因为错误数据会流入MES。因此验收必须规定“误读率=0”,并通过人工比对ReadString与真实码值来验证。
Grade反映码的质量等级,通常Grade≥B才视为可靠读取。若某样本Grade=C但ReadString正确,仍应标记为“低质量读取”,在验收报告中单独列出,提示现场改善打印质量或调整光源。DecodeTime则对应节拍指标:若验收要求单次解码≤50ms,而实测均值80ms,则需优化ROI或降低图像分辨率。
六、组合工具:坐标链传递不能断
实际项目很少只用单个工具。典型链路是:PatMax定位 → 将坐标传递给Caliper和IDMax → Caliper测量 → IDMax读码。此时验收指标不仅是单工具指标,还包括“坐标链一致性”:PatMax的微小角度偏差会被放大到远处的Caliper测量点上。若PatMax角度偏差0.1°,在100mm远处会产生约0.17mm的位置偏移,足以让Caliper测错边缘。因此验收时必须做“组合重复性”测试:连续运行整个ToolGroup,统计最终测量值的极差,而不是只统计单个工具。
最后给出一个可直接使用的映射检查表,用于项目验收前逐项核对:
| 工具 | 关键输出 | 中间统计量 | 验收指标 | 示例判据 |
|---|---|---|---|---|
| PatMax/PatQuick | Score, X/Y, Angle | 30次极差、σ | 定位重复性、角度偏差 | σ≤0.05px,角度≤0.1° |
| Blob | Area, Count | 命中/漏检/误检计数 | 漏检率、误检率 | 漏检≤0.1%,误检≤0.3% |
| Caliper | Width, Contrast | GRR、极差 | 测量GRR、公差判定 | GRR≤10%,Contrast≥20 |
| IDMax | ReadString, Grade | 读取率、误读率 | 读取率、误读率、节拍 | 读取率≥99.5%,误读=0 |
| ToolGroup | 组合坐标链 | 最终值极差 | 系统重复性、稳定性 | 组合极差≤0.03mm |
把这张表填满并附上实测数据,验收沟通就从“我觉得可以”变成“数据说明可以”。工具链与验收对象的映射,本质上是把视觉工程师的语言翻译成质量工程师的语言,翻译得越准确,交付越顺畅。