header source
my icon
esplo.net
ぷるぷるした直方体
Cover Image for Eagleにある画像をOCR結果で検索できるようにする

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

だいたい2分で読めます

背景

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が便利に使えるようになりました。
メタデータが簡単にいじれるのは便利ですね。

Share