问题与前置条件
存一个文件夹的不合格品图像,并不等于建立了追溯。有用的记录会把每个工件的判定与其图像状态、配方和采集代次关联起来,即使图像保存失败也是如此。
准备测试
假设有两台相机,图像均为 2000 × 1500 的 Mono8,帧率为 10 帧/秒:2 × 3 MB × 10 = 60 MB/s,原始图像为 216 GB/小时。恰好留存 1% 时,图像数据量为 2.16 GB/小时,但所有帧仍要经过采集和处理。采用十进制单位。
估算存储容量之前,先明确为什么要留存图像。排查问题可能需要故障图像及其相邻的上下文,而过程审核可能需要指定的样本集和不可更改的事件记录。写明本项目的留存规则,以及谁有权启用调查保留(investigation hold)。列出所有相机、实际格式、帧率,以及保存的文件是原始图、编码图还是裁剪图。实际预算要采用 SDK 报告的载荷大小和实测的已保存文件大小;只看图像尺寸,可能漏掉填充字节或元数据。示例假设为普通的 Mono8 像素数据,不含这些附加内容。不要凭文件扩展名去假定压缩比。要对有代表性的困难图像和突发情况进行实测,因为一旦被选中留存的不合格品多于正常运行时,存储需求就会随之变化。
操作步骤
- 在采集之前创建事件标识符,并记录相机、工件、配方、标定和采集代次。
- 立即保存判定结果,图像状态记为待写入;把已持有的图像转交给有界的写入队列。
- 图像写入成功后,更新其引用和已保存状态;写入失败要如实记录,不要编造路径。
- 按事件已存在的时间和处置结果设定留存期限;仍被调查保留引用的图像不得删除。
- 模拟磁盘写满、重启和写入中断;核对并处理待写入的记录,同时保留原始检测结果。
在异步保存之前先创建事件记录,并按文档规定的缓冲区规则复制或持有每幅图像。写入器不得访问已经归还给采集环节的驱动缓冲区。为写入队列设定上限,并记录其深度、最早的待写入项已等待的时长以及最终的保存结果。把相机标识和采集代次与事件关联起来,避免多幅图像被挂到错误的工件上。先写入带标识的临时对象,按存储方式文档规定的语义完成写入,再发布最终位置或完整性校验信息。失败或待写入的保存状态,要与检测判定分开记录。在投产放行之前,要先决定当必须留存的证据无法保存时采取什么围堵措施。
测试记录示例
以下为示例性假设,并非 Deyi 的实测性能。请将这些数值替换为你自己经签字确认的测试记录。
| 记录项 | 假设值 |
|---|---|
| 未压缩图像数据量 | 3 MB |
| 传输速率 | 60 MB/s |
| 留存时长 | 1 h |
| 存储容量 | 216 GB |
本示例中的 MB 和 GB 均按十进制计算:每个原始帧为 3,000,000 字节,每秒 20 帧产生 60,000,000 字节/秒。只有实际做到恰好选中 1%,才会得到 2.16 GB/h;不合格品突发集中时可能超出这个数。要在不合格品峰值负载下实测写入队列,把调查保留的内容预留出来、不纳入常规删除,并把图像保存失败与工件的检测判定区分开。
容量估算表中要分开三种速率:相机采集速率、被选中图像的流量,以及持续存储写入速率。采集之后再选取 1%,并不会减少相机送出的完整图像流,也不会减少检测所需的内存。把事件记录、配置快照、文件系统开销和预留空间加到已保存图像的估算量上。要跟踪不合格品峰值情况下的积压,而不是按平均读取速率去外推。容量和留存时长要使用同一种十进制或二进制单位表示。要把不受常规删除影响的调查保留计算在内。即使启动时磁盘显示剩余空间充足,只要删除被阻塞、不合格品增多,或写入器比送入的被选中图像更慢,容量仍然可能耗尽。
流程的两种视图
关联检测记录、图像与工件标识符 — 1
判定记录与图像写入共用同一个标识符,但各自独立完成;已保存状态在写入成功之后才更新。
- 工件事件
- 判定记录
- 有界写入器
- 图像引用
关联检测记录、图像与工件标识符 — 2
已留存图像、待写入和写入失败是可以区分的状态。读取失败与保存失败不是同一个事件。
- 已保存图像
- 待写入
- 保存故障
故障排查
- 批次码重复时,单靠解码值不能作为唯一键。
- 写入器变慢时,不得在没有明确策略的情况下让内存无限增长,也不得阻塞工位。
- 记录中声称图像存在时,必须与实际可读取的文件核对。
验收与交接
验证能从工件查到判定,再从判定查到图像或明确的保存故障。使用真实格式实测持续写入速度和容量。216 GB/小时的示例不含元数据、文件系统开销和预留空间;也没有假定能靠压缩节省空间。
测试前先设定验收限值,并保留原始证据。此处的示例并不能说明所供型号具备相应能力。
用受控的测试数据验证磁盘写满、写入器中断、重启以及调查保留的行为。确认每个计划内的事件最终都有可见的保存状态,并且已写完的文件与所记录的事件和相机相对应。验证恢复过程中不会把更早的待写入图像挂到新工件上。实际运行常规删除规则,并确认受保护的调查记录仍然可以检索。设定容量告警之前,先按实际格式和选取策略,实测持续写入速度和队列峰值。交接材料包括假设条件、实测的文件大小范围、原始速率与被选中速率的对比、队列策略、留存责任归属以及失败处置方式。示例中的 216 GB/h 和 2.16 GB/h 只是对既定假设的算术推算,并不是实测的压缩效果、推荐的留存时长,也不是对某款存储产品的性能保证。
来源与技术参考资料
这些资料说明了本教程所用方法的依据与适用范围。文中的检查示例仅供参考;量产验收需要用你自己的样品取得证据。
- Pixel FormatBasler核查于
- Programming with pylon CBasler核查于
部件与选型参考
- 智能相机与基于 PC 的视觉系统
- 机器视觉验收测试清单
- 视觉检测设备
- 机器视觉系统
- machine vision software · 英文参考资料
- EAN-13 追溯:产线验收
- EAN-13 追溯:解码与数据规则
- 稳定的相机采集:缓冲区、超时与重连
- 验收并集成可见液位工作流
- 面向可见液位替代指标的 AI 辅助工作流
- OCR 标签核对:验收与 PLC 约定
- OCR 标签核对:原生工作流与精确匹配
- 未封口包装完整性检测的验收与集成
- 搭建 AI 辅助的未封口包装完整性工作流
- 用明确的状态构建 PLC 与视觉系统的握手
- 密封与胶条外观:产线验收
- 密封与胶条外观:工作流规则
- SKU 颜色分选:验收与未知物品分流
- SKU 颜色分选:类型明确的颜色与 SKU 规则
- 表面缺陷检测:验收与产线输出
- 表面缺陷检测:限定范围的 AI 评估
- 触发到 PLC 判定的延迟负载测试
- 完整视觉配方的版本管理与回滚

