首页 / 一种基于文图生成模型的语言跟踪图像编辑方法

一种基于文图生成模型的语言跟踪图像编辑方法有效专利 发明

技术领域

[0001] 本发明涉及图像处理技术领域,特别涉及一种基于文图生成模型的语言跟踪图像编辑方法。

相关背景技术

[0002] 文本到图像合成已成为计算机视觉和自然语言处理领域交叉的革命性领域,它能够从文本描述中生成视觉上引人入胜的图像。先锋模型如Stable Diffusion、DALLE‑2、Imagen以及更近期的DALLE‑3,已经展示出生成艺术上连贯图像的卓越能力,吸引了学术界和工业界的广泛关注和研究兴趣。近年来,在使用生成对抗网络(Generative Adversarial Networks, GANs)的文本驱动图像处理领域取得了重大进展。然而,尽管GANs在处理领域内数据方面取得了成功,它们在处理大型和多样化的数据时也面临挑战。除了GANs,基于扩散的模型如DALL‑E2,Imagen和Stable Diffusion在推进文本到图像合成领域的发展上也发挥了显著作用,它们在合成高保真度图像方面表现出卓越的性能。然而,这些模型并未提供生成图像的文本引导图像编辑能力。文本引导图像编辑是一项关键任务,涉及根据文本表达的要求对输入图像进行修改。在现有研究中,文本引导图像编辑方法可归纳为两类:无需训练和基于训练的方法。无需训练的方法被设计用于操作去噪过程中的图像生成。例如,SDEdit创新性地将噪声添加到选定的引导图像上,作为初始噪声,取得了显着的结果。P2P更改交叉注意力图以控制图像的空间布局关系。基于训练的方法通过修改模型以结合特定领域的见解或集成补充的指导数据来构造新的理想图像。特别是,ControlNet和T2I‑Adapter允许用户通过更改额外的网络模块,使用输入图像导向图像生成的方向。
[0003] 然而,已有的方法在多个实体替换等复杂编辑任务时可能会失败,特别是当源图像中包含多余信息时,可能导致编辑结果不理想。失败的原因包括在图像编辑过程中为了保持源图像的结构特征过度地引入源图像的特征信息,以及错误的交叉注意力对齐。

具体实施方式

[0016] 下面结合附图对本发明的具体实施方式作进一步说明。在此需要说明的是,对于这些实施方式的说明用于帮助理解本发明,但并不构成对本发明的限定。此外,下面所描述的本发明各个实施方式中所涉及的技术特征只要彼此之间未构成冲突就可以相互组合。
[0017] 如图1‑图17所示,一种基于文图生成模型的语言跟踪图像编辑方法,如图1‑图3所示,包括以下步骤:S1:获取源文本提示、目标文本提示和编辑词;
S2:如图10所示,分析目标文本提示的依赖关系,得到所有与编辑词有关系的单词并形成词汇对集合S;其中,有关系的含义包括:当编辑词为修饰词时,提取修饰词的修饰主体以及修饰主体的其他修饰词,当编辑词为被修饰词时,提取被修饰词的所有修饰词,举个例子:如目标文本提示为“一只白色的猫在趴在草地上和一个美丽的女孩在看书“,编辑词为“白色的”以及“女孩”,相应的其有关系的词为两个集合,分别为(白色的,猫,趴)和(美丽的,女孩),在本例子中,“白色的”和“美丽的”就是修饰词,“猫”就是与修饰词“白色的”对应的被修饰词,“女孩”就是与修饰词“美丽的”相对应的被修饰词,这里面的”趴”是通过猫跟白色的产生联系的;然后将提取的编辑词有关系的所有词以及编辑词组成一个集合,标注为词汇对集合S。
[0018] S3:获取噪声图像;当有源图像输入时,噪声图像利用源图像通过DDIM反演得到,源图像反演得到的噪声图像通过使用DDIM反演算法得到:将源图像反演得到包含t步的噪声图像,反演t步中每一步得到的一个噪声图像,包含一共有t个噪声图像的有序集合,并且此时的源文本提示为空文本;当没有源图像输入时,噪声图像通过随机数进行高斯采样得到;本方案能应用在合成图像场景和真实图像场景,所谓的合成图像场景就是根据一
段话形成源图像后,再根据另一段话修改源图像得到目标编辑图像,比如合成图像场景下的输入的源文本提示为:一只白色狗在草地上,目标编辑文本为:一只黑色的狗在草地上,处理过程就是将狗的颜色改成黑色,所谓的真实图像场景就是根据输入的源图像(照片或者图片等),根据一段话来修改源图像得到目标编辑图像;
如图5所示,当应用场景为合成图像场景时,为没有源图像输入,此时的噪声图像(即高斯噪声图像)为通过随机数进行高斯采样得到,随机数在一个编辑流程中应该设置为同一个整数(即高斯噪声),若不同随机数得到的高斯图像与文本提示作为输入,通过文图生成模型得到的图像是不一样的,因此对于同一个合成图像,想文图生成模型输出相同的图像需要输入相同的文本提示及高斯噪声;同样的,在图像编辑过程中,对源图像进行编辑时,也需要用到相同的噪声图像作为输入;
如图6所示,当应用在真实图像场景时,为有源图像输入,源文本提示为空文本段,噪声图像(即高斯噪声图像)为通过DDIM反演得到的噪声图像集合,这里的集合是因为DDIM反演需要反演t步(与下述的循环步数t是同一个数值),会得到t个噪声图像(从而能使每个人噪声图像都能与下述的每一次循环相对应);如图6和7所示,这t个噪声图像在下述的图像编辑的循环t步时(即在扩散模型内重复执行的t次步骤S30至步骤S34),取第t个噪声图像作为第t步的噪声图像输入到扩散模型中,用于重建真实图像(即重建图6右侧的源图像);而目标编辑图像的噪声图像输入,只需要使用第t个高斯噪声作为初始的噪声图像作为输入即可,后续t‑1步的输入为第t步扩散模型输出的噪声图像;扩散模型里面图像的生成过程是一个去噪过程,从t到0,第t步的噪声图像是个完全的高斯噪声图像,第0步的噪声图像才能解码为图像,也就是说第0步得到的噪声图像才是我们想要的,因此这个过程需要反过来理解;
在本实施例中,所述源文本提示、目标文本提示和编辑词均由用户负责输入;如图
16所示,在合成图像场景下,源文本提示“a purple ripe lemon and a glossy apple”,目标文本提示为“a purple  ripe strawberry and a glossy lemon”,编辑词为
“strawberry”和“lemon”;如图17所示,在真实图像场景下,源文本提示为空文本,目标文本提示为“a photo of a silver robot walking on the moon”,编辑词为“on the moon”、“walking”和“robot”;
将源文本提示输入到文本编码器中得到源文本表征信息,特别的,当源文本提示
为空文本时,文本编码器输出的源文本表征信息是如图6中空文本表征信息;将所述目标文本提示输入到文本编码器中得到目标文本表征信息;
然后将源文本表征信息、目标文本表征信息和噪声图像输入到扩散模型中,并在
扩散模型内重复执行以下步骤:
S30:根据词汇对集合S,提取目标编辑图像生成过程中与词汇对集合S中单词对应的交叉注意力图,计算交叉注意力图损失值,并更新目标编辑图像生成过程中输入的噪声图像;
S31:提取源图像在生成或重建过程中的自注意力图标记为源图像自注意力图,其中生成过程为如图5所示在合成图像场景下利用源文本提示指导生成源图像的过程,重建过程为如图6所示在真实图像场景下利用DDIM反演得到的噪声图像再通过噪声图像重建得到源图像的过程;
S32:利用源图像自注意力图替换目标编辑图像在生成过程中的自注意力图;在本实施例中,如图5和6所示,所述自注意力图为扩散模型在运行推理的过程中所需要的中间计算值;
S33:根据所述词汇对集合S,将目标编辑图像生成过程中与词汇对集合S中单词对应的交叉注意力图阈值化合并成掩膜;在本实施例中,词汇对集合S不输入到文本编码器,词汇对集合S只是作为一个索引用,用来在噪声图像更新操作的时候,提取出对应的交叉注意力图;
S34:利用掩膜更新目标编辑图像的噪声图像;步骤S30所更新的目标编辑图像的
噪声图像和步骤S34所更新的目标编辑图像的噪声图像针对的问题不一样,步骤S30可以理解为噪声图像第一次更新操作,步骤S34可以理解为噪声图像第二次更新操作;步骤S30是对多目标编辑的修正,步骤S34是为了保留非编辑区域不变。步骤S30和步骤S33所说的词汇对集合S,是同一个集合,不但能用于创建掩膜还能用于在抽取这些词汇对应的交叉注意力图后做损失值计算;
重复执行步骤S30至步骤S34,直到执行完t个步数为止,t为预设定的步数,然后输出源图像的噪声图像和目标编辑图像的噪声图像;在本实施例中,如图4所示,文图生成模型包括文本编码器和图像生成器,其中图像生成器包括扩散模型和图像编码器;如图4所示,在t步迭代中,噪声图像 是下一步噪声图像 的输入,以此类推。每一个文本对应一个最终的噪声图像,两个文本(源图像和目标编辑文本)就有两个噪声图像,见图5和图6,得到的输出结果如图15‑图17所示;
S4:对源图像的噪声图像和目标编辑图像的噪声图像通过VAE图像解码器进行解
码得到源图像和目标编辑图像,并输出。如图11所示,变分自编码器(Variational Autoencoder, VAE)是一种生成模型,可以将图像转化为编码信息,再将编码信息解码为图像。其中VAE图像解码器的任务是将潜在空间中的点映射回原始数据空间,也就是将图像编码信息重构为输入图像,可以直接理解为这就是一个训练好的模型,输入是前面计算好的噪声图像(也就是图11的隐层编码),输出是图像。
[0019] 目前流行的文图生成模型,如stable diffusion会将图像编码为更小分辨率的编码信息,再将编码信息输入给扩散模型进行生成。扩散模型的输入是噪声图像,最后输出的图像是最后迭代计算好的噪声图像结果经过图像编码器解码后得到的。
[0020] 在所述基于文图生成模型的语言跟踪图像编辑方法中,充分利用预训练的文图生成模型(如Stable diffusion 1.5,是别人训练好的开源模型)在图像生成任务中的强大能力,深入研究注意力层对基于文本的图像编辑作用和输入提示中的复杂句子结构及依赖关系如何影响图像编辑的结果,并借由运用语言知识,在图像生成过程中操控注意力层中的中间表示,达到显著提升生成模型在图像编辑方面的性能的目的,提高图像编辑的质量。本方案无需附加训练,具备操作简便、易集成和成功率高等优点,表现出广泛的应用潜力。
[0021] 本方案适用于需要对图像进行次级编辑的多个领域,包括:结构一致性保留、非编辑区域的维持以及多目标实体的增强。在结构一致性保留中,通过提取编辑对象图像生成或重建过程中自注意力层的查询值和关键值,并将其注入至编辑图像的生成过程,这有助于保持原始图像的空间结构不变。非编辑区域的维持则是通过分析编辑对象的文本描述,在交叉注意力层中提取交叉注意力图,进而生成用于覆盖编辑对象的掩膜。多目标实体增强步骤通过增强具有语义联系的交叉注意力图之间的重叠区域,并减少非语义联系的注意力图之间的交叉,以提升多实体编辑的效果。
[0022] 所述基于文图生成模型的语言跟踪图像编辑方法充分利用了现成的图像生成模型在图像生成及重建方面的能力,保证了编辑对象及编辑图像的空间一致性。同时,通过分析文本中不同单词的依存赖关系,重新定义了编辑过程中交叉注意力图之间的相互作用,从而有效地维护了非编辑区域,并实现了复杂场景下的多目标编辑功能。本发明无需对现有模型进行附加训练,仅依赖文本描述即可实现对合成图像或真实图像进行细粒度的编辑,可以广泛应用于图像编辑的各个领域,如图像风格转换、图像内容识别与替换以及数字绘画与创作等艺术创作活动中。
[0023] 可选的,所述步骤S2包括:提取与编辑词有关系的单词,其中单词包括修饰词和被修饰词,对每个单词生成对应的交叉注意力图,对这些交叉注意力图两两组合得到多个子交叉注意力图对,在这些子交叉注意力图对中取出既有修饰词又有被修饰词的子交叉注意力图对标记为交叉注意力图对。
[0024] 根据所述词汇对集合S内的单词生成交叉注意力图的过程如下:以输入的目标文本提示为“一个粉色光滑的苹果和一个斑点的水壶”来说明:用spacy文本分析工具对文本进行依存分析,得到整个句子的依赖关系集合;
提取与编辑词有关系的词汇对集合S={ , ,…, },k为编辑词的个数, 为第k
个词汇对,本例子的编辑词有粉色和斑点的,最终得到的词汇对集合S为 =[(粉色,苹果), (光滑的,苹果)]和 =[(斑点,水壶)];
对应的,在图像生成或重建过程中每个单词都有对应的一个交叉注意力图,根据
词汇对集合S可以得到对应的交叉注意力图对,如图12所示,图中虚线框内的图对应一个词汇对,词汇对内的修饰词和被修饰词组成一个组对,当 =[(粉色,苹果),(光滑的,苹果)]时,对应三个交叉注意力图(三个交叉注意力图分别对应粉色、苹果和光滑的)可以组成三个子交叉注意力图对( , )、( , )和( , ),其中( , )和
( , )才是既有修饰词又有被修饰词的子交叉注意力图对,因此 有两个交叉注意力图对( , )和( , ); =[(斑点,水壶)]对应另一个交叉注意力图对
( , );这些交叉注意力图对都是正集,这例子有两个正集(分别是 和 )对应的交叉注意力图对。
[0025] 值得说明的是,如图9所示,所述步骤S30的过程包括:将目标编辑图像在生成过程中正集包含的交叉注意力图对,标注为第一交叉注意力组;将目标编辑文本中不在词汇对集合S内的单词对应的所有交叉注意力图,标注为第二交叉注意力组;在本实施例正,所述的正集为当前词汇对集合S中的单词,负集为目标编辑文本中非当前词汇对集合S中的单词;根据交叉注意力图正集损失函数计算第一交叉注意力组内交叉注意力图对的KL
散度 ,并相加得到交叉注意力图正损失函数值:

其中S为词汇对集合,k为词汇对集合S的词汇对 的个数,(即词汇对集合S里面包括有k个词汇对 ,词汇对 包括两个单词,这两个单词其中一个为修饰词n,另一个为被修饰词m,如 =[(粉色,苹果),(光滑的,苹果)]),修饰词n为粉色和光滑的,被修饰词m为苹果), 为词汇对 中被修饰词m对应的交叉注意力图, 为词汇对 中修饰词n对应的交叉注意力图, 为被修饰词m对应的交叉注意力图和修饰词n对应的交叉注意力图组成的交叉注意力图对;
计算第一交叉注意力组与第二交叉注意力组内所有交叉注意力图的KL散度 ,相
加得到交叉注意力图负损失函数值:

其中 为词汇对 中被修饰词m对应的交叉注意力图, 为词汇对 中修饰词n对
应的交叉注意力图, 为第二交叉注意力组中的交叉注意力图,U为第二交叉注意力组;
计算交叉注意力图损失值: ;
根据交叉注意力图损失值 计算当前步数t的梯度 ,更新当前噪声图像:
,z为当前噪声图像为,为更新率,决定了在更新目标编辑图像对应的噪声
图像最时更新的幅度,梯度 ,其中 表示为本方案中使用的扩散模型。
[0026] 具体地,在所述步骤S32中,所述源图像的自注意力图为源图像在生成或重建过程中对应扩散模型自注意力层第4到第14层的自注意力图,以替换目标编辑图像在生成过程中对应扩散模型自注意力层第4到第14层的自注意力图。如果在全部层执行的话,因为引入了太多源图像的信息到目标图像中,会导致得到的目标编辑图像与源图像几乎一模一样,譬如,猫无法变成狗。
[0027] 值得说明的是,在所述步骤S33中,对词汇对集合S所有单词对应的目标编辑图像在生成过程中的交叉注意力图进行阈值化转化为二值图像,其中阈值化的阈值为0.4,然后将所有的二值图像取并,得到掩膜,并将掩膜标记为Mask。阈值取0.4能控制生成掩膜的范围,阈值太大范围越小,掩膜覆盖的编辑范围小,可能会导致编辑失败。
[0028] 具体地,词汇对集合S内的单词会一一地对应扩散模型中的交叉注意力图,可以理解为这些单词的组合为索引值(编号),每个交叉注意力图都有一一对应的索引,用索引就能定位抽取本算法编辑过程中需要用到的交叉注意力图。
[0029] 优选的,如图8所示,在所述步骤S34中,利用掩膜更新目标编辑图像的噪声图像的公式为: ,其中 为当前步下源图像的噪声图像, 为当前步下目标编辑图像的噪声图像, 为更新后目标编辑图像的噪声图像, 为掩膜。
[0030] 可选的,在所述步骤S3中,DDIM反演的过程通过反演公式进行:,经过t个步数的反演后得到包含t个噪声
图像集合{ };其中 ,为第t步的扩散率,是一个预设定好的固定值,取值
范围为[0.00085,0.012],为扩散模型,为描述源图像的文本嵌入,在本实施例中,描述源图像的文本嵌入设定为空字符串,这是本文与现有的图像编辑的算法prompt‑to‑prompt的区别之一,prompt‑to‑prompt需要有描述图像的文本。
[0031] 如图7所示,DDIM反演将真实图像场景下的源图像通过上式逐步迭代转化为噪声图像,在t步的反演中会得到包含t个z的集合{ },其中 是源图像经过VAE图像编码器得到的隐层编码,最后经过t步反演得到的 为高斯噪声,这里的隐层编码和高斯噪声都属于噪声图像的一种。
[0032] 值得说明的是,在所述步骤S32中所述的自注意力图是在扩散模型的自注意力层中形成的中间计算值 ,计算图如图13所示,计算公式为:;


其中 为自注意力层的查询值, 为自注意力层的关键值, 为扩散模型中
的线性层, 为扩散模型中 的线性层, 为扩散模型的自注意层在第t步得到
的噪声模型,为扩散模型里面自注意力层的计算过程的中间计算值,表示转置,为数学公式表示转置的符号,d1是 和 的维度。
[0033] 优选的,在所述步骤S33中,所述的交叉注意力图是在扩散模型的交叉注意力层中形成的中间计算值 ,计算图如图13所示,计算公式为:;


其中 是通过源文本提示得到的源文本表征信息或者通过目标文本提示得到的
目标文本表征信息, 为交叉注意力层的查询值, 为交叉注意力层的关键值,
为扩散模型中 的线性层, 为扩散模型中 的线性层, 为扩散模型的交
叉注意力层在第t步得到的噪声模型,为扩散模型里面交叉注意力层的计算过程的中间计算值,表示转置,为数学公式表示转置的符号,d2是 和 的维度。
[0034] 对比的实验结果:本发明人用clip score(CS)和Clip Directional Similarity (CDS)以及人类验证三种验证方式来体现本发明的有效性和优越性。结果如图14和图18所示。其中图18中,CS表示得到的目标编辑图像与目标编辑文本之间的文图一致性,CDS用于评估测量源图像与目标编辑图像之间的变化与两个源文本提示和目标编辑文本提示之间的变化的一致性。CS和CDS数值越高,编辑效果越好。数据集DVMP‑edit‑fake是一个多目标编辑验证数据集,包含200个文本对,Wild‑Ti2i‑real和Imagenet‑Ti2i‑real为两个真实图像编辑数据集,各包含78和150个真实图像‑编辑文本对,其中Imagenet‑Ti2i‑real用在了图14中人类验证的验证方式里面。
[0035] 本方案的创新之处主要表现在:(1)提取源图像生成过程中的自注意力图,这一步骤关键在于帮助目标编辑图像保留源图像的空间结构特点。
(2)利用句法依赖关系识别出直接与编辑词相关的单词,并据此来创建掩膜,用于在编辑过程中保留源图像的未编辑区域信息。
(3)同样基于句法依赖关系识别出直接与编辑词相关的单词,并设计了一种加强交叉注意力图的损失函数,以对齐和增强交叉注意力图,从而提高文本与图像的一致性。
[0036] 与当前主流的图像编辑技术相较,本方案展现了如下优势:(1)无需对已预训练的文图生成模型进行额外微调操作,降低了计算资源消耗。
[0037] (2)摒弃了采用源图像的交叉注意力图,减少了非必要信息的插入,提升了图像编辑中文本与图像的匹配度。
[0038] (3)借助文本依赖关系分析,有策略地选取交叉注意力图作为掩膜的生成材料,从而在编辑过程中有效保留非编辑区域。与其他基于图像分割技术获得的掩膜相比,本发明的掩膜更具适配性和高效性,有效地确保了非编辑区域的完整性。
[0039] (4)通过文本依赖关系分析,针对性地抽取与文本语义直接相关的交叉注意力图,用以计算更新噪声图像的损失函数值,有效地优化了现有编辑算法在处理多目标、复杂场景编辑时遇到的问题。
[0040] (5)本方案的方法精确检测速度快,在对真实图像进行编辑时,源图像的文本提示可缺省,实时性、易用性和易迁移性更高。
[0041] 以上结合附图对本发明的实施方式作了详细说明,但本发明不限于所描述的实施方式。对于本领域的技术人员而言,在不脱离本发明原理和精神的情况下,对这些实施方式进行多种变化、修改、替换和变型,仍落入本发明的保护范围内。

当前第1页 第1页 第2页 第3页
相关技术
文图生成相关技术
模型语言相关技术
刘冰雁发明人的其他相关专利技术