Posts

Showing posts from May, 2018

画像やpdfの文字認識を行うtesseractを検証してみる

大量のpdf...しかも紙をスキャンしたもので完全なる画像... に書かれた文字(注 手書きの文字ではなく、印刷文字です)をテキスト化する必要があったのですが、 全部読んで手入力するとか時間の無駄遣いすぎるので、 tesseractを使って自動で認識させてみました。 tesseractとは https://github.com/tesseract-ocr/ オープンソースのOCRエンジン。 今回のネタは〜の使い方ではありませんので、インストール方法とかは省きます。 Linux, Mac, Windowsで使うことができます。 CUI(コマンドライン、ターミナル)で使うことができるので、 複数枚を一気にやりたい時なんかに便利です。 現在最新安定板は3.05ですが、4.00 alphaを使いましょう。 4.00は内部でLSTMが使われており、認識精度が大幅に向上しています。 ただしalpha版の為、3.xで使えていたホワイトワード/ブラックワードなどが使えない問題があります。 しかしその問題を吹き飛ばすくらい精度が上がっているのも確かです。 使い方は簡単で tesseract <画像ファイル名> <出力ファイル名(.txtは自動付与される)> とするだけです。 僕は今回(LSTMが得意と思われる)手紙のような文章、ではなく、 シリアル番号、日付日時(日本のフォーマット)を読んだのですが、 80%以上の精度が出ました。 これは「完全一致」の精度です(1文字間違っていたらアウト) さて、ここからは本筋とは離れますが、実はtesseractはpdf入力には対応していません。 まずはpdfをpngに変換しないとなのですが、 この変換も自動化しないと意味がないので、今回はImageMagickを使って一括変換しました。 http://imagemagick.org/script/index.php これもLinux, Mac, Windows他で使うことができます。 またpdfを扱うにはghostscriptも必要です。 https://www.ghostscript.com これでpdfをpngに変換できるようにな

勉強しないと友人を失ってしまう

若干ポエムのような題名ですが、事実です。 もしかすると読者の皆さんにとっては当然のことなのかもしれませんが、 僕のような天才でも勉強好きでもないタイプには、 大きく実感できることなのです。 実際にやっていることは、 主に読書...後はドキュメンタリーを観たり、プログラミングをしたりという感じです。 実は読書はそもそも好きではありませんし、 「勉強」の為の本は学術だったり、ドキュメンタリーするので、 読んで面白い小説とかではありません。正直苦痛です... 上記に書いたように僕は意識的に勉強(学習という言い方かもしれませんが)をしようと思わないと、 何かを学べないタイプですので意識して頑張っているつもりです。 不勉強が友人を失うことになる理由なのですが、 就職したり家庭を持ったりすると、僕も友人も皆、自由時間が極端に少なくなります。 この少ない自由時間を人に会うことに充てるのであれば、 当然「会って意味のある人」が選ばれるわけです。 逆にあなたもそのようにして会う人を選ぶようになります。 ちょっと悲しい話ですけどね... 今学生の方は、仲が良いならそんなことないのではと思われるかもですが、 事実そうなっていきます。 (ちなみに女性の世界は知りません。少なくとも男性社会はそうです) 仲が良いことと、実際会うことは別物ですからね。 ということで勉強しましょう...