一种人物服饰识别方法、装置、设备和可读存储介质
文献发布时间:2024-04-18 19:58:26
技术领域
本申请涉及智能识别领域,更具体地说,涉及一种人物服饰识别方法、装置、设备和可读存储介质。
背景技术
人物服饰识别是指从图像中识别出其中目标人物的生物属性的过程,生物属性可以包括目标人物的性别、年龄等。随着监控视频的普及,如何准确有效地利用视频中的人物信息,挖掘人物服饰相关属性具有很大的价值。示例如,在辅助公安机关对目标人物进行天眼摸排寻找,确定人物位置的过程中,可依据对每一区域的来往人群的人物服饰识别结果,确定出与目标人物服饰相同的人物,以确定目标人物位置。
目前的人物服饰识别所利用的传统识别模型,都是通过将一系列卷积层与下采样层进行堆叠得到的,服务器通过该传统识别模型识别生物属性的计算量较大,识别效率和准确度较低。
基于上述情况,亟需一种人物服饰识别方案,以减少识别计算,提高识别效率和识别准确度。
发明内容
有鉴于此,本申请提供了一种人物服饰识别方法、装置、设备和可读存储介质,以提高对目标人物生物属性的识别效率和识别准确度。
一种人物服饰识别方法,包括:
获取待识别人物图片;
获取训练完成的服饰识别模型,所述服饰识别模型包括特征提取层、稠密连接网络、特征分析网络;
将所述待识别人物图片输入所述服饰识别模型,通过所述特征提取层对输入的待识别人物图片进行特征提取,生成第一特征图,通过所述稠密连接网络对所述第一特征图进行特征复用,生成第二特征图,通过所述特征分析网络对所述第二特征图进行分析,确定对待识别人物的服饰识别结果。
优选的,所述稠密连接网络由采用密集连接的若干稠密块和若干过渡层组成,每个层的特征图大小相同,其中,所述稠密块用于依据预先定义的输入和输出在通道维上的连结方式进行批量归一化、激活和卷积处理,所述过渡层用于控制通道数。
优选的,所述特征分析网络,包括压缩处理网络、指数分析网络和结果确定层;
通过所述特征分析网络对所述第二特征图进行分析,确定对待识别人物的服饰识别结果的过程,包括:
通过所述压缩处理网络对输入的所述第二特征图进行降维处理和尺寸压缩,生成第三特征图;
通过所述指数分析网络对输入的所述第三特征图进行全局平均池化处理以及归一化指数处理,得到服饰信息,以及与每一服饰信息对应的预测指数值;
利用所述结果确定层,根据所述服饰信息以及对应的所述预测指数值,确定对待识别人物的服饰识别结果。
优选的,所述特征提取层,包括卷积层和最大池化层;
通过所述特征提取层对输入的待识别人物图片进行特征提取的过程,包括:
通过所述卷积层对输入的所述待识别人物图片进行卷积运算,提取得到图片特征信息;
通过所述最大处理层对所述图片特征信息做最大池化处理,生成第一特征图。
优选的,所述指数分析网络,包括依次连接的第一卷积块、最大池化层、第二卷积块、全局平均池化层、第三卷积块、归一处理层。
优选的,所述获取待识别人物图片,包括:
从待识别视频中提取多个不同时刻的待识别帧;
对所述待识别帧进行待识别人物区域检测;
基于检测到的所述待识别人物区域,对所述待识别帧进行尺寸变换、去均值及标准归一化处理,生成待识别人物图片。
优选的,训练所述服饰识别模型的过程,包括:
获取训练人物图片,所述训练人物图片标注有对应的训练服饰信息;
将所述训练人物图片输入预设的基础识别模型,得到所述基础识别模型输出的对所述训练人物的服饰识别结果;
以所述训练人物的服饰识别结果与所述训练人物图片标注的训练服饰信息一致为目标,训练所述基础识别模型;
当所述基础识别模型满足预设的训练条件时,将训练完成的基础识别模型作为服饰识别模型。
一种人物服饰识别装置,包括:
图片获取模块,用于获取待识别人物图片;
模型获取模块,用于获取训练完成的服饰识别模型,所述服饰识别模型包括特征提取层、稠密连接网络、特征分析网络;
服饰识别模块,用于将所述待识别人物图片输入所述服饰识别模型,通过所述特征提取层对输入的待识别人物图片进行特征提取,生成第一特征图,通过所述稠密连接网络对所述第一特征图进行特征复用,生成第二特征图,通过所述特征分析网络对所述第二特征图进行分析,确定对待识别人物的服饰识别结果。
一种人物服饰识别设备,包括存储器和处理器;
所述存储器,用于存储程序;
所述处理器,用于执行所述程序,实现如上述的人物服饰识别方法的各个步骤。
一种可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时,实现如上述的人物服饰识别方法的各个步骤。
从上述的技术方案可以看出,本申请实施例提供的一种人物服饰识别方法、装置、设备和可读存储介质,通过获取得到待识别人物图片,以及训练完成的服饰识别模型,所述服饰识别模型包括特征提取层、稠密连接网络、特征分析网络。将所述待识别人物图片输入所述服饰识别模型,通过所述特征提取层对输入的待识别人物图片进行特征提取,生成第一特征图,通过所述稠密连接网络对所述第一特征图进行特征复用,生成第二特征图,通过所述特征分析网络对所述第二特征图进行分析,最终得到对待识别人物图片中待识别人物的服饰识别结果。
由于所述服饰识别模型由特征提取层、稠密连接网络和特征分析网络组成,其中的稠密连接网络采用特征在通道维上连结实现特征重用,即互相连接所有的层,具体来说就是每个层都会接受来自不同层的特征图作为其额外的输入,以实现特征重用,这种方式可实现在参数和计算成本更少的情形下达到更高的识别效率和识别准确度,因此,相较于现有的技术,本申请的识别效率和识别准确度都更高。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请公开的一种人物服饰识别方法流程图;
图2为本申请公开的一种人物服饰识别模型的结构示意图;
图3为本申请公开的一种特征提取层的结构示意图;
图4为本申请公开的一种稠密连接网络的结构示意图;
图5为本申请公开的一种特征分析网络的结构示意图;
图6为本申请公开的一种人物服饰识别装置的结构框图;
图7为本申请公开的人物服饰识别设备的硬件结构框图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
接下来介绍本申请方案,本申请提出如下技术方案,具体参见下文。
图1为本申请实施例公开的一种人物服饰识别方法流程图,该人物服饰识别方法可应用于人物服饰识别装置,如图1所示,该方法可以包括:
步骤S1、获取待识别人物图片。
具体的,在获取待识别人物图片时,所述待识别人物图片中存在需要进行服饰识别的目标人物,所述服饰包括所有的配饰和所有的衣物,例如鞋、帽子、眼镜、衣裤、背包等,可以理解是,本申请对目标人物的服饰进行识别的过程中,不仅可以识别出目标人物是否佩戴或穿戴相应的物品,还可以识别出目标人物穿戴的服饰的特性,包括其长短特性、颜色特性、材质特性等,例如识别目标人物的裤子是长裤还是短裤,目标人物佩戴的眼镜是黑色还是白色,识别目标人物的外套是呢绒还是雪纺等。
本申请提供的人物服饰识别方法,可以辅助公安机关的人物搜寻工作,示例如,公安机关在对某一目标人员进行搜寻过程中,可以使用本申请的人物服饰识别方法,对公共区域的流动人员进行人物服饰识别,以确定与已知的目标人物服饰信息匹配的人物,进而确定目标人物的位置信息或移动信息,辅助实现对目标人物的搜寻。
本申请获取的待识别人物图片时,需要在具体的应用的公共场所、区域中,设立指示标志,以提醒人员在进出该公共场所、区域时,将会采集该人员的人物图片,并纳入该区域的生物属性统计中,进而可以在获得用户授权的情况下,合法的对人员生物属性进行识别,以实现本申请的人物服饰识别方法。
其中所述待识别人物图片可以是获取摄像头录制视频的视频帧画面作为待识别人物图片,也可以是抓拍得到的照片作为待识别人物图片,或者是通过其他方式获取得到的存在需要进行人物服饰识别的目标人物的图像,本实施例对此不作限定。
可以理解的是,当本申请获取的是摄像头录制视频的视频帧画面作为待识别人物图片时,该视频帧画面可以是对某一公共区域、场所实时录制或预先录制完成的视频的某一视频帧的画面。在该视频帧画面中可能同时存在多个人员,其中每一个人员均可以为需要进行人物服饰识别的目标人物。
本申请在获取得到待识别人物图片的过程中,可以包括以下步骤:
①从待识别视频中提取多个不同时刻的待识别帧。
②对所述待识别帧进行待识别人物区域检测。
具体的,可以从待识别视频中按照每隔一定时间间隔截取成图片并保存,即提取多个不同时刻的待识别帧,检测待识别帧中出现的人物,即对所述待识别帧进行待识别人物区域检测,截取出其中待识别人物区域保存成图片。
③基于检测到的所述待识别人物区域,对所述待识别帧进行尺寸变换、去均值及标准归一化处理,生成待识别人物图片。
具体的,基于检测到的所述待识别人物区域,对图像进行处理,生成待识别人物图片,包括但不限于尺寸变换、去均值和标准归一化等处理。其目的是去除图像中的影响后续处理精度、准确度的因素,使待识别人物图片相较于原始图像更符合既定规则,便于后续处理,同时减少后续的运算量,加速收敛,以提高后续识别的可靠性。
其中,尺寸变换是指将图像尺寸调整为符合网络输入的尺寸,包括如比例缩放、使用cv.resize()等,比例缩放一般通过计算长宽缩放比例,再通过比例来缩放目标框尺寸利用差值,使用cv.resize()利用插值方法可精确将图像尺寸转换为目标尺寸。
去均值处理为对图像各维度都减对应维度的均值,提升拟合性。在神经网络中,特征值较大的时候,进行反向传播时容易导致梯度消散问题,导致参数改变量很小,难以拟合,效果不好。去均值处理对图像各维度都减对应维度的均值,使得图像各个维度都中心化为0,提升后续拟合性。
标准归一化处理指对图像进行了一系列标准的处理变换,使之变换为一固定标准形式的过程,把图像各个特征的尺度控制在相同的范围内,这样可以便于找到最优解,提高收敛效率。
此外,为了得到更准确的识别结果,还可对待识别人物图片进行二次处理,该二次处理过程包括但不限于对图像进行锐化处理和/或去噪处理等。
其中,锐化处理是指补偿图像的边界和轮廓,图像中的物体的区别是图像的亮度值不同,在边界上反应很大的变化,所以锐化的目的是突出物体的细节,或者增强被模糊了的图像细节,锐化处理通过突出图像上人物的边缘、轮廓,或某些线性目标要素的特征,可提升图像清晰度。
去噪处理是指减少数字图像中噪声的过程,待识别人物图片均为数字图像,而数字图像在获取、传输的过程中都可能会受到噪声的污染,常见的噪声主要有高斯噪声和椒盐噪声。其中,高斯噪声主要是由摄像机传感器元器件内部产生的,椒盐噪声主要是由图像切割所产生的黑白相间的亮暗点噪声。这些噪声将成为待识别人物图片干扰的重要原因,通过对待识别人物图片进行去噪处理,可提升待识别人物图片的真实性和准确性。
步骤S2、获取训练完成的服饰识别模型。
具体的,训练完成的服饰识别模型包括特征提取层、稠密连接网络、特征分析网络。在获取得到包含需要人物服饰识别的目标人物的待识别人物图片后,可以将待识别人物图片输入人物服饰识别模型中,该人物服饰识别模型可以对待识别人物图片中的目标人物的生物属性进行分析识别,并输出对应的人物服饰识别结果。
图2为本申请公开的一种人物服饰识别模型的结构示意图,其中所述人物服饰识别模型包括特征提取层A、稠密连接网络B、特征分析网络C。稠密连接网络是一种拥有较深层数的卷积神经网络,具有参数数量少、加强特征重用、易训练的特性,同时可缓解梯度消失和模型退化问题。稠密连接网络中包含若干稠密块,其中,对于任一稠密块,稠密块中的任何两层之间都有直接的连接,也就是说,网络每一层的输入都是前面所有层输出的并集,而该层所学习的特征图也会被直接传给其后面所有层作为输入。通过密集连接,缓解梯度消失问题,加强特征传播,鼓励特征复用,极大的减少了参数量。
可以理解的是,本申请为了进一步缩短检测时间,并提高检测效率,可以基于标注有对应的训练服饰信息的训练人物图片,预先训练预设的基础识别模型,将训练完成后的基础识别模型确定为服饰识别模型。在需要对人物服饰进行识别时,可以直接获取并使用该人物服饰识别模型,无需浪费大量的训练时间。其中,基础识别模型也包含特征提取层、稠密连接网络和特征分析网络,并以所述样本人物的人物服饰识别结果与标注的所述样本人物的生物属性一致为目标,在训练过程中,不断对其中各网络结构的各项参数进行调整和修正。
进一步地,本申请采用交叉熵作为损失函数来确定模型训练时的损失值,交叉熵能够衡量同一个随机变量中的两个不同概率分布的差异程度,在机器学习中就表示为真实概率分布与预测概率分布之间的差异。交叉熵的值越小,即损失函数值越小,说明模型预测效果就越好,分析预测结果越准确。通过训练模型中的逻辑函数得到各项生物属性,并结合交叉熵损失函数对基础识别模型开始训练时,交叉熵作为损失函数在进行梯度下降计算的时候可以避免出现梯度弥散,从而导致学习速率降低等问题。
步骤S3、将所述待识别人物图片输入所述服饰识别模型,确定对待识别人物的服饰识别结果。
具体的,将待识别人物图片输入到所述人物服饰识别模型中,进行前向传播,人物服饰识别模型对待识别人物图片中的目标人物对应的服饰进行分析,通过人物服饰识别模型中的所述特征提取层对输入的待识别人物图片进行特征提取,生成第一特征图,通过人物服饰识别模型中的所述稠密连接网络对所述第一特征图进行特征复用,生成第二特征图,通过人物服饰识别模型中的所述特征分析网络对所述第二特征图进行分析,可以最终确定对待识别人物的服饰识别结果。
从上述的技术方案可以看出,本申请实施例提供的一种人物服饰识别方法、装置、设备和可读存储介质,通过获取得到待识别人物图片,以及训练完成的服饰识别模型,所述服饰识别模型包括特征提取层、稠密连接网络、特征分析网络。将所述待识别人物图片输入所述服饰识别模型,通过所述特征提取层对输入的待识别人物图片进行特征提取,生成第一特征图,通过所述稠密连接网络对所述第一特征图进行特征复用,生成第二特征图,通过所述特征分析网络对所述第二特征图进行分析,最终得到对待识别人物图片中待识别人物的服饰识别结果。
由于所述服饰识别模型由特征提取层、稠密连接网络和特征分析网络组成,其中的稠密连接网络采用特征在通道维上连结实现特征重用,即互相连接所有的层,具体来说就是每个层都会接受来自不同层的特征图作为其额外的输入,以实现特征重用,这种方式可实现在参数和计算成本更少的情形下达到更高的识别效率和识别准确度,因此,相较于现有的技术,本申请的识别效率和识别准确度都更高。
在本申请的一些实施例中,对本申请的人物服饰识别模型的结构功能进行具体介绍,所述人物服饰识别模型包括特征提取层A、稠密连接网络B、特征分析网络C。下面结合图3至图5,依次对特征提取层A、稠密连接网络B、特征分析网络C进行具体介绍。
特征提取层A:
可选的,如图3所示,所述特征提取层A,包括卷积层A1和最大池化层A2。
在此基础上,通过所述特征提取层对输入的待识别人物图片进行特征提取的过程,包括:
①通过所述卷积层A1对输入的所述待识别人物图片进行卷积运算,提取得到图片特征信息。
具体的,卷积层A1的功能是对输入的待识别人物图片进行卷积运算,实现对待识别人物图片的提取,卷积层A1参数包括卷积核大小、步长和填充,三者共同决定了特征提取层输出特征图的尺寸。其中卷积核大小可以指定为小于输入图像尺寸的任意值,卷积核越大,可提取的输入特征越复杂。本申请提供的一种优选的设置方式为卷积层A1的卷积核大小为3*3,步长为2,填充为1。
②通过所述最大池化层A2对所述图片特征信息做最大池化处理,生成第一特征图。
具体的,最大池化层A2对所述图片特征信息做最大池化处理,生成第一特征图,最大池化处理通过对池化区域的所有像素值取最大值,使得到的特征数据对纹理信息更加敏感,池化后的这些统计特征不仅具有低得多的维度,同时训练结果不容易过拟合。一种可选的设置方式为所述池化处理层,卷积核大小为2*2,步长为2。
稠密连接网络B:
可选的,如图4所示,所述稠密连接网络B由采用密集连接的若干稠密块和若干过渡层组成,每个层的特征图大小相同,其中,所述稠密块用于依据预先定义的输入和输出在通道维上的连结方式进行批量归一化、激活和卷积处理,所述过渡层用于控制通道数。
具体的,对于其中的任一稠密块,使用“批量归一化、激活和卷积”结构,稠密块由多个conv_block组成,每块使用相同的输出通道数,但在前向计算时,将每块的输入和输出在通道维上连结,减少网络参数。由于每个稠密块都会带来通道数的增加,使用过多则会带来过于复杂的模型,因此在稠密块后使用过渡层来控制通道数。过渡层中设置有卷积层和最大池化层,通过1×1卷积层来减小通道数,并使用步幅为2的最大池化层减半高和宽,从而进一步降低模型复杂度。
一种可选的设置方式,对于任一稠密块,其中包含六层,分别为:第一层为卷积层,卷积核大小为1*1,步长为1,填充为0;第二层为卷积层,卷积核大小为3*3,步长为1,填充为1;第三层为concat层,合并池化处理层输出结果和第二层的所述卷积层输出结果;第四层为卷积层,卷积核大小为1*1,步长为1,填充为0;第五层为卷积层,卷积核大小为3*3,步长为1,填充为1;第六层为concat层,合并第三层concat层输出的结果和第五层卷积层输出的结果。
对于任一过渡层,其中包含两层,分别为:第一层为卷积层,卷积核大小为1*1,步长为1,填充为0;第二层为最大池化层,卷积核大小为2*2,步长为2。
特征分析网络C:
可选的,如图5所示,对于所述特征分析网络C,可以包括:压缩处理网络C1、指数分析网络C2和结果确定层C3。
在此基础上,通过所述特征分析网络对所述第二特征图进行分析,确定对待识别人物的服饰识别结果的过程,具体可以包括:
①通过所述压缩处理网络C1对输入的所述第二特征图进行降维处理和尺寸压缩,生成第三特征图。
具体的,所述压缩处理网络包括两层,分别为:第一层为卷积层,第二层为最大池化层。其中,卷积层为卷积核1*1的卷积层,特征图和1*1的卷积核做卷积时,只需要考虑当前像素即可,并不需要考虑周围的像素值,因此卷积核为1*1的卷积层可以用来调节特征图的通道数,对不同通道上的像素点进行线性组合,即可实现对特征图的降维,在实现灵活地控制特征图的深度的同时,起到减少参数量的作用。
最大池化层对卷积层所提取的信息做更一步降维,去除冗余信息、对特征进行压缩、减少计算量和内存消耗,同时最大池化层可加强图像特征的不变性,增加图像的偏移、旋转等方面的鲁棒性。
本申请中,压缩处理网络的卷积层和最大池化层依次对第二特征图进行降维处理和尺寸压缩处理,进而生成第三特征图。
②通过所述指数分析网络C2对输入的所述第三特征图进行全局平均池化处理以及归一化指数处理,得到服饰信息,以及与每一服饰信息对应的预测指数值。
具体的,所述指数分析网络C2包括四层,分别为依次连接的第一卷积层、全局平均池化层、第二卷积层、归一处理层。
其中,卷积层均为卷积核1*1的卷积层,用来调节特征图的通道数,对不同通道上的像素点进行线性组合,即可实现对特征图的降维。在本申请中,指数分析网络的卷积层用来对特征图进行降维处理。
全局平均池化层用于对输出的每一通道的特征图的所有像素计算平均值,并用该数值表示对应特征图。若对每个特征图一整张图片进行全局均值池化,这样每张特征图都可以得到一个输出,采用全局平均池化,可以大大减小网络参数,避免过拟合,此外,每张特征图相当于一个输出特征,然后这个特征就表示了我们输出类的特征。全局平均池化对空间信息进行了求和,因而对输入的空间变换更具有稳定性,通过加强特征图与类别的一致性,让卷积结构更简单,不需要进行参数优化,避免过拟合情况。
归一处理层利用归一化指数函数,将一个含任意实数的k维向量z“压缩”到另一个k维实向量σ(z)中,使得每一个元素的范围都在(0,1)之间,并且所有元素的和为1。归一化指数函数多用于多分类问题中,目的是将多分类的结果以概率的形式展现出来。在本申请中,指数分析网络对所述第三特征图进行全局平均池化处理以及归一化指数处理,最终将得到各类生物属性的预测指数值,即各类生物属性的对应的标准预测结果准确度的概率值。
③利用所述结果确定层C3,根据所述服饰信息以及对应的所述预测指数值,确定对待识别人物的服饰识别结果。
具体的,结果确定层结合预先设定的预测指数过滤值,以及所述各类服饰属性的预测指数值,确定并返回最终得到的目标人物的人物服饰识别结果。本申请基于识别得到的预测指数值,以及预先设定的预测指数过滤值,进行最后的目标人物的人物服饰识别结果判定。当人物服饰识别模型的识别结果预测指数较高时,即大于预设的预测指数过滤值时,可将当前对目标人物的服饰识别结果作为最终的模型输出的服饰识别结果,否则当前目标人物的服饰识别结果为不确定。
预测指数过滤值的设定根据经验值设定,或者对大批数据统计得到,在实际应用中,对于不同的服饰的不同属性项,预先设定的预测指数过滤值也将有所不同,设定的预测指数过滤值越低则精度越小,召回率越高,在实际使用中也可根据实际应用需求设定该预测指数过滤值,即需要的精度越高则设定更高的阈值。可以理解的是,设定的预测指数过滤值越低则精度越小,召回率越高,在实际使用中也可根据实际应用需求设定该预测指数过滤值,即需要的精度越高则设定更高的阈值。
以待识别图片中人物是否佩戴帽子为例,根据设定的预测指数过滤值,过滤后性别应为佩戴帽子、未佩戴帽子和不确定中的一项。若对是否佩戴帽子的的预测指数过滤值设置为0.6,当人物服饰识别模型分析得到的服饰识别结果的预测指数大于或等于0.6,则人物服饰识别模型最终输出的性别识别结果为之前分析得到的性别识别结果,如分析得到的目标人物佩戴帽子,对应预测指数为0.7,则最终输出的服饰识别结果为目标人物佩戴帽子;当人物服饰识别模型分析得到的服饰识别结果的预测指数小于0.6,则人物服饰识别模型最终输出的服饰识别结果为不确定,如分析得到的服饰识别结果为未佩戴帽子,对应预测指数比较小为0.55,则最终输出的服饰识别结果为不确定。
表1和表2为例举的两种可选的人物服饰识别模型的网络结构参数表,其中表1对应的人物服饰识别模型对目标人物是否佩戴帽子进行识别,表2对应的人物服饰识别模型对目标人物的袖口长短进行识别。
/>
/>
表1
如表1所示,其中记载了每一层的输出特征图尺寸,以及每一层的相关参数,在本示例中稠密连接网络中共有4个稠密块和2层过渡层组成,每个稠密块的基础通道数随着尺寸变小而增大,同时网络输入的对应进行目标人物是否佩戴帽子进行识别的特征图大小为96*96。
对于每一稠密模块,分别有4层卷积层和2层concat层构成。其中,对于每一稠密块的concat层,将其本身所处稠密块中concat层的上一层的卷积结果,以及其所在的稠密块的连接的上一层的最终结果进行合并,并输出新的结果。
在表1所示的稠密连接网络中,稠密块B1中第三层的concat层,其合并特征提取层A2的输出和稠密块B1中第三层的卷积层的输出结果,输出维度为32*24*24。稠密块B1中第六层的concat层,合并第三层为concat层输出的结果和稠密块B1中第五层卷积输出的结果,输出维度为40*24*24。稠密块B3中第三层为concat层,合并过渡层B2第二层最大池化层输出和稠密块B3中第二层的卷积层输出结果,输出维度为32*24*24。稠密块B3第六层的concat层,合并稠密块B3第三层为concat层的输出的结果和稠密块B3第五层卷积输出的结果,维度为32*12*12。稠密块B4中第三层的concat层,其合并稠密块B3第六层为concat层的输出的结果和稠密块B4中第二层的卷积层的输出结果,输出维度为32*24*24。稠密块B4中第六层的concat层,合并稠密块B4第三层为concat层的输出的结果和稠密块B4第五层卷积输出的结果,维度为32*12*12。稠密块B6中第三层为concat层,合并过渡层B5第二层最大池化层输出和稠密块B6中第二层的卷积层输出结果,输出维度为56*6*6。稠密块B6第六层的concat层,合并稠密块B6第三层为concat层的输出的结果和稠密块B6第五层卷积输出的结果,维度为64*6*6。
/>
/>
表2
如表2所示,其中记载了每一层的输出特征图尺寸,以及每一层的相关参数,在本示例中稠密连接网络中共有4个稠密块和2层过渡层组成,每个稠密块的基础通道数随着尺寸变小而增大,同时网络输入的对应进行目标人物的袖口长短识别的特征图大小为160*128。
对于每一稠密模块,分别有4层卷积层和2层concat层构成。其中,对于每一稠密块的concat层,将其本身所处稠密块中concat层的上一层的卷积结果,以及其所在的稠密块的连接的上一层的最终结果进行合并,并输出新的结果。
在表2所示的稠密连接网络中,稠密块B1中第三层的concat层,其合并特征提取层A2的输出和稠密块B1中第三层的卷积层的输出结果,输出维度为32*40*32。稠密块B1中第六层的concat层,合并第三层为concat层输出的结果和稠密块B1中第五层卷积输出的结果,输出维度为40*40*32。稠密块B3中第三层为concat层,合并过渡层B2第二层最大池化层输出和稠密块B3中第二层的卷积层输出结果,输出维度为40*20*16。稠密块B3第六层的concat层,合并稠密块B3第三层为concat层的输出的结果和稠密块B3第五层卷积输出的结果,维度为48*20*16。稠密块B4中第三层的concat层,其合并稠密块B3第六层为concat层的输出的结果和稠密块B4中第二层的卷积层的输出结果,输出维度为56*20*16。稠密块B4中第六层的concat层,合并稠密块B4第三层为concat层的输出的结果和稠密块B4第五层卷积输出的结果,维度为64*20*16。稠密块B6中第三层为concat层,合并过渡层B5第二层最大池化层输出和稠密块B6中第二层的卷积层输出结果,输出维度为56*10*8。稠密块B6第六层的concat层,合并稠密块B6第三层为concat层的输出的结果和稠密块B6第五层卷积输出的结果,维度为64*10*8。
上述实施例对本申请中的人物服饰识别方法的过程进行展开描述,下面将对本申请中训练所述服饰识别模型的过程过程进行说明。
在本申请的一些实施例中,所述训练所述服饰识别模型的过程,可以包括:
第一步、获取训练人物图片,所述训练人物图片标注有对应的训练服饰信息。
具体的,本申请中训练人物图片可以为预先配置好的训练人物图片集中的图像,也可以为摄像设备采集的图片或者截取视频帧图片进行预处理,并对应标注完成人物服饰信息的图片,这一过程可通过智能预标注与人工标注结合完成。通过摄像设备采集视频流,按照每隔一定时间间隔截取成图片并保存,检测其中出现的人物,并截取出单个人物保存成图片,并对该单个人物标注有对应的训练服饰信息。
第二步、将所述训练人物图片输入预设的基础识别模型,得到所述基础识别模型输出的对所述训练人物的服饰识别结果。
第三步、以所述训练人物的服饰识别结果与所述训练人物图片标注的训练服饰信息一致为目标,训练所述基础识别模型。
具体的,在获取到大量的训练人物图片后,可以将这些训练人物图片输入至预设的基础识别模型中进行训练,并采用交叉熵作为损失函数来确定模型训练时的损失值。以所述训练人物的人物服饰识别结果与标注的所述训练人物的训练服饰信息一致为目标进行训练。在训练过程中,不断对其中各网络结构的各项参数进行调整和修正。
在本申请中,在对基础识别模型进行训练时,通过所述训练人物图片标注的其中存在的训练人物的训练服饰信息,对基础识别模型的各项参数进行不断修正的过程,具体可以包括:
①随机基础识别模型的参数,其中参数可以包括损失函数的参数,网络结构参数等,该损失函数主要用于对基础识别模型进行修正;
②将训练人物图片中标注的其中存在的训练人物的训练服饰信息输入到基础识别模型中进行损失函数计算,以便计算损失函数的损失值;
③对损失函数进行求导得到梯度,并通过链式计算法进行反向传播,得到更新后的参数;
④不断重复上述步骤2和步骤3,从而不断对基础识别模型进行迭代训练,直到损失函数不再下降,且收敛为止,此时更新最终的参数;
⑤通过最终的参数,完成对基础识别模型的参数更新。
第四步、当所述基础识别模型满足预设的训练条件时,将训练完成的基础识别模型作为服饰识别模型。
具体的,将训练人物图片输入到基础识别模型后,可以得到基础识别模型识别的训练人物的人物服饰识别结果,接着,可以以所述训练人物的人物服饰识别结果与标注的所述训练人物的训练服饰信息一致为目标,来更新模型参数,当所述基础识别模型满足预设的训练条件时,可以将训练完成的基础识别模型作为人物服饰识别模型,该基础识别模型可以快速准确地识别训练人物图片中训练人物的各项训练服饰信息。
本申请的基础识别模型采用了稠密连接网络,改善不同层之间信息流的的问题,加强特征传播,鼓励特征重用,大幅度减少参数数量,不需要学习冗余的特征映射,相比于现有模型,训练速度更快,训练效率更高,且训练完成后的模型的检测效率和检测精度均较高。
下面对本申请实施例提供的人物服饰识别装置进行描述,下文描述的人物服饰识别装置与上文描述的人物服饰识别方法可相互对应参照。
参见图6,图6为本申请实施例公开的一种人物服饰识别装置的结构框图。
如图6所示,所述人物服饰识别装置可以包括:
图片获取模块110,用于获取待识别人物图片;
模型获取模块120,用于获取训练完成的服饰识别模型,所述服饰识别模型包括特征提取层、稠密连接网络、特征分析网络;
服饰识别模块130,用于将所述待识别人物图片输入所述服饰识别模型,通过所述特征提取层对输入的待识别人物图片进行特征提取,生成第一特征图,通过所述稠密连接网络对所述第一特征图进行特征复用,生成第二特征图,通过所述特征分析网络对所述第二特征图进行分析,确定对待识别人物的服饰识别结果。
从上述的技术方案可以看出,本申请实施例提供的一种人物服饰识别方法、装置、设备和可读存储介质,通过获取得到待识别人物图片,以及训练完成的服饰识别模型,所述服饰识别模型包括特征提取层、稠密连接网络、特征分析网络。将所述待识别人物图片输入所述服饰识别模型,通过所述特征提取层对输入的待识别人物图片进行特征提取,生成第一特征图,通过所述稠密连接网络对所述第一特征图进行特征复用,生成第二特征图,通过所述特征分析网络对所述第二特征图进行分析,最终得到对待识别人物图片中待识别人物的服饰识别结果。
由于所述服饰识别模型由特征提取层、稠密连接网络和特征分析网络组成,其中的稠密连接网络采用特征在通道维上连结实现特征重用,即互相连接所有的层,具体来说就是每个层都会接受来自不同层的特征图作为其额外的输入,以实现特征重用,这种方式可实现在参数和计算成本更少的情形下达到更高的识别效率和识别准确度,因此,相较于现有的技术,本申请的识别效率和识别准确度都更高。
在本申请的一些实施例中,所述人物服饰识别模型的所述稠密连接网络可以由采用密集连接的若干稠密块和若干过渡层组成,每个层的特征图大小相同,其中,所述稠密块用于依据预先定义的输入和输出在通道维上的连结方式进行批量归一化、激活和卷积处理,所述过渡层用于控制通道数。
在本申请的一些实施例中,所述人物服饰识别模型的特征分析网络,可以包括压缩处理网络、指数分析网络和结果确定层;
所述压缩处理网络,可以对输入的所述第二特征图进行降维处理和尺寸压缩,生成第三特征图;
所述指数分析网络,可以对输入的所述第三特征图进行全局平均池化处理以及归一化指数处理,得到服饰信息,以及与每一服饰信息对应的预测指数值;
所述结果确定层,可以根据所述服饰信息以及对应的所述预测指数值,确定对待识别人物的服饰识别结果。
在本申请的一些实施例中,所述人物服饰识别模型的所述特征提取层,可以包括卷积层和最大池化层;
所述卷积层,可以对输入的所述待识别人物图片进行卷积运算,提取得到图片特征信息;
所述最大处理层,可以对所述图片特征信息做最大池化处理,生成第一特征图。
在本申请的一些实施例中,所述人物服饰识别模型的所述指数分析网络,可以包括依次连接的第一卷积块、最大池化层、第二卷积块、全局平均池化层、第三卷积块、归一处理层。
在本申请的一些实施例中,所述图片获取模块获取待识别人物图片的过程,可以包括:
从待识别视频中提取多个不同时刻的待识别帧;
对所述待识别帧进行待识别人物区域检测;
基于检测到的所述待识别人物区域,对所述待识别帧进行尺寸变换、去均值及标准归一化处理,生成待识别人物图片。
在本申请的一些实施例中,所述人物服饰识别装置还可以包括模型生成模块;
所述模型生成模块训练所述服饰识别模型的过程,包括:
获取训练人物图片,所述训练人物图片标注有对应的训练服饰信息;
将所述训练人物图片输入预设的基础识别模型,得到所述基础识别模型输出的对所述训练人物的服饰识别结果;
以所述训练人物的服饰识别结果与所述训练人物图片标注的训练服饰信息一致为目标,训练所述基础识别模型;
当所述基础识别模型满足预设的训练条件时,将训练完成的基础识别模型作为服饰识别模型。
本申请实施例提供的人物服饰识别装置可应用于人物服饰识别设备。图7示出了人物服饰识别设备的硬件结构框图,参照图7,人物服饰识别设备的硬件结构可以包括:至少一个处理器1,至少一个通信接口2,至少一个存储器3和至少一个通信总线4;
在本申请实施例中,处理器1、通信接口2、存储器3、通信总线4的数量为至少一个,且处理器1、通信接口2、存储器3通过通信总线4完成相互间的通信;
处理器1可能是一个中央处理器CPU,或者是特定集成电路ASIC(ApplicationSpecific Integrated Circuit),或者是被配置成实施本发明实施例的一个或多个集成电路等;
存储器3可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatilememory)等,例如至少一个磁盘存储器;
其中,存储器存储有程序,处理器可调用存储器存储的程序,所述程序用于:
获取待识别人物图片;
获取训练完成的服饰识别模型,所述服饰识别模型包括特征提取层、稠密连接网络、特征分析网络;
将所述待识别人物图片输入所述服饰识别模型,通过所述特征提取层对输入的待识别人物图片进行特征提取,生成第一特征图,通过所述稠密连接网络对所述第一特征图进行特征复用,生成第二特征图,通过所述特征分析网络对所述第二特征图进行分析,确定对待识别人物的服饰识别结果。
可选地,所述程序的细化功能和扩展功能可参照上文描述。
本申请实施例还提供一种可读存储介质,该可读存储介质可存储有适于处理器执行的程序,所述程序用于:
获取待识别人物图片;
获取训练完成的服饰识别模型,所述服饰识别模型包括特征提取层、稠密连接网络、特征分析网络;
将所述待识别人物图片输入所述服饰识别模型,通过所述特征提取层对输入的待识别人物图片进行特征提取,生成第一特征图,通过所述稠密连接网络对所述第一特征图进行特征复用,生成第二特征图,通过所述特征分析网络对所述第二特征图进行分析,确定对待识别人物的服饰识别结果。
可选地,所述程序的细化功能和扩展功能可参照上文描述。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
- 一种构件识别方法、装置、设备及计算机可读存储介质
- 一种鸡蛋品质识别方法、装置、设备及可读存储介质
- 一种车牌识别方法、装置、计算机装置及计算机可读存储介质
- 一种浴室加热装置和用于控制浴室加热装置的方法、设备、电子设备及计算机可读存储介质
- 欺诈行为识别方法、装置、电子设备及可读存储介质
- 一种用于机器学习的人物识别方法、装置、设备终端和可读存储介质
- 视频主体人物的识别方法、装置、设备及可读存储介质