【Stable Diffusion】拡張機能「Dataset Tag Editor」を使って任意の画像からプロンプトを抽出する方法!

こんにちは!悠です!

 

「インターネット上で自分の理想にぴったりのAIイラストを見つけたけれど、それを再現するプロンプトがわからない!」というような経験はありませんか?

 

今回は、こんな悩みを簡単に解決してくれる「Stable Diffusion」の拡張機能「Dataset Tag Editor」を紹介していきます。

なお本来は自作LoRAを生成する際の素材画像にタグ付けを行うツールです。その使い方は下の記事で紹介しています。

【Stable Diffusion】簡単に自作LoRAを生成できる「Kohya's GUI」の導入方法と使い方を紹介!
インターネット上に存在しない自分だけのLoRAを簡単に作成することができるツール、「Kohya's GUI」の導入方法と使い方を詳しくまとめた記事です。

 

アイキャッチ画像は「AsyncsMIX」を使って生成しています!

 

スポンサーリンク
スポンサーリンク

「Dataset Tag Editor」の導入方法

GitHub - toshiaki1729/stable-diffusion-webui-dataset-tag-editor: Extension to edit dataset captions for SD web UI by AUTOMATIC1111
Extension to edit dataset captions for SD web UI by AUTOMATIC1111 - GitHub - toshiaki1729/stable-diffusion-webui-dataset-tag-editor: Extension to edit dataset c...

 

Google Colaboratory版の場合

下記の方法で紹介している「maintained by Akaibu」のノートブックを使って、拡張機能「Dataset Tag Editor」を導入していきます。

まだご覧になっていない方は、まず最初にこちらを準備しておいてください。

【Stable Diffusion】AUTOMATIC1111のWebUIをGoogle Colaboratory上で使う方法!【maintained by Akaibu】
「Stable Diffusion」で、「AUTOMATIC1111」が用意しているノートブック「maintained by Akaibu」を使って、Google Colaboratory上で自分の好きなモデルデータやLoRAを使用する方法についてまとめた記事です。
【Stable Diffusion】AUTOMATIC1111のColab版でLoRAを使う方法について紹介!【maintained by Akaibu】
AUTOMATIC1111のColab版「maintained by Akaibu」でLoRAを使う方法についてまとめた記事です。2.5D風AIコスプレイヤーを作成できる「KoreanStyle2.5D」も紹介しています。

 

Google Driveからモデルデータを読み込むセルの下に新しくセルを作成し、下記のコードを入力してください。

#Dataset Tag Editorをインストール
%cd /content/stable-diffusion-webui/extensions/
!git clone https://github.com/toshiaki1729/stable-diffusion-webui-dataset-tag-editor /content/stable-diffusion-webui/extensions/stable-diffusion-webui-dataset-tag-editor

%cd /content/stable-diffusion-webui

 

WebUIを起動し、「Dataset Tag Editor」のタブが新たに追加されていれば導入は成功です。

 

ローカル版の場合

「Extensions」→「Install from URL」の「URL for extension’s git repository」に下記のURLを入力しInstallをクリックしましょう。

https://github.com/toshiaki1729/stable-diffusion-webui-dataset-tag-editor

 



「Dataset Tag Editor」の使い方

それでは拡張機能「Dataset Tag Editor」を使って、任意の画像からプロンプトを抽出する方法を紹介していきます。

なお、自作LoRAを作る場合のタグ付けの方法もほぼ同じですよ!

 

まずプロンプトを抽出したい画像を、ローカル版の方は任意のフォルダ(パスに日本語が入っていない場所)、Google Colaboratory版の方はGoogle Driveにアップロードしましょう。

私はStable Diffusion系のデータを保存している場所に、imagesというフォルダを作りました(Drive内)。

 

絶対にGoogle Drive上にR18画像(2次元イラストも含む)をアップロードしてはいけません。Googleアカウントが凍結される恐れがあります。1度凍結されると復旧はかなり困難らしいです。

 

ちなみにColab版の方は、左側のファイルからディレクトリを表示して、Drive内に作成したフォルダのパスを確認できます。

 

ここまで準備できたら、「Stable Diffusion WebUI」を起動して「Dataset Tag Editor」のタブを開きましょう。

 

Dataset directoryに先ほど画像を格納したフォルダのパス、Dataset Load SettingsのタブにあるLoad from subdirectoriesLoad caption from filename if no text file existsにチェックを入れます。

Use Interrogator CaptionのOverwriteにチェックを入れ、Interrogatorから好きなものを設定します。

 

このInterrogatorの種類によって抽出できるプロンプト(タグ)が変化します。

私はwd-v1-4-swinv2-tagger-v2を選択しました。

 

Interrogator Settingsを開き、使用したInterrogatorに応じてチェックを入れます。値は変えなくてOKです。

これで設定は完了なので、右上にある「Load」をクリックしましょう。

 

画像からプロンプト(タグ)が抽出されます。

 

このままだとプロンプトとしてコピペしにくいので、txtファイルに結果を出力します。

右側にある「Filter by Selection」のタブを開き、Add All Displayedをクリックした後、一番下のオレンジ色のApply selection filterを選択します。

 

最後に一番上にあるオレンジ色のSave all changesをクリックすれば完了です。

 

画像を格納したフォルダ内に、プロンプトが記載されたtxtファイルが出力されています。

 

あとはコピペして使いましょう。

 

まとめ

以上が「Stable Diffusion」で、自分の好きな画像からプロンプトを抽出してtxtファイルに保存できる拡張機能「Dataset Tag Editor」の使い方でした。

この機能を使えば間違いなく、自分の理想としている1枚の作成に近づくことができるので、ぜひ試してみてください!

個人的には「MultiDiffusion」と「Dataset Tag Editor」が拡張機能のTop2です。

 

では、ここまで読んでいただきありがとうございました。

コメント

  1. ヒカル より:

    初めまして。
    >最後に一番上にあるオレンジ色のSave all changesをクリックすれば完了です。
    ここまではできたのですが、消したい(覚えさせたい)プロンプトの削除の仕方がわかりませんでしたので教えていただけませんか?

  2. ラン より:

    はじめまして、質問です。
    導入して最初の1回目は成功したのですが、次に別の画像を読み込もうとしたら
    [tag-editor] Also loading from subdirectories.
    [tag-editor] Total 1 files under the directory including not image files.
    [tag-editor] Loading Completed: 1 images found
    というエラーが出ました。
    「ディレクトリ内に画像置いてないよ」という表示だと思うのですが、当然画像は入っています。
    色々試してみたところ、最初に読み込ませた1枚だけは認識されますが、それ以外の画像が認識されないという状況のようです。
    Interrogatorsを変えてみたり、画像のサイズ、種類に問題があるか確認してみても特におかしいところは見当たらずお手上げのため、なにか知恵を拝借いただけますと幸いです。

    • 悠 より:

      こんにちはです!

      ・画像を保存しているフォルダ名に日本語、特殊記号、スペースを含んでいる場合は名前を変更する
      ・WebUIを再起動してもう一度試してみる

      とどうなりますでしょうか?
      この拡張で不具合が起きたときは、再起動するとなぜか直ることがよくあります!

      • ラン より:

        爆速で返信いただきありがとうございます。
        再起動したら動作するようになったのですが、また2回目以降は同様の症状となったためどうも再現性は高いようです。
        おそらく環境依存なのでしょうが、まったく動作しないよりはマシと考えて使っていこうと思います。

        こちらの記事は有用かつ分かりやすくてとても助かっています。今後も活用させていただきます。

  3. 匿名 より:

    Interrogatorにmoatを追加したい場合どこいじればいいでしょうか

    • 悠 より:

      こんにちはです!

      moatって名前だけは聞いたことがあります。プロンプトの抽出精度に優れているんでしたよね。
      今まで試したことが無いため、申し訳ありませんが現時点で導入方法はちょっとよくわからないです…

      ただ非常に面白そうなので、今後試してみて可能なら別のページにまとめていきますね!