はじめに
こちらで、MMOCRの文字認識のタスクの学習方法について解説しましたが、用意されているモデルは英数字記号のみの文字認識しか行うことができず、日本語の文字認識は行うことができません。
以下のコンフィグファイルでは、中国語用の辞書が用意されておりましたので、同じ形式で辞書を作成し、日本語などの文字認識を行う方法について解説します。
利用したコンフィグファイル
- sar_r31_parallel_decoder_chinese
使い方
前回同様以下にgoogle collaboratory上で動くサンプルをgithubで用意しています。
サンプル
辞書ファイルの利用部分以外は、ほぼ前回と同じ内容なので、割愛します。
今回は、以下の部分で利用する辞書ファイル部分の作成方法になります。
## アノテーションフォルダの設定
# 元になるテキストファイル
train_label_path = #訓練用ラベルファイルのパス
val_label_path = #検証用ラベルファイルのパス
# 画像ファイルのパス
train_img_path = #訓練用画像フォルダのパス
val_img_path = #検証用画像フォルダのパス
# ルートフォルダ
root_path = #ルートフォルダのパス
# 作業フォルダ(学習時のモデル出力先(エポック毎に出力))
work_path = #作業フォルダのパス
# 辞書ファイルのパス
dict_path = # 辞書ファイルのパス
辞書ファイルの形式
以下のような感じで、利用する文字毎に改行したテキストファイル準備するだけです。
label.txt
1
2
3
.
.
あ
い
.
.
阿
位
.
.
日本語OCRを作成したい場合など、日本で利用する漢字全体をモデルに含めた辞書ファイルを作成するとモデル容量も増え、学習時間も大量になるため、学習データに含まれる文字のみを辞書に含めるといった内容が現実的かと思います。