Danbooruタグとは何なのか。Stable Diffusion
こんにちは、画像生成AIでひたすら猫のイラストを生成している じょじお(@jojio‗illust)です。
Stable Diffusionのプロンプトについて調べていると、Danbooruタグという言葉をよく目にします。
この記事では、そんなDanbooruタグについて解説してみました。
▲AI画像の大量ファイルをプロンプトと一緒に簡単に整理する方法はこちら。
Stable Diffusionのプロンプトエンジニアリングの基本について理解したい方には、初心者向けのプロンプトガイドを作りましたのでそちらを見てください!
Danbooru(ダンボール)とは?
二次元系イラストを生成していてよく目や耳にする「Danbooruタグ」というものが気になりました。
Danbooruとは、海外の画像転載サイトです。
NovelAIのAIモデルや、Stable diffusionのアニメ系特化のモデルのいくつかは、このDanbooruというサイトに掲載された画像が、学習データに含まれていたようです。
Danbooruの倫理上の問題
Danbooruは、画像の無断転載サイトといわれており、「画像版漫画村」という扱いで非難されることが多く、Danbooruで学習を行ったモデルに対しても倫理的に問題視する意見があります。
実際には、現在使用されている二次元イラスト特化系のモデルの多くは、Danbooruで学習したモデルの派生版といわれています(実際のところは私はわかりません)。
このため、二次元系のモデルを使う上では、Danbooruタグの理解は避けて通れないと思い、当サイトでも取り扱うことにしました。
諸々の問題については、私は専門家ではないので、この記事では話題を避けます。また、当サイトは、これらのモデルを使用することを推奨するわけでもありません。利用は自己責任でお願いします。
Stable DiffusionとDanbooruの関係
モデルが絵を学習するとき、絵とテキストをセットにして学習します。例えば、初音ミクの絵には「hatsune_miku」というテキストとあわせて学習します。それによってAIは「hatsune_miku」というプロンプト(テキスト)から、初音ミクの絵を生成できるようになります。(実際には1枚の絵にはいくつものタグを付けて学習します。)
danbooruサイトで学習させたモデルは、絵と一緒にDanbooruタグをセットにして学習に使ったようです。
Danbooruタグは、danbooruサイトで画像に付けられるタグです。ユーザーが絵を転載するときに、その絵を表すタグがいくつも付けられます。タグは別のユーザーが編集することもできます。
画像とテキスト(タグ)のセットがたくさん入手できるDanbooruというサイトは、AIの学習をする上でとても都合が良かったようです。
これがDanbooruタグです。先ほど例に挙げた「hatsune_miku」も実際にDanbooruで使用されているタグです。
Danbooruタグの特徴は、単語の間に「‗(アンダーバー)」が入ることです。
つまりどういうこと?
つまり、Danbooruで学習をしたStable diffusionモデルを使う際は、Danbooruタグをプロンプトに含めることで、正確な絵を生成できる可能性があるということです。
Danbooruタグの例
実際にDanbooruのサイトへ飛んで、タグを見てみました(Danbooruタグ一覧:Danbooruへ飛びます。)
よく使われている順で並べてみました。
タグ名 | 使用数 | 日本語解説 |
---|---|---|
1girl | 4.4M | 女性が1人写っているイラスト |
solo | 3.6M | キャラクターが単独で写っているイラスト |
highres | 3.3M | 高解像度のイラスト |
long_hair | 3.1M | 長い髪のキャラクターが写っているイラスト |
commentary_request | 2.7M | 作者がコメントを求めているイラスト |
breasts | 2.4M | 胸が大きなキャラクターが写っているイラスト |
looking_at_viewer | 2.2M | キャラクターが直接視線を向けているイラスト |
blush | 2.1M | ほっぺたが赤らんでいるような表情のイラスト |
smile | 2.0M | 笑っているキャラクターが写っているイラスト |
open_mouth | 1.6M | 口を開けているキャラクターが写っているイラスト |
short_hair | 1.6M | 短い髪のキャラクターが写っているイラスト |
blue_eyes | 1.3M | 青い瞳のキャラクターが写っているイラスト |
multiple_girls | 1.2M | 女性が複数写っているイラスト |
skirt | 1.1M | スカートを着ているキャラクターが写っているイラスト |
blonde_hair | 1.1M | 金髪のキャラクターが写っているイラスト |
simple_background | 1.1M | 簡素な背景のイラスト |
large_breasts | 1.1M | 胸が特に大きなキャラクターが写っているイラスト |
brown_hair | 1.1M | 茶髪のキャラクターが写っているイラスト |
shirt | 1.1M | シャツを着ているキャラクターが写っているイラスト |
black_hair | 1.0M | 黒髪のキャラクターが写っているイラスト |
1girl、solo、looking_at_viewerなど、AI画像のプロンプトでよく見かける単語があります。
プロンプトでよく見かける「1girl」というタグがありました。
「a girl」や「one girl」じゃなくて「1girl」と書くことに違和感を持っていたのですが、Danbooruタグが由来だったのですね。
私はキャラクターにカメラ目線をさせるとき、looking_at_cameraを使っていたのですが、この表をみると「looking_at_viewer(カメラ目線)」の方が多く使われているようです。
今度からは、そちらを使った方がよさそうです。
Danbooruタグが使えるモデルは?
Danbooruタグを使ったプロンプトが、すべてのモデルに有効なわけではありません。
Danbooruタグが有効なのは、Danbooruで学習を行ったモデルを使う時です。
Danbooruで学習を行ったと公言しているモデルには、NovelAIや、Waifu Diffusionなどがあります。
これらのモデルでは、Danbooruタグが有効なようです。
Danbooruタグが使えるかどうかは、使用するモデルのディスクリプションを確認するのがよさそうです。
ただし、下記のような情報もあり。
ただ、Danbooruで学習を行った「Waifu diffusion」で、効きにくいDanbooruタグがあるという情報もありました。
これは実際に試すしかなさそうです。
https://note.com/scra/n/n32127cb2d9d5
Danbooruタグに関連する拡張機能
これまで、Stable Diffusionの二次元モデルと、Danbooruタグの深いつながりについて理解してきました。
ここからは、実際に画像生成を行う時に、Danbooruタグを使うために便利な機能があるのでそちらを紹介したいと思います。
1.Booru tag autocompletion for A1111
1つ目は、Booru tag autocompletion for A1111という拡張機能です。
▲いつものように、プロンプトを入力すると、その文字を含むDanbooruタグをサジェストしてくれます。使いたいタグがあれば十字キーで選択し、エンターキーを押しましょう。すると、そのタグを入力補完してくれます。
プロンプトの作成を補助してくれる便利な機能です。
Booru tag autocompletion for A1111のインストール方法
Extention(拡張機能)タブから、Availableタブを開き、「Load Form」ボタンを押します。
▲インストール可能な拡張機能一覧が表示されるので、Booru tag autocompletion for A1111を探してインストールボタンをクリックします。
参考
https://github.com/DominikDoom/a1111-sd-webui-tagcomplete
2.DeepBooru
DeepBooruは、画像を渡すと、その画像を生成するためのプロンプトを考えてくれます。名前からもわかるようにdanbooruタグを考慮したプロンプトを作ってくれます。
いわばimage-to-textですね。
DeepBooruは、WebUIにデフォルトで組み込まれているので、起動はコマンドライン引数を指定するだけで有効化できます。
DeepBooru有効化手順
▲WebUIを起動するときに実行する、webui-user.batを右クリックして編集を選択するとメモ帳が開くので下記のようにコマンドライン引数を指定します。
set COMMANDLINE_ARGS=--deepdanbooru
既に他のコマンドライン引数を使っている方は、半角スペースで複数指定できます。
記入したら保存して閉じます。WebUIを起動中の場合は再起動します。
DeepBooru使い方
▲DeepBooruは、「Ima2img」タブから利用します。DeepBooruを有効化すると、Generateボタンの横に「Interrogate DeepBooru」というボタン(上図の③)が追加されます。これがDeepBooruです。
使い方は、まずプロンプトを分析したい画像をIma2imgの画像ペインにドロップします。私は他の画像生成ソフトで作成した適当な画像を使います。
画像をセットしたらInterrogate DeepBooruボタンを押すだけです(初回実行時だけ少し時間がかかります)。
▲実行すると、画像からプロンプトを考えてくれます。アンダーバーが使われている単語がいくつか含まれていることからDeepBooruタグを意識していることが分かります。
このプロンプトをコピーしてTxt2imgに張り付けて画像生成を行えば、似たような画像を生成できるのが、このツールのメリットです。
ただ、実際は、もちろん完璧なコピーを作ることはできません。
単語のヒントをもらう時などに使えそうです。
まとめ
以上Danbooruタグについて解説してみました。
2次元系イラストのプロンプトに困ったら、Danbooruタグを参考にプロンプトを組んでみるといいかもしれません。
最後まで読んでくださってありがとうございます!
この記事がお役に立てましたら、シェアボタンからシェアしていただけたら嬉しいです!
コメント