主要内容

训练自定义字体的光学字符识别

光学字符识别(OCR)应用程序训练光学字符识别函数来识别自定义语言或字体。您可以使用这个应用程序交互式地标签字符数据为OCR训练,并生成一个OCR语言数据文件使用光学字符识别函数。

打开OCR培训师App

  • MATLAB®将来发布:应用程序选项卡,在图像处理与计算机视觉,点击, OCR应用程序图标。

  • MATLAB命令提示符:输入ocrTrainer

火车OCR

  1. 在OCR训练器中,单击新会话打开“OCR训练会话设置”对话框。

  2. 输出设置,输入OCR语言数据文件的名称,并选择该文件的输出文件夹位置。指定的位置必须是可写的。

  3. 标记方法,要么手动标记数据,要么使用光学字符识别预先标记数据。如果您使用OCR,您可以选择预先安装的英语或日语,或者您可以下载额外的语言支持文件。金宝app

    请注意

    要下载语言支持文件,输入金宝appvision金宝appSupportPackages在MATLAB命令窗口。或者,在MATLAB上首页选项卡,环境部分中,点击附加组件>获得附加组件.然后使用搜索框找到“计算机视觉系统工具箱OCR语言数据”。

  4. 在训练过程中随时添加图像。训练器自动分割图像进行OCR训练。检查结果以验证预期的文本分割。改进分割,预处理您的图像使用图像裂殖体一旦图像被添加,你可以从训练图像视图中检查分割结果。

    要将OCR限制为特定的字符集,请选择字符集复选框并添加字符。

    请注意

    使用包含希望OCR识别的文本的训练图像。不要使用只有几个字符的训练图像。如果训练图像包含许多单词块,那么OCR训练效果最好。你可以使用insertText函数自动生成已知字体的训练图像。

    I = 0 (500500 3 ' uint8 ');textLines = ["some training text" "even more stuff to learn"];for i = 1:numel(textLines) i = insertText(i,[50 lineYLocation],char(textLines(i)),…“字体”、“LucidaSansRegular’,……“输入TextColor”字形大小,16日,“白色”,…“BoxOpacity”,0);% increment到下一行lineYLocation = lineYLocation + 20;最终图imshow(我)
  5. 删除任何有噪声的图像。为了提高分割结果,您可以绘制一个感兴趣的区域来选择图像的一部分。显示屏显示原始图像在左边,编辑后的图像在右边。当您完成时,单击接受所有

  6. 修改从角色视图窗口中提取的样本。

    • 要校正样本,在角色视图窗口中选择一组样本,并使用性格标签字段。

    • 若要将某个示例从训练中排除,请右键单击该示例并选择将该示例移动到未知的类别。未知样本列在数据浏览器窗口的顶部,不用于训练。

    • 如果包围框剪切了一个字符,双击该字符并在提取它的图像中修改它。

  7. 修改样本后,单击火车.当培训师完成培训后,应用程序创建一个OCR语言数据文件,并将其保存到指定的文件夹中。

应用程序控制

会话

启动新的会话、打开已保存的会话或向当前会话添加会话。您还可以保存会话并为其命名。会话保存为MAT文件。

添加图片

添加图片。您可以在开始新会话或接受当前图像集合后添加图像。

设置

设置或更改字体显示。

编辑框

选择包含所选字符的图像,以及包围框。您可以创建其他区域、合并、修改或删除现有图像。要删除ROI,请使用删除关键。

火车

从会话中创建OCR数据文件。使用.traineddata文件与光学字符识别函数,设置“语言”财产光学字符识别函数,并遵循自定义语言的说明。

生成函数

创建用于验证培训结果的自动生成评估功能。

请注意

在运行OCR Trainer应用程序之前,检查您的机器是否只有一个Tesseract安装。如果有多个Tesseract安装,删除额外的安装并重新启动MATLAB来运行OCR Trainer应用程序。否则,当你点击Train按钮时,应用程序返回错误“Not enough input arguments”。

另请参阅

|