🚀 T2I-Adapter-SDXL - Depth-MiDaS
T2I Adapter是一个为稳定扩散模型提供额外条件控制的网络。每个T2I检查点接收不同类型的条件作为输入,并与特定的基础稳定扩散检查点配合使用。
本检查点为StableDiffusionXL检查点提供深度条件控制。这是腾讯ARC实验室与 Hugging Face 合作的成果。
✨ 主要特性
- 为StableDiffusionXL模型提供深度条件控制,增强图像生成的可控性。
- 与多种类型的控制图像兼容,支持不同的图像生成场景。
📦 安装指南
要开始使用,首先安装所需的依赖项:
pip install -U git+https://github.com/huggingface/diffusers.git
pip install -U controlnet_aux==0.0.7
pip install transformers accelerate safetensors
💻 使用示例
基础用法
from diffusers import StableDiffusionXLAdapterPipeline, T2IAdapter, EulerAncestralDiscreteScheduler, AutoencoderKL
from diffusers.utils import load_image, make_image_grid
from controlnet_aux.midas import MidasDetector
import torch
adapter = T2IAdapter.from_pretrained(
"TencentARC/t2i-adapter-depth-midas-sdxl-1.0", torch_dtype=torch.float16, varient="fp16"
).to("cuda")
model_id = 'stabilityai/stable-diffusion-xl-base-1.0'
euler_a = EulerAncestralDiscreteScheduler.from_pretrained(model_id, subfolder="scheduler")
vae=AutoencoderKL.from_pretrained("madebyollin/sdxl-vae-fp16-fix", torch_dtype=torch.float16)
pipe = StableDiffusionXLAdapterPipeline.from_pretrained(
model_id, vae=vae, adapter=adapter, scheduler=euler_a, torch_dtype=torch.float16, variant="fp16",
).to("cuda")
pipe.enable_xformers_memory_efficient_attention()
midas_depth = MidasDetector.from_pretrained(
"valhalla/t2iadapter-aux-models", filename="dpt_large_384.pt", model_type="dpt_large"
).to("cuda")
高级用法
url = "https://huggingface.co/Adapter/t2iadapter/resolve/main/figs_SDXLV1.0/org_mid.jpg"
image = load_image(url)
image = midas_depth(
image, detect_resolution=512, image_resolution=1024
)
prompt = "A photo of a room, 4k photo, highly detailed"
negative_prompt = "anime, cartoon, graphic, text, painting, crayon, graphite, abstract, glitch, deformed, mutated, ugly, disfigured"
gen_images = pipe(
prompt=prompt,
negative_prompt=negative_prompt,
image=image,
num_inference_steps=30,
adapter_conditioning_scale=1,
guidance_scale=7.5,
).images[0]
gen_images.save('out_mid.png')
📚 详细文档
模型详情
属性 |
详情 |
开发者 |
T2I-Adapter: Learning Adapters to Dig out More Controllable Ability for Text-to-Image Diffusion Models |
模型类型 |
基于扩散的文本到图像生成模型 |
语言 |
英语 |
许可证 |
Apache 2.0 |
更多信息资源 |
GitHub仓库,论文 |
模型复杂度 |
| SD-V1.4/1.5 | SD-XL | T2I-Adapter | T2I-Adapter-SDXL | 参数数量 | 8.6亿 | 26亿 | 7700万 | 7700万/7900万 |
|
引用格式 |
@misc{ title={T2I-Adapter: Learning Adapters to Dig out More Controllable Ability for Text-to-Image Diffusion Models}, author={Chong Mou, Xintao Wang, Liangbin Xie, Yanze Wu, Jian Zhang, Zhongang Qi, Ying Shan, Xiaohu Qie}, year={2023}, eprint={2302.08453}, archivePrefix={arXiv}, primaryClass={cs.CV} } |
检查点
训练信息
我们的训练脚本基于官方提供的训练脚本构建,可参考 此处。
模型在LAION-Aesthetics V2的300万高分辨率图像 - 文本对上进行训练,具体训练参数如下:
- 训练步数:35000
- 批量大小:数据并行,单GPU批量大小为
16
,总批量大小为 256
。
- 学习率:恒定学习率
1e-5
。
- 混合精度:fp16
🔧 技术细节
本模型基于T2I Adapter架构,通过学习适配器来挖掘文本到图像扩散模型更多的可控能力。它为StableDiffusionXL模型提供深度条件控制,在图像生成过程中引入深度信息,从而实现更精细的图像生成控制。模型的训练过程采用了特定的训练策略和参数设置,以确保模型能够学习到有效的特征表示。
📄 许可证
本模型使用Apache 2.0许可证。