2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

StableDiffusion2.0をGoogleColaboratoryで動かしてみる

Last updated at Posted at 2022-11-27

概要

GoogleColaboratoryで流行りの画像生成AIを使う方法をメモしてみました。
公式のdocsを参考に、最終的にGoogleドライブに保存するようにしています
https://huggingface.co/docs/diffusers/api/pipelines/stable_diffusion_2

やり方

以下の番号ごとに実行していきます。
※私の場合は、セルごとに分けて記載して実行しています。

①必要なライブラリのインストール

!pip install diffusers transformers scipy ftfy

②stableDiffusionを使う準備

from diffusers import DiffusionPipeline, DPMSolverMultistepScheduler
import torch

repo_id = "stabilityai/stable-diffusion-2"
pipe = DiffusionPipeline.from_pretrained(repo_id, torch_dtype=torch.float16, revision="fp16")

pipe.scheduler = DPMSolverMultistepScheduler.from_config(pipe.scheduler.config)
pipe = pipe.to("cuda")

③文字から画像を作成して保存する

from diffusers import DiffusionPipeline, DPMSolverMultistepScheduler
import torch
# reは正規表現を使用するための標準ライブラリ
import re

# 保存先フォルダを初期化
!rm -rf make-img
!mkdir make-img

# 作成したい画像の説明文
prompt = "A photo of woman, a elaborate beautiful background, a well-groomed face, beautiful eyes, the most beautiful body I've ever seen"
# 画像のファイル名
filename = re.sub(r'[\\/:*?"<>|,]+','',prompt).replace(' ','_')

# 作成する画像数
num = 2

for i in range(num):
  image = pipe(prompt, guidance_scale=9, num_inference_steps=20).images[0]
  image.save(f'/content/make-img/{filename}_{i:02}.png')

④作成したファイルを自分のドライブフォルダにコピーする
※必要に応じて実行してください
/content/drive/MyDrive/python-imgを自分の保存先に変えてください

!cp -r /content/make-img /content/drive/MyDrive/python-img

①、②は一度実行すればランタイムの接続が切れるまでは再度実行は不要です。※毎回実行するとエラーにはなりませんが、時間がかかります
もし何度も画像を作成したい場合は③、④を再度実行してください

感覚的に2.0は出たばかりで使う人が多いのか、一枚の画像を作る時間が1.5よりも時間がかかるような気がします。
ただ画像の質はかなり上がったような気がします。

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?