日本語のドキュメントをOCRして保存するのに便利なストレージサービスを探す
大学のレポートや配布されたA4ペーパーの資料など、様々な紙のドキュメントがありますが、わたしは全て電子化して保管しています。また教科書等も裁断してPDFや画像データにしています。このメリットは全てが検索可能になることです。つまり、次のようなワークフローになります。
- 紙のメモをつくる/うけとる→スマホで撮影→ストレージに保存→メモを捨てる→必要になったら検索
ここで重要なのは、スマホで撮影した画像をアップロードした際にOCR(画像に含まれるテキストをコンピュータ上で扱える文字列に変換する技術)がかかること、またそれを検索できることです。今回は、それらができるストレージサービスのうち、Google DriveとEvernoteについて比較しました。
結論:日本語のドキュメントをOCRして保存するのに適しているのはEvernote
- Evernoteの日本語OCRは実用レベル
- Google Driveに画像を上げたときに自動的にかかる日本語OCRは貧弱で実用レベルに達していない
- Google Driveを利用しているとOCRという用語は2つの意味で利用される
- 本文章でOCRというときは、常に2の意味で使う
- 1の意味でのOCRでは、Google Driveは日本語も一応変換してくれる(精度はよくない)
OCRが利用できるストレージサービス
そのようなサービスはいくつもありますが、次の理由でEvenoteとGoogle Driveを比較しました。
- Evernote
- スキャンした PDF を検索する際のヒント – Evernote ヘルプ&参考情報
- 厳密にはストレージではない
- Google Drive ー support.google.com
- Dropbox
- ビジネスユーザのみ利用可能なので除外(ビジネスは3人以上のみ利用可)
- Document scanning – Dropbox
- Gyazo(キャプチャ共有サービス)
- 自動文字読み取り機能をリリースしました!!(Proユーザーのみ) - Gyazo Blog
- 複数枚アップロードやまとめて見る際の機能が貧弱なので除外
- 10ページ以上あるようなドキュメントを管理できる気がしない
- そもそもPDFはアップロードできない
- OneDrive
- まともに動くと期待できるが、筆者が日常的に利用していなかったため今回は除外。
検証
英語と日本語の含まれる幾つかの画像を比較してみます。なお、検証アカウントはEvernote premium(月額課金)のものと、G Suite(月額課金)のものです。
実際に触ってみると検証するまでもなくEvernoteのほうが圧倒的に日本語に強い(というかGoogle Driveが日本語の文章が含まれた画像を全く検索結果にだしてくれない)ことがわかりましたが、念のためいろいろ比較しました。
結論としては次表の結果になります。
OCRの認識精度
サービス名 | 日本語の文字列 | 英語の文字列 |
---|---|---|
Evernote | o | o |
Google Drive | x | o |
英語の場合での挙動の比較:どちらも検索できる
画像の場合
歪んだ画像の場合
適当に撮影したために歪んでしまったHakkoの取説(日本語)のうちアラビア数字"A1519"がどこに含まれているのかを検索します。
Evernote
ヒットします。
Google Drive
検索にヒットせず
ある程度整った画像の場合
今度はTOEICの試験結果の画像から、"TOEIC"という文字列を検索します
Evernote
場所までばっちりでています。
Google Drive
こちらもヒットします(なお、文字列の場所までは教えてくれません)。
PDFの場合
未検証。感覚値では画像と大差ない結果。
日本語の場合での挙動の比較:Google Driveは検索できない
画像の場合
Google Drive
検索にヒットせず
PDFの場合
未検証。感覚値では画像と大差ない結果。
事前にOCRをかけた大きなファイル容量のPDFの場合:両方共検索はできない
自前でスキャンした本(97MB)を検索してみます。 注意:この本は自前でOCRをかけているものです 。
Enernote
PDF内部に含まれる文字列で検索した場合、PCクライアントで検索にヒットしました。Evernoteは25MB以上のPDFは検索対象に入らないとあるのですが、自前でOCRしている本なら問題なく検索できました。
スマホでやってみるとヒットしなかったのでキャッシュが残っているかどうかで検索結果が変わるようです(PDFをダウンロードしていれば検索結果に引っかかる)。
Google Drive
タイトルは当然検索にヒットします。しかし、今回検証に利用した本は「ベクトル」という文字列が含まれているのですが、その単語で検索しても本のPDFは検索結果にでませんでした。OCRして文字列を埋め込んでいても検索にヒットしないことがあるようです。
ただし、本を開いた状態で単語を検索することはできました。
手書き文字の場合:Evernoteは検索できる
“回転"という文字列が含まれているレポートを検索してみます
Google Drive
検索にヒットしませんでした
疑問点
- Google Driveは文字列が埋め込まれているPDFに関しては日本語でも正しく検索結果が表示されるのに、事前にOCRをかけた自前でスキャンした本については検索結果にのらなかった。
- 本文のOCR結果が検索インデックスにつかわれないことがあるということ。
- 考えられる要因:ファイルサイズが大きい、文字列埋め込みの形式等
おまけ:今回検証しなかったOneDriveはいいかもしれない
iOSのアプリ「Office Lens」で生成したPDFは日本語もばっちりだったのでOneDrive期待できそうです。 (ためしに生成したPDFをGoogle Driveにあげてみたけど、検索はできなかった。上述の書籍のケースと同じ結果。) 図: office lensをつかって再生したPDFはOCRでテキスト情報が埋め込まれるためiBooks等のアプリで内容を検索できる