调整之前先给故障分类
液位判定不稳定,可能源自图像处理之前、边界选取过程中,或结果离开工作流之后。更改阈值之前,先结合原始图像和事件记录对故障分类。要区分:被指派了错误液位类别的可见边界、被送去复核的不可观测边界、执行失败,以及与错误瓶子关联的结果。它们需要不同的纠正措施,在报告中必须分开列出。复核结果不等于已确认的欠灌,偏低的数值默认值也不能证明瓶子是空的。要保留量产中的症状和可复现的开发案例,不要为了迎合当前算法而给任何一方改标签。
原样重放同一批样本
重放相同的冻结原始图像、裁剪变换、工作流版本和参考类别,以判断处理结果本身是否可重复。要记录实际的输入准备方式和运行环境标识,而不仅仅是界面上显示的工作流名称。如果相同的样本得到不同的输出,应先检查自动预处理、未锁定版本的依赖项或请求与结果的关联,再去归咎于输送。如果重放已保存图像时结果稳定,而新帧却有波动,则应转而比较采集条件和样本条件。不要用方便的相邻图像去替换一帧难处理的图像。重放只能把排查范围缩小到某一层证据,并不能证明原始图像代表的就是正确的瓶子事件。
检验瓶壁成因的解释
保持采集配置不变,让一个带有标识的空瓶对照在允许的姿态范围内转动。没有液体时仍然存在的线条,可能是瓶壁反光、合模线或背景特征。把它与同一容器设计上的目标边界对比。在接下来受控的一对采集中,只改变照明角度,并保留两张原始帧,包括饱和区域。如果竞争线条跟随瓶壁而不是液体,那么仅靠对比度阈值,可能会更稳定地选中错误的表面。要用真实的低液位样例和正常的瓶壁差异来测试所拟的光学纠正措施;不要仅仅因为预览画面更干净就接受它。
区分瓶壁线条与液面边界
先对同一容器几何和空瓶对照作比较,再把某个过渡归为液面。
- 完整的原始瓶身视图
- 声明的观察区域
- 竞争的瓶壁或反光线条
- 目标可见液面边界
区分时序与液体晃动
利用工位约定的静置样本组和运动样本组,把容器运动与液体运动区分开。检查触发时间戳、实际曝光、输送条件,以及液面边界出现的图像区域。瓶子的外部边缘清晰而内部液面却在变化,这提示的排查方向不同于一般的图像模糊,但它本身并不能确定原因。在基线采图事件和拟用的采图事件处比较同一个瓶子,参考类别保持不变。延迟的图像仍必须对应预定的瓶子。还要检查中断与重启的序列,因为看似有用的静置延时,会在瓶间距变化时破坏事件关联。
import math
state = result['rules']['Decision']
raw_number = result['number']
measurement_valid = (
state in ('Pass', 'Fail')
and result['geometry']['Validity'] == 'Valid'
and type(raw_number) in (int, float)
and math.isfinite(raw_number)
)
record = {
'image_id': source_image_id,
'workflow_revision': frozen_revision,
'raw_state': state,
'raw_number': raw_number,
'trusted_ratio': raw_number if measurement_valid else None,
}
# Diagnostic record only; missing fields raise errors. Validate event identities before integration.检查 ROI 与坐标变化
检查相机移动、裁剪修订、图像缩放或容器基准的变化是否改变了坐标基准。局部 ROI 得出的可见高度比例,不能直接与高度不同或位置偏移的 ROI 得出的比例比较。把声明的区域叠加在完整的原始图像上,确认在允许的姿态范围内,完整的目标边界始终位于其中。在诊断记录中保留裁剪原点和尺寸。如果边界被截断,应通过几何布置或采图来找回观察,而不是放宽判定区间。标定无法补出缺失的像素,标称比例也不能说明透过弯曲瓶壁就能得出物理体积。
检查有效性与陈旧结果
把数值、几何和规则输出与它们的请求标识、图像标识一并检查。经审阅的可见液位方案,会把有歧义或不足的边界证据标为 Review;默认的数值端口不得被当作有效的测量。检查界面、缓存或下游映射是否在显示当前事件的同时,保留了上一个瓶子的比例。在测试环境中模拟结果缺失或迟到,并确认其保持明确的未通过状态。下面的诊断记录说明了应保留的字段,并不是完整的集成实现。未知状态和执行错误需要按声明的方式处理,不能自动转换成方便的液位类别。可信比例要求判定为 Pass 或 Fail、几何为 Valid,且数值为有限值;其余任何状态都不含可信的测量值。
维护诊断工作簿
每个被调查的故障在工作簿中各占一行,内容包括其参考类别、完整的图像标识、事件标识、裁剪变换、工作流版本、实际设置、类型化输出和疑似机理。再补充区分性对照,以及能够驳倒该解释的观察结果。把原始的失败输出与候选方案的结果并排保存,包括仍未解决的案例。下表把光学、时序、坐标和结果映射四类对照区分开来,不给出任何通用阈值。复核和执行失败要在原定的计划分母之内报告。对选定图像的成功重放,不能替代那些造成实际产线症状的容器和运行条件所需的证据。
| 故障特征 | 区分性对照 | 需留存的证据 |
|---|---|---|
| 空瓶中仍有这条线 | 相同设计、相同姿态,相机不变 | 完整图像及竞争边界标注 |
| 波动从输送过程中开始 | 同一瓶子,声明的静置事件与运动事件 | 事件时间戳、曝光与原始帧 |
| 裁剪修订后比例发生变化 | 把两个 ROI 叠加在同一张原始图像上 | 裁剪变换与原始坐标基准 |
| 当前事件显示的是上一次的结果 | 在测试环境中注入缺失或迟到的结果 | 请求、图像和结果标识,以及未通过状态 |
在冻结样本组上验证纠正措施
选定纠正措施之前,先在冻结的开发样本组上验证,然后再使用独立的验收样本,其限值须事先约定。确认被纠正的案例有所改善,同时没有掩盖低液位缺陷、没有增加未报告的复核,也没有重复使用旧图像。冻结变更后的配置并保留基线,让接手的工程师两者都能复现。如果约定的边界仍然不可观测,应保留这一局限,并考虑换用其他视角或测量原理。Deyi Vision 可以协助检查受支持的工作流证据,但本诊断流程并不构成对已发布运行环境或量产工位的认证。对可见液位的修复,不得表述为对灌装容量的验证。
可复现的根因检查
保留失败的结果,采用受控的比较,而不是方便得到的合格帧。
- 冻结故障样本与参考
- 列出相互竞争的解释
- 执行区分性对照
- 验证纠正措施,或保留未解决的局限
来源与技术参考资料
这些资料说明了本教程所用方法的依据与适用范围。文中的检查示例仅供参考;量产验收需要用你自己的样品取得证据。
- Exposure TimeBasler核查于
- Triggered Image AcquisitionBasler核查于
- Deyi Vision Vision WorkbenchDeyi Vision核查于
部件与选型参考
- machine vision software · 英文参考资料
- 机器视觉验收测试清单
- 自动化外观检测
- 机器视觉系统
- 电池极耳焊接高度检测
- 巴鲁夫 Balluff 视觉传感器替代方案
- 得利捷 Datalogic 读码器替代方案
- Banner Vision Sensor Alternative · 英文参考资料
- 排查可见装配检查的故障
- EAN-13 追溯:重复与漏读
- 可见液位检测的相机设置
- 可见液面边界的照明与 ROI
- 用混淆矩阵设定检测阈值
- 检查激光轮廓基准与缺失数据的处理行为
- OCR 标签核对:不可读文本与错误文本
- 为未封口包装的完整性检测设置相机
- 为未封口包装的内容物选择照明与 ROI
- 排查包装完整性的误判
- 密封与胶条外观:断口诊断
- SKU 颜色分选:通道与漂移诊断
- 表面缺陷检测:误报诊断

