跳到主要内容

第 3 步:感兴趣区域(ROI)

时间:10–15 分钟

现在对齐功能已经就绪,是时候告诉相机应该往哪里看了。您可以通过绘制 Inspection Regions(感兴趣区域,ROI)来实现:在图像上绘制矩形,定义 AI 将分析的区域。

关键术语

  • Inspection Type: 具有共享数据集和一组类别的类别。示例:使用 "Screws",其类别为 "present" 和 "absent"
  • Inspection Region (ROI): 零件上的具体位置。示例: "Screw_1"、"Screw_2"、"Screw_3",它们都共享 "Screws" 这个 inspection type

您可以在同一图像上拥有多个 inspection type。例如: "Screws"(10 个 ROIs)和 "Connectors"(2 个 ROIs),每个都具有自己的类别和训练数据。

为什么 ROI 大小重要

这是客户常见抱怨的第二大来源(仅次于对齐)。下面解释原因。

The 512x512 pixel limit

关键:大于 512x512 像素的 ROI 会丢失信息

每个 ROI 都会从整张图像中裁剪出来,分别输入 AI 模型。AI 模型可接受的最大尺寸为 512 x 512 像素。如果你的 ROI 大于此尺寸,相机会将其缩小以适应,因此你将永久失去细节。

把它想象成拍一张高分辨率照片,然后缩小成缩略图。细节会消失。

小而精更优,原因如下

设想你在寻找一个丢失的螺丝。你可以绘制一个覆盖整个电路板的巨型 ROI,或者一个只覆盖螺丝区域的小 ROI。

使用小 ROI 时:

  • 螺丝在裁剪区域中占主导地位,因此 AI 很容易理解你要找的对象
  • 你需要的训练图像更少(信噪比高)
  • 处理更快
  • 如果 ROI 小于 512x512,信息不会丢失

使用大 ROI 时:

  • 螺丝在背景海洋中只是一个微小的细节
  • AI 需要更多数据来学习关键特征
  • 如果 ROI 超过 512x512,裁剪会被缩小,螺丝会变得更小
  • 处理时间更长

全图像检查的网格技术

如果你需要检查整张图像中的微小缺陷(例如表面上的划痕),不要使用一个巨大的 ROI。相反,在网格模式下平铺多个小 ROIs

每个小 ROI 都保留了完整分辨率。如果任意一个 ROI 失败,整个检查可能失败。你将获得两全其美的效果:覆盖完整且保留细节。

设置你的 ROIs

检查设置,在零件上绘制 ROIs

1. 创建一个 Inspection Type

在配方编辑器中导航到 Inspection Setup

将 "Inspection Type 1" 重命名为有意义的名称,例如 "Screws"、"Surface_Quality" 或 "Connector_Check"。此名称很重要,因为它会出现在输出数据和 Node-RED flows 中。

2. 定义你的 classes

添加该 inspection type 需要的 classes。对于分类器,可能是:

  • Pass / Fail
  • Present / Absent
  • Good / Scratched / Cracked

初始保持简单。稍后可以随时添加更多的 classes。

3. 绘制你的 ROIs

Inspection region types

单击 + Add Inspection Region。图像上会出现一个黄色矩形。

  • 拖动 它到正确的位置
  • 调整大小 通过拖动角点
  • 使其恰好足以包含你要检查的特征
  • 将其重命名,从 "New ROI" 更名为具有描述性的名称(例如 "Screw_Top_Left")

4. 对每个位置重复

如果你要检查 10 个螺丝,请创建 10 个 ROI,每个螺丝位置一个。它们都共享同一个 Inspection Type 和数据集。

复制粘贴快捷方式

将第一个 ROI 命名为 "Connector 1" 并点击复制。它会自动创建 "Connector 2"、"Connector 3" 等,名称会自动递增。这比逐个从头创建要快多了。

5. 使用 Live Preview 验证

切换 Live Preview Mode,并检查:

  • 所有 ROIs 在零件上的位置是否正确
  • 若你使用对齐器,ROIs 会随对齐移动
  • 每个 ROI 能完全包含你要检查的特征
  • 没有 ROI 大小超过需要

ROI 尺寸指南

ROI 目的尺寸建议
单一特征(screw、connector、label)恰好足以包含特征并留有少量边距
缺陷的表面积小瓷砖网格,每块均小于 512x512 像素
需要细节的大特征使用 segmenter 而不是 classifier
存在/不存在检查小;特征是存在还是不存在

何时使用大量 ROIs

不要害怕使用大量的 ROIs。你可以使用几十甚至上百个。好处包括:

  • 共用训练数据。 同一 Inspection Type 的所有 ROI 共享一个数据集。10 个 screw ROI 意味着每次捕获的训练数据量是原来的 10 倍。
  • 处理更快。 许多小裁剪的处理速度通常比一个大裁剪快。
  • 更高的准确性。 每个小裁剪具有较高的信噪比(signal-to-noise ratio)。
  • 粒度化报告。 你可以精确查看是哪个 ROI 失败。

当 ROI 需要较大

如果你确实需要一个较大的 ROI 来发现微小缺陷(如大表面上的微小划痕),请考虑使用 segmenter 代替 classifier。Segmenters 专为像素级检测而设计,能够更好地处理大区域。

Inspection Regions 检查清单

在继续之前,请确认:

  • 已创建具有有意义名称的 Inspection Type
  • 为每个 Inspection Type 定义了 Classes
  • 已绘制 ROI,大小恰好能包含该特征
  • ROI 按描述性名称命名(例如,"Screw_Top_Left")
  • 在 Live Preview 中,所有 ROI 能随对齐正确移动
  • 没有 ROI 超过 512×512 像素(请检查下采样警告)

准备开始训练 AI?请前往 第 4 步:训练您的 AI.