使用文本检测模块
以LED屏幕数据(单击下载)为例,本文将展示如何使用文本检测模块训练可检测图像中文本区域的模型,以配合文本识别模块使用,输出图像中的数字、字母以及部分特殊符号等字符。
| 用户可使用自己准备的数据。整体使用流程一致,标注环节存在差异。 |
准备工作
-
新建工程并添加文本检测模块:打开 Mech-DLK,单击初始页面上的新建工程 ,选择工程路径并输入工程名以新建一个工程。在主界面,单击输入模块下的+按钮,在添加模块窗口选择文本检测模块。
-
导入图像数据:导入采集得到的图像数据或解压本文提供的数据压缩包。可通过以下方式导入图像数据:
-
方式一
将图像或文件夹拖拽到图像列表区进行导入。不支持通过拖拽方式导入数据集。
-
方式二
在图像列表上方,单击导入/导出按钮。根据数据类型选择导入选项:
-
从上一模块导入:导入上一模块的图像。
-
导入图像:导入单张或多张图像。
-
导入文件夹:导入文件夹中的所有图像(不包括子文件夹中的图像)。
-
导入数据集:导入从 Mech-DLK 导出的 DLKDB 格式(.dlkdb)的数据集。
-
-
-
截取 ROI:单击 ROI 工具
,框选能涵盖所有图像中文本区域的部分作为感兴趣区域,并单击 ROI 边框右下角的
应用当前ROI。截取 ROI 的目的是减少无关背景信息的干扰。
-
划分训练集与验证集:软件默认将数据集的 80% 划分为训练集,20% 为验证集,可以单击
拖动滑块调整图像占比。需要确保划分后的训练集和验证集中涵盖所有需要检测的文本区域类型,训练集中 不同文本朝向 的图像比例要均衡,如果默认划分的数据集不满足这一条件,右键单击图像名称后选择移到训练集或移到验证集调整图像所属集合。
数据标注
在图像左侧标注工具栏选择对应的工具进行标注。标注时,绘制的标注框应尽量贴合目标文本边缘以减少干扰,禁止出现标注不完全或标注框过大的情况。
|
训练模型
-
训练模型:使用默认参数设定,单击训练开始训练模型。
-
通过训练信息观察训练情况:在训练选项卡下的训练信息栏,可实时查看模型训练信息。
-
通过训练图表窗口查看训练情况:单击训练选项卡下的显示图表按钮,即可在模型训练过程中实时查看模型精度曲线和损失曲线变化情况。精度曲线整体呈现上升趋势、损失曲线整体呈现下降趋势表明当前训练正常运行。
-
根据实际情况,提前终止训练(可选):当模型精度已经达到要求时,为节约时间,用户可单击训练中心按钮,在任务列表中选择工程后单击终止图标
终止训练。用户也可等待模型训练结束,观察最高精度等参数,初步判断模型训练效果。若精度曲线在经过较多轮次后仍无上升趋势,表明当前模型训练可能存在问题。请终止模型训练流程,检查各参数设置,检查训练集中是否出现漏标错标,修改后重新启动训练。
验证模型
-
验证模型:训练结束后,单击验证可以验证并查看模型识别效果。
-
检查训练集中模型的验证结果:验证结束后,可在验证选项卡的验证统计中查看验证结果数量统计。
-
点击详细报表按钮可打开详细报表窗口,查看更具体的验证统计结果。
-
报表中的标注结果匹配矩阵显示模型推理结果与人工标注之间的对应关系,可以此判断模型中各类别的匹配情况。矩阵纵向为人工标注数据,横向为推理结果。
-
矩阵中蓝色单元格表示推理结果与人工标注一致,其余单元格表示存在误差,可用于模型优化参考为待优化的结果。
-
点击矩阵里的数值,软件主界面图像列表将自动筛选,只显示点击数值对应的图像。
若验证结果在训练集中存在漏检、错检,则说明模型训练效果不佳,请检查标注,调整训练参数,重新开始训练。 用户也可以点击详细报表窗口右下角的导出报表选择导出缩略图报表或原图报表。
不需要把测试集中所有存在漏检或错检的图像都标注后划分为训练集。可补充标注一部分图像,加入训练集,重新训练和验证模型,将剩余图像作为参考,观察验证结果,检验模型迭代效果。 -
-
重新开始训练:将新标注的图像加入训练集后,单击训练按钮,重新开始训练。
-
重新检查模型验证结果:训练结束后,再次点击验证按钮验证模型,重新检查模型在各数据集上的验证结果。
-
模型微调(可选):用户可启用开发者模式,在训练参数设置中启用模型微调。具体操作请参阅迭代模型。
-
不断优化模型:重复以上步骤,不断优化模型性能,直至模型达到使用要求。
如需调整验证结果,可按如下步骤操作:在验证参数栏进行筛选规则设置;在筛选规则设置窗口,通过添加修改项修改模型验证结果。
导出模型
单击导出模型。在弹出的导出对话框中选择存放路径和导出参数。对于图像中多行文本的情况,导出参数中的结果排序方式参数可以指定导出模型时文本的排列顺序,模型会根据排序设置输出结果到下一模块,以便后续字符拼接。单击导出,即可导出模型。
导出后的模型可在 Mech-DLK SDK 中使用,单击此处查看详细说明。