ヤクとアヒル

日常の問題を解決したときにつけるログ

日本語のドキュメントをOCRして保存するのに便利なストレージサービスを探す

大学のレポートや配布されたA4ペーパーの資料など、様々な紙のドキュメントがありますが、わたしは全て電子化して保管しています。また教科書等も裁断してPDFや画像データにしています。このメリットは全てが検索可能になることです。つまり、次のようなワークフローになります。

  • 紙のメモをつくる/うけとる→スマホで撮影→ストレージに保存→メモを捨てる→必要になったら検索

ここで重要なのは、スマホで撮影した画像をアップロードした際にOCR(画像に含まれるテキストをコンピュータ上で扱える文字列に変換する技術)がかかること、またそれを検索できることです。今回は、それらができるストレージサービスのうち、Google DriveEvernoteについて比較しました。

結論:日本語のドキュメントをOCRして保存するのに適しているのはEvernote

  • Evernoteの日本語OCRは実用レベル
  • Google Driveに画像を上げたときに自動的にかかる日本語OCRは貧弱で実用レベルに達していない
    • Google Driveを利用しているとOCRという用語は2つの意味で利用される
      • 1.OCRを使って画像やPDFをGoogle Doc.に変換すること。
      • 2.OCRの結果を検索用のメタデータにすること
        • メタデータになっていると、例えばカレーの材料のメモを写真でアップロードしておけば、「カレー粉」と検索することでメモの写真が出てくる
    • 本文章でOCRというときは、常に2の意味で使う
      • 1の意味でのOCRでは、Google Driveは日本語も一応変換してくれる(精度はよくない)

OCRが利用できるストレージサービス

そのようなサービスはいくつもありますが、次の理由でEvenoteとGoogle Driveを比較しました。

検証

英語と日本語の含まれる幾つかの画像を比較してみます。なお、検証アカウントはEvernote premium(月額課金)のものと、G Suite(月額課金)のものです。
実際に触ってみると検証するまでもなくEvernoteのほうが圧倒的に日本語に強い(というかGoogle Driveが日本語の文章が含まれた画像を全く検索結果にだしてくれない)ことがわかりましたが、念のためいろいろ比較しました。 結論としては次表の結果になります。

OCRの認識精度

サービス名 日本語の文字列 英語の文字列
Evernote o o
Google Drive x o

英語の場合での挙動の比較:どちらも検索できる

画像の場合
歪んだ画像の場合

適当に撮影したために歪んでしまったHakkoの取説(日本語)のうちアラビア数字"A1519"がどこに含まれているのかを検索します。

Evernote
ヒットします。 https://gyazo.com/875a2500eacc5991b8dd43536b7efe5d

Google Drive
検索にヒットせず

ある程度整った画像の場合

今度はTOEICの試験結果の画像から、"TOEIC"という文字列を検索します

Evernote
場所までばっちりでています。 https://gyazo.com/a640a4650afb5e6b5b896b4760a45ff9

Google Drive
こちらもヒットします(なお、文字列の場所までは教えてくれません)。 https://gyazo.com/91c31ae344c2985ba6c618d6f90a7e38

PDFの場合

未検証。感覚値では画像と大差ない結果。

日本語の場合での挙動の比較:Google Driveは検索できない

画像の場合

Enernote
https://gyazo.com/92d7233dd18de5abeb79409be9b81fea

Google Drive
検索にヒットせず

PDFの場合

未検証。感覚値では画像と大差ない結果。

事前にOCRをかけた大きなファイル容量のPDFの場合:両方共検索はできない

自前でスキャンした本(97MB)を検索してみます。 注意:この本は自前でOCRをかけているものです

Enernote
PDF内部に含まれる文字列で検索した場合、PCクライアントで検索にヒットしました。Evernote25MB以上のPDFは検索対象に入らないとあるのですが、自前でOCRしている本なら問題なく検索できました。
スマホでやってみるとヒットしなかったのでキャッシュが残っているかどうかで検索結果が変わるようです(PDFをダウンロードしていれば検索結果に引っかかる)。

https://gyazo.com/b42e3edad837b94254ee5245a959f5eb

Google Drive
タイトルは当然検索にヒットします。しかし、今回検証に利用した本は「ベクトル」という文字列が含まれているのですが、その単語で検索しても本のPDFは検索結果にでませんでした。OCRして文字列を埋め込んでいても検索にヒットしないことがあるようです。
ただし、本を開いた状態で単語を検索することはできました。 https://gyazo.com/c9165153e0a86087c550b5be74f233d4

手書き文字の場合:Evernoteは検索できる

“回転"という文字列が含まれているレポートを検索してみます

Enernote
https://gyazo.com/e8ef9ca04a8f6c2463450cdfd17358f8

Google Drive
検索にヒットしませんでした

疑問点

  • Google Driveは文字列が埋め込まれているPDFに関しては日本語でも正しく検索結果が表示されるのに、事前にOCRをかけた自前でスキャンした本については検索結果にのらなかった。
    • 本文のOCR結果が検索インデックスにつかわれないことがあるということ。
    • 考えられる要因:ファイルサイズが大きい、文字列埋め込みの形式等

おまけ:今回検証しなかったOneDriveはいいかもしれない

iOSのアプリ「Office Lens」で生成したPDFは日本語もばっちりだったのでOneDrive期待できそうです。 (ためしに生成したPDFをGoogle Driveにあげてみたけど、検索はできなかった。上述の書籍のケースと同じ結果。) https://gyazo.com/2b44b28e509881e0b05144cdc430153a 図: office lensをつかって再生したPDFはOCRでテキスト情報が埋め込まれるためiBooks等のアプリで内容を検索できる

スポンサーリンク