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

训练肤色识别模型的方法、识别肤色的方法及相关装置

文献发布时间:2023-06-19 12:07:15


训练肤色识别模型的方法、识别肤色的方法及相关装置

技术领域

本发明实施例涉及智能识别技术领域,尤其涉及训练肤色识别模型的方法、识别肤色的方法及相关装置。

背景技术

随着移动通信技术的快速发展以及人民生活水平的提升,各种智能终端已广泛应用于人民的日常工作和生活,使得人们越来越习惯于使用APP等软件,使得美颜自拍、拍照测肤此类功能的APP需求也变得越来越多。因此,人们对于个人形象设计方面的需求快速增加,比如快速准确获取用户的脸部肤色,为用户选择合适的粉底色号,妆容以及配饰等。

目前,现有人脸肤色识别模型,主要通过将人脸的颜色与肤色模板的颜色进行匹配确定人脸肤色,在训练的过程中没有考虑到光线、亮度等因素的影响,难以适应不同的环境,准确度较低。

发明内容

本发明实施例主要解决的技术问题是提供一种训练肤色识别模型的方法及相关装置,采用该方法训练得到的肤色识别模型能准确识别出肤色类别。

为解决上述技术问题,第一方面,本发明实施例中提供给了一种训练肤色识别模型的方法,包括

获取图像样本集,所述图像样本集中的各图像为包括人脸的三通道彩色图像;

对所述图像样本集中的每一图像,提取脸部皮肤区域,以获取各第一脸部皮肤图像;

将所述各第一脸部皮肤图像分别按预设三维彩色空间进行投影转换,以得到各第二脸部皮肤图像,其中,所述第二脸部皮肤图像中三个颜色通道的颜色区分度均高于所述第一脸部皮肤图像中三个颜色通道的颜色区分度;

将标注有真实标签的各第二脸部皮肤图像作为训练集,对预设卷积神经网络进行训练,以使所述预设卷积神经网络学习所述训练集,以获取肤色识别模型;

其中,目标训练图像的真实标签包括第一真实标签、第二真实标签和第三真实标签,所述第一真实标签反映所述目标训练图像中第一颜色通道对应的第一真实肤色类别,所述第二真实标签反映所述目标训练图像中第二颜色通道对应的第二真实肤色类别,所述第三真实标签反映所述目标训练图像中第三颜色通道对应的第三真实肤色类别,所述目标训练图像为所述训练集中的任意一个标注有真实标签的第二脸部皮肤图像。

在一些实施例中,所述预设卷积神经网络包括第一卷积神经网络,第二卷积神经网络和第三卷积神经网络,

所述将标注有真实标签的多个第二脸部皮肤图像作为训练集,对预设卷积神经网络进行训练,以使所述预设卷积神经网络学习所述训练集,以获取肤色识别模型,包括:

获取所述目标训练图像的第一颜色通道图像、第二颜色通道图像和第三颜色通道图像;

将所述目标训练图像的第一颜色通道图像,输入所述第一卷积神经网络,以获取第一预测标签,所述第一预测标签反映所述目标训练图像中第一颜色通道对应的第一预测肤色类别;

将所述目标训练图像的第二颜色通道图像,输入所述第二卷积神经网络,以获取第二预测标签,所述第二预测标签反映所述目标训练图像中第二颜色通道对应的第二预测肤色类别;

将所述目标训练图像的第三颜色通道图像,输入所述第三卷积神经网络,以获取第三预测标签,所述第三预测标签反映所述目标训练图像中第三颜色通道对应的第三预测肤色类别,其中,所述目标训练图像的预测标签包括所述第一预测标签、所述第二预测标签和所述第三预测标签;

根据预设损失函数计算所述训练集的总误差,所述总误差为各所述目标训练图像的真实标签和预测标签之间的误差的和;

根据所述总误差,调整所述预设卷积神经网络的模型参数,返回执行所述获取所述目标训练图像的第一颜色通道图像、第二颜色通道图像和第三颜色通道图像的步骤,直至所述预设卷积神经网络收敛,以获取所述肤色识别模型。

在一些实施例中,所述第一卷积神经网络包括第一特征提取模块和第一分类模块,其中,所述第一特征提取模块包括多个卷积层,所述第一特征提取模块用于提取所述目标训练图像的第一颜色通道图像的特征以获取第一特征图,所述第一分类模块用于根据所述第一特征图输出所述第一预测标签;和/或,

所述第二卷积神经网络包括第二特征提取模块和第二分类模块,其中,所述第二特征提取模块包括多个卷积层,所述第二特征提取模块用于提取所述目标训练图像的第二颜色通道图像的特征以获取第二特征图,所述第二分类模块用于根据所述第二特征图输出所述第二预测标签;和/或,

所述第三卷积神经网络包括第三特征提取模块和第三分类模块,其中,所述第三特征提取模块包括多个卷积层,所述第三特征提取模块用于提取所述目标训练图像的第三颜色通道图像的特征以获取第三特征图,所述第三分类模块用于根据所述第三特征图输出所述第三预测标签。

在一些实施例中,所述第一特征提取模块中多个卷积层的卷积核的大小不完全相同;和/或,

所述第二特征提取模块中多个卷积层的卷积核的大小不完全相同;和/或,

所述第三特征提取模块中多个卷积层的卷积核的大小不完全相同。

在一些实施例中,所述预设损失函数为第一损失函数、第二损失函数和第三损失函数的加权和,所述第一损失函数用于计算各所述第一预测标签与各所述第一真实标签之间的误差的和,所述第二损失函数用于计算各所述第二预测标签与各所述第二真实标签之间的误差的和,所述第三损失函数用于计算各所述第三预测标签与各所述第三真实标签之间的误差的和。

在一些实施例中,所述根据预设损失函数计算所述训练集的总误差,包括:

根据以下公式计算所述训练集的总误差:

其中,Lg为所述第一损失函数,Lr为所述第二损失函数,Lb为所述第三损失函数,N为所述训练集中目标训练图像的总数量,M+1为所述肤色类别的总个数,i为所述肤色类别的标号,

在一些实施例中,所述对所述图像样本集中的每一图像,提取脸部皮肤区域,以获取各第一脸部皮肤图像,包括:

对所述图像样本集中的每一图像,根据人脸关键点算法,获取所述每一图像中非脸部皮肤区域;

将所述每一图像中非脸部皮肤区域对应的像素点的像素值更换为预设像素值,以获得所述各第一脸部皮肤图像。

为解决上述技术问题,第二方面,本发明实施例中提供了一种识别肤色的方法,包括:

获取待测图像,所述待测图像为包括人脸的三通道彩色图像;

从所述待测图像,提取脸部皮肤区域,以获取第一待测脸部皮肤图像;

将所述第一待测脸部皮肤图像按预设三维彩色空间进行投影转换,以得到第二待测脸部皮肤图像,其中,所述第二待测脸部皮肤图像中三个颜色通道的颜色区分度均高于所述第一待测脸部皮肤图像中三个颜色通道的颜色区分度;

将所述第二待测脸部皮肤图像输入如上第一方面所述的肤色识别模型,以获取所述待测图像的肤色类别。

为解决上述技术问题,第三方面,本发明实施例中提供给了一种电子设备,包括:

至少一个处理器,以及

与所述至少一个处理器通信连接的存储器,其中,

所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如上第一方面所述的方法。

为解决上述技术问题,第四方面,本发明实施例中提供给了一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使电子设备执行如上第一方面所述的方法。

本发明实施例的有益效果:区别于现有技术的情况,本发明实施例提供的训练肤色识别模型的方法及相关装置,首先对图像样本集中的每一图像,提取出脸部皮肤区域,以获取各第一脸部皮肤图像,以在模型训练过程中减少非皮肤区域特征(例如眼睛、嘴唇等)对训练模型的干扰,提高模型训练的精准度;其次,通过将各第一脸部皮肤图像按预设三维彩色空间进行投影转换,得到各第二脸部皮肤图像,使得第二脸部皮肤图像中三个颜色通道的颜色区分度均高于第一脸部皮肤图像中三个颜色通道的颜色区分度,从而,有利于后续当将标注有真实标签的各第二脸部皮肤图像作为训练集时能帮助网络预测出颜色区分度高的像素值,有利于快速准确确定预测肤色类别,进而能加快预设卷积神经网络收敛,提高肤色识别模型的准确度;此外,在训练的过程中,将训练集中的任一目标训练图像的真实标签设置为包括三个颜色通道分别对应的第一真实标签、第二真实标签和第三真实标签,使得预设卷积神经网络能够分别学习各颜色通道的特征和对应的标签之间的关系,即通过细分标签,使得各颜色通道的特征能够得到充分学习,从而,能够得到准确度高的肤色识别模型。

附图说明

一个或多个实施例通过与之对应的附图中的图片进行示例性说明,这些示例性说明并不构成对实施例的限定,附图中具有相同参考数字标号的元件表示为类似的元件,除非有特别申明,附图中的图不构成比例限制。

图1为本发明其中一实施例提供的训练肤色识别模型的方法的运行环境示意图;

图2为本发明其中一实施例提供的电子设备的结构示意图;

图3为本发明其中一实施例提供的训练肤色识别模型的方法的流程示意图;

图4为图3所示方法中步骤S22的一子流程示意图;

图5为本发明实施例提供的第一脸部皮肤图;

图6为图3所示方法中步骤S24的一子流程示意图;

图7为本发明实施例提供的预设卷积神经网络的结构示意图;

图8为本发明其中一实施例提供的一种识别肤色的方法的流程示意图。

具体实施方式

下面结合具体实施例对本发明进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本发明,但不以任何形式限制本发明。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进。这些都属于本发明的保护范围。

为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本申请,并不用于限定本申请。

需要说明的是,如果不冲突,本发明实施例中的各个特征可以相互结合,均在本申请的保护范围之内。另外,虽然在装置示意图中进行了功能模块划分,在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于装置中的模块划分,或流程图中的顺序执行所示出或描述的步骤。此外,本文所采用的“第一”、“第二”、“第三”等字样并不对数据和执行次序进行限定,仅是对功能和作用基本相同的相同项或相似项进行区分。

除非另有定义,本说明书所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本说明书中在本发明的说明书中所使用的术语只是为了描述具体的实施方式的目的,不是用于限制本发明。本说明书所使用的术语“和/或”包括一个或多个相关的所列项目的任意的和所有的组合。

此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。

图1是本发明实施例提供的训练肤色识别模型的方法的运行环境示意图。请参照图1,包括电子设备10和图像获取装置20,所述电子设备10和所述图像获取装置20通信连接。

所述通信连接可以是有线连接,例如:光纤电缆,也可以是无线通信连接,例如:WIFI连接、蓝牙连接、4G无线通信连接,5G无线通信连接等等。

所述图像获取装置20用于获取图像样本集,也可用于获取待测图像,所述图像获取装置20可为能够拍摄图像的终端,例如:具有拍摄功能的手机、平板电脑、录像机或摄像头等。

所述电子设备10是能够按照程序运行,自动、高速处理海量数据的设备,其通常是由硬件系统和软件系统所组成,例如:计算机、智能手机等等。所述电子设备10可以是本地设备,其直接与所述图像获取装置20连接;也可以是云设备,例如:云服务器、云主机、云服务平台、云计算平台等,云设备通过网络与所述图像获取装置20连接,并且两者通过预定的通信协议通信连接,在一些实施例,该通信协议可以是TCP/IP、NETBEUI和IPX/SPX等协议。

可以理解的是:所述图像获取装置20和所述电子设备10也可以集成在一起,作为一体式的设备,例如,带有摄像头的计算机或智能手机等。

所述电子设备10接收所述图像获取装置20发送图像样本集,采用该图像样本集对预设卷积神经网络进行训练,得到肤色识别模型,并利用所述肤色识别模型识别所述图像获取装置20发送的待测图像的肤色类别。可以理解的是,上述关于所述肤色识别模型的训练和对所述待测图像的检测也可以在不同的电子设备上执行。

在上述图1的基础上,本发明的其他实施例提供了一种电子设备10,请参阅图2,为本发明实施例提供的一种电子设备10的硬件结构图,具体的,如图2所示,所述电子设备10包括通信连接的至少一个处理器11和存储器12(图2中以总线连接、一个处理器为例)。

其中,所述处理器11用于提供计算和控制能力,以控制电子设备10执行相应任务,例如,控制所述电子设备10执行下述发明实施例提供的任意一种训练肤色识别模型的方法或下述发明实施例提供的任意一种识别肤色的方法。

可以理解的是,所述处理器11可以是通用处理器,包括中央处理器(CentralProcessing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital Signal Processing,DSP)、专用集成电路(Application SpecificIntegrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。

所述存储器12作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序、非暂态性计算机可执行程序以及模块,如本发明实施例中的训练肤色识别模型的方法对应的程序指令/模块,或本发明实施例中识别肤色的方法对应的程序指令/模块。所述处理器11通过运行存储在存储器12中的非暂态软件程序、指令以及模块,可以实现下述任一方法实施例中的训练肤色识别模型的方法,以及可以实现下述任一方法实施例中的识别肤色的方法。具体地,所述存储器12可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施例中,存储器12还可以包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至处理器。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。

以下,对本发明实施例提供的训练肤色识别模型的方法进行详细说明,请参阅图3,所述方法S20包括但不限制于以下步骤:

S21:获取图像样本集,所述图像样本集中的各图像为包括人脸的三通道彩色图像。

S22:对所述图像样本集中的每一图像,提取脸部皮肤区域,以获取各第一脸部皮肤图像。

S23:将所述各第一脸部皮肤图像分别按预设三维彩色空间进行投影转换,以得到各第二脸部皮肤图像,其中,所述第二脸部皮肤图像中三个颜色通道的颜色区分度均高于所述第一脸部皮肤图像中三个颜色通道的颜色区分度。

S24:将标注有真实标签的各第二脸部皮肤图像作为训练集,对预设卷积神经网络进行训练,以使所述预设卷积神经网络学习所述训练集,以获取肤色识别模型;其中,目标训练图像的真实标签包括第一真实标签、第二真实标签和第三真实标签,所述第一真实标签反映所述目标训练图像中第一颜色通道对应的第一真实肤色类别,所述第二真实标签反映所述目标训练图像中第二颜色通道对应的第二真实肤色类别,所述第三真实标签反映所述目标训练图像中第三颜色通道对应的第三真实肤色类别,所述目标训练图像为所述训练集中的任意一个标注有真实标签的第二脸部皮肤图像。

所述图像样本集中的各图像包括人脸,并且各图像为三通道彩色图像,可由上述图像获取装置获取,例如,所述图像样本集可以为由所述图像获取装置采集到的彩色证件照或彩色自拍照等。可以理解的是,所述图像样本集也可以是现有的开源人脸库中的数据,其中,所述开源人脸库可以为FERET人脸数据库、CMU Multi-PIE人脸数据库或YALE人脸数据库等。在此,对所述图像样本的来源不做限制,只要图像为包括人脸的彩色图像即可,例如RGB格式的人脸图像。

可以理解的是,所述图像包括人脸和背景,其中,人脸中的五官和背景区域的颜色特征会对训练模型产生干扰,即若训练模型学习了五官的颜色特征(例如嘴唇的颜色)或背景的颜色特征(例如头发的颜色),这些干扰颜色特征会增加模型误差,降低模型的准确度。从而,为了消除干扰颜色特征,以提高模型精度,在此,对图像样本集中的每一图像,进行脸部特征识别,提取脸部皮肤区域,以获取第一脸部皮肤图像。可以理解的是,该第一脸部皮肤图像是指不受五官或背景等的颜色特征干扰的图像。也即,在确定脸部皮肤区域后,可将所述图像中的其他剩余区域删除或者通过对此剩余区域的像素点进行处理,以消除干扰。

在一些实施例中,请参阅图4,所述步骤S22具体包括:

S221:对所述图像样本集中的每一图像,根据人脸关键点算法,获取所述每一图像中非脸部皮肤区域。

S222:将所述每一图像中非脸部皮肤区域对应的像素点的像素值更换为预设像素值,以获得所述各第一脸部皮肤图像。

根据所述人脸关键点算法可以定位出人脸面部的若干个关键点,包括眉毛、眼睛、鼻子、嘴巴、脸部轮廓等区域的点。从而,根据这些关键点,可以确定脸部皮肤区域和非脸部皮肤区域。其中,非脸部皮肤区域即为五官区域和背景区域。其中,所述人脸关键点算法可以为主动外观模型(active appearance models,AAMs)、有约束的局部模型(constrainedlocal models,CLMs)、显式形状回归模型(explicit shape regression,ESR)或监督下降方法(supervised descent method,SDM)等。

为了处理方便,如图5所示,将所述非脸部皮肤区域对应的像素点的像素值更换为预设像素值,以获得第一脸部皮肤图像。其中,所述预设像素值是人为设定的并与皮肤颜色的像素值差别较大的像素值,例如,预设像素值可以为[0,0,0],使得在第一脸部皮肤图像中非脸部皮肤区域的颜色能够明显区别于脸部皮肤区域的颜色,并且边界清晰,从而,能够减小对人脸肤色的干扰。

基于各图像为三通道彩色图像,从而,经过上述提取得到的第一脸部皮肤图像也为三通道彩色图像。为了增加第一脸部皮肤图像中三个颜色通道的区分度,在步骤S23中,将各第一脸部皮肤图像分别按预设三维彩色空间进行投影转换,以得到各第二脸部皮肤图像,其中,第二脸部皮肤图像中三个颜色通道的颜色区分度均高于第一脸部皮肤图像中三个颜色通道的颜色区分度。从而,有利于后续当将标注有真实标签的多个第二脸部皮肤图像作为训练集时能帮助网络预测出区分度高的像素值,有利于快速准确确定预测肤色类别,进而能加快预设卷积神经网络收敛,提高肤色识别模型的准确度。

具体的,以该第一脸部皮肤图像为RGB图像为例进行说明,第一脸部皮肤图像为RGB颜色空间,即第一脸部皮肤图像中的每个像素点是由R通道颜色值、G通道颜色值和B通道颜色值(即[R,G,B]值)综合后的结果。从而,不同的肤色类别具有不同的RGB值范围,对于任一第一脸部皮肤图像,可以根据该第一脸部皮肤图像的RGB值落入的RGB值范围确定其对应的肤色类别,例如,当某一第一脸部皮肤图像1#的RGB值落入透白肤色对应的RGB值范围,则说明该第一脸部皮肤图像1#的肤色类别为透白。然而,不同的肤色类别对应的RGB值范围较为接近、边界模糊,导致模型不容易区分,例如透白肤色的RGB值范围为[220,144,119]至[219,139,116],白皙肤色的RGB值范围为[189,153,115]至[170,146,105],自然肤色的RGB值范围为[157,157,113]至[138,147,103],再例如,小麦肤色的RGB值范围为[106,155,113]至[104,145,104],暗沉肤色的RGB值范围为[88,153,116]至[71,141,110],黝黑肤色的RGB值范围为[56,144,120]至[55,138,115],可见,上述六种肤色类别对应的RGB值范围在RGB颜色空间中的位置比较集中,即RGB颜色空间中(第一脸部皮肤图像中)三个颜色通道的颜色区分度较低,导致肤色类别之间的边界模糊。若直接将各第一脸部皮肤图像作为训练集,由于模型学习的各肤色类别的像素值都比较接近,从而预测出各第一脸部皮肤图像的像素值也比较接近,导致误差随机且较大,模型不能快速收敛以及准确度低。

将第一脸部皮肤图像从RGB颜色空间投影转换为预设三维彩色空间,从而,得到三个颜色通道的颜色区分度更高的第二脸部皮肤图像。在一些实施例中,预设三维彩色空间可以为CrCbCg彩色空间,该第二脸部皮肤图像的三个通道可由下述公式计算得到:

基于CrCbCg彩色空间三个颜色通道的颜色区分度较高,从而,各肤色类别在CrCbCg彩色空间中的位置区别明显(不集中),即各肤色类别对应的CrCbCg值范围区别较大,边界清晰,模型容易区分。将各第二脸部皮肤图像作为训练集,可使得模型学习的训练集中各肤色类别对应的像素值均差别较大,从而,预测出的训练集中各肤色类别对应的像素值也差别较大,在加上各肤色类别对应的CrCbCg值范围也区别较大,从而,有利于快速准确确定预测肤色类别,进而能加快预设卷积神经网络收敛,提高肤色识别模型的准确度。

将标注有真实标签的各第二脸部皮肤图像作为训练集,对预设卷积神经网络进行训练,以使预设卷积神经网络学习训练集,以获取肤色识别模型。在预设卷积神经网络学习训练集中各目标训练图像的特征和真实标签后,会对训练集中每一目标训练图像的肤色类别进行预测,然后,通过预设损失函数计算各预测肤色类别和真实肤色类别之间的误差,根据各误差反向调整预设卷积神经网络的模型参数。经过多次迭代训练,获取准确率高的肤色识别模型。

其中,对于训练集中任意一个标注有真实标签的第二脸部皮肤图像,即目标训练图像,其真实标签包括第一真实标签、第二真实标签和第三真实标签,该第一真实标签反映目标训练图像中第一颜色通道对应的第一真实肤色类别,第二真实标签反映目标训练图像中第二颜色通道对应的第二真实肤色类别,第三真实标签反映目标训练图像中第三颜色通道对应的第三真实肤色类别。例如,对于任一目标训练图像2#,若其第一颜色通道的灰度值的均值落入白皙肤色对应的第一颜色通道的区间范围内(例如上述白皙肤色在Cr通道值的区间范围),则将第一颜色通道标记为“白皙”(第一真实标签),若第二颜色通道的灰度值的均值落入白皙肤色对应的第二颜色通道的区间范围内(例如白皙肤色在Cb通道值的区间范围),则将第二颜色通道标记为“白皙”(第二真实标签),若第三颜色通道的灰度值的均值落入白皙肤色对应的第三颜色通道的区间范围内(例如白皙肤色在Cg通道值的区间范围),则将第三颜色通道标记为“白皙”(第三真实标签),也即该目标训练图像2#的真实标签为[白皙,白皙,白皙]。

为了方便模型学习标签数据,在一些实施例中,可以将真实标签进行数字编码,即将文本数据转化为模型益于计算的数字数据,例如,上述目标训练图像2#的真实标签为[1,1,1],其中,第一位“1”代表第一真实标签为白皙,第二位“1”代表第二真实标签为白皙,第三位“1”代表第三真实标签位白皙,再例如,若目标训练图像3#的肤色类别位自然,“自然”用2表示,则目标训练图像3#的真实标签为[2,2,2]。可以理解的是,进一步为了对各肤色类别进行热编码(one-hot标签化,即将各真实标签均用0或1表示,0或1是计算机的基础语言),第一真实标签、第二真实标签和第三真实标签也可以用向量表示,例如,对于前述六种肤色[透白,白皙,自然,小麦,暗沉,黝黑],其中,透白肤色的第一真实标签、第二真实标签和第三真实标签均为[1,0,0,0,0,0],白皙肤色的第一真实标签、第二真实标签和第三真实标签均为[0,1,0,0,0,0],同理,小麦肤色的第一真实标签、第二真实标签和第三真实标签均为[0,0,0,1,0,0]等。可以理解的是,上述真实标签可由人工采用现有的标注工具进行标注。

可以理解的是,在将训练集输入预设卷积神经网络进行学习前,可以对训练集中的各目标训练图像的尺寸进行一致性调整,例如,均调整为224*224*3,以减少尺寸差异对模型精度的影响。

在训练的过程中,使得预设卷积神经网络能够分别学习各颜色通道的特征和对应的真实标签之间的关系,输出各颜色通道的预测标签,然后,通过预测标签反馈调节预设卷积神经网络的模型参数,直至模型收敛,得到肤色识别模型。基于预设卷积神经网络能够分别学习各颜色通道的特征和对应的真实标签之间的关系,即通过细分标签,使得各颜色通道的特征能够得到充分学习,从而,能够得到准确度高的肤色识别模型。

为了验证训练得到的肤色识别模型的准确性,可以另外准备若干个标注有真实标签的测试图像作为测试集,对肤色识别模型进行验证。可以理解的是,该测试图像与上述第二脸部皮肤图像的结构相同,图像内容不同,即测试集与训练集中不存在同样的图像。通常,训练集的图像数量与测试集的图像数量为5:1,能使得肤色识别模型得到有效验证。

综上所述,该方法通过对图像样本集中的每一图像,提取出脸部皮肤区域,以获取第一脸部皮肤图像,以在模型训练过程中减少非皮肤区域特征(例如眼睛、嘴唇等)对训练模型的干扰,提高模型训练的精准度;其次,通过将第一脸部皮肤图像按预设三维彩色空间进行投影转换,得到第二脸部皮肤图像,使得第二脸部皮肤图像中三个颜色通道的颜色区分度均高于第一脸部皮肤图像中三个颜色通道的颜色区分度,从而,有利于后续当将标注有真实标签的多个第二脸部皮肤图像作为训练集时能帮助网络预测出颜色区分度高的像素值,有利于快速准确确定预测肤色类别,进而能加快预设卷积神经网络收敛,提高肤色识别模型的准确度;此外,在训练的过程中,将训练集中的任一目标训练图像的真实标签设置为包括三个颜色通道分别对应的第一真实标签、第二真实标签和第三真实标签,使得预设卷积神经网络能够分别学习各颜色通道的特征和对应的真实标签之间的关系,即通过细分标签,使得各颜色通道的特征能够得到充分学习,从而,能够得到准确度高的肤色识别模型。

在一些实施例中,预设卷积神经网络包括第一卷积神经网络、第二卷积神经网络和第三卷积神经网络,请参阅图6,所述步骤S24具体包括:

S241:获取所述目标训练图像的第一颜色通道图像、第二颜色通道图像和第三颜色通道图像。

S242:将所述目标训练图像的第一颜色通道图像,输入所述第一卷积神经网络,以获取第一预测标签,所述第一预测标签反映所述目标训练图像中第一颜色通道对应的第一预测肤色类别。

S243:将所述目标训练图像的第二颜色通道图像,输入所述第二卷积神经网络,以获取第二预测标签,所述第二预测标签反映所述目标训练图像中第二颜色通道对应的第二预测肤色类别。

S244:将所述目标训练图像的第三颜色通道图像,输入所述第三卷积神经网络,以获取第三预测标签,所述第三预测标签反映所述目标训练图像中第三颜色通道对应的第三预测肤色类别,其中,所述目标训练图像的预测标签包括所述第一预测标签、所述第二预测标签和所述第三预测标签。

S245:根据预设损失函数计算所述训练集的总误差,所述总误差为各所述目标训练图像的真实标签和预测标签之间的误差的和。

S246:根据所述总误差,调整所述预设卷积神经网络的模型参数,返回执行所述步骤S241,直至所述预设卷积神经网络收敛,以获取所述肤色识别模型。

在本实施例中,对于训练集中的任一目标训练图像,将其颜色通道分离,分离出第一颜色通道图像、第二颜色通道图像和第三颜色通道图像,可以理解的是,该第一颜色通道图像、第二颜色通道图像和第三颜色通道图像为单通道灰度图,第一颜色通道图像相当于第一颜色通道对应的第一灰度图,第二颜色通道图像相当于第二颜色通道对应的第二灰度图,第三颜色通道图像相当于第三颜色通道对应的第三灰度图。

基于预设卷积神经网络包括三个独立的第一卷积神经网络、第二卷积神经网络和第三卷积神经网络,分别采用第一卷积神经网络学习第一颜色通道图像(第一灰度图)的颜色特征,以输出反映第一颜色通道对应的第一预测肤色类别的第一预测标签;采用第二卷积神经网络学习第二颜色通道图像(第二灰度图)的颜色特征,以输出反映第二颜色通道对应的第二预测肤色类别的第二预测标签;采用第三卷积神经网络学习第三颜色通道图像(第三灰度图)的颜色特征,以输出反映第三颜色通道对应的第三预测肤色类别的第三预测标签。可以理解的是,通过三个独立的卷积神经网络预测得到的第一预测标签、第二预测标签和第三预测标签构成该目标训练图像的预测标签。

然后,根据预设损失函数计算训练集的总误差,该总误差为各目标训练图像的真实标签与预测标签之间的误差的和,使得训练集中每一目标训练图像均参与误差计算,从而,该总误差更能反映迭代过程中的模型的准确性。最后,预设卷积神经网络根据该总误差即可反向调整模型参数,在确定新的模型参数后,即可得到肤色识别模型。

在一些实施例中,可采用adam算法优化所述模型参数,迭代次数可以设置为500次,初始学习率设置为0.001,权重衰减设置为0.0005,每50次迭代,学习率衰减为原来的1/10,训练完后,输出所述肤色识别模型的模型参数,即获得所述肤色识别模型。

在此实施例中,由于第一卷积神经网络、第二卷积神经网络和第三卷积神经网络相互独立,上述第一颜色通道图像、第二颜色通道图像和第三颜色通道图像的学习过程无先后关系,可以同时进行,互不干扰、相互独立,使得各颜色通道的特征及其对应的真实标签均能得到有效学习,与不分颜色通道整体学习相比,能够减少颜色通道之间的耦合关联情况,也即使得在模型学习的过程中各颜色通道相互独立,各颜色通道的特征能够得到充分学习,从而,能够得到准确度高的肤色识别模型。

在一些实施例中,该第一卷积神经网络包括第一特征提取模块和第一分类模块,其中,第一特征提取模块包括多个卷积层,多个卷积层顺序排序,目标训练图像的第一颜色通道图像(第一灰度图)输入第一特征提取模块中的第一个卷积层,一卷积层输出一特征图,上一卷积层的输出作为下一卷积层的输入,从而逐层提取特征,该第一特征提取模块中的最后一个卷积层输出第一特征图。经多层卷积运算后得到的第一特征图,能够很好的融合全局特征和局部特征。第一特征图作为第一分类模块的输入,从而,第一分类模块可以根据该第一特征图输出第一预测标签,可以理解的是,该第一分类模块可以包括现有的全连接层和softmax层,全连接层可以将第一特征图中大量局部特征进行整合加权成特征值,特征值包括每种肤色类别的权重和偏差,然后,特征值输入softmax层进行损失计算,输出第一颜色通道图像(第一灰度图)为每种肤色类别的概率。可知,在此实施例中,该第一卷积神经网络仅包括第一特征提取模块和第一分类模块,且第一特征提取模块中仅包括多个卷积层,符合肤色特征比较单一的特点,依靠设置卷积层的卷积核的步长即可实现图像降维,从而,降低了第一卷积神经网络的复杂性,使其具有较好的应用性。

可以理解的是,在一些实施例中,如图7所示,该第一特征提取模块中多个卷积层的卷积核的大小不完全相同,例如,若第一特征提取模块包括6个卷积层,这6个卷积层对应的卷积核分别为9*9、5*5、3*3、3*3、3*3和1*1,采用卷积核大小不完全相同的多个卷积层,能够更好的获取全局特征和局部特征,从而,能够降低不同光照和亮度变化对目标训练图像第一颜色通道的特征的干扰,有益于提高向模型的准确性。

在一些实施例中,该第二卷积神经网络包括第二特征提取模块和第二分类模块,其中,第二特征提取模块包括多个卷积层,多个卷积层顺序排序,目标训练图像的第二颜色通道图像(第二灰度图)输入第二特征提取模块中的第一个卷积层,一卷积层输出一特征图,上一卷积层的输出作为下一卷积层的输入,从而逐层提取特征,该第二特征提取模块中的最后一个卷积层输出第二特征图。经多层卷积运算后得到的第二特征图,能够很好的融合全局特征和局部特征。第二特征图作为第二分类模块的输入,从而,第二分类模块可以根据该第二特征图输出第二预测标签,可以理解的是,该第二分类模块可以包括现有的全连接层和softmax层,全连接层可以将第二特征图中大量局部特征进行整合加权成特征值,特征值包括每种肤色类别的权重和偏差,然后,特征值输入softmax层进行损失计算,输出第二颜色通道图像(第二灰度图)为每种肤色类别的概率。可知,在此实施例中,该第二卷积神经网络仅包括第二特征提取模块和第二分类模块,且第二特征提取模块中仅包括多个卷积层,符合肤色特征比较单一的特点,依靠设置卷积层的卷积核的步长即可实现图像降维,从而,降低了第二卷积神经网络的复杂性,使其具有较好的应用性。

可以理解的是,在一些实施例中,如图7所示,该第二特征提取模块中多个卷积层的卷积核的大小不完全相同,例如,若第二特征提取模块包括6个卷积层,这6个卷积层对应的卷积核分别为9*9、5*5、3*3、3*3、3*3和1*1,采用卷积核大小不完全相同的多个卷积层,能够更好的获取全局特征和局部特征,从而,能够降低不同光照和亮度变化对目标训练图像第二颜色通道的特征的干扰,有益于提高向模型的准确性。

在一些实施例中,该第三卷积神经网络包括第三特征提取模块和第三分类模块,其中,第三特征提取模块包括多个卷积层,多个卷积层顺序排序,目标训练图像的第三颜色通道图像(第三灰度图)输入第三特征提取模块中的第一个卷积层,一卷积层输出一特征图,上一卷积层的输出作为下一卷积层的输入,从而逐层提取特征,该第三特征提取模块中的最后一个卷积层输出第三特征图。经多层卷积运算后得到的第三特征图,能够很好的融合全局特征和局部特征。第三特征图作为第三分类模块的输入,从而,第三分类模块可以根据该第三特征图输出第三预测标签,可以理解的是,该第三分类模块可以包括现有的全连接层和softmax层,全连接层可以将第三特征图中大量局部特征进行整合加权成特征值,特征值包括每种肤色类别的权重和偏差,然后,特征值输入softmax层进行损失计算,输出第三颜色通道图像(第三灰度图)为每种肤色类别的概率。可知,在此实施例中,该第三卷积神经网络仅包括第三特征提取模块和第三分类模块,且第三特征提取模块中仅包括多个卷积层,符合肤色特征比较单一的特点,依靠设置卷积层的卷积核的步长即可实现图像降维,从而,降低了第三卷积神经网络的复杂性,使其具有较好的应用性。

可以理解的是,在一些实施例中,如图7所示,该第三特征提取模块中多个卷积层的卷积核的大小不完全相同,例如,若第三特征提取模块包括6个卷积层,这6个卷积层对应的卷积核分别为9*9、5*5、3*3、3*3、3*3和1*1,采用卷积核大小不完全相同的多个卷积层,能够更好的获取全局特征和局部特征,从而,能够降低不同光照和亮度变化对目标训练图像第三颜色通道的特征的干扰,有益于提高向模型的准确性。

在此实施例中,第一卷积神经网络、第二卷积神经网络和第三卷积神经网络中的特征提取模块包括卷积核大小不完全相同的多个卷积层,多层的卷积运算,能够更好的提取全局特征和局部特征,此外,特征提取模块仅涉及卷积运算,符合肤色特征单一的特点,还能降低网络模型的复杂性。

在一些实施例中,预设损失函数为第一损失函数、第二损失函数和第三损失函数的加权和,其中,第一损失函数用于计算各第一预测标签与各第一真实标签之间的误差的和,第二损失函数用于计算各第二预测标签与各第二真实标签之间的误差的和,第三损失函数用于计算各第三预测标签与各第三真实标签之间的误差的和。可知,由该预设损失函数计算得到得总误差包括各第一预测标签与各第一真实标签之间的误差的和、各第二预测标签与各第二真实标签之间的误差的和以及各第三预测标签与各第三真实标签之间的误差的和。通过第一损失函数、第二损失函数和第三损失函数的加权,即可使得预设损失函数能准确评估模型对训练集的学习误差,从而,使得总误差能够准确反映模型对训练集的学习情况。由于该总误差用于反向调节模型参数,从而,使得模型参数更加合理,能提高肤色识别模型的准确性。

在一些实施例中,该步骤S245具体包括:

根据以下公式计算所述训练集的总误差:

其中,Lg为第一损失函数,Lr为第二损失函数,Lb为第三损失函数,N为所述训练集中目标训练图像的总数量,M+1为所述肤色类别的总个数,

其中,第一损失函数

第一损失函数对预设卷积神经网络输出的第一预测标签与第一真实标签之间的关系进行约束,即最小化第一预测标签和第一真实标签之间的误差,使得预测卷积神经网络输出的第一预测标签不断逼近第一真实标签,以优化模型参数。

其中,第二损失函数

第二损失函数对预设卷积神经网络输出的第二预测标签与第二真实标签之间的关系进行约束,即最小化第二预测标签和第二真实标签之间的误差,使得预测卷积神经网络输出的第二预测标签不断逼近第二真实标签,以优化模型参数。

其中,第三损失函数

第三损失函数对预设卷积神经网络输出的第三预测标签与第三真实标签之间的关系进行约束,即最小化第三预测标签和第三真实标签之间的误差,使得预测卷积神经网络输出的第三预测标签不断逼近第三真实标签,以优化模型参数。

可以理解的是,损失函数中的负号仅是为了方便计算极小值,仅具有数学运算意义。

在此实施例中,该预设损失函数计算出的总误差,进行梯度回传,反向传播,调节模型参数,能够使得预测标签不断靠近真实标签,以提高肤色识别模型的准确度。

综上所述,本发明实施例提供的训练肤色识别模型的方法及相关装置,首先对图像样本集中的每一图像,提取出脸部皮肤区域,以获取第一脸部皮肤图像,以在模型训练过程中减少非皮肤区域特征(例如眼睛、嘴唇等)对训练模型的干扰,提高模型训练的精准度;其次,通过将第一脸部皮肤图像按预设三维彩色空间进行投影转换,得到第二脸部皮肤图像,使得第二脸部皮肤图像中三个颜色通道的颜色区分度均高于第一脸部皮肤图像中三个颜色通道的颜色区分度,从而,有利于后续当将标注有真实标签的多个第二脸部皮肤图像作为训练集时能帮助网络预测出颜色区分度高的像素值,有利于快速准确确定预测肤色类别,进而能加快预设卷积神经网络收敛,提高肤色识别模型的准确度;此外,在训练的过程中,将训练集中的任一目标训练图像的真实标签设置为包括三个颜色通道分别对应的第一真实标签、第二真实标签和第三真实标签,使得预设卷积神经网络能够分别学习各颜色通道的特征和对应的标签之间的关系,即通过细分标签,使得各颜色通道的特征能够得到充分学习,从而,能够得到准确度高的肤色识别模型。

以下,对本发明实施例所提供的识别肤色的方法进行详细说明,请参阅图8,所述方法S30包括但不限制于以下步骤:

S31:获取待测图像,所述待测图像为包括人脸的三通道彩色图像。

S32:从所述待测图像,提取脸部皮肤区域,以获取第一待测脸部皮肤图像。

S33:将所述第一待测脸部皮肤图像按预设三维彩色空间进行投影转换,以得到第二待测脸部皮肤图像,其中,所述第二待测脸部皮肤图像中三个颜色通道的颜色区分度均高于所述第一待测脸部皮肤图像中三个颜色通道的颜色区分度。

S34:将所述第二待测脸部皮肤图像输入上述任一实施例中的肤色识别模型,以获取所述待测图像的肤色类别。

所述待测图像为包括人脸的三通道彩色图像,可由上述图像获取装置20获取,例如,所述待测图像可以为图像获取装置20采集到的证件照或自拍照等。在此,不对所述待测图像的来源做任何限制,为人脸面部图像即可。

可以理解的是,所述待测图像包括人脸和背景,其中,人脸中的五官和背景区域的颜色特征会对模型识别产生干扰,影响肤色识别。为了减少干扰,从待测图像,提取脸部皮肤区域,以获取第一待测脸部皮肤图像。可以理解的是,该第一待测脸部皮肤图像是指不受五官或背景等的颜色特征干扰的待测图像。也即,在确定脸部皮肤区域后,可将待测图像中的其他剩余区域删除或者通过对此剩余区域的像素点进行处理,以消除干扰。

基于待测图像为包括人脸的三通道彩色图像,从而,经过上述提取得到的第一脸部皮肤图像也为三通道彩色图像。为了增加第一脸部皮肤图像中三个颜色通道的区分度,将第一待测脸部皮肤图像按预设三维彩色空间进行投影转换,以得到第二待测脸部皮肤图像,其中,第二待测脸部皮肤图像中三个颜色通道的颜色区分度均高于第一待测脸部皮肤图像中三个颜色通道的颜色区分度。在一些实施例中,该预设三维彩色空间可以为CrCbCg彩色空间,基于CrCbCg彩色空间三个颜色通道的颜色区分度较高,从而,对于不同的肤色类别,各颜色通道的灰度值差异明显,边界清晰,模型容易区分,有益于提高肤色识别模型的准确度。

最后,将所述第二待测脸部皮肤图像输入上述任一实施例中的肤色识别模型,通过该肤色识别模型对第二待测脸部皮肤图像的三个颜色通道分别进行特征提取后,得到三个待测特征图,然后根据该三个待测特征图输出第二待测脸部皮肤图像的三个颜色通道分别所属各颜色类别的概率,例如,第二待测脸部皮肤图像中第一颜色通道所属各颜色类别的概率P

可以理解的是,该肤色识别模型是通过上述实施例中训练肤色识别模型的方法训练得到的,与上述实施例中的肤色识别模型具有相同的结构和功能,在此不再一一赘述。

本发明另一实施例还提供了一种非暂态计算机可读存储介质,该非暂态计算机可读存储介质存储有计算机可执行指令,该计算机可执行指令用于使电子设备执行上述训练肤色识别模型的方法,或,识别肤色的方法。

需要说明的是,以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。

通过以上的实施方式的描述,本领域普通技术人员可以清楚地了解到各实施方式可借助软件加通用硬件平台的方式来实现,当然也可以通过硬件。本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。

最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;在本发明的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本发明的不同方面的许多其它变化,为了简明,它们没有在细节中提供;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

相关技术
  • 训练肤色识别模型的方法、识别肤色的方法及相关装置
  • 信号灯识别模型训练方法、信号灯识别方法及相关装置
技术分类

06120113177060