使用自定义模型进行可视化分类
  • 26 Mar 2024
  • 1 分钟阅读
  • 贡献者

使用自定义模型进行可视化分类


文章摘要

使用自定义模型进行视觉分类

如何使用视觉系统的自定义模型进行实时视觉分类,以执行边缘检测和验证

自动视觉检测是车间里非常强大的工具。它可用于保持装配步骤的高质量保证,以及减少处理时间和提高总体产量。在 Tulip Vision 中,使用自定义模型可以执行自动视觉检测。自定义模型是 Tulip Vision 在边缘实时执行的机器学习模型。这些模型需要使用在所需检测点从生产线采集的数据进行训练。

Tulip Vision 支持分类模型和检测模型。本指南将介绍如何使用分类模型。分类是决定视觉图像属于哪个类别的行为。例如,一个工件可能属于 "不合格"(NG)或 "合格"(OK)类别,或者对于缺陷分类,它可能属于 "太宽"、"太窄"、"翘曲 "或 "正常"(OK)类别。用户可自行决定类别,只要有足够的数据来训练模型即可(为确保足够的准确性,每个类别至少要有 50 幅示例图像)。

自定义模型在边缘运行,这意味着推理(执行模型以获得预测结果)不会像在云中运行模型那样产生额外费用。自定义模型还可在边缘计算机上实时运行,因此可即时用于生成检测结果,从而减少了向云端发送图像的带宽。由于图像不会离开工作站,因此在数据安全方面,这也使得操作更加私密。

前提条件

  • Tulip r229 及以上版本已启用自定义模型
  • Tulip Vision 相机已设置好相机配置(使用我们的入门指南
  • 用于检测或验证的部件,在工作站中具有可重复的捕捉位置
  • Tulip 上的分类图像数据集(使用我们的数据收集指南

获取用于推理的训练模型

要使用视觉自定义模型,您需要获得一个训练有素的模型。假设数据已经收集并下载到您的计算机(按照数据收集和导出指南进行操作),则可在 Microsoft Azure 的customvision.ai在线服务上轻松完成模型训练。只需点击几下按钮,您就可以加载图像及其注释并训练自定义模型。

在 customvision.ai 上加载数据

要训练一个新模型,请创建一个新的customvision.ai项目:(您需要 Azure 认证,认证可从Azure 门户获取)

确保您创建的是一个分类模型,多分类与一般(紧凑)指定:

然后添加从 Tulip 导出的图像:

批量上传图片,以节省标记每张图片的时间和精力。从 Tulip 导出的数据集会根据类别将图像排列在一个文件夹中。选择文件夹中的所有图像并上传到 customvision.ai:

对数据集的其他类别重复此过程。确保每个类别至少有 50 个样本:

在 customvision.ai 上训练模型

图像就位后,要训练模型,请单击 "Train(训练)"按钮。

选择您的训练预算。要快速检查郁金香应用程序的工作,请运行 "快速培训",我们建议您这样做,以获得在车间运行视觉检测的整体快速评估。不过,在 "快速培训 "模式下,检测结果可能不是很理想。在您的工作站中的所有物理设置准备就绪后,请在稍后时间用更多预算再次训练模型,以获得可用于生产的模型。

从 customvision.ai 导出 ONNX 模型

让模型完成训练,然后前往 "性能 "页面。您会发现导出模型的选项:

选择 "ONNX "选项:

导出并下载模型:

如果您在导出模型时遇到问题,请联系我们的支持团队,以获得性能良好的模型。

在 Tulip Vision 上设置自定义模型

要在 Tulip Vision 上使用下载的模型,请访问 Vision -> 模型页面:

创建一个新的自定义模型:

确保模型类型为 "分类"。从下载的导出文件中选择模型文件,你应该有一个model.xmlmodel.binlabels.txt文件。

然后,在探测器页面或摄像机配置页面创建一个新的 "分类器模型探测器",记住要选择刚刚创建的自定义模型:

然后,将新的分类器检测器分配给一个摄像机配置区域。确保使用与数据采集相同的区域。请注意,您还可以控制检测阈值,设置较高的阈值将只接受来自模型的高置信度预测。阈值越高,接受的案例就越少,但可以确保决策的可信度(高精度),并减少误报(I 类错误)。较低的阈值会尝试捕获更多案例,但可能会带来更多误报(高召回率)。

注意:在开始打印结果之前,摄像机可能需要一分钟的时间从云端下载模型。

一旦模型就位并开始工作,你就会看到它在实时视频中生成带有置信度分数的预测结果:

在郁金香应用程序中使用自定义模型

自定义模型在 Vision 机器上实时运行后,您就可以在 Tulip 应用程序中使用它的预测结果了。只要检测结果超过置信度阈值,分类器检测器就会发出事件。

在应用程序中设置一个用于视觉检测的步骤。例如,在其中添加摄像头视图,以便操作员进行视觉确认:

记住,检测结果是连续的,不需要快照按钮来触发。

接下来,根据自定义模型检测器输出添加触发器进行实时检测。使用 "检测开始 "触发器,当检测器预测结果高于您之前设置的阈值时,就会触发一个事件:

您可能还想在检测结束时添加一个事件并清除变量。

现在,您正在运行的应用程序应该会显示触发器中自定义模型的结果:

结论

自定义模型可以让您在边缘实时运行 ML 模型,自动执行视觉检测任务。它们可用于用经过适当训练的模型取代或增强人工检测。由于模型是在边缘运行的,因此不会产生额外费用,而且在数据方面运行更快、更私密、更安全。

现在就开始在 Tulip 上使用机器学习与 Vision 定制模型。通过快速简单的设置,这些功能强大的模型可以为您的工厂节省时间和精力。

更多阅读


本文对您有帮助吗?