6
10

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Pythonで使えるOCRライブラリまとめ

Posted at

はじめに

皆さんこんにちは!ぽこちゃんです

他の記事も投稿してますし、Xではデータサイエンス系、エンジニアリングに関連した
情報を発信しているのでぜひみてってください!

今回はインターンにてPythonでOCRをする機会があって
調査したのでまとめてみました!

ライブラリの選定基準

今回の選定基準は以下の通りです

  • モデル
    • githubにレポジトリが公開されている
    • 商用利用可能
    • 英語、数字の検出ができる
    • 日本語の検出ができる
    • 文字検出(Scene Text Detection)と文字列分類(Scene Text Recognition)両方実施できる
    • 最大限精度が良い
      • 追加訓練可能
  • API
    • 商用利用可能
    • セキュリティについて問題ない
    • 料金
    • 英語、数字の検出ができる
    • 日本語の検出ができる
    • 文字検出と文字列分類両方実施できる
    • 最大限精度が良い
      • 追加訓練可能

OCRライブラリ一覧

モデル名 githubリンク 商用利用可能か 英語・数字の検出は可能か 日本語の検出は可能か 文字検出が可能か 文字列分類は可能か
PaddleOCR  https://github.com/PaddlePaddle/PaddleOCR ○(Apache-2.0)
EasyOCR https://github.com/JaidedAI/EasyOCR ○(Apache-2.0)
Tesseract https://github.com/tesseract-ocr/tesseract ○(Apache-2.0)
manga-ocr https://github.com/kha-white/manga-ocr ○(Apache-2.0)
mmocr https://github.com/open-mmlab/mmocr ○(Apache-2.0) ?(試していない)

モデル詳細

  • モデルの詳細
    • Paddleocr

    • Tesseract

      • Tesseract4は行認識に特化したLSTMベースのocrモデル
      • Tesseract3は文字パターンを認識することで動作するモデル
      • 100以上の言語をサポート
      • PNG、JPEG、TIFFを含む様々な画像フォーマットをサポート
      • Tesseractは様々な出力フォーマットもサポート: プレーンテキスト、hOCR(HTML)、PDF、不可視テキストのみのPDF、TSV、ALTO。
      • モデルの追加訓練可能
      • 精度面での記載なし
    • easy-ocr

      • 80以上の言語をサポート
      • モデルの追加訓練可能
      • 手書き文字のサポート
      • さまざまな用途に適用可能(カスタマイズが可能で、特定の用途やニーズに合わせて調整できる)
    • mmocr

      • テキスト検出やテキスト認識だけでなく、キー情報抽出のような下流のタスクもサポート
      • MMOCRのモジュラー設計により、ユーザーは独自のオプティマイザー、データ・プリプロセッサー、バックボーン、ネック、ヘッド、ロスなどのモデル・コンポーネントを定義可能
    • manga-ocr

      • マンガのテキストを上手く扱えるように学習されたモデル
      • 縦書きにも対応、ふりがなつきの文字、画像の上に表示されている文字、さまざまなフォント、低画質画像
      • 他の種類の印刷された文字にはきちんと対応できるが、手書きのテキストはおそらく扱えない
      • TransformerのVision Encoder Decoderフレームワークで構築されたカスタムエンドツーエンドモデルを使用
      • マンガOCRは、1回のフォワードパスで複数行のテキストを認識することをサポートしているため、マンガに見られるテキストバブルを行に分割することなく、一度に処理することができる
      • 学習済みモデルあり
      • モデルの追加訓練可能か  不明

参考資料

6
10
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
10

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?