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、读取率、误读率。

下面这张图给出了主要工具与验收对象之间的映射关系,是本节的核心视图:

VisionPro工具输出 → 验收指标映射 工具与原始输出 PatMax / PatQuick Score, X/Y, Angle Scale, Found Blob Area, Perimeter Centroid, BoundingBox Caliper EdgePair, Width Position, Contrast IDMax ReadString, Grade DecodeTime CogToolGroup 组合与坐标传递 中间统计量 多次采图均值/极差 标准差 σ 面积分布、阈值命中 误报/漏报计数 宽度极差、GRR 边缘对比度分布 读取率、误读率 Grade分布 坐标链一致性 基准传递误差 验收指标 定位精度、重复性、角度偏差 示例:重复性≤0.05px,角度≤0.1° 漏检率、误检率、面积判定一致性 示例:漏检≤0.1%,误检≤0.3% 尺寸测量GRR、公差判定准确率 示例:GRR≤10%,宽度±0.02mm 读取率、误读率、节拍 示例:读取率≥99.5%,误读=0 系统级:节拍、稳定性、可追溯 整线验收的最终判据

二、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/PatQuickScore, X/Y, Angle30次极差、σ定位重复性、角度偏差σ≤0.05px,角度≤0.1°
BlobArea, Count命中/漏检/误检计数漏检率、误检率漏检≤0.1%,误检≤0.3%
CaliperWidth, ContrastGRR、极差测量GRR、公差判定GRR≤10%,Contrast≥20
IDMaxReadString, Grade读取率、误读率读取率、误读率、节拍读取率≥99.5%,误读=0
ToolGroup组合坐标链最终值极差系统重复性、稳定性组合极差≤0.03mm

把这张表填满并附上实测数据,验收沟通就从“我觉得可以”变成“数据说明可以”。工具链与验收对象的映射,本质上是把视觉工程师的语言翻译成质量工程师的语言,翻译得越准确,交付越顺畅。