使用图像分类模块
本文提供 Mech-DLK 示例工程中的冷凝管数据( 单击下载 ),带领用户使用图像分类模块训练模型,达到示例工程中区分工件的正反面的效果。
用户可使用自己准备的数据。整体使用流程一致,标注环节存在差异。 |
准备工作
-
新建工程并添加图像分类模块:单击初始页面上的 新建工程 ,选择工程路径并输入工程名以新建一个工程。再单击右上角的
,选择图像分类模块。
-
导入图像数据:解压缩下载的压缩包,单击左上方的导入/导出,选择导入文件夹导入下载好的图像数据。
若图像数据中有重复图片,可在弹出的导入图像 对话框中选择跳过或导入、设置标记。由于每张图片只支持一个标记,因此对已有标记的图像添加新标记后,新标记会覆盖旧标记。若导入数据集,可选择是否替换重复图像。
-
选择导入图像、导入文件夹方式时的对话框:
-
选择导入数据集方式时的对话框:
选择导入数据集选项时,此模块仅支持导入 DLKDB 格式(.dlkdb)的数据集,即仅限于从 Mech-DLK 中导出的数据集。
-
数据标注
-
创建类别:在标注栏中单击 +新建,根据物体名称或特征创建对应的类别。此处需要区分工件正反面,所以分别以 front 和 back 命名创建两个类别。
选中一个类别后,可右键选择合并至选项,将当前类别下的数据更改为另一类别。若在训练模型后进行了类别合并操作,建议重新训练模型。 -
标注图像:图像左侧标注工具栏选择对应的类别进行标注,可以同时选中多张图像进行标注。务必确保类别的一致性,禁止出现将图像反面标注为正面的情况。单击此处 查看标注工具使用详解。
图像分类模块支持同时选中多张图像进行批量标注。 -
划分训练集与验证集:软件默认将数据集的 80% 划分为训练集,20% 为验证集。需要确保训练集和验证集中都包含 所有种类 的图像,目的是让算法模块在训练过程中可以学习所有种类图像的特征,并对所有种类的图像进行验证。如果默认划分的数据集不满足这一条件,右键单击图像名称后单击移到训练集或移到验证集调整图像所属集合。
训练模型
-
训练模型:使用默认参数设定,单击 训练 开始训练模型。
-
通过训练信息观察训练情况:在训练选项卡下的训练信息栏,可实时查看模型训练信息。
-
通过训练图表窗口查看训练情况:单击训练选项卡下的显示图表按钮,即可在模型训练过程中实时查看模型精度曲线和损失曲线变化情况。精度曲线整体呈现上升趋势、损失曲线整体呈现下降趋势表明当前训练正常运行。
-
根据实际情况,提前中止训练(可选):当模型精度已经达到要求时,为节约时间,用户可单击训练中心按钮,在任务列表中选择工程后单击
中止训练。用户也可等待模型训练结束,观察最高精度等参数,初步判断模型训练效果。
若精度曲线在经过较多轮次后仍无上升趋势,表明当前模型训练可能存在问题。请中止模型训练流程,检查各参数设置,检查训练集中是否出现漏标错标,修改后重新启动训练。 -
显示类激活图:图像分类模型训练完成后,单击类激活图旁边的 生成 。等待类激活图生成完毕,单击
即可查看。 类激活图可展示模型训练时,当前图像中被关注的特征区域,从而帮助检查分类情况,为模型优化提供参考。
验证模型
-
验证模型:训练完成或手动中止训练之后,单击验证选项卡下的验证按钮,验证模型。
-
检查训练集中模型的验证结果:验证结束后,可在验证选项卡的验证统计中查看验证结果数量统计;点击详细报表按钮可打开详细报表窗口,查看更具体的验证统计结果。报表中的标注结果匹配矩阵显示模型推理结果与人工标注之间的对应关系,可以此判断模型中各类别的匹配情况。矩阵纵向为人工标注数据,横向为推理结果;矩阵中蓝色单元格表示推理结果与人工标注一致,其余单元格表示存在误差,可用于模型优化参考。点击矩阵里的数值,软件主界面图像列表将自动筛选,只显示点击数值对应的图像。
若验证结果在训练集中存在漏检、错检,则说明模型训练效果不佳,请检查标注,调整训练参数,重新开始训练。 用户也可以点击详细报表窗口右下角的导出报表选择导出缩略图报表或原图报表。
不需要把测试集中所有存在漏检或错检的图像都标注后划分为训练集。可补充标注一部分图像,加入训练集,重新训练和验证模型,将剩余图像作为参考,观察验证结果,检验模型迭代效果。 -
重新开始训练:将新标注的图像加入训练集后,单击训练按钮,重新开始训练。
-
重新检查模型验证结果:训练结束后,再次点击验证按钮验证模型,重新检查模型在各数据集上的验证结果。
-
模型微调(可选):用户可启用开发者模式,在训练参数设置中启用模型微调。具体操作请参阅迭代模型。
-
不断优化模型:重复以上步骤,不断优化模型性能,直至模型达到使用要求。
导出模型
单击 导出模型 ,设置类激活图选项后,选择存放路径,然后单击 导出 ,即可导出模型。
默认类激活图选项不开启。在 Mech-Vision 中使用保存了类激活图的模型时推理速度将变慢。 |

导出后的模型可在 Mech-Vision 与 Mech-DLK SDK 、Mech-MSR 中使用,单击此处查看详细说明。