使用非监督分割模块
以瓶底数据(单击下载)为例,本文将展示如何使用非监督分割模块训练可检测图像中是否有缺陷的模型。
用户可使用自己准备的数据。整体使用流程一致,标注环节存在差异。 |
准备工作
-
新建工程并添加非监督分割模块:单击初始页面上的新建工程按钮,选择工程路径并输入工程名称以新建一个工程。然后,单击右上角的
,选择非监督分割模块。
图像存在一定的背景干扰的,可以前置目标检测模块;图像中物体朝向各异的,可前置快速定位模块。模块级联方法可参阅 级联模块的使用。 -
导入图像数据:解压缩下载的压缩包,单击左上方的导入/导出按钮,选择 导入文件夹 导入下载的图像数据。
若图像数据中有重复图片,可在弹出的导入图像 对话框中选择跳过或导入、设置标记。由于每张图片只支持一个标记,因此对已有标记的图像添加新标记后,新标记会覆盖旧标记。若导入数据集,可选择是否替换重复图像。
-
选择导入图像、导入文件夹方式时的对话框:
-
选择导入数据集方式时的对话框:
如需导入自己准备的数据,需要确保图像质量,避免 图像中物体位置、形状、大小不一致,或图像背景多变 。这些情况会严重干扰模型效果,应确保使用的 OK 图差异较小。
多数图像 错误示例 -
选择导入数据集选项时,此模块仅支持导入 DLKDB 格式(.dlkdb)的数据集,即仅限于从 Mech-DLK 中导出的数据集。
-
NG 图数量无强制要求,但建议加入适量的 NG 图,有利于提升模型效果。
-
-
-
截取 ROI:单击 ROI 工具
,框选目标图像区域,并单击 ROI 边框右下角的
应用当前ROI。截取 ROI 的目的是减少无关背景信息的干扰,ROI 边界应尽量贴近物体外轮廓。
同一 ROI 设定将应用于所有图片,因此需要保证所有图片中的物体都位于 ROI 内。 -
划分训练集与验证集:软件默认将数据集的 80% 划分为训练集,20% 为验证集,可以单击
拖动滑块调整图像占比。
训练模型
-
训练模型:使用默认参数设定,单击训练开始训练模型。
训练集中带有 NG 标签的图像会放到验证集,用于训练过程中的验证。 -
通过训练信息观察训练情况:在训练选项卡下的训练信息栏,可实时查看模型训练信。
-
通过训练图表窗口查看训练情况:单击训练选项卡下的显示图表按钮,即可在模型训练过程中实时查看模型精度曲线和损失曲线变化情况。精度曲线整体呈现上升趋势、损失曲线整体呈现下降趋势表明当前训练正常运行。
-
根据实际情况,提前中止训练(可选):当模型精度已经达到要求时,为节约时间,用户可单击训练中心按钮,在任务列表中选则工程后单击
中止训练。用户也可等待模型训练结束,观察最高精度等参数,初步判断模型训练效果。
若精度曲线在经过较多轮次后仍无上升趋势,表明当前模型训练可能存在问题。请中止模型训练流程,检查各参数设置,检查训练集中是否出现漏标错标,修改后重新启动训练。
验证模型
-
验证模型:训练结束后,单击验证可以验证并查看模型效果。
-
检查训练集中模型的验证结果:验证结束后,可在验证选项卡的验证统计中查看验证结果数量统计;点击详细报表按钮可打开详细报表窗口,查看更具体的验证统计结果。报表中的标注结果匹配矩阵显示模型推理结果与人工标注之间的对应关系,可以此判断模型中各类别的匹配情况。矩阵纵向为人工标注数据,横向为推理结果;矩阵中蓝色单元格表示推理结果与人工标注一致,其余单元格表示存在误差,可用于模型优化参考。点击矩阵里的数值,软件主界面图像列表将自动筛选,只显示点击数值对应的图像。
若模型训练效果不佳,请检查标注,调整训练参数,重新开始训练。 用户也可以点击详细报表窗口右下角的导出报表选择导出缩略图报表或原图报表。
-
重新开始训练:将新标注的图像加入训练集后,单击训练按钮,重新开始训练。
-
重新检查模型验证结果:训练结束后,再次点击验证按钮验证模型,重新检查模型在各数据集上的验证结果。
-
模型微调(可选):用户可启用开发者模式,在训练参数设置中启用模型微调。具体操作请参阅迭代模型。
-
不断优化模型:重复以上步骤,不断优化模型性能,直至模型达到使用要求。
在验证选项下单击编辑阈值,然后在弹出的对话框中拖动阈值线来修改阈值。绿色竖线用于设置 OK 结果的阈值,红色竖线用于设置 NG 结果的阈值。修改阈值后,需根据新设定的阈值重新验证模型。
导出模型
-
导出模型:单击导出模型,然后选择存放路径,即可导出模型。
导出后的模型可在 Mech-DLK SDK 中使用,单击此处查看详细说明。