跳转到内容
STAGING SERVER
DEVELOPMENT SERVER

pylon AI Platform#

pylon AI Platform 是一个集中式中心,用于管理深度学习 (DL) 模型生命周期。

它为每个 AI vTool 提供不同的机器视觉项目,并允许您创建自己的项目。它支持模型生命周期的所有阶段,从开发到部署,包括针对不同硬件环境的模型优化。

请联系 Basler 销售团队以获取 pylon AI Platform 的访问权限。

运作原理#

作为简介,以下章节提供了一些背景信息,并解释了使用 pylon AI Platform 创建项目的关键方面。

概念与术语#

Models:模型是可以使用样本图像进行训练的算法。基于训练,模型能够“预测”图像内容。

Architecture:模型的架构决定了模型的工作方式。不同的架构适用于不同的机器视觉任务。

Data sets:数据集是与特定问题或任务相关的数据集合。它包含与该问题相关的所有视觉 Property。

例如,猫和狗的图像可以构成一个分类模型的数据集,用于区分猫和狗。如果模型不仅需要区分猫和狗,还需要区分老鼠,则必须将老鼠图像数据添加到数据集中。

通常,数据集分为三个部分:

  • Training data:训练数据构成了深度学习模型用于学习的数据集中最大的一部分。模型调整其权重以识别训练数据中的模式。
  • Validation data:验证数据由深度学习模型用于评估其在训练期间的行为。它独立于训练数据,不用于优化。
  • Test data:训练完成后,使用测试数据评估模型的性能。测试数据代表新的、未见过的新示例,并展示模型对现实世界数据的泛化能力。

您可以使用 pylon Viewer 的录制功能来创建自己的数据集。要完成数据集,您还必须对图像进行标注。有关更多信息,请参阅下方的Annotations/Labels部分。完成数据集后,您可以将其添加到 pylon AI Platform 上的项目中。

数据集上传

目前,数据集仅支持 1.1 版本的 CVAT for images 格式。您可以使用 CVAT Server 对数据进行标注,或者将现有数据集转换为 CVAT for images 1.1 格式。

对于后者,您可以将数据集从训练环境导出为 CVAT 格式,或者使用第三方工具转换现有数据集。为此,Basler 推荐使用 Datumaro。

Annotations/Labels:标注(也称为标签)被添加到数据集中,以告知模型数据中的重要内容。在训练期间,模型使用此信息将预测结果与预期/正确的结果进行比较。对于上述分类任务,此信息指示图像描绘的是狗还是猫。

要为 pylon AI 使用而标注图像,您可以使用外部训练平台或开源工具CVAT。此视频演示了如何使用 CVAT 为 Object Detection 标注带有边界框的图像。

训练:在深度学习的语境下,训练是指神经网络(模型)从训练数据中学习的过程。模型对所有训练数据进行预测(参见上文的“数据集”)。将预测结果与真实数据(标注/标签)进行比较以计算偏差。根据偏差调整模型的权重,以使偏差最小化。此过程不断重复,直到误差尽可能减小。为了验证模型的性能,将模型应用于验证数据。

推理:在深度学习的语境下,推理是指将训练好的模型应用于新的、未见过的数据并对内容进行预测。

使用 pylon AI Platform#

本节将带您了解创建机器视觉项目的各个步骤。

pylon AI Platform 的设计旨在实现直观易用。登录 pylon AI Platform 后,您将看到 Dashboard 视图。

Dashboard 视图

此处显示最近发布的 5 个 bundle 以及最近运行的 5 个试验。

要开始创建项目,请单击左侧导航树中的 My Projects。

My Projects 视图

在 My Projects 视图中,您可以看到您或具有 AI Platform 访问权限的其他人员所创建的所有项目。您可以选择以列表视图或平铺视图显示项目。

项目创建#

首先需要创建一个项目。

  1. 登录 pylon AI Platform。
  2. 单击左侧导航树中的 My Projects。
  3. 在 My Projects 页面上,单击 Create new project。
  4. 在 Create New Project 页面上,指定要创建的项目类型,并输入名称和简短描述(可选)。
    将打开一个项目概览页面。
    新项目

顶部的选项卡式导航显示了当前可执行的所有步骤。某些步骤仅在您完成前面的步骤后才可用。

在 notification area 中,您在 AI Platform 上执行的每个操作都会弹出一条新消息。所有消息都会保存,直到您选择将其删除。

主页按钮可带您返回项目的概览页面。

数据集#

  1. 单击 Add data set 按钮或上方选项卡列表中的 Data Sets。

  2. 在 Add Data Set 页面上,为您要添加的数据集输入名称和简短描述(可选)。
    添加新数据集

  3. 单击 Add。

  4. 在 Upload Data 页面上,指定要上传的数据格式并添加数据。

    支持的数据集格式

    目前,数据集仅支持 1.1 版本的 CVAT for images 格式。您可以使用 CVAT Server 对数据进行标注,或者将现有数据集转换为 CVAT for images 1.1 格式。

    对于后者,您可以将数据集从训练环境导出为 CVAT 格式,或者使用第三方工具转换现有数据集。为此,Basler 推荐使用 Datumaro。

    数据验证随即开始。验证成功完成后,您可以检查标注并继续创建数据集类。

    数据集验证

  5. 点击 Map classes。

  6. 在 类映射 对话框,点击 自动创建类 以便根据图像中的标注自动创建数据集类。
    或者,点击 添加新类 下方的下拉列表中的 数据集类.
    类映射对话框

  7. 单击确定。

  8. 在 Upload Data 页面上,点击 Upload。
    随即打开 Data Sets 选项卡,您可以在其中查看数据集。

  9. 点击该数据集以查看其内容、添加图像并编辑其 Property。如果您对数据集的状态满意,请点击 发布.
    您必须发布数据集才能在试验中使用它。
    数据集属性页面

  10. 返回到 Data Sets 选项卡。

型号#

  1. 点击 Models 选项卡。

  2. 在 Models 页面上,点击 Add model。

  3. 在 上传模型 页面上,输入要添加的模型的名称和简短描述(可选)。
    添加新模型

  4. 点击 Create。

  5. 在 上传模型 页,指定要上传的模型的配置并添加模型文件。
    上传和验证将立即开始。完成后,您可以检查您的模型包含哪些类别。
    模型上传完成

  6. 点击 Finish。
    将打开 Models 标签页,您可以在其中查看您的模型。

  7. 点击该模型以查看其 Property。
    Model Properties

  8. 返回 Models 标签页。

映射#

数据集和模型通常包含比特定任务所需更多的类别。Mapping 是指将数据集类别与模型类别进行匹配,以定义您的项目所寻找的内容。为此,您必须添加项目类别并为其分配所需的数据集和模型类别。

  1. 单击工具栏中的 映射 选项卡上。
    Mapping 标签页

  2. 在 映射 标签页,点击 Create project class 以创建您的第一个项目类别。
    Create Project Class 按钮
    或者,您可以使用 Automap 功能进行同步。
    Automap 按钮

  3. 如果需要,将默认名称更改为其他名称。

  4. 向其中添加数据集类别和模型类别。
    您只需从右侧对应的标签页中拖放类别即可。使用下拉列表,您可以更改数据集及其版本以及模型版本。
    Mapping 标签页下拉列表

  5. 重复步骤 2 到 4,直到创建了所需的所有项目类别。

  6. 排除所有不需要的数据集和模型类别(有关详细信息,请参见 Excluding Classes)。

自动映射#

Automapping 允许您根据数据集和模型类别的名称一键将其映射到项目类别。如果不存在与数据集和模型类别名称相匹配的项目类别,则将创建一个具有该名称的新项目类别。因此,如果您拥有比实际使用更多的数据集类别或模型类别,请务必在使用 automapping 之前将它们排除。

Automapping 仅对未映射的类别有效。任何以前手动映射过的类别将保留在其各自的类别中。

如果数据集或项目类别的名称包含单词“background”或“excluded”,则它们将根据项目类型被排除或定义为背景。

Automapping 不区分大小写,但类别的名称必须完全相同。

若要使用 Automapping:

  1. 在右侧的 Data Set Classes 标签页上,排除所有不需要的数据集类别。

  2. 单击 Automap.
    Automapping 摘要

  3. 在 Automapping Summary 对话框中,检查您是否要创建其中列出的所有项目类别。
    您可以取消选择任何不需要的类别。取消选择的类别将保持未映射状态。请确保随后将它们排除。

  4. 单击 Map classes。
    系统将创建项目类别,并将数据集类别添加至其中。

  5. 在右侧的 Model Classes 标签页上,排除所有不需要的模型类别。

  6. 单击 Automap.
    Automapping 摘要

  7. Automapping Summary 对话框显示现有的项目类别、将映射到这些类别的模型类别,以及将创建的任何新项目类别。检查您是否要创建列为新建的项目类别。
    您可以取消选择任何不需要的类别。取消选择的类别将保持未映射状态。请确保随后将它们排除。

  8. 单击 Map classes。
    系统将创建尚未存在的项目类别,并将模型类别添加至新项目类别和现有项目类别中。

排除类别#

必须排除不想在项目中使用的模型类别才能完成映射。这对于从您的模型中获取正确的统计数据是必要的。

要排除类别,请选择所有不需要的模型类别,然后单击 Exclude。或者,您也可以将选定的类别拖动到屏幕底部,并将其放置在 Excluded 区域中。

排除模型类别

对于分割项目,情况略有不同。在此类项目中,所有多余的模型类别都必须定义为背景。为此,请选择所有不需要的模型类别,然后单击 Define as background。或者,您也可以将选定的类别拖动到屏幕底部,并将其放置在 Background 区域中。

这两项操作都可以通过使用相应的按钮或通过拖放来撤销。

应用项目时,将不考虑排除的类别。这意味着您将不会获得有关这些类别的任何结果。

试验#

  1. 单击 Trials 标签页。

  2. 在 Trials 页面上,单击 Add trial。

  3. 在 创建 Trial 页面上,输入要添加的 Trial 的名称和简短描述(可选)。
    创建 Trial 页面

  4. 在 项目资源 区域)中,单击 添加数据集 以选择您想要用于 Trial 的数据集。
    添加数据集对话框

  5. 在 项目资源 区域)中,单击 添加模型 以选择要在试验中使用的模型。
    添加模型对话框

  6. 在 项目资源 区域)中,单击 检查映射.
    您应该检查映射并进行任何必要的更改。创建试验后,将无法再更改项目类。
    检查试验映射

  7. 点击 Create。

  8. 单击 Add next trial run。

  9. 选择硬件和模型格式。
    选择硬件对话框

  10. 单击 运行试验.
    运行试验对话框
    试验将立即开始运行。运行结束后,统计信息将显示在试验页面上。
    试验结果

  11. 如果您对结果满意,可以点击试验旁边的 Release bundle 按钮来发布 bundle。
    发布 Bundle 按钮

  12. 更改 bundle 的名称并输入描述(可选)。
    发布 Bundle 对话框

  13. 单击 Release bundle。
    系统正在生成 bundle。

  14. 返回项目概览页面并单击 Bundles 选项卡。
    稍等片刻后,您的 bundle 将显示在此处。

套件 (Bundles)#

发布后,bundle 将显示在 Bundles 选项卡中。在此处,您可以检查 bundle 的 Property,还可以查看生成该 bundle 的试验运行详情。

Bundles 选项卡

bundle 包含 vTool 执行视觉任务所需的所有必要信息,例如硬件配置、模型等。现在,您可以使用 pylon AI Agent 将其部署到 AI vTools。

您还可以将 bundle 下载到本地或远程存储位置。在这种情况下,无法访问 pylon AI Platform 的用户仍然可以使用 bundle 中的模型。

外部项目#

pylon AI Platform 允许您连接到其他平台,例如 Intel Geti 和 Landing AI。您可以导入在这些平台上创建的项目,并在其上使用不同的硬件和模型运行试验。

要建立与其他平台的连接,您必须添加该平台的 API 密钥。

要添加 API key:

  1. 登录 pylon AI Platform。
  2. 在左侧导航树中,点击 设置.
    pylon AI Platform - 设置视图
  3. 在 设置 视图,点击 Add API Key.
    即: Add API Key 对话框即打开。
    添加 API Key 对话框
  4. 在 Add API Key 对话框中,选择所需的平台并输入该平台的 API key。
    有关获取 API key 的说明,请参见此处:
    Intel Geti
    Landing AI
  5. 点击 Save。
    您添加的 API key 将显示在 API Keys 页面上。此外,您已建立连接的外部平台上创建的项目现在也可在 External Projects 视图中使用。

现在,您可以将外部项目导入您的项目库并进行测试。请注意,外部项目是只读的。您无法在 pylon AI Platform 上编辑其资源(例如数据集)。如果您想进行更改,必须在原平台上进行。

要导入外部项目:

  1. 在左侧导航树中,点击 外部项目.
    External Projects 视图
  2. 点击您要导入的项目。
    Import Projects 视图
  3. 在 Data Sets、Models 和 Mapping 选项卡上查看项目的资源。
  4. 如果您对该项目满意,请点击 Import project.
    Import External Project 对话框
  5. 输入名称和简短描述(可选)。
  6. 单击下一步。
  7. 选择您要导入的数据集。
    您也可以稍后执行此操作。您只能导入作为外部项目一部分的数据集。
  8. 单击下一步。
  9. 选择您要导入的模型。
    您也可以稍后执行此操作。您只能导入作为外部项目一部分的模型。
  10. 点击 Import。
    该项目将被导入并添加至您的项目库。
  11. 在左侧导航树中,点击 My Projects.
    My Projects 视图
    您刚添加的项目现在已可使用。
  12. 点击该项目进行编辑(例如添加数据集和模型,如果您尚未添加),并查看 mapping。
  13. 运行 trials 并创建 bundles。