英文

稳定扩散修复(Stable Diffusion Inpainting)是一种潜在的文本到图像扩散模型,能够生成基于任何文本输入的逼真图像,并具有使用遮罩修复图片的额外功能。

稳定扩散修复初始化使用的是 Stable-Diffusion-v-1-2 的权重。首先进行了595k步的常规训练,然后进行了440k步的修复训练,分辨率为512x512,使用的数据集为“laion-aesthetics v2 5+”,并减少了10%的文本条件,以改善无需分类器的 classifier-free guidance sampling 。对于修复,UNet有5个额外的输入通道(4个用于编码的遮罩图像和1个用于遮罩本身),在恢复非修复检查点后将这些通道的权重初始化为零。训练过程中,我们生成合成遮罩,并在25%的遮罩中将所有内容遮挡。

示例:

您既可以使用 ?Diffusers library ,也可以使用 RunwayML GitHub repository

扩散器

from diffusers import StableDiffusionInpaintPipeline

pipe = StableDiffusionInpaintPipeline.from_pretrained(
    "runwayml/stable-diffusion-inpainting",
    revision="fp16",
    torch_dtype=torch.float16,
)
prompt = "Face of a yellow cat, high resolution, sitting on a park bench"
#image and mask_image should be PIL images.
#The mask structure is white for inpainting and black for keeping as is
image = pipe(prompt=prompt, image=image, mask_image=mask_image).images[0]
image.save("./yellow_cat_on_park_bench.png")

工作原理:

12335321 12336321
image mask_image
12337321
prompt Output
Face of a yellow cat, high resolution, sitting on a park bench

原始GitHub存储库

  • 下载权重 sd-v1-5-inpainting.ckpt
  • 按照说明 here 操作
  • 模型细节

    • 开发者:Robin Rombach,Patrick Esser

    • 模型类型:基于扩散的文本到图像生成模型

    • 语言:英语

    • 许可证: The CreativeML OpenRAIL M license 是一个 Open RAIL M license ,从Robin Rombach和Patrick Esser在负责任的AI许可领域的工作中得出。还请参阅我们的基于 the article about the BLOOM Open RAIL license 的许可证。

    • 模型描述:这是一个用于根据文本提示生成和修改图像的模型。它是一个 Latent Diffusion Model ,使用了一个固定的预训练文本编码器( CLIP ViT-L/14 ),如 Imagen paper 中建议的那样。

    • 获取更多信息的资源: GitHub Repository Paper

    • 引用方式:

      @InProceedings{Rombach_2022_CVPR,
          author    = {Rombach, Robin and Blattmann, Andreas and Lorenz, Dominik and Esser, Patrick and Ommer, Bj\"orn},
          title     = {High-Resolution Image Synthesis With Latent Diffusion Models},
          booktitle = {Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR)},
          month     = {June},
          year      = {2022},
          pages     = {10684-10695}
      }
      

    用途

    直接使用

    该模型仅适用于研究目的。可能的研究领域和任务包括:

    • 部署可能生成有害内容的模型的安全性。
    • 探索和了解生成模型的限制和偏差。
    • 生成艺术品,并在设计和其他艺术过程中使用。
    • 应用于教育或创意工具。
    • 生成模型的研究。

    下面描述了排除的用途。

    滥用、恶意用途和超出范围的用途

    注意:本节摘自 DALLE-MINI model card ,但同样适用于稳定扩散v1。

    模型不应用于故意创造或传播会对人们产生敌对或让人感到困扰、痛苦或冒犯的图像;或传播历史或当前刻板印象的内容。

    超出范围的用途

    该模型未经培训,无法真实地呈现人物或事件,因此使用该模型来生成此类内容超出了该模型的能力范围。

    滥用和恶意用途

    使用该模型生成对个人残忍的内容属于滥用该模型。这包括但不限于:

    • 生成贬低、贬损或以其他方式有害的人或其环境、文化、宗教等的形象。
    • 有意宣传或传播歧视性内容或有害刻板印象。
    • 未经个人同意而冒用其身份。
    • 未经可能看到的人的同意而出现性内容。
    • 误导和虚假信息
    • 严重暴力和血腥描绘
    • 违反版权或许可条款共享的内容。
    • 以违反版权或许可条款的方式分享修改过的受版权或许可的内容。

    限制和偏见

    限制

    • 模型无法实现完美的逼真效果
    • 模型无法呈现清晰的文本
    • 模型在涉及组合性的更复杂任务(如渲染与“一个红色的立方体位于一个蓝色的球体之上”相对应的图像)方面表现不佳
    • 生成的人脸和人物可能不正确
    • 该模型主要使用英文说明进行训练,对于其他语言可能效果不佳
    • 模型的自动编码部分有损
    • 模型是基于包含成人内容的大规模数据集 LAION-5B 进行训练的,如果没有额外的安全机制和考虑,该模型不适合产品使用。
    • 没有采取额外的措施去除数据集中的重复图片。因此,我们观察到在训练数据中有一定程度的重复图片记忆化。可以使用 https://rom1504.github.io/clip-retrieval/ 搜索训练数据,可能有助于检测记忆化的图片。

    偏见

    尽管图像生成模型的能力令人印象深刻,但它们也可能强化或加剧社会偏见。稳定扩散v1是在 LAION-2B(en) 的子集上训练的,而该子集主要包含了英文描述的图像。使用其他语言的社区和文化的文本和图像很可能无法得到充分考虑。这会影响模型的总体输出,因为白人和西方文化通常被设定为默认值。此外,与以英语为语言提示生成的内容相比,该模型使用非英语提示生成内容的能力显著较差。

    训练

    训练数据 模型开发者使用以下数据集训练了该模型:

    • LAION-2B(英文)及其子集(见下一节)

    训练过程 稳定扩散v1是一种潜在的扩散模型,它将自动编码器与在自动编码器的潜空间中训练的扩散模型相结合。训练过程中,

    • 图像通过编码器进行编码,将图像转换为潜在表示。自动编码器使用相对下采样因子为8,将形状为H x W x 3的图像转换为形状为H/f x W/f x 4的潜空间。
    • 文本提示通过ViT-L/14文本编码器进行编码。
    • 文本编码器的非汇总输出通过交叉注意力传递到潜在扩散模型的UNet骨干网络中。
    • 损失是在潜空间中添加的噪声和UNet的预测之间的重建目标。

    我们目前提供六个检查点,sd-v1-1.ckpt,sd-v1-2.ckpt和sd-v1-3.ckpt,sd-v1-4.ckpt,sd-v1-5.ckpt和sd-v1-5-inpainting.ckpt,训练如下:

    • sd-v1-1.ckpt:分辨率为256x256,在 laion2B-en 上进行了237k步的训练。分辨率为512x512,在 laion-high-resolution 上进行了194k步的训练(来自LAION-5B的170M个示例,分辨率>=1024x1024)。

    • sd-v1-2.ckpt:从sd-v1-1.ckpt恢复。在"laion-improved-aesthetics"上进行了515k步的训练(laion2B-en的子集,经过筛选只保留原始大小>=512x512,估计的美学得分>5.0,估计的水印概率