CN117934323A - 图像生成方法、装置、电子设备及存储介质 - Google Patents

图像生成方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
CN117934323A
CN117934323A CN202410339004.6A CN202410339004A CN117934323A CN 117934323 A CN117934323 A CN 117934323A CN 202410339004 A CN202410339004 A CN 202410339004A CN 117934323 A CN117934323 A CN 117934323A
Authority
CN
China
Prior art keywords
denoising
sampler
image
ith
image generation
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202410339004.6A
Other languages
English (en)
Other versions
CN117934323B (zh
Inventor
请求不公布姓名
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Moore Threads Technology Co Ltd
Original Assignee
Moore Threads Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Moore Threads Technology Co Ltd filed Critical Moore Threads Technology Co Ltd
Priority to CN202410339004.6A priority Critical patent/CN117934323B/zh
Publication of CN117934323A publication Critical patent/CN117934323A/zh
Application granted granted Critical
Publication of CN117934323B publication Critical patent/CN117934323B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Image Processing (AREA)

Abstract

本公开涉及计算机视觉领域,提出一种图像生成方法、装置、电子设备及存储介质。所述方法应用于扩散模型,包括:响应于输入的第一文本数据,获取第一噪声数据;按照预设使用顺序,使用扩散模型中的第一采样器和第二采样器对第一噪声数据进行X次去噪,生成第一图像,第一图像与第一文本数据相对应,其中,M<X<N,N为单独采用第一采样器进行去噪以生成图像所需的次数,M为单独采用第二采样器进行去噪以生成图像所需的次数,每次去噪使用第一采样器和第二采样器中的一个。本公开实施例的图像生成方法通过对两种采样器的使用顺序进行控制,可以提高图像生成效率,且生成的图像的内容和质量与较高,从而能实现图像生成质量和效率的兼顾。

Description

图像生成方法、装置、电子设备及存储介质
技术领域
本公开涉及计算机视觉领域,尤其涉及一种图像生成方法、装置、电子设备及存储介质。
背景技术
作为人工智能生成内容(Artificial Intelligence Generated Content,AIGC)的重要组成部分,文本生图(Text-to-Image Generation)正受到与日俱增的关注和应用,即根据用户输入的文本描述,由计算机模型输出与之对应的图像。扩散模型(DiffusionModel)由于其优越的图像生成质量,逐步成为了文本生图领域的主流解决方案。
扩散模型使用海量图文对(image-text pairs)数据进行训练,通过对真实图像进行多次加噪处理,即在像素空间或特征空间中叠加随机噪声,从而得到完全随机的噪声数据;在此基础上,将真实图像配对的文本数据映射为去噪的控制条件,基于扩散模型进行相同次数的去噪处理,从而恢复出原始的真实图像。训练收敛之后,扩散模型即可对于任意文本数据,以任意完全随机噪声数据为起点,通过指定次数的去噪处理,输出高质量且符合文本数据的语义的图像。
现有技术的扩散模型使用采样器对噪声数据进行去噪。生成的图像质量较好的采样器的去噪次数通常是较大的,因此图像生成效率较低。去噪次数少、图像生成效率较高的采样器生成的图像质量又比较差。因此现有技术的扩散模型尚不能实现图像生成效果和效率的兼顾。
发明内容
有鉴于此,本公开提出了一种图像生成方法、装置、电子设备及存储介质。本公开实施例的图像生成方法使用第一采样器和第二采样器对噪声数据进行去噪,通过对两种采样器的使用顺序进行控制,使得生成图像需要的去噪次数低于两种采样器中去噪次数更高的第一采样器,提高图像生成效率,且生成的图像的内容和质量与较高,从而能实现图像生成质量和效率的兼顾。
根据本公开的一方面,提供了一种图像生成方法,所述方法应用于扩散模型,所述方法包括:响应于输入的第一文本数据,获取第一噪声数据,所述第一噪声数据为随机噪声数据;按照预设使用顺序,使用所述扩散模型中的第一采样器和第二采样器对所述第一噪声数据进行X次去噪,生成第一图像,所述第一图像与所述第一文本数据相对应,其中,M<X<N,N为单独采用所述第一采样器进行去噪以生成图像所需的次数,M为单独采用所述第二采样器进行去噪以生成图像所需的次数,每次去噪使用所述第一采样器和所述第二采样器中的一个,以及由所述第一文本数据映射得到的控制条件;其中,在所述扩散模型训练过程中,采用所述预设使用顺序生成的图像与基准图像的相似度大于第一阈值,且图像质量高于与所述基准图像的相似度大于第一阈值的、采用其他使用顺序生成的图像。
在一种可能的实现方式中,对所述第一噪声数据进行X次去噪时,第1次去噪的输入包括所述第一噪声数据,第i次去噪的输入包括第i-1次去噪的输出,第X次去噪的输出作为所述第一图像,1<i≤X,i是整数。
在一种可能的实现方式中,第i次去噪的输入还包括第i次去噪对应的图像生成程度指标,所述按照预设使用顺序,使用所述扩散模型中的第一采样器和第二采样器对所述第一噪声数据进行X次去噪,包括:第i次去噪时,将第i-1次去噪的输出和第i次去噪对应的图像生成程度指标输入第i次去噪使用的采样器,所述采样器根据第i-1次去噪的输出和第i次去噪对应的图像生成程度指标预测第i-1次去噪的输出包括的无效数据,对第i-1次去噪的输出和预测的无效数据作差,得到第i次去噪的输出;其中,第i次去噪使用的采样器为所述第一采样器或所述第二采样器。
在一种可能的实现方式中,第X次去噪对应的图像生成程度指标的数值为1,图像生成程度指标的初始值为T,T是大于N的整数;第i次去噪使用所述第一采样器时,第i次去噪对应的图像生成程度指标与第i+1次去噪对应的图像生成程度指标之差等于T/N;第i次去噪使用所述第二采样器时,第i次去噪对应的图像生成程度指标与第i+1次去噪对应的图像生成程度指标之差等于T/M。
在一种可能的实现方式中,所述方法还包括:在对所述扩散模型进行训练,以确定所述预设使用顺序的过程中,响应于输入的第二文本数据,获取第二噪声数据,所述第二噪声数据为随机噪声数据;确定使用所述第一采样器和所述第二采样器去噪X次以生成图像时,所述第一采样器和所述第二采样器的每一种使用顺序,每次去噪使用所述第一采样器和所述第二采样器中的一个,以及由所述第二文本数据映射得到的控制条件;按照每一种使用顺序,对所述第二噪声数据进行X次去噪,生成每一种使用顺序对应的第二图像;单独使用所述第一采样器对所述第二噪声数据进行N次去噪,生成所述基准图像;确定每一第二图像与所述基准图像的相似度指标,以及每一第二图像的质量指标;将相似度指标大于第一阈值的第二图像中、质量指标最大的第二图像所对应的使用顺序,确定为预设使用顺序。
在一种可能的实现方式中,在每一种使用顺序下,所述第一采样器的使用次数与N的比值作为第一比值,所述第二采样器的使用次数与M的比值作为第二比值,所述第一比值与所述第二比值之和等于1。
根据本公开的另一方面,提供了一种图像生成装置,所述装置应用于扩散模型,所述装置包括:第一获取模块,用于响应于输入的第一文本数据,获取第一噪声数据,所述第一噪声数据为随机噪声数据;第一去噪模块,用于按照预设使用顺序,使用所述扩散模型中的第一采样器和第二采样器对所述第一噪声数据进行X次去噪,生成第一图像,所述第一图像与所述第一文本数据相对应,其中,M<X<N,N为单独采用所述第一采样器进行去噪以生成图像所需的次数,M为单独采用所述第二采样器进行去噪以生成图像所需的次数,每次去噪使用所述第一采样器和所述第二采样器中的一个,以及由所述第一文本数据映射得到的控制条件;其中,在所述扩散模型训练过程中,采用所述预设使用顺序生成的图像与基准图像的相似度大于第一阈值,且图像质量高于与所述基准图像的相似度大于第一阈值的、采用其他使用顺序生成的图像。
在一种可能的实现方式中,对所述第一噪声数据进行X次去噪时,第1次去噪的输入包括所述第一噪声数据,第i次去噪的输入包括第i-1次去噪的输出,第X次去噪的输出作为所述第一图像,1<i≤X,i是整数。
在一种可能的实现方式中,第i次去噪的输入还包括第i次去噪对应的图像生成程度指标,所述按照预设使用顺序,使用所述扩散模型中的第一采样器和第二采样器对所述第一噪声数据进行X次去噪,包括:第i次去噪时,将第i-1次去噪的输出和第i次去噪对应的图像生成程度指标输入第i次去噪使用的采样器,所述采样器根据第i-1次去噪的输出和第i次去噪对应的图像生成程度指标预测第i-1次去噪的输出包括的无效数据,对第i-1次去噪的输出和预测的无效数据作差,得到第i次去噪的输出;其中,第i次去噪使用的采样器为所述第一采样器或所述第二采样器。
在一种可能的实现方式中,第X次去噪对应的图像生成程度指标的数值为1,图像生成程度指标的初始值为T,T是大于N的整数;第i次去噪使用所述第一采样器时,第i次去噪对应的图像生成程度指标与第i+1次去噪对应的图像生成程度指标之差等于T/N;第i次去噪使用所述第二采样器时,第i次去噪对应的图像生成程度指标与第i+1次去噪对应的图像生成程度指标之差等于T/M。
在一种可能的实现方式中,所述装置还包括:第二获取模块,用于在对所述扩散模型进行训练,以确定所述预设使用顺序的过程中,响应于输入的第二文本数据,获取第二噪声数据,所述第二噪声数据为随机噪声数据;第一确定模块,用于确定使用所述第一采样器和所述第二采样器去噪X次以生成图像时,所述第一采样器和所述第二采样器的每一种使用顺序,每次去噪使用所述第一采样器和所述第二采样器中的一个,以及由所述第二文本数据映射得到的控制条件;第二去噪模块,用于按照每一种使用顺序,对所述第二噪声数据进行X次去噪,生成每一种使用顺序对应的第二图像;第三去噪模块,用于单独使用所述第一采样器对所述第二噪声数据进行N次去噪,生成所述基准图像;第二确定模块,用于确定每一第二图像与所述基准图像的相似度指标,以及每一第二图像的质量指标;第三确定模块,用于将相似度指标大于第一阈值的第二图像中、质量指标最大的第二图像所对应的使用顺序,确定为预设使用顺序。
在一种可能的实现方式中,在每一种使用顺序下,所述第一采样器的使用次数与N的比值作为第一比值,所述第二采样器的使用次数与M的比值作为第二比值,所述第一比值与所述第二比值之和等于1。
根据本公开的另一方面,提供了一种电子设备,包括:处理器;用于存储处理器可执行指令的存储器;其中,所述处理器被配置为在执行所述存储器存储的指令时,实现上述方法。
根据本公开的另一方面,提供了一种非易失性计算机可读存储介质,其上存储有计算机程序指令,其中,所述计算机程序指令被处理器执行时实现上述方法。
根据本公开的另一方面,提供了一种计算机程序产品,包括计算机可读代码,或者承载有计算机可读代码的非易失性计算机可读存储介质,当所述计算机可读代码在电子设备的处理器中运行时,所述电子设备中的处理器执行上述方法。
根据本公开实施例的图像生成方法,扩散模型响应于输入的第一文本数据,获取第一噪声数据,可以得到去噪的对象;按照预设使用顺序,使用扩散模型中的第一采样器和第二采样器对第一噪声数据进行X次去噪,生成第一图像,每次去噪使用第一采样器和第二采样器中的一个,以及由第一文本数据映射得到的控制条件,因此第一图像与第一文本数据相对应,可以完成文本生图功能;M<X<N,N为单独采用第一采样器进行去噪以生成图像所需的次数,M为单独采用第二采样器进行去噪以生成图像所需的次数,使得生成图像需要的去噪次数低于两种采样器中去噪次数更高的第一采样器,和单独使用第一采样器相比,本公开的图像生成方法的图像生成效率更高;在扩散模型训练过程中,采用预设使用顺序生成的图像与基准图像的相似度大于第一阈值,且图像质量高于与基准图像的相似度大于第一阈值的、采用其他使用顺序生成的图像,因此本公开的图像生成方法生成的图像的内容和质量较高。从而能实现图像生成质量和效率的兼顾。
使用本公开实施例的图像生成方法,相比单独使用第一采样器,可以减少30%的去噪次数,并且所得的生成结果几乎完全一样。由于第一采样器和第二采样器可以是现有技术的采样器,因此本公开实施例的图像生成方法的成本低、效果显著。
根据下面参考附图对示例性实施例的详细说明,本公开的其它特征及方面将变得清楚。
附图说明
包含在说明书中并且构成说明书的一部分的附图与说明书一起示出了本公开的示例性实施例、特征和方面,并且用于解释本公开的原理。
图1示出现有技术的DDIM、Euler A、DPM++ 2M Karras三种采样器,分别去噪5次、10次、15次、20次生成的图像的示例。
图2示出根据本公开实施例的图像生成方法的示例性应用场景。
图3示出根据本公开实施例的图像生成方法的流程的示意图。
图4a示出根据本公开实施例的第一图像的一个示例。
图4b示出根据本公开实施例计算第i次去噪的输出的一个示例。
图5示出根据本公开实施例在不同使用顺序下生成的图像的示例。
图6示出根据本公开实施例的图像生成装置的结构的示意图。
图7示出根据本公开实施例的电子设备1900的框图。
具体实施方式
以下将参考附图详细说明本公开的各种示例性实施例、特征和方面。附图中相同的附图标记表示功能相同或相似的元件。尽管在附图中示出了实施例的各种方面,但是除非特别指出,不必按比例绘制附图。
在这里专用的词“示例性”意为“用作例子、实施例或说明性”。这里作为“示例性”所说明的任何实施例不必解释为优于或好于其它实施例。
另外,为了更好的说明本公开,在下文的具体实施方式中给出了众多的具体细节。本领域技术人员应当理解,没有某些具体细节,本公开同样可以实施。在一些实例中,对于本领域技术人员熟知的方法、手段、元件和电路未作详细描述,以便于凸显本公开的主旨。
作为人工智能生成内容(Artificial Intelligence Generated Content,AIGC)的重要组成部分,文本生图(Text-to-Image Generation)正受到与日俱增的关注和应用,即根据用户输入的文本描述,由计算机模型输出与之对应的图像。扩散模型(DiffusionModel)由于其优越的图像生成质量,逐步成为了文本生图领域的主流解决方案。
扩散模型使用海量图文对(image-text pairs)数据进行训练,通过对真实图像进行多次加噪处理,即在像素空间或特征空间中叠加随机噪声,从而得到完全随机的噪声数据;在此基础上,将真实图像配对的文本数据映射得到控制条件,基于扩散模型进行相同次数的去噪处理,从而恢复出原始的真实图像。训练收敛之后,扩散模型即可对于任意文本数据,以任意完全随机噪声数据为起点,通过指定次数的去噪处理,输出高质量且符合文本数据的语义的图像。
现有技术的扩散模型使用采样器(Sampler)对噪声数据进行去噪。采样器是扩散模型中极为重要的一个模块,如果将任意完全随机噪声数据对应的噪声去除程度看作是0,生成的图像对应的噪声去除程度看作是1,那么去噪的过程可以看作噪声去除程度从0到1变化的过程。那么在确定去噪的总次数之后,采样器可以根据去噪的总次数确定每一次去噪的输出对应的噪声去除程度。再根据逐步将完全随机的噪声数据处理得到符合要求的图像,并使得每一次去噪的输出符合其对应的噪声去除程度。一般而言,去噪次数越多,每次去噪处理增加的细节越丰富,反之则越粗糙,即增加去噪次数可以得到更加精细和高质量的图像,但同时去噪处理的总耗时也随去噪次数线性增加。为了在提高图像生成效率的同时保证图像质量,节省耗时,现有技术提出了一些新的采样器设计方案,并借助定性和定量的实验数据,来论证其与已有的采样器相比能够提高图像生成效率,同时具有“近似的生成效果”。
图1示出现有技术的DDIM、Euler A、DPM++ 2M Karras三种采样器,分别去噪5次、10次、15次、20次生成的图像的示例。
如图1所示,每一行对应一种采样器,除采样器和去噪次数以外,扩散模型的其他设置完全相同。对比同一行中的多个图像可以明显看出,使用同一种采样器去噪时,增加去噪次数可以提高图像质量。但对比同一列的图像时,由于不同采样器生成的图像内容差异很大,因此并不能轻易得到,某个采样器使用更少的去噪次数依旧优于其他采样器的结论。因此,新的采样器设计方案是否真正达到“近似的生成效果”存疑。
综上所述,现有技术的扩散模型尚不能实现图像生成效果和效率的兼顾。
有鉴于此,本公开提出了一种图像生成方法、装置、电子设备及存储介质。本公开实施例的图像生成方法使用第一采样器和第二采样器对噪声数据进行去噪,通过对两种采样器的使用顺序进行控制,使得生成图像需要的去噪次数低于两种采样器中去噪次数更高的第一采样器,提高图像生成效率,且生成的图像的内容和质量较高,从而能实现图像生成质量和效率的兼顾。
图2示出根据本公开实施例的图像生成方法的示例性应用场景。
如图2所示,该应用场景中可包括用户、第一设备和第二设备。第一设备可以是云端的服务器,第二设备可以是面向用户的终端设备。本公开实施例的图像生成方法可以应用于扩散模型,扩散模型可部署在第一设备上。
用户想要使用扩散模型生成与文本数据对应的图像时,可以通过第二设备发起包括文本数据的请求。请求被传输至第一设备,请求中的文本数据输入扩散模型。
扩散模型执行本公开实施例的图像生成方法,可以响应于输入的第一文本数据,获取随机的第一噪声数据。然后对随机的第一噪声数据进行去噪,其中,在第一次去噪之前,还根据第一文本数据映射得到去噪的控制条件,每次去噪时都使用映射好的控制条件来控制去噪过程。最终生成与第一文本数据对应的第一图像,将第一图像传输至第二设备,由第二设备展示第一图像给用户。
本领域技术人员应理解,扩散模型也可以部署在第一设备上,本公开实施例对于扩散模型具体设置在服务器还是终端设备不作限制。
图3示出根据本公开实施例的图像生成方法的流程的示意图。
如图3所示,在一种可能的实现方式中,所述方法应用于扩散模型,所述方法包括:
步骤S31,响应于输入的第一文本数据,获取第一噪声数据,第一噪声数据为随机噪声数据;
步骤S32,按照预设使用顺序,使用扩散模型中的第一采样器和第二采样器对第一噪声数据进行X次去噪,生成第一图像,第一图像与第一文本数据相对应,其中,M<X<N,N为单独采用第一采样器进行去噪以生成图像所需的次数,M为单独采用第二采样器进行去噪以生成图像所需的次数,每次去噪使用第一采样器和第二采样器中的一个,以及由第一文本数据映射得到的控制条件;
其中,在扩散模型训练过程中,采用预设使用顺序生成的图像与基准图像的相似度大于第一阈值,且图像质量高于与基准图像的相似度大于第一阈值的、采用其他使用顺序生成的图像。
举例来说,本公开实施例中执行图像生成方法的扩散模型可以是训练好的扩散模型。扩散模型的示例性训练过程可以参见下文及图5的相关描述。
扩散模型可包括第一采样器和第二采样器。扩散模型可用于对噪声数据进行去噪生成图像,在扩散模型去噪时,可以使用第一采样器和第二采样器,也可以单独使用第一采样器或第二采样器。第一采样器和第二采样器可以是基于现有技术可以实现的任意采样器,如去噪扩散隐式模型(Denoising Diffusion Implicit Models,DDIM)、Euler A、DPM++2M Karras等,扩散模型包括的采样器可以等间隔去噪,也可以是不等间隔去噪,本公开对于扩散模型包括的采样器的去噪间隔不作限制。第一采样器和第二采样器可以是相同类型也可以是不同类型,可以是同一种采样器,本公开对第一采样器和第二采样器的具体类型不作限制。
其中,单独使用第一采样器去噪N次可以生成满足需求的图像(例如无噪声的图像),单独使用第二采样器去噪M次可以生成满足需求的图像(例如无噪声的图像),M小于N。也就是说,第一采样器可以是去噪次数更多的、细粒度的慢采样器。第二采样器可以是去噪次数更少的、粗粒度的快采样器。
在扩散模型训练好后,在第一文本数据输入扩散模型时,扩散模型可以执行步骤S31,响应于输入的第一文本数据,获取第一噪声数据。
第一噪声数据可以是扩散模型响应于输入的第一文本数据实时生成的。第一噪声数据也可以由扩散模型预先生成好并存储,扩散模型响应于输入的第一文本数据从存储位置处获取第一噪声数据即可。第一噪声数据可以是二维格式的随机噪声数据或者其他格式,本公开对此不作限制。
接下来,在步骤S32中,扩散模型可以按照预设使用顺序,使用第一采样器和第二采样器对第一噪声数据进行X次去噪,生成第一图像。此时可以认为第一图像是无噪声的图像。
每次去噪使用第一采样器和第二采样器中的一个,预设使用顺序可以指进行X次去噪时第一采样器和第二采样器的使用顺序。X可以是大于M且小于N的数值。可以理解的是,在X的数值一定的情况下,进行X次去噪时第一采样器和第二采样器的使用顺序可以有多种,预设使用顺序可以是其中的一种。X的数值和预设使用顺序可以是在扩散模型的训练过程中确定的,并且在扩散模型的训练过程中,采用预设使用顺序生成的图像与基准图像的相似度大于第一阈值,且图像质量高于与基准图像的相似度大于第一阈值的、采用其他使用顺序生成的图像。X和预设使用顺序的示例性确定方式可以参见下文表1的相关描述。第一阈值的数值可以根据应用场景需求进行设置,本公开对此不作限制。
例如X=4时,使用A表示第一采样器,使用B表示第二采样器,可能的使用顺序可以包括AAAB、AABA、ABAA、BAAA、AABB、ABBA、ABAB、BBAA、BAAB、BABA、BBBA、BBAB、BABB、ABBB。如果采用使用顺序AAAB、AABA、ABAA、AABB、ABBA、ABAB时,生成的图像与基准图像的相似度大于第一阈值,并且采用使用顺序AABA生成的图像的图像质量高于使用顺序AAAB、ABAA、AABB、ABBA、ABAB,那么AABA可以是预设使用顺序。
基准图像可以是在扩散模型的训练过程中,单独采用第一采样器去噪N次生成的图像。
每次去噪时还使用由第一文本数据映射得到的控制条件来控制去噪过程,因此第一图像能够与第一文本数据相对应。示例性地,控制条件通常为能够体现第一文本数据特征的数值,例如控制条件可以是L×D,L的数值表示第一文本数据中包括的单词(token)的个数,也即第一文本数据的文本序列长度。D的数值表示每个单词映射后的向量维度。因此不同的文本数据映射得到的控制条件可能不同,需要在文本数据输入扩散模型后进行计算。对某一文本数据进行多次去噪时,只需在第一次去噪前计算一次该文本数据映射得到的控制条件,每次去噪都使用计算出的控制条件即可。
对第一文本数据进行映射得到控制条件可以基于现有技术实现,在此不再对映射的细节进行赘述。
图4a示出根据本公开实施例的第一图像的一个示例。输入的第一文本数据可以是“椅子上有一只戴墨镜的猫”。如图4a所示,第一图像的图像内容中可以包括椅子、猫和墨镜,其中猫戴着墨镜,蹲在椅子上。
本领域理解人员应理解,在扩散模型的训练过程中,针对相同的文本数据,采用不同使用顺序生成图像时使用的控制条件可以相同。针对相同的文本数据,生成基准图像时使用的控制条件,与采用不同使用顺序生成图像时使用的控制条件可以相同。
根据本公开实施例的图像生成方法,扩散模型响应于输入的第一文本数据,获取第一噪声数据,可以得到去噪的对象;按照预设使用顺序,使用扩散模型中的第一采样器和第二采样器对第一噪声数据进行X次去噪,生成第一图像,每次去噪使用第一采样器和第二采样器中的一个,以及由第一文本数据映射得到的控制条件,因此第一图像与第一文本数据相对应,可以完成文本生图功能;M<X<N,N为单独采用第一采样器进行去噪以生成图像所需的次数,M为单独采用第二采样器进行去噪以生成图像所需的次数,使得生成图像需要的去噪次数低于两种采样器中去噪次数更高的第一采样器,和单独使用第一采样器相比,本公开的图像生成方法的图像生成效率更高;在扩散模型训练过程中,采用预设使用顺序生成的图像与基准图像的相似度大于第一阈值,且图像质量高于与基准图像的相似度大于第一阈值的、采用其他使用顺序生成的图像,因此本公开的图像生成方法生成的图像的内容和质量较高。从而能实现图像生成质量和效率的兼顾。
使用本公开实施例的图像生成方法,相比单独使用第一采样器,可以减少30%的去噪次数,并且所得的生成结果几乎完全一样。由于第一采样器和第二采样器可以是现有技术的采样器,因此本公开实施例的图像生成方法的成本低、效果显著。
在一种可能的实现方式中,对第一噪声数据进行X次去噪时,第1次去噪的输入包括第一噪声数据,第i次去噪的输入包括第i-1次去噪的输出,第X次去噪的输出作为第一图像,1<i≤X,i是整数。
举例来说,第1次去噪的输入可包括第一噪声数据,第一噪声数据可以看作是二维的全噪声图像。第i次去噪的输入包括第i-1次去噪的输出,使得每一次去噪都去除第一噪声数据中与文本数据无关的一部分噪声,并且任意两次去噪时去除掉的噪声不重复。通过多次去噪逐渐去除与文本数据无关的噪声,使得保留下来的数据与文本数据的关联性更强,最后X次去噪结束时,输出的就可以是与文本数据对应的第一图像。
下面介绍采样器在一次去噪过程中所完成的示例性工作。
在一种可能的实现方式中,第i次去噪的输入还包括第i次去噪对应的图像生成程度指标,
步骤S32包括:
第i次去噪时,将第i-1次去噪的输出和第i次去噪对应的图像生成程度指标输入第i次去噪使用的采样器,采样器根据第i-1次去噪的输出和第i次去噪对应的图像生成程度指标预测第i-1次去噪的输出包括的无效数据,对第i-1次去噪的输出和预测的无效数据作差,得到第i次去噪的输出;其中,第i次去噪使用的采样器为第一采样器或第二采样器。
举例来说,单独采用每种采样器进行去噪以生成图像所需的次数是预先确定好的,为保证按照预先确定的次数去噪后,生成的图像确实是无噪声的图像,在每次去噪时可以使用图像生成程度指标来控制本次去噪的输出对应的噪声去除程度。在本公开实施例的图像生成方法中,使用第一采样器和第二采样器进行去噪时,也使用图像生成程度指标来控制本次去噪的输出对应的噪声去除程度,也即,第i次去噪的输入还包括第i-1次去噪的输出对应的图像生成程度指标。
以第一采样器和第二采样器是DDIM采样器为例,图像生成程度指标可以是DDIM采样器使用的“训练时间步数”(num_train_timesteps)。此时图像生成程度指标的初始值为T=1000。在去噪的过程中,随着去噪次数的增加,与去噪次数对应的图像生成程度指标逐渐减小,与去噪的输出对应的噪声去除程度逐渐增大。图像生成程度指标随去噪次数变化的示例性方式可参见下文的相关描述。
将第1次去噪的输入看作全噪声图像、第X次去噪的输出是无噪声图像时,第1次-第X-1次去噪的输出都可以看作是包含噪声的图像。第1次去噪的输入对应的噪声去除程度s1可以是0,第X次去噪的输出对应的噪声去除程度eX可以是1。第i+1次去噪的输入的噪声去除程度si+1和第i次去噪的输出的噪声去除程度ei相同。
本领域技术人员应理解,图像生成程度指标也可以包括其他参数,本公开实施例对于图像生成程度指标的具体内容不作限制。
在步骤S32中,第一采样器或第二采样器用于第i次去噪时,可根据第i次去噪对应的图像生成程度指标ti和第i-1次去噪的输出,计算出第i次去噪的输出。图4b示出根据本公开实施例计算第i次去噪的输出的一个示例。如图4b所示,采样器(第一采样器或第二采样器)可以根据第i-1次去噪的输出和第i次去噪对应的图像生成程度指标预测第i-1次去噪的输出包括的无效数据(也即上文所述的与文本数据无关的噪声)。然后可以对第i-1次去噪的输出和预测的无效数据作差,得到第i次去噪的输出。
通过这种方式,使得每次去噪的输出对应的噪声去除程度可控。
下面介绍图像生成程度指标随去噪次数变化的示例性方式。
在一种可能的实现方式中,第X次去噪对应的图像生成程度指标的数值为1,图像生成程度指标的初始值为T,T是大于N的整数;
第i次去噪使用第一采样器时,第i次去噪对应的图像生成程度指标与第i+1次去噪对应的图像生成程度指标之差等于T/N;
第i次去噪使用第二采样器时,第i次去噪对应的图像生成程度指标与第i+1次去噪对应的图像生成程度指标之差等于T/M。
举例来说,单独采用第一采样器进行去噪以生成图像所需的次数为N次,为增加去噪平滑程度,可等间隔去噪,也即第一采样器相邻两次去噪对应的图像生成程度指标之差等于T/N,第N次去噪的输出对应的图像生成程度指标等于1。
以T=1000、N=20为例,第1-20次去噪对应的图像生成程度指标依次为951、901、851、801、751、701、651、601、551、501、451、401、351、301、251、201、151、101、51、1,即两两之间的差值为T/N=1000/20=50。每次去噪使得噪声去除程度增加1/N=0.05。
单独采用第二采样器进行去噪以生成图像所需的次数为M次,为增加去噪平滑程度,可等间隔去噪,也即第二采样器相邻两次去噪对应的图像生成程度指标之差等于T/M,第M次去噪的输出对应的图像生成程度指标等于1。
以T=1000、M=10为例,第1-10次去噪对应的图像生成程度指标依次为901、801、701、601、501、401、301、201、101、1。即两两之间的差值为T/M=1000/10=100。每次去噪使得噪声去除程度增加1/M=0.1。
一般而言,在单独使用一种采样器的场景,去噪次数N(或M)越多,在T固定为1000的前提下,T/N(或T/M)就会越小,即每次去噪处理的“跨度”越小,去噪增加的内容越细致,因此最终得到的图像细节越多、质量越高。回到将去噪的输出的噪声去除程度从0到1变化的过程这一例子上来,在真实场景中,整个去噪过程是一条曲线,假设将其均等分为N段(或M段),并标上对应的起点和终点,然后以直线段连接每一对起点和终点,可以得到一条折线。当N(或M)逐渐增加并趋近于T时,每段起点和终点的连线将越来越接近实际的曲线,整个去噪过程的累积误差也就越小,最后一次去噪输出的图像质量就会越好。
不难发现,单独使用第一采样器进行去噪和单独使用第二采样器进行去噪相比,前者使用的图像生成程度指标是完全包括后者的。如果将去噪次数为N的第一采样器称作慢采样器(细粒度采样器),将次数为M的第二采样器称作快采样器(粗粒度采样器),慢采样器的去噪次数更多,每次去噪对于噪声去除程度增加的程度更小,生成图像的细节更多、质量更高,但耗时也更长;快采样器的去噪次数更少,每次去噪对于噪声去除程度增加的程度更大,生成图像的细节更少、质量更低,但耗时也更短,可以更快地生成图像。
假设M=10,N=20,如果每一次去噪看作一次去噪节点,交替地使用第一采样器和第二采样器进行X次去噪,在对生成细节要求较少的去噪节点,使用粗粒度的第二采样器,在对生成细节要求较高的去噪节点,使用细粒度的第一采样器,就可以用第二采样器去噪一次代替第一采样器去噪两次,省下单独使用第一采样器时的一些去噪次数,从而降低整体耗时。
在本公开实施例的图像生成方法中,使用第一采样器和第二采样器进行X次去噪时,第一采样器每次去噪的程度与单独使用第一采样器时可以相同,也即,第i次去噪使用第一采样器时,第i次去噪对应的图像生成程度指标与第i+1次去噪对应的图像生成程度指标之差等于T/N,每次去噪使得噪声去除程度增加1/N。假设N=20,T=1000,那么第i次去噪的输出对应的图像生成程度指标为ti,第i次去噪使用第一采样器时,ti-ti+1=50,ei-ei-1=0.05。
同理,在本公开实施例的图像生成方法中,使用第一采样器和第二采样器进行X次去噪时,第二采样器每次去噪的程度与单独使用第二采样器时可以相同,也即,第i次去噪使用第二采样器时,第i次去噪对应的图像生成程度指标与第i+1次去噪对应的图像生成程度指标之差等于T/M,每次去噪使得噪声去除程度增加1/M。假设N=10,T=1000,那么第i次去噪的输出对应的图像生成程度指标为ti,第i次去噪使用第一采样器时,ti-ti+1=100,ei-ei-1=0.1。
第X次去噪使用第一采样器或第二采样器时,第X次去噪的输出对应的图像生成程度指标均等于1。
假设第1次去噪使用的是第一采样器(慢采样器),第2次去噪使用的是第二采样器(快采样器),第3-X次去噪使用的是第一采样器(慢采样器),M=10,N=20,此时第二采样器去噪一次可代替第一采样器去噪两次,因此X可等于19。第1-19次去噪对应的图像生成程度指标可依次为951、901、801、751、701、651、601、551、501、451、401、351、301、251、201、151、101、51、1,跳过了851。对应的噪声去除程度可依次为0.05、0.15、0.2、0.25、0.3、0.35、0.4、0.45、0.5、0.55、0.6、0.65、0.7、0.75、0.8、0.85、0.9、0.95、1。
下面介绍本公开实施例的扩散模型的示例性训练方式。
在一种可能的实现方式中,所述方法还包括:
在对扩散模型进行训练,以确定预设使用顺序的过程中,响应于输入的第二文本数据,获取第二噪声数据,第二噪声数据为随机噪声数据;
确定使用第一采样器和第二采样器去噪X次以生成图像时,第一采样器和第二采样器的每一种使用顺序,每次去噪使用第一采样器和第二采样器中的一个,以及由第二文本数据映射得到的控制条件;
按照每一种使用顺序,对第二噪声数据进行X次去噪,生成每一种使用顺序对应的第二图像;
单独使用第一采样器对第二噪声数据进行N次去噪,生成基准图像;
确定每一第二图像与基准图像的相似度指标,以及每一第二图像的质量指标;
将相似度指标大于第一阈值的第二图像中、质量指标最大的第二图像所对应的使用顺序,确定为预设使用顺序。
举例来说,第一采样器和第二采样器可以基于现有技术训练,使得训练好的第一采样器和第二采样器可以对输入的数据去噪,本公开实施例对于第一采样器和第二采样器的具体训练方式不作限制。本公开实施例对扩散模型进行训练的过程的重点是确定预设使用顺序。
首先可以输入第二文本数据到待训练的扩散模型。响应于输入的第二文本数据,待训练的扩散模型获取第二噪声数据,第二噪声数据为随机噪声数据。第二文本数据可以和第一文本数据相同或不同,第二噪声数据可以和第一噪声数据相同或不同,本公开对此不作限制。
之后可以确定使用第一采样器和第二采样器去噪X次以生成图像、每次去噪使用第一采样器和第二采样器中的一个时,第一采样器和第二采样器的每一种使用顺序。这一步骤可以先确定X的每一种可能数值,再确定X的每一可能数值下第一采样器和第二采样器的每一种使用顺序。
在一种可能的实现方式中,在每一种使用顺序下,第一采样器的使用次数与N的比值作为第一比值,第二采样器的使用次数与M的比值作为第二比值,第一比值与第二比值之和等于1。
举例来说,第一采样器的使用次数可以是a次,第二采样器的使用次数可以是b次(a+b=X,a和b都是整数)。使用一次第一采样器可以将噪声去除程度增加1/N,使用一次第二采样器可以将噪声去除程度增加1/M,那么使用第一采样器a次可以将噪声去除程度增加a/N,使用第二采样器b次可以将噪声去除程度增加b/M。
由于X次去噪的目的是将噪声去除程度由0变成1,那么X次去噪一共使得噪声去除程度增加1。因此使得a/N+b/M=1即可。也即,第一采样器的使用次数a与N的比值作为第一比值a/N,第二采样器的使用次数b与M的比值作为第二比值b/M,第一比值a/N与第二比值b/M之和等于1。相比单独使用第一采样器进行去噪的方案,节省的去噪次数可等于N-(a+b)。
N可以是偶数。表1列举了N=20、M=10时,a、b各种的组合方式,以及对应的总去噪次数X,可以看出,b每增加1,即多使用第二采样器一次,就可以使得总去噪次数减少一次,省下一次去噪的时间成本。
表1
以上以N和M都为偶数且N是M的偶数倍作为示例。在另一个示例中,N和/或M也可以是奇数,N也可以是M的奇数倍,例如,a=6、N=9、b=1、M=3时,a/N+b/M=6/9+1/3=1,此时N和M都是奇数,N是M的3倍。节省的去噪次数=N-(a+b)=2。
在另一个示例中,N和M也可以不是整数倍,例如,a=5、N=10、b=2、M=4时,a/N+b/M=1/3+6/9=1,此时N是M的2.5倍,节省的去噪次数=N-(a+b)=3。
本公开实施例对于N和M具体是奇数还是偶数、N和M是否为整数倍关系均不作限制,只要满足a/N+b/M=1,a、b、N、M均为整数,N大于M即可。
通过这种方式,可以确定出满足需求的第一采样器使用次数和第二采样器使用次数的所有组合,从而确定出X的所有可能数值。
确定出X的所有可能数值之后,可以开始确定X的每一可能数值下第一采样器和第二采样器的每一种使用顺序。
以b=6、a=8、X等于14为例,还需要进一步规划在14次去噪中选择哪6次使用第二采样器,这实际上是一个排列组合问题,使用顺序一共有C6 14种,也即X=14时第一采样器和第二采样器有C6 14使用顺序。下面示出其中三种使用顺序。
第一种使用顺序:第1-6次去噪使用第二采样器,第7-14次去噪使用第一采样器;
第二种使用顺序:第1-8次去噪使用第一采样器,第9-14次去噪使用第二采样器;
第三种使用顺序:第1-4次去噪使用第一采样器,第5-10次去噪使用第二采样器,第11-14次去噪使用第一采样器。
以此类推,可确定X为其他数值时的使用顺序,从而确定X的每一数值对应的所有使用顺序。
可根据第二文本数据映射得到去噪使用的控制条件,然后按照每一种使用顺序,使用根据第二文本数据映射得到的控制条件,对第二噪声数据进行X次去噪,生成每一种使用顺序对应的第二图像。示例性的去噪方式可以参见上文对步骤S32的描述,在此不再赘述。
再单独使用第一采样器和根据第二文本数据映射得到的控制条件对第二噪声数据进行N次去噪,生成基准图像。这一步骤可以基于现有技术实现,在此不再赘述。
为了更客观地确定预设使用顺序,可以确定每一第二图像与基准图像的相似度指标,以及每一第二图像的质量指标。相似度指标可指示图像内容的相似程度。质量指标可指示图像的精细程度。相似度指标和质量指标可以基于现有技术计算,本公开实施例对于相似度指标和质量指标的具体计算方式不作限制。
可对相似度指标大于第一阈值的第二图像的质量指标进行比较,将其中质量指标最大的第二图像对应的使用顺序确定为预设使用顺序。
经过实验对比b=6、a=8、X=14时上述三种使用顺序生成的第二图像,其中第三种使用顺序对应的第二图像是相似度指标大于第一阈值的第二图像中、质量指标最大的。可能的原因是,在去噪初期用细粒度的第一采样器打好了文本生图的基础。在去噪的中间过程,可以使用粗粒度的第二采样器,在已有的基础之上,进一步完善内容;在去噪接近结束时,则可以再一次使用细粒度的第一采样器,确保最终输出的图像质量,完成最后的收尾工作。
以上实验对比基于N=20进行,但对于任意的N,均可以在去噪的中间段使用粗粒度的第二采样器以节省去噪次数,也即,在第1至h次去噪时使用第一采样器,在第h+1至第g次去噪时使用第二采样器,在第g+1至第X次去噪时使用第一采样器,其中,1<h<h+1<g<g+1<X,h和g是整数,从而降低文本生图总耗时。
图5示出根据本公开实施例在不同使用顺序下生成的图像的示例。
如图5所示,每一列的图像对应于相同的第二文本数据。其中第一行和最后一行,分别为单独使用第一采样器且去噪次数N=20、单独使用第二采样器且去噪次数M=10生成的图像,可以看出单独使用两种采样器时,在其他条件都相同的情况下,生成的图像在质量和内容上均存在较大差异。
第二行至第四行是本公开实施例的图像生成方法使用第一采样器和第二采样器去噪后生成的图像。其中,第二行对应的使用顺序是:第1-8次去噪使用第一采样器、第9-10次去噪使用第二采样器、第11-18次去噪使用第一采样器,X=18;第三行对应的使用顺序是:第1-6次去噪使用第一采样器、第7-10次去噪使用第二采样器、第11-16次去噪使用第一采样器,X=14;第四行对应的使用顺序是:第1-4次去噪使用第一采样器、第5-10次去噪使用第二采样器、第11-14次去噪使用第一采样器,X=12。
通过对不同行的图像进行比较可以看出,本公开实施例的图像生成方法生成的图像和单独使用第一采样器生成的图像(基准图像)相比,图像内容基本一致,图像质量的差别也很小。
在图5的示例中,如果第四行的图像是相似度指标大于第一阈值的第二图像中、质量指标最大的第二图像,则第四行对应的使用顺序可以确定为预设使用顺序。
在一种可能的实现方式中,本公开还提供了一种图像生成装置,图6示出根据本公开实施例的图像生成装置的结构的示意图。
如图6所示,在一种可能的实现方式中,所述装置应用于扩散模型,所述装置包括:
第一获取模块61,用于响应于输入的第一文本数据,获取第一噪声数据,所述第一噪声数据为随机噪声数据;
第一去噪模块62,用于按照预设使用顺序,使用所述扩散模型中的第一采样器和第二采样器对所述第一噪声数据进行X次去噪,生成第一图像,所述第一图像与所述第一文本数据相对应,其中,M<X<N,N为单独采用所述第一采样器进行去噪以生成图像所需的次数,M为单独采用所述第二采样器进行去噪以生成图像所需的次数,每次去噪使用所述第一采样器和所述第二采样器中的一个,以及由所述第一文本数据映射得到的控制条件;
其中,在所述扩散模型训练过程中,采用所述预设使用顺序生成的图像与基准图像的相似度大于第一阈值,且图像质量高于与所述基准图像的相似度大于第一阈值的、采用其他使用顺序生成的图像。
在一种可能的实现方式中,对所述第一噪声数据进行X次去噪时,第1次去噪的输入包括所述第一噪声数据,第i次去噪的输入包括第i-1次去噪的输出,第X次去噪的输出作为所述第一图像,1<i≤X,i是整数。
在一种可能的实现方式中,第i次去噪的输入还包括第i次去噪对应的图像生成程度指标,
所述按照预设使用顺序,使用所述扩散模型中的第一采样器和第二采样器对所述第一噪声数据进行X次去噪,包括:
第i次去噪时,将第i-1次去噪的输出和第i次去噪对应的图像生成程度指标输入第i次去噪使用的采样器,所述采样器根据第i-1次去噪的输出和第i次去噪对应的图像生成程度指标预测第i-1次去噪的输出包括的无效数据,对第i-1次去噪的输出和预测的无效数据作差,得到第i次去噪的输出;其中,第i次去噪使用的采样器为所述第一采样器或所述第二采样器。
在一种可能的实现方式中,第X次去噪对应的图像生成程度指标的数值为1,图像生成程度指标的初始值为T,T是大于N的整数;
第i次去噪使用所述第一采样器时,第i次去噪对应的图像生成程度指标与第i+1次去噪对应的图像生成程度指标之差等于T/N;
第i次去噪使用所述第二采样器时,第i次去噪对应的图像生成程度指标与第i+1次去噪对应的图像生成程度指标之差等于T/M。
在一种可能的实现方式中,所述装置还包括:
第二获取模块,用于在对所述扩散模型进行训练,以确定所述预设使用顺序的过程中,响应于输入的第二文本数据,获取第二噪声数据,所述第二噪声数据为随机噪声数据;
第一确定模块,用于确定使用所述第一采样器和所述第二采样器去噪X次以生成图像时,所述第一采样器和所述第二采样器的每一种使用顺序,每次去噪使用所述第一采样器和所述第二采样器中的一个,以及由所述第二文本数据映射得到的控制条件;
第二去噪模块,用于按照每一种使用顺序,对所述第二噪声数据进行X次去噪,生成每一种使用顺序对应的第二图像;
第三去噪模块,用于单独使用所述第一采样器对所述第二噪声数据进行N次去噪,生成所述基准图像;
第二确定模块,用于确定每一第二图像与所述基准图像的相似度指标,以及每一第二图像的质量指标;
第三确定模块,用于将相似度指标大于第一阈值的第二图像中、质量指标最大的第二图像所对应的使用顺序,确定为预设使用顺序。
在一种可能的实现方式中,在每一种使用顺序下,所述第一采样器的使用次数与N的比值作为第一比值,所述第二采样器的使用次数与M的比值作为第二比值,所述第一比值与所述第二比值之和等于1。
在一些实施例中,本公开实施例提供的装置具有的功能或包含的模块可以用于执行上文方法实施例描述的方法,其具体实现可以参照上文方法实施例的描述,为了简洁,这里不再赘述。
本公开实施例还提出一种计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令被处理器执行时实现上述方法。计算机可读存储介质可以是易失性或非易失性计算机可读存储介质。
本公开实施例还提出一种电子设备,包括:处理器;用于存储处理器可执行指令的存储器;其中,所述处理器被配置为在执行所述存储器存储的指令时,实现上述方法。
本公开实施例还提供了一种计算机程序产品,包括计算机可读代码,或者承载有计算机可读代码的非易失性计算机可读存储介质,当所述计算机可读代码在电子设备的处理器中运行时,所述电子设备中的处理器执行上述方法。
图7示出根据本公开实施例的电子设备1900的框图。例如,电子设备1900可以被提供为一服务器或终端设备。参照图7,电子设备1900包括处理组件1922,其进一步包括一个或多个处理器,以及由存储器1932所代表的存储器资源,用于存储可由处理组件1922的执行的指令,例如应用程序。存储器1932中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件1922被配置为执行指令,以执行上述方法。
电子设备1900还可以包括一个电源组件1926被配置为执行电子设备1900的电源管理,一个有线或无线网络接口1950被配置为将电子设备1900连接到网络,和一个输入输出接口1958(I/O接口)。电子设备1900可以操作基于存储在存储器1932的操作系统,例如Windows ServerTM,Mac OS XTM,UnixTM, LinuxTM,FreeBSDTM或类似。
在示例性实施例中,还提供了一种非易失性计算机可读存储介质,例如包括计算机程序指令的存储器1932,上述计算机程序指令可由电子设备1900的处理组件1922执行以完成上述方法。
本公开可以是系统、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本公开的各个方面的计算机可读程序指令。
计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是――但不限于――电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
用于执行本公开操作的计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如Smalltalk、C++等,以及常规的过程式编程语言—诸如“C”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA),该电子电路可以执行计算机可读程序指令,从而实现本公开的各个方面。
这里参照根据本公开实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本公开的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
附图中的流程图和框图显示了根据本公开的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
以上已经描述了本公开的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。

Claims (10)

1.一种图像生成方法,其特征在于,所述方法应用于扩散模型,所述方法包括:
响应于输入的第一文本数据,获取第一噪声数据,所述第一噪声数据为随机噪声数据;
按照预设使用顺序,使用所述扩散模型中的第一采样器和第二采样器对所述第一噪声数据进行X次去噪,生成第一图像,所述第一图像与所述第一文本数据相对应,其中,M<X<N,N为单独采用所述第一采样器进行去噪以生成图像所需的次数,M为单独采用所述第二采样器进行去噪以生成图像所需的次数,每次去噪使用所述第一采样器和所述第二采样器中的一个,以及由所述第一文本数据映射得到的控制条件;
其中,在所述扩散模型训练过程中,采用所述预设使用顺序生成的图像与基准图像的相似度大于第一阈值,且图像质量高于与所述基准图像的相似度大于第一阈值的、采用其他使用顺序生成的图像。
2.根据权利要求1所述的方法,其特征在于,对所述第一噪声数据进行X次去噪时,第1次去噪的输入包括所述第一噪声数据,第i次去噪的输入包括第i-1次去噪的输出,第X次去噪的输出作为所述第一图像,1<i≤X,i是整数。
3.根据权利要求2所述的方法,其特征在于,第i次去噪的输入还包括第i次去噪对应的图像生成程度指标,
所述按照预设使用顺序,使用所述扩散模型中的第一采样器和第二采样器对所述第一噪声数据进行X次去噪,包括:
第i次去噪时,将第i-1次去噪的输出和第i次去噪对应的图像生成程度指标输入第i次去噪使用的采样器,所述采样器根据第i-1次去噪的输出和第i次去噪对应的图像生成程度指标预测第i-1次去噪的输出包括的无效数据,对第i-1次去噪的输出和预测的无效数据作差,得到第i次去噪的输出;其中,第i次去噪使用的采样器为所述第一采样器或所述第二采样器。
4.根据权利要求3所述的方法,其特征在于,第X次去噪对应的图像生成程度指标的数值为1,图像生成程度指标的初始值为T,T是大于N的整数;
第i次去噪使用所述第一采样器时,第i次去噪对应的图像生成程度指标与第i+1次去噪对应的图像生成程度指标之差等于T/N;
第i次去噪使用所述第二采样器时,第i次去噪对应的图像生成程度指标与第i+1次去噪对应的图像生成程度指标之差等于T/M。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在对所述扩散模型进行训练,以确定所述预设使用顺序的过程中,响应于输入的第二文本数据,获取第二噪声数据,所述第二噪声数据为随机噪声数据;
确定使用所述第一采样器和所述第二采样器去噪X次以生成图像时,所述第一采样器和所述第二采样器的每一种使用顺序,每次去噪使用所述第一采样器和所述第二采样器中的一个,以及由所述第二文本数据映射得到的控制条件;
按照每一种使用顺序,对所述第二噪声数据进行X次去噪,生成每一种使用顺序对应的第二图像;
单独使用所述第一采样器对所述第二噪声数据进行N次去噪,生成所述基准图像;
确定每一第二图像与所述基准图像的相似度指标,以及每一第二图像的质量指标;
将相似度指标大于第一阈值的第二图像中、质量指标最大的第二图像所对应的使用顺序,确定为预设使用顺序。
6.根据权利要求5所述的方法,其特征在于,在每一种使用顺序下,所述第一采样器的使用次数与N的比值作为第一比值,所述第二采样器的使用次数与M的比值作为第二比值,所述第一比值与所述第二比值之和等于1。
7.一种图像生成装置,其特征在于,所述装置应用于扩散模型,所述装置包括:
第一获取模块,用于响应于输入的第一文本数据,获取第一噪声数据,所述第一噪声数据为随机噪声数据;
第一去噪模块,用于按照预设使用顺序,使用所述扩散模型中的第一采样器和第二采样器对所述第一噪声数据进行X次去噪,生成第一图像,所述第一图像与所述第一文本数据相对应,其中,M<X<N,N为单独采用所述第一采样器进行去噪以生成图像所需的次数,M为单独采用所述第二采样器进行去噪以生成图像所需的次数,每次去噪使用所述第一采样器和所述第二采样器中的一个,以及由所述第一文本数据映射得到的控制条件;
其中,在所述扩散模型训练过程中,采用所述预设使用顺序生成的图像与基准图像的相似度大于第一阈值,且图像质量高于与所述基准图像的相似度大于第一阈值的、采用其他使用顺序生成的图像。
8.一种电子设备,其特征在于,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为在执行所述存储器存储的指令时,实现权利要求1至6中任意一项所述的方法。
9.一种非易失性计算机可读存储介质,其上存储有计算机程序指令,其特征在于,所述计算机程序指令被处理器执行时实现权利要求1至6中任意一项所述的方法。
10.一种计算机程序产品,包括计算机可读代码,或者承载有计算机可读代码的非易失性计算机可读存储介质,其特征在于,当所述计算机可读代码在电子设备的处理器中运行时,所述电子设备中的处理器执行权利要求1至6中任意一项所述的方法。
CN202410339004.6A 2024-03-22 2024-03-22 图像生成方法、装置、电子设备及存储介质 Active CN117934323B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202410339004.6A CN117934323B (zh) 2024-03-22 2024-03-22 图像生成方法、装置、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202410339004.6A CN117934323B (zh) 2024-03-22 2024-03-22 图像生成方法、装置、电子设备及存储介质

Publications (2)

Publication Number Publication Date
CN117934323A true CN117934323A (zh) 2024-04-26
CN117934323B CN117934323B (zh) 2024-06-07

Family

ID=90765074

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202410339004.6A Active CN117934323B (zh) 2024-03-22 2024-03-22 图像生成方法、装置、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN117934323B (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020248492A1 (zh) * 2019-06-14 2020-12-17 平安科技(深圳)有限公司 基于环形对抗生成网络的oct图像去噪方法及装置
CN115660931A (zh) * 2022-11-01 2023-01-31 南京信息工程大学 基于Transformer和去噪扩散模型的鲁棒水印方法
CN116342372A (zh) * 2021-11-12 2023-06-27 辉达公司 使用一个或更多个神经网络的图像生成
CN117474796A (zh) * 2023-12-27 2024-01-30 浪潮电子信息产业股份有限公司 一种图像生成方法、装置、设备及计算机可读存储介质
CN117521672A (zh) * 2023-12-22 2024-02-06 湖南大学 一种基于扩散模型的长文本生成连续图片的方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020248492A1 (zh) * 2019-06-14 2020-12-17 平安科技(深圳)有限公司 基于环形对抗生成网络的oct图像去噪方法及装置
CN116342372A (zh) * 2021-11-12 2023-06-27 辉达公司 使用一个或更多个神经网络的图像生成
CN115660931A (zh) * 2022-11-01 2023-01-31 南京信息工程大学 基于Transformer和去噪扩散模型的鲁棒水印方法
CN117521672A (zh) * 2023-12-22 2024-02-06 湖南大学 一种基于扩散模型的长文本生成连续图片的方法
CN117474796A (zh) * 2023-12-27 2024-01-30 浪潮电子信息产业股份有限公司 一种图像生成方法、装置、设备及计算机可读存储介质

Also Published As

Publication number Publication date
CN117934323B (zh) 2024-06-07

Similar Documents

Publication Publication Date Title
CN110807515B (zh) 模型生成方法和装置
CN110852421B (zh) 模型生成方法和装置
US10078594B2 (en) Cache management for map-reduce applications
CN111105375B (zh) 图像生成方法及其模型训练方法、装置及电子设备
CN106855952B (zh) 基于神经网络的计算方法及装置
KR101852116B1 (ko) 디노이징 장치 및 노이즈 제거 방법
CN113538235B (zh) 图像处理模型的训练方法、装置、电子设备及存储介质
CN112685224A (zh) 任务管理的方法、设备和计算机程序产品
KR20200057823A (ko) 영상 데이터 증식 장치 및 방법
CN111133458A (zh) 增强神经网络
US8375371B2 (en) Importance-based call graph construction
CN117934323B (zh) 图像生成方法、装置、电子设备及存储介质
US20180143830A1 (en) Programmable linear feedback shift register
US11429317B2 (en) Method, apparatus and computer program product for storing data
CN110574047A (zh) 使用比特块生成输出示例
US10425299B2 (en) Quantifying and designing optimal connecting networks
CN115759209A (zh) 神经网络模型的量化方法、装置、电子设备及介质
CN111382557B (zh) 非定长输入数据的批量处理方法、装置、终端及存储介质
CN113807397A (zh) 语义表示模型的训练方法、装置、设备和存储介质
CN113361719A (zh) 基于图像处理模型的增量学习方法和图像处理方法
CN113361574A (zh) 数据处理模型的训练方法、装置、电子设备及存储介质
CN113220501A (zh) 用于数据备份的方法、设备和计算机程序产品
CN113361677A (zh) 神经网络模型的量化方法和装置
US11431349B2 (en) Method, electronic device and computer program product for processing data
CN117435855B (zh) 用于进行卷积运算的方法、电子设备和存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant