掌桥专利:专业的专利平台
掌桥专利
首页

一种图像修补方法及装置、一种电子设备

文献发布时间:2024-04-18 19:52:40


一种图像修补方法及装置、一种电子设备

技术领域

本发明属于图像处理领域,尤其涉及一种图像修补方法及装置。

背景技术

图像修补是人工智能图像处理领域其中一个分支,可以通过自然语言描述限定以处理相应的图像,实现一定程度上对模型生成内容的控制。

近年来,得益于算力的发展和大数据的累积,通过自然语音控制修补图像的效果已经与画师相差无几,部分图像处理模型的输出效果甚至超越了画师的水平,另一方面,图像修补技术的迅猛发展也基于扩散生成模型这项技术的突破。

然而,仅仅依靠自然语言的描述来生成一张完整的图像,仍然具有大量的不可控因素,此外,在实际的设计生产类工作中,往往需要在各个图层、文字、特效及其的组合中,对整体图像的局部进行多次调整,才能够输出一个完整的图像,调整图像参数的过程冗长。因此,需要在扩散模型的生成过程中导入更多、更完整的控制因素,以提升图像处理的能力,可以进一步促进当前扩散生成模型技术的应用与落地。

图像修补领域目前还存在部分缺陷:(1)基于扩散生成模型的算法主要输入仍为自然语言文本,无法做到对画面布局、人体姿态、物体轮廓、物体间相对位置、局部重绘等方面高精细度控制,限制了其实际应用的场景;(2)基于扩散生成模型或是传统算法、深度学习算法等处理手段修补的图像会存在一些过渡、融合不自然的瑕疵,这往往还需要一些特殊后处理操作才能在一定程度上修复,但问题仍然存在,并且以隐变量扩散模型为代表的图像修补算法,还会导致不需要修补的图像区域出现失真的现象。

基于以上,本申请提供了解决以上技术问题的技术方案。

发明内容

针对现有技术中图像修补技术训练复杂、融合效果差的问题,本发明提供了一种图像修补方法,包括以下步骤:

步骤S1、获取配对条件-图像数据集和大规模图文配对数据集;

步骤S2、获取预训练隐变量扩散生成模型G

步骤S3、构建条件控制网络C

步骤S4、基于配对条件-图像数据集训练条件控制网络C

步骤S5、根据大规模图文配对数据集,基于预训练隐变量扩散生成模型G

步骤S6、基于条件控制网络C和隐变量扩散修补模型G

步骤S7、基于符号距离场SDF构建平滑权重图,将所述待修补区域图像融合至原图像中;

步骤S8、输出完成修补的图像。

在本发明的一个具体实施方式中,步骤S2还包括:

步骤S21、基于大规模图文配对数据集对预训练隐变量扩散生成模型的文本编码器Text Encoder进行单独预训练;

步骤S22、根据所述大规模图文配对数据集,采用对比自然语言-图像预训练框架预训练文本编码器Text Encoder;

步骤S23、通过多阶段训练模式训练自编码网络VAE和图像去噪网络U-Net。

在本发明的一个具体实施方式中,步骤S23还包括:

所述多阶段训练模式包括两级训练阶段;

步骤S231、采用数据集中的图像部分,训练自编码网络VAE;

步骤S232、固定自编码网络VAE和文本编码器Text Encoder,基于大规模图文配对数据集,在原图像中增加随机噪声,训练去噪网络U-Net。

在本发明的一个具体实施方式中,步骤S4中还包括:

步骤S41、以零初始化全部参数;

步骤S42、固定预训练隐变量扩散生成模型G

步骤S43、将条件控制网络C

步骤S44、优化条件控制网络C

在本发明的一个具体实施方式中,步骤S5中还包括:

步骤S51、将预训练隐变量扩散生成模型G

步骤S52、设计多种随机掩膜生成策略;

步骤S53、在大规模图文数据集上对初始化的G

在本发明的一个具体实施方式中,步骤S6中还包括:

步骤S61、将掩膜作为去噪模型的输入,与条件图像点相乘,得到乘积结果;

步骤S62、将乘积结果输入条件控制网络C;

步骤S63、将条件控制网络C的中间层状态输入至隐变量扩散修补模型G

在本发明的一个具体实施方式中,步骤S7中还包括:

步骤S71、采用正弦函数作为激活函数,使符号距离场SDF的取值范围压缩至[0,1],作为平滑权重图;

步骤S72、所述平滑权重图与掩膜、修补区域图像、原图像相乘,输出完成修补的图像。

在本发明的一个具体实施方式中,步骤S7中还包括:

符号距离场SDF由下式计算而得:

平滑权重图由下式计算而得:

图像融合由下式计算而得:

I

其中,d为欧氏距离函数,像素x到二维图形轮廓编辑的距离为Ω,

本发明还提供一种图像修补装置,包括:

获取模块,用于获取配对条件-图像数据集、大规模图文配对数据集和预训练隐变量扩散生成模型G

条件控制网络构建模块,用于构建条件控制网络C

条件控制网络训练模块,基于配对条件-图像数据集训练条件控制网络C

隐变量扩散修补模型训练模块,用于根据大规模图文配对数据集,基于预训练隐变量扩散生成模型G1,微调训练得到隐变量扩散修补模型G

修补图像生成模块,基于条件控制网络C

图像融合模块,基于符号距离场SDF构建平滑权重图,将所述待修补区域图像融合至原图像中;

输出模块,用于输出完成修补的图像。

本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现前述的一种图像修补方法。

本发明能够带来以下至少一种有益效果:

(1)采用预训练隐变量扩散生成模型,并构建同构的条件生成网络,在所述配对条件-图像数据集上进行训练,可以在不损失预训练生成模型能力的基础上实现条件控制的能力;

(2)采用预训练隐变量扩散生成模型初始化隐变量扩散修补模型,在大规模图文数据集上进行微调,计算过程简单,降低训练成本;

(3)采用基于符号距离场SDF构建的平滑权重图融合修补区域和原图区域,使得修补区域和原图区域过渡更加平滑,图像修补效果更加自然,能够输出符合要求的高保真图像。

附图说明

下面将以明确易懂的方式,结合附图说明优选实施方式,对上述特性、技术特征、优点及其实现方式予以进一步说明。

图1为本发明实施例中图像修补方法步骤示意图;

图2为本发明实施例中预训练隐变量扩散生成模型训练步骤示意图;

图3为本发明实施例中图像修补装置结构示意图。

具体实施方式

以下对本发明的各个方面进行进一步详述。

除非另有定义或说明,本文中所使用的所有专业与科学用语与本领域技术熟练人员所熟悉的意义相同。此外任何与所记载内容相似或均等的方法及材料皆可应用于本发明中。

以下对术语进行说明。

除非另有明确的规定和限定,本发明中所述的“或”,包含了“和”的关系。所述“和”相当于布尔逻辑运算符“AND”,所述“或”相当于布尔逻辑运算符“OR”,而“AND”是“OR”的子集。

可以理解到,尽管术语“第一”、“第二”等等可以在此用来说明不同的元件,但是这些元件不应被这些术语限制。这些术语仅仅用来将一个元件与另一个元件区分开。因此,第一元件可以被称为第二元件,而不背离本发明构思的教导。

本发明中,术语“含有”、“包含”或“包括”表示各种成分可一起应用于本发明的混合物或组合物中。因此,术语“主要由...组成”包含在术语“含有”、“包含”或“包括”中。

除非另有明确的规定和限定,本发明的术语“相连”、“连通”、“连接”应作广义理解,例如,可以是固定连接,也可以是通过中介媒介间相连,可以是两个元件内部的连通或者两个元件的相互作用关系。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本申请中的具体含义。

例如,如果一个元件(或部件)被称为在另一个元件上、与另一个元件耦合或者与另一个元件连接,那么所述一个元件可以直接地在所述另一个元件上形成、与之耦合或者与之连接,或者在它们之间可以有一个或多个介于中间的元件。相反,如果在此使用表述“直接在......上”、“直接与......耦合”和“直接与......连接”,那么表示没有介于中间的元件。用来说明元件之间的关系的其他词语应该被类似地解释,例如“在......之间”和“直接在......之间”、“附着”和“直接附着”、“相邻”和“直接相邻”等等。

另外需要说明的是,下面描述中使用的词语“前”、“后”、“左”、“右”、“上”和“下”指的是附图中的方向。使用的词语“内”和“外”分别指的是朝向或远离特定部件几何中心的方向。可以理解到,在此,这些术语用来描述如在附图中所示的一个元件、层或区域相对于另一个元件、层或区域的关系。除了在附图中描述的取向之外,这些术语应该也包含装置的其他取向。

本发明的其它方面由于本文的公开内容,对本领域的技术人员而言是显而易见的。

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对照附图说明本发明的具体实施方式。显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图,并获得其他的实施方式。

还需要说明的是,以下实施例中所提供的图示仅以示意方式说明本申请的基本构想,图式中仅显示与本申请中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。例如,在附图中的元件的厚度可以为了清楚性起见而被夸张。

以下,对本公开涉及到的术语进行解释说明:

隐变量扩散模型:在隐变量空间进行生成的扩散模型。

可控图像修补:在原图中对一些局部区域进行可控生成的任务,局部区域由掩膜指定,可控体允许输入除自然语言文本以外的条件,并且输出结果与输入的条件保持一致。

高保真:图像修补中,修补区域图像的视觉质量高、修补区域以外的图像在经过处理后与输入的一致、修补区域的图像与其余区域视觉上融合连贯。

实施例

针对现有技术中对于图像修补技术中训练复杂、融合效果差的技术空白,如附图1所示,本发明提供一种图像修补方法,包括以下步骤:

步骤S1、获取配对条件-图像数据集和大规模图文配对数据集。

具体的,配对条件-图像数据集的构建方法可以是:采用预训练模型对原图进行条件提取,采用人体关键点提取网络提取人像的骨骼关键点作为条件,原人像作为配对图像;和/或,采用深度估计网络提取自然场景图像的深度图,原场景图作为配对图像;和/或,采用传统边缘提取算法提取图像轮廓,原图作为配对图像。

本发明利用预训练条件提取网络在适量图像上进行条件提取,计算复杂度低,能够以低成本构建配对条件-图像数据集,进一步降低了图像修补方法的计算开销。

应当理解,上述仅为示例,包括但不限于的配对条件-图像数据集的构建方法步骤,只要不对本发明的发明目的产生限制任何形式的增加或删减,都应当被包含在本发明的主旨内。

步骤S2、获取预训练隐变量扩散生成模型G

在一个优选的实施例中,如附图2所示,对预训练隐变量扩散生成模型G

步骤S21、基于大规模图文配对数据集对预训练隐变量扩散生成模型的文本编码器Text Encoder进行单独预训练。

步骤S22、根据所述大规模图文配对数据集,采用对比自然语言-图像预训练框架预训练文本编码器Text Encoder。

步骤S23、通过多阶段训练模式训练自编码网络VAE和图像去噪网络U-Net。

在一个优选的实施例中,步骤S23还包括:

所述多阶段训练模式包括两级训练阶段。

步骤S231、采用数据集中的图像部分,训练自编码网络VAE。

步骤S232、固定自编码网络VAE和文本编码器Text Encoder,基于大规模图文配对数据集,在原图像中增加随机噪声,训练去噪网络U-Net。

本发明提出的多阶段隐变量扩散生成模型训练方法兼顾了灵活性与可操作性,且训练效果优秀、结果稳定。

步骤S3、构建条件控制网络C

步骤S4、基于配对条件-图像数据集训练条件控制网络C

在一个优选的实施例中,步骤S4中还包括:

步骤S41、以零初始化全部参数。

步骤S42、固定预训练隐变量扩散生成模型G

步骤S43、将条件控制网络C

步骤S44、优化条件控制网络C

在该步骤中,先以零初始化全部参数,保证了模型的准确性,再采用预训练隐变量扩散生成模型构建同构的条件生成网络,在所述配对条件-图像数据集上进行训练,可以在不损失预训练生成模型能力的基础上实现条件控制的能力。

步骤S5、根据大规模图文配对数据集,基于预训练隐变量扩散生成模型G

在一个优选的实施例中,步骤S5中还包括:

步骤S51、将预训练隐变量扩散生成模型G

步骤S52、设计多种随机掩膜生成策略。

具体的,所述随机掩膜生成策略包括随机多边形、随机椭圆形等。应当理解,上述形状仅为示例,包括但不限于的其他图形形状,只要不对本发明的发明目的产生限制任何形式的增加或删减,都应当被包含在本发明的主旨内。

步骤S53、在大规模图文数据集上对初始化的G

在该步骤中,采用预训练隐变量扩散生成模型初始化隐变量扩散修补模型,又设计了多种随机掩膜生成策略,并在大规模图文配对数据集上对G

步骤S6、基于条件控制网络C和隐变量扩散修补模型G

在一个优选的实施例中,步骤S6中还包括:

步骤S61、将掩膜作为去噪模型的输入,与条件图像点相乘,得到乘积结果。

步骤S62、将乘积结果输入条件控制网络C。

步骤S63、将条件控制网络C的中间层状态输入至隐变量扩散修补模型G

步骤S7、基于符号距离场SDF构建平滑权重图,将所述待修补区域图像融合至原图像中。

在一个优选的实施例中,步骤S7中还包括:

步骤S71、采用正弦函数作为激活函数,使符号距离场SDF的取值范围压缩至[0,1],作为平滑权重图。

步骤S72、所述平滑权重图与掩膜、修补区域图像、原图像相乘,输出完成修补的图像。

其中,步骤S7中还包括:

符号距离场SDF由下式计算而得:

平滑权重图由下式计算而得:

图像融合由下式计算而得:

I

其中,d为欧氏距离函数,像素x到二维图形轮廓编辑的距离为Ω,

在该步骤中,通过基于符号距离场SDF构建的平滑权重图对修补区域和原图区域进行融合,实现了高保真的图像修补结果,使得待修补区域的图像和原图像融合连贯自然,图像质量高。

步骤S8、输出完成修补的图像。

实施例一提出的图像修补方法实现了在不损失预训练生成模型能力的基础上实现条件控制的能力,输出的完成修补的高保真图像修补处融合自然,且图像修补方法计算复杂度低,计算开销小。

实施例二

本发明还提供一种图像修补装置,包括:

获取模块,用于获取配对条件-图像数据集、大规模图文配对数据集和预训练隐变量扩散生成模型G

条件控制网络构建模块,用于构建条件控制网络C

条件控制网络训练模块,基于配对条件-图像数据集训练条件控制网络C

隐变量扩散修补模型训练模块,用于根据大规模图文配对数据集,基于预训练隐变量扩散生成模型G

修补图像生成模块,基于条件控制网络C

图像融合模块,基于符号距离场SDF构建平滑权重图,将所述待修补区域图像融合至原图像中。

输出模块,用于输出完成修补的图像。

实施例三

本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时,实现实施例一所述的一种图像修补方法。

需要注意的是,本发明的每个具体实施方式的单个或多个技术特征可以和其他实施方式的单个或多个技术特征进行组合,这些组合都属于本发明的保护范围。

综上,本发明获得了如下效果:

本发明提出了一种基于隐变量扩散模型的图像修补方法、装置和一种电子设备,实现了在不损失预训练生成模型能力的基础上实现条件控制的能力,输出的完成修补的高保真图像修补处融合自然,且图像修补方法计算复杂度低,计算开销小。

基于本申请,所属领域的技术人员应了解,本文中所描述的一个方面可与任何其它方面独立地实施,且可以各种方式组合这些方面中的两者或两者以上。举例来说,可使用本文中所阐述的任何数目和方面来实施设备及/或实践方法。另外,可使用除了本文中所阐述的方面中的一或多者之外的其它结构及/或功能性实施此设备及/或实践此方法。

本领域技术人员知道,除了以纯计算机可读程序代码方式实现本发明提供的系统及其各个装置、模块、单元以外,完全可以通过将方法步骤进行逻辑编程来使得本发明提供的系统及其各个装置、模块、单元以逻辑门、开关、专用集成电路、可编程逻辑控制器以及嵌入式微控制器等的形式来实现相同功能。所以,本发明提供的系统及其各项装置、模块、单元可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置、模块、单元也可以视为硬件部件内的结构;也可以将用于实现各种功能的装置、模块、单元视为既可以是实现方法的软件模块又可以是硬件部件内的结构。

应当说明的是,上述实施例均可根据需要自由组合。以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

在本发明提及的所有文献都在本申请中引用作为参考,就如同每一篇文献被单独引用作为参考那样。此外应理解,在阅读了本发明的上述内容之后,本领域技术人员可以对本发明作各种改动或修改,这些等价形式同样落于本申请所附权利要求书所限定的范围。

技术分类

06120116333945