❤️ 如果你也关注 AI 的发展现状,且对 AI 应用开发感兴趣,我会每日分享大模型与 AI 领域的开源项目和应用,提供运行实例和实用教程,帮助你快速上手AI技术!
🥦 AI 在线答疑 -> 智能检索历史文章和开源项目 -> 尽在微信公众号 -> 搜一搜:蚝油菜花 🥦
🎨 “设计师福音!微软联手清华北大推出ART:一键生成50+透明图层,AI助力高效创作”
大家好,我是蚝油菜花。你是否也遇到过——
- 👉 设计复杂图像时,图层管理混乱,修改起来费时费力
- 👉 想要快速生成透明背景的素材,却苦于工具限制
- 👉 需要根据文本提示生成多层图像,但现有工具无法满足需求
今天要介绍的 ART(Anonymous Region Transformer),正是为解决这些问题而生!这款由微软联合清华、北大等顶尖机构推出的多层透明图像生成技术,能够根据全局文本提示和匿名区域布局,直接生成多个独立的透明图层(支持 RGBA 格式),图层可以单独编辑、组合或叠加。无论是设计师、艺术家,还是内容创作者,ART 都能为你带来前所未有的创作体验!
🚀 快速阅读
ART 是一种新型的多层透明图像生成技术,支持根据全局文本提示和匿名区域布局生成多个独立的透明图层。
- 核心功能:支持多层透明图像生成、匿名区域布局、高效生成机制和高质量自编码器。
- 技术原理:采用逐层区域裁剪机制和多层透明图像自编码器,显著提升了生成效率和质量。
ART 是什么
ART(Anonymous Region Transformer)是一种新型的多层透明图像生成技术,能够根据全局文本提示和匿名区域布局直接生成多个独立的透明图层(支持 RGBA 格式)。这些图层可以单独编辑、组合或叠加,极大地提高了图像生成的灵活性和效率。
ART 的核心优势在于其高效的生成机制和强大的透明度处理能力。通过采用匿名区域布局,生成模型可以自主决定哪些视觉信息与文本对齐,提供了更大的灵活性。此外,ART 引入了逐层区域裁剪机制,显著降低了注意力计算成本,生成速度比全注意力方法快 12 倍以上。它还支持 50 层以上的多层图像生成,减少了图层之间的冲突。
ART 的主要功能
- 多层透明图像生成:ART 能根据全局文本提示和匿名区域布局,直接生成多个独立的透明图层(支持 RGBA 格式),图层可以单独编辑、组合或叠加。
- 匿名区域布局:设计灵感来源于“图式理论”,支持生成模型自主决定哪些视觉信息与文本信息对齐,提供了更大的灵活性。
- 高效生成机制:引入逐层区域裁剪机制,只选择与每个匿名区域相关的视觉信息,显著降低了注意力计算成本,生成速度比全注意力方法快12倍以上。
- 高质量自编码器:提出多层透明图像自编码器,支持直接编码和解码多层图像的透明度,进一步提升了生成质量和效率。
- 减少图层冲突:能处理50层以上的多层图像生成,有效减少了图层之间的冲突。
ART 的技术原理
- 逐层区域裁剪机制:ART 引入了逐层区域裁剪机制,仅选择与每个匿名区域相关的视觉信息进行处理。这种机制显著降低了注意力计算的成本,生成速度比全注意力方法快12倍以上,能处理多达50个以上的不同图层。
- 多层透明图像自编码器:ART 提出了高质量的多层透明图像自编码器,能直接对多层图像的透明度进行编码和解码。通过将透明度信息嵌入RGB通道,ART 支持对多层透明图像的精确控制和可扩展生成。
- 全局文本提示与交互性:用户只需提供全局文本提示和匿名区域布局,模型可根据上下文自主生成每个区域的内容。
- 全局一致性与图层控制:ART 通过生成全局参考图像和背景图像,确保不同图层之间的视觉一致性,避免了传统方法中常见的图层冲突。用户可以通过修改全局提示或匿名区域布局动态调整生成的图像内容。
如何运行 ART
1. 创建 Conda 环境
conda create -n multilayer python=3.10 -y
conda activate multilayer
2. 安装依赖
pip3 install torch==2.4.0 torchvision==0.19.0
pip install diffusers==0.31.0 transformers==4.44.0 accelerate==0.34.2 peft==0.12.0 datasets==2.20.0
pip install wandb==0.17.7 einops==0.8.0 sentencepiece==0.2.0 mmengine==0.10.4 prodigyopt==1.0
3. 登录 Hugging Face
huggingface-cli login
4. 快速开始
使用 example.py
进行简单尝试:
python example.py
5. 测试多层图像生成
5.1 下载检查点
创建路径 multi_layer_gen/checkpoints
并下载以下检查点:
变量 | 描述 | 操作 |
---|---|---|
ckpt_dir | 匿名区域变换器检查点 | 从 Google Drive 下载 |
transp_vae_ckpt | 多层透明度解码器检查点 | 从 Google Drive 下载 |
pre_fuse_lora_dir | 初始融合的 LoRA 权重 | 从 Google Drive 下载 |
extra_lora_dir | 可选的 LoRA 权重(用于美学改进) | 从 Google Drive 下载 |
5.2 运行测试脚本
python multi_layer_gen/test.py \
--cfg_path=multi_layer_gen/configs/multi_layer_resolution512_test.py \
--save_dir=multi_layer_gen/output/ \
--ckpt_dir=multi_layer_gen/checkpoints/anonymous_region_transformer_ckpt \
--transp_vae_ckpt=multi_layer_gen/checkpoints/transparent_decoder_ckpt.pt \
--pre_fuse_lora_dir=multi_layer_gen/checkpoints/pre_fuse_lora \
--extra_lora_dir=multi_layer_gen/checkpoints/extra_lora
5.3 使用 Notebook 示例
请查看 test.ipynb
。
资源
- 项目主页:https://art-msra.github.io/
- GitHub 仓库:https://github.com/microsoft/art-msra
- HuggingFace 仓库:https://huggingface.co/ART-Release/ART_v1.0
❤️ 如果你也关注 AI 的发展现状,且对 AI 应用开发感兴趣,我会每日分享大模型与 AI 领域的开源项目和应用,提供运行实例和实用教程,帮助你快速上手AI技术!
🥦 AI 在线答疑 -> 智能检索历史文章和开源项目 -> 尽在微信公众号 -> 搜一搜:蚝油菜花 🥦