NVIDIAの画像生成AI「eDiffi」の言葉とペイントで画像を生成する「paint with words」を画像生成AI「Stable Diffusion」で実現

GIGAZINE



NVIDIAが発表した「eDiffi」は、従来よりも高い精度で高品質な画像を自動生成するAIモデルです。このeDiffiの言葉とペイントから画像生成する機能「paint-with-words」をStable Diffusionに実装する「paint-with-words-sd」が登場しました。

GitHub – cloneofsimo/paint-with-words-sd: Implementation of Paint-with-words with Stable Diffusion : method from eDiffi that let you generate image from text-labeled segmentation map.
https://github.com/cloneofsimo/paint-with-words-sd

eDiffiがどういったモデルなのかは以下の記事を読むとよくわかります。

NVIDIAが高精度な画像生成AI「eDiffi」を発表、従来の「Stable diffusion」や「DALL・E2」よりテキストに忠実な画像生成が可能 – GIGAZINE


Stable Diffusionはその名の通り「拡散モデル」といわれるAIモデルで、ノイズだけの画像からノイズを除去するプロセスを反復することで画像を生成します。Stable Diffusionは、このノイズ除去を単一のモデルで行っていますが、eDiffiは段階ごとに異なるモデルでノイズ除去を行うのが特徴。

eDiffiの論文と手法はオープンソースではなく、モデルも一般公開されていないのでそのまま使うことはできませんが、プロンプトの内容からノイズ除去の単純結合に割り込ませる「Cross-attension」という部分はStable Diffusionと共通しているので、paint-with-wordsは実装できたとのこと。

以下で、画像の左に書いてあるのが「A highly detailed digital art of a rabbit image standing on clouds casting a fire ball(雲の上に立ってファイアボールを唱えるウサギの高精度なデジタルアート)」というプロンプト。3つの画像のうちの最も左にあるのが、画像の構図を指示するペイントです。このプロンプトとペイント画像で指示を送り、Stable Diffusionだけで生成した画像が真ん中の画像。そして、プロンプトによってノイズ除去の方向付けを行う「Attension」の重みを途中で調整するというeDiffiと同じ処理を導入したものが一番右の画像。


「A dramatic oil painting of a road from a magical portal to an abandoned city with purple trees and grass in a starry night(魔法の扉から星降る夜に紫の木と草が生い茂る廃墟の街へと続く道を描いたドラマチックな油彩画)」で生成した場合が以下。


以下は、ペイント画像(左)だけ変えて同じプロンプトで生成した画像(右)を並べたもの。ペイント画像で変わっているのは月の位置だけで、月と背景に表示されるオーロラは少し異なりますが、その下に書かれている山並みとボートにはほとんど違いがありません。


Attensionの重み調整を強くすればするほど、元のプロンプトと構図に忠実な画像が生成できます。しかし、その分画像の品質は下がってしまいます。以下の画像は右にいくにしたがって重み調整が強くなっており、構図はペイント画像のものに忠実となっていきますが、生成されるウサギのノイズが増えてしまっています。


以下は、上の画像と同じプロンプト・ペイント画像から、重み調整の関数や強さに当たる変数を変えて生成した場合。


なお、paint-with-words-sdのオーナーであるSimo Ryu氏は、AUTOMATIC1111版Stable Diffusion web UIの拡張機能として開発することにも意欲をみせています。

Extensions for Automatic1111 version? · Issue #1 · cloneofsimo/paint-with-words-sd · GitHub
https://github.com/cloneofsimo/paint-with-words-sd/issues/1

この記事のタイトルとURLをコピーする

Source