模型训练方法、服装细粒度分割方法及相关装置与流程

文档序号:28275492发布日期:2021-12-31 20:39阅读:78来源:国知局
模型训练方法、服装细粒度分割方法及相关装置与流程

1.本技术涉及深度学习技术领域,尤其涉及模型训练方法、服装细粒度分割方法及相关装置。


背景技术:

2.深度学习是机器学习中一种基于对数据进行表征学习的方法,深度学习的好处是用非监督式或半监督式的特征学习和分层特征提取高效算法来替代手工获取特征。深度学习是机器学习研究中的一个新的领域,其动机在于建立、模拟人脑进行分析学习的神经网络,模仿人脑的机制来解释数据,例如图像,声音和文本等。
3.随着大数据和人工智能时代的来临,通过深度学习技术和计算机视觉技术分析消费者着装风格,将有助于商家捕捉各客户群体的消费趋势,制定出有针对性的产品组合、营销计划和商业决策。
4.因此,亟需设计一种服装细粒度分割算法,以满足实际应用的需求。


技术实现要素:

5.本技术的目的在于提供模型训练方法、服装细粒度分割方法及相关装置,采用cbnet和fpn相结合的架构作为特征提取模块,特征提取能力更强,由此得到的服装细粒度分割模型更加稳定,满足实际应用中的需要。
6.本技术的目的采用以下技术方案实现:
7.第一方面,本技术提供了一种模型训练方法,所述模型训练方法包括:获取训练图像及其对应的标注信息,所述训练图像对应的标注信息用于指示所述训练图像中的服装的标注边界框、标注细粒度类别和标注轮廓;将所述训练图像输入预设深度神经网络的特征提取模块,通过所述特征提取模块对所述训练图像进行特征提取,得到所述训练图像对应的特征信息,所述特征提取模块采用cbnet和fpn相结合的架构,cbnet中包含两个级联的resnext

101;将所述训练图像对应的特征信息输入所述预设深度神经网络的预测模块,通过所述预测模块对所述训练图像进行分割,得到所述训练图像对应的预测信息,所述训练图像对应的预测信息用于指示所述训练图像中的服装的预测边界框、预测细粒度类别和预测轮廓;利用所述训练图像对应的预测信息和标注信息,对所述预设深度神经网络进行训练,得到服装细粒度分割模型。该技术方案的有益效果在于,将训练图像输入预设深度神经网络的特征提取模块,得到训练图像对应的特征信息,利用训练图像对应的预测信息和标注信息,对预设深度神经网络进行训练,得到服装细粒度分割模型,本技术采用cbnet和fpn相结合的架构作为特征提取模块,相比于传统的特征提取网络,cbnet的特征提取能力更强,实例分割精度更高,由此得到的服装细粒度分割模型更加稳定,准确率更高,满足实际应用中的需要。
8.在一些可选的实施例中,所述将所述训练图像输入预设深度神经网络的特征提取模块,通过所述特征提取模块对所述训练图像进行特征提取,得到所述训练图像对应的特
征信息,包括:将所述训练图像输入所述特征提取模块的stage1,通过stage1对所述训练图像进行特征提取,得到所述训练图像对应的特征图f1;将所述训练图像对应的特征图f1输入所述特征提取模块的stage
1_1
,通过stage
1_1
对所述训练图像对应的特征图f1进行特征提取,得到所述训练图像对应的特征图f2;将所述训练图像对应的特征图f1输入所述特征提取模块的stage2,通过stage2对所述训练图像对应的特征图f1进行特征提取,得到所述训练图像对应的特征图f3;将所述训练图像对应的特征图f3和特征图f2相加后输入所述特征提取模块的stage
2_2
,通过stage
2_2
对所述训练图像对应的特征图f3和特征图f2的相加结果进行特征提取,得到所述训练图像对应的特征图f4;将所述训练图像对应的特征图f3输入所述特征提取模块的stage3,通过stage3对所述训练图像对应的特征图f3进行特征提取,得到所述训练图像对应的特征图f5;将所述训练图像对应的特征图f5和特征图f4相加后输入所述特征提取模块的stage
3_3
,通过stage
3_3
对所述训练图像对应的特征图f5和特征图f4的相加结果进行特征提取,得到所述训练图像对应的特征图f6;将所述训练图像对应的特征图f5输入所述特征提取模块的stage4,通过stage4对所述训练图像对应的特征图f5进行特征提取,得到所述训练图像对应的特征图f7;将所述训练图像对应的特征图f7和特征图f6相加后输入所述特征提取模块的stage
4_4
,通过stage
4_4
对所述训练图像对应的特征图f7和特征图f6的相加结果进行特征提取,得到所述训练图像对应的特征图f8,并将所述训练图像对应的特征图f8作为所述训练图像对应的融合特征图m3;将所述训练图像对应的特征图f8输入所述特征提取模块的第三插值单元,通过所述第三插值单元对所述训练图像对应的特征图f8进行插值,得到所述训练图像对应的特征图f8的插值结果,并将所述训练图像对应的特征图f8的插值结果和所述训练图像对应的特征图f6相加,得到所述训练图像对应的融合特征图m2;将所述训练图像对应的融合特征图m2输入所述特征提取模块的第二插值单元,通过所述第二插值单元对所述训练图像对应的融合特征图m2进行插值,得到所述训练图像对应的融合特征图m2的插值结果,并将所述训练图像对应的融合特征图m2的插值结果和所述训练图像对应的特征图f4相加,得到所述训练图像对应的融合特征图m1;将所述训练图像对应的融合特征图m1输入所述特征提取模块的第一插值单元,通过所述第一插值单元对所述训练图像对应的融合特征图m1进行插值,得到所述训练图像对应的融合特征图m1的插值结果,并将所述训练图像对应的融合特征图m1的插值结果和所述训练图像对应的特征图f2相加,得到所述训练图像对应的融合特征图m0;将所述训练图像对应的融合特征图m3至融合特征图m0作为所述训练图像对应的特征信息。该技术方案的有益效果在于,将训练图像输入特征提取模块,利用特征提取模块的多个stage得到训练图像对应的特征图,再利用特征提取模块的多个插值单元进行插值,得到对应的插值结果,结合相应的特征图,得到相应的融合特征图,由此得到训练图像对应的特征信息,该方法智能化水平较高。
9.在一些可选的实施例中,以所述stage1、stage2、stage3、stage4、stage
1_1
、stage
2_2
、stage
3_3
、stage
4_4
中的任意一个为目标stage,通过所述目标stage对所述训练图像进行特征提取,包括:通过所述目标stage的多个残差块分别对输入所述目标stage的图像进行处理;通过所述目标stage的第一加法层将各所述残差块的处理结果相加;通过所述目标stage的第二加法层将各所述残差块的处理结果的相加结果与输入所述目标stage的图像相加。该技术方案的有益效果在于,目标stage的每个残差块可以对输入目标stage的图像进行处理,得到精度较高的处理结果。
10.在一些可选的实施例中,所述通过所述目标stage的多个残差块分别对输入所述目标stage的图像进行处理,包括:通过所述目标stage的各所述残差块的第一卷积层分别对输入所述目标stage的图像进行卷积处理,得到各所述残差块对应的第一卷积结果;通过所述目标stage的各所述残差块的可变形卷积层分别对各所述残差块对应的第一卷积结果进行卷积处理,得到各所述残差块对应的可变形卷积结果;通过所述目标stage的各所述残差块的第二卷积层分别对各所述残差块对应的可变形卷积结果进行卷积处理。该技术方案的有益效果在于,利用目标stage的每个残差块的第一卷积层、可变形卷积层和第二卷积层,可以对输入目标stage的图像更细致地提取特征。
11.在一些可选的实施例中,所述将所述训练图像对应的特征信息输入所述预设深度神经网络的预测模块,通过所述预测模块对所述训练图像进行分割,得到所述训练图像对应的预测信息,包括:将所述训练图像对应的特征信息输入所述预设深度神经网络的rpn网络,通过所述rpn网络进行候选框生成和边界框回归,得到所述训练图像对应的基准边界框信息;将所述训练图像对应的特征信息和基准边界框信息输入所述预测模块的第一头结构,通过所述第一头结构进行分类、边界框回归、细粒度分类和分割,得到所述训练图像对应的第一类别信息、第一边界框信息、第一细粒度类别信息和第一轮廓信息;将所述训练图像对应的特征信息和第一边界框信息输入所述预测模块的第二头结构,通过所述第二头结构进行分类、边界框回归、细粒度分类和分割,得到所述训练图像对应的第二类别信息、第二边界框信息、第二细粒度类别信息和第二轮廓信息;将所述训练图像对应的特征信息和第二边界框信息输入所述预测模块的第三头结构,通过所述第三头结构进行分类、边界框回归、细粒度分类和分割,得到所述训练图像对应的第三类别信息、第三边界框信息、第三细粒度类别信息和第三轮廓信息;基于所述训练图像对应的第三类别信息、第三边界框信息、第三细粒度类别信息和第三轮廓信息,获取所述训练图像对应的预测信息。该技术方案的有益效果在于,将训练图像对应的特征信息输入预设深度神经网络的rpn网络,得到训练图像对应的基准边界框信息,利用预测模块的第一头结构、第二头结构和第三头结构得到相应的类别信息、边界框信息、细粒度类别信息和轮廓信息,从而获取训练图像对应的预测信息。
12.在一些可选的实施例中,以所述第一头结构至所述第三头结构中的任意一个为目标头结构,通过所述目标头结构进行分类、边界框回归、细粒度分类和分割,包括:通过所述目标头结构的detection head进行分类和边界框回归;通过所述目标头结构的attributes head进行细粒度分类;通过所述目标头结构的mask head进行分割。该技术方案的有益效果在于,可以利用目标头结构的detection head进行分类和边界框回归,利用目标头结构的attributes head进行细粒度分类,利用目标头结构的mask head进行分割。
13.在一些可选的实施例中,所述通过所述目标头结构的detection head进行分类和边界框回归,包括:通过所述目标头结构的detection head的roi pooling层进行roi pooling处理;通过所述目标头结构的detection head的卷积层进行卷积处理;通过所述目标头结构的detection head的第一全连接层进行全连接处理;通过所述目标头结构的detection head的第二全连接层进行分类和边界框回归;所述通过所述目标头结构的attributes head进行细粒度分类,包括:通过所述目标头结构的attributes head的roi align层进行roi align处理;通过所述目标头结构的attributes head的卷积层进行卷积
处理;通过所述目标头结构的attributes head的第一全连接层进行全连接处理;通过所述目标头结构的attributes head的第二全连接层进行细粒度分类;所述通过所述目标头结构的mask head进行分割,包括:通过所述目标头结构的mask head的roi align层进行roi align处理,得到掩膜特征;通过所述目标头结构的mask head的语义分割分支进行语义分割处理,得到语义分割特征;通过所述目标头结构的mask head的roi align层对所述语义分割特征和输入所述目标头结构的边界框信息进行roi align处理,得到一次融合特征;通过所述目标头结构的mask head的加法层将所述一次融合特征和所述掩膜特征相加。该技术方案的有益效果在于,通过目标头结构的mask head进行分割时,可以采用目标头结构的mask head的语义分割分支进行语义分割处理,得到语义分割特征,从而获得更好的空间信息,通过目标头结构的mask head的roi align层对语义分割特征和输入目标头结构的边界框信息进行roi align处理,得到一次融合特征,再通过目标头结构的mask head的加法层一次融合特征和所述掩膜特征相加,由此训练得到的服装细粒度分割模型分辨目标的能力较强。
14.在一些可选的实施例中,所述通过所述目标头结构的detection head的第二全连接层进行分类和边界框回归,包括:通过所述目标头结构的detection head的第二全连接层的分类网络fc

head进行分类;通过所述目标头结构的detection head的第二全连接层的回归网络conv

head进行边界框回归。该技术方案的有益效果在于,可以利用目标头结构的detection head的第二全连接层的分类网络fc

head进行分类,利用目标头结构的detection head的第二全连接层的回归网络conv

head进行边界框回归。
15.在一些可选的实施例中,所述通过所述目标头结构的detection head进行分类和边界框回归,包括:使用基于任务间空间自适应解耦的检测算法,通过所述目标头结构的detection head进行分类和边界框回归,其中,对于分类任务和回归任务,分别学习各自适应的proposal和特征提取器。该技术方案的有益效果在于,对于分类任务和回归任务,输入和特征提取器是不共享的,可以最大程度地减少由于优化目标不一样带来的冲突,进而显著提升服装细粒度分割模型的性能。
16.在一些可选的实施例中,所述将所述训练图像对应的特征信息和第一边界框信息输入所述预测模块的第二头结构,通过所述第二头结构进行分类、边界框回归、细粒度分类和分割,得到所述训练图像对应的第二类别信息、第二边界框信息、第二细粒度类别信息和第二轮廓信息,包括:将所述训练图像对应的特征信息、第一边界框信息和第一轮廓信息输入所述预测模块的第二头结构,通过所述第二头结构进行分类、边界框回归、细粒度分类和分割,得到所述训练图像对应的第二类别信息、第二边界框信息、第二细粒度类别信息和第二轮廓信息;所述将所述训练图像对应的特征信息和第二边界框信息输入所述预测模块的第三头结构,通过所述第三头结构进行分类、边界框回归、细粒度分类和分割,得到所述训练图像对应的第三类别信息、第三边界框信息、第三细粒度类别信息和第三轮廓信息,包括:将所述训练图像对应的特征信息、第二边界框信息和第二轮廓信息输入所述预测模块的第三头结构,通过所述第三头结构进行分类、边界框回归、细粒度分类和分割,得到所述训练图像对应的第三类别信息、第三边界框信息、第三细粒度类别信息和第三轮廓信息。该技术方案的有益效果在于,在利用第一头结构、第二头结构和第三头结构进行分类、边界框回归、细粒度分类和分割时,输入的信息可以包括训练图像对应的轮廓信息,由此得到的服
装细粒度分割模型的精度较高。
17.在一些可选的实施例中,所述将所述训练图像输入预设深度神经网络的特征提取模块,通过所述特征提取模块对所述训练图像进行特征提取,得到所述训练图像对应的特征信息,包括:确定包含所述训练图像的多个训练图像;将各训练图像的宽和高中的长边缩放至预设长度值,将各训练图像的宽和高中的短边缩放至预设长度范围中的任意值;以所述多个训练图像中短边的最大值为基准值,将其余训练图像的短边填充至所述基准值;将所述多个训练图像以批的形式输入所述特征提取模块,通过所述特征提取模块对所述多个训练图像进行特征提取,得到所述多个训练图像对应的特征信息;基于所述多个训练图像对应的特征信息,获取所述训练图像对应的特征信息。该技术方案的有益效果在于,通过对训练图像的长边和短边进行对应的缩放处理,可以实现数据增广,使训练图像尽可能的多样化,使训练得到的服装细粒度分割模型具有较强的泛化能力。
18.第二方面,本技术提供了一种服装细粒度分割方法,所述服装细粒度分割方法包括:获取待分割图像;将所述待分割图像输入服装细粒度分割模型,得到所述待分割图像对应的预测信息;其中,所述服装细粒度分割模型是利用上述任一项模型训练方法训练得到的。该技术方案的有益效果在于,用户将待分割图像输入服装细粒度分割模型,即可得到待分割图像对应的预测信息,预测信息可以包括待分割图像的预测边界框、预测细粒度类别和预测轮廓,该方法可以用于识别服装类别和服装属性,提升用户的使用体验。
19.第三方面,本技术提供了一种模型训练装置,所述模型训练装置包括:数据获取模块,用于获取训练图像及其对应的标注信息,所述训练图像对应的标注信息用于指示所述训练图像中的服装的标注边界框、标注细粒度类别和标注轮廓;提取特征模块,用于将所述训练图像输入预设深度神经网络的特征提取模块,通过所述特征提取模块对所述训练图像进行特征提取,得到所述训练图像对应的特征信息,所述特征提取模块采用cbnet和fpn相结合的架构,cbnet中包含两个级联的resnext

101;图像预测模块,用于将所述训练图像对应的特征信息输入所述预设深度神经网络的预测模块,通过所述预测模块对所述训练图像进行分割,得到所述训练图像对应的预测信息,所述训练图像对应的预测信息用于指示所述训练图像中的服装的预测边界框、预测细粒度类别和预测轮廓;模型训练模块,用于利用所述训练图像对应的预测信息和标注信息,对所述预设深度神经网络进行训练,得到服装细粒度分割模型。
20.在一些可选的实施例中,所述提取特征模块包括:第一特征图单元,用于将所述训练图像输入所述特征提取模块的stage1,通过stage1对所述训练图像进行特征提取,得到所述训练图像对应的特征图f1;第二特征图单元,用于将所述训练图像对应的特征图f1输入所述特征提取模块的stage
1_1
,通过stage
1_1
对所述训练图像对应的特征图f1进行特征提取,得到所述训练图像对应的特征图f2;第三特征图单元,用于将所述训练图像对应的特征图f1输入所述特征提取模块的stage2,通过stage2对所述训练图像对应的特征图f1进行特征提取,得到所述训练图像对应的特征图f3;第四特征图单元,用于将所述训练图像对应的特征图f3和特征图f2相加后输入所述特征提取模块的stage
2_2
,通过stage
2_2
对所述训练图像对应的特征图f3和特征图f2的相加结果进行特征提取,得到所述训练图像对应的特征图f4;第五特征图单元,用于将所述训练图像对应的特征图f3输入所述特征提取模块的stage3,通过stage3对所述训练图像对应的特征图f3进行特征提取,得到所述训练图像对应的特征图f5;
第六特征图单元,用于将所述训练图像对应的特征图f5和特征图f4相加后输入所述特征提取模块的stage
3_3
,通过stage
3_3
对所述训练图像对应的特征图f5和特征图f4的相加结果进行特征提取,得到所述训练图像对应的特征图f6;第七特征图单元,用于将所述训练图像对应的特征图f5输入所述特征提取模块的stage4,通过stage4对所述训练图像对应的特征图f5进行特征提取,得到所述训练图像对应的特征图f7;第三融合特征单元,用于将所述训练图像对应的特征图f7和特征图f6相加后输入所述特征提取模块的stage
4_4
,通过stage
4_4
对所述训练图像对应的特征图f7和特征图f6的相加结果进行特征提取,得到所述训练图像对应的特征图f8,并将所述训练图像对应的特征图f8作为所述训练图像对应的融合特征图m3;第二融合特征单元,用于将所述训练图像对应的特征图f8输入所述特征提取模块的第三插值单元,通过所述第三插值单元对所述训练图像对应的特征图f8进行插值,得到所述训练图像对应的特征图f8的插值结果,并将所述训练图像对应的特征图f8的插值结果和所述训练图像对应的特征图f6相加,得到所述训练图像对应的融合特征图m2;第一融合特征单元,用于将所述训练图像对应的融合特征图m2输入所述特征提取模块的第二插值单元,通过所述第二插值单元对所述训练图像对应的融合特征图m2进行插值,得到所述训练图像对应的融合特征图m2的插值结果,并将所述训练图像对应的融合特征图m2的插值结果和所述训练图像对应的特征图f4相加,得到所述训练图像对应的融合特征图m1;第零融合特征单元,用于将所述训练图像对应的融合特征图m1输入所述特征提取模块的第一插值单元,通过所述第一插值单元对所述训练图像对应的融合特征图m1进行插值,得到所述训练图像对应的融合特征图m1的插值结果,并将所述训练图像对应的融合特征图m1的插值结果和所述训练图像对应的特征图f2相加,得到所述训练图像对应的融合特征图m0;特征信息单元,用于将所述训练图像对应的融合特征图m3至融合特征图m0作为所述训练图像对应的特征信息。
21.在一些可选的实施例中,以所述stage1、stage2、stage3、stage4、stage
1_1
、stage
2_2
、stage
3_3
、stage
4_4
中的任意一个为目标stage,所述提取特征模块包括:残差块单元,用于通过所述目标stage的多个残差块分别对输入所述目标stage的图像进行处理;处理结果单元,用于通过所述目标stage的第一加法层将各所述残差块的处理结果相加;图像相加单元,用于通过所述目标stage的第二加法层将各所述残差块的处理结果的相加结果与输入所述目标stage的图像相加。
22.在一些可选的实施例中,所述残差块单元包括:第一卷积子单元,用于通过所述目标stage的各所述残差块的第一卷积层分别对输入所述目标stage的图像进行卷积处理,得到各所述残差块对应的第一卷积结果;第二卷积子单元,用于通过所述目标stage的各所述残差块的可变形卷积层分别对各所述残差块对应的第一卷积结果进行卷积处理,得到各所述残差块对应的可变形卷积结果;第三卷积子单元,用于通过所述目标stage的各所述残差块的第二卷积层分别对各所述残差块对应的可变形卷积结果进行卷积处理。
23.在一些可选的实施例中,所述图像预测模块包括:基准边界框单元,用于将所述训练图像对应的特征信息输入所述预设深度神经网络的rpn网络,通过所述rpn网络进行候选框生成和边界框回归,得到所述训练图像对应的基准边界框信息;第一头结构单元,用于将所述训练图像对应的特征信息和基准边界框信息输入所述预测模块的第一头结构,通过所述第一头结构进行分类、边界框回归、细粒度分类和分割,得到所述训练图像对应的第一类别信息、第一边界框信息、第一细粒度类别信息和第一轮廓信息;第二头结构单元,用于将
所述训练图像对应的特征信息和第一边界框信息输入所述预测模块的第二头结构,通过所述第二头结构进行分类、边界框回归、细粒度分类和分割,得到所述训练图像对应的第二类别信息、第二边界框信息、第二细粒度类别信息和第二轮廓信息;第三头结构单元,用于将所述训练图像对应的特征信息和第二边界框信息输入所述预测模块的第三头结构,通过所述第三头结构进行分类、边界框回归、细粒度分类和分割,得到所述训练图像对应的第三类别信息、第三边界框信息、第三细粒度类别信息和第三轮廓信息;预测信息单元,用于基于所述训练图像对应的第三类别信息、第三边界框信息、第三细粒度类别信息和第三轮廓信息,获取所述训练图像对应的预测信息。
24.在一些可选的实施例中,以所述第一头结构至所述第三头结构中的任意一个为目标头结构,所述图像预测模块包括:分类回归单元,用于通过所述目标头结构的detection head进行分类和边界框回归;细粒度分类单元,用于通过所述目标头结构的attributes head进行细粒度分类;分割单元,用于通过所述目标头结构的mask head进行分割。
25.在一些可选的实施例中,所述分类回归单元包括:第一处理子单元,用于通过所述目标头结构的detection head的roi pooling层进行roi pooling处理;第二处理子单元,用于通过所述目标头结构的detection head的卷积层进行卷积处理;第三处理子单元,用于通过所述目标头结构的detection head的第一全连接层进行全连接处理;第四处理子单元,用于通过所述目标头结构的detection head的第二全连接层进行分类和边界框回归;所述细粒度分类单元包括:第五处理子单元,用于通过所述目标头结构的attributes head的roi align层进行roi align处理;第六处理子单元,用于通过所述目标头结构的attributes head的卷积层进行卷积处理;第七处理子单元,用于通过所述目标头结构的attributes head的第一全连接层进行全连接处理;第八处理子单元,用于通过所述目标头结构的attributes head的第二全连接层进行细粒度分类;所述分割单元包括:掩膜子单元,用于通过所述目标头结构的mask head的roi align层进行roi align处理,得到掩膜特征;语义分割子单元,用于通过所述目标头结构的mask head的语义分割分支进行语义分割处理,得到语义分割特征;融合特征子单元,用于通过所述目标头结构的mask head的roi align层对所述语义分割特征和输入所述目标头结构的边界框信息进行roi align处理,得到一次融合特征;特征相加子单元,用于通过所述目标头结构的mask head的加法层将所述一次融合特征和所述掩膜特征相加。
26.在一些可选的实施例中,所述第四处理子单元用于:通过所述目标头结构的detection head的第二全连接层的分类网络fc

head进行分类;通过所述目标头结构的detection head的第二全连接层的回归网络conv

head进行边界框回归。
27.在一些可选的实施例中,所述分类回归单元用于:使用基于任务间空间自适应解耦的检测算法,通过所述目标头结构的detection head进行分类和边界框回归,其中,对于分类任务和回归任务,分别学习各自适应的proposal和特征提取器。
28.在一些可选的实施例中,所述第二头结构单元用于:将所述训练图像对应的特征信息、第一边界框信息和第一轮廓信息输入所述预测模块的第二头结构,通过所述第二头结构进行分类、边界框回归、细粒度分类和分割,得到所述训练图像对应的第二类别信息、第二边界框信息、第二细粒度类别信息和第二轮廓信息;所述第三头结构单元用于:将所述训练图像对应的特征信息、第二边界框信息和第二轮廓信息输入所述预测模块的第三头结
构,通过所述第三头结构进行分类、边界框回归、细粒度分类和分割,得到所述训练图像对应的第三类别信息、第三边界框信息、第三细粒度类别信息和第三轮廓信息。
29.在一些可选的实施例中,所述提取特征模块包括:图像确定单元,用于确定包含所述训练图像的多个训练图像;图像缩放单元,用于将各训练图像的宽和高中的长边缩放至预设长度值,将各训练图像的宽和高中的短边缩放至预设长度范围中的任意值;图像填充单元,用于以所述多个训练图像中短边的最大值为基准值,将其余训练图像的短边填充至所述基准值;第一信息单元,用于将所述多个训练图像以批的形式输入所述特征提取模块,通过所述特征提取模块对所述多个训练图像进行特征提取,得到所述多个训练图像对应的特征信息;第二信息单元,用于基于所述多个训练图像对应的特征信息,获取所述训练图像对应的特征信息。
30.第四方面,本技术提供了一种服装细粒度分割装置,所述服装细粒度分割装置包括:待分割图像模块,用于获取待分割图像;图像分割模块,用于将所述待分割图像输入服装细粒度分割模型,得到所述待分割图像对应的预测信息;其中,所述服装细粒度分割模型是利用上述任一项模型训练方法训练得到的。
31.第五方面,本技术提供了一种电子设备,所述电子设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述任一项模型训练方法的步骤或者上述服装细粒度分割方法的步骤。
32.第六方面,本技术提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序或者服装细粒度分割模型;所述计算机程序被处理器执行时实现上述任一项模型训练方法的步骤或者上述服装细粒度分割方法的步骤;
33.所述服装细粒度分割模型是利用上述任一项模型训练方法训练得到的。
附图说明
34.下面结合附图和实施例对本技术进一步说明。
35.图1是本技术实施例提供的一种模型训练方法的流程示意图;
36.图2是本技术实施例提供的一种得到特征信息的流程示意图;
37.图3是本技术实施例提供的另一种得到特征信息的流程示意图;
38.图4是本技术实施例提供的一种进行特征提取的流程示意图;
39.图5是本技术实施例提供的一种resnext101的结构示意图;
40.图6是本技术实施例提供的一种处理图像的流程示意图;
41.图7是本技术实施例提供的一种得到预测信息的流程示意图;
42.图8是本技术实施例提供的一种利用目标头结构进行信息处理的流程示意图;
43.图9是本技术实施例提供的一种利用detection head进行分类和边界框回归的流程示意图;
44.图10是本技术实施例提供的一种利用attributes head进行细粒度分类的流程示意图;
45.图11是本技术实施例提供的一种利用mask head进行分割的流程示意图;
46.图12是本技术实施例提供的一种目标头结构的结构示意图;
47.图13是本技术实施例提供的再一种得到特征信息的流程示意图;
48.图14是本技术实施例提供的又一种模型训练方法的流程示意图;
49.图15是本技术实施例提供的一种服装细粒度分割方法的流程示意图;
50.图16是本技术实施例提供的一种模型训练装置的结构示意图;
51.图17是本技术实施例提供的一种提取特征模块的结构示意图;
52.图18是本技术实施例提供的另一种提取特征模块的结构示意图;
53.图19是本技术实施例提供的一种残差块单元的结构示意图;
54.图20是本技术实施例提供的一种图像预测模块的结构示意图;
55.图21是本技术实施例提供的另一种图像预测模块的结构示意图;
56.图22是本技术实施例提供的一种分类回归单元的结构示意图;
57.图23是本技术实施例提供的一种细粒度分类单元的结构示意图;
58.图24是本技术实施例提供的一种分割单元的结构示意图;
59.图25是本技术实施例提供的再一种提取特征模块的结构示意图;
60.图26是本技术实施例提供的一种服装细粒度分割装置的结构示意图;
61.图27是本技术实施例提供的一种电子设备的结构框图;
62.图28是本技术实施例提供的一种用于实现模型训练方法或者服装细粒度分割方法的程序产品的结构示意图。
具体实施方式
63.下面,结合附图以及具体实施方式,对本技术做进一步描述,需要说明的是,在不相冲突的前提下,以下描述的各实施例之间或各技术特征之间可以任意组合形成新的实施例。
64.参见图1,本技术实施例提供了一种模型训练方法,所述模型训练方法包括步骤s101~s104。
65.步骤s101:获取训练图像及其对应的标注信息,所述训练图像对应的标注信息用于指示所述训练图像中的服装的标注边界框、标注细粒度类别和标注轮廓。
66.其中,训练图像的数量例如是5万个,8万个或者10万个。训练图像例如可以是上衣图像、长裤图像、短裤图像、围巾图像等。
67.步骤s102:将所述训练图像输入预设深度神经网络的特征提取模块,通过所述特征提取模块对所述训练图像进行特征提取,得到所述训练图像对应的特征信息,所述特征提取模块采用cbnet和fpn相结合的架构,cbnet中包含两个级联的resnext

101。其中,预设深度神经网络可以采用htc(hybrid task cascade)网络。
68.步骤s103:将所述训练图像对应的特征信息输入所述预设深度神经网络的预测模块,通过所述预测模块对所述训练图像进行分割,得到所述训练图像对应的预测信息,所述训练图像对应的预测信息用于指示所述训练图像中的服装的预测边界框、预测细粒度类别和预测轮廓。
69.步骤s104:利用所述训练图像对应的预测信息和标注信息,对所述预设深度神经网络进行训练,得到服装细粒度分割模型。
70.由此,将训练图像输入预设深度神经网络的特征提取模块,得到训练图像对应的特征信息,利用训练图像对应的预测信息和标注信息,对预设深度神经网络进行训练,得到
服装细粒度分割模型,本技术采用cbnet和fpn相结合的架构作为特征提取模块,相比于传统的特征提取网络,cbnet的特征提取能力更强,实例分割精度更高,由此得到的服装细粒度分割模型更加稳定,准确率更高,满足实际应用中的需要。
71.参见图2,在一些实施方式中,所述步骤s102可以包括步骤s1~s12。
72.步骤s1:将所述训练图像输入所述特征提取模块的stage1,通过stage1对所述训练图像进行特征提取,得到所述训练图像对应的特征图f1。
73.步骤s2:将所述训练图像对应的特征图f1输入所述特征提取模块的stage
1_1
,通过stage
1_1
对所述训练图像对应的特征图f1进行特征提取,得到所述训练图像对应的特征图f2。
74.步骤s3:将所述训练图像对应的特征图f1输入所述特征提取模块的stage2,通过stage2对所述训练图像对应的特征图f1进行特征提取,得到所述训练图像对应的特征图f3。
75.步骤s4:将所述训练图像对应的特征图f3和特征图f2相加后输入所述特征提取模块的stage
2_2
,通过stage
2_2
对所述训练图像对应的特征图f3和特征图f2的相加结果进行特征提取,得到所述训练图像对应的特征图f4。
76.步骤s5:将所述训练图像对应的特征图f3输入所述特征提取模块的stage3,通过stage3对所述训练图像对应的特征图f3进行特征提取,得到所述训练图像对应的特征图f5。
77.步骤s6:将所述训练图像对应的特征图f5和特征图f4相加后输入所述特征提取模块的stage
3_3
,通过stage
3_3
对所述训练图像对应的特征图f5和特征图f4的相加结果进行特征提取,得到所述训练图像对应的特征图f6。
78.步骤s7:将所述训练图像对应的特征图f5输入所述特征提取模块的stage4,通过stage4对所述训练图像对应的特征图f5进行特征提取,得到所述训练图像对应的特征图f7。
79.步骤s8:将所述训练图像对应的特征图f7和特征图f6相加后输入所述特征提取模块的stage
4_4
,通过stage
4_4
对所述训练图像对应的特征图f7和特征图f6的相加结果进行特征提取,得到所述训练图像对应的特征图f8,并将所述训练图像对应的特征图f8作为所述训练图像对应的融合特征图m3。
80.步骤s9:将所述训练图像对应的特征图f8输入所述特征提取模块的第三插值单元,通过所述第三插值单元对所述训练图像对应的特征图f8进行插值,得到所述训练图像对应的特征图f8的插值结果,并将所述训练图像对应的特征图f8的插值结果和所述训练图像对应的特征图f6相加,得到所述训练图像对应的融合特征图m2。
81.步骤s10:将所述训练图像对应的融合特征图m2输入所述特征提取模块的第二插值单元,通过所述第二插值单元对所述训练图像对应的融合特征图m2进行插值,得到所述训练图像对应的融合特征图m2的插值结果,并将所述训练图像对应的融合特征图m2的插值结果和所述训练图像对应的特征图f4相加,得到所述训练图像对应的融合特征图m1。
82.步骤s11:将所述训练图像对应的融合特征图m1输入所述特征提取模块的第一插值单元,通过所述第一插值单元对所述训练图像对应的融合特征图m1进行插值,得到所述训练图像对应的融合特征图m1的插值结果,并将所述训练图像对应的融合特征图m1的插值结果和所述训练图像对应的特征图f2相加,得到所述训练图像对应的融合特征图m0。
83.步骤s12:将所述训练图像对应的融合特征图m3至融合特征图m0作为所述训练图像对应的特征信息。
84.由此,将训练图像输入特征提取模块,利用特征提取模块的多个stage得到训练图像对应的特征图,再利用特征提取模块的多个插值单元进行插值,得到对应的插值结果,结合相应的特征图,得到相应的融合特征图,由此得到训练图像对应的特征信息,该方法智能化水平较高。
85.在一具体应用中,对于cbnet中的每个resnext

101,对输入图像i进行特征提取,得到输入图像i对应的特征信息的流程如图3所示。
86.每个stage进入下一个stage之前,将此stage的输出特征作为与其横向并排的stage的输入特征。举例说明,输入图像i经过stage1后,生成特征图f1,f1作为stage1横向并排的stage(stage
1_1
)的输入特征,f1经过stage
1_1
后生成特征图f2;f1经过stage2后,生成特征图f3,f3与f2相加后作为stage2横向并排的stage(stage
2_2
)的输入特征,经过stage
2_2
后生成特征图f4;f3经过stage3后,生成特征图f5,f5与f4相加后作为stage3横向并排的stage(stage
3_3
)的输入特征,经过stage
3_3
后生成特征图f6;f5经过stage4后,生成特征图f7,f7与f6相加后作为stage4横向并排的stage(stage
4_4
)的输入特征,经过stage
4_4
后生成特征图f8。
87.提取上述过程生成的f2、f4、f6和f8,f8经过插值后,形成与f6相同大小、相同通道的特征图,将f8和f6相加来融合stage
4_4
与stage
3_3
阶段的特征,得到m2;m2经过插值后,形成与f4相同大小、相同通道的特征图,将m2与f4相加来融合stage
3_3
与stage
2_2
阶段的特征,得到m1;m1经过插值后,形成与f2相同大小、相同通道的特征图,将m1与f2相加来融合stage
2_2
与stage
1_1
阶段的特征,得到m0;将f8直接作为m3输出。
88.参见图4,在一些实施方式中,以所述stage1、stage2、stage3、stage4、stage
1_1
、stage
2_2
、stage
3_3
、stage
4_4
中的任意一个为目标stage,通过所述目标stage对所述训练图像进行特征提取的方法可以包括步骤s201~s203。
89.步骤s201:通过所述目标stage的多个残差块分别对输入所述目标stage的图像进行处理。其中,残差块可以用residual block表示,目标stage可以由多个残差块横向构成。
90.步骤s202:通过所述目标stage的第一加法层将各所述残差块的处理结果相加。
91.步骤s203:通过所述目标stage的第二加法层将各所述残差块的处理结果的相加结果与输入所述目标stage的图像相加。
92.由此,目标stage的每个残差块可以对输入目标stage的图像进行处理,得到精度较高的处理结果。
93.参见图5,在一些实施方式中,每个resnext101中的残差块可以包括三个连续的卷积层,第一层输入通道是256,输出通道是4,卷积核尺寸是1
×
1;第二层输入通道是4,输出通道是4,卷积核尺寸是3
×
3;第三层输入通道是4,输出通道是256,卷积核尺寸是1
×
1。每一个残差块由32组残差单元分支结构并列组成,最终在通道上做加性运算。
94.参见图6,在一些实施方式中,所述步骤s201可以包括步骤s301~s303。
95.步骤s301:通过所述目标stage的各所述残差块的第一卷积层分别对输入所述目标stage的图像进行卷积处理,得到各所述残差块对应的第一卷积结果。其中,第一卷积层的卷积核的大小可以是1
×
1。
96.步骤s302:通过所述目标stage的各所述残差块的可变形卷积层分别对各所述残差块对应的第一卷积结果进行卷积处理,得到各所述残差块对应的可变形卷积结果。可变
形卷积层例如是dcn(deformable convolution net)层。可变形卷积层的卷积核可以对输入特征的采样产生偏移,从而对场景中变形的物体有着更好的鲁棒性。
97.步骤s303:通过所述目标stage的各所述残差块的第二卷积层分别对各所述残差块对应的可变形卷积结果进行卷积处理。其中,第二卷积层的卷积核的大小可以是1
×
1。
98.由此,利用目标stage的每个残差块的第一卷积层、可变形卷积层和第二卷积层,可以对输入目标stage的图像更细致地提取特征。
99.参见图7,在一些实施方式中,所述步骤s103可以包括步骤s401~s405。
100.步骤s401:将所述训练图像对应的特征信息输入所述预设深度神经网络的rpn网络,通过所述rpn网络进行候选框生成和边界框回归,得到所述训练图像对应的基准边界框信息。
101.步骤s402:将所述训练图像对应的特征信息和基准边界框信息输入所述预测模块的第一头结构,通过所述第一头结构进行分类、边界框回归、细粒度分类和分割,得到所述训练图像对应的第一类别信息、第一边界框信息、第一细粒度类别信息和第一轮廓信息。其中,第一头结构可以用h1来表示。
102.步骤s403:将所述训练图像对应的特征信息和第一边界框信息输入所述预测模块的第二头结构,通过所述第二头结构进行分类、边界框回归、细粒度分类和分割,得到所述训练图像对应的第二类别信息、第二边界框信息、第二细粒度类别信息和第二轮廓信息。其中,第二头结构可以用h2来表示。
103.步骤s404:将所述训练图像对应的特征信息和第二边界框信息输入所述预测模块的第三头结构,通过所述第三头结构进行分类、边界框回归、细粒度分类和分割,得到所述训练图像对应的第三类别信息、第三边界框信息、第三细粒度类别信息和第三轮廓信息。其中,第三头结构可以用h3来表示。
104.步骤s405:基于所述训练图像对应的第三类别信息、第三边界框信息、第三细粒度类别信息和第三轮廓信息,获取所述训练图像对应的预测信息。
105.由此,将训练图像对应的特征信息输入预设深度神经网络的rpn网络,得到训练图像对应的基准边界框信息,利用预测模块的第一头结构、第二头结构和第三头结构得到相应的类别信息、边界框信息、细粒度类别信息和轮廓信息,从而获取训练图像对应的预测信息。
106.参见图8,在一些实施方式中,以所述第一头结构至所述第三头结构中的任意一个为目标头结构,通过所述目标头结构进行分类、边界框回归、细粒度分类和分割的方法可以包括步骤s501~s503。
107.步骤s501:通过所述目标头结构的detection head进行分类和边界框回归。
108.步骤s502:通过所述目标头结构的attributes head进行细粒度分类。
109.步骤s503:通过所述目标头结构的mask head进行分割。
110.由此,可以利用目标头结构的detection head进行分类和边界框回归,利用目标头结构的attributes head进行细粒度分类,利用目标头结构的mask head进行分割。
111.参见图9

11,在一些实施方式中,所述步骤s501可以包括步骤s601~s604。
112.步骤s601:通过所述目标头结构的detection head的roi pooling层进行roi pooling处理。
113.步骤s602:通过所述目标头结构的detection head的卷积层进行卷积处理。
114.步骤s603:通过所述目标头结构的detection head的第一全连接层进行全连接处理。
115.步骤s604:通过所述目标头结构的detection head的第二全连接层进行分类和边界框回归。
116.所述步骤s502可以包括步骤s701~s704。
117.步骤s701:通过所述目标头结构的attributes head的roi align层进行roi align处理。
118.步骤s702:通过所述目标头结构的attributes head的卷积层进行卷积处理。
119.步骤s703:通过所述目标头结构的attributes head的第一全连接层进行全连接处理。
120.步骤s704:通过所述目标头结构的attributes head的第二全连接层进行细粒度分类。
121.所述步骤s503可以包括步骤s801~s804。
122.步骤s801:通过所述目标头结构的mask head的roi align层进行roi align处理,得到掩膜特征。
123.步骤s802:通过所述目标头结构的mask head的语义分割分支进行语义分割处理,得到语义分割特征。
124.步骤s803:通过所述目标头结构的mask head的roi align层对所述语义分割特征和输入所述目标头结构的边界框信息进行roi align处理,得到一次融合特征。
125.步骤s804:通过所述目标头结构的mask head的加法层将所述一次融合特征和所述掩膜特征相加。
126.由此,通过目标头结构的mask head进行分割时,可以采用目标头结构的mask head的语义分割分支进行语义分割处理,得到语义分割特征,从而获得更好的空间信息,通过目标头结构的mask head的roi align层对语义分割特征和输入目标头结构的边界框信息进行roi align处理,得到一次融合特征,再通过目标头结构的mask head的加法层一次融合特征和所述掩膜特征相加,由此训练得到的服装细粒度分割模型分辨目标的能力较强。
127.参见图12,在一具体应用中,b
i
(i=1,2,3)表示目标头结构的detection head的分类与回归分支,h
i
(i=1,2,3)表示目标头结构的mask head的模板分支,s表示目标头结构的mask head的语义分割分支。
128.在相邻头结构h
i
(i=1,2,3)的模板分支(h
i
)之间增加一条连接,提供模板分支的信息流,让h
i+1
知晓h
i
的特征。将h
i
的特征经过一个1x1的卷积做特征嵌入(feature embedding),然后输入到h
i+1
,这样h
i+1
既能得到特征提取模块的特征,也能得到h
i
的特征。
129.在一些实施方式中,所述步骤s604可以包括:通过所述目标头结构的detection head的第二全连接层的分类网络fc

head进行分类;通过所述目标头结构的detection head的第二全连接层的回归网络conv

head进行边界框回归。
130.由此,可以利用目标头结构的detection head的第二全连接层的分类网络fc

head进行分类,利用目标头结构的detection head的第二全连接层的回归网络conv

head
进行边界框回归。
131.在一些实施方式中,所述步骤s501可以包括:使用基于任务间空间自适应解耦的检测算法,通过所述目标头结构的detection head进行分类和边界框回归,其中,对于分类任务和回归任务,分别学习各自适应的proposal和特征提取器。基于任务间空间自适应解耦可以用tsd(task

aware spatial disentanglement)来表示。
132.由此,一方面,采用基于任务间空间自适应解耦的检测算法可以提高服装细粒度分割模型的检测准确度;另一方面,对于分类任务和回归任务,输入和特征提取器是不共享的,可以最大程度地减少由于优化目标不一样带来的冲突,进而显著提升服装细粒度分割模型的性能。
133.在一具体应用中,对于分类任务,通过以下公式可以保证分类任务准确度比传统方法更高,约束tsd的置信度至少比sibling head高m
c

[0134][0135]
其中,cls表示分类分支,m
cls
表示tsd的分类分支的渐进约束,h1表示将特征转换为预测特定类型和定位对象的函数,h
1d
表示将分类和定位任务解缠定义的新的函数,f
l
表示第l个头输出的特征图(l是字母“l”),τ
c
表示调节幅值的预定义标量,δc表示point

wise的形变,h(y|
·
)表示对于第y类的预测置信度,m
c
是预定的margin。
[0136]
对于回归任务,通过以下公式保证回归任务准确度比传统方法更高,约束tsd的预测结果的iou至少比sibling head的结果高m
r

[0137][0138]
其中,m
loc
表示tsd的定位分支的渐进约束,m
r
表示预设的常量,是原始检测器头部得到的检测框,是tsd算法得到的检测框。如果当前的proposal是一个负样本,那么损失会被忽略。
[0139]
在整个训练过程中,整体检测器的优化函数为:
[0140][0141]
在推理阶段,原始检测器头部不再使用。l
rpn
+l
cls
+l是原始损失函数,是tsd损失函数。
[0142]
在一些实施方式中,所述步骤s403可以包括:将所述训练图像对应的特征信息、第一边界框信息和第一轮廓信息输入所述预测模块的第二头结构,通过所述第二头结构进行分类、边界框回归、细粒度分类和分割,得到所述训练图像对应的第二类别信息、第二边界框信息、第二细粒度类别信息和第二轮廓信息。
[0143]
所述步骤s404可以包括:将所述训练图像对应的特征信息、第二边界框信息和第二轮廓信息输入所述预测模块的第三头结构,通过所述第三头结构进行分类、边界框回归、细粒度分类和分割,得到所述训练图像对应的第三类别信息、第三边界框信息、第三细粒度类别信息和第三轮廓信息。
[0144]
由此,在利用第一头结构、第二头结构和第三头结构进行分类、边界框回归、细粒度分类和分割时,输入的信息可以包括训练图像对应的轮廓信息,由此得到的服装细粒度分割模型的精度较高。
[0145]
参见图13,在一些实施方式中,所述步骤s102可以包括步骤s901~s905。
[0146]
步骤s901:确定包含所述训练图像的多个训练图像。
[0147]
步骤s902:将各训练图像的宽和高中的长边缩放至预设长度值,将各训练图像的宽和高中的短边缩放至预设长度范围中的任意值。
[0148]
步骤s903:以所述多个训练图像中短边的最大值为基准值,将其余训练图像的短边填充至所述基准值。
[0149]
步骤s904:将所述多个训练图像以批的形式输入所述特征提取模块,通过所述特征提取模块对所述多个训练图像进行特征提取,得到所述多个训练图像对应的特征信息。
[0150]
步骤s905:基于所述多个训练图像对应的特征信息,获取所述训练图像对应的特征信息。
[0151]
由此,通过对训练图像的长边和短边进行对应的缩放处理,可以实现数据增广,使训练图像尽可能的多样化,使训练得到的服装细粒度分割模型具有较强的泛化能力。
[0152]
在一具体应用中,针对每一张训练图像i
i
,比较其自身的宽i
i_w
和高i
i_h
,将宽i
i_w
和高i
i_h
中的较长边max(i
i_w
,i
i_h
)缩放至l,较短边min(i
i_w
,i
i_h
)缩放至s,s从s1~s2之间随机选择。
[0153]
将多张训练图像i
i
(i=1,2,3

n)以批处理(batch)的形式i输入至特征提取模块,i中所有图像的长边为l,图像的短边为了统一尺寸,则以整个i中图像的短边s
i
(i=1,2,3

n)中最大的值max(s
i
)为基准s_base,其余的s
i
加padding至s_base。
[0154]
具体公式如下:
[0155]
s_base=s
i
+padding
[0156]
参见图14,本技术实施例还提供了一种模型训练方法,所述模型训练方法包括以下步骤:
[0157]
对原始数据进行数据增广,得到增广后的数据;
[0158]
将增广后的数据输入htc(hybrid task cascade)网络中,利用htc网络输出对应的特征信息;
[0159]
将对应的特征信息输入头结构,利用头结构得到输出结果,其中,头结构包括detection head、attributes head和mask head,在detection head加入基于任务间空间自适应解耦(task

aware spatial disentanglement,tsd)的检测算法。
[0160]
服装的视觉分析是近年来越来越受到关注的话题。从图片中识别服装产品和相关属性可以增强消费者的购物体验,并提高时尚专业人士的工作效率。
[0161]
现有技术cn111199248a公开了一种基于深度学习目标检测算法的服装属性识别检测方法,通过对原始服装图像进行标注和分类,获取服装的属性,如:袖子、领子等,然后对服装图片进行翻转、平移等预处理,再予以基于深度学习的目标检测算法对服装属性进行识别检测。所述对服装图片进行预处理是指对图片服装属性的位置进行标注并对其进行分类,然后使用传统图像算法对图片进行翻转和平移等预处理达到数据增广的效果。所述基于深度学习的目标检测算法的服装属性识别检测方法是首先使用深度卷积神经网络对服装属性特征进行充分提取,然后使用目标检测算法特征金字塔对多层特征进行融合,最后使用全卷积神经网络对服装属性进行识别和检测。能够达到90%的识别准确率和82%的检测精度,鲁棒性和泛化能力强,可适用于计算机视觉领域中的服装属性识别和检测。
[0162]
尽管上述方法解决了相关的服装属性识别的问题,但是在设计这些服装时并未考虑到时尚内部人士的需求,这可能是服装设计和计算机视觉方面的研究差距所致。
[0163]
为了解决这个问题,本发明采用基于深度学习计算机视觉的方法,设计一种更加稳定,准确率更高的服装细粒度分割方法,通过来自消费者拍摄的照片可以识别出服装产品和服装产品的相关属性,以此来增强消费者的购物体验。服装产品的相关属性即袖子、领子、裤脚等。
[0164]
其中,细粒度分割属于细粒度图像分类技术领域,细粒度图像分类是在区分出基本类别的基础上,进行更精细的子类划分,如区分鸟的种类、车的款式、服装的种类等。
[0165]
参见图15,本技术实施例还提供了一种服装细粒度分割方法,所述服装细粒度分割方法包括步骤s21~s22。
[0166]
步骤s21:获取待分割图像。
[0167]
步骤s22:将所述待分割图像输入服装细粒度分割模型,得到所述待分割图像对应的预测信息。
[0168]
其中,所述服装细粒度分割模型是利用上述任一项模型训练方法训练得到的。
[0169]
由此,用户将待分割图像输入服装细粒度分割模型,即可得到待分割图像对应的预测信息,预测信息可以包括待分割图像的预测边界框、预测细粒度类别和预测轮廓,该方法可以用于识别服装类别和服装属性,提升用户的使用体验。
[0170]
参见图16,本技术实施例还提供了一种模型训练装置,其具体实现方式与上述模型训练方法的实施例中记载的实施方式、所达到的技术效果一致,部分内容不再赘述。
[0171]
所述模型训练装置包括:数据获取模块101,用于获取训练图像及其对应的标注信息,所述训练图像对应的标注信息用于指示所述训练图像中的服装的标注边界框、标注细粒度类别和标注轮廓;提取特征模块102,用于将所述训练图像输入预设深度神经网络的特征提取模块,通过所述特征提取模块对所述训练图像进行特征提取,得到所述训练图像对应的特征信息,所述特征提取模块采用cbnet和fpn相结合的架构,cbnet中包含两个级联的resnext

101;图像预测模块103,用于将所述训练图像对应的特征信息输入所述预设深度神经网络的预测模块,通过所述预测模块对所述训练图像进行分割,得到所述训练图像对应的预测信息,所述训练图像对应的预测信息用于指示所述训练图像中的服装的预测边界框、预测细粒度类别和预测轮廓;模型训练模块104,用于利用所述训练图像对应的预测信息和标注信息,对所述预设深度神经网络进行训练,得到服装细粒度分割模型。
[0172]
参见图17,在一些实施方式中,所述提取特征模块102可以包括:第一特征图单元1,用于将所述训练图像输入所述特征提取模块的stage1,通过stage1对所述训练图像进行特征提取,得到所述训练图像对应的特征图f1;第二特征图单元2,用于将所述训练图像对应的特征图f1输入所述特征提取模块的stage
1_1
,通过stage
1_1
对所述训练图像对应的特征图f1进行特征提取,得到所述训练图像对应的特征图f2;第三特征图单元3,用于将所述训练图像对应的特征图f1输入所述特征提取模块的stage2,通过stage2对所述训练图像对应的特征图f1进行特征提取,得到所述训练图像对应的特征图f3;第四特征图单元4,用于将所述训练图像对应的特征图f3和特征图f2相加后输入所述特征提取模块的stage
2_2
,通过stage
2_2
对所述训练图像对应的特征图f3和特征图f2的相加结果进行特征提取,得到所述训练图像对应的特征图f4;第五特征图单元5,用于将所述训练图像对应的特征图f3输入所述
特征提取模块的stage3,通过stage3对所述训练图像对应的特征图f3进行特征提取,得到所述训练图像对应的特征图f5;第六特征图单元6,用于将所述训练图像对应的特征图f5和特征图f4相加后输入所述特征提取模块的stage
3_3
,通过stage
3_3
对所述训练图像对应的特征图f5和特征图f4的相加结果进行特征提取,得到所述训练图像对应的特征图f6;第七特征图单元7,用于将所述训练图像对应的特征图f5输入所述特征提取模块的stage4,通过stage4对所述训练图像对应的特征图f5进行特征提取,得到所述训练图像对应的特征图f7;第三融合特征单元8,用于将所述训练图像对应的特征图f7和特征图f6相加后输入所述特征提取模块的stage
4_4
,通过stage
4_4
对所述训练图像对应的特征图f7和特征图f6的相加结果进行特征提取,得到所述训练图像对应的特征图f8,并将所述训练图像对应的特征图f8作为所述训练图像对应的融合特征图m3;第二融合特征单元9,用于将所述训练图像对应的特征图f8输入所述特征提取模块的第三插值单元,通过所述第三插值单元对所述训练图像对应的特征图f8进行插值,得到所述训练图像对应的特征图f8的插值结果,并将所述训练图像对应的特征图f8的插值结果和所述训练图像对应的特征图f6相加,得到所述训练图像对应的融合特征图m2;第一融合特征单元10,用于将所述训练图像对应的融合特征图m2输入所述特征提取模块的第二插值单元,通过所述第二插值单元对所述训练图像对应的融合特征图m2进行插值,得到所述训练图像对应的融合特征图m2的插值结果,并将所述训练图像对应的融合特征图m2的插值结果和所述训练图像对应的特征图f4相加,得到所述训练图像对应的融合特征图m1;第零融合特征单元11,用于将所述训练图像对应的融合特征图m1输入所述特征提取模块的第一插值单元,通过所述第一插值单元对所述训练图像对应的融合特征图m1进行插值,得到所述训练图像对应的融合特征图m1的插值结果,并将所述训练图像对应的融合特征图m1的插值结果和所述训练图像对应的特征图f2相加,得到所述训练图像对应的融合特征图m0;特征信息单元12,用于将所述训练图像对应的融合特征图m3至融合特征图m0作为所述训练图像对应的特征信息。
[0173]
参见图18,在一些实施方式中,以所述stage1、stage2、stage3、stage4、stage
1_1
、stage
2_2
、stage
3_3
、stage
4_4
中的任意一个为目标stage,所述提取特征模块102可以包括:残差块单元201,用于通过所述目标stage的多个残差块分别对输入所述目标stage的图像进行处理;处理结果单元202,用于通过所述目标stage的第一加法层将各所述残差块的处理结果相加;图像相加单元203,用于通过所述目标stage的第二加法层将各所述残差块的处理结果的相加结果与输入所述目标stage的图像相加。
[0174]
参见图19,在一些实施方式中,所述残差块单元201可以包括:第一卷积子单元301,用于通过所述目标stage的各所述残差块的第一卷积层分别对输入所述目标stage的图像进行卷积处理,得到各所述残差块对应的第一卷积结果;第二卷积子单元302,用于通过所述目标stage的各所述残差块的可变形卷积层分别对各所述残差块对应的第一卷积结果进行卷积处理,得到各所述残差块对应的可变形卷积结果;第三卷积子单元303,用于通过所述目标stage的各所述残差块的第二卷积层分别对各所述残差块对应的可变形卷积结果进行卷积处理。
[0175]
参见图20,在一些实施方式中,所述图像预测模块103可以包括:基准边界框单元401,用于将所述训练图像对应的特征信息输入所述预设深度神经网络的rpn网络,通过所述rpn网络进行候选框生成和边界框回归,得到所述训练图像对应的基准边界框信息;第一
头结构单元402,用于将所述训练图像对应的特征信息和基准边界框信息输入所述预测模块的第一头结构,通过所述第一头结构进行分类、边界框回归、细粒度分类和分割,得到所述训练图像对应的第一类别信息、第一边界框信息、第一细粒度类别信息和第一轮廓信息;第二头结构单元403,用于将所述训练图像对应的特征信息和第一边界框信息输入所述预测模块的第二头结构,通过所述第二头结构进行分类、边界框回归、细粒度分类和分割,得到所述训练图像对应的第二类别信息、第二边界框信息、第二细粒度类别信息和第二轮廓信息;第三头结构单元404,用于将所述训练图像对应的特征信息和第二边界框信息输入所述预测模块的第三头结构,通过所述第三头结构进行分类、边界框回归、细粒度分类和分割,得到所述训练图像对应的第三类别信息、第三边界框信息、第三细粒度类别信息和第三轮廓信息;预测信息单元405,用于基于所述训练图像对应的第三类别信息、第三边界框信息、第三细粒度类别信息和第三轮廓信息,获取所述训练图像对应的预测信息。
[0176]
参见图21,在一些实施方式中,以所述第一头结构至所述第三头结构中的任意一个为目标头结构,所述图像预测模块103可以包括:分类回归单元501,用于通过所述目标头结构的detection head进行分类和边界框回归;细粒度分类单元502,用于通过所述目标头结构的attributes head进行细粒度分类;分割单元503,用于通过所述目标头结构的mask head进行分割。
[0177]
参见图22

24,在一些实施方式中,所述分类回归单元501可以包括:第一处理子单元601,用于通过所述目标头结构的detection head的roi pooling层进行roi pooling处理;第二处理子单元602,用于通过所述目标头结构的detection head的卷积层进行卷积处理;第三处理子单元603,用于通过所述目标头结构的detection head的第一全连接层进行全连接处理;第四处理子单元604,用于通过所述目标头结构的detection head的第二全连接层进行分类和边界框回归;所述细粒度分类单元502可以包括:第五处理子单元701,用于通过所述目标头结构的attributes head的roi align层进行roi align处理;第六处理子单元702,用于通过所述目标头结构的attributes head的卷积层进行卷积处理;第七处理子单元703,用于通过所述目标头结构的attributes head的第一全连接层进行全连接处理;第八处理子单元704,用于通过所述目标头结构的attributes head的第二全连接层进行细粒度分类;所述分割单元503可以包括:掩膜子单元801,用于通过所述目标头结构的mask head的roi align层进行roi align处理,得到掩膜特征;语义分割子单元802,用于通过所述目标头结构的mask head的语义分割分支进行语义分割处理,得到语义分割特征;融合特征子单元803,用于通过所述目标头结构的mask head的roi align层对所述语义分割特征和输入所述目标头结构的边界框信息进行roi align处理,得到一次融合特征;特征相加子单元804,用于通过所述目标头结构的mask head的加法层将所述一次融合特征和所述掩膜特征相加。
[0178]
在一些实施方式中,所述第四处理子单元604可以用于:通过所述目标头结构的detection head的第二全连接层的分类网络fc

head进行分类;通过所述目标头结构的detection head的第二全连接层的回归网络conv

head进行边界框回归。
[0179]
在一些实施方式中,所述分类回归单元501可以用于:使用基于任务间空间自适应解耦的检测算法,通过所述目标头结构的detection head进行分类和边界框回归,其中,对于分类任务和回归任务,分别学习各自适应的proposal和特征提取器。
[0180]
在一些实施方式中,所述第二头结构单元403可以用于:将所述训练图像对应的特征信息、第一边界框信息和第一轮廓信息输入所述预测模块的第二头结构,通过所述第二头结构进行分类、边界框回归、细粒度分类和分割,得到所述训练图像对应的第二类别信息、第二边界框信息、第二细粒度类别信息和第二轮廓信息;所述第三头结构单元404可以用于:将所述训练图像对应的特征信息、第二边界框信息和第二轮廓信息输入所述预测模块的第三头结构,通过所述第三头结构进行分类、边界框回归、细粒度分类和分割,得到所述训练图像对应的第三类别信息、第三边界框信息、第三细粒度类别信息和第三轮廓信息。
[0181]
参见图25,在一些实施方式中,所述提取特征模块102可以包括:图像确定单元901,用于确定包含所述训练图像的多个训练图像;图像缩放单元902,用于将各训练图像的宽和高中的长边缩放至预设长度值,将各训练图像的宽和高中的短边缩放至预设长度范围中的任意值;图像填充单元903,用于以所述多个训练图像中短边的最大值为基准值,将其余训练图像的短边填充至所述基准值;第一信息单元904,用于将所述多个训练图像以批的形式输入所述特征提取模块,通过所述特征提取模块对所述多个训练图像进行特征提取,得到所述多个训练图像对应的特征信息;第二信息单元905,用于基于所述多个训练图像对应的特征信息,获取所述训练图像对应的特征信息。
[0182]
参见图26,本技术实施例还提供了一种服装细粒度分割装置,其具体实现方式与上述服装细粒度分割方法的实施例中记载的实施方式、所达到的技术效果一致,部分内容不再赘述。
[0183]
所述服装细粒度分割装置包括:待分割图像模块21,用于获取待分割图像;图像分割模块22,用于将所述待分割图像输入服装细粒度分割模型,得到所述待分割图像对应的预测信息;其中,所述服装细粒度分割模型是利用上述任一项模型训练方法训练得到的。
[0184]
参见图27,本技术实施例还提供了一种电子设备200,电子设备200包括至少一个存储器210、至少一个处理器220以及连接不同平台系统的总线230。
[0185]
存储器210可以包括易失性存储器形式的可读介质,例如随机存取存储器(ram)211和/或高速缓存存储器212,还可以进一步包括只读存储器(rom)213。
[0186]
其中,存储器210还存储有计算机程序,计算机程序可以被处理器220执行,使得处理器220执行本技术实施例中模型训练方法或者服装细粒度分割方法的步骤,其具体实现方式与上述模型训练方法或者服装细粒度分割方法的实施例中记载的实施方式、所达到的技术效果一致,部分内容不再赘述。
[0187]
存储器210还可以包括具有至少一个程序模块215的实用工具214,这样的程序模块215包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
[0188]
相应的,处理器220可以执行上述计算机程序,以及可以执行实用工具214。
[0189]
总线230可以为表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器、外围总线、图形加速端口、处理器或者使用多种总线结构中的任意总线结构的局域总线。
[0190]
电子设备200也可以与一个或多个外部设备240例如键盘、指向设备、蓝牙设备等通信,还可与一个或者多个能够与该电子设备200交互的设备通信,和/或与使得该电子设备200能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等)通
信。这种通信可以通过输入输出接口250进行。并且,电子设备200还可以通过网络适配器260与一个或者多个网络(例如局域网(lan),广域网(wan)和/或公共网络,例如因特网)通信。网络适配器260可以通过总线230与电子设备200的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备200使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理器、外部磁盘驱动阵列、raid系统、磁带驱动器以及数据备份存储平台等。
[0191]
本技术实施例还提供了一种计算机可读存储介质,该计算机可读存储介质用于存储计算机程序或者服装细粒度分割模型,所述计算机程序被执行时实现本技术实施例中模型训练方法或者服装细粒度分割方法的步骤,其具体实现方式与上述模型训练方法或者服装细粒度分割方法的实施例中记载的实施方式、所达到的技术效果一致,部分内容不再赘述。所述服装细粒度分割模型是利用本技术实施例中的模型训练方法训练得到的。
[0192]
图28示出了本实施例提供的用于实现上述模型训练方法的程序产品300,其可以采用便携式紧凑盘只读存储器(cd

rom)并包括程序代码,并可以在终端设备,例如个人电脑上运行。然而,本发明的程序产品300不限于此,在本技术中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。程序产品300可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑盘只读存储器(cd

rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。
[0193]
计算机可读存储介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读存储介质还可以是任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。可读存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、rf等,或者上述的任意合适的组合。可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的程序代码,程序设计语言包括面向对象的程序设计语言诸如java、c++等,还包括常规的过程式程序设计语言诸如c语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(lan)或广域网(wan),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
[0194]
本技术从使用目的上,效能上,进步及新颖性等观点进行阐述,已符合专利法所强调的功能增进及使用要件,本技术以上的说明书及说明书附图,仅为本技术的较佳实施例而已,并非以此局限本技术,因此,凡一切与本技术构造,装置,特征等近似、雷同的,即凡依本技术专利申请范围所作的等同替换或修饰等,皆应属本技术的专利申请保护的范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1