跳到主要内容

AI 驱动文档

您想了解什么?

首个配方创建

OV10i 注意

OV10i 仅支持 分类 模型。此页面提到的分割功能在 OV20iOV80i 相机上可用。

本深入分析解释了配方的定义,概述了分类与分割之间的区别,并提供了创建配方的逐步指导。还包括成像设置配置、模板图像捕获和对齐设置、ROI 优化、数据收集和 AI 训练,以及图像增强配置的详细操作说明。

视频指南

查看此主题的实际操作:如何在几分钟内创建分割配方


学习目标

通过本次深入分析,您将了解:

  • 配方是什么
  • 分类与分割之间的区别——以及何时使用每种方法
  • 如何创建配方
  • 如何配置成像设置
  • 如何捕获模板图像并配置对齐器
  • 什么是 ROI(感兴趣区域)以及如何优化它们
  • AI 训练的数据收集
  • 配方测试和验证

什么是配方?

  • 一组 配置好的指令,告诉相机如何检查特定的零件或产品。
  • 定义 相机设置,包括曝光、焦距和照明参数,以确保一致的图像捕获。
  • 包含 处理逻辑,如 ROI 定义、对齐器、分类或分割类别。
  • 存储 输入/输出配置,以便与自动化系统集成,实现合格/不合格或高级信号。
  • 可以 保存和重用,以确保在不同班次、生产线或设施之间进行一致的检查。

分类与分割

定义

  • 分类:识别 ROI 中对象的类型
  • 分割:定位和分析图像/ROI 中的区域

示例

图像分类图像分割图像分类图像分割
什么是羊?哪些像素属于哪个对象?这块披萨是合格的还是有缺陷的?每片香肠在哪里?
羊分类羊分割披萨分类披萨分割

关键比较

分类分割
速度速度取决于成像设置和复杂性。一般情况下,简单设置下效率高且快速优化后可以 与分类一样快甚至更快,尤其是在精简模型的情况下
准确性适用于整体 合格/不合格 或零件类型识别对于 精确缺陷 定位具有更高的准确性
复杂性简单 设置和维护;参数较少复杂 – 需要更多数据、标注和调优
数据需求 – 需要较少的标注图像中等 – 需要许多带有详细像素准确标注的图像
使用案例零件存在、方向、基本质量检查、零件插入/未插入等表面缺陷、细微特征检查、多缺陷检测、计数、测量等

创建和导出配方

使用配方旁边的 导出配方 按钮导出单个配方。

导出配方按钮

使用屏幕顶部的 导出 按钮一次性导出多个配方。

导出多个配方按钮

使用屏幕顶部的 导入 按钮导入配方。

导入配方按钮

备注

请记住: 每个配方一次只支持一种检测类型,要么是分割,要么是分类。在开始设置之前选择正确的类型。

成像设置

聚焦

成像设置中的聚焦设置

  • 它是什么: 调整捕获图像的清晰度。
  • 如何使用: 滑动直到图像中的边缘和细节看起来清晰明了。
提示

在聚焦时使用具有清晰边缘的目标物体(如尺子或校准卡)。

图像旋转

成像设置中的图像旋转设置

  • 它是什么: 旋转图像(0° 或 180°)。
  • 何时使用: 如果相机以角度安装,但希望在界面中以另一种方式显示图像。
备注

如果需要将图像旋转90°,请旋转相机。

曝光(毫秒)

成像设置中的曝光设置

  • 它是什么: 在图像捕获期间传感器暴露于光线的时间。
  • 效果:
    • 较高的曝光 → 更亮的图像,但有运动模糊的风险。
    • 较低的曝光 → 光线较少,但在快速移动的应用中图像更清晰。
欠曝光正确曝光过曝光
欠曝光示例正确曝光示例过曝光示例
提示

曝光是对数的,较高的曝光意味着更大的延迟(因为需要更多时间进行图像捕获)。

增益

成像设置中的增益设置

  • 它是什么: 人为地数字化增亮图像(类似于相机的 ISO)。
  • 效果:
    • 较高的增益 → 更亮的图像,但增加 噪声(颗粒感)。
    • 较低的增益 → 更干净的图像,但需要良好的照明。
高增益低增益
高增益示例低增益示例
更亮且有噪声更暗且噪声较少
提示

只有在无法调整曝光或照明的情况下才增加增益。

自动白平衡

成像设置中的自动白平衡设置

  • 它是什么: 自动调整色彩平衡,使白色看起来白。
  • 何时使用:
    • 适用于 光照条件变化或不稳定的环境
    • 对于 稳定的设置,手动白平衡提供更 一致和可重复的结果
备注

要手动调整白平衡:

  • 打开 自动白平衡 切换开关。
  • 在相机下方或镜头前放置一张 白纸
  • 关闭切换开关以锁定白平衡设置。

伽玛

伽玛设置在成像设置中

  • 定义: 调整中间色调的亮度,而不太影响暗区或亮区。
  • 效果: 有助于揭示阴影中的细节或减少过于明亮的高光。

镜头校正

镜头校正设置在成像设置中

  • 定义: 纠正广角镜头的畸变。
  • 启用时机: 如果图像的边缘看起来弯曲或失真,请将其切换为开启,以确保对齐任务的准确性。

LED 闪光模式

LED 闪光模式设置在成像设置中

  • 定义: 控制相机内置 LED 灯的触发时机。
  • 选项:
    • 关闭: LED 持续开启。
    • 开启: LED 仅在捕获时闪烁,减少反射。

LED 灯光模式

LED 灯光模式设置在成像设置中

  • 定义: 选择 LED 的点亮方式(例如,全部开启、全部关闭、左右、上下等)。
  • 使用案例: 根据您的照明设置进行调整,以实现最佳的部件照明。
提示

使用定向模式来减少眩光或反射,通过关闭直接照射反射表面的 LED,同时保持角度光源开启,以获得更好的可见性。

LED 灯光强度

LED 灯光强度设置在成像设置中

  • 定义: 调整 LED 照明的亮度。
  • 最佳实践: 从低亮度开始,逐渐增加以避免眩光或反射。

光度控制

光度控制设置在成像设置中

  • 定义: 捕获多张图像(通常为四张)使用不同的方向光源(左、右、上、下),然后将它们合并为一张增强图像。
  • 目的: 该技术减少阴影并突出微妙的表面特征,通过提供均匀、一致的照明覆盖部件。
  • 使用时机: 适用于复杂部件、高反射表面或表面纹理不均匀的部件,标准的单光源图像可能会遗漏关键细节。

触发设置

触发设置在成像设置中

手动触发

  • 定义: 当您按下 HMI 屏幕上的按钮时捕获图像。
  • 最佳适用: 测试、设置或手动检查。

硬件触发

  • 定义: 使用电信号(例如来自传感器)来触发相机。
  • 最佳适用: 自动化生产线,其中传感器检测部件存在。

PLC 触发

  • 定义: 触发信号通过工业控制器(PLC)发送,以实现与其他机器的同步操作。
  • 最佳适用: 适用于需要精确时序的全自动系统。

对齐器触发

  • 定义: 当系统检测到部件在视野中对齐时自动触发。
  • 最佳适用: 适用于需要在捕获前保持部件一致定位的应用,或在没有其他可靠触发器的情况下。

间隔触发

  • 定义: 在设定的时间间隔内触发相机。
  • 最佳适用: 适用于连续过程或监控移动生产线而无需部件检测传感器。

模板图像与对齐

跳过对齐器

跳过对齐器设置在模板图像与对齐中

  • 定义: 在检测过程中关闭对齐步骤。
  • 何时使用: 如果零件在图像中的位置和方向始终相同。

模板区域

模板区域设置在模板图像与对齐中

  • 定义: 定义用于对齐的模板图像区域。
    • 矩形: 绘制一个矩形感兴趣区域。
    • 圆形: 绘制一个圆形感兴趣区域。
    • 忽略模板区域: 排除某些区域以避免干扰图案或无关特征。
  • 最佳使用: 帮助系统仅关注最具特征的部分,以实现准确对齐。

旋转范围

旋转范围设置在模板图像与对齐中

  • 定义: 设置系统在将零件与模板匹配时可以容忍的旋转角度(以度为单位)。
  • 示例: 设置±20°允许零件略微旋转,但仍能被检测到。
  • 何时调整: 如果零件在生产过程中倾向于旋转,则增加;对于高度一致的方向,则减少。

灵敏度

灵敏度设置在模板图像与对齐中

  • 定义: 控制系统在实时图像与模板之间寻找匹配的精细程度。
  • 效果:
    • 高灵敏度 → 检测更细微的细节,适用于复杂零件。
    • 低灵敏度 → 减少误匹配,但可能错过细微特征。

置信度阈值

置信度阈值设置在模板图像与对齐中

  • 定义: 设置系统接受检测所需的最低置信度分数。
  • 效果:
    • 较高的阈值 → 较少的误报,但可能错过边缘匹配。
    • 较低的阈值 → 更多的检测,但增加误报的风险。
提示

开始时设置适中,并根据测试结果进行调整。

尺寸不变

尺寸不变设置在模板图像与对齐中

  • 定义: 允许系统检测略大于或小于原始模板图像的零件。
  • 何时启用: 如果零件尺寸可能因定位、距离变化或制造公差而略有变化。

实时预览图例

实时预览在模板图像与对齐中

1. 一个可配置的边界框,定义在触发过程中监控的相机视场的特定区域

  • 目的: 确保相机仅关注相关区域,忽略不必要的背景区域。
  • 最佳使用:
    • 对于移动物体,确保零件始终完全位于检测区域内。
    • 通过减少分析的图像数据量来优化处理速度

2. 一个视觉红点,显示图像中所有定义的 ROI(感兴趣区域)中心点

  • 目的: 帮助您对齐和定位搜索区域相对于零件或相机视图。

3. 绿色线条表示检测到物体的边缘。

提示

如果您看到线条变为红色,请尝试增加 ROI 大小、调整 ROI 或提高灵敏度。

边缘检测示例

ROI(感兴趣区域)定义与优化

检查类型

检查类型设置

  • 定义: 定义正在执行的检查类型并将相似的ROI(感兴趣区域)分组。
  • 示例: “孔”用于检查零件中孔的存在、大小或质量。
  • 主要功能:
    • 添加检查类型: 为不同的检查需求创建新类别。
    • ROI数量: 显示当前分配给该检查类型的ROI数量。

变换

变换设置

  • 定义: 调整所选ROI的位置和几何形状以实现精确对齐和放置。
  • 字段及其目的:
    • 高度/宽度: 更改ROI的大小。
    • X / Y: 沿水平(X)和垂直(Y)轴移动ROI的位置。
    • 角度: 围绕其中心旋转ROI。
  • 最佳使用: 当您有重复模式(如多个相同孔)时,加快设置速度。

检查区域

检查区域设置

  • 定义: 模板图像中定义的所有ROI的列表。
  • 功能:
    • 添加检查区域: 手动创建新的ROI。
    • 忽略区域: 从处理过程中排除特定区域。
    • 编辑: 保存、删除或取消。
    • 锁定图标: 表示锁定的ROI,无法在未解锁的情况下移动。

实时预览模式

实时预览模式

  • 定义: 在调整或添加ROI后显示实时反馈。
  • 使用案例: 非常适合在设置过程中微调ROI的位置和大小。

测试按钮

测试按钮

  • 定义: 根据旧图像运行回测以验证更改。
  • 使用案例: 比较当前结果与之前设置的准确性和一致性。

数据收集与AI训练

定义不同的检查类别,并根据指定的检查类型标记每个ROI(见下面的示例)。

定义的检查类别和标记的ROI示例

使用标注工具对图像进行标记/注释。使用画笔类别下拉菜单选择要注释的类别。当前每个配方的分割类别限制为最多10个。

标注类别示例

良好数据的重要性

良好与不良数据示例

  • 垃圾进,垃圾出: AI模型的表现取决于您提供的数据。低质量或不一致的数据会导致不准确的结果。

  • 多样性很重要: 收集代表所有现实世界变化的数据:不同的班次、光照条件、零件位置和表面条件。

  • 质量重于数量: 一个较小、干净、标注良好的数据集通常比一个大但嘈杂或不一致的数据集表现更好。

标注基础:

  • 分类: 将整个图像或ROI标记为特定类别(例如,“良好”、“损坏”)。
  • 分割: 以像素级精度刷涂、勾勒或突出显示特定感兴趣区域(例如,表面上的划痕位置)。
  • 一致性: 使用一致的规则和定义进行标注,以避免在训练过程中产生混淆。

良好标注示例

常见陷阱

  • 数据不足: 样本过少会导致欠拟合,造成实际表现不佳。
  • 类别不平衡: 一类(例如,许多“良好”零件但少数缺陷零件)的过度代表会扭曲模型。
  • 标注不良: 不正确、不一致或匆忙的标注会导致显著的准确性下降。
  • 忽视环境变化: 当光照、零件方向或表面条件变化时未更新数据集会导致准确性漂移。
  • 未验证数据: 在训练前跳过质量检查通常会导致时间和返工的浪费。

数据增强

图像增强 人工修改您的训练图像 以提高模型的鲁棒性。它们模拟现实世界的变化,如亮度变化、旋转或噪声,以便模型在不同条件下表现良好。

颜色增强

颜色增强设置

亮度

  • 定义: 调整图像的明亮或黑暗程度。
  • 使用场景: 处理生产过程中光照的轻微变化。
提示

对于稳定的设置使用 ±0.1;如果光照变化较大,则增加该值。

对比度

  • 定义: 改变明暗区域之间的差异。
  • 使用场景: 对于具有纹理或表面变化的部件,帮助模型适应视觉差异。

色调

  • 定义: 稍微改变颜色的色调。
  • 使用场景: 适用于光照颜色(例如,LED温度)可能随时间变化的设置。

饱和度

  • 定义: 调整颜色的强度。
  • 使用场景: 帮助处理由于照明变化而使图像显得更暗淡或更鲜艳的情况。

几何增强

几何增强设置

旋转范围

  • 定义: 在设定范围内随机旋转图像(例如,±20°)。
  • 使用场景: 适用于可能稍微旋转的部件。
提示

避免对通常固定方向的部件进行过度旋转。

翻转

  • 定义: 水平、垂直或同时翻转图像。
  • 使用场景: 对于对称部件或在处理过程中可能翻转的情况非常有用。

光照与颜色模拟

光照与颜色模拟设置

普朗克温度

  • 定义: 模拟色温的变化(例如,暖光或冷光)。
  • 使用场景: 处理不同的光源变化或工作单元。

高斯噪声

  • 定义: 向图像添加细微噪声。
  • 使用场景: 如果您的生产环境有小的视觉噪声或相机传感器伪影,可以提高鲁棒性。

运动模拟

运动模拟设置

运动模糊

  • 定义: 模拟捕获过程中部件移动时产生的轻微模糊。
  • 使用场景: 对于可能发生运动模糊的高速生产线至关重要。

概率 (prob)

概率设置

  • 定义: 设置在训练过程中应用每种增强的可能性。
  • 示例: 0.50 = 50% 的机会将该变化应用于任何给定的训练图像。
提示

对于大多数增强,从 0.5 开始,并根据实际变化进行调整。

训练参数(分割)

训练参数(也称为超参数)是控制 机器学习模型如何从数据中学习 的设置。

学习率

学习率设置

  • 定义: 控制模型在训练过程中更新其内部权重的速度。
  • 值(0.003): 学习率越高,模型学习得越快,但过高可能导致不稳定或准确性差。
  • 滑块范围: 从 10^-4(非常慢)到 10^-1(非常快)。
提示

通常,0.001–0.01 之间的值是分割任务的良好起点。

ROI(感兴趣区域)大小

覆盖 ROI 大小设置

  • 定义: 定义用于训练的图像区域的大小(宽度 × 高度)。
  • 未选中: 默认情况下,模型会根据您的数据自动确定 ROI。
  • 选中时: 如果您需要一致的输入尺寸(例如,所有图像裁剪为 256×256 像素),您可以手动设置宽度和高度。
提示

当您的数据集包含不同大小的图像且您希望获得一致的输入以提高稳定性、可重复性或匹配已知模型架构时,请使用固定大小(例如,256×256)。

当您的数据已经具有统一的分辨率,或者您希望系统根据数据集的特征优化最佳感兴趣区域时,让它自动选择。

迭代次数(Epochs)

迭代次数(Epochs)设置

  • 定义: 一个 epoch = 对整个训练数据集的一次完整遍历。
  • 值(100): 模型将进行 100 次完整遍历的训练。
提示

通常增加这个数字会提高准确性,但会花费更长时间。

经验法则: 在训练过程中监控训练和验证损失。如果验证损失停止下降而训练损失持续下降,这表明模型正在过拟合,您应该提前停止训练。

架构

架构设置

  • 定义: 选择神经网络的大小和复杂性。
  • 小型: 训练速度更快,通常足以满足大多数数据集的需求。适合快速实验或较小的数据集。
  • 较大模型 可以捕捉更多细节,但在小数据集上可能会过拟合,而较小模型在数据有限时更高效且更具泛化能力。
提示

从小型开始,通常足够并能帮助您更快地迭代,然后再扩大规模。

外部 GPU

外部 GPU IP 地址设置

请联系支持以了解有关外部 GPU 的更多信息。

训练参数(分类)

训练参数(也称为超参数)是控制 机器学习模型如何从数据中学习 的设置。

学习率

学习率设置

  • 定义: 控制模型在训练过程中更新其内部权重的速度。
  • 值(0.003): 学习率越高,模型学习越快,但过高可能导致不稳定或较差的准确性。
  • 滑块范围: 从 10^-4(非常慢)到 10^-1(非常快)。
提示

通常,0.001–0.01 之间的值是分割任务的良好起点。

验证百分比

验证百分比设置

  • 定义: 定义将用于验证(训练期间测试)数据集的哪一部分。
  • 目的: 验证数据有助于监控模型在未见示例上的表现,防止过拟合。
  • 范围: 0–50%。
提示

常见选择为 10–20%。

如果设置为 0%,则所有数据都用于训练,这可能提高训练准确性,但会使检测过拟合变得更加困难。

ROI (感兴趣区域) 大小

Override ROI Size settings

  • 定义: 定义用于训练的图像区域的大小(宽度 × 高度)。
  • 未选中: 默认情况下,模型会根据您的数据自动确定 ROI。
  • 选中时: 如果您需要一致的输入尺寸(例如,所有图像裁剪为 256×256 像素),可以手动设置宽度和高度。
提示

当您的数据集包含不同尺寸的图像,并且您希望获得一致的输入以提高稳定性、可重复性或与已知模型架构匹配时,请使用固定大小(例如,256×256)。

当您的数据已经具有统一的分辨率,或当您希望系统根据数据集的特征优化最佳感兴趣区域时,让它自动选择。

迭代次数(Epochs)

Number of Iterations (Epochs) settings

  • 定义: 一个 epoch = 对整个训练数据集的一次完整遍历。
  • 值(100): 模型将进行 100 次完整遍历的训练。
提示

通常增加这个数字会提高准确性,但会花费更长时间。

经验法则: 在训练过程中监控训练和验证损失。如果验证损失停止下降而训练损失继续下降,这表明模型过拟合,您应该提前停止训练。

架构

Architecture settings

  • 定义: 选择神经网络的大小和复杂性。
  • 小型: 训练速度更快,通常足以满足大多数数据集的需求。适合快速实验或较小的数据集。
提示

从小型开始,通常足够,并且可以帮助您在扩展之前更快地迭代。

架构和相机描述推荐用途
ConvNeXt-Pico针对速度和低内存使用优化的超轻量模型。适合快速实验或硬件受限的情况。
ConvNeXt-Nano稍大于 Pico;在最小增加成本的情况下提供更好的准确性。小到中等数据集的良好平衡。
ConvNeXt-Tiny提供更好的准确性,同时仍然高效。适合中等数据集和较长的训练运行。
ConvNeXt-Small此列表中功能最强大的变体。具有更高的容量和准确性。用于大型数据集或需要最大性能时。

外部 GPU

External GPU IP Address settings

联系支持以了解有关外部 GPU 的更多信息。