JavaScriptでどこまでできるのか、そんな挑戦が去年くらいからはじまっています。その鍵を握っている技術がEmscriptenです。C/C++が生成するLLVMビットコードからJavaScriptを出力できるソフトウェアです。 既に様々なソフトウェアがJavaScriptで動作するようになっていますが、今回はOcrad.jsを紹介します。オープンソースのOCRエンジンであるOcradをJavaScriptに移植したソフトウェアです。 OCRという時点で何が起きるのかは分かると思いますが、こちらがデモページです。 既にこの時点で文字認識が行われています。中央にある大きな文字は画像で、上にあるテキストがその認識結果になります。 任意の画像をドロップしてOCR処理を行わせることができます。 余計な記号があると余計な認識が行われてしまいますが、テキスト部分の認識精度は悪くないようです。 大文字小文字もちゃんと認識されています。 まぁ当たり前と言いますが、日本語は認識できません…。 日本語はかなり残念な結果になります。 コンピュータで書かれた文字であれば認識精度は悪くないように感じます。手書きなどは精度が落ちると思われますが、スクリーンショットなどの画像から情報をピックアップすると言った目的であれば使えるのではないでしょうか。 実行速度もそれほど遅くないのが注目です。これくらいの速度であればWebアプリケーションの中で活用してみても悪くないと思います。 Ocrad.jsはJavaScript製、GPL v3のオープンソース・ソフトウェアです。 Ocrad.js - Optical Character Recognition in Javascript antimatter15/ocrad.js