■Unity開発メモ用のWiki◎現在扱っていること・Unity全般・MMDからUnityへの変換してインポート・MMDの仕様把握・BlenderでMMDモデルのカスタム



拡張機能メモ

セキュリティ

拡張機能によってユーザーが任意のコードをインストールしたり実行したりできるため、悪意を持って使用される可能性があります。
リモートユーザーにサーバーへの接続を許可するオプション (--share または --listen) と共に実行すると、デフォルトで無効化されます
UI は表示されますが、何かをインストールしようとするとエラーが発生します。
これらのオプションを使用しても拡張機能をインストールしたい場合は、 --enable-insecure-extension-access コマンドラインフラグを使用します。

エラー

extension access disabed because of commandline flags (コマンドライン フラグが原因で拡張機能へのアクセスが無効になりました)
   

動作確認していない拡張機能

multi-subject-render(複数被写体レンダリング)

https://github.com/Extraltodeus/multi-subject-rend...
これは、1 つの画像に複数の複雑な被写体を作成するのに役立つ深度認識拡張機能です。
背景を生成し、次に複数の前景の被写体を生成し、深度分析後に背景を切り取り、背景に貼り付け、最後に img2img を実行してきれいに仕上げます。
 

depthmap2mask(深層マップマスク)

https://github.com/Extraltodeus/depthmap2mask
MiDaS によって作成された深度推定に基づいて img2img のマスクを作成します。

トークナイザー(Tokenizer)


https://github.com/AUTOMATIC1111/stable-diffusion-...
CLIP モデルがテキストをトークン化する方法をプレビューできるタブを追加します。

Detection Detailer(詳細検出)

https://github.com/dustysys/ddetailer
Stable Diffusion Web UI のオブジェクト検出および自動マスク拡張機能

Embeddings editor(埋め込みエディター)

https://github.com/CodeExplode/stable-diffusion-we...
スライダーを使用して、 textual inversion(TI)埋め込みを手動で編集できます。
 

training-picker(トレーニングピッカー)

https://github.com/Maurdekye/training-picker
ユーザーがビデオからキーフレームを自動的に抽出し、モデルのトレーニングで使用するためにそれらのフレームの 512x512 クロップを手動で抽出できるようにするタブを webui に追加します。

動作確認した拡張機能

Booru tag autocompletion(Booru タグのオートコンプリート)

追加設定


  

Novelai-2-ローカルプロンプト(novelai-2-local-prompt)


https://github.com/animerl/novelai-2-local-prompt
NovelAI で使用されるプロンプトを WebUI で使用するために変換するボタンを追加します。
さらに、以前に使用したプロンプトを呼び出すことができるボタンを追加します。

NAIConvertをクリックすると、自動で括弧が処理され、quality tagが追加され、ネガティブプロンプトにNovelAIが利用しているものが自動で追加されます。 ワードに対して適用される倍数は、小数点以下4桁で丸めています。
Historyをクリックすると、前に生成したプロンプトを新しいものから順に呼び出します。最大保存数はデフォルトで10です(MaxHistory)

(a),{b},[c]
↓NAIConvert
masterpiece, best quality,
\(a\),(b:1.05),(c:0.9524)
 

Visualize Cross-Attention(クロスアテンションの可視化)


https://github.com/benkyoujouzu/stable-diffusion-w...
入力プロンプトに基づいて、送信された入力画像の強調表示されたセクターを生成します。トークナイザー拡張機能で使用します。
 
画像 
  • 画像(高さ、幅は256の倍数)をWebUIの左側にドロップします。
 
プロンプト
  • プロンプトボックスに、可視化したいプロンプトを入力します(例:hat, neck)
通常、1つの単純な単語は1つのトークンにエンコードされます。
  • また、カンマも1つのトークンにエンコードされることに注意してください。
 
Indices of token
  • 「トークンのインデックス」 ボックスには、視覚化したい特定のトークンのインデックスを入力します。
  • 例えば、1, 3は、1番目と3番目のトークンを意味する。
  • 上記の例では、帽子と首に相当します。プロンプトのコンマ「,」が2番目のトークンであるため、首のプロンプトは3番目に表示されます。
 
Time embedding
時間の埋め込みは結果にほとんど影響を与えないと思われるので、デフォルトのままでよい。
 
Cross-attention layer
安定拡散モデルにはいくつかのクロスアテンションレイヤーがあり、Cross-attention layerのボックスで可視化したいレイヤーを選択することができます。
安定拡散では、まず512×512の実像が64×64の潜像に符号化されます。
次のレイヤーでは、潜像がさらに32×32、16×16にダウンサンプリングされ、64×64の潜像にアップサンプリングされます。
つまり、クロスアテンションレイヤーの違いによって、結果に与える解像度が異なることがわかります。
私は、真ん中のレイヤー(最も低解像度なレイヤーでもある)が最も見やすい結果になることがわかったので、これをデフォルトに設定しました。
異なるレイヤーと異なるトークンの関係を研究することは、興味深いトピックでしょう。
 
Output mode
出力モードの選択で、可視化のためのマスク画像やグレースケールイメージを出力するかどうかを選択します。

ドリームブース:Dreambooth

  • 一度再起動した方がいい?

  • タブが追加される


ドリームブースのインストール(SD-WebUIの場合)
  • SD-WebUIをColab上でテンプレのまま使用しているなら、コマンドラインの引数の問題?でそのままではインストール出来ない?
  • SD-WebUIのドリームブースは拡張機能(Extensions)からインストールする
    • < !git clone>でSD-WebUI用のドリームブースのGitHubから落とす
!git clone https://github.com/d8ahazard/sd_dreambooth_extensi...
  • Colab + SD-WebUI本体はGoogle Driveに保存の場合、Google Driveマウントし、SD-WebUIのインストール下のある「/extensions/」フォルダにインストールする
%cd /content/drive/My Drive/SD-WEBUI/extensions/
!git clone https://github.com/d8ahazard/sd_dreambooth_extensi... "sd_dreambooth_extension"
 
!git clone <インストール元のGitHubのアドレス>.git "インストール先のパス"
 
++++インストール時の注意++++

8bit adam を正しく動作させるためには、CU116 版の torch と torchvision をインストールする必要があるかもしれません。
インストールに必要な追加フラグについては、以下の適切なスクリプトを参照してください。

https://github.com/d8ahazard/sd_dreambooth_extensi...
https://github.com/d8ahazard/sd_dreambooth_extensi...

torch コマンドを設定する。
TORCH_COMMAND=pip install torch==1.12.1+cu116 torchvision==0.13.1+cu116 --extra-index-url https://download.pytorch.org/whl/cu116
webui-user の実行時に適切なバージョンのトーチをインストールし、その後、競合するバージョンをインストールしようとせずにそのままにすることを確実にするためです。

また、新しいバージョンの diffusers も必要です。
SD-WebUI はバージョン 0.3.0 を使っていますが、DB トレーニングでは > 0.6.0 が必要なので 0.7.2 を使っています。
正しいバージョンのdiffusersを持っていないことが、'UNet2DConditionModel' object has no attribute 'enable_gradient_checkpointing' エラーメッセージや、安全チェックの警告の原因になっています。

sd-web-uiに強制的に1つの要件セットだけをインストールさせるには、コマンドラインの引数を指定します。
set/export REQS_FILE=.\extensions\sd_dreambooth_extension\requirements.txt

最後に、Dreamboothのネイティブインストールルーチンを完全にスキップしたい場合は、以下の環境フラグを設定します。
環境フラグ: DREAMBOOTH_SKIP_INSTALL=True

これは、スクリプトが常にpypiから何かをチェックすることを望まない「オフラインモード」に最適です。
WebUIでインストールした後、上記のフラグを設定し、Stable-diffusion-webui全体を再読み込みするのではなく、再立ち上げすることをお勧めします。

コメントをかく


「http://」を含む投稿は禁止されています。

利用規約をご確認のうえご記入下さい

Menu

【メニュー編集】

スカイリム関連

スカイリム関連


Menu

【メニュー編集】

スクリプト関連

フリーエリア

管理人/副管理人のみ編集できます