CN116977461B - 特定场景的人像生成方法、装置、存储介质及设备 - Google Patents
特定场景的人像生成方法、装置、存储介质及设备 Download PDFInfo
- Publication number
- CN116977461B CN116977461B CN202310790539.0A CN202310790539A CN116977461B CN 116977461 B CN116977461 B CN 116977461B CN 202310790539 A CN202310790539 A CN 202310790539A CN 116977461 B CN116977461 B CN 116977461B
- Authority
- CN
- China
- Prior art keywords
- model
- portrait
- dreambooth
- picture
- random noise
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 76
- QVFWZNCVPCJQOP-UHFFFAOYSA-N chloralodol Chemical compound CC(O)(C)CC(C)OC(O)C(Cl)(Cl)Cl QVFWZNCVPCJQOP-UHFFFAOYSA-N 0.000 claims abstract description 115
- 238000012545 processing Methods 0.000 claims abstract description 91
- 230000008569 process Effects 0.000 claims abstract description 14
- 239000013598 vector Substances 0.000 claims description 102
- 238000012549 training Methods 0.000 claims description 49
- 230000006870 function Effects 0.000 claims description 28
- 238000009792 diffusion process Methods 0.000 claims description 15
- 230000036544 posture Effects 0.000 claims description 8
- 238000012804 iterative process Methods 0.000 claims description 3
- 238000013461 design Methods 0.000 abstract description 5
- 238000010586 diagram Methods 0.000 description 9
- 238000005070 sampling Methods 0.000 description 8
- 238000005286 illumination Methods 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 230000011218 segmentation Effects 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012805 post-processing Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- 230000037303 wrinkles Effects 0.000 description 1
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Processing Or Creating Images (AREA)
Abstract
本申请公开了一种特定场景的人像生成方法、装置、存储介质及设备,属于图像处理技术领域。方法包括:获取的输入参数包括提示词、触发词和随机噪声,提示词用于限定特定场景和人像样式,触发词用于选择并触发Lora模型控制人像生成;利用DreamBooth模型和Lora模型对提示词和随机噪声进行处理;根据得到的中间图片生成指导图片,指导图片表示中间图片中的人像姿态;利用DreamBooth模型和ControlNet模型对指导图片、提示词和随机噪声进行处理,得到特定场景特定姿态的多张人像图片。本申请能在小数据集上实现特定场景特定姿态的多张人像的高质量生成,简化了提示词的设计,并能够控制人像的姿态、服饰生成。
Description
技术领域
本申请涉及图像处理技术领域,特别涉及一种特定场景的人像生成方法、装置、存储介质及设备。
背景技术
随着技术更新和硬件提升,生成模型的技术突破逐渐从对抗生成模型转移到了扩散概率模型。
起初,BigGAN(大规模的生成对抗网络)将随机向量z和表示类别的条件向量c拼接后进入神经网络随机生成高质量、高分辨率的图片,c控制生成结果的类别,z控制生成不同的实例。但是,BigGAN对于复杂类别的图片生成质量不高,比如半身人像、全身人像,或者复杂背景下的人物,也不能控制生成背景的风格。
后来,StyleGAN(基于风格的生成对抗网络)使用映射网络将随机变量编码解耦成控制向量w,控制生成网络生成人像的样式,实现了基于随机噪声和控制向量生成高质量人脸的算法。其中,StyleGAN用控制向量来影响人脸的姿态、身份特征等,用噪声来影响头发丝、皱纹、肤色等细节部分。另外,在部分解耦的潜空间编辑w向量可以操控生成人脸的属性,比如头发、眼睛、嘴唇、皮肤、姿态等。尽管styleGAN如此强大,但是,其生成结果仅限于人脸部分,并且人脸的姿态也限制在较小的欧拉角范围。
现在,Stable-Diffusion(多模态的文本-图像扩散模型)使用合适的提示词能够在几秒内输出惊艳的结果,而无需进行复杂的后处理。另外,Stable-Diffusion可以模拟各种风格,比如输入相关的提示词就可以模拟梵高的风格。尽管Stable-Diffusion生成能力如此强大,但是往往需要比较复杂的文本提示词引导,以及复杂的反向提示词避免低质量、视觉伪影的出现。
发明内容
本申请提供了一种特定场景的人像生成方法、装置、存储介质及设备,用于解决BigGAN模型和StyleGAN模型无法生成特定风格的人像,Stable-Diffusion模型生成人像时的提示词较为复杂的问题。所述技术方案如下:
一方面,提供了一种特定场景的人像生成方法,所述方法包括:
获取输入参数,所述输入参数包括提示词、触发词和随机噪声,所述提示词用于限定特定场景和人像样式,所述触发词用于选择并触发Lora模型控制人像生成;
利用DreamBooth模型和与所述触发词对应的Lora模型对所述提示词和所述随机噪声进行处理,得到中间图片,所述DreamBooth模型是采用DreamBooth方法对Stable-Diffusion进行微调后得到的;
根据所述中间图片生成指导图片,所述指导图片用于表示所述中间图片中的人像姿态;
利用所述DreamBooth模型和ControlNet模型对所述指导图片、所述提示词和所述随机噪声进行处理,得到特定场景特定姿态的多张人像图片。
在一种可能的实现方式中,所述利用DreamBooth模型和与所述触发词对应的Lora模型对所述提示词和所述随机噪声进行处理,得到中间图片,包括:
从预先训练好的至少一个Lora模型中选择与所述触发词对应的Lora模型;
确定所述DreamBooth模型和所述Lora模型的迭代次数n,n为正整数;
将所述提示词转换为文本向量;
利用所述DreamBooth模型和所述Lora模型对所述文本向量和所述随机噪声进行n次迭代处理,得到中间图片。
在一种可能的实现方式中,所述利用所述DreamBooth模型和所述Lora模型对所述文本向量和所述随机噪声进行n次迭代处理,得到中间图片,包括:
在第一次迭代时,将所述文本向量和所述随机噪声分别输入所述DreamBooth模型和所述Lora模型中;
利用所述Lora模型对所述文本向量和所述随机噪声进行处理,将得到的第一中间结果发送给所述DreamBooth模型;
利用所述DreamBooth模型对所述文本向量、所述随机噪声和所述第一中间结果进行处理,将得到的第一输出结果作为第二次迭代时的随机噪声;
继续执行所述利用所述Lora模型对所述文本向量和所述随机噪声进行处理,将得到的第一中间结果发送给所述DreamBooth模型的步骤,直至迭代n次后,将所述DreamBooth模型最后一次得到的第一输出结果确定为中间图片。
在一种可能的实现方式中,,所述利用所述DreamBooth模型和ControlNet模型对所述指导图片、所述提示词和所述随机噪声进行处理,得到特定场景特定姿态的多张人像图片,包括:
确定所述DreamBooth模型和所述Lora模型的迭代次数m,m为正整数;
将所述提示词转换为文本向量;
利用所述DreamBooth模型和所述ControlNet模型对所述指导图片、所述文本向量和所述随机噪声进行m次迭代处理,得到特定场景特定姿态的多张人像图片。
在一种可能的实现方式中,,所述利用所述DreamBooth模型和所述ControlNet模型对所述指导图片、所述文本向量和所述随机噪声进行m次迭代处理,得到特定场景特定姿态的多张人像图片,包括:
在第一次迭代时,将所述指导图片、所述文本向量和所述随机噪声分别输入所述DreamBooth模型和所述ControlNet模型中;
利用所述ControlNet模型对所述指导图片、所述文本向量和所述随机噪声进行处理,将得到的第二中间结果发送给所述DreamBooth模型;
利用所述DreamBooth模型对所述指导图片、所述文本向量、所述随机噪声和所述第二中间结果进行处理,将得到的第二输出结果作为第二次迭代时的随机噪声;
继续执行所述利用所述ControlNet模型对所述指导图片、所述文本向量和所述随机噪声进行处理,将得到的第二中间结果发送给所述DreamBooth模型的步骤,直至迭代m次后,将所述DreamBooth模型最后一次得到的第二输出结果确定为特定场景特定姿态的多张人像图片。
在一种可能的实现方式中,,所述方法还包括:
创建DreamBooth模型;
获取第一训练样本集,每组第一训练样本包括提示词、随机噪声和参考人像图片;
利用所述DreamBooth模型对所述提示词的文本向量和所述随机噪声进行处理,得到预测人像图片;
根据所述参考人像图片和所述预测人像图片计算所述DreamBooth模型的损失函数;
根据所述DreamBooth模型的损失函数训练所述DreamBooth模型。
在一种可能的实现方式中,,所述方法还包括:
创建Lora模型;
获取第二训练样本集,每组第二训练样本包括提示词、触发词、随机噪声和参考人像图片;
利用所述DreamBooth模型和所述Lora模型对所述提示词和所述触发词的文本向量和所述随机噪声进行n次迭代处理,得到预测人像图片;
根据所述参考人像图片和所述预测人像图片计算所述Lora模型的损失函数;
根据所述Lora模型的损失函数训练所述Lora模型。
在一种可能的实现方式中,所述方法还包括:
创建ControlNet模型;
获取第三训练样本集,每组第三训练样本包括提示词、随机噪声、指导图和参考人像图片;
利用所述DreamBooth模型和所述ControlNet模型对所述提示词的文本向量、所述随机噪声和所述指导图进行m次迭代处理,得到预测人像图片;
根据所述参考人像图片和所述预测人像图片计算所述ControlNet模型的损失函数;
根据所述ControlNet模型的损失函数训练所述ControlNet模型。
一方面,提供了一种特定场景的人像生成装置,所述装置包括:
获取模块,用于获取输入参数,所述输入参数包括提示词、触发词和随机噪声,所述提示词用于限定特定场景和人像样式,所述触发词用于选择并触发Lora模型控制人像生成;
处理模块,用于利用DreamBooth模型和与所述触发词对应的Lora模型对所述提示词和所述随机噪声进行处理,得到中间图片,所述DreamBooth模型是采用DreamBooth方法对Stable-Diffusion进行微调后得到的;
生成模块,用于根据所述中间图片生成指导图片,所述指导图片用于表示所述中间图片中的人像姿态;
所述处理模块,还用于利用所述DreamBooth模型和ControlNet模型对所述指导图片、所述提示词和所述随机噪声进行处理,得到特定场景特定姿态的多张人像图片。
一方面,提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令,所述至少一条指令由处理器加载并执行以实现如上所述的特定场景的人像生成方法。
一方面,提供了一种计算机设备,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条指令,所述指令由所述处理器加载并执行以实现如上所述的特定场景的人像生成方法。
本申请提供的技术方案的有益效果至少包括:
以Stable Diffusion模型为基础,结合Lora、Dreambooth、ControlNet大模型微调方法,能够在小数据集上实现特定场景特定姿态的多张人像的高质量生成,简化了提示词的设计,并能够控制人像的姿态、服饰生成,具有高效、准确、稳定等优点。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据部分示例性实施例示出的一种DreamBooth模型的微调方法的示意图;
图2是根据部分示例性实施例示出的一种Lora模型的结构示意图;
图3是根据部分示例性实施例示出的一种ControlNet模型的结构示意图;
图4是本申请一个实施例提供的特定场景的人像生成方法的方法流程图;
图5是本申请另一实施例提供的特定场景的人像生成方法的方法流程图;
图6是本申请另一实施例提供的特定场景的人像生成方法的流程示意图;
图7是本申请再一实施例提供的特定场景的人像生成装置的结构框图;
图8是本申请再一实施例提供的特定场景的人像生成装置的结构框图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
本实施例中涉及三种模型,分别是DreamBooth模型、Lora模型和controlNet模型。其中,DreamBooth和Lora均为Stable-DiffusionV1.5版本模型的微调方法。Dreambooth是基于类别图片和实例图片,使用类别保留正则损失的微调方法,网络结构与原来的Stable-DiffusionV1.5版本模型一样,其微调方法如图1所示。Lora是向原模型的计算层增加旁路,以插入低秩矩阵,微调学习新风格的变化量,一个计算层的Lora模型结构如图2所示。
ControlNet模型的结构如图3所示,图3中的左侧示图示出的是DreamBooth模型(也可以理解为UNET潜码扩散模型),右侧示图示出的是为微调新增的ControlNet模型,其通过添加额外的条件来控制UNET潜码扩散模型。
本实施例中,可以先训练DreamBooth模型;然后,将训练好的DreamBooth模型与Lora模型组成一个组合进行训练,训练过程中保持DreamBooth模型的权重不变;将训练好的DreamBooth模型与ControlNet模型组成一个组合进行训练,训练过程中保持DreamBooth模型的权重不变,使用少量数据引导即可保证能充分学习到前置约束,同时保留原始的UNET潜码扩散模型自身的学习能力。
下面对DreamBooth模型、Lora模型和ControlNet模型具体的训练流程进行说明。
A、DreamBooth模型的训练流程如下:
(1)创建DreamBooth模型。
计算机设备采用DreamBooth方法对Stable-DiffusionV1.5版本进行微调后得到的DreamBooth模型。
(2)获取第一训练样本集,每组第一训练样本包括提示词、随机噪声和参考人像图片。
提示词用于限定特定场景和人像样式。其中,特定场景可以用于限定人像的服饰、风格等。比如,特定场景是职业场景时,人像的服饰是黑色正装、风格是职业照;或者,特定场景是运动场景时,人像的服饰是运动服,风格是休闲照等等。人像样式包括半身人像、全身人像等等。
随机噪声可以是随机生成的。其中,第一训练样本还可以包括采样器、采样步数和随机种子,利用采样器基于采样步数和随机种子生成随机噪声。
参考人像图片与提示词对应,比如,当提示词包括黑色、正装、半身照时,参考人像图片是一个人的黑色正装半身照。
(3)利用DreamBooth模型对提示词的文本向量和随机噪声进行处理,得到预测人像图片。
本实施例中,可以先利用CLIP模型的文本编码器对提示词进行处理,得到文本向量。然后,DreamBooth模型可以对文本向量和随机噪声进行处理,得到预测人像图片。
(4)根据参考人像图片和预测人像图片计算DreamBooth模型的损失函数。
(5)根据DreamBooth模型的损失函数训练DreamBooth模型。
计算机设备可以根据DreamBooth模型的损失函数对DreamBooth模型进行多轮训练,直至满足条件后停止训练,得到训练好的DreamBooth模型。
B、Lora模型的训练流程如下:
(1)创建Lora模型。
计算机设备向DreamBooth模型插入低秩矩阵,得到Lora模型。
(2)获取第二训练样本集,每组第二训练样本包括提示词、触发词、随机噪声和参考人像图片。
提示词、触发词、随机噪声和参考人像图片详见上文中的描述,此处不再赘述。
(3)利用DreamBooth模型和Lora模型对提示词和触发词的文本向量和随机噪声进行n次迭代处理,得到预测人像图片。
具体的,在第一次迭代时,将文本向量和随机噪声分别输入DreamBooth模型和Lora模型中;利用Lora模型对文本向量和随机噪声进行处理,将得到的第一中间结果发送给DreamBooth模型;利用DreamBooth模型对文本向量、随机噪声和第一中间结果进行处理,将得到的第一输出结果作为第二次迭代时的随机噪声;继续执行利用Lora模型对文本向量和随机噪声进行处理,将得到的第一中间结果发送给DreamBooth模型的步骤,直至迭代n次后,将DreamBooth模型最后一次得到的第一输出结果确定为预测人像图片。
也就是说,在除第一次之外的每次迭代时,将文本向量和上一次迭代产生的第一输出结果分别输入DreamBooth模型和Lora模型中;利用Lora模型对文本向量和上次的第一输出结果进行处理,将得到的第一中间结果发送给DreamBooth模型;利用DreamBooth模型对文本向量、上次的第一输出结果和第一中间结果进行处理,将本次的第一输出结果作为下次迭代时的随机噪声。在迭代n次后,将第n次产生的第一输出结果确定为预测人像图片。
(4)根据参考人像图片和预测人像图片计算Lora模型的损失函数。
(5)根据Lora模型的损失函数训练Lora模型。
计算机设备可以根据Lora模型的损失函数对Lora模型进行多轮训练,直至满足条件后停止训练,得到训练好的Lora模型。
C、ControlNet模型的训练流程如下:
(1)创建ControlNet模型。
计算机设备向DreamBooth模型加入微调的网络结构,得到ControlNet模型。
(2)获取第三训练样本集,每组第三训练样本包括提示词、随机噪声、指导图和参考人像图片。
提示词、随机噪声和参考人像图片详见上文中的描述,此处不再赘述。
(3)利用DreamBooth模型和ControlNet模型对提示词的文本向量、随机噪声和指导图进行m次迭代处理,得到预测人像图片。
具体的,在第一次迭代时,将指导图片、文本向量和随机噪声分别输入DreamBooth模型和ControlNet模型中;利用ControlNet模型对指导图片、文本向量和随机噪声进行处理,将得到的第二中间结果发送给DreamBooth模型;利用DreamBooth模型对指导图片、文本向量、随机噪声和第二中间结果进行处理,将得到的第二输出结果作为第二次迭代时的随机噪声;继续执行利用ControlNet模型对指导图片、文本向量和随机噪声进行处理,将得到的第二中间结果发送给DreamBooth模型的步骤,直至迭代m次后,将DreamBooth模型最后一次得到的第二输出结果确定为预测人像图片。
也就是说,在除第一次之外的每次迭代时,将指导图片、文本向量和上一次迭代产生的第二输出结果分别输入DreamBooth模型和ControlNet模型中;利用ControlNet模型对指导图片、文本向量和上次的第二输出结果进行处理,将得到的第二中间结果发送给DreamBooth模型;利用DreamBooth模型对指导图片、文本向量、上次的第二输出结果和第二中间结果进行处理,将本次的第二输出结果作为下次迭代时的随机噪声。在迭代m次后,将第m次产生的第二输出结果确定为预测人像图片。
(4)根据参考人像图片和预测人像图片计算ControlNet模型的损失函数。
(5)根据ControlNet模型的损失函数训练ControlNet模型。
计算机设备可以根据ControlNet模型的损失函数对ControlNet模型进行多轮训练,直至满足条件后停止训练,得到训练好的ControlNet模型。
请参考图4,其示出了本申请一个实施例提供的特定场景的人像生成方法的方法流程图,该特定场景的人像生成方法可以应用于计算机设备中。该特定场景的人像生成方法,可以包括:
步骤401,获取输入参数,输入参数包括提示词、触发词和随机噪声,提示词用于限定特定场景和人像样式,触发词用于选择并触发Lora模型控制人像生成。
提示词用于限定特定场景和人像样式。其中,特定场景可以用于限定人像的服饰、风格等。比如,特定场景是职业场景时,人像的服饰是黑色正装、风格是职业照;或者,特定场景是运动场景时,人像的服饰是运动服,风格是休闲照等等。人像样式包括半身人像、全身人像等等。
随机噪声可以是随机生成的。其中,第一训练样本还可以包括采样器、采样步数和随机种子,利用采样器基于采样步数和随机种子生成随机噪声。
不同的训练样本可以训练出不同的Lora模型,可以通过触发词来选择并触发需要的Lora模型控制人像生成。每个Lora模型的触发词可以小于或等于3个。比如,全身人像的触发器对应于一个Lora模型,半身人像的触发器对应于另一个Lora模型。
可选的,输入参数还可以包括图片分辨率等其他参数。
步骤402,利用DreamBooth模型和与触发词对应的Lora模型对提示词和随机噪声进行处理,得到中间图片,DreamBooth模型是采用DreamBooth方法对Stable-Diffusion进行微调后得到的。
计算机设备可以从选择与触发词对应的一个Lora模型,利用DreamBooth模型和Lora模型生成中间图片。
步骤403,根据中间图片生成指导图片,指导图片用于表示中间图片中的人像姿态。
本实施例中,计算机设备可以利用分割模型、Canny模型、OpenPose等工具对中间图片进行处理,得到指导图片。
步骤404,利用DreamBooth模型和ControlNet模型对指导图片、提示词和随机噪声进行处理,得到特定场景特定姿态的多张人像图片。
可选的,在得到特定场景特定姿态的多张人像图片后,计算机设备还可以利用VAE解码器基于输入的图片分辨率对人像图片进行解码,将解码后的图片作为最终的人像图片。
比如,当提示词包括黑色、正装、半身照时,最后生成的人像图片是一个人的黑色正装半身照。
综上所述,本申请实施例提供的特定场景的人像生成方法,以Stable Diffusion模型为基础,结合Lora、Dreambooth、ControlNet大模型微调方法,能够在小数据集上实现特定场景特定姿态的多张人像的高质量生成,简化了提示词的设计,并能够控制人像的姿态、服饰生成,具有高效、准确、稳定等优点。
请参考图5,其示出了本申请一个实施例提供的特定场景的人像生成方法的方法流程图,该特定场景的人像生成方法可以应用于计算机设备中。该特定场景的人像生成方法,可以包括:
步骤501,获取输入参数,输入参数包括提示词、触发词和随机噪声,提示词用于限定特定场景和人像样式,触发词用于选择并触发Lora模型控制人像生成。
提示词用于限定特定场景和人像样式。其中,特定场景可以用于限定人像的服饰、风格等。比如,特定场景是职业场景时,人像的服饰是黑色正装、风格是职业照;或者,特定场景是运动场景时,人像的服饰是运动服,风格是休闲照等等。人像样式包括半身人像、全身人像等等。
随机噪声可以是随机生成的。其中,第一训练样本还可以包括采样器、采样步数和随机种子,利用采样器基于采样步数和随机种子生成随机噪声。
不同的训练样本可以训练出不同的Lora模型,可以通过触发词来选择并触发需要的Lora模型控制人像生成。每个Lora模型的触发器可以小于或等于3个。比如,全身人像的触发器对应于一个Lora模型,半身人像的触发器对应于另一个Lora模型。
可选的,输入参数还可以包括图片分辨率等其他参数。
步骤502,从预先训练好的至少一个Lora模型中选择与触发词对应的Lora模型;确定DreamBooth模型和Lora模型的迭代次数n,n为正整数;将提示词转换为文本向量;利用DreamBooth模型和Lora模型对文本向量和随机噪声进行n次迭代处理,得到中间图片。
本实施例中,可以先利用CLIP模型的文本编码器对提示词进行处理,得到文本向量。然后,利用DreamBooth模型和Lora模型对文本向量和随机噪声进行n次迭代处理,得到中间图片。
具体的,利用DreamBooth模型和Lora模型对文本向量和随机噪声进行n次迭代处理,得到中间图片,包括:在第一次迭代时,将文本向量和随机噪声分别输入DreamBooth模型和Lora模型中;利用Lora模型对文本向量和随机噪声进行处理,将得到的第一中间结果发送给DreamBooth模型;利用DreamBooth模型对文本向量、随机噪声和第一中间结果进行处理,将得到的第一输出结果作为第二次迭代时的随机噪声;继续执行利用Lora模型对文本向量和随机噪声进行处理,将得到的第一中间结果发送给DreamBooth模型的步骤,直至迭代n次后,将DreamBooth模型最后一次得到的第一输出结果确定为中间图片。
也就是说,在除第一次之外的每次迭代时,将文本向量和上一次迭代产生的第一输出结果分别输入DreamBooth模型和Lora模型中;利用Lora模型对文本向量和上次的第一输出结果进行处理,将得到的第一中间结果发送给DreamBooth模型;利用DreamBooth模型对文本向量、上次的第一输出结果和第一中间结果进行处理,将本次的第一输出结果作为下次迭代时的随机噪声。在迭代n次后,将第n次产生的第一输出结果确定为中间图片。
步骤503,根据中间图片生成指导图片,指导图片用于表示中间图片中的人像姿态。
本实施例中,计算机设备可以利用分割模型、Canny模型、OpenPose等工具对中间图片进行处理,得到指导图片。
步骤504,确定DreamBooth模型和Lora模型的迭代次数m,m为正整数;将提示词转换为文本向量;利用DreamBooth模型和ControlNet模型对指导图片、文本向量和随机噪声进行m次迭代处理,得到特定场景特定姿态的多张人像图片。
具体的,利用DreamBooth模型和ControlNet模型对指导图片、文本向量和随机噪声进行m次迭代处理,得到特定场景特定姿态的多张人像图片,包括:在第一次迭代时,将指导图片、文本向量和随机噪声分别输入DreamBooth模型和ControlNet模型中;利用ControlNet模型对指导图片、文本向量和随机噪声进行处理,将得到的第二中间结果发送给DreamBooth模型;利用DreamBooth模型对指导图片、文本向量、随机噪声和第二中间结果进行处理,将得到的第二输出结果作为第二次迭代时的随机噪声;继续执行利用ControlNet模型对指导图片、文本向量和随机噪声进行处理,将得到的第二中间结果发送给DreamBooth模型的步骤,直至迭代m次后,将DreamBooth模型最后一次得到的第二输出结果确定为特定场景特定姿态的多张人像图片。
也就是说,在除第一次之外的每次迭代时,将指导图片、文本向量和上一次迭代产生的第二输出结果分别输入DreamBooth模型和ControlNet模型中;利用ControlNet模型对指导图片、文本向量和上次的第二输出结果进行处理,将得到的第二中间结果发送给DreamBooth模型;利用DreamBooth模型对指导图片、文本向量、上次的第二输出结果和第二中间结果进行处理,将本次的第二输出结果作为下次迭代时的随机噪声。在迭代m次后,将第m次产生的第二输出结果确定为特定场景特定姿态的多张人像图片。
可选的,在得到特定场景特定姿态的多张人像图片后,计算机设备还可以利用VAE解码器基于输入的图片分辨率对人像图片进行解码,将解码后的图片作为最终的人像图片。
比如,当提示词包括黑色、正装、半身照时,最后生成的人像图片是一个人的黑色正装半身照。
请参考图6所示的特定场景的人像生成方法的流程,其中,(a)部分的promp1是输入参数,包括提示词、触发词、采样器、采样步数、随机种子、图片分辨率等;(b)部分包括DreamBooth模型和Lora模型,对(a)部分的promp1进行处理,由DreamBooth模型输出image作为中间图片;(c)根据image生成的guidance是指导图片,promp2包括提示词、采样器、采样步数、随机种子、图片分辨率等;(d)部分包括DreamBooth模型和ControlNet模型,对(c)部分的guidance和promp2进行处理,由DreamBooth模型输出image作为特定场景特定姿态的多张人像图片;(e)部分的image是特定场景特定姿态的多张人像图片。
综上所述,本申请实施例提供的特定场景的人像生成方法,以Stable Diffusion模型为基础,结合Lora、Dreambooth、ControlNet大模型微调方法,能够在小数据集上实现特定场景特定姿态的多张人像的高质量生成,简化了提示词的设计,并能够控制人像的姿态、服饰生成,具有高效、准确、稳定等优点。
请参考图7,其示出了本申请一个实施例提供的特定场景的人像生成装置的结构框图,该特定场景的人像生成装置可以应用于计算机设备中。该特定场景的人像生成装置,可以包括:
获取模块710,用于获取输入参数,输入参数包括提示词、触发词和随机噪声,提示词用于限定特定场景和人像样式,触发词用于选择并触发Lora模型控制人像生成;
处理模块720,用于利用DreamBooth模型和与触发词对应的Lora模型对提示词和随机噪声进行处理,得到中间图片,DreamBooth模型是采用DreamBooth方法对Stable-Diffusion进行微调后得到的;
生成模块730,用于根据中间图片生成指导图片,指导图片用于表示中间图片中的人像姿态;
处理模块720,还用于利用DreamBooth模型和ControlNet模型对指导图片、提示词和随机噪声进行处理,得到特定场景特定姿态的多张人像图片。
在一个可选的实施例中,处理模块720,还用于:
从预先训练好的至少一个Lora模型中选择与触发词对应的Lora模型;
确定DreamBooth模型和Lora模型的迭代次数n,n为正整数;
将提示词转换为文本向量;
利用DreamBooth模型和Lora模型对文本向量和随机噪声进行n次迭代处理,得到中间图片。
在一个可选的实施例中,处理模块720,还用于:
在第一次迭代时,将文本向量和随机噪声分别输入DreamBooth模型和Lora模型中;
利用Lora模型对文本向量和随机噪声进行处理,将得到的第一中间结果发送给DreamBooth模型;
利用DreamBooth模型对文本向量、随机噪声和第一中间结果进行处理,将得到的第一输出结果作为第二次迭代时的随机噪声;
继续执行利用Lora模型对文本向量和随机噪声进行处理,将得到的第一中间结果发送给DreamBooth模型的步骤,直至迭代n次后,将DreamBooth模型最后一次得到的第一输出结果确定为中间图片。
在一个可选的实施例中,处理模块720,还用于:
确定DreamBooth模型和Lora模型的迭代次数m,m为正整数;
将提示词转换为文本向量;
利用DreamBooth模型和ControlNet模型对指导图片、文本向量和随机噪声进行m次迭代处理,得到特定场景特定姿态的多张人像图片。
在一个可选的实施例中,处理模块720,还用于:
在第一次迭代时,将指导图片、文本向量和随机噪声分别输入DreamBooth模型和ControlNet模型中;
利用ControlNet模型对指导图片、文本向量和随机噪声进行处理,将得到的第二中间结果发送给DreamBooth模型;
利用DreamBooth模型对指导图片、文本向量、随机噪声和第二中间结果进行处理,将得到的第二输出结果作为第二次迭代时的随机噪声;
继续执行利用ControlNet模型对指导图片、文本向量和随机噪声进行处理,将得到的第二中间结果发送给DreamBooth模型的步骤,直至迭代m次后,将DreamBooth模型最后一次得到的第二输出结果确定为特定场景特定姿态的多张人像图片。
请参考图8,在一个可选的实施例中,该装置还包括训练模块740,用于:
创建DreamBooth模型;
获取第一训练样本集,每组第一训练样本包括提示词、随机噪声和参考人像图片;
利用DreamBooth模型对提示词的文本向量和随机噪声进行处理,得到预测人像图片;
根据参考人像图片和预测人像图片计算DreamBooth模型的损失函数;
根据DreamBooth模型的损失函数训练DreamBooth模型。
在一个可选的实施例中,训练模块740,还用于:
创建Lora模型;
获取第二训练样本集,每组第二训练样本包括提示词、触发词、随机噪声和参考人像图片;
利用DreamBooth模型和Lora模型对提示词和触发词的文本向量和随机噪声进行n次迭代处理,得到预测人像图片;
根据参考人像图片和预测人像图片计算Lora模型的损失函数;
根据Lora模型的损失函数训练Lora模型。
在一个可选的实施例中,训练模块740,还用于:
创建ControlNet模型;
获取第三训练样本集,每组第三训练样本包括提示词、随机噪声、指导图和参考人像图片;
利用DreamBooth模型和ControlNet模型对提示词的文本向量、随机噪声和指导图进行m次迭代处理,得到预测人像图片;
根据参考人像图片和预测人像图片计算ControlNet模型的损失函数;
根据ControlNet模型的损失函数训练ControlNet模型。
综上所述,本申请实施例提供的特定场景的人像生成装置,以Stable Diffusion模型为基础,结合Lora、Dreambooth、ControlNet大模型微调方法,能够在小数据集上实现特定场景特定姿态的多张人像的高质量生成,简化了提示词的设计,并能够控制人像的姿态、服饰生成,具有高效、准确、稳定等优点。
本申请一个实施例提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令,所述至少一条指令由处理器加载并执行以实现如上所述的特定场景的人像生成方法。
本申请一个实施例提供了一种计算机设备,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条指令,所述指令由所述处理器加载并执行以实现如上所述的特定场景的人像生成方法。
需要说明的是:上述实施例提供的特定场景的人像生成装置在进行特定场景的人像生成时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将特定场景的人像生成装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的特定场景的人像生成装置与特定场景的人像生成方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述并不用以限制本申请实施例,凡在本申请实施例的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请实施例的保护范围之内。
Claims (9)
1.一种特定场景的人像生成方法,其特征在于,所述方法包括:
获取输入参数,所述输入参数包括提示词、触发词和随机噪声,所述提示词用于限定特定场景和人像样式,所述触发词用于选择并触发Lora模型控制人像生成;
利用DreamBooth模型和与所述触发词对应的Lora模型对所述提示词和所述随机噪声进行处理,得到中间图片,所述DreamBooth模型是采用DreamBooth方法对Stable-Diffusion进行微调后得到的;
根据所述中间图片生成指导图片,所述指导图片用于表示所述中间图片中的人像姿态;
利用所述DreamBooth模型和ControlNet模型对所述指导图片、所述提示词和所述随机噪声进行处理,得到特定场景特定姿态的多张人像图片;
所述利用DreamBooth模型和与所述触发词对应的Lora模型对所述提示词和所述随机噪声进行处理,得到中间图片,包括:从预先训练好的至少一个Lora模型中选择与所述触发词对应的Lora模型;确定所述DreamBooth模型和所述Lora模型的迭代次数n,n为正整数;将所述提示词转换为文本向量;利用所述DreamBooth模型和所述Lora模型对所述文本向量和所述随机噪声进行n次迭代处理,得到中间图片;
所述利用所述DreamBooth模型和所述Lora模型对所述文本向量和所述随机噪声进行n次迭代处理,得到中间图片,包括:在第一次迭代时,将所述文本向量和所述随机噪声分别输入所述DreamBooth模型和所述Lora模型中;利用所述Lora模型对所述文本向量和所述随机噪声进行处理,将得到的第一中间结果发送给所述DreamBooth模型;利用所述DreamBooth模型对所述文本向量、所述随机噪声和所述第一中间结果进行处理,将得到的第一输出结果作为第二次迭代时的随机噪声;继续执行所述利用所述Lora模型对所述文本向量和所述随机噪声进行处理,将得到的第一中间结果发送给所述DreamBooth模型的步骤,直至迭代n次后,将所述DreamBooth模型最后一次得到的第一输出结果确定为中间图片。
2.根据权利要求1所述的特定场景的人像生成方法,其特征在于,所述利用所述DreamBooth模型和ControlNet模型对所述指导图片、所述提示词和所述随机噪声进行处理,得到特定场景特定姿态的多张人像图片,包括:
确定所述DreamBooth模型和所述Lora模型的迭代次数m,m为正整数;
将所述提示词转换为文本向量;
利用所述DreamBooth模型和所述ControlNet模型对所述指导图片、所述文本向量和所述随机噪声进行m次迭代处理,得到特定场景特定姿态的多张人像图片。
3.根据权利要求2所述的特定场景的人像生成方法,其特征在于,所述利用所述DreamBooth模型和所述ControlNet模型对所述指导图片、所述文本向量和所述随机噪声进行m次迭代处理,得到特定场景特定姿态的多张人像图片,包括:
在第一次迭代时,将所述指导图片、所述文本向量和所述随机噪声分别输入所述DreamBooth模型和所述ControlNet模型中;
利用所述ControlNet模型对所述指导图片、所述文本向量和所述随机噪声进行处理,将得到的第二中间结果发送给所述DreamBooth模型;
利用所述DreamBooth模型对所述指导图片、所述文本向量、所述随机噪声和所述第二中间结果进行处理,将得到的第二输出结果作为第二次迭代时的随机噪声;
继续执行所述利用所述ControlNet模型对所述指导图片、所述文本向量和所述随机噪声进行处理,将得到的第二中间结果发送给所述DreamBooth模型的步骤,直至迭代m次后,将所述DreamBooth模型最后一次得到的第二输出结果确定为特定场景特定姿态的多张人像图片。
4.根据权利要求1至3任一所述的特定场景的人像生成方法,其特征在于,所述方法还包括:
创建DreamBooth模型;
获取第一训练样本集,每组第一训练样本包括提示词、随机噪声和参考人像图片;
利用所述DreamBooth模型对所述提示词的文本向量和所述随机噪声进行处理,得到预测人像图片;
根据所述参考人像图片和所述预测人像图片计算所述DreamBooth模型的损失函数;
根据所述DreamBooth模型的损失函数训练所述DreamBooth模型。
5.根据权利要求4所述的特定场景的人像生成方法,其特征在于,所述方法还包括:
创建Lora模型;
获取第二训练样本集,每组第二训练样本包括提示词、触发词、随机噪声和参考人像图片;
利用所述DreamBooth模型和所述Lora模型对所述提示词和所述触发词的文本向量和所述随机噪声进行n次迭代处理,得到预测人像图片;
根据所述参考人像图片和所述预测人像图片计算所述Lora模型的损失函数;
根据所述Lora模型的损失函数训练所述Lora模型。
6.根据权利要求4所述的特定场景的人像生成方法,其特征在于,所述方法还包括:
创建ControlNet模型;
获取第三训练样本集,每组第三训练样本包括提示词、随机噪声、指导图和参考人像图片;
利用所述DreamBooth模型和所述ControlNet模型对所述提示词的文本向量、所述随机噪声和所述指导图进行m次迭代处理,得到预测人像图片;
根据所述参考人像图片和所述预测人像图片计算所述ControlNet模型的损失函数;
根据所述ControlNet模型的损失函数训练所述ControlNet模型。
7.一种特定场景的人像生成装置,其特征在于,所述装置包括:
获取模块,用于获取输入参数,所述输入参数包括提示词、触发词和随机噪声,所述提示词用于限定特定场景和人像样式,所述触发词用于选择并触发Lora模型控制人像生成;
处理模块,用于利用DreamBooth模型和与所述触发词对应的Lora模型对所述提示词和所述随机噪声进行处理,得到中间图片,所述DreamBooth模型是采用DreamBooth方法对Stable-Diffusion进行微调后得到的;
生成模块,用于根据所述中间图片生成指导图片,所述指导图片用于表示所述中间图片中的人像姿态;
所述处理模块,还用于利用所述DreamBooth模型和ControlNet模型对所述指导图片、所述提示词和所述随机噪声进行处理,得到特定场景特定姿态的多张人像图片;
所述处理模块,还用于:从预先训练好的至少一个Lora模型中选择与所述触发词对应的Lora模型;确定所述DreamBooth模型和所述Lora模型的迭代次数n,n为正整数;将所述提示词转换为文本向量;利用所述DreamBooth模型和所述Lora模型对所述文本向量和所述随机噪声进行n次迭代处理,得到中间图片;
所述处理模块,还用于:在第一次迭代时,将所述文本向量和所述随机噪声分别输入所述DreamBooth模型和所述Lora模型中;利用所述Lora模型对所述文本向量和所述随机噪声进行处理,将得到的第一中间结果发送给所述DreamBooth模型;利用所述DreamBooth模型对所述文本向量、所述随机噪声和所述第一中间结果进行处理,将得到的第一输出结果作为第二次迭代时的随机噪声;继续执行所述利用所述Lora模型对所述文本向量和所述随机噪声进行处理,将得到的第一中间结果发送给所述DreamBooth模型的步骤,直至迭代n次后,将所述DreamBooth模型最后一次得到的第一输出结果确定为中间图片。
8.一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一条指令,所述至少一条指令由处理器加载并执行以实现如权利要求1至6任一所述的特定场景的人像生成方法。
9.一种计算机设备,其特征在于,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条指令,所述指令由所述处理器加载并执行以实现如权利要求1至6任一所述的特定场景的人像生成方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310790539.0A CN116977461B (zh) | 2023-06-30 | 2023-06-30 | 特定场景的人像生成方法、装置、存储介质及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310790539.0A CN116977461B (zh) | 2023-06-30 | 2023-06-30 | 特定场景的人像生成方法、装置、存储介质及设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116977461A CN116977461A (zh) | 2023-10-31 |
CN116977461B true CN116977461B (zh) | 2024-03-08 |
Family
ID=88477577
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310790539.0A Active CN116977461B (zh) | 2023-06-30 | 2023-06-30 | 特定场景的人像生成方法、装置、存储介质及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116977461B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118429485A (zh) * | 2024-05-30 | 2024-08-02 | 华东师范大学 | 一种基于扩散模型的个性化文本到图像生成方法及系统 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019128367A1 (zh) * | 2017-12-26 | 2019-07-04 | 广州广电运通金融电子股份有限公司 | 基于Triplet Loss的人脸认证方法、装置、计算机设备和存储介质 |
WO2021042763A1 (en) * | 2019-09-03 | 2021-03-11 | Guangdong Oppo Mobile Telecommunications Corp., Ltd. | Image searches based on word vectors and image vectors |
CA3214735A1 (en) * | 2021-06-08 | 2022-12-15 | Maria Rafailia TSIMPOUKELLI | Multimodal few-shot learning with frozen language models |
CN116012488A (zh) * | 2023-01-05 | 2023-04-25 | 网易(杭州)网络有限公司 | 风格化图像生成方法、装置、计算机设备和存储介质 |
CN116012492A (zh) * | 2022-12-13 | 2023-04-25 | 特赞(上海)信息科技有限公司 | 用于文字生成图像的提示词智能优化方法及系统 |
CN116309992A (zh) * | 2023-02-24 | 2023-06-23 | 北京全界科技有限公司 | 一种智能元宇宙直播人物生成方法、设备和存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11797823B2 (en) * | 2020-02-18 | 2023-10-24 | Adobe Inc. | Model training with retrospective loss |
-
2023
- 2023-06-30 CN CN202310790539.0A patent/CN116977461B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019128367A1 (zh) * | 2017-12-26 | 2019-07-04 | 广州广电运通金融电子股份有限公司 | 基于Triplet Loss的人脸认证方法、装置、计算机设备和存储介质 |
WO2021042763A1 (en) * | 2019-09-03 | 2021-03-11 | Guangdong Oppo Mobile Telecommunications Corp., Ltd. | Image searches based on word vectors and image vectors |
CA3214735A1 (en) * | 2021-06-08 | 2022-12-15 | Maria Rafailia TSIMPOUKELLI | Multimodal few-shot learning with frozen language models |
CN116012492A (zh) * | 2022-12-13 | 2023-04-25 | 特赞(上海)信息科技有限公司 | 用于文字生成图像的提示词智能优化方法及系统 |
CN116012488A (zh) * | 2023-01-05 | 2023-04-25 | 网易(杭州)网络有限公司 | 风格化图像生成方法、装置、计算机设备和存储介质 |
CN116309992A (zh) * | 2023-02-24 | 2023-06-23 | 北京全界科技有限公司 | 一种智能元宇宙直播人物生成方法、设备和存储介质 |
Non-Patent Citations (2)
Title |
---|
图像和视频中基于部件检测器的人体姿态估计;苏延超;艾海舟;劳世;;电子与信息学报;20110615(第06期);全文 * |
基于深度学习的图像描述研究;杨楠;南琳;张丁一;库涛;;红外与激光工程;20180225(第02期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN116977461A (zh) | 2023-10-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Huh et al. | Transforming and projecting images into class-conditional generative networks | |
Jo et al. | Sc-fegan: Face editing generative adversarial network with user's sketch and color | |
Hu et al. | Exposure: A white-box photo post-processing framework | |
US11367239B2 (en) | Textured neural avatars | |
US20210397945A1 (en) | Deep hierarchical variational autoencoder | |
Ma et al. | PID controller-guided attention neural network learning for fast and effective real photographs denoising | |
US11068746B2 (en) | Image realism predictor | |
CN116977461B (zh) | 特定场景的人像生成方法、装置、存储介质及设备 | |
Weiss et al. | Learning adaptive sampling and reconstruction for volume visualization | |
Jiang et al. | Language-guided global image editing via cross-modal cyclic mechanism | |
Ji et al. | Geometry-aware single-image full-body human relighting | |
CN111127309A (zh) | 肖像风格迁移模型训练方法、肖像风格迁移方法以及装置 | |
Peng et al. | Portraitbooth: A versatile portrait model for fast identity-preserved personalization | |
US12079913B2 (en) | Animation generation and interpolation with RNN-based variational autoencoders | |
US20220398697A1 (en) | Score-based generative modeling in latent space | |
CN117252791A (zh) | 图像处理方法、装置、电子设备及存储介质 | |
Dufour et al. | Scam! transferring humans between images with semantic cross attention modulation | |
US20220101122A1 (en) | Energy-based variational autoencoders | |
Ahn et al. | Self-Rectifying Diffusion Sampling with Perturbed-Attention Guidance | |
Zhang et al. | PR-RL: Portrait relighting via deep reinforcement learning | |
Yang et al. | ZeroSmooth: Training-free Diffuser Adaptation for High Frame Rate Video Generation | |
US20220101145A1 (en) | Training energy-based variational autoencoders | |
CN113239867B (zh) | 一种基于掩码区域自适应增强的光照变化人脸识别方法 | |
CN116862757B (zh) | 一种控制人脸风格化程度的方法、装置、电子设备及介质 | |
De Souza et al. | Fundamentals and challenges of generative adversarial networks for image-based applications |
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 |