CN117292020B - 图像生成方法、装置、电子设备及存储介质 - Google Patents
图像生成方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN117292020B CN117292020B CN202311580884.8A CN202311580884A CN117292020B CN 117292020 B CN117292020 B CN 117292020B CN 202311580884 A CN202311580884 A CN 202311580884A CN 117292020 B CN117292020 B CN 117292020B
- Authority
- CN
- China
- Prior art keywords
- image
- text
- mask
- vector
- hidden vector
- 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 49
- 238000003860 storage Methods 0.000 title claims abstract description 16
- 239000013598 vector Substances 0.000 claims abstract description 195
- 230000007547 defect Effects 0.000 claims abstract description 100
- 238000009792 diffusion process Methods 0.000 claims abstract description 41
- 230000004927 fusion Effects 0.000 claims description 26
- 238000004590 computer program Methods 0.000 claims description 15
- 238000004891 communication Methods 0.000 claims description 11
- 230000006870 function Effects 0.000 claims description 11
- 239000011159 matrix material Substances 0.000 claims description 8
- 238000004364 calculation method Methods 0.000 claims description 7
- 230000009466 transformation Effects 0.000 claims description 5
- 238000000605 extraction Methods 0.000 claims description 4
- 238000012549 training Methods 0.000 description 18
- 238000001514 detection method Methods 0.000 description 15
- 230000008569 process Effects 0.000 description 10
- 238000010586 diagram Methods 0.000 description 9
- 230000007246 mechanism Effects 0.000 description 7
- 230000005540 biological transmission Effects 0.000 description 6
- 238000004519 manufacturing process Methods 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 238000004088 simulation Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000002159 abnormal effect Effects 0.000 description 2
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 238000003058 natural language processing Methods 0.000 description 2
- 230000002787 reinforcement Effects 0.000 description 2
- 230000007704 transition Effects 0.000 description 2
- 238000010146 3D printing Methods 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000005266 casting Methods 0.000 description 1
- 238000006555 catalytic reaction Methods 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 239000002893 slag Substances 0.000 description 1
- 230000002123 temporal 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
- G06T11/60—Editing figures and text; Combining figures or text
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/12—Use of codes for handling textual entities
- G06F40/126—Character encoding
-
- 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/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/80—Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level
- G06V10/806—Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level of extracted features
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)
- Computer Vision & Pattern Recognition (AREA)
- Computing Systems (AREA)
- Databases & Information Systems (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- Multimedia (AREA)
- General Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Image Processing (AREA)
Abstract
本申请公开了一种图像生成方法、装置、电子设备及存储介质,属于图像生成技术领域。其中,该方法包括:获取文本、与所述文本对应的掩码、以及与所述文本对应的原始图像,所述掩码用于指示待生成缺陷的缺陷特征;对所述文本进行编码,得到所述文本对应的词嵌入向量,采用扩散模型对所述掩码和所述原始图像进行特征提取,得到所述掩码对应的掩码隐向量和所述原始图像对应的图像隐向量;根据所述词嵌入向量、所述掩码隐向量和所述图像隐向量生成与所述文本匹配的目标图片。通过本申请,解决了相关技术中无法根据用户需求生成可自定义缺陷特征的缺陷图像的技术问题。
Description
技术领域
本申请涉及图像生成技术领域,具体而言,涉及一种图像生成方法、装置、电子设备及存储介质。
背景技术
在产品生产过程中,通常采用AI缺陷检测模型来对产品进行缺陷检测。AI缺陷检测模型需要大量的不同类型的缺陷样本来进行训练,但在实际生产线中一般良率较高,不良率较低,有些缺陷样本很难采集,甚至存在无法采集到样本的新缺陷,这种少样本、零样本的缺陷很容易造成漏检。
针对少样本、零样本的缺陷易漏检的问题,需要生成一些新的缺陷样本来参与AI缺陷检测模型的训练,在相关技术中,采用基于生成对抗网络(GAN)、基于变分自编码器(VAE)或基于深度生成模型生成新的缺陷图像,但上述方法均无法根据用户需求生成可自定义缺陷特征的缺陷图像。
针对相关技术中存在的上述问题,目前尚未发现有效的解决方案。
发明内容
本申请提供了一种图像生成方法、装置、电子设备及存储介质,以解决相关技术中存在的上述技术问题。
根据本申请的一个实施例,提供了一种图像生成方法,包括:获取文本、与所述文本对应的掩码、以及与所述文本对应的原始图像,所述掩码用于指示待生成缺陷的缺陷特征;对所述文本进行编码,得到所述文本对应的词嵌入向量,采用扩散模型对所述掩码和所述原始图像进行特征提取,得到所述掩码对应的掩码隐向量和所述原始图像对应的图像隐向量;根据所述词嵌入向量、所述掩码隐向量和所述图像隐向量生成与所述文本匹配的目标图片。
根据本申请的另一个实施例,提供了一种图像生成装置,包括:获取模块,用于获取文本、与所述文本对应的掩码、以及与所述文本对应的原始图像,所述掩码用于指示待生成缺陷的缺陷特征;提取模块,用于对所述文本进行编码,得到所述文本对应的词嵌入向量,采用扩散模型对所述掩码和所述原始图像进行特征提取,得到所述掩码对应的掩码隐向量和所述原始图像对应的图像隐向量;生成模块,用于根据所述词嵌入向量、所述掩码隐向量和所述图像隐向量生成与所述文本匹配的目标图片。
可选地,所述生成模块包括第一生成单元,用于将所述词嵌入向量配置为查询Query,所述掩码隐向量配置为键值Key,所述图像隐向量配置为属性Value;对所述Query、所述Key与所述Value进行特征融合,得到与所述文本匹配的目标图片。
可选地,所述第一生成单元,还用于对所述词嵌入向量对应的Query与所述图像隐向量对应的Value执行矩阵乘法,得到向量点积;调用随机特征变换函数RFM,采用所述RFM对所述向量点积进行权重计算,得到权重值;根据所述权重值,将所述掩码隐向量对应的Key与所述图像隐向量对应的Value进行融合;将融合后的向量进行重新排列以及线性化处理,生成与所述文本匹配的目标图片。所述RFM为:,其中x,y 分别为Value和Query,/>为信息融合的密度,/>为x,y随机特征向量的点积。
可选地,所述第一生成单元,还用于获取所述词嵌入向量的第一Query和第二Query,其中,所述第一Query用于指示在所述原始图像中生成所述掩码指示的待生成缺陷的目标缺陷类别,所述第二Query用于指示所述待生成缺陷在所述原始图像中的目标位置为所述掩码指示的指定位置;基于所述第一Query,确定与所述第一Query对应的第一Key,将所述第一Key与所述Value进行特征融合,以在所述原始图像中生成与所述目标缺陷类别对应的缺陷特征;基于所述第二Query,确定与所述第二Query对应的第二Key,在所述原始图像中定位所述目标位置,将所述第二Key与所述Value进行特征融合,以在所述原始图像中的目标位置生成所述待生成缺陷,得到与所述文本匹配的目标图片。
可选地,所述图像生成装置还包括训练模块,用于对所述图像隐向量添加第一噪声,得到第一图像隐向量;基于所述第一噪声的噪声量和预设比例计算第二噪声,所述第一噪声大于所述第二噪声;对所述图像隐向量添加所述第二噪声,得到第二图像隐向量;采用所述扩散模型的解码器对所述第一图像隐向量进行解码,得到第三图像隐向量;根据所述第二图像隐向量和所述第三图像隐向量,计算初始模型的损失值;根据所述损失值更新所述初始模型中的权重,得到中间模型。
可选地,所述训练模块,还用于对所述图像隐向量添加第三噪声,得到第四图像隐向量,所述第三噪声大于所述第一噪声;基于所述第三噪声的噪声量和所述预设比例计算第四噪声,所述第三噪声大于所述第四噪声;对所述图像隐向量添加所述第四噪声,得到第五图像隐向量;采用所述扩散模型的解码器对所述第四图像隐向量进行解码,得到第六图像隐向量;根据所述第五图像隐向量和所述第六图像隐向量,计算所述中间模型的损失值;根据所述损失值更新所述中间模型中的权重,得到所述扩散模型。
根据本申请的又一个实施例,还提供了一种存储介质,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行上述任一项装置实施例中的步骤。
根据本申请的又一个实施例,还提供了一种电子装置,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;其中:存储器,用于存放计算机程序;处理器,用于通过运行存储器上所存放的程序来执行上述方法中的步骤。
根据本申请的又一个实施例,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述方法中的步骤。
通过本申请实施例,获取文本、与文本对应的掩码、以及与文本对应的原始图像,掩码用于指示待生成缺陷的缺陷特征;对文本进行编码,得到文本对应的词嵌入向量,采用扩散模型对掩码和原始图像进行特征提取,得到掩码对应的掩码隐向量和原始图像对应的图像隐向量;根据词嵌入向量、掩码隐向量和图像隐向量生成目标图片。在文字生成图片的扩散模型Diffusion的基础上,增加掩码作为输入数据,通过掩码图片可自定义待生成缺陷的缺陷特征,即可根据用户需求生成指定缺陷特征的新图片,进而解决少样本、零样本的缺陷易漏检的问题。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1是本申请实施例的一种计算机的硬件结构框图;
图2是本申请实施例的一种图像生成方法的流程图;
图3是本申请实施例图像生成系统整体流程示意图;
图4是本申请实施例的交叉注意力的结构示意图;
图5是本申请实施例的由RFM替代softmax的计算过程转变示意图;
图6是本申请实施例的序列长度与内存占用之间的关系示意图;
图7是本申请实施例一运行实例图;
图8是本申请实施例的一种图像生成装置的结构框图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
实施例1
本申请实施例一所提供的方法实施例可以在计算机、手机、平板或者类似的运算装置中执行。以运行在计算机上为例,图1是本申请实施例的一种计算机的硬件结构框图。如图1所示,计算机可以包括一个或多个(图1中仅示出一个)处理器102(处理器102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)和用于存储数据的存储器104,可选地,上述计算机还可以包括用于通信功能的传输设备106以及输入输出设备108。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述计算机的结构造成限定。例如,计算机还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。
存储器104可用于存储计算机程序,例如,应用软件的软件程序以及模块,如本申请实施例中的一种图像生成方法对应的计算机程序,处理器102通过运行存储在存储器104内的计算机程序,从而执行各种功能应用以及数据处理,即实现上述的方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至计算机。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输设备106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括计算机的通信供应商提供的无线网络。在一个实例中,传输设备106包括一个网络适配器(Network Interface Controller,简称为NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输设备106可以为射频(Radio Frequency,简称为RF)模块,其用于通过无线方式与互联网进行通讯。
在本实施例中提供了一种图像生成方法,图2是根据本申请实施例的一种图像生成方法的流程图,如图2所示,该流程包括如下步骤:
步骤S10,获取文本、与所述文本对应的掩码、以及与所述文本对应的原始图像,所述掩码用于指示待生成缺陷的缺陷特征;
在本实施例中,文本为一段文字或一句话,比如“请帮我生成一张汽车轮毂的X光图片,这张图片在掩码指定的位置有缩松类别的产品缺陷,并且缩松的尺寸和形状与掩码图片相同”。
掩码为黑白二值化的图片,掩码图片中所有像素的灰阶只有0和255两种,其中,0表现为黑色,255表现为白色。本实施例中掩码用于指示想要在原始图像中生成何种缺陷,进而得到目标图片。即掩码用于指示待生成缺陷的缺陷特征,缺陷特征可以包括缺陷类别(例如,如图3所示的轮辐缩松类别)、尺寸、形状和位置等特征。
原始图像为与文本对应的待生成缺陷的原始图像,例如与文本对应的汽车轮毂图,原始图像可以包括产品各零部件的图像,例如汽车轮毂图、汽车转向节图、汽车车架图、汽车座椅图、发动机外观图、三元催化图和铸件外观图等等。
步骤S20,对所述文本进行编码,得到所述文本对应的词嵌入向量,采用扩散模型对所述掩码和所述原始图像进行特征提取,得到所述掩码对应的掩码隐向量和所述原始图像对应的图像隐向量;
步骤S30,根据所述词嵌入向量、所述掩码隐向量和所述图像隐向量生成目标图片。
参考图4,本实施例中可采用文本编码器对文本进行编码,将文本编码成长度为1536的词嵌入向量,词嵌入向量可表示输入提示词Prompt的上下文信息;采用扩散模型Diffusion的自编码器Auto Encoder KL对掩码和原始图像进行编码,将掩码和原始图像从像素空间(其中,掩码为单通道矩阵(B,H,W),原始图像为三通道矩阵(B,H,W,3))分别编码为隐向量空间的掩码隐向量、以及图像隐向量,进而基于扩散模型Diffusion根据词嵌入向量、掩码隐向量和图像隐向量生成与文本匹配的目标图片。本实施例中,扩散模型Diffusion可以实现通过文字生成图片。
通过上述步骤,获取文本、与文本对应的掩码、以及与文本对应的原始图像,掩码用于指示待生成缺陷的缺陷特征;对文本进行编码,得到文本对应的词嵌入向量,采用扩散模型对掩码和原始图像进行特征提取,得到掩码对应的掩码隐向量和原始图像对应的图像隐向量;根据词嵌入向量、掩码隐向量和图像隐向量生成目标图片。在文字生成图片的扩散模型Diffusion的基础上,增加掩码作为输入数据,通过掩码图片可自定义待生成缺陷的缺陷特征,即可根据用户需求生成指定缺陷特征的新图片,进而解决少样本、零样本的缺陷易漏检的问题。
在本实施例的一实施方式中,根据所述词嵌入向量、所述掩码隐向量和所述图像隐向量生成与所述文本匹配的目标图片包括:将所述词嵌入向量配置为查询Query,所述掩码隐向量配置为键值Key,所述图像隐向量配置为属性Value;对所述Query、所述Key与所述Value进行特征融合,得到与所述文本匹配的目标图片。
在本实施方式中,将词嵌入向量作为查询Query,掩码隐向量作为键值Key,图像隐向量作为属性Value;对Query、Key与Value进行特征融合,得到与文本匹配的目标图片。在本实施方式中,将不同模态的信息进行融合,可获取对输入数据更全面、更准确的理解。
在本实施方式中,采用扩散模型Diffusion中的Transformer的自注意力机制和交叉注意力机制对词嵌入向量、掩码隐向量和图像隐向量进行特征融合,在训练网络的过程中持续向隐向量中加入语义信息,使得网络学习到具有丰富语义信息,且与语义信息耦合的图像以及缺陷特征,更好地引导图像往文本词向量方向生成。除了本实施方式中采用的通过跨模态注意力cross-modal attention,通过注意力机制来动态融合不同模态的信息之外,还可以通过早期融合early fusion,将不同模态的数据在输入层进行融合;晚期融合late fusion,将不同模态的数据在模型的中间或输出层进行融合的方式进行特征融合等方式进行特征融合。
具体地,对所述Query、所述Key与所述Value进行特征融合,得到与所述文本匹配的目标图片包括:对所述词嵌入向量对应的Query与所述图像隐向量对应的Value执行矩阵乘法,得到向量点积;调用随机特征变换函数RFM,采用所述RFM对所述向量点积进行权重计算,得到权重值;根据所述权重值,将所述掩码隐向量对应的Key与所述图像隐向量对应的Value进行融合;将融合后的向量进行重新排列以及线性化处理,生成与所述文本匹配的目标图片。
参考图4,对Query和Value执行矩阵乘法Matmul,并进行缩放scale,得到向量点积;调用随机特征变换函数RFM:,其中x,y分别为Value和Query,/>为信息融合的密度,/>为x,y随机特征向量的点积;采用RFM函数对向量点积进行权重计算,得到权重值;根据权重值,对Key与Value执行矩阵乘法Matmul进行特征融合,将融合后的向量进行重新排列以及线性化处理Rearrange&Linear,生成与文本匹配的目标图片。
本实施方式中采用RFM函数替代相关技术中的Softmax,Softmax函数:,由于其求导过程简单,广泛应用在物理学中,但在经济学中,不总是那么准确;将其应用到机器学习领域时,只要涉及离散选择,它是有效的,但是当应用到连续的问题时就可能存在缺陷,Softmax函数用在注意力机制中存在两大问题:第一,对非语义的token(标点符合等)进行大量加权导致一些较高的权重成为难以压缩的异常值,使得训练变得不稳定,难以收敛。在自然语言处理NLP领域中,97%以上的异常激活发生在逗号,空格等标点符号位置上;第二,在一个典型的transformer中,部署多头注意力机制来解压缩复杂的语言模式,softmax注意力机制的时间和空间复杂度为O(M·N),并以输入序列长度的二次方速率增长,当token文本数量增多时,时空复杂度显著增大,这使得训练时可以配置的token数大大地受到限制。
而本实施方式中采用RFM函数替代Softmax,参考图5,RFM函数与Softmax函数具有相同的输入和输出尺寸要求,用RFM代替softmax,计算的过程发生如图5所示的转变,可将时间和空间复杂度从O(M·N)降低到O(M + N),即完成从二次方到线性的计算复杂度的过度,并且在处理非语义的token时不会出现影响训练的异常值。参考图6,图6中对比了使用本实施例的RFM与现有其他Transformer模型的不同方案下,序列长度与内存占用之间的关系,如图6中所示,RFM具有和Token长度线性增长的空间内存占用复杂度。
在本实施例的一实施方式中,对所述Query、所述Key与所述Value进行特征融合,得到与所述文本匹配的目标图片包括:获取所述词嵌入向量的第一Query和第二Query,其中,所述第一Query用于指示在所述原始图像中生成所述掩码指示的待生成缺陷的目标缺陷类别,所述第二Query用于指示所述待生成缺陷在所述原始图像中的目标位置为所述掩码指示的指定位置;基于所述第一Query,确定与所述第一Query对应的第一Key,将所述第一Key与所述Value进行特征融合,第一Key用于指示待生成缺陷的目标缺陷类别,以在所述原始图像中生成与所述目标缺陷类别对应的缺陷特征;基于所述第二Query,确定与所述第二Query对应的第二Key,第二Key用于指示生成缺陷的指定位置,在所述原始图像中定位所述目标位置,将所述第二Key与所述Value进行特征融合,以在所述原始图像中的目标位置生成所述待生成缺陷,得到与所述文本匹配的目标图片。
在模型训练过程中容易学习到Value,Query和Key内容之间的关联性,多模态融合的目标是使模型能够充分利用不同模态的信息,提高模型的性能和泛化能力。获取词嵌入向量的第一Query和第二Query,其中,第一Query用于指示在原始图像中生成掩码指示的待生成缺陷的目标缺陷类别,第二Query用于指示待生成缺陷在原始图像中的目标位置为掩码指示的指定位置;例如,当输入文本Prompt “请帮我生成一张汽车轮毂的X光图片,这张图片在掩码指定的位置有缩松类别的产品缺陷,并且缩松的大小和边缘与掩码图片相同”时,模型的注意力模块能够注意到掩码,图文的关联性以及文本中的关键信息,当文本词嵌入向量的Query(第一Query)为“缩松类别的产品缺陷”,注意力机制将重点关注生成缩松类别缺陷的特征,当文本词嵌入向量的Query(第二Query)为“掩码指定的位置”时,根据位置编码等在目标位置通过去除噪声生成缺陷目标位置为掩码指定的位置,进而得到与文本匹配的图片。
在本实施例的一实施方式中,所述方法还包括:对所述图像隐向量添加第一噪声,得到第一图像隐向量;基于所述第一噪声的噪声量和预设比例计算第二噪声,所述第一噪声大于所述第二噪声;对所述图像隐向量添加所述第二噪声,得到第二图像隐向量;采用所述扩散模型的解码器对所述第一图像隐向量进行解码,得到第三图像隐向量;根据所述第二图像隐向量和所述第三图像隐向量,计算初始模型的损失值;根据所述损失值更新所述初始模型中的权重,得到中间模型。
参考图3,对原始图像编码而成的图像隐向量中添加两份不同强度的噪声,其中一份加入第一噪声(高噪声,例如第一噪声为11%),得到第一图像隐向量记为V1,将V1输入Transformer扩散模型的自编码器,经过扩散模型解码器进行解码,得到第三图像隐向量记为,基于第一噪声的噪声量和预设比例计算第二噪声,对图像隐向量添加第二噪声(低噪声,例如预设比例为10%,则第二噪声为1%),得到第二图像隐向量记为V2。在本实施例中,加入的第一噪声总是比加入的第二噪声多预设比例,例如,加入V1的噪声总是比加入V2的噪声多10%,第一噪声与第二噪声之间形成一个梯度,这样使得网络有梯度优化的方向,有利于网络的收敛和快速训练,加入噪声的过程即为正向扩散。对比第二图像隐向量V2和第三图像隐向量/>,计算初始模型的损失值LOSS,根据损失值LOSS产生的梯度更新初始模型中的权重,得到中间模型。
在本实施例中,比对两个隐向量与V2计算KL散度Loss,并根据Loss梯度训练优化更新扩散模型里面的权重,使得模型具有去除噪声、复原的能力,去除噪声的过程即为反向扩散,经过预设次数(例如80轮)反向扩散的迭代训练,模型学习到图像和缺陷的特征,再输入Diffusion图像生成头,即可根据实际的应用场景自动生成带缺陷的图片,如图7所示的一运行实例图,生成具有夹渣缺陷、气孔缺陷的目标图片。生成目标图片之后,本实施例中的图片生成方法还可以包括:获取用户输入的反馈数值,反馈数值用于指示目标图片的准确度;根据反馈数值调整扩散模型的参数。用户可以根据生成图片中缺陷的特征或者风格的特征,分别反馈给特征提取环节或图片生成环节进行微调改善,即利用带人类反馈的强化学习(RLHF,Reinforcement Learning from Human Feedback)生成最终应用的图片。
在本实施方式中,对图像隐向量增加噪声的方式为逐步增加,比如首次加入V1的第一噪声为11%,计算出加入V2的第二噪声即为1%,后续逐步增加噪声的加入量,比如第二次加入V1的第三噪声为13%,加入V2的第四噪声即为3%。在图像隐向量中逐步增加两份不同强度的噪声,直到加至100%的噪声或达到预设次数,因此,在根据所述损失值更新所述初始模型中的权重,得到中间模型之后,继续添加噪声:对所述图像隐向量添加第三噪声,得到第四图像隐向量,所述第三噪声大于所述第一噪声;基于所述第三噪声的噪声量和所述预设比例计算第四噪声,所述第三噪声大于所述第四噪声;对所述图像隐向量添加所述第四噪声,得到第五图像隐向量;采用所述扩散模型的解码器对所述第四图像隐向量进行解码,得到第六图像隐向量;根据所述第五图像隐向量和所述第六图像隐向量,计算所述中间模型的损失值;根据所述损失值更新所述中间模型中的权重,得到所述扩散模型。
在本实施方式中逐步加入不同级别的噪声,使得梯度不会太大,有利于网络的收敛和快速训练。
本发明在汽车零部件缺陷检测领域可以根据用户的提示Prompt,即AIGC的提示工程,输入待生成缺陷图片的文字描述和预生成缺陷所在位置和大小的掩码,大量生成用户自定义的缺陷图片,这些生成的图片可以用来训练此领域生产过程中产品所产生缺陷的AI检测大模型。
在项目开发的前期,可以快速评估项目最终能达到的效果,减少试错成本,提高整体投入产出比。本发明所述的缺陷生成方案针对少存图、高良率、新缺陷漏检等生成缺陷数据,解决小样本,零样本等问题,可以快速(降低60%周期)部署实施。
本发明基于扩散模型Diffusion(文字生成图片)以图文生图, 通过模拟噪声的正向扩散和反向扩散,并逐步增加噪声的比例,在训练过程中网络逐渐学会根据输入的Prompt生成缺陷仿正图片,该方法生成的缺陷图片多样且逼真,有惊艳的效果。通过本实施例生成的仿真图片可用于训练汽车零部件轮毂X光内部缺陷检测大模型,缺陷检测大模型应用在缺陷检测生产线中,两类未参与训练数据被大模型检出,与其它模型相比,过检降低1%,漏检降低0.3%,缺陷分割效果和类型划分准确率提高5%以上,轮毂少见形态夹杂、点状缩松在基于仿正生成数据训练的大模型检测效果明显,罕见缺陷检测准确度较其它算法提升了2倍。参考下表,3D打印缺陷检测项目各类缺陷图片都在10张以下,基于仿真数据训练模型检出率达90%以上。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本申请各个实施例所述的方法。
实施例2
在本实施例中还提供了一种图像生成装置,用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图8是根据本申请实施例的一种图像生成装置的结构框图,如图8所示,该装置包括:
获取模块80,用于获取文本、与所述文本对应的掩码、以及与所述文本对应的原始图像,所述掩码用于指示待生成缺陷的缺陷特征;
提取模块82,用于对所述文本进行编码,得到所述文本对应的词嵌入向量,采用扩散模型对所述掩码和所述原始图像进行特征提取,得到所述掩码对应的掩码隐向量和所述原始图像对应的图像隐向量;
生成模块84,用于根据所述词嵌入向量、所述掩码隐向量和所述图像隐向量生成与所述文本匹配的目标图片。
需要说明的是,上述各个模块是可以通过软件或硬件来实现的,对于后者,可以通过以下方式实现,但不限于此:上述模块均位于同一处理器中;或者,上述各个模块以任意组合的形式分别位于不同的处理器中。
实施例3
本申请的实施例还提供了一种存储介质,该存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
可选地,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的计算机程序:
S1,获取文本、与所述文本对应的掩码、以及与所述文本对应的原始图像,所述掩码用于指示待生成缺陷的缺陷特征;
S2,对所述文本进行编码,得到所述文本对应的词嵌入向量,采用扩散模型对所述掩码和所述原始图像进行特征提取,得到所述掩码对应的掩码隐向量和所述原始图像对应的图像隐向量;
S3,根据所述词嵌入向量、所述掩码隐向量和所述图像隐向量生成与所述文本匹配的目标图片。
可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(Read-Only Memory,简称为ROM)、随机存取存储器(Random Access Memory,简称为RAM)、移动硬盘、磁碟或者光盘等各种可以存储计算机程序的介质。
本申请的实施例还提供了一种电子设备,包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。
可选地,上述电子设备还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。
可选地,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:
S1,获取文本、与所述文本对应的掩码、以及与所述文本对应的原始图像,所述掩码用于指示待生成缺陷的缺陷特征;
S2,对所述文本进行编码,得到所述文本对应的词嵌入向量,采用扩散模型对所述掩码和所述原始图像进行特征提取,得到所述掩码对应的掩码隐向量和所述原始图像对应的图像隐向量;
S3,根据所述词嵌入向量、所述掩码隐向量和所述图像隐向量生成与所述文本匹配的目标图片。
可选地,本实施例中的具体示例可以参考上述实施例及可选实施方式中所描述的示例,本实施例在此不再赘述。上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。在本申请的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器ROM、随机存取存储器RAM、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅是本申请的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。
Claims (8)
1.一种图像生成方法,其特征在于,所述方法包括:
获取文本、与所述文本对应的掩码、以及与所述文本对应的原始图像,所述掩码用于指示待生成缺陷的缺陷特征;
对所述文本进行编码,得到所述文本对应的词嵌入向量,采用扩散模型对所述掩码和所述原始图像进行特征提取,得到所述掩码对应的掩码隐向量和所述原始图像对应的图像隐向量;
根据所述词嵌入向量、所述掩码隐向量和所述图像隐向量生成与所述文本匹配的目标图片;
其中,根据所述词嵌入向量、所述掩码隐向量和所述图像隐向量生成与所述文本匹配的目标图片包括:将所述词嵌入向量配置为查询Query,所述掩码隐向量配置为键值Key,所述图像隐向量配置为属性Value;对所述Query、所述Key与所述Value进行特征融合,得到与所述文本匹配的目标图片;
对所述Query、所述Key与所述Value进行特征融合,得到与所述文本匹配的目标图片包括:对所述词嵌入向量对应的Query与所述图像隐向量对应的Value执行矩阵乘法,得到向量点积;调用随机特征变换函数RFM,采用所述RFM对所述向量点积进行权重计算,得到权重值;根据所述权重值,将所述掩码隐向量对应的Key与所述图像隐向量对应的Value进行融合;将融合后的向量进行重新排列以及线性化处理,生成与所述文本匹配的目标图片。
2.根据权利要求1所述的方法,其特征在于,所述RFM为:
,其中x,y 分别为Value和Query,/>为信息融合的密度,/>为x,y随机特征向量的点积。
3.根据权利要求1所述的方法,其特征在于,对所述Query、所述Key与所述Value进行特征融合,得到与所述文本匹配的目标图片包括:
获取所述词嵌入向量的第一Query和第二Query,其中,所述第一Query用于指示在所述原始图像中生成所述掩码指示的待生成缺陷的目标缺陷类别,所述第二Query用于指示所述待生成缺陷在所述原始图像中的目标位置为所述掩码指示的指定位置;
基于所述第一Query,确定与所述第一Query对应的第一Key,将所述第一Key与所述Value进行特征融合,以在所述原始图像中生成与所述目标缺陷类别对应的缺陷特征;基于所述第二Query,确定与所述第二Query对应的第二Key,在所述原始图像中定位所述目标位置,将所述第二Key与所述Value进行特征融合,以在所述原始图像中的目标位置生成所述待生成缺陷,得到与所述文本匹配的目标图片。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
对所述图像隐向量添加第一噪声,得到第一图像隐向量;
基于所述第一噪声的噪声量和预设比例计算第二噪声,所述第一噪声大于所述第二噪声;
对所述图像隐向量添加所述第二噪声,得到第二图像隐向量;
采用所述扩散模型的解码器对所述第一图像隐向量进行解码,得到第三图像隐向量;
根据所述第二图像隐向量和所述第三图像隐向量,计算初始模型的损失值;
根据所述损失值更新所述初始模型中的权重,得到中间模型。
5.根据权利要求4所述的方法,其特征在于,在根据所述损失值更新所述初始模型中的权重,得到中间模型之后,所述方法还包括:
迭代执行以下步骤,直到迭代次数达到N次,将当前的中间模型输出为所述扩散模型,N为大于2的整数:
对所述图像隐向量添加第三噪声,得到第四图像隐向量,所述第三噪声大于所述第一噪声;基于所述第三噪声的噪声量和所述预设比例计算第四噪声,所述第三噪声大于所述第四噪声;对所述图像隐向量添加所述第四噪声,得到第五图像隐向量;采用所述扩散模型的解码器对所述第四图像隐向量进行解码,得到第六图像隐向量;根据所述第五图像隐向量和所述第六图像隐向量,计算所述中间模型的损失值;根据所述损失值更新所述中间模型中的权重,得到更新后的中间模型。
6.一种图像生成装置,其特征在于,包括:
获取模块,用于获取文本、与所述文本对应的掩码、以及与所述文本对应的原始图像,所述掩码用于指示待生成缺陷的缺陷特征;
提取模块,用于对所述文本进行编码,得到所述文本对应的词嵌入向量,采用扩散模型对所述掩码和所述原始图像进行特征提取,得到所述掩码对应的掩码隐向量和所述原始图像对应的图像隐向量;
生成模块,用于根据所述词嵌入向量、所述掩码隐向量和所述图像隐向量生成与所述文本匹配的目标图片;
所述生成模块包括第一生成单元,用于将所述词嵌入向量配置为查询Query,所述掩码隐向量配置为键值Key,所述图像隐向量配置为属性Value;对所述Query、所述Key与所述Value进行特征融合,得到与所述文本匹配的目标图片;
所述第一生成单元,还用于对所述词嵌入向量对应的Query与所述图像隐向量对应的Value执行矩阵乘法,得到向量点积;调用随机特征变换函数RFM,采用所述RFM对所述向量点积进行权重计算,得到权重值;根据所述权重值,将所述掩码隐向量对应的Key与所述图像隐向量对应的Value进行融合;将融合后的向量进行重新排列以及线性化处理,生成与所述文本匹配的目标图片。
7.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;其中:
存储器,用于存放计算机程序;
处理器,用于通过运行存储器上所存放的程序来执行权利要求1至5中任一项所述的方法步骤。
8.一种计算机存储介质,其特征在于,所述计算机存储介质包括存储的程序,其中,所述程序运行时执行权利要求1至5中任一项所述的方法步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311580884.8A CN117292020B (zh) | 2023-11-24 | 2023-11-24 | 图像生成方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311580884.8A CN117292020B (zh) | 2023-11-24 | 2023-11-24 | 图像生成方法、装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117292020A CN117292020A (zh) | 2023-12-26 |
CN117292020B true CN117292020B (zh) | 2024-03-26 |
Family
ID=89239395
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311580884.8A Active CN117292020B (zh) | 2023-11-24 | 2023-11-24 | 图像生成方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117292020B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117576264B (zh) * | 2024-01-15 | 2024-03-22 | 腾讯科技(深圳)有限公司 | 图像生成方法、装置、设备及介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116109733A (zh) * | 2023-01-16 | 2023-05-12 | 中国科学院自动化研究所 | 文本驱动图像编辑方法、装置、电子设备及存储介质 |
CN116363261A (zh) * | 2023-03-31 | 2023-06-30 | 北京百度网讯科技有限公司 | 图像编辑模型的训练方法、图像编辑方法和装置 |
CN116796287A (zh) * | 2023-06-16 | 2023-09-22 | 平安科技(深圳)有限公司 | 图文理解模型的预训练方法、装置、设备及存储介质 |
CN116884004A (zh) * | 2023-07-20 | 2023-10-13 | 京东方科技集团股份有限公司 | 图像处理方法、装置、电子设备和存储介质 |
CN116912187A (zh) * | 2023-07-06 | 2023-10-20 | 迈杰转化医学研究(苏州)有限公司 | 图像生成模型训练及图像生成方法、装置、设备和介质 |
CN117036184A (zh) * | 2023-07-05 | 2023-11-10 | 腾讯科技(深圳)有限公司 | 图像合成方法、装置、电子设备及存储介质 |
-
2023
- 2023-11-24 CN CN202311580884.8A patent/CN117292020B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116109733A (zh) * | 2023-01-16 | 2023-05-12 | 中国科学院自动化研究所 | 文本驱动图像编辑方法、装置、电子设备及存储介质 |
CN116363261A (zh) * | 2023-03-31 | 2023-06-30 | 北京百度网讯科技有限公司 | 图像编辑模型的训练方法、图像编辑方法和装置 |
CN116796287A (zh) * | 2023-06-16 | 2023-09-22 | 平安科技(深圳)有限公司 | 图文理解模型的预训练方法、装置、设备及存储介质 |
CN117036184A (zh) * | 2023-07-05 | 2023-11-10 | 腾讯科技(深圳)有限公司 | 图像合成方法、装置、电子设备及存储介质 |
CN116912187A (zh) * | 2023-07-06 | 2023-10-20 | 迈杰转化医学研究(苏州)有限公司 | 图像生成模型训练及图像生成方法、装置、设备和介质 |
CN116884004A (zh) * | 2023-07-20 | 2023-10-13 | 京东方科技集团股份有限公司 | 图像处理方法、装置、电子设备和存储介质 |
Non-Patent Citations (1)
Title |
---|
生成扩散模型研究综述;闫志浩 等;《计算机科学》;第1-12页 * |
Also Published As
Publication number | Publication date |
---|---|
CN117292020A (zh) | 2023-12-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108090521B (zh) | 一种生成式对抗网络模型的图像融合方法和判别器 | |
CN117292020B (zh) | 图像生成方法、装置、电子设备及存储介质 | |
CN110689599A (zh) | 基于非局部增强的生成对抗网络的3d视觉显著性预测方法 | |
CN110009018B (zh) | 一种图像生成方法、装置以及相关设备 | |
CN112580567B (zh) | 一种模型获取方法、模型获取装置及智能设备 | |
CN116189172B (zh) | 一种3d目标检测方法、设备、存储介质和芯片 | |
CN112950640A (zh) | 视频人像分割方法、装置、电子设备及存储介质 | |
CN110570375B (zh) | 一种图像处理方法、装置、电子设置以及存储介质 | |
CN113971732A (zh) | 小目标检测方法、装置、可读存储介质及电子设备 | |
CN112948582B (zh) | 一种数据处理方法、装置、设备以及可读介质 | |
CN111553961B (zh) | 线稿对应色图的获取方法和装置、存储介质和电子装置 | |
CN111709945B (zh) | 一种基于深度局部特征的视频拷贝检测方法 | |
CN113313653A (zh) | 一种基于生成式对抗网络的图像去噪声方法及装置 | |
KR20230144580A (ko) | 이미지 프로세싱 방법, 장치, 및 디바이스, 그리고 컴퓨터-판독가능 저장 매체 | |
CN112258392A (zh) | 一种超分辨图像训练方法、装置、介质及设备 | |
CN116798052B (zh) | 文本识别模型的训练方法和装置、存储介质及电子设备 | |
CN115880717B (zh) | 一种热图关键点预测方法、装置、电子设备及存储介质 | |
CN114814684B (zh) | 小型核磁共振设备优化成像方法、装置、设备及介质 | |
CN115937338B (zh) | 图像处理方法、装置、设备及介质 | |
CN113627567B (zh) | 图片处理方法、文本处理方法、相关设备及存储介质 | |
CN116580269B (zh) | 训练模型的方法、处理图像的方法、电子设备及存储介质 | |
CN113610704B (zh) | 图像生成方法、装置、设备和可读存储介质 | |
CN118135062A (zh) | 一种图像编辑方法、装置、设备及存储介质 | |
CN117611953A (zh) | 图形码生成方法、装置、计算机设备及存储介质 | |
CN117197274A (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 |