Project Icon

GLIGEN

开放式条件引导的文本到图像生成模型

GLIGEN是一个创新的开放式条件引导文本到图像生成模型。它扩展了冻结文本到图像模型的功能,支持框、关键点和图像等多种引导条件。在COCO和LVIS数据集的零样本测试中,GLIGEN大幅超越了现有的有监督布局到图像生成基线。这项技术在开放世界场景下的应用前景广阔,同时也需关注其局限性和伦理影响。

GLIGEN:开放集合的基于约束的文本到图像生成(CVPR 2023)

Yuheng LiHaotian LiuQingyang WuFangzhou MuJianwei YangJianfeng GaoChunyuan Li*Yong Jae Lee*(*共同资深作者)

[项目主页] [论文] [演示] [YouTube视频] 预览图

图片替代文本

  • GLIGEN超越了文本提示:在冻结的文本到图像生成模型上实现新功能,可以基于各种提示进行约束,包括边界框、关键点和图像。
  • GLIGEN在COCO和LVIS数据集上的零样本性能大幅超越了现有的有监督布局到图像基线。

:fire: 新闻

  • [2023.04.18] 我们更新了arXiv论文。我们在这里解释了GLIGEN和ControlNet之间的区别,以帮助研究人员更好地深入理解。

  • [2023.04.08] GLIGEN与Grounding DINO结合,无需人工标注边界框及其概念。给定语言提示,Grounding DINO用边界框定位概念:图像 $\rightarrow$ (边界框, 概念),然后GLIGEN对图像进行修复:(边界框, 概念) $\rightarrow$ 图像:

  • [2023.03.22] 我们在diffusers上的分支已发布,支持基于文本框的生成和修复。现在更快、更灵活,并可从Huggingface Hub自动下载和加载模型!快来试试吧!
  • [2023.03.20] 通过查看计算机视觉在野外(CVinW)阅读列表,了解GLIGEN等基于约束的图像生成研究最新进展。
  • [2023.03.19] Yannic Kilcher在他最新的YouTube视频人工智能最重要的一周中介绍了GLIGEN。
  • [2023.03.05] Gradio演示代码已在GLIGEN/demo发布。
  • [2023.03.03] 代码库和检查点已发布。
  • [2023.02.28] 论文被CVPR 2023接收。
  • [2023.01.17] GLIGEN论文和演示发布。

环境要求

我们提供dockerfile来设置环境。

下载GLIGEN模型

我们提供了十个用于不同场景的检查点。这里的所有模型都基于SD-V-1.4。

模式模态下载链接
生成边界框+文本HF Hub
生成边界框+文本+图像HF Hub
生成关键点HF Hub
修复边界框+文本HF Hub
修复边界框+文本+图像HF Hub
生成Hed图HF Hub
生成Canny图HF Hub
生成深度图HF Hub
生成语义分割图HF Hub
生成法线图HF Hub

注意:提供的语义分割图检查点仅在ADE20K数据集上训练;法线图检查点仅在DIODE数据集上训练。

推理:使用GLIGEN生成图像

我们提供了一个脚本来使用提供的检查点生成图像。首先下载模型并将它们放在gligen_checkpoints中。然后运行

python gligen_inference.py

每个检查点的示例样本将保存在 generation_samples 中。可以查看 gligen_inference.py 了解更多关于接口的详细信息。

训练

基于约束条件的生成训练

首先需要为不同的约束模态条件准备数据。参考数据了解我们用于不同GLIGEN模型的数据。数据准备就绪后,使用以下命令来训练GLIGEN。(我们支持多GPU训练)

python main.py --name=你的实验名称 --yaml_file=你的yaml配置文件路径

--yaml_file是最重要的参数,下面我们将通过一个例子来解释关键组件,以便您熟悉我们的代码并了解如何自定义训练自己的约束模态。其他参数的名称已经很明确。实验将保存在OUTPUT_ROOT/name中。

可以参考configs/flicker_text.yaml作为示例。可以看到该yaml文件定义了5个组件:diffusionmodelautoencodertext_encodertrain_dataset_namesgrounding_tokenizer_input。通常,diffusionautoencodertext_encoder不应更改,因为它们是由Stable Diffusion定义的。应该注意以下几点:

  • model中,我们添加了新参数grounding_tokenizer,它定义了一个产生约束标记的网络。这个网络将在模型中实例化。可以参考ldm/modules/diffusionmodules/grounding_net_example.py了解更多关于定义这个网络的详细信息。
  • grounding_tokenizer_input将定义一个网络,接收数据加载器的批次数据,并为grounding_tokenizer生成输入。换句话说,它是数据加载器和grounding_tokenizer之间的中间类。可以参考grounding_input/__init__.py了解有关定义这个类的详细信息。
  • train_dataset_names应列出一系列数据集的名称(所有数据集将在内部连接,因此对于训练来说组合数据集很有用)。每个数据集名称应首先在dataset/catalog.py中注册。我们已列出了所有使用的数据集;如果需要在自己的模态数据集上训练GLIGEN,请不要忘记先在那里列出其名称。

基于约束条件的修复训练

GLIGEN还支持修复训练。可以使用以下命令:

python main.py --name=你的实验名称 --yaml_file=你的yaml配置文件路径 --inpaint_mode=True --ckpt=已适配模型的路径

通常,我们首先在生成任务(例如,基于文本约束的生成)上训练GLIGEN,这个模型的输入卷积有4个通道(Stable Diffusion的潜在空间),然后我们修改保存的检查点为9个通道,额外的5个通道初始化为0。这种继续训练可以导致更快的收敛和更好的结果。path_to_an_adapted_model指的是这个修改过的检查点,可以使用convert_ckpt.py来修改检查点。**注意:**生成和修复训练的yaml文件是相同的,只需要更改--inpaint_mode

引用

@article{li2023gligen,
  title={GLIGEN: Open-Set Grounded Text-to-Image Generation},
  author={Li, Yuheng and Liu, Haotian and Wu, Qingyang and Mu, Fangzhou and Yang, Jianwei and Gao, Jianfeng and Li, Chunyuan and Lee, Yong Jae},
  journal={CVPR},
  year={2023}
}

免责声明

原始GLIGEN部分是在第一作者在威斯康星大学麦迪逊分校工作期间,在微软的兼职实习中实现的。这个仓库使用大学的GPU在PyTorch中重新实现了GLIGEN。尽管存在微小的实现差异,但本仓库旨在为研究目的重现论文中的结果和观察。

条款和条件

我们对使用模型检查点和演示有严格的条款和条件;它仅限于遵循Latent Diffusion ModelStable Diffusion许可协议的用途。

更广泛的影响

重要的是要注意,我们的GLIGEN模型是为开放世界的基于约束条件的文本到图像生成而设计的,可以输入说明文本和各种条件(如边界框)。然而,我们也认识到负责任的AI考虑的重要性,以及需要明确传达我们研究的能力和局限性。虽然约束能力能很好地泛化到新的空间配置和概念,但我们的模型可能在超出范围或超出预期用例的情况下表现不佳。我们强烈反对在可能产生误导性或恶意图像的场景中滥用我们的模型。我们也承认用于训练我们模型的数据中可能存在潜在的偏见,需要持续评估和改进来解决这些问题。为确保透明度和问责制,我们包含了一个模型卡,描述了我们模型的预期用例、局限性和潜在偏见。我们鼓励用户参考这个模型卡,并在将我们的技术应用到新的环境中时谨慎行事。我们希望我们的工作能激发对AI伦理影响的进一步研究和讨论,以及在开发新技术时透明度和问责制的重要性。

项目侧边栏1项目侧边栏2
推荐项目
Project Cover

豆包MarsCode

豆包 MarsCode 是一款革命性的编程助手,通过AI技术提供代码补全、单测生成、代码解释和智能问答等功能,支持100+编程语言,与主流编辑器无缝集成,显著提升开发效率和代码质量。

Project Cover

AI写歌

Suno AI是一个革命性的AI音乐创作平台,能在短短30秒内帮助用户创作出一首完整的歌曲。无论是寻找创作灵感还是需要快速制作音乐,Suno AI都是音乐爱好者和专业人士的理想选择。

Project Cover

有言AI

有言平台提供一站式AIGC视频创作解决方案,通过智能技术简化视频制作流程。无论是企业宣传还是个人分享,有言都能帮助用户快速、轻松地制作出专业级别的视频内容。

Project Cover

Kimi

Kimi AI助手提供多语言对话支持,能够阅读和理解用户上传的文件内容,解析网页信息,并结合搜索结果为用户提供详尽的答案。无论是日常咨询还是专业问题,Kimi都能以友好、专业的方式提供帮助。

Project Cover

阿里绘蛙

绘蛙是阿里巴巴集团推出的革命性AI电商营销平台。利用尖端人工智能技术,为商家提供一键生成商品图和营销文案的服务,显著提升内容创作效率和营销效果。适用于淘宝、天猫等电商平台,让商品第一时间被种草。

Project Cover

吐司

探索Tensor.Art平台的独特AI模型,免费访问各种图像生成与AI训练工具,从Stable Diffusion等基础模型开始,轻松实现创新图像生成。体验前沿的AI技术,推动个人和企业的创新发展。

Project Cover

SubCat字幕猫

SubCat字幕猫APP是一款创新的视频播放器,它将改变您观看视频的方式!SubCat结合了先进的人工智能技术,为您提供即时视频字幕翻译,无论是本地视频还是网络流媒体,让您轻松享受各种语言的内容。

Project Cover

美间AI

美间AI创意设计平台,利用前沿AI技术,为设计师和营销人员提供一站式设计解决方案。从智能海报到3D效果图,再到文案生成,美间让创意设计更简单、更高效。

Project Cover

AIWritePaper论文写作

AIWritePaper论文写作是一站式AI论文写作辅助工具,简化了选题、文献检索至论文撰写的整个过程。通过简单设定,平台可快速生成高质量论文大纲和全文,配合图表、参考文献等一应俱全,同时提供开题报告和答辩PPT等增值服务,保障数据安全,有效提升写作效率和论文质量。

投诉举报邮箱: service@vectorlightyear.com
@2024 懂AI·鲁ICP备2024100362号-6·鲁公网安备37021002001498号