OCRopus

OCRopus
開発者トーマス・ブリューエル、DFKI
初回リリース2007年4月9日[ 1 ] (2007年4月9日
安定版リリース
1.3.3 [ 2 ] [ 3 ] [ 4 ] ウィキデータで編集する / 2017年12月16日 (2017年12月16日
プレビューリリース
オクロプス4
書かれたC++Python
オペレーティング·システムFreeBSDLinuxMac OS X
タイプ光学文字認識
ライセンスApacheライセンスv2.0
Webサイトオクロプス.github .io
リポジトリ

OCRopus は、コマンドライン インターフェイスを使用した非常にモジュール化された設計で、Apache License v2.0に基づいてリリースされた無料のドキュメント分析および光学式文字認識(OCR) システムです。

OCRopus は、ドイツのカイザースラウテルンにあるドイツ人工知能研究センターの Thomas Breuel 氏の指導の下で開発され、 Googleの支援を受けています。

説明

OCRopusは、 Google BooksInternet Archive 、図書館などの大規模な書籍デジタル化プロジェクトでの使用を特に想定して設計されました。多数の言語とフォントがサポートされています。[ 5 ]また、デスクトップアプリケーションやオフィスアプリケーション、視覚障害者向けのアプリケーションにも使用できます。

OCRopus には、次の機能を実行する主要コンポーネントがあります。

これらのコンポーネントには、単一または複数のスクリプトが用意されています。モジュール式のプログラミングアプローチにより、個別のワークフローを使用し、個々のステップを交換することができます。

OCRopusには、デフォルトで英語テキスト用のモデルとフラクトゥール文字テキスト用のモデルが付属しています。これらのモデルは文字体系を参照しており、実際の言語とはほとんど独立しています。[ 6 ]新しい文字や言語の変種は、最初から学習することも、後から追加することもできます。

最近のテキスト認識はリカレントニューラルネットワークLSTM )に基づいており、言語モデルを必要としません。これにより、言語に依存しないモデルの学習が可能になり、英語、ドイツ語、フランス語で同時に良好な認識結果が得られています。[ 7 ]ラテン文字に加えて、サンスクリット文字ウルドゥー語デーヴァナーガリー文字ギリシャ語などの他の文字でも結果が得られています。

適切なトレーニングを行うことで、非常に高い検出率を達成できます。この追加の作業は、他のOCRソフトウェアが対応していない、現在では一般的ではない難しい文書や文字の場合に特に価値があります。[ 8 ] [ 9 ]

歴史

2007年4月9日、OCRopusはGoogleが後援する高度なOCR技術開発プロジェクトとして発表されました。[ 1 ]資金は3年間提供され、特にDFKIカイザースラウテルン大学の博士課程およびポスドク研究員のポストに充てられました。その見返りとして、OCRopusはGoogleブック検索の自動テキスト認識にも使用されました。[ 10 ]産学連携を促進するため、当初からオープンソースライセンスによるライセンス供与が行われました。[ 11 ] OCRopusは、アンドリュー・W・メロン財団BMBFからも資金提供を受けています。[ 12 ]

最初のアルファ版0.1は2007年10月22日にリリースされ、その後2007年12月から2009年5月にかけて複数のプレリリースがリリースされ、2010年3月に安定版0.4.4に到達しました。 [ 13 ]当初、このソフトウェアはC++PythonLuaで開発され、ビルドシステムにはJam使用されていました。Pythonモジュールのソースコードが完全にリファクタリングされ、バージョン0.5(2012年6月)がリリースされました。[ 14 ]

当初、Tesseractは唯一のテキスト認識モジュールとして使用されていました。2009年(バージョン0.4)以降、Tesseractはプラグインとしてのみサポートされ、代わりに独自開発のテキスト認識器(セグメントベース)が使用されました。[ 15 ]この認識器は、認識ステップ後の言語モデリングのためにOpenFST [ 16 ]と併用されました。2013年以降、再帰型ニューラルネットワークLSTM)による認識機能が追加され、2014年11月にバージョン1.0がリリースされて以来、これが唯一の認識器となっています。[ 17 ] [ 18 ]

ソースコードはGitHub上で管理されており、開発者コミュニティによって保守・開発されています。[ 19 ] OCRopusの現在のバージョンは1.3.3(2017年12月)です。[ 20 ]

文字起こしプラットフォームeScriptoriumで使用されているOCRソフトウェアkrakenは、OCRopusのフォークです。右から左に書く文字のサポートが追加されました。[ 21 ] krakenをベースにした別のフォークとしてCalamariがあります。

トーマス・ブリューエルは後継のOCRopus 2も開発し、OCRopus 4の開発にも積極的に取り組んでいる。[ 22 ]

使用法

OCRopusワークフロー
OCRopus からの個別のコマンドライン ツールのワークフロー図。

OCRopusはコマンドラインから使用できます。インストール後、入力画像を指定して起動できます。認識したテキストは標準出力に直接出力されるか、 hOCRHTMLベース)コードとしてファイルに書き込まれ、そこから検索可能なPDFに変換されます。より正確な制御が必要な場合は、コマンドラインでオプションを指定して特定の操作(例:単一行の認識)を実行することができます。[ 23 ]

画像内のテキストを認識するための OCRopus 呼び出しの例:

# 2値化を実行する ocropus-nlbin テスト/ersch.png -o ブック # ページレイアウト分析を実行する ocropus-gpageseg ブック/0001.bin.png # テキスト行認識を実行する(フラクトゥールモデルを使用) ocropus-rpred -m models/fraktur.pyrnn.gz book/0001/*.bin.png # HTML出力を生成する ocropus-hocr book/0001.bin.png -o book/0001.html 

他のツールはOCRopusのトレーニング部分に重点を置いています。OCRopusには、ラテン文字、ギリシャ文字、キリル文字、インド文字からテキストを抽出するモデルがあります。[ 24 ]

参考文献

  1. ^ a b Breuel, Thomas (2007年4月9日). 「OCRopusオープンソースOCRシステムの発表」 . Google Developers Blog . 2017年12月29日閲覧。
  2. ^ 「リリース 1.3.3」 2017年12月16日. 2018年3月15日閲覧
  3. ^ 「リリース 1.3.3」 2017年12月16日. 2020年2月19日閲覧
  4. ^ 「リリース 1.3.3」 2017年12月16日. 2020年8月1日閲覧
  5. ^ Breuel, Thomas (2009). 「OCRopus OCRシステムの最近の進歩」.国際多言語OCRワークショップ(MOCR '09)議事録. ニューヨーク、ニューヨーク州、米国: ACM. pp. 2:1–2:10. doi : 10.1145/1577802.1577805 . ISBN 9781605586984. S2CID  16920122 .
  6. ^ 「モデル」 . ocropy wiki . 2018年1月5日閲覧
  7. ^ Ul-Hasan, Adnan; Breuel, Thomas M. (2013). 「LSTMネットワークを用いた言語非依存OCRの構築は可能か?」4回多言語OCR国際ワークショップ(MOCR '13)の議事録米国ニューヨーク州ニューヨーク:ACM。pp. 9:1–9:5。doi : 10.1145 / 2505377.2505394。ISBN 9781450321143. S2CID  15054318 .
  8. ^ウーヴェ、スプリングマン (2016 年 12 月 1 日)。 「ドリュッケのためのOCR」。Informatik-Spektrum (ドイツ語)。39 (6): 459–462 .土井: 10.1007/s00287-016-1004-3ISSN 0170-6012S2CID 26680054  
  9. ^シミスティラ、F.ウル・ハッサン、A.パパヴァシリュー、V.ガトス、B.カツロス、V.リウィッキー、M. (2015 年 8 月)。 「LSTM ネットワークを使用した歴史的なギリシャ語多調文字の認識」。2015 年第 13 回文書分析と認識に関する国際会議 (ICDAR)。 pp.  766–770 . doi : 10.1109/icdar.2015.7333865ISBN 978-1-4799-1805-8. S2CID  39049104 .
  10. ^ “Research project OCRopus” . dfki.de. 2018年1月6日時点のオリジナルよりアーカイブ2018年1月5日閲覧。
  11. ^ Breuel, Thomas M. (2008年1月28日). 「OCRopus オープンソースOCRシステム」. Yanikoglu, Berrin A; Berkner, Kathrin (編). Document Recognition and Retrieval XV . Document Recognition and Retrieval XV. Vol. 6815. pp. 68150F–68150F–15. Bibcode : 2008SPIE.6815E..0FB . CiteSeerX 10.1.1.99.8505 . doi : 10.1117/12.783598 . S2CID 14728635 .  
  12. ^ 「ocropusプロジェクトのウェブサイト」。Google Project Hosting 。2019年1月。2012年12月24日時点のオリジナルよりアーカイブ
  13. ^ 「Older versions - ocropy」 . GitHub . 2018年1月5日閲覧
  14. ^ "OCRopus 0.5" . Google グループ. 2012年6月2日.
  15. ^ OCRopus はデフォルトでは Tesseract にリンクしません
  16. ^ OpenFST 公式ウェブサイト
  17. ^ "ocropy - release v1.0" . GitHub . 2014年11月2日. 2018年1月5日閲覧
  18. ^ Breuel, TM; Ul-Hasan, A.; Al-Azawi, MA; Shafait, F. (2013年8月). 「LSTMネットワークを用いた印刷英語およびフラクトゥール文字の高性能OCR」. 2013年第12回国際文書分析認識会議. pp.  683– 687. doi : 10.1109/icdar.2013.140 . ISBN 978-0-7695-4999-6. S2CID  7244356 .
  19. ^ 「ocropy: Pythonベースのドキュメント分析とOCRツール」GitHub 、 2018年1月5日閲覧
  20. ^ 「ocropyのリリース」 GitHub 2018年1月5日閲覧
  21. ^ 「Kraken - 人文科学のためのユニバーサルテキスト認識装置」 。 2024年1月23日閲覧
  22. ^ 「OCRopus OCRシステムと関連ソフトウェア」 . GitHub . 2021年8月27日閲覧
  23. ^ "ocropy wiki" . GitHub . 2017年12月30日閲覧
  24. ^ "ocropy models" . GitHub . 2018年3月13日閲覧