Eagleにある画像をOCR結果で検索できるようにする

2023-02-06

背景

Eagleは使いやすい画像管理ソフトウェアです。 快適な操作性を持ち、フォルダ・タグといった分類を行なって検索ができるため、大量の画像を管理したい場合に重宝します。

ただし、EagleはOCR機能が無いため、画像に含まれる文字で検索することができません。 書かれている文字をNotes...に記載することで検索できるようになりますが、いちいち入力するのはあまりにも面倒です。

ということで、日本語にも対応しており精度が高いCloud Vision APIを使ってOCR結果で検索できるようにしました。

やったこと

スクリプトはこちらで公開しています: https://github.com/esplo/eagle_ocr

Eagle内の各画像は、metadata.jsonと併せて1フォルダ1画像で格納されます。 このメタデータにannotationsという項目があり、ここに文字列を入力して書き直すとNotes...の部分に反映されます。 なお、このようにメタデータを書き換えた際は、Force Reload LibraryしないとEagleから利用できないので注意しましょう。

画像のあるディレクトリをトラバースした後は、Cloud Vision APIに投げてOCR結果を取得します。 GCPのライブラリ(@google-cloud/vision)を使うと簡単に実行できます。 対象画像はannotationsを持たない全画像なので、大量の画像がある場合は懸念がありますが、$1.5/1,000枚なので気にしないことにしました。

Wikipediaの画像に対して実行した例はこちらです。

Wikipedia_result

球体にある文字も認識していますが、欲しい文字もちゃんと入っており、日本語相手の精度も十分高いですね。 このように入力されていれば、「ウィキ」などで検索にヒットします。

まとめ

これで文字の入った画像が検索できるようになり、よりEagleが便利に使えるようになりました。 メタデータが簡単にいじれるのは便利ですね。

development

2023年版、スマホ納付の調査および所得税を払うスケーラブルな方法

comments powered by Disqus