一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

图像处理方法、网络模型的训练方法、装置和电子设备与流程

2022-03-01 18:06:55 来源:中国专利 TAG:


1.本公开涉及图像处理技术领域,尤其是涉及一种图像处理方法、网络模型的训练方法、装置和电子设备。


背景技术:

2.抠图,是把原始图像中的一部分图像区域从原始图像中分离出来,分离出来的图像区域可以包含原始图像中的人物、动物、静物或背景等主体对象;这些图像区域可以用于图像的后续创作。抠图算法有很多种,其中一种抠图算法是,用户手动标定trimap图,然后利用像素之间的相似性进行扩展,得到抠图结果;但是对于较为复杂的图像,该方式的抠图效果和抠图速度均较差。另一种抠图算法采用网络模型实现,将原始图像和相应的trimap图输入至网络模型中,输出得到抠图结果,但是该方式要求网络模型部署在企业级的gpu服务器中,受到io的限制,用户难以实时得到抠图结果,导致用户体验度较低。


技术实现要素:

3.有鉴于此,本公开的目的在于提供一种图像处理方法、网络模型的训练方法、装置和电子设备,以降低网络模型处理的数据量,使得网络模型可以运行在硬件条件有限的终端设备上,向用户提供实时的抠图结果,提高用户体验度。
4.第一方面,本公开实施例提供了一种图像处理方法,方法包括:获取待处理图像的图像特征;将图像特征输入至预先训练完成的网络模型中,输出待处理图像对应的蒙版图像;基于蒙版图像,从待处理图像中提取目标图像区域;其中,网络模型用于:从图像特征中提取多层级特征;将多层级特征中的至少两个层级的层级特征进行第一融合处理,得到初始融合特征;对初始融合特征进行第二融合处理,得到蒙版图像。
5.上述网络模型包括编码器、融合网络和解码器;上述将图像特征输入至预先训练完成的网络模型中,输出待处理图像对应的蒙版图像的步骤,包括:通过编码器从图像特征中提取多层级特征;通过融合网络将多层级特征划分为多个层级组,将每个层级组中的层级特征进行第一融合处理,得到初始融合特征;其中,每个层级组中的层级相邻;初始融合特征的层级数与解码器中的计算层的层级数相匹配;针对初始融合特征中的每层级的层级特征,将当前层级特征输入至解码器中与当前层级特征相匹配的计算层中,并通过解码器按照预设顺序对初始融合特征进行第二融合处理,输出蒙版图像。
6.上述网络模型还包括压缩网络;上述通过融合网络将多层级特征划分为多个层级组,将每个层级组中的层级特征进行第一融合处理的步骤之前,方法还包括:通过压缩网络,降低多层级特征中,指定层级的层级特征的通道数,以使同一层级组中的层级的特征的通道数相同。
7.上述针对所述初始融合特征中的每层级的层级特征,将当前层级特征输入至所述解码器中与所述当前层级特征相匹配的计算层中,并通过所述解码器按照预设顺序对所述初始融合特征进行第二融合处理,输出所述蒙版图像的步骤,包括:对于解码器的最高层级
的计算层,对最高层级的计算层输入的特征进行第一卷积处理,得到输出特征;对于解码器的除最高层级以外的计算层,对与当前计算层相邻的上一计算层的输出特征和当前计算层输入的特征进行融合处理,得到融合结果;对融合结果进行卷积处理,得到输出特征;其中,解码器的最低层级的计算层的输出结果为蒙版图像。
8.上述对于解码器的除最高层级以外的计算层,对与当前计算层相邻的上一计算层的输出特征和当前计算层输入的特征进行融合处理,得到融合结果;对融合结果进行卷积处理,得到输出特征的步骤,包括:对于解码器的中间层级的计算层,对与当前计算层相邻的上一计算层的输出特征进行插值处理,以使输出特征的尺度与当前计算层输入的特征的尺度相匹配;对插值处理后的输出特征进行第二卷积处理,得到处理结果;将处理结果和当前计算层输入的特征进行融合处理,得到第一子融合结果;对第一子融合结果进行第一卷积处理,得到输出特征;对于解码器的最低层级的计算层,对与当前计算层相邻的上一计算层的输出特征进行插值处理,以使输出特征的尺度与当前计算层输入的特征的尺度相匹配;将插值处理后的输出特征和当前计算层输入的特征进行融合处理,得到第二子融合结果;对第二子融合结果进行第三卷积处理,得到蒙版图像。
9.上述将图像特征输入至预先训练完成的网络模型中,输出待处理图像对应的蒙版图像的步骤之前,方法还包括:判断图像特征的尺度是否满足预设条件;其中,预设条件与网络模型中各个计算层输出的特征的尺度相关;如果图像特征的尺度不满足预设条件,调整图像特征的尺度,直至满足直至预设条件。
10.第二方面,本公开实施例提供了一种网络模型的训练方法,方法包括:基于预设的训练样本集确定样本图像;样本图像携带有蒙版标签;获取样本图像的图像特征;基于图像特征对预设的网络模型进行训练,得到训练完成的网络模型;其中,网络模型用于:从样本图像的图像特征中提取多层级特征;将多层级特征中的至少两个层级的层级特征进行第一融合处理,得到初始融合特征;对初始融合特征行第二融合处理,得到样本图像的蒙版图像。
11.上述网络模型包括预先训练完成的编码器、预先训练完成的融合网络,以及待训练的解码器;解码器包括多层级的计算层;上述基于图像特征对预设的网络模型进行训练,得到训练完成的网络模型的步骤,包括:通过编码器从图像特征中提取多层级特征;通过融合网络将多层级特征划分为多个层级组,将每个层级组中的层级特征进行第一融合处理,得到初始融合特征;其中,每个层级组中的层级相邻;初始融合特征的层级数与解码器中的计算层的层级数相匹配;针对初始融合特征中的每层级的层级特征,将当前层级特征输入至解码器中与当前层级特征相匹配的计算层中,并通过解码器按照预设顺序对初始融合特征进行第二融合处理,得到处理结果;基于处理结果和蒙版标签,确定损失值;对于解码器的最高层级的计算层,基于损失值更新最高层级的计算层的参数,直至网络模型收敛,得到最高层级的计算层的参数;对于解码器的除最高层级以外的计算层,基于比当前计算层的层级高的全部计算层的参数以及损失值,更新当前计算层的参数,直至网络模型收敛,得到当前计算层的参数。
12.上述对于解码器的除最高层级以外的计算层,基于比当前计算层的层级高的全部计算层的参数以及损失值,更新当前计算层的参数,直至网络模型收敛,得到当前计算层的参数的步骤,包括:在固定比当前计算层的层级高的全部计算层的参数的情况下,基于损失
值更新当前计算层的参数,直至网络模型收敛;基于损失值更新当前计算层的高层级的计算层的参数,以及当前计算层的参数,直至网络模型收敛。
13.第三方面,本公开实施例提供了一种图像处理装置,装置包括:获取模块,用于获取待处理图像的图像特征;输出模块,用于将图像特征输入至预先训练完成的网络模型中,输出待处理图像对应的蒙版图像;提取模块,用于基于蒙版图像,从待处理图像中提取目标图像区域;其中,网络模型用于:从图像特征中提取多层级特征;将多层级特征中的至少两个层级的层级特征进行第一融合处理,得到初始融合特征;对初始融合特征行第二融合处理,得到蒙版图像。
14.第四方面,本公开实施例提供了一种网络模型的训练装置,装置包括:确定模块,用于基于预设的训练样本集确定样本图像;样本图像携带有蒙版标签;训练模块,用于获取样本图像的图像特征;基于图像特征对预设的网络模型进行训练,得到训练完成的网络模型;其中,网络模型用于:从样本图像的图像特征中提取多层级特征;将多层级特征中的至少两个层级的层级特征进行第一融合处理,得到初始融合特征;对初始融合特征行第二融合处理,得到样本图像的蒙版图像。
15.第五方面,本公开实施例提供了一种电子设备,包括处理器和存储器,存储器存储有能够被处理器执行的机器可执行指令,处理器执行机器可执行指令以实现上述图像处理方法,或上述网络模型的训练方法。
16.第六方面,本公开实施例提供了一种机器可读存储介质,机器可读存储介质存储有机器可执行指令,机器可执行指令在被处理器调用和执行时,机器可执行指令促使处理器实现上述图像处理方法,或上述网络模型的训练方法。
17.本公开实施例带来了以下有益效果:
18.上述图像处理方法、网络模型的训练方法、装置和电子设备,将待处理图像的图像特征输入至预先训练完成的网络模型中,输出待处理图像对应的蒙版图像;基于该蒙版图像,从待处理图像中提取目标图像区域;其中的网络模型从图像特征中提取多层级特征;将多层级特征中的至少两个层级的层级特征进行第一融合处理,得到初始融合特征;对初始融合特征进行第二融合处理,得到蒙版图像。该网络模型在处理图像特征的过程中,对特征进行二次融合,在保存特征的同时降低了模型处理的特征数据量,因而在保证抠图效果的同时提高了抠图处理速度;由于网络模型处理的数据量较低,该网络模型可以运行在硬件条件有限的终端设备上,可以向用户提供实时的抠图结果,提高了用户体验度。
19.本公开的其他特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本公开而了解。本公开的目的和其他优点在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。
20.为使本公开的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
21.为了更清楚地说明本公开具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本公开的一些实施方式,对于本领域技术人员来讲,在不付出创造性劳动的前提下,
还可以根据这些附图获得其他的附图。
22.图1为本公开实施例提供的一种图像处理方法的流程图;
23.图2为本公开实施例提供的一种网络模型的结构示意图;
24.图3为本公开实施例提供的另一种网络模型的结构示意图;
25.图4为本公开实施例提供的一种网络模型的训练方法的流程图;
26.图5为本公开实施例提供的一种图像处理装置的结构示意图;
27.图6为本公开实施例提供的一种网络模型的训练装置的结构示意图;
28.图7为本公开实施例提供的一种电子设备的示意图。
具体实施方式
29.为使本公开实施例的目的、技术方案和优点更加清楚,下面将结合附图对本公开的技术方案进行清楚、完整地描述,显然,所描述的实施例是本公开一部分实施例,而不是全部的实施例。基于本公开中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。
30.相关技术中的自动抠图算法主要有下述三种:
31.第一种是传统方式,基于采样算法sampling、像素亲和度算法pixel affinities或者两者相结合的方式实现抠图;但这些都需要求解一个大型的线性系统,需要用户手动标定一个trimap图,该trimap图用于标定抠图的目标区域,然后利用相邻像素之间的相似性进行扩展匹配组合,得到最终的抠图结果;该方法的处理的速度和目标区域中未知点的个数成正比。
32.第二种是基于cnn(convolutional neural networks,卷积神经网络)模型的方法,将rgb原图和人工标注的trimap图合并,共同作为cnn模型的输入,其中的trimap图用于标定模型关注的重点区域,模型最后输出得到alpha图;最后基于该alpha图得到抠图结果。
33.第三种也是基于cnn模型的方法,该方法通常利用语义分割模型提取目标主体,然后通过腐蚀膨胀的方式间接得到trimap图,然后将rgb原图和trimap图结合,再利用上述第二种方法的最后得到alpha图。
34.其中,对于第一种方式,利用像素之间的相似性进行扩展的抠图,处理速度通常与图像的大小成正比,例如,对于一个1m左右的图像,根据计算机硬件条件的不同,其处理时间从几秒到几分钟不等,而且在稍微复杂场景下,该方式的抠图效果不理想,从处理效果和处理速度上来说,该方式难以满足用户的创作需求。
35.对于上述第二种和第三种方式,直接或者间接获取trimap图,将trimap图与rgb原图结合输入到cnn模型中,该cnn模型通常部署在企业级的gpu(graphics processing unit,图形处理器)服务器当中,由于io(input/output,输入/输出)端口的消耗,无法达到实时性的需求。另外,用户手动标定trimap图的方式也会提高系统的复杂度,降低用户体验。
36.综上,本公开实施例提供的一种图像处理方法、网络模型的训练方法、装置和电子设备,该技术可以应用于从原始图像中提取目标区域的应用场景中,如扣取原始图像中的主体对象、前景图像等。为便于对本实施例进行理解,首先对本公开实施例所公开的一种图像处理方法进行详细介绍。
37.如图1所示,该方法包括如下步骤:
38.步骤s102,获取待处理图像的图像特征;
39.该图像特征中通常包括待处理图像的细节特征;具体可以将待处理图像输入至特征提取网络中,输出该待处理图像的图像特征;该特征提取网络具体可以是基于卷积神经网络的骨干网络,也称为cnn backbone。图像特征的通道数通常较高,例如可以是16通道或32通道;图像特征的尺度通常与待处理图像的尺度相关,例如图像特征的高度为待处理图像高度的1/2,图像特征的宽度为待处理图像宽度的1/2,具体可以根据实际需求设置。
40.步骤s104,将图像特征输入至预先训练完成的网络模型中,输出待处理图像对应的蒙版图像;
41.其中,网络模型用于:从图像特征中提取多层级特征;将多层级特征中的至少两个层级的层级特征进行第一融合处理,得到初始融合特征;对初始融合特征行第二融合处理,得到蒙版图像。例如,该网络模型可以包括多层依次连接的计算层,该计算层可以是卷积层,也可以是全连接层、池化层等等;每个计算层可以输出一个层级特征;不同计算层输出的层级特征的宽度、高度、通道数等可能相同,也可能不同,具体可以根据计算层中的算子确定。
42.网络模型从图像特征中提取到多层级特征后,可以先对至少两个层级的层级特征进行第一融合处理,得到初始融合特征;由于对至少两个层级的层级特征进行了融合处理,初始融合特征中的特征的层级数量,小于从图像特征中提取的多层级特征的层级数量;具体对哪些层级的层级特征进行融合,可以根据各个层级特征的特点确定,例如,如果某两个层级特征之间互补或者相互强化,就可以融合;对于特征量比较丰富的层级的特征,尤其是中间层级的特征,则可以不融合。通过上述第一融合处理,可以减少特征的层级数量,从而减少模型后续需要处理的特征量,从而提高处理速度。
43.上述对初始融合特征行第二融合处理的过程,也可以通过依次连接的计算层实现,这里的计算层也可以是卷积层、全连接层、池化层等等;具体可以从初始融合特征的最高层级的特征开始,将最高层级的特征融合至下一层级的特征中,以此类推,直至到达最低层级的特征。在两个层级的特征进行融合的过程中,为了便于融合,可以调整的层级特征的尺度、通道数等等。
44.步骤s106,基于蒙版图像,从待处理图像中提取目标图像区域;
45.该蒙版图像中像素的像素值通常包括两种,1和0;将蒙版图像与待处理图像进行相应像素点相乘,蒙版图像中像素值为1的区域对应的待处理图像的区域即可提取出来,即上述目标图像区域。
46.上述图像处理方法中,将待处理图像的图像特征输入至预先训练完成的网络模型中,输出待处理图像对应的蒙版图像;基于该蒙版图像,从待处理图像中提取目标图像区域;其中的网络模型从图像特征中提取多层级特征;将多层级特征中的至少两个层级的层级特征进行第一融合处理,得到初始融合特征;对初始融合特征进行第二融合处理,得到蒙版图像。该网络模型在处理图像特征的过程中,对特征进行二次融合,在保存特征的同时降低了模型处理的特征数据量,因而在保证抠图效果的同时提高了抠图处理速度;由于网络模型处理的数据量较低,该网络模型可以运行在硬件条件有限的终端设备上,可以向用户提供实时的抠图结果,提高了用户体验度。
47.下述实施例进一步描述网络模型的结构以及特征处理方式。如图2所示,该网络模型包括编码器、融合网络和解码器;待处理图像的图像特征首先输入至编码器中,通过编码器从图像特征中提取多层级特征;图2中以六个层级特征为例进行说明。
48.上述多层级特征输入至融合网络中,通过融合网络将多层级特征划分为多个层级组,将每个层级组中的层级特征进行第一融合处理,得到初始融合特征;其中,每个层级组中的层级相邻;初始融合特征的层级数与解码器中的计算层的层级数相匹配。
49.如图2中,融合网络将六个层级特征划分为四个层级组,其中,多层级特征中的层级特征1和层级特征2划分为一个层级组,层级特征1和层级特征2进行第一融合处理后,得到初始融合特征中的融合特征1;多层级特征中的层级特征3划分为一个层级组,该层级组无需进行特征融合处理,直接基于层级特征3得到融合特征2;同理,多层级特征中的层级特征4划分为一个层级组,该层级组无需进行特征融合处理,直接基于层级特征4得到融合特征3;多层级特征中的层级特征5和层级特征6划分为一个层级组,层级特征5和层级特征6进行第一融合处理后,得到初始融合特征中的融合特征4。
50.当然,融合网络中的层级组还可以有其他的划分方式,例如,也可以将层级特征3和层级特征4划分为一个层级组,进行第一融合处理;也可以将层级特征2和层级特征3划分为一个层级组,进行第一融合处理。层级组的划分方式,可以根据需求设置,例如,可以预先设置多种划分方式,针对每种划分方式进行实验,将最终个输出的蒙版图像最为准确的划分方式,确定为最终的划分方式。
51.为了便于特征融合,或者使融合的特征更加有效,不论哪种划分方式,同一个层级中的层级相邻;初始融合特征中同样也包括多层级的特征,如图2中,共包括四个层级的融合特征;通常初始融合特征的层级数与解码器中的计算层的层级数相匹配,以便于将初始融合特征中各个层级的融合特征输入至解码器中相应的计算层中进行再次融合计算。
52.针对初始融合特征中的每层级的层级特征,将当前层级特征输入至解码器中与当前层级特征相匹配的计算层中,并通过解码器按照预设顺序对初始融合特征进行第二融合处理,输出蒙版图像。例如,图2中,融合特征4通过该层级特征相匹配的计算层进行处理后,与融合特征3相融合;该融合结果经融合特征3相匹配的计算层进行处理后,再与融合特征2相融合,直至到达融合特征1,该融合特征1被融合后,经过一定的计算即可输出蒙版图像。
53.另外,为了便于对同一层级组中的层级特征进行融合,上述网络模型还包括压缩网络;编码器输出多层级特征后,首先将多层级特征输入至该压缩网络;通过压缩网络,降低多层级特征中,指定层级的层级特征的通道数,以使同一层级组中的层级特征的通道数相同。继续参考图2,假设层级特征5和层级特征6被划分为同一层级组,其中的层级特征5的通道数为96,层级特征6的通道数为180;为了使层级特征5和层级特征6相融合,需要对该层级组中的层级特征6的通道数进行压缩,将层级特征6的通道数由180压缩至96;压缩计算可以通过一个1*1大小的卷积核实现,即对层级特征6使用1*1大小的卷积核进行卷积运算,得到通道数压缩后的层级特征6。
54.进行融合计算的两个层级特征需要具有相同的通道数,以及相同的宽度和高度,如果宽度和高度不同,也需要进行调整。融合,可以理解为特征之间的合并;在进行融合计算时,参与融合计算的两个层级特征合并为一个层级特征;具体地,参与融合计算的两个层级特征的通道数、宽度和高度都相同,因而这两个层级特征的特征点数量相同;针对每个位
置的特征点,将两个层级特征中的该位置的特征点的值相加,得到该位置的融合后的特征点的值;因此,两个层级特征进行融合后的融合特征,通道数、宽度和高度与参与融合计算的两个层级特征均相同。
55.下面结合图3,具体说明解码器对初始融合特征进行第二融合处理,输出蒙版图像的具体过程。图3中,编码器包括依次连接的8层计算层,共输出8层层级特征;每个层级特征有两个参数,例如层级特征1中,“x/2”中,x代表图像特征的宽度或高度;“x/2”代表层级特征1的宽度为图像特征宽度的1/2,且高度为图像特征高度的1/2;另一个参数16代表层级特征1的通道数为16;其他层级特征和融合特征的参数含义相同。
56.8层层级特征中,层级特征1、层级特征6和层级特征8进行了通道数的压缩,以便于与相邻的层级特征进行融合。融合特征共包括5层,分别输入至解码器的相应的计算层中。融合特征输入至解码器后,对于解码器的最高层级的计算层,对最高层级的计算层输入的特征进行第一卷积处理,得到输出特征;如图3中,解码器中的计算层5是最高层级的计算层,融合特征5经计算层5进行第一卷积处理计算后,得到输出特征。
57.对于解码器的除最高层级以外的计算层,对与当前计算层相邻的上一计算层的输出特征和当前计算层输入的特征进行融合处理,得到融合结果;对融合结果进行卷积处理,得到输出特征;其中,解码器的最低层级的计算层的输出结果为蒙版图像。作为示例,对于图3中的计算层4,计算层5的输出特征和计算层4输入的特征融合特征4进行融合处理,得到融合结果,该融合结果经计算层4进行第一卷积处理,得到计算层4的输出特征;再如,对于图3中的计算层3,计算层4的输出特征和计算层3输入的特征融合特征3进行融合处理,得到融合结果,该融合结果经计算层3进行第一卷积处理,得到计算层3的输出特征。
58.另外,对于除最高层级以外的层级,特征融合之前需要调整特征的尺度,基于此,对于解码器的中间层级的计算层,对与当前计算层相邻的上一计算层的输出特征进行插值处理,以使输出特征的尺度与当前计算层输入的特征的尺度相匹配;对插值处理后的输出特征进行第二卷积处理,得到处理结果;将处理结果和当前计算层输入的特征进行融合处理,得到第一子融合结果;对第一子融合结果进行第一卷积处理,得到输出特征;图3中的中间层级的计算层包括计算层4、计算层3和计算层2;以计算层4为例,将计算层5的输出特征进行插值处理,该输出特征的宽度和高度均扩大二倍后,此时,输出特征的宽度和高度与融合特征4的宽度和高度相同;插值处理后的输出特征再使用3*3大小的卷积核进行第二卷积处理,再与融合特征4进行融合。
59.对于解码器的最低层级的计算层,对与当前计算层相邻的上一计算层的输出特征进行插值处理,以使输出特征的尺度与当前计算层输入的特征的尺度相匹配;将插值处理后的输出特征和当前计算层输入的特征进行融合处理,得到第二子融合结果;对第二子融合结果进行第三卷积处理,得到蒙版图像。对于图3中,计算层1为最低层级的计算层,对于计算层1,对计算层2输出特征进行插值处理,该输出特征的宽度和高度均扩大二倍后,此时,输出特征的宽度和高度与融合特征1的宽度和高度相同;输出特征与融合特征1融合后,得到融合结果,该融合结果再使用3*3大小的卷积核进行第二卷积处理,得到蒙版图像;该蒙版图像还可以使用插值的方式调整宽度和高度。
60.另外,为了便于模型进行计算,在图像特征输入至网络模型之前,还可以对图像特征进行预处理。首先判断图像特征的尺度是否满足预设条件;其中,预设条件与网络模型中
各个计算层输出的特征的尺度相关;如果图像特征的尺度不满足预设条件,调整图像特征的尺度,直至满足直至预设条件。例如,编码器在进行计算时,各个计算层输出的层级特征的尺度在不变减少,如图3中,计算层8输出的层级特征8的尺度为图像特征尺度的1/32,基于此,可以将图像特征的尺度调整为32的倍数,便于编码器的运算。
61.另外需要说明的是,为了使模型能够运行在手机等移动终端上,该模型中各个计算层的算子均采用基本算子,如卷积核,上采样、下采样等算子,从而得到轻量级的网络模型,同时方便模型的迁移。
62.基于上述图像处理方法的实施例,本实施例还提供一种网络模型的训练方法,如图4所示,该方法包括如下步骤:
63.步骤s402,基于预设的训练样本集确定样本图像;该样本图像携带有蒙版标签;
64.步骤s404,获取样本图像的图像特征;基于该图像特征对预设的网络模型进行训练,得到训练完成的网络模型;
65.其中,网络模型用于:从样本图像的图像特征中提取多层级特征;将多层级特征中的至少两个层级的层级特征进行第一融合处理,得到初始融合特征;对初始融合特征进行第二融合处理,得到样本图像的蒙版图像。
66.该网络模型在处理图像特征的过程中,对特征进行二次融合,在保存特征的同时降低了模型处理的特征数据量,因而在保证抠图效果的同时提高了抠图处理速度;由于网络模型处理的数据量较低,该网络模型可以运行在硬件条件有限的终端设备上,可以向用户提供实时的抠图结果,提高了用户体验度。
67.上述网络模型包括预先训练完成的编码器、预先训练完成的融合网络,以及待训练的解码器;解码器包括多层级的计算层;该网络模型在训练过程中,可以先对编码器和融合网络进行训练,编码器和融合网络训练完成后,再对解码器进行训练。
68.在训练编码器和融合网络时,可以先固定解码器的参数,将样本图像输入至编码器中,经编码器、融合网络和解码器处理后,得到输出结果;基于该输出结果与样本图像的标签计算损失值,根据该损失值调整编码器和融合网络的参数;然后继续将样本图像输入至编码器中,如此循环多次,直至损失值收敛,编码器和融合网络训练完成。
69.下面重点描述解码器的训练过程。首先,通过编码器从样本图像的图像特征中提取多层级特征;通过融合网络将多层级特征划分为多个层级组,将每个层级组中的层级特征进行第一融合处理,得到初始融合特征;其中,每个层级组中的层级相邻;初始融合特征的层级数与解码器中的计算层的层级数相匹配;针对初始融合特征中的每层级的层级特征,将当前层级特征输入至解码器中与当前层级特征相匹配的计算层中,并通过解码器按照预设顺序对初始融合特征进行第二融合处理,得到处理结果;基于处理结果和蒙版标签,确定损失值。
70.为了尽可能的压缩每一层特征的特征量,以降低模型的参数,同时保证每一层特征的有效性,解码器采用逐级输出的方式进行监督训练,当低尺度的特征输出稳定后,再进行高尺度特征的输出训练,且输出低尺度的特征的计算层的参数作为输出高尺度的特征的计算层的参数训练基础。
71.具体地,从最高层级的计算层开始,一个计算层一个计算层的进行训练;对于解码器的最高层级的计算层,基于上述损失值更新最高层级的计算层的参数,直至网络模型收
敛,得到最高层级的计算层的参数;在训练最高层级的计算层的参数时,其他层级的参数不变,在训练过程中调整最高层级的计算层的参数,直至网络模型的输出结果收敛,得到最高层级的计算层的参数。
72.此时,继续执行前述基于预设的训练样本集确定样本图像的过程,得到新的损失值,然后基于该损失值训练最高层级的下一层级的计算层;对于解码器的除最高层级以外的计算层,基于比当前计算层的层级高的全部计算层的参数以及损失值,更新当前计算层的参数,直至网络模型收敛,得到当前计算层的参数。解码器从最高层级开始,逐级训练,通过上述方式得到最高层级的计算层的参数后,则可以将最高层级的计算层的参数固定,开始训练最高层级的下一计算层的参数,直至网络模型收敛,得到该计算层的参数;以此类推,直至最低层级的计算层训练完毕。
73.对于除最高层级以外的计算层,针对每个计算层具体可以通过下述方式训练:在固定比当前计算层的层级高的全部计算层的参数的情况下,基于损失值更新当前计算层的参数,直至网络模型收敛;基于损失值更新当前计算层的高层级的计算层的参数,以及当前计算层的参数,直至网络模型收敛。即,每个计算层的训练分两个步骤,第一步是固定当前计算层的高层级的计算层的参数,仅训练当前计算层的参数,网络模型收敛后,再将当前计算层的高层级的计算层的参数,以及当前计算层的参数同时进行训练,直至网络模型收敛,当前计算层训练完毕。然后以同样的方式训练当前计算层的下一计算层,直至最低层级的计算层训练完毕。
74.作为示例,继续参考上述图3中的网络模型,以解码器中的计算层3为例,当计算层4经训练后的网络模型的输出收敛后,固定计算层4以及比计算层4的层级高的全部计算层的所有的参数,使用一个小的学习率训练计算层3,当网络模型的输出再次收敛后,然后解除layer_4及其比计算层4的层级高的全部计算层的参数的固定状态,从整体训练计算层3,直至网络模型的输出收敛。
75.上述损失函数可以为sad(sum of absolute difference,绝对差值求和)函数,其中pa和pr分别表示样本的蒙版标签label和模型输出的蒙版图像,值域为[0,1]。sad越低代表模型的输出和期望的label越接近,模型输出的效果越好,否则说明模型输出的alpha越差。上述损失函数还可以为像素iou(intersection-over-union,交并比),即样本的蒙版标签label和模型输出的蒙版图像的交并比,用于衡量网络模型语义的完整性,iou值越高,说明语义越完整。
[0076]
上述网络模型在保证处理效果的前提下,可以显著提高图像处理的速度,在抠图过程中,无需用户手动标注trimap,抠图速度为毫秒级,提升了用户体验。
[0077]
对应于上述方法实施例,参见图5所示的一种图像处理装置的结构示意图,该装置包括:
[0078]
获取模块50,用于获取待处理图像的图像特征;
[0079]
输出模块51,用于将图像特征输入至预先训练完成的网络模型中,输出待处理图像对应的蒙版图像;
[0080]
提取模块52,用于基于蒙版图像,从待处理图像中提取目标图像区域;
[0081]
其中,网络模型用于:从图像特征中提取多层级特征;将多层级特征中的至少两个层级的层级特征进行第一融合处理,得到初始融合特征;对初始融合特征进行第二融合处
理,得到蒙版图像。
[0082]
上述图像处理装置中,将待处理图像的图像特征输入至预先训练完成的网络模型中,输出待处理图像对应的蒙版图像;基于该蒙版图像,从待处理图像中提取目标图像区域;其中的网络模型从图像特征中提取多层级特征;将多层级特征中的至少两个层级的层级特征进行第一融合处理,得到初始融合特征;对初始融合特征进行第二融合处理,得到蒙版图像。该网络模型在处理图像特征的过程中,对特征进行二次融合,在保存特征的同时降低了模型处理的特征数据量,因而在保证抠图效果的同时提高了抠图处理速度;由于网络模型处理的数据量较低,该网络模型可以运行在硬件条件有限的终端设备上,可以向用户提供实时的抠图结果,提高了用户体验度。
[0083]
上述网络模型包括编码器、融合网络和解码器;上述输出模块还用于:通过编码器从图像特征中提取多层级特征;通过融合网络将多层级特征划分为多个层级组,将每个层级组中的层级特征进行第一融合处理,得到初始融合特征;其中,每个层级组中的层级相邻;初始融合特征的层级数与解码器中的计算层的层级数相匹配;针对初始融合特征中的每层级的层级特征,将当前层级特征输入至解码器中与当前层级特征相匹配的计算层中,并通过解码器按照预设顺序对初始融合特征进行第二融合处理,输出蒙版图像。
[0084]
上述网络模型还包括压缩网络;上述输出模块还用于:通过融合网络将多层级特征划分为多个层级组,将每个层级组中层级的特征进行第一融合处理的步骤之前,方法还包括:通过压缩网络,降低多层级特征中,指定层级的层级特征的通道数,以使同一层级组中的层级特征的通道数相同。
[0085]
上述输出模块还用于:对于解码器的最高层级的计算层,对最高层级的计算层输入的特征进行第一卷积处理,得到输出特征;对于解码器的除最高层级以外的计算层,对与当前计算层相邻的上一计算层的输出特征和当前计算层输入的特征进行融合处理,得到融合结果;对融合结果进行卷积处理,得到输出特征;其中,解码器的最低层级的计算层的输出结果为蒙版图像。
[0086]
上述输出模块还用于:对于解码器的中间层级的计算层,对与当前计算层相邻的上一计算层的输出特征进行插值处理,以使输出特征的尺度与当前计算层输入的特征的尺度相匹配;对插值处理后的输出特征进行第二卷积处理,得到处理结果;将处理结果和当前计算层输入的特征进行融合处理,得到第一子融合结果;对第一子融合结果进行第一卷积处理,得到输出特征;对于解码器的最低层级的计算层,对与当前计算层相邻的上一计算层的输出特征进行插值处理,以使输出特征的尺度与当前计算层输入的特征的尺度相匹配;将插值处理后的输出特征和当前计算层输入的特征进行融合处理,得到第二子融合结果;对第二子融合结果进行第三卷积处理,得到蒙版图像。
[0087]
上述装置还包括预处理模块,用于:判断图像特征的尺度是否满足预设条件;其中,预设条件与网络模型中各个计算层输出的特征的尺度相关;如果图像特征的尺度不满足预设条件,调整图像特征的尺度,直至满足直至预设条件。
[0088]
参见图6所示的一种网络模型的训练装置的结构示意图;该装置包括:
[0089]
确定模块60,用于基于预设的训练样本集确定样本图像;样本图像携带有蒙版标签;
[0090]
训练模块61,用于获取样本图像的图像特征;基于图像特征对预设的网络模型进
行训练,得到训练完成的网络模型;
[0091]
其中,网络模型用于:从样本图像的图像特征中提取多层级特征;将多层级特征中的至少两个层级的层级特征进行第一融合处理,得到初始融合特征;对初始融合特征进行第二融合处理,得到样本图像的蒙版图像。
[0092]
该网络模型在处理图像特征的过程中,对特征进行二次融合,在保存特征的同时降低了模型处理的特征数据量,因而在保证抠图效果的同时提高了抠图处理速度;由于网络模型处理的数据量较低,该网络模型可以运行在硬件条件有限的终端设备上,可以向用户提供实时的抠图结果,提高了用户体验度。
[0093]
上述网络模型包括预先训练完成的编码器、预先训练完成的融合网络以及待训练的解码器;解码器包括多层级的计算层;上述训练模型还用于:通过编码器从图像特征中提取多层级特征;通过融合网络将多层级特征划分为多个层级组,将每个层级组中的层级特征进行第一融合处理,得到初始融合特征;其中,每个层级组中的层级相邻;初始融合特征的层级数与解码器中的计算层的层级数相匹配;针对初始融合特征中的每层级的层级特征,将当前层级特征输入至解码器中与当前层级特征相匹配的计算层中,并通过解码器按照预设顺序对初始融合特征进行第二融合处理,得到处理结果;基于处理结果和蒙版标签,确定损失值;对于解码器的最高层级的计算层,基于损失值更新最高层级的计算层的参数,直至网络模型收敛,得到最高层级的计算层的参数;对于解码器的除最高层级以外的计算层,基于比当前计算层的层级高的全部计算层的参数以及损失值,更新当前计算层的参数,直至网络模型收敛,得到当前计算层的参数。
[0094]
上述训练模型还用于:在固定比当前计算层的层级高的全部计算层的参数的情况下,基于损失值更新当前计算层的参数,直至网络模型收敛;基于损失值更新当前计算层的高层级的计算层的参数,以及当前计算层的参数,直至网络模型收敛。
[0095]
本实施例还提供一种电子设备,包括处理器和存储器,存储器存储有能够被处理器执行的机器可执行指令,处理器执行机器可执行指令以实现上述图像处理方法,或网络模型的训练方法。
[0096]
参见图7所示,该电子设备包括处理器100和存储器101,该存储器101存储有能够被处理器100执行的机器可执行指令,该处理器100执行机器可执行指令以实现上述图像处理方法,或网络模型的训练方法。
[0097]
进一步地,图7所示的电子设备还包括总线102和通信接口103,处理器100、通信接口103和存储器101通过总线102连接。
[0098]
其中,存储器101可能包含高速随机存取存储器(ram,randomaccessmemory),也可能还包括非不稳定的存储器(non-volatilememory),例如至少一个磁盘存储器。通过至少一个通信接口103(可以是有线或者无线)实现该系统网元与至少一个其他网元之间的通信连接,可以使用互联网,广域网,本地网,城域网等。总线102可以是isa总线、pci总线或eisa总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图7中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。
[0099]
处理器100可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器100中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器100可以是通用处理器,包括中央处理器(centralprocessingunit,简称cpu)、
网络处理器(networkprocessor,简称np)等;还可以是数字信号处理器(digital signal processor,简称dsp)、专用集成电路(application specific integrated circuit,简称asic)、现场可编程门阵列(field-programmable gate array,简称fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器101,处理器100读取存储器101中的信息,结合其硬件完成前述实施例的方法的步骤。
[0100]
本实施例还提供一种机器可读存储介质,机器可读存储介质存储有机器可执行指令,机器可执行指令在被处理器调用和执行时,机器可执行指令促使处理器实现上述图像处理方法,或网络模型的训练方法。
[0101]
本公开实施例所提供的图像处理方法、网络模型的训练方法、装置和电子设备的计算机程序产品,包括存储了程序代码的计算机可读存储介质,所述程序代码包括的指令可用于执行前面方法实施例中所述的方法,具体实现可参见方法实施例,在此不再赘述。
[0102]
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统和装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0103]
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本公开的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本公开各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0104]
最后应说明的是:以上实施例,仅为本公开的具体实施方式,用以说明本公开的技术方案,而非对其限制,本公开的保护范围并不局限于此,尽管参照前述实施例对本公开进行了详细的说明,本领域技术人员应当理解:任何熟悉本技术领域的技术人员在本公开揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本公开实施例技术方案的精神和范围,都应涵盖在本公开的保护范围之内。因此,本公开的保护范围应以权利要求的保护范围为准。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献