CN117437317A - 图像生成方法、装置、电子设备、存储介质和程序产品 - Google Patents
图像生成方法、装置、电子设备、存储介质和程序产品 Download PDFInfo
- Publication number
- CN117437317A CN117437317A CN202311399398.6A CN202311399398A CN117437317A CN 117437317 A CN117437317 A CN 117437317A CN 202311399398 A CN202311399398 A CN 202311399398A CN 117437317 A CN117437317 A CN 117437317A
- Authority
- CN
- China
- Prior art keywords
- image
- noise
- sample
- features
- text
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 133
- 230000000007 visual effect Effects 0.000 claims abstract description 182
- 238000012549 training Methods 0.000 claims abstract description 103
- 239000013598 vector Substances 0.000 claims description 84
- 238000005070 sampling Methods 0.000 claims description 50
- 230000009466 transformation Effects 0.000 claims description 44
- 238000012545 processing Methods 0.000 claims description 30
- 238000000605 extraction Methods 0.000 claims description 24
- 238000004364 calculation method Methods 0.000 claims description 20
- 238000000354 decomposition reaction Methods 0.000 claims description 19
- 238000004590 computer program Methods 0.000 claims description 4
- 238000013473 artificial intelligence Methods 0.000 abstract description 21
- 238000010801 machine learning Methods 0.000 abstract description 6
- 230000008569 process Effects 0.000 description 50
- 230000006870 function Effects 0.000 description 32
- 239000011159 matrix material Substances 0.000 description 32
- 238000005516 engineering process Methods 0.000 description 27
- 241000282414 Homo sapiens Species 0.000 description 24
- 108010001267 Protein Subunits Proteins 0.000 description 12
- 230000000694 effects Effects 0.000 description 11
- 230000002829 reductive effect Effects 0.000 description 8
- 238000013528 artificial neural network Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 7
- 238000004422 calculation algorithm Methods 0.000 description 6
- 238000004891 communication Methods 0.000 description 6
- 238000013527 convolutional neural network Methods 0.000 description 6
- 238000003058 natural language processing Methods 0.000 description 6
- 238000011161 development Methods 0.000 description 5
- 238000009792 diffusion process Methods 0.000 description 5
- 238000013507 mapping Methods 0.000 description 5
- 210000002569 neuron Anatomy 0.000 description 5
- 244000025254 Cannabis sativa Species 0.000 description 4
- 241001465754 Metazoa Species 0.000 description 4
- 230000007246 mechanism Effects 0.000 description 4
- 238000011160 research Methods 0.000 description 4
- 230000004913 activation Effects 0.000 description 3
- 238000013459 approach Methods 0.000 description 3
- 238000013135 deep learning Methods 0.000 description 3
- 210000003128 head Anatomy 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 238000007726 management method Methods 0.000 description 3
- 239000003550 marker Substances 0.000 description 3
- 238000005457 optimization Methods 0.000 description 3
- 230000001131 transforming effect Effects 0.000 description 3
- 241000167686 Reichardia Species 0.000 description 2
- 230000006399 behavior Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 238000011478 gradient descent method Methods 0.000 description 2
- 238000003384 imaging method Methods 0.000 description 2
- 230000000670 limiting effect Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000036961 partial effect Effects 0.000 description 2
- 210000000697 sensory organ Anatomy 0.000 description 2
- 241000271566 Aves Species 0.000 description 1
- 241000938605 Crocodylia Species 0.000 description 1
- 241000282412 Homo Species 0.000 description 1
- 241000124008 Mammalia Species 0.000 description 1
- 241000070023 Phoenicopterus roseus Species 0.000 description 1
- 238000009825 accumulation Methods 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 239000000654 additive Substances 0.000 description 1
- 230000000996 additive effect Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000003542 behavioural effect Effects 0.000 description 1
- 230000033228 biological regulation Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 239000003153 chemical reaction reagent Substances 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 230000006698 induction Effects 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 230000009191 jumping Effects 0.000 description 1
- 230000033001 locomotion Effects 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 238000003062 neural network model Methods 0.000 description 1
- 235000012434 pretzels Nutrition 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 230000002787 reinforcement Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000000452 restraining effect Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000029305 taxis Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000013526 transfer learning Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 238000009966 trimming Methods 0.000 description 1
- 230000003313 weakening effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/289—Phrasal analysis, e.g. finite state techniques or chunking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/60—Editing figures and text; Combining figures or text
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/774—Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Computational Linguistics (AREA)
- Databases & Information Systems (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- Multimedia (AREA)
- Image Analysis (AREA)
Abstract
本申请公开了一种图像生成方法、装置、电子设备、存储介质和程序产品,可以应用于计算机视觉、机器学习等人工智能领域,也可以应用于预训练模型等大模型领域;本申请获取待处理描述文本以及参考图像;从所述待处理描述文本以及所述参考图像中,分别提取文本特征以及视觉特征;根据所述文本特征以及所述视觉特征,得到语义引导特征;向所述参考图像中加入参考噪声,得到加噪图像;通过所述语义引导特征,对所述加噪图像进行噪声预测,得到预测噪声;基于所述预测噪声,对所述加噪图像进行修复,以生成目标图像。由此,本申请将视觉特征引入语义引导特征中,以结合文本特征尽可能还原出具象的图像,提高生成图像的质量。
Description
技术领域
本申请涉及计算机技术领域,具体涉及一种图像生成方法、装置、电子设备、存储介质和程序产品。
背景技术
近年来,随着人工智能技术的发展,根据文本提示生成图像的技术已经越发成熟。图像生成模型,尤其是扩散模型(Diffusion Model),可以基于用户输入的文本进行图像绘制,生成与文本相关的预测图像。
然而,由于文本具象性差,很难清晰的描述一个事物,比如人物形象,文本难以具象描述人物五官,导致图像生成模型无法准确地捕捉到细节,导致训练后图像生成模型生成的图像质量较差。
发明内容
本申请实施例提供一种图像生成方法、装置、电子设备、存储介质和程序产品,可以提高生成图像的质量。
本申请实施例提供一种图像生成方法,包括:获取待处理描述文本以及参考图像;从所述待处理描述文本以及所述参考图像中,分别提取文本特征以及视觉特征;根据所述文本特征以及所述视觉特征,得到语义引导特征;向所述参考图像中加入参考噪声,得到加噪图像;通过所述语义引导特征,对所述加噪图像进行噪声预测,得到预测噪声;基于所述预测噪声,对所述加噪图像进行修复,以生成目标图像。
本申请实施例还提供一种图像生成装置,包括:获取单元,用于获取待处理描述文本以及参考图像;提取单元,用于从所述待处理描述文本以及所述参考图像中,分别提取文本特征以及视觉特征;组合单元,用于根据所述文本特征以及所述视觉特征,得到语义引导特征;加噪单元,用于向所述参考图像中加入参考噪声,得到加噪图像;预测单元,用于通过所述语义引导特征,对所述加噪图像进行噪声预测,得到预测噪声;生成单元,用于基于所述预测噪声,对所述加噪图像进行修复,以生成目标图像。
在一些实施方式中,提取单元包括第一视觉提取子单元、第二视觉提取子单元以及第三视觉提取子单元,包括:第一视觉提取子单元,用于从所述参考图像中提取初始视觉特征;第二视觉提取子单元,用于获取特征调整参数;第三视觉提取子单元,用于根据所述特征调整参数以及所述初始视觉特征,得到所述视觉特征。
在一些实施方式中,该图像生成模型还包括添加单元,包括:添加单元,用于在所述待处理描述文本中父类关键词的相邻位置添加占位符;
在一些实施方式中,组合单元包括替换子单元,包括:替换子单元,用于将所述文本特征中,所述占位符对应的特征替换为所述视觉特征,得到所述语义引导特征。
在一些实施方式中,预测单元包括采样子单元、交叉注意力子单元以及注意力预测子单元,包括:采样子单元,用于对所述加噪图像进行多尺度特征采样,得到多尺度的采样特征;交叉注意力子单元,用于针对任一尺度的所述采样特征,对所述语义引导特征以及所述采样特征进行交叉注意力处理,得到注意力特征;注意力预测子单元,用于由所述注意力特征得到所述预测噪声。
在一些实施方式中,交叉注意力子单元包括第一变换子单元以及加权子单元,包括:第一变换子单元,用于针对任一尺度的所述采样特征,对所述语义引导特征进行线性变换,得到键向量以及值向量,以及对所述采样特征进行线性变换,得到查询向量;加权子单元,用于通过所述查询向量以及所述键向量,对所述值向量进行注意力加权,得到注意力特征。
在一些实施方式中,预测子单元包括第二变换子单元以及变换预测子单元,包括:第二变换子单元,用于对所述注意力特征进行线性变换,得到变换后的特征;变换预测子单元,用于由所述变换后的特征得到所述预测噪声。
在一些实施方式中,该图像生成装置还包括训练单元,训练单元包括训练获取子单元、训练提取子单元、训练组合子单元、训练加噪子单元、训练预测子单元以及训练调整子单元,包括:训练获取子单元,用于获取训练样本集以及待训练的图像生成模型,所述训练样本集包括至少一个样本图像以及所述样本图像对应的样本描述文本;训练提取子单元,用于从所述样本描述文本以及所述样本图像中,分别提取样本文本特征以及样本视觉特征;训练组合子单元,用于根据所述样本文本特征以及所述样本视觉特征,得到样本语义引导特征;训练加噪子单元,用于向所述样本图像中加入样本噪声,得到加噪样本图像;训练预测子单元,用于通过所述样本语义引导特征,对所述加噪样本图像进行噪声预测,得到预测样本噪声;训练调整子单元,用于根据所述预测样本噪声与所述样本噪声之间的损失值,调整所述待训练的图像生成模型的待调整模型参数,得到训练后的图像生成模型,所述训练后的图像生成模型用于生成目标图像。
在一些实施方式中,该图像生成装置还包括文本生成单元,所述文本生成单元包括第一文本生成子单元、第二文本生成子单元、第三文本生成子单元、第四文本生成子单元、第五文本生成子单元以及第六文本生成子单元,包括:第一文本生成子单元,用于从所述样本图像中提取待处理图像特征;第二文本生成子单元,用于将包含起始标记的描述文本序列作为待处理文本序列;第三文本生成子单元,用于对所述待处理图像特征以及所述待处理文本序列进行注意力计算,得到注意力权重;第四文本生成子单元,用于根据所述注意力权重,确定所述描述文本序列中下一词的生成概率;第五文本生成子单元,用于根据所述下一词的生成概率,确定所述描述文本序列中下一词,以得到当前描述文本序列;第六文本生成子单元,用于将所述当前描述文本序列作为所述待处理文本序列,返回执行步骤对所述待处理图像特征以及所述待处理文本序列进行注意力计算,得到注意力权重,以及后续步骤,直至生成结束标记,将所述当前描述文本序列作为所述样本图像对应的所述样本描述文本。
在一些实施方式中,该图像生成装置还包括参数确定单元,参数确定单元包括参数获取子单元、参数拆分子单元以及参数确定子单元,包括:参数获取子单元,用于获取噪声预测参数,所述噪声预测参数用于对所述加噪样本图像进行噪声预测;参数拆分子单元,用于将所述噪声预测参数拆分为固定参数和待调整参数;参数确定子单元,用于将所述待调整参数作为所述待调整模型参数。
在一些实施方式中,参数确定子单元包括分解子单元以及确定子单元,包括:分解子单元,用于对所述待调整参数进行低秩分解,得到多个低秩参数矩阵;确定子单元,用于将所述多个低秩参数矩阵作为所述待调整模型参数。
在一些实施方式中,训练调整子单元包括损失计算子单元以及损失调整子单元,包括:损失计算子单元,用于计算所述预测样本噪声与所述样本噪声之间的第一损失值,以及计算所述样本视觉特征与所述样本文本特征之间的第二损失值;损失调整子单元,用于结合所述第一损失值以及所述第二损失值,调整所述待训练的图像生成模型的待调整模型参数,得到训练后的图像生成模型,以便将所述训练后的图像生成模型用于生成图像。
本申请实施例还提供一种计算机设备,包括处理器和存储器,所述存储器存储有多条指令;所述处理器从所述存储器中加载指令,以执行本申请实施例所提供的任一种图像生成方法中的步骤。
本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有多条指令,所述指令适于处理器进行加载,以执行本申请实施例所提供的任一种图像生成方法中的步骤。
本申请实施例还提供一种计算机程序产品,包括多条指令,所述指令被处理器执行时实现本申请实施例所提供的任一种图像生成方法中的步骤。
本申请实施例可以获取待处理描述文本以及参考图像;从所述待处理描述文本以及所述参考图像中,分别提取文本特征以及视觉特征;根据所述文本特征以及所述视觉特征,得到语义引导特征;向所述参考图像中加入参考噪声,得到加噪图像;通过所述语义引导特征,对所述加噪图像进行噪声预测,得到预测噪声;基于所述预测噪声,对所述加噪图像进行修复,以生成目标图像。
本申请实施例在图像生成过程中,将视觉特征与文本特征组合,由于视觉特征包含样本图像具象且细节的信息,视觉特征可以为文本添加更加具象且细节的语义信息,以增强语义信息的控制力。同时,将视觉特征引入语义引导特征中,使噪声预测过程中除关注文本特征外,还关注视觉特征中具象且细节的特征,以使得能够根据预测噪声尽可能还原出具象的图像,提高生成图像的质量。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1a是本申请实施例提供的图像生成方法的场景示意图;
图1b是本申请实施例提供的图像生成方法的流程示意图;
图2a是本申请实施例提供的图像生成模型的结构示意图;
图2b是本申请另一实施例提供的图像生成方法的流程示意图;
图2c是本申请实施例提供的样本描述文本的获取流程示意图;
图2d是本申请实施例提供的矩阵分解的处理过程的示意图;
图2e是本申请实施例提供的融合风格的个性化人物图像;
图3是本申请又一实施例提供的图像生成方法的流程示意图;
图4是本申请实施例提供的图像生成装置的结构示意图;
图5是本申请实施例提供的计算机设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请实施例提供一种图像生成方法、装置、电子设备、存储介质和程序产品。
可以理解的是,在本申请的具体实施方式中,涉及到参考图像、样本图像、人物图像、人脸图像、描述文本以及自拍照等与用户相关的数据,当本申请实施例运用到具体产品或技术中时,需要获得用户许可或者同意,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
其中,该电子设备可以为终端、服务器等设备。其中,终端可以为手机、平板电脑、智能蓝牙设备、笔记本电脑、台式电脑、智能电视、车载设备等;服务器可以是单一服务器,也可以是由多个服务器组成的服务器集群或云服务器。
该图像生成方法可以由电子设备实现。该电子设备可以获取待处理描述文本以及参考图像;从待处理描述文本以及参考图像中,分别提取文本特征以及视觉特征;根据文本特征以及视觉特征,得到语义引导特征;向参考图像中加入参考噪声,得到加噪图像;通过语义引导特征,对加噪图像进行噪声预测,得到预测噪声;基于预测噪声,对加噪图像进行修复,以生成目标图像。例如,参考图1a,在一些实施方式中,该电子设备可以为服务器,该服务器可以通过网络从终端获取待处理描述文本以及参考图像,以实现该图像生成方法。该服务器还可以将生成的目标图像通过网络发送至终端。
以下分别进行详细说明。需说明的是,以下实施例的顺序不作为对实施例优选顺序的限定。
人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用***。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、预训练模型技术、操作/交互***、机电一体化等。其中,预训练模型又称大模型、基础模型,经过微调后可以广泛应用于人工智能各大方向下游任务。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
计算机视觉技术(Computer Vision,CV)计算机视觉是一门研究如何使机器“看”的科学,更进一步的说,就是指用摄影机和电脑代替人眼对目标进行识别和测量等机器视觉,并进一步做图形处理,使电脑处理成为更适合人眼观察或传送给仪器检测的图像。作为一个科学学科,计算机视觉研究相关的理论和技术,试图建立能够从图像或者多维数据中获取信息的人工智能***。大模型技术为计算机视觉技术发展带来重要变革,swin-transformer,ViT,V-MOE,MAE等视觉领域的预训练模型经过微调(fine tune)可以快速、广泛适用于下游具体任务。计算机视觉技术通常包括图像处理、图像识别、图像语义理解、图像检索、OCR、视频处理、视频语义理解、视频内容/行为识别、三维物体重建、3D技术、虚拟现实、增强现实、同步定位与地图构建等技术,还包括常见的人脸识别、指纹识别等生物特征识别技术。
自然语言处理(Nature Language processing,NLP)是计算机科学领域与人工智能领域中的重要方向。它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法。自然语言处理涉及自然语言,即人们日常使用的语言,与语言学研究密切;同时涉及计算机科学和数学。人工智能领域模型训练的重要技术,预训练模型,即是从NLP领域的大语言模型(Large Language Model)发展而来。经过微调,大语言模型可以广泛应用于下游任务。自然语言处理技术通常包括文本处理、语义理解、机器翻译、机器人问答、知识图谱等技术。
机器学习(Machine Learning,ML)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、式教学习等技术。预训练模型是深度学习的最新发展成果,融合了以上技术。
自动驾驶技术,指车辆在无驾驶员操作的情况下实现自行驾驶。通常包括高精地图、环境感知、计算机视觉、行为决策、路径规划、运动控制等技术。自动驾驶包括单车智能、车路协同、联网云控等多种发展路径。自动驾驶技术有着广泛的应用前景,目前的领域为物流、公共交通、出租车、智慧交通领域外,未来将得到进一步发展。
随着人工智能技术研究和进步,人工智能技术在多个领域展开研究和应用,例如常见的智能家居、智能穿戴设备、虚拟助理、智能音箱、智能营销、无人驾驶、自动驾驶、无人机、数字孪生、虚拟人、机器人、人工智能生成内容(AIGC)、对话式交互、智能医疗、智能客服、游戏AI等,相信随着技术的发展,人工智能技术将在更多的领域得到应用,并发挥越来越重要的价值。
预训练模型(Pre-training model),也称基石模型、大模型,指具有大参量的深度神经网络(Deep neural network,DNN),在海量未标记的数据上对其进行训练,利用大参量DNN的函数近似能力使PTM在数据上提取共性特征,经微调(fine tune)、参数高效微调(PEFT)、prompt-tuning等技术,适用于下游任务。因此,预训练模型可以在小样本(Few-shot)或零样本(Zero-shot)场景下达到理想效果。PTM按照处理的数据模态可以分为语言模型(ELMO,BERT,GPT)、视觉模型(swin-transformer,ViT,V-MOE)、语音模型(VALL-E)、多模态模型(ViBERT,CLIP,Flamingo,Gato)等,其中多模态模型指建立两种或以上数据模态特征表示的模型。预训练模型是输出人工智能生成内容(AIGC)重要工具,也可以作为连接多个具体任务模型的通用接口。
自适应计算:指根据不同的输入数据,自动调整模型的计算量和精度,以达到在保持模型精度的同时提高模型计算效率的目的。自适应计算能够在不同的输入数据上灵活地调整模型的计算量和精度,从而更好地平衡模型的计算效率和精度。
在本实施例中,提供了一种涉及人工智能的图像生成方法,如图1b所示,该图像生成方法可以由电子设备执行,具体流程可以如下:
110、获取待处理描述文本以及参考图像。
其中,待处理描述文本是指用于生成图像的描述文本。描述文本可以包含要生成图像的内容信息,如“一只黄色的小狗在草地上微笑”,根据该描述文本可以生成一张“一只黄色的小狗站在绿色的草地上,它的舌头伸出来,好像正在微笑”的图片。
其中,参考图像是指在待处理描述文本生成图像时的参考或引导图像。通过使用参考图像中的信息来辅助生成图像,可以提供更准确和细致的图像生成效果。
本申请实施例提供的图像生成方法,可以应用在各种图像生成场景中,例如,动物图像生成任务或人物图像生成任务。以人物图像生成任务为例,在获得用户单独许可或同意的情况下,可以获取用户输入的任意描述文本“亮眼的双眸,柔和灯光照耀下,闪耀着亮眼的双眸,微笑中透露自信与温暖”以及获取用户上传的任一自拍照作为参考图像。
需说明的是,在本申请实施例中,待处理描述文本可以为任意文本,其与参考图像的内容信息可以不直接相关。例如,参考图像展示的内容为“一只黄色的小狗在草地上玩耍”,而待处理的描述文本可以是用户随意输入的文本“今天天气很好”。虽然该参考图像的内容与该描述文本看上去没有直接的联系,但可以根据上下文理解两者之间的含义关系,并将它们融合在一起生成用于生成图像。
120、从待处理描述文本以及参考图像中,分别提取文本特征以及视觉特征。
其中,视觉特征是指图像的视觉信息的向量表示。文本特征是指文本语义信息的向量表示。例如,可以通过视觉编码器以及文本编码器分别从待处理描述文本以及参考图像中,提取得到文本特征和视觉特征。
本申请实施例可以应用于图像生成模型,图像生成模型可以包括视觉编码器构成的视觉编码网络和文本编码器构成的文本编码网络。将参考图像以及待处理描述文本分别输入视觉编码网络和文本编码器后,通过视觉编码网络和文本编码器分别对参考图像以及描述文本进行编码,以将参考图像以及待处理描述文本为低纬度的向量表示,以将得到的参考图像的向量表示作为视觉特征,将得到待处理描述文本的向量表示作为文本特征。其中,视觉编码器以及文本编码器可以为卷积神经网络(CNN)、循环神经网络(RNN)、自编码器(Autoencoder)、CLIP(基于对比文本-图像对的预训练)模型等能用于文本或图像编码的编码器。
在一些实施方式中,可以使用同一预训练文本图像模型中的视觉编码器和文本编码器分别对参考图像以及待处理描述文本进行编码处理,以得到视觉特征以及文本特征。例如,可以使用预训练的CLIP(基于对比文本-图像对的预训练)模型中的视觉编码器(Vision Encoder)和文本编码器(Text Encoder)分别对参考图像以及待处理描述文本进行编码处理。该视觉编码器是一个卷积神经网络(CNN),它对输入的图像进行处理,提取出视觉特征。这些特征可以用来表示图像的内容、风格和其他视觉属性。视觉编码器的目标是在没有类别标签的情况下学习到与自然语言描述相匹配的视觉特征表示。该文本编码器使一种多层的Transformer(多头注意力)架构,其能够捕捉单词之间的关系和上下文信息,从而生成更丰富的文本表示。预训练的CLIP模型在训练过程中,使用大量的预训练图像和对应的描述文本进行对比学习,通过最大化匹配图像和文本的得分,并最小化不相关图像和文本的得分,使模型可以学习到一个视觉和语言之间的共享表示,以在使用视觉编码器和文本编码器分别对图像和文本进行编码,可以在同一个特征空间中获得对应的视觉特征和文本特征,这种跨模态表示学习使得图像和文本之间的语义联系更加丰富和准确。
在一些实施方式中,可以根据特征调整参数与参考图像的向量表示,以实现对参考图像的控制和编辑,得到更符合图像生成需求的视觉特征。具体地,视觉特征通过如下步骤得到:
从参考图像中提取初始视觉特征;
获取特征调整参数;
根据特征调整参数以及初始视觉特征,得到视觉特征。
其中,特征调整参数是指用于调整图像向量的参数。例如,特征调整参数可以为构造的调整图像特定属性的参数如颜色或大小,以此,该特征调整参数可以表示为属性向量。特征调整参数也可以为向量调整模型的参数,例如,该特征调整参数可以为转换(ConceptTransform)模型的参数。
在一些实施方式中,可以通过向量相乘、向量差以及其他叠加处理方法等中的一种或多种的组合,对根据特征调整参数以及初始视觉特征处理得到视觉特征。
例如,图像生成模型还可以包括转换模型构成的调整网络。在使用图像编码器对参考图像进行提取时,可以将参考图像映射为低纬度的向量表示(即初始视觉特征)后,可以通过转换模型将初始视觉特征与特征调整参数以相乘或相减等方式进行叠加,以得到更符合图像生成需求的视觉特征。
在一些实施方式中,特征调整参数可以包括线性变换参数和非线性变换参数。具体地,可以通过线性变换参数以及线性变换参数对视觉编码器提取得到的初始视觉特征进行线性变换和非线性变换,得到视觉特征。例如,可以使用多层的前馈神经网络(FFN)模型的参数作为特征调整参数。具体地,可以引入一个或多个全连接层来构建该FFN模型,每个全连接层包括线性变换、非线性激活函数(即非线性变换参数)和可选的正则化方法(如Dropout),以此,FFN模型可以通过线性变换参数来计算上一层节点的加权和,然后使用一个非线性激活函数(如ReLU函数)进行变换,以引入非线性特征,以得到视觉特征。
130、根据文本特征以及视觉特征,得到语义引导特征。
例如,可以通过拼接、加和以及相乘等中的一种或多种的组合方式,对文本特征以及视觉特征进行处理,得到语义引导特征。例如,可以将文本特征A以及视觉特征组合B进行拼接,得到语义引导特征AB。由于视觉特征包含参考图像具象且细节的信息,因此可以将视觉特征作为子类描述添加在文本特征中,为文本添加更加具象且细节的语义信息,以增强语义信息的控制力,提高生成图像的质量。具象性是指事物或现象的真实存在形态和状态,以及它们的具体表现和特征。具象性强的事物或现象容易被人们直接感知和直接理解事物的能力。由此,通过图像特征增加文本的具象性,能提高生成图像的质量。
在一些实施方式中,可以将视觉特征添加在与文本特征中描述文本的父类关键词对应的特征的相邻位置,以更好地建立图像与文本信息之间的映射关系,进一步增强语义信息的控制力,提高生成图像的质量。
其中,父类关键词是指描述文本中总体性描述的关键词。父类关键词可以为描述文本概念或主题相关的关键词,如人、哺乳动物、鸟类、爬行动物等。父类关键词可以为生成任务类型对应的关键词。例如,在应用于人物图像生成任务的场景时,父类关键词可以为能表示人物的多个词语,如人(person),人们(people),人类(human),男人(man),女人(woman),男孩(boy),女孩(girl),绅士(gentleman),女士(lady),孩子(child),婴儿(baby),小孩(kid),青少年(teenager),成年人(adult),老年人(senior),公民(citizen),雇员(employee),雇主(employer),顾客(customer),客户(client),病人(patient),学生(student),教师(teacher),教授(professor),医生(doctor),护士(nurse),运动员(athlete),音乐家(musician),艺术家(artist),作家(writer),演员(actor),女演员(actress),科学家(scientist),工程师(engineer),消防员(firefighter),厨师(chef),程序员(programmer),游戏玩家(gamer),等等。
例如,在应用于人物图像生成任务的场景时,任一待处理描述文本为“ayoung manin a tank top holding a basketball”(一个穿着背心的年轻男子抱着一个篮球),可以将该任务场景中父类关键词与待处理描述文本中的词一一进行匹配,以查找到父类关键词man。对描述文本编码得到文本特征A1A2…Ai…Am,其中Ai表示man对应的特征。以此可以将参考图像的视觉特征B1B2…Bi…Bm添加在特征Ai之前,得到语义引导特征A1A2…B1B2…Bi…BmAi…Am。或可以将参考图像的视觉特征B1B2…Bi…Bm添加在特征Ai之后,得到语义引导特征A1A2…AiB1B2…Bi…Bm…Am。
在一些实施方式中,在描述文本中有多个父类关键词时,可以将视觉特征添加在与文本特征中待处理描述文本的首个父类关键词对应的特征的相邻位置。其中,首个父类关键词是指按照待处理描述文本中的排列顺序的多个父类关键词中的第一个父类关键词。
在一些实施方式中,可以在待处理描述文本的父类关键词的相邻位置***占位符,以根据占位符对应的特征位置将文本特征与视觉特征组合,得到语义引导特征。由于待处理描述文本中占位符编码后的特征通常是固定不变的,因此,通过识别文本特征中占位符对应的特征,可以快速、准确地确定视觉特征的***位置,同时***的视觉特征不会与其他文本特征混肴,提高特征组合的效率和准确性。具体地,根据文本特征以及视觉特征,得到语义引导特征之前,还包括:
在待处理描述文本中父类关键词的相邻位置添加占位符;
根据文本特征以及视觉特征,得到语义引导特征,包括:
将文本特征中,占位符对应的特征替换为视觉特征,得到语义引导特征。
其中,占位符是指文本中使用特定符号或标记来代表某个特定位置或值的占用符号。通常可以使用特殊符号如s*作为占位符。在一些实施方式中,可以在父类关键词之前添加占位符,以快速识别文本特征中占位符对应的特征。
例如,可以在待处理描述文本“a young man in a tank top holdingabasketball”的父类关键词man之前添加占位符s*,得到“a young s*man in a tank topholding a basketball”。对待处理描述文本编码得到文本特征A1A2…Aj…Am,其中Aj表示占位符s*对应的特征。以此可以使用参考图像的视觉特征B1B2…Bi…Bm替换Aj,得到语义引导特征A1A2…B1B2…Bi…Bm…Am。
140、向参考图像中加入参考噪声,得到加噪图像。
其中,参考噪声是指用于加入参考图像中的噪声。通常参考噪声为随机噪声。随机噪声是指由时间上随机产生的大量起伏骚扰积累而造成的、其值在给定瞬间内不能预测的噪声。例如,随机噪声可以包括但不限于高斯噪声、椒盐噪声、或乘性噪声等噪声中一种或多种的组合。
例如,图像生成模型可以基于随机噪声生成与参考图像大小相同的参考噪声图像。如对于高斯噪声,可以使用均值为0、标准差为所需数值的正态分布生成随机数,以生成参考噪声图像。将该参考噪声图像与参考图像相加,得到加噪图像。
在一些实施方式中,可以在参考图像的隐向量中加入噪声。具体地,向参考图像中加入参考噪声,得到加噪图像,包括:
从参考图像中提取初始隐向量;
向初始隐向量中加入样本噪声,得到加噪图像的加噪隐向量,以得到加噪图像。
例如,图像生成模型还可以包括图像编码器构成的图像编码网络,将参考图像输入图像编码网络后,通过图像编码网络对参考图像进行编码,以得到的参考图像的隐向量(即初始隐向量),将随机噪声添加到初始隐向量中,得到加噪隐向量。
在一些实施方式中,可以使用预训练的变分自编码(VAE)的编码器从参考图像中提取初始隐向量。变分自编码的编码器可以将输入的参考图像转换为潜在向量表示(即隐向量),该向量表示包含了参考图像的抽象特征。
150、通过语义引导特征,对加噪图像进行噪声预测,得到预测噪声。
其中,语义引导特征是指用于引导噪声预测过程的特征条件。
在本申请实施例中,语义引导特征能够指导和约束对加噪图像的噪声预测过程,以帮助图像生成模型更准确地理解和还原图像。可以理解的是,通常图像生成模型需要建立文本和对应图像的关系,才能实现对图像的去噪还原,由于文本具象性差,很难清晰的描述一个事物,比如人物形象,文本难以具象描述人物五官,导致图像生成模型无法准确地捕捉到描述的细节,导致生成的图像质量较差或与描述不匹配。然而,本申请实施例将视觉特征作为子类描述添加在文本特征中,以将视觉特征引入语义引导特征中,使噪声预测过程中除关注文本特征外,还关注视觉特征中具象且细节的特征,以更好地建立文本和对应图像的关系,提高生成图像的质量。
在一些实施方式中,可以通过多尺度特征采样,从不同尺度捕捉图像的细节,以更全面地理解图像内容,并提供更多的信息用于噪声预测。再通过将语义引导特征和采样特征进行交叉注意力处理,以基于注意力机制动态调整特征的权重,有助于将注意力集中在重要的特征部分,提高噪声预测的准确性和效果,以提高生成图像的质量。具体地,通过语义引导特征,对加噪图像进行噪声预测,得到预测噪声,包括:
对加噪图像进行多尺度特征采样,得到多尺度的采样特征;
针对任一尺度的采样特征,对语义引导特征以及采样特征进行交叉注意力处理,得到注意力特征;
由注意力特征得到预测噪声。
其中,多尺度特征处理是指将图像在不同尺度上进行分解和处理,从而得到相应尺度下的特征表示,并将这些特征表示进行融合的过程。对加噪图像进行多尺度特征处理后,融合得到的即为多尺度特征。例如,可以使用不同尺度的滤波器或金字塔采样方法对加噪图像进行多尺度特征采样。多尺度特征中,每个尺度指的是对原始数据进行不同程度的缩放或采样得到的不同尺寸的表示。
其中,交叉注意力处理是指基于注意力机制,计算两个不同输入序列或特征图之间的相关性,以捕捉它们之间的关系。本申请实施例中,该两个不同输入序列或特征图即为语义引导特征和多尺度特征。
例如,图像生成模型还可以包括噪声预测模型构成的噪声预测网络。可以通过噪声预测模型对加噪图像的加噪隐向量进行多尺度特征采样,得到n个尺度的采样特征。对任一尺度i的采样特征i,可以对语义引导特征和采样特征i进行交叉注意力处理得到尺度i对应的注意力特征i。注意力特征i可以作为下一次特征采样的输入特征。由最大尺度的特征采样输出的注意力特征(即最后一次特征采样后输出的注意力特征),得预测噪声。
在一些实施方式中,可以通过下采样(缩小)和上采样(放大)实现多尺度特征处理过程,采样特征包括上采样特征和下采样特征。例如,使用Unet(U形网络)模型作为噪声预测模型,以对加噪图像的加噪隐向量进行多尺度特征采样。Unet模型包括编码器和解码器两部分,它们之间通过跳跃进行信息传递。本申请实施例中,编码器包括下采样模块,解码器包括上采样模块,在下采样模块和上采样模块中,均设置有交叉注意力层。具体地,下采样模块通过连续的卷积层和下采样操作,将输入的加噪图像逐渐缩小,以捕获高层次的特征表示(即下采样特征)。在每次下采样操作后,可以对下采样特征以及语义引导特征进行交叉注意力处理,得到下采样的注意力特征。解码器通过上采样操作和反卷积,将下采样特征逐渐恢复到与输入的加噪图像的尺寸相同,以逐渐增加图像特征图的尺寸,得到上采样特征。在每次上采样操作后,可以对上采样特征以及语义引导特征进行交叉注意力处理,得到上采样的注意力特征。编码器和解码器之间,通过跳跃链接将编码器的注意力特征与对应的解码器阶段的注意力特征进行连接,也即是将同一尺度的下采样的注意力特征和上采样的注意力特征连接(融合)作为该尺度的解码器输出特征,以此提供更全面的上下文信息,并帮助解码器更好地还原细节。将最后一个解码器输出的特征,即最大尺度的下采样的注意力特征和上采样的注意力特征连接(融合)得到的特征(即最大尺度的连接特征)作为预测噪声。
在一些实施方式中,可以通过语义引导特征对各尺度的采样特征一一进行交叉注意力处理,以逐步将文本信息注入到图像信息中,以尽量还原更多的图像细节,减少信息的丢失,提高生成图像的质量。具体地,针对任一尺度的采样特征,对语义引导特征以及采样特征进行交叉注意力处理,得到注意力特征,包括:
针对任一尺度的采样特征,对语义引导特征进行线性变换,得到键向量以及值向量,以及对采样特征进行线性变换,得到查询向量;
通过查询向量以及键向量,对值向量进行注意力加权,得到注意力特征。
其中,查询向量、键向量以及值向量是指注意力机制中的查询向量Q、键向量K以及值向量V,Q用来学习自己本身和其他元素之间的关系,K用来学习其他元素和本身之间的关系,V则是表示每个元素的特定信息。
例如,以使用Unet(U形网络)模型作为噪声预测模型为例,Unet模型的任一尺度的下采样模块或上采样模块的交叉注意力层中,可以通过键参数矩阵WK以及值参数矩阵Wv,通过K=X1*WK以及V=X1*Wv对语义引导特征X1线性变换得到键向量K以及值向量V,其中*表示乘。并通过查询参数矩阵WQ,通过Q=X2*WQ对X2线性变换得到查询向量Q,X2表示该采样模块得到的采样特征,如下采样模块的下采样特征或上采样模块的上采样特征。可以由查询向量以及键向量进行矩阵乘法,得到注意力矩阵,通过softmax函数对注意力矩阵进行归一化处理,得到归一化的注意力权重,将注意力权重与值向量进行加权求和,得到该采样模块的注意力特征。上述步骤可以通过如下公式实现:其中,dk是指键向量的维度,/>表示缩放因子,Attention(Q,K,V)表示注意力特征。
在一些实施方式中,可以通过对注意力特征进行线性变换,增强局部信息,提高噪声预测的准确性和效果,以提高生成图像的质量。具体地,由注意力特征得到预测噪声,包括:
对注意力特征进行线性变换,得到变换后的特征;
由变换后的特征得到预测噪声。
例如,以使用Unet模型作为噪声预测模型为例,Unet模型的任一尺度的下采样模块或上采样模块的交叉注意力层之后可以设置有线性变换层。如,可以使用多层的前馈神经网络(FFN)模型作为线性变换层对每次下采样或上采样的注意力特征进行线性变换,得到变换后的特征,该变换后的特征可以作为下一次采样模块的输入特征,可以将最后一个解码器(即上采用模块)输出的变换后的特征作为预测噪声。具体地,FFN模型可以包括按照层次结构排列的多层神经元,可以将最大尺度的连接特征输入多层神经元,通过XW+b经每层神经元进行加权求和(即线性变换),并通过激活函数进行非线性变换,然后将变换后的值传递到下一层神经元,直至最后一层输出层,得到变换后的特征,其中X为输入特征,W为权重矩阵,B为偏置向量。
160、基于预测噪声,对加噪图像进行修复,以生成目标图像。
例如,图像生成模型还可以包括图像解码器构成的图像解码网络,可以使用加噪图像减去预测噪声,得到目标隐向量。再由图像解码器对目标隐向量解码得到目标图像。
在一些实施方式中,在使用预训练的变分自编码(VAE)的编码器从参考图像中提取初始隐向量时,可以使用预训练的变分自编码(VAE)的解码器,对目标隐向量进行解码,得到目标图像。变分自编码的解码器可以将目标隐向量从潜在空间映射回数据空间,以生成图像。
在一些实施方式中,可以使用样本图像以及样本图像对应的样本描述文本训练图像生成模型,以使用训练后的图像生成模型生成目标图像。具体地,该图像生成方法,还包括:
获取训练样本集以及待训练的图像生成模型,训练样本集包括至少一个样本图像以及样本图像对应的样本描述文本;
从样本描述文本以及样本图像中,分别提取样本文本特征以及样本视觉特征;
根据样本文本特征以及样本视觉特征,得到样本语义引导特征;
向样本图像中加入样本噪声,得到加噪样本图像;
通过语义引导特征,对加噪图像进行噪声预测,得到预测样本噪声;
根据预测样本噪声与样本噪声之间的损失值,调整待训练的图像生成模型的待调整模型参数,得到训练后的图像生成模型,训练后的图像生成模型用于生成目标图像。
需说明的是,本申请实施例的样本图像、样本描述文本、样本文本特征、样本视觉特征、样本语义引导特征、样本噪声、加噪样本图像以及预测样本噪声是用于训练待训练的图像生成模型的图像、描述文本、文本特征、视觉特征、语义引导特征、噪声、加噪图像以及预测噪声。
其中,样本图像是指用于训练图像生成模型的图像,描述文本是指能描述样本图像展示内容的文本。在本申请实施例中,样本图像与样本描述文本为相关的文本对,也即样本图像与样本描述文本为关联的图像文本。例如,样本图像的展示内容为“一只黄色的小狗站在绿色的草地上,它的舌头伸出来,好像正在微笑”,其对应的样本描述文本则可以为“一只黄色的小狗在草地上微笑”。样本噪声可以为随机噪声。
例如,可以使用待训练的图像生成模型中的视觉编码器和文本编码器,从样本描述文本以及样本图像中,分别提取样本文本特征以及样本视觉特征。再将样本文本特征以及样本视觉特征组合得到样本语义引导特征。向样本图像中加入高斯噪声等样本噪声,生成加噪样本图像。再使用样本语义引导特征指导和约束待训练的图像生成模型中的噪声预测网络进行噪声预测。具体地,噪声预测网络可以对样本噪声图的隐向量进行多尺度特征采样,得到多尺度的样本采样特征,针对任一尺度的样本采样特征,对样本语义引导特征以及样本采样特征进行交叉注意力处理,得到样本注意力特征,由样本注意力特征得到预测样本噪声。待训练的图像生成模型中各网络的具体处理过程以及原理可以参见前述步骤过程的相应内容,在此不再赘述。
在得到预测样本噪声后,可以使用均方误差损失函数、交叉熵损失函数以及感知损失函数中的一种或多种的组合,计算预测样本噪声与样本噪声之间的损失值,使用优化算法,如梯度下降法或进化算法,通过最小化损失值来更新待调整模型参数。优化算法会根据目标函数(损失值)关于待调整模型参数的梯度信息,迭代地调整待调整模型参数,直到达到最小化损失值的目标。调整后的模型参数对应的图像生成模型即为训练后的图像生成模型。
在一些实施方式中,参考图像可以为训练样本集中的任一样本图像,以此利用训练样本集的信息,提升生成图像的质量。
在实际应用中,可以使用预训练的神经网络模型生成样本图像对应的样本描述文本,例如,预训练的神经网络模型可以包括但不限于看图说话(Show and Tell)模型、上下文(Up-Down)模型、叠加生成对抗网络(StackGAN)模型、图像转换器(Image Transformer)模型等。
在一些实施方式中,可以通过注意力机制捕捉图像与文本之间的关系,以及捕捉长距离的语义依赖关系和上下文信息,以得到更准确和流畅的样本图像的样本描述文本。具体地,样本图像对应的样本描述文本通过如下步骤得到:
从样本图像中提取待处理图像特征;
将包含起始标记的样本描述文本序列作为待处理文本序列;
对待处理图像特征以及待处理文本序列进行注意力计算,得到注意力权重;
根据注意力权重,确定样本描述文本序列中下一词的生成概率;
根据下一词的生成概率,确定样本描述文本序列中下一词,以得到当前样本描述文本序列;
将当前样本描述文本序列作为待处理文本序列,返回执行步骤对待处理图像特征以及待处理文本序列进行注意力计算,得到注意力权重,以及后续步骤,直至生成结束标记,将当前描述文本序列作为样本图像对应的样本描述文本。
其中,起始标记是指用于指示生成样本描述文本序列的开始,如"<start>"。结束标记是指用于指示生成样本描述文本序列的结束。结束标记可以是根据任务定义的,也可以是通过对解码器的预训练过程确定的。如,可以使用包括图像和图像对应的样本描述文本的训练数据集对解码器进行训练,该样本描述文本中通常会包含特定的结束标记,如"<end>"或者"</s>",当解码器生成的样本描述文本序列中出现这个特定的结束标记时,解码器会被指示停止生成词。
例如,可以利用图像编码器提取样本图像特征,也即图像编码器可以将样本图像编码为表示全局的图像特征A(即待处理图像特征),该图像编码器可以为卷积神经网络(CNN)、循环神经网络(RNN)、自编码器(Autoencoder)等能用于图像编码的编码器。再使用解码器对图像特征A解码得到样本图像的样本描述文本,该解码器可以为基于交叉注意力(Cross-Attention)的解码器。具体地,解码器可以获取待处理文本序列{<start>},对图像特征A和待处理文本序列{<start>}进行交叉注意力(Cross-Attention)计算,得到注意力权重,再对注意力权重进行二分类得到{<start>}中下一词的生成概率,根据该生成概率从词汇表中选择最高概率的词B作为<start>的下一词,即得到当前样本描述文本序列{<start>,B},并将{<start>,B}作为待处理文本序列,由解码器对图像特征A和{<start>,B}进行处理,以预测B的下一词。以此类推,直至预测的词为结束标记<end>,以此将得到的当前样本描述文本序列{<start>,B,C,…,N,<end>}中,除起始标记和结束标记的词序列即B,C,…,N作为样本图像的样本描述文本。
在一些实施方式中,可以使用统一视觉语言理解和生成的引导语言图像预训练(BLIP)模型生成样本图像的样本描述文本。BLIP模型包括图像编码器(Image Encoder)、文本编码器(Text Encoder)、图像引导文本编码器(Image-grounded Text Encoder)和图像引导文本解码器(Image-grounded Text Decoder)。可以使用大量的无监督训练数据集进行预训练,得到预训练的BLIP模型,该无监督训练数据集包括图像和图像对应的样本描述文本。在训练过程中,图像编码器和文本编码器分别负责编码图像和样本描述文本。图像引导文本编码器负责判断样本描述文本和图像是否表达含义一致,图像引导文本解码器负责根据图片生成相应描述。以此,在预训练的BLIP模型中,可以将样本图像输入图像编码器(Image Encoder)中,以提取样本图像中的图像特征(即待处理图像特征);图像引导文本解码器接收来自图像编码器的图像特征作为输入,通过输入一个起始标记作为初始输入,逐步生成描述序列,在每个时间步,利用当前生成的文本序列和图像特征来计算注意力权重,这些注意力权重表示了图像和文本之间的相关性,并用于指导下一个词的生成,直到生成了一个特定的结束标记,表示描述的结束。最后将图像引导文本解码器输出的描述序列作为样本图像对应的样本描述文本。
在一些实施方式中,样本描述文本包括父类描述文本。父类描述文本表征对样本图像主体的总体性描述,父类描述文本可以为生成任务类型对应的概括描述。例如,在应用于人物图像生成任务的场景时,父类描述文本可以为对样本图像中人物的概括描述“ayoung man in a tank top holding a basketball”(一个穿着背心的年轻男子抱着一个篮球),在应用于动物图像生成任务的场景时,父类描述文本可以为对样本图像中动物的概括描述“A little yellow dog is smiling on the grass”(一只黄色的小狗在草地上微笑)。
在待训练的图像生成模型的训练过程中,待调整模型参数可以包括图像生成模型的全部或部分网络结构的参数。例如,待调整模型参数可以包括视觉编码网络、图像编码网络、文本编码网络、调整网络、噪声预测网络、图像解码网络中一个或多个网络的参数。例如,在训练图像生成模型时,可以固定图像生成模型中部分结构如预训练的图像编码器和图像解码器构成的图像编码网络和图像解码网络的参数不做调整,仅对与训练的网络或部分关键网络的参数进行调整。使得模型更容易收敛并获得较好的生成效果,并减少整个模型的训练时间和计算资源的消耗,以提升训练效率。
在一些实施方式中,待调整模型参数可以包括用于提取视觉特征的参数和用于噪声预测的参数中的至少一种,其中,用于提取视觉特征的网络参数包括视觉编码网络、调整网络中至少一个的参数,用于噪声预测的参数包括的参数。以此,通过调整视觉编码网络的网络参数,优化加入文本中的具象且细节的视觉信息,以使训练后的图像生成模型能还原出具象的图像,提高生成图像的质量。通过调整噪声预测网络的网络参数,使噪声预测网络能更好地捕捉图像中的噪声,从而生成更准去的修复结果,以提高生成图像的质量。
在一些实施方式中,在待训练图像生成模型的训练过程中,可以固定视觉编码网络和文本编码网络的参数,也即不训练视觉编码器以及文本编码器。以此,使固定参数的视觉编码器以及文本编码器能为模型提供更稳定、可靠的特征输入,使得模型更容易收敛并获得较好的生成效果,并减少整个模型的训练时间和计算资源的消耗。例如,在使用预训练的CLIP模型中的视觉编码器和文本编码器分别提取视觉特征和文本特征时,由于预训练过程中基于图像和文本之间的关系进行了跨模态学习,以此,在待训练的图像生成模型的训练过程中,固定视觉编码器和文本编码器的参数(即不调整其参数)能获得更好的训练效果。
在一些实施方式中,为了在固定视觉编码器的同时,优化加入文本中的具象且细节的视觉信息,可以将用于调整视觉特征的调整网络的网络参数即特征调整参数作为待调整模型参数,也即待调整模型参数包括特征调整参数。
在一些实施方式中,待调整模型参数包括噪声预测参数,噪声预测参数用于对加噪样本图像进行噪声预测,噪声预测参数包括交叉注意力参数以及线性变换参数中的至少一种,交叉注意力参数用于对样本语义引导特征以及样本采样特征进行交叉注意力处理,线性变换参数用于对样本注意力特征进行线性变换。也即,交叉注意力参数为交叉注意力层的参数,线性变换参数为交叉注意力层之后线性变换层的参数。
在一些实施方式中,待调整模型参数仅包括特征调整参数、交叉注意力参数以及线性变换参数,以此仅对部分关键结构的参数进行调整。使得模型更容易收敛并获得较好的生成效果,并减少整个模型的训练时间和计算资源的消耗,以提升训练效率。
在一些实施方式中,由于噪声预测过程中的参数规模大,需要消耗大量的计算资源,因此可以将训练过程中,噪声预测过程的大量待调整模型参数分解为更少的参数,以大大降低需要调整的参数量,提升训练效率。具体地,根据预测噪声与样本噪声之间的损失值,调整待训练的图像生成模型的待调整模型参数,得到训练后的图像生成模型之前,还包括:
获取噪声预测参数,噪声预测参数用于对加噪样本图像进行噪声预测;
将噪声预测参数拆分为固定参数和待调整参数;
将待调整参数作为待调整模型参数。
例如,对于噪声预测参数的参数矩阵,其在调整图像生成模型的待调整模型参数之前的初始参数矩阵为W0。在调整过程中噪声预测参数可以被拆分表示为W0+ΔW,其中,ΔW表示噪声预测参数更新的部分,由于噪声预测参数的初始参数矩阵是固定的,可以将要调整的噪声预测参数拆分固定参数W0+待调整参数ΔW,调整前ΔW=0。以此,在训练过程中,可以冻结噪声预测参数的固定部分,仅训练待调整参数ΔW,以减少要调整的参数量。可以通过固定参数W0+调整后的参数ΔW′得到调整后的图像生成参数,并以该调整后的图像生成参数更新图像生成模型得到训练后的图像生成模型。
在一些实施方式中,可以对待调整模型参数进行低秩分解,以对待调整模型参数的参数进行压缩和降维,减少调整过程中的数据存储空间和计算成本。具体地,将待调整参数作为待调整模型参数,包括:
对待调整模型参数进行低秩分解,得到多个低秩参数矩阵;
将多个低秩参数矩阵作为待调整模型参数。
其中,低秩分解是指将矩阵分解为低秩矩阵的方法。通过低秩分解,可以将一个矩阵可以表示为两个矩阵的乘积,其中一个矩阵的行数很小,另一个矩阵的列数很小,这两个小矩阵相乘的结果是大矩阵的低秩近似。
例如,可以将通过低秩分解,将待调整模型参数ΔW表示为BA两个矩阵的乘积,也即W0+ΔW=W0+BA,其中,r<<min(d,k)。以此,W0是d×k维矩阵,那么B和A矩阵的尺寸可以减小到d×r和r×k,显然分解后的B和A矩阵的参数量远小于待调整模型参数ΔW的参数量,其中r可以远小于d,理论上BA矩阵间相乘的秩r越小,待调整模型参数的参数量也越小。以此,待调整模型参数对应的输入输出可以由h=W0x+ΔWx改变为h=W0x+BAx,其中x代表输入,h代表输出。
在一些实施方式中,在噪声预测参数包括交叉注意力参数时,噪声预测参数包括交叉注意力处理中的查询参数矩阵WQ、键参数矩阵WK以及值参数矩阵Wv。例如,可以将其分别表示为其中,/>为固定参数,B1、A1、B2、A2、B3、A3为待调整参数,可以通过/>得到调整后的图像生成参数,其中,B′1、A′1、B′2、A′2、B′3、A′3为调整后的参数。
在一些实施方式中,在噪声预测参数包括线性变换参数时,噪声预测参数包括线性变换中的权重参数。例如,噪声预测参数包括FFN模型进行线性变换的权重矩阵,以及噪声预测参数还可以包括进行线性变换的偏置向量。如,可以将权重矩阵W表示为W0+BA,并通过W0+B′A′得到调整后的图像生成参数,其中,B′、A′为调整后的参数。
在一些实施方式中,可以使用MSELoss(均方误差损失)计算预测样本噪声与样本噪声之间的损失值。例如,可以通过损失函数ReconstructionLoss(xi,yi)=(xi-yi)2,将预测样本噪声与相应样本噪声计算差值再求平方,得到重构损失值,其中,ReconstructionLoss表示重构损失,xi表示样本图像i的样本噪声,yi表示样本图像i对应的预测样本噪声。在有多个样本图像时,可以对每个样本图像的重构损失值求和或平均,得到整体的重构损失值,并将其作为预测样本噪声与样本噪声之间的损失值。
在一些实施方式中,为了还原出具象的图像,本申请实施例在文本特征后添加视觉特征,以作为语义引导特征。然而,由于文本特征以及视觉特征来自于不同的特征空间,在噪声预测过程中影响程度不一致。例如,视觉特征可能较弱,达不到为文本添加更加具象且细节的语义信息的目的,以使得图像生成模型生成图像的质量差,或者图像特征可能较强,使得文本特征影响力较弱,达不到控制效果。对此,本申请在训练过程中,基于样本视觉特征与样本文本特征的损失值调整待调整模型参数,以使视觉特征在保持本身语义的前提下,趋近于文本特征的特征空间,以在不减弱文本特征控制效果时,为文本添加更加具象且细节的语义信息,以还原出具象的图像,提高生成模型生成图像的质量。具体地,根据预测样本噪声与样本噪声之间的损失值,调整待训练的图像生成模型的待调整模型参数,得到训练后的图像生成模型,包括:
计算预测样本噪声与样本噪声之间的第一损失值,以及计算视觉特征与语义引导特征之间的第二损失值;
结合第一损失值以及第二损失值,调整待训练的图像生成模型的待调整模型参数,得到训练后的图像生成模型。
在实际应用中,可以使用均方误差损失函数、交叉熵损失函数以及感知损失函数中的一种或多种的组合,计算根据视觉特征与语义引导特征的损失值。
在一些实施方式中,可以使用MSELoss(均方误差损失)计算样本视觉特征与样本文本特征之间的损失值。例如,可以将基于损失函数ReconstructionLoss(xi,yi)=(xi-yi)2计算得到的整体的重构损失值作为第一损失值。再基于样本视觉特征与样本文本特征之间的差值计算第二损失值。具体地,可以通过损失函数TextImageEmbeddingLoss(xi,yi)=(xi-yi)2,将视觉特征与相应的样本文本特征的计算差值再求平方,得到文本图像嵌入损失值,其中,TextImageEmbeddingLoss表示文本图像嵌入损失,xi表示样本图像i的样本视觉特征,yi表示样本图像i对应样本描述文本i的样本文本特征。在有多个样本图像时,可以对每个样本图像的文本图像嵌入损失值求和或平均,得到整体的嵌入损失值,并将其作为样本视觉特征与样本文本特征之间的第二损失值。可以对第一损失值以及第二损失值加权求和得到总损失值,其中加权的权重可以根据经验或训练效果设置,如可以设置为1。使用优化算法,如梯度下降法或进化算法,通过最小化总损失值来更新待调整模型参数,直到达到最小化损失值的目标。调整后的图像生成参数对应的图像生成模型即为训练后的图像生成模型。
在一些实施方式中,在得到训练后的图像生成模型后,可以将使用少量风格化图像对其进行微调,以用于生成与风格化图像风格一致的图像。具体地,该图像生成方法,还包括:
获取风格化图像以及调整后生成参数对应的图像生成模型;
通过风格化图像,调整调整后生成参数对应的图像生成模型的待调整模型参数,得到风格化图像生成模型,以便将风格化图像生成模型用于生成目标图像。
例如,可以将少量如1张风格化图像输入训练后的图像生成模型,以调整训练后的图像生成模型对应的待调整模型参数,使二次训练后的图像生成模型能够根据输入的文本生成融合该风格化图像风格的个性化的图像。该二次训练过程与待训练图像生成模型的训练过程仅输入训练数据不同,训练过程以及原理相同,以此,该训练过程以及原理可以参见前述待训练图像生成模型的训练过程的相应内容,在此不再赘述。
本申请实施例提供的图像生成方案可以应用在各种图像生成场景中。比如,以应用于动物图像生成任务或人物图像生成任务为例,获取待处理描述文本以及参考图像;从待处理描述文本以及参考图像中,分别提取文本特征以及视觉特征;根据文本特征以及视觉特征,得到语义引导特征;向参考图像中加入参考噪声,得到加噪图像;通过语义引导特征,对加噪图像进行噪声预测,得到预测噪声;基于预测噪声,对加噪图像进行修复,以生成目标图像。
由上可知,本申请实施例在图像生成过程中,将视觉特征与文本特征组合,由于视觉特征包含样本图像具象且细节的信息,视觉特征可以为文本添加更加具象且细节的语义信息,以增强语义信息的控制力。同时,将视觉特征引入语义引导特征中,使噪声预测过程中除关注文本特征外,还关注视觉特征中具象且细节的特征,以使得能够根据预测噪声尽可能还原出具象的图像,提高生成图像的质量。
根据上述实施例所描述的方法,以下将作进一步详细说明。
在本实施例中,将以人物图像生成任务为例,对本申请实施例的图像生成模型的训练方法进行详细说明。
本申请实施例的图像生成模型的训练方法可以由图像生成模型实现。如图2a所示的图像生成模型,图像生成模型包括视觉编码网络、图像编码网络、文本编码网络、调整网络、噪声预测网络以及图像解码网络,其中,噪声预测网络中引入了低秩分解模块。图中灰色部分(即调整网络和调整网络输出的视觉特征、以及低秩分解模型)为可训练部分,其他部分为不可训练部分。
本申请实施例提供的图像生成方法,可以用于训练文生图领域的图像生成模型如扩散(Stable Diffusion)模型,文生图是指在预训练扩散模型中,输入文本控制生成图像。
如图2b所示,一种图像生成方法,该方法可以由电子设备执行,具体流程如下:
210、获取训练样本集以及待训练的图像生成模型。
训练样本集包括至少一个样本图像以及样本图像对应的样本描述文本。在获得数据相关用户或主体许可或同意的情况下,可以获取公开任务数据集合和自收集人物数据集合以构成训练样本集中的样本图像。例如,可以选择MS-Celeb-1M数据集(百万人脸数据集)合作为公开人物数据集合,该数据包含10万个人物,每个人物对应100张图像,为了保持数据多样性,可以对每个任务选择一张图像作为样本图像。
公开人物数据集合主要包含人脸图像,为了增加数据多样性,通过关键词在自建图库中检索图像,用于构建自收集人物数据集合。例如,可以使用关键词“街拍”进行检索,再根据图像尺寸、质量等要素设置的基础规则过滤掉质量差的图像,如基础规则可以为保留图像尺寸大于512*512,质量分(aesthetic score)高于6.5。以此,自收集1万数据集合,相对比公开人物数据集合,该部分图像多样性较强,包括全身、半身多场景图像。
由于训练数据集合中样本图像多样性很高,存在不同类型、不同场景的人物图像。可以通过BLIP模型对训练集合中的样本图像生成相应的样本描述文本,以帮助预训练的图像生成模型更精准地找到样本图像和相应描述文本的映射关系。例如,如图2c所示的样本描述文本的获取流程,可以通过BLIP模型对图中的样本图像生成样本描述文本“a youngman in a tank top holding abasketball”(一个穿着背心的年轻男子抱着一个篮球)。
BLIP模型生成图片详细描述主要包含主体父类,为了更好的表示每一张图片的独特性以及后续替换图片特征,需要在描述文本中添加主体子类的占位符,以得到最终的描述文本。例如,可以规定主体子类词为“s*”。使用字符串匹配的方式将主体父类中表示“人”的词前增加“s*”文本。以主体父类文本“ayoung man in a tank top holding abasketball”为例,增加主体子类表示为“a young s*man in a tank top holding abasketball”(一个穿着背心的年轻s*男子抱着一个篮球)。
220、从样本描述文本以及样本图像中,分别提取样本文本特征以及样本视觉特征。
例如,预训练的图像生成模型可以使用CLIP模型中的视觉编码器和文本编码器分别作为视觉编码网络以及文本编码网络。文本编码器模型输入模版为“photo of s*person”(某s*人的照片),其主要包括两部分内容:主体父类和子类。“photo of person”为主体父类描述,主要负责描述图片的内容,并规定内容主体所属的类别。“s*”为主体子类,代表当前图片中特定的人物。
230、根据样本文本特征以及样本视觉特征,得到样本语义引导特征。
相关技术中,通常直接使用样本文本特征作为噪声预测网络中UNet模型的条件,引导模型生成图像,这种方式存在控制能力和具象性差的问题。本申请实施例中,使用视觉编码器编码的视觉特征替换文本编码器编码后的“s*”对应的文本特征。此外,为了增强图片编码的特征空间范围,可以在不可训练的图像编码器后增加多层可训练FFN模型构成的Concept Transform(转换)模型。通过将图像特征引入文本特征,可以增强生成的图像的人物形象质量,即可以强调人物脸部形象质量以及生成图像和文本之间的相关度。
在应用于人物图像生成任务的场景时,任一样本图像的描述文本为“ayoung manin a tank top holding a basketball”,可以将该任务场景中父类关键词与描述文本中的词一一进行匹配,以查找到父类关键词man(男子)。对描述文本编码得到文本特征A1A2…Ai…Am,其中Ai表示man对应的特征。以此可以将样本图像的视觉特征B1B2…Bi…Bm添加在特征Ai之后,得到如图2a所示的语义引导特征A1A2…AiB1B2…Bi…Bm…Am。在训练过程中,由于调整网络也会被训练,因此,训练中其输出的视觉特征也会被不断调整(即可训练)。
240、向样本图像中加入样本噪声,得到加噪样本图像。
250、通过样本语义引导特征,对加噪样本图像进行噪声预测,得到预测样本噪声。
例如,可以将融合后的文本和图像特征(即语义引导特征)作为Unet(U形网络)模型的噪声预测条件,更好的指导UNet模型生成高质量图像。
本申请实施例中,可以使用LoRA(低秩自适应)模型作为低秩分解模块。LoRA模型是一种微调扩散模型的训练技术,通过在原始模型上做小的修改实现引入新概念的目的。本申请实施例中,通过LoRA模型对Unet模型中的交叉注意力层、以及交叉注意力层之后的FFN层进行微调,以不需要微调整个模型参数,仅微调该部分足以实现良好的性能。其中,交叉注意力是图像和文本交互层。
具体地,LoRA模型主要在Unet模型中的交叉注意力层、以及交叉注意力层之后的FFN层增加可训练的参数。且这些参数增量可通过矩阵分解变成更少的可训练参数,大大降低微调所需要训练的参数量。如图2d所示矩阵分解的处理过程,对应公式h=W0x+ΔWx=W0x+BAx,其中x代表输入,h代表输出,x和h均为d维,W0代表模型原始参数(即固定参数),ΔW代表***层的参数(即待调整参数),此处为了尽可能减少***层的参数量,提高效率,将待调整参数ΔW分解为BA两个低秩参数矩阵的乘积,B=0,A=N(0,σ2),如果W0是d×d维矩阵,即那么A和B矩阵的尺寸可以减小到d×r,其中r可以远小于d。理论上BA矩阵间相乘的秩r越小,***层的参数量也越小。
260、根据预测样本噪声与样本噪声之间的损失值,调整待训练的图像生成模型的待调整模型参数,得到训练后的图像生成模型。
损失函数用来评价模型的预测值和真实值不一样的程度,损失函数越好,通常模型的性能越好。例如,本申请实施例使用的损失函数为Reconstruction Loss,具体为ReconstructionLoss(xi,yi)=(xi-yi)2,其本质是MSELoss。该损失函数的目的是在文本条件下使输入xi噪声和模型预测yi噪声尽可能的相近,达到建立文本和图片映射的目的。
为了提升文本的具象性,本申请实施例在文本特征中引入视觉特征,由于这两种特征来自不同的特征空间,在传递到Unet模型后,容易造成两种特征影响程度不一致的问题。通常,主要表现在两种极端情况,图像特征较弱,达不到提升文本具象性的目的,模型生成人物形象质量差;图像特征较强,文本中其他词汇影响力较弱,达不到控制的效果,模型倾向于生成原始训练数据图。对此,在待训练的图像生成模型的训练过程中,除计算模型本身必须的损失函数外,本申请实施例在文本特征和图片特征间增加额外的损失函数,使图片领域特征和文本领域图片特征处于同一特征空间。具体地,该损失函数为TextImageEmbeddingLoss(xi,yi)=(xi-yi)2,本质是MSELoss,该损失函数的目的是让图片特征在保持本身语义的前提下,趋近于文本特征空间。
270、通过风格化图像,调整训练后的图像生成模型的待调整模型参数,得到风格化图像生成模型,以便将风格化图像生成模型用于生成目标图像。
在本申请实施例中,可以先使用大量图文对构建训练数据,来预训练图像生成模型,通过文本指导图像生成模型生成质量较优的图像。首先使用该模型初始化参数,使用构建的训练数据预训练模型。训练过程中每轮训练保存特征调整参数和待调整参数,用于后续微调模型。为了选择较优的预训练模型,通过包括损失函数、图像编码网络和文本编码网络输出的图像特征和文本特征的相似度的评估指标,选择损失函数低且文本和图片相似度高的模型作为后续微调模型的基底模型即预训练的图像生成模型。
具体地,模型微调过程可以为:加载待训练的图像生成模型的原始模型参数以及步骤260得到的调整后的待调整模型参数。可以重复前述步骤220~步骤260,使用一张人物图像如高质量的头像作为样本图像,对该调整后的待调整模型参数进一步进行微调,以学习人物形象。在加载待训练的图像生成模型的基础上,可以在GPU A100(图形处理器A100)上微调模型,仅需30s可实现将该人物图像嵌入到该预训练的图像生成模型中。在微调模型后,可以得到代表人物的图像特征以及调整后的模型参数,能够直接插拔到指定的风格模型上,生成如图2e所示高质量的融合风格的个性化人物图像。
由上可知,本申请实施例使用样本编码后的视觉特征替换原有的文本特征中的占位符,替换后该图像特征不会和其他文本特征混淆,能直接建立和图片的映射关系。当文本变长时,因存在准确的映射关系,不会减弱该部分的控制能力。以此,视觉特征能为模型提供更加具象的信息,提高模型生成人物的质量。此外,本申请实施例基于10万级人物训练数据集预先训练图像生成模型后,再进行微调,以提高微调模型的训练速度和模型生成的人物质量。经实验验证,本申请实施例的方案仅需1张人物图片,通过GPU A100,30秒内即可完成微调。
根据上述实施例所描述的方法,以下将作进一步详细说明。
在本实施例中,将以个性化小程序头像生成任务为例,对本申请实施例的图像生成方法进行详细说明。
如图3所示,一种图像生成方法,该方法可以由电子设备执行,具体流程如下:
310、获取用户输入的待处理描述文本以及用户上传的参考图像。
例如,本申请实施例提供的图像生成方法可以通过图像生成小程序实现。需说明的是,在待训练图像生成模型的训练过程中,自收集人物数据集合包括用户上传至小程序自建图库的自拍照。在获得用户许可或者同意时,可以获取用户A通过图像生成小程序输入的待处理描述文本A,以及从用户A上传至小程序自建图库的自拍照中任选一张作为参考图像A。或者,可以由用户A从其上传的自拍照中选择一张作为参考图像A。并可以响应于用户的图像生成操作生成的生成请求,调用训练后的图像生成模型。
320、从待处理描述文本以及参考图像中,分别提取文本特征以及视觉特征。
例如,可以将待处理描述文本A输入训练后的图像生成模型的文本编码网络,提取得到文本特征A1A2…Aj…Am。将参考图像A输入训练后的图像生成模型的视觉编码网络以及调整网络,提取得到视觉特征B1B2…Bi…Bm,其中Aj表示占位符s*对应的特征。
330、根据文本特征以及视觉特征,得到语义引导特征。
例如,可以将视觉特征替换文本特征中占位符“s*”对应的特征,得到语义引导特征A1A2…B1B2…Bi…Bm…Am。
340、从参考图像中提取初始隐向量。
例如,可以将参考图像A输入训练后的图像生成模型的图像编码网络,提取得到参考图像A的隐向量(即初始隐向量)。
350、向初始隐向量中加入样本噪声,得到加噪图像的加噪隐向量。
例如,可以将随机噪声添加到初始隐向量中,得到加噪隐向量。
360、通过语义引导特征,对加噪隐向量进行噪声预测,得到预测噪声。
例如,可以将加噪隐向量以及语义引导特征输入训练后的图像生成模型的噪声预测网络,通过语义引导特征引导噪声预测网络对加噪隐向量进行噪声预测,得到预测噪声。
370、基于预测噪声,对加噪图像进行修复,以生成个性化头像。
例如,可以使用加噪图像减去预测噪声,得到目标隐向量。再由训练后的图像生成模型的图像解码网络对目标隐向量解码得到个性化头像即目标图像。
由上可知,本申请实施例在个性化小程序图像生成任务中,通过参考图像对应的视觉特征能为模型提供更加具象的信息,以快速且高质的为用户提供个性化头像定制,提高用户体验。
为了更好地实施以上方法,本申请实施例还提供一种图像生成装置。
如图4所示,该图像生成装置可以包括获取单元410、提取单元420、组合单元430、加噪单元440、预测单元450以及生成单元460,如下:
(一)获取单元410
用于获取待处理描述文本以及参考图像。
(二)提取单元420
用于从待处理描述文本以及参考图像中,分别提取文本特征以及视觉特征。
在一些实施方式中,提取单元包括第一视觉提取子单元、第二视觉提取子单元以及第三视觉提取子单元,包括:
第一视觉提取子单元,用于从参考图像中提取初始视觉特征;
第二视觉提取子单元,用于获取特征调整参数;
第三视觉提取子单元,用于根据特征调整参数以及初始视觉特征,得到视觉特征。
(三)组合单元430
用于根据文本特征以及视觉特征,得到语义引导特征。
在一些实施方式中,该图像生成模型还包括添加单元,包括:
添加单元,用于在待处理描述文本中父类关键词的相邻位置添加占位符;
在一些实施方式中,组合单元包括替换子单元,包括:
替换子单元,用于将文本特征中,占位符对应的特征替换为视觉特征,得到语义引导特征。
(四)加噪单元440
用于向参考图像中加入参考噪声,得到加噪图像。
(五)预测单元450
用于通过语义引导特征,对加噪图像进行噪声预测,得到预测噪声。
在一些实施方式中,预测单元包括采样子单元、交叉注意力子单元以及注意力预测子单元,包括:
采样子单元,用于对加噪图像进行多尺度特征采样,得到多尺度的采样特征;
交叉注意力子单元,用于针对任一尺度的采样特征,对语义引导特征以及采样特征进行交叉注意力处理,得到注意力特征;
注意力预测子单元,用于由注意力特征得到预测噪声。
在一些实施方式中,交叉注意力子单元包括第一变换子单元以及加权子单元,包括:
第一变换子单元,用于针对任一尺度的采样特征,对语义引导特征进行线性变换,得到键向量以及值向量,以及对采样特征进行线性变换,得到查询向量;
加权子单元,用于通过查询向量以及键向量,对值向量进行注意力加权,得到注意力特征。
在一些实施方式中,预测子单元包括第二变换子单元以及变换预测子单元,包括:
第二变换子单元,用于对注意力特征进行线性变换,得到变换后的特征;
变换预测子单元,用于由变换后的特征得到预测噪声。
(六)生成单元460
用于基于预测噪声,对加噪图像进行修复,以生成目标图像。
在一些实施方式中,该图像生成装置还包括训练单元,训练单元包括训练获取子单元、训练提取子单元、训练组合子单元、训练加噪子单元、训练预测子单元以及训练调整子单元,包括:
训练获取子单元,用于获取训练样本集以及待训练的图像生成模型,训练样本集包括至少一个样本图像以及样本图像对应的样本描述文本;
训练提取子单元,用于从样本描述文本以及样本图像中,分别提取样本文本特征以及样本视觉特征;
训练组合子单元,用于根据样本文本特征以及样本视觉特征,得到样本语义引导特征;
训练加噪子单元,用于向样本图像中加入样本噪声,得到加噪样本图像;
训练预测子单元,用于通过样本语义引导特征,对加噪样本图像进行噪声预测,得到预测样本噪声;
训练调整子单元,用于根据预测样本噪声与样本噪声之间的损失值,调整待训练的图像生成模型的待调整模型参数,得到训练后的图像生成模型,训练后的图像生成模型用于生成目标图像。
在一些实施方式中,该图像生成装置还包括文本生成单元,文本生成单元包括第一文本生成子单元、第二文本生成子单元、第三文本生成子单元、第四文本生成子单元、第五文本生成子单元以及第六文本生成子单元,包括:
第一文本生成子单元,用于从样本图像中提取待处理图像特征;
第二文本生成子单元,用于将包含起始标记的描述文本序列作为待处理文本序列;
第三文本生成子单元,用于对待处理图像特征以及待处理文本序列进行注意力计算,得到注意力权重;
第四文本生成子单元,用于根据注意力权重,确定描述文本序列中下一词的生成概率;
第五文本生成子单元,用于根据下一词的生成概率,确定描述文本序列中下一词,以得到当前描述文本序列;
第六文本生成子单元,用于将当前描述文本序列作为待处理文本序列,返回执行步骤对待处理图像特征以及待处理文本序列进行注意力计算,得到注意力权重,以及后续步骤,直至生成结束标记,将当前描述文本序列作为样本图像对应的样本描述文本。
在一些实施方式中,该图像生成装置还包括参数确定单元,参数确定单元包括参数获取子单元、参数拆分子单元以及参数确定子单元,包括:
参数获取子单元,用于获取噪声预测参数,噪声预测参数用于对加噪样本图像进行噪声预测;
参数拆分子单元,用于将噪声预测参数拆分为固定参数和待调整参数;
参数确定子单元,用于将待调整参数作为待调整模型参数。
在一些实施方式中,参数确定子单元包括分解子单元以及确定子单元,包括:
分解子单元,用于对待调整参数进行低秩分解,得到多个低秩参数矩阵;
确定子单元,用于将多个低秩参数矩阵作为待调整模型参数。
在一些实施方式中,训练调整子单元包括损失计算子单元以及损失调整子单元,包括:
损失计算子单元,用于计算预测样本噪声与样本噪声之间的第一损失值,以及计算样本视觉特征与样本文本特征之间的第二损失值;
损失调整子单元,用于结合第一损失值以及第二损失值,调整待训练的图像生成模型的待调整模型参数,得到训练后的图像生成模型。
具体实施时,以上各个单元可以作为独立的实体来实现,也可以进行任意组合,作为同一或若干个实体来实现,以上各个单元的具体实施可参见前面的方法实施例,在此不再赘述。
由上可知,本实施例的图像生成装置包括获取单元、提取单元、组合单元、加噪单元、预测单元以及生成单元。其中,获取单元,用于获取待处理描述文本以及参考图像;提取单元,用于从待处理描述文本以及参考图像中,分别提取文本特征以及视觉特征;组合单元,用于根据文本特征以及视觉特征,得到语义引导特征;加噪单元,用于向参考图像中加入参考噪声,得到加噪图像;预测单元,用于通过语义引导特征,对加噪图像进行噪声预测,得到预测噪声;生成单元,用于基于预测噪声,对加噪图像进行修复,以生成目标图像。
由此,本申请实施例可以在图像生成过程中,将视觉特征与文本特征组合,由于视觉特征包含样本图像具象且细节的信息,视觉特征可以为文本添加更加具象且细节的语义信息,以增强语义信息的控制力。同时,将视觉特征引入语义引导特征中,使噪声预测过程中除关注文本特征外,还关注视觉特征中具象且细节的特征,以使得能够根据预测噪声尽可能还原出具象的图像,提高生成图像的质量。
本申请实施例还提供一种电子设备,该电子设备可以为终端、服务器等设备。
在本实施例中,将以电子设备是服务器为例进行详细描述,比如,如图5所示,其示出了本申请实施例所涉及的服务器的结构示意图,具体来讲:
该服务器可以包括一个或者一个以上处理核心的处理器510、一个或一个以上计算机可读存储介质的存储器520、电源530、输入模块540以及通信模块550等部件。本领域技术人员可以理解,图5中示出的服务器结构并不构成对服务器的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:
处理器510是该服务器的控制中心,利用各种接口和线路连接整个服务器的各个部分,通过运行或执行存储在存储器520内的软件程序和/或模块,以及调用存储在存储器520内的数据,执行服务器的各种功能和处理数据。在一些实施例中,处理器510可包括一个或多个处理核心;在一些实施例中,处理器510可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作***、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器510中。
存储器520可用于存储软件程序以及模块,处理器510通过运行存储在存储器520的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器520可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作***、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据服务器的使用所创建的数据等。此外,存储器520可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器520还可以包括存储器控制器,以提供处理器510对存储器520的访问。
服务器还包括给各个部件供电的电源530,在一些实施例中,电源530可以通过电源管理***与处理器510逻辑相连,从而通过电源管理***实现管理充电、放电、以及功耗管理等功能。电源530还可以包括一个或一个以上的直流或交流电源、再充电***、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
该服务器还可包括输入模块540,该输入模块540可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。
该服务器还可包括通信模块550,在一些实施例中通信模块550可以包括无线模块,服务器可以通过该通信模块550的无线模块进行短距离无线传输,从而为用户提供了无线的宽带互联网访问。比如,该通信模块550可以用于帮助用户收发电子邮件、浏览网页和访问流式媒体等。
尽管未示出,服务器还可以包括显示单元等,在此不再赘述。具体在本实施例中,服务器中的处理器510会按照如下的指令,将一个或一个以上的应用程序的进程对应的可执行文件加载到存储器520中,并由处理器510来运行存储在存储器520中的应用程序,从而实现本申请各实施例方法中的步骤。
由上可知,本申请实施例在图像生成过程中,将视觉特征与文本特征组合,由于视觉特征包含样本图像具象且细节的信息,视觉特征可以为文本添加更加具象且细节的语义信息,以增强语义信息的控制力。同时,将视觉特征引入语义引导特征中,使噪声预测过程中除关注文本特征外,还关注视觉特征中具象且细节的特征,以使得能够根据预测噪声尽可能还原出具象的图像,提高生成图像的质量。
本领域普通技术人员可以理解,上述实施例的各种方法中的全部或部分步骤可以通过指令来完成,或通过指令控制相关的硬件来完成,该指令可以存储于一计算机可读存储介质中,并由处理器进行加载和执行。
为此,本申请实施例提供一种计算机可读存储介质,其中存储有多条指令,该指令能够被处理器进行加载,以执行本申请实施例所提供的任一种图像生成方法中的步骤。例如,该指令可以执行本申请各实施例方法中的步骤。
其中,该存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取记忆体(RAM,Random Access Memory)、磁盘或光盘等。
根据本申请的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括多条指令,该指令存储在计算机可读存储介质中。电子设备的处理器从计算机可读存储介质读取该指令,处理器执行该指令,使得该电子设备执行上述实施例中提供的各种可选实现方式中提供的方法。
由于该存储介质中所存储的指令,可以执行本申请实施例所提供的任一种图像生成方法中的步骤,因此,可以实现本申请实施例所提供的任一种图像生成方法所能实现的有益效果,详见前面的实施例,在此不再赘述。
以上对本申请实施例所提供的一种图像生成方法、装置、电子设备、存储介质和程序产品进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
Claims (15)
1.一种图像生成方法,其特征在于,包括:
获取待处理描述文本以及参考图像;
从所述待处理描述文本以及所述参考图像中,分别提取文本特征以及视觉特征;
根据所述文本特征以及所述视觉特征,得到语义引导特征;
向所述参考图像中加入参考噪声,得到加噪图像;
通过所述语义引导特征,对所述加噪图像进行噪声预测,得到预测噪声;
基于所述预测噪声,对所述加噪图像进行修复,以生成目标图像。
2.如权利要求1所述的图像生成方法,其特征在于,所述视觉特征通过如下步骤得到:
从所述参考图像中提取初始视觉特征;
获取特征调整参数;
根据所述特征调整参数以及所述初始视觉特征,得到所述视觉特征。
3.如权利要求1所述的图像生成方法,其特征在于,所述根据所述文本特征以及所述视觉特征,得到语义引导特征之前,还包括:
在所述待处理描述文本中父类关键词的相邻位置添加占位符;
所述根据所述文本特征以及所述视觉特征,得到语义引导特征,包括:
将所述文本特征中,所述占位符对应的特征替换为所述视觉特征,得到所述语义引导特征。
4.如权利要求1所述的图像生成方法,其特征在于,所述通过所述语义引导特征,对所述加噪图像进行噪声预测,得到预测噪声,包括:
对所述加噪图像进行多尺度特征采样,得到多尺度的采样特征;
针对任一尺度的所述采样特征,对所述语义引导特征以及所述采样特征进行交叉注意力处理,得到注意力特征;
由所述注意力特征得到所述预测噪声。
5.如权利要求4所述的图像生成方法,其特征在于,所述针对任一尺度的所述采样特征,对所述语义引导特征以及所述采样特征进行交叉注意力处理,得到注意力特征,包括:
针对任一尺度的所述采样特征,对所述语义引导特征进行线性变换,得到键向量以及值向量,以及对所述采样特征进行线性变换,得到查询向量;
通过所述查询向量以及所述键向量,对所述值向量进行注意力加权,得到注意力特征。
6.如权利要求4所述的图像生成方法,其特征在于,所述由所述注意力特征得到所述预测噪声,包括:
对所述注意力特征进行线性变换,得到变换后的特征;
由所述变换后的特征得到所述预测噪声。
7.如权利要求1~6任一项所述的图像生成方法,其特征在于,所述方法,还包括:
获取训练样本集以及待训练的图像生成模型,所述训练样本集包括至少一个样本图像以及所述样本图像对应的样本描述文本;
从所述样本描述文本以及所述样本图像中,分别提取样本文本特征以及样本视觉特征;
根据所述样本文本特征以及所述样本视觉特征,得到样本语义引导特征;
向所述样本图像中加入样本噪声,得到加噪样本图像;
通过所述样本语义引导特征,对所述加噪样本图像进行噪声预测,得到预测样本噪声;
根据所述预测样本噪声与所述样本噪声之间的损失值,调整所述待训练的图像生成模型的待调整模型参数,得到训练后的图像生成模型,所述训练后的图像生成模型用于生成目标图像。
8.如权利要求7所述的图像生成方法,其特征在于,所述样本描述文本通过如下步骤得到:
从所述样本图像中提取待处理图像特征;
将包含起始标记的描述文本序列作为待处理文本序列;
对所述待处理图像特征以及所述待处理文本序列进行注意力计算,得到注意力权重;
根据所述注意力权重,确定所述描述文本序列中下一词的生成概率;
根据所述下一词的生成概率,确定所述描述文本序列中下一词,以得到当前描述文本序列;
将所述当前描述文本序列作为所述待处理文本序列,返回执行步骤对所述待处理图像特征以及所述待处理文本序列进行注意力计算,得到注意力权重,以及后续步骤,直至生成结束标记,将所述当前描述文本序列作为所述样本图像对应的所述样本描述文本。
9.如权利要求7所述的图像生成方法,其特征在于,所述根据所述预测噪声与所述样本噪声之间的损失值,调整所述待训练的图像生成模型的待调整模型参数,得到训练后的图像生成模型之前,还包括:
获取噪声预测参数,所述噪声预测参数用于对所述加噪样本图像进行噪声预测;
将所述噪声预测参数拆分为固定参数和待调整参数;
将所述待调整参数作为所述待调整模型参数。
10.如权利要求9所述的图像生成方法,其特征在于,所述将所述待调整参数作为所述待调整模型参数,包括:
对所述待调整参数进行低秩分解,得到多个低秩参数矩阵;
将所述多个低秩参数矩阵作为所述待调整模型参数。
11.如权利要求7所述的图像生成方法,其特征在于,所述根据所述预测样本噪声与所述样本噪声之间的损失值,调整所述待训练的图像生成模型的待调整模型参数,得到训练后的图像生成模型,包括:
计算所述预测样本噪声与所述样本噪声之间的第一损失值,以及计算所述样本视觉特征与所述样本文本特征之间的第二损失值;
结合所述第一损失值以及所述第二损失值,调整所述待训练的图像生成模型的待调整模型参数,得到所述训练后的图像生成模型。
12.一种图像生成装置,其特征在于,包括:
获取单元,用于获取待处理描述文本以及参考图像;
提取单元,用于从所述待处理描述文本以及所述参考图像中,分别提取文本特征以及视觉特征;
组合单元,用于根据所述文本特征以及所述视觉特征,得到语义引导特征;
加噪单元,用于向所述参考图像中加入参考噪声,得到加噪图像;
预测单元,用于通过所述语义引导特征,对所述加噪图像进行噪声预测,得到预测噪声;
生成单元,用于基于所述预测噪声,对所述加噪图像进行修复,以生成目标图像。
13.一种电子设备,其特征在于,包括处理器和存储器,所述存储器存储有多条指令;所述处理器从所述存储器中加载指令,以执行如权利要求1~11任一项所述的图像生成方法中的步骤。
14.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有多条指令,所述指令适于处理器进行加载,以执行权利要求1~11任一项所述的图像生成方法中的步骤。
15.一种计算机程序产品,包括多条指令,其特征在于,所述指令被处理器执行时实现权利要求1~11任一项所述的图像生成方法中的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311399398.6A CN117437317A (zh) | 2023-10-25 | 2023-10-25 | 图像生成方法、装置、电子设备、存储介质和程序产品 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311399398.6A CN117437317A (zh) | 2023-10-25 | 2023-10-25 | 图像生成方法、装置、电子设备、存储介质和程序产品 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117437317A true CN117437317A (zh) | 2024-01-23 |
Family
ID=89549292
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311399398.6A Pending CN117437317A (zh) | 2023-10-25 | 2023-10-25 | 图像生成方法、装置、电子设备、存储介质和程序产品 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117437317A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117710510A (zh) * | 2024-02-04 | 2024-03-15 | 支付宝(杭州)信息技术有限公司 | 一种图像生成方法及装置 |
-
2023
- 2023-10-25 CN CN202311399398.6A patent/CN117437317A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117710510A (zh) * | 2024-02-04 | 2024-03-15 | 支付宝(杭州)信息技术有限公司 | 一种图像生成方法及装置 |
CN117710510B (zh) * | 2024-02-04 | 2024-06-11 | 支付宝(杭州)信息技术有限公司 | 一种图像生成方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2020228376A1 (zh) | 文本处理方法、模型训练方法和装置 | |
CN112487182B (zh) | 文本处理模型的训练方法、文本处理方法及装置 | |
CN111246256B (zh) | 基于多模态视频内容和多任务学习的视频推荐方法 | |
CN113761153B (zh) | 基于图片的问答处理方法、装置、可读介质及电子设备 | |
CN113239169B (zh) | 基于人工智能的回答生成方法、装置、设备及存储介质 | |
CN110209774A (zh) | 处理会话信息的方法、装置及终端设备 | |
CN115223020B (zh) | 图像处理方法、装置、设备、存储介质及计算机程序产品 | |
CN113064968B (zh) | 一种基于张量融合网络的社交媒体情感分析方法及*** | |
CN113704460A (zh) | 一种文本分类方法、装置、电子设备和存储介质 | |
CN116862000B (zh) | 一种生成式人工智能的因果思维链生成方法、装置及设备 | |
CN114282013A (zh) | 一种数据处理方法、装置及存储介质 | |
CN117437317A (zh) | 图像生成方法、装置、电子设备、存储介质和程序产品 | |
Khurram et al. | Dense-captionnet: a sentence generation architecture for fine-grained description of image semantics | |
CN116975350A (zh) | 图文检索方法、装置、设备及存储介质 | |
CN117315070A (zh) | 图像生成方法、装置、电子设备、存储介质和程序产品 | |
CN114282528A (zh) | 一种关键词提取方法、装置、设备及存储介质 | |
CN116882450A (zh) | 问答模型的编辑方法、装置、电子设备和存储介质 | |
CN117216185A (zh) | 分发内容的评论生成方法、装置、设备及存储介质 | |
CN116258147A (zh) | 一种基于异构图卷积的多模态评论情感分析方法及*** | |
CN113741759B (zh) | 评论信息的展示方法、装置、计算机设备和存储介质 | |
CN116955599A (zh) | 一种类目确定的方法、相关装置、设备以及存储介质 | |
CN114443916A (zh) | 一种面向试验数据的供需匹配方法及*** | |
CN113821610A (zh) | 信息匹配方法、装置、设备及存储介质 | |
Jaiswal et al. | Enhancing Image Captioning Using Deep Convolutional Generative Adversarial Networks | |
CN113762322B (zh) | 基于多模态表示的视频分类方法、装置和设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication |