首页> 中国专利> 抠图模型的训练、抠图方法、装置、设备及存储介质

抠图模型的训练、抠图方法、装置、设备及存储介质

摘要

本申请实施例公开了一种抠图模型的训练、抠图方法、装置、设备及存储介质,属于计算机视觉领域。该方法包括:将样本图像输入第一图像分割模型和第二图像分割模型,分别得到样本图像对应的初始样本Mask图和初始样本Trimap图;利用初始样本Mask图对初始样本Trimap图进行优化,得到目标样本Trimap图;将目标样本Trimap图和样本图像输入抠图模型,得到样本图像对应的样本Alpha图;基于样本Alpha图和样本图像对应的标注Alpha图,对图像处理模型进行训练。可以提高Trimap图的分割精确度,在训练过程中能够以更加准确的图像分割依据对模型参数进行调整,进而提高抠图模型的抠图精确度和准确率。

著录项

  • 公开/公告号CN112541927A

    专利类型发明专利

  • 公开/公告日2021-03-23

    原文格式PDF

  • 申请/专利权人 OPPO广东移动通信有限公司;

    申请/专利号CN202011504662.4

  • 发明设计人 刘钰安;

    申请日2020-12-18

  • 分类号G06T7/11(20170101);G06T7/12(20170101);G06T7/194(20170101);G06T5/30(20060101);G06N3/08(20060101);

  • 代理机构11138 北京三高永信知识产权代理有限责任公司;

  • 代理人邢惠童

  • 地址 523860 广东省东莞市长安镇乌沙海滨路18号

  • 入库时间 2023-06-19 10:21:15

说明书

技术领域

本申请实施例涉及计算机视觉领域,特别涉及一种抠图模型的训练、抠图方法、装置、设备及存储介质。

背景技术

抠图是指将图片或影像的一部分从原始图片或原始影像中分离,成为单独图层的操作,可以应用于人像虚化、背景替换以及图像合成等领域。目前的图像处理软件利用神经网络进行图像处理,不需要手动操作,能够提高图像处理的效率以及抠图的精确度。

相关技术中,二阶段人像抠图算法是较为常见的抠图工具,具体方法是先对图像分割模型所生成的掩膜(Mask)图进行腐蚀和膨胀处理,得到三层分割(Trimap)图,或利用Trimap分割模型直接得到含有前景、背景及待定区域的Trimap图,最后将Trimap图输入抠图模型,生成透明通道(Alpha)图,从而利用Alpha图对原图像进行处理。

二阶段人像抠图算法的抠图精确度主要依赖于第一阶段生成Trimap图的精确度,然而,相关技术中并没有对Trimap图进行修正和优化,若Trimap图精确度较低,则会导致最终的抠图结果不准确。

发明内容

本申请实施例提供了一种抠图模型的训练、抠图方法、装置、设备及存储介质。所述技术方案如下:

一方面,本申请实施例提供了一种抠图模型的训练方法,所述方法包括:

将样本图像输入第一图像分割模型和第二图像分割模型,分别得到所述样本图像对应的初始样本掩膜Mask图和初始样本三层分割Trimap图,所述初始样本Mask图被划分为前景区域和背景区域,所述初始样本Trimap图被划分为前景区域、背景区域和待定区域;

利用所述初始样本Mask图对所述初始样本Trimap图进行优化,得到目标样本Trimap图;

将所述目标样本Trimap图和所述样本图像输入抠图模型,得到所述样本图像对应的样本透明通道Alpha图,所述样本Alpha图中包含各个像素点对应的预测透明通道值;

基于所述样本Alpha图和所述样本图像对应的标注Alpha图,对所述图像处理模型进行训练,所述标注Alpha图中标注有各个像素点的样本透明通道值。

另一方面,本申请实施例提供了一种抠图方法,所述方法包括:

将目标图像输入第一图像分割模型和第二图像分割模型,分别得到所述目标图像对应的初始Mask图和初始Trimap图,所述初始Mask图被划分为前景区域和背景区域,所述初始Trimap图被划分为前景区域、背景区域和待定区域;

利用所述初始Mask图对所述初始Trimap图进行优化,得到目标Trimap图;

将所述目标Trimap图和所述目标图像输入抠图模型,得到所述目标图像对应的Alpha图,所述Alpha图中包含各个像素点对应的透明通道值。

另一方面,本申请实施例提供了一种抠图模型的训练装置,所述装置包括:

第一输入模块,用于将样本图像输入第一图像分割模型和第二图像分割模型,分别得到所述样本图像对应的初始样本掩膜Mask图和初始样本三层分割Trimap图,所述初始样本Mask图被划分为前景区域和背景区域,所述初始样本Trimap图被划分为前景区域、背景区域和待定区域;

第一优化模块,用于利用所述初始样本Mask图对所述初始样本Trimap图进行优化,得到目标样本Trimap图;

第二输入模块,用于将所述目标样本Trimap图和所述样本图像输入抠图模型,得到所述样本图像对应的样本透明通道Alpha图,所述样本Alpha图中包含各个像素点对应的预测透明通道值;

训练模块,用于基于所述样本Alpha图和所述样本图像对应的标注Alpha图,对所述图像处理模型进行训练,所述标注Alpha图中标注有各个像素点的样本透明通道值。

另一方面,本申请实施例提供了一种抠图装置,所述装置包括:

第三输入模块,用于将目标图像输入第一图像分割模型和第二图像分割模型,分别得到所述目标图像对应的初始Mask图和初始Trimap图,所述初始Mask图被划分为前景区域和背景区域,所述初始Trimap图被划分为前景区域、背景区域和待定区域;

第二优化模块,用于利用所述初始Mask图对所述初始Trimap图进行优化,得到目标Trimap图;

第四输入模块,用于将所述目标Trimap图和所述目标图像输入抠图模型,得到所述目标图像对应的Alpha图,所述Alpha图中包含各个像素点对应的透明通道值。

另一方面,本申请实施例提供了一种计算机设备,所述计算机设备包括处理器和存储器;所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如上述方面所述的抠图模型的训练方法,或实现如上述方面所述的抠图方法。

另一方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一条程序代码,所述程序代码由处理器加载并执行以实现如上述方面所述的抠图模型的训练方法,或实现如上述方面所述的抠图方法。

根据本申请的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备实现上述方面的各种可选实现方式中提供的抠图模型的训练方法或抠图方法。

本申请实施例提供的技术方案带来的有益效果至少包括:

本申请实施例中,利用第一图像分割模型生成的初始样本Mask图对第二图像分割模型所生成的初始样本Trimap图进行优化,使得到的目标样本Trimap图中前景区域、背景区域和待定区域的划分更加接近样本图像,提高Trimap图的分割精确度,从而使抠图模型在基于目标Trimap图进行训练的过程中,能够以更加准确的图像分割依据对模型参数进行调整,进而提高抠图模型的抠图精确度和准确率;在模型应用阶段,利用初始Mask图对初始Trimap图进行优化,得到目标Trimap图,从而使抠图模型只需基于目标Trimap图中的前景区域和背景区域对待定区域进行精细分割,减少了抠图模型的计算量,预先为抠图模型提供了高准确度的图像分割依据,避免抠图模型基于错误的分割结果进行抠图,提高了抠图模型的抠图效率以及抠图精确度。

附图说明

图1是相关技术中的抠图方法的流程图;

图2是本申请一个示例性实施例提供的抠图模型的训练方法的流程图;

图3是本申请一个示例性实施例提供的由样本图像生成初始样本Mask图和初始样本Trimap图的示意图;

图4是本申请另一个示例性实施例提供的抠图模型的训练方法的流程图;

图5是本申请一个示例性实施例提供的抠图方法的流程图;

图6是本申请一个示例性实施例提供的初始Mask图;

图7是本申请一个示例性实施例提供的初始Trimap图;

图8是本申请另一个示例性实施例提供的抠图方法的流程图;

图9是本申请一个示例性实施例提供的对初始Mask图进行腐蚀处理的示意图;

图10是本申请一个示例性实施例提供的对候选Trimap图中的前景区域进行优化的示意图;

图11是本申请一个示例性实施例提供的利用抠图模型生成的Alpha图;

图12是本申请另一个示例性实施例提供的抠图方法的流程图;

图13是本申请一个示例性实施例提供的生成目标Trimap图的流程图;

图14是本申请一个示例性实施例提供的抠图模型的训练装置的结构框图;

图15是本申请一个示例性实施例提供的抠图装置的结构框图;

图16是本申请一个示例性实施例提供的计算机设备的结构框图。

具体实施方式

为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。

在本文中提及的“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。

相关技术通常利用二阶段人像抠图算法进行抠图,一种方法方法是先利用图像分割模型生成的Mask图,再对其进行腐蚀和膨胀处理,得到包含前景区域、背景区域及待定区域的Trimap图,如图1所示,其流程包括步骤101,获取目标图像;步骤102,将目标图像输入图像分割模型,生成Mask图;步骤103,对Mask图进行膨胀腐蚀处理,生成Trimap图;步骤104,将Trimap图和目标图像输入抠图模型,生成Alpha图。另一种方法是利用Trimap分割模型直接得到含有前景区域、背景区域及待定区域的Trimap图,其流程是将上述步骤102至103替换为步骤105,将目标图像输入Trimap分割模型,生成Trimap图。两种方式最后都是将Trimap图输入抠图模型,使抠图模型在Trimap图对待抠取内容和其它内容大致划分的基础上,进一步分割,并生成透明通道(Alpha)图,从而利用Alpha图对原图像进行处理。

显然,二阶段人像抠图算法的抠图精确度主要依赖于第一阶段生成Trimap图的精确度,然而相关技术中并没有对Trimap图进行修正和优化,若Trimap图精确度较低,则会导致最终的抠图结果不准确。

为了解决上述技术问题,本申请实施例提供了一种抠图模型的训练、抠图方法,在利用第一图像分割模型和第二图像分割模型分别得到初始Mask图和初始Trimap图后,利用初始Mask图对初始Trimap中各个区域进行优化,得到目标Trimap图,从而提高抠图模型的抠图精确度和准确率。

图2示出了本申请一个实施例提供的抠图模型的训练方法的流程图。本申请实施例以该方法应用于计算机设备为例进行说明,该方法包括:

步骤201,将样本图像输入第一图像分割模型和第二图像分割模型,分别得到样本图像对应的初始样本Mask图和初始样本Trimap图,初始样本Mask图被划分为前景区域和背景区域,初始样本Trimap图被划分为前景区域、背景区域和待定区域。

Mask图是由图像分割模型直接对图像中的目标内容和其它内容进行分割得到的位图,其中包含前景区域和背景区域,前景区域为图像分割模型确定目标内容所对应的区域,而背景区域则是图像分割模型确定其他内容所对应的区域。对应于人像抠图领域,前景区域即为图像中的人像,而背景区域则是图像中除人像以外的部分。

Trimap图是由Mask图经过膨胀腐蚀处理,或者由图像分割模型直接对图像进行分割等方式得到的位图,其中包含前景区域、背景区域以及待定区域,待定区域是图像分割模型取法确定是否为目标内容的区域,通常包含目标内容的边界,待定区域需要在后续抠图阶段由抠图模型进行精确分割。

在一种可能的实施方式中,计算机设备将样本图像输入第一图像分割模型,得到初始样本Mask图,并将样本图像输入第二图像分割模型,得到初始样本Trimap图。

示意性的,图3示出了一种样本图像对应的初始样本Mask图和初始样本Trimap图。计算机设备将样本图像301分别输入第一图像分割模型和第二图像分割模型,将样本图像301中的人像和背景进行分割,得到初始样本Mask图302和初始样本Trimap图303,其中,初始样本Mask图302中包含前景区域302a和背景区域302b,初始样本Trimap图303中包含前景区域303a、背景区域303b以及待定区域303c。

在一种可能的实施方式中,在模型训练阶段,计算机设备首先分别对第一图像分割模型和第二图像分割模型进行模型训练,利用训练完成的第一图像分割模型和第二图像分割模型对样本图片进行图像分割,在执行对抠图模型的训练步骤。

步骤202,利用初始样本Mask图对初始样本Trimap图进行优化,得到目标样本Trimap图。

通常,Mask图是图像分割模型直接对目标内容和其它内容进行区分得到的,因此可能会将目标内容与其它内容的交界处等不确定区域直接划分为前景区域,从而可能导致后续抠图模型的抠图准确度较低;而Trimap图中既包含前景区域,也包含待定区域,计算机设备只将属于目标内容的概率较高的部分划分为前景区域,将目标内容的边界等不易分割的内容划分为待定区域,即待定区域中包含部分目标内容,因此可能会存在后续抠图时目标内容不完整的情况。

在一种可能的实施方式中,为了提高抠图模型的准确度,本申请实施例通过利用初始样本Mask图对初始样本Trimap图进行优化的方式,得到目标样本Trimap图,从而利用目标样本Trimap图对抠图模型进行训练。

步骤203,将所目标样本Trimap图和样本图像输入抠图模型,得到样本图像对应的样本透明通道Alpha图,样本Alpha图中包含各个像素点对应的预测透明通道值。

计算机设备利用抠图模型,基于目标样本Trimap图中的前景区域和背景区域,对样本图像进行特征提取,从而基于各区域的特征对待定区域进行进一步分割,同时对目标样本Trimap图中的各个像素点设置透明通道值,例如,对于前景区域的部分像素点可以直接设置为不透明,对于背景区域的部分像素则直接设置为完全透明,对于待定区域,抠图模型基于精细分割的结果对其中的不同像素点设置不同的透明通道值,使目标内容的边缘区域得到更加细致的处理。

步骤204,基于样本Alpha图和样本图像对应的标注Alpha图,对抠图模型进行训练,标注Alpha图中标注有各个像素点的样本透明通道值。

标注Alpha图是预先被标注有各个像素点对应样本透明通道值的Alpha图,其样本透明通道值的精确度较高,用作抠图模型对比抠图结果进而调整参数的依据。计算机设备基于样本Alpha图和标注Alpha图对抠图模型中的参数进行调整,并重复迭代至抠图模型的输出结果较为接近标注Alpha图,使抠图模型的模型参数不断被优化。

综上所述,本申请实施例中,利用第一图像分割模型生成的初始Mask图对第二图像分割模型所生成的初始Trimap图进行优化,使得到的目标Trimap图中前景区域、背景区域和待定区域的划分更加接近样本图像,提高Trimap图的分割精确度,从而使抠图模型在基于目标Trimap图进行训练的过程中,能够以更加准确的图像分割依据对模型参数进行调整,进而提高抠图模型的抠图精确度和准确率。

图4示出了本申请另一个实施例提供的抠图模型的训练方法的流程图。本申请实施例以该方法应用于计算机设备为例进行说明,该方法包括:

步骤401,将样本图像输入第一图像分割模型和第二图像分割模型,分别得到样本图像对应的初始样本Mask图和初始样本Trimap图,初始样本Mask图被划分为前景区域和背景区域,初始样本Trimap图被划分为前景区域、背景区域和待定区域。

步骤401的具体实施方式可以参考上述步骤201,本申请实施例在此不再赘述。

步骤402,利用初始样本Mask图对初始样本Trimap图中的待定区域进行优化,得到候选样本Trimap图。

图像分割模型生成初始样本Mask图和初始样本Trimap图的方式不同,二者对于目标内容边界等区域的分割存在差异,通常初始样本Mask图的前景区域过大而初始样本Trimap图的前景区域过小。在一种可能的实施方式中,计算机设备利用初始样本Mask图中的前景区域对初始样本Trimap图中的待定区域进行优化,将在初始样本Mask图中属于前景区域,而在初始样本Trimap图中属于背景区域的部分,重新确定为待定区域,使得候选样本Trimap图中的待定区域和前景区域能够尽量完全覆盖目标内容所对应的区域。

为了便于抠图模型对不同的区域进行区分和学习以及计算机设备对初始样本Trimap图的优化,初始样本Mask图以及初始样本Trimap图中,不同区域对应的像素值不同,前景区域中的像素点对应第一像素值,待定区域中的像素点对应第二像素值,背景区域中的像素点对应第三像素值,第一像素值大于所述第二像素值,且第二像素值大于第三像素值。

示意性的,前景区域的像素值为255,背景区域的像素值为0,待定区域的像素值为128。

在一种可能的实施方式中,计算机设备基于初始样本Mask图和初始样本Trimap图中像素点的像素值进行优化,步骤402包括如下步骤:

步骤402a,确定初始样本Trimap图和初始样本Mask图中像素点的对应关系。

初始样本Trimap图和初始样本Mask图是基于同一张样本图像得到的,二者的像素点一一对应。计算机设备将在初始样本Trimap图和初始样本Mask图中相对位置相同的像素点确定为对应像素点。例如,计算机设备基于各个像素点在初始样本Trimap图和初始样本Mask图中的坐标,确定像素点的对应关系。

步骤402b,对于初始样本Trimap图中任一像素点,响应于像素点在初始样本Trimap图中对应的像素值为第三像素值,且像素点在初始样本Mask图中对应的像素值为第一像素值,将初始样本Trimap图中像素点的像素值更新为第二像素值,得到候选样本Trimap图。

在一种可能的实施方式中,计算机设备将在初始样本Trimap图中为第三像素值,而在初始样本Mask图中为第一像素值的像素点,划分至候选样本Trimap图中的待定区域,即将第一图像分割模型确认属于前景区域,而第二图像分割模型确认属于背景区域的部分,确定为待定区域,对待定区域进行扩大,使前景区域和待定区域尽可能涵盖目标内容,避免目标样本Trimap图中部分目标内容被划分至背景区域。

具体的,计算机设备利用开源数据库(Numerical Python,Numpy)中的数组运算,生成候选样本Trimap图。

可选的,计算机设备复制初始样本Trimap图得到其拷贝图,在拷贝图中进行像素值的更新;或者,计算机设备直接对初始样本Trimap图进行优化得到候选样本Trimap图。本申请实施例对此不作限定。

示意性的,计算机设备按照预设顺序遍历初始样本Trimap图和初始样本Mask图中的像素点,遍历至像素点A时,确定像素点A在初始样本Trimap图中的像素值为255,则该点像素值不变;遍历至像素点B时,确定像素点B在初始样本Trimap图中的像素值为128,则该点像素值不变;遍历至像素点C时,确定像素点C在初始样本Trimap图中的像素值为0,且在初始样本Mask图中的像素值为255,则将该点的像素值更新为128。

步骤403,利用开源计算机视觉库(Open Source Computer Vision Library,OpenCV)中的图像腐蚀函数,对初始样本Mask图进行腐蚀处理,得到腐蚀样本Mask图,腐蚀样本Mask图中的前景区域小于初始样本Mask图中的前景区域。

腐蚀是一种基本的形态学运算,用于寻找图像中的极小区域,即将图像中的高两部分或白色区域进行缩减细化,使结果图比原图的高亮区域更小。计算机设备通过腐蚀处理,使得到的腐蚀样本Mask图中前景区域小于初始样本Mask图中的前景区域。

具体的,计算机设备利用OpenCV中的图像腐蚀函数cv2.ercode()对初始样本Mask图进行腐蚀处理。示意性的,计算机设备利用15*15的卷积核对初始样本Mask图进行一次腐蚀迭代,得到腐蚀样本Mask图。

步骤404,利用腐蚀样本Mask图对候选样本Trimap图中的前景区域进行优化,得到目标样本Trimap图,腐蚀样本Mask图由初始样本Mask图经过腐蚀处理得到。

与待定区域类似,通常初始样本Trimap中的前景区域过小,并不能完全包含目标内容对应的区域,而腐蚀样本Mask图中的前景区域准确度相对较高,因此计算机设备利用腐蚀样本Mask图中的前景区域对候选样本Trimap中的前景区域进行完善。

在一种可能的实施方式中,基于上述步骤中的像素值分布情况,计算机设备基于腐蚀样本Mask图和候选样本Trimap图中像素点的像素值进行优化,步骤404包括如下步骤:

步骤404a,对腐蚀样本Mask图和候选样本Trimap图进行像素级叠加,得到样本叠加图像。

可选的,计算机设备直接将腐蚀样本Mask图和候选样本Trimap图进行像素级叠加,得到样本叠加图像;或者,计算机设备将腐蚀样本Mask图中像素点的像素值叠加至候选样本Trimap图,得到样本叠加图像,本申请实施例对此不作限定。

示意性的,计算机设备按照预设顺序遍历候选样本Trimap图和腐蚀样本Mask图中的像素点,遍历至像素点A时,确定像素点A在候选样本Trimap图中的像素值为255,在腐蚀样本Mask图中的像素值为255,则确定该像素点在样本叠加图像中的像素值为510。

步骤404b,对于样本叠加图像中的任一像素点,响应于像素值大于第一像素值,将像素点在样本叠加图像中的像素值更新为第一像素值,得到目标样本Trimap图。

在一种可能的实施方式中,计算机设备对于在样本叠加图像中像素值大于第一像素值的像素点,将其像素值更新为第一像素值,得到目标样本Trimap图。也即是对于在候选样本Trimap图中属于待定区域,而在腐蚀样本Mask图中属于前景区域的像素点,确定其属于目标样本Trimap图中的前景区域,从而提高前景区域的准确度。

示意性的,腐蚀样本Mask图和候选样本Trimap图中,前景区域的像素值为255,待定区域的像素值为128,背景区域的像素值为0,则对于样本叠加图像中像素值为383的像素点,计算机设备将其像素值更新为255。

上述优化过程可以利用开源库中的数组运算以及函数实现,无需搭建神经网络模型且运算速度快。

步骤405,将目标样本Trimap图和样本图像输入抠图模型,得到样本图像对应的样本透明通道Alpha图,样本Alpha图中包含各个像素点对应的预测透明通道值。

计算机设备对初始样本Trimap图中的前景区域和待定区域优化完成后,将得到的目标样本Trimap图和样本图像输入抠图模型。抠图模型利用目标样本Trimap图中的前景区域和背景区域,对样本图像中相应区域的内容进行特征提取,学习目标内容与其它内容的特征及区别,并基于提取到的特征对目标样本Trimap图中的待定区域进行精细分割,同时生成各个像素点对应的预测透明通道值。

步骤406,计算样本Alpha图中各个像素点对应预测透明通道值与样本透明通道值的欧氏距离。

在一种可能的实施方式中,计算机设备采用欧氏距离计算抠图损失。首先计算样本Alpha图中各个像素点对应预测透明通道值与样本透明通道值的欧氏距离,其公式如下:

其中,αAlpha为像素点的预测透明通道值,αLabel为像素点的样本透明通道值,∈为一常量,用于修正计算结果。

步骤407,基于欧氏距离确定抠图模型的抠图损失,抠图损失为各个像素点对应的欧氏距离之和。

在一种可能的实施方式中,计算机设备以各个像素点对应的欧氏距离之和为抠图模型的抠图损失,其具体公式如下:

其中,N表示样本Alpha图中像素点的个数,

步骤408,基于抠图损失,利用梯度下降算法对抠图模型进行反向传播训练。

计算机设备基于计算得到的抠图损失,计算其对各个模型参数的梯度,从而确定损失函数的收敛方向,并对模型参数进行修正,经过多次迭代训练,使抠图模型的准确率升高。

可选的,当模型训练的次数达到次数阈值,或者当抠图损失小于预设值时,确定抠图损失收敛,模型训练完成。

本申请实施例中,利用初始样本Mask图中的前景区域对初始样本Trimap图中的待定区域进行优化,并利用腐蚀样本Mask图中的前景区域对候选样本Trimap图中的前景区域进行优化,使得目标样本Trimap图中的待定区域和前景区域能够尽量覆盖目标内容所对应的区域,从而提高抠图模型的抠图精确度,提高抠图效率;利用开源库中的数组运算和腐蚀函数进行优化,无需搭建神经网络模型且运算速度快;利用像素点对应的样本透明通道值与预测透明通道值之间的欧氏距离计算抠图损失,并对基于抠图损失对抠图模型反向传播训练,提高抠图模型的准确度和抠图效果。

上述各个实施例描述了抠图模型的训练过程,在抠图模型训练完成后,计算机设备利用抠图模型对目标图像进行抠图,得到其对应的Alpha图。图5示出了本申请一个示例性实施例示出的抠图方法的流程图,本申请实施例以该方法应用于计算式设备为例进行说明,该方法包括:

步骤501,将目标图像输入第一图像分割模型和第二图像分割模型,分别得到目标图像对应的初始Mask图和初始Trimap图,初始Mask图被划分为前景区域和背景区域,初始Trimap图被划分为前景区域、背景区域和待定区域。

计算机设备将目标图像输入第一图像分割模型,得到初始Mask图,并将目标图像输入第二图像分割模型,得到初始Trimap图。示意性的,图6示出了一种目标图像经过第一图像分割模型处理后对应的初始Mask图,其中包含前景区域601以及背景区域602;图7示出了一种目标图像经过第二图像分割模型处理后对应的初始Trimap图,其中包含前景区域701、背景区域702以及待定区域703。

步骤502,利用初始Mask图对初始Trimap图进行优化,得到目标Trimap图。

从图6和图7中可以明显看出,初始Mask图中仅包含前景区域和背景区域,并分割出待定区域,第一图像分割模型将可能为目标内容(即待抠取的图像内容)的部分都划分为前景区域,因此初始Mask图的前景区域中会包含较为完整的目标内容以及一部分背景内容;而初始Trimap图中除了前景区域和背景区域,还包含有待定区域,第二抠图模型只将极可能属于目标内容的部分分割为前景区域,对于不确定的部分则分割为待定区域,因此通常初始Trimap图中的前景区域无法包含完整的目标内容,而待定区域则既包含目标内容也包含背景内容,并且前景区域和待定区域可能也并未完全覆盖目标内容。因此在一种可能的实施方式中,计算机设备利用初始Mask图对初始Trimap图进行优化的方式,得到目标Trimap图。

步骤503,将目标Trimap图和目标图像输入抠图模型,得到目标图像对应的Alpha图,Alpha图中包含各个像素点对应的透明通道值。

计算机设备利用抠图模型,基于目标Trimap图中的前景区域和背景区域,对目标图像进行特征提取,从而基于各区域的特征对待定区域进行进一步分割,同时对目标Trimap图中的各个像素点设置透明通道值,使目标内容的边缘区域得到更加细致的处理。

综上所述,本申请实施例中,利用初始Mask图对初始Trimap图进行优化,得到目标Trimap图,从而使抠图模型只需基于目标Trimap图中的前景区域和背景区域对待定区域进行精细分割,减少了抠图模型的计算量,预先为抠图模型提供了高准确度的图像分割依据,避免抠图模型基于错误的分割结果进行抠图,提高了抠图模型的抠图效率以及抠图精确度。

图8示出了本申请另一个示例性实施例示出的抠图方法的流程图,本申请实施例以该方法应用于计算式设备为例进行说明,该方法包括:

步骤801,将目标图像输入第一图像分割模型和第二图像分割模型,分别得到目标图像对应的初始Mask图和初始Trimap图,初始Mask图被划分为前景区域和背景区域,初始Trimap图被划分为前景区域、背景区域和待定区域。

步骤801的具体实施方式可以参考上述步骤501,本申请实施例在此不再赘述。

步骤802,利用初始Mask图对初始Trimap图中的待定区域进行优化,得到候选Trimap图。

为了便于抠图模型对不同的区域进行区分和学习以及计算机设备对初始Trimap图的优化,初始Mask图以及初始Trimap图中,不同区域对应的像素值不同,前景区域中的像素点对应第一像素值,待定区域中的像素点对应第二像素值,背景区域中的像素点对应第三像素值,第一像素值大于第二像素值,且第二像素值大于第三像素值。

示意性的,前景区域的像素值为255,背景区域的像素值为0,待定区域的像素值为128。

在一种可能的实施方式中,计算机设备基于初始Mask图和初始Trimap图中像素点的像素值进行优化,步骤802包括如下步骤:

步骤802a,确定初始Trimap图和初始Mask图中像素点的对应关系。

初始Trimap图和初始Mask图是基于同一张样本图像得到的,二者的像素点一一对应。计算机设备将在初始Trimap图和初始Mask图中相对位置相同的像素点确定为对应像素点。例如,计算机设备基于各个像素点在初始Trimap图和初始Mask图中的坐标,确定像素点的对应关系。

步骤802b,对于初始Trimap图中任一像素点,响应于像素点在初始Trimap图中对应的像素值为第三像素值,且像素点在初始Mask图中对应的像素值为第一像素值,将初始Trimap图中像素点的像素值更新为第二像素值,得到候选Trimap图。

在一种可能的实施方式中,计算机设备将在初始Trimap图中为第三像素值,而在初始Mask图中为第一像素值的像素点,划分至候选Trimap图中的待定区域,即将第一图像分割模型确认属于前景区域,而第二图像分割模型确认属于背景区域的部分,确定为待定区域,对待定区域进行扩大,使前景区域和待定区域尽可能涵盖目标内容,避免目标Trimap图中部分目标内容被划分至背景区域。

具体的,计算机设备利用Numpy中的数组运算,生成候选样本Trimap图。

步骤803,利用腐蚀Mask图对候选Trimap图中的前景区域进行优化,得到目标Trimap图,腐蚀Mask图由初始Mask图经过腐蚀处理得到。

在一种可能的实施方式中,计算机设备利用OpenCV中的图像腐蚀函数,对初始Mask图进行腐蚀处理,得到腐蚀Mask图,腐蚀Mask图中的前景区域小于初始Mask图中的前景区域。

示意性的,图9示出了一种由初始Mask图生成腐蚀Mask图的过程。初始Mask图901经过腐蚀处理后,得到腐蚀Mask图902,由图9可以明显看出,腐蚀Mask图902中的前景区域小于初始Mask图901中的前景区域。

步骤803a,对腐蚀Mask图和候选Trimap图进行像素级叠加,得到叠加图像。

示意性的,计算机设备按照预设顺序遍历候选Trimap图和腐蚀Mask图中的像素点,遍历至像素点A时,确定像素点A在候选Trimap图中的像素值为255,在腐蚀Mask图中的像素值为255,则确定该像素点在叠加图像中的像素值为510。

步骤803b,对于叠加图像中的任一像素点,响应于像素值大于所述第一像素值,将像素点在叠加图像中的像素值更新为第一像素值,得到目标Trimap图。

计算机设备对于在叠加图像中像素值大于第一像素值的像素点,将其像素值更新为第一像素值,得到目标Trimap图。也即是对于在候选Trimap图中属于待定区域,而在腐蚀Mask图中属于前景区域的像素点,确定其属于目标Trimap图中的前景区域,从而提高前景区域的完整度。

示意性的,图10示出了一种由腐蚀Mask图对候选Trimap图中的前景区域进行优化,得到目标Trimap图的过程。计算机设备将腐蚀Mask图902和候选Trimap图1001进行像素级叠加并更新像素值,得到目标Trimap图1002,由图10可以明显看出,目标Trimap图1002相比于候选Trimap图1001,其前景区域更加完整,接近实际的人像区域。

步骤804,将目标Trimap图和目标图像输入抠图模型。

计算机设备对样本Trimap图中的前景区域和待定区域优化完成后,将得到的目标Trimap图和目标图像输入抠图模型,利用抠图模型对目标Trimap图进行精细抠图。

步骤805,利用抠图模型对目标图像对应目标Trimap图中前景区域和背景区域的部分进行特征提取,得到图像特征。

在一种可能的实施方式中,计算机设备利用抠图模型学习目标Trimap图中前景区域和背景区域的图像特征,并基于学习到的图像特征对待定区域进一步分割。

步骤806,基于图像特征,利用抠图模型对目标Trimap图中的待定区域进行图像分割,并对目标Trimap图进行透明度处理,得到Alpha图。

抠图模型利用目标Trimap图中的前景区域和背景区域,对目标图像中相应区域的内容进行特征提取,学习目标内容与其它内容的图像特征及区别,并基于提取到的图像特征对目标Trimap图中的待定区域进行精细分割,同时生成各个像素点对应的透明通道值。

示意性的,图11示出了抠图模型对一种目标Trimap图进行抠图所生成的Alpha图。其中,目标Trimap图1002中包含前景区域、背景区域和待定区域,对应的Alpha图1101中仅包含前景区域和背景区域,并且由图11可以看出,目标Trimap图1002边缘区域较为平滑,而Alpha图1101中人像边缘区域得到了精细分割。

本申请实施例中,利用初始Mask图中的前景区域对初始Trimap图中的待定区域进行优化,并利用腐蚀Mask图中的前景区域对候选Trimap图中的前景区域进行优化,使得目标Trimap图中的待定区域和前景区域能够尽量覆盖目标内容所对应的区域,从而提高抠图模型的抠图精确度,提高抠图效率。

结合上述各个实施例,在一个示意性的例子中,抠图方法的流程如图12所示。

步骤1201,获取目标图像。

步骤1202,将目标图像输入第一图像分割模型。

步骤1203,生成初始Mask图。

步骤1204,将目标图像输入第二图像分割模型。

步骤1205,生成初始Trimap图。

步骤1206,利用初始Mask图对初始Trimap图进行优化,生成目标Trimap图。

步骤1207,将目标Trimap图和目标图像输入抠图模型,生成Alpha图。

结合上述各个实施例,在一个示意性的例子中,生成目标Trimap图的流程如图13所示。

步骤1301,复制初始Trimap图,得到拷贝Trimap图。

步骤1302,利用初始Mask图对拷贝Trimap图中的待定区域进行优化,得到候选Trimap图。

步骤1303,对初始Mask图进行腐蚀处理,得到腐蚀Mask图。

步骤1304,将腐蚀Mask图与候选Trimap图叠加,得到目标Trimap图。

图14示出了本申请一个示例性实施例提供的抠图模型的训练装置的结构框图。该装置可以通过软件、硬件或者两者的结合实现成为终端的全部或一部分。该装置包括:

第一输入模块1401,用于将样本图像输入第一图像分割模型和第二图像分割模型,分别得到所述样本图像对应的初始样本掩膜Mask图和初始样本三层分割Trimap图,所述初始样本Mask图被划分为前景区域和背景区域,所述初始样本Trimap图被划分为前景区域、背景区域和待定区域;

第一优化模块1402,用于利用所述初始样本Mask图对所述初始样本Trimap图进行优化,得到目标样本Trimap图;

第二输入模块1403,用于将所述目标样本Trimap图和所述样本图像输入抠图模型,得到所述样本图像对应的样本透明通道Alpha图,所述样本Alpha图中包含各个像素点对应的预测透明通道值;

训练模块1404,用于基于所述样本Alpha图和所述样本图像对应的标注Alpha图,对所述图像处理模型进行训练,所述标注Alpha图中标注有各个像素点的样本透明通道值。

可选的,所述第一优化模块1402包括:

第一优化单元,用于利用所述初始样本Mask图对所述初始样本Trimap图中的待定区域进行优化,得到候选样本Trimap图;

第二优化单元,用于利用腐蚀样本Mask图对所述候选样本Trimap图中的前景区域进行优化,得到所述目标样本Trimap图,所述腐蚀样本Mask图由所述初始样本Mask图经过腐蚀处理得到。

可选的,前景区域中的像素点对应第一像素值,待定区域中的像素点对应第二像素值,背景区域中的像素点对应第三像素值,所述第一像素值大于所述第二像素值,且所述第二像素值大于所述第三像素值;

所述第一优化单元,还用于:

确定所述初始样本Trimap图和所述初始样本Mask图中像素点的对应关系;

对于所述初始样本Trimap图中任一像素点,响应于所述像素点在所述初始样本Trimap图中对应的像素值为所述第三像素值,且所述像素点在所述初始样本Mask图中对应的像素值为所述第一像素值,将所述初始样本Trimap图中所述像素点的像素值更新为所述第二像素值,得到所述候选样本Trimap图。

可选的,所述第二优化单元,还用于:

对所述腐蚀样本Mask图和所述候选样本Trimap图进行像素级叠加,得到样本叠加图像;

对于所述样本叠加图像中的任一像素点,响应于像素值大于所述第一像素值,将所述像素点在所述样本叠加图像中的像素值更新为所述第一像素值,得到所述目标样本Trimap图。

可选的,所述训练模块1404,包括:

计算单元,用于计算所述样本Alpha图中各个像素点对应预测透明通道值与所述样本透明通道值的欧氏距离;

确定单元,用于基于所述欧氏距离确定所述抠图模型的抠图损失,所述抠图损失为各个所述像素点对应的所述欧氏距离之和;

训练单元,用于基于所述抠图损失,利用梯度下降算法对所述图像处理模型进行反向传播训练。

可选的,所述装置还包括:

第一图像处理单元,用于利用开源计算机视觉库OpenCV中的图像腐蚀指令,对所述初始样本Mask图进行腐蚀处理,得到所述腐蚀样本Mask图,所述腐蚀样本Mask图中的前景区域小于所述初始样本Mask图中的前景区域。

图15示出了本申请一个示例性实施例提供的抠图装置的结构框图。该装置可以通过软件、硬件或者两者的结合实现成为终端的全部或一部分。该装置包括:

第三输入模块1501,用于将目标图像输入第一图像分割模型和第二图像分割模型,分别得到所述目标图像对应的初始Mask图和初始Trimap图,所述初始Mask图被划分为前景区域和背景区域,所述初始Trimap图被划分为前景区域、背景区域和待定区域;

第二优化模块1502,用于利用所述初始Mask图对所述初始Trimap图进行优化,得到目标Trimap图;

第四输入模块1503,用于将所述目标Trimap图和所述目标图像输入抠图模型,得到所述目标图像对应的Alpha图,所述Alpha图中包含各个像素点对应的透明通道值。

可选的,所述第二优化模块1502,包括:

第三优化单元,用于利用所述初始Mask图对所述初始Trimap图中的待定区域进行优化,得到候选Trimap图;

第四优化单元,用于利用腐蚀Mask图对所述候选Trimap图中的前景区域进行优化,得到所述目标Trimap图,所述腐蚀Mask图由所述初始Mask图经过腐蚀处理得到。

可选的,所述前景区域中的像素点对应第一像素值,待定区域中的像素点对应第二像素值,背景区域中的像素点对应第三像素值,所述第一像素值大于所述第二像素值,且所述第二像素值大于所述第三像素值;

所述第三优化单元,还用于:

确定所述初始Trimap图和所述初始Mask图中像素点的对应关系;

对于所述初始Trimap图中任一像素点,响应于所述像素点在所述初始Trimap图中对应的像素值为所述第三像素值,且所述像素点在所述初始Mask图中对应的像素值为所述第一像素值,将所述初始Trimap图中所述像素点的像素值更新为所述第二像素值,得到所述候选Trimap图。

可选的,所述第四优化单元,还用于:

对所述腐蚀Mask图和所述候选Trimap图进行像素级叠加,得到叠加图像;

对于所述叠加图像中的任一像素点,响应于像素值大于所述第一像素值,将所述像素点在所述叠加图像中的像素值更新为所述第一像素值,得到所述目标Trimap图。

可选的,所述第四输入模块1503,包括:

特征提取单元,用于利用所述抠图模型对所述目标图像对应所述目标Trimap图中前景区域和背景区域的部分进行特征提取,得到图像特征;

第二图像处理单元,用于基于所述图像特征,利用所述抠图模型对所述目标Trimap图中的待定区域进行图像分割,并对所述目标Trimap图进行透明度处理,得到所述Alpha图。

综上所述,本申请实施例中,利用第一图像分割模型生成的初始样本Mask图对第二图像分割模型所生成的初始样本Trimap图进行优化,使得到的目标样本Trimap图中前景区域、背景区域和待定区域的划分更加接近样本图像,提高Trimap图的分割精确度,从而使抠图模型在基于目标Trimap图进行训练的过程中,能够以更加准确的图像分割依据对模型参数进行调整,进而提高抠图模型的抠图精确度和准确率;在模型应用阶段,利用初始Mask图对初始Trimap图进行优化,得到目标Trimap图,从而使抠图模型只需基于目标Trimap图中的前景区域和背景区域对待定区域进行精细分割,减少了抠图模型的计算量,预先为抠图模型提供了高准确度的图像分割依据,避免抠图模型基于错误的分割结果进行抠图,提高了抠图模型的抠图效率以及抠图精确度。

图16示出了本申请一个示例性实施例提供的计算机设备的结构示意图。计算机设备1600还可以是一台计算机设备或计算机设备集群。具体来讲:所述计算机设备1600包括中央处理单元(Central Processing Unit,CPU)1601、包括随机存取存储器(RandomAccess Memory,RAM)1602和只读存储器(Read-Only Memory,ROM)1603的系统存储器1604,以及连接系统存储器1604和中央处理单元1601的系统总线1605。所述计算机设备1600还包括帮助计算机设备1600内的各个器件之间传输信息的基本输入/输出系统(Input/Output系统,I/O系统)1606,和用于存储操作系统1613、应用程序1614和其他程序模块1615的大容量存储设备1607。

所述基本输入/输出系统1606包括有用于显示信息的显示器1608和用于用户输入信息的诸如鼠标、键盘之类的输入设备1609。其中所述显示器1608和输入设备1609都通过连接到系统总线1605的输入输出控制器1600连接到中央处理单元1601。所述基本输入/输出系统1606还可以包括输入输出控制器1600以用于接收和处理来自键盘、鼠标、或电子触控笔等多个其他设备的输入。类似地,输入输出控制器1600还提供输出到显示屏、打印机或其他类型的输出设备。

所述大容量存储设备1607通过连接到系统总线1605的大容量存储控制器(未示出)连接到中央处理单元1601。所述大容量存储设备1607及其相关联的计算机可读介质为计算机设备1600提供非易失性存储。也就是说,所述大容量存储设备1607可以包括诸如硬盘或者光盘只读存储器(Compact Disc Read-Only Memory,CD-ROM)之类的计算机可读介质(未示出)。

不失一般性,所述计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质包括以用于存储诸如计算机可读指令、数据结构、程序模块或其他数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。计算机存储介质包括RAM、ROM、计算机存储器(Erasable Programmable Read Only Memory,EPROM)、读写存储器(Electrically Erasable Programmable Read Only Memory,EEPROM)、闪存或其他固态存储其技术,CD-ROM、数字通用光盘(Digital Versatile Disc,DVD)或其他光学存储、磁带盒、磁带、磁盘存储或其他磁性存储设备。当然,本领域技术人员可知所述计算机存储介质不局限于上述几种。上述的系统存储器1604和大容量存储设备1607可以统称为存储器。

存储器存储有一个或多个程序,一个或多个程序被配置成由一个或多个中央处理单元1601执行,一个或多个程序包含用于实现上述应用程序安装包的编译方法的指令,中央处理单元1601执行该一个或多个程序实现上述各个方法实施例提供的方法。

根据本申请的各种实施例,所述计算机设备1600还可以通过诸如因特网等网络连接到网络上的远程计算机运行。也即计算机设备1600可以通过连接在所述系统总线1605上的网络接口单元1611连接到网络1612,或者说,也可以使用网络接口单元1611来连接到其他类型的网络或远程计算机系统(未示出)。

所述存储器还包括一个或者一个以上的程序,所述一个或者一个以上程序存储于存储器中,所述一个或者一个以上程序包含用于进行本申请实施例提供的方法中由计算机设备所执行的步骤。

本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质存储有至少一条指令,所述至少一条指令由处理器加载并执行以实现如上各个实施例所述的抠图模型的训练方法或抠图方法。

根据本申请的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述方面的各种可选实现方式中提供的抠图模型的训练方法或抠图方法。

本领域技术人员应该可以意识到,在上述一个或多个示例中,本申请实施例所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读存储介质中或者作为计算机可读存储介质上的一个或多个指令或代码进行传输。计算机可读存储介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是通用或专用计算机能够存取的任何可用介质。

以上所述仅为本申请的可选实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号