💭

NDL-DocLデータセットとYOLOv5を用いたレイアウト抽出モデルを作成しました。

2022/07/25に公開

概要

NDL-DocLデータセットとYOLOv5を用いたレイアウト抽出モデルを作成しました。

https://github.com/ndl-lab/layout-dataset

https://github.com/ultralytics/yolov5

本モデルは以下のノートブックからお試しいただけます。

https://colab.research.google.com/github/nakamura196/ndl_ocr/blob/main/NDL_DocLデータセットとYOLOv5を用いたレイアウト抽出モデル.ipynb

本記事は、上記の学習過程の備忘録です。

データセットの作成

Pascal VOC形式のNDL-DocLデータセットを、YOLO形式に変換します。この方法については、以下の記事を参考にします。Pascal VOC形式からCOCO形式への変換に加えて、COCO形式からYOLO形式への変換を追加しています。

https://zenn.dev/nakamura196/articles/c039a9aeb6c3c3

学習

以下のページにカスタムデータの学習方法が記載されています。

https://github.com/ultralytics/yolov5/wiki/Train-Custom-Data

以下のノートブックにも学習方法が記載されています。

https://colab.research.google.com/github/ultralytics/yolov5/blob/master/tutorial.ipynb

入力画像のサイズを1024、バッチサイズを4、エポック数を300に設定した結果、以下のような結果が得られました。なお、データセットをtrain 80%, validation 10%, test 10%に分けています。

推論

上述した通り、以下のノートブックから推論をお試しいただけます。

https://colab.research.google.com/github/nakamura196/ndl_ocr/blob/main/NDL_DocLデータセットとYOLOv5を用いたレイアウト抽出モデル.ipynb

以下、推論結果の例です。うまく認識できた例のみを掲載しています。

『源氏物語』(東京大学所蔵)

『源氏物語』(京都大学所蔵)

『源氏物語』(九州大学所蔵)

まとめ

レイアウト認識の結果を踏まえ、次は行内の文字認識に取り組みたいと思います。

Discussion