cedro-blog

Latent Diffusion Model で、文から画像を生成する

1.はじめに

 先週、OpenAIDALL-E2を発表して、文から画像を生成するタスクが再びホットな状態になっています。私も、DALL-E2を早く試してみたいと思ってWAITLISTに申し込み、連絡が来るのを心待ちにしています。

 そうした中、別のグループからDALL-E2と同様な潜在拡散モデルが公開されましたので、今回はそれを試してみたいと思います。

*この論文は、2021.12に提出されました。

2.Latent Diffusion Modelとは?

 下記は、latent diffusion model(潜在拡散モデル)の概要です。このモデルは、まずトレーニングデータにガウスノイズを徐々に追加して純粋なノイズになるまで破損させ、ニューラルネットワークにこの破損プロセスを逆転させることを学習させます。

 学習後は、この逆破損プロセスを実行することで、純粋なノイズからデータを生成することができます。そして、このプロセスの中で、文や領域などの条件付けをすると任意の画像生成ができます。

3.コード

 コードは colab の形で、この「リンク」で提供されています。この colab は、中々上手くできていて、if文を使って1つのブロックだけで作られています。

 使い方は、prompt に英文を入力して実行ボタンを押すだけです。なお初回のみ動作途中でリセットがかかり一旦動作が停止しますので、再度実行ボタンを押して下さい。

 それでは、色々な文で画像を生成してみましょう。

prompt = “An astronaut riding a horse in a photorealistic style” 

prompt = “a painting of a fox sitting in a field at sunrise in the style of Claude Monet”

prompt = “A 3D render of a rainbow colored hot air balloon flying above a reflective lake”

prompt = “a stained glass window with an image of a blue strawberry”

prompt = “Big fireworks spread in the night sky of New York”

 OpenAIが発表したDALL-E2には及びませんが、今までよりもリアリティのある画像を生成できるようです。

 では、また。

(オリジナルgithub)https://github.com/CompVis/latent-diffusion

2022.4.14 colabリンクの追加

より完成度の高い画像を出力する5.7GBの重みを採用した LDM-TXT2IM を追加します。以下は文から画像の生成例です。

“An astronaut riding a horse in a photorealistic style”

 

“Blond beauty is riding a bicycle along the coastline”

 

“A painting of a squirrel eating a burger”

 


“Baby panda playing piano at the end of the galaxy, digital art”

 

“A zombie in the style of Picasso”

 

“Mona Lisa is drinking red wine at the beach”