
今回は画像のキャプションデータを簡単に作成・編集できるツール「taggui」の使い方を紹介します。
AIによる自動タグ付けもできるので、LoRA学習用のデータセット作りなんかにも使えます。
tagguiとは?
画像からキャプションデータの作成・編集ができるツールです。
複雑なインストールは必要なくexeで簡単に起動が可能。
シンプルなGUIになっているので操作も簡単です。
また使えるモデルの種類も豊富なため、キャプションを作るのはもちろん、画像からプロンプトの解析もいろいろなパターンを試すことができます。
画像解析系の作業がこれ1つでほぼ完結できるため、執筆時点で私が知っているツールの中だと一番便利かもしれません。
主な特徴
- 複雑なインストールなしでexeから起動できる
- シンプルで操作しやすいGUI
- 複数のAIモデルで自動キャプション(WD Tagger・Florence-2・LLaVA・CogVLMなど)
- タグの一括置換・並び替え・削除に対応
- タグでの絞り込み(フィルター)検索
- Stable Diffusion向けのトークン数カウント付き

tagguiのインストール
githubのReleaseページからtagguiをダウンロードしてください。
私の環境だと最新版で問題なく動かせています。(v1.34.0)
以前のバージョンだとwindowsでウイルス検知されたことがあり、issuesでも報告されていました。
現在は問題ないと思いますが、もし検知されたり使用が不安な方は控えた方がいいかもしれません。
解凍には7-zipが必要です。
任意の場所保存して解凍すると中に「taggui.exe」があるのでそれを実行してください。
これでGUIが表示されるのでインストールは完了です。
2回目以降も同じ「taggui.exe」から起動できます。

tagguiの使い方
キャプションデータの作成
・フォルダの読み込み
ウィンドウ中央の「Load Directory」ボタンをクリックするか、「File」->「Load Directory」から、画像を含むディレクトリを読み込みます。
・キャプションデータの作成
左側にフォルダ内の画像が表示されるので、キャプションデータを作成したい画像を選択します。
複数処理したい場合はCtrl押しながら一個ずつ選択、またはCtrl+Aで全選択が可能です。

次にUI右下にあるタブをAuto-Captionerに切り替えます。

あとはModelやパラメータを設定して、Start Auto-Captioningをクリックすると自動的にtxtファイルが作成されます。

・パラメータの設定
- Model:画像を解析するモデルを選択。使用モデルによって英単語や英文など出力方法が異なる
- Caption position:既にキャプションデータが存在する場合のtag追加方法。insert before first tag:行頭に追加
- insert after first tag:行末に追加
- Overwrite first tag:最初のタグだけ上書き
- Overwrite All tag:全てのタグを上書き
- Do not add to tags:タグは追加しない
Show probabilites:タグに重みづけをしてそれを表示するかどうか
minimum probability:信頼度が指定した値以下のタグは抽出しない
Maximum tags:出力するタグの最大数
tags to exclude:予め除外したいタグがあればここに入力
※Show probabilites・minimum probabilityの補足
Show probabilitesにチェックを入れると、どのタグがどの程度の重み(信頼度)だったかを表示できます。

minimum probabilityは指定した値以上・以下で抽出するタグを制御できるものです。
この画像はleaning forward(前傾姿勢)である確率が0.41という結果でした。
もう少し直立な画像だった場合は、0.4以下となり除外されます。
この機能で画像の要素をどの程度抽出するかを調整できます。
設定したらStart Auto-Captioningを実行すれば、自動的にtxtファイルが出力されます。

キャプションデータの編集
ここで作成したキャプションデータを編集できます。
まず左下のタブをAll Tagsに戻してください。

・Tag Click Action
タグをクリックしたときの挙動を指定できます。

・Filter images for tag
選択したタグでフィルターをかけ、そのタグが含まれる画像を表示します。
例えばsittingをクリックするとfilterが追加され、sittingが含まれる画像の表示が可能です。

・Add tag to selected images
選択している画像に対して、抽出されたキャプションからタグを追加できます。
例えば下の画像にはfrom aboveというタグは含まれていません。
Add tag to selected imagesにしてfrom aboveをクリックすると、この画像にfrom aboveが追加されます。

手動で何らかのキャプションを追加したい場合は、特定の画像、または複数画像を選択した状態で右上のimage tagsに入力すれば追加できます。

・Sort by

ここはタグを並び替えるオプションです。
- Frequency:出力されたタグの数順
- Name:名前順
- Length:タグの長さ
- Descending:降順
- Ascending:昇順
・タグの削除

Tag Click ActionがFilter images for tagの状態でCtrlを押しながら削除したいタグを選択します。
選択後、Deleteキーで削除可能です。
tagguiは操作した時点でキャプションが上書きされるので、別途保存する操作は必要ありません。
もし元に戻したいという場合は、Ctrl+Zを押せば直前の操作は元に戻せます。
・検索&置換
Ctrl+Rでキャプションの検索&置換が可能です。

- Find text:検索したい文字列を入力
- Replace with:置換したい文字列を入力
- Scope:どの画像に対して検索・置換を行うかAll imges:全画像が対象
- Filtered image:filterをかけた画像が対象
- Selected image:選択している画像が対象
Whole tags only:完全一致するタグが対象
- チェックの場合、redだったらredのみ。red_hairは対象にならない
Use regex for find text:正規表現を使うかどうか
設定後、Replaceをクリックすればタグが置き換わります。
・タグの並び替えショートカットキーCtrl+B、またはメニューバーのEditからタグの並び替えが可能です。

- Do not reorder first tag:最初のタグは並び替えの対象から除外する
- Sort Tags Alphabetically:アルファベット順に並び替える
- Sort Tags by Frequency:出現頻度が高い順に並び替える
- Reverse Order of Tags:現在のタグを逆から並べる
- Shuffle Tags Randomly:ランダムにシャッフルする
- Tags to move to front (comma-separated):指定したタグを先頭に移動。複数指定する場合はカンマを使用。
・重複したタグの削除
キャプションデータ内に同じタグがある場合、Ctrl+D、またはEdit→Remove Duplicate tagsで削除できます。
・空白のタグを削除
キャプションデータ内に空のタグが存在する場合、Ctrl+E、またはEdit→Remove empty tagsで削除できます。
基本的な使い方は以上です。
tagguiの良い部分・悪い部分
GUIがシンプル
操作が非常に簡単で、機能も最低限のもだけなので、覚えることが少なくて済みます。
それでいて別に足りないと感じることもないので、キャプション作成・画像解析なら本当にこれだけでいいかも知れません。
モデルが豊富
自分で用意しなくてもプルダウンから選択するだけでいろいろなモデルでキャプションが作成できます。
Fluxでよく使われるjoy captionとかFlorenceとかもあるので、いろんなモデルで解析ができます。
これらを個別でインストールすると結構面倒だったりするので、まとまって使えるのは便利だと感じました。
右側の横スクロール
悪い部分はほぼ0なんですが、1点だけ右側操作部分の横スクロールはいらない気がしました。
モデルをプルダウンから選ぶときここをスライドさせる必要があります。
全画面にしてもここのスクロールは消えないので、ここだけちょっと手間に感じました。

以上tagguiの使い方について紹介しました。
参考になれば幸いです。

