- 21 Feb 2025
- 打印
- PDF
创建您的第一个分割程序
- 更新于 21 Feb 2025
- 打印
- PDF
按照 创建您的第一个程序 中的步骤配置成像设置、模板图像和对齐以及检测设置后,按照以下步骤训练分割模型。
标注与训练
在本节中,您将捕获物体的多个图像,并使用刷子工具标注缺陷。您需要捕获并标注至少10张图像。
在检测设置页面,使用面包屑菜单选择 Label and Train。或者,从程序编辑器中选择 Label and Train。
注意
预览窗格(左侧)显示实时预览,直到捕获图像或通过导航菜单选择图像。
在检测类型下,点击“编辑”以重命名默认类别(fail_[检测类型名称])或添加其他类别。完成所有需要相机识别的类别后,继续下一步。
确保物体位于相机视野内,然后选择 Capture。
使用 Brush 工具突出显示您希望相机识别的物体上的缺陷。
提示
使用 Eraser 工具删除任何不需要的高亮部分。
如果您添加了其他类别,从下拉菜单中选择适用的刷子类别。
点击 Save Annotations。
将同一物体的另一个示例放入相机视野内,并重复步骤 3-6,直到您添加了至少10个标注示例(如果添加了其他类别,则每个类别至少添加五个示例)。
提示
如果每张图像有所不同(避免重复相同的图像),模型的准确性会更高。
仔细检查每张捕获的图像是否正确标注,因为这些标签将用于训练模型。继续到 IO模块.
注意
For more information about the Label and Train page, see 标注和训练(分割模块).
IO模块
在本节中,您将使用 Node-RED 逻辑为程序定义通过/失败逻辑。
在 标签与训练 页面,使用面包屑导航选择 IO Block,或在 程序编辑器 中选择 Configure IO。
右键单击 Classification Block Logic 节点,选择 Delete Selection。
右键单击,选择 Insert > Node > Function。
重新连接节点。
双击 function 1 节点。
复制并粘贴下方代码示例中的所需代码到 On Message 选项卡。
代码示例:如果未检测到像素,则通过
复制并粘贴以下逻辑代码:
代码示例:如果检测到的所有斑点均小于设定阈值,则通过
复制并粘贴以下逻辑代码:
代码示例:如果检测到的像素总数小于设定阈值,则通过
复制并粘贴以下逻辑代码:
点击 Done.
点击 Deploy.
继续到 训练分割模型。
注意
有关 IO 模块 页面更多信息,请参见 IO块和Node-RED逻辑。
训练分割模型
在本节中,您将使用先前标记的图像训练模型。
在 IO 模块 页面,使用面包屑导航选择 Label and Train,或者在 程序编辑器 中选择 Label and Train.
点击 Train Segmentation Model.
使用字段右侧的箭头调整 迭代次数,设置标记图像显示给模型的次数,以帮助模型学习。
注意
增加迭代次数会提高模型的准确性,但也会延长训练时间。
点击 Start Training。一个弹窗将显示训练进度。
模型训练完成后,使用 Live Preview Mode 或 HMI 标签验证程序的功能。将不同示例的物体放置在摄像头视野内,验证模型是否正确分类每个示例。