STABLE DIFFUSIONの機能拡張roopについて
「STABLE DIFFUSIONを使ってディープフェイクを作ってみた」で使用した機能拡張roopについての話です。
stable diffusionのオリジナル公開版は、ゑっちな画像が生成されたとき、出力画像全部を黒く塗りつぶすフィルターが搭載されています。
ただ、このフィルターを回避する方法がインターネットに公開された為、このれらの情報を使用すれば、この機能を回避できてしまいます。
また、自分の使用しているバージョンは元々このフィルターを削除した状態で配布されているので、何もしないでゑっちな画像も生成できます。
しかし、機能拡張のroopは話が違います。
機能拡張のroopはroop自身でゑっちフィルターを持っているため、stable diffusionがゑっちな画像を生成し、その画像の顔を入れ替えようとroopを適用しても機能せずに、顔変換まえの元の画像が出力されます。
ディープフェイクはプライバシーを侵害する可能性が大きいための防止処置という訳です。
ただ、stable diffusionが生成した画像が該当するものかどうかはAIが判断するので、まったくゑっちじゃない画像でも変換されない場合があったり、ゑっちな画像でも、10回~20回に1~2回くらい、変換されてしまう場合があります。
この働いたり、働かなかったりする機能拡張は、あるいみ安定性に問題が発生します。
前回の様に、動画をつくる場合などは、秒30枚の画像を処理するので、1枚でも誤変換があると、動画として成立しなくなります。
困ったなと、いろいろ試したり、回避方法をネットで探しましたが、ズバリの方法は見つける事ができませんでした。そこで自分はエンジニアなので、プログラムのソースファイルを解析して、この機能を回避すれば良いのではないか?という考えにいたりました。
結論から言うと、拡張機能のソースファイルの一部を修正する事で、この機能の解除に成功しています。
これで、安定して変換が行える様になったという事です。
以上、今日はここまでです。
コメント
コメントを投稿