1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

スクリーンショットをターミナルだけで整理したい

Posted at

乱雑に集められたスクリーンショットを整理する方法の覚え書き。

何がしたいのか?

画像を整理するために、ビューワーとターミナルを行き来するのは面倒です。

なので

  • ターミナルに一本化したい
  • できれば fzf であいまい検索したい

fzfのプレビューに OCR 結果を載せる方法

OCR すればターミナルで取り扱えるというアイデアです。
fzf でディレクトリを絞り込みつつ、プレビューに OCR 結果を表示することで中身を確認します。

# ディレクトリの png ファイルをプレビューで確認しながらあいまい検索
find . -name '*png' | fzf --preview 'tesseract '"{}"' - -l jpn --psm 6 ~/.tesseract/.config'

まず画像が大きいと OCR プレビューが中々表示されないです。
あと、日本語ではまだまだ OCR の精度が足りないかな?という感じがあります。

ビューワーを起動しないでターミナルに画像を表示する

もし、画像をターミナルに表示できれば OCR の精度や待ち時間を考えずに済みます。
ターミナルに画像を表示するためには img2sixel というコマンドがあります。

# ターミナルにあいまい検索した画像を表示
img2sixel "$(find . -name '*png' | sort -n | fzf --preview 'tesseract '"{}"' - -l jpn --psm 6 ~/.tesseract/.config')"

プレビューで img2sixel が使えれば簡単なのですが、使えないので次善の策です。
また、ターミナルエミュレータがSixelGraphicsに対応してなければ img2sixel は使えないので気をつけて下さい。

付録

上のコードで使っている日本語用の tesseract.config をおまけに付けておきます。
数年前に書いたものなので適当に現代化して使ってください。

.config
language_model_ngram_space_delimited_language 0
preserve_interword_spaces 1
chop_enable T
language_model_ngram_on 0
textord_force_make_prop_words F
edges_max_children_per_outline 40
1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?