(2024,CompAgent,LLM,提示分解,基于布局的对象组合)分而治之:语言模型可以规划和自我纠正组合文本到图像的生成

Divide and Conquer: Language Models can Plan and Self-Correct for Compositional Text-to-Image Generation

公和众和号:EDPJ(进 Q 交流群:922230617 或加 VX:CV_EDPJ 进 V 交流群)

目录

0. 摘要

3. 方法

3.1 LLM 代理

3.2 无调整多概念定制

3.3 布局到图像生成

3.4 局部图像编辑

4. 结果


0. 摘要

尽管在文本生成高质量图像的模型方面取得了显著进展,但在复杂文本提示的情况下,这些方法仍然难以确保对图像的可控性,特别是在保留对象属性和关系方面。在这篇论文中,我们提出了CompAgent,这是一种无需训练的组合文本生成图像的方法,其核心是一个大型语言模型(LLM)代理。CompAgent 的基本思想是基于一种分而治之(divide-and-conquer)的方法。给定一个包含多个概念(包括对象、属性和关系)的复杂文本提示,LLM 代理首先对其进行分解,这包括提取单个对象、它们关联的属性以及预测一个连贯的场景布局。然后,这些单独的对象可以独立地被处理。随后,代理通过分析文本进行推理,规划并使用工具来组合这些孤立的对象。最后,我们将验证和人工反馈机制合并到我们的代理中,以进一步纠正潜在的属性错误并完善生成的图像。在 LLM 代理的指导下,我们提出了一个无微调多概念定制模型和一个布局到图像生成模型作为概念组合的工具,以及一个局部图像编辑方法作为与代理交互的工具进行验证。场景布局在这些工具之间控制图像生成过程,以防止在多个对象之间产生混淆。大量实验证明了我们的组合文本生成图像方法的优越性:CompAgent 在 T2I-CompBench 上实现了超过 10% 的改进,这是一个用于开放式世界组合 T2I 生成的综合基准。对各种相关任务的扩展也说明了我们的 CompAgent 在潜在应用方面的灵活性。

项目页面:https://zhenyuw16.github.io/CompAgent/

3. 方法

我们的 CompAgent 概述如图 3 所示。LLM 代理协调整个框架。它对复杂文本提示进行分解,分析文本中的属性,并设计要使用的工具的计划。最终,它调用工具来进行组合文本生成图像。

3.1 LLM 代理

我们的 LLM 代理的主要职责围绕执行任务,包括分解、规划、工具使用以及验证和反馈的实施。 

3.2 无调整多概念定制

在本节中,我们主要介绍我们的无调整多概念定制工具。其概述如图 4 所示。训练无调整定制图像生成模型通常需要进行大规模的预训练以进行主题表示学习。目前,已经有支持单概念定制的无调整方法可用。对于我们的方法,我们基于现有的单概念定制模型,BLIP-Diffusion [Li et al. 2023a],并通过引入场景布局扩展其能力,以适应多个概念。值得注意的是,我们通过融合场景布局,消除了对大规模上游预训练的需求,直接构建了一个无调整的多概念定制模型,以保持对象属性的完整性。

具体来说,对于每个概念,我们使用 BLIP-2 编码器和多模态编码器 [L i et al. 2023b] 提取其主题提示嵌入。为了全面了解准确的对象属性,我们利用与单个概念对应的多个图像中包含的信息。我们收集从这些图像中派生的所有嵌入,并计算它们的平均值,生成用于后续使用的明确定义的主题提示嵌入。它们与文本提示嵌入连接,并传递到单概念定制模型的 U-Net [L i et al. 2023a] 进行图像生成。

然而,直接聚合来自多个概念的嵌入很容易导致在图像生成过程中不同对象之间的干扰,从而产生概念混淆问题。为了避免这种情况,我们利用场景布局来调节每个对象的位置,从而减轻它们之间干扰的风险。我们采用两个级别的布局控制 - 全局和局部。

如图 4 顶部所示,我们对 COCO 数据集 [Lin et al. 2014] 的背景进行掩蔽,并通过布局到图像范式训练 ControlNet [Zhang et al. 2023]。通过残差,ControlNet 被用于控制 U-Net。它在全局级别提供强大的控制,有效区分多个对象,因此很好地避免它们之间的混淆。然而,它只能进行全局控制,无法独立控制每个单独的对象的位置。

为了分别进行个体对象的局部布局控制,我们进一步建议根据场景布局编辑交叉注意力图,这是因为交叉注意力图直接影响生成图像的空间布局 [Hertz et al. 2023]。具体而言,我们收集每个对象词及其属性词的交叉注意力图。我们在与对象存在的区域添加正常数 𝛼+,同时在其余区域添加负常数 𝛼−。与 ControlNet 相比,交叉注意力编辑实现了明显较弱的布局控制,但可以独立管理每个对象的位置。因此,当与 ControlNet 协同集成时,它有效地控制整个图像的总体布局。最终,在布局的指导下,不同的对象可以互相区分,避免混淆问题,实现多概念定制。

3.3 布局到图像生成

为了保证对象之间的关系,我们直接从场景布局生成图像。虽然我们之前采用的 ControlNet 和交叉注意力编辑方法确实可以解决布局到图像的问题,但它们的特点是对布局施加了太强的约束。一旦场景布局偏离了对对象关系的精确描述,就变得难以确保对这些关系的准确表示。因此,我们通过反向传播限制框损失(box-constrained loss) [Xie et al. 2023] 的潜在更新策略进行从布局生成图像。它对布局提供相对宽松的控制,因此可以灵活地确保对象之间的关系。

3.4 局部图像编辑

为了纠正具有错误属性的对象,我们引入了我们的局部图像编辑工具,如图 5 所示。通过向我们的LLM 代理查询进行验证,我们可以确定哪些对象属性是错误的并需要修改。我们利用 Grounding DINO [Liu et al. 2023c] 和 SAM [Kirillov et al. 2023] 的组合来分割对象。生成的分割掩模用于交叉注意力编辑,为图像编辑提供位置指导。需要编辑的图像通过 DDIM 反演重新转换为潜在,作为后续图像生成过程的初始潜在。具有正确属性特征的对象的图像已经在先前生成过。这些图像与文本提示一起,以类似于先前定制模型的方式进行处理,作为 U-Net 的条件输入。图像生成的过程通常遵循先前的多概念定制,其中图像 DDIM 反演作为初始潜在。分割掩模用作交叉注意力编辑的指导,而不使用 ControlNet。通过这种方式,具有错误属性的对象可以得到有效替代和纠正。

4. 结果

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/440187.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【郑益慧】模拟电子技术:8.结型场效应管特性和参数

结型场效应管特性(N沟道) :当日事当当日毕 :通过讨论加强学习的深度 中间是一个N型区参杂了两个高浓度的P 栅极控制了两个P。 源端电压给0,看一看到图中天生就沟道。 如何控制呢? 给Ugs加反偏电压&…

网络安全B模块(笔记详解)- Sql注入之绕过

1.使用渗透机场景kali中的工具扫描服务器场景,打开搜索页面,并将页面url做为Flag提交(IP地址不提交例如:http:123.com:8080/a/b/a.html提交/a/b/a.html); 2.使用渗透机场景windows7访问服务器场景搜索页面,利用该页面的漏洞,查询数据库的字段,并将字段数作为Flag提交…

仿真APP在金属波纹管液压胀形工艺设计中的应用

一、背景介绍 金属波纹管是带有波纹状截面的金属管状零件,在工业中应用广泛。金属波纹管特殊的截面形状使其具备较好的柔韧性,能够在一定范围内伸缩弯曲。这一特性赋予波纹管两大用途:一是作为变形补偿器,可用于补偿管道设备由于…

Windows系统安装OpenSSH+VS Code结合内网穿透实现远程开发

文章目录 前言1、安装OpenSSH2、vscode配置ssh3. 局域网测试连接远程服务器4. 公网远程连接4.1 ubuntu安装cpolar内网穿透4.2 创建隧道映射4.3 测试公网远程连接 5. 配置固定TCP端口地址5.1 保留一个固定TCP端口地址5.2 配置固定TCP端口地址5.3 测试固定公网地址远程 前言 远程…

将 Quartz.NET 调度框架与 Stimulsoft Reports 结合使用

今天,我们将深入探讨软件开发的一种现代趋势 - 流程自动化,这自然是 Stimulsoft 产品中报表处理的一部分。在本文中,我们将讨论如何使用第三方调度程序自动执行与 Web 项目中的报告相关的任务。作为对报告执行操作的示例,我们考虑…

Shell脚本中的函数

目录 一.shell函数的作用: 二:shell函数的定义: 三.调用函数的方法: ​四.Shell函数返回值: ​五.函数传参: 六.函数变量的作用范围: ​七.函数的递归: ​八.函数库&#xff…

亚马逊鲲鹏系统的使用方法及操作指南

亚马逊鲲鹏系统作为提升店铺流量与销量的有效工具,其使用方法与功能十分强大。以下是详细的使用方法及操作指南: 1. 批量注册功能: 注册时,需要绑定国外IP代理和最新的反指纹技术,这样每个账号独立运行时就不会造成关…

后序遍历的线索化二叉树

对于后序遍历,需要明确,往往叶子结点,只能指向右子树(如果右子树存在的情况),或者指向该结点(因为这才是后序遍历),同样在进行退出到前一次递归的时候,我们要…

如何做谷歌seo排名优化?

要优化谷歌搜索排名,网站内容是重中之重,最主要就是创建质量高、相关性强的网站内容, 何谓质量高?最起码要求图文并茂,文章要长,要有视频引用,这是质量高的最基础要求,同时还需要确…

07.领域驱动设计:3种常见微服务架构模型的对比和分析

目录 1、概述 2、整洁架构 3、六边形架构 4、三种微服务架构模型的对比和分析 5、从三种架构模型看中台和微服务设计 5.1 中台建设要聚焦领域模型 5.2 微服务要有合理的架构分层 5.2.1 项目级微服务 5.2.2 企业级中台微服务 5.3 应用和资源的解耦与适配 6、总结 1、概…

【Java基础】之进程与线程

进程与线程 1. 线程与进程1.1 概念1.2 区别与联系 2. 线程的5种状态和切换2.1 简单介绍2.2 状态切换2.2.1 重点情况 3. 线程中常见的方法4. 线程池 1. 线程与进程 1.1 概念 进程:资源分配的基本单元,如QQ音乐 线程:资源调度的基本单元&…

私域必看:让你事半功倍的多微信高效管理方法

随着私域运营的需求不断增长,对于使用微信进行运营的企业或个人,高效地管理微信变得越发重要。今天就分享一些高效管理多个微信账号的实用方法,帮你节省时间。 1.巧用标签和分组 微信的标签和分组功能,相信很多人都使用过&#xf…