DAY13:玉山人工智慧挑战赛-中文手写字辨识(资料前处理)

问题及解决方法

  • 资料集问题:

    • 图档没有文字却有标签。
    • 一张图片多个文字。
    • 标签错误。
    • 图档的字不明确。
  • 解决方法:

    • 我们先用抽样的小量样本(这里我们讨论後只采取3000张图片样本),後采用於物件侦测的YOLOv4帮我们自动框出中文字。
    • 标签错误则手动标签更正。
    • 图档文字不明确直接删除。

实作内容

  • LabelImg
    • 有两种方法可以执行,可用python或下载exe执行,这边我直接去官网下载exe来执行。

      • 载完打开exe後,需要设定训练集的路径以及标记後的XML档储存路径。
          

      • 再来要设定自动储存,勾选auto save。

      • 之後就来框选中文字,将他标记为word。

      • 框完在你储存XML的资料夹内会产生XML档。

      • XML档不要有中文出现。

  • Colab及模型成效
    • 接下来就是上去Colab上训练我们的YOLOv4模型,Colab的训练主要由我们组员执行,他也有参加铁人赛也写得非常详细,可以去参考我的队友midnight_tiredYOLOv4及Colab训练的文章,这里就不多加阐述。大家也多多支持我的队友,期待他每天的文章吧!

图档分类

  • 用建好的YOLOv4模型来分类我们的资料集,主要会分为3类资料夹:

    • 一个字(一个框)

    • 两个字以上(多个框)

      • 这是完美切割成两个字的样本。

      • 其中也有切割不成功的样本。

    • 空白,没文字

  • 主办单位说,正式比赛只会有一个清楚的字出现,故我们讨论出,只针对一个字的资料夹去做处理及训练,两个字及没有文字的资料夹则暂不处理。

  • 在对一个字的资料夹做处理的时候发现其中有些问题:

    • 标签错误

       解决:采取人工重新标签

    • 字体被切一半

        解决:例如"洋"的图片是羊,也是采取人工标签为"羊"

    • 字不在官方要的800字内

        解决:利用python程序将标签在非800字内的移入800字外的资料夹


今日小结

  • 详细程序码可以参阅,我队友的文章(传送门)
  • 明天要来处理图片的红色线条问题,例如下图,

    以及将图片做灰阶,我们认为文字不分颜色,故灰阶对於文字的图像辨识训练会有较好的效果。
  • 因为我们是队友,所以资料前处理部分会有很多重叠之处,做的方法甚至code都几乎一模一样,敬请见谅。

<<:  Anthos attach cluster

>>:  [第十四天]从0开始的UnityAR手机游戏开发-如何在辨识图卡时拨放影片03

Day12:今天来谈一下Microsoft-Defender-for-Endpoint的设定及管理自动化

在Microsoft Defender for Endpoint中有提供自动化调查和补救功能。 自动...

[Day8] 实作 - 敌人篇2

先开一只新程序叫做ActionBattle_Enemy.js 并且将其引入 写下 (请先将this....

Day 26 : 插件篇 05 — 做好笔记备份,使用 Obsidian Git自动备份笔记到 Github

前言 我在《操作基础篇 04 — 做好笔记备份 ,使用 iCloud 和 Google Drive ...

Day3 - 登入登出相关问题

在安装完Shioaji套件之後,我们就可以开始使用api的功能了。 第一步当然是要登入我们的帐户啦,...

卡夫卡的藏书阁【Book11】- Kafka Connect 2

Step3. 新增 Source connector 可以查看一下当前的 connector $ c...