こんにちは!悠です!
皆さんはAIイラストを誰かと共有するとき、MajinAIのような投稿サイトではなく、画像アップローダーを使用したりすることはありませんでしょうか?
正確にはアップローダーではありませんが、imgur等のサイトを使ってURLを共有するのはお手軽なので、一度は使ったことがあるかもしれません。
ただこういったアップローダーに画像を上げると、自動的にメタデータが削除されてしまい、「Stable Diffusion WebUI」のPNGInfoでは読み込めなくなってしまうことがあります。
そこで今回は、メタデータをPNG画像のアルファチャンネルに埋め込む(メタデータを書き込む領域を変更する)ことで、自動削除を回避する拡張機能「sd-webui-stealth-pnginfo」について紹介していきます。

元はDiscordに画像をアップした時のメタデータ削除を回避するために作られたようですね。ただ現在Discordはメタデータを保持するようになっています。
「Stealth PNGinfo」の導入方法
Google Colaboratory版の場合
下記の方法で紹介している「maintained by Akaibu」のノートブックを使って、拡張機能「sd-webui-stealth-pnginfo」を導入していきます。
まだご覧になっていない方は、まず最初にこちらを準備しておいてください。


Google Driveからモデルデータを読み込むセルの下に新しくセルを作成し、下記のコードを入力してください。
#sd-webui-stealth-pnginfoをインストール
%cd /content/stable-diffusion-webui/extensions/
!git clone https://github.com/neggles/sd-webui-stealth-pnginfo /content/stable-diffusion-webui/extensions/sd-webui-stealth-pnginfo
%cd /content/stable-diffusion-webui
ローカル版の場合
「Extensions」→「Install from URL」の「URL for extension’s git repository」に下記のURLを入力しInstallをクリックしましょう。
https://github.com/neggles/sd-webui-stealth-pnginfo
WebUIを再起動して、SettingsのタブにStealth PNGinfoの項目が追加されていれば導入成功です。
「Stealth PNGinfo」の使い方
まずはSettingsのタブにあるStealth PNGinfoの項目を開き、Save Stealth PNGinfoにチェックが入っていることを確認します。
なお、Stealth PNGinfo modeでメタデータを書き込む領域を変更できるようです。基本的にデフォルトのalphaでいいと思います。
これで拡張機能は有効化されているので、画像を生成してみましょう。
今回はモデルに「Agelesnate」、LoRAに「flat2」を使い、下記のプロンプトで画像を生成いたしました。
best quality, highres, landscape, a man standing on the moon, space, <lyco:flat2:-0.5>
(worst quality, low quality:1.4), (monochrome, greyscale:1.4)
そして、拡張機能を有効化した場合と無効化した場合でそれぞれimgurにアップロードしてみました。
【無効化】https://imgur.com/a/XgAaNQQ
【有効化】https://imgur.com/a/QKKXWw4
実際にダウンロードしてPNGinfoに入れてみて下さい!
有効化した状態だとメタデータが保持されているのがわかると思います。

ただimgur以外のアップローダーでは試していないため、この拡張機能を使ってもメタデータが削除されてしまうサイトもあるかもしれません。
まとめ
以上が「Stable Diffusion WebUI」で、メタデータをPNG画像のアルファチャンネルに埋め込むことで、自動削除を回避する拡張機能「sd-webui-stealth-pnginfo」についての紹介でした。
なお、メタデータをアルファチャンネルに書き込んだ画像を、AIイラスト投稿サイトにアップできるかは微妙です。この場合は拡張機能をオフにしておいた方が確実だと思います。
では、ここまで読んでいただきありがとうございました。
コメント