$30 off During Our Annual Pro Sale. View Details »

[CV勉強会@関東 CVPR2023] Paint by Example : exemplar-based Image Editing with Diffusion Models

Akihiro
August 25, 2023

[CV勉強会@関東 CVPR2023] Paint by Example : exemplar-based Image Editing with Diffusion Models

第59回 コンピュータビジョン勉強会@関東(後編)での発表スライドです。
cf) https://kantocv.connpass.com/event/288902/
論文リンク) https://openaccess.thecvf.com/content/CVPR2023/html/Yang_Paint_by_Example_Exemplar-Based_Image_Editing_With_Diffusion_Models_CVPR_2023_paper.html

Akihiro

August 25, 2023
Tweet

More Decks by Akihiro

Other Decks in Research

Transcript

  1. Paint by Example :
    exemplar-based Image Editing with
    Diffusion Models
    第59回 コンピュータビジョン勉強会@関東(後編)
    CVPR2023読み会 (後編)
    2023年8月26日

    View Slide

  2. Background
    Text-based conditionで編集するモデルでは、
    (手元にある)参照したい画像の情報を完全に反映することはできない
    (全ての特徴を詳細に述べること/生成に反映すること は難しい)
    Dreambooth[1] (CVPR’23) Text driven blended diffusion[2]
    2

    View Slide

  3. Exemplar-based image editing
    入力画像にマスク画像と参照画像で条件付けを行い、
    マスク画像の領域を参照画像に”自然に”置き換えた画像生成をするタスク
    入力画像
    マスク画像 参照画像
    生成画像
    変換
    条件付け
    条件付け
    • 課題1:参照画像から背景等のノイズを除いた、転写すべき対象の情報を抽出する必要がある
    • 課題2:ただのコピペでは不十分で、入力画像上に(向きなど考慮して)自然に転写をする必要がある
    • 課題3:境界領域を自然に保つ必要がある (mask領域全てを参照画像の情報で塗りつぶして良いわけではない)
    3

    View Slide

  4. Examples (1/2) 4
    入力画像 マスク画像 参照画像 生成画像 入力画像 マスク画像 参照画像 生成画像

    View Slide

  5. Examples (2/2) 5
    入力画像 マスク画像 参照画像 生成画像 入力画像 マスク画像 参照画像 生成画像

    View Slide

  6. Related work : Image Composition
    • 画像の補完を行う
    • 対象の画像をそのままCopy&Pasteして自然な
    画像になるよう色合いの調整を行う
    • コピペ対象外の領域も入力画像に含まれていると
    いう点でexemplar-based image editingと
    異なる
    ColorGAN[4]
    HVIDIT[3]
    6

    View Slide

  7. Related work : Semantic image editing
    GANの潜在空間のdisentanglement[5]
    Iterativeにreference画像の特徴を取り込む (ILVR[6])
    7

    View Slide

  8. Related work : Text-driven image editing
    Finetuning & Latentの更新
    Dreambooth Imagic[7]
    (Semantic image editingの中でも特にテキストで条件付けする手法群)
    Finetuning
    Text driven blended diffusion Prompt attention[8]
    8

    View Slide

  9. Preliminaries : CLIP[9]
    • 大量の画像/テキストのペアで
    contrastive learningを行い
    画像・テキストを同じ特徴空間に埋め込む
    • Text encoder : Transformer
    • Image encoder : ResNetの改良版 or ViT
    • WebImageText (4億組)を使用
    • 多様なタスクに対してゼロショット転移で優れた精度
    • ImageNetのSOTAモデルと比較し、21/27で高精度を達成
    画像) https://openai.com/research/dall-e , https://openai.com/research/clip
    9

    View Slide

  10. Preliminaries : Stable diffusion
    • Latent-diffusion model[10]を採用した
    テキストベース画像生成モデル
    • TextをCLIP text encoder (ViT-L)で抽出した
    特徴をDenoising U-Netの
    cross attentionに用いることで条件付け
    • LAION-400M datasetを用いて学習
    (テキストと画像の4億枚のペアデータセット)
    Diffusion modelについて
    • What are diffusion models? https://lilianweng.github.io/posts/2021-07-11-diffusion-models/
    • SSII2023 [SS1] 拡散モデルの基礎とその応用 ~Diffusion Models入門~ https://speakerdeck.com/ssii/ssii2023-ss1
    • 拡散モデル データ生成技術の数理 www.amazon.co.jp/dp/400006343X
    10

    View Slide

  11. Notation & Data preparation
    • Source image : 𝑥! ∈ ℝ"×$×%
    • Binary mask : 𝑚 ∈ 0,1 "×$
    (編集したい要素のピクセルは1)
    • Reference image : 𝑥& ∈ ℝ"!×$!×%
    • 𝒙𝒔, 𝒙𝒓, 𝒎 , 𝒚 のペアを集めることは難しい(𝒚 : 正解画像)
    → 自己教師あり学習の活用 (次頁)
    • bounding boxのアノテーションをbinary maskとして使用
    • 𝑥# = 𝑚 ⊙ 𝑥$
    • 学習データのペア )
    𝑚 ⊙ 𝑥$, 𝑥#, 𝑚 , 𝑥$
    • (
    𝒎 = 𝟏 − 𝒎
    11

    View Slide

  12. Approach
    入力画像
    マスク画像 参照画像
    生成画像
    変換
    条件付け
    条件付け
    入力画像
    マスク画像 参照画像
    生成画像
    変換
    条件付け
    条件付け
    (本論文)
    自己教師あり学習
    • 入力画像/参照画像の
    ペアがあれば良い
    • (マスク画像は入力画像
    から作る必要有)
    ナイーブなアプローチ
    (データ収集のコストが膨大)
    12

    View Slide

  13. Naïve solution and its limitation
    Text-guided inpainting modelの
    Text condition(CLIP text encoder)を
    Image condition(CLIP image encoder)に
    変更して学習
    ロス関数 𝐿 = 𝔼',)",*|| 𝜖+ 𝑦', (
    𝑚 ⊙ 𝑥! , 𝑐, 𝑡 − 𝜖||,
    ,
    • 𝑡: timestep
    • 𝑐 : condition
    • 𝑥#
    : source image
    • %
    𝑚 : mask
    • 𝑦$
    : target image (𝑥#
    )
    上記設定で学習したところ、
    コピー&ペーストを学習してしまった(右図)
    13

    View Slide

  14. Information Bottleneck
    • コピー&ペーストを防ぐためにImage
    encoderで獲得した特徴ベクトルを、
    追加で変換 (15層のMLP層)
    • ベース : Stable Diffusion (v1.4)
    • U-netの最初の層に5チャンネル分追加
    • 1channel : mask region
    • 4channel : encoded-mask image
    • 追加した層の重みは0初期化
    • CLIP image encoder (ViT-L)のみ
    重み固定して学習
    14

    View Slide

  15. Strong Augmentation
    • Reference Image Augmentation
    • Flip
    • Rotation
    • Blur
    • Elastic transform
    • Mask Shape Augmentation
    • 矩形のbounding boxの1辺の
    両頂点・中点(からランダムに一定量動かした点)の
    3点を制御点に持つベジエ曲線でfit
    • 各ベジエ曲線の20等分点に対し、
    それぞれ -5 ~ 5pixelランダムに移動させた点を
    リストに保持
    • 上記手続きで獲得した点を順番に繋ぐことで
    獲得した領域をaugmentation後のマスク領域とする
    • 課題3:境界領域を自然に保つ必要がある
    (mask領域全てを参照画像の情報
    で塗りつぶして良いわけではない) に対応
    15
    引用) https://bezier.readthedocs.io/en/stable/python/reference/bezier.curve.html

    View Slide

  16. Classifier-free sampling[11]
    𝑠: guidance scale
    生成画像にconditionの情報の反映具合を調整するための方法
    • 学習時 : 一定の確率(数値実験では20%) で conditionalなlatentをunconditionalなlatent (learnable)に
    入れ替えて学習を行う
    • 推論時 : unconditionalな推論(denoise)とconditionalな推論(denoise)を行いその差分の情報を元に
    推論結果の更新を行う (下図)
    Unconditional output (𝜖!
    (𝑦"
    , 𝑣))
    Conditional output (𝜖!
    (𝑦"
    , 𝑐))
    Unconditional output (𝜖!
    (𝑦"
    , 𝑣))
    Conditional output (𝜖!
    (𝑦"
    , 𝑐))
    16

    View Slide

  17. Experimental Settings
    • Backbone : Stable diffusion
    • Dataset : OpenImages
    • 16 million bounding boxes
    • 600 object classes
    • 1.9 million images
    • 学習 : 7days on 64 NIVIDIA V100 GPU
    • 解像度 : 512 x 512
    • Optimizer : AdamW (lr=1e-5)
    17

    View Slide

  18. Baselines
    • Blended Diffusion[2]
    • CLIP lossに基づいたguidanceを行う方法
    • “a photo of C” (C : object class)
    • Blended diffusion (image)
    • Blended diffusionを画像について使用
    • Stable diffusion[10]
    • Reference imageの情報をテキストプロンプトとして与え、
    mask領域をinpaintingする手法として使用
    • DCCF[12]
    • LAMA[13]を用いてmask領域をinpainting
    • Reference imageから転写に必要な領域を抽出し、コピーアンドペースト
    • DCCFを適応し、自然な色調変換を行う
    18

    View Slide

  19. Qualitative Analysis
    MSCOCOから3,500枚の画像を抽出
    COCOEE (COCO exemplar-based image Editing)として提供 (著者githubよりダウンロード可能)
    19

    View Slide

  20. Evaluation metrics
    • FID Score (lower is better)
    • 生成画像と実画像の特徴ベクトル群が多次元正規分布に従っていると仮定し、
    それぞれCLIP image encoder(ViT-B)で抽出した特徴ベクトル群同士の
    Fréchet inception distance (Wasserstein-2 distance)を計算
    • Quality Score (lower is better)
    • 生成した画像群に対応する特徴ベクトル群がいかにMixture normal distributionに従っているか(尤度)
    特徴抽出にはCLIP image encoder(ViT-B)を使用
    • CLIP Score (higher is better)
    • Reference imageと生成画像のedited regionをそれぞれ
    CLIP image encoder(ViT-B)を用いて特徴抽出した特徴同士のコサイン類似度の平均
    20

    View Slide

  21. Quantitative Analysis
    MSCOCOから3,500枚の画像を抽出
    COCOEE (COCO exemplar based image Editing)と
    して提供 (著者githubよりダウンロード可能)
    PaintByExampleが3つの指標全てで最良の結果 (Reference画像の反映 / 自然な画像生成)
    Image based editing手法 (Blended Diffusion-Image / DCCF) はPaintByExampleに
    匹敵するCLIP Scoreを記録しているが、生成品質に関しては大きなギャップが存在
    21
    GT Mask Reference

    View Slide

  22. User Study
    • テスト : MSCOCOから3,500枚の画像を抽出
    COCOEE (COCO exemplar based image Editing)として提供
    (公式github pageよりダウンロード可能)
    • 50人の参加者に2枚の入力画像(GT, Reference) と 5手法それぞれの生成画像を見せ、
    五段階評価 (1:best – 5:worst)
    • Quality : 生成画像の品質
    • Consistency : reference imageを反映できているか
    GT Mask Reference
    • 直接copy&pasteを行う
    DCCFには
    consistencyに関して(流石に)敗北
    • 自然な転写(Quality)に関しては勝利
    22

    View Slide

  23. Ablation Study
    コピーアンドペースト学習時
    Reference画像のノイズ部分の転写が減少
    Stable diffusionの活用
    23

    View Slide

  24. Effect of classifier-free guidance scale
    𝑠: guidance scale
    exemplar-based image editingにおいてもclassifier-free guidanceにより
    Conditionの特徴をより強く生成画像に反映させることが可能 (default : 𝜆 = 5)
    Unconditional (𝜖!
    (𝑦"
    , 𝑣))
    Conditional (𝜖!
    (𝑦"
    , 𝑐))
    24

    View Slide

  25. In-the-wild image editing
    Text-based generationとの比較
    (Reference画像の情報を保ったimage
    editingをtext-based generationで行うこと
    は難しい)
    複数回実行した際の比較
    → 向きなど追加で保ちたい情報がある場合は
    ControlNet的要素を入れる必要がありそう
    25

    View Slide

  26. Limitation
    学習データのドメインと大きく差分がある
    ドメイン(油絵等)はうまく転写できない
    詳細なデザインに関するreference画像の情報は
    転写できていない
    26

    View Slide

  27. PASTE, INPAINT AND HARMONIZE VIA DENOISING: SUBJECT-
    DRIVEN IMAGE EDITING WITH PRE-TRAINED DIFFUSION MODEL[14]
    • 2023/6/13 ArXiV投稿 (2022/11/23 PaintByExample ArXiV投稿)
    • 提案フレームワーク : Paste, inpaint and Harmonize via Denoising (PhD)
    • Segmentation → image harmonization の2段階アプローチ
    • Stable diffusionの重みは固定し、cross attentionに用いる特徴抽出器のみ学習
    (image harmonization stepにおいて)
    • Text conditionの活用 (BLIP2)
    27

    View Slide

  28. PASTE, INPAINT AND HARMONIZE VIA DENOISING: SUBJECT-
    DRIVEN IMAGE EDITING WITH PRE-TRAINED DIFFUSION MODEL[14]
    PaintByExample (PbE)と比較し
    (直接Copy&Pasteしている分)
    reference imageの特徴をより保持した
    画像生成が可能に
    Harmonizing moduleで
    自然な対象物の向きを考慮した変換を学習
    28

    View Slide

  29. Taming the Power of Diffusion Models for High-Quality
    Virtual Try-On with Appearance Flow[15]
    • 2023/8/11 ArXiv投稿 (ACM Multimedia 2023採択)
    • 2段階アプローチ
    • Warping module
    (服の”自然な”変形を学習)
    • Diffusion model
    (最終的な仮想着用画像の生成)
    29

    View Slide

  30. Taming the Power of Diffusion Models for High-Quality
    Virtual Try-On with Appearance Flow[15] (MM2023)
    Person & Clothes PaintByExample 提案手法 Person & Clothes PaintByExample 提案手法
    PaintByExample (PbE)と比較し(直接Copy&Pasteしている分)
    reference imageの特徴をより保持した画像生成 (仮想試着) が可能に
    30

    View Slide

  31. まとめ
    • Exemplar-based image editingというタスクを提案しベースラ
    インとなる手法を構築
    • source画像、mask画像、reference画像を入力に、ソース画像の一
    部の領域をreference画像で自然に置き換えるタスク
    • Reference imageをCLIP image encoderを用いて取得したベ
    クトルに対し、追加でMLP層を用いて変換したベクトルを、Stable
    diffusionのU-netのcross attentionとして入力
    • 類似手法との比較の結果、reference画像から転写すべき対象の
    抽出・マスク領域に対応した自然な変形・source画像との境界領
    域含めた自然な転写を達成していることを定量・定性的に評価
    31

    View Slide

  32. References
    1. Nataniel Ruiz et. al., DreamBooth: Fine Tuning Text-to-Image Diffusion Models for Subject-Driven Generation, CVPR,
    2023
    2. Omri Avrahami et. al., Blended Diffusion for Text-driven Editing of Natural Images, CVPR, 2022
    3. Zonghui Guo et. al., Intrinsic Image Harmonization, CVPR, 2021
    4. Bor-Chun Chen and Andrew Kae, Toward Realistic Image Compositing with Adversarial Learning, CVPR, 2019
    5. Yujun Shen and Bolei Zhou, Closed-Form Factorization of Latent Semantics in GANs, CVPR, 2021
    6. Jooyoung Choi et. al., ILVR: Conditioning Method for Denoising Diffusion Probabilistic Models, ICCV, 2021.
    7. Bahjat Kawar et. al., Imagic: Text-Based Real Image Editing with Diffusion Models, CVPR, 2023
    8. Amir Hertz et. al., Prompt-to-Prompt Image Editing with Cross Attention Control, ArXiv, 2022
    9. Alec Radford et. al., Learning Transferable Visual Models From Natural Language Supervision,
    10. Robin Rombach et. al., High-Resolution Image Synthesis with Latent Diffusion Models, CVPR, 2022
    11. Jonathan Ho & Tim Salimans, CLASSIFIER-FREE DIFFUSION GUIDANCE, NeurIPS, 2021
    12. Ben Xue et. al., DCCF: Deep Comprehensible Color Filter Learning Framework for High-Resolution Image
    Harmonization, ECCV, 2022.
    13. Roman Suvorov et. Al., Resolution-robust large mask inpainting with fourier convolutions, ICCV, 2022
    14. Xin Zhang et. al., PASTE, INPAINT AND HARMONIZE VIA DENOISING: SUBJECT-DRIVEN IMAGE EDITING WITH
    PRE-TRAINED DIFFUSION MODEL, ArXiv, 2023.
    15. Junhong Gou et. al., Taming the Power of Diffusion Models for High-Quality Virtual Try-On with Appearance Flow,
    MM, 2023
    32

    View Slide