【论文阅读笔记】Prompt-to-Prompt Image Editing with Cross-Attention Control
【论文阅读笔记】Prompt-to-Prompt Image Editing with Cross-Attention Control
- 个人理解
- 思考
- 基本信息
- 摘要
- 背景
- 挑战
- 方法
- 结果
- 引言
- 方法论
- 结果
- 讨论
- 引用
个人理解
- 通过将caption的注意力图注入到目标caption注意力中影响去噪过程
- 以一种直观和便于理解的形式通过修改交叉注意力的交互来实现文本驱动图像编辑
思考
- 基于掩码的修改如果在修改的同时逐步融合新的Token是否可以更好的进行局部修改?
- 修改的范围是否足够精准?
- 要改变物体的时候形状差异过大会导致伪影?
- 当前的方法不能用于在空间上移动图像中的现有对象
- 怎么样能更好的生成符合视觉的效果(走Emu Edit造good data并训练的路子?其他的思路该怎么走)
- zero-shot的改进方法到目前是否已经到了极限(2023年11月28日)
- 当注意力存在交集,怎么能分离或者说进一步精准控制?
- 除了注意力机制还有什么是关键的因素
- 怎么和大语言模型LLM相结合(instruct pix2pix是一个例子)
基本信息
- 标题: Prompt-to-Prompt Image Editing with Cross-Attention Control
- 作者: Google Research
- 链接: 项目主页
- 发布信息: 2022
- 关键词: 文生图,扩散模型,图像编辑
摘要
背景
- 最近的大规模文本驱动合成模型因其生成遵循给定文本提示的高度多样化的图像的显着能力而备受关注。
- 将文本驱动的图像合成扩展到文本驱动的图像编辑是很自然的
挑战
- 编辑技术的固有特性是保留大部分原始图像,而在基于文本的模型中,即使是对文本提示的微小修改也会导致完全不同的结果
- 最先进的方法通过要求用户提供空间掩码来定位编辑来缓解这个问题,因此忽略了掩码区域内的原始结构和内容
方法
- 在本文中,我们追求一个直观的提示到提示编辑框架,其中编辑仅由文本控制。
- 深入分析了一个文本条件模型,并观察到交叉注意力层是控制图像空间布局与提示中的每个单词之间关系的关键。
结果
- 通过这一观察,我们展示了几个应用程序,它们仅通过编辑文本提示来监控图像合成
- 这包括通过添加规范替换单词、全局编辑,甚至巧妙地控制单词在图像中反映的程度来定位编辑
- 我们在不同的图像和提示上展示了我们的结果,展示了编辑提示的高质量合成和保真度
- 可以实现各种编辑任务,并且不需要模型训练、微调、额外数据或优化
引言
- 论文研究问题是什么?
- 文本驱动图像编辑
- 研究的动机和目的是什么?
- 文本驱动图像生成大模型的发展产生了文本驱动图像编辑的需求,如何尽量更改特定语义区域而尽量不影响其他区域【由于文本的多义性,很难确定更改应该是全局还是局部】
- 作者深入研究了交叉注意力机制对语义的影响,并通过其控制生成图像
- 作者提到了哪些相关工作?
- 现有方法通过定位掩码屏蔽需要更改的区域,但阻碍了快速直观的驱动,并阻碍图像整体的结构信息
方法论
方法概述。
-
论文使用了什么方法或技术?
- 如Fig.3,上图为视觉和文本嵌入使用交叉注意力层融合,该层为每个文本标记生成空间注意力图。下图为使用源图像的注意力图来控制生成图像的空间布局和几何。允许通过仅编辑文本提示来实现各种编辑任务。
- 通过在扩散过程中注入交叉注意力图来编辑图像,控制哪些像素关注扩散步骤期间提示文本的哪些标记。
- 展示了几种方法,通过简单和语义界面控制交叉注意力图
- 第一个是在修复交叉注意力图的同时,在提示中更改单个令牌的值(例如,“dog”到“cat”),以保留场景组合。在交换提示中的单词时,我们注入源图像mapsMt,覆盖目标图像映射M * t,以保留空间布局。
- 第二个是全局编辑图像,例如改变风格,通过在提示中添加新词并冻结先前标记的注意力,同时允许新的注意力流向新的标记。在添加新短语的情况下,我们只注入与提示不变部分相对应的映射。
- 第三个是放大或减弱生成图像中单词的语义效果。通过重新加权相应的注意力图来实现的单词的语义效果放大或减弱。
-
方法的创新点是什么?
- 生成的图像的结构和外观不仅取决于随机种子,还取决于像素与通过扩散过程嵌入之间的交互。通过修改交叉注意层中出现的像素到文本的交互,提供了Prompt-to-Prompt图像编辑功能
-
方法的优势和潜在劣势是什么?
- 优势:无需掩码,直观地通过新文本修改原文本生成的图像
- 劣势:对于真实图像依赖于反演、文本的歧义性带来视觉对齐问题(修改文本生成的是否是视觉想要的,这也是Emu edit尝试解决的问题
)
-
实施步骤
-
设DM (zt, P, t, s)为扩散过程单步t的计算,输出噪声图像zt−1,注意图Mt(未使用省略)。用 DM (zt, P, t, s){M ← M ^ \hat{M} M^} 表示扩散步骤,我们用一个额外的给定映射 M ^ \hat{M} M^覆盖注意力图 M,但保留来自提供的提示的值 V。还用 M t ∗ M^*_t Mt∗表示使用编辑提示 p ∗ p^* p∗生成的注意图。最后,我们将 Edit( M t M_t Mt, M t ∗ M^*_t Mt∗ , t) 定义为一个通用的编辑函数,在生成过程中接收原始图像和编辑图像的第 t 个注意力图作为输入
-
word swap
- 通过在设定注意力交互的时间步可以更好控制编辑程度
- 通过在设定注意力交互的时间步可以更好控制编辑程度
-
Adding a New Phrase
-
Attention Re–weighting
-
DDIM反演并执行P2P
但由于DDIM反演可能会产生和原图不一致的情况,使用直接从注意力图中提取的掩码恢复原始图像的未编辑区域。请注意,这里掩码是在没有用户指导的情况下生成的。
-
结果
- 实验结果显示了什么?
文本到图像扩散模型中交叉注意力层的强大能力 - 结果支持了哪些论点?
讨论
- 讨论中提到哪些限制和未来的工作方向?
- 基于反演的图像重建失真(Null text很好的解决了这个问题)
- 模型的交叉注意力分辨率较低,限制了性能
- 当前的方法不能用于在空间上移动图像中的现有对象
引用
如何引用本文:
@article{hertz2022prompt,title={Prompt-to-prompt image editing with cross attention control},author={Hertz, Amir and Mokady, Ron and Tenenbaum, Jay and Aberman, Kfir and Pritch, Yael and Cohen-Or, Daniel},booktitle={arXiv preprint arXiv:2208.01626},year={2022}
}
相关文章:

【论文阅读笔记】Prompt-to-Prompt Image Editing with Cross-Attention Control
【论文阅读笔记】Prompt-to-Prompt Image Editing with Cross-Attention Control 个人理解思考基本信息摘要背景挑战方法结果 引言方法论结果讨论引用 个人理解 通过将caption的注意力图注入到目标caption注意力中影响去噪过程以一种直观和便于理解的形式通过修改交叉注意力的…...

Echarts legend图例配置项 设置位置 显示隐藏
Echarts 官网完整配置项 https://echarts.apache.org/zh/option.html#legend 配置项 legend: { }设置图例为圆形 icon: circle,//设置图例为圆形设置图例位置 top: 20%//距离顶部百分之20//y:bottom 在底部显示设置图例 宽度 高度 itemWidth: 10,//设置图例宽度 itemHeight: …...
C#每天复习一个重要小知识day3:随机数的生成
目录 格式: 生成随机数: 生成一个0-100的随机数: 以下是更详细的代码示例: 在C#中,可以使用Random类来生成随机数。这个类提供了多种方法来生成不同类型的随机数。 格式: Random 随机变量名(r) new …...
Java后端使用XWPFDocument生成word文档,踩坑
以下都是借鉴网上内容: 环境 纯后端, java, spring项目 maven管理. maven内容: <dependency><groupId>org.apache.poi</groupId><artifactId>poi-ooxml</artifactId><version>3.16</version></dependency><dependency>…...
asp.net core HttpContextAccessor类
在 ASP.NET Core 中 ,HttpContextAccessor 是一个用于访问当前 HTTP 请求的工具类。它通常用于在应用程序中获取当前 HTTP 请求的上下文信息,例如请求的路由、头部信息、用户身份验证状态等。 HttpContextAccessor 类通常在需要访问当前 HTTP 请求上下文…...

微服务--04--SpringCloudGateway 网关
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 1.网关路由1.1 认识网关在SpringCloud当中,提供了两种网关实现方案: 1.2.快速入门1.3.路由过滤 2.网关登录校验2.1.鉴权思路分析2.2.网关过滤…...

Java程序连接 nacos集群
我们在bootstrap.yml文件里可以直接连一个nacos集群的. 架构如下 没错,我们程序直连的是通过Nginx的,利用nginx的反向代理来做到连接nacos集群. 我们先把nginx的配置贴上来 upstream cluster{server 127.0.0.1:8848;server 127.0.0.1:8849;server 127.0.0.1:8850; }server{l…...

【深度学习】参数优化和训练技巧
寻找合适的学习率(learning rate) 学习率是一个非常非常重要的超参数,这个参数呢,面对不同规模、不同batch-size、不同优化方式、不同数据集,其最合适的值都是不确定的,我们无法光凭经验来准确地确定lr的值,我们唯一可…...
CeresPCL 曲线拟合之三次多项式
文章目录 一、简介2.1 实现步骤二、实现代码三、实现效果参考资料一、简介 2.1 实现步骤 (1)构建代价函数。假设我们得到了一组数据,也知晓该数据是用曲线方程: y = a x 3 + b x 2 + c x +...

小白备战蓝桥杯:Java基础语法
一、注释 IDEA注释快捷键:Ctrl / 单行注释: //注释信息 多行注释: /* 注释信息 */ 二、字面量 常用数据:整数、小数、字符串(双引号)、字符(单引号)、布尔值(tr…...

C#面向对象
过程类似函数只能执行没有返回值 函数不仅能执行,还可以返回结果 1、面向过程 a 把完成某一需求的所有步骤 从头到尾 逐步实现 b 根据开发需求,将某些 功能独立 的代码 封装 成一个又一个 函数 c 最后完成的代码就是顺序的调用不同的函数 特点 1、…...

智能优化算法应用:基于蝙蝠算法无线传感器网络(WSN)覆盖优化 - 附代码
智能优化算法应用:基于蝙蝠算法无线传感器网络(WSN)覆盖优化 - 附代码 文章目录 智能优化算法应用:基于蝙蝠算法无线传感器网络(WSN)覆盖优化 - 附代码1.无线传感网络节点模型2.覆盖数学模型及分析3.蝙蝠算法4.实验参数设定5.算法结果6.参考文献7.MATLAB…...

【栈和队列(1)(逆波兰表达式)】
文章目录 前言什么是栈(Stack)栈方法栈的模拟实现链表也可以实现栈逆波兰表达式逆波兰表达式在栈中怎么使用 前言 什么是栈(Stack) 栈:一种特殊的线性表,其只允许在固定的一端进行插入和删除元素操作。进行数据插入和删除操作的一端称为栈顶࿰…...

Blazor Table 实现获取当前选中行的功能
这里需要使用到OnClickRowCallBack事件 后台使用案例...

Flask Echarts 实现历史图形查询
Flask前后端数据动态交互涉及用户界面与服务器之间的灵活数据传递。用户界面使用ECharts图形库实时渲染数据。它提供了丰富多彩、交互性强的图表和地图,能够在网页上直观、生动地展示数据。ECharts支持各种常见的图表类型,包括折线图、柱状图、饼图、散点…...
【漫谈】信创
近些年来,自主创新绝对是高频词汇。 以往是供应链、芯片领域,现在终于到了信息领域。 近期,从上至下、从中央到地方、从政府到国企,各层面、各行业、各领域都在提及“信创”。 信创是个大工程,从计算机通用处理器、…...
linux wget --no-check-certificate
如果您希望每次使用wget命令时都跳过SSL证书检查,可以将–no-check-certificate参数添加到wget的默认配置文件中。 请按照以下步骤进行操作: vi ~/.wgetrc# 插入内容 check_certificate off保存并关闭文件。 现在,wget命令将在每次使用时自…...
mysql命令行连接数据库
有时项目连接不上数据库,报错鉴权失败,先用mysql工具连接下,容易发现问题。 直接输入mysql看是否已安装,如果没有就安装下。 # 注:直接mysql就行,不用-cli也不用-client,也不用-server…...

计算机丢失vcomp140.dll是什么意思,如何解决与修复(附教程)
vcomp140.dll缺失的5种解决方法以及vcomp140.dll缺失原因 引言: 在日常使用电脑的过程中,我们可能会遇到一些错误提示,其中之一就是“vcomp140.dll缺失”。这个错误提示通常出现在运行某些程序或游戏时,给使用者带来了困扰。本文…...

基于SSM实现的叮当书城
一、系统架构 前端:jsp | jquery | layui 后端:spring | springmvc | mybatis 环境:jdk1.7以上 | mysql | maven 二、代码与数据库 三、功能介绍 01. 系统首页 02. 商品分类 03. 热销 04. 新品 05. 注册 06. 登录 07. 购物车 08. 后台-首页 …...
在软件开发中正确使用MySQL日期时间类型的深度解析
在日常软件开发场景中,时间信息的存储是底层且核心的需求。从金融交易的精确记账时间、用户操作的行为日志,到供应链系统的物流节点时间戳,时间数据的准确性直接决定业务逻辑的可靠性。MySQL作为主流关系型数据库,其日期时间类型的…...

XCTF-web-easyupload
试了试php,php7,pht,phtml等,都没有用 尝试.user.ini 抓包修改将.user.ini修改为jpg图片 在上传一个123.jpg 用蚁剑连接,得到flag...

51c自动驾驶~合集58
我自己的原文哦~ https://blog.51cto.com/whaosoft/13967107 #CCA-Attention 全局池化局部保留,CCA-Attention为LLM长文本建模带来突破性进展 琶洲实验室、华南理工大学联合推出关键上下文感知注意力机制(CCA-Attention),…...

【Oracle APEX开发小技巧12】
有如下需求: 有一个问题反馈页面,要实现在apex页面展示能直观看到反馈时间超过7天未处理的数据,方便管理员及时处理反馈。 我的方法:直接将逻辑写在SQL中,这样可以直接在页面展示 完整代码: SELECTSF.FE…...
PHP和Node.js哪个更爽?
先说结论,rust完胜。 php:laravel,swoole,webman,最开始在苏宁的时候写了几年php,当时觉得php真的是世界上最好的语言,因为当初活在舒适圈里,不愿意跳出来,就好比当初活在…...

SCAU期末笔记 - 数据分析与数据挖掘题库解析
这门怎么题库答案不全啊日 来简单学一下子来 一、选择题(可多选) 将原始数据进行集成、变换、维度规约、数值规约是在以下哪个步骤的任务?(C) A. 频繁模式挖掘 B.分类和预测 C.数据预处理 D.数据流挖掘 A. 频繁模式挖掘:专注于发现数据中…...
2024年赣州旅游投资集团社会招聘笔试真
2024年赣州旅游投资集团社会招聘笔试真 题 ( 满 分 1 0 0 分 时 间 1 2 0 分 钟 ) 一、单选题(每题只有一个正确答案,答错、不答或多答均不得分) 1.纪要的特点不包括()。 A.概括重点 B.指导传达 C. 客观纪实 D.有言必录 【答案】: D 2.1864年,()预言了电磁波的存在,并指出…...

基于当前项目通过npm包形式暴露公共组件
1.package.sjon文件配置 其中xh-flowable就是暴露出去的npm包名 2.创建tpyes文件夹,并新增内容 3.创建package文件夹...

转转集团旗下首家二手多品类循环仓店“超级转转”开业
6月9日,国内领先的循环经济企业转转集团旗下首家二手多品类循环仓店“超级转转”正式开业。 转转集团创始人兼CEO黄炜、转转循环时尚发起人朱珠、转转集团COO兼红布林CEO胡伟琨、王府井集团副总裁祝捷等出席了开业剪彩仪式。 据「TMT星球」了解,“超级…...

相机从app启动流程
一、流程框架图 二、具体流程分析 1、得到cameralist和对应的静态信息 目录如下: 重点代码分析: 启动相机前,先要通过getCameraIdList获取camera的个数以及id,然后可以通过getCameraCharacteristics获取对应id camera的capabilities(静态信息)进行一些openCamera前的…...