【Image2Video】PIA(Personalized Image Animator)を使って動画を作成してみました

github.com

はじめに

PIAはAnimateDiffを使ったImage2Videoです。

1枚の画像とプロンプトから動画を作成できます。

PC環境

Windows 11
CUDA 11.8
Python 3.10

Python環境構築

「requirements.txt」を作成したので環境構築は以下の1行です。

pip install -r https://raw.githubusercontent.com/dai-ichiro/myEnvironments/main/PIA/requirements.txt

GitHubリポジトリのクローン

git clone https://github.com/open-mmlab/PIA
cd PIA

モデルのダウンロード

3つのダウンロードが必要です。

モデルのダウンロード用にスクリプトを書きました。

「stable-diffusion-v1-5」→こちらのスクリプトです。

「pia.ckpt」→こちらのスクリプトです。

「realisticVisionV51_v51VAE」→こちらのスクリプトです。
これは各自変更可能です。適当なモデルをCIVITAIなどからダウンロードしても問題ありません。

フォルダ構造が以下のようになるように配置します。
「stable-diffusion-v1-5」のフォルダ名が「StableDiffusion」になっていることに注意して下さい。

PIA/models
├─DreamBooth_LoRA
│      realisticVisionV51_v51VAE.safetensors
├─IP_Adapter
├─Motion_Module
├─PIA
│      pia.ckpt
├─StableDiffusion
│  │  model_index.json
│  ├─feature_extractor
│  │      preprocessor_config.json
│  ├─safety_checker
│  │      config.json
│  │      pytorch_model.bin
│  ├─scheduler
│  │      scheduler_config.json
│  ├─text_encoder
│  │      config.json
│  │      pytorch_model.bin
│  ├─tokenizer
│  │      merges.txt
│  │      special_tokens_map.json
│  │      tokenizer_config.json
│  │      vocab.json
│  ├─unet
│  │      config.json
│  │      diffusion_pytorch_model.bin
│  └─vae
│          config.json
│          diffusion_pytorch_model.bin
└─VAE

YAMLファイル

以下のようなYAMLファイルを用意して「mysettings.yaml」という名前でPIAフォルダ直下に置きました。

base: 'example/config/base.yaml'
prompts:
- - lightning, lighthouse
  - sun rising, lighthouse
  - fireworks, lighthouse
n_prompt:
  - 'wrong white balance, dark, sketches, worst quality, low quality, bad_pictures'
validation_data:
  input_name: 'lighthouse'
  image_name: 'lighthouse.jpg'
  validation_input_path: '__assets__/image_animation/real'
  save_path: 'example/result'
  mask_sim_range: [0]
generate:
  use_lora: false
  use_db: true
  global_seed: 5658137986800322011
  lora_path: ""
  db_path: "models/DreamBooth_LoRA/realisticVisionV51_v51VAE.safetensors"
  lora_alpha: 0.8

実行

PIAフォルダ直下で実行します。

python inference.py --config mysettings.yaml

結果

1枚の画像(動画作成に使用した画像)


プロンプト別の結果

lightning, lighthouse


sun rising, lighthouse


fireworks, lighthouse






このエントリーをはてなブックマークに追加