OCR(文字認識)アドオンの日本語化
文字認識アドオン ocr_0.20120529.01.nvda-addon は OCR Settings で Japanese を選択できますが、NVDA-R を押しても Running OCR から Done まで非常に長く時間がかかります。
ログを見ると core frozen となっているので、エンジンがハングしている可能性もあります。
WARNING - watchdog._watcher (00:17:22): Core frozen in stack: File "nvda.pyw", line 155, in <module> File "core.pyo", line 373, in main File "wx\_core.pyo", line 8010, in MainLoop File "wx\_core.pyo", line 7306, in MainLoop File "core.pyo", line 351, in Notify File "queueHandler.pyo", line 76, in pumpAll File "queueHandler.pyo", line 47, in flushQueue File "scriptHandler.pyo", line 133, in _queueScriptCallback File "scriptHandler.pyo", line 165, in executeScript File "C:\Users\nishimotz\AppData\Roaming\nvda\addons\ocr\globalPlugins\ocr\__init__.py", line 189, in script_ocrNavigatorObject File "subprocess.pyo", line 506, in check_call File "subprocess.pyo", line 493, in call File "subprocess.pyo", line 945, in wait
バックエンドのエンジン Tesseract は日本語に対応しているという情報もあるので、引き続き検証します。
OCRアドオンは現在下記のコミュニティページからダウンロードできます。
http://addons.nvda-project.org/addons/ocr.ja.html
昨年7月のコメントのバージョンから変わっていないのですが Windows 8 (64ビット) + 2012.3.1jp で再度確認しました。
http://files.nvaccess.org/nvda-addons/ocr_0.20120529.01.nvda-addon
アドオンファイルそのものが約70メガバイトとかなり容量が大きいです。
メニューは英語ですが、設定ダイアログの言語の名前は日本語で出てきます。
私が確認した使い方を紹介します。
日本語の認識性能には期待しない方がよいです。
日本語の Apple のページ http://www.apple.com/jp/ の一番上のメニュー画像の認識結果例
辟 駕 | スI・・ア | Mac | ipod | iphone | ipad | rrunes | サボーl丶 广
条件がよければ性能は上がるでしょうが、代替テキストのない画像で、文字認識されやすい画像がどのくらいあるか、わかりません。
英語だと実用的かも知れません。
使用中にブラウザが不安定になったり、NVDA が再起動することがありましたが、昨年7月のときほど不安定さは感じなかったです。
NVDAのバージョンアップによる安定化、マシン性能、OSの違いなどによって状況は変わりそうです。
いずれにせよ、そろそろ翻訳に着手したいと思います。
OCRプラグインのローカライズを手作業でやるのか、翻訳システムに移行するのか、本家の議論が終わっていない(終わりそうな気配はある)状況です。
http://www.nvda-project.org/ticket/2744
要約すると。。。
翻訳システムの担当者:
自動システムに統合するなら、マニュフェストファイルも含めて、すべての作業を PO ファイルでコミットできるように、標準のアドオンテンプレート
https://bitbucket.org/nvdaaddonteam/addon-template
を使って欲しい。
OCR プラグインの開発者:
すでに
http://bzr.nvaccess.org/nvda-ocr/
にレポジトリがあり、ここにいくつかローライズのファイルも入っている。
移行してもらえればいいが Tesseract の組み込みなど特別な手順でビルドをしているので簡単にはテンプレートに合わせられない。
nvda-translations で発言したら Jamie さんからお返事。
翻訳システムに移行する方向で作業する予定。
アドオンの manifest ファイルについては仕様変更の可能性あり。
http://www.nvda-project.org/ticket/2819
いずれにせよ Tesseract のバージョンを上げて改良版がリリースされるときに日本語ロケールをコミットできたらいいと思っています。
NVDA の OCR アドオンのベースになっている Tesseract ですが、下記のページに、日本語向けのチューニング方法が書かれていて、20%くらいから70%くらいに認識率が上がる、とされています。
http://code.google.com/p/tesseract-ocr/wiki/ControlParams
OCR アドオンの改良に取り組んでみたらいいかも知れません。
アドオンそのものは下記で配布されています: http://www.nvda-project.org/wiki/AddOns
部分は、 http://addons.nvda-project.org/ に移行済みですかね。
本家 2017.3 が Windows 10 文字認識に対応し、本家が OCR アドオンをこれ以上改良する見込みもなさそうであるため、 このチケットをクローズします。
アドオン機能の導入をきっかけに、文字認識アドオンの国際化と改良が積極的に進み始めています。
アドオンそのものは下記で配布されています:
本家にリポジトリができました: http://bzr.nvaccess.org/nvda-ocr
すでに10ヶ国語のロケールが提供されていますが、まだ日本語ロケールを提出していません。
ロケールだけでなく文字認識機能そのものについても日本語対応を検討するためにブランチを作りました。
lp:~nishimotz/nvdajp/nvda-ocr
本家にそろえるなら、プロジェクトを nvda-ocr にするべきですが、いまはブランチ扱いにしています。
とりあえずこのチケットは「ロケールの日本語化」を扱います。