CN116797684B - 图像生成方法、装置、电子设备及存储介质 - Google Patents
图像生成方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN116797684B CN116797684B CN202311053835.9A CN202311053835A CN116797684B CN 116797684 B CN116797684 B CN 116797684B CN 202311053835 A CN202311053835 A CN 202311053835A CN 116797684 B CN116797684 B CN 116797684B
- Authority
- CN
- China
- Prior art keywords
- target object
- text
- image
- sample
- target
- 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 125
- 238000003860 storage Methods 0.000 title claims abstract description 21
- 239000003607 modifier Substances 0.000 claims abstract description 133
- 238000012549 training Methods 0.000 claims description 93
- 238000012545 processing Methods 0.000 claims description 68
- 230000009467 reduction Effects 0.000 claims description 48
- 230000008569 process Effects 0.000 claims description 43
- 238000000605 extraction Methods 0.000 claims description 40
- 238000009792 diffusion process Methods 0.000 claims description 35
- 239000011159 matrix material Substances 0.000 claims description 29
- 230000000442 meristematic effect Effects 0.000 claims description 6
- 238000010586 diagram Methods 0.000 description 16
- 230000006870 function Effects 0.000 description 14
- 238000013473 artificial intelligence Methods 0.000 description 12
- 238000004891 communication Methods 0.000 description 11
- 238000004364 calculation method Methods 0.000 description 10
- 230000002093 peripheral effect Effects 0.000 description 10
- 238000012986 modification Methods 0.000 description 9
- 230000004048 modification Effects 0.000 description 9
- 238000011946 reduction process Methods 0.000 description 8
- 238000010801 machine learning Methods 0.000 description 6
- 230000000007 visual effect Effects 0.000 description 6
- 244000194101 Ginkgo biloba Species 0.000 description 5
- 238000004590 computer program Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 5
- 235000011201 Ginkgo Nutrition 0.000 description 4
- 235000008100 Ginkgo biloba Nutrition 0.000 description 4
- 241000282414 Homo sapiens Species 0.000 description 4
- 238000013528 artificial neural network Methods 0.000 description 4
- 230000003416 augmentation Effects 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 241000251468 Actinopterygii Species 0.000 description 3
- 230000006978 adaptation Effects 0.000 description 3
- QVFWZNCVPCJQOP-UHFFFAOYSA-N chloralodol Chemical compound CC(O)(C)CC(C)OC(O)C(Cl)(Cl)Cl QVFWZNCVPCJQOP-UHFFFAOYSA-N 0.000 description 3
- 238000005457 optimization Methods 0.000 description 3
- 241000282326 Felis catus Species 0.000 description 2
- 241000282412 Homo Species 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 2
- 239000000919 ceramic Substances 0.000 description 2
- 238000013527 convolutional neural network Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000003058 natural language processing Methods 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 235000017166 Bambusa arundinacea Nutrition 0.000 description 1
- 235000017491 Bambusa tulda Nutrition 0.000 description 1
- 241000282465 Canis Species 0.000 description 1
- 241000282461 Canis lupus Species 0.000 description 1
- 101100481876 Danio rerio pbk gene Proteins 0.000 description 1
- 238000013256 Gubra-Amylin NASH model Methods 0.000 description 1
- 241000594011 Leuciscus leuciscus Species 0.000 description 1
- 101100481878 Mus musculus Pbk gene Proteins 0.000 description 1
- 208000025174 PANDAS Diseases 0.000 description 1
- 208000021155 Paediatric autoimmune neuropsychiatric disorders associated with streptococcal infection Diseases 0.000 description 1
- 240000000220 Panda oleosa Species 0.000 description 1
- 235000016496 Panda oleosa Nutrition 0.000 description 1
- 241000070023 Phoenicopterus roseus Species 0.000 description 1
- 244000082204 Phyllostachys viridis Species 0.000 description 1
- 235000015334 Phyllostachys viridis Nutrition 0.000 description 1
- 241000135164 Timea Species 0.000 description 1
- 241001125862 Tinca tinca Species 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 239000011425 bamboo Substances 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 238000005452 bending Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000013145 classification model Methods 0.000 description 1
- 238000000354 decomposition reaction Methods 0.000 description 1
- 238000013136 deep learning model Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000005284 excitation Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 239000013505 freshwater Substances 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 230000037308 hair color Effects 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 239000003550 marker Substances 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000000877 morphologic effect Effects 0.000 description 1
- 238000010422 painting Methods 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 230000002194 synthesizing effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 239000010409 thin film Substances 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 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
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/22—Matching criteria, e.g. proximity measures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/25—Fusion techniques
- G06F18/253—Fusion techniques of extracted features
-
- 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/284—Lexical analysis, e.g. tokenisation or collocates
-
- 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
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/0475—Generative networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/088—Non-supervised learning, e.g. competitive learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/09—Supervised learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/001—Texturing; Colouring; Generation of texture or colour
-
- 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
Abstract
本申请实施例提供了一种图像生成方法、装置、电子设备及存储介质,方法包括:获取目标对象的修饰词,基于目标对象的修饰词和目标对象的类别名称进行文本扩充,得到目标对象的描述文本;利用文生图模型根据目标对象的描述文本,生成包括目标对象的第一图像。在上述方法中,在基于描述文本生成包括目标对象的图像时实现使基于目标对象的描述文本所生成的图像呈现的内容与目标对象的描述文本呈现的内容基本相同,或者内容相似度较高,相对于目标对象的修饰词,目标对象的描述文本中呈现的细节更多,因此,利用目标对象的描述文本生成包括目标对象的图像也包括更多的细节信息,故,通过上述方法生成的包括目标对象的图像更准确,且内容更丰富。
Description
技术领域
本申请涉及人工智能技术领域,更具体地,涉及一种图像生成方法、装置、电子设备及存储介质。
背景技术
目前采用的扩充图像的方法通常有两种,一种是利用扩散生成式模型(Diffusionmodel)来扩充图像。另一中是利用GAN模型来扩充图像。但是,相关技术中,在采用上述扩充图像的方法获得的图像通常较为单一,缺乏图像细节,甚至由于同一名称可能存在多种意思,而造成扩充的图像不准确的问题。
发明内容
有鉴于此,本申请实施例提出了一种图像生成方法、装置、电子设备及存储介质,可以有效提升扩充后的图像的准确性和内容的丰富度。
第一方面,本申请实施例提供了一种图像生成方法,该方法包括:获取目标对象的修饰词;基于所述目标对象的修饰词和所述目标对象的类别名称进行文本扩充,得到所述目标对象的描述文本;利用文生图模型根据所述目标对象的描述文本,获得包括所述目标对象的第一图像。
第二方面,一种图像生成装置,所述装置包括修饰词获取模块、文本扩充模块以及图像生成模块。修饰词获取模块,用于获取目标对象的修饰词;文本扩充模块,用于基于所述目标对象的修饰词和所述目标对象的类别名称进行文本扩充,得到所述目标对象的描述文本;图像生成模块,用于利用文生图模型根据所述目标对象的描述文本,获得包括所述目标对象的第一图像。
在一种可实施方式中,所述修饰词获取模块包括第一编码子模块、第二编码子模块、相似度计算子模块、特征选取子模块以及修饰词确定子模块。第一编码子模块,用于对所述目标对象的类别名称进行语义编码,得到目标语义特征;第二编码子模块,用于对目标数据库中的多个候选类别名称分别进行语义编码,得到各候选类别名称对应的候选语义特征;相似度计算子模块,用于计算各所述候选语义特征与所述目标语义特征之间的相似度;特征选取子模块,用于根据所述相似度,从多个所述候选语义特征中确定目标候选语义特征;修饰词确定子模块,用于将所述目标数据库中与目标候选语义特征所对应的候选类别名称相关联的修饰词,确定为所述目标对象的修饰词。
在一种可实施方式中,文本扩充模块,包括分组子模块和文本扩充子模块。分组子模块,用于对目标对象的多个修饰词进行分组,获得至少一个修饰词组,每个修饰词组包括至少一个修饰词;文本扩充子模块,用于针对每个修饰词组,向训练后的语言模型输入参考示例、修饰词组以及所述类别名称,所述参考示例中包括输入参考示例词、包括所述输入参考示例词的输出参考示例句;通过所述训练后的语言模型基于所述参考示例、修饰词组以及所述类别名称进行文本扩充,输出包括所述修饰词组和所述类别名称的描述文本,所述描述文本与所述输出参考示例句的句式相同所述描述文本与所述输出参考示例句的句式相同。
在一种可实施方式中,所述文本扩充模块还包括词组更新子模块,所述词组更新子模块用于向所述修饰词组中增加与所述目标对象对应的话题词。
在一种可实施方式中,所述装置还包括微调训练模块,用于利用样本对象对应的描述样本文本和该描述样本文本对应的样本图像,对文生图模型进行微调训练。
在一种可实施方式中,所述文生图模型包括文本特征提取网络和扩散网络,所述装置还包括:样本获取模块、加噪处理模块、特征提取模块、降噪处理模块、损失获得模块以及参数调整模块。样本获取模块,用于获取样本对象对应的描述样本文本和该描述样本文本对应的样本图像,所述样本图像中包括样本对象;加噪处理模块,用于利用预训练后的扩散网络对所述样本图像进行多次加噪处理,得到多个样本噪声图像,所述多个样本噪声图像包括最后一次加噪生成的高斯噪声图像;特征提取模块,用于利用预训练后的文本特征提取网络对描述样本文本进行特征提取,得到目标样本信息特征;降噪处理模块,用于利用预训练后扩散网络基于所述目标样本信息特征对高斯噪声图像进行降噪处理,得到目标降噪样本图像;损失获得模块,用于基于所述目标降噪样本图像和所述样本图像获得模型损失;参数调整模块,用于基于所述模型损失,调整预训练后的文生图模型的参数。
在本申请的一种可实施方式中,特征提取模块还用于对所述描述样本文本进行特征提取处理,得到初始样本信息特征;利用降维矩阵对所述描述样本文本对进行降维处理,得到第一样本信息特征;利用升维矩阵对所述第一样本信息特征进行升维处理,得到第二样本信息特征;将所述初始样本信息特征与所述第二样本信息特征进行融合,得到目标样本信息特征。
在一种可实施方式中,参数调整模块,还用于基于所述模型损失,调整所述文生图模型中降维矩阵的参数和所述升维矩阵的参数。
在一种可实施方式中,所述特征提取模块,还用于利用微调训练后的文本特征提取网络对描述文本进行特征提取,得到目标信息特征;所述降噪处理模块,还用于利用微调训练后的扩散网络基于所述目标信息特征对高斯噪声进行降噪处理,得到包括所述目标对象的第一图像。
在一种可实施方式中,所述装置还包括定义信息获取模块,所述定义信息获取模块,用于获取目标对象的类别定义信息;所述图像生成模块,还用于利用文生图模型根据所述目标对象的类别定义信息,生成包括目标对象的第二图像。
在一种可实施方式中,所述装置还包括模型训练模块,所述模型训练模块用于利用所述第一图像和第二图像对图像处理模型进行训练,得到训练后的图像处理模型。
第三方面,本申请实施例提供了一种电子设备,包括处理器以及存储器;一个或多个程序被存储在所述存储器中并被配置为由所述处理器执行以实现上述的方法。
第四方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有程序代码,其中,在所述程序代码被处理器运行时执行上述的方法。
第五方面,本申请实施例提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质获取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述的方法。
本申请实施例提供的一种图像生成方法、装置、电子设备及存储介质。方法包括:获取目标对象的修饰词;基于所述目标对象的修饰词和所述目标对象的类别名称进行文本扩充,得到所述目标对象的描述文本;利用文生图模型根据所述目标对象的描述文本,获得包括所述目标对象的第一图像。在上述方法中,通过基于修饰词和目标对象的类别名称生成描述文本,描述文本中通过该目标对象的类别名称指代目标对象,这样,描述文本实际上是用于描述目标对象的文本,这样保证描述文本与目标对象具有一致性,在基于描述文本生成包括目标对象的图像时实现使基于目标对象的描述文本所生成的图像呈现的内容与目标对象的描述文本呈现的内容基本相同,或者内容相似度较高,此外,相对于目标对象的修饰词,目标对象的描述文本中呈现的细节更多,因此,利用目标对象的描述文本生成包括目标对象的图像也包括更多的细节信息,故,通过采用本申请的上述方法生成的包括目标对象的图像更准确,且内容更丰富。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了本申请实施例提供的一种图像生成方法的应用场景图;
图2示出了本申请实施例提出的一种图像生成方法的流程示意图;
图3示出了本申请实施例提出的一种图像生成方法的流程框图;
图4示出了本申请实施例提出的一种图像生成方法的另一流程框图;
图5示出了本申请实施例提出的一种类别定义信息的获取流程框图;
图6示出了本申请实施例提出的一种图像生成方法的另一流程示意图;
图7示出了本申请实施例提出的一种目标对象的修饰词的获取流程框图;
图8示出了本申请实施例提出的一种图像生成方法的另一流程示意图;
图9示出了本申请实施例提出的一种图像生成方法的又一流程示意图;
图10示出了本申请实施例提供的一种文生图模型的示意图;
图11示出了本申请实施例提供的一种微调阶段的训练示意图;
图12示出了本申请实施例提供的一个描述文本对应的图像;
图13示出了本申请实施例提供的另一个描述文本对应的图像;
图14示出了本申请实施例提供的又一个描述文本对应的图像;
图15示出了本申请实施例提出的一种图像生成装置的连接框图;
图16示出了用于执行本申请实施例的方法的电子设备的结构框图。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的参考示例;相反,提供这些实施方式使得本申请将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。
此外,所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施例中。在下面的描述中,提供许多具体细节从而给出对本申请的实施例的充分理解。然而,本领域技术人员将意识到,可以实践本申请的技术方案而没有特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知方法、装置、实现或者操作以避免模糊本申请的各方面。
附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解,而有的操作/步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。
需要说明的是:在本文中提及的“多个”是指两个或两个以上。“和/或”描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
随着人工智能技术研究和进步,人工智能技术在多个领域展开研究和应用,并发挥越来越重要的价值。
人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式作出反应的智能机器。以人工智能应用在机器学习上为例进行说明:
其中,机器学习(Machine Learning, ML)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。本申请的方案主要是利用机器学习进行文本扩充,以及利用机器学习基于文本生成图像等。
预训练模型(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)重要工具,也可以作为连接多个具体任务模型的通用接口。
本申请中也可以采用上述预训练的模型,如在利用描述文本生成图像时,可以利用小样本对预训练的文生图模型进行微调,之后可以采用微调训练后的文生图模型生成包括目标对象的图像。
下面说明申请提供的生成包括目标对象的图像的示例性应用,本申请提供的图像生成方法可以应用于如图1所示的应用环境中的服务器中。
图1是根据本申请一实施例示出的应用场景的示意图,如图1所示,该应用场景包括终端设备10和通过网络与终端设备10通信连接的服务器20。
终端设备10,终端设备10具体可以是手机、电脑或平板电脑、车载终端、智能电视等可以与用户进行交互的设备,终端设备10可以运行用于展示数据(如,展示生成的图像)的客户端,用户还可以通过该客户端输入目标对象的类别名称或修饰词等。
网络可以是广域网或者局域网,或者是二者的组合。
服务器20可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN、以及大数据和人工智能平台等基础云计算服务的云服务器。
若利用如图1中的终端设备10和服务器20进行图像生成,终端设备10可以向服务器20上传目标对象的类别名称,服务器20在接收到目标对象的类别名称后,可以执行如下步骤:基于目标对象的类别名称获取目标对象的修饰词;基于目标对象的修饰词和目标对象的类别名称进行文本扩充,得到目标对象的描述文本;利用文生图模型根据目标对象的描述文本,获得包括目标对象的第一图像。服务器20在生成包括目标对象的图像后还可以将包括目标对象的第一图像发送至终端设备10,以在终端设备10显示第一图像,服务器20还可以基于第一图像执行后续的图像处理操作。
采用本申请的图像生成方法,通过基于修饰词和目标对象的类别名称生成描述文本,在基于描述文本生成包括目标对象的图像时实现使基于目标对象的描述文本所生成的图像呈现的内容与目标对象的描述文本呈现的内容基本相同,或者内容相似度较高,此外,相对于目标对象的修饰词,目标对象的描述文本中呈现的细节更多,因此,利用目标对象的描述文本生成包括目标对象的第一图像也包括更多的细节信息,故,通过采用本申请的上述方法生成的包括目标对象的图像更准确,且内容更丰富。
下面将结合附图具体描述本申请的各实施例。
请结合参阅图2,图2所示为本申请还提供一种图像生成方法,可以应用于电子设备,该电子设备可以是上述的终端设备10或服务器20,该方法包括:
步骤S110:获取目标对象的修饰词。
其中,目标对象可以是任意需要生成图像的对象,该对象具体可以是某种物体,目标对象的修饰词可以是用于描述该目标对象的属性和/或状态的词语,如描述对象的颜色、形状、体积、动作等的形容词。例如,若目标对象为银杏,银杏的修饰词可以是用于描述银杏的形态特征(例如树叶、种子、枝干等)、生长环境、生长习性等的词语,银杏的修饰词例如扇形叶、高、灰褐色、(树冠)圆锥形、嫩绿(春夏时叶的颜色)、黄色(秋季时的颜色)、行道树、飘落、晃动等等。上述的获取目标对象的修饰词的方式可以有多种,例如,可以基于预先存储的对象与修饰词的对应关系中获取目标对象的修饰词;也可以是接收用户输入的目标对象的修饰词;还可以是基于目标对象对应的类别,从数据集中获取该类别对应的修饰词,该数据集可以是任意包括了不用对象类别和每种对象类别对应的描述信息的数据集,例如,可以是Visual Genome(VG)数据集或者ImageNet 图像标注数据集等。
应当理解,上述获取目标对象的修饰词的方式仅为示意性的,还可以有更多的获取方式,此处不作具体限定。
具体的,若上述获取目标对象的修饰词是基于目标对象对应的类别从数据集中获取该类别对应的修饰词,请结合参阅图3,为了得到每个类别的常见的属性或状态特征,本实施例中的数据集可以是visual genomse(VG)数据集,VG数据集中标注有大量的名词类别和其伴随出现的形容词或名词属性及状态,在获得目标对象对应的类别名后,通过从VG数据集中查找到目标对象的类别名,并从目标对象的类别名伴随出现的形容词或名词属性及状态,作为该目标对象的修饰词。
其中,VG数据集中包含每个图片中出现的主要物体的状态及属性描述,有形容词也有名词的文本段落。通过读取该VG数据集官方提供的”attributes.json”文件即可获得每个目标类别及其属性。比如,”tree”树木的名词通常伴随的形容词有:”sparse”,”green”,”growing”,”thin”,”tall”,”large”,”leafless”,”leafy”,”bushy”,”dense”,”palm trees”等等。
步骤S120:基于目标对象的修饰词和目标对象的类别名称进行文本扩充,得到目标对象的描述文本。
在本申请中,进行文本扩充是指根据目标对象的修饰词和目标对象的类别名称,扩充生成用于描述目标对象的语句,该语句即为目标对象的描述文本。可以理解的是,目标对象的描述文本中包括目标对象的修饰词和目标对象的类别名称。在目标对象的描述文本中目标对象的类别名称用于指代该描述文本描述的对象,即用于指代目标对象。其中,目标对象的类别名称可以是目标对象的名称,或者目标对象在某一级分类类目下所属类目的类目名称。例如,若目标对象为贵宾犬,可以将“贵宾犬”作为其类别名称,也可以将“小型犬”、“狗”等词作为其类别名称。其中,一描述文本中可以包括目标对象的一个或者多个修饰词。
在一些实施例中,可以根据目标对象的修饰词在语句模板集合中进行语句模板匹配,确定与目标对象的修饰词相匹配的目标语句模板,之后,将目标对象的类别名称填充到目标语句模板中,得到目标对象的描述文本。其中,语句模板集合包括多个语句模板,语句模板中包括至少一个修饰词,例如,语句模板可以是:XX在微风中摇曳;语句模板又例如:XX被风吹弯了腰;又例如:XX的叶子在秋天黄橙橙的。以上所列举的语句模板中的修饰词例如“摇曳”、弯、黄橙橙等,以上所列举的语句模板仅仅是示例性举例,不能认为是对本申请使用范围的限制。若目标对象为银杏,基于目标对象的修饰词“摇曳”,所匹配到的目标语句模板为:XX在微风中摇曳,将目标对象的类别名称添加到该目标语句模板中所得到的描述文本为:银杏在微风中摇曳。
在一些实施例中,可以是将目标对象的修饰词在语句模板中进行词匹配,将包括目标对象的修饰词的语句模板,确定为与目标对象的修饰词相匹配的目标语句模板。在一些实施例中,可以是将目标对象的修饰词与语句模板中的词进行语义相似度计算,若一语句模板中存在与目标对象的修饰词之间的语义相似度超过语义相似度阈值的词,将该语句模板确定为目标语句模板。在一些实施例中,在通过语义相似度计算的方式确定目标语句模板的情况下,可能存在目标语句模板中的修饰词与目标对象的修饰词是语义相近或者语义相同的词,但是两个词并不一样,在此种情况下,在将目标对象的类别名称添加到目标语句模板后,还可以将目标语句模板中与目标对象的修饰词语义相似度超过语义相似度阈值的目标词替换为目标对象的修饰词,将替换后的语句作为目标对象的描述文本。
在一种可实施方式中,对目标对象的修饰词和目标对象的类别进行文本扩充的方式可以是,利用预先训练的语言模型并借助参考示例让语言模型来进行文本扩充,得到目标对象的描述文本。其中,目标对象的描述文本包括目标对象的修饰词和类别名称。
上述的参考示例可以是任意使自然语言模型能够学习参考的示例。示例性的,上述的参考示例可以是ICL(in-context learning,上下文学习)范式,其中,ICL范式是一种学习范式,它允许语言模型通过以演示形式组织的若干个示例或者指令来学习任务。In-context learning的核心在于从任务相关的类比样本中学习,ICL要求若干参考示例以特定形式进行演示,然后将当前输入(修饰词组)跟上述参考示例拼接到一起作为语言模型的输入。本质上,它利用训练有素的语言模型根据演示的示例来估计候选答案的可能性。简单理解,就是通过若干个完整的示例,让语言模型更好地理解当前的任务,做出更加准确的预测,从而获得更准确的用于描述目标对象的描述文本。
应当理解,上述进行文本扩充,得到目标对象的描述文本的方式仅为示意性的,还可以有更多的实施方式,在本申请不作具体限定。
步骤S130:利用文生图模型根据目标对象的描述文本,获得包括目标对象的第一图像。
在步骤S130中,将目标对象的描述文本作为图像生成的提示语,以生成目标目标对象的第一图像,基于目标对象的描述文本所生成的第一图像呈现的内容与目标对象的描述文本呈现的内容基本相同,或者内容相似度较高。所获得的包括目标对象的第一图像可以通过目标对象的描述文本来进行描述。
请再次参阅图3,应当理解,上述步骤S130还可以从目标数据库中查找与目标对象的描述文本对应的图像。其中,该目标数据库中可以包括多个文本和与每个文本对应的图像,在该种实施方式下,可以将数据库中的文本与描述文本进行相似度计算,以基于数据库中各文本与描述文本的相似度中数据库中确定目标文本,从目标文本对应的图像中获取包括目标对象的第一图像。
其中,上述的文生图模型可以是对初始模型进行训练得到。对初始扩散模型进行预训练时可以采用无监督预训练,也可以采用有监督预训练。其中,无监督预训练是指在没有标签的数据集上进行训练,通常使用自编码器或GAN等方法进行。无监督预训练的目的是学习数据中的一些重要特征,这些特征通常可以用于许多不同的任务,因此可以作为预训练模型的初始参数。有监督预训练是指在一个大规模的标记数据集上进行训练,例如ImageNet数据集。有监督预训练的目的是训练一个具有很好泛化性能的模型,以便在许多不同的任务上进行微调。有监督预训练通常采用常见的深度学习模型,例如卷积神经网络(CNN)或循环神经网络(RNN),并使用大规模数据集上的有标签数据进行训练。通过对初始模型进行训练得到预训练的文生图模型,可以减少对标记数据的需求,提高模型的泛化能力,同时可以加快模型的训练速度和降低模型的过拟合风险。
若训练后的文生图模型可以是对初始模型采用有监督的训练方式进行训练得到,则具体的训练过程可以是:获取大量成对的描述样本和相应图像样本的数据集进行训练。在训练过程中,文生图模型的文本特征提取网络从描述样本中提取样本文本特征,然后使用生成器网络合成与该样本文本特征相对应的图像,以实现将样本文本特征进行映射得到视觉特征,也即得到最终生成的图像。在上述生成图像的过程涉及到语义理解和图像合成。在生成图像后,基于生成的图像和样本图像计算模型损失,并基于模型损失调整模型参数,以得到训练后的文生图模型。在文生图模型训练完成后即可用于根据新文本描述中生成图像。
上述的文生图模型还可以是微调训练后文生图模型。微调训练是指通过与当前任务对应的训练数据集训练预训练后的模型,并使模型的参数适应当前任务对应的训练数据集的训练过程。
在本申请实施例中,微调训练可以是指,在获得基于上述的训练过程得到的预训练的文生图模型后,将预训练模型加载到内存中,并可以进行一定的修改,例如修改部分网络的特征输入输出维度等或加入一些模型参数(如,特征的升维矩阵和降维矩阵)参与训练。使用新的数据集(如,与当前的文生图任务相关的数据集)对修改后的预训练模型进行训练,通常使用较小的学习率进行训练,并且在少量的迭代中进行,同时能够获得更好的性能。
通过采用本申请实施例中的图像生成方法,在生成包括目标对象的第一图像的过程中,通过基于修饰词和目标对象的类别名称生成描述文本,描述文本中通过该目标对象的类别名称指代目标对象,这样,描述文本实际上是用于描述目标对象的文本,这样保证描述文本与目标对象具有一致性,在基于描述文本生成包括目标对象的第一图像时实现使基于目标对象的描述文本所生成的第一图像呈现的内容与目标对象的描述文本呈现的内容基本相同,或者内容相似度较高,此外,相对于目标对象的修饰词,目标对象的描述文本中呈现的细节更多,因此,利用目标对象的描述文本生成包括目标对象的第一图像也包括更多的细节信息,故,通过采用本申请的上述方法生成的包括目标对象的第一图像更准确,且内容更丰富。
请参阅图4,为进一步提升生成的图像的多样性,在本申请实施例中,方法还包括:
获取目标对象的类别定义信息。
目标对象的类别定义信息是指目标对象的类别名称的定义文本,例如目标对象的类别名称为“鱼”,则该类别定义信息即为鱼的定义文本。该定义文本也可以理解为对目标对象的类别名称的定义。
其中,获取目标对象的类别定义信息的方式可以是,基于目标对象的类别名称,从预设对象名称与定义信息对应关系库中获取目标对象的类别定义信息,其中该对应关系库可以是任意存储有对象类别和对象类别对应的定义信息的数据库。该对应关系库也可以是字典,该字典包括多个名称,以及名称对象的定义信息。
示例性的,上述的数据库可以是当前开源的WordNet语义层级结构字典。例如,如图4所示,基于目标对象的类别名称,在WordNet中查询,即在WordNet中查询目标对象的类别名称,可以从WordNet中查询到目标对象的类别名称,以及与目标对象的类别名称相关联的定义文本,该定义文本即为目标对象的类别定义信息。例如,给定某个类别名比如“tenchtinca”,通过wordnet的synset(同义词)检索匹配到最接近的sysnet的id位置为n01440764,抽取该类别名的定义描述为 “freshwater dace like game fish of europeand western asia noted for ability to survive outside water.”。又比如类别“mouse”(鼠标),通过wordnet的synset检索匹配到最接近的synset的id为n03793489,抽取其类别名的定义描述为“a hand operated electronic device that controls thecoordinates of a cursor on your computer screen as you move it around on apad; on the bottom of the device is a ball that rolls on the surface of thepad.”。通过详细的定义描述即可解除目标对象描述上的歧义。如图5所示,示出了目标对象的类别名为“dog”,通过wordnet的synset检索,所得到目标对象的类别定义信息的示意图,图5中,return中的“ a member ot the genus Canis(probably descended fronthecoumon wolf)that has beendomesticated by man sinceprebistoric timea;oceura inoany breeds”即为类别定义信息。
利用文生图模型根据目标对象的类别定义信息生成包括目标对象的第二图像。
在本实施例中,将目标对象的类别定义信息也作为图像生成提示语,从而,可以丰富得到的图像。可以理解的是,基于目标对象的类别定义信息生成的第二图像呈现的内容也是与该类别定义信息相关的。
其中,上述基于类别定义信息生成包括目标对象的图像的方式应当与前述根据描述文本生成包括目标对象的第一图像的方式基本一致,例如,可以通过文生图模型来根据目标对象的类别定义信息,输出包括目标对象的第二图像。因此,关于上述利用文生图模型根据目标对象的类别定义信息生成包括目标对象的第二图像的具体描述可以参阅前文对步骤S130的具体描述,此处不再一一赘述。
在生成第一图像和第二图像后,由于第一图像和第二图像据包括内容丰富,故可以利用第一图像和第二图像进行图像处理模型的训练。如进行图像识别模型或图像分类模型等的训练,因此,方法还包括:利用所述第一图像和第二图像对图像处理模型进行训练,得到训练后的图像处理模型。
请结合参阅图6和图7,本申请实施例还提供一种图像生成方法,该方法包括:
步骤S210:对目标对象的类别名称进行语义编码,得到目标语义特征。
其中,语义编码阶段是自然语言处理中的一个重要环节,其主要任务是将自然语言文本转换为计算机能够理解或处理的形式。
在对目标对象的类别名称进行语义编码时,可以根据从语料库中包括词语与对应的语义编码结果中获取与目标对象的类别名称对应的目标语义特征。
在一种可实施方式中,上述的语料库可以是WordNet,其中,WordNet是一个英语字典。由于它包含了语义信息,所以有别于通常意义上的字典。WordNet根据词条的意义将它们分组,每一个具有相同意义的字条组称为一个synset(同义词集合)。WordNet为每一个synset提供了简短、概要的定义,并记录不同synset之间的语义关系。支持自动的文本分析以及人工智能应用。
在一些实施例中,可以通过文本语义编码模型来对目标对象的类别名称进行语义编码,获得目标语义特征,该目标语义特征反映了目标对象的类别名称的语义。
步骤S220:对目标数据库中的多个候选类别名称分别进行语义编码,得到各候选类别名称对应的候选语义特征。
其中,目标数据库可以是任意存储有多种对象类别名称的数据库,候选类别名称可以是目标数据库中与目标对象的类别名称具有相同或相近含义的对象类别名称。候选类别名称也可以是与目标对象的类别名称具有包含关系的对象类别名称。候选类别名称还可以是与目标对象的类别名称对应属于相同类别的对象类别名称。此处不作具体限定,根据实际需求进行设置即可。
对目标数据库中的多个候选类别名称分别进行语义编码的方式与对目标对象的类别名称进行语义编码可以相同。通过将目标对象的类别名称和多个候选类别名称分别进行语义编码处理后,可以实现将目标对象的类别名称和候选类别名称都转换为统一长度的字符串或者整型结构的数据,以便于进行后续的处理,如进行特征之间的相似度计算。
步骤S230:计算各候选语义特征与目标语义特征之间的相似度。
其中,计算候选语义特征与目标语义特征之间的相似度的方式可以是:计算候选语义特征与目标语义特征之间的余弦相似度,也可以是计算候选语义特征与目标语义特征之间的欧式距离。应当理解,上述的相似度计算过程仅仅是示意性的,还可以有更多的相似度计算方式,在此不作具体限定。
步骤S240:根据相似度,从多个候选语义特征中确定目标候选语义特征。
其中,根据各候选语义特征对应的相似度从多个候选语义特征中确定目标候选语义特征的方式可以是,从各候选语义特征对应的相似度中选取相似度最大的候选语义特征作为目标候选语义特征。也可以是从各候选语义特征对应的相似度中选取相似度排序为前预设数量的候选语义特征,并从选取的候选语义特征中随机选取一个或多个候选语义特征作为目标候选语义特征。
步骤S250:将目标数据库中与目标候选语义特征所对应的候选类别名称相关联的修饰词,确定为目标对象的修饰词。
其中,目标语义特征所对应的候选类别名称相关联的修饰词的获取过程可以参阅前文对步骤S110的具体描述,在本实施例不作具体限定。
上述过程充分考虑到了在业务数据中想要生成的类别名称对应的修饰词并不一定出现在VG数据集内与该类别名称对应的位置处,又或者同一个目标类具有不同的名称,这使得无法通过简单的点选操作获得目标类的属性修饰词,从而无法生成包括目标对象且内容丰富的图像的问题。而本申请中,通过基于语义相似度获取目标对象的修饰词,也即,基于文本特征描述匹配的查询方案来获得每个类别的属性,以此来保障生成包括目标对象且内容丰富的图像,从而实现基于目标对象的类别名称从VG数据库中准确查询到目标对象的修饰词。
步骤S260:基于目标对象的修饰词和目标对象的类别名称进行文本扩充,得到目标对象的描述文本。
步骤S270:利用文生图模型根据目标对象的描述文本,获得包括目标对象的第一图像。
关于上述步骤S260-S270的具体描述可以参阅前未对步骤S120-S130的具体描述,在本实施例不再一一赘述。
本申请实施例提供的一种图像生成方法,可以在无法直接获取到目标对象的修饰词时或目标对象对应有多个类别时,通过计算目标对象的类别名称对应的目标语义特征与候选类别对应的候选语义特征之间的相似度,并基于相似度确定目标候选语义特征;将与目标候选语义特征所对应的候选类别名称相关联的修饰词,确定为目标对象的修饰词,可以有效确保获取的修饰词的准确性。后续通过基于修饰词和目标对象的类别名称生成描述文本,描述文本中通过该目标对象的类别名称指代目标对象,这样,描述文本实际上是用于描述目标对象的文本,这样保证描述文本与目标对象具有一致性,在基于描述文本生成包括目标对象的图像时实现使基于目标对象的描述文本所生成的图像呈现的内容与目标对象的描述文本呈现的内容基本相同,或者内容相似度较高,此外,相对于目标对象的修饰词,目标对象的描述文本中呈现的细节更多,因此,利用目标对象的描述文本生成包括目标对象的图像也包括更多的细节信息,故,通过采用本申请的上述方法生成的包括目标对象的图像更准确,且内容更丰富。
如图8所示,是本申请另一实施例提供的一种图像生成方法,该方法包括:
步骤S310:获取目标对象的多个修饰词。
步骤S320:对目标对象的多个修饰词进行分组,获得至少一个修饰词组,每个修饰词组包括至少一个修饰词。
其中,对目标对象的多个修饰词进行分组的方式可以是,对目标对象的多个修饰词进行随机组合,以得到至少一个修饰词组,每个修饰词组中包括一个或多个修饰词。
步骤S330:针对每个修饰词组,向训练后的语言模型输入参考示例、修饰词组以及类别名称,参考示例中包括输入参考示例词、包括输入参考示例词的输出参考示例句。
上述训练后的语言模型可以是已经在大规模语料库上预训练好的开源自然语言处理模型。该语言模型可以是Encoder-Decoder模型(编码-解码模型),Encoder-Only(仅编码器)模型,Decoder-Only(仅解码器),采用 Encoder-Only 的有 Bert模型、 Deberta模型等,其采用 “完形填空”式的预训练,再根据与当前的文生图任务相关的少量标注数据进行Fine-tuning(微调)训练。采用 Decoder-Only 的有 GPT 模型等,其采用“预测下一个单词”的方式进行预训练,之后通过指令微调等实现特定领域功能的激发。采用 Encoder-Decoder 架构的模型有 T5模型、Bart模型以及 ChatGLM模型等。
在本申请实施例中,上述的语言模型可以是任意类GPT的生成式自回归语言模型,其结构通常为decoder-only(仅解码器)。
由于修饰词组(例如,包括对多个修饰词抽样得到的2-3个修饰词),需要结合目标对象的类别名称才能构造一段描述性的文本才能被后续的文生图模型所理解以输出相应的图像。因此,为了得到完整的文本语句,需要构建ICL范式(参考示例)以指导语言模型输出对应的造句方式,用来限定语言模型的输出必须包含输入的类别名称以及修饰词组,以及限定输出的语句应当完整和恰当。通过将ICL范式(参考示例)输入进语言模型,以使语言模型对范式进行理解后便可根据修饰词组中的词和目标对象的类别名称进行文本生成,获得目标对象的描述文本。
其中,输入参考示例词的作用是向语言模型给出输入参考,指示向语言模型中输入词语,如修饰词。包括输入参考示例词的输出参考示例句的作用是向语言模型给出输出参考,指示模型输出包括输入的词语(修饰词)的描述文本。
其中,为使生成的文本更加多样一些,在生成修饰词组之后,还可以向修饰词组中增加一些话题词更新修饰词组,从而使基于更新后的修饰词组获得的描述文本具有更多的内容,在执行步骤S320之后,还可以执行如下步骤:向修饰词组中增加与目标对象对应的话题词,得到更新后的修饰词组。以在后续执行步骤S330时,可以向训练后的语言模型输入参考示例、更新后的修饰词组以及类别名称。
需要说明的是,话题词是指目标对象常涉及的谈论话题,以目标对象为猫为例,则猫常涉及的话题词则可能是品种,毛发颜色以及眼睛颜色等等,以目标对象为鼠标为例,则常谈论的话题包括外观、性能以及有线或无线等。在本申请的一种具体的实施方式中,上述的话题词可以是wordnet中该目标对象的类别synset所属的话题词(topic)。
步骤S340:通过训练后的语言模型基于参考示例、修饰词组以及类别名称进行文本扩充,输出包括修饰词组和类别名称的描述文本。
其中,描述文本与输出参考示例句的句式相同。
在训练后的语言模型基于参考示例、修饰词组以及类别名称进行文本扩充,得到描述文本时,可以topk采样的方式得到描述文本,也可以采用波束搜索的方式获得描述文本。
其中,参考示例为多个,本申请示例性给出了语言模型中输入3个参考示例,具体的参考示例如下:
“Keywords: Canada, AI, fast
Output: Canada's Al industry is growing fast.###
Keywords: purchase, desk , adjustable
Output: I just purchased a new height adjustable desk.###
Keywords: museum, art, painting, Ottawa
Output: Pandas in the wild enjoy eating bamboo.###”
以上示例中示出的参考示例中,“keyword”用于指示其后紧跟有参考示例中的输入参考示例词,“output”用于指示其后紧跟有参考示例中的输出参考范例句。“###”用于指示不同参考示例的分隔符。
应当理解,上述的参考示例仅仅是示意性的,且参考示例仅用于表征语言模型的输入数据和输出数据之间的关系,故,参考示例中的参考输入词与修饰词之间可以不具有相关性。
示例性的,对于给定目标对象的类别名称“mountain bike”以及修饰词(如,属性词)“raining”、“park”,可以利用训练后的语言模型基于参考示例生成如下描述文本:“Mountain bike, it was raining and i parked my mountain bike on a countryroad.”。对于给定目标对象的类别名称“mouse computer”以及修饰词(如,属性)“black”,可以利用训练后的语言模型基于参考示例生成如下描述文本:“Mouse computer, thisblack mouse computer was purchased by an engineer who uses it for work.”。
步骤S350:利用文生图模型根据目标对象的描述文本,获得包括目标对象的第一图像。
关于获得目标对象的图像的过程,可以参阅前述实施例对步骤S130的具体描述,在本申请实施例不再一一赘述。
通过采用本申请的图像生成方法,在生成包括目标对象的图像的过程中,通过对目标对象的多个修饰词进行分组,获得至少一个修饰词组,每个修饰词组包括至少一个修饰词,之后,针对每个修饰词组,向训练后的语言模型输入参考示例、修饰词组以及类别名称,参考示例中包括输入参考示例词、包括输入参考示例词的输出参考示例句,以使训练后的语言模型基于参考示例、修饰词组以及类别名称进行文本扩充,且同一对象可以扩充出大量的不同文本,以使扩充后的各文本内容丰富完整清楚,后续在根据扩充后的文本生成图像时,可以实现针对目标对象,通过基于修饰词和目标对象的类别名称生成描述文本,描述文本中通过该目标对象的类别名称指代目标对象,这样,描述文本实际上是用于描述目标对象的文本,这样保证描述文本与目标对象具有一致性,在基于描述文本生成包括目标对象的图像时实现使基于目标对象的描述文本所生成的图像呈现的内容与目标对象的描述文本呈现的内容基本相同,或者内容相似度较高,此外,相对于目标对象的修饰词,目标对象的描述文本中呈现的细节更多,因此,利用目标对象的描述文本生成包括目标对象的第一图像也包括更多的细节信息,故,通过采用本申请的上述方法生成的包括目标对象的第一图像更准确,且内容更丰富。
如图9所示,是本申请又一实施例提供图像生成方法,为提升获得的包括目标对象的图像的准确度,所采用的文生图模型是对预训练后的文生图模型进行微调训练后得到的,图像生成方法包括:
步骤S410:获取样本对象对应的描述样本文本和该描述样本文本对应的样本图像,样本图像中包括样本对象。
其中,样本对象对应的样本描述文本可以是用户输入的,也可以是采用与前述步骤S110-S120相似的方式获得的,根据实际需求进行设置即可。相应的,样本类别信息对应的样本图像可以是用于基于样本类别信息绘制的,还可以是利用网络模型自动生成的,还可以是用户拍摄的,根据实际需求进行设置即可。
步骤S420:利用预训练后的扩散网络对样本图像进行多次加噪处理,得到多个样本噪声图像。
其中,多个样本噪声图像包括最后一次加噪生成的高斯噪声图像。
上述,利用扩散网络对样本类别进行加噪处理时,可以采用多次加噪的而方式进行,且每次加噪后的图像作为下一次进行加噪处理的基础图像。通过对样本图像进行多次加噪处理,直至获得高斯噪声图像时,停止执行加噪处理,得到的噪声样本图像可以包括每次加噪处理后的噪声图像。
步骤S430:利用预训练后的文本特征提取网络对描述样本文本进行特征提取,得到目标样本信息特征。
步骤S440:利用预训练后扩散网络基于所述目标样本信息特征对高斯噪声图像进行降噪处理,得到目标降噪样本图像。
其中,扩散网络执行加噪处理的次数与执行降噪处理的次数相同。
步骤S450:基于所述目标降噪样本图像和所述样本图像获得模型损失,基于所述模型损失,调整预训练后的文生图模型的参数。
基于目标降噪样本图像和样本图像获得模型损失可以是:基于目标样本图像和样本图像,按照预先设定的损失函数进行计算,得到模型损失;损失函数例如绝对值损失函数、交叉熵损失函数等,在此不进行具体限定。
也可以是:在扩散网络中执行加噪处理的次数与执行降噪处理的次数相同,如均为T次时,可以基于至少一次加噪处理后的结果和该加噪处理对应的降噪处理得到的结果,以及目标样本图像和样本图像进行损失计算得到模型损失。其中,以当前的加噪处理次数为t次,则与第t次加噪处理对应的降噪处理为第T-t次降噪处理。
还可以是,在扩散网络中执行加噪处理的次数与执行降噪处理的次数相同,如均为T次时,可以基于至少一次加噪处理时加入的噪声和该加噪处理对应的降噪处理时的拟合逼近的噪声,以及目标样本图像和样本图像进行损失计算得到模型损失。其中,以当前的加噪处理次数为t次,则与第t次加噪处理对应的降噪处理为第T-t次降噪处理。
其中,基于模型损失,对预训练的文生图模型进行微调训练时,可以向预训练的文生图模型添加输出层,然后随机初始化该层的模型参数。微调过程中可以基于模型损失调整输出层的参数,还可以调整其他层的部分参数。还可以采用LORA微调方法,在利用预训练的文生图模型中的文本特征提取网络中加一个旁路,做一个降维再升维的操作,来模拟描述文本的内在维度,以实现优化适应过程中密集层变化的秩分解矩阵,来间接训练神经网络中的一些密集层,同时保持预先训练的权重不变。
通过利用扩散网络中的加噪网络对样本图像进行加噪,以实现扩散的前向过程;将加入噪声的图像送入到扩散网络中的降噪网络进行特征学习,也即,向扩散的后向过程中输入描述样本文本映射得到的目标样本信息特征,以使扩散网络中的降噪网络通过语义引导特征引导其学习噪声,得到文本引导生成的图像。可以由生成的图像与样本图像的余弦相似度,以调整模型的中间表征,以此迭代训练直至收敛,训练结束。
在训练过程中,前向过程中采用多次加噪,后向过程通过多次降噪消除图像噪声,使每次加噪过程加入的噪声与对应降噪减少的噪声接近,可以使反向过程中获得的图像有良好的保真度。
在利用文生图模型根据所述目标对象的描述文本,获得包括所述目标对象的第一图像时,具体可以是微调训练后的文本特征提取网络对描述文本进行特征提取,得到目标信息特征;利用微调训练后的扩散网络基于所述目标信息特征对高斯噪声进行降噪处理,得到包括所述目标对象的第一图像。此处的特征提取过程和降噪处理过程可以参阅前述微调过程中的特征提取过程和降噪处理过程的具体描述,在此不再一一赘述。
如图10所示,是本申请实施例提供的一种文生图模型的模型结构示意图,其中,图中,X指为描述样本文本对应的样本图像,在前向过程中,对X利用特征提取器进行特征提取得到图像特征向量Z,利用加噪网络对图像特征习向量进行多次添加噪声(如T次),其中,第i次添加噪声后得到的样本噪声图像为Ti,最终,第T次添加噪声后得到的样本噪声图像为ZT,其中ZT为高斯噪声;
在后向过程中,利用降噪网络将噪声恢复成样本图像时,降噪网络依赖于扩散过程中的条件指导生成,具体地,是将对描述样本文本行特征提取得到的目标样本信息特征引入扩散模型噪声的估计之中作为条件一起优化训练的,该扩散模型估计噪声的过程如下所示:
,其中,/>表示图像恢复的损失值,/>表示期望/>的最小值,/>表示/>服从标准的高斯分布,/>是扩散模型前向过程中加入的噪声,作为Ground-Truth(优化目标),/>是通过优化模型参数/>来拟合逼近的噪声;从公式中可以看到/>依赖于3个输出:/>是第t次加噪后的图像,t的取值为0到T之间,T为大于1的整数,/>代表额外引入的描述样本文本,其可以作为扩散模型在训练/预测过程中的条件。/>为针对描述样本文本进行进行特征提取得到的目标样本信息特征。需要说明的是,若当前的加噪处理次数为t次,则与第t次加噪处理对应的降噪处理为第T-t次降噪处理,则在完成模型参数的优化后,第t次加噪处理对应加入的噪声与第T-t次降噪处理对应获得的拟合逼近的噪声趋于一致,也即/>的最小值趋于零。
具体地,描述样本文本经过编码后抽取特征编码,然后再通过跨模态注意力机制与生成图像所用到的噪声图像/>进行交互时。其具体的表达方式如下: />
上述所用的公式均来自于基本的注意力机制。扩散模型中进行第t次的加噪处理时,编码后的噪声图像作为query(Q),目标样本信息特征作为key(K)和value(V)来进行权值的计算并得到加权结果,使生成图像时能够参考到描述样本文本中提取的目标样本信息特征,得到注意力权重,/>即为输出,其可以作为第t+1次降噪处理过程中的输入,最终,扩散模型第T次降噪处理后输出z’,对z’采用特征解码器D进行解码,即可得到最终的图像(目标降噪样本图像);/>为权重矩阵,可通过训练确定。表示编码后的噪声图像。
应当理解,上述进行微调训练的方式仅仅是示意性的,还可以有更多的微调方式,在此处不作具体限定。
在利用上述微调后的文生图模型生成图像时,具体的生成过程可以包括如下步骤:
步骤S460:获取目标对象的修饰词。
步骤S470:基于目标对象的修饰词和目标对象的类别名称进行文本扩充,得到目标对象的描述文本。
关于上述步骤S460-S470的具体描述可以参阅前文对步骤S110-S120的具体描述,在本申请实施例不再具体赘述。
步骤S480:利用微调训练后的文生图模型根据目标对象的描述文本,获得包括目标对象的图像。
具体的,上述步骤S480可以是利用微调训练后的文本特征提取网络对描述文本进行特征提取,得到目标信息特征;利用微调训练后的扩散网络基于所述目标信息特征对高斯噪声进行降噪处理,得到包括所述目标对象的图像。
其中,关于上述步骤S480的具体处理过程可以与步骤S420和S440类似,具体可以参阅前文对步骤S420和S40的具体描述,在此处不再一一赘述。
在本申请的一种可实施方式中,为避免存在生成图像的语义与业务期待生成图像的语义不一致,仅仅靠描述文本的完备构造可能也无法充分解决领域偏移(domain shift)问题。因此,本申请实施例针对用于生成图像的diffusion模型进行微调。为了使得微调能在尽可能低成本地进行,本技术方案使用了低秩适应(low rank adaptation,LORA)的微调技术对文本特征提取网络进行调整。因此,上述步骤S430具体可以包括:
步骤S432:对描述样本文本进行特征提取处理,得到初始样本信息特征。
步骤S434:利用降维矩阵对描述样本文本对进行降维处理,得到第一样本信息特征。
步骤S436:利用升维矩阵对第一样本信息特征进行升维处理,得到第二样本信息特征。
步骤S438:将初始样本信息特征与第二样本信息特征进行融合,得到目标样本信息特征。
具体的,在采用上述步骤S432-S438对预训练的文生图模型进行微调训练时,参阅图11所示,左边的Pre-trained weights指代的是任意文生图模型中的文本特征提取网络预训练确定的原始参数权重W,其可以通过大量开源、公开数据集(网图的图文对)训练得到,而右边的两个矩阵(A为降维矩阵和B升维矩阵)则是LoRA微调过程中需要新引入、实际参与微调的参数矩阵。其中,降维矩阵记为A,可以利用随机高斯分布初始化降维矩阵A,其负责将原来维度为d的输入x映射到r维(例如,r为1或4);升维矩阵记为B,可以利用0矩阵初始化升维矩阵B,其负责将r维的中间结果再升至h维,使得每个矩阵W的输入和输出的维度与原始文本特征提取网络对应提取的特征的维度保持一致。具体地,用公式表示:原始预训练好的权重(初始权重)的W对应的输出:,而经过微调后(即使用样本训练矩阵A,B)的输出为:/>。由于压缩维度r可视为原始矩阵的秩(rank),通过设置极小的r(如,将r设置为4或者9等)可控制整体的参数量在一个非常小的量级。h是网络层中某一层的输出,x是该层的输入,W是模型参数,训练的阶段是在训练W的同时训练A和B从而达到微调训练的目的,使微调能在尽可能低成本地进行。
如图12—图14所示,本申请示例性的给出了不同描述对象对应有不同修饰词的情况下生成的文本和图像的示意图。示例性的,针对目标对象为“方锥”,目标对象对应的修饰词包括“交通”,生成的描述文本为:“道路边沿上放置有用于指示交通通行的方锥”,则基于该描述文本生成的图像如图12所示。示例性地,针对目标对象为“护栏”,目标对象对应的修饰词包括“路边”、“倒地”和“交通”,生成的描述文本为:“路边上由一块用于维护交通且倒地的护栏”,则基于该描述文本生成的图像如图13所示。示例性地,针对目标对象为“路面”,目标对象对应的修饰词包括“积水”,生成的描述文本为:“下雨天,路面有大量的积水”,则基于该描述文本生成的图像如图14所示。
本申请中,通过采用上述的方法生成的图像还可以用作后续的图像处理模型的训练,如用作图像识别模型的训练,也即,在获得上述包括目标对象的图像后,方法还包括,基于包括目标对象的图像和目标对象的类别名称对图像识别模型进行训练,得到训练后的图像识别模型。应当理解,上述获得的图像可以用于训练在在普通场景下的图像识别模型,也可以用于训练在交通场景或某些特殊场景下的图像识别模型。示例性地,图12和图13也可以认为是在交通场景下生成的不同交通场景下与道路相关的示意图,用于参与交通场景下的图像识别模型的训练。图14可以认为是在普通场景下的示意图,用于参与普通场景下的图像识别模型的训练。
如表1所示,是在普通场景下,利用ImageNet数据库中的图像训练得到的识别模型和利用100张ImageNet数据库中和100张本申请生成的图像训练得到的模型在训练集上和测试集上的表现。ImageNet是一个用于视觉对象识别软件研究的大型可视化数据库,表1如下:
如表2所示,是在交通场景下,仅利用拍摄的图像进行图像识别模型的训练得到的训练后的图像识别模型的效果、利用部分拍摄的图像加上部分替换图像进行图像识别模型的训练得到的训练后的图像识别模型的效果,用部分拍摄的图像加上部分本申请的所提供的方法生成的图像的训练得到的训练后的图像识别模型的效果的对比情况如表2所示。其中,部分替换目标对象的图像是指对拍摄得到的包括目标对象的图像中的目标对象采用自动生成目标对象进行替换而除目标对象以外的其他内容不变。表2如下:
通过表1和表2,可以看出,利用本申请获得的图像在参与后续的图像识别模型训练时,训练得到图像识别模型的精准率和召回率均更好,故利用本申请获得图像训练得到的图像识别模型的性能更好。应该理解的是,虽然如上的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
请参阅图15,本申请另一实施例提供了一种图像生成装置500,装置500包括修饰词获取模块510、文本扩充模块520以及图像生成模块530。修饰词获取模块510,用于获取目标对象的修饰词;文本扩充模块520,用于基于目标对象的修饰词和目标对象的类别名称进行文本扩充,得到目标对象的描述文本;图像生成模块530,用于利用文生图模型根据目标对象的描述文本,获得包括目标对象的第一图像。
在一种可实施方式中,修饰词获取模块510包括第一编码子模块、第二编码子模块、相似度计算子模块、特征选取子模块以及修饰词确定子模块。第一编码子模块,用于对目标对象的类别名称进行语义编码,得到目标语义特征;第二编码子模块,用于对目标数据库中的多个候选类别名称分别进行语义编码,得到各候选类别名称对应的候选语义特征;相似度计算子模块,用于计算各候选语义特征与目标语义特征之间的相似度;特征选取子模块,用于根据相似度,从多个候选语义特征中确定目标候选语义特征;修饰词确定子模块,用于将目标数据库中与目标候选语义特征所对应的候选类别名称相关联的修饰词,确定为目标对象的修饰词。
在一种可实施方式中,文本扩充模块520,包括分组子模块和文本扩充子模块。分组子模块,用于对目标对象的多个修饰词进行分组,获得至少一个修饰词组,每个修饰词组包括至少一个修饰词;文本扩充子模块,用于针对每个修饰词组,向训练后的语言模型输入参考示例、修饰词组以及类别名称,参考示例中包括输入参考示例词、包括输入参考示例词的输出参考示例句;通过训练后的语言模型基于参考示例、修饰词组以及类别名称进行文本扩充,输出包括修饰词组和类别名称的描述文本,描述文本与输出参考示例句的句式相同。
在一种可实施方式中,文本扩充模块520还包括词组更新子模块,词组更新子模块用于向修饰词组中增加与目标对象对应的话题词。
在一种可实施方式中,装置还包括微调训练模块,用于利用样本对象对应的描述样本文本和该描述样本文本对应的样本图像,对文生图模型进行微调训练。
在一种可实施方式中,文生图模型包括文本特征提取网络和扩散网络,装置还包括:样本获取模块、加噪处理模块、特征提取模块、降噪处理模块、损失获得模块以及参数调整模块。样本获取模块,用于获取样本对象对应的描述样本文本和该描述样本文本对应的样本图像,样本图像中包括样本对象;加噪处理模块,用于利用预训练后的扩散网络对所述样本图像进行多次加噪处理,得到多个样本噪声图像,所述多个样本噪声图像包括最后一次加噪生成的高斯噪声图像;特征提取模块,用于利用预训练后的文本特征提取网络对描述样本文本进行特征提取,得到目标样本信息特征;降噪处理模块,用于利用预训练后扩散网络基于所述目标样本信息特征对高斯噪声图像进行降噪处理,得到目标降噪样本图像;损失获得模块,用于基于所述目标降噪样本图像和所述样本图像获得模型损失;参数调整模块,用于基于所述模型损失,调整预训练后的文生图模型的参数。
在本申请的一种可实施方式中,特征提取模块还用于对描述样本文本进行特征提取处理,得到初始样本信息特征;利用降维矩阵对描述样本文本对进行降维处理,得到第一样本信息特征;利用升维矩阵对第一样本信息特征进行升维处理,得到第二样本信息特征;将初始样本信息特征与第二样本信息特征进行融合,得到目标样本信息特征。
在一种可实施方式中,参数调整模块,还用于基于模型损失,调整文生图模型中降维矩阵的参数和升维矩阵的参数。
在一种可实施方式中,特征提取模块,还用于利用微调训练后的文本特征提取网络对描述文本进行特征提取,得到目标信息特征;所述降噪处理模块,还用于利用微调训练后的扩散网络基于所述目标信息特征对高斯噪声进行降噪处理,得到包括所述目标对象的第一图像。
在一种可实施方式中,装置还包括定义信息获取模块,定义信息获取模块,用于获取目标对象的类别定义信息;图像生成模块530,还用于利用文生图模型根据目标对象的类别定义信息,生成包括目标对象的第二图像。
上述装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。需要说明的是,本申请中装置实施例与前述方法实施例是相互对应的,装置实施例中具体的原理可以参见前述方法实施例中的内容,此处不再赘述。
下面将结合图16对本申请提供的一种电子设备进行说明。
请参阅图16,基于上述实施例提供的图像生成方法,本申请实施例还提供的另一种包括可以执行前述方法的处理器102的电子设备100,该电子设备100可以为服务器或终端设备,终端设备可以是智能手机、平板电脑、计算机或者便携式计算机等设备。
电子设备100还包括存储器104。其中,该存储器104中存储有可以执行前述实施例中内容的程序,而处理器102可以执行该存储器104中存储的程序。
其中,处理器102可以包括一个或者多个用于处理数据的核以及消息矩阵单元。处理器102利用各种接口和线路连接整个电子设备100内的各个部分,通过运行或执行存储在存储器104内的指令、程序、代码集或指令集,以及调用存储在存储器104内的数据,执行电子设备100的各种功能和处理数据。可选地,处理器102可以采用数字信号处理(DigitalSignal Processing,DSP)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、可编程逻辑阵列(Programmable Logic Array,PLA)中的至少一种硬件形式来实现。处理器102可集成中央处理器(Central Processing Unit,CPU)、图像处理器(GraphicsProcessing Unit,GPU)和调制解调器等中的一种或几种的组合。其中,CPU主要处理操作系统、用户界面和应用程序等;GPU用于负责显示内容的渲染和绘制;调制解调器用于处理无线通信。可以理解的是,上述调制解调器也可以不集成到处理器102中,单独通过一块通信芯片进行实现。
存储器104可以包括随机存储器(Random Access Memory,RAM),也可以包括只读存储器(Read-Only Memory)。存储器104可用于存储指令、程序、代码、代码集或指令集。存储器104可包括存储程序区和存储数据区,其中,存储程序区可存储用于实现操作系统的指令、用于实现至少一个功能的指令、用于实现下述各个方法实施例的指令等。存储数据区还可以存储电子设备100在使用中所获取的数据(如,修饰词、描述文本)等。
电子设备100还可以包括网络模块以及屏幕,网络模块用于接收以及发送电磁波,实现电磁波与电信号的相互转换,从而与通讯网络或者其他设备进行通讯,例如和音频播放设备进行通讯。网络模块可包括各种现有的用于执行这些功能的电路元件,例如,天线、射频收发器、数字信号处理器、加密/解密芯片、用户身份模块(SIM)卡、存储器等等。网络模块可与各种网络如互联网、企业内部网、无线网络进行通讯或者通过无线网络与其他设备进行通讯。上述的无线网络可包括蜂窝式电话网、无线局域网或者城域网。屏幕可以进行界面内容的显示以及进行数据交互。
在一些实施例中,电子设备100还可以包括有:外设接口106和至少一个外围设备。处理器102、存储器104和外设接口106之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外设接口连接。具体地,外围设备包括:射频组件108、定位组件112、摄像头114、音频组件116、显示屏118以及电源122等中的至少一种。
外设接口106可被用于将I/O(Input/Output,输入/输出)相关的至少一个外围设备连接到处理器102和存储器104。在一些实施例中,处理器102、存储器104和外设接口106被集成在同一芯片或电路板上;在一些其他实施例中,处理器102、存储器104和外设接口106中的任意一个或两个可以在单独的芯片或电路板上实现,本申请实施例对此不加以限定。
射频组件108用于接收和发射RF(Radio Frequency,射频)信号,也称电磁信号。射频组件108通过电磁信号与通信网络以及其他通信设备进行通信。射频组件108将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频组件108包括:天线系统、RF收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频组件108可以通过至少一种无线通信协议来与其它终端进行通信。该无线通信协议包括但不限于:万维网、城域网、内联网、各代移动通信网络(2G、3G、4G及5G)、无线局域网和/或WiFi(Wireless Fidelity,无线保真)网络。在一些实施例中,射频组件108还可以包括NFC(Near Field Communication,近距离无线通信)有关的电路,本申请对此不加以限定。
定位组件112用于定位电子设备的当前地理位置,以实现导航或LBS(LocationBased Service,基于位置的服务)。定位组件112可以是基于美国的GPS(GlobalPositioning System,全球定位系统)、北斗系统或伽利略系统的定位组件。
摄像头114用于采集图像或视频。可选地,摄像头114包括前置摄像头和后置摄像头。通常,前置摄像头设置在电子设备100的前面板,后置摄像头设置在电子设备100的背面。在一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头、长焦摄像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能、主摄像头和广角摄像头融合实现全景拍摄以及VR(Virtual Reality,虚拟现实)拍摄功能或者其它融合拍摄功能。在一些实施例中,摄像头114还可以包括闪光灯。闪光灯可以是单色温闪光灯,也可以是双色温闪光灯。双色温闪光灯是指暖光闪光灯和冷光闪光灯的组合,可以用于不同色温下的光线补偿。
音频组件116可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器102进行处理,或者输入至射频组件108以实现语音通信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在电子设备100的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器102或射频组件108的电信号转换为声波。扬声器可以是传统的薄膜扬声器,也可以是压电陶瓷扬声器。当扬声器是压电陶瓷扬声器时,不仅可以将电信号转换为人类可听见的声波,也可以将电信号转换为人类听不见的声波以进行测距等用途。在一些实施例中,音频组件114还可以包括耳机插孔。
显示屏118用于显示UI(User Interface,用户界面)。该UI可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏118是触摸显示屏时,显示屏118还具有采集在显示屏118的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器102进行处理。此时,显示屏118还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,显示屏118可以为一个,设置电子设备100的前面板;在另一些实施例中,显示屏118可以为至少两个,分别设置在电子设备100的不同表面或呈折叠设计;在又一些实施例中,显示屏118可以是柔性显示屏,设置在电子设备100的弯曲表面上或折叠面上。甚至,显示屏118还可以设置成非矩形的不规则图形,也即异形屏。显示屏118可以采用LCD(Liquid Crystal Display,液晶显示屏)、OLED(Organic Light-Emitting Diode,机发光二极管)等材质制备。
电源122用于为电子设备100中的各个组件进行供电。电源122可以是交流电、直流电、一次性电池或可充电电池。当电源122包括可充电电池时,该可充电电池可以是有线充电电池或无线充电电池。有线充电电池是通过有线线路充电的电池,无线充电电池是通过无线线圈充电的电池。该可充电电池还可以用于支持快充技术。
本申请实施例还提供一种计算机可读存储介质的结构框图。该计算机可读介质中存储有程序代码,程序代码可被处理器调用执行上述方法实施例中所描述的方法。
计算机可读存储介质可以是诸如闪存、EEPROM(电可擦除可编程只读存储器)、EPROM、硬盘或者ROM之类的电子存储器。可选地,计算机可读存储介质包括非易失性计算机可读介质(non-transitory computer-readable storage medium)。计算机可读存储介质具有执行上述方法中的任何方法步骤的程序代码的存储空间。这些程序代码可以从一个或者多个计算机程序产品中读出或者写入到这一个或者多个计算机程序产品中。程序代码可以例如以适当形式进行压缩。
本申请实施例还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各种可选实现方式中描述的方法。
最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不驱使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。
Claims (13)
1.一种图像生成方法,其特征在,所述方法包括:
获取目标对象的修饰词;
对目标对象的多个修饰词进行分组,获得至少一个修饰词组,每个修饰词组包括至少一个修饰词;
针对每个修饰词组,向训练后的语言模型输入参考示例、修饰词组以及所述目标对象的类别名称,所述参考示例中包括输入参考示例词、包括所述输入参考示例词的输出参考示例句;
通过所述训练后的语言模型基于所述参考示例、修饰词组以及所述类别名称进行文本扩充,输出包括所述修饰词组和所述类别名称的描述文本,所述描述文本与所述输出参考示例句的句式相同;
利用文生图模型根据所述目标对象的描述文本,获得包括所述目标对象的第一图像。
2.根据权利要求1所述的方法,其特征在于,所述获取目标对象的修饰词,包括:
对所述目标对象的类别名称进行语义编码,得到目标语义特征;
对目标数据库中的多个候选类别名称分别进行语义编码,得到各候选类别名称对应的候选语义特征;
计算各所述候选语义特征与所述目标语义特征之间的相似度;
根据所述相似度,从多个所述候选语义特征中确定目标候选语义特征;
将所述目标数据库中与目标候选语义特征所对应的候选类别名称相关联的修饰词,确定为所述目标对象的修饰词。
3.根据权利要求2所述的方法,其特征在于,所述对目标对象的多个修饰词进行分组,获得至少一个修饰词组之后,所述方法包括:
向所述修饰词组中增加与所述目标对象对应的话题词。
4.根据权利要求1所述的方法,其特征在于,所述根据所述目标对象的描述文本,获得包括所述目标对象的图像之前,所述方法包括:
利用样本对象对应的描述样本文本和该描述样本文本对应的样本图像,对文生图模型进行微调训练。
5.根据权利要求4所述的方法,其特征在于,所述文生图模型包括文本特征提取网络和扩散网络,所述文生图模型的微调训练过程包括:
获取样本对象对应的描述样本文本和该描述样本文本对应的样本图像,所述样本图像中包括样本对象;
利用预训练后的扩散网络对所述样本图像进行多次加噪处理,得到多个样本噪声图像,所述多个样本噪声图像包括最后一次加噪生成的高斯噪声图像;
利用预训练后的文本特征提取网络对描述样本文本进行特征提取,得到目标样本信息特征;
利用预训练后扩散网络基于所述目标样本信息特征对高斯噪声图像进行降噪处理,得到目标降噪样本图像;
基于所述目标降噪样本图像和所述样本图像获得模型损失;
基于所述模型损失,调整预训练后的文生图模型的参数。
6.根据权利要求5所述的方法,其特征在于,所述利用预训练后的文本特征提取网络对描述样本文本进行特征提取,得到目标样本信息特征,包括:
对所述描述样本文本进行特征提取处理,得到初始样本信息特征;
利用降维矩阵对所述描述样本文本对进行降维处理,得到第一样本信息特征;
利用升维矩阵对所述第一样本信息特征进行升维处理,得到第二样本信息特征;
将所述初始样本信息特征与所述第二样本信息特征进行融合,得到目标样本信息特征。
7.根据权利要求6所述的方法,其特征在于,所述基于所述模型损失,调整预训练后的文生图模型的参数,包括:
基于所述模型损失,调整所述文生图模型中降维矩阵的参数和所述升维矩阵的参数。
8.根据权利要求4所述的方法,其特征在于,所述利用文生图模型根据所述目标对象的描述文本,获得包括所述目标对象的第一图像,包括:
利用微调训练后的文本特征提取网络对描述文本进行特征提取,得到目标信息特征;
利用微调训练后的扩散网络基于所述目标信息特征对高斯噪声进行降噪处理,得到包括所述目标对象的第一图像。
9.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取目标对象的类别定义信息;
利用文生图模型根据所述目标对象的类别定义信息,生成包括目标对象的第二图像。
10.根据权利要求9所述的方法,其特征在于,所述方法还包括:
利用所述第一图像和第二图像对图像处理模型进行训练,得到训练后的图像处理模型。
11.一种图像生成装置,其特征在于,所述装置包括:
修饰词获取模块,用于获取目标对象的修饰词;
文本扩充模块,用于对目标对象的多个修饰词进行分组,获得至少一个修饰词组,每个修饰词组包括至少一个修饰词;针对每个修饰词组,向训练后的语言模型输入参考示例、修饰词组以及所述目标对象的类别名称,所述参考示例中包括输入参考示例词、包括所述输入参考示例词的输出参考示例句;通过所述训练后的语言模型基于所述参考示例、修饰词组以及所述类别名称进行文本扩充,输出包括所述修饰词组和所述类别名称的描述文本,所述描述文本与所述输出参考示例句的句式相同;
图像生成模块,用于利用文生图模型根据所述目标对象的描述文本,获得包括所述目标对象的第一图像。
12.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储器;
一个或多个程序,其中所述一个或多个程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序配置用于执行如权利要求1-10中任意一项所述的方法。
13.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有程序代码,所述程序代码可被处理器调用执行如权利要求1-10中任意一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311053835.9A CN116797684B (zh) | 2023-08-21 | 2023-08-21 | 图像生成方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311053835.9A CN116797684B (zh) | 2023-08-21 | 2023-08-21 | 图像生成方法、装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116797684A CN116797684A (zh) | 2023-09-22 |
CN116797684B true CN116797684B (zh) | 2024-01-05 |
Family
ID=88048319
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311053835.9A Active CN116797684B (zh) | 2023-08-21 | 2023-08-21 | 图像生成方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116797684B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117173497B (zh) * | 2023-11-02 | 2024-02-27 | 腾讯科技(深圳)有限公司 | 一种图像生成方法、装置、电子设备及存储介质 |
CN117235534B (zh) * | 2023-11-13 | 2024-02-20 | 支付宝(杭州)信息技术有限公司 | 训练内容理解模型和内容生成模型的方法及装置 |
CN117315072A (zh) * | 2023-11-29 | 2023-12-29 | 阿里健康科技(杭州)有限公司 | 商品展示图的生成方法、设备和介质 |
CN117392694B (zh) * | 2023-12-07 | 2024-04-19 | 支付宝(杭州)信息技术有限公司 | 数据处理方法、装置及设备 |
CN117593595B (zh) * | 2024-01-18 | 2024-04-23 | 腾讯科技(深圳)有限公司 | 基于人工智能的样本增广方法、装置及电子设备 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111858954A (zh) * | 2020-06-29 | 2020-10-30 | 西南电子技术研究所(中国电子科技集团公司第十研究所) | 面向任务的文本生成图像网络模型 |
CN113362416A (zh) * | 2021-07-01 | 2021-09-07 | 中国科学技术大学 | 基于目标检测的文本生成图像的方法 |
CN115690245A (zh) * | 2022-09-21 | 2023-02-03 | 浙江大学 | 一种基于属性驱动gan的文本生成图像的方法 |
CN115713572A (zh) * | 2022-11-22 | 2023-02-24 | 网易(杭州)网络有限公司 | 文本图像生成方法、装置、电子设备及可读存储介质 |
CN115861747A (zh) * | 2022-11-21 | 2023-03-28 | 科大讯飞股份有限公司 | 图像生成方法、装置、电子设备及存储介质 |
CN116012481A (zh) * | 2023-01-17 | 2023-04-25 | 北京百度网讯科技有限公司 | 图像生成处理方法、装置、电子设备及存储介质 |
CN116051668A (zh) * | 2022-12-30 | 2023-05-02 | 北京百度网讯科技有限公司 | 文生图扩散模型的训练方法和基于文本的图像生成方法 |
CN116110099A (zh) * | 2023-01-19 | 2023-05-12 | 北京百度网讯科技有限公司 | 头像生成的方法和头像更换的方法 |
CN116320524A (zh) * | 2023-03-29 | 2023-06-23 | 广州方硅信息技术有限公司 | 图片生成方法、直播间图像生成方法以及装置 |
CN116611496A (zh) * | 2023-05-29 | 2023-08-18 | 光控特斯联(重庆)信息技术有限公司 | 文本到图像的生成模型优化方法、装置、设备及存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20220108417A1 (en) * | 2020-10-01 | 2022-04-07 | Nvidia Corporation | Image generation using one or more neural networks |
-
2023
- 2023-08-21 CN CN202311053835.9A patent/CN116797684B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111858954A (zh) * | 2020-06-29 | 2020-10-30 | 西南电子技术研究所(中国电子科技集团公司第十研究所) | 面向任务的文本生成图像网络模型 |
CN113362416A (zh) * | 2021-07-01 | 2021-09-07 | 中国科学技术大学 | 基于目标检测的文本生成图像的方法 |
CN115690245A (zh) * | 2022-09-21 | 2023-02-03 | 浙江大学 | 一种基于属性驱动gan的文本生成图像的方法 |
CN115861747A (zh) * | 2022-11-21 | 2023-03-28 | 科大讯飞股份有限公司 | 图像生成方法、装置、电子设备及存储介质 |
CN115713572A (zh) * | 2022-11-22 | 2023-02-24 | 网易(杭州)网络有限公司 | 文本图像生成方法、装置、电子设备及可读存储介质 |
CN116051668A (zh) * | 2022-12-30 | 2023-05-02 | 北京百度网讯科技有限公司 | 文生图扩散模型的训练方法和基于文本的图像生成方法 |
CN116012481A (zh) * | 2023-01-17 | 2023-04-25 | 北京百度网讯科技有限公司 | 图像生成处理方法、装置、电子设备及存储介质 |
CN116110099A (zh) * | 2023-01-19 | 2023-05-12 | 北京百度网讯科技有限公司 | 头像生成的方法和头像更换的方法 |
CN116320524A (zh) * | 2023-03-29 | 2023-06-23 | 广州方硅信息技术有限公司 | 图片生成方法、直播间图像生成方法以及装置 |
CN116611496A (zh) * | 2023-05-29 | 2023-08-18 | 光控特斯联(重庆)信息技术有限公司 | 文本到图像的生成模型优化方法、装置、设备及存储介质 |
Non-Patent Citations (1)
Title |
---|
LLM-grounded Diffusion: Enhancing Prompt Understanding of Text-to-Image Diffusion Models with Large Language Models;Long Lian 等;《arXiv:https://doi.org/abs/2305.13655》;第1-13页 * |
Also Published As
Publication number | Publication date |
---|---|
CN116797684A (zh) | 2023-09-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN116797684B (zh) | 图像生成方法、装置、电子设备及存储介质 | |
US7853582B2 (en) | Method and system for providing information services related to multimodal inputs | |
CN109783651A (zh) | 提取实体相关信息的方法、装置、电子设备和存储介质 | |
KR102124466B1 (ko) | 웹툰 제작을 위한 콘티를 생성하는 장치 및 방법 | |
CN109887484A (zh) | 一种基于对偶学习的语音识别与语音合成方法及装置 | |
CN109783798A (zh) | 文本信息添加图片的方法、装置、终端及存储介质 | |
CN111967224A (zh) | 对话文本的处理方法、装置、电子设备及存储介质 | |
CN111753551B (zh) | 基于词向量生成模型的信息生成方法和装置 | |
CN104899315A (zh) | 推送用户信息的方法和装置 | |
US8370323B2 (en) | Providing information services related to multimodal inputs | |
CN110619050B (zh) | 意图识别方法及设备 | |
CN107977928A (zh) | 表情生成方法、装置、终端及存储介质 | |
WO2021082086A1 (zh) | 机器阅读方法、系统、装置及存储介质 | |
KR20200065433A (ko) | 스타일 변환 모델 및 포토 몽타주 기반 합성 이미지의 스타일 변환 장치 | |
WO2022012205A1 (zh) | 词补全方法和装置 | |
CN103546623A (zh) | 用于发送语音信息及其文本描述信息的方法、装置与设备 | |
CN114882862A (zh) | 一种语音处理方法及相关设备 | |
CN110781327B (zh) | 图像搜索方法、装置、终端设备及存储介质 | |
CN110781329A (zh) | 图像搜索方法、装置、终端设备及存储介质 | |
CN116665219A (zh) | 一种数据处理方法及其装置 | |
CN111222011B (zh) | 一种视频向量确定方法和装置 | |
CN105515938B (zh) | 生成通信信息的方法和装置 | |
CN116913278B (zh) | 语音处理方法、装置、设备和存储介质 | |
CN116955835B (zh) | 资源筛选方法、装置、计算机设备及存储介质 | |
CN117789103A (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 |